From ea7d60dbd6ec9e6efd5cde09dca63738d59c6ded Mon Sep 17 00:00:00 2001 From: CreateSource Date: Mon, 4 Nov 2024 10:13:33 -0500 Subject: [PATCH 001/178] begin m418Dll/main.c --- .vscode/settings.json | 3 +- config/GMPE01_00/rels/m418Dll/symbols.txt | 2 +- include/REL/m418Dll.h | 6 + src/REL/m418Dll/main.c | 163 ++++++++++++++++++++++ src/REL/m418Dll/sequence.c | 0 5 files changed, 172 insertions(+), 2 deletions(-) create mode 100644 include/REL/m418Dll.h create mode 100644 src/REL/m418Dll/main.c create mode 100644 src/REL/m418Dll/sequence.c diff --git a/.vscode/settings.json b/.vscode/settings.json index b4546cc9..3cc8ae34 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -20,7 +20,8 @@ "*.inc": "c", ".clangd": "yaml", "m443dll.h": "c", - "object.h": "c" + "object.h": "c", + "m417dll.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/config/GMPE01_00/rels/m418Dll/symbols.txt b/config/GMPE01_00/rels/m418Dll/symbols.txt index 6d5e96a3..480de9a9 100644 --- a/config/GMPE01_00/rels/m418Dll/symbols.txt +++ b/config/GMPE01_00/rels/m418Dll/symbols.txt @@ -98,7 +98,7 @@ fn_1_9F94 = .text:0x00009F94; // type:function size:0x1BC _prolog = .text:0x0000A150; // type:function size:0x54 scope:global _epilog = .text:0x0000A1A4; // type:function size:0x4C scope:global fn_1_A1F0 = .text:0x0000A1F0; // type:function size:0x398 -fn_1_A588 = .text:0x0000A588; // type:function size:0x398 +ObjectSetup = .text:0x0000A588; // type:function size:0x398 fn_1_A920 = .text:0x0000A920; // type:function size:0x20 fn_1_A940 = .text:0x0000A940; // type:function size:0x28 fn_1_A968 = .text:0x0000A968; // type:function size:0xC8 diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h new file mode 100644 index 00000000..80490211 --- /dev/null +++ b/include/REL/m418Dll.h @@ -0,0 +1,6 @@ +#ifndef M418DLL_H +#define M418DLL_H + +#include "dolphin.h" + +#endif diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c new file mode 100644 index 00000000..81c357ae --- /dev/null +++ b/src/REL/m418Dll/main.c @@ -0,0 +1,163 @@ +#include "game/hsfman.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "rel_sqrt_consts.h" + +#include "REL/m418Dll.h" + +// types +typedef void (*M418DllFunc)(void); + +typedef struct M418DllUnkStruct { + M418DllFunc unk0; + Vec center; + char unk10[0xC]; + Vec rot; + char unk28[0xC]; + f32 zoom; + char unk38[0x4]; + f32 unk3C[3]; + char unk48[0x4]; +} M418DllUnkStruct; // sizeof 0x4C + +// bss +M418DllUnkStruct lbl_1_bss_1F4; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +Process* lbl_1_bss_0; + +// data +s32 lbl_1_data_8 = -1; + +// protos +void fn_1_B104(M418DllUnkStruct*, Vec, Vec); +void fn_1_B41C(M418DllUnkStruct*); + +void fn_1_0(void) { + Hu3DGLightCreate(-2500.0f, 5000.0f, 5000.0f, 0.0f, -1.0f, -1.0f, 0xFF, 0xD8, 0xA0); +} + +void fn_1_74(void) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; + Vec sp20 = { 0.0f, 600.0f, 600.0f }; + + fn_1_B104(var_r31, sp2C, sp20); + fn_1_B41C(var_r31); + var_r31->rot.x++; +} + +void fn_1_158(s32 arg0, f32 arg8) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + + var_r31->unk3C[arg0] = arg8; +} + +f32 fn_1_180(s32 arg0) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + + if (var_r31->unk3C[arg0] != 0.0f) { + var_r31->unk3C[arg0] *= -0.9f; + if (var_r31->unk3C[arg0] >= -0.5f) { + if (var_r31->unk3C[arg0] <= 0.5f) { + var_r31->unk3C[arg0] = 0.0f; + } + } + } + return var_r31->unk3C[arg0]; +} + +void fn_1_248(M418DllFunc arg0) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + + var_r31->unk0 = arg0; +} + +void fn_1_268(omObjData* object) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + + if (var_r31->unk0 != NULL) { + var_r31->unk0(); + } + + Center.x = var_r31->center.x + fn_1_180(0); + Center.y = var_r31->center.y + fn_1_180(1); + Center.z = var_r31->center.z + fn_1_180(2); + CRot.x = var_r31->rot.x; + CRot.y = var_r31->rot.y; + CRot.z = var_r31->rot.z; + CZoom = var_r31->zoom; +} + +void fn_1_500(void) { + M418DllUnkStruct* var_r31; + Hu3DCameraCreate(1); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraPerspectiveSet(1, 40.0f, 0.1f, 17500.0f, 1.2f); + var_r31 = &lbl_1_bss_1F4; + var_r31->unk0 = fn_1_74; + omAddObjEx(lbl_1_bss_0, 0x7FDA, 0, 0, -1, omOutView); + omAddObjEx(lbl_1_bss_0, 0x7FD9, 0, 0, -1, fn_1_268); +} + +void fn_1_618(void) { + Vec sp20 = { -1500.0f, 2500.0f, 1000.0f }; + Vec sp14 = { 0.0f, 0.0f, 0.0f }; + Vec sp8 = { 0.0f, 1.0f, 0.0f }; + + Hu3DShadowCreate(40.0f, 2000.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.675f); + Hu3DShadowPosSet(&sp20, &sp8, &sp14); +} + +void fn_1_6DC(s32 arg0) { + if (lbl_1_bss_8 == 0) { + lbl_1_bss_8 = 1; + lbl_1_bss_4 = arg0 * 0x3C; + } +} + +s32 fn_1_714(void) { + s32 var_r31 = 0; + + if (lbl_1_bss_8 == 3) { + var_r31 = 1; + } + return var_r31; +} + +void fn_1_748(void) { + if (lbl_1_bss_8 == 2) { + lbl_1_bss_8 = 3; + lbl_1_bss_4 = 30; + } +} + +void fn_1_780(void) { + switch (lbl_1_bss_8) { + case 1: + if (lbl_1_data_8 == -1) { + lbl_1_data_8 = MGSeqCreate(1, lbl_1_bss_4 / 60, -1, -1); + } + lbl_1_bss_8 = 2; + break; + case 2: + lbl_1_bss_4--; + if (lbl_1_data_8 != -1) { + MGSeqParamSet(lbl_1_data_8, 1, ((lbl_1_bss_4 + 0x3B) / 60)); + } + if (lbl_1_bss_4 <= 0) { + lbl_1_bss_4 = 30; + lbl_1_bss_8 = 3; + } + break; + case 3: + if (lbl_1_data_8 != -1) { + MGSeqParamSet(lbl_1_data_8, 2, -1); + lbl_1_data_8 = -1; + } + lbl_1_bss_4 = 0; + lbl_1_bss_8 = 0; + break; + } +} diff --git a/src/REL/m418Dll/sequence.c b/src/REL/m418Dll/sequence.c new file mode 100644 index 00000000..e69de29b From d2a22e9a427cd878cecf749833687b6d7b5ae57b Mon Sep 17 00:00:00 2001 From: CreateSource Date: Tue, 5 Nov 2024 13:36:21 -0500 Subject: [PATCH 002/178] 3 functions, sync --- .vscode/settings.json | 3 +- include/REL/m418Dll.h | 18 ++++++++ src/REL/m418Dll/main.c | 102 ++++++++++++++++++++++++++++++++++------- 3 files changed, 105 insertions(+), 18 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 3cc8ae34..f453e015 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -21,7 +21,8 @@ ".clangd": "yaml", "m443dll.h": "c", "object.h": "c", - "m417dll.h": "c" + "m417dll.h": "c", + "m418dll.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h index 80490211..3fd899d3 100644 --- a/include/REL/m418Dll.h +++ b/include/REL/m418Dll.h @@ -3,4 +3,22 @@ #include "dolphin.h" +typedef void (*M418DllFunc)(void); + +typedef struct M418DllUnkStruct { + M418DllFunc unk0; + Vec center; + char unk10[0xC]; + Vec rot; + char unk28[0xC]; + f32 zoom; + char unk38[0x4]; + f32 unk3C[3]; + char unk48[0x4]; +} M418DllUnkStruct; // sizeof 0x4C + +void fn_1_ABC4(omObjData*, s32, s32, s32, s32); +void fn_1_B104(M418DllUnkStruct*, Vec, Vec); +void fn_1_B41C(M418DllUnkStruct*); + #endif diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index 81c357ae..dc838ba5 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -1,4 +1,5 @@ #include "game/hsfman.h" +#include "game/hsfmotion.h" #include "game/minigame_seq.h" #include "game/object.h" #include "rel_sqrt_consts.h" @@ -6,22 +7,15 @@ #include "REL/m418Dll.h" // types -typedef void (*M418DllFunc)(void); - -typedef struct M418DllUnkStruct { - M418DllFunc unk0; - Vec center; - char unk10[0xC]; - Vec rot; - char unk28[0xC]; - f32 zoom; - char unk38[0x4]; - f32 unk3C[3]; - char unk48[0x4]; -} M418DllUnkStruct; // sizeof 0x4C +typedef struct M418DllUnkStruct2 { + char unk[0x4]; + s32 unk4[3]; + char unk10[0x4]; +} M418DllUnkStruct2; // bss M418DllUnkStruct lbl_1_bss_1F4; +M418DllUnkStruct2 lbl_1_bss_1E0; s32 lbl_1_bss_8; s32 lbl_1_bss_4; Process* lbl_1_bss_0; @@ -29,10 +23,6 @@ Process* lbl_1_bss_0; // data s32 lbl_1_data_8 = -1; -// protos -void fn_1_B104(M418DllUnkStruct*, Vec, Vec); -void fn_1_B41C(M418DllUnkStruct*); - void fn_1_0(void) { Hu3DGLightCreate(-2500.0f, 5000.0f, 5000.0f, 0.0f, -1.0f, -1.0f, 0xFF, 0xD8, 0xA0); } @@ -161,3 +151,81 @@ void fn_1_780(void) { break; } } + +s32 fn_1_950(s32 arg0) { + + if ((rand8() % arg0) == 0) { + return 1; + } else { + return 0; + } +} + +void fn_1_998(omObjData* object) { + s32 var_r31; + M418DllUnkStruct2* var_r30 = &lbl_1_bss_1E0; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + switch (var_r30->unk4[var_r31]) { + case 1: + fn_1_ABC4(object, var_r31 + 1, var_r31 + 1, 0, 2); + var_r30->unk4[var_r31] = 99; + break; + case 2: + fn_1_ABC4(object, var_r31 + 1, var_r31 + 1, 0, 0); + var_r30->unk4[var_r31] = 99; + break; + case 3: + HuAudFXPlay(0x5DD); + Hu3DModelAttrSet(object->model[var_r31 + 1], 0x40000004); + var_r30->unk4[var_r31] = 99; + break; + } + } +} + +void fn_1_AA8(omObjData* object) { + Mtx sp10; + char* sp8[2] = { 0, 0 }; + s32 var_r31; + + for (var_r31 = 0; var_r31 < 2; var_r31++) { + Hu3DModelObjMtxGet(object->model[5], sp8[var_r31], sp10); + Hu3DModelPosSet(object->model[var_r31 + 6], sp10[0][3], sp10[1][3], sp10[2][3]); + } + object->func = fn_1_998; +} + +void fn_1_B4C(omObjData* object) { + s32 sp8[3] = { 0x310021, 0x310022, 0x310023 }; + s32 var_r30; + + object->model[0] = Hu3DModelCreateFile(0x310011); + Hu3DModelShadowMapSet(object->model[0]); + + for (var_r30 = 1; var_r30 < 4; var_r30++) { + object->model[var_r30] = Hu3DModelCreateFile(sp8[var_r30 - 1]); + object->motion[var_r30] = Hu3DMotionIDGet(object->model[var_r30]); + Hu3DModelShadowMapSet(object->model[var_r30]); + Hu3DModelPosSet(object->model[var_r30], 0.0f, 0.0f, 0.0f); + fn_1_ABC4(object, var_r30, var_r30, 0, 2); + } + object->model[4] = Hu3DModelCreateFile(0x310016); + object->model[5] = Hu3DModelCreateFile(0x310018); + + for (var_r30 = 6; var_r30 < 8; var_r30++) { + object->model[var_r30] = Hu3DModelCreateFile(0x310026); + object->motion[var_r30] = Hu3DMotionIDGet(object->model[var_r30]); + Hu3DModelScaleSet(object->model[var_r30], 2.0f, 2.0f, 2.0f); + Hu3DModelLayerSet(object->model[var_r30], 1); + fn_1_ABC4(object, var_r30, var_r30, 0, 1); + } + + for (var_r30 = 8; var_r30 < 11; var_r30++) { + object->model[var_r30] = Hu3DModelCreateFile(0x31002A); + object->motion[var_r30] = Hu3DJointMotion(object->model[var_r30], HuDataSelHeapReadNum(0x31002E, MEMORY_DEFAULT_NUM, HEAP_DATA)); + Hu3DModelPosSet(object->model[var_r30], -350.0f + 360.0f * (var_r30 - 8), -200.0f, -660.0f); + fn_1_ABC4(object, var_r30, var_r30, 0, 1); + } + object->func = fn_1_AA8; +} From 8e0a57594a3ed06d4e6e5de6d0a7473db70f29de Mon Sep 17 00:00:00 2001 From: CreateSource Date: Wed, 13 Nov 2024 20:39:19 -0500 Subject: [PATCH 003/178] continued work on main.c --- src/REL/m418Dll/main.c | 187 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 185 insertions(+), 2 deletions(-) diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index dc838ba5..9f4e9cad 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -2,6 +2,7 @@ #include "game/hsfmotion.h" #include "game/minigame_seq.h" #include "game/object.h" +#include "game/objsub.h" #include "rel_sqrt_consts.h" #include "REL/m418Dll.h" @@ -11,11 +12,43 @@ typedef struct M418DllUnkStruct2 { char unk[0x4]; s32 unk4[3]; char unk10[0x4]; -} M418DllUnkStruct2; +} M418DllUnkStruct2; // sizeof 0x14 + +typedef struct M418DllUnkStruct3 { + char unk0[0x4]; + s32 unk4; + char unk[0x58]; +} M418DllUnkStruct3; // sizeof 0x60 + +typedef struct M418DllUnkStruct4 { + char unk[0x4]; + f32 unk4; + f32 unk8; + s32 unkC; + s32 unk10; + f32 unk14; + char unk18[0x4]; +} M418DllUnkStruct4; // sizeof 0x1C + +typedef struct M418DllUnkStruct5 { + char unk[0x14]; + s32 unk14; + char unk18[0x14]; +} M418DllUnkStruct5; // sizeof 0x2C; + +typedef struct M418DllUnkStruct6 { + s32 unk0; + char unk4[0x40]; +} M418DllUnkStruct6; // bss +M418DllUnkStruct6 lbl_1_bss_3EC; +M418DllUnkStruct3 lbl_1_bss_26C[4]; +M418DllUnkStruct5 lbl_1_bss_240; M418DllUnkStruct lbl_1_bss_1F4; M418DllUnkStruct2 lbl_1_bss_1E0; +M418DllUnkStruct4 lbl_1_bss_170[4]; +M418DllUnkStruct4 lbl_1_bss_11C[3]; s32 lbl_1_bss_8; s32 lbl_1_bss_4; Process* lbl_1_bss_0; @@ -186,7 +219,7 @@ void fn_1_998(omObjData* object) { void fn_1_AA8(omObjData* object) { Mtx sp10; - char* sp8[2] = { 0, 0 }; + char* sp8[2] = { "scene02-dai1_null", "scene02-dai2_null1" }; s32 var_r31; for (var_r31 = 0; var_r31 < 2; var_r31++) { @@ -229,3 +262,153 @@ void fn_1_B4C(omObjData* object) { } object->func = fn_1_AA8; } + +void fn_1_E74(omObjData* object) { + Mtx sp18; + f32 var_f31; + + M418DllUnkStruct4* temp_r30; + M418DllUnkStruct4* temp_r29; + M418DllUnkStruct3* temp_r28; + M418DllUnkStruct4* temp_r27; + M418DllUnkStruct6* temp_r26; + HsfObject* temp_r25; + ModelData* temp_r24; + + temp_r26 = &lbl_1_bss_3EC; + temp_r28 = &lbl_1_bss_26C[temp_r26->unk0]; + temp_r30 = &lbl_1_bss_170[object->work[0]]; + if (object->work[1] == 0) { + fn_1_ABC4(object, 2, 2, 0, 2); + } else if (object->work[1] == 1) { + Hu3DModelAttrReset(object->model[3], 1); + Hu3DModelAttrReset(object->model[4], 1); + Hu3DModelAttrReset(object->model[5], 1); + Hu3DModelAttrReset(object->model[6], 1); + fn_1_ABC4(object, 2, 2, 0, 0); + fn_1_ABC4(object, 3, 3, 0, 0); + fn_1_ABC4(object, 4, 4, 0, 1); + object->work[1] = 2; + lbl_1_bss_240.unk14 = HuAudFXPlay(0x5D6); + } else if (object->work[1] == 2) { + if (Hu3DMotionEndCheck(object->model[3]) != 0) { + object->work[1] = 3; + object->work[2] = 0; + temp_r30->unkC = 1; + HuAudFXFadeOut(lbl_1_bss_240.unk14, 0x3E8); + } + } else if (object->work[1] == 3) { + temp_r29 = &lbl_1_bss_170[object->work[0]]; + temp_r29->unkC = 2; + temp_r29->unk4 += 1.0f; + if (temp_r29->unk4 >= 20.0f) { + temp_r29->unk4 = 20.0f; + } + if (object->work[2]++ >= 0x5A) { + if (temp_r29->unk10 == 1) { + object->work[1] = 5; + temp_r29->unk8 = 0.0f; + } else { + HuAudFXPlay(0x5D2); + object->work[1] = 4; + Hu3DModelObjMtxGet(object->model[0], "taihou-null4", sp18); + Hu3DModelPosSet(object->model[5], sp18[0][3], sp18[1][3], sp18[2][3]); + fn_1_ABC4(object, 5, 5, 0, 0); + fn_1_158(2, 256.0f); + } + temp_r29->unkC = 3; + } + } else if (object->work[1] == 4) { + if ((Hu3DMotionEndCheck(object->model[5]) != 0) || (temp_r30->unk10 == 1)) { + object->work[1] = 99; + Hu3DModelAttrSet(object->model[3], 1); + Hu3DModelAttrSet(object->model[4], 1); + Hu3DModelAttrSet(object->model[5], 1); + } + } else if (object->work[1] == 5 || object->work[1] == 6) { + if (temp_r30->unk8 > 1.7f) { + temp_r30->unk8 = 1.7f; + } + if (object->work[1] == 5) { + var_f31 = temp_r30->unk8 * temp_r30->unk8 * (temp_r30->unk8 >= 0.0f ? -3.5f : 3.5f); + temp_r30->unk4 += var_f31; + } else { + var_f31 = temp_r30->unk8 * temp_r30->unk8 * (temp_r30->unk8 >= 0.0f ? -1.25f : 1.25f); + temp_r30->unk4 += var_f31; + } + if (temp_r30->unk4 <= 0.0f && object->work[1] == 5) { + temp_r30->unk4 = 0.0f; + temp_r30->unk8 = -1.47f; + object->work[1] = 6; + fn_1_158(1, 4.0f); + omVibrate(temp_r28->unk4, 0xC, 6, 6); + HuAudFXPlay(0x5DA); + } else { + if ((temp_r30->unk4 <= 0.0f) && (object->work[1] == 6)) { + Hu3DModelObjMtxGet(object->model[0], "taihou-null4", sp18); + Hu3DModelPosSet(object->model[6], sp18[0][3], sp18[1][3], sp18[2][3]); + fn_1_158(1, 4.0f); + omVibrate(temp_r28->unk4, 0xC, 6, 6); + temp_r30->unk4 = 0.0f; + temp_r30->unk8 = 0.0f; + object->work[1] = 4; + fn_1_ABC4(object, 6, 6, 0, 0); + HuAudFXPlay(0x5DA); + HuAudFXPlay(0x5DB); + } + } + temp_r30->unk8 += 0.11f; + } + if (object->work[1] != 0) { + const char* sp8[4] = { "doukasen-null_B", "doukasen-null_A", "doukasen-null_X", "doukasen-null_Y" }; + Hu3DModelObjMtxGet(object->model[3], sp8[object->work[0]], sp18); + Hu3DModelPosSet(object->model[4], sp18[0][3], sp18[1][3], sp18[2][3]); + } + temp_r27 = &lbl_1_bss_170[object->work[0]]; + temp_r25 = Hu3DModelObjPtrGet(object->model[0], "taihou-taihou"); + temp_r25->data.base.rot.x = temp_r27->unk4; + temp_r24 = &Hu3DData[object->model[1]]; + temp_r24->rot.x = temp_r27->unk4; +} + +void fn_1_14F0(omObjData* arg0) { + s32 var_r30 = arg0->work[0]; + s32 sp28[4] = { 0x310012, 0x310013, 0x310015, 0x310014 }; + s32 sp18[4] = { 0x310019, 0x31001A, 0x31001B, 0x31001C }; + s32 sp8[4] = { 0x31001D, 0x31001E, 0x31001F, 0x310020 }; + + arg0->model[0] = Hu3DModelCreateFile(0x310010); + omSetTra(arg0, -540.0f + (360.0f * var_r30), 115.0f, -900.0f); + arg0->model[1] = Hu3DModelCreateFile(sp28[var_r30]); + Hu3DModelPosSet(arg0->model[1], -540.0f + (360.0f * var_r30), 115.0f, -900.0f); + arg0->model[2] = Hu3DModelCreateFile(sp18[var_r30]); + arg0->motion[2] = Hu3DMotionIDGet(arg0->model[2]); + fn_1_ABC4(arg0, 2, 2, 0, 2); + arg0->model[3] = Hu3DModelCreateFile(sp8[var_r30]); + arg0->motion[3] = Hu3DMotionIDGet(arg0->model[3]); + Hu3DModelAttrSet(arg0->model[3], 1); + fn_1_ABC4(arg0, 3, 3, 0, 2); + arg0->model[4] = Hu3DModelCreateFile(0x310025); + arg0->motion[4] = Hu3DMotionIDGet(arg0->model[4]); + Hu3DModelAttrSet(arg0->model[4], 1); + fn_1_ABC4(arg0, 4, 4, 0, 2); + arg0->model[5] = Hu3DModelCreateFile(0x310024); + arg0->motion[5] = Hu3DMotionIDGet(arg0->model[5]); + Hu3DModelAttrSet(arg0->model[5], 1); + fn_1_ABC4(arg0, 5, 5, 0, 2); + arg0->model[6] = Hu3DModelCreateFile(0x310028); + arg0->motion[6] = Hu3DMotionIDGet(arg0->model[6]); + Hu3DModelAttrSet(arg0->model[6], 1); + fn_1_ABC4(arg0, 6, 6, 0, 2); + Hu3DModelScaleSet(arg0->model[6], 3.0f, 3.0f, 3.0f); + arg0->func = fn_1_E74; +} + +void fn_1_18AC(omObjData* object) { + M418DllUnkStruct4* var_r31; + + var_r31 = &lbl_1_bss_11C[object->work[0]]; + if (var_r31->unk14 == 0.0f) { + var_r31->unk14 = 1.0f; + } +} From 96a7ca2e8df81c4faddb8fefffdc09b4532db09f Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sat, 16 Nov 2024 00:24:49 -0500 Subject: [PATCH 004/178] continued to 2894 --- .vscode/settings.json | 5 +- src/REL/m418Dll/main.c | 197 ++++++++++++++++++++++++++++++++++++++++- 2 files changed, 199 insertions(+), 3 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index f453e015..6f6e1099 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -22,7 +22,10 @@ "m443dll.h": "c", "object.h": "c", "m417dll.h": "c", - "m418dll.h": "c" + "m418dll.h": "c", + "hsfman.h": "c", + "math.h": "c", + "corecrt_math.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index 9f4e9cad..a9f5f9c2 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -1,9 +1,10 @@ +#include "math.h" +#include "ext_math.h" #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" #include "game/object.h" #include "game/objsub.h" -#include "rel_sqrt_consts.h" #include "REL/m418Dll.h" @@ -27,7 +28,7 @@ typedef struct M418DllUnkStruct4 { s32 unkC; s32 unk10; f32 unk14; - char unk18[0x4]; + f32 unk18; } M418DllUnkStruct4; // sizeof 0x1C typedef struct M418DllUnkStruct5 { @@ -54,8 +55,12 @@ s32 lbl_1_bss_4; Process* lbl_1_bss_0; // data +s32 lbl_1_data_0[2] = { -1, -1 }; s32 lbl_1_data_8 = -1; +// protos +void fn_1_AD14(omObjData*, s32, s32, s32, s32); + void fn_1_0(void) { Hu3DGLightCreate(-2500.0f, 5000.0f, 5000.0f, 0.0f, -1.0f, -1.0f, 0xFF, 0xD8, 0xA0); } @@ -412,3 +417,191 @@ void fn_1_18AC(omObjData* object) { var_r31->unk14 = 1.0f; } } + +s32 fn_1_18FC(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { + M418DllUnkStruct4* temp_r30; + s32 var_r28; + f32 var_f31; + f32 var_f30; + f32 var_f27; + f32 var_f26; + f32 var_f24; + f32 var_f20; + + var_r28 = 0; + temp_r30 = &lbl_1_bss_11C[object->work[0]]; + var_f31 = arg1.x - object->trans.x; + var_f30 = object->trans.z - arg1.z; + var_f26 = 90.0 + atan2d(var_f30, var_f31); + var_f27 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f27 <= 15.0f) { + var_f31 = var_f30 = 0.0f; + } else { + var_f31 = 55.0f * (var_f31 / var_f27); + var_f30 = 55.0f * (var_f30 / var_f27); + } + if (temp_r30->unk14 == 1.0f) { + temp_r30->unk18 = -1.47f; + } + var_f27 = arg9 * (sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)) / 72.0f); + if (var_f27 >= arg9) { + var_f27 = arg9; + } else if (var_f27 <= 1.0f) { + var_f31 = var_f30 = var_f27 = 0.0f; + var_r28 = 1; + } + if (var_f31 != 0.0f || var_f30 != 0.0f || arg8 >= 0.0f) { + if (arg8 >= 0.0f && var_f31 == 0.0f && var_f30 == 0.0f) { + var_f26 = arg8; + } + if (var_f26 >= 180.0f) { + if (object->rot.y - var_f26 >= 180.0f) { + object->rot.y -= 360.0f; + } + if (object->rot.y - var_f26 < -180.0f) { + object->rot.y += 360.0f; + } + } else { + if (object->rot.y - var_f26 > 180.0f) { + object->rot.y -= 360.0f; + } + if (object->rot.y - var_f26 <= -180.0f) { + object->rot.y += 360.0f; + } + } + object->rot.y = (((9.0f * object->rot.y) + var_f26) / 10.0f); + } + object->trans.x += var_f27 * sind(object->rot.y); + object->trans.z += var_f27 * cosd(object->rot.y); + if (temp_r30->unk14) { + temp_r30->unk14 = 2.0f; + if (temp_r30->unk18 > 1.7f) { + temp_r30->unk18 = 1.7f; + } + var_f20 = (temp_r30->unk18 * temp_r30->unk18) * (temp_r30->unk18 >= 0.0f ? -3.5f : 3.5f); + object->trans.y += var_f20; + if (object->trans.y <= arg1.y) { + object->trans.y = arg1.y; + temp_r30->unk14 = temp_r30->unk18 = 0.0f; + var_r28 = 2; + } + temp_r30->unk18 += 0.11f; + } + if (var_f27 > 0.0f) { + fn_1_AD14(object, 0, 1, 10, 1); + } else { + fn_1_AD14(object, 0, 0, 10, 1); + } + return var_r28; +} + +s32 fn_1_20B0(omObjData* object, Vec arg1, f32 arg8, f32 arg9, s32 arg2) { + if (arg2 == 1) fn_1_18AC(object); + return fn_1_18FC(object, arg1, arg9, arg8); +} + +Vec lbl_1_data_8C[9] = { + { 140.0f, 0.0f, -90.0f }, + { -200.0f, 0.0f, 50.0f }, + { -300.0f, 0.0f, -150.0f }, + { -250.0f, 0.0f, -500.0f }, + { 0.0f, 0.0f, 150.0f }, + { 700.0f, 0.0f, 50.0f }, + { 1000.0f, -50.0f, 500.0f }, + { 1000.0f, -100.0f, 500.0f }, + { 1000.0f, -150.0f, 500.0f } +}; + +s32 fn_1_2178(omObjData* object) { + s32 var_r30; + + switch (object->work[1]) { + case 1: + object->work[2] = 0; + object->work[1] = 10; + case 10: + fn_1_20B0(object, lbl_1_data_8C[1], 0.0f, 25.0f, 0); + if (object->work[2]++ >= 15) { + object->work[1] = 11; + object->work[2] = 0; + } + break; + case 11: + var_r30 = fn_1_20B0(object, lbl_1_data_8C[1], 6.0f, -1.0f, 0); + if (var_r30 != 0) { + object->work[1] = 12; + object->work[2] = 0; + } + break; + case 12: + fn_1_20B0(object, lbl_1_data_8C[1], 0.0f, 0.0f, 0); + if (object->work[2]++ >= 15) { + object->work[1] = 13; + object->work[2] = 0; + } + break; + + case 2: + object->work[2] = 0; + object->work[1] = 0x14; + case 20: + fn_1_20B0(object, lbl_1_data_8C[0], 0.0f, 25.0f, 0); + if (object->work[2]++ >= 15) { + object->work[1] = 21; + object->work[2] = 0; + } + break; + case 21: + var_r30 = fn_1_20B0(object, lbl_1_data_8C[4], 6.0f, -1.0f, 0); + if (var_r30 != 0) { + object->work[1] = 22; + object->work[2] = 0; + } + break; + case 22: + var_r30 = fn_1_20B0(object, lbl_1_data_8C[0], 6.0f, 0.0f, 0); + if (var_r30 != 0) { + object->work[1] = 24; + object->work[2] = 0; + } + break; + case 23: + fn_1_20B0(object, lbl_1_data_8C[1], 0.0f, 0.0f, 0); + if (object->work[2]++ >= 30) { + object->work[1] = 24; + object->work[2] = 0; + } + break; + case 3: + object->work[2] = 0; + object->work[1] = 30; + case 30: + var_r30 = fn_1_20B0(object, lbl_1_data_8C[5], 6.0f, -1.0f, 0); + if (var_r30 == 1) { + object->work[1] = 31; + object->work[2] = 0; + } + break; + case 31: + var_r30 = fn_1_20B0(object, lbl_1_data_8C[6], 6.0f, -1.0f, 1); + if (var_r30 != 0) { + object->work[1] = 32; + object->work[2] = 0; + } + break; + case 32: + var_r30 = fn_1_20B0(object, lbl_1_data_8C[7], 6.0f, -1.0f, 1); + if (var_r30 != 0) { + object->work[1] = 33; + object->work[2] = 0; + } + break; + case 33: + var_r30 = fn_1_20B0(object, lbl_1_data_8C[8], 6.0f, -1.0f, 1); + if (var_r30 != 0) { + object->work[1] = 34; + object->work[2] = 0; + } + break; + } +} From d0a5c85d3e3d835196d52617b647dbb4739eccac Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Sat, 16 Nov 2024 12:35:24 -0600 Subject: [PATCH 005/178] Add support for PAL version (#464) * Initial setup for PAL version * Add hashes to config.yml Set REL/empty.c to matching for every version Turn off quick-analysis for PAL * Set nisDll matching only for the US version * More config.yml fixes and reran auto-analysis * Split PAL to sprput * Add more symbols * Split a lot more code in PAL * Split more Also introduce version.h header * Split to board stuff * Port early board TUs to PAL * More board PAL ports * Split rest of board code * Board RELs porting to PAL * Match w06Dll/fire.c in PAL * Match w04 big boo for PAL --------- Co-authored-by: dbalatoni13 --- config/GMPE01_00/config.yml | 5 +- config/GMPE01_00/symbols.txt | 52 +- config/GMPP01_00/build.sha1 | 100 + config/GMPP01_00/config.yml | 657 ++ config/GMPP01_00/rels/E3setupDLL/splits.txt | 7 + config/GMPP01_00/rels/E3setupDLL/symbols.txt | 192 + config/GMPP01_00/rels/_minigameDll/splits.txt | 6 + .../GMPP01_00/rels/_minigameDll/symbols.txt | 7 + config/GMPP01_00/rels/bootDll/splits.txt | 7 + config/GMPP01_00/rels/bootDll/symbols.txt | 107 + config/GMPP01_00/rels/instDll/splits.txt | 7 + config/GMPP01_00/rels/instDll/symbols.txt | 147 + config/GMPP01_00/rels/m300Dll/splits.txt | 3 + config/GMPP01_00/rels/m300Dll/symbols.txt | 2 + config/GMPP01_00/rels/m302Dll/splits.txt | 3 + config/GMPP01_00/rels/m302Dll/symbols.txt | 2 + config/GMPP01_00/rels/m303Dll/splits.txt | 3 + config/GMPP01_00/rels/m303Dll/symbols.txt | 2 + config/GMPP01_00/rels/m330Dll/splits.txt | 3 + config/GMPP01_00/rels/m330Dll/symbols.txt | 2 + config/GMPP01_00/rels/m333Dll/splits.txt | 3 + config/GMPP01_00/rels/m333Dll/symbols.txt | 2 + config/GMPP01_00/rels/m401Dll/splits.txt | 7 + config/GMPP01_00/rels/m401Dll/symbols.txt | 522 + config/GMPP01_00/rels/m402Dll/splits.txt | 7 + config/GMPP01_00/rels/m402Dll/symbols.txt | 206 + config/GMPP01_00/rels/m403Dll/splits.txt | 7 + config/GMPP01_00/rels/m403Dll/symbols.txt | 259 + config/GMPP01_00/rels/m404Dll/splits.txt | 7 + config/GMPP01_00/rels/m404Dll/symbols.txt | 155 + config/GMPP01_00/rels/m405Dll/splits.txt | 7 + config/GMPP01_00/rels/m405Dll/symbols.txt | 256 + config/GMPP01_00/rels/m406Dll/splits.txt | 7 + config/GMPP01_00/rels/m406Dll/symbols.txt | 438 + config/GMPP01_00/rels/m407dll/splits.txt | 7 + config/GMPP01_00/rels/m407dll/symbols.txt | 271 + config/GMPP01_00/rels/m408Dll/splits.txt | 7 + config/GMPP01_00/rels/m408Dll/symbols.txt | 548 ++ config/GMPP01_00/rels/m409Dll/splits.txt | 7 + config/GMPP01_00/rels/m409Dll/symbols.txt | 332 + config/GMPP01_00/rels/m410Dll/splits.txt | 7 + config/GMPP01_00/rels/m410Dll/symbols.txt | 316 + config/GMPP01_00/rels/m411Dll/splits.txt | 7 + config/GMPP01_00/rels/m411Dll/symbols.txt | 278 + config/GMPP01_00/rels/m412Dll/splits.txt | 7 + config/GMPP01_00/rels/m412Dll/symbols.txt | 190 + config/GMPP01_00/rels/m413Dll/splits.txt | 7 + config/GMPP01_00/rels/m413Dll/symbols.txt | 211 + config/GMPP01_00/rels/m414Dll/splits.txt | 7 + config/GMPP01_00/rels/m414Dll/symbols.txt | 183 + config/GMPP01_00/rels/m415Dll/splits.txt | 7 + config/GMPP01_00/rels/m415Dll/symbols.txt | 234 + config/GMPP01_00/rels/m416Dll/splits.txt | 7 + config/GMPP01_00/rels/m416Dll/symbols.txt | 209 + config/GMPP01_00/rels/m417Dll/splits.txt | 7 + config/GMPP01_00/rels/m417Dll/symbols.txt | 361 + config/GMPP01_00/rels/m418Dll/splits.txt | 7 + config/GMPP01_00/rels/m418Dll/symbols.txt | 304 + config/GMPP01_00/rels/m419Dll/splits.txt | 7 + config/GMPP01_00/rels/m419Dll/symbols.txt | 184 + config/GMPP01_00/rels/m420dll/splits.txt | 7 + config/GMPP01_00/rels/m420dll/symbols.txt | 249 + config/GMPP01_00/rels/m421Dll/splits.txt | 7 + config/GMPP01_00/rels/m421Dll/symbols.txt | 269 + config/GMPP01_00/rels/m422Dll/splits.txt | 7 + config/GMPP01_00/rels/m422Dll/symbols.txt | 249 + config/GMPP01_00/rels/m423Dll/splits.txt | 7 + config/GMPP01_00/rels/m423Dll/symbols.txt | 367 + config/GMPP01_00/rels/m424Dll/splits.txt | 7 + config/GMPP01_00/rels/m424Dll/symbols.txt | 314 + config/GMPP01_00/rels/m425Dll/splits.txt | 7 + config/GMPP01_00/rels/m425Dll/symbols.txt | 300 + config/GMPP01_00/rels/m426Dll/splits.txt | 7 + config/GMPP01_00/rels/m426Dll/symbols.txt | 225 + config/GMPP01_00/rels/m427Dll/splits.txt | 7 + config/GMPP01_00/rels/m427Dll/symbols.txt | 439 + config/GMPP01_00/rels/m428Dll/splits.txt | 7 + config/GMPP01_00/rels/m428Dll/symbols.txt | 410 + config/GMPP01_00/rels/m429Dll/splits.txt | 7 + config/GMPP01_00/rels/m429Dll/symbols.txt | 316 + config/GMPP01_00/rels/m430Dll/splits.txt | 7 + config/GMPP01_00/rels/m430Dll/symbols.txt | 490 + config/GMPP01_00/rels/m431Dll/splits.txt | 7 + config/GMPP01_00/rels/m431Dll/symbols.txt | 251 + config/GMPP01_00/rels/m432Dll/splits.txt | 7 + config/GMPP01_00/rels/m432Dll/symbols.txt | 359 + config/GMPP01_00/rels/m433Dll/splits.txt | 7 + config/GMPP01_00/rels/m433Dll/symbols.txt | 465 + config/GMPP01_00/rels/m434Dll/splits.txt | 7 + config/GMPP01_00/rels/m434Dll/symbols.txt | 334 + config/GMPP01_00/rels/m435Dll/splits.txt | 7 + config/GMPP01_00/rels/m435Dll/symbols.txt | 471 + config/GMPP01_00/rels/m436Dll/splits.txt | 7 + config/GMPP01_00/rels/m436Dll/symbols.txt | 352 + config/GMPP01_00/rels/m437Dll/splits.txt | 7 + config/GMPP01_00/rels/m437Dll/symbols.txt | 411 + config/GMPP01_00/rels/m438Dll/splits.txt | 7 + config/GMPP01_00/rels/m438Dll/symbols.txt | 458 + config/GMPP01_00/rels/m439Dll/splits.txt | 7 + config/GMPP01_00/rels/m439Dll/symbols.txt | 322 + config/GMPP01_00/rels/m440Dll/splits.txt | 7 + config/GMPP01_00/rels/m440Dll/symbols.txt | 293 + config/GMPP01_00/rels/m441Dll/splits.txt | 7 + config/GMPP01_00/rels/m441Dll/symbols.txt | 224 + config/GMPP01_00/rels/m442Dll/splits.txt | 7 + config/GMPP01_00/rels/m442Dll/symbols.txt | 222 + config/GMPP01_00/rels/m443Dll/splits.txt | 7 + config/GMPP01_00/rels/m443Dll/symbols.txt | 326 + config/GMPP01_00/rels/m444dll/splits.txt | 7 + config/GMPP01_00/rels/m444dll/symbols.txt | 320 + config/GMPP01_00/rels/m445Dll/splits.txt | 7 + config/GMPP01_00/rels/m445Dll/symbols.txt | 173 + config/GMPP01_00/rels/m446dll/splits.txt | 7 + config/GMPP01_00/rels/m446dll/symbols.txt | 305 + config/GMPP01_00/rels/m447dll/splits.txt | 7 + config/GMPP01_00/rels/m447dll/symbols.txt | 309 + config/GMPP01_00/rels/m448Dll/splits.txt | 7 + config/GMPP01_00/rels/m448Dll/symbols.txt | 200 + config/GMPP01_00/rels/m449Dll/splits.txt | 7 + config/GMPP01_00/rels/m449Dll/symbols.txt | 209 + config/GMPP01_00/rels/m450Dll/splits.txt | 7 + config/GMPP01_00/rels/m450Dll/symbols.txt | 558 ++ config/GMPP01_00/rels/m451Dll/splits.txt | 7 + config/GMPP01_00/rels/m451Dll/symbols.txt | 216 + config/GMPP01_00/rels/m453Dll/splits.txt | 7 + config/GMPP01_00/rels/m453Dll/symbols.txt | 282 + config/GMPP01_00/rels/m455Dll/splits.txt | 7 + config/GMPP01_00/rels/m455Dll/symbols.txt | 293 + config/GMPP01_00/rels/m456Dll/splits.txt | 7 + config/GMPP01_00/rels/m456Dll/symbols.txt | 283 + config/GMPP01_00/rels/m457Dll/splits.txt | 7 + config/GMPP01_00/rels/m457Dll/symbols.txt | 177 + config/GMPP01_00/rels/m458Dll/splits.txt | 7 + config/GMPP01_00/rels/m458Dll/symbols.txt | 176 + config/GMPP01_00/rels/m459dll/splits.txt | 7 + config/GMPP01_00/rels/m459dll/symbols.txt | 169 + config/GMPP01_00/rels/m460Dll/splits.txt | 7 + config/GMPP01_00/rels/m460Dll/symbols.txt | 298 + config/GMPP01_00/rels/m461Dll/splits.txt | 7 + config/GMPP01_00/rels/m461Dll/symbols.txt | 223 + config/GMPP01_00/rels/m462Dll/splits.txt | 7 + config/GMPP01_00/rels/m462Dll/symbols.txt | 144 + config/GMPP01_00/rels/m463Dll/splits.txt | 7 + config/GMPP01_00/rels/m463Dll/symbols.txt | 164 + config/GMPP01_00/rels/mentDll/splits.txt | 7 + config/GMPP01_00/rels/mentDll/symbols.txt | 440 + config/GMPP01_00/rels/messDll/splits.txt | 7 + config/GMPP01_00/rels/messDll/symbols.txt | 113 + config/GMPP01_00/rels/mgmodedll/splits.txt | 7 + config/GMPP01_00/rels/mgmodedll/symbols.txt | 584 ++ config/GMPP01_00/rels/modeltestDll/splits.txt | 7 + .../GMPP01_00/rels/modeltestDll/symbols.txt | 230 + config/GMPP01_00/rels/modeseldll/splits.txt | 7 + config/GMPP01_00/rels/modeseldll/symbols.txt | 269 + config/GMPP01_00/rels/mpexDll/splits.txt | 7 + config/GMPP01_00/rels/mpexDll/symbols.txt | 474 + config/GMPP01_00/rels/msetupDll/splits.txt | 3 + config/GMPP01_00/rels/msetupDll/symbols.txt | 2 + config/GMPP01_00/rels/mstory2Dll/splits.txt | 7 + config/GMPP01_00/rels/mstory2Dll/symbols.txt | 709 ++ config/GMPP01_00/rels/mstory3Dll/splits.txt | 7 + config/GMPP01_00/rels/mstory3Dll/symbols.txt | 549 ++ config/GMPP01_00/rels/mstory4Dll/splits.txt | 7 + config/GMPP01_00/rels/mstory4Dll/symbols.txt | 67 + config/GMPP01_00/rels/mstoryDll/splits.txt | 7 + config/GMPP01_00/rels/mstoryDll/symbols.txt | 498 + config/GMPP01_00/rels/nisDll/splits.txt | 5 + config/GMPP01_00/rels/nisDll/symbols.txt | 6 + config/GMPP01_00/rels/option/splits.txt | 7 + config/GMPP01_00/rels/option/symbols.txt | 379 + config/GMPP01_00/rels/present/splits.txt | 7 + config/GMPP01_00/rels/present/symbols.txt | 189 + config/GMPP01_00/rels/resultDll/splits.txt | 7 + config/GMPP01_00/rels/resultDll/symbols.txt | 203 + config/GMPP01_00/rels/safDll/splits.txt | 7 + config/GMPP01_00/rels/safDll/symbols.txt | 13 + config/GMPP01_00/rels/selmenuDll/splits.txt | 7 + config/GMPP01_00/rels/selmenuDll/symbols.txt | 201 + config/GMPP01_00/rels/staffDll/splits.txt | 7 + config/GMPP01_00/rels/staffDll/symbols.txt | 55 + config/GMPP01_00/rels/subchrselDll/splits.txt | 7 + .../GMPP01_00/rels/subchrselDll/symbols.txt | 33 + config/GMPP01_00/rels/w01Dll/splits.txt | 29 + config/GMPP01_00/rels/w01Dll/symbols.txt | 469 + config/GMPP01_00/rels/w02Dll/splits.txt | 52 + config/GMPP01_00/rels/w02Dll/symbols.txt | 457 + config/GMPP01_00/rels/w03Dll/splits.txt | 53 + config/GMPP01_00/rels/w03Dll/symbols.txt | 443 + config/GMPP01_00/rels/w04Dll/splits.txt | 47 + config/GMPP01_00/rels/w04Dll/symbols.txt | 452 + config/GMPP01_00/rels/w05Dll/splits.txt | 47 + config/GMPP01_00/rels/w05Dll/symbols.txt | 356 + config/GMPP01_00/rels/w06Dll/splits.txt | 47 + config/GMPP01_00/rels/w06Dll/symbols.txt | 373 + config/GMPP01_00/rels/w10Dll/splits.txt | 33 + config/GMPP01_00/rels/w10Dll/symbols.txt | 116 + config/GMPP01_00/rels/w20Dll/splits.txt | 17 + config/GMPP01_00/rels/w20Dll/symbols.txt | 33 + config/GMPP01_00/rels/w21Dll/splits.txt | 15 + config/GMPP01_00/rels/w21Dll/symbols.txt | 18 + config/GMPP01_00/rels/ztardll/splits.txt | 7 + config/GMPP01_00/rels/ztardll/symbols.txt | 258 + config/GMPP01_00/splits.txt | 567 ++ config/GMPP01_00/symbols.txt | 8670 +++++++++++++++++ config/GMPP01_02/build.sha1 | 100 + config/GMPP01_02/config.yml | 639 ++ config/GMPP01_02/rels/m444dll/splits.txt | 7 + config/GMPP01_02/rels/m444dll/symbols.txt | 321 + config/GMPP01_02/rels/mstory2Dll/splits.txt | 7 + config/GMPP01_02/rels/mstory2Dll/symbols.txt | 709 ++ config/GMPP01_02/rels/mstory3Dll/splits.txt | 7 + config/GMPP01_02/rels/mstory3Dll/symbols.txt | 549 ++ config/GMPP01_02/rels/mstoryDll/splits.txt | 7 + config/GMPP01_02/rels/mstoryDll/symbols.txt | 498 + configure.py | 524 +- include/game/board/window.h | 1 + include/game/gamework_data.h | 22 + include/version.h | 18 + src/REL/w04Dll/big_boo.c | 4 + src/REL/w06Dll/fire.c | 31 +- src/game/audio.c | 2 +- src/game/board/boo.c | 8 +- src/game/board/char_wheel.c | 19 + src/game/board/item.c | 4 +- src/game/board/main.c | 7 +- src/game/board/roll.c | 107 +- src/game/board/shop.c | 27 +- src/game/board/star.c | 28 +- src/game/board/ui.c | 22 +- src/game/board/view.c | 24 +- src/game/board/window.c | 27 +- src/game/data.c | 4 +- src/game/decode.c | 8 +- src/game/hsfanim.c | 6 +- src/game/sreset.c | 127 +- src/game/wipe.c | 6 + 236 files changed, 40998 insertions(+), 390 deletions(-) create mode 100644 config/GMPP01_00/build.sha1 create mode 100644 config/GMPP01_00/config.yml create mode 100644 config/GMPP01_00/rels/E3setupDLL/splits.txt create mode 100644 config/GMPP01_00/rels/E3setupDLL/symbols.txt create mode 100644 config/GMPP01_00/rels/_minigameDll/splits.txt create mode 100644 config/GMPP01_00/rels/_minigameDll/symbols.txt create mode 100644 config/GMPP01_00/rels/bootDll/splits.txt create mode 100644 config/GMPP01_00/rels/bootDll/symbols.txt create mode 100644 config/GMPP01_00/rels/instDll/splits.txt create mode 100644 config/GMPP01_00/rels/instDll/symbols.txt create mode 100644 config/GMPP01_00/rels/m300Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m300Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m302Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m302Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m303Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m303Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m330Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m330Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m333Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m333Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m401Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m401Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m402Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m402Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m403Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m403Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m404Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m404Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m405Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m405Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m406Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m406Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m407dll/splits.txt create mode 100644 config/GMPP01_00/rels/m407dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m408Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m408Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m409Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m409Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m410Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m410Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m411Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m411Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m412Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m412Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m413Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m413Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m414Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m414Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m415Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m415Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m416Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m416Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m417Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m417Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m418Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m418Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m419Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m419Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m420dll/splits.txt create mode 100644 config/GMPP01_00/rels/m420dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m421Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m421Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m422Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m422Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m423Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m423Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m424Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m424Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m425Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m425Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m426Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m426Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m427Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m427Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m428Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m428Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m429Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m429Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m430Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m430Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m431Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m431Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m432Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m432Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m433Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m433Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m434Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m434Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m435Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m435Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m436Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m436Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m437Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m437Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m438Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m438Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m439Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m439Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m440Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m440Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m441Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m441Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m442Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m442Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m443Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m443Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m444dll/splits.txt create mode 100644 config/GMPP01_00/rels/m444dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m445Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m445Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m446dll/splits.txt create mode 100644 config/GMPP01_00/rels/m446dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m447dll/splits.txt create mode 100644 config/GMPP01_00/rels/m447dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m448Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m448Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m449Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m449Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m450Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m450Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m451Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m451Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m453Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m453Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m455Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m455Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m456Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m456Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m457Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m457Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m458Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m458Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m459dll/splits.txt create mode 100644 config/GMPP01_00/rels/m459dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m460Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m460Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m461Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m461Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m462Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m462Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/m463Dll/splits.txt create mode 100644 config/GMPP01_00/rels/m463Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/mentDll/splits.txt create mode 100644 config/GMPP01_00/rels/mentDll/symbols.txt create mode 100644 config/GMPP01_00/rels/messDll/splits.txt create mode 100644 config/GMPP01_00/rels/messDll/symbols.txt create mode 100644 config/GMPP01_00/rels/mgmodedll/splits.txt create mode 100644 config/GMPP01_00/rels/mgmodedll/symbols.txt create mode 100644 config/GMPP01_00/rels/modeltestDll/splits.txt create mode 100644 config/GMPP01_00/rels/modeltestDll/symbols.txt create mode 100644 config/GMPP01_00/rels/modeseldll/splits.txt create mode 100644 config/GMPP01_00/rels/modeseldll/symbols.txt create mode 100644 config/GMPP01_00/rels/mpexDll/splits.txt create mode 100644 config/GMPP01_00/rels/mpexDll/symbols.txt create mode 100644 config/GMPP01_00/rels/msetupDll/splits.txt create mode 100644 config/GMPP01_00/rels/msetupDll/symbols.txt create mode 100644 config/GMPP01_00/rels/mstory2Dll/splits.txt create mode 100644 config/GMPP01_00/rels/mstory2Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/mstory3Dll/splits.txt create mode 100644 config/GMPP01_00/rels/mstory3Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/mstory4Dll/splits.txt create mode 100644 config/GMPP01_00/rels/mstory4Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/mstoryDll/splits.txt create mode 100644 config/GMPP01_00/rels/mstoryDll/symbols.txt create mode 100644 config/GMPP01_00/rels/nisDll/splits.txt create mode 100644 config/GMPP01_00/rels/nisDll/symbols.txt create mode 100644 config/GMPP01_00/rels/option/splits.txt create mode 100644 config/GMPP01_00/rels/option/symbols.txt create mode 100644 config/GMPP01_00/rels/present/splits.txt create mode 100644 config/GMPP01_00/rels/present/symbols.txt create mode 100644 config/GMPP01_00/rels/resultDll/splits.txt create mode 100644 config/GMPP01_00/rels/resultDll/symbols.txt create mode 100644 config/GMPP01_00/rels/safDll/splits.txt create mode 100644 config/GMPP01_00/rels/safDll/symbols.txt create mode 100644 config/GMPP01_00/rels/selmenuDll/splits.txt create mode 100644 config/GMPP01_00/rels/selmenuDll/symbols.txt create mode 100644 config/GMPP01_00/rels/staffDll/splits.txt create mode 100644 config/GMPP01_00/rels/staffDll/symbols.txt create mode 100644 config/GMPP01_00/rels/subchrselDll/splits.txt create mode 100644 config/GMPP01_00/rels/subchrselDll/symbols.txt create mode 100644 config/GMPP01_00/rels/w01Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w01Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w02Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w02Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w03Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w03Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w04Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w04Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w05Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w05Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w06Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w06Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w10Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w10Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w20Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w20Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/w21Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w21Dll/symbols.txt create mode 100644 config/GMPP01_00/rels/ztardll/splits.txt create mode 100644 config/GMPP01_00/rels/ztardll/symbols.txt create mode 100644 config/GMPP01_00/splits.txt create mode 100644 config/GMPP01_00/symbols.txt create mode 100644 config/GMPP01_02/build.sha1 create mode 100644 config/GMPP01_02/config.yml create mode 100644 config/GMPP01_02/rels/m444dll/splits.txt create mode 100644 config/GMPP01_02/rels/m444dll/symbols.txt create mode 100644 config/GMPP01_02/rels/mstory2Dll/splits.txt create mode 100644 config/GMPP01_02/rels/mstory2Dll/symbols.txt create mode 100644 config/GMPP01_02/rels/mstory3Dll/splits.txt create mode 100644 config/GMPP01_02/rels/mstory3Dll/symbols.txt create mode 100644 config/GMPP01_02/rels/mstoryDll/splits.txt create mode 100644 config/GMPP01_02/rels/mstoryDll/symbols.txt create mode 100644 include/version.h diff --git a/config/GMPE01_00/config.yml b/config/GMPE01_00/config.yml index 81fc8915..9512c05c 100644 --- a/config/GMPE01_00/config.yml +++ b/config/GMPE01_00/config.yml @@ -565,7 +565,4 @@ extract: header: retryerror_en.inc - symbol: wrongdisc_en binary: wrongdisc_en.bin - header: wrongdisc_en.inc -- symbol: DEMOFontBitmap - binary: DEMOFontBitmap.bin - header: DEMOFontBitmap.inc \ No newline at end of file + header: wrongdisc_en.inc \ No newline at end of file diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 144dc6c3..cfa1a176 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -475,7 +475,7 @@ Hu3DParticleAttrSet = .text:0x8002A544; // type:function size:0x40 Hu3DParticleAttrReset = .text:0x8002A584; // type:function size:0x44 Hu3DParticleCntSet = .text:0x8002A5C8; // type:function size:0x3C Hu3DParticleAnimModeSet = .text:0x8002A604; // type:function size:0x60 -_Hu3DParticleAttrReset = .text:0x8002A664; // type:function size:0xAD4 scope:local +particleFunc = .text:0x8002A664; // type:function size:0xAD4 scope:local Hu3DParManInit = .text:0x8002B138; // type:function size:0x48 Hu3DParManCreate = .text:0x8002B180; // type:function size:0x1D4 Hu3DParManLink = .text:0x8002B354; // type:function size:0x17C @@ -721,7 +721,7 @@ fn_80040374 = .text:0x80040374; // type:function size:0x98 fn_8004040C = .text:0x8004040C; // type:function size:0xF4 GetClusterCurve = .text:0x80040500; // type:function size:0xA8 GetClusterWeightCurve = .text:0x800405A8; // type:function size:0xA8 -SetClusterMain = .text:0x80040650; // type:function size:0x3A0 +SetClusterMain = .text:0x80040650; // type:function size:0x3A0 scope:local ClusterProc = .text:0x800409F0; // type:function size:0x160 ClusterMotionExec = .text:0x80040B50; // type:function size:0x210 SetShapeMain = .text:0x80040D60; // type:function size:0x36C scope:local @@ -1841,10 +1841,10 @@ BallBooFlash = .text:0x800A1024; // type:function size:0x178 scope:local TakeBallCoin = .text:0x800A119C; // type:function size:0x1B0 scope:local ExecTakeBallCoin = .text:0x800A134C; // type:function size:0xDC scope:local TakeBallCoinPosSet = .text:0x800A1428; // type:function size:0x9C scope:local -CheckBallCoinDone = .text:0x800A14C4; // type:function size:0x68 -TakeBallStar = .text:0x800A152C; // type:function size:0x168 -ExecTakeBallStar = .text:0x800A1694; // type:function size:0x184 -CheckTakeBallStarDone = .text:0x800A1818; // type:function size:0x1C +CheckBallCoinDone = .text:0x800A14C4; // type:function size:0x68 scope:local +TakeBallStar = .text:0x800A152C; // type:function size:0x168 scope:local +ExecTakeBallStar = .text:0x800A1694; // type:function size:0x184 scope:local +CheckTakeBallStarDone = .text:0x800A1818; // type:function size:0x1C scope:local BoardBooStealValueGet = .text:0x800A1834; // type:function size:0x30 BoardBooStealLightCheck = .text:0x800A1864; // type:function size:0x20 UpdatePlayerCoins = .text:0x800A1884; // type:function size:0x1B0 scope:local @@ -2756,8 +2756,8 @@ __THPHuffDecodeDCTCompU = .text:0x800E0C48; // type:function size:0x6A8 scope:lo __THPHuffDecodeDCTCompV = .text:0x800E12F0; // type:function size:0x6A8 scope:local THPInit = .text:0x800E1998; // type:function size:0x78 THPAudioDecode = .text:0x800E1A10; // type:function size:0x464 -__THPAudioGetNewSample = .text:0x800E1E74; // type:function size:0x90 -__THPAudioInitialize = .text:0x800E1F04; // type:function size:0x3C +__THPAudioGetNewSample = .text:0x800E1E74; // type:function size:0x90 scope:local +__THPAudioInitialize = .text:0x800E1F04; // type:function size:0x3C scope:local __va_arg = .text:0x800E1F40; // type:function size:0xC8 scope:global __destroy_global_chain = .text:0x800E2008; // type:function size:0x48 scope:global __register_global_object = .text:0x800E2050; // type:function size:0x18 scope:global @@ -2918,7 +2918,7 @@ __StringWrite = .text:0x800E65DC; // type:function size:0x6C __FileWrite = .text:0x800E6648; // type:function size:0x58 scope:global __pformatter = .text:0x800E66A0; // type:function size:0x774 scope:local float2str = .text:0x800E6E14; // type:function size:0x6EC scope:local -round_decimal = .text:0x800E7500; // type:function size:0x12C +round_decimal = .text:0x800E7500; // type:function size:0x12C scope:local double2hex = .text:0x800E762C; // type:function size:0x338 scope:local longlong2str = .text:0x800E7964; // type:function size:0x2DC scope:local long2str = .text:0x800E7C40; // type:function size:0x220 scope:local @@ -3514,7 +3514,7 @@ msmSysDelGroupAll = .text:0x801161B4; // type:function size:0x140 msmSysDelGroupBase = .text:0x801162F4; // type:function size:0x28C msmSysLoadGroupBase = .text:0x80116580; // type:function size:0x298 msmSysLoadGroupSet = .text:0x80116818; // type:function size:0x3F0 -msmSysLoadGroupSub = .text:0x80116C08; // type:function size:0x3B4 +msmSysLoadGroupSub = .text:0x80116C08; // type:function size:0x3B4 scope:local msmSysLoadGroup = .text:0x80116FBC; // type:function size:0x278 msmSysCheckInit = .text:0x80117234; // type:function size:0x20 msmSysInit = .text:0x80117254; // type:function size:0x474 @@ -3570,8 +3570,8 @@ msmStreamAmemAlloc = .text:0x8011A798; // type:function size:0x10C msmStreamInit = .text:0x8011A8A4; // type:function size:0x2A8 msmStreamPauseOff = .text:0x8011AB4C; // type:function size:0x2B8 msmStreamPauseOn = .text:0x8011AE04; // type:function size:0x1AC -msmStreamPauseFade = .text:0x8011AFB0; // type:function size:0x2E8 -msmStreamFade = .text:0x8011B298; // type:function size:0x33C +msmStreamPauseFade = .text:0x8011AFB0; // type:function size:0x2E8 scope:local +msmStreamFade = .text:0x8011B298; // type:function size:0x33C scope:local msmStreamStopSub = .text:0x8011B5D4; // type:function size:0x13C scope:local msmStreamSetParamSub = .text:0x8011B710; // type:function size:0xE0 scope:local msmStreamPackStartStereo = .text:0x8011B7F0; // type:function size:0x448 @@ -3611,8 +3611,8 @@ pickSpr = .rodata:0x8011DFD0; // type:object size:0x20 scope:local handMdl = .rodata:0x8011DFF0; // type:object size:0x20 scope:local ticketSpr = .rodata:0x8011E010; // type:object size:0x10 scope:local lbl_8011E020 = .rodata:0x8011E020; // type:object size:0x20 data:4byte -lbl_8011E040 = .rodata:0x8011E040; // type:object size:0x24 -lbl_8011E064 = .rodata:0x8011E064; // type:object size:0x4C +starMesTbl1 = .rodata:0x8011E040; // type:object size:0x24 scope:local +starMesTbl2 = .rodata:0x8011E064; // type:object size:0x48 scope:local lbl_8011E0B0 = .rodata:0x8011E0B0; // type:object size:0x10 data:4byte lbl_8011E0C0 = .rodata:0x8011E0C0; // type:object size:0x54 data:4byte lbl_8011E118 = .rodata:0x8011E118; // type:object size:0x38 data:4byte @@ -4291,7 +4291,9 @@ statusLayout1Vs3 = .data:0x8013AD64; // type:object size:0x30 scope:local data:f statusLayout2Vs2 = .data:0x8013AD94; // type:object size:0x30 scope:local data:float luckyMessTbl = .data:0x8013ADC4; // type:object size:0x24 scope:local jumptable_8013ADE8 = .data:0x8013ADE8; // type:object size:0x20 scope:local -hiliteYTbl = .data:0x8013AE08; // type:object size:0x10 scope:local +cursorYTbl = .data:0x8013AE08; // type:object size:0x10 scope:local +hiliteYTbl = .data:0x8013AE18; // type:object size:0x10 scope:local + hiliteColTbl = .data:0x8013AE28; // type:object size:0xC scope:local hostMesTbl = .data:0x8013AE38; // type:object size:0x90 scope:local houseMdlTbl = .data:0x8013AEC8; // type:object size:0x30 scope:local @@ -4549,12 +4551,12 @@ rsmpTab12khz = .data:0x80141FF0; // type:object size:0x800 scope:local padStatErrOld = .bss:0x80142800; // type:object size:0x10 scope:local rumbleData = .bss:0x80142810; // type:object size:0x20 scope:local ReadDataStat = .bss:0x80142840; // type:object size:0x2E00 scope:local align:32 data:4byte -TextBuffer = .bss:0x80145640; // type:object size:0x400 +textBuffer = .bss:0x80145640; // type:object size:0x400 scope:local rmodeobj = .bss:0x80145A40; // type:object size:0x40 scope:local HeapTbl = .bss:0x80145A80; // type:object size:0x14 scope:local strline = .bss:0x80145A98; // type:object size:0x6800 scope:local pfStrBuf = .bss:0x8014C298; // type:object size:0x100 scope:local data:byte -processjmpbuf = .bss:0x8014C398; // type:object size:0xF8 align:8 +processjmpbuf = .bss:0x8014C398; // type:object size:0xF8 scope:local align:8 HuSprData = .bss:0x8014C490; // type:object size:0x9600 HuSprGrpData = .bss:0x80155A90; // type:object size:0x5400 data:2byte HuSprOrder = .bss:0x8015AE90; // type:object size:0x1800 @@ -4609,7 +4611,7 @@ CenterM = .bss:0x801900E0; // type:object size:0xC0 CZoomM = .bss:0x801901A0; // type:object size:0x40 omDLLinfoTbl = .bss:0x801901E0; // type:object size:0x50 sndFXBuf = .bss:0x80190230; // type:object size:0x200 scope:local -charVoiceGroupStat = .bss:0x80190430; // type:object size:0x20 scope:local +charVoiceGroupStat = .bss:0x80190430; // type:object size:0x20 seqWorkData = .bss:0x80190450; // type:object size:0x400 scope:local data:4byte winnerNameW = .bss:0x80190850; // type:object size:0x10 scope:local data:2byte esprite = .bss:0x80190860; // type:object size:0x600 data:2byte @@ -4648,7 +4650,7 @@ THPFileName = .bss:0x801981A0; // type:object size:0x40 scope:local mgGameStatBackup = .bss:0x801981E0; // type:object size:0x118 mgIndexList = .bss:0x801982F8; // type:object size:0x100 mgTicTacToeGrid = .bss:0x801983F8; // type:object size:0x12 -_Sys_Flag = .bss:0x80198410; // type:object size:0x10 +_Sys_Flag = .bss:0x80198410; // type:object size:0x10 scope:local curFileInfo = .bss:0x80198420; // type:object size:0x20 saveBuf = .bss:0x80198440; // type:object size:0x4000 align:32 ToeMessageQueue = .bss:0x8019C440; // type:object size:0x20 scope:local @@ -4701,7 +4703,7 @@ spacePos = .bss:0x801A4CF0; // type:object size:0xC scope:local data:float focusPos = .bss:0x801A4CFC; // type:object size:0xC scope:local data:float hostPos = .bss:0x801A4D08; // type:object size:0xC scope:local hostMot = .bss:0x801A4D14; // type:object size:0x10 scope:local data:2byte -lotteryTicketObj = .bss:0x801A4D24; // type:object size:0x14 scope:local data:4byte +lotteryTicketObj = .bss:0x801A4D24; // type:object size:0x10 scope:local data:4byte boxRot = .bss:0x801A4D38; // type:object size:0x20 scope:local padBoxPos = .bss:0x801A4D58; // type:object size:0xC scope:local data:float pathNodeData = .bss:0x801A4D68; // type:object size:0x500 scope:local data:byte @@ -5005,7 +5007,7 @@ itemPickupMdlId = .sdata:0x801D3790; // type:object size:0x2 scope:local data:2b yourTurnSprGrp = .sdata:0x801D3792; // type:object size:0x2 scope:local data:2byte jumpMot = .sdata:0x801D3798; // type:object size:0x2 scope:local data:2byte starMdl = .sdata:0x801D379A; // type:object size:0x2 scope:local data:2byte -lbl_801D37A0 = .sdata:0x801D37A0; // type:object size:0x8 +itemMotTbl = .sdata:0x801D37A0; // type:object size:0x8 scope:local lbl_801D37A8 = .sdata:0x801D37A8; // type:object size:0x8 jumpMot = .sdata:0x801D37B0; // type:object size:0x2 scope:local data:2byte scareMot = .sdata:0x801D37B2; // type:object size:0x2 scope:local data:2byte @@ -5023,9 +5025,9 @@ houseShowMot = .sdata:0x801D37F0; // type:object size:0x2 scope:local data:2byte houseHideMot = .sdata:0x801D37F2; // type:object size:0x2 scope:local data:2byte ballMdl = .sdata:0x801D37F4; // type:object size:0x2 scope:local data:2byte booMdl = .sdata:0x801D37F6; // type:object size:0x2 scope:local data:2byte -lbl_801D37F8 = .sdata:0x801D37F8; // type:object size:0x2 scope:local data:2byte +smokeMdl = .sdata:0x801D37F8; // type:object size:0x2 scope:local data:2byte hostMdl = .sdata:0x801D37FA; // type:object size:0x2 scope:local data:2byte -houseMot = .sdata:0x801D37FC; // type:object size:0x6 scope:local data:2byte +hostMot = .sdata:0x801D37FC; // type:object size:0x6 scope:local data:2byte lbl_801D3802 = .sdata:0x801D3802; // type:object size:0x7 data:string lbl_801D3809 = .sdata:0x801D3809; // type:object size:0x7 data:string lbl_801D3810 = .sdata:0x801D3810; // type:object size:0x7 data:string @@ -5299,8 +5301,8 @@ omovlevtno = .sbss:0x801D3CD4; // type:object size:0x4 data:4byte omovlhisidx = .sbss:0x801D3CD8; // type:object size:0x4 data:4byte omcurdll = .sbss:0x801D3CDC; // type:object size:0x4 data:4byte omcurovl = .sbss:0x801D3CE0; // type:object size:0x4 data:4byte -omnextovl = .sbss:0x801D3CE4; // type:object size:0x4 data:4byte -omwatchproc = .sbss:0x801D3CE8; // type:object size:0x4 data:4byte +omnextovl = .sbss:0x801D3CE4; // type:object size:0x4 scope:local data:4byte +omwatchproc = .sbss:0x801D3CE8; // type:object size:0x4 scope:local data:4byte omDBGSysKeyObj = .sbss:0x801D3CEC; // type:object size:0x4 data:4byte y_start = .sbss:0x801D3CF0; // type:object size:0x4 scope:local data:4byte x_start = .sbss:0x801D3CF4; // type:object size:0x4 scope:local data:4byte diff --git a/config/GMPP01_00/build.sha1 b/config/GMPP01_00/build.sha1 new file mode 100644 index 00000000..3cccde01 --- /dev/null +++ b/config/GMPP01_00/build.sha1 @@ -0,0 +1,100 @@ +65ef91650e9201047f50a3c39c7693a21fff2b29 build/GMPP01_00/main.dol +7101a759bcd45edee5bbc00a36d347c1f787c2a1 build/GMPP01_00/_minigameDll/_minigameDll.rel +b60fe8dd6faa20663224d64651b80c25b9b202ef build/GMPP01_00/bootDll/bootDll.rel +eef3ac50923ab2f20d588ef10ae15f3bc739f2b8 build/GMPP01_00/instDll/instDll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_00/m302Dll/m302Dll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_00/m303Dll/m303Dll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_00/m330Dll/m330Dll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_00/m333Dll/m333Dll.rel +cd3532af828e8217924296c4cadbd31ddd915a05 build/GMPP01_00/m402Dll/m402Dll.rel +b2e3cdd9167c579e02c6ecc5643b6aadcc5b6a99 build/GMPP01_00/m403Dll/m403Dll.rel +56c825a1e0bbe33e3a0e1e70396c21af9b575243 build/GMPP01_00/m404Dll/m404Dll.rel +cc76ded0a41aea632fd9b3c5e37fe6d847107d91 build/GMPP01_00/m405Dll/m405Dll.rel +5c2aee9c8f10dc763c9ff763874f3a4b58880f02 build/GMPP01_00/m406Dll/m406Dll.rel +7133701b7c28a66f9d24ab64081e472d458dad51 build/GMPP01_00/m407dll/m407dll.rel +6f2552516b8e151ccbed99ee6730ca2cb2e0fd49 build/GMPP01_00/m408Dll/m408Dll.rel +71a91946651b40cc217b08d293f23fbf01c7407a build/GMPP01_00/m409Dll/m409Dll.rel +e938c2f354224a6a5a7b015f9abae596298788ee build/GMPP01_00/m410Dll/m410Dll.rel +e29bae44753c7ce8e5213881b10d6b27c02c4f7a build/GMPP01_00/m411Dll/m411Dll.rel +23da1cff677f992bb76dcbf4a9f9061542b4be7f build/GMPP01_00/m412Dll/m412Dll.rel +6ed381e5b4d75eeab2c3ded39473a482f61ee32d build/GMPP01_00/m413Dll/m413Dll.rel +902f32cc75ac0030c7c531dbeefda055bc8d7f27 build/GMPP01_00/m414Dll/m414Dll.rel +7063ae505540bafebf802128d8d2f394b7f6f921 build/GMPP01_00/m415Dll/m415Dll.rel +2979d5f934b9099116fbd943a91d6a3bb56e6ec0 build/GMPP01_00/m416Dll/m416Dll.rel +b20482a2af7c839456fe7580dcbd92ca9984ec71 build/GMPP01_00/m417Dll/m417Dll.rel +762f56820668c74cdcde436a08419bdb59a35a89 build/GMPP01_00/m418Dll/m418Dll.rel +5fba3dfcfca6ef78eb46833f665019bca641063e build/GMPP01_00/m419Dll/m419Dll.rel +bb514277a33821093fd2acfae2cb86531b317d17 build/GMPP01_00/m420dll/m420dll.rel +216ba8bbc8905f33370ae651d478f6bd56c17b27 build/GMPP01_00/m421Dll/m421Dll.rel +6c152ddb5f518c9c6444030dfc30ab53ef931b40 build/GMPP01_00/m422Dll/m422Dll.rel +db80fcb993ce09d808de29d2488f2b1ab2afc8cd build/GMPP01_00/m423Dll/m423Dll.rel +827da0897edcc2706a3623722430d4e70512c653 build/GMPP01_00/m424Dll/m424Dll.rel +26eb36bfc9106af2462a0d7e013f5321dbaecdd1 build/GMPP01_00/m425Dll/m425Dll.rel +04b649fb6eb248e506cf15fdcfbed3e915a80682 build/GMPP01_00/m426Dll/m426Dll.rel +810a1c91f794897862ac9b6a4e076a70c6b0238a build/GMPP01_00/m427Dll/m427Dll.rel +888af662a228e349ea6a0c60e19de74f8fa47914 build/GMPP01_00/m428Dll/m428Dll.rel +88b2330f175d1346a71f67491dcf9eff62d2d2d1 build/GMPP01_00/m429Dll/m429Dll.rel +e611007dd71ab515de65e9a6879f0508193fd58a build/GMPP01_00/m430Dll/m430Dll.rel +6a2b097a6d57c36bff5aaeb8c9ea2f01df7407ad build/GMPP01_00/m431Dll/m431Dll.rel +17b6a0c65c7cb759fc460fe7b8eed3dd7dc7184d build/GMPP01_00/m432Dll/m432Dll.rel +ce90f494ced6f2611603c247bdc733a458b5a523 build/GMPP01_00/m433Dll/m433Dll.rel +100fe402942821dc8e5753f3cada5e2bf5ab6214 build/GMPP01_00/m434Dll/m434Dll.rel +4936db381fa068395cff28c0d635c5ec7cc7218f build/GMPP01_00/m435Dll/m435Dll.rel +ba1c3bdc5f250996a5c873791347ce4c20b38692 build/GMPP01_00/m436Dll/m436Dll.rel +7273786a2995182baf9a85148c5974097999fe8e build/GMPP01_00/m437Dll/m437Dll.rel +d7c4bdf1729695a7348f8a36de2911db7aa24abb build/GMPP01_00/m438Dll/m438Dll.rel +4d5a719b49edb55e0b0b52c0d81b31c14d197d20 build/GMPP01_00/m439Dll/m439Dll.rel +469b18886221ae8a5b90f3e85b01ce6a01befb0b build/GMPP01_00/m440Dll/m440Dll.rel +7d6e99b67d2dde25d3fc75ac314c2a69be34137e build/GMPP01_00/m441Dll/m441Dll.rel +63af3c4f33fd362f17aa1be9f764d0549f92598d build/GMPP01_00/m442Dll/m442Dll.rel +5118a0bab1877455eae9002c3cc561d3360fd792 build/GMPP01_00/m443Dll/m443Dll.rel +4939f755142efe362f67898358fff1cdeffe508e build/GMPP01_00/m444dll/m444dll.rel +02f7c52aa6fd4b21a5700615aeaee9ef59e6b9f3 build/GMPP01_00/m445Dll/m445Dll.rel +2ab71adae47a3d9632dcf45cf18ca0b1fc33d157 build/GMPP01_00/m446dll/m446dll.rel +0640357fe4d0148dac4bc382c8231410e24fe951 build/GMPP01_00/m447dll/m447dll.rel +78bcdd8d1fdb810784fca4d5bbec92c63e2e6b54 build/GMPP01_00/m448Dll/m448Dll.rel +fcf6e4b0089e19ffddf01a119c8c515a4acc943a build/GMPP01_00/m449Dll/m449Dll.rel +ebcf95781e8078813ed041dd0a869ae2e413679b build/GMPP01_00/m450Dll/m450Dll.rel +aa16b743f7b64f22abfd8bb93646883cc73bd7e0 build/GMPP01_00/m451Dll/m451Dll.rel +f6fd7a6537e56c535d02ac4a48c9008605f93ea1 build/GMPP01_00/m453Dll/m453Dll.rel +cc3431f55b523d474a952f3a0e927fac6b5402ab build/GMPP01_00/m455Dll/m455Dll.rel +09797251306bbd0f6fd712d6f832128ca8c58690 build/GMPP01_00/m456Dll/m456Dll.rel +8a992a09077fd5e1f6ca3e717547792938a519c1 build/GMPP01_00/m457Dll/m457Dll.rel +5dea2127d51d621b30d78b22cfa32327797e6e0b build/GMPP01_00/m458Dll/m458Dll.rel +e96dafe5949909cb7cc839174aa38e8e6661a63b build/GMPP01_00/m459dll/m459dll.rel +ea1e0bda22675840d39c74117e2a11ffe45f8dd4 build/GMPP01_00/m460Dll/m460Dll.rel +8d515f3b92a786df53bb88291b5cfc4bc59a3c8d build/GMPP01_00/m461Dll/m461Dll.rel +f02ba47e4459d9b0de174c5619a4efe61942962d build/GMPP01_00/m462Dll/m462Dll.rel +352ad6d84ded6cf28b9ff2f9e5da8812ac9164db build/GMPP01_00/m463Dll/m463Dll.rel +4705ada9d259a81ab2815fee3516f6217d848dd9 build/GMPP01_00/mentDll/mentDll.rel +b966ce340e98dbda624ff80f96c78d51ff1ed687 build/GMPP01_00/messDll/messDll.rel +7a3fed787df2d1bc942efd56a160eaf59605b94f build/GMPP01_00/mgmodedll/mgmodedll.rel +1e5bf1777b1470fcead2174c25b291b8f0513284 build/GMPP01_00/modeltestDll/modeltestDll.rel +d958038528a774801a4f5a0aee9e7aaae4bd94ce build/GMPP01_00/modeseldll/modeseldll.rel +a3e1e06937703f98191f4080e092bf06c4f449b3 build/GMPP01_00/mpexDll/mpexDll.rel +86ff8288bb92472376d02cade1d3c9603b613c57 build/GMPP01_00/msetupDll/msetupDll.rel +ea9878a7af1787c0789d29bf812e1d9972c2ff20 build/GMPP01_00/mstory2Dll/mstory2Dll.rel +58decb3dba8e167bd2c238a55339888469a07381 build/GMPP01_00/mstory3Dll/mstory3Dll.rel +a8eee3981f4965412490cb9eef76aaa798957db1 build/GMPP01_00/mstory4Dll/mstory4Dll.rel +0fd54549734531303fb5471690cee96709833114 build/GMPP01_00/mstoryDll/mstoryDll.rel +45619d95e61d9296f25d94d7c6756f397fb89bee build/GMPP01_00/nisDll/nisDll.rel +1304967e3aa58a46492d4c736a7c86cf8a3b2e11 build/GMPP01_00/option/option.rel +7845814c6be2546930cfd8e0b9dec263fc1a959f build/GMPP01_00/present/present.rel +d9bd10433d1e2a6c0c4d9f942b766d743f99deec build/GMPP01_00/resultDll/resultDll.rel +c13262cf14f00e1d70bd65d20bbf988479816ca7 build/GMPP01_00/safDll/safDll.rel +51f53e1398c86c5a22251a457e3af86339b4b11f build/GMPP01_00/selmenuDll/selmenuDll.rel +af869e37d004f687fab2ff6897d75d6c15e31a00 build/GMPP01_00/staffDll/staffDll.rel +21de7aff7d39f8e130b4ef7602b8de85e51cf3e5 build/GMPP01_00/subchrselDll/subchrselDll.rel +70ee81af67a4f55de2fef65823583d22312f09be build/GMPP01_00/w01Dll/w01Dll.rel +33b5663ece821df4dbc50870e00de0e22e099efd build/GMPP01_00/w02Dll/w02Dll.rel +97aa16f847cdf2d6fd014f06df14c55f5f02024d build/GMPP01_00/w03Dll/w03Dll.rel +135cf03d803b9d8d39721b2a96769909aa719ee6 build/GMPP01_00/w04Dll/w04Dll.rel +e6d07092b69cc3b0514d9c12e3f5949edeb25f5f build/GMPP01_00/w05Dll/w05Dll.rel +0d5445461f58fac4c043c75bed7237b7f4045188 build/GMPP01_00/w06Dll/w06Dll.rel +5678fedd4a0490aeb9703328e959fdedea7da117 build/GMPP01_00/w10Dll/w10Dll.rel +58ae9e311cc8bd0291921480f423e2ad4774e1a2 build/GMPP01_00/w20Dll/w20Dll.rel +8ea052be8c7585a1ab152682a0698b631c5b566f build/GMPP01_00/w21Dll/w21Dll.rel +8987f11fafd11f69161ca275967afe9c8b4e7b20 build/GMPP01_00/ztardll/ztardll.rel +d59c60b0149a85782fa98d1a4da6cc768a09b473 build/GMPP01_00/E3setupDLL/E3setupDLL.rel +eba8a17e8b263bc9cd601b1aea7e698a8785416a build/GMPP01_00/m300Dll/m300Dll.rel +c457a4a45ebae776331484ba94f5798041a77a57 build/GMPP01_00/m401Dll/m401Dll.rel diff --git a/config/GMPP01_00/config.yml b/config/GMPP01_00/config.yml new file mode 100644 index 00000000..352ced1a --- /dev/null +++ b/config/GMPP01_00/config.yml @@ -0,0 +1,657 @@ +object_base: orig/GMPP01_00 +object: sys/main.dol +hash: 65ef91650e9201047f50a3c39c7693a21fff2b29 +symbols: config/GMPP01_00/symbols.txt +splits: config/GMPP01_00/splits.txt +quick_analysis: false # Faster re-runs after initial analysis +mw_comment_version: 10 # GC 2.6 linker +force_active: [__register_global_object, lbl_801D40D0] + +detect_objects: true +detect_strings: true +fill_gaps: true +modules: +- object: files/dll/_minigameDll.rel + hash: 7101a759bcd45edee5bbc00a36d347c1f787c2a1 + symbols: config/GMPP01_00/rels/_minigameDll/symbols.txt + splits: config/GMPP01_00/rels/_minigameDll/splits.txt + links: [] +- object: files/dll/bootDll.rel + hash: b60fe8dd6faa20663224d64651b80c25b9b202ef + symbols: config/GMPP01_00/rels/bootDll/symbols.txt + splits: config/GMPP01_00/rels/bootDll/splits.txt + links: [] +- object: files/dll/instDll.rel + hash: eef3ac50923ab2f20d588ef10ae15f3bc739f2b8 + symbols: config/GMPP01_00/rels/instDll/symbols.txt + splits: config/GMPP01_00/rels/instDll/splits.txt + links: [] +- object: files/dll/m302Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m302Dll/symbols.txt + splits: config/GMPP01_00/rels/m302Dll/splits.txt + links: [] +- object: files/dll/m303Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m303Dll/symbols.txt + splits: config/GMPP01_00/rels/m303Dll/splits.txt + links: [] +- object: files/dll/m330Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m330Dll/symbols.txt + splits: config/GMPP01_00/rels/m330Dll/splits.txt + links: [] +- object: files/dll/m333Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m333Dll/symbols.txt + splits: config/GMPP01_00/rels/m333Dll/splits.txt + links: [] +- object: files/dll/m402Dll.rel + hash: cd3532af828e8217924296c4cadbd31ddd915a05 + symbols: config/GMPP01_00/rels/m402Dll/symbols.txt + splits: config/GMPP01_00/rels/m402Dll/splits.txt + links: [] +- object: files/dll/m403Dll.rel + hash: b2e3cdd9167c579e02c6ecc5643b6aadcc5b6a99 + symbols: config/GMPP01_00/rels/m403Dll/symbols.txt + splits: config/GMPP01_00/rels/m403Dll/splits.txt + links: [] +- object: files/dll/m404Dll.rel + hash: 56c825a1e0bbe33e3a0e1e70396c21af9b575243 + symbols: config/GMPP01_00/rels/m404Dll/symbols.txt + splits: config/GMPP01_00/rels/m404Dll/splits.txt + links: [] +- object: files/dll/m405Dll.rel + hash: cc76ded0a41aea632fd9b3c5e37fe6d847107d91 + symbols: config/GMPP01_00/rels/m405Dll/symbols.txt + splits: config/GMPP01_00/rels/m405Dll/splits.txt + links: [] +- object: files/dll/m406Dll.rel + hash: 5c2aee9c8f10dc763c9ff763874f3a4b58880f02 + symbols: config/GMPP01_00/rels/m406Dll/symbols.txt + splits: config/GMPP01_00/rels/m406Dll/splits.txt + links: [] +- object: files/dll/m407dll.rel + hash: 7133701b7c28a66f9d24ab64081e472d458dad51 + symbols: config/GMPP01_00/rels/m407dll/symbols.txt + splits: config/GMPP01_00/rels/m407dll/splits.txt + links: [] +- object: files/dll/m408Dll.rel + hash: 6f2552516b8e151ccbed99ee6730ca2cb2e0fd49 + symbols: config/GMPP01_00/rels/m408Dll/symbols.txt + splits: config/GMPP01_00/rels/m408Dll/splits.txt + links: [] +- object: files/dll/m409Dll.rel + hash: 71a91946651b40cc217b08d293f23fbf01c7407a + symbols: config/GMPP01_00/rels/m409Dll/symbols.txt + splits: config/GMPP01_00/rels/m409Dll/splits.txt + links: [] +- object: files/dll/m410Dll.rel + hash: e938c2f354224a6a5a7b015f9abae596298788ee + symbols: config/GMPP01_00/rels/m410Dll/symbols.txt + splits: config/GMPP01_00/rels/m410Dll/splits.txt + links: [] +- object: files/dll/m411Dll.rel + hash: e29bae44753c7ce8e5213881b10d6b27c02c4f7a + symbols: config/GMPP01_00/rels/m411Dll/symbols.txt + splits: config/GMPP01_00/rels/m411Dll/splits.txt + links: [] +- object: files/dll/m412Dll.rel + hash: 23da1cff677f992bb76dcbf4a9f9061542b4be7f + symbols: config/GMPP01_00/rels/m412Dll/symbols.txt + splits: config/GMPP01_00/rels/m412Dll/splits.txt + links: [] +- object: files/dll/m413Dll.rel + hash: 6ed381e5b4d75eeab2c3ded39473a482f61ee32d + symbols: config/GMPP01_00/rels/m413Dll/symbols.txt + splits: config/GMPP01_00/rels/m413Dll/splits.txt + links: [] +- object: files/dll/m414Dll.rel + hash: 902f32cc75ac0030c7c531dbeefda055bc8d7f27 + symbols: config/GMPP01_00/rels/m414Dll/symbols.txt + splits: config/GMPP01_00/rels/m414Dll/splits.txt + links: [] +- object: files/dll/m415Dll.rel + hash: 7063ae505540bafebf802128d8d2f394b7f6f921 + symbols: config/GMPP01_00/rels/m415Dll/symbols.txt + splits: config/GMPP01_00/rels/m415Dll/splits.txt + links: [] +- object: files/dll/m416Dll.rel + hash: 2979d5f934b9099116fbd943a91d6a3bb56e6ec0 + symbols: config/GMPP01_00/rels/m416Dll/symbols.txt + splits: config/GMPP01_00/rels/m416Dll/splits.txt + links: [] +- object: files/dll/m417Dll.rel + hash: b20482a2af7c839456fe7580dcbd92ca9984ec71 + symbols: config/GMPP01_00/rels/m417Dll/symbols.txt + splits: config/GMPP01_00/rels/m417Dll/splits.txt + links: [] +- object: files/dll/m418Dll.rel + hash: 762f56820668c74cdcde436a08419bdb59a35a89 + symbols: config/GMPP01_00/rels/m418Dll/symbols.txt + splits: config/GMPP01_00/rels/m418Dll/splits.txt + links: [] +- object: files/dll/m419Dll.rel + hash: 5fba3dfcfca6ef78eb46833f665019bca641063e + symbols: config/GMPP01_00/rels/m419Dll/symbols.txt + splits: config/GMPP01_00/rels/m419Dll/splits.txt + links: [] +- object: files/dll/m420dll.rel + hash: bb514277a33821093fd2acfae2cb86531b317d17 + symbols: config/GMPP01_00/rels/m420dll/symbols.txt + splits: config/GMPP01_00/rels/m420dll/splits.txt + links: [] +- object: files/dll/m421Dll.rel + hash: 216ba8bbc8905f33370ae651d478f6bd56c17b27 + symbols: config/GMPP01_00/rels/m421Dll/symbols.txt + splits: config/GMPP01_00/rels/m421Dll/splits.txt + links: [] +- object: files/dll/m422Dll.rel + hash: 6c152ddb5f518c9c6444030dfc30ab53ef931b40 + symbols: config/GMPP01_00/rels/m422Dll/symbols.txt + splits: config/GMPP01_00/rels/m422Dll/splits.txt + links: [] +- object: files/dll/m423Dll.rel + hash: db80fcb993ce09d808de29d2488f2b1ab2afc8cd + symbols: config/GMPP01_00/rels/m423Dll/symbols.txt + splits: config/GMPP01_00/rels/m423Dll/splits.txt + links: [] +- object: files/dll/m424Dll.rel + hash: 827da0897edcc2706a3623722430d4e70512c653 + symbols: config/GMPP01_00/rels/m424Dll/symbols.txt + splits: config/GMPP01_00/rels/m424Dll/splits.txt + links: [] +- object: files/dll/m425Dll.rel + hash: 26eb36bfc9106af2462a0d7e013f5321dbaecdd1 + symbols: config/GMPP01_00/rels/m425Dll/symbols.txt + splits: config/GMPP01_00/rels/m425Dll/splits.txt + links: [] +- object: files/dll/m426Dll.rel + hash: 04b649fb6eb248e506cf15fdcfbed3e915a80682 + symbols: config/GMPP01_00/rels/m426Dll/symbols.txt + splits: config/GMPP01_00/rels/m426Dll/splits.txt + links: [] +- object: files/dll/m427Dll.rel + hash: 810a1c91f794897862ac9b6a4e076a70c6b0238a + symbols: config/GMPP01_00/rels/m427Dll/symbols.txt + splits: config/GMPP01_00/rels/m427Dll/splits.txt + links: [] +- object: files/dll/m428Dll.rel + hash: 888af662a228e349ea6a0c60e19de74f8fa47914 + symbols: config/GMPP01_00/rels/m428Dll/symbols.txt + splits: config/GMPP01_00/rels/m428Dll/splits.txt + links: [] +- object: files/dll/m429Dll.rel + hash: 88b2330f175d1346a71f67491dcf9eff62d2d2d1 + symbols: config/GMPP01_00/rels/m429Dll/symbols.txt + splits: config/GMPP01_00/rels/m429Dll/splits.txt + links: [] +- object: files/dll/m430Dll.rel + hash: e611007dd71ab515de65e9a6879f0508193fd58a + symbols: config/GMPP01_00/rels/m430Dll/symbols.txt + splits: config/GMPP01_00/rels/m430Dll/splits.txt + links: [] +- object: files/dll/m431Dll.rel + hash: 6a2b097a6d57c36bff5aaeb8c9ea2f01df7407ad + symbols: config/GMPP01_00/rels/m431Dll/symbols.txt + splits: config/GMPP01_00/rels/m431Dll/splits.txt + links: [] +- object: files/dll/m432Dll.rel + hash: 17b6a0c65c7cb759fc460fe7b8eed3dd7dc7184d + symbols: config/GMPP01_00/rels/m432Dll/symbols.txt + splits: config/GMPP01_00/rels/m432Dll/splits.txt + links: [] +- object: files/dll/m433Dll.rel + hash: ce90f494ced6f2611603c247bdc733a458b5a523 + symbols: config/GMPP01_00/rels/m433Dll/symbols.txt + splits: config/GMPP01_00/rels/m433Dll/splits.txt + links: [] +- object: files/dll/m434Dll.rel + hash: 100fe402942821dc8e5753f3cada5e2bf5ab6214 + symbols: config/GMPP01_00/rels/m434Dll/symbols.txt + splits: config/GMPP01_00/rels/m434Dll/splits.txt + links: [] +- object: files/dll/m435Dll.rel + hash: 4936db381fa068395cff28c0d635c5ec7cc7218f + symbols: config/GMPP01_00/rels/m435Dll/symbols.txt + splits: config/GMPP01_00/rels/m435Dll/splits.txt + links: [] +- object: files/dll/m436Dll.rel + hash: ba1c3bdc5f250996a5c873791347ce4c20b38692 + symbols: config/GMPP01_00/rels/m436Dll/symbols.txt + splits: config/GMPP01_00/rels/m436Dll/splits.txt + links: [] +- object: files/dll/m437Dll.rel + hash: 7273786a2995182baf9a85148c5974097999fe8e + symbols: config/GMPP01_00/rels/m437Dll/symbols.txt + splits: config/GMPP01_00/rels/m437Dll/splits.txt + links: [] +- object: files/dll/m438Dll.rel + hash: d7c4bdf1729695a7348f8a36de2911db7aa24abb + symbols: config/GMPP01_00/rels/m438Dll/symbols.txt + splits: config/GMPP01_00/rels/m438Dll/splits.txt + links: [] +- object: files/dll/m439Dll.rel + hash: 4d5a719b49edb55e0b0b52c0d81b31c14d197d20 + symbols: config/GMPP01_00/rels/m439Dll/symbols.txt + splits: config/GMPP01_00/rels/m439Dll/splits.txt + links: [] +- object: files/dll/m440Dll.rel + hash: 469b18886221ae8a5b90f3e85b01ce6a01befb0b + symbols: config/GMPP01_00/rels/m440Dll/symbols.txt + splits: config/GMPP01_00/rels/m440Dll/splits.txt + links: [] +- object: files/dll/m441Dll.rel + hash: 7d6e99b67d2dde25d3fc75ac314c2a69be34137e + symbols: config/GMPP01_00/rels/m441Dll/symbols.txt + splits: config/GMPP01_00/rels/m441Dll/splits.txt + links: [] +- object: files/dll/m442Dll.rel + hash: 63af3c4f33fd362f17aa1be9f764d0549f92598d + symbols: config/GMPP01_00/rels/m442Dll/symbols.txt + splits: config/GMPP01_00/rels/m442Dll/splits.txt + links: [] +- object: files/dll/m443Dll.rel + hash: 5118a0bab1877455eae9002c3cc561d3360fd792 + symbols: config/GMPP01_00/rels/m443Dll/symbols.txt + splits: config/GMPP01_00/rels/m443Dll/splits.txt + links: [] +- object: files/dll/m444dll.rel + hash: 4939f755142efe362f67898358fff1cdeffe508e + symbols: config/GMPP01_00/rels/m444dll/symbols.txt + splits: config/GMPP01_00/rels/m444dll/splits.txt + links: [] +- object: files/dll/m445Dll.rel + hash: 02f7c52aa6fd4b21a5700615aeaee9ef59e6b9f3 + symbols: config/GMPP01_00/rels/m445Dll/symbols.txt + splits: config/GMPP01_00/rels/m445Dll/splits.txt + links: [] +- object: files/dll/m446dll.rel + hash: 2ab71adae47a3d9632dcf45cf18ca0b1fc33d157 + symbols: config/GMPP01_00/rels/m446dll/symbols.txt + splits: config/GMPP01_00/rels/m446dll/splits.txt + links: [] +- object: files/dll/m447dll.rel + hash: 0640357fe4d0148dac4bc382c8231410e24fe951 + symbols: config/GMPP01_00/rels/m447dll/symbols.txt + splits: config/GMPP01_00/rels/m447dll/splits.txt + links: [] +- object: files/dll/m448Dll.rel + hash: 78bcdd8d1fdb810784fca4d5bbec92c63e2e6b54 + symbols: config/GMPP01_00/rels/m448Dll/symbols.txt + splits: config/GMPP01_00/rels/m448Dll/splits.txt + links: [] +- object: files/dll/m449Dll.rel + hash: fcf6e4b0089e19ffddf01a119c8c515a4acc943a + symbols: config/GMPP01_00/rels/m449Dll/symbols.txt + splits: config/GMPP01_00/rels/m449Dll/splits.txt + links: [] +- object: files/dll/m450Dll.rel + hash: ebcf95781e8078813ed041dd0a869ae2e413679b + symbols: config/GMPP01_00/rels/m450Dll/symbols.txt + splits: config/GMPP01_00/rels/m450Dll/splits.txt + links: [] +- object: files/dll/m451Dll.rel + hash: aa16b743f7b64f22abfd8bb93646883cc73bd7e0 + symbols: config/GMPP01_00/rels/m451Dll/symbols.txt + splits: config/GMPP01_00/rels/m451Dll/splits.txt + links: [] +- object: files/dll/m453Dll.rel + hash: f6fd7a6537e56c535d02ac4a48c9008605f93ea1 + symbols: config/GMPP01_00/rels/m453Dll/symbols.txt + splits: config/GMPP01_00/rels/m453Dll/splits.txt + links: [] +- object: files/dll/m455Dll.rel + hash: cc3431f55b523d474a952f3a0e927fac6b5402ab + symbols: config/GMPP01_00/rels/m455Dll/symbols.txt + splits: config/GMPP01_00/rels/m455Dll/splits.txt + links: [] +- object: files/dll/m456Dll.rel + hash: 09797251306bbd0f6fd712d6f832128ca8c58690 + symbols: config/GMPP01_00/rels/m456Dll/symbols.txt + splits: config/GMPP01_00/rels/m456Dll/splits.txt + links: [] +- object: files/dll/m457Dll.rel + hash: 8a992a09077fd5e1f6ca3e717547792938a519c1 + symbols: config/GMPP01_00/rels/m457Dll/symbols.txt + splits: config/GMPP01_00/rels/m457Dll/splits.txt + links: [] +- object: files/dll/m458Dll.rel + hash: 5dea2127d51d621b30d78b22cfa32327797e6e0b + symbols: config/GMPP01_00/rels/m458Dll/symbols.txt + splits: config/GMPP01_00/rels/m458Dll/splits.txt + links: [] +- object: files/dll/m459dll.rel + hash: e96dafe5949909cb7cc839174aa38e8e6661a63b + symbols: config/GMPP01_00/rels/m459dll/symbols.txt + splits: config/GMPP01_00/rels/m459dll/splits.txt + links: [] +- object: files/dll/m460Dll.rel + hash: ea1e0bda22675840d39c74117e2a11ffe45f8dd4 + symbols: config/GMPP01_00/rels/m460Dll/symbols.txt + splits: config/GMPP01_00/rels/m460Dll/splits.txt + links: [] +- object: files/dll/m461Dll.rel + hash: 8d515f3b92a786df53bb88291b5cfc4bc59a3c8d + symbols: config/GMPP01_00/rels/m461Dll/symbols.txt + splits: config/GMPP01_00/rels/m461Dll/splits.txt + links: [] +- object: files/dll/m462Dll.rel + hash: f02ba47e4459d9b0de174c5619a4efe61942962d + symbols: config/GMPP01_00/rels/m462Dll/symbols.txt + splits: config/GMPP01_00/rels/m462Dll/splits.txt + links: [] +- object: files/dll/m463Dll.rel + hash: 352ad6d84ded6cf28b9ff2f9e5da8812ac9164db + symbols: config/GMPP01_00/rels/m463Dll/symbols.txt + splits: config/GMPP01_00/rels/m463Dll/splits.txt + links: [] +- object: files/dll/mentDll.rel + hash: 4705ada9d259a81ab2815fee3516f6217d848dd9 + symbols: config/GMPP01_00/rels/mentDll/symbols.txt + splits: config/GMPP01_00/rels/mentDll/splits.txt + links: [] +- object: files/dll/messDll.rel + hash: b966ce340e98dbda624ff80f96c78d51ff1ed687 + symbols: config/GMPP01_00/rels/messDll/symbols.txt + splits: config/GMPP01_00/rels/messDll/splits.txt + links: [] +- object: files/dll/mgmodedll.rel + hash: 7a3fed787df2d1bc942efd56a160eaf59605b94f + symbols: config/GMPP01_00/rels/mgmodedll/symbols.txt + splits: config/GMPP01_00/rels/mgmodedll/splits.txt + links: [] +- object: files/dll/modeltestDll.rel + hash: 1e5bf1777b1470fcead2174c25b291b8f0513284 + symbols: config/GMPP01_00/rels/modeltestDll/symbols.txt + splits: config/GMPP01_00/rels/modeltestDll/splits.txt + links: [] +- object: files/dll/modeseldll.rel + hash: d958038528a774801a4f5a0aee9e7aaae4bd94ce + symbols: config/GMPP01_00/rels/modeseldll/symbols.txt + splits: config/GMPP01_00/rels/modeseldll/splits.txt + links: [] +- object: files/dll/mpexDll.rel + hash: a3e1e06937703f98191f4080e092bf06c4f449b3 + symbols: config/GMPP01_00/rels/mpexDll/symbols.txt + splits: config/GMPP01_00/rels/mpexDll/splits.txt + links: [] +- object: files/dll/msetupDll.rel + hash: 86ff8288bb92472376d02cade1d3c9603b613c57 + symbols: config/GMPP01_00/rels/msetupDll/symbols.txt + splits: config/GMPP01_00/rels/msetupDll/splits.txt + links: [] +- object: files/dll/mstory2Dll.rel + hash: ea9878a7af1787c0789d29bf812e1d9972c2ff20 + symbols: config/GMPP01_00/rels/mstory2Dll/symbols.txt + splits: config/GMPP01_00/rels/mstory2Dll/splits.txt + links: [] +- object: files/dll/mstory3Dll.rel + hash: 58decb3dba8e167bd2c238a55339888469a07381 + symbols: config/GMPP01_00/rels/mstory3Dll/symbols.txt + splits: config/GMPP01_00/rels/mstory3Dll/splits.txt + links: [] +- object: files/dll/mstory4Dll.rel + hash: a8eee3981f4965412490cb9eef76aaa798957db1 + symbols: config/GMPP01_00/rels/mstory4Dll/symbols.txt + splits: config/GMPP01_00/rels/mstory4Dll/splits.txt + links: [] +- object: files/dll/mstoryDll.rel + hash: 0fd54549734531303fb5471690cee96709833114 + symbols: config/GMPP01_00/rels/mstoryDll/symbols.txt + splits: config/GMPP01_00/rels/mstoryDll/splits.txt + links: [] +- object: files/dll/nisDll.rel + hash: 45619d95e61d9296f25d94d7c6756f397fb89bee + symbols: config/GMPP01_00/rels/nisDll/symbols.txt + splits: config/GMPP01_00/rels/nisDll/splits.txt + links: [] +- object: files/dll/option.rel + hash: 1304967e3aa58a46492d4c736a7c86cf8a3b2e11 + symbols: config/GMPP01_00/rels/option/symbols.txt + splits: config/GMPP01_00/rels/option/splits.txt + links: [] +- object: files/dll/present.rel + hash: 7845814c6be2546930cfd8e0b9dec263fc1a959f + symbols: config/GMPP01_00/rels/present/symbols.txt + splits: config/GMPP01_00/rels/present/splits.txt + links: [] +- object: files/dll/resultDll.rel + hash: d9bd10433d1e2a6c0c4d9f942b766d743f99deec + symbols: config/GMPP01_00/rels/resultDll/symbols.txt + splits: config/GMPP01_00/rels/resultDll/splits.txt + links: [] +- object: files/dll/safDll.rel + hash: c13262cf14f00e1d70bd65d20bbf988479816ca7 + symbols: config/GMPP01_00/rels/safDll/symbols.txt + splits: config/GMPP01_00/rels/safDll/splits.txt + links: [] +- object: files/dll/selmenuDll.rel + hash: 51f53e1398c86c5a22251a457e3af86339b4b11f + symbols: config/GMPP01_00/rels/selmenuDll/symbols.txt + splits: config/GMPP01_00/rels/selmenuDll/splits.txt + links: [] +- object: files/dll/staffDll.rel + hash: af869e37d004f687fab2ff6897d75d6c15e31a00 + symbols: config/GMPP01_00/rels/staffDll/symbols.txt + splits: config/GMPP01_00/rels/staffDll/splits.txt + links: [] +- object: files/dll/subchrselDll.rel + hash: 21de7aff7d39f8e130b4ef7602b8de85e51cf3e5 + symbols: config/GMPP01_00/rels/subchrselDll/symbols.txt + splits: config/GMPP01_00/rels/subchrselDll/splits.txt + links: [] +- object: files/dll/w01Dll.rel + hash: 70ee81af67a4f55de2fef65823583d22312f09be + symbols: config/GMPP01_00/rels/w01Dll/symbols.txt + splits: config/GMPP01_00/rels/w01Dll/splits.txt + links: [] +- object: files/dll/w02Dll.rel + hash: 33b5663ece821df4dbc50870e00de0e22e099efd + symbols: config/GMPP01_00/rels/w02Dll/symbols.txt + splits: config/GMPP01_00/rels/w02Dll/splits.txt + links: [] +- object: files/dll/w03Dll.rel + hash: 97aa16f847cdf2d6fd014f06df14c55f5f02024d + symbols: config/GMPP01_00/rels/w03Dll/symbols.txt + splits: config/GMPP01_00/rels/w03Dll/splits.txt + links: [] +- object: files/dll/w04Dll.rel + hash: 135cf03d803b9d8d39721b2a96769909aa719ee6 + symbols: config/GMPP01_00/rels/w04Dll/symbols.txt + splits: config/GMPP01_00/rels/w04Dll/splits.txt + links: [] +- object: files/dll/w05Dll.rel + hash: e6d07092b69cc3b0514d9c12e3f5949edeb25f5f + symbols: config/GMPP01_00/rels/w05Dll/symbols.txt + splits: config/GMPP01_00/rels/w05Dll/splits.txt + links: [] +- object: files/dll/w06Dll.rel + hash: 0d5445461f58fac4c043c75bed7237b7f4045188 + symbols: config/GMPP01_00/rels/w06Dll/symbols.txt + splits: config/GMPP01_00/rels/w06Dll/splits.txt + links: [] +- object: files/dll/w10Dll.rel + hash: 5678fedd4a0490aeb9703328e959fdedea7da117 + symbols: config/GMPP01_00/rels/w10Dll/symbols.txt + splits: config/GMPP01_00/rels/w10Dll/splits.txt + links: [] +- object: files/dll/w20Dll.rel + hash: 58ae9e311cc8bd0291921480f423e2ad4774e1a2 + symbols: config/GMPP01_00/rels/w20Dll/symbols.txt + splits: config/GMPP01_00/rels/w20Dll/splits.txt + links: [] +- object: files/dll/w21Dll.rel + hash: 8ea052be8c7585a1ab152682a0698b631c5b566f + symbols: config/GMPP01_00/rels/w21Dll/symbols.txt + splits: config/GMPP01_00/rels/w21Dll/splits.txt + links: [] +- object: files/dll/ztardll.rel + hash: 8987f11fafd11f69161ca275967afe9c8b4e7b20 + symbols: config/GMPP01_00/rels/ztardll/symbols.txt + splits: config/GMPP01_00/rels/ztardll/splits.txt + links: [] +- object: files/dll/E3setupDLL.rel + hash: d59c60b0149a85782fa98d1a4da6cc768a09b473 + symbols: config/GMPP01_00/rels/E3setupDLL/symbols.txt + splits: config/GMPP01_00/rels/E3setupDLL/splits.txt + links: [_minigameDll] +- object: files/dll/m300Dll.rel + hash: eba8a17e8b263bc9cd601b1aea7e698a8785416a + symbols: config/GMPP01_00/rels/m300Dll/symbols.txt + splits: config/GMPP01_00/rels/m300Dll/splits.txt + links: [_minigameDll] +- object: files/dll/m401Dll.rel + hash: c457a4a45ebae776331484ba94f5798041a77a57 + symbols: config/GMPP01_00/rels/m401Dll/symbols.txt + splits: config/GMPP01_00/rels/m401Dll/splits.txt + links: [_minigameDll] + +extract: +- symbol: ank8x8_4b + binary: ank8x8_4b.bin + header: ank8x8_4b.inc +- symbol: refMapData0 + binary: refMapData0.anm + header: refMapData0.inc +- symbol: refMapData1 + binary: refMapData1.anm + header: refMapData1.inc +- symbol: refMapData2 + binary: refMapData2.anm + header: refMapData2.inc +- symbol: refMapData3 + binary: refMapData3.anm + header: refMapData3.inc +- symbol: refMapData4 + binary: refMapData4.anm + header: refMapData4.inc +- symbol: toonMapData + binary: toonMapData.anm + header: toonMapData.inc +- symbol: toonMapData2 + binary: toonMapData2.anm + header: toonMapData2.inc +- symbol: hiliteData + binary: hiliteData.anm + header: hiliteData.inc +- symbol: hiliteData2 + binary: hiliteData2.anm + header: hiliteData2.inc +- symbol: hiliteData3 + binary: hiliteData3.anm + header: hiliteData3.inc +- symbol: hiliteData4 + binary: hiliteData4.anm + header: hiliteData4.inc +- symbol: Ascii8x8_1bpp + binary: Ascii8x8_1bpp.bin + header: Ascii8x8_1bpp.inc +- symbol: coveropen_en + binary: coveropen_en.bin + header: coveropen_en.inc +- symbol: fatalerror_en + binary: fatalerror_en.bin + header: fatalerror_en.inc +- symbol: loading_en + binary: loading_en.bin + header: loading_en.inc +- symbol: nodisc_en + binary: nodisc_en.bin + header: nodisc_en.inc +- symbol: retryerror_en + binary: retryerror_en.bin + header: retryerror_en.inc +- symbol: wrongdisc_en + binary: wrongdisc_en.bin + header: wrongdisc_en.inc +- symbol: coveropen_en + binary: coveropen_en.bin + header: coveropen_en.inc +- symbol: fatalerror_en + binary: fatalerror_en.bin + header: fatalerror_en.inc +- symbol: loading_en + binary: loading_en.bin + header: loading_en.inc +- symbol: nodisc_en + binary: nodisc_en.bin + header: nodisc_en.inc +- symbol: retryerror_en + binary: retryerror_en.bin + header: retryerror_en.inc +- symbol: wrongdisc_en + binary: wrongdisc_en.bin + header: wrongdisc_en.inc +- symbol: coveropen_fr + binary: coveropen_fr.bin + header: coveropen_fr.inc +- symbol: fatalerror_fr + binary: fatalerror_fr.bin + header: fatalerror_fr.inc +- symbol: loading_fr + binary: loading_fr.bin + header: loading_fr.inc +- symbol: nodisc_fr + binary: nodisc_fr.bin + header: nodisc_fr.inc +- symbol: retryerror_fr + binary: retryerror_fr.bin + header: retryerror_fr.inc +- symbol: wrongdisc_fr + binary: wrongdisc_fr.bin + header: wrongdisc_fr.inc +- symbol: coveropen_ge + binary: coveropen_ge.bin + header: coveropen_ge.inc +- symbol: fatalerror_ge + binary: fatalerror_ge.bin + header: fatalerror_ge.inc +- symbol: loading_ge + binary: loading_ge.bin + header: loading_ge.inc +- symbol: nodisc_ge + binary: nodisc_ge.bin + header: nodisc_ge.inc +- symbol: retryerror_ge + binary: retryerror_ge.bin + header: retryerror_ge.inc +- symbol: wrongdisc_ge + binary: wrongdisc_ge.bin + header: wrongdisc_ge.inc +- symbol: coveropen_it + binary: coveropen_it.bin + header: coveropen_it.inc +- symbol: fatalerror_it + binary: fatalerror_it.bin + header: fatalerror_it.inc +- symbol: loading_it + binary: loading_it.bin + header: loading_it.inc +- symbol: nodisc_it + binary: nodisc_it.bin + header: nodisc_it.inc +- symbol: retryerror_it + binary: retryerror_it.bin + header: retryerror_it.inc +- symbol: wrongdisc_it + binary: wrongdisc_it.bin + header: wrongdisc_it.inc +- symbol: coveropen_sp + binary: coveropen_sp.bin + header: coveropen_sp.inc +- symbol: fatalerror_sp + binary: fatalerror_sp.bin + header: fatalerror_sp.inc +- symbol: loading_sp + binary: loading_sp.bin + header: loading_sp.inc +- symbol: nodisc_sp + binary: nodisc_sp.bin + header: nodisc_sp.inc +- symbol: retryerror_sp + binary: retryerror_sp.bin + header: retryerror_sp.inc +- symbol: wrongdisc_sp + binary: wrongdisc_sp.bin + header: wrongdisc_sp.inc \ No newline at end of file diff --git a/config/GMPP01_00/rels/E3setupDLL/splits.txt b/config/GMPP01_00/rels/E3setupDLL/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/E3setupDLL/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/E3setupDLL/symbols.txt b/config/GMPP01_00/rels/E3setupDLL/symbols.txt new file mode 100644 index 00000000..382731fd --- /dev/null +++ b/config/GMPP01_00/rels/E3setupDLL/symbols.txt @@ -0,0 +1,192 @@ +fn_2_0 = .text:0x00000000; // type:function size:0x324 +fn_2_324 = .text:0x00000324; // type:function size:0x9C +fn_2_3C0 = .text:0x000003C0; // type:function size:0xA0 +fn_2_460 = .text:0x00000460; // type:function size:0x584 +fn_2_9E4 = .text:0x000009E4; // type:function size:0x528 +fn_2_F0C = .text:0x00000F0C; // type:function size:0x80 +fn_2_F8C = .text:0x00000F8C; // type:function size:0x1AC +fn_2_1138 = .text:0x00001138; // type:function size:0x14 +fn_2_114C = .text:0x0000114C; // type:function size:0x1F0 +_prolog = .text:0x0000133C; // type:function size:0x54 scope:global +_epilog = .text:0x00001390; // type:function size:0x4C scope:global +fn_2_13DC = .text:0x000013DC; // type:function size:0x108 +fn_2_14E4 = .text:0x000014E4; // type:function size:0x514 +fn_2_19F8 = .text:0x000019F8; // type:function size:0x1AC +fn_2_1BA4 = .text:0x00001BA4; // type:function size:0x7C +fn_2_1C20 = .text:0x00001C20; // type:function size:0x84 +fn_2_1CA4 = .text:0x00001CA4; // type:function size:0x90 +fn_2_1D34 = .text:0x00001D34; // type:function size:0x24 +fn_2_1D58 = .text:0x00001D58; // type:function size:0xFC +fn_2_1E54 = .text:0x00001E54; // type:function size:0x1C0 +fn_2_2014 = .text:0x00002014; // type:function size:0x78 +fn_2_208C = .text:0x0000208C; // type:function size:0x2C +fn_2_20B8 = .text:0x000020B8; // type:function size:0xA4 +fn_2_215C = .text:0x0000215C; // type:function size:0x400 +fn_2_255C = .text:0x0000255C; // type:function size:0x124 +fn_2_2680 = .text:0x00002680; // type:function size:0x74 +fn_2_26F4 = .text:0x000026F4; // type:function size:0x344 +fn_2_2A38 = .text:0x00002A38; // type:function size:0x59C +fn_2_2FD4 = .text:0x00002FD4; // type:function size:0x208 +fn_2_31DC = .text:0x000031DC; // type:function size:0x37C +fn_2_3558 = .text:0x00003558; // type:function size:0x3B4 +fn_2_390C = .text:0x0000390C; // type:function size:0xAC +fn_2_39B8 = .text:0x000039B8; // type:function size:0x2B8 +fn_2_3C70 = .text:0x00003C70; // type:function size:0x534 +fn_2_41A4 = .text:0x000041A4; // type:function size:0x2DC +fn_2_4480 = .text:0x00004480; // type:function size:0x520 +fn_2_49A0 = .text:0x000049A0; // type:function size:0x59C +fn_2_4F3C = .text:0x00004F3C; // type:function size:0x4E8 +fn_2_5424 = .text:0x00005424; // type:function size:0x100 +fn_2_5524 = .text:0x00005524; // type:function size:0x184 +fn_2_56A8 = .text:0x000056A8; // type:function size:0x7C +fn_2_5724 = .text:0x00005724; // type:function size:0x12C +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float +lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float +lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float +lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float +lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float +lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float +lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float +lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float +lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float +lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float +lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float +lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float +lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float +lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_2_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_2_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float +lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float +lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float +lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float +lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:float +lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float +lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float +lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float +lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float +lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float +lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float +lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float +lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float +lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float +lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float +lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_2_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 data:float +lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float +lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float +lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float +lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float +lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_2_data_24 = .data:0x00000024; // type:object size:0x1A +lbl_2_data_3E = .data:0x0000003E; // type:object size:0x1A +lbl_2_data_58 = .data:0x00000058; // type:object size:0x1C +lbl_2_data_74 = .data:0x00000074; // type:object size:0x34 +lbl_2_data_A8 = .data:0x000000A8; // type:object size:0x21 +lbl_2_data_C9 = .data:0x000000C9; // type:object size:0x16 +lbl_2_data_DF = .data:0x000000DF; // type:object size:0x16 +lbl_2_data_F5 = .data:0x000000F5; // type:object size:0x16 +lbl_2_data_10B = .data:0x0000010B; // type:object size:0xD +lbl_2_data_118 = .data:0x00000118; // type:object size:0x16 +lbl_2_data_12E = .data:0x0000012E; // type:object size:0xD +lbl_2_data_13B = .data:0x0000013B; // type:object size:0x16 +lbl_2_data_151 = .data:0x00000151; // type:object size:0x16 +lbl_2_data_167 = .data:0x00000167; // type:object size:0x16 +lbl_2_data_17D = .data:0x0000017D; // type:object size:0x16 +lbl_2_data_193 = .data:0x00000193; // type:object size:0x16 +lbl_2_data_1A9 = .data:0x000001A9; // type:object size:0x4B +lbl_2_data_1F4 = .data:0x000001F4; // type:object size:0x14 +lbl_2_data_208 = .data:0x00000208; // type:object size:0x34 +lbl_2_data_23C = .data:0x0000023C; // type:object size:0x14 +lbl_2_data_250 = .data:0x00000250; // type:object size:0xC +lbl_2_data_25C = .data:0x0000025C; // type:object size:0xC +lbl_2_data_268 = .data:0x00000268; // type:object size:0x6C +lbl_2_data_2D4 = .data:0x000002D4; // type:object size:0x8 +lbl_2_data_2DC = .data:0x000002DC; // type:object size:0x10 +lbl_2_data_2EC = .data:0x000002EC; // type:object size:0x20 +lbl_2_data_30C = .data:0x0000030C; // type:object size:0x1C +lbl_2_data_328 = .data:0x00000328; // type:object size:0x10 +lbl_2_data_338 = .data:0x00000338; // type:object size:0x40 +lbl_2_data_378 = .data:0x00000378; // type:object size:0x20 +lbl_2_data_398 = .data:0x00000398; // type:object size:0x10 +lbl_2_data_3A8 = .data:0x000003A8; // type:object size:0x20 +lbl_2_data_3C8 = .data:0x000003C8; // type:object size:0x14 +lbl_2_data_3DC = .data:0x000003DC; // type:object size:0x14 +lbl_2_data_3F0 = .data:0x000003F0; // type:object size:0x8 +lbl_2_data_3F8 = .data:0x000003F8; // type:object size:0x10 +lbl_2_data_408 = .data:0x00000408; // type:object size:0x10 +lbl_2_data_418 = .data:0x00000418; // type:object size:0x60 +lbl_2_data_478 = .data:0x00000478; // type:object size:0x24 +lbl_2_data_49C = .data:0x0000049C; // type:object size:0x34 +lbl_2_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte +lbl_2_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_2_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_2_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_2_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_2_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_2_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_2_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_2_bss_28 = .bss:0x00000028; // type:object size:0xC data:2byte +lbl_2_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_2_bss_36 = .bss:0x00000036; // type:object size:0x2 data:2byte +lbl_2_bss_3A = .bss:0x0000003A; // type:object size:0x2 data:2byte +lbl_2_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_2_bss_40 = .bss:0x00000040; // type:object size:0x2 data:2byte +lbl_2_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float +lbl_2_bss_48 = .bss:0x00000048; // type:object size:0xC data:float +lbl_2_bss_54 = .bss:0x00000054; // type:object size:0xC data:float +lbl_2_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_2_bss_62 = .bss:0x00000062; // type:object size:0x8 +lbl_2_bss_6A = .bss:0x0000006A; // type:object size:0x6 data:2byte +lbl_2_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_2_bss_74 = .bss:0x00000074; // type:object size:0x18 data:4byte +lbl_2_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_2_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_2_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_2_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_2_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:float +lbl_2_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_2_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_2_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_2_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_2_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_2_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_2_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_2_bss_BC = .bss:0x000000BC; // type:object size:0x2 data:2byte +lbl_2_bss_BE = .bss:0x000000BE; // type:object size:0x2 data:2byte +lbl_2_bss_C0 = .bss:0x000000C0; // type:object size:0x20 +lbl_2_bss_E0 = .bss:0x000000E0; // type:object size:0x18 data:2byte diff --git a/config/GMPP01_00/rels/_minigameDll/splits.txt b/config/GMPP01_00/rels/_minigameDll/splits.txt new file mode 100644 index 00000000..be323846 --- /dev/null +++ b/config/GMPP01_00/rels/_minigameDll/splits.txt @@ -0,0 +1,6 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 diff --git a/config/GMPP01_00/rels/_minigameDll/symbols.txt b/config/GMPP01_00/rels/_minigameDll/symbols.txt new file mode 100644 index 00000000..5c4a5ab3 --- /dev/null +++ b/config/GMPP01_00/rels/_minigameDll/symbols.txt @@ -0,0 +1,7 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2C +fn_1_CC = .text:0x000000CC; // type:function size:0x24 +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x14 data:string diff --git a/config/GMPP01_00/rels/bootDll/splits.txt b/config/GMPP01_00/rels/bootDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/bootDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/bootDll/symbols.txt b/config/GMPP01_00/rels/bootDll/symbols.txt new file mode 100644 index 00000000..b9ed4f1e --- /dev/null +++ b/config/GMPP01_00/rels/bootDll/symbols.txt @@ -0,0 +1,107 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x204 +fn_1_2A4 = .text:0x000002A4; // type:function size:0x8B4 +fn_1_B58 = .text:0x00000B58; // type:function size:0xC8 +fn_1_C20 = .text:0x00000C20; // type:function size:0x3B4 +fn_1_FD4 = .text:0x00000FD4; // type:function size:0xB88 +fn_1_1B5C = .text:0x00001B5C; // type:function size:0x460 +fn_1_1FBC = .text:0x00001FBC; // type:function size:0xAA0 +fn_1_2A5C = .text:0x00002A5C; // type:function size:0x84 +fn_1_2AE0 = .text:0x00002AE0; // type:function size:0x10C8 +fn_1_3BA8 = .text:0x00003BA8; // type:function size:0x1F4 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x24 data:string +lbl_1_data_24 = .data:0x00000024; // type:object size:0x14 data:string +lbl_1_data_38 = .data:0x00000038; // type:object size:0x18 data:2byte +lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 +lbl_1_data_54 = .data:0x00000054; // type:object size:0x1A data:string +lbl_1_data_6E = .data:0x0000006E; // type:object size:0x13 data:string +lbl_1_data_81 = .data:0x00000081; // type:object size:0x1F +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x3080 data:4byte +lbl_1_data_3120 = .data:0x00003120; // type:object size:0x14 +lbl_1_data_3134 = .data:0x00003134; // type:object size:0x5 data:string +lbl_1_data_3139 = .data:0x00003139; // type:object size:0xD data:string +lbl_1_data_3146 = .data:0x00003146; // type:object size:0x10 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x6 +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x6 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0xE data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x18 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x18 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte diff --git a/config/GMPP01_00/rels/instDll/splits.txt b/config/GMPP01_00/rels/instDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/instDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/instDll/symbols.txt b/config/GMPP01_00/rels/instDll/symbols.txt new file mode 100644 index 00000000..d927e6ae --- /dev/null +++ b/config/GMPP01_00/rels/instDll/symbols.txt @@ -0,0 +1,147 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x8F4 +fn_1_994 = .text:0x00000994; // type:function size:0xE50 +fn_1_17E4 = .text:0x000017E4; // type:function size:0xA28 +fn_1_220C = .text:0x0000220C; // type:function size:0x5F8 +fn_1_2804 = .text:0x00002804; // type:function size:0x79C +fn_1_2FA0 = .text:0x00002FA0; // type:function size:0x11D4 +fn_1_4174 = .text:0x00004174; // type:function size:0x3B4 +fn_1_4528 = .text:0x00004528; // type:function size:0xB88 +fn_1_50B0 = .text:0x000050B0; // type:function size:0xAB4 +fn_1_5B64 = .text:0x00005B64; // type:function size:0x340 +fn_1_5EA4 = .text:0x00005EA4; // type:function size:0x3F8 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +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_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_2 = .data:0x00000002; // type:object size:0x24 data:string +lbl_1_data_26 = .data:0x00000026; // type:object size:0x20 +lbl_1_data_46 = .data:0x00000046; // type:object size:0xA +lbl_1_data_50 = .data:0x00000050; // type:object size:0x20 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x20 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x8 data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 data:string +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 data:string +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x8 data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x4 +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x48 +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x18 +lbl_1_data_124 = .data:0x00000124; // type:object size:0x20 data:float +lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 data:float +lbl_1_data_150 = .data:0x00000150; // type:object size:0x4C0 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x1 data:byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x18 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x18 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x8 data:4byte diff --git a/config/GMPP01_00/rels/m300Dll/splits.txt b/config/GMPP01_00/rels/m300Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPP01_00/rels/m300Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPP01_00/rels/m300Dll/symbols.txt b/config/GMPP01_00/rels/m300Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPP01_00/rels/m300Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPP01_00/rels/m302Dll/splits.txt b/config/GMPP01_00/rels/m302Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPP01_00/rels/m302Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPP01_00/rels/m302Dll/symbols.txt b/config/GMPP01_00/rels/m302Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPP01_00/rels/m302Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPP01_00/rels/m303Dll/splits.txt b/config/GMPP01_00/rels/m303Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPP01_00/rels/m303Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPP01_00/rels/m303Dll/symbols.txt b/config/GMPP01_00/rels/m303Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPP01_00/rels/m303Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPP01_00/rels/m330Dll/splits.txt b/config/GMPP01_00/rels/m330Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPP01_00/rels/m330Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPP01_00/rels/m330Dll/symbols.txt b/config/GMPP01_00/rels/m330Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPP01_00/rels/m330Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPP01_00/rels/m333Dll/splits.txt b/config/GMPP01_00/rels/m333Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPP01_00/rels/m333Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPP01_00/rels/m333Dll/symbols.txt b/config/GMPP01_00/rels/m333Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPP01_00/rels/m333Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPP01_00/rels/m401Dll/splits.txt b/config/GMPP01_00/rels/m401Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m401Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m401Dll/symbols.txt b/config/GMPP01_00/rels/m401Dll/symbols.txt new file mode 100644 index 00000000..c4412263 --- /dev/null +++ b/config/GMPP01_00/rels/m401Dll/symbols.txt @@ -0,0 +1,522 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_2_A0 = .text:0x000000A0; // type:function size:0x66C +fn_2_70C = .text:0x0000070C; // type:function size:0x304 +fn_2_A10 = .text:0x00000A10; // type:function size:0x88 +fn_2_A98 = .text:0x00000A98; // type:function size:0x54 +fn_2_AEC = .text:0x00000AEC; // type:function size:0x130 +fn_2_C1C = .text:0x00000C1C; // type:function size:0x5B4 +fn_2_11D0 = .text:0x000011D0; // type:function size:0x3F4 +fn_2_15C4 = .text:0x000015C4; // type:function size:0xD8 +fn_2_169C = .text:0x0000169C; // type:function size:0x1BC +fn_2_1858 = .text:0x00001858; // type:function size:0x1E0 +fn_2_1A38 = .text:0x00001A38; // type:function size:0x148 +fn_2_1B80 = .text:0x00001B80; // type:function size:0x170 +fn_2_1CF0 = .text:0x00001CF0; // type:function size:0xF8 +fn_2_1DE8 = .text:0x00001DE8; // type:function size:0x2C8 +fn_2_20B0 = .text:0x000020B0; // type:function size:0x148 +fn_2_21F8 = .text:0x000021F8; // type:function size:0x4E8 +fn_2_26E0 = .text:0x000026E0; // type:function size:0x5DC +fn_2_2CBC = .text:0x00002CBC; // type:function size:0xA8 +fn_2_2D64 = .text:0x00002D64; // type:function size:0x68 +fn_2_2DCC = .text:0x00002DCC; // type:function size:0x54 +fn_2_2E20 = .text:0x00002E20; // type:function size:0xB0 +fn_2_2ED0 = .text:0x00002ED0; // type:function size:0xCC +fn_2_2F9C = .text:0x00002F9C; // type:function size:0x4 +fn_2_2FA0 = .text:0x00002FA0; // type:function size:0x4 +fn_2_2FA4 = .text:0x00002FA4; // type:function size:0x410 +fn_2_33B4 = .text:0x000033B4; // type:function size:0x104 +fn_2_34B8 = .text:0x000034B8; // type:function size:0x380 +fn_2_3838 = .text:0x00003838; // type:function size:0x2EC +fn_2_3B24 = .text:0x00003B24; // type:function size:0x404 +fn_2_3F28 = .text:0x00003F28; // type:function size:0x978 +fn_2_48A0 = .text:0x000048A0; // type:function size:0x1420 +fn_2_5CC0 = .text:0x00005CC0; // type:function size:0x93C +fn_2_65FC = .text:0x000065FC; // type:function size:0x4F8 +fn_2_6AF4 = .text:0x00006AF4; // type:function size:0x50 +fn_2_6B44 = .text:0x00006B44; // type:function size:0x150 +fn_2_6C94 = .text:0x00006C94; // type:function size:0x9AC +fn_2_7640 = .text:0x00007640; // type:function size:0x6C +fn_2_76AC = .text:0x000076AC; // type:function size:0x280 +fn_2_792C = .text:0x0000792C; // type:function size:0x310 +fn_2_7C3C = .text:0x00007C3C; // type:function size:0x78 +fn_2_7CB4 = .text:0x00007CB4; // type:function size:0x1B8 +fn_2_7E6C = .text:0x00007E6C; // type:function size:0x70 +fn_2_7EDC = .text:0x00007EDC; // type:function size:0x574 +fn_2_8450 = .text:0x00008450; // type:function size:0x2EC +fn_2_873C = .text:0x0000873C; // type:function size:0x12C +fn_2_8868 = .text:0x00008868; // type:function size:0x100 +fn_2_8968 = .text:0x00008968; // type:function size:0x1F0 +fn_2_8B58 = .text:0x00008B58; // type:function size:0x100 +fn_2_8C58 = .text:0x00008C58; // type:function size:0x21C +fn_2_8E74 = .text:0x00008E74; // type:function size:0x338 +fn_2_91AC = .text:0x000091AC; // type:function size:0xEC +fn_2_9298 = .text:0x00009298; // type:function size:0x34C +fn_2_95E4 = .text:0x000095E4; // type:function size:0x150 +fn_2_9734 = .text:0x00009734; // type:function size:0x68 +fn_2_979C = .text:0x0000979C; // type:function size:0xF0 +fn_2_988C = .text:0x0000988C; // type:function size:0x118 +fn_2_99A4 = .text:0x000099A4; // type:function size:0x1EC +fn_2_9B90 = .text:0x00009B90; // type:function size:0x170 +fn_2_9D00 = .text:0x00009D00; // type:function size:0x128 +fn_2_9E28 = .text:0x00009E28; // type:function size:0x288 +fn_2_A0B0 = .text:0x0000A0B0; // type:function size:0x268 +fn_2_A318 = .text:0x0000A318; // type:function size:0x58C +fn_2_A8A4 = .text:0x0000A8A4; // type:function size:0x70 +fn_2_A914 = .text:0x0000A914; // type:function size:0x2C +fn_2_A940 = .text:0x0000A940; // type:function size:0x2EC +fn_2_AC2C = .text:0x0000AC2C; // type:function size:0x1164 +fn_2_BD90 = .text:0x0000BD90; // type:function size:0x3A0 +fn_2_C130 = .text:0x0000C130; // type:function size:0x5B0 +fn_2_C6E0 = .text:0x0000C6E0; // type:function size:0x164 +fn_2_C844 = .text:0x0000C844; // type:function size:0x270 +fn_2_CAB4 = .text:0x0000CAB4; // type:function size:0x5D8 +fn_2_D08C = .text:0x0000D08C; // type:function size:0xF8 +fn_2_D184 = .text:0x0000D184; // type:function size:0x268 +fn_2_D3EC = .text:0x0000D3EC; // type:function size:0x4E4 +fn_2_D8D0 = .text:0x0000D8D0; // type:function size:0x300 +fn_2_DBD0 = .text:0x0000DBD0; // type:function size:0x250 +fn_2_DE20 = .text:0x0000DE20; // type:function size:0xA0 +fn_2_DEC0 = .text:0x0000DEC0; // type:function size:0x390 +fn_2_E250 = .text:0x0000E250; // type:function size:0x118 +fn_2_E368 = .text:0x0000E368; // type:function size:0xBC +fn_2_E424 = .text:0x0000E424; // type:function size:0x24C +fn_2_E670 = .text:0x0000E670; // type:function size:0x30 +fn_2_E6A0 = .text:0x0000E6A0; // type:function size:0x20 +fn_2_E6C0 = .text:0x0000E6C0; // type:function size:0x2C +fn_2_E6EC = .text:0x0000E6EC; // type:function size:0x1090 +fn_2_F77C = .text:0x0000F77C; // type:function size:0x4C8 +fn_2_FC44 = .text:0x0000FC44; // type:function size:0x358 +fn_2_FF9C = .text:0x0000FF9C; // type:function size:0x2A8 +fn_2_10244 = .text:0x00010244; // type:function size:0x1DC +fn_2_10420 = .text:0x00010420; // type:function size:0x2F4 +fn_2_10714 = .text:0x00010714; // type:function size:0x8C +fn_2_107A0 = .text:0x000107A0; // type:function size:0x12C +fn_2_108CC = .text:0x000108CC; // type:function size:0xB8 +fn_2_10984 = .text:0x00010984; // type:function size:0x88 +fn_2_10A0C = .text:0x00010A0C; // type:function size:0x80 +fn_2_10A8C = .text:0x00010A8C; // type:function size:0x924 +fn_2_113B0 = .text:0x000113B0; // type:function size:0x504 +fn_2_118B4 = .text:0x000118B4; // type:function size:0x1B8 +fn_2_11A6C = .text:0x00011A6C; // type:function size:0x110 +fn_2_11B7C = .text:0x00011B7C; // type:function size:0xB8 +fn_2_11C34 = .text:0x00011C34; // type:function size:0x110 +fn_2_11D44 = .text:0x00011D44; // type:function size:0x104 +fn_2_11E48 = .text:0x00011E48; // type:function size:0xB8 +fn_2_11F00 = .text:0x00011F00; // type:function size:0xB8 +fn_2_11FB8 = .text:0x00011FB8; // type:function size:0x444 +fn_2_123FC = .text:0x000123FC; // type:function size:0x2D0 +fn_2_126CC = .text:0x000126CC; // type:function size:0x2C +fn_2_126F8 = .text:0x000126F8; // type:function size:0x43C +fn_2_12B34 = .text:0x00012B34; // type:function size:0x4EC +fn_2_13020 = .text:0x00013020; // type:function size:0x4F0 +fn_2_13510 = .text:0x00013510; // type:function size:0x670 +fn_2_13B80 = .text:0x00013B80; // type:function size:0x634 +fn_2_141B4 = .text:0x000141B4; // type:function size:0x120 +fn_2_142D4 = .text:0x000142D4; // type:function size:0x4 +fn_2_142D8 = .text:0x000142D8; // type:function size:0x36C +fn_2_14644 = .text:0x00014644; // type:function size:0xF8 +fn_2_1473C = .text:0x0001473C; // type:function size:0x7C +fn_2_147B8 = .text:0x000147B8; // type:function size:0x660 +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float +lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float +lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float +lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float +lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float +lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float +lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float +lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float +lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float +lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float +lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float +lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float +lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float +lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float +lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float +lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float +lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float +lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_2_rodata_84 = .rodata:0x00000084; // type:object size:0x4 data:float +lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float +lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float +lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float +lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float +lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float +lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_2_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 data:float +lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float +lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float +lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float +lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float +lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float +lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float +lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float +lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float +lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float +lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_2_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_2_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_2_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_2_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 data:float +lbl_2_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float +lbl_2_rodata_144 = .rodata:0x00000144; // type:object size:0x4 data:float +lbl_2_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_2_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 data:float +lbl_2_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_2_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_2_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_2_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_2_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_2_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_2_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_2_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_2_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_2_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_2_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_2_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_2_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 data:float +lbl_2_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_2_rodata_194 = .rodata:0x00000194; // type:object size:0x4 data:float +lbl_2_rodata_198 = .rodata:0x00000198; // type:object size:0x4 data:float +lbl_2_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 data:float +lbl_2_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_2_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_2_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_2_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_2_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_2_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_2_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_2_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_2_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_2_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_2_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double +lbl_2_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_2_rodata_1DC = .rodata:0x000001DC; // type:object size:0x10 data:4byte +lbl_2_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 data:float +lbl_2_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_2_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 data:float +lbl_2_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float +lbl_2_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 data:float +lbl_2_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float +lbl_2_rodata_204 = .rodata:0x00000204; // type:object size:0x4 data:float +lbl_2_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_2_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_2_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_2_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_2_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_2_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_2_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_2_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_2_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_2_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_2_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_2_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_2_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_2_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_2_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_2_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_2_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_2_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_2_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_2_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_2_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_2_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_2_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_2_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_2_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_2_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_2_rodata_290 = .rodata:0x00000290; // type:object size:0x40 data:2byte +lbl_2_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:2byte +lbl_2_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:2byte +lbl_2_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:2byte +lbl_2_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_2_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_2_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_2_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_2_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_2_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_2_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_2_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_2_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_2_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_2_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_2_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_2_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_2_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_2_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_2_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_2_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_2_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_2_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_2_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_2_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_2_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_2_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_2_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_2_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_2_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_2_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_2_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_2_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_2_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_2_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_2_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_2_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_2_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_2_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_2_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_2_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_2_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_2_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_2_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_2_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_2_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_2_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_2_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_2_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_2_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_2_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_2_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_2_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_2_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_2_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_2_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_2_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_2_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_2_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_2_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_2_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_2_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_2_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_2_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_2_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_2_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_2_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_2_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_2_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_2_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_2_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_2_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_2_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_2_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_2_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_2_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_2_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_2_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_2_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_2_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_2_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_2_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_2_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_2_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_2_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_2_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_2_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_2_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_2_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_2_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_2_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_2_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_2_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_2_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_2_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_2_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_2_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_2_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_2_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_2_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double +lbl_2_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_2_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_2_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_2_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_2_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_2_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_2_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_2_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_2_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_2_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_2_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_2_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_2_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_2_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_2_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_2_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_2_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_2_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_2_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_2_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_2_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_2_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_2_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_2_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_2_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_2_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_2_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_2_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_2_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_2_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_2_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_2_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_2_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double +lbl_2_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_2_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_2_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double +lbl_2_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_2_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_2_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_2_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_2_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_2_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_2_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_2_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_2_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_2_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:double +lbl_2_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_2_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_2_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_2_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_2_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_2_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_2_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_2_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_2_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double +lbl_2_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_2_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_2_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_2_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_2_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_2_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_2_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_2_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_2_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_2_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_2_data_0 = .data:0x00000000; // type:object size:0x4 data:float +lbl_2_data_4 = .data:0x00000004; // type:object size:0x10 +lbl_2_data_14 = .data:0x00000014; // type:object size:0xC +lbl_2_data_20 = .data:0x00000020; // type:object size:0xC +lbl_2_data_2C = .data:0x0000002C; // type:object size:0x4 +lbl_2_data_30 = .data:0x00000030; // type:object size:0xC data:float +lbl_2_data_3C = .data:0x0000003C; // type:object size:0xC +lbl_2_data_48 = .data:0x00000048; // type:object size:0xC data:float +lbl_2_data_54 = .data:0x00000054; // type:object size:0x1B data:string +lbl_2_data_6F = .data:0x0000006F; // type:object size:0x11 +lbl_2_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_2_data_A0 = .data:0x000000A0; // type:object size:0x14 +lbl_2_data_B4 = .data:0x000000B4; // type:object size:0x18 +lbl_2_data_CC = .data:0x000000CC; // type:object size:0x28 +lbl_2_data_F4 = .data:0x000000F4; // type:object size:0x9 data:string +lbl_2_data_FD = .data:0x000000FD; // type:object size:0x9 data:string +lbl_2_data_106 = .data:0x00000106; // type:object size:0x9 data:string +lbl_2_data_10F = .data:0x0000010F; // type:object size:0x9 data:string +lbl_2_data_118 = .data:0x00000118; // type:object size:0xC +lbl_2_data_124 = .data:0x00000124; // type:object size:0x34 data:4byte +lbl_2_data_158 = .data:0x00000158; // type:object size:0x140 +lbl_2_data_298 = .data:0x00000298; // type:object size:0x30 +lbl_2_data_2C8 = .data:0x000002C8; // type:object size:0x30 +jumptable_2_data_2F8 = .data:0x000002F8; // type:object size:0x30 scope:local +lbl_2_data_32C = .data:0x0000032C; // type:object size:0x8 +lbl_2_data_334 = .data:0x00000334; // type:object size:0xF0 +lbl_2_data_424 = .data:0x00000424; // type:object size:0x8 +lbl_2_data_42C = .data:0x0000042C; // type:object size:0x28 +lbl_2_data_454 = .data:0x00000454; // type:object size:0xC data:string +lbl_2_data_460 = .data:0x00000460; // type:object size:0xC +lbl_2_data_46C = .data:0x0000046C; // type:object size:0x5 data:string +lbl_2_data_471 = .data:0x00000471; // type:object size:0x7 +jumptable_2_data_478 = .data:0x00000478; // type:object size:0x20 scope:local +lbl_2_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_2_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_2_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_2_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_2_bss_10 = .bss:0x00000010; // type:object size:0x4 data:float +lbl_2_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_2_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_2_bss_1A = .bss:0x0000001A; // type:object size:0x2 data:2byte +lbl_2_bss_1C = .bss:0x0000001C; // type:object size:0x10 data:4byte +lbl_2_bss_2C = .bss:0x0000002C; // type:object size:0xC data:float +lbl_2_bss_38 = .bss:0x00000038; // type:object size:0xC data:float +lbl_2_bss_44 = .bss:0x00000044; // type:object size:0xC data:float +lbl_2_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float +lbl_2_bss_54 = .bss:0x00000054; // type:object size:0xC data:4byte +lbl_2_bss_60 = .bss:0x00000060; // type:object size:0xC data:float +lbl_2_bss_6C = .bss:0x0000006C; // type:object size:0xC data:float +lbl_2_bss_78 = .bss:0x00000078; // type:object size:0xC data:float +lbl_2_bss_84 = .bss:0x00000084; // type:object size:0x4 data:float +lbl_2_bss_88 = .bss:0x00000088; // type:object size:0x4 data:float +lbl_2_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_2_bss_90 = .bss:0x00000090; // type:object size:0x14 data:4byte +lbl_2_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_2_bss_A8 = .bss:0x000000A8; // type:object size:0x2 data:2byte +lbl_2_bss_AA = .bss:0x000000AA; // type:object size:0x8 data:2byte +lbl_2_bss_B2 = .bss:0x000000B2; // type:object size:0x8 data:2byte +lbl_2_bss_BA = .bss:0x000000BA; // type:object size:0x2 data:2byte +lbl_2_bss_BE = .bss:0x000000BE; // type:object size:0x2 data:2byte +lbl_2_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte +lbl_2_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_2_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_2_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_2_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_2_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_2_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_2_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_2_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_2_bss_E4 = .bss:0x000000E4; // type:object size:0x10 +lbl_2_bss_F4 = .bss:0x000000F4; // type:object size:0x4 data:4byte +lbl_2_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte +lbl_2_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_2_bss_100 = .bss:0x00000100; // type:object size:0x8 data:4byte +lbl_2_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_2_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_2_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte +lbl_2_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte +lbl_2_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte +lbl_2_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_2_bss_120 = .bss:0x00000120; // type:object size:0x2 data:2byte +lbl_2_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float +lbl_2_bss_128 = .bss:0x00000128; // type:object size:0x4 data:float +lbl_2_bss_12C = .bss:0x0000012C; // type:object size:0x8 data:float +lbl_2_bss_134 = .bss:0x00000134; // type:object size:0x2 data:2byte +lbl_2_bss_136 = .bss:0x00000136; // type:object size:0x8 +lbl_2_bss_13E = .bss:0x0000013E; // type:object size:0xE2 +lbl_2_bss_220 = .bss:0x00000220; // type:object size:0x18 data:4byte +lbl_2_bss_238 = .bss:0x00000238; // type:object size:0x4 data:4byte +lbl_2_bss_23C = .bss:0x0000023C; // type:object size:0x4 data:4byte +lbl_2_bss_240 = .bss:0x00000240; // type:object size:0x4 data:4byte +lbl_2_bss_244 = .bss:0x00000244; // type:object size:0x4 data:4byte +lbl_2_bss_248 = .bss:0x00000248; // type:object size:0x4 data:4byte +lbl_2_bss_24C = .bss:0x0000024C; // type:object size:0x4 data:4byte +lbl_2_bss_250 = .bss:0x00000250; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m402Dll/splits.txt b/config/GMPP01_00/rels/m402Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m402Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m402Dll/symbols.txt b/config/GMPP01_00/rels/m402Dll/symbols.txt new file mode 100644 index 00000000..c3491cd9 --- /dev/null +++ b/config/GMPP01_00/rels/m402Dll/symbols.txt @@ -0,0 +1,206 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x204 +fn_1_784 = .text:0x00000784; // type:function size:0x240 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 +fn_1_A18 = .text:0x00000A18; // type:function size:0x10C +fn_1_B24 = .text:0x00000B24; // type:function size:0x680 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1300 = .text:0x00001300; // type:function size:0x8C +fn_1_138C = .text:0x0000138C; // type:function size:0x334 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C +fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +_prolog = .text:0x00002364; // type:function size:0x54 scope:global +_epilog = .text:0x000023B8; // type:function size:0x4C scope:global +fn_1_2404 = .text:0x00002404; // type:function size:0x2F0 +fn_1_26F4 = .text:0x000026F4; // type:function size:0x64 +fn_1_2758 = .text:0x00002758; // type:function size:0xD8 +fn_1_2830 = .text:0x00002830; // type:function size:0xF0 +fn_1_2920 = .text:0x00002920; // type:function size:0x1C0 +fn_1_2AE0 = .text:0x00002AE0; // type:function size:0x28C +fn_1_2D6C = .text:0x00002D6C; // type:function size:0x380 +fn_1_30EC = .text:0x000030EC; // type:function size:0xC8 +fn_1_31B4 = .text:0x000031B4; // type:function size:0xF8C +fn_1_4140 = .text:0x00004140; // type:function size:0xF4 +fn_1_4234 = .text:0x00004234; // type:function size:0x154 +fn_1_4388 = .text:0x00004388; // type:function size:0x1FF0 +fn_1_6378 = .text:0x00006378; // type:function size:0x490 +fn_1_6808 = .text:0x00006808; // type:function size:0x4 +fn_1_680C = .text:0x0000680C; // type:function size:0x258 +fn_1_6A64 = .text:0x00006A64; // type:function size:0x3B0 +fn_1_6E14 = .text:0x00006E14; // type:function size:0x1BC +fn_1_6FD0 = .text:0x00006FD0; // type:function size:0xC4 +fn_1_7094 = .text:0x00007094; // type:function size:0x86C +fn_1_7900 = .text:0x00007900; // type:function size:0x19C +fn_1_7A9C = .text:0x00007A9C; // type:function size:0x25C +fn_1_7CF8 = .text:0x00007CF8; // type:function size:0x4 +fn_1_7CFC = .text:0x00007CFC; // type:function size:0x134 +fn_1_7E30 = .text:0x00007E30; // type:function size:0x4 +fn_1_7E34 = .text:0x00007E34; // type:function size:0x1C4 +fn_1_7FF8 = .text:0x00007FF8; // type:function size:0x1D0 +fn_1_81C8 = .text:0x000081C8; // type:function size:0xE38 +fn_1_9000 = .text:0x00009000; // type:function size:0x1EC +fn_1_91EC = .text:0x000091EC; // type:function size:0x8B0 +fn_1_9A9C = .text:0x00009A9C; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte +lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0x160 +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x10 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x4 data:4byte +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x8 +lbl_1_data_200 = .data:0x00000200; // type:object size:0x18 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x1C +lbl_1_data_234 = .data:0x00000234; // type:object size:0x190 +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x14 +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x1A data:string +lbl_1_data_3F2 = .data:0x000003F2; // type:object size:0x9 data:string +lbl_1_data_3FB = .data:0x000003FB; // type:object size:0x6 data:string +lbl_1_data_401 = .data:0x00000401; // type:object size:0x10 data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x1F +jumptable_1_data_430 = .data:0x00000430; // type:object size:0x40 scope:local +lbl_1_data_470 = .data:0x00000470; // type:object size:0x17 data:string +lbl_1_data_487 = .data:0x00000487; // type:object size:0x1B data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x24 data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xE +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x100 +lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x40 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 data:float +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x2 data:2byte +lbl_1_bss_1AA = .bss:0x000001AA; // type:object size:0x2 data:2byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x4 data:4byte +lbl_1_bss_1B4 = .bss:0x000001B4; // type:object size:0x4 data:4byte +lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC data:4byte +lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC data:4byte +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC data:4byte +lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0x4 data:4byte +lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x18 data:4byte +lbl_1_bss_204 = .bss:0x00000204; // type:object size:0xC data:4byte diff --git a/config/GMPP01_00/rels/m403Dll/splits.txt b/config/GMPP01_00/rels/m403Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m403Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m403Dll/symbols.txt b/config/GMPP01_00/rels/m403Dll/symbols.txt new file mode 100644 index 00000000..33bec762 --- /dev/null +++ b/config/GMPP01_00/rels/m403Dll/symbols.txt @@ -0,0 +1,259 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +fn_1_424 = .text:0x00000424; // type:function size:0x20 +fn_1_444 = .text:0x00000444; // type:function size:0x3E8 +fn_1_82C = .text:0x0000082C; // type:function size:0x9E8 +fn_1_1214 = .text:0x00001214; // type:function size:0x60 +fn_1_1274 = .text:0x00001274; // type:function size:0x1EC +fn_1_1460 = .text:0x00001460; // type:function size:0x288 +fn_1_16E8 = .text:0x000016E8; // type:function size:0x104 +fn_1_17EC = .text:0x000017EC; // type:function size:0x274 +fn_1_1A60 = .text:0x00001A60; // type:function size:0xA0 +fn_1_1B00 = .text:0x00001B00; // type:function size:0x2B8 +fn_1_1DB8 = .text:0x00001DB8; // type:function size:0x28 +fn_1_1DE0 = .text:0x00001DE0; // type:function size:0x388 +fn_1_2168 = .text:0x00002168; // type:function size:0x14C +fn_1_22B4 = .text:0x000022B4; // type:function size:0x2F4 +fn_1_25A8 = .text:0x000025A8; // type:function size:0xA44 +fn_1_2FEC = .text:0x00002FEC; // type:function size:0x824 +fn_1_3810 = .text:0x00003810; // type:function size:0x94 +fn_1_38A4 = .text:0x000038A4; // type:function size:0x2EC +fn_1_3B90 = .text:0x00003B90; // type:function size:0x1EC +fn_1_3D7C = .text:0x00003D7C; // type:function size:0xE0 +fn_1_3E5C = .text:0x00003E5C; // type:function size:0x1C0 +fn_1_401C = .text:0x0000401C; // type:function size:0x9C +fn_1_40B8 = .text:0x000040B8; // type:function size:0x480 +fn_1_4538 = .text:0x00004538; // type:function size:0x54 +fn_1_458C = .text:0x0000458C; // type:function size:0x168 +fn_1_46F4 = .text:0x000046F4; // type:function size:0x120 +fn_1_4814 = .text:0x00004814; // type:function size:0x30C +fn_1_4B20 = .text:0x00004B20; // type:function size:0x78 +fn_1_4B98 = .text:0x00004B98; // type:function size:0x11C +fn_1_4CB4 = .text:0x00004CB4; // type:function size:0x78 +fn_1_4D2C = .text:0x00004D2C; // type:function size:0x2D8 +fn_1_5004 = .text:0x00005004; // type:function size:0x2B8 +fn_1_52BC = .text:0x000052BC; // type:function size:0x154 +fn_1_5410 = .text:0x00005410; // type:function size:0x3E0 +fn_1_57F0 = .text:0x000057F0; // type:function size:0x214 +fn_1_5A04 = .text:0x00005A04; // type:function size:0x198 +fn_1_5B9C = .text:0x00005B9C; // type:function size:0xD8 +fn_1_5C74 = .text:0x00005C74; // type:function size:0xBC +fn_1_5D30 = .text:0x00005D30; // type:function size:0x33C +fn_1_606C = .text:0x0000606C; // type:function size:0x4B0 +fn_1_651C = .text:0x0000651C; // type:function size:0x260 +fn_1_677C = .text:0x0000677C; // type:function size:0x20 +fn_1_679C = .text:0x0000679C; // type:function size:0x84 +fn_1_6820 = .text:0x00006820; // type:function size:0x4 +fn_1_6824 = .text:0x00006824; // type:function size:0x16C +fn_1_6990 = .text:0x00006990; // type:function size:0x318 +fn_1_6CA8 = .text:0x00006CA8; // type:function size:0x240 +fn_1_6EE8 = .text:0x00006EE8; // type:function size:0x110 +fn_1_6FF8 = .text:0x00006FF8; // type:function size:0x400 +fn_1_73F8 = .text:0x000073F8; // type:function size:0x5B4 +fn_1_79AC = .text:0x000079AC; // type:function size:0xFC +fn_1_7AA8 = .text:0x00007AA8; // type:function size:0x88 +fn_1_7B30 = .text:0x00007B30; // type:function size:0xB4 +fn_1_7BE4 = .text:0x00007BE4; // type:function size:0x4C +fn_1_7C30 = .text:0x00007C30; // type:function size:0x10 +fn_1_7C40 = .text:0x00007C40; // type:function size:0x20 +fn_1_7C60 = .text:0x00007C60; // type:function size:0x10 +fn_1_7C70 = .text:0x00007C70; // type:function size:0xA4 +fn_1_7D14 = .text:0x00007D14; // type:function size:0x274 +fn_1_7F88 = .text:0x00007F88; // type:function size:0x15C +fn_1_80E4 = .text:0x000080E4; // type:function size:0x180 +fn_1_8264 = .text:0x00008264; // type:function size:0x10 +fn_1_8274 = .text:0x00008274; // type:function size:0x10 +fn_1_8284 = .text:0x00008284; // type:function size:0x5C +fn_1_82E0 = .text:0x000082E0; // type:function size:0x1A0 +fn_1_8480 = .text:0x00008480; // type:function size:0x200 +fn_1_8680 = .text:0x00008680; // type:function size:0x30 +fn_1_86B0 = .text:0x000086B0; // type:function size:0x8CC +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x9 data:byte +lbl_1_rodata_AD = .rodata:0x000000AD; // type:object size:0xB data:byte +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0xC +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x28 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x4 data:4byte +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x20 +jumptable_1_data_8C = .data:0x0000008C; // type:object size:0x1C scope:local +jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x20 +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x30 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x20 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x20 +lbl_1_data_154 = .data:0x00000154; // type:object size:0x4 data:4byte +lbl_1_data_158 = .data:0x00000158; // type:object size:0xC0 +lbl_1_data_218 = .data:0x00000218; // type:object size:0xC0 +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x78 +lbl_1_data_350 = .data:0x00000350; // type:object size:0x78 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xC0 +lbl_1_data_488 = .data:0x00000488; // type:object size:0xC0 +lbl_1_data_548 = .data:0x00000548; // type:object size:0x78 +lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x78 +lbl_1_data_638 = .data:0x00000638; // type:object size:0x108 +lbl_1_data_740 = .data:0x00000740; // type:object size:0x108 +lbl_1_data_848 = .data:0x00000848; // type:object size:0x108 +lbl_1_data_950 = .data:0x00000950; // type:object size:0x108 +lbl_1_data_A58 = .data:0x00000A58; // type:object size:0x30 +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x48 +lbl_1_data_AD0 = .data:0x00000AD0; // type:object size:0xC data:4byte +lbl_1_data_ADC = .data:0x00000ADC; // type:object size:0xC data:4byte +lbl_1_data_AE8 = .data:0x00000AE8; // type:object size:0x14 data:4byte +lbl_1_data_AFC = .data:0x00000AFC; // type:object size:0x18 +lbl_1_data_B14 = .data:0x00000B14; // type:object size:0x18 +lbl_1_data_B2C = .data:0x00000B2C; // type:object size:0x48 +lbl_1_data_B74 = .data:0x00000B74; // type:object size:0x30 +lbl_1_data_BA4 = .data:0x00000BA4; // type:object size:0x18 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0xC data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte +lbl_1_bss_2A = .bss:0x0000002A; // type:object size:0x2 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x2 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x8 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x18 +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:float +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x14 +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m404Dll/splits.txt b/config/GMPP01_00/rels/m404Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m404Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m404Dll/symbols.txt b/config/GMPP01_00/rels/m404Dll/symbols.txt new file mode 100644 index 00000000..3f46d237 --- /dev/null +++ b/config/GMPP01_00/rels/m404Dll/symbols.txt @@ -0,0 +1,155 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2DC +fn_1_37C = .text:0x0000037C; // type:function size:0x10 +fn_1_38C = .text:0x0000038C; // type:function size:0x10 +fn_1_39C = .text:0x0000039C; // type:function size:0x64 +fn_1_400 = .text:0x00000400; // type:function size:0x384 +fn_1_784 = .text:0x00000784; // type:function size:0x5C +fn_1_7E0 = .text:0x000007E0; // type:function size:0x2BC +fn_1_A9C = .text:0x00000A9C; // type:function size:0x234 +fn_1_CD0 = .text:0x00000CD0; // type:function size:0x30 +fn_1_D00 = .text:0x00000D00; // type:function size:0xEC +fn_1_DEC = .text:0x00000DEC; // type:function size:0x5C +fn_1_E48 = .text:0x00000E48; // type:function size:0x8C +fn_1_ED4 = .text:0x00000ED4; // type:function size:0x9C +fn_1_F70 = .text:0x00000F70; // type:function size:0x1F0 +fn_1_1160 = .text:0x00001160; // type:function size:0x1E4 +fn_1_1344 = .text:0x00001344; // type:function size:0x7B8 +fn_1_1AFC = .text:0x00001AFC; // type:function size:0x184 +fn_1_1C80 = .text:0x00001C80; // type:function size:0xA8 +fn_1_1D28 = .text:0x00001D28; // type:function size:0xD0 +fn_1_1DF8 = .text:0x00001DF8; // type:function size:0x38C +fn_1_2184 = .text:0x00002184; // type:function size:0xD38 +fn_1_2EBC = .text:0x00002EBC; // type:function size:0xB7C +fn_1_3A38 = .text:0x00003A38; // type:function size:0x3F4 +fn_1_3E2C = .text:0x00003E2C; // type:function size:0x104 +fn_1_3F30 = .text:0x00003F30; // type:function size:0x52C +fn_1_445C = .text:0x0000445C; // type:function size:0x44 +fn_1_44A0 = .text:0x000044A0; // type:function size:0x7DC +fn_1_4C7C = .text:0x00004C7C; // type:function size:0x2D0 +fn_1_4F4C = .text:0x00004F4C; // type:function size:0x32C +fn_1_5278 = .text:0x00005278; // type:function size:0x2C4 +fn_1_553C = .text:0x0000553C; // type:function size:0x5C +fn_1_5598 = .text:0x00005598; // type:function size:0x58 +fn_1_55F0 = .text:0x000055F0; // type:function size:0x4 +fn_1_55F4 = .text:0x000055F4; // type:function size:0x1AC +fn_1_57A0 = .text:0x000057A0; // type:function size:0x4 +fn_1_57A4 = .text:0x000057A4; // type:function size:0x140 +fn_1_58E4 = .text:0x000058E4; // type:function size:0x480 +fn_1_5D64 = .text:0x00005D64; // type:function size:0x110 +fn_1_5E74 = .text:0x00005E74; // type:function size:0x208 +fn_1_607C = .text:0x0000607C; // type:function size:0x1CC +fn_1_6248 = .text:0x00006248; // type:function size:0x1F8 +fn_1_6440 = .text:0x00006440; // type:function size:0x4C +fn_1_648C = .text:0x0000648C; // type:function size:0x250 +fn_1_66DC = .text:0x000066DC; // type:function size:0x5AC +_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:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:2byte +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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_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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x20 data:byte +lbl_1_rodata_11C = .rodata:0x0000011C; // type:object size:0x1 data:byte +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x1 data:byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x248 +lbl_1_data_248 = .data:0x00000248; // type:object size:0x260 +lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0x290 +lbl_1_data_738 = .data:0x00000738; // type:object size:0x38 data:float +lbl_1_data_770 = .data:0x00000770; // type:object size:0xC data:float +lbl_1_data_77C = .data:0x0000077C; // type:object size:0xC data:float +lbl_1_data_788 = .data:0x00000788; // type:object size:0x4 +lbl_1_data_78C = .data:0x0000078C; // type:object size:0xC +lbl_1_data_798 = .data:0x00000798; // type:object size:0xC +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x24 +lbl_1_data_7C8 = .data:0x000007C8; // type:object size:0x4 data:4byte +jumptable_1_data_7CC = .data:0x000007CC; // type:object size:0x28 scope:local +lbl_1_data_7F4 = .data:0x000007F4; // type:object size:0x1C data:string +lbl_1_data_810 = .data:0x00000810; // type:object size:0xC +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x30 +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x20 +lbl_1_data_86C = .data:0x0000086C; // type:object size:0x20 +lbl_1_data_88C = .data:0x0000088C; // type:object size:0x4 data:4byte +lbl_1_data_890 = .data:0x00000890; // type:object size:0x28 +lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x20 +lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x10 +lbl_1_data_8E8 = .data:0x000008E8; // type:object size:0xC +lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x8 data:wstring +lbl_1_data_8FC = .data:0x000008FC; // type:object size:0x18 +lbl_1_data_914 = .data:0x00000914; // type:object size:0x1C +lbl_1_data_930 = .data:0x00000930; // type:object size:0x20 +lbl_1_data_950 = .data:0x00000950; // type:object size:0x20 +lbl_1_data_970 = .data:0x00000970; // type:object size:0x7 data:string +lbl_1_data_977 = .data:0x00000977; // type:object size:0x7 data:string +lbl_1_data_97E = .data:0x0000097E; // type:object size:0x7 data:string +lbl_1_data_985 = .data:0x00000985; // type:object size:0x7 data:string +lbl_1_data_98C = .data:0x0000098C; // type:object size:0x10 +lbl_1_data_99C = .data:0x0000099C; // type:object size:0x10 +lbl_1_data_9AC = .data:0x000009AC; // type:object size:0x30 +lbl_1_data_9DC = .data:0x000009DC; // type:object size:0x18 data:4byte +lbl_1_data_9F4 = .data:0x000009F4; // type:object size:0x18 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0xC data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x10 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x10 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m405Dll/splits.txt b/config/GMPP01_00/rels/m405Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m405Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m405Dll/symbols.txt b/config/GMPP01_00/rels/m405Dll/symbols.txt new file mode 100644 index 00000000..0dccfd63 --- /dev/null +++ b/config/GMPP01_00/rels/m405Dll/symbols.txt @@ -0,0 +1,256 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x204 +fn_1_784 = .text:0x00000784; // type:function size:0x240 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 +fn_1_A18 = .text:0x00000A18; // type:function size:0x10C +fn_1_B24 = .text:0x00000B24; // type:function size:0x680 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1300 = .text:0x00001300; // type:function size:0x8C +fn_1_138C = .text:0x0000138C; // type:function size:0x334 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C +fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_2364 = .text:0x00002364; // type:function size:0xCC +fn_1_2430 = .text:0x00002430; // type:function size:0x88 +fn_1_24B8 = .text:0x000024B8; // type:function size:0x20C +fn_1_26C4 = .text:0x000026C4; // type:function size:0xF8 +fn_1_27BC = .text:0x000027BC; // type:function size:0x2A0 +fn_1_2A5C = .text:0x00002A5C; // type:function size:0xCF8 +fn_1_3754 = .text:0x00003754; // type:function size:0x778 +fn_1_3ECC = .text:0x00003ECC; // type:function size:0x24 +fn_1_3EF0 = .text:0x00003EF0; // type:function size:0xE4 +fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x6DC +fn_1_46B0 = .text:0x000046B0; // type:function size:0x828 +fn_1_4ED8 = .text:0x00004ED8; // type:function size:0x4DC +fn_1_53B4 = .text:0x000053B4; // type:function size:0x12C +fn_1_54E0 = .text:0x000054E0; // type:function size:0x4C +fn_1_552C = .text:0x0000552C; // type:function size:0xE8 +fn_1_5614 = .text:0x00005614; // type:function size:0xF8 +_prolog = .text:0x0000570C; // type:function size:0x54 scope:global +_epilog = .text:0x00005760; // type:function size:0x4C scope:global +fn_1_57AC = .text:0x000057AC; // type:function size:0xA4 +fn_1_5850 = .text:0x00005850; // type:function size:0x288 +fn_1_5AD8 = .text:0x00005AD8; // type:function size:0x214 +fn_1_5CEC = .text:0x00005CEC; // type:function size:0x90 +fn_1_5D7C = .text:0x00005D7C; // type:function size:0x274 +fn_1_5FF0 = .text:0x00005FF0; // type:function size:0x57C +fn_1_656C = .text:0x0000656C; // type:function size:0x26C +fn_1_67D8 = .text:0x000067D8; // type:function size:0xA4 +fn_1_687C = .text:0x0000687C; // type:function size:0x330 +fn_1_6BAC = .text:0x00006BAC; // type:function size:0xD90 +fn_1_793C = .text:0x0000793C; // type:function size:0x828 +fn_1_8164 = .text:0x00008164; // type:function size:0x93C +fn_1_8AA0 = .text:0x00008AA0; // type:function size:0x798 +fn_1_9238 = .text:0x00009238; // type:function size:0x1A50 +fn_1_AC88 = .text:0x0000AC88; // type:function size:0x3CC +fn_1_B054 = .text:0x0000B054; // type:function size:0x4EC +fn_1_B540 = .text:0x0000B540; // type:function size:0x16C +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x1 data:byte +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x30 data:2byte +lbl_1_data_40 = .data:0x00000040; // type:object size:0x60 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x48 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x1 data:byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x14 +lbl_1_data_100 = .data:0x00000100; // type:object size:0xC +lbl_1_data_10C = .data:0x0000010C; // type:object size:0xC data:4byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0xC data:4byte +lbl_1_data_124 = .data:0x00000124; // type:object size:0xC data:4byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0xC data:4byte +lbl_1_data_13C = .data:0x0000013C; // type:object size:0xC data:4byte +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC data:4byte +lbl_1_data_154 = .data:0x00000154; // type:object size:0xC +lbl_1_data_160 = .data:0x00000160; // type:object size:0xC +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 +lbl_1_data_170 = .data:0x00000170; // type:object size:0xC +lbl_1_data_17C = .data:0x0000017C; // type:object size:0xC +lbl_1_data_188 = .data:0x00000188; // type:object size:0x100 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x20 +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x10 +lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x50 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x18 data:4byte +lbl_1_data_328 = .data:0x00000328; // type:object size:0x14 +lbl_1_data_33C = .data:0x0000033C; // type:object size:0xA +lbl_1_data_346 = .data:0x00000346; // type:object size:0xA +lbl_1_data_350 = .data:0x00000350; // type:object size:0x8 +lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 +lbl_1_data_360 = .data:0x00000360; // type:object size:0x8 +lbl_1_data_368 = .data:0x00000368; // type:object size:0x8 +lbl_1_data_370 = .data:0x00000370; // type:object size:0x50 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x50 +lbl_1_data_410 = .data:0x00000410; // type:object size:0xC data:string +lbl_1_data_41C = .data:0x0000041C; // type:object size:0x16 data:string +lbl_1_data_432 = .data:0x00000432; // type:object size:0x1D data:string +lbl_1_data_44F = .data:0x0000044F; // type:object size:0x1D +jumptable_1_data_46C = .data:0x0000046C; // type:object size:0x24 scope:local +lbl_1_data_490 = .data:0x00000490; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x18 data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x18 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x18 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x18 data:float +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:float +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:float +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:float +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x2 data:2byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x2 data:2byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x1 data:byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x500 data:float +lbl_1_bss_5AC = .bss:0x000005AC; // type:object size:0x2C data:4byte +lbl_1_bss_5D8 = .bss:0x000005D8; // type:object size:0x4 data:4byte +lbl_1_bss_5DC = .bss:0x000005DC; // type:object size:0x4 data:4byte +lbl_1_bss_5E0 = .bss:0x000005E0; // type:object size:0x4 data:4byte +lbl_1_bss_5E4 = .bss:0x000005E4; // type:object size:0x4 data:4byte +lbl_1_bss_5E8 = .bss:0x000005E8; // type:object size:0x100 +lbl_1_bss_6E8 = .bss:0x000006E8; // type:object size:0x40 data:4byte +lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x4 data:float +lbl_1_bss_72C = .bss:0x0000072C; // type:object size:0x4 data:4byte +lbl_1_bss_730 = .bss:0x00000730; // type:object size:0x4 data:4byte +lbl_1_bss_734 = .bss:0x00000734; // type:object size:0x2 data:2byte +lbl_1_bss_736 = .bss:0x00000736; // type:object size:0x2 data:2byte +lbl_1_bss_738 = .bss:0x00000738; // type:object size:0x4 data:4byte +lbl_1_bss_73C = .bss:0x0000073C; // type:object size:0x4 data:4byte +lbl_1_bss_740 = .bss:0x00000740; // type:object size:0x4 data:4byte +lbl_1_bss_744 = .bss:0x00000744; // type:object size:0xC data:float +lbl_1_bss_750 = .bss:0x00000750; // type:object size:0xC data:4byte +lbl_1_bss_75C = .bss:0x0000075C; // type:object size:0xC data:float +lbl_1_bss_768 = .bss:0x00000768; // type:object size:0xC data:4byte +lbl_1_bss_774 = .bss:0x00000774; // type:object size:0x4 data:4byte +lbl_1_bss_778 = .bss:0x00000778; // type:object size:0x18 data:4byte +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0xC data:4byte diff --git a/config/GMPP01_00/rels/m406Dll/splits.txt b/config/GMPP01_00/rels/m406Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m406Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m406Dll/symbols.txt b/config/GMPP01_00/rels/m406Dll/symbols.txt new file mode 100644 index 00000000..410427a0 --- /dev/null +++ b/config/GMPP01_00/rels/m406Dll/symbols.txt @@ -0,0 +1,438 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x318 +fn_1_3B8 = .text:0x000003B8; // type:function size:0x54 +fn_1_40C = .text:0x0000040C; // type:function size:0xD00 +fn_1_110C = .text:0x0000110C; // type:function size:0x5C +fn_1_1168 = .text:0x00001168; // type:function size:0xC4 +fn_1_122C = .text:0x0000122C; // type:function size:0x10 +fn_1_123C = .text:0x0000123C; // type:function size:0x38 +fn_1_1274 = .text:0x00001274; // type:function size:0x10 +fn_1_1284 = .text:0x00001284; // type:function size:0x38 +fn_1_12BC = .text:0x000012BC; // type:function size:0x84 +fn_1_1340 = .text:0x00001340; // type:function size:0x1DC +fn_1_151C = .text:0x0000151C; // type:function size:0x4 +fn_1_1520 = .text:0x00001520; // type:function size:0x4 +fn_1_1524 = .text:0x00001524; // type:function size:0xAC +fn_1_15D0 = .text:0x000015D0; // type:function size:0x26C +fn_1_183C = .text:0x0000183C; // type:function size:0x35C +fn_1_1B98 = .text:0x00001B98; // type:function size:0x10 +fn_1_1BA8 = .text:0x00001BA8; // type:function size:0x118 +fn_1_1CC0 = .text:0x00001CC0; // type:function size:0x250 +fn_1_1F10 = .text:0x00001F10; // type:function size:0x3F8 +fn_1_2308 = .text:0x00002308; // type:function size:0x624 +fn_1_292C = .text:0x0000292C; // type:function size:0x2C0 +fn_1_2BEC = .text:0x00002BEC; // type:function size:0x38 +fn_1_2C24 = .text:0x00002C24; // type:function size:0x440 +fn_1_3064 = .text:0x00003064; // type:function size:0xF4 +fn_1_3158 = .text:0x00003158; // type:function size:0xF2C +fn_1_4084 = .text:0x00004084; // type:function size:0x4E4 +fn_1_4568 = .text:0x00004568; // type:function size:0x54 +fn_1_45BC = .text:0x000045BC; // type:function size:0x3A8 +fn_1_4964 = .text:0x00004964; // type:function size:0x1810 +fn_1_6174 = .text:0x00006174; // type:function size:0x190 +fn_1_6304 = .text:0x00006304; // type:function size:0x1F4 +fn_1_64F8 = .text:0x000064F8; // type:function size:0x1FC +fn_1_66F4 = .text:0x000066F4; // type:function size:0xD8 +fn_1_67CC = .text:0x000067CC; // type:function size:0x1A0 +fn_1_696C = .text:0x0000696C; // type:function size:0x54 +fn_1_69C0 = .text:0x000069C0; // type:function size:0x84 +fn_1_6A44 = .text:0x00006A44; // type:function size:0x118 +fn_1_6B5C = .text:0x00006B5C; // type:function size:0x58 +fn_1_6BB4 = .text:0x00006BB4; // type:function size:0x370 +fn_1_6F24 = .text:0x00006F24; // type:function size:0xD8 +fn_1_6FFC = .text:0x00006FFC; // type:function size:0x180 +fn_1_717C = .text:0x0000717C; // type:function size:0x48 +fn_1_71C4 = .text:0x000071C4; // type:function size:0x134 +fn_1_72F8 = .text:0x000072F8; // type:function size:0x3B0 +fn_1_76A8 = .text:0x000076A8; // type:function size:0x70 +fn_1_7718 = .text:0x00007718; // type:function size:0xD8 +fn_1_77F0 = .text:0x000077F0; // type:function size:0x1C0 +fn_1_79B0 = .text:0x000079B0; // type:function size:0x48 +fn_1_79F8 = .text:0x000079F8; // type:function size:0x134 +fn_1_7B2C = .text:0x00007B2C; // type:function size:0x70 +fn_1_7B9C = .text:0x00007B9C; // type:function size:0xB0 +fn_1_7C4C = .text:0x00007C4C; // type:function size:0x160 +fn_1_7DAC = .text:0x00007DAC; // type:function size:0x4 +fn_1_7DB0 = .text:0x00007DB0; // type:function size:0x120 +fn_1_7ED0 = .text:0x00007ED0; // type:function size:0xB0 +fn_1_7F80 = .text:0x00007F80; // type:function size:0x180 +fn_1_8100 = .text:0x00008100; // type:function size:0x4 +fn_1_8104 = .text:0x00008104; // type:function size:0x140 +fn_1_8244 = .text:0x00008244; // type:function size:0x84 +fn_1_82C8 = .text:0x000082C8; // type:function size:0xCD0 +fn_1_8F98 = .text:0x00008F98; // type:function size:0x248 +fn_1_91E0 = .text:0x000091E0; // type:function size:0x2DC +fn_1_94BC = .text:0x000094BC; // type:function size:0x4 +fn_1_94C0 = .text:0x000094C0; // type:function size:0xAB8 +fn_1_9F78 = .text:0x00009F78; // type:function size:0x300 +fn_1_A278 = .text:0x0000A278; // type:function size:0x50 +fn_1_A2C8 = .text:0x0000A2C8; // type:function size:0xAEC +fn_1_ADB4 = .text:0x0000ADB4; // type:function size:0x350 +fn_1_B104 = .text:0x0000B104; // type:function size:0xDC +fn_1_B1E0 = .text:0x0000B1E0; // type:function size:0x7C +fn_1_B25C = .text:0x0000B25C; // type:function size:0x1C0 +fn_1_B41C = .text:0x0000B41C; // type:function size:0x54 +fn_1_B470 = .text:0x0000B470; // type:function size:0x4 +fn_1_B474 = .text:0x0000B474; // type:function size:0x488 +fn_1_B8FC = .text:0x0000B8FC; // type:function size:0x31C +fn_1_BC18 = .text:0x0000BC18; // type:function size:0x8DC +fn_1_C4F4 = .text:0x0000C4F4; // type:function size:0x378 +fn_1_C86C = .text:0x0000C86C; // type:function size:0x4C8 +fn_1_CD34 = .text:0x0000CD34; // type:function size:0xA4 +fn_1_CDD8 = .text:0x0000CDD8; // type:function size:0x14C +fn_1_CF24 = .text:0x0000CF24; // type:function size:0x74 +fn_1_CF98 = .text:0x0000CF98; // type:function size:0xD4 +fn_1_D06C = .text:0x0000D06C; // type:function size:0xD0 +fn_1_D13C = .text:0x0000D13C; // type:function size:0x34C +fn_1_D488 = .text:0x0000D488; // type:function size:0x90 +fn_1_D518 = .text:0x0000D518; // type:function size:0xB4 +fn_1_D5CC = .text:0x0000D5CC; // type:function size:0x90 +fn_1_D65C = .text:0x0000D65C; // type:function size:0x254 +fn_1_D8B0 = .text:0x0000D8B0; // type:function size:0x5C +fn_1_D90C = .text:0x0000D90C; // type:function size:0x490 +fn_1_DD9C = .text:0x0000DD9C; // type:function size:0xE4 +fn_1_DE80 = .text:0x0000DE80; // type:function size:0x3B4 +fn_1_E234 = .text:0x0000E234; // type:function size:0xF80 +fn_1_F1B4 = .text:0x0000F1B4; // type:function size:0x500 +fn_1_F6B4 = .text:0x0000F6B4; // type:function size:0x3BC +fn_1_FA70 = .text:0x0000FA70; // type:function size:0xC0C +fn_1_1067C = .text:0x0001067C; // type:function size:0xE8 +fn_1_10764 = .text:0x00010764; // type:function size:0x9E4 +fn_1_11148 = .text:0x00011148; // type:function size:0x448 +fn_1_11590 = .text:0x00011590; // type:function size:0x31C +fn_1_118AC = .text:0x000118AC; // type:function size:0x228 +fn_1_11AD4 = .text:0x00011AD4; // type:function size:0x5E0 +fn_1_120B4 = .text:0x000120B4; // type:function size:0x1D0 +fn_1_12284 = .text:0x00012284; // type:function size:0xDC +fn_1_12360 = .text:0x00012360; // type:function size:0x4EC +fn_1_1284C = .text:0x0001284C; // type:function size:0x5C +fn_1_128A8 = .text:0x000128A8; // type:function size:0x22C +fn_1_12AD4 = .text:0x00012AD4; // type:function size:0xD4 +fn_1_12BA8 = .text:0x00012BA8; // type:function size:0x48 +fn_1_12BF0 = .text:0x00012BF0; // type:function size:0x38 +fn_1_12C28 = .text:0x00012C28; // type:function size:0x8C +fn_1_12CB4 = .text:0x00012CB4; // type:function size:0xAE4 +fn_1_13798 = .text:0x00013798; // type:function size:0x4 +fn_1_1379C = .text:0x0001379C; // type:function size:0x3DC +fn_1_13B78 = .text:0x00013B78; // type:function size:0x6C +fn_1_13BE4 = .text:0x00013BE4; // type:function size:0x11C +fn_1_13D00 = .text:0x00013D00; // type:function size:0x7E4 +fn_1_144E4 = .text:0x000144E4; // type:function size:0x330 +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // 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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x1 data:byte +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x8C data:float +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x24 +jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x40 scope:local +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x348 +lbl_1_data_438 = .data:0x00000438; // type:object size:0x348 +lbl_1_data_780 = .data:0x00000780; // type:object size:0x24 data:float +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x2 data:2byte +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0x1C +lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x1C +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x18 +lbl_1_data_7F8 = .data:0x000007F8; // type:object size:0xC +lbl_1_data_804 = .data:0x00000804; // type:object size:0xC +lbl_1_data_810 = .data:0x00000810; // type:object size:0x4 +lbl_1_data_814 = .data:0x00000814; // type:object size:0xC +lbl_1_data_820 = .data:0x00000820; // type:object size:0xC +lbl_1_data_82C = .data:0x0000082C; // type:object size:0xC +lbl_1_data_838 = .data:0x00000838; // type:object size:0xC +lbl_1_data_844 = .data:0x00000844; // type:object size:0xC +lbl_1_data_850 = .data:0x00000850; // type:object size:0x20 +lbl_1_data_870 = .data:0x00000870; // type:object size:0x1F data:string +lbl_1_data_88F = .data:0x0000088F; // type:object size:0x1 data:byte +lbl_1_data_893 = .data:0x00000893; // type:object size:0x1 data:byte +lbl_1_data_897 = .data:0x00000897; // type:object size:0x1 data:byte +lbl_1_data_89B = .data:0x0000089B; // type:object size:0x1 data:byte +lbl_1_data_89F = .data:0x0000089F; // type:object size:0x5 data:byte +lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x10 +lbl_1_data_8B4 = .data:0x000008B4; // type:object size:0x10 +lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0xC +lbl_1_data_8D0 = .data:0x000008D0; // type:object size:0xC +lbl_1_data_8DC = .data:0x000008DC; // type:object size:0x4 +lbl_1_data_8E0 = .data:0x000008E0; // type:object size:0x30 +lbl_1_data_910 = .data:0x00000910; // type:object size:0x20 +lbl_1_data_930 = .data:0x00000930; // type:object size:0x30 +lbl_1_data_960 = .data:0x00000960; // type:object size:0x348 +lbl_1_data_CA8 = .data:0x00000CA8; // type:object size:0x348 +lbl_1_data_FF0 = .data:0x00000FF0; // type:object size:0x10 +lbl_1_data_1000 = .data:0x00001000; // type:object size:0x19 data:string +lbl_1_data_1019 = .data:0x00001019; // type:object size:0x19 data:string +lbl_1_data_1032 = .data:0x00001032; // type:object size:0x1A data:string +lbl_1_data_104C = .data:0x0000104C; // type:object size:0x1C +lbl_1_data_1068 = .data:0x00001068; // type:object size:0x10 +lbl_1_data_1078 = .data:0x00001078; // type:object size:0x28 +lbl_1_data_10A0 = .data:0x000010A0; // type:object size:0x80 +lbl_1_data_1120 = .data:0x00001120; // type:object size:0x20 +lbl_1_data_1140 = .data:0x00001140; // type:object size:0x8 +lbl_1_data_1148 = .data:0x00001148; // type:object size:0x1C data:string +lbl_1_data_1164 = .data:0x00001164; // type:object size:0x90 +lbl_1_data_11F4 = .data:0x000011F4; // type:object size:0x4 data:4byte +lbl_1_data_11F8 = .data:0x000011F8; // type:object size:0x20 +lbl_1_data_1218 = .data:0x00001218; // type:object size:0x18 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0xC data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x50 +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x8 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x18 data:float +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x8 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:float +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0xC0 +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x4 data:4byte +lbl_1_bss_1C8 = .bss:0x000001C8; // type:object size:0x4 data:4byte +lbl_1_bss_1CC = .bss:0x000001CC; // type:object size:0x4 data:4byte +lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC +lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0xC +lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x2 data:2byte +lbl_1_bss_1F6 = .bss:0x000001F6; // type:object size:0x2 data:2byte +lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m407dll/splits.txt b/config/GMPP01_00/rels/m407dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m407dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m407dll/symbols.txt b/config/GMPP01_00/rels/m407dll/symbols.txt new file mode 100644 index 00000000..51e3c09c --- /dev/null +++ b/config/GMPP01_00/rels/m407dll/symbols.txt @@ -0,0 +1,271 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x54 +fn_1_F4 = .text:0x000000F4; // type:function size:0xA0 +fn_1_194 = .text:0x00000194; // type:function size:0x50 +fn_1_1E4 = .text:0x000001E4; // type:function size:0x54 +fn_1_238 = .text:0x00000238; // type:function size:0x54 +fn_1_28C = .text:0x0000028C; // type:function size:0x54 +fn_1_2E0 = .text:0x000002E0; // type:function size:0x54 +fn_1_334 = .text:0x00000334; // type:function size:0x54 +fn_1_388 = .text:0x00000388; // type:function size:0x3C +fn_1_3C4 = .text:0x000003C4; // type:function size:0x40 +fn_1_404 = .text:0x00000404; // type:function size:0xBC +fn_1_4C0 = .text:0x000004C0; // type:function size:0x48 +fn_1_508 = .text:0x00000508; // type:function size:0x34 +fn_1_53C = .text:0x0000053C; // type:function size:0x2C +fn_1_568 = .text:0x00000568; // type:function size:0xC0 +fn_1_628 = .text:0x00000628; // type:function size:0x24 +fn_1_64C = .text:0x0000064C; // type:function size:0x350 +fn_1_99C = .text:0x0000099C; // type:function size:0x80 +fn_1_A1C = .text:0x00000A1C; // type:function size:0x6C +fn_1_A88 = .text:0x00000A88; // type:function size:0x4 +fn_1_A8C = .text:0x00000A8C; // type:function size:0x1CC +fn_1_C58 = .text:0x00000C58; // type:function size:0x9C +fn_1_CF4 = .text:0x00000CF4; // type:function size:0xC0 +fn_1_DB4 = .text:0x00000DB4; // type:function size:0x1D8 +fn_1_F8C = .text:0x00000F8C; // type:function size:0xE8 +fn_1_1074 = .text:0x00001074; // type:function size:0x158 +fn_1_11CC = .text:0x000011CC; // type:function size:0x218 +fn_1_13E4 = .text:0x000013E4; // type:function size:0x7C +fn_1_1460 = .text:0x00001460; // type:function size:0x90 +fn_1_14F0 = .text:0x000014F0; // type:function size:0xE8 +fn_1_15D8 = .text:0x000015D8; // type:function size:0x54 +fn_1_162C = .text:0x0000162C; // type:function size:0x460 +fn_1_1A8C = .text:0x00001A8C; // type:function size:0x90 +fn_1_1B1C = .text:0x00001B1C; // type:function size:0x18C +fn_1_1CA8 = .text:0x00001CA8; // type:function size:0x4 +fn_1_1CAC = .text:0x00001CAC; // type:function size:0x28 +fn_1_1CD4 = .text:0x00001CD4; // type:function size:0x34 +fn_1_1D08 = .text:0x00001D08; // type:function size:0x28 +fn_1_1D30 = .text:0x00001D30; // type:function size:0x34 +fn_1_1D64 = .text:0x00001D64; // type:function size:0x10 +fn_1_1D74 = .text:0x00001D74; // type:function size:0x14 +fn_1_1D88 = .text:0x00001D88; // type:function size:0x28 +fn_1_1DB0 = .text:0x00001DB0; // type:function size:0x16C +fn_1_1F1C = .text:0x00001F1C; // type:function size:0x108 +fn_1_2024 = .text:0x00002024; // type:function size:0x330 +fn_1_2354 = .text:0x00002354; // type:function size:0x19C +fn_1_24F0 = .text:0x000024F0; // type:function size:0x74 +fn_1_2564 = .text:0x00002564; // type:function size:0x5C +fn_1_25C0 = .text:0x000025C0; // type:function size:0x10C +fn_1_26CC = .text:0x000026CC; // type:function size:0xA4 +fn_1_2770 = .text:0x00002770; // type:function size:0x110 +fn_1_2880 = .text:0x00002880; // type:function size:0x38 +fn_1_28B8 = .text:0x000028B8; // type:function size:0x1C +fn_1_28D4 = .text:0x000028D4; // type:function size:0x10 +fn_1_28E4 = .text:0x000028E4; // type:function size:0x28 +fn_1_290C = .text:0x0000290C; // type:function size:0x24 +fn_1_2930 = .text:0x00002930; // type:function size:0x24C +fn_1_2B7C = .text:0x00002B7C; // type:function size:0x67C +fn_1_31F8 = .text:0x000031F8; // type:function size:0x168 +fn_1_3360 = .text:0x00003360; // type:function size:0x4 +fn_1_3364 = .text:0x00003364; // type:function size:0x140 +fn_1_34A4 = .text:0x000034A4; // type:function size:0x22C +fn_1_36D0 = .text:0x000036D0; // type:function size:0xE0 +fn_1_37B0 = .text:0x000037B0; // type:function size:0x318 +fn_1_3AC8 = .text:0x00003AC8; // type:function size:0xA0 +fn_1_3B68 = .text:0x00003B68; // type:function size:0x50 +fn_1_3BB8 = .text:0x00003BB8; // type:function size:0x170 +fn_1_3D28 = .text:0x00003D28; // type:function size:0x24 +fn_1_3D4C = .text:0x00003D4C; // type:function size:0xE8 +fn_1_3E34 = .text:0x00003E34; // type:function size:0x148 +fn_1_3F7C = .text:0x00003F7C; // type:function size:0x74 +fn_1_3FF0 = .text:0x00003FF0; // type:function size:0x4 +fn_1_3FF4 = .text:0x00003FF4; // type:function size:0x100 +fn_1_40F4 = .text:0x000040F4; // type:function size:0xD8 +fn_1_41CC = .text:0x000041CC; // type:function size:0x328 +fn_1_44F4 = .text:0x000044F4; // type:function size:0x50 +fn_1_4544 = .text:0x00004544; // type:function size:0x118 +fn_1_465C = .text:0x0000465C; // type:function size:0x24 +fn_1_4680 = .text:0x00004680; // type:function size:0x6C +fn_1_46EC = .text:0x000046EC; // type:function size:0x11C +fn_1_4808 = .text:0x00004808; // type:function size:0x50 +fn_1_4858 = .text:0x00004858; // type:function size:0x4 +fn_1_485C = .text:0x0000485C; // type:function size:0x124 +fn_1_4980 = .text:0x00004980; // type:function size:0x1FC +fn_1_4B7C = .text:0x00004B7C; // type:function size:0xC0 +fn_1_4C3C = .text:0x00004C3C; // type:function size:0x30 +fn_1_4C6C = .text:0x00004C6C; // type:function size:0xA0 +fn_1_4D0C = .text:0x00004D0C; // type:function size:0x48 +fn_1_4D54 = .text:0x00004D54; // type:function size:0x138 +fn_1_4E8C = .text:0x00004E8C; // type:function size:0x11C +fn_1_4FA8 = .text:0x00004FA8; // type:function size:0x134 +fn_1_50DC = .text:0x000050DC; // type:function size:0xFC +fn_1_51D8 = .text:0x000051D8; // type:function size:0xC8 +fn_1_52A0 = .text:0x000052A0; // type:function size:0x10C +fn_1_53AC = .text:0x000053AC; // type:function size:0x1BC +fn_1_5568 = .text:0x00005568; // type:function size:0xBC +fn_1_5624 = .text:0x00005624; // type:function size:0x1D4 +fn_1_57F8 = .text:0x000057F8; // type:function size:0x27C +fn_1_5A74 = .text:0x00005A74; // type:function size:0x130 +fn_1_5BA4 = .text:0x00005BA4; // type:function size:0xAC +fn_1_5C50 = .text:0x00005C50; // type:function size:0x270 +fn_1_5EC0 = .text:0x00005EC0; // type:function size:0x74 +fn_1_5F34 = .text:0x00005F34; // type:function size:0x50 +fn_1_5F84 = .text:0x00005F84; // type:function size:0x24 +fn_1_5FA8 = .text:0x00005FA8; // type:function size:0x30 +fn_1_5FD8 = .text:0x00005FD8; // type:function size:0x1BC +fn_1_6194 = .text:0x00006194; // type:function size:0x78 +fn_1_620C = .text:0x0000620C; // type:function size:0x88 +fn_1_6294 = .text:0x00006294; // type:function size:0x164 +_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_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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:0x20 +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:4byte +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0xC data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x100 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x20 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x1C +lbl_1_data_13C = .data:0x0000013C; // type:object size:0x20 +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x8 +lbl_1_data_18C = .data:0x0000018C; // type:object size:0xC +lbl_1_data_198 = .data:0x00000198; // type:object size:0x34 data:4byte +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x30 +lbl_1_data_1FC = .data:0x000001FC; // type:object size:0xC data:float +lbl_1_data_208 = .data:0x00000208; // type:object size:0xC +lbl_1_data_214 = .data:0x00000214; // type:object size:0x4 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x10 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x10 data:4byte +lbl_1_data_238 = .data:0x00000238; // type:object size:0x20 data:4byte +lbl_1_data_258 = .data:0x00000258; // type:object size:0x14 +lbl_1_data_26C = .data:0x0000026C; // type:object size:0xC +lbl_1_data_278 = .data:0x00000278; // type:object size:0x10 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x14 +lbl_1_data_29C = .data:0x0000029C; // type:object size:0xC +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x34 +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0x10 +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xC +lbl_1_data_2F8 = .data:0x000002F8; // type:object size:0xC +lbl_1_data_304 = .data:0x00000304; // type:object size:0x4 +lbl_1_data_308 = .data:0x00000308; // type:object size:0xC +lbl_1_data_314 = .data:0x00000314; // type:object size:0xC +lbl_1_data_320 = .data:0x00000320; // type:object size:0x4 +lbl_1_data_324 = .data:0x00000324; // type:object size:0xC +lbl_1_data_330 = .data:0x00000330; // type:object size:0xC +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 +lbl_1_data_340 = .data:0x00000340; // type:object size:0xC +lbl_1_data_34C = .data:0x0000034C; // type:object size:0xC +lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 +lbl_1_data_360 = .data:0x00000360; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x8 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x10 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x2 data:2byte +lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x2A +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_66 = .bss:0x00000066; // type:object size:0x2 data:2byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x1E30 data:2byte +lbl_1_bss_1E98 = .bss:0x00001E98; // type:object size:0xF18 +lbl_1_bss_2DB0 = .bss:0x00002DB0; // type:object size:0xA10 +lbl_1_bss_37C0 = .bss:0x000037C0; // type:object size:0x8 data:4byte +lbl_1_bss_37C8 = .bss:0x000037C8; // type:object size:0x10 +lbl_1_bss_37D8 = .bss:0x000037D8; // type:object size:0x8 data:4byte +lbl_1_bss_37E0 = .bss:0x000037E0; // type:object size:0x190 +lbl_1_bss_3970 = .bss:0x00003970; // type:object size:0x8 data:4byte +lbl_1_bss_3978 = .bss:0x00003978; // type:object size:0x2 data:2byte +lbl_1_bss_397C = .bss:0x0000397C; // type:object size:0x4 data:4byte +lbl_1_bss_3980 = .bss:0x00003980; // type:object size:0x8 data:4byte +lbl_1_bss_3988 = .bss:0x00003988; // type:object size:0x4 data:4byte +lbl_1_bss_398C = .bss:0x0000398C; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m408Dll/splits.txt b/config/GMPP01_00/rels/m408Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m408Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m408Dll/symbols.txt b/config/GMPP01_00/rels/m408Dll/symbols.txt new file mode 100644 index 00000000..650a8242 --- /dev/null +++ b/config/GMPP01_00/rels/m408Dll/symbols.txt @@ -0,0 +1,548 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x47C +fn_1_51C = .text:0x0000051C; // type:function size:0x50 +fn_1_56C = .text:0x0000056C; // type:function size:0x438 +fn_1_9A4 = .text:0x000009A4; // type:function size:0x4C +fn_1_9F0 = .text:0x000009F0; // type:function size:0x50 +fn_1_A40 = .text:0x00000A40; // type:function size:0x298 +fn_1_CD8 = .text:0x00000CD8; // type:function size:0x220 +fn_1_EF8 = .text:0x00000EF8; // type:function size:0x3A8 +fn_1_12A0 = .text:0x000012A0; // type:function size:0x1EC +fn_1_148C = .text:0x0000148C; // type:function size:0x434 +fn_1_18C0 = .text:0x000018C0; // type:function size:0x80 +fn_1_1940 = .text:0x00001940; // type:function size:0x120 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x98 +fn_1_1AF8 = .text:0x00001AF8; // type:function size:0xF0 +fn_1_1BE8 = .text:0x00001BE8; // type:function size:0x26C +fn_1_1E54 = .text:0x00001E54; // type:function size:0x68 +fn_1_1EBC = .text:0x00001EBC; // type:function size:0x718 +fn_1_25D4 = .text:0x000025D4; // type:function size:0x110 +fn_1_26E4 = .text:0x000026E4; // type:function size:0x8C8 +fn_1_2FAC = .text:0x00002FAC; // type:function size:0x924 +fn_1_38D0 = .text:0x000038D0; // type:function size:0x5B0 +fn_1_3E80 = .text:0x00003E80; // type:function size:0xBD8 +fn_1_4A58 = .text:0x00004A58; // type:function size:0x640 +fn_1_5098 = .text:0x00005098; // type:function size:0x44C +fn_1_54E4 = .text:0x000054E4; // type:function size:0x1A0 +fn_1_5684 = .text:0x00005684; // type:function size:0x41C +fn_1_5AA0 = .text:0x00005AA0; // type:function size:0x14 +fn_1_5AB4 = .text:0x00005AB4; // type:function size:0x318 +fn_1_5DCC = .text:0x00005DCC; // type:function size:0x430 +fn_1_61FC = .text:0x000061FC; // type:function size:0x344 +fn_1_6540 = .text:0x00006540; // type:function size:0x284 +fn_1_67C4 = .text:0x000067C4; // type:function size:0xA4 +fn_1_6868 = .text:0x00006868; // type:function size:0x10 +fn_1_6878 = .text:0x00006878; // type:function size:0x10 +fn_1_6888 = .text:0x00006888; // type:function size:0x10 +fn_1_6898 = .text:0x00006898; // type:function size:0x4 +fn_1_689C = .text:0x0000689C; // type:function size:0x8 +fn_1_68A4 = .text:0x000068A4; // type:function size:0x4 +fn_1_68A8 = .text:0x000068A8; // type:function size:0x1C +fn_1_68C4 = .text:0x000068C4; // type:function size:0x364 +fn_1_6C28 = .text:0x00006C28; // type:function size:0x324 +fn_1_6F4C = .text:0x00006F4C; // type:function size:0x66C +fn_1_75B8 = .text:0x000075B8; // type:function size:0x260 +fn_1_7818 = .text:0x00007818; // type:function size:0xC0 +fn_1_78D8 = .text:0x000078D8; // type:function size:0x748 +fn_1_8020 = .text:0x00008020; // type:function size:0x15C +fn_1_817C = .text:0x0000817C; // type:function size:0x348 +fn_1_84C4 = .text:0x000084C4; // type:function size:0x378 +fn_1_883C = .text:0x0000883C; // type:function size:0x11C +fn_1_8958 = .text:0x00008958; // type:function size:0xC8 +fn_1_8A20 = .text:0x00008A20; // type:function size:0x58C +fn_1_8FAC = .text:0x00008FAC; // type:function size:0x568 +fn_1_9514 = .text:0x00009514; // type:function size:0x25C +fn_1_9770 = .text:0x00009770; // type:function size:0x258 +fn_1_99C8 = .text:0x000099C8; // type:function size:0x96C +fn_1_A334 = .text:0x0000A334; // type:function size:0x48 +fn_1_A37C = .text:0x0000A37C; // type:function size:0x16C +fn_1_A4E8 = .text:0x0000A4E8; // type:function size:0x3AC +fn_1_A894 = .text:0x0000A894; // type:function size:0x760 +fn_1_AFF4 = .text:0x0000AFF4; // type:function size:0x70C +fn_1_B700 = .text:0x0000B700; // type:function size:0x494 +fn_1_BB94 = .text:0x0000BB94; // type:function size:0x24C +fn_1_BDE0 = .text:0x0000BDE0; // type:function size:0x5E0 +fn_1_C3C0 = .text:0x0000C3C0; // type:function size:0x7C +fn_1_C43C = .text:0x0000C43C; // type:function size:0x10 +fn_1_C44C = .text:0x0000C44C; // type:function size:0x98 +fn_1_C4E4 = .text:0x0000C4E4; // type:function size:0x4C +fn_1_C530 = .text:0x0000C530; // type:function size:0x7E4 +fn_1_CD14 = .text:0x0000CD14; // type:function size:0x154 +fn_1_CE68 = .text:0x0000CE68; // type:function size:0x84 +fn_1_CEEC = .text:0x0000CEEC; // type:function size:0x118 +fn_1_D004 = .text:0x0000D004; // type:function size:0x6EC +fn_1_D6F0 = .text:0x0000D6F0; // type:function size:0x288 +fn_1_D978 = .text:0x0000D978; // type:function size:0xF4 +fn_1_DA6C = .text:0x0000DA6C; // type:function size:0x564 +fn_1_DFD0 = .text:0x0000DFD0; // type:function size:0x340 +fn_1_E310 = .text:0x0000E310; // type:function size:0x6A4 +fn_1_E9B4 = .text:0x0000E9B4; // type:function size:0x544 +fn_1_EEF8 = .text:0x0000EEF8; // type:function size:0x174 +fn_1_F06C = .text:0x0000F06C; // type:function size:0x444 +fn_1_F4B0 = .text:0x0000F4B0; // type:function size:0xB4 +fn_1_F564 = .text:0x0000F564; // type:function size:0x33C +fn_1_F8A0 = .text:0x0000F8A0; // type:function size:0x2F8 +fn_1_FB98 = .text:0x0000FB98; // type:function size:0x8EC +fn_1_10484 = .text:0x00010484; // type:function size:0x3AC +fn_1_10830 = .text:0x00010830; // type:function size:0x330 +fn_1_10B60 = .text:0x00010B60; // type:function size:0xB10 +fn_1_11670 = .text:0x00011670; // type:function size:0x54 +fn_1_116C4 = .text:0x000116C4; // type:function size:0xBC +fn_1_11780 = .text:0x00011780; // type:function size:0x150 +fn_1_118D0 = .text:0x000118D0; // type:function size:0x90 +fn_1_11960 = .text:0x00011960; // type:function size:0x4DC +fn_1_11E3C = .text:0x00011E3C; // type:function size:0x518 +fn_1_12354 = .text:0x00012354; // type:function size:0x74 +fn_1_123C8 = .text:0x000123C8; // type:function size:0x2A8 +fn_1_12670 = .text:0x00012670; // type:function size:0x4 +fn_1_12674 = .text:0x00012674; // type:function size:0x12C +fn_1_127A0 = .text:0x000127A0; // type:function size:0x4CC +fn_1_12C6C = .text:0x00012C6C; // type:function size:0x3F0 +fn_1_1305C = .text:0x0001305C; // type:function size:0x47C +fn_1_134D8 = .text:0x000134D8; // type:function size:0x348 +fn_1_13820 = .text:0x00013820; // type:function size:0x568 +fn_1_13D88 = .text:0x00013D88; // type:function size:0x2E4 +fn_1_1406C = .text:0x0001406C; // type:function size:0x464 +fn_1_144D0 = .text:0x000144D0; // type:function size:0x8E4 +fn_1_14DB4 = .text:0x00014DB4; // type:function size:0x3F0 +fn_1_151A4 = .text:0x000151A4; // type:function size:0x43C +fn_1_155E0 = .text:0x000155E0; // type:function size:0x38 +fn_1_15618 = .text:0x00015618; // type:function size:0x40 +fn_1_15658 = .text:0x00015658; // type:function size:0x4F8 +fn_1_15B50 = .text:0x00015B50; // type:function size:0x7C +fn_1_15BCC = .text:0x00015BCC; // type:function size:0xD8 +fn_1_15CA4 = .text:0x00015CA4; // type:function size:0xC0 +fn_1_15D64 = .text:0x00015D64; // type:function size:0x568 +fn_1_162CC = .text:0x000162CC; // type:function size:0xFC +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 data:4byte +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x30 data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x10 data:4byte +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // 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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x20 data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x38 data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x48 +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x10 data:4byte +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x10 data:4byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x28 data:2byte +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x10 data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x10 data:4byte +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:double +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x8 data:double +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:double +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 data:double +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x8 data:double +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x8 data:double +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x8 data:double +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float +lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float +lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 data:float +lbl_1_rodata_68C = .rodata:0x0000068C; // type:object size:0x4 data:float +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x4 data:float +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x8 data:double +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float +lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0x4 data:float +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x4 data:float +lbl_1_rodata_6BC = .rodata:0x000006BC; // type:object size:0x4 data:float +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x4 data:float +lbl_1_rodata_6C4 = .rodata:0x000006C4; // type:object size:0x4 data:float +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x8 data:double +lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x4 data:float +lbl_1_rodata_6D4 = .rodata:0x000006D4; // type:object size:0x4 data:float +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x8 data:double +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x8 data:double +lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float +lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x8 data:double +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 data:double +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x4 data:float +lbl_1_rodata_714 = .rodata:0x00000714; // type:object size:0x4 data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float +lbl_1_rodata_71C = .rodata:0x0000071C; // type:object size:0x4 data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x4 data:float +lbl_1_rodata_724 = .rodata:0x00000724; // type:object size:0x4 data:float +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x8 data:double +lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x4 data:float +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 data:double +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float +lbl_1_rodata_754 = .rodata:0x00000754; // type:object size:0x4 data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x4 data:float +lbl_1_rodata_75C = .rodata:0x0000075C; // type:object size:0x4 data:float +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 data:float +lbl_1_rodata_764 = .rodata:0x00000764; // type:object size:0x4 data:float +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x4 data:float +lbl_1_rodata_76C = .rodata:0x0000076C; // type:object size:0x4 data:float +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x4 data:float +lbl_1_rodata_774 = .rodata:0x00000774; // type:object size:0x4 data:float +lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x8 data:double +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x4 data:float +lbl_1_rodata_784 = .rodata:0x00000784; // type:object size:0x4 data:float +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x4 data:float +lbl_1_rodata_78C = .rodata:0x0000078C; // type:object size:0x4 data:float +lbl_1_rodata_790 = .rodata:0x00000790; // type:object size:0x4 data:float +lbl_1_rodata_794 = .rodata:0x00000794; // type:object size:0x4 data:float +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x4 data:float +lbl_1_rodata_79C = .rodata:0x0000079C; // type:object size:0x4 data:float +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x4 data:float +lbl_1_rodata_7A4 = .rodata:0x000007A4; // type:object size:0x4 data:float +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float +lbl_1_rodata_7AC = .rodata:0x000007AC; // type:object size:0x4 data:float +lbl_1_rodata_7B0 = .rodata:0x000007B0; // type:object size:0x4 data:float +lbl_1_rodata_7B4 = .rodata:0x000007B4; // type:object size:0x4 data:float +lbl_1_rodata_7B8 = .rodata:0x000007B8; // type:object size:0x8 data:double +lbl_1_rodata_7C0 = .rodata:0x000007C0; // type:object size:0x4 data:float +lbl_1_rodata_7C4 = .rodata:0x000007C4; // type:object size:0x4 data:float +lbl_1_rodata_7C8 = .rodata:0x000007C8; // type:object size:0x4 data:float +lbl_1_rodata_7D0 = .rodata:0x000007D0; // type:object size:0x8 data:double +lbl_1_rodata_7D8 = .rodata:0x000007D8; // type:object size:0x8 data:double +lbl_1_rodata_7E0 = .rodata:0x000007E0; // type:object size:0x4 data:float +lbl_1_rodata_7E4 = .rodata:0x000007E4; // type:object size:0x4 data:float +lbl_1_rodata_7E8 = .rodata:0x000007E8; // type:object size:0x4 data:float +lbl_1_rodata_7EC = .rodata:0x000007EC; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0xC +lbl_1_data_2C = .data:0x0000002C; // type:object size:0xC +lbl_1_data_38 = .data:0x00000038; // type:object size:0x20 +lbl_1_data_58 = .data:0x00000058; // type:object size:0xC +lbl_1_data_64 = .data:0x00000064; // type:object size:0xC +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x7 data:string +lbl_1_data_83 = .data:0x00000083; // type:object size:0x7 data:string +lbl_1_data_8A = .data:0x0000008A; // type:object size:0x7 data:string +lbl_1_data_91 = .data:0x00000091; // type:object size:0x7 data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x28 +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x20 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x1C +lbl_1_data_104 = .data:0x00000104; // type:object size:0x40 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x58 +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x4 data:4byte +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x24 +lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x24 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x24 +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x2E8 +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x10 +lbl_1_data_504 = .data:0x00000504; // type:object size:0x4 +lbl_1_data_508 = .data:0x00000508; // type:object size:0xC +lbl_1_data_514 = .data:0x00000514; // type:object size:0xC +lbl_1_data_520 = .data:0x00000520; // type:object size:0x30 +jumptable_1_data_550 = .data:0x00000550; // type:object size:0x24 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x14 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_1_bss_62 = .bss:0x00000062; // type:object size:0x2 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_66 = .bss:0x00000066; // type:object size:0x6 data:2byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x8 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0xC +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0xC +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x50 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0xC data:float +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0xC data:float +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x8 data:4byte +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x2 data:2byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x8 data:4byte +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x8 data:4byte +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x4 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x2 data:2byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x1C data:4byte +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0xC00 +lbl_1_bss_D6C = .bss:0x00000D6C; // type:object size:0x30 +lbl_1_bss_D9C = .bss:0x00000D9C; // type:object size:0x4 data:4byte +lbl_1_bss_DA0 = .bss:0x00000DA0; // type:object size:0x4 data:4byte +lbl_1_bss_DA4 = .bss:0x00000DA4; // type:object size:0x6800 data:float +lbl_1_bss_75A4 = .bss:0x000075A4; // type:object size:0x4 data:4byte +lbl_1_bss_75A8 = .bss:0x000075A8; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m409Dll/splits.txt b/config/GMPP01_00/rels/m409Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m409Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m409Dll/symbols.txt b/config/GMPP01_00/rels/m409Dll/symbols.txt new file mode 100644 index 00000000..7c66be88 --- /dev/null +++ b/config/GMPP01_00/rels/m409Dll/symbols.txt @@ -0,0 +1,332 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x394 +fn_1_434 = .text:0x00000434; // type:function size:0x78 +fn_1_4AC = .text:0x000004AC; // type:function size:0x78 +fn_1_524 = .text:0x00000524; // type:function size:0x65C +fn_1_B80 = .text:0x00000B80; // type:function size:0x25C +fn_1_DDC = .text:0x00000DDC; // type:function size:0x194 +fn_1_F70 = .text:0x00000F70; // type:function size:0x178 +fn_1_10E8 = .text:0x000010E8; // type:function size:0xA8C +fn_1_1B74 = .text:0x00001B74; // type:function size:0x524 +fn_1_2098 = .text:0x00002098; // type:function size:0x354 +fn_1_23EC = .text:0x000023EC; // type:function size:0x28 +fn_1_2414 = .text:0x00002414; // type:function size:0x40 +fn_1_2454 = .text:0x00002454; // type:function size:0x30 +fn_1_2484 = .text:0x00002484; // type:function size:0x948 +fn_1_2DCC = .text:0x00002DCC; // type:function size:0xA74 +fn_1_3840 = .text:0x00003840; // type:function size:0x148 +fn_1_3988 = .text:0x00003988; // type:function size:0x150 +fn_1_3AD8 = .text:0x00003AD8; // type:function size:0x5CC +fn_1_40A4 = .text:0x000040A4; // type:function size:0x7C +fn_1_4120 = .text:0x00004120; // type:function size:0x5C +fn_1_417C = .text:0x0000417C; // type:function size:0x374 +fn_1_44F0 = .text:0x000044F0; // type:function size:0xB0C +fn_1_4FFC = .text:0x00004FFC; // type:function size:0x40C +fn_1_5408 = .text:0x00005408; // type:function size:0x1D8 +fn_1_55E0 = .text:0x000055E0; // type:function size:0x1FC +fn_1_57DC = .text:0x000057DC; // type:function size:0x104 +fn_1_58E0 = .text:0x000058E0; // type:function size:0x138 +fn_1_5A18 = .text:0x00005A18; // type:function size:0x544 +fn_1_5F5C = .text:0x00005F5C; // type:function size:0x60 +fn_1_5FBC = .text:0x00005FBC; // type:function size:0x38 +fn_1_5FF4 = .text:0x00005FF4; // type:function size:0x38 +fn_1_602C = .text:0x0000602C; // type:function size:0x5DC +fn_1_6608 = .text:0x00006608; // type:function size:0xCC +fn_1_66D4 = .text:0x000066D4; // type:function size:0xA4 +fn_1_6778 = .text:0x00006778; // type:function size:0x68 +fn_1_67E0 = .text:0x000067E0; // type:function size:0x120 +fn_1_6900 = .text:0x00006900; // type:function size:0x28 +fn_1_6928 = .text:0x00006928; // type:function size:0xA1C +fn_1_7344 = .text:0x00007344; // type:function size:0xCA4 +fn_1_7FE8 = .text:0x00007FE8; // type:function size:0x850 +fn_1_8838 = .text:0x00008838; // type:function size:0x4D0 +fn_1_8D08 = .text:0x00008D08; // type:function size:0x64 +fn_1_8D6C = .text:0x00008D6C; // type:function size:0x454 +fn_1_91C0 = .text:0x000091C0; // type:function size:0x46C +fn_1_962C = .text:0x0000962C; // type:function size:0xF58 +fn_1_A584 = .text:0x0000A584; // type:function size:0x43C +fn_1_A9C0 = .text:0x0000A9C0; // type:function size:0x1F4 +fn_1_ABB4 = .text:0x0000ABB4; // type:function size:0x54 +fn_1_AC08 = .text:0x0000AC08; // type:function size:0x138 +fn_1_AD40 = .text:0x0000AD40; // type:function size:0x154 +fn_1_AE94 = .text:0x0000AE94; // type:function size:0x78 +fn_1_AF0C = .text:0x0000AF0C; // type:function size:0x11C +fn_1_B028 = .text:0x0000B028; // type:function size:0x78 +fn_1_B0A0 = .text:0x0000B0A0; // type:function size:0x2D8 +fn_1_B378 = .text:0x0000B378; // type:function size:0x198 +fn_1_B510 = .text:0x0000B510; // type:function size:0xD8 +fn_1_B5E8 = .text:0x0000B5E8; // type:function size:0xBC +fn_1_B6A4 = .text:0x0000B6A4; // type:function size:0x33C +fn_1_B9E0 = .text:0x0000B9E0; // type:function size:0x4B0 +fn_1_BE90 = .text:0x0000BE90; // type:function size:0xA8 +fn_1_BF38 = .text:0x0000BF38; // type:function size:0x50 +fn_1_BF88 = .text:0x0000BF88; // type:function size:0x138 +fn_1_C0C0 = .text:0x0000C0C0; // type:function size:0xA4 +fn_1_C164 = .text:0x0000C164; // type:function size:0xA34 +fn_1_CB98 = .text:0x0000CB98; // type:function size:0x118 +fn_1_CCB0 = .text:0x0000CCB0; // type:function size:0x1C +fn_1_CCCC = .text:0x0000CCCC; // type:function size:0x2C +fn_1_CCF8 = .text:0x0000CCF8; // type:function size:0x184 +fn_1_CE7C = .text:0x0000CE7C; // type:function size:0xA0 +fn_1_CF1C = .text:0x0000CF1C; // type:function size:0xA8 +fn_1_CFC4 = .text:0x0000CFC4; // type:function size:0x8C +fn_1_D050 = .text:0x0000D050; // type:function size:0x98 +fn_1_D0E8 = .text:0x0000D0E8; // type:function size:0x348 +fn_1_D430 = .text:0x0000D430; // type:function size:0x618 +fn_1_DA48 = .text:0x0000DA48; // type:function size:0x370 +fn_1_DDB8 = .text:0x0000DDB8; // type:function size:0x13C +fn_1_DEF4 = .text:0x0000DEF4; // type:function size:0x2C +fn_1_DF20 = .text:0x0000DF20; // type:function size:0x308 +fn_1_E228 = .text:0x0000E228; // type:function size:0x80 +fn_1_E2A8 = .text:0x0000E2A8; // type:function size:0x520 +fn_1_E7C8 = .text:0x0000E7C8; // type:function size:0x50 +fn_1_E818 = .text:0x0000E818; // type:function size:0x44 +fn_1_E85C = .text:0x0000E85C; // type:function size:0x70 +fn_1_E8CC = .text:0x0000E8CC; // type:function size:0x74 +fn_1_E940 = .text:0x0000E940; // type:function size:0x5C +fn_1_E99C = .text:0x0000E99C; // type:function size:0x88 +fn_1_EA24 = .text:0x0000EA24; // type:function size:0x8C +fn_1_EAB0 = .text:0x0000EAB0; // type:function size:0x44 +fn_1_EAF4 = .text:0x0000EAF4; // type:function size:0x70 +fn_1_EB64 = .text:0x0000EB64; // type:function size:0x74 +fn_1_EBD8 = .text:0x0000EBD8; // type:function size:0x44 +fn_1_EC1C = .text:0x0000EC1C; // type:function size:0x70 +fn_1_EC8C = .text:0x0000EC8C; // type:function size:0x74 +fn_1_ED00 = .text:0x0000ED00; // type:function size:0x44 +fn_1_ED44 = .text:0x0000ED44; // type:function size:0x70 +fn_1_EDB4 = .text:0x0000EDB4; // type:function size:0x70 +fn_1_EE24 = .text:0x0000EE24; // type:function size:0x44 +fn_1_EE68 = .text:0x0000EE68; // type:function size:0x70 +fn_1_EED8 = .text:0x0000EED8; // type:function size:0x70 +fn_1_EF48 = .text:0x0000EF48; // type:function size:0x5C +fn_1_EFA4 = .text:0x0000EFA4; // type:function size:0x80 +fn_1_F024 = .text:0x0000F024; // type:function size:0x74 +fn_1_F098 = .text:0x0000F098; // type:function size:0x78 +fn_1_F110 = .text:0x0000F110; // type:function size:0x6C +fn_1_F17C = .text:0x0000F17C; // type:function size:0x78 +fn_1_F1F4 = .text:0x0000F1F4; // type:function size:0x98 +fn_1_F28C = .text:0x0000F28C; // type:function size:0x6C +fn_1_F2F8 = .text:0x0000F2F8; // type:function size:0x78 +fn_1_F370 = .text:0x0000F370; // type:function size:0x98 +fn_1_F408 = .text:0x0000F408; // type:function size:0x70 +fn_1_F478 = .text:0x0000F478; // type:function size:0x78 +fn_1_F4F0 = .text:0x0000F4F0; // type:function size:0x98 +_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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x30 data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x100 +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x30 data:4byte +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x10 data:byte +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +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_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 +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x70 data:float +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x9 data:string +lbl_1_data_CD = .data:0x000000CD; // type:object size:0x9 data:string +lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x3 data:string +lbl_1_data_D9 = .data:0x000000D9; // type:object size:0x10 data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x26 data:string +lbl_1_data_10F = .data:0x0000010F; // type:object size:0x2D +lbl_1_data_13C = .data:0x0000013C; // type:object size:0x1C +lbl_1_data_158 = .data:0x00000158; // type:object size:0x20 +lbl_1_data_178 = .data:0x00000178; // type:object size:0x40 +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x14 +jumptable_1_data_1CC = .data:0x000001CC; // type:object size:0x20 scope:local +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x4 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x1 data:byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x1 data:byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x1 data:byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x1 data:byte +lbl_1_bss_21 = .bss:0x00000021; // type:object size:0x1 data:byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x9C data:2byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 data:2byte +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x8 data:4byte +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x14 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x2 data:2byte +lbl_1_bss_106 = .bss:0x00000106; // type:object size:0x2 data:2byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x2 data:2byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x280 data:float +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x10 +lbl_1_bss_39C = .bss:0x0000039C; // type:object size:0x4 data:4byte +lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x10 diff --git a/config/GMPP01_00/rels/m410Dll/splits.txt b/config/GMPP01_00/rels/m410Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m410Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m410Dll/symbols.txt b/config/GMPP01_00/rels/m410Dll/symbols.txt new file mode 100644 index 00000000..8d84a25d --- /dev/null +++ b/config/GMPP01_00/rels/m410Dll/symbols.txt @@ -0,0 +1,316 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x444 +fn_1_4E4 = .text:0x000004E4; // type:function size:0xC4 +fn_1_5A8 = .text:0x000005A8; // type:function size:0x94 +fn_1_63C = .text:0x0000063C; // type:function size:0x16C +fn_1_7A8 = .text:0x000007A8; // type:function size:0x314 +fn_1_ABC = .text:0x00000ABC; // type:function size:0x330 +fn_1_DEC = .text:0x00000DEC; // type:function size:0x204 +fn_1_FF0 = .text:0x00000FF0; // type:function size:0x3AC +fn_1_139C = .text:0x0000139C; // type:function size:0x2AC +fn_1_1648 = .text:0x00001648; // type:function size:0x380 +fn_1_19C8 = .text:0x000019C8; // type:function size:0xB4 +fn_1_1A7C = .text:0x00001A7C; // type:function size:0x6F0 +fn_1_216C = .text:0x0000216C; // type:function size:0x1C +fn_1_2188 = .text:0x00002188; // type:function size:0x664 +fn_1_27EC = .text:0x000027EC; // type:function size:0x18 +fn_1_2804 = .text:0x00002804; // type:function size:0x18 +fn_1_281C = .text:0x0000281C; // type:function size:0x18 +fn_1_2834 = .text:0x00002834; // type:function size:0x18 +fn_1_284C = .text:0x0000284C; // type:function size:0x18 +fn_1_2864 = .text:0x00002864; // type:function size:0x18 +fn_1_287C = .text:0x0000287C; // type:function size:0x30 +fn_1_28AC = .text:0x000028AC; // type:function size:0x30 +fn_1_28DC = .text:0x000028DC; // type:function size:0x38 +fn_1_2914 = .text:0x00002914; // type:function size:0x348 +fn_1_2C5C = .text:0x00002C5C; // type:function size:0x378 +fn_1_2FD4 = .text:0x00002FD4; // type:function size:0x11C +fn_1_30F0 = .text:0x000030F0; // type:function size:0xB4 +fn_1_31A4 = .text:0x000031A4; // type:function size:0x54 +fn_1_31F8 = .text:0x000031F8; // type:function size:0x4 +fn_1_31FC = .text:0x000031FC; // type:function size:0x154 +fn_1_3350 = .text:0x00003350; // type:function size:0x58 +fn_1_33A8 = .text:0x000033A8; // type:function size:0xDC +fn_1_3484 = .text:0x00003484; // type:function size:0x3C +fn_1_34C0 = .text:0x000034C0; // type:function size:0x154 +fn_1_3614 = .text:0x00003614; // type:function size:0x5CC +fn_1_3BE0 = .text:0x00003BE0; // type:function size:0xCF8 +fn_1_48D8 = .text:0x000048D8; // type:function size:0x32C +fn_1_4C04 = .text:0x00004C04; // type:function size:0x3E8 +fn_1_4FEC = .text:0x00004FEC; // type:function size:0x5DC +fn_1_55C8 = .text:0x000055C8; // type:function size:0x3C4 +fn_1_598C = .text:0x0000598C; // type:function size:0x168 +fn_1_5AF4 = .text:0x00005AF4; // type:function size:0x1AC +fn_1_5CA0 = .text:0x00005CA0; // type:function size:0x23C +fn_1_5EDC = .text:0x00005EDC; // type:function size:0x300 +fn_1_61DC = .text:0x000061DC; // type:function size:0x188 +fn_1_6364 = .text:0x00006364; // type:function size:0x354 +fn_1_66B8 = .text:0x000066B8; // type:function size:0x11C +fn_1_67D4 = .text:0x000067D4; // type:function size:0x194 +fn_1_6968 = .text:0x00006968; // type:function size:0x41C +fn_1_6D84 = .text:0x00006D84; // type:function size:0x30 +fn_1_6DB4 = .text:0x00006DB4; // type:function size:0x384 +fn_1_7138 = .text:0x00007138; // type:function size:0x32C +fn_1_7464 = .text:0x00007464; // type:function size:0x30 +fn_1_7494 = .text:0x00007494; // type:function size:0x8C +fn_1_7520 = .text:0x00007520; // type:function size:0x80 +fn_1_75A0 = .text:0x000075A0; // type:function size:0x114 +fn_1_76B4 = .text:0x000076B4; // type:function size:0xEC +fn_1_77A0 = .text:0x000077A0; // type:function size:0x44 +fn_1_77E4 = .text:0x000077E4; // type:function size:0x10 +fn_1_77F4 = .text:0x000077F4; // type:function size:0x48 +fn_1_783C = .text:0x0000783C; // type:function size:0x48 +fn_1_7884 = .text:0x00007884; // type:function size:0x170 +fn_1_79F4 = .text:0x000079F4; // type:function size:0xCC +fn_1_7AC0 = .text:0x00007AC0; // type:function size:0x36C +fn_1_7E2C = .text:0x00007E2C; // type:function size:0x23C +fn_1_8068 = .text:0x00008068; // type:function size:0x34 +fn_1_809C = .text:0x0000809C; // type:function size:0x374 +fn_1_8410 = .text:0x00008410; // type:function size:0x264 +fn_1_8674 = .text:0x00008674; // type:function size:0x260 +fn_1_88D4 = .text:0x000088D4; // type:function size:0x138 +fn_1_8A0C = .text:0x00008A0C; // type:function size:0xAC +fn_1_8AB8 = .text:0x00008AB8; // type:function size:0x584 +fn_1_903C = .text:0x0000903C; // type:function size:0x6B4 +fn_1_96F0 = .text:0x000096F0; // type:function size:0x39C +fn_1_9A8C = .text:0x00009A8C; // type:function size:0x1F4 +fn_1_9C80 = .text:0x00009C80; // type:function size:0x188 +fn_1_9E08 = .text:0x00009E08; // type:function size:0xF0 +fn_1_9EF8 = .text:0x00009EF8; // type:function size:0x74 +fn_1_9F6C = .text:0x00009F6C; // type:function size:0x134 +fn_1_A0A0 = .text:0x0000A0A0; // type:function size:0x31C +fn_1_A3BC = .text:0x0000A3BC; // type:function size:0x468 +fn_1_A824 = .text:0x0000A824; // type:function size:0x17C +fn_1_A9A0 = .text:0x0000A9A0; // type:function size:0x79C +fn_1_B13C = .text:0x0000B13C; // type:function size:0x644 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float +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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x10 data:4byte +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:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x10 data:4byte +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x20 data:4byte +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x1 data:byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x3C +lbl_1_data_88 = .data:0x00000088; // type:object size:0x3C +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x14 +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x2 data:2byte +lbl_1_data_DC = .data:0x000000DC; // type:object size:0x20 +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x8 +lbl_1_data_104 = .data:0x00000104; // type:object size:0xC +lbl_1_data_110 = .data:0x00000110; // type:object size:0x4 data:4byte +lbl_1_data_114 = .data:0x00000114; // type:object size:0x1C +lbl_1_data_130 = .data:0x00000130; // type:object size:0x10 +lbl_1_data_140 = .data:0x00000140; // type:object size:0x20 +lbl_1_data_160 = .data:0x00000160; // type:object size:0xC +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x20 +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x28 +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xA0 +lbl_1_data_274 = .data:0x00000274; // type:object size:0x20 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x20 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x6 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:float +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:float +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x10 +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m411Dll/splits.txt b/config/GMPP01_00/rels/m411Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m411Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m411Dll/symbols.txt b/config/GMPP01_00/rels/m411Dll/symbols.txt new file mode 100644 index 00000000..a4cd3909 --- /dev/null +++ b/config/GMPP01_00/rels/m411Dll/symbols.txt @@ -0,0 +1,278 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xDE0 +fn_1_E80 = .text:0x00000E80; // type:function size:0x10C +fn_1_F8C = .text:0x00000F8C; // type:function size:0xE8 +fn_1_1074 = .text:0x00001074; // type:function size:0x424 +fn_1_1498 = .text:0x00001498; // type:function size:0x88 +fn_1_1520 = .text:0x00001520; // type:function size:0x72C +fn_1_1C4C = .text:0x00001C4C; // type:function size:0x47C +fn_1_20C8 = .text:0x000020C8; // type:function size:0x508 +fn_1_25D0 = .text:0x000025D0; // type:function size:0xEE0 +fn_1_34B0 = .text:0x000034B0; // type:function size:0x5B0 +fn_1_3A60 = .text:0x00003A60; // type:function size:0x3C +fn_1_3A9C = .text:0x00003A9C; // type:function size:0x3C +fn_1_3AD8 = .text:0x00003AD8; // type:function size:0x3C +fn_1_3B14 = .text:0x00003B14; // type:function size:0x3C +fn_1_3B50 = .text:0x00003B50; // type:function size:0x3E4 +fn_1_3F34 = .text:0x00003F34; // type:function size:0x2E4 +fn_1_4218 = .text:0x00004218; // type:function size:0x23C +fn_1_4454 = .text:0x00004454; // type:function size:0x514 +fn_1_4968 = .text:0x00004968; // type:function size:0x248 +fn_1_4BB0 = .text:0x00004BB0; // type:function size:0x2DC +fn_1_4E8C = .text:0x00004E8C; // type:function size:0x1F0 +fn_1_507C = .text:0x0000507C; // type:function size:0x308 +fn_1_5384 = .text:0x00005384; // type:function size:0xC8 +fn_1_544C = .text:0x0000544C; // type:function size:0x108 +fn_1_5554 = .text:0x00005554; // type:function size:0x368 +fn_1_58BC = .text:0x000058BC; // type:function size:0x54 +fn_1_5910 = .text:0x00005910; // type:function size:0x448 +fn_1_5D58 = .text:0x00005D58; // type:function size:0xB8 +fn_1_5E10 = .text:0x00005E10; // type:function size:0xC0 +fn_1_5ED0 = .text:0x00005ED0; // type:function size:0x6C +fn_1_5F3C = .text:0x00005F3C; // type:function size:0x4EC +fn_1_6428 = .text:0x00006428; // type:function size:0x3F8 +fn_1_6820 = .text:0x00006820; // type:function size:0x21C +fn_1_6A3C = .text:0x00006A3C; // type:function size:0x2B8 +fn_1_6CF4 = .text:0x00006CF4; // type:function size:0xE4 +fn_1_6DD8 = .text:0x00006DD8; // type:function size:0xC4 +fn_1_6E9C = .text:0x00006E9C; // type:function size:0xAC +fn_1_6F48 = .text:0x00006F48; // type:function size:0x680 +fn_1_75C8 = .text:0x000075C8; // type:function size:0xB8 +fn_1_7680 = .text:0x00007680; // type:function size:0xB8 +fn_1_7738 = .text:0x00007738; // type:function size:0x1348 +fn_1_8A80 = .text:0x00008A80; // type:function size:0x33C +fn_1_8DBC = .text:0x00008DBC; // type:function size:0x6D4 +fn_1_9490 = .text:0x00009490; // type:function size:0x730 +fn_1_9BC0 = .text:0x00009BC0; // type:function size:0x444 +fn_1_A004 = .text:0x0000A004; // type:function size:0x78 +fn_1_A07C = .text:0x0000A07C; // type:function size:0xA4 +fn_1_A120 = .text:0x0000A120; // type:function size:0x394 +fn_1_A4B4 = .text:0x0000A4B4; // type:function size:0x2D4 +fn_1_A788 = .text:0x0000A788; // type:function size:0x528 +fn_1_ACB0 = .text:0x0000ACB0; // type:function size:0xA8 +fn_1_AD58 = .text:0x0000AD58; // type:function size:0xB48 +_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0xE data:string +lbl_1_data_86 = .data:0x00000086; // type:object size:0xE data:string +lbl_1_data_94 = .data:0x00000094; // type:object size:0xE data:string +lbl_1_data_A2 = .data:0x000000A2; // type:object size:0xE data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xE data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0xE data:string +lbl_1_data_CC = .data:0x000000CC; // type:object size:0xE data:string +lbl_1_data_DA = .data:0x000000DA; // type:object size:0xE data:string +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0xE data:string +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0xE data:string +lbl_1_data_104 = .data:0x00000104; // type:object size:0xE data:string +lbl_1_data_112 = .data:0x00000112; // type:object size:0xE data:string +lbl_1_data_120 = .data:0x00000120; // type:object size:0xE data:string +lbl_1_data_12E = .data:0x0000012E; // type:object size:0xE data:string +lbl_1_data_13C = .data:0x0000013C; // type:object size:0xE data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xE data:string +lbl_1_data_158 = .data:0x00000158; // type:object size:0xE data:string +lbl_1_data_166 = .data:0x00000166; // type:object size:0xE data:string +lbl_1_data_174 = .data:0x00000174; // type:object size:0xE data:string +lbl_1_data_182 = .data:0x00000182; // type:object size:0xE data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0xE data:string +lbl_1_data_19E = .data:0x0000019E; // type:object size:0xE data:string +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xE data:string +lbl_1_data_1BA = .data:0x000001BA; // type:object size:0xE data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x78 +lbl_1_data_240 = .data:0x00000240; // type:object size:0x20 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x20 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x24 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x20 +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0xC +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x14 +lbl_1_data_2E4 = .data:0x000002E4; // type:object size:0xB data:string +lbl_1_data_2EF = .data:0x000002EF; // type:object size:0xB data:string +lbl_1_data_2FA = .data:0x000002FA; // type:object size:0x8 data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0xA +lbl_1_data_30C = .data:0x0000030C; // type:object size:0x10 +lbl_1_data_31C = .data:0x0000031C; // type:object size:0xC data:string +lbl_1_data_328 = .data:0x00000328; // type:object size:0x7 data:string +lbl_1_data_32F = .data:0x0000032F; // type:object size:0x7 data:string +lbl_1_data_336 = .data:0x00000336; // type:object size:0x7 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x60 data:float +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x60 data:float +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x60 data:float +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x10 +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x33C data:float +lbl_1_bss_474 = .bss:0x00000474; // type:object size:0x9B0 +lbl_1_bss_E24 = .bss:0x00000E24; // type:object size:0x4 data:float +lbl_1_bss_E28 = .bss:0x00000E28; // type:object size:0x4 data:4byte +lbl_1_bss_E2C = .bss:0x00000E2C; // type:object size:0xC data:4byte +lbl_1_bss_E38 = .bss:0x00000E38; // type:object size:0x4 data:4byte +lbl_1_bss_E3C = .bss:0x00000E3C; // type:object size:0x4 data:4byte +lbl_1_bss_E40 = .bss:0x00000E40; // type:object size:0x4 data:4byte +lbl_1_bss_E44 = .bss:0x00000E44; // type:object size:0x28 data:4byte +lbl_1_bss_E6C = .bss:0x00000E6C; // type:object size:0x28 data:4byte +lbl_1_bss_E94 = .bss:0x00000E94; // type:object size:0x4 data:4byte +lbl_1_bss_E98 = .bss:0x00000E98; // type:object size:0x4 data:4byte +lbl_1_bss_E9C = .bss:0x00000E9C; // type:object size:0x2 data:2byte +lbl_1_bss_E9E = .bss:0x00000E9E; // type:object size:0x2 data:2byte +lbl_1_bss_EA0 = .bss:0x00000EA0; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/m412Dll/splits.txt b/config/GMPP01_00/rels/m412Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m412Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m412Dll/symbols.txt b/config/GMPP01_00/rels/m412Dll/symbols.txt new file mode 100644 index 00000000..577e6f3e --- /dev/null +++ b/config/GMPP01_00/rels/m412Dll/symbols.txt @@ -0,0 +1,190 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x64C +fn_1_6EC = .text:0x000006EC; // type:function size:0x50 +fn_1_73C = .text:0x0000073C; // type:function size:0x80 +fn_1_7BC = .text:0x000007BC; // type:function size:0xD8 +fn_1_894 = .text:0x00000894; // type:function size:0x4 +fn_1_898 = .text:0x00000898; // type:function size:0x24 +fn_1_8BC = .text:0x000008BC; // type:function size:0x144C +fn_1_1D08 = .text:0x00001D08; // type:function size:0x80 +fn_1_1D88 = .text:0x00001D88; // type:function size:0x34 +fn_1_1DBC = .text:0x00001DBC; // type:function size:0x258 +fn_1_2014 = .text:0x00002014; // type:function size:0x50 +fn_1_2064 = .text:0x00002064; // type:function size:0x6A4 +fn_1_2708 = .text:0x00002708; // type:function size:0xBC +fn_1_27C4 = .text:0x000027C4; // type:function size:0x258 +fn_1_2A1C = .text:0x00002A1C; // type:function size:0xF2C +fn_1_3948 = .text:0x00003948; // type:function size:0x128C +fn_1_4BD4 = .text:0x00004BD4; // type:function size:0xB8 +fn_1_4C8C = .text:0x00004C8C; // type:function size:0x1BC +fn_1_4E48 = .text:0x00004E48; // type:function size:0x404 +fn_1_524C = .text:0x0000524C; // type:function size:0xC0 +fn_1_530C = .text:0x0000530C; // type:function size:0x6C +fn_1_5378 = .text:0x00005378; // type:function size:0x6C +fn_1_53E4 = .text:0x000053E4; // type:function size:0x228 +fn_1_560C = .text:0x0000560C; // type:function size:0x21C +fn_1_5828 = .text:0x00005828; // type:function size:0xD5C +fn_1_6584 = .text:0x00006584; // type:function size:0x104 +fn_1_6688 = .text:0x00006688; // type:function size:0x17C +fn_1_6804 = .text:0x00006804; // type:function size:0x144C +fn_1_7C50 = .text:0x00007C50; // type:function size:0x23BC +fn_1_A00C = .text:0x0000A00C; // type:function size:0x5FC +fn_1_A608 = .text:0x0000A608; // type:function size:0x470 +fn_1_AA78 = .text:0x0000AA78; // type:function size:0x340 +fn_1_ADB8 = .text:0x0000ADB8; // type:function size:0x374 +fn_1_B12C = .text:0x0000B12C; // type:function size:0x24 +fn_1_B150 = .text:0x0000B150; // type:function size:0x60 +fn_1_B1B0 = .text:0x0000B1B0; // type:function size:0x498 +_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:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +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_1B4 = .rodata:0x000001B4; // 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:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x20 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x20 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x18 +lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float +lbl_1_data_CC = .data:0x000000CC; // type:object size:0x14 data:string +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x14 data:string +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x14 data:string +lbl_1_data_108 = .data:0x00000108; // type:object size:0x14 data:string +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x14 data:string +lbl_1_data_130 = .data:0x00000130; // type:object size:0x14 data:string +lbl_1_data_144 = .data:0x00000144; // type:object size:0x14 data:string +lbl_1_data_158 = .data:0x00000158; // type:object size:0x14 data:string +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x14 data:string +lbl_1_data_180 = .data:0x00000180; // type:object size:0x14 data:string +lbl_1_data_194 = .data:0x00000194; // type:object size:0x14 data:string +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x14 data:string +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x14 data:string +lbl_1_data_1D0 = .data:0x000001D0; // type:object size:0x14 data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x14 data:string +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x14 data:string +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x14 data:string +lbl_1_data_220 = .data:0x00000220; // type:object size:0x14 data:string +lbl_1_data_234 = .data:0x00000234; // type:object size:0x14 data:string +lbl_1_data_248 = .data:0x00000248; // type:object size:0x14 data:string +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x14 data:string +lbl_1_data_270 = .data:0x00000270; // type:object size:0x14 data:string +lbl_1_data_284 = .data:0x00000284; // type:object size:0x14 data:string +lbl_1_data_298 = .data:0x00000298; // type:object size:0x5C +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0xC data:string +lbl_1_data_300 = .data:0x00000300; // type:object size:0x7 data:string +lbl_1_data_307 = .data:0x00000307; // type:object size:0x9 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x30 +lbl_1_data_340 = .data:0x00000340; // type:object size:0x8 +lbl_1_data_348 = .data:0x00000348; // type:object size:0x18 +lbl_1_data_360 = .data:0x00000360; // type:object size:0x9 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x10 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x114 +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x114 +lbl_1_bss_250 = .bss:0x00000250; // type:object size:0xC data:float +lbl_1_bss_25C = .bss:0x0000025C; // type:object size:0xC data:float +lbl_1_bss_268 = .bss:0x00000268; // type:object size:0xC data:float +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x4 data:4byte +lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x80 +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x44 data:2byte +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x198 +lbl_1_bss_4D4 = .bss:0x000004D4; // type:object size:0x2A0 +lbl_1_bss_774 = .bss:0x00000774; // type:object size:0x4 data:float +lbl_1_bss_778 = .bss:0x00000778; // type:object size:0x4 data:float +lbl_1_bss_77C = .bss:0x0000077C; // type:object size:0x4 data:float +lbl_1_bss_780 = .bss:0x00000780; // type:object size:0x10 data:4byte +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x4 data:4byte +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x4 data:4byte +lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x2 data:2byte +lbl_1_bss_79C = .bss:0x0000079C; // type:object size:0x2 data:2byte +lbl_1_bss_79E = .bss:0x0000079E; // type:object size:0x2 data:2byte +lbl_1_bss_7A0 = .bss:0x000007A0; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/m413Dll/splits.txt b/config/GMPP01_00/rels/m413Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m413Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m413Dll/symbols.txt b/config/GMPP01_00/rels/m413Dll/symbols.txt new file mode 100644 index 00000000..a3598af6 --- /dev/null +++ b/config/GMPP01_00/rels/m413Dll/symbols.txt @@ -0,0 +1,211 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2EC +fn_1_38C = .text:0x0000038C; // type:function size:0x134 +fn_1_4C0 = .text:0x000004C0; // type:function size:0xBC +fn_1_57C = .text:0x0000057C; // type:function size:0x154 +fn_1_6D0 = .text:0x000006D0; // type:function size:0x128 +fn_1_7F8 = .text:0x000007F8; // type:function size:0x6C8 +fn_1_EC0 = .text:0x00000EC0; // type:function size:0x1F8 +fn_1_10B8 = .text:0x000010B8; // type:function size:0x90C +fn_1_19C4 = .text:0x000019C4; // type:function size:0x4 +fn_1_19C8 = .text:0x000019C8; // type:function size:0x38DC +fn_1_52A4 = .text:0x000052A4; // type:function size:0x3824 +fn_1_8AC8 = .text:0x00008AC8; // type:function size:0x148 +fn_1_8C10 = .text:0x00008C10; // type:function size:0x192C +fn_1_A53C = .text:0x0000A53C; // type:function size:0x1188 +fn_1_B6C4 = .text:0x0000B6C4; // type:function size:0x101C +fn_1_C6E0 = .text:0x0000C6E0; // type:function size:0x4D4 +fn_1_CBB4 = .text:0x0000CBB4; // type:function size:0x78C +fn_1_D340 = .text:0x0000D340; // type:function size:0x60 +fn_1_D3A0 = .text:0x0000D3A0; // type:function size:0x360 +fn_1_D700 = .text:0x0000D700; // type:function size:0x64 +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xCC +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0xC data:byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:4byte +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x19 data:byte +lbl_1_rodata_201 = .rodata:0x00000201; // type:object size:0x1F data:byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC data:4byte +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x30 data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x10 data:4byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x10 data:4byte +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0xC data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0xC data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x428 +lbl_1_rodata_764 = .rodata:0x00000764; // type:object size:0xC data:4byte +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0xC data:4byte +lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0x4 data:float +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x4 data:float +lbl_1_rodata_784 = .rodata:0x00000784; // type:object size:0x4 data:float +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x8 data:double +lbl_1_rodata_790 = .rodata:0x00000790; // type:object size:0x8 data:double +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x8 data:double +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x8 data:double +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float +lbl_1_rodata_7AC = .rodata:0x000007AC; // type:object size:0x10 data:4byte +lbl_1_rodata_7BC = .rodata:0x000007BC; // type:object size:0x14 data:4byte +lbl_1_rodata_7D0 = .rodata:0x000007D0; // type:object size:0x60 +lbl_1_rodata_830 = .rodata:0x00000830; // type:object size:0x8 data:double +lbl_1_rodata_838 = .rodata:0x00000838; // type:object size:0x8 data:double +lbl_1_rodata_840 = .rodata:0x00000840; // type:object size:0x4 data:float +lbl_1_rodata_848 = .rodata:0x00000848; // type:object size:0x8 data:double +lbl_1_rodata_850 = .rodata:0x00000850; // type:object size:0x4 data:float +lbl_1_rodata_858 = .rodata:0x00000858; // type:object size:0x8 data:double +lbl_1_rodata_860 = .rodata:0x00000860; // type:object size:0x8 data:double +lbl_1_rodata_868 = .rodata:0x00000868; // type:object size:0x8 data:double +lbl_1_rodata_870 = .rodata:0x00000870; // type:object size:0x8 data:double +lbl_1_rodata_878 = .rodata:0x00000878; // type:object size:0x4 data:float +lbl_1_rodata_87C = .rodata:0x0000087C; // type:object size:0x4 data:float +lbl_1_rodata_880 = .rodata:0x00000880; // type:object size:0x4 data:float +lbl_1_rodata_884 = .rodata:0x00000884; // type:object size:0x4 data:float +lbl_1_rodata_888 = .rodata:0x00000888; // type:object size:0x4 data:float +lbl_1_rodata_88C = .rodata:0x0000088C; // type:object size:0x4 data:float +lbl_1_rodata_890 = .rodata:0x00000890; // type:object size:0x1C data:4byte +lbl_1_rodata_8AC = .rodata:0x000008AC; // type:object size:0x4 data:float +lbl_1_rodata_8B0 = .rodata:0x000008B0; // type:object size:0x8 data:double +lbl_1_rodata_8B8 = .rodata:0x000008B8; // type:object size:0x4 data:float +lbl_1_rodata_8BC = .rodata:0x000008BC; // type:object size:0x4 data:float +lbl_1_rodata_8C0 = .rodata:0x000008C0; // type:object size:0x4 data:float +lbl_1_rodata_8C4 = .rodata:0x000008C4; // type:object size:0x4 data:float +lbl_1_rodata_8C8 = .rodata:0x000008C8; // type:object size:0x8 data:double +lbl_1_rodata_8D0 = .rodata:0x000008D0; // type:object size:0x4 data:float +lbl_1_rodata_8D8 = .rodata:0x000008D8; // type:object size:0x8 data:double +lbl_1_rodata_8E0 = .rodata:0x000008E0; // type:object size:0x4 data:float +lbl_1_rodata_8E4 = .rodata:0x000008E4; // type:object size:0x4 data:float +lbl_1_rodata_8E8 = .rodata:0x000008E8; // type:object size:0x4 data:float +lbl_1_rodata_8EC = .rodata:0x000008EC; // type:object size:0x4 data:float +lbl_1_rodata_8F0 = .rodata:0x000008F0; // type:object size:0x4 data:float +lbl_1_rodata_8F4 = .rodata:0x000008F4; // type:object size:0x4 data:float +lbl_1_rodata_8F8 = .rodata:0x000008F8; // type:object size:0x4 data:float +lbl_1_rodata_8FC = .rodata:0x000008FC; // type:object size:0x4 data:float +lbl_1_rodata_900 = .rodata:0x00000900; // type:object size:0x8 data:double +lbl_1_rodata_908 = .rodata:0x00000908; // type:object size:0x8 data:double +lbl_1_rodata_910 = .rodata:0x00000910; // type:object size:0x4 data:float +lbl_1_rodata_914 = .rodata:0x00000914; // type:object size:0x4 data:float +lbl_1_rodata_918 = .rodata:0x00000918; // type:object size:0xC data:byte +lbl_1_rodata_924 = .rodata:0x00000924; // type:object size:0x18 data:4byte +lbl_1_rodata_93C = .rodata:0x0000093C; // type:object size:0x8 data:byte +lbl_1_rodata_944 = .rodata:0x00000944; // type:object size:0x10 data:4byte +lbl_1_rodata_954 = .rodata:0x00000954; // type:object size:0x1 data:byte +lbl_1_rodata_958 = .rodata:0x00000958; // type:object size:0x10 data:4byte +lbl_1_rodata_968 = .rodata:0x00000968; // type:object size:0x10 data:4byte +lbl_1_rodata_978 = .rodata:0x00000978; // type:object size:0x8 data:double +lbl_1_rodata_980 = .rodata:0x00000980; // type:object size:0x4 data:float +lbl_1_rodata_984 = .rodata:0x00000984; // type:object size:0x4 data:float +lbl_1_rodata_988 = .rodata:0x00000988; // type:object size:0x4 data:float +lbl_1_rodata_98C = .rodata:0x0000098C; // type:object size:0x4 data:float +lbl_1_rodata_990 = .rodata:0x00000990; // type:object size:0x8 data:double +lbl_1_rodata_998 = .rodata:0x00000998; // type:object size:0x4 data:float +lbl_1_rodata_99C = .rodata:0x0000099C; // type:object size:0x4 data:float +lbl_1_rodata_9A0 = .rodata:0x000009A0; // type:object size:0x8 data:double +lbl_1_rodata_9A8 = .rodata:0x000009A8; // type:object size:0x8 data:double +lbl_1_rodata_9B0 = .rodata:0x000009B0; // type:object size:0x10 data:4byte +lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 data:float +lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 data:float +lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 data:float +lbl_1_rodata_9CC = .rodata:0x000009CC; // type:object size:0xC data:4byte +lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0xC data:4byte +lbl_1_rodata_9E4 = .rodata:0x000009E4; // type:object size:0xC data:4byte +lbl_1_rodata_9F0 = .rodata:0x000009F0; // type:object size:0xC data:4byte +lbl_1_rodata_9FC = .rodata:0x000009FC; // type:object size:0xC data:4byte +lbl_1_rodata_A08 = .rodata:0x00000A08; // type:object size:0xC data:4byte +lbl_1_rodata_A14 = .rodata:0x00000A14; // type:object size:0xC data:4byte +lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x1 data:byte +lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 data:float +lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 data:float +lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 data:float +lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 data:float +lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x4 data:4byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0x8 data:4byte +lbl_1_data_C = .data:0x0000000C; // type:object size:0x2C data:4byte +lbl_1_data_38 = .data:0x00000038; // type:object size:0x9 data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x19 data:string +lbl_1_data_5A = .data:0x0000005A; // type:object size:0x1B data:string +lbl_1_data_75 = .data:0x00000075; // type:object size:0x10 data:string +lbl_1_data_85 = .data:0x00000085; // type:object size:0x10 data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0x10 data:string +lbl_1_data_A5 = .data:0x000000A5; // type:object size:0x10 data:string +lbl_1_data_B5 = .data:0x000000B5; // type:object size:0x11 data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x11 data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x12 data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x12 data:string +lbl_1_data_FB = .data:0x000000FB; // type:object size:0x12 data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0xF data:string +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x8 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x70 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x18 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x28 +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x2580 +lbl_1_bss_2680 = .bss:0x00002680; // type:object size:0x4 data:4byte +lbl_1_bss_2684 = .bss:0x00002684; // type:object size:0x3E8 +lbl_1_bss_2A6C = .bss:0x00002A6C; // type:object size:0x4E18 +lbl_1_bss_7884 = .bss:0x00007884; // type:object size:0x30 diff --git a/config/GMPP01_00/rels/m414Dll/splits.txt b/config/GMPP01_00/rels/m414Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m414Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m414Dll/symbols.txt b/config/GMPP01_00/rels/m414Dll/symbols.txt new file mode 100644 index 00000000..b04c8e01 --- /dev/null +++ b/config/GMPP01_00/rels/m414Dll/symbols.txt @@ -0,0 +1,183 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x87C +fn_1_91C = .text:0x0000091C; // type:function size:0x268 +fn_1_B84 = .text:0x00000B84; // type:function size:0x154 +fn_1_CD8 = .text:0x00000CD8; // type:function size:0x7C +fn_1_D54 = .text:0x00000D54; // type:function size:0x634 +fn_1_1388 = .text:0x00001388; // type:function size:0x3C +fn_1_13C4 = .text:0x000013C4; // type:function size:0x3C +fn_1_1400 = .text:0x00001400; // type:function size:0x3C +fn_1_143C = .text:0x0000143C; // type:function size:0x3C +fn_1_1478 = .text:0x00001478; // type:function size:0x214 +fn_1_168C = .text:0x0000168C; // type:function size:0x3C +fn_1_16C8 = .text:0x000016C8; // type:function size:0x3C +fn_1_1704 = .text:0x00001704; // type:function size:0x3C +fn_1_1740 = .text:0x00001740; // type:function size:0x3C +fn_1_177C = .text:0x0000177C; // type:function size:0x3DC +fn_1_1B58 = .text:0x00001B58; // type:function size:0x3C +fn_1_1B94 = .text:0x00001B94; // type:function size:0x3C +fn_1_1BD0 = .text:0x00001BD0; // type:function size:0x3C +fn_1_1C0C = .text:0x00001C0C; // type:function size:0x3C +fn_1_1C48 = .text:0x00001C48; // type:function size:0x1BC +fn_1_1E04 = .text:0x00001E04; // type:function size:0x1B78 +fn_1_397C = .text:0x0000397C; // type:function size:0xDC +fn_1_3A58 = .text:0x00003A58; // type:function size:0xDC +fn_1_3B34 = .text:0x00003B34; // type:function size:0x214 +fn_1_3D48 = .text:0x00003D48; // type:function size:0x184 +fn_1_3ECC = .text:0x00003ECC; // type:function size:0x3E0 +fn_1_42AC = .text:0x000042AC; // type:function size:0x958 +fn_1_4C04 = .text:0x00004C04; // type:function size:0x70 +fn_1_4C74 = .text:0x00004C74; // type:function size:0x19C +fn_1_4E10 = .text:0x00004E10; // type:function size:0x744 +fn_1_5554 = .text:0x00005554; // type:function size:0xD0 +fn_1_5624 = .text:0x00005624; // type:function size:0xD8 +fn_1_56FC = .text:0x000056FC; // type:function size:0x84 +fn_1_5780 = .text:0x00005780; // type:function size:0x2BC +fn_1_5A3C = .text:0x00005A3C; // type:function size:0x4AC +fn_1_5EE8 = .text:0x00005EE8; // type:function size:0x24C +fn_1_6134 = .text:0x00006134; // type:function size:0x418 +fn_1_654C = .text:0x0000654C; // type:function size:0x90 +fn_1_65DC = .text:0x000065DC; // type:function size:0x68 +fn_1_6644 = .text:0x00006644; // type:function size:0x10B0 +fn_1_76F4 = .text:0x000076F4; // type:function size:0x2B4 +fn_1_79A8 = .text:0x000079A8; // type:function size:0x620 +fn_1_7FC8 = .text:0x00007FC8; // type:function size:0x90C +fn_1_88D4 = .text:0x000088D4; // type:function size:0x78 +fn_1_894C = .text:0x0000894C; // type:function size:0xC4 +fn_1_8A10 = .text:0x00008A10; // type:function size:0x60 +fn_1_8A70 = .text:0x00008A70; // type:function size:0x450 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +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_124 = .rodata:0x00000124; // 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:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x10 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x20 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x18 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x24 +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x18 +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x10 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x10 +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x60 +lbl_1_data_124 = .data:0x00000124; // type:object size:0x10 data:string +lbl_1_data_134 = .data:0x00000134; // type:object size:0x7 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0xC data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x3C +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x3C +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x3C +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x10 +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x820 data:2byte +lbl_1_bss_910 = .bss:0x00000910; // type:object size:0x10 data:float +lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x10 data:float +lbl_1_bss_930 = .bss:0x00000930; // type:object size:0x8 data:4byte +lbl_1_bss_938 = .bss:0x00000938; // type:object size:0x40 +lbl_1_bss_978 = .bss:0x00000978; // type:object size:0x4 data:4byte +lbl_1_bss_97C = .bss:0x0000097C; // type:object size:0x10 +lbl_1_bss_98C = .bss:0x0000098C; // type:object size:0x4 data:4byte +lbl_1_bss_990 = .bss:0x00000990; // type:object size:0x80 +lbl_1_bss_A10 = .bss:0x00000A10; // type:object size:0x2 data:2byte +lbl_1_bss_A12 = .bss:0x00000A12; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/m415Dll/splits.txt b/config/GMPP01_00/rels/m415Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m415Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m415Dll/symbols.txt b/config/GMPP01_00/rels/m415Dll/symbols.txt new file mode 100644 index 00000000..f68c9a44 --- /dev/null +++ b/config/GMPP01_00/rels/m415Dll/symbols.txt @@ -0,0 +1,234 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x39C +fn_1_43C = .text:0x0000043C; // type:function size:0x74 +fn_1_4B0 = .text:0x000004B0; // type:function size:0x328 +fn_1_7D8 = .text:0x000007D8; // type:function size:0xCE0 +fn_1_14B8 = .text:0x000014B8; // type:function size:0x64 +fn_1_151C = .text:0x0000151C; // type:function size:0xAC +fn_1_15C8 = .text:0x000015C8; // type:function size:0x390 +fn_1_1958 = .text:0x00001958; // type:function size:0x100 +fn_1_1A58 = .text:0x00001A58; // type:function size:0x10B8 +fn_1_2B10 = .text:0x00002B10; // type:function size:0xFC +fn_1_2C0C = .text:0x00002C0C; // type:function size:0x274 +fn_1_2E80 = .text:0x00002E80; // type:function size:0xA0 +fn_1_2F20 = .text:0x00002F20; // type:function size:0x2B8 +fn_1_31D8 = .text:0x000031D8; // type:function size:0x28 +fn_1_3200 = .text:0x00003200; // type:function size:0x438 +fn_1_3638 = .text:0x00003638; // type:function size:0x124 +fn_1_375C = .text:0x0000375C; // type:function size:0x3E0 +fn_1_3B3C = .text:0x00003B3C; // type:function size:0xB1C +fn_1_4658 = .text:0x00004658; // type:function size:0x14C0 +fn_1_5B18 = .text:0x00005B18; // type:function size:0x490 +fn_1_5FA8 = .text:0x00005FA8; // type:function size:0x354 +fn_1_62FC = .text:0x000062FC; // type:function size:0x64 +fn_1_6360 = .text:0x00006360; // type:function size:0x40 +fn_1_63A0 = .text:0x000063A0; // type:function size:0xA0 +fn_1_6440 = .text:0x00006440; // type:function size:0x94 +fn_1_64D4 = .text:0x000064D4; // type:function size:0xA8 +fn_1_657C = .text:0x0000657C; // type:function size:0x108 +fn_1_6684 = .text:0x00006684; // type:function size:0x20 +fn_1_66A4 = .text:0x000066A4; // type:function size:0xF0 +fn_1_6794 = .text:0x00006794; // type:function size:0x54 +fn_1_67E8 = .text:0x000067E8; // type:function size:0x168 +fn_1_6950 = .text:0x00006950; // type:function size:0x120 +fn_1_6A70 = .text:0x00006A70; // type:function size:0x30C +fn_1_6D7C = .text:0x00006D7C; // type:function size:0x78 +fn_1_6DF4 = .text:0x00006DF4; // type:function size:0x11C +fn_1_6F10 = .text:0x00006F10; // type:function size:0x78 +fn_1_6F88 = .text:0x00006F88; // type:function size:0x2D8 +fn_1_7260 = .text:0x00007260; // type:function size:0x2B8 +fn_1_7518 = .text:0x00007518; // type:function size:0x154 +fn_1_766C = .text:0x0000766C; // type:function size:0x3E0 +fn_1_7A4C = .text:0x00007A4C; // type:function size:0x214 +fn_1_7C60 = .text:0x00007C60; // type:function size:0x198 +fn_1_7DF8 = .text:0x00007DF8; // type:function size:0xD8 +fn_1_7ED0 = .text:0x00007ED0; // type:function size:0xBC +fn_1_7F8C = .text:0x00007F8C; // type:function size:0x33C +fn_1_82C8 = .text:0x000082C8; // type:function size:0x4B0 +fn_1_8778 = .text:0x00008778; // type:function size:0x138 +fn_1_88B0 = .text:0x000088B0; // type:function size:0xD08 +fn_1_95B8 = .text:0x000095B8; // type:function size:0x12C +fn_1_96E4 = .text:0x000096E4; // type:function size:0x1C +fn_1_9700 = .text:0x00009700; // type:function size:0x2C +fn_1_972C = .text:0x0000972C; // type:function size:0x1C +fn_1_9748 = .text:0x00009748; // type:function size:0x184 +fn_1_98CC = .text:0x000098CC; // type:function size:0xA0 +fn_1_996C = .text:0x0000996C; // type:function size:0xA8 +fn_1_9A14 = .text:0x00009A14; // type:function size:0x8C +fn_1_9AA0 = .text:0x00009AA0; // type:function size:0x98 +fn_1_9B38 = .text:0x00009B38; // type:function size:0x288 +fn_1_9DC0 = .text:0x00009DC0; // type:function size:0x508 +fn_1_A2C8 = .text:0x0000A2C8; // type:function size:0x530 +fn_1_A7F8 = .text:0x0000A7F8; // type:function size:0x120 +fn_1_A918 = .text:0x0000A918; // type:function size:0x2C +fn_1_A944 = .text:0x0000A944; // type:function size:0x3A8 +fn_1_ACEC = .text:0x0000ACEC; // type:function size:0x254 +fn_1_AF40 = .text:0x0000AF40; // type:function size:0x80 +fn_1_AFC0 = .text:0x0000AFC0; // type:function size:0x70 +fn_1_B030 = .text:0x0000B030; // type:function size:0x80 +fn_1_B0B0 = .text:0x0000B0B0; // type:function size:0x57C +fn_1_B62C = .text:0x0000B62C; // type:function size:0x230 +fn_1_B85C = .text:0x0000B85C; // type:function size:0x6C +fn_1_B8C8 = .text:0x0000B8C8; // type:function size:0x70 +fn_1_B938 = .text:0x0000B938; // type:function size:0x74 +fn_1_B9AC = .text:0x0000B9AC; // type:function size:0x84 +fn_1_BA30 = .text:0x0000BA30; // type:function size:0x88 +fn_1_BAB8 = .text:0x0000BAB8; // type:function size:0x8C +fn_1_BB44 = .text:0x0000BB44; // type:function size:0x6C +fn_1_BBB0 = .text:0x0000BBB0; // type:function size:0x70 +fn_1_BC20 = .text:0x0000BC20; // type:function size:0x74 +fn_1_BC94 = .text:0x0000BC94; // type:function size:0x6C +fn_1_BD00 = .text:0x0000BD00; // type:function size:0x70 +fn_1_BD70 = .text:0x0000BD70; // type:function size:0x74 +fn_1_BDE4 = .text:0x0000BDE4; // type:function size:0x44 +fn_1_BE28 = .text:0x0000BE28; // type:function size:0x70 +fn_1_BE98 = .text:0x0000BE98; // type:function size:0x70 +fn_1_BF08 = .text:0x0000BF08; // type:function size:0x44 +fn_1_BF4C = .text:0x0000BF4C; // type:function size:0x70 +fn_1_BFBC = .text:0x0000BFBC; // type:function size:0x70 +fn_1_C02C = .text:0x0000C02C; // type:function size:0x5C +fn_1_C088 = .text:0x0000C088; // type:function size:0x80 +fn_1_C108 = .text:0x0000C108; // type:function size:0x74 +fn_1_C17C = .text:0x0000C17C; // type:function size:0x78 +fn_1_C1F4 = .text:0x0000C1F4; // type:function size:0x68 +fn_1_C25C = .text:0x0000C25C; // type:function size:0x6C +fn_1_C2C8 = .text:0x0000C2C8; // type:function size:0x68 +fn_1_C330 = .text:0x0000C330; // type:function size:0x6C +fn_1_C39C = .text:0x0000C39C; // type:function size:0x6C +fn_1_C408 = .text:0x0000C408; // type:function size:0x78 +fn_1_C480 = .text:0x0000C480; // type:function size:0x98 +fn_1_C518 = .text:0x0000C518; // type:function size:0x6C +fn_1_C584 = .text:0x0000C584; // type:function size:0x78 +fn_1_C5FC = .text:0x0000C5FC; // type:function size:0x98 +fn_1_C694 = .text:0x0000C694; // type:function size:0x70 +fn_1_C704 = .text:0x0000C704; // type:function size:0x78 +fn_1_C77C = .text:0x0000C77C; // type:function size:0x98 +fn_1_C814 = .text:0x0000C814; // type:function size:0x40 +_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:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x10 data:byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x20 data:byte +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x20 data:byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x10 data:byte +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x10 data:byte +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // 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:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x10 data:byte +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +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 +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:0x24 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte +lbl_1_data_68 = .data:0x00000068; // type:object size:0x7 data:string +lbl_1_data_6F = .data:0x0000006F; // type:object size:0x6 data:string +lbl_1_data_75 = .data:0x00000075; // type:object size:0xB +lbl_1_data_80 = .data:0x00000080; // type:object size:0x28 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x30 +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x8 data:string +jumptable_1_data_E0 = .data:0x000000E0; // type:object size:0x28 scope:local +lbl_1_data_108 = .data:0x00000108; // type:object size:0x8 data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x30 +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x200 +lbl_1_bss_234 = .bss:0x00000234; // type:object size:0x100 +lbl_1_bss_334 = .bss:0x00000334; // type:object size:0x4 data:4byte +lbl_1_bss_338 = .bss:0x00000338; // type:object size:0x2 data:2byte +lbl_1_bss_33A = .bss:0x0000033A; // type:object size:0x8 data:2byte +lbl_1_bss_342 = .bss:0x00000342; // type:object size:0x2 data:2byte +lbl_1_bss_344 = .bss:0x00000344; // type:object size:0x2 data:2byte +lbl_1_bss_346 = .bss:0x00000346; // type:object size:0x2 data:2byte +lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte +lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x2 data:2byte +lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x10 +lbl_1_bss_35C = .bss:0x0000035C; // type:object size:0x4 data:4byte +lbl_1_bss_360 = .bss:0x00000360; // type:object size:0x4 data:4byte +lbl_1_bss_364 = .bss:0x00000364; // type:object size:0x4 data:4byte +lbl_1_bss_368 = .bss:0x00000368; // type:object size:0x4 data:4byte +lbl_1_bss_36C = .bss:0x0000036C; // type:object size:0x44 data:4byte diff --git a/config/GMPP01_00/rels/m416Dll/splits.txt b/config/GMPP01_00/rels/m416Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m416Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m416Dll/symbols.txt b/config/GMPP01_00/rels/m416Dll/symbols.txt new file mode 100644 index 00000000..8a25d373 --- /dev/null +++ b/config/GMPP01_00/rels/m416Dll/symbols.txt @@ -0,0 +1,209 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3B8 +fn_1_458 = .text:0x00000458; // type:function size:0xA4 +fn_1_4FC = .text:0x000004FC; // type:function size:0xCEC +fn_1_11E8 = .text:0x000011E8; // type:function size:0x58 +fn_1_1240 = .text:0x00001240; // type:function size:0x10 +fn_1_1250 = .text:0x00001250; // type:function size:0x10 +fn_1_1260 = .text:0x00001260; // type:function size:0x220 +fn_1_1480 = .text:0x00001480; // type:function size:0x68 +fn_1_14E8 = .text:0x000014E8; // type:function size:0x84 +fn_1_156C = .text:0x0000156C; // type:function size:0x3F8 +fn_1_1964 = .text:0x00001964; // type:function size:0x178 +fn_1_1ADC = .text:0x00001ADC; // type:function size:0x1A4 +fn_1_1C80 = .text:0x00001C80; // type:function size:0x104 +fn_1_1D84 = .text:0x00001D84; // type:function size:0xBAC +fn_1_2930 = .text:0x00002930; // type:function size:0xAC +fn_1_29DC = .text:0x000029DC; // type:function size:0x4C8 +fn_1_2EA4 = .text:0x00002EA4; // type:function size:0x778 +fn_1_361C = .text:0x0000361C; // type:function size:0x280 +fn_1_389C = .text:0x0000389C; // type:function size:0x54 +fn_1_38F0 = .text:0x000038F0; // type:function size:0x10D4 +fn_1_49C4 = .text:0x000049C4; // type:function size:0x640 +fn_1_5004 = .text:0x00005004; // type:function size:0x54 +fn_1_5058 = .text:0x00005058; // type:function size:0x264 +fn_1_52BC = .text:0x000052BC; // type:function size:0x274 +fn_1_5530 = .text:0x00005530; // type:function size:0x704 +fn_1_5C34 = .text:0x00005C34; // type:function size:0xE4 +fn_1_5D18 = .text:0x00005D18; // type:function size:0x60 +fn_1_5D78 = .text:0x00005D78; // type:function size:0x3C4 +fn_1_613C = .text:0x0000613C; // type:function size:0x504 +fn_1_6640 = .text:0x00006640; // type:function size:0x4A8 +fn_1_6AE8 = .text:0x00006AE8; // type:function size:0x304 +fn_1_6DEC = .text:0x00006DEC; // type:function size:0x70 +fn_1_6E5C = .text:0x00006E5C; // type:function size:0x240 +fn_1_709C = .text:0x0000709C; // type:function size:0x250 +fn_1_72EC = .text:0x000072EC; // type:function size:0x6E4 +fn_1_79D0 = .text:0x000079D0; // type:function size:0x84 +fn_1_7A54 = .text:0x00007A54; // type:function size:0x20 +fn_1_7A74 = .text:0x00007A74; // type:function size:0x300 +fn_1_7D74 = .text:0x00007D74; // type:function size:0x1BC +fn_1_7F30 = .text:0x00007F30; // type:function size:0x484 +fn_1_83B4 = .text:0x000083B4; // type:function size:0x550 +fn_1_8904 = .text:0x00008904; // type:function size:0xB8 +fn_1_89BC = .text:0x000089BC; // type:function size:0x4E4 +fn_1_8EA0 = .text:0x00008EA0; // type:function size:0x14 +fn_1_8EB4 = .text:0x00008EB4; // type:function size:0xAC +fn_1_8F60 = .text:0x00008F60; // type:function size:0x90 +fn_1_8FF0 = .text:0x00008FF0; // type:function size:0x4 +fn_1_8FF4 = .text:0x00008FF4; // type:function size:0x34 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // 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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x1 data:byte +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0x1 data:byte +lbl_1_data_3C = .data:0x0000003C; // type:object size:0x1 data:byte +lbl_1_data_40 = .data:0x00000040; // type:object size:0x24 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte +jumptable_1_data_68 = .data:0x00000068; // type:object size:0x2C scope:local +lbl_1_data_94 = .data:0x00000094; // type:object size:0x1C data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x40 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x1C +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x48 +lbl_1_data_154 = .data:0x00000154; // type:object size:0x24 +lbl_1_data_178 = .data:0x00000178; // type:object size:0x8 +lbl_1_data_180 = .data:0x00000180; // type:object size:0x18 +lbl_1_data_198 = .data:0x00000198; // type:object size:0x30 +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x20 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC data:4byte +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x48 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x8 data:float +lbl_1_data_268 = .data:0x00000268; // type:object size:0x1 data:byte +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x60 data:float +lbl_1_data_2CC = .data:0x000002CC; // type:object size:0x18 +lbl_1_data_2E4 = .data:0x000002E4; // type:object size:0x8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x10 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x900 +lbl_1_bss_914 = .bss:0x00000914; // type:object size:0x4 data:4byte +lbl_1_bss_918 = .bss:0x00000918; // type:object size:0x2 data:2byte +lbl_1_bss_91A = .bss:0x0000091A; // type:object size:0x6 data:2byte +lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x4 data:float +lbl_1_bss_924 = .bss:0x00000924; // type:object size:0x2 data:2byte +lbl_1_bss_926 = .bss:0x00000926; // type:object size:0x2 data:2byte +lbl_1_bss_928 = .bss:0x00000928; // type:object size:0x2 data:2byte +lbl_1_bss_92A = .bss:0x0000092A; // type:object size:0x2 data:2byte +lbl_1_bss_92E = .bss:0x0000092E; // type:object size:0x2 data:2byte +lbl_1_bss_930 = .bss:0x00000930; // type:object size:0x20 data:4byte +lbl_1_bss_950 = .bss:0x00000950; // type:object size:0x4 data:4byte +lbl_1_bss_954 = .bss:0x00000954; // type:object size:0x4 data:4byte +lbl_1_bss_958 = .bss:0x00000958; // type:object size:0x4 data:4byte +lbl_1_bss_95C = .bss:0x0000095C; // type:object size:0x2 data:2byte +lbl_1_bss_960 = .bss:0x00000960; // type:object size:0x8 data:4byte +lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x800 data:2byte +lbl_1_bss_1168 = .bss:0x00001168; // type:object size:0x2 data:2byte +lbl_1_bss_116C = .bss:0x0000116C; // type:object size:0x8 data:float +lbl_1_bss_1174 = .bss:0x00001174; // type:object size:0x8 +lbl_1_bss_117C = .bss:0x0000117C; // type:object size:0x4 data:float +lbl_1_bss_1180 = .bss:0x00001180; // type:object size:0x4 data:4byte +lbl_1_bss_1184 = .bss:0x00001184; // type:object size:0x4 data:4byte +lbl_1_bss_1188 = .bss:0x00001188; // type:object size:0x4 data:4byte +lbl_1_bss_118C = .bss:0x0000118C; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m417Dll/splits.txt b/config/GMPP01_00/rels/m417Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m417Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m417Dll/symbols.txt b/config/GMPP01_00/rels/m417Dll/symbols.txt new file mode 100644 index 00000000..7118da97 --- /dev/null +++ b/config/GMPP01_00/rels/m417Dll/symbols.txt @@ -0,0 +1,361 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x438 +fn_1_4D8 = .text:0x000004D8; // type:function size:0xD8 +fn_1_5B0 = .text:0x000005B0; // type:function size:0x250 +fn_1_800 = .text:0x00000800; // type:function size:0x190 +fn_1_990 = .text:0x00000990; // type:function size:0x518 +fn_1_EA8 = .text:0x00000EA8; // type:function size:0x534 +fn_1_13DC = .text:0x000013DC; // type:function size:0x3E4 +fn_1_17C0 = .text:0x000017C0; // type:function size:0x4E8 +fn_1_1CA8 = .text:0x00001CA8; // type:function size:0x4B0 +fn_1_2158 = .text:0x00002158; // type:function size:0x570 +fn_1_26C8 = .text:0x000026C8; // type:function size:0x18 +fn_1_26E0 = .text:0x000026E0; // type:function size:0x18 +fn_1_26F8 = .text:0x000026F8; // type:function size:0x18 +fn_1_2710 = .text:0x00002710; // type:function size:0x18 +fn_1_2728 = .text:0x00002728; // type:function size:0x18 +fn_1_2740 = .text:0x00002740; // type:function size:0x30 +fn_1_2770 = .text:0x00002770; // type:function size:0x30 +fn_1_27A0 = .text:0x000027A0; // type:function size:0x30 +fn_1_27D0 = .text:0x000027D0; // type:function size:0x38 +fn_1_2808 = .text:0x00002808; // type:function size:0x40 +fn_1_2848 = .text:0x00002848; // type:function size:0x348 +fn_1_2B90 = .text:0x00002B90; // type:function size:0x378 +fn_1_2F08 = .text:0x00002F08; // type:function size:0x11C +fn_1_3024 = .text:0x00003024; // type:function size:0xB4 +fn_1_30D8 = .text:0x000030D8; // type:function size:0x34 +fn_1_310C = .text:0x0000310C; // type:function size:0x168 +fn_1_3274 = .text:0x00003274; // type:function size:0x140 +fn_1_33B4 = .text:0x000033B4; // type:function size:0x4C +fn_1_3400 = .text:0x00003400; // type:function size:0x134 +fn_1_3534 = .text:0x00003534; // type:function size:0x40 +fn_1_3574 = .text:0x00003574; // type:function size:0x22C +fn_1_37A0 = .text:0x000037A0; // type:function size:0x37C +fn_1_3B1C = .text:0x00003B1C; // type:function size:0xA8 +fn_1_3BC4 = .text:0x00003BC4; // type:function size:0x190 +fn_1_3D54 = .text:0x00003D54; // type:function size:0x4 +fn_1_3D58 = .text:0x00003D58; // type:function size:0xE70 +fn_1_4BC8 = .text:0x00004BC8; // type:function size:0x29C +fn_1_4E64 = .text:0x00004E64; // type:function size:0x94C +fn_1_57B0 = .text:0x000057B0; // type:function size:0x68C +fn_1_5E3C = .text:0x00005E3C; // type:function size:0x210 +fn_1_604C = .text:0x0000604C; // type:function size:0xAB8 +fn_1_6B04 = .text:0x00006B04; // type:function size:0x5C +fn_1_6B60 = .text:0x00006B60; // type:function size:0x34 +fn_1_6B94 = .text:0x00006B94; // type:function size:0x1D0 +fn_1_6D64 = .text:0x00006D64; // type:function size:0x7AC +fn_1_7510 = .text:0x00007510; // type:function size:0xAC +fn_1_75BC = .text:0x000075BC; // type:function size:0x34 +fn_1_75F0 = .text:0x000075F0; // type:function size:0x10 +fn_1_7600 = .text:0x00007600; // type:function size:0x24 +fn_1_7624 = .text:0x00007624; // type:function size:0x298 +fn_1_78BC = .text:0x000078BC; // type:function size:0xAC +fn_1_7968 = .text:0x00007968; // type:function size:0xC0 +fn_1_7A28 = .text:0x00007A28; // type:function size:0xC +fn_1_7A34 = .text:0x00007A34; // type:function size:0x234 +fn_1_7C68 = .text:0x00007C68; // type:function size:0x24 +fn_1_7C8C = .text:0x00007C8C; // type:function size:0x670 +fn_1_82FC = .text:0x000082FC; // type:function size:0x3EC +fn_1_86E8 = .text:0x000086E8; // type:function size:0x424 +fn_1_8B0C = .text:0x00008B0C; // type:function size:0x224 +fn_1_8D30 = .text:0x00008D30; // type:function size:0x114 +fn_1_8E44 = .text:0x00008E44; // type:function size:0x39C +fn_1_91E0 = .text:0x000091E0; // type:function size:0xB8 +fn_1_9298 = .text:0x00009298; // type:function size:0x784 +fn_1_9A1C = .text:0x00009A1C; // type:function size:0x1F8 +fn_1_9C14 = .text:0x00009C14; // type:function size:0x3EC +fn_1_A000 = .text:0x0000A000; // type:function size:0xD34 +fn_1_AD34 = .text:0x0000AD34; // type:function size:0xA0 +fn_1_ADD4 = .text:0x0000ADD4; // type:function size:0x4FC +fn_1_B2D0 = .text:0x0000B2D0; // type:function size:0x5E0 +fn_1_B8B0 = .text:0x0000B8B0; // type:function size:0x1A4 +fn_1_BA54 = .text:0x0000BA54; // type:function size:0x74 +fn_1_BAC8 = .text:0x0000BAC8; // type:function size:0x1E8 +fn_1_BCB0 = .text:0x0000BCB0; // type:function size:0x3C +fn_1_BCEC = .text:0x0000BCEC; // type:function size:0xF0 +fn_1_BDDC = .text:0x0000BDDC; // type:function size:0x214 +fn_1_BFF0 = .text:0x0000BFF0; // type:function size:0xA0 +fn_1_C090 = .text:0x0000C090; // type:function size:0x3E4 +fn_1_C474 = .text:0x0000C474; // type:function size:0x224 +fn_1_C698 = .text:0x0000C698; // type:function size:0x134 +fn_1_C7CC = .text:0x0000C7CC; // type:function size:0xF0 +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x24 data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x24 data:4byte +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0xC data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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:0x1 data:byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x1 data:byte +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x10 data:4byte +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x10 data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x10 data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0xC data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0xC data:4byte +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x10 data:4byte +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0xC data:4byte +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:4byte +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x18 data:4byte +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x18 data:4byte +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 data:double +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0x10 data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x40 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x84 +lbl_1_data_114 = .data:0x00000114; // type:object size:0xDC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x38 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x110 data:float +lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x700 data:4byte +lbl_1_bss_878 = .bss:0x00000878; // type:object size:0x8 data:4byte +lbl_1_bss_880 = .bss:0x00000880; // type:object size:0x4 data:4byte +lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x4 data:4byte +lbl_1_bss_888 = .bss:0x00000888; // type:object size:0x10 +lbl_1_bss_898 = .bss:0x00000898; // type:object size:0x10 data:4byte +lbl_1_bss_8A8 = .bss:0x000008A8; // type:object size:0x4 data:4byte +lbl_1_bss_8AC = .bss:0x000008AC; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m418Dll/splits.txt b/config/GMPP01_00/rels/m418Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m418Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m418Dll/symbols.txt b/config/GMPP01_00/rels/m418Dll/symbols.txt new file mode 100644 index 00000000..f4a0ef38 --- /dev/null +++ b/config/GMPP01_00/rels/m418Dll/symbols.txt @@ -0,0 +1,304 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x74 +fn_1_74 = .text:0x00000074; // type:function size:0xE4 +fn_1_158 = .text:0x00000158; // type:function size:0x28 +fn_1_180 = .text:0x00000180; // type:function size:0xC8 +fn_1_248 = .text:0x00000248; // type:function size:0x20 +fn_1_268 = .text:0x00000268; // type:function size:0x298 +fn_1_500 = .text:0x00000500; // type:function size:0x118 +fn_1_618 = .text:0x00000618; // type:function size:0xC4 +fn_1_6DC = .text:0x000006DC; // type:function size:0x38 +fn_1_714 = .text:0x00000714; // type:function size:0x34 +fn_1_748 = .text:0x00000748; // type:function size:0x38 +fn_1_780 = .text:0x00000780; // type:function size:0x1C8 +fn_1_948 = .text:0x00000948; // type:function size:0x48 +fn_1_990 = .text:0x00000990; // type:function size:0x110 +fn_1_AA0 = .text:0x00000AA0; // type:function size:0xA4 +fn_1_B44 = .text:0x00000B44; // type:function size:0x328 +fn_1_E6C = .text:0x00000E6C; // type:function size:0x67C +fn_1_14E8 = .text:0x000014E8; // type:function size:0x3BC +fn_1_18A4 = .text:0x000018A4; // type:function size:0x50 +fn_1_18F4 = .text:0x000018F4; // type:function size:0x7B4 +fn_1_20A8 = .text:0x000020A8; // type:function size:0xC8 +fn_1_2170 = .text:0x00002170; // type:function size:0x71C +fn_1_288C = .text:0x0000288C; // type:function size:0x10C +fn_1_2998 = .text:0x00002998; // type:function size:0x224 +fn_1_2BBC = .text:0x00002BBC; // type:function size:0x48 +fn_1_2C04 = .text:0x00002C04; // type:function size:0x448 +fn_1_304C = .text:0x0000304C; // type:function size:0xE4 +fn_1_3130 = .text:0x00003130; // type:function size:0x108 +fn_1_3238 = .text:0x00003238; // type:function size:0x1C8 +fn_1_3400 = .text:0x00003400; // type:function size:0x3C +fn_1_343C = .text:0x0000343C; // type:function size:0xA6C +fn_1_3EA8 = .text:0x00003EA8; // type:function size:0x814 +fn_1_46BC = .text:0x000046BC; // type:function size:0x5C0 +fn_1_4C7C = .text:0x00004C7C; // type:function size:0x2DC +fn_1_4F58 = .text:0x00004F58; // type:function size:0x3F8 +fn_1_5350 = .text:0x00005350; // type:function size:0xE4 +fn_1_5434 = .text:0x00005434; // type:function size:0x150 +fn_1_5584 = .text:0x00005584; // type:function size:0x120 +fn_1_56A4 = .text:0x000056A4; // type:function size:0xBC +fn_1_5760 = .text:0x00005760; // type:function size:0x7C +fn_1_57DC = .text:0x000057DC; // type:function size:0x18C +fn_1_5968 = .text:0x00005968; // type:function size:0xFC +fn_1_5A64 = .text:0x00005A64; // type:function size:0x2BC +fn_1_5D20 = .text:0x00005D20; // type:function size:0x30 +fn_1_5D50 = .text:0x00005D50; // type:function size:0x98 +fn_1_5DE8 = .text:0x00005DE8; // type:function size:0x248 +fn_1_6030 = .text:0x00006030; // type:function size:0x2DC +fn_1_630C = .text:0x0000630C; // type:function size:0xE4 +fn_1_63F0 = .text:0x000063F0; // type:function size:0x118 +fn_1_6508 = .text:0x00006508; // type:function size:0x108 +fn_1_6610 = .text:0x00006610; // type:function size:0x128 +fn_1_6738 = .text:0x00006738; // type:function size:0xC8 +fn_1_6800 = .text:0x00006800; // type:function size:0x10C +fn_1_690C = .text:0x0000690C; // type:function size:0x4B8 +fn_1_6DC4 = .text:0x00006DC4; // type:function size:0xA0 +fn_1_6E64 = .text:0x00006E64; // type:function size:0x48 +fn_1_6EAC = .text:0x00006EAC; // type:function size:0x84 +fn_1_6F30 = .text:0x00006F30; // type:function size:0x35C +fn_1_728C = .text:0x0000728C; // type:function size:0x4 +fn_1_7290 = .text:0x00007290; // type:function size:0x2D8 +fn_1_7568 = .text:0x00007568; // type:function size:0x74 +fn_1_75DC = .text:0x000075DC; // type:function size:0x214 +fn_1_77F0 = .text:0x000077F0; // type:function size:0x68 +fn_1_7858 = .text:0x00007858; // type:function size:0x208 +fn_1_7A60 = .text:0x00007A60; // type:function size:0x100 +fn_1_7B60 = .text:0x00007B60; // type:function size:0x218 +fn_1_7D78 = .text:0x00007D78; // type:function size:0xA4 +fn_1_7E1C = .text:0x00007E1C; // type:function size:0xF8 +fn_1_7F14 = .text:0x00007F14; // type:function size:0xB8 +fn_1_7FCC = .text:0x00007FCC; // type:function size:0x1CC +fn_1_8198 = .text:0x00008198; // type:function size:0x4 +fn_1_819C = .text:0x0000819C; // type:function size:0x2DC +fn_1_8478 = .text:0x00008478; // type:function size:0x30 +fn_1_84A8 = .text:0x000084A8; // type:function size:0x98 +fn_1_8540 = .text:0x00008540; // type:function size:0x120 +fn_1_8660 = .text:0x00008660; // type:function size:0xC0 +fn_1_8720 = .text:0x00008720; // type:function size:0xA8 +fn_1_87C8 = .text:0x000087C8; // type:function size:0xBC +fn_1_8884 = .text:0x00008884; // type:function size:0x28 +fn_1_88AC = .text:0x000088AC; // type:function size:0xFC +fn_1_89A8 = .text:0x000089A8; // type:function size:0x164 +fn_1_8B0C = .text:0x00008B0C; // type:function size:0x170 +fn_1_8C7C = .text:0x00008C7C; // type:function size:0xEC +fn_1_8D68 = .text:0x00008D68; // type:function size:0x204 +fn_1_8F6C = .text:0x00008F6C; // type:function size:0x120 +fn_1_908C = .text:0x0000908C; // type:function size:0x48 +fn_1_90D4 = .text:0x000090D4; // type:function size:0x64 +fn_1_9138 = .text:0x00009138; // type:function size:0xA4 +fn_1_91DC = .text:0x000091DC; // type:function size:0x108 +fn_1_92E4 = .text:0x000092E4; // type:function size:0x48 +fn_1_932C = .text:0x0000932C; // type:function size:0x30 +fn_1_935C = .text:0x0000935C; // type:function size:0x98 +fn_1_93F4 = .text:0x000093F4; // type:function size:0x130 +fn_1_9524 = .text:0x00009524; // type:function size:0x60 +fn_1_9584 = .text:0x00009584; // type:function size:0x618 +fn_1_9B9C = .text:0x00009B9C; // type:function size:0x3F0 +fn_1_9F8C = .text:0x00009F8C; // type:function size:0x1BC +_prolog = .text:0x0000A148; // type:function size:0x54 scope:global +_epilog = .text:0x0000A19C; // type:function size:0x4C scope:global +fn_1_A1E8 = .text:0x0000A1E8; // type:function size:0x398 +fn_1_A580 = .text:0x0000A580; // type:function size:0x398 +fn_1_A918 = .text:0x0000A918; // type:function size:0x20 +fn_1_A938 = .text:0x0000A938; // type:function size:0x28 +fn_1_A960 = .text:0x0000A960; // type:function size:0xC8 +fn_1_AA28 = .text:0x0000AA28; // type:function size:0xBC +fn_1_AAE4 = .text:0x0000AAE4; // type:function size:0xD8 +fn_1_ABBC = .text:0x0000ABBC; // type:function size:0x150 +fn_1_AD0C = .text:0x0000AD0C; // type:function size:0x178 +fn_1_AE84 = .text:0x0000AE84; // type:function size:0x50 +fn_1_AED4 = .text:0x0000AED4; // type:function size:0x5C +fn_1_AF30 = .text:0x0000AF30; // type:function size:0x88 +fn_1_AFB8 = .text:0x0000AFB8; // type:function size:0x74 +fn_1_B02C = .text:0x0000B02C; // type:function size:0x94 +fn_1_B0C0 = .text:0x0000B0C0; // type:function size:0x3C +fn_1_B0FC = .text:0x0000B0FC; // type:function size:0x318 +fn_1_B414 = .text:0x0000B414; // type:function size:0x3C +fn_1_B450 = .text:0x0000B450; // type:function size:0x4C +fn_1_B49C = .text:0x0000B49C; // type:function size:0x26C +fn_1_B708 = .text:0x0000B708; // type:function size:0x26C +fn_1_B974 = .text:0x0000B974; // type:function size:0x27C +fn_1_BBF0 = .text:0x0000BBF0; // type:function size:0x2B4 +fn_1_BEA4 = .text:0x0000BEA4; // type:function size:0x46C +fn_1_C310 = .text:0x0000C310; // type:function size:0x454 +fn_1_C764 = .text:0x0000C764; // type:function size:0x48C +fn_1_CBF0 = .text:0x0000CBF0; // type:function size:0x658 +fn_1_D248 = .text:0x0000D248; // type:function size:0x4C4 +fn_1_D70C = .text:0x0000D70C; // type:function size:0x4FC +fn_1_DC08 = .text:0x0000DC08; // type:function size:0x6C8 +_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:0xC data:4byte +lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0xC data:4byte +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC data:4byte +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0xC data:4byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x10 data:4byte +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x10 data:4byte +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x10 data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 data:4byte +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +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:0xC data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC data:4byte +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0xC data:4byte +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0xC data:4byte +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC data:4byte +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0xC data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0xC data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0xC data:4byte +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0xC data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0xC data:4byte +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0xC data:4byte +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0xC data:4byte +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte +lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte +lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string +lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string +lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string +lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte +jumptable_1_data_F8 = .data:0x000000F8; // type:object size:0x88 scope:local +lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string +lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x20 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x60 +lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 +lbl_1_data_264 = .data:0x00000264; // type:object size:0x30 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x24 +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x60 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x30 +lbl_1_data_348 = .data:0x00000348; // type:object size:0x84 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x30 +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x48 +lbl_1_data_444 = .data:0x00000444; // type:object size:0x60 +jumptable_1_data_4A4 = .data:0x000004A4; // type:object size:0x28 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x18 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x18 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x18 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0xB4 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x54 data:4byte +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x70 +lbl_1_bss_1E0 = .bss:0x000001E0; // type:object size:0x14 data:4byte +lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x4C data:4byte +lbl_1_bss_240 = .bss:0x00000240; // type:object size:0x2C data:4byte +lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x180 +lbl_1_bss_3EC = .bss:0x000003EC; // type:object size:0x44 data:4byte diff --git a/config/GMPP01_00/rels/m419Dll/splits.txt b/config/GMPP01_00/rels/m419Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m419Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m419Dll/symbols.txt b/config/GMPP01_00/rels/m419Dll/symbols.txt new file mode 100644 index 00000000..cf313005 --- /dev/null +++ b/config/GMPP01_00/rels/m419Dll/symbols.txt @@ -0,0 +1,184 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x400 +fn_1_4A0 = .text:0x000004A0; // type:function size:0xDC +fn_1_57C = .text:0x0000057C; // type:function size:0x2CC +fn_1_848 = .text:0x00000848; // type:function size:0x288 +fn_1_AD0 = .text:0x00000AD0; // type:function size:0x488 +fn_1_F58 = .text:0x00000F58; // type:function size:0x102C +fn_1_1F84 = .text:0x00001F84; // type:function size:0x128 +fn_1_20AC = .text:0x000020AC; // type:function size:0x128 +fn_1_21D4 = .text:0x000021D4; // type:function size:0x80 +fn_1_2254 = .text:0x00002254; // type:function size:0x4F0 +fn_1_2744 = .text:0x00002744; // type:function size:0x498 +fn_1_2BDC = .text:0x00002BDC; // type:function size:0x220 +fn_1_2DFC = .text:0x00002DFC; // type:function size:0x4FC +fn_1_32F8 = .text:0x000032F8; // type:function size:0x154 +fn_1_344C = .text:0x0000344C; // type:function size:0x1398 +fn_1_47E4 = .text:0x000047E4; // type:function size:0x33C +fn_1_4B20 = .text:0x00004B20; // type:function size:0x334 +fn_1_4E54 = .text:0x00004E54; // type:function size:0xB8 +fn_1_4F0C = .text:0x00004F0C; // type:function size:0xC0 +fn_1_4FCC = .text:0x00004FCC; // type:function size:0x6C +fn_1_5038 = .text:0x00005038; // type:function size:0x6C +fn_1_50A4 = .text:0x000050A4; // type:function size:0x244 +fn_1_52E8 = .text:0x000052E8; // type:function size:0x570 +fn_1_5858 = .text:0x00005858; // type:function size:0x104 +fn_1_595C = .text:0x0000595C; // type:function size:0x17C +fn_1_5AD8 = .text:0x00005AD8; // type:function size:0x45C +fn_1_5F34 = .text:0x00005F34; // type:function size:0x358 +fn_1_628C = .text:0x0000628C; // type:function size:0x334 +fn_1_65C0 = .text:0x000065C0; // type:function size:0x1E0 +fn_1_67A0 = .text:0x000067A0; // type:function size:0x564 +fn_1_6D04 = .text:0x00006D04; // type:function size:0x198 +fn_1_6E9C = .text:0x00006E9C; // type:function size:0xA18 +fn_1_78B4 = .text:0x000078B4; // type:function size:0x223C +fn_1_9AF0 = .text:0x00009AF0; // type:function size:0x130C +fn_1_ADFC = .text:0x0000ADFC; // type:function size:0x258 +fn_1_B054 = .text:0x0000B054; // type:function size:0x2E78 +fn_1_DECC = .text:0x0000DECC; // type:function size:0x70 +fn_1_DF3C = .text:0x0000DF3C; // type:function size:0x5C +fn_1_DF98 = .text:0x0000DF98; // type:function size:0x17A4 +fn_1_F73C = .text:0x0000F73C; // type:function size:0x280 +fn_1_F9BC = .text:0x0000F9BC; // type:function size:0x89C +fn_1_10258 = .text:0x00010258; // type:function size:0x248 +fn_1_104A0 = .text:0x000104A0; // type:function size:0x60 +fn_1_10500 = .text:0x00010500; // type:function size:0x3D8 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_88 = .rodata:0x00000088; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +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_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x2C +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x10 +lbl_1_data_5C = .data:0x0000005C; // type:object size:0x60 +lbl_1_data_BC = .data:0x000000BC; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x60 +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x1 data:byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x20 +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x20 +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0xC data:float +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0xC data:float +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0xC data:float +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0xB8 data:4byte +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x10 +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x58 data:2byte +lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0x18 data:2byte +lbl_1_bss_200 = .bss:0x00000200; // type:object size:0x380 +lbl_1_bss_580 = .bss:0x00000580; // type:object size:0x4 data:4byte +lbl_1_bss_584 = .bss:0x00000584; // type:object size:0x10 data:4byte +lbl_1_bss_594 = .bss:0x00000594; // type:object size:0x10 +lbl_1_bss_5A4 = .bss:0x000005A4; // type:object size:0x4 data:4byte +lbl_1_bss_5A8 = .bss:0x000005A8; // type:object size:0x4 data:4byte +lbl_1_bss_5AC = .bss:0x000005AC; // type:object size:0x4 data:4byte +lbl_1_bss_5B0 = .bss:0x000005B0; // type:object size:0x4 data:4byte +lbl_1_bss_5B4 = .bss:0x000005B4; // type:object size:0x4 data:4byte +lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x2 data:2byte +lbl_1_bss_5BA = .bss:0x000005BA; // type:object size:0x2 data:2byte +lbl_1_bss_5BC = .bss:0x000005BC; // type:object size:0x2 data:2byte +lbl_1_bss_5BE = .bss:0x000005BE; // type:object size:0x2 data:2byte +lbl_1_bss_5C2 = .bss:0x000005C2; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/m420dll/splits.txt b/config/GMPP01_00/rels/m420dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m420dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m420dll/symbols.txt b/config/GMPP01_00/rels/m420dll/symbols.txt new file mode 100644 index 00000000..8077c937 --- /dev/null +++ b/config/GMPP01_00/rels/m420dll/symbols.txt @@ -0,0 +1,249 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x78 +fn_1_118 = .text:0x00000118; // type:function size:0x80 +fn_1_198 = .text:0x00000198; // type:function size:0x23C +fn_1_3D4 = .text:0x000003D4; // type:function size:0x68 +fn_1_43C = .text:0x0000043C; // type:function size:0x8C0 +fn_1_CFC = .text:0x00000CFC; // type:function size:0x84 +fn_1_D80 = .text:0x00000D80; // type:function size:0x1B0 +fn_1_F30 = .text:0x00000F30; // type:function size:0x2C +fn_1_F5C = .text:0x00000F5C; // type:function size:0xBC +fn_1_1018 = .text:0x00001018; // type:function size:0xBC +fn_1_10D4 = .text:0x000010D4; // type:function size:0x98 +fn_1_116C = .text:0x0000116C; // type:function size:0x718 +fn_1_1884 = .text:0x00001884; // type:function size:0x214 +fn_1_1A98 = .text:0x00001A98; // type:function size:0xDC +fn_1_1B74 = .text:0x00001B74; // type:function size:0x288 +fn_1_1DFC = .text:0x00001DFC; // type:function size:0x50 +fn_1_1E4C = .text:0x00001E4C; // type:function size:0xB0 +fn_1_1EFC = .text:0x00001EFC; // type:function size:0x40 +fn_1_1F3C = .text:0x00001F3C; // type:function size:0x40 +fn_1_1F7C = .text:0x00001F7C; // type:function size:0x78 +fn_1_1FF4 = .text:0x00001FF4; // type:function size:0xE0 +fn_1_20D4 = .text:0x000020D4; // type:function size:0x30 +fn_1_2104 = .text:0x00002104; // type:function size:0x58 +fn_1_215C = .text:0x0000215C; // type:function size:0x54 +fn_1_21B0 = .text:0x000021B0; // type:function size:0x98 +fn_1_2248 = .text:0x00002248; // type:function size:0x6C +fn_1_22B4 = .text:0x000022B4; // type:function size:0x4A0 +fn_1_2754 = .text:0x00002754; // type:function size:0x574 +fn_1_2CC8 = .text:0x00002CC8; // type:function size:0x9C +fn_1_2D64 = .text:0x00002D64; // type:function size:0x12C +fn_1_2E90 = .text:0x00002E90; // type:function size:0x1F0 +fn_1_3080 = .text:0x00003080; // type:function size:0x1D4 +fn_1_3254 = .text:0x00003254; // type:function size:0x1E4 +fn_1_3438 = .text:0x00003438; // type:function size:0x5C +fn_1_3494 = .text:0x00003494; // type:function size:0xB0 +fn_1_3544 = .text:0x00003544; // type:function size:0x188 +fn_1_36CC = .text:0x000036CC; // type:function size:0x68 +fn_1_3734 = .text:0x00003734; // type:function size:0x40 +fn_1_3774 = .text:0x00003774; // type:function size:0xC8 +fn_1_383C = .text:0x0000383C; // type:function size:0x11C +fn_1_3958 = .text:0x00003958; // type:function size:0x624 +fn_1_3F7C = .text:0x00003F7C; // type:function size:0x300 +fn_1_427C = .text:0x0000427C; // type:function size:0x2E0 +fn_1_455C = .text:0x0000455C; // type:function size:0x1F8 +fn_1_4754 = .text:0x00004754; // type:function size:0x1F8 +fn_1_494C = .text:0x0000494C; // type:function size:0x1008 +fn_1_5954 = .text:0x00005954; // type:function size:0x88 +fn_1_59DC = .text:0x000059DC; // type:function size:0x88 +fn_1_5A64 = .text:0x00005A64; // type:function size:0x2C +fn_1_5A90 = .text:0x00005A90; // type:function size:0x1E4 +fn_1_5C74 = .text:0x00005C74; // type:function size:0x464 +fn_1_60D8 = .text:0x000060D8; // type:function size:0x178 +fn_1_6250 = .text:0x00006250; // type:function size:0x104 +fn_1_6354 = .text:0x00006354; // type:function size:0x80 +fn_1_63D4 = .text:0x000063D4; // type:function size:0x120 +fn_1_64F4 = .text:0x000064F4; // type:function size:0x48 +fn_1_653C = .text:0x0000653C; // type:function size:0x10C +fn_1_6648 = .text:0x00006648; // type:function size:0x10 +fn_1_6658 = .text:0x00006658; // type:function size:0x2C +fn_1_6684 = .text:0x00006684; // type:function size:0x8C +fn_1_6710 = .text:0x00006710; // type:function size:0x7C +fn_1_678C = .text:0x0000678C; // type:function size:0x44 +fn_1_67D0 = .text:0x000067D0; // type:function size:0x28 +fn_1_67F8 = .text:0x000067F8; // type:function size:0x10 +fn_1_6808 = .text:0x00006808; // type:function size:0x64 +fn_1_686C = .text:0x0000686C; // type:function size:0xCC +fn_1_6938 = .text:0x00006938; // type:function size:0x3BC +fn_1_6CF4 = .text:0x00006CF4; // type:function size:0x50 +fn_1_6D44 = .text:0x00006D44; // type:function size:0x94 +fn_1_6DD8 = .text:0x00006DD8; // type:function size:0x440 +fn_1_7218 = .text:0x00007218; // type:function size:0x98 +fn_1_72B0 = .text:0x000072B0; // type:function size:0x98 +fn_1_7348 = .text:0x00007348; // type:function size:0x98 +fn_1_73E0 = .text:0x000073E0; // type:function size:0x100 +fn_1_74E0 = .text:0x000074E0; // type:function size:0x20C +fn_1_76EC = .text:0x000076EC; // type:function size:0x720 +fn_1_7E0C = .text:0x00007E0C; // type:function size:0x41C +fn_1_8228 = .text:0x00008228; // type:function size:0x1D4 +fn_1_83FC = .text:0x000083FC; // type:function size:0x520 +fn_1_891C = .text:0x0000891C; // type:function size:0x10 +fn_1_892C = .text:0x0000892C; // type:function size:0x34 +_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:0x54 +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x160 +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x60 +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x10 +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x1C +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x6C +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0xC data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0xC data:4byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x30 data:4byte +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x30 data:4byte +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0xC data:4byte +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x1E data:string +lbl_1_data_3C = .data:0x0000003C; // type:object size:0x14 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x80 +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x1C +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x30 +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0x3 +lbl_1_data_138 = .data:0x00000138; // type:object size:0x1C +lbl_1_data_154 = .data:0x00000154; // type:object size:0x10 data:4byte +lbl_1_data_164 = .data:0x00000164; // type:object size:0xD data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x10 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:float +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x1C data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x1C data:float +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x1C data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x8 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x80 data:float +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x8AC data:4byte +lbl_1_bss_9EC = .bss:0x000009EC; // type:object size:0x2 data:2byte +lbl_1_bss_9F0 = .bss:0x000009F0; // type:object size:0x38 data:2byte +lbl_1_bss_A28 = .bss:0x00000A28; // type:object size:0x4 data:4byte +lbl_1_bss_A2C = .bss:0x00000A2C; // type:object size:0x10 data:4byte +lbl_1_bss_A3C = .bss:0x00000A3C; // type:object size:0x4 data:4byte +lbl_1_bss_A40 = .bss:0x00000A40; // type:object size:0x8 data:4byte +lbl_1_bss_A48 = .bss:0x00000A48; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m421Dll/splits.txt b/config/GMPP01_00/rels/m421Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m421Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m421Dll/symbols.txt b/config/GMPP01_00/rels/m421Dll/symbols.txt new file mode 100644 index 00000000..30da45c8 --- /dev/null +++ b/config/GMPP01_00/rels/m421Dll/symbols.txt @@ -0,0 +1,269 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x400 +fn_1_4A0 = .text:0x000004A0; // type:function size:0xD8 +fn_1_578 = .text:0x00000578; // type:function size:0x20C +fn_1_784 = .text:0x00000784; // type:function size:0x134 +fn_1_8B8 = .text:0x000008B8; // type:function size:0x404 +fn_1_CBC = .text:0x00000CBC; // type:function size:0x430 +fn_1_10EC = .text:0x000010EC; // type:function size:0x340 +fn_1_142C = .text:0x0000142C; // type:function size:0x424 +fn_1_1850 = .text:0x00001850; // type:function size:0x440 +fn_1_1C90 = .text:0x00001C90; // type:function size:0x4AC +fn_1_213C = .text:0x0000213C; // type:function size:0x70 +fn_1_21AC = .text:0x000021AC; // type:function size:0x87C +fn_1_2A28 = .text:0x00002A28; // type:function size:0x190 +fn_1_2BB8 = .text:0x00002BB8; // type:function size:0x468 +fn_1_3020 = .text:0x00003020; // type:function size:0xB0 +fn_1_30D0 = .text:0x000030D0; // type:function size:0x264 +fn_1_3334 = .text:0x00003334; // type:function size:0x28 +fn_1_335C = .text:0x0000335C; // type:function size:0x5A0 +fn_1_38FC = .text:0x000038FC; // type:function size:0x254 +fn_1_3B50 = .text:0x00003B50; // type:function size:0x14 +fn_1_3B64 = .text:0x00003B64; // type:function size:0x14 +fn_1_3B78 = .text:0x00003B78; // type:function size:0x9C +fn_1_3C14 = .text:0x00003C14; // type:function size:0x9C +fn_1_3CB0 = .text:0x00003CB0; // type:function size:0x68 +fn_1_3D18 = .text:0x00003D18; // type:function size:0x6C +fn_1_3D84 = .text:0x00003D84; // type:function size:0x98 +fn_1_3E1C = .text:0x00003E1C; // type:function size:0x18 +fn_1_3E34 = .text:0x00003E34; // type:function size:0x18 +fn_1_3E4C = .text:0x00003E4C; // type:function size:0x18 +fn_1_3E64 = .text:0x00003E64; // type:function size:0x18 +fn_1_3E7C = .text:0x00003E7C; // type:function size:0x7C +fn_1_3EF8 = .text:0x00003EF8; // type:function size:0x30 +fn_1_3F28 = .text:0x00003F28; // type:function size:0x40 +fn_1_3F68 = .text:0x00003F68; // type:function size:0x30 +fn_1_3F98 = .text:0x00003F98; // type:function size:0x30 +fn_1_3FC8 = .text:0x00003FC8; // type:function size:0x30 +fn_1_3FF8 = .text:0x00003FF8; // type:function size:0x38 +fn_1_4030 = .text:0x00004030; // type:function size:0x208 +fn_1_4238 = .text:0x00004238; // type:function size:0x240 +fn_1_4478 = .text:0x00004478; // type:function size:0x11C +fn_1_4594 = .text:0x00004594; // type:function size:0xB4 +fn_1_4648 = .text:0x00004648; // type:function size:0x268 +fn_1_48B0 = .text:0x000048B0; // type:function size:0x24 +fn_1_48D4 = .text:0x000048D4; // type:function size:0x62C +fn_1_4F00 = .text:0x00004F00; // type:function size:0x160 +fn_1_5060 = .text:0x00005060; // type:function size:0x368 +fn_1_53C8 = .text:0x000053C8; // type:function size:0x3C4 +fn_1_578C = .text:0x0000578C; // type:function size:0x410 +fn_1_5B9C = .text:0x00005B9C; // type:function size:0x5E8 +fn_1_6184 = .text:0x00006184; // type:function size:0x27C +fn_1_6400 = .text:0x00006400; // type:function size:0x2B4 +fn_1_66B4 = .text:0x000066B4; // type:function size:0xB8 +fn_1_676C = .text:0x0000676C; // type:function size:0x5DC +fn_1_6D48 = .text:0x00006D48; // type:function size:0x730 +fn_1_7478 = .text:0x00007478; // type:function size:0x1F8 +fn_1_7670 = .text:0x00007670; // type:function size:0x430 +fn_1_7AA0 = .text:0x00007AA0; // type:function size:0x418 +fn_1_7EB8 = .text:0x00007EB8; // type:function size:0x208 +fn_1_80C0 = .text:0x000080C0; // type:function size:0x87C +fn_1_893C = .text:0x0000893C; // type:function size:0xB38 +fn_1_9474 = .text:0x00009474; // type:function size:0xF8 +fn_1_956C = .text:0x0000956C; // type:function size:0x2C0 +fn_1_982C = .text:0x0000982C; // type:function size:0x18C +fn_1_99B8 = .text:0x000099B8; // type:function size:0x74 +fn_1_9A2C = .text:0x00009A2C; // type:function size:0x1D0 +fn_1_9BFC = .text:0x00009BFC; // type:function size:0x3C +fn_1_9C38 = .text:0x00009C38; // type:function size:0x198 +fn_1_9DD0 = .text:0x00009DD0; // type:function size:0x758 +fn_1_A528 = .text:0x0000A528; // type:function size:0x640 +fn_1_AB68 = .text:0x0000AB68; // type:function size:0x4 +fn_1_AB6C = .text:0x0000AB6C; // type:function size:0x70 +fn_1_ABDC = .text:0x0000ABDC; // type:function size:0x580 +fn_1_B15C = .text:0x0000B15C; // type:function size:0x60 +fn_1_B1BC = .text:0x0000B1BC; // type:function size:0x4 +fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x1D8 +fn_1_B398 = .text:0x0000B398; // type:function size:0x4 +fn_1_B39C = .text:0x0000B39C; // type:function size:0x40 +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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:0x8 data:double +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:4byte +lbl_1_rodata_AC = .rodata:0x000000AC; // type:object size:0x50 +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x14 data:4byte +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:0x10 data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x10 data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x10 data:4byte +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x30 data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x30 data:4byte +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0xC data:4byte +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 +lbl_1_data_94 = .data:0x00000094; // type:object size:0xC +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x1 data:byte +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x1A data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0x1A +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x2C +lbl_1_data_104 = .data:0x00000104; // type:object size:0x60 +lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x20 +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x18 +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x78 +lbl_1_data_234 = .data:0x00000234; // type:object size:0x30 +lbl_1_data_264 = .data:0x00000264; // type:object size:0x30 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x18 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0xC +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0xC +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0xC +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0xC +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0xC +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x6 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m422Dll/splits.txt b/config/GMPP01_00/rels/m422Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m422Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m422Dll/symbols.txt b/config/GMPP01_00/rels/m422Dll/symbols.txt new file mode 100644 index 00000000..118c4a8d --- /dev/null +++ b/config/GMPP01_00/rels/m422Dll/symbols.txt @@ -0,0 +1,249 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x25C +fn_1_2FC = .text:0x000002FC; // type:function size:0x31C0 +fn_1_34BC = .text:0x000034BC; // type:function size:0x6B8 +fn_1_3B74 = .text:0x00003B74; // type:function size:0x4E60 +fn_1_89D4 = .text:0x000089D4; // type:function size:0xA28 +fn_1_93FC = .text:0x000093FC; // type:function size:0x4F0 +fn_1_98EC = .text:0x000098EC; // type:function size:0x134C +fn_1_AC38 = .text:0x0000AC38; // type:function size:0x3B8 +fn_1_AFF0 = .text:0x0000AFF0; // type:function size:0x54 +fn_1_B044 = .text:0x0000B044; // type:function size:0x428 +fn_1_B46C = .text:0x0000B46C; // type:function size:0xAC +_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:0x30 +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x30 +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x30 +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x30 +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x30 +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x30 +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x30 +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x1C data:4byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x1C data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0xC data:4byte +lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0xC data:4byte +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC data:4byte +lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0xC data:4byte +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0xC data:4byte +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x20 data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x60 +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:4byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x60 +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x30 data:4byte +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x34 data:4byte +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x8 data:double +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 data:double +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 data:double +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5EC = .rodata:0x000005EC; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x2C data:4byte +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 data:double +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x8 data:double +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x8 data:double +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x28 data:4byte +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x20 data:4byte +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:4byte +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:4byte +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 data:4byte +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x40 data:4byte +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x40 data:4byte +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x4 data:float +lbl_1_rodata_74C = .rodata:0x0000074C; // type:object size:0x4 data:float +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float +lbl_1_rodata_754 = .rodata:0x00000754; // type:object size:0x4 data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x4 data:float +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x8 data:double +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x4 data:float +lbl_1_rodata_76C = .rodata:0x0000076C; // type:object size:0x10 data:4byte +lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0xC data:4byte +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0xC data:4byte +lbl_1_rodata_794 = .rodata:0x00000794; // type:object size:0x1 data:byte +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x4 data:float +lbl_1_rodata_79C = .rodata:0x0000079C; // type:object size:0x4 data:float +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x4 data:float +lbl_1_rodata_7A4 = .rodata:0x000007A4; // type:object size:0x4 data:float +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x40 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x60 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x20 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x20 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x7 +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x9 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x1680 data:float +lbl_1_data_1770 = .data:0x00001770; // type:object size:0xF data:string +lbl_1_data_177F = .data:0x0000177F; // type:object size:0x10 data:string +lbl_1_data_178F = .data:0x0000178F; // type:object size:0x10 data:string +lbl_1_data_179F = .data:0x0000179F; // type:object size:0xF data:string +lbl_1_data_17AE = .data:0x000017AE; // type:object size:0x10 data:string +lbl_1_data_17BE = .data:0x000017BE; // type:object size:0x10 data:string +lbl_1_data_17CE = .data:0x000017CE; // type:object size:0xF data:string +lbl_1_data_17DD = .data:0x000017DD; // type:object size:0x11 data:string +lbl_1_data_17EE = .data:0x000017EE; // type:object size:0x11 data:string +lbl_1_data_17FF = .data:0x000017FF; // type:object size:0x12 data:string +lbl_1_data_1811 = .data:0x00001811; // type:object size:0x5 data:string +lbl_1_data_1816 = .data:0x00001816; // type:object size:0x12 +lbl_1_data_1828 = .data:0x00001828; // type:object size:0x50 +lbl_1_data_1878 = .data:0x00001878; // type:object size:0x2C +lbl_1_data_18A4 = .data:0x000018A4; // type:object size:0x8 data:4byte +lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x4 data:4byte +lbl_1_data_18B0 = .data:0x000018B0; // type:object size:0x4 data:4byte +lbl_1_data_18B4 = .data:0x000018B4; // type:object size:0x40 +lbl_1_data_18F4 = .data:0x000018F4; // type:object size:0xC data:4byte +lbl_1_data_1900 = .data:0x00001900; // type:object size:0x4 data:4byte +lbl_1_data_1904 = .data:0x00001904; // type:object size:0x1B data:string +lbl_1_data_191F = .data:0x0000191F; // type:object size:0x19 data:string +lbl_1_data_1938 = .data:0x00001938; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x8 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0xB0 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0xC0 diff --git a/config/GMPP01_00/rels/m423Dll/splits.txt b/config/GMPP01_00/rels/m423Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m423Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m423Dll/symbols.txt b/config/GMPP01_00/rels/m423Dll/symbols.txt new file mode 100644 index 00000000..7087bc41 --- /dev/null +++ b/config/GMPP01_00/rels/m423Dll/symbols.txt @@ -0,0 +1,367 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x278 +fn_1_318 = .text:0x00000318; // type:function size:0x98 +fn_1_3B0 = .text:0x000003B0; // type:function size:0xA44 +fn_1_DF4 = .text:0x00000DF4; // type:function size:0x64 +fn_1_E58 = .text:0x00000E58; // type:function size:0xA0 +fn_1_EF8 = .text:0x00000EF8; // type:function size:0x10 +fn_1_F08 = .text:0x00000F08; // type:function size:0x50 +fn_1_F58 = .text:0x00000F58; // type:function size:0x244 +fn_1_119C = .text:0x0000119C; // type:function size:0x34 +fn_1_11D0 = .text:0x000011D0; // type:function size:0x60 +fn_1_1230 = .text:0x00001230; // type:function size:0x68 +fn_1_1298 = .text:0x00001298; // type:function size:0x100 +fn_1_1398 = .text:0x00001398; // type:function size:0xA4 +fn_1_143C = .text:0x0000143C; // type:function size:0x5C +fn_1_1498 = .text:0x00001498; // type:function size:0x45C +fn_1_18F4 = .text:0x000018F4; // type:function size:0x260 +fn_1_1B54 = .text:0x00001B54; // type:function size:0x400 +fn_1_1F54 = .text:0x00001F54; // type:function size:0x334 +fn_1_2288 = .text:0x00002288; // type:function size:0x394 +fn_1_261C = .text:0x0000261C; // type:function size:0x394 +fn_1_29B0 = .text:0x000029B0; // type:function size:0x4 +fn_1_29B4 = .text:0x000029B4; // type:function size:0x24C +fn_1_2C00 = .text:0x00002C00; // type:function size:0x8D0 +fn_1_34D0 = .text:0x000034D0; // type:function size:0x50 +fn_1_3520 = .text:0x00003520; // type:function size:0x370 +fn_1_3890 = .text:0x00003890; // type:function size:0x1C0 +fn_1_3A50 = .text:0x00003A50; // type:function size:0xC +fn_1_3A5C = .text:0x00003A5C; // type:function size:0x28 +fn_1_3A84 = .text:0x00003A84; // type:function size:0x170 +fn_1_3BF4 = .text:0x00003BF4; // type:function size:0x3E4 +fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x798 +fn_1_4770 = .text:0x00004770; // type:function size:0x1628 +fn_1_5D98 = .text:0x00005D98; // type:function size:0x1B6C +fn_1_7904 = .text:0x00007904; // type:function size:0xC +fn_1_7910 = .text:0x00007910; // type:function size:0x4C +fn_1_795C = .text:0x0000795C; // type:function size:0x100 +fn_1_7A5C = .text:0x00007A5C; // type:function size:0x18C +fn_1_7BE8 = .text:0x00007BE8; // type:function size:0xA0 +fn_1_7C88 = .text:0x00007C88; // type:function size:0x780 +fn_1_8408 = .text:0x00008408; // type:function size:0x70 +fn_1_8478 = .text:0x00008478; // type:function size:0x97C +fn_1_8DF4 = .text:0x00008DF4; // type:function size:0x910 +fn_1_9704 = .text:0x00009704; // type:function size:0x50 +fn_1_9754 = .text:0x00009754; // type:function size:0x28C +fn_1_99E0 = .text:0x000099E0; // type:function size:0x1100 +fn_1_AAE0 = .text:0x0000AAE0; // type:function size:0xC +fn_1_AAEC = .text:0x0000AAEC; // type:function size:0x28 +fn_1_AB14 = .text:0x0000AB14; // type:function size:0x238 +fn_1_AD4C = .text:0x0000AD4C; // type:function size:0x74 +fn_1_ADC0 = .text:0x0000ADC0; // type:function size:0x1E4 +fn_1_AFA4 = .text:0x0000AFA4; // type:function size:0x84 +fn_1_B028 = .text:0x0000B028; // type:function size:0x254 +fn_1_B27C = .text:0x0000B27C; // type:function size:0x68 +fn_1_B2E4 = .text:0x0000B2E4; // type:function size:0x160 +fn_1_B444 = .text:0x0000B444; // type:function size:0x12C +fn_1_B570 = .text:0x0000B570; // type:function size:0x8A8 +fn_1_BE18 = .text:0x0000BE18; // type:function size:0x7C0 +fn_1_C5D8 = .text:0x0000C5D8; // type:function size:0x1498 +fn_1_DA70 = .text:0x0000DA70; // type:function size:0x108 +fn_1_DB78 = .text:0x0000DB78; // type:function size:0x190 +fn_1_DD08 = .text:0x0000DD08; // type:function size:0x5C +fn_1_DD64 = .text:0x0000DD64; // type:function size:0x14C +fn_1_DEB0 = .text:0x0000DEB0; // type:function size:0x44C +fn_1_E2FC = .text:0x0000E2FC; // type:function size:0xD4 +fn_1_E3D0 = .text:0x0000E3D0; // type:function size:0xA0 +fn_1_E470 = .text:0x0000E470; // type:function size:0x4 +fn_1_E474 = .text:0x0000E474; // type:function size:0x12C +fn_1_E5A0 = .text:0x0000E5A0; // type:function size:0x8C +fn_1_E62C = .text:0x0000E62C; // type:function size:0x120 +fn_1_E74C = .text:0x0000E74C; // type:function size:0x6C +fn_1_E7B8 = .text:0x0000E7B8; // type:function size:0x8CC +fn_1_F084 = .text:0x0000F084; // type:function size:0x630 +fn_1_F6B4 = .text:0x0000F6B4; // type:function size:0x11C +fn_1_F7D0 = .text:0x0000F7D0; // type:function size:0x50 +fn_1_F820 = .text:0x0000F820; // type:function size:0x360 +fn_1_FB80 = .text:0x0000FB80; // type:function size:0x4D0 +fn_1_10050 = .text:0x00010050; // type:function size:0x88 +fn_1_100D8 = .text:0x000100D8; // type:function size:0x90 +fn_1_10168 = .text:0x00010168; // type:function size:0xB4 +fn_1_1021C = .text:0x0001021C; // type:function size:0x3A4 +fn_1_105C0 = .text:0x000105C0; // type:function size:0xAC +fn_1_1066C = .text:0x0001066C; // type:function size:0x4 +fn_1_10670 = .text:0x00010670; // type:function size:0x10 +fn_1_10680 = .text:0x00010680; // type:function size:0x198 +fn_1_10818 = .text:0x00010818; // type:function size:0x4F0 +fn_1_10D08 = .text:0x00010D08; // type:function size:0x440 +fn_1_11148 = .text:0x00011148; // type:function size:0x10C +fn_1_11254 = .text:0x00011254; // type:function size:0x4B0 +fn_1_11704 = .text:0x00011704; // type:function size:0x33C +fn_1_11A40 = .text:0x00011A40; // type:function size:0x8DC +fn_1_1231C = .text:0x0001231C; // type:function size:0x118 +fn_1_12434 = .text:0x00012434; // type:function size:0x250 +fn_1_12684 = .text:0x00012684; // type:function size:0x3F8 +fn_1_12A7C = .text:0x00012A7C; // type:function size:0xB4 +fn_1_12B30 = .text:0x00012B30; // type:function size:0x27C +fn_1_12DAC = .text:0x00012DAC; // type:function size:0x100 +fn_1_12EAC = .text:0x00012EAC; // type:function size:0xFC +fn_1_12FA8 = .text:0x00012FA8; // type:function size:0x4E4 +fn_1_1348C = .text:0x0001348C; // type:function size:0x330 +fn_1_137BC = .text:0x000137BC; // type:function size:0x148 +fn_1_13904 = .text:0x00013904; // type:function size:0x78C +_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:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // 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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x1 data:byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0x118 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 data:float +lbl_1_data_180 = .data:0x00000180; // type:object size:0x30 data:float +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xC +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0xC +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xC +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x24 +lbl_1_data_21C = .data:0x0000021C; // type:object size:0xC +lbl_1_data_228 = .data:0x00000228; // type:object size:0xC +lbl_1_data_234 = .data:0x00000234; // type:object size:0x4 +lbl_1_data_238 = .data:0x00000238; // type:object size:0x18 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x18 +jumptable_1_data_268 = .data:0x00000268; // type:object size:0x30 scope:local +lbl_1_data_298 = .data:0x00000298; // type:object size:0x1 data:byte +lbl_1_data_29C = .data:0x0000029C; // type:object size:0x30 +lbl_1_data_2CC = .data:0x000002CC; // type:object size:0x20 +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x20 +lbl_1_data_30C = .data:0x0000030C; // type:object size:0x4 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x1 data:byte +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 data:4byte +lbl_1_data_334 = .data:0x00000334; // type:object size:0x30 +lbl_1_data_364 = .data:0x00000364; // type:object size:0x24 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x1 data:byte +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x1F data:string +lbl_1_data_3AB = .data:0x000003AB; // type:object size:0x1 data:byte +lbl_1_data_3AF = .data:0x000003AF; // type:object size:0x1 data:byte +lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x5 data:byte +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0xF0 +lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0x54 +lbl_1_data_4FC = .data:0x000004FC; // type:object size:0xC +lbl_1_data_508 = .data:0x00000508; // type:object size:0x18 +lbl_1_data_520 = .data:0x00000520; // type:object size:0x6 +lbl_1_data_526 = .data:0x00000526; // type:object size:0x6 +lbl_1_data_52C = .data:0x0000052C; // type:object size:0x8 +lbl_1_data_534 = .data:0x00000534; // type:object size:0x40 +lbl_1_data_574 = .data:0x00000574; // type:object size:0xC +lbl_1_data_580 = .data:0x00000580; // type:object size:0x58 +lbl_1_data_5D8 = .data:0x000005D8; // type:object size:0x10 +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0xC data:4byte +lbl_1_data_5F4 = .data:0x000005F4; // type:object size:0x1 data:byte +lbl_1_data_5F8 = .data:0x000005F8; // type:object size:0x1 data:byte +jumptable_1_data_5FC = .data:0x000005FC; // type:object size:0x34 scope:local +lbl_1_data_630 = .data:0x00000630; // type:object size:0x1 data:byte +jumptable_1_data_634 = .data:0x00000634; // type:object size:0x34 scope:local +lbl_1_data_668 = .data:0x00000668; // type:object size:0x10 +lbl_1_data_678 = .data:0x00000678; // type:object size:0x10 +lbl_1_data_688 = .data:0x00000688; // type:object size:0x20 +lbl_1_data_6A8 = .data:0x000006A8; // type:object size:0x20 data:4byte +lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0x10 +lbl_1_data_6D8 = .data:0x000006D8; // type:object size:0x20 +lbl_1_data_6F8 = .data:0x000006F8; // type:object size:0x20 +lbl_1_data_718 = .data:0x00000718; // type:object size:0x20 +lbl_1_data_738 = .data:0x00000738; // type:object size:0x20 +lbl_1_data_758 = .data:0x00000758; // type:object size:0x1 data:byte +lbl_1_data_75C = .data:0x0000075C; // type:object size:0x48 +jumptable_1_data_7A4 = .data:0x000007A4; // type:object size:0x20 scope:local +lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x18 +jumptable_1_data_7DC = .data:0x000007DC; // type:object size:0x20 scope:local +lbl_1_data_7FC = .data:0x000007FC; // type:object size:0x20 +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x20 +lbl_1_data_83C = .data:0x0000083C; // type:object size:0x8 +lbl_1_data_844 = .data:0x00000844; // type:object size:0x60 +lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x20 +lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0x30 +lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x20 +lbl_1_data_914 = .data:0x00000914; // type:object size:0x6 data:byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x3C data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x3C data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0xC data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x10 +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x10 data:4byte +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x10 data:4byte +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x8 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m424Dll/splits.txt b/config/GMPP01_00/rels/m424Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m424Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m424Dll/symbols.txt b/config/GMPP01_00/rels/m424Dll/symbols.txt new file mode 100644 index 00000000..73453dab --- /dev/null +++ b/config/GMPP01_00/rels/m424Dll/symbols.txt @@ -0,0 +1,314 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x1C4 +fn_1_264 = .text:0x00000264; // type:function size:0x1B8 +fn_1_41C = .text:0x0000041C; // type:function size:0xAB8 +fn_1_ED4 = .text:0x00000ED4; // type:function size:0x60 +fn_1_F34 = .text:0x00000F34; // type:function size:0xA0 +fn_1_FD4 = .text:0x00000FD4; // type:function size:0x10 +fn_1_FE4 = .text:0x00000FE4; // type:function size:0x1FC +fn_1_11E0 = .text:0x000011E0; // type:function size:0x4 +fn_1_11E4 = .text:0x000011E4; // type:function size:0x4 +fn_1_11E8 = .text:0x000011E8; // type:function size:0x10 +fn_1_11F8 = .text:0x000011F8; // type:function size:0x154 +fn_1_134C = .text:0x0000134C; // type:function size:0x118 +fn_1_1464 = .text:0x00001464; // type:function size:0x250 +fn_1_16B4 = .text:0x000016B4; // type:function size:0x3F8 +fn_1_1AAC = .text:0x00001AAC; // type:function size:0xD4 +fn_1_1B80 = .text:0x00001B80; // type:function size:0x2C +fn_1_1BAC = .text:0x00001BAC; // type:function size:0x264 +fn_1_1E10 = .text:0x00001E10; // type:function size:0x314 +fn_1_2124 = .text:0x00002124; // type:function size:0xC +fn_1_2130 = .text:0x00002130; // type:function size:0x74 +fn_1_21A4 = .text:0x000021A4; // type:function size:0x70 +fn_1_2214 = .text:0x00002214; // type:function size:0x218 +fn_1_242C = .text:0x0000242C; // type:function size:0xF4 +fn_1_2520 = .text:0x00002520; // type:function size:0x94 +fn_1_25B4 = .text:0x000025B4; // type:function size:0xB0 +fn_1_2664 = .text:0x00002664; // type:function size:0xB0 +fn_1_2714 = .text:0x00002714; // type:function size:0x160 +fn_1_2874 = .text:0x00002874; // type:function size:0x20 +fn_1_2894 = .text:0x00002894; // type:function size:0x598 +fn_1_2E2C = .text:0x00002E2C; // type:function size:0x4 +fn_1_2E30 = .text:0x00002E30; // type:function size:0x384 +fn_1_31B4 = .text:0x000031B4; // type:function size:0x63C +fn_1_37F0 = .text:0x000037F0; // type:function size:0xA24 +fn_1_4214 = .text:0x00004214; // type:function size:0x478 +fn_1_468C = .text:0x0000468C; // type:function size:0x4 +fn_1_4690 = .text:0x00004690; // type:function size:0x234 +fn_1_48C4 = .text:0x000048C4; // type:function size:0x1C0 +fn_1_4A84 = .text:0x00004A84; // type:function size:0x588 +fn_1_500C = .text:0x0000500C; // type:function size:0x1020 +fn_1_602C = .text:0x0000602C; // type:function size:0x40 +fn_1_606C = .text:0x0000606C; // type:function size:0xA0 +fn_1_610C = .text:0x0000610C; // type:function size:0x94 +fn_1_61A0 = .text:0x000061A0; // type:function size:0x84 +fn_1_6224 = .text:0x00006224; // type:function size:0x4C +fn_1_6270 = .text:0x00006270; // type:function size:0x54 +fn_1_62C4 = .text:0x000062C4; // type:function size:0x13C +fn_1_6400 = .text:0x00006400; // type:function size:0x168 +fn_1_6568 = .text:0x00006568; // type:function size:0x120 +fn_1_6688 = .text:0x00006688; // type:function size:0x39C +fn_1_6A24 = .text:0x00006A24; // type:function size:0x2E0 +fn_1_6D04 = .text:0x00006D04; // type:function size:0x38C +fn_1_7090 = .text:0x00007090; // type:function size:0x384 +fn_1_7414 = .text:0x00007414; // type:function size:0x3A4 +fn_1_77B8 = .text:0x000077B8; // type:function size:0x238 +fn_1_79F0 = .text:0x000079F0; // type:function size:0x2A4 +fn_1_7C94 = .text:0x00007C94; // type:function size:0x130 +fn_1_7DC4 = .text:0x00007DC4; // type:function size:0x198 +fn_1_7F5C = .text:0x00007F5C; // type:function size:0xD8 +fn_1_8034 = .text:0x00008034; // type:function size:0xBC +fn_1_80F0 = .text:0x000080F0; // type:function size:0x33C +fn_1_842C = .text:0x0000842C; // type:function size:0x4B0 +fn_1_88DC = .text:0x000088DC; // type:function size:0x3C +fn_1_8918 = .text:0x00008918; // type:function size:0x2C +fn_1_8944 = .text:0x00008944; // type:function size:0x2C +fn_1_8970 = .text:0x00008970; // type:function size:0x2C +fn_1_899C = .text:0x0000899C; // type:function size:0x2C +fn_1_89C8 = .text:0x000089C8; // type:function size:0x2C +fn_1_89F4 = .text:0x000089F4; // type:function size:0x2C +fn_1_8A20 = .text:0x00008A20; // type:function size:0x7C +fn_1_8A9C = .text:0x00008A9C; // type:function size:0x1D0 +fn_1_8C6C = .text:0x00008C6C; // type:function size:0x404 +fn_1_9070 = .text:0x00009070; // type:function size:0x374 +fn_1_93E4 = .text:0x000093E4; // type:function size:0xB4 +fn_1_9498 = .text:0x00009498; // type:function size:0x2C +fn_1_94C4 = .text:0x000094C4; // type:function size:0x594 +fn_1_9A58 = .text:0x00009A58; // type:function size:0x13F4 +fn_1_AE4C = .text:0x0000AE4C; // type:function size:0xC +fn_1_AE58 = .text:0x0000AE58; // type:function size:0x938 +fn_1_B790 = .text:0x0000B790; // type:function size:0x68 +fn_1_B7F8 = .text:0x0000B7F8; // type:function size:0x84 +fn_1_B87C = .text:0x0000B87C; // type:function size:0x24 +fn_1_B8A0 = .text:0x0000B8A0; // type:function size:0x78 +fn_1_B918 = .text:0x0000B918; // type:function size:0x78 +fn_1_B990 = .text:0x0000B990; // type:function size:0x44 +fn_1_B9D4 = .text:0x0000B9D4; // type:function size:0x830 +fn_1_C204 = .text:0x0000C204; // type:function size:0xD0 +fn_1_C2D4 = .text:0x0000C2D4; // type:function size:0x324 +fn_1_C5F8 = .text:0x0000C5F8; // type:function size:0x250 +fn_1_C848 = .text:0x0000C848; // type:function size:0x24 +fn_1_C86C = .text:0x0000C86C; // type:function size:0x124 +fn_1_C990 = .text:0x0000C990; // type:function size:0x4D8 +fn_1_CE68 = .text:0x0000CE68; // type:function size:0x8C +fn_1_CEF4 = .text:0x0000CEF4; // type:function size:0x80 +fn_1_CF74 = .text:0x0000CF74; // type:function size:0x90 +fn_1_D004 = .text:0x0000D004; // type:function size:0x64 +_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:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0xC data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // 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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0x24 +lbl_1_data_9C = .data:0x0000009C; // type:object size:0xC +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xC +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4 +jumptable_1_data_B8 = .data:0x000000B8; // type:object size:0x28 scope:local +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC +lbl_1_data_EC = .data:0x000000EC; // type:object size:0xC +lbl_1_data_F8 = .data:0x000000F8; // type:object size:0xC +lbl_1_data_104 = .data:0x00000104; // type:object size:0x4C +lbl_1_data_150 = .data:0x00000150; // type:object size:0x5C +jumptable_1_data_1AC = .data:0x000001AC; // type:object size:0x2C scope:local +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x8 data:4byte +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x30 data:float +lbl_1_data_210 = .data:0x00000210; // type:object size:0xC data:float +lbl_1_data_21C = .data:0x0000021C; // type:object size:0xC0 +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0xC +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x24 +lbl_1_data_30C = .data:0x0000030C; // type:object size:0xC data:4byte +lbl_1_data_318 = .data:0x00000318; // type:object size:0x6 data:string +lbl_1_data_31E = .data:0x0000031E; // type:object size:0x6 data:string +lbl_1_data_324 = .data:0x00000324; // type:object size:0x8 +jumptable_1_data_32C = .data:0x0000032C; // type:object size:0x40 scope:local +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x20 +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x20 +lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x19 data:string +lbl_1_data_3C5 = .data:0x000003C5; // type:object size:0x5 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x8 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x534 data:4byte +lbl_1_bss_594 = .bss:0x00000594; // type:object size:0x18 +lbl_1_bss_5AC = .bss:0x000005AC; // type:object size:0x10 data:4byte +lbl_1_bss_5BC = .bss:0x000005BC; // type:object size:0x84 +lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x80 data:4byte +lbl_1_bss_6C0 = .bss:0x000006C0; // type:object size:0x4 data:4byte +lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x4 data:4byte +lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x4 data:4byte +lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0xC data:4byte +lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte +lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m425Dll/splits.txt b/config/GMPP01_00/rels/m425Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m425Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m425Dll/symbols.txt b/config/GMPP01_00/rels/m425Dll/symbols.txt new file mode 100644 index 00000000..4e26a147 --- /dev/null +++ b/config/GMPP01_00/rels/m425Dll/symbols.txt @@ -0,0 +1,300 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3C0 +fn_1_460 = .text:0x00000460; // type:function size:0x20 +fn_1_480 = .text:0x00000480; // type:function size:0x464 +fn_1_8E4 = .text:0x000008E4; // type:function size:0x65C +fn_1_F40 = .text:0x00000F40; // type:function size:0x60 +fn_1_FA0 = .text:0x00000FA0; // type:function size:0x524 +fn_1_14C4 = .text:0x000014C4; // type:function size:0x120 +fn_1_15E4 = .text:0x000015E4; // type:function size:0xC4 +fn_1_16A8 = .text:0x000016A8; // type:function size:0x490 +fn_1_1B38 = .text:0x00001B38; // type:function size:0xC44 +fn_1_277C = .text:0x0000277C; // type:function size:0xEC +fn_1_2868 = .text:0x00002868; // type:function size:0x224 +fn_1_2A8C = .text:0x00002A8C; // type:function size:0x98 +fn_1_2B24 = .text:0x00002B24; // type:function size:0x34C +fn_1_2E70 = .text:0x00002E70; // type:function size:0x568 +fn_1_33D8 = .text:0x000033D8; // type:function size:0x384 +fn_1_375C = .text:0x0000375C; // type:function size:0x76C +fn_1_3EC8 = .text:0x00003EC8; // type:function size:0xB0 +fn_1_3F78 = .text:0x00003F78; // type:function size:0xB08 +fn_1_4A80 = .text:0x00004A80; // type:function size:0x5BC +fn_1_503C = .text:0x0000503C; // type:function size:0x524 +fn_1_5560 = .text:0x00005560; // type:function size:0xA0 +fn_1_5600 = .text:0x00005600; // type:function size:0xA8 +fn_1_56A8 = .text:0x000056A8; // type:function size:0x8C +fn_1_5734 = .text:0x00005734; // type:function size:0x98 +fn_1_57CC = .text:0x000057CC; // type:function size:0x44C +fn_1_5C18 = .text:0x00005C18; // type:function size:0x8B4 +fn_1_64CC = .text:0x000064CC; // type:function size:0x54 +fn_1_6520 = .text:0x00006520; // type:function size:0x78 +fn_1_6598 = .text:0x00006598; // type:function size:0x11C +fn_1_66B4 = .text:0x000066B4; // type:function size:0x78 +fn_1_672C = .text:0x0000672C; // type:function size:0x2D8 +fn_1_6A04 = .text:0x00006A04; // type:function size:0x1CC +fn_1_6BD0 = .text:0x00006BD0; // type:function size:0x30 +fn_1_6C00 = .text:0x00006C00; // type:function size:0xC8 +fn_1_6CC8 = .text:0x00006CC8; // type:function size:0x12C +fn_1_6DF4 = .text:0x00006DF4; // type:function size:0xC8 +fn_1_6EBC = .text:0x00006EBC; // type:function size:0x69D8 +fn_1_D894 = .text:0x0000D894; // type:function size:0x10 +fn_1_D8A4 = .text:0x0000D8A4; // type:function size:0x10 +fn_1_D8B4 = .text:0x0000D8B4; // type:function size:0x10 +fn_1_D8C4 = .text:0x0000D8C4; // type:function size:0x10 +fn_1_D8D4 = .text:0x0000D8D4; // type:function size:0xCC +fn_1_D9A0 = .text:0x0000D9A0; // type:function size:0x19C +fn_1_DB3C = .text:0x0000DB3C; // type:function size:0x2F8 +fn_1_DE34 = .text:0x0000DE34; // type:function size:0x3D4 +fn_1_E208 = .text:0x0000E208; // type:function size:0x704 +fn_1_E90C = .text:0x0000E90C; // type:function size:0x18B0 +fn_1_101BC = .text:0x000101BC; // type:function size:0x828 +fn_1_109E4 = .text:0x000109E4; // type:function size:0x318 +fn_1_10CFC = .text:0x00010CFC; // type:function size:0x60 +fn_1_10D5C = .text:0x00010D5C; // type:function size:0x60 +fn_1_10DBC = .text:0x00010DBC; // type:function size:0x88 +fn_1_10E44 = .text:0x00010E44; // type:function size:0xBC +fn_1_10F00 = .text:0x00010F00; // type:function size:0x38C +fn_1_1128C = .text:0x0001128C; // type:function size:0x78 +fn_1_11304 = .text:0x00011304; // type:function size:0x11C +fn_1_11420 = .text:0x00011420; // type:function size:0x3C +fn_1_1145C = .text:0x0001145C; // type:function size:0x180 +fn_1_115DC = .text:0x000115DC; // type:function size:0x110 +fn_1_116EC = .text:0x000116EC; // type:function size:0x390 +fn_1_11A7C = .text:0x00011A7C; // type:function size:0x46C +fn_1_11EE8 = .text:0x00011EE8; // type:function size:0x7B4 +_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:0x10 data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0xC0 +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x10 data:4byte +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x10 data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x20 data:4byte +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0xC +lbl_1_data_10 = .data:0x00000010; // type:object size:0x30 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x4 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x4 data:4byte +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x28 +lbl_1_data_94 = .data:0x00000094; // type:object size:0x30 +jumptable_1_data_C4 = .data:0x000000C4; // type:object size:0x28 scope:local +jumptable_1_data_EC = .data:0x000000EC; // type:object size:0x28 scope:local +lbl_1_data_114 = .data:0x00000114; // type:object size:0x4 data:4byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0x18 +lbl_1_data_130 = .data:0x00000130; // type:object size:0x20 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x18 +lbl_1_data_168 = .data:0x00000168; // type:object size:0x1 data:byte +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x30 +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x30 +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x20 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x630 +lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x2 data:2byte +lbl_1_bss_642 = .bss:0x00000642; // type:object size:0x2 data:2byte +lbl_1_bss_644 = .bss:0x00000644; // type:object size:0x2 data:2byte +lbl_1_bss_646 = .bss:0x00000646; // type:object size:0x2 data:2byte +lbl_1_bss_648 = .bss:0x00000648; // type:object size:0x2 data:2byte +lbl_1_bss_64C = .bss:0x0000064C; // type:object size:0x10 +lbl_1_bss_65C = .bss:0x0000065C; // type:object size:0x4 data:4byte +lbl_1_bss_660 = .bss:0x00000660; // type:object size:0x4 data:4byte +lbl_1_bss_664 = .bss:0x00000664; // type:object size:0x4 data:4byte +lbl_1_bss_668 = .bss:0x00000668; // type:object size:0x8 data:4byte +lbl_1_bss_670 = .bss:0x00000670; // type:object size:0xC data:float +lbl_1_bss_67C = .bss:0x0000067C; // type:object size:0xC data:float +lbl_1_bss_688 = .bss:0x00000688; // type:object size:0x40 +lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x1 data:byte +lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0x4 data:4byte +lbl_1_bss_6D0 = .bss:0x000006D0; // type:object size:0x1 data:byte +lbl_1_bss_6D4 = .bss:0x000006D4; // type:object size:0x4 data:4byte +lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte +lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte +lbl_1_bss_6E0 = .bss:0x000006E0; // type:object size:0x4 data:4byte +lbl_1_bss_6E4 = .bss:0x000006E4; // type:object size:0x4 data:4byte +lbl_1_bss_6E8 = .bss:0x000006E8; // type:object size:0x4 data:4byte +lbl_1_bss_6EC = .bss:0x000006EC; // type:object size:0x4 data:4byte +lbl_1_bss_6F0 = .bss:0x000006F0; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m426Dll/splits.txt b/config/GMPP01_00/rels/m426Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m426Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m426Dll/symbols.txt b/config/GMPP01_00/rels/m426Dll/symbols.txt new file mode 100644 index 00000000..fa92aeb2 --- /dev/null +++ b/config/GMPP01_00/rels/m426Dll/symbols.txt @@ -0,0 +1,225 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x16C +fn_1_20C = .text:0x0000020C; // type:function size:0x124 +fn_1_330 = .text:0x00000330; // type:function size:0xA80 +fn_1_DB0 = .text:0x00000DB0; // type:function size:0x60 +fn_1_E10 = .text:0x00000E10; // type:function size:0xA0 +fn_1_EB0 = .text:0x00000EB0; // type:function size:0x14C +fn_1_FFC = .text:0x00000FFC; // type:function size:0x178 +fn_1_1174 = .text:0x00001174; // type:function size:0x70 +fn_1_11E4 = .text:0x000011E4; // type:function size:0x70 +fn_1_1254 = .text:0x00001254; // type:function size:0x49C +fn_1_16F0 = .text:0x000016F0; // type:function size:0x13F4 +fn_1_2AE4 = .text:0x00002AE4; // type:function size:0x14 +fn_1_2AF8 = .text:0x00002AF8; // type:function size:0x98 +fn_1_2B90 = .text:0x00002B90; // type:function size:0x368 +fn_1_2EF8 = .text:0x00002EF8; // type:function size:0x80 +fn_1_2F78 = .text:0x00002F78; // type:function size:0x6F8 +fn_1_3670 = .text:0x00003670; // type:function size:0x70 +fn_1_36E0 = .text:0x000036E0; // type:function size:0x50 +fn_1_3730 = .text:0x00003730; // type:function size:0x7E8 +fn_1_3F18 = .text:0x00003F18; // type:function size:0x700 +fn_1_4618 = .text:0x00004618; // type:function size:0x48 +fn_1_4660 = .text:0x00004660; // type:function size:0x60 +fn_1_46C0 = .text:0x000046C0; // type:function size:0x94 +fn_1_4754 = .text:0x00004754; // type:function size:0x15C +fn_1_48B0 = .text:0x000048B0; // type:function size:0x5C +fn_1_490C = .text:0x0000490C; // type:function size:0x178 +fn_1_4A84 = .text:0x00004A84; // type:function size:0x8C +fn_1_4B10 = .text:0x00004B10; // type:function size:0x3D0 +fn_1_4EE0 = .text:0x00004EE0; // type:function size:0x50 +fn_1_4F30 = .text:0x00004F30; // type:function size:0x220 +fn_1_5150 = .text:0x00005150; // type:function size:0xA20 +fn_1_5B70 = .text:0x00005B70; // type:function size:0x14 +fn_1_5B84 = .text:0x00005B84; // type:function size:0x40 +fn_1_5BC4 = .text:0x00005BC4; // type:function size:0xE4 +fn_1_5CA8 = .text:0x00005CA8; // type:function size:0xD0 +fn_1_5D78 = .text:0x00005D78; // type:function size:0x130 +fn_1_5EA8 = .text:0x00005EA8; // type:function size:0x50 +fn_1_5EF8 = .text:0x00005EF8; // type:function size:0x14C +fn_1_6044 = .text:0x00006044; // type:function size:0x178 +fn_1_61BC = .text:0x000061BC; // type:function size:0x60 +fn_1_621C = .text:0x0000621C; // type:function size:0x68 +fn_1_6284 = .text:0x00006284; // type:function size:0xC8 +fn_1_634C = .text:0x0000634C; // type:function size:0xA8 +fn_1_63F4 = .text:0x000063F4; // type:function size:0x1DC +fn_1_65D0 = .text:0x000065D0; // type:function size:0x50 +fn_1_6620 = .text:0x00006620; // type:function size:0x120 +fn_1_6740 = .text:0x00006740; // type:function size:0x118 +fn_1_6858 = .text:0x00006858; // type:function size:0x28 +fn_1_6880 = .text:0x00006880; // type:function size:0x44 +fn_1_68C4 = .text:0x000068C4; // type:function size:0x15C +fn_1_6A20 = .text:0x00006A20; // type:function size:0x50 +fn_1_6A70 = .text:0x00006A70; // type:function size:0x38C +fn_1_6DFC = .text:0x00006DFC; // type:function size:0x410 +fn_1_720C = .text:0x0000720C; // type:function size:0xA8 +fn_1_72B4 = .text:0x000072B4; // type:function size:0xB0 +fn_1_7364 = .text:0x00007364; // type:function size:0xB4 +fn_1_7418 = .text:0x00007418; // type:function size:0x1B0 +fn_1_75C8 = .text:0x000075C8; // type:function size:0x20 +fn_1_75E8 = .text:0x000075E8; // type:function size:0x4 +fn_1_75EC = .text:0x000075EC; // type:function size:0xC +fn_1_75F8 = .text:0x000075F8; // type:function size:0x38 +fn_1_7630 = .text:0x00007630; // type:function size:0x118 +fn_1_7748 = .text:0x00007748; // type:function size:0x250 +fn_1_7998 = .text:0x00007998; // type:function size:0x46C +fn_1_7E04 = .text:0x00007E04; // type:function size:0x314 +fn_1_8118 = .text:0x00008118; // type:function size:0x7D8 +fn_1_88F0 = .text:0x000088F0; // type:function size:0x55C +fn_1_8E4C = .text:0x00008E4C; // type:function size:0x38 +fn_1_8E84 = .text:0x00008E84; // type:function size:0x2E8 +fn_1_916C = .text:0x0000916C; // type:function size:0x100 +fn_1_926C = .text:0x0000926C; // type:function size:0x314 +fn_1_9580 = .text:0x00009580; // type:function size:0x1D8 +fn_1_9758 = .text:0x00009758; // type:function size:0x7C +fn_1_97D4 = .text:0x000097D4; // type:function size:0x54 +fn_1_9828 = .text:0x00009828; // type:function size:0x7C +fn_1_98A4 = .text:0x000098A4; // type:function size:0x7C +fn_1_9920 = .text:0x00009920; // type:function size:0x78 +fn_1_9998 = .text:0x00009998; // type:function size:0x12C +_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:0x8 data:4byte +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:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x1 data:byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x30 +lbl_1_data_30 = .data:0x00000030; // type:object size:0xC +lbl_1_data_3C = .data:0x0000003C; // type:object size:0xC +lbl_1_data_48 = .data:0x00000048; // type:object size:0x1 data:byte +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x54 data:float +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC +lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0xC +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x24 +jumptable_1_data_E8 = .data:0x000000E8; // type:object size:0x24 scope:local +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x4 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x60 data:4byte +lbl_1_data_170 = .data:0x00000170; // type:object size:0x60 +lbl_1_data_1D0 = .data:0x000001D0; // type:object size:0x8 +jumptable_1_data_1D8 = .data:0x000001D8; // type:object size:0x28 scope:local +lbl_1_data_200 = .data:0x00000200; // type:object size:0x18 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x8 +lbl_1_data_220 = .data:0x00000220; // type:object size:0xC +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x30 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x20 +lbl_1_data_27C = .data:0x0000027C; // type:object size:0x30 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x10 +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x20 +jumptable_1_data_2DC = .data:0x000002DC; // type:object size:0x1C scope:local +jumptable_1_data_2F8 = .data:0x000002F8; // type:object size:0x1C scope:local +jumptable_1_data_314 = .data:0x00000314; // type:object size:0x1C scope:local +jumptable_1_data_330 = .data:0x00000330; // type:object size:0x1C scope:local +jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x1C scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x1 data:byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x10 +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x8 +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m427Dll/splits.txt b/config/GMPP01_00/rels/m427Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m427Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m427Dll/symbols.txt b/config/GMPP01_00/rels/m427Dll/symbols.txt new file mode 100644 index 00000000..2f1c580a --- /dev/null +++ b/config/GMPP01_00/rels/m427Dll/symbols.txt @@ -0,0 +1,439 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x1FC +fn_1_29C = .text:0x0000029C; // type:function size:0x64 +fn_1_300 = .text:0x00000300; // type:function size:0x1360 +fn_1_1660 = .text:0x00001660; // type:function size:0x60 +fn_1_16C0 = .text:0x000016C0; // type:function size:0xC4 +fn_1_1784 = .text:0x00001784; // type:function size:0x10 +fn_1_1794 = .text:0x00001794; // type:function size:0xCC +fn_1_1860 = .text:0x00001860; // type:function size:0x20 +fn_1_1880 = .text:0x00001880; // type:function size:0xD0 +fn_1_1950 = .text:0x00001950; // type:function size:0x5E0 +fn_1_1F30 = .text:0x00001F30; // type:function size:0x254 +fn_1_2184 = .text:0x00002184; // type:function size:0x60 +fn_1_21E4 = .text:0x000021E4; // type:function size:0x144 +fn_1_2328 = .text:0x00002328; // type:function size:0x1E4 +fn_1_250C = .text:0x0000250C; // type:function size:0x1E4 +fn_1_26F0 = .text:0x000026F0; // type:function size:0x28 +fn_1_2718 = .text:0x00002718; // type:function size:0x64 +fn_1_277C = .text:0x0000277C; // type:function size:0x390 +fn_1_2B0C = .text:0x00002B0C; // type:function size:0x4 +fn_1_2B10 = .text:0x00002B10; // type:function size:0x4 +fn_1_2B14 = .text:0x00002B14; // type:function size:0x1C0 +fn_1_2CD4 = .text:0x00002CD4; // type:function size:0x1F8 +fn_1_2ECC = .text:0x00002ECC; // type:function size:0x8C +fn_1_2F58 = .text:0x00002F58; // type:function size:0x1F8 +fn_1_3150 = .text:0x00003150; // type:function size:0x188 +fn_1_32D8 = .text:0x000032D8; // type:function size:0x8 +fn_1_32E0 = .text:0x000032E0; // type:function size:0x438 +fn_1_3718 = .text:0x00003718; // type:function size:0x35C +fn_1_3A74 = .text:0x00003A74; // type:function size:0x98 +fn_1_3B0C = .text:0x00003B0C; // type:function size:0x29C +fn_1_3DA8 = .text:0x00003DA8; // type:function size:0x9C +fn_1_3E44 = .text:0x00003E44; // type:function size:0x3C0 +fn_1_4204 = .text:0x00004204; // type:function size:0x2DC +fn_1_44E0 = .text:0x000044E0; // type:function size:0x7C +fn_1_455C = .text:0x0000455C; // type:function size:0x37C +fn_1_48D8 = .text:0x000048D8; // type:function size:0x490 +fn_1_4D68 = .text:0x00004D68; // type:function size:0x324 +fn_1_508C = .text:0x0000508C; // type:function size:0x6C +fn_1_50F8 = .text:0x000050F8; // type:function size:0x480 +fn_1_5578 = .text:0x00005578; // type:function size:0xC00 +fn_1_6178 = .text:0x00006178; // type:function size:0x5D4 +fn_1_674C = .text:0x0000674C; // type:function size:0xB84 +fn_1_72D0 = .text:0x000072D0; // type:function size:0xD8 +fn_1_73A8 = .text:0x000073A8; // type:function size:0x590 +fn_1_7938 = .text:0x00007938; // type:function size:0x2E8 +fn_1_7C20 = .text:0x00007C20; // type:function size:0x22C +fn_1_7E4C = .text:0x00007E4C; // type:function size:0xD8 +fn_1_7F24 = .text:0x00007F24; // type:function size:0x69C +fn_1_85C0 = .text:0x000085C0; // type:function size:0x194 +fn_1_8754 = .text:0x00008754; // type:function size:0x6B4 +fn_1_8E08 = .text:0x00008E08; // type:function size:0x174 +fn_1_8F7C = .text:0x00008F7C; // type:function size:0x250 +fn_1_91CC = .text:0x000091CC; // type:function size:0x60 +fn_1_922C = .text:0x0000922C; // type:function size:0xD8 +fn_1_9304 = .text:0x00009304; // type:function size:0xD4 +fn_1_93D8 = .text:0x000093D8; // type:function size:0xD0 +fn_1_94A8 = .text:0x000094A8; // type:function size:0x12C +fn_1_95D4 = .text:0x000095D4; // type:function size:0x370 +fn_1_9944 = .text:0x00009944; // type:function size:0x44 +fn_1_9988 = .text:0x00009988; // type:function size:0x48 +fn_1_99D0 = .text:0x000099D0; // type:function size:0x48 +fn_1_9A18 = .text:0x00009A18; // type:function size:0x74 +fn_1_9A8C = .text:0x00009A8C; // type:function size:0x74 +fn_1_9B00 = .text:0x00009B00; // type:function size:0x74 +fn_1_9B74 = .text:0x00009B74; // type:function size:0x5C0 +fn_1_A134 = .text:0x0000A134; // type:function size:0xAC +fn_1_A1E0 = .text:0x0000A1E0; // type:function size:0x604 +fn_1_A7E4 = .text:0x0000A7E4; // type:function size:0x680 +fn_1_AE64 = .text:0x0000AE64; // type:function size:0x31C +fn_1_B180 = .text:0x0000B180; // type:function size:0x238 +fn_1_B3B8 = .text:0x0000B3B8; // type:function size:0x960 +fn_1_BD18 = .text:0x0000BD18; // type:function size:0x428 +fn_1_C140 = .text:0x0000C140; // type:function size:0xAC +fn_1_C1EC = .text:0x0000C1EC; // type:function size:0xAC +fn_1_C298 = .text:0x0000C298; // type:function size:0x10 +fn_1_C2A8 = .text:0x0000C2A8; // type:function size:0xC +fn_1_C2B4 = .text:0x0000C2B4; // type:function size:0xD8 +fn_1_C38C = .text:0x0000C38C; // type:function size:0x7C +fn_1_C408 = .text:0x0000C408; // type:function size:0x10C +fn_1_C514 = .text:0x0000C514; // type:function size:0x164 +fn_1_C678 = .text:0x0000C678; // type:function size:0xE0 +fn_1_C758 = .text:0x0000C758; // type:function size:0xAC0 +fn_1_D218 = .text:0x0000D218; // type:function size:0x204 +fn_1_D41C = .text:0x0000D41C; // type:function size:0xCC +fn_1_D4E8 = .text:0x0000D4E8; // type:function size:0x140 +fn_1_D628 = .text:0x0000D628; // type:function size:0x544 +fn_1_DB6C = .text:0x0000DB6C; // type:function size:0x60 +fn_1_DBCC = .text:0x0000DBCC; // type:function size:0x2C +fn_1_DBF8 = .text:0x0000DBF8; // type:function size:0x58 +fn_1_DC50 = .text:0x0000DC50; // type:function size:0x38 +fn_1_DC88 = .text:0x0000DC88; // type:function size:0x38 +fn_1_DCC0 = .text:0x0000DCC0; // type:function size:0x5DC +fn_1_E29C = .text:0x0000E29C; // type:function size:0xCC +fn_1_E368 = .text:0x0000E368; // type:function size:0xA4 +fn_1_E40C = .text:0x0000E40C; // type:function size:0x68 +fn_1_E474 = .text:0x0000E474; // type:function size:0x504 +fn_1_E978 = .text:0x0000E978; // type:function size:0x2C8 +fn_1_EC40 = .text:0x0000EC40; // type:function size:0x20 +fn_1_EC60 = .text:0x0000EC60; // type:function size:0x20 +fn_1_EC80 = .text:0x0000EC80; // type:function size:0x44C +fn_1_F0CC = .text:0x0000F0CC; // type:function size:0x1750 +fn_1_1081C = .text:0x0001081C; // type:function size:0x75C +fn_1_10F78 = .text:0x00010F78; // type:function size:0x5C +fn_1_10FD4 = .text:0x00010FD4; // type:function size:0x100 +fn_1_110D4 = .text:0x000110D4; // type:function size:0xD8 +fn_1_111AC = .text:0x000111AC; // type:function size:0xD8 +fn_1_11284 = .text:0x00011284; // type:function size:0x158 +fn_1_113DC = .text:0x000113DC; // type:function size:0x4C +fn_1_11428 = .text:0x00011428; // type:function size:0x178 +fn_1_115A0 = .text:0x000115A0; // type:function size:0x40C +fn_1_119AC = .text:0x000119AC; // type:function size:0xB4 +fn_1_11A60 = .text:0x00011A60; // type:function size:0x464 +fn_1_11EC4 = .text:0x00011EC4; // type:function size:0x63C +fn_1_12500 = .text:0x00012500; // type:function size:0x4 +fn_1_12504 = .text:0x00012504; // type:function size:0x68 +fn_1_1256C = .text:0x0001256C; // type:function size:0x588 +fn_1_12AF4 = .text:0x00012AF4; // type:function size:0x141C +fn_1_13F10 = .text:0x00013F10; // type:function size:0x94 +fn_1_13FA4 = .text:0x00013FA4; // type:function size:0x4 +fn_1_13FA8 = .text:0x00013FA8; // type:function size:0x14FC +fn_1_154A4 = .text:0x000154A4; // type:function size:0x4 +fn_1_154A8 = .text:0x000154A8; // type:function size:0x124 +fn_1_155CC = .text:0x000155CC; // type:function size:0x134 +fn_1_15700 = .text:0x00015700; // type:function size:0x1C4 +fn_1_158C4 = .text:0x000158C4; // type:function size:0x218 +fn_1_15ADC = .text:0x00015ADC; // type:function size:0x420 +fn_1_15EFC = .text:0x00015EFC; // type:function size:0xC0 +fn_1_15FBC = .text:0x00015FBC; // type:function size:0xAC +fn_1_16068 = .text:0x00016068; // type:function size:0x58 +fn_1_160C0 = .text:0x000160C0; // type:function size:0x18C +fn_1_1624C = .text:0x0001624C; // type:function size:0x334 +fn_1_16580 = .text:0x00016580; // type:function size:0x118 +fn_1_16698 = .text:0x00016698; // type:function size:0x250 +fn_1_168E8 = .text:0x000168E8; // type:function size:0x3F8 +fn_1_16CE0 = .text:0x00016CE0; // type:function size:0x148 +fn_1_16E28 = .text:0x00016E28; // type:function size:0xBC +fn_1_16EE4 = .text:0x00016EE4; // type:function size:0x150 +fn_1_17034 = .text:0x00017034; // type:function size:0x1F0 +fn_1_17224 = .text:0x00017224; // type:function size:0x4 +fn_1_17228 = .text:0x00017228; // type:function size:0xB4 +fn_1_172DC = .text:0x000172DC; // type:function size:0x140 +fn_1_1741C = .text:0x0001741C; // type:function size:0xA4 +_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_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0xC data:2byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x3C data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x6 data:2byte +lbl_1_rodata_136 = .rodata:0x00000136; // type:object size:0xC data:2byte +lbl_1_rodata_142 = .rodata:0x00000142; // type:object size:0x1A data:2byte +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x24 data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x30 data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC data:4byte +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x1 data:byte +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x1 data:byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x1 data:byte +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x1 data:byte +lbl_1_rodata_38A = .rodata:0x0000038A; // type:object size:0x1 data:byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:float +lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 +jumptable_1_data_94 = .data:0x00000094; // type:object size:0x3C scope:local +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x8 +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x4 +lbl_1_data_DC = .data:0x000000DC; // type:object size:0x4 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC data:2byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x8 +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x4 data:float +lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x4 data:float +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x30 +lbl_1_data_12C = .data:0x0000012C; // type:object size:0x8 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x10 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x90 data:float +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x8 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x8 +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x4 +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x13 data:string +lbl_1_data_203 = .data:0x00000203; // type:object size:0x10 data:string +lbl_1_data_213 = .data:0x00000213; // type:object size:0x26 data:string +lbl_1_data_239 = .data:0x00000239; // type:object size:0x27 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x15C +lbl_1_data_3BC = .data:0x000003BC; // type:object size:0x178 +lbl_1_data_534 = .data:0x00000534; // type:object size:0x18 +lbl_1_data_54C = .data:0x0000054C; // type:object size:0x18 data:float +lbl_1_data_564 = .data:0x00000564; // type:object size:0xC data:float +lbl_1_data_570 = .data:0x00000570; // type:object size:0xC data:float +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x4 +lbl_1_data_580 = .data:0x00000580; // type:object size:0x10 +lbl_1_data_590 = .data:0x00000590; // type:object size:0x1C +lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x1C +lbl_1_data_5C8 = .data:0x000005C8; // type:object size:0x8 +lbl_1_data_5D0 = .data:0x000005D0; // type:object size:0x8 +jumptable_1_data_5D8 = .data:0x000005D8; // type:object size:0x20 scope:local +lbl_1_data_5F8 = .data:0x000005F8; // type:object size:0x8 +lbl_1_data_600 = .data:0x00000600; // type:object size:0x8 +lbl_1_data_608 = .data:0x00000608; // type:object size:0x10 +lbl_1_data_618 = .data:0x00000618; // type:object size:0x10 +jumptable_1_data_628 = .data:0x00000628; // type:object size:0x20 scope:local +lbl_1_data_648 = .data:0x00000648; // type:object size:0x4 +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1 data:byte +lbl_1_data_650 = .data:0x00000650; // type:object size:0x4 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x40 +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x8 +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x1 data:byte +lbl_1_bss_91 = .bss:0x00000091; // type:object size:0x1 data:byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:float +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4C data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x4 data:4byte +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x4 +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x4 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x4 data:4byte +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x60 data:2byte +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x3F0 data:byte +lbl_1_bss_548 = .bss:0x00000548; // type:object size:0x8 data:4byte +lbl_1_bss_550 = .bss:0x00000550; // type:object size:0x4 data:4byte +lbl_1_bss_554 = .bss:0x00000554; // type:object size:0x4 data:4byte +lbl_1_bss_558 = .bss:0x00000558; // type:object size:0x4 data:4byte +lbl_1_bss_55C = .bss:0x0000055C; // type:object size:0x10 +lbl_1_bss_56C = .bss:0x0000056C; // type:object size:0x8 +lbl_1_bss_574 = .bss:0x00000574; // type:object size:0x4 data:4byte +lbl_1_bss_578 = .bss:0x00000578; // type:object size:0x4 data:4byte +lbl_1_bss_57C = .bss:0x0000057C; // type:object size:0x4 data:4byte +lbl_1_bss_580 = .bss:0x00000580; // type:object size:0x4 data:4byte +lbl_1_bss_584 = .bss:0x00000584; // type:object size:0x4 data:4byte +lbl_1_bss_588 = .bss:0x00000588; // type:object size:0x4 data:4byte +lbl_1_bss_58C = .bss:0x0000058C; // type:object size:0x4 data:4byte +lbl_1_bss_590 = .bss:0x00000590; // type:object size:0x4 data:4byte +lbl_1_bss_594 = .bss:0x00000594; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m428Dll/splits.txt b/config/GMPP01_00/rels/m428Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m428Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m428Dll/symbols.txt b/config/GMPP01_00/rels/m428Dll/symbols.txt new file mode 100644 index 00000000..8abe3e61 --- /dev/null +++ b/config/GMPP01_00/rels/m428Dll/symbols.txt @@ -0,0 +1,410 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x218 +fn_1_2B8 = .text:0x000002B8; // type:function size:0x1C0 +fn_1_478 = .text:0x00000478; // type:function size:0x21A0 +fn_1_2618 = .text:0x00002618; // type:function size:0x50 +fn_1_2668 = .text:0x00002668; // type:function size:0xC4 +fn_1_272C = .text:0x0000272C; // type:function size:0x10 +fn_1_273C = .text:0x0000273C; // type:function size:0x2F8 +fn_1_2A34 = .text:0x00002A34; // type:function size:0x4 +fn_1_2A38 = .text:0x00002A38; // type:function size:0x4 +fn_1_2A3C = .text:0x00002A3C; // type:function size:0x10 +fn_1_2A4C = .text:0x00002A4C; // type:function size:0xCC +fn_1_2B18 = .text:0x00002B18; // type:function size:0x1C4 +fn_1_2CDC = .text:0x00002CDC; // type:function size:0x19C +fn_1_2E78 = .text:0x00002E78; // type:function size:0xD38 +fn_1_3BB0 = .text:0x00003BB0; // type:function size:0x540 +fn_1_40F0 = .text:0x000040F0; // type:function size:0xCC +fn_1_41BC = .text:0x000041BC; // type:function size:0xF4 +fn_1_42B0 = .text:0x000042B0; // type:function size:0xC0 +fn_1_4370 = .text:0x00004370; // type:function size:0xA4 +fn_1_4414 = .text:0x00004414; // type:function size:0x268 +fn_1_467C = .text:0x0000467C; // type:function size:0x20 +fn_1_469C = .text:0x0000469C; // type:function size:0x10C +fn_1_47A8 = .text:0x000047A8; // type:function size:0x420 +fn_1_4BC8 = .text:0x00004BC8; // type:function size:0x2C8 +fn_1_4E90 = .text:0x00004E90; // type:function size:0x34 +fn_1_4EC4 = .text:0x00004EC4; // type:function size:0x8C +fn_1_4F50 = .text:0x00004F50; // type:function size:0x2DC +fn_1_522C = .text:0x0000522C; // type:function size:0xF8 +fn_1_5324 = .text:0x00005324; // type:function size:0x4 +fn_1_5328 = .text:0x00005328; // type:function size:0x94 +fn_1_53BC = .text:0x000053BC; // type:function size:0x1E8 +fn_1_55A4 = .text:0x000055A4; // type:function size:0x12C +fn_1_56D0 = .text:0x000056D0; // type:function size:0x648 +fn_1_5D18 = .text:0x00005D18; // type:function size:0x5B4 +fn_1_62CC = .text:0x000062CC; // type:function size:0xF2C +fn_1_71F8 = .text:0x000071F8; // type:function size:0xE8 +fn_1_72E0 = .text:0x000072E0; // type:function size:0x40 +fn_1_7320 = .text:0x00007320; // type:function size:0xC8 +fn_1_73E8 = .text:0x000073E8; // type:function size:0x94 +fn_1_747C = .text:0x0000747C; // type:function size:0x84 +fn_1_7500 = .text:0x00007500; // type:function size:0x4C +fn_1_754C = .text:0x0000754C; // type:function size:0x54 +fn_1_75A0 = .text:0x000075A0; // type:function size:0x13C +fn_1_76DC = .text:0x000076DC; // type:function size:0x168 +fn_1_7844 = .text:0x00007844; // type:function size:0x120 +fn_1_7964 = .text:0x00007964; // type:function size:0x39C +fn_1_7D00 = .text:0x00007D00; // type:function size:0x2E0 +fn_1_7FE0 = .text:0x00007FE0; // type:function size:0x198 +fn_1_8178 = .text:0x00008178; // type:function size:0xD8 +fn_1_8250 = .text:0x00008250; // type:function size:0xBC +fn_1_830C = .text:0x0000830C; // type:function size:0x33C +fn_1_8648 = .text:0x00008648; // type:function size:0x4B0 +fn_1_8AF8 = .text:0x00008AF8; // type:function size:0x78 +fn_1_8B70 = .text:0x00008B70; // type:function size:0x11C +fn_1_8C8C = .text:0x00008C8C; // type:function size:0x78 +fn_1_8D04 = .text:0x00008D04; // type:function size:0x2D8 +fn_1_8FDC = .text:0x00008FDC; // type:function size:0x2B8 +fn_1_9294 = .text:0x00009294; // type:function size:0x154 +fn_1_93E8 = .text:0x000093E8; // type:function size:0x3E0 +fn_1_97C8 = .text:0x000097C8; // type:function size:0x214 +fn_1_99DC = .text:0x000099DC; // type:function size:0xA0 +fn_1_9A7C = .text:0x00009A7C; // type:function size:0xAC +fn_1_9B28 = .text:0x00009B28; // type:function size:0x30C +fn_1_9E34 = .text:0x00009E34; // type:function size:0xC0 +fn_1_9EF4 = .text:0x00009EF4; // type:function size:0x60 +fn_1_9F54 = .text:0x00009F54; // type:function size:0x54 +fn_1_9FA8 = .text:0x00009FA8; // type:function size:0x154 +fn_1_A0FC = .text:0x0000A0FC; // type:function size:0x58 +fn_1_A154 = .text:0x0000A154; // type:function size:0x3C0 +fn_1_A514 = .text:0x0000A514; // type:function size:0xF0C +fn_1_B420 = .text:0x0000B420; // type:function size:0x68 +fn_1_B488 = .text:0x0000B488; // type:function size:0x794 +fn_1_BC1C = .text:0x0000BC1C; // type:function size:0x2A40 +fn_1_E65C = .text:0x0000E65C; // type:function size:0xC +fn_1_E668 = .text:0x0000E668; // type:function size:0xA78 +fn_1_F0E0 = .text:0x0000F0E0; // type:function size:0x208 +fn_1_F2E8 = .text:0x0000F2E8; // type:function size:0xCC +fn_1_F3B4 = .text:0x0000F3B4; // type:function size:0x68 +fn_1_F41C = .text:0x0000F41C; // type:function size:0x58 +fn_1_F474 = .text:0x0000F474; // type:function size:0x40 +fn_1_F4B4 = .text:0x0000F4B4; // type:function size:0x18 +fn_1_F4CC = .text:0x0000F4CC; // type:function size:0x48 +fn_1_F514 = .text:0x0000F514; // type:function size:0x34 +fn_1_F548 = .text:0x0000F548; // type:function size:0x50 +fn_1_F598 = .text:0x0000F598; // type:function size:0x354 +fn_1_F8EC = .text:0x0000F8EC; // type:function size:0x300 +fn_1_FBEC = .text:0x0000FBEC; // type:function size:0x30C +fn_1_FEF8 = .text:0x0000FEF8; // type:function size:0x410 +fn_1_10308 = .text:0x00010308; // type:function size:0x288 +fn_1_10590 = .text:0x00010590; // type:function size:0x60 +fn_1_105F0 = .text:0x000105F0; // type:function size:0x58 +fn_1_10648 = .text:0x00010648; // type:function size:0xC0 +fn_1_10708 = .text:0x00010708; // type:function size:0xE0 +fn_1_107E8 = .text:0x000107E8; // type:function size:0x300 +fn_1_10AE8 = .text:0x00010AE8; // type:function size:0x58C +fn_1_11074 = .text:0x00011074; // type:function size:0x5E4 +fn_1_11658 = .text:0x00011658; // type:function size:0xCC +fn_1_11724 = .text:0x00011724; // type:function size:0x90 +fn_1_117B4 = .text:0x000117B4; // type:function size:0x44 +fn_1_117F8 = .text:0x000117F8; // type:function size:0x110 +fn_1_11908 = .text:0x00011908; // type:function size:0x88 +fn_1_11990 = .text:0x00011990; // type:function size:0x130 +fn_1_11AC0 = .text:0x00011AC0; // type:function size:0x1C0 +fn_1_11C80 = .text:0x00011C80; // type:function size:0x6C +fn_1_11CEC = .text:0x00011CEC; // type:function size:0x158 +fn_1_11E44 = .text:0x00011E44; // type:function size:0x470 +fn_1_122B4 = .text:0x000122B4; // type:function size:0x118 +fn_1_123CC = .text:0x000123CC; // type:function size:0x250 +fn_1_1261C = .text:0x0001261C; // type:function size:0x3F8 +fn_1_12A14 = .text:0x00012A14; // type:function size:0x78 +fn_1_12A8C = .text:0x00012A8C; // type:function size:0x78 +fn_1_12B04 = .text:0x00012B04; // type:function size:0x230 +fn_1_12D34 = .text:0x00012D34; // type:function size:0x4B0 +fn_1_131E4 = .text:0x000131E4; // type:function size:0x33C +fn_1_13520 = .text:0x00013520; // type:function size:0x8DC +fn_1_13DFC = .text:0x00013DFC; // type:function size:0x78 +fn_1_13E74 = .text:0x00013E74; // type:function size:0xB4 +fn_1_13F28 = .text:0x00013F28; // type:function size:0x8C +fn_1_13FB4 = .text:0x00013FB4; // type:function size:0x134 +fn_1_140E8 = .text:0x000140E8; // type:function size:0x4D8 +fn_1_145C0 = .text:0x000145C0; // type:function size:0x98 +fn_1_14658 = .text:0x00014658; // type:function size:0x98 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0x24 +lbl_1_data_9C = .data:0x0000009C; // type:object size:0xC +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xC +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4 +jumptable_1_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x48 data:byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x14 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 data:4byte +lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 data:float +lbl_1_data_180 = .data:0x00000180; // type:object size:0x30 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2A0 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x30 +lbl_1_data_480 = .data:0x00000480; // type:object size:0x30 +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x50 data:float +lbl_1_data_500 = .data:0x00000500; // type:object size:0x60 +lbl_1_data_560 = .data:0x00000560; // type:object size:0x80 +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0x60 +lbl_1_data_640 = .data:0x00000640; // type:object size:0x10 +lbl_1_data_650 = .data:0x00000650; // type:object size:0x1 data:byte +lbl_1_data_654 = .data:0x00000654; // type:object size:0x1 data:byte +lbl_1_data_658 = .data:0x00000658; // type:object size:0x14 +jumptable_1_data_66C = .data:0x0000066C; // type:object size:0x28 scope:local +lbl_1_data_694 = .data:0x00000694; // type:object size:0x8 +lbl_1_data_69C = .data:0x0000069C; // type:object size:0x4 +lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x2 data:2byte +lbl_1_data_6A4 = .data:0x000006A4; // type:object size:0x30 +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x20 +lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x19 data:string +lbl_1_data_70D = .data:0x0000070D; // type:object size:0x5 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x10 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x10 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x8 data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:2byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x8 data:float +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x8 +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x80 +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x4 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x80 +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x80 +lbl_1_bss_244 = .bss:0x00000244; // type:object size:0x60 +lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x8 data:4byte +lbl_1_bss_2AC = .bss:0x000002AC; // type:object size:0x4 data:4byte +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:4byte +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0x4 data:4byte +lbl_1_bss_2B8 = .bss:0x000002B8; // type:object size:0x4 data:4byte +lbl_1_bss_2BC = .bss:0x000002BC; // type:object size:0x4 data:4byte +lbl_1_bss_2C0 = .bss:0x000002C0; // type:object size:0x10 +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x8 +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m429Dll/splits.txt b/config/GMPP01_00/rels/m429Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m429Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m429Dll/symbols.txt b/config/GMPP01_00/rels/m429Dll/symbols.txt new file mode 100644 index 00000000..3bd2a26f --- /dev/null +++ b/config/GMPP01_00/rels/m429Dll/symbols.txt @@ -0,0 +1,316 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x204 +fn_1_784 = .text:0x00000784; // type:function size:0x240 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 +fn_1_A18 = .text:0x00000A18; // type:function size:0x10C +fn_1_B24 = .text:0x00000B24; // type:function size:0x680 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1300 = .text:0x00001300; // type:function size:0x8C +fn_1_138C = .text:0x0000138C; // type:function size:0x334 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C +fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_2364 = .text:0x00002364; // type:function size:0x260 +fn_1_25C4 = .text:0x000025C4; // type:function size:0x70 +fn_1_2634 = .text:0x00002634; // type:function size:0x2CC +fn_1_2900 = .text:0x00002900; // type:function size:0x290 +fn_1_2B90 = .text:0x00002B90; // type:function size:0x234 +fn_1_2DC4 = .text:0x00002DC4; // type:function size:0xD8 +fn_1_2E9C = .text:0x00002E9C; // type:function size:0x2BC +fn_1_3158 = .text:0x00003158; // type:function size:0x4 +fn_1_315C = .text:0x0000315C; // type:function size:0xD8 +fn_1_3234 = .text:0x00003234; // type:function size:0x174 +fn_1_33A8 = .text:0x000033A8; // type:function size:0x304 +fn_1_36AC = .text:0x000036AC; // type:function size:0x170 +fn_1_381C = .text:0x0000381C; // type:function size:0x560 +fn_1_3D7C = .text:0x00003D7C; // type:function size:0x254 +_prolog = .text:0x00003FD0; // type:function size:0x54 scope:global +_epilog = .text:0x00004024; // type:function size:0x4C scope:global +fn_1_4070 = .text:0x00004070; // type:function size:0x164 +fn_1_41D4 = .text:0x000041D4; // type:function size:0xBCC +fn_1_4DA0 = .text:0x00004DA0; // type:function size:0x60 +fn_1_4E00 = .text:0x00004E00; // type:function size:0x25C +fn_1_505C = .text:0x0000505C; // type:function size:0x410 +fn_1_546C = .text:0x0000546C; // type:function size:0x380 +fn_1_57EC = .text:0x000057EC; // type:function size:0x120 +fn_1_590C = .text:0x0000590C; // type:function size:0x380 +fn_1_5C8C = .text:0x00005C8C; // type:function size:0x268 +fn_1_5EF4 = .text:0x00005EF4; // type:function size:0x1154 +fn_1_7048 = .text:0x00007048; // type:function size:0x158 +fn_1_71A0 = .text:0x000071A0; // type:function size:0xB48 +fn_1_7CE8 = .text:0x00007CE8; // type:function size:0x1230 +fn_1_8F18 = .text:0x00008F18; // type:function size:0xA84 +fn_1_999C = .text:0x0000999C; // type:function size:0x4 +fn_1_99A0 = .text:0x000099A0; // type:function size:0x1BC +fn_1_9B5C = .text:0x00009B5C; // type:function size:0x340 +fn_1_9E9C = .text:0x00009E9C; // type:function size:0x1BC +fn_1_A058 = .text:0x0000A058; // type:function size:0x70 +fn_1_A0C8 = .text:0x0000A0C8; // type:function size:0x470 +fn_1_A538 = .text:0x0000A538; // type:function size:0x22C +fn_1_A764 = .text:0x0000A764; // type:function size:0x5C0 +fn_1_AD24 = .text:0x0000AD24; // type:function size:0x2A8 +fn_1_AFCC = .text:0x0000AFCC; // type:function size:0x738 +fn_1_B704 = .text:0x0000B704; // type:function size:0x18C +fn_1_B890 = .text:0x0000B890; // type:function size:0x1D00 +fn_1_D590 = .text:0x0000D590; // type:function size:0x6B4 +fn_1_DC44 = .text:0x0000DC44; // type:function size:0xCD0 +fn_1_E914 = .text:0x0000E914; // type:function size:0x104 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0xD data:string +lbl_1_data_1D = .data:0x0000001D; // type:object size:0xE data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0xE data:string +lbl_1_data_39 = .data:0x00000039; // type:object size:0xE data:string +lbl_1_data_47 = .data:0x00000047; // type:object size:0xD data:string +lbl_1_data_54 = .data:0x00000054; // type:object size:0xD data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0xE data:string +lbl_1_data_6F = .data:0x0000006F; // type:object size:0xE data:string +lbl_1_data_7D = .data:0x0000007D; // type:object size:0xE data:string +lbl_1_data_8B = .data:0x0000008B; // type:object size:0xD data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0xE data:string +lbl_1_data_A6 = .data:0x000000A6; // type:object size:0xE data:string +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xE data:string +lbl_1_data_C2 = .data:0x000000C2; // type:object size:0xD data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xD data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0xD data:string +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0xE data:string +lbl_1_data_104 = .data:0x00000104; // type:object size:0xE data:string +lbl_1_data_112 = .data:0x00000112; // type:object size:0xE data:string +lbl_1_data_120 = .data:0x00000120; // type:object size:0xE data:string +lbl_1_data_12E = .data:0x0000012E; // type:object size:0xE data:string +lbl_1_data_13C = .data:0x0000013C; // type:object size:0xE data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xE data:string +lbl_1_data_158 = .data:0x00000158; // type:object size:0xE data:string +lbl_1_data_166 = .data:0x00000166; // type:object size:0xE data:string +lbl_1_data_174 = .data:0x00000174; // type:object size:0xE data:string +lbl_1_data_182 = .data:0x00000182; // type:object size:0xE data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0xE data:string +lbl_1_data_19E = .data:0x0000019E; // type:object size:0xE data:string +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xE data:string +lbl_1_data_1BA = .data:0x000001BA; // type:object size:0xE data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0xE data:string +lbl_1_data_1D6 = .data:0x000001D6; // type:object size:0xE data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xE data:string +lbl_1_data_1F2 = .data:0x000001F2; // type:object size:0xE data:string +lbl_1_data_200 = .data:0x00000200; // type:object size:0xE data:string +lbl_1_data_20E = .data:0x0000020E; // type:object size:0xE data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x57C +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0xD data:string +lbl_1_data_7B5 = .data:0x000007B5; // type:object size:0xD data:string +lbl_1_data_7C2 = .data:0x000007C2; // type:object size:0xD data:string +lbl_1_data_7CF = .data:0x000007CF; // type:object size:0xE data:string +lbl_1_data_7DD = .data:0x000007DD; // type:object size:0xE data:string +lbl_1_data_7EB = .data:0x000007EB; // type:object size:0xE data:string +lbl_1_data_7F9 = .data:0x000007F9; // type:object size:0xE data:string +lbl_1_data_807 = .data:0x00000807; // type:object size:0xD data:string +lbl_1_data_814 = .data:0x00000814; // type:object size:0xD data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0xD data:string +lbl_1_data_82E = .data:0x0000082E; // type:object size:0xE data:string +lbl_1_data_83C = .data:0x0000083C; // type:object size:0xE data:string +lbl_1_data_84A = .data:0x0000084A; // type:object size:0xD data:string +lbl_1_data_857 = .data:0x00000857; // type:object size:0xD data:string +lbl_1_data_864 = .data:0x00000864; // type:object size:0xD data:string +lbl_1_data_871 = .data:0x00000871; // type:object size:0xE data:string +lbl_1_data_87F = .data:0x0000087F; // type:object size:0xE data:string +lbl_1_data_88D = .data:0x0000088D; // type:object size:0xE data:string +lbl_1_data_89B = .data:0x0000089B; // type:object size:0xE data:string +lbl_1_data_8A9 = .data:0x000008A9; // type:object size:0xE data:string +lbl_1_data_8B7 = .data:0x000008B7; // type:object size:0xE data:string +lbl_1_data_8C5 = .data:0x000008C5; // type:object size:0xE data:string +lbl_1_data_8D3 = .data:0x000008D3; // type:object size:0xE data:string +lbl_1_data_8E1 = .data:0x000008E1; // type:object size:0xE data:string +lbl_1_data_8EF = .data:0x000008EF; // type:object size:0xE data:string +lbl_1_data_8FD = .data:0x000008FD; // type:object size:0xE data:string +lbl_1_data_90B = .data:0x0000090B; // type:object size:0xE data:string +lbl_1_data_919 = .data:0x00000919; // type:object size:0xE data:string +lbl_1_data_927 = .data:0x00000927; // type:object size:0xE data:string +lbl_1_data_935 = .data:0x00000935; // type:object size:0xE data:string +lbl_1_data_943 = .data:0x00000943; // type:object size:0xE data:string +lbl_1_data_951 = .data:0x00000951; // type:object size:0xE data:string +lbl_1_data_95F = .data:0x0000095F; // type:object size:0xE data:string +lbl_1_data_96D = .data:0x0000096D; // type:object size:0xE data:string +lbl_1_data_97B = .data:0x0000097B; // type:object size:0xE data:string +lbl_1_data_989 = .data:0x00000989; // type:object size:0xE data:string +lbl_1_data_997 = .data:0x00000997; // type:object size:0xE data:string +lbl_1_data_9A5 = .data:0x000009A5; // type:object size:0xE data:string +lbl_1_data_9B3 = .data:0x000009B3; // type:object size:0xE data:string +lbl_1_data_9C1 = .data:0x000009C1; // type:object size:0xE data:string +lbl_1_data_9CF = .data:0x000009CF; // type:object size:0xE data:string +lbl_1_data_9DD = .data:0x000009DD; // type:object size:0xF +lbl_1_data_9EC = .data:0x000009EC; // type:object size:0x5E8 +lbl_1_data_FD4 = .data:0x00000FD4; // type:object size:0xC +lbl_1_data_FE0 = .data:0x00000FE0; // type:object size:0xC +lbl_1_data_FEC = .data:0x00000FEC; // type:object size:0x10 +lbl_1_data_FFC = .data:0x00000FFC; // type:object size:0x40 +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x40 data:float +lbl_1_data_107C = .data:0x0000107C; // type:object size:0x40 +lbl_1_data_10BC = .data:0x000010BC; // type:object size:0x40 +lbl_1_data_10FC = .data:0x000010FC; // type:object size:0x20 +lbl_1_data_111C = .data:0x0000111C; // type:object size:0xC +lbl_1_data_1128 = .data:0x00001128; // type:object size:0xC +lbl_1_data_1134 = .data:0x00001134; // type:object size:0x4 +lbl_1_data_1138 = .data:0x00001138; // type:object size:0xC +lbl_1_data_1144 = .data:0x00001144; // type:object size:0xC +lbl_1_data_1150 = .data:0x00001150; // type:object size:0x140 +lbl_1_data_1290 = .data:0x00001290; // type:object size:0x20 +lbl_1_data_12B0 = .data:0x000012B0; // type:object size:0x20 +lbl_1_data_12D0 = .data:0x000012D0; // type:object size:0x10 +lbl_1_data_12E0 = .data:0x000012E0; // type:object size:0x30 +lbl_1_data_1310 = .data:0x00001310; // type:object size:0x10 +lbl_1_data_1320 = .data:0x00001320; // type:object size:0x10 +lbl_1_data_1330 = .data:0x00001330; // type:object size:0x10 +lbl_1_data_1340 = .data:0x00001340; // type:object size:0x48 +lbl_1_data_1388 = .data:0x00001388; // type:object size:0x20 +lbl_1_data_13A8 = .data:0x000013A8; // type:object size:0x10 +lbl_1_data_13B8 = .data:0x000013B8; // type:object size:0x10 +lbl_1_data_13C8 = .data:0x000013C8; // type:object size:0x10 +lbl_1_data_13D8 = .data:0x000013D8; // type:object size:0x10 +lbl_1_data_13E8 = .data:0x000013E8; // type:object size:0x50 +lbl_1_data_1438 = .data:0x00001438; // type:object size:0x21 data:string +lbl_1_data_1459 = .data:0x00001459; // type:object size:0x1F +jumptable_1_data_1478 = .data:0x00001478; // type:object size:0x24 scope:local +lbl_1_data_149C = .data:0x0000149C; // type:object size:0x1C +jumptable_1_data_14B8 = .data:0x000014B8; // type:object size:0x34 scope:local +lbl_1_data_14EC = .data:0x000014EC; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0xA data:2byte +lbl_1_bss_1A = .bss:0x0000001A; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x30 +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x30 +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x30 +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x30 +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x18 data:float +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:float +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:float +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:float +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:float +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:float +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:float +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:float +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x60 +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x8 data:4byte +lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x4 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 data:4byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:4byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x100 +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x40 data:4byte +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x4 data:float +lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x4 data:4byte +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x4 data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0x2 data:2byte +lbl_1_bss_2FE = .bss:0x000002FE; // type:object size:0x2 data:2byte +lbl_1_bss_300 = .bss:0x00000300; // type:object size:0x4 data:4byte +lbl_1_bss_304 = .bss:0x00000304; // type:object size:0x4 data:4byte +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0xC data:float +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0xC data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0xC data:float +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0xC data:4byte +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x4 data:4byte +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x18 data:4byte +lbl_1_bss_358 = .bss:0x00000358; // type:object size:0xC data:4byte diff --git a/config/GMPP01_00/rels/m430Dll/splits.txt b/config/GMPP01_00/rels/m430Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m430Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m430Dll/symbols.txt b/config/GMPP01_00/rels/m430Dll/symbols.txt new file mode 100644 index 00000000..e3b8f841 --- /dev/null +++ b/config/GMPP01_00/rels/m430Dll/symbols.txt @@ -0,0 +1,490 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x630 +fn_1_6D0 = .text:0x000006D0; // type:function size:0xC4 +fn_1_794 = .text:0x00000794; // type:function size:0x334 +fn_1_AC8 = .text:0x00000AC8; // type:function size:0x144 +fn_1_C0C = .text:0x00000C0C; // type:function size:0x564 +fn_1_1170 = .text:0x00001170; // type:function size:0x590 +fn_1_1700 = .text:0x00001700; // type:function size:0x478 +fn_1_1B78 = .text:0x00001B78; // type:function size:0x6E0 +fn_1_2258 = .text:0x00002258; // type:function size:0x52C +fn_1_2784 = .text:0x00002784; // type:function size:0x638 +fn_1_2DBC = .text:0x00002DBC; // type:function size:0x138 +fn_1_2EF4 = .text:0x00002EF4; // type:function size:0x81C +fn_1_3710 = .text:0x00003710; // type:function size:0xCC +fn_1_37DC = .text:0x000037DC; // type:function size:0x8C8 +fn_1_40A4 = .text:0x000040A4; // type:function size:0x10 +fn_1_40B4 = .text:0x000040B4; // type:function size:0x18 +fn_1_40CC = .text:0x000040CC; // type:function size:0x18 +fn_1_40E4 = .text:0x000040E4; // type:function size:0x18 +fn_1_40FC = .text:0x000040FC; // type:function size:0x18 +fn_1_4114 = .text:0x00004114; // type:function size:0x18 +fn_1_412C = .text:0x0000412C; // type:function size:0x18 +fn_1_4144 = .text:0x00004144; // type:function size:0x30 +fn_1_4174 = .text:0x00004174; // type:function size:0x30 +fn_1_41A4 = .text:0x000041A4; // type:function size:0xC0 +fn_1_4264 = .text:0x00004264; // type:function size:0x348 +fn_1_45AC = .text:0x000045AC; // type:function size:0x378 +fn_1_4924 = .text:0x00004924; // type:function size:0x11C +fn_1_4A40 = .text:0x00004A40; // type:function size:0xB4 +fn_1_4AF4 = .text:0x00004AF4; // type:function size:0x1C8 +fn_1_4CBC = .text:0x00004CBC; // type:function size:0x6C +fn_1_4D28 = .text:0x00004D28; // type:function size:0x1144 +fn_1_5E6C = .text:0x00005E6C; // type:function size:0x388 +fn_1_61F4 = .text:0x000061F4; // type:function size:0x3C0 +fn_1_65B4 = .text:0x000065B4; // type:function size:0x214 +fn_1_67C8 = .text:0x000067C8; // type:function size:0x674 +fn_1_6E3C = .text:0x00006E3C; // type:function size:0x2E4 +fn_1_7120 = .text:0x00007120; // type:function size:0x280 +fn_1_73A0 = .text:0x000073A0; // type:function size:0x3AC +fn_1_774C = .text:0x0000774C; // type:function size:0x170 +fn_1_78BC = .text:0x000078BC; // type:function size:0x464 +fn_1_7D20 = .text:0x00007D20; // type:function size:0x200 +fn_1_7F20 = .text:0x00007F20; // type:function size:0x110 +fn_1_8030 = .text:0x00008030; // type:function size:0x40 +fn_1_8070 = .text:0x00008070; // type:function size:0x40 +fn_1_80B0 = .text:0x000080B0; // type:function size:0x228 +fn_1_82D8 = .text:0x000082D8; // type:function size:0x90 +fn_1_8368 = .text:0x00008368; // type:function size:0x3C0 +fn_1_8728 = .text:0x00008728; // type:function size:0x4A8 +fn_1_8BD0 = .text:0x00008BD0; // type:function size:0x184 +fn_1_8D54 = .text:0x00008D54; // type:function size:0x95C +fn_1_96B0 = .text:0x000096B0; // type:function size:0x654 +fn_1_9D04 = .text:0x00009D04; // type:function size:0x718 +fn_1_A41C = .text:0x0000A41C; // type:function size:0x7F0 +fn_1_AC0C = .text:0x0000AC0C; // type:function size:0xEC +fn_1_ACF8 = .text:0x0000ACF8; // type:function size:0x80 +fn_1_AD78 = .text:0x0000AD78; // type:function size:0x1DC +fn_1_AF54 = .text:0x0000AF54; // type:function size:0x4B4 +fn_1_B408 = .text:0x0000B408; // type:function size:0x1DC +fn_1_B5E4 = .text:0x0000B5E4; // type:function size:0x5E4 +fn_1_BBC8 = .text:0x0000BBC8; // type:function size:0x34 +fn_1_BBFC = .text:0x0000BBFC; // type:function size:0x10 +fn_1_BC0C = .text:0x0000BC0C; // type:function size:0x2C +fn_1_BC38 = .text:0x0000BC38; // type:function size:0x260 +fn_1_BE98 = .text:0x0000BE98; // type:function size:0x1E8 +fn_1_C080 = .text:0x0000C080; // type:function size:0x34 +fn_1_C0B4 = .text:0x0000C0B4; // type:function size:0x1A4 +fn_1_C258 = .text:0x0000C258; // type:function size:0x858 +fn_1_CAB0 = .text:0x0000CAB0; // type:function size:0x894 +fn_1_D344 = .text:0x0000D344; // type:function size:0x558 +fn_1_D89C = .text:0x0000D89C; // type:function size:0x10D4 +fn_1_E970 = .text:0x0000E970; // type:function size:0x7DC +fn_1_F14C = .text:0x0000F14C; // type:function size:0x554 +fn_1_F6A0 = .text:0x0000F6A0; // type:function size:0x74 +fn_1_F714 = .text:0x0000F714; // type:function size:0x5FC +fn_1_FD10 = .text:0x0000FD10; // type:function size:0x404 +fn_1_10114 = .text:0x00010114; // type:function size:0x29C +fn_1_103B0 = .text:0x000103B0; // type:function size:0x200 +fn_1_105B0 = .text:0x000105B0; // type:function size:0x4 +fn_1_105B4 = .text:0x000105B4; // type:function size:0x4C +fn_1_10600 = .text:0x00010600; // type:function size:0x2C +fn_1_1062C = .text:0x0001062C; // type:function size:0x64 +fn_1_10690 = .text:0x00010690; // type:function size:0x32C +fn_1_109BC = .text:0x000109BC; // type:function size:0x240 +fn_1_10BFC = .text:0x00010BFC; // type:function size:0x194 +fn_1_10D90 = .text:0x00010D90; // type:function size:0x204 +fn_1_10F94 = .text:0x00010F94; // type:function size:0x4 +fn_1_10F98 = .text:0x00010F98; // type:function size:0x184 +fn_1_1111C = .text:0x0001111C; // type:function size:0x114 +fn_1_11230 = .text:0x00011230; // type:function size:0x158 +fn_1_11388 = .text:0x00011388; // type:function size:0x98 +fn_1_11420 = .text:0x00011420; // type:function size:0x144 +fn_1_11564 = .text:0x00011564; // type:function size:0x154 +fn_1_116B8 = .text:0x000116B8; // type:function size:0x4 +fn_1_116BC = .text:0x000116BC; // type:function size:0x15C +fn_1_11818 = .text:0x00011818; // type:function size:0x278 +fn_1_11A90 = .text:0x00011A90; // type:function size:0x148 +fn_1_11BD8 = .text:0x00011BD8; // type:function size:0x30 +fn_1_11C08 = .text:0x00011C08; // type:function size:0x88 +fn_1_11C90 = .text:0x00011C90; // type:function size:0x154 +fn_1_11DE4 = .text:0x00011DE4; // type:function size:0x1F0 +fn_1_11FD4 = .text:0x00011FD4; // type:function size:0x30 +fn_1_12004 = .text:0x00012004; // type:function size:0x5C0 +fn_1_125C4 = .text:0x000125C4; // type:function size:0x74 +fn_1_12638 = .text:0x00012638; // type:function size:0x408 +fn_1_12A40 = .text:0x00012A40; // type:function size:0x3A8 +fn_1_12DE8 = .text:0x00012DE8; // type:function size:0x7C +fn_1_12E64 = .text:0x00012E64; // type:function size:0xB8 +fn_1_12F1C = .text:0x00012F1C; // type:function size:0x78 +fn_1_12F94 = .text:0x00012F94; // type:function size:0x11C +fn_1_130B0 = .text:0x000130B0; // type:function size:0x118 +fn_1_131C8 = .text:0x000131C8; // type:function size:0x250 +fn_1_13418 = .text:0x00013418; // type:function size:0x38 +fn_1_13450 = .text:0x00013450; // type:function size:0xB4 +_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:0x4 data:float +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:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // 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:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x10 data:4byte +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x10 data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x10 data:4byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x10 data:4byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:4byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x18 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:4byte +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0xC data:4byte +lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0xC data:4byte +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0xC data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0xC data:4byte +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_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x18 data:4byte +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x30 data:4byte +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x18 data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x8 data:4byte +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x8 data:4byte +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x20 data:4byte +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x14 data:4byte +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x10 data:4byte +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x10 data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x1 data:byte +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x1 data:byte +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x1 data:byte +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x1 data:byte +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x1 data:byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x1 data:byte +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x1 data:byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x1 data:byte +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:4byte +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:4byte +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x8 data:double +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x8 data:double +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x8 data:double +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x8 data:double +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x8 data:double +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float +lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:double +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:double +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 data:double +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x4 data:float +lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0x4 data:float +lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x8 data:double +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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0x10 data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x7 data:string +lbl_1_data_57 = .data:0x00000057; // type:object size:0x9 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x48 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x18 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x60 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x48 +lbl_1_data_168 = .data:0x00000168; // type:object size:0x8 +lbl_1_data_170 = .data:0x00000170; // type:object size:0x38 +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x20 +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x14 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x1C +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x60 +lbl_1_data_258 = .data:0x00000258; // type:object size:0x20 +lbl_1_data_278 = .data:0x00000278; // type:object size:0x8 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x8 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x8 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x54 +lbl_1_data_300 = .data:0x00000300; // type:object size:0x8 data:4byte +lbl_1_data_308 = .data:0x00000308; // type:object size:0x4 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x6 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:float +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:float +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0xE0 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:4byte +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x8 data:4byte +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x4 data:4byte +lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x4 data:4byte +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x4 data:4byte +lbl_1_bss_164 = .bss:0x00000164; // type:object size:0x4 data:4byte +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x4 data:4byte +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x4 data:4byte +lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte +lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte +lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m431Dll/splits.txt b/config/GMPP01_00/rels/m431Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m431Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m431Dll/symbols.txt b/config/GMPP01_00/rels/m431Dll/symbols.txt new file mode 100644 index 00000000..c0040e1f --- /dev/null +++ b/config/GMPP01_00/rels/m431Dll/symbols.txt @@ -0,0 +1,251 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +fn_1_424 = .text:0x00000424; // type:function size:0x78 +fn_1_49C = .text:0x0000049C; // type:function size:0xE0 +fn_1_57C = .text:0x0000057C; // type:function size:0x234 +fn_1_7B0 = .text:0x000007B0; // type:function size:0x294 +fn_1_A44 = .text:0x00000A44; // type:function size:0x660 +fn_1_10A4 = .text:0x000010A4; // type:function size:0x364 +fn_1_1408 = .text:0x00001408; // type:function size:0x228 +fn_1_1630 = .text:0x00001630; // type:function size:0x40C +fn_1_1A3C = .text:0x00001A3C; // type:function size:0x5C0 +fn_1_1FFC = .text:0x00001FFC; // type:function size:0x50 +fn_1_204C = .text:0x0000204C; // type:function size:0x40 +fn_1_208C = .text:0x0000208C; // type:function size:0x40 +fn_1_20CC = .text:0x000020CC; // type:function size:0x40 +fn_1_210C = .text:0x0000210C; // type:function size:0x9A0 +fn_1_2AAC = .text:0x00002AAC; // type:function size:0x10 +fn_1_2ABC = .text:0x00002ABC; // type:function size:0x1D4 +fn_1_2C90 = .text:0x00002C90; // type:function size:0x44C +fn_1_30DC = .text:0x000030DC; // type:function size:0x460 +fn_1_353C = .text:0x0000353C; // type:function size:0x83C +fn_1_3D78 = .text:0x00003D78; // type:function size:0x254 +fn_1_3FCC = .text:0x00003FCC; // type:function size:0x58 +fn_1_4024 = .text:0x00004024; // type:function size:0x6FC +fn_1_4720 = .text:0x00004720; // type:function size:0x14 +fn_1_4734 = .text:0x00004734; // type:function size:0x60 +fn_1_4794 = .text:0x00004794; // type:function size:0x138 +fn_1_48CC = .text:0x000048CC; // type:function size:0xBC +fn_1_4988 = .text:0x00004988; // type:function size:0x188 +fn_1_4B10 = .text:0x00004B10; // type:function size:0x1C8 +fn_1_4CD8 = .text:0x00004CD8; // type:function size:0x70 +fn_1_4D48 = .text:0x00004D48; // type:function size:0xE4 +fn_1_4E2C = .text:0x00004E2C; // type:function size:0x4A8 +fn_1_52D4 = .text:0x000052D4; // type:function size:0x1A8 +fn_1_547C = .text:0x0000547C; // type:function size:0xA4 +fn_1_5520 = .text:0x00005520; // type:function size:0x148 +fn_1_5668 = .text:0x00005668; // type:function size:0x9C +fn_1_5704 = .text:0x00005704; // type:function size:0x468 +fn_1_5B6C = .text:0x00005B6C; // type:function size:0x4C0 +fn_1_602C = .text:0x0000602C; // type:function size:0x154 +fn_1_6180 = .text:0x00006180; // type:function size:0x380 +fn_1_6500 = .text:0x00006500; // type:function size:0xC8 +fn_1_65C8 = .text:0x000065C8; // type:function size:0x10 +fn_1_65D8 = .text:0x000065D8; // type:function size:0x5C +fn_1_6634 = .text:0x00006634; // type:function size:0xA4 +fn_1_66D8 = .text:0x000066D8; // type:function size:0xE4 +fn_1_67BC = .text:0x000067BC; // type:function size:0x374 +fn_1_6B30 = .text:0x00006B30; // type:function size:0x140 +fn_1_6C70 = .text:0x00006C70; // type:function size:0x544 +fn_1_71B4 = .text:0x000071B4; // type:function size:0x60 +fn_1_7214 = .text:0x00007214; // type:function size:0x2C +fn_1_7240 = .text:0x00007240; // type:function size:0x38 +fn_1_7278 = .text:0x00007278; // type:function size:0x38 +fn_1_72B0 = .text:0x000072B0; // type:function size:0x570 +fn_1_7820 = .text:0x00007820; // type:function size:0xCC +fn_1_78EC = .text:0x000078EC; // type:function size:0xA4 +fn_1_7990 = .text:0x00007990; // type:function size:0x68 +fn_1_79F8 = .text:0x000079F8; // type:function size:0x7C +fn_1_7A74 = .text:0x00007A74; // type:function size:0x44 +fn_1_7AB8 = .text:0x00007AB8; // type:function size:0x4FC +fn_1_7FB4 = .text:0x00007FB4; // type:function size:0x4BC +fn_1_8470 = .text:0x00008470; // type:function size:0x118 +fn_1_8588 = .text:0x00008588; // type:function size:0x204 +fn_1_878C = .text:0x0000878C; // type:function size:0x344 +fn_1_8AD0 = .text:0x00008AD0; // type:function size:0x1EC +fn_1_8CBC = .text:0x00008CBC; // type:function size:0x6CC +fn_1_9388 = .text:0x00009388; // type:function size:0xB4 +fn_1_943C = .text:0x0000943C; // type:function size:0x494 +fn_1_98D0 = .text:0x000098D0; // type:function size:0x130 +fn_1_9A00 = .text:0x00009A00; // type:function size:0x278 +fn_1_9C78 = .text:0x00009C78; // type:function size:0x49C +fn_1_A114 = .text:0x0000A114; // type:function size:0x360 +fn_1_A474 = .text:0x0000A474; // type:function size:0x380 +fn_1_A7F4 = .text:0x0000A7F4; // type:function size:0x134 +fn_1_A928 = .text:0x0000A928; // type:function size:0x13C +fn_1_AA64 = .text:0x0000AA64; // type:function size:0xB0 +fn_1_AB14 = .text:0x0000AB14; // type:function size:0xB0 +fn_1_ABC4 = .text:0x0000ABC4; // type:function size:0x20 +fn_1_ABE4 = .text:0x0000ABE4; // type:function size:0x30 +fn_1_AC14 = .text:0x0000AC14; // type:function size:0x90 +fn_1_ACA4 = .text:0x0000ACA4; // type:function size:0x108 +fn_1_ADAC = .text:0x0000ADAC; // type:function size:0x7C +fn_1_AE28 = .text:0x0000AE28; // type:function size:0x2E4 +fn_1_B10C = .text:0x0000B10C; // type:function size:0x48 +fn_1_B154 = .text:0x0000B154; // type:function size:0x20 +fn_1_B174 = .text:0x0000B174; // type:function size:0x1C +fn_1_B190 = .text:0x0000B190; // type:function size:0x20 +fn_1_B1B0 = .text:0x0000B1B0; // type:function size:0x1F8 +fn_1_B3A8 = .text:0x0000B3A8; // type:function size:0x80 +fn_1_B428 = .text:0x0000B428; // type:function size:0x90 +fn_1_B4B8 = .text:0x0000B4B8; // type:function size:0x64 +fn_1_B51C = .text:0x0000B51C; // type:function size:0x38 +fn_1_B554 = .text:0x0000B554; // 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:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // 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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:2byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // 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_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 +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x70 data:float +lbl_1_data_BC = .data:0x000000BC; // type:object size:0xC +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x8 data:4byte +jumptable_1_data_D0 = .data:0x000000D0; // type:object size:0x44 scope:local +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_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:0x26 +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 +lbl_1_data_214 = .data:0x00000214; // type:object size:0x1C +lbl_1_data_230 = .data:0x00000230; // type:object size:0x20 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x10 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x8 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x2 data:2byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x1 data:byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x1 data:byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x28 +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x3C data:2byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x1 data:byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x10 +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x80 data:4byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4F0 data:2byte +lbl_1_bss_61C = .bss:0x0000061C; // type:object size:0x10 +lbl_1_bss_62C = .bss:0x0000062C; // type:object size:0x50 data:float diff --git a/config/GMPP01_00/rels/m432Dll/splits.txt b/config/GMPP01_00/rels/m432Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m432Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m432Dll/symbols.txt b/config/GMPP01_00/rels/m432Dll/symbols.txt new file mode 100644 index 00000000..dd9786bc --- /dev/null +++ b/config/GMPP01_00/rels/m432Dll/symbols.txt @@ -0,0 +1,359 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x204 +fn_1_784 = .text:0x00000784; // type:function size:0x240 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 +fn_1_A18 = .text:0x00000A18; // type:function size:0x10C +fn_1_B24 = .text:0x00000B24; // type:function size:0x680 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1300 = .text:0x00001300; // type:function size:0x8C +fn_1_138C = .text:0x0000138C; // type:function size:0x334 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C +fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_2364 = .text:0x00002364; // type:function size:0x64 +fn_1_23C8 = .text:0x000023C8; // type:function size:0xE0 +fn_1_24A8 = .text:0x000024A8; // type:function size:0x32C +fn_1_27D4 = .text:0x000027D4; // type:function size:0x3AC +fn_1_2B80 = .text:0x00002B80; // type:function size:0x30 +fn_1_2BB0 = .text:0x00002BB0; // type:function size:0x1C +fn_1_2BCC = .text:0x00002BCC; // type:function size:0x18C +fn_1_2D58 = .text:0x00002D58; // type:function size:0x8 +fn_1_2D60 = .text:0x00002D60; // type:function size:0x8 +fn_1_2D68 = .text:0x00002D68; // type:function size:0x8 +fn_1_2D70 = .text:0x00002D70; // type:function size:0x8 +fn_1_2D78 = .text:0x00002D78; // type:function size:0xC +fn_1_2D84 = .text:0x00002D84; // type:function size:0x60 +fn_1_2DE4 = .text:0x00002DE4; // type:function size:0xB90 +fn_1_3974 = .text:0x00003974; // type:function size:0x31C +fn_1_3C90 = .text:0x00003C90; // type:function size:0xD8 +fn_1_3D68 = .text:0x00003D68; // type:function size:0x114 +fn_1_3E7C = .text:0x00003E7C; // type:function size:0xB8 +fn_1_3F34 = .text:0x00003F34; // type:function size:0xA0 +fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x9C +fn_1_4070 = .text:0x00004070; // type:function size:0xE18 +fn_1_4E88 = .text:0x00004E88; // type:function size:0x250 +fn_1_50D8 = .text:0x000050D8; // type:function size:0x10 +fn_1_50E8 = .text:0x000050E8; // type:function size:0x10 +fn_1_50F8 = .text:0x000050F8; // type:function size:0x60 +fn_1_5158 = .text:0x00005158; // type:function size:0x60 +fn_1_51B8 = .text:0x000051B8; // type:function size:0xB0 +fn_1_5268 = .text:0x00005268; // type:function size:0xAC +fn_1_5314 = .text:0x00005314; // type:function size:0x408 +fn_1_571C = .text:0x0000571C; // type:function size:0xDC +fn_1_57F8 = .text:0x000057F8; // type:function size:0x364 +fn_1_5B5C = .text:0x00005B5C; // type:function size:0x380 +fn_1_5EDC = .text:0x00005EDC; // type:function size:0x310 +fn_1_61EC = .text:0x000061EC; // type:function size:0xAF8 +fn_1_6CE4 = .text:0x00006CE4; // type:function size:0x1F4 +fn_1_6ED8 = .text:0x00006ED8; // type:function size:0xCF4 +fn_1_7BCC = .text:0x00007BCC; // type:function size:0x924 +fn_1_84F0 = .text:0x000084F0; // type:function size:0x6C +fn_1_855C = .text:0x0000855C; // type:function size:0x70 +fn_1_85CC = .text:0x000085CC; // type:function size:0x1F8 +fn_1_87C4 = .text:0x000087C4; // type:function size:0x200 +fn_1_89C4 = .text:0x000089C4; // type:function size:0x2A0 +fn_1_8C64 = .text:0x00008C64; // type:function size:0x288 +fn_1_8EEC = .text:0x00008EEC; // type:function size:0x130 +fn_1_901C = .text:0x0000901C; // type:function size:0x350 +fn_1_936C = .text:0x0000936C; // type:function size:0x15B8 +fn_1_A924 = .text:0x0000A924; // type:function size:0x8C +fn_1_A9B0 = .text:0x0000A9B0; // type:function size:0x1C +fn_1_A9CC = .text:0x0000A9CC; // type:function size:0x2AC +fn_1_AC78 = .text:0x0000AC78; // type:function size:0x260 +fn_1_AED8 = .text:0x0000AED8; // type:function size:0x26C +_prolog = .text:0x0000B144; // type:function size:0x54 scope:global +_epilog = .text:0x0000B198; // type:function size:0x4C scope:global +fn_1_B1E4 = .text:0x0000B1E4; // type:function size:0x224 +fn_1_B408 = .text:0x0000B408; // type:function size:0xC0 +fn_1_B4C8 = .text:0x0000B4C8; // type:function size:0x2CC +fn_1_B794 = .text:0x0000B794; // type:function size:0x190 +fn_1_B924 = .text:0x0000B924; // type:function size:0x134 +fn_1_BA58 = .text:0x0000BA58; // type:function size:0x460 +fn_1_BEB8 = .text:0x0000BEB8; // type:function size:0x94 +fn_1_BF4C = .text:0x0000BF4C; // type:function size:0x3A0 +fn_1_C2EC = .text:0x0000C2EC; // type:function size:0x3E8 +fn_1_C6D4 = .text:0x0000C6D4; // type:function size:0x9BC +fn_1_D090 = .text:0x0000D090; // type:function size:0x90C +fn_1_D99C = .text:0x0000D99C; // type:function size:0x9C8 +fn_1_E364 = .text:0x0000E364; // type:function size:0x630 +fn_1_E994 = .text:0x0000E994; // type:function size:0x298 +fn_1_EC2C = .text:0x0000EC2C; // type:function size:0x90 +fn_1_ECBC = .text:0x0000ECBC; // type:function size:0x1544 +fn_1_10200 = .text:0x00010200; // type:function size:0xA7C +fn_1_10C7C = .text:0x00010C7C; // type:function size:0x724 +fn_1_113A0 = .text:0x000113A0; // type:function size:0x4 +fn_1_113A4 = .text:0x000113A4; // type:function size:0x140C +fn_1_127B0 = .text:0x000127B0; // type:function size:0x4 +fn_1_127B4 = .text:0x000127B4; // type:function size:0xC4 +fn_1_12878 = .text:0x00012878; // type:function size:0x4D0 +fn_1_12D48 = .text:0x00012D48; // type:function size:0x300 +fn_1_13048 = .text:0x00013048; // type:function size:0x2150 +fn_1_15198 = .text:0x00015198; // type:function size:0x9C +fn_1_15234 = .text:0x00015234; // type:function size:0xDA0 +fn_1_15FD4 = .text:0x00015FD4; // type:function size:0x104 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 +lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x20 data:float +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0xC +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0xC +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x4 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0xC +lbl_1_data_FC = .data:0x000000FC; // type:object size:0xC +lbl_1_data_108 = .data:0x00000108; // type:object size:0x160 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x20 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x24 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x24 +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x24 +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x24 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x3C +lbl_1_data_354 = .data:0x00000354; // type:object size:0x18 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x18 +lbl_1_data_384 = .data:0x00000384; // type:object size:0xB data:string +lbl_1_data_38F = .data:0x0000038F; // type:object size:0xB data:string +lbl_1_data_39A = .data:0x0000039A; // type:object size:0xB data:string +lbl_1_data_3A5 = .data:0x000003A5; // type:object size:0xB data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0xB data:string +lbl_1_data_3BB = .data:0x000003BB; // type:object size:0xB data:string +lbl_1_data_3C6 = .data:0x000003C6; // type:object size:0xB data:string +lbl_1_data_3D1 = .data:0x000003D1; // type:object size:0xB data:string +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x20 +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0xB data:string +lbl_1_data_407 = .data:0x00000407; // type:object size:0xB data:string +lbl_1_data_412 = .data:0x00000412; // type:object size:0xB data:string +lbl_1_data_41D = .data:0x0000041D; // type:object size:0xB data:string +lbl_1_data_428 = .data:0x00000428; // type:object size:0xB data:string +lbl_1_data_433 = .data:0x00000433; // type:object size:0xD +lbl_1_data_440 = .data:0x00000440; // type:object size:0x18 data:4byte +lbl_1_data_458 = .data:0x00000458; // type:object size:0xB data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0xB data:string +lbl_1_data_46E = .data:0x0000046E; // type:object size:0xB data:string +lbl_1_data_479 = .data:0x00000479; // type:object size:0xB data:string +lbl_1_data_484 = .data:0x00000484; // type:object size:0xB data:string +lbl_1_data_48F = .data:0x0000048F; // type:object size:0xB data:string +lbl_1_data_49A = .data:0x0000049A; // type:object size:0xB data:string +lbl_1_data_4A5 = .data:0x000004A5; // type:object size:0xB data:string +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0xB data:string +lbl_1_data_4BB = .data:0x000004BB; // type:object size:0xD +lbl_1_data_4C8 = .data:0x000004C8; // type:object size:0x28 data:4byte +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x14 +lbl_1_data_504 = .data:0x00000504; // type:object size:0x24 +lbl_1_data_528 = .data:0x00000528; // type:object size:0x8 +lbl_1_data_530 = .data:0x00000530; // type:object size:0xB data:string +lbl_1_data_53B = .data:0x0000053B; // type:object size:0xB data:string +lbl_1_data_546 = .data:0x00000546; // type:object size:0xB data:string +lbl_1_data_551 = .data:0x00000551; // type:object size:0xB data:string +lbl_1_data_55C = .data:0x0000055C; // type:object size:0xB data:string +lbl_1_data_567 = .data:0x00000567; // type:object size:0xB data:string +lbl_1_data_572 = .data:0x00000572; // type:object size:0xB data:string +lbl_1_data_57D = .data:0x0000057D; // type:object size:0xB data:string +lbl_1_data_588 = .data:0x00000588; // type:object size:0xB data:string +lbl_1_data_593 = .data:0x00000593; // type:object size:0xB data:string +lbl_1_data_59E = .data:0x0000059E; // type:object size:0xB data:string +lbl_1_data_5A9 = .data:0x000005A9; // type:object size:0xB data:string +lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0xB data:string +lbl_1_data_5BF = .data:0x000005BF; // type:object size:0xB data:string +lbl_1_data_5CA = .data:0x000005CA; // type:object size:0xB data:string +lbl_1_data_5D5 = .data:0x000005D5; // type:object size:0xB data:string +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0xC +lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x8B8 +lbl_1_data_EA4 = .data:0x00000EA4; // type:object size:0xB data:string +lbl_1_data_EAF = .data:0x00000EAF; // type:object size:0xB data:string +lbl_1_data_EBA = .data:0x00000EBA; // type:object size:0xB data:string +lbl_1_data_EC5 = .data:0x00000EC5; // type:object size:0xB data:string +lbl_1_data_ED0 = .data:0x00000ED0; // type:object size:0xC +lbl_1_data_EDC = .data:0x00000EDC; // type:object size:0x8B8 +lbl_1_data_1794 = .data:0x00001794; // type:object size:0x20 +lbl_1_data_17B4 = .data:0x000017B4; // type:object size:0x20 +lbl_1_data_17D4 = .data:0x000017D4; // type:object size:0x20 data:float +lbl_1_data_17F4 = .data:0x000017F4; // type:object size:0x20 +lbl_1_data_1814 = .data:0x00001814; // type:object size:0x50 +lbl_1_data_1864 = .data:0x00001864; // type:object size:0x11 data:string +lbl_1_data_1875 = .data:0x00001875; // type:object size:0x11 data:string +lbl_1_data_1886 = .data:0x00001886; // type:object size:0x11 data:string +lbl_1_data_1897 = .data:0x00001897; // type:object size:0x18 data:string +lbl_1_data_18AF = .data:0x000018AF; // type:object size:0xB data:string +lbl_1_data_18BA = .data:0x000018BA; // type:object size:0x18 data:string +lbl_1_data_18D2 = .data:0x000018D2; // type:object size:0xC data:string +lbl_1_data_18DE = .data:0x000018DE; // type:object size:0x6 data:string +lbl_1_data_18E4 = .data:0x000018E4; // type:object size:0x21 data:string +lbl_1_data_1905 = .data:0x00001905; // type:object size:0x1F +jumptable_1_data_1924 = .data:0x00001924; // type:object size:0x1C scope:local +jumptable_1_data_1940 = .data:0x00001940; // type:object size:0x44 scope:local +lbl_1_data_1984 = .data:0x00001984; // type:object size:0xB data:string +lbl_1_data_198F = .data:0x0000198F; // type:object size:0x1D +jumptable_1_data_19AC = .data:0x000019AC; // type:object size:0x28 scope:local +lbl_1_data_19D4 = .data:0x000019D4; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x3F0 data:float +lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x4 data:float +lbl_1_bss_3F4 = .bss:0x000003F4; // type:object size:0x4 data:4byte +lbl_1_bss_3F8 = .bss:0x000003F8; // type:object size:0x4 data:4byte +lbl_1_bss_3FC = .bss:0x000003FC; // type:object size:0x4 data:4byte +lbl_1_bss_400 = .bss:0x00000400; // type:object size:0x2 data:2byte +lbl_1_bss_402 = .bss:0x00000402; // type:object size:0x2 data:2byte +lbl_1_bss_404 = .bss:0x00000404; // type:object size:0x2 data:2byte +lbl_1_bss_408 = .bss:0x00000408; // type:object size:0x8 data:4byte +lbl_1_bss_410 = .bss:0x00000410; // type:object size:0x4 data:4byte +lbl_1_bss_414 = .bss:0x00000414; // type:object size:0x4 data:4byte +lbl_1_bss_418 = .bss:0x00000418; // type:object size:0x4 data:4byte +lbl_1_bss_41C = .bss:0x0000041C; // type:object size:0x4 data:4byte +lbl_1_bss_420 = .bss:0x00000420; // type:object size:0x4 data:float +lbl_1_bss_424 = .bss:0x00000424; // type:object size:0x4 data:4byte +lbl_1_bss_428 = .bss:0x00000428; // type:object size:0x100 +lbl_1_bss_528 = .bss:0x00000528; // type:object size:0x40 data:4byte +lbl_1_bss_568 = .bss:0x00000568; // type:object size:0x4 data:float +lbl_1_bss_56C = .bss:0x0000056C; // type:object size:0x4 data:4byte +lbl_1_bss_570 = .bss:0x00000570; // type:object size:0x4 data:4byte +lbl_1_bss_574 = .bss:0x00000574; // type:object size:0x2 data:2byte +lbl_1_bss_576 = .bss:0x00000576; // type:object size:0x2 data:2byte +lbl_1_bss_578 = .bss:0x00000578; // type:object size:0x4 data:4byte +lbl_1_bss_57C = .bss:0x0000057C; // type:object size:0x4 data:4byte +lbl_1_bss_580 = .bss:0x00000580; // type:object size:0x4 data:4byte +lbl_1_bss_584 = .bss:0x00000584; // type:object size:0xC data:float +lbl_1_bss_590 = .bss:0x00000590; // type:object size:0xC data:4byte +lbl_1_bss_59C = .bss:0x0000059C; // type:object size:0xC data:float +lbl_1_bss_5A8 = .bss:0x000005A8; // type:object size:0xC data:4byte +lbl_1_bss_5B4 = .bss:0x000005B4; // type:object size:0x4 data:4byte +lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x18 data:4byte +lbl_1_bss_5D0 = .bss:0x000005D0; // type:object size:0xC data:4byte diff --git a/config/GMPP01_00/rels/m433Dll/splits.txt b/config/GMPP01_00/rels/m433Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m433Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m433Dll/symbols.txt b/config/GMPP01_00/rels/m433Dll/symbols.txt new file mode 100644 index 00000000..ebeb6d4e --- /dev/null +++ b/config/GMPP01_00/rels/m433Dll/symbols.txt @@ -0,0 +1,465 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x420 +fn_1_4C0 = .text:0x000004C0; // type:function size:0xC4 +fn_1_584 = .text:0x00000584; // type:function size:0x94 +fn_1_618 = .text:0x00000618; // type:function size:0x180 +fn_1_798 = .text:0x00000798; // type:function size:0x33C +fn_1_AD4 = .text:0x00000AD4; // type:function size:0x358 +fn_1_E2C = .text:0x00000E2C; // type:function size:0x214 +fn_1_1040 = .text:0x00001040; // type:function size:0x3BC +fn_1_13FC = .text:0x000013FC; // type:function size:0x2D4 +fn_1_16D0 = .text:0x000016D0; // type:function size:0x36C +fn_1_1A3C = .text:0x00001A3C; // type:function size:0xC +fn_1_1A48 = .text:0x00001A48; // type:function size:0x6F4 +fn_1_213C = .text:0x0000213C; // type:function size:0x18 +fn_1_2154 = .text:0x00002154; // type:function size:0x18 +fn_1_216C = .text:0x0000216C; // type:function size:0x18 +fn_1_2184 = .text:0x00002184; // type:function size:0x18 +fn_1_219C = .text:0x0000219C; // type:function size:0x30 +fn_1_21CC = .text:0x000021CC; // type:function size:0x18 +fn_1_21E4 = .text:0x000021E4; // type:function size:0x30 +fn_1_2214 = .text:0x00002214; // type:function size:0x30 +fn_1_2244 = .text:0x00002244; // type:function size:0x38 +fn_1_227C = .text:0x0000227C; // type:function size:0x208 +fn_1_2484 = .text:0x00002484; // type:function size:0x240 +fn_1_26C4 = .text:0x000026C4; // type:function size:0x11C +fn_1_27E0 = .text:0x000027E0; // type:function size:0xB4 +fn_1_2894 = .text:0x00002894; // type:function size:0xF0 +fn_1_2984 = .text:0x00002984; // type:function size:0x20 +fn_1_29A4 = .text:0x000029A4; // type:function size:0x120 +fn_1_2AC4 = .text:0x00002AC4; // type:function size:0x21C +fn_1_2CE0 = .text:0x00002CE0; // type:function size:0x5EC +fn_1_32CC = .text:0x000032CC; // type:function size:0x6E0 +fn_1_39AC = .text:0x000039AC; // type:function size:0x270 +fn_1_3C1C = .text:0x00003C1C; // type:function size:0x240 +fn_1_3E5C = .text:0x00003E5C; // type:function size:0xB8 +fn_1_3F14 = .text:0x00003F14; // type:function size:0xB80 +fn_1_4A94 = .text:0x00004A94; // type:function size:0x10C +fn_1_4BA0 = .text:0x00004BA0; // type:function size:0x334 +fn_1_4ED4 = .text:0x00004ED4; // type:function size:0xEC +fn_1_4FC0 = .text:0x00004FC0; // type:function size:0x28 +fn_1_4FE8 = .text:0x00004FE8; // type:function size:0x80 +fn_1_5068 = .text:0x00005068; // type:function size:0x40 +fn_1_50A8 = .text:0x000050A8; // type:function size:0xA0 +fn_1_5148 = .text:0x00005148; // type:function size:0x94 +fn_1_51DC = .text:0x000051DC; // type:function size:0x84 +fn_1_5260 = .text:0x00005260; // type:function size:0x54 +fn_1_52B4 = .text:0x000052B4; // type:function size:0x168 +fn_1_541C = .text:0x0000541C; // type:function size:0x120 +fn_1_553C = .text:0x0000553C; // type:function size:0x39C +fn_1_58D8 = .text:0x000058D8; // type:function size:0x2C +fn_1_5904 = .text:0x00005904; // type:function size:0x270 +fn_1_5B74 = .text:0x00005B74; // type:function size:0x24 +fn_1_5B98 = .text:0x00005B98; // type:function size:0x4D8 +fn_1_6070 = .text:0x00006070; // type:function size:0x50 +fn_1_60C0 = .text:0x000060C0; // type:function size:0x76C +fn_1_682C = .text:0x0000682C; // type:function size:0xA00 +fn_1_722C = .text:0x0000722C; // type:function size:0x2A8 +fn_1_74D4 = .text:0x000074D4; // type:function size:0xF34 +fn_1_8408 = .text:0x00008408; // type:function size:0x334 +fn_1_873C = .text:0x0000873C; // type:function size:0x1FC +fn_1_8938 = .text:0x00008938; // type:function size:0x298 +fn_1_8BD0 = .text:0x00008BD0; // type:function size:0x3B0 +fn_1_8F80 = .text:0x00008F80; // type:function size:0x708 +fn_1_9688 = .text:0x00009688; // type:function size:0xF90 +fn_1_A618 = .text:0x0000A618; // type:function size:0x570 +fn_1_AB88 = .text:0x0000AB88; // type:function size:0x624 +fn_1_B1AC = .text:0x0000B1AC; // type:function size:0x340 +fn_1_B4EC = .text:0x0000B4EC; // type:function size:0x20C +fn_1_B6F8 = .text:0x0000B6F8; // type:function size:0xCC +fn_1_B7C4 = .text:0x0000B7C4; // type:function size:0x8C +fn_1_B850 = .text:0x0000B850; // type:function size:0x2A8 +fn_1_BAF8 = .text:0x0000BAF8; // type:function size:0x268 +fn_1_BD60 = .text:0x0000BD60; // type:function size:0x4F8 +fn_1_C258 = .text:0x0000C258; // type:function size:0x46C +fn_1_C6C4 = .text:0x0000C6C4; // type:function size:0x4 +fn_1_C6C8 = .text:0x0000C6C8; // type:function size:0x51C +fn_1_CBE4 = .text:0x0000CBE4; // type:function size:0x220 +fn_1_CE04 = .text:0x0000CE04; // type:function size:0x3C8 +fn_1_D1CC = .text:0x0000D1CC; // type:function size:0x1B8 +fn_1_D384 = .text:0x0000D384; // type:function size:0x1A8 +fn_1_D52C = .text:0x0000D52C; // type:function size:0x1C8 +fn_1_D6F4 = .text:0x0000D6F4; // type:function size:0x1E0 +fn_1_D8D4 = .text:0x0000D8D4; // type:function size:0x4E8 +fn_1_DDBC = .text:0x0000DDBC; // type:function size:0xB8 +fn_1_DE74 = .text:0x0000DE74; // type:function size:0x11C +fn_1_DF90 = .text:0x0000DF90; // type:function size:0xA0 +fn_1_E030 = .text:0x0000E030; // type:function size:0x138 +fn_1_E168 = .text:0x0000E168; // type:function size:0x4A4 +fn_1_E60C = .text:0x0000E60C; // type:function size:0x4CC +fn_1_EAD8 = .text:0x0000EAD8; // type:function size:0x158 +fn_1_EC30 = .text:0x0000EC30; // type:function size:0x118 +fn_1_ED48 = .text:0x0000ED48; // type:function size:0x1168 +fn_1_FEB0 = .text:0x0000FEB0; // type:function size:0x28 +fn_1_FED8 = .text:0x0000FED8; // type:function size:0x2A4 +fn_1_1017C = .text:0x0001017C; // type:function size:0x130 +fn_1_102AC = .text:0x000102AC; // type:function size:0x3B4 +fn_1_10660 = .text:0x00010660; // type:function size:0xF8 +fn_1_10758 = .text:0x00010758; // type:function size:0x34 +fn_1_1078C = .text:0x0001078C; // type:function size:0x70 +fn_1_107FC = .text:0x000107FC; // type:function size:0x98 +fn_1_10894 = .text:0x00010894; // type:function size:0x30 +fn_1_108C4 = .text:0x000108C4; // type:function size:0x4C +fn_1_10910 = .text:0x00010910; // type:function size:0x3C +fn_1_1094C = .text:0x0001094C; // type:function size:0x28 +fn_1_10974 = .text:0x00010974; // type:function size:0x1F8 +fn_1_10B6C = .text:0x00010B6C; // type:function size:0x204 +fn_1_10D70 = .text:0x00010D70; // type:function size:0x180 +fn_1_10EF0 = .text:0x00010EF0; // type:function size:0x28 +fn_1_10F18 = .text:0x00010F18; // type:function size:0x34 +fn_1_10F4C = .text:0x00010F4C; // type:function size:0x38 +fn_1_10F84 = .text:0x00010F84; // type:function size:0x34 +fn_1_10FB8 = .text:0x00010FB8; // type:function size:0x38 +fn_1_10FF0 = .text:0x00010FF0; // type:function size:0x38 +fn_1_11028 = .text:0x00011028; // type:function size:0x28 +fn_1_11050 = .text:0x00011050; // type:function size:0x5C +fn_1_110AC = .text:0x000110AC; // type:function size:0x38 +fn_1_110E4 = .text:0x000110E4; // type:function size:0x98 +fn_1_1117C = .text:0x0001117C; // type:function size:0x1B0 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x10 data:4byte +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:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0xC0 +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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:0x8 data:double +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_214 = .rodata:0x00000214; // 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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 data:4byte +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 data:4byte +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 data:4byte +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:4byte +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 data:double +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x24 data:4byte +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 data:4byte +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 data:4byte +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 data:double +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:4byte +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float +lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float +lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double +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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0xC data:float +lbl_1_data_58 = .data:0x00000058; // type:object size:0x50 data:float +jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x1C data:4byte +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x38 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x38 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 +lbl_1_data_180 = .data:0x00000180; // type:object size:0x44 +lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x44 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x44 +lbl_1_data_24C = .data:0x0000024C; // type:object size:0x1A4 +lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x38 +lbl_1_data_428 = .data:0x00000428; // type:object size:0x9 data:string +lbl_1_data_431 = .data:0x00000431; // type:object size:0x9 data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0xB data:string +lbl_1_data_445 = .data:0x00000445; // type:object size:0xB data:string +lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 +lbl_1_data_468 = .data:0x00000468; // type:object size:0x24 +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x48 +lbl_1_data_4D4 = .data:0x000004D4; // type:object size:0x6C +lbl_1_data_540 = .data:0x00000540; // type:object size:0x24 +lbl_1_data_564 = .data:0x00000564; // type:object size:0x2 data:string +lbl_1_data_566 = .data:0x00000566; // type:object size:0x15 data:string +lbl_1_data_57B = .data:0x0000057B; // type:object size:0x15 data:string +lbl_1_data_590 = .data:0x00000590; // type:object size:0x15 data:string +lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x15 data:string +lbl_1_data_5BA = .data:0x000005BA; // type:object size:0x18 data:string +lbl_1_data_5D2 = .data:0x000005D2; // type:object size:0x18 data:string +lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 data:string +lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 data:string +lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 data:string +lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 data:string +lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 +jumptable_1_data_654 = .data:0x00000654; // type:object size:0x20 scope:local +lbl_1_data_674 = .data:0x00000674; // type:object size:0xC +lbl_1_data_680 = .data:0x00000680; // type:object size:0x8 +lbl_1_data_688 = .data:0x00000688; // type:object size:0x28 +lbl_1_data_6B0 = .data:0x000006B0; // type:object size:0x10 +lbl_1_data_6C0 = .data:0x000006C0; // type:object size:0xB0 data:4byte +lbl_1_data_770 = .data:0x00000770; // type:object size:0x24 +lbl_1_data_794 = .data:0x00000794; // type:object size:0x6C +lbl_1_data_800 = .data:0x00000800; // type:object size:0x24 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xA data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0xC data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x6F0 +lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x80 +lbl_1_bss_7A8 = .bss:0x000007A8; // type:object size:0x4 data:4byte +lbl_1_bss_7AC = .bss:0x000007AC; // type:object size:0x4 data:4byte +lbl_1_bss_7B0 = .bss:0x000007B0; // type:object size:0x8 data:4byte +lbl_1_bss_7B8 = .bss:0x000007B8; // type:object size:0x10 +lbl_1_bss_7C8 = .bss:0x000007C8; // type:object size:0x4 data:4byte +lbl_1_bss_7CC = .bss:0x000007CC; // type:object size:0x4 data:4byte +lbl_1_bss_7D0 = .bss:0x000007D0; // type:object size:0x14 diff --git a/config/GMPP01_00/rels/m434Dll/splits.txt b/config/GMPP01_00/rels/m434Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m434Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m434Dll/symbols.txt b/config/GMPP01_00/rels/m434Dll/symbols.txt new file mode 100644 index 00000000..08f8f83e --- /dev/null +++ b/config/GMPP01_00/rels/m434Dll/symbols.txt @@ -0,0 +1,334 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x45C +fn_1_4FC = .text:0x000004FC; // type:function size:0x5C +fn_1_558 = .text:0x00000558; // type:function size:0x70C +fn_1_C64 = .text:0x00000C64; // type:function size:0x64 +fn_1_CC8 = .text:0x00000CC8; // type:function size:0x17C +fn_1_E44 = .text:0x00000E44; // type:function size:0x278 +fn_1_10BC = .text:0x000010BC; // type:function size:0x38 +fn_1_10F4 = .text:0x000010F4; // type:function size:0x10 +fn_1_1104 = .text:0x00001104; // type:function size:0x4C +fn_1_1150 = .text:0x00001150; // type:function size:0x320 +fn_1_1470 = .text:0x00001470; // type:function size:0x1C8 +fn_1_1638 = .text:0x00001638; // type:function size:0x4C +fn_1_1684 = .text:0x00001684; // type:function size:0x30 +fn_1_16B4 = .text:0x000016B4; // type:function size:0x24 +fn_1_16D8 = .text:0x000016D8; // type:function size:0xB0 +fn_1_1788 = .text:0x00001788; // type:function size:0xB0 +fn_1_1838 = .text:0x00001838; // type:function size:0x118 +fn_1_1950 = .text:0x00001950; // type:function size:0xB0 +fn_1_1A00 = .text:0x00001A00; // type:function size:0x10 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x234 +fn_1_1C44 = .text:0x00001C44; // type:function size:0x44 +fn_1_1C88 = .text:0x00001C88; // type:function size:0x30 +fn_1_1CB8 = .text:0x00001CB8; // type:function size:0x8C +fn_1_1D44 = .text:0x00001D44; // type:function size:0x10 +fn_1_1D54 = .text:0x00001D54; // type:function size:0x10 +fn_1_1D64 = .text:0x00001D64; // type:function size:0x10 +fn_1_1D74 = .text:0x00001D74; // type:function size:0x18 +fn_1_1D8C = .text:0x00001D8C; // type:function size:0x10 +fn_1_1D9C = .text:0x00001D9C; // type:function size:0x14 +fn_1_1DB0 = .text:0x00001DB0; // type:function size:0x94 +fn_1_1E44 = .text:0x00001E44; // type:function size:0x20 +fn_1_1E64 = .text:0x00001E64; // type:function size:0x7A4 +fn_1_2608 = .text:0x00002608; // type:function size:0x9C +fn_1_26A4 = .text:0x000026A4; // type:function size:0x24C +fn_1_28F0 = .text:0x000028F0; // type:function size:0x88 +fn_1_2978 = .text:0x00002978; // type:function size:0x68C +fn_1_3004 = .text:0x00003004; // type:function size:0x124 +fn_1_3128 = .text:0x00003128; // type:function size:0x1B4 +fn_1_32DC = .text:0x000032DC; // type:function size:0xC8 +fn_1_33A4 = .text:0x000033A4; // type:function size:0xF8 +fn_1_349C = .text:0x0000349C; // type:function size:0xF8 +fn_1_3594 = .text:0x00003594; // type:function size:0x734 +fn_1_3CC8 = .text:0x00003CC8; // type:function size:0x6E4 +fn_1_43AC = .text:0x000043AC; // type:function size:0x90 +fn_1_443C = .text:0x0000443C; // type:function size:0x3B0 +fn_1_47EC = .text:0x000047EC; // type:function size:0x68 +fn_1_4854 = .text:0x00004854; // type:function size:0x110 +fn_1_4964 = .text:0x00004964; // type:function size:0x24 +fn_1_4988 = .text:0x00004988; // type:function size:0x46C +fn_1_4DF4 = .text:0x00004DF4; // type:function size:0x5C +fn_1_4E50 = .text:0x00004E50; // type:function size:0xC60 +fn_1_5AB0 = .text:0x00005AB0; // type:function size:0x13C +fn_1_5BEC = .text:0x00005BEC; // type:function size:0xAC +fn_1_5C98 = .text:0x00005C98; // type:function size:0x414 +fn_1_60AC = .text:0x000060AC; // type:function size:0x19C +fn_1_6248 = .text:0x00006248; // type:function size:0x74 +fn_1_62BC = .text:0x000062BC; // type:function size:0x1E0 +fn_1_649C = .text:0x0000649C; // type:function size:0x24 +fn_1_64C0 = .text:0x000064C0; // type:function size:0x1D0 +fn_1_6690 = .text:0x00006690; // type:function size:0x11C +fn_1_67AC = .text:0x000067AC; // type:function size:0xB4 +fn_1_6860 = .text:0x00006860; // type:function size:0x224 +fn_1_6A84 = .text:0x00006A84; // type:function size:0x4 +fn_1_6A88 = .text:0x00006A88; // type:function size:0x2F4 +fn_1_6D7C = .text:0x00006D7C; // type:function size:0x3C +fn_1_6DB8 = .text:0x00006DB8; // type:function size:0x4 +fn_1_6DBC = .text:0x00006DBC; // type:function size:0x1034 +fn_1_7DF0 = .text:0x00007DF0; // type:function size:0x464 +fn_1_8254 = .text:0x00008254; // type:function size:0x174 +fn_1_83C8 = .text:0x000083C8; // type:function size:0x108 +fn_1_84D0 = .text:0x000084D0; // type:function size:0xF4 +fn_1_85C4 = .text:0x000085C4; // type:function size:0x2C0 +fn_1_8884 = .text:0x00008884; // type:function size:0x268 +fn_1_8AEC = .text:0x00008AEC; // type:function size:0x6C +fn_1_8B58 = .text:0x00008B58; // type:function size:0xBC +fn_1_8C14 = .text:0x00008C14; // type:function size:0x164 +fn_1_8D78 = .text:0x00008D78; // type:function size:0xB4 +fn_1_8E2C = .text:0x00008E2C; // type:function size:0x110 +fn_1_8F3C = .text:0x00008F3C; // type:function size:0x64 +fn_1_8FA0 = .text:0x00008FA0; // type:function size:0x1EC +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // 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:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x10 data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0xC data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC data:4byte +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:4byte +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x48 +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x48 +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:4byte +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x48 +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x48 +lbl_1_data_0 = .data:0x00000000; // type:object size:0xC data:float +lbl_1_data_C = .data:0x0000000C; // type:object size:0x18 data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x28 +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x4 data:4byte +lbl_1_data_74 = .data:0x00000074; // type:object size:0x12 data:string +lbl_1_data_86 = .data:0x00000086; // type:object size:0x1E +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xC +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x30 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x10 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x34 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x5 data:string +lbl_1_data_139 = .data:0x00000139; // type:object size:0x7 data:byte +lbl_1_data_140 = .data:0x00000140; // type:object size:0x18 +lbl_1_data_158 = .data:0x00000158; // type:object size:0x1C +lbl_1_data_174 = .data:0x00000174; // type:object size:0x1 data:byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x8 data:byte +lbl_1_data_180 = .data:0x00000180; // type:object size:0x10 +lbl_1_data_190 = .data:0x00000190; // type:object size:0x20 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2C +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x18 +lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x28 +lbl_1_data_224 = .data:0x00000224; // type:object size:0x90 +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 data:string +lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 data:string +lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x6 +lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x380 +lbl_1_bss_39C = .bss:0x0000039C; // type:object size:0x4 data:4byte +lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x8 +lbl_1_bss_3A8 = .bss:0x000003A8; // type:object size:0x2 data:2byte +lbl_1_bss_3AA = .bss:0x000003AA; // type:object size:0x2 data:2byte +lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x2 data:2byte +lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x8 data:2byte +lbl_1_bss_3B8 = .bss:0x000003B8; // type:object size:0x4 data:4byte +lbl_1_bss_3BC = .bss:0x000003BC; // type:object size:0x4 data:4byte +lbl_1_bss_3C0 = .bss:0x000003C0; // type:object size:0x2 data:2byte +lbl_1_bss_3C2 = .bss:0x000003C2; // type:object size:0x2 data:2byte +lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x8 data:4byte +lbl_1_bss_3CC = .bss:0x000003CC; // type:object size:0x4 data:4byte +lbl_1_bss_3D0 = .bss:0x000003D0; // type:object size:0x4 data:4byte +lbl_1_bss_3D4 = .bss:0x000003D4; // type:object size:0x1C data:4byte +lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x50 data:4byte +lbl_1_bss_440 = .bss:0x00000440; // type:object size:0x10 data:4byte +lbl_1_bss_450 = .bss:0x00000450; // type:object size:0x8 data:4byte +lbl_1_bss_458 = .bss:0x00000458; // type:object size:0x4 data:4byte +lbl_1_bss_45C = .bss:0x0000045C; // type:object size:0x8 data:4byte +lbl_1_bss_464 = .bss:0x00000464; // type:object size:0x2000 data:float +lbl_1_bss_2464 = .bss:0x00002464; // type:object size:0x4 data:4byte +lbl_1_bss_2468 = .bss:0x00002468; // type:object size:0x400 data:2byte +lbl_1_bss_2868 = .bss:0x00002868; // type:object size:0x3000 data:float +lbl_1_bss_5868 = .bss:0x00005868; // type:object size:0x8 data:4byte +lbl_1_bss_5870 = .bss:0x00005870; // type:object size:0x10 +lbl_1_bss_5880 = .bss:0x00005880; // type:object size:0x800 +lbl_1_bss_6080 = .bss:0x00006080; // type:object size:0x400 +lbl_1_bss_6480 = .bss:0x00006480; // type:object size:0x1000 +lbl_1_bss_7480 = .bss:0x00007480; // type:object size:0x400 data:4byte +lbl_1_bss_7880 = .bss:0x00007880; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m435Dll/splits.txt b/config/GMPP01_00/rels/m435Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m435Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m435Dll/symbols.txt b/config/GMPP01_00/rels/m435Dll/symbols.txt new file mode 100644 index 00000000..38995f87 --- /dev/null +++ b/config/GMPP01_00/rels/m435Dll/symbols.txt @@ -0,0 +1,471 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x1A8 +fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 +fn_1_230 = .text:0x00000230; // type:function size:0x68 +fn_1_298 = .text:0x00000298; // type:function size:0x6C +fn_1_304 = .text:0x00000304; // type:function size:0x130 +fn_1_434 = .text:0x00000434; // type:function size:0x3E4 +fn_1_818 = .text:0x00000818; // type:function size:0x8C +fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 +fn_1_8C4 = .text:0x000008C4; // type:function size:0x20 +fn_1_8E4 = .text:0x000008E4; // type:function size:0x48 +fn_1_92C = .text:0x0000092C; // type:function size:0x6B0 +fn_1_FDC = .text:0x00000FDC; // type:function size:0x134 +fn_1_1110 = .text:0x00001110; // type:function size:0xC4 +fn_1_11D4 = .text:0x000011D4; // type:function size:0x644 +fn_1_1818 = .text:0x00001818; // type:function size:0x24 +fn_1_183C = .text:0x0000183C; // type:function size:0x458 +fn_1_1C94 = .text:0x00001C94; // type:function size:0x1EC +fn_1_1E80 = .text:0x00001E80; // type:function size:0x1EC +fn_1_206C = .text:0x0000206C; // type:function size:0x458 +fn_1_24C4 = .text:0x000024C4; // type:function size:0x68 +fn_1_252C = .text:0x0000252C; // type:function size:0x68 +fn_1_2594 = .text:0x00002594; // type:function size:0xE8 +fn_1_267C = .text:0x0000267C; // type:function size:0x11C +fn_1_2798 = .text:0x00002798; // type:function size:0x84 +fn_1_281C = .text:0x0000281C; // type:function size:0x70 +fn_1_288C = .text:0x0000288C; // type:function size:0x38 +fn_1_28C4 = .text:0x000028C4; // type:function size:0x24 +fn_1_28E8 = .text:0x000028E8; // type:function size:0x38 +fn_1_2920 = .text:0x00002920; // type:function size:0x1C8 +fn_1_2AE8 = .text:0x00002AE8; // type:function size:0x64 +fn_1_2B4C = .text:0x00002B4C; // type:function size:0xA8 +fn_1_2BF4 = .text:0x00002BF4; // type:function size:0x20 +fn_1_2C14 = .text:0x00002C14; // type:function size:0x5A0 +fn_1_31B4 = .text:0x000031B4; // type:function size:0xCC +fn_1_3280 = .text:0x00003280; // type:function size:0x2D0 +fn_1_3550 = .text:0x00003550; // type:function size:0x59C +fn_1_3AEC = .text:0x00003AEC; // type:function size:0x20 +fn_1_3B0C = .text:0x00003B0C; // type:function size:0x370 +fn_1_3E7C = .text:0x00003E7C; // type:function size:0x20 +fn_1_3E9C = .text:0x00003E9C; // type:function size:0x260 +fn_1_40FC = .text:0x000040FC; // type:function size:0x2C +fn_1_4128 = .text:0x00004128; // type:function size:0x5A8 +fn_1_46D0 = .text:0x000046D0; // type:function size:0x22C +fn_1_48FC = .text:0x000048FC; // type:function size:0x3E8 +fn_1_4CE4 = .text:0x00004CE4; // type:function size:0x11C +fn_1_4E00 = .text:0x00004E00; // type:function size:0x1AC +fn_1_4FAC = .text:0x00004FAC; // type:function size:0x484 +fn_1_5430 = .text:0x00005430; // type:function size:0x1C8 +fn_1_55F8 = .text:0x000055F8; // type:function size:0x44 +fn_1_563C = .text:0x0000563C; // type:function size:0x1C18 +fn_1_7254 = .text:0x00007254; // type:function size:0x48 +fn_1_729C = .text:0x0000729C; // type:function size:0x384 +fn_1_7620 = .text:0x00007620; // type:function size:0x374 +fn_1_7994 = .text:0x00007994; // type:function size:0x24 +fn_1_79B8 = .text:0x000079B8; // type:function size:0xB8 +fn_1_7A70 = .text:0x00007A70; // type:function size:0xCC +fn_1_7B3C = .text:0x00007B3C; // type:function size:0x1E4 +fn_1_7D20 = .text:0x00007D20; // type:function size:0x28 +fn_1_7D48 = .text:0x00007D48; // type:function size:0x24 +fn_1_7D6C = .text:0x00007D6C; // type:function size:0x160 +fn_1_7ECC = .text:0x00007ECC; // type:function size:0x37C +fn_1_8248 = .text:0x00008248; // type:function size:0x24 +fn_1_826C = .text:0x0000826C; // type:function size:0x2D0 +fn_1_853C = .text:0x0000853C; // type:function size:0x4C +fn_1_8588 = .text:0x00008588; // type:function size:0x1A4 +fn_1_872C = .text:0x0000872C; // type:function size:0x17C +fn_1_88A8 = .text:0x000088A8; // type:function size:0x598 +fn_1_8E40 = .text:0x00008E40; // type:function size:0x28 +fn_1_8E68 = .text:0x00008E68; // type:function size:0x58 +fn_1_8EC0 = .text:0x00008EC0; // type:function size:0x2C +fn_1_8EEC = .text:0x00008EEC; // type:function size:0x40 +fn_1_8F2C = .text:0x00008F2C; // type:function size:0x18 +fn_1_8F44 = .text:0x00008F44; // type:function size:0x150 +fn_1_9094 = .text:0x00009094; // type:function size:0x6CC +fn_1_9760 = .text:0x00009760; // type:function size:0x28 +fn_1_9788 = .text:0x00009788; // type:function size:0x94 +fn_1_981C = .text:0x0000981C; // type:function size:0x28 +fn_1_9844 = .text:0x00009844; // type:function size:0x380 +fn_1_9BC4 = .text:0x00009BC4; // type:function size:0x3C +fn_1_9C00 = .text:0x00009C00; // type:function size:0x180 +fn_1_9D80 = .text:0x00009D80; // type:function size:0x1F4 +fn_1_9F74 = .text:0x00009F74; // type:function size:0x1CC +fn_1_A140 = .text:0x0000A140; // type:function size:0x370 +fn_1_A4B0 = .text:0x0000A4B0; // type:function size:0x28 +fn_1_A4D8 = .text:0x0000A4D8; // type:function size:0x190 +fn_1_A668 = .text:0x0000A668; // type:function size:0x64 +fn_1_A6CC = .text:0x0000A6CC; // type:function size:0x1F0 +fn_1_A8BC = .text:0x0000A8BC; // type:function size:0x338 +fn_1_ABF4 = .text:0x0000ABF4; // type:function size:0x160 +fn_1_AD54 = .text:0x0000AD54; // type:function size:0x498 +fn_1_B1EC = .text:0x0000B1EC; // type:function size:0x634 +fn_1_B820 = .text:0x0000B820; // type:function size:0x128 +fn_1_B948 = .text:0x0000B948; // type:function size:0x298 +fn_1_BBE0 = .text:0x0000BBE0; // type:function size:0xB0 +fn_1_BC90 = .text:0x0000BC90; // type:function size:0xD8 +fn_1_BD68 = .text:0x0000BD68; // type:function size:0xB0 +fn_1_BE18 = .text:0x0000BE18; // type:function size:0xB0 +fn_1_BEC8 = .text:0x0000BEC8; // type:function size:0xB0 +fn_1_BF78 = .text:0x0000BF78; // type:function size:0xE4 +fn_1_C05C = .text:0x0000C05C; // type:function size:0xD8 +fn_1_C134 = .text:0x0000C134; // type:function size:0xD8 +fn_1_C20C = .text:0x0000C20C; // type:function size:0xD8 +fn_1_C2E4 = .text:0x0000C2E4; // type:function size:0xD8 +fn_1_C3BC = .text:0x0000C3BC; // type:function size:0xD8 +fn_1_C494 = .text:0x0000C494; // type:function size:0xB0 +fn_1_C544 = .text:0x0000C544; // type:function size:0xB0 +fn_1_C5F4 = .text:0x0000C5F4; // type:function size:0x168 +fn_1_C75C = .text:0x0000C75C; // type:function size:0x558 +fn_1_CCB4 = .text:0x0000CCB4; // type:function size:0x3A0 +fn_1_D054 = .text:0x0000D054; // type:function size:0x43C +fn_1_D490 = .text:0x0000D490; // type:function size:0x424 +fn_1_D8B4 = .text:0x0000D8B4; // type:function size:0x8D4 +fn_1_E188 = .text:0x0000E188; // type:function size:0x4E0 +fn_1_E668 = .text:0x0000E668; // type:function size:0x3E4 +fn_1_EA4C = .text:0x0000EA4C; // type:function size:0x340 +fn_1_ED8C = .text:0x0000ED8C; // type:function size:0x448 +fn_1_F1D4 = .text:0x0000F1D4; // type:function size:0x4 +fn_1_F1D8 = .text:0x0000F1D8; // type:function size:0x18C +fn_1_F364 = .text:0x0000F364; // type:function size:0x3C +fn_1_F3A0 = .text:0x0000F3A0; // type:function size:0x5C +fn_1_F3FC = .text:0x0000F3FC; // type:function size:0x78 +fn_1_F474 = .text:0x0000F474; // type:function size:0x5C +fn_1_F4D0 = .text:0x0000F4D0; // type:function size:0x5C +fn_1_F52C = .text:0x0000F52C; // type:function size:0x48 +fn_1_F574 = .text:0x0000F574; // type:function size:0x3C +fn_1_F5B0 = .text:0x0000F5B0; // type:function size:0x80 +fn_1_F630 = .text:0x0000F630; // type:function size:0x64 +fn_1_F694 = .text:0x0000F694; // type:function size:0x5C +fn_1_F6F0 = .text:0x0000F6F0; // type:function size:0x70 +fn_1_F760 = .text:0x0000F760; // type:function size:0x48 +fn_1_F7A8 = .text:0x0000F7A8; // type:function size:0xA8 +fn_1_F850 = .text:0x0000F850; // type:function size:0x44 +fn_1_F894 = .text:0x0000F894; // type:function size:0x5C +fn_1_F8F0 = .text:0x0000F8F0; // type:function size:0x5C +fn_1_F94C = .text:0x0000F94C; // type:function size:0x4 +fn_1_F950 = .text:0x0000F950; // type:function size:0x48 +fn_1_F998 = .text:0x0000F998; // type:function size:0x4C +fn_1_F9E4 = .text:0x0000F9E4; // type:function size:0x5C +fn_1_FA40 = .text:0x0000FA40; // type:function size:0x108 +fn_1_FB48 = .text:0x0000FB48; // type:function size:0x5C +fn_1_FBA4 = .text:0x0000FBA4; // type:function size:0xB0 +fn_1_FC54 = .text:0x0000FC54; // type:function size:0x208 +fn_1_FE5C = .text:0x0000FE5C; // type:function size:0x30 +fn_1_FE8C = .text:0x0000FE8C; // type:function size:0x98 +fn_1_FF24 = .text:0x0000FF24; // type:function size:0x808 +fn_1_1072C = .text:0x0001072C; // type:function size:0x28 +fn_1_10754 = .text:0x00010754; // type:function size:0xD8 +fn_1_1082C = .text:0x0001082C; // type:function size:0xD8 +fn_1_10904 = .text:0x00010904; // type:function size:0x108 +fn_1_10A0C = .text:0x00010A0C; // type:function size:0x408 +fn_1_10E14 = .text:0x00010E14; // type:function size:0x404 +fn_1_11218 = .text:0x00011218; // type:function size:0x488 +fn_1_116A0 = .text:0x000116A0; // type:function size:0x45C +fn_1_11AFC = .text:0x00011AFC; // type:function size:0x478 +fn_1_11F74 = .text:0x00011F74; // type:function size:0x4 +fn_1_11F78 = .text:0x00011F78; // type:function size:0x48 +fn_1_11FC0 = .text:0x00011FC0; // type:function size:0x9C +fn_1_1205C = .text:0x0001205C; // type:function size:0x1AC +fn_1_12208 = .text:0x00012208; // type:function size:0x50 +fn_1_12258 = .text:0x00012258; // type:function size:0x48 +fn_1_122A0 = .text:0x000122A0; // type:function size:0x38 +fn_1_122D8 = .text:0x000122D8; // type:function size:0x134 +fn_1_1240C = .text:0x0001240C; // type:function size:0x2C +fn_1_12438 = .text:0x00012438; // type:function size:0x134 +fn_1_1256C = .text:0x0001256C; // type:function size:0x48 +fn_1_125B4 = .text:0x000125B4; // type:function size:0x48 +fn_1_125FC = .text:0x000125FC; // type:function size:0xF0 +fn_1_126EC = .text:0x000126EC; // type:function size:0xC0 +fn_1_127AC = .text:0x000127AC; // type:function size:0x5C +fn_1_12808 = .text:0x00012808; // type:function size:0x48 +fn_1_12850 = .text:0x00012850; // type:function size:0x100 +fn_1_12950 = .text:0x00012950; // type:function size:0x1F8 +fn_1_12B48 = .text:0x00012B48; // type:function size:0x3C +fn_1_12B84 = .text:0x00012B84; // type:function size:0x5C +fn_1_12BE0 = .text:0x00012BE0; // type:function size:0x3C +fn_1_12C1C = .text:0x00012C1C; // type:function size:0x5C +fn_1_12C78 = .text:0x00012C78; // type:function size:0x3C +fn_1_12CB4 = .text:0x00012CB4; // type:function size:0x5C +fn_1_12D10 = .text:0x00012D10; // type:function size:0x230 +fn_1_12F40 = .text:0x00012F40; // type:function size:0xF4 +fn_1_13034 = .text:0x00013034; // type:function size:0x4C +fn_1_13080 = .text:0x00013080; // type:function size:0x128 +fn_1_131A8 = .text:0x000131A8; // type:function size:0x40 +fn_1_131E8 = .text:0x000131E8; // type:function size:0x98 +fn_1_13280 = .text:0x00013280; // type:function size:0xB0 +fn_1_13330 = .text:0x00013330; // type:function size:0xAC +fn_1_133DC = .text:0x000133DC; // type:function size:0x30 +fn_1_1340C = .text:0x0001340C; // type:function size:0x98 +fn_1_134A4 = .text:0x000134A4; // type:function size:0xF4 +fn_1_13598 = .text:0x00013598; // type:function size:0x60 +fn_1_135F8 = .text:0x000135F8; // type:function size:0xD84 +fn_1_1437C = .text:0x0001437C; // type:function size:0x3DC +fn_1_14758 = .text:0x00014758; // type:function size:0x254 +_prolog = .text:0x000149AC; // type:function size:0x54 scope:global +_epilog = .text:0x00014A00; // type:function size:0x4C scope:global +fn_1_14A4C = .text:0x00014A4C; // type:function size:0x40C +fn_1_14E58 = .text:0x00014E58; // type:function size:0x40C +fn_1_15264 = .text:0x00015264; // type:function size:0x28 +fn_1_1528C = .text:0x0001528C; // type:function size:0x40 +fn_1_152CC = .text:0x000152CC; // type:function size:0xC8 +fn_1_15394 = .text:0x00015394; // type:function size:0xD8 +fn_1_1546C = .text:0x0001546C; // type:function size:0x50 +fn_1_154BC = .text:0x000154BC; // type:function size:0x5C +fn_1_15518 = .text:0x00015518; // type:function size:0x88 +fn_1_155A0 = .text:0x000155A0; // type:function size:0x74 +fn_1_15614 = .text:0x00015614; // type:function size:0x54 +fn_1_15668 = .text:0x00015668; // type:function size:0x3C +fn_1_156A4 = .text:0x000156A4; // type:function size:0x110 +fn_1_157B4 = .text:0x000157B4; // type:function size:0x178 +fn_1_1592C = .text:0x0001592C; // type:function size:0x1C8 +fn_1_15AF4 = .text:0x00015AF4; // type:function size:0x318 +fn_1_15E0C = .text:0x00015E0C; // type:function size:0x3C +fn_1_15E48 = .text:0x00015E48; // type:function size:0x4C +fn_1_15E94 = .text:0x00015E94; // type:function size:0x314 +fn_1_161A8 = .text:0x000161A8; // type:function size:0x314 +fn_1_164BC = .text:0x000164BC; // type:function size:0x27C +fn_1_16738 = .text:0x00016738; // type:function size:0x2B4 +fn_1_169EC = .text:0x000169EC; // type:function size:0x530 +fn_1_16F1C = .text:0x00016F1C; // type:function size:0x454 +fn_1_17370 = .text:0x00017370; // type:function size:0x48C +fn_1_177FC = .text:0x000177FC; // type:function size:0x71C +fn_1_17F18 = .text:0x00017F18; // type:function size:0x4C4 +fn_1_183DC = .text:0x000183DC; // type:function size:0x4FC +fn_1_188D8 = .text:0x000188D8; // type:function size:0x78C +fn_1_19064 = .text:0x00019064; // type:function size:0x4C4 +fn_1_19528 = .text:0x00019528; // type:function size:0x60 +fn_1_19588 = .text:0x00019588; // type:function size:0x64 +fn_1_195EC = .text:0x000195EC; // type:function size:0x64 +fn_1_19650 = .text:0x00019650; // type:function size:0x23C +fn_1_1988C = .text:0x0001988C; // type:function size:0x64 +fn_1_198F0 = .text:0x000198F0; // type:function size:0x68 +fn_1_19958 = .text:0x00019958; // type:function size:0x8 +fn_1_19960 = .text:0x00019960; // type:function size:0xC +fn_1_1996C = .text:0x0001996C; // type:function size:0x8 +fn_1_19974 = .text:0x00019974; // type:function size:0x344 +fn_1_19CB8 = .text:0x00019CB8; // type:function size:0x190 +fn_1_19E48 = .text:0x00019E48; // type:function size:0x4EC +fn_1_1A334 = .text:0x0001A334; // type:function size:0x110 +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:4byte +lbl_1_rodata_A4 = .rodata:0x000000A4; // type:object size:0x48 +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // 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:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x20 data:4byte +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x30 data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x30 data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x30 data:4byte +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x8 data:4byte +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x8 data:4byte +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x8 data:4byte +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x8 data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x24 data:4byte +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:4byte +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x24 data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x8 data:4byte +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x8 data:4byte +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x8 data:4byte +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x8 data:4byte +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x10 data:4byte +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x8 data:4byte +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x8 data:4byte +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x8 data:4byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x8 data:4byte +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x30 data:4byte +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x64 data:4byte +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x10 data:string +lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 data:string +lbl_1_data_80 = .data:0x00000080; // type:object size:0x10 data:string +lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 data:string +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 data:string +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 data:string +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x10 data:string +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x40 +lbl_1_data_140 = .data:0x00000140; // type:object size:0xA0 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x4 data:4byte +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x4 data:4byte +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x4 data:4byte +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x1B data:string +lbl_1_data_207 = .data:0x00000207; // type:object size:0x22 data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x1A data:string +lbl_1_data_243 = .data:0x00000243; // type:object size:0x1A data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0xF +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x4 data:4byte +jumptable_1_data_270 = .data:0x00000270; // type:object size:0x54 scope:local +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x4 data:float +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x13 data:string +lbl_1_data_2DB = .data:0x000002DB; // type:object size:0x11 +jumptable_1_data_2EC = .data:0x000002EC; // type:object size:0x24 scope:local +jumptable_1_data_310 = .data:0x00000310; // type:object size:0x2C scope:local +lbl_1_data_33C = .data:0x0000033C; // type:object size:0xE data:string +lbl_1_data_34A = .data:0x0000034A; // type:object size:0x12 data:string +lbl_1_data_35C = .data:0x0000035C; // type:object size:0x14 +jumptable_1_data_370 = .data:0x00000370; // type:object size:0x30 scope:local +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0xA8 +jumptable_1_data_448 = .data:0x00000448; // type:object size:0x1C scope:local +lbl_1_data_464 = .data:0x00000464; // type:object size:0x4 +lbl_1_data_468 = .data:0x00000468; // type:object size:0xB4 +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 +jumptable_1_data_534 = .data:0x00000534; // type:object size:0x28 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x8 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x30 +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x18 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x18 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0xA8 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x160 +lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x978 data:4byte +lbl_1_bss_C1C = .bss:0x00000C1C; // type:object size:0x14 data:4byte +lbl_1_bss_C30 = .bss:0x00000C30; // type:object size:0x1B4 data:4byte +lbl_1_bss_DE4 = .bss:0x00000DE4; // type:object size:0x24 data:4byte +lbl_1_bss_E08 = .bss:0x00000E08; // type:object size:0x80 data:4byte +lbl_1_bss_E88 = .bss:0x00000E88; // type:object size:0x4060 data:4byte +lbl_1_bss_4EE8 = .bss:0x00004EE8; // type:object size:0x20 data:4byte +lbl_1_bss_4F08 = .bss:0x00004F08; // type:object size:0x8 data:4byte +lbl_1_bss_4F10 = .bss:0x00004F10; // type:object size:0x38 data:4byte diff --git a/config/GMPP01_00/rels/m436Dll/splits.txt b/config/GMPP01_00/rels/m436Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m436Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m436Dll/symbols.txt b/config/GMPP01_00/rels/m436Dll/symbols.txt new file mode 100644 index 00000000..057ebf99 --- /dev/null +++ b/config/GMPP01_00/rels/m436Dll/symbols.txt @@ -0,0 +1,352 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x1A8 +fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 +fn_1_230 = .text:0x00000230; // type:function size:0x3E4 +fn_1_614 = .text:0x00000614; // type:function size:0x68 +fn_1_67C = .text:0x0000067C; // type:function size:0x6C +fn_1_6E8 = .text:0x000006E8; // type:function size:0x130 +fn_1_818 = .text:0x00000818; // type:function size:0x8C +fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 +fn_1_8C4 = .text:0x000008C4; // type:function size:0x6A8 +fn_1_F6C = .text:0x00000F6C; // type:function size:0x118 +fn_1_1084 = .text:0x00001084; // type:function size:0xC4 +fn_1_1148 = .text:0x00001148; // type:function size:0x644 +fn_1_178C = .text:0x0000178C; // type:function size:0x24 +fn_1_17B0 = .text:0x000017B0; // type:function size:0x458 +fn_1_1C08 = .text:0x00001C08; // type:function size:0x458 +fn_1_2060 = .text:0x00002060; // type:function size:0x1D0 +fn_1_2230 = .text:0x00002230; // type:function size:0x1D0 +fn_1_2400 = .text:0x00002400; // type:function size:0x68 +fn_1_2468 = .text:0x00002468; // type:function size:0x68 +fn_1_24D0 = .text:0x000024D0; // type:function size:0xE8 +fn_1_25B8 = .text:0x000025B8; // type:function size:0x11C +fn_1_26D4 = .text:0x000026D4; // type:function size:0x70 +fn_1_2744 = .text:0x00002744; // type:function size:0x84 +fn_1_27C8 = .text:0x000027C8; // type:function size:0x38 +fn_1_2800 = .text:0x00002800; // type:function size:0x24 +fn_1_2824 = .text:0x00002824; // type:function size:0x38 +fn_1_285C = .text:0x0000285C; // type:function size:0x1C8 +fn_1_2A24 = .text:0x00002A24; // type:function size:0x64 +fn_1_2A88 = .text:0x00002A88; // type:function size:0x304 +fn_1_2D8C = .text:0x00002D8C; // type:function size:0x28C +fn_1_3018 = .text:0x00003018; // type:function size:0x68 +fn_1_3080 = .text:0x00003080; // type:function size:0x174 +fn_1_31F4 = .text:0x000031F4; // type:function size:0x7B8 +fn_1_39AC = .text:0x000039AC; // type:function size:0x23C +fn_1_3BE8 = .text:0x00003BE8; // type:function size:0x61C +fn_1_4204 = .text:0x00004204; // type:function size:0xF8 +fn_1_42FC = .text:0x000042FC; // type:function size:0x290 +fn_1_458C = .text:0x0000458C; // type:function size:0x318 +fn_1_48A4 = .text:0x000048A4; // type:function size:0x150 +fn_1_49F4 = .text:0x000049F4; // type:function size:0xB8 +fn_1_4AAC = .text:0x00004AAC; // type:function size:0x68 +fn_1_4B14 = .text:0x00004B14; // type:function size:0x38C +fn_1_4EA0 = .text:0x00004EA0; // type:function size:0x108 +fn_1_4FA8 = .text:0x00004FA8; // type:function size:0x3DC +fn_1_5384 = .text:0x00005384; // type:function size:0x28 +fn_1_53AC = .text:0x000053AC; // type:function size:0x60 +fn_1_540C = .text:0x0000540C; // type:function size:0x3C +fn_1_5448 = .text:0x00005448; // type:function size:0x50 +fn_1_5498 = .text:0x00005498; // type:function size:0x168 +fn_1_5600 = .text:0x00005600; // type:function size:0x6C8 +fn_1_5CC8 = .text:0x00005CC8; // type:function size:0x390 +fn_1_6058 = .text:0x00006058; // type:function size:0x264 +fn_1_62BC = .text:0x000062BC; // type:function size:0x624 +fn_1_68E0 = .text:0x000068E0; // type:function size:0x5C +fn_1_693C = .text:0x0000693C; // type:function size:0x298 +fn_1_6BD4 = .text:0x00006BD4; // type:function size:0xB0 +fn_1_6C84 = .text:0x00006C84; // type:function size:0xD8 +fn_1_6D5C = .text:0x00006D5C; // type:function size:0xB0 +fn_1_6E0C = .text:0x00006E0C; // type:function size:0xB0 +fn_1_6EBC = .text:0x00006EBC; // type:function size:0xB0 +fn_1_6F6C = .text:0x00006F6C; // type:function size:0xD8 +fn_1_7044 = .text:0x00007044; // type:function size:0xB0 +fn_1_70F4 = .text:0x000070F4; // type:function size:0xB0 +fn_1_71A4 = .text:0x000071A4; // type:function size:0x120 +fn_1_72C4 = .text:0x000072C4; // type:function size:0x524 +fn_1_77E8 = .text:0x000077E8; // type:function size:0x368 +fn_1_7B50 = .text:0x00007B50; // type:function size:0x3C4 +fn_1_7F14 = .text:0x00007F14; // type:function size:0x268C +fn_1_A5A0 = .text:0x0000A5A0; // type:function size:0xE2C +fn_1_B3CC = .text:0x0000B3CC; // type:function size:0x40C +fn_1_B7D8 = .text:0x0000B7D8; // type:function size:0x4 +fn_1_B7DC = .text:0x0000B7DC; // type:function size:0x184 +fn_1_B960 = .text:0x0000B960; // type:function size:0x4C +fn_1_B9AC = .text:0x0000B9AC; // type:function size:0x5C +fn_1_BA08 = .text:0x0000BA08; // type:function size:0x94 +fn_1_BA9C = .text:0x0000BA9C; // type:function size:0x100 +fn_1_BB9C = .text:0x0000BB9C; // type:function size:0x50 +fn_1_BBEC = .text:0x0000BBEC; // type:function size:0x48 +fn_1_BC34 = .text:0x0000BC34; // type:function size:0x3C +fn_1_BC70 = .text:0x0000BC70; // type:function size:0x80 +fn_1_BCF0 = .text:0x0000BCF0; // type:function size:0x74 +fn_1_BD64 = .text:0x0000BD64; // type:function size:0xB0 +fn_1_BE14 = .text:0x0000BE14; // type:function size:0x50 +fn_1_BE64 = .text:0x0000BE64; // type:function size:0x48 +fn_1_BEAC = .text:0x0000BEAC; // type:function size:0x4C +fn_1_BEF8 = .text:0x0000BEF8; // type:function size:0xC8 +fn_1_BFC0 = .text:0x0000BFC0; // type:function size:0x30 +fn_1_BFF0 = .text:0x0000BFF0; // type:function size:0x98 +fn_1_C088 = .text:0x0000C088; // type:function size:0x458 +fn_1_C4E0 = .text:0x0000C4E0; // type:function size:0xFC +fn_1_C5DC = .text:0x0000C5DC; // type:function size:0xB0 +fn_1_C68C = .text:0x0000C68C; // type:function size:0xD8 +fn_1_C764 = .text:0x0000C764; // type:function size:0xD8 +fn_1_C83C = .text:0x0000C83C; // type:function size:0xC8 +fn_1_C904 = .text:0x0000C904; // type:function size:0x398 +fn_1_CC9C = .text:0x0000CC9C; // type:function size:0x374 +fn_1_D010 = .text:0x0000D010; // type:function size:0x32C +fn_1_D33C = .text:0x0000D33C; // type:function size:0xD4 +fn_1_D410 = .text:0x0000D410; // type:function size:0x2A8 +fn_1_D6B8 = .text:0x0000D6B8; // type:function size:0x24 +fn_1_D6DC = .text:0x0000D6DC; // type:function size:0x37C +fn_1_DA58 = .text:0x0000DA58; // type:function size:0xA0 +fn_1_DAF8 = .text:0x0000DAF8; // type:function size:0x2BC +fn_1_DDB4 = .text:0x0000DDB4; // type:function size:0xF4 +fn_1_DEA8 = .text:0x0000DEA8; // type:function size:0x200 +fn_1_E0A8 = .text:0x0000E0A8; // type:function size:0x94 +fn_1_E13C = .text:0x0000E13C; // type:function size:0x248 +fn_1_E384 = .text:0x0000E384; // type:function size:0x140 +fn_1_E4C4 = .text:0x0000E4C4; // type:function size:0xA0 +fn_1_E564 = .text:0x0000E564; // type:function size:0xBC +fn_1_E620 = .text:0x0000E620; // type:function size:0x58 +fn_1_E678 = .text:0x0000E678; // type:function size:0x90 +fn_1_E708 = .text:0x0000E708; // type:function size:0x220 +fn_1_E928 = .text:0x0000E928; // type:function size:0xD4 +fn_1_E9FC = .text:0x0000E9FC; // type:function size:0x348 +fn_1_ED44 = .text:0x0000ED44; // type:function size:0xC4 +fn_1_EE08 = .text:0x0000EE08; // type:function size:0x5F4 +fn_1_F3FC = .text:0x0000F3FC; // type:function size:0xEC +fn_1_F4E8 = .text:0x0000F4E8; // type:function size:0x48 +fn_1_F530 = .text:0x0000F530; // type:function size:0x30 +fn_1_F560 = .text:0x0000F560; // type:function size:0x98 +fn_1_F5F8 = .text:0x0000F5F8; // type:function size:0xB0 +fn_1_F6A8 = .text:0x0000F6A8; // type:function size:0xAC +fn_1_F754 = .text:0x0000F754; // type:function size:0x30 +fn_1_F784 = .text:0x0000F784; // type:function size:0x98 +fn_1_F81C = .text:0x0000F81C; // type:function size:0x100 +fn_1_F91C = .text:0x0000F91C; // type:function size:0x60 +fn_1_F97C = .text:0x0000F97C; // type:function size:0x8E8 +fn_1_10264 = .text:0x00010264; // type:function size:0x404 +fn_1_10668 = .text:0x00010668; // type:function size:0x1CC +_prolog = .text:0x00010834; // type:function size:0x54 scope:global +_epilog = .text:0x00010888; // type:function size:0x4C scope:global +fn_1_108D4 = .text:0x000108D4; // type:function size:0x410 +fn_1_10CE4 = .text:0x00010CE4; // type:function size:0x410 +fn_1_110F4 = .text:0x000110F4; // type:function size:0x40 +fn_1_11134 = .text:0x00011134; // type:function size:0x28 +fn_1_1115C = .text:0x0001115C; // type:function size:0xC8 +fn_1_11224 = .text:0x00011224; // type:function size:0xC8 +fn_1_112EC = .text:0x000112EC; // type:function size:0xD8 +fn_1_113C4 = .text:0x000113C4; // type:function size:0x33C +fn_1_11700 = .text:0x00011700; // type:function size:0x110 +fn_1_11810 = .text:0x00011810; // type:function size:0x178 +fn_1_11988 = .text:0x00011988; // type:function size:0x188 +fn_1_11B10 = .text:0x00011B10; // type:function size:0x1B0 +fn_1_11CC0 = .text:0x00011CC0; // type:function size:0x50 +fn_1_11D10 = .text:0x00011D10; // type:function size:0x5C +fn_1_11D6C = .text:0x00011D6C; // type:function size:0x88 +fn_1_11DF4 = .text:0x00011DF4; // type:function size:0x74 +fn_1_11E68 = .text:0x00011E68; // type:function size:0x94 +fn_1_11EFC = .text:0x00011EFC; // type:function size:0x3C +fn_1_11F38 = .text:0x00011F38; // type:function size:0x318 +fn_1_12250 = .text:0x00012250; // type:function size:0x3C +fn_1_1228C = .text:0x0001228C; // type:function size:0x4C +fn_1_122D8 = .text:0x000122D8; // type:function size:0x314 +fn_1_125EC = .text:0x000125EC; // type:function size:0x314 +fn_1_12900 = .text:0x00012900; // type:function size:0x27C +fn_1_12B7C = .text:0x00012B7C; // type:function size:0x2B4 +fn_1_12E30 = .text:0x00012E30; // type:function size:0x530 +fn_1_13360 = .text:0x00013360; // type:function size:0x454 +fn_1_137B4 = .text:0x000137B4; // type:function size:0x48C +fn_1_13C40 = .text:0x00013C40; // type:function size:0x71C +fn_1_1435C = .text:0x0001435C; // type:function size:0x4C4 +fn_1_14820 = .text:0x00014820; // type:function size:0x4FC +fn_1_14D1C = .text:0x00014D1C; // type:function size:0x78C +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x3C data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x30 data:4byte +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x18 data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:4byte +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:4byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x8 data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0xC data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:4byte +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x30 data:4byte +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x34 data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x20 +lbl_1_data_40 = .data:0x00000040; // type:object size:0xA0 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x4 data:4byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:4byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x1B data:string +lbl_1_data_107 = .data:0x00000107; // type:object size:0x22 data:string +lbl_1_data_129 = .data:0x00000129; // type:object size:0x1A data:string +lbl_1_data_143 = .data:0x00000143; // type:object size:0x1A data:string +lbl_1_data_15D = .data:0x0000015D; // type:object size:0xF +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 data:4byte +lbl_1_data_170 = .data:0x00000170; // type:object size:0x34 +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x14 +jumptable_1_data_1B8 = .data:0x000001B8; // type:object size:0x30 scope:local +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x6C +lbl_1_data_254 = .data:0x00000254; // type:object size:0x18 data:float +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x12 data:string +lbl_1_data_27E = .data:0x0000027E; // type:object size:0x12 data:string +lbl_1_data_290 = .data:0x00000290; // type:object size:0x9C +lbl_1_data_32C = .data:0x0000032C; // type:object size:0x18 +jumptable_1_data_344 = .data:0x00000344; // type:object size:0x28 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x30 data:float +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x30 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x18 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x18 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0xA8 data:4byte +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x28 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x14 data:4byte +lbl_1_bss_1BC = .bss:0x000001BC; // type:object size:0x64 data:4byte +lbl_1_bss_220 = .bss:0x00000220; // type:object size:0x14 data:4byte +lbl_1_bss_234 = .bss:0x00000234; // type:object size:0xF8 data:4byte +lbl_1_bss_32C = .bss:0x0000032C; // type:object size:0x78 data:4byte +lbl_1_bss_3A4 = .bss:0x000003A4; // type:object size:0x8 data:4byte +lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x38 data:4byte +lbl_1_bss_3E4 = .bss:0x000003E4; // type:object size:0xC0 +lbl_1_bss_4A4 = .bss:0x000004A4; // type:object size:0x10 data:4byte diff --git a/config/GMPP01_00/rels/m437Dll/splits.txt b/config/GMPP01_00/rels/m437Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m437Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m437Dll/symbols.txt b/config/GMPP01_00/rels/m437Dll/symbols.txt new file mode 100644 index 00000000..ae5723b4 --- /dev/null +++ b/config/GMPP01_00/rels/m437Dll/symbols.txt @@ -0,0 +1,411 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x1A8 +fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 +fn_1_230 = .text:0x00000230; // type:function size:0x68 +fn_1_298 = .text:0x00000298; // type:function size:0x6C +fn_1_304 = .text:0x00000304; // type:function size:0x130 +fn_1_434 = .text:0x00000434; // type:function size:0x8C +fn_1_4C0 = .text:0x000004C0; // type:function size:0x3E4 +fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 +fn_1_8C4 = .text:0x000008C4; // type:function size:0x20 +fn_1_8E4 = .text:0x000008E4; // type:function size:0x6A8 +fn_1_F8C = .text:0x00000F8C; // type:function size:0x134 +fn_1_10C0 = .text:0x000010C0; // type:function size:0xC4 +fn_1_1184 = .text:0x00001184; // type:function size:0x38 +fn_1_11BC = .text:0x000011BC; // type:function size:0x24 +fn_1_11E0 = .text:0x000011E0; // type:function size:0x38 +fn_1_1218 = .text:0x00001218; // type:function size:0x1C8 +fn_1_13E0 = .text:0x000013E0; // type:function size:0x64 +fn_1_1444 = .text:0x00001444; // type:function size:0x644 +fn_1_1A88 = .text:0x00001A88; // type:function size:0x24 +fn_1_1AAC = .text:0x00001AAC; // type:function size:0x458 +fn_1_1F04 = .text:0x00001F04; // type:function size:0x1EC +fn_1_20F0 = .text:0x000020F0; // type:function size:0x1EC +fn_1_22DC = .text:0x000022DC; // type:function size:0x458 +fn_1_2734 = .text:0x00002734; // type:function size:0x68 +fn_1_279C = .text:0x0000279C; // type:function size:0x68 +fn_1_2804 = .text:0x00002804; // type:function size:0xE8 +fn_1_28EC = .text:0x000028EC; // type:function size:0x11C +fn_1_2A08 = .text:0x00002A08; // type:function size:0x84 +fn_1_2A8C = .text:0x00002A8C; // type:function size:0x70 +fn_1_2AFC = .text:0x00002AFC; // type:function size:0xA8 +fn_1_2BA4 = .text:0x00002BA4; // type:function size:0x10 +fn_1_2BB4 = .text:0x00002BB4; // type:function size:0x5D8 +fn_1_318C = .text:0x0000318C; // type:function size:0xCC +fn_1_3258 = .text:0x00003258; // type:function size:0x1B0 +fn_1_3408 = .text:0x00003408; // type:function size:0x284 +fn_1_368C = .text:0x0000368C; // type:function size:0x20 +fn_1_36AC = .text:0x000036AC; // type:function size:0x120 +fn_1_37CC = .text:0x000037CC; // type:function size:0x14 +fn_1_37E0 = .text:0x000037E0; // type:function size:0x1A8 +fn_1_3988 = .text:0x00003988; // type:function size:0x34 +fn_1_39BC = .text:0x000039BC; // type:function size:0x20 +fn_1_39DC = .text:0x000039DC; // type:function size:0x16C +fn_1_3B48 = .text:0x00003B48; // type:function size:0x14 +fn_1_3B5C = .text:0x00003B5C; // type:function size:0x154 +fn_1_3CB0 = .text:0x00003CB0; // type:function size:0x88 +fn_1_3D38 = .text:0x00003D38; // type:function size:0x204 +fn_1_3F3C = .text:0x00003F3C; // type:function size:0x5F4 +fn_1_4530 = .text:0x00004530; // type:function size:0x188 +fn_1_46B8 = .text:0x000046B8; // type:function size:0x268 +fn_1_4920 = .text:0x00004920; // type:function size:0x10 +fn_1_4930 = .text:0x00004930; // type:function size:0x1C0 +fn_1_4AF0 = .text:0x00004AF0; // type:function size:0xB4 +fn_1_4BA4 = .text:0x00004BA4; // type:function size:0x94 +fn_1_4C38 = .text:0x00004C38; // type:function size:0x1C0 +fn_1_4DF8 = .text:0x00004DF8; // type:function size:0xE0 +fn_1_4ED8 = .text:0x00004ED8; // type:function size:0x268 +fn_1_5140 = .text:0x00005140; // type:function size:0x94 +fn_1_51D4 = .text:0x000051D4; // type:function size:0x94 +fn_1_5268 = .text:0x00005268; // type:function size:0x94 +fn_1_52FC = .text:0x000052FC; // type:function size:0x28 +fn_1_5324 = .text:0x00005324; // type:function size:0x32C +fn_1_5650 = .text:0x00005650; // type:function size:0x32C +fn_1_597C = .text:0x0000597C; // type:function size:0x154 +fn_1_5AD0 = .text:0x00005AD0; // type:function size:0x4E4 +fn_1_5FB4 = .text:0x00005FB4; // type:function size:0x150 +fn_1_6104 = .text:0x00006104; // type:function size:0x28 +fn_1_612C = .text:0x0000612C; // type:function size:0x64 +fn_1_6190 = .text:0x00006190; // type:function size:0x68 +fn_1_61F8 = .text:0x000061F8; // type:function size:0x380 +fn_1_6578 = .text:0x00006578; // type:function size:0x60 +fn_1_65D8 = .text:0x000065D8; // type:function size:0xB18 +fn_1_70F0 = .text:0x000070F0; // type:function size:0x3C +fn_1_712C = .text:0x0000712C; // type:function size:0x198 +fn_1_72C4 = .text:0x000072C4; // type:function size:0x1E4 +fn_1_74A8 = .text:0x000074A8; // type:function size:0x1C8 +fn_1_7670 = .text:0x00007670; // type:function size:0x368 +fn_1_79D8 = .text:0x000079D8; // type:function size:0x34 +fn_1_7A0C = .text:0x00007A0C; // type:function size:0x8CC +fn_1_82D8 = .text:0x000082D8; // type:function size:0x28 +fn_1_8300 = .text:0x00008300; // type:function size:0x1BC +fn_1_84BC = .text:0x000084BC; // type:function size:0x1C0 +fn_1_867C = .text:0x0000867C; // type:function size:0xB0 +fn_1_872C = .text:0x0000872C; // type:function size:0xF0 +fn_1_881C = .text:0x0000881C; // type:function size:0xB0 +fn_1_88CC = .text:0x000088CC; // type:function size:0xB0 +fn_1_897C = .text:0x0000897C; // type:function size:0xB0 +fn_1_8A2C = .text:0x00008A2C; // type:function size:0xF0 +fn_1_8B1C = .text:0x00008B1C; // type:function size:0xB0 +fn_1_8BCC = .text:0x00008BCC; // type:function size:0xB0 +fn_1_8C7C = .text:0x00008C7C; // type:function size:0x120 +fn_1_8D9C = .text:0x00008D9C; // type:function size:0x57C +fn_1_9318 = .text:0x00009318; // type:function size:0x3B8 +fn_1_96D0 = .text:0x000096D0; // type:function size:0x454 +fn_1_9B24 = .text:0x00009B24; // type:function size:0x474 +fn_1_9F98 = .text:0x00009F98; // type:function size:0x4A0 +fn_1_A438 = .text:0x0000A438; // type:function size:0x420 +fn_1_A858 = .text:0x0000A858; // type:function size:0x4 +fn_1_A85C = .text:0x0000A85C; // type:function size:0x184 +fn_1_A9E0 = .text:0x0000A9E0; // type:function size:0x3C +fn_1_AA1C = .text:0x0000AA1C; // type:function size:0x5C +fn_1_AA78 = .text:0x0000AA78; // type:function size:0x3C +fn_1_AAB4 = .text:0x0000AAB4; // type:function size:0x5C +fn_1_AB10 = .text:0x0000AB10; // type:function size:0x50 +fn_1_AB60 = .text:0x0000AB60; // type:function size:0x48 +fn_1_ABA8 = .text:0x0000ABA8; // type:function size:0x3C +fn_1_ABE4 = .text:0x0000ABE4; // type:function size:0x84 +fn_1_AC68 = .text:0x0000AC68; // type:function size:0x5C +fn_1_ACC4 = .text:0x0000ACC4; // type:function size:0x5C +fn_1_AD20 = .text:0x0000AD20; // type:function size:0x70 +fn_1_AD90 = .text:0x0000AD90; // type:function size:0x48 +fn_1_ADD8 = .text:0x0000ADD8; // type:function size:0x3C +fn_1_AE14 = .text:0x0000AE14; // type:function size:0x5C +fn_1_AE70 = .text:0x0000AE70; // type:function size:0xD4 +fn_1_AF44 = .text:0x0000AF44; // type:function size:0x248 +fn_1_B18C = .text:0x0000B18C; // type:function size:0x30 +fn_1_B1BC = .text:0x0000B1BC; // type:function size:0x8C +fn_1_B248 = .text:0x0000B248; // type:function size:0x20 +fn_1_B268 = .text:0x0000B268; // type:function size:0x180 +fn_1_B3E8 = .text:0x0000B3E8; // type:function size:0x104 +fn_1_B4EC = .text:0x0000B4EC; // type:function size:0x2EC +fn_1_B7D8 = .text:0x0000B7D8; // type:function size:0xF0 +fn_1_B8C8 = .text:0x0000B8C8; // type:function size:0x348 +fn_1_BC10 = .text:0x0000BC10; // type:function size:0xB0 +fn_1_BCC0 = .text:0x0000BCC0; // type:function size:0xF0 +fn_1_BDB0 = .text:0x0000BDB0; // type:function size:0xC8 +fn_1_BE78 = .text:0x0000BE78; // type:function size:0x3C8 +fn_1_C240 = .text:0x0000C240; // type:function size:0x3C8 +fn_1_C608 = .text:0x0000C608; // type:function size:0x3B4 +fn_1_C9BC = .text:0x0000C9BC; // type:function size:0x35C +fn_1_CD18 = .text:0x0000CD18; // type:function size:0x31C +fn_1_D034 = .text:0x0000D034; // type:function size:0x384 +fn_1_D3B8 = .text:0x0000D3B8; // type:function size:0x394 +fn_1_D74C = .text:0x0000D74C; // type:function size:0x1DC +fn_1_D928 = .text:0x0000D928; // type:function size:0x3BC +fn_1_DCE4 = .text:0x0000DCE4; // type:function size:0x1D8 +fn_1_DEBC = .text:0x0000DEBC; // type:function size:0x3E4 +fn_1_E2A0 = .text:0x0000E2A0; // type:function size:0x2F0 +fn_1_E590 = .text:0x0000E590; // type:function size:0x9C +fn_1_E62C = .text:0x0000E62C; // type:function size:0x310 +fn_1_E93C = .text:0x0000E93C; // type:function size:0x5C +fn_1_E998 = .text:0x0000E998; // type:function size:0x104 +fn_1_EA9C = .text:0x0000EA9C; // type:function size:0x94 +fn_1_EB30 = .text:0x0000EB30; // type:function size:0xD8 +fn_1_EC08 = .text:0x0000EC08; // type:function size:0x1C4 +fn_1_EDCC = .text:0x0000EDCC; // type:function size:0xCC +fn_1_EE98 = .text:0x0000EE98; // type:function size:0x12C +fn_1_EFC4 = .text:0x0000EFC4; // type:function size:0xEC +fn_1_F0B0 = .text:0x0000F0B0; // type:function size:0x40 +fn_1_F0F0 = .text:0x0000F0F0; // type:function size:0x4C +fn_1_F13C = .text:0x0000F13C; // type:function size:0x48 +fn_1_F184 = .text:0x0000F184; // type:function size:0x108 +fn_1_F28C = .text:0x0000F28C; // type:function size:0x144 +fn_1_F3D0 = .text:0x0000F3D0; // type:function size:0xBC +fn_1_F48C = .text:0x0000F48C; // type:function size:0x40 +fn_1_F4CC = .text:0x0000F4CC; // type:function size:0x30 +fn_1_F4FC = .text:0x0000F4FC; // type:function size:0x8C +fn_1_F588 = .text:0x0000F588; // type:function size:0xB0 +fn_1_F638 = .text:0x0000F638; // type:function size:0xAC +fn_1_F6E4 = .text:0x0000F6E4; // type:function size:0x30 +fn_1_F714 = .text:0x0000F714; // type:function size:0x8C +fn_1_F7A0 = .text:0x0000F7A0; // type:function size:0xF4 +fn_1_F894 = .text:0x0000F894; // type:function size:0x10 +fn_1_F8A4 = .text:0x0000F8A4; // type:function size:0xB90 +fn_1_10434 = .text:0x00010434; // type:function size:0x468 +fn_1_1089C = .text:0x0001089C; // type:function size:0x1EC +_prolog = .text:0x00010A88; // type:function size:0x54 scope:global +_epilog = .text:0x00010ADC; // type:function size:0x4C scope:global +fn_1_10B28 = .text:0x00010B28; // type:function size:0x40C +fn_1_10F34 = .text:0x00010F34; // type:function size:0x40C +fn_1_11340 = .text:0x00011340; // type:function size:0x28 +fn_1_11368 = .text:0x00011368; // type:function size:0x40 +fn_1_113A8 = .text:0x000113A8; // type:function size:0xC8 +fn_1_11470 = .text:0x00011470; // type:function size:0xC8 +fn_1_11538 = .text:0x00011538; // type:function size:0xD8 +fn_1_11610 = .text:0x00011610; // type:function size:0x50 +fn_1_11660 = .text:0x00011660; // type:function size:0x5C +fn_1_116BC = .text:0x000116BC; // type:function size:0x88 +fn_1_11744 = .text:0x00011744; // type:function size:0x74 +fn_1_117B8 = .text:0x000117B8; // type:function size:0x94 +fn_1_1184C = .text:0x0001184C; // type:function size:0x3C +fn_1_11888 = .text:0x00011888; // type:function size:0x110 +fn_1_11998 = .text:0x00011998; // type:function size:0x178 +fn_1_11B10 = .text:0x00011B10; // type:function size:0x1C8 +fn_1_11CD8 = .text:0x00011CD8; // type:function size:0x7B4 +fn_1_1248C = .text:0x0001248C; // type:function size:0x4C4 +fn_1_12950 = .text:0x00012950; // type:function size:0x60 +fn_1_129B0 = .text:0x000129B0; // type:function size:0x64 +fn_1_12A14 = .text:0x00012A14; // type:function size:0x64 +fn_1_12A78 = .text:0x00012A78; // type:function size:0x3C +fn_1_12AB4 = .text:0x00012AB4; // type:function size:0x44 +fn_1_12AF8 = .text:0x00012AF8; // type:function size:0x314 +fn_1_12E0C = .text:0x00012E0C; // type:function size:0x314 +fn_1_13120 = .text:0x00013120; // type:function size:0x27C +fn_1_1339C = .text:0x0001339C; // type:function size:0x2B4 +fn_1_13650 = .text:0x00013650; // type:function size:0x530 +fn_1_13B80 = .text:0x00013B80; // type:function size:0x454 +fn_1_13FD4 = .text:0x00013FD4; // type:function size:0x48C +fn_1_14460 = .text:0x00014460; // type:function size:0x71C +fn_1_14B7C = .text:0x00014B7C; // type:function size:0x4C4 +fn_1_15040 = .text:0x00015040; // type:function size:0x4FC +fn_1_1553C = .text:0x0001553C; // type:function size:0x78C +fn_1_15CC8 = .text:0x00015CC8; // type:function size:0x6C +fn_1_15D34 = .text:0x00015D34; // type:function size:0x68 +fn_1_15D9C = .text:0x00015D9C; // type:function size:0x10 +fn_1_15DAC = .text:0x00015DAC; // type:function size:0xC +fn_1_15DB8 = .text:0x00015DB8; // type:function size:0x8 +fn_1_15DC0 = .text:0x00015DC0; // type:function size:0x48 +fn_1_15E08 = .text:0x00015E08; // type:function size:0x344 +fn_1_1614C = .text:0x0001614C; // type:function size:0x190 +fn_1_162DC = .text:0x000162DC; // type:function size:0x64 +fn_1_16340 = .text:0x00016340; // type:function size:0x4 +fn_1_16344 = .text:0x00016344; // type:function size:0x164 +fn_1_164A8 = .text:0x000164A8; // type:function size:0x15C +fn_1_16604 = .text:0x00016604; // type:function size:0x190 +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x48 +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x78 +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x78 +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC8 +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x78 +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x14 data:4byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x30 data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x30 data:4byte +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:4byte +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:4byte +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:4byte +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:4byte +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x20 data:4byte +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:4byte +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x20 data:4byte +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:4byte +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x30 data:4byte +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x10 data:4byte +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x8 data:4byte +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0xC data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:4byte +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:4byte +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0xC data:4byte +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x8 data:4byte +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 data:4byte +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x30 data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x18 data:4byte +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0xA0 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x1B data:string +lbl_1_data_C7 = .data:0x000000C7; // type:object size:0x22 data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x1A data:string +lbl_1_data_103 = .data:0x00000103; // type:object size:0x1A data:string +lbl_1_data_11D = .data:0x0000011D; // type:object size:0xF +lbl_1_data_12C = .data:0x0000012C; // type:object size:0x4 data:4byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x16 data:string +lbl_1_data_146 = .data:0x00000146; // type:object size:0x13 data:string +lbl_1_data_159 = .data:0x00000159; // type:object size:0xE data:string +lbl_1_data_167 = .data:0x00000167; // type:object size:0xE data:string +lbl_1_data_175 = .data:0x00000175; // type:object size:0x13 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x4 data:float +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x14 data:string +jumptable_1_data_1A0 = .data:0x000001A0; // type:object size:0x20 scope:local +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x14 +jumptable_1_data_1D4 = .data:0x000001D4; // type:object size:0x30 scope:local +lbl_1_data_204 = .data:0x00000204; // type:object size:0x78 +lbl_1_data_27C = .data:0x0000027C; // type:object size:0x90 +lbl_1_data_30C = .data:0x0000030C; // type:object size:0x18 +jumptable_1_data_324 = .data:0x00000324; // type:object size:0x2C scope:local +lbl_1_data_350 = .data:0x00000350; // type:object size:0x10 data:string +lbl_1_data_360 = .data:0x00000360; // type:object size:0x10 data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0x10 data:string +lbl_1_data_380 = .data:0x00000380; // type:object size:0x10 data:string +lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 data:string +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x10 data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x10 data:string +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x10 data:string +lbl_1_data_3D0 = .data:0x000003D0; // type:object size:0x20 +lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x40 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x18 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x18 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x18 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0xE4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:float +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x4 data:float +lbl_1_bss_154 = .bss:0x00000154; // type:object size:0x4 data:float +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x4 data:float +lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x4 data:float +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x7C data:4byte +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0x4E0 data:4byte +lbl_1_bss_6BC = .bss:0x000006BC; // type:object size:0x218 data:4byte +lbl_1_bss_8D4 = .bss:0x000008D4; // type:object size:0x28 data:4byte +lbl_1_bss_8FC = .bss:0x000008FC; // type:object size:0x24 data:4byte +lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x24 data:4byte +lbl_1_bss_944 = .bss:0x00000944; // type:object size:0x24 data:4byte +lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x40 data:4byte diff --git a/config/GMPP01_00/rels/m438Dll/splits.txt b/config/GMPP01_00/rels/m438Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m438Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m438Dll/symbols.txt b/config/GMPP01_00/rels/m438Dll/symbols.txt new file mode 100644 index 00000000..8bd76a83 --- /dev/null +++ b/config/GMPP01_00/rels/m438Dll/symbols.txt @@ -0,0 +1,458 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x43C +fn_1_4DC = .text:0x000004DC; // type:function size:0x20 +fn_1_4FC = .text:0x000004FC; // type:function size:0x478 +fn_1_974 = .text:0x00000974; // type:function size:0x7F4 +fn_1_1168 = .text:0x00001168; // type:function size:0x90 +fn_1_11F8 = .text:0x000011F8; // type:function size:0x19C +fn_1_1394 = .text:0x00001394; // type:function size:0x9C0 +fn_1_1D54 = .text:0x00001D54; // type:function size:0x1AC +fn_1_1F00 = .text:0x00001F00; // type:function size:0x164 +fn_1_2064 = .text:0x00002064; // type:function size:0x4F4 +fn_1_2558 = .text:0x00002558; // type:function size:0xA0 +fn_1_25F8 = .text:0x000025F8; // type:function size:0x2B8 +fn_1_28B0 = .text:0x000028B0; // type:function size:0x28 +fn_1_28D8 = .text:0x000028D8; // type:function size:0x80 +fn_1_2958 = .text:0x00002958; // type:function size:0x3EC +fn_1_2D44 = .text:0x00002D44; // type:function size:0xFC +fn_1_2E40 = .text:0x00002E40; // type:function size:0x770 +fn_1_35B0 = .text:0x000035B0; // type:function size:0x4 +fn_1_35B4 = .text:0x000035B4; // type:function size:0xDB4 +fn_1_4368 = .text:0x00004368; // type:function size:0x3B0 +fn_1_4718 = .text:0x00004718; // type:function size:0x260 +fn_1_4978 = .text:0x00004978; // type:function size:0x5CC +fn_1_4F44 = .text:0x00004F44; // type:function size:0xDFC +fn_1_5D40 = .text:0x00005D40; // type:function size:0x570 +fn_1_62B0 = .text:0x000062B0; // type:function size:0xF4 +fn_1_63A4 = .text:0x000063A4; // type:function size:0x68C +fn_1_6A30 = .text:0x00006A30; // type:function size:0x8C4 +fn_1_72F4 = .text:0x000072F4; // type:function size:0x558 +fn_1_784C = .text:0x0000784C; // type:function size:0x300 +fn_1_7B4C = .text:0x00007B4C; // type:function size:0x64 +fn_1_7BB0 = .text:0x00007BB0; // type:function size:0x40 +fn_1_7BF0 = .text:0x00007BF0; // type:function size:0xA0 +fn_1_7C90 = .text:0x00007C90; // type:function size:0x94 +fn_1_7D24 = .text:0x00007D24; // type:function size:0x84 +fn_1_7DA8 = .text:0x00007DA8; // type:function size:0x24 +fn_1_7DCC = .text:0x00007DCC; // type:function size:0x104 +fn_1_7ED0 = .text:0x00007ED0; // type:function size:0x168 +fn_1_8038 = .text:0x00008038; // type:function size:0x120 +fn_1_8158 = .text:0x00008158; // type:function size:0x39C +fn_1_84F4 = .text:0x000084F4; // type:function size:0x250 +fn_1_8744 = .text:0x00008744; // type:function size:0x78 +fn_1_87BC = .text:0x000087BC; // type:function size:0x11C +fn_1_88D8 = .text:0x000088D8; // type:function size:0x78 +fn_1_8950 = .text:0x00008950; // type:function size:0x2D8 +fn_1_8C28 = .text:0x00008C28; // type:function size:0x2B8 +fn_1_8EE0 = .text:0x00008EE0; // type:function size:0x154 +fn_1_9034 = .text:0x00009034; // type:function size:0x3E0 +fn_1_9414 = .text:0x00009414; // type:function size:0x214 +fn_1_9628 = .text:0x00009628; // type:function size:0x198 +fn_1_97C0 = .text:0x000097C0; // type:function size:0xD8 +fn_1_9898 = .text:0x00009898; // type:function size:0xBC +fn_1_9954 = .text:0x00009954; // type:function size:0x33C +fn_1_9C90 = .text:0x00009C90; // type:function size:0x4B0 +fn_1_A140 = .text:0x0000A140; // type:function size:0x4C0 +fn_1_A600 = .text:0x0000A600; // type:function size:0x7C +fn_1_A67C = .text:0x0000A67C; // type:function size:0x4 +fn_1_A680 = .text:0x0000A680; // type:function size:0x270 +fn_1_A8F0 = .text:0x0000A8F0; // type:function size:0x51C +fn_1_AE0C = .text:0x0000AE0C; // type:function size:0x628 +fn_1_B434 = .text:0x0000B434; // type:function size:0x98 +fn_1_B4CC = .text:0x0000B4CC; // type:function size:0x70 +fn_1_B53C = .text:0x0000B53C; // type:function size:0x4 +fn_1_B540 = .text:0x0000B540; // type:function size:0x9D4 +fn_1_BF14 = .text:0x0000BF14; // type:function size:0x844 +fn_1_C758 = .text:0x0000C758; // type:function size:0x184 +fn_1_C8DC = .text:0x0000C8DC; // type:function size:0x1C8 +fn_1_CAA4 = .text:0x0000CAA4; // type:function size:0x94C +fn_1_D3F0 = .text:0x0000D3F0; // type:function size:0x180 +fn_1_D570 = .text:0x0000D570; // type:function size:0x4E8 +fn_1_DA58 = .text:0x0000DA58; // type:function size:0x43C +fn_1_DE94 = .text:0x0000DE94; // type:function size:0xD0 +fn_1_DF64 = .text:0x0000DF64; // type:function size:0xC4 +fn_1_E028 = .text:0x0000E028; // type:function size:0x454 +fn_1_E47C = .text:0x0000E47C; // type:function size:0x11C +fn_1_E598 = .text:0x0000E598; // type:function size:0xB4 +fn_1_E64C = .text:0x0000E64C; // type:function size:0x138 +fn_1_E784 = .text:0x0000E784; // type:function size:0xDA8 +fn_1_F52C = .text:0x0000F52C; // type:function size:0x12C +fn_1_F658 = .text:0x0000F658; // type:function size:0x1C +fn_1_F674 = .text:0x0000F674; // type:function size:0x2C +fn_1_F6A0 = .text:0x0000F6A0; // type:function size:0x1C +fn_1_F6BC = .text:0x0000F6BC; // type:function size:0x184 +fn_1_F840 = .text:0x0000F840; // type:function size:0xA0 +fn_1_F8E0 = .text:0x0000F8E0; // type:function size:0xA8 +fn_1_F988 = .text:0x0000F988; // type:function size:0x8C +fn_1_FA14 = .text:0x0000FA14; // type:function size:0x98 +fn_1_FAAC = .text:0x0000FAAC; // type:function size:0x288 +fn_1_FD34 = .text:0x0000FD34; // type:function size:0x518 +fn_1_1024C = .text:0x0001024C; // type:function size:0x564 +fn_1_107B0 = .text:0x000107B0; // type:function size:0x128 +fn_1_108D8 = .text:0x000108D8; // type:function size:0x2C +fn_1_10904 = .text:0x00010904; // type:function size:0x3A8 +fn_1_10CAC = .text:0x00010CAC; // type:function size:0x254 +fn_1_10F00 = .text:0x00010F00; // type:function size:0x80 +fn_1_10F80 = .text:0x00010F80; // type:function size:0x8C +fn_1_1100C = .text:0x0001100C; // type:function size:0x9C +fn_1_110A8 = .text:0x000110A8; // type:function size:0x5A4 +fn_1_1164C = .text:0x0001164C; // type:function size:0x238 +fn_1_11884 = .text:0x00011884; // type:function size:0x6C +fn_1_118F0 = .text:0x000118F0; // type:function size:0x70 +fn_1_11960 = .text:0x00011960; // type:function size:0x74 +fn_1_119D4 = .text:0x000119D4; // type:function size:0x84 +fn_1_11A58 = .text:0x00011A58; // type:function size:0x88 +fn_1_11AE0 = .text:0x00011AE0; // type:function size:0x8C +fn_1_11B6C = .text:0x00011B6C; // type:function size:0x70 +fn_1_11BDC = .text:0x00011BDC; // type:function size:0x74 +fn_1_11C50 = .text:0x00011C50; // type:function size:0x6C +fn_1_11CBC = .text:0x00011CBC; // type:function size:0x70 +fn_1_11D2C = .text:0x00011D2C; // type:function size:0x74 +fn_1_11DA0 = .text:0x00011DA0; // type:function size:0x6C +fn_1_11E0C = .text:0x00011E0C; // type:function size:0x70 +fn_1_11E7C = .text:0x00011E7C; // type:function size:0x74 +fn_1_11EF0 = .text:0x00011EF0; // type:function size:0x6C +fn_1_11F5C = .text:0x00011F5C; // type:function size:0x70 +fn_1_11FCC = .text:0x00011FCC; // type:function size:0x74 +fn_1_12040 = .text:0x00012040; // type:function size:0x44 +fn_1_12084 = .text:0x00012084; // type:function size:0x70 +fn_1_120F4 = .text:0x000120F4; // type:function size:0x74 +fn_1_12168 = .text:0x00012168; // type:function size:0x44 +fn_1_121AC = .text:0x000121AC; // type:function size:0x70 +fn_1_1221C = .text:0x0001221C; // type:function size:0x74 +fn_1_12290 = .text:0x00012290; // type:function size:0x5C +fn_1_122EC = .text:0x000122EC; // type:function size:0x80 +fn_1_1236C = .text:0x0001236C; // type:function size:0x74 +fn_1_123E0 = .text:0x000123E0; // type:function size:0x78 +fn_1_12458 = .text:0x00012458; // type:function size:0x68 +fn_1_124C0 = .text:0x000124C0; // type:function size:0x6C +fn_1_1252C = .text:0x0001252C; // type:function size:0x68 +fn_1_12594 = .text:0x00012594; // type:function size:0x6C +fn_1_12600 = .text:0x00012600; // type:function size:0x68 +fn_1_12668 = .text:0x00012668; // type:function size:0x6C +fn_1_126D4 = .text:0x000126D4; // type:function size:0x6C +fn_1_12740 = .text:0x00012740; // type:function size:0x78 +fn_1_127B8 = .text:0x000127B8; // type:function size:0x98 +fn_1_12850 = .text:0x00012850; // type:function size:0x6C +fn_1_128BC = .text:0x000128BC; // type:function size:0x78 +fn_1_12934 = .text:0x00012934; // type:function size:0x98 +fn_1_129CC = .text:0x000129CC; // type:function size:0x70 +fn_1_12A3C = .text:0x00012A3C; // type:function size:0x78 +fn_1_12AB4 = .text:0x00012AB4; // type:function size:0x98 +fn_1_12B4C = .text:0x00012B4C; // type:function size:0x40 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x10 data:4byte +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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:0x8 data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +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:double +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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x30 data:4byte +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x10 data:byte +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +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 +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:0x24 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte +lbl_1_data_68 = .data:0x00000068; // type:object size:0x420 +lbl_1_data_488 = .data:0x00000488; // type:object size:0x2C +lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x30 +jumptable_1_data_4E4 = .data:0x000004E4; // type:object size:0x2C scope:local +lbl_1_data_514 = .data:0x00000514; // type:object size:0xC +lbl_1_data_520 = .data:0x00000520; // type:object size:0x64 +lbl_1_data_584 = .data:0x00000584; // type:object size:0x64 +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x24 +lbl_1_data_60C = .data:0x0000060C; // type:object size:0x6C +lbl_1_data_678 = .data:0x00000678; // type:object size:0x24 +lbl_1_data_69C = .data:0x0000069C; // type:object size:0x6C +lbl_1_data_708 = .data:0x00000708; // type:object size:0x24 +lbl_1_data_72C = .data:0x0000072C; // type:object size:0x24 +lbl_1_data_750 = .data:0x00000750; // type:object size:0x7 data:string +lbl_1_data_757 = .data:0x00000757; // type:object size:0x7 data:string +lbl_1_data_75E = .data:0x0000075E; // type:object size:0x7 data:string +lbl_1_data_765 = .data:0x00000765; // type:object size:0x7 data:string +lbl_1_data_76C = .data:0x0000076C; // type:object size:0x7 data:string +lbl_1_data_773 = .data:0x00000773; // type:object size:0x7 data:string +lbl_1_data_77A = .data:0x0000077A; // type:object size:0x7 data:string +lbl_1_data_781 = .data:0x00000781; // type:object size:0x7 data:string +lbl_1_data_788 = .data:0x00000788; // type:object size:0x7 data:string +lbl_1_data_78F = .data:0x0000078F; // type:object size:0x8 data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x8 data:string +lbl_1_data_79F = .data:0x0000079F; // type:object size:0x8 data:string +lbl_1_data_7A7 = .data:0x000007A7; // type:object size:0x8 data:string +lbl_1_data_7AF = .data:0x000007AF; // type:object size:0x8 data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x8 data:string +lbl_1_data_7BF = .data:0x000007BF; // type:object size:0x8 data:string +lbl_1_data_7C7 = .data:0x000007C7; // type:object size:0x8 data:string +lbl_1_data_7CF = .data:0x000007CF; // type:object size:0x8 data:string +lbl_1_data_7D7 = .data:0x000007D7; // type:object size:0x8 data:string +lbl_1_data_7DF = .data:0x000007DF; // type:object size:0x8 data:string +lbl_1_data_7E7 = .data:0x000007E7; // type:object size:0x8 data:string +lbl_1_data_7EF = .data:0x000007EF; // type:object size:0x8 data:string +lbl_1_data_7F7 = .data:0x000007F7; // type:object size:0x8 data:string +lbl_1_data_7FF = .data:0x000007FF; // type:object size:0x8 data:string +lbl_1_data_807 = .data:0x00000807; // type:object size:0x8 data:string +lbl_1_data_80F = .data:0x0000080F; // type:object size:0x8 data:string +lbl_1_data_817 = .data:0x00000817; // type:object size:0x8 data:string +lbl_1_data_81F = .data:0x0000081F; // type:object size:0x8 data:string +lbl_1_data_827 = .data:0x00000827; // type:object size:0x8 data:string +lbl_1_data_82F = .data:0x0000082F; // type:object size:0x8 data:string +lbl_1_data_837 = .data:0x00000837; // type:object size:0x8 data:string +lbl_1_data_83F = .data:0x0000083F; // type:object size:0x9 +lbl_1_data_848 = .data:0x00000848; // type:object size:0x80 +lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x9 data:string +lbl_1_data_8D1 = .data:0x000008D1; // type:object size:0x7 data:string +lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x60 +lbl_1_data_938 = .data:0x00000938; // type:object size:0xB data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x288 +lbl_1_bss_294 = .bss:0x00000294; // type:object size:0x4 data:4byte +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x900 data:float +lbl_1_bss_B98 = .bss:0x00000B98; // type:object size:0xC data:4byte +lbl_1_bss_BA4 = .bss:0x00000BA4; // type:object size:0x200 +lbl_1_bss_DA4 = .bss:0x00000DA4; // type:object size:0x4 data:4byte +lbl_1_bss_DA8 = .bss:0x00000DA8; // type:object size:0x2 data:2byte +lbl_1_bss_DAA = .bss:0x00000DAA; // type:object size:0x8 data:2byte +lbl_1_bss_DB2 = .bss:0x00000DB2; // type:object size:0x2 data:2byte +lbl_1_bss_DB4 = .bss:0x00000DB4; // type:object size:0x2 data:2byte +lbl_1_bss_DB6 = .bss:0x00000DB6; // type:object size:0x2 data:2byte +lbl_1_bss_DB8 = .bss:0x00000DB8; // type:object size:0x2 data:2byte +lbl_1_bss_DBA = .bss:0x00000DBA; // type:object size:0x2 data:2byte +lbl_1_bss_DBC = .bss:0x00000DBC; // type:object size:0x4 data:4byte +lbl_1_bss_DC0 = .bss:0x00000DC0; // type:object size:0x4 data:4byte +lbl_1_bss_DC4 = .bss:0x00000DC4; // type:object size:0x10 +lbl_1_bss_DD4 = .bss:0x00000DD4; // type:object size:0x4 data:4byte +lbl_1_bss_DD8 = .bss:0x00000DD8; // type:object size:0x4 data:4byte +lbl_1_bss_DDC = .bss:0x00000DDC; // type:object size:0x4 data:4byte +lbl_1_bss_DE0 = .bss:0x00000DE0; // type:object size:0x4 data:4byte +lbl_1_bss_DE4 = .bss:0x00000DE4; // type:object size:0x48 data:4byte +lbl_1_bss_E2C = .bss:0x00000E2C; // type:object size:0x4 data:4byte +lbl_1_bss_E30 = .bss:0x00000E30; // type:object size:0x4 data:4byte +lbl_1_bss_E34 = .bss:0x00000E34; // type:object size:0x258 data:4byte +lbl_1_bss_108C = .bss:0x0000108C; // type:object size:0x18 data:4byte diff --git a/config/GMPP01_00/rels/m439Dll/splits.txt b/config/GMPP01_00/rels/m439Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m439Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m439Dll/symbols.txt b/config/GMPP01_00/rels/m439Dll/symbols.txt new file mode 100644 index 00000000..c7cb102e --- /dev/null +++ b/config/GMPP01_00/rels/m439Dll/symbols.txt @@ -0,0 +1,322 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2C4 +fn_1_364 = .text:0x00000364; // type:function size:0x10 +fn_1_374 = .text:0x00000374; // type:function size:0x10 +fn_1_384 = .text:0x00000384; // type:function size:0x84 +fn_1_408 = .text:0x00000408; // type:function size:0x5B4 +fn_1_9BC = .text:0x000009BC; // type:function size:0x5C +fn_1_A18 = .text:0x00000A18; // type:function size:0x108 +fn_1_B20 = .text:0x00000B20; // type:function size:0x5C +fn_1_B7C = .text:0x00000B7C; // type:function size:0x84 +fn_1_C00 = .text:0x00000C00; // type:function size:0x10C +fn_1_D0C = .text:0x00000D0C; // type:function size:0x318 +fn_1_1024 = .text:0x00001024; // type:function size:0x104 +fn_1_1128 = .text:0x00001128; // type:function size:0x588 +fn_1_16B0 = .text:0x000016B0; // type:function size:0x5A4 +fn_1_1C54 = .text:0x00001C54; // type:function size:0x2E8 +fn_1_1F3C = .text:0x00001F3C; // type:function size:0x248 +fn_1_2184 = .text:0x00002184; // type:function size:0xB8 +fn_1_223C = .text:0x0000223C; // type:function size:0x978 +fn_1_2BB4 = .text:0x00002BB4; // type:function size:0xD0 +fn_1_2C84 = .text:0x00002C84; // type:function size:0xF98 +fn_1_3C1C = .text:0x00003C1C; // type:function size:0x90C +fn_1_4528 = .text:0x00004528; // type:function size:0x450 +fn_1_4978 = .text:0x00004978; // type:function size:0x50 +fn_1_49C8 = .text:0x000049C8; // type:function size:0x84 +fn_1_4A4C = .text:0x00004A4C; // type:function size:0x5C +fn_1_4AA8 = .text:0x00004AA8; // type:function size:0x218 +fn_1_4CC0 = .text:0x00004CC0; // type:function size:0x294 +fn_1_4F54 = .text:0x00004F54; // type:function size:0xC48 +fn_1_5B9C = .text:0x00005B9C; // type:function size:0x4 +fn_1_5BA0 = .text:0x00005BA0; // type:function size:0x10C +fn_1_5CAC = .text:0x00005CAC; // type:function size:0x4 +fn_1_5CB0 = .text:0x00005CB0; // type:function size:0x3B8 +fn_1_6068 = .text:0x00006068; // type:function size:0xB8 +fn_1_6120 = .text:0x00006120; // type:function size:0x1C0 +fn_1_62E0 = .text:0x000062E0; // type:function size:0x48 +fn_1_6328 = .text:0x00006328; // type:function size:0x1F8 +fn_1_6520 = .text:0x00006520; // type:function size:0xFC +fn_1_661C = .text:0x0000661C; // type:function size:0xA0 +fn_1_66BC = .text:0x000066BC; // type:function size:0xF8 +fn_1_67B4 = .text:0x000067B4; // type:function size:0x454 +fn_1_6C08 = .text:0x00006C08; // type:function size:0xC8 +fn_1_6CD0 = .text:0x00006CD0; // type:function size:0x11C +fn_1_6DEC = .text:0x00006DEC; // type:function size:0x3A4 +fn_1_7190 = .text:0x00007190; // type:function size:0x5C +fn_1_71EC = .text:0x000071EC; // type:function size:0x208 +fn_1_73F4 = .text:0x000073F4; // type:function size:0x184 +fn_1_7578 = .text:0x00007578; // type:function size:0x26C +fn_1_77E4 = .text:0x000077E4; // type:function size:0x9A8 +_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_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +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:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC data:2byte +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x50 +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x18 +lbl_1_data_18 = .data:0x00000018; // type:object size:0x18 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x8 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x84 +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x84 +lbl_1_data_140 = .data:0x00000140; // type:object size:0x2C +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x90 +lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x90 +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x30 +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0xA8 +lbl_1_data_364 = .data:0x00000364; // type:object size:0xA8 +lbl_1_data_40C = .data:0x0000040C; // type:object size:0x38 +lbl_1_data_444 = .data:0x00000444; // type:object size:0xB4 +lbl_1_data_4F8 = .data:0x000004F8; // type:object size:0xB4 +lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x3C +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x18 +lbl_1_data_600 = .data:0x00000600; // type:object size:0x18 +lbl_1_data_618 = .data:0x00000618; // type:object size:0x8 +lbl_1_data_620 = .data:0x00000620; // type:object size:0xA8 +lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0xA8 +lbl_1_data_770 = .data:0x00000770; // type:object size:0x38 +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0xD8 +lbl_1_data_880 = .data:0x00000880; // type:object size:0xD8 +lbl_1_data_958 = .data:0x00000958; // type:object size:0x48 +lbl_1_data_9A0 = .data:0x000009A0; // type:object size:0xC0 +lbl_1_data_A60 = .data:0x00000A60; // type:object size:0xC0 +lbl_1_data_B20 = .data:0x00000B20; // type:object size:0x40 +lbl_1_data_B60 = .data:0x00000B60; // type:object size:0xC0 +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xC0 +lbl_1_data_CE0 = .data:0x00000CE0; // type:object size:0x40 +lbl_1_data_D20 = .data:0x00000D20; // type:object size:0xA8 +lbl_1_data_DC8 = .data:0x00000DC8; // type:object size:0xA8 +lbl_1_data_E70 = .data:0x00000E70; // type:object size:0x38 +lbl_1_data_EA8 = .data:0x00000EA8; // type:object size:0x9C +lbl_1_data_F44 = .data:0x00000F44; // type:object size:0x9C +lbl_1_data_FE0 = .data:0x00000FE0; // type:object size:0x34 +lbl_1_data_1014 = .data:0x00001014; // type:object size:0x60 +lbl_1_data_1074 = .data:0x00001074; // type:object size:0x18 +lbl_1_data_108C = .data:0x0000108C; // type:object size:0x30 +lbl_1_data_10BC = .data:0x000010BC; // type:object size:0x204 +lbl_1_data_12C0 = .data:0x000012C0; // type:object size:0x204 +lbl_1_data_14C4 = .data:0x000014C4; // type:object size:0x204 +lbl_1_data_16C8 = .data:0x000016C8; // type:object size:0xC +lbl_1_data_16D4 = .data:0x000016D4; // type:object size:0x4 +lbl_1_data_16D8 = .data:0x000016D8; // type:object size:0x1D4 +lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x1D4 +lbl_1_data_1A80 = .data:0x00001A80; // type:object size:0x1D4 +lbl_1_data_1C54 = .data:0x00001C54; // type:object size:0x120 +lbl_1_data_1D74 = .data:0x00001D74; // type:object size:0x120 +lbl_1_data_1E94 = .data:0x00001E94; // type:object size:0x120 +lbl_1_data_1FB4 = .data:0x00001FB4; // type:object size:0xF0 +lbl_1_data_20A4 = .data:0x000020A4; // type:object size:0xF0 +lbl_1_data_2194 = .data:0x00002194; // type:object size:0xF0 +lbl_1_data_2284 = .data:0x00002284; // type:object size:0x24 +lbl_1_data_22A8 = .data:0x000022A8; // type:object size:0xC +lbl_1_data_22B4 = .data:0x000022B4; // type:object size:0x174 +lbl_1_data_2428 = .data:0x00002428; // type:object size:0x174 +lbl_1_data_259C = .data:0x0000259C; // type:object size:0x174 +lbl_1_data_2710 = .data:0x00002710; // type:object size:0x144 +lbl_1_data_2854 = .data:0x00002854; // type:object size:0x144 +lbl_1_data_2998 = .data:0x00002998; // type:object size:0x144 +lbl_1_data_2ADC = .data:0x00002ADC; // type:object size:0x1A4 +lbl_1_data_2C80 = .data:0x00002C80; // type:object size:0x1A4 +lbl_1_data_2E24 = .data:0x00002E24; // type:object size:0x1A4 +lbl_1_data_2FC8 = .data:0x00002FC8; // type:object size:0x24 +lbl_1_data_2FEC = .data:0x00002FEC; // type:object size:0xC +lbl_1_data_2FF8 = .data:0x00002FF8; // type:object size:0x294 +lbl_1_data_328C = .data:0x0000328C; // type:object size:0x294 +lbl_1_data_3520 = .data:0x00003520; // type:object size:0x294 +lbl_1_data_37B4 = .data:0x000037B4; // type:object size:0xC +lbl_1_data_37C0 = .data:0x000037C0; // type:object size:0x4 +lbl_1_data_37C4 = .data:0x000037C4; // type:object size:0x198 +lbl_1_data_395C = .data:0x0000395C; // type:object size:0x198 +lbl_1_data_3AF4 = .data:0x00003AF4; // type:object size:0x198 +lbl_1_data_3C8C = .data:0x00003C8C; // type:object size:0x198 +lbl_1_data_3E24 = .data:0x00003E24; // type:object size:0x198 +lbl_1_data_3FBC = .data:0x00003FBC; // type:object size:0x198 +lbl_1_data_4154 = .data:0x00004154; // type:object size:0x18 +lbl_1_data_416C = .data:0x0000416C; // type:object size:0x8 +lbl_1_data_4174 = .data:0x00004174; // type:object size:0x210 +lbl_1_data_4384 = .data:0x00004384; // type:object size:0x210 +lbl_1_data_4594 = .data:0x00004594; // type:object size:0x210 +lbl_1_data_47A4 = .data:0x000047A4; // type:object size:0x210 +lbl_1_data_49B4 = .data:0x000049B4; // type:object size:0x210 +lbl_1_data_4BC4 = .data:0x00004BC4; // type:object size:0x210 +lbl_1_data_4DD4 = .data:0x00004DD4; // type:object size:0x18 +lbl_1_data_4DEC = .data:0x00004DEC; // type:object size:0x8 +lbl_1_data_4DF4 = .data:0x00004DF4; // type:object size:0x1D4 +lbl_1_data_4FC8 = .data:0x00004FC8; // type:object size:0x1D4 +lbl_1_data_519C = .data:0x0000519C; // type:object size:0x1D4 +lbl_1_data_5370 = .data:0x00005370; // type:object size:0x1D4 +lbl_1_data_5544 = .data:0x00005544; // type:object size:0x1D4 +lbl_1_data_5718 = .data:0x00005718; // type:object size:0x1D4 +lbl_1_data_58EC = .data:0x000058EC; // type:object size:0x18 +lbl_1_data_5904 = .data:0x00005904; // type:object size:0x8 +lbl_1_data_590C = .data:0x0000590C; // type:object size:0x18C +lbl_1_data_5A98 = .data:0x00005A98; // type:object size:0x18C +lbl_1_data_5C24 = .data:0x00005C24; // type:object size:0x18C +lbl_1_data_5DB0 = .data:0x00005DB0; // type:object size:0x168 +lbl_1_data_5F18 = .data:0x00005F18; // type:object size:0x168 +lbl_1_data_6080 = .data:0x00006080; // type:object size:0x168 +lbl_1_data_61E8 = .data:0x000061E8; // type:object size:0x18 +lbl_1_data_6200 = .data:0x00006200; // type:object size:0x8 +lbl_1_data_6208 = .data:0x00006208; // type:object size:0x174 +lbl_1_data_637C = .data:0x0000637C; // type:object size:0x174 +lbl_1_data_64F0 = .data:0x000064F0; // type:object size:0x174 +lbl_1_data_6664 = .data:0x00006664; // type:object size:0x15C +lbl_1_data_67C0 = .data:0x000067C0; // type:object size:0x15C +lbl_1_data_691C = .data:0x0000691C; // type:object size:0x15C +lbl_1_data_6A78 = .data:0x00006A78; // type:object size:0x18 +lbl_1_data_6A90 = .data:0x00006A90; // type:object size:0x8 +lbl_1_data_6A98 = .data:0x00006A98; // type:object size:0x18C +lbl_1_data_6C24 = .data:0x00006C24; // type:object size:0x18C +lbl_1_data_6DB0 = .data:0x00006DB0; // type:object size:0x18C +lbl_1_data_6F3C = .data:0x00006F3C; // type:object size:0x174 +lbl_1_data_70B0 = .data:0x000070B0; // type:object size:0x174 +lbl_1_data_7224 = .data:0x00007224; // type:object size:0x174 +lbl_1_data_7398 = .data:0x00007398; // type:object size:0x18 +lbl_1_data_73B0 = .data:0x000073B0; // type:object size:0x8 +lbl_1_data_73B8 = .data:0x000073B8; // type:object size:0x14 +lbl_1_data_73CC = .data:0x000073CC; // type:object size:0x28 +lbl_1_data_73F4 = .data:0x000073F4; // type:object size:0x28 +lbl_1_data_741C = .data:0x0000741C; // type:object size:0x70 data:float +lbl_1_data_748C = .data:0x0000748C; // type:object size:0x140 +lbl_1_data_75CC = .data:0x000075CC; // type:object size:0x14 +lbl_1_data_75E0 = .data:0x000075E0; // type:object size:0x10 data:4byte +lbl_1_data_75F0 = .data:0x000075F0; // type:object size:0xC data:float +lbl_1_data_75FC = .data:0x000075FC; // type:object size:0xC data:float +lbl_1_data_7608 = .data:0x00007608; // type:object size:0x4 +lbl_1_data_760C = .data:0x0000760C; // type:object size:0xC +lbl_1_data_7618 = .data:0x00007618; // type:object size:0xC +lbl_1_data_7624 = .data:0x00007624; // type:object size:0x24 +lbl_1_data_7648 = .data:0x00007648; // type:object size:0x4 data:4byte +lbl_1_data_764C = .data:0x0000764C; // type:object size:0x4 data:4byte +jumptable_1_data_7650 = .data:0x00007650; // type:object size:0x28 scope:local +lbl_1_data_7678 = .data:0x00007678; // type:object size:0x1C data:string +lbl_1_data_7694 = .data:0x00007694; // type:object size:0x1C +lbl_1_data_76B0 = .data:0x000076B0; // type:object size:0x58 +lbl_1_data_7708 = .data:0x00007708; // type:object size:0x30 +lbl_1_data_7738 = .data:0x00007738; // type:object size:0x5C +lbl_1_data_7794 = .data:0x00007794; // type:object size:0x4 +lbl_1_data_7798 = .data:0x00007798; // type:object size:0x4 data:4byte +lbl_1_data_779C = .data:0x0000779C; // type:object size:0x4 data:4byte +lbl_1_data_77A0 = .data:0x000077A0; // type:object size:0x28 +lbl_1_data_77C8 = .data:0x000077C8; // type:object size:0x70 +lbl_1_data_7838 = .data:0x00007838; // type:object size:0x1C +lbl_1_data_7854 = .data:0x00007854; // type:object size:0x6 data:string +lbl_1_data_785A = .data:0x0000785A; // type:object size:0x6 data:string +lbl_1_data_7860 = .data:0x00007860; // type:object size:0x8 data:string +lbl_1_data_7868 = .data:0x00007868; // type:object size:0x6 data:string +lbl_1_data_786E = .data:0x0000786E; // type:object size:0x8 data:string +lbl_1_data_7876 = .data:0x00007876; // type:object size:0x6 data:string +lbl_1_data_787C = .data:0x0000787C; // type:object size:0x6 data:string +lbl_1_data_7882 = .data:0x00007882; // type:object size:0x6 data:string +lbl_1_data_7888 = .data:0x00007888; // type:object size:0x6 data:string +lbl_1_data_788E = .data:0x0000788E; // type:object size:0x6 data:string +lbl_1_data_7894 = .data:0x00007894; // type:object size:0x6 data:string +lbl_1_data_789A = .data:0x0000789A; // type:object size:0x6 data:string +lbl_1_data_78A0 = .data:0x000078A0; // type:object size:0x20 +lbl_1_data_78C0 = .data:0x000078C0; // type:object size:0x30 +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x20 +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x2 data:2byte +lbl_1_bss_32 = .bss:0x00000032; // type:object size:0x2 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0xC data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x90 +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x24 +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x24 +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0xC +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:4byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x2 data:2byte +lbl_1_bss_12E = .bss:0x0000012E; // type:object size:0x2 data:2byte +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x2 data:2byte +lbl_1_bss_132 = .bss:0x00000132; // type:object size:0x8 data:2byte +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 data:2byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x2 data:2byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:4byte +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x10 data:4byte +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x8 data:4byte +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x4 data:4byte +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m440Dll/splits.txt b/config/GMPP01_00/rels/m440Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m440Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m440Dll/symbols.txt b/config/GMPP01_00/rels/m440Dll/symbols.txt new file mode 100644 index 00000000..2f3f212b --- /dev/null +++ b/config/GMPP01_00/rels/m440Dll/symbols.txt @@ -0,0 +1,293 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x324 +fn_1_3C4 = .text:0x000003C4; // type:function size:0x70 +fn_1_434 = .text:0x00000434; // type:function size:0x70 +fn_1_4A4 = .text:0x000004A4; // type:function size:0x224 +fn_1_6C8 = .text:0x000006C8; // type:function size:0x228 +fn_1_8F0 = .text:0x000008F0; // type:function size:0x1F0 +fn_1_AE0 = .text:0x00000AE0; // type:function size:0x330 +fn_1_E10 = .text:0x00000E10; // type:function size:0x324 +fn_1_1134 = .text:0x00001134; // type:function size:0x5A0 +fn_1_16D4 = .text:0x000016D4; // type:function size:0x30 +fn_1_1704 = .text:0x00001704; // type:function size:0x60 +fn_1_1764 = .text:0x00001764; // type:function size:0x64 +fn_1_17C8 = .text:0x000017C8; // type:function size:0x28 +fn_1_17F0 = .text:0x000017F0; // type:function size:0x28 +fn_1_1818 = .text:0x00001818; // type:function size:0x74 +fn_1_188C = .text:0x0000188C; // type:function size:0x50 +fn_1_18DC = .text:0x000018DC; // type:function size:0x74 +fn_1_1950 = .text:0x00001950; // type:function size:0x5C +fn_1_19AC = .text:0x000019AC; // type:function size:0x2FC +fn_1_1CA8 = .text:0x00001CA8; // type:function size:0xA8 +fn_1_1D50 = .text:0x00001D50; // type:function size:0x4EC +fn_1_223C = .text:0x0000223C; // type:function size:0x1A4 +fn_1_23E0 = .text:0x000023E0; // type:function size:0x44 +fn_1_2424 = .text:0x00002424; // type:function size:0x48 +fn_1_246C = .text:0x0000246C; // type:function size:0x604 +fn_1_2A70 = .text:0x00002A70; // type:function size:0x40 +fn_1_2AB0 = .text:0x00002AB0; // type:function size:0x50 +fn_1_2B00 = .text:0x00002B00; // type:function size:0x1A4 +fn_1_2CA4 = .text:0x00002CA4; // type:function size:0x80 +fn_1_2D24 = .text:0x00002D24; // type:function size:0x6AC +fn_1_33D0 = .text:0x000033D0; // type:function size:0xA04 +fn_1_3DD4 = .text:0x00003DD4; // type:function size:0x780 +fn_1_4554 = .text:0x00004554; // type:function size:0x64 +fn_1_45B8 = .text:0x000045B8; // type:function size:0xA4 +fn_1_465C = .text:0x0000465C; // type:function size:0x80 +fn_1_46DC = .text:0x000046DC; // type:function size:0x340 +fn_1_4A1C = .text:0x00004A1C; // type:function size:0x124 +fn_1_4B40 = .text:0x00004B40; // type:function size:0x2BC +fn_1_4DFC = .text:0x00004DFC; // type:function size:0x2C +fn_1_4E28 = .text:0x00004E28; // type:function size:0x28 +fn_1_4E50 = .text:0x00004E50; // type:function size:0x54 +fn_1_4EA4 = .text:0x00004EA4; // type:function size:0x44 +fn_1_4EE8 = .text:0x00004EE8; // type:function size:0x48 +fn_1_4F30 = .text:0x00004F30; // type:function size:0xDC +fn_1_500C = .text:0x0000500C; // type:function size:0x7A4 +fn_1_57B0 = .text:0x000057B0; // type:function size:0x478 +fn_1_5C28 = .text:0x00005C28; // type:function size:0x928 +fn_1_6550 = .text:0x00006550; // type:function size:0x604 +fn_1_6B54 = .text:0x00006B54; // type:function size:0x6A4 +fn_1_71F8 = .text:0x000071F8; // type:function size:0x738 +fn_1_7930 = .text:0x00007930; // type:function size:0x42C +fn_1_7D5C = .text:0x00007D5C; // type:function size:0x30C +fn_1_8068 = .text:0x00008068; // type:function size:0x404 +fn_1_846C = .text:0x0000846C; // type:function size:0x654 +fn_1_8AC0 = .text:0x00008AC0; // type:function size:0x258 +fn_1_8D18 = .text:0x00008D18; // type:function size:0x488 +fn_1_91A0 = .text:0x000091A0; // type:function size:0xD8 +fn_1_9278 = .text:0x00009278; // type:function size:0xC8 +fn_1_9340 = .text:0x00009340; // type:function size:0x7C +fn_1_93BC = .text:0x000093BC; // type:function size:0x10 +fn_1_93CC = .text:0x000093CC; // type:function size:0x5C +fn_1_9428 = .text:0x00009428; // type:function size:0x140 +fn_1_9568 = .text:0x00009568; // type:function size:0x544 +fn_1_9AAC = .text:0x00009AAC; // type:function size:0x60 +fn_1_9B0C = .text:0x00009B0C; // type:function size:0x2C +fn_1_9B38 = .text:0x00009B38; // type:function size:0x58 +fn_1_9B90 = .text:0x00009B90; // type:function size:0x38 +fn_1_9BC8 = .text:0x00009BC8; // type:function size:0x38 +fn_1_9C00 = .text:0x00009C00; // type:function size:0x5B4 +fn_1_A1B4 = .text:0x0000A1B4; // type:function size:0xCC +fn_1_A280 = .text:0x0000A280; // type:function size:0xA4 +fn_1_A324 = .text:0x0000A324; // type:function size:0x68 +fn_1_A38C = .text:0x0000A38C; // type:function size:0x704 +fn_1_AA90 = .text:0x0000AA90; // type:function size:0x374 +fn_1_AE04 = .text:0x0000AE04; // type:function size:0xDC +fn_1_AEE0 = .text:0x0000AEE0; // type:function size:0x298 +fn_1_B178 = .text:0x0000B178; // type:function size:0x4 +fn_1_B17C = .text:0x0000B17C; // type:function size:0x224 +fn_1_B3A0 = .text:0x0000B3A0; // type:function size:0x4E0 +fn_1_B880 = .text:0x0000B880; // type:function size:0x950 +fn_1_C1D0 = .text:0x0000C1D0; // type:function size:0x770 +fn_1_C940 = .text:0x0000C940; // type:function size:0x668 +fn_1_CFA8 = .text:0x0000CFA8; // type:function size:0x2A0 +fn_1_D248 = .text:0x0000D248; // type:function size:0x100 +fn_1_D348 = .text:0x0000D348; // type:function size:0x4AC +fn_1_D7F4 = .text:0x0000D7F4; // type:function size:0x83C +fn_1_E030 = .text:0x0000E030; // type:function size:0x858 +fn_1_E888 = .text:0x0000E888; // type:function size:0x4DC +fn_1_ED64 = .text:0x0000ED64; // type:function size:0xF0 +fn_1_EE54 = .text:0x0000EE54; // type:function size:0xD8 +fn_1_EF2C = .text:0x0000EF2C; // type:function size:0x1AC +fn_1_F0D8 = .text:0x0000F0D8; // type:function size:0x6C +fn_1_F144 = .text:0x0000F144; // type:function size:0xC0 +fn_1_F204 = .text:0x0000F204; // type:function size:0x298 +fn_1_F49C = .text:0x0000F49C; // type:function size:0x14 +fn_1_F4B0 = .text:0x0000F4B0; // type:function size:0x28 +fn_1_F4D8 = .text:0x0000F4D8; // type:function size:0x18 +_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +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:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0xC data:2byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0xC data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:2byte +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x14 +lbl_1_data_14 = .data:0x00000014; // type:object size:0xC +lbl_1_data_20 = .data:0x00000020; // type:object size:0xC data:float +lbl_1_data_2C = .data:0x0000002C; // type:object size:0xC data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0xC +lbl_1_data_44 = .data:0x00000044; // type:object size:0x10 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC data:float +lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float +lbl_1_data_CC = .data:0x000000CC; // type:object size:0x18 +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x2 data:2byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x2 data:2byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2 data:2byte +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x10 +lbl_1_data_104 = .data:0x00000104; // type:object size:0x2 data:2byte +lbl_1_data_108 = .data:0x00000108; // type:object size:0x2 data:2byte +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x12 +lbl_1_data_11E = .data:0x0000011E; // type:object size:0x13 data:string +lbl_1_data_131 = .data:0x00000131; // type:object size:0x18 +lbl_1_data_149 = .data:0x00000149; // type:object size:0x19 data:string +lbl_1_data_162 = .data:0x00000162; // type:object size:0x1C data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x10 data:string +lbl_1_data_18E = .data:0x0000018E; // type:object size:0x26 data:string +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte +lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x40 +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 +jumptable_1_data_22C = .data:0x0000022C; // type:object size:0x24 scope:local +lbl_1_data_250 = .data:0x00000250; // type:object size:0x4 data:float +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte +lbl_1_bss_1 = .bss:0x00000001; // type:object size:0x1 data:byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x1 data:byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x1 data:byte +lbl_1_bss_B = .bss:0x0000000B; // type:object size:0x1 data:byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x1 data:byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x14 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x30 +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2 data:2byte +lbl_1_bss_72 = .bss:0x00000072; // type:object size:0x1 data:byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x2 data:2byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0xC data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:float +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x30 data:float +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x8 +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x10 diff --git a/config/GMPP01_00/rels/m441Dll/splits.txt b/config/GMPP01_00/rels/m441Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m441Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m441Dll/symbols.txt b/config/GMPP01_00/rels/m441Dll/symbols.txt new file mode 100644 index 00000000..d2b885ed --- /dev/null +++ b/config/GMPP01_00/rels/m441Dll/symbols.txt @@ -0,0 +1,224 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x204 +fn_1_784 = .text:0x00000784; // type:function size:0x240 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 +fn_1_A18 = .text:0x00000A18; // type:function size:0x10C +fn_1_B24 = .text:0x00000B24; // type:function size:0x680 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1300 = .text:0x00001300; // type:function size:0x8C +fn_1_138C = .text:0x0000138C; // type:function size:0x334 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C +fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +_prolog = .text:0x00002364; // type:function size:0x54 scope:global +_epilog = .text:0x000023B8; // type:function size:0x4C scope:global +fn_1_2404 = .text:0x00002404; // type:function size:0x2E8 +fn_1_26EC = .text:0x000026EC; // type:function size:0x1C8 +fn_1_28B4 = .text:0x000028B4; // type:function size:0x2D0 +fn_1_2B84 = .text:0x00002B84; // type:function size:0x830 +fn_1_33B4 = .text:0x000033B4; // type:function size:0x700 +fn_1_3AB4 = .text:0x00003AB4; // type:function size:0xFC +fn_1_3BB0 = .text:0x00003BB0; // type:function size:0x4A8 +fn_1_4058 = .text:0x00004058; // type:function size:0x1340 +fn_1_5398 = .text:0x00005398; // type:function size:0x744 +fn_1_5ADC = .text:0x00005ADC; // type:function size:0xD8 +fn_1_5BB4 = .text:0x00005BB4; // type:function size:0x1538 +fn_1_70EC = .text:0x000070EC; // type:function size:0x3B8 +fn_1_74A4 = .text:0x000074A4; // type:function size:0x464 +fn_1_7908 = .text:0x00007908; // type:function size:0xD4 +fn_1_79DC = .text:0x000079DC; // type:function size:0x610 +fn_1_7FEC = .text:0x00007FEC; // type:function size:0x4DC +fn_1_84C8 = .text:0x000084C8; // type:function size:0x414 +fn_1_88DC = .text:0x000088DC; // type:function size:0x174 +fn_1_8A50 = .text:0x00008A50; // type:function size:0x2B8 +fn_1_8D08 = .text:0x00008D08; // type:function size:0x11D8 +fn_1_9EE0 = .text:0x00009EE0; // type:function size:0x570 +fn_1_A450 = .text:0x0000A450; // type:function size:0x59C +fn_1_A9EC = .text:0x0000A9EC; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte +lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:4byte +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC +lbl_1_data_4C = .data:0x0000004C; // type:object size:0xC data:4byte +lbl_1_data_58 = .data:0x00000058; // type:object size:0xC data:4byte +lbl_1_data_64 = .data:0x00000064; // type:object size:0xC +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC data:4byte +lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC +lbl_1_data_88 = .data:0x00000088; // type:object size:0xC +lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 +lbl_1_data_98 = .data:0x00000098; // type:object size:0xC +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0xC +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x200 +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x8 +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0xC +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x10 +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x40 +lbl_1_data_314 = .data:0x00000314; // type:object size:0xC +lbl_1_data_320 = .data:0x00000320; // type:object size:0x6 +lbl_1_data_326 = .data:0x00000326; // type:object size:0x6 +lbl_1_data_32C = .data:0x0000032C; // type:object size:0x24 +lbl_1_data_350 = .data:0x00000350; // type:object size:0x18 +lbl_1_data_368 = .data:0x00000368; // type:object size:0x4 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC +lbl_1_data_378 = .data:0x00000378; // type:object size:0xC +lbl_1_data_384 = .data:0x00000384; // type:object size:0xC +lbl_1_data_390 = .data:0x00000390; // type:object size:0xC +lbl_1_data_39C = .data:0x0000039C; // type:object size:0x50 +lbl_1_data_3EC = .data:0x000003EC; // type:object size:0x50 +lbl_1_data_43C = .data:0x0000043C; // type:object size:0x50 +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x50 +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x18 data:string +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x9 data:string +lbl_1_data_4FD = .data:0x000004FD; // type:object size:0x6 data:string +lbl_1_data_503 = .data:0x00000503; // type:object size:0x1D data:string +jumptable_1_data_520 = .data:0x00000520; // type:object size:0x40 scope:local +lbl_1_data_560 = .data:0x00000560; // type:object size:0x8 data:string +lbl_1_data_568 = .data:0x00000568; // type:object size:0x1C +jumptable_1_data_584 = .data:0x00000584; // type:object size:0x24 scope:local +lbl_1_data_5A8 = .data:0x000005A8; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x6 +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x6 +lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x2 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x100 +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x40 data:4byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:float +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x4 data:4byte +lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x4 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x2 data:2byte +lbl_1_bss_19E = .bss:0x0000019E; // type:object size:0x2 data:2byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:4byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0xC data:4byte +lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC data:4byte +lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC data:4byte +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0x4 data:4byte +lbl_1_bss_1E0 = .bss:0x000001E0; // type:object size:0x18 data:4byte +lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0xC data:4byte diff --git a/config/GMPP01_00/rels/m442Dll/splits.txt b/config/GMPP01_00/rels/m442Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m442Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m442Dll/symbols.txt b/config/GMPP01_00/rels/m442Dll/symbols.txt new file mode 100644 index 00000000..f7292ca9 --- /dev/null +++ b/config/GMPP01_00/rels/m442Dll/symbols.txt @@ -0,0 +1,222 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2D4 +fn_1_374 = .text:0x00000374; // type:function size:0x10 +fn_1_384 = .text:0x00000384; // type:function size:0x10 +fn_1_394 = .text:0x00000394; // type:function size:0xB4 +fn_1_448 = .text:0x00000448; // type:function size:0x5E8 +fn_1_A30 = .text:0x00000A30; // type:function size:0x60 +fn_1_A90 = .text:0x00000A90; // type:function size:0x31C +fn_1_DAC = .text:0x00000DAC; // type:function size:0x68 +fn_1_E14 = .text:0x00000E14; // type:function size:0x84 +fn_1_E98 = .text:0x00000E98; // type:function size:0x380 +fn_1_1218 = .text:0x00001218; // type:function size:0x30 +fn_1_1248 = .text:0x00001248; // type:function size:0xDE0 +fn_1_2028 = .text:0x00002028; // type:function size:0x244 +fn_1_226C = .text:0x0000226C; // type:function size:0xF9C +fn_1_3208 = .text:0x00003208; // type:function size:0x3B0 +fn_1_35B8 = .text:0x000035B8; // type:function size:0xAC +fn_1_3664 = .text:0x00003664; // type:function size:0x160 +fn_1_37C4 = .text:0x000037C4; // type:function size:0x150 +fn_1_3914 = .text:0x00003914; // type:function size:0x1DC +fn_1_3AF0 = .text:0x00003AF0; // type:function size:0x13C +fn_1_3C2C = .text:0x00003C2C; // type:function size:0x74 +fn_1_3CA0 = .text:0x00003CA0; // type:function size:0x180 +fn_1_3E20 = .text:0x00003E20; // type:function size:0x50 +fn_1_3E70 = .text:0x00003E70; // type:function size:0x58 +fn_1_3EC8 = .text:0x00003EC8; // type:function size:0x4 +fn_1_3ECC = .text:0x00003ECC; // type:function size:0x4A4 +fn_1_4370 = .text:0x00004370; // type:function size:0x4 +fn_1_4374 = .text:0x00004374; // type:function size:0xDC +fn_1_4450 = .text:0x00004450; // type:function size:0x418 +fn_1_4868 = .text:0x00004868; // type:function size:0xC6C +fn_1_54D4 = .text:0x000054D4; // type:function size:0x450 +fn_1_5924 = .text:0x00005924; // type:function size:0xA8 +fn_1_59CC = .text:0x000059CC; // type:function size:0x88 +fn_1_5A54 = .text:0x00005A54; // type:function size:0x494 +fn_1_5EE8 = .text:0x00005EE8; // type:function size:0x5D8 +fn_1_64C0 = .text:0x000064C0; // type:function size:0x700 +fn_1_6BC0 = .text:0x00006BC0; // type:function size:0x114 +fn_1_6CD4 = .text:0x00006CD4; // type:function size:0x5C +fn_1_6D30 = .text:0x00006D30; // type:function size:0x5A0 +fn_1_72D0 = .text:0x000072D0; // type:function size:0x318 +fn_1_75E8 = .text:0x000075E8; // type:function size:0x158 +fn_1_7740 = .text:0x00007740; // type:function size:0x114 +fn_1_7854 = .text:0x00007854; // type:function size:0x48 +fn_1_789C = .text:0x0000789C; // type:function size:0x3FC +fn_1_7C98 = .text:0x00007C98; // type:function size:0x230 +fn_1_7EC8 = .text:0x00007EC8; // type:function size:0x664 +fn_1_852C = .text:0x0000852C; // type:function size:0xC8 +fn_1_85F4 = .text:0x000085F4; // type:function size:0x104 +fn_1_86F8 = .text:0x000086F8; // type:function size:0x4C +fn_1_8744 = .text:0x00008744; // type:function size:0x250 +fn_1_8994 = .text:0x00008994; // type:function size:0x764 +fn_1_90F8 = .text:0x000090F8; // type:function size:0x10 +fn_1_9108 = .text:0x00009108; // type:function size:0xB0 +fn_1_91B8 = .text:0x000091B8; // type:function size:0x28C +fn_1_9444 = .text:0x00009444; // type:function size:0x74 +fn_1_94B8 = .text:0x000094B8; // type:function size:0x50 +fn_1_9508 = .text:0x00009508; // type:function size:0x24 +fn_1_952C = .text:0x0000952C; // type:function size:0x30 +fn_1_955C = .text:0x0000955C; // type:function size:0x1BC +fn_1_9718 = .text:0x00009718; // type:function size:0x78 +fn_1_9790 = .text:0x00009790; // type:function size:0x88 +fn_1_9818 = .text:0x00009818; // type:function size:0x164 +_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:0x10 data:4byte +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:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +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:0x4 data:float +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:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0xC data:4byte +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x54 data:float +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC data:float +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x4 +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC +lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC +lbl_1_data_88 = .data:0x00000088; // type:object size:0x24 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x4 data:4byte +jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x30 scope:local +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x1C data:string +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x1C +lbl_1_data_118 = .data:0x00000118; // type:object size:0x8 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x30 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x1A +lbl_1_data_16A = .data:0x0000016A; // type:object size:0x20 +lbl_1_data_18A = .data:0x0000018A; // type:object size:0x16 +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xC data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x1 data:byte +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x1 data:byte +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x30 +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x1 data:byte +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x1 data:byte +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x20 +lbl_1_data_23C = .data:0x0000023C; // type:object size:0xC +lbl_1_data_248 = .data:0x00000248; // type:object size:0x8 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x8 data:float +lbl_1_data_258 = .data:0x00000258; // type:object size:0x10 +lbl_1_data_268 = .data:0x00000268; // type:object size:0xC +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x3C +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0xC000 data:2byte +lbl_1_bss_C060 = .bss:0x0000C060; // type:object size:0x28 data:2byte +lbl_1_bss_C088 = .bss:0x0000C088; // type:object size:0x974 +lbl_1_bss_C9FC = .bss:0x0000C9FC; // type:object size:0x5000 data:4byte +lbl_1_bss_119FC = .bss:0x000119FC; // type:object size:0x4 data:4byte +lbl_1_bss_11A00 = .bss:0x00011A00; // type:object size:0x271 +lbl_1_bss_11C71 = .bss:0x00011C71; // type:object size:0x273 +lbl_1_bss_11EE4 = .bss:0x00011EE4; // type:object size:0x4 data:4byte +lbl_1_bss_11EE8 = .bss:0x00011EE8; // type:object size:0x4 data:4byte +lbl_1_bss_11EEC = .bss:0x00011EEC; // type:object size:0x2 data:2byte +lbl_1_bss_11EF0 = .bss:0x00011EF0; // type:object size:0x10 +lbl_1_bss_11F00 = .bss:0x00011F00; // type:object size:0x4 data:4byte +lbl_1_bss_11F04 = .bss:0x00011F04; // type:object size:0x4 data:4byte +lbl_1_bss_11F08 = .bss:0x00011F08; // type:object size:0xC +lbl_1_bss_11F14 = .bss:0x00011F14; // type:object size:0x4 data:4byte +lbl_1_bss_11F18 = .bss:0x00011F18; // type:object size:0x2 data:2byte +lbl_1_bss_11F1A = .bss:0x00011F1A; // type:object size:0x2 data:2byte +lbl_1_bss_11F1C = .bss:0x00011F1C; // type:object size:0x2 data:2byte +lbl_1_bss_11F1E = .bss:0x00011F1E; // type:object size:0x2 data:2byte +lbl_1_bss_11F20 = .bss:0x00011F20; // type:object size:0x2 data:2byte +lbl_1_bss_11F24 = .bss:0x00011F24; // type:object size:0x4 data:4byte +lbl_1_bss_11F28 = .bss:0x00011F28; // type:object size:0x4 data:4byte +lbl_1_bss_11F2C = .bss:0x00011F2C; // type:object size:0x4 data:4byte +lbl_1_bss_11F30 = .bss:0x00011F30; // type:object size:0x4 data:4byte +lbl_1_bss_11F34 = .bss:0x00011F34; // type:object size:0x8 data:4byte +lbl_1_bss_11F3C = .bss:0x00011F3C; // type:object size:0x4 data:4byte +lbl_1_bss_11F40 = .bss:0x00011F40; // type:object size:0x4 data:4byte +lbl_1_bss_11F44 = .bss:0x00011F44; // type:object size:0xC data:4byte +lbl_1_bss_11F50 = .bss:0x00011F50; // type:object size:0x4 data:4byte +lbl_1_bss_11F54 = .bss:0x00011F54; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m443Dll/splits.txt b/config/GMPP01_00/rels/m443Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m443Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m443Dll/symbols.txt b/config/GMPP01_00/rels/m443Dll/symbols.txt new file mode 100644 index 00000000..17d910d7 --- /dev/null +++ b/config/GMPP01_00/rels/m443Dll/symbols.txt @@ -0,0 +1,326 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x380 +fn_1_420 = .text:0x00000420; // type:function size:0xC4 +fn_1_4E4 = .text:0x000004E4; // type:function size:0xA0 +fn_1_584 = .text:0x00000584; // type:function size:0x14C +fn_1_6D0 = .text:0x000006D0; // type:function size:0x2E0 +fn_1_9B0 = .text:0x000009B0; // type:function size:0x330 +fn_1_CE0 = .text:0x00000CE0; // type:function size:0x1EC +fn_1_ECC = .text:0x00000ECC; // type:function size:0x3C8 +fn_1_1294 = .text:0x00001294; // type:function size:0x544 +fn_1_17D8 = .text:0x000017D8; // type:function size:0x4C0 +fn_1_1C98 = .text:0x00001C98; // type:function size:0xF4 +fn_1_1D8C = .text:0x00001D8C; // type:function size:0x704 +fn_1_2490 = .text:0x00002490; // type:function size:0x114 +fn_1_25A4 = .text:0x000025A4; // type:function size:0x834 +fn_1_2DD8 = .text:0x00002DD8; // type:function size:0x17C +fn_1_2F54 = .text:0x00002F54; // type:function size:0x36C +fn_1_32C0 = .text:0x000032C0; // type:function size:0xB0 +fn_1_3370 = .text:0x00003370; // type:function size:0x3A0 +fn_1_3710 = .text:0x00003710; // type:function size:0x60 +fn_1_3770 = .text:0x00003770; // type:function size:0x608 +fn_1_3D78 = .text:0x00003D78; // type:function size:0x270 +fn_1_3FE8 = .text:0x00003FE8; // type:function size:0x14 +fn_1_3FFC = .text:0x00003FFC; // type:function size:0x14 +fn_1_4010 = .text:0x00004010; // type:function size:0x9C +fn_1_40AC = .text:0x000040AC; // type:function size:0x9C +fn_1_4148 = .text:0x00004148; // type:function size:0x68 +fn_1_41B0 = .text:0x000041B0; // type:function size:0x6C +fn_1_421C = .text:0x0000421C; // type:function size:0x98 +fn_1_42B4 = .text:0x000042B4; // type:function size:0x18 +fn_1_42CC = .text:0x000042CC; // type:function size:0x18 +fn_1_42E4 = .text:0x000042E4; // type:function size:0x18 +fn_1_42FC = .text:0x000042FC; // type:function size:0x18 +fn_1_4314 = .text:0x00004314; // type:function size:0x54 +fn_1_4368 = .text:0x00004368; // type:function size:0x44 +fn_1_43AC = .text:0x000043AC; // type:function size:0x30 +fn_1_43DC = .text:0x000043DC; // type:function size:0x30 +fn_1_440C = .text:0x0000440C; // type:function size:0x38 +fn_1_4444 = .text:0x00004444; // type:function size:0x208 +fn_1_464C = .text:0x0000464C; // type:function size:0x240 +fn_1_488C = .text:0x0000488C; // type:function size:0x11C +fn_1_49A8 = .text:0x000049A8; // type:function size:0xB4 +fn_1_4A5C = .text:0x00004A5C; // type:function size:0x54 +fn_1_4AB0 = .text:0x00004AB0; // type:function size:0x4 +fn_1_4AB4 = .text:0x00004AB4; // type:function size:0x260 +fn_1_4D14 = .text:0x00004D14; // type:function size:0x730 +fn_1_5444 = .text:0x00005444; // type:function size:0x218 +fn_1_565C = .text:0x0000565C; // type:function size:0x24 +fn_1_5680 = .text:0x00005680; // type:function size:0x554 +fn_1_5BD4 = .text:0x00005BD4; // type:function size:0x884 +fn_1_6458 = .text:0x00006458; // type:function size:0x21C +fn_1_6674 = .text:0x00006674; // type:function size:0xDC +fn_1_6750 = .text:0x00006750; // type:function size:0x264 +fn_1_69B4 = .text:0x000069B4; // type:function size:0x1DC +fn_1_6B90 = .text:0x00006B90; // type:function size:0x218 +fn_1_6DA8 = .text:0x00006DA8; // type:function size:0x388 +fn_1_7130 = .text:0x00007130; // type:function size:0x210 +fn_1_7340 = .text:0x00007340; // type:function size:0xDF8 +fn_1_8138 = .text:0x00008138; // type:function size:0x18C +fn_1_82C4 = .text:0x000082C4; // type:function size:0x74 +fn_1_8338 = .text:0x00008338; // type:function size:0x1D0 +fn_1_8508 = .text:0x00008508; // type:function size:0x178 +fn_1_8680 = .text:0x00008680; // type:function size:0x2D8 +fn_1_8958 = .text:0x00008958; // type:function size:0x38 +fn_1_8990 = .text:0x00008990; // type:function size:0x138 +fn_1_8AC8 = .text:0x00008AC8; // type:function size:0x1A0 +fn_1_8C68 = .text:0x00008C68; // type:function size:0x24 +fn_1_8C8C = .text:0x00008C8C; // type:function size:0x74 +fn_1_8D00 = .text:0x00008D00; // type:function size:0x74 +fn_1_8D74 = .text:0x00008D74; // type:function size:0x18 +fn_1_8D8C = .text:0x00008D8C; // type:function size:0x54 +fn_1_8DE0 = .text:0x00008DE0; // type:function size:0x54 +fn_1_8E34 = .text:0x00008E34; // type:function size:0x1C8 +fn_1_8FFC = .text:0x00008FFC; // type:function size:0x5A8 +fn_1_95A4 = .text:0x000095A4; // type:function size:0x94 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x50 +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x14 data:4byte +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 data:4byte +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x10 data:4byte +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x8 data:double +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:0xC data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x34 data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x10 data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x40 data:4byte +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x10 data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x10 data:4byte +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x20 data:4byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x48 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x48 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x18 +lbl_1_data_108 = .data:0x00000108; // type:object size:0x80 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x80 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x1 data:byte +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x1A data:string +lbl_1_data_226 = .data:0x00000226; // type:object size:0x1A +lbl_1_data_240 = .data:0x00000240; // type:object size:0x18 +lbl_1_data_258 = .data:0x00000258; // type:object size:0x2C +lbl_1_data_284 = .data:0x00000284; // type:object size:0x40 +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x10 +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x50 +lbl_1_data_324 = .data:0x00000324; // type:object size:0x10 +lbl_1_data_334 = .data:0x00000334; // type:object size:0x10 +lbl_1_data_344 = .data:0x00000344; // type:object size:0x10 +lbl_1_data_354 = .data:0x00000354; // type:object size:0x10 +lbl_1_data_364 = .data:0x00000364; // type:object size:0x30 +lbl_1_data_394 = .data:0x00000394; // type:object size:0x30 +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x30 +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x5 data:string +lbl_1_data_3F9 = .data:0x000003F9; // type:object size:0x7 data:string +lbl_1_data_400 = .data:0x00000400; // type:object size:0x7 data:string +lbl_1_data_407 = .data:0x00000407; // type:object size:0x9 +lbl_1_data_410 = .data:0x00000410; // type:object size:0x58 +lbl_1_data_468 = .data:0x00000468; // type:object size:0x20 +lbl_1_data_488 = .data:0x00000488; // type:object size:0x58 +lbl_1_data_4E0 = .data:0x000004E0; // type:object size:0x10 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x3C data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x2 data:2byte +lbl_1_bss_56 = .bss:0x00000056; // type:object size:0x2 data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte +lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x2 data:2byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x8 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x18 +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x10 diff --git a/config/GMPP01_00/rels/m444dll/splits.txt b/config/GMPP01_00/rels/m444dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m444dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m444dll/symbols.txt b/config/GMPP01_00/rels/m444dll/symbols.txt new file mode 100644 index 00000000..df37999d --- /dev/null +++ b/config/GMPP01_00/rels/m444dll/symbols.txt @@ -0,0 +1,320 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3D0 +fn_1_470 = .text:0x00000470; // type:function size:0x3788 +fn_1_3BF8 = .text:0x00003BF8; // type:function size:0x1270 +fn_1_4E68 = .text:0x00004E68; // type:function size:0x7C4 +fn_1_562C = .text:0x0000562C; // type:function size:0x1C4 +fn_1_57F0 = .text:0x000057F0; // type:function size:0x6F4 +fn_1_5EE4 = .text:0x00005EE4; // type:function size:0x6F4 +fn_1_65D8 = .text:0x000065D8; // type:function size:0x824 +fn_1_6DFC = .text:0x00006DFC; // type:function size:0xBC +fn_1_6EB8 = .text:0x00006EB8; // type:function size:0xA0 +fn_1_6F58 = .text:0x00006F58; // type:function size:0x3B4 +fn_1_730C = .text:0x0000730C; // type:function size:0xC2C +fn_1_7F38 = .text:0x00007F38; // type:function size:0x2C4 +fn_1_81FC = .text:0x000081FC; // type:function size:0x90 +fn_1_828C = .text:0x0000828C; // type:function size:0xEC +fn_1_8378 = .text:0x00008378; // type:function size:0x128 +fn_1_84A0 = .text:0x000084A0; // type:function size:0x1F8 +fn_1_8698 = .text:0x00008698; // type:function size:0x7B4 +fn_1_8E4C = .text:0x00008E4C; // type:function size:0x648 +fn_1_9494 = .text:0x00009494; // type:function size:0x894 +fn_1_9D28 = .text:0x00009D28; // type:function size:0x3B4 +fn_1_A0DC = .text:0x0000A0DC; // type:function size:0xB70 +fn_1_AC4C = .text:0x0000AC4C; // type:function size:0x618 +fn_1_B264 = .text:0x0000B264; // type:function size:0x102C +fn_1_C290 = .text:0x0000C290; // type:function size:0x528 +fn_1_C7B8 = .text:0x0000C7B8; // type:function size:0x2F4 +fn_1_CAAC = .text:0x0000CAAC; // type:function size:0x140 +fn_1_CBEC = .text:0x0000CBEC; // type:function size:0x298 +fn_1_CE84 = .text:0x0000CE84; // type:function size:0x194 +fn_1_D018 = .text:0x0000D018; // type:function size:0x244 +fn_1_D25C = .text:0x0000D25C; // type:function size:0x3A8 +fn_1_D604 = .text:0x0000D604; // type:function size:0x290 +fn_1_D894 = .text:0x0000D894; // type:function size:0x138 +fn_1_D9CC = .text:0x0000D9CC; // type:function size:0x78 +fn_1_DA44 = .text:0x0000DA44; // type:function size:0x2C +fn_1_DA70 = .text:0x0000DA70; // type:function size:0x42C +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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_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:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0xC data:4byte +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x28 +lbl_1_data_140 = .data:0x00000140; // type:object size:0x54 data:float +lbl_1_data_194 = .data:0x00000194; // type:object size:0x20 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0xA data:string +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0xA data:string +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xA data:string +lbl_1_data_1F6 = .data:0x000001F6; // type:object size:0xD data:string +lbl_1_data_203 = .data:0x00000203; // type:object size:0xD data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0xD data:string +lbl_1_data_21D = .data:0x0000021D; // type:object size:0xD data:string +lbl_1_data_22A = .data:0x0000022A; // type:object size:0xB data:string +lbl_1_data_235 = .data:0x00000235; // type:object size:0xB data:string +lbl_1_data_240 = .data:0x00000240; // type:object size:0x4 +lbl_1_data_244 = .data:0x00000244; // type:object size:0xA data:string +lbl_1_data_24E = .data:0x0000024E; // type:object size:0xA +lbl_1_data_258 = .data:0x00000258; // type:object size:0xC +lbl_1_data_264 = .data:0x00000264; // type:object size:0x3C +lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0x28 +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0xA +lbl_1_data_2D2 = .data:0x000002D2; // type:object size:0xD data:string +lbl_1_data_2DF = .data:0x000002DF; // type:object size:0xD data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xD data:string +lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0xD data:string +lbl_1_data_306 = .data:0x00000306; // type:object size:0xD data:string +lbl_1_data_313 = .data:0x00000313; // type:object size:0xD data:string +lbl_1_data_320 = .data:0x00000320; // type:object size:0xD data:string +lbl_1_data_32D = .data:0x0000032D; // type:object size:0xD data:string +lbl_1_data_33A = .data:0x0000033A; // type:object size:0xD data:string +lbl_1_data_347 = .data:0x00000347; // type:object size:0xD data:string +lbl_1_data_354 = .data:0x00000354; // type:object size:0xD data:string +lbl_1_data_361 = .data:0x00000361; // type:object size:0xD data:string +lbl_1_data_36E = .data:0x0000036E; // type:object size:0xD data:string +lbl_1_data_37B = .data:0x0000037B; // type:object size:0xD data:string +jumptable_1_data_388 = .data:0x00000388; // type:object size:0x1C scope:local +lbl_1_data_3A4 = .data:0x000003A4; // type:object size:0x8 +lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x30 +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x24 +lbl_1_data_400 = .data:0x00000400; // type:object size:0x54 +lbl_1_data_454 = .data:0x00000454; // type:object size:0xC +lbl_1_data_460 = .data:0x00000460; // type:object size:0x10 data:string +lbl_1_data_470 = .data:0x00000470; // type:object size:0x127C +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x140 data:2byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x140 data:2byte +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x8 data:float +lbl_1_bss_290 = .bss:0x00000290; // type:object size:0x18 data:4byte +lbl_1_bss_2A8 = .bss:0x000002A8; // type:object size:0x18 data:float +lbl_1_bss_2C0 = .bss:0x000002C0; // type:object size:0x10 data:2byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x2 data:2byte +lbl_1_bss_2D2 = .bss:0x000002D2; // type:object size:0x2 data:2byte +lbl_1_bss_2D4 = .bss:0x000002D4; // type:object size:0x2 data:2byte +lbl_1_bss_2D6 = .bss:0x000002D6; // type:object size:0x2 data:2byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x2 data:2byte +lbl_1_bss_2DA = .bss:0x000002DA; // type:object size:0x2 data:2byte +lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x2 data:2byte +lbl_1_bss_2E0 = .bss:0x000002E0; // type:object size:0x4 data:float +lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0xC data:float +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0xC data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC data:4byte +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0x4 data:4byte +lbl_1_bss_310 = .bss:0x00000310; // type:object size:0x1 data:byte +lbl_1_bss_312 = .bss:0x00000312; // type:object size:0x2 data:2byte +lbl_1_bss_314 = .bss:0x00000314; // type:object size:0xC data:float +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x8 data:2byte +lbl_1_bss_328 = .bss:0x00000328; // type:object size:0x24 data:float +lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x24 data:float +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0x400 +lbl_1_bss_770 = .bss:0x00000770; // type:object size:0xC data:float +lbl_1_bss_77C = .bss:0x0000077C; // type:object size:0xC data:float +lbl_1_bss_788 = .bss:0x00000788; // type:object size:0xC +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x90 +lbl_1_bss_824 = .bss:0x00000824; // type:object size:0x3C +lbl_1_bss_860 = .bss:0x00000860; // type:object size:0x24 +lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x1000 +lbl_1_bss_1884 = .bss:0x00001884; // type:object size:0x2 data:2byte +lbl_1_bss_1888 = .bss:0x00001888; // type:object size:0xC data:float +lbl_1_bss_1894 = .bss:0x00001894; // type:object size:0xC data:float +lbl_1_bss_18A0 = .bss:0x000018A0; // type:object size:0x14 +lbl_1_bss_18B4 = .bss:0x000018B4; // type:object size:0x3C +lbl_1_bss_18F0 = .bss:0x000018F0; // type:object size:0xC000 +lbl_1_bss_D8F0 = .bss:0x0000D8F0; // type:object size:0xC000 +lbl_1_bss_198F0 = .bss:0x000198F0; // type:object size:0x1A +lbl_1_bss_1990A = .bss:0x0001990A; // type:object size:0x2 data:2byte +lbl_1_bss_1990E = .bss:0x0001990E; // type:object size:0xB4 data:2byte +lbl_1_bss_199C2 = .bss:0x000199C2; // type:object size:0xB4 data:2byte diff --git a/config/GMPP01_00/rels/m445Dll/splits.txt b/config/GMPP01_00/rels/m445Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m445Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m445Dll/symbols.txt b/config/GMPP01_00/rels/m445Dll/symbols.txt new file mode 100644 index 00000000..d8326fcd --- /dev/null +++ b/config/GMPP01_00/rels/m445Dll/symbols.txt @@ -0,0 +1,173 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x418 +fn_1_4B8 = .text:0x000004B8; // type:function size:0x54 +fn_1_50C = .text:0x0000050C; // type:function size:0x4 +fn_1_510 = .text:0x00000510; // type:function size:0x10 +fn_1_520 = .text:0x00000520; // type:function size:0x30 +fn_1_550 = .text:0x00000550; // type:function size:0x1308 +fn_1_1858 = .text:0x00001858; // type:function size:0x80 +fn_1_18D8 = .text:0x000018D8; // type:function size:0x5C +fn_1_1934 = .text:0x00001934; // type:function size:0x34 +fn_1_1968 = .text:0x00001968; // type:function size:0x168 +fn_1_1AD0 = .text:0x00001AD0; // type:function size:0x3C +fn_1_1B0C = .text:0x00001B0C; // type:function size:0x154 +fn_1_1C60 = .text:0x00001C60; // type:function size:0xF88 +fn_1_2BE8 = .text:0x00002BE8; // type:function size:0xB8 +fn_1_2CA0 = .text:0x00002CA0; // type:function size:0x1BC +fn_1_2E5C = .text:0x00002E5C; // type:function size:0xD0 +fn_1_2F2C = .text:0x00002F2C; // type:function size:0xD8 +fn_1_3004 = .text:0x00003004; // type:function size:0x84 +fn_1_3088 = .text:0x00003088; // type:function size:0x80 +fn_1_3108 = .text:0x00003108; // type:function size:0x220 +fn_1_3328 = .text:0x00003328; // type:function size:0x214 +fn_1_353C = .text:0x0000353C; // type:function size:0xD58 +fn_1_4294 = .text:0x00004294; // type:function size:0x104 +fn_1_4398 = .text:0x00004398; // type:function size:0x22C +fn_1_45C4 = .text:0x000045C4; // type:function size:0xFAC +fn_1_5570 = .text:0x00005570; // type:function size:0x74 +fn_1_55E4 = .text:0x000055E4; // type:function size:0x74 +fn_1_5658 = .text:0x00005658; // type:function size:0x9C +fn_1_56F4 = .text:0x000056F4; // type:function size:0xB68 +fn_1_625C = .text:0x0000625C; // type:function size:0x1D58 +fn_1_7FB4 = .text:0x00007FB4; // type:function size:0x360 +fn_1_8314 = .text:0x00008314; // type:function size:0x618 +fn_1_892C = .text:0x0000892C; // type:function size:0x80 +fn_1_89AC = .text:0x000089AC; // type:function size:0x60 +fn_1_8A0C = .text:0x00008A0C; // type:function size:0x334 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x40 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x20 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x18 +lbl_1_data_78 = .data:0x00000078; // type:object size:0x18 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x40 +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x40 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x40 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x12 data:string +lbl_1_data_162 = .data:0x00000162; // type:object size:0x12 data:string +lbl_1_data_174 = .data:0x00000174; // type:object size:0x13 data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x13 data:string +lbl_1_data_19A = .data:0x0000019A; // type:object size:0x14 data:string +lbl_1_data_1AE = .data:0x000001AE; // type:object size:0x14 data:string +lbl_1_data_1C2 = .data:0x000001C2; // type:object size:0x10 data:string +lbl_1_data_1D2 = .data:0x000001D2; // type:object size:0x10 data:string +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0x13 data:string +lbl_1_data_1F5 = .data:0x000001F5; // type:object size:0xF data:string +lbl_1_data_204 = .data:0x00000204; // type:object size:0xE data:string +lbl_1_data_212 = .data:0x00000212; // type:object size:0xE +lbl_1_data_220 = .data:0x00000220; // type:object size:0x40 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x20 +lbl_1_data_280 = .data:0x00000280; // type:object size:0xF data:string +lbl_1_data_28F = .data:0x0000028F; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0xC data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x28 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x230 +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x300 data:2byte +lbl_1_bss_588 = .bss:0x00000588; // type:object size:0x13C data:4byte +lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x4 data:4byte +lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x4 data:4byte +lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0xC data:4byte +lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte +lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte +lbl_1_bss_6E0 = .bss:0x000006E0; // type:object size:0x2 data:2byte +lbl_1_bss_6E2 = .bss:0x000006E2; // type:object size:0x2 data:2byte +lbl_1_bss_6E6 = .bss:0x000006E6; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/m446dll/splits.txt b/config/GMPP01_00/rels/m446dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m446dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m446dll/symbols.txt b/config/GMPP01_00/rels/m446dll/symbols.txt new file mode 100644 index 00000000..ddaa394d --- /dev/null +++ b/config/GMPP01_00/rels/m446dll/symbols.txt @@ -0,0 +1,305 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x9C +fn_1_13C = .text:0x0000013C; // type:function size:0x168 +fn_1_2A4 = .text:0x000002A4; // type:function size:0x158 +fn_1_3FC = .text:0x000003FC; // type:function size:0xB8 +fn_1_4B4 = .text:0x000004B4; // type:function size:0x88 +fn_1_53C = .text:0x0000053C; // type:function size:0x41C +fn_1_958 = .text:0x00000958; // type:function size:0x220 +fn_1_B78 = .text:0x00000B78; // type:function size:0x94 +fn_1_C0C = .text:0x00000C0C; // type:function size:0x94 +fn_1_CA0 = .text:0x00000CA0; // type:function size:0xB30 +fn_1_17D0 = .text:0x000017D0; // type:function size:0x40 +fn_1_1810 = .text:0x00001810; // type:function size:0x38 +fn_1_1848 = .text:0x00001848; // type:function size:0x3C +fn_1_1884 = .text:0x00001884; // type:function size:0x3C +fn_1_18C0 = .text:0x000018C0; // type:function size:0x84 +fn_1_1944 = .text:0x00001944; // type:function size:0x64 +fn_1_19A8 = .text:0x000019A8; // type:function size:0x290 +fn_1_1C38 = .text:0x00001C38; // type:function size:0x94 +fn_1_1CCC = .text:0x00001CCC; // type:function size:0x38 +fn_1_1D04 = .text:0x00001D04; // type:function size:0x3C +fn_1_1D40 = .text:0x00001D40; // type:function size:0x3C +fn_1_1D7C = .text:0x00001D7C; // type:function size:0x34 +fn_1_1DB0 = .text:0x00001DB0; // type:function size:0x10 +fn_1_1DC0 = .text:0x00001DC0; // type:function size:0x8 +fn_1_1DC8 = .text:0x00001DC8; // type:function size:0x68 +fn_1_1E30 = .text:0x00001E30; // type:function size:0x28 +fn_1_1E58 = .text:0x00001E58; // type:function size:0x44 +fn_1_1E9C = .text:0x00001E9C; // type:function size:0x3C +fn_1_1ED8 = .text:0x00001ED8; // type:function size:0x34 +fn_1_1F0C = .text:0x00001F0C; // type:function size:0x4C +fn_1_1F58 = .text:0x00001F58; // type:function size:0x3C +fn_1_1F94 = .text:0x00001F94; // type:function size:0x3C +fn_1_1FD0 = .text:0x00001FD0; // type:function size:0x68 +fn_1_2038 = .text:0x00002038; // type:function size:0x18 +fn_1_2050 = .text:0x00002050; // type:function size:0x58 +fn_1_20A8 = .text:0x000020A8; // type:function size:0x338 +fn_1_23E0 = .text:0x000023E0; // type:function size:0x27C +fn_1_265C = .text:0x0000265C; // type:function size:0xA4 +fn_1_2700 = .text:0x00002700; // type:function size:0x68 +fn_1_2768 = .text:0x00002768; // type:function size:0x68 +fn_1_27D0 = .text:0x000027D0; // type:function size:0x94 +fn_1_2864 = .text:0x00002864; // type:function size:0x98 +fn_1_28FC = .text:0x000028FC; // type:function size:0x8C +fn_1_2988 = .text:0x00002988; // type:function size:0x68 +fn_1_29F0 = .text:0x000029F0; // type:function size:0x3C +fn_1_2A2C = .text:0x00002A2C; // type:function size:0x3C +fn_1_2A68 = .text:0x00002A68; // type:function size:0x14 +fn_1_2A7C = .text:0x00002A7C; // type:function size:0x2EC +fn_1_2D68 = .text:0x00002D68; // type:function size:0x14 +fn_1_2D7C = .text:0x00002D7C; // type:function size:0x118 +fn_1_2E94 = .text:0x00002E94; // type:function size:0xA4 +fn_1_2F38 = .text:0x00002F38; // type:function size:0x100 +fn_1_3038 = .text:0x00003038; // type:function size:0x11C +fn_1_3154 = .text:0x00003154; // type:function size:0x58 +fn_1_31AC = .text:0x000031AC; // type:function size:0x2C8 +fn_1_3474 = .text:0x00003474; // type:function size:0x260 +fn_1_36D4 = .text:0x000036D4; // type:function size:0x154 +fn_1_3828 = .text:0x00003828; // type:function size:0x5C +fn_1_3884 = .text:0x00003884; // type:function size:0x30 +fn_1_38B4 = .text:0x000038B4; // type:function size:0x10 +fn_1_38C4 = .text:0x000038C4; // type:function size:0x34 +fn_1_38F8 = .text:0x000038F8; // type:function size:0x18 +fn_1_3910 = .text:0x00003910; // type:function size:0x58 +fn_1_3968 = .text:0x00003968; // type:function size:0x3C +fn_1_39A4 = .text:0x000039A4; // type:function size:0x17C +fn_1_3B20 = .text:0x00003B20; // type:function size:0xA4 +fn_1_3BC4 = .text:0x00003BC4; // type:function size:0x2C4 +fn_1_3E88 = .text:0x00003E88; // type:function size:0x11C +fn_1_3FA4 = .text:0x00003FA4; // type:function size:0x30 +fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x88 +fn_1_405C = .text:0x0000405C; // type:function size:0x624 +fn_1_4680 = .text:0x00004680; // type:function size:0x24 +fn_1_46A4 = .text:0x000046A4; // type:function size:0x50 +fn_1_46F4 = .text:0x000046F4; // type:function size:0x78 +fn_1_476C = .text:0x0000476C; // type:function size:0x74 +fn_1_47E0 = .text:0x000047E0; // type:function size:0x18 +fn_1_47F8 = .text:0x000047F8; // type:function size:0x58 +fn_1_4850 = .text:0x00004850; // type:function size:0x284 +fn_1_4AD4 = .text:0x00004AD4; // type:function size:0x59C +fn_1_5070 = .text:0x00005070; // type:function size:0x11C +fn_1_518C = .text:0x0000518C; // type:function size:0x34C +fn_1_54D8 = .text:0x000054D8; // type:function size:0x144 +fn_1_561C = .text:0x0000561C; // type:function size:0x30 +fn_1_564C = .text:0x0000564C; // type:function size:0x4BC +fn_1_5B08 = .text:0x00005B08; // type:function size:0x14 +fn_1_5B1C = .text:0x00005B1C; // type:function size:0xC8 +fn_1_5BE4 = .text:0x00005BE4; // type:function size:0x14 +fn_1_5BF8 = .text:0x00005BF8; // type:function size:0xC8 +fn_1_5CC0 = .text:0x00005CC0; // type:function size:0x14 +fn_1_5CD4 = .text:0x00005CD4; // type:function size:0x154 +fn_1_5E28 = .text:0x00005E28; // type:function size:0x220 +fn_1_6048 = .text:0x00006048; // type:function size:0x1F0 +fn_1_6238 = .text:0x00006238; // type:function size:0x8C +fn_1_62C4 = .text:0x000062C4; // type:function size:0x8C +fn_1_6350 = .text:0x00006350; // type:function size:0x140 +fn_1_6490 = .text:0x00006490; // type:function size:0xBC +fn_1_654C = .text:0x0000654C; // type:function size:0xA8 +fn_1_65F4 = .text:0x000065F4; // type:function size:0x158 +fn_1_674C = .text:0x0000674C; // type:function size:0x160 +fn_1_68AC = .text:0x000068AC; // type:function size:0x4 +fn_1_68B0 = .text:0x000068B0; // type:function size:0x5C4 +fn_1_6E74 = .text:0x00006E74; // type:function size:0x24 +fn_1_6E98 = .text:0x00006E98; // type:function size:0x24 +fn_1_6EBC = .text:0x00006EBC; // type:function size:0x10 +fn_1_6ECC = .text:0x00006ECC; // type:function size:0x194 +fn_1_7060 = .text:0x00007060; // type:function size:0x10 +fn_1_7070 = .text:0x00007070; // type:function size:0x244 +fn_1_72B4 = .text:0x000072B4; // type:function size:0x18 +fn_1_72CC = .text:0x000072CC; // type:function size:0x58 +fn_1_7324 = .text:0x00007324; // type:function size:0x1A4 +fn_1_74C8 = .text:0x000074C8; // type:function size:0x1F4 +fn_1_76BC = .text:0x000076BC; // type:function size:0xE0 +fn_1_779C = .text:0x0000779C; // type:function size:0xBC +fn_1_7858 = .text:0x00007858; // type:function size:0x84 +fn_1_78DC = .text:0x000078DC; // type:function size:0x94 +fn_1_7970 = .text:0x00007970; // type:function size:0x9C +fn_1_7A0C = .text:0x00007A0C; // type:function size:0x7C +fn_1_7A88 = .text:0x00007A88; // type:function size:0x13C +fn_1_7BC4 = .text:0x00007BC4; // type:function size:0x18 +fn_1_7BDC = .text:0x00007BDC; // type:function size:0x58 +fn_1_7C34 = .text:0x00007C34; // type:function size:0x460 +fn_1_8094 = .text:0x00008094; // type:function size:0x330 +fn_1_83C4 = .text:0x000083C4; // type:function size:0xBC +fn_1_8480 = .text:0x00008480; // type:function size:0x80 +fn_1_8500 = .text:0x00008500; // type:function size:0xE0 +fn_1_85E0 = .text:0x000085E0; // type:function size:0xC +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x30 data:4byte +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:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x14 +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0x14 +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x28 +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x8 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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // 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:0x4 data:float +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:0x4 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x18 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x18 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x8 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x14 +jumptable_1_data_B4 = .data:0x000000B4; // type:object size:0x30 scope:local +jumptable_1_data_E4 = .data:0x000000E4; // type:object size:0x68 scope:local +lbl_1_data_150 = .data:0x00000150; // type:object size:0xC +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x20 +jumptable_1_data_17C = .data:0x0000017C; // type:object size:0x2C scope:local +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x1F data:string +lbl_1_data_1C7 = .data:0x000001C7; // type:object size:0x21 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x1E data:string +lbl_1_data_206 = .data:0x00000206; // type:object size:0x22 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x24 +lbl_1_data_24C = .data:0x0000024C; // type:object size:0x90 +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0x14 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x1F data:string +lbl_1_data_30F = .data:0x0000030F; // type:object size:0x1F data:string +lbl_1_data_32E = .data:0x0000032E; // type:object size:0x22 +jumptable_1_data_350 = .data:0x00000350; // type:object size:0x1C scope:local +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x1E data:string +lbl_1_data_39A = .data:0x0000039A; // type:object size:0x1E data:string +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x10 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x24 +lbl_1_data_3EC = .data:0x000003EC; // type:object size:0x24 +lbl_1_data_410 = .data:0x00000410; // type:object size:0x14 +lbl_1_data_424 = .data:0x00000424; // type:object size:0x3C +lbl_1_data_460 = .data:0x00000460; // type:object size:0x54 data:byte +lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x24 +lbl_1_data_4D8 = .data:0x000004D8; // type:object size:0x1E data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:float +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0xC data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0xC data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:float +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0xC data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0xC data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:float +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0xC data:float +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0xC data:float +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m447dll/splits.txt b/config/GMPP01_00/rels/m447dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m447dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m447dll/symbols.txt b/config/GMPP01_00/rels/m447dll/symbols.txt new file mode 100644 index 00000000..e191dd83 --- /dev/null +++ b/config/GMPP01_00/rels/m447dll/symbols.txt @@ -0,0 +1,309 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x8C +fn_1_12C = .text:0x0000012C; // type:function size:0x8C +fn_1_1B8 = .text:0x000001B8; // type:function size:0x284 +fn_1_43C = .text:0x0000043C; // type:function size:0x54 +fn_1_490 = .text:0x00000490; // type:function size:0x10 +fn_1_4A0 = .text:0x000004A0; // type:function size:0x10 +fn_1_4B0 = .text:0x000004B0; // type:function size:0x94 +fn_1_544 = .text:0x00000544; // type:function size:0x264 +fn_1_7A8 = .text:0x000007A8; // type:function size:0x3B4 +fn_1_B5C = .text:0x00000B5C; // type:function size:0x3CC +fn_1_F28 = .text:0x00000F28; // type:function size:0x134 +fn_1_105C = .text:0x0000105C; // type:function size:0x32C +fn_1_1388 = .text:0x00001388; // type:function size:0x88 +fn_1_1410 = .text:0x00001410; // type:function size:0x68 +fn_1_1478 = .text:0x00001478; // type:function size:0x2D0 +fn_1_1748 = .text:0x00001748; // type:function size:0xDC +fn_1_1824 = .text:0x00001824; // type:function size:0x54 +fn_1_1878 = .text:0x00001878; // type:function size:0x278 +fn_1_1AF0 = .text:0x00001AF0; // type:function size:0xFC +fn_1_1BEC = .text:0x00001BEC; // type:function size:0xE8 +fn_1_1CD4 = .text:0x00001CD4; // type:function size:0x54 +fn_1_1D28 = .text:0x00001D28; // type:function size:0x5C +fn_1_1D84 = .text:0x00001D84; // type:function size:0xE0 +fn_1_1E64 = .text:0x00001E64; // type:function size:0x40 +fn_1_1EA4 = .text:0x00001EA4; // type:function size:0x10 +fn_1_1EB4 = .text:0x00001EB4; // type:function size:0x14 +fn_1_1EC8 = .text:0x00001EC8; // type:function size:0x2C +fn_1_1EF4 = .text:0x00001EF4; // type:function size:0x9C +fn_1_1F90 = .text:0x00001F90; // type:function size:0x50 +fn_1_1FE0 = .text:0x00001FE0; // type:function size:0x8 +fn_1_1FE8 = .text:0x00001FE8; // type:function size:0x170 +fn_1_2158 = .text:0x00002158; // type:function size:0x1B8 +fn_1_2310 = .text:0x00002310; // type:function size:0x50 +fn_1_2360 = .text:0x00002360; // type:function size:0x124 +fn_1_2484 = .text:0x00002484; // type:function size:0x4 +fn_1_2488 = .text:0x00002488; // type:function size:0x150 +fn_1_25D8 = .text:0x000025D8; // type:function size:0x11C +fn_1_26F4 = .text:0x000026F4; // type:function size:0x33C +fn_1_2A30 = .text:0x00002A30; // type:function size:0x2CC +fn_1_2CFC = .text:0x00002CFC; // type:function size:0xA4 +fn_1_2DA0 = .text:0x00002DA0; // type:function size:0x384 +fn_1_3124 = .text:0x00003124; // type:function size:0x1B0 +fn_1_32D4 = .text:0x000032D4; // type:function size:0x2C +fn_1_3300 = .text:0x00003300; // type:function size:0xBC +fn_1_33BC = .text:0x000033BC; // type:function size:0xBC +fn_1_3478 = .text:0x00003478; // type:function size:0x98 +fn_1_3510 = .text:0x00003510; // type:function size:0x24 +fn_1_3534 = .text:0x00003534; // type:function size:0x24 +fn_1_3558 = .text:0x00003558; // type:function size:0x718 +fn_1_3C70 = .text:0x00003C70; // type:function size:0x22C +fn_1_3E9C = .text:0x00003E9C; // type:function size:0xDC +fn_1_3F78 = .text:0x00003F78; // type:function size:0x40 +fn_1_3FB8 = .text:0x00003FB8; // type:function size:0x33C +fn_1_42F4 = .text:0x000042F4; // type:function size:0xCC +fn_1_43C0 = .text:0x000043C0; // type:function size:0x10 +fn_1_43D0 = .text:0x000043D0; // type:function size:0x1C +fn_1_43EC = .text:0x000043EC; // type:function size:0x4C +fn_1_4438 = .text:0x00004438; // type:function size:0x6C +fn_1_44A4 = .text:0x000044A4; // type:function size:0xE0 +fn_1_4584 = .text:0x00004584; // type:function size:0xA8 +fn_1_462C = .text:0x0000462C; // type:function size:0x48 +fn_1_4674 = .text:0x00004674; // type:function size:0x8C +fn_1_4700 = .text:0x00004700; // type:function size:0x54 +fn_1_4754 = .text:0x00004754; // type:function size:0x4 +fn_1_4758 = .text:0x00004758; // type:function size:0x520 +fn_1_4C78 = .text:0x00004C78; // type:function size:0x2F8 +fn_1_4F70 = .text:0x00004F70; // type:function size:0x104 +fn_1_5074 = .text:0x00005074; // type:function size:0x218 +fn_1_528C = .text:0x0000528C; // type:function size:0x288 +fn_1_5514 = .text:0x00005514; // type:function size:0x240 +fn_1_5754 = .text:0x00005754; // type:function size:0x278 +fn_1_59CC = .text:0x000059CC; // type:function size:0x118 +fn_1_5AE4 = .text:0x00005AE4; // type:function size:0xE0 +fn_1_5BC4 = .text:0x00005BC4; // type:function size:0xA8 +fn_1_5C6C = .text:0x00005C6C; // type:function size:0xAA4 +fn_1_6710 = .text:0x00006710; // type:function size:0x9A0 +fn_1_70B0 = .text:0x000070B0; // type:function size:0xC0 +fn_1_7170 = .text:0x00007170; // type:function size:0x80 +fn_1_71F0 = .text:0x000071F0; // type:function size:0xAC +fn_1_729C = .text:0x0000729C; // type:function size:0x3E0 +fn_1_767C = .text:0x0000767C; // type:function size:0x220 +fn_1_789C = .text:0x0000789C; // type:function size:0xDC +fn_1_7978 = .text:0x00007978; // type:function size:0xB0 +fn_1_7A28 = .text:0x00007A28; // type:function size:0x38 +fn_1_7A60 = .text:0x00007A60; // type:function size:0x38 +fn_1_7A98 = .text:0x00007A98; // type:function size:0xB0 +fn_1_7B48 = .text:0x00007B48; // type:function size:0x240 +fn_1_7D88 = .text:0x00007D88; // type:function size:0x1D0 +fn_1_7F58 = .text:0x00007F58; // type:function size:0x158 +fn_1_80B0 = .text:0x000080B0; // type:function size:0x6E0 +fn_1_8790 = .text:0x00008790; // type:function size:0x220 +fn_1_89B0 = .text:0x000089B0; // type:function size:0x43C +fn_1_8DEC = .text:0x00008DEC; // type:function size:0x184 +fn_1_8F70 = .text:0x00008F70; // type:function size:0x78 +fn_1_8FE8 = .text:0x00008FE8; // type:function size:0x10 +fn_1_8FF8 = .text:0x00008FF8; // type:function size:0xF8 +fn_1_90F0 = .text:0x000090F0; // type:function size:0x10 +fn_1_9100 = .text:0x00009100; // type:function size:0x4C +fn_1_914C = .text:0x0000914C; // type:function size:0x1C8 +fn_1_9314 = .text:0x00009314; // type:function size:0x54 +fn_1_9368 = .text:0x00009368; // type:function size:0x1C4 +fn_1_952C = .text:0x0000952C; // type:function size:0x4 +fn_1_9530 = .text:0x00009530; // type:function size:0x21C +fn_1_974C = .text:0x0000974C; // type:function size:0x1C4 +fn_1_9910 = .text:0x00009910; // type:function size:0x2B0 +fn_1_9BC0 = .text:0x00009BC0; // type:function size:0x120 +fn_1_9CE0 = .text:0x00009CE0; // type:function size:0x200 +fn_1_9EE0 = .text:0x00009EE0; // type:function size:0x54 +fn_1_9F34 = .text:0x00009F34; // type:function size:0x2F0 +fn_1_A224 = .text:0x0000A224; // type:function size:0x10 +fn_1_A234 = .text:0x0000A234; // type:function size:0x34 +_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:0x64 +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC data:4byte +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:0x18 +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // 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:0xC +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x18 data:4byte +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x58 +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x3C +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +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:0x1 data:byte +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x144 +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x24 +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x60 +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x14 +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x20 +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x60 +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x8 data:double +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x50 +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x50 +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float +lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float +lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float +lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0x4 data:float +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:double +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x4 data:float +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x8 data:double +lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x4 data:float +lbl_1_rodata_6D4 = .rodata:0x000006D4; // type:object size:0x4 data:float +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x8 data:double +lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float +lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x8 data:double +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x4 data:float +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 data:double +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x1 data:byte +lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float +lbl_1_rodata_73C = .rodata:0x0000073C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1C +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x14 +jumptable_1_data_30 = .data:0x00000030; // type:object size:0x28 scope:local +jumptable_1_data_58 = .data:0x00000058; // type:object size:0x28 scope:local +jumptable_1_data_80 = .data:0x00000080; // type:object size:0x20 scope:local +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA8 +lbl_1_data_148 = .data:0x00000148; // type:object size:0x18 +lbl_1_data_160 = .data:0x00000160; // type:object size:0x1E data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x1E data:string +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x14 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x1C +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x2C +jumptable_1_data_1F8 = .data:0x000001F8; // type:object size:0x24 scope:local +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x40 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x1C +lbl_1_data_278 = .data:0x00000278; // type:object size:0x1C +lbl_1_data_294 = .data:0x00000294; // type:object size:0x18 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x37 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x1C data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1C data:float +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x1C data:float +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x14 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m448Dll/splits.txt b/config/GMPP01_00/rels/m448Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m448Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m448Dll/symbols.txt b/config/GMPP01_00/rels/m448Dll/symbols.txt new file mode 100644 index 00000000..0ffb9d58 --- /dev/null +++ b/config/GMPP01_00/rels/m448Dll/symbols.txt @@ -0,0 +1,200 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2EC +fn_1_38C = .text:0x0000038C; // type:function size:0xEC +fn_1_478 = .text:0x00000478; // type:function size:0x84 +fn_1_4FC = .text:0x000004FC; // type:function size:0xE3C +fn_1_1338 = .text:0x00001338; // type:function size:0x2FDC +fn_1_4314 = .text:0x00004314; // type:function size:0x2A94 +fn_1_6DA8 = .text:0x00006DA8; // type:function size:0x3E4 +fn_1_718C = .text:0x0000718C; // type:function size:0xC70 +fn_1_7DFC = .text:0x00007DFC; // type:function size:0x3FC +fn_1_81F8 = .text:0x000081F8; // type:function size:0xC10 +fn_1_8E08 = .text:0x00008E08; // type:function size:0x738 +fn_1_9540 = .text:0x00009540; // type:function size:0x154 +fn_1_9694 = .text:0x00009694; // type:function size:0x4A4 +fn_1_9B38 = .text:0x00009B38; // type:function size:0x120 +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x14 data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x14 data:4byte +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x14 data:4byte +lbl_1_rodata_84 = .rodata:0x00000084; // type:object size:0x14 data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x14 data:4byte +lbl_1_rodata_AC = .rodata:0x000000AC; // type:object size:0x10 data:4byte +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x10 data:4byte +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0xC data:4byte +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x54 +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:4byte +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x50 +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x50 +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x50 +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x24 data:4byte +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x34 data:4byte +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x24 data:4byte +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x50 +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x50 +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x18 data:4byte +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x18 data:4byte +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x8 data:4byte +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x28 data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x28 data:4byte +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0xC data:4byte +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0xC data:4byte +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x1 data:byte +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5EC = .rodata:0x000005EC; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x28 +lbl_1_data_28 = .data:0x00000028; // type:object size:0x28 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x2C +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x2C +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xB data:byte +lbl_1_data_B3 = .data:0x000000B3; // type:object size:0xD +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x2C +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2C data:4byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0x58 +lbl_1_data_170 = .data:0x00000170; // type:object size:0x8 data:4byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x20 +lbl_1_data_198 = .data:0x00000198; // type:object size:0x2 data:2byte +lbl_1_data_19A = .data:0x0000019A; // type:object size:0x2 data:2byte +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x2 data:2byte +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x8 data:4byte +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x8 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x8 +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x20 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x10 data:float +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x9 data:string +lbl_1_data_1F5 = .data:0x000001F5; // type:object size:0x1B +jumptable_1_data_210 = .data:0x00000210; // type:object size:0x2C scope:local +jumptable_1_data_23C = .data:0x0000023C; // type:object size:0x20 scope:local +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x4 data:4byte +lbl_1_data_260 = .data:0x00000260; // type:object size:0x4 data:float +lbl_1_data_264 = .data:0x00000264; // type:object size:0x4 data:float +lbl_1_data_268 = .data:0x00000268; // type:object size:0x4 data:float +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x4 data:float +jumptable_1_data_270 = .data:0x00000270; // type:object size:0x24 scope:local +jumptable_1_data_294 = .data:0x00000294; // type:object size:0x20 scope:local +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x19 data:string +lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x20 +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x8 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0xD0 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x2D0 data:4byte diff --git a/config/GMPP01_00/rels/m449Dll/splits.txt b/config/GMPP01_00/rels/m449Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m449Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m449Dll/symbols.txt b/config/GMPP01_00/rels/m449Dll/symbols.txt new file mode 100644 index 00000000..acf85bcc --- /dev/null +++ b/config/GMPP01_00/rels/m449Dll/symbols.txt @@ -0,0 +1,209 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x358 +fn_1_3F8 = .text:0x000003F8; // type:function size:0x360 +fn_1_758 = .text:0x00000758; // type:function size:0x5EB8 +fn_1_6610 = .text:0x00006610; // type:function size:0x8 +fn_1_6618 = .text:0x00006618; // type:function size:0x2C +fn_1_6644 = .text:0x00006644; // type:function size:0x140 +fn_1_6784 = .text:0x00006784; // type:function size:0xCC +fn_1_6850 = .text:0x00006850; // type:function size:0x958 +fn_1_71A8 = .text:0x000071A8; // type:function size:0x39C +fn_1_7544 = .text:0x00007544; // type:function size:0x988 +fn_1_7ECC = .text:0x00007ECC; // type:function size:0xC8 +fn_1_7F94 = .text:0x00007F94; // type:function size:0x5A4 +fn_1_8538 = .text:0x00008538; // type:function size:0xFC0 +fn_1_94F8 = .text:0x000094F8; // type:function size:0xE0 +fn_1_95D8 = .text:0x000095D8; // type:function size:0x460 +fn_1_9A38 = .text:0x00009A38; // type:function size:0x9C +_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:0x10 +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC0 +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0xC0 +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC0 +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x20 data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x60 +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x18 data:4byte +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x34 data:4byte +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x20 data:4byte +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 data:4byte +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x48 +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x48 +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0xC data:4byte +lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0xC data:4byte +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x1 data:byte +lbl_1_rodata_70C = .rodata:0x0000070C; // type:object size:0x4 data:float +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x4 data:float +lbl_1_rodata_714 = .rodata:0x00000714; // type:object size:0x4 data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float +lbl_1_rodata_71C = .rodata:0x0000071C; // type:object size:0x4 data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x4 data:float +lbl_1_rodata_724 = .rodata:0x00000724; // type:object size:0x4 data:float +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x48 +lbl_1_data_48 = .data:0x00000048; // type:object size:0x48 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x38 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x50 +lbl_1_data_138 = .data:0x00000138; // type:object size:0x50 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x50 +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x50 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x2 data:2byte +lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x4 data:4byte +lbl_1_data_230 = .data:0x00000230; // type:object size:0xC data:4byte +lbl_1_data_23C = .data:0x0000023C; // type:object size:0x28 data:4byte +lbl_1_data_264 = .data:0x00000264; // type:object size:0x20 +lbl_1_data_284 = .data:0x00000284; // type:object size:0x4 data:4byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x4 data:float +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x4 data:float +lbl_1_data_290 = .data:0x00000290; // type:object size:0x4 data:float +lbl_1_data_294 = .data:0x00000294; // type:object size:0x4 data:float +jumptable_1_data_298 = .data:0x00000298; // type:object size:0x1C scope:local +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x19 data:string +lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x24 data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x90 data:4byte diff --git a/config/GMPP01_00/rels/m450Dll/splits.txt b/config/GMPP01_00/rels/m450Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m450Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m450Dll/symbols.txt b/config/GMPP01_00/rels/m450Dll/symbols.txt new file mode 100644 index 00000000..09e43eee --- /dev/null +++ b/config/GMPP01_00/rels/m450Dll/symbols.txt @@ -0,0 +1,558 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x204 +fn_1_784 = .text:0x00000784; // type:function size:0x240 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 +fn_1_A18 = .text:0x00000A18; // type:function size:0x10C +fn_1_B24 = .text:0x00000B24; // type:function size:0x680 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1300 = .text:0x00001300; // type:function size:0x8C +fn_1_138C = .text:0x0000138C; // type:function size:0x334 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C +fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_2364 = .text:0x00002364; // type:function size:0x64 +fn_1_23C8 = .text:0x000023C8; // type:function size:0xE0 +fn_1_24A8 = .text:0x000024A8; // type:function size:0x32C +fn_1_27D4 = .text:0x000027D4; // type:function size:0x3AC +fn_1_2B80 = .text:0x00002B80; // type:function size:0x30 +fn_1_2BB0 = .text:0x00002BB0; // type:function size:0x1C +fn_1_2BCC = .text:0x00002BCC; // type:function size:0x18C +fn_1_2D58 = .text:0x00002D58; // type:function size:0x8 +fn_1_2D60 = .text:0x00002D60; // type:function size:0x8 +fn_1_2D68 = .text:0x00002D68; // type:function size:0x8 +fn_1_2D70 = .text:0x00002D70; // type:function size:0x8 +fn_1_2D78 = .text:0x00002D78; // type:function size:0xC +fn_1_2D84 = .text:0x00002D84; // type:function size:0x60 +fn_1_2DE4 = .text:0x00002DE4; // type:function size:0xB90 +fn_1_3974 = .text:0x00003974; // type:function size:0x31C +fn_1_3C90 = .text:0x00003C90; // type:function size:0xD8 +fn_1_3D68 = .text:0x00003D68; // type:function size:0x114 +fn_1_3E7C = .text:0x00003E7C; // type:function size:0xB8 +fn_1_3F34 = .text:0x00003F34; // type:function size:0xA0 +fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x9C +fn_1_4070 = .text:0x00004070; // type:function size:0xE18 +fn_1_4E88 = .text:0x00004E88; // type:function size:0x250 +fn_1_50D8 = .text:0x000050D8; // type:function size:0x10 +fn_1_50E8 = .text:0x000050E8; // type:function size:0x10 +fn_1_50F8 = .text:0x000050F8; // type:function size:0x400 +fn_1_54F8 = .text:0x000054F8; // type:function size:0x7C +fn_1_5574 = .text:0x00005574; // type:function size:0x5C +fn_1_55D0 = .text:0x000055D0; // type:function size:0xA4 +fn_1_5674 = .text:0x00005674; // type:function size:0x748 +fn_1_5DBC = .text:0x00005DBC; // type:function size:0xCC +fn_1_5E88 = .text:0x00005E88; // type:function size:0x658 +fn_1_64E0 = .text:0x000064E0; // type:function size:0x108 +fn_1_65E8 = .text:0x000065E8; // type:function size:0x38 +fn_1_6620 = .text:0x00006620; // type:function size:0x30 +fn_1_6650 = .text:0x00006650; // type:function size:0x3C +fn_1_668C = .text:0x0000668C; // type:function size:0xBC +fn_1_6748 = .text:0x00006748; // type:function size:0x260 +fn_1_69A8 = .text:0x000069A8; // type:function size:0xD0 +fn_1_6A78 = .text:0x00006A78; // type:function size:0xC8 +fn_1_6B40 = .text:0x00006B40; // type:function size:0xD8 +fn_1_6C18 = .text:0x00006C18; // type:function size:0x48 +fn_1_6C60 = .text:0x00006C60; // type:function size:0x7C +fn_1_6CDC = .text:0x00006CDC; // type:function size:0x3C +fn_1_6D18 = .text:0x00006D18; // type:function size:0x70 +fn_1_6D88 = .text:0x00006D88; // type:function size:0x714 +fn_1_749C = .text:0x0000749C; // type:function size:0x6A4 +fn_1_7B40 = .text:0x00007B40; // type:function size:0x84 +fn_1_7BC4 = .text:0x00007BC4; // type:function size:0x84 +fn_1_7C48 = .text:0x00007C48; // type:function size:0xA8 +fn_1_7CF0 = .text:0x00007CF0; // type:function size:0x3E0 +fn_1_80D0 = .text:0x000080D0; // type:function size:0x3E0 +fn_1_84B0 = .text:0x000084B0; // type:function size:0x6DC +fn_1_8B8C = .text:0x00008B8C; // type:function size:0x498 +fn_1_9024 = .text:0x00009024; // type:function size:0x64C +fn_1_9670 = .text:0x00009670; // type:function size:0x164 +fn_1_97D4 = .text:0x000097D4; // type:function size:0x380 +fn_1_9B54 = .text:0x00009B54; // type:function size:0x3A8 +fn_1_9EFC = .text:0x00009EFC; // type:function size:0x478 +fn_1_A374 = .text:0x0000A374; // type:function size:0xAC +fn_1_A420 = .text:0x0000A420; // type:function size:0x190 +fn_1_A5B0 = .text:0x0000A5B0; // type:function size:0x1CC +fn_1_A77C = .text:0x0000A77C; // type:function size:0x5C +fn_1_A7D8 = .text:0x0000A7D8; // type:function size:0x140 +fn_1_A918 = .text:0x0000A918; // type:function size:0x148 +fn_1_AA60 = .text:0x0000AA60; // type:function size:0xD8 +fn_1_AB38 = .text:0x0000AB38; // type:function size:0x48 +fn_1_AB80 = .text:0x0000AB80; // type:function size:0x188 +fn_1_AD08 = .text:0x0000AD08; // type:function size:0x2E98 +fn_1_DBA0 = .text:0x0000DBA0; // type:function size:0x4F8 +fn_1_E098 = .text:0x0000E098; // type:function size:0x90 +fn_1_E128 = .text:0x0000E128; // type:function size:0x30 +fn_1_E158 = .text:0x0000E158; // type:function size:0x114 +fn_1_E26C = .text:0x0000E26C; // type:function size:0x10C +fn_1_E378 = .text:0x0000E378; // type:function size:0xB0 +fn_1_E428 = .text:0x0000E428; // type:function size:0x18C +fn_1_E5B4 = .text:0x0000E5B4; // type:function size:0x314 +fn_1_E8C8 = .text:0x0000E8C8; // type:function size:0x138 +fn_1_EA00 = .text:0x0000EA00; // type:function size:0x11C +fn_1_EB1C = .text:0x0000EB1C; // type:function size:0x1E0 +fn_1_ECFC = .text:0x0000ECFC; // type:function size:0x3010 +fn_1_11D0C = .text:0x00011D0C; // type:function size:0x4D8 +fn_1_121E4 = .text:0x000121E4; // type:function size:0x30C +fn_1_124F0 = .text:0x000124F0; // type:function size:0x80 +fn_1_12570 = .text:0x00012570; // type:function size:0xC8 +fn_1_12638 = .text:0x00012638; // type:function size:0x294 +fn_1_128CC = .text:0x000128CC; // type:function size:0x100 +fn_1_129CC = .text:0x000129CC; // type:function size:0x164 +fn_1_12B30 = .text:0x00012B30; // type:function size:0x1F8 +fn_1_12D28 = .text:0x00012D28; // type:function size:0x4 +fn_1_12D2C = .text:0x00012D2C; // type:function size:0xE0 +fn_1_12E0C = .text:0x00012E0C; // type:function size:0x248 +fn_1_13054 = .text:0x00013054; // type:function size:0xD0 +fn_1_13124 = .text:0x00013124; // type:function size:0x3EC +fn_1_13510 = .text:0x00013510; // type:function size:0x1B4 +fn_1_136C4 = .text:0x000136C4; // type:function size:0x29C +fn_1_13960 = .text:0x00013960; // type:function size:0x19C +fn_1_13AFC = .text:0x00013AFC; // type:function size:0xC +fn_1_13B08 = .text:0x00013B08; // type:function size:0x38 +fn_1_13B40 = .text:0x00013B40; // type:function size:0x34 +fn_1_13B74 = .text:0x00013B74; // type:function size:0x364 +fn_1_13ED8 = .text:0x00013ED8; // type:function size:0x988 +fn_1_14860 = .text:0x00014860; // type:function size:0x110 +fn_1_14970 = .text:0x00014970; // type:function size:0xF8 +fn_1_14A68 = .text:0x00014A68; // type:function size:0x110 +fn_1_14B78 = .text:0x00014B78; // type:function size:0x60 +fn_1_14BD8 = .text:0x00014BD8; // type:function size:0xC0 +fn_1_14C98 = .text:0x00014C98; // type:function size:0x620 +fn_1_152B8 = .text:0x000152B8; // type:function size:0x840 +fn_1_15AF8 = .text:0x00015AF8; // type:function size:0x64 +fn_1_15B5C = .text:0x00015B5C; // type:function size:0x500 +fn_1_1605C = .text:0x0001605C; // type:function size:0x1D4 +fn_1_16230 = .text:0x00016230; // type:function size:0x94 +fn_1_162C4 = .text:0x000162C4; // type:function size:0x64 +fn_1_16328 = .text:0x00016328; // type:function size:0x598 +fn_1_168C0 = .text:0x000168C0; // type:function size:0x2B4 +fn_1_16B74 = .text:0x00016B74; // type:function size:0x130 +fn_1_16CA4 = .text:0x00016CA4; // type:function size:0x4D0 +fn_1_17174 = .text:0x00017174; // type:function size:0x19C +fn_1_17310 = .text:0x00017310; // type:function size:0x114 +fn_1_17424 = .text:0x00017424; // type:function size:0x4FC +fn_1_17920 = .text:0x00017920; // type:function size:0x24C +fn_1_17B6C = .text:0x00017B6C; // type:function size:0x868 +fn_1_183D4 = .text:0x000183D4; // type:function size:0x284 +fn_1_18658 = .text:0x00018658; // type:function size:0x888 +fn_1_18EE0 = .text:0x00018EE0; // type:function size:0x37C +fn_1_1925C = .text:0x0001925C; // type:function size:0xE4 +fn_1_19340 = .text:0x00019340; // type:function size:0xC0 +fn_1_19400 = .text:0x00019400; // type:function size:0x1FC +fn_1_195FC = .text:0x000195FC; // type:function size:0x14C +fn_1_19748 = .text:0x00019748; // type:function size:0x278 +fn_1_199C0 = .text:0x000199C0; // type:function size:0x208 +fn_1_19BC8 = .text:0x00019BC8; // type:function size:0xC8 +fn_1_19C90 = .text:0x00019C90; // type:function size:0x334 +fn_1_19FC4 = .text:0x00019FC4; // type:function size:0x4C +fn_1_1A010 = .text:0x0001A010; // type:function size:0x1BC +fn_1_1A1CC = .text:0x0001A1CC; // type:function size:0x1D4 +fn_1_1A3A0 = .text:0x0001A3A0; // type:function size:0x284 +_prolog = .text:0x0001A624; // type:function size:0x54 scope:global +_epilog = .text:0x0001A678; // type:function size:0x4C scope:global +fn_1_1A6C4 = .text:0x0001A6C4; // type:function size:0x22C +fn_1_1A8F0 = .text:0x0001A8F0; // type:function size:0x784 +fn_1_1B074 = .text:0x0001B074; // type:function size:0x94 +fn_1_1B108 = .text:0x0001B108; // type:function size:0x154 +fn_1_1B25C = .text:0x0001B25C; // type:function size:0x21C +fn_1_1B478 = .text:0x0001B478; // type:function size:0x48 +fn_1_1B4C0 = .text:0x0001B4C0; // type:function size:0x134 +fn_1_1B5F4 = .text:0x0001B5F4; // type:function size:0x1EC +fn_1_1B7E0 = .text:0x0001B7E0; // type:function size:0x830 +fn_1_1C010 = .text:0x0001C010; // type:function size:0x274 +fn_1_1C284 = .text:0x0001C284; // type:function size:0xC8 +fn_1_1C34C = .text:0x0001C34C; // type:function size:0x98 +fn_1_1C3E4 = .text:0x0001C3E4; // type:function size:0x2B0 +fn_1_1C694 = .text:0x0001C694; // type:function size:0x98 +fn_1_1C72C = .text:0x0001C72C; // type:function size:0x11C +fn_1_1C848 = .text:0x0001C848; // type:function size:0x18B8 +fn_1_1E100 = .text:0x0001E100; // type:function size:0x1F6C +fn_1_2006C = .text:0x0002006C; // type:function size:0xB4 +fn_1_20120 = .text:0x00020120; // type:function size:0x31C0 +fn_1_232E0 = .text:0x000232E0; // type:function size:0x440 +fn_1_23720 = .text:0x00023720; // type:function size:0x530 +fn_1_23C50 = .text:0x00023C50; // type:function size:0x980 +fn_1_245D0 = .text:0x000245D0; // type:function size:0x4A08 +fn_1_28FD8 = .text:0x00028FD8; // type:function size:0x8C0 +fn_1_29898 = .text:0x00029898; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x1 data:byte +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:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:4byte +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x58 +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x58 +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:4byte +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0x8 data:4byte +lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 data:float +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:4byte +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 +lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x1F data:string +lbl_1_data_9F = .data:0x0000009F; // type:object size:0xD +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4C +lbl_1_data_100 = .data:0x00000100; // type:object size:0x14 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x3C +lbl_1_data_150 = .data:0x00000150; // type:object size:0x3C +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x20 +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x10 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x28 +lbl_1_data_204 = .data:0x00000204; // type:object size:0x30 +lbl_1_data_234 = .data:0x00000234; // type:object size:0x20 +lbl_1_data_254 = .data:0x00000254; // type:object size:0x14 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x14 +lbl_1_data_27C = .data:0x0000027C; // type:object size:0x14 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x12 data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x13 data:string +lbl_1_data_2C9 = .data:0x000002C9; // type:object size:0x14 data:string +lbl_1_data_2DD = .data:0x000002DD; // type:object size:0x1C data:string +lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0x12 data:string +lbl_1_data_30B = .data:0x0000030B; // type:object size:0x11 +jumptable_1_data_31C = .data:0x0000031C; // type:object size:0x60 scope:local +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x12 data:string +lbl_1_data_38E = .data:0x0000038E; // type:object size:0x12 data:string +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x13 data:string +lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x14 data:string +lbl_1_data_3C7 = .data:0x000003C7; // type:object size:0x14 data:string +lbl_1_data_3DB = .data:0x000003DB; // type:object size:0x13 data:string +lbl_1_data_3EE = .data:0x000003EE; // type:object size:0x1E +jumptable_1_data_40C = .data:0x0000040C; // type:object size:0x44 scope:local +lbl_1_data_450 = .data:0x00000450; // type:object size:0x14 +lbl_1_data_464 = .data:0x00000464; // type:object size:0xC data:4byte +lbl_1_data_470 = .data:0x00000470; // type:object size:0xC +lbl_1_data_47C = .data:0x0000047C; // type:object size:0xC data:4byte +lbl_1_data_488 = .data:0x00000488; // type:object size:0xC data:4byte +lbl_1_data_494 = .data:0x00000494; // type:object size:0xC data:4byte +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xC data:4byte +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0xC data:4byte +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0xC data:4byte +lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0xC data:4byte +lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0xC data:4byte +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0xC data:4byte +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0xC +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0xC +lbl_1_data_500 = .data:0x00000500; // type:object size:0x4 +lbl_1_data_504 = .data:0x00000504; // type:object size:0xC +lbl_1_data_510 = .data:0x00000510; // type:object size:0xC +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x30 +lbl_1_data_54C = .data:0x0000054C; // type:object size:0x10 data:string +lbl_1_data_55C = .data:0x0000055C; // type:object size:0x10 data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 data:string +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x10 data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x10 data:string +lbl_1_data_59C = .data:0x0000059C; // type:object size:0x10 data:string +lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x10 data:string +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x10 data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x80 +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x2E0 +lbl_1_data_92C = .data:0x0000092C; // type:object size:0x20 +lbl_1_data_94C = .data:0x0000094C; // type:object size:0xA0 +lbl_1_data_9EC = .data:0x000009EC; // type:object size:0x20 +lbl_1_data_A0C = .data:0x00000A0C; // type:object size:0x38 data:4byte +lbl_1_data_A44 = .data:0x00000A44; // type:object size:0x13 data:string +lbl_1_data_A57 = .data:0x00000A57; // type:object size:0x13 data:string +lbl_1_data_A6A = .data:0x00000A6A; // type:object size:0x16 +lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x18C +lbl_1_data_C0C = .data:0x00000C0C; // type:object size:0x13 data:string +lbl_1_data_C1F = .data:0x00000C1F; // type:object size:0x13 data:string +lbl_1_data_C32 = .data:0x00000C32; // type:object size:0x13 data:string +lbl_1_data_C45 = .data:0x00000C45; // type:object size:0x13 data:string +lbl_1_data_C58 = .data:0x00000C58; // type:object size:0x1B8 +lbl_1_data_E10 = .data:0x00000E10; // type:object size:0x11 data:string +lbl_1_data_E21 = .data:0x00000E21; // type:object size:0x11 data:string +lbl_1_data_E32 = .data:0x00000E32; // type:object size:0x11 data:string +lbl_1_data_E43 = .data:0x00000E43; // type:object size:0x11 data:string +lbl_1_data_E54 = .data:0x00000E54; // type:object size:0x14 +lbl_1_data_E68 = .data:0x00000E68; // type:object size:0x14 +lbl_1_data_E7C = .data:0x00000E7C; // type:object size:0x84 +lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x5C +lbl_1_data_F5C = .data:0x00000F5C; // type:object size:0x10 +lbl_1_data_F6C = .data:0x00000F6C; // type:object size:0x18 +lbl_1_data_F84 = .data:0x00000F84; // type:object size:0x14 +lbl_1_data_F98 = .data:0x00000F98; // type:object size:0x14 +lbl_1_data_FAC = .data:0x00000FAC; // type:object size:0x18 +lbl_1_data_FC4 = .data:0x00000FC4; // type:object size:0x14 +lbl_1_data_FD8 = .data:0x00000FD8; // type:object size:0x14 +lbl_1_data_FEC = .data:0x00000FEC; // type:object size:0x14 +lbl_1_data_1000 = .data:0x00001000; // type:object size:0x14 +lbl_1_data_1014 = .data:0x00001014; // type:object size:0x28 +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x28 +lbl_1_data_1064 = .data:0x00001064; // type:object size:0x28 +lbl_1_data_108C = .data:0x0000108C; // type:object size:0x28 +lbl_1_data_10B4 = .data:0x000010B4; // type:object size:0x28 +lbl_1_data_10DC = .data:0x000010DC; // type:object size:0x28 +lbl_1_data_1104 = .data:0x00001104; // type:object size:0x28 +lbl_1_data_112C = .data:0x0000112C; // type:object size:0x28 +lbl_1_data_1154 = .data:0x00001154; // type:object size:0x28 +lbl_1_data_117C = .data:0x0000117C; // type:object size:0x28 +lbl_1_data_11A4 = .data:0x000011A4; // type:object size:0x28 +lbl_1_data_11CC = .data:0x000011CC; // type:object size:0x28 +lbl_1_data_11F4 = .data:0x000011F4; // type:object size:0x10 +lbl_1_data_1204 = .data:0x00001204; // type:object size:0xC +lbl_1_data_1210 = .data:0x00001210; // type:object size:0xC +lbl_1_data_121C = .data:0x0000121C; // type:object size:0xC +lbl_1_data_1228 = .data:0x00001228; // type:object size:0xC +lbl_1_data_1234 = .data:0x00001234; // type:object size:0x20 +lbl_1_data_1254 = .data:0x00001254; // type:object size:0x13 data:string +lbl_1_data_1267 = .data:0x00001267; // type:object size:0x13 data:string +lbl_1_data_127A = .data:0x0000127A; // type:object size:0x13 data:string +lbl_1_data_128D = .data:0x0000128D; // type:object size:0x13 data:string +lbl_1_data_12A0 = .data:0x000012A0; // type:object size:0x10 +lbl_1_data_12B0 = .data:0x000012B0; // type:object size:0x13 data:string +lbl_1_data_12C3 = .data:0x000012C3; // type:object size:0x13 data:string +lbl_1_data_12D6 = .data:0x000012D6; // type:object size:0x13 data:string +lbl_1_data_12E9 = .data:0x000012E9; // type:object size:0x13 data:string +lbl_1_data_12FC = .data:0x000012FC; // type:object size:0x13 data:string +lbl_1_data_130F = .data:0x0000130F; // type:object size:0x13 data:string +lbl_1_data_1322 = .data:0x00001322; // type:object size:0x13 data:string +lbl_1_data_1335 = .data:0x00001335; // type:object size:0x13 data:string +lbl_1_data_1348 = .data:0x00001348; // type:object size:0x14 +lbl_1_data_135C = .data:0x0000135C; // type:object size:0x24 +lbl_1_data_1380 = .data:0x00001380; // type:object size:0x38 data:4byte +lbl_1_data_13B8 = .data:0x000013B8; // type:object size:0x38 data:4byte +lbl_1_data_13F0 = .data:0x000013F0; // type:object size:0x13 data:string +lbl_1_data_1403 = .data:0x00001403; // type:object size:0x13 data:string +lbl_1_data_1416 = .data:0x00001416; // type:object size:0x13 data:string +lbl_1_data_1429 = .data:0x00001429; // type:object size:0x13 data:string +lbl_1_data_143C = .data:0x0000143C; // type:object size:0x14 +lbl_1_data_1450 = .data:0x00001450; // type:object size:0xB4 +lbl_1_data_1504 = .data:0x00001504; // type:object size:0x50 +lbl_1_data_1554 = .data:0x00001554; // type:object size:0x13 data:string +lbl_1_data_1567 = .data:0x00001567; // type:object size:0x13 data:string +lbl_1_data_157A = .data:0x0000157A; // type:object size:0x13 data:string +lbl_1_data_158D = .data:0x0000158D; // type:object size:0x13 data:string +lbl_1_data_15A0 = .data:0x000015A0; // type:object size:0x13 data:string +lbl_1_data_15B3 = .data:0x000015B3; // type:object size:0x12 data:string +lbl_1_data_15C5 = .data:0x000015C5; // type:object size:0x25 data:string +lbl_1_data_15EA = .data:0x000015EA; // type:object size:0x22 data:string +lbl_1_data_160C = .data:0x0000160C; // type:object size:0x9 data:string +lbl_1_data_1615 = .data:0x00001615; // type:object size:0xA data:string +lbl_1_data_161F = .data:0x0000161F; // type:object size:0xE data:string +lbl_1_data_162D = .data:0x0000162D; // type:object size:0x6 data:string +lbl_1_data_1633 = .data:0x00001633; // type:object size:0x1D data:string +jumptable_1_data_1650 = .data:0x00001650; // type:object size:0x70 scope:local +lbl_1_data_16C0 = .data:0x000016C0; // type:object size:0x1C +jumptable_1_data_16DC = .data:0x000016DC; // type:object size:0xC4 scope:local +lbl_1_data_17A0 = .data:0x000017A0; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x18 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x3C data:float +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x30 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0xC data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:float +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0xC data:float +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x8 +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x4 +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0xC data:4byte +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x8 data:float +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x4 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x5C data:4byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:float +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x100 +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x40 data:4byte +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x4 data:float +lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x4 data:4byte +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x4 data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0x2 data:2byte +lbl_1_bss_2FE = .bss:0x000002FE; // type:object size:0x2 data:2byte +lbl_1_bss_300 = .bss:0x00000300; // type:object size:0x4 data:4byte +lbl_1_bss_304 = .bss:0x00000304; // type:object size:0x4 data:4byte +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0xC data:4byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0xC data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0xC data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0xC data:4byte +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x4 data:4byte +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x18 data:4byte +lbl_1_bss_358 = .bss:0x00000358; // type:object size:0xC data:4byte diff --git a/config/GMPP01_00/rels/m451Dll/splits.txt b/config/GMPP01_00/rels/m451Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m451Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m451Dll/symbols.txt b/config/GMPP01_00/rels/m451Dll/symbols.txt new file mode 100644 index 00000000..31e776c0 --- /dev/null +++ b/config/GMPP01_00/rels/m451Dll/symbols.txt @@ -0,0 +1,216 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x71C +fn_1_7BC = .text:0x000007BC; // type:function size:0x9C +fn_1_858 = .text:0x00000858; // type:function size:0xC0 +fn_1_918 = .text:0x00000918; // type:function size:0x214 +fn_1_B2C = .text:0x00000B2C; // type:function size:0x1038 +fn_1_1B64 = .text:0x00001B64; // type:function size:0x598 +fn_1_20FC = .text:0x000020FC; // type:function size:0xB8 +fn_1_21B4 = .text:0x000021B4; // type:function size:0xC0 +fn_1_2274 = .text:0x00002274; // type:function size:0x6C +fn_1_22E0 = .text:0x000022E0; // type:function size:0x35C +fn_1_263C = .text:0x0000263C; // type:function size:0x3F8 +fn_1_2A34 = .text:0x00002A34; // type:function size:0x21C +fn_1_2C50 = .text:0x00002C50; // type:function size:0x2B8 +fn_1_2F08 = .text:0x00002F08; // type:function size:0xE4 +fn_1_2FEC = .text:0x00002FEC; // type:function size:0xC4 +fn_1_30B0 = .text:0x000030B0; // type:function size:0xA4 +fn_1_3154 = .text:0x00003154; // type:function size:0x670 +fn_1_37C4 = .text:0x000037C4; // type:function size:0xFA4 +fn_1_4768 = .text:0x00004768; // type:function size:0xFC +fn_1_4864 = .text:0x00004864; // type:function size:0x60 +fn_1_48C4 = .text:0x000048C4; // type:function size:0x8F0 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0xC +lbl_1_data_84 = .data:0x00000084; // type:object size:0xB data:string +lbl_1_data_8F = .data:0x0000008F; // type:object size:0xB data:string +lbl_1_data_9A = .data:0x0000009A; // type:object size:0xB data:string +lbl_1_data_A5 = .data:0x000000A5; // type:object size:0xB data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xB data:string +lbl_1_data_BB = .data:0x000000BB; // type:object size:0xB data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0xB data:string +lbl_1_data_D1 = .data:0x000000D1; // type:object size:0xB data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xB data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0xB data:string +lbl_1_data_F2 = .data:0x000000F2; // type:object size:0xB data:string +lbl_1_data_FD = .data:0x000000FD; // type:object size:0xB data:string +lbl_1_data_108 = .data:0x00000108; // type:object size:0xB data:string +lbl_1_data_113 = .data:0x00000113; // type:object size:0xB data:string +lbl_1_data_11E = .data:0x0000011E; // type:object size:0xB data:string +lbl_1_data_129 = .data:0x00000129; // type:object size:0xB data:string +lbl_1_data_134 = .data:0x00000134; // type:object size:0xB data:string +lbl_1_data_13F = .data:0x0000013F; // type:object size:0xB data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xB data:string +lbl_1_data_155 = .data:0x00000155; // type:object size:0xB data:string +lbl_1_data_160 = .data:0x00000160; // type:object size:0xB data:string +lbl_1_data_16B = .data:0x0000016B; // type:object size:0xB data:string +lbl_1_data_176 = .data:0x00000176; // type:object size:0xB data:string +lbl_1_data_181 = .data:0x00000181; // type:object size:0xB data:string +lbl_1_data_18C = .data:0x0000018C; // type:object size:0xB data:string +lbl_1_data_197 = .data:0x00000197; // type:object size:0xB data:string +lbl_1_data_1A2 = .data:0x000001A2; // type:object size:0xB data:string +lbl_1_data_1AD = .data:0x000001AD; // type:object size:0xB data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0xB data:string +lbl_1_data_1C3 = .data:0x000001C3; // type:object size:0xB data:string +lbl_1_data_1CE = .data:0x000001CE; // type:object size:0xB data:string +lbl_1_data_1D9 = .data:0x000001D9; // type:object size:0xB data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xB data:string +lbl_1_data_1EF = .data:0x000001EF; // type:object size:0xB data:string +lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xB data:string +lbl_1_data_205 = .data:0x00000205; // type:object size:0xB data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0xB data:string +lbl_1_data_21B = .data:0x0000021B; // type:object size:0xB data:string +lbl_1_data_226 = .data:0x00000226; // type:object size:0xB data:string +lbl_1_data_231 = .data:0x00000231; // type:object size:0xB data:string +lbl_1_data_23C = .data:0x0000023C; // type:object size:0xB data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0xB data:string +lbl_1_data_252 = .data:0x00000252; // type:object size:0xB data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0xB data:string +lbl_1_data_268 = .data:0x00000268; // type:object size:0xB data:string +lbl_1_data_273 = .data:0x00000273; // type:object size:0xB data:string +lbl_1_data_27E = .data:0x0000027E; // type:object size:0xB data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0xB data:string +lbl_1_data_294 = .data:0x00000294; // type:object size:0xB data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0xB data:string +lbl_1_data_2AA = .data:0x000002AA; // type:object size:0xB data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0xB data:string +lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0xB data:string +lbl_1_data_2CB = .data:0x000002CB; // type:object size:0xB data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0xB data:string +lbl_1_data_2E1 = .data:0x000002E1; // type:object size:0xB data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xB data:string +lbl_1_data_2F7 = .data:0x000002F7; // type:object size:0xB data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0xB data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0xB data:string +lbl_1_data_318 = .data:0x00000318; // type:object size:0xB data:string +lbl_1_data_323 = .data:0x00000323; // type:object size:0xB data:string +lbl_1_data_32E = .data:0x0000032E; // type:object size:0xB data:string +lbl_1_data_339 = .data:0x00000339; // type:object size:0xB data:string +lbl_1_data_344 = .data:0x00000344; // type:object size:0xB data:string +lbl_1_data_34F = .data:0x0000034F; // type:object size:0xB data:string +lbl_1_data_35A = .data:0x0000035A; // type:object size:0xB data:string +lbl_1_data_365 = .data:0x00000365; // type:object size:0xB data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0xB data:string +lbl_1_data_37B = .data:0x0000037B; // type:object size:0xB data:string +lbl_1_data_386 = .data:0x00000386; // type:object size:0xB data:string +lbl_1_data_391 = .data:0x00000391; // type:object size:0xB data:string +lbl_1_data_39C = .data:0x0000039C; // type:object size:0xB data:string +lbl_1_data_3A7 = .data:0x000003A7; // type:object size:0xB data:string +lbl_1_data_3B2 = .data:0x000003B2; // type:object size:0xB data:string +lbl_1_data_3BD = .data:0x000003BD; // type:object size:0xB data:string +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xB data:string +lbl_1_data_3D3 = .data:0x000003D3; // type:object size:0xB data:string +lbl_1_data_3DE = .data:0x000003DE; // type:object size:0xB data:string +lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0xB data:string +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0xB data:string +lbl_1_data_3FF = .data:0x000003FF; // type:object size:0xB data:string +lbl_1_data_40A = .data:0x0000040A; // type:object size:0xB data:string +lbl_1_data_415 = .data:0x00000415; // type:object size:0xB data:string +lbl_1_data_420 = .data:0x00000420; // type:object size:0xB data:string +lbl_1_data_42B = .data:0x0000042B; // type:object size:0xB data:string +lbl_1_data_436 = .data:0x00000436; // type:object size:0xB data:string +lbl_1_data_441 = .data:0x00000441; // type:object size:0xB data:string +lbl_1_data_44C = .data:0x0000044C; // type:object size:0xB data:string +lbl_1_data_457 = .data:0x00000457; // type:object size:0xD +lbl_1_data_464 = .data:0x00000464; // type:object size:0x264 +lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0xC +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x78 data:float +lbl_1_data_74C = .data:0x0000074C; // type:object size:0xC +lbl_1_data_758 = .data:0x00000758; // type:object size:0xC +lbl_1_data_764 = .data:0x00000764; // type:object size:0xC data:string +lbl_1_data_770 = .data:0x00000770; // type:object size:0xC data:string +lbl_1_data_77C = .data:0x0000077C; // type:object size:0x7 data:string +lbl_1_data_783 = .data:0x00000783; // type:object size:0x8 data:string +lbl_1_data_78B = .data:0x0000078B; // type:object size:0x8 data:string +lbl_1_data_793 = .data:0x00000793; // type:object size:0x8 data:string +lbl_1_data_79B = .data:0x0000079B; // type:object size:0xB data:string +lbl_1_data_7A6 = .data:0x000007A6; // type:object size:0xF data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x340 data:4byte +lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x810 data:float +lbl_1_bss_B58 = .bss:0x00000B58; // type:object size:0x4 data:4byte +lbl_1_bss_B5C = .bss:0x00000B5C; // type:object size:0x4 data:4byte +lbl_1_bss_B60 = .bss:0x00000B60; // type:object size:0x4 data:4byte +lbl_1_bss_B64 = .bss:0x00000B64; // type:object size:0xA0 data:4byte +lbl_1_bss_C04 = .bss:0x00000C04; // type:object size:0xA0 data:4byte +lbl_1_bss_CA4 = .bss:0x00000CA4; // type:object size:0x4 data:4byte +lbl_1_bss_CA8 = .bss:0x00000CA8; // type:object size:0x6 +lbl_1_bss_CAE = .bss:0x00000CAE; // type:object size:0x6 data:2byte +lbl_1_bss_CB4 = .bss:0x00000CB4; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/m453Dll/splits.txt b/config/GMPP01_00/rels/m453Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m453Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m453Dll/symbols.txt b/config/GMPP01_00/rels/m453Dll/symbols.txt new file mode 100644 index 00000000..5473789f --- /dev/null +++ b/config/GMPP01_00/rels/m453Dll/symbols.txt @@ -0,0 +1,282 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3A0 +fn_1_440 = .text:0x00000440; // type:function size:0x20 +fn_1_460 = .text:0x00000460; // type:function size:0x3E8 +fn_1_848 = .text:0x00000848; // type:function size:0x7B4 +fn_1_FFC = .text:0x00000FFC; // type:function size:0x60 +fn_1_105C = .text:0x0000105C; // type:function size:0x1EC +fn_1_1248 = .text:0x00001248; // type:function size:0x2C0 +fn_1_1508 = .text:0x00001508; // type:function size:0x104 +fn_1_160C = .text:0x0000160C; // type:function size:0x274 +fn_1_1880 = .text:0x00001880; // type:function size:0xA0 +fn_1_1920 = .text:0x00001920; // type:function size:0x2B8 +fn_1_1BD8 = .text:0x00001BD8; // type:function size:0x28 +fn_1_1C00 = .text:0x00001C00; // type:function size:0x3B0 +fn_1_1FB0 = .text:0x00001FB0; // type:function size:0x14C +fn_1_20FC = .text:0x000020FC; // type:function size:0x2F4 +fn_1_23F0 = .text:0x000023F0; // type:function size:0xA44 +fn_1_2E34 = .text:0x00002E34; // type:function size:0x824 +fn_1_3658 = .text:0x00003658; // type:function size:0x94 +fn_1_36EC = .text:0x000036EC; // type:function size:0x2EC +fn_1_39D8 = .text:0x000039D8; // type:function size:0x1EC +fn_1_3BC4 = .text:0x00003BC4; // type:function size:0xE0 +fn_1_3CA4 = .text:0x00003CA4; // type:function size:0x208 +fn_1_3EAC = .text:0x00003EAC; // type:function size:0x9C +fn_1_3F48 = .text:0x00003F48; // type:function size:0x480 +fn_1_43C8 = .text:0x000043C8; // type:function size:0x54 +fn_1_441C = .text:0x0000441C; // type:function size:0x168 +fn_1_4584 = .text:0x00004584; // type:function size:0x120 +fn_1_46A4 = .text:0x000046A4; // type:function size:0x30C +fn_1_49B0 = .text:0x000049B0; // type:function size:0x78 +fn_1_4A28 = .text:0x00004A28; // type:function size:0x11C +fn_1_4B44 = .text:0x00004B44; // type:function size:0x78 +fn_1_4BBC = .text:0x00004BBC; // type:function size:0x2D8 +fn_1_4E94 = .text:0x00004E94; // type:function size:0x2B8 +fn_1_514C = .text:0x0000514C; // type:function size:0x154 +fn_1_52A0 = .text:0x000052A0; // type:function size:0x3E0 +fn_1_5680 = .text:0x00005680; // type:function size:0x214 +fn_1_5894 = .text:0x00005894; // type:function size:0x198 +fn_1_5A2C = .text:0x00005A2C; // type:function size:0xD8 +fn_1_5B04 = .text:0x00005B04; // type:function size:0xBC +fn_1_5BC0 = .text:0x00005BC0; // type:function size:0x33C +fn_1_5EFC = .text:0x00005EFC; // type:function size:0x4B0 +fn_1_63AC = .text:0x000063AC; // type:function size:0x10 +fn_1_63BC = .text:0x000063BC; // type:function size:0x9C +fn_1_6458 = .text:0x00006458; // type:function size:0xA0 +fn_1_64F8 = .text:0x000064F8; // type:function size:0x260 +fn_1_6758 = .text:0x00006758; // type:function size:0x20 +fn_1_6778 = .text:0x00006778; // type:function size:0x84 +fn_1_67FC = .text:0x000067FC; // type:function size:0x4 +fn_1_6800 = .text:0x00006800; // type:function size:0x16C +fn_1_696C = .text:0x0000696C; // type:function size:0x318 +fn_1_6C84 = .text:0x00006C84; // type:function size:0x240 +fn_1_6EC4 = .text:0x00006EC4; // type:function size:0x110 +fn_1_6FD4 = .text:0x00006FD4; // type:function size:0x400 +fn_1_73D4 = .text:0x000073D4; // type:function size:0x5B4 +fn_1_7988 = .text:0x00007988; // type:function size:0xFC +fn_1_7A84 = .text:0x00007A84; // type:function size:0x88 +fn_1_7B0C = .text:0x00007B0C; // type:function size:0xB4 +fn_1_7BC0 = .text:0x00007BC0; // type:function size:0x4C +fn_1_7C0C = .text:0x00007C0C; // type:function size:0x10 +fn_1_7C1C = .text:0x00007C1C; // type:function size:0x20 +fn_1_7C3C = .text:0x00007C3C; // type:function size:0x10 +fn_1_7C4C = .text:0x00007C4C; // type:function size:0xA4 +fn_1_7CF0 = .text:0x00007CF0; // type:function size:0x274 +fn_1_7F64 = .text:0x00007F64; // type:function size:0x15C +fn_1_80C0 = .text:0x000080C0; // type:function size:0x180 +fn_1_8240 = .text:0x00008240; // type:function size:0x10 +fn_1_8250 = .text:0x00008250; // type:function size:0x10 +fn_1_8260 = .text:0x00008260; // type:function size:0x5C +fn_1_82BC = .text:0x000082BC; // type:function size:0x1A0 +fn_1_845C = .text:0x0000845C; // type:function size:0x200 +fn_1_865C = .text:0x0000865C; // type:function size:0x30 +fn_1_868C = .text:0x0000868C; // type:function size:0x8CC +fn_1_8F58 = .text:0x00008F58; // type:function size:0x290 +fn_1_91E8 = .text:0x000091E8; // type:function size:0x74 +fn_1_925C = .text:0x0000925C; // type:function size:0x50 +fn_1_92AC = .text:0x000092AC; // type:function size:0x24 +fn_1_92D0 = .text:0x000092D0; // type:function size:0x30 +fn_1_9300 = .text:0x00009300; // type:function size:0x11C +fn_1_941C = .text:0x0000941C; // type:function size:0x78 +fn_1_9494 = .text:0x00009494; // type:function size:0x8C +fn_1_9520 = .text:0x00009520; // type:function size:0x164 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x9 data:byte +lbl_1_rodata_91 = .rodata:0x00000091; // type:object size:0xB data:byte +lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:float +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0xC +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x28 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x24 data:4byte +jumptable_1_data_8C = .data:0x0000008C; // type:object size:0x1C scope:local +jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x20 +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x30 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x20 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x20 +lbl_1_data_154 = .data:0x00000154; // type:object size:0x4 data:4byte +lbl_1_data_158 = .data:0x00000158; // type:object size:0xC0 +lbl_1_data_218 = .data:0x00000218; // type:object size:0xC0 +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x78 +lbl_1_data_350 = .data:0x00000350; // type:object size:0x78 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xC0 +lbl_1_data_488 = .data:0x00000488; // type:object size:0xC0 +lbl_1_data_548 = .data:0x00000548; // type:object size:0x78 +lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x78 +lbl_1_data_638 = .data:0x00000638; // type:object size:0x108 +lbl_1_data_740 = .data:0x00000740; // type:object size:0x108 +lbl_1_data_848 = .data:0x00000848; // type:object size:0x108 +lbl_1_data_950 = .data:0x00000950; // type:object size:0x108 +lbl_1_data_A58 = .data:0x00000A58; // type:object size:0x30 +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x48 +lbl_1_data_AD0 = .data:0x00000AD0; // type:object size:0xC data:4byte +lbl_1_data_ADC = .data:0x00000ADC; // type:object size:0xC data:4byte +lbl_1_data_AE8 = .data:0x00000AE8; // type:object size:0x14 data:4byte +lbl_1_data_AFC = .data:0x00000AFC; // type:object size:0x18 +lbl_1_data_B14 = .data:0x00000B14; // type:object size:0x18 +lbl_1_data_B2C = .data:0x00000B2C; // type:object size:0x48 +lbl_1_data_B74 = .data:0x00000B74; // type:object size:0x30 +lbl_1_data_BA4 = .data:0x00000BA4; // type:object size:0x1C +lbl_1_data_BC0 = .data:0x00000BC0; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x6 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte +lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x14 data:2byte +lbl_1_bss_32 = .bss:0x00000032; // type:object size:0x2 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x2 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x2 data:2byte +lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x2 data:2byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x18 +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:float +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x14 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m455Dll/splits.txt b/config/GMPP01_00/rels/m455Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m455Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m455Dll/symbols.txt b/config/GMPP01_00/rels/m455Dll/symbols.txt new file mode 100644 index 00000000..c63b35b3 --- /dev/null +++ b/config/GMPP01_00/rels/m455Dll/symbols.txt @@ -0,0 +1,293 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x270 +fn_1_310 = .text:0x00000310; // type:function size:0x10 +fn_1_320 = .text:0x00000320; // type:function size:0x10 +fn_1_330 = .text:0x00000330; // type:function size:0x148 +fn_1_478 = .text:0x00000478; // type:function size:0x6C0 +fn_1_B38 = .text:0x00000B38; // type:function size:0x5C +fn_1_B94 = .text:0x00000B94; // type:function size:0xA4 +fn_1_C38 = .text:0x00000C38; // type:function size:0x68 +fn_1_CA0 = .text:0x00000CA0; // type:function size:0x84 +fn_1_D24 = .text:0x00000D24; // type:function size:0x6F4 +fn_1_1418 = .text:0x00001418; // type:function size:0x44 +fn_1_145C = .text:0x0000145C; // type:function size:0xBCC +fn_1_2028 = .text:0x00002028; // type:function size:0x50 +fn_1_2078 = .text:0x00002078; // type:function size:0x330 +fn_1_23A8 = .text:0x000023A8; // type:function size:0x104 +fn_1_24AC = .text:0x000024AC; // type:function size:0x5C +fn_1_2508 = .text:0x00002508; // type:function size:0x208 +fn_1_2710 = .text:0x00002710; // type:function size:0xA8 +fn_1_27B8 = .text:0x000027B8; // type:function size:0x2F0 +fn_1_2AA8 = .text:0x00002AA8; // type:function size:0x64 +fn_1_2B0C = .text:0x00002B0C; // type:function size:0x250 +fn_1_2D5C = .text:0x00002D5C; // type:function size:0x4D0 +fn_1_322C = .text:0x0000322C; // type:function size:0xB0 +fn_1_32DC = .text:0x000032DC; // type:function size:0x148 +fn_1_3424 = .text:0x00003424; // type:function size:0x70 +fn_1_3494 = .text:0x00003494; // type:function size:0x960 +fn_1_3DF4 = .text:0x00003DF4; // type:function size:0x328 +fn_1_411C = .text:0x0000411C; // type:function size:0x7C +fn_1_4198 = .text:0x00004198; // type:function size:0x82C +fn_1_49C4 = .text:0x000049C4; // type:function size:0x68 +fn_1_4A2C = .text:0x00004A2C; // type:function size:0x108 +fn_1_4B34 = .text:0x00004B34; // type:function size:0x348 +fn_1_4E7C = .text:0x00004E7C; // type:function size:0xB3C +fn_1_59B8 = .text:0x000059B8; // type:function size:0x6E8 +fn_1_60A0 = .text:0x000060A0; // type:function size:0xBC +fn_1_615C = .text:0x0000615C; // type:function size:0x450 +fn_1_65AC = .text:0x000065AC; // type:function size:0x104 +fn_1_66B0 = .text:0x000066B0; // type:function size:0x1E4 +fn_1_6894 = .text:0x00006894; // type:function size:0x4C +fn_1_68E0 = .text:0x000068E0; // type:function size:0x4C +fn_1_692C = .text:0x0000692C; // type:function size:0x158 +fn_1_6A84 = .text:0x00006A84; // type:function size:0x1F4 +fn_1_6C78 = .text:0x00006C78; // type:function size:0x50 +fn_1_6CC8 = .text:0x00006CC8; // type:function size:0x5D0 +fn_1_7298 = .text:0x00007298; // type:function size:0xE8 +fn_1_7380 = .text:0x00007380; // type:function size:0xC8 +fn_1_7448 = .text:0x00007448; // type:function size:0x4 +fn_1_744C = .text:0x0000744C; // type:function size:0x18C +fn_1_75D8 = .text:0x000075D8; // type:function size:0xF0 +fn_1_76C8 = .text:0x000076C8; // type:function size:0x2C4 +fn_1_798C = .text:0x0000798C; // type:function size:0x54 +fn_1_79E0 = .text:0x000079E0; // type:function size:0x2B0 +fn_1_7C90 = .text:0x00007C90; // type:function size:0x408 +fn_1_8098 = .text:0x00008098; // type:function size:0x444 +fn_1_84DC = .text:0x000084DC; // type:function size:0x4 +fn_1_84E0 = .text:0x000084E0; // type:function size:0x100 +fn_1_85E0 = .text:0x000085E0; // type:function size:0x104 +fn_1_86E4 = .text:0x000086E4; // type:function size:0x2A0 +fn_1_8984 = .text:0x00008984; // type:function size:0x474 +fn_1_8DF8 = .text:0x00008DF8; // type:function size:0x11C +fn_1_8F14 = .text:0x00008F14; // type:function size:0x2BC +fn_1_91D0 = .text:0x000091D0; // type:function size:0x50 +fn_1_9220 = .text:0x00009220; // type:function size:0xB44 +fn_1_9D64 = .text:0x00009D64; // type:function size:0x104 +fn_1_9E68 = .text:0x00009E68; // type:function size:0x118 +fn_1_9F80 = .text:0x00009F80; // type:function size:0x250 +_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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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:0x8 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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +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:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0xC data:float +lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x2 data:2byte +lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte +lbl_1_data_98 = .data:0x00000098; // type:object size:0x4 data:4byte +jumptable_1_data_9C = .data:0x0000009C; // type:object size:0x28 scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x1C data:string +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x28 +lbl_1_data_108 = .data:0x00000108; // type:object size:0x30 +lbl_1_data_138 = .data:0x00000138; // type:object size:0x1C +lbl_1_data_154 = .data:0x00000154; // type:object size:0x10 +lbl_1_data_164 = .data:0x00000164; // type:object size:0xC +lbl_1_data_170 = .data:0x00000170; // type:object size:0x1 data:byte +lbl_1_data_174 = .data:0x00000174; // type:object size:0x5 data:string +lbl_1_data_179 = .data:0x00000179; // type:object size:0xB data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x8 data:float +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x4C +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x30 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x1 data:byte +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x50 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x7 data:string +lbl_1_data_263 = .data:0x00000263; // type:object size:0x7 data:string +lbl_1_data_26A = .data:0x0000026A; // type:object size:0x1 data:byte +lbl_1_data_26E = .data:0x0000026E; // type:object size:0x1 data:byte +lbl_1_data_272 = .data:0x00000272; // type:object size:0x6 data:byte +lbl_1_data_278 = .data:0x00000278; // type:object size:0x30 +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x138 +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x68 +lbl_1_data_448 = .data:0x00000448; // type:object size:0xD0 +lbl_1_data_518 = .data:0x00000518; // type:object size:0xD0 +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x18 +lbl_1_data_600 = .data:0x00000600; // type:object size:0x1 data:byte +lbl_1_data_604 = .data:0x00000604; // type:object size:0x6C +lbl_1_data_670 = .data:0x00000670; // type:object size:0x24 +lbl_1_data_694 = .data:0x00000694; // type:object size:0x8 data:byte +lbl_1_data_69C = .data:0x0000069C; // type:object size:0x1 data:byte +lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x10 +lbl_1_data_6B0 = .data:0x000006B0; // type:object size:0x10 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1A = .bss:0x0000001A; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte +lbl_1_bss_2A = .bss:0x0000002A; // type:object size:0x2 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m456Dll/splits.txt b/config/GMPP01_00/rels/m456Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m456Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m456Dll/symbols.txt b/config/GMPP01_00/rels/m456Dll/symbols.txt new file mode 100644 index 00000000..3dfe3a85 --- /dev/null +++ b/config/GMPP01_00/rels/m456Dll/symbols.txt @@ -0,0 +1,283 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x300 +fn_1_3A0 = .text:0x000003A0; // type:function size:0x10 +fn_1_3B0 = .text:0x000003B0; // type:function size:0x10 +fn_1_3C0 = .text:0x000003C0; // type:function size:0xD8 +fn_1_498 = .text:0x00000498; // type:function size:0x74C +fn_1_BE4 = .text:0x00000BE4; // type:function size:0x5C +fn_1_C40 = .text:0x00000C40; // type:function size:0x84 +fn_1_CC4 = .text:0x00000CC4; // type:function size:0x68 +fn_1_D2C = .text:0x00000D2C; // type:function size:0x220 +fn_1_F4C = .text:0x00000F4C; // type:function size:0x84 +fn_1_FD0 = .text:0x00000FD0; // type:function size:0x2B8 +fn_1_1288 = .text:0x00001288; // type:function size:0xD8 +fn_1_1360 = .text:0x00001360; // type:function size:0xD9C +fn_1_20FC = .text:0x000020FC; // type:function size:0x50 +fn_1_214C = .text:0x0000214C; // type:function size:0x104 +fn_1_2250 = .text:0x00002250; // type:function size:0x64 +fn_1_22B4 = .text:0x000022B4; // type:function size:0x250 +fn_1_2504 = .text:0x00002504; // type:function size:0x4D0 +fn_1_29D4 = .text:0x000029D4; // type:function size:0x1AC +fn_1_2B80 = .text:0x00002B80; // type:function size:0x330 +fn_1_2EB0 = .text:0x00002EB0; // type:function size:0x148 +fn_1_2FF8 = .text:0x00002FF8; // type:function size:0x70 +fn_1_3068 = .text:0x00003068; // type:function size:0x960 +fn_1_39C8 = .text:0x000039C8; // type:function size:0x328 +fn_1_3CF0 = .text:0x00003CF0; // type:function size:0x7C +fn_1_3D6C = .text:0x00003D6C; // type:function size:0x82C +fn_1_4598 = .text:0x00004598; // type:function size:0x68 +fn_1_4600 = .text:0x00004600; // type:function size:0x108 +fn_1_4708 = .text:0x00004708; // type:function size:0x348 +fn_1_4A50 = .text:0x00004A50; // type:function size:0xB3C +fn_1_558C = .text:0x0000558C; // type:function size:0x6E8 +fn_1_5C74 = .text:0x00005C74; // type:function size:0xBC +fn_1_5D30 = .text:0x00005D30; // type:function size:0x450 +fn_1_6180 = .text:0x00006180; // type:function size:0x104 +fn_1_6284 = .text:0x00006284; // type:function size:0x1E4 +fn_1_6468 = .text:0x00006468; // type:function size:0x4C +fn_1_64B4 = .text:0x000064B4; // type:function size:0x4C +fn_1_6500 = .text:0x00006500; // type:function size:0x158 +fn_1_6658 = .text:0x00006658; // type:function size:0x1F4 +fn_1_684C = .text:0x0000684C; // type:function size:0x50 +fn_1_689C = .text:0x0000689C; // type:function size:0x5D0 +fn_1_6E6C = .text:0x00006E6C; // type:function size:0xE8 +fn_1_6F54 = .text:0x00006F54; // type:function size:0xC8 +fn_1_701C = .text:0x0000701C; // type:function size:0x4 +fn_1_7020 = .text:0x00007020; // type:function size:0x18C +fn_1_71AC = .text:0x000071AC; // type:function size:0xF0 +fn_1_729C = .text:0x0000729C; // type:function size:0x2C4 +fn_1_7560 = .text:0x00007560; // type:function size:0x54 +fn_1_75B4 = .text:0x000075B4; // type:function size:0x2B0 +fn_1_7864 = .text:0x00007864; // type:function size:0x3D8 +fn_1_7C3C = .text:0x00007C3C; // type:function size:0x444 +fn_1_8080 = .text:0x00008080; // type:function size:0x4 +fn_1_8084 = .text:0x00008084; // type:function size:0x100 +fn_1_8184 = .text:0x00008184; // type:function size:0x104 +fn_1_8288 = .text:0x00008288; // type:function size:0x2A0 +fn_1_8528 = .text:0x00008528; // type:function size:0x474 +fn_1_899C = .text:0x0000899C; // type:function size:0x11C +fn_1_8AB8 = .text:0x00008AB8; // type:function size:0x2BC +fn_1_8D74 = .text:0x00008D74; // type:function size:0x50 +fn_1_8DC4 = .text:0x00008DC4; // type:function size:0xB44 +fn_1_9908 = .text:0x00009908; // type:function size:0x104 +fn_1_9A0C = .text:0x00009A0C; // type:function size:0x118 +fn_1_9B24 = .text:0x00009B24; // type:function size:0x250 +_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +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:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0xC data:float +lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x4 data:4byte +lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte +jumptable_1_data_98 = .data:0x00000098; // type:object size:0x30 scope:local +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x1C data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x50 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x30 +lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 +jumptable_1_data_188 = .data:0x00000188; // type:object size:0x20 scope:local +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x8 data:float +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x80 +lbl_1_data_230 = .data:0x00000230; // type:object size:0xB8 +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x30 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x1 data:byte +lbl_1_data_31C = .data:0x0000031C; // type:object size:0x50 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x7 data:string +lbl_1_data_373 = .data:0x00000373; // type:object size:0x7 data:string +lbl_1_data_37A = .data:0x0000037A; // type:object size:0x1 data:byte +lbl_1_data_37E = .data:0x0000037E; // type:object size:0x1 data:byte +lbl_1_data_382 = .data:0x00000382; // type:object size:0x6 data:byte +lbl_1_data_388 = .data:0x00000388; // type:object size:0x30 +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x138 +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x68 +lbl_1_data_558 = .data:0x00000558; // type:object size:0xD0 +lbl_1_data_628 = .data:0x00000628; // type:object size:0xD0 +lbl_1_data_6F8 = .data:0x000006F8; // type:object size:0x18 +lbl_1_data_710 = .data:0x00000710; // type:object size:0x1 data:byte +lbl_1_data_714 = .data:0x00000714; // type:object size:0x6C +lbl_1_data_780 = .data:0x00000780; // type:object size:0x24 +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x8 data:byte +lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x1 data:byte +lbl_1_data_7B0 = .data:0x000007B0; // type:object size:0x10 +lbl_1_data_7C0 = .data:0x000007C0; // type:object size:0x10 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x40 data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_1_bss_62 = .bss:0x00000062; // type:object size:0x2 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x10 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x10 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m457Dll/splits.txt b/config/GMPP01_00/rels/m457Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m457Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m457Dll/symbols.txt b/config/GMPP01_00/rels/m457Dll/symbols.txt new file mode 100644 index 00000000..71fd03bb --- /dev/null +++ b/config/GMPP01_00/rels/m457Dll/symbols.txt @@ -0,0 +1,177 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3CC +fn_1_46C = .text:0x0000046C; // type:function size:0x2858 +fn_1_2CC4 = .text:0x00002CC4; // type:function size:0x2654 +fn_1_5318 = .text:0x00005318; // type:function size:0x220 +fn_1_5538 = .text:0x00005538; // type:function size:0x510 +fn_1_5A48 = .text:0x00005A48; // type:function size:0xB34 +fn_1_657C = .text:0x0000657C; // type:function size:0xAB8 +fn_1_7034 = .text:0x00007034; // type:function size:0x5F4 +fn_1_7628 = .text:0x00007628; // type:function size:0xC0 +fn_1_76E8 = .text:0x000076E8; // type:function size:0x480 +fn_1_7B68 = .text:0x00007B68; // type:function size:0x9C +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x64 +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 data:4byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 data:4byte +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:4byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x14 data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:4byte +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:4byte +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x40 data:4byte +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x40 data:4byte +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x5C +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x5C +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0xC data:4byte +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0xC data:4byte +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x1 data:byte +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x5C +lbl_1_data_5C = .data:0x0000005C; // type:object size:0x5C data:4byte +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC +lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C +lbl_1_data_220 = .data:0x00000220; // type:object size:0x6C +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x4 data:4byte +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x4 data:4byte +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x4 data:4byte +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 data:string +lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 data:string +jumptable_1_data_2C8 = .data:0x000002C8; // type:object size:0x2C scope:local +jumptable_1_data_2F4 = .data:0x000002F4; // type:object size:0x48 scope:local +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte +lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float +lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float +lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float +jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x20 scope:local +jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local +lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 data:string +lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 data:string +lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x8 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte diff --git a/config/GMPP01_00/rels/m458Dll/splits.txt b/config/GMPP01_00/rels/m458Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m458Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m458Dll/symbols.txt b/config/GMPP01_00/rels/m458Dll/symbols.txt new file mode 100644 index 00000000..5c135c78 --- /dev/null +++ b/config/GMPP01_00/rels/m458Dll/symbols.txt @@ -0,0 +1,176 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x428 +fn_1_4C8 = .text:0x000004C8; // type:function size:0x3044 +fn_1_350C = .text:0x0000350C; // type:function size:0x16DC +fn_1_4BE8 = .text:0x00004BE8; // type:function size:0x15C +fn_1_4D44 = .text:0x00004D44; // type:function size:0x2D0 +fn_1_5014 = .text:0x00005014; // type:function size:0x9C8 +fn_1_59DC = .text:0x000059DC; // type:function size:0x938 +fn_1_6314 = .text:0x00006314; // type:function size:0x548 +fn_1_685C = .text:0x0000685C; // type:function size:0xC0 +fn_1_691C = .text:0x0000691C; // type:function size:0x480 +fn_1_6D9C = .text:0x00006D9C; // type:function size:0xD0 +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x94 +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x50 +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:4byte +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x70 +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:4byte +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0xC data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0xC data:4byte +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 +lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 data:4byte +lbl_1_data_10 = .data:0x00000010; // type:object size:0x28 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x28 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x28 +lbl_1_data_88 = .data:0x00000088; // type:object size:0xA +lbl_1_data_92 = .data:0x00000092; // type:object size:0xA +lbl_1_data_9C = .data:0x0000009C; // type:object size:0x28 +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x28 +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x28 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x18 data:float +lbl_1_data_12C = .data:0x0000012C; // type:object size:0x2 data:2byte +lbl_1_data_12E = .data:0x0000012E; // type:object size:0x2 data:2byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x4 data:4byte +lbl_1_data_134 = .data:0x00000134; // type:object size:0x4 data:4byte +lbl_1_data_138 = .data:0x00000138; // type:object size:0x24 data:2byte +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x4 data:4byte +lbl_1_data_160 = .data:0x00000160; // type:object size:0x9 data:string +lbl_1_data_169 = .data:0x00000169; // type:object size:0x3 data:string +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 data:4byte +jumptable_1_data_170 = .data:0x00000170; // type:object size:0x30 scope:local +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x4 data:float +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x4 data:float +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x4 data:float +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x4 data:string +jumptable_1_data_1B4 = .data:0x000001B4; // type:object size:0x34 scope:local +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x2C +lbl_1_data_214 = .data:0x00000214; // type:object size:0x8 data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x19 data:string +lbl_1_data_235 = .data:0x00000235; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x50 +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x8 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x8 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x1C0 data:4byte +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x90 diff --git a/config/GMPP01_00/rels/m459dll/splits.txt b/config/GMPP01_00/rels/m459dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m459dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m459dll/symbols.txt b/config/GMPP01_00/rels/m459dll/symbols.txt new file mode 100644 index 00000000..704f4761 --- /dev/null +++ b/config/GMPP01_00/rels/m459dll/symbols.txt @@ -0,0 +1,169 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x138 +fn_1_1D8 = .text:0x000001D8; // type:function size:0x468 +fn_1_640 = .text:0x00000640; // type:function size:0xFC +fn_1_73C = .text:0x0000073C; // type:function size:0x73C +fn_1_E78 = .text:0x00000E78; // type:function size:0x364 +fn_1_11DC = .text:0x000011DC; // type:function size:0x28 +fn_1_1204 = .text:0x00001204; // type:function size:0x28 +fn_1_122C = .text:0x0000122C; // type:function size:0x200 +fn_1_142C = .text:0x0000142C; // type:function size:0x8C +fn_1_14B8 = .text:0x000014B8; // type:function size:0x2C0 +fn_1_1778 = .text:0x00001778; // type:function size:0x124 +fn_1_189C = .text:0x0000189C; // type:function size:0x118 +fn_1_19B4 = .text:0x000019B4; // type:function size:0x4C +fn_1_1A00 = .text:0x00001A00; // type:function size:0x5DC +fn_1_1FDC = .text:0x00001FDC; // type:function size:0x68 +fn_1_2044 = .text:0x00002044; // type:function size:0x168 +fn_1_21AC = .text:0x000021AC; // type:function size:0x200 +fn_1_23AC = .text:0x000023AC; // type:function size:0x21C +fn_1_25C8 = .text:0x000025C8; // type:function size:0x200 +fn_1_27C8 = .text:0x000027C8; // type:function size:0x168 +fn_1_2930 = .text:0x00002930; // type:function size:0x1F4 +fn_1_2B24 = .text:0x00002B24; // type:function size:0x3F4 +fn_1_2F18 = .text:0x00002F18; // type:function size:0xEC +fn_1_3004 = .text:0x00003004; // type:function size:0x388 +fn_1_338C = .text:0x0000338C; // type:function size:0x374 +fn_1_3700 = .text:0x00003700; // type:function size:0xA60 +fn_1_4160 = .text:0x00004160; // type:function size:0xB0 +fn_1_4210 = .text:0x00004210; // type:function size:0x104 +fn_1_4314 = .text:0x00004314; // type:function size:0x21C +fn_1_4530 = .text:0x00004530; // type:function size:0xBC +fn_1_45EC = .text:0x000045EC; // type:function size:0x178 +fn_1_4764 = .text:0x00004764; // type:function size:0x80 +fn_1_47E4 = .text:0x000047E4; // type:function size:0x6C +fn_1_4850 = .text:0x00004850; // type:function size:0x94 +fn_1_48E4 = .text:0x000048E4; // type:function size:0x190 +fn_1_4A74 = .text:0x00004A74; // type:function size:0xF4 +fn_1_4B68 = .text:0x00004B68; // type:function size:0xB4 +fn_1_4C1C = .text:0x00004C1C; // type:function size:0xB4 +fn_1_4CD0 = .text:0x00004CD0; // type:function size:0x178 +fn_1_4E48 = .text:0x00004E48; // type:function size:0x10 +fn_1_4E58 = .text:0x00004E58; // type:function size:0x20 +fn_1_4E78 = .text:0x00004E78; // type:function size:0x14 +fn_1_4E8C = .text:0x00004E8C; // type:function size:0x14 +fn_1_4EA0 = .text:0x00004EA0; // type:function size:0xE0 +fn_1_4F80 = .text:0x00004F80; // type:function size:0x20 +fn_1_4FA0 = .text:0x00004FA0; // type:function size:0x1C +fn_1_4FBC = .text:0x00004FBC; // type:function size:0x310 +fn_1_52CC = .text:0x000052CC; // type:function size:0x18 +fn_1_52E4 = .text:0x000052E4; // type:function size:0x10 +fn_1_52F4 = .text:0x000052F4; // type:function size:0x10 +fn_1_5304 = .text:0x00005304; // type:function size:0x4C +fn_1_5350 = .text:0x00005350; // type:function size:0x134 +fn_1_5484 = .text:0x00005484; // type:function size:0xDC +fn_1_5560 = .text:0x00005560; // type:function size:0x44 +fn_1_55A4 = .text:0x000055A4; // type:function size:0x4C8 +fn_1_5A6C = .text:0x00005A6C; // type:function size:0x3C4 +fn_1_5E30 = .text:0x00005E30; // type:function size:0x70 +fn_1_5EA0 = .text:0x00005EA0; // type:function size:0x94 +fn_1_5F34 = .text:0x00005F34; // type:function size:0x44 +fn_1_5F78 = .text:0x00005F78; // type:function size:0x214 +fn_1_618C = .text:0x0000618C; // type:function size:0x2C0 +fn_1_644C = .text:0x0000644C; // type:function size:0x128 +_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:0x30 +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x78 +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x18 +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:wstring +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x20 +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x20 +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x19C +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x8 +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x14 +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x14 +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x14 +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x14 +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0xC data:4byte +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0xC data:4byte +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0xC data:4byte +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x48 +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string +lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1D +jumptable_1_data_38 = .data:0x00000038; // type:object size:0x38 scope:local +lbl_1_data_70 = .data:0x00000070; // type:object size:0x1C +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x1 data:byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x30 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x2 data:2byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x18 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0xC data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0xC data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x50 +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x550 data:4byte +lbl_1_bss_61C = .bss:0x0000061C; // type:object size:0x7C data:float +lbl_1_bss_698 = .bss:0x00000698; // type:object size:0x4C data:4byte +lbl_1_bss_6E4 = .bss:0x000006E4; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m460Dll/splits.txt b/config/GMPP01_00/rels/m460Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m460Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m460Dll/symbols.txt b/config/GMPP01_00/rels/m460Dll/symbols.txt new file mode 100644 index 00000000..2b961299 --- /dev/null +++ b/config/GMPP01_00/rels/m460Dll/symbols.txt @@ -0,0 +1,298 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x428 +fn_1_4C8 = .text:0x000004C8; // type:function size:0x128 +fn_1_5F0 = .text:0x000005F0; // type:function size:0x20C +fn_1_7FC = .text:0x000007FC; // type:function size:0x14C +fn_1_948 = .text:0x00000948; // type:function size:0x434 +fn_1_D7C = .text:0x00000D7C; // type:function size:0x470 +fn_1_11EC = .text:0x000011EC; // type:function size:0x35C +fn_1_1548 = .text:0x00001548; // type:function size:0x434 +fn_1_197C = .text:0x0000197C; // type:function size:0x6A0 +fn_1_201C = .text:0x0000201C; // type:function size:0x4D8 +fn_1_24F4 = .text:0x000024F4; // type:function size:0x70 +fn_1_2564 = .text:0x00002564; // type:function size:0x800 +fn_1_2D64 = .text:0x00002D64; // type:function size:0xC +fn_1_2D70 = .text:0x00002D70; // type:function size:0x55C +fn_1_32CC = .text:0x000032CC; // type:function size:0xB0 +fn_1_337C = .text:0x0000337C; // type:function size:0x274 +fn_1_35F0 = .text:0x000035F0; // type:function size:0x28 +fn_1_3618 = .text:0x00003618; // type:function size:0x5A8 +fn_1_3BC0 = .text:0x00003BC0; // type:function size:0x2A8 +fn_1_3E68 = .text:0x00003E68; // type:function size:0x14 +fn_1_3E7C = .text:0x00003E7C; // type:function size:0x14 +fn_1_3E90 = .text:0x00003E90; // type:function size:0x9C +fn_1_3F2C = .text:0x00003F2C; // type:function size:0x9C +fn_1_3FC8 = .text:0x00003FC8; // type:function size:0x68 +fn_1_4030 = .text:0x00004030; // type:function size:0x6C +fn_1_409C = .text:0x0000409C; // type:function size:0x98 +fn_1_4134 = .text:0x00004134; // type:function size:0x18 +fn_1_414C = .text:0x0000414C; // type:function size:0x18 +fn_1_4164 = .text:0x00004164; // type:function size:0x18 +fn_1_417C = .text:0x0000417C; // type:function size:0x18 +fn_1_4194 = .text:0x00004194; // type:function size:0x8 +fn_1_419C = .text:0x0000419C; // type:function size:0x18 +fn_1_41B4 = .text:0x000041B4; // type:function size:0x40 +fn_1_41F4 = .text:0x000041F4; // type:function size:0x30 +fn_1_4224 = .text:0x00004224; // type:function size:0x30 +fn_1_4254 = .text:0x00004254; // type:function size:0x30 +fn_1_4284 = .text:0x00004284; // type:function size:0x38 +fn_1_42BC = .text:0x000042BC; // type:function size:0x34 +fn_1_42F0 = .text:0x000042F0; // type:function size:0x18 +fn_1_4308 = .text:0x00004308; // type:function size:0x1C +fn_1_4324 = .text:0x00004324; // type:function size:0x18 +fn_1_433C = .text:0x0000433C; // type:function size:0x1C +fn_1_4358 = .text:0x00004358; // type:function size:0x18 +fn_1_4370 = .text:0x00004370; // type:function size:0x18 +fn_1_4388 = .text:0x00004388; // type:function size:0x208 +fn_1_4590 = .text:0x00004590; // type:function size:0x240 +fn_1_47D0 = .text:0x000047D0; // type:function size:0x11C +fn_1_48EC = .text:0x000048EC; // type:function size:0xB4 +fn_1_49A0 = .text:0x000049A0; // type:function size:0x244 +fn_1_4BE4 = .text:0x00004BE4; // type:function size:0x24 +fn_1_4C08 = .text:0x00004C08; // type:function size:0x364 +fn_1_4F6C = .text:0x00004F6C; // type:function size:0x1FC +fn_1_5168 = .text:0x00005168; // type:function size:0x484 +fn_1_55EC = .text:0x000055EC; // type:function size:0x1EC +fn_1_57D8 = .text:0x000057D8; // type:function size:0xF0 +fn_1_58C8 = .text:0x000058C8; // type:function size:0x14C +fn_1_5A14 = .text:0x00005A14; // type:function size:0x274 +fn_1_5C88 = .text:0x00005C88; // type:function size:0x58 +fn_1_5CE0 = .text:0x00005CE0; // type:function size:0x18C +fn_1_5E6C = .text:0x00005E6C; // type:function size:0x74 +fn_1_5EE0 = .text:0x00005EE0; // type:function size:0x1D0 +fn_1_60B0 = .text:0x000060B0; // type:function size:0x144 +fn_1_61F4 = .text:0x000061F4; // type:function size:0x5C0 +fn_1_67B4 = .text:0x000067B4; // type:function size:0x60 +fn_1_6814 = .text:0x00006814; // type:function size:0x4 +fn_1_6818 = .text:0x00006818; // type:function size:0x3E8 +fn_1_6C00 = .text:0x00006C00; // type:function size:0x7F8 +fn_1_73F8 = .text:0x000073F8; // type:function size:0x2CC +fn_1_76C4 = .text:0x000076C4; // type:function size:0x60 +fn_1_7724 = .text:0x00007724; // type:function size:0x6C +fn_1_7790 = .text:0x00007790; // type:function size:0x404 +fn_1_7B94 = .text:0x00007B94; // type:function size:0x214 +fn_1_7DA8 = .text:0x00007DA8; // type:function size:0xDF8 +fn_1_8BA0 = .text:0x00008BA0; // type:function size:0xD8 +fn_1_8C78 = .text:0x00008C78; // type:function size:0x34 +fn_1_8CAC = .text:0x00008CAC; // type:function size:0x28C +fn_1_8F38 = .text:0x00008F38; // type:function size:0x74 +fn_1_8FAC = .text:0x00008FAC; // type:function size:0x50 +fn_1_8FFC = .text:0x00008FFC; // type:function size:0x24 +fn_1_9020 = .text:0x00009020; // type:function size:0x30 +fn_1_9050 = .text:0x00009050; // type:function size:0x11C +fn_1_916C = .text:0x0000916C; // type:function size:0x78 +fn_1_91E4 = .text:0x000091E4; // type:function size:0x8C +fn_1_9270 = .text:0x00009270; // type:function size:0x164 +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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:4byte +lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x50 +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x14 data:4byte +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x10 data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x30 data:4byte +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x18 data:4byte +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x18 data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x8 data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x1 data:byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x1 data:byte +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0xC data:4byte +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 +lbl_1_data_94 = .data:0x00000094; // type:object size:0xC +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC +lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x1 data:byte +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x1A data:string +lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x1A +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x20 +lbl_1_data_110 = .data:0x00000110; // type:object size:0xA0 +jumptable_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 scope:local +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x14 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x100 +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x40 +lbl_1_data_328 = .data:0x00000328; // type:object size:0xC +lbl_1_data_334 = .data:0x00000334; // type:object size:0xC +lbl_1_data_340 = .data:0x00000340; // type:object size:0xC +lbl_1_data_34C = .data:0x0000034C; // type:object size:0x8 +lbl_1_data_354 = .data:0x00000354; // type:object size:0x8 +lbl_1_data_35C = .data:0x0000035C; // type:object size:0x7 data:string +lbl_1_data_363 = .data:0x00000363; // type:object size:0x9 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC +lbl_1_data_378 = .data:0x00000378; // type:object size:0x8 data:byte +lbl_1_data_380 = .data:0x00000380; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1A = .bss:0x0000001A; // type:object size:0x6 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x8 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m461Dll/splits.txt b/config/GMPP01_00/rels/m461Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m461Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m461Dll/symbols.txt b/config/GMPP01_00/rels/m461Dll/symbols.txt new file mode 100644 index 00000000..f3be51a3 --- /dev/null +++ b/config/GMPP01_00/rels/m461Dll/symbols.txt @@ -0,0 +1,223 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x204 +fn_1_784 = .text:0x00000784; // type:function size:0x240 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 +fn_1_A18 = .text:0x00000A18; // type:function size:0x10C +fn_1_B24 = .text:0x00000B24; // type:function size:0x680 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1300 = .text:0x00001300; // type:function size:0x8C +fn_1_138C = .text:0x0000138C; // type:function size:0x334 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C +fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_2364 = .text:0x00002364; // type:function size:0x64 +fn_1_23C8 = .text:0x000023C8; // type:function size:0xE0 +fn_1_24A8 = .text:0x000024A8; // type:function size:0x32C +fn_1_27D4 = .text:0x000027D4; // type:function size:0x3AC +fn_1_2B80 = .text:0x00002B80; // type:function size:0x30 +fn_1_2BB0 = .text:0x00002BB0; // type:function size:0x1C +fn_1_2BCC = .text:0x00002BCC; // type:function size:0x18C +fn_1_2D58 = .text:0x00002D58; // type:function size:0x8 +fn_1_2D60 = .text:0x00002D60; // type:function size:0x8 +fn_1_2D68 = .text:0x00002D68; // type:function size:0x8 +fn_1_2D70 = .text:0x00002D70; // type:function size:0x8 +fn_1_2D78 = .text:0x00002D78; // type:function size:0xC +fn_1_2D84 = .text:0x00002D84; // type:function size:0x60 +fn_1_2DE4 = .text:0x00002DE4; // type:function size:0xB90 +fn_1_3974 = .text:0x00003974; // type:function size:0x2B0 +fn_1_3C24 = .text:0x00003C24; // type:function size:0xD8 +fn_1_3CFC = .text:0x00003CFC; // type:function size:0x114 +fn_1_3E10 = .text:0x00003E10; // type:function size:0xB8 +fn_1_3EC8 = .text:0x00003EC8; // type:function size:0xA0 +fn_1_3F68 = .text:0x00003F68; // type:function size:0x9C +fn_1_4004 = .text:0x00004004; // type:function size:0xDC8 +fn_1_4DCC = .text:0x00004DCC; // type:function size:0x250 +fn_1_501C = .text:0x0000501C; // type:function size:0x10 +fn_1_502C = .text:0x0000502C; // type:function size:0x10 +_prolog = .text:0x0000503C; // type:function size:0x54 scope:global +_epilog = .text:0x00005090; // type:function size:0x4C scope:global +fn_1_50DC = .text:0x000050DC; // type:function size:0x308 +fn_1_53E4 = .text:0x000053E4; // type:function size:0xF0 +fn_1_54D4 = .text:0x000054D4; // type:function size:0x36C +fn_1_5840 = .text:0x00005840; // type:function size:0x1E8 +fn_1_5A28 = .text:0x00005A28; // type:function size:0x178 +fn_1_5BA0 = .text:0x00005BA0; // type:function size:0xE0C +fn_1_69AC = .text:0x000069AC; // type:function size:0x928 +fn_1_72D4 = .text:0x000072D4; // type:function size:0x288 +fn_1_755C = .text:0x0000755C; // type:function size:0x11C +fn_1_7678 = .text:0x00007678; // type:function size:0x40C +fn_1_7A84 = .text:0x00007A84; // type:function size:0x1230 +fn_1_8CB4 = .text:0x00008CB4; // type:function size:0x45C +fn_1_9110 = .text:0x00009110; // type:function size:0x408 +fn_1_9518 = .text:0x00009518; // type:function size:0x1B8 +fn_1_96D0 = .text:0x000096D0; // type:function size:0x130 +fn_1_9800 = .text:0x00009800; // type:function size:0x450 +fn_1_9C50 = .text:0x00009C50; // type:function size:0x248 +fn_1_9E98 = .text:0x00009E98; // type:function size:0xEE8 +fn_1_AD80 = .text:0x0000AD80; // type:function size:0x458 +fn_1_B1D8 = .text:0x0000B1D8; // type:function size:0x7F8 +fn_1_B9D0 = .text:0x0000B9D0; // type:function size:0xF14 +fn_1_C8E4 = .text:0x0000C8E4; // type:function size:0x240 +fn_1_CB24 = .text:0x0000CB24; // type:function size:0xB5C +fn_1_D680 = .text:0x0000D680; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 +lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC data:4byte +lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0xC data:4byte +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0xC data:4byte +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0xC +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xC data:4byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0xC +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0xC +lbl_1_data_100 = .data:0x00000100; // type:object size:0x4 +lbl_1_data_104 = .data:0x00000104; // type:object size:0xC +lbl_1_data_110 = .data:0x00000110; // type:object size:0xC +lbl_1_data_11C = .data:0x0000011C; // type:object size:0xC +lbl_1_data_128 = .data:0x00000128; // type:object size:0xA0 +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0xC +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x10 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xC +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x50 data:float +lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 +lbl_1_data_264 = .data:0x00000264; // type:object size:0xC data:4byte +lbl_1_data_270 = .data:0x00000270; // type:object size:0x80 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x30 +lbl_1_data_320 = .data:0x00000320; // type:object size:0x23 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0x9 data:string +lbl_1_data_34C = .data:0x0000034C; // type:object size:0x6 data:string +lbl_1_data_352 = .data:0x00000352; // type:object size:0x1D data:string +lbl_1_data_36F = .data:0x0000036F; // type:object size:0x1D data:string +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x1C +jumptable_1_data_3A8 = .data:0x000003A8; // type:object size:0x20 scope:local +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x10 +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x50 +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x100 +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x40 data:4byte +lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x4 data:float +lbl_1_bss_1F0 = .bss:0x000001F0; // type:object size:0x4 data:4byte +lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x4 data:4byte +lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0x2 data:2byte +lbl_1_bss_1FA = .bss:0x000001FA; // type:object size:0x2 data:2byte +lbl_1_bss_1FC = .bss:0x000001FC; // type:object size:0x4 data:4byte +lbl_1_bss_200 = .bss:0x00000200; // type:object size:0x4 data:4byte +lbl_1_bss_204 = .bss:0x00000204; // type:object size:0x4 data:4byte +lbl_1_bss_208 = .bss:0x00000208; // type:object size:0xC data:4byte +lbl_1_bss_214 = .bss:0x00000214; // type:object size:0xC data:4byte +lbl_1_bss_220 = .bss:0x00000220; // type:object size:0xC data:4byte +lbl_1_bss_22C = .bss:0x0000022C; // type:object size:0xC data:4byte +lbl_1_bss_238 = .bss:0x00000238; // type:object size:0x4 data:4byte +lbl_1_bss_23C = .bss:0x0000023C; // type:object size:0x18 data:4byte +lbl_1_bss_254 = .bss:0x00000254; // type:object size:0xC data:4byte diff --git a/config/GMPP01_00/rels/m462Dll/splits.txt b/config/GMPP01_00/rels/m462Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m462Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m462Dll/symbols.txt b/config/GMPP01_00/rels/m462Dll/symbols.txt new file mode 100644 index 00000000..8b39ae68 --- /dev/null +++ b/config/GMPP01_00/rels/m462Dll/symbols.txt @@ -0,0 +1,144 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x400 +fn_1_4A0 = .text:0x000004A0; // type:function size:0x1014 +fn_1_14B4 = .text:0x000014B4; // type:function size:0x80 +fn_1_1534 = .text:0x00001534; // type:function size:0x80 +fn_1_15B4 = .text:0x000015B4; // type:function size:0x80 +fn_1_1634 = .text:0x00001634; // type:function size:0xC4 +fn_1_16F8 = .text:0x000016F8; // type:function size:0x54 +fn_1_174C = .text:0x0000174C; // type:function size:0x54 +fn_1_17A0 = .text:0x000017A0; // type:function size:0xE0 +fn_1_1880 = .text:0x00001880; // type:function size:0x354 +fn_1_1BD4 = .text:0x00001BD4; // type:function size:0x23C +fn_1_1E10 = .text:0x00001E10; // type:function size:0x11CC +fn_1_2FDC = .text:0x00002FDC; // type:function size:0x14FC +fn_1_44D8 = .text:0x000044D8; // type:function size:0x16C +fn_1_4644 = .text:0x00004644; // type:function size:0x580 +fn_1_4BC4 = .text:0x00004BC4; // type:function size:0x894 +fn_1_5458 = .text:0x00005458; // type:function size:0x4F0 +fn_1_5948 = .text:0x00005948; // type:function size:0x498 +fn_1_5DE0 = .text:0x00005DE0; // type:function size:0x498 +fn_1_6278 = .text:0x00006278; // type:function size:0x74 +fn_1_62EC = .text:0x000062EC; // type:function size:0x7C +fn_1_6368 = .text:0x00006368; // type:function size:0x48 +fn_1_63B0 = .text:0x000063B0; // type:function size:0x48 +fn_1_63F8 = .text:0x000063F8; // type:function size:0x1D4 +fn_1_65CC = .text:0x000065CC; // type:function size:0x220 +fn_1_67EC = .text:0x000067EC; // type:function size:0x104 +fn_1_68F0 = .text:0x000068F0; // type:function size:0x70 +fn_1_6960 = .text:0x00006960; // type:function size:0x5C +fn_1_69BC = .text:0x000069BC; // type:function size:0x137C +fn_1_7D38 = .text:0x00007D38; // type:function size:0x4 +fn_1_7D3C = .text:0x00007D3C; // type:function size:0x60 +fn_1_7D9C = .text:0x00007D9C; // type:function size:0x3B4 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x60 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x30 data:float +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x3C +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x14 data:float +lbl_1_data_110 = .data:0x00000110; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0xC data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x48 data:float +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2D0 +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x98 data:float +lbl_1_bss_3D8 = .bss:0x000003D8; // type:object size:0x4 data:4byte +lbl_1_bss_3DC = .bss:0x000003DC; // type:object size:0x4 data:4byte +lbl_1_bss_3E0 = .bss:0x000003E0; // type:object size:0x4 data:4byte +lbl_1_bss_3E4 = .bss:0x000003E4; // type:object size:0x4 data:4byte +lbl_1_bss_3E8 = .bss:0x000003E8; // type:object size:0x2 data:2byte +lbl_1_bss_3EA = .bss:0x000003EA; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/m463Dll/splits.txt b/config/GMPP01_00/rels/m463Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/m463Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/m463Dll/symbols.txt b/config/GMPP01_00/rels/m463Dll/symbols.txt new file mode 100644 index 00000000..aad2e6b8 --- /dev/null +++ b/config/GMPP01_00/rels/m463Dll/symbols.txt @@ -0,0 +1,164 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x428 +fn_1_4C8 = .text:0x000004C8; // type:function size:0x2D9C +fn_1_3264 = .text:0x00003264; // type:function size:0x1210 +fn_1_4474 = .text:0x00004474; // type:function size:0x184 +fn_1_45F8 = .text:0x000045F8; // type:function size:0xDA4 +fn_1_539C = .text:0x0000539C; // type:function size:0x4B0 +fn_1_584C = .text:0x0000584C; // type:function size:0x854 +fn_1_60A0 = .text:0x000060A0; // type:function size:0x98 +fn_1_6138 = .text:0x00006138; // type:function size:0x460 +fn_1_6598 = .text:0x00006598; // type:function size:0x11C +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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:0x8 data:double +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:4byte +lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x94 +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:4byte +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x50 +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x70 +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x24 data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x24 data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x10 data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0xC data:4byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0xC data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x1 data:byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x24 +lbl_1_data_24 = .data:0x00000024; // type:object size:0x24 +lbl_1_data_48 = .data:0x00000048; // type:object size:0x24 +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x24 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x9 +lbl_1_data_BD = .data:0x000000BD; // type:object size:0xB +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x24 +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x24 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x24 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x18 data:float +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x2 data:2byte +lbl_1_data_14E = .data:0x0000014E; // type:object size:0x2 data:2byte +lbl_1_data_150 = .data:0x00000150; // type:object size:0x4 data:4byte +lbl_1_data_154 = .data:0x00000154; // type:object size:0x24 data:4byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x9 data:string +lbl_1_data_181 = .data:0x00000181; // type:object size:0x3 data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 data:4byte +jumptable_1_data_188 = .data:0x00000188; // type:object size:0x1C scope:local +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x10 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x4 data:4byte +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x4 data:float +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x4 data:float +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x4 data:float +jumptable_1_data_1C4 = .data:0x000001C4; // type:object size:0x20 scope:local +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x2C +lbl_1_data_210 = .data:0x00000210; // type:object size:0x19 data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x8 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x2D0 +lbl_1_bss_32C = .bss:0x0000032C; // type:object size:0x4 data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0x24 data:4byte +lbl_1_bss_354 = .bss:0x00000354; // type:object size:0x4 data:4byte +lbl_1_bss_358 = .bss:0x00000358; // type:object size:0x4 data:4byte +lbl_1_bss_35C = .bss:0x0000035C; // type:object size:0x1C0 data:4byte +lbl_1_bss_51C = .bss:0x0000051C; // type:object size:0x90 diff --git a/config/GMPP01_00/rels/mentDll/splits.txt b/config/GMPP01_00/rels/mentDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/mentDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/mentDll/symbols.txt b/config/GMPP01_00/rels/mentDll/symbols.txt new file mode 100644 index 00000000..8e7e77e2 --- /dev/null +++ b/config/GMPP01_00/rels/mentDll/symbols.txt @@ -0,0 +1,440 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +_prolog = .text:0x000000A4; // type:function size:0x54 scope:global +_epilog = .text:0x000000F8; // type:function size:0x4C scope:global +fn_1_144 = .text:0x00000144; // type:function size:0xC8 +fn_1_20C = .text:0x0000020C; // type:function size:0x28 +fn_1_234 = .text:0x00000234; // type:function size:0x20 +fn_1_254 = .text:0x00000254; // type:function size:0xD8 +fn_1_32C = .text:0x0000032C; // type:function size:0xC8 +fn_1_3F4 = .text:0x000003F4; // type:function size:0xBC +fn_1_4B0 = .text:0x000004B0; // type:function size:0x28 +fn_1_4D8 = .text:0x000004D8; // type:function size:0x20 +fn_1_4F8 = .text:0x000004F8; // type:function size:0x14 +fn_1_50C = .text:0x0000050C; // type:function size:0xDC +fn_1_5E8 = .text:0x000005E8; // type:function size:0xE8 +fn_1_6D0 = .text:0x000006D0; // type:function size:0x24 +fn_1_6F4 = .text:0x000006F4; // type:function size:0xA48 +fn_1_113C = .text:0x0000113C; // type:function size:0x2F8 +fn_1_1434 = .text:0x00001434; // type:function size:0x218 +fn_1_164C = .text:0x0000164C; // type:function size:0x60 +fn_1_16AC = .text:0x000016AC; // type:function size:0x68 +fn_1_1714 = .text:0x00001714; // type:function size:0x90 +fn_1_17A4 = .text:0x000017A4; // type:function size:0x134 +fn_1_18D8 = .text:0x000018D8; // type:function size:0x50 +fn_1_1928 = .text:0x00001928; // type:function size:0x40 +fn_1_1968 = .text:0x00001968; // type:function size:0xF4 +fn_1_1A5C = .text:0x00001A5C; // type:function size:0x37C +fn_1_1DD8 = .text:0x00001DD8; // type:function size:0x37C +fn_1_2154 = .text:0x00002154; // type:function size:0x1C4 +fn_1_2318 = .text:0x00002318; // type:function size:0x54 +fn_1_236C = .text:0x0000236C; // type:function size:0x3E4 +fn_1_2750 = .text:0x00002750; // type:function size:0xB8 +fn_1_2808 = .text:0x00002808; // type:function size:0x3C +fn_1_2844 = .text:0x00002844; // type:function size:0x120 +fn_1_2964 = .text:0x00002964; // type:function size:0x3C +fn_1_29A0 = .text:0x000029A0; // type:function size:0x44 +fn_1_29E4 = .text:0x000029E4; // type:function size:0x26C +fn_1_2C50 = .text:0x00002C50; // type:function size:0x26C +fn_1_2EBC = .text:0x00002EBC; // type:function size:0x27C +fn_1_3138 = .text:0x00003138; // type:function size:0x2B4 +fn_1_33EC = .text:0x000033EC; // type:function size:0x46C +fn_1_3858 = .text:0x00003858; // type:function size:0x454 +fn_1_3CAC = .text:0x00003CAC; // type:function size:0x48C +fn_1_4138 = .text:0x00004138; // type:function size:0x658 +fn_1_4790 = .text:0x00004790; // type:function size:0x4C4 +fn_1_4C54 = .text:0x00004C54; // type:function size:0x4FC +fn_1_5150 = .text:0x00005150; // type:function size:0x6C8 +fn_1_5818 = .text:0x00005818; // type:function size:0x188 +fn_1_59A0 = .text:0x000059A0; // type:function size:0x1B0 +fn_1_5B50 = .text:0x00005B50; // type:function size:0xB8 +fn_1_5C08 = .text:0x00005C08; // type:function size:0xD4 +fn_1_5CDC = .text:0x00005CDC; // type:function size:0x5C +fn_1_5D38 = .text:0x00005D38; // type:function size:0x7FC +fn_1_6534 = .text:0x00006534; // type:function size:0x58 +fn_1_658C = .text:0x0000658C; // type:function size:0x6C0 +fn_1_6C4C = .text:0x00006C4C; // type:function size:0x4D8 +fn_1_7124 = .text:0x00007124; // type:function size:0xF4 +fn_1_7218 = .text:0x00007218; // type:function size:0xEC +fn_1_7304 = .text:0x00007304; // type:function size:0x380 +fn_1_7684 = .text:0x00007684; // type:function size:0x13C +fn_1_77C0 = .text:0x000077C0; // type:function size:0x98 +fn_1_7858 = .text:0x00007858; // type:function size:0xA8 +fn_1_7900 = .text:0x00007900; // type:function size:0x114 +fn_1_7A14 = .text:0x00007A14; // type:function size:0x794 +fn_1_81A8 = .text:0x000081A8; // type:function size:0x30 +fn_1_81D8 = .text:0x000081D8; // type:function size:0x18 +fn_1_81F0 = .text:0x000081F0; // type:function size:0x5C +fn_1_824C = .text:0x0000824C; // type:function size:0x180 +fn_1_83CC = .text:0x000083CC; // type:function size:0x1FC +fn_1_85C8 = .text:0x000085C8; // type:function size:0x2DC +fn_1_88A4 = .text:0x000088A4; // type:function size:0x29C +fn_1_8B40 = .text:0x00008B40; // type:function size:0x28 +fn_1_8B68 = .text:0x00008B68; // type:function size:0x3DC +fn_1_8F44 = .text:0x00008F44; // type:function size:0x54 +fn_1_8F98 = .text:0x00008F98; // type:function size:0x20 +fn_1_8FB8 = .text:0x00008FB8; // type:function size:0x314 +fn_1_92CC = .text:0x000092CC; // type:function size:0x618 +fn_1_98E4 = .text:0x000098E4; // type:function size:0xC8 +fn_1_99AC = .text:0x000099AC; // type:function size:0x20 +fn_1_99CC = .text:0x000099CC; // type:function size:0x6D8 +fn_1_A0A4 = .text:0x0000A0A4; // type:function size:0x20 +fn_1_A0C4 = .text:0x0000A0C4; // type:function size:0x2D8 +fn_1_A39C = .text:0x0000A39C; // type:function size:0x20 +fn_1_A3BC = .text:0x0000A3BC; // type:function size:0x5D4 +fn_1_A990 = .text:0x0000A990; // type:function size:0x20 +fn_1_A9B0 = .text:0x0000A9B0; // type:function size:0x3C8 +fn_1_AD78 = .text:0x0000AD78; // type:function size:0x30C +fn_1_B084 = .text:0x0000B084; // type:function size:0x5D0 +fn_1_B654 = .text:0x0000B654; // type:function size:0xB20 +fn_1_C174 = .text:0x0000C174; // type:function size:0x1E0 +fn_1_C354 = .text:0x0000C354; // type:function size:0xEC +fn_1_C440 = .text:0x0000C440; // type:function size:0x78 +fn_1_C4B8 = .text:0x0000C4B8; // type:function size:0x62C +fn_1_CAE4 = .text:0x0000CAE4; // type:function size:0x288 +fn_1_CD6C = .text:0x0000CD6C; // type:function size:0x20 +fn_1_CD8C = .text:0x0000CD8C; // type:function size:0x200 +fn_1_CF8C = .text:0x0000CF8C; // type:function size:0x384 +fn_1_D310 = .text:0x0000D310; // type:function size:0x20 +fn_1_D330 = .text:0x0000D330; // type:function size:0x20 +fn_1_D350 = .text:0x0000D350; // type:function size:0x2E4 +fn_1_D634 = .text:0x0000D634; // type:function size:0x82C +fn_1_DE60 = .text:0x0000DE60; // type:function size:0x17C +fn_1_DFDC = .text:0x0000DFDC; // type:function size:0x268 +fn_1_E244 = .text:0x0000E244; // type:function size:0x70 +fn_1_E2B4 = .text:0x0000E2B4; // type:function size:0x148 +fn_1_E3FC = .text:0x0000E3FC; // type:function size:0x90 +fn_1_E48C = .text:0x0000E48C; // type:function size:0x1C8 +fn_1_E654 = .text:0x0000E654; // type:function size:0xC8 +fn_1_E71C = .text:0x0000E71C; // type:function size:0x158 +fn_1_E874 = .text:0x0000E874; // type:function size:0xFC8 +fn_1_F83C = .text:0x0000F83C; // type:function size:0x670 +fn_1_FEAC = .text:0x0000FEAC; // type:function size:0x388 +fn_1_10234 = .text:0x00010234; // type:function size:0x308 +fn_1_1053C = .text:0x0001053C; // type:function size:0x7C +fn_1_105B8 = .text:0x000105B8; // type:function size:0x39C +fn_1_10954 = .text:0x00010954; // type:function size:0x308 +fn_1_10C5C = .text:0x00010C5C; // type:function size:0x7C +fn_1_10CD8 = .text:0x00010CD8; // type:function size:0x39C +fn_1_11074 = .text:0x00011074; // type:function size:0x2F4 +fn_1_11368 = .text:0x00011368; // type:function size:0x138 +fn_1_114A0 = .text:0x000114A0; // type:function size:0x74 +fn_1_11514 = .text:0x00011514; // type:function size:0x1E0 +fn_1_116F4 = .text:0x000116F4; // type:function size:0x158 +fn_1_1184C = .text:0x0001184C; // type:function size:0xBC +fn_1_11908 = .text:0x00011908; // type:function size:0x1C8 +fn_1_11AD0 = .text:0x00011AD0; // type:function size:0x2D4 +fn_1_11DA4 = .text:0x00011DA4; // type:function size:0x434 +fn_1_121D8 = .text:0x000121D8; // type:function size:0x624 +fn_1_127FC = .text:0x000127FC; // type:function size:0x210 +fn_1_12A0C = .text:0x00012A0C; // type:function size:0x434 +fn_1_12E40 = .text:0x00012E40; // type:function size:0x508 +fn_1_13348 = .text:0x00013348; // type:function size:0x160 +fn_1_134A8 = .text:0x000134A8; // type:function size:0x1E4 +fn_1_1368C = .text:0x0001368C; // type:function size:0x64 +fn_1_136F0 = .text:0x000136F0; // type:function size:0xB4 +fn_1_137A4 = .text:0x000137A4; // type:function size:0x1CC +fn_1_13970 = .text:0x00013970; // type:function size:0x3F0 +fn_1_13D60 = .text:0x00013D60; // type:function size:0x8C +fn_1_13DEC = .text:0x00013DEC; // type:function size:0xF0 +fn_1_13EDC = .text:0x00013EDC; // type:function size:0x8C +fn_1_13F68 = .text:0x00013F68; // type:function size:0xF0 +fn_1_14058 = .text:0x00014058; // type:function size:0xF0 +fn_1_14148 = .text:0x00014148; // type:function size:0xF0 +fn_1_14238 = .text:0x00014238; // type:function size:0xF0 +fn_1_14328 = .text:0x00014328; // type:function size:0xF0 +fn_1_14418 = .text:0x00014418; // type:function size:0x2B8 +fn_1_146D0 = .text:0x000146D0; // type:function size:0xF0 +fn_1_147C0 = .text:0x000147C0; // type:function size:0xF0 +fn_1_148B0 = .text:0x000148B0; // type:function size:0xF0 +fn_1_149A0 = .text:0x000149A0; // type:function size:0x8C +fn_1_14A2C = .text:0x00014A2C; // type:function size:0x8C +fn_1_14AB8 = .text:0x00014AB8; // type:function size:0xF0 +fn_1_14BA8 = .text:0x00014BA8; // type:function size:0x138 +fn_1_14CE0 = .text:0x00014CE0; // type:function size:0x3B8 +fn_1_15098 = .text:0x00015098; // type:function size:0x120 +fn_1_151B8 = .text:0x000151B8; // type:function size:0x798 +fn_1_15950 = .text:0x00015950; // type:function size:0x364 +fn_1_15CB4 = .text:0x00015CB4; // type:function size:0x5EC +fn_1_162A0 = .text:0x000162A0; // type:function size:0x1EC +fn_1_1648C = .text:0x0001648C; // type:function size:0x6DC +fn_1_16B68 = .text:0x00016B68; // type:function size:0x894 +fn_1_173FC = .text:0x000173FC; // type:function size:0x518 +fn_1_17914 = .text:0x00017914; // type:function size:0xC8 +fn_1_179DC = .text:0x000179DC; // type:function size:0x2EC +fn_1_17CC8 = .text:0x00017CC8; // type:function size:0x454 +fn_1_1811C = .text:0x0001811C; // type:function size:0x3F0 +fn_1_1850C = .text:0x0001850C; // type:function size:0x220 +fn_1_1872C = .text:0x0001872C; // type:function size:0x5C +fn_1_18788 = .text:0x00018788; // type:function size:0x2CC +fn_1_18A54 = .text:0x00018A54; // type:function size:0x378 +fn_1_18DCC = .text:0x00018DCC; // type:function size:0x1A8 +fn_1_18F74 = .text:0x00018F74; // type:function size:0x174 +fn_1_190E8 = .text:0x000190E8; // type:function size:0xB38 +fn_1_19C20 = .text:0x00019C20; // type:function size:0x1D98 +fn_1_1B9B8 = .text:0x0001B9B8; // type:function size:0xA28 +fn_1_1C3E0 = .text:0x0001C3E0; // type:function size:0x120 +fn_1_1C500 = .text:0x0001C500; // type:function size:0xE0 +fn_1_1C5E0 = .text:0x0001C5E0; // type:function size:0x23C +fn_1_1C81C = .text:0x0001C81C; // type:function size:0x238 +fn_1_1CA54 = .text:0x0001CA54; // type:function size:0x3A0 +fn_1_1CDF4 = .text:0x0001CDF4; // type:function size:0x594 +fn_1_1D388 = .text:0x0001D388; // type:function size:0x9DC +fn_1_1DD64 = .text:0x0001DD64; // type:function size:0x70 +fn_1_1DDD4 = .text:0x0001DDD4; // type:function size:0x70 +fn_1_1DE44 = .text:0x0001DE44; // type:function size:0x1FC +fn_1_1E040 = .text:0x0001E040; // type:function size:0x250 +fn_1_1E290 = .text:0x0001E290; // type:function size:0x4A0 +fn_1_1E730 = .text:0x0001E730; // type:function size:0xD4C +fn_1_1F47C = .text:0x0001F47C; // type:function size:0xC8 +fn_1_1F544 = .text:0x0001F544; // type:function size:0x1B0 +fn_1_1F6F4 = .text:0x0001F6F4; // type:function size:0x1CC +fn_1_1F8C0 = .text:0x0001F8C0; // type:function size:0x220 +fn_1_1FAE0 = .text:0x0001FAE0; // type:function size:0x1B4 +fn_1_1FC94 = .text:0x0001FC94; // type:function size:0x144 +fn_1_1FDD8 = .text:0x0001FDD8; // type:function size:0x610 +fn_1_203E8 = .text:0x000203E8; // type:function size:0x260 +fn_1_20648 = .text:0x00020648; // type:function size:0x138 +fn_1_20780 = .text:0x00020780; // type:function size:0x130 +fn_1_208B0 = .text:0x000208B0; // type:function size:0x130 +fn_1_209E0 = .text:0x000209E0; // type:function size:0x5E0 +fn_1_20FC0 = .text:0x00020FC0; // type:function size:0x5F0 +fn_1_215B0 = .text:0x000215B0; // type:function size:0xED0 +fn_1_22480 = .text:0x00022480; // type:function size:0xE38 +fn_1_232B8 = .text:0x000232B8; // type:function size:0x60C +_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_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0xC data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0xC data:4byte +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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:0x1 data:byte +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x1C data:4byte +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0xC data:4byte +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x10 data:4byte +lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x18 data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0xC data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0xC data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0xC data:4byte +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_1_rodata_194 = .rodata:0x00000194; // type:object size:0x18 data:4byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0xC data:4byte +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0xC data:4byte +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0xC data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x1C data:4byte +lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x10 data:4byte +lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x18 data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0xC data:4byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0xC data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x1C data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0xC data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0xC data:4byte +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0xC data:4byte +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0xC data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC data:4byte +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x18 data:4byte +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x90 +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x18 data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x40 data:4byte +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x20 data:4byte +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x20 data:4byte +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0x4 data:4byte +lbl_1_data_74 = .data:0x00000074; // type:object size:0x22 data:string +lbl_1_data_96 = .data:0x00000096; // type:object size:0x1A data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x1A data:string +lbl_1_data_CA = .data:0x000000CA; // type:object size:0xE data:string +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x48 data:float +lbl_1_data_120 = .data:0x00000120; // type:object size:0x18 +jumptable_1_data_138 = .data:0x00000138; // type:object size:0x30 scope:local +lbl_1_data_168 = .data:0x00000168; // type:object size:0x16 data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x15 data:string +lbl_1_data_193 = .data:0x00000193; // type:object size:0x17 data:string +lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x16 data:string +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x17 data:string +lbl_1_data_1D7 = .data:0x000001D7; // type:object size:0x16 data:string +lbl_1_data_1ED = .data:0x000001ED; // type:object size:0x17 data:string +lbl_1_data_204 = .data:0x00000204; // type:object size:0x16 data:string +lbl_1_data_21A = .data:0x0000021A; // type:object size:0xF data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x1C data:string +lbl_1_data_245 = .data:0x00000245; // type:object size:0x1D data:string +lbl_1_data_262 = .data:0x00000262; // type:object size:0x14 data:string +lbl_1_data_276 = .data:0x00000276; // type:object size:0x15 data:string +lbl_1_data_28B = .data:0x0000028B; // type:object size:0x14 data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x15 +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3C +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x4 data:4byte +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 data:string +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 data:string +lbl_1_data_334 = .data:0x00000334; // type:object size:0x2A data:string +lbl_1_data_35E = .data:0x0000035E; // type:object size:0x3 data:string +lbl_1_data_361 = .data:0x00000361; // type:object size:0x1B data:string +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x1A data:string +lbl_1_data_396 = .data:0x00000396; // type:object size:0x29 data:string +lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x2A data:string +lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0x2A data:string +lbl_1_data_413 = .data:0x00000413; // type:object size:0x2B data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x29 data:string +lbl_1_data_467 = .data:0x00000467; // type:object size:0x2B data:string +lbl_1_data_492 = .data:0x00000492; // type:object size:0x20 data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x22 +jumptable_1_data_4D4 = .data:0x000004D4; // type:object size:0x54 scope:local +lbl_1_data_528 = .data:0x00000528; // type:object size:0x1B data:string +lbl_1_data_543 = .data:0x00000543; // type:object size:0x1A data:string +lbl_1_data_55D = .data:0x0000055D; // type:object size:0xF data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 data:string +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x40 +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x20 +lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x64 data:float +lbl_1_data_640 = .data:0x00000640; // type:object size:0x50 data:4byte +lbl_1_data_690 = .data:0x00000690; // type:object size:0x40 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x14 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x10 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x40 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x44 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x20 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x15E0 +lbl_1_bss_16C4 = .bss:0x000016C4; // type:object size:0x1A40 +lbl_1_bss_3104 = .bss:0x00003104; // type:object size:0x4 data:4byte +lbl_1_bss_3108 = .bss:0x00003108; // type:object size:0xC data:4byte +lbl_1_bss_3114 = .bss:0x00003114; // type:object size:0x240 data:4byte +lbl_1_bss_3354 = .bss:0x00003354; // type:object size:0x58 data:4byte +lbl_1_bss_33AC = .bss:0x000033AC; // type:object size:0x210 data:4byte +lbl_1_bss_35BC = .bss:0x000035BC; // type:object size:0xB0 data:4byte +lbl_1_bss_366C = .bss:0x0000366C; // type:object size:0x58 data:4byte diff --git a/config/GMPP01_00/rels/messDll/splits.txt b/config/GMPP01_00/rels/messDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/messDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/messDll/symbols.txt b/config/GMPP01_00/rels/messDll/symbols.txt new file mode 100644 index 00000000..2c96428e --- /dev/null +++ b/config/GMPP01_00/rels/messDll/symbols.txt @@ -0,0 +1,113 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x22C +fn_1_2CC = .text:0x000002CC; // type:function size:0x44 +fn_1_310 = .text:0x00000310; // type:function size:0xB88 +fn_1_E98 = .text:0x00000E98; // type:function size:0x2EC +fn_1_1184 = .text:0x00001184; // type:function size:0x158 +fn_1_12DC = .text:0x000012DC; // type:function size:0x310 +_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_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x22 data:string +lbl_1_data_22 = .data:0x00000022; // type:object size:0x16 data:string +lbl_1_data_38 = .data:0x00000038; // type:object size:0x11 data:string +lbl_1_data_49 = .data:0x00000049; // type:object size:0xD data:string +lbl_1_data_56 = .data:0x00000056; // type:object size:0xD data:string +lbl_1_data_63 = .data:0x00000063; // type:object size:0xB data:string +lbl_1_data_6E = .data:0x0000006E; // type:object size:0xF data:string +lbl_1_data_7D = .data:0x0000007D; // type:object size:0xE data:string +lbl_1_data_8B = .data:0x0000008B; // type:object size:0xE data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0xD data:string +lbl_1_data_A6 = .data:0x000000A6; // type:object size:0x9 data:string +lbl_1_data_AF = .data:0x000000AF; // type:object size:0xE data:string +lbl_1_data_BD = .data:0x000000BD; // type:object size:0xF data:string +lbl_1_data_CC = .data:0x000000CC; // type:object size:0xB data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x12 data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0xA data:string +lbl_1_data_F3 = .data:0x000000F3; // type:object size:0xD data:string +lbl_1_data_100 = .data:0x00000100; // type:object size:0xB data:string +lbl_1_data_10B = .data:0x0000010B; // type:object size:0xF data:string +lbl_1_data_11A = .data:0x0000011A; // type:object size:0x9 data:string +lbl_1_data_123 = .data:0x00000123; // type:object size:0xF data:string +lbl_1_data_132 = .data:0x00000132; // type:object size:0x13 data:string +lbl_1_data_145 = .data:0x00000145; // type:object size:0xF data:string +lbl_1_data_154 = .data:0x00000154; // type:object size:0xF data:string +lbl_1_data_163 = .data:0x00000163; // type:object size:0x12 data:string +lbl_1_data_175 = .data:0x00000175; // type:object size:0xB data:string +lbl_1_data_180 = .data:0x00000180; // type:object size:0xD data:string +lbl_1_data_18D = .data:0x0000018D; // type:object size:0xF data:string +lbl_1_data_19C = .data:0x0000019C; // type:object size:0xA data:string +lbl_1_data_1A6 = .data:0x000001A6; // type:object size:0xC data:string +lbl_1_data_1B2 = .data:0x000001B2; // type:object size:0xD data:string +lbl_1_data_1BF = .data:0x000001BF; // type:object size:0xF data:string +lbl_1_data_1CE = .data:0x000001CE; // type:object size:0x11 data:string +lbl_1_data_1DF = .data:0x000001DF; // type:object size:0xF data:string +lbl_1_data_1EE = .data:0x000001EE; // type:object size:0xC data:string +lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xC data:string +lbl_1_data_206 = .data:0x00000206; // type:object size:0x8 data:string +lbl_1_data_20E = .data:0x0000020E; // type:object size:0x11 data:string +lbl_1_data_21F = .data:0x0000021F; // type:object size:0x11 data:string +lbl_1_data_230 = .data:0x00000230; // type:object size:0x12 data:string +lbl_1_data_242 = .data:0x00000242; // type:object size:0xF data:string +lbl_1_data_251 = .data:0x00000251; // type:object size:0xC data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0xB data:string +lbl_1_data_268 = .data:0x00000268; // type:object size:0xB data:string +lbl_1_data_273 = .data:0x00000273; // type:object size:0xB data:string +lbl_1_data_27E = .data:0x0000027E; // type:object size:0xB data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0xB data:string +lbl_1_data_294 = .data:0x00000294; // type:object size:0xD data:string +lbl_1_data_2A1 = .data:0x000002A1; // type:object size:0x11 data:string +lbl_1_data_2B2 = .data:0x000002B2; // type:object size:0xF data:string +lbl_1_data_2C1 = .data:0x000002C1; // type:object size:0xC data:string +lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x11 data:string +lbl_1_data_2DE = .data:0x000002DE; // type:object size:0xF data:string +lbl_1_data_2ED = .data:0x000002ED; // type:object size:0xF data:string +lbl_1_data_2FC = .data:0x000002FC; // type:object size:0xF data:string +lbl_1_data_30B = .data:0x0000030B; // type:object size:0x11 data:string +lbl_1_data_31C = .data:0x0000031C; // type:object size:0x10 +lbl_1_data_32C = .data:0x0000032C; // type:object size:0xE4 +lbl_1_data_410 = .data:0x00000410; // type:object size:0x8 data:string +lbl_1_data_418 = .data:0x00000418; // type:object size:0x8 data:string +lbl_1_data_420 = .data:0x00000420; // type:object size:0x7 data:string +lbl_1_data_427 = .data:0x00000427; // type:object size:0x6 data:string +lbl_1_data_42D = .data:0x0000042D; // type:object size:0xB +lbl_1_data_438 = .data:0x00000438; // type:object size:0x14 data:4byte +lbl_1_data_44C = .data:0x0000044C; // type:object size:0x2 data:2byte +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x6 +lbl_1_data_454 = .data:0x00000454; // type:object size:0x5 data:string +lbl_1_data_459 = .data:0x00000459; // type:object size:0x4 data:string +lbl_1_data_45D = .data:0x0000045D; // type:object size:0x4 data:string +lbl_1_data_461 = .data:0x00000461; // type:object size:0x4 data:string +lbl_1_data_465 = .data:0x00000465; // type:object size:0x4 data:string +lbl_1_data_469 = .data:0x00000469; // type:object size:0x4 data:string +lbl_1_data_46D = .data:0x0000046D; // type:object size:0x4 data:string +lbl_1_data_471 = .data:0x00000471; // type:object size:0x4 data:string +lbl_1_data_475 = .data:0x00000475; // type:object size:0x7 +lbl_1_data_47C = .data:0x0000047C; // type:object size:0x20 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x24 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/mgmodedll/splits.txt b/config/GMPP01_00/rels/mgmodedll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/mgmodedll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/mgmodedll/symbols.txt b/config/GMPP01_00/rels/mgmodedll/symbols.txt new file mode 100644 index 00000000..ec6ed6c9 --- /dev/null +++ b/config/GMPP01_00/rels/mgmodedll/symbols.txt @@ -0,0 +1,584 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3C4 +fn_1_464 = .text:0x00000464; // type:function size:0x294 +fn_1_6F8 = .text:0x000006F8; // type:function size:0x6F8 +fn_1_DF0 = .text:0x00000DF0; // type:function size:0xD1C +fn_1_1B0C = .text:0x00001B0C; // type:function size:0x6B8 +fn_1_21C4 = .text:0x000021C4; // type:function size:0x77C +fn_1_2940 = .text:0x00002940; // type:function size:0x810 +fn_1_3150 = .text:0x00003150; // type:function size:0x788 +fn_1_38D8 = .text:0x000038D8; // type:function size:0x738 +fn_1_4010 = .text:0x00004010; // type:function size:0x86C +fn_1_487C = .text:0x0000487C; // type:function size:0x260 +fn_1_4ADC = .text:0x00004ADC; // type:function size:0x800 +fn_1_52DC = .text:0x000052DC; // type:function size:0x220 +fn_1_54FC = .text:0x000054FC; // type:function size:0xCC +fn_1_55C8 = .text:0x000055C8; // type:function size:0x3B4 +fn_1_597C = .text:0x0000597C; // type:function size:0xC78 +fn_1_65F4 = .text:0x000065F4; // type:function size:0xC4 +fn_1_66B8 = .text:0x000066B8; // type:function size:0x2C4 +fn_1_697C = .text:0x0000697C; // type:function size:0x90 +fn_1_6A0C = .text:0x00006A0C; // type:function size:0xEC +fn_1_6AF8 = .text:0x00006AF8; // type:function size:0x128 +fn_1_6C20 = .text:0x00006C20; // type:function size:0x110 +fn_1_6D30 = .text:0x00006D30; // type:function size:0x31FC +fn_1_9F2C = .text:0x00009F2C; // type:function size:0x120 +fn_1_A04C = .text:0x0000A04C; // type:function size:0x400 +fn_1_A44C = .text:0x0000A44C; // type:function size:0x2C0 +fn_1_A70C = .text:0x0000A70C; // type:function size:0x84 +fn_1_A790 = .text:0x0000A790; // type:function size:0x604 +fn_1_AD94 = .text:0x0000AD94; // type:function size:0xF4 +fn_1_AE88 = .text:0x0000AE88; // type:function size:0x80 +fn_1_AF08 = .text:0x0000AF08; // type:function size:0xB0 +fn_1_AFB8 = .text:0x0000AFB8; // type:function size:0x6D8 +fn_1_B690 = .text:0x0000B690; // type:function size:0x1C8 +fn_1_B858 = .text:0x0000B858; // type:function size:0x248 +fn_1_BAA0 = .text:0x0000BAA0; // type:function size:0x16C +fn_1_BC0C = .text:0x0000BC0C; // type:function size:0x47C +fn_1_C088 = .text:0x0000C088; // type:function size:0x128 +fn_1_C1B0 = .text:0x0000C1B0; // type:function size:0x1808 +fn_1_D9B8 = .text:0x0000D9B8; // type:function size:0x56C +fn_1_DF24 = .text:0x0000DF24; // type:function size:0x17C +fn_1_E0A0 = .text:0x0000E0A0; // type:function size:0x74 +fn_1_E114 = .text:0x0000E114; // type:function size:0x6F8 +fn_1_E80C = .text:0x0000E80C; // type:function size:0x18F8 +fn_1_10104 = .text:0x00010104; // type:function size:0x608 +fn_1_1070C = .text:0x0001070C; // type:function size:0xD38 +fn_1_11444 = .text:0x00011444; // type:function size:0xBCC +fn_1_12010 = .text:0x00012010; // type:function size:0x3C4 +fn_1_123D4 = .text:0x000123D4; // type:function size:0x938 +fn_1_12D0C = .text:0x00012D0C; // type:function size:0x88 +fn_1_12D94 = .text:0x00012D94; // type:function size:0x82C +fn_1_135C0 = .text:0x000135C0; // type:function size:0x18E4 +fn_1_14EA4 = .text:0x00014EA4; // type:function size:0x119C +fn_1_16040 = .text:0x00016040; // type:function size:0x5A0 +fn_1_165E0 = .text:0x000165E0; // type:function size:0x6F8 +fn_1_16CD8 = .text:0x00016CD8; // type:function size:0xF2C +fn_1_17C04 = .text:0x00017C04; // type:function size:0x184 +fn_1_17D88 = .text:0x00017D88; // type:function size:0x1218 +fn_1_18FA0 = .text:0x00018FA0; // type:function size:0x220 +fn_1_191C0 = .text:0x000191C0; // type:function size:0x4B0 +fn_1_19670 = .text:0x00019670; // type:function size:0x568 +fn_1_19BD8 = .text:0x00019BD8; // type:function size:0x15C +fn_1_19D34 = .text:0x00019D34; // type:function size:0x174 +fn_1_19EA8 = .text:0x00019EA8; // type:function size:0x194 +fn_1_1A03C = .text:0x0001A03C; // type:function size:0xC8 +fn_1_1A104 = .text:0x0001A104; // type:function size:0x608 +fn_1_1A70C = .text:0x0001A70C; // type:function size:0x13C +fn_1_1A848 = .text:0x0001A848; // type:function size:0x248 +fn_1_1AA90 = .text:0x0001AA90; // type:function size:0x140 +fn_1_1ABD0 = .text:0x0001ABD0; // type:function size:0x130 +fn_1_1AD00 = .text:0x0001AD00; // type:function size:0x130 +fn_1_1AE30 = .text:0x0001AE30; // type:function size:0x5D8 +fn_1_1B408 = .text:0x0001B408; // type:function size:0xA8C +fn_1_1BE94 = .text:0x0001BE94; // type:function size:0x1E0 +fn_1_1C074 = .text:0x0001C074; // type:function size:0x1D0 +fn_1_1C244 = .text:0x0001C244; // type:function size:0xAB0 +fn_1_1CCF4 = .text:0x0001CCF4; // type:function size:0x364 +fn_1_1D058 = .text:0x0001D058; // type:function size:0x5EC +fn_1_1D644 = .text:0x0001D644; // type:function size:0x1EC +fn_1_1D830 = .text:0x0001D830; // type:function size:0x6EC +fn_1_1DF1C = .text:0x0001DF1C; // type:function size:0x894 +fn_1_1E7B0 = .text:0x0001E7B0; // type:function size:0x518 +fn_1_1ECC8 = .text:0x0001ECC8; // type:function size:0xD8 +fn_1_1EDA0 = .text:0x0001EDA0; // type:function size:0x138 +fn_1_1EED8 = .text:0x0001EED8; // type:function size:0x138 +fn_1_1F010 = .text:0x0001F010; // type:function size:0x4D4 +fn_1_1F4E4 = .text:0x0001F4E4; // type:function size:0x790 +fn_1_1FC74 = .text:0x0001FC74; // type:function size:0x188 +fn_1_1FDFC = .text:0x0001FDFC; // type:function size:0xAE4 +fn_1_208E0 = .text:0x000208E0; // type:function size:0x248 +fn_1_20B28 = .text:0x00020B28; // type:function size:0x514 +fn_1_2103C = .text:0x0002103C; // type:function size:0x150 +fn_1_2118C = .text:0x0002118C; // type:function size:0x1E0 +fn_1_2136C = .text:0x0002136C; // type:function size:0x2F0 +fn_1_2165C = .text:0x0002165C; // type:function size:0x830 +fn_1_21E8C = .text:0x00021E8C; // type:function size:0x5F8 +fn_1_22484 = .text:0x00022484; // type:function size:0x4AC +fn_1_22930 = .text:0x00022930; // type:function size:0x4F0 +fn_1_22E20 = .text:0x00022E20; // type:function size:0x5E8 +fn_1_23408 = .text:0x00023408; // type:function size:0xEF4 +fn_1_242FC = .text:0x000242FC; // type:function size:0x28 +fn_1_24324 = .text:0x00024324; // type:function size:0x20 +fn_1_24344 = .text:0x00024344; // type:function size:0xD8 +fn_1_2441C = .text:0x0002441C; // type:function size:0xC8 +fn_1_244E4 = .text:0x000244E4; // type:function size:0xBC +fn_1_245A0 = .text:0x000245A0; // type:function size:0x28 +fn_1_245C8 = .text:0x000245C8; // type:function size:0x20 +fn_1_245E8 = .text:0x000245E8; // type:function size:0x14 +fn_1_245FC = .text:0x000245FC; // type:function size:0xDC +fn_1_246D8 = .text:0x000246D8; // type:function size:0xE8 +fn_1_247C0 = .text:0x000247C0; // type:function size:0x24 +fn_1_247E4 = .text:0x000247E4; // type:function size:0xA48 +fn_1_2522C = .text:0x0002522C; // type:function size:0x2F8 +fn_1_25524 = .text:0x00025524; // type:function size:0x218 +fn_1_2573C = .text:0x0002573C; // type:function size:0x60 +fn_1_2579C = .text:0x0002579C; // type:function size:0x68 +fn_1_25804 = .text:0x00025804; // type:function size:0x90 +fn_1_25894 = .text:0x00025894; // type:function size:0x134 +fn_1_259C8 = .text:0x000259C8; // type:function size:0x48 +fn_1_25A10 = .text:0x00025A10; // type:function size:0x40 +fn_1_25A50 = .text:0x00025A50; // type:function size:0xF4 +fn_1_25B44 = .text:0x00025B44; // type:function size:0x37C +fn_1_25EC0 = .text:0x00025EC0; // type:function size:0x1CC +fn_1_2608C = .text:0x0002608C; // type:function size:0x54 +fn_1_260E0 = .text:0x000260E0; // type:function size:0x13C +fn_1_2621C = .text:0x0002621C; // type:function size:0x78C +fn_1_269A8 = .text:0x000269A8; // type:function size:0x58 +fn_1_26A00 = .text:0x00026A00; // type:function size:0x290 +fn_1_26C90 = .text:0x00026C90; // type:function size:0x138 +fn_1_26DC8 = .text:0x00026DC8; // type:function size:0x78 +fn_1_26E40 = .text:0x00026E40; // type:function size:0x2C +fn_1_26E6C = .text:0x00026E6C; // type:function size:0x42C +fn_1_27298 = .text:0x00027298; // type:function size:0x134 +fn_1_273CC = .text:0x000273CC; // type:function size:0x264 +fn_1_27630 = .text:0x00027630; // type:function size:0x424 +fn_1_27A54 = .text:0x00027A54; // type:function size:0x1C0 +fn_1_27C14 = .text:0x00027C14; // type:function size:0x210 +fn_1_27E24 = .text:0x00027E24; // type:function size:0xE4 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0xC data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0xC data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0xC data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0xC data:4byte +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x8 data:double +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float +lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0xC data:4byte +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0xC data:4byte +lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0xC data:4byte +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x4 data:float +lbl_1_rodata_6F4 = .rodata:0x000006F4; // type:object size:0x4 data:float +lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float +lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0x4 data:float +lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x4 data:float +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 data:double +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float +lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float +lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x8 data:double +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 data:double +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x8 data:double +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 data:float +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x8 data:double +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x8 data:double +lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x4 data:float +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x8 data:double +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x4 data:float +lbl_1_rodata_78C = .rodata:0x0000078C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1C +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x24 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x30 data:4byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0x16 data:string +lbl_1_data_86 = .data:0x00000086; // type:object size:0x6 +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x10 +lbl_1_data_9C = .data:0x0000009C; // type:object size:0x4 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA data:string +lbl_1_data_AA = .data:0x000000AA; // type:object size:0x6 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x2 data:2byte +lbl_1_data_B2 = .data:0x000000B2; // type:object size:0xE +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x10 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x6 +lbl_1_data_E6 = .data:0x000000E6; // type:object size:0xA +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x20 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x10 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x10 +lbl_1_data_130 = .data:0x00000130; // type:object size:0x28 +lbl_1_data_158 = .data:0x00000158; // type:object size:0x2 data:2byte +lbl_1_data_15A = .data:0x0000015A; // type:object size:0x8 +lbl_1_data_162 = .data:0x00000162; // type:object size:0x16 +lbl_1_data_178 = .data:0x00000178; // type:object size:0x2 data:2byte +lbl_1_data_17A = .data:0x0000017A; // type:object size:0x32 +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x10 +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x10 +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0xA data:string +lbl_1_data_1D6 = .data:0x000001D6; // type:object size:0xE data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x10 +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 data:string +lbl_1_data_218 = .data:0x00000218; // type:object size:0x26 data:string +lbl_1_data_23E = .data:0x0000023E; // type:object size:0x27 data:string +lbl_1_data_265 = .data:0x00000265; // type:object size:0x1C data:string +lbl_1_data_281 = .data:0x00000281; // type:object size:0x1B data:string +lbl_1_data_29C = .data:0x0000029C; // type:object size:0x1C data:string +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x1D data:string +lbl_1_data_2D5 = .data:0x000002D5; // type:object size:0xC data:string +lbl_1_data_2E1 = .data:0x000002E1; // type:object size:0x1A data:string +lbl_1_data_2FB = .data:0x000002FB; // type:object size:0x1A data:string +lbl_1_data_315 = .data:0x00000315; // type:object size:0x27 +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x40 data:4byte +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x60 +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x18 data:4byte +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x64 +lbl_1_data_458 = .data:0x00000458; // type:object size:0x40 +lbl_1_data_498 = .data:0x00000498; // type:object size:0x8 data:4byte +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x2D8 +lbl_1_data_778 = .data:0x00000778; // type:object size:0x258 +lbl_1_data_9D0 = .data:0x000009D0; // type:object size:0x20 +lbl_1_data_9F0 = .data:0x000009F0; // type:object size:0x20 +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x2 data:2byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x264 data:4byte +lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x8 data:float +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x18 data:4byte +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x18 data:4byte +lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x2 data:2byte +lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0xA data:2byte +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:float +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xC data:4byte +lbl_1_bss_2C0 = .bss:0x000002C0; // type:object size:0xC data:4byte +lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x2 data:2byte +lbl_1_bss_2CE = .bss:0x000002CE; // type:object size:0x2 data:2byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x8 data:4byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x4 data:4byte +lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x6 +lbl_1_bss_2E2 = .bss:0x000002E2; // type:object size:0x2 data:2byte +lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0x2 data:2byte +lbl_1_bss_2E6 = .bss:0x000002E6; // type:object size:0x2 data:2byte +lbl_1_bss_2E8 = .bss:0x000002E8; // type:object size:0x4 data:float +lbl_1_bss_2EC = .bss:0x000002EC; // type:object size:0x2 data:2byte +lbl_1_bss_2EE = .bss:0x000002EE; // type:object size:0x2 data:2byte +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x2 data:2byte +lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x18 +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0x2 data:2byte +lbl_1_bss_30E = .bss:0x0000030E; // type:object size:0x8 +lbl_1_bss_316 = .bss:0x00000316; // type:object size:0x2 data:2byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x28 data:2byte +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x8 +lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte +lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x8 data:2byte +lbl_1_bss_352 = .bss:0x00000352; // type:object size:0x1E +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC +lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC +lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte +lbl_1_bss_38A = .bss:0x0000038A; // type:object size:0x2 data:2byte +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x8 +lbl_1_bss_394 = .bss:0x00000394; // type:object size:0x2 data:2byte +lbl_1_bss_396 = .bss:0x00000396; // type:object size:0xA +lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x4 data:4byte +lbl_1_bss_3A4 = .bss:0x000003A4; // type:object size:0x2 data:2byte +lbl_1_bss_3A8 = .bss:0x000003A8; // type:object size:0x2 data:2byte +lbl_1_bss_3AA = .bss:0x000003AA; // type:object size:0x2 data:2byte +lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x2 data:2byte +lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x2 data:2byte +lbl_1_bss_3B4 = .bss:0x000003B4; // type:object size:0x2 data:2byte +lbl_1_bss_3B8 = .bss:0x000003B8; // type:object size:0x8 data:2byte +lbl_1_bss_3C0 = .bss:0x000003C0; // type:object size:0x4 data:4byte +lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x4 data:4byte +lbl_1_bss_3C8 = .bss:0x000003C8; // type:object size:0x4 data:4byte +lbl_1_bss_3CC = .bss:0x000003CC; // type:object size:0x1A40 +lbl_1_bss_1E0C = .bss:0x00001E0C; // type:object size:0x4 data:4byte +lbl_1_bss_1E10 = .bss:0x00001E10; // type:object size:0x240 data:4byte +lbl_1_bss_2050 = .bss:0x00002050; // type:object size:0x5A +lbl_1_bss_20AA = .bss:0x000020AA; // type:object size:0x2 data:2byte +lbl_1_bss_20AC = .bss:0x000020AC; // type:object size:0x14 data:2byte +lbl_1_bss_20C0 = .bss:0x000020C0; // type:object size:0x578 +lbl_1_bss_2638 = .bss:0x00002638; // type:object size:0x14 data:2byte +lbl_1_bss_264C = .bss:0x0000264C; // type:object size:0x578 +lbl_1_bss_2BC4 = .bss:0x00002BC4; // type:object size:0x50 +lbl_1_bss_2C14 = .bss:0x00002C14; // type:object size:0x8 +lbl_1_bss_2C1C = .bss:0x00002C1C; // type:object size:0x8 +lbl_1_bss_2C24 = .bss:0x00002C24; // type:object size:0x8 +lbl_1_bss_2C2C = .bss:0x00002C2C; // type:object size:0x3A data:2byte +lbl_1_bss_2C66 = .bss:0x00002C66; // type:object size:0x1A data:2byte +lbl_1_bss_2C80 = .bss:0x00002C80; // type:object size:0x1A data:2byte diff --git a/config/GMPP01_00/rels/modeltestDll/splits.txt b/config/GMPP01_00/rels/modeltestDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/modeltestDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/modeltestDll/symbols.txt b/config/GMPP01_00/rels/modeltestDll/symbols.txt new file mode 100644 index 00000000..3c87f506 --- /dev/null +++ b/config/GMPP01_00/rels/modeltestDll/symbols.txt @@ -0,0 +1,230 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x1FC +fn_1_29C = .text:0x0000029C; // type:function size:0xC9C +fn_1_F38 = .text:0x00000F38; // type:function size:0x64 +fn_1_F9C = .text:0x00000F9C; // type:function size:0x1158 +fn_1_20F4 = .text:0x000020F4; // type:function size:0x804 +fn_1_28F8 = .text:0x000028F8; // type:function size:0x204 +fn_1_2AFC = .text:0x00002AFC; // type:function size:0x6C +fn_1_2B68 = .text:0x00002B68; // type:function size:0x948 +fn_1_34B0 = .text:0x000034B0; // type:function size:0x32C +fn_1_37DC = .text:0x000037DC; // type:function size:0xBC0 +fn_1_439C = .text:0x0000439C; // type:function size:0x354 +fn_1_46F0 = .text:0x000046F0; // type:function size:0x3D8 +fn_1_4AC8 = .text:0x00004AC8; // type:function size:0x330 +fn_1_4DF8 = .text:0x00004DF8; // type:function size:0xC68 +fn_1_5A60 = .text:0x00005A60; // type:function size:0x348 +fn_1_5DA8 = .text:0x00005DA8; // type:function size:0xC20 +fn_1_69C8 = .text:0x000069C8; // type:function size:0x118 +fn_1_6AE0 = .text:0x00006AE0; // type:function size:0x166C +fn_1_814C = .text:0x0000814C; // type:function size:0x17C +fn_1_82C8 = .text:0x000082C8; // type:function size:0xEC +fn_1_83B4 = .text:0x000083B4; // type:function size:0x304 +_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:0xC data:4byte +lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0xC data:4byte +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x10 data:2byte +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +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_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0xC data:4byte +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0xC data:4byte +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0xC data:4byte +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0xC data:4byte +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_214 = .rodata:0x00000214; // 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:0x8 data:double +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_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0xC data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0xC data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 data:4byte +lbl_1_data_20 = .data:0x00000020; // type:object size:0x28 data:string +lbl_1_data_48 = .data:0x00000048; // type:object size:0x9 data:string +lbl_1_data_51 = .data:0x00000051; // type:object size:0x9 data:string +lbl_1_data_5A = .data:0x0000005A; // type:object size:0x9 data:string +lbl_1_data_63 = .data:0x00000063; // type:object size:0x9 data:string +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x9 data:string +lbl_1_data_75 = .data:0x00000075; // type:object size:0x9 data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0x9 data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x9 data:string +lbl_1_data_90 = .data:0x00000090; // type:object size:0x9 data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x9 data:string +lbl_1_data_A2 = .data:0x000000A2; // type:object size:0x9 data:string +lbl_1_data_AB = .data:0x000000AB; // type:object size:0x9 data:string +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x9 data:string +lbl_1_data_BD = .data:0x000000BD; // type:object size:0x9 data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x9 data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0x9 data:string +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x40 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x50 data:float +lbl_1_data_168 = .data:0x00000168; // type:object size:0xA0 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x50 +lbl_1_data_258 = .data:0x00000258; // type:object size:0x50 +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x1A data:string +lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x16 +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x10 data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x4 data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x2C data:string +lbl_1_data_318 = .data:0x00000318; // type:object size:0x40 +lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 +lbl_1_data_360 = .data:0x00000360; // type:object size:0x28 data:string +lbl_1_data_388 = .data:0x00000388; // type:object size:0x28 data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x58 +lbl_1_data_408 = .data:0x00000408; // type:object size:0x58 +lbl_1_data_460 = .data:0x00000460; // type:object size:0x58 +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x58 +lbl_1_data_510 = .data:0x00000510; // type:object size:0x58 +lbl_1_data_568 = .data:0x00000568; // type:object size:0x58 +lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x58 +lbl_1_data_618 = .data:0x00000618; // type:object size:0x58 +lbl_1_data_670 = .data:0x00000670; // type:object size:0x20 +lbl_1_data_690 = .data:0x00000690; // type:object size:0x10 data:string +lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0xD data:string +lbl_1_data_6AD = .data:0x000006AD; // type:object size:0xD data:string +lbl_1_data_6BA = .data:0x000006BA; // type:object size:0xD data:string +lbl_1_data_6C7 = .data:0x000006C7; // type:object size:0xB data:string +lbl_1_data_6D2 = .data:0x000006D2; // type:object size:0x8 data:string +lbl_1_data_6DA = .data:0x000006DA; // type:object size:0xF data:string +lbl_1_data_6E9 = .data:0x000006E9; // type:object size:0xB +lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x60 +lbl_1_data_754 = .data:0x00000754; // type:object size:0x4 data:4byte +lbl_1_data_758 = .data:0x00000758; // type:object size:0x12 +lbl_1_data_76A = .data:0x0000076A; // type:object size:0x2E +lbl_1_data_798 = .data:0x00000798; // type:object size:0x14 +lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x1 data:byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x10 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x414 +lbl_1_bss_454 = .bss:0x00000454; // type:object size:0x4 data:4byte +lbl_1_bss_458 = .bss:0x00000458; // type:object size:0x2 data:2byte +lbl_1_bss_45A = .bss:0x0000045A; // type:object size:0x6 data:2byte +lbl_1_bss_460 = .bss:0x00000460; // type:object size:0x204 data:2byte +lbl_1_bss_664 = .bss:0x00000664; // type:object size:0x200 data:2byte +lbl_1_bss_864 = .bss:0x00000864; // type:object size:0x20 +lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x2 data:2byte +lbl_1_bss_888 = .bss:0x00000888; // type:object size:0x2 data:2byte +lbl_1_bss_88A = .bss:0x0000088A; // type:object size:0x100 +lbl_1_bss_98A = .bss:0x0000098A; // type:object size:0x10 data:2byte +lbl_1_bss_99A = .bss:0x0000099A; // type:object size:0x2 data:2byte +lbl_1_bss_99C = .bss:0x0000099C; // type:object size:0x2 data:2byte +lbl_1_bss_9A0 = .bss:0x000009A0; // type:object size:0x4 data:4byte +lbl_1_bss_9A4 = .bss:0x000009A4; // type:object size:0x4 data:4byte +lbl_1_bss_9A8 = .bss:0x000009A8; // type:object size:0x4 data:4byte +lbl_1_bss_9AC = .bss:0x000009AC; // type:object size:0x40 +lbl_1_bss_9EC = .bss:0x000009EC; // type:object size:0x8 +lbl_1_bss_9F4 = .bss:0x000009F4; // type:object size:0x4 data:4byte +lbl_1_bss_9F8 = .bss:0x000009F8; // type:object size:0x8 data:4byte +lbl_1_bss_A00 = .bss:0x00000A00; // type:object size:0x4 data:4byte +lbl_1_bss_A04 = .bss:0x00000A04; // type:object size:0x4 data:4byte +lbl_1_bss_A08 = .bss:0x00000A08; // type:object size:0x2 data:2byte +lbl_1_bss_A0C = .bss:0x00000A0C; // type:object size:0x8 data:float +lbl_1_bss_A14 = .bss:0x00000A14; // type:object size:0x4 data:4byte +lbl_1_bss_A18 = .bss:0x00000A18; // type:object size:0xA4 data:float +lbl_1_bss_ABC = .bss:0x00000ABC; // type:object size:0x4 data:4byte +lbl_1_bss_AC0 = .bss:0x00000AC0; // type:object size:0x8 data:4byte diff --git a/config/GMPP01_00/rels/modeseldll/splits.txt b/config/GMPP01_00/rels/modeseldll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/modeseldll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/modeseldll/symbols.txt b/config/GMPP01_00/rels/modeseldll/symbols.txt new file mode 100644 index 00000000..5cfb1784 --- /dev/null +++ b/config/GMPP01_00/rels/modeseldll/symbols.txt @@ -0,0 +1,269 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x374 +fn_1_414 = .text:0x00000414; // type:function size:0x678 +fn_1_A8C = .text:0x00000A8C; // type:function size:0xFC +fn_1_B88 = .text:0x00000B88; // type:function size:0x9C +fn_1_C24 = .text:0x00000C24; // type:function size:0x3B4 +fn_1_FD8 = .text:0x00000FD8; // type:function size:0xC2C +fn_1_1C04 = .text:0x00001C04; // type:function size:0x2C4 +fn_1_1EC8 = .text:0x00001EC8; // type:function size:0x90 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x4A8 +fn_1_2400 = .text:0x00002400; // type:function size:0x128 +fn_1_2528 = .text:0x00002528; // type:function size:0x11D8 +fn_1_3700 = .text:0x00003700; // type:function size:0x174 +fn_1_3874 = .text:0x00003874; // type:function size:0x2DC +fn_1_3B50 = .text:0x00003B50; // type:function size:0x1B80 +fn_1_56D0 = .text:0x000056D0; // type:function size:0x19C +fn_1_586C = .text:0x0000586C; // type:function size:0x88 +fn_1_58F4 = .text:0x000058F4; // type:function size:0x35C +fn_1_5C50 = .text:0x00005C50; // type:function size:0x8C +fn_1_5CDC = .text:0x00005CDC; // type:function size:0xF8 +fn_1_5DD4 = .text:0x00005DD4; // type:function size:0x484 +fn_1_6258 = .text:0x00006258; // type:function size:0x1188 +fn_1_73E0 = .text:0x000073E0; // type:function size:0x34C +fn_1_772C = .text:0x0000772C; // type:function size:0x8C +fn_1_77B8 = .text:0x000077B8; // type:function size:0x4C0 +fn_1_7C78 = .text:0x00007C78; // type:function size:0x5B8 +fn_1_8230 = .text:0x00008230; // type:function size:0x288 +fn_1_84B8 = .text:0x000084B8; // type:function size:0x18C +fn_1_8644 = .text:0x00008644; // type:function size:0x6F0 +fn_1_8D34 = .text:0x00008D34; // type:function size:0x11E4 +fn_1_9F18 = .text:0x00009F18; // type:function size:0x38 +fn_1_9F50 = .text:0x00009F50; // type:function size:0xA74 +fn_1_A9C4 = .text:0x0000A9C4; // type:function size:0x1F8 +fn_1_ABBC = .text:0x0000ABBC; // type:function size:0xE14 +fn_1_B9D0 = .text:0x0000B9D0; // type:function size:0x154 +fn_1_BB24 = .text:0x0000BB24; // type:function size:0x60 +fn_1_BB84 = .text:0x0000BB84; // type:function size:0x458 +fn_1_BFDC = .text:0x0000BFDC; // type:function size:0x290 +fn_1_C26C = .text:0x0000C26C; // type:function size:0x154 +fn_1_C3C0 = .text:0x0000C3C0; // type:function size:0x78 +_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:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:byte +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x22 data:string +lbl_1_data_5A = .data:0x0000005A; // type:object size:0x14 data:string +lbl_1_data_6E = .data:0x0000006E; // type:object size:0x4 +lbl_1_data_72 = .data:0x00000072; // type:object size:0xA data:string +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x4 data:string +lbl_1_data_80 = .data:0x00000080; // type:object size:0xC +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x18 +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x18 +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x18 +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x14 data:string +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x9 data:string +lbl_1_data_F1 = .data:0x000000F1; // type:object size:0xF +lbl_1_data_100 = .data:0x00000100; // type:object size:0x11C data:2byte +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x48 data:4byte +lbl_1_data_264 = .data:0x00000264; // type:object size:0x3 +lbl_1_data_267 = .data:0x00000267; // type:object size:0xD +lbl_1_data_274 = .data:0x00000274; // type:object size:0x2 data:string +lbl_1_data_276 = .data:0x00000276; // type:object size:0x2 data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0x8 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:string +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:string +lbl_1_data_284 = .data:0x00000284; // type:object size:0x4 +lbl_1_data_288 = .data:0x00000288; // type:object size:0xC +lbl_1_data_294 = .data:0x00000294; // type:object size:0x19 data:string +lbl_1_data_2AD = .data:0x000002AD; // type:object size:0x23 data:string +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x1B data:string +lbl_1_data_2EB = .data:0x000002EB; // type:object size:0x19 data:string +lbl_1_data_304 = .data:0x00000304; // type:object size:0x19 data:string +lbl_1_data_31D = .data:0x0000031D; // type:object size:0x20 data:string +lbl_1_data_33D = .data:0x0000033D; // type:object size:0x1B data:string +lbl_1_data_358 = .data:0x00000358; // type:object size:0x1B data:string +lbl_1_data_373 = .data:0x00000373; // type:object size:0x22 data:string +lbl_1_data_395 = .data:0x00000395; // type:object size:0x5 data:string +lbl_1_data_39A = .data:0x0000039A; // type:object size:0x15 data:string +lbl_1_data_3AF = .data:0x000003AF; // type:object size:0x15 data:string +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x1F data:string +lbl_1_data_3E3 = .data:0x000003E3; // type:object size:0x10 data:string +lbl_1_data_3F3 = .data:0x000003F3; // type:object size:0xD data:string +lbl_1_data_400 = .data:0x00000400; // type:object size:0x16 +lbl_1_data_416 = .data:0x00000416; // type:object size:0x6 data:string +lbl_1_data_41C = .data:0x0000041C; // type:object size:0x2 data:2byte +lbl_1_data_41E = .data:0x0000041E; // type:object size:0xA +lbl_1_data_428 = .data:0x00000428; // type:object size:0x514 +lbl_1_data_93C = .data:0x0000093C; // type:object size:0xF0 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x18 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x30 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0xC data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0xC data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x8 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x2 data:2byte +lbl_1_bss_82 = .bss:0x00000082; // type:object size:0x6 data:2byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x2 data:2byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:float +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x2 data:2byte +lbl_1_bss_92 = .bss:0x00000092; // type:object size:0x6 +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x6 +lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x6 +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x8 +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0xC +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0xC +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0xC +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x18 +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x6 +lbl_1_bss_EE = .bss:0x000000EE; // type:object size:0x6 +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x4 data:4byte +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x8 data:float +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x8 data:float +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x6 +lbl_1_bss_116 = .bss:0x00000116; // type:object size:0x6 +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x2 data:2byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0xC data:4byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x8 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x6 +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x6 +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x6 +lbl_1_bss_146 = .bss:0x00000146; // type:object size:0x2 data:2byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x2 data:2byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x6 +lbl_1_bss_152 = .bss:0x00000152; // type:object size:0x18 data:2byte +lbl_1_bss_16A = .bss:0x0000016A; // type:object size:0x30 data:2byte +lbl_1_bss_19A = .bss:0x0000019A; // type:object size:0x30 data:2byte diff --git a/config/GMPP01_00/rels/mpexDll/splits.txt b/config/GMPP01_00/rels/mpexDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/mpexDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/mpexDll/symbols.txt b/config/GMPP01_00/rels/mpexDll/symbols.txt new file mode 100644 index 00000000..eb374c16 --- /dev/null +++ b/config/GMPP01_00/rels/mpexDll/symbols.txt @@ -0,0 +1,474 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xE8 +fn_1_188 = .text:0x00000188; // type:function size:0x38 +fn_1_1C0 = .text:0x000001C0; // type:function size:0x70 +fn_1_230 = .text:0x00000230; // type:function size:0x68 +fn_1_298 = .text:0x00000298; // type:function size:0xDC +fn_1_374 = .text:0x00000374; // type:function size:0xC4 +fn_1_438 = .text:0x00000438; // type:function size:0x3E4 +fn_1_81C = .text:0x0000081C; // type:function size:0xB8 +fn_1_8D4 = .text:0x000008D4; // type:function size:0x3C +fn_1_910 = .text:0x00000910; // type:function size:0x124 +fn_1_A34 = .text:0x00000A34; // type:function size:0x3C +fn_1_A70 = .text:0x00000A70; // type:function size:0x44 +fn_1_AB4 = .text:0x00000AB4; // type:function size:0x1D0 +fn_1_C84 = .text:0x00000C84; // type:function size:0x1C4 +fn_1_E48 = .text:0x00000E48; // type:function size:0x200 +fn_1_1048 = .text:0x00001048; // type:function size:0x238 +fn_1_1280 = .text:0x00001280; // type:function size:0x39C +fn_1_161C = .text:0x0000161C; // type:function size:0x200 +fn_1_181C = .text:0x0000181C; // type:function size:0x238 +fn_1_1A54 = .text:0x00001A54; // type:function size:0x39C +fn_1_1DF0 = .text:0x00001DF0; // type:function size:0x200 +fn_1_1FF0 = .text:0x00001FF0; // type:function size:0x238 +fn_1_2228 = .text:0x00002228; // type:function size:0x39C +fn_1_25C4 = .text:0x000025C4; // type:function size:0x178 +fn_1_273C = .text:0x0000273C; // type:function size:0x1A0 +fn_1_28DC = .text:0x000028DC; // type:function size:0x4 +fn_1_28E0 = .text:0x000028E0; // type:function size:0x764 +fn_1_3044 = .text:0x00003044; // type:function size:0x294 +fn_1_32D8 = .text:0x000032D8; // type:function size:0xAC +fn_1_3384 = .text:0x00003384; // type:function size:0x74 +fn_1_33F8 = .text:0x000033F8; // type:function size:0x110 +fn_1_3508 = .text:0x00003508; // type:function size:0x19C +fn_1_36A4 = .text:0x000036A4; // type:function size:0xB4 +fn_1_3758 = .text:0x00003758; // type:function size:0x224 +fn_1_397C = .text:0x0000397C; // type:function size:0x78 +fn_1_39F4 = .text:0x000039F4; // type:function size:0x104 +fn_1_3AF8 = .text:0x00003AF8; // type:function size:0x51C +fn_1_4014 = .text:0x00004014; // type:function size:0x98 +fn_1_40AC = .text:0x000040AC; // type:function size:0x98 +fn_1_4144 = .text:0x00004144; // type:function size:0x40 +fn_1_4184 = .text:0x00004184; // type:function size:0x2C8 +fn_1_444C = .text:0x0000444C; // type:function size:0xC8 +fn_1_4514 = .text:0x00004514; // type:function size:0x21C +fn_1_4730 = .text:0x00004730; // type:function size:0x40 +fn_1_4770 = .text:0x00004770; // type:function size:0x2E8 +fn_1_4A58 = .text:0x00004A58; // type:function size:0xE4 +fn_1_4B3C = .text:0x00004B3C; // type:function size:0x3C +fn_1_4B78 = .text:0x00004B78; // type:function size:0xF4 +fn_1_4C6C = .text:0x00004C6C; // type:function size:0x18C +fn_1_4DF8 = .text:0x00004DF8; // type:function size:0x18C +fn_1_4F84 = .text:0x00004F84; // type:function size:0x2B4 +fn_1_5238 = .text:0x00005238; // type:function size:0x2F8 +fn_1_5530 = .text:0x00005530; // type:function size:0x188 +fn_1_56B8 = .text:0x000056B8; // type:function size:0x128 +fn_1_57E0 = .text:0x000057E0; // type:function size:0x3C +fn_1_581C = .text:0x0000581C; // type:function size:0x140 +fn_1_595C = .text:0x0000595C; // type:function size:0x19C +fn_1_5AF8 = .text:0x00005AF8; // type:function size:0x124 +fn_1_5C1C = .text:0x00005C1C; // type:function size:0x124 +fn_1_5D40 = .text:0x00005D40; // type:function size:0x1E88 +fn_1_7BC8 = .text:0x00007BC8; // type:function size:0x1B8 +fn_1_7D80 = .text:0x00007D80; // type:function size:0x244 +fn_1_7FC4 = .text:0x00007FC4; // type:function size:0x1A8 +fn_1_816C = .text:0x0000816C; // type:function size:0x1B4 +fn_1_8320 = .text:0x00008320; // type:function size:0x2A4 +fn_1_85C4 = .text:0x000085C4; // type:function size:0x194 +fn_1_8758 = .text:0x00008758; // type:function size:0x194 +fn_1_88EC = .text:0x000088EC; // type:function size:0xD8 +fn_1_89C4 = .text:0x000089C4; // type:function size:0x118 +fn_1_8ADC = .text:0x00008ADC; // type:function size:0x540 +fn_1_901C = .text:0x0000901C; // type:function size:0x414 +fn_1_9430 = .text:0x00009430; // type:function size:0x284 +fn_1_96B4 = .text:0x000096B4; // type:function size:0x8C +fn_1_9740 = .text:0x00009740; // type:function size:0x150 +fn_1_9890 = .text:0x00009890; // type:function size:0x78 +fn_1_9908 = .text:0x00009908; // type:function size:0x80 +fn_1_9988 = .text:0x00009988; // type:function size:0x33C +fn_1_9CC4 = .text:0x00009CC4; // type:function size:0x98 +fn_1_9D5C = .text:0x00009D5C; // type:function size:0x1A4 +fn_1_9F00 = .text:0x00009F00; // type:function size:0x1D4 +fn_1_A0D4 = .text:0x0000A0D4; // type:function size:0x1C8 +fn_1_A29C = .text:0x0000A29C; // type:function size:0xF8 +fn_1_A394 = .text:0x0000A394; // type:function size:0x264 +fn_1_A5F8 = .text:0x0000A5F8; // type:function size:0x72C +fn_1_AD24 = .text:0x0000AD24; // type:function size:0x2D0 +fn_1_AFF4 = .text:0x0000AFF4; // type:function size:0x20C +fn_1_B200 = .text:0x0000B200; // type:function size:0x38 +fn_1_B238 = .text:0x0000B238; // type:function size:0x9C +fn_1_B2D4 = .text:0x0000B2D4; // type:function size:0x510 +fn_1_B7E4 = .text:0x0000B7E4; // type:function size:0x7C +fn_1_B860 = .text:0x0000B860; // type:function size:0x138 +fn_1_B998 = .text:0x0000B998; // type:function size:0x18C +fn_1_BB24 = .text:0x0000BB24; // type:function size:0xE4 +fn_1_BC08 = .text:0x0000BC08; // type:function size:0xC0 +fn_1_BCC8 = .text:0x0000BCC8; // type:function size:0x38 +fn_1_BD00 = .text:0x0000BD00; // type:function size:0x68 +fn_1_BD68 = .text:0x0000BD68; // type:function size:0x2F4 +fn_1_C05C = .text:0x0000C05C; // type:function size:0x70 +fn_1_C0CC = .text:0x0000C0CC; // type:function size:0x3F8 +fn_1_C4C4 = .text:0x0000C4C4; // type:function size:0x70 +fn_1_C534 = .text:0x0000C534; // type:function size:0x31C +fn_1_C850 = .text:0x0000C850; // type:function size:0x38 +fn_1_C888 = .text:0x0000C888; // type:function size:0x200 +fn_1_CA88 = .text:0x0000CA88; // type:function size:0x420 +fn_1_CEA8 = .text:0x0000CEA8; // type:function size:0x49C +fn_1_D344 = .text:0x0000D344; // type:function size:0xBC +fn_1_D400 = .text:0x0000D400; // type:function size:0x244 +fn_1_D644 = .text:0x0000D644; // type:function size:0x524 +fn_1_DB68 = .text:0x0000DB68; // type:function size:0x5A4 +fn_1_E10C = .text:0x0000E10C; // type:function size:0x210 +fn_1_E31C = .text:0x0000E31C; // type:function size:0x1E4 +fn_1_E500 = .text:0x0000E500; // type:function size:0x5A4 +fn_1_EAA4 = .text:0x0000EAA4; // type:function size:0x25C +fn_1_ED00 = .text:0x0000ED00; // type:function size:0x348 +fn_1_F048 = .text:0x0000F048; // type:function size:0x34C +fn_1_F394 = .text:0x0000F394; // type:function size:0x70 +fn_1_F404 = .text:0x0000F404; // type:function size:0x2B4 +fn_1_F6B8 = .text:0x0000F6B8; // type:function size:0x174 +fn_1_F82C = .text:0x0000F82C; // type:function size:0x4FC +fn_1_FD28 = .text:0x0000FD28; // type:function size:0x3BC +fn_1_100E4 = .text:0x000100E4; // type:function size:0xCC +fn_1_101B0 = .text:0x000101B0; // type:function size:0x40 +fn_1_101F0 = .text:0x000101F0; // type:function size:0x1F4 +fn_1_103E4 = .text:0x000103E4; // type:function size:0x390 +fn_1_10774 = .text:0x00010774; // type:function size:0x70 +fn_1_107E4 = .text:0x000107E4; // type:function size:0x260 +fn_1_10A44 = .text:0x00010A44; // type:function size:0x174 +fn_1_10BB8 = .text:0x00010BB8; // type:function size:0x4C8 +fn_1_11080 = .text:0x00011080; // type:function size:0x3DC +fn_1_1145C = .text:0x0001145C; // type:function size:0xCC +fn_1_11528 = .text:0x00011528; // type:function size:0x40 +fn_1_11568 = .text:0x00011568; // type:function size:0x1F4 +fn_1_1175C = .text:0x0001175C; // type:function size:0x15C +fn_1_118B8 = .text:0x000118B8; // type:function size:0x54 +fn_1_1190C = .text:0x0001190C; // type:function size:0x5C +fn_1_11968 = .text:0x00011968; // type:function size:0x5C +fn_1_119C4 = .text:0x000119C4; // type:function size:0x3EC +fn_1_11DB0 = .text:0x00011DB0; // type:function size:0x198 +fn_1_11F48 = .text:0x00011F48; // type:function size:0x228 +fn_1_12170 = .text:0x00012170; // type:function size:0x3E4 +fn_1_12554 = .text:0x00012554; // type:function size:0x70 +fn_1_125C4 = .text:0x000125C4; // type:function size:0xA0 +fn_1_12664 = .text:0x00012664; // type:function size:0x224 +fn_1_12888 = .text:0x00012888; // type:function size:0x2DC +fn_1_12B64 = .text:0x00012B64; // type:function size:0x2C +fn_1_12B90 = .text:0x00012B90; // type:function size:0x518 +fn_1_130A8 = .text:0x000130A8; // type:function size:0x2C +fn_1_130D4 = .text:0x000130D4; // type:function size:0x28 +fn_1_130FC = .text:0x000130FC; // type:function size:0x274 +fn_1_13370 = .text:0x00013370; // type:function size:0x2C +fn_1_1339C = .text:0x0001339C; // type:function size:0x2C +fn_1_133C8 = .text:0x000133C8; // type:function size:0x24 +fn_1_133EC = .text:0x000133EC; // type:function size:0x2BC +fn_1_136A8 = .text:0x000136A8; // type:function size:0x500 +fn_1_13BA8 = .text:0x00013BA8; // type:function size:0x480 +fn_1_14028 = .text:0x00014028; // type:function size:0x80C +fn_1_14834 = .text:0x00014834; // type:function size:0x28 +fn_1_1485C = .text:0x0001485C; // type:function size:0x28 +fn_1_14884 = .text:0x00014884; // type:function size:0x21C +fn_1_14AA0 = .text:0x00014AA0; // type:function size:0x194 +fn_1_14C34 = .text:0x00014C34; // type:function size:0x198 +fn_1_14DCC = .text:0x00014DCC; // type:function size:0x9C +fn_1_14E68 = .text:0x00014E68; // type:function size:0x2D8 +fn_1_15140 = .text:0x00015140; // type:function size:0x2DC +fn_1_1541C = .text:0x0001541C; // type:function size:0x1E0 +fn_1_155FC = .text:0x000155FC; // type:function size:0xF0 +fn_1_156EC = .text:0x000156EC; // type:function size:0x50 +fn_1_1573C = .text:0x0001573C; // type:function size:0x584 +fn_1_15CC0 = .text:0x00015CC0; // type:function size:0x5D8 +fn_1_16298 = .text:0x00016298; // type:function size:0x2E0 +fn_1_16578 = .text:0x00016578; // type:function size:0x274 +fn_1_167EC = .text:0x000167EC; // type:function size:0x7C +fn_1_16868 = .text:0x00016868; // type:function size:0x44C +fn_1_16CB4 = .text:0x00016CB4; // type:function size:0x434 +fn_1_170E8 = .text:0x000170E8; // type:function size:0x204 +fn_1_172EC = .text:0x000172EC; // type:function size:0x790 +fn_1_17A7C = .text:0x00017A7C; // type:function size:0xB0C +fn_1_18588 = .text:0x00018588; // type:function size:0x720 +fn_1_18CA8 = .text:0x00018CA8; // type:function size:0x9C +fn_1_18D44 = .text:0x00018D44; // type:function size:0xCCC +fn_1_19A10 = .text:0x00019A10; // type:function size:0x924 +fn_1_1A334 = .text:0x0001A334; // type:function size:0x1E8 +fn_1_1A51C = .text:0x0001A51C; // type:function size:0x958 +fn_1_1AE74 = .text:0x0001AE74; // type:function size:0x7C +fn_1_1AEF0 = .text:0x0001AEF0; // type:function size:0x164 +fn_1_1B054 = .text:0x0001B054; // type:function size:0x1B8 +fn_1_1B20C = .text:0x0001B20C; // type:function size:0xA4 +fn_1_1B2B0 = .text:0x0001B2B0; // type:function size:0xF4 +fn_1_1B3A4 = .text:0x0001B3A4; // type:function size:0x80 +fn_1_1B424 = .text:0x0001B424; // type:function size:0x80 +fn_1_1B4A4 = .text:0x0001B4A4; // type:function size:0x28 +fn_1_1B4CC = .text:0x0001B4CC; // type:function size:0x20 +fn_1_1B4EC = .text:0x0001B4EC; // type:function size:0xD8 +fn_1_1B5C4 = .text:0x0001B5C4; // type:function size:0xC8 +fn_1_1B68C = .text:0x0001B68C; // type:function size:0xBC +fn_1_1B748 = .text:0x0001B748; // type:function size:0x40 +fn_1_1B788 = .text:0x0001B788; // type:function size:0x24 +fn_1_1B7AC = .text:0x0001B7AC; // type:function size:0x1C0 +fn_1_1B96C = .text:0x0001B96C; // type:function size:0x84 +fn_1_1B9F0 = .text:0x0001B9F0; // type:function size:0xD4 +fn_1_1BAC4 = .text:0x0001BAC4; // type:function size:0x58 +fn_1_1BB1C = .text:0x0001BB1C; // type:function size:0x15C +fn_1_1BC78 = .text:0x0001BC78; // type:function size:0x21C +fn_1_1BE94 = .text:0x0001BE94; // type:function size:0x204 +fn_1_1C098 = .text:0x0001C098; // type:function size:0x54 +fn_1_1C0EC = .text:0x0001C0EC; // type:function size:0x304 +fn_1_1C3F0 = .text:0x0001C3F0; // type:function size:0x304 +fn_1_1C6F4 = .text:0x0001C6F4; // type:function size:0x340 +fn_1_1CA34 = .text:0x0001CA34; // type:function size:0xC4 +fn_1_1CAF8 = .text:0x0001CAF8; // type:function size:0x3B0 +fn_1_1CEA8 = .text:0x0001CEA8; // type:function size:0x16C +_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:0xC data:4byte +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0xC data:4byte +lbl_1_rodata_34 = .rodata:0x00000034; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +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:0x78 +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0xC data:4byte +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_154 = .rodata:0x00000154; // type:object size:0xC data:4byte +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0xC data:4byte +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:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0xC data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0xC data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:4byte +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0xC data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0xC data:4byte +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_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:4byte +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0xB4 +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x6C +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x2C data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0xB0 +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0xC data:4byte +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x18 data:4byte +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0xC data:4byte +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x8 data:double +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x38 data:4byte +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x4F data:string +lbl_1_data_4F = .data:0x0000004F; // type:object size:0x50 data:string +lbl_1_data_9F = .data:0x0000009F; // type:object size:0x50 data:string +lbl_1_data_EF = .data:0x000000EF; // type:object size:0x4E data:string +lbl_1_data_13D = .data:0x0000013D; // type:object size:0x50 data:string +lbl_1_data_18D = .data:0x0000018D; // type:object size:0x4F data:string +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x22 data:string +lbl_1_data_1FE = .data:0x000001FE; // type:object size:0x1A data:string +lbl_1_data_218 = .data:0x00000218; // type:object size:0x1A data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x62 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x4 data:4byte +lbl_1_data_298 = .data:0x00000298; // type:object size:0x4 data:4byte +lbl_1_data_29C = .data:0x0000029C; // type:object size:0x18 +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x10 data:4byte +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x4 data:4byte +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x3 data:string +lbl_1_data_2CB = .data:0x000002CB; // type:object size:0x5 data:string +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x19 data:string +lbl_1_data_2E9 = .data:0x000002E9; // type:object size:0x12 data:string +lbl_1_data_2FB = .data:0x000002FB; // type:object size:0x29 +lbl_1_data_324 = .data:0x00000324; // type:object size:0x4 data:4byte +lbl_1_data_328 = .data:0x00000328; // type:object size:0x4 data:4byte +lbl_1_data_32C = .data:0x0000032C; // type:object size:0xC data:4byte +lbl_1_data_338 = .data:0x00000338; // type:object size:0x2B data:string +lbl_1_data_363 = .data:0x00000363; // type:object size:0x28 data:string +lbl_1_data_38B = .data:0x0000038B; // type:object size:0x4 data:string +lbl_1_data_38F = .data:0x0000038F; // type:object size:0x5 +jumptable_1_data_394 = .data:0x00000394; // type:object size:0x2C scope:local +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x3C data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x16 data:string +lbl_1_data_412 = .data:0x00000412; // type:object size:0x1A data:string +lbl_1_data_42C = .data:0x0000042C; // type:object size:0x1A data:string +lbl_1_data_446 = .data:0x00000446; // type:object size:0x1A data:string +lbl_1_data_460 = .data:0x00000460; // type:object size:0x17 data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x16 data:string +lbl_1_data_48D = .data:0x0000048D; // type:object size:0x16 data:string +lbl_1_data_4A3 = .data:0x000004A3; // type:object size:0x19 data:string +lbl_1_data_4BC = .data:0x000004BC; // type:object size:0x16 data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x3E +lbl_1_data_510 = .data:0x00000510; // type:object size:0x3C data:string +lbl_1_data_54C = .data:0x0000054C; // type:object size:0x19 data:string +lbl_1_data_565 = .data:0x00000565; // type:object size:0x1A data:string +lbl_1_data_57F = .data:0x0000057F; // type:object size:0x3D +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x20 data:4byte +lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x40 data:4byte +lbl_1_data_61C = .data:0x0000061C; // type:object size:0x70 +lbl_1_data_68C = .data:0x0000068C; // type:object size:0x90 data:4byte +lbl_1_data_71C = .data:0x0000071C; // type:object size:0x20 +lbl_1_data_73C = .data:0x0000073C; // type:object size:0x8 data:4byte +lbl_1_data_744 = .data:0x00000744; // type:object size:0x10 +lbl_1_data_754 = .data:0x00000754; // type:object size:0x20 +lbl_1_data_774 = .data:0x00000774; // type:object size:0x4 data:4byte +lbl_1_data_778 = .data:0x00000778; // type:object size:0x8 data:4byte +lbl_1_data_780 = .data:0x00000780; // type:object size:0x4C0 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x64 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x44 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:float +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x18 +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x8 +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x8 +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x8 +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x8 +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x8 +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x8 +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x10 +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x50 +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x2C data:4byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x4 data:4byte +lbl_1_bss_1B4 = .bss:0x000001B4; // type:object size:0x4 data:4byte +lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0x120 data:4byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0xD8 data:4byte +lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x48 data:4byte +lbl_1_bss_3F8 = .bss:0x000003F8; // type:object size:0x48 data:4byte +lbl_1_bss_440 = .bss:0x00000440; // type:object size:0x4 data:4byte +lbl_1_bss_444 = .bss:0x00000444; // type:object size:0x4 data:4byte +lbl_1_bss_448 = .bss:0x00000448; // type:object size:0x14 data:4byte +lbl_1_bss_45C = .bss:0x0000045C; // type:object size:0x180 data:4byte +lbl_1_bss_5DC = .bss:0x000005DC; // type:object size:0x60 data:4byte +lbl_1_bss_63C = .bss:0x0000063C; // type:object size:0x70 data:4byte +lbl_1_bss_6AC = .bss:0x000006AC; // type:object size:0x1 data:byte diff --git a/config/GMPP01_00/rels/msetupDll/splits.txt b/config/GMPP01_00/rels/msetupDll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPP01_00/rels/msetupDll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPP01_00/rels/msetupDll/symbols.txt b/config/GMPP01_00/rels/msetupDll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPP01_00/rels/msetupDll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPP01_00/rels/mstory2Dll/splits.txt b/config/GMPP01_00/rels/mstory2Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/mstory2Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/mstory2Dll/symbols.txt b/config/GMPP01_00/rels/mstory2Dll/symbols.txt new file mode 100644 index 00000000..67aae470 --- /dev/null +++ b/config/GMPP01_00/rels/mstory2Dll/symbols.txt @@ -0,0 +1,709 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x2A0 +_prolog = .text:0x00000344; // type:function size:0x54 scope:global +_epilog = .text:0x00000398; // type:function size:0x4C scope:global +fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 +fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 +fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +fn_1_864 = .text:0x00000864; // type:function size:0x28 +fn_1_88C = .text:0x0000088C; // type:function size:0x20 +fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 +fn_1_984 = .text:0x00000984; // type:function size:0xC8 +fn_1_A4C = .text:0x00000A4C; // type:function size:0xBC +fn_1_B08 = .text:0x00000B08; // type:function size:0xBC +fn_1_BC4 = .text:0x00000BC4; // type:function size:0x4 +fn_1_BC8 = .text:0x00000BC8; // type:function size:0x20 +fn_1_BE8 = .text:0x00000BE8; // type:function size:0x28 +fn_1_C10 = .text:0x00000C10; // type:function size:0x20 +fn_1_C30 = .text:0x00000C30; // type:function size:0x24 +fn_1_C54 = .text:0x00000C54; // type:function size:0x4 +fn_1_C58 = .text:0x00000C58; // type:function size:0xA48 +fn_1_16A0 = .text:0x000016A0; // type:function size:0x1BC +fn_1_185C = .text:0x0000185C; // type:function size:0x1D8 +fn_1_1A34 = .text:0x00001A34; // type:function size:0x60 +fn_1_1A94 = .text:0x00001A94; // type:function size:0x68 +fn_1_1AFC = .text:0x00001AFC; // type:function size:0xAC +fn_1_1BA8 = .text:0x00001BA8; // type:function size:0xBC +fn_1_1C64 = .text:0x00001C64; // type:function size:0xB4 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x34 +fn_1_1D4C = .text:0x00001D4C; // type:function size:0x40 +fn_1_1D8C = .text:0x00001D8C; // type:function size:0x70 +fn_1_1DFC = .text:0x00001DFC; // type:function size:0x188 +fn_1_1F84 = .text:0x00001F84; // type:function size:0x2E0 +fn_1_2264 = .text:0x00002264; // type:function size:0x90 +fn_1_22F4 = .text:0x000022F4; // type:function size:0x48 +fn_1_233C = .text:0x0000233C; // type:function size:0x54 +fn_1_2390 = .text:0x00002390; // type:function size:0x3C0 +fn_1_2750 = .text:0x00002750; // type:function size:0x10 +fn_1_2760 = .text:0x00002760; // type:function size:0x10 +fn_1_2770 = .text:0x00002770; // type:function size:0xB8 +fn_1_2828 = .text:0x00002828; // type:function size:0x120 +fn_1_2948 = .text:0x00002948; // type:function size:0x3B8 +fn_1_2D00 = .text:0x00002D00; // type:function size:0x7F4 +fn_1_34F4 = .text:0x000034F4; // type:function size:0x88 +fn_1_357C = .text:0x0000357C; // type:function size:0x94 +fn_1_3610 = .text:0x00003610; // type:function size:0x58 +fn_1_3668 = .text:0x00003668; // type:function size:0xEC +fn_1_3754 = .text:0x00003754; // type:function size:0xC4 +fn_1_3818 = .text:0x00003818; // type:function size:0x3C +fn_1_3854 = .text:0x00003854; // type:function size:0x44 +fn_1_3898 = .text:0x00003898; // type:function size:0x26C +fn_1_3B04 = .text:0x00003B04; // type:function size:0x26C +fn_1_3D70 = .text:0x00003D70; // type:function size:0x27C +fn_1_3FEC = .text:0x00003FEC; // type:function size:0x2B4 +fn_1_42A0 = .text:0x000042A0; // type:function size:0x46C +fn_1_470C = .text:0x0000470C; // type:function size:0x454 +fn_1_4B60 = .text:0x00004B60; // type:function size:0x48C +fn_1_4FEC = .text:0x00004FEC; // type:function size:0x658 +fn_1_5644 = .text:0x00005644; // type:function size:0x4C4 +fn_1_5B08 = .text:0x00005B08; // type:function size:0x4FC +fn_1_6004 = .text:0x00006004; // type:function size:0x6C8 +fn_1_66CC = .text:0x000066CC; // type:function size:0x38 +fn_1_6704 = .text:0x00006704; // type:function size:0xD4 +fn_1_67D8 = .text:0x000067D8; // type:function size:0x198 +fn_1_6970 = .text:0x00006970; // type:function size:0x34 +fn_1_69A4 = .text:0x000069A4; // type:function size:0x40 +fn_1_69E4 = .text:0x000069E4; // type:function size:0xAC +fn_1_6A90 = .text:0x00006A90; // type:function size:0x2E8 +fn_1_6D78 = .text:0x00006D78; // type:function size:0x44 +fn_1_6DBC = .text:0x00006DBC; // type:function size:0x1F4 +fn_1_6FB0 = .text:0x00006FB0; // type:function size:0xB4 +fn_1_7064 = .text:0x00007064; // type:function size:0x178 +fn_1_71DC = .text:0x000071DC; // type:function size:0x68 +fn_1_7244 = .text:0x00007244; // type:function size:0x140 +fn_1_7384 = .text:0x00007384; // type:function size:0xA2C +fn_1_7DB0 = .text:0x00007DB0; // type:function size:0x1A4 +fn_1_7F54 = .text:0x00007F54; // type:function size:0x118 +fn_1_806C = .text:0x0000806C; // type:function size:0x8C +fn_1_80F8 = .text:0x000080F8; // type:function size:0x488 +fn_1_8580 = .text:0x00008580; // type:function size:0x5C +fn_1_85DC = .text:0x000085DC; // type:function size:0x1F8 +fn_1_87D4 = .text:0x000087D4; // type:function size:0x2E8 +fn_1_8ABC = .text:0x00008ABC; // type:function size:0x578 +fn_1_9034 = .text:0x00009034; // type:function size:0x164 +fn_1_9198 = .text:0x00009198; // type:function size:0x124 +fn_1_92BC = .text:0x000092BC; // type:function size:0x4AC +fn_1_9768 = .text:0x00009768; // type:function size:0xB4 +fn_1_981C = .text:0x0000981C; // type:function size:0x138 +fn_1_9954 = .text:0x00009954; // type:function size:0xBC +fn_1_9A10 = .text:0x00009A10; // type:function size:0x1C4 +fn_1_9BD4 = .text:0x00009BD4; // type:function size:0xE4 +fn_1_9CB8 = .text:0x00009CB8; // type:function size:0x214 +fn_1_9ECC = .text:0x00009ECC; // type:function size:0x110 +fn_1_9FDC = .text:0x00009FDC; // type:function size:0x2AC +fn_1_A288 = .text:0x0000A288; // type:function size:0x220 +fn_1_A4A8 = .text:0x0000A4A8; // type:function size:0xE4 +fn_1_A58C = .text:0x0000A58C; // type:function size:0x2BC +fn_1_A848 = .text:0x0000A848; // type:function size:0x2C8 +fn_1_AB10 = .text:0x0000AB10; // type:function size:0x2A0 +fn_1_ADB0 = .text:0x0000ADB0; // type:function size:0xAC +fn_1_AE5C = .text:0x0000AE5C; // type:function size:0x364 +fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x8C +fn_1_B24C = .text:0x0000B24C; // type:function size:0x130 +fn_1_B37C = .text:0x0000B37C; // type:function size:0x68 +fn_1_B3E4 = .text:0x0000B3E4; // type:function size:0x134 +fn_1_B518 = .text:0x0000B518; // type:function size:0x8C +fn_1_B5A4 = .text:0x0000B5A4; // type:function size:0x3E0 +fn_1_B984 = .text:0x0000B984; // type:function size:0x5C +fn_1_B9E0 = .text:0x0000B9E0; // type:function size:0xB0 +fn_1_BA90 = .text:0x0000BA90; // type:function size:0x360 +fn_1_BDF0 = .text:0x0000BDF0; // type:function size:0x158 +fn_1_BF48 = .text:0x0000BF48; // type:function size:0x328 +fn_1_C270 = .text:0x0000C270; // type:function size:0x250 +fn_1_C4C0 = .text:0x0000C4C0; // type:function size:0xB4 +fn_1_C574 = .text:0x0000C574; // type:function size:0x228 +fn_1_C79C = .text:0x0000C79C; // type:function size:0xBC +fn_1_C858 = .text:0x0000C858; // type:function size:0x2B4 +fn_1_CB0C = .text:0x0000CB0C; // type:function size:0x1C0 +fn_1_CCCC = .text:0x0000CCCC; // type:function size:0xAC +fn_1_CD78 = .text:0x0000CD78; // type:function size:0x2B8 +fn_1_D030 = .text:0x0000D030; // type:function size:0x1F4 +fn_1_D224 = .text:0x0000D224; // type:function size:0xAC +fn_1_D2D0 = .text:0x0000D2D0; // type:function size:0xC4 +fn_1_D394 = .text:0x0000D394; // type:function size:0xE4 +fn_1_D478 = .text:0x0000D478; // type:function size:0x2EC +fn_1_D764 = .text:0x0000D764; // type:function size:0x134 +fn_1_D898 = .text:0x0000D898; // type:function size:0x2C0 +fn_1_DB58 = .text:0x0000DB58; // type:function size:0xFC +fn_1_DC54 = .text:0x0000DC54; // type:function size:0x170 +fn_1_DDC4 = .text:0x0000DDC4; // type:function size:0x3F4 +fn_1_E1B8 = .text:0x0000E1B8; // type:function size:0x8C +fn_1_E244 = .text:0x0000E244; // type:function size:0xF0 +fn_1_E334 = .text:0x0000E334; // type:function size:0x23C +fn_1_E570 = .text:0x0000E570; // type:function size:0xC8 +fn_1_E638 = .text:0x0000E638; // type:function size:0x2B4 +fn_1_E8EC = .text:0x0000E8EC; // type:function size:0x140 +fn_1_EA2C = .text:0x0000EA2C; // type:function size:0x134 +fn_1_EB60 = .text:0x0000EB60; // type:function size:0x8C +fn_1_EBEC = .text:0x0000EBEC; // type:function size:0x3E0 +fn_1_EFCC = .text:0x0000EFCC; // type:function size:0x5C +fn_1_F028 = .text:0x0000F028; // type:function size:0x128 +fn_1_F150 = .text:0x0000F150; // type:function size:0xDC +fn_1_F22C = .text:0x0000F22C; // type:function size:0xD0 +fn_1_F2FC = .text:0x0000F2FC; // type:function size:0xD4 +fn_1_F3D0 = .text:0x0000F3D0; // type:function size:0x468 +fn_1_F838 = .text:0x0000F838; // type:function size:0x4 +fn_1_F83C = .text:0x0000F83C; // type:function size:0x78 +fn_1_F8B4 = .text:0x0000F8B4; // type:function size:0x548 +fn_1_FDFC = .text:0x0000FDFC; // type:function size:0xB4 +fn_1_FEB0 = .text:0x0000FEB0; // type:function size:0x228 +fn_1_100D8 = .text:0x000100D8; // type:function size:0xBC +fn_1_10194 = .text:0x00010194; // type:function size:0x2B4 +fn_1_10448 = .text:0x00010448; // type:function size:0x1BC +fn_1_10604 = .text:0x00010604; // type:function size:0xAC +fn_1_106B0 = .text:0x000106B0; // type:function size:0x29C +fn_1_1094C = .text:0x0001094C; // type:function size:0x2B4 +fn_1_10C00 = .text:0x00010C00; // type:function size:0x1F4 +fn_1_10DF4 = .text:0x00010DF4; // type:function size:0xAC +fn_1_10EA0 = .text:0x00010EA0; // type:function size:0xE4 +fn_1_10F84 = .text:0x00010F84; // type:function size:0xC4 +fn_1_11048 = .text:0x00011048; // type:function size:0xE4 +fn_1_1112C = .text:0x0001112C; // type:function size:0x2EC +fn_1_11418 = .text:0x00011418; // type:function size:0x134 +fn_1_1154C = .text:0x0001154C; // type:function size:0x2EC +fn_1_11838 = .text:0x00011838; // type:function size:0xFC +fn_1_11934 = .text:0x00011934; // type:function size:0x164 +fn_1_11A98 = .text:0x00011A98; // type:function size:0x118 +fn_1_11BB0 = .text:0x00011BB0; // type:function size:0x420 +fn_1_11FD0 = .text:0x00011FD0; // type:function size:0x8C +fn_1_1205C = .text:0x0001205C; // type:function size:0x130 +fn_1_1218C = .text:0x0001218C; // type:function size:0x23C +fn_1_123C8 = .text:0x000123C8; // type:function size:0x1A4 +fn_1_1256C = .text:0x0001256C; // type:function size:0x124 +fn_1_12690 = .text:0x00012690; // type:function size:0x8C +fn_1_1271C = .text:0x0001271C; // type:function size:0x3AC +fn_1_12AC8 = .text:0x00012AC8; // type:function size:0x48 +fn_1_12B10 = .text:0x00012B10; // type:function size:0x2C4 +fn_1_12DD4 = .text:0x00012DD4; // type:function size:0x37C +fn_1_13150 = .text:0x00013150; // type:function size:0x70 +fn_1_131C0 = .text:0x000131C0; // type:function size:0xA4 +fn_1_13264 = .text:0x00013264; // type:function size:0x5C4 +fn_1_13828 = .text:0x00013828; // type:function size:0xA4 +fn_1_138CC = .text:0x000138CC; // type:function size:0x14C +fn_1_13A18 = .text:0x00013A18; // type:function size:0x1A0 +fn_1_13BB8 = .text:0x00013BB8; // type:function size:0xB4 +fn_1_13C6C = .text:0x00013C6C; // type:function size:0x348 +fn_1_13FB4 = .text:0x00013FB4; // type:function size:0xEC +fn_1_140A0 = .text:0x000140A0; // type:function size:0xCC +fn_1_1416C = .text:0x0001416C; // type:function size:0x330 +fn_1_1449C = .text:0x0001449C; // type:function size:0x3CC +fn_1_14868 = .text:0x00014868; // type:function size:0x234 +fn_1_14A9C = .text:0x00014A9C; // type:function size:0xAC +fn_1_14B48 = .text:0x00014B48; // type:function size:0xF8 +fn_1_14C40 = .text:0x00014C40; // type:function size:0x32C +fn_1_14F6C = .text:0x00014F6C; // type:function size:0x1C8 +fn_1_15134 = .text:0x00015134; // type:function size:0xAC +fn_1_151E0 = .text:0x000151E0; // type:function size:0xE4 +fn_1_152C4 = .text:0x000152C4; // type:function size:0xE4 +fn_1_153A8 = .text:0x000153A8; // type:function size:0x2C0 +fn_1_15668 = .text:0x00015668; // type:function size:0xE4 +fn_1_1574C = .text:0x0001574C; // type:function size:0x1F8 +fn_1_15944 = .text:0x00015944; // type:function size:0xAC +fn_1_159F0 = .text:0x000159F0; // type:function size:0x2EC +fn_1_15CDC = .text:0x00015CDC; // type:function size:0x8C +fn_1_15D68 = .text:0x00015D68; // type:function size:0xF0 +fn_1_15E58 = .text:0x00015E58; // type:function size:0x118 +fn_1_15F70 = .text:0x00015F70; // type:function size:0xF0 +fn_1_16060 = .text:0x00016060; // type:function size:0x118 +fn_1_16178 = .text:0x00016178; // type:function size:0x8C +fn_1_16204 = .text:0x00016204; // type:function size:0x3AC +fn_1_165B0 = .text:0x000165B0; // type:function size:0x5C +fn_1_1660C = .text:0x0001660C; // type:function size:0x110 +fn_1_1671C = .text:0x0001671C; // type:function size:0x194 +fn_1_168B0 = .text:0x000168B0; // type:function size:0xD4 +fn_1_16984 = .text:0x00016984; // type:function size:0x50 +fn_1_169D4 = .text:0x000169D4; // type:function size:0x4 +fn_1_169D8 = .text:0x000169D8; // type:function size:0xF4 +fn_1_16ACC = .text:0x00016ACC; // type:function size:0x4F4 +fn_1_16FC0 = .text:0x00016FC0; // type:function size:0xB4 +fn_1_17074 = .text:0x00017074; // type:function size:0x208 +fn_1_1727C = .text:0x0001727C; // type:function size:0xBC +fn_1_17338 = .text:0x00017338; // type:function size:0x294 +fn_1_175CC = .text:0x000175CC; // type:function size:0x180 +fn_1_1774C = .text:0x0001774C; // type:function size:0xAC +fn_1_177F8 = .text:0x000177F8; // type:function size:0x278 +fn_1_17A70 = .text:0x00017A70; // type:function size:0x128 +fn_1_17B98 = .text:0x00017B98; // type:function size:0xAC +fn_1_17C44 = .text:0x00017C44; // type:function size:0x220 +fn_1_17E64 = .text:0x00017E64; // type:function size:0xE4 +fn_1_17F48 = .text:0x00017F48; // type:function size:0x190 +fn_1_180D8 = .text:0x000180D8; // type:function size:0xAC +fn_1_18184 = .text:0x00018184; // type:function size:0x284 +fn_1_18408 = .text:0x00018408; // type:function size:0x8C +fn_1_18494 = .text:0x00018494; // type:function size:0x23C +fn_1_186D0 = .text:0x000186D0; // type:function size:0x220 +fn_1_188F0 = .text:0x000188F0; // type:function size:0x144 +fn_1_18A34 = .text:0x00018A34; // type:function size:0x8C +fn_1_18AC0 = .text:0x00018AC0; // type:function size:0x3BC +fn_1_18E7C = .text:0x00018E7C; // type:function size:0x48 +fn_1_18EC4 = .text:0x00018EC4; // type:function size:0x274 +fn_1_19138 = .text:0x00019138; // type:function size:0x1FC +fn_1_19334 = .text:0x00019334; // type:function size:0x6B0 +fn_1_199E4 = .text:0x000199E4; // type:function size:0x248 +fn_1_19C2C = .text:0x00019C2C; // type:function size:0x84 +fn_1_19CB0 = .text:0x00019CB0; // type:function size:0x2A8 +fn_1_19F58 = .text:0x00019F58; // type:function size:0xB4 +fn_1_1A00C = .text:0x0001A00C; // type:function size:0x198 +fn_1_1A1A4 = .text:0x0001A1A4; // type:function size:0x208 +fn_1_1A3AC = .text:0x0001A3AC; // type:function size:0x1D0 +fn_1_1A57C = .text:0x0001A57C; // type:function size:0x40 +fn_1_1A5BC = .text:0x0001A5BC; // type:function size:0x254 +fn_1_1A810 = .text:0x0001A810; // type:function size:0x204 +fn_1_1AA14 = .text:0x0001AA14; // type:function size:0xE4 +fn_1_1AAF8 = .text:0x0001AAF8; // type:function size:0x288 +fn_1_1AD80 = .text:0x0001AD80; // type:function size:0xE4 +fn_1_1AE64 = .text:0x0001AE64; // type:function size:0x1B4 +fn_1_1B018 = .text:0x0001B018; // type:function size:0x110 +fn_1_1B128 = .text:0x0001B128; // type:function size:0x234 +fn_1_1B35C = .text:0x0001B35C; // type:function size:0x8C +fn_1_1B3E8 = .text:0x0001B3E8; // type:function size:0x8C +fn_1_1B474 = .text:0x0001B474; // type:function size:0x130 +fn_1_1B5A4 = .text:0x0001B5A4; // type:function size:0xEC +fn_1_1B690 = .text:0x0001B690; // type:function size:0x224 +fn_1_1B8B4 = .text:0x0001B8B4; // type:function size:0x9C +fn_1_1B950 = .text:0x0001B950; // type:function size:0x50 +_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:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0xC data:4byte +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:0xC data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local +jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 +lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x33 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 +lbl_1_data_698 = .data:0x00000698; // type:object size:0x3C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x34 +lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 +lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte +lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 +lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 +lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte +lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte +lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x24 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x54 data:float +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x10 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x40 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x28 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x28 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x28 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x28 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x28 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x104 data:float +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x4 data:4byte +lbl_1_bss_29C = .bss:0x0000029C; // type:object size:0xA0 +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x28 data:4byte +lbl_1_bss_364 = .bss:0x00000364; // type:object size:0x28 data:4byte +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x28 data:4byte +lbl_1_bss_3B4 = .bss:0x000003B4; // type:object size:0x28 data:4byte +lbl_1_bss_3DC = .bss:0x000003DC; // type:object size:0x104 data:4byte +lbl_1_bss_4E0 = .bss:0x000004E0; // type:object size:0x4 data:4byte +lbl_1_bss_4E4 = .bss:0x000004E4; // type:object size:0x4 data:4byte +lbl_1_bss_4E8 = .bss:0x000004E8; // type:object size:0x60 data:4byte +lbl_1_bss_548 = .bss:0x00000548; // type:object size:0xA0 +lbl_1_bss_5E8 = .bss:0x000005E8; // type:object size:0x28 data:4byte +lbl_1_bss_610 = .bss:0x00000610; // type:object size:0x28 data:4byte +lbl_1_bss_638 = .bss:0x00000638; // type:object size:0x28 data:4byte +lbl_1_bss_660 = .bss:0x00000660; // type:object size:0x28 data:4byte +lbl_1_bss_688 = .bss:0x00000688; // type:object size:0x108 data:float +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x4 data:4byte +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x4 data:4byte +lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x28 data:4byte +lbl_1_bss_7C0 = .bss:0x000007C0; // type:object size:0x28 data:4byte +lbl_1_bss_7E8 = .bss:0x000007E8; // type:object size:0x28 data:4byte +lbl_1_bss_810 = .bss:0x00000810; // type:object size:0x28 data:4byte +lbl_1_bss_838 = .bss:0x00000838; // type:object size:0x28 data:4byte +lbl_1_bss_860 = .bss:0x00000860; // type:object size:0x108 data:4byte +lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x4 data:4byte +lbl_1_bss_96C = .bss:0x0000096C; // type:object size:0x28 data:4byte +lbl_1_bss_994 = .bss:0x00000994; // type:object size:0x28 data:4byte +lbl_1_bss_9BC = .bss:0x000009BC; // type:object size:0x28 data:4byte +lbl_1_bss_9E4 = .bss:0x000009E4; // type:object size:0x28 data:4byte +lbl_1_bss_A0C = .bss:0x00000A0C; // type:object size:0x28 data:4byte +lbl_1_bss_A34 = .bss:0x00000A34; // type:object size:0x104 data:4byte +lbl_1_bss_B38 = .bss:0x00000B38; // type:object size:0x4 data:4byte +lbl_1_bss_B3C = .bss:0x00000B3C; // type:object size:0x4 data:4byte +lbl_1_bss_B40 = .bss:0x00000B40; // type:object size:0x4 data:4byte +lbl_1_bss_B44 = .bss:0x00000B44; // type:object size:0x28 data:4byte +lbl_1_bss_B6C = .bss:0x00000B6C; // type:object size:0x28 data:4byte +lbl_1_bss_B94 = .bss:0x00000B94; // type:object size:0x28 data:4byte +lbl_1_bss_BBC = .bss:0x00000BBC; // type:object size:0x28 data:4byte +lbl_1_bss_BE4 = .bss:0x00000BE4; // type:object size:0x28 data:4byte +lbl_1_bss_C0C = .bss:0x00000C0C; // type:object size:0x104 data:float +lbl_1_bss_D10 = .bss:0x00000D10; // type:object size:0x4 data:4byte +lbl_1_bss_D14 = .bss:0x00000D14; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/mstory3Dll/splits.txt b/config/GMPP01_00/rels/mstory3Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/mstory3Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/mstory3Dll/symbols.txt b/config/GMPP01_00/rels/mstory3Dll/symbols.txt new file mode 100644 index 00000000..9835d8ae --- /dev/null +++ b/config/GMPP01_00/rels/mstory3Dll/symbols.txt @@ -0,0 +1,549 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 +_prolog = .text:0x0000036C; // type:function size:0x54 scope:global +_epilog = .text:0x000003C0; // type:function size:0x4C scope:global +fn_1_40C = .text:0x0000040C; // type:function size:0xE4 +fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 +fn_1_5FC = .text:0x000005FC; // type:function size:0x20 +fn_1_61C = .text:0x0000061C; // type:function size:0xD8 +fn_1_6F4 = .text:0x000006F4; // type:function size:0xC8 +fn_1_7BC = .text:0x000007BC; // type:function size:0xBC +fn_1_878 = .text:0x00000878; // type:function size:0xBC +fn_1_934 = .text:0x00000934; // type:function size:0x4 +fn_1_938 = .text:0x00000938; // type:function size:0x20 +fn_1_958 = .text:0x00000958; // type:function size:0x28 +fn_1_980 = .text:0x00000980; // type:function size:0x20 +fn_1_9A0 = .text:0x000009A0; // type:function size:0x24 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x20 +fn_1_9E4 = .text:0x000009E4; // type:function size:0xA48 +fn_1_142C = .text:0x0000142C; // type:function size:0x1F8 +fn_1_1624 = .text:0x00001624; // type:function size:0x210 +fn_1_1834 = .text:0x00001834; // type:function size:0x1F0 +fn_1_1A24 = .text:0x00001A24; // type:function size:0x2C +fn_1_1A50 = .text:0x00001A50; // type:function size:0x60 +fn_1_1AB0 = .text:0x00001AB0; // type:function size:0x68 +fn_1_1B18 = .text:0x00001B18; // type:function size:0xAC +fn_1_1BC4 = .text:0x00001BC4; // type:function size:0xC4 +fn_1_1C88 = .text:0x00001C88; // type:function size:0xBC +fn_1_1D44 = .text:0x00001D44; // type:function size:0x34 +fn_1_1D78 = .text:0x00001D78; // type:function size:0x40 +fn_1_1DB8 = .text:0x00001DB8; // type:function size:0x70 +fn_1_1E28 = .text:0x00001E28; // type:function size:0x178 +fn_1_1FA0 = .text:0x00001FA0; // type:function size:0x2E0 +fn_1_2280 = .text:0x00002280; // type:function size:0x90 +fn_1_2310 = .text:0x00002310; // type:function size:0xC8 +fn_1_23D8 = .text:0x000023D8; // type:function size:0x48 +fn_1_2420 = .text:0x00002420; // type:function size:0x54 +fn_1_2474 = .text:0x00002474; // type:function size:0x3C0 +fn_1_2834 = .text:0x00002834; // type:function size:0x10 +fn_1_2844 = .text:0x00002844; // type:function size:0x10 +fn_1_2854 = .text:0x00002854; // type:function size:0xB8 +fn_1_290C = .text:0x0000290C; // type:function size:0x120 +fn_1_2A2C = .text:0x00002A2C; // type:function size:0x3A8 +fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x7F4 +fn_1_35C8 = .text:0x000035C8; // type:function size:0x88 +fn_1_3650 = .text:0x00003650; // type:function size:0x94 +fn_1_36E4 = .text:0x000036E4; // type:function size:0x58 +fn_1_373C = .text:0x0000373C; // type:function size:0x8C +fn_1_37C8 = .text:0x000037C8; // type:function size:0xEC +fn_1_38B4 = .text:0x000038B4; // type:function size:0xC4 +fn_1_3978 = .text:0x00003978; // type:function size:0x3C +fn_1_39B4 = .text:0x000039B4; // type:function size:0x44 +fn_1_39F8 = .text:0x000039F8; // type:function size:0x26C +fn_1_3C64 = .text:0x00003C64; // type:function size:0x26C +fn_1_3ED0 = .text:0x00003ED0; // type:function size:0x27C +fn_1_414C = .text:0x0000414C; // type:function size:0x2B4 +fn_1_4400 = .text:0x00004400; // type:function size:0x46C +fn_1_486C = .text:0x0000486C; // type:function size:0x454 +fn_1_4CC0 = .text:0x00004CC0; // type:function size:0x48C +fn_1_514C = .text:0x0000514C; // type:function size:0x658 +fn_1_57A4 = .text:0x000057A4; // type:function size:0x4C4 +fn_1_5C68 = .text:0x00005C68; // type:function size:0x4FC +fn_1_6164 = .text:0x00006164; // type:function size:0x6C8 +fn_1_682C = .text:0x0000682C; // type:function size:0xC4 +fn_1_68F0 = .text:0x000068F0; // type:function size:0x188 +fn_1_6A78 = .text:0x00006A78; // type:function size:0x34 +fn_1_6AAC = .text:0x00006AAC; // type:function size:0x40 +fn_1_6AEC = .text:0x00006AEC; // type:function size:0xAC +fn_1_6B98 = .text:0x00006B98; // type:function size:0x1E8 +fn_1_6D80 = .text:0x00006D80; // type:function size:0xB4 +fn_1_6E34 = .text:0x00006E34; // type:function size:0x1D0 +fn_1_7004 = .text:0x00007004; // type:function size:0x394 +fn_1_7398 = .text:0x00007398; // type:function size:0x640 +fn_1_79D8 = .text:0x000079D8; // type:function size:0x4B0 +fn_1_7E88 = .text:0x00007E88; // type:function size:0x2C4 +fn_1_814C = .text:0x0000814C; // type:function size:0x118 +fn_1_8264 = .text:0x00008264; // type:function size:0x7C +fn_1_82E0 = .text:0x000082E0; // type:function size:0x8C +fn_1_836C = .text:0x0000836C; // type:function size:0xF0 +fn_1_845C = .text:0x0000845C; // type:function size:0x2FC +fn_1_8758 = .text:0x00008758; // type:function size:0x100 +fn_1_8858 = .text:0x00008858; // type:function size:0xF0 +fn_1_8948 = .text:0x00008948; // type:function size:0xF0 +fn_1_8A38 = .text:0x00008A38; // type:function size:0xF0 +fn_1_8B28 = .text:0x00008B28; // type:function size:0xF0 +fn_1_8C18 = .text:0x00008C18; // type:function size:0x7C +fn_1_8C94 = .text:0x00008C94; // type:function size:0x4AC +fn_1_9140 = .text:0x00009140; // type:function size:0x88 +fn_1_91C8 = .text:0x000091C8; // type:function size:0x58 +fn_1_9220 = .text:0x00009220; // type:function size:0x1B0 +fn_1_93D0 = .text:0x000093D0; // type:function size:0xB8 +fn_1_9488 = .text:0x00009488; // type:function size:0x228 +fn_1_96B0 = .text:0x000096B0; // type:function size:0xB8 +fn_1_9768 = .text:0x00009768; // type:function size:0x228 +fn_1_9990 = .text:0x00009990; // type:function size:0x78 +fn_1_9A08 = .text:0x00009A08; // type:function size:0x5C +fn_1_9A64 = .text:0x00009A64; // type:function size:0x8B0 +fn_1_A314 = .text:0x0000A314; // type:function size:0x1DC +fn_1_A4F0 = .text:0x0000A4F0; // type:function size:0x6BC +fn_1_ABAC = .text:0x0000ABAC; // type:function size:0xAC4 +fn_1_B670 = .text:0x0000B670; // type:function size:0x118 +fn_1_B788 = .text:0x0000B788; // type:function size:0x6D4 +fn_1_BE5C = .text:0x0000BE5C; // type:function size:0x104 +fn_1_BF60 = .text:0x0000BF60; // type:function size:0x100 +fn_1_C060 = .text:0x0000C060; // type:function size:0xE0C +fn_1_CE6C = .text:0x0000CE6C; // type:function size:0x620 +fn_1_D48C = .text:0x0000D48C; // type:function size:0xAC +fn_1_D538 = .text:0x0000D538; // type:function size:0x1E0 +fn_1_D718 = .text:0x0000D718; // type:function size:0xC0 +fn_1_D7D8 = .text:0x0000D7D8; // type:function size:0x390 +fn_1_DB68 = .text:0x0000DB68; // type:function size:0x5F8 +fn_1_E160 = .text:0x0000E160; // type:function size:0x1BD0 +fn_1_FD30 = .text:0x0000FD30; // type:function size:0x150 +fn_1_FE80 = .text:0x0000FE80; // type:function size:0xFC +fn_1_FF7C = .text:0x0000FF7C; // type:function size:0x3F0 +fn_1_1036C = .text:0x0001036C; // type:function size:0xA08 +fn_1_10D74 = .text:0x00010D74; // type:function size:0xA20 +fn_1_11794 = .text:0x00011794; // type:function size:0xA0 +fn_1_11834 = .text:0x00011834; // type:function size:0xBA4 +fn_1_123D8 = .text:0x000123D8; // type:function size:0x44 +fn_1_1241C = .text:0x0001241C; // type:function size:0x4 +fn_1_12420 = .text:0x00012420; // type:function size:0x678 +fn_1_12A98 = .text:0x00012A98; // type:function size:0x170 +fn_1_12C08 = .text:0x00012C08; // type:function size:0x1A4 +fn_1_12DAC = .text:0x00012DAC; // type:function size:0x2FC +fn_1_130A8 = .text:0x000130A8; // type:function size:0xD4 +fn_1_1317C = .text:0x0001317C; // type:function size:0x130 +fn_1_132AC = .text:0x000132AC; // type:function size:0x65C +fn_1_13908 = .text:0x00013908; // type:function size:0x130 +fn_1_13A38 = .text:0x00013A38; // type:function size:0x4 +fn_1_13A3C = .text:0x00013A3C; // type:function size:0x23C +fn_1_13C78 = .text:0x00013C78; // type:function size:0xC0 +fn_1_13D38 = .text:0x00013D38; // type:function size:0x60 +fn_1_13D98 = .text:0x00013D98; // type:function size:0x308 +fn_1_140A0 = .text:0x000140A0; // type:function size:0x38C +fn_1_1442C = .text:0x0001442C; // type:function size:0x140 +fn_1_1456C = .text:0x0001456C; // type:function size:0x118 +fn_1_14684 = .text:0x00014684; // type:function size:0x7C +fn_1_14700 = .text:0x00014700; // type:function size:0x48 +fn_1_14748 = .text:0x00014748; // type:function size:0x724 +fn_1_14E6C = .text:0x00014E6C; // type:function size:0x114 +fn_1_14F80 = .text:0x00014F80; // type:function size:0x54 +fn_1_14FD4 = .text:0x00014FD4; // type:function size:0x31C +fn_1_152F0 = .text:0x000152F0; // type:function size:0x160 +fn_1_15450 = .text:0x00015450; // type:function size:0x3A0 +fn_1_157F0 = .text:0x000157F0; // type:function size:0x1B4 +fn_1_159A4 = .text:0x000159A4; // type:function size:0x268 +fn_1_15C0C = .text:0x00015C0C; // type:function size:0xFC +fn_1_15D08 = .text:0x00015D08; // type:function size:0xC0 +fn_1_15DC8 = .text:0x00015DC8; // type:function size:0x3F0 +fn_1_161B8 = .text:0x000161B8; // type:function size:0x3BC +fn_1_16574 = .text:0x00016574; // type:function size:0x54 +fn_1_165C8 = .text:0x000165C8; // type:function size:0x35C +fn_1_16924 = .text:0x00016924; // type:function size:0x1B0 +fn_1_16AD4 = .text:0x00016AD4; // type:function size:0x400 +fn_1_16ED4 = .text:0x00016ED4; // type:function size:0x258 +fn_1_1712C = .text:0x0001712C; // type:function size:0x160 +fn_1_1728C = .text:0x0001728C; // type:function size:0x1F8 +fn_1_17484 = .text:0x00017484; // type:function size:0xEC +fn_1_17570 = .text:0x00017570; // type:function size:0x850 +fn_1_17DC0 = .text:0x00017DC0; // type:function size:0x2C0 +fn_1_18080 = .text:0x00018080; // type:function size:0x9C +fn_1_1811C = .text:0x0001811C; // type:function size:0x218 +fn_1_18334 = .text:0x00018334; // type:function size:0x1B4 +fn_1_184E8 = .text:0x000184E8; // type:function size:0x70 +fn_1_18558 = .text:0x00018558; // type:function size:0x110 +fn_1_18668 = .text:0x00018668; // type:function size:0x694 +fn_1_18CFC = .text:0x00018CFC; // type:function size:0x29C +fn_1_18F98 = .text:0x00018F98; // type:function size:0x1AC +fn_1_19144 = .text:0x00019144; // type:function size:0xD0 +fn_1_19214 = .text:0x00019214; // type:function size:0x28C +fn_1_194A0 = .text:0x000194A0; // type:function size:0xF0 +fn_1_19590 = .text:0x00019590; // type:function size:0x224 +fn_1_197B4 = .text:0x000197B4; // type:function size:0x854 +fn_1_1A008 = .text:0x0001A008; // type:function size:0x1EF4 +fn_1_1BEFC = .text:0x0001BEFC; // type:function size:0x3F8 +fn_1_1C2F4 = .text:0x0001C2F4; // type:function size:0x16C +fn_1_1C460 = .text:0x0001C460; // type:function size:0xD4 +fn_1_1C534 = .text:0x0001C534; // type:function size:0x3E0 +fn_1_1C914 = .text:0x0001C914; // type:function size:0x184 +fn_1_1CA98 = .text:0x0001CA98; // type:function size:0xE4 +fn_1_1CB7C = .text:0x0001CB7C; // type:function size:0xE0 +fn_1_1CC5C = .text:0x0001CC5C; // type:function size:0x104 +fn_1_1CD60 = .text:0x0001CD60; // type:function size:0x90 +fn_1_1CDF0 = .text:0x0001CDF0; // type:function size:0x334 +fn_1_1D124 = .text:0x0001D124; // type:function size:0x518 +fn_1_1D63C = .text:0x0001D63C; // type:function size:0x140 +fn_1_1D77C = .text:0x0001D77C; // type:function size:0x150 +fn_1_1D8CC = .text:0x0001D8CC; // type:function size:0x98 +fn_1_1D964 = .text:0x0001D964; // type:function size:0x100 +fn_1_1DA64 = .text:0x0001DA64; // type:function size:0x48 +fn_1_1DAAC = .text:0x0001DAAC; // type:function size:0x3A0 +fn_1_1DE4C = .text:0x0001DE4C; // type:function size:0x8C +fn_1_1DED8 = .text:0x0001DED8; // type:function size:0x21C +fn_1_1E0F4 = .text:0x0001E0F4; // type:function size:0x14 +fn_1_1E108 = .text:0x0001E108; // type:function size:0x10 +fn_1_1E118 = .text:0x0001E118; // type:function size:0x14 +fn_1_1E12C = .text:0x0001E12C; // type:function size:0x10 +fn_1_1E13C = .text:0x0001E13C; // type:function size:0x41C +fn_1_1E558 = .text:0x0001E558; // type:function size:0x2C8 +fn_1_1E820 = .text:0x0001E820; // type:function size:0x8E0 +_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:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x20 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte +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_214 = .rodata:0x00000214; // 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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x2C data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xF +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0x15 +lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float +lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 +lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1E +lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x11 +jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 +lbl_1_data_78C = .data:0x0000078C; // type:object size:0x54 +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:float +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:float +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:float +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:float +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:float +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x1340 +lbl_1_bss_1408 = .bss:0x00001408; // type:object size:0x18 +lbl_1_bss_1420 = .bss:0x00001420; // type:object size:0x4 data:4byte +lbl_1_bss_1424 = .bss:0x00001424; // type:object size:0x4 data:float +lbl_1_bss_1428 = .bss:0x00001428; // type:object size:0x10 data:4byte +lbl_1_bss_1438 = .bss:0x00001438; // type:object size:0x10 +lbl_1_bss_1448 = .bss:0x00001448; // type:object size:0x10 data:4byte +lbl_1_bss_1458 = .bss:0x00001458; // type:object size:0x10 data:4byte +lbl_1_bss_1468 = .bss:0x00001468; // type:object size:0x28 data:4byte +lbl_1_bss_1490 = .bss:0x00001490; // type:object size:0xA0 data:4byte +lbl_1_bss_1530 = .bss:0x00001530; // type:object size:0x28 data:4byte +lbl_1_bss_1558 = .bss:0x00001558; // type:object size:0x28 data:4byte +lbl_1_bss_1580 = .bss:0x00001580; // type:object size:0x350 data:4byte +lbl_1_bss_18D0 = .bss:0x000018D0; // type:object size:0x4 data:4byte +lbl_1_bss_18D4 = .bss:0x000018D4; // type:object size:0x4 data:4byte +lbl_1_bss_18D8 = .bss:0x000018D8; // type:object size:0xC data:4byte +lbl_1_bss_18E4 = .bss:0x000018E4; // type:object size:0x8 data:4byte +lbl_1_bss_18EC = .bss:0x000018EC; // type:object size:0x8 data:4byte +lbl_1_bss_18F4 = .bss:0x000018F4; // type:object size:0xA0 +lbl_1_bss_1994 = .bss:0x00001994; // type:object size:0x28 data:4byte +lbl_1_bss_19BC = .bss:0x000019BC; // type:object size:0x28 data:4byte +lbl_1_bss_19E4 = .bss:0x000019E4; // type:object size:0x28 data:4byte +lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2DC data:float +lbl_1_bss_1CE8 = .bss:0x00001CE8; // type:object size:0x2 data:2byte +lbl_1_bss_1CEC = .bss:0x00001CEC; // type:object size:0x4 data:4byte +lbl_1_bss_1CF0 = .bss:0x00001CF0; // type:object size:0x4 data:4byte +lbl_1_bss_1CF4 = .bss:0x00001CF4; // type:object size:0x4 data:4byte +lbl_1_bss_1CF8 = .bss:0x00001CF8; // type:object size:0x58 data:2byte diff --git a/config/GMPP01_00/rels/mstory4Dll/splits.txt b/config/GMPP01_00/rels/mstory4Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/mstory4Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/mstory4Dll/symbols.txt b/config/GMPP01_00/rels/mstory4Dll/symbols.txt new file mode 100644 index 00000000..e98f616c --- /dev/null +++ b/config/GMPP01_00/rels/mstory4Dll/symbols.txt @@ -0,0 +1,67 @@ +fn_1_0 = .text:0x00000000; // type:function size:0xEC +fn_1_EC = .text:0x000000EC; // type:function size:0xE68 +_prolog = .text:0x00000F54; // type:function size:0x54 scope:global +_epilog = .text:0x00000FA8; // type:function size:0x4C scope:global +fn_1_FF4 = .text:0x00000FF4; // type:function size:0xB8 +fn_1_10AC = .text:0x000010AC; // type:function size:0x68C +_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:0x1 data:byte +lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x1C data:4byte +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:0x1 data:byte +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_data_0 = .data:0x00000000; // type:object size:0x3C0 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0xF data:string +lbl_1_data_3CF = .data:0x000003CF; // type:object size:0x14 data:string +lbl_1_data_3E3 = .data:0x000003E3; // type:object size:0x15 data:string +lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x11 data:string +lbl_1_data_409 = .data:0x00000409; // type:object size:0x12 data:string +lbl_1_data_41B = .data:0x0000041B; // type:object size:0x15 +lbl_1_data_430 = .data:0x00000430; // type:object size:0x18 +lbl_1_data_448 = .data:0x00000448; // type:object size:0x20 data:string +lbl_1_data_468 = .data:0x00000468; // type:object size:0x24 data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x23 data:string +lbl_1_data_4AF = .data:0x000004AF; // type:object size:0x27 data:string +lbl_1_data_4D6 = .data:0x000004D6; // type:object size:0x26 data:string +lbl_1_data_4FC = .data:0x000004FC; // type:object size:0x29 data:string +lbl_1_data_525 = .data:0x00000525; // type:object size:0x1B +lbl_1_data_540 = .data:0x00000540; // type:object size:0x1C +lbl_1_data_55C = .data:0x0000055C; // type:object size:0x8 data:string +lbl_1_data_564 = .data:0x00000564; // type:object size:0x7 data:string +lbl_1_data_56B = .data:0x0000056B; // type:object size:0x6 data:string +lbl_1_data_571 = .data:0x00000571; // type:object size:0xB +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x10 +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x1C data:4byte +lbl_1_data_5A8 = .data:0x000005A8; // type:object size:0x1C +lbl_1_data_5C4 = .data:0x000005C4; // type:object size:0x7 data:string +lbl_1_data_5CB = .data:0x000005CB; // type:object size:0x33 data:string +lbl_1_data_5FE = .data:0x000005FE; // type:object size:0x3 data:string +lbl_1_data_601 = .data:0x00000601; // type:object size:0x9 data:string +lbl_1_data_60A = .data:0x0000060A; // type:object size:0x12 +jumptable_1_data_61C = .data:0x0000061C; // type:object size:0x1C scope:local +lbl_1_data_638 = .data:0x00000638; // type:object size:0x6 data:string +lbl_1_data_63E = .data:0x0000063E; // type:object size:0x6 data:string +lbl_1_data_644 = .data:0x00000644; // type:object size:0x6 data:string +lbl_1_data_64A = .data:0x0000064A; // type:object size:0x6 data:string +lbl_1_data_650 = .data:0x00000650; // type:object size:0x6 data:string +lbl_1_data_656 = .data:0x00000656; // type:object size:0x7 data:string +lbl_1_data_65D = .data:0x0000065D; // type:object size:0x6 data:string +lbl_1_data_663 = .data:0x00000663; // type:object size:0x9 +lbl_1_data_66C = .data:0x0000066C; // type:object size:0x20 +lbl_1_data_68C = .data:0x0000068C; // type:object size:0x16 data:string +lbl_1_data_6A2 = .data:0x000006A2; // type:object size:0x11 data:string +lbl_1_data_6B3 = .data:0x000006B3; // type:object size:0x10 data:string +lbl_1_data_6C3 = .data:0x000006C3; // type:object size:0xD data:string +lbl_1_data_6D0 = .data:0x000006D0; // type:object size:0x10 data:string +lbl_1_data_6E0 = .data:0x000006E0; // type:object size:0xD data:string +lbl_1_data_6ED = .data:0x000006ED; // type:object size:0x1B data:string +lbl_1_data_708 = .data:0x00000708; // type:object size:0x1A data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/mstoryDll/splits.txt b/config/GMPP01_00/rels/mstoryDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/mstoryDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/mstoryDll/symbols.txt b/config/GMPP01_00/rels/mstoryDll/symbols.txt new file mode 100644 index 00000000..e9076690 --- /dev/null +++ b/config/GMPP01_00/rels/mstoryDll/symbols.txt @@ -0,0 +1,498 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x344 +_prolog = .text:0x000003E8; // type:function size:0x54 scope:global +_epilog = .text:0x0000043C; // type:function size:0x4C scope:global +fn_1_488 = .text:0x00000488; // type:function size:0x1D0 +fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +fn_1_828 = .text:0x00000828; // type:function size:0x28 +fn_1_850 = .text:0x00000850; // type:function size:0x20 +fn_1_870 = .text:0x00000870; // type:function size:0xD8 +fn_1_948 = .text:0x00000948; // type:function size:0xC8 +fn_1_A10 = .text:0x00000A10; // type:function size:0xBC +fn_1_ACC = .text:0x00000ACC; // type:function size:0xBC +fn_1_B88 = .text:0x00000B88; // type:function size:0x4 +fn_1_B8C = .text:0x00000B8C; // type:function size:0x20 +fn_1_BAC = .text:0x00000BAC; // type:function size:0x28 +fn_1_BD4 = .text:0x00000BD4; // type:function size:0x20 +fn_1_BF4 = .text:0x00000BF4; // type:function size:0x24 +fn_1_C18 = .text:0x00000C18; // type:function size:0x20 +fn_1_C38 = .text:0x00000C38; // type:function size:0xA48 +fn_1_1680 = .text:0x00001680; // type:function size:0x1B4 +fn_1_1834 = .text:0x00001834; // type:function size:0x1D0 +fn_1_1A04 = .text:0x00001A04; // type:function size:0x60 +fn_1_1A64 = .text:0x00001A64; // type:function size:0x68 +fn_1_1ACC = .text:0x00001ACC; // type:function size:0xAC +fn_1_1B78 = .text:0x00001B78; // type:function size:0xBC +fn_1_1C34 = .text:0x00001C34; // type:function size:0xB4 +fn_1_1CE8 = .text:0x00001CE8; // type:function size:0x34 +fn_1_1D1C = .text:0x00001D1C; // type:function size:0x40 +fn_1_1D5C = .text:0x00001D5C; // type:function size:0x70 +fn_1_1DCC = .text:0x00001DCC; // type:function size:0x178 +fn_1_1F44 = .text:0x00001F44; // type:function size:0x2E0 +fn_1_2224 = .text:0x00002224; // type:function size:0x90 +fn_1_22B4 = .text:0x000022B4; // type:function size:0x48 +fn_1_22FC = .text:0x000022FC; // type:function size:0x54 +fn_1_2350 = .text:0x00002350; // type:function size:0x3C0 +fn_1_2710 = .text:0x00002710; // type:function size:0x10 +fn_1_2720 = .text:0x00002720; // type:function size:0x10 +fn_1_2730 = .text:0x00002730; // type:function size:0xB8 +fn_1_27E8 = .text:0x000027E8; // type:function size:0x120 +fn_1_2908 = .text:0x00002908; // type:function size:0x3A8 +fn_1_2CB0 = .text:0x00002CB0; // type:function size:0x7F4 +fn_1_34A4 = .text:0x000034A4; // type:function size:0x88 +fn_1_352C = .text:0x0000352C; // type:function size:0x94 +fn_1_35C0 = .text:0x000035C0; // type:function size:0x58 +fn_1_3618 = .text:0x00003618; // type:function size:0xEC +fn_1_3704 = .text:0x00003704; // type:function size:0xC4 +fn_1_37C8 = .text:0x000037C8; // type:function size:0x3C +fn_1_3804 = .text:0x00003804; // type:function size:0x44 +fn_1_3848 = .text:0x00003848; // type:function size:0x274 +fn_1_3ABC = .text:0x00003ABC; // type:function size:0x26C +fn_1_3D28 = .text:0x00003D28; // type:function size:0x22C +fn_1_3F54 = .text:0x00003F54; // type:function size:0x27C +fn_1_41D0 = .text:0x000041D0; // type:function size:0x2B4 +fn_1_4484 = .text:0x00004484; // type:function size:0x46C +fn_1_48F0 = .text:0x000048F0; // type:function size:0x454 +fn_1_4D44 = .text:0x00004D44; // type:function size:0x48C +fn_1_51D0 = .text:0x000051D0; // type:function size:0x658 +fn_1_5828 = .text:0x00005828; // type:function size:0x4C4 +fn_1_5CEC = .text:0x00005CEC; // type:function size:0x4FC +fn_1_61E8 = .text:0x000061E8; // type:function size:0x6C8 +fn_1_68B0 = .text:0x000068B0; // type:function size:0xC4 +fn_1_6974 = .text:0x00006974; // type:function size:0x188 +fn_1_6AFC = .text:0x00006AFC; // type:function size:0x34 +fn_1_6B30 = .text:0x00006B30; // type:function size:0x40 +fn_1_6B70 = .text:0x00006B70; // type:function size:0xAC +fn_1_6C1C = .text:0x00006C1C; // type:function size:0x1E8 +fn_1_6E04 = .text:0x00006E04; // type:function size:0xB4 +fn_1_6EB8 = .text:0x00006EB8; // type:function size:0x170 +fn_1_7028 = .text:0x00007028; // type:function size:0x68 +fn_1_7090 = .text:0x00007090; // type:function size:0xA4 +fn_1_7134 = .text:0x00007134; // type:function size:0x1E8 +fn_1_731C = .text:0x0000731C; // type:function size:0x69C +fn_1_79B8 = .text:0x000079B8; // type:function size:0x128 +fn_1_7AE0 = .text:0x00007AE0; // type:function size:0x390 +fn_1_7E70 = .text:0x00007E70; // type:function size:0x5C +fn_1_7ECC = .text:0x00007ECC; // type:function size:0x1C4 +fn_1_8090 = .text:0x00008090; // type:function size:0x320 +fn_1_83B0 = .text:0x000083B0; // type:function size:0x58 +fn_1_8408 = .text:0x00008408; // type:function size:0x3D4 +fn_1_87DC = .text:0x000087DC; // type:function size:0x268 +fn_1_8A44 = .text:0x00008A44; // type:function size:0x9C +fn_1_8AE0 = .text:0x00008AE0; // type:function size:0x2E0 +fn_1_8DC0 = .text:0x00008DC0; // type:function size:0xAC +fn_1_8E6C = .text:0x00008E6C; // type:function size:0xFC +fn_1_8F68 = .text:0x00008F68; // type:function size:0x36C +fn_1_92D4 = .text:0x000092D4; // type:function size:0x134 +fn_1_9408 = .text:0x00009408; // type:function size:0x310 +fn_1_9718 = .text:0x00009718; // type:function size:0x18C +fn_1_98A4 = .text:0x000098A4; // type:function size:0x88 +fn_1_992C = .text:0x0000992C; // type:function size:0x3DC +fn_1_9D08 = .text:0x00009D08; // type:function size:0x300 +fn_1_A008 = .text:0x0000A008; // type:function size:0xE4 +fn_1_A0EC = .text:0x0000A0EC; // type:function size:0x38C +fn_1_A478 = .text:0x0000A478; // type:function size:0x8C +fn_1_A504 = .text:0x0000A504; // type:function size:0xF0 +fn_1_A5F4 = .text:0x0000A5F4; // type:function size:0x23C +fn_1_A830 = .text:0x0000A830; // type:function size:0xC8 +fn_1_A8F8 = .text:0x0000A8F8; // type:function size:0x2B4 +fn_1_ABAC = .text:0x0000ABAC; // type:function size:0x150 +fn_1_ACFC = .text:0x0000ACFC; // type:function size:0x134 +fn_1_AE30 = .text:0x0000AE30; // type:function size:0x8C +fn_1_AEBC = .text:0x0000AEBC; // type:function size:0x374 +fn_1_B230 = .text:0x0000B230; // type:function size:0x5C +fn_1_B28C = .text:0x0000B28C; // type:function size:0x214 +fn_1_B4A0 = .text:0x0000B4A0; // type:function size:0xE8 +fn_1_B588 = .text:0x0000B588; // type:function size:0xE8 +fn_1_B670 = .text:0x0000B670; // type:function size:0x11C +fn_1_B78C = .text:0x0000B78C; // type:function size:0x13C +fn_1_B8C8 = .text:0x0000B8C8; // type:function size:0x4 +fn_1_B8CC = .text:0x0000B8CC; // type:function size:0x104 +fn_1_B9D0 = .text:0x0000B9D0; // type:function size:0x208 +fn_1_BBD8 = .text:0x0000BBD8; // type:function size:0x788 +fn_1_C360 = .text:0x0000C360; // type:function size:0xB4 +fn_1_C414 = .text:0x0000C414; // type:function size:0x2F4 +fn_1_C708 = .text:0x0000C708; // type:function size:0xBC +fn_1_C7C4 = .text:0x0000C7C4; // type:function size:0x384 +fn_1_CB48 = .text:0x0000CB48; // type:function size:0x300 +fn_1_CE48 = .text:0x0000CE48; // type:function size:0xAC +fn_1_CEF4 = .text:0x0000CEF4; // type:function size:0xE4 +fn_1_CFD8 = .text:0x0000CFD8; // type:function size:0xC4 +fn_1_D09C = .text:0x0000D09C; // type:function size:0xE4 +fn_1_D180 = .text:0x0000D180; // type:function size:0x3FC +fn_1_D57C = .text:0x0000D57C; // type:function size:0x134 +fn_1_D6B0 = .text:0x0000D6B0; // type:function size:0x2F8 +fn_1_D9A8 = .text:0x0000D9A8; // type:function size:0xFC +fn_1_DAA4 = .text:0x0000DAA4; // type:function size:0x164 +fn_1_DC08 = .text:0x0000DC08; // type:function size:0x118 +fn_1_DD20 = .text:0x0000DD20; // type:function size:0xE4 +fn_1_DE04 = .text:0x0000DE04; // type:function size:0x424 +fn_1_E228 = .text:0x0000E228; // type:function size:0x8C +fn_1_E2B4 = .text:0x0000E2B4; // type:function size:0x130 +fn_1_E3E4 = .text:0x0000E3E4; // type:function size:0x23C +fn_1_E620 = .text:0x0000E620; // type:function size:0xF0 +fn_1_E710 = .text:0x0000E710; // type:function size:0x118 +fn_1_E828 = .text:0x0000E828; // type:function size:0x8C +fn_1_E8B4 = .text:0x0000E8B4; // type:function size:0x34C +fn_1_EC00 = .text:0x0000EC00; // type:function size:0x5C +fn_1_EC5C = .text:0x0000EC5C; // type:function size:0x384 +fn_1_EFE0 = .text:0x0000EFE0; // type:function size:0x70 +fn_1_F050 = .text:0x0000F050; // type:function size:0x14C +fn_1_F19C = .text:0x0000F19C; // type:function size:0x5E4 +fn_1_F780 = .text:0x0000F780; // type:function size:0xEC +fn_1_F86C = .text:0x0000F86C; // type:function size:0xA4 +fn_1_F910 = .text:0x0000F910; // type:function size:0x1D4 +fn_1_FAE4 = .text:0x0000FAE4; // type:function size:0x238 +fn_1_FD1C = .text:0x0000FD1C; // type:function size:0xB4 +fn_1_FDD0 = .text:0x0000FDD0; // type:function size:0x4C8 +fn_1_10298 = .text:0x00010298; // type:function size:0xEC +fn_1_10384 = .text:0x00010384; // type:function size:0xCC +fn_1_10450 = .text:0x00010450; // type:function size:0xFC +fn_1_1054C = .text:0x0001054C; // type:function size:0xAC +fn_1_105F8 = .text:0x000105F8; // type:function size:0x300 +fn_1_108F8 = .text:0x000108F8; // type:function size:0x374 +fn_1_10C6C = .text:0x00010C6C; // type:function size:0xE4 +fn_1_10D50 = .text:0x00010D50; // type:function size:0x1D4 +fn_1_10F24 = .text:0x00010F24; // type:function size:0xAC +fn_1_10FD0 = .text:0x00010FD0; // type:function size:0x2D0 +fn_1_112A0 = .text:0x000112A0; // type:function size:0x8C +fn_1_1132C = .text:0x0001132C; // type:function size:0xF0 +fn_1_1141C = .text:0x0001141C; // type:function size:0x118 +fn_1_11534 = .text:0x00011534; // type:function size:0xF0 +fn_1_11624 = .text:0x00011624; // type:function size:0x10C +fn_1_11730 = .text:0x00011730; // type:function size:0x35C +fn_1_11A8C = .text:0x00011A8C; // type:function size:0x5C +fn_1_11AE8 = .text:0x00011AE8; // type:function size:0x184 +fn_1_11C6C = .text:0x00011C6C; // type:function size:0x16C +fn_1_11DD8 = .text:0x00011DD8; // type:function size:0xEC +fn_1_11EC4 = .text:0x00011EC4; // type:function size:0x64 +fn_1_11F28 = .text:0x00011F28; // type:function size:0x4 +fn_1_11F2C = .text:0x00011F2C; // type:function size:0x144 +fn_1_12070 = .text:0x00012070; // type:function size:0x5C0 +fn_1_12630 = .text:0x00012630; // type:function size:0xB4 +fn_1_126E4 = .text:0x000126E4; // type:function size:0x234 +fn_1_12918 = .text:0x00012918; // type:function size:0xBC +fn_1_129D4 = .text:0x000129D4; // type:function size:0x2C0 +fn_1_12C94 = .text:0x00012C94; // type:function size:0xE4 +fn_1_12D78 = .text:0x00012D78; // type:function size:0x1A8 +fn_1_12F20 = .text:0x00012F20; // type:function size:0x88 +fn_1_12FA8 = .text:0x00012FA8; // type:function size:0x118 +fn_1_130C0 = .text:0x000130C0; // type:function size:0x22C +fn_1_132EC = .text:0x000132EC; // type:function size:0x284 +fn_1_13570 = .text:0x00013570; // type:function size:0x310 +fn_1_13880 = .text:0x00013880; // type:function size:0x8C +fn_1_1390C = .text:0x0001390C; // type:function size:0x23C +fn_1_13B48 = .text:0x00013B48; // type:function size:0xEC +fn_1_13C34 = .text:0x00013C34; // type:function size:0x1F8 +fn_1_13E2C = .text:0x00013E2C; // type:function size:0x324 +fn_1_14150 = .text:0x00014150; // type:function size:0x50 +_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:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0xC data:4byte +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte +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:0x14 data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string +lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string +lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 +lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string +lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C +lbl_1_data_354 = .data:0x00000354; // type:object size:0x34 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string +lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 +lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 +lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 +lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string +lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB +lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string +lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 +lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x28 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x28 data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x104 data:4byte +lbl_1_bss_2C8 = .bss:0x000002C8; // type:object size:0x4 data:4byte +lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x4 data:4byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x60 data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0x8 data:4byte +lbl_1_bss_338 = .bss:0x00000338; // type:object size:0xA0 +lbl_1_bss_3D8 = .bss:0x000003D8; // type:object size:0x28 data:4byte +lbl_1_bss_400 = .bss:0x00000400; // type:object size:0x28 data:4byte +lbl_1_bss_428 = .bss:0x00000428; // type:object size:0x28 data:4byte +lbl_1_bss_450 = .bss:0x00000450; // type:object size:0x108 data:float +lbl_1_bss_558 = .bss:0x00000558; // type:object size:0x4 data:4byte +lbl_1_bss_55C = .bss:0x0000055C; // type:object size:0x4 data:4byte +lbl_1_bss_560 = .bss:0x00000560; // type:object size:0x8 data:4byte +lbl_1_bss_568 = .bss:0x00000568; // type:object size:0x28 data:4byte +lbl_1_bss_590 = .bss:0x00000590; // type:object size:0x28 data:4byte +lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x28 data:4byte +lbl_1_bss_5E0 = .bss:0x000005E0; // type:object size:0x28 data:4byte +lbl_1_bss_608 = .bss:0x00000608; // type:object size:0x108 data:4byte +lbl_1_bss_710 = .bss:0x00000710; // type:object size:0x4 data:4byte +lbl_1_bss_714 = .bss:0x00000714; // type:object size:0x28 data:4byte +lbl_1_bss_73C = .bss:0x0000073C; // type:object size:0x28 data:4byte +lbl_1_bss_764 = .bss:0x00000764; // type:object size:0x28 data:4byte +lbl_1_bss_78C = .bss:0x0000078C; // type:object size:0x28 data:4byte +lbl_1_bss_7B4 = .bss:0x000007B4; // type:object size:0x104 data:4byte +lbl_1_bss_8B8 = .bss:0x000008B8; // type:object size:0x4 data:4byte +lbl_1_bss_8BC = .bss:0x000008BC; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/nisDll/splits.txt b/config/GMPP01_00/rels/nisDll/splits.txt new file mode 100644 index 00000000..2e500fe0 --- /dev/null +++ b/config/GMPP01_00/rels/nisDll/splits.txt @@ -0,0 +1,5 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 diff --git a/config/GMPP01_00/rels/nisDll/symbols.txt b/config/GMPP01_00/rels/nisDll/symbols.txt new file mode 100644 index 00000000..1143328c --- /dev/null +++ b/config/GMPP01_00/rels/nisDll/symbols.txt @@ -0,0 +1,6 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x68 +fn_1_68 = .text:0x00000068; // type:function size:0x2C +_prolog = .text:0x00000094; // type:function size:0x9C scope:global +_epilog = .text:0x00000130; // type:function size:0x4C scope:global +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte diff --git a/config/GMPP01_00/rels/option/splits.txt b/config/GMPP01_00/rels/option/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/option/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/option/symbols.txt b/config/GMPP01_00/rels/option/symbols.txt new file mode 100644 index 00000000..26d4655e --- /dev/null +++ b/config/GMPP01_00/rels/option/symbols.txt @@ -0,0 +1,379 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xC0 +fn_1_160 = .text:0x00000160; // type:function size:0x110 +fn_1_270 = .text:0x00000270; // type:function size:0xE4 +fn_1_354 = .text:0x00000354; // type:function size:0x114 +fn_1_468 = .text:0x00000468; // type:function size:0xE8 +fn_1_550 = .text:0x00000550; // type:function size:0x34 +fn_1_584 = .text:0x00000584; // type:function size:0x34 +fn_1_5B8 = .text:0x000005B8; // type:function size:0x34 +fn_1_5EC = .text:0x000005EC; // type:function size:0xFC +fn_1_6E8 = .text:0x000006E8; // type:function size:0x110 +fn_1_7F8 = .text:0x000007F8; // type:function size:0x244 +fn_1_A3C = .text:0x00000A3C; // type:function size:0x30 +fn_1_A6C = .text:0x00000A6C; // type:function size:0x84 +fn_1_AF0 = .text:0x00000AF0; // type:function size:0x84 +fn_1_B74 = .text:0x00000B74; // type:function size:0x84 +fn_1_BF8 = .text:0x00000BF8; // type:function size:0x30 +fn_1_C28 = .text:0x00000C28; // type:function size:0x30 +fn_1_C58 = .text:0x00000C58; // type:function size:0x30 +fn_1_C88 = .text:0x00000C88; // type:function size:0x30 +fn_1_CB8 = .text:0x00000CB8; // type:function size:0x8C +fn_1_D44 = .text:0x00000D44; // type:function size:0x28 +fn_1_D6C = .text:0x00000D6C; // type:function size:0x578 +fn_1_12E4 = .text:0x000012E4; // type:function size:0x200 +fn_1_14E4 = .text:0x000014E4; // type:function size:0xC0 +fn_1_15A4 = .text:0x000015A4; // type:function size:0x1F4 +fn_1_1798 = .text:0x00001798; // type:function size:0xAC +fn_1_1844 = .text:0x00001844; // type:function size:0x1E8 +fn_1_1A2C = .text:0x00001A2C; // type:function size:0x44 +fn_1_1A70 = .text:0x00001A70; // type:function size:0x1C +fn_1_1A8C = .text:0x00001A8C; // type:function size:0x5FC +fn_1_2088 = .text:0x00002088; // type:function size:0x88 +fn_1_2110 = .text:0x00002110; // type:function size:0x34 +fn_1_2144 = .text:0x00002144; // type:function size:0x80 +fn_1_21C4 = .text:0x000021C4; // type:function size:0x34 +fn_1_21F8 = .text:0x000021F8; // type:function size:0x224 +fn_1_241C = .text:0x0000241C; // type:function size:0x8C +fn_1_24A8 = .text:0x000024A8; // type:function size:0x44 +fn_1_24EC = .text:0x000024EC; // type:function size:0x1C +fn_1_2508 = .text:0x00002508; // type:function size:0xA4 +fn_1_25AC = .text:0x000025AC; // type:function size:0x46C +fn_1_2A18 = .text:0x00002A18; // type:function size:0x2E8 +fn_1_2D00 = .text:0x00002D00; // type:function size:0x104 +fn_1_2E04 = .text:0x00002E04; // type:function size:0x148 +fn_1_2F4C = .text:0x00002F4C; // type:function size:0x64 +fn_1_2FB0 = .text:0x00002FB0; // type:function size:0x1A8 +fn_1_3158 = .text:0x00003158; // type:function size:0xD4 +fn_1_322C = .text:0x0000322C; // type:function size:0x64 +fn_1_3290 = .text:0x00003290; // type:function size:0x44 +fn_1_32D4 = .text:0x000032D4; // type:function size:0x1C +fn_1_32F0 = .text:0x000032F0; // type:function size:0x4BC +fn_1_37AC = .text:0x000037AC; // type:function size:0xBC +fn_1_3868 = .text:0x00003868; // type:function size:0x54 +fn_1_38BC = .text:0x000038BC; // type:function size:0xD0 +fn_1_398C = .text:0x0000398C; // type:function size:0x54 +fn_1_39E0 = .text:0x000039E0; // type:function size:0x128 +fn_1_3B08 = .text:0x00003B08; // type:function size:0x84 +fn_1_3B8C = .text:0x00003B8C; // type:function size:0x54 +fn_1_3BE0 = .text:0x00003BE0; // type:function size:0x8C +fn_1_3C6C = .text:0x00003C6C; // type:function size:0x94 +fn_1_3D00 = .text:0x00003D00; // type:function size:0x54 +fn_1_3D54 = .text:0x00003D54; // type:function size:0xC8 +fn_1_3E1C = .text:0x00003E1C; // type:function size:0xB4 +fn_1_3ED0 = .text:0x00003ED0; // type:function size:0x58 +fn_1_3F28 = .text:0x00003F28; // type:function size:0xAC +fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x54 +fn_1_4028 = .text:0x00004028; // type:function size:0x2B4 +fn_1_42DC = .text:0x000042DC; // type:function size:0xAC +fn_1_4388 = .text:0x00004388; // type:function size:0x44 +fn_1_43CC = .text:0x000043CC; // type:function size:0x1C +fn_1_43E8 = .text:0x000043E8; // type:function size:0x270 +fn_1_4658 = .text:0x00004658; // type:function size:0x424 +fn_1_4A7C = .text:0x00004A7C; // type:function size:0x3D4 +fn_1_4E50 = .text:0x00004E50; // type:function size:0x93C +fn_1_578C = .text:0x0000578C; // type:function size:0x8B8 +fn_1_6044 = .text:0x00006044; // type:function size:0xF8 +fn_1_613C = .text:0x0000613C; // type:function size:0x64 +fn_1_61A0 = .text:0x000061A0; // type:function size:0xFC +fn_1_629C = .text:0x0000629C; // type:function size:0x54 +fn_1_62F0 = .text:0x000062F0; // type:function size:0xFC +fn_1_63EC = .text:0x000063EC; // type:function size:0x54 +fn_1_6440 = .text:0x00006440; // type:function size:0x94 +fn_1_64D4 = .text:0x000064D4; // type:function size:0x54 +fn_1_6528 = .text:0x00006528; // type:function size:0x118 +fn_1_6640 = .text:0x00006640; // type:function size:0x54 +fn_1_6694 = .text:0x00006694; // type:function size:0x38 +fn_1_66CC = .text:0x000066CC; // type:function size:0x38 +fn_1_6704 = .text:0x00006704; // type:function size:0xC4 +fn_1_67C8 = .text:0x000067C8; // type:function size:0x60 +fn_1_6828 = .text:0x00006828; // type:function size:0x1E4 +fn_1_6A0C = .text:0x00006A0C; // type:function size:0x74 +fn_1_6A80 = .text:0x00006A80; // type:function size:0x1DC +fn_1_6C5C = .text:0x00006C5C; // type:function size:0x74 +fn_1_6CD0 = .text:0x00006CD0; // type:function size:0x1D4 +fn_1_6EA4 = .text:0x00006EA4; // type:function size:0xA4 +fn_1_6F48 = .text:0x00006F48; // type:function size:0x1D4 +fn_1_711C = .text:0x0000711C; // type:function size:0xA4 +fn_1_71C0 = .text:0x000071C0; // type:function size:0xE8 +fn_1_72A8 = .text:0x000072A8; // type:function size:0x68 +fn_1_7310 = .text:0x00007310; // type:function size:0x400 +fn_1_7710 = .text:0x00007710; // type:function size:0x190 +fn_1_78A0 = .text:0x000078A0; // type:function size:0x60 +fn_1_7900 = .text:0x00007900; // type:function size:0x3C +fn_1_793C = .text:0x0000793C; // type:function size:0x5C4 +fn_1_7F00 = .text:0x00007F00; // type:function size:0x148 +fn_1_8048 = .text:0x00008048; // type:function size:0x9C +fn_1_80E4 = .text:0x000080E4; // type:function size:0x178 +fn_1_825C = .text:0x0000825C; // type:function size:0x54 +fn_1_82B0 = .text:0x000082B0; // type:function size:0x44 +fn_1_82F4 = .text:0x000082F4; // type:function size:0x1C +fn_1_8310 = .text:0x00008310; // type:function size:0x778 +fn_1_8A88 = .text:0x00008A88; // type:function size:0xD0 +fn_1_8B58 = .text:0x00008B58; // type:function size:0x54 +fn_1_8BAC = .text:0x00008BAC; // type:function size:0xD8 +fn_1_8C84 = .text:0x00008C84; // type:function size:0xFC +fn_1_8D80 = .text:0x00008D80; // type:function size:0x54 +fn_1_8DD4 = .text:0x00008DD4; // type:function size:0xC4 +fn_1_8E98 = .text:0x00008E98; // type:function size:0x60 +fn_1_8EF8 = .text:0x00008EF8; // type:function size:0x40 +fn_1_8F38 = .text:0x00008F38; // type:function size:0x72C +fn_1_9664 = .text:0x00009664; // type:function size:0x9C +fn_1_9700 = .text:0x00009700; // type:function size:0x344 +fn_1_9A44 = .text:0x00009A44; // type:function size:0x7C +fn_1_9AC0 = .text:0x00009AC0; // type:function size:0x88C +fn_1_A34C = .text:0x0000A34C; // type:function size:0x9C +fn_1_A3E8 = .text:0x0000A3E8; // type:function size:0x260 +fn_1_A648 = .text:0x0000A648; // type:function size:0x40 +fn_1_A688 = .text:0x0000A688; // type:function size:0x18 +fn_1_A6A0 = .text:0x0000A6A0; // type:function size:0x18 +fn_1_A6B8 = .text:0x0000A6B8; // type:function size:0x54 +fn_1_A70C = .text:0x0000A70C; // type:function size:0x40 +fn_1_A74C = .text:0x0000A74C; // type:function size:0x40 +fn_1_A78C = .text:0x0000A78C; // type:function size:0x38 +fn_1_A7C4 = .text:0x0000A7C4; // type:function size:0x38 +fn_1_A7FC = .text:0x0000A7FC; // type:function size:0x20 +fn_1_A81C = .text:0x0000A81C; // type:function size:0x24 +fn_1_A840 = .text:0x0000A840; // type:function size:0x108 +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +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_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0xC data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x38 +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8C0 +lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x30 +lbl_1_rodata_AD0 = .rodata:0x00000AD0; // type:object size:0x780 +lbl_1_rodata_1250 = .rodata:0x00001250; // type:object size:0x4 data:float +lbl_1_rodata_1254 = .rodata:0x00001254; // type:object size:0x4 data:float +lbl_1_rodata_1258 = .rodata:0x00001258; // type:object size:0x4 data:float +lbl_1_rodata_125C = .rodata:0x0000125C; // type:object size:0x4 data:float +lbl_1_rodata_1260 = .rodata:0x00001260; // type:object size:0x4 data:float +lbl_1_rodata_1264 = .rodata:0x00001264; // type:object size:0x4 data:float +lbl_1_rodata_1268 = .rodata:0x00001268; // type:object size:0x4 data:float +lbl_1_rodata_1270 = .rodata:0x00001270; // type:object size:0x8 data:double +lbl_1_rodata_1278 = .rodata:0x00001278; // type:object size:0x8 +lbl_1_rodata_1280 = .rodata:0x00001280; // type:object size:0x8 +lbl_1_rodata_1288 = .rodata:0x00001288; // type:object size:0x8 +lbl_1_rodata_1290 = .rodata:0x00001290; // type:object size:0x4 data:float +lbl_1_rodata_1294 = .rodata:0x00001294; // type:object size:0x4 data:float +lbl_1_rodata_1298 = .rodata:0x00001298; // type:object size:0x4 data:float +lbl_1_rodata_129C = .rodata:0x0000129C; // type:object size:0x4 data:float +lbl_1_rodata_12A0 = .rodata:0x000012A0; // type:object size:0x4 data:float +lbl_1_rodata_12A4 = .rodata:0x000012A4; // type:object size:0x4 data:float +lbl_1_rodata_12A8 = .rodata:0x000012A8; // type:object size:0x4 data:float +lbl_1_rodata_12AC = .rodata:0x000012AC; // type:object size:0x4 data:float +lbl_1_rodata_12B0 = .rodata:0x000012B0; // type:object size:0x4 data:float +lbl_1_rodata_12B4 = .rodata:0x000012B4; // type:object size:0x4 data:float +lbl_1_rodata_12B8 = .rodata:0x000012B8; // type:object size:0x4 data:float +lbl_1_rodata_12BC = .rodata:0x000012BC; // type:object size:0x4 data:float +lbl_1_rodata_12C0 = .rodata:0x000012C0; // type:object size:0x4 data:float +lbl_1_rodata_12C4 = .rodata:0x000012C4; // type:object size:0x4 data:float +lbl_1_rodata_12C8 = .rodata:0x000012C8; // type:object size:0x4 data:float +lbl_1_rodata_12CC = .rodata:0x000012CC; // type:object size:0x4 data:float +lbl_1_rodata_12D0 = .rodata:0x000012D0; // type:object size:0x24 +lbl_1_rodata_12F4 = .rodata:0x000012F4; // type:object size:0x4 data:float +lbl_1_rodata_12F8 = .rodata:0x000012F8; // type:object size:0x4 data:float +lbl_1_rodata_12FC = .rodata:0x000012FC; // type:object size:0x4 data:float +lbl_1_rodata_1300 = .rodata:0x00001300; // type:object size:0x4 data:float +lbl_1_rodata_1304 = .rodata:0x00001304; // type:object size:0x4 data:float +lbl_1_rodata_1308 = .rodata:0x00001308; // type:object size:0x1C +lbl_1_rodata_1324 = .rodata:0x00001324; // type:object size:0x4 data:float +lbl_1_rodata_1328 = .rodata:0x00001328; // type:object size:0x4 data:float +lbl_1_rodata_132C = .rodata:0x0000132C; // type:object size:0x4 data:float +lbl_1_rodata_1330 = .rodata:0x00001330; // type:object size:0x14 +lbl_1_rodata_1344 = .rodata:0x00001344; // type:object size:0x4 data:float +lbl_1_rodata_1348 = .rodata:0x00001348; // type:object size:0x4 data:float +lbl_1_rodata_134C = .rodata:0x0000134C; // type:object size:0x4 +lbl_1_rodata_1350 = .rodata:0x00001350; // type:object size:0x8 +lbl_1_rodata_1358 = .rodata:0x00001358; // type:object size:0x8 data:double +lbl_1_rodata_1360 = .rodata:0x00001360; // type:object size:0x8 data:double +lbl_1_rodata_1368 = .rodata:0x00001368; // type:object size:0x4 data:float +lbl_1_rodata_136C = .rodata:0x0000136C; // type:object size:0x4 data:float +lbl_1_rodata_1370 = .rodata:0x00001370; // type:object size:0x8 data:double +lbl_1_rodata_1378 = .rodata:0x00001378; // type:object size:0x8 data:double +lbl_1_rodata_1380 = .rodata:0x00001380; // type:object size:0x4 data:float +lbl_1_rodata_1384 = .rodata:0x00001384; // type:object size:0x4 data:float +lbl_1_rodata_1388 = .rodata:0x00001388; // type:object size:0x8 data:double +lbl_1_rodata_1390 = .rodata:0x00001390; // type:object size:0x4 data:float +lbl_1_rodata_1394 = .rodata:0x00001394; // type:object size:0x4 data:float +lbl_1_rodata_1398 = .rodata:0x00001398; // type:object size:0x4 data:float +lbl_1_rodata_139C = .rodata:0x0000139C; // type:object size:0x4 data:float +lbl_1_rodata_13A0 = .rodata:0x000013A0; // type:object size:0x8 data:double +lbl_1_rodata_13A8 = .rodata:0x000013A8; // type:object size:0x8 data:double +lbl_1_rodata_13B0 = .rodata:0x000013B0; // type:object size:0x4 data:float +lbl_1_rodata_13B4 = .rodata:0x000013B4; // type:object size:0x4 data:float +lbl_1_rodata_13B8 = .rodata:0x000013B8; // type:object size:0x8 data:float +lbl_1_rodata_13C0 = .rodata:0x000013C0; // type:object size:0x18 +lbl_1_rodata_13D8 = .rodata:0x000013D8; // type:object size:0x4 data:float +lbl_1_rodata_13DC = .rodata:0x000013DC; // type:object size:0x4 data:float +lbl_1_rodata_13E0 = .rodata:0x000013E0; // type:object size:0x4 data:float +lbl_1_rodata_13E4 = .rodata:0x000013E4; // type:object size:0x4 data:float +lbl_1_rodata_13E8 = .rodata:0x000013E8; // type:object size:0x4 data:float +lbl_1_rodata_13EC = .rodata:0x000013EC; // type:object size:0x4 data:float +lbl_1_rodata_13F0 = .rodata:0x000013F0; // type:object size:0x4 data:float +lbl_1_rodata_13F4 = .rodata:0x000013F4; // type:object size:0x4 data:float +lbl_1_rodata_13F8 = .rodata:0x000013F8; // type:object size:0x8 data:double +lbl_1_rodata_1400 = .rodata:0x00001400; // type:object size:0x8 data:double +lbl_1_rodata_1408 = .rodata:0x00001408; // type:object size:0x4 data:float +lbl_1_rodata_140C = .rodata:0x0000140C; // type:object size:0x4 data:float +lbl_1_rodata_1410 = .rodata:0x00001410; // type:object size:0x4 data:float +lbl_1_rodata_1414 = .rodata:0x00001414; // type:object size:0x4 data:float +lbl_1_rodata_1418 = .rodata:0x00001418; // type:object size:0x4 data:float +lbl_1_rodata_1420 = .rodata:0x00001420; // type:object size:0x8 data:double +lbl_1_rodata_1428 = .rodata:0x00001428; // type:object size:0x4 data:float +lbl_1_rodata_142C = .rodata:0x0000142C; // type:object size:0x4 data:float +lbl_1_rodata_1430 = .rodata:0x00001430; // type:object size:0x4 data:float +lbl_1_rodata_1434 = .rodata:0x00001434; // type:object size:0x4 data:float +lbl_1_rodata_1438 = .rodata:0x00001438; // type:object size:0x4 data:float +lbl_1_rodata_143C = .rodata:0x0000143C; // type:object size:0x264 +lbl_1_rodata_16A0 = .rodata:0x000016A0; // type:object size:0x4 data:float +lbl_1_rodata_16A4 = .rodata:0x000016A4; // type:object size:0x4 data:float +lbl_1_rodata_16A8 = .rodata:0x000016A8; // type:object size:0x4 data:float +lbl_1_rodata_16AC = .rodata:0x000016AC; // type:object size:0x4 data:float +lbl_1_rodata_16B0 = .rodata:0x000016B0; // type:object size:0x4 data:float +lbl_1_rodata_16B4 = .rodata:0x000016B4; // type:object size:0x4 data:float +lbl_1_rodata_16B8 = .rodata:0x000016B8; // type:object size:0x4 data:float +lbl_1_rodata_16BC = .rodata:0x000016BC; // type:object size:0x4 data:float +lbl_1_rodata_16C0 = .rodata:0x000016C0; // type:object size:0x4 data:float +lbl_1_rodata_16C4 = .rodata:0x000016C4; // type:object size:0x4 data:float +lbl_1_rodata_16C8 = .rodata:0x000016C8; // type:object size:0x4 data:float +lbl_1_rodata_16CC = .rodata:0x000016CC; // type:object size:0x4 data:float +lbl_1_rodata_16D0 = .rodata:0x000016D0; // type:object size:0x4 data:float +lbl_1_rodata_16D4 = .rodata:0x000016D4; // type:object size:0x4 data:float +lbl_1_rodata_16D8 = .rodata:0x000016D8; // type:object size:0x4 data:float +lbl_1_rodata_16DC = .rodata:0x000016DC; // type:object size:0x4 data:float +lbl_1_rodata_16E0 = .rodata:0x000016E0; // type:object size:0x4 data:float +lbl_1_rodata_16E4 = .rodata:0x000016E4; // type:object size:0x4 data:float +lbl_1_rodata_16E8 = .rodata:0x000016E8; // type:object size:0x4 data:float +lbl_1_rodata_16EC = .rodata:0x000016EC; // type:object size:0x4 data:float +lbl_1_rodata_16F0 = .rodata:0x000016F0; // type:object size:0xD4 +lbl_1_rodata_17C4 = .rodata:0x000017C4; // type:object size:0x4 data:float +lbl_1_rodata_17C8 = .rodata:0x000017C8; // type:object size:0x4 data:float +lbl_1_rodata_17CC = .rodata:0x000017CC; // type:object size:0x4 data:float +lbl_1_rodata_17D0 = .rodata:0x000017D0; // type:object size:0x4 data:float +lbl_1_rodata_17D4 = .rodata:0x000017D4; // type:object size:0x4 data:float +lbl_1_rodata_17D8 = .rodata:0x000017D8; // type:object size:0x4 data:float +lbl_1_rodata_17DC = .rodata:0x000017DC; // type:object size:0x4 data:float +lbl_1_rodata_17E0 = .rodata:0x000017E0; // type:object size:0x84 +lbl_1_rodata_1864 = .rodata:0x00001864; // type:object size:0x48 +lbl_1_rodata_18AC = .rodata:0x000018AC; // type:object size:0x4 data:float +lbl_1_rodata_18B0 = .rodata:0x000018B0; // type:object size:0x4 data:float +lbl_1_rodata_18B4 = .rodata:0x000018B4; // type:object size:0x4 data:float +lbl_1_rodata_18B8 = .rodata:0x000018B8; // type:object size:0x4 data:float +lbl_1_rodata_18BC = .rodata:0x000018BC; // type:object size:0x4 data:float +lbl_1_rodata_18C0 = .rodata:0x000018C0; // type:object size:0x108 +lbl_1_rodata_19C8 = .rodata:0x000019C8; // type:object size:0x4 data:float +lbl_1_rodata_19CC = .rodata:0x000019CC; // type:object size:0x4 data:float +lbl_1_rodata_19D0 = .rodata:0x000019D0; // type:object size:0x4 data:float +lbl_1_rodata_19D4 = .rodata:0x000019D4; // type:object size:0x4 data:float +lbl_1_rodata_19D8 = .rodata:0x000019D8; // type:object size:0x4 data:float +lbl_1_rodata_19DC = .rodata:0x000019DC; // type:object size:0x4 data:float +lbl_1_rodata_19E0 = .rodata:0x000019E0; // type:object size:0x4 data:float +lbl_1_rodata_19E4 = .rodata:0x000019E4; // type:object size:0x4 data:float +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x1B data:string +lbl_1_data_37 = .data:0x00000037; // type:object size:0x1B data:string +lbl_1_data_52 = .data:0x00000052; // type:object size:0x16 data:string +lbl_1_data_68 = .data:0x00000068; // type:object size:0x8 data:4byte +jumptable_1_data_70 = .data:0x00000070; // type:object size:0x24 scope:local +lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 data:4byte +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x1C +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x24 +jumptable_1_data_E0 = .data:0x000000E0; // type:object size:0x24 scope:local +lbl_1_data_108 = .data:0x00000108; // type:object size:0x8 data:4byte +lbl_1_data_110 = .data:0x00000110; // type:object size:0x8 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x38 data:4byte +lbl_1_data_150 = .data:0x00000150; // type:object size:0x18 data:4byte +lbl_1_data_168 = .data:0x00000168; // type:object size:0xC +jumptable_1_data_174 = .data:0x00000174; // type:object size:0x24 scope:local +jumptable_1_data_198 = .data:0x00000198; // type:object size:0x24 scope:local +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x4C +lbl_1_data_208 = .data:0x00000208; // type:object size:0x8 +lbl_1_data_210 = .data:0x00000210; // type:object size:0x8 data:4byte +jumptable_1_data_218 = .data:0x00000218; // type:object size:0x1C scope:local +jumptable_1_data_234 = .data:0x00000234; // type:object size:0x20 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/present/splits.txt b/config/GMPP01_00/rels/present/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/present/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/present/symbols.txt b/config/GMPP01_00/rels/present/symbols.txt new file mode 100644 index 00000000..e6b4d8f0 --- /dev/null +++ b/config/GMPP01_00/rels/present/symbols.txt @@ -0,0 +1,189 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xA4 +fn_1_144 = .text:0x00000144; // type:function size:0x110 +fn_1_254 = .text:0x00000254; // type:function size:0xE0 +fn_1_334 = .text:0x00000334; // type:function size:0x128 +fn_1_45C = .text:0x0000045C; // type:function size:0xF4 +fn_1_550 = .text:0x00000550; // type:function size:0x34 +fn_1_584 = .text:0x00000584; // type:function size:0x34 +fn_1_5B8 = .text:0x000005B8; // type:function size:0x34 +fn_1_5EC = .text:0x000005EC; // type:function size:0xC8 +fn_1_6B4 = .text:0x000006B4; // type:function size:0x23C +fn_1_8F0 = .text:0x000008F0; // type:function size:0x30 +fn_1_920 = .text:0x00000920; // type:function size:0x84 +fn_1_9A4 = .text:0x000009A4; // type:function size:0x84 +fn_1_A28 = .text:0x00000A28; // type:function size:0x84 +fn_1_AAC = .text:0x00000AAC; // type:function size:0x30 +fn_1_ADC = .text:0x00000ADC; // type:function size:0x30 +fn_1_B0C = .text:0x00000B0C; // type:function size:0x30 +fn_1_B3C = .text:0x00000B3C; // type:function size:0x30 +fn_1_B6C = .text:0x00000B6C; // type:function size:0x8C +fn_1_BF8 = .text:0x00000BF8; // type:function size:0x28 +fn_1_C20 = .text:0x00000C20; // type:function size:0x578 +fn_1_1198 = .text:0x00001198; // type:function size:0x200 +fn_1_1398 = .text:0x00001398; // type:function size:0xC0 +fn_1_1458 = .text:0x00001458; // type:function size:0x32C +fn_1_1784 = .text:0x00001784; // type:function size:0x88 +fn_1_180C = .text:0x0000180C; // type:function size:0x44 +fn_1_1850 = .text:0x00001850; // type:function size:0x1C +fn_1_186C = .text:0x0000186C; // type:function size:0xBC +fn_1_1928 = .text:0x00001928; // type:function size:0x680 +fn_1_1FA8 = .text:0x00001FA8; // type:function size:0x140 +fn_1_20E8 = .text:0x000020E8; // type:function size:0x5A4 +fn_1_268C = .text:0x0000268C; // type:function size:0x7C +fn_1_2708 = .text:0x00002708; // type:function size:0x6C +fn_1_2774 = .text:0x00002774; // type:function size:0x17C +fn_1_28F0 = .text:0x000028F0; // type:function size:0x34 +fn_1_2924 = .text:0x00002924; // type:function size:0x260 +fn_1_2B84 = .text:0x00002B84; // type:function size:0x48 +fn_1_2BCC = .text:0x00002BCC; // type:function size:0x90 +fn_1_2C5C = .text:0x00002C5C; // type:function size:0x738 +fn_1_3394 = .text:0x00003394; // type:function size:0x18 +fn_1_33AC = .text:0x000033AC; // type:function size:0x590 +fn_1_393C = .text:0x0000393C; // type:function size:0x6C +fn_1_39A8 = .text:0x000039A8; // type:function size:0x170 +fn_1_3B18 = .text:0x00003B18; // type:function size:0x74 +fn_1_3B8C = .text:0x00003B8C; // type:function size:0x22C +fn_1_3DB8 = .text:0x00003DB8; // type:function size:0xEC +fn_1_3EA4 = .text:0x00003EA4; // type:function size:0x19C +fn_1_4040 = .text:0x00004040; // type:function size:0x40 +fn_1_4080 = .text:0x00004080; // type:function size:0x18 +fn_1_4098 = .text:0x00004098; // type:function size:0x18 +fn_1_40B0 = .text:0x000040B0; // type:function size:0x54 +fn_1_4104 = .text:0x00004104; // type:function size:0x40 +fn_1_4144 = .text:0x00004144; // type:function size:0x40 +fn_1_4184 = .text:0x00004184; // type:function size:0xC +fn_1_4190 = .text:0x00004190; // type:function size:0xC +fn_1_419C = .text:0x0000419C; // type:function size:0x20 +fn_1_41BC = .text:0x000041BC; // type:function size:0x24 +fn_1_41E0 = .text:0x000041E0; // type:function size:0x114 +fn_1_42F4 = .text:0x000042F4; // type:function size:0x240 +fn_1_4534 = .text:0x00004534; // type:function size:0x8C +fn_1_45C0 = .text:0x000045C0; // type:function size:0x44 +fn_1_4604 = .text:0x00004604; // type:function size:0x1C +fn_1_4620 = .text:0x00004620; // type:function size:0x260 +fn_1_4880 = .text:0x00004880; // type:function size:0x184 +fn_1_4A04 = .text:0x00004A04; // type:function size:0x2E8 +fn_1_4CEC = .text:0x00004CEC; // type:function size:0x104 +_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:0x8 data:double +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_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:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x8 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x218 +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x708 +lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 data:float +lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 data:float +lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 data:float +lbl_1_rodata_9D0 = .rodata:0x000009D0; // type:object size:0x8 data:double +lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0x20 +lbl_1_rodata_9F8 = .rodata:0x000009F8; // type:object size:0x28 +lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x4 data:float +lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 data:float +lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 data:float +lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 data:float +lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 data:float +lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 data:float +lbl_1_rodata_A38 = .rodata:0x00000A38; // type:object size:0x4 data:float +lbl_1_rodata_A3C = .rodata:0x00000A3C; // type:object size:0x4 data:float +lbl_1_rodata_A40 = .rodata:0x00000A40; // type:object size:0x4 data:float +lbl_1_rodata_A44 = .rodata:0x00000A44; // type:object size:0x4 data:float +lbl_1_rodata_A48 = .rodata:0x00000A48; // type:object size:0x4 data:float +lbl_1_rodata_A50 = .rodata:0x00000A50; // type:object size:0x8 data:double +lbl_1_rodata_A58 = .rodata:0x00000A58; // type:object size:0x4 data:float +lbl_1_rodata_A60 = .rodata:0x00000A60; // type:object size:0x8 data:double +lbl_1_rodata_A68 = .rodata:0x00000A68; // type:object size:0x8 data:double +lbl_1_rodata_A70 = .rodata:0x00000A70; // type:object size:0x4 data:float +lbl_1_rodata_A74 = .rodata:0x00000A74; // type:object size:0x28 +lbl_1_rodata_A9C = .rodata:0x00000A9C; // type:object size:0x4 data:float +lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x4 data:float +lbl_1_rodata_AA4 = .rodata:0x00000AA4; // type:object size:0x4 data:float +lbl_1_rodata_AA8 = .rodata:0x00000AA8; // type:object size:0x4 data:float +lbl_1_rodata_AAC = .rodata:0x00000AAC; // type:object size:0x4 data:float +lbl_1_rodata_AB0 = .rodata:0x00000AB0; // type:object size:0x4 data:float +lbl_1_rodata_AB8 = .rodata:0x00000AB8; // type:object size:0x8 data:double +lbl_1_rodata_AC0 = .rodata:0x00000AC0; // type:object size:0x8 data:double +lbl_1_rodata_AC8 = .rodata:0x00000AC8; // type:object size:0x28 +lbl_1_rodata_AF0 = .rodata:0x00000AF0; // type:object size:0x28 +lbl_1_rodata_B18 = .rodata:0x00000B18; // type:object size:0x28 +lbl_1_rodata_B40 = .rodata:0x00000B40; // type:object size:0x28 +lbl_1_rodata_B68 = .rodata:0x00000B68; // type:object size:0x28 +lbl_1_rodata_B90 = .rodata:0x00000B90; // type:object size:0x4 data:float +lbl_1_rodata_B94 = .rodata:0x00000B94; // type:object size:0x4 data:float +lbl_1_rodata_B98 = .rodata:0x00000B98; // type:object size:0x4 data:float +lbl_1_rodata_B9C = .rodata:0x00000B9C; // type:object size:0x4 data:float +lbl_1_rodata_BA0 = .rodata:0x00000BA0; // type:object size:0x4 data:float +lbl_1_rodata_BA4 = .rodata:0x00000BA4; // type:object size:0xC +lbl_1_rodata_BB0 = .rodata:0x00000BB0; // type:object size:0x4 data:float +lbl_1_rodata_BB4 = .rodata:0x00000BB4; // type:object size:0x4 data:float +lbl_1_rodata_BB8 = .rodata:0x00000BB8; // type:object size:0x4 data:float +lbl_1_rodata_BBC = .rodata:0x00000BBC; // type:object size:0x4 data:float +lbl_1_rodata_BC0 = .rodata:0x00000BC0; // type:object size:0x4 data:float +lbl_1_rodata_BC4 = .rodata:0x00000BC4; // type:object size:0x4 data:float +lbl_1_rodata_BC8 = .rodata:0x00000BC8; // type:object size:0x4 data:float +lbl_1_rodata_BCC = .rodata:0x00000BCC; // type:object size:0x4 data:float +lbl_1_rodata_BD0 = .rodata:0x00000BD0; // type:object size:0x8 data:float +lbl_1_rodata_BD8 = .rodata:0x00000BD8; // type:object size:0xC +lbl_1_rodata_BE4 = .rodata:0x00000BE4; // type:object size:0x4 data:float +lbl_1_rodata_BE8 = .rodata:0x00000BE8; // type:object size:0x4 data:float +lbl_1_rodata_BEC = .rodata:0x00000BEC; // type:object size:0x4 data:float +lbl_1_rodata_BF0 = .rodata:0x00000BF0; // type:object size:0x4 data:float +lbl_1_rodata_BF4 = .rodata:0x00000BF4; // type:object size:0x4 data:float +lbl_1_rodata_BF8 = .rodata:0x00000BF8; // type:object size:0x8 data:double +lbl_1_rodata_C00 = .rodata:0x00000C00; // type:object size:0x4 data:float +lbl_1_rodata_C08 = .rodata:0x00000C08; // type:object size:0x8 data:double +lbl_1_rodata_C10 = .rodata:0x00000C10; // type:object size:0x4 data:float +lbl_1_rodata_C14 = .rodata:0x00000C14; // type:object size:0x4 data:float +lbl_1_rodata_C18 = .rodata:0x00000C18; // type:object size:0x4 data:float +lbl_1_rodata_C1C = .rodata:0x00000C1C; // type:object size:0x4 data:float +lbl_1_rodata_C20 = .rodata:0x00000C20; // type:object size:0x8 data:double +lbl_1_rodata_C28 = .rodata:0x00000C28; // type:object size:0x8 data:double +lbl_1_rodata_C30 = .rodata:0x00000C30; // type:object size:0x4 data:float +lbl_1_rodata_C34 = .rodata:0x00000C34; // type:object size:0x4 data:float +lbl_1_rodata_C38 = .rodata:0x00000C38; // type:object size:0x4 data:float +lbl_1_rodata_C40 = .rodata:0x00000C40; // type:object size:0x8 data:double +lbl_1_rodata_C48 = .rodata:0x00000C48; // type:object size:0x4 data:float +lbl_1_rodata_C4C = .rodata:0x00000C4C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string +lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1B data:string +lbl_1_data_36 = .data:0x00000036; // type:object size:0x1A +lbl_1_data_50 = .data:0x00000050; // type:object size:0x1C +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x10 data:4byte +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x8 +lbl_1_data_84 = .data:0x00000084; // type:object size:0x20 +jumptable_1_data_A4 = .data:0x000000A4; // type:object size:0x2C scope:local +jumptable_1_data_D0 = .data:0x000000D0; // type:object size:0x1C scope:local +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x24 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x2A data:string +lbl_1_data_13E = .data:0x0000013E; // type:object size:0x2E +jumptable_1_data_16C = .data:0x0000016C; // type:object size:0x34 scope:local +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/resultDll/splits.txt b/config/GMPP01_00/rels/resultDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/resultDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/resultDll/symbols.txt b/config/GMPP01_00/rels/resultDll/symbols.txt new file mode 100644 index 00000000..07d67720 --- /dev/null +++ b/config/GMPP01_00/rels/resultDll/symbols.txt @@ -0,0 +1,203 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x438 +fn_1_4D8 = .text:0x000004D8; // type:function size:0x3B0 +fn_1_888 = .text:0x00000888; // type:function size:0x2F0 +fn_1_B78 = .text:0x00000B78; // type:function size:0x13D4 +fn_1_1F4C = .text:0x00001F4C; // type:function size:0xB90 +fn_1_2ADC = .text:0x00002ADC; // type:function size:0x1074 +fn_1_3B50 = .text:0x00003B50; // type:function size:0x15C +fn_1_3CAC = .text:0x00003CAC; // type:function size:0x15C +fn_1_3E08 = .text:0x00003E08; // type:function size:0x1D0 +fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x104 +fn_1_40DC = .text:0x000040DC; // type:function size:0x160 +fn_1_423C = .text:0x0000423C; // type:function size:0x3E0 +fn_1_461C = .text:0x0000461C; // type:function size:0x1E0 +fn_1_47FC = .text:0x000047FC; // type:function size:0x1084 +fn_1_5880 = .text:0x00005880; // type:function size:0xC10 +fn_1_6490 = .text:0x00006490; // type:function size:0x2D0 +fn_1_6760 = .text:0x00006760; // type:function size:0xC4 +fn_1_6824 = .text:0x00006824; // type:function size:0xD20 +fn_1_7544 = .text:0x00007544; // type:function size:0xA54 +fn_1_7F98 = .text:0x00007F98; // type:function size:0x3A0 +fn_1_8338 = .text:0x00008338; // type:function size:0x14C +fn_1_8484 = .text:0x00008484; // type:function size:0x1D4 +fn_1_8658 = .text:0x00008658; // type:function size:0x84 +fn_1_86DC = .text:0x000086DC; // type:function size:0x2BC +fn_1_8998 = .text:0x00008998; // type:function size:0x320 +fn_1_8CB8 = .text:0x00008CB8; // type:function size:0x340 +fn_1_8FF8 = .text:0x00008FF8; // type:function size:0x284 +fn_1_927C = .text:0x0000927C; // type:function size:0x138 +fn_1_93B4 = .text:0x000093B4; // type:function size:0x78 +_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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x10 data:4byte +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 data:float +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x2A4 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0xDC data:4byte +lbl_1_data_380 = .data:0x00000380; // type:object size:0x2 data:2byte +lbl_1_data_382 = .data:0x00000382; // type:object size:0x26 data:string +lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x18 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x18 +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x20 +lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x10 +lbl_1_data_408 = .data:0x00000408; // type:object size:0x30 +lbl_1_data_438 = .data:0x00000438; // type:object size:0x10 +lbl_1_data_448 = .data:0x00000448; // type:object size:0x8 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x38 +lbl_1_data_488 = .data:0x00000488; // type:object size:0x30 +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x11 data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0x11 data:string +lbl_1_data_4DA = .data:0x000004DA; // type:object size:0xE +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x270 +lbl_1_data_758 = .data:0x00000758; // type:object size:0x28 +lbl_1_data_780 = .data:0x00000780; // type:object size:0x70 +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x40 +lbl_1_data_830 = .data:0x00000830; // type:object size:0x10 +lbl_1_data_840 = .data:0x00000840; // type:object size:0x20 +lbl_1_data_860 = .data:0x00000860; // type:object size:0x20 +lbl_1_data_880 = .data:0x00000880; // type:object size:0x20 +lbl_1_data_8A0 = .data:0x000008A0; // type:object size:0x6 data:2byte +lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 data:string +lbl_1_data_8AE = .data:0x000008AE; // type:object size:0xA +lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x60 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x8 +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x28 +lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x8 +lbl_1_bss_42 = .bss:0x00000042; // type:object size:0x8 +lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x8 +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x40 +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte +lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x30 +lbl_1_bss_CE = .bss:0x000000CE; // type:object size:0x12 +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x60 +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x14 +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x10 +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x8 +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x2 data:2byte +lbl_1_bss_172 = .bss:0x00000172; // type:object size:0x2 data:2byte +lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte +lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte +lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x2 data:2byte +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte +lbl_1_bss_184 = .bss:0x00000184; // type:object size:0xC data:4byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x1680 +lbl_1_bss_1814 = .bss:0x00001814; // type:object size:0x14 +lbl_1_bss_1828 = .bss:0x00001828; // type:object size:0x168 data:2byte +lbl_1_bss_1990 = .bss:0x00001990; // type:object size:0x20 +lbl_1_bss_19B0 = .bss:0x000019B0; // type:object size:0x8 +lbl_1_bss_19B8 = .bss:0x000019B8; // type:object size:0x28 +lbl_1_bss_19E0 = .bss:0x000019E0; // type:object size:0x8 +lbl_1_bss_19E8 = .bss:0x000019E8; // type:object size:0x8 +lbl_1_bss_19F0 = .bss:0x000019F0; // type:object size:0x2A +lbl_1_bss_1A1A = .bss:0x00001A1A; // type:object size:0x42 data:2byte +lbl_1_bss_1A5C = .bss:0x00001A5C; // type:object size:0x40 data:2byte +lbl_1_bss_1A9C = .bss:0x00001A9C; // type:object size:0x40 data:2byte diff --git a/config/GMPP01_00/rels/safDll/splits.txt b/config/GMPP01_00/rels/safDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/safDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/safDll/symbols.txt b/config/GMPP01_00/rels/safDll/symbols.txt new file mode 100644 index 00000000..11ae3d8d --- /dev/null +++ b/config/GMPP01_00/rels/safDll/symbols.txt @@ -0,0 +1,13 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4 +fn_1_4 = .text:0x00000004; // type:function size:0x284 +fn_1_288 = .text:0x00000288; // type:function size:0x124 +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global +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:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float +lbl_1_data_4 = .data:0x00000004; // type:object size:0xE data:string +lbl_1_data_12 = .data:0x00000012; // type:object size:0xB data:string +lbl_1_data_1D = .data:0x0000001D; // type:object size:0xE data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0xE data:string diff --git a/config/GMPP01_00/rels/selmenuDll/splits.txt b/config/GMPP01_00/rels/selmenuDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/selmenuDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/selmenuDll/symbols.txt b/config/GMPP01_00/rels/selmenuDll/symbols.txt new file mode 100644 index 00000000..d5cd5a48 --- /dev/null +++ b/config/GMPP01_00/rels/selmenuDll/symbols.txt @@ -0,0 +1,201 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x4B8 +fn_1_558 = .text:0x00000558; // type:function size:0x60 +fn_1_5B8 = .text:0x000005B8; // type:function size:0x324 +fn_1_8DC = .text:0x000008DC; // type:function size:0x170 +fn_1_A4C = .text:0x00000A4C; // type:function size:0x180 +fn_1_BCC = .text:0x00000BCC; // type:function size:0x88 +fn_1_C54 = .text:0x00000C54; // type:function size:0x474 +fn_1_10C8 = .text:0x000010C8; // type:function size:0xA78 +fn_1_1B40 = .text:0x00001B40; // type:function size:0x334 +fn_1_1E74 = .text:0x00001E74; // type:function size:0x110 +fn_1_1F84 = .text:0x00001F84; // type:function size:0x50 +fn_1_1FD4 = .text:0x00001FD4; // type:function size:0x10C +fn_1_20E0 = .text:0x000020E0; // type:function size:0x1F8 +fn_1_22D8 = .text:0x000022D8; // type:function size:0xD6C +fn_1_3044 = .text:0x00003044; // type:function size:0x2FC +fn_1_3340 = .text:0x00003340; // type:function size:0x804 +fn_1_3B44 = .text:0x00003B44; // type:function size:0x40 +fn_1_3B84 = .text:0x00003B84; // type:function size:0x968 +fn_1_44EC = .text:0x000044EC; // type:function size:0x20 +fn_1_450C = .text:0x0000450C; // type:function size:0x4 +fn_1_4510 = .text:0x00004510; // type:function size:0x64 +fn_1_4574 = .text:0x00004574; // type:function size:0x854 +fn_1_4DC8 = .text:0x00004DC8; // type:function size:0x3D0 +_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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x8 data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x10 data:4byte +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:0x8 data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x6 data:string +lbl_1_data_6 = .data:0x00000006; // type:object size:0x6 data:string +lbl_1_data_C = .data:0x0000000C; // type:object size:0x6 data:string +lbl_1_data_12 = .data:0x00000012; // type:object size:0x6 data:string +lbl_1_data_18 = .data:0x00000018; // type:object size:0x6 data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x7 data:string +lbl_1_data_25 = .data:0x00000025; // type:object size:0x6 data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0x9 +lbl_1_data_34 = .data:0x00000034; // type:object size:0x20 +lbl_1_data_54 = .data:0x00000054; // type:object size:0x14 data:string +lbl_1_data_68 = .data:0x00000068; // type:object size:0x16 data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0x11 data:string +lbl_1_data_8F = .data:0x0000008F; // type:object size:0x12 data:string +lbl_1_data_A1 = .data:0x000000A1; // type:object size:0x10 data:string +lbl_1_data_B1 = .data:0x000000B1; // type:object size:0xD data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0x11 data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xE data:string +lbl_1_data_EA = .data:0x000000EA; // type:object size:0x16 data:string +lbl_1_data_100 = .data:0x00000100; // type:object size:0x13 data:string +lbl_1_data_113 = .data:0x00000113; // type:object size:0xF data:string +lbl_1_data_122 = .data:0x00000122; // type:object size:0x14 data:string +lbl_1_data_136 = .data:0x00000136; // type:object size:0x11 data:string +lbl_1_data_147 = .data:0x00000147; // type:object size:0x13 data:string +lbl_1_data_15A = .data:0x0000015A; // type:object size:0x10 data:string +lbl_1_data_16A = .data:0x0000016A; // type:object size:0x11 data:string +lbl_1_data_17B = .data:0x0000017B; // type:object size:0x15 data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0x17 data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x11 data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x10 data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x10 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x12 data:string +lbl_1_data_1EA = .data:0x000001EA; // type:object size:0x10 data:string +lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xF data:string +lbl_1_data_209 = .data:0x00000209; // type:object size:0x15 data:string +lbl_1_data_21E = .data:0x0000021E; // type:object size:0xE data:string +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x13 data:string +lbl_1_data_23F = .data:0x0000023F; // type:object size:0x14 data:string +lbl_1_data_253 = .data:0x00000253; // type:object size:0x13 data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x11 data:string +lbl_1_data_277 = .data:0x00000277; // type:object size:0x11 data:string +lbl_1_data_288 = .data:0x00000288; // type:object size:0x11 data:string +lbl_1_data_299 = .data:0x00000299; // type:object size:0x10 data:string +lbl_1_data_2A9 = .data:0x000002A9; // type:object size:0x10 data:string +lbl_1_data_2B9 = .data:0x000002B9; // type:object size:0x1B data:string +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x11 data:string +lbl_1_data_2E5 = .data:0x000002E5; // type:object size:0x1D data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0x17 data:string +lbl_1_data_319 = .data:0x00000319; // type:object size:0x16 data:string +lbl_1_data_32F = .data:0x0000032F; // type:object size:0x15 data:string +lbl_1_data_344 = .data:0x00000344; // type:object size:0x13 data:string +lbl_1_data_357 = .data:0x00000357; // type:object size:0xE data:string +lbl_1_data_365 = .data:0x00000365; // type:object size:0x14 data:string +lbl_1_data_379 = .data:0x00000379; // type:object size:0x13 data:string +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x12 data:string +lbl_1_data_39E = .data:0x0000039E; // type:object size:0xD data:string +lbl_1_data_3AB = .data:0x000003AB; // type:object size:0xD data:string +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x17 data:string +lbl_1_data_3CF = .data:0x000003CF; // type:object size:0xE data:string +lbl_1_data_3DD = .data:0x000003DD; // type:object size:0xB data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x11 data:string +lbl_1_data_3F9 = .data:0x000003F9; // type:object size:0x11 data:string +lbl_1_data_40A = .data:0x0000040A; // type:object size:0xA data:string +lbl_1_data_414 = .data:0x00000414; // type:object size:0x13 data:string +lbl_1_data_427 = .data:0x00000427; // type:object size:0xD data:string +lbl_1_data_434 = .data:0x00000434; // type:object size:0x5 data:string +lbl_1_data_439 = .data:0x00000439; // type:object size:0x15 data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x5 data:string +lbl_1_data_453 = .data:0x00000453; // type:object size:0xF data:string +lbl_1_data_462 = .data:0x00000462; // type:object size:0xE data:string +lbl_1_data_470 = .data:0x00000470; // type:object size:0xE data:string +lbl_1_data_47E = .data:0x0000047E; // type:object size:0xE data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0xE data:string +lbl_1_data_49A = .data:0x0000049A; // type:object size:0xE data:string +lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0xE data:string +lbl_1_data_4B6 = .data:0x000004B6; // type:object size:0xE data:string +lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0xE data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0xA data:string +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x10 +lbl_1_data_4EC = .data:0x000004EC; // type:object size:0x348 +lbl_1_data_834 = .data:0x00000834; // type:object size:0x28 +lbl_1_data_85C = .data:0x0000085C; // type:object size:0x12 data:string +lbl_1_data_86E = .data:0x0000086E; // type:object size:0x12 data:string +lbl_1_data_880 = .data:0x00000880; // type:object size:0x12 data:string +lbl_1_data_892 = .data:0x00000892; // type:object size:0x12 data:string +lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x12 data:string +lbl_1_data_8B6 = .data:0x000008B6; // type:object size:0x12 data:string +lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x11 data:string +lbl_1_data_8D9 = .data:0x000008D9; // type:object size:0x23 +lbl_1_data_8FC = .data:0x000008FC; // type:object size:0x2 data:2byte +lbl_1_data_8FE = .data:0x000008FE; // type:object size:0x8 +lbl_1_data_906 = .data:0x00000906; // type:object size:0x12 +lbl_1_data_918 = .data:0x00000918; // type:object size:0x4 data:4byte +lbl_1_data_91C = .data:0x0000091C; // type:object size:0x12 data:string +lbl_1_data_92E = .data:0x0000092E; // type:object size:0x24 data:string +lbl_1_data_952 = .data:0x00000952; // type:object size:0xB data:string +lbl_1_data_95D = .data:0x0000095D; // type:object size:0x3 data:string +lbl_1_data_960 = .data:0x00000960; // type:object size:0x10 +lbl_1_data_970 = .data:0x00000970; // type:object size:0x20 +lbl_1_data_990 = .data:0x00000990; // type:object size:0x20 +lbl_1_data_9B0 = .data:0x000009B0; // type:object size:0xD data:string +lbl_1_data_9BD = .data:0x000009BD; // type:object size:0x5 +lbl_1_data_9C2 = .data:0x000009C2; // type:object size:0x5 +lbl_1_data_9C7 = .data:0x000009C7; // type:object size:0x6 +lbl_1_data_9CD = .data:0x000009CD; // type:object size:0x9 data:string +lbl_1_data_9D6 = .data:0x000009D6; // type:object size:0xA data:string +lbl_1_data_9E0 = .data:0x000009E0; // type:object size:0xA data:string +lbl_1_data_9EA = .data:0x000009EA; // type:object size:0x9 data:string +lbl_1_data_9F3 = .data:0x000009F3; // type:object size:0x9 data:string +lbl_1_data_9FC = .data:0x000009FC; // type:object size:0xC +lbl_1_data_A08 = .data:0x00000A08; // type:object size:0x14 data:4byte +lbl_1_data_A1C = .data:0x00000A1C; // type:object size:0x6 data:string +lbl_1_data_A22 = .data:0x00000A22; // type:object size:0x4 data:string +lbl_1_data_A26 = .data:0x00000A26; // type:object size:0x5 data:string +lbl_1_data_A2B = .data:0x00000A2B; // type:object size:0x7 data:string +lbl_1_data_A32 = .data:0x00000A32; // type:object size:0x5 data:string +lbl_1_data_A37 = .data:0x00000A37; // type:object size:0x9 data:string +jumptable_1_data_A40 = .data:0x00000A40; // type:object size:0x20 scope:local +jumptable_1_data_A60 = .data:0x00000A60; // type:object size:0x20 scope:local +lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x4 data:string +lbl_1_data_A84 = .data:0x00000A84; // type:object size:0x4 data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x10 data:string +lbl_1_data_A98 = .data:0x00000A98; // type:object size:0x15 data:string +lbl_1_data_AAD = .data:0x00000AAD; // type:object size:0x15 data:string +lbl_1_data_AC2 = .data:0x00000AC2; // type:object size:0x15 data:string +lbl_1_data_AD7 = .data:0x00000AD7; // type:object size:0x15 data:string +lbl_1_data_AEC = .data:0x00000AEC; // type:object size:0x15 data:string +lbl_1_data_B01 = .data:0x00000B01; // type:object size:0x15 data:string +lbl_1_data_B16 = .data:0x00000B16; // type:object size:0x15 data:string +lbl_1_data_B2B = .data:0x00000B2B; // type:object size:0x14 data:string +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x10 +lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x8 +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x10 +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x8 +lbl_1_bss_3E = .bss:0x0000003E; // type:object size:0x8 +lbl_1_bss_46 = .bss:0x00000046; // type:object size:0x8 +lbl_1_bss_4E = .bss:0x0000004E; // type:object size:0x2 data:2byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x2 data:2byte +lbl_1_bss_56 = .bss:0x00000056; // type:object size:0x2A data:2byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0xE +lbl_1_bss_96 = .bss:0x00000096; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/staffDll/splits.txt b/config/GMPP01_00/rels/staffDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/staffDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/staffDll/symbols.txt b/config/GMPP01_00/rels/staffDll/symbols.txt new file mode 100644 index 00000000..15413e32 --- /dev/null +++ b/config/GMPP01_00/rels/staffDll/symbols.txt @@ -0,0 +1,55 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x218 +fn_1_2B8 = .text:0x000002B8; // type:function size:0x60 +fn_1_318 = .text:0x00000318; // type:function size:0x444 +fn_1_75C = .text:0x0000075C; // type:function size:0x3AC +fn_1_B08 = .text:0x00000B08; // type:function size:0x12C +fn_1_C34 = .text:0x00000C34; // type:function size:0x1C4 +fn_1_DF8 = .text:0x00000DF8; // type:function size:0x500 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1308 +lbl_1_data_1308 = .data:0x00001308; // type:object size:0xC data:float +lbl_1_data_1314 = .data:0x00001314; // type:object size:0x14 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x6 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x34 data:2byte diff --git a/config/GMPP01_00/rels/subchrselDll/splits.txt b/config/GMPP01_00/rels/subchrselDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/subchrselDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/subchrselDll/symbols.txt b/config/GMPP01_00/rels/subchrselDll/symbols.txt new file mode 100644 index 00000000..22a9a485 --- /dev/null +++ b/config/GMPP01_00/rels/subchrselDll/symbols.txt @@ -0,0 +1,33 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x6C +fn_1_10C = .text:0x0000010C; // type:function size:0x58 +fn_1_164 = .text:0x00000164; // type:function size:0x654 +_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_data_0 = .data:0x00000000; // type:object size:0x8 data:string +lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 data:string +lbl_1_data_10 = .data:0x00000010; // type:object size:0x8 data:string +lbl_1_data_18 = .data:0x00000018; // type:object size:0x8 data:string +lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x6 data:string +lbl_1_data_36 = .data:0x00000036; // type:object size:0x6 data:string +lbl_1_data_3C = .data:0x0000003C; // type:object size:0x6 data:string +lbl_1_data_42 = .data:0x00000042; // type:object size:0x6 data:string +lbl_1_data_48 = .data:0x00000048; // type:object size:0x6 data:string +lbl_1_data_4E = .data:0x0000004E; // type:object size:0x7 data:string +lbl_1_data_55 = .data:0x00000055; // type:object size:0x6 data:string +lbl_1_data_5B = .data:0x0000005B; // type:object size:0x9 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x20 +lbl_1_data_84 = .data:0x00000084; // type:object size:0x1 +lbl_1_data_85 = .data:0x00000085; // type:object size:0x6 data:string +lbl_1_data_8B = .data:0x0000008B; // type:object size:0x8 data:string +lbl_1_data_93 = .data:0x00000093; // type:object size:0x7 data:string +lbl_1_data_9A = .data:0x0000009A; // type:object size:0x7 data:string +lbl_1_data_A1 = .data:0x000000A1; // type:object size:0x6 data:string +lbl_1_data_A7 = .data:0x000000A7; // type:object size:0x9 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x1C +lbl_1_data_CC = .data:0x000000CC; // type:object size:0x15 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte diff --git a/config/GMPP01_00/rels/w01Dll/splits.txt b/config/GMPP01_00/rels/w01Dll/splits.txt new file mode 100644 index 00000000..7baca9d9 --- /dev/null +++ b/config/GMPP01_00/rels/w01Dll/splits.txt @@ -0,0 +1,29 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w01Dll/main.c: + .text start:0x000000E0 end:0x00009D00 + .rodata start:0x00000010 end:0x00000198 + .data start:0x00000000 end:0x00000658 + .bss start:0x00000000 end:0x00000708 + +REL/w01Dll/mg_coin.c: + .text start:0x00009D00 end:0x0000D740 + .rodata start:0x00000198 end:0x000002C8 + .data start:0x00000658 end:0x00000F08 + .bss start:0x00000708 end:0x000007A0 + +REL/w01Dll/mg_item.c: + .text start:0x0000D740 end:0x000119F0 + .rodata start:0x000002C8 end:0x000003C4 + .data start:0x00000F08 end:0x00000FAC + .bss start:0x000007A0 end:0x0000081C diff --git a/config/GMPP01_00/rels/w01Dll/symbols.txt b/config/GMPP01_00/rels/w01Dll/symbols.txt new file mode 100644 index 00000000..94ae2e2e --- /dev/null +++ b/config/GMPP01_00/rels/w01Dll/symbols.txt @@ -0,0 +1,469 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x4BC +BoardDestroy = .text:0x0000059C; // type:function size:0x194 +fn_1_730 = .text:0x00000730; // type:function size:0x44 +fn_1_774 = .text:0x00000774; // type:function size:0x4 +fn_1_778 = .text:0x00000778; // type:function size:0x9C +fn_1_814 = .text:0x00000814; // type:function size:0x1D4 +fn_1_9E8 = .text:0x000009E8; // type:function size:0x318 +fn_1_D00 = .text:0x00000D00; // type:function size:0x4 +fn_1_D04 = .text:0x00000D04; // type:function size:0x550 +fn_1_1254 = .text:0x00001254; // type:function size:0x38 +fn_1_128C = .text:0x0000128C; // type:function size:0x80 +fn_1_130C = .text:0x0000130C; // type:function size:0x270 +fn_1_157C = .text:0x0000157C; // type:function size:0xF4 +fn_1_1670 = .text:0x00001670; // type:function size:0x90 +fn_1_1700 = .text:0x00001700; // type:function size:0x290 +fn_1_1990 = .text:0x00001990; // type:function size:0x148 +fn_1_1AD8 = .text:0x00001AD8; // type:function size:0x64 +fn_1_1B3C = .text:0x00001B3C; // type:function size:0x3A8 +fn_1_1EE4 = .text:0x00001EE4; // type:function size:0x48 +fn_1_1F2C = .text:0x00001F2C; // type:function size:0x78 +fn_1_1FA4 = .text:0x00001FA4; // type:function size:0x580 +fn_1_2524 = .text:0x00002524; // type:function size:0x248 +fn_1_276C = .text:0x0000276C; // type:function size:0x7AC +fn_1_2F18 = .text:0x00002F18; // type:function size:0x438 +fn_1_3350 = .text:0x00003350; // type:function size:0x1C4 +fn_1_3514 = .text:0x00003514; // type:function size:0xA0 +fn_1_35B4 = .text:0x000035B4; // type:function size:0x70 +fn_1_3624 = .text:0x00003624; // type:function size:0xFD0 +fn_1_45F4 = .text:0x000045F4; // type:function size:0x180 +fn_1_4774 = .text:0x00004774; // type:function size:0xF0 +fn_1_4864 = .text:0x00004864; // type:function size:0x50 +fn_1_48B4 = .text:0x000048B4; // type:function size:0x560 +fn_1_4E14 = .text:0x00004E14; // type:function size:0x194 +fn_1_4FA8 = .text:0x00004FA8; // type:function size:0x30 +fn_1_4FD8 = .text:0x00004FD8; // type:function size:0xFC +fn_1_50D4 = .text:0x000050D4; // type:function size:0x2E4 +fn_1_53B8 = .text:0x000053B8; // type:function size:0x84 +fn_1_543C = .text:0x0000543C; // type:function size:0x258 +fn_1_5694 = .text:0x00005694; // type:function size:0x1D8 +fn_1_586C = .text:0x0000586C; // type:function size:0xC0 +fn_1_592C = .text:0x0000592C; // type:function size:0x200 +fn_1_5B2C = .text:0x00005B2C; // type:function size:0x14 +fn_1_5B40 = .text:0x00005B40; // type:function size:0x190 +fn_1_5CD0 = .text:0x00005CD0; // type:function size:0x38 +fn_1_5D08 = .text:0x00005D08; // type:function size:0x390 +fn_1_6098 = .text:0x00006098; // type:function size:0xFC +fn_1_6194 = .text:0x00006194; // type:function size:0x25C +fn_1_63F0 = .text:0x000063F0; // type:function size:0x624 +fn_1_6A14 = .text:0x00006A14; // type:function size:0x1AC +fn_1_6BC0 = .text:0x00006BC0; // type:function size:0x3F4 +fn_1_6FB4 = .text:0x00006FB4; // type:function size:0x574 +fn_1_7528 = .text:0x00007528; // type:function size:0x2C4 +fn_1_77EC = .text:0x000077EC; // type:function size:0xA8 +fn_1_7894 = .text:0x00007894; // type:function size:0x1D0 +fn_1_7A64 = .text:0x00007A64; // type:function size:0xAC8 +fn_1_852C = .text:0x0000852C; // type:function size:0x280 +fn_1_87AC = .text:0x000087AC; // type:function size:0x34 +fn_1_87E0 = .text:0x000087E0; // type:function size:0x1A8 +fn_1_8988 = .text:0x00008988; // type:function size:0xC8 +fn_1_8A50 = .text:0x00008A50; // type:function size:0x11C +fn_1_8B6C = .text:0x00008B6C; // type:function size:0x270 +fn_1_8DDC = .text:0x00008DDC; // type:function size:0x3B0 +fn_1_918C = .text:0x0000918C; // type:function size:0xF0 +fn_1_927C = .text:0x0000927C; // type:function size:0xB0 +fn_1_932C = .text:0x0000932C; // type:function size:0x17C +fn_1_94A8 = .text:0x000094A8; // type:function size:0x14C +fn_1_95F4 = .text:0x000095F4; // type:function size:0x200 +fn_1_97F4 = .text:0x000097F4; // type:function size:0xF8 +fn_1_98EC = .text:0x000098EC; // type:function size:0x34 +fn_1_9920 = .text:0x00009920; // type:function size:0x104 +fn_1_9A24 = .text:0x00009A24; // type:function size:0x198 +fn_1_9BBC = .text:0x00009BBC; // type:function size:0x144 +fn_1_9D00 = .text:0x00009D00; // type:function size:0xD8 +fn_1_9DD8 = .text:0x00009DD8; // type:function size:0x6E0 +fn_1_A4B8 = .text:0x0000A4B8; // type:function size:0x9C +fn_1_A554 = .text:0x0000A554; // type:function size:0xA8 +fn_1_A5FC = .text:0x0000A5FC; // type:function size:0xE4 +fn_1_A6E0 = .text:0x0000A6E0; // type:function size:0x938 +fn_1_B018 = .text:0x0000B018; // type:function size:0x70 +fn_1_B088 = .text:0x0000B088; // type:function size:0x144 +fn_1_B1CC = .text:0x0000B1CC; // type:function size:0x1EC +fn_1_B3B8 = .text:0x0000B3B8; // type:function size:0xC0 +fn_1_B478 = .text:0x0000B478; // type:function size:0x680 +fn_1_BAF8 = .text:0x0000BAF8; // type:function size:0x1E4 +fn_1_BCDC = .text:0x0000BCDC; // type:function size:0x224 +fn_1_BF00 = .text:0x0000BF00; // type:function size:0x68 +fn_1_BF68 = .text:0x0000BF68; // type:function size:0x98 +fn_1_C000 = .text:0x0000C000; // type:function size:0xFC +fn_1_C0FC = .text:0x0000C0FC; // type:function size:0x160 +fn_1_C25C = .text:0x0000C25C; // type:function size:0x5E8 +fn_1_C844 = .text:0x0000C844; // type:function size:0x50 +fn_1_C894 = .text:0x0000C894; // type:function size:0xB8 +fn_1_C94C = .text:0x0000C94C; // type:function size:0x4C +fn_1_C998 = .text:0x0000C998; // type:function size:0x1AC +fn_1_CB44 = .text:0x0000CB44; // type:function size:0x380 +fn_1_CEC4 = .text:0x0000CEC4; // type:function size:0x170 +fn_1_D034 = .text:0x0000D034; // type:function size:0x48 +fn_1_D07C = .text:0x0000D07C; // type:function size:0x98 +fn_1_D114 = .text:0x0000D114; // type:function size:0x62C +fn_1_D740 = .text:0x0000D740; // type:function size:0x644 +fn_1_DD84 = .text:0x0000DD84; // type:function size:0x110 +fn_1_DE94 = .text:0x0000DE94; // type:function size:0x26C +fn_1_E100 = .text:0x0000E100; // type:function size:0x54 +fn_1_E154 = .text:0x0000E154; // type:function size:0x164 +fn_1_E2B8 = .text:0x0000E2B8; // type:function size:0x194 +fn_1_E44C = .text:0x0000E44C; // type:function size:0x4C8 +fn_1_E914 = .text:0x0000E914; // type:function size:0x3C0 +fn_1_ECD4 = .text:0x0000ECD4; // type:function size:0x1CC +fn_1_EEA0 = .text:0x0000EEA0; // type:function size:0x38 +fn_1_EED8 = .text:0x0000EED8; // type:function size:0x1C4 +fn_1_F09C = .text:0x0000F09C; // type:function size:0x2AC +fn_1_F348 = .text:0x0000F348; // type:function size:0xB0 +fn_1_F3F8 = .text:0x0000F3F8; // type:function size:0x2F0 +fn_1_F6E8 = .text:0x0000F6E8; // type:function size:0x1A8 +fn_1_F890 = .text:0x0000F890; // type:function size:0x18C +fn_1_FA1C = .text:0x0000FA1C; // type:function size:0xA0 +fn_1_FABC = .text:0x0000FABC; // type:function size:0x9C +fn_1_FB58 = .text:0x0000FB58; // type:function size:0xE4 +fn_1_FC3C = .text:0x0000FC3C; // type:function size:0xB0 +fn_1_FCEC = .text:0x0000FCEC; // type:function size:0x50 +fn_1_FD3C = .text:0x0000FD3C; // type:function size:0x108 +fn_1_FE44 = .text:0x0000FE44; // type:function size:0x8C +fn_1_FED0 = .text:0x0000FED0; // type:function size:0x14C +fn_1_1001C = .text:0x0001001C; // type:function size:0x19C +fn_1_101B8 = .text:0x000101B8; // type:function size:0x4AC +fn_1_10664 = .text:0x00010664; // type:function size:0x1BC +fn_1_10820 = .text:0x00010820; // type:function size:0x2C8 +fn_1_10AE8 = .text:0x00010AE8; // type:function size:0xC8 +fn_1_10BB0 = .text:0x00010BB0; // type:function size:0x140 +fn_1_10CF0 = .text:0x00010CF0; // type:function size:0x1C8 +fn_1_10EB8 = .text:0x00010EB8; // type:function size:0x1AC +fn_1_11064 = .text:0x00011064; // type:function size:0x420 +fn_1_11484 = .text:0x00011484; // type:function size:0x56C +_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:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x10 data:4byte +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x8 data:4byte +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x8 data:4byte +lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x2 data:2byte +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x2 data:2byte +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0xC data:2byte +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x528 +lbl_1_data_528 = .data:0x00000528; // type:object size:0x2 data:2byte +lbl_1_data_52A = .data:0x0000052A; // type:object size:0x2 data:2byte +lbl_1_data_52C = .data:0x0000052C; // type:object size:0x2 data:2byte +lbl_1_data_52E = .data:0x0000052E; // type:object size:0x2 data:2byte +lbl_1_data_530 = .data:0x00000530; // type:object size:0x2 data:2byte +lbl_1_data_534 = .data:0x00000534; // type:object size:0x8 +lbl_1_data_53C = .data:0x0000053C; // type:object size:0x8 +lbl_1_data_544 = .data:0x00000544; // type:object size:0x14 data:string +lbl_1_data_558 = .data:0x00000558; // type:object size:0x14 data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x14 +lbl_1_data_580 = .data:0x00000580; // type:object size:0x2 data:2byte +lbl_1_data_582 = .data:0x00000582; // type:object size:0x12 +lbl_1_data_594 = .data:0x00000594; // type:object size:0x40 +lbl_1_data_5D4 = .data:0x000005D4; // type:object size:0x4 data:4byte +lbl_1_data_5D8 = .data:0x000005D8; // type:object size:0x4 data:4byte +lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x10 +lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x7 data:string +lbl_1_data_5F3 = .data:0x000005F3; // type:object size:0x7 data:string +lbl_1_data_5FA = .data:0x000005FA; // type:object size:0xA +lbl_1_data_604 = .data:0x00000604; // type:object size:0xC +lbl_1_data_610 = .data:0x00000610; // type:object size:0x10 +lbl_1_data_620 = .data:0x00000620; // type:object size:0x5 data:string +lbl_1_data_625 = .data:0x00000625; // type:object size:0x5 data:string +lbl_1_data_62A = .data:0x0000062A; // type:object size:0x5 data:string +lbl_1_data_62F = .data:0x0000062F; // type:object size:0x4 data:string +lbl_1_data_633 = .data:0x00000633; // type:object size:0x1 data:byte +lbl_1_data_634 = .data:0x00000634; // type:object size:0x24 +lbl_1_data_658 = .data:0x00000658; // type:object size:0x24 +lbl_1_data_67C = .data:0x0000067C; // type:object size:0x14 +lbl_1_data_690 = .data:0x00000690; // type:object size:0x2D0 +lbl_1_data_960 = .data:0x00000960; // type:object size:0x2D0 +lbl_1_data_C30 = .data:0x00000C30; // type:object size:0x2D0 +lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x8 +lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x38 +lbl_1_data_F40 = .data:0x00000F40; // type:object size:0x20 +lbl_1_data_F60 = .data:0x00000F60; // type:object size:0x20 +lbl_1_data_F80 = .data:0x00000F80; // type:object size:0x7 data:string +lbl_1_data_F87 = .data:0x00000F87; // type:object size:0x5 data:string +lbl_1_data_F8C = .data:0x00000F8C; // type:object size:0x5 data:string +lbl_1_data_F91 = .data:0x00000F91; // type:object size:0x5 data:string +lbl_1_data_F96 = .data:0x00000F96; // type:object size:0x6 +lbl_1_data_F9C = .data:0x00000F9C; // type:object size:0x10 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x1 data:byte +lbl_1_bss_29 = .bss:0x00000029; // type:object size:0x1 data:byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x5A0 +lbl_1_bss_5CC = .bss:0x000005CC; // type:object size:0x2 data:2byte +lbl_1_bss_5D0 = .bss:0x000005D0; // type:object size:0x30 +lbl_1_bss_600 = .bss:0x00000600; // type:object size:0x18 +lbl_1_bss_618 = .bss:0x00000618; // type:object size:0xC data:4byte +lbl_1_bss_624 = .bss:0x00000624; // type:object size:0xC data:float +lbl_1_bss_630 = .bss:0x00000630; // type:object size:0xC data:4byte +lbl_1_bss_63C = .bss:0x0000063C; // type:object size:0x4 data:float +lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x4 data:float +lbl_1_bss_644 = .bss:0x00000644; // type:object size:0x4 data:float +lbl_1_bss_648 = .bss:0x00000648; // type:object size:0xC data:4byte +lbl_1_bss_654 = .bss:0x00000654; // type:object size:0xC data:float +lbl_1_bss_660 = .bss:0x00000660; // type:object size:0xC data:float +lbl_1_bss_66C = .bss:0x0000066C; // type:object size:0x4 data:float +lbl_1_bss_670 = .bss:0x00000670; // type:object size:0x4 data:float +lbl_1_bss_674 = .bss:0x00000674; // type:object size:0x4 data:float +lbl_1_bss_678 = .bss:0x00000678; // type:object size:0x30 +lbl_1_bss_6A8 = .bss:0x000006A8; // type:object size:0x4 data:float +lbl_1_bss_6AC = .bss:0x000006AC; // type:object size:0x2 data:2byte +lbl_1_bss_6AE = .bss:0x000006AE; // type:object size:0x2 data:2byte +lbl_1_bss_6B0 = .bss:0x000006B0; // type:object size:0x1 data:byte +lbl_1_bss_6B1 = .bss:0x000006B1; // type:object size:0x1 data:byte +lbl_1_bss_6B2 = .bss:0x000006B2; // type:object size:0x1 data:byte +lbl_1_bss_6B3 = .bss:0x000006B3; // type:object size:0x1 data:byte +lbl_1_bss_6B4 = .bss:0x000006B4; // type:object size:0x1 data:byte +lbl_1_bss_6B6 = .bss:0x000006B6; // type:object size:0xA data:2byte +lbl_1_bss_6C0 = .bss:0x000006C0; // type:object size:0x4 data:4byte +lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x44 data:2byte +lbl_1_bss_708 = .bss:0x00000708; // type:object size:0x2 data:2byte +lbl_1_bss_70C = .bss:0x0000070C; // type:object size:0x4 data:4byte +lbl_1_bss_710 = .bss:0x00000710; // type:object size:0x4 data:4byte +lbl_1_bss_714 = .bss:0x00000714; // type:object size:0xC +lbl_1_bss_720 = .bss:0x00000720; // type:object size:0x4 data:4byte +lbl_1_bss_724 = .bss:0x00000724; // type:object size:0x4 data:4byte +lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x2 data:2byte +lbl_1_bss_72A = .bss:0x0000072A; // type:object size:0x2 data:2byte +lbl_1_bss_72C = .bss:0x0000072C; // type:object size:0x4 data:4byte +lbl_1_bss_730 = .bss:0x00000730; // type:object size:0x4 data:4byte +lbl_1_bss_734 = .bss:0x00000734; // type:object size:0x4 data:4byte +lbl_1_bss_738 = .bss:0x00000738; // type:object size:0xC data:float +lbl_1_bss_744 = .bss:0x00000744; // type:object size:0x2 data:2byte +lbl_1_bss_748 = .bss:0x00000748; // type:object size:0x4 data:4byte +lbl_1_bss_74C = .bss:0x0000074C; // type:object size:0x4 data:4byte +lbl_1_bss_750 = .bss:0x00000750; // type:object size:0x2 data:2byte +lbl_1_bss_754 = .bss:0x00000754; // type:object size:0x4 data:float +lbl_1_bss_758 = .bss:0x00000758; // type:object size:0x4 data:4byte +lbl_1_bss_75C = .bss:0x0000075C; // type:object size:0x4 data:4byte +lbl_1_bss_760 = .bss:0x00000760; // type:object size:0x28 +lbl_1_bss_788 = .bss:0x00000788; // type:object size:0x2 data:2byte +lbl_1_bss_78A = .bss:0x0000078A; // type:object size:0x6 data:2byte +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x6 data:2byte +lbl_1_bss_796 = .bss:0x00000796; // type:object size:0x2 data:2byte +lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x4 data:4byte +lbl_1_bss_79C = .bss:0x0000079C; // type:object size:0x4 data:4byte +lbl_1_bss_7A0 = .bss:0x000007A0; // type:object size:0x4 data:4byte +lbl_1_bss_7A4 = .bss:0x000007A4; // type:object size:0x4 data:4byte +lbl_1_bss_7A8 = .bss:0x000007A8; // type:object size:0x2 data:2byte +lbl_1_bss_7AA = .bss:0x000007AA; // type:object size:0x2 data:2byte +lbl_1_bss_7AC = .bss:0x000007AC; // type:object size:0x8 data:4byte +lbl_1_bss_7B4 = .bss:0x000007B4; // type:object size:0x2 data:2byte +lbl_1_bss_7B8 = .bss:0x000007B8; // type:object size:0x4 data:4byte +lbl_1_bss_7BC = .bss:0x000007BC; // type:object size:0x8 data:4byte +lbl_1_bss_7C4 = .bss:0x000007C4; // type:object size:0xC data:float +lbl_1_bss_7D0 = .bss:0x000007D0; // type:object size:0x2 data:2byte +lbl_1_bss_7D2 = .bss:0x000007D2; // type:object size:0x2 data:2byte +lbl_1_bss_7D4 = .bss:0x000007D4; // type:object size:0x2 data:2byte +lbl_1_bss_7D6 = .bss:0x000007D6; // type:object size:0x2 data:2byte +lbl_1_bss_7D8 = .bss:0x000007D8; // type:object size:0xC data:4byte +lbl_1_bss_7E4 = .bss:0x000007E4; // type:object size:0x4 data:4byte +lbl_1_bss_7E8 = .bss:0x000007E8; // type:object size:0x4 data:float +lbl_1_bss_7EC = .bss:0x000007EC; // type:object size:0x4 data:float +lbl_1_bss_7F0 = .bss:0x000007F0; // type:object size:0x4 data:4byte +lbl_1_bss_7F4 = .bss:0x000007F4; // type:object size:0x4 data:4byte +lbl_1_bss_7F8 = .bss:0x000007F8; // type:object size:0x4 data:4byte +lbl_1_bss_7FC = .bss:0x000007FC; // type:object size:0x10 data:4byte +lbl_1_bss_80C = .bss:0x0000080C; // type:object size:0xC data:float +lbl_1_bss_818 = .bss:0x00000818; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/w02Dll/splits.txt b/config/GMPP01_00/rels/w02Dll/splits.txt new file mode 100644 index 00000000..a94f9206 --- /dev/null +++ b/config/GMPP01_00/rels/w02Dll/splits.txt @@ -0,0 +1,52 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w02Dll/main.c: + .text start:0x000000E0 end:0x00001254 + .rodata start:0x00000010 end:0x00000038 + .data start:0x00000000 end:0x000002A8 + .bss start:0x00000000 end:0x00000050 + +REL/w02Dll/gendice.c: + .text start:0x00001254 end:0x00002D04 + .rodata start:0x00000038 end:0x00000108 + .data start:0x000002A8 end:0x00000360 + +REL/w02Dll/gamble.c: + .text start:0x00002D04 end:0x000039F4 + .rodata start:0x00000108 end:0x00000178 + .data start:0x00000360 end:0x00000378 + .bss start:0x00000050 end:0x00000058 + +REL/w02Dll/mg_coin.c: + .text start:0x000039F4 end:0x00005CF8 + .rodata start:0x00000178 end:0x00000218 + .data start:0x00000378 end:0x00000428 + .bss start:0x00000058 end:0x000000C8 + +REL/w02Dll/mg_item.c: + .text start:0x00005CF8 end:0x00009250 + .rodata start:0x00000218 end:0x000002F8 + .data start:0x00000428 end:0x00000490 + .bss start:0x000000C8 end:0x000001A0 + +REL/w02Dll/shuffleboard.c: + .text start:0x00009250 end:0x0000BC1C + .rodata start:0x000002F8 end:0x00000410 + .data start:0x00000490 end:0x000004D0 + .bss start:0x000001A0 end:0x00000380 + +REL/w02Dll/roulette.c: + .text start:0x0000BC1C end:0x0000E4D4 + .rodata start:0x00000410 end:0x00000538 + .data start:0x000004D0 end:0x00000524 + .bss start:0x00000380 end:0x00000390 diff --git a/config/GMPP01_00/rels/w02Dll/symbols.txt b/config/GMPP01_00/rels/w02Dll/symbols.txt new file mode 100644 index 00000000..0383d0e6 --- /dev/null +++ b/config/GMPP01_00/rels/w02Dll/symbols.txt @@ -0,0 +1,457 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x4F4 +BoardDestroy = .text:0x000005D4; // type:function size:0x158 +fn_1_72C = .text:0x0000072C; // type:function size:0x44 +fn_1_770 = .text:0x00000770; // type:function size:0x4 +fn_1_774 = .text:0x00000774; // type:function size:0x8C +fn_1_800 = .text:0x00000800; // type:function size:0x12C +fn_1_92C = .text:0x0000092C; // type:function size:0x24 +fn_1_950 = .text:0x00000950; // type:function size:0x4 +fn_1_954 = .text:0x00000954; // type:function size:0x3C +fn_1_990 = .text:0x00000990; // type:function size:0x2C0 +fn_1_C50 = .text:0x00000C50; // type:function size:0x420 +fn_1_1070 = .text:0x00001070; // type:function size:0x38 +fn_1_10A8 = .text:0x000010A8; // type:function size:0x80 +fn_1_1128 = .text:0x00001128; // type:function size:0xF4 +fn_1_121C = .text:0x0000121C; // type:function size:0x38 +fn_1_1254 = .text:0x00001254; // type:function size:0x17C +fn_1_13D0 = .text:0x000013D0; // type:function size:0x148 +fn_1_1518 = .text:0x00001518; // type:function size:0x5C +fn_1_1574 = .text:0x00001574; // type:function size:0x220 +fn_1_1794 = .text:0x00001794; // type:function size:0x60 +fn_1_17F4 = .text:0x000017F4; // type:function size:0x5C +fn_1_1850 = .text:0x00001850; // type:function size:0x744 +fn_1_1F94 = .text:0x00001F94; // type:function size:0x9C +fn_1_2030 = .text:0x00002030; // type:function size:0xD0 +fn_1_2100 = .text:0x00002100; // type:function size:0x120 +fn_1_2220 = .text:0x00002220; // type:function size:0x9C +fn_1_22BC = .text:0x000022BC; // type:function size:0x80 +fn_1_233C = .text:0x0000233C; // type:function size:0x78 +fn_1_23B4 = .text:0x000023B4; // type:function size:0x48 +fn_1_23FC = .text:0x000023FC; // type:function size:0x1D4 +fn_1_25D0 = .text:0x000025D0; // type:function size:0xC4 +fn_1_2694 = .text:0x00002694; // type:function size:0x98 +fn_1_272C = .text:0x0000272C; // type:function size:0x104 +fn_1_2830 = .text:0x00002830; // type:function size:0x3B4 +fn_1_2BE4 = .text:0x00002BE4; // type:function size:0x120 +fn_1_2D04 = .text:0x00002D04; // type:function size:0xC34 +fn_1_3938 = .text:0x00003938; // type:function size:0x14 +fn_1_394C = .text:0x0000394C; // type:function size:0xA8 +fn_1_39F4 = .text:0x000039F4; // type:function size:0x200 +fn_1_3BF4 = .text:0x00003BF4; // type:function size:0x318 +fn_1_3F0C = .text:0x00003F0C; // type:function size:0x58 +fn_1_3F64 = .text:0x00003F64; // type:function size:0x30 +fn_1_3F94 = .text:0x00003F94; // type:function size:0xBC +fn_1_4050 = .text:0x00004050; // type:function size:0xB0 +fn_1_4100 = .text:0x00004100; // type:function size:0xB8 +fn_1_41B8 = .text:0x000041B8; // type:function size:0x1C0 +fn_1_4378 = .text:0x00004378; // type:function size:0x320 +fn_1_4698 = .text:0x00004698; // type:function size:0x50 +fn_1_46E8 = .text:0x000046E8; // type:function size:0xA34 +fn_1_511C = .text:0x0000511C; // type:function size:0x98 +fn_1_51B4 = .text:0x000051B4; // type:function size:0xDC +fn_1_5290 = .text:0x00005290; // type:function size:0x128 +fn_1_53B8 = .text:0x000053B8; // type:function size:0x27C +fn_1_5634 = .text:0x00005634; // type:function size:0x234 +fn_1_5868 = .text:0x00005868; // type:function size:0x258 +fn_1_5AC0 = .text:0x00005AC0; // type:function size:0x1C4 +fn_1_5C84 = .text:0x00005C84; // type:function size:0x74 +fn_1_5CF8 = .text:0x00005CF8; // type:function size:0x30 +fn_1_5D28 = .text:0x00005D28; // type:function size:0x1E0 +fn_1_5F08 = .text:0x00005F08; // type:function size:0x58 +fn_1_5F60 = .text:0x00005F60; // type:function size:0x30 +fn_1_5F90 = .text:0x00005F90; // type:function size:0x9C +fn_1_602C = .text:0x0000602C; // type:function size:0x40 +fn_1_606C = .text:0x0000606C; // type:function size:0x100 +fn_1_616C = .text:0x0000616C; // type:function size:0xDC +fn_1_6248 = .text:0x00006248; // type:function size:0x868 +fn_1_6AB0 = .text:0x00006AB0; // type:function size:0x1F4 +fn_1_6CA4 = .text:0x00006CA4; // type:function size:0x60 +fn_1_6D04 = .text:0x00006D04; // type:function size:0x130 +fn_1_6E34 = .text:0x00006E34; // type:function size:0x74 +fn_1_6EA8 = .text:0x00006EA8; // type:function size:0x43C +fn_1_72E4 = .text:0x000072E4; // type:function size:0x48 +fn_1_732C = .text:0x0000732C; // type:function size:0x2C +fn_1_7358 = .text:0x00007358; // type:function size:0x70 +fn_1_73C8 = .text:0x000073C8; // type:function size:0x11C +fn_1_74E4 = .text:0x000074E4; // type:function size:0x26C +fn_1_7750 = .text:0x00007750; // type:function size:0xC8 +fn_1_7818 = .text:0x00007818; // type:function size:0x80 +fn_1_7898 = .text:0x00007898; // type:function size:0x124 +fn_1_79BC = .text:0x000079BC; // type:function size:0x888 +fn_1_8244 = .text:0x00008244; // type:function size:0x32C +fn_1_8570 = .text:0x00008570; // type:function size:0x8C +fn_1_85FC = .text:0x000085FC; // type:function size:0x7B0 +fn_1_8DAC = .text:0x00008DAC; // type:function size:0x8C +fn_1_8E38 = .text:0x00008E38; // type:function size:0x418 +fn_1_9250 = .text:0x00009250; // type:function size:0x178 +fn_1_93C8 = .text:0x000093C8; // type:function size:0xE4 +fn_1_94AC = .text:0x000094AC; // type:function size:0x14 +fn_1_94C0 = .text:0x000094C0; // type:function size:0x418 +fn_1_98D8 = .text:0x000098D8; // type:function size:0x5EC +fn_1_9EC4 = .text:0x00009EC4; // type:function size:0x694 +fn_1_A558 = .text:0x0000A558; // type:function size:0x390 +fn_1_A8E8 = .text:0x0000A8E8; // type:function size:0xB68 +fn_1_B450 = .text:0x0000B450; // type:function size:0x458 +fn_1_B8A8 = .text:0x0000B8A8; // type:function size:0x288 +fn_1_BB30 = .text:0x0000BB30; // type:function size:0xEC +fn_1_BC1C = .text:0x0000BC1C; // type:function size:0xE0 +fn_1_BCFC = .text:0x0000BCFC; // type:function size:0x178 +fn_1_BE74 = .text:0x0000BE74; // type:function size:0x14 +fn_1_BE88 = .text:0x0000BE88; // type:function size:0x280 +fn_1_C108 = .text:0x0000C108; // type:function size:0xBFC +fn_1_CD04 = .text:0x0000CD04; // type:function size:0x6A8 +fn_1_D3AC = .text:0x0000D3AC; // type:function size:0x518 +fn_1_D8C4 = .text:0x0000D8C4; // type:function size:0x684 +fn_1_DF48 = .text:0x0000DF48; // type:function size:0x364 +fn_1_E2AC = .text:0x0000E2AC; // type:function size:0x64 +fn_1_E310 = .text:0x0000E310; // type:function size:0x10C +fn_1_E41C = .text:0x0000E41C; // type:function size:0xB8 +_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:0x8 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:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0xC data:4byte +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x18 data:4byte +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x24 data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x28 data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +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:double +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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0xC data:4byte +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte +lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte +lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x18 +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x12 data:string +lbl_1_data_2BA = .data:0x000002BA; // type:object size:0xE data:string +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x10 data:string +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x50 +lbl_1_data_328 = .data:0x00000328; // type:object size:0x1D data:string +lbl_1_data_345 = .data:0x00000345; // type:object size:0x1B data:string +lbl_1_data_360 = .data:0x00000360; // type:object size:0x11 data:string +lbl_1_data_371 = .data:0x00000371; // type:object size:0x7 +lbl_1_data_378 = .data:0x00000378; // type:object size:0x24 +lbl_1_data_39C = .data:0x0000039C; // type:object size:0x24 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x24 +lbl_1_data_3E4 = .data:0x000003E4; // type:object size:0x20 +lbl_1_data_404 = .data:0x00000404; // type:object size:0x20 +lbl_1_data_424 = .data:0x00000424; // type:object size:0x4 +lbl_1_data_428 = .data:0x00000428; // type:object size:0x38 +lbl_1_data_460 = .data:0x00000460; // type:object size:0x5 data:string +lbl_1_data_465 = .data:0x00000465; // type:object size:0x6 data:string +lbl_1_data_46B = .data:0x0000046B; // type:object size:0x9 +lbl_1_data_474 = .data:0x00000474; // type:object size:0xC +lbl_1_data_480 = .data:0x00000480; // type:object size:0x10 +lbl_1_data_490 = .data:0x00000490; // type:object size:0x20 +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x20 +lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0x40 +lbl_1_data_510 = .data:0x00000510; // type:object size:0x14 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0xC +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x20 data:2byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x28 data:2byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x2 data:2byte +lbl_1_bss_86 = .bss:0x00000086; // type:object size:0xE data:2byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0xC data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x2 data:2byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0xC +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x6 +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x6 +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0xC +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x24 +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:float +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:float +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x24 +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x24 +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x24 data:float +lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x6 data:2byte +lbl_1_bss_18A = .bss:0x0000018A; // type:object size:0x6 data:2byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x6 data:2byte +lbl_1_bss_196 = .bss:0x00000196; // type:object size:0x2 data:2byte +lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x8 data:2byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0xC data:float +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x2 data:2byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0xC data:float +lbl_1_bss_1BC = .bss:0x000001BC; // type:object size:0x4 data:float +lbl_1_bss_1C0 = .bss:0x000001C0; // type:object size:0x2 data:2byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x20 +lbl_1_bss_1E4 = .bss:0x000001E4; // type:object size:0xB4 +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0xB4 data:float +lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x1E +lbl_1_bss_36A = .bss:0x0000036A; // type:object size:0x2 data:2byte +lbl_1_bss_36C = .bss:0x0000036C; // type:object size:0x2 data:2byte +lbl_1_bss_36E = .bss:0x0000036E; // type:object size:0x2 data:2byte +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0x2 data:2byte +lbl_1_bss_374 = .bss:0x00000374; // type:object size:0x4 data:4byte +lbl_1_bss_378 = .bss:0x00000378; // type:object size:0x8 data:4byte +lbl_1_bss_380 = .bss:0x00000380; // type:object size:0x4 data:float +lbl_1_bss_384 = .bss:0x00000384; // type:object size:0x4 data:4byte +lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/w03Dll/splits.txt b/config/GMPP01_00/rels/w03Dll/splits.txt new file mode 100644 index 00000000..2ba2bee3 --- /dev/null +++ b/config/GMPP01_00/rels/w03Dll/splits.txt @@ -0,0 +1,53 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w03Dll/main.c: + .text start:0x000000E0 end:0x000012C8 + .rodata start:0x00000010 end:0x00000038 + .data start:0x00000000 end:0x00000280 + .bss start:0x00000000 end:0x00000028 + +REL/w03Dll/statue.c: + .text start:0x000012C8 end:0x00003058 + .rodata start:0x00000038 end:0x000000D8 + .data start:0x00000280 end:0x00000310 + .bss start:0x00000028 end:0x00000070 + +REL/w03Dll/condor.c: + .text start:0x00003058 end:0x000063F4 + .rodata start:0x000000D8 end:0x00000218 + .data start:0x00000310 end:0x00000368 + .bss start:0x00000070 end:0x00000120 + +REL/w03Dll/river.c: + .text start:0x000063F4 end:0x0000785C + .rodata start:0x00000218 end:0x000002A8 + .data start:0x00000368 end:0x00000410 + .bss start:0x00000120 end:0x00000138 + +REL/w03Dll/smoke.c: + .text start:0x0000785C end:0x00007ABC + .rodata start:0x000002A8 end:0x000002B0 + .data start:0x00000410 end:0x00000450 + .bss start:0x00000138 end:0x00000140 + +REL/w03Dll/mg_coin.c: + .text start:0x00007ABC end:0x00009A7C + .rodata start:0x000002B0 end:0x00000360 + .data start:0x00000450 end:0x000004D8 + .bss start:0x00000140 end:0x00000180 + +REL/w03Dll/mg_item.c: + .text start:0x00009A7C end:0x0000C248 + .rodata start:0x00000360 end:0x00000418 + .data start:0x000004D8 end:0x0000054C + .bss start:0x00000180 end:0x00000197 diff --git a/config/GMPP01_00/rels/w03Dll/symbols.txt b/config/GMPP01_00/rels/w03Dll/symbols.txt new file mode 100644 index 00000000..cac4adfe --- /dev/null +++ b/config/GMPP01_00/rels/w03Dll/symbols.txt @@ -0,0 +1,443 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x660 +BoardDestroy = .text:0x00000740; // type:function size:0x144 +fn_1_884 = .text:0x00000884; // type:function size:0x6C +fn_1_8F0 = .text:0x000008F0; // type:function size:0x20 +fn_1_910 = .text:0x00000910; // type:function size:0x164 +fn_1_A74 = .text:0x00000A74; // type:function size:0x84 +fn_1_AF8 = .text:0x00000AF8; // type:function size:0x64 +fn_1_B5C = .text:0x00000B5C; // type:function size:0x198 +fn_1_CF4 = .text:0x00000CF4; // type:function size:0xF8 +fn_1_DEC = .text:0x00000DEC; // type:function size:0x2C4 +fn_1_10B0 = .text:0x000010B0; // type:function size:0x34 +fn_1_10E4 = .text:0x000010E4; // type:function size:0x1E4 +fn_1_12C8 = .text:0x000012C8; // type:function size:0x90 +fn_1_1358 = .text:0x00001358; // type:function size:0x1D4 +fn_1_152C = .text:0x0000152C; // type:function size:0xBC +fn_1_15E8 = .text:0x000015E8; // type:function size:0x68 +fn_1_1650 = .text:0x00001650; // type:function size:0x38C +fn_1_19DC = .text:0x000019DC; // type:function size:0x340 +fn_1_1D1C = .text:0x00001D1C; // type:function size:0x1B8 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x20C +fn_1_20E0 = .text:0x000020E0; // type:function size:0x600 +fn_1_26E0 = .text:0x000026E0; // type:function size:0x138 +fn_1_2818 = .text:0x00002818; // type:function size:0x118 +fn_1_2930 = .text:0x00002930; // type:function size:0x110 +fn_1_2A40 = .text:0x00002A40; // type:function size:0x80 +fn_1_2AC0 = .text:0x00002AC0; // type:function size:0x84 +fn_1_2B44 = .text:0x00002B44; // type:function size:0x514 +fn_1_3058 = .text:0x00003058; // type:function size:0x44 +fn_1_309C = .text:0x0000309C; // type:function size:0xA0 +fn_1_313C = .text:0x0000313C; // type:function size:0xDC +fn_1_3218 = .text:0x00003218; // type:function size:0xEC +fn_1_3304 = .text:0x00003304; // type:function size:0x174 +fn_1_3478 = .text:0x00003478; // type:function size:0x39C +fn_1_3814 = .text:0x00003814; // type:function size:0x154 +fn_1_3968 = .text:0x00003968; // type:function size:0x520 +fn_1_3E88 = .text:0x00003E88; // type:function size:0xD4 +fn_1_3F5C = .text:0x00003F5C; // type:function size:0x3F8 +fn_1_4354 = .text:0x00004354; // type:function size:0xD0 +fn_1_4424 = .text:0x00004424; // type:function size:0x4C8 +fn_1_48EC = .text:0x000048EC; // type:function size:0x1B0 +fn_1_4A9C = .text:0x00004A9C; // type:function size:0x20 +fn_1_4ABC = .text:0x00004ABC; // type:function size:0x250 +fn_1_4D0C = .text:0x00004D0C; // type:function size:0x54 +fn_1_4D60 = .text:0x00004D60; // type:function size:0x1C4 +fn_1_4F24 = .text:0x00004F24; // type:function size:0x1B0 +fn_1_50D4 = .text:0x000050D4; // type:function size:0x764 +fn_1_5838 = .text:0x00005838; // type:function size:0x290 +fn_1_5AC8 = .text:0x00005AC8; // type:function size:0x194 +fn_1_5C5C = .text:0x00005C5C; // type:function size:0x3D0 +fn_1_602C = .text:0x0000602C; // type:function size:0x178 +fn_1_61A4 = .text:0x000061A4; // type:function size:0xF8 +fn_1_629C = .text:0x0000629C; // type:function size:0x34 +fn_1_62D0 = .text:0x000062D0; // type:function size:0x2C +fn_1_62FC = .text:0x000062FC; // type:function size:0xF8 +fn_1_63F4 = .text:0x000063F4; // type:function size:0xA0 +fn_1_6494 = .text:0x00006494; // type:function size:0x204 +fn_1_6698 = .text:0x00006698; // type:function size:0xC4 +fn_1_675C = .text:0x0000675C; // type:function size:0x9C +fn_1_67F8 = .text:0x000067F8; // type:function size:0x8C +fn_1_6884 = .text:0x00006884; // type:function size:0x14 +fn_1_6898 = .text:0x00006898; // type:function size:0x300 +fn_1_6B98 = .text:0x00006B98; // type:function size:0x404 +fn_1_6F9C = .text:0x00006F9C; // type:function size:0x3C0 +fn_1_735C = .text:0x0000735C; // type:function size:0x320 +fn_1_767C = .text:0x0000767C; // type:function size:0x168 +fn_1_77E4 = .text:0x000077E4; // type:function size:0x78 +fn_1_785C = .text:0x0000785C; // type:function size:0x184 +fn_1_79E0 = .text:0x000079E0; // type:function size:0xDC +fn_1_7ABC = .text:0x00007ABC; // type:function size:0x9C +fn_1_7B58 = .text:0x00007B58; // type:function size:0x50 +fn_1_7BA8 = .text:0x00007BA8; // type:function size:0x90 +fn_1_7C38 = .text:0x00007C38; // type:function size:0x60 +fn_1_7C98 = .text:0x00007C98; // type:function size:0x80 +fn_1_7D18 = .text:0x00007D18; // type:function size:0x428 +fn_1_8140 = .text:0x00008140; // type:function size:0xA0 +fn_1_81E0 = .text:0x000081E0; // type:function size:0x254 +fn_1_8434 = .text:0x00008434; // type:function size:0x74 +fn_1_84A8 = .text:0x000084A8; // type:function size:0x88 +fn_1_8530 = .text:0x00008530; // type:function size:0x168 +fn_1_8698 = .text:0x00008698; // type:function size:0x570 +fn_1_8C08 = .text:0x00008C08; // type:function size:0x23C +fn_1_8E44 = .text:0x00008E44; // type:function size:0x200 +fn_1_9044 = .text:0x00009044; // type:function size:0x174 +fn_1_91B8 = .text:0x000091B8; // type:function size:0x78 +fn_1_9230 = .text:0x00009230; // type:function size:0x154 +fn_1_9384 = .text:0x00009384; // type:function size:0xF0 +fn_1_9474 = .text:0x00009474; // type:function size:0x144 +fn_1_95B8 = .text:0x000095B8; // type:function size:0x240 +fn_1_97F8 = .text:0x000097F8; // type:function size:0x224 +fn_1_9A1C = .text:0x00009A1C; // type:function size:0x60 +fn_1_9A7C = .text:0x00009A7C; // type:function size:0x20 +fn_1_9A9C = .text:0x00009A9C; // type:function size:0x4 +fn_1_9AA0 = .text:0x00009AA0; // type:function size:0x90 +fn_1_9B30 = .text:0x00009B30; // type:function size:0x15C +fn_1_9C8C = .text:0x00009C8C; // type:function size:0x68 +fn_1_9CF4 = .text:0x00009CF4; // type:function size:0x284 +fn_1_9F78 = .text:0x00009F78; // type:function size:0x6C +fn_1_9FE4 = .text:0x00009FE4; // type:function size:0x468 +fn_1_A44C = .text:0x0000A44C; // type:function size:0x194 +fn_1_A5E0 = .text:0x0000A5E0; // type:function size:0xD0 +fn_1_A6B0 = .text:0x0000A6B0; // type:function size:0xF0 +fn_1_A7A0 = .text:0x0000A7A0; // type:function size:0x10C +fn_1_A8AC = .text:0x0000A8AC; // type:function size:0xE8 +fn_1_A994 = .text:0x0000A994; // type:function size:0x184 +fn_1_AB18 = .text:0x0000AB18; // type:function size:0xB8 +fn_1_ABD0 = .text:0x0000ABD0; // type:function size:0x108 +fn_1_ACD8 = .text:0x0000ACD8; // type:function size:0x148 +fn_1_AE20 = .text:0x0000AE20; // type:function size:0x2C +fn_1_AE4C = .text:0x0000AE4C; // type:function size:0xD8 +fn_1_AF24 = .text:0x0000AF24; // type:function size:0x180 +fn_1_B0A4 = .text:0x0000B0A4; // type:function size:0x2AC +fn_1_B350 = .text:0x0000B350; // type:function size:0x15C +fn_1_B4AC = .text:0x0000B4AC; // type:function size:0x1DC +fn_1_B688 = .text:0x0000B688; // type:function size:0xC0 +fn_1_B748 = .text:0x0000B748; // type:function size:0x1A0 +fn_1_B8E8 = .text:0x0000B8E8; // type:function size:0x260 +fn_1_BB48 = .text:0x0000BB48; // type:function size:0x2C +fn_1_BB74 = .text:0x0000BB74; // type:function size:0x50 +fn_1_BBC4 = .text:0x0000BBC4; // type:function size:0x34 +fn_1_BBF8 = .text:0x0000BBF8; // type:function size:0x84 +fn_1_BC7C = .text:0x0000BC7C; // type:function size:0x130 +fn_1_BDAC = .text:0x0000BDAC; // type:function size:0x84 +fn_1_BE30 = .text:0x0000BE30; // type:function size:0x418 +_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_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC data:4byte +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x24 data:4byte +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x6 data:2byte +lbl_1_rodata_BE = .rodata:0x000000BE; // type:object size:0x1 data:byte +lbl_1_rodata_C2 = .rodata:0x000000C2; // type:object size:0x6 data:byte +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x20 data:4byte +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:4byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x10 data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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:0x8 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E0 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x2 data:2byte +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0x2 data:2byte +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x2 data:2byte +lbl_1_data_1E6 = .data:0x000001E6; // type:object size:0x2 data:2byte +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x2 data:2byte +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x20 data:float +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x8 +lbl_1_data_214 = .data:0x00000214; // type:object size:0x8 +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x30 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x10 +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x14 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte +lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte +lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x4 data:4byte +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x4 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x20 +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x20 +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x20 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x20 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x2 data:2byte +lbl_1_data_312 = .data:0x00000312; // type:object size:0x2 data:2byte +lbl_1_data_314 = .data:0x00000314; // type:object size:0x2 data:2byte +lbl_1_data_316 = .data:0x00000316; // type:object size:0x2 data:2byte +lbl_1_data_318 = .data:0x00000318; // type:object size:0x18 +lbl_1_data_330 = .data:0x00000330; // type:object size:0xD data:string +lbl_1_data_33D = .data:0x0000033D; // type:object size:0x6 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0x9 +lbl_1_data_34C = .data:0x0000034C; // type:object size:0x8 +lbl_1_data_354 = .data:0x00000354; // type:object size:0x8 +lbl_1_data_35C = .data:0x0000035C; // type:object size:0xC +lbl_1_data_368 = .data:0x00000368; // type:object size:0x20 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x2 data:2byte +lbl_1_data_38A = .data:0x0000038A; // type:object size:0x2 data:2byte +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x2 data:2byte +lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0xB data:string +lbl_1_data_3AB = .data:0x000003AB; // type:object size:0x6 data:string +lbl_1_data_3B1 = .data:0x000003B1; // type:object size:0x7 +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x48 +lbl_1_data_400 = .data:0x00000400; // type:object size:0x3 data:string +lbl_1_data_403 = .data:0x00000403; // type:object size:0xD +lbl_1_data_410 = .data:0x00000410; // type:object size:0x8 data:string +lbl_1_data_418 = .data:0x00000418; // type:object size:0x8 data:string +lbl_1_data_420 = .data:0x00000420; // type:object size:0x8 data:string +lbl_1_data_428 = .data:0x00000428; // type:object size:0x8 data:string +lbl_1_data_430 = .data:0x00000430; // type:object size:0x8 data:string +lbl_1_data_438 = .data:0x00000438; // type:object size:0x18 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x4 data:4byte +lbl_1_data_454 = .data:0x00000454; // type:object size:0x2 data:2byte +lbl_1_data_456 = .data:0x00000456; // type:object size:0x2 data:2byte +lbl_1_data_458 = .data:0x00000458; // type:object size:0x2 data:2byte +lbl_1_data_45C = .data:0x0000045C; // type:object size:0xC +lbl_1_data_468 = .data:0x00000468; // type:object size:0x8 +lbl_1_data_470 = .data:0x00000470; // type:object size:0x20 +lbl_1_data_490 = .data:0x00000490; // type:object size:0x20 +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x1 data:byte +lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x14 +lbl_1_data_4C8 = .data:0x000004C8; // type:object size:0x6 +lbl_1_data_4CE = .data:0x000004CE; // type:object size:0xA +lbl_1_data_4D8 = .data:0x000004D8; // type:object size:0x2 data:2byte +lbl_1_data_4DA = .data:0x000004DA; // type:object size:0x2 data:2byte +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x2 data:2byte +lbl_1_data_4E0 = .data:0x000004E0; // type:object size:0x4 data:4byte +lbl_1_data_4E4 = .data:0x000004E4; // type:object size:0x2 data:2byte +lbl_1_data_4E6 = .data:0x000004E6; // type:object size:0xE +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x5 data:string +lbl_1_data_4F9 = .data:0x000004F9; // type:object size:0x6 data:string +lbl_1_data_4FF = .data:0x000004FF; // type:object size:0x9 +lbl_1_data_508 = .data:0x00000508; // type:object size:0xC +lbl_1_data_514 = .data:0x00000514; // type:object size:0x38 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x1C data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x1 data:byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0xC +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x20 +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x2 data:2byte +lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 data:2byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x2 data:2byte +lbl_1_bss_6E = .bss:0x0000006E; // type:object size:0x1 data:byte +lbl_1_bss_6F = .bss:0x0000006F; // type:object size:0x1 data:byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x1 data:byte +lbl_1_bss_7D = .bss:0x0000007D; // type:object size:0x1 data:byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0xA0 +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:4byte +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x2 data:2byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:4byte +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x8 +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x8 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x1 data:byte +lbl_1_bss_14E = .bss:0x0000014E; // type:object size:0x2 data:2byte +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x30 +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte +lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x4 data:4byte +lbl_1_bss_188 = .bss:0x00000188; // type:object size:0x4 data:4byte +lbl_1_bss_18C = .bss:0x0000018C; // type:object size:0x1 data:byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x3 diff --git a/config/GMPP01_00/rels/w04Dll/splits.txt b/config/GMPP01_00/rels/w04Dll/splits.txt new file mode 100644 index 00000000..d977e9ab --- /dev/null +++ b/config/GMPP01_00/rels/w04Dll/splits.txt @@ -0,0 +1,47 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w04Dll/main.c: + .text start:0x000000E0 end:0x000012FC + .rodata start:0x00000010 end:0x00000040 + .data start:0x00000000 end:0x00000298 + .bss start:0x00000000 end:0x00000038 + +REL/w04Dll/bridge.c: + .text start:0x000012FC end:0x000020EC + .rodata start:0x00000040 end:0x00000098 + .data start:0x00000298 end:0x000002D0 + .bss start:0x00000038 end:0x00000048 + +REL/w04Dll/boo_event.c: + .text start:0x000020EC end:0x00006024 + .rodata start:0x00000098 end:0x00000180 + .data start:0x000002D0 end:0x000003A8 + .bss start:0x00000048 end:0x00000100 + +REL/w04Dll/big_boo.c: + .text start:0x00006024 end:0x0000A0DC + .rodata start:0x00000180 end:0x000002C0 + .data start:0x000003A8 end:0x000004F0 + .bss start:0x00000100 end:0x00000288 + +REL/w04Dll/mg_item.c: + .text start:0x0000A0DC end:0x0000C784 + .rodata start:0x000002C0 end:0x000003A0 + .data start:0x000004F0 end:0x00000588 + .bss start:0x00000288 end:0x000002B0 + +REL/w04Dll/mg_coin.c: + .text start:0x0000C784 end:0x0000E9F0 + .rodata start:0x000003A0 end:0x00000428 + .data start:0x00000588 end:0x0000063F + .bss start:0x000002B0 end:0x00000328 diff --git a/config/GMPP01_00/rels/w04Dll/symbols.txt b/config/GMPP01_00/rels/w04Dll/symbols.txt new file mode 100644 index 00000000..44c0c8eb --- /dev/null +++ b/config/GMPP01_00/rels/w04Dll/symbols.txt @@ -0,0 +1,452 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x514 +BoardDestroy = .text:0x000005F4; // type:function size:0x15C +fn_1_750 = .text:0x00000750; // type:function size:0x44 +fn_1_794 = .text:0x00000794; // type:function size:0x4 +fn_1_798 = .text:0x00000798; // type:function size:0x64 +fn_1_7FC = .text:0x000007FC; // type:function size:0x134 +fn_1_930 = .text:0x00000930; // type:function size:0x24 +fn_1_954 = .text:0x00000954; // type:function size:0x4 +fn_1_958 = .text:0x00000958; // type:function size:0x3A0 +fn_1_CF8 = .text:0x00000CF8; // type:function size:0x38 +fn_1_D30 = .text:0x00000D30; // type:function size:0x80 +fn_1_DB0 = .text:0x00000DB0; // type:function size:0x28C +fn_1_103C = .text:0x0000103C; // type:function size:0xF4 +fn_1_1130 = .text:0x00001130; // type:function size:0x1CC +fn_1_12FC = .text:0x000012FC; // type:function size:0x2CC +fn_1_15C8 = .text:0x000015C8; // type:function size:0x50 +fn_1_1618 = .text:0x00001618; // type:function size:0x19C +fn_1_17B4 = .text:0x000017B4; // type:function size:0x168 +fn_1_191C = .text:0x0000191C; // type:function size:0x27C +fn_1_1B98 = .text:0x00001B98; // type:function size:0x94 +fn_1_1C2C = .text:0x00001C2C; // type:function size:0x234 +fn_1_1E60 = .text:0x00001E60; // type:function size:0x1A8 +fn_1_2008 = .text:0x00002008; // type:function size:0x3C +fn_1_2044 = .text:0x00002044; // type:function size:0x14 +fn_1_2058 = .text:0x00002058; // type:function size:0x94 +fn_1_20EC = .text:0x000020EC; // type:function size:0x7D0 +fn_1_28BC = .text:0x000028BC; // type:function size:0x2D0 +fn_1_2B8C = .text:0x00002B8C; // type:function size:0x84 +fn_1_2C10 = .text:0x00002C10; // type:function size:0x250 +fn_1_2E60 = .text:0x00002E60; // type:function size:0x88 +fn_1_2EE8 = .text:0x00002EE8; // type:function size:0x6C +fn_1_2F54 = .text:0x00002F54; // type:function size:0x68 +fn_1_2FBC = .text:0x00002FBC; // type:function size:0x20 +fn_1_2FDC = .text:0x00002FDC; // type:function size:0xC8 +fn_1_30A4 = .text:0x000030A4; // type:function size:0x834 +fn_1_38D8 = .text:0x000038D8; // type:function size:0x3C4 +fn_1_3C9C = .text:0x00003C9C; // type:function size:0x90C +fn_1_45A8 = .text:0x000045A8; // type:function size:0x88 +fn_1_4630 = .text:0x00004630; // type:function size:0x50 +fn_1_4680 = .text:0x00004680; // type:function size:0x1C8 +fn_1_4848 = .text:0x00004848; // type:function size:0x7D0 +fn_1_5018 = .text:0x00005018; // type:function size:0x288 +fn_1_52A0 = .text:0x000052A0; // type:function size:0x300 +fn_1_55A0 = .text:0x000055A0; // type:function size:0x14 +fn_1_55B4 = .text:0x000055B4; // type:function size:0x94 +fn_1_5648 = .text:0x00005648; // type:function size:0x1E0 +fn_1_5828 = .text:0x00005828; // type:function size:0x7C +fn_1_58A4 = .text:0x000058A4; // type:function size:0xDC +fn_1_5980 = .text:0x00005980; // type:function size:0x44 +fn_1_59C4 = .text:0x000059C4; // type:function size:0x68 +fn_1_5A2C = .text:0x00005A2C; // type:function size:0x5F8 +fn_1_6024 = .text:0x00006024; // type:function size:0x28C +fn_1_62B0 = .text:0x000062B0; // type:function size:0x628 +fn_1_68D8 = .text:0x000068D8; // type:function size:0x420 +fn_1_6CF8 = .text:0x00006CF8; // type:function size:0x608 +fn_1_7300 = .text:0x00007300; // type:function size:0x27C +fn_1_757C = .text:0x0000757C; // type:function size:0x5C +fn_1_75D8 = .text:0x000075D8; // type:function size:0x2B0 +fn_1_7888 = .text:0x00007888; // type:function size:0x11D8 +fn_1_8A60 = .text:0x00008A60; // type:function size:0xE24 +fn_1_9884 = .text:0x00009884; // type:function size:0x294 +fn_1_9B18 = .text:0x00009B18; // type:function size:0xA8 +fn_1_9BC0 = .text:0x00009BC0; // type:function size:0x3C +fn_1_9BFC = .text:0x00009BFC; // type:function size:0x290 +fn_1_9E8C = .text:0x00009E8C; // type:function size:0x14 +fn_1_9EBC = .text:0x00009EA0; // type:function size:0x94 +fn_1_9F34 = .text:0x00009F34; // type:function size:0x124 +fn_1_A058 = .text:0x0000A058; // type:function size:0x84 +fn_1_A0F8 = .text:0x0000A0DC; // type:function size:0xF8 +fn_1_A1F0 = .text:0x0000A1D4; // type:function size:0x52C +fn_1_A700 = .text:0x0000A700; // type:function size:0xCC +fn_1_A7CC = .text:0x0000A7CC; // type:function size:0x1294 +fn_1_BA7C = .text:0x0000BA60; // type:function size:0x84 +fn_1_BB00 = .text:0x0000BAE4; // type:function size:0x7BC +fn_1_C2BC = .text:0x0000C2A0; // type:function size:0xCC +fn_1_C36C = .text:0x0000C36C; // type:function size:0x418 +fn_1_C7A0 = .text:0x0000C784; // type:function size:0x34 +fn_1_C7D4 = .text:0x0000C7B8; // type:function size:0x7B8 +fn_1_CF70 = .text:0x0000CF70; // type:function size:0x120 +fn_1_D090 = .text:0x0000D090; // type:function size:0x30 +fn_1_D0C0 = .text:0x0000D0C0; // type:function size:0x98 +fn_1_D158 = .text:0x0000D158; // type:function size:0xBC +fn_1_D214 = .text:0x0000D214; // type:function size:0x74 +fn_1_D288 = .text:0x0000D288; // type:function size:0x2B0 +fn_1_D538 = .text:0x0000D538; // type:function size:0x154 +fn_1_D68C = .text:0x0000D68C; // type:function size:0x64 +fn_1_D6F0 = .text:0x0000D6F0; // type:function size:0x64 +fn_1_D754 = .text:0x0000D754; // type:function size:0x894 +fn_1_DFE8 = .text:0x0000DFE8; // type:function size:0x140 +fn_1_E128 = .text:0x0000E128; // type:function size:0x48 +fn_1_E170 = .text:0x0000E170; // type:function size:0x1E8 +fn_1_E358 = .text:0x0000E358; // type:function size:0x14C +fn_1_E4A4 = .text:0x0000E4A4; // type:function size:0x1EC +fn_1_E690 = .text:0x0000E690; // type:function size:0x1D4 +fn_1_E864 = .text:0x0000E864; // type:function size:0x18C +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0xC data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC data:4byte +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte +lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte +lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x8 +lbl_1_data_298 = .data:0x00000298; // type:object size:0x8 +lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0xC +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x24 +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x20 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x4 data:4byte +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 +lbl_1_data_334 = .data:0x00000334; // type:object size:0x5 data:string +lbl_1_data_339 = .data:0x00000339; // type:object size:0x5 data:string +lbl_1_data_33E = .data:0x0000033E; // type:object size:0x5 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0x5 data:string +lbl_1_data_348 = .data:0x00000348; // type:object size:0x10 +lbl_1_data_358 = .data:0x00000358; // type:object size:0x10 +lbl_1_data_368 = .data:0x00000368; // type:object size:0x8 data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0x12 data:string +lbl_1_data_382 = .data:0x00000382; // type:object size:0x11 data:string +lbl_1_data_393 = .data:0x00000393; // type:object size:0x15 +lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x8 data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x9 data:string +lbl_1_data_3B9 = .data:0x000003B9; // type:object size:0x6 data:string +lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x5 data:string +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x8 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x14 data:4byte +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x14 +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x20 +lbl_1_data_414 = .data:0x00000414; // type:object size:0x10 +lbl_1_data_424 = .data:0x00000424; // type:object size:0x30 data:2byte +lbl_1_data_454 = .data:0x00000454; // type:object size:0xB data:string +lbl_1_data_45F = .data:0x0000045F; // type:object size:0x2 data:string +lbl_1_data_461 = .data:0x00000461; // type:object size:0xC data:string +lbl_1_data_46D = .data:0x0000046D; // type:object size:0x1B +lbl_1_data_488 = .data:0x00000488; // type:object size:0x3 data:string +lbl_1_data_48B = .data:0x0000048B; // type:object size:0x11 +lbl_1_data_49C = .data:0x0000049C; // type:object size:0x54 +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x6 data:string +lbl_1_data_4F6 = .data:0x000004F6; // type:object size:0x6 data:string +lbl_1_data_4FC = .data:0x000004FC; // type:object size:0x6 data:string +lbl_1_data_502 = .data:0x00000502; // type:object size:0x8 data:string +lbl_1_data_50A = .data:0x0000050A; // type:object size:0x8 data:string +lbl_1_data_512 = .data:0x00000512; // type:object size:0xA +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 data:4byte +lbl_1_data_534 = .data:0x00000534; // type:object size:0xC +lbl_1_data_540 = .data:0x00000540; // type:object size:0x48 +lbl_1_data_588 = .data:0x00000588; // type:object size:0x4 data:4byte +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x5 data:string +lbl_1_data_591 = .data:0x00000591; // type:object size:0x5 data:string +lbl_1_data_596 = .data:0x00000596; // type:object size:0x5 data:string +lbl_1_data_59B = .data:0x0000059B; // type:object size:0x5 data:string +lbl_1_data_5A0 = .data:0x000005A0; // type:object size:0x5 data:string +lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x5 data:string +lbl_1_data_5AA = .data:0x000005AA; // type:object size:0x5 data:string +lbl_1_data_5AF = .data:0x000005AF; // type:object size:0x5 data:string +lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0x8 +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x24 data:4byte +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0x10 +lbl_1_data_5F0 = .data:0x000005F0; // type:object size:0x20 +lbl_1_data_610 = .data:0x00000610; // type:object size:0xE data:string +lbl_1_data_61E = .data:0x0000061E; // type:object size:0xE data:string +lbl_1_data_62C = .data:0x0000062C; // type:object size:0x10 +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x3 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x24 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x18 +lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 data:2byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2 data:2byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x2 data:2byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x30 +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x2 data:2byte +lbl_1_bss_B2 = .bss:0x000000B2; // type:object size:0x8 +lbl_1_bss_BA = .bss:0x000000BA; // type:object size:0x8 data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 data:2byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x10 +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x10 +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x10 +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x6 data:2byte +lbl_1_bss_FA = .bss:0x000000FA; // type:object size:0x6 data:2byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0xC +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x20 +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x6 +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 data:2byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0xD4 data:2byte +lbl_1_bss_210 = .bss:0x00000210; // type:object size:0x30 +lbl_1_bss_240 = .bss:0x00000240; // type:object size:0x30 +lbl_1_bss_270 = .bss:0x00000270; // type:object size:0x2 data:2byte +lbl_1_bss_272 = .bss:0x00000272; // type:object size:0x2 data:2byte +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x2 data:2byte +lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x4 data:4byte +lbl_1_bss_27C = .bss:0x0000027C; // type:object size:0x2 data:2byte +lbl_1_bss_27E = .bss:0x0000027E; // type:object size:0x2 data:2byte +lbl_1_bss_280 = .bss:0x00000280; // type:object size:0x2 data:2byte +lbl_1_bss_282 = .bss:0x00000282; // type:object size:0x6 data:2byte +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x4 data:4byte +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x8 data:4byte +lbl_1_bss_294 = .bss:0x00000294; // type:object size:0x4 data:float +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x6 +lbl_1_bss_29E = .bss:0x0000029E; // type:object size:0x8 +lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0x6 +lbl_1_bss_2AC = .bss:0x000002AC; // type:object size:0x2 data:2byte +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:4byte +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xE +lbl_1_bss_2C2 = .bss:0x000002C2; // type:object size:0xE +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x28 data:2byte +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x2 data:2byte +lbl_1_bss_2FA = .bss:0x000002FA; // type:object size:0x2 data:2byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0xC data:float +lbl_1_bss_314 = .bss:0x00000314; // type:object size:0x2 data:2byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x4 data:4byte +lbl_1_bss_31C = .bss:0x0000031C; // type:object size:0x4 data:4byte +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x4 data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0x2 data:2byte +lbl_1_bss_326 = .bss:0x00000326; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/w05Dll/splits.txt b/config/GMPP01_00/rels/w05Dll/splits.txt new file mode 100644 index 00000000..fc4cdcea --- /dev/null +++ b/config/GMPP01_00/rels/w05Dll/splits.txt @@ -0,0 +1,47 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w05Dll/main.c: + .text start:0x000000E0 end:0x000013D4 + .rodata start:0x00000010 end:0x00000048 + .data start:0x00000000 end:0x00000150 + .bss start:0x00000000 end:0x00000028 + +REL/w05Dll/hotel.c: + .text start:0x000013D4 end:0x00002B40 + .rodata start:0x00000048 end:0x00000090 + .data start:0x00000150 end:0x000001A8 + .bss start:0x00000028 end:0x00000030 + +REL/w05Dll/monkey.c: + .text start:0x00002B40 end:0x00003F74 + .rodata start:0x00000090 end:0x000000F8 + .data start:0x000001A8 end:0x00000200 + .bss start:0x00000030 end:0x00000058 + +REL/w05Dll/dolphin.c: + .text start:0x00003F74 end:0x00006B28 + .rodata start:0x000000F8 end:0x000001A8 + .data start:0x00000200 end:0x00000310 + .bss start:0x00000058 end:0x00000078 + +REL/w05Dll/mg_item.c: + .text start:0x00006B28 end:0x00009680 + .rodata start:0x000001A8 end:0x00000268 + .data start:0x00000310 end:0x00000450 + .bss start:0x00000078 end:0x000000B8 + +REL/w05Dll/mg_coin.c: + .text start:0x00009680 end:0x0000B644 + .rodata start:0x00000268 end:0x00000300 + .data start:0x00000450 end:0x000004C7 + .bss start:0x000000B8 end:0x00000108 diff --git a/config/GMPP01_00/rels/w05Dll/symbols.txt b/config/GMPP01_00/rels/w05Dll/symbols.txt new file mode 100644 index 00000000..faed8cbe --- /dev/null +++ b/config/GMPP01_00/rels/w05Dll/symbols.txt @@ -0,0 +1,356 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x4D8 +BoardDestroy = .text:0x000005B8; // type:function size:0x18C +fn_1_744 = .text:0x00000744; // type:function size:0x44 +fn_1_788 = .text:0x00000788; // type:function size:0x4 +fn_1_78C = .text:0x0000078C; // type:function size:0xA0 +fn_1_82C = .text:0x0000082C; // type:function size:0x100 +fn_1_92C = .text:0x0000092C; // type:function size:0x24 +fn_1_950 = .text:0x00000950; // type:function size:0x4 +fn_1_954 = .text:0x00000954; // type:function size:0x3F8 +fn_1_D4C = .text:0x00000D4C; // type:function size:0x38 +fn_1_D84 = .text:0x00000D84; // type:function size:0x80 +fn_1_E04 = .text:0x00000E04; // type:function size:0x3C +fn_1_E40 = .text:0x00000E40; // type:function size:0x2D4 +fn_1_1114 = .text:0x00001114; // type:function size:0xF4 +fn_1_1208 = .text:0x00001208; // type:function size:0x1CC +fn_1_13D4 = .text:0x000013D4; // type:function size:0xFC +fn_1_14D0 = .text:0x000014D0; // type:function size:0x2C +fn_1_14FC = .text:0x000014FC; // type:function size:0x60 +fn_1_155C = .text:0x0000155C; // type:function size:0x8E8 +fn_1_1E44 = .text:0x00001E44; // type:function size:0xCFC +fn_1_2B40 = .text:0x00002B40; // type:function size:0x13C +fn_1_2C7C = .text:0x00002C7C; // type:function size:0x3C8 +fn_1_3044 = .text:0x00003044; // type:function size:0x3EC +fn_1_3430 = .text:0x00003430; // type:function size:0xE4 +fn_1_3514 = .text:0x00003514; // type:function size:0x874 +fn_1_3D88 = .text:0x00003D88; // type:function size:0x104 +fn_1_3E8C = .text:0x00003E8C; // type:function size:0xE8 +fn_1_3F74 = .text:0x00003F74; // type:function size:0x64 +fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x5C +fn_1_4034 = .text:0x00004034; // type:function size:0xE80 +fn_1_4EB4 = .text:0x00004EB4; // type:function size:0x794 +fn_1_5648 = .text:0x00005648; // type:function size:0x14C +fn_1_5794 = .text:0x00005794; // type:function size:0xB18 +fn_1_62AC = .text:0x000062AC; // type:function size:0x210 +fn_1_64BC = .text:0x000064BC; // type:function size:0x12C +fn_1_65E8 = .text:0x000065E8; // type:function size:0x88 +fn_1_6670 = .text:0x00006670; // type:function size:0x50 +fn_1_66C0 = .text:0x000066C0; // type:function size:0x254 +fn_1_6914 = .text:0x00006914; // type:function size:0x214 +fn_1_6B28 = .text:0x00006B28; // type:function size:0x54 +fn_1_6B7C = .text:0x00006B7C; // type:function size:0x708 +fn_1_7284 = .text:0x00007284; // type:function size:0x60 +fn_1_72E4 = .text:0x000072E4; // type:function size:0x30 +fn_1_7314 = .text:0x00007314; // type:function size:0xAC +fn_1_73C0 = .text:0x000073C0; // type:function size:0x40 +fn_1_7400 = .text:0x00007400; // type:function size:0xD0 +fn_1_74D0 = .text:0x000074D0; // type:function size:0x2E0 +fn_1_77B0 = .text:0x000077B0; // type:function size:0xF0 +fn_1_78A0 = .text:0x000078A0; // type:function size:0x88 +fn_1_7928 = .text:0x00007928; // type:function size:0x74 +fn_1_799C = .text:0x0000799C; // type:function size:0x4B0 +fn_1_7E4C = .text:0x00007E4C; // type:function size:0x48 +fn_1_7E94 = .text:0x00007E94; // type:function size:0x70 +fn_1_7F04 = .text:0x00007F04; // type:function size:0x1D4 +fn_1_80D8 = .text:0x000080D8; // type:function size:0x338 +fn_1_8410 = .text:0x00008410; // type:function size:0xFC +fn_1_850C = .text:0x0000850C; // type:function size:0x15C +fn_1_8668 = .text:0x00008668; // type:function size:0x130 +fn_1_8798 = .text:0x00008798; // type:function size:0xEC +fn_1_8884 = .text:0x00008884; // type:function size:0x34 +fn_1_88B8 = .text:0x000088B8; // type:function size:0xB4 +fn_1_896C = .text:0x0000896C; // type:function size:0x870 +fn_1_91DC = .text:0x000091DC; // type:function size:0x8C +fn_1_9268 = .text:0x00009268; // type:function size:0x418 +fn_1_9680 = .text:0x00009680; // type:function size:0x34 +fn_1_96B4 = .text:0x000096B4; // type:function size:0xAC +fn_1_9760 = .text:0x00009760; // type:function size:0x4C +fn_1_97AC = .text:0x000097AC; // type:function size:0x2BC +fn_1_9A68 = .text:0x00009A68; // type:function size:0x58 +fn_1_9AC0 = .text:0x00009AC0; // type:function size:0x30 +fn_1_9AF0 = .text:0x00009AF0; // type:function size:0x84 +fn_1_9B74 = .text:0x00009B74; // type:function size:0xB0 +fn_1_9C24 = .text:0x00009C24; // type:function size:0x74 +fn_1_9C98 = .text:0x00009C98; // type:function size:0x74 +fn_1_9D0C = .text:0x00009D0C; // type:function size:0x218 +fn_1_9F24 = .text:0x00009F24; // type:function size:0x300 +fn_1_A224 = .text:0x0000A224; // type:function size:0x2D4 +fn_1_A4F8 = .text:0x0000A4F8; // type:function size:0xB8 +fn_1_A5B0 = .text:0x0000A5B0; // type:function size:0x3E0 +fn_1_A990 = .text:0x0000A990; // type:function size:0x194 +fn_1_AB24 = .text:0x0000AB24; // type:function size:0x6F0 +fn_1_B214 = .text:0x0000B214; // type:function size:0x9C +fn_1_B2B0 = .text:0x0000B2B0; // type:function size:0x114 +fn_1_B3C4 = .text:0x0000B3C4; // type:function size:0x280 +_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_38 = .rodata:0x00000038; // type:object size:0x8 data:double +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_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:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:4byte +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x2 data:2byte +lbl_1_data_11A = .data:0x0000011A; // type:object size:0x2 data:2byte +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x2 data:2byte +lbl_1_data_11E = .data:0x0000011E; // type:object size:0x2 data:2byte +lbl_1_data_120 = .data:0x00000120; // type:object size:0x2 data:2byte +lbl_1_data_124 = .data:0x00000124; // type:object size:0x20 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x14 +lbl_1_data_164 = .data:0x00000164; // type:object size:0x2 data:2byte +lbl_1_data_166 = .data:0x00000166; // type:object size:0xA +lbl_1_data_170 = .data:0x00000170; // type:object size:0x10 +lbl_1_data_180 = .data:0x00000180; // type:object size:0x4 data:4byte +lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x10 +lbl_1_data_198 = .data:0x00000198; // type:object size:0x8 +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x8 data:string +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0xC +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x7 data:string +lbl_1_data_1BB = .data:0x000001BB; // type:object size:0x9 +lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x8 data:4byte +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0xC +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x8 data:string +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x8 data:string +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xA data:string +lbl_1_data_1F2 = .data:0x000001F2; // type:object size:0xE +lbl_1_data_200 = .data:0x00000200; // type:object size:0x8 data:string +lbl_1_data_208 = .data:0x00000208; // type:object size:0x8 data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0x6 data:string +lbl_1_data_216 = .data:0x00000216; // type:object size:0x6 data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x7 data:string +lbl_1_data_223 = .data:0x00000223; // type:object size:0x9 +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x18 +lbl_1_data_244 = .data:0x00000244; // type:object size:0x18 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x48 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x48 +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x8 +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x1C +lbl_1_data_310 = .data:0x00000310; // type:object size:0x8 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x7 data:string +lbl_1_data_31F = .data:0x0000031F; // type:object size:0x7 data:string +lbl_1_data_326 = .data:0x00000326; // type:object size:0xA +lbl_1_data_330 = .data:0x00000330; // type:object size:0xC +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x7 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0xD data:string +lbl_1_data_350 = .data:0x00000350; // type:object size:0xF0 +lbl_1_data_440 = .data:0x00000440; // type:object size:0x10 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x6 data:string +lbl_1_data_456 = .data:0x00000456; // type:object size:0x7 data:string +lbl_1_data_45D = .data:0x0000045D; // type:object size:0x7 data:string +lbl_1_data_464 = .data:0x00000464; // type:object size:0xC +lbl_1_data_470 = .data:0x00000470; // type:object size:0xC +lbl_1_data_47C = .data:0x0000047C; // type:object size:0xC +lbl_1_data_488 = .data:0x00000488; // type:object size:0x3 data:string +lbl_1_data_48B = .data:0x0000048B; // type:object size:0x4 data:string +lbl_1_data_48F = .data:0x0000048F; // type:object size:0x5 +lbl_1_data_494 = .data:0x00000494; // type:object size:0xC +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xD data:string +lbl_1_data_4AD = .data:0x000004AD; // type:object size:0x5 data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x6 +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0xC +lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0x3 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x14 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0xC data:float +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x2 data:2byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x2 data:2byte +lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x2 data:2byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x2 data:2byte +lbl_1_bss_4E = .bss:0x0000004E; // type:object size:0xA data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0xC +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x6 +lbl_1_bss_72 = .bss:0x00000072; // type:object size:0x6 data:2byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0xC +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte +lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x2 data:2byte +lbl_1_bss_A2 = .bss:0x000000A2; // type:object size:0x2 data:2byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x6 +lbl_1_bss_AA = .bss:0x000000AA; // type:object size:0x6 +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x6 +lbl_1_bss_B6 = .bss:0x000000B6; // type:object size:0x2 data:2byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 data:2byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x2 data:2byte +lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x2 data:2byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x2 data:2byte +lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0x28 data:2byte +lbl_1_bss_FE = .bss:0x000000FE; // type:object size:0x2 data:2byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x2 data:2byte +lbl_1_bss_102 = .bss:0x00000102; // type:object size:0x6 data:2byte diff --git a/config/GMPP01_00/rels/w06Dll/splits.txt b/config/GMPP01_00/rels/w06Dll/splits.txt new file mode 100644 index 00000000..eee27cef --- /dev/null +++ b/config/GMPP01_00/rels/w06Dll/splits.txt @@ -0,0 +1,47 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w06Dll/main.c: + .text start:0x000000E0 end:0x00000D70 + .rodata start:0x00000010 end:0x00000040 + .data start:0x00000000 end:0x000001A8 + .bss start:0x00000000 end:0x00000018 + +REL/w06Dll/mg_item.c: + .text start:0x00000D70 end:0x00004878 + .rodata start:0x00000040 end:0x000000F0 + .data start:0x000001A8 end:0x000001D8 + .bss start:0x00000018 end:0x00000048 + +REL/w06Dll/mg_coin.c: + .text start:0x00004878 end:0x00006EF0 + .rodata start:0x000000F0 end:0x000001B0 + .data start:0x000001D8 end:0x00000208 + .bss start:0x00000048 end:0x00000090 + +REL/w06Dll/fire.c: + .text start:0x00006EF0 end:0x00007BD0 + .rodata start:0x000001B0 end:0x000001E8 + .data start:0x00000208 end:0x00000418 + .bss start:0x00000090 end:0x000000C8 + +REL/w06Dll/bridge.c: + .text start:0x00007BD0 end:0x00008F40 + .rodata start:0x000001E8 end:0x00000228 + .data start:0x00000418 end:0x00000498 + .bss start:0x000000C8 end:0x000000E8 + +REL/w06Dll/bowser.c: + .text start:0x00008F40 end:0x0000D0C4 + .rodata start:0x00000228 end:0x000002D8 + .data start:0x00000498 end:0x00000541 + .bss start:0x000000E8 end:0x000000F5 diff --git a/config/GMPP01_00/rels/w06Dll/symbols.txt b/config/GMPP01_00/rels/w06Dll/symbols.txt new file mode 100644 index 00000000..43936054 --- /dev/null +++ b/config/GMPP01_00/rels/w06Dll/symbols.txt @@ -0,0 +1,373 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x4C4 +BoardDestroy = .text:0x000005A4; // type:function size:0x18C +fn_1_730 = .text:0x00000730; // type:function size:0x6C +fn_1_79C = .text:0x0000079C; // type:function size:0x20 +fn_1_7BC = .text:0x000007BC; // type:function size:0x144 +fn_1_900 = .text:0x00000900; // type:function size:0x84 +fn_1_984 = .text:0x00000984; // type:function size:0x3C +fn_1_9C0 = .text:0x000009C0; // type:function size:0x168 +fn_1_B28 = .text:0x00000B28; // type:function size:0x34 +fn_1_B5C = .text:0x00000B5C; // type:function size:0x214 +fn_1_D70 = .text:0x00000D70; // type:function size:0x1FC +fn_1_F6C = .text:0x00000F6C; // type:function size:0xE8 +fn_1_1054 = .text:0x00001054; // type:function size:0x90 +fn_1_10E4 = .text:0x000010E4; // type:function size:0x64 +fn_1_1148 = .text:0x00001148; // type:function size:0x68 +fn_1_11B0 = .text:0x000011B0; // type:function size:0xF0 +fn_1_12A0 = .text:0x000012A0; // type:function size:0x32C +fn_1_15CC = .text:0x000015CC; // type:function size:0x614 +fn_1_1BE0 = .text:0x00001BE0; // type:function size:0xD0 +fn_1_1CB0 = .text:0x00001CB0; // type:function size:0xAC +fn_1_1D5C = .text:0x00001D5C; // type:function size:0xD4 +fn_1_1E30 = .text:0x00001E30; // type:function size:0xD8 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x140 +fn_1_2048 = .text:0x00002048; // type:function size:0x84 +fn_1_20CC = .text:0x000020CC; // type:function size:0xA8 +fn_1_2174 = .text:0x00002174; // type:function size:0x58 +fn_1_21CC = .text:0x000021CC; // type:function size:0x54 +fn_1_2220 = .text:0x00002220; // type:function size:0x21C +fn_1_243C = .text:0x0000243C; // type:function size:0x5E0 +fn_1_2A1C = .text:0x00002A1C; // type:function size:0x144 +fn_1_2B60 = .text:0x00002B60; // type:function size:0xB8 +fn_1_2C18 = .text:0x00002C18; // type:function size:0x178 +fn_1_2D90 = .text:0x00002D90; // type:function size:0x40 +fn_1_2DD0 = .text:0x00002DD0; // type:function size:0x48 +fn_1_2E18 = .text:0x00002E18; // type:function size:0xDC +fn_1_2EF4 = .text:0x00002EF4; // type:function size:0x57C +fn_1_3470 = .text:0x00003470; // type:function size:0xF0 +fn_1_3560 = .text:0x00003560; // type:function size:0x5C +fn_1_35BC = .text:0x000035BC; // type:function size:0x48 +fn_1_3604 = .text:0x00003604; // type:function size:0x94 +fn_1_3698 = .text:0x00003698; // type:function size:0x2DC +fn_1_3974 = .text:0x00003974; // type:function size:0x6FC +fn_1_4070 = .text:0x00004070; // type:function size:0xB4 +fn_1_4124 = .text:0x00004124; // type:function size:0x70 +fn_1_4194 = .text:0x00004194; // type:function size:0x118 +fn_1_42AC = .text:0x000042AC; // type:function size:0x130 +fn_1_43DC = .text:0x000043DC; // type:function size:0x84 +fn_1_4460 = .text:0x00004460; // type:function size:0x418 +fn_1_4878 = .text:0x00004878; // type:function size:0x198 +fn_1_4A10 = .text:0x00004A10; // type:function size:0x50 +fn_1_4A60 = .text:0x00004A60; // type:function size:0xA0 +fn_1_4B00 = .text:0x00004B00; // type:function size:0xA0 +fn_1_4BA0 = .text:0x00004BA0; // type:function size:0x58 +fn_1_4BF8 = .text:0x00004BF8; // type:function size:0x3C0 +fn_1_4FB8 = .text:0x00004FB8; // type:function size:0x1E4 +fn_1_519C = .text:0x0000519C; // type:function size:0x204 +fn_1_53A0 = .text:0x000053A0; // type:function size:0xF0 +fn_1_5490 = .text:0x00005490; // type:function size:0x23C +fn_1_56CC = .text:0x000056CC; // type:function size:0x110 +fn_1_57DC = .text:0x000057DC; // type:function size:0xA0 +fn_1_587C = .text:0x0000587C; // type:function size:0x80 +fn_1_58FC = .text:0x000058FC; // type:function size:0x6C +fn_1_5968 = .text:0x00005968; // type:function size:0x68 +fn_1_59D0 = .text:0x000059D0; // type:function size:0x13C +fn_1_5B0C = .text:0x00005B0C; // type:function size:0x48 +fn_1_5B54 = .text:0x00005B54; // type:function size:0x190 +fn_1_5CE4 = .text:0x00005CE4; // type:function size:0x1D8 +fn_1_5EBC = .text:0x00005EBC; // type:function size:0x40 +fn_1_5EFC = .text:0x00005EFC; // type:function size:0x5C +fn_1_5F58 = .text:0x00005F58; // type:function size:0x114 +fn_1_606C = .text:0x0000606C; // type:function size:0x9A0 +fn_1_6A0C = .text:0x00006A0C; // type:function size:0x240 +fn_1_6C4C = .text:0x00006C4C; // type:function size:0x244 +fn_1_6E90 = .text:0x00006E90; // type:function size:0x60 +fn_1_6EF0 = .text:0x00006EF0; // type:function size:0x90 +fn_1_6F80 = .text:0x00006F80; // type:function size:0x290 +fn_1_7210 = .text:0x00007210; // type:function size:0x94 +fn_1_72A4 = .text:0x000072A4; // type:function size:0x28 +fn_1_72CC = .text:0x000072CC; // type:function size:0x120 +fn_1_73EC = .text:0x000073EC; // type:function size:0xD0 +fn_1_74BC = .text:0x000074BC; // type:function size:0xB8 +fn_1_7574 = .text:0x00007574; // type:function size:0x120 +fn_1_7694 = .text:0x00007694; // type:function size:0xEC +fn_1_7780 = .text:0x00007780; // type:function size:0x1E4 +fn_1_7964 = .text:0x00007964; // type:function size:0x26C +fn_1_7BB0 = .text:0x00007BD0; // type:function size:0x38C +fn_1_7F3C = .text:0x00007F5C; // type:function size:0x68 +fn_1_7FA4 = .text:0x00007FC4; // type:function size:0x2C0 +fn_1_8264 = .text:0x00008284; // type:function size:0xBC +fn_1_8340 = .text:0x00008340; // type:function size:0x100 +fn_1_8440 = .text:0x00008440; // type:function size:0x70 +fn_1_84B0 = .text:0x000084B0; // type:function size:0x5C8 +fn_1_8A78 = .text:0x00008A78; // type:function size:0x4C8 +fn_1_8F20 = .text:0x00008F40; // type:function size:0x2B8 +fn_1_91D8 = .text:0x000091F8; // type:function size:0xBC +fn_1_9294 = .text:0x000092B4; // type:function size:0x44 +fn_1_92D8 = .text:0x000092F8; // type:function size:0xF0 +fn_1_93E8 = .text:0x000093E8; // type:function size:0x10C +fn_1_94F4 = .text:0x000094F4; // type:function size:0xD8 +fn_1_95CC = .text:0x000095CC; // type:function size:0x8B0 +fn_1_9E7C = .text:0x00009E7C; // type:function size:0x5AC +fn_1_A428 = .text:0x0000A428; // type:function size:0x744 +fn_1_AB6C = .text:0x0000AB6C; // type:function size:0x730 +fn_1_B29C = .text:0x0000B29C; // type:function size:0x424 +fn_1_B6C0 = .text:0x0000B6C0; // type:function size:0x240 +fn_1_B900 = .text:0x0000B900; // type:function size:0x230 +fn_1_BB30 = .text:0x0000BB30; // type:function size:0x1F8 +fn_1_BD28 = .text:0x0000BD28; // type:function size:0x3C +fn_1_BD64 = .text:0x0000BD64; // type:function size:0x48 +fn_1_BDAC = .text:0x0000BDAC; // type:function size:0x37C +fn_1_C108 = .text:0x0000C128; // type:function size:0x1AC +fn_1_C2B4 = .text:0x0000C2D4; // type:function size:0x158 +fn_1_C42C = .text:0x0000C42C; // type:function size:0x5B0 +fn_1_C9DC = .text:0x0000C9DC; // type:function size:0xD0 +fn_1_CAAC = .text:0x0000CAAC; // type:function size:0x40 +fn_1_CAEC = .text:0x0000CAEC; // type:function size:0x1C4 +fn_1_CC90 = .text:0x0000CCB0; // type:function size:0x7C +fn_1_CD0C = .text:0x0000CD2C; // type:function size:0x398 +_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:0x8 data:4byte +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x1 data:byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x1 data:byte +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x6 data:2byte +lbl_1_rodata_9A = .rodata:0x0000009A; // type:object size:0x1 data:byte +lbl_1_rodata_9E = .rodata:0x0000009E; // type:object size:0x6 data:2byte +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x5 +lbl_1_rodata_F5 = .rodata:0x000000F5; // type:object size:0x7 +lbl_1_rodata_FC = .rodata:0x000000FC; // 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:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0xC data:4byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0xF0 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte +lbl_1_data_F2 = .data:0x000000F2; // type:object size:0x2 data:2byte +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x2 data:2byte +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0x2 data:2byte +lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x8 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x8 +lbl_1_data_108 = .data:0x00000108; // type:object size:0xA0 +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x2 data:2byte +lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x1 data:byte +lbl_1_data_1AD = .data:0x000001AD; // type:object size:0x3 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2 data:2byte +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0xC +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x5 data:string +lbl_1_data_1C5 = .data:0x000001C5; // type:object size:0x13 +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte +lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x2 data:2byte +lbl_1_data_1DE = .data:0x000001DE; // type:object size:0x6 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x20 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x1 data:byte +lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x2 data:2byte +lbl_1_data_230 = .data:0x00000230; // type:object size:0x38 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x5 data:string +lbl_1_data_26D = .data:0x0000026D; // type:object size:0xE +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x4 +lbl_1_data_27F = .data:0x0000027F; // type:object size:0x8 +lbl_1_data_287 = .data:0x00000287; // type:object size:0x12 data:string +lbl_1_data_299 = .data:0x00000299; // type:object size:0x11 data:string +lbl_1_data_2AA = .data:0x000002AA; // type:object size:0x18 data:string +lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x17 data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x16 data:string +lbl_1_data_2EF = .data:0x000002EF; // type:object size:0x10 data:string +lbl_1_data_2FF = .data:0x000002FF; // type:object size:0x10 data:string +lbl_1_data_30F = .data:0x0000030F; // type:object size:0x11 data:string +lbl_1_data_320 = .data:0x00000320; // type:object size:0x15 data:string +lbl_1_data_335 = .data:0x00000335; // type:object size:0x15 data:string +lbl_1_data_34A = .data:0x0000034A; // type:object size:0x10 data:string +lbl_1_data_35A = .data:0x0000035A; // type:object size:0x13 data:string +lbl_1_data_36D = .data:0x0000036D; // type:object size:0x13 data:string +lbl_1_data_380 = .data:0x00000380; // type:object size:0x98 +lbl_1_data_418 = .data:0x00000418; // type:object size:0x2 data:2byte +lbl_1_data_41C = .data:0x0000041C; // type:object size:0x18 +lbl_1_data_434 = .data:0x00000434; // type:object size:0x18 +lbl_1_data_44C = .data:0x0000044C; // type:object size:0xC +lbl_1_data_458 = .data:0x00000458; // type:object size:0x20 +lbl_1_data_478 = .data:0x00000478; // type:object size:0x20 +lbl_1_data_498 = .data:0x00000498; // type:object size:0x2 data:2byte +lbl_1_data_49A = .data:0x0000049A; // type:object size:0x2 data:2byte +lbl_1_data_49C = .data:0x0000049C; // type:object size:0x2 data:2byte +lbl_1_data_49E = .data:0x0000049E; // type:object size:0x2 data:2byte +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x2 data:2byte +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x2 data:2byte +lbl_1_data_4A4 = .data:0x000004A4; // type:object size:0x8 +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x20 +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x20 +lbl_1_data_4EC = .data:0x000004EC; // type:object size:0x24 +lbl_1_data_510 = .data:0x00000510; // type:object size:0x20 +lbl_1_data_530 = .data:0x00000530; // type:object size:0x6 data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x1 data:byte +lbl_1_bss_33 = .bss:0x00000033; // type:object size:0x1 data:byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x6 +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:2byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1 data:byte +lbl_1_bss_59 = .bss:0x00000059; // type:object size:0x1 data:byte +lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x1 data:byte +lbl_1_bss_5B = .bss:0x0000005B; // type:object size:0x31 +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x28 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x4 +lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x1 data:byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x6 +lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0xC +lbl_1_bss_E2 = .bss:0x000000E2; // type:object size:0x2 data:2byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 data:2byte +lbl_1_bss_E6 = .bss:0x000000E6; // type:object size:0x1 data:byte +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 data:4byte +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x4 data:4byte +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x4 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x1 data:byte diff --git a/config/GMPP01_00/rels/w10Dll/splits.txt b/config/GMPP01_00/rels/w10Dll/splits.txt new file mode 100644 index 00000000..c6adc1ab --- /dev/null +++ b/config/GMPP01_00/rels/w10Dll/splits.txt @@ -0,0 +1,33 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w10Dll/main.c: + .text start:0x000000E0 end:0x00000AEC + .rodata start:0x00000010 end:0x00000038 + .data start:0x00000000 end:0x00000078 + .bss start:0x00000000 end:0x00000018 + +REL/w10Dll/host.c: + .text start:0x00000AEC end:0x00000D2C + .rodata start:0x00000038 end:0x00000048 + .data start:0x00000078 end:0x00000098 + .bss start:0x00000018 end:0x00000020 + +REL/w10Dll/scene.c: + .text start:0x00000D2C end:0x00001984 + .rodata start:0x00000048 end:0x00000058 + +REL/w10Dll/tutorial.c: + .text start:0x00001984 end:0x0000206C + .rodata start:0x00000058 end:0x00000070 + .data start:0x00000098 end:0x000002D4 + .bss start:0x00000020 end:0x00000038 diff --git a/config/GMPP01_00/rels/w10Dll/symbols.txt b/config/GMPP01_00/rels/w10Dll/symbols.txt new file mode 100644 index 00000000..f10220e4 --- /dev/null +++ b/config/GMPP01_00/rels/w10Dll/symbols.txt @@ -0,0 +1,116 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x5F8 +BoardDestroy = .text:0x000006D8; // type:function size:0x1E8 +LightSetHook = .text:0x000008C0; // type:function size:0x44 scope:local +LightResetHook = .text:0x00000904; // type:function size:0x4 scope:local +LandEvent = .text:0x00000908; // type:function size:0x4 scope:local +WalkEvent = .text:0x0000090C; // type:function size:0x8 scope:local +fn_1_914 = .text:0x00000914; // type:function size:0x4 +fn_1_918 = .text:0x00000918; // type:function size:0x4 +WalkMiniEvent = .text:0x0000091C; // type:function size:0x4 scope:local +fn_1_920 = .text:0x00000920; // type:function size:0x1CC +HostCreate = .text:0x00000AEC; // type:function size:0xB4 +HostWinExec = .text:0x00000BA0; // type:function size:0x70 +HostPosSet = .text:0x00000C10; // type:function size:0x10 +UpdateHost = .text:0x00000C20; // type:function size:0x10C scope:local +TutorialStartExec = .text:0x00000D2C; // type:function size:0x28 +TutorialPreRollExec = .text:0x00000D54; // type:function size:0x28 +TutorialOrderExec = .text:0x00000D7C; // type:function size:0x28 +TutorialP1StartExec = .text:0x00000DA4; // type:function size:0x28 +TutorialP2StartExec = .text:0x00000DCC; // type:function size:0x28 +TutorialP3StartExec = .text:0x00000DF4; // type:function size:0x28 +TutorialP4StartExec = .text:0x00000E1C; // type:function size:0x28 +TutorialGameStartExec = .text:0x00000E44; // type:function size:0x50 +TutorialRollExec = .text:0x00000E94; // type:function size:0x28 +TutorialMoveExec = .text:0x00000EBC; // type:function size:0x28 +TutorialLandExec = .text:0x00000EE4; // type:function size:0x4 +TutorialLandBlueExec = .text:0x00000EE8; // type:function size:0x48 +TutorialLandRedExec = .text:0x00000F30; // type:function size:0x3C +TutorialLandHappenExec = .text:0x00000F6C; // type:function size:0x4C +TutorialLandFortuneExec = .text:0x00000FB8; // type:function size:0x58 +TutorialLandBowserExec = .text:0x00001010; // type:function size:0x4C +TutorialLandMushroomExec = .text:0x0000105C; // type:function size:0x3C +TutorialMushroomMegaExec = .text:0x00001098; // type:function size:0x28 +TutorialMushroomMiniExec = .text:0x000010C0; // type:function size:0x38 +TutorialLandBattleExec = .text:0x000010F8; // type:function size:0x3C +TutorialLandWarpExec = .text:0x00001134; // type:function size:0x44 +TutorialWarpDecideExec = .text:0x00001178; // type:function size:0x28 +TutorialBlockStarExec = .text:0x000011A0; // type:function size:0x4C +TutorialBlockCoinExec = .text:0x000011EC; // type:function size:0x54 +TutorialMiniMegaExec = .text:0x00001240; // type:function size:0x38 +TutorialMiniUseExec = .text:0x00001278; // type:function size:0x28 +TutorialMiniStopExec = .text:0x000012A0; // type:function size:0x3C +TutorialMegaUseExec = .text:0x000012DC; // type:function size:0x28 +TutorialMegaDiceExec = .text:0x00001304; // type:function size:0x28 +TutorialMegaStompExec = .text:0x0000132C; // type:function size:0x28 +TutorialMegaEventExec = .text:0x00001354; // type:function size:0x28 +TutorialMegaStopExec = .text:0x0000137C; // type:function size:0x28 +TutorialEndExec = .text:0x000013A4; // type:function size:0x3C8 +TutorialMGStatusExec = .text:0x0000176C; // type:function size:0x30 +TutorialMG4PExec = .text:0x0000179C; // type:function size:0x58 +TutorialMG2Vs2Exec = .text:0x000017F4; // type:function size:0x40 +TutorialMG1Vs3Exec = .text:0x00001834; // type:function size:0x88 +TutorialMG1Vs3AltExec = .text:0x000018BC; // type:function size:0x4C +TutorialShopExec = .text:0x00001908; // type:function size:0x28 +TutorialLotteryExec = .text:0x00001930; // type:function size:0x28 +TutorialBooHouseExec = .text:0x00001958; // type:function size:0x28 +TutorialNullExec = .text:0x00001980; // type:function size:0x4 +CloseTutorial = .text:0x00001984; // type:function size:0x128 scope:local +TutorialHookExec = .text:0x00001AAC; // type:function size:0x2BC +TutorialSprCreate = .text:0x00001D68; // type:function size:0x84 +TutorialSprKill = .text:0x00001DEC; // type:function size:0x50 +TutorialSpaceShow = .text:0x00001E3C; // type:function size:0x174 +TutorialSpaceHide = .text:0x00001FB0; // type:function size:0xBC +_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 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_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +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:0x8 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +mapObjTbl = .data:0x00000000; // type:object size:0x28 scope:local data:float +bgMdl = .data:0x00000028; // type:object size:0x2 scope:local data:2byte +fgMdl = .data:0x0000002A; // type:object size:0x2 scope:local data:2byte +boardStarHostMdl = .data:0x0000002C; // type:object size:0x2 data:2byte +boardShopHostMdl = .data:0x0000002E; // type:object size:0x2 data:2byte +boardLotteryHostMdl = .data:0x00000030; // type:object size:0x2 data:2byte +boardBooHouseHostMdl = .data:0x00000032; // type:object size:0x2 data:2byte +charMotDirTbl = .data:0x00000034; // type:object size:0x20 scope:local data:4byte +starHostMot = .data:0x00000054; // type:object size:0x8 scope:local +shopHostMot = .data:0x0000005C; // type:object size:0x8 scope:local +lotteryHostMot = .data:0x00000064; // type:object size:0x8 scope:local +booHouseHostMot = .data:0x0000006C; // type:object size:0x8 scope:local +hostMot = .data:0x00000078; // type:object size:0x8 scope:local +hostPosTbl = .data:0x00000080; // type:object size:0x18 scope:local data:float +lbl_1_data_98 = .data:0x00000098; // type:object size:0x2D scope:local data:string +rollDataTbl = .data:0x000000C6; // type:object size:0x42 scope:local +sceneTbl = .data:0x00000108; // type:object size:0x150 scope:local +lbl_1_data_258 = .data:0x00000258; // type:object size:0x50 scope:local data:string +tutorialSprTbl = .data:0x000002A8; // type:object size:0x2C scope:local +boardWork = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +motTbl = .bss:0x00000008; // type:object size:0x4 scope:local data:4byte +tutorialDoneF = .bss:0x0000000C; // type:object size:0x2 data:2byte +tutorialExitWin = .bss:0x0000000E; // type:object size:0x2 data:2byte +boardMapObjMdl = .bss:0x00000010; // type:object size:0x2 data:2byte +hostProc = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +hostPos = .bss:0x0000001C; // type:object size:0x2 scope:local data:2byte +hostMdl = .bss:0x0000001E; // type:object size:0x2 scope:local data:2byte +sprCurr = .bss:0x00000020; // type:object size:0x2 scope:local data:2byte +sprList = .bss:0x00000022; // type:object size:0x16 scope:local diff --git a/config/GMPP01_00/rels/w20Dll/splits.txt b/config/GMPP01_00/rels/w20Dll/splits.txt new file mode 100644 index 00000000..9df8ed45 --- /dev/null +++ b/config/GMPP01_00/rels/w20Dll/splits.txt @@ -0,0 +1,17 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w20Dll/main.c: + .text start:0x000000E0 end:0x00000678 + .rodata start:0x00000010 end:0x00000030 + .data start:0x00000000 end:0x00000034 + .bss start:0x00000000 end:0x0000000E diff --git a/config/GMPP01_00/rels/w20Dll/symbols.txt b/config/GMPP01_00/rels/w20Dll/symbols.txt new file mode 100644 index 00000000..0e84011e --- /dev/null +++ b/config/GMPP01_00/rels/w20Dll/symbols.txt @@ -0,0 +1,33 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x2B0 +BoardDestroy = .text:0x00000390; // type:function size:0xBC +fn_1_44C = .text:0x0000044C; // type:function size:0x44 +fn_1_490 = .text:0x00000490; // type:function size:0x4 +fn_1_494 = .text:0x00000494; // type:function size:0x4 +fn_1_498 = .text:0x00000498; // type:function size:0x8 +fn_1_4A0 = .text:0x000004A0; // type:function size:0x4 +fn_1_4A4 = .text:0x000004A4; // type:function size:0x4 +fn_1_4A8 = .text:0x000004A8; // type:function size:0x4 +fn_1_4AC = .text:0x000004AC; // type:function size:0x1CC +_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_20 = .rodata:0x00000020; // type:object size:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_2 = .data:0x00000002; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0x2 data:2byte +lbl_1_data_6 = .data:0x00000006; // type:object size:0x2 data:2byte +lbl_1_data_8 = .data:0x00000008; // type:object size:0x2 data:2byte +lbl_1_data_A = .data:0x0000000A; // type:object size:0x2 data:2byte +lbl_1_data_C = .data:0x0000000C; // type:object size:0x20 data:4byte +unkMotTbl = .data:0x0000002C; // type:object size:0x8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 diff --git a/config/GMPP01_00/rels/w21Dll/splits.txt b/config/GMPP01_00/rels/w21Dll/splits.txt new file mode 100644 index 00000000..1ab21815 --- /dev/null +++ b/config/GMPP01_00/rels/w21Dll/splits.txt @@ -0,0 +1,15 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w21Dll/main.c: + .text start:0x000000E0 end:0x000003E0 + .rodata start:0x00000010 end:0x00000018 + .data start:0x00000000 end:0x00000010 diff --git a/config/GMPP01_00/rels/w21Dll/symbols.txt b/config/GMPP01_00/rels/w21Dll/symbols.txt new file mode 100644 index 00000000..708d3b88 --- /dev/null +++ b/config/GMPP01_00/rels/w21Dll/symbols.txt @@ -0,0 +1,18 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x1D4 +BoardDestroy = .text:0x000002B4; // type:function size:0xB8 +LightSetHook = .text:0x0000036C; // type:function size:0x44 scope:local +LightResetHook = .text:0x000003B0; // type:function size:0x20 scope:local +WalkEvent = .text:0x000003D0; // type:function size:0x8 scope:local +WalkMiniEvent = .text:0x000003D8; // type:function size:0x4 scope:local +LandEvent = .text:0x000003DC; // type:function size:0x4 scope:local +_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 scope:local data:float +lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float +bgMdl = .data:0x00000000; // type:object size:0x2 scope:local data:2byte +fgMdl = .data:0x00000002; // type:object size:0x2 scope:local data:2byte +hostMdl = .data:0x00000004; // type:object size:0x2 scope:local data:2byte +hostMotTbl = .data:0x00000008; // type:object size:0x8 scope:local diff --git a/config/GMPP01_00/rels/ztardll/splits.txt b/config/GMPP01_00/rels/ztardll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_00/rels/ztardll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_00/rels/ztardll/symbols.txt b/config/GMPP01_00/rels/ztardll/symbols.txt new file mode 100644 index 00000000..2d23cebb --- /dev/null +++ b/config/GMPP01_00/rels/ztardll/symbols.txt @@ -0,0 +1,258 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +fn_1_424 = .text:0x00000424; // type:function size:0x1350 +fn_1_1774 = .text:0x00001774; // type:function size:0x57C +fn_1_1CF0 = .text:0x00001CF0; // type:function size:0xB0 +fn_1_1DA0 = .text:0x00001DA0; // type:function size:0x5B0 +fn_1_2350 = .text:0x00002350; // type:function size:0x1060 +fn_1_33B0 = .text:0x000033B0; // type:function size:0xD34 +fn_1_40E4 = .text:0x000040E4; // type:function size:0x290 +fn_1_4374 = .text:0x00004374; // type:function size:0x5D4 +fn_1_4948 = .text:0x00004948; // type:function size:0x874 +fn_1_51BC = .text:0x000051BC; // type:function size:0x194 +fn_1_5350 = .text:0x00005350; // type:function size:0x14BC +fn_1_680C = .text:0x0000680C; // type:function size:0x140 +fn_1_694C = .text:0x0000694C; // type:function size:0xC10 +fn_1_755C = .text:0x0000755C; // type:function size:0x340 +fn_1_789C = .text:0x0000789C; // type:function size:0x3A4 +fn_1_7C40 = .text:0x00007C40; // type:function size:0x16C +fn_1_7DAC = .text:0x00007DAC; // type:function size:0xA0 +fn_1_7E4C = .text:0x00007E4C; // type:function size:0x224 +fn_1_8070 = .text:0x00008070; // type:function size:0x2DC +fn_1_834C = .text:0x0000834C; // type:function size:0x2C +fn_1_8378 = .text:0x00008378; // type:function size:0x518 +fn_1_8890 = .text:0x00008890; // type:function size:0x2C +fn_1_88BC = .text:0x000088BC; // type:function size:0x28 +fn_1_88E4 = .text:0x000088E4; // type:function size:0x274 +fn_1_8B58 = .text:0x00008B58; // type:function size:0x2C +fn_1_8B84 = .text:0x00008B84; // type:function size:0x2C +fn_1_8BB0 = .text:0x00008BB0; // type:function size:0x24 +fn_1_8BD4 = .text:0x00008BD4; // type:function size:0x2BC +fn_1_8E90 = .text:0x00008E90; // type:function size:0x500 +fn_1_9390 = .text:0x00009390; // type:function size:0x480 +fn_1_9810 = .text:0x00009810; // type:function size:0x80C +fn_1_A01C = .text:0x0000A01C; // type:function size:0x28 +fn_1_A044 = .text:0x0000A044; // type:function size:0x28 +fn_1_A06C = .text:0x0000A06C; // type:function size:0x21C +fn_1_A288 = .text:0x0000A288; // type:function size:0x194 +fn_1_A41C = .text:0x0000A41C; // type:function size:0x198 +fn_1_A5B4 = .text:0x0000A5B4; // type:function size:0x9C +fn_1_A650 = .text:0x0000A650; // type:function size:0x2D8 +fn_1_A928 = .text:0x0000A928; // type:function size:0x2DC +fn_1_AC04 = .text:0x0000AC04; // type:function size:0x1E0 +fn_1_ADE4 = .text:0x0000ADE4; // type:function size:0xF0 +fn_1_AED4 = .text:0x0000AED4; // type:function size:0x50 +fn_1_AF24 = .text:0x0000AF24; // type:function size:0x584 +fn_1_B4A8 = .text:0x0000B4A8; // type:function size:0x5D8 +fn_1_BA80 = .text:0x0000BA80; // type:function size:0x33C +fn_1_BDBC = .text:0x0000BDBC; // type:function size:0x274 +fn_1_C030 = .text:0x0000C030; // type:function size:0x7C +fn_1_C0AC = .text:0x0000C0AC; // type:function size:0x44C +fn_1_C4F8 = .text:0x0000C4F8; // type:function size:0x434 +fn_1_C92C = .text:0x0000C92C; // type:function size:0x204 +fn_1_CB30 = .text:0x0000CB30; // type:function size:0x790 +fn_1_D2C0 = .text:0x0000D2C0; // type:function size:0xB0C +fn_1_DDCC = .text:0x0000DDCC; // type:function size:0x720 +fn_1_E4EC = .text:0x0000E4EC; // type:function size:0x9C +fn_1_E588 = .text:0x0000E588; // type:function size:0xCCC +fn_1_F254 = .text:0x0000F254; // type:function size:0x924 +fn_1_FB78 = .text:0x0000FB78; // type:function size:0x258 +fn_1_FDD0 = .text:0x0000FDD0; // type:function size:0x958 +fn_1_10728 = .text:0x00010728; // type:function size:0x7C +fn_1_107A4 = .text:0x000107A4; // type:function size:0x164 +fn_1_10908 = .text:0x00010908; // type:function size:0x1B8 +fn_1_10AC0 = .text:0x00010AC0; // type:function size:0xA4 +fn_1_10B64 = .text:0x00010B64; // type:function size:0xF4 +fn_1_10C58 = .text:0x00010C58; // type:function size:0x80 +fn_1_10CD8 = .text:0x00010CD8; // type:function size:0x80 +fn_1_10D58 = .text:0x00010D58; // type:function size:0x28 +fn_1_10D80 = .text:0x00010D80; // type:function size:0x20 +fn_1_10DA0 = .text:0x00010DA0; // type:function size:0xD8 +fn_1_10E78 = .text:0x00010E78; // type:function size:0xC8 +fn_1_10F40 = .text:0x00010F40; // type:function size:0xBC +fn_1_10FFC = .text:0x00010FFC; // type:function size:0x40 +fn_1_1103C = .text:0x0001103C; // type:function size:0x24 +fn_1_11060 = .text:0x00011060; // type:function size:0x1C0 +fn_1_11220 = .text:0x00011220; // type:function size:0x84 +fn_1_112A4 = .text:0x000112A4; // type:function size:0xD4 +fn_1_11378 = .text:0x00011378; // type:function size:0x58 +fn_1_113D0 = .text:0x000113D0; // type:function size:0x15C +fn_1_1152C = .text:0x0001152C; // type:function size:0x21C +fn_1_11748 = .text:0x00011748; // type:function size:0x204 +fn_1_1194C = .text:0x0001194C; // type:function size:0x54 +fn_1_119A0 = .text:0x000119A0; // type:function size:0x304 +fn_1_11CA4 = .text:0x00011CA4; // type:function size:0x304 +fn_1_11FA8 = .text:0x00011FA8; // type:function size:0x340 +fn_1_122E8 = .text:0x000122E8; // type:function size:0xC4 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +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_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0x8 data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x38 data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x22 data:string +lbl_1_data_22 = .data:0x00000022; // type:object size:0xA +lbl_1_data_2C = .data:0x0000002C; // type:object size:0x18 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x6 +lbl_1_data_4A = .data:0x0000004A; // type:object size:0xC +lbl_1_data_56 = .data:0x00000056; // type:object size:0xE data:wstring +lbl_1_data_64 = .data:0x00000064; // type:object size:0x20 +lbl_1_data_84 = .data:0x00000084; // type:object size:0x10 +lbl_1_data_94 = .data:0x00000094; // type:object size:0xC +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA data:string +lbl_1_data_AA = .data:0x000000AA; // type:object size:0x6 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x4C0 +lbl_1_data_570 = .data:0x00000570; // type:object size:0x20 +lbl_1_data_590 = .data:0x00000590; // type:object size:0x20 +lbl_1_data_5B0 = .data:0x000005B0; // type:object size:0x3C data:string +lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x19 data:string +lbl_1_data_605 = .data:0x00000605; // type:object size:0x1A data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x3D +lbl_1_data_65C = .data:0x0000065C; // type:object size:0x20 data:4byte +lbl_1_data_67C = .data:0x0000067C; // type:object size:0x40 data:4byte +lbl_1_data_6BC = .data:0x000006BC; // type:object size:0x70 +lbl_1_data_72C = .data:0x0000072C; // type:object size:0x90 data:4byte +lbl_1_data_7BC = .data:0x000007BC; // type:object size:0x20 +lbl_1_data_7DC = .data:0x000007DC; // type:object size:0x8 data:4byte +lbl_1_data_7E4 = .data:0x000007E4; // type:object size:0x10 +lbl_1_data_7F4 = .data:0x000007F4; // type:object size:0x20 +lbl_1_data_814 = .data:0x00000814; // type:object size:0x4 data:4byte +lbl_1_data_818 = .data:0x00000818; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x28 data:2byte +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x8 data:2byte +lbl_1_bss_3E = .bss:0x0000003E; // type:object size:0x2 data:2byte +lbl_1_bss_42 = .bss:0x00000042; // type:object size:0x2 data:2byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x2 data:2byte +lbl_1_bss_46 = .bss:0x00000046; // type:object size:0x2 data:2byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x2 data:2byte +lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x2 data:2byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x2 data:2byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte +lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x2 data:2byte +lbl_1_bss_5E = .bss:0x0000005E; // type:object size:0x2 data:2byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x8 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x14 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x180 data:4byte +lbl_1_bss_20C = .bss:0x0000020C; // type:object size:0x60 data:4byte +lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x6C data:4byte diff --git a/config/GMPP01_00/splits.txt b/config/GMPP01_00/splits.txt new file mode 100644 index 00000000..3706997a --- /dev/null +++ b/config/GMPP01_00/splits.txt @@ -0,0 +1,567 @@ +Sections: + .init type:code align:4 + extab type:rodata align:32 + extabindex type:rodata align:32 + .text type:code align:8 + .ctors type:rodata align:4 + .dtors type:rodata align:32 + .rodata type:rodata align:32 + .data type:data align:32 + .bss type:bss align:32 + .sdata type:data align:4 + .sbss type:bss align:32 + .sdata2 type:rodata align:32 + .sbss2 type:bss align:32 + +game/main.c: + .text start:0x800057C0 end:0x80005A64 + .data start:0x8011EC00 end:0x8011EC10 + .sdata start:0x801F07C0 end:0x801F07D0 + .sbss start:0x801F0DC0 end:0x801F0E18 + .sdata2 start:0x801F1D20 end:0x801F1D28 + +game/pad.c: + .text start:0x80005A64 end:0x80006480 + .data start:0x8011EC10 end:0x8011EC20 + .bss start:0x8015FBA0 end:0x8015FBE0 + .sbss start:0x801F0E18 end:0x801F0EA0 + +game/dvd.c: + .text start:0x80006480 end:0x80006E40 + .data start:0x8011EC20 end:0x8011ED78 + .sdata start:0x801F07D0 end:0x801F07D8 + .sbss start:0x801F0EA0 end:0x801F0EA8 + +game/data.c: + .text start:0x80006E40 end:0x80009408 + .data start:0x8011ED78 end:0x8011FC00 + .bss start:0x8015FBE0 end:0x801629E0 + .sdata start:0x801F07D8 end:0x801F07E8 + .sbss start:0x801F0EA8 end:0x801F0EB8 + +game/decode.c: + .text start:0x80009408 end:0x80009B04 + .data start:0x8011FC00 end:0x8011FC20 + .bss start:0x801629E0 end:0x80162DE0 + +game/font.c: + .data start:0x8011FC20 end:0x80121C20 + +game/init.c: + .text start:0x80009B04 end:0x8000A46C + .data start:0x80121C20 end:0x80121D70 + .bss start:0x80162DE0 end:0x80162E20 + .sdata start:0x801F07E8 end:0x801F0800 + .sbss start:0x801F0EB8 end:0x801F0EE8 + .sdata2 start:0x801F1D28 end:0x801F1D38 + +game/jmp.c: + .text start:0x8000A46C end:0x8000A560 + +game/malloc.c: + .text start:0x8000A560 end:0x8000A940 + .data start:0x80121D70 end:0x80121DE8 + .bss start:0x80162E20 end:0x80162E38 + +game/memory.c: + .text start:0x8000A940 end:0x8000AEF8 + .data start:0x80121DE8 end:0x80121F60 + +game/printfunc.c: + .text start:0x8000AEF8 end:0x8000C4AC + .data start:0x80121F60 end:0x80121FA0 + .bss start:0x80162E38 end:0x80169738 + .sbss start:0x801F0EE8 end:0x801F0EF8 + .sdata2 start:0x801F1D38 end:0x801F1D88 + +game/process.c: + .text start:0x8000C4AC end:0x8000D350 + .data start:0x80121FA0 end:0x80121FF0 + .bss start:0x80169738 end:0x80169830 + .sbss start:0x801F0EF8 end:0x801F0F08 + +game/sprman.c: + .text start:0x8000D350 end:0x8000F6A8 + .rodata start:0x8011DB20 end:0x8011DB30 + .data start:0x80121FF0 end:0x80122110 + .bss start:0x80169830 end:0x80179A30 + .sdata start:0x801F0800 end:0x801F0810 + .sbss start:0x801F0F08 end:0x801F0F10 + .sdata2 start:0x801F1D88 end:0x801F1DB0 + +game/sprput.c: + .text start:0x8000F6A8 end:0x80010B38 + .rodata start:0x8011DB30 end:0x8011DB40 + .data start:0x80122110 end:0x80122140 + .bss start:0x80179A30 end:0x80179A60 + .sbss start:0x801F0F10 end:0x801F0F18 + .sdata2 start:0x801F1DB0 end:0x801F1DE8 + +game/hsfload.c: + .text start:0x80010B38 end:0x80014020 + .data start:0x80122140 end:0x801221B0 + .bss start:0x80179A60 end:0x8017A020 + .sbss start:0x801F0F18 end:0x801F0F50 + +game/hsfdraw.c: + .text start:0x80014020 end:0x8001F9B4 + .rodata start:0x8011DB40 end:0x8011DB50 + .data start:0x801221B0 end:0x801223C0 + .bss start:0x8017A020 end:0x80184B60 + .sdata start:0x801F0810 end:0x801F0828 + .sbss start:0x801F0F50 end:0x801F0FF0 + .sdata2 start:0x801F1DE8 end:0x801F1E70 + +game/hsfman.c: + .text start:0x8001F9B4 end:0x800250F0 + .data start:0x801223C0 end:0x8012D478 + .bss start:0x80184B60 end:0x801AA770 + .sbss start:0x801F0FF0 end:0x801F1020 + .sdata2 start:0x801F1E70 end:0x801F1ED0 + .sbss2 start:0x801F3FC0 end:0x801F3FC8 + +game/hsfmotion.c: + .text start:0x800250F0 end:0x80028B0C + .data start:0x8012D478 end:0x8012D658 + .bss start:0x801AA770 end:0x801AAF70 + .sbss start:0x801F1020 end:0x801F1028 + .sdata2 start:0x801F1ED0 end:0x801F1F20 + +game/hsfanim.c: + .text start:0x80028B0C end:0x8002CB7C + .data start:0x8012D658 end:0x8012D718 + .bss start:0x801AAF70 end:0x801ACB30 + .sdata2 start:0x801F1F20 end:0x801F1FA8 + +game/hsfex.c: + .text start:0x8002CB7C end:0x8002E754 + .data start:0x8012D718 end:0x8012D738 + .sdata2 start:0x801F1FA8 end:0x801F2038 + +game/perf.c: + .text start:0x8002E754 end:0x8002EBE0 + .bss start:0x801ACB30 end:0x801ACED8 + .sdata start:0x801F0828 end:0x801F0838 + .sbss start:0x801F1028 end:0x801F1080 + +game/objmain.c: + .text start:0x8002EBE0 end:0x8002FF54 + .data start:0x8012D738 end:0x8012DAE8 + .bss start:0x801ACED8 end:0x801ACF98 + .sdata start:0x801F0838 end:0x801F0840 + .sbss start:0x801F1080 end:0x801F10B0 + .sdata2 start:0x801F2038 end:0x801F2060 + +game/fault.c: + .text start:0x8002FF54 end:0x800308C0 + .data start:0x8012DAE8 end:0x8012E310 + .bss start:0x801ACF98 end:0x801ACFB0 + .sdata start:0x801F0840 end:0x801F0850 + .sbss start:0x801F10B0 end:0x801F10C0 + +game/gamework.c: + .text start:0x800308C0 end:0x800315D4 + .rodata start:0x8011DB50 end:0x8011DB70 + .bss start:0x801ACFB0 end:0x801AD3A8 + .sdata start:0x801F0850 end:0x801F0858 + +game/objsysobj.c: + .text start:0x800315D4 end:0x80031DCC + .bss start:0x801AD3A8 end:0x801AD580 + .sbss start:0x801F10C0 end:0x801F10C8 + .sdata2 start:0x801F2060 end:0x801F2070 + +game/objdll.c: + .text start:0x80031DCC end:0x8003260C + .data start:0x8012E310 end:0x8012E7A8 + .bss start:0x801AD580 end:0x801AD5D0 + .sbss start:0x801F10C8 end:0x801F10D0 + +game/frand.c: + .text start:0x8003260C end:0x80032848 + .sbss start:0x801F10D0 end:0x801F10D8 + .sdata2 start:0x801F2070 end:0x801F2080 + +game/audio.c: + .text start:0x80032848 end:0x80033F08 + .data start:0x8012E7A8 end:0x8012EF50 + .bss start:0x801AD5D0 end:0x801AD7F0 + .sdata start:0x801F0858 end:0x801F0860 + .sbss start:0x801F10D8 end:0x801F1108 + .sdata2 start:0x801F2080 end:0x801F2090 + +game/EnvelopeExec.c: + .text start:0x80033F08 end:0x800353C8 + .sbss start:0x801F1108 end:0x801F1138 + .sdata2 start:0x801F2090 end:0x801F20A8 + +game/minigame_seq.c: + .text start:0x800353C8 end:0x8003F6E0 + .data start:0x8012EF50 end:0x8012F5B0 + .bss start:0x801AD7F0 end:0x801ADC00 + .sdata start:0x801F0860 end:0x801F0968 + .sbss start:0x801F1138 end:0x801F1158 + .sdata2 start:0x801F20A8 end:0x801F2268 + +game/ovllist.c: + .data start:0x8012F5B0 end:0x8012FF20 + +game/esprite.c: + .text start:0x8003F6E0 end:0x8003FD90 + .bss start:0x801ADC00 end:0x801AF400 + .sbss start:0x801F1158 end:0x801F1160 + +game/code_8003FF68.c: + .text start:0x8003FD90 end:0x80040328 + .data start:0x8012FF20 end:0x8012FF40 + .bss start:0x801AF400 end:0x801AF700 + .sdata start:0x801F0968 end:0x801F0988 + .sbss start:0x801F1160 end:0x801F1168 + .sdata2 start:0x801F2268 end:0x801F2280 + +game/ClusterExec.c: + .text start:0x80040328 end:0x80040B88 + .sdata2 start:0x801F2280 end:0x801F2290 + +game/ShapeExec.c: + .text start:0x80040B88 end:0x80040F98 + .sdata2 start:0x801F2290 end:0x801F22A0 + +game/wipe.c: + .text start:0x80040F98 end:0x80041ED4 + .data start:0x8012FF40 end:0x8012FF60 + .bss start:0x801AF700 end:0x801AF760 + .sdata start:0x801F0988 end:0x801F0990 + .sbss start:0x801F1168 end:0x801F1170 + .sdata2 start:0x801F22A0 end:0x801F22C8 + +game/window.c: + .text start:0x80041ED4 end:0x80048110 + .data start:0x8012FF60 end:0x80130550 + .bss start:0x801AF760 end:0x801B3B80 + .sdata start:0x801F0990 end:0x801F0998 + .sbss start:0x801F1170 end:0x801F11B0 + .sdata2 start:0x801F22C8 end:0x801F2358 + +game/messdata.c: + .text start:0x80048110 end:0x800481F8 + +game/card.c: + .text start:0x800481F8 end:0x800487FC + .data start:0x80130550 end:0x801305A0 + .sbss start:0x801F11B0 end:0x801F11B8 + +game/armem.c: + .text start:0x800487FC end:0x80049668 + .data start:0x801305A0 end:0x80130690 + .bss start:0x801B3B80 end:0x801B4260 + .sbss start:0x801F11B8 end:0x801F11C8 + +game/chrman.c: + .text start:0x80049668 end:0x800509D4 + .data start:0x80130690 end:0x801310B0 + .bss start:0x801B4260 end:0x801B49F0 + .sdata start:0x801F0998 end:0x801F09E0 + .sbss start:0x801F11C8 end:0x801F11D0 + .sdata2 start:0x801F2358 end:0x801F2490 + +game/mapspace.c: + .text start:0x800509D4 end:0x80054778 + .bss start:0x801B49F0 end:0x801B4E60 + .sbss start:0x801F11D0 end:0x801F11F0 + .sdata2 start:0x801F2490 end:0x801F24C0 + +game/THPSimple.c: + .text start:0x80054778 end:0x8005687C + .data start:0x801310B0 end:0x801311B0 + .bss start:0x801B4E60 end:0x801B5540 + .sdata start:0x801F09E0 end:0x801F09E8 + .sbss start:0x801F11F0 end:0x801F1210 + .sdata2 start:0x801F24C0 end:0x801F24C8 + +game/THPDraw.c: + .text start:0x8005687C end:0x800571D4 + .sdata2 start:0x801F24C8 end:0x801F24E0 + +game/thpmain.c: + .text start:0x800571D4 end:0x80057B9C + .rodata start:0x8011DB70 end:0x8011DB80 + .data start:0x801311B0 end:0x80131218 + .bss start:0x801B5540 end:0x801B5580 + .sbss start:0x801F1210 end:0x801F1238 + .sdata2 start:0x801F24E0 end:0x801F24F8 + +game/objsub.c: + .text start:0x80057B9C end:0x80057D88 + .data start:0x80131218 end:0x80132018 + .bss start:0x801B5580 end:0x801B57B0 + .sbss start:0x801F1238 end:0x801F1260 + +game/flag.c: + .text start:0x80057D88 end:0x80057FA0 + .bss start:0x801B57B0 end:0x801B57C0 + +game/saveload.c: + .text start:0x80057FA0 end:0x8005A40C + .data start:0x80132018 end:0x801320C0 + .bss start:0x801B57C0 end:0x801B97E0 + .sdata start:0x801F09E8 end:0x801F0A00 + .sbss start:0x801F1260 end:0x801F1270 + .sdata2 start:0x801F24F8 end:0x801F2508 + +game/sreset.c: + .text start:0x8005A40C end:0x8005AEF0 + .data start:0x801320C0 end:0x80156B20 + .bss start:0x801B97E0 end:0x801BAB80 + .sdata start:0x801F0A00 end:0x801F0A18 + .sbss start:0x801F1270 end:0x801F1288 + +game/board/main.c: + .text start:0x8005AEF0 end:0x80061D78 + .rodata start:0x8011DB80 end:0x8011DBB0 + .data start:0x80156B20 end:0x80156C20 + .bss start:0x801BAB80 end:0x801BAD08 + .sdata start:0x801F0A18 end:0x801F0A28 + .sbss start:0x801F1288 end:0x801F12D8 + .sdata2 start:0x801F2508 end:0x801F25B8 + +game/board/player.c: + .text start:0x80061D78 end:0x8006D0BC + .rodata start:0x8011DBB0 end:0x8011DC80 + .data start:0x80156C20 end:0x80156E28 + .bss start:0x801BAD08 end:0x801BAD38 + .sdata start:0x801F0A28 end:0x801F0A88 + .sbss start:0x801F12D8 end:0x801F1310 + .sdata2 start:0x801F25B8 end:0x801F26C0 + +game/board/model.c: + .text start:0x8006D0BC end:0x8006FB30 + .sbss start:0x801F1310 end:0x801F1320 + .sdata2 start:0x801F26C0 end:0x801F26D8 + +game/board/window.c: + .text start:0x8006FB30 end:0x80070B30 + .rodata start:0x8011DC80 end:0x8011DCF0 + .data start:0x80156E28 end:0x80156E70 + .bss start:0x801BAD38 end:0x801BAD98 + .sdata start:0x801F0A88 end:0x801F0A90 + .sbss start:0x801F1320 end:0x801F1348 + .sdata2 start:0x801F26D8 end:0x801F26E8 + +game/board/audio.c: + .text start:0x80070B30 end:0x8007103C + .data start:0x80156E70 end:0x80156E88 + .sdata start:0x801F0A90 end:0x801F0A98 + .sbss start:0x801F1348 end:0x801F1350 + +game/board/com.c: + .text start:0x8007103C end:0x80072750 + .data start:0x80156E88 end:0x80156F50 + .sdata start:0x801F0A98 end:0x801F0AA0 + .sdata2 start:0x801F26E8 end:0x801F2710 + +game/board/view.c: + .text start:0x80072750 end:0x80073DD0 + .rodata start:0x8011DCF0 end:0x8011DD10 + .data start:0x80156F50 end:0x80157050 + .bss start:0x801BAD98 end:0x801BADB0 + .sdata start:0x801F0AA0 end:0x801F0AA8 + .sbss start:0x801F1350 end:0x801F1368 + .sdata2 start:0x801F2710 end:0x801F2780 + +game/board/space.c: + .text start:0x80073DD0 end:0x80077888 + .data start:0x80157050 end:0x80157090 + .bss start:0x801BADB0 end:0x801C1E00 + .sdata start:0x801F0AA8 end:0x801F0AB0 + .sbss start:0x801F1368 end:0x801F13A0 + .sdata2 start:0x801F2780 end:0x801F2800 + +game/board/shop.c: + .text start:0x80077888 end:0x8007A6B4 + .data start:0x80157090 end:0x80157210 + .bss start:0x801C1E00 end:0x801C1E30 + .sdata start:0x801F0AB0 end:0x801F0AD0 + .sbss start:0x801F13A0 end:0x801F13C0 + .sdata2 start:0x801F2800 end:0x801F28D8 + +game/board/lottery.c: + .text start:0x8007A6B4 end:0x8007F9C8 + .rodata start:0x8011DD10 end:0x8011DE40 + .data start:0x80157210 end:0x80157578 + .bss start:0x801C1E30 end:0x801C1E60 + .sdata start:0x801F0AD0 end:0x801F0AF0 + .sbss start:0x801F13C0 end:0x801F13E0 + .sdata2 start:0x801F28D8 end:0x801F2A68 + +game/board/basic_space.c: + .text start:0x8007F9C8 end:0x80080BCC + .data start:0x80157578 end:0x801575B0 + .sdata2 start:0x801F2A68 end:0x801F2AF8 + +game/board/warp.c: + .text start:0x80080BCC end:0x80081544 + .rodata start:0x8011DE40 end:0x8011DE60 + .data start:0x801575B0 end:0x801575D0 + .bss start:0x801C1E60 end:0x801C1E70 + .sdata start:0x801F0AF0 end:0x801F0B00 + .sbss start:0x801F13E0 end:0x801F13F8 + .sdata2 start:0x801F2AF8 end:0x801F2B48 + +game/board/char_wheel.c: + .text start:0x80081544 end:0x80082B3C + .data start:0x801575D0 end:0x80157638 + .sdata start:0x801F0B00 end:0x801F0B08 + .sbss start:0x801F13F8 end:0x801F1418 + .sdata2 start:0x801F2B48 end:0x801F2BD8 + +game/board/mushroom.c: + .text start:0x80082B3C end:0x80083D88 + .sdata start:0x801F0B08 end:0x801F0B18 + .sbss start:0x801F1418 end:0x801F1428 + .sdata2 start:0x801F2BD8 end:0x801F2C60 + +game/board/star.c: + .text start:0x80083D88 end:0x80085B74 + .rodata start:0x8011DE60 end:0x8011DED0 + .data start:0x80157638 end:0x801576F0 + .bss start:0x801C1E70 end:0x801C1E80 + .sdata start:0x801F0B18 end:0x801F0B20 + .sbss start:0x801F1428 end:0x801F1440 + .sdata2 start:0x801F2C60 end:0x801F2D00 + +game/board/roll.c: + .text start:0x80085B74 end:0x800882B4 + .rodata start:0x8011DED0 end:0x8011DF38 + .data start:0x801576F0 end:0x80157790 + .bss start:0x801C1E80 end:0x801C1E90 + .sdata start:0x801F0B20 end:0x801F0B38 + .sbss start:0x801F1440 end:0x801F1460 + .sdata2 start:0x801F2D00 end:0x801F2DB0 + +game/board/ui.c: + .text start:0x800882B4 end:0x8008DE88 + .rodata start:0x8011DF38 end:0x8011E020 + .data start:0x80157790 end:0x80157990 + .bss start:0x801C1E90 end:0x801C1F20 + .sdata start:0x801F0B38 end:0x801F0B40 + .sbss start:0x801F1460 end:0x801F1498 + .sdata2 start:0x801F2DB0 end:0x801F2E70 + +game/board/block.c: + .text start:0x8008DE88 end:0x8008ED48 + .rodata start:0x8011E020 end:0x8011E040 + .data start:0x80157990 end:0x801579A8 + .bss start:0x801C1F20 end:0x801C1F48 + .sdata start:0x801F0B40 end:0x801F0B48 + .sbss start:0x801F1498 end:0x801F14B0 + .sdata2 start:0x801F2E70 end:0x801F2EC8 + +game/board/item.c: + .text start:0x8008ED48 end:0x800974CC + .rodata start:0x8011E040 end:0x8011E058 + .data start:0x801579A8 end:0x80157D98 + .bss start:0x801C1F48 end:0x801C1F88 + .sdata start:0x801F0B48 end:0x801F0B58 + .sbss start:0x801F14B0 end:0x801F14F0 + .sdata2 start:0x801F2EC8 end:0x801F3100 + +game/board/bowser.c: + .text start:0x800974CC end:0x8009B3F4 + .rodata start:0x8011E058 end:0x8011E120 + .data start:0x80157D98 end:0x80157DE8 + .bss start:0x801C1F88 end:0x801C1FD0 + .sdata start:0x801F0B58 end:0x801F0B70 + .sbss start:0x801F14F0 end:0x801F1530 + .sdata2 start:0x801F3100 end:0x801F31B0 + +game/board/battle.c: + .text start:0x8009B3F4 end:0x8009D068 + .rodata start:0x8011E120 end:0x8011E1A0 + .data start:0x80157DE8 end:0x80157E98 + .bss start:0x801C1FD0 end:0x801C1FE0 + .sdata start:0x801F0B70 end:0x801F0B78 + .sbss start:0x801F1530 end:0x801F1558 + .sdata2 start:0x801F31B0 end:0x801F3258 + +game/board/fortune.c: + .text start:0x8009D068 end:0x8009DEF0 + .rodata start:0x8011E1A0 end:0x8011E1C8 + .data start:0x80157E98 end:0x80157EB0 + .bss start:0x801C1FE0 end:0x801C1FF8 + .sdata start:0x801F0B78 end:0x801F0B80 + .sbss start:0x801F1558 end:0x801F1568 + .sdata2 start:0x801F3258 end:0x801F3268 + +game/board/boo.c: + .text start:0x8009DEF0 end:0x800A1954 + .data start:0x80157EB0 end:0x80158088 + .sdata start:0x801F0B80 end:0x801F0B90 + .sbss start:0x801F1568 end:0x801F15A0 + .sdata2 start:0x801F3268 end:0x801F3378 + +game/board/mg_setup.c: + .text start:0x800A1954 end:0x800A4E8C + .rodata start:0x8011E1C8 end:0x8011E1F0 + .data start:0x80158088 end:0x801581C0 + .bss start:0x801C1FF8 end:0x801C2068 + .sdata start:0x801F0B90 end:0x801F0B98 + .sbss start:0x801F15A0 end:0x801F15D0 + .sdata2 start:0x801F3378 end:0x801F3450 + +game/board/boo_house.c: + .text start:0x800A4E8C end:0x800A6E04 + .data start:0x801581C0 end:0x801582F8 + .bss start:0x801C2068 end:0x801C2078 + .sdata start:0x801F0B98 end:0x801F0BE8 + .sbss start:0x801F15D0 end:0x801F15E8 + .sdata2 start:0x801F3450 end:0x801F3498 + +game/board/start.c: + .text start:0x800A6E04 end:0x800A9628 + .rodata start:0x8011E1F0 end:0x8011E210 + .data start:0x801582F8 end:0x80158460 + .bss start:0x801C2078 end:0x801C2090 + .sdata start:0x801F0BE8 end:0x801F0BF8 + .sbss start:0x801F15E8 end:0x801F15F8 + .sdata2 start:0x801F3498 end:0x801F3568 + +game/board/last5.c: + .text start:0x800A9628 end:0x800ADAA4 + .rodata start:0x8011E210 end:0x8011E250 + .data start:0x80158460 end:0x80158778 + .bss start:0x801C2090 end:0x801C20D8 + .sdata start:0x801F0BF8 end:0x801F0C50 + .sbss start:0x801F15F8 end:0x801F1618 + .sdata2 start:0x801F3568 end:0x801F3668 + +game/board/pause.c: + .text start:0x800ADAA4 end:0x800B1894 + .data start:0x80158778 end:0x801588A0 + .bss start:0x801C20D8 end:0x801C2108 + .sdata start:0x801F0C50 end:0x801F0C60 + .sbss start:0x801F1618 end:0x801F1638 + .sdata2 start:0x801F3668 end:0x801F3720 + +game/board/com_path.c: + .text start:0x800B1894 end:0x800B3DF8 + .bss start:0x801C2108 end:0x801C2688 + .sbss start:0x801F1638 end:0x801F1640 + +game/board/tutorial.c: + .text start:0x800B3DF8 end:0x800B4214 + .data start:0x801588A0 end:0x801588E8 + .bss start:0x801C2688 end:0x801C26A0 + .sbss start:0x801F1640 end:0x801F1668 + +dolphin/os/__start.c: + .init start:0x80003100 end:0x80003354 + +dolphin/PPCArch.c: + .text start:0x800B4214 end:0x800B42BC + +dolphin/os/OS.c: + .text start:0x800B42BC end:0x800B4C18 + .data start:0x801588E8 end:0x80158AA8 + .bss start:0x801C26A0 end:0x801C26F0 + .sbss start:0x801F1668 end:0x801F1698 diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt new file mode 100644 index 00000000..36e40d58 --- /dev/null +++ b/config/GMPP01_00/symbols.txt @@ -0,0 +1,8670 @@ +__check_pad3 = .init:0x80003100; // type:function size:0x40 scope:local +__start = .init:0x80003140; // type:function size:0x138 scope:weak +__init_registers = .init:0x80003278; // type:function size:0x1C scope:local +__init_data = .init:0x80003294; // type:function size:0xC0 scope:local +__init_hardware = .init:0x80003354; // type:function size:0x20 scope:global +__flush_cache = .init:0x80003374; // type:function size:0x34 scope:global +memset = .init:0x800033A8; // type:function size:0x30 scope:global +__fill_mem = .init:0x800033D8; // type:function size:0xB8 scope:global +memcpy = .init:0x80003490; // type:function size:0x50 scope:global +TRK_memset = .init:0x800034E0; // type:function size:0x30 +TRK_memcpy = .init:0x80003510; // type:function size:0x24 +gTRKInterruptVectorTable = .init:0x80003534; // type:label scope:global +lbl_8000387C = .init:0x8000387C; // type:label +lbl_800038E0 = .init:0x800038E0; // type:label +__TRK_reset = .init:0x80005468; // type:function size:0x104 +gTRKInterruptVectorTableEnd = .init:0x80005468; // type:label scope:global +_rom_copy_info = .init:0x8000556C; // type:object size:0x84 scope:global data:4byte +_bss_init_info = .init:0x800055F0; // type:object size:0x20 scope:global data:4byte +@etb_80005620 = extab:0x80005620; // type:object size:0x28 scope:local hidden +@etb_80005648 = extab:0x80005648; // type:object size:0x8 scope:local hidden +@etb_80005650 = extab:0x80005650; // type:object size:0x8 scope:local hidden +@etb_80005658 = extab:0x80005658; // type:object size:0x8 scope:local hidden +@etb_80005660 = extab:0x80005660; // type:object size:0x8 scope:local hidden +@etb_80005668 = extab:0x80005668; // type:object size:0x8 scope:local hidden +@etb_80005670 = extab:0x80005670; // type:object size:0x8 scope:local hidden +@etb_80005678 = extab:0x80005678; // type:object size:0x14 scope:local hidden +@etb_8000568C = extab:0x8000568C; // type:object size:0x2C scope:local hidden +@etb_800056B8 = extab:0x800056B8; // type:object size:0x8 scope:local hidden +@etb_800056C0 = extab:0x800056C0; // type:object size:0x14 scope:local hidden +@etb_800056D4 = extab:0x800056D4; // type:object size:0x8 scope:local hidden +@etb_800056DC = extab:0x800056DC; // type:object size:0x8 scope:local hidden +@eti_80005700 = extabindex:0x80005700; // type:object size:0xC scope:local hidden +@eti_8000570C = extabindex:0x8000570C; // type:object size:0xC scope:local hidden +@eti_80005718 = extabindex:0x80005718; // type:object size:0xC scope:local hidden +@eti_80005724 = extabindex:0x80005724; // type:object size:0xC scope:local hidden +@eti_80005730 = extabindex:0x80005730; // type:object size:0xC scope:local hidden +@eti_8000573C = extabindex:0x8000573C; // type:object size:0xC scope:local hidden +@eti_80005748 = extabindex:0x80005748; // type:object size:0xC scope:local hidden +@eti_80005754 = extabindex:0x80005754; // type:object size:0xC scope:local hidden +@eti_80005760 = extabindex:0x80005760; // type:object size:0xC scope:local hidden +@eti_8000576C = extabindex:0x8000576C; // type:object size:0xC scope:local hidden +@eti_80005778 = extabindex:0x80005778; // type:object size:0xC scope:local hidden +@eti_80005784 = extabindex:0x80005784; // type:object size:0xC scope:local hidden +@eti_80005790 = extabindex:0x80005790; // type:object size:0xC scope:local hidden +_eti_init_info = extabindex:0x8000579C; // type:object size:0x20 scope:global +main = .text:0x800057C0; // type:function size:0x234 scope:global +HuSysVWaitSet = .text:0x800059F4; // type:function size:0x38 +HuSysVWaitGet = .text:0x80005A2C; // type:function size:0xC +rand8 = .text:0x80005A38; // type:function size:0x2C +HuPadInit = .text:0x80005A64; // type:function size:0xF0 +HuPadRead = .text:0x80005B54; // type:function size:0x168 +PadReadVSync = .text:0x80005CBC; // type:function size:0x440 scope:local +PadADConv = .text:0x800060FC; // type:function size:0x234 scope:local +HuPadRumbleSet = .text:0x80006330; // type:function size:0x54 +HuPadRumbleStop = .text:0x80006384; // type:function size:0x70 +HuPadRumbleAllStop = .text:0x800063F4; // type:function size:0x70 +HuPadStatGet = .text:0x80006464; // type:function size:0x14 +HuPadRumbleGet = .text:0x80006478; // type:function size:0x8 +HuDVDReadAsyncCallBack = .text:0x80006480; // type:function size:0xC scope:local +HuDvdDataRead = .text:0x8000648C; // type:function size:0x16C +HuDvdDataReadMulti = .text:0x800065F8; // type:function size:0x1B4 +HuDvdDataReadDirect = .text:0x800067AC; // type:function size:0x170 +HuDvdDataFastRead = .text:0x8000691C; // type:function size:0x16C +HuDvdDataFastReadNum = .text:0x80006A88; // type:function size:0x174 +HuDvdDataFastReadAsync = .text:0x80006BFC; // type:function size:0x150 +HuDvdDataClose = .text:0x80006D4C; // type:function size:0x38 +HuDvdErrorWatch = .text:0x80006D84; // type:function size:0xBC +HuDataInit = .text:0x80006E40; // type:function size:0xD0 +HuDataReadChk = .text:0x80006F10; // type:function size:0x74 +HuDataGetStatus = .text:0x80006F84; // type:function size:0x64 +HuDataGetDirPtr = .text:0x80006FE8; // type:function size:0xB8 +HuDataDirRead = .text:0x800070A0; // type:function size:0x224 +HuDataDirSet = .text:0x800072C4; // type:function size:0x188 +HuDataDirReadAsyncCallBack = .text:0x8000744C; // type:function size:0xC8 +HuDataDirReadAsync = .text:0x80007514; // type:function size:0x1A8 +HuDataDirReadNumAsync = .text:0x800076BC; // type:function size:0x1A8 +HuDataGetAsyncStat = .text:0x80007864; // type:function size:0x60 +HuDataRead = .text:0x800078C4; // type:function size:0x344 +HuDataReadNum = .text:0x80007C08; // type:function size:0x3A0 +HuDataSelHeapRead = .text:0x80007FA8; // type:function size:0x3C4 +HuDataSelHeapReadNum = .text:0x8000836C; // type:function size:0x428 +HuDataReadMulti = .text:0x80008794; // type:function size:0x30 +HuDataReadMultiSub = .text:0x800087C4; // type:function size:0x3FC +HuDataGetSize = .text:0x80008BC0; // type:function size:0x104 +HuDataClose = .text:0x80008CC4; // type:function size:0x38 +HuDataCloseMulti = .text:0x80008CFC; // type:function size:0x7C +HuDataDirClose = .text:0x80008D78; // type:function size:0xD4 +HuDataDirCloseNum = .text:0x80008E4C; // type:function size:0x130 +HuDataReadNumHeapShortForce = .text:0x80008F7C; // type:function size:0x48C +HuDecodeSlide = .text:0x80009408; // type:function size:0x200 +HuDecodeFslide = .text:0x80009608; // type:function size:0x1D8 +HuDecodeData = .text:0x800097E0; // type:function size:0x324 +HuSysInit = .text:0x80009B04; // type:function size:0x10C +InitRenderMode = .text:0x80009C10; // type:function size:0xD0 scope:local +InitGX = .text:0x80009CE0; // type:function size:0x148 scope:local +InitMem = .text:0x80009E28; // type:function size:0x184 scope:local +InitVI = .text:0x80009FAC; // type:function size:0x54 scope:local +HuSysBeforeRender = .text:0x8000A000; // type:function size:0xE4 +HuSysDoneRender = .text:0x8000A0E4; // type:function size:0xC8 +SwapBuffers = .text:0x8000A1AC; // type:function size:0x6C scope:local +LoadMemInfo = .text:0x8000A218; // type:function size:0x254 scope:local +gcsetjmp = .text:0x8000A46C; // type:function size:0x74 +gclongjmp = .text:0x8000A4E0; // type:function size:0x80 +HuMemInitAll = .text:0x8000A560; // type:function size:0x12C +HuMemInit = .text:0x8000A68C; // type:function size:0x30 +HuMemDCFlushAll = .text:0x8000A6BC; // type:function size:0x2C +HuMemDCFlush = .text:0x8000A6E8; // type:function size:0x54 +HuMemDirectMalloc = .text:0x8000A73C; // type:function size:0x64 +HuMemDirectMallocNum = .text:0x8000A7A0; // type:function size:0x6C +HuMemDirectFree = .text:0x8000A80C; // type:function size:0x38 +HuMemDirectFreeNum = .text:0x8000A844; // type:function size:0x54 +HuMemUsedMallocSizeGet = .text:0x8000A898; // type:function size:0x3C +HuMemUsedMallocBlockGet = .text:0x8000A8D4; // type:function size:0x3C +HuMemHeapSizeGet = .text:0x8000A910; // type:function size:0x18 +HuMemHeapPtrGet = .text:0x8000A928; // type:function size:0x18 +HuMemHeapInit = .text:0x8000A940; // type:function size:0x4C +HuMemMemoryAllocNum = .text:0x8000A98C; // type:function size:0x40 +HuMemMemoryAlloc = .text:0x8000A9CC; // type:function size:0x3C +HuMemMemoryAlloc2 = .text:0x8000AA08; // type:function size:0x108 scope:local +HuMemMemoryFreeNum = .text:0x8000AB10; // type:function size:0x7C +HuMemMemoryFree = .text:0x8000AB8C; // type:function size:0x12C +HuMemUsedMemorySizeGet = .text:0x8000ACB8; // type:function size:0x48 +HuMemUsedMemoryBlockGet = .text:0x8000AD00; // type:function size:0x44 +HuMemMemoryAllocSizeGet = .text:0x8000AD44; // type:function size:0xC +HuMemHeapDump = .text:0x8000AD50; // type:function size:0x158 +HuMemMemorySizeGet = .text:0x8000AEA8; // type:function size:0x50 +pfInit = .text:0x8000AEF8; // type:function size:0x64 +pfClsScr = .text:0x8000AF5C; // type:function size:0xA0 +print8 = .text:0x8000AFFC; // type:function size:0x15C +printWin = .text:0x8000B158; // type:function size:0xAC +pfDrawFonts = .text:0x8000B204; // type:function size:0xEE8 +WireDraw = .text:0x8000C0EC; // type:function size:0x3C0 scope:local +HuPrcInit = .text:0x8000C4AC; // type:function size:0x14 +HuPrcCreate = .text:0x8000C4C0; // type:function size:0x1E8 +HuPrcChildLink = .text:0x8000C6A8; // type:function size:0x68 +HuPrcChildUnlink = .text:0x8000C710; // type:function size:0x58 +HuPrcChildCreate = .text:0x8000C768; // type:function size:0x27C +HuPrcChildWatch = .text:0x8000C9E4; // type:function size:0x60 +HuPrcCurrentGet = .text:0x8000CA44; // type:function size:0x8 +SetKillStatusProcess = .text:0x8000CA4C; // type:function size:0x50 scope:local +HuPrcKill = .text:0x8000CA9C; // type:function size:0xD4 +HuPrcChildKill = .text:0x8000CB70; // type:function size:0x2A4 +HuPrcEnd = .text:0x8000CE14; // type:function size:0x100 +HuPrcSleep = .text:0x8000CF14; // type:function size:0x80 +HuPrcVSleep = .text:0x8000CF94; // type:function size:0x54 +HuPrcWakeup = .text:0x8000CFE8; // type:function size:0xC +HuPrcDestructorSet2 = .text:0x8000CFF4; // type:function size:0x8 +HuPrcDestructorSet = .text:0x8000CFFC; // type:function size:0x28 +HuPrcCall = .text:0x8000D024; // type:function size:0x184 +HuPrcMemAlloc = .text:0x8000D1A8; // type:function size:0x4C +HuPrcMemFree = .text:0x8000D1F4; // type:function size:0x30 +HuPrcSetStat = .text:0x8000D224; // type:function size:0x10 +HuPrcResetStat = .text:0x8000D234; // type:function size:0x14 +HuPrcAllPause = .text:0x8000D248; // type:function size:0x84 +HuPrcAllUPause = .text:0x8000D2CC; // type:function size:0x84 +HuSprInit = .text:0x8000D350; // type:function size:0xA0 +HuSprClose = .text:0x8000D3F0; // type:function size:0xB0 +HuSprExec = .text:0x8000D4A0; // type:function size:0x64 +HuSprBegin = .text:0x8000D504; // type:function size:0x188 +HuSprOrderEntry = .text:0x8000D68C; // type:function size:0x14C +HuSprCall = .text:0x8000D7D8; // type:function size:0xF4 +HuSprFinish = .text:0x8000D8CC; // type:function size:0x458 +HuSprPauseSet = .text:0x8000DD24; // type:function size:0x8 +HuSprAnimRead = .text:0x8000DD2C; // type:function size:0x114 +HuSprAnimLock = .text:0x8000DE40; // type:function size:0x10 +HuSprCreate = .text:0x8000DE50; // type:function size:0x128 +HuSprFuncCreate = .text:0x8000DF78; // type:function size:0x188 +HuSprGrpCreate = .text:0x8000E100; // type:function size:0xF4 +HuSprGrpCopy = .text:0x8000E1F4; // type:function size:0x334 +HuSprGrpMemberSet = .text:0x8000E528; // type:function size:0x8C +HuSprGrpMemberKill = .text:0x8000E5B4; // type:function size:0xAC +HuSprGrpKill = .text:0x8000E660; // type:function size:0x9C +HuSprKill = .text:0x8000E6FC; // type:function size:0x84 +HuSprAnimKill = .text:0x8000E780; // type:function size:0x90 +HuSprAttrSet = .text:0x8000E810; // type:function size:0xAC +HuSprAttrReset = .text:0x8000E8BC; // type:function size:0xAC +HuSprPosSet = .text:0x8000E968; // type:function size:0x60 +HuSprZRotSet = .text:0x8000E9C8; // type:function size:0x5C +HuSprScaleSet = .text:0x8000EA24; // type:function size:0x60 +HuSprTPLvlSet = .text:0x8000EA84; // type:function size:0x64 +HuSprColorSet = .text:0x8000EAE8; // type:function size:0x64 +HuSprSpeedSet = .text:0x8000EB4C; // type:function size:0x4C +HuSprBankSet = .text:0x8000EB98; // type:function size:0xF0 +HuSprGrpPosSet = .text:0x8000EC88; // type:function size:0x9C +HuSprGrpCenterSet = .text:0x8000ED24; // type:function size:0x9C +HuSprGrpZRotSet = .text:0x8000EDC0; // type:function size:0x98 +HuSprGrpScaleSet = .text:0x8000EE58; // type:function size:0x9C +HuSprGrpTPLvlSet = .text:0x8000EEF4; // type:function size:0xC0 +HuSprGrpDrawNoSet = .text:0x8000EFB4; // type:function size:0x8C +HuSprDrawNoSet = .text:0x8000F040; // type:function size:0x50 +HuSprPriSet = .text:0x8000F090; // type:function size:0x4C +HuSprGrpScissorSet = .text:0x8000F0DC; // type:function size:0xAC +HuSprScissorSet = .text:0x8000F188; // type:function size:0x58 +HuSprAnimMake = .text:0x8000F1E0; // type:function size:0x1FC +HuSprBGSet = .text:0x8000F3DC; // type:function size:0x68 +HuSprSprBGSet = .text:0x8000F444; // type:function size:0x50 +AnimDebug = .text:0x8000F494; // type:function size:0x214 +HuSprDispInit = .text:0x8000F6A8; // type:function size:0x158 +HuSprDisp = .text:0x8000F800; // type:function size:0xECC +HuSprTexLoad = .text:0x800106CC; // type:function size:0x29C +HuSprExecLayerSet = .text:0x80010968; // type:function size:0x58 +HuSprLayerHook = .text:0x800109C0; // type:function size:0x178 scope:local +LoadHSF = .text:0x80010B38; // type:function size:0xB0 +ClusterAdjustObject = .text:0x80010BE8; // type:function size:0xA0 +FileLoad = .text:0x80010C88; // type:function size:0xC8 scope:local +SetHsfModel = .text:0x80010D50; // type:function size:0x284 scope:local +SetName = .text:0x80010FD4; // type:function size:0x38 +MaterialLoad = .text:0x8001100C; // type:function size:0x210 scope:local +AttributeLoad = .text:0x8001121C; // type:function size:0xF8 scope:local +SceneLoad = .text:0x80011314; // type:function size:0x80 scope:local +ColorLoad = .text:0x80011394; // type:function size:0x130 scope:local +VertexLoad = .text:0x800114C4; // type:function size:0x1C0 scope:local +NormalLoad = .text:0x80011684; // type:function size:0x128 scope:local +STLoad = .text:0x800117AC; // type:function size:0x1A8 scope:local +FaceLoad = .text:0x80011954; // type:function size:0x190 scope:local +DispObject = .text:0x80011AE4; // type:function size:0x7A8 scope:local +ObjectLoad = .text:0x8001228C; // type:function size:0x15C scope:local +CenvLoad = .text:0x800123E8; // type:function size:0x464 scope:local +SkeletonLoad = .text:0x8001284C; // type:function size:0x198 scope:local +PartLoad = .text:0x800129E4; // type:function size:0x12C scope:local +ClusterLoad = .text:0x80012B10; // type:function size:0x1E8 scope:local +ShapeLoad = .text:0x80012CF8; // type:function size:0x168 scope:local +MapAttrLoad = .text:0x80012E60; // type:function size:0xD0 scope:local +BitmapLoad = .text:0x80012F30; // type:function size:0x174 scope:local +PaletteLoad = .text:0x800130A4; // type:function size:0x16C scope:local +MakeObjectName = .text:0x80013210; // type:function size:0xE8 +CmpObjectName = .text:0x800132F8; // type:function size:0x38 +MotionLoad = .text:0x80013330; // type:function size:0x938 scope:local +MatrixLoad = .text:0x80013C68; // type:function size:0x80 scope:local +SearchObjectSetName = .text:0x80013CE8; // type:function size:0x94 scope:local +SearchVertexPtr = .text:0x80013D7C; // type:function size:0x44 scope:local +SearchNormalPtr = .text:0x80013DC0; // type:function size:0x44 scope:local +SearchStPtr = .text:0x80013E04; // type:function size:0x44 scope:local +SearchColorPtr = .text:0x80013E48; // type:function size:0x44 scope:local +SearchFacePtr = .text:0x80013E8C; // type:function size:0x44 scope:local +SearchCenvPtr = .text:0x80013ED0; // type:function size:0x44 scope:local +SearchPartPtr = .text:0x80013F14; // type:function size:0x44 scope:local +SearchPalettePtr = .text:0x80013F58; // type:function size:0x3C scope:local +SearchBitmapPtr = .text:0x80013F94; // type:function size:0x44 scope:local +GetString = .text:0x80013FD8; // type:function size:0x24 scope:local +GetMotionString = .text:0x80013FFC; // type:function size:0x24 scope:local +Hu3DDrawPreInit = .text:0x80014020; // type:function size:0xC +Hu3DDraw = .text:0x8001402C; // type:function size:0x1A0 +objCall = .text:0x800141CC; // type:function size:0xEC scope:local +objMesh = .text:0x800142B8; // type:function size:0x86C scope:local +ObjCullCheck = .text:0x80014B24; // type:function size:0x4C0 +FaceDraw = .text:0x80014FE4; // type:function size:0x10DC scope:local +SetTevStageNoTex = .text:0x800160C0; // type:function size:0x8E8 scope:local +SetTevStageTex = .text:0x800169A8; // type:function size:0x2588 scope:local +SetKColor = .text:0x80018F30; // type:function size:0x164 scope:local +SetKColorRGB = .text:0x80019094; // type:function size:0x180 scope:local +FlushKColor = .text:0x80019214; // type:function size:0xB0 scope:local +SetReflect = .text:0x800192C4; // type:function size:0x280 scope:local +SetProjection = .text:0x80019544; // type:function size:0x29C scope:local +SetShadowTex = .text:0x800197E0; // type:function size:0x8C scope:local +SetShadow = .text:0x8001986C; // type:function size:0xCC scope:local +FaceDrawShadow = .text:0x80019938; // type:function size:0x5E4 scope:local +LoadTexture = .text:0x80019F1C; // type:function size:0x75C scope:local +objNull = .text:0x8001A678; // type:function size:0x248 scope:local +objRoot = .text:0x8001A8C0; // type:function size:0x198 scope:local +objJoint = .text:0x8001AA58; // type:function size:0x248 scope:local +objMap = .text:0x8001ACA0; // type:function size:0x17C scope:local +objReplica = .text:0x8001AE1C; // type:function size:0x1B4 scope:local +Hu3DDrawPost = .text:0x8001AFD0; // type:function size:0xB00 +ObjDraw = .text:0x8001BAD0; // type:function size:0x6D0 scope:local +MakeDisplayList = .text:0x8001C1A0; // type:function size:0xBC +MDObjCall = .text:0x8001C25C; // type:function size:0x438 scope:local +MDObjMesh = .text:0x8001C694; // type:function size:0x2A8 scope:local +ObjConstantMake = .text:0x8001C93C; // type:function size:0x68 +MDFaceDraw = .text:0x8001C9A4; // type:function size:0xD08 scope:local +MakeCalcNBT = .text:0x8001D6AC; // type:function size:0x3A8 scope:local +MakeNBT = .text:0x8001DA54; // type:function size:0x2C4 scope:local +MDFaceCnt = .text:0x8001DD18; // type:function size:0x2C8 scope:local +mtxTransCat = .text:0x8001DFE0; // type:function size:0x4C +mtxRotCat = .text:0x8001E02C; // type:function size:0xF4 +mtxRot = .text:0x8001E120; // type:function size:0xF0 +mtxScaleCat = .text:0x8001E210; // type:function size:0x70 +HmfInverseMtxF3X3 = .text:0x8001E280; // type:function size:0x1E0 +SetDefLight = .text:0x8001E460; // type:function size:0x190 +Hu3DModelObjPosGet = .text:0x8001E5F0; // type:function size:0x90 +Hu3DModelObjMtxGet = .text:0x8001E680; // type:function size:0x318 +PGObjCall = .text:0x8001E998; // type:function size:0x80 +PGObjCalc = .text:0x8001EA18; // type:function size:0x7B0 +PGObjReplica = .text:0x8001F1C8; // type:function size:0x574 +Hu3DObjDuplicate = .text:0x8001F73C; // type:function size:0x158 +Hu3DModelObjDrawInit = .text:0x8001F894; // type:function size:0x90 +Hu3DModelObjDraw = .text:0x8001F924; // type:function size:0x90 +Hu3DInit = .text:0x8001F9B4; // type:function size:0x220 +Hu3DPreProc = .text:0x8001FBD4; // type:function size:0xD8 +Hu3DExec = .text:0x8001FCAC; // type:function size:0x688 +Hu3DAllKill = .text:0x80020334; // type:function size:0x158 +Hu3DBGColorSet = .text:0x8002048C; // type:function size:0x18 +Hu3DLayerHookSet = .text:0x800204A4; // type:function size:0x1C +Hu3DPauseSet = .text:0x800204C0; // type:function size:0xC +Hu3DNoSyncSet = .text:0x800204CC; // type:function size:0xC +Hu3DModelCreate = .text:0x800204D8; // type:function size:0x330 +Hu3DModelLink = .text:0x80020808; // type:function size:0x2E8 +Hu3DHookFuncCreate = .text:0x80020AF0; // type:function size:0x1C8 +Hu3DModelKill = .text:0x80020CB8; // type:function size:0x34C +Hu3DModelAllKill = .text:0x80021004; // type:function size:0xD0 +Hu3DModelPosSet = .text:0x800210D4; // type:function size:0x34 +Hu3DModelPosSetV = .text:0x80021108; // type:function size:0x40 +Hu3DModelRotSet = .text:0x80021148; // type:function size:0x34 +Hu3DModelRotSetV = .text:0x8002117C; // type:function size:0x40 +Hu3DModelScaleSet = .text:0x800211BC; // type:function size:0x34 +Hu3DModelScaleSetV = .text:0x800211F0; // type:function size:0x40 +Hu3DModelAttrSet = .text:0x80021230; // type:function size:0x54 +Hu3DModelAttrReset = .text:0x80021284; // type:function size:0x50 +Hu3DModelAttrGet = .text:0x800212D4; // type:function size:0x2C +Hu3DModelMotionAttrGet = .text:0x80021300; // type:function size:0x2C +Hu3DModelClusterAttrSet = .text:0x8002132C; // type:function size:0x44 +Hu3DModelClusterAttrReset = .text:0x80021370; // type:function size:0x44 +Hu3DModelCameraSet = .text:0x800213B4; // type:function size:0x2C +Hu3DModelLayerSet = .text:0x800213E0; // type:function size:0x6C +Hu3DModelObjPtrGet = .text:0x8002144C; // type:function size:0xD8 +Hu3DModelTPLvlSet = .text:0x80021524; // type:function size:0xF8 +Hu3DModelHiliteMapSet = .text:0x8002161C; // type:function size:0x98 +Hu3DModelShadowSet = .text:0x800216B4; // type:function size:0xB0 +Hu3DModelShadowReset = .text:0x80021764; // type:function size:0xA0 +Hu3DModelShadowDispOn = .text:0x80021804; // type:function size:0x34 +Hu3DModelShadowDispOff = .text:0x80021838; // type:function size:0x34 +Hu3DModelShadowMapSet = .text:0x8002186C; // type:function size:0x88 +Hu3DModelShadowMapObjSet = .text:0x800218F4; // type:function size:0xBC +Hu3DModelAmbSet = .text:0x800219B0; // type:function size:0x34 +Hu3DModelHookSet = .text:0x800219E4; // type:function size:0xEC +Hu3DModelHookReset = .text:0x80021AD0; // type:function size:0xB4 +Hu3DModelHookObjReset = .text:0x80021B84; // type:function size:0xF0 +Hu3DModelProjectionSet = .text:0x80021C74; // type:function size:0x44 +Hu3DModelProjectionReset = .text:0x80021CB8; // type:function size:0x44 +Hu3DModelHiliteTypeSet = .text:0x80021CFC; // type:function size:0xBC +Hu3DModelReflectTypeSet = .text:0x80021DB8; // type:function size:0x30 +Hu3DCameraCreate = .text:0x80021DE8; // type:function size:0x134 +Hu3DCameraPerspectiveSet = .text:0x80021F1C; // type:function size:0x80 +Hu3DCameraViewportSet = .text:0x80021F9C; // type:function size:0x88 +Hu3DCameraScissorSet = .text:0x80022024; // type:function size:0x90 +Hu3DCameraPosSet = .text:0x800220B4; // type:function size:0x98 +Hu3DCameraPosSetV = .text:0x8002214C; // type:function size:0xB8 +Hu3DCameraKill = .text:0x80022204; // type:function size:0x78 +Hu3DCameraAllKill = .text:0x8002227C; // type:function size:0xD0 +Hu3DCameraSet = .text:0x8002234C; // type:function size:0xDC +Hu3DModelCameraInfoSet = .text:0x80022428; // type:function size:0x3C0 +Hu3DModelCameraCreate = .text:0x800227E8; // type:function size:0x88 +Hu3DCameraMotionOn = .text:0x80022870; // type:function size:0x58 +Hu3DCameraMotionStart = .text:0x800228C8; // type:function size:0xD4 +Hu3DCameraMotionOff = .text:0x8002299C; // type:function size:0x34 +Hu3DLighInit = .text:0x800229D0; // type:function size:0x74 +Hu3DGLightCreate = .text:0x80022A44; // type:function size:0xA0 +Hu3DGLightCreateV = .text:0x80022AE4; // type:function size:0x104 +Hu3DLLightCreate = .text:0x80022BE8; // type:function size:0xA8 +Hu3DLLightCreateV = .text:0x80022C90; // type:function size:0x17C +Hu3DGLightSpotSet = .text:0x80022E0C; // type:function size:0x44 +Hu3DLLightSpotSet = .text:0x80022E50; // type:function size:0x6C +Hu3DGLightInfinitytSet = .text:0x80022EBC; // type:function size:0x48 +Hu3DLLightInfinitytSet = .text:0x80022F04; // type:function size:0x70 +Hu3DGLightPointSet = .text:0x80022F74; // type:function size:0x58 +Hu3DLLightPointSet = .text:0x80022FCC; // type:function size:0x80 +Hu3DGLightKill = .text:0x8002304C; // type:function size:0x20 +Hu3DLLightKill = .text:0x8002306C; // type:function size:0xBC +Hu3DLightAllKill = .text:0x80023128; // type:function size:0x68 +Hu3DGLightColorSet = .text:0x80023190; // type:function size:0x38 +Hu3DLLightColorSet = .text:0x800231C8; // type:function size:0x60 +Hu3DGLightPosSetV = .text:0x80023228; // type:function size:0x70 +Hu3DLLightPosSetV = .text:0x80023298; // type:function size:0x9C +Hu3DGLightPosSet = .text:0x80023334; // type:function size:0x90 +Hu3DLLightPosSet = .text:0x800233C4; // type:function size:0xBC +Hu3DGLightPosAimSetV = .text:0x80023480; // type:function size:0x80 +Hu3DLLightPosAimSetV = .text:0x80023500; // type:function size:0xAC +Hu3DGLightPosAimSet = .text:0x800235AC; // type:function size:0xC4 +Hu3DLLightPosAimSet = .text:0x80023670; // type:function size:0xF0 +Hu3DGLightStaticSet = .text:0x80023760; // type:function size:0x54 +Hu3DLLightStaticSet = .text:0x800237B4; // type:function size:0x7C +Hu3DModelLightInfoSet = .text:0x80023830; // type:function size:0x4D0 +Hu3DLightSet = .text:0x80023D00; // type:function size:0x130 +lightSet = .text:0x80023E30; // type:function size:0x254 scope:local +Hu3DReflectMapSet = .text:0x80024084; // type:function size:0x68 +Hu3DReflectNoSet = .text:0x800240EC; // type:function size:0x8 +Hu3DFogSet = .text:0x800240F4; // type:function size:0x60 +Hu3DFogClear = .text:0x80024154; // type:function size:0x74 +Hu3DShadowCreate = .text:0x800241C8; // type:function size:0x188 +Hu3DShadowPosSet = .text:0x80024350; // type:function size:0x64 +Hu3DShadowTPLvlSet = .text:0x800243B4; // type:function size:0x2C +Hu3DShadowSizeSet = .text:0x800243E0; // type:function size:0x78 +Hu3DShadowExec = .text:0x80024458; // type:function size:0x860 +Hu3DProjectionCreate = .text:0x80024CB8; // type:function size:0x130 +Hu3DProjectionKill = .text:0x80024DE8; // type:function size:0x60 +Hu3DProjectionPosSet = .text:0x80024E48; // type:function size:0x88 +Hu3DProjectionTPLvlSet = .text:0x80024ED0; // type:function size:0x38 +Hu3DMipMapSet = .text:0x80024F08; // type:function size:0x1E8 +Hu3DMotionInit = .text:0x800250F0; // type:function size:0x48 +Hu3DMotionCreate = .text:0x80025138; // type:function size:0xA4 +Hu3DMotionModelCreate = .text:0x800251DC; // type:function size:0xC4 +Hu3DMotionKill = .text:0x800252A0; // type:function size:0x114 +Hu3DMotionAllKill = .text:0x800253B4; // type:function size:0x11C +Hu3DMotionSet = .text:0x800254D0; // type:function size:0xBC +Hu3DMotionOverlaySet = .text:0x8002558C; // type:function size:0x54 +Hu3DMotionOverlayReset = .text:0x800255E0; // type:function size:0x20 +Hu3DMotionOverlayTimeGet = .text:0x80025600; // type:function size:0x1C +Hu3DMotionOverlayTimeSet = .text:0x8002561C; // type:function size:0x1C +Hu3DMotionOverlaySpeedSet = .text:0x80025638; // type:function size:0x1C +Hu3DMotionShiftSet = .text:0x80025654; // type:function size:0x1F4 +Hu3DMotionShapeSet = .text:0x80025848; // type:function size:0xBC +Hu3DMotionShapeIDGet = .text:0x80025904; // type:function size:0x1C +Hu3DMotionShapeSpeedSet = .text:0x80025920; // type:function size:0x2C +Hu3DMotionShapeTimeSet = .text:0x8002594C; // type:function size:0x1C +Hu3DMotionShapeMaxTimeGet = .text:0x80025968; // type:function size:0x44 +Hu3DMotionShapeStartEndSet = .text:0x800259AC; // type:function size:0x30 +Hu3DMotionClusterSet = .text:0x800259DC; // type:function size:0x114 +Hu3DMotionClusterNoSet = .text:0x80025AF0; // type:function size:0xD0 +Hu3DMotionShapeReset = .text:0x80025BC0; // type:function size:0x20 +Hu3DMotionClusterReset = .text:0x80025BE0; // type:function size:0xC8 +Hu3DMotionIDGet = .text:0x80025CA8; // type:function size:0x2C +Hu3DMotionShiftIDGet = .text:0x80025CD4; // type:function size:0x2C +Hu3DMotionTimeSet = .text:0x80025D00; // type:function size:0xF4 +Hu3DMotionTimeGet = .text:0x80025DF4; // type:function size:0x2C +Hu3DMotionShiftTimeGet = .text:0x80025E20; // type:function size:0x2C +Hu3DMotionMaxTimeGet = .text:0x80025E4C; // type:function size:0xA8 +Hu3DMotionShiftMaxTimeGet = .text:0x80025EF4; // type:function size:0xA8 +Hu3DMotionShiftStartEndSet = .text:0x80025F9C; // type:function size:0x30 +Hu3DMotionMotionMaxTimeGet = .text:0x80025FCC; // type:function size:0x8C +Hu3DMotionStartEndSet = .text:0x80026058; // type:function size:0x30 +Hu3DMotionEndCheck = .text:0x80026088; // type:function size:0x170 +Hu3DMotionSpeedSet = .text:0x800261F8; // type:function size:0x2C +Hu3DMotionShiftSpeedSet = .text:0x80026224; // type:function size:0x2C +Hu3DMotionNoMotSet = .text:0x80026250; // type:function size:0x114 +Hu3DMotionNoMotReset = .text:0x80026364; // type:function size:0x5C +Hu3DMotionForceSet = .text:0x800263C0; // type:function size:0x108 +Hu3DMotionNext = .text:0x800264C8; // type:function size:0x798 +Hu3DMotionExec = .text:0x80026C60; // type:function size:0x534 +Hu3DCameraMotionExec = .text:0x80027194; // type:function size:0xC0 +Hu3DSubMotionExec = .text:0x80027254; // type:function size:0x2A8 +GetObjTRXPtr = .text:0x800274FC; // type:function size:0x14C scope:weak +SetObjMatMotion = .text:0x80027648; // type:function size:0x208 +SetObjAttrMotion = .text:0x80027850; // type:function size:0x218 +SetObjCameraMotion = .text:0x80027A68; // type:function size:0x558 +SetObjLightMotion = .text:0x80027FC0; // type:function size:0x1D8 +GetCurve = .text:0x80028198; // type:function size:0xD8 +GetConstant = .text:0x80028270; // type:function size:0x70 +GetLinear = .text:0x800282E0; // type:function size:0x110 +GetBezier = .text:0x800283F0; // type:function size:0x200 scope:weak +GetBitMap = .text:0x800285F0; // type:function size:0x64 +Hu3DJointMotion = .text:0x80028654; // type:function size:0xCC +JointModel_Motion = .text:0x80028720; // type:function size:0x124 +Hu3DMotionCalc = .text:0x80028844; // type:function size:0x19C +SearchObjectIndex = .text:0x800289E0; // type:function size:0x90 scope:local +SearchAttributeIndex = .text:0x80028A70; // type:function size:0x9C scope:local +Hu3DAnimInit = .text:0x80028B0C; // type:function size:0x7C +Hu3DAnimCreate = .text:0x80028B88; // type:function size:0x1D0 +Hu3DAnimLink = .text:0x80028D58; // type:function size:0x1C4 +Hu3DAnimKill = .text:0x80028F1C; // type:function size:0x104 +Hu3DAnimModelKill = .text:0x80029020; // type:function size:0x13C +Hu3DAnimAllKill = .text:0x8002915C; // type:function size:0x134 +Hu3DAnimAttrSet = .text:0x80029290; // type:function size:0x34 +Hu3DAnimAttrReset = .text:0x800292C4; // type:function size:0x38 +Hu3DAnimSpeedSet = .text:0x800292FC; // type:function size:0x2C +Hu3DAnimBankSet = .text:0x80029328; // type:function size:0x48 +Hu3DAnmNoSet = .text:0x80029370; // type:function size:0x38 +Hu3DAnimSet = .text:0x800293A8; // type:function size:0x240 +Hu3DAnimExec = .text:0x800295E8; // type:function size:0x474 +Hu3DTexScrollCreate = .text:0x80029A5C; // type:function size:0x1AC +Hu3DTexScrollKill = .text:0x80029C08; // type:function size:0xE0 +Hu3DTexScrollAllKill = .text:0x80029CE8; // type:function size:0x10C +Hu3DTexScrollPosSet = .text:0x80029DF4; // type:function size:0x44 +Hu3DTexScrollPosMoveSet = .text:0x80029E38; // type:function size:0xA4 +Hu3DTexScrollRotSet = .text:0x80029EDC; // type:function size:0x3C +Hu3DTexScrollRotMoveSet = .text:0x80029F18; // type:function size:0x5C +Hu3DTexScrollPauseDisableSet = .text:0x80029F74; // type:function size:0x54 +Hu3DParticleCreate = .text:0x80029FC8; // type:function size:0x348 +Hu3DParticleScaleSet = .text:0x8002A310; // type:function size:0x6C +Hu3DParticleZRotSet = .text:0x8002A37C; // type:function size:0x6C +Hu3DParticleColSet = .text:0x8002A3E8; // type:function size:0x74 +Hu3DParticleTPLvlSet = .text:0x8002A45C; // type:function size:0x80 +Hu3DParticleBlendModeSet = .text:0x8002A4DC; // type:function size:0x38 +Hu3DParticleHookSet = .text:0x8002A514; // type:function size:0x38 +Hu3DParticleAttrSet = .text:0x8002A54C; // type:function size:0x40 +Hu3DParticleAttrReset = .text:0x8002A58C; // type:function size:0x44 +Hu3DParticleCntSet = .text:0x8002A5D0; // type:function size:0x3C +Hu3DParticleAnimModeSet = .text:0x8002A60C; // type:function size:0x60 +particleFunc = .text:0x8002A66C; // type:function size:0xAD4 scope:local +Hu3DParManInit = .text:0x8002B140; // type:function size:0x48 +Hu3DParManCreate = .text:0x8002B188; // type:function size:0x1D4 +Hu3DParManLink = .text:0x8002B35C; // type:function size:0x17C +Hu3DParManKill = .text:0x8002B4D8; // type:function size:0x190 +Hu3DParManAllKill = .text:0x8002B668; // type:function size:0x1C4 +Hu3DParManPtrGet = .text:0x8002B82C; // type:function size:0x20 +Hu3DParManPosSet = .text:0x8002B84C; // type:function size:0x3C +Hu3DParManVecSet = .text:0x8002B888; // type:function size:0x3C +Hu3DParManRotSet = .text:0x8002B8C4; // type:function size:0x7C +Hu3DParManAttrSet = .text:0x8002B940; // type:function size:0x40 +Hu3DParManAttrReset = .text:0x8002B980; // type:function size:0x40 +Hu3DParManModelIDGet = .text:0x8002B9C0; // type:function size:0x34 +Hu3DParManTimeLimitSet = .text:0x8002B9F4; // type:function size:0x38 +Hu3DParManVacumeSet = .text:0x8002BA2C; // type:function size:0x74 +Hu3DParManColorSet = .text:0x8002BAA0; // type:function size:0x68 +ParManFunc = .text:0x8002BB08; // type:function size:0xBC0 scope:local +ParManHook = .text:0x8002C6C8; // type:function size:0x4B4 scope:local +CamMotionEx2 = .text:0x8002CB7C; // type:function size:0xAC +CamMotionEx = .text:0x8002CC28; // type:function size:0xA14 +SetObjCamMotion = .text:0x8002D63C; // type:function size:0x244 scope:local +InterpolateBMLine = .text:0x8002D880; // type:function size:0x40C +Hu3D2Dto3D = .text:0x8002DC8C; // type:function size:0x1D4 +Hu3D3Dto2D = .text:0x8002DE60; // type:function size:0x1D0 +Hu3DMtxTransGet = .text:0x8002E030; // type:function size:0x1C +Hu3DMtxRotGet = .text:0x8002E04C; // type:function size:0x540 +Hu3DMtxScaleGet = .text:0x8002E58C; // type:function size:0x1C8 +HuPerfInit = .text:0x8002E754; // type:function size:0x94 +HuPerfCreate = .text:0x8002E7E8; // type:function size:0x130 +HuPerfZero = .text:0x8002E918; // type:function size:0x40 +HuPerfBegin = .text:0x8002E958; // type:function size:0x7C +HuPerfEnd = .text:0x8002E9D4; // type:function size:0xA0 +DSCallbackFunc = .text:0x8002EA74; // type:function size:0x16C +omMasterInit = .text:0x8002EBE0; // type:function size:0x90 +omWatchOverlayProc = .text:0x8002EC70; // type:function size:0x170 scope:local +omOvlCallEx = .text:0x8002EDE0; // type:function size:0xE8 +omOvlGotoEx = .text:0x8002EEC8; // type:function size:0x60 +omOvlReturnEx = .text:0x8002EF28; // type:function size:0xF4 +omOvlKill = .text:0x8002F01C; // type:function size:0xB8 +omOvlHisChg = .text:0x8002F0D4; // type:function size:0xA0 +omOvlHisGet = .text:0x8002F174; // type:function size:0x78 +omInitObjMan = .text:0x8002F1EC; // type:function size:0x220 +omDestroyObjMan = .text:0x8002F40C; // type:function size:0x50 +omAddObjEx = .text:0x8002F45C; // type:function size:0x1DC +omInsertObj = .text:0x8002F638; // type:function size:0xF8 +omAddMember = .text:0x8002F730; // type:function size:0x84 +omDelObjEx = .text:0x8002F7B4; // type:function size:0x190 +omDelMember = .text:0x8002F944; // type:function size:0x88 +omMakeGroupEx = .text:0x8002F9CC; // type:function size:0xFC +omGetGroupMemberListEx = .text:0x8002FAC8; // type:function size:0x2C +omSetStatBit = .text:0x8002FAF4; // type:function size:0x10 +omResetStatBit = .text:0x8002FB04; // type:function size:0x14 +omSetTra = .text:0x8002FB18; // type:function size:0x10 +omSetRot = .text:0x8002FB28; // type:function size:0x10 +omSetSca = .text:0x8002FB38; // type:function size:0x10 +omMain = .text:0x8002FB48; // type:function size:0x2F8 +omAllPause = .text:0x8002FE40; // type:function size:0xE0 +omPauseChk = .text:0x8002FF20; // type:function size:0x2C +omCurrentOvlGet = .text:0x8002FF4C; // type:function size:0x8 +OSPanic = .text:0x8002FF54; // type:function size:0x150 +HuFaultInitXfbDirectDraw = .text:0x800300A4; // type:function size:0x118 +HuFaultSetXfbAddress = .text:0x800301BC; // type:function size:0x34 +XFB_WriteBackCache = .text:0x800301F0; // type:function size:0x98 scope:local +XFB_CR = .text:0x80030288; // type:function size:0x50 scope:local +XFB_puts = .text:0x800302D8; // type:function size:0xF4 scope:local +XFB_putcS = .text:0x800303CC; // type:function size:0x150 scope:local +XFB_putcProgressive = .text:0x8003051C; // type:function size:0x1F0 scope:local +XFB_putcInterlace = .text:0x8003070C; // type:function size:0x1B4 scope:local +GWInit = .text:0x800308C0; // type:function size:0x158 +GWGameStatReset = .text:0x80030A18; // type:function size:0x31C +GWMessDelayGet = .text:0x80030D34; // type:function size:0x4C +GWMGRecordSet = .text:0x80030D80; // type:function size:0x54 +GWMGRecordGet = .text:0x80030DD4; // type:function size:0x18 +GWCharColorGet = .text:0x80030DEC; // type:function size:0x140 +GWBoardPlayCountSet = .text:0x80030F2C; // type:function size:0x24 +GWBoardPlayCountAdd = .text:0x80030F50; // type:function size:0x38 +GWBoardPlayCountGet = .text:0x80030F88; // type:function size:0x14 +GWBoardMaxStarsSet = .text:0x80030F9C; // type:function size:0x1C +GWBoardMaxStarsGet = .text:0x80030FB8; // type:function size:0x18 +GWBoardMaxCoinsSet = .text:0x80030FD0; // type:function size:0x1C +GWBoardMaxCoinsGet = .text:0x80030FEC; // type:function size:0x18 +GWBoardWinCountInc = .text:0x80031004; // type:function size:0x5C +GWBoardWinCountGet = .text:0x80031060; // type:function size:0x1C +GWBoardWinCountSet = .text:0x8003107C; // type:function size:0x20 +GWMGAvailGet = .text:0x8003109C; // type:function size:0x6C +GWMGAvailSet = .text:0x80031108; // type:function size:0x5C +GWMGCustomGet = .text:0x80031164; // type:function size:0x6C +GWMGCustomSet = .text:0x800311D0; // type:function size:0x5C +GWMGCustomReset = .text:0x8003122C; // type:function size:0x60 +GWCoinsGet = .text:0x8003128C; // type:function size:0x18 +GWCoinsSet = .text:0x800312A4; // type:function size:0xB0 +GWCoinsAdd = .text:0x80031354; // type:function size:0xD0 +GWStarsSet = .text:0x80031424; // type:function size:0x6C +GWStarsAdd = .text:0x80031490; // type:function size:0x94 +GWStarsGet = .text:0x80031524; // type:function size:0x18 +GWTotalStarsSet = .text:0x8003153C; // type:function size:0x34 +GWTotalStarsAdd = .text:0x80031570; // type:function size:0x54 +GWTotalStarsGet = .text:0x800315C4; // type:function size:0x10 +omOutView = .text:0x800315D4; // type:function size:0x238 +omOutViewMulti = .text:0x8003180C; // type:function size:0x2C4 +omSystemKeyCheckSetup = .text:0x80031AD0; // type:function size:0x74 +omSystemKeyCheck = .text:0x80031B44; // type:function size:0x230 +omSysPauseEnable = .text:0x80031D74; // type:function size:0x8 +omSysPauseCtrl = .text:0x80031D7C; // type:function size:0x50 +omDLLDBGOut = .text:0x80031DCC; // type:function size:0x2C +omDLLInit = .text:0x80031DF8; // type:function size:0x6C +omDLLStart = .text:0x80031E64; // type:function size:0x154 +omDLLNumEnd = .text:0x80031FB8; // type:function size:0xB4 +omDLLEnd = .text:0x8003206C; // type:function size:0x13C +omDLLLink = .text:0x800321A8; // type:function size:0x138 +omDLLUnlink = .text:0x800322E0; // type:function size:0xB4 +omDLLSearch = .text:0x80032394; // type:function size:0xC8 +omDLLInfoDump = .text:0x8003245C; // type:function size:0xD0 +omDLLHeaderDump = .text:0x8003252C; // type:function size:0xE0 +frand = .text:0x8003260C; // type:function size:0xAC +frandf = .text:0x800326B8; // type:function size:0xD8 +frandmod = .text:0x80032790; // type:function size:0xB8 +HuAudInit = .text:0x80032848; // type:function size:0x170 +HuAudStreamPlay = .text:0x800329B8; // type:function size:0x8 +HuAudStreamVolSet = .text:0x800329C0; // type:function size:0x3C +HuAudStreamPauseOn = .text:0x800329FC; // type:function size:0x24 +HuAudStreamPauseOff = .text:0x80032A20; // type:function size:0x24 +HuAudStreamFadeOut = .text:0x80032A44; // type:function size:0x4 +HuAudAllStop = .text:0x80032A48; // type:function size:0x28 +HuAudFadeOut = .text:0x80032A70; // type:function size:0x3C +HuAudFXPlay = .text:0x80032AAC; // type:function size:0x80 +HuAudFXPlayVol = .text:0x80032B2C; // type:function size:0x48 +HuAudFXPlayVolPan = .text:0x80032B74; // type:function size:0x68 +HuAudFXStop = .text:0x80032BDC; // type:function size:0x2C +HuAudFXAllStop = .text:0x80032C08; // type:function size:0x28 +HuAudFXFadeOut = .text:0x80032C30; // type:function size:0x30 +HuAudFXPanning = .text:0x80032C60; // type:function size:0x50 +HuAudFXListnerSet = .text:0x80032CB0; // type:function size:0xA4 +HuAudFXListnerSetEX = .text:0x80032D54; // type:function size:0x134 +HuAudFXListnerUpdate = .text:0x80032E88; // type:function size:0x3C +HuAudFXEmiterPlay = .text:0x80032EC4; // type:function size:0x6C +HuAudFXEmiterUpDate = .text:0x80032F30; // type:function size:0x64 +HuAudFXListnerKill = .text:0x80032F94; // type:function size:0x20 +HuAudFXPauseAll = .text:0x80032FB4; // type:function size:0x2C +HuAudFXStatusGet = .text:0x80032FE0; // type:function size:0x28 +HuAudFXPitchSet = .text:0x80033008; // type:function size:0x54 +HuAudFXVolSet = .text:0x8003305C; // type:function size:0x58 +HuAudSeqPlay = .text:0x800330B4; // type:function size:0x5C +HuAudSeqStop = .text:0x80033110; // type:function size:0x48 +HuAudSeqFadeOut = .text:0x80033158; // type:function size:0x3C +HuAudSeqAllFadeOut = .text:0x80033194; // type:function size:0x5C +HuAudSeqAllStop = .text:0x800331F0; // type:function size:0x28 +HuAudSeqPauseAll = .text:0x80033218; // type:function size:0x2C +HuAudSeqPause = .text:0x80033244; // type:function size:0x54 +HuAudSeqMidiCtrlGet = .text:0x80033298; // type:function size:0x60 +HuAudSStreamPlay = .text:0x800332F8; // type:function size:0x64 +HuAudSStreamStop = .text:0x8003335C; // type:function size:0x38 +HuAudSStreamFadeOut = .text:0x80033394; // type:function size:0x3C +HuAudSStreamAllFadeOut = .text:0x800333D0; // type:function size:0x28 +HuAudSStreamAllStop = .text:0x800333F8; // type:function size:0x24 +HuAudSStreamStatGet = .text:0x8003341C; // type:function size:0x28 +HuAudDllSndGrpSet = .text:0x80033444; // type:function size:0x104 +HuAudSndGrpSetSet = .text:0x80033548; // type:function size:0x1A4 +HuAudSndGrpSet = .text:0x800336EC; // type:function size:0x60 +HuAudSndCommonGrpSet = .text:0x8003374C; // type:function size:0x154 +HuAudAUXSet = .text:0x800338A0; // type:function size:0x58 +HuAudAUXVolSet = .text:0x800338F8; // type:function size:0xC +HuAudVoiceInit = .text:0x80033904; // type:function size:0x298 +HuAudPlayerVoicePlay = .text:0x80033B9C; // type:function size:0x50 +HuAudPlayerVoicePlayPos = .text:0x80033BEC; // type:function size:0x58 +HuAudPlayerVoicePlayEntry = .text:0x80033C44; // type:function size:0x50 +HuAudCharVoicePlay = .text:0x80033C94; // type:function size:0xAC +HuAudCharVoicePlayPos = .text:0x80033D40; // type:function size:0xD0 +HuAudCharVoicePlayEntry = .text:0x80033E10; // type:function size:0x90 +HuSePlay = .text:0x80033EA0; // type:function size:0x68 scope:local +InitEnvelope = .text:0x80033F08; // type:function size:0x1A4 +SetEnvelopMtx = .text:0x800340AC; // type:function size:0x23C scope:local +EnvelopeProc = .text:0x800342E8; // type:function size:0x80 +InitVtxParm = .text:0x80034368; // type:function size:0x50 +SetEnvelopMain = .text:0x800343B8; // type:function size:0x158 scope:local +SetEnvelop = .text:0x80034510; // type:function size:0x9F0 scope:local +SetMtx = .text:0x80034F00; // type:function size:0x334 scope:local +SetRevMtx = .text:0x80035234; // type:function size:0x11C scope:local +SearchSklenton = .text:0x80035350; // type:function size:0x78 scope:local +MGSeqInit = .text:0x800353C8; // type:function size:0xBC +MGSeqMain = .text:0x80035484; // type:function size:0x188 +CreateSeq = .text:0x8003560C; // type:function size:0x1A4 scope:local +MGSeqCreate = .text:0x800357B0; // type:function size:0x100 +MGSeqStatGet = .text:0x800358B0; // type:function size:0x88 +MGSeqPosSet = .text:0x80035938; // type:function size:0x4C +MGSeqParamSet = .text:0x80035984; // type:function size:0x4C +MGSeqKill = .text:0x800359D0; // type:function size:0x58 +MGSeqKillAll = .text:0x80035A28; // type:function size:0x3C +MGSeqDoneCheck = .text:0x80035A64; // type:function size:0xA4 +MGSeqStub = .text:0x80035B08; // type:function size:0x4 +MGSeqSprKill = .text:0x80035B0C; // type:function size:0x8C +SeqInitTimer = .text:0x80035B98; // type:function size:0x2F0 scope:local +SeqUpdateTimer = .text:0x80035E88; // type:function size:0x69C scope:local +SeqInitType2 = .text:0x80036524; // type:function size:0x3D8 +SeqUpdateType2 = .text:0x800368FC; // type:function size:0x2F8 +fn_80036BC8 = .text:0x80036BF4; // type:function size:0x188 +SeqMakeWord = .text:0x80036D7C; // type:function size:0x1D0 scope:local +SeqLoadFontChar = .text:0x80036F4C; // type:function size:0x26C scope:local +SeqInitMGBasic = .text:0x800371B8; // type:function size:0x194 scope:local +SeqUpdateMGBasic = .text:0x8003734C; // type:function size:0x9D0 scope:local +SeqInitMGCommon = .text:0x80037D1C; // type:function size:0x2A4 scope:local +SeqUpdateMGBattle = .text:0x80037FC0; // type:function size:0xDA4 scope:local +SeqUpdateMG1vs3 = .text:0x80038D64; // type:function size:0xDA4 scope:local +SeqUpdateMGStory = .text:0x80039B08; // type:function size:0xBB8 scope:local +SeqUpdateMG2vs2 = .text:0x8003A6C0; // type:function size:0xAB4 scope:local +SeqInitFlip = .text:0x8003B174; // type:function size:0x3C4 scope:local +SeqUpdateFlip = .text:0x8003B538; // type:function size:0x91C scope:local +SeqUpdateMGBowser = .text:0x8003BE54; // type:function size:0xC84 scope:local +SeqInitDraw = .text:0x8003CAD8; // type:function size:0xDC scope:local +SeqUpdateDraw = .text:0x8003CBB4; // type:function size:0x3DC scope:local +SeqInitWin = .text:0x8003CF90; // type:function size:0x6D0 scope:local +SeqUpdateWin = .text:0x8003D660; // type:function size:0x708 scope:local +SeqInitRecord = .text:0x8003DD68; // type:function size:0x764 scope:local +SeqUpdateRecord = .text:0x8003E4CC; // type:function size:0x304 scope:local +MGSeqPauseInit = .text:0x8003E7D0; // type:function size:0x6C +PauseProc = .text:0x8003E83C; // type:function size:0x94C scope:local +MGSeqPauseKill = .text:0x8003F188; // type:function size:0xC +MGSeqPauseEnableCtrl = .text:0x8003F194; // type:function size:0x40 +MGSeqPracticeInit = .text:0x8003F1D4; // type:function size:0xDC +PracticeProc = .text:0x8003F2B0; // type:function size:0x234 scope:local +SeqPlayStartFX = .text:0x8003F4E4; // type:function size:0xD4 scope:local +MGSeqPracticeExitCheck = .text:0x8003F5B8; // type:function size:0x128 +espInit = .text:0x8003F6E0; // type:function size:0xA0 +espEntry = .text:0x8003F780; // type:function size:0x1B0 +espKill = .text:0x8003F930; // type:function size:0x98 +espGrpIDGet = .text:0x8003F9C8; // type:function size:0x8 +espDispOn = .text:0x8003F9D0; // type:function size:0x44 +espDispOff = .text:0x8003FA14; // type:function size:0x44 +espAttrSet = .text:0x8003FA58; // type:function size:0x48 +espAttrReset = .text:0x8003FAA0; // type:function size:0x48 +espPosSet = .text:0x8003FAE8; // type:function size:0x50 +espScaleSet = .text:0x8003FB38; // type:function size:0x50 +espZRotSet = .text:0x8003FB88; // type:function size:0x48 +espTPLvlSet = .text:0x8003FBD0; // type:function size:0x48 +espColorSet = .text:0x8003FC18; // type:function size:0x58 +espSpeedSet = .text:0x8003FC70; // type:function size:0x48 +espBankSet = .text:0x8003FCB8; // type:function size:0x48 +espDrawNoSet = .text:0x8003FD00; // type:function size:0x48 +espPriSet = .text:0x8003FD48; // type:function size:0x48 +fn_8003FF68 = .text:0x8003FD90; // type:function size:0x268 +fn_800401D0 = .text:0x8003FFF8; // type:function size:0x12C +fn_800402FC = .text:0x80040124; // type:function size:0x78 +fn_80040374 = .text:0x8004019C; // type:function size:0x98 +fn_8004040C = .text:0x80040234; // type:function size:0xF4 +GetClusterCurve = .text:0x80040328; // type:function size:0xA8 +GetClusterWeightCurve = .text:0x800403D0; // type:function size:0xA8 +SetClusterMain = .text:0x80040478; // type:function size:0x3A0 scope:local +ClusterProc = .text:0x80040818; // type:function size:0x160 +ClusterMotionExec = .text:0x80040978; // type:function size:0x210 +SetShapeMain = .text:0x80040B88; // type:function size:0x36C scope:local +ShapeProc = .text:0x80040EF4; // type:function size:0xA4 +WipeInit = .text:0x80040F98; // type:function size:0xB4 +WipeExecAlways = .text:0x8004104C; // type:function size:0x288 +WipeCreate = .text:0x800412D4; // type:function size:0x12C +WipeColorSet = .text:0x80041400; // type:function size:0x58 +WipeStatGet = .text:0x80041458; // type:function size:0x10 +WipeDummyFade = .text:0x80041468; // type:function size:0x8 scope:local +WipeNormalFade = .text:0x80041470; // type:function size:0xFC scope:local +WipeColorFill = .text:0x8004156C; // type:function size:0x31C scope:local +WipeCrossFade = .text:0x80041888; // type:function size:0x184 scope:local +WipeFrameStill = .text:0x80041A0C; // type:function size:0x4C8 scope:local +HuWindowInit = .text:0x80041ED4; // type:function size:0x74 +HuWinInit = .text:0x80041F48; // type:function size:0x214 +HuWinCreate = .text:0x8004215C; // type:function size:0x544 +HuWinKill = .text:0x800426A0; // type:function size:0xA4 +HuWinAllKill = .text:0x80042744; // type:function size:0x1AC +MesDispFunc = .text:0x800428F0; // type:function size:0x7C4 scope:local +winBGMake = .text:0x800430B4; // type:function size:0x480 scope:local +HuWinProc = .text:0x80043534; // type:function size:0xF4 scope:local +HuWinDrawMes = .text:0x80043628; // type:function size:0xF60 scope:local +HuWinCR = .text:0x80044588; // type:function size:0x54 +_HuWinHomeClear = .text:0x800445DC; // type:function size:0x90 +HuWinHomeClear = .text:0x8004466C; // type:function size:0xA4 +HuWinKeyWaitEntry = .text:0x80044710; // type:function size:0x88 +HuWinKeyWait = .text:0x80044798; // type:function size:0x10C scope:local +HuWinSpcFontEntry = .text:0x800448A4; // type:function size:0x1A4 scope:local +HuWinSpcFontClear = .text:0x80044A48; // type:function size:0x80 scope:local +HuWinChoice = .text:0x80044AC8; // type:function size:0xA9C scope:local +HuWinActivePadGet = .text:0x80045564; // type:function size:0x68 +HuWinActiveKeyGetX = .text:0x800455CC; // type:function size:0xE8 +HuWinPosSet = .text:0x800456B4; // type:function size:0x6C +HuWinScaleSet = .text:0x80045720; // type:function size:0x6C +HuWinZRotSet = .text:0x8004578C; // type:function size:0x58 +HuWinCenterPosSet = .text:0x800457E4; // type:function size:0xAC +HuWinDrawNoSet = .text:0x80045890; // type:function size:0x4C +HuWinScissorSet = .text:0x800458DC; // type:function size:0x64 +HuWinPriSet = .text:0x80045940; // type:function size:0xB8 +HuWinAttrSet = .text:0x800459F8; // type:function size:0x34 +HuWinAttrReset = .text:0x80045A2C; // type:function size:0x34 +HuWinStatGet = .text:0x80045A60; // type:function size:0x2C +HuWinMesColSet = .text:0x80045A8C; // type:function size:0x3C +HuWinMesPalSet = .text:0x80045AC8; // type:function size:0x58 +HuWinBGTPLvlSet = .text:0x80045B20; // type:function size:0x50 +HuWinBGColSet = .text:0x80045B70; // type:function size:0x60 +HuWinMesSpeedSet = .text:0x80045BD0; // type:function size:0x2C +HuWinMesRead = .text:0x80045BFC; // type:function size:0xA4 +HuWinMesSet = .text:0x80045CA0; // type:function size:0x398 +HuWinInsertMesSet = .text:0x80046038; // type:function size:0xD8 +HuWinChoiceGet = .text:0x80046110; // type:function size:0x27C +HuWinChoiceNumGet = .text:0x8004638C; // type:function size:0x2C +HuWinChoiceDisable = .text:0x800463B8; // type:function size:0x38 +HuWinChoiceNowGet = .text:0x800463F0; // type:function size:0x40 +HuWinMesWait = .text:0x80046430; // type:function size:0x50 +HuWinAnimSet = .text:0x80046480; // type:function size:0x8C +HuWinSprSet = .text:0x8004650C; // type:function size:0xF0 +HuWinSprPosSet = .text:0x800465FC; // type:function size:0x88 +HuWinSprPriSet = .text:0x80046684; // type:function size:0x6C +HuWinSprIDGet = .text:0x800466F0; // type:function size:0x38 +HuWinSprKill = .text:0x80046728; // type:function size:0x68 +HuWinDispOff = .text:0x80046790; // type:function size:0x90 +HuWinDispOn = .text:0x80046820; // type:function size:0x90 +HuWinComKeyWait = .text:0x800468B0; // type:function size:0xC0 +HuWinComKeySet = .text:0x80046970; // type:function size:0x44 +_HuWinComKeySet = .text:0x800469B4; // type:function size:0x98 +HuWinComKeyGet = .text:0x80046A4C; // type:function size:0x1D4 +HuWinComKeyReset = .text:0x80046C20; // type:function size:0x10 +HuWinMesMaxSizeGet = .text:0x80046C30; // type:function size:0x17C +HuWinInsertMesSizeGet = .text:0x80046DAC; // type:function size:0x60 +HuWinMesSizeCancelCRSet = .text:0x80046E0C; // type:function size:0x8 +HuWinMesMaxSizeBetGet = .text:0x80046E14; // type:function size:0x120 +GetMesMaxSizeSub = .text:0x80046F34; // type:function size:0x2C0 scope:local +GetMesMaxSizeSub2 = .text:0x800471F4; // type:function size:0x1CC scope:local +HuWinKeyWaitNumGet = .text:0x800473C0; // type:function size:0x88 +HuWinPushKeySet = .text:0x80047448; // type:function size:0x2C +HuWinDisablePlayerSet = .text:0x80047474; // type:function size:0x34 +HuWinDisablePlayerReset = .text:0x800474A8; // type:function size:0x38 +HuWinExCreate = .text:0x800474E0; // type:function size:0x4C +HuWinExCreateStyled = .text:0x8004752C; // type:function size:0x228 +HuWinExAnimIn = .text:0x80047754; // type:function size:0x3B0 +HuWinExAnimOut = .text:0x80047B04; // type:function size:0x304 +HuWinExCleanup = .text:0x80047E08; // type:function size:0xA4 +HuWinExAnimPopIn = .text:0x80047EAC; // type:function size:0x264 +MessData_MesPtrGet = .text:0x80048110; // type:function size:0xE8 +HuCardInit = .text:0x800481F8; // type:function size:0x34 +HuCardCheck = .text:0x8004822C; // type:function size:0xC4 +HuCardSlotCheck = .text:0x800482F0; // type:function size:0x58 +HuCardMount = .text:0x80048348; // type:function size:0xEC +HuCardUnMount = .text:0x80048434; // type:function size:0x28 +HuCardFormat = .text:0x8004845C; // type:function size:0x50 +MountCallBack = .text:0x800484AC; // type:function size:0x1C scope:local +HuCardOpen = .text:0x800484C8; // type:function size:0x70 +HuCardRead = .text:0x80048538; // type:function size:0x68 +HuCardCreate = .text:0x800485A0; // type:function size:0x100 +HuCardClose = .text:0x800486A0; // type:function size:0x38 +HuCardWrite = .text:0x800486D8; // type:function size:0x50 +HuCardDelete = .text:0x80048728; // type:function size:0x40 +HuCardSectorSizeGet = .text:0x80048768; // type:function size:0x4C +HuCardFreeSpaceGet = .text:0x800487B4; // type:function size:0x48 +HuARInit = .text:0x800487FC; // type:function size:0x148 +HuARMalloc = .text:0x80048944; // type:function size:0x16C +HuARFree = .text:0x80048AB0; // type:function size:0x16C +HuAMemDump = .text:0x80048C1C; // type:function size:0xA8 +HuAR_DVDtoARAM = .text:0x80048CC4; // type:function size:0x160 +ArqCallBack = .text:0x80048E24; // type:function size:0x10 scope:local +HuAR_MRAMtoARAM = .text:0x80048E34; // type:function size:0x2C +HuAR_MRAMtoARAM2 = .text:0x80048E60; // type:function size:0x140 +HuAR_ARAMtoMRAM = .text:0x80048FA0; // type:function size:0x2C +HuAR_ARAMtoMRAMNum = .text:0x80048FCC; // type:function size:0x1F0 +ArqCallBackAM = .text:0x800491BC; // type:function size:0x44 scope:local +HuARDMACheck = .text:0x80049200; // type:function size:0x8 +HuARDirCheck = .text:0x80049208; // type:function size:0x58 +HuARDirFree = .text:0x80049260; // type:function size:0x68 +HuAR_ARAMtoMRAMFileRead = .text:0x800492C8; // type:function size:0x390 +ArqCallBackAMFileRead = .text:0x80049658; // type:function size:0x10 scope:local +CharManInit = .text:0x80049668; // type:function size:0x134 +CharAMemPtrGet = .text:0x8004979C; // type:function size:0x1C +CharARAMOpen = .text:0x800497B8; // type:function size:0x98 +CharARAMClose = .text:0x80049850; // type:function size:0x58 +CharKill = .text:0x800498A8; // type:function size:0x428 +CharKillAll = .text:0x80049CD0; // type:function size:0x3C +CharModelCreate = .text:0x80049D0C; // type:function size:0x180 +UpdateChar = .text:0x80049E8C; // type:function size:0x20C scope:local +UpdateCharAnim = .text:0x8004A098; // type:function size:0x173C scope:local +PlayCharVoice = .text:0x8004B7D4; // type:function size:0xB0 scope:local +InitEffect = .text:0x8004B884; // type:function size:0x254 scope:local +CreateEffectDust = .text:0x8004BAD8; // type:function size:0xB0 scope:local +CreateEffectSmoke = .text:0x8004BB88; // type:function size:0xB0 scope:local +CreateEffectDot = .text:0x8004BC38; // type:function size:0xB0 scope:local +CreateEffectStar = .text:0x8004BCE8; // type:function size:0xB0 scope:local +CreateEffectWarn = .text:0x8004BD98; // type:function size:0xB0 scope:local +CreateEffectBird = .text:0x8004BE48; // type:function size:0xB0 scope:local +CreateEffect = .text:0x8004BEF8; // type:function size:0x1CC scope:local +UpdateEffect = .text:0x8004C0C4; // type:function size:0x4A0 scope:local +RotateEffect = .text:0x8004C564; // type:function size:0x1E8 +PlayEffectSound = .text:0x8004C74C; // type:function size:0x344 +CharModelMotionCreate = .text:0x8004CA90; // type:function size:0x1D0 +CharModelMotionIndexSet = .text:0x8004CC60; // type:function size:0x88 +CharModelMotionKill = .text:0x8004CCE8; // type:function size:0x9C +CharModelMotionDataClose = .text:0x8004CD84; // type:function size:0x2B8 +CharModelDataClose = .text:0x8004D03C; // type:function size:0x430 +CharModelKill = .text:0x8004D46C; // type:function size:0x244 +CharModelMotionSet = .text:0x8004D6B0; // type:function size:0x7C +CharModelTexAnimSet = .text:0x8004D72C; // type:function size:0x17C +CharModelTexNameGet = .text:0x8004D8A8; // type:function size:0x7C +CharModelHookNameGet = .text:0x8004D924; // type:function size:0x7C +CharModelMotionTimeSet = .text:0x8004D9A0; // type:function size:0x4C +CharModelMotionTimeGet = .text:0x8004D9EC; // type:function size:0x44 +CharModelMotionMaxTimeGet = .text:0x8004DA30; // type:function size:0x44 +CharModelMotionEndCheck = .text:0x8004DA74; // type:function size:0x44 +CharModelMotionShiftIDGet = .text:0x8004DAB8; // type:function size:0x44 +CharModelMotionShiftSet = .text:0x8004DAFC; // type:function size:0x84 +CharModelMotionShiftTimeGet = .text:0x8004DB80; // type:function size:0x44 +CharModelMotionSpeedSet = .text:0x8004DBC4; // type:function size:0x4C +CharModelLayerSetAll = .text:0x8004DC10; // type:function size:0x80 +CharModelItemHookCreate = .text:0x8004DC90; // type:function size:0x1D4 +UpdateItemHook = .text:0x8004DE64; // type:function size:0x484 scope:local +CharModelEffectCreate = .text:0x8004E2E8; // type:function size:0x3FC +OrbitEffect = .text:0x8004E6E4; // type:function size:0x168 scope:local +CharModelCoinEffectCreate = .text:0x8004E84C; // type:function size:0x1A0 +fn_8004EC74 = .text:0x8004E9EC; // type:function size:0x130 +fn_8004EDA4 = .text:0x8004EB1C; // type:function size:0x2B4 +fn_8004F058 = .text:0x8004EDD0; // type:function size:0xE4 +fn_8004F13C = .text:0x8004EEB4; // type:function size:0x2B4 +CharModelLayerSetAll2 = .text:0x8004F168; // type:function size:0x80 +CharModelVoiceEnableSet = .text:0x8004F1E8; // type:function size:0xBC +fn_8004F52C = .text:0x8004F2A4; // type:function size:0x4C +CharModelEffectEnableSet = .text:0x8004F2F0; // type:function size:0xB0 +CharModelEffectNpcInit = .text:0x8004F3A0; // type:function size:0x2CC +CharModelEffectNpcInitSilent = .text:0x8004F66C; // type:function size:0x2CC +UpdateNpcEffect = .text:0x8004F938; // type:function size:0xF80 scope:local +CharModelStepTypeSet = .text:0x800508B8; // type:function size:0x30 +PlayStepFX = .text:0x800508E8; // type:function size:0xEC scope:local +MapWall = .text:0x800509D4; // type:function size:0x1B8 +MapWallCheck = .text:0x80050B8C; // type:function size:0x110 +MapPos = .text:0x80050C9C; // type:function size:0x2A8 +PolygonRangeCheck = .text:0x80050F44; // type:function size:0x38C scope:local +DefIfnnerMapCircle = .text:0x800512D0; // type:function size:0x470 scope:local +CalcPPLength = .text:0x80051740; // type:function size:0x5D4 scope:local +MapIflnnerCalc = .text:0x80051D14; // type:function size:0xF4 scope:local +MapCalcPoint = .text:0x80051E08; // type:function size:0x388 scope:local +AreaCheck = .text:0x80052190; // type:function size:0x148 scope:local +MapIflnnerTriangle = .text:0x800522D8; // type:function size:0x518 scope:local +MapIflnnerQuadrangle = .text:0x800527F0; // type:function size:0x994 scope:local +GetPolygonCircleMtx = .text:0x80053184; // type:function size:0xC28 scope:local +PrecalcPntToTriangle = .text:0x80053DAC; // type:function size:0x43C scope:local +Hitcheck_Triangle_with_Sphere = .text:0x800541E8; // type:function size:0x100 +Hitcheck_Quadrangle_with_Sphere = .text:0x800542E8; // type:function size:0x19C +DefSetHitFace = .text:0x80054484; // type:function size:0x4C scope:local +AppendAddXZ = .text:0x800544D0; // type:function size:0x184 +CharRotInv = .text:0x80054654; // type:function size:0x124 +THPSimpleInit = .text:0x80054778; // type:function size:0x124 +THPSimpleQuit = .text:0x8005489C; // type:function size:0x54 +THPSimpleOpen = .text:0x800548F0; // type:function size:0x408 +THPSimpleClose = .text:0x80054CF8; // type:function size:0xC0 +THPSimpleCalcNeedMemory = .text:0x80054DB8; // type:function size:0x184 +THPSimpleSetBuffer = .text:0x80054F3C; // type:function size:0x240 +__THPSimpleDVDCallback = .text:0x8005517C; // type:function size:0x2A4 scope:local +THPSimplePreLoad = .text:0x80055420; // type:function size:0x2A4 +THPSimpleAudioStart = .text:0x800556C4; // type:function size:0x14 +THPSimpleAudioStop = .text:0x800556D8; // type:function size:0x14 +THPSimpleLoadStop = .text:0x800556EC; // type:function size:0x1B8 +THPSimpleDecode = .text:0x800558A4; // type:function size:0x47C +VideoDecode = .text:0x80055D20; // type:function size:0xD8 scope:local +THPSimpleDrawCurrentFrame = .text:0x80055DF8; // type:function size:0x104 +MixAudio = .text:0x80055EFC; // type:function size:0x5F8 scope:local +THPSimpleGetVideoInfo = .text:0x800564F4; // type:function size:0x58 +THPSimpleGetTotalFrame = .text:0x8005654C; // type:function size:0x2C +THPAudioMixCallback = .text:0x80056578; // type:function size:0x188 scope:local +THPSimpleSetVolume = .text:0x80056700; // type:function size:0x17C +THPGXRestore = .text:0x8005687C; // type:function size:0x130 +THPGXYuv2RgbSetup = .text:0x800569AC; // type:function size:0x5A0 +THPGXYuv2RgbDraw = .text:0x80056F4C; // type:function size:0x288 +HuTHPSprCreateVol = .text:0x800571D4; // type:function size:0x108 +HuTHPSprCreate = .text:0x800572DC; // type:function size:0x110 +HuTHP3DCreateVol = .text:0x800573EC; // type:function size:0xF8 +HuTHP3DCreate = .text:0x800574E4; // type:function size:0x100 +HuTHPStop = .text:0x800575E4; // type:function size:0xC +HuTHPClose = .text:0x800575F0; // type:function size:0xC +HuTHPRestart = .text:0x800575FC; // type:function size:0xC +HuTHPEndCheck = .text:0x80057608; // type:function size:0x54 +HuTHPFrameGet = .text:0x8005765C; // type:function size:0x8 +HuTHPTotalFrameGet = .text:0x80057664; // type:function size:0x20 +HuTHPSetVolume = .text:0x80057684; // type:function size:0x30 +THPTestProc = .text:0x800576B4; // type:function size:0x27C scope:local +THPViewFunc = .text:0x80057930; // type:function size:0xA4 scope:local +THPViewSprFunc = .text:0x800579D4; // type:function size:0x17C scope:local +THPDecodeFunc = .text:0x80057B50; // type:function size:0x4C scope:local +omMgIndexGet = .text:0x80057B9C; // type:function size:0x5C +omGameSysInit = .text:0x80057BF8; // type:function size:0xF4 +omVibrate = .text:0x80057CEC; // type:function size:0x9C +_CheckFlag = .text:0x80057D88; // type:function size:0xA0 +_SetFlag = .text:0x80057E28; // type:function size:0xA4 +_ClearFlag = .text:0x80057ECC; // type:function size:0xA4 +_InitFlag = .text:0x80057F70; // type:function size:0x30 +SLFileOpen = .text:0x80057FA0; // type:function size:0x140 +SLFileCreate = .text:0x800580E0; // type:function size:0x280 +SLFileWrite = .text:0x80058360; // type:function size:0x10C +SLFileRead = .text:0x8005846C; // type:function size:0x84 +SLFileClose = .text:0x800584F0; // type:function size:0x4C +SLCurSlotNoSet = .text:0x8005853C; // type:function size:0x8 +SLCurBoxNoSet = .text:0x80058544; // type:function size:0xC +SLSaveFlagSet = .text:0x80058550; // type:function size:0x40 +SLSaveFlagGet = .text:0x80058590; // type:function size:0x8 +SLSaveDataMake = .text:0x80058598; // type:function size:0x154 +SLSaveDataInfoSet = .text:0x800586EC; // type:function size:0x218 +SLCommonSet = .text:0x80058904; // type:function size:0x254 +SLSaveBoard = .text:0x80058B58; // type:function size:0x8C +SLSaveBoardStory = .text:0x80058BE4; // type:function size:0x8C +SLSave = .text:0x80058C70; // type:function size:0x370 +SLCreateSaveWin = .text:0x80058FE0; // type:function size:0xDC scope:local +SLKillSaveWin = .text:0x800590BC; // type:function size:0x48 scope:local +SLLoad = .text:0x80059104; // type:function size:0x110 +SLLoadGameStat = .text:0x80059214; // type:function size:0x38 +SLLoadBoard = .text:0x8005924C; // type:function size:0x1A0 +SLLoadBoardStory = .text:0x800593EC; // type:function size:0x184 +SLSerialNoGet = .text:0x80059570; // type:function size:0x28 +SLSerialNoCheck = .text:0x80059598; // type:function size:0xA0 +SLCheckSumCheck = .text:0x80059638; // type:function size:0x60 +SLCheckSumGet = .text:0x80059698; // type:function size:0x54 +SLCheckSumSet = .text:0x800596EC; // type:function size:0x90 +SLStatSet = .text:0x8005977C; // type:function size:0x1D4 +SLCardMount = .text:0x80059950; // type:function size:0x12C +SLFormat = .text:0x80059A7C; // type:function size:0x594 +SLMessOut = .text:0x8005A010; // type:function size:0x3FC +HuSoftResetButtonCheck = .text:0x8005A40C; // type:function size:0x50 +HuDvdErrDispIntFunc = .text:0x8005A45C; // type:function size:0x28 +HuDvdErrDispInit = .text:0x8005A484; // type:function size:0x208 +ToeThreadFunc = .text:0x8005A68C; // type:function size:0xD8 scope:local +ToeDispCheck = .text:0x8005A764; // type:function size:0x128 scope:local +_HuDvdErrDispXFB = .text:0x8005A88C; // type:function size:0x348 scope:local +HuRestartSystem = .text:0x8005ABD4; // type:function size:0xDC +HuSoftResetCheck = .text:0x8005ACB0; // type:function size:0xFC scope:local +HuSoftResetCountCheck = .text:0x8005ADAC; // type:function size:0xCC scope:local +HuSoftResetPostProc = .text:0x8005AE78; // type:function size:0x78 scope:local +BoardObjectSetup = .text:0x8005AEF0; // type:function size:0x2E0 +InitBoardFunc = .text:0x8005B1D0; // type:function size:0x64 scope:local +ExecBoardFunc = .text:0x8005B234; // type:function size:0x9C scope:local +KillBoardFunc = .text:0x8005B2D0; // type:function size:0xCC scope:local +BoardKill = .text:0x8005B39C; // type:function size:0xAC +BoardIsKill = .text:0x8005B448; // type:function size:0x48 +BoardPauseDisableSet = .text:0x8005B490; // type:function size:0x74 +BoardPauseDisableGet = .text:0x8005B504; // type:function size:0x48 +BoardSaveInit = .text:0x8005B54C; // type:function size:0x524 +BoardStoryConfigSet = .text:0x8005BA70; // type:function size:0x160 +BoardPartyConfigSet = .text:0x8005BBD0; // type:function size:0x160 +DestroyMainFunc = .text:0x8005BD30; // type:function size:0xC scope:local +MainFunc = .text:0x8005BD3C; // type:function size:0x7D0 scope:local +BoardTurnNext = .text:0x8005C50C; // type:function size:0x8C +ExecTurnStart = .text:0x8005C598; // type:function size:0x28C scope:local +BoardNextOvlSet = .text:0x8005C824; // type:function size:0xC4 +BoardStartCheck = .text:0x8005C8E8; // type:function size:0x8C +CreateBoard = .text:0x8005C974; // type:function size:0x424 scope:local +DestroyBoard = .text:0x8005CD98; // type:function size:0x128 scope:local +BoardLightHookSet = .text:0x8005CEC0; // type:function size:0xC +BoardLightSetExec = .text:0x8005CECC; // type:function size:0x44 +BoardLightResetExec = .text:0x8005CF10; // type:function size:0x50 +BoardCameraBackup = .text:0x8005CF60; // type:function size:0x3C +BoardCameraRestore = .text:0x8005CF9C; // type:function size:0x48 +BoardCameraScissorSet = .text:0x8005CFE4; // type:function size:0x54 +BoardCameraViewSet = .text:0x8005D038; // type:function size:0x2AC +BoardCameraPosGet = .text:0x8005D2E4; // type:function size:0x48 +BoardCameraTargetGet = .text:0x8005D32C; // type:function size:0x48 +BoardCameraRotGet = .text:0x8005D374; // type:function size:0x48 +BoardCameraZoomGet = .text:0x8005D3BC; // type:function size:0x20 +BoardCameraDirGet = .text:0x8005D3DC; // type:function size:0xA8 +BoardCameraPointDirGet = .text:0x8005D484; // type:function size:0xBC +BoardCameraMaskSet = .text:0x8005D540; // type:function size:0x28 +BoardCameraMoveSet = .text:0x8005D568; // type:function size:0x50 +BoardCameraOffsetSet = .text:0x8005D5B8; // type:function size:0x30 +BoardCameraTargetPlayerSet = .text:0x8005D5E8; // type:function size:0xB4 +BoardCameraTargetModelSet = .text:0x8005D69C; // type:function size:0x40 +BoardCameraTargetSpaceSet = .text:0x8005D6DC; // type:function size:0x44 +BoardCameraPosCalcFuncSet = .text:0x8005D720; // type:function size:0x28 +BoardCameraQuakeSet = .text:0x8005D748; // type:function size:0x3C +BoardCameraQuakeReset = .text:0x8005D784; // type:function size:0x3C +BoardCameraTargetSet = .text:0x8005D7C0; // type:function size:0x28 +BoardCameraPosSet = .text:0x8005D7E8; // type:function size:0x28 +BoardCameraXRotZoomSet = .text:0x8005D810; // type:function size:0x24 +BoardCameraZoomSet = .text:0x8005D834; // type:function size:0x20 +BoardCameraRotSet = .text:0x8005D854; // type:function size:0x24 +BoardCameraNearFarSet = .text:0x8005D878; // type:function size:0x24 +BoardCameraNearFarGet = .text:0x8005D89C; // type:function size:0x3C +BoardCameraMotionStart = .text:0x8005D8D8; // type:function size:0x48 +BoardCameraMotionStartEx = .text:0x8005D920; // type:function size:0x230 +BoardCameraFovSet = .text:0x8005DB50; // type:function size:0x20 +BoardCameraCullCheck = .text:0x8005DB70; // type:function size:0x2BC +BoardCameraMotionIsDone = .text:0x8005DE2C; // type:function size:0x48 +BoardCameraMotionWait = .text:0x8005DE74; // type:function size:0x58 +BoardCameraInit = .text:0x8005DECC; // type:function size:0x24C +UpdateCamera = .text:0x8005E118; // type:function size:0x350 scope:local +CalcCameraTarget = .text:0x8005E468; // type:function size:0xE4 scope:local +CalcCameraPos = .text:0x8005E54C; // type:function size:0x764 scope:local +BoardMGDoneFlagSet = .text:0x8005ECB0; // type:function size:0x48 +BoardMGDoneFlagGet = .text:0x8005ECF8; // type:function size:0x48 +BoardMGExit = .text:0x8005ED40; // type:function size:0x170 +KillBoardMG = .text:0x8005EEB0; // type:function size:0x60 scope:local +ExecBoardMG = .text:0x8005EF10; // type:function size:0xC4 scope:local +BoardMGCreate = .text:0x8005EFD4; // type:function size:0x74 +BoardEventFlagSet = .text:0x8005F048; // type:function size:0x28 +BoardEventFlagReset = .text:0x8005F070; // type:function size:0x28 +BoardEventFlagGet = .text:0x8005F098; // type:function size:0x48 +BoardMTXCalcLookAt = .text:0x8005F0E0; // type:function size:0x10C +BoardArcSin = .text:0x8005F1EC; // type:function size:0x330 +BoardArcCos = .text:0x8005F51C; // type:function size:0x390 +BoardRandInit = .text:0x8005F8AC; // type:function size:0x24 +BoardRand = .text:0x8005F8D0; // type:function size:0x24 +BoardRandMod = .text:0x8005F8F4; // type:function size:0x50 +BoardRandFloat = .text:0x8005F944; // type:function size:0x58 +BoardVecDistXZCalc = .text:0x8005F99C; // type:function size:0x134 +BoardVecMaxDistXZCheck = .text:0x8005FAD0; // type:function size:0x15C +BoardDAngleCalcVec = .text:0x8005FC2C; // type:function size:0x7C +BoardDAngleCalc = .text:0x8005FCA8; // type:function size:0x34 +BoardDAngleCalcRange = .text:0x8005FCDC; // type:function size:0x1C0 +BoardVecMinDistCheck = .text:0x8005FE9C; // type:function size:0x6C +BoardFilterFadeOut = .text:0x8005FF08; // type:function size:0xD4 +BoardFilterFadeInit = .text:0x8005FFDC; // type:function size:0x174 +BoardFilterFadePauseCheck = .text:0x80060150; // type:function size:0x5C +BoardFilterFadeCheck = .text:0x800601AC; // type:function size:0x34 +UpdateFilter = .text:0x800601E0; // type:function size:0x178 scope:local +DrawFilter = .text:0x80060358; // type:function size:0x350 scope:local +BoardConfettiCreate = .text:0x800606A8; // type:function size:0x164 +BoardConfettiKill = .text:0x8006080C; // type:function size:0x24 +BoardConfettiStop = .text:0x80060830; // type:function size:0x88 +UpdateConfetti = .text:0x800608B8; // type:function size:0xB8 scope:local +SpawnConfetti = .text:0x80060970; // type:function size:0x564 scope:local +MoveConfetti = .text:0x80060ED4; // type:function size:0x14C scope:local +DrawConfetti = .text:0x80061020; // type:function size:0x254 scope:local +BoardLast5GfxInit = .text:0x80061274; // type:function size:0x2B4 +UpdateLast5Gfx = .text:0x80061528; // type:function size:0x2AC scope:local +BoardLast5GfxShowSet = .text:0x800617D4; // type:function size:0xAC +BoardTauntInit = .text:0x80061880; // type:function size:0x80 +BoardTauntKill = .text:0x80061900; // type:function size:0x54 +TauntUpdate = .text:0x80061954; // type:function size:0x3A4 scope:local +BoardDataDirReadAsync = .text:0x80061CF8; // type:function size:0x38 +BoardDataAsyncWait = .text:0x80061D30; // type:function size:0x48 +BoardItemPrevGet = .text:0x80061D78; // type:function size:0xC +BoardItemPrevSet = .text:0x80061D84; // type:function size:0xC +BoardPlayerGetCharMess = .text:0x80061D90; // type:function size:0x78 +BoardPlayerGetCharName = .text:0x80061E08; // type:function size:0x78 +BoardPlayerIsAllCom = .text:0x80061E80; // type:function size:0x80 +BoardPlayerInit = .text:0x80061F00; // type:function size:0x16C +BoardPlayerModelInit = .text:0x8006206C; // type:function size:0x588 +BoardPlayerModelKill = .text:0x800625F4; // type:function size:0xFC +BoardPlayerLayerSet = .text:0x800626F0; // type:function size:0x84 +BoardPlayerCameraSet = .text:0x80062774; // type:function size:0x80 +fn_80062A40 = .text:0x800627F4; // type:function size:0x80 +BoardPlayerExistCheck = .text:0x80062874; // type:function size:0xB4 +BoardPlayerItemAdd = .text:0x80062928; // type:function size:0xB0 +BoardPlayerItemRemove = .text:0x800629D8; // type:function size:0xB4 +BoardPlayerItemFind = .text:0x80062A8C; // type:function size:0x58 +BoardPlayerItemCount = .text:0x80062AE4; // type:function size:0x60 +BoardPlayerCornerPosSet = .text:0x80062B44; // type:function size:0x40 +BoardPlayerCornerPosGet = .text:0x80062B84; // type:function size:0xC4 +BoardPlayerAmbSet = .text:0x80062C48; // type:function size:0x90 +BoardPlayerMtxSet = .text:0x80062CD8; // type:function size:0x80 +BoardPlayerPosSetV = .text:0x80062D58; // type:function size:0x9C +BoardPlayerPosSet = .text:0x80062DF4; // type:function size:0xCC +BoardPlayerPosGet = .text:0x80062EC0; // type:function size:0x80 +BoardPlayerRotSetV = .text:0x80062F40; // type:function size:0x9C +BoardPlayerRotSet = .text:0x80062FDC; // type:function size:0xCC +BoardPlayerRotGet = .text:0x800630A8; // type:function size:0x80 +BoardPlayerRotYSet = .text:0x80063128; // type:function size:0xD4 +BoardPlayerRotYGet = .text:0x800631FC; // type:function size:0xA8 +BoardPlayerScaleSetV = .text:0x800632A4; // type:function size:0x80 +BoardPlayerScaleSet = .text:0x80063324; // type:function size:0x90 +BoardPlayerScaleGet = .text:0x800633B4; // type:function size:0x80 +BoardPlayerCurrMotionGet = .text:0x80063434; // type:function size:0x44 +BoardPlayerVoiceEnableSet = .text:0x80063478; // type:function size:0x88 +BoardPlayerMotionCreate = .text:0x80063500; // type:function size:0x80 +BoardPlayerMotionKill = .text:0x80063580; // type:function size:0x80 +BoardPlayerMotionEndCheck = .text:0x80063600; // type:function size:0x78 +BoardPlayerMotionEndWait = .text:0x80063678; // type:function size:0x88 +BoardPlayerMotionStart = .text:0x80063700; // type:function size:0xD0 +BoardPlayerMotionShiftSet = .text:0x800637D0; // type:function size:0xE0 +BoardPlayerMotionSpeedSet = .text:0x800638B0; // type:function size:0x80 +BoardPlayerMotionTimeSet = .text:0x80063930; // type:function size:0x80 +BoardPlayerMotionTimeGet = .text:0x800639B0; // type:function size:0x78 +BoardPlayerMotionMaxTimeGet = .text:0x80063A28; // type:function size:0x78 +BoardPlayerMotionStartEndSet = .text:0x80063AA0; // type:function size:0xA0 +BoardPlayerModelAttrSet = .text:0x80063B40; // type:function size:0x80 +BoardPlayerModelAttrReset = .text:0x80063BC0; // type:function size:0x80 +BoardPlayerCoinsSet = .text:0x80063C40; // type:function size:0x34 +BoardPlayerCoinsGet = .text:0x80063C74; // type:function size:0x2C +BoardPlayerCoinsAdd = .text:0x80063CA0; // type:function size:0x9C +BoardPlayerStarsAdd = .text:0x80063D3C; // type:function size:0x48 +BoardPlayerSizeSet = .text:0x80063D84; // type:function size:0x16C +BoardPlayerSizeGet = .text:0x80063EF0; // type:function size:0x40 +BoardPlayerSameTeamFind = .text:0x80063F30; // type:function size:0x7C +BoardPlayerTeamFind = .text:0x80063FAC; // type:function size:0x7C +BoardPlayerRankCalc = .text:0x80064028; // type:function size:0xC4 +BoardPlayerPreTurnHookSet = .text:0x800640EC; // type:function size:0x18 +BoardPlayerPostTurnHookSet = .text:0x80064104; // type:function size:0x18 +BoardPlayerTurnExec = .text:0x8006411C; // type:function size:0x15C +BoardPlayerTurnRollExec = .text:0x80064278; // type:function size:0x160 +BoardPlayerTurnMoveExec = .text:0x800643D8; // type:function size:0x420 +BoardPlayerPostTurnHookExec = .text:0x800647F8; // type:function size:0x80 +BoardPlayerSizeRestore = .text:0x80064878; // type:function size:0x18C +BoardPlayerZoomRestore = .text:0x80064A04; // type:function size:0x134 +BoardJunctionMaskSet = .text:0x80064B38; // type:function size:0x10 +BoardJunctionMaskReset = .text:0x80064B48; // type:function size:0x10 +BoardJunctionMaskZero = .text:0x80064B58; // type:function size:0xC +InitJunction = .text:0x80064B64; // type:function size:0x634 scope:local +UpdateJunctionGfx = .text:0x80065198; // type:function size:0x1A0 scope:local +StopJunctionPlayer = .text:0x80065338; // type:function size:0x70 scope:local +RestoreJunction = .text:0x800653A8; // type:function size:0x180 scope:local +GetDefaultDirection = .text:0x80065528; // type:function size:0x114 scope:local +DoDebugMove = .text:0x8006563C; // type:function size:0x8E8 scope:local +ExecJunction = .text:0x80065F24; // type:function size:0xBF8 scope:local +BoardPlayerMoveTo = .text:0x80066B1C; // type:function size:0xBC +BoardPlayerMoveBetween = .text:0x80066BD8; // type:function size:0x90 +BoardPlayerMoveToAsync = .text:0x80066C68; // type:function size:0x90 +BoardPlayerPosLerpStart = .text:0x80066CF8; // type:function size:0x430 +PlayerPosLerpFunc = .text:0x80067128; // type:function size:0x218 scope:local +BoardPlayerDiceJumpStart = .text:0x80067340; // type:function size:0x1D4 +BoardPlayerDiceJumpCheck = .text:0x80067514; // type:function size:0x54 +DiceJumpFunc = .text:0x80067568; // type:function size:0x3E4 scope:local +BoardPlayerIdleSet = .text:0x8006794C; // type:function size:0xF8 +BoardPlayerMotBlendSet = .text:0x80067A44; // type:function size:0x5A0 +ExecMotBlend = .text:0x80067FE4; // type:function size:0x51C scope:local +BoardPlayerMotBlendCheck = .text:0x80068500; // type:function size:0x2C +BoardRollCreate = .text:0x8006852C; // type:function size:0x138 +BoardRollUpdateSet = .text:0x80068664; // type:function size:0x38 +BoardRollDispSet = .text:0x8006869C; // type:function size:0x10C +UpdateRollSprite = .text:0x800687A8; // type:function size:0x194 scope:local +UpdateRoll = .text:0x8006893C; // type:function size:0x278 scope:local +BoardPlayerBtnDownWait = .text:0x80068BB4; // type:function size:0x6C +BoardPlayerAutoSizeSet = .text:0x80068C20; // type:function size:0x9C +BoardPlayerAutoSizeGet = .text:0x80068CBC; // type:function size:0x40 +BoardPlayerMoveAwayIsDone = .text:0x80068CFC; // type:function size:0x1C +BoardPlayerMoveAwayStart = .text:0x80068D18; // type:function size:0x224 +BoardPlayerMoveAwayStartCurr = .text:0x80068F3C; // type:function size:0x40 +MoveAwayObjFunc = .text:0x80068F7C; // type:function size:0x100 scope:local +BoardBowserSuitInit = .text:0x8006907C; // type:function size:0x1A4 +BoardBowserSuitKill = .text:0x80069220; // type:function size:0x128 +BoardBowserSuitModelGet = .text:0x80069348; // type:function size:0x8 +BoardBowserSuitPlayerModelGet = .text:0x80069350; // type:function size:0x8 +BoardBowserSuitMotionCreate = .text:0x80069358; // type:function size:0x74 +BoardBowserSuitMotionSetWait = .text:0x800693CC; // type:function size:0x54 +BoardBowserSuitMotionSetWalk = .text:0x80069420; // type:function size:0x4C +BoardBowserSuitMotionSetWin = .text:0x8006946C; // type:function size:0x44 +BoardBowserSuitMotionSetJump = .text:0x800694B0; // type:function size:0x44 +BoardBowserSuitPlayerModelKill = .text:0x800694F4; // type:function size:0x44 +UpdateBowserSuit = .text:0x80069538; // type:function size:0x1F0 scope:local +BoardPlayerSparkSet = .text:0x80069728; // type:function size:0x5C +DoSparkSpace = .text:0x80069784; // type:function size:0x1294 scope:local +RemoveSparkSpace = .text:0x8006AA18; // type:function size:0xA0 scope:local +SetPlayerSizeAuto = .text:0x8006AAB8; // type:function size:0x24C scope:local +BoardMegaDoubleDiceCheck = .text:0x8006AD04; // type:function size:0x8 +BoardPlayerResizeAnimExec = .text:0x8006AD0C; // type:function size:0x38C +MegaSquishFunc = .text:0x8006B098; // type:function size:0x950 scope:local +MegaPlayerPassFunc = .text:0x8006B9E8; // type:function size:0x980 scope:local +MegaExecJump = .text:0x8006C368; // type:function size:0xA48 scope:local +BoardPlayerCopyEyeMat = .text:0x8006CDB0; // type:function size:0x24C +BoardPlayerCopyMat = .text:0x8006CFFC; // type:function size:0xC0 +BoardModelInit = .text:0x8006D0BC; // type:function size:0xF0 +BoardModelKillAll = .text:0x8006D1AC; // type:function size:0xA0 +ModelMgrFunc = .text:0x8006D24C; // type:function size:0x70 scope:local +BoardModelDummyUpdate = .text:0x8006D2BC; // type:function size:0x4 +BoardModelVisibilityUpdate = .text:0x8006D2C0; // type:function size:0xCC +BoardModelHideSetAll = .text:0x8006D38C; // type:function size:0x90 +BoardModelAmbSetAll = .text:0x8006D41C; // type:function size:0x70 +BoardModelCameraSetAll = .text:0x8006D48C; // type:function size:0x7C +CreateInstance = .text:0x8006D508; // type:function size:0x250 scope:local +BoardModelCreate = .text:0x8006D758; // type:function size:0x40 +BoardModelCreateCharacter = .text:0x8006D798; // type:function size:0x44 +BoardModelCreateParam = .text:0x8006D7DC; // type:function size:0x168 +BoardModelKill = .text:0x8006D944; // type:function size:0x44 +BoardModelIDGet = .text:0x8006D988; // type:function size:0x48 +fn_8006DC1C = .text:0x8006D9D0; // type:function size:0x60 +BoardModelPassSet = .text:0x8006DA30; // type:function size:0x74 +BoardModelAmbSet = .text:0x8006DAA4; // type:function size:0x68 +BoardModelExistCheck = .text:0x8006DB0C; // type:function size:0x48 +BoardModelExistDupe = .text:0x8006DB54; // type:function size:0x48 +fn_8006DDE8 = .text:0x8006DB9C; // type:function size:0x70 +BoardModelMotionCreate = .text:0x8006DC0C; // type:function size:0x140 +BoardModelMotionKill = .text:0x8006DD4C; // type:function size:0x118 +BoardModelMotionStartEndSet = .text:0x8006DE64; // type:function size:0xE8 +BoardModelMotionUpdateSet = .text:0x8006DF4C; // type:function size:0x7C +BoardModelVoiceEnableSet = .text:0x8006DFC8; // type:function size:0xA4 +BoardModelMotionStart = .text:0x8006E06C; // type:function size:0x174 +BoardModelMotionShiftIDGet = .text:0x8006E1E0; // type:function size:0x50 +BoardModelMotionShiftSet = .text:0x8006E230; // type:function size:0x148 +BoardModelAttrSet = .text:0x8006E378; // type:function size:0x58 +BoardModelAttrReset = .text:0x8006E3D0; // type:function size:0x58 +BoardModelMotionTimeSet = .text:0x8006E428; // type:function size:0x84 +BoardModelMotionTimeGet = .text:0x8006E4AC; // type:function size:0x94 +BoardModelMotionMaxTimeGet = .text:0x8006E540; // type:function size:0x88 +BoardModelMotionSpeedGet = .text:0x8006E5C8; // type:function size:0x64 +BoardModelMotionSpeedSet = .text:0x8006E62C; // type:function size:0xA4 +BoardModelMotionEndCheck = .text:0x8006E6D0; // type:function size:0x80 +BoardModelMotionShapeSet = .text:0x8006E750; // type:function size:0x100 +BoardModelMotionShapeTimeGet = .text:0x8006E850; // type:function size:0x7C +BoardModelMotionShapeMaxTimeGet = .text:0x8006E8CC; // type:function size:0xBC +BoardModelMotionShapeSpeedSet = .text:0x8006E988; // type:function size:0x88 +BoardModelMotionShapeSpeedGet = .text:0x8006EA10; // type:function size:0x64 +BoardModelMotionShapeEndCheck = .text:0x8006EA74; // type:function size:0x14C +BoardModelMotionShapeStartEndSet = .text:0x8006EBC0; // type:function size:0x100 +BoardModelAlphaSet = .text:0x8006ECC0; // type:function size:0xB0 +BoardModelMtxSet = .text:0x8006ED70; // type:function size:0x8C +BoardModelMtxGet = .text:0x8006EDFC; // type:function size:0x8C +BoardModelRotYSet = .text:0x8006EE88; // type:function size:0x54 +BoardModelRotYGet = .text:0x8006EEDC; // type:function size:0x30 +BoardModelPosSetV = .text:0x8006EF0C; // type:function size:0x50 +BoardModelPosSet = .text:0x8006EF5C; // type:function size:0x78 +BoardModelRotSetV = .text:0x8006EFD4; // type:function size:0x50 +BoardModelRotSet = .text:0x8006F024; // type:function size:0x78 +BoardModelScaleSetV = .text:0x8006F09C; // type:function size:0x50 +BoardModelScaleSet = .text:0x8006F0EC; // type:function size:0x78 +BoardModelPosGet = .text:0x8006F164; // type:function size:0x74 +BoardModelRotGet = .text:0x8006F1D8; // type:function size:0x74 +BoardModelScaleGet = .text:0x8006F24C; // type:function size:0x74 +BoardModelVisibilitySet = .text:0x8006F2C0; // type:function size:0x60 +BoardModelVisibilityGet = .text:0x8006F320; // type:function size:0x4C +BoardModelCameraSet = .text:0x8006F36C; // type:function size:0x64 +BoardModelLayerSet = .text:0x8006F3D0; // type:function size:0x64 +BoardModelLayerGet = .text:0x8006F434; // type:function size:0x48 +BoardModelLayerSetAll = .text:0x8006F47C; // type:function size:0x74 +BoardModelHookSet = .text:0x8006F4F0; // type:function size:0xC4 +BoardModelHookReset = .text:0x8006F5B4; // type:function size:0x50 +BoardModelHookObjReset = .text:0x8006F604; // type:function size:0x58 +SearchBoardModel = .text:0x8006F65C; // type:function size:0x9C scope:local +KillBoardModel = .text:0x8006F6F8; // type:function size:0x178 scope:local +CreateBoardModel = .text:0x8006F870; // type:function size:0x194 scope:local +CreateBoardModelMotion = .text:0x8006FA04; // type:function size:0x12C scope:local +BoardWinInit = .text:0x8006FB30; // type:function size:0x24 +BoardWinUnusedArraySet = .text:0x8006FB54; // type:function size:0x34 +BoardWinKillAll = .text:0x8006FB88; // type:function size:0x24 +BoardWinDestroy = .text:0x8006FBAC; // type:function size:0x6C +ExecBoardWindow = .text:0x8006FC18; // type:function size:0x534 scope:local +BoardWinChoiceGet = .text:0x8007014C; // type:function size:0xC +BoardWinPause = .text:0x80070158; // type:function size:0xC +BoardWinCreateChoice = .text:0x80070164; // type:function size:0x1A0 +BoardWinCreate = .text:0x80070304; // type:function size:0x1A0 +BoardWinInsertMesSet = .text:0x800704A4; // type:function size:0x18 +BoardWinWait = .text:0x800704BC; // type:function size:0x50 +BoardWinKill = .text:0x8007050C; // type:function size:0x38 +BoardWinAttrSet = .text:0x80070544; // type:function size:0x48 +BoardWinAttrReset = .text:0x8007058C; // type:function size:0x48 +BoardWinChoiceDisable = .text:0x800705D4; // type:function size:0x1C +BoardWinKeyWait = .text:0x800705F0; // type:function size:0xC +BoardWinSpeedGet = .text:0x800705FC; // type:function size:0x64 +BoardWinSpeedSet = .text:0x80070660; // type:function size:0x50 +BoardWinChoiceNowGet = .text:0x800706B0; // type:function size:0x38 +BoardWinPriSet = .text:0x800706E8; // type:function size:0x44 +BoardWinChoiceNowGet2 = .text:0x8007072C; // type:function size:0x38 +BoardWinPortraitGet = .text:0x80070764; // type:function size:0x38 +BoardWinPortraitGetStar = .text:0x8007079C; // type:function size:0x38 +BoardWinPlayerSet = .text:0x800707D4; // type:function size:0x138 +BoardWinStartComKeySet = .text:0x8007090C; // type:function size:0x214 +BoardWinComKeyFuncSet = .text:0x80070B20; // type:function size:0x8 +BoardWinIDGet = .text:0x80070B28; // type:function size:0x8 +BoardMusStartBoard = .text:0x80070B30; // type:function size:0x68 +BoardMusStart = .text:0x80070B98; // type:function size:0xD0 +BoardAudSeqFadeOutFast = .text:0x80070C68; // type:function size:0x2C +BoardAudSeqFadeOut = .text:0x80070C94; // type:function size:0x60 +BoardMusLoudSet = .text:0x80070CF4; // type:function size:0x5C +BoardMusVolPanSet = .text:0x80070D50; // type:function size:0x90 +BoardAudSeqPause = .text:0x80070DE0; // type:function size:0x94 +BoardMusStatusGet = .text:0x80070E74; // type:function size:0x54 +BoardAudSeqClear = .text:0x80070EC8; // type:function size:0x50 +BoardAudSeqFadeOutAll = .text:0x80070F18; // type:function size:0x74 +BoardAudFXPlay = .text:0x80070F8C; // type:function size:0x78 +BoardAudFXStop = .text:0x80071004; // type:function size:0x38 +ExecComKeyLeft = .text:0x8007103C; // type:function size:0x38 scope:local +BoardComKeySetLeft = .text:0x80071074; // type:function size:0x28 +ExecComKeyRight = .text:0x8007109C; // type:function size:0x38 scope:local +BoardComKeySetRight = .text:0x800710D4; // type:function size:0x28 +ExecComKeyUp = .text:0x800710FC; // type:function size:0x38 scope:local +BoardComKeySetUp = .text:0x80071134; // type:function size:0x28 +ExecComKeyDown = .text:0x8007115C; // type:function size:0x38 scope:local +BoardComKeySetDown = .text:0x80071194; // type:function size:0x28 +ExecComKey = .text:0x800711BC; // type:function size:0xE8 scope:local +BoardComPreferItemGet = .text:0x800712A4; // type:function size:0x100 +BoardComPreferItemCheck = .text:0x800713A4; // type:function size:0x120 +BoardComItemWeightGet = .text:0x800714C4; // type:function size:0x74 +BoardComUseItemSlotGet = .text:0x80071538; // type:function size:0xD0 +BoardComUseItemSet = .text:0x80071608; // type:function size:0x6C +BoardComUseItemCheck = .text:0x80071674; // type:function size:0x68 +ChooseUseItem = .text:0x800716DC; // type:function size:0x16C scope:local +CheckMiniUse = .text:0x80071848; // type:function size:0x220 scope:local +CheckMegaUse = .text:0x80071A68; // type:function size:0x248 scope:local +CheckSparkUse = .text:0x80071CB0; // type:function size:0x158 scope:local +CheckBoardChangeUse = .text:0x80071E08; // type:function size:0x314 scope:local +CheckSwapUse = .text:0x8007211C; // type:function size:0x198 scope:local +CheckBooUse = .text:0x800722B4; // type:function size:0x7C scope:local +CheckLampUse = .text:0x80072330; // type:function size:0x74 scope:local +BoardComJunctionInputGet = .text:0x800723A4; // type:function size:0x304 +BoardComFarPlayerFind = .text:0x800726A8; // type:function size:0xA8 +BoardViewOverheadExec = .text:0x80072750; // type:function size:0x134 +BoardViewFocusGetPos = .text:0x80072884; // type:function size:0x3C +BoardViewFocusSet = .text:0x800728C0; // type:function size:0xF0 +BoardViewMoveStart = .text:0x800729B0; // type:function size:0x128 +BoardViewMoveCheck = .text:0x80072AD8; // type:function size:0x34 +BoardViewMoveEnd = .text:0x80072B0C; // type:function size:0xC +BoardViewWait = .text:0x80072B18; // type:function size:0x3C +BoardViewMapExec = .text:0x80072B54; // type:function size:0xC8 +ExecMapView = .text:0x80072C1C; // type:function size:0x398 scope:local +ExecStarView = .text:0x80072FB4; // type:function size:0x170 scope:local +ExecOverheadView = .text:0x80073124; // type:function size:0x158 scope:local +DestroyView = .text:0x8007327C; // type:function size:0x80 scope:local +SetTargetView = .text:0x800732FC; // type:function size:0x178 scope:local +DestroyFocus = .text:0x80073474; // type:function size:0x4C scope:local +CreateButtonWin = .text:0x800734C0; // type:function size:0x110 scope:local +DestroyButtonWin = .text:0x800735D0; // type:function size:0x38 scope:local +InitOverheadView = .text:0x80073608; // type:function size:0x374 scope:local +DestroyOverheadView = .text:0x8007397C; // type:function size:0x24 scope:local +UpdateOverheadView = .text:0x800739A0; // type:function size:0x400 scope:local +WaitOverheadView = .text:0x80073DA0; // type:function size:0x30 scope:local +BoardSpaceWalkEventFuncSet = .text:0x80073DD0; // type:function size:0x8 +BoardSpaceWalkMiniEventFuncSet = .text:0x80073DD8; // type:function size:0x8 +BoardSpaceLandEventFuncSet = .text:0x80073DE0; // type:function size:0x8 +BoardSpaceWalkEventExec = .text:0x80073DE8; // type:function size:0x48 +BoardSpaceWalkMiniEventExec = .text:0x80073E30; // type:function size:0x60 +BoardSpaceCountGet = .text:0x80073E90; // type:function size:0x10 +BoardSpaceGet = .text:0x80073EA0; // type:function size:0x44 +BoardSpaceAttrSet = .text:0x80073EE4; // type:function size:0x18 +BoardSpaceAttrReset = .text:0x80073EFC; // type:function size:0x18 +BoardSpaceFlagGet = .text:0x80073F14; // type:function size:0x48 +BoardSpaceTypeGet = .text:0x80073F5C; // type:function size:0x48 +BoardSpaceTypeSet = .text:0x80073FA4; // type:function size:0x48 +BoardSpacePosGet = .text:0x80073FEC; // type:function size:0x8C +BoardSpaceCornerPosGet = .text:0x80074078; // type:function size:0x2C8 +BoardSpaceRotGet = .text:0x80074340; // type:function size:0x8C +BoardSpaceFlagSearch = .text:0x800743CC; // type:function size:0xA0 +BoardSpaceFlagPosGet = .text:0x8007446C; // type:function size:0x134 +BoardSpaceLinkFlagSearch = .text:0x800745A0; // type:function size:0x134 +BoardSpaceLinkTypeListGet = .text:0x800746D4; // type:function size:0x148 +BoardSpaceLinkTargetListGet = .text:0x8007481C; // type:function size:0x104 +BoardSpaceLinkTypeSearch = .text:0x80074920; // type:function size:0x110 +BoardSpaceLinkTransformGet = .text:0x80074A30; // type:function size:0x1FC +BoardSpaceHostSet = .text:0x80074C2C; // type:function size:0x1BC +BoardSpaceStarSetIndex = .text:0x80074DE8; // type:function size:0x4AC +BoardSpaceStarGetNext = .text:0x80075294; // type:function size:0x344 +BoardSpaceStarGetRandom = .text:0x800755D8; // type:function size:0x9C +BoardSpaceStarMove = .text:0x80075674; // type:function size:0xF0 +BoardSpaceStarGet = .text:0x80075764; // type:function size:0x1C +BoardSpaceStarGetCurr = .text:0x80075780; // type:function size:0x3C +BoardSpaceStarCheck = .text:0x800757BC; // type:function size:0x110 +BoardSpaceLandExec = .text:0x800758CC; // type:function size:0x474 +BoardSpaceWalkExec = .text:0x80075D40; // type:function size:0x2A4 +BoardSpaceBlockExec = .text:0x80075FE4; // type:function size:0x180 +ExecPipeSpace = .text:0x80076164; // type:function size:0x268 scope:local +BoardSpaceTypeForce = .text:0x800763CC; // type:function size:0x5C +BoardSpaceHide = .text:0x80076428; // type:function size:0x48 +DrawSpaces = .text:0x80076470; // type:function size:0x9E8 scope:local +BoardSpaceRead = .text:0x80076E58; // type:function size:0x174 +BoardSpaceCameraSet = .text:0x80076FCC; // type:function size:0x2C +BoardSpaceBlockPosSet = .text:0x80076FF8; // type:function size:0xD0 +BoardSpaceInit = .text:0x800770C8; // type:function size:0x750 +BoardSpaceDestroy = .text:0x80077818; // type:function size:0x70 +BoardShopHostSet = .text:0x80077888; // type:function size:0x8 +BoardShopHostGet = .text:0x80077890; // type:function size:0x8 +BoardShopInit = .text:0x80077898; // type:function size:0xD4 +BoardShopKill = .text:0x8007796C; // type:function size:0xA0 +BoardShopExec = .text:0x80077A0C; // type:function size:0x9C +ExecShop = .text:0x80077AA8; // type:function size:0x800 scope:local +DestroyShop = .text:0x800782A8; // type:function size:0xD4 scope:local +PopupShop = .text:0x8007837C; // type:function size:0x1B4 scope:local +CloseShop = .text:0x80078530; // type:function size:0xBC scope:local +CreateShopWin = .text:0x800785EC; // type:function size:0x13C scope:local +UpdateShopWin = .text:0x80078728; // type:function size:0x314 scope:local +SetShopWinItem = .text:0x80078A3C; // type:function size:0x168 scope:local +PauseShopWin = .text:0x80078BA4; // type:function size:0x2C scope:local +StartItemGive = .text:0x80078BD0; // type:function size:0x18C scope:local +ExecItemGive = .text:0x80078D5C; // type:function size:0x168 scope:local +MoveItemGive = .text:0x80078EC4; // type:function size:0x34C scope:local +ShrinkItemGive = .text:0x80079210; // type:function size:0x144 scope:local +WaitItemGive = .text:0x80079354; // type:function size:0x6C scope:local +GetShopItems = .text:0x800793C0; // type:function size:0x280 scope:local +GetDefaultShopItems = .text:0x80079640; // type:function size:0xA0 scope:local +SortShopItems = .text:0x800796E0; // type:function size:0x14C scope:local +DecideComEnter = .text:0x8007982C; // type:function size:0x1C8 scope:local +DecideComBuy = .text:0x800799F4; // type:function size:0x60 scope:local +GetComItemChoice = .text:0x80079A54; // type:function size:0x158 scope:local +WaitItemChoice = .text:0x80079BAC; // type:function size:0x30 scope:local +CreateShopItemChoice = .text:0x80079BDC; // type:function size:0x238 scope:local +GetShopItemChoice = .text:0x80079E14; // type:function size:0xC scope:local +GetShopItemWinChoice = .text:0x80079E20; // type:function size:0x38 scope:local +MoveShopItemChoice = .text:0x80079E58; // type:function size:0x24C scope:local +UpdateShopItemChoice = .text:0x8007A0A4; // type:function size:0x104 scope:local +GetShopItemChoiceInput = .text:0x8007A1A8; // type:function size:0x30 scope:local +BoardShopTutorialExec = .text:0x8007A1D8; // type:function size:0x4DC +BoardLotteryHostSet = .text:0x8007A6B4; // type:function size:0x8 +BoardLotteryHostGet = .text:0x8007A6BC; // type:function size:0x8 +BoardLotteryExec = .text:0x8007A6C4; // type:function size:0x8C +BoardLotteryInit = .text:0x8007A750; // type:function size:0x16C +CreateModel = .text:0x8007A8BC; // type:function size:0x3B4 scope:local +KillModel = .text:0x8007AC70; // type:function size:0x1FC scope:local +BoardLotteryKill = .text:0x8007AE6C; // type:function size:0x64 +DestroyLottery = .text:0x8007AED0; // type:function size:0xB0 scope:local +ExecLottery = .text:0x8007AF80; // type:function size:0x798 scope:local +DoMiniJumpUp = .text:0x8007B718; // type:function size:0x20C scope:local +DoMiniJumpDown = .text:0x8007B924; // type:function size:0x1BC scope:local +PayEnterFee = .text:0x8007BAE0; // type:function size:0xF0 scope:local +ShowTicket = .text:0x8007BBD0; // type:function size:0x3C8 scope:local +SetupTicket = .text:0x8007BF98; // type:function size:0x140 scope:local +ExecBallGame = .text:0x8007C0D8; // type:function size:0x914 scope:local +SetBallPrize = .text:0x8007C9EC; // type:function size:0xC8 scope:local +ExecBallPrize = .text:0x8007CAB4; // type:function size:0x27C scope:local +ExecScratchTicket = .text:0x8007CD30; // type:function size:0x30C scope:local +ExecScratch = .text:0x8007D03C; // type:function size:0x3AC scope:local +KillScratch = .text:0x8007D3E8; // type:function size:0x6C scope:local +ExecScratchSpr = .text:0x8007D454; // type:function size:0x21C scope:local +HideScratchSpr = .text:0x8007D670; // type:function size:0x68 scope:local +InitScratchSpr = .text:0x8007D6D8; // type:function size:0x288 scope:local +ExecScratchPick = .text:0x8007D960; // type:function size:0x3DC scope:local +InitScratchPick = .text:0x8007DD3C; // type:function size:0x14C scope:local +InitTicketPrizes = .text:0x8007DE88; // type:function size:0xD0 scope:local +ExecTicketFocus = .text:0x8007DF58; // type:function size:0x160 scope:local +ScratchTicketCheckDone = .text:0x8007E0B8; // type:function size:0xA8 scope:local +TicketGetPixel = .text:0x8007E160; // type:function size:0x84 scope:local +TicketUpdate = .text:0x8007E1E4; // type:function size:0x6B0 scope:local +ExecCoinPrize = .text:0x8007E894; // type:function size:0x440 scope:local +ExecItemPrize = .text:0x8007ECD4; // type:function size:0x338 scope:local +KillCoin = .text:0x8007F00C; // type:function size:0x68 scope:local +ExecPrize = .text:0x8007F074; // type:function size:0x4C0 scope:local +ExecLose = .text:0x8007F534; // type:function size:0xA4 scope:local +CreateLotteryWin = .text:0x8007F5D8; // type:function size:0xFC scope:local +KillLotteryWin = .text:0x8007F6D4; // type:function size:0x38 scope:local +BoardLotteryTutorialExec = .text:0x8007F70C; // type:function size:0x2BC +BoardLandBlueExec = .text:0x8007F9C8; // type:function size:0x184 +BoardLandRedExec = .text:0x8007FB4C; // type:function size:0x19C +BoardCoinChgCreate = .text:0x8007FCE8; // type:function size:0x1E8 +BoardCoinChgExist = .text:0x8007FED0; // type:function size:0x6C +BoardCoinChgHide = .text:0x8007FF3C; // type:function size:0x60 +CreateCoinChg = .text:0x8007FF9C; // type:function size:0x23C scope:local +UpdateCoinChg = .text:0x800801D8; // type:function size:0x198 scope:local +CoinChgAppear = .text:0x80080370; // type:function size:0x1B8 scope:local +CoinChgSeparate = .text:0x80080528; // type:function size:0x29C scope:local +CoinChgShow = .text:0x800807C4; // type:function size:0x1A8 scope:local +CoinChgDisappear = .text:0x8008096C; // type:function size:0x260 scope:local +BoardWarpExec = .text:0x80080BCC; // type:function size:0xA4 +WarpProcess = .text:0x80080C70; // type:function size:0x250 scope:local +WarpKill = .text:0x80080EC0; // type:function size:0x5C scope:local +WarpInit = .text:0x80080F1C; // type:function size:0x118 scope:local +WarpLaunch = .text:0x80081034; // type:function size:0xBC scope:local +WarpStartImpact = .text:0x800810F0; // type:function size:0x1B0 scope:local +WarpFall = .text:0x800812A0; // type:function size:0xA4 scope:local +WarpImpact = .text:0x80081344; // type:function size:0x200 scope:local +BoardCharWheelInit = .text:0x80081544; // type:function size:0x11C +BoardCharWheelCheck = .text:0x80081660; // type:function size:0x34 +BoardCharWheelWait = .text:0x80081694; // type:function size:0x50 +BoardCharWheelResultGet = .text:0x800816E4; // type:function size:0x18 +BoardCharWheelSpeedSet = .text:0x800816FC; // type:function size:0x1C +ExecCharWheel = .text:0x80081718; // type:function size:0x118 scope:local +InitCharWheel = .text:0x80081830; // type:function size:0x754 scope:local +UpdateCharWheel = .text:0x80081F84; // type:function size:0x320 scope:local +StopCharWheel = .text:0x800822A4; // type:function size:0x164 scope:local +GrowCharWheel = .text:0x80082408; // type:function size:0x12C scope:local +ShrinkCharWheel = .text:0x80082534; // type:function size:0x10C scope:local +KillCharWheelSpr = .text:0x80082640; // type:function size:0x38 scope:local +SetCharWheelChars = .text:0x80082678; // type:function size:0xBC scope:local +GetInput = .text:0x80082734; // type:function size:0x224 scope:local +BoardCharWheelTargetSet = .text:0x80082958; // type:function size:0x10 +GetComDelay = .text:0x80082968; // type:function size:0x148 scope:local +GetComInput = .text:0x80082AB0; // type:function size:0x8C scope:local +BoardMushroomExec = .text:0x80082B3C; // type:function size:0xA4 +MushroomMain = .text:0x80082BE0; // type:function size:0x38C scope:local +KillMushroom = .text:0x80082F6C; // type:function size:0x58 scope:local +BoxMain = .text:0x80082FC4; // type:function size:0x118 scope:local +ShowBox = .text:0x800830DC; // type:function size:0x114 scope:local +ExitBox = .text:0x800831F0; // type:function size:0x160 scope:local +HideBox = .text:0x80083350; // type:function size:0x68 scope:local +CenterBox = .text:0x800833B8; // type:function size:0xD4 scope:local +InitBox = .text:0x8008348C; // type:function size:0x2EC scope:local +MarkKillBox = .text:0x80083778; // type:function size:0x64 scope:local +SetBoxHide = .text:0x800837DC; // type:function size:0x34 scope:local +SetBoxCenter = .text:0x80083810; // type:function size:0x54 scope:local +SetBoxShow = .text:0x80083864; // type:function size:0x34 scope:local +WaitBoxOpen = .text:0x80083898; // type:function size:0x5C scope:local +WaitBoxCenter = .text:0x800838F4; // type:function size:0x58 scope:local +CheckBox = .text:0x8008394C; // type:function size:0x60 scope:local +DoItemGive = .text:0x800839AC; // type:function size:0x240 scope:local +StartItemGive = .text:0x80083BEC; // type:function size:0xD4 scope:local +KillItemMdl = .text:0x80083CC0; // type:function size:0x38 scope:local +ShowItemMdl = .text:0x80083CF8; // type:function size:0x48 scope:local +WaitItemGive = .text:0x80083D40; // type:function size:0x48 scope:local +BoardStarHostSet = .text:0x80083D88; // type:function size:0xA8 +BoardStarHostMdlGet = .text:0x80083E30; // type:function size:0x8 +BoardStarExec = .text:0x80083E38; // type:function size:0xCC +ExecStar = .text:0x80083F04; // type:function size:0x8F4 scope:local +DestroyStar = .text:0x800847F8; // type:function size:0x84 scope:local +GiveStarMain = .text:0x8008487C; // type:function size:0x160 scope:local +UpdateStarAngle = .text:0x800849DC; // type:function size:0x144 scope:local +InitGiveStar = .text:0x80084B20; // type:function size:0x10C scope:local +MoveGiveStar = .text:0x80084C2C; // type:function size:0x180 scope:local +ShrinkGiveStar = .text:0x80084DAC; // type:function size:0x204 scope:local +StopGiveStar = .text:0x80084FB0; // type:function size:0x38 scope:local +InitGiveStarEffect = .text:0x80084FE8; // type:function size:0xB4 scope:local +KillGiveStarEffect = .text:0x8008509C; // type:function size:0x40 scope:local +BoardStarGive = .text:0x800850DC; // type:function size:0x31C +BoardStarShowNext = .text:0x800853F8; // type:function size:0x628 +ShowNextUpdate = .text:0x80085A20; // type:function size:0x130 scope:local +HideNextHost = .text:0x80085B50; // type:function size:0x24 scope:local +BoardRollExec = .text:0x80085B74; // type:function size:0x1EC +RollWinCreate = .text:0x80085D60; // type:function size:0x21C scope:local +BoardRollKill = .text:0x80085F7C; // type:function size:0x38 +BoardRollUPauseSet = .text:0x80085FB4; // type:function size:0x84 +BoardRollWinDispSet = .text:0x80086038; // type:function size:0x4C +RollMain = .text:0x80086084; // type:function size:0x314 scope:local +DiceCreate = .text:0x80086398; // type:function size:0x280 scope:local +DoInput = .text:0x80086618; // type:function size:0x1C8 scope:local +DiceWaitFull = .text:0x800867E0; // type:function size:0x60 scope:local +DiceSetHit = .text:0x80086840; // type:function size:0x130 scope:local +RollDestroy = .text:0x80086970; // type:function size:0x60 scope:local +DiceMain = .text:0x800869D0; // type:function size:0x7E4 scope:local +DicePause = .text:0x800871B4; // type:function size:0x40 scope:local +DicePauseAll = .text:0x800871F4; // type:function size:0x90 scope:local +BoardDiceEffectCreate = .text:0x80087284; // type:function size:0xE0 +DiceHideEffect = .text:0x80087364; // type:function size:0x84 scope:local +BoardDicePauseAll = .text:0x800873E8; // type:function size:0x94 +BoardDiceDoneCheck = .text:0x8008747C; // type:function size:0x8C +BoardDiceStop = .text:0x80087508; // type:function size:0x58 +BoardDiceVisibleSet = .text:0x80087560; // type:function size:0xC0 +BoardDiceValueSet = .text:0x80087620; // type:function size:0x200 +DiceDigitMain = .text:0x80087820; // type:function size:0xAC scope:local +DiceDigitKill = .text:0x800878CC; // type:function size:0x68 scope:local +DiceKill = .text:0x80087934; // type:function size:0xB4 scope:local +DiceDigitMove = .text:0x800879E8; // type:function size:0x390 scope:local +DiceDigitRotate = .text:0x80087D78; // type:function size:0x110 scope:local +SameRollExec = .text:0x80087E88; // type:function size:0x248 scope:local +GetBtnRoll = .text:0x800880D0; // type:function size:0x110 scope:local +GetComBtnRoll = .text:0x800881E0; // type:function size:0x88 scope:local +BoardRollTutorialSet = .text:0x80088268; // type:function size:0x4C +BoardItemModelGet = .text:0x800882B4; // type:function size:0x90 +BoardItemNameGet = .text:0x80088344; // type:function size:0x98 +BoardStatusStopCheck = .text:0x800883DC; // type:function size:0x48 +BoardStatusVisibleGet = .text:0x80088424; // type:function size:0x1C +BoardStatusShowSetAll = .text:0x80088440; // type:function size:0x48 +BoardStatusItemSet = .text:0x80088488; // type:function size:0xFC +BoardStatusShowSetForce = .text:0x80088584; // type:function size:0x24 +BoardStatusGraySet = .text:0x800885A8; // type:function size:0x134 +BoardStatusShowSet = .text:0x800886DC; // type:function size:0x138 +BoardStatusItemHideSet = .text:0x80088814; // type:function size:0x50 +BoardStatusTargetPosSet = .text:0x80088864; // type:function size:0x44 +BoardStatusPosGet = .text:0x800888A8; // type:function size:0x34 +BoardStatusPosSet = .text:0x800888DC; // type:function size:0x6C +BoardStatusHammerCreate = .text:0x80088948; // type:function size:0x158 +BoardStatusHammerShowSet = .text:0x80088AA0; // type:function size:0x94 +BoardStatusHammerKill = .text:0x80088B34; // type:function size:0x6C +BoardStatusKill = .text:0x80088BA0; // type:function size:0x90 +BoardStatusCreate = .text:0x80088C30; // type:function size:0x20C +KillAllBoardStatus = .text:0x80088E3C; // type:function size:0x98 scope:local +CreateBoardStatusSprite = .text:0x80088ED4; // type:function size:0x36C scope:local +BoardSpriteCreate = .text:0x80089240; // type:function size:0x8C +UpdateBoardStatus = .text:0x800892CC; // type:function size:0x210 scope:local +BoardStatusProc = .text:0x800894DC; // type:function size:0x40 scope:local +MoveBoardStatus = .text:0x8008951C; // type:function size:0x180 scope:local +BoardSpriteDigitUpdate = .text:0x8008969C; // type:function size:0x140 +UpdateStatusItem = .text:0x800897DC; // type:function size:0xB8 scope:local +BoardPickerCreate = .text:0x80089894; // type:function size:0x29C +BoardPickerBackFlagSet = .text:0x80089B30; // type:function size:0x74 +BoardPickerDoneCheck = .text:0x80089BA4; // type:function size:0x1C +BoardPickerPosGet = .text:0x80089BC0; // type:function size:0x48 +BoardPickerChoiceGet = .text:0x80089C08; // type:function size:0xC +UpdatePicker = .text:0x80089C14; // type:function size:0xFC scope:local +UpdatePickerInput = .text:0x80089D10; // type:function size:0x15C scope:local +MovePicker = .text:0x80089E6C; // type:function size:0x110 scope:local +UpdateComPickerButton = .text:0x80089F7C; // type:function size:0x30 scope:local +CheckPickerButton = .text:0x80089FAC; // type:function size:0x19C scope:local +BoardYourTurnExec = .text:0x8008A148; // type:function size:0x1E4 +UpdateYourTurn = .text:0x8008A32C; // type:function size:0xD4 scope:local +GrowYourTurn = .text:0x8008A400; // type:function size:0xD8 scope:local +WaitYourTurn = .text:0x8008A4D8; // type:function size:0xEC scope:local +ShrinkYourTurn = .text:0x8008A5C4; // type:function size:0xC8 scope:local +BoardItemUseExec = .text:0x8008A68C; // type:function size:0x80 +ItemUseTeamProc = .text:0x8008A70C; // type:function size:0x4A8 scope:local +ItemUseProc = .text:0x8008ABB4; // type:function size:0x370 scope:local +FinishItemUse = .text:0x8008AF24; // type:function size:0x174 scope:local +DestroyItemUse = .text:0x8008B098; // type:function size:0x78 scope:local +BoardMakeRandomItem = .text:0x8008B110; // type:function size:0x74 +TeamItemPosSet = .text:0x8008B184; // type:function size:0xE8 scope:local +ExecItemPick = .text:0x8008B26C; // type:function size:0x650 scope:local +UpdateItemPick = .text:0x8008B8BC; // type:function size:0x3AC scope:local +MakeItemPickSpace = .text:0x8008BC68; // type:function size:0x420 scope:local +SetItemUIStatus = .text:0x8008C088; // type:function size:0x248 scope:local +BoardItemGetDestPos = .text:0x8008C2D0; // type:function size:0xA8 +ItemGetPos = .text:0x8008C378; // type:function size:0x104 scope:local +BoardItemStatusKill = .text:0x8008C47C; // type:function size:0x400 +UpdateItemPickGfx = .text:0x8008C87C; // type:function size:0x388 scope:local +UpdateItemPickup = .text:0x8008CC04; // type:function size:0x674 scope:local +CheckItemWindow = .text:0x8008D278; // type:function size:0x50 scope:local +HideItemWindow = .text:0x8008D2C8; // type:function size:0x38 scope:local +CreateItemWindow = .text:0x8008D300; // type:function size:0x5A4 scope:local +CheckItemWindowSlide = .text:0x8008D8A4; // type:function size:0x58 scope:local +KillItemWindow = .text:0x8008D8FC; // type:function size:0x38 scope:local +SetItemWindowCurr = .text:0x8008D934; // type:function size:0xA4 scope:local +UpdateItemWindow = .text:0x8008D9D8; // type:function size:0x350 scope:local +CreatePickerWindow = .text:0x8008DD28; // type:function size:0x11C scope:local +KillPickerWindow = .text:0x8008DE44; // type:function size:0x44 scope:local +BoardBlockExec = .text:0x8008DE88; // type:function size:0x84 +BlockProc = .text:0x8008DF0C; // type:function size:0x358 scope:local +DestroyBlock = .text:0x8008E264; // type:function size:0x54 scope:local +CreateBlockObj = .text:0x8008E2B8; // type:function size:0x1F4 scope:local +ExecBlockObj = .text:0x8008E4AC; // type:function size:0x12C scope:local +DestroyBlockObj = .text:0x8008E5D8; // type:function size:0x38 scope:local +SpawnBlock = .text:0x8008E610; // type:function size:0x120 scope:local +HitBlock = .text:0x8008E730; // type:function size:0xCC scope:local +OpenBlock = .text:0x8008E7FC; // type:function size:0x140 scope:local +SetBlockOpen = .text:0x8008E93C; // type:function size:0x2C scope:local +SetBlockStop = .text:0x8008E968; // type:function size:0x2C scope:local +WaitBlockHit = .text:0x8008E994; // type:function size:0x48 scope:local +CreateCoinMdl = .text:0x8008E9DC; // type:function size:0x94 scope:local +KillCoinMdl = .text:0x8008EA70; // type:function size:0x9C scope:local +PopupCoin = .text:0x8008EB0C; // type:function size:0x10C scope:local +PopupCoinExec = .text:0x8008EC18; // type:function size:0x130 scope:local +BoardItemStart = .text:0x8008ED48; // type:function size:0x74 +BoardItemDoneCheck = .text:0x8008EDBC; // type:function size:0x1C +BoardItemPlayerRestore = .text:0x8008EDD8; // type:function size:0x6C +ItemProcess = .text:0x8008EE44; // type:function size:0x64 scope:local +RestoreProcess = .text:0x8008EEA8; // type:function size:0x64 scope:local +ItemDestroy = .text:0x8008EF0C; // type:function size:0xC scope:local +RestoreDestroy = .text:0x8008EF18; // type:function size:0xC scope:local +ItemSizeShowAnim = .text:0x8008EF24; // type:function size:0x180 scope:local +ItemRotProc = .text:0x8008F0A4; // type:function size:0x1BC scope:local +ItemShowProc = .text:0x8008F260; // type:function size:0x220 scope:local +ItemGetTarget = .text:0x8008F480; // type:function size:0x374 scope:local +ItemSizeSet = .text:0x8008F7F4; // type:function size:0x204 scope:local +ExecItemMini = .text:0x8008F9F8; // type:function size:0xA4 scope:local +ExecItemMega = .text:0x8008FA9C; // type:function size:0xA4 scope:local +ExecItemMiniSuper = .text:0x8008FB40; // type:function size:0xA4 scope:local +ExecItemMegaSuper = .text:0x8008FBE4; // type:function size:0xA4 scope:local +ExecItemHammer = .text:0x8008FC88; // type:function size:0x584 scope:local +ExecItemPipe = .text:0x8009020C; // type:function size:0xD34 scope:local +ExecItemSwap = .text:0x80090F40; // type:function size:0xEBC scope:local +ExecItemSpark = .text:0x80091DFC; // type:function size:0x4FC scope:local +ExecItemLight = .text:0x800922F8; // type:function size:0xC8 scope:local +ExecItemWhistle = .text:0x800923C0; // type:function size:0xE3C scope:local +ExecItemBowser = .text:0x800931FC; // type:function size:0x3D4 scope:local +ExecItemBooBall = .text:0x800935D0; // type:function size:0x1370 scope:local +LampParticleUpdate = .text:0x80094940; // type:function size:0x488 scope:local +GenieParticleUpdate = .text:0x80094DC8; // type:function size:0x388 scope:local +GenieCameraProc = .text:0x80095150; // type:function size:0xB0 scope:local +GenieCameraCalc = .text:0x80095200; // type:function size:0x7A4 scope:local +GenieSceneExec = .text:0x800959A4; // type:function size:0x9D8 scope:local +ExecItemGenie = .text:0x8009637C; // type:function size:0x628 scope:local +BoardItemBagItemSet = .text:0x800969A4; // type:function size:0x3C +ExecItemBagJump = .text:0x800969E0; // type:function size:0x13C scope:local +ExecItemBagShow = .text:0x80096B1C; // type:function size:0xDC scope:local +ExecItemBag = .text:0x80096BF8; // type:function size:0x584 scope:local +RestoreItemNull = .text:0x8009717C; // type:function size:0x1C scope:local +RestoreItemMini = .text:0x80097198; // type:function size:0x2C scope:local +RestoreItemMega = .text:0x800971C4; // type:function size:0x2C scope:local +RestoreItemMiniSuper = .text:0x800971F0; // type:function size:0x2C scope:local +RestoreItemMegaSuper = .text:0x8009721C; // type:function size:0x2C scope:local +RestoreItemBowser = .text:0x80097248; // type:function size:0x284 scope:local +BoardBowserExec = .text:0x800974CC; // type:function size:0x144 +ExecBowser = .text:0x80097610; // type:function size:0x28C scope:local +ExecBowserMain = .text:0x8009789C; // type:function size:0x208 scope:local +ExecMGReturn = .text:0x80097AA4; // type:function size:0x1DC scope:local +DestroyBowser = .text:0x80097C80; // type:function size:0x30 scope:local +SquishPlayers = .text:0x80097CB0; // type:function size:0x148 scope:local +ExecBowserSpecial = .text:0x80097DF8; // type:function size:0x1B4 scope:local +ExecBowserGame = .text:0x80097FAC; // type:function size:0x250 scope:local +DoMGReturnEffect = .text:0x800981FC; // type:function size:0x220 scope:local +ExecBowserShuffle = .text:0x8009841C; // type:function size:0x2B0 scope:local +ExecBowserRevo = .text:0x800986CC; // type:function size:0x160 scope:local +ExecBowserSuit = .text:0x8009882C; // type:function size:0xB8 scope:local +CheckSuitGive = .text:0x800988E4; // type:function size:0x1C scope:local +StartSuitGive = .text:0x80098900; // type:function size:0x148 scope:local +SuitGiveMain = .text:0x80098A48; // type:function size:0x210 scope:local +CreateBowserObj = .text:0x80098C58; // type:function size:0x228 scope:local +ExecBowserObj = .text:0x80098E80; // type:function size:0x230 scope:local +ExecBowserFall = .text:0x800990B0; // type:function size:0x270 scope:local +ExecBowserLaugh = .text:0x80099320; // type:function size:0x58 scope:local +ExecBowserFire = .text:0x80099378; // type:function size:0x44 scope:local +ExecBowserJump = .text:0x800993BC; // type:function size:0x150 scope:local +ExecBowserPowerUp = .text:0x8009950C; // type:function size:0x128 scope:local +SetBowserState = .text:0x80099634; // type:function size:0x34 scope:local +CheckBowserIdle = .text:0x80099668; // type:function size:0x5C scope:local +CreateMiniBowser = .text:0x800996C4; // type:function size:0xD4 scope:local +CheckMiniBowser = .text:0x80099798; // type:function size:0x1C scope:local +ExecMiniBowser = .text:0x800997B4; // type:function size:0x18C scope:local +CreateBowserEvent = .text:0x80099940; // type:function size:0x1E8 scope:local +CheckBowserEvent = .text:0x80099B28; // type:function size:0x38 scope:local +StopBowserEvent = .text:0x80099B60; // type:function size:0x24 scope:local +ExecBowserEvent = .text:0x80099B84; // type:function size:0xEC scope:local +ShowBowserEvent = .text:0x80099C70; // type:function size:0x1C8 scope:local +HideBowserEvent = .text:0x80099E38; // type:function size:0x108 scope:local +ConfigBowserEvent = .text:0x80099F40; // type:function size:0x160 scope:local +CreatePlayerMot = .text:0x8009A0A0; // type:function size:0x1AC scope:local +KillPlayerMot = .text:0x8009A24C; // type:function size:0xB8 scope:local +InitBowserFire = .text:0x8009A304; // type:function size:0x90 scope:local +BowserFireHook = .text:0x8009A394; // type:function size:0x160 scope:local +SpawnBowserFire = .text:0x8009A4F4; // type:function size:0xE4 scope:local +CheckBowserFire = .text:0x8009A5D8; // type:function size:0xCC scope:local +KillBowserFire = .text:0x8009A6A4; // type:function size:0x40 scope:local +ExecMiniBowserEvent = .text:0x8009A6E4; // type:function size:0x188 scope:local +MiniBowserTake = .text:0x8009A86C; // type:function size:0x2C4 scope:local +MiniBowserTakeAll = .text:0x8009AB30; // type:function size:0x2B8 scope:local +MiniBowserBalloonStop = .text:0x8009ADE8; // type:function size:0x24 scope:local +GetMiniBowserBalloonState = .text:0x8009AE0C; // type:function size:0xC scope:local +SetMiniBowserBalloonState = .text:0x8009AE18; // type:function size:0x10 scope:local +CreateMiniBowserBalloon = .text:0x8009AE28; // type:function size:0x14C scope:local +ExecMiniBowserBalloon = .text:0x8009AF74; // type:function size:0x120 scope:local +MiniBowserBalloonHover = .text:0x8009B094; // type:function size:0xB4 scope:local +MiniBowserBalloonFall = .text:0x8009B148; // type:function size:0x88 scope:local +MiniBowserBalloonRaise = .text:0x8009B1D0; // type:function size:0x80 scope:local +SetMiniBowserMotion = .text:0x8009B250; // type:function size:0xD8 scope:local +SetMiniBowserMotionPause = .text:0x8009B328; // type:function size:0x6C scope:local +WaitMiniBowserMotion = .text:0x8009B394; // type:function size:0x60 scope:local +BoardBattleExec = .text:0x8009B3F4; // type:function size:0x124 +DestroyBattle = .text:0x8009B518; // type:function size:0x2C scope:local +ExecBattle = .text:0x8009B544; // type:function size:0x708 scope:local +TakeCoins = .text:0x8009BC4C; // type:function size:0x1D4 scope:local +InitExplode = .text:0x8009BE20; // type:function size:0x1FC scope:local +CheckExplode = .text:0x8009C01C; // type:function size:0x24 scope:local +UpdateExplode = .text:0x8009C040; // type:function size:0x2D0 scope:local +CreateBattleMain = .text:0x8009C310; // type:function size:0x1E8 scope:local +UpdateBattleMain = .text:0x8009C4F8; // type:function size:0x1A0 scope:local +DescendBattleBomb = .text:0x8009C698; // type:function size:0x64 scope:local +EndBattle = .text:0x8009C6FC; // type:function size:0x88 scope:local +ShowBattleGame = .text:0x8009C784; // type:function size:0x124 scope:local +RaiseBattleGame = .text:0x8009C8A8; // type:function size:0x8C scope:local +UpdateBattleCoin = .text:0x8009C934; // type:function size:0x260 scope:local +ShowBattleCoin = .text:0x8009CB94; // type:function size:0x128 scope:local +InitBattleGameSpr = .text:0x8009CCBC; // type:function size:0x12C scope:local +HideBattleSpr = .text:0x8009CDE8; // type:function size:0x58 scope:local +VibratePad = .text:0x8009CE40; // type:function size:0x64 scope:local +StopBattleBomb = .text:0x8009CEA4; // type:function size:0x24 scope:local +GetBattleBombState = .text:0x8009CEC8; // type:function size:0x10 scope:local +SetBattleBombState = .text:0x8009CED8; // type:function size:0x34 scope:local +SetBattleCoinValue = .text:0x8009CF0C; // type:function size:0x15C scope:local +BoardFortuneExec = .text:0x8009D068; // type:function size:0x124 +FortuneExec = .text:0x8009D18C; // type:function size:0x74 scope:local +DestroyFortune = .text:0x8009D200; // type:function size:0xC scope:local +FortuneMain = .text:0x8009D20C; // type:function size:0x340 scope:local +FortunePostMG = .text:0x8009D54C; // type:function size:0xF8 scope:local +CreateFortunePlatform = .text:0x8009D644; // type:function size:0x160 scope:local +CameraCalcFortune = .text:0x8009D7A4; // type:function size:0x5C scope:local +ExecFortunePlatform = .text:0x8009D800; // type:function size:0x198 scope:local +ExecComFortuneWin = .text:0x8009D998; // type:function size:0x18C scope:local +ConfigComFortune = .text:0x8009DB24; // type:function size:0x20C scope:local +ComFortuneAddStar = .text:0x8009DD30; // type:function size:0x78 scope:local +ComFortuneAddCoin = .text:0x8009DDA8; // type:function size:0x78 scope:local +ComFortuneSwapCoin = .text:0x8009DE20; // type:function size:0x68 scope:local +ComFortuneSwapStar = .text:0x8009DE88; // type:function size:0x68 scope:local +BoardBooCreate = .text:0x8009DEF0; // type:function size:0x11C +BoardBooKill = .text:0x8009E00C; // type:function size:0x2C +BoardBooStealTypeSet = .text:0x8009E038; // type:function size:0x2A8 +ComSetupStealPlayer = .text:0x8009E2E0; // type:function size:0x1D4 scope:local +ComSetStealPlayerInput = .text:0x8009E4B4; // type:function size:0xE8 scope:local +BoardBooStealMain = .text:0x8009E59C; // type:function size:0x280 +ExecCoinSteal = .text:0x8009E81C; // type:function size:0xC0 scope:local +ExecStarSteal = .text:0x8009E8DC; // type:function size:0xA8 scope:local +ExecLightSteal = .text:0x8009E984; // type:function size:0x94 scope:local +SetBooMode = .text:0x8009EA18; // type:function size:0x10 scope:local +CreateBallMdl = .text:0x8009EA28; // type:function size:0xBC scope:local +CreateBallView = .text:0x8009EAE4; // type:function size:0x1D4 scope:local +SetBallView = .text:0x8009ECB8; // type:function size:0xAC scope:local +SetBallActive = .text:0x8009ED64; // type:function size:0x28 scope:local +CheckBallKill = .text:0x8009ED8C; // type:function size:0x4C scope:local +BallMain = .text:0x8009EDD8; // type:function size:0x300 scope:local +BallRenderHook = .text:0x8009F0D8; // type:function size:0x4A0 scope:local +ExecBoo = .text:0x8009F578; // type:function size:0x9C scope:local +UpdateBallCamera = .text:0x8009F614; // type:function size:0x1DC scope:local +CreateBallPlayer = .text:0x8009F7F0; // type:function size:0x358 scope:local +GetBallPlayerState = .text:0x8009FB48; // type:function size:0x24 scope:local +SetBallPlayerState = .text:0x8009FB6C; // type:function size:0x2C scope:local +ExecBallPlayer = .text:0x8009FB98; // type:function size:0x214 scope:local +BallPlayerZoomOut = .text:0x8009FDAC; // type:function size:0x15C scope:local +BallPlayerScare = .text:0x8009FF08; // type:function size:0x110 scope:local +BallPlayerTurn = .text:0x800A0018; // type:function size:0x68 scope:local +BallPlayerPunch = .text:0x800A0080; // type:function size:0x1E0 scope:local +BallPlayerUseLight = .text:0x800A0260; // type:function size:0x10C scope:local +BallPlayerCatch = .text:0x800A036C; // type:function size:0x190 scope:local +BallBooCreate = .text:0x800A04FC; // type:function size:0x328 scope:local +SetBallBooState = .text:0x800A0824; // type:function size:0x170 scope:local +GetBallBooState = .text:0x800A0994; // type:function size:0x24 scope:local +ExecBallBoo = .text:0x800A09B8; // type:function size:0x128 scope:local +BallBooSpawn = .text:0x800A0AE0; // type:function size:0x54 scope:local +BallBooChase = .text:0x800A0B34; // type:function size:0x104 scope:local +BallBooBattle = .text:0x800A0C38; // type:function size:0x218 scope:local +BallBooAttack = .text:0x800A0E50; // type:function size:0xF4 scope:local +BallBooFlash = .text:0x800A0F44; // type:function size:0x178 scope:local +TakeBallCoin = .text:0x800A10BC; // type:function size:0x1B0 scope:local +ExecTakeBallCoin = .text:0x800A126C; // type:function size:0xDC scope:local +TakeBallCoinPosSet = .text:0x800A1348; // type:function size:0x9C scope:local +CheckBallCoinDone = .text:0x800A13E4; // type:function size:0x68 scope:local +TakeBallStar = .text:0x800A144C; // type:function size:0x168 scope:local +ExecTakeBallStar = .text:0x800A15B4; // type:function size:0x184 scope:local +CheckTakeBallStarDone = .text:0x800A1738; // type:function size:0x1C scope:local +BoardBooStealValueGet = .text:0x800A1754; // type:function size:0x30 +BoardBooStealLightCheck = .text:0x800A1784; // type:function size:0x20 +UpdatePlayerCoins = .text:0x800A17A4; // type:function size:0x1B0 scope:local +BoardMGSetupExec = .text:0x800A1954; // type:function size:0x60 +DestroyMGSetup = .text:0x800A19B4; // type:function size:0x1C scope:local +ExecMGSetup = .text:0x800A19D0; // type:function size:0x6FC scope:local +DetermineMGList = .text:0x800A20CC; // type:function size:0x3B0 scope:local +SetupStatusLayout = .text:0x800A247C; // type:function size:0x3A8 scope:local +GetMGType = .text:0x800A2824; // type:function size:0x388 scope:local +GetMGTypeTeam = .text:0x800A2BAC; // type:function size:0x3A4 scope:local +CreateMGSetup = .text:0x800A2F50; // type:function size:0x194 scope:local +UpdateMGSetup = .text:0x800A30E4; // type:function size:0x198 scope:local +CenterStatus = .text:0x800A327C; // type:function size:0x174 scope:local +SeparateStatus = .text:0x800A33F0; // type:function size:0x200 scope:local +PopupVS = .text:0x800A35F0; // type:function size:0x20C scope:local +FallMGType = .text:0x800A37FC; // type:function size:0x1C8 scope:local +LuckyMGFall = .text:0x800A39C4; // type:function size:0x204 scope:local +HideLuckyValue = .text:0x800A3BC8; // type:function size:0xA8 scope:local +UpdateLuckyValue = .text:0x800A3C70; // type:function size:0x430 scope:local +UpdateMGList = .text:0x800A40A0; // type:function size:0x8FC scope:local +BoardMGSetupPlayClear = .text:0x800A499C; // type:function size:0x74 +BoardMGSetupPlaySearch = .text:0x800A4A10; // type:function size:0xC8 +BoardMGSetupPlayPush = .text:0x800A4AD8; // type:function size:0xD0 +BoardMGSetupTutorialExec = .text:0x800A4BA8; // type:function size:0x2E4 +BoardBooHouseHostSet = .text:0x800A4E8C; // type:function size:0x8 +BoardBooHouseHostGet = .text:0x800A4E94; // type:function size:0x8 +BoardBooHouseCreate = .text:0x800A4E9C; // type:function size:0xB4 +BoardBooHouseKill = .text:0x800A4F50; // type:function size:0x50 +BoardBooHouseExec = .text:0x800A4FA0; // type:function size:0x94 +ExecBooHouse = .text:0x800A5034; // type:function size:0x538 scope:local +DestroyBooHouse = .text:0x800A556C; // type:function size:0xF0 scope:local +PickComStealType = .text:0x800A565C; // type:function size:0xFC scope:local +OpenBooHouse = .text:0x800A5758; // type:function size:0x3A0 scope:local +CloseBooHouse = .text:0x800A5AF8; // type:function size:0x124 scope:local +CreateBooHouseModel = .text:0x800A5C1C; // type:function size:0xB0 scope:local +KillBooHouseModel = .text:0x800A5CCC; // type:function size:0xD4 scope:local +ExecNullSteal = .text:0x800A5DA0; // type:function size:0x68 scope:local +ExecStarSteal = .text:0x800A5E08; // type:function size:0x2AC scope:local +ExecCoinSteal = .text:0x800A60B4; // type:function size:0x2AC scope:local +ApplySteal = .text:0x800A6360; // type:function size:0x188 scope:local +ApplyCoinSteal = .text:0x800A64E8; // type:function size:0x16C scope:local +ApplyStarSteal = .text:0x800A6654; // type:function size:0x164 scope:local +ApplyBooLight = .text:0x800A67B8; // type:function size:0x70 scope:local +SetBooBallPos = .text:0x800A6828; // type:function size:0x60 scope:local +BoardBooComUseCheck = .text:0x800A6888; // type:function size:0x1A8 +BoardBooHouseTutorialExec = .text:0x800A6A30; // type:function size:0x3D4 +BoardStartExec = .text:0x800A6E04; // type:function size:0x64 +DestroyStart = .text:0x800A6E68; // type:function size:0x84 scope:local +ExecStart = .text:0x800A6EEC; // type:function size:0x400 scope:local +ShowLogo = .text:0x800A72EC; // type:function size:0x2FC scope:local +FocusStart = .text:0x800A75E8; // type:function size:0x17C scope:local +CreatePlayerStart = .text:0x800A7764; // type:function size:0x2D8 scope:local +ExecPlayerStart = .text:0x800A7A3C; // type:function size:0x188 scope:local +PlayerFall = .text:0x800A7BC4; // type:function size:0x1C8 scope:local +PlayerWaitSpeak = .text:0x800A7D8C; // type:function size:0xEC scope:local +PlayerDiceFall = .text:0x800A7E78; // type:function size:0x1A8 scope:local +PlayerDiceRoll = .text:0x800A8020; // type:function size:0x454 scope:local +PlayerDiceNumShow = .text:0x800A8474; // type:function size:0xD8 scope:local +PlayerDiceNumHide = .text:0x800A854C; // type:function size:0x250 scope:local +SetPlayerStartState = .text:0x800A879C; // type:function size:0xC8 scope:local +GetPlayerStartState = .text:0x800A8864; // type:function size:0x3C scope:local +ExecStartRoll = .text:0x800A88A0; // type:function size:0x6D4 scope:local +InitCamera = .text:0x800A8F74; // type:function size:0x318 scope:local +InitHost = .text:0x800A928C; // type:function size:0xA4 scope:local +CreateTapWin = .text:0x800A9330; // type:function size:0xDC scope:local +OrderPlayers = .text:0x800A940C; // type:function size:0x21C scope:local +BoardLast5Exec = .text:0x800A9628; // type:function size:0x84 +DestroyLast5 = .text:0x800A96AC; // type:function size:0x30 scope:local +ExecLast5 = .text:0x800A96DC; // type:function size:0x1D4 scope:local +CreateLast5 = .text:0x800A98B0; // type:function size:0x184 scope:local +KillLast5 = .text:0x800A9A34; // type:function size:0x48 scope:local +InitHost = .text:0x800A9A7C; // type:function size:0x10C scope:local +KillHost = .text:0x800A9B88; // type:function size:0xA4 scope:local +Last5Main = .text:0x800A9C2C; // type:function size:0xCC0 scope:local +CheckJump = .text:0x800AA8EC; // type:function size:0xA4 scope:local +CreateLotteryDrawWheel = .text:0x800AA990; // type:function size:0x1FC scope:local +CreateLotteryDraw = .text:0x800AAB8C; // type:function size:0xD4 scope:local +UpdateLotteryDraw = .text:0x800AAC60; // type:function size:0x170 scope:local +SetLotteryDrawState = .text:0x800AADD0; // type:function size:0x88 scope:local +GetLotteryDrawState = .text:0x800AAE58; // type:function size:0x20 scope:local +KillLotteryDrawWheel = .text:0x800AAE78; // type:function size:0x24 scope:local +UpdateLotteryDrawWheel = .text:0x800AAE9C; // type:function size:0x2D0 scope:local +SetLotteryDrawWheelState = .text:0x800AB16C; // type:function size:0x1D8 scope:local +ExecLotteryDraw = .text:0x800AB344; // type:function size:0x950 scope:local +KillLotteryTicket = .text:0x800ABC94; // type:function size:0x4C scope:local +InitLotteryTicket = .text:0x800ABCE0; // type:function size:0x488 scope:local +UpdateLotteryTicket = .text:0x800AC168; // type:function size:0x2A4 scope:local +SetLotteryTicketState = .text:0x800AC40C; // type:function size:0x1C0 scope:local +GetLotteryTicketPlayer = .text:0x800AC5CC; // type:function size:0x7C scope:local +CheckLotteryTicket = .text:0x800AC648; // type:function size:0x78 scope:local +UpdateLotteryTicketMatch = .text:0x800AC6C0; // type:function size:0xB0 scope:local +StartHostMove = .text:0x800AC770; // type:function size:0x1CC scope:local +ExecHostMove = .text:0x800AC93C; // type:function size:0x228 scope:local +CheckHostMove = .text:0x800ACB64; // type:function size:0x1C scope:local +CreateStopWin = .text:0x800ACB80; // type:function size:0xC0 scope:local +CreateLast5Roulette = .text:0x800ACC40; // type:function size:0x180 scope:local +UpdateLast5Roulette = .text:0x800ACDC0; // type:function size:0x2B0 scope:local +SetLast5RouletteFade = .text:0x800AD070; // type:function size:0x44 scope:local +SetLast5RouletteState = .text:0x800AD0B4; // type:function size:0x38 scope:local +GetLast5RouletteState = .text:0x800AD0EC; // type:function size:0x38 scope:local +GetLast5RouletteResult = .text:0x800AD124; // type:function size:0x44 scope:local +CreateTeamResult = .text:0x800AD168; // type:function size:0x2B4 scope:local +CreateTeamResultWork = .text:0x800AD41C; // type:function size:0x340 scope:local +SetTeamResultTarget = .text:0x800AD75C; // type:function size:0x58 scope:local +GetTeamResultTarget = .text:0x800AD7B4; // type:function size:0x58 scope:local +KillTeamResult = .text:0x800AD80C; // type:function size:0x38 scope:local +UpdateTeamResult = .text:0x800AD844; // type:function size:0x260 scope:local +BoardPauseStart = .text:0x800ADAA4; // type:function size:0x88 +PauseExit = .text:0x800ADB2C; // type:function size:0x3C0 scope:local +PauseProcess = .text:0x800ADEEC; // type:function size:0x108 scope:local +CreatePauseScreen = .text:0x800ADFF4; // type:function size:0xABC scope:local +DeletePauseScreen = .text:0x800AEAB0; // type:function size:0x168 scope:local +SetBoxVisible = .text:0x800AEC18; // type:function size:0x58 scope:local +PauseConfigObjFunc = .text:0x800AEC70; // type:function size:0x4F4 scope:local +UpdatePauseText = .text:0x800AF164; // type:function size:0x310 scope:local +InitPauseQuit = .text:0x800AF474; // type:function size:0x264 scope:local +PauseQuitProcess = .text:0x800AF6D8; // type:function size:0x110 scope:local +DeletePauseQuit = .text:0x800AF7E8; // type:function size:0x48 scope:local +UpdatePadConfig = .text:0x800AF830; // type:function size:0xD4 scope:local +CreatePadConfig = .text:0x800AF904; // type:function size:0x1CC scope:local +ScrollInPadConfig = .text:0x800AFAD0; // type:function size:0x178 scope:local +CursorMovePadConfig = .text:0x800AFC48; // type:function size:0x238 scope:local +ChangeDiffPadConfig = .text:0x800AFE80; // type:function size:0x3B0 scope:local +ScrollOutPadConfig = .text:0x800B0230; // type:function size:0x154 scope:local +UpdatePauseBox = .text:0x800B0384; // type:function size:0x390 scope:local +UpdatePauseBoxExt = .text:0x800B0714; // type:function size:0x3E4 scope:local +ExecPauseConfig = .text:0x800B0AF8; // type:function size:0x240 scope:local +CreatePauseControlWin = .text:0x800B0D38; // type:function size:0x210 scope:local +DeletePauseControlWin = .text:0x800B0F48; // type:function size:0x70 scope:local +WaitPauseInput = .text:0x800B0FB8; // type:function size:0x1B8 scope:local +ShowPauseConfig = .text:0x800B1170; // type:function size:0x12C scope:local +CreatePadConfigSprite = .text:0x800B129C; // type:function size:0x1A4 scope:local +ShowPadConfigSprite = .text:0x800B1440; // type:function size:0x10C scope:local +PauseCreateNumber = .text:0x800B154C; // type:function size:0xDC scope:local +BoardPauseActiveCheck = .text:0x800B1628; // type:function size:0x34 +BoardPauseReqCheck = .text:0x800B165C; // type:function size:0x12C +CheckPort = .text:0x800B1788; // type:function size:0x4C scope:local +RotateBox = .text:0x800B17D4; // type:function size:0xC0 scope:local +SearchPathNodeSpace = .text:0x800B1894; // type:function size:0x60 scope:local +InitPathNode = .text:0x800B18F4; // type:function size:0x180 scope:local +FindChildNode = .text:0x800B1A74; // type:function size:0xE4 scope:local +GetNumValidLinks = .text:0x800B1B58; // type:function size:0xB4 scope:local +AddValidLinks = .text:0x800B1C0C; // type:function size:0xD0 scope:local +CheckPathSpace = .text:0x800B1CDC; // type:function size:0x30 scope:local +FindValidLink = .text:0x800B1D0C; // type:function size:0xAC scope:local +CheckEndSpace = .text:0x800B1DB8; // type:function size:0xF0 scope:local +BoardComPathShortcutLenGet = .text:0x800B1EA8; // type:function size:0x74C +BoardComPathBestGet = .text:0x800B25F4; // type:function size:0x3E4 +BoardComPathLenGet = .text:0x800B29D8; // type:function size:0x65C +CheckPath = .text:0x800B3034; // type:function size:0x488 scope:local +BoardComPathBestGetFlag = .text:0x800B34BC; // type:function size:0x45C +CheckPathFlag = .text:0x800B3918; // type:function size:0x4E0 scope:local +TutorialProcFunc = .text:0x800B3DF8; // type:function size:0x34 scope:local +BoardTutorialInit = .text:0x800B3E2C; // type:function size:0x80 +BoardTutorialKill = .text:0x800B3EAC; // type:function size:0x4C +BoardTutorialHookSet = .text:0x800B3EF8; // type:function size:0x8 +BoardTutorialHookExec = .text:0x800B3F00; // type:function size:0x44 +BoardTutorialPlayerInit = .text:0x800B3F44; // type:function size:0x78 +BoardTutorialWorkSave = .text:0x800B3FBC; // type:function size:0x10C +BoardTutorialWorkRestore = .text:0x800B40C8; // type:function size:0xBC +BoardTutorialDirInputSet = .text:0x800B4184; // type:function size:0x10 +BoardTutorialBlockSetPos = .text:0x800B4194; // type:function size:0x40 +BoardTutorialItemSet = .text:0x800B41D4; // type:function size:0x8 +BoardTutorialHostSet = .text:0x800B41DC; // type:function size:0x8 +BoardTutorialHostHide = .text:0x800B41E4; // type:function size:0x30 +PPCMfmsr = .text:0x800B4214; // type:function size:0x8 scope:global +PPCMtmsr = .text:0x800B421C; // type:function size:0x8 scope:global +PPCMfhid0 = .text:0x800B4224; // type:function size:0x8 scope:global +PPCMthid0 = .text:0x800B422C; // type:function size:0x8 +PPCMfl2cr = .text:0x800B4234; // type:function size:0x8 scope:global +PPCMtl2cr = .text:0x800B423C; // type:function size:0x8 scope:global +PPCMtdec = .text:0x800B4244; // type:function size:0x8 scope:weak +PPCSync = .text:0x800B424C; // type:function size:0x8 +PPCHalt = .text:0x800B4254; // type:function size:0x14 scope:weak +PPCMfhid2 = .text:0x800B4268; // type:function size:0x8 scope:global +PPCMthid2 = .text:0x800B4270; // type:function size:0x8 scope:global +PPCMfwpar = .text:0x800B4278; // type:function size:0xC +PPCMtwpar = .text:0x800B4284; // type:function size:0x8 scope:global +PPCDisableSpeculation = .text:0x800B428C; // type:function size:0x28 scope:global +PPCSetFpNonIEEEMode = .text:0x800B42B4; // type:function size:0x8 scope:global +OSGetConsoleType = .text:0x800B42BC; // type:function size:0x28 scope:global +ClearArena = .text:0x800B42E4; // type:function size:0x128 scope:local +InquiryCallback = .text:0x800B440C; // type:function size:0x3C scope:local +OSInit = .text:0x800B4448; // type:function size:0x3B8 scope:global +OSExceptionInit = .text:0x800B4800; // type:function size:0x280 scope:local +__OSDBINTSTART = .text:0x800B4A80; // type:label scope:global +__OSDBIntegrator = .text:0x800B4A80; // type:function size:0x24 scope:local +__OSDBINTEND = .text:0x800B4AA4; // type:label scope:global +__OSDBJump = .text:0x800B4AA4; // type:function size:0x4 scope:local +__OSDBJUMPEND = .text:0x800B4AA8; // type:label scope:global +__OSSetExceptionHandler = .text:0x800B4AA8; // type:function size:0x1C scope:global +__OSGetExceptionHandler = .text:0x800B4AC4; // type:function size:0x14 scope:global +__OSEVStart = .text:0x800B4AD8; // type:label scope:global +OSExceptionVector = .text:0x800B4AD8; // type:function size:0x9C scope:local +__DBVECTOR = .text:0x800B4B30; // type:label scope:global data:4byte +__OSEVSetNumber = .text:0x800B4B40; // type:label scope:global data:4byte +__OSEVEnd = .text:0x800B4B70; // type:label scope:global +OSDefaultExceptionHandler = .text:0x800B4B74; // type:function size:0x58 scope:global +__OSPSInit = .text:0x800B4BCC; // type:function size:0x38 scope:global +__OSGetDIConfig = .text:0x800B4C04; // type:function size:0x14 +OSInitAlarm = .text:0x800B4C18; // type:function size:0x4C scope:global +OSCreateAlarm = .text:0x800B4C64; // type:function size:0xC scope:global +InsertAlarm = .text:0x800B4C70; // type:function size:0x250 scope:local +OSSetAlarm = .text:0x800B4EC0; // type:function size:0x68 scope:global +fn_800B4F28 = .text:0x800B4F28; // type:function size:0x11C +DecrementerExceptionCallback = .text:0x800B5044; // type:function size:0x230 scope:local +DecrementerExceptionHandler = .text:0x800B5274; // type:function size:0x50 scope:local +fn_800B52C4 = .text:0x800B52C4; // type:function size:0xAC +OSAllocFromHeap = .text:0x800B5370; // type:function size:0xFC +OSAllocFixed = .text:0x800B546C; // type:function size:0x284 +OSFreeToHeap = .text:0x800B56F0; // type:function size:0x7C +OSSetCurrentHeap = .text:0x800B576C; // type:function size:0x10 +OSInitAlloc = .text:0x800B577C; // type:function size:0x70 +OSCreateHeap = .text:0x800B57EC; // type:function size:0x6C +OSCheckHeap = .text:0x800B5858; // type:function size:0x360 +OSDumpHeap = .text:0x800B5BB8; // type:function size:0x104 +OSGetArenaHi = .text:0x800B5CBC; // type:function size:0x8 scope:global +OSGetArenaLo = .text:0x800B5CC4; // type:function size:0x8 scope:global +OSSetArenaHi = .text:0x800B5CCC; // type:function size:0x8 scope:global +OSSetArenaLo = .text:0x800B5CD4; // type:function size:0x8 scope:global +__OSInitAudioSystem = .text:0x800B5CDC; // type:function size:0x1BC scope:global +__OSStopAudioSystem = .text:0x800B5E98; // type:function size:0xD8 scope:global +DCEnable = .text:0x800B5F70; // type:function size:0x14 scope:global +DCInvalidateRange = .text:0x800B5F84; // type:function size:0x30 scope:global +DCFlushRange = .text:0x800B5FB4; // type:function size:0x34 scope:global +DCStoreRange = .text:0x800B5FE8; // type:function size:0x34 +DCFlushRangeNoSync = .text:0x800B601C; // type:function size:0x30 scope:global +DCStoreRangeNoSync = .text:0x800B604C; // type:function size:0x30 +DCZeroRange = .text:0x800B607C; // type:function size:0x30 +ICInvalidateRange = .text:0x800B60AC; // type:function size:0x38 scope:global +ICFlashInvalidate = .text:0x800B60E4; // type:function size:0x10 scope:global +ICEnable = .text:0x800B60F4; // type:function size:0x14 scope:global +fn_800B6108 = .text:0x800B6108; // type:function size:0xCC +LCEnable = .text:0x800B61D4; // type:function size:0x38 +LCDisable = .text:0x800B620C; // type:function size:0x28 scope:global +LCStoreBlocks = .text:0x800B6234; // type:function size:0x24 +LCStoreData = .text:0x800B6258; // type:function size:0xAC +LCQueueWait = .text:0x800B6304; // type:function size:0x18 +L2GlobalInvalidate = .text:0x800B631C; // type:function size:0x98 scope:global +DMAErrorHandler = .text:0x800B63B4; // type:function size:0x160 scope:global +__OSCacheInit = .text:0x800B6514; // type:function size:0xF4 scope:global +__OSLoadFPUContext = .text:0x800B6608; // type:function size:0x124 scope:local +__OSSaveFPUContext = .text:0x800B672C; // type:function size:0x128 scope:local +OSSetCurrentContext = .text:0x800B6854; // type:function size:0x5C scope:global +fn_800B68B0 = .text:0x800B68B0; // type:function size:0xC +fn_800B68BC = .text:0x800B68BC; // type:function size:0x80 +OSLoadContext = .text:0x800B693C; // type:function size:0xD8 scope:global +OSClearContext = .text:0x800B6A14; // type:function size:0x24 scope:global +fn_800B6A38 = .text:0x800B6A38; // type:function size:0xBC +OSDumpContext = .text:0x800B6AF4; // type:function size:0x2A8 scope:global +OSSwitchFPUContext = .text:0x800B6D9C; // type:function size:0x84 scope:local +__OSContextInit = .text:0x800B6E20; // type:function size:0x48 scope:global +OSReport = .text:0x800B6E68; // type:function size:0x80 scope:global +OSSetErrorHandler = .text:0x800B6EE8; // type:function size:0x1C scope:global +__OSUnhandledException = .text:0x800B6F04; // type:function size:0x200 scope:global +fn_800B7104 = .text:0x800B7104; // type:function size:0x58 +OSDisableInterrupts = .text:0x800B715C; // type:function size:0x14 scope:global +OSEnableInterrupts = .text:0x800B7170; // type:function size:0x14 scope:global +OSRestoreInterrupts = .text:0x800B7184; // type:function size:0x24 scope:global +__OSSetInterruptHandler = .text:0x800B71A8; // type:function size:0x1C scope:global +fn_800B71C4 = .text:0x800B71C4; // type:function size:0x14 +__OSInterruptInit = .text:0x800B71D8; // type:function size:0x74 scope:global +fn_800B724C = .text:0x800B724C; // type:function size:0x2D8 +__OSMaskInterrupts = .text:0x800B7524; // type:function size:0x88 scope:global +__OSUnmaskInterrupts = .text:0x800B75AC; // type:function size:0x88 scope:global +fn_800B7634 = .text:0x800B7634; // type:function size:0x344 +ExternalInterruptHandler = .text:0x800B7978; // type:function size:0x50 scope:local +OSNotifyLink = .text:0x800B79C8; // type:function size:0x4 +OSNotifyUnlink = .text:0x800B79CC; // type:function size:0x4 +fn_800B79D0 = .text:0x800B79D0; // type:function size:0x274 +OSLink = .text:0x800B7C44; // type:function size:0x250 +fn_800B7E94 = .text:0x800B7E94; // type:function size:0x20C +OSUnlink = .text:0x800B80A0; // type:function size:0x94 +__OSModuleInit = .text:0x800B8134; // type:function size:0x18 scope:global +OSInitMessageQueue = .text:0x800B814C; // type:function size:0x60 +OSGetPhysicalMemSize = .text:0x800B81AC; // type:function size:0xC +OSGetConsoleSimulatedMemSize = .text:0x800B81B8; // type:function size:0xC +fn_800B81C4 = .text:0x800B81C4; // type:function size:0x3C +MEMIntrruptHandler = .text:0x800B8200; // type:function size:0x6C scope:local +Config24MB = .text:0x800B826C; // type:function size:0x80 scope:local +Config48MB = .text:0x800B82EC; // type:function size:0x80 scope:local +RealMode = .text:0x800B836C; // type:function size:0x18 scope:local +__OSInitMemoryProtection = .text:0x800B8384; // type:function size:0x120 scope:global +fn_800B84A4 = .text:0x800B84A4; // type:function size:0x70 +fn_800B8514 = .text:0x800B8514; // type:function size:0x2C +fn_800B8540 = .text:0x800B8540; // type:function size:0x14 +fn_800B8554 = .text:0x800B8554; // type:function size:0xC +__OSReboot = .text:0x800B8560; // type:function size:0x1C0 scope:global +OSRegisterResetFunction = .text:0x800B8720; // type:function size:0x84 scope:global +Reset = .text:0x800B87A4; // type:function size:0x70 scope:local +__OSDoHotReset = .text:0x800B8814; // type:function size:0x48 +OSResetSystem = .text:0x800B885C; // type:function size:0x278 scope:global +OSGetResetCode = .text:0x800B8AD4; // type:function size:0x30 scope:global +__OSResetSWInterruptHandler = .text:0x800B8B04; // type:function size:0xF4 scope:global +OSGetResetButtonState = .text:0x800B8BF8; // type:function size:0x298 +fn_800B8E90 = .text:0x800B8E90; // type:function size:0x60 +fn_800B8EF0 = .text:0x800B8EF0; // type:function size:0x118 +__OSInitSram = .text:0x800B9008; // type:function size:0x134 scope:global +__OSLockSram = .text:0x800B913C; // type:function size:0x5C scope:global +__OSLockSramEx = .text:0x800B9198; // type:function size:0x5C scope:global +fn_800B91F4 = .text:0x800B91F4; // type:function size:0x308 +__OSUnlockSram = .text:0x800B94FC; // type:function size:0x24 scope:global +__OSUnlockSramEx = .text:0x800B9520; // type:function size:0x24 scope:global +__OSSyncSram = .text:0x800B9544; // type:function size:0x10 scope:global +OSGetSoundMode = .text:0x800B9554; // type:function size:0x80 +OSSetSoundMode = .text:0x800B95D4; // type:function size:0xA4 +OSGetProgressiveMode = .text:0x800B9678; // type:function size:0x70 +OSSetProgressiveMode = .text:0x800B96E8; // type:function size:0xA4 +OSGetLanguage = .text:0x800B978C; // type:function size:0x6C +OSGetWirelessID = .text:0x800B97F8; // type:function size:0x84 +OSSetWirelessID = .text:0x800B987C; // type:function size:0xAC +OSInitStopwatch = .text:0x800B9928; // type:function size:0x2C +OSStartStopwatch = .text:0x800B9954; // type:function size:0x3C +OSStopStopwatch = .text:0x800B9990; // type:function size:0xCC +OSCheckStopwatch = .text:0x800B9A5C; // type:function size:0x70 +OSResetStopwatch = .text:0x800B9ACC; // type:function size:0x28 +OSDumpStopwatch = .text:0x800B9AF4; // type:function size:0x1A4 +__OSSystemCallVectorStart = .text:0x800B9C98; // type:label scope:global +fn_800B9C98 = .text:0x800B9C98; // type:function size:0x20 +__OSSystemCallVectorEnd = .text:0x800B9CB4; // type:label scope:global +__OSInitSystemCall = .text:0x800B9CB8; // type:function size:0x64 scope:global +__OSThreadInit = .text:0x800B9D1C; // type:function size:0x128 scope:global +OSInitThreadQueue = .text:0x800B9E44; // type:function size:0x10 scope:global +OSGetCurrentThread = .text:0x800B9E54; // type:function size:0xC +OSDisableScheduler = .text:0x800B9E60; // type:function size:0x40 scope:global +OSEnableScheduler = .text:0x800B9EA0; // type:function size:0x40 scope:global +fn_800B9EE0 = .text:0x800B9EE0; // type:function size:0x68 +__OSGetEffectivePriority = .text:0x800B9F48; // type:function size:0x3C +fn_800B9F84 = .text:0x800B9F84; // type:function size:0x1C0 +SelectThread = .text:0x800BA144; // type:function size:0x200 scope:local +__OSReschedule = .text:0x800BA344; // type:function size:0x30 scope:global +OSYieldThread = .text:0x800BA374; // type:function size:0x3C +OSCreateThread = .text:0x800BA3B0; // type:function size:0x120 +OSExitThread = .text:0x800BA4D0; // type:function size:0xE4 +OSCancelThread = .text:0x800BA5B4; // type:function size:0x1BC scope:global +OSResumeThread = .text:0x800BA770; // type:function size:0x288 +OSSuspendThread = .text:0x800BA9F8; // type:function size:0x170 +OSSleepThread = .text:0x800BAB68; // type:function size:0xEC +OSWakeupThread = .text:0x800BAC54; // type:function size:0x104 +OSSetIdleFunction = .text:0x800BAD58; // type:function size:0x90 +OSGetTime = .text:0x800BADE8; // type:function size:0x18 scope:global +OSGetTick = .text:0x800BAE00; // type:function size:0x8 scope:global +__OSGetSystemTime = .text:0x800BAE08; // type:function size:0x64 scope:global +fn_800BAE6C = .text:0x800BAE6C; // type:function size:0x19C +OSTicksToCalendarTime = .text:0x800BB008; // type:function size:0x204 +__init_user = .text:0x800BB20C; // type:function size:0x20 scope:global +__init_cpp = .text:0x800BB22C; // type:function size:0x54 scope:local +_ExitProcess = .text:0x800BB280; // type:function size:0x20 scope:global +DBInit = .text:0x800BB2A0; // type:function size:0x28 scope:global +fn_800BB2C8 = .text:0x800BB2C8; // type:function size:0x48 +__DBExceptionDestination = .text:0x800BB310; // type:function size:0x10 scope:global +__DBIsExceptionMarked = .text:0x800BB320; // type:function size:0x1C scope:global +DBPrintf = .text:0x800BB33C; // type:function size:0x50 scope:global +PSMTXIdentity = .text:0x800BB38C; // type:function size:0x2C +PSMTXCopy = .text:0x800BB3B8; // type:function size:0x34 +PSMTXConcat = .text:0x800BB3EC; // type:function size:0xCC +PSMTXTranspose = .text:0x800BB4B8; // type:function size:0x50 +PSMTXInverse = .text:0x800BB508; // type:function size:0xF8 +PSMTXInvXpose = .text:0x800BB600; // type:function size:0xC8 +PSMTXRotRad = .text:0x800BB6C8; // type:function size:0x70 +PSMTXRotTrig = .text:0x800BB738; // type:function size:0xA8 +PSMTXRotAxisRad = .text:0x800BB7E0; // type:function size:0x104 +PSMTXTrans = .text:0x800BB8E4; // type:function size:0x34 +PSMTXScale = .text:0x800BB918; // type:function size:0x28 +PSMTXQuat = .text:0x800BB940; // type:function size:0xA4 +C_MTXLookAt = .text:0x800BB9E4; // type:function size:0x18C +C_MTXLightPerspective = .text:0x800BBB70; // type:function size:0xCC +PSMTXMultVec = .text:0x800BBC3C; // type:function size:0x54 +PSMTXMultVecArray = .text:0x800BBC90; // type:function size:0x8C +PSMTXMultVecSR = .text:0x800BBD1C; // type:function size:0x54 +C_MTXPerspective = .text:0x800BBD70; // type:function size:0xD0 +C_MTXOrtho = .text:0x800BBE40; // type:function size:0x98 +PSVECAdd = .text:0x800BBED8; // type:function size:0x24 +PSVECSubtract = .text:0x800BBEFC; // type:function size:0x24 +PSVECScale = .text:0x800BBF20; // type:function size:0x1C +PSVECNormalize = .text:0x800BBF3C; // type:function size:0x44 +PSVECSquareMag = .text:0x800BBF80; // type:function size:0x18 +PSVECMag = .text:0x800BBF98; // type:function size:0x3C +PSVECDotProduct = .text:0x800BBFD4; // type:function size:0x20 +PSVECCrossProduct = .text:0x800BBFF4; // type:function size:0x3C +C_VECHalfAngle = .text:0x800BC030; // type:function size:0xD8 +C_VECReflect = .text:0x800BC108; // type:function size:0xD4 +PSVECSquareDistance = .text:0x800BC1DC; // type:function size:0x28 +PSVECDistance = .text:0x800BC204; // type:function size:0x4C +C_QUATAdd = .text:0x800BC250; // type:function size:0x44 +PSQUATAdd = .text:0x800BC294; // type:function size:0x24 +PSQUATMultiply = .text:0x800BC2B8; // type:function size:0x5C +PSQUATNormalize = .text:0x800BC314; // type:function size:0x54 +PSQUATInverse = .text:0x800BC368; // type:function size:0x50 +C_QUATRotAxisRad = .text:0x800BC3B8; // type:function size:0x8C +C_QUATMtx = .text:0x800BC444; // type:function size:0x258 +C_QUATSlerp = .text:0x800BC69C; // type:function size:0x174 +PSMTXReorder = .text:0x800BC810; // type:function size:0x4C +PSMTXROMultVecArray = .text:0x800BC85C; // type:function size:0x118 +__DVDInitWA = .text:0x800BC974; // type:function size:0x40 scope:global +__DVDInterruptHandler = .text:0x800BC9B4; // type:function size:0x2F4 scope:global +fn_800BCCA8 = .text:0x800BCCA8; // type:function size:0x84 +AlarmHandlerForTimeout = .text:0x800BCD2C; // type:function size:0x70 scope:local +fn_800BCD9C = .text:0x800BCD9C; // type:function size:0x110 +fn_800BCEAC = .text:0x800BCEAC; // type:function size:0x80 +fn_800BCF2C = .text:0x800BCF2C; // type:function size:0x298 +fn_800BD1C4 = .text:0x800BD1C4; // type:function size:0x94 +DVDLowWaitCoverClose = .text:0x800BD258; // type:function size:0x2C scope:global +fn_800BD284 = .text:0x800BD284; // type:function size:0xA4 +DVDLowStopMotor = .text:0x800BD328; // type:function size:0x8C scope:global +fn_800BD3B4 = .text:0x800BD3B4; // type:function size:0x8C +fn_800BD440 = .text:0x800BD440; // type:function size:0x9C +fn_800BD4DC = .text:0x800BD4DC; // type:function size:0x98 +fn_800BD574 = .text:0x800BD574; // type:function size:0x8C +fn_800BD600 = .text:0x800BD600; // type:function size:0x9C +DVDLowReset = .text:0x800BD69C; // type:function size:0xBC scope:global +fn_800BD758 = .text:0x800BD758; // type:function size:0x14 +fn_800BD76C = .text:0x800BD76C; // type:function size:0x18 +__DVDLowSetWAType = .text:0x800BD784; // type:function size:0x44 scope:global +__DVDFSInit = .text:0x800BD7C8; // type:function size:0x38 scope:global +DVDConvertPathToEntrynum = .text:0x800BD800; // type:function size:0x2F4 +DVDFastOpen = .text:0x800BDAF4; // type:function size:0x74 +DVDOpen = .text:0x800BDB68; // type:function size:0xC8 +DVDClose = .text:0x800BDC30; // type:function size:0x24 +fn_800BDC54 = .text:0x800BDC54; // type:function size:0x160 +DVDGetCurrentDir = .text:0x800BDDB4; // type:function size:0xC4 +DVDReadAsyncPrio = .text:0x800BDE78; // type:function size:0xC0 +fn_800BDF38 = .text:0x800BDF38; // type:function size:0x30 +DVDReadPrio = .text:0x800BDF68; // type:function size:0x118 +fn_800BE080 = .text:0x800BE080; // type:function size:0x24 +DVDInit = .text:0x800BE0A4; // type:function size:0xFC scope:global +fn_800BE1A0 = .text:0x800BE1A0; // type:function size:0x54 +fn_800BE1F4 = .text:0x800BE1F4; // type:function size:0x80 +cbForStateError = .text:0x800BE274; // type:function size:0xA8 scope:local +fn_800BE31C = .text:0x800BE31C; // type:function size:0x9C +fn_800BE3B8 = .text:0x800BE3B8; // type:function size:0x28 +fn_800BE3E0 = .text:0x800BE3E0; // type:function size:0xB4 +fn_800BE494 = .text:0x800BE494; // type:function size:0x294 +fn_800BE728 = .text:0x800BE728; // type:function size:0x68 +fn_800BE790 = .text:0x800BE790; // type:function size:0x98 +fn_800BE828 = .text:0x800BE828; // type:function size:0x28 +fn_800BE850 = .text:0x800BE850; // type:function size:0x158 +fn_800BE9A8 = .text:0x800BE9A8; // type:function size:0xE4 +fn_800BEA8C = .text:0x800BEA8C; // type:function size:0x34 +fn_800BEAC0 = .text:0x800BEAC0; // type:function size:0x38 +fn_800BEAF8 = .text:0x800BEAF8; // type:function size:0x114 +fn_800BEC0C = .text:0x800BEC0C; // type:function size:0xA4 +fn_800BECB0 = .text:0x800BECB0; // type:function size:0xFC +AlarmHandler = .text:0x800BEDAC; // type:function size:0x44 scope:local +fn_800BEDF0 = .text:0x800BEDF0; // type:function size:0xCC +fn_800BEEBC = .text:0x800BEEBC; // type:function size:0x30 +fn_800BEEEC = .text:0x800BEEEC; // type:function size:0x70 +fn_800BEF5C = .text:0x800BEF5C; // type:function size:0x28 +cbForStateMotorStopped = .text:0x800BEF84; // type:function size:0xE4 scope:local +stateReady = .text:0x800BF068; // type:function size:0x248 scope:local +stateBusy = .text:0x800BF2B0; // type:function size:0x2C0 scope:local +fn_800BF570 = .text:0x800BF570; // type:function size:0x5D4 +fn_800BFB44 = .text:0x800BFB44; // type:function size:0xDC +fn_800BFC20 = .text:0x800BFC20; // type:function size:0xD0 +DVDReadDiskID = .text:0x800BFCF0; // type:function size:0xD4 scope:global +DVDInquiryAsync = .text:0x800BFDC4; // type:function size:0xD0 scope:global +DVDReset = .text:0x800BFE94; // type:function size:0x44 scope:global +DVDGetCommandBlockStatus = .text:0x800BFED8; // type:function size:0x4C +DVDGetDriveStatus = .text:0x800BFF24; // type:function size:0xAC scope:global +DVDSetAutoInvalidation = .text:0x800BFFD0; // type:function size:0x10 +DVDCancelAsync = .text:0x800BFFE0; // type:function size:0x270 +DVDCancel = .text:0x800C0250; // type:function size:0xAC +fn_800C02FC = .text:0x800C02FC; // type:function size:0x24 +DVDGetCurrentDiskID = .text:0x800C0320; // type:function size:0x8 +DVDCheckDisk = .text:0x800C0328; // type:function size:0xE4 +__DVDPrepareResetAsync = .text:0x800C040C; // type:function size:0x11C +__DVDClearWaitingQueue = .text:0x800C0528; // type:function size:0x38 scope:global +__DVDPushWaitingQueue = .text:0x800C0560; // type:function size:0x68 scope:global +__DVDPopWaitingQueue = .text:0x800C05C8; // type:function size:0xA0 scope:global +__DVDCheckWaitingQueue = .text:0x800C0668; // type:function size:0x58 scope:global +__DVDDequeueWaitingQueue = .text:0x800C06C0; // type:function size:0x60 +ErrorCode2Num = .text:0x800C0720; // type:function size:0x11C scope:local +__DVDStoreErrorCode = .text:0x800C083C; // type:function size:0x7C scope:global +cb = .text:0x800C08B8; // type:function size:0xD8 scope:local +__fstLoad = .text:0x800C0990; // type:function size:0x168 scope:global +fn_800C0AF8 = .text:0x800C0AF8; // type:function size:0x228 +VISetPreRetraceCallback = .text:0x800C0D20; // type:function size:0x44 +VISetPostRetraceCallback = .text:0x800C0D64; // type:function size:0x44 +fn_800C0DA8 = .text:0x800C0DA8; // type:function size:0x90 +__VIInit = .text:0x800C0E38; // type:function size:0x1F8 +VIInit = .text:0x800C1030; // type:function size:0x478 +VIWaitForRetrace = .text:0x800C14A8; // type:function size:0x54 +fn_800C14FC = .text:0x800C14FC; // type:function size:0x2D4 +fn_800C17D0 = .text:0x800C17D0; // type:function size:0x1A0 +VIConfigure = .text:0x800C1970; // type:function size:0x79C +VIFlush = .text:0x800C210C; // type:function size:0x11C +VISetNextFrameBuffer = .text:0x800C2228; // type:function size:0x6C +VISetBlack = .text:0x800C2294; // type:function size:0x7C +VIGetRetraceCount = .text:0x800C2310; // type:function size:0x8 +fn_800C2318 = .text:0x800C2318; // type:function size:0x68 +VIGetNextField = .text:0x800C2380; // type:function size:0xA8 +VIGetCurrentLine = .text:0x800C2428; // type:function size:0x98 +VIGetTvFormat = .text:0x800C24C0; // type:function size:0x7C scope:global +VIGetDTVStatus = .text:0x800C253C; // type:function size:0x3C +DEMOGetRenderModeObj = .text:0x800C2578; // type:function size:0x8 +DEMOInitCaption = .text:0x800C2580; // type:function size:0x228 +DEMOPuts = .text:0x800C27A8; // type:function size:0x310 +DEMOPrintf = .text:0x800C2AB8; // type:function size:0xC4 +DEMOWriteStats = .text:0x800C2B7C; // type:function size:0x394 +DEMOUpdateStats = .text:0x800C2F10; // type:function size:0x58 +DEMOPrintStats = .text:0x800C2F68; // type:function size:0x96C +fn_800C38D4 = .text:0x800C38D4; // type:function size:0x130 +PADClamp = .text:0x800C3A04; // type:function size:0x108 +fn_800C3B0C = .text:0x800C3B0C; // type:function size:0x1A4 +fn_800C3CB0 = .text:0x800C3CB0; // type:function size:0xC4 +fn_800C3D74 = .text:0x800C3D74; // type:function size:0xC0 +fn_800C3E34 = .text:0x800C3E34; // type:function size:0xD8 +fn_800C3F0C = .text:0x800C3F0C; // type:function size:0x32C +fn_800C4238 = .text:0x800C4238; // type:function size:0x134 +PADReset = .text:0x800C436C; // type:function size:0x100 +PADRecalibrate = .text:0x800C446C; // type:function size:0x104 +PADInit = .text:0x800C4570; // type:function size:0x210 +PADRead = .text:0x800C4780; // type:function size:0x3AC +PADControlMotor = .text:0x800C4B2C; // type:function size:0xA4 +PADSetSpec = .text:0x800C4BD0; // type:function size:0x60 +fn_800C4C30 = .text:0x800C4C30; // type:function size:0x174 +fn_800C4DA4 = .text:0x800C4DA4; // type:function size:0x174 +fn_800C4F18 = .text:0x800C4F18; // type:function size:0x3F8 +fn_800C5310 = .text:0x800C5310; // type:function size:0x194 +fn_800C54A4 = .text:0x800C54A4; // type:function size:0x60 +PADSetSamplingCallback = .text:0x800C5504; // type:function size:0x54 +__PADDisableRecalibration = .text:0x800C5558; // type:function size:0x7C scope:global +AIRegisterDMACallback = .text:0x800C55D4; // type:function size:0x44 +AIInitDMA = .text:0x800C5618; // type:function size:0x88 +AIStartDMA = .text:0x800C56A0; // type:function size:0x18 +AIStopDMA = .text:0x800C56B8; // type:function size:0x18 +AIGetDMAStartAddr = .text:0x800C56D0; // type:function size:0x1C +AISetStreamPlayState = .text:0x800C56EC; // type:function size:0xD8 +AIGetStreamPlayState = .text:0x800C57C4; // type:function size:0x10 +AISetDSPSampleRate = .text:0x800C57D4; // type:function size:0xE0 +AIGetDSPSampleRate = .text:0x800C58B4; // type:function size:0x14 +fn_800C58C8 = .text:0x800C58C8; // type:function size:0xD4 +AIGetStreamSampleRate = .text:0x800C599C; // type:function size:0x10 +AISetStreamVolLeft = .text:0x800C59AC; // type:function size:0x1C +AIGetStreamVolLeft = .text:0x800C59C8; // type:function size:0x10 +AISetStreamVolRight = .text:0x800C59D8; // type:function size:0x1C +AIGetStreamVolRight = .text:0x800C59F4; // type:function size:0x10 +AIInit = .text:0x800C5A04; // type:function size:0x164 +fn_800C5B68 = .text:0x800C5B68; // type:function size:0x7C +fn_800C5BE4 = .text:0x800C5BE4; // type:function size:0x90 +fn_800C5C74 = .text:0x800C5C74; // type:function size:0x58 +fn_800C5CCC = .text:0x800C5CCC; // type:function size:0x1E4 +fn_800C5EB0 = .text:0x800C5EB0; // type:function size:0x44 +fn_800C5EF4 = .text:0x800C5EF4; // type:function size:0x3C +fn_800C5F30 = .text:0x800C5F30; // type:function size:0xF0 +fn_800C6020 = .text:0x800C6020; // type:function size:0x68 +fn_800C6088 = .text:0x800C6088; // type:function size:0x74 +ARCheckInit = .text:0x800C60FC; // type:function size:0x8 +ARInit = .text:0x800C6104; // type:function size:0xBC +fn_800C61C0 = .text:0x800C61C0; // type:function size:0x4 +fn_800C61C4 = .text:0x800C61C4; // type:function size:0x8 +ARGetSize = .text:0x800C61CC; // type:function size:0x8 +fn_800C61D4 = .text:0x800C61D4; // type:function size:0x78 +fn_800C624C = .text:0x800C624C; // type:function size:0x914 +fn_800C6B60 = .text:0x800C6B60; // type:function size:0x100 +fn_800C6C60 = .text:0x800C6C60; // type:function size:0x4 +fn_800C6C64 = .text:0x800C6C64; // type:function size:0xCC +ARQInit = .text:0x800C6D30; // type:function size:0x68 +ARQPostRequest = .text:0x800C6D98; // type:function size:0x15C +fn_800C6EF4 = .text:0x800C6EF4; // type:function size:0x10 +fn_800C6F04 = .text:0x800C6F04; // type:function size:0x10 +fn_800C6F14 = .text:0x800C6F14; // type:function size:0x18 +fn_800C6F2C = .text:0x800C6F2C; // type:function size:0x14 +fn_800C6F40 = .text:0x800C6F40; // type:function size:0xB8 +fn_800C6FF8 = .text:0x800C6FF8; // type:function size:0x48 +fn_800C7040 = .text:0x800C7040; // type:function size:0x40 +fn_800C7080 = .text:0x800C7080; // type:function size:0x10 +fn_800C7090 = .text:0x800C7090; // type:function size:0x70 +fn_800C7100 = .text:0x800C7100; // type:function size:0x50 +fn_800C7150 = .text:0x800C7150; // type:function size:0x424 +fn_800C7574 = .text:0x800C7574; // type:function size:0x1A0 +fn_800C7714 = .text:0x800C7714; // type:function size:0x18C +fn_800C78A0 = .text:0x800C78A0; // type:function size:0xA0 +fn_800C7940 = .text:0x800C7940; // type:function size:0x94 +fn_800C79D4 = .text:0x800C79D4; // type:function size:0x7C +fn_800C7A50 = .text:0x800C7A50; // type:function size:0x24 +GXInit = .text:0x800C7A74; // type:function size:0x7CC scope:global +__GXInitGX = .text:0x800C8240; // type:function size:0x884 scope:global +fn_800C8AC4 = .text:0x800C8AC4; // type:function size:0x13C +GXInitFifoBase = .text:0x800C8C00; // type:function size:0x6C scope:global +fn_800C8C6C = .text:0x800C8C6C; // type:function size:0x70 +fn_800C8CDC = .text:0x800C8CDC; // type:function size:0xC +GXSetCPUFifo = .text:0x800C8CE8; // type:function size:0x110 scope:global +GXSetGPFifo = .text:0x800C8DF8; // type:function size:0x178 scope:global +fn_800C8F70 = .text:0x800C8F70; // type:function size:0x20 +fn_800C8F90 = .text:0x800C8F90; // type:function size:0xDC +__GXFifoInit = .text:0x800C906C; // type:function size:0x4C scope:global +fn_800C90B8 = .text:0x800C90B8; // type:function size:0x28 +fn_800C90E0 = .text:0x800C90E0; // type:function size:0x24 +fn_800C9104 = .text:0x800C9104; // type:function size:0x44 +fn_800C9148 = .text:0x800C9148; // type:function size:0x4C +fn_800C9194 = .text:0x800C9194; // type:function size:0x4C +fn_800C91E0 = .text:0x800C91E0; // type:function size:0xFC +GXGetCPUFifo = .text:0x800C92DC; // type:function size:0x8 +GXGetGPFifo = .text:0x800C92E4; // type:function size:0x8 +__GXXfVtxSpecs = .text:0x800C92EC; // type:function size:0x158 +GXSetVtxDesc = .text:0x800C9444; // type:function size:0x360 +__GXSetVCD = .text:0x800C97A4; // type:function size:0x54 +__GXCalculateVLim = .text:0x800C97F8; // type:function size:0x124 +GXClearVtxDesc = .text:0x800C991C; // type:function size:0x4C +GXSetVtxAttrFmt = .text:0x800C9968; // type:function size:0x35C +__GXSetVAT = .text:0x800C9CC4; // type:function size:0x9C +GXSetArray = .text:0x800C9D60; // type:function size:0x8C +GXInvalidateVtxCache = .text:0x800C9DEC; // type:function size:0x10 +GXSetTexCoordGen2 = .text:0x800C9DFC; // type:function size:0x2D0 +GXSetNumTexGens = .text:0x800CA0CC; // type:function size:0x48 +GXSetMisc = .text:0x800CA114; // type:function size:0x78 scope:global +GXFlush = .text:0x800CA18C; // type:function size:0x5C +GXResetWriteGatherPipe = .text:0x800CA1E8; // type:function size:0x34 +__GXAbortWaitPECopyDone = .text:0x800CA21C; // type:function size:0xCC +GXSetDrawSync = .text:0x800CA2E8; // type:function size:0xB8 +GXSetDrawDone = .text:0x800CA3A0; // type:function size:0x98 +GXWaitDrawDone = .text:0x800CA438; // type:function size:0x4C +GXDrawDone = .text:0x800CA484; // type:function size:0x80 +GXPixModeSync = .text:0x800CA504; // type:function size:0x24 +GXPokeAlphaMode = .text:0x800CA528; // type:function size:0x14 +GXPokeAlphaRead = .text:0x800CA53C; // type:function size:0x14 +GXPokeAlphaUpdate = .text:0x800CA550; // type:function size:0x1C +GXPokeBlendMode = .text:0x800CA56C; // type:function size:0x88 +GXPokeColorUpdate = .text:0x800CA5F4; // type:function size:0x1C +GXPokeDstAlpha = .text:0x800CA610; // type:function size:0x14 +GXPokeDither = .text:0x800CA624; // type:function size:0x1C +GXPokeZMode = .text:0x800CA640; // type:function size:0x28 +GXSetDrawSyncCallback = .text:0x800CA668; // type:function size:0x44 +GXTokenInterruptHandler = .text:0x800CA6AC; // type:function size:0x88 +GXFinishInterruptHandler = .text:0x800CA734; // type:function size:0x84 +__GXPEInit = .text:0x800CA7B8; // type:function size:0x80 scope:global +__GXSetDirtyState = .text:0x800CA838; // type:function size:0xA0 +GXBegin = .text:0x800CA8D8; // type:function size:0xF0 +__GXSendFlushPrim = .text:0x800CA9C8; // type:function size:0x88 +GXSetLineWidth = .text:0x800CAA50; // type:function size:0x58 +GXSetPointSize = .text:0x800CAAA8; // type:function size:0x54 +GXEnableTexOffsets = .text:0x800CAAFC; // type:function size:0x64 +GXSetCullMode = .text:0x800CAB60; // type:function size:0x50 +GXSetCoPlanar = .text:0x800CABB0; // type:function size:0x44 +__GXSetGenMode = .text:0x800CABF4; // type:function size:0x24 +GXAdjustForOverscan = .text:0x800CAC18; // type:function size:0x120 +GXSetDispCopySrc = .text:0x800CAD38; // type:function size:0xC0 +GXSetTexCopySrc = .text:0x800CADF8; // type:function size:0xC0 +GXSetDispCopyDst = .text:0x800CAEB8; // type:function size:0x44 +GXSetTexCopyDst = .text:0x800CAEFC; // type:function size:0x170 +GXSetDispCopyFrame2Field = .text:0x800CB06C; // type:function size:0x2C +GXSetCopyClamp = .text:0x800CB098; // type:function size:0x7C +GXGetYScaleFactor = .text:0x800CB114; // type:function size:0x238 +GXSetDispCopyYScale = .text:0x800CB34C; // type:function size:0xD4 +GXSetCopyClear = .text:0x800CB420; // type:function size:0x68 +GXSetCopyFilter = .text:0x800CB488; // type:function size:0x228 +GXSetDispCopyGamma = .text:0x800CB6B0; // type:function size:0x1C +GXCopyDisp = .text:0x800CB6CC; // type:function size:0x170 +GXCopyTex = .text:0x800CB83C; // type:function size:0x190 +GXClearBoundingBox = .text:0x800CB9CC; // type:function size:0x38 +GXInitLightAttn = .text:0x800CBA04; // type:function size:0x1C +GXInitLightAttnK = .text:0x800CBA20; // type:function size:0x10 +GXInitLightSpot = .text:0x800CBA30; // type:function size:0x180 +GXInitLightDistAttn = .text:0x800CBBB0; // type:function size:0xD0 +GXInitLightPos = .text:0x800CBC80; // type:function size:0x10 +GXInitLightDir = .text:0x800CBC90; // type:function size:0x1C +GXInitSpecularDir = .text:0x800CBCAC; // type:function size:0xD4 +GXInitLightColor = .text:0x800CBD80; // type:function size:0x28 +GXLoadLightObjImm = .text:0x800CBDA8; // type:function size:0x148 +GXSetChanAmbColor = .text:0x800CBEF0; // type:function size:0x168 +GXSetChanMatColor = .text:0x800CC058; // type:function size:0x168 +GXSetNumChans = .text:0x800CC1C0; // type:function size:0x4C +GXSetChanCtrl = .text:0x800CC20C; // type:function size:0x1E4 +GXGetTexBufferSize = .text:0x800CC3F0; // type:function size:0x15C +__GetImageTileCount = .text:0x800CC54C; // type:function size:0xC8 +GXInitTexObj = .text:0x800CC614; // type:function size:0x274 +GXInitTexObjCI = .text:0x800CC888; // type:function size:0x48 +GXInitTexObjLOD = .text:0x800CC8D0; // type:function size:0x194 +GXGetTexObjFmt = .text:0x800CCA64; // type:function size:0x8 +GXLoadTexObjPreLoaded = .text:0x800CCA6C; // type:function size:0x1A8 +GXLoadTexObj = .text:0x800CCC14; // type:function size:0x54 +GXInitTlutObj = .text:0x800CCC68; // type:function size:0x48 +GXLoadTlut = .text:0x800CCCB0; // type:function size:0x9C +GXInitTexCacheRegion = .text:0x800CCD4C; // type:function size:0x120 scope:global +GXInitTlutRegion = .text:0x800CCE6C; // type:function size:0x48 scope:global +GXInvalidateTexAll = .text:0x800CCEB4; // type:function size:0x48 +GXSetTexRegionCallback = .text:0x800CCEFC; // type:function size:0x14 +GXSetTlutRegionCallback = .text:0x800CCF10; // type:function size:0x14 +GXSetTexCoordScaleManually = .text:0x800CCF24; // type:function size:0x9C +fn_800CCFC0 = .text:0x800CCFC0; // type:function size:0xCC +__GXSetSUTexRegs = .text:0x800CD08C; // type:function size:0x17C +__GXSetTmemConfig = .text:0x800CD208; // type:function size:0x240 scope:global +GXSetTevIndirect = .text:0x800CD448; // type:function size:0x9C +GXSetIndTexMtx = .text:0x800CD4E4; // type:function size:0x160 +GXSetIndTexCoordScale = .text:0x800CD644; // type:function size:0x1D4 +GXSetIndTexOrder = .text:0x800CD818; // type:function size:0x138 +GXSetNumIndStages = .text:0x800CD950; // type:function size:0x2C +GXSetTevDirect = .text:0x800CD97C; // type:function size:0x48 +GXSetTevIndWarp = .text:0x800CD9C4; // type:function size:0x64 +GXSetTevIndTile = .text:0x800CDA28; // type:function size:0x1AC +__GXUpdateBPMask = .text:0x800CDBD4; // type:function size:0xCC +__GXFlushTextureState = .text:0x800CDCA0; // type:function size:0x24 scope:global +GXSetTevOp = .text:0x800CDCC4; // type:function size:0x1A4 +GXSetTevColorIn = .text:0x800CDE68; // type:function size:0x80 +GXSetTevAlphaIn = .text:0x800CDEE8; // type:function size:0x84 +GXSetTevColorOp = .text:0x800CDF6C; // type:function size:0xC0 +GXSetTevAlphaOp = .text:0x800CE02C; // type:function size:0xC0 +GXSetTevColor = .text:0x800CE0EC; // type:function size:0x74 +GXSetTevColorS10 = .text:0x800CE160; // type:function size:0x74 +GXSetTevKColor = .text:0x800CE1D4; // type:function size:0x74 +GXSetTevKColorSel = .text:0x800CE248; // type:function size:0x6C +GXSetTevKAlphaSel = .text:0x800CE2B4; // type:function size:0x6C +GXSetTevSwapMode = .text:0x800CE320; // type:function size:0x58 +GXSetTevSwapModeTable = .text:0x800CE378; // type:function size:0xA0 +GXSetAlphaCompare = .text:0x800CE418; // type:function size:0x50 +GXSetZTexture = .text:0x800CE468; // type:function size:0x84 +GXSetTevOrder = .text:0x800CE4EC; // type:function size:0x1DC +GXSetNumTevStages = .text:0x800CE6C8; // type:function size:0x34 +GXSetFog = .text:0x800CE6FC; // type:function size:0x1B0 +GXSetFogRangeAdj = .text:0x800CE8AC; // type:function size:0x100 +GXSetBlendMode = .text:0x800CE9AC; // type:function size:0x104 +GXSetColorUpdate = .text:0x800CEAB0; // type:function size:0x40 +GXSetAlphaUpdate = .text:0x800CEAF0; // type:function size:0x40 +GXSetZMode = .text:0x800CEB30; // type:function size:0x78 +GXSetZCompLoc = .text:0x800CEBA8; // type:function size:0x40 +GXSetPixelFmt = .text:0x800CEBE8; // type:function size:0x110 +GXSetDither = .text:0x800CECF8; // type:function size:0x40 +GXSetDstAlpha = .text:0x800CED38; // type:function size:0x54 +GXSetFieldMask = .text:0x800CED8C; // type:function size:0x38 +GXSetFieldMode = .text:0x800CEDC4; // type:function size:0x80 +__GXSetRange = .text:0x800CEE44; // type:function size:0x4 +GXBeginDisplayList = .text:0x800CEE48; // type:function size:0xC8 +GXEndDisplayList = .text:0x800CEF10; // type:function size:0xD4 +GXCallDisplayList = .text:0x800CEFE4; // type:function size:0x70 +GXProject = .text:0x800CF054; // type:function size:0x174 +GXSetProjection = .text:0x800CF1C8; // type:function size:0xD4 +GXSetProjectionv = .text:0x800CF29C; // type:function size:0x78 +fn_800CF314 = .text:0x800CF314; // type:function size:0x34 +fn_800CF348 = .text:0x800CF348; // type:function size:0x34 +fn_800CF37C = .text:0x800CF37C; // type:function size:0x24 +GXLoadPosMtxImm = .text:0x800CF3A0; // type:function size:0x3C +GXLoadNrmMtxImm = .text:0x800CF3DC; // type:function size:0x40 +GXSetCurrentMtx = .text:0x800CF41C; // type:function size:0x3C +GXLoadTexMtxImm = .text:0x800CF458; // type:function size:0x84 +GXSetViewportJitter = .text:0x800CF4DC; // type:function size:0x11C +GXSetViewport = .text:0x800CF5F8; // type:function size:0x24 +GXGetViewportv = .text:0x800CF61C; // type:function size:0x4C +GXSetScissor = .text:0x800CF668; // type:function size:0xB0 +GXSetScissorBoxOffset = .text:0x800CF718; // type:function size:0x44 +GXSetClipMode = .text:0x800CF75C; // type:function size:0x28 +__GXSetMatrixIndex = .text:0x800CF784; // type:function size:0x84 +GXSetGPMetric = .text:0x800CF808; // type:function size:0x898 +GXReadGPMetric = .text:0x800D00A0; // type:function size:0x1A8 +GXClearGPMetric = .text:0x800D0248; // type:function size:0x10 +GXReadGP0Metric = .text:0x800D0258; // type:function size:0x2C +GXReadGP1Metric = .text:0x800D0284; // type:function size:0x2C +GXReadMemMetric = .text:0x800D02B0; // type:function size:0x214 +GXClearMemMetric = .text:0x800D04C4; // type:function size:0xA8 +GXReadPixMetric = .text:0x800D056C; // type:function size:0x138 +GXClearPixMetric = .text:0x800D06A4; // type:function size:0x30 +GXSetVCacheMetric = .text:0x800D06D4; // type:function size:0x50 +GXReadVCacheMetric = .text:0x800D0724; // type:function size:0x94 +GXClearVCacheMetric = .text:0x800D07B8; // type:function size:0x1C +fn_800D07D4 = .text:0x800D07D4; // type:function size:0x4 +fn_800D07D8 = .text:0x800D07D8; // type:function size:0x34 +fn_800D080C = .text:0x800D080C; // type:function size:0xD8 +fn_800D08E4 = .text:0x800D08E4; // type:function size:0x118 +fn_800D09FC = .text:0x800D09FC; // type:function size:0xA8 +fn_800D0AA4 = .text:0x800D0AA4; // type:function size:0x84 +fn_800D0B28 = .text:0x800D0B28; // type:function size:0xC0 +fn_800D0BE8 = .text:0x800D0BE8; // type:function size:0xF0 +fn_800D0CD8 = .text:0x800D0CD8; // type:function size:0xAC +fn_800D0D84 = .text:0x800D0D84; // type:function size:0xA4 +fn_800D0E28 = .text:0x800D0E28; // type:function size:0x22C +fn_800D1054 = .text:0x800D1054; // type:function size:0x110 +__CARDStart = .text:0x800D1164; // type:function size:0x1B4 +__CARDReadSegment = .text:0x800D1318; // type:function size:0x134 +__CARDWritePage = .text:0x800D144C; // type:function size:0x11C +__CARDEraseSector = .text:0x800D1568; // type:function size:0xE0 +CARDInit = .text:0x800D1648; // type:function size:0x9C +__CARDSetDiskID = .text:0x800D16E4; // type:function size:0x38 +__CARDGetControlBlock = .text:0x800D171C; // type:function size:0xB8 +__CARDPutControlBlock = .text:0x800D17D4; // type:function size:0x64 +CARDFreeBlocks = .text:0x800D1838; // type:function size:0x150 +CARDGetSectorSize = .text:0x800D1988; // type:function size:0x84 +__CARDSync = .text:0x800D1A0C; // type:function size:0x98 +fn_800D1AA4 = .text:0x800D1AA4; // type:function size:0x50 +fn_800D1AF4 = .text:0x800D1AF4; // type:function size:0x16C +fn_800D1C60 = .text:0x800D1C60; // type:function size:0x144 +fn_800D1DA4 = .text:0x800D1DA4; // type:function size:0xC4 +__CARDUnlock = .text:0x800D1E68; // type:function size:0xB58 +fn_800D29C0 = .text:0x800D29C0; // type:function size:0x70 +fn_800D2A30 = .text:0x800D2A30; // type:function size:0x324 +fn_800D2D54 = .text:0x800D2D54; // type:function size:0xDC +__CARDRead = .text:0x800D2E30; // type:function size:0x64 +fn_800D2E94 = .text:0x800D2E94; // type:function size:0xDC +__CARDWrite = .text:0x800D2F70; // type:function size:0x64 +__CARDGetFatBlock = .text:0x800D2FD4; // type:function size:0x8 +fn_800D2FDC = .text:0x800D2FDC; // type:function size:0xD4 +fn_800D30B0 = .text:0x800D30B0; // type:function size:0xC8 +__CARDAllocBlock = .text:0x800D3178; // type:function size:0x118 +__CARDFreeBlock = .text:0x800D3290; // type:function size:0x9C +__CARDUpdateFatBlock = .text:0x800D332C; // type:function size:0xAC +__CARDGetDirBlock = .text:0x800D33D8; // type:function size:0x8 +fn_800D33E0 = .text:0x800D33E0; // type:function size:0xD0 +fn_800D34B0 = .text:0x800D34B0; // type:function size:0xC8 +__CARDUpdateDir = .text:0x800D3578; // type:function size:0xC4 +__CARDCheckSum = .text:0x800D363C; // type:function size:0x1B0 +fn_800D37EC = .text:0x800D37EC; // type:function size:0x284 +fn_800D3A70 = .text:0x800D3A70; // type:function size:0x240 +fn_800D3CB0 = .text:0x800D3CB0; // type:function size:0x284 +__CARDVerify = .text:0x800D3F34; // type:function size:0x8C +CARDCheckExAsync = .text:0x800D3FC0; // type:function size:0x590 +CARDCheck = .text:0x800D4550; // type:function size:0x54 +fn_800D45A4 = .text:0x800D45A4; // type:function size:0xCC +CARDProbeEx = .text:0x800D4670; // type:function size:0x17C +fn_800D47EC = .text:0x800D47EC; // type:function size:0x410 +__CARDMountCallback = .text:0x800D4BFC; // type:function size:0x138 +CARDMountAsync = .text:0x800D4D34; // type:function size:0x1A0 +CARDMount = .text:0x800D4ED4; // type:function size:0x48 +fn_800D4F1C = .text:0x800D4F1C; // type:function size:0x9C +CARDUnmount = .text:0x800D4FB8; // type:function size:0xAC +fn_800D5064 = .text:0x800D5064; // type:function size:0x144 +__CARDFormatRegionAsync = .text:0x800D51A8; // type:function size:0x658 +CARDFormat = .text:0x800D5800; // type:function size:0x54 +__CARDCompareFileName = .text:0x800D5854; // type:function size:0x68 +__CARDAccess = .text:0x800D58BC; // type:function size:0x98 +__CARDIsPublic = .text:0x800D5954; // type:function size:0x30 +__CARDGetFileNo = .text:0x800D5984; // type:function size:0x150 +CARDOpen = .text:0x800D5AD4; // type:function size:0x178 +CARDClose = .text:0x800D5C4C; // type:function size:0x54 +__CARDIsOpened = .text:0x800D5CA0; // type:function size:0x8 +fn_800D5CA8 = .text:0x800D5CA8; // type:function size:0x130 +CARDCreateAsync = .text:0x800D5DD8; // type:function size:0x220 +CARDCreate = .text:0x800D5FF8; // type:function size:0x48 +__CARDSeek = .text:0x800D6040; // type:function size:0x1B8 +fn_800D61F8 = .text:0x800D61F8; // type:function size:0x130 +CARDReadAsync = .text:0x800D6328; // type:function size:0x148 +CARDRead = .text:0x800D6470; // type:function size:0x48 +fn_800D64B8 = .text:0x800D64B8; // type:function size:0x170 +fn_800D6628 = .text:0x800D6628; // type:function size:0xB0 +CARDWriteAsync = .text:0x800D66D8; // type:function size:0x114 +CARDWrite = .text:0x800D67EC; // type:function size:0x48 +fn_800D6834 = .text:0x800D6834; // type:function size:0xA4 +CARDDeleteAsync = .text:0x800D68D8; // type:function size:0x110 +CARDDelete = .text:0x800D69E8; // type:function size:0x48 +fn_800D6A30 = .text:0x800D6A30; // type:function size:0x1F8 +CARDGetStatus = .text:0x800D6C28; // type:function size:0x12C +CARDSetStatusAsync = .text:0x800D6D54; // type:function size:0x174 +CARDSetStatus = .text:0x800D6EC8; // type:function size:0x48 +CARDGetSerialNo = .text:0x800D6F10; // type:function size:0xC4 +fn_800D6FD4 = .text:0x800D6FD4; // type:function size:0xF4 +EXIImm = .text:0x800D70C8; // type:function size:0x25C scope:global +fn_800D7324 = .text:0x800D7324; // type:function size:0xA0 +EXIDma = .text:0x800D73C4; // type:function size:0xEC scope:global +EXISync = .text:0x800D74B0; // type:function size:0x238 scope:global +fn_800D76E8 = .text:0x800D76E8; // type:function size:0x48 +fn_800D7730 = .text:0x800D7730; // type:function size:0x7C +__EXIProbe = .text:0x800D77AC; // type:function size:0x174 scope:local +fn_800D7920 = .text:0x800D7920; // type:function size:0x80 +fn_800D79A0 = .text:0x800D79A0; // type:function size:0xB4 +fn_800D7A54 = .text:0x800D7A54; // type:function size:0x10C +fn_800D7B60 = .text:0x800D7B60; // type:function size:0xBC +EXISelect = .text:0x800D7C1C; // type:function size:0x12C scope:global +EXIDeselect = .text:0x800D7D48; // type:function size:0x110 scope:global +EXIIntrruptHandler = .text:0x800D7E58; // type:function size:0xC8 scope:local +TCIntrruptHandler = .text:0x800D7F20; // type:function size:0x218 scope:local +EXTIntrruptHandler = .text:0x800D8138; // type:function size:0xD0 scope:local +EXIInit = .text:0x800D8208; // type:function size:0x114 scope:global +EXILock = .text:0x800D831C; // type:function size:0xF4 scope:global +EXIUnlock = .text:0x800D8410; // type:function size:0xDC scope:global +fn_800D84EC = .text:0x800D84EC; // type:function size:0x18 +fn_800D8504 = .text:0x800D8504; // type:function size:0x28 +fn_800D852C = .text:0x800D852C; // type:function size:0x37C +fn_800D88A8 = .text:0x800D88A8; // type:function size:0x70 +fn_800D8918 = .text:0x800D8918; // type:function size:0x200 +fn_800D8B18 = .text:0x800D8B18; // type:function size:0x20 +fn_800D8B38 = .text:0x800D8B38; // type:function size:0x3C +fn_800D8B74 = .text:0x800D8B74; // type:function size:0x2FC +SIInterruptHandler = .text:0x800D8E70; // type:function size:0x344 scope:local +fn_800D91B4 = .text:0x800D91B4; // type:function size:0x98 +fn_800D924C = .text:0x800D924C; // type:function size:0xCC +fn_800D9318 = .text:0x800D9318; // type:function size:0xF4 +SIInit = .text:0x800D940C; // type:function size:0xA4 scope:global +fn_800D94B0 = .text:0x800D94B0; // type:function size:0x20C +fn_800D96BC = .text:0x800D96BC; // type:function size:0x7C +fn_800D9738 = .text:0x800D9738; // type:function size:0x14 +fn_800D974C = .text:0x800D974C; // type:function size:0x10 +SISetXY = .text:0x800D975C; // type:function size:0x6C scope:global +fn_800D97C8 = .text:0x800D97C8; // type:function size:0x9C +fn_800D9864 = .text:0x800D9864; // type:function size:0x6C +fn_800D98D0 = .text:0x800D98D0; // type:function size:0xD4 +fn_800D99A4 = .text:0x800D99A4; // type:function size:0xC4 +fn_800D9A68 = .text:0x800D9A68; // type:function size:0x8C +SITransfer = .text:0x800D9AF4; // type:function size:0x16C scope:global +GetTypeCallback = .text:0x800D9C60; // type:function size:0x298 scope:local +SIGetType = .text:0x800D9EF8; // type:function size:0x1C4 scope:global +fn_800DA0BC = .text:0x800DA0BC; // type:function size:0x13C +SISetSamplingRate = .text:0x800DA1F8; // type:function size:0xE4 scope:global +SIRefreshSamplingRate = .text:0x800DA2DC; // type:function size:0x24 +THPVideoDecode = .text:0x800DA300; // type:function size:0x244 +fn_800DA544 = .text:0x800DA544; // type:function size:0x44 +fn_800DA588 = .text:0x800DA588; // type:function size:0x13C +fn_800DA6C4 = .text:0x800DA6C4; // type:function size:0x11C +fn_800DA7E0 = .text:0x800DA7E0; // type:function size:0x3BC +fn_800DAB9C = .text:0x800DAB9C; // type:function size:0x1E0 +fn_800DAD7C = .text:0x800DAD7C; // type:function size:0xF0 +fn_800DAE6C = .text:0x800DAE6C; // type:function size:0x68 +fn_800DAED4 = .text:0x800DAED4; // type:function size:0x1BC +fn_800DB090 = .text:0x800DB090; // type:function size:0x54 +fn_800DB0E4 = .text:0x800DB0E4; // type:function size:0x24C +fn_800DB330 = .text:0x800DB330; // type:function size:0x10C +fn_800DB43C = .text:0x800DB43C; // type:function size:0x1A88 +fn_800DCEC4 = .text:0x800DCEC4; // type:function size:0x1A8C +fn_800DE950 = .text:0x800DE950; // type:function size:0x1AAC +fn_800E03FC = .text:0x800E03FC; // type:function size:0x67C +fn_800E0A78 = .text:0x800E0A78; // type:function size:0x6A8 +fn_800E1120 = .text:0x800E1120; // type:function size:0x6A8 +THPInit = .text:0x800E17C8; // type:function size:0x78 +THPAudioDecode = .text:0x800E1840; // type:function size:0x464 +fn_800E1CA4 = .text:0x800E1CA4; // type:function size:0x90 +fn_800E1D34 = .text:0x800E1D34; // type:function size:0x3C +__va_arg = .text:0x800E1D70; // type:function size:0xC8 scope:global +__destroy_global_chain = .text:0x800E1E38; // type:function size:0x48 scope:global +__register_global_object = .text:0x800E1E80; // type:function size:0x18 scope:global +fn_800E1E98 = .text:0x800E1E98; // type:function size:0x4C +fn_800E1EE4 = .text:0x800E1EE4; // type:function size:0x48 +fn_800E1F2C = .text:0x800E1F2C; // type:function size:0xC +fn_800E1F38 = .text:0x800E1F38; // type:function size:0x22C +fn_800E2164 = .text:0x800E2164; // type:function size:0x28 +fn_800E218C = .text:0x800E218C; // type:function size:0x28 +fn_800E21B4 = .text:0x800E21B4; // type:function size:0x28 +fn_800E21DC = .text:0x800E21DC; // type:function size:0x20 +__cvt_fp2unsigned = .text:0x800E21FC; // type:function size:0x5C +__save_fpr = .text:0x800E2258; // type:function size:0x4C scope:global +_savefpr_14 = .text:0x800E2258; // type:label scope:global +_savefpr_15 = .text:0x800E225C; // type:label scope:global +_savefpr_16 = .text:0x800E2260; // type:label scope:global +_savefpr_17 = .text:0x800E2264; // type:label scope:global +_savefpr_18 = .text:0x800E2268; // type:label scope:global +_savefpr_19 = .text:0x800E226C; // type:label scope:global +_savefpr_20 = .text:0x800E2270; // type:label scope:global +_savefpr_21 = .text:0x800E2274; // type:label scope:global +_savefpr_22 = .text:0x800E2278; // type:label scope:global +_savefpr_23 = .text:0x800E227C; // type:label scope:global +_savefpr_24 = .text:0x800E2280; // type:label scope:global +_savefpr_25 = .text:0x800E2284; // type:label scope:global +_savefpr_26 = .text:0x800E2288; // type:label scope:global +_savefpr_27 = .text:0x800E228C; // type:label scope:global +_savefpr_28 = .text:0x800E2290; // type:label scope:global +_savefpr_29 = .text:0x800E2294; // type:label scope:global +_savefpr_30 = .text:0x800E2298; // type:label scope:global +_savefpr_31 = .text:0x800E229C; // type:label scope:global +__restore_fpr = .text:0x800E22A4; // type:function size:0x4C scope:global +_restfpr_14 = .text:0x800E22A4; // type:label scope:global +_restfpr_15 = .text:0x800E22A8; // type:label scope:global +_restfpr_16 = .text:0x800E22AC; // type:label scope:global +_restfpr_17 = .text:0x800E22B0; // type:label scope:global +_restfpr_18 = .text:0x800E22B4; // type:label scope:global +_restfpr_19 = .text:0x800E22B8; // type:label scope:global +_restfpr_20 = .text:0x800E22BC; // type:label scope:global +_restfpr_21 = .text:0x800E22C0; // type:label scope:global +_restfpr_22 = .text:0x800E22C4; // type:label scope:global +_restfpr_23 = .text:0x800E22C8; // type:label scope:global +_restfpr_24 = .text:0x800E22CC; // type:label scope:global +_restfpr_25 = .text:0x800E22D0; // type:label scope:global +_restfpr_26 = .text:0x800E22D4; // type:label scope:global +_restfpr_27 = .text:0x800E22D8; // type:label scope:global +_restfpr_28 = .text:0x800E22DC; // type:label scope:global +_restfpr_29 = .text:0x800E22E0; // type:label scope:global +_restfpr_30 = .text:0x800E22E4; // type:label scope:global +_restfpr_31 = .text:0x800E22E8; // type:label scope:global +__save_gpr = .text:0x800E22F0; // type:function size:0x4C scope:global +_savegpr_14 = .text:0x800E22F0; // type:label scope:global +_savegpr_15 = .text:0x800E22F4; // type:label scope:global +_savegpr_16 = .text:0x800E22F8; // type:label scope:global +_savegpr_17 = .text:0x800E22FC; // type:label scope:global +_savegpr_18 = .text:0x800E2300; // type:label scope:global +_savegpr_19 = .text:0x800E2304; // type:label scope:global +_savegpr_20 = .text:0x800E2308; // type:label scope:global +_savegpr_21 = .text:0x800E230C; // type:label scope:global +_savegpr_22 = .text:0x800E2310; // type:label scope:global +_savegpr_23 = .text:0x800E2314; // type:label scope:global +_savegpr_24 = .text:0x800E2318; // type:label scope:global +_savegpr_25 = .text:0x800E231C; // type:label scope:global +_savegpr_26 = .text:0x800E2320; // type:label scope:global +_savegpr_27 = .text:0x800E2324; // type:label scope:global +_savegpr_28 = .text:0x800E2328; // type:label scope:global +_savegpr_29 = .text:0x800E232C; // type:label scope:global +_savegpr_30 = .text:0x800E2330; // type:label scope:global +_savegpr_31 = .text:0x800E2334; // type:label scope:global +__restore_gpr = .text:0x800E233C; // type:function size:0x4C scope:global +_restgpr_14 = .text:0x800E233C; // type:label scope:global +_restgpr_15 = .text:0x800E2340; // type:label scope:global +_restgpr_16 = .text:0x800E2344; // type:label scope:global +_restgpr_17 = .text:0x800E2348; // type:label scope:global +_restgpr_18 = .text:0x800E234C; // type:label scope:global +_restgpr_19 = .text:0x800E2350; // type:label scope:global +_restgpr_20 = .text:0x800E2354; // type:label scope:global +_restgpr_21 = .text:0x800E2358; // type:label scope:global +_restgpr_22 = .text:0x800E235C; // type:label scope:global +_restgpr_23 = .text:0x800E2360; // type:label scope:global +_restgpr_24 = .text:0x800E2364; // type:label scope:global +_restgpr_25 = .text:0x800E2368; // type:label scope:global +_restgpr_26 = .text:0x800E236C; // type:label scope:global +_restgpr_27 = .text:0x800E2370; // type:label scope:global +_restgpr_28 = .text:0x800E2374; // type:label scope:global +_restgpr_29 = .text:0x800E2378; // type:label scope:global +_restgpr_30 = .text:0x800E237C; // type:label scope:global +_restgpr_31 = .text:0x800E2380; // type:label scope:global +__div2u = .text:0x800E2388; // type:function size:0xEC scope:global +__div2i = .text:0x800E2474; // type:function size:0x138 +__mod2u = .text:0x800E25AC; // type:function size:0xE4 scope:global +__mod2i = .text:0x800E2690; // type:function size:0x10C +__shl2i = .text:0x800E279C; // type:function size:0x24 +__shr2u = .text:0x800E27C0; // type:function size:0x24 +__shr2i = .text:0x800E27E4; // type:function size:0x28 +__cvt_dbl_usll = .text:0x800E280C; // type:function size:0xCC +GetR2__Fv = .text:0x800E28D8; // type:function size:0x8 scope:local +__fini_cpp_exceptions = .text:0x800E28E0; // type:function size:0x34 scope:global +__init_cpp_exceptions = .text:0x800E2914; // type:function size:0x40 scope:global +fn_800E2954 = .text:0x800E2954; // type:function size:0x104 +fn_800E2A58 = .text:0x800E2A58; // type:function size:0x144 +fn_800E2B9C = .text:0x800E2B9C; // type:function size:0x44 +fn_800E2BE0 = .text:0x800E2BE0; // type:function size:0x410 +fn_800E2FF0 = .text:0x800E2FF0; // type:function size:0x1B4 +fn_800E31A4 = .text:0x800E31A4; // type:function size:0x5C +fn_800E3200 = .text:0x800E3200; // type:function size:0x50C +fn_800E370C = .text:0x800E370C; // type:function size:0x248 +fn_800E3954 = .text:0x800E3954; // type:function size:0x1C0 +fn_800E3B14 = .text:0x800E3B14; // type:function size:0x204 +__unregister_fragment = .text:0x800E3D18; // type:function size:0x34 scope:global +__register_fragment = .text:0x800E3D4C; // type:function size:0x34 scope:global +fn_800E3D80 = .text:0x800E3D80; // type:function size:0xC +fn_800E3D8C = .text:0x800E3D8C; // type:function size:0xB8 +exit = .text:0x800E3E44; // type:function size:0xCC scope:global +fn_800E3F10 = .text:0x800E3F10; // type:function size:0x88 +fn_800E3F98 = .text:0x800E3F98; // type:function size:0x134 +fn_800E40CC = .text:0x800E40CC; // type:function size:0x1FC +fn_800E42C8 = .text:0x800E42C8; // type:function size:0xBC +fn_800E4384 = .text:0x800E4384; // type:function size:0x17C +fn_800E4500 = .text:0x800E4500; // type:function size:0x70 +__close_all = .text:0x800E4570; // type:function size:0x98 scope:global +fn_800E4608 = .text:0x800E4608; // type:function size:0x1A4 +fn_800E47AC = .text:0x800E47AC; // type:function size:0x23C +fn_800E49E8 = .text:0x800E49E8; // type:function size:0x340 +fn_800E4D28 = .text:0x800E4D28; // type:function size:0xEC +fn_800E4E14 = .text:0x800E4E14; // type:function size:0x28C +fn_800E50A0 = .text:0x800E50A0; // type:function size:0x110 +fn_800E51B0 = .text:0x800E51B0; // type:function size:0x70 +abs = .text:0x800E5220; // type:function size:0x10 +__flush_buffer = .text:0x800E5230; // type:function size:0xC4 scope:global +__prep_buffer = .text:0x800E52F4; // type:function size:0x34 scope:global +tolower = .text:0x800E5328; // type:function size:0x24 +isalpha = .text:0x800E534C; // type:function size:0x18 +__fwrite = .text:0x800E5364; // type:function size:0x30C scope:global +fwrite = .text:0x800E5670; // type:function size:0x20 scope:global +fflush = .text:0x800E5690; // type:function size:0x138 +fclose = .text:0x800E57C8; // type:function size:0xC0 +fseek = .text:0x800E5888; // type:function size:0x20 scope:global +_fseek = .text:0x800E58A8; // type:function size:0x23C +ftell = .text:0x800E5AE4; // type:function size:0x70 +wcstombs = .text:0x800E5B54; // type:function size:0xA0 scope:global +fn_800E5BF4 = .text:0x800E5BF4; // type:function size:0xA4 +memcmp = .text:0x800E5C98; // type:function size:0x4C +__memrchr = .text:0x800E5CE4; // type:function size:0x2C scope:global +memchr = .text:0x800E5D10; // type:function size:0x2C scope:global +memmove = .text:0x800E5D3C; // type:function size:0xCC +__copy_longs_rev_unaligned = .text:0x800E5E08; // type:function size:0xB0 +__copy_longs_unaligned = .text:0x800E5EB8; // type:function size:0xC4 +__copy_longs_rev_aligned = .text:0x800E5F7C; // type:function size:0xAC +__copy_longs_aligned = .text:0x800E6028; // type:function size:0xC0 +__stdio_atexit = .text:0x800E60E8; // type:function size:0x10 scope:global +sprintf = .text:0x800E60F8; // type:function size:0xE0 +vsprintf = .text:0x800E61D8; // type:function size:0x78 +vsnprintf = .text:0x800E6250; // type:function size:0x74 +vprintf = .text:0x800E62C4; // type:function size:0x7C scope:global +printf = .text:0x800E6340; // type:function size:0xCC +__StringWrite = .text:0x800E640C; // type:function size:0x6C +__FileWrite = .text:0x800E6478; // type:function size:0x58 scope:global +__pformatter = .text:0x800E64D0; // type:function size:0x774 scope:local +float2str = .text:0x800E6C44; // type:function size:0x6EC scope:local +fn_800E7330 = .text:0x800E7330; // type:function size:0x12C +double2hex = .text:0x800E745C; // type:function size:0x338 scope:local +longlong2str = .text:0x800E7794; // type:function size:0x2DC scope:local +long2str = .text:0x800E7A70; // type:function size:0x220 scope:local +parse_format = .text:0x800E7C90; // type:function size:0x504 scope:local +raise = .text:0x800E8194; // type:function size:0xB0 +strchr = .text:0x800E8244; // type:function size:0x30 scope:global +strncmp = .text:0x800E8274; // type:function size:0x40 +strcmp = .text:0x800E82B4; // type:function size:0x128 +strcat = .text:0x800E83DC; // type:function size:0x44 +strcpy = .text:0x800E8420; // type:function size:0xB8 +strlen = .text:0x800E84D8; // type:function size:0x1C scope:global +__close_console = .text:0x800E84F4; // type:function size:0x8 +__write_console = .text:0x800E84FC; // type:function size:0xC4 +fwide = .text:0x800E85C0; // type:function size:0x88 scope:global +__ieee754_acos = .text:0x800E8648; // type:function size:0x310 +__ieee754_asin = .text:0x800E8958; // type:function size:0x264 +__ieee754_atan2 = .text:0x800E8BBC; // type:function size:0x290 +__ieee754_fmod = .text:0x800E8E4C; // type:function size:0x33C +__ieee754_pow = .text:0x800E9188; // type:function size:0x88C +__ieee754_rem_pio2 = .text:0x800E9A14; // type:function size:0x3A0 +__kernel_cos = .text:0x800E9DB4; // type:function size:0xF4 +__kernel_rem_pio2 = .text:0x800E9EA8; // type:function size:0xE54 +__kernel_sin = .text:0x800EACFC; // type:function size:0xA0 +__kernel_tan = .text:0x800EAD9C; // type:function size:0x214 +atan = .text:0x800EAFB0; // type:function size:0x200 +copysign = .text:0x800EB1B0; // type:function size:0x28 +cos = .text:0x800EB1D8; // type:function size:0xD4 +floor = .text:0x800EB2AC; // type:function size:0x148 +frexp = .text:0x800EB3F4; // type:function size:0x8C +ldexp = .text:0x800EB480; // type:function size:0x1C4 +modf = .text:0x800EB644; // type:function size:0xFC +sin = .text:0x800EB740; // type:function size:0xD8 +tan = .text:0x800EB818; // type:function size:0x78 +acos = .text:0x800EB890; // type:function size:0x20 +asin = .text:0x800EB8B0; // type:function size:0x20 +atan2 = .text:0x800EB8D0; // type:function size:0x20 +fmod = .text:0x800EB8F0; // type:function size:0x20 +pow = .text:0x800EB910; // type:function size:0x20 +tanf = .text:0x800EB930; // type:function size:0x24 scope:weak +sinf = .text:0x800EB954; // type:function size:0x24 scope:weak +cosf = .text:0x800EB978; // type:function size:0x24 scope:weak +atan2f = .text:0x800EB99C; // type:function size:0x24 scope:weak +acosf = .text:0x800EB9C0; // type:function size:0x24 scope:weak +TRKNubMainLoop = .text:0x800EB9E4; // type:function size:0xF8 scope:global +TRKDestructEvent = .text:0x800EBADC; // type:function size:0x24 scope:global +fn_800EBB00 = .text:0x800EBB00; // type:function size:0x18 +fn_800EBB18 = .text:0x800EBB18; // type:function size:0xE0 +TRKGetNextEvent = .text:0x800EBBF8; // type:function size:0xB4 scope:global +TRKInitializeEventQueue = .text:0x800EBCAC; // type:function size:0x58 scope:global +TRKNubWelcome = .text:0x800EBD04; // type:function size:0x28 scope:global +TRKTerminateNub = .text:0x800EBD2C; // type:function size:0x24 scope:global +TRKInitializeNub = .text:0x800EBD50; // type:function size:0x134 scope:global +fn_800EBE84 = .text:0x800EBE84; // type:function size:0x1DC +fn_800EC060 = .text:0x800EC060; // type:function size:0xF0 +fn_800EC150 = .text:0x800EC150; // type:function size:0x98 +fn_800EC1E8 = .text:0x800EC1E8; // type:function size:0xE8 +fn_800EC2D0 = .text:0x800EC2D0; // type:function size:0xC8 +fn_800EC398 = .text:0x800EC398; // type:function size:0xB8 +fn_800EC450 = .text:0x800EC450; // type:function size:0x80 +fn_800EC4D0 = .text:0x800EC4D0; // type:function size:0xA8 +fn_800EC578 = .text:0x800EC578; // type:function size:0x68 +fn_800EC5E0 = .text:0x800EC5E0; // type:function size:0x88 +fn_800EC668 = .text:0x800EC668; // type:function size:0x64 +fn_800EC6CC = .text:0x800EC6CC; // type:function size:0x54 +fn_800EC720 = .text:0x800EC720; // type:function size:0x8C +fn_800EC7AC = .text:0x800EC7AC; // type:function size:0xA4 +fn_800EC850 = .text:0x800EC850; // type:function size:0x30 +fn_800EC880 = .text:0x800EC880; // type:function size:0x40 +fn_800EC8C0 = .text:0x800EC8C0; // type:function size:0x64 +TRKGetBuffer = .text:0x800EC924; // type:function size:0x2C scope:global +fn_800EC950 = .text:0x800EC950; // type:function size:0xC8 +TRKInitializeMessageBuffers = .text:0x800ECA18; // type:function size:0x74 scope:global +fn_800ECA8C = .text:0x800ECA8C; // type:function size:0x8 +TRKInitializeSerialHandler = .text:0x800ECA94; // type:function size:0x24 scope:global +fn_800ECAB8 = .text:0x800ECAB8; // type:function size:0x50 +TRKGetInput = .text:0x800ECB08; // type:function size:0x98 scope:global +fn_800ECBA0 = .text:0x800ECBA0; // type:function size:0x2B8 +usr_put_initialize = .text:0x800ECE58; // type:function size:0x4 scope:global +fn_800ECE5C = .text:0x800ECE5C; // type:function size:0x88 +TRKDispatchMessage = .text:0x800ECEE4; // type:function size:0x84 scope:global +TRKInitializeDispatcher = .text:0x800ECF68; // type:function size:0x18 scope:global +fn_800ECF80 = .text:0x800ECF80; // type:function size:0x1A4 +fn_800ED124 = .text:0x800ED124; // type:function size:0x100 +fn_800ED224 = .text:0x800ED224; // type:function size:0x530 +fn_800ED754 = .text:0x800ED754; // type:function size:0x154 +fn_800ED8A8 = .text:0x800ED8A8; // type:function size:0x2F8 +fn_800EDBA0 = .text:0x800EDBA0; // type:function size:0x3C8 +fn_800EDF68 = .text:0x800EDF68; // type:function size:0x3CC +fn_800EE334 = .text:0x800EE334; // type:function size:0x420 +fn_800EE754 = .text:0x800EE754; // type:function size:0x410 +fn_800EEB64 = .text:0x800EEB64; // type:function size:0x398 +fn_800EEEFC = .text:0x800EEEFC; // type:function size:0x230 +fn_800EF12C = .text:0x800EF12C; // type:function size:0x2D8 +fn_800EF404 = .text:0x800EF404; // type:function size:0xB8 +fn_800EF4BC = .text:0x800EF4BC; // type:function size:0xE4 +fn_800EF5A0 = .text:0x800EF5A0; // type:function size:0xBC +fn_800EF65C = .text:0x800EF65C; // type:function size:0xB0 +fn_800EF70C = .text:0x800EF70C; // type:function size:0xB8 +fn_800EF7C4 = .text:0x800EF7C4; // type:function size:0xC +fn_800EF7D0 = .text:0x800EF7D0; // type:function size:0x10 +fn_800EF7E0 = .text:0x800EF7E0; // type:function size:0x190 +fn_800EF970 = .text:0x800EF970; // type:function size:0x120 +fn_800EFA90 = .text:0x800EFA90; // type:function size:0x1A8 +fn_800EFC38 = .text:0x800EFC38; // type:function size:0x1A4 +fn_800EFDDC = .text:0x800EFDDC; // type:function size:0x2C4 +fn_800F00A0 = .text:0x800F00A0; // type:function size:0x8 +fn_800F00A8 = .text:0x800F00A8; // type:function size:0x8 +fn_800F00B0 = .text:0x800F00B0; // type:function size:0x8 +fn_800F00B8 = .text:0x800F00B8; // type:function size:0xD8 +fn_800F0190 = .text:0x800F0190; // type:function size:0x38 +fn_800F01C8 = .text:0x800F01C8; // type:function size:0xBC +fn_800F0284 = .text:0x800F0284; // type:function size:0x8 +fn_800F028C = .text:0x800F028C; // type:function size:0x8 +fn_800F0294 = .text:0x800F0294; // type:function size:0x3C +TRKInterruptHandler = .text:0x800F02D0; // type:function size:0x194 scope:global +TRKExceptionHandler = .text:0x800F0464; // type:function size:0x9C scope:global +TRKSwapAndGo = .text:0x800F0500; // type:function size:0xC4 scope:global +TRKInterruptHandlerEnableInterrupts = .text:0x800F05C4; // type:function size:0x54 scope:global +TRKTargetSetInputPendingPtr = .text:0x800F0618; // type:function size:0x10 scope:global +fn_800F0628 = .text:0x800F0628; // type:function size:0x21C +fn_800F0844 = .text:0x800F0844; // type:function size:0x18 +TRKTargetSetStopped = .text:0x800F085C; // type:function size:0x10 scope:global +TRKTargetStopped = .text:0x800F086C; // type:function size:0x10 scope:global +fn_800F087C = .text:0x800F087C; // type:function size:0x3C +TRKTargetSupportRequest = .text:0x800F08B8; // type:function size:0x208 scope:global +fn_800F0AC0 = .text:0x800F0AC0; // type:function size:0x10 +fn_800F0AD0 = .text:0x800F0AD0; // type:function size:0x7C +fn_800F0B4C = .text:0x800F0B4C; // type:function size:0x6C +fn_800F0BB8 = .text:0x800F0BB8; // type:function size:0xAC +fn_800F0C64 = .text:0x800F0C64; // type:function size:0x124 +TRKTargetInterrupt = .text:0x800F0D88; // type:function size:0x15C scope:global +TRKPostInterruptEvent = .text:0x800F0EE4; // type:function size:0xC0 scope:global +fn_800F0FA4 = .text:0x800F0FA4; // type:function size:0x60 +fn_800F1004 = .text:0x800F1004; // type:function size:0xA4 +fn_800F10A8 = .text:0x800F10A8; // type:function size:0x24 +fn_800F10CC = .text:0x800F10CC; // type:function size:0x438 +fn_800F1504 = .text:0x800F1504; // type:function size:0x170 +fn_800F1674 = .text:0x800F1674; // type:function size:0x13C +fn_800F17B0 = .text:0x800F17B0; // type:function size:0xF4 +fn_800F18A4 = .text:0x800F18A4; // type:function size:0x14C +fn_800F19F0 = .text:0x800F19F0; // type:function size:0x124 +fn_800F1B20 = .text:0x800F1B20; // type:function size:0x8 +fn_800F1B28 = .text:0x800F1B28; // type:function size:0x8 +fn_800F1B30 = .text:0x800F1B30; // type:function size:0x8 +fn_800F1B38 = .text:0x800F1B38; // type:function size:0x8 +InitMetroTRK = .text:0x800F1B40; // type:function size:0x94 scope:global +TRKInitializeTarget = .text:0x800F1BD4; // type:function size:0x4C scope:global +fn_800F1C20 = .text:0x800F1C20; // type:function size:0x40 +EnableMetroTRKInterrupts = .text:0x800F1C60; // type:function size:0x20 scope:global +TRKSaveExtended1Block = .text:0x800F1C80; // type:function size:0x1B8 scope:global +TRKRestoreExtended1Block = .text:0x800F1E38; // type:function size:0x1B8 scope:global +fn_800F1FF0 = .text:0x800F1FF0; // type:function size:0x8 +TRK_main = .text:0x800F1FF8; // type:function size:0x44 scope:global +TRKLoadContext = .text:0x800F203C; // type:function size:0x88 scope:global +TRKUARTInterruptHandler = .text:0x800F20C4; // type:function size:0x4 scope:global +TRK_board_display = .text:0x800F20C8; // type:function size:0x24 scope:global +UnreserveEXI2Port = .text:0x800F20EC; // type:function size:0x30 scope:global +ReserveEXI2Port = .text:0x800F211C; // type:function size:0x30 scope:global +fn_800F214C = .text:0x800F214C; // type:function size:0xF0 +fn_800F223C = .text:0x800F223C; // type:function size:0x28 +fn_800F2264 = .text:0x800F2264; // type:function size:0xE0 +fn_800F2344 = .text:0x800F2344; // type:function size:0x30 +TRKInitializeIntDrivenUART = .text:0x800F2374; // type:function size:0x3C scope:global +InitMetroTRKCommTable = .text:0x800F23B0; // type:function size:0x100 scope:global +TRKEXICallBack = .text:0x800F24B0; // type:function size:0x38 scope:global +TRKTargetContinue = .text:0x800F24E8; // type:function size:0x34 scope:global +fn_800F251C = .text:0x800F251C; // type:function size:0x10 +fn_800F252C = .text:0x800F252C; // type:function size:0xC +fn_800F2538 = .text:0x800F2538; // type:function size:0xBC +fn_800F25F4 = .text:0x800F25F4; // type:function size:0xBC +fn_800F26B0 = .text:0x800F26B0; // type:function size:0x68 +fn_800F2718 = .text:0x800F2718; // type:function size:0xAC4 +fn_800F31DC = .text:0x800F31DC; // type:function size:0x64 +fn_800F3240 = .text:0x800F3240; // type:function size:0x27C +fn_800F34BC = .text:0x800F34BC; // type:function size:0x2B0 +fn_800F376C = .text:0x800F376C; // type:function size:0x90 +fn_800F37FC = .text:0x800F37FC; // type:function size:0xE4 +fn_800F38E0 = .text:0x800F38E0; // type:function size:0x108 +fn_800F39E8 = .text:0x800F39E8; // type:function size:0xBC +fn_800F3AA4 = .text:0x800F3AA4; // type:function size:0x1CC +fn_800F3C70 = .text:0x800F3C70; // type:function size:0xB58 +fn_800F47C8 = .text:0x800F47C8; // type:function size:0x218 +fn_800F49E0 = .text:0x800F49E0; // type:function size:0xA94 +fn_800F5474 = .text:0x800F5474; // type:function size:0x174 +fn_800F55E8 = .text:0x800F55E8; // type:function size:0x49C +fn_800F5A84 = .text:0x800F5A84; // type:function size:0x9F4 +fn_800F6478 = .text:0x800F6478; // type:function size:0x1A8 +fn_800F6620 = .text:0x800F6620; // type:function size:0x44 +fn_800F6664 = .text:0x800F6664; // type:function size:0x34 +fn_800F6698 = .text:0x800F6698; // type:function size:0x78 +fn_800F6710 = .text:0x800F6710; // type:function size:0x2A0 +fn_800F69B0 = .text:0x800F69B0; // type:function size:0x3C0 +fn_800F6D70 = .text:0x800F6D70; // type:function size:0x25C +fn_800F6FCC = .text:0x800F6FCC; // type:function size:0x45C +fn_800F7428 = .text:0x800F7428; // type:function size:0x744 +fn_800F7B6C = .text:0x800F7B6C; // type:function size:0x6FC +fn_800F8268 = .text:0x800F8268; // type:function size:0x150 +fn_800F83B8 = .text:0x800F83B8; // type:function size:0x64 +fn_800F841C = .text:0x800F841C; // type:function size:0x44 +fn_800F8460 = .text:0x800F8460; // type:function size:0x28 +fn_800F8488 = .text:0x800F8488; // type:function size:0x510 +fn_800F8998 = .text:0x800F8998; // type:function size:0x34 +fn_800F89CC = .text:0x800F89CC; // type:function size:0xC8 +fn_800F8A94 = .text:0x800F8A94; // type:function size:0xE4 +fn_800F8B78 = .text:0x800F8B78; // type:function size:0xE4 +fn_800F8C5C = .text:0x800F8C5C; // type:function size:0x84 +fn_800F8CE0 = .text:0x800F8CE0; // type:function size:0x88 +fn_800F8D68 = .text:0x800F8D68; // type:function size:0x530 +fn_800F9298 = .text:0x800F9298; // type:function size:0x54 +fn_800F92EC = .text:0x800F92EC; // type:function size:0x28 +fn_800F9314 = .text:0x800F9314; // type:function size:0xD0 +fn_800F93E4 = .text:0x800F93E4; // type:function size:0x574 +fn_800F9958 = .text:0x800F9958; // type:function size:0x24 +fn_800F997C = .text:0x800F997C; // type:function size:0x30 +fn_800F99AC = .text:0x800F99AC; // type:function size:0x38 +fn_800F99E4 = .text:0x800F99E4; // type:function size:0x38 +fn_800F9A1C = .text:0x800F9A1C; // type:function size:0x48 +fn_800F9A64 = .text:0x800F9A64; // type:function size:0x38 +fn_800F9A9C = .text:0x800F9A9C; // type:function size:0x58 +fn_800F9AF4 = .text:0x800F9AF4; // type:function size:0x68 +fn_800F9B5C = .text:0x800F9B5C; // type:function size:0x84 +fn_800F9BE0 = .text:0x800F9BE0; // type:function size:0x1C +fn_800F9BFC = .text:0x800F9BFC; // type:function size:0x60 +fn_800F9C5C = .text:0x800F9C5C; // type:function size:0x60 +fn_800F9CBC = .text:0x800F9CBC; // type:function size:0x40 +fn_800F9CFC = .text:0x800F9CFC; // type:function size:0xE0 +fn_800F9DDC = .text:0x800F9DDC; // type:function size:0x40 +fn_800F9E1C = .text:0x800F9E1C; // type:function size:0x50 +fn_800F9E6C = .text:0x800F9E6C; // type:function size:0x60 +fn_800F9ECC = .text:0x800F9ECC; // type:function size:0x94 +fn_800F9F60 = .text:0x800F9F60; // type:function size:0xEC +fn_800FA04C = .text:0x800FA04C; // type:function size:0x158 +fn_800FA1A4 = .text:0x800FA1A4; // type:function size:0xA8 +fn_800FA24C = .text:0x800FA24C; // type:function size:0xF0 +fn_800FA33C = .text:0x800FA33C; // type:function size:0x20 +fn_800FA35C = .text:0x800FA35C; // type:function size:0x20 +fn_800FA37C = .text:0x800FA37C; // type:function size:0xBC +fn_800FA438 = .text:0x800FA438; // type:function size:0x8C +fn_800FA4C4 = .text:0x800FA4C4; // type:function size:0x8AC +fn_800FAD70 = .text:0x800FAD70; // type:function size:0x4 +fn_800FAD74 = .text:0x800FAD74; // type:function size:0x84 +fn_800FADF8 = .text:0x800FADF8; // type:function size:0x160 +fn_800FAF58 = .text:0x800FAF58; // type:function size:0x2C4 +fn_800FB21C = .text:0x800FB21C; // type:function size:0x34 +fn_800FB250 = .text:0x800FB250; // type:function size:0x44 +fn_800FB294 = .text:0x800FB294; // type:function size:0x130 +fn_800FB3C4 = .text:0x800FB3C4; // type:function size:0x458 +fn_800FB81C = .text:0x800FB81C; // type:function size:0x44 +fn_800FB860 = .text:0x800FB860; // type:function size:0x6E8 +fn_800FBF48 = .text:0x800FBF48; // type:function size:0x560 +fn_800FC4A8 = .text:0x800FC4A8; // type:function size:0x654 +fn_800FCAFC = .text:0x800FCAFC; // type:function size:0x6B8 +fn_800FD1B4 = .text:0x800FD1B4; // type:function size:0x634 +fn_800FD7E8 = .text:0x800FD7E8; // type:function size:0x700 +fn_800FDEE8 = .text:0x800FDEE8; // type:function size:0x1F0 +fn_800FE0D8 = .text:0x800FE0D8; // type:function size:0x17C +fn_800FE254 = .text:0x800FE254; // type:function size:0x248 +fn_800FE49C = .text:0x800FE49C; // type:function size:0x1C4 +fn_800FE660 = .text:0x800FE660; // type:function size:0x204 +fn_800FE864 = .text:0x800FE864; // type:function size:0x17C +fn_800FE9E0 = .text:0x800FE9E0; // type:function size:0x188 +fn_800FEB68 = .text:0x800FEB68; // type:function size:0x2C8 +fn_800FEE30 = .text:0x800FEE30; // type:function size:0xD8 +fn_800FEF08 = .text:0x800FEF08; // type:function size:0x98 +fn_800FEFA0 = .text:0x800FEFA0; // type:function size:0x11C +fn_800FF0BC = .text:0x800FF0BC; // type:function size:0x15C +fn_800FF218 = .text:0x800FF218; // type:function size:0x304 +fn_800FF51C = .text:0x800FF51C; // type:function size:0x284 +fn_800FF7A0 = .text:0x800FF7A0; // type:function size:0x10 +fn_800FF7B0 = .text:0x800FF7B0; // type:function size:0x8C +fn_800FF83C = .text:0x800FF83C; // type:function size:0x10 +fn_800FF84C = .text:0x800FF84C; // type:function size:0x128 +fn_800FF974 = .text:0x800FF974; // type:function size:0x10 +fn_800FF984 = .text:0x800FF984; // type:function size:0x5C +fn_800FF9E0 = .text:0x800FF9E0; // type:function size:0x5C +fn_800FFA3C = .text:0x800FFA3C; // type:function size:0x10 +fn_800FFA4C = .text:0x800FFA4C; // type:function size:0x7C +fn_800FFAC8 = .text:0x800FFAC8; // type:function size:0x10 +fn_800FFAD8 = .text:0x800FFAD8; // type:function size:0x9C +fn_800FFB74 = .text:0x800FFB74; // type:function size:0xE4 +fn_800FFC58 = .text:0x800FFC58; // type:function size:0x20 +fn_800FFC78 = .text:0x800FFC78; // type:function size:0x2F0 +fn_800FFF68 = .text:0x800FFF68; // type:function size:0xD0 +fn_80100038 = .text:0x80100038; // type:function size:0x154 +fn_8010018C = .text:0x8010018C; // type:function size:0x18C +fn_80100318 = .text:0x80100318; // type:function size:0xD8 +fn_801003F0 = .text:0x801003F0; // type:function size:0x1FC +fn_801005EC = .text:0x801005EC; // type:function size:0x17C +fn_80100768 = .text:0x80100768; // type:function size:0x1A0 +fn_80100908 = .text:0x80100908; // type:function size:0x258 +fn_80100B60 = .text:0x80100B60; // type:function size:0x12C +fn_80100C8C = .text:0x80100C8C; // type:function size:0x27C +fn_80100F08 = .text:0x80100F08; // type:function size:0x9C +fn_80100FA4 = .text:0x80100FA4; // type:function size:0x9C +fn_80101040 = .text:0x80101040; // type:function size:0x134 +fn_80101174 = .text:0x80101174; // type:function size:0x130 +fn_801012A4 = .text:0x801012A4; // type:function size:0x13C +fn_801013E0 = .text:0x801013E0; // type:function size:0x19C +fn_8010157C = .text:0x8010157C; // type:function size:0x104 +fn_80101680 = .text:0x80101680; // type:function size:0x104 +fn_80101784 = .text:0x80101784; // type:function size:0x104 +fn_80101888 = .text:0x80101888; // type:function size:0x104 +fn_8010198C = .text:0x8010198C; // type:function size:0x104 +fn_80101A90 = .text:0x80101A90; // type:function size:0x104 +fn_80101B94 = .text:0x80101B94; // type:function size:0x104 +fn_80101C98 = .text:0x80101C98; // type:function size:0x104 +fn_80101D9C = .text:0x80101D9C; // type:function size:0x104 +fn_80101EA0 = .text:0x80101EA0; // type:function size:0x104 +fn_80101FA4 = .text:0x80101FA4; // type:function size:0x104 +fn_801020A8 = .text:0x801020A8; // type:function size:0x104 +fn_801021AC = .text:0x801021AC; // type:function size:0x104 +fn_801022B0 = .text:0x801022B0; // type:function size:0x17C +fn_8010242C = .text:0x8010242C; // type:function size:0x17C +fn_801025A8 = .text:0x801025A8; // type:function size:0x164 +fn_8010270C = .text:0x8010270C; // type:function size:0x68 +fn_80102774 = .text:0x80102774; // type:function size:0x220 +fn_80102994 = .text:0x80102994; // type:function size:0x14C +fn_80102AE0 = .text:0x80102AE0; // type:function size:0xBC +fn_80102B9C = .text:0x80102B9C; // type:function size:0x244 +fn_80102DE0 = .text:0x80102DE0; // type:function size:0x80 +fn_80102E60 = .text:0x80102E60; // type:function size:0xDC +fn_80102F3C = .text:0x80102F3C; // type:function size:0xF58 +fn_80103E94 = .text:0x80103E94; // type:function size:0x150 +fn_80103FE4 = .text:0x80103FE4; // type:function size:0xAC +fn_80104090 = .text:0x80104090; // type:function size:0xF0 +fn_80104180 = .text:0x80104180; // type:function size:0x108 +fn_80104288 = .text:0x80104288; // type:function size:0xA4 +fn_8010432C = .text:0x8010432C; // type:function size:0x108 +fn_80104434 = .text:0x80104434; // type:function size:0xFC +fn_80104530 = .text:0x80104530; // type:function size:0x438 +fn_80104968 = .text:0x80104968; // type:function size:0x68 +fn_801049D0 = .text:0x801049D0; // type:function size:0xE0 +fn_80104AB0 = .text:0x80104AB0; // type:function size:0x350 +fn_80104E00 = .text:0x80104E00; // type:function size:0x14 +fn_80104E14 = .text:0x80104E14; // type:function size:0x104 +fn_80104F18 = .text:0x80104F18; // type:function size:0x50 +fn_80104F68 = .text:0x80104F68; // type:function size:0x24C +fn_801051B4 = .text:0x801051B4; // type:function size:0x460 +fn_80105614 = .text:0x80105614; // type:function size:0x1C4 +fn_801057D8 = .text:0x801057D8; // type:function size:0x2A0 +fn_80105A78 = .text:0x80105A78; // type:function size:0xFC +fn_80105B74 = .text:0x80105B74; // type:function size:0x218 +fn_80105D8C = .text:0x80105D8C; // type:function size:0x234 +fn_80105FC0 = .text:0x80105FC0; // type:function size:0xC4 +fn_80106084 = .text:0x80106084; // type:function size:0x15C +fn_801061E0 = .text:0x801061E0; // type:function size:0x74 +fn_80106254 = .text:0x80106254; // type:function size:0x54 +fn_801062A8 = .text:0x801062A8; // type:function size:0x74 +fn_8010631C = .text:0x8010631C; // type:function size:0x144 +fn_80106460 = .text:0x80106460; // type:function size:0x3C +fn_8010649C = .text:0x8010649C; // type:function size:0xE4 +fn_80106580 = .text:0x80106580; // type:function size:0x58 +fn_801065D8 = .text:0x801065D8; // type:function size:0x26C +fn_80106844 = .text:0x80106844; // type:function size:0x28 +fn_8010686C = .text:0x8010686C; // type:function size:0x150 +fn_801069BC = .text:0x801069BC; // type:function size:0x168 +fn_80106B24 = .text:0x80106B24; // type:function size:0x198 +fn_80106CBC = .text:0x80106CBC; // type:function size:0x84 +fn_80106D40 = .text:0x80106D40; // type:function size:0xBC +fn_80106DFC = .text:0x80106DFC; // type:function size:0x248 +fn_80107044 = .text:0x80107044; // type:function size:0xA8 +fn_801070EC = .text:0x801070EC; // type:function size:0x1F8 +fn_801072E4 = .text:0x801072E4; // type:function size:0x1E4 +fn_801074C8 = .text:0x801074C8; // type:function size:0xC +fn_801074D4 = .text:0x801074D4; // type:function size:0x27C +fn_80107750 = .text:0x80107750; // type:function size:0x32C +fn_80107A7C = .text:0x80107A7C; // type:function size:0x33C +fn_80107DB8 = .text:0x80107DB8; // type:function size:0x14C +fn_80107F04 = .text:0x80107F04; // type:function size:0x11C +fn_80108020 = .text:0x80108020; // type:function size:0x3B4 +fn_801083D4 = .text:0x801083D4; // type:function size:0x38 +fn_8010840C = .text:0x8010840C; // type:function size:0xE0 +fn_801084EC = .text:0x801084EC; // type:function size:0x150 +fn_8010863C = .text:0x8010863C; // type:function size:0x20 +fn_8010865C = .text:0x8010865C; // type:function size:0xF4 +fn_80108750 = .text:0x80108750; // type:function size:0x48 +fn_80108798 = .text:0x80108798; // type:function size:0x74 +fn_8010880C = .text:0x8010880C; // type:function size:0xAC +fn_801088B8 = .text:0x801088B8; // type:function size:0x2DC +fn_80108B94 = .text:0x80108B94; // type:function size:0x258 +fn_80108DEC = .text:0x80108DEC; // type:function size:0x21B8 +fn_8010AFA4 = .text:0x8010AFA4; // type:function size:0x44 +fn_8010AFE8 = .text:0x8010AFE8; // type:function size:0xA0 +fn_8010B088 = .text:0x8010B088; // type:function size:0x60 +fn_8010B0E8 = .text:0x8010B0E8; // type:function size:0xC8 +fn_8010B1B0 = .text:0x8010B1B0; // type:function size:0xA8 +fn_8010B258 = .text:0x8010B258; // type:function size:0x84 +fn_8010B2DC = .text:0x8010B2DC; // type:function size:0x158 +fn_8010B434 = .text:0x8010B434; // type:function size:0x6F0 +fn_8010BB24 = .text:0x8010BB24; // type:function size:0x4B4 +fn_8010BFD8 = .text:0x8010BFD8; // type:function size:0x51C +fn_8010C4F4 = .text:0x8010C4F4; // type:function size:0x130 +fn_8010C624 = .text:0x8010C624; // type:function size:0x20 +fn_8010C644 = .text:0x8010C644; // type:function size:0x3F8 +fn_8010CA3C = .text:0x8010CA3C; // type:function size:0x50 +fn_8010CA8C = .text:0x8010CA8C; // type:function size:0xA8 +fn_8010CB34 = .text:0x8010CB34; // type:function size:0x5C +fn_8010CB90 = .text:0x8010CB90; // type:function size:0xFC +fn_8010CC8C = .text:0x8010CC8C; // type:function size:0x204 +fn_8010CE90 = .text:0x8010CE90; // type:function size:0x230 +fn_8010D0C0 = .text:0x8010D0C0; // type:function size:0xD0 +fn_8010D190 = .text:0x8010D190; // type:function size:0x14C +fn_8010D2DC = .text:0x8010D2DC; // type:function size:0x3B0 +fn_8010D68C = .text:0x8010D68C; // type:function size:0x82C +fn_8010DEB8 = .text:0x8010DEB8; // type:function size:0x38 +fn_8010DEF0 = .text:0x8010DEF0; // type:function size:0x4 +fn_8010DEF4 = .text:0x8010DEF4; // type:function size:0x118 +fn_8010E00C = .text:0x8010E00C; // type:function size:0x34 +fn_8010E040 = .text:0x8010E040; // type:function size:0x8 +fn_8010E048 = .text:0x8010E048; // type:function size:0xAC +fn_8010E0F4 = .text:0x8010E0F4; // type:function size:0xB4 +fn_8010E1A8 = .text:0x8010E1A8; // type:function size:0x64 +fn_8010E20C = .text:0x8010E20C; // type:function size:0x1FC +fn_8010E408 = .text:0x8010E408; // type:function size:0x24 +fn_8010E42C = .text:0x8010E42C; // type:function size:0x608 +fn_8010EA34 = .text:0x8010EA34; // type:function size:0x124 +fn_8010EB58 = .text:0x8010EB58; // type:function size:0xF0 +fn_8010EC48 = .text:0x8010EC48; // type:function size:0x2C4 +fn_8010EF0C = .text:0x8010EF0C; // type:function size:0x34 +fn_8010EF40 = .text:0x8010EF40; // type:function size:0x3C +fn_8010EF7C = .text:0x8010EF7C; // type:function size:0x98 +fn_8010F014 = .text:0x8010F014; // type:function size:0x114 +fn_8010F128 = .text:0x8010F128; // type:function size:0x3C +fn_8010F164 = .text:0x8010F164; // type:function size:0x3C +fn_8010F1A0 = .text:0x8010F1A0; // type:function size:0x4A0 +fn_8010F640 = .text:0x8010F640; // type:function size:0x48 +fn_8010F688 = .text:0x8010F688; // type:function size:0x48 +fn_8010F6D0 = .text:0x8010F6D0; // type:function size:0x48 +fn_8010F718 = .text:0x8010F718; // type:function size:0x48 +fn_8010F760 = .text:0x8010F760; // type:function size:0x48 +fn_8010F7A8 = .text:0x8010F7A8; // type:function size:0x48 +fn_8010F7F0 = .text:0x8010F7F0; // type:function size:0x48 +fn_8010F838 = .text:0x8010F838; // type:function size:0x48 +fn_8010F880 = .text:0x8010F880; // type:function size:0x48 +fn_8010F8C8 = .text:0x8010F8C8; // type:function size:0x48 +fn_8010F910 = .text:0x8010F910; // type:function size:0x48 +fn_8010F958 = .text:0x8010F958; // type:function size:0x48 +fn_8010F9A0 = .text:0x8010F9A0; // type:function size:0xB4 +fn_8010FA54 = .text:0x8010FA54; // type:function size:0xB4 +fn_8010FB08 = .text:0x8010FB08; // type:function size:0x284 +fn_8010FD8C = .text:0x8010FD8C; // type:function size:0x70 +fn_8010FDFC = .text:0x8010FDFC; // type:function size:0xFC +fn_8010FEF8 = .text:0x8010FEF8; // type:function size:0x1E4 +fn_801100DC = .text:0x801100DC; // type:function size:0x1C +fn_801100F8 = .text:0x801100F8; // type:function size:0x8C +fn_80110184 = .text:0x80110184; // type:function size:0xA4 +fn_80110228 = .text:0x80110228; // type:function size:0x10 +fn_80110238 = .text:0x80110238; // type:function size:0x48 +fn_80110280 = .text:0x80110280; // type:function size:0x8 +fn_80110288 = .text:0x80110288; // type:function size:0x154 +fn_801103DC = .text:0x801103DC; // type:function size:0xB8 +fn_80110494 = .text:0x80110494; // type:function size:0x34 +fn_801104C8 = .text:0x801104C8; // type:function size:0x8 +fn_801104D0 = .text:0x801104D0; // type:function size:0x8 +fn_801104D8 = .text:0x801104D8; // type:function size:0x20 +fn_801104F8 = .text:0x801104F8; // type:function size:0x8 +fn_80110500 = .text:0x80110500; // type:function size:0x14 +fn_80110514 = .text:0x80110514; // type:function size:0x1B4 +fn_801106C8 = .text:0x801106C8; // type:function size:0x50 +fn_80110718 = .text:0x80110718; // type:function size:0x1AC +fn_801108C4 = .text:0x801108C4; // type:function size:0x20 +fn_801108E4 = .text:0x801108E4; // type:function size:0x14 +fn_801108F8 = .text:0x801108F8; // type:function size:0x14 +fn_8011090C = .text:0x8011090C; // type:function size:0x14 +fn_80110920 = .text:0x80110920; // type:function size:0x14 +fn_80110934 = .text:0x80110934; // type:function size:0x3C +fn_80110970 = .text:0x80110970; // type:function size:0x28 +fn_80110998 = .text:0x80110998; // type:function size:0x78 +fn_80110A10 = .text:0x80110A10; // type:function size:0x2C +fn_80110A3C = .text:0x80110A3C; // type:function size:0x2C +fn_80110A68 = .text:0x80110A68; // type:function size:0x5C +fn_80110AC4 = .text:0x80110AC4; // type:function size:0x2C0 +fn_80110D84 = .text:0x80110D84; // type:function size:0x2C +fn_80110DB0 = .text:0x80110DB0; // type:function size:0x28 +fn_80110DD8 = .text:0x80110DD8; // type:function size:0x20 +fn_80110DF8 = .text:0x80110DF8; // type:function size:0x20 +fn_80110E18 = .text:0x80110E18; // type:function size:0x34 +fn_80110E4C = .text:0x80110E4C; // type:function size:0x34 +fn_80110E80 = .text:0x80110E80; // type:function size:0x2C +fn_80110EAC = .text:0x80110EAC; // type:function size:0xA4 +fn_80110F50 = .text:0x80110F50; // type:function size:0x90 +fn_80110FE0 = .text:0x80110FE0; // type:function size:0x20 +fn_80111000 = .text:0x80111000; // type:function size:0x20 +fn_80111020 = .text:0x80111020; // type:function size:0x24 +fn_80111044 = .text:0x80111044; // type:function size:0x4 +fn_80111048 = .text:0x80111048; // type:function size:0x5C +fn_801110A4 = .text:0x801110A4; // type:function size:0x24 +fn_801110C8 = .text:0x801110C8; // type:function size:0x20 +fn_801110E8 = .text:0x801110E8; // type:function size:0x94 +fn_8011117C = .text:0x8011117C; // type:function size:0x84 +fn_80111200 = .text:0x80111200; // type:function size:0x20 +fn_80111220 = .text:0x80111220; // type:function size:0x4 +fn_80111224 = .text:0x80111224; // type:function size:0x14 +fn_80111238 = .text:0x80111238; // type:function size:0xC +fn_80111244 = .text:0x80111244; // type:function size:0x28 +fn_8011126C = .text:0x8011126C; // type:function size:0x20 +fn_8011128C = .text:0x8011128C; // type:function size:0xA0 +fn_8011132C = .text:0x8011132C; // type:function size:0x1DC +fn_80111508 = .text:0x80111508; // type:function size:0x18 +fn_80111520 = .text:0x80111520; // type:function size:0x2EC +fn_8011180C = .text:0x8011180C; // type:function size:0x4 +fn_80111810 = .text:0x80111810; // type:function size:0x20 +fn_80111830 = .text:0x80111830; // type:function size:0x3BC +fn_80111BEC = .text:0x80111BEC; // type:function size:0x18 +fn_80111C04 = .text:0x80111C04; // type:function size:0xC4 +fn_80111CC8 = .text:0x80111CC8; // type:function size:0x108 +fn_80111DD0 = .text:0x80111DD0; // type:function size:0x38 +fn_80111E08 = .text:0x80111E08; // type:function size:0xF8 +fn_80111F00 = .text:0x80111F00; // type:function size:0xA8 +fn_80111FA8 = .text:0x80111FA8; // type:function size:0x10 +fn_80111FB8 = .text:0x80111FB8; // type:function size:0x64 +fn_8011201C = .text:0x8011201C; // type:function size:0xC8 +fn_801120E4 = .text:0x801120E4; // type:function size:0x20 +fn_80112104 = .text:0x80112104; // type:function size:0x34 +fn_80112138 = .text:0x80112138; // type:function size:0x30 +fn_80112168 = .text:0x80112168; // type:function size:0xBC +fn_80112224 = .text:0x80112224; // type:function size:0x34 +fn_80112258 = .text:0x80112258; // type:function size:0x74 +fn_801122CC = .text:0x801122CC; // type:function size:0x4C +fn_80112318 = .text:0x80112318; // type:function size:0x2C +fn_80112344 = .text:0x80112344; // type:function size:0x4 +fn_80112348 = .text:0x80112348; // type:function size:0x38 +fn_80112380 = .text:0x80112380; // type:function size:0x38 +fn_801123B8 = .text:0x801123B8; // type:function size:0x20 +fn_801123D8 = .text:0x801123D8; // type:function size:0x20 +fn_801123F8 = .text:0x801123F8; // type:function size:0x28 +fn_80112420 = .text:0x80112420; // type:function size:0x2C +fn_8011244C = .text:0x8011244C; // type:function size:0x5C +fn_801124A8 = .text:0x801124A8; // type:function size:0x3C +fn_801124E4 = .text:0x801124E4; // type:function size:0x24 +fn_80112508 = .text:0x80112508; // type:function size:0x428 +fn_80112930 = .text:0x80112930; // type:function size:0x3B4 +fn_80112CE4 = .text:0x80112CE4; // type:function size:0x24 +fn_80112D08 = .text:0x80112D08; // type:function size:0xBC +fn_80112DC4 = .text:0x80112DC4; // type:function size:0x5C +fn_80112E20 = .text:0x80112E20; // type:function size:0x40 +fn_80112E60 = .text:0x80112E60; // type:function size:0x24 +fn_80112E84 = .text:0x80112E84; // type:function size:0x50C +fn_80113390 = .text:0x80113390; // type:function size:0x190 +fn_80113520 = .text:0x80113520; // type:function size:0x50C +fn_80113A2C = .text:0x80113A2C; // type:function size:0xE0 +fn_80113B0C = .text:0x80113B0C; // type:function size:0xBC +fn_80113BC8 = .text:0x80113BC8; // type:function size:0x168 +fn_80113D30 = .text:0x80113D30; // type:function size:0x1D0 +fn_80113F00 = .text:0x80113F00; // type:function size:0x28 +fn_80113F28 = .text:0x80113F28; // type:function size:0x4C +fn_80113F74 = .text:0x80113F74; // type:function size:0x198 +fn_8011410C = .text:0x8011410C; // type:function size:0x1EC +fn_801142F8 = .text:0x801142F8; // type:function size:0x2BC +fn_801145B4 = .text:0x801145B4; // type:function size:0x200 +fn_801147B4 = .text:0x801147B4; // type:function size:0x28 +DBClose = .text:0x801147DC; // type:function size:0x4 scope:global +DBOpen = .text:0x801147E0; // type:function size:0x4 scope:global +DBWrite = .text:0x801147E4; // type:function size:0x260 scope:global +DBRead = .text:0x80114A44; // type:function size:0x8C scope:global +DBQueryData = .text:0x80114AD0; // type:function size:0x9C scope:global +DBInitInterrupts = .text:0x80114B6C; // type:function size:0x54 scope:global +DBInitComm = .text:0x80114BC0; // type:function size:0x78 scope:global +fn_80114C38 = .text:0x80114C38; // type:function size:0x40 +fn_80114C78 = .text:0x80114C78; // type:function size:0x3C +fn_80114CB4 = .text:0x80114CB4; // type:function size:0xAC +fn_80114D60 = .text:0x80114D60; // type:function size:0xDC +fn_80114E3C = .text:0x80114E3C; // type:function size:0xDC +fn_80114F18 = .text:0x80114F18; // type:function size:0xAC +fn_80114FC4 = .text:0x80114FC4; // type:function size:0x298 +EXI2_Init = .text:0x8011525C; // type:function size:0x4 scope:global +EXI2_EnableInterrupts = .text:0x80115260; // type:function size:0x4 scope:global +EXI2_Poll = .text:0x80115264; // type:function size:0x8 scope:global +EXI2_ReadN = .text:0x8011526C; // type:function size:0x8 scope:global +EXI2_WriteN = .text:0x80115274; // type:function size:0x8 scope:global +EXI2_Reserve = .text:0x8011527C; // type:function size:0x4 scope:global +EXI2_Unreserve = .text:0x80115280; // type:function size:0x4 scope:global +AMC_IsStub = .text:0x80115284; // type:function size:0x8 scope:global +Hu_IsStub = .text:0x8011528C; // type:function size:0x8 scope:weak +HuSetVecF = .text:0x80115294; // type:function size:0x10 +HuSubVecF = .text:0x801152A4; // type:function size:0x34 +fn_801152D8 = .text:0x801152D8; // type:function size:0x6C +fn_80115344 = .text:0x80115344; // type:function size:0x27C +fn_801155C0 = .text:0x801155C0; // type:function size:0x15C +fn_8011571C = .text:0x8011571C; // type:function size:0xB4 +fn_801157D0 = .text:0x801157D0; // type:function size:0x31C +fn_80115AEC = .text:0x80115AEC; // type:function size:0x48 +fn_80115B34 = .text:0x80115B34; // type:function size:0x48 +fn_80115B7C = .text:0x80115B7C; // type:function size:0x68 +fn_80115BE4 = .text:0x80115BE4; // type:function size:0xD8 +fn_80115CBC = .text:0x80115CBC; // type:function size:0xFC +msmSysRegularProc = .text:0x80115DB8; // type:function size:0x4 +msmSysGetOutputMode = .text:0x80115DBC; // type:function size:0x14 +msmSysSetOutputMode = .text:0x80115DD0; // type:function size:0xD8 +msmSysSetAux = .text:0x80115EA8; // type:function size:0x114 +msmSysGetSampSize = .text:0x80115FBC; // type:function size:0x28 +msmSysDelGroupAll = .text:0x80115FE4; // type:function size:0x140 +msmSysDelGroupBase = .text:0x80116124; // type:function size:0x28C +msmSysLoadGroupBase = .text:0x801163B0; // type:function size:0x298 +msmSysLoadGroupSet = .text:0x80116648; // type:function size:0x3F0 +fn_80116A38 = .text:0x80116A38; // type:function size:0x3B4 +msmSysLoadGroup = .text:0x80116DEC; // type:function size:0x278 +msmSysCheckInit = .text:0x80117064; // type:function size:0x20 +msmSysInit = .text:0x80117084; // type:function size:0x474 +fn_801174F8 = .text:0x801174F8; // type:function size:0xC8 +fn_801175C0 = .text:0x801175C0; // type:function size:0x104 +fn_801176C4 = .text:0x801176C4; // type:function size:0x64 +fn_80117728 = .text:0x80117728; // type:function size:0x30 +fn_80117758 = .text:0x80117758; // type:function size:0x34 +fn_8011778C = .text:0x8011778C; // type:function size:0x2C +fn_801177B8 = .text:0x801177B8; // type:function size:0x60 +fn_80117818 = .text:0x80117818; // type:function size:0x154 +fn_8011796C = .text:0x8011796C; // type:function size:0x174 +fn_80117AE0 = .text:0x80117AE0; // type:function size:0x1BC +msmMusFdoutEnd = .text:0x80117C9C; // type:function size:0x4 +msmMusPeriodicProc = .text:0x80117CA0; // type:function size:0x1CC +msmMusGetMidiCtrl = .text:0x80117E6C; // type:function size:0x9C +msmMusGetNumPlay = .text:0x80117F08; // type:function size:0x38 +msmMusGetStatus = .text:0x80117F40; // type:function size:0x3C +msmMusSetMasterVolume = .text:0x80117F7C; // type:function size:0x30 +msmMusSetParam = .text:0x80117FAC; // type:function size:0x16C +msmMusPauseAll = .text:0x80118118; // type:function size:0x88 +msmMusPause = .text:0x801181A0; // type:function size:0x74 +msmMusStopAll = .text:0x80118214; // type:function size:0x134 +msmMusStop = .text:0x80118348; // type:function size:0xCC +msmMusPlay = .text:0x80118414; // type:function size:0x328 +msmMusInit = .text:0x8011873C; // type:function size:0x174 +fn_801188B0 = .text:0x801188B0; // type:function size:0x250 +fn_80118B00 = .text:0x80118B00; // type:function size:0x184 +msmSePeriodicProc = .text:0x80118C84; // type:function size:0x270 +msmSeGetIndexPtr = .text:0x80118EF4; // type:function size:0x30 +msmSeDelListener = .text:0x80118F24; // type:function size:0x4C +msmSeUpdataListener = .text:0x80118F70; // type:function size:0xD8 +msmSeSetListener = .text:0x80119048; // type:function size:0x13C +msmSeGetEntryID = .text:0x80119184; // type:function size:0x74 +msmSeGetNumPlay = .text:0x801191F8; // type:function size:0x38 +msmSeGetStatus = .text:0x80119230; // type:function size:0x60 +msmSeSetMasterVolume = .text:0x80119290; // type:function size:0x30 +msmSeSetParam = .text:0x801192C0; // type:function size:0x320 +msmSePauseAll = .text:0x801195E0; // type:function size:0x80 +msmSeStopAll = .text:0x80119660; // type:function size:0x168 +msmSeStop = .text:0x801197C8; // type:function size:0xFC +msmSePlay = .text:0x801198C4; // type:function size:0x480 +msmSeInit = .text:0x80119D44; // type:function size:0x130 +msmStreamGetStatus = .text:0x80119E74; // type:function size:0xC8 +msmStreamSetMasterVolume = .text:0x80119F3C; // type:function size:0x118 +msmStreamStopAll = .text:0x8011A054; // type:function size:0xE0 +msmStreamStop = .text:0x8011A134; // type:function size:0x204 +msmStreamPlay = .text:0x8011A338; // type:function size:0x88 +msmStreamPeriodicProc = .text:0x8011A3C0; // type:function size:0x8C +msmStreamSetOutputMode = .text:0x8011A44C; // type:function size:0x114 +msmStreamAmemFree = .text:0x8011A560; // type:function size:0x68 +msmStreamAmemAlloc = .text:0x8011A5C8; // type:function size:0x10C +msmStreamInit = .text:0x8011A6D4; // type:function size:0x2A8 +msmStreamPauseOff = .text:0x8011A97C; // type:function size:0x2B8 +msmStreamPauseOn = .text:0x8011AC34; // type:function size:0x1AC +fn_8011ADE0 = .text:0x8011ADE0; // type:function size:0x2E8 +fn_8011B0C8 = .text:0x8011B0C8; // type:function size:0x33C +fn_8011B404 = .text:0x8011B404; // type:function size:0x13C +fn_8011B540 = .text:0x8011B540; // type:function size:0xE0 +fn_8011B620 = .text:0x8011B620; // type:function size:0x448 +fn_8011BA68 = .text:0x8011BA68; // type:function size:0x2DC +fn_8011BD44 = .text:0x8011BD44; // type:function size:0xD0 +fn_8011BE14 = .text:0x8011BE14; // type:function size:0x320 +fn_8011C134 = .text:0x8011C134; // type:function size:0x4A8 +fn_8011C5DC = .text:0x8011C5DC; // type:function size:0x188 +fn_8011C764 = .text:0x8011C764; // type:function size:0x17C +fn_8011C8E0 = .text:0x8011C8E0; // type:function size:0x214 +fn_8011CAF4 = .text:0x8011CAF4; // type:function size:0x4 +fn_8011CAF8 = .text:0x8011CAF8; // type:function size:0x4 +fn_8011CAFC = .text:0x8011CAFC; // type:function size:0x4 +fn_8011CB00 = .text:0x8011CB00; // type:function size:0x4 +fn_8011CB04 = .text:0x8011CB04; // type:function size:0x4 +fn_8011CB08 = .text:0x8011CB08; // type:function size:0x4 +fn_8011CB0C = .text:0x8011CB0C; // type:function size:0x4 +fn_8011CB10 = .text:0x8011CB10; // type:function size:0x4 +fn_8011CB14 = .text:0x8011CB14; // type:function size:0x4 +fn_8011CB18 = .text:0x8011CB18; // type:function size:0x4 +fn_8011CB1C = .text:0x8011CB1C; // type:function size:0x4 +fn_8011CB20 = .text:0x8011CB20; // type:function size:0x4 +fn_8011CB24 = .text:0x8011CB24; // type:function size:0x4 +fn_8011CB28 = .text:0x8011CB28; // type:function size:0x4 +fn_8011CB2C = .text:0x8011CB2C; // type:function size:0x4 +fn_8011CB30 = .text:0x8011CB30; // type:function size:0x4 +fn_8011CB34 = .text:0x8011CB34; // type:function size:0x4 +fn_8011CB38 = .text:0x8011CB38; // type:function size:0x4 +fn_8011CB3C = .text:0x8011CB3C; // type:function size:0x4 +fn_8011CB40 = .text:0x8011CB40; // type:function size:0x4 +fn_8011CB44 = .text:0x8011CB44; // type:function size:0x4 +fn_8011CB48 = .text:0x8011CB48; // type:function size:0x4 +fn_8011CB4C = .text:0x8011CB4C; // type:function size:0x4 +fn_8011CB50 = .text:0x8011CB50; // type:function size:0x4 +fn_8011CB54 = .text:0x8011CB54; // type:function size:0x4 +fn_8011CB58 = .text:0x8011CB58; // type:function size:0x4 +fn_8011CB5C = .text:0x8011CB5C; // type:function size:0x4 +fn_8011CB60 = .text:0x8011CB60; // type:function size:0x4 +fn_8011CB64 = .text:0x8011CB64; // type:function size:0x4 +fn_8011CB68 = .text:0x8011CB68; // type:function size:0x4 +fn_8011CB6C = .text:0x8011CB6C; // type:function size:0x4 +fn_8011CB70 = .text:0x8011CB70; // type:function size:0x4 +fn_8011CB74 = .text:0x8011CB74; // type:function size:0x4 +fn_8011CB78 = .text:0x8011CB78; // type:function size:0x4 +fn_8011CB7C = .text:0x8011CB7C; // type:function size:0x4 +fn_8011CB80 = .text:0x8011CB80; // type:function size:0x4 +fn_8011CB84 = .text:0x8011CB84; // type:function size:0x4 +fn_8011CB88 = .text:0x8011CB88; // type:function size:0x4 +fn_8011CB8C = .text:0x8011CB8C; // type:function size:0x4 +fn_8011CB90 = .text:0x8011CB90; // type:function size:0x4 +fn_8011CB94 = .text:0x8011CB94; // type:function size:0x4 +fn_8011CB98 = .text:0x8011CB98; // type:function size:0x4 +fn_8011CB9C = .text:0x8011CB9C; // type:function size:0x4 +fn_8011CBA0 = .text:0x8011CBA0; // type:function size:0x4 +fn_8011CBA4 = .text:0x8011CBA4; // type:function size:0x4 +fn_8011CBA8 = .text:0x8011CBA8; // type:function size:0x4 +fn_8011CBAC = .text:0x8011CBAC; // type:function size:0x4 +fn_8011CBB0 = .text:0x8011CBB0; // type:function size:0x4 +fn_8011CBB4 = .text:0x8011CBB4; // type:function size:0x4 +fn_8011CBB8 = .text:0x8011CBB8; // type:function size:0x4 +fn_8011CBBC = .text:0x8011CBBC; // type:function size:0x4 +fn_8011CBC0 = .text:0x8011CBC0; // type:function size:0x4 +fn_8011CBC4 = .text:0x8011CBC4; // type:function size:0x4 +fn_8011CBC8 = .text:0x8011CBC8; // type:function size:0x4 +fn_8011CBCC = .text:0x8011CBCC; // type:function size:0x4 +fn_8011CBD0 = .text:0x8011CBD0; // type:function size:0x4 +fn_8011CBD4 = .text:0x8011CBD4; // type:function size:0x4 +fn_8011CBD8 = .text:0x8011CBD8; // type:function size:0x4 +fn_8011CBDC = .text:0x8011CBDC; // type:function size:0x4 +fn_8011CBE0 = .text:0x8011CBE0; // type:function size:0x4 +fn_8011CBE4 = .text:0x8011CBE4; // type:function size:0x4 +fn_8011CBE8 = .text:0x8011CBE8; // type:function size:0x4 +fn_8011CBEC = .text:0x8011CBEC; // type:function size:0x4 +fn_8011CBF0 = .text:0x8011CBF0; // type:function size:0x4 +fn_8011CBF4 = .text:0x8011CBF4; // type:function size:0x4 +fn_8011CBF8 = .text:0x8011CBF8; // type:function size:0x4 +fn_8011CBFC = .text:0x8011CBFC; // type:function size:0x4 +fn_8011CC00 = .text:0x8011CC00; // type:function size:0x4 +fn_8011CC04 = .text:0x8011CC04; // type:function size:0x4 +fn_8011CC08 = .text:0x8011CC08; // type:function size:0x4 +fn_8011CC0C = .text:0x8011CC0C; // type:function size:0x4 +fn_8011CC10 = .text:0x8011CC10; // type:function size:0x4 +fn_8011CC14 = .text:0x8011CC14; // type:function size:0x4 +fn_8011CC18 = .text:0x8011CC18; // type:function size:0x4 +fn_8011CC1C = .text:0x8011CC1C; // type:function size:0x4 +fn_8011CC20 = .text:0x8011CC20; // type:function size:0x4 +fn_8011CC24 = .text:0x8011CC24; // type:function size:0x4 +fn_8011CC28 = .text:0x8011CC28; // type:function size:0x4 +fn_8011CC2C = .text:0x8011CC2C; // type:function size:0x4 +fn_8011CC30 = .text:0x8011CC30; // type:function size:0x4 +fn_8011CC34 = .text:0x8011CC34; // type:function size:0x4 +fn_8011CC38 = .text:0x8011CC38; // type:function size:0x4 +fn_8011CC3C = .text:0x8011CC3C; // type:function size:0x4 +fn_8011CC40 = .text:0x8011CC40; // type:function size:0x4 +fn_8011CC44 = .text:0x8011CC44; // type:function size:0x4 +fn_8011CC48 = .text:0x8011CC48; // type:function size:0x4 +fn_8011CC4C = .text:0x8011CC4C; // type:function size:0x4 +fn_8011CC50 = .text:0x8011CC50; // type:function size:0x4 +fn_8011CC54 = .text:0x8011CC54; // type:function size:0x4 +fn_8011CC58 = .text:0x8011CC58; // type:function size:0x4 +fn_8011CC5C = .text:0x8011CC5C; // type:function size:0x4 +fn_8011CC60 = .text:0x8011CC60; // type:function size:0x4 +fn_8011CC64 = .text:0x8011CC64; // type:function size:0x4 +fn_8011CC68 = .text:0x8011CC68; // type:function size:0x4 +fn_8011CC6C = .text:0x8011CC6C; // type:function size:0x4 +fn_8011CC70 = .text:0x8011CC70; // type:function size:0x4 +fn_8011CC74 = .text:0x8011CC74; // type:function size:0x4 +fn_8011CC78 = .text:0x8011CC78; // type:function size:0x4 +fn_8011CC7C = .text:0x8011CC7C; // type:function size:0x4 +fn_8011CC80 = .text:0x8011CC80; // type:function size:0x4 +fn_8011CC84 = .text:0x8011CC84; // type:function size:0x4 +fn_8011CC88 = .text:0x8011CC88; // type:function size:0x4 +fn_8011CC8C = .text:0x8011CC8C; // type:function size:0x4 +fn_8011CC90 = .text:0x8011CC90; // type:function size:0x4 +fn_8011CC94 = .text:0x8011CC94; // type:function size:0x4 +fn_8011CC98 = .text:0x8011CC98; // type:function size:0x4 +fn_8011CC9C = .text:0x8011CC9C; // type:function size:0x4 +fn_8011CCA0 = .text:0x8011CCA0; // type:function size:0x4 +fn_8011CCA4 = .text:0x8011CCA4; // type:function size:0x4 +fn_8011CCA8 = .text:0x8011CCA8; // type:function size:0x4 +fn_8011CCAC = .text:0x8011CCAC; // type:function size:0x4 +fn_8011CCB0 = .text:0x8011CCB0; // type:function size:0x4 +fn_8011CCB4 = .text:0x8011CCB4; // type:function size:0x4 +fn_8011CCB8 = .text:0x8011CCB8; // type:function size:0x4 +fn_8011CCBC = .text:0x8011CCBC; // type:function size:0x4 +fn_8011CCC0 = .text:0x8011CCC0; // type:function size:0x4 +fn_8011CCC4 = .text:0x8011CCC4; // type:function size:0x4 +fn_8011CCC8 = .text:0x8011CCC8; // type:function size:0x4 +fn_8011CCCC = .text:0x8011CCCC; // type:function size:0x4 +fn_8011CCD0 = .text:0x8011CCD0; // type:function size:0x4 +fn_8011CCD4 = .text:0x8011CCD4; // type:function size:0x4 +fn_8011CCD8 = .text:0x8011CCD8; // type:function size:0x4 +fn_8011CCDC = .text:0x8011CCDC; // type:function size:0x4 +fn_8011CCE0 = .text:0x8011CCE0; // type:function size:0x4 +fn_8011CCE4 = .text:0x8011CCE4; // type:function size:0x4 +fn_8011CCE8 = .text:0x8011CCE8; // type:function size:0x4 +fn_8011CCEC = .text:0x8011CCEC; // type:function size:0x4 +fn_8011CCF0 = .text:0x8011CCF0; // type:function size:0x4 +fn_8011CCF4 = .text:0x8011CCF4; // type:function size:0x4 +fn_8011CCF8 = .text:0x8011CCF8; // type:function size:0x4 +fn_8011CCFC = .text:0x8011CCFC; // type:function size:0x4 +fn_8011CD00 = .text:0x8011CD00; // type:function size:0x4 +fn_8011CD04 = .text:0x8011CD04; // type:function size:0x4 +fn_8011CD08 = .text:0x8011CD08; // type:function size:0x4 +fn_8011CD0C = .text:0x8011CD0C; // type:function size:0x4 +fn_8011CD10 = .text:0x8011CD10; // type:function size:0x4 +fn_8011CD14 = .text:0x8011CD14; // type:function size:0x4 +fn_8011CD18 = .text:0x8011CD18; // type:function size:0x4 +fn_8011CD1C = .text:0x8011CD1C; // type:function size:0x4 +fn_8011CD20 = .text:0x8011CD20; // type:function size:0x4 +fn_8011CD24 = .text:0x8011CD24; // type:function size:0x4 +fn_8011CD28 = .text:0x8011CD28; // type:function size:0x4 +fn_8011CD2C = .text:0x8011CD2C; // type:function size:0x4 +fn_8011CD30 = .text:0x8011CD30; // type:function size:0x4 +fn_8011CD34 = .text:0x8011CD34; // type:function size:0x4 +fn_8011CD38 = .text:0x8011CD38; // type:function size:0x4 +fn_8011CD3C = .text:0x8011CD3C; // type:function size:0x4 +fn_8011CD40 = .text:0x8011CD40; // type:function size:0x4 +fn_8011CD44 = .text:0x8011CD44; // type:function size:0x4 +fn_8011CD48 = .text:0x8011CD48; // type:function size:0x4 +fn_8011CD4C = .text:0x8011CD4C; // type:function size:0x4 +fn_8011CD50 = .text:0x8011CD50; // type:function size:0x4 +fn_8011CD54 = .text:0x8011CD54; // type:function size:0x4 +fn_8011CD58 = .text:0x8011CD58; // type:function size:0x4 +fn_8011CD5C = .text:0x8011CD5C; // type:function size:0x4 +fn_8011CD60 = .text:0x8011CD60; // type:function size:0x4 +fn_8011CD64 = .text:0x8011CD64; // type:function size:0x4 +fn_8011CD68 = .text:0x8011CD68; // type:function size:0x4 +fn_8011CD6C = .text:0x8011CD6C; // type:function size:0x4 +fn_8011CD70 = .text:0x8011CD70; // type:function size:0x4 +fn_8011CD74 = .text:0x8011CD74; // type:function size:0x4 +fn_8011CD78 = .text:0x8011CD78; // type:function size:0x4 +fn_8011CD7C = .text:0x8011CD7C; // type:function size:0x4 +fn_8011CD80 = .text:0x8011CD80; // type:function size:0x4 +fn_8011CD84 = .text:0x8011CD84; // type:function size:0x4 +fn_8011CD88 = .text:0x8011CD88; // type:function size:0x4 +fn_8011CD8C = .text:0x8011CD8C; // type:function size:0x4 +fn_8011CD90 = .text:0x8011CD90; // type:function size:0x4 +fn_8011CD94 = .text:0x8011CD94; // type:function size:0x4 +fn_8011CD98 = .text:0x8011CD98; // type:function size:0x4 +fn_8011CD9C = .text:0x8011CD9C; // type:function size:0x4 +fn_8011CDA0 = .text:0x8011CDA0; // type:function size:0x4 +fn_8011CDA4 = .text:0x8011CDA4; // type:function size:0x4 +fn_8011CDA8 = .text:0x8011CDA8; // type:function size:0x4 +fn_8011CDAC = .text:0x8011CDAC; // type:function size:0x4 +fn_8011CDB0 = .text:0x8011CDB0; // type:function size:0x4 +fn_8011CDB4 = .text:0x8011CDB4; // type:function size:0x4 +fn_8011CDB8 = .text:0x8011CDB8; // type:function size:0x4 +fn_8011CDBC = .text:0x8011CDBC; // type:function size:0x4 +fn_8011CDC0 = .text:0x8011CDC0; // type:function size:0x4 +fn_8011CDC4 = .text:0x8011CDC4; // type:function size:0x4 +fn_8011CDC8 = .text:0x8011CDC8; // type:function size:0x4 +fn_8011CDCC = .text:0x8011CDCC; // type:function size:0x4 +fn_8011CDD0 = .text:0x8011CDD0; // type:function size:0x4 +fn_8011CDD4 = .text:0x8011CDD4; // type:function size:0x4 +fn_8011CDD8 = .text:0x8011CDD8; // type:function size:0x4 +fn_8011CDDC = .text:0x8011CDDC; // type:function size:0x4 +fn_8011CDE0 = .text:0x8011CDE0; // type:function size:0x4 +fn_8011CDE4 = .text:0x8011CDE4; // type:function size:0x4 +fn_8011CDE8 = .text:0x8011CDE8; // type:function size:0x4 +fn_8011CDEC = .text:0x8011CDEC; // type:function size:0x4 +fn_8011CDF0 = .text:0x8011CDF0; // type:function size:0x4 +fn_8011CDF4 = .text:0x8011CDF4; // type:function size:0x4 +fn_8011CDF8 = .text:0x8011CDF8; // type:function size:0x4 +fn_8011CDFC = .text:0x8011CDFC; // type:function size:0x4 +fn_8011CE00 = .text:0x8011CE00; // type:function size:0x4 +fn_8011CE04 = .text:0x8011CE04; // type:function size:0x4 +fn_8011CE08 = .text:0x8011CE08; // type:function size:0x4 +fn_8011CE0C = .text:0x8011CE0C; // type:function size:0x4 +fn_8011CE10 = .text:0x8011CE10; // type:function size:0x4 +fn_8011CE14 = .text:0x8011CE14; // type:function size:0x4 +fn_8011CE18 = .text:0x8011CE18; // type:function size:0x4 +fn_8011CE1C = .text:0x8011CE1C; // type:function size:0x4 +fn_8011CE20 = .text:0x8011CE20; // type:function size:0x4 +fn_8011CE24 = .text:0x8011CE24; // type:function size:0x4 +fn_8011CE28 = .text:0x8011CE28; // type:function size:0x4 +fn_8011CE2C = .text:0x8011CE2C; // type:function size:0x4 +fn_8011CE30 = .text:0x8011CE30; // type:function size:0x4 +fn_8011CE34 = .text:0x8011CE34; // type:function size:0x4 +fn_8011CE38 = .text:0x8011CE38; // type:function size:0x4 +fn_8011CE3C = .text:0x8011CE3C; // type:function size:0x4 +fn_8011CE40 = .text:0x8011CE40; // type:function size:0x4 +fn_8011CE44 = .text:0x8011CE44; // type:function size:0x4 +fn_8011CE48 = .text:0x8011CE48; // type:function size:0x4 +fn_8011CE4C = .text:0x8011CE4C; // type:function size:0x4 +fn_8011CE50 = .text:0x8011CE50; // type:function size:0x4 +fn_8011CE54 = .text:0x8011CE54; // type:function size:0x4 +fn_8011CE58 = .text:0x8011CE58; // type:function size:0x4 +fn_8011CE5C = .text:0x8011CE5C; // type:function size:0x4 +fn_8011CE60 = .text:0x8011CE60; // type:function size:0x4 +fn_8011CE64 = .text:0x8011CE64; // type:function size:0x4 +fn_8011CE68 = .text:0x8011CE68; // type:function size:0x4 +fn_8011CE6C = .text:0x8011CE6C; // type:function size:0x4 +fn_8011CE70 = .text:0x8011CE70; // type:function size:0x4 +fn_8011CE74 = .text:0x8011CE74; // type:function size:0x4 +fn_8011CE78 = .text:0x8011CE78; // type:function size:0x4 +fn_8011CE7C = .text:0x8011CE7C; // type:function size:0x4 +fn_8011CE80 = .text:0x8011CE80; // type:function size:0x4 +fn_8011CE84 = .text:0x8011CE84; // type:function size:0x4 +fn_8011CE88 = .text:0x8011CE88; // type:function size:0x4 +fn_8011CE8C = .text:0x8011CE8C; // type:function size:0x4 +fn_8011CE90 = .text:0x8011CE90; // type:function size:0x4 +fn_8011CE94 = .text:0x8011CE94; // type:function size:0x4 +fn_8011CE98 = .text:0x8011CE98; // type:function size:0x4 +fn_8011CE9C = .text:0x8011CE9C; // type:function size:0x4 +fn_8011CEA0 = .text:0x8011CEA0; // type:function size:0x4 +fn_8011CEA4 = .text:0x8011CEA4; // type:function size:0x4 +fn_8011CEA8 = .text:0x8011CEA8; // type:function size:0x4 +fn_8011CEAC = .text:0x8011CEAC; // type:function size:0x4 +fn_8011CEB0 = .text:0x8011CEB0; // type:function size:0x4 +fn_8011CEB4 = .text:0x8011CEB4; // type:function size:0x4 +fn_8011CEB8 = .text:0x8011CEB8; // type:function size:0x4 +fn_8011CEBC = .text:0x8011CEBC; // type:function size:0x4 +fn_8011CEC0 = .text:0x8011CEC0; // type:function size:0x4 +fn_8011CEC4 = .text:0x8011CEC4; // type:function size:0x4 +fn_8011CEC8 = .text:0x8011CEC8; // type:function size:0x4 +fn_8011CECC = .text:0x8011CECC; // type:function size:0x4 +fn_8011CED0 = .text:0x8011CED0; // type:function size:0x4 +fn_8011CED4 = .text:0x8011CED4; // type:function size:0x4 +fn_8011CED8 = .text:0x8011CED8; // type:function size:0x4 +fn_8011CEDC = .text:0x8011CEDC; // type:function size:0x4 +fn_8011CEE0 = .text:0x8011CEE0; // type:function size:0x4 +fn_8011CEE4 = .text:0x8011CEE4; // type:function size:0x4 +fn_8011CEE8 = .text:0x8011CEE8; // type:function size:0x4 +fn_8011CEEC = .text:0x8011CEEC; // type:function size:0x4 +fn_8011CEF0 = .text:0x8011CEF0; // type:function size:0x4 +fn_8011CEF4 = .text:0x8011CEF4; // type:function size:0x4 +fn_8011CEF8 = .text:0x8011CEF8; // type:function size:0x4 +fn_8011CEFC = .text:0x8011CEFC; // type:function size:0x4 +fn_8011CF00 = .text:0x8011CF00; // type:function size:0x4 +fn_8011CF04 = .text:0x8011CF04; // type:function size:0x4 +fn_8011CF08 = .text:0x8011CF08; // type:function size:0x4 +fn_8011CF0C = .text:0x8011CF0C; // type:function size:0x4 +fn_8011CF10 = .text:0x8011CF10; // type:function size:0x4 +fn_8011CF14 = .text:0x8011CF14; // type:function size:0x4 +fn_8011CF18 = .text:0x8011CF18; // type:function size:0x4 +fn_8011CF1C = .text:0x8011CF1C; // type:function size:0x4 +fn_8011CF20 = .text:0x8011CF20; // type:function size:0x4 +fn_8011CF24 = .text:0x8011CF24; // type:function size:0x4 +fn_8011CF28 = .text:0x8011CF28; // type:function size:0x4 +fn_8011CF2C = .text:0x8011CF2C; // type:function size:0x4 +fn_8011CF30 = .text:0x8011CF30; // type:function size:0x4 +fn_8011CF34 = .text:0x8011CF34; // type:function size:0x4 +fn_8011CF38 = .text:0x8011CF38; // type:function size:0x4 +fn_8011CF3C = .text:0x8011CF3C; // type:function size:0x4 +fn_8011CF40 = .text:0x8011CF40; // type:function size:0x4 +fn_8011CF44 = .text:0x8011CF44; // type:function size:0x4 +fn_8011CF48 = .text:0x8011CF48; // type:function size:0x4 +fn_8011CF4C = .text:0x8011CF4C; // type:function size:0x4 +fn_8011CF50 = .text:0x8011CF50; // type:function size:0x4 +fn_8011CF54 = .text:0x8011CF54; // type:function size:0x4 +fn_8011CF58 = .text:0x8011CF58; // type:function size:0x4 +fn_8011CF5C = .text:0x8011CF5C; // type:function size:0x4 +fn_8011CF60 = .text:0x8011CF60; // type:function size:0x4 +fn_8011CF64 = .text:0x8011CF64; // type:function size:0x4 +fn_8011CF68 = .text:0x8011CF68; // type:function size:0x4 +fn_8011CF6C = .text:0x8011CF6C; // type:function size:0x4 +fn_8011CF70 = .text:0x8011CF70; // type:function size:0x4 +fn_8011CF74 = .text:0x8011CF74; // type:function size:0x4 +fn_8011CF78 = .text:0x8011CF78; // type:function size:0x4 +fn_8011CF7C = .text:0x8011CF7C; // type:function size:0x4 +fn_8011CF80 = .text:0x8011CF80; // type:function size:0x4 +fn_8011CF84 = .text:0x8011CF84; // type:function size:0x4 +fn_8011CF88 = .text:0x8011CF88; // type:function size:0x4 +fn_8011CF8C = .text:0x8011CF8C; // type:function size:0x4 +fn_8011CF90 = .text:0x8011CF90; // type:function size:0x4 +fn_8011CF94 = .text:0x8011CF94; // type:function size:0x4 +fn_8011CF98 = .text:0x8011CF98; // type:function size:0x4 +fn_8011CF9C = .text:0x8011CF9C; // type:function size:0x4 +fn_8011CFA0 = .text:0x8011CFA0; // type:function size:0x4 +fn_8011CFA4 = .text:0x8011CFA4; // type:function size:0x4 +fn_8011CFA8 = .text:0x8011CFA8; // type:function size:0x4 +fn_8011CFAC = .text:0x8011CFAC; // type:function size:0x4 +fn_8011CFB0 = .text:0x8011CFB0; // type:function size:0x4 +fn_8011CFB4 = .text:0x8011CFB4; // type:function size:0x4 +fn_8011CFB8 = .text:0x8011CFB8; // type:function size:0x4 +fn_8011CFBC = .text:0x8011CFBC; // type:function size:0x4 +fn_8011CFC0 = .text:0x8011CFC0; // type:function size:0x4 +fn_8011CFC4 = .text:0x8011CFC4; // type:function size:0x4 +fn_8011CFC8 = .text:0x8011CFC8; // type:function size:0x4 +fn_8011CFCC = .text:0x8011CFCC; // type:function size:0x4 +fn_8011CFD0 = .text:0x8011CFD0; // type:function size:0x4 +fn_8011CFD4 = .text:0x8011CFD4; // type:function size:0x4 +fn_8011CFD8 = .text:0x8011CFD8; // type:function size:0x4 +fn_8011CFDC = .text:0x8011CFDC; // type:function size:0x4 +fn_8011CFE0 = .text:0x8011CFE0; // type:function size:0x4 +fn_8011CFE4 = .text:0x8011CFE4; // type:function size:0x4 +fn_8011CFE8 = .text:0x8011CFE8; // type:function size:0x4 +fn_8011CFEC = .text:0x8011CFEC; // type:function size:0x4 +fn_8011CFF0 = .text:0x8011CFF0; // type:function size:0x4 +fn_8011CFF4 = .text:0x8011CFF4; // type:function size:0x4 +fn_8011CFF8 = .text:0x8011CFF8; // type:function size:0x4 +fn_8011CFFC = .text:0x8011CFFC; // type:function size:0x4 +fn_8011D000 = .text:0x8011D000; // type:function size:0x4 +fn_8011D004 = .text:0x8011D004; // type:function size:0x4 +fn_8011D008 = .text:0x8011D008; // type:function size:0x4 +fn_8011D00C = .text:0x8011D00C; // type:function size:0x4 +fn_8011D010 = .text:0x8011D010; // type:function size:0x4 +fn_8011D014 = .text:0x8011D014; // type:function size:0x4 +fn_8011D018 = .text:0x8011D018; // type:function size:0x4 +fn_8011D01C = .text:0x8011D01C; // type:function size:0x4 +fn_8011D020 = .text:0x8011D020; // type:function size:0x4 +fn_8011D024 = .text:0x8011D024; // type:function size:0x4 +fn_8011D028 = .text:0x8011D028; // type:function size:0x4 +fn_8011D02C = .text:0x8011D02C; // type:function size:0x4 +fn_8011D030 = .text:0x8011D030; // type:function size:0x4 +fn_8011D034 = .text:0x8011D034; // type:function size:0x4 +fn_8011D038 = .text:0x8011D038; // type:function size:0x4 +fn_8011D03C = .text:0x8011D03C; // type:function size:0x4 +fn_8011D040 = .text:0x8011D040; // type:function size:0x4 +fn_8011D044 = .text:0x8011D044; // type:function size:0x4 +fn_8011D048 = .text:0x8011D048; // type:function size:0x4 +fn_8011D04C = .text:0x8011D04C; // type:function size:0x4 +fn_8011D050 = .text:0x8011D050; // type:function size:0x4 +fn_8011D054 = .text:0x8011D054; // type:function size:0x4 +fn_8011D058 = .text:0x8011D058; // type:function size:0x4 +fn_8011D05C = .text:0x8011D05C; // type:function size:0x4 +fn_8011D060 = .text:0x8011D060; // type:function size:0x4 +fn_8011D064 = .text:0x8011D064; // type:function size:0x4 +fn_8011D068 = .text:0x8011D068; // type:function size:0x4 +fn_8011D06C = .text:0x8011D06C; // type:function size:0x4 +fn_8011D070 = .text:0x8011D070; // type:function size:0x4 +fn_8011D074 = .text:0x8011D074; // type:function size:0x4 +fn_8011D078 = .text:0x8011D078; // type:function size:0x4 +fn_8011D07C = .text:0x8011D07C; // type:function size:0x4 +fn_8011D080 = .text:0x8011D080; // type:function size:0x4 +fn_8011D084 = .text:0x8011D084; // type:function size:0x4 +fn_8011D088 = .text:0x8011D088; // type:function size:0x4 +fn_8011D08C = .text:0x8011D08C; // type:function size:0x4 +fn_8011D090 = .text:0x8011D090; // type:function size:0x4 +fn_8011D094 = .text:0x8011D094; // type:function size:0x4 +fn_8011D098 = .text:0x8011D098; // type:function size:0x4 +fn_8011D09C = .text:0x8011D09C; // type:function size:0x4 +fn_8011D0A0 = .text:0x8011D0A0; // type:function size:0x4 +fn_8011D0A4 = .text:0x8011D0A4; // type:function size:0x4 +fn_8011D0A8 = .text:0x8011D0A8; // type:function size:0x4 +fn_8011D0AC = .text:0x8011D0AC; // type:function size:0x4 +fn_8011D0B0 = .text:0x8011D0B0; // type:function size:0x4 +fn_8011D0B4 = .text:0x8011D0B4; // type:function size:0x4 +fn_8011D0B8 = .text:0x8011D0B8; // type:function size:0x4 +fn_8011D0BC = .text:0x8011D0BC; // type:function size:0x4 +fn_8011D0C0 = .text:0x8011D0C0; // type:function size:0x4 +fn_8011D0C4 = .text:0x8011D0C4; // type:function size:0x4 +fn_8011D0C8 = .text:0x8011D0C8; // type:function size:0x4 +fn_8011D0CC = .text:0x8011D0CC; // type:function size:0x4 +fn_8011D0D0 = .text:0x8011D0D0; // type:function size:0x4 +fn_8011D0D4 = .text:0x8011D0D4; // type:function size:0x4 +fn_8011D0D8 = .text:0x8011D0D8; // type:function size:0x4 +fn_8011D0DC = .text:0x8011D0DC; // type:function size:0x4 +fn_8011D0E0 = .text:0x8011D0E0; // type:function size:0x4 +fn_8011D0E4 = .text:0x8011D0E4; // type:function size:0x4 +fn_8011D0E8 = .text:0x8011D0E8; // type:function size:0x4 +fn_8011D0EC = .text:0x8011D0EC; // type:function size:0x4 +fn_8011D0F0 = .text:0x8011D0F0; // type:function size:0x4 +fn_8011D0F4 = .text:0x8011D0F4; // type:function size:0x4 +fn_8011D0F8 = .text:0x8011D0F8; // type:function size:0x4 +fn_8011D0FC = .text:0x8011D0FC; // type:function size:0x4 +fn_8011D100 = .text:0x8011D100; // type:function size:0x4 +fn_8011D104 = .text:0x8011D104; // type:function size:0x4 +fn_8011D108 = .text:0x8011D108; // type:function size:0x4 +fn_8011D10C = .text:0x8011D10C; // type:function size:0x4 +fn_8011D110 = .text:0x8011D110; // type:function size:0x4 +fn_8011D114 = .text:0x8011D114; // type:function size:0x4 +fn_8011D118 = .text:0x8011D118; // type:function size:0x4 +fn_8011D11C = .text:0x8011D11C; // type:function size:0x4 +fn_8011D120 = .text:0x8011D120; // type:function size:0x4 +fn_8011D124 = .text:0x8011D124; // type:function size:0x4 +fn_8011D128 = .text:0x8011D128; // type:function size:0x4 +fn_8011D12C = .text:0x8011D12C; // type:function size:0x4 +fn_8011D130 = .text:0x8011D130; // type:function size:0x4 +fn_8011D134 = .text:0x8011D134; // type:function size:0x4 +fn_8011D138 = .text:0x8011D138; // type:function size:0x4 +fn_8011D13C = .text:0x8011D13C; // type:function size:0x4 +fn_8011D140 = .text:0x8011D140; // type:function size:0x4 +fn_8011D144 = .text:0x8011D144; // type:function size:0x4 +fn_8011D148 = .text:0x8011D148; // type:function size:0x4 +fn_8011D14C = .text:0x8011D14C; // type:function size:0x4 +fn_8011D150 = .text:0x8011D150; // type:function size:0x4 +fn_8011D154 = .text:0x8011D154; // type:function size:0x4 +fn_8011D158 = .text:0x8011D158; // type:function size:0x4 +fn_8011D15C = .text:0x8011D15C; // type:function size:0x4 +fn_8011D160 = .text:0x8011D160; // type:function size:0x4 +fn_8011D164 = .text:0x8011D164; // type:function size:0x4 +fn_8011D168 = .text:0x8011D168; // type:function size:0x4 +fn_8011D16C = .text:0x8011D16C; // type:function size:0x4 +fn_8011D170 = .text:0x8011D170; // type:function size:0x4 +fn_8011D174 = .text:0x8011D174; // type:function size:0x4 +fn_8011D178 = .text:0x8011D178; // type:function size:0x4 +fn_8011D17C = .text:0x8011D17C; // type:function size:0x4 +fn_8011D180 = .text:0x8011D180; // type:function size:0x4 +fn_8011D184 = .text:0x8011D184; // type:function size:0x4 +fn_8011D188 = .text:0x8011D188; // type:function size:0x4 +fn_8011D18C = .text:0x8011D18C; // type:function size:0x4 +fn_8011D190 = .text:0x8011D190; // type:function size:0x4 +fn_8011D194 = .text:0x8011D194; // type:function size:0x4 +fn_8011D198 = .text:0x8011D198; // type:function size:0x4 +fn_8011D19C = .text:0x8011D19C; // type:function size:0x4 +fn_8011D1A0 = .text:0x8011D1A0; // type:function size:0x4 +fn_8011D1A4 = .text:0x8011D1A4; // type:function size:0x4 +fn_8011D1A8 = .text:0x8011D1A8; // type:function size:0x4 +fn_8011D1AC = .text:0x8011D1AC; // type:function size:0x4 +fn_8011D1B0 = .text:0x8011D1B0; // type:function size:0x4 +fn_8011D1B4 = .text:0x8011D1B4; // type:function size:0x4 +fn_8011D1B8 = .text:0x8011D1B8; // type:function size:0x4 +fn_8011D1BC = .text:0x8011D1BC; // type:function size:0x4 +fn_8011D1C0 = .text:0x8011D1C0; // type:function size:0x4 +fn_8011D1C4 = .text:0x8011D1C4; // type:function size:0x4 +fn_8011D1C8 = .text:0x8011D1C8; // type:function size:0x4 +fn_8011D1CC = .text:0x8011D1CC; // type:function size:0x4 +fn_8011D1D0 = .text:0x8011D1D0; // type:function size:0x4 +fn_8011D1D4 = .text:0x8011D1D4; // type:function size:0x4 +fn_8011D1D8 = .text:0x8011D1D8; // type:function size:0x4 +fn_8011D1DC = .text:0x8011D1DC; // type:function size:0x4 +fn_8011D1E0 = .text:0x8011D1E0; // type:function size:0x4 +fn_8011D1E4 = .text:0x8011D1E4; // type:function size:0x4 +fn_8011D1E8 = .text:0x8011D1E8; // type:function size:0x4 +fn_8011D1EC = .text:0x8011D1EC; // type:function size:0x4 +fn_8011D1F0 = .text:0x8011D1F0; // type:function size:0x4 +fn_8011D1F4 = .text:0x8011D1F4; // type:function size:0x4 +fn_8011D1F8 = .text:0x8011D1F8; // type:function size:0x4 +fn_8011D1FC = .text:0x8011D1FC; // type:function size:0x4 +fn_8011D200 = .text:0x8011D200; // type:function size:0x4 +fn_8011D204 = .text:0x8011D204; // type:function size:0x4 +fn_8011D208 = .text:0x8011D208; // type:function size:0x4 +fn_8011D20C = .text:0x8011D20C; // type:function size:0x4 +fn_8011D210 = .text:0x8011D210; // type:function size:0x4 +fn_8011D214 = .text:0x8011D214; // type:function size:0x4 +fn_8011D218 = .text:0x8011D218; // type:function size:0x4 +fn_8011D21C = .text:0x8011D21C; // type:function size:0x4 +fn_8011D220 = .text:0x8011D220; // type:function size:0x4 +fn_8011D224 = .text:0x8011D224; // type:function size:0x4 +fn_8011D228 = .text:0x8011D228; // type:function size:0x4 +fn_8011D22C = .text:0x8011D22C; // type:function size:0x4 +fn_8011D230 = .text:0x8011D230; // type:function size:0x4 +fn_8011D234 = .text:0x8011D234; // type:function size:0x4 +fn_8011D238 = .text:0x8011D238; // type:function size:0x4 +fn_8011D23C = .text:0x8011D23C; // type:function size:0x4 +fn_8011D240 = .text:0x8011D240; // type:function size:0x4 +fn_8011D244 = .text:0x8011D244; // type:function size:0x4 +fn_8011D248 = .text:0x8011D248; // type:function size:0x4 +fn_8011D24C = .text:0x8011D24C; // type:function size:0x4 +fn_8011D250 = .text:0x8011D250; // type:function size:0x4 +fn_8011D254 = .text:0x8011D254; // type:function size:0x4 +fn_8011D258 = .text:0x8011D258; // type:function size:0x4 +fn_8011D25C = .text:0x8011D25C; // type:function size:0x4 +fn_8011D260 = .text:0x8011D260; // type:function size:0x4 +fn_8011D264 = .text:0x8011D264; // type:function size:0x4 +fn_8011D268 = .text:0x8011D268; // type:function size:0x4 +fn_8011D26C = .text:0x8011D26C; // type:function size:0x4 +fn_8011D270 = .text:0x8011D270; // type:function size:0x4 +fn_8011D274 = .text:0x8011D274; // type:function size:0x4 +fn_8011D278 = .text:0x8011D278; // type:function size:0x4 +fn_8011D27C = .text:0x8011D27C; // type:function size:0x4 +fn_8011D280 = .text:0x8011D280; // type:function size:0x4 +fn_8011D284 = .text:0x8011D284; // type:function size:0x4 +fn_8011D288 = .text:0x8011D288; // type:function size:0x4 +fn_8011D28C = .text:0x8011D28C; // type:function size:0x4 +fn_8011D290 = .text:0x8011D290; // type:function size:0x4 +fn_8011D294 = .text:0x8011D294; // type:function size:0x4 +fn_8011D298 = .text:0x8011D298; // type:function size:0x4 +fn_8011D29C = .text:0x8011D29C; // type:function size:0x4 +fn_8011D2A0 = .text:0x8011D2A0; // type:function size:0x4 +fn_8011D2A4 = .text:0x8011D2A4; // type:function size:0x4 +fn_8011D2A8 = .text:0x8011D2A8; // type:function size:0x4 +fn_8011D2AC = .text:0x8011D2AC; // type:function size:0x4 +fn_8011D2B0 = .text:0x8011D2B0; // type:function size:0x4 +fn_8011D2B4 = .text:0x8011D2B4; // type:function size:0x4 +fn_8011D2B8 = .text:0x8011D2B8; // type:function size:0x4 +fn_8011D2BC = .text:0x8011D2BC; // type:function size:0x4 +fn_8011D2C0 = .text:0x8011D2C0; // type:function size:0x4 +fn_8011D2C4 = .text:0x8011D2C4; // type:function size:0x4 +fn_8011D2C8 = .text:0x8011D2C8; // type:function size:0x4 +fn_8011D2CC = .text:0x8011D2CC; // type:function size:0x4 +fn_8011D2D0 = .text:0x8011D2D0; // type:function size:0x4 +fn_8011D2D4 = .text:0x8011D2D4; // type:function size:0x4 +fn_8011D2D8 = .text:0x8011D2D8; // type:function size:0x4 +fn_8011D2DC = .text:0x8011D2DC; // type:function size:0x4 +fn_8011D2E0 = .text:0x8011D2E0; // type:function size:0x4 +fn_8011D2E4 = .text:0x8011D2E4; // type:function size:0x4 +fn_8011D2E8 = .text:0x8011D2E8; // type:function size:0x4 +fn_8011D2EC = .text:0x8011D2EC; // type:function size:0x4 +fn_8011D2F0 = .text:0x8011D2F0; // type:function size:0x4 +fn_8011D2F4 = .text:0x8011D2F4; // type:function size:0x4 +fn_8011D2F8 = .text:0x8011D2F8; // type:function size:0x4 +fn_8011D2FC = .text:0x8011D2FC; // type:function size:0x4 +fn_8011D300 = .text:0x8011D300; // type:function size:0x4 +fn_8011D304 = .text:0x8011D304; // type:function size:0x4 +fn_8011D308 = .text:0x8011D308; // type:function size:0x4 +fn_8011D30C = .text:0x8011D30C; // type:function size:0x4 +fn_8011D310 = .text:0x8011D310; // type:function size:0x4 +fn_8011D314 = .text:0x8011D314; // type:function size:0x4 +fn_8011D318 = .text:0x8011D318; // type:function size:0x4 +fn_8011D31C = .text:0x8011D31C; // type:function size:0x4 +fn_8011D320 = .text:0x8011D320; // type:function size:0x4 +fn_8011D324 = .text:0x8011D324; // type:function size:0x4 +fn_8011D328 = .text:0x8011D328; // type:function size:0x4 +fn_8011D32C = .text:0x8011D32C; // type:function size:0x4 +fn_8011D330 = .text:0x8011D330; // type:function size:0x4 +fn_8011D334 = .text:0x8011D334; // type:function size:0x4 +fn_8011D338 = .text:0x8011D338; // type:function size:0x4 +fn_8011D33C = .text:0x8011D33C; // type:function size:0x4 +fn_8011D340 = .text:0x8011D340; // type:function size:0x4 +fn_8011D344 = .text:0x8011D344; // type:function size:0x4 +fn_8011D348 = .text:0x8011D348; // type:function size:0x4 +fn_8011D34C = .text:0x8011D34C; // type:function size:0x4 +fn_8011D350 = .text:0x8011D350; // type:function size:0x4 +fn_8011D354 = .text:0x8011D354; // type:function size:0x4 +fn_8011D358 = .text:0x8011D358; // type:function size:0x4 +fn_8011D35C = .text:0x8011D35C; // type:function size:0x4 +fn_8011D360 = .text:0x8011D360; // type:function size:0x4 +fn_8011D364 = .text:0x8011D364; // type:function size:0x4 +fn_8011D368 = .text:0x8011D368; // type:function size:0x4 +fn_8011D36C = .text:0x8011D36C; // type:function size:0x4 +fn_8011D370 = .text:0x8011D370; // type:function size:0x4 +fn_8011D374 = .text:0x8011D374; // type:function size:0x4 +fn_8011D378 = .text:0x8011D378; // type:function size:0x4 +fn_8011D37C = .text:0x8011D37C; // type:function size:0x4 +fn_8011D380 = .text:0x8011D380; // type:function size:0x4 +fn_8011D384 = .text:0x8011D384; // type:function size:0x4 +fn_8011D388 = .text:0x8011D388; // type:function size:0x4 +fn_8011D38C = .text:0x8011D38C; // type:function size:0x4 +fn_8011D390 = .text:0x8011D390; // type:function size:0x4 +fn_8011D394 = .text:0x8011D394; // type:function size:0x4 +fn_8011D398 = .text:0x8011D398; // type:function size:0x4 +fn_8011D39C = .text:0x8011D39C; // type:function size:0x4 +fn_8011D3A0 = .text:0x8011D3A0; // type:function size:0x4 +fn_8011D3A4 = .text:0x8011D3A4; // type:function size:0x4 +fn_8011D3A8 = .text:0x8011D3A8; // type:function size:0x4 +fn_8011D3AC = .text:0x8011D3AC; // type:function size:0x4 +fn_8011D3B0 = .text:0x8011D3B0; // type:function size:0x4 +fn_8011D3B4 = .text:0x8011D3B4; // type:function size:0x4 +fn_8011D3B8 = .text:0x8011D3B8; // type:function size:0x4 +fn_8011D3BC = .text:0x8011D3BC; // type:function size:0x4 +fn_8011D3C0 = .text:0x8011D3C0; // type:function size:0x4 +fn_8011D3C4 = .text:0x8011D3C4; // type:function size:0x4 +fn_8011D3C8 = .text:0x8011D3C8; // type:function size:0x4 +fn_8011D3CC = .text:0x8011D3CC; // type:function size:0x4 +fn_8011D3D0 = .text:0x8011D3D0; // type:function size:0x4 +fn_8011D3D4 = .text:0x8011D3D4; // type:function size:0x4 +fn_8011D3D8 = .text:0x8011D3D8; // type:function size:0x4 +fn_8011D3DC = .text:0x8011D3DC; // type:function size:0x4 +fn_8011D3E0 = .text:0x8011D3E0; // type:function size:0x4 +fn_8011D3E4 = .text:0x8011D3E4; // type:function size:0x4 +fn_8011D3E8 = .text:0x8011D3E8; // type:function size:0x4 +fn_8011D3EC = .text:0x8011D3EC; // type:function size:0x4 +fn_8011D3F0 = .text:0x8011D3F0; // type:function size:0x4 +fn_8011D3F4 = .text:0x8011D3F4; // type:function size:0x4 +fn_8011D3F8 = .text:0x8011D3F8; // type:function size:0x4 +fn_8011D3FC = .text:0x8011D3FC; // type:function size:0x4 +fn_8011D400 = .text:0x8011D400; // type:function size:0x4 +fn_8011D404 = .text:0x8011D404; // type:function size:0x4 +fn_8011D408 = .text:0x8011D408; // type:function size:0x4 +fn_8011D40C = .text:0x8011D40C; // type:function size:0x4 +fn_8011D410 = .text:0x8011D410; // type:function size:0x4 +fn_8011D414 = .text:0x8011D414; // type:function size:0x4 +fn_8011D418 = .text:0x8011D418; // type:function size:0x4 +fn_8011D41C = .text:0x8011D41C; // type:function size:0x4 +fn_8011D420 = .text:0x8011D420; // type:function size:0x4 +fn_8011D424 = .text:0x8011D424; // type:function size:0x4 +fn_8011D428 = .text:0x8011D428; // type:function size:0x4 +fn_8011D42C = .text:0x8011D42C; // type:function size:0x4 +fn_8011D430 = .text:0x8011D430; // type:function size:0x4 +fn_8011D434 = .text:0x8011D434; // type:function size:0x4 +fn_8011D438 = .text:0x8011D438; // type:function size:0x4 +fn_8011D43C = .text:0x8011D43C; // type:function size:0x4 +fn_8011D440 = .text:0x8011D440; // type:function size:0x4 +fn_8011D444 = .text:0x8011D444; // type:function size:0x4 +fn_8011D448 = .text:0x8011D448; // type:function size:0x4 +fn_8011D44C = .text:0x8011D44C; // type:function size:0x4 +fn_8011D450 = .text:0x8011D450; // type:function size:0x4 +fn_8011D454 = .text:0x8011D454; // type:function size:0x4 +fn_8011D458 = .text:0x8011D458; // type:function size:0x4 +fn_8011D45C = .text:0x8011D45C; // type:function size:0x4 +fn_8011D460 = .text:0x8011D460; // type:function size:0x4 +fn_8011D464 = .text:0x8011D464; // type:function size:0x4 +fn_8011D468 = .text:0x8011D468; // type:function size:0x4 +fn_8011D46C = .text:0x8011D46C; // type:function size:0x4 +fn_8011D470 = .text:0x8011D470; // type:function size:0x4 +fn_8011D474 = .text:0x8011D474; // type:function size:0x4 +fn_8011D478 = .text:0x8011D478; // type:function size:0x4 +fn_8011D47C = .text:0x8011D47C; // type:function size:0x4 +fn_8011D480 = .text:0x8011D480; // type:function size:0x4 +fn_8011D484 = .text:0x8011D484; // type:function size:0x4 +fn_8011D488 = .text:0x8011D488; // type:function size:0x4 +fn_8011D48C = .text:0x8011D48C; // type:function size:0x4 +fn_8011D490 = .text:0x8011D490; // type:function size:0x4 +fn_8011D494 = .text:0x8011D494; // type:function size:0x4 +fn_8011D498 = .text:0x8011D498; // type:function size:0x4 +fn_8011D49C = .text:0x8011D49C; // type:function size:0x4 +fn_8011D4A0 = .text:0x8011D4A0; // type:function size:0x4 +fn_8011D4A4 = .text:0x8011D4A4; // type:function size:0x4 +fn_8011D4A8 = .text:0x8011D4A8; // type:function size:0x4 +fn_8011D4AC = .text:0x8011D4AC; // type:function size:0x4 +fn_8011D4B0 = .text:0x8011D4B0; // type:function size:0x4 +fn_8011D4B4 = .text:0x8011D4B4; // type:function size:0x4 +fn_8011D4B8 = .text:0x8011D4B8; // type:function size:0x4 +fn_8011D4BC = .text:0x8011D4BC; // type:function size:0x4 +fn_8011D4C0 = .text:0x8011D4C0; // type:function size:0x4 +fn_8011D4C4 = .text:0x8011D4C4; // type:function size:0x4 +fn_8011D4C8 = .text:0x8011D4C8; // type:function size:0x4 +fn_8011D4CC = .text:0x8011D4CC; // type:function size:0x4 +fn_8011D4D0 = .text:0x8011D4D0; // type:function size:0x4 +fn_8011D4D4 = .text:0x8011D4D4; // type:function size:0x4 +fn_8011D4D8 = .text:0x8011D4D8; // type:function size:0x4 +fn_8011D4DC = .text:0x8011D4DC; // type:function size:0x4 +fn_8011D4E0 = .text:0x8011D4E0; // type:function size:0x4 +fn_8011D4E4 = .text:0x8011D4E4; // type:function size:0x4 +fn_8011D4E8 = .text:0x8011D4E8; // type:function size:0x4 +fn_8011D4EC = .text:0x8011D4EC; // type:function size:0x4 +fn_8011D4F0 = .text:0x8011D4F0; // type:function size:0x4 +fn_8011D4F4 = .text:0x8011D4F4; // type:function size:0x4 +fn_8011D4F8 = .text:0x8011D4F8; // type:function size:0x4 +fn_8011D4FC = .text:0x8011D4FC; // type:function size:0x4 +fn_8011D500 = .text:0x8011D500; // type:function size:0x4 +fn_8011D504 = .text:0x8011D504; // type:function size:0x4 +fn_8011D508 = .text:0x8011D508; // type:function size:0x4 +fn_8011D50C = .text:0x8011D50C; // type:function size:0x4 +fn_8011D510 = .text:0x8011D510; // type:function size:0x4 +fn_8011D514 = .text:0x8011D514; // type:function size:0x4 +fn_8011D518 = .text:0x8011D518; // type:function size:0x4 +fn_8011D51C = .text:0x8011D51C; // type:function size:0x4 +fn_8011D520 = .text:0x8011D520; // type:function size:0x4 +fn_8011D524 = .text:0x8011D524; // type:function size:0x4 +fn_8011D528 = .text:0x8011D528; // type:function size:0x4 +fn_8011D52C = .text:0x8011D52C; // type:function size:0x4 +fn_8011D530 = .text:0x8011D530; // type:function size:0x4 +fn_8011D534 = .text:0x8011D534; // type:function size:0x4 +fn_8011D538 = .text:0x8011D538; // type:function size:0x4 +fn_8011D53C = .text:0x8011D53C; // type:function size:0x4 +fn_8011D540 = .text:0x8011D540; // type:function size:0x4 +fn_8011D544 = .text:0x8011D544; // type:function size:0x4 +fn_8011D548 = .text:0x8011D548; // type:function size:0x4 +fn_8011D54C = .text:0x8011D54C; // type:function size:0x4 +fn_8011D550 = .text:0x8011D550; // type:function size:0x4 +fn_8011D554 = .text:0x8011D554; // type:function size:0x4 +fn_8011D558 = .text:0x8011D558; // type:function size:0x4 +fn_8011D55C = .text:0x8011D55C; // type:function size:0x4 +fn_8011D560 = .text:0x8011D560; // type:function size:0x4 +fn_8011D564 = .text:0x8011D564; // type:function size:0x4 +fn_8011D568 = .text:0x8011D568; // type:function size:0x4 +fn_8011D56C = .text:0x8011D56C; // type:function size:0x4 +fn_8011D570 = .text:0x8011D570; // type:function size:0x4 +fn_8011D574 = .text:0x8011D574; // type:function size:0x4 +fn_8011D578 = .text:0x8011D578; // type:function size:0x4 +fn_8011D57C = .text:0x8011D57C; // type:function size:0x4 +fn_8011D580 = .text:0x8011D580; // type:function size:0x4 +fn_8011D584 = .text:0x8011D584; // type:function size:0x4 +fn_8011D588 = .text:0x8011D588; // type:function size:0x4 +fn_8011D58C = .text:0x8011D58C; // type:function size:0x4 +fn_8011D590 = .text:0x8011D590; // type:function size:0x4 +fn_8011D594 = .text:0x8011D594; // type:function size:0x4 +fn_8011D598 = .text:0x8011D598; // type:function size:0x4 +fn_8011D59C = .text:0x8011D59C; // type:function size:0x4 +fn_8011D5A0 = .text:0x8011D5A0; // type:function size:0x4 +fn_8011D5A4 = .text:0x8011D5A4; // type:function size:0x4 +fn_8011D5A8 = .text:0x8011D5A8; // type:function size:0x4 +fn_8011D5AC = .text:0x8011D5AC; // type:function size:0x4 +fn_8011D5B0 = .text:0x8011D5B0; // type:function size:0x4 +fn_8011D5B4 = .text:0x8011D5B4; // type:function size:0x4 +fn_8011D5B8 = .text:0x8011D5B8; // type:function size:0x4 +fn_8011D5BC = .text:0x8011D5BC; // type:function size:0x4 +fn_8011D5C0 = .text:0x8011D5C0; // type:function size:0x4 +fn_8011D5C4 = .text:0x8011D5C4; // type:function size:0x4 +fn_8011D5C8 = .text:0x8011D5C8; // type:function size:0x4 +fn_8011D5CC = .text:0x8011D5CC; // type:function size:0x4 +fn_8011D5D0 = .text:0x8011D5D0; // type:function size:0x4 +fn_8011D5D4 = .text:0x8011D5D4; // type:function size:0x4 +fn_8011D5D8 = .text:0x8011D5D8; // type:function size:0x4 +fn_8011D5DC = .text:0x8011D5DC; // type:function size:0x4 +fn_8011D5E0 = .text:0x8011D5E0; // type:function size:0x4 +fn_8011D5E4 = .text:0x8011D5E4; // type:function size:0x4 +fn_8011D5E8 = .text:0x8011D5E8; // type:function size:0x4 +fn_8011D5EC = .text:0x8011D5EC; // type:function size:0x4 +fn_8011D5F0 = .text:0x8011D5F0; // type:function size:0x4 +fn_8011D5F4 = .text:0x8011D5F4; // type:function size:0x4 +fn_8011D5F8 = .text:0x8011D5F8; // type:function size:0x4 +fn_8011D5FC = .text:0x8011D5FC; // type:function size:0x4 +fn_8011D600 = .text:0x8011D600; // type:function size:0x4 +fn_8011D604 = .text:0x8011D604; // type:function size:0x4 +fn_8011D608 = .text:0x8011D608; // type:function size:0x4 +fn_8011D60C = .text:0x8011D60C; // type:function size:0x4 +fn_8011D610 = .text:0x8011D610; // type:function size:0x4 +fn_8011D614 = .text:0x8011D614; // type:function size:0x4 +fn_8011D618 = .text:0x8011D618; // type:function size:0x4 +fn_8011D61C = .text:0x8011D61C; // type:function size:0x4 +fn_8011D620 = .text:0x8011D620; // type:function size:0x4 +fn_8011D624 = .text:0x8011D624; // type:function size:0x4 +fn_8011D628 = .text:0x8011D628; // type:function size:0x4 +fn_8011D62C = .text:0x8011D62C; // type:function size:0x4 +fn_8011D630 = .text:0x8011D630; // type:function size:0x4 +fn_8011D634 = .text:0x8011D634; // type:function size:0x4 +fn_8011D638 = .text:0x8011D638; // type:function size:0x4 +fn_8011D63C = .text:0x8011D63C; // type:function size:0x4 +fn_8011D640 = .text:0x8011D640; // type:function size:0x4 +fn_8011D644 = .text:0x8011D644; // type:function size:0x4 +fn_8011D648 = .text:0x8011D648; // type:function size:0x4 +fn_8011D64C = .text:0x8011D64C; // type:function size:0x4 +fn_8011D650 = .text:0x8011D650; // type:function size:0x4 +fn_8011D654 = .text:0x8011D654; // type:function size:0x4 +fn_8011D658 = .text:0x8011D658; // type:function size:0x4 +fn_8011D65C = .text:0x8011D65C; // type:function size:0x4 +fn_8011D660 = .text:0x8011D660; // type:function size:0x4 +fn_8011D664 = .text:0x8011D664; // type:function size:0x4 +fn_8011D668 = .text:0x8011D668; // type:function size:0x4 +fn_8011D66C = .text:0x8011D66C; // type:function size:0x4 +fn_8011D670 = .text:0x8011D670; // type:function size:0x4 +fn_8011D674 = .text:0x8011D674; // type:function size:0x4 +fn_8011D678 = .text:0x8011D678; // type:function size:0x4 +fn_8011D67C = .text:0x8011D67C; // type:function size:0x4 +fn_8011D680 = .text:0x8011D680; // type:function size:0x4 +fn_8011D684 = .text:0x8011D684; // type:function size:0x4 +fn_8011D688 = .text:0x8011D688; // type:function size:0x4 +fn_8011D68C = .text:0x8011D68C; // type:function size:0x4 +fn_8011D690 = .text:0x8011D690; // type:function size:0x4 +fn_8011D694 = .text:0x8011D694; // type:function size:0x4 +fn_8011D698 = .text:0x8011D698; // type:function size:0x4 +fn_8011D69C = .text:0x8011D69C; // type:function size:0x4 +fn_8011D6A0 = .text:0x8011D6A0; // type:function size:0x4 +fn_8011D6A4 = .text:0x8011D6A4; // type:function size:0x4 +fn_8011D6A8 = .text:0x8011D6A8; // type:function size:0x4 +fn_8011D6AC = .text:0x8011D6AC; // type:function size:0x4 +fn_8011D6B0 = .text:0x8011D6B0; // type:function size:0x4 +fn_8011D6B4 = .text:0x8011D6B4; // type:function size:0x4 +fn_8011D6B8 = .text:0x8011D6B8; // type:function size:0x4 +fn_8011D6BC = .text:0x8011D6BC; // type:function size:0x4 +fn_8011D6C0 = .text:0x8011D6C0; // type:function size:0x4 +fn_8011D6C4 = .text:0x8011D6C4; // type:function size:0x4 +fn_8011D6C8 = .text:0x8011D6C8; // type:function size:0x4 +fn_8011D6CC = .text:0x8011D6CC; // type:function size:0x4 +fn_8011D6D0 = .text:0x8011D6D0; // type:function size:0x4 +fn_8011D6D4 = .text:0x8011D6D4; // type:function size:0x4 +fn_8011D6D8 = .text:0x8011D6D8; // type:function size:0x4 +fn_8011D6DC = .text:0x8011D6DC; // type:function size:0x4 +fn_8011D6E0 = .text:0x8011D6E0; // type:function size:0x4 +fn_8011D6E4 = .text:0x8011D6E4; // type:function size:0x4 +fn_8011D6E8 = .text:0x8011D6E8; // type:function size:0x4 +fn_8011D6EC = .text:0x8011D6EC; // type:function size:0x4 +fn_8011D6F0 = .text:0x8011D6F0; // type:function size:0x4 +fn_8011D6F4 = .text:0x8011D6F4; // type:function size:0x4 +fn_8011D6F8 = .text:0x8011D6F8; // type:function size:0x4 +fn_8011D6FC = .text:0x8011D6FC; // type:function size:0x4 +fn_8011D700 = .text:0x8011D700; // type:function size:0x4 +fn_8011D704 = .text:0x8011D704; // type:function size:0x4 +fn_8011D708 = .text:0x8011D708; // type:function size:0x4 +fn_8011D70C = .text:0x8011D70C; // type:function size:0x4 +fn_8011D710 = .text:0x8011D710; // type:function size:0x4 +fn_8011D714 = .text:0x8011D714; // type:function size:0x4 +fn_8011D718 = .text:0x8011D718; // type:function size:0x4 +fn_8011D71C = .text:0x8011D71C; // type:function size:0x4 +fn_8011D720 = .text:0x8011D720; // type:function size:0x4 +fn_8011D724 = .text:0x8011D724; // type:function size:0x4 +fn_8011D728 = .text:0x8011D728; // type:function size:0x4 +fn_8011D72C = .text:0x8011D72C; // type:function size:0x4 +fn_8011D730 = .text:0x8011D730; // type:function size:0x4 +fn_8011D734 = .text:0x8011D734; // type:function size:0x4 +fn_8011D738 = .text:0x8011D738; // type:function size:0x4 +fn_8011D73C = .text:0x8011D73C; // type:function size:0x4 +fn_8011D740 = .text:0x8011D740; // type:function size:0x4 +fn_8011D744 = .text:0x8011D744; // type:function size:0x4 +fn_8011D748 = .text:0x8011D748; // type:function size:0x4 +fn_8011D74C = .text:0x8011D74C; // type:function size:0x4 +fn_8011D750 = .text:0x8011D750; // type:function size:0x4 +fn_8011D754 = .text:0x8011D754; // type:function size:0x4 +fn_8011D758 = .text:0x8011D758; // type:function size:0x4 +fn_8011D75C = .text:0x8011D75C; // type:function size:0x4 +fn_8011D760 = .text:0x8011D760; // type:function size:0x4 +fn_8011D764 = .text:0x8011D764; // type:function size:0x4 +fn_8011D768 = .text:0x8011D768; // type:function size:0x4 +fn_8011D76C = .text:0x8011D76C; // type:function size:0x4 +fn_8011D770 = .text:0x8011D770; // type:function size:0x4 +fn_8011D774 = .text:0x8011D774; // type:function size:0x4 +fn_8011D778 = .text:0x8011D778; // type:function size:0x4 +fn_8011D77C = .text:0x8011D77C; // type:function size:0x4 +fn_8011D780 = .text:0x8011D780; // type:function size:0x4 +fn_8011D784 = .text:0x8011D784; // type:function size:0x4 +fn_8011D788 = .text:0x8011D788; // type:function size:0x4 +fn_8011D78C = .text:0x8011D78C; // type:function size:0x4 +fn_8011D790 = .text:0x8011D790; // type:function size:0x4 +fn_8011D794 = .text:0x8011D794; // type:function size:0x4 +fn_8011D798 = .text:0x8011D798; // type:function size:0x4 +fn_8011D79C = .text:0x8011D79C; // type:function size:0x4 +fn_8011D7A0 = .text:0x8011D7A0; // type:function size:0x4 +fn_8011D7A4 = .text:0x8011D7A4; // type:function size:0x4 +fn_8011D7A8 = .text:0x8011D7A8; // type:function size:0x4 +fn_8011D7AC = .text:0x8011D7AC; // type:function size:0x4 +fn_8011D7B0 = .text:0x8011D7B0; // type:function size:0x4 +fn_8011D7B4 = .text:0x8011D7B4; // type:function size:0x4 +fn_8011D7B8 = .text:0x8011D7B8; // type:function size:0x4 +fn_8011D7BC = .text:0x8011D7BC; // type:function size:0x4 +fn_8011D7C0 = .text:0x8011D7C0; // type:function size:0x4 +fn_8011D7C4 = .text:0x8011D7C4; // type:function size:0x4 +fn_8011D7C8 = .text:0x8011D7C8; // type:function size:0x4 +fn_8011D7CC = .text:0x8011D7CC; // type:function size:0x4 +fn_8011D7D0 = .text:0x8011D7D0; // type:function size:0x4 +fn_8011D7D4 = .text:0x8011D7D4; // type:function size:0x4 +fn_8011D7D8 = .text:0x8011D7D8; // type:function size:0x4 +fn_8011D7DC = .text:0x8011D7DC; // type:function size:0x4 +fn_8011D7E0 = .text:0x8011D7E0; // type:function size:0x4 +fn_8011D7E4 = .text:0x8011D7E4; // type:function size:0x4 +fn_8011D7E8 = .text:0x8011D7E8; // type:function size:0x4 +fn_8011D7EC = .text:0x8011D7EC; // type:function size:0x4 +fn_8011D7F0 = .text:0x8011D7F0; // type:function size:0x4 +fn_8011D7F4 = .text:0x8011D7F4; // type:function size:0x4 +fn_8011D7F8 = .text:0x8011D7F8; // type:function size:0x4 +fn_8011D7FC = .text:0x8011D7FC; // type:function size:0x4 +fn_8011D800 = .text:0x8011D800; // type:function size:0x4 +fn_8011D804 = .text:0x8011D804; // type:function size:0x4 +fn_8011D808 = .text:0x8011D808; // type:function size:0x4 +fn_8011D80C = .text:0x8011D80C; // type:function size:0x4 +fn_8011D810 = .text:0x8011D810; // type:function size:0x4 +fn_8011D814 = .text:0x8011D814; // type:function size:0x4 +fn_8011D818 = .text:0x8011D818; // type:function size:0x4 +fn_8011D81C = .text:0x8011D81C; // type:function size:0x4 +fn_8011D820 = .text:0x8011D820; // type:function size:0x4 +fn_8011D824 = .text:0x8011D824; // type:function size:0x4 +fn_8011D828 = .text:0x8011D828; // type:function size:0x4 +fn_8011D82C = .text:0x8011D82C; // type:function size:0x4 +fn_8011D830 = .text:0x8011D830; // type:function size:0x4 +fn_8011D834 = .text:0x8011D834; // type:function size:0x4 +fn_8011D838 = .text:0x8011D838; // type:function size:0x4 +fn_8011D83C = .text:0x8011D83C; // type:function size:0x4 +fn_8011D840 = .text:0x8011D840; // type:function size:0x4 +fn_8011D844 = .text:0x8011D844; // type:function size:0x4 +fn_8011D848 = .text:0x8011D848; // type:function size:0x4 +fn_8011D84C = .text:0x8011D84C; // type:function size:0x4 +fn_8011D850 = .text:0x8011D850; // type:function size:0x4 +fn_8011D854 = .text:0x8011D854; // type:function size:0x4 +fn_8011D858 = .text:0x8011D858; // type:function size:0x4 +fn_8011D85C = .text:0x8011D85C; // type:function size:0x4 +fn_8011D860 = .text:0x8011D860; // type:function size:0x4 +fn_8011D864 = .text:0x8011D864; // type:function size:0x4 +fn_8011D868 = .text:0x8011D868; // type:function size:0x4 +fn_8011D86C = .text:0x8011D86C; // type:function size:0x4 +fn_8011D870 = .text:0x8011D870; // type:function size:0x4 +fn_8011D874 = .text:0x8011D874; // type:function size:0x4 +fn_8011D878 = .text:0x8011D878; // type:function size:0x4 +fn_8011D87C = .text:0x8011D87C; // type:function size:0x4 +fn_8011D880 = .text:0x8011D880; // type:function size:0x4 +fn_8011D884 = .text:0x8011D884; // type:function size:0x4 +fn_8011D888 = .text:0x8011D888; // type:function size:0x4 +fn_8011D88C = .text:0x8011D88C; // type:function size:0x4 +fn_8011D890 = .text:0x8011D890; // type:function size:0x4 +fn_8011D894 = .text:0x8011D894; // type:function size:0x4 +fn_8011D898 = .text:0x8011D898; // type:function size:0x4 +fn_8011D89C = .text:0x8011D89C; // type:function size:0x4 +fn_8011D8A0 = .text:0x8011D8A0; // type:function size:0x4 +fn_8011D8A4 = .text:0x8011D8A4; // type:function size:0x4 +fn_8011D8A8 = .text:0x8011D8A8; // type:function size:0x4 +fn_8011D8AC = .text:0x8011D8AC; // type:function size:0x4 +fn_8011D8B0 = .text:0x8011D8B0; // type:function size:0x4 +fn_8011D8B4 = .text:0x8011D8B4; // type:function size:0x4 +fn_8011D8B8 = .text:0x8011D8B8; // type:function size:0x4 +fn_8011D8BC = .text:0x8011D8BC; // type:function size:0x4 +fn_8011D8C0 = .text:0x8011D8C0; // type:function size:0x4 +fn_8011D8C4 = .text:0x8011D8C4; // type:function size:0x4 +fn_8011D8C8 = .text:0x8011D8C8; // type:function size:0x4 +fn_8011D8CC = .text:0x8011D8CC; // type:function size:0x4 +fn_8011D8D0 = .text:0x8011D8D0; // type:function size:0x4 +fn_8011D8D4 = .text:0x8011D8D4; // type:function size:0x4 +fn_8011D8D8 = .text:0x8011D8D8; // type:function size:0x4 +fn_8011D8DC = .text:0x8011D8DC; // type:function size:0x4 +fn_8011D8E0 = .text:0x8011D8E0; // type:function size:0x4 +fn_8011D8E4 = .text:0x8011D8E4; // type:function size:0x4 +fn_8011D8E8 = .text:0x8011D8E8; // type:function size:0x4 +fn_8011D8EC = .text:0x8011D8EC; // type:function size:0x4 +fn_8011D8F0 = .text:0x8011D8F0; // type:function size:0x4 +fn_8011D8F4 = .text:0x8011D8F4; // type:function size:0x4 +fn_8011D8F8 = .text:0x8011D8F8; // type:function size:0x4 +fn_8011D8FC = .text:0x8011D8FC; // type:function size:0x4 +fn_8011D900 = .text:0x8011D900; // type:function size:0x4 +fn_8011D904 = .text:0x8011D904; // type:function size:0x4 +fn_8011D908 = .text:0x8011D908; // type:function size:0x4 +fn_8011D90C = .text:0x8011D90C; // type:function size:0x4 +fn_8011D910 = .text:0x8011D910; // type:function size:0x4 +fn_8011D914 = .text:0x8011D914; // type:function size:0x4 +fn_8011D918 = .text:0x8011D918; // type:function size:0x4 +fn_8011D91C = .text:0x8011D91C; // type:function size:0x4 +fn_8011D920 = .text:0x8011D920; // type:function size:0x4 +fn_8011D924 = .text:0x8011D924; // type:function size:0x4 +fn_8011D928 = .text:0x8011D928; // type:function size:0x4 +fn_8011D92C = .text:0x8011D92C; // type:function size:0x4 +fn_8011D930 = .text:0x8011D930; // type:function size:0x4 +fn_8011D934 = .text:0x8011D934; // type:function size:0x4 +fn_8011D938 = .text:0x8011D938; // type:function size:0x4 +fn_8011D93C = .text:0x8011D93C; // type:function size:0x4 +fn_8011D940 = .text:0x8011D940; // type:function size:0x4 +fn_8011D944 = .text:0x8011D944; // type:function size:0x4 +fn_8011D948 = .text:0x8011D948; // type:function size:0x4 +fn_8011D94C = .text:0x8011D94C; // type:function size:0x4 +fn_8011D950 = .text:0x8011D950; // type:function size:0x4 +fn_8011D954 = .text:0x8011D954; // type:function size:0x4 +fn_8011D958 = .text:0x8011D958; // type:function size:0x4 +fn_8011D95C = .text:0x8011D95C; // type:function size:0x4 +fn_8011D960 = .text:0x8011D960; // type:function size:0x4 +fn_8011D964 = .text:0x8011D964; // type:function size:0x4 +fn_8011D968 = .text:0x8011D968; // type:function size:0x4 +fn_8011D96C = .text:0x8011D96C; // type:function size:0x4 +fn_8011D970 = .text:0x8011D970; // type:function size:0x4 +fn_8011D974 = .text:0x8011D974; // type:function size:0x4 +fn_8011D978 = .text:0x8011D978; // type:function size:0x4 +fn_8011D97C = .text:0x8011D97C; // type:function size:0x4 +fn_8011D980 = .text:0x8011D980; // type:function size:0x4 +fn_8011D984 = .text:0x8011D984; // type:function size:0x4 +fn_8011D988 = .text:0x8011D988; // type:function size:0x4 +fn_8011D98C = .text:0x8011D98C; // type:function size:0x4 +fn_8011D990 = .text:0x8011D990; // type:function size:0x4 +fn_8011D994 = .text:0x8011D994; // type:function size:0x4 +fn_8011D998 = .text:0x8011D998; // type:function size:0x4 +fn_8011D99C = .text:0x8011D99C; // type:function size:0x4 +fn_8011D9A0 = .text:0x8011D9A0; // type:function size:0x4 +fn_8011D9A4 = .text:0x8011D9A4; // type:function size:0x4 +fn_8011D9A8 = .text:0x8011D9A8; // type:function size:0x4 +fn_8011D9AC = .text:0x8011D9AC; // type:function size:0x4 +fn_8011D9B0 = .text:0x8011D9B0; // type:function size:0x4 +fn_8011D9B4 = .text:0x8011D9B4; // type:function size:0x4 +fn_8011D9B8 = .text:0x8011D9B8; // type:function size:0x4 +fn_8011D9BC = .text:0x8011D9BC; // type:function size:0x4 +fn_8011D9C0 = .text:0x8011D9C0; // type:function size:0x4 +fn_8011D9C4 = .text:0x8011D9C4; // type:function size:0x4 +fn_8011D9C8 = .text:0x8011D9C8; // type:function size:0x4 +fn_8011D9CC = .text:0x8011D9CC; // type:function size:0x4 +fn_8011D9D0 = .text:0x8011D9D0; // type:function size:0x4 +fn_8011D9D4 = .text:0x8011D9D4; // type:function size:0x4 +fn_8011D9D8 = .text:0x8011D9D8; // type:function size:0x4 +fn_8011D9DC = .text:0x8011D9DC; // type:function size:0x4 +fn_8011D9E0 = .text:0x8011D9E0; // type:function size:0x4 +fn_8011D9E4 = .text:0x8011D9E4; // type:function size:0x4 +fn_8011D9E8 = .text:0x8011D9E8; // type:function size:0x4 +fn_8011D9EC = .text:0x8011D9EC; // type:function size:0x4 +fn_8011D9F0 = .text:0x8011D9F0; // type:function size:0x4 +fn_8011D9F4 = .text:0x8011D9F4; // type:function size:0x4 +fn_8011D9F8 = .text:0x8011D9F8; // type:function size:0x4 +fn_8011D9FC = .text:0x8011D9FC; // type:function size:0x4 +fn_8011DA00 = .text:0x8011DA00; // type:function size:0x4 +fn_8011DA04 = .text:0x8011DA04; // type:function size:0x4 +fn_8011DA08 = .text:0x8011DA08; // type:function size:0x4 +fn_8011DA0C = .text:0x8011DA0C; // type:function size:0x4 +fn_8011DA10 = .text:0x8011DA10; // type:function size:0x4 +fn_8011DA14 = .text:0x8011DA14; // type:function size:0x4 +fn_8011DA18 = .text:0x8011DA18; // type:function size:0x4 +fn_8011DA1C = .text:0x8011DA1C; // type:function size:0x4 +fn_8011DA20 = .text:0x8011DA20; // type:function size:0x4 +fn_8011DA24 = .text:0x8011DA24; // type:function size:0x4 +fn_8011DA28 = .text:0x8011DA28; // type:function size:0x4 +fn_8011DA2C = .text:0x8011DA2C; // type:function size:0x4 +fn_8011DA30 = .text:0x8011DA30; // type:function size:0x4 +fn_8011DA34 = .text:0x8011DA34; // type:function size:0x4 +fn_8011DA38 = .text:0x8011DA38; // type:function size:0x4 +fn_8011DA3C = .text:0x8011DA3C; // type:function size:0x4 +fn_8011DA40 = .text:0x8011DA40; // type:function size:0x4 +fn_8011DA44 = .text:0x8011DA44; // type:function size:0x4 +fn_8011DA48 = .text:0x8011DA48; // type:function size:0x4 +fn_8011DA4C = .text:0x8011DA4C; // type:function size:0x4 +fn_8011DA50 = .text:0x8011DA50; // type:function size:0x4 +fn_8011DA54 = .text:0x8011DA54; // type:function size:0x4 +fn_8011DA58 = .text:0x8011DA58; // type:function size:0x4 +fn_8011DA5C = .text:0x8011DA5C; // type:function size:0x4 +fn_8011DA60 = .text:0x8011DA60; // type:function size:0x4 +fn_8011DA64 = .text:0x8011DA64; // type:function size:0x4 +fn_8011DA68 = .text:0x8011DA68; // type:function size:0x4 +fn_8011DA6C = .text:0x8011DA6C; // type:function size:0x4 +fn_8011DA70 = .text:0x8011DA70; // type:function size:0x4 +fn_8011DA74 = .text:0x8011DA74; // type:function size:0x4 +fn_8011DA78 = .text:0x8011DA78; // type:function size:0x4 +fn_8011DA7C = .text:0x8011DA7C; // type:function size:0x4 +fn_8011DA80 = .text:0x8011DA80; // type:function size:0x4 +fn_8011DA84 = .text:0x8011DA84; // type:function size:0x4 +fn_8011DA88 = .text:0x8011DA88; // type:function size:0x4 +fn_8011DA8C = .text:0x8011DA8C; // type:function size:0x4 +fn_8011DA90 = .text:0x8011DA90; // type:function size:0x4 +fn_8011DA94 = .text:0x8011DA94; // type:function size:0x4 +fn_8011DA98 = .text:0x8011DA98; // type:function size:0x4 +fn_8011DA9C = .text:0x8011DA9C; // type:function size:0x4 +fn_8011DAA0 = .text:0x8011DAA0; // type:function size:0x4 +fn_8011DAA4 = .text:0x8011DAA4; // type:function size:0x4 +fn_8011DAA8 = .text:0x8011DAA8; // type:function size:0x4 +fn_8011DAAC = .text:0x8011DAAC; // type:function size:0x4 +fn_8011DAB0 = .text:0x8011DAB0; // type:function size:0x4 +fn_8011DAB4 = .text:0x8011DAB4; // type:function size:0x4 +fn_8011DAB8 = .text:0x8011DAB8; // type:function size:0x4 +fn_8011DABC = .text:0x8011DABC; // type:function size:0x4 +fn_8011DAC0 = .text:0x8011DAC0; // type:function size:0x4 +fn_8011DAC4 = .text:0x8011DAC4; // type:function size:0x4 +fn_8011DAC8 = .text:0x8011DAC8; // type:function size:0x4 +fn_8011DACC = .text:0x8011DACC; // type:function size:0x4 +fn_8011DAD0 = .text:0x8011DAD0; // type:function size:0x4 +fn_8011DAD4 = .text:0x8011DAD4; // type:function size:0x4 +fn_8011DAD8 = .text:0x8011DAD8; // type:function size:0x4 +fn_8011DADC = .text:0x8011DADC; // type:function size:0x4 +_ctors = .ctors:0x8011DAE0; // type:label scope:global data:4byte +__init_cpp_exceptions_reference = .ctors:0x8011DAE0; // type:object size:0x4 scope:global +_dtors = .dtors:0x8011DB00; // type:label scope:global data:4byte +__destroy_global_chain_reference = .dtors:0x8011DB00; // type:object size:0x4 scope:global +__fini_cpp_exceptions_reference = .dtors:0x8011DB04; // type:object size:0x4 scope:global +lbl_8011DB20 = .rodata:0x8011DB20; // type:object size:0x10 data:4byte +lbl_8011DB30 = .rodata:0x8011DB30; // type:object size:0x10 data:4byte +lbl_8011DB40 = .rodata:0x8011DB40; // type:object size:0x10 data:4byte +lbl_8011DB50 = .rodata:0x8011DB50; // type:object size:0x20 data:byte +lbl_8011DB70 = .rodata:0x8011DB70; // type:object size:0x10 data:4byte +lbl_8011DB80 = .rodata:0x8011DB80; // type:object size:0x24 data:4byte +lbl_8011DBA4 = .rodata:0x8011DBA4; // type:object size:0xC data:4byte +lbl_8011DBB0 = .rodata:0x8011DBB0; // type:object size:0x20 data:4byte +lbl_8011DBD0 = .rodata:0x8011DBD0; // type:object size:0x7C data:4byte +lbl_8011DC4C = .rodata:0x8011DC4C; // type:object size:0x24 data:4byte +lbl_8011DC70 = .rodata:0x8011DC70; // type:object size:0x10 data:4byte +lbl_8011DC80 = .rodata:0x8011DC80; // type:object size:0x38 data:4byte +lbl_8011DCB8 = .rodata:0x8011DCB8; // type:object size:0x38 data:4byte +lbl_8011DCF0 = .rodata:0x8011DCF0; // type:object size:0x20 data:4byte +lbl_8011DD10 = .rodata:0x8011DD10; // type:object size:0x10 data:4byte +lbl_8011DD20 = .rodata:0x8011DD20; // type:object size:0x90 data:4byte +lbl_8011DDB0 = .rodata:0x8011DDB0; // type:object size:0x20 data:4byte +lbl_8011DDD0 = .rodata:0x8011DDD0; // type:object size:0x20 data:4byte +pickSpr = .rodata:0x8011DDF0; // type:object size:0x20 scope:local +handMdl = .rodata:0x8011DE10; // type:object size:0x20 scope:local +ticketSpr = .rodata:0x8011DE30; // type:object size:0x10 scope:local +lbl_8011DE40 = .rodata:0x8011DE40; // type:object size:0x20 data:4byte +starMesTbl1 = .rodata:0x8011DE60; // type:object size:0x24 scope:local +starMesTbl2 = .rodata:0x8011DE84; // type:object size:0x48 scope:local +lbl_8011DED0 = .rodata:0x8011DED0; // type:object size:0x68 data:4byte +lbl_8011DF38 = .rodata:0x8011DF38; // type:object size:0x38 data:4byte +lbl_8011DF70 = .rodata:0x8011DF70; // type:object size:0x3C data:4byte +lbl_8011DFAC = .rodata:0x8011DFAC; // type:object size:0x14 data:2byte +lbl_8011DFC0 = .rodata:0x8011DFC0; // type:object size:0x20 data:4byte +lbl_8011DFE0 = .rodata:0x8011DFE0; // type:object size:0x20 data:4byte +lbl_8011E000 = .rodata:0x8011E000; // type:object size:0x20 data:4byte +lbl_8011E020 = .rodata:0x8011E020; // type:object size:0x20 data:4byte +lbl_8011E040 = .rodata:0x8011E040; // type:object size:0xC data:4byte +lbl_8011E04C = .rodata:0x8011E04C; // type:object size:0xC data:4byte +lbl_8011E058 = .rodata:0x8011E058; // type:object size:0xC data:4byte +lbl_8011E064 = .rodata:0x8011E064; // type:object size:0xC data:4byte +bowserMotTbl = .rodata:0x8011E070; // type:object size:0x18 scope:local +lbl_8011E088 = .rodata:0x8011E088; // type:object size:0x70 data:4byte +lbl_8011E0F8 = .rodata:0x8011E0F8; // type:object size:0xC data:byte +miniBowserMotTbl = .rodata:0x8011E104; // type:object size:0x1C scope:local +lbl_8011E120 = .rodata:0x8011E120; // type:object size:0x24 data:4byte +lbl_8011E144 = .rodata:0x8011E144; // type:object size:0x20 data:4byte +lbl_8011E164 = .rodata:0x8011E164; // type:object size:0x2C data:4byte +lbl_8011E190 = .rodata:0x8011E190; // type:object size:0x10 data:4byte +lbl_8011E1A0 = .rodata:0x8011E1A0; // type:object size:0x28 data:4byte +lbl_8011E1C8 = .rodata:0x8011E1C8; // type:object size:0x28 data:4byte +lbl_8011E1F0 = .rodata:0x8011E1F0; // type:object size:0x20 data:4byte +lbl_8011E210 = .rodata:0x8011E210; // type:object size:0x20 data:4byte +lbl_8011E230 = .rodata:0x8011E230; // type:object size:0x20 data:4byte +lbl_8011E250 = .rodata:0x8011E250; // type:object size:0x10 data:4byte +lbl_8011E260 = .rodata:0x8011E260; // type:object size:0x90 data:byte +lbl_8011E2F0 = .rodata:0x8011E2F0; // type:object size:0x10 +lbl_8011E300 = .rodata:0x8011E300; // type:object size:0x10 +lbl_8011E310 = .rodata:0x8011E310; // type:object size:0x18 data:double +lbl_8011E328 = .rodata:0x8011E328; // type:object size:0x54 +lbl_8011E37C = .rodata:0x8011E37C; // type:object size:0x14 +lbl_8011E390 = .rodata:0x8011E390; // type:object size:0x10 +lbl_8011E3A0 = .rodata:0x8011E3A0; // type:object size:0x20 +lbl_8011E3C0 = .rodata:0x8011E3C0; // type:object size:0x38 +lbl_8011E3F8 = .rodata:0x8011E3F8; // type:object size:0x40 +lbl_8011E438 = .rodata:0x8011E438; // type:object size:0x18 data:4byte +lbl_8011E450 = .rodata:0x8011E450; // type:object size:0xE0 +@stringBase0 = .rodata:0x8011E530; // type:object size:0x25 scope:local data:string_table +lbl_8011E558 = .rodata:0x8011E558; // type:object size:0x10 +lbl_8011E568 = .rodata:0x8011E568; // type:object size:0x30 data:double +lbl_8011E598 = .rodata:0x8011E598; // type:object size:0x108 +lbl_8011E6A0 = .rodata:0x8011E6A0; // type:object size:0x80 +lbl_8011E720 = .rodata:0x8011E720; // type:object size:0x10 +lbl_8011E730 = .rodata:0x8011E730; // type:object size:0x40 data:double +lbl_8011E770 = .rodata:0x8011E770; // type:object size:0x68 data:double +lbl_8011E7D8 = .rodata:0x8011E7D8; // type:object size:0x98 +@62 = .rodata:0x8011E870; // type:object size:0x1B scope:local data:string +lbl_8011E890 = .rodata:0x8011E890; // type:object size:0x20 +lbl_8011E8B0 = .rodata:0x8011E8B0; // type:object size:0x10 data:4byte +lbl_8011E8C0 = .rodata:0x8011E8C0; // type:object size:0x28 data:4byte +lbl_8011E8E8 = .rodata:0x8011E8E8; // type:object size:0x28 data:4byte +lbl_8011E910 = .rodata:0x8011E910; // type:object size:0x28 data:4byte +@154 = .rodata:0x8011E938; // type:object size:0x21 scope:local data:string +@155 = .rodata:0x8011E95C; // type:object size:0x24 scope:local data:string +lbl_8011E980 = .rodata:0x8011E980; // type:object size:0x40 +lbl_8011E9C0 = .rodata:0x8011E9C0; // type:object size:0x18 +lbl_8011E9D8 = .rodata:0x8011E9D8; // type:object size:0x88 +lbl_8011EA60 = .rodata:0x8011EA60; // type:object size:0x88 data:byte +lbl_8011EAE8 = .rodata:0x8011EAE8; // type:object size:0x100 +lbl_8011EC00 = .data:0x8011EC00; // type:object size:0x10 data:string +chanTbl = .data:0x8011EC10; // type:object size:0x10 scope:local +lbl_8011EC20 = .data:0x8011EC20; // type:object size:0x124 +jumptable_8011ED44 = .data:0x8011ED44; // type:object size:0x34 scope:local +lbl_8011ED78 = .data:0x8011ED78; // type:object size:0x11 data:string +lbl_8011ED89 = .data:0x8011ED89; // type:object size:0x11 data:string +lbl_8011ED9A = .data:0x8011ED9A; // type:object size:0x10 data:string +lbl_8011EDAA = .data:0x8011EDAA; // type:object size:0x10 data:string +lbl_8011EDBA = .data:0x8011EDBA; // type:object size:0x14 data:string +lbl_8011EDCE = .data:0x8011EDCE; // type:object size:0x11 data:string +lbl_8011EDDF = .data:0x8011EDDF; // type:object size:0x10 data:string +lbl_8011EDEF = .data:0x8011EDEF; // type:object size:0xF data:string +lbl_8011EDFE = .data:0x8011EDFE; // type:object size:0x10 data:string +lbl_8011EE0E = .data:0x8011EE0E; // type:object size:0x13 data:string +lbl_8011EE21 = .data:0x8011EE21; // type:object size:0xF data:string +lbl_8011EE30 = .data:0x8011EE30; // type:object size:0x13 data:string +lbl_8011EE43 = .data:0x8011EE43; // type:object size:0x13 data:string +lbl_8011EE56 = .data:0x8011EE56; // type:object size:0x12 data:string +lbl_8011EE68 = .data:0x8011EE68; // type:object size:0x10 data:string +lbl_8011EE78 = .data:0x8011EE78; // type:object size:0x14 data:string +lbl_8011EE8C = .data:0x8011EE8C; // type:object size:0x14 data:string +lbl_8011EEA0 = .data:0x8011EEA0; // type:object size:0x13 data:string +lbl_8011EEB3 = .data:0x8011EEB3; // type:object size:0x10 data:string +lbl_8011EEC3 = .data:0x8011EEC3; // type:object size:0x11 data:string +lbl_8011EED4 = .data:0x8011EED4; // type:object size:0xE data:string +lbl_8011EEE2 = .data:0x8011EEE2; // type:object size:0x12 data:string +lbl_8011EEF4 = .data:0x8011EEF4; // type:object size:0x11 data:string +lbl_8011EF05 = .data:0x8011EF05; // type:object size:0xF data:string +lbl_8011EF14 = .data:0x8011EF14; // type:object size:0x13 data:string +lbl_8011EF27 = .data:0x8011EF27; // type:object size:0x13 data:string +lbl_8011EF3A = .data:0x8011EF3A; // type:object size:0x12 data:string +lbl_8011EF4C = .data:0x8011EF4C; // type:object size:0xE data:string +lbl_8011EF5A = .data:0x8011EF5A; // type:object size:0xE data:string +lbl_8011EF68 = .data:0x8011EF68; // type:object size:0xE data:string +lbl_8011EF76 = .data:0x8011EF76; // type:object size:0xE data:string +lbl_8011EF84 = .data:0x8011EF84; // type:object size:0xE data:string +lbl_8011EF92 = .data:0x8011EF92; // type:object size:0xE data:string +lbl_8011EFA0 = .data:0x8011EFA0; // type:object size:0xE data:string +lbl_8011EFAE = .data:0x8011EFAE; // type:object size:0xE data:string +lbl_8011EFBC = .data:0x8011EFBC; // type:object size:0xE data:string +lbl_8011EFCA = .data:0x8011EFCA; // type:object size:0xE data:string +lbl_8011EFD8 = .data:0x8011EFD8; // type:object size:0xE data:string +lbl_8011EFE6 = .data:0x8011EFE6; // type:object size:0xE data:string +lbl_8011EFF4 = .data:0x8011EFF4; // type:object size:0xE data:string +lbl_8011F002 = .data:0x8011F002; // type:object size:0xE data:string +lbl_8011F010 = .data:0x8011F010; // type:object size:0xE data:string +lbl_8011F01E = .data:0x8011F01E; // type:object size:0xE data:string +lbl_8011F02C = .data:0x8011F02C; // type:object size:0xE data:string +lbl_8011F03A = .data:0x8011F03A; // type:object size:0xE data:string +lbl_8011F048 = .data:0x8011F048; // type:object size:0xE data:string +lbl_8011F056 = .data:0x8011F056; // type:object size:0xE data:string +lbl_8011F064 = .data:0x8011F064; // type:object size:0xE data:string +lbl_8011F072 = .data:0x8011F072; // type:object size:0xE data:string +lbl_8011F080 = .data:0x8011F080; // type:object size:0xE data:string +lbl_8011F08E = .data:0x8011F08E; // type:object size:0xE data:string +lbl_8011F09C = .data:0x8011F09C; // type:object size:0xE data:string +lbl_8011F0AA = .data:0x8011F0AA; // type:object size:0xE data:string +lbl_8011F0B8 = .data:0x8011F0B8; // type:object size:0xE data:string +lbl_8011F0C6 = .data:0x8011F0C6; // type:object size:0xE data:string +lbl_8011F0D4 = .data:0x8011F0D4; // type:object size:0xE data:string +lbl_8011F0E2 = .data:0x8011F0E2; // type:object size:0xE data:string +lbl_8011F0F0 = .data:0x8011F0F0; // type:object size:0xE data:string +lbl_8011F0FE = .data:0x8011F0FE; // type:object size:0xE data:string +lbl_8011F10C = .data:0x8011F10C; // type:object size:0xE data:string +lbl_8011F11A = .data:0x8011F11A; // type:object size:0xE data:string +lbl_8011F128 = .data:0x8011F128; // type:object size:0xE data:string +lbl_8011F136 = .data:0x8011F136; // type:object size:0xE data:string +lbl_8011F144 = .data:0x8011F144; // type:object size:0xE data:string +lbl_8011F152 = .data:0x8011F152; // type:object size:0xE data:string +lbl_8011F160 = .data:0x8011F160; // type:object size:0xE data:string +lbl_8011F16E = .data:0x8011F16E; // type:object size:0xE data:string +lbl_8011F17C = .data:0x8011F17C; // type:object size:0xE data:string +lbl_8011F18A = .data:0x8011F18A; // type:object size:0xE data:string +lbl_8011F198 = .data:0x8011F198; // type:object size:0xE data:string +lbl_8011F1A6 = .data:0x8011F1A6; // type:object size:0xE data:string +lbl_8011F1B4 = .data:0x8011F1B4; // type:object size:0xE data:string +lbl_8011F1C2 = .data:0x8011F1C2; // type:object size:0xE data:string +lbl_8011F1D0 = .data:0x8011F1D0; // type:object size:0xE data:string +lbl_8011F1DE = .data:0x8011F1DE; // type:object size:0xE data:string +lbl_8011F1EC = .data:0x8011F1EC; // type:object size:0xE data:string +lbl_8011F1FA = .data:0x8011F1FA; // type:object size:0xE data:string +lbl_8011F208 = .data:0x8011F208; // type:object size:0xE data:string +lbl_8011F216 = .data:0x8011F216; // type:object size:0xE data:string +lbl_8011F224 = .data:0x8011F224; // type:object size:0xE data:string +lbl_8011F232 = .data:0x8011F232; // type:object size:0xE data:string +lbl_8011F240 = .data:0x8011F240; // type:object size:0xE data:string +lbl_8011F24E = .data:0x8011F24E; // type:object size:0xE data:string +lbl_8011F25C = .data:0x8011F25C; // type:object size:0xE data:string +lbl_8011F26A = .data:0x8011F26A; // type:object size:0xE data:string +lbl_8011F278 = .data:0x8011F278; // type:object size:0xE data:string +lbl_8011F286 = .data:0x8011F286; // type:object size:0xE data:string +lbl_8011F294 = .data:0x8011F294; // type:object size:0xE data:string +lbl_8011F2A2 = .data:0x8011F2A2; // type:object size:0xE data:string +lbl_8011F2B0 = .data:0x8011F2B0; // type:object size:0xE data:string +lbl_8011F2BE = .data:0x8011F2BE; // type:object size:0xE data:string +lbl_8011F2CC = .data:0x8011F2CC; // type:object size:0xE data:string +lbl_8011F2DA = .data:0x8011F2DA; // type:object size:0xF data:string +lbl_8011F2E9 = .data:0x8011F2E9; // type:object size:0x13 data:string +lbl_8011F2FC = .data:0x8011F2FC; // type:object size:0x13 data:string +lbl_8011F30F = .data:0x8011F30F; // type:object size:0x12 data:string +lbl_8011F321 = .data:0x8011F321; // type:object size:0xE data:string +lbl_8011F32F = .data:0x8011F32F; // type:object size:0x11 data:string +lbl_8011F340 = .data:0x8011F340; // type:object size:0x10 data:string +lbl_8011F350 = .data:0x8011F350; // type:object size:0x11 data:string +lbl_8011F361 = .data:0x8011F361; // type:object size:0xE data:string +lbl_8011F36F = .data:0x8011F36F; // type:object size:0x10 data:string +lbl_8011F37F = .data:0x8011F37F; // type:object size:0x11 data:string +lbl_8011F390 = .data:0x8011F390; // type:object size:0x11 data:string +lbl_8011F3A1 = .data:0x8011F3A1; // type:object size:0x11 data:string +lbl_8011F3B2 = .data:0x8011F3B2; // type:object size:0x10 data:string +lbl_8011F3C2 = .data:0x8011F3C2; // type:object size:0xF data:string +lbl_8011F3D1 = .data:0x8011F3D1; // type:object size:0x13 data:string +lbl_8011F3E4 = .data:0x8011F3E4; // type:object size:0x13 data:string +lbl_8011F3F7 = .data:0x8011F3F7; // type:object size:0x12 data:string +lbl_8011F409 = .data:0x8011F409; // type:object size:0x11 data:string +lbl_8011F41A = .data:0x8011F41A; // type:object size:0x10 data:string +lbl_8011F42A = .data:0x8011F42A; // type:object size:0xD data:string +lbl_8011F437 = .data:0x8011F437; // type:object size:0x11 data:string +lbl_8011F448 = .data:0x8011F448; // type:object size:0xF data:string +lbl_8011F457 = .data:0x8011F457; // type:object size:0xF data:string +lbl_8011F466 = .data:0x8011F466; // type:object size:0xF data:string +lbl_8011F475 = .data:0x8011F475; // type:object size:0xD data:string +lbl_8011F482 = .data:0x8011F482; // type:object size:0xD data:string +lbl_8011F48F = .data:0x8011F48F; // type:object size:0xD data:string +lbl_8011F49C = .data:0x8011F49C; // type:object size:0xD data:string +lbl_8011F4A9 = .data:0x8011F4A9; // type:object size:0xD data:string +lbl_8011F4B6 = .data:0x8011F4B6; // type:object size:0xD data:string +lbl_8011F4C3 = .data:0x8011F4C3; // type:object size:0xD data:string +lbl_8011F4D0 = .data:0x8011F4D0; // type:object size:0xD data:string +lbl_8011F4DD = .data:0x8011F4DD; // type:object size:0xD data:string +lbl_8011F4EA = .data:0x8011F4EA; // type:object size:0x11 data:string +lbl_8011F4FB = .data:0x8011F4FB; // type:object size:0x15 data:string +lbl_8011F510 = .data:0x8011F510; // type:object size:0x15 data:string +lbl_8011F525 = .data:0x8011F525; // type:object size:0x14 data:string +lbl_8011F539 = .data:0x8011F539; // type:object size:0xF data:string +lbl_8011F548 = .data:0x8011F548; // type:object size:0x13 data:string +lbl_8011F55B = .data:0x8011F55B; // type:object size:0x13 data:string +lbl_8011F56E = .data:0x8011F56E; // type:object size:0x12 data:string +lbl_8011F580 = .data:0x8011F580; // type:object size:0xD data:string +lbl_8011F58D = .data:0x8011F58D; // type:object size:0xF data:string +lbl_8011F59C = .data:0x8011F59C; // type:object size:0x13 data:string +lbl_8011F5AF = .data:0x8011F5AF; // type:object size:0x13 data:string +lbl_8011F5C2 = .data:0x8011F5C2; // type:object size:0x12 data:string +lbl_8011F5D4 = .data:0x8011F5D4; // type:object size:0xE data:string +DataDirStat = .data:0x8011F5E4; // type:object size:0x468 scope:local data:4byte +lbl_8011FA4C = .data:0x8011FA4C; // type:object size:0x1D data:string +lbl_8011FA69 = .data:0x8011FA69; // type:object size:0x1F data:string +lbl_8011FA88 = .data:0x8011FA88; // type:object size:0x3C +lbl_8011FAC4 = .data:0x8011FAC4; // type:object size:0x1A data:string +lbl_8011FADE = .data:0x8011FADE; // type:object size:0x122 +lbl_8011FC00 = .data:0x8011FC00; // type:object size:0x20 +ank8x8_4b = .data:0x8011FC20; // type:object size:0x2000 align:32 +lbl_80121C20 = .data:0x80121C20; // type:object size:0x150 +HeapSizeTbl = .data:0x80121D70; // type:object size:0x78 scope:local +lbl_80121DE8 = .data:0x80121DE8; // type:object size:0x50 +lbl_80121E38 = .data:0x80121E38; // type:object size:0x128 +fcoltbl = .data:0x80121F60; // type:object size:0x40 scope:local align:32 +lbl_80121FA0 = .data:0x80121FA0; // type:object size:0x1F data:string +lbl_80121FBF = .data:0x80121FBF; // type:object size:0x31 +lbl_80121FF0 = .data:0x80121FF0; // type:object size:0x12 +bitSizeTbl = .data:0x80122002; // type:object size:0x16 scope:local +lbl_80122018 = .data:0x80122018; // type:object size:0xF8 +jumptable_80122110 = .data:0x80122110; // type:object size:0x2C scope:local +jumptable_80122140 = .data:0x80122140; // type:object size:0x28 scope:local +jumptable_80122168 = .data:0x80122168; // type:object size:0x2C scope:local +lbl_80122194 = .data:0x80122194; // type:object size:0x18 data:string +texMtxTbl = .data:0x801221B0; // type:object size:0xC data:byte +jumptable_801221BC = .data:0x801221BC; // type:object size:0x28 scope:local +lbl_801221E4 = .data:0x801221E4; // type:object size:0x18 data:string +jumptable_801221FC = .data:0x801221FC; // type:object size:0x28 scope:local +jumptable_80122224 = .data:0x80122224; // type:object size:0x28 scope:local +refMtx = .data:0x8012224C; // type:object size:0x30 scope:local +kColorSelTbl = .data:0x8012227C; // type:object size:0x30 scope:local +kColorTbl = .data:0x801222AC; // type:object size:0x10 scope:local +kColorSelTbl2 = .data:0x801222BC; // type:object size:0x10 scope:local +kColorSelATbl = .data:0x801222CC; // type:object size:0x10 scope:local +lbl_801222DC = .data:0x801222DC; // type:object size:0x14 +jumptable_801222F0 = .data:0x801222F0; // type:object size:0x30 scope:local +jumptable_80122320 = .data:0x80122320; // type:object size:0x28 scope:local +jumptable_80122348 = .data:0x80122348; // type:object size:0x28 scope:local +lbl_80122370 = .data:0x80122370; // type:object size:0x19 data:string +lbl_80122389 = .data:0x80122389; // type:object size:0xA data:string +lbl_80122393 = .data:0x80122393; // type:object size:0x2D +refMapData0 = .data:0x801223C0; // type:object size:0x1240 align:32 noreloc +refMapData1 = .data:0x80123600; // type:object size:0x1100 align:32 noreloc +refMapData2 = .data:0x80124700; // type:object size:0x2080 align:32 noreloc +refMapData3 = .data:0x80126780; // type:object size:0x2080 align:32 noreloc +refMapData4 = .data:0x80128800; // type:object size:0x2080 align:32 noreloc +toonMapData = .data:0x8012A880; // type:object size:0x880 align:32 noreloc +toonMapData2 = .data:0x8012B100; // type:object size:0x1080 align:32 noreloc +hiliteData = .data:0x8012C180; // type:object size:0x480 align:32 noreloc +hiliteData2 = .data:0x8012C600; // type:object size:0x480 align:32 noreloc +hiliteData3 = .data:0x8012CA80; // type:object size:0x480 align:32 noreloc +hiliteData4 = .data:0x8012CF00; // type:object size:0x480 align:32 noreloc +lbl_8012D380 = .data:0x8012D380; // type:object size:0x1B data:string +lbl_8012D39B = .data:0x8012D39B; // type:object size:0x16 data:string +lbl_8012D3B1 = .data:0x8012D3B1; // type:object size:0x21 data:string +lbl_8012D3D2 = .data:0x8012D3D2; // type:object size:0x26 +defCamera = .data:0x8012D3F8; // type:object size:0x58 data:4byte +lbl_8012D450 = .data:0x8012D450; // type:object size:0x28 +lbl_8012D478 = .data:0x8012D478; // type:object size:0x1C data:string +lbl_8012D494 = .data:0x8012D494; // type:object size:0x1C +jumptable_8012D4B0 = .data:0x8012D4B0; // type:object size:0x2C scope:local +jumptable_8012D4DC = .data:0x8012D4DC; // type:object size:0x68 scope:local +jumptable_8012D544 = .data:0x8012D544; // type:object size:0xF0 scope:local +jumptable_8012D634 = .data:0x8012D634; // type:object size:0x20 scope:local +lbl_8012D658 = .data:0x8012D658; // type:object size:0x15 data:string +lbl_8012D66D = .data:0x8012D66D; // type:object size:0x1F data:string +lbl_8012D68C = .data:0x8012D68C; // type:object size:0x18 +basePos = .data:0x8012D6A4; // type:object size:0x30 scope:local +baseST = .data:0x8012D6D4; // type:object size:0x20 scope:local +jitterTbl = .data:0x8012D6F4; // type:object size:0x24 scope:local +jumptable_8012D718 = .data:0x8012D718; // type:object size:0x1C scope:local +lbl_8012D738 = .data:0x8012D738; // type:object size:0xCA +lbl_8012D802 = .data:0x8012D802; // type:object size:0x1C data:string +lbl_8012D81E = .data:0x8012D81E; // type:object size:0x1C data:string +lbl_8012D83A = .data:0x8012D83A; // type:object size:0x1D data:string +lbl_8012D857 = .data:0x8012D857; // type:object size:0x18 data:string +lbl_8012D86F = .data:0x8012D86F; // type:object size:0xC data:string +lbl_8012D87B = .data:0x8012D87B; // type:object size:0x45 +lbl_8012D8C0 = .data:0x8012D8C0; // type:object size:0x45 +lbl_8012D905 = .data:0x8012D905; // type:object size:0x19 data:string +lbl_8012D91E = .data:0x8012D91E; // type:object size:0x17 data:string +lbl_8012D935 = .data:0x8012D935; // type:object size:0x1B3 +XFB_Colors = .data:0x8012DAE8; // type:object size:0xF scope:local data:byte +Ascii8x8_1bpp = .data:0x8012DAF7; // type:object size:0x800 scope:local align:1 +lbl_8012E2F7 = .data:0x8012E2F7; // type:object size:0x19 +lbl_8012E310 = .data:0x8012E310; // type:object size:0x21A +lbl_8012E52A = .data:0x8012E52A; // type:object size:0xB data:string +lbl_8012E535 = .data:0x8012E535; // type:object size:0x273 +lbl_8012E7A8 = .data:0x8012E7A8; // type:object size:0x12 data:string +lbl_8012E7BA = .data:0x8012E7BA; // type:object size:0xD6 +sndGrpTable = .data:0x8012E890; // type:object size:0x5B0 +lbl_8012EE40 = .data:0x8012EE40; // type:object size:0x94 +lbl_8012EED4 = .data:0x8012EED4; // type:object size:0x11 data:string +lbl_8012EEE5 = .data:0x8012EEE5; // type:object size:0x3A +lbl_8012EF1F = .data:0x8012EF1F; // type:object size:0x31 +seqInfoTbl = .data:0x8012EF50; // type:object size:0x1DC scope:local +seqType2SprTbl = .data:0x8012F12C; // type:object size:0x18 scope:local +mgSeqTypeTbl = .data:0x8012F144; // type:object size:0x12 scope:local +lbl_8012F156 = .data:0x8012F156; // type:object size:0x53 scope:local data:string +lbl_8012F1A2 = .data:0x8012F1A9; // type:object size:0x9 scope:local data:string +lbl_8012F1B2 = .data:0x8012F1B2; // type:object size:0x9 scope:local data:string +seqFontAlphaTbl = .data:0x8012F1BB; // type:object size:0x35 scope:local data:string +seqFontKanaTbl = .data:0x8012F1F0; // type:object size:0x52 scope:local +seqFontNumTbl = .data:0x8012F242; // type:object size:0xB scope:local data:string +letterBufTbl = .data:0x8012F250; // type:object size:0x14 scope:local +wordMgTbl = .data:0x8012F264; // type:object size:0x18 scope:local +letterOfs$1002 = .data:0x8012F27C; // type:object size:0x40 +letterOfs$1479 = .data:0x8012F2BC; // type:object size:0x1C +letterOfs$1853 = .data:0x8012F2D8; // type:object size:0x38 +lbl_8012F310 = .data:0x8012F310; // type:object size:0xC data:string +winCharNameTbl = .data:0x8012F31C; // type:object size:0x78 scope:local +lbl_8012F394 = .data:0x8012F394; // type:object size:0xC +winWordTbl = .data:0x8012F3A0; // type:object size:0x18 scope:local +winPosOfs = .data:0x8012F3B8; // type:object size:0x50 scope:local +practiceTbl = .data:0x8012F408; // type:object size:0xAC scope:local +yPosTbl$2458 = .data:0x8012F4B4; // type:object size:0xC scope:local +seqStartFXTbl = .data:0x8012F4C0; // type:object size:0xEC scope:local +lbl_8012F5B0 = .data:0x8012F5B0; // type:object size:0x15 data:string +lbl_8012F5C5 = .data:0x8012F5C5; // type:object size:0x10 data:string +lbl_8012F5D5 = .data:0x8012F5D5; // type:object size:0x13 data:string +lbl_8012F5E8 = .data:0x8012F5E8; // type:object size:0x10 data:string +lbl_8012F5F8 = .data:0x8012F5F8; // type:object size:0x10 data:string +lbl_8012F608 = .data:0x8012F608; // type:object size:0x10 data:string +lbl_8012F618 = .data:0x8012F618; // type:object size:0x10 data:string +lbl_8012F628 = .data:0x8012F628; // type:object size:0x10 data:string +lbl_8012F638 = .data:0x8012F638; // type:object size:0x10 data:string +lbl_8012F648 = .data:0x8012F648; // type:object size:0x10 data:string +lbl_8012F658 = .data:0x8012F658; // type:object size:0x10 data:string +lbl_8012F668 = .data:0x8012F668; // type:object size:0x10 data:string +lbl_8012F678 = .data:0x8012F678; // type:object size:0x10 data:string +lbl_8012F688 = .data:0x8012F688; // type:object size:0x10 data:string +lbl_8012F698 = .data:0x8012F698; // type:object size:0x10 data:string +lbl_8012F6A8 = .data:0x8012F6A8; // type:object size:0x10 data:string +lbl_8012F6B8 = .data:0x8012F6B8; // type:object size:0x10 data:string +lbl_8012F6C8 = .data:0x8012F6C8; // type:object size:0x10 data:string +lbl_8012F6D8 = .data:0x8012F6D8; // type:object size:0x10 data:string +lbl_8012F6E8 = .data:0x8012F6E8; // type:object size:0x10 data:string +lbl_8012F6F8 = .data:0x8012F6F8; // type:object size:0x10 data:string +lbl_8012F708 = .data:0x8012F708; // type:object size:0x10 data:string +lbl_8012F718 = .data:0x8012F718; // type:object size:0x10 data:string +lbl_8012F728 = .data:0x8012F728; // type:object size:0x10 data:string +lbl_8012F738 = .data:0x8012F738; // type:object size:0x10 data:string +lbl_8012F748 = .data:0x8012F748; // type:object size:0x10 data:string +lbl_8012F758 = .data:0x8012F758; // type:object size:0x10 data:string +lbl_8012F768 = .data:0x8012F768; // type:object size:0x10 data:string +lbl_8012F778 = .data:0x8012F778; // type:object size:0x10 data:string +lbl_8012F788 = .data:0x8012F788; // type:object size:0x10 data:string +lbl_8012F798 = .data:0x8012F798; // type:object size:0x10 data:string +lbl_8012F7A8 = .data:0x8012F7A8; // type:object size:0x10 data:string +lbl_8012F7B8 = .data:0x8012F7B8; // type:object size:0x10 data:string +lbl_8012F7C8 = .data:0x8012F7C8; // type:object size:0x10 data:string +lbl_8012F7D8 = .data:0x8012F7D8; // type:object size:0x10 data:string +lbl_8012F7E8 = .data:0x8012F7E8; // type:object size:0x10 data:string +lbl_8012F7F8 = .data:0x8012F7F8; // type:object size:0x10 data:string +lbl_8012F808 = .data:0x8012F808; // type:object size:0x10 data:string +lbl_8012F818 = .data:0x8012F818; // type:object size:0x10 data:string +lbl_8012F828 = .data:0x8012F828; // type:object size:0x10 data:string +lbl_8012F838 = .data:0x8012F838; // type:object size:0x10 data:string +lbl_8012F848 = .data:0x8012F848; // type:object size:0x10 data:string +lbl_8012F858 = .data:0x8012F858; // type:object size:0x10 data:string +lbl_8012F868 = .data:0x8012F868; // type:object size:0x10 data:string +lbl_8012F878 = .data:0x8012F878; // type:object size:0x10 data:string +lbl_8012F888 = .data:0x8012F888; // type:object size:0x10 data:string +lbl_8012F898 = .data:0x8012F898; // type:object size:0x10 data:string +lbl_8012F8A8 = .data:0x8012F8A8; // type:object size:0x10 data:string +lbl_8012F8B8 = .data:0x8012F8B8; // type:object size:0x10 data:string +lbl_8012F8C8 = .data:0x8012F8C8; // type:object size:0x10 data:string +lbl_8012F8D8 = .data:0x8012F8D8; // type:object size:0x10 data:string +lbl_8012F8E8 = .data:0x8012F8E8; // type:object size:0x10 data:string +lbl_8012F8F8 = .data:0x8012F8F8; // type:object size:0x10 data:string +lbl_8012F908 = .data:0x8012F908; // type:object size:0x10 data:string +lbl_8012F918 = .data:0x8012F918; // type:object size:0x10 data:string +lbl_8012F928 = .data:0x8012F928; // type:object size:0x10 data:string +lbl_8012F938 = .data:0x8012F938; // type:object size:0x10 data:string +lbl_8012F948 = .data:0x8012F948; // type:object size:0x10 data:string +lbl_8012F958 = .data:0x8012F958; // type:object size:0x10 data:string +lbl_8012F968 = .data:0x8012F968; // type:object size:0x10 data:string +lbl_8012F978 = .data:0x8012F978; // type:object size:0x10 data:string +lbl_8012F988 = .data:0x8012F988; // type:object size:0x10 data:string +lbl_8012F998 = .data:0x8012F998; // type:object size:0x10 data:string +lbl_8012F9A8 = .data:0x8012F9A8; // type:object size:0x10 data:string +lbl_8012F9B8 = .data:0x8012F9B8; // type:object size:0x10 data:string +lbl_8012F9C8 = .data:0x8012F9C8; // type:object size:0x10 data:string +lbl_8012F9D8 = .data:0x8012F9D8; // type:object size:0x10 data:string +lbl_8012F9E8 = .data:0x8012F9E8; // type:object size:0x10 data:string +lbl_8012F9F8 = .data:0x8012F9F8; // type:object size:0x10 data:string +lbl_8012FA08 = .data:0x8012FA08; // type:object size:0x10 data:string +lbl_8012FA18 = .data:0x8012FA18; // type:object size:0x10 data:string +lbl_8012FA28 = .data:0x8012FA28; // type:object size:0x10 data:string +lbl_8012FA38 = .data:0x8012FA38; // type:object size:0x12 data:string +lbl_8012FA4A = .data:0x8012FA4A; // type:object size:0x15 data:string +lbl_8012FA5F = .data:0x8012FA5F; // type:object size:0x13 data:string +lbl_8012FA72 = .data:0x8012FA72; // type:object size:0x10 data:string +lbl_8012FA82 = .data:0x8012FA82; // type:object size:0x12 data:string +lbl_8012FA94 = .data:0x8012FA94; // type:object size:0x13 data:string +lbl_8012FAA7 = .data:0x8012FAA7; // type:object size:0x13 data:string +lbl_8012FABA = .data:0x8012FABA; // type:object size:0x13 data:string +lbl_8012FACD = .data:0x8012FACD; // type:object size:0x12 data:string +lbl_8012FADF = .data:0x8012FADF; // type:object size:0xF data:string +lbl_8012FAEE = .data:0x8012FAEE; // type:object size:0xF data:string +lbl_8012FAFD = .data:0x8012FAFD; // type:object size:0x10 data:string +lbl_8012FB0D = .data:0x8012FB0D; // type:object size:0x12 data:string +lbl_8012FB1F = .data:0x8012FB1F; // type:object size:0xF data:string +lbl_8012FB2E = .data:0x8012FB2E; // type:object size:0x13 data:string +lbl_8012FB41 = .data:0x8012FB41; // type:object size:0x11 data:string +lbl_8012FB52 = .data:0x8012FB52; // type:object size:0x15 data:string +lbl_8012FB67 = .data:0x8012FB67; // type:object size:0xF data:string +lbl_8012FB76 = .data:0x8012FB76; // type:object size:0xF data:string +lbl_8012FB85 = .data:0x8012FB85; // type:object size:0xF data:string +lbl_8012FB94 = .data:0x8012FB94; // type:object size:0xF data:string +lbl_8012FBA3 = .data:0x8012FBA3; // type:object size:0xF data:string +lbl_8012FBB2 = .data:0x8012FBB2; // type:object size:0xF data:string +lbl_8012FBC1 = .data:0x8012FBC1; // type:object size:0xF data:string +lbl_8012FBD0 = .data:0x8012FBD0; // type:object size:0xF data:string +lbl_8012FBDF = .data:0x8012FBDF; // type:object size:0xF data:string +lbl_8012FBEE = .data:0x8012FBEE; // type:object size:0x12 +_ovltbl = .data:0x8012FC00; // type:object size:0x320 +lbl_8012FF20 = .data:0x8012FF20; // type:object size:0x20 +fadeInFunc = .data:0x8012FF40; // type:object size:0xC scope:local +fadeOutFunc = .data:0x8012FF4C; // type:object size:0xC scope:local +spcFontTbl = .data:0x8012FF60; // type:object size:0x170 scope:local +charWETbl = .data:0x801300D0; // type:object size:0x130 +charWJTbl = .data:0x80130200; // type:object size:0x140 +charColPal = .data:0x80130340; // type:object size:0x3C scope:local align:32 +frameFileTbl = .data:0x8013037C; // type:object size:0x10 scope:local +lbl_8013038C = .data:0x8013038C; // type:object size:0xE data:string +lbl_8013039A = .data:0x8013039A; // type:object size:0xF data:string +lbl_801303A9 = .data:0x801303A9; // type:object size:0x10 data:string +lbl_801303B9 = .data:0x801303B9; // type:object size:0x11 data:string +lbl_801303CA = .data:0x801303CA; // type:object size:0x10 data:string +lbl_801303DA = .data:0x801303DA; // type:object size:0x11 data:string +lbl_801303EB = .data:0x801303EB; // type:object size:0x10 data:string +lbl_801303FB = .data:0x801303FB; // type:object size:0x11 data:string +lbl_8013040C = .data:0x8013040C; // type:object size:0x10 data:string +lbl_8013041C = .data:0x8013041C; // type:object size:0x11 data:string +lbl_8013042D = .data:0x8013042D; // type:object size:0x10 data:string +lbl_8013043D = .data:0x8013043D; // type:object size:0x13 +mesDataTbl = .data:0x80130450; // type:object size:0x30 scope:local +winVoiceTbl = .data:0x80130480; // type:object size:0x54 scope:local +lbl_801304D4 = .data:0x801304D4; // type:object size:0x13 data:string +lbl_801304E7 = .data:0x801304E7; // type:object size:0x19 +winPortraitTbl = .data:0x80130500; // type:object size:0x50 scope:local +lbl_80130550 = .data:0x80130550; // type:object size:0x26 data:string +lbl_80130576 = .data:0x80130576; // type:object size:0x2A +lbl_801305A0 = .data:0x801305A0; // type:object size:0x19 data:string +lbl_801305B9 = .data:0x801305B9; // type:object size:0x14 data:string +lbl_801305CD = .data:0x801305CD; // type:object size:0x93 +lbl_80130660 = .data:0x80130660; // type:object size:0x30 +effectDataTbl = .data:0x80130690; // type:object size:0x60 scope:local +charDirTbl = .data:0x801306F0; // type:object size:0x60 scope:local +effectDustParam = .data:0x80130750; // type:object size:0x38 scope:local +effectDotParam = .data:0x80130788; // type:object size:0x38 scope:local +effectStarParam = .data:0x801307C0; // type:object size:0x38 scope:local +effectWarnParam = .data:0x801307F8; // type:object size:0x38 scope:local +effectSmokeParam = .data:0x80130830; // type:object size:0x38 scope:local +lbl_801309A0 = .data:0x80130868; // type:object size:0x20 scope:local +lbl_801309C0 = .data:0x80130888; // type:object size:0x20 scope:local +lbl_801309E0 = .data:0x801308A8; // type:object size:0x10 scope:local +jumptable_801308B8 = .data:0x801308B8; // type:object size:0x1E8 scope:local +voiceParam = .data:0x80130AA0; // type:object size:0x40 scope:local +lbl_80130AE0 = .data:0x80130AE0; // type:object size:0xE data:string +lbl_80130AEE = .data:0x80130AEE; // type:object size:0xE data:string +lbl_80130AFC = .data:0x80130AFC; // type:object size:0xE data:string +lbl_80130B0A = .data:0x80130B0A; // type:object size:0xD data:string +lbl_80130B17 = .data:0x80130B17; // type:object size:0xD data:string +lbl_80130B24 = .data:0x80130B24; // type:object size:0xB data:string +lbl_80130B2F = .data:0x80130B2F; // type:object size:0xF data:string +lbl_80130B3E = .data:0x80130B3E; // type:object size:0xF data:string +lbl_80130B4D = .data:0x80130B4D; // type:object size:0xF data:string +lbl_80130B5C = .data:0x80130B5C; // type:object size:0xF data:string +lbl_80130B6B = .data:0x80130B6B; // type:object size:0xF data:string +lbl_80130B7A = .data:0x80130B7A; // type:object size:0xF data:string +lbl_80130B89 = .data:0x80130B89; // type:object size:0x9 data:string +lbl_80130B92 = .data:0x80130B92; // type:object size:0xD data:string +lbl_80130B9F = .data:0x80130B9F; // type:object size:0x17 data:string +lbl_80130BB6 = .data:0x80130BB6; // type:object size:0x17 data:string +lbl_80130BCD = .data:0x80130BCD; // type:object size:0xE data:string +lbl_80130BDB = .data:0x80130BDB; // type:object size:0xE data:string +lbl_80130BE9 = .data:0x80130BE9; // type:object size:0xD data:string +lbl_80130BF6 = .data:0x80130BF6; // type:object size:0xE data:string +lbl_80130C04 = .data:0x80130C04; // type:object size:0xE data:string +lbl_80130C12 = .data:0x80130C12; // type:object size:0xF data:string +lbl_80130C21 = .data:0x80130C21; // type:object size:0xF data:string +lbl_80130C30 = .data:0x80130C30; // type:object size:0x18 data:string +lbl_80130C48 = .data:0x80130C48; // type:object size:0x18 data:string +lbl_80130C60 = .data:0x80130C60; // type:object size:0xE data:string +lbl_80130C6E = .data:0x80130C6E; // type:object size:0x18 data:string +lbl_80130C86 = .data:0x80130C86; // type:object size:0x1A +charTexNameTbl = .data:0x80130CA0; // type:object size:0x100 +lbl_80130DA0 = .data:0x80130DA0; // type:object size:0xD data:string +lbl_80130DAD = .data:0x80130DAD; // type:object size:0xD data:string +lbl_80130DBA = .data:0x80130DBA; // type:object size:0xE data:string +lbl_80130DC8 = .data:0x80130DC8; // type:object size:0xE data:string +lbl_80130DD6 = .data:0x80130DD6; // type:object size:0x12 +hookNameTbl = .data:0x80130DE8; // type:object size:0xA0 scope:local +modelParticleParam = .data:0x80130E88; // type:object size:0x38 scope:local +coinParticleParam = .data:0x80130EC0; // type:object size:0x38 +lbl_80130EF8 = .data:0x80130EF8; // type:object size:0x38 scope:local +lbl_80130F30 = .data:0x80130F30; // type:object size:0x38 scope:local +lbl_80130F68 = .data:0x80130F68; // type:object size:0x1C +lbl_80130F84 = .data:0x80130F84; // type:object size:0x38 +lbl_80130FBC = .data:0x80130FBC; // type:object size:0x38 +lbl_80130FF4 = .data:0x80130FF4; // type:object size:0xBC +VolumeTable = .data:0x801310B0; // type:object size:0x100 scope:local +lbl_801311B0 = .data:0x801311B0; // type:object size:0x4D +lbl_801311FD = .data:0x801311FD; // type:object size:0x1B +mgInfoTbl = .data:0x80131218; // type:object size:0xE00 data:2byte +commentTbl = .data:0x80132018; // type:object size:0x40 scope:local +lbl_80132058 = .data:0x80132058; // type:object size:0xC data:string +lbl_80132064 = .data:0x80132064; // type:object size:0xC data:string +lbl_80132070 = .data:0x80132070; // type:object size:0xC data:string +SaveFileNameTbl = .data:0x8013207C; // type:object size:0xC +jumptable_80132088 = .data:0x80132088; // type:object size:0x34 scope:local +SR_PreRstChk = .data:0x801320C0; // type:object size:0x10 scope:local +coveropen_en = .data:0x801320D0; // type:object size:0x1384 noreloc +fatalerror_en = .data:0x80133454; // type:object size:0x1384 noreloc +loading_en = .data:0x801347D8; // type:object size:0x1384 noreloc +nodisc_en = .data:0x80135B5C; // type:object size:0x1384 noreloc +retryerror_en = .data:0x80136EE0; // type:object size:0x1384 noreloc +wrongdisc_en = .data:0x80138264; // type:object size:0x1384 noreloc +coveropen_fr = .data:0x801395E8; // type:object size:0x1384 noreloc +fatalerror_fr = .data:0x8013A96C; // type:object size:0x1384 noreloc +loading_fr = .data:0x8013BCF0; // type:object size:0x1384 noreloc +nodisc_fr = .data:0x8013D074; // type:object size:0x1384 noreloc +retryerror_fr = .data:0x8013E3F8; // type:object size:0x1384 noreloc +wrongdisc_fr = .data:0x8013F77C; // type:object size:0x1384 noreloc +coveropen_ge = .data:0x80140B00; // type:object size:0x1384 noreloc +fatalerror_ge = .data:0x80141E84; // type:object size:0x1384 noreloc +loading_ge = .data:0x80143208; // type:object size:0x1384 noreloc +nodisc_ge = .data:0x8014458C; // type:object size:0x1384 noreloc +retryerror_ge = .data:0x80145910; // type:object size:0x1384 noreloc +wrongdisc_ge = .data:0x80146C94; // type:object size:0x1384 noreloc +coveropen_it = .data:0x80148018; // type:object size:0x1384 noreloc +fatalerror_it = .data:0x8014939C; // type:object size:0x1384 noreloc +loading_it = .data:0x8014A720; // type:object size:0x1384 noreloc +nodisc_it = .data:0x8014BAA4; // type:object size:0x1384 noreloc +retryerror_it = .data:0x8014CE28; // type:object size:0x1384 noreloc +wrongdisc_it = .data:0x8014E1AC; // type:object size:0x1384 noreloc +coveropen_sp = .data:0x8014F530; // type:object size:0x1384 noreloc +fatalerror_sp = .data:0x801508B4; // type:object size:0x1384 noreloc +loading_sp = .data:0x80151C38; // type:object size:0x1384 noreloc +nodisc_sp = .data:0x80152FBC; // type:object size:0x1384 noreloc +retryerror_sp = .data:0x80154340; // type:object size:0x1384 noreloc +wrongdisc_sp = .data:0x801556C4; // type:object size:0x1384 noreloc +jumptable_80156A48 = .data:0x80156A48; // type:object size:0x34 scope:local +bmpMes$493 = .data:0x80156A7C; // type:object size:0x78 scope:local +lbl_80156AF4 = .data:0x80156AF4; // type:object size:0x13 data:string +lbl_80156B07 = .data:0x80156B07; // type:object size:0x12 data:string +camViewTbl = .data:0x80156B20; // type:object size:0x24 scope:local +jumptable_80156B44 = .data:0x80156B44; // type:object size:0x24 scope:local +confettiLightTbl = .data:0x80156B68; // type:object size:0x48 scope:local +last5GfxSprTbl = .data:0x80156BB0; // type:object size:0xC scope:local +last5GfxPosTbl = .data:0x80156BBC; // type:object size:0x30 scope:local +tauntActiveFXTbl = .data:0x80156BEC; // type:object size:0x10 scope:local +tauntFXTbl = .data:0x80156BFC; // type:object size:0x20 scope:local +diceJumpObj = .data:0x80156C20; // type:object size:0x10 scope:local +motDoneF = .data:0x80156C30; // type:object size:0x10 scope:local +bowserSuitMot = .data:0x80156C40; // type:object size:0xA scope:local data:2byte +lbl_80156C4A = .data:0x80156C4A; // type:object size:0x17 data:string +lbl_80156C61 = .data:0x80156C61; // type:object size:0x17 data:string +lbl_80156C78 = .data:0x80156C78; // type:object size:0xE data:string +lbl_80156C86 = .data:0x80156C86; // type:object size:0xE data:string +lbl_80156C94 = .data:0x80156C94; // type:object size:0x18 data:string +lbl_80156CAC = .data:0x80156CAC; // type:object size:0x18 data:string +eyeMatTbl = .data:0x80156CC4; // type:object size:0x40 scope:local +lbl_80156D04 = .data:0x80156D04; // type:object size:0x20 +boardMotTbl = .data:0x80156D24; // type:object size:0x20 scope:local +boardMotRevTbl = .data:0x80156D44; // type:object size:0x20 scope:local +bowserSuitCharMdlTbl = .data:0x80156D64; // type:object size:0x20 scope:local +bowserSuitMotTbl = .data:0x80156D84; // type:object size:0x14 scope:local +sparkMotTbl = .data:0x80156D98; // type:object size:0x20 scope:local +boardSparkSfxTbl = .data:0x80156DB8; // type:object size:0x20 scope:local +boardSparkSfxTblAlt = .data:0x80156DD8; // type:object size:0x20 scope:local +megaSquishObj = .data:0x80156DF8; // type:object size:0x10 scope:local +megaSquishSfxTbl = .data:0x80156E08; // type:object size:0x20 scope:local +PortraitTbl = .data:0x80156E28; // type:object size:0x24 scope:local +StarPortraitTbl = .data:0x80156E4C; // type:object size:0x24 scope:local +boardMusTbl = .data:0x80156E70; // type:object size:0x18 scope:local +comItemPreferTbl = .data:0x80156E88; // type:object size:0x60 scope:local +comItemUseCheckFuncTbl = .data:0x80156EE8; // type:object size:0x38 scope:local +comJunctionDirTbl = .data:0x80156F20; // type:object size:0x30 scope:local +overhead2DPos = .data:0x80156F50; // type:object size:0x28 scope:local +mapViewMinZ = .data:0x80156F78; // type:object size:0x24 scope:local +mapViewMaxZ = .data:0x80156F9C; // type:object size:0x24 scope:local +mapViewMinX = .data:0x80156FC0; // type:object size:0x24 scope:local +mapViewMaxX = .data:0x80156FE4; // type:object size:0x24 scope:local +overheadCamZoom = .data:0x80157008; // type:object size:0x24 scope:local +overheadCamPosZ = .data:0x8015702C; // type:object size:0x24 scope:local +spaceImgIdx = .data:0x80157050; // type:object size:0xC scope:local +spaceHiliteImgIdx = .data:0x8015705C; // type:object size:0xC scope:local +jumptable_80157068 = .data:0x80157068; // type:object size:0x28 scope:local +hostMessTbl = .data:0x80157090; // type:object size:0x24 scope:local +itemPriceTbl = .data:0x801570B4; // type:object size:0x10 scope:local +shopMotTbl = .data:0x801570C4; // type:object size:0x6C scope:local +lbl_80157130 = .data:0x80157130; // type:object size:0xA data:string +itemPrioTbl = .data:0x8015713A; // type:object size:0x8C scope:local +rankItemGroupTbl = .data:0x801571C6; // type:object size:0x18 scope:local +cursorPosTbl = .data:0x801571E0; // type:object size:0x30 scope:local data:float +comInputDraw1 = .data:0x80157210; // type:object size:0xEE scope:local +comInputDraw2 = .data:0x801572FE; // type:object size:0xBA scope:local +comInputBall = .data:0x801573B8; // type:object size:0xCE scope:local +lbl_80157486 = .data:0x80157486; // type:object size:0xC scope:local data:string +lbl_80157492 = .data:0x80157492; // type:object size:0x13 +lbl_801574A5 = .data:0x801574A5; // type:object size:0x23 +jumptable_801574C8 = .data:0x801574C8; // type:object size:0x24 scope:local +ticketObj = .data:0x801574EC; // type:object size:0x30 scope:local +ticketPrize = .data:0x8015751C; // type:object size:0xC scope:local +handLastPos = .data:0x80157528; // type:object size:0xC scope:local data:4byte +loseSoundTbl = .data:0x80157534; // type:object size:0x20 scope:local +loseMotTbl = .data:0x80157554; // type:object size:0x24 scope:local +coinChgObj = .data:0x80157578; // type:object size:0x10 scope:local +coinDigitMdl = .data:0x80157588; // type:object size:0x28 scope:local +jumptable_801575B0 = .data:0x801575B0; // type:object size:0x1C scope:local +wheelSprTbl = .data:0x801575D0; // type:object size:0x28 scope:local +wheelSprPrio = .data:0x801575F8; // type:object size:0xE scope:local +wheelCharIconTbl = .data:0x80157608; // type:object size:0x20 scope:local +lbl_80157628 = .data:0x80157628; // type:object size:0x10 +boardStarSndTbl = .data:0x80157638; // type:object size:0x20 +hostMotTbl = .data:0x80157658; // type:object size:0x48 scope:local +starEffParam = .data:0x801576A0; // type:object size:0x50 scope:local noreloc +diceObj = .data:0x801576F0; // type:object size:0xC scope:local data:4byte +diceDigitObj = .data:0x801576FC; // type:object size:0xC scope:local data:4byte +diceSndStatus = .data:0x80157708; // type:object size:0xC scope:local +diceEffParam = .data:0x80157714; // type:object size:0x50 scope:local +diceDigitMdlTbl = .data:0x80157764; // type:object size:0x28 scope:local +uiStatus = .data:0x80157790; // type:object size:0x70 scope:local data:byte +statusSprTbl = .data:0x80157800; // type:object size:0x2C scope:local data:byte +statusSprPrioTbl = .data:0x8015782C; // type:object size:0x18 scope:local data:byte +statusHideOfsTbl = .data:0x80157844; // type:object size:0x10 scope:local data:byte +statusPosTbl = .data:0x80157854; // type:object size:0x20 scope:local data:float +statusColTbl = .data:0x80157874; // type:object size:0x10 scope:local +statusSprPosTbl = .data:0x80157884; // type:object size:0x88 scope:local +statusItemPosTbl = .data:0x8015790C; // type:object size:0x30 scope:local +itemMdlTbl = .data:0x8015793C; // type:object size:0x38 scope:local +teamItemStatusPosTbl = .data:0x80157974; // type:object size:0x18 scope:local +coinMdl = .data:0x80157990; // type:object size:0x14 scope:local +itemFuncTbl = .data:0x801579A8; // type:object size:0x38 scope:local +itemRestoreFuncTbl = .data:0x801579E0; // type:object size:0x38 scope:local +itemMdlTbl = .data:0x80157A18; // type:object size:0x38 scope:local +forceMoveSfxTbl = .data:0x80157A50; // type:object size:0x18 scope:local +callMotTbl = .data:0x80157A68; // type:object size:0x20 scope:local +lbl_80157A88 = .data:0x80157A88; // type:object size:0x13 data:string +lbl_80157A9B = .data:0x80157A9B; // type:object size:0x13 data:string +lbl_80157AAE = .data:0x80157AAE; // type:object size:0x13 data:string +lbl_80157AC1 = .data:0x80157AC1; // type:object size:0x13 data:string +lbl_80157AD4 = .data:0x80157AD4; // type:object size:0x13 data:string +lbl_80157AE7 = .data:0x80157AE7; // type:object size:0x13 data:string +lbl_80157AFA = .data:0x80157AFA; // type:object size:0x13 data:string +lbl_80157B0D = .data:0x80157B0D; // type:object size:0x13 data:string +callHookTbl = .data:0x80157B20; // type:object size:0x20 scope:local +callAttackMotTbl = .data:0x80157B40; // type:object size:0x18 scope:local +callAttackMotTbl2 = .data:0x80157B58; // type:object size:0x18 scope:local +suitMotTbl = .data:0x80157B70; // type:object size:0x40 scope:local +lbl_80157BB0 = .data:0x80157BB0; // type:object size:0x10 +booMotTbl = .data:0x80157BC0; // type:object size:0xC scope:local +shadowPos = .data:0x80157BCC; // type:object size:0xC scope:local +shadowTarget = .data:0x80157BD8; // type:object size:0xC scope:local +shadowUp = .data:0x80157BE4; // type:object size:0xC scope:local +armUpMotTbl = .data:0x80157BF0; // type:object size:0x20 scope:local +scareMotTbl = .data:0x80157C10; // type:object size:0x20 scope:local +impactMotTbl = .data:0x80157C30; // type:object size:0x20 scope:local +cameraDataTbl = .data:0x80157C50; // type:object size:0x134 scope:local +genieMotTbl = .data:0x80157D84; // type:object size:0x10 scope:local +scareFXTbl = .data:0x80157D98; // type:object size:0x20 scope:local +jumptable_80157DB8 = .data:0x80157DB8; // type:object size:0x1C scope:local +lbl_80157DD4 = .data:0x80157DD4; // type:object size:0x14 +battleCursorPosTbl = .data:0x80157DE8; // type:object size:0x18 scope:local +bombFXTbl = .data:0x80157E00; // type:object size:0x20 scope:local +battleSprPrioTbl = .data:0x80157E20; // type:object size:0x16 scope:local +jumptable_80157E38 = .data:0x80157E38; // type:object size:0x24 scope:local +battleChanceTbl = .data:0x80157E5C; // type:object size:0x3C scope:local +comPrizeMessTbl = .data:0x80157E98; // type:object size:0x18 scope:local +booPlayerMotTbl = .data:0x80157EB0; // type:object size:0xC0 scope:local +booSfxTbl = .data:0x80157F70; // type:object size:0x80 scope:local +hostMess = .data:0x80157FF0; // type:object size:0x18 scope:local +lbl_80158008 = .data:0x80158008; // type:object size:0xC data:string +ballBooMdl = .data:0x80158014; // type:object size:0x18 scope:local +jumptable_8015802C = .data:0x8015802C; // type:object size:0x20 scope:local +stealSuccessTbl = .data:0x8015804C; // type:object size:0x24 scope:local +stealTbl = .data:0x80158070; // type:object size:0x12 scope:local +mgSetupSprTbl = .data:0x80158088; // type:object size:0x34 scope:local +statusLayout4P = .data:0x801580BC; // type:object size:0x30 scope:local +statusLayout1Vs3 = .data:0x801580EC; // type:object size:0x30 scope:local +statusLayout2Vs2 = .data:0x8015811C; // type:object size:0x30 scope:local +luckyMessTbl = .data:0x8015814C; // type:object size:0x24 scope:local +jumptable_80158170 = .data:0x80158170; // type:object size:0x20 scope:local +cursorYTbl = .data:0x80158190; // type:object size:0x10 scope:local +hiliteYTbl = .data:0x801581A0; // type:object size:0x10 scope:local +hiliteColTbl = .data:0x801581B0; // type:object size:0xC scope:local +hostMesTbl = .data:0x801581C0; // type:object size:0x90 scope:local +houseMdlTbl = .data:0x80158250; // type:object size:0x30 scope:local +booMotTbl = .data:0x80158280; // type:object size:0xC scope:local +hostMotTbl = .data:0x8015828C; // type:object size:0x6C scope:local +playerStartObj = .data:0x801582F8; // type:object size:0x10 scope:local data:4byte +hitFX = .data:0x80158308; // type:object size:0x10 scope:local +startMesTbl = .data:0x80158318; // type:object size:0xB4 scope:local +logoSprTbl = .data:0x801583CC; // type:object size:0x24 scope:local +jumptable_801583F0 = .data:0x801583F0; // type:object size:0x1C scope:local +digitMdlTbl = .data:0x8015840C; // type:object size:0x24 scope:local +playerOrderMesTbl = .data:0x80158430; // type:object size:0xC scope:local +jumptable_8015843C = .data:0x8015843C; // type:object size:0x24 scope:local +hostMotTbl = .data:0x80158460; // type:object size:0x120 scope:local +messBaseTbl = .data:0x80158580; // type:object size:0x24 scope:local +playerOfsTbl = .data:0x801585A4; // type:object size:0x18 scope:local +plateObjNameTbl = .data:0x801585BC; // type:object size:0x10 scope:local +hiliteObjNameTbl = .data:0x801585CC; // type:object size:0x10 scope:local +faceObjNameTbl = .data:0x801585DC; // type:object size:0x10 scope:local +resultRankFX12Tbl = .data:0x801585EC; // type:object size:0x20 scope:local +resultRankFX3Tbl = .data:0x8015860C; // type:object size:0x20 scope:local +resultRankFX4Tbl = .data:0x8015862C; // type:object size:0x20 scope:local +impactFXTbl = .data:0x8015864C; // type:object size:0x20 scope:local +lotteryWheelMdlTbl = .data:0x8015866C; // type:object size:0x20 scope:local +teamSprPrioTbl = .data:0x8015868C; // type:object size:0x1E scope:local +teamSprTbl = .data:0x801586AC; // type:object size:0x34 scope:local +teamSprPosTbl = .data:0x801586E0; // type:object size:0x78 scope:local +teamCharSprTbl = .data:0x80158758; // type:object size:0x20 scope:local +boxModelID = .data:0x80158778; // type:object size:0x10 scope:local data:2byte +boxPosTbl = .data:0x80158788; // type:object size:0x40 scope:local data:float +padConfigPosTbl = .data:0x801587C8; // type:object size:0x20 scope:local +boardLogoTbl = .data:0x801587E8; // type:object size:0x24 scope:local +turnDigitPosTbl = .data:0x8015880C; // type:object size:0x10 scope:local +boxMdlTbl = .data:0x8015881C; // type:object size:0x20 scope:local +jumptable_8015883C = .data:0x8015883C; // type:object size:0x20 scope:local +jumptable_8015885C = .data:0x8015885C; // type:object size:0x20 scope:local +jumptable_8015887C = .data:0x8015887C; // type:object size:0x20 scope:local +lbl_801588A0 = .data:0x801588A0; // type:object size:0x24 data:string +lbl_801588C4 = .data:0x801588C4; // type:object size:0x24 data:string +@84 = .data:0x801588E8; // type:object size:0x1E scope:local data:string +__OSExceptionLocations = .data:0x801589D0; // type:object size:0x3C scope:local +lbl_80158AA8 = .data:0x80158AA8; // type:object size:0x398 +DSPInitCode = .data:0x80158E40; // type:object size:0x80 scope:local +@69 = .data:0x80158EC0; // type:object size:0x29 scope:local data:string +lbl_801590F0 = .data:0x801590F0; // type:object size:0x1B4 +@74 = .data:0x801592A4; // type:object size:0x23 scope:local data:string +@10 = .data:0x801592C8; // type:object size:0x16 scope:local data:string +@43 = .data:0x801595A4; // type:object size:0x40 scope:local +lbl_801595E8 = .data:0x801595E8; // type:object size:0x30 data:4byte +lbl_80159618 = .data:0x80159618; // type:object size:0x28 +lbl_80159640 = .data:0x80159640; // type:object size:0x28 +ResetFunctionInfo = .data:0x80159668; // type:object size:0x10 scope:local +lbl_80159678 = .data:0x80159678; // type:object size:0x78 +lbl_801596F0 = .data:0x801596F0; // type:object size:0x30 +lbl_80159720 = .data:0x80159720; // type:object size:0x30 +lbl_80159750 = .data:0x80159750; // type:object size:0x18 data:string +lbl_80159768 = .data:0x80159768; // type:object size:0xC8 data:string +lbl_80159830 = .data:0x80159830; // type:object size:0x38 +lbl_80159868 = .data:0x80159868; // type:object size:0x34 data:string +lbl_8015989C = .data:0x8015989C; // type:object size:0x34 +@13 = .data:0x801598D0; // type:object size:0x15 scope:local data:string +@293 = .data:0x8015991C; // type:object size:0x20 scope:local +jumptable_8015993C = .data:0x8015993C; // type:object size:0x40 scope:local +jumptable_8015997C = .data:0x8015997C; // type:object size:0x34 scope:local +jumptable_801599B0 = .data:0x801599B0; // type:object size:0x34 scope:local +lbl_801599E8 = .data:0x801599E8; // type:object size:0x48 data:4byte +@36 = .data:0x80159A30; // type:object size:0x1A scope:local data:string +lbl_80159AA0 = .data:0x80159AA0; // type:object size:0x164 +jumptable_80159C04 = .data:0x80159C04; // type:object size:0x58 scope:local +lbl_80159D80 = .data:0x80159D80; // type:object size:0xC00 +lbl_8015A980 = .data:0x8015A980; // type:object size:0xC data:string +lbl_8015A98C = .data:0x8015A98C; // type:object size:0x28 +jumptable_8015A9B4 = .data:0x8015A9B4; // type:object size:0x28 scope:local +jumptable_8015AA38 = .data:0x8015AA38; // type:object size:0x28 scope:local +jumptable_8015AA60 = .data:0x8015AA60; // type:object size:0x28 scope:local +jumptable_8015AA88 = .data:0x8015AA88; // type:object size:0x28 scope:local +jumptable_8015AAB0 = .data:0x8015AAB0; // type:object size:0x28 scope:local +lbl_8015AAD8 = .data:0x8015AAD8; // type:object size:0x10 +lbl_8015AAE8 = .data:0x8015AAE8; // type:object size:0x38 +lbl_8015AB20 = .data:0x8015AB20; // type:object size:0x140 +jumptable_8015AC60 = .data:0x8015AC60; // type:object size:0x68 scope:local +jumptable_8015ACC8 = .data:0x8015ACC8; // type:object size:0x44 scope:local +jumptable_8015AD0C = .data:0x8015AD0C; // type:object size:0x1C scope:local +jumptable_8015AD28 = .data:0x8015AD28; // type:object size:0x54 scope:local +GXNtsc480IntDf = .data:0x8015AD80; // type:object size:0x3C +GXNtsc480Prog = .data:0x8015ADBC; // type:object size:0x3C +GXMpal480IntDf = .data:0x8015ADF8; // type:object size:0x3C +GXPal528IntDf = .data:0x8015AE34; // type:object size:0x3C +GXEurgb60Hz480IntDf = .data:0x8015AE70; // type:object size:0x3C +jumptable_8015AEB0 = .data:0x8015AEB0; // type:object size:0x1C scope:local +jumptable_8015AED0 = .data:0x8015AED0; // type:object size:0xF4 scope:local +jumptable_8015AFC4 = .data:0x8015AFC4; // type:object size:0xF4 scope:local +jumptable_8015B0B8 = .data:0x8015B0B8; // type:object size:0x3C scope:local +lbl_8015B0F8 = .data:0x8015B0F8; // type:object size:0x28 +lbl_8015B120 = .data:0x8015B120; // type:object size:0x20 +jumptable_8015B140 = .data:0x8015B140; // type:object size:0x5C scope:local +jumptable_8015B19C = .data:0x8015B19C; // type:object size:0x90 scope:local +jumptable_8015B22C = .data:0x8015B22C; // type:object size:0x5C scope:local +lbl_8015B288 = .data:0x8015B288; // type:object size:0x18 +lbl_8015B2A0 = .data:0x8015B2A0; // type:object size:0x160 +lbl_8015B400 = .data:0x8015B400; // type:object size:0x20 +lbl_8015B420 = .data:0x8015B420; // type:object size:0x20 +Si = .data:0x8015B440; // type:object size:0x14 scope:local data:4byte +Type = .data:0x8015B454; // type:object size:0x10 scope:local +XYNTSC = .data:0x8015B510; // type:object size:0x30 scope:local +lbl_8015B5A8 = .data:0x8015B5A8; // type:object size:0x10 +jumptable_8015B5B8 = .data:0x8015B5B8; // type:object size:0x44 scope:local +jumptable_8015B5FC = .data:0x8015B5FC; // type:object size:0x44 scope:local +jumptable_8015B640 = .data:0x8015B640; // type:object size:0x44 scope:local +lbl_8015B684 = .data:0x8015B684; // type:object size:0xC +lbl_8015B690 = .data:0x8015B690; // type:object size:0x10 +__files = .data:0x8015B6A0; // type:object size:0x140 scope:global +jumptable_8015B7E0 = .data:0x8015B7E0; // type:object size:0x124 scope:local +lbl_8015B908 = .data:0x8015B908; // type:object size:0x100 +lbl_8015BA08 = .data:0x8015BA08; // type:object size:0x100 +@1249 = .data:0x8015BB08; // type:object size:0x84 scope:local +jumptable_8015BB8C = .data:0x8015BB8C; // type:object size:0x84 scope:local +jumptable_8015BC10 = .data:0x8015BC10; // type:object size:0xE0 scope:local +jumptable_8015BCF0 = .data:0x8015BCF0; // type:object size:0x44 scope:local +lbl_8015BD38 = .data:0x8015BD38; // type:object size:0x88 +jumptable_8015BDC0 = .data:0x8015BDC0; // type:object size:0x1C scope:local +jumptable_8015BDDC = .data:0x8015BDDC; // type:object size:0x1C scope:local +gTRKRestoreFlags = .data:0x8015BDF8; // type:object size:0x9 scope:global data:byte +gTRKExceptionStatus = .data:0x8015BE04; // type:object size:0x10 scope:local data:4byte +lbl_8015BE14 = .data:0x8015BE14; // type:object size:0x14 data:4byte +lbl_8015BE28 = .data:0x8015BE28; // type:object size:0x40 data:4byte +gDBCommTable = .data:0x8015BE68; // type:object size:0x1C scope:global data:4byte +jumptable_8015BE88 = .data:0x8015BE88; // type:object size:0x50 scope:local +lbl_8015BED8 = .data:0x8015BED8; // type:object size:0x1C +lbl_8015BEF4 = .data:0x8015BEF4; // type:object size:0x204 +lbl_8015C0F8 = .data:0x8015C0F8; // type:object size:0x20 +lbl_8015C118 = .data:0x8015C118; // type:object size:0x10 +lbl_8015C128 = .data:0x8015C128; // type:object size:0x20 +lbl_8015C148 = .data:0x8015C148; // type:object size:0x10 +jumptable_8015C158 = .data:0x8015C158; // type:object size:0x1C8 scope:local +lbl_8015C320 = .data:0x8015C320; // type:object size:0x200 +lbl_8015C520 = .data:0x8015C520; // type:object size:0x200 +lbl_8015C720 = .data:0x8015C720; // type:object size:0x184 +lbl_8015C8A4 = .data:0x8015C8A4; // type:object size:0x400 +lbl_8015CCA4 = .data:0x8015CCA4; // type:object size:0x204 +lbl_8015CEA8 = .data:0x8015CEA8; // type:object size:0x18 +lbl_8015CEC0 = .data:0x8015CEC0; // type:object size:0x228 +lbl_8015D0E8 = .data:0x8015D0E8; // type:object size:0x10 +lbl_8015D0F8 = .data:0x8015D0F8; // type:object size:0x10 +jumptable_8015D108 = .data:0x8015D108; // type:object size:0x24 scope:local +jumptable_8015D12C = .data:0x8015D12C; // type:object size:0x24 scope:local +jumptable_8015D150 = .data:0x8015D150; // type:object size:0x24 scope:local +lbl_8015D178 = .data:0x8015D178; // type:object size:0x808 +lbl_8015D980 = .data:0x8015D980; // type:object size:0x19E0 +lbl_8015F360 = .data:0x8015F360; // type:object size:0x10 +lbl_8015F370 = .data:0x8015F370; // type:object size:0x20 +lbl_8015F390 = .data:0x8015F390; // type:object size:0x800 +padStatErrOld = .bss:0x8015FBA0; // type:object size:0x10 scope:local +rumbleData = .bss:0x8015FBB0; // type:object size:0x20 scope:local +ReadDataStat = .bss:0x8015FBE0; // type:object size:0x2E00 scope:local align:32 data:4byte +textBuffer = .bss:0x801629E0; // type:object size:0x400 +rmodeobj = .bss:0x80162DE0; // type:object size:0x40 scope:local +HeapTbl = .bss:0x80162E20; // type:object size:0x14 scope:local +strline = .bss:0x80162E38; // type:object size:0x6800 scope:local +pfStrBuf = .bss:0x80169638; // type:object size:0x100 scope:local data:byte +processjmpbuf = .bss:0x80169738; // type:object size:0xF8 scope:local align:8 +HuSprData = .bss:0x80169830; // type:object size:0x9600 +HuSprGrpData = .bss:0x80172E30; // type:object size:0x5400 data:2byte +HuSprOrder = .bss:0x80178230; // type:object size:0x1800 +bmpNoCC = .bss:0x80179A30; // type:object size:0x20 scope:local +HuSprLayerDrawNo = .bss:0x80179A50; // type:object size:0x10 scope:local +Model = .bss:0x80179A60; // type:object size:0x80 +head = .bss:0x80179AE0; // type:object size:0xB0 +rgba = .bss:0x80179B90; // type:object size:0x190 +buf$648 = .bss:0x80179D20; // type:object size:0x300 scope:local data:byte +DrawObjData = .bss:0x8017A020; // type:object size:0x9000 scope:local +BmpPtrBak = .bss:0x80183020; // type:object size:0x20 scope:local data:4byte +MTXBuf = .bss:0x80183040; // type:object size:0x1200 scope:local +scaleBuf = .bss:0x80184240; // type:object size:0x480 scope:local data:4byte +texCol = .bss:0x801846C0; // type:object size:0x40 scope:local data:byte +hiliteMtx = .bss:0x80184700; // type:object size:0x30 scope:local +DrawObjNum = .bss:0x80184730; // type:object size:0x400 scope:local +NBTB = .bss:0x80184B30; // type:object size:0xC scope:local data:float +NBTT = .bss:0x80184B3C; // type:object size:0xC scope:local data:float +PGMaxPos = .bss:0x80184B48; // type:object size:0xC data:float +PGMinPos = .bss:0x80184B54; // type:object size:0xC data:float +Hu3DData = .bss:0x80184B60; // type:object size:0x24800 data:byte +Hu3DCamera = .bss:0x801A9360; // type:object size:0x580 data:float +layerNum = .bss:0x801A98E0; // type:object size:0x10 scope:local data:2byte +layerHook = .bss:0x801A98F0; // type:object size:0x20 scope:local +reflectAnim = .bss:0x801A9910; // type:object size:0x14 data:4byte +hiliteAnim = .bss:0x801A9924; // type:object size:0x10 data:4byte +Hu3DProjection = .bss:0x801A9934; // type:object size:0x260 data:byte +Hu3DShadowData = .bss:0x801A9B94; // type:object size:0x98 data:byte +FogData = .bss:0x801A9C2C; // type:object size:0x10 data:4byte +Hu3DCameraMtx = .bss:0x801A9C3C; // type:object size:0x30 +Hu3DCameraMtxXPose = .bss:0x801A9C6C; // type:object size:0x30 +Hu3DGlobalLight = .bss:0x801A9C9C; // type:object size:0x220 data:2byte +Hu3DLocalLight = .bss:0x801A9EBC; // type:object size:0x880 data:2byte +lbl_8018D39C = .bss:0x801AA73C; // type:object size:0x30 data:2byte +Hu3DMotion = .bss:0x801AA770; // type:object size:0x800 data:2byte +Hu3DTexAnimData = .bss:0x801AAF70; // type:object size:0x1400 data:2byte +Hu3DTexScrData = .bss:0x801AC370; // type:object size:0x6C0 data:2byte +parManProc = .bss:0x801ACA30; // type:object size:0x100 scope:local +perf = .bss:0x801ACB30; // type:object size:0x370 scope:local +Ssw = .bss:0x801ACEA0; // type:object size:0x38 scope:local +omovlhis = .bss:0x801ACED8; // type:object size:0xC0 scope:local +XFB_Geometry = .bss:0x801ACF98; // type:object size:0x18 scope:local +GWPlayerCfg = .bss:0x801ACFB0; // type:object size:0x28 +GWPlayer = .bss:0x801ACFD8; // type:object size:0xC0 data:byte +GWSystem = .bss:0x801AD098; // type:object size:0xDC data:byte +GWGameStat = .bss:0x801AD178; // type:object size:0x118 +GWGameStatDefault = .bss:0x801AD290; // type:object size:0x118 +CRot = .bss:0x801AD3A8; // type:object size:0xC data:float +Center = .bss:0x801AD3B4; // type:object size:0xC data:float +CRotM = .bss:0x801AD3C0; // type:object size:0xC0 +CenterM = .bss:0x801AD480; // type:object size:0xC0 +CZoomM = .bss:0x801AD540; // type:object size:0x40 +omDLLinfoTbl = .bss:0x801AD580; // type:object size:0x50 +sndFXBuf = .bss:0x801AD5D0; // type:object size:0x200 scope:local +charVoiceGroupStat = .bss:0x801AD7D0; // type:object size:0x20 +seqWorkData = .bss:0x801AD7F0; // type:object size:0x400 scope:local data:4byte +winnerNameW = .bss:0x801ADBF0; // type:object size:0x10 scope:local data:2byte +esprite = .bss:0x801ADC00; // type:object size:0x600 data:2byte +espanim = .bss:0x801AE200; // type:object size:0x1200 data:4byte +lbl_80192060 = .bss:0x801AF400; // type:object size:0x100 +lbl_80192160 = .bss:0x801AF500; // type:object size:0x100 +lbl_80192260 = .bss:0x801AF600; // type:object size:0x100 +wipeData = .bss:0x801AF700; // type:object size:0x4C data:4byte +winData = .bss:0x801AF760; // type:object size:0x3000 align:32 data:byte +winKey = .bss:0x801B2760; // type:object size:0x10 +winComKeyBuf = .bss:0x801B2770; // type:object size:0x1400 +mesWInsert = .bss:0x801B3B70; // type:object size:0x10 +ARInfo = .bss:0x801B3B80; // type:object size:0x400 data:byte +arqReq = .bss:0x801B3F80; // type:object size:0x20 scope:local +ARQueBuf = .bss:0x801B3FA0; // type:object size:0x280 scope:local +preLoadBuf = .bss:0x801B4220; // type:object size:0x40 scope:local +charInstance = .bss:0x801B4260; // type:object size:0x640 scope:local +effectMdl = .bss:0x801B48A0; // type:object size:0x10 scope:local data:2byte +particleData = .bss:0x801B48B0; // type:object size:0x20 scope:local +itemHookProcess = .bss:0x801B48D0; // type:object size:0x80 scope:local +lbl_801975B0 = .bss:0x801B4950; // type:object size:0x10 scope:local +lbl_801975C0 = .bss:0x801B4960; // type:object size:0x90 scope:local +MapObject = .bss:0x801B49F0; // type:object size:0x40 +MapMT = .bss:0x801B4A30; // type:object size:0x30 +MapMTR = .bss:0x801B4A60; // type:object size:0x30 +MTRAdd = .bss:0x801B4A90; // type:object size:0xC scope:local data:float +FieldVec = .bss:0x801B4A9C; // type:object size:0xC scope:local data:float +ColisionIdx = .bss:0x801B4AA8; // type:object size:0x78 +HitFaceVec = .bss:0x801B4B20; // type:object size:0x180 +OldXYZ = .bss:0x801B4CA0; // type:object size:0xC scope:local +HitFace = .bss:0x801B4CAC; // type:object size:0x180 +CharObject = .bss:0x801B4E2C; // type:object size:0x30 +SimpleControl = .bss:0x801B4E60; // type:object size:0x1A0 +SoundBuffer = .bss:0x801B5000; // type:object size:0x500 scope:local align:32 +WorkBuffer = .bss:0x801B5500; // type:object size:0x40 scope:local align:32 +THPFileName = .bss:0x801B5540; // type:object size:0x40 scope:local +mgGameStatBackup = .bss:0x801B5580; // type:object size:0x118 +mgIndexList = .bss:0x801B5698; // type:object size:0x100 +mgTicTacToeGrid = .bss:0x801B5798; // type:object size:0x12 +_Sys_Flag = .bss:0x801B57B0; // type:object size:0x10 scope:local +curFileInfo = .bss:0x801B57C0; // type:object size:0x20 +saveBuf = .bss:0x801B57E0; // type:object size:0x4000 +ToeMessageQueue = .bss:0x801B97E0; // type:object size:0x20 scope:local +padStat$377 = .bss:0x801B9800; // type:object size:0x30 scope:local +ToeMessageArray = .bss:0x801B9830; // type:object size:0x40 scope:local +ToeThread = .bss:0x801B9870; // type:object size:0x310 scope:local align:8 +ToeThreadStack = .bss:0x801B9B80; // type:object size:0x1000 scope:local +boardCamera = .bss:0x801BAB80; // type:object size:0xC4 data:byte +cameraBackup = .bss:0x801BAC44; // type:object size:0xC4 scope:local +preTurnHook = .bss:0x801BAD08; // type:object size:0x10 scope:local +postTurnHook = .bss:0x801BAD18; // type:object size:0x10 scope:local +playerMatCopy = .bss:0x801BAD28; // type:object size:0x10 scope:local +winInsertMesTbl = .bss:0x801BAD38; // type:object size:0x20 scope:local +choiceDisableTbl = .bss:0x801BAD58; // type:object size:0x40 scope:local +focusPos = .bss:0x801BAD98; // type:object size:0xC scope:local data:float +focusPosTarget = .bss:0x801BADA4; // type:object size:0xC scope:local data:4byte +spaceData = .bss:0x801BADB0; // type:object size:0x7000 scope:local data:4byte +boardSpaceStarTbl = .bss:0x801C1DB0; // type:object size:0x10 +spaceTex = .bss:0x801C1DC0; // type:object size:0x20 scope:local +spaceHiliteTex = .bss:0x801C1DE0; // type:object size:0x20 scope:local +activeItemTbl = .bss:0x801C1E00; // type:object size:0x14 scope:local data:4byte +choiceEnableTbl = .bss:0x801C1E14; // type:object size:0x18 scope:local +lbl_801C1E30 = .bss:0x801C1E30; // type:object size:0xC data:2byte +lbl_801C1E3C = .bss:0x801C1E3C; // type:object size:0xC +lbl_801C1E48 = .bss:0x801C1E48; // type:object size:0x18 data:2byte +warpPos = .bss:0x801C1E60; // type:object size:0xC scope:local +starCharPos = .bss:0x801C1E70; // type:object size:0xC scope:local data:4byte +tutorialRoll = .bss:0x801C1E80; // type:object size:0xC scope:local +itemMdlId = .bss:0x801C1E90; // type:object size:0x18 scope:local +pickerPos = .bss:0x801C1EA8; // type:object size:0x30 scope:local +itemPosTemp = .bss:0x801C1ED8; // type:object size:0x48 scope:local +coinF = .bss:0x801C1F20; // type:object size:0x28 scope:local +booBallPos = .bss:0x801C1F48; // type:object size:0xC scope:local data:4byte +booBallScale = .bss:0x801C1F54; // type:object size:0xC scope:local data:float +booCamPos = .bss:0x801C1F60; // type:object size:0xC scope:local data:float +booCamTarget = .bss:0x801C1F6C; // type:object size:0xC scope:local data:float +booCamUp = .bss:0x801C1F78; // type:object size:0xC scope:local data:float +playerPosTemp = .bss:0x801C1F88; // type:object size:0x30 scope:local +bowserEvent = .bss:0x801C1FB8; // type:object size:0x16 scope:local +battleMGList = .bss:0x801C1FD0; // type:object size:0x10 scope:local data:2byte +camPosFortune = .bss:0x801C1FE0; // type:object size:0xC scope:local data:4byte +camTargetFortune = .bss:0x801C1FEC; // type:object size:0xC scope:local data:float +activeMG = .bss:0x801C1FF8; // type:object size:0x20 scope:local data:2byte +mgListAll = .bss:0x801C2018; // type:object size:0x40 scope:local data:2byte +mgPlay4P = .bss:0x801C2058; // type:object size:0x10 scope:local +houseMdl = .bss:0x801C2068; // type:object size:0xC scope:local data:2byte +spacePos = .bss:0x801C2078; // type:object size:0xC scope:local data:float +camStartFocusPos = .bss:0x801C2084; // type:object size:0xC scope:local data:float +spacePos = .bss:0x801C2090; // type:object size:0xC scope:local data:float +focusPos = .bss:0x801C209C; // type:object size:0xC scope:local data:float +hostPos = .bss:0x801C20A8; // type:object size:0xC scope:local +hostMot = .bss:0x801C20B4; // type:object size:0x10 scope:local data:2byte +lotteryTicketObj = .bss:0x801C20C4; // type:object size:0x10 scope:local data:4byte +boxRot = .bss:0x801C20D8; // type:object size:0x20 scope:local +padBoxPos = .bss:0x801C20F8; // type:object size:0xC scope:local data:float +pathNodeData = .bss:0x801C2108; // type:object size:0x500 scope:local data:byte +candidateNodes = .bss:0x801C2608; // type:object size:0x40 scope:local +startPathSpaceSearch = .bss:0x801C2648; // type:object size:0x20 scope:local +startPathSpace = .bss:0x801C2668; // type:object size:0x20 scope:local +boardTutorialData = .bss:0x801C2688; // type:object size:0x10 data:4byte +DriveInfo = .bss:0x801C26A0; // type:object size:0x20 scope:local align:32 +DriveBlock = .bss:0x801C26C0; // type:object size:0x30 scope:local +__OSErrorTable = .bss:0x801C26F0; // type:object size:0x40 scope:global +lbl_801C2740 = .bss:0x801C2740; // type:object size:0x20 +Scb = .bss:0x801C2760; // type:object size:0x54 scope:local data:4byte +RunQueue = .bss:0x801C27B8; // type:object size:0x100 scope:local data:4byte +lbl_801C3079 = .bss:0x801C3079; // type:object size:0x6A +lbl_801C30E3 = .bss:0x801C30E3; // type:object size:0xBD +CommandList = .bss:0x801C31A0; // type:object size:0x3C scope:local data:4byte +AlarmForTimeout = .bss:0x801C3208; // type:object size:0x28 scope:local +tmpBuffer = .bss:0x801C3280; // type:object size:0x80 scope:local +DummyCommandBlock = .bss:0x801C3300; // type:object size:0x30 scope:local +WaitingQueue = .bss:0x801C3358; // type:object size:0x20 scope:local data:4byte +bb2Buf = .bss:0x801C3378; // type:object size:0x3F scope:local +block$16 = .bss:0x801C33B8; // type:object size:0x30 scope:local +lbl_801C33E8 = .bss:0x801C33E8; // type:object size:0x78 data:2byte +lbl_801C3460 = .bss:0x801C3460; // type:object size:0x78 +lbl_801C34D8 = .bss:0x801C34D8; // type:object size:0x58 data:2byte +lbl_801C3530 = .bss:0x801C3530; // type:object size:0x20 +lbl_801C3550 = .bss:0x801C3550; // type:object size:0x10 +lbl_801C3560 = .bss:0x801C3560; // type:object size:0x40 +gxData = .bss:0x801C35A0; // type:object size:0x4F8 scope:local +lbl_801C3B18 = .bss:0x801C3B18; // type:object size:0x520 data:4byte +lbl_801C4038 = .bss:0x801C4038; // type:object size:0x220 data:4byte +lbl_801C4258 = .bss:0x801C4258; // type:object size:0x20 +Ecb = .bss:0x801C4278; // type:object size:0xC0 scope:local data:4byte +Packet = .bss:0x801C4338; // type:object size:0x80 scope:local data:4byte +lbl_801C43B8 = .bss:0x801C43B8; // type:object size:0xA0 +TypeTime = .bss:0x801C4458; // type:object size:0x20 scope:local +lbl_801C4478 = .bss:0x801C4478; // type:object size:0x20 +lbl_801C4498 = .bss:0x801C4498; // type:object size:0x40 +lbl_801C44D8 = .bss:0x801C44D8; // type:object size:0x68 data:4byte +lbl_801C4540 = .bss:0x801C4540; // type:object size:0x118 +lbl_801C4658 = .bss:0x801C4658; // type:object size:0x18 data:4byte +fragmentinfo = .bss:0x801C4670; // type:object size:0xC scope:local data:4byte +__atexit_funcs = .bss:0x801C4680; // type:object size:0x100 scope:local +lbl_801C4780 = .bss:0x801C4780; // type:object size:0x38 data:4byte +lbl_801C47B8 = .bss:0x801C47B8; // type:object size:0x100 +lbl_801C48B8 = .bss:0x801C48B8; // type:object size:0x100 +lbl_801C49B8 = .bss:0x801C49B8; // type:object size:0x100 +lbl_801C4AB8 = .bss:0x801C4AB8; // type:object size:0x18 +lbl_801C4AD0 = .bss:0x801C4AD0; // type:object size:0x28 +gTRKBigEndian = .bss:0x801C4AF8; // type:object size:0x4 scope:global data:4byte +lbl_801C4B00 = .bss:0x801C4B00; // type:object size:0x19B0 +gTRKInputPendingPtr = .bss:0x801C64B0; // type:object size:0x4 scope:global data:4byte +lbl_801C64B4 = .bss:0x801C64B4; // type:object size:0x14 data:4byte +lbl_801C64C8 = .bss:0x801C64C8; // type:object size:0x8 data:4byte +lbl_801C64D0 = .bss:0x801C64D0; // type:object size:0x8 data:4byte +TRK_saved_exceptionID = .bss:0x801C64D8; // type:object size:0x2 scope:local data:2byte +gTRKState = .bss:0x801C64DC; // type:object size:0xA4 scope:global data:4byte +gTRKCPUState = .bss:0x801C6580; // type:object size:0x430 scope:global +gTRKSaveState = .bss:0x801C69B0; // type:object size:0x94 scope:global data:4byte +lbl_801C6A44 = .bss:0x801C6A44; // type:object size:0x14 +lbl_801C6A58 = .bss:0x801C6A58; // type:object size:0x8 data:4byte +TRK_mainError = .bss:0x801C6A60; // type:object size:0x4 scope:local data:4byte +lbl_801C6A68 = .bss:0x801C6A68; // type:object size:0x758 data:4byte +lbl_801C71C0 = .bss:0x801C71C0; // type:object size:0x7 +lbl_801C71C7 = .bss:0x801C71C7; // type:object size:0x547 +lbl_801C770E = .bss:0x801C770E; // type:object size:0x476 +lbl_801C7B84 = .bss:0x801C7B84; // type:object size:0x110C +lbl_801C8C90 = .bss:0x801C8C90; // type:object size:0x8 data:byte +lbl_801C8C98 = .bss:0x801C8C98; // type:object size:0x1400 data:4byte +lbl_801CA098 = .bss:0x801CA098; // type:object size:0x3F85 +lbl_801CE01D = .bss:0x801CE01D; // type:object size:0x300 +lbl_801CE31D = .bss:0x801CE31D; // type:object size:0x64 +lbl_801CE381 = .bss:0x801CE381; // type:object size:0xE3F +lbl_801CF1C0 = .bss:0x801CF1C0; // type:object size:0x6BC +lbl_801CF87C = .bss:0x801CF87C; // type:object size:0x480 +lbl_801CFCFC = .bss:0x801CFCFC; // type:object size:0x66DC +lbl_801D63D8 = .bss:0x801D63D8; // type:object size:0x100 data:2byte +lbl_801D64D8 = .bss:0x801D64D8; // type:object size:0x240 +lbl_801D6718 = .bss:0x801D6718; // type:object size:0x214 data:4byte +lbl_801D692C = .bss:0x801D692C; // type:object size:0x600 data:float +lbl_801D6F2C = .bss:0x801D6F2C; // type:object size:0x40 data:byte +lbl_801D6F6C = .bss:0x801D6F6C; // type:object size:0x180 +lbl_801D70EC = .bss:0x801D70EC; // type:object size:0x20 data:4byte +lbl_801D710C = .bss:0x801D710C; // type:object size:0x20 data:4byte +lbl_801D712C = .bss:0x801D712C; // type:object size:0x20 data:4byte +lbl_801D714C = .bss:0x801D714C; // type:object size:0x20 data:4byte +lbl_801D716C = .bss:0x801D716C; // type:object size:0x10 data:byte +lbl_801D717C = .bss:0x801D717C; // type:object size:0x40 data:4byte +lbl_801D71BC = .bss:0x801D71BC; // type:object size:0x480 +lbl_801D763C = .bss:0x801D763C; // type:object size:0x484 +lbl_801D7AC0 = .bss:0x801D7AC0; // type:object size:0x1900 data:4byte +lbl_801D93C0 = .bss:0x801D93C0; // type:object size:0x800 +lbl_801D9BC0 = .bss:0x801D9BC0; // type:object size:0xC00 +lbl_801DA7C0 = .bss:0x801DA7C0; // type:object size:0x184E +lbl_801DC00E = .bss:0x801DC00E; // type:object size:0x1 +lbl_801DC00F = .bss:0x801DC00F; // type:object size:0x6F4 +lbl_801DC703 = .bss:0x801DC703; // type:object size:0x1C84 +lbl_801DE387 = .bss:0x801DE387; // type:object size:0x439 +lbl_801DE7C0 = .bss:0x801DE7C0; // type:object size:0x600 data:4byte +lbl_801DEDC0 = .bss:0x801DEDC0; // type:object size:0x400 data:2byte +lbl_801DF1C0 = .bss:0x801DF1C0; // type:object size:0x800 data:2byte +lbl_801DF9C0 = .bss:0x801DF9C0; // type:object size:0x22B0 +lbl_801E1C70 = .bss:0x801E1C70; // type:object size:0x1D50 +lbl_801E39C0 = .bss:0x801E39C0; // type:object size:0x20 data:2byte +lbl_801E39E0 = .bss:0x801E39E0; // type:object size:0xC +lbl_801E39EC = .bss:0x801E39EC; // type:object size:0xC data:2byte +lbl_801E39F8 = .bss:0x801E39F8; // type:object size:0x20 data:4byte +lbl_801E3A18 = .bss:0x801E3A18; // type:object size:0xF00 data:4byte +lbl_801E4918 = .bss:0x801E4918; // type:object size:0x40 data:byte +lbl_801E4958 = .bss:0x801E4958; // type:object size:0x80 data:byte +lbl_801E49D8 = .bss:0x801E49D8; // type:object size:0x950 data:byte +lbl_801E5328 = .bss:0x801E5328; // type:object size:0x600 data:4byte +lbl_801E5928 = .bss:0x801E5928; // type:object size:0x5E0 data:4byte +lbl_801E5F08 = .bss:0x801E5F08; // type:object size:0x100 data:4byte +lbl_801E6008 = .bss:0x801E6008; // type:object size:0x50 +lbl_801E6058 = .bss:0x801E6058; // type:object size:0x400 data:4byte +lbl_801E6458 = .bss:0x801E6458; // type:object size:0x300 +lbl_801E6758 = .bss:0x801E6758; // type:object size:0x700 +lbl_801E6E58 = .bss:0x801E6E58; // type:object size:0x200 data:4byte +lbl_801E7058 = .bss:0x801E7058; // type:object size:0x8B +lbl_801E70E3 = .bss:0x801E70E3; // type:object size:0x16 +lbl_801E70F9 = .bss:0x801E70F9; // type:object size:0x740 +lbl_801E7839 = .bss:0x801E7839; // type:object size:0xAA +lbl_801E78E3 = .bss:0x801E78E3; // type:object size:0x3A75 +lbl_801EB358 = .bss:0x801EB358; // type:object size:0x80 +lbl_801EB3D8 = .bss:0x801EB3D8; // type:object size:0x2180 +lbl_801ED558 = .bss:0x801ED558; // type:object size:0x40 +lbl_801ED598 = .bss:0x801ED598; // type:object size:0x80 +lbl_801ED618 = .bss:0x801ED618; // type:object size:0x40 +lbl_801ED658 = .bss:0x801ED658; // type:object size:0x284 +lbl_801ED8DC = .bss:0x801ED8DC; // type:object size:0x284 +lbl_801EDB60 = .bss:0x801EDB60; // type:object size:0x400 data:4byte +lbl_801EDF60 = .bss:0x801EDF60; // type:object size:0x60 +lbl_801EDFC0 = .bss:0x801EDFC0; // type:object size:0x2000 +lbl_801EFFC0 = .bss:0x801EFFC0; // type:object size:0x500 data:4byte +lbl_801F04C0 = .bss:0x801F04C0; // type:object size:0x30 data:4byte +lbl_801F04F0 = .bss:0x801F04F0; // type:object size:0x10 data:4byte +lbl_801F0500 = .bss:0x801F0500; // type:object size:0x178 data:2byte +lbl_801F0678 = .bss:0x801F0678; // type:object size:0xE8 data:4byte +lbl_801F0760 = .bss:0x801F0760; // type:object size:0x60 data:4byte +lbl_801F07C0 = .sdata:0x801F07C0; // type:object size:0x5 data:string +lbl_801F07C5 = .sdata:0x801F07C5; // type:object size:0x7 +rnd_seed = .sdata:0x801F07CC; // type:object size:0x4 data:4byte +lbl_801F07D0 = .sdata:0x801F07D0; // type:object size:0x6 data:string +lbl_801F07D6 = .sdata:0x801F07D6; // type:object size:0x2 data:string +lbl_801F07D8 = .sdata:0x801F07D8; // type:object size:0x7 data:string +lbl_801F07DF = .sdata:0x801F07DF; // type:object size:0x2 data:string +FirstFrame = .sdata:0x801F07E8; // type:object size:0x4 scope:local data:4byte +lbl_801F07EC = .sdata:0x801F07EC; // type:object size:0x7 data:string +lbl_801F07F3 = .sdata:0x801F07F3; // type:object size:0x4 data:string +lbl_801F07F7 = .sdata:0x801F07F7; // type:object size:0x9 +lbl_801F0800 = .sdata:0x801F0800; // type:object size:0x2 data:string +lbl_801F0802 = .sdata:0x801F0802; // type:object size:0x8 data:string +oneceF = .sdata:0x801F0810; // type:object size:0x2 scope:local data:2byte +firstTev = .sdata:0x801F0812; // type:object size:0x4 scope:local +secondTev = .sdata:0x801F0816; // type:object size:0x4 scope:local +lbl_801F081A = .sdata:0x801F081A; // type:object size:0x7 scope:local data:string +lbl_801F0828 = .sdata:0x801F0828; // type:object size:0x4 data:string +lbl_801F082C = .sdata:0x801F082C; // type:object size:0x5 data:string +omSysPauseEnableFlag = .sdata:0x801F0838; // type:object size:0x1 data:byte +omprevovl = .sdata:0x801F083C; // type:object size:0x4 data:4byte +titleMes$442 = .sdata:0x801F0840; // type:object size:0x4 scope:local data:4byte +lbl_801F0844 = .sdata:0x801F0844; // type:object size:0xC +GwLanguage = .sdata:0x801F0850; // type:object size:0x2 data:2byte +GwLanguageSave = .sdata:0x801F0852; // type:object size:0x2 +lbl_801F0858 = .sdata:0x801F0858; // type:object size:0x1 +lbl_801F0859 = .sdata:0x801F0859; // type:object size:0x7 +mgSeqOvlPrev = .sdata:0x801F0860; // type:object size:0x4 data:4byte +wordStartE = .sdata:0x801F0864; // type:object size:0x7 scope:local data:string +seqPunctTbl = .sdata:0x801F086B; // type:object size:0x3 scope:local data:byte +wordStartJ = .sdata:0x801F086E; // type:object size:0x6 scope:local +wordFinishJ = .sdata:0x801F0874; // type:object size:0x8 scope:local +wordDrawJ = .sdata:0x801F087C; // type:object size:0x6 scope:local +wordFinishE = .sdata:0x801F0882; // type:object size:0x8 scope:local data:string +wordDrawE = .sdata:0x801F088A; // type:object size:0x6 scope:local data:string +lbl_801F0890 = .sdata:0x801F0890; // type:object size:0x4 +lbl_801F0894 = .sdata:0x801F0894; // type:object size:0x6 data:string +lbl_801F089A = .sdata:0x801F089A; // type:object size:0x6 +lbl_801F08A0 = .sdata:0x801F08A0; // type:object size:0x6 data:string +lbl_801F08A6 = .sdata:0x801F08A6; // type:object size:0x5 +lbl_801F08AB = .sdata:0x801F08AB; // type:object size:0x6 data:string +lbl_801F08B1 = .sdata:0x801F08B1; // type:object size:0x5 +lbl_801F08B6 = .sdata:0x801F08B6; // type:object size:0x6 data:string +lbl_801F08BC = .sdata:0x801F08BC; // type:object size:0x4 +lbl_801F08C0 = .sdata:0x801F08C0; // type:object size:0x6 data:string +lbl_801F08C6 = .sdata:0x801F08C6; // type:object size:0x6 +lbl_801F08CC = .sdata:0x801F08CC; // type:object size:0x5 data:string +lbl_801F08D1 = .sdata:0x801F08D1; // type:object size:0x7 +lbl_801F08D8 = .sdata:0x801F08D8; // type:object size:0x6 data:string +lbl_801F08DE = .sdata:0x801F08DE; // type:object size:0x7 +lbl_801F08E5 = .sdata:0x801F08E5; // type:object size:0x8 data:string +lbl_801F08ED = .sdata:0x801F08ED; // type:object size:0x5 +lbl_801F08F2 = .sdata:0x801F08F2; // type:object size:0x7 data:string +lbl_801F08F9 = .sdata:0x801F08F9; // type:object size:0x6 +lbl_801F08FF = .sdata:0x801F08FF; // type:object size:0x5 data:string +lbl_801F0904 = .sdata:0x801F0904; // type:object size:0x5 +lbl_801F0909 = .sdata:0x801F0909; // type:object size:0x8 data:string +lbl_801F0911 = .sdata:0x801F0911; // type:object size:0x4 +lbl_801F0915 = .sdata:0x801F0915; // type:object size:0x4 data:string +lbl_801F0919 = .sdata:0x801F0919; // type:object size:0x5 +lbl_801F091E = .sdata:0x801F091E; // type:object size:0x6 data:string +lbl_801F0924 = .sdata:0x801F0924; // type:object size:0x7 +lbl_801F092B = .sdata:0x801F092B; // type:object size:0x6 +lbl_801F0931 = .sdata:0x801F0931; // type:object size:0x7 data:string +lbl_801F0938 = .sdata:0x801F0938; // type:object size:0x3 +lbl_801F093B = .sdata:0x801F093B; // type:object size:0x5 data:string +lbl_801F0940 = .sdata:0x801F0940; // type:object size:0x6 +lbl_801F0946 = .sdata:0x801F0946; // type:object size:0x5 data:string +lbl_801F094B = .sdata:0x801F094B; // type:object size:0x7 +lbl_801F0952 = .sdata:0x801F0952; // type:object size:0x6 +lbl_801F0958 = .sdata:0x801F0958; // type:object size:0x8 +pauseStr$2309 = .sdata:0x801F0960; // type:object size:0x8 +lbl_801F0968 = .sdata:0x801F0968; // type:object size:0x8 scope:local +lbl_801F0970 = .sdata:0x801F0970; // type:object size:0x8 +lbl_801F0978 = .sdata:0x801F0978; // type:object size:0x8 +lbl_801F0980 = .sdata:0x801F0980; // type:object size:0x8 +colorN$226 = .sdata:0x801F0988; // type:object size:0x4 scope:local data:byte +colorN$271 = .sdata:0x801F098C; // type:object size:0x4 scope:local data:byte +winPrio = .sdata:0x801F0990; // type:object size:0x2 scope:local data:2byte +lbl_801F0998 = .sdata:0x801F0998; // type:object size:0x8 +lbl_801F09A0 = .sdata:0x801F09A0; // type:object size:0x8 +lbl_801F09A8 = .sdata:0x801F09A8; // type:object size:0x8 +lbl_801F09B0 = .sdata:0x801F09B0; // type:object size:0x8 +lbl_801F09B8 = .sdata:0x801F09B8; // type:object size:0x8 +lbl_801F09C0 = .sdata:0x801F09C0; // type:object size:0x1 +lbl_801F09C1 = .sdata:0x801F09C1; // type:object size:0x5 data:string +lbl_801F09C6 = .sdata:0x801F09C6; // type:object size:0x5 data:string +lbl_801F09CB = .sdata:0x801F09CB; // type:object size:0x8 data:string +lbl_801F09D3 = .sdata:0x801F09D3; // type:object size:0x6 data:string +lbl_801F09D9 = .sdata:0x801F09D9; // type:object size:0x7 +lbl_801F09E0 = .sdata:0x801F09E0; // type:object size:0x8 +SaveEnableF = .sdata:0x801F09E8; // type:object size:0x4 data:4byte +lbl_801F09EC = .sdata:0x801F09EC; // type:object size:0x2 data:string +lbl_801F09EE = .sdata:0x801F09EE; // type:object size:0x2 data:string +SlotNameTbl = .sdata:0x801F09F0; // type:object size:0x8 scope:local +saveMessWin = .sdata:0x801F09F8; // type:object size:0x4 data:4byte +SR_PushTime = .sdata:0x801F0A00; // type:object size:0x8 scope:local data:2byte +SR_ResetPad = .sdata:0x801F0A08; // type:object size:0x1 scope:local data:byte +Xfb = .sdata:0x801F0A0C; // type:object size:0x8 scope:local data:4byte +nextOvl = .sdata:0x801F0A18; // type:object size:0x4 scope:local data:4byte +colorN$1400 = .sdata:0x801F0A1C; // type:object size:0x4 scope:local data:byte +lbl_801F0A20 = .sdata:0x801F0A20; // type:object size:0x8 +suitMdl = .sdata:0x801F0A28; // type:object size:0x2 scope:local data:2byte +suitPlayerMdl = .sdata:0x801F0A2A; // type:object size:0x2 scope:local data:2byte +suitCurrMot = .sdata:0x801F0A2C; // type:object size:0x2 scope:local data:2byte +lbl_801F0A2E = .sdata:0x801F0A2E; // type:object size:0x5 data:string +lbl_801F0A33 = .sdata:0x801F0A33; // type:object size:0x5 data:string +lbl_801F0A38 = .sdata:0x801F0A38; // type:object size:0x6 data:string +lbl_801F0A3E = .sdata:0x801F0A3E; // type:object size:0x6 data:string +lbl_801F0A44 = .sdata:0x801F0A44; // type:object size:0x6 data:string +lbl_801F0A4A = .sdata:0x801F0A4A; // type:object size:0x6 data:string +lbl_801F0A50 = .sdata:0x801F0A50; // type:object size:0x6 data:string +lbl_801F0A56 = .sdata:0x801F0A56; // type:object size:0x6 data:string +lbl_801F0A5C = .sdata:0x801F0A5C; // type:object size:0x6 data:string +lbl_801F0A62 = .sdata:0x801F0A62; // type:object size:0x6 data:string +lbl_801F0A68 = .sdata:0x801F0A68; // type:object size:0x6 data:string +lbl_801F0A6E = .sdata:0x801F0A6E; // type:object size:0x6 data:string +lbl_801F0A74 = .sdata:0x801F0A74; // type:object size:0x6 data:string +lbl_801F0A7A = .sdata:0x801F0A7A; // type:object size:0xE +windowID = .sdata:0x801F0A88; // type:object size:0x2 scope:local data:2byte +boardFX = .sdata:0x801F0A90; // type:object size:0x4 scope:local data:4byte +itemUse = .sdata:0x801F0A98; // type:object size:0x1 scope:local data:byte +buttonWin = .sdata:0x801F0AA0; // type:object size:0x2 scope:local data:2byte +focusMdl = .sdata:0x801F0AA2; // type:object size:0x2 scope:local data:2byte +spaceDrawMdl = .sdata:0x801F0AA8; // type:object size:0x2 scope:local data:2byte +starPlatMdl = .sdata:0x801F0AAA; // type:object size:0x2 scope:local data:2byte +itemMdl = .sdata:0x801F0AB0; // type:object size:0x2 scope:local data:2byte +itemChoice = .sdata:0x801F0AB2; // type:object size:0x1 scope:local data:byte +shopMdlParam = .sdata:0x801F0AB4; // type:object size:0x8 scope:local +hostMdl = .sdata:0x801F0ABC; // type:object size:0x2 scope:local data:2byte +shopMot = .sdata:0x801F0ABE; // type:object size:0x6 scope:local data:2byte +itemCurChoice = .sdata:0x801F0AC4; // type:object size:0x1 scope:local data:byte +defaultItemTbl = .sdata:0x801F0AC5; // type:object size:0x5 scope:local +hostMdl = .sdata:0x801F0AD0; // type:object size:0x2 scope:local data:2byte +lotteryMot = .sdata:0x801F0AD2; // type:object size:0x8 scope:local data:2byte +lotterySpr = .sdata:0x801F0ADA; // type:object size:0x2 scope:local data:2byte +lotteryInstWin = .sdata:0x801F0ADC; // type:object size:0x2 scope:local data:2byte +gripMdl = .sdata:0x801F0ADE; // type:object size:0x4 scope:local data:2byte +turnMot = .sdata:0x801F0AE2; // type:object size:0x2 scope:local data:2byte +ballMdl = .sdata:0x801F0AE4; // type:object size:0x8 scope:local +loseMot = .sdata:0x801F0AEC; // type:object size:0x2 scope:local data:2byte +ticketSprGrp = .sdata:0x801F0AEE; // type:object size:0x2 data:2byte +warpSpringMdl = .sdata:0x801F0AF0; // type:object size:0x2 scope:local data:2byte +warpImpactMdl = .sdata:0x801F0AF2; // type:object size:0x2 scope:local data:2byte +warpImpactPlayer = .sdata:0x801F0AF4; // type:object size:0x4 scope:local +lbl_801F0AF8 = .sdata:0x801F0AF8; // type:object size:0x8 +wheelPos = .sdata:0x801F0B00; // type:object size:0x1 scope:local data:byte +wheelSprGrp = .sdata:0x801F0B02; // type:object size:0x2 scope:local data:2byte +wheelFXStat = .sdata:0x801F0B04; // type:object size:0x4 scope:local data:4byte +boxObj = .sdata:0x801F0B08; // type:object size:0x8 scope:local +itemMdl = .sdata:0x801F0B10; // type:object size:0x2 scope:local data:2byte +starParman = .sdata:0x801F0B18; // type:object size:0x2 scope:local data:2byte +hostMdl = .sdata:0x801F0B1A; // type:object size:0x2 scope:local data:2byte +diceMdl = .sdata:0x801F0B20; // type:object size:0x6 scope:local +diceEff = .sdata:0x801F0B26; // type:object size:0x6 scope:local +rollWin = .sdata:0x801F0B2C; // type:object size:0x2 scope:local data:2byte +lbl_801F0B2E = .sdata:0x801F0B2E; // type:object size:0x3 data:string +itemPickupMdlId = .sdata:0x801F0B38; // type:object size:0x2 scope:local data:2byte +yourTurnSprGrp = .sdata:0x801F0B3A; // type:object size:0x2 scope:local data:2byte +jumpMot = .sdata:0x801F0B40; // type:object size:0x2 scope:local data:2byte +starMdl = .sdata:0x801F0B42; // type:object size:0x2 scope:local data:2byte +itemMotTbl = .sdata:0x801F0B48; // type:object size:0x8 scope:local +lbl_801F0B50 = .sdata:0x801F0B50; // type:object size:0x8 +jumpMot = .sdata:0x801F0B58; // type:object size:0x2 scope:local data:2byte +scareMot = .sdata:0x801F0B5A; // type:object size:0x2 scope:local data:2byte +suitItemMdl = .sdata:0x801F0B5C; // type:object size:0x2 scope:local data:2byte +bowserMdl = .sdata:0x801F0B5E; // type:object size:0x2 scope:local data:2byte +lbl_801F0B60 = .sdata:0x801F0B60; // type:object size:0x3 data:string +lbl_801F0B63 = .sdata:0x801F0B63; // type:object size:0x8 data:string +lbl_801F0B70 = .sdata:0x801F0B70; // type:object size:0x8 +lbl_801F0B78 = .sdata:0x801F0B78; // type:object size:0x8 +ballMdlTbl = .sdata:0x801F0B80; // type:object size:0x8 scope:local +lbl_801F0B88 = .sdata:0x801F0B88; // type:object size:0x8 +luckyValue = .sdata:0x801F0B90; // type:object size:0x1 scope:local data:byte +cursorPos = .sdata:0x801F0B91; // type:object size:0x1 scope:local data:byte +houseShowMot = .sdata:0x801F0B98; // type:object size:0x2 scope:local data:2byte +houseHideMot = .sdata:0x801F0B9A; // type:object size:0x2 scope:local data:2byte +ballMdl = .sdata:0x801F0B9C; // type:object size:0x2 scope:local data:2byte +booMdl = .sdata:0x801F0B9E; // type:object size:0x2 scope:local data:2byte +smokeMdl = .sdata:0x801F0BA0; // type:object size:0x2 scope:local data:2byte +hostMdl = .sdata:0x801F0BA2; // type:object size:0x2 scope:local data:2byte +hostMot = .sdata:0x801F0BA4; // type:object size:0x6 scope:local data:2byte +lbl_801F0BAA = .sdata:0x801F0BAA; // type:object size:0x7 data:string +lbl_801F0BB1 = .sdata:0x801F0BB1; // type:object size:0x7 data:string +lbl_801F0BB8 = .sdata:0x801F0BB8; // type:object size:0x7 data:string +lbl_801F0BBF = .sdata:0x801F0BBF; // type:object size:0x7 data:string +lbl_801F0BC6 = .sdata:0x801F0BC6; // type:object size:0x7 data:string +lbl_801F0BCD = .sdata:0x801F0BCD; // type:object size:0x6 data:string +lbl_801F0BD3 = .sdata:0x801F0BD3; // type:object size:0x7 data:string +lbl_801F0BDA = .sdata:0x801F0BDA; // type:object size:0x6 data:string +lbl_801F0BE0 = .sdata:0x801F0BE0; // type:object size:0x3 data:string +logoSprGrp = .sdata:0x801F0BE8; // type:object size:0x2 scope:local data:2byte +logoSpr = .sdata:0x801F0BEA; // type:object size:0x2 scope:local data:2byte +camFocus = .sdata:0x801F0BEC; // type:object size:0x2 scope:local data:2byte +tapWin = .sdata:0x801F0BEE; // type:object size:0x2 scope:local data:2byte +streamStatus = .sdata:0x801F0BF0; // type:object size:0x4 scope:local data:4byte +tutorialRollTbl = .sdata:0x801F0BF4; // type:object size:0x4 scope:local +stopWin = .sdata:0x801F0BF8; // type:object size:0x2 scope:local data:2byte +wheelMdl = .sdata:0x801F0BFA; // type:object size:0x2 scope:local data:2byte +lbl_801D3854 = .sdata:0x801F0BFC; // type:object size:0x2 data:2byte +focusMdl = .sdata:0x801F0BFE; // type:object size:0x2 scope:local data:2byte +messBase = .sdata:0x801F0C00; // type:object size:0x4 scope:local data:4byte +lbl_801F0C04 = .sdata:0x801F0C04; // type:object size:0x6 data:string +lbl_801F0C0A = .sdata:0x801F0C0A; // type:object size:0x7 data:string +lbl_801F0C11 = .sdata:0x801F0C11; // type:object size:0x7 data:string +lbl_801F0C18 = .sdata:0x801F0C18; // type:object size:0x7 data:string +lbl_801F0C1F = .sdata:0x801F0C1F; // type:object size:0x5 data:string +lbl_801F0C24 = .sdata:0x801F0C24; // type:object size:0x6 data:string +lbl_801F0C2A = .sdata:0x801F0C2A; // type:object size:0x6 data:string +lbl_801F0C30 = .sdata:0x801F0C30; // type:object size:0x6 data:string +lbl_801F0C36 = .sdata:0x801F0C36; // type:object size:0x4 data:string +lbl_801F0C3A = .sdata:0x801F0C3A; // type:object size:0x5 data:string +lbl_801F0C3F = .sdata:0x801F0C3F; // type:object size:0x5 data:string +lbl_801F0C44 = .sdata:0x801F0C44; // type:object size:0xC +pausePad = .sdata:0x801F0C50; // type:object size:0x1 scope:local data:byte +pauseSprGrp = .sdata:0x801F0C52; // type:object size:0x2 scope:local data:2byte +padConfigSprGrp = .sdata:0x801F0C54; // type:object size:0x2 scope:local data:2byte +pauseCursorPos = .sdata:0x801F0C56; // type:object size:0x2 scope:local data:2byte +settingsControlWin = .sdata:0x801F0C58; // type:object size:0x2 scope:local data:2byte +controlWin = .sdata:0x801F0C5A; // type:object size:0x2 scope:local data:2byte +quitWin = .sdata:0x801F0C5C; // type:object size:0x2 scope:local data:2byte +settingsWin = .sdata:0x801F0C5E; // type:object size:0x2 scope:local data:2byte +__OSCurrHeap = .sdata:0x801F0C60; // type:object size:0x8 data:4byte +__OSArenaLo = .sdata:0x801F0C68; // type:object size:0x4 scope:local data:4byte +@32 = .sdata:0x801F0C70; // type:object size:0x2 scope:local data:string +lbl_801F0C78 = .sdata:0x801F0C78; // type:object size:0x8 data:2byte +lbl_801F0C80 = .sdata:0x801F0C80; // type:object size:0x8 +lbl_801F0C88 = .sdata:0x801F0C88; // type:object size:0x8 data:4byte +lbl_801F0C90 = .sdata:0x801F0C90; // type:object size:0x8 data:string +autoInvalidation = .sdata:0x801F0C98; // type:object size:0x4 scope:local data:4byte +@35 = .sdata:0x801F0CA0; // type:object size:0x2 scope:local data:string +@40 = .sdata:0x801F0CA4; // type:object size:0x4 scope:local data:string +@41 = .sdata:0x801F0CA8; // type:object size:0x3 scope:local data:string +lbl_801F0CB0 = .sdata:0x801F0CB0; // type:object size:0x8 data:string +lbl_801F0CB8 = .sdata:0x801F0CB8; // type:object size:0x8 data:byte +lbl_801F0CC0 = .sdata:0x801F0CC0; // type:object size:0x4 data:4byte +lbl_801F0CC4 = .sdata:0x801F0CC4; // type:object size:0x4 data:4byte +lbl_801F0CC8 = .sdata:0x801F0CC8; // type:object size:0x4 data:4byte +lbl_801F0CCC = .sdata:0x801F0CCC; // type:object size:0x4 data:4byte +lbl_801F0CD0 = .sdata:0x801F0CD0; // type:object size:0x4 data:4byte +lbl_801F0CD4 = .sdata:0x801F0CD4; // type:object size:0x4 +lbl_801F0CD8 = .sdata:0x801F0CD8; // type:object size:0x8 +gx = .sdata:0x801F0CE0; // type:object size:0x4 scope:global data:4byte +lbl_801F0CE8 = .sdata:0x801F0CE8; // type:object size:0x4 +lbl_801F0CEC = .sdata:0x801F0CEC; // type:object size:0x4 +lbl_801F0CF0 = .sdata:0x801F0CF0; // type:object size:0x8 +lbl_801F0CF8 = .sdata:0x801F0CF8; // type:object size:0x8 +lbl_801F0D00 = .sdata:0x801F0D00; // type:object size:0x8 +lbl_801F0D08 = .sdata:0x801F0D08; // type:object size:0x8 +lbl_801F0D10 = .sdata:0x801F0D10; // type:object size:0x8 +lbl_801F0D18 = .sdata:0x801F0D18; // type:object size:0x8 +lbl_801F0D20 = .sdata:0x801F0D20; // type:object size:0x8 +lbl_801F0D28 = .sdata:0x801F0D28; // type:object size:0x8 +lbl_801F0D30 = .sdata:0x801F0D30; // type:object size:0x8 +lbl_801F0D38 = .sdata:0x801F0D38; // type:object size:0x8 data:4byte +lbl_801F0D40 = .sdata:0x801F0D40; // type:object size:0x8 data:2byte +lbl_801F0D48 = .sdata:0x801F0D48; // type:object size:0x8 +lbl_801F0D50 = .sdata:0x801F0D50; // type:object size:0x4 data:4byte +lbl_801F0D54 = .sdata:0x801F0D54; // type:object size:0x4 data:4byte +fragmentID = .sdata:0x801F0D58; // type:object size:0x4 scope:local data:4byte +lbl_801F0D60 = .sdata:0x801F0D60; // type:object size:0x8 +lbl_801F0D68 = .sdata:0x801F0D68; // type:object size:0x8 +@wstringBase0 = .sdata:0x801F0D70; // type:object size:0x2 scope:local +lbl_801F0D78 = .sdata:0x801F0D78; // type:object size:0x4 data:float +lbl_801F0D7C = .sdata:0x801F0D7C; // type:object size:0x4 data:float +lbl_801F0D80 = .sdata:0x801F0D80; // type:object size:0x8 data:4byte +lbl_801F0D88 = .sdata:0x801F0D88; // type:object size:0x8 +lbl_801F0D90 = .sdata:0x801F0D90; // type:object size:0x8 +lbl_801F0D98 = .sdata:0x801F0D98; // type:object size:0x8 data:2byte +lbl_801F0DA0 = .sdata:0x801F0DA0; // type:object size:0x1 data:byte +SystemInitF = .sbss:0x801F0DC0; // type:object size:0x4 data:4byte +HuDvdErrWait = .sbss:0x801F0DC4; // type:object size:0x4 data:4byte +fi_req = .sbss:0x801F0DC8; // type:object size:0x4 scope:local +rf_req = .sbss:0x801F0DCC; // type:object size:0x4 scope:local +pe_req = .sbss:0x801F0DD0; // type:object size:0x4 scope:local +vi_req = .sbss:0x801F0DD4; // type:object size:0x4 scope:local +io_req = .sbss:0x801F0DD8; // type:object size:0x4 scope:local +dsp_req = .sbss:0x801F0DDC; // type:object size:0x4 scope:local +cpu_wr_req = .sbss:0x801F0DE0; // type:object size:0x4 scope:local +cpu_rd_req = .sbss:0x801F0DE4; // type:object size:0x4 scope:local +tc_req = .sbss:0x801F0DE8; // type:object size:0x4 scope:local +cp_req = .sbss:0x801F0DEC; // type:object size:0x4 scope:local +total_copy_clks = .sbss:0x801F0DF0; // type:object size:0x4 scope:local +clr_pixels_in = .sbss:0x801F0DF4; // type:object size:0x4 scope:local +bot_pixels_out = .sbss:0x801F0DF8; // type:object size:0x4 scope:local +bot_pixels_in = .sbss:0x801F0DFC; // type:object size:0x4 scope:local +top_pixels_out = .sbss:0x801F0E00; // type:object size:0x4 scope:local +top_pixels_in = .sbss:0x801F0E04; // type:object size:0x4 scope:local +vstall = .sbss:0x801F0E08; // type:object size:0x4 scope:local +vmiss = .sbss:0x801F0E0C; // type:object size:0x4 scope:local +vcheck = .sbss:0x801F0E10; // type:object size:0x4 scope:local +GlobalCounter = .sbss:0x801F0E14; // type:object size:0x4 data:4byte +VCounter = .sbss:0x801F0E18; // type:object size:0x4 data:4byte +RumbleBit = .sbss:0x801F0E1C; // type:object size:0x4 scope:local data:4byte +_PadErr = .sbss:0x801F0E20; // type:object size:0x4 scope:local +_PadDStkRepOld = .sbss:0x801F0E24; // type:object size:0x4 scope:local +_PadDStkRepCnt = .sbss:0x801F0E28; // type:object size:0x4 scope:local +_PadDStkRep = .sbss:0x801F0E2C; // type:object size:0x4 scope:local +_PadDStk = .sbss:0x801F0E30; // type:object size:0x4 scope:local +_PadTrigR = .sbss:0x801F0E34; // type:object size:0x4 scope:local +_PadTrigL = .sbss:0x801F0E38; // type:object size:0x4 scope:local +_PadSubStkY = .sbss:0x801F0E3C; // type:object size:0x4 scope:local +_PadSubStkX = .sbss:0x801F0E40; // type:object size:0x4 scope:local +_PadStkY = .sbss:0x801F0E44; // type:object size:0x4 scope:local +_PadStkX = .sbss:0x801F0E48; // type:object size:0x4 scope:local +_PadRepCnt = .sbss:0x801F0E4C; // type:object size:0x8 scope:local +_PadBtnDown = .sbss:0x801F0E54; // type:object size:0x8 +_PadBtn = .sbss:0x801F0E5C; // type:object size:0x8 +HuPadErr = .sbss:0x801F0E64; // type:object size:0x4 +HuPadDStkRep = .sbss:0x801F0E68; // type:object size:0x4 +HuPadDStk = .sbss:0x801F0E6C; // type:object size:0x4 +HuPadTrigR = .sbss:0x801F0E70; // type:object size:0x4 +HuPadTrigL = .sbss:0x801F0E74; // type:object size:0x4 +HuPadSubStkY = .sbss:0x801F0E78; // type:object size:0x4 +HuPadSubStkX = .sbss:0x801F0E7C; // type:object size:0x4 +HuPadStkY = .sbss:0x801F0E80; // type:object size:0x4 +HuPadStkX = .sbss:0x801F0E84; // type:object size:0x4 +HuPadBtnRep = .sbss:0x801F0E88; // type:object size:0x8 +HuPadBtnDown = .sbss:0x801F0E90; // type:object size:0x8 data:2byte +HuPadBtn = .sbss:0x801F0E98; // type:object size:0x8 +beforeDvdStatus = .sbss:0x801F0EA0; // type:object size:0x4 scope:local data:4byte +CallBackStatus = .sbss:0x801F0EA4; // type:object size:0x4 scope:local data:4byte +shortAccessSleep = .sbss:0x801F0EA8; // type:object size:0x4 scope:local data:4byte +DataDirMax = .sbss:0x801F0EAC; // type:object size:0x4 scope:local data:4byte +DirDataSize = .sbss:0x801F0EB0; // type:object size:0x8 data:4byte +DemoStatEnable = .sbss:0x801F0EB8; // type:object size:0x4 scope:local data:4byte +worstVcount = .sbss:0x801F0EBC; // type:object size:0x4 data:4byte +minimumVcountf = .sbss:0x801F0EC0; // type:object size:0x4 data:float +minimumVcount = .sbss:0x801F0EC4; // type:object size:0x4 data:4byte +DemoCurrentBuffer = .sbss:0x801F0EC8; // type:object size:0x4 data:4byte +DemoFrameBuffer2 = .sbss:0x801F0ECC; // type:object size:0x4 data:4byte +DemoFrameBuffer1 = .sbss:0x801F0ED0; // type:object size:0x4 data:4byte +DefaultFifoObj = .sbss:0x801F0ED4; // type:object size:0x4 scope:local data:4byte +DefaultFifo = .sbss:0x801F0ED8; // type:object size:0x4 scope:local data:4byte +currentHeapHandle = .sbss:0x801F0EDC; // type:object size:0x4 data:4byte +RenderMode = .sbss:0x801F0EE0; // type:object size:0x8 data:4byte +saftyFrameF = .sbss:0x801F0EE8; // type:object size:0x4 data:4byte +strlinecnt = .sbss:0x801F0EEC; // type:object size:0x2 data:2byte +empstrline = .sbss:0x801F0EEE; // type:object size:0x2 data:2byte +fontcolor = .sbss:0x801F0EF0; // type:object size:0x8 data:4byte +procfunc = .sbss:0x801F0EF8; // type:object size:0x4 data:4byte +processcnt = .sbss:0x801F0EFC; // type:object size:0x2 scope:local data:2byte +processcur = .sbss:0x801F0F00; // type:object size:0x4 scope:local data:4byte +processtop = .sbss:0x801F0F04; // type:object size:0x4 scope:local data:4byte +HuSprPauseF = .sbss:0x801F0F08; // type:object size:0x4 scope:local data:4byte +HuSprOrderNo = .sbss:0x801F0F0C; // type:object size:0x2 scope:local data:2byte +HuSprOrderNum = .sbss:0x801F0F0E; // type:object size:0x2 scope:local data:2byte +bmpCCIdx = .sbss:0x801F0F10; // type:object size:0x8 scope:local data:2byte +MaterialTop = .sbss:0x801F0F18; // type:object size:0x4 data:4byte +AttributeTop = .sbss:0x801F0F1C; // type:object size:0x4 data:4byte +ClusterTop = .sbss:0x801F0F20; // type:object size:0x4 data:4byte +vtxtop = .sbss:0x801F0F24; // type:object size:0x4 data:4byte +objtop = .sbss:0x801F0F28; // type:object size:0x4 data:4byte +NSymIndex = .sbss:0x801F0F2C; // type:object size:0x4 data:4byte +DicStringTable = .sbss:0x801F0F30; // type:object size:0x4 data:4byte +StringTable = .sbss:0x801F0F34; // type:object size:0x4 data:4byte +fileptr = .sbss:0x801F0F38; // type:object size:0x4 data:4byte +NormalDataTop = .sbss:0x801F0F3C; // type:object size:0x4 scope:local data:4byte +VertexDataTop = .sbss:0x801F0F40; // type:object size:0x4 scope:local data:4byte +MotionModel = .sbss:0x801F0F44; // type:object size:0x4 scope:local data:4byte +MotionOnly = .sbss:0x801F0F48; // type:object size:0x8 scope:local data:4byte +CancelTRXF = .sbss:0x801F0F50; // type:object size:0x4 scope:local data:4byte +TL32F = .sbss:0x801F0F54; // type:object size:0x4 scope:local data:4byte +PGName = .sbss:0x801F0F58; // type:object size:0x4 scope:local data:4byte +PGFinishF = .sbss:0x801F0F5C; // type:object size:0x4 scope:local data:4byte +polySize = .sbss:0x801F0F60; // type:object size:0x2 scope:local data:2byte +curModelID = .sbss:0x801F0F64; // type:object size:0x4 scope:local data:4byte +mallocNo = .sbss:0x801F0F68; // type:object size:0x4 scope:local data:4byte +totalSize = .sbss:0x801F0F6C; // type:object size:0x4 scope:local data:4byte +DLTotalNum = .sbss:0x801F0F70; // type:object size:0x4 scope:local data:4byte +faceNumBuf = .sbss:0x801F0F74; // type:object size:0x4 scope:local data:4byte +faceCnt = .sbss:0x801F0F78; // type:object size:0x2 scope:local data:2byte +quadCnt = .sbss:0x801F0F7A; // type:object size:0x2 scope:local data:2byte +triCnt = .sbss:0x801F0F7C; // type:object size:0x2 scope:local data:2byte +matChgCnt = .sbss:0x801F0F7E; // type:object size:0x2 scope:local data:2byte +DLFirstF = .sbss:0x801F0F80; // type:object size:0x4 scope:local data:4byte +modelObjNum = .sbss:0x801F0F84; // type:object size:0x2 data:2byte +modelMeshNum = .sbss:0x801F0F86; // type:object size:0x2 data:2byte +totalTexCacheCnted = .sbss:0x801F0F88; // type:object size:0x4 data:4byte +totalTexCacheCnt = .sbss:0x801F0F8C; // type:object size:0x4 data:4byte +totalTexCnted = .sbss:0x801F0F90; // type:object size:0x4 data:4byte +totalTexCnt = .sbss:0x801F0F94; // type:object size:0x4 data:4byte +totalMatCnted = .sbss:0x801F0F98; // type:object size:0x4 data:4byte +totalMatCnt = .sbss:0x801F0F9C; // type:object size:0x4 data:4byte +totalPolyCnted = .sbss:0x801F0FA0; // type:object size:0x4 data:4byte +totalPolyCnt = .sbss:0x801F0FA4; // type:object size:0x4 data:4byte +hookIdx = .sbss:0x801F0FA8; // type:object size:0x2 scope:local data:2byte +kColorIdx = .sbss:0x801F0FAC; // type:object size:0x4 scope:local data:4byte +kColor = .sbss:0x801F0FB0; // type:object size:0x4 scope:local data:byte +projectionMapNo = .sbss:0x801F0FB4; // type:object size:0x2 data:2byte +toonMapNo = .sbss:0x801F0FB6; // type:object size:0x2 scope:local data:2byte +shadowMapNo = .sbss:0x801F0FB8; // type:object size:0x2 scope:local data:2byte +attachMotionF = .sbss:0x801F0FBC; // type:object size:0x4 scope:local data:4byte +vtxModeBak = .sbss:0x801F0FC0; // type:object size:0x2 scope:local data:2byte +hiliteMapNo = .sbss:0x801F0FC2; // type:object size:0x2 scope:local data:2byte +reflectionMapNo = .sbss:0x801F0FC4; // type:object size:0x2 scope:local data:2byte +Hu3DObjInfoP = .sbss:0x801F0FC8; // type:object size:0x4 scope:local data:4byte +DrawObjIdx = .sbss:0x801F0FCC; // type:object size:0x2 scope:local data:2byte +lightBit = .sbss:0x801F0FCE; // type:object size:0x2 scope:local data:2byte +drawCnt = .sbss:0x801F0FD0; // type:object size:0x4 scope:local data:4byte +DrawData = .sbss:0x801F0FD4; // type:object size:0x4 scope:local data:4byte +DLBufStartP = .sbss:0x801F0FD8; // type:object size:0x4 scope:local data:4byte +DLBufP = .sbss:0x801F0FDC; // type:object size:0x4 scope:local data:4byte +shadingBak = .sbss:0x801F0FE0; // type:object size:0x4 scope:local data:4byte +polyTypeBak = .sbss:0x801F0FE4; // type:object size:0x1 scope:local data:byte +materialBak = .sbss:0x801F0FE8; // type:object size:0x4 scope:local data:4byte +MTXIdx = .sbss:0x801F0FEC; // type:object size:0x2 data:2byte +modelKillAllF = .sbss:0x801F0FF0; // type:object size:0x4 data:4byte +NoSyncF = .sbss:0x801F0FF4; // type:object size:0x2 scope:local data:2byte +Hu3DCameraExistF = .sbss:0x801F0FF6; // type:object size:0x2 data:2byte +Hu3DPauseF = .sbss:0x801F0FF8; // type:object size:0x2 data:2byte +Hu3DMallocNo = .sbss:0x801F0FFC; // type:object size:0x4 data:4byte +Hu3DCameraBit = .sbss:0x801F1000; // type:object size:0x2 data:2byte +Hu3DCameraNo = .sbss:0x801F1002; // type:object size:0x2 data:2byte +Hu3DProjectionNum = .sbss:0x801F1004; // type:object size:0x2 data:2byte +shadowModelDrawF = .sbss:0x801F1008; // type:object size:0x4 data:4byte +Hu3DShadowF = .sbss:0x801F100C; // type:object size:0x4 data:4byte +Hu3DShadowCamBit = .sbss:0x801F1010; // type:object size:0x2 data:2byte +toonAnim = .sbss:0x801F1014; // type:object size:0x4 data:4byte +reflectMapNo = .sbss:0x801F1018; // type:object size:0x2 data:2byte +BGColor = .sbss:0x801F101A; // type:object size:0x4 data:byte +bitMapPtr = .sbss:0x801F1020; // type:object size:0x4 scope:local data:4byte +metf = .sbss:0x801F1028; // type:object size:0x1 scope:local data:byte +tokenEndF = .sbss:0x801F102A; // type:object size:0x2 scope:local data:2byte +total_copy_clks = .sbss:0x801F102C; // type:object size:0x4 scope:local data:4byte +clr_pixels_in = .sbss:0x801F1030; // type:object size:0x4 scope:local +bot_pixels_out = .sbss:0x801F1034; // type:object size:0x4 scope:local +bot_pixels_in = .sbss:0x801F1038; // type:object size:0x4 scope:local +top_pixels_out = .sbss:0x801F103C; // type:object size:0x4 scope:local +top_pixels_in = .sbss:0x801F1040; // type:object size:0x4 scope:local +fi_req = .sbss:0x801F1044; // type:object size:0x4 scope:local +rf_req = .sbss:0x801F1048; // type:object size:0x4 scope:local +pe_req = .sbss:0x801F104C; // type:object size:0x4 scope:local +vi_req = .sbss:0x801F1050; // type:object size:0x4 scope:local +io_req = .sbss:0x801F1054; // type:object size:0x4 scope:local +dsp_req = .sbss:0x801F1058; // type:object size:0x4 scope:local +cpu_wr_req = .sbss:0x801F105C; // type:object size:0x4 scope:local +cpu_rd_req = .sbss:0x801F1060; // type:object size:0x4 scope:local +tc_req = .sbss:0x801F1064; // type:object size:0x4 scope:local +cp_req = .sbss:0x801F1068; // type:object size:0x4 scope:local +vstall = .sbss:0x801F106C; // type:object size:0x4 scope:local +vmiss = .sbss:0x801F1070; // type:object size:0x4 scope:local +vcheck = .sbss:0x801F1074; // type:object size:0x4 scope:local +met1 = .sbss:0x801F1078; // type:object size:0x4 scope:local +met0 = .sbss:0x801F107C; // type:object size:0x4 scope:local +omdispinfo = .sbss:0x801F1080; // type:object size:0x2 data:2byte +omSysExitReq = .sbss:0x801F1082; // type:object size:0x2 data:2byte +omUPauseFlag = .sbss:0x801F1084; // type:object size:0x1 data:byte +omnextovlstat = .sbss:0x801F1088; // type:object size:0x4 scope:local data:4byte +omovlstat = .sbss:0x801F108C; // type:object size:0x4 data:4byte +omnextovlevtno = .sbss:0x801F1090; // type:object size:0x4 scope:local data:4byte +omovlevtno = .sbss:0x801F1094; // type:object size:0x4 data:4byte +omovlhisidx = .sbss:0x801F1098; // type:object size:0x4 data:4byte +omcurdll = .sbss:0x801F109C; // type:object size:0x4 data:4byte +omcurovl = .sbss:0x801F10A0; // type:object size:0x4 data:4byte +omnextovl = .sbss:0x801F10A4; // type:object size:0x4 scope:local data:4byte +omwatchproc = .sbss:0x801F10A8; // type:object size:0x4 scope:local data:4byte +omDBGSysKeyObj = .sbss:0x801F10AC; // type:object size:0x4 data:4byte +y_start = .sbss:0x801F10B0; // type:object size:0x4 scope:local data:4byte +x_start = .sbss:0x801F10B4; // type:object size:0x4 scope:local data:4byte +Draw_Color = .sbss:0x801F10B8; // type:object size:0x3 scope:local data:byte +XFB_putc = .sbss:0x801F10BC; // type:object size:0x4 scope:local data:4byte +omDBGMenuButton = .sbss:0x801F10C0; // type:object size:0x2 +CZoom = .sbss:0x801F10C4; // type:object size:0x4 data:float +omDLLFileList = .sbss:0x801F10C8; // type:object size:0x8 scope:local data:4byte +frand_seed = .sbss:0x801F10D0; // type:object size:0x8 scope:local data:4byte +fadeStat = .sbss:0x801F10D8; // type:object size:0x1 data:byte +musicOffF = .sbss:0x801F10DC; // type:object size:0x4 data:4byte +Snd3DDistOffset = .sbss:0x801F10E0; // type:object size:0x4 data:float +Snd3DSpeedOffset = .sbss:0x801F10E4; // type:object size:0x4 data:float +Snd3DStartDisOffset = .sbss:0x801F10E8; // type:object size:0x4 data:float +Snd3DFrontSurDisOffset = .sbss:0x801F10EC; // type:object size:0x4 data:float +Snd3DBackSurDisOffset = .sbss:0x801F10F0; // type:object size:0x4 data:float +HuAuxBVol = .sbss:0x801F10F4; // type:object size:0x1 scope:local data:byte +HuAuxAVol = .sbss:0x801F10F5; // type:object size:0x1 scope:local data:byte +auxBNoBak = .sbss:0x801F10F8; // type:object size:0x4 scope:local data:4byte +auxANoBak = .sbss:0x801F10FC; // type:object size:0x4 scope:local data:4byte +sndGroupBak = .sbss:0x801F1100; // type:object size:0x2 scope:local data:2byte +Hu3DAudVol = .sbss:0x801F1102; // type:object size:0x2 scope:local data:2byte +Meshno = .sbss:0x801F1108; // type:object size:0x4 scope:local data:4byte +Meshcnt = .sbss:0x801F110C; // type:object size:0x4 scope:local data:4byte +normtop = .sbss:0x801F1110; // type:object size:0x4 scope:local data:4byte +normenv = .sbss:0x801F1114; // type:object size:0x4 scope:local data:4byte +vtxenv = .sbss:0x801F1118; // type:object size:0x4 scope:local data:4byte +CurHsf = .sbss:0x801F111C; // type:object size:0x4 scope:local data:4byte +objtop = .sbss:0x801F1120; // type:object size:0x4 scope:local data:4byte +nMesh = .sbss:0x801F1124; // type:object size:0x4 scope:local data:4byte +nObj = .sbss:0x801F1128; // type:object size:0x4 scope:local data:4byte +MtxTop = .sbss:0x801F112C; // type:object size:0x4 scope:local data:4byte +Vertextop = .sbss:0x801F1130; // type:object size:0x4 data:4byte +seqLanguage = .sbss:0x801F1138; // type:object size:0x4 scope:local data:4byte +pauseProcess = .sbss:0x801F113C; // type:object size:0x4 scope:local data:4byte +pauseActiveF = .sbss:0x801F1140; // type:object size:0x4 scope:local data:4byte +pauseExitF = .sbss:0x801F1144; // type:object size:0x4 scope:local data:4byte +pauseWaitF = .sbss:0x801F1148; // type:object size:0x4 scope:local data:4byte +seqRecordVal = .sbss:0x801F114C; // type:object size:0x4 scope:local data:4byte +seqPauseF = .sbss:0x801F1150; // type:object size:0x2 scope:local data:2byte +seqSpeed = .sbss:0x801F1152; // type:object size:0x2 scope:local data:2byte +lbl_801F1154 = .sbss:0x801F1154; // type:object size:0x1 data:byte +seqDoneF = .sbss:0x801F1155; // type:object size:0x1 scope:local data:byte +seqTimer = .sbss:0x801F1156; // type:object size:0x2 scope:local data:2byte +gid = .sbss:0x801F1158; // type:object size:0x2 scope:local data:2byte +lbl_801D3DA0 = .sbss:0x801F1160; // type:object size:0x8 +wipeFadeInF = .sbss:0x801F1168; // type:object size:0x8 data:4byte +fontAnim = .sbss:0x801F1170; // type:object size:0x4 data:4byte +LanguageNo = .sbss:0x801F1174; // type:object size:0x1 scope:local data:byte +comKeyIdx = .sbss:0x801F1176; // type:object size:0x2 scope:local data:2byte +comKeyIdxNow = .sbss:0x801F1178; // type:object size:0x2 scope:local data:2byte +mesCharCnt = .sbss:0x801F117A; // type:object size:0x2 scope:local data:2byte +cancelCRF = .sbss:0x801F117C; // type:object size:0x4 scope:local data:4byte +fontWidthP = .sbss:0x801F1180; // type:object size:0x4 scope:local data:4byte +winAMemP = .sbss:0x801F1184; // type:object size:0x4 scope:local data:4byte +winInsertF = .sbss:0x801F1188; // type:object size:0x1 scope:local data:byte +winTabSize = .sbss:0x801F1189; // type:object size:0x1 scope:local data:byte +winMaxHeight = .sbss:0x801F118A; // type:object size:0x2 scope:local data:2byte +winMaxWidth = .sbss:0x801F118C; // type:object size:0x2 scope:local data:2byte +messDataNo = .sbss:0x801F1190; // type:object size:0x4 scope:local data:4byte +messDataPtr = .sbss:0x801F1194; // type:object size:0x4 data:4byte +winProc = .sbss:0x801F1198; // type:object size:0x4 scope:local data:4byte +cardAnimB = .sbss:0x801F119C; // type:object size:0x4 scope:local data:4byte +cardAnimA = .sbss:0x801F11A0; // type:object size:0x4 scope:local data:4byte +cursorAnim = .sbss:0x801F11A4; // type:object size:0x4 scope:local data:4byte +iconAnim = .sbss:0x801F11A8; // type:object size:0x8 scope:local data:4byte +UnMountCnt = .sbss:0x801F11B0; // type:object size:0x1 data:byte +cardWork = .sbss:0x801F11B4; // type:object size:0x4 scope:local data:4byte +arqIdx = .sbss:0x801F11B8; // type:object size:0x2 scope:local data:2byte +arqCnt = .sbss:0x801F11BC; // type:object size:0x4 scope:local data:4byte +ARBase = .sbss:0x801F11C0; // type:object size:0x8 scope:local data:4byte +effectAMemP = .sbss:0x801F11C8; // type:object size:0x4 scope:local data:4byte +skipAnimUpdate = .sbss:0x801F11CC; // type:object size:0x4 scope:local data:4byte +CollisionCount = .sbss:0x801F11D0; // type:object size:0x4 data:4byte +topvtx = .sbss:0x801F11D4; // type:object size:0x4 scope:local data:4byte +AttrHsf = .sbss:0x801F11D8; // type:object size:0x4 scope:local data:4byte +HitFaceCount = .sbss:0x801F11DC; // type:object size:0x4 data:4byte +nChar = .sbss:0x801F11E0; // type:object size:0x4 +nMap = .sbss:0x801F11E4; // type:object size:0x4 data:4byte +AddZ = .sbss:0x801F11E8; // type:object size:0x4 data:float +AddX = .sbss:0x801F11EC; // type:object size:0x4 data:float +Initialized = .sbss:0x801F11F0; // type:object size:0x4 scope:local data:4byte +OldAIDCallback = .sbss:0x801F11F4; // type:object size:0x4 scope:local data:4byte +AudioSystem = .sbss:0x801F11F8; // type:object size:0x4 scope:local data:4byte +bufIdx = .sbss:0x801F11FC; // type:object size:0x4 scope:local data:4byte +CurAudioBuffer = .sbss:0x801F1200; // type:object size:0x4 scope:local data:4byte +LastAudioBuffer = .sbss:0x801F1204; // type:object size:0x4 scope:local data:4byte +SoundBufferIndex = .sbss:0x801F1208; // type:object size:0x4 scope:local data:4byte +THPProc = .sbss:0x801F1210; // type:object size:0x4 data:4byte +THPStart = .sbss:0x801F1214; // type:object size:0x2 scope:local data:2byte +THPFrame = .sbss:0x801F1218; // type:object size:0x4 scope:local data:4byte +THPStat = .sbss:0x801F121C; // type:object size:0x2 scope:local data:2byte +THPLoopF = .sbss:0x801F121E; // type:object size:0x2 scope:local data:2byte +decodeThread = .sbss:0x801F1220; // type:object size:0x4 scope:local data:4byte +decodeStackP = .sbss:0x801F1224; // type:object size:0x4 scope:local data:4byte +decodeRate = .sbss:0x801F1228; // type:object size:0x4 scope:local data:4byte +audioTrack = .sbss:0x801F122C; // type:object size:0x8 scope:local data:4byte +mgBoardHostEnableF = .sbss:0x801F1238; // type:object size:0x4 +mgInstExitEnableF = .sbss:0x801F123C; // type:object size:0x4 +mgPracticeEnableF = .sbss:0x801F1240; // type:object size:0x4 data:4byte +mgQuitExtraF = .sbss:0x801F1244; // type:object size:0x4 data:4byte +mgRecordExtra = .sbss:0x801F1248; // type:object size:0x4 +lbl_801D3E94 = .sbss:0x801F124C; // type:object size:0x2 +mgBattleStarMax = .sbss:0x801F124E; // type:object size:0x2 +mgBattleStar = .sbss:0x801F1250; // type:object size:0x8 +mgTypeCurr = .sbss:0x801F1258; // type:object size:0x2 +curSlotNo = .sbss:0x801F1260; // type:object size:0x2 data:2byte +curBoxNo = .sbss:0x801F1262; // type:object size:0x1 data:byte +saveExecF = .sbss:0x801F1264; // type:object size:0x4 +SLSerialNo = .sbss:0x801F1268; // type:object size:0x8 data:4byte +H_ResetReady = .sbss:0x801F1270; // type:object size:0x4 scope:local data:4byte +SR_RestartChk = .sbss:0x801F1274; // type:object size:0x4 scope:local data:4byte +SR_ExecReset = .sbss:0x801F1278; // type:object size:0x4 data:4byte +trychkBusyWait = .sbss:0x801F127C; // type:object size:0x4 scope:local data:4byte +XfbProg = .sbss:0x801F1280; // type:object size:0x4 scope:local data:4byte +XfbH = .sbss:0x801F1284; // type:object size:0x2 scope:local data:2byte +XfbW = .sbss:0x801F1286; // type:object size:0x2 scope:local data:2byte +boardMainProc = .sbss:0x801F1288; // type:object size:0x4 data:4byte +boardObjMan = .sbss:0x801F128C; // type:object size:0x4 data:4byte +cameraObj = .sbss:0x801F1290; // type:object size:0x4 scope:local data:4byte +tauntObj = .sbss:0x801F1294; // type:object size:0x4 scope:local data:4byte +cameraUseBackup = .sbss:0x801F1298; // type:object size:0x4 scope:local data:4byte +createFunc = .sbss:0x801F129C; // type:object size:0x4 scope:local data:4byte +destroyFunc = .sbss:0x801F12A0; // type:object size:0x4 scope:local data:4byte +boardLightSetHook = .sbss:0x801F12A4; // type:object size:0x4 data:4byte +boardLightResetHook = .sbss:0x801F12A8; // type:object size:0x4 data:4byte +boardTurnFunc = .sbss:0x801F12AC; // type:object size:0x4 data:4byte +boardStarGiveHook = .sbss:0x801F12B0; // type:object size:0x4 data:4byte +boardStarShowNextHook = .sbss:0x801F12B4; // type:object size:0x4 data:4byte +boardBowserHook = .sbss:0x801F12B8; // type:object size:0x4 data:4byte +boardTurnStartFunc = .sbss:0x801F12BC; // type:object size:0x4 data:4byte +filterObj = .sbss:0x801F12C0; // type:object size:0x4 scope:local data:4byte +confettiObj = .sbss:0x801F12C4; // type:object size:0x4 scope:local data:4byte +last5GfxObj = .sbss:0x801F12C8; // type:object size:0x4 scope:local data:4byte +boardRandSeed = .sbss:0x801F12CC; // type:object size:0x4 data:4byte +boardMainObj = .sbss:0x801F12D0; // type:object size:0x8 data:4byte +megaDoubleDiceF = .sbss:0x801F12D8; // type:object size:0x4 scope:local data:4byte +bowserSuitObj = .sbss:0x801F12DC; // type:object size:0x4 scope:local data:4byte +junctionMask = .sbss:0x801F12E0; // type:object size:0x4 scope:local data:4byte +junctionObj = .sbss:0x801F12E4; // type:object size:0x4 scope:local data:4byte +rollObj = .sbss:0x801F12E8; // type:object size:0x4 scope:local data:4byte +moveAwayObj = .sbss:0x801F12EC; // type:object size:0x4 scope:local data:4byte +junctionArrowRot = .sbss:0x801F12F0; // type:object size:0x8 scope:local +moveAwayPlayer = .sbss:0x801F12F8; // type:object size:0x4 scope:local data:byte +itemPrev = .sbss:0x801F12FC; // type:object size:0x1 scope:local data:byte +playerMot = .sbss:0x801F12FE; // type:object size:0x8 scope:local +boardPlayerMdl = .sbss:0x801F1306; // type:object size:0x8 +modelDataList = .sbss:0x801F1310; // type:object size:0x4 scope:local data:4byte +modelMgrObj = .sbss:0x801F1314; // type:object size:0x4 scope:local data:4byte +modelDataNum = .sbss:0x801F1318; // type:object size:0x2 scope:local data:2byte +winProc = .sbss:0x801F1320; // type:object size:0x4 scope:local data:4byte +comKeyFunc = .sbss:0x801F1324; // type:object size:0x4 scope:local data:4byte +lbl_801D3F70 = .sbss:0x801F1328; // type:object size:0x8 scope:local data:float +winAttr = .sbss:0x801F1330; // type:object size:0x4 scope:local data:4byte +winMess = .sbss:0x801F1334; // type:object size:0x4 scope:local data:4byte +defaultChoice = .sbss:0x801F1338; // type:object size:0x2 scope:local data:2byte +messSpeed = .sbss:0x801F133A; // type:object size:0x2 scope:local data:2byte +winPrio = .sbss:0x801F133C; // type:object size:0x2 scope:local data:2byte +winWait = .sbss:0x801F133E; // type:object size:0x1 scope:local data:byte +winPause = .sbss:0x801F133F; // type:object size:0x1 scope:local data:byte +disablePlayer = .sbss:0x801F1340; // type:object size:0x1 scope:local data:byte +winPosIdx = .sbss:0x801F1341; // type:object size:0x1 scope:local data:byte +winPortrait = .sbss:0x801F1342; // type:object size:0x1 scope:local data:byte +autoPickF = .sbss:0x801F1343; // type:object size:0x1 scope:local data:byte +winChoice = .sbss:0x801F1344; // type:object size:0x1 scope:local data:byte +boardSeq = .sbss:0x801F1348; // type:object size:0x8 scope:local +viewProc = .sbss:0x801F1350; // type:object size:0x4 scope:local data:4byte +pauseDisableF = .sbss:0x801F1354; // type:object size:0x1 scope:local data:byte +overheadObj = .sbss:0x801F1358; // type:object size:0x4 scope:local data:4byte +focusTimer = .sbss:0x801F135C; // type:object size:0x2 scope:local data:2byte +focusDestroyF = .sbss:0x801F135E; // type:object size:0x1 scope:local data:byte +viewMoveF = .sbss:0x801F135F; // type:object size:0x1 scope:local data:byte +viewPlayer = .sbss:0x801F1360; // type:object size:0x1 scope:local data:byte +viewControls = .sbss:0x801F1361; // type:object size:0x1 scope:local data:byte +spaceDrawF = .sbss:0x801F1368; // type:object size:0x2 scope:local data:2byte +spaceDrawCnt = .sbss:0x801F136C; // type:object size:0x4 scope:local data:4byte +walkEventFunc = .sbss:0x801F1370; // type:object size:0x4 scope:local data:4byte +walkMiniEventFunc = .sbss:0x801F1374; // type:object size:0x4 scope:local data:4byte +landEventFunc = .sbss:0x801F1378; // type:object size:0x4 scope:local data:4byte +lbl_801D3FC4 = .sbss:0x801F137C; // type:object size:0x8 data:2byte +spaceHiliteTexFmt = .sbss:0x801F1384; // type:object size:0x4 scope:local data:4byte +spaceTexFmt = .sbss:0x801F1388; // type:object size:0x4 scope:local data:4byte +spaceHiliteTexData = .sbss:0x801F138C; // type:object size:0x4 scope:local data:4byte +spaceTexData = .sbss:0x801F1390; // type:object size:0x4 scope:local data:4byte +spaceAttr = .sbss:0x801F1394; // type:object size:0x8 scope:local data:4byte +spaceCnt = .sbss:0x801F139C; // type:object size:0x4 scope:local data:2byte +shopProc = .sbss:0x801F13A0; // type:object size:0x4 scope:local data:4byte +shopWinObj = .sbss:0x801F13A4; // type:object size:0x4 scope:local data:4byte +itemGiveObj = .sbss:0x801F13A8; // type:object size:0x4 scope:local data:4byte +itemChoiceObj = .sbss:0x801F13AC; // type:object size:0x4 scope:local data:4byte +comF = .sbss:0x801F13B0; // type:object size:0x4 scope:local data:4byte +angleVal = .sbss:0x801F13B4; // type:object size:0x2 scope:local data:2byte +shopPlayer = .sbss:0x801F13B6; // type:object size:0x1 scope:local data:byte +shopMdlPtr = .sbss:0x801F13B8; // type:object size:0x4 scope:local data:4byte +shopMdlIdx = .sbss:0x801F13BC; // type:object size:0x4 scope:local +lotteryProc = .sbss:0x801F13C0; // type:object size:0x4 scope:local data:4byte +comInputDrawP = .sbss:0x801F13C4; // type:object size:0x4 scope:local data:4byte +lotteryTicketPickObj = .sbss:0x801F13C8; // type:object size:0x4 scope:local data:4byte +handUpdateF = .sbss:0x801F13CC; // type:object size:0x4 scope:local data:4byte +comInputPos = .sbss:0x801F13D0; // type:object size:0x1 scope:local data:byte +comLotteryWinType = .sbss:0x801F13D1; // type:object size:0x1 scope:local data:byte +comLotteryType = .sbss:0x801F13D2; // type:object size:0x1 scope:local data:byte +lbl_801D401B = .sbss:0x801F13D3; // type:object size:0x1 scope:local data:byte +currPrize = .sbss:0x801F13D4; // type:object size:0x1 scope:local data:byte +lotterySpace = .sbss:0x801F13D6; // type:object size:0x2 scope:local data:2byte +lotteryMessBase = .sbss:0x801F13D8; // type:object size:0x4 scope:local data:4byte +warpProcess = .sbss:0x801F13E0; // type:object size:0x4 scope:local data:4byte +warpYVel = .sbss:0x801F13E4; // type:object size:0x4 scope:local data:float +warpYFloor = .sbss:0x801F13E8; // type:object size:0x4 scope:local data:float +warpSpace = .sbss:0x801F13EC; // type:object size:0x2 scope:local data:2byte +warpImpactCnt = .sbss:0x801F13EE; // type:object size:0x1 scope:local data:byte +warpTarget = .sbss:0x801F13EF; // type:object size:0x1 scope:local data:byte +warpState = .sbss:0x801F13F0; // type:object size:0x1 scope:local data:byte +charWheelObj = .sbss:0x801F13F8; // type:object size:0x4 scope:local data:4byte +targetF = .sbss:0x801F13FC; // type:object size:0x2 scope:local data:2byte +angleOfs = .sbss:0x801F1400; // type:object size:0x4 scope:local data:float +targetVal = .sbss:0x801F1404; // type:object size:0x2 scope:local data:2byte +wheelSpeed = .sbss:0x801F1408; // type:object size:0x4 scope:local data:float +wheelTimer = .sbss:0x801F140C; // type:object size:0x2 scope:local data:2byte +comDelay = .sbss:0x801F140E; // type:object size:0x2 scope:local data:2byte +wheelChars = .sbss:0x801F1410; // type:object size:0x4 scope:local data:byte +mushroomProc = .sbss:0x801F1418; // type:object size:0x4 scope:local data:4byte +itemGiveObj = .sbss:0x801F141C; // type:object size:0x4 scope:local data:4byte +pickerChoice = .sbss:0x801F1420; // type:object size:0x1 scope:local data:byte +itemResult = .sbss:0x801F1421; // type:object size:0x1 scope:local data:byte +starProc = .sbss:0x801F1428; // type:object size:0x4 scope:local data:4byte +giveStarObj = .sbss:0x801F142C; // type:object size:0x4 scope:local data:4byte +starEffAnim = .sbss:0x801F1430; // type:object size:0x4 scope:local data:4byte +starDoneF = .sbss:0x801F1434; // type:object size:0x2 scope:local data:2byte +showNextObj = .sbss:0x801F1438; // type:object size:0x4 scope:local data:4byte +hostMot = .sbss:0x801F143C; // type:object size:0x4 scope:local data:2byte +rollProc = .sbss:0x801F1440; // type:object size:0x4 scope:local data:4byte +tutorialRollF = .sbss:0x801F1444; // type:object size:0x1 scope:local data:byte +sameRollCoinStr = .sbss:0x801F1445; // type:object size:0x8 scope:local +lbl_801D4098 = .sbss:0x801F1450; // type:object size:0x4 data:4byte +diceSize = .sbss:0x801F1454; // type:object size:0x1 scope:local data:byte +destMode = .sbss:0x801F1455; // type:object size:0x1 scope:local data:byte +maxRoll = .sbss:0x801F1456; // type:object size:0x1 scope:local data:byte +inputTimer = .sbss:0x801F1457; // type:object size:0x1 scope:local data:byte +numDice = .sbss:0x801F1458; // type:object size:0x1 scope:local data:byte +rollPlayer = .sbss:0x801F1459; // type:object size:0x1 scope:local data:byte +diceValue = .sbss:0x801F145A; // type:object size:0x3 scope:local data:byte +statusProc = .sbss:0x801F1460; // type:object size:0x4 scope:local data:4byte +itemWindowObj = .sbss:0x801F1464; // type:object size:0x4 scope:local data:4byte +pickerObj = .sbss:0x801F1468; // type:object size:0x4 scope:local data:4byte +yourTurnObj = .sbss:0x801F146C; // type:object size:0x4 scope:local data:4byte +itemUseProc = .sbss:0x801F1470; // type:object size:0x4 scope:local data:4byte +itemPickObj = .sbss:0x801F1474; // type:object size:0x4 scope:local data:4byte +itemPickupPos = .sbss:0x801F1478; // type:object size:0x4 scope:local data:float +itemRandTbl = .sbss:0x801F147C; // type:object size:0x6 scope:local +teamItemPlayer = .sbss:0x801F1482; // type:object size:0x1 scope:local data:byte +itemUsed = .sbss:0x801F1483; // type:object size:0x1 scope:local data:byte +itemPlayer = .sbss:0x801F1484; // type:object size:0x1 scope:local data:byte +yourTurnSpr = .sbss:0x801F1486; // type:object size:0x2 scope:local data:2byte +lbl_801D40D0 = .sbss:0x801F1488; // type:object size:0x4 data:2byte +pickerBackF = .sbss:0x801F148C; // type:object size:0x4 scope:local data:4byte +pickerChoiceDefault = .sbss:0x801F1490; // type:object size:0x1 scope:local data:byte +pickerChoice = .sbss:0x801F1491; // type:object size:0x1 scope:local data:byte +boardItemUser = .sbss:0x801F1492; // type:object size:0x1 data:byte +itemTeamF = .sbss:0x801F1493; // type:object size:0x1 scope:local data:byte +itemTeam = .sbss:0x801F1494; // type:object size:0x1 scope:local data:byte +blockProc = .sbss:0x801F1498; // type:object size:0x4 scope:local data:4byte +blockObj = .sbss:0x801F149C; // type:object size:0x4 scope:local data:4byte +rotY = .sbss:0x801F14A0; // type:object size:0x4 scope:local data:float +scaleAngle = .sbss:0x801F14A4; // type:object size:0x4 scope:local data:float +rotMax = .sbss:0x801F14A8; // type:object size:0x4 scope:local data:float +itemProc = .sbss:0x801F14B0; // type:object size:0x4 scope:local data:4byte +geniePlayerMot = .sbss:0x801F14B4; // type:object size:0x6 scope:local data:2byte +genieParticleAnim = .sbss:0x801F14BC; // type:object size:0x4 scope:local data:4byte +genieFov = .sbss:0x801F14C0; // type:object size:0x4 scope:local data:float +booCoinStr = .sbss:0x801F14C4; // type:object size:0x8 scope:local +booBallAlpha = .sbss:0x801F14CC; // type:object size:0x4 scope:local data:float +booBallMdl = .sbss:0x801F14D0; // type:object size:0x2 scope:local data:2byte +suitCommonMot = .sbss:0x801F14D4; // type:object size:0x8 scope:local data:4byte +suitMot = .sbss:0x801F14DC; // type:object size:0x8 scope:local data:4byte +suitMdl = .sbss:0x801F14E4; // type:object size:0x2 scope:local data:2byte +currItem = .sbss:0x801F14E6; // type:object size:0x1 scope:local data:byte +currItemRestore = .sbss:0x801F14E7; // type:object size:0x1 scope:local data:byte +itemBagItems = .sbss:0x801F14E8; // type:object size:0x6 scope:local +bowserProc = .sbss:0x801F14F0; // type:object size:0x4 scope:local data:4byte +bowserObj = .sbss:0x801F14F4; // type:object size:0x4 scope:local data:4byte +miniBowserObj = .sbss:0x801F14F8; // type:object size:0x4 scope:local data:4byte +bowserEventObj = .sbss:0x801F14FC; // type:object size:0x4 scope:local data:4byte +miniBowserBalloonObj = .sbss:0x801F1500; // type:object size:0x4 scope:local data:4byte +suitGiveObj = .sbss:0x801F1504; // type:object size:0x4 scope:local data:4byte +coinStealStr = .sbss:0x801F1508; // type:object size:0x8 scope:local +coinStealStrAll = .sbss:0x801F1510; // type:object size:0x8 scope:local +fireAnim = .sbss:0x801F1518; // type:object size:0x4 scope:local data:4byte +fireParMan = .sbss:0x801F151C; // type:object size:0x2 scope:local data:2byte +playerMot = .sbss:0x801F151E; // type:object size:0x8 scope:local data:2byte +eventSpace = .sbss:0x801F1526; // type:object size:0x2 scope:local data:2byte +eventType = .sbss:0x801F1528; // type:object size:0x1 scope:local data:byte +eventPlayer = .sbss:0x801F1529; // type:object size:0x1 scope:local data:byte +battleProc = .sbss:0x801F1530; // type:object size:0x4 scope:local data:4byte +battleObj = .sbss:0x801F1534; // type:object size:0x4 scope:local data:4byte +explodeObj = .sbss:0x801F1538; // type:object size:0x4 scope:local data:4byte +battleCoinPosF = .sbss:0x801F153C; // type:object size:0x4 scope:local data:float +battleCoinSpeed = .sbss:0x801F1540; // type:object size:0x4 scope:local data:float +totalCoinStr = .sbss:0x801F1544; // type:object size:0x8 scope:local +battleMGIdx = .sbss:0x801F154C; // type:object size:0x2 scope:local data:byte +battleCoinIdx = .sbss:0x801F154E; // type:object size:0x1 scope:local data:byte +currSpace = .sbss:0x801F1550; // type:object size:0x2 scope:local data:2byte +mgChoice = .sbss:0x801F1552; // type:object size:0x1 scope:local data:byte +coinTakeMax = .sbss:0x801F1553; // type:object size:0x1 scope:local data:byte +currPlayer = .sbss:0x801F1554; // type:object size:0x1 scope:local data:byte +fortuneProc = .sbss:0x801F1558; // type:object size:0x4 scope:local data:4byte +fortunePlatformObj = .sbss:0x801F155C; // type:object size:0x4 scope:local data:4byte +comStar = .sbss:0x801F1560; // type:object size:0x1 scope:local data:byte +comCoin = .sbss:0x801F1561; // type:object size:0x1 scope:local data:byte +comPrize = .sbss:0x801F1562; // type:object size:0x1 scope:local data:byte +comPlayer1 = .sbss:0x801F1563; // type:object size:0x1 scope:local data:byte +comPlayer2 = .sbss:0x801F1564; // type:object size:0x1 scope:local data:byte +currPlayer = .sbss:0x801F1565; // type:object size:0x1 scope:local data:byte +booEventObj = .sbss:0x801F1568; // type:object size:0x4 scope:local data:4byte +ballObj = .sbss:0x801F156C; // type:object size:0x4 scope:local data:4byte +ballCameraObj = .sbss:0x801F1570; // type:object size:0x4 scope:local data:4byte +ballBooObj = .sbss:0x801F1574; // type:object size:0x4 scope:local data:4byte +ballPlayerObj = .sbss:0x801F1578; // type:object size:0x4 scope:local data:4byte +ballTakeCoinObj = .sbss:0x801F157C; // type:object size:0x4 scope:local data:4byte +attackTimer = .sbss:0x801F1580; // type:object size:0x4 scope:local data:4byte +battleTimer = .sbss:0x801F1584; // type:object size:0x4 scope:local data:4byte +starChoiceEnable = .sbss:0x801F1588; // type:object size:0x3 scope:local +stealAvail = .sbss:0x801F158B; // type:object size:0x3 scope:local +punchCount = .sbss:0x801F158E; // type:object size:0x1 scope:local data:byte +stealSuccess = .sbss:0x801F158F; // type:object size:0x1 scope:local data:byte +stealValue = .sbss:0x801F1590; // type:object size:0x1 scope:local data:byte +booKillF = .sbss:0x801F1594; // type:object size:0x4 scope:local data:4byte +stealType = .sbss:0x801F1598; // type:object size:0x1 scope:local data:byte +stealTarget = .sbss:0x801F1599; // type:object size:0x1 scope:local data:byte +lbl_801D41E2 = .sbss:0x801F159A; // type:object size:0x1 data:byte +mgSetupProc = .sbss:0x801F15A0; // type:object size:0x4 scope:local data:4byte +mgSetupObj = .sbss:0x801F15A4; // type:object size:0x4 scope:local data:4byte +hiliteShowF = .sbss:0x801F15A8; // type:object size:0x1 scope:local data:byte +hiliteBlinkLen = .sbss:0x801F15A9; // type:object size:0x1 scope:local data:byte +hiliteTimer = .sbss:0x801F15AA; // type:object size:0x1 scope:local data:byte +mgPlayBattle = .sbss:0x801F15AC; // type:object size:0x4 scope:local +mgPlay2Vs2 = .sbss:0x801F15B0; // type:object size:0x6 scope:local +mgPlay1Vs3 = .sbss:0x801F15B6; // type:object size:0x6 scope:local +mgPlayBattleLen = .sbss:0x801F15BC; // type:object size:0x1 scope:local data:byte +mgPlay2Vs2Len = .sbss:0x801F15BD; // type:object size:0x1 scope:local data:byte +mgPlay1Vs3Len = .sbss:0x801F15BE; // type:object size:0x1 scope:local data:byte +mgPlay4PLen = .sbss:0x801F15BF; // type:object size:0x1 scope:local data:byte +mgNext = .sbss:0x801F15C0; // type:object size:0x2 scope:local data:2byte +hilitePos = .sbss:0x801F15C4; // type:object size:0x4 scope:local data:float +luckyF = .sbss:0x801F15C8; // type:object size:0x4 scope:local data:4byte +mgType = .sbss:0x801F15CC; // type:object size:0x1 scope:local data:byte +houseProc = .sbss:0x801F15D0; // type:object size:0x4 scope:local data:4byte +stealAmountStr = .sbss:0x801F15D4; // type:object size:0x8 scope:local +comCoinStealTarget = .sbss:0x801F15DC; // type:object size:0x4 scope:local data:4byte +comStarStealTarget = .sbss:0x801F15E0; // type:object size:0x1 scope:local data:byte +stealTarget = .sbss:0x801F15E1; // type:object size:0x1 scope:local data:byte +currPlayer = .sbss:0x801F15E2; // type:object size:0x1 scope:local data:byte +startProc = .sbss:0x801F15E8; // type:object size:0x4 scope:local data:4byte +playerOrderOld = .sbss:0x801F15EC; // type:object size:0x4 scope:local +playerOrderNew = .sbss:0x801F15F0; // type:object size:0x4 scope:local +startSpace = .sbss:0x801F15F4; // type:object size:0x2 scope:local data:2byte +hostMdl = .sbss:0x801F15F6; // type:object size:0x2 scope:local data:2byte +lotteryDrawWheelObj = .sbss:0x801F15F8; // type:object size:0x4 scope:local data:4byte +lotteryDrawObj = .sbss:0x801F15FC; // type:object size:0x4 scope:local data:4byte +hostMoveObj = .sbss:0x801F1600; // type:object size:0x4 scope:local data:4byte +teamResultObj = .sbss:0x801F1604; // type:object size:0x4 scope:local data:4byte +last5Proc = .sbss:0x801F1608; // type:object size:0x4 scope:local data:4byte +last5RouletteObj = .sbss:0x801F160C; // type:object size:0x4 scope:local data:4byte +hostMdl = .sbss:0x801F1610; // type:object size:0x2 scope:local data:2byte +last5Space = .sbss:0x801F1612; // type:object size:0x2 scope:local data:2byte +last5Player = .sbss:0x801F1614; // type:object size:0x1 scope:local data:byte +numTickets = .sbss:0x801F1615; // type:object size:0x1 scope:local data:byte +currTicket = .sbss:0x801F1616; // type:object size:0x1 scope:local data:byte +mainProcess = .sbss:0x801F1618; // type:object size:0x4 scope:local data:4byte +quitProcess = .sbss:0x801F161C; // type:object size:0x4 scope:local data:4byte +configObj = .sbss:0x801F1620; // type:object size:0x4 scope:local data:4byte +boxState = .sbss:0x801F1624; // type:object size:0x8 scope:local +cursorPos = .sbss:0x801F162C; // type:object size:0x1 scope:local data:byte +hostMdl = .sbss:0x801F162E; // type:object size:0x2 scope:local data:2byte +hostOldLayer = .sbss:0x801F1630; // type:object size:0x1 scope:local data:byte +mainScreenF = .sbss:0x801F1631; // type:object size:0x1 scope:local data:byte +pauseQuitF = .sbss:0x801F1632; // type:object size:0x1 scope:local data:byte +childNodeCnt = .sbss:0x801F1638; // type:object size:0x2 scope:local data:2byte +numCandidates = .sbss:0x801F163A; // type:object size:0x2 scope:local data:2byte +gameStatCopy = .sbss:0x801F1640; // type:object size:0x4 scope:local data:4byte +systemCopy = .sbss:0x801F1644; // type:object size:0x4 scope:local data:4byte +playerCopy = .sbss:0x801F1648; // type:object size:0x4 scope:local data:4byte +playerCfgCopy = .sbss:0x801F164C; // type:object size:0x4 scope:local data:4byte +tutorialProcess = .sbss:0x801F1650; // type:object size:0x4 scope:local data:4byte +boardTutorialF = .sbss:0x801F1654; // type:object size:0x1 data:byte +hostMdl = .sbss:0x801F1656; // type:object size:0x2 scope:local data:2byte +boardTutorialUseItem = .sbss:0x801F1658; // type:object size:0x1 data:byte +boardTutorialBlockF = .sbss:0x801F1659; // type:object size:0x1 data:byte +boardTutorialBlockItem = .sbss:0x801F165A; // type:object size:0x1 data:byte +boardTutorialBlockPos = .sbss:0x801F165C; // type:object size:0x4 data:4byte +boardTutorialDirInputTime = .sbss:0x801F1660; // type:object size:0x2 data:2byte +boardTutorialDirInputY = .sbss:0x801F1662; // type:object size:0x1 data:byte +boardTutorialDirInputX = .sbss:0x801F1663; // type:object size:0x1 data:byte +tutorialHook = .sbss:0x801F1664; // type:object size:0x4 scope:local data:4byte +BootInfo = .sbss:0x801F1668; // type:object size:0x4 scope:local data:4byte +BI2DebugFlag = .sbss:0x801F166C; // type:object size:0x4 scope:local data:4byte +BI2DebugFlagHolder = .sbss:0x801F1670; // type:object size:0x4 scope:local data:4byte +__OSIsGcam = .sbss:0x801F1674; // type:object size:0x4 scope:global data:4byte +AreWeInitialized = .sbss:0x801F1678; // type:object size:0x4 scope:local data:4byte +OSExceptionTable = .sbss:0x801F167C; // type:object size:0x4 scope:local data:4byte +__OSSavedRegionEnd = .sbss:0x801F1680; // type:object size:0x4 scope:global data:4byte +__OSSavedRegionStart = .sbss:0x801F1684; // type:object size:0x4 scope:global data:4byte +__OSInIPL = .sbss:0x801F1688; // type:object size:0x4 scope:global data:4byte +__OSStartTime = .sbss:0x801F1690; // type:object size:0x8 scope:global data:4byte +AlarmQueue = .sbss:0x801F1698; // type:object size:0x8 scope:local data:4byte +lbl_801F16A0 = .sbss:0x801F16A0; // type:object size:0x4 data:4byte +lbl_801F16A4 = .sbss:0x801F16A4; // type:object size:0x4 data:4byte +lbl_801F16A8 = .sbss:0x801F16A8; // type:object size:0x4 data:4byte +lbl_801F16AC = .sbss:0x801F16AC; // type:object size:0x4 data:4byte +__OSArenaHi = .sbss:0x801F16B0; // type:object size:0x4 scope:local data:4byte +InterruptHandlerTable = .sbss:0x801F16B8; // type:object size:0x4 scope:local data:4byte +__OSLastInterruptSrr0 = .sbss:0x801F16BC; // type:object size:0x4 scope:global data:4byte +__OSLastInterrupt = .sbss:0x801F16C0; // type:object size:0x2 scope:global data:2byte +__OSLastInterruptTime = .sbss:0x801F16C8; // type:object size:0x8 scope:global data:4byte +lbl_801F16D0 = .sbss:0x801F16D0; // type:object size:0x4 data:4byte +lbl_801F16D4 = .sbss:0x801F16D4; // type:object size:0x4 data:4byte +lbl_801F16D8 = .sbss:0x801F16D8; // type:object size:0x8 data:4byte +ResetFunctionQueue = .sbss:0x801F16E0; // type:object size:0x8 scope:local data:4byte +lbl_801F16E8 = .sbss:0x801F16E8; // type:object size:0x4 data:4byte +lbl_801F16EC = .sbss:0x801F16EC; // type:object size:0x4 data:4byte +lbl_801F16F0 = .sbss:0x801F16F0; // type:object size:0x8 data:4byte +lbl_801F16F8 = .sbss:0x801F16F8; // type:object size:0x4 data:4byte +lbl_801F16FC = .sbss:0x801F16FC; // type:object size:0x4 data:4byte +lbl_801F1700 = .sbss:0x801F1700; // type:object size:0x4 data:4byte +lbl_801F1704 = .sbss:0x801F1704; // type:object size:0x4 data:4byte +RunQueueBits = .sbss:0x801F1708; // type:object size:0x4 scope:local data:4byte +RunQueueHint = .sbss:0x801F170C; // type:object size:0x4 scope:local data:4byte +Reschedule = .sbss:0x801F1710; // type:object size:0x4 scope:local data:4byte +__DBInterface = .sbss:0x801F1718; // type:object size:0x4 scope:global data:4byte +DBVerbose = .sbss:0x801F171C; // type:object size:0x4 scope:global data:4byte +StopAtNextInt = .sbss:0x801F1720; // type:object size:0x4 scope:local data:4byte +lbl_801F1724 = .sbss:0x801F1724; // type:object size:0x4 data:4byte +Callback = .sbss:0x801F1728; // type:object size:0x4 scope:local data:4byte +lbl_801F172C = .sbss:0x801F172C; // type:object size:0x4 data:4byte +LastResetEnd = .sbss:0x801F1730; // type:object size:0x8 scope:local data:4byte +ResetOccurred = .sbss:0x801F1738; // type:object size:0x4 scope:local data:4byte +WaitingCoverClose = .sbss:0x801F173C; // type:object size:0x4 scope:local data:4byte +lbl_801F1740 = .sbss:0x801F1740; // type:object size:0x4 data:4byte +WorkAroundType = .sbss:0x801F1744; // type:object size:0x4 scope:local data:4byte +WorkAroundSeekLocation = .sbss:0x801F1748; // type:object size:0x4 scope:local data:4byte +lbl_801F1750 = .sbss:0x801F1750; // type:object size:0x4 data:4byte +lbl_801F1754 = .sbss:0x801F1754; // type:object size:0x4 data:4byte +lbl_801F1758 = .sbss:0x801F1758; // type:object size:0x4 data:4byte +lbl_801F175C = .sbss:0x801F175C; // type:object size:0x4 data:4byte +lbl_801F1760 = .sbss:0x801F1760; // type:object size:0x4 data:4byte +NextCommandNumber = .sbss:0x801F1764; // type:object size:0x4 scope:local data:4byte +BootInfo = .sbss:0x801F1768; // type:object size:0x4 scope:local data:4byte +FstStart = .sbss:0x801F176C; // type:object size:0x4 scope:local data:4byte +FstStringStart = .sbss:0x801F1770; // type:object size:0x4 scope:local data:4byte +MaxEntryNum = .sbss:0x801F1774; // type:object size:0x4 scope:local data:4byte +lbl_801F1778 = .sbss:0x801F1778; // type:object size:0x4 data:4byte +__DVDLongFileNameFlag = .sbss:0x801F177C; // type:object size:0x4 scope:global data:4byte +__DVDThreadQueue = .sbss:0x801F1780; // type:object size:0x8 scope:global +executing = .sbss:0x801F1788; // type:object size:0x4 scope:local data:4byte +currID = .sbss:0x801F178C; // type:object size:0x4 scope:local data:4byte +bootInfo = .sbss:0x801F1790; // type:object size:0x4 scope:local data:4byte +PauseFlag = .sbss:0x801F1794; // type:object size:0x4 scope:local data:4byte +PausingFlag = .sbss:0x801F1798; // type:object size:0x4 scope:local data:4byte +lbl_801F179C = .sbss:0x801F179C; // type:object size:0x4 data:4byte +FatalErrorFlag = .sbss:0x801F17A0; // type:object size:0x4 scope:local data:4byte +CurrCommand = .sbss:0x801F17A4; // type:object size:0x4 scope:local data:4byte +lbl_801F17A8 = .sbss:0x801F17A8; // type:object size:0x4 data:4byte +lbl_801F17AC = .sbss:0x801F17AC; // type:object size:0x4 data:4byte +ResumeFromHere = .sbss:0x801F17B0; // type:object size:0x4 scope:local data:4byte +CancelLastError = .sbss:0x801F17B4; // type:object size:0x4 scope:local data:4byte +lbl_801F17B8 = .sbss:0x801F17B8; // type:object size:0x4 data:4byte +lbl_801F17BC = .sbss:0x801F17BC; // type:object size:0x4 data:4byte +ResetRequired = .sbss:0x801F17C0; // type:object size:0x4 scope:local data:4byte +FirstTimeInBootrom = .sbss:0x801F17C4; // type:object size:0x4 scope:local data:4byte +DVDInitialized = .sbss:0x801F17C8; // type:object size:0x4 scope:local data:4byte +lbl_801F17CC = .sbss:0x801F17CC; // type:object size:0x4 data:4byte +lbl_801F17D0 = .sbss:0x801F17D0; // type:object size:0x4 data:4byte +bb2 = .sbss:0x801F17D4; // type:object size:0x4 scope:local data:4byte +idTmp = .sbss:0x801F17D8; // type:object size:0x4 scope:local data:4byte +lbl_801F17E0 = .sbss:0x801F17E0; // type:object size:0x4 data:4byte +lbl_801F17E4 = .sbss:0x801F17E4; // type:object size:0x4 data:4byte +lbl_801F17E8 = .sbss:0x801F17E8; // type:object size:0x8 +lbl_801F17F0 = .sbss:0x801F17F0; // type:object size:0x4 data:4byte +lbl_801F17F4 = .sbss:0x801F17F4; // type:object size:0x4 data:4byte +lbl_801F17F8 = .sbss:0x801F17F8; // type:object size:0x4 data:4byte +lbl_801F17FC = .sbss:0x801F17FC; // type:object size:0x2 data:2byte +lbl_801F17FE = .sbss:0x801F17FE; // type:object size:0x2 data:2byte +lbl_801F1800 = .sbss:0x801F1800; // type:object size:0x8 data:4byte +lbl_801F1808 = .sbss:0x801F1808; // type:object size:0x4 data:4byte +lbl_801F180C = .sbss:0x801F180C; // type:object size:0x4 data:4byte +lbl_801F1810 = .sbss:0x801F1810; // type:object size:0x8 data:4byte +lbl_801F1818 = .sbss:0x801F1818; // type:object size:0x4 data:4byte +lbl_801F181C = .sbss:0x801F181C; // type:object size:0x4 data:4byte +lbl_801F1820 = .sbss:0x801F1820; // type:object size:0x4 data:4byte +CurrTvMode = .sbss:0x801F1824; // type:object size:0x4 scope:local data:4byte +lbl_801F1828 = .sbss:0x801F1828; // type:object size:0x4 data:4byte +lbl_801F182C = .sbss:0x801F182C; // type:object size:0x4 data:4byte +lbl_801F1830 = .sbss:0x801F1830; // type:object size:0x8 data:4byte +lbl_801F1838 = .sbss:0x801F1838; // type:object size:0x8 data:4byte +lbl_801F1840 = .sbss:0x801F1840; // type:object size:0x4 data:4byte +lbl_801F1844 = .sbss:0x801F1844; // type:object size:0x4 data:4byte +lbl_801F1848 = .sbss:0x801F1848; // type:object size:0x4 data:4byte +lbl_801F184C = .sbss:0x801F184C; // type:object size:0x4 data:4byte +lbl_801F1850 = .sbss:0x801F1850; // type:object size:0x4 data:4byte +lbl_801F1854 = .sbss:0x801F1854; // type:object size:0x4 data:4byte +lbl_801F1858 = .sbss:0x801F1858; // type:object size:0x4 data:4byte +lbl_801F185C = .sbss:0x801F185C; // type:object size:0x4 data:4byte +lbl_801F1860 = .sbss:0x801F1860; // type:object size:0x4 data:4byte +lbl_801F1864 = .sbss:0x801F1864; // type:object size:0x4 data:4byte +lbl_801F1868 = .sbss:0x801F1868; // type:object size:0x4 data:4byte +lbl_801F186C = .sbss:0x801F186C; // type:object size:0x4 data:4byte +lbl_801F1870 = .sbss:0x801F1870; // type:object size:0x4 data:4byte +lbl_801F1874 = .sbss:0x801F1874; // type:object size:0x4 data:4byte +lbl_801F1878 = .sbss:0x801F1878; // type:object size:0x4 data:4byte +lbl_801F187C = .sbss:0x801F187C; // type:object size:0x4 data:4byte +lbl_801F1880 = .sbss:0x801F1880; // type:object size:0x4 data:4byte +lbl_801F1884 = .sbss:0x801F1884; // type:object size:0x4 data:4byte +lbl_801F1888 = .sbss:0x801F1888; // type:object size:0x4 data:4byte +lbl_801F188C = .sbss:0x801F188C; // type:object size:0x4 data:4byte +lbl_801F1890 = .sbss:0x801F1890; // type:object size:0x4 data:4byte +lbl_801F1894 = .sbss:0x801F1894; // type:object size:0x4 data:4byte +lbl_801F1898 = .sbss:0x801F1898; // type:object size:0x4 data:4byte +lbl_801F189C = .sbss:0x801F189C; // type:object size:0x4 data:4byte +lbl_801F18A0 = .sbss:0x801F18A0; // type:object size:0x4 data:4byte +lbl_801F18A4 = .sbss:0x801F18A4; // type:object size:0x4 data:4byte +lbl_801F18A8 = .sbss:0x801F18A8; // type:object size:0x4 data:4byte +lbl_801F18AC = .sbss:0x801F18AC; // type:object size:0x4 data:4byte +lbl_801F18B0 = .sbss:0x801F18B0; // type:object size:0x4 data:4byte +lbl_801F18B4 = .sbss:0x801F18B4; // type:object size:0x4 data:4byte +lbl_801F18B8 = .sbss:0x801F18B8; // type:object size:0x4 data:4byte +lbl_801F18BC = .sbss:0x801F18BC; // type:object size:0x4 data:4byte +lbl_801F18C0 = .sbss:0x801F18C0; // type:object size:0x4 data:4byte +__PADSpec = .sbss:0x801F18C4; // type:object size:0x4 scope:global data:4byte +lbl_801F18C8 = .sbss:0x801F18C8; // type:object size:0x4 data:4byte +lbl_801F18CC = .sbss:0x801F18CC; // type:object size:0x4 data:4byte +lbl_801F18D0 = .sbss:0x801F18D0; // type:object size:0x4 data:4byte +lbl_801F18D4 = .sbss:0x801F18D4; // type:object size:0x4 data:4byte +lbl_801F18D8 = .sbss:0x801F18D8; // type:object size:0x8 data:4byte +lbl_801F18E0 = .sbss:0x801F18E0; // type:object size:0x4 data:4byte +lbl_801F18E4 = .sbss:0x801F18E4; // type:object size:0x4 data:4byte +lbl_801F18E8 = .sbss:0x801F18E8; // type:object size:0x4 data:4byte +lbl_801F18EC = .sbss:0x801F18EC; // type:object size:0x4 data:4byte +lbl_801F18F0 = .sbss:0x801F18F0; // type:object size:0x4 data:4byte +lbl_801F18F4 = .sbss:0x801F18F4; // type:object size:0x4 data:4byte +lbl_801F18F8 = .sbss:0x801F18F8; // type:object size:0x4 data:4byte +lbl_801F18FC = .sbss:0x801F18FC; // type:object size:0x4 data:4byte +lbl_801F1900 = .sbss:0x801F1900; // type:object size:0x4 data:4byte +lbl_801F1904 = .sbss:0x801F1904; // type:object size:0x4 data:4byte +lbl_801F1908 = .sbss:0x801F1908; // type:object size:0x4 data:4byte +lbl_801F190C = .sbss:0x801F190C; // type:object size:0x4 data:4byte +lbl_801F1910 = .sbss:0x801F1910; // type:object size:0x4 data:4byte +lbl_801F1914 = .sbss:0x801F1914; // type:object size:0x4 data:4byte +lbl_801F1918 = .sbss:0x801F1918; // type:object size:0x4 data:4byte +lbl_801F191C = .sbss:0x801F191C; // type:object size:0x4 data:4byte +lbl_801F1920 = .sbss:0x801F1920; // type:object size:0x4 data:4byte +lbl_801F1924 = .sbss:0x801F1924; // type:object size:0x4 data:4byte +lbl_801F1928 = .sbss:0x801F1928; // type:object size:0x4 data:4byte +lbl_801F192C = .sbss:0x801F192C; // type:object size:0x4 data:4byte +lbl_801F1930 = .sbss:0x801F1930; // type:object size:0x4 data:4byte +lbl_801F1934 = .sbss:0x801F1934; // type:object size:0x4 data:4byte +lbl_801F1938 = .sbss:0x801F1938; // type:object size:0x4 data:4byte +lbl_801F193C = .sbss:0x801F193C; // type:object size:0x4 data:4byte +lbl_801F1940 = .sbss:0x801F1940; // type:object size:0x4 data:4byte +lbl_801F1944 = .sbss:0x801F1944; // type:object size:0x4 data:4byte +lbl_801F1948 = .sbss:0x801F1948; // type:object size:0x4 data:4byte +lbl_801F194C = .sbss:0x801F194C; // type:object size:0x4 data:4byte +lbl_801F1950 = .sbss:0x801F1950; // type:object size:0x8 data:4byte +lbl_801F1958 = .sbss:0x801F1958; // type:object size:0x4 data:4byte +lbl_801F195C = .sbss:0x801F195C; // type:object size:0x4 data:4byte +lbl_801F1960 = .sbss:0x801F1960; // type:object size:0x4 data:4byte +lbl_801F1964 = .sbss:0x801F1964; // type:object size:0x4 data:4byte +lbl_801F1968 = .sbss:0x801F1968; // type:object size:0x4 data:4byte +lbl_801F196C = .sbss:0x801F196C; // type:object size:0x4 data:4byte +__piReg = .sbss:0x801F1970; // type:object size:0x4 scope:global data:4byte +__cpReg = .sbss:0x801F1974; // type:object size:0x4 scope:global data:4byte +__peReg = .sbss:0x801F1978; // type:object size:0x4 scope:global data:4byte +__memReg = .sbss:0x801F197C; // type:object size:0x4 scope:global data:4byte +lbl_801F1980 = .sbss:0x801F1980; // type:object size:0x4 data:4byte +lbl_801F1984 = .sbss:0x801F1984; // type:object size:0x4 data:4byte +lbl_801F1988 = .sbss:0x801F1988; // type:object size:0x4 data:4byte +lbl_801F198C = .sbss:0x801F198C; // type:object size:0x1 data:byte +lbl_801F1990 = .sbss:0x801F1990; // type:object size:0x4 data:4byte +lbl_801F1994 = .sbss:0x801F1994; // type:object size:0x4 data:4byte +lbl_801F1998 = .sbss:0x801F1998; // type:object size:0x8 data:4byte +lbl_801F19A0 = .sbss:0x801F19A0; // type:object size:0x4 data:4byte +lbl_801F19A4 = .sbss:0x801F19A4; // type:object size:0x4 data:4byte +lbl_801F19A8 = .sbss:0x801F19A8; // type:object size:0x1 data:byte +lbl_801F19AC = .sbss:0x801F19AC; // type:object size:0xC +lbl_801F19B8 = .sbss:0x801F19B8; // type:object size:0x8 data:4byte +lbl_801F19C0 = .sbss:0x801F19C0; // type:object size:0x4 data:4byte +lbl_801F19C4 = .sbss:0x801F19C4; // type:object size:0x4 data:4byte +lbl_801F19C8 = .sbss:0x801F19C8; // type:object size:0x4 data:4byte +lbl_801F19CC = .sbss:0x801F19CC; // type:object size:0x4 data:4byte +lbl_801F19D0 = .sbss:0x801F19D0; // type:object size:0x4 +cmdTypeAndStatus$371 = .sbss:0x801F19D4; // type:object size:0x4 scope:local +lbl_801F19D8 = .sbss:0x801F19D8; // type:object size:0x8 data:4byte +SamplingRate = .sbss:0x801F19E0; // type:object size:0x4 scope:local data:4byte +lbl_801F1A00 = .sbss:0x801F1A00; // type:object size:0x20 data:4byte +lbl_801F1A20 = .sbss:0x801F1A20; // type:object size:0x20 data:4byte +lbl_801F1A40 = .sbss:0x801F1A40; // type:object size:0x20 data:4byte +lbl_801F1A60 = .sbss:0x801F1A60; // type:object size:0x20 data:4byte +lbl_801F1A80 = .sbss:0x801F1A80; // type:object size:0x20 data:4byte +lbl_801F1AA0 = .sbss:0x801F1AA0; // type:object size:0x4 data:4byte +lbl_801F1AA4 = .sbss:0x801F1AA4; // type:object size:0x4 data:4byte +lbl_801F1AA8 = .sbss:0x801F1AA8; // type:object size:0x4 data:4byte +lbl_801F1AAC = .sbss:0x801F1AAC; // type:object size:0x14 data:4byte +lbl_801F1AC0 = .sbss:0x801F1AC0; // type:object size:0x20 data:4byte +lbl_801F1AE0 = .sbss:0x801F1AE0; // type:object size:0x20 data:4byte +lbl_801F1B00 = .sbss:0x801F1B00; // type:object size:0x4 data:4byte +lbl_801F1B04 = .sbss:0x801F1B04; // type:object size:0x4 data:4byte +lbl_801F1B08 = .sbss:0x801F1B08; // type:object size:0x4 data:4byte +lbl_801F1B0C = .sbss:0x801F1B0C; // type:object size:0x4 data:4byte +lbl_801F1B10 = .sbss:0x801F1B10; // type:object size:0x4 data:4byte +lbl_801F1B14 = .sbss:0x801F1B14; // type:object size:0x4 data:4byte +__global_destructor_chain = .sbss:0x801F1B18; // type:object size:0x4 scope:global data:4byte +__aborting = .sbss:0x801F1B20; // type:object size:0x4 scope:global data:4byte +__atexit_curr_func = .sbss:0x801F1B24; // type:object size:0x4 scope:local data:4byte +__stdio_exit = .sbss:0x801F1B28; // type:object size:0x4 scope:global data:4byte +__console_exit = .sbss:0x801F1B2C; // type:object size:0x4 scope:global data:4byte +lbl_801F1B30 = .sbss:0x801F1B30; // type:object size:0x8 data:byte +lbl_801F1B38 = .sbss:0x801F1B38; // type:object size:0x8 data:4byte +lbl_801F1B40 = .sbss:0x801F1B40; // type:object size:0x8 data:4byte +lbl_801F1B48 = .sbss:0x801F1B48; // type:object size:0x4 data:4byte +lbl_801F1B4C = .sbss:0x801F1B4C; // type:object size:0x1 data:byte +lbl_801F1B50 = .sbss:0x801F1B50; // type:object size:0x4 data:4byte +lbl_801F1B54 = .sbss:0x801F1B54; // type:object size:0x4 data:4byte +lbl_801F1B58 = .sbss:0x801F1B58; // type:object size:0x4 data:4byte +lbl_801F1B5C = .sbss:0x801F1B5C; // type:object size:0x4 data:4byte +lbl_801F1B60 = .sbss:0x801F1B60; // type:object size:0x4 data:4byte +lbl_801F1B64 = .sbss:0x801F1B64; // type:object size:0x4 data:4byte +lbl_801F1B68 = .sbss:0x801F1B68; // type:object size:0x1 data:byte +lbl_801F1B69 = .sbss:0x801F1B69; // type:object size:0x1 data:byte +lbl_801F1B6C = .sbss:0x801F1B6C; // type:object size:0x8 data:byte +lbl_801F1B74 = .sbss:0x801F1B74; // type:object size:0x8 data:byte +lbl_801F1B7C = .sbss:0x801F1B7C; // type:object size:0x8 data:byte +lbl_801F1B84 = .sbss:0x801F1B84; // type:object size:0x8 data:byte +lbl_801F1B8C = .sbss:0x801F1B8C; // type:object size:0x4 data:4byte +lbl_801F1B90 = .sbss:0x801F1B90; // type:object size:0x4 data:4byte +lbl_801F1B94 = .sbss:0x801F1B94; // type:object size:0x4 data:4byte +lbl_801F1B98 = .sbss:0x801F1B98; // type:object size:0x4 data:4byte +lbl_801F1B9C = .sbss:0x801F1B9C; // type:object size:0x4 data:4byte +lbl_801F1BA0 = .sbss:0x801F1BA0; // type:object size:0x8 data:byte +lbl_801F1BA8 = .sbss:0x801F1BA8; // type:object size:0x4 data:4byte +lbl_801F1BAC = .sbss:0x801F1BAC; // type:object size:0x4 data:4byte +lbl_801F1BB0 = .sbss:0x801F1BB0; // type:object size:0x4 data:4byte +lbl_801F1BB4 = .sbss:0x801F1BB4; // type:object size:0x1 data:byte +lbl_801F1BB5 = .sbss:0x801F1BB5; // type:object size:0x1 data:byte +lbl_801F1BB8 = .sbss:0x801F1BB8; // type:object size:0x4 data:4byte +lbl_801F1BBC = .sbss:0x801F1BBC; // type:object size:0x4 data:4byte +lbl_801F1BC0 = .sbss:0x801F1BC0; // type:object size:0x8 +lbl_801F1BC8 = .sbss:0x801F1BC8; // type:object size:0x4 data:4byte +lbl_801F1BCC = .sbss:0x801F1BCC; // type:object size:0x8 +lbl_801F1BD4 = .sbss:0x801F1BD4; // type:object size:0x4 data:4byte +lbl_801F1BD8 = .sbss:0x801F1BD8; // type:object size:0x4 data:4byte +lbl_801F1BDC = .sbss:0x801F1BDC; // type:object size:0x4 data:4byte +lbl_801F1BE0 = .sbss:0x801F1BE0; // type:object size:0x8 +lbl_801F1BE8 = .sbss:0x801F1BE8; // type:object size:0x4 data:4byte +lbl_801F1BEC = .sbss:0x801F1BEC; // type:object size:0x4 data:4byte +lbl_801F1BF0 = .sbss:0x801F1BF0; // type:object size:0x2 data:2byte +lbl_801F1BF2 = .sbss:0x801F1BF2; // type:object size:0x2 data:2byte +lbl_801F1BF4 = .sbss:0x801F1BF4; // type:object size:0x2 data:2byte +lbl_801F1BF6 = .sbss:0x801F1BF6; // type:object size:0x2 data:2byte +lbl_801F1BF8 = .sbss:0x801F1BF8; // type:object size:0x2 data:2byte +lbl_801F1BFA = .sbss:0x801F1BFA; // type:object size:0x6 data:2byte +lbl_801F1C00 = .sbss:0x801F1C00; // type:object size:0x8 data:4byte +lbl_801F1C08 = .sbss:0x801F1C08; // type:object size:0x4 data:4byte +lbl_801F1C0C = .sbss:0x801F1C0C; // type:object size:0x4 data:4byte +lbl_801F1C10 = .sbss:0x801F1C10; // type:object size:0x4 data:4byte +lbl_801F1C14 = .sbss:0x801F1C14; // type:object size:0x4 data:4byte +lbl_801F1C18 = .sbss:0x801F1C18; // type:object size:0x8 data:byte +lbl_801F1C20 = .sbss:0x801F1C20; // type:object size:0x4 data:4byte +lbl_801F1C24 = .sbss:0x801F1C24; // type:object size:0x4 data:4byte +lbl_801F1C28 = .sbss:0x801F1C28; // type:object size:0x4 data:4byte +lbl_801F1C2C = .sbss:0x801F1C2C; // type:object size:0x2 data:2byte +lbl_801F1C2E = .sbss:0x801F1C2E; // type:object size:0x1 data:byte +lbl_801F1C2F = .sbss:0x801F1C2F; // type:object size:0x1 data:byte +lbl_801F1C30 = .sbss:0x801F1C30; // type:object size:0x1 data:byte +lbl_801F1C31 = .sbss:0x801F1C31; // type:object size:0x7 data:byte +lbl_801F1C38 = .sbss:0x801F1C38; // type:object size:0x8 data:2byte +lbl_801F1C40 = .sbss:0x801F1C40; // type:object size:0x4 data:4byte +lbl_801F1C44 = .sbss:0x801F1C44; // type:object size:0x4 data:4byte +lbl_801F1C48 = .sbss:0x801F1C48; // type:object size:0x4 data:4byte +lbl_801F1C4C = .sbss:0x801F1C4C; // type:object size:0x2 data:2byte +lbl_801F1C50 = .sbss:0x801F1C50; // type:object size:0x4 data:4byte +lbl_801F1C54 = .sbss:0x801F1C54; // type:object size:0x4 data:4byte +lbl_801F1C58 = .sbss:0x801F1C58; // type:object size:0x4 data:4byte +lbl_801F1C5C = .sbss:0x801F1C5C; // type:object size:0x2 data:2byte +lbl_801F1C60 = .sbss:0x801F1C60; // type:object size:0x4 data:4byte +lbl_801F1C64 = .sbss:0x801F1C64; // type:object size:0x4 data:4byte +lbl_801F1C68 = .sbss:0x801F1C68; // type:object size:0x4 data:4byte +lbl_801F1C6C = .sbss:0x801F1C6C; // type:object size:0x4 data:4byte +lbl_801F1C70 = .sbss:0x801F1C70; // type:object size:0x3 +lbl_801F1C73 = .sbss:0x801F1C73; // type:object size:0x1 +lbl_801F1C74 = .sbss:0x801F1C74; // type:object size:0x4 data:4byte +lbl_801F1C78 = .sbss:0x801F1C78; // type:object size:0x8 data:4byte +lbl_801F1C80 = .sbss:0x801F1C80; // type:object size:0x1 data:byte +lbl_801F1C81 = .sbss:0x801F1C81; // type:object size:0x1 data:byte +lbl_801F1C82 = .sbss:0x801F1C82; // type:object size:0x1 data:byte +lbl_801F1C83 = .sbss:0x801F1C83; // type:object size:0x1 data:byte +lbl_801F1C84 = .sbss:0x801F1C84; // type:object size:0x1 data:byte +lbl_801F1C85 = .sbss:0x801F1C85; // type:object size:0x1 data:byte +lbl_801F1C88 = .sbss:0x801F1C88; // type:object size:0x4 data:4byte +lbl_801F1C8C = .sbss:0x801F1C8C; // type:object size:0x4 data:4byte +lbl_801F1C90 = .sbss:0x801F1C90; // type:object size:0x4 data:4byte +lbl_801F1C94 = .sbss:0x801F1C94; // type:object size:0x4 data:4byte +lbl_801F1C98 = .sbss:0x801F1C98; // type:object size:0x4 data:4byte +lbl_801F1C9C = .sbss:0x801F1C9C; // type:object size:0x1 data:byte +lbl_801F1CA0 = .sbss:0x801F1CA0; // type:object size:0x1 data:byte +lbl_801F1CA4 = .sbss:0x801F1CA4; // type:object size:0x4 data:4byte +lbl_801F1CA8 = .sbss:0x801F1CA8; // type:object size:0x4 data:4byte +lbl_801F1CAC = .sbss:0x801F1CAC; // type:object size:0x1 data:byte +lbl_801F1CAD = .sbss:0x801F1CAD; // type:object size:0x1 data:byte +lbl_801F1CAE = .sbss:0x801F1CAE; // type:object size:0x1 data:byte +lbl_801F1CAF = .sbss:0x801F1CAF; // type:object size:0x1 data:byte +lbl_801F1CB0 = .sbss:0x801F1CB0; // type:object size:0x4 data:4byte +lbl_801F1CB4 = .sbss:0x801F1CB4; // type:object size:0x4 data:4byte +lbl_801F1CB8 = .sbss:0x801F1CB8; // type:object size:0x4 data:4byte +lbl_801F1CBC = .sbss:0x801F1CBC; // type:object size:0x4 data:4byte +lbl_801F1CC0 = .sbss:0x801F1CC0; // type:object size:0x4 data:4byte +lbl_801F1CC4 = .sbss:0x801F1CC4; // type:object size:0x4 data:4byte +lbl_801F1CC8 = .sbss:0x801F1CC8; // type:object size:0x4 data:4byte +lbl_801F1CCC = .sbss:0x801F1CCC; // type:object size:0x4 data:4byte +lbl_801F1CD0 = .sbss:0x801F1CD0; // type:object size:0x4 data:4byte +lbl_801F1CD4 = .sbss:0x801F1CD4; // type:object size:0x2 data:2byte +lbl_801F1CD8 = .sbss:0x801F1CD8; // type:object size:0x4 data:4byte +lbl_801F1CDC = .sbss:0x801F1CDC; // type:object size:0x4 data:4byte +lbl_801F1CE0 = .sbss:0x801F1CE0; // type:object size:0x4 data:4byte +lbl_801F1CE4 = .sbss:0x801F1CE4; // type:object size:0x4 data:4byte +lbl_801F1CE8 = .sbss:0x801F1CE8; // type:object size:0x4 data:4byte +lbl_801F1CEC = .sbss:0x801F1CEC; // type:object size:0x4 data:4byte +lbl_801F1CF0 = .sbss:0x801F1CF0; // type:object size:0x1 data:byte +lbl_801F1CF4 = .sbss:0x801F1CF4; // type:object size:0x4 data:4byte +lbl_801F1CF8 = .sbss:0x801F1CF8; // type:object size:0x4 data:4byte +lbl_801F1CFC = .sbss:0x801F1CFC; // type:object size:0x4 data:4byte +lbl_801F1D00 = .sbss:0x801F1D00; // type:object size:0x4 data:4byte +lbl_801F1D04 = .sbss:0x801F1D04; // type:object size:0x4 data:4byte +lbl_801F1D08 = .sbss:0x801F1D08; // type:object size:0x4 data:4byte +lbl_801F1D0C = .sbss:0x801F1D0C; // type:object size:0x1 data:byte +lbl_801F1D20 = .sdata2:0x801F1D20; // type:object size:0x8 data:double +lbl_801F1D28 = .sdata2:0x801F1D28; // type:object size:0x4 data:float +lbl_801F1D2C = .sdata2:0x801F1D2C; // type:object size:0x4 data:float +lbl_801F1D30 = .sdata2:0x801F1D30; // type:object size:0x8 data:double +lbl_801F1D38 = .sdata2:0x801F1D38; // type:object size:0x4 data:float +lbl_801F1D3C = .sdata2:0x801F1D3C; // type:object size:0x4 data:float +lbl_801F1D40 = .sdata2:0x801F1D40; // type:object size:0x4 data:float +lbl_801F1D44 = .sdata2:0x801F1D44; // type:object size:0x4 data:float +lbl_801F1D48 = .sdata2:0x801F1D48; // type:object size:0x4 data:float +lbl_801F1D4C = .sdata2:0x801F1D4C; // type:object size:0x4 data:float +lbl_801F1D50 = .sdata2:0x801F1D50; // type:object size:0x4 data:float +lbl_801F1D54 = .sdata2:0x801F1D54; // type:object size:0x4 data:float +lbl_801F1D58 = .sdata2:0x801F1D58; // type:object size:0x4 data:float +lbl_801F1D60 = .sdata2:0x801F1D60; // type:object size:0x8 data:double +lbl_801F1D68 = .sdata2:0x801F1D68; // type:object size:0x8 data:double +lbl_801F1D70 = .sdata2:0x801F1D70; // type:object size:0x4 data:float +lbl_801F1D74 = .sdata2:0x801F1D74; // type:object size:0x4 data:float +lbl_801F1D78 = .sdata2:0x801F1D78; // type:object size:0x4 data:float +lbl_801F1D7C = .sdata2:0x801F1D7C; // type:object size:0x4 data:float +lbl_801F1D80 = .sdata2:0x801F1D80; // type:object size:0x8 data:float +lbl_801F1D88 = .sdata2:0x801F1D88; // type:object size:0x4 data:float +lbl_801F1D8C = .sdata2:0x801F1D8C; // type:object size:0x4 data:float +lbl_801F1D90 = .sdata2:0x801F1D90; // type:object size:0x4 data:float +lbl_801F1D98 = .sdata2:0x801F1D98; // type:object size:0x8 data:double +lbl_801F1DA0 = .sdata2:0x801F1DA0; // type:object size:0x8 data:double +lbl_801F1DA8 = .sdata2:0x801F1DA8; // type:object size:0x8 data:float +lbl_801F1DB0 = .sdata2:0x801F1DB0; // type:object size:0x4 data:float +lbl_801F1DB4 = .sdata2:0x801F1DB4; // type:object size:0x4 data:float +lbl_801F1DB8 = .sdata2:0x801F1DB8; // type:object size:0x4 data:float +lbl_801F1DBC = .sdata2:0x801F1DBC; // type:object size:0x4 data:float +lbl_801F1DC0 = .sdata2:0x801F1DC0; // type:object size:0x4 data:float +lbl_801F1DC4 = .sdata2:0x801F1DC4; // type:object size:0x4 data:float +lbl_801F1DC8 = .sdata2:0x801F1DC8; // type:object size:0x4 data:float +lbl_801F1DD0 = .sdata2:0x801F1DD0; // type:object size:0x8 data:double +lbl_801F1DD8 = .sdata2:0x801F1DD8; // type:object size:0x8 data:double +lbl_801F1DE0 = .sdata2:0x801F1DE0; // type:object size:0x8 data:double +lbl_801F1DE8 = .sdata2:0x801F1DE8; // type:object size:0x4 data:float +lbl_801F1DEC = .sdata2:0x801F1DEC; // type:object size:0x4 data:float +lbl_801F1DF0 = .sdata2:0x801F1DF0; // type:object size:0x4 data:float +lbl_801F1DF4 = .sdata2:0x801F1DF4; // type:object size:0x4 data:float +lbl_801F1DF8 = .sdata2:0x801F1DF8; // type:object size:0x8 data:double +lbl_801F1E00 = .sdata2:0x801F1E00; // type:object size:0x8 data:double +lbl_801F1E08 = .sdata2:0x801F1E08; // type:object size:0x8 data:double +lbl_801F1E10 = .sdata2:0x801F1E10; // type:object size:0x8 data:double +lbl_801F1E18 = .sdata2:0x801F1E18; // type:object size:0x4 data:float +lbl_801F1E20 = .sdata2:0x801F1E20; // type:object size:0x8 data:double +lbl_801F1E28 = .sdata2:0x801F1E28; // type:object size:0x4 data:float +lbl_801F1E2C = .sdata2:0x801F1E2C; // type:object size:0x4 data:float +lbl_801F1E30 = .sdata2:0x801F1E30; // type:object size:0x4 data:float +lbl_801F1E34 = .sdata2:0x801F1E34; // type:object size:0x4 data:float +lbl_801F1E38 = .sdata2:0x801F1E38; // type:object size:0x8 data:double +lbl_801F1E40 = .sdata2:0x801F1E40; // type:object size:0x4 data:float +lbl_801F1E44 = .sdata2:0x801F1E44; // type:object size:0x4 data:float +lbl_801F1E48 = .sdata2:0x801F1E48; // type:object size:0x4 data:float +lbl_801F1E4C = .sdata2:0x801F1E4C; // type:object size:0x4 data:float +lbl_801F1E50 = .sdata2:0x801F1E50; // type:object size:0x8 data:double +lbl_801F1E58 = .sdata2:0x801F1E58; // type:object size:0x4 data:float +lbl_801F1E60 = .sdata2:0x801F1E60; // type:object size:0x8 data:double +lbl_801F1E68 = .sdata2:0x801F1E68; // type:object size:0x4 data:float +lbl_801F1E6C = .sdata2:0x801F1E6C; // type:object size:0x4 data:float +lbl_801F1E70 = .sdata2:0x801F1E70; // type:object size:0x4 data:float +lbl_801F1E74 = .sdata2:0x801F1E74; // type:object size:0x4 data:float +lbl_801F1E78 = .sdata2:0x801F1E78; // type:object size:0x4 data:float +lbl_801F1E80 = .sdata2:0x801F1E80; // type:object size:0x8 data:double +lbl_801F1E88 = .sdata2:0x801F1E88; // type:object size:0x8 data:double +lbl_801F1E90 = .sdata2:0x801F1E90; // type:object size:0x8 data:double +lbl_801F1E98 = .sdata2:0x801F1E98; // type:object size:0x8 data:double +lbl_801F1EA0 = .sdata2:0x801F1EA0; // type:object size:0x4 data:float +lbl_801F1EA4 = .sdata2:0x801F1EA4; // type:object size:0x4 data:float +lbl_801F1EA8 = .sdata2:0x801F1EA8; // type:object size:0x4 data:float +lbl_801F1EAC = .sdata2:0x801F1EAC; // type:object size:0x4 data:float +lbl_801F1EB0 = .sdata2:0x801F1EB0; // type:object size:0x4 data:float +lbl_801F1EB4 = .sdata2:0x801F1EB4; // type:object size:0x4 data:float +lbl_801F1EB8 = .sdata2:0x801F1EB8; // type:object size:0x4 data:float +lbl_801F1EBC = .sdata2:0x801F1EBC; // type:object size:0x4 data:float +lbl_801F1EC0 = .sdata2:0x801F1EC0; // type:object size:0x8 data:double +lbl_801F1EC8 = .sdata2:0x801F1EC8; // type:object size:0x8 data:float +lbl_801F1ED0 = .sdata2:0x801F1ED0; // type:object size:0x4 data:float +lbl_801F1ED4 = .sdata2:0x801F1ED4; // type:object size:0x4 data:float +lbl_801F1ED8 = .sdata2:0x801F1ED8; // type:object size:0x8 data:double +lbl_801F1EE0 = .sdata2:0x801F1EE0; // type:object size:0x8 data:double +lbl_801F1EE8 = .sdata2:0x801F1EE8; // type:object size:0x4 data:float +lbl_801F1EEC = .sdata2:0x801F1EEC; // type:object size:0x4 data:float +lbl_801F1EF0 = .sdata2:0x801F1EF0; // type:object size:0x4 data:float +lbl_801F1EF8 = .sdata2:0x801F1EF8; // type:object size:0x8 data:double +lbl_801F1F00 = .sdata2:0x801F1F00; // type:object size:0x8 data:double +lbl_801F1F08 = .sdata2:0x801F1F08; // type:object size:0x8 data:double +lbl_801F1F10 = .sdata2:0x801F1F10; // type:object size:0x4 data:float +lbl_801F1F14 = .sdata2:0x801F1F14; // type:object size:0x4 data:float +lbl_801F1F18 = .sdata2:0x801F1F18; // type:object size:0x8 data:float +lbl_801F1F20 = .sdata2:0x801F1F20; // type:object size:0x4 data:float +lbl_801F1F24 = .sdata2:0x801F1F24; // type:object size:0x4 data:float +lbl_801F1F28 = .sdata2:0x801F1F28; // type:object size:0x8 data:double +lbl_801F1F30 = .sdata2:0x801F1F30; // type:object size:0x4 data:float +lbl_801F1F34 = .sdata2:0x801F1F34; // type:object size:0x4 data:float +lbl_801F1F38 = .sdata2:0x801F1F38; // type:object size:0x4 data:float +lbl_801F1F3C = .sdata2:0x801F1F3C; // type:object size:0x4 data:float +lbl_801F1F40 = .sdata2:0x801F1F40; // type:object size:0x8 data:double +lbl_801F1F48 = .sdata2:0x801F1F48; // type:object size:0x4 data:float +lbl_801F1F50 = .sdata2:0x801F1F50; // type:object size:0x8 data:double +lbl_801F1F58 = .sdata2:0x801F1F58; // type:object size:0x8 data:double +lbl_801F1F60 = .sdata2:0x801F1F60; // type:object size:0x8 data:double +lbl_801F1F68 = .sdata2:0x801F1F68; // type:object size:0x4 data:float +lbl_801F1F70 = .sdata2:0x801F1F70; // type:object size:0x8 data:double +lbl_801F1F78 = .sdata2:0x801F1F78; // type:object size:0x8 data:double +lbl_801F1F80 = .sdata2:0x801F1F80; // type:object size:0x4 data:float +lbl_801F1F88 = .sdata2:0x801F1F88; // type:object size:0x8 data:double +lbl_801F1F90 = .sdata2:0x801F1F90; // type:object size:0x8 data:double +lbl_801F1F98 = .sdata2:0x801F1F98; // type:object size:0x8 data:double +lbl_801F1FA0 = .sdata2:0x801F1FA0; // type:object size:0x8 data:double +lbl_801F1FA8 = .sdata2:0x801F1FA8; // type:object size:0x4 data:float +lbl_801F1FAC = .sdata2:0x801F1FAC; // type:object size:0x4 data:float +lbl_801F1FB0 = .sdata2:0x801F1FB0; // type:object size:0x4 data:float +lbl_801F1FB4 = .sdata2:0x801F1FB4; // type:object size:0x4 data:float +lbl_801F1FB8 = .sdata2:0x801F1FB8; // type:object size:0x8 data:double +lbl_801F1FC0 = .sdata2:0x801F1FC0; // type:object size:0x4 data:float +lbl_801F1FC8 = .sdata2:0x801F1FC8; // type:object size:0x8 data:double +lbl_801F1FD0 = .sdata2:0x801F1FD0; // type:object size:0x8 data:double +lbl_801F1FD8 = .sdata2:0x801F1FD8; // type:object size:0x4 data:float +lbl_801F1FE0 = .sdata2:0x801F1FE0; // type:object size:0x8 data:double +lbl_801F1FE8 = .sdata2:0x801F1FE8; // type:object size:0x4 data:float +lbl_801F1FEC = .sdata2:0x801F1FEC; // type:object size:0x4 data:float +lbl_801F1FF0 = .sdata2:0x801F1FF0; // type:object size:0x4 data:float +lbl_801F1FF4 = .sdata2:0x801F1FF4; // type:object size:0x4 data:float +lbl_801F1FF8 = .sdata2:0x801F1FF8; // type:object size:0x8 data:double +lbl_801F2000 = .sdata2:0x801F2000; // type:object size:0x8 data:double +lbl_801F2008 = .sdata2:0x801F2008; // type:object size:0x4 data:float +lbl_801F200C = .sdata2:0x801F200C; // type:object size:0x4 data:float +lbl_801F2010 = .sdata2:0x801F2010; // type:object size:0x8 data:double +lbl_801F2018 = .sdata2:0x801F2018; // type:object size:0x4 data:float +lbl_801F201C = .sdata2:0x801F201C; // type:object size:0x4 data:float +lbl_801F2020 = .sdata2:0x801F2020; // type:object size:0x4 data:float +lbl_801F2024 = .sdata2:0x801F2024; // type:object size:0x4 data:float +lbl_801F2028 = .sdata2:0x801F2028; // type:object size:0x8 data:double +lbl_801F2030 = .sdata2:0x801F2030; // type:object size:0x8 data:double +lbl_801F2038 = .sdata2:0x801F2038; // type:object size:0x4 data:float +lbl_801F203C = .sdata2:0x801F203C; // type:object size:0x4 data:float +lbl_801F2040 = .sdata2:0x801F2040; // type:object size:0x4 data:float +lbl_801F2044 = .sdata2:0x801F2044; // type:object size:0x4 data:float +lbl_801F2048 = .sdata2:0x801F2048; // type:object size:0x4 data:float +lbl_801F204C = .sdata2:0x801F204C; // type:object size:0x4 data:float +lbl_801F2050 = .sdata2:0x801F2050; // type:object size:0x4 data:float +lbl_801F2054 = .sdata2:0x801F2054; // type:object size:0x4 data:float +lbl_801F2058 = .sdata2:0x801F2058; // type:object size:0x4 data:float +lbl_801F2060 = .sdata2:0x801F2060; // type:object size:0x8 data:double +lbl_801F2068 = .sdata2:0x801F2068; // type:object size:0x8 data:double +lbl_801F2070 = .sdata2:0x801F2070; // type:object size:0x4 data:float +lbl_801F2078 = .sdata2:0x801F2078; // type:object size:0x8 data:double +lbl_801F2080 = .sdata2:0x801F2080; // type:object size:0x8 data:double +lbl_801F2088 = .sdata2:0x801F2088; // type:object size:0x8 data:double +lbl_801F2090 = .sdata2:0x801F2090; // type:object size:0x4 data:float +lbl_801F2094 = .sdata2:0x801F2094; // type:object size:0x4 data:float +lbl_801F2098 = .sdata2:0x801F2098; // type:object size:0x4 data:float +lbl_801F20A0 = .sdata2:0x801F20A0; // type:object size:0x8 data:double +lbl_801F20A8 = .sdata2:0x801F20A8; // type:object size:0x4 data:float +lbl_801F20AC = .sdata2:0x801F20AC; // type:object size:0x4 data:float +lbl_801F20B0 = .sdata2:0x801F20B0; // type:object size:0x4 data:float +lbl_801F20B8 = .sdata2:0x801F20B8; // type:object size:0x8 data:double +lbl_801F20C0 = .sdata2:0x801F20C0; // type:object size:0x8 data:double +lbl_801F20C8 = .sdata2:0x801F20C8; // type:object size:0x8 data:double +lbl_801F20D0 = .sdata2:0x801F20D0; // type:object size:0x8 data:double +lbl_801F20D8 = .sdata2:0x801F20D8; // type:object size:0x8 data:double +lbl_801F20E0 = .sdata2:0x801F20E0; // type:object size:0x8 data:double +lbl_801F20E8 = .sdata2:0x801F20E8; // type:object size:0x4 data:float +lbl_801F20EC = .sdata2:0x801F20EC; // type:object size:0x4 data:float +lbl_801F20F0 = .sdata2:0x801F20F0; // type:object size:0x8 data:double +lbl_801F20F8 = .sdata2:0x801F20F8; // type:object size:0x4 data:float +lbl_801F20FC = .sdata2:0x801F20FC; // type:object size:0x4 data:float +lbl_801F2100 = .sdata2:0x801F2100; // type:object size:0x4 data:float +lbl_801F2104 = .sdata2:0x801F2104; // type:object size:0x4 data:float +lbl_801F2108 = .sdata2:0x801F2108; // type:object size:0x4 data:float +lbl_801F210C = .sdata2:0x801F210C; // type:object size:0x4 data:float +lbl_801F2110 = .sdata2:0x801F2110; // type:object size:0x4 data:float +lbl_801F2114 = .sdata2:0x801F2114; // type:object size:0x4 data:float +lbl_801F2118 = .sdata2:0x801F2118; // type:object size:0x4 data:float +lbl_801F211C = .sdata2:0x801F211C; // type:object size:0x4 data:float +lbl_801F2120 = .sdata2:0x801F2120; // type:object size:0x4 data:float +lbl_801F2124 = .sdata2:0x801F2124; // type:object size:0x4 data:float +lbl_801F2128 = .sdata2:0x801F2128; // type:object size:0x4 data:float +lbl_801F212C = .sdata2:0x801F212C; // type:object size:0x4 data:float +lbl_801F2130 = .sdata2:0x801F2130; // type:object size:0x4 data:float +lbl_801F2134 = .sdata2:0x801F2134; // type:object size:0x4 data:float +lbl_801F2138 = .sdata2:0x801F2138; // type:object size:0x4 data:float +lbl_801F213C = .sdata2:0x801F213C; // type:object size:0x4 data:float +lbl_801F2140 = .sdata2:0x801F2140; // type:object size:0x8 data:double +lbl_801F2148 = .sdata2:0x801F2148; // type:object size:0x4 data:float +lbl_801F214C = .sdata2:0x801F214C; // type:object size:0x4 data:float +lbl_801F2150 = .sdata2:0x801F2150; // type:object size:0x8 data:double +lbl_801F2158 = .sdata2:0x801F2158; // type:object size:0x8 data:double +lbl_801F2160 = .sdata2:0x801F2160; // type:object size:0x4 data:float +lbl_801F2164 = .sdata2:0x801F2164; // type:object size:0x4 data:float +lbl_801F2168 = .sdata2:0x801F2168; // type:object size:0x8 data:double +lbl_801F2170 = .sdata2:0x801F2170; // type:object size:0x4 data:float +lbl_801F2174 = .sdata2:0x801F2174; // type:object size:0x4 data:float +lbl_801F2178 = .sdata2:0x801F2178; // type:object size:0x4 data:float +lbl_801F217C = .sdata2:0x801F217C; // type:object size:0x4 data:float +lbl_801F2180 = .sdata2:0x801F2180; // type:object size:0x4 data:float +lbl_801F2188 = .sdata2:0x801F2188; // type:object size:0x8 data:double +lbl_801F2190 = .sdata2:0x801F2190; // type:object size:0x4 data:float +lbl_801F2198 = .sdata2:0x801F2198; // type:object size:0x8 data:double +lbl_801F21A0 = .sdata2:0x801F21A0; // type:object size:0x4 data:float +lbl_801F21A4 = .sdata2:0x801F21A4; // type:object size:0x4 data:float +lbl_801F21A8 = .sdata2:0x801F21A8; // type:object size:0x4 data:float +lbl_801F21AC = .sdata2:0x801F21AC; // type:object size:0x4 data:float +lbl_801F21B0 = .sdata2:0x801F21B0; // type:object size:0x8 data:double +lbl_801F21B8 = .sdata2:0x801F21B8; // type:object size:0x4 data:float +lbl_801F21C0 = .sdata2:0x801F21C0; // type:object size:0x8 data:double +lbl_801F21C8 = .sdata2:0x801F21C8; // type:object size:0x8 data:double +lbl_801F21D0 = .sdata2:0x801F21D0; // type:object size:0x8 data:double +lbl_801F21D8 = .sdata2:0x801F21D8; // type:object size:0x4 data:float +lbl_801F21E0 = .sdata2:0x801F21E0; // type:object size:0x8 data:double +lbl_801F21E8 = .sdata2:0x801F21E8; // type:object size:0x4 data:float +lbl_801F21EC = .sdata2:0x801F21EC; // type:object size:0x4 data:float +lbl_801F21F0 = .sdata2:0x801F21F0; // type:object size:0x4 data:float +lbl_801F21F4 = .sdata2:0x801F21F4; // type:object size:0x4 data:float +lbl_801F21F8 = .sdata2:0x801F21F8; // type:object size:0x4 data:float +lbl_801F21FC = .sdata2:0x801F21FC; // type:object size:0x4 data:float +lbl_801F2200 = .sdata2:0x801F2200; // type:object size:0x4 data:float +lbl_801F2208 = .sdata2:0x801F2208; // type:object size:0x8 data:double +lbl_801F2210 = .sdata2:0x801F2210; // type:object size:0x8 data:double +lbl_801F2218 = .sdata2:0x801F2218; // type:object size:0x8 data:double +lbl_801F2220 = .sdata2:0x801F2220; // type:object size:0x2 data:2byte +lbl_801F2222 = .sdata2:0x801F2222; // type:object size:0x2 data:2byte +lbl_801F2224 = .sdata2:0x801F2224; // type:object size:0x2 data:2byte +lbl_801F2228 = .sdata2:0x801F2228; // type:object size:0x4 data:float +lbl_801F222C = .sdata2:0x801F222C; // type:object size:0x4 data:float +lbl_801F2230 = .sdata2:0x801F2230; // type:object size:0x4 data:float +lbl_801F2234 = .sdata2:0x801F2234; // type:object size:0x4 data:float +lbl_801F2238 = .sdata2:0x801F2238; // type:object size:0x4 data:float +lbl_801F223C = .sdata2:0x801F223C; // type:object size:0x4 data:float +lbl_801F2240 = .sdata2:0x801F2240; // type:object size:0x4 data:float +lbl_801F2244 = .sdata2:0x801F2244; // type:object size:0x4 data:float +lbl_801F2248 = .sdata2:0x801F2248; // type:object size:0x4 data:float +lbl_801F224C = .sdata2:0x801F224C; // type:object size:0x4 data:float +lbl_801F2250 = .sdata2:0x801F2250; // type:object size:0x8 data:double +lbl_801F2258 = .sdata2:0x801F2258; // type:object size:0x8 data:double +lbl_801F2260 = .sdata2:0x801F2260; // type:object size:0x4 data:float +lbl_801F2264 = .sdata2:0x801F2264; // type:object size:0x4 data:float +lbl_801F2268 = .sdata2:0x801F2268; // type:object size:0x4 data:float +lbl_801F2270 = .sdata2:0x801F2270; // type:object size:0x8 data:double +lbl_801F2278 = .sdata2:0x801F2278; // type:object size:0x8 data:double +lbl_801F2280 = .sdata2:0x801F2280; // type:object size:0x4 data:float +lbl_801F2284 = .sdata2:0x801F2284; // type:object size:0x4 data:float +lbl_801F2288 = .sdata2:0x801F2288; // type:object size:0x8 data:double +lbl_801F2290 = .sdata2:0x801F2290; // type:object size:0x4 data:float +lbl_801F2294 = .sdata2:0x801F2294; // type:object size:0x4 data:float +lbl_801F2298 = .sdata2:0x801F2298; // type:object size:0x8 data:double +lbl_801F22A0 = .sdata2:0x801F22A0; // type:object size:0x4 data:float +lbl_801F22A8 = .sdata2:0x801F22A8; // type:object size:0x8 data:double +lbl_801F22B0 = .sdata2:0x801F22B0; // type:object size:0x4 data:float +lbl_801F22B4 = .sdata2:0x801F22B4; // type:object size:0x4 data:float +lbl_801F22B8 = .sdata2:0x801F22B8; // type:object size:0x4 data:float +lbl_801F22BC = .sdata2:0x801F22BC; // type:object size:0x4 data:float +lbl_801F22C0 = .sdata2:0x801F22C0; // type:object size:0x8 data:double +lbl_801F22C8 = .sdata2:0x801F22C8; // type:object size:0x4 data:float +lbl_801F22CC = .sdata2:0x801F22CC; // type:object size:0x4 data:float +lbl_801F22D0 = .sdata2:0x801F22D0; // type:object size:0x4 data:float +lbl_801F22D4 = .sdata2:0x801F22D4; // type:object size:0x4 data:float +lbl_801F22D8 = .sdata2:0x801F22D8; // type:object size:0x4 data:float +lbl_801F22E0 = .sdata2:0x801F22E0; // type:object size:0x8 data:double +lbl_801F22E8 = .sdata2:0x801F22E8; // type:object size:0x4 data:float +lbl_801F22EC = .sdata2:0x801F22EC; // type:object size:0x4 data:float +lbl_801F22F0 = .sdata2:0x801F22F0; // type:object size:0x4 data:float +lbl_801F22F4 = .sdata2:0x801F22F4; // type:object size:0x4 data:float +lbl_801F22F8 = .sdata2:0x801F22F8; // type:object size:0x4 data:float +lbl_801F22FC = .sdata2:0x801F22FC; // type:object size:0x4 data:float +lbl_801F2300 = .sdata2:0x801F2300; // type:object size:0x4 data:float +lbl_801F2308 = .sdata2:0x801F2308; // type:object size:0x8 data:double +lbl_801F2310 = .sdata2:0x801F2310; // type:object size:0x4 data:float +lbl_801F2318 = .sdata2:0x801F2318; // type:object size:0x8 data:double +lbl_801F2320 = .sdata2:0x801F2320; // type:object size:0x4 data:float +lbl_801F2324 = .sdata2:0x801F2324; // type:object size:0x4 data:float +lbl_801F2328 = .sdata2:0x801F2328; // type:object size:0x4 data:float +lbl_801F2330 = .sdata2:0x801F2330; // type:object size:0x8 data:double +lbl_801F2338 = .sdata2:0x801F2338; // type:object size:0x8 data:double +lbl_801F2340 = .sdata2:0x801F2340; // type:object size:0x8 data:double +lbl_801F2348 = .sdata2:0x801F2348; // type:object size:0x4 data:float +lbl_801F2350 = .sdata2:0x801F2350; // type:object size:0x8 data:double +lbl_801F2358 = .sdata2:0x801F2358; // type:object size:0x8 data:double +lbl_801F2360 = .sdata2:0x801F2360; // type:object size:0x8 data:double +lbl_801F2368 = .sdata2:0x801F2368; // type:object size:0x8 data:double +lbl_801F2370 = .sdata2:0x801F2370; // type:object size:0x8 data:double +lbl_801F2378 = .sdata2:0x801F2378; // type:object size:0x8 data:double +lbl_801F2380 = .sdata2:0x801F2380; // type:object size:0x8 data:double +lbl_801F2388 = .sdata2:0x801F2388; // type:object size:0x8 data:double +lbl_801F2390 = .sdata2:0x801F2390; // type:object size:0x8 data:double +lbl_801F2398 = .sdata2:0x801F2398; // type:object size:0x4 data:float +lbl_801F239C = .sdata2:0x801F239C; // type:object size:0x4 data:float +lbl_801F23A0 = .sdata2:0x801F23A0; // type:object size:0x4 data:float +lbl_801F23A4 = .sdata2:0x801F23A4; // type:object size:0x4 data:float +lbl_801F23A8 = .sdata2:0x801F23A8; // type:object size:0x8 data:double +lbl_801F23B0 = .sdata2:0x801F23B0; // type:object size:0x4 data:float +lbl_801F23B8 = .sdata2:0x801F23B8; // type:object size:0x8 data:double +lbl_801F23C0 = .sdata2:0x801F23C0; // type:object size:0x8 data:double +lbl_801F23C8 = .sdata2:0x801F23C8; // type:object size:0x4 data:float +lbl_801F23CC = .sdata2:0x801F23CC; // type:object size:0x4 data:float +lbl_801F23D0 = .sdata2:0x801F23D0; // type:object size:0x8 data:double +lbl_801F23D8 = .sdata2:0x801F23D8; // type:object size:0x4 data:float +lbl_801F23DC = .sdata2:0x801F23DC; // type:object size:0x4 data:float +lbl_801F23E0 = .sdata2:0x801F23E0; // type:object size:0x4 data:float +lbl_801F23E4 = .sdata2:0x801F23E4; // type:object size:0x4 data:float +lbl_801F23E8 = .sdata2:0x801F23E8; // type:object size:0x4 data:float +lbl_801F23EC = .sdata2:0x801F23EC; // type:object size:0x4 data:float +lbl_801F23F0 = .sdata2:0x801F23F0; // type:object size:0x8 data:double +lbl_801F23F8 = .sdata2:0x801F23F8; // type:object size:0x4 data:float +lbl_801F2400 = .sdata2:0x801F2400; // type:object size:0x8 data:double +lbl_801F2408 = .sdata2:0x801F2408; // type:object size:0x8 data:double +lbl_801F2410 = .sdata2:0x801F2410; // type:object size:0x4 data:float +lbl_801F2418 = .sdata2:0x801F2418; // type:object size:0x8 data:double +lbl_801F2420 = .sdata2:0x801F2420; // type:object size:0x4 data:float +lbl_801F2424 = .sdata2:0x801F2424; // type:object size:0x4 data:float +lbl_801F2428 = .sdata2:0x801F2428; // type:object size:0x8 data:double +lbl_801F2430 = .sdata2:0x801F2430; // type:object size:0x8 data:double +lbl_801F2438 = .sdata2:0x801F2438; // type:object size:0x4 data:float +lbl_801F243C = .sdata2:0x801F243C; // type:object size:0x4 data:float +lbl_801F2440 = .sdata2:0x801F2440; // type:object size:0x4 data:float +lbl_801F2448 = .sdata2:0x801F2448; // type:object size:0x8 data:double +lbl_801F2450 = .sdata2:0x801F2450; // type:object size:0x4 data:float +lbl_801F2454 = .sdata2:0x801F2454; // type:object size:0x4 data:float +lbl_801F2458 = .sdata2:0x801F2458; // type:object size:0x4 data:float +lbl_801F245C = .sdata2:0x801F245C; // type:object size:0x4 data:float +lbl_801F2460 = .sdata2:0x801F2460; // type:object size:0x8 data:double +lbl_801F2468 = .sdata2:0x801F2468; // type:object size:0x4 data:float +lbl_801F2470 = .sdata2:0x801F2470; // type:object size:0x8 data:double +lbl_801F2478 = .sdata2:0x801F2478; // type:object size:0x4 data:float +lbl_801F2480 = .sdata2:0x801F2480; // type:object size:0x8 data:double +lbl_801F2488 = .sdata2:0x801F2488; // type:object size:0x8 data:float +lbl_801F2490 = .sdata2:0x801F2490; // type:object size:0x4 data:float +lbl_801F2494 = .sdata2:0x801F2494; // type:object size:0x4 data:float +lbl_801F2498 = .sdata2:0x801F2498; // type:object size:0x4 data:float +lbl_801F249C = .sdata2:0x801F249C; // type:object size:0x4 data:float +lbl_801F24A0 = .sdata2:0x801F24A0; // type:object size:0x8 data:double +lbl_801F24A8 = .sdata2:0x801F24A8; // type:object size:0x8 data:double +lbl_801F24B0 = .sdata2:0x801F24B0; // type:object size:0x8 data:double +lbl_801F24B8 = .sdata2:0x801F24B8; // type:object size:0x4 data:float +lbl_801F24C0 = .sdata2:0x801F24C0; // type:object size:0x8 data:double +lbl_801F24C8 = .sdata2:0x801F24C8; // type:object size:0x2 data:2byte +lbl_801F24CA = .sdata2:0x801F24CA; // type:object size:0x2 data:2byte +lbl_801F24CC = .sdata2:0x801F24CC; // type:object size:0x2 data:2byte +lbl_801F24CE = .sdata2:0x801F24CE; // type:object size:0x2 data:2byte +lbl_801F24D0 = .sdata2:0x801F24D0; // type:object size:0x1 data:byte +lbl_801F24D1 = .sdata2:0x801F24D1; // type:object size:0x1 data:byte +lbl_801F24D2 = .sdata2:0x801F24D2; // type:object size:0x1 data:byte +lbl_801F24D3 = .sdata2:0x801F24D3; // type:object size:0x1 data:byte +lbl_801F24D4 = .sdata2:0x801F24D4; // type:object size:0x1 data:byte +lbl_801F24D5 = .sdata2:0x801F24D5; // type:object size:0x1 data:byte +lbl_801F24D6 = .sdata2:0x801F24D6; // type:object size:0x1 data:byte +lbl_801F24D7 = .sdata2:0x801F24D7; // type:object size:0x1 data:byte +lbl_801F24D8 = .sdata2:0x801F24D8; // type:object size:0x1 data:byte +lbl_801F24D9 = .sdata2:0x801F24D9; // type:object size:0x1 data:byte +lbl_801F24DA = .sdata2:0x801F24DA; // type:object size:0x1 data:byte +lbl_801F24DB = .sdata2:0x801F24DB; // type:object size:0x1 data:byte +lbl_801F24DC = .sdata2:0x801F24DC; // type:object size:0x4 data:float +lbl_801F24E0 = .sdata2:0x801F24E0; // type:object size:0x4 data:float +lbl_801F24E4 = .sdata2:0x801F24E4; // type:object size:0x1 data:byte +lbl_801F24E5 = .sdata2:0x801F24E5; // type:object size:0x1 data:byte +lbl_801F24E6 = .sdata2:0x801F24E6; // type:object size:0x1 data:byte +lbl_801F24E7 = .sdata2:0x801F24E7; // type:object size:0x1 data:byte +lbl_801F24E8 = .sdata2:0x801F24E8; // type:object size:0x4 data:float +lbl_801F24EC = .sdata2:0x801F24EC; // type:object size:0x4 data:float +lbl_801F24F0 = .sdata2:0x801F24F0; // type:object size:0x8 data:float +lbl_801F24F8 = .sdata2:0x801F24F8; // type:object size:0x4 data:float +lbl_801F24FC = .sdata2:0x801F24FC; // type:object size:0x4 data:float +lbl_801F2500 = .sdata2:0x801F2500; // type:object size:0x8 data:float +lbl_801F2508 = .sdata2:0x801F2508; // type:object size:0x4 data:float +lbl_801F250C = .sdata2:0x801F250C; // type:object size:0x4 data:float +lbl_801F2510 = .sdata2:0x801F2510; // type:object size:0x4 data:float +lbl_801F2514 = .sdata2:0x801F2514; // type:object size:0x4 data:float +lbl_801F2518 = .sdata2:0x801F2518; // type:object size:0x4 data:float +lbl_801F251C = .sdata2:0x801F251C; // type:object size:0x4 data:float +lbl_801F2520 = .sdata2:0x801F2520; // type:object size:0x8 data:double +lbl_801F2528 = .sdata2:0x801F2528; // type:object size:0x8 data:double +lbl_801F2530 = .sdata2:0x801F2530; // type:object size:0x4 data:float +lbl_801F2534 = .sdata2:0x801F2534; // type:object size:0x4 data:float +lbl_801F2538 = .sdata2:0x801F2538; // type:object size:0x8 data:double +lbl_801F2540 = .sdata2:0x801F2540; // type:object size:0x8 data:double +lbl_801F2548 = .sdata2:0x801F2548; // type:object size:0x4 data:float +lbl_801F254C = .sdata2:0x801F254C; // type:object size:0x4 data:float +lbl_801F2550 = .sdata2:0x801F2550; // type:object size:0x4 data:float +lbl_801F2554 = .sdata2:0x801F2554; // type:object size:0x4 data:float +lbl_801F2558 = .sdata2:0x801F2558; // type:object size:0x4 data:float +lbl_801F255C = .sdata2:0x801F255C; // type:object size:0x4 data:float +lbl_801F2560 = .sdata2:0x801F2560; // type:object size:0x8 data:double +lbl_801F2568 = .sdata2:0x801F2568; // type:object size:0x4 data:float +lbl_801F256C = .sdata2:0x801F256C; // type:object size:0x4 data:float +lbl_801F2570 = .sdata2:0x801F2570; // type:object size:0x8 data:double +lbl_801F2578 = .sdata2:0x801F2578; // type:object size:0x4 data:float +lbl_801F257C = .sdata2:0x801F257C; // type:object size:0x4 data:float +lbl_801F2580 = .sdata2:0x801F2580; // type:object size:0x4 data:float +lbl_801F2584 = .sdata2:0x801F2584; // type:object size:0x4 data:float +lbl_801F2588 = .sdata2:0x801F2588; // type:object size:0x4 data:float +lbl_801F258C = .sdata2:0x801F258C; // type:object size:0x4 data:float +lbl_801F2590 = .sdata2:0x801F2590; // type:object size:0x4 data:float +lbl_801F2594 = .sdata2:0x801F2594; // type:object size:0x4 data:float +lbl_801F2598 = .sdata2:0x801F2598; // type:object size:0x4 data:float +lbl_801F259C = .sdata2:0x801F259C; // type:object size:0x4 data:float +lbl_801F25A0 = .sdata2:0x801F25A0; // type:object size:0x4 data:float +lbl_801F25A4 = .sdata2:0x801F25A4; // type:object size:0x4 data:float +lbl_801F25A8 = .sdata2:0x801F25A8; // type:object size:0x4 data:float +lbl_801F25AC = .sdata2:0x801F25AC; // type:object size:0x4 data:float +lbl_801F25B0 = .sdata2:0x801F25B0; // type:object size:0x4 data:float +lbl_801F25B4 = .sdata2:0x801F25B4; // type:object size:0x4 data:float +lbl_801F25B8 = .sdata2:0x801F25B8; // type:object size:0x4 data:float +lbl_801F25BC = .sdata2:0x801F25BC; // type:object size:0x4 data:float +lbl_801F25C0 = .sdata2:0x801F25C0; // type:object size:0x4 data:float +lbl_801F25C4 = .sdata2:0x801F25C4; // type:object size:0x4 data:float +lbl_801F25C8 = .sdata2:0x801F25C8; // type:object size:0x4 data:float +lbl_801F25CC = .sdata2:0x801F25CC; // type:object size:0x4 data:float +lbl_801F25D0 = .sdata2:0x801F25D0; // type:object size:0x4 data:float +lbl_801F25D8 = .sdata2:0x801F25D8; // type:object size:0x8 data:double +lbl_801F25E0 = .sdata2:0x801F25E0; // type:object size:0x8 data:double +lbl_801F25E8 = .sdata2:0x801F25E8; // type:object size:0x4 data:float +lbl_801F25F0 = .sdata2:0x801F25F0; // type:object size:0x8 data:double +lbl_801F25F8 = .sdata2:0x801F25F8; // type:object size:0x4 data:float +lbl_801F2600 = .sdata2:0x801F2600; // type:object size:0x8 data:double +lbl_801F2608 = .sdata2:0x801F2608; // type:object size:0x4 data:float +lbl_801F260C = .sdata2:0x801F260C; // type:object size:0x4 data:float +lbl_801F2610 = .sdata2:0x801F2610; // type:object size:0x4 data:float +lbl_801F2614 = .sdata2:0x801F2614; // type:object size:0x4 data:float +lbl_801F2618 = .sdata2:0x801F2618; // type:object size:0x8 data:double +lbl_801F2620 = .sdata2:0x801F2620; // type:object size:0x8 data:double +lbl_801F2628 = .sdata2:0x801F2628; // type:object size:0x4 data:float +lbl_801F262C = .sdata2:0x801F262C; // type:object size:0x4 data:float +lbl_801F2630 = .sdata2:0x801F2630; // type:object size:0x4 data:float +lbl_801F2634 = .sdata2:0x801F2634; // type:object size:0x4 data:float +lbl_801F2638 = .sdata2:0x801F2638; // type:object size:0x4 data:float +lbl_801F263C = .sdata2:0x801F263C; // type:object size:0x4 data:float +lbl_801F2640 = .sdata2:0x801F2640; // type:object size:0x4 data:float +lbl_801F2644 = .sdata2:0x801F2644; // type:object size:0x4 data:float +lbl_801F2648 = .sdata2:0x801F2648; // type:object size:0x4 data:float +lbl_801F264C = .sdata2:0x801F264C; // type:object size:0x4 data:float +lbl_801F2650 = .sdata2:0x801F2650; // type:object size:0x4 data:float +lbl_801F2654 = .sdata2:0x801F2654; // type:object size:0x4 data:float +lbl_801F2658 = .sdata2:0x801F2658; // type:object size:0x4 data:float +lbl_801F265C = .sdata2:0x801F265C; // type:object size:0x4 data:float +lbl_801F2660 = .sdata2:0x801F2660; // type:object size:0x4 data:4byte +lbl_801F2664 = .sdata2:0x801F2664; // type:object size:0x4 data:4byte +lbl_801F2668 = .sdata2:0x801F2668; // type:object size:0x4 data:float +lbl_801F266C = .sdata2:0x801F266C; // type:object size:0x4 data:float +lbl_801F2670 = .sdata2:0x801F2670; // type:object size:0x4 data:float +lbl_801F2674 = .sdata2:0x801F2674; // type:object size:0x4 data:float +lbl_801F2678 = .sdata2:0x801F2678; // type:object size:0x4 data:float +lbl_801F267C = .sdata2:0x801F267C; // type:object size:0x4 data:float +lbl_801F2680 = .sdata2:0x801F2680; // type:object size:0x4 data:float +lbl_801F2684 = .sdata2:0x801F2684; // type:object size:0x4 data:float +lbl_801F2688 = .sdata2:0x801F2688; // type:object size:0x4 data:float +lbl_801F268C = .sdata2:0x801F268C; // type:object size:0x2 data:2byte +lbl_801F268E = .sdata2:0x801F268E; // type:object size:0x2 data:2byte +lbl_801F2690 = .sdata2:0x801F2690; // type:object size:0x2 data:2byte +lbl_801F2692 = .sdata2:0x801F2692; // type:object size:0x2 data:2byte +lbl_801F2694 = .sdata2:0x801F2694; // type:object size:0x1 data:byte +lbl_801F2695 = .sdata2:0x801F2695; // type:object size:0x1 data:byte +lbl_801F2696 = .sdata2:0x801F2696; // type:object size:0x1 data:byte +lbl_801F2697 = .sdata2:0x801F2697; // type:object size:0x1 data:byte +lbl_801F2698 = .sdata2:0x801F2698; // type:object size:0x1 data:byte +lbl_801F2699 = .sdata2:0x801F2699; // type:object size:0x1 data:byte +lbl_801F269A = .sdata2:0x801F269A; // type:object size:0x1 data:byte +lbl_801F269B = .sdata2:0x801F269B; // type:object size:0x1 data:byte +lbl_801F269C = .sdata2:0x801F269C; // type:object size:0x4 data:float +lbl_801F26A0 = .sdata2:0x801F26A0; // type:object size:0x4 data:float +lbl_801F26A4 = .sdata2:0x801F26A4; // type:object size:0x4 data:float +lbl_801F26A8 = .sdata2:0x801F26A8; // type:object size:0x4 data:float +lbl_801F26AC = .sdata2:0x801F26AC; // type:object size:0x4 data:float +lbl_801F26B0 = .sdata2:0x801F26B0; // type:object size:0x4 data:float +lbl_801F26B8 = .sdata2:0x801F26B8; // type:object size:0x8 data:double +lbl_801F26C0 = .sdata2:0x801F26C0; // type:object size:0x4 data:float +lbl_801F26C4 = .sdata2:0x801F26C4; // type:object size:0x4 data:float +lbl_801F26C8 = .sdata2:0x801F26C8; // type:object size:0x4 data:float +lbl_801F26CC = .sdata2:0x801F26CC; // type:object size:0x4 data:float +lbl_801F26D0 = .sdata2:0x801F26D0; // type:object size:0x8 data:float +winSpeedTbl = .sdata2:0x801F26D8; // type:object size:0x4 scope:local +lbl_801F26DC = .sdata2:0x801F26DC; // type:object size:0x4 data:float +lbl_801F26E0 = .sdata2:0x801F26E0; // type:object size:0x4 data:float +lbl_801F26E4 = .sdata2:0x801F26E4; // type:object size:0x4 data:float +lbl_801F26E8 = .sdata2:0x801F26E8; // type:object size:0x8 data:double +lbl_801F26F0 = .sdata2:0x801F26F0; // type:object size:0x8 data:double +lbl_801F26F8 = .sdata2:0x801F26F8; // type:object size:0x8 data:double +lbl_801F2700 = .sdata2:0x801F2700; // type:object size:0x4 data:float +lbl_801F2704 = .sdata2:0x801F2704; // type:object size:0x4 data:float +lbl_801F2708 = .sdata2:0x801F2708; // type:object size:0x8 data:float +lbl_801F2710 = .sdata2:0x801F2710; // type:object size:0x4 data:float +lbl_801F2714 = .sdata2:0x801F2714; // type:object size:0x4 data:float +lbl_801F2718 = .sdata2:0x801F2718; // type:object size:0x4 data:float +lbl_801F2720 = .sdata2:0x801F2720; // type:object size:0x8 data:double +lbl_801F2728 = .sdata2:0x801F2728; // type:object size:0x8 data:double +lbl_801F2730 = .sdata2:0x801F2730; // type:object size:0x4 data:float +lbl_801F2734 = .sdata2:0x801F2734; // type:object size:0x4 data:float +lbl_801F2738 = .sdata2:0x801F2738; // type:object size:0x4 data:float +lbl_801F273C = .sdata2:0x801F273C; // type:object size:0x4 data:float +lbl_801F2740 = .sdata2:0x801F2740; // type:object size:0x4 data:float +lbl_801F2744 = .sdata2:0x801F2744; // type:object size:0x4 data:float +lbl_801F2748 = .sdata2:0x801F2748; // type:object size:0x4 data:float +lbl_801F274C = .sdata2:0x801F274C; // type:object size:0x4 data:float +lbl_801F2750 = .sdata2:0x801F2750; // type:object size:0x4 data:float +lbl_801F2754 = .sdata2:0x801F2754; // type:object size:0x4 data:float +lbl_801F2758 = .sdata2:0x801F2758; // type:object size:0x4 data:float +lbl_801F275C = .sdata2:0x801F275C; // type:object size:0x4 data:float +lbl_801F2760 = .sdata2:0x801F2760; // type:object size:0x4 data:float +lbl_801F2764 = .sdata2:0x801F2764; // type:object size:0x4 data:float +lbl_801F2768 = .sdata2:0x801F2768; // type:object size:0x4 data:float +lbl_801F2770 = .sdata2:0x801F2770; // type:object size:0x8 data:double +lbl_801F2778 = .sdata2:0x801F2778; // type:object size:0x4 data:float +lbl_801F277C = .sdata2:0x801F277C; // type:object size:0x4 data:float +lbl_801F2780 = .sdata2:0x801F2780; // type:object size:0x1 data:byte +lbl_801F2781 = .sdata2:0x801F2781; // type:object size:0x1 data:byte +lbl_801F2782 = .sdata2:0x801F2782; // type:object size:0x1 data:byte +lbl_801F2783 = .sdata2:0x801F2783; // type:object size:0x1 data:byte +lbl_801F2784 = .sdata2:0x801F2784; // type:object size:0x1 data:byte +lbl_801F2785 = .sdata2:0x801F2785; // type:object size:0x1 data:byte +lbl_801F2786 = .sdata2:0x801F2786; // type:object size:0x1 data:byte +lbl_801F2787 = .sdata2:0x801F2787; // type:object size:0x1 data:byte +lbl_801F2788 = .sdata2:0x801F2788; // type:object size:0x4 data:float +lbl_801F278C = .sdata2:0x801F278C; // type:object size:0x4 data:float +lbl_801F2790 = .sdata2:0x801F2790; // type:object size:0x8 data:double +lbl_801F2798 = .sdata2:0x801F2798; // type:object size:0x8 data:double +lbl_801F27A0 = .sdata2:0x801F27A0; // type:object size:0x8 data:double +lbl_801F27A8 = .sdata2:0x801F27A8; // type:object size:0x4 data:float +lbl_801F27B0 = .sdata2:0x801F27B0; // type:object size:0x8 data:double +lbl_801F27B8 = .sdata2:0x801F27B8; // type:object size:0x4 data:float +lbl_801F27BC = .sdata2:0x801F27BC; // type:object size:0x4 data:float +lbl_801F27C0 = .sdata2:0x801F27C0; // type:object size:0x4 data:float +lbl_801F27C4 = .sdata2:0x801F27C4; // type:object size:0x4 data:float +lbl_801F27C8 = .sdata2:0x801F27C8; // type:object size:0x4 data:float +lbl_801F27CC = .sdata2:0x801F27CC; // type:object size:0x4 data:float +lbl_801F27D0 = .sdata2:0x801F27D0; // type:object size:0x4 data:float +lbl_801F27D4 = .sdata2:0x801F27D4; // type:object size:0x1 data:byte +lbl_801F27D5 = .sdata2:0x801F27D5; // type:object size:0x1 data:byte +lbl_801F27D6 = .sdata2:0x801F27D6; // type:object size:0x1 data:byte +lbl_801F27D7 = .sdata2:0x801F27D7; // type:object size:0x1 data:byte +lbl_801F27D8 = .sdata2:0x801F27D8; // type:object size:0x4 data:float +lbl_801F27DC = .sdata2:0x801F27DC; // type:object size:0x4 data:float +lbl_801F27E0 = .sdata2:0x801F27E0; // type:object size:0x4 data:float +lbl_801F27E4 = .sdata2:0x801F27E4; // type:object size:0x4 data:float +lbl_801F27E8 = .sdata2:0x801F27E8; // type:object size:0x4 data:float +lbl_801F27EC = .sdata2:0x801F27EC; // type:object size:0x4 data:float +lbl_801F27F0 = .sdata2:0x801F27F0; // type:object size:0x4 data:float +lbl_801F27F4 = .sdata2:0x801F27F4; // type:object size:0x4 data:float +lbl_801F27F8 = .sdata2:0x801F27F8; // type:object size:0x4 data:float +lbl_801F27FC = .sdata2:0x801F27FC; // type:object size:0x4 data:float +lbl_801F2800 = .sdata2:0x801F2800; // type:object size:0x4 data:4byte +lbl_801F2804 = .sdata2:0x801F2804; // type:object size:0x4 data:4byte +lbl_801F2808 = .sdata2:0x801F2808; // type:object size:0x4 data:float +lbl_801F2810 = .sdata2:0x801F2810; // type:object size:0x8 data:double +lbl_801F2818 = .sdata2:0x801F2818; // type:object size:0x8 data:double +lbl_801F2820 = .sdata2:0x801F2820; // type:object size:0x4 data:float +lbl_801F2824 = .sdata2:0x801F2824; // type:object size:0x4 data:float +lbl_801F2828 = .sdata2:0x801F2828; // type:object size:0x4 data:float +lbl_801F282C = .sdata2:0x801F282C; // type:object size:0x4 data:float +lbl_801F2830 = .sdata2:0x801F2830; // type:object size:0x4 data:float +lbl_801F2834 = .sdata2:0x801F2834; // type:object size:0x4 data:float +lbl_801F2838 = .sdata2:0x801F2838; // type:object size:0x4 data:float +lbl_801F283C = .sdata2:0x801F283C; // type:object size:0x4 data:float +lbl_801F2840 = .sdata2:0x801F2840; // type:object size:0x4 data:float +lbl_801F2844 = .sdata2:0x801F2844; // type:object size:0x4 data:float +lbl_801F2848 = .sdata2:0x801F2848; // type:object size:0x4 data:float +lbl_801F284C = .sdata2:0x801F284C; // type:object size:0x4 data:float +lbl_801F2850 = .sdata2:0x801F2850; // type:object size:0x4 data:float +lbl_801F2854 = .sdata2:0x801F2854; // type:object size:0x4 data:float +lbl_801F2858 = .sdata2:0x801F2858; // type:object size:0x4 data:float +lbl_801F285C = .sdata2:0x801F285C; // type:object size:0x4 data:float +lbl_801F2860 = .sdata2:0x801F2860; // type:object size:0x4 data:float +lbl_801F2868 = .sdata2:0x801F2868; // type:object size:0x8 data:double +lbl_801F2870 = .sdata2:0x801F2870; // type:object size:0x4 data:float +lbl_801F2874 = .sdata2:0x801F2874; // type:object size:0x4 data:float +lbl_801F2878 = .sdata2:0x801F2878; // type:object size:0x4 data:float +lbl_801F287C = .sdata2:0x801F287C; // type:object size:0x4 data:float +lbl_801F2880 = .sdata2:0x801F2880; // type:object size:0x4 data:float +lbl_801F2884 = .sdata2:0x801F2884; // type:object size:0x4 data:float +lbl_801F2888 = .sdata2:0x801F2888; // type:object size:0x4 data:float +lbl_801F288C = .sdata2:0x801F288C; // type:object size:0x4 data:float +lbl_801F2890 = .sdata2:0x801F2890; // type:object size:0x4 data:float +lbl_801F2894 = .sdata2:0x801F2894; // type:object size:0x4 data:float +lbl_801F2898 = .sdata2:0x801F2898; // type:object size:0x4 data:float +lbl_801F289C = .sdata2:0x801F289C; // type:object size:0x4 data:float +lbl_801F28A0 = .sdata2:0x801F28A0; // type:object size:0x4 data:float +lbl_801F28A8 = .sdata2:0x801F28A8; // type:object size:0x8 data:double +lbl_801F28B0 = .sdata2:0x801F28B0; // type:object size:0x4 data:float +lbl_801F28B4 = .sdata2:0x801F28B4; // type:object size:0x4 data:float +lbl_801F28B8 = .sdata2:0x801F28B8; // type:object size:0x4 data:float +lbl_801F28C0 = .sdata2:0x801F28C0; // type:object size:0x8 data:double +lbl_801F28C8 = .sdata2:0x801F28C8; // type:object size:0x4 data:float +lbl_801F28CC = .sdata2:0x801F28CC; // type:object size:0x4 data:float +lbl_801F28D0 = .sdata2:0x801F28D0; // type:object size:0x8 data:float +lbl_801F28D8 = .sdata2:0x801F28D8; // type:object size:0x4 data:float +lbl_801F28DC = .sdata2:0x801F28DC; // type:object size:0x4 data:4byte +lbl_801F28E0 = .sdata2:0x801F28E0; // type:object size:0x4 data:4byte +lbl_801F28E4 = .sdata2:0x801F28E4; // type:object size:0x4 data:float +lbl_801F28E8 = .sdata2:0x801F28E8; // type:object size:0x4 data:float +lbl_801F28F0 = .sdata2:0x801F28F0; // type:object size:0x8 data:double +lbl_801F28F8 = .sdata2:0x801F28F8; // type:object size:0x8 data:double +lbl_801F2900 = .sdata2:0x801F2900; // type:object size:0x4 data:float +lbl_801F2904 = .sdata2:0x801F2904; // type:object size:0x4 data:float +lbl_801F2908 = .sdata2:0x801F2908; // type:object size:0x4 data:float +lbl_801F290C = .sdata2:0x801F290C; // type:object size:0x4 data:float +lbl_801F2910 = .sdata2:0x801F2910; // type:object size:0x8 data:double +lbl_801F2918 = .sdata2:0x801F2918; // type:object size:0x4 data:float +lbl_801F291C = .sdata2:0x801F291C; // type:object size:0x4 data:float +lbl_801F2920 = .sdata2:0x801F2920; // type:object size:0x4 data:float +lbl_801F2924 = .sdata2:0x801F2924; // type:object size:0x4 data:float +lbl_801F2928 = .sdata2:0x801F2928; // type:object size:0x4 data:float +lbl_801F292C = .sdata2:0x801F292C; // type:object size:0x4 data:float +lbl_801F2930 = .sdata2:0x801F2930; // type:object size:0x4 data:float +lbl_801F2934 = .sdata2:0x801F2934; // type:object size:0x4 data:float +lbl_801F2938 = .sdata2:0x801F2938; // type:object size:0x4 data:float +lbl_801F293C = .sdata2:0x801F293C; // type:object size:0x4 data:float +lbl_801F2940 = .sdata2:0x801F2940; // type:object size:0x4 data:float +lbl_801F2944 = .sdata2:0x801F2944; // type:object size:0x4 data:float +lbl_801F2948 = .sdata2:0x801F2948; // type:object size:0x4 data:float +lbl_801F294C = .sdata2:0x801F294C; // type:object size:0x4 data:4byte +lbl_801F2950 = .sdata2:0x801F2950; // type:object size:0x4 data:4byte +lbl_801F2954 = .sdata2:0x801F2954; // type:object size:0x2 data:2byte +lbl_801F2956 = .sdata2:0x801F2956; // type:object size:0x2 data:2byte +lbl_801F2958 = .sdata2:0x801F2958; // type:object size:0x2 data:2byte +lbl_801F295A = .sdata2:0x801F295A; // type:object size:0x2 data:2byte +lbl_801F295C = .sdata2:0x801F295C; // type:object size:0x4 data:float +lbl_801F2960 = .sdata2:0x801F2960; // type:object size:0x4 data:float +lbl_801F2964 = .sdata2:0x801F2964; // type:object size:0x4 data:float +lbl_801F2968 = .sdata2:0x801F2968; // type:object size:0x4 data:float +lbl_801F296C = .sdata2:0x801F296C; // type:object size:0x4 data:float +lbl_801F2970 = .sdata2:0x801F2970; // type:object size:0x4 data:float +lbl_801F2974 = .sdata2:0x801F2974; // type:object size:0x4 data:float +lbl_801F2978 = .sdata2:0x801F2978; // type:object size:0x4 data:float +lbl_801F297C = .sdata2:0x801F297C; // type:object size:0x4 data:float +lbl_801F2980 = .sdata2:0x801F2980; // type:object size:0x4 data:float +lbl_801F2984 = .sdata2:0x801F2984; // type:object size:0x4 data:float +lbl_801F2988 = .sdata2:0x801F2988; // type:object size:0x4 data:float +lbl_801F298C = .sdata2:0x801F298C; // type:object size:0x4 data:float +lbl_801F2990 = .sdata2:0x801F2990; // type:object size:0x4 data:float +lbl_801F2994 = .sdata2:0x801F2994; // type:object size:0x4 data:float +lbl_801F2998 = .sdata2:0x801F2998; // type:object size:0x4 data:float +lbl_801F299C = .sdata2:0x801F299C; // type:object size:0x4 data:float +lbl_801F29A0 = .sdata2:0x801F29A0; // type:object size:0x4 data:float +lbl_801F29A4 = .sdata2:0x801F29A4; // type:object size:0x4 data:float +lbl_801F29A8 = .sdata2:0x801F29A8; // type:object size:0x4 data:float +lbl_801F29AC = .sdata2:0x801F29AC; // type:object size:0x4 data:float +lbl_801F29B0 = .sdata2:0x801F29B0; // type:object size:0x4 data:float +lbl_801F29B4 = .sdata2:0x801F29B4; // type:object size:0x4 data:float +lbl_801F29B8 = .sdata2:0x801F29B8; // type:object size:0x4 data:float +lbl_801F29BC = .sdata2:0x801F29BC; // type:object size:0x4 data:float +lbl_801F29C0 = .sdata2:0x801F29C0; // type:object size:0x4 data:float +lbl_801F29C4 = .sdata2:0x801F29C4; // type:object size:0x4 data:float +lbl_801F29C8 = .sdata2:0x801F29C8; // type:object size:0x4 data:float +lbl_801F29CC = .sdata2:0x801F29CC; // type:object size:0x4 data:float +lbl_801F29D0 = .sdata2:0x801F29D0; // type:object size:0x4 data:float +lbl_801F29D4 = .sdata2:0x801F29D4; // type:object size:0x4 data:float +lbl_801F29D8 = .sdata2:0x801F29D8; // type:object size:0x4 data:float +lbl_801F29DC = .sdata2:0x801F29DC; // type:object size:0x4 data:float +lbl_801F29E0 = .sdata2:0x801F29E0; // type:object size:0x4 data:float +lbl_801F29E4 = .sdata2:0x801F29E4; // type:object size:0x4 data:float +lbl_801F29E8 = .sdata2:0x801F29E8; // type:object size:0x4 data:float +lbl_801F29EC = .sdata2:0x801F29EC; // type:object size:0x4 data:float +lbl_801F29F0 = .sdata2:0x801F29F0; // type:object size:0x8 data:double +lbl_801F29F8 = .sdata2:0x801F29F8; // type:object size:0x8 data:double +lbl_801F2A00 = .sdata2:0x801F2A00; // type:object size:0x4 data:float +lbl_801F2A04 = .sdata2:0x801F2A04; // type:object size:0x4 data:float +lbl_801F2A08 = .sdata2:0x801F2A08; // type:object size:0x4 data:float +lbl_801F2A0C = .sdata2:0x801F2A0C; // type:object size:0x4 data:float +lbl_801F2A10 = .sdata2:0x801F2A10; // type:object size:0x4 data:float +lbl_801F2A14 = .sdata2:0x801F2A14; // type:object size:0x4 data:float +lbl_801F2A18 = .sdata2:0x801F2A18; // type:object size:0x4 data:float +lbl_801F2A1C = .sdata2:0x801F2A1C; // type:object size:0x4 data:float +lbl_801F2A20 = .sdata2:0x801F2A20; // type:object size:0x4 data:float +lbl_801F2A24 = .sdata2:0x801F2A24; // type:object size:0x4 data:float +lbl_801F2A28 = .sdata2:0x801F2A28; // type:object size:0x4 data:float +lbl_801F2A2C = .sdata2:0x801F2A2C; // type:object size:0x4 data:float +lbl_801F2A30 = .sdata2:0x801F2A30; // type:object size:0x8 data:double +lbl_801F2A38 = .sdata2:0x801F2A38; // type:object size:0x4 data:4byte +lbl_801F2A3C = .sdata2:0x801F2A3C; // type:object size:0x4 data:4byte +lbl_801F2A40 = .sdata2:0x801F2A40; // type:object size:0x1 data:byte +lbl_801F2A41 = .sdata2:0x801F2A41; // type:object size:0x1 data:byte +lbl_801F2A44 = .sdata2:0x801F2A44; // type:object size:0x4 data:float +lbl_801F2A48 = .sdata2:0x801F2A48; // type:object size:0x4 data:float +lbl_801F2A4C = .sdata2:0x801F2A4C; // type:object size:0x4 data:float +lbl_801F2A50 = .sdata2:0x801F2A50; // type:object size:0x4 data:float +lbl_801F2A54 = .sdata2:0x801F2A54; // type:object size:0x4 data:float +lbl_801F2A58 = .sdata2:0x801F2A58; // type:object size:0x4 data:float +lbl_801F2A5C = .sdata2:0x801F2A5C; // type:object size:0x4 data:float +lbl_801F2A60 = .sdata2:0x801F2A60; // type:object size:0x8 data:float +lbl_801F2A68 = .sdata2:0x801F2A68; // type:object size:0x4 data:float +lbl_801F2A6C = .sdata2:0x801F2A6C; // type:object size:0x4 data:float +lbl_801F2A70 = .sdata2:0x801F2A70; // type:object size:0x4 data:float +lbl_801F2A74 = .sdata2:0x801F2A74; // type:object size:0x4 data:float +coinSignMdl = .sdata2:0x801F2A78; // type:object size:0x8 scope:local +lbl_801F2A80 = .sdata2:0x801F2A80; // type:object size:0x4 data:float +lbl_801F2A84 = .sdata2:0x801F2A84; // type:object size:0x4 data:float +lbl_801F2A88 = .sdata2:0x801F2A88; // type:object size:0x4 data:float +lbl_801F2A90 = .sdata2:0x801F2A90; // type:object size:0x8 data:double +lbl_801F2A98 = .sdata2:0x801F2A98; // type:object size:0x8 data:double +lbl_801F2AA0 = .sdata2:0x801F2AA0; // type:object size:0x4 data:float +lbl_801F2AA4 = .sdata2:0x801F2AA4; // type:object size:0x4 data:float +lbl_801F2AA8 = .sdata2:0x801F2AA8; // type:object size:0x4 data:float +lbl_801F2AB0 = .sdata2:0x801F2AB0; // type:object size:0x8 data:double +lbl_801F2AB8 = .sdata2:0x801F2AB8; // type:object size:0x4 data:float +lbl_801F2ABC = .sdata2:0x801F2ABC; // type:object size:0x4 data:float +lbl_801F2AC0 = .sdata2:0x801F2AC0; // type:object size:0x4 data:float +lbl_801F2AC4 = .sdata2:0x801F2AC4; // type:object size:0x4 data:float +lbl_801F2AC8 = .sdata2:0x801F2AC8; // type:object size:0x4 data:float +lbl_801F2ACC = .sdata2:0x801F2ACC; // type:object size:0x4 data:float +lbl_801F2AD0 = .sdata2:0x801F2AD0; // type:object size:0x4 data:float +lbl_801F2AD4 = .sdata2:0x801F2AD4; // type:object size:0x4 data:float +lbl_801F2AD8 = .sdata2:0x801F2AD8; // type:object size:0x8 data:double +lbl_801F2AE0 = .sdata2:0x801F2AE0; // type:object size:0x8 data:double +lbl_801F2AE8 = .sdata2:0x801F2AE8; // type:object size:0x4 data:float +lbl_801F2AF0 = .sdata2:0x801F2AF0; // type:object size:0x8 data:double +lbl_801F2AF8 = .sdata2:0x801F2AF8; // type:object size:0x4 data:float +lbl_801F2AFC = .sdata2:0x801F2AFC; // type:object size:0x4 data:float +lbl_801F2B00 = .sdata2:0x801F2B00; // type:object size:0x4 data:float +lbl_801F2B04 = .sdata2:0x801F2B04; // type:object size:0x4 data:float +lbl_801F2B08 = .sdata2:0x801F2B08; // type:object size:0x4 data:float +lbl_801F2B0C = .sdata2:0x801F2B0C; // type:object size:0x4 data:float +lbl_801F2B10 = .sdata2:0x801F2B10; // type:object size:0x4 data:float +lbl_801F2B14 = .sdata2:0x801F2B14; // type:object size:0x4 data:float +lbl_801F2B18 = .sdata2:0x801F2B18; // type:object size:0x4 data:float +lbl_801F2B1C = .sdata2:0x801F2B1C; // type:object size:0x4 data:float +lbl_801F2B20 = .sdata2:0x801F2B20; // type:object size:0x4 data:float +lbl_801F2B24 = .sdata2:0x801F2B24; // type:object size:0x4 data:float +lbl_801F2B28 = .sdata2:0x801F2B28; // type:object size:0x4 data:float +lbl_801F2B30 = .sdata2:0x801F2B30; // type:object size:0x8 data:double +lbl_801F2B38 = .sdata2:0x801F2B38; // type:object size:0x8 data:double +lbl_801F2B40 = .sdata2:0x801F2B40; // type:object size:0x8 data:float +lbl_801F2B48 = .sdata2:0x801F2B48; // type:object size:0x4 data:float +lbl_801F2B4C = .sdata2:0x801F2B4C; // type:object size:0x4 data:float +lbl_801F2B50 = .sdata2:0x801F2B50; // type:object size:0x4 data:float +lbl_801F2B54 = .sdata2:0x801F2B54; // type:object size:0x4 data:float +lbl_801F2B58 = .sdata2:0x801F2B58; // type:object size:0x4 data:float +lbl_801F2B5C = .sdata2:0x801F2B5C; // type:object size:0x4 data:float +lbl_801F2B60 = .sdata2:0x801F2B60; // type:object size:0x4 data:float +lbl_801F2B64 = .sdata2:0x801F2B64; // type:object size:0x4 data:float +lbl_801F2B68 = .sdata2:0x801F2B68; // type:object size:0x4 data:float +lbl_801F2B6C = .sdata2:0x801F2B6C; // type:object size:0x4 data:float +lbl_801F2B70 = .sdata2:0x801F2B70; // type:object size:0x4 data:float +lbl_801F2B74 = .sdata2:0x801F2B74; // type:object size:0x4 data:float +lbl_801F2B78 = .sdata2:0x801F2B78; // type:object size:0x4 data:float +lbl_801F2B7C = .sdata2:0x801F2B7C; // type:object size:0x4 data:float +lbl_801F2B80 = .sdata2:0x801F2B80; // type:object size:0x4 data:float +lbl_801F2B84 = .sdata2:0x801F2B84; // type:object size:0x4 data:float +lbl_801F2B88 = .sdata2:0x801F2B88; // type:object size:0x8 data:double +lbl_801F2B90 = .sdata2:0x801F2B90; // type:object size:0x4 data:float +lbl_801F2B94 = .sdata2:0x801F2B94; // type:object size:0x4 data:float +lbl_801F2B98 = .sdata2:0x801F2B98; // type:object size:0x4 data:float +lbl_801F2B9C = .sdata2:0x801F2B9C; // type:object size:0x4 data:float +lbl_801F2BA0 = .sdata2:0x801F2BA0; // type:object size:0x4 data:float +lbl_801F2BA4 = .sdata2:0x801F2BA4; // type:object size:0x4 data:float +lbl_801F2BA8 = .sdata2:0x801F2BA8; // type:object size:0x4 data:float +lbl_801F2BAC = .sdata2:0x801F2BAC; // type:object size:0x4 data:float +lbl_801F2BB0 = .sdata2:0x801F2BB0; // type:object size:0x8 data:double +lbl_801F2BB8 = .sdata2:0x801F2BB8; // type:object size:0x8 data:double +lbl_801F2BC0 = .sdata2:0x801F2BC0; // type:object size:0x4 data:float +lbl_801F2BC8 = .sdata2:0x801F2BC8; // type:object size:0x8 data:double +lbl_801F2BD0 = .sdata2:0x801F2BD0; // type:object size:0x8 data:float +boxOfs = .sdata2:0x801F2BD8; // type:object size:0x8 scope:local +lbl_801F2BE0 = .sdata2:0x801F2BE0; // type:object size:0x4 data:float +lbl_801F2BE4 = .sdata2:0x801F2BE4; // type:object size:0x4 data:float +lbl_801F2BE8 = .sdata2:0x801F2BE8; // type:object size:0x4 data:float +lbl_801F2BEC = .sdata2:0x801F2BEC; // type:object size:0x4 data:float +lbl_801F2BF0 = .sdata2:0x801F2BF0; // type:object size:0x4 data:float +lbl_801F2BF4 = .sdata2:0x801F2BF4; // type:object size:0x4 data:float +lbl_801F2BF8 = .sdata2:0x801F2BF8; // type:object size:0x8 data:double +lbl_801F2C00 = .sdata2:0x801F2C00; // type:object size:0x8 data:double +lbl_801F2C08 = .sdata2:0x801F2C08; // type:object size:0x8 data:double +lbl_801F2C10 = .sdata2:0x801F2C10; // type:object size:0x4 data:float +lbl_801F2C14 = .sdata2:0x801F2C14; // type:object size:0x4 data:float +lbl_801F2C18 = .sdata2:0x801F2C18; // type:object size:0x4 data:float +lbl_801F2C1C = .sdata2:0x801F2C1C; // type:object size:0x4 data:4byte +lbl_801F2C20 = .sdata2:0x801F2C20; // type:object size:0x4 data:4byte +lbl_801F2C24 = .sdata2:0x801F2C24; // type:object size:0x4 data:float +lbl_801F2C28 = .sdata2:0x801F2C28; // type:object size:0x4 data:float +lbl_801F2C2C = .sdata2:0x801F2C2C; // type:object size:0x4 data:float +lbl_801F2C30 = .sdata2:0x801F2C30; // type:object size:0x4 data:float +lbl_801F2C34 = .sdata2:0x801F2C34; // type:object size:0x4 data:4byte +lbl_801F2C38 = .sdata2:0x801F2C38; // type:object size:0x4 data:4byte +lbl_801F2C3C = .sdata2:0x801F2C3C; // type:object size:0x4 data:float +lbl_801F2C40 = .sdata2:0x801F2C40; // type:object size:0x4 data:float +lbl_801F2C44 = .sdata2:0x801F2C44; // type:object size:0x4 data:float +lbl_801F2C48 = .sdata2:0x801F2C48; // type:object size:0x4 data:float +lbl_801F2C4C = .sdata2:0x801F2C4C; // type:object size:0x4 data:float +lbl_801F2C50 = .sdata2:0x801F2C50; // type:object size:0x8 data:double +lbl_801F2C58 = .sdata2:0x801F2C58; // type:object size:0x4 data:float +lbl_801F2C60 = .sdata2:0x801F2C60; // type:object size:0x8 data:double +lbl_801F2C68 = .sdata2:0x801F2C68; // type:object size:0x8 data:double +lbl_801F2C70 = .sdata2:0x801F2C70; // type:object size:0x8 data:double +lbl_801F2C78 = .sdata2:0x801F2C78; // type:object size:0x4 data:float +lbl_801F2C7C = .sdata2:0x801F2C7C; // type:object size:0x4 data:float +lbl_801F2C80 = .sdata2:0x801F2C80; // type:object size:0x4 data:float +lbl_801F2C84 = .sdata2:0x801F2C84; // type:object size:0x4 data:float +lbl_801F2C88 = .sdata2:0x801F2C88; // type:object size:0x4 data:float +lbl_801F2C8C = .sdata2:0x801F2C8C; // type:object size:0x4 data:float +lbl_801F2C90 = .sdata2:0x801F2C90; // type:object size:0x4 data:float +lbl_801F2C94 = .sdata2:0x801F2C94; // type:object size:0x4 data:float +lbl_801F2C98 = .sdata2:0x801F2C98; // type:object size:0x4 data:float +lbl_801F2C9C = .sdata2:0x801F2C9C; // type:object size:0x4 data:float +lbl_801F2CA0 = .sdata2:0x801F2CA0; // type:object size:0x4 data:float +lbl_801F2CA8 = .sdata2:0x801F2CA8; // type:object size:0x8 data:double +lbl_801F2CB0 = .sdata2:0x801F2CB0; // type:object size:0x4 data:float +lbl_801F2CB4 = .sdata2:0x801F2CB4; // type:object size:0x4 data:float +lbl_801F2CB8 = .sdata2:0x801F2CB8; // type:object size:0x4 data:float +lbl_801F2CBC = .sdata2:0x801F2CBC; // type:object size:0x4 data:float +lbl_801F2CC0 = .sdata2:0x801F2CC0; // type:object size:0x4 data:float +lbl_801F2CC4 = .sdata2:0x801F2CC4; // type:object size:0x4 data:float +lbl_801F2CC8 = .sdata2:0x801F2CC8; // type:object size:0x4 data:float +lbl_801F2CCC = .sdata2:0x801F2CCC; // type:object size:0x4 data:float +lbl_801F2CD0 = .sdata2:0x801F2CD0; // type:object size:0x4 data:float +lbl_801F2CD4 = .sdata2:0x801F2CD4; // type:object size:0x4 data:float +lbl_801F2CD8 = .sdata2:0x801F2CD8; // type:object size:0x4 data:float +lbl_801F2CDC = .sdata2:0x801F2CDC; // type:object size:0x4 data:float +lbl_801F2CE0 = .sdata2:0x801F2CE0; // type:object size:0x4 data:float +lbl_801F2CE4 = .sdata2:0x801F2CE4; // type:object size:0x4 data:float +lbl_801F2CE8 = .sdata2:0x801F2CE8; // type:object size:0x4 data:float +lbl_801F2CEC = .sdata2:0x801F2CEC; // type:object size:0x4 data:float +lbl_801F2CF0 = .sdata2:0x801F2CF0; // type:object size:0x4 data:float +lbl_801F2CF4 = .sdata2:0x801F2CF4; // type:object size:0x4 data:float +lbl_801F2CF8 = .sdata2:0x801F2CF8; // type:object size:0x8 data:float +lbl_801F2D00 = .sdata2:0x801F2D00; // type:object size:0x4 data:float +lbl_801F2D04 = .sdata2:0x801F2D04; // type:object size:0x4 data:float +lbl_801F2D08 = .sdata2:0x801F2D08; // type:object size:0x4 data:float +lbl_801F2D0C = .sdata2:0x801F2D0C; // type:object size:0x4 data:float +lbl_801F2D10 = .sdata2:0x801F2D10; // type:object size:0x4 data:float +lbl_801F2D14 = .sdata2:0x801F2D14; // type:object size:0x4 data:float +lbl_801F2D18 = .sdata2:0x801F2D18; // type:object size:0x4 data:float +lbl_801F2D1C = .sdata2:0x801F2D1C; // type:object size:0x4 data:float +lbl_801F2D20 = .sdata2:0x801F2D20; // type:object size:0x4 data:float +lbl_801F2D24 = .sdata2:0x801F2D24; // type:object size:0x4 data:float +lbl_801F2D28 = .sdata2:0x801F2D28; // type:object size:0x4 data:float +lbl_801F2D2C = .sdata2:0x801F2D2C; // type:object size:0x4 data:float +lbl_801F2D30 = .sdata2:0x801F2D30; // type:object size:0x4 data:float +lbl_801F2D34 = .sdata2:0x801F2D34; // type:object size:0x4 data:float +lbl_801F2D38 = .sdata2:0x801F2D38; // type:object size:0x8 data:double +lbl_801F2D40 = .sdata2:0x801F2D40; // type:object size:0x8 data:double +lbl_801F2D48 = .sdata2:0x801F2D48; // type:object size:0x4 data:float +lbl_801F2D50 = .sdata2:0x801F2D50; // type:object size:0x8 data:double +lbl_801F2D58 = .sdata2:0x801F2D58; // type:object size:0x8 data:double +lbl_801F2D60 = .sdata2:0x801F2D60; // type:object size:0x8 data:double +lbl_801F2D68 = .sdata2:0x801F2D68; // type:object size:0x4 data:float +lbl_801F2D70 = .sdata2:0x801F2D70; // type:object size:0x8 data:double +lbl_801F2D78 = .sdata2:0x801F2D78; // type:object size:0x4 data:float +lbl_801F2D7C = .sdata2:0x801F2D7C; // type:object size:0x4 data:float +lbl_801F2D80 = .sdata2:0x801F2D80; // type:object size:0x4 data:float +lbl_801F2D84 = .sdata2:0x801F2D84; // type:object size:0x4 data:float +lbl_801F2D88 = .sdata2:0x801F2D88; // type:object size:0x4 data:float +lbl_801F2D8C = .sdata2:0x801F2D8C; // type:object size:0x4 data:float +lbl_801F2D90 = .sdata2:0x801F2D90; // type:object size:0x4 data:float +lbl_801F2D94 = .sdata2:0x801F2D94; // type:object size:0x4 data:float +lbl_801F2D98 = .sdata2:0x801F2D98; // type:object size:0x4 data:float +lbl_801F2D9C = .sdata2:0x801F2D9C; // type:object size:0x4 data:float +lbl_801F2DA0 = .sdata2:0x801F2DA0; // type:object size:0x4 data:float +lbl_801F2DA4 = .sdata2:0x801F2DA4; // type:object size:0x4 data:float +lbl_801F2DA8 = .sdata2:0x801F2DA8; // type:object size:0x8 data:float +lbl_801F2DB0 = .sdata2:0x801F2DB0; // type:object size:0x4 data:float +lbl_801F2DB4 = .sdata2:0x801F2DB4; // type:object size:0x4 data:float +lbl_801F2DB8 = .sdata2:0x801F2DB8; // type:object size:0x4 data:float +lbl_801F2DBC = .sdata2:0x801F2DBC; // type:object size:0x4 data:float +lbl_801F2DC0 = .sdata2:0x801F2DC0; // type:object size:0x4 data:float +lbl_801F2DC4 = .sdata2:0x801F2DC4; // type:object size:0x4 data:float +lbl_801F2DC8 = .sdata2:0x801F2DC8; // type:object size:0x4 data:float +lbl_801F2DCC = .sdata2:0x801F2DCC; // type:object size:0x4 data:float +lbl_801F2DD0 = .sdata2:0x801F2DD0; // type:object size:0x4 data:float +lbl_801F2DD8 = .sdata2:0x801F2DD8; // type:object size:0x8 data:double +lbl_801F2DE0 = .sdata2:0x801F2DE0; // type:object size:0x8 data:double +lbl_801F2DE8 = .sdata2:0x801F2DE8; // type:object size:0x8 data:double +lbl_801F2DF0 = .sdata2:0x801F2DF0; // type:object size:0x4 data:float +lbl_801F2DF4 = .sdata2:0x801F2DF4; // type:object size:0x4 data:float +lbl_801F2DF8 = .sdata2:0x801F2DF8; // type:object size:0x4 data:float +lbl_801F2DFC = .sdata2:0x801F2DFC; // type:object size:0x4 data:float +lbl_801F2E00 = .sdata2:0x801F2E00; // type:object size:0x8 data:double +lbl_801F2E08 = .sdata2:0x801F2E08; // type:object size:0x8 data:double +lbl_801F2E10 = .sdata2:0x801F2E10; // type:object size:0x4 data:float +lbl_801F2E14 = .sdata2:0x801F2E14; // type:object size:0x4 data:float +lbl_801F2E18 = .sdata2:0x801F2E18; // type:object size:0x4 data:float +lbl_801F2E1C = .sdata2:0x801F2E1C; // type:object size:0x4 data:float +lbl_801F2E20 = .sdata2:0x801F2E20; // type:object size:0x4 data:float +lbl_801F2E24 = .sdata2:0x801F2E24; // type:object size:0x4 data:float +lbl_801F2E28 = .sdata2:0x801F2E28; // type:object size:0x4 data:float +lbl_801F2E30 = .sdata2:0x801F2E30; // type:object size:0x8 data:double +lbl_801F2E38 = .sdata2:0x801F2E38; // type:object size:0x4 data:float +lbl_801F2E3C = .sdata2:0x801F2E3C; // type:object size:0x4 data:float +lbl_801F2E40 = .sdata2:0x801F2E40; // type:object size:0x4 data:float +lbl_801F2E44 = .sdata2:0x801F2E44; // type:object size:0x4 data:float +lbl_801F2E48 = .sdata2:0x801F2E48; // type:object size:0x4 data:float +lbl_801F2E4C = .sdata2:0x801F2E4C; // type:object size:0x4 data:float +lbl_801F2E50 = .sdata2:0x801F2E50; // type:object size:0x4 data:float +lbl_801F2E54 = .sdata2:0x801F2E54; // type:object size:0x4 data:float +lbl_801F2E58 = .sdata2:0x801F2E58; // type:object size:0x4 data:float +lbl_801F2E5C = .sdata2:0x801F2E5C; // type:object size:0x4 data:float +lbl_801F2E60 = .sdata2:0x801F2E60; // type:object size:0x4 data:float +lbl_801F2E64 = .sdata2:0x801F2E64; // type:object size:0x4 data:float +lbl_801F2E68 = .sdata2:0x801F2E68; // type:object size:0x4 data:float +lbl_801F2E6C = .sdata2:0x801F2E6C; // type:object size:0x4 data:float +lbl_801F2E70 = .sdata2:0x801F2E70; // type:object size:0x4 data:float +lbl_801F2E74 = .sdata2:0x801F2E74; // type:object size:0x4 data:float +lbl_801F2E78 = .sdata2:0x801F2E78; // type:object size:0x4 data:float +lbl_801F2E7C = .sdata2:0x801F2E7C; // type:object size:0x4 data:float +lbl_801F2E80 = .sdata2:0x801F2E80; // type:object size:0x4 data:float +lbl_801F2E84 = .sdata2:0x801F2E84; // type:object size:0x4 data:float +lbl_801F2E88 = .sdata2:0x801F2E88; // type:object size:0x4 data:float +lbl_801F2E8C = .sdata2:0x801F2E8C; // type:object size:0x4 data:float +lbl_801F2E90 = .sdata2:0x801F2E90; // type:object size:0x4 data:float +lbl_801F2E94 = .sdata2:0x801F2E94; // type:object size:0x4 data:float +lbl_801F2E98 = .sdata2:0x801F2E98; // type:object size:0x4 data:float +lbl_801F2E9C = .sdata2:0x801F2E9C; // type:object size:0x4 data:float +lbl_801F2EA0 = .sdata2:0x801F2EA0; // type:object size:0x8 data:double +lbl_801F2EA8 = .sdata2:0x801F2EA8; // type:object size:0x8 data:double +lbl_801F2EB0 = .sdata2:0x801F2EB0; // type:object size:0x8 data:double +lbl_801F2EB8 = .sdata2:0x801F2EB8; // type:object size:0x4 data:float +lbl_801F2EBC = .sdata2:0x801F2EBC; // type:object size:0x4 data:float +lbl_801F2EC0 = .sdata2:0x801F2EC0; // type:object size:0x4 data:float +lbl_801F2EC4 = .sdata2:0x801F2EC4; // type:object size:0x4 data:float +lbl_801F2EC8 = .sdata2:0x801F2EC8; // type:object size:0x4 data:float +lbl_801F2ECC = .sdata2:0x801F2ECC; // type:object size:0x4 data:float +lbl_801F2ED0 = .sdata2:0x801F2ED0; // type:object size:0x4 data:float +lbl_801F2ED8 = .sdata2:0x801F2ED8; // type:object size:0x8 data:double +lbl_801F2EE0 = .sdata2:0x801F2EE0; // type:object size:0x8 data:double +lbl_801F2EE8 = .sdata2:0x801F2EE8; // type:object size:0x8 data:double +lbl_801F2EF0 = .sdata2:0x801F2EF0; // type:object size:0x4 data:float +lbl_801F2EF4 = .sdata2:0x801F2EF4; // type:object size:0x4 data:float +lbl_801F2EF8 = .sdata2:0x801F2EF8; // type:object size:0x4 data:float +lbl_801F2EFC = .sdata2:0x801F2EFC; // type:object size:0x4 data:float +lbl_801F2F00 = .sdata2:0x801F2F00; // type:object size:0x4 data:float +lbl_801F2F04 = .sdata2:0x801F2F04; // type:object size:0x4 data:float +lbl_801F2F08 = .sdata2:0x801F2F08; // type:object size:0x4 data:float +lbl_801F2F0C = .sdata2:0x801F2F0C; // type:object size:0x4 data:float +lbl_801F2F10 = .sdata2:0x801F2F10; // type:object size:0x4 data:float +lbl_801F2F14 = .sdata2:0x801F2F14; // type:object size:0x4 data:float +lbl_801F2F18 = .sdata2:0x801F2F18; // type:object size:0x8 data:double +lbl_801F2F20 = .sdata2:0x801F2F20; // type:object size:0x4 data:float +lbl_801F2F24 = .sdata2:0x801F2F24; // type:object size:0x4 data:float +lbl_801F2F28 = .sdata2:0x801F2F28; // type:object size:0x4 data:float +lbl_801F2F2C = .sdata2:0x801F2F2C; // type:object size:0x4 data:float +lbl_801F2F30 = .sdata2:0x801F2F30; // type:object size:0x4 data:float +lbl_801F2F34 = .sdata2:0x801F2F34; // type:object size:0x4 data:float +lbl_801F2F38 = .sdata2:0x801F2F38; // type:object size:0x4 data:float +lbl_801F2F3C = .sdata2:0x801F2F3C; // type:object size:0x4 data:float +lbl_801F2F40 = .sdata2:0x801F2F40; // type:object size:0x4 data:float +lbl_801F2F44 = .sdata2:0x801F2F44; // type:object size:0x4 data:float +lbl_801F2F48 = .sdata2:0x801F2F48; // type:object size:0x4 data:float +lbl_801F2F4C = .sdata2:0x801F2F4C; // type:object size:0x4 data:float +lbl_801F2F50 = .sdata2:0x801F2F50; // type:object size:0x4 data:float +lbl_801F2F54 = .sdata2:0x801F2F54; // type:object size:0x4 data:float +lbl_801F2F58 = .sdata2:0x801F2F58; // type:object size:0x4 data:float +lbl_801F2F5C = .sdata2:0x801F2F5C; // type:object size:0x4 data:float +lbl_801F2F60 = .sdata2:0x801F2F60; // type:object size:0x4 data:float +lbl_801F2F64 = .sdata2:0x801F2F64; // type:object size:0x4 data:float +lbl_801F2F68 = .sdata2:0x801F2F68; // type:object size:0x4 data:float +lbl_801F2F6C = .sdata2:0x801F2F6C; // type:object size:0x4 data:float +lbl_801F2F70 = .sdata2:0x801F2F70; // type:object size:0x4 data:float +lbl_801F2F74 = .sdata2:0x801F2F74; // type:object size:0x4 data:float +lbl_801F2F78 = .sdata2:0x801F2F78; // type:object size:0x4 data:float +lbl_801F2F7C = .sdata2:0x801F2F7C; // type:object size:0x4 data:float +lbl_801F2F80 = .sdata2:0x801F2F80; // type:object size:0x8 data:double +lbl_801F2F88 = .sdata2:0x801F2F88; // type:object size:0x8 data:double +lbl_801F2F90 = .sdata2:0x801F2F90; // type:object size:0x4 data:float +lbl_801F2F94 = .sdata2:0x801F2F94; // type:object size:0x4 data:float +lbl_801F2F98 = .sdata2:0x801F2F98; // type:object size:0x4 data:float +lbl_801F2F9C = .sdata2:0x801F2F9C; // type:object size:0x4 data:float +lbl_801F2FA0 = .sdata2:0x801F2FA0; // type:object size:0x4 data:float +lbl_801F2FA8 = .sdata2:0x801F2FA8; // type:object size:0x8 data:double +lbl_801F2FB0 = .sdata2:0x801F2FB0; // type:object size:0x4 data:float +lbl_801F2FB4 = .sdata2:0x801F2FB4; // type:object size:0x4 data:float +lbl_801F2FB8 = .sdata2:0x801F2FB8; // type:object size:0x4 data:float +lbl_801F2FBC = .sdata2:0x801F2FBC; // type:object size:0x4 data:float +lbl_801F2FC0 = .sdata2:0x801F2FC0; // type:object size:0x4 data:float +lbl_801F2FC4 = .sdata2:0x801F2FC4; // type:object size:0x4 data:float +lbl_801F2FC8 = .sdata2:0x801F2FC8; // type:object size:0x4 data:float +lbl_801F2FCC = .sdata2:0x801F2FCC; // type:object size:0x4 data:float +lbl_801F2FD0 = .sdata2:0x801F2FD0; // type:object size:0x4 data:float +lbl_801F2FD4 = .sdata2:0x801F2FD4; // type:object size:0x4 data:float +lbl_801F2FD8 = .sdata2:0x801F2FD8; // type:object size:0x4 data:float +lbl_801F2FE0 = .sdata2:0x801F2FE0; // type:object size:0x8 data:double +lbl_801F2FE8 = .sdata2:0x801F2FE8; // type:object size:0x4 data:float +lbl_801F2FEC = .sdata2:0x801F2FEC; // type:object size:0x4 data:float +lbl_801F2FF0 = .sdata2:0x801F2FF0; // type:object size:0x4 data:float +lbl_801F2FF4 = .sdata2:0x801F2FF4; // type:object size:0x4 data:float +lbl_801F2FF8 = .sdata2:0x801F2FF8; // type:object size:0x4 data:float +lbl_801F2FFC = .sdata2:0x801F2FFC; // type:object size:0x4 data:float +lbl_801F3000 = .sdata2:0x801F3000; // type:object size:0x4 data:float +lbl_801F3004 = .sdata2:0x801F3004; // type:object size:0x4 data:float +lbl_801F3008 = .sdata2:0x801F3008; // type:object size:0x4 data:float +lbl_801F300C = .sdata2:0x801F300C; // type:object size:0x4 data:float +lbl_801F3010 = .sdata2:0x801F3010; // type:object size:0x4 data:float +lbl_801F3014 = .sdata2:0x801F3014; // type:object size:0x4 data:float +lbl_801F3018 = .sdata2:0x801F3018; // type:object size:0x4 data:float +lbl_801F301C = .sdata2:0x801F301C; // type:object size:0x4 data:float +lbl_801F3020 = .sdata2:0x801F3020; // type:object size:0x4 data:float +lbl_801F3024 = .sdata2:0x801F3024; // type:object size:0x4 data:float +lbl_801F3028 = .sdata2:0x801F3028; // type:object size:0x4 data:float +lbl_801F302C = .sdata2:0x801F302C; // type:object size:0x4 data:float +lbl_801F3030 = .sdata2:0x801F3030; // type:object size:0x4 data:float +lbl_801F3038 = .sdata2:0x801F3038; // type:object size:0x8 data:double +lbl_801F3040 = .sdata2:0x801F3040; // type:object size:0x4 data:float +lbl_801F3048 = .sdata2:0x801F3048; // type:object size:0x8 data:double +lbl_801F3050 = .sdata2:0x801F3050; // type:object size:0x4 data:float +lbl_801F3054 = .sdata2:0x801F3054; // type:object size:0x4 data:float +lbl_801F3058 = .sdata2:0x801F3058; // type:object size:0x4 data:float +lbl_801F305C = .sdata2:0x801F305C; // type:object size:0x4 data:float +lbl_801F3060 = .sdata2:0x801F3060; // type:object size:0x4 data:float +lbl_801F3068 = .sdata2:0x801F3068; // type:object size:0x8 data:double +lbl_801F3070 = .sdata2:0x801F3070; // type:object size:0x4 data:float +lbl_801F3074 = .sdata2:0x801F3074; // type:object size:0x4 data:float +lbl_801F3078 = .sdata2:0x801F3078; // type:object size:0x4 data:float +lbl_801F307C = .sdata2:0x801F307C; // type:object size:0x4 data:float +lbl_801F3080 = .sdata2:0x801F3080; // type:object size:0x4 data:float +lbl_801F3084 = .sdata2:0x801F3084; // type:object size:0x4 data:float +lbl_801F3088 = .sdata2:0x801F3088; // type:object size:0x4 data:float +lbl_801F308C = .sdata2:0x801F308C; // type:object size:0x4 data:float +lbl_801F3090 = .sdata2:0x801F3090; // type:object size:0x4 data:float +lbl_801F3094 = .sdata2:0x801F3094; // type:object size:0x4 data:float +lbl_801F3098 = .sdata2:0x801F3098; // type:object size:0x4 data:float +lbl_801F309C = .sdata2:0x801F309C; // type:object size:0x4 data:float +lbl_801F30A0 = .sdata2:0x801F30A0; // type:object size:0x1 data:byte +lbl_801F30A1 = .sdata2:0x801F30A1; // type:object size:0x1 data:byte +lbl_801F30A2 = .sdata2:0x801F30A2; // type:object size:0x1 data:byte +lbl_801F30A3 = .sdata2:0x801F30A3; // type:object size:0x1 data:byte +lbl_801F30A4 = .sdata2:0x801F30A4; // type:object size:0x4 data:float +lbl_801F30A8 = .sdata2:0x801F30A8; // type:object size:0x4 data:float +lbl_801F30AC = .sdata2:0x801F30AC; // type:object size:0x4 data:float +lbl_801F30B0 = .sdata2:0x801F30B0; // type:object size:0x4 data:float +lbl_801F30B4 = .sdata2:0x801F30B4; // type:object size:0x4 data:float +lbl_801F30B8 = .sdata2:0x801F30B8; // type:object size:0x8 data:double +lbl_801F30C0 = .sdata2:0x801F30C0; // type:object size:0x8 data:double +lbl_801F30C8 = .sdata2:0x801F30C8; // type:object size:0x4 data:float +lbl_801F30CC = .sdata2:0x801F30CC; // type:object size:0x4 data:float +lbl_801F30D0 = .sdata2:0x801F30D0; // type:object size:0x4 data:float +lbl_801F30D4 = .sdata2:0x801F30D4; // type:object size:0x4 data:float +lbl_801F30D8 = .sdata2:0x801F30D8; // type:object size:0x4 data:float +lbl_801F30DC = .sdata2:0x801F30DC; // type:object size:0x4 data:float +lbl_801F30E0 = .sdata2:0x801F30E0; // type:object size:0x8 data:double +lbl_801F30E8 = .sdata2:0x801F30E8; // type:object size:0x4 data:float +lbl_801F30EC = .sdata2:0x801F30EC; // type:object size:0x4 data:float +lbl_801F30F0 = .sdata2:0x801F30F0; // type:object size:0x8 data:double +lbl_801F30F8 = .sdata2:0x801F30F8; // type:object size:0x8 data:float +lbl_801F3100 = .sdata2:0x801F3100; // type:object size:0x4 data:float +lbl_801F3104 = .sdata2:0x801F3104; // type:object size:0x4 data:float +lbl_801F3108 = .sdata2:0x801F3108; // type:object size:0x4 data:float +lbl_801F310C = .sdata2:0x801F310C; // type:object size:0x4 data:float +lbl_801F3110 = .sdata2:0x801F3110; // type:object size:0x4 data:float +lbl_801F3114 = .sdata2:0x801F3114; // type:object size:0x4 data:float +lbl_801F3118 = .sdata2:0x801F3118; // type:object size:0x4 data:float +lbl_801F311C = .sdata2:0x801F311C; // type:object size:0x4 data:float +lbl_801F3120 = .sdata2:0x801F3120; // type:object size:0x4 data:float +lbl_801F3124 = .sdata2:0x801F3124; // type:object size:0x4 data:float +lbl_801F3128 = .sdata2:0x801F3128; // type:object size:0x2 data:2byte +lbl_801F312A = .sdata2:0x801F312A; // type:object size:0x2 data:2byte +lbl_801F312C = .sdata2:0x801F312C; // type:object size:0x2 data:2byte +lbl_801F3130 = .sdata2:0x801F3130; // type:object size:0x4 data:float +lbl_801F3134 = .sdata2:0x801F3134; // type:object size:0x4 data:float +lbl_801F3138 = .sdata2:0x801F3138; // type:object size:0x4 data:float +lbl_801F313C = .sdata2:0x801F313C; // type:object size:0x4 data:float +lbl_801F3140 = .sdata2:0x801F3140; // type:object size:0x4 data:float +lbl_801F3144 = .sdata2:0x801F3144; // type:object size:0x4 data:float +lbl_801F3148 = .sdata2:0x801F3148; // type:object size:0x4 data:float +lbl_801F314C = .sdata2:0x801F314C; // type:object size:0x4 data:float +lbl_801F3150 = .sdata2:0x801F3150; // type:object size:0x8 data:double +lbl_801F3158 = .sdata2:0x801F3158; // type:object size:0x8 data:double +lbl_801F3160 = .sdata2:0x801F3160; // type:object size:0x8 data:double +lbl_801F3168 = .sdata2:0x801F3168; // type:object size:0x4 data:float +lbl_801F316C = .sdata2:0x801F316C; // type:object size:0x4 data:float +lbl_801F3170 = .sdata2:0x801F3170; // type:object size:0x4 data:float +lbl_801F3174 = .sdata2:0x801F3174; // type:object size:0x4 data:float +lbl_801F3178 = .sdata2:0x801F3178; // type:object size:0x4 data:float +lbl_801F317C = .sdata2:0x801F317C; // type:object size:0x4 data:float +lbl_801F3180 = .sdata2:0x801F3180; // type:object size:0x4 data:float +lbl_801F3184 = .sdata2:0x801F3184; // type:object size:0x4 data:float +lbl_801F3188 = .sdata2:0x801F3188; // type:object size:0x4 data:float +lbl_801F3190 = .sdata2:0x801F3190; // type:object size:0x8 data:double +lbl_801F3198 = .sdata2:0x801F3198; // type:object size:0x1 data:byte +lbl_801F3199 = .sdata2:0x801F3199; // type:object size:0x1 data:byte +lbl_801F319A = .sdata2:0x801F319A; // type:object size:0x1 data:byte +lbl_801F319C = .sdata2:0x801F319C; // type:object size:0x4 data:float +lbl_801F31A0 = .sdata2:0x801F31A0; // type:object size:0x8 data:double +lbl_801F31A8 = .sdata2:0x801F31A8; // type:object size:0x8 data:float +battleCoinTbl = .sdata2:0x801F31B0; // type:object size:0x5 scope:local +lbl_801F31B8 = .sdata2:0x801F31B8; // type:object size:0x4 data:float +lbl_801F31BC = .sdata2:0x801F31BC; // type:object size:0x4 data:float +lbl_801F31C0 = .sdata2:0x801F31C0; // type:object size:0x4 data:float +lbl_801F31C4 = .sdata2:0x801F31C4; // type:object size:0x4 data:float +lbl_801F31C8 = .sdata2:0x801F31C8; // type:object size:0x4 data:float +lbl_801F31CC = .sdata2:0x801F31CC; // type:object size:0x4 data:float +lbl_801F31D0 = .sdata2:0x801F31D0; // type:object size:0x4 data:float +lbl_801F31D4 = .sdata2:0x801F31D4; // type:object size:0x4 data:float +lbl_801F31D8 = .sdata2:0x801F31D8; // type:object size:0x4 data:float +lbl_801F31DC = .sdata2:0x801F31DC; // type:object size:0x4 data:float +lbl_801F31E0 = .sdata2:0x801F31E0; // type:object size:0x4 data:float +lbl_801F31E4 = .sdata2:0x801F31E4; // type:object size:0x4 data:float +lbl_801F31E8 = .sdata2:0x801F31E8; // type:object size:0x4 data:float +lbl_801F31EC = .sdata2:0x801F31EC; // type:object size:0x4 data:float +lbl_801F31F0 = .sdata2:0x801F31F0; // type:object size:0x4 data:float +lbl_801F31F4 = .sdata2:0x801F31F4; // type:object size:0x4 data:float +lbl_801F31F8 = .sdata2:0x801F31F8; // type:object size:0x4 data:float +lbl_801F31FC = .sdata2:0x801F31FC; // type:object size:0x4 data:float +lbl_801F3200 = .sdata2:0x801F3200; // type:object size:0x4 data:float +lbl_801F3204 = .sdata2:0x801F3204; // type:object size:0x4 data:float +lbl_801F3208 = .sdata2:0x801F3208; // type:object size:0x4 data:float +lbl_801F3210 = .sdata2:0x801F3210; // type:object size:0x8 data:double +lbl_801F3218 = .sdata2:0x801F3218; // type:object size:0x8 data:double +lbl_801F3220 = .sdata2:0x801F3220; // type:object size:0x4 data:float +lbl_801F3224 = .sdata2:0x801F3224; // type:object size:0x4 data:float +lbl_801F3228 = .sdata2:0x801F3228; // type:object size:0x4 data:float +lbl_801F322C = .sdata2:0x801F322C; // type:object size:0x4 data:float +lbl_801F3230 = .sdata2:0x801F3230; // type:object size:0x4 data:float +lbl_801F3234 = .sdata2:0x801F3234; // type:object size:0x4 data:float +lbl_801F3238 = .sdata2:0x801F3238; // type:object size:0x4 data:float +lbl_801F323C = .sdata2:0x801F323C; // type:object size:0x4 data:float +lbl_801F3240 = .sdata2:0x801F3240; // type:object size:0x8 data:double +lbl_801F3248 = .sdata2:0x801F3248; // type:object size:0x4 data:float +lbl_801F3250 = .sdata2:0x801F3250; // type:object size:0x8 data:double +lbl_801F3258 = .sdata2:0x801F3258; // type:object size:0x4 data:float +lbl_801F325C = .sdata2:0x801F325C; // type:object size:0x4 data:float +lbl_801F3260 = .sdata2:0x801F3260; // type:object size:0x1 data:byte +lbl_801F3261 = .sdata2:0x801F3261; // type:object size:0x1 data:byte +lbl_801F3262 = .sdata2:0x801F3262; // type:object size:0x1 data:byte +lbl_801F3263 = .sdata2:0x801F3263; // type:object size:0x1 data:byte +lbl_801F3264 = .sdata2:0x801F3264; // type:object size:0x1 data:byte +lbl_801F3268 = .sdata2:0x801F3268; // type:object size:0x4 data:float +lbl_801F326C = .sdata2:0x801F326C; // type:object size:0x4 data:float +lbl_801F3270 = .sdata2:0x801F3270; // type:object size:0x4 data:float +lbl_801F3274 = .sdata2:0x801F3274; // type:object size:0x4 data:float +lbl_801F3278 = .sdata2:0x801F3278; // type:object size:0x4 data:float +lbl_801F327C = .sdata2:0x801F327C; // type:object size:0x4 data:float +lbl_801F3280 = .sdata2:0x801F3280; // type:object size:0x4 data:float +lbl_801F3284 = .sdata2:0x801F3284; // type:object size:0x4 data:float +lbl_801F3288 = .sdata2:0x801F3288; // type:object size:0x4 data:float +lbl_801F328C = .sdata2:0x801F328C; // type:object size:0x4 data:float +lbl_801F3290 = .sdata2:0x801F3290; // type:object size:0x4 data:float +lbl_801F3294 = .sdata2:0x801F3294; // type:object size:0x4 data:float +lbl_801F3298 = .sdata2:0x801F3298; // type:object size:0x4 data:float +lbl_801F329C = .sdata2:0x801F329C; // type:object size:0x4 data:float +lbl_801F32A0 = .sdata2:0x801F32A0; // type:object size:0x8 data:double +lbl_801F32A8 = .sdata2:0x801F32A8; // type:object size:0x8 data:double +lbl_801F32B0 = .sdata2:0x801F32B0; // type:object size:0x4 data:float +lbl_801F32B8 = .sdata2:0x801F32B8; // type:object size:0x8 data:double +lbl_801F32C0 = .sdata2:0x801F32C0; // type:object size:0x8 data:double +lbl_801F32C8 = .sdata2:0x801F32C8; // type:object size:0x8 data:double +lbl_801F32D0 = .sdata2:0x801F32D0; // type:object size:0x8 data:double +lbl_801F32D8 = .sdata2:0x801F32D8; // type:object size:0x4 data:float +lbl_801F32E0 = .sdata2:0x801F32E0; // type:object size:0x8 data:double +lbl_801F32E8 = .sdata2:0x801F32E8; // type:object size:0x4 data:float +lbl_801F32EC = .sdata2:0x801F32EC; // type:object size:0x4 data:float +lbl_801F32F0 = .sdata2:0x801F32F0; // type:object size:0x4 data:float +lbl_801F32F8 = .sdata2:0x801F32F8; // type:object size:0x8 data:double +lbl_801F3300 = .sdata2:0x801F3300; // type:object size:0x8 data:double +lbl_801F3308 = .sdata2:0x801F3308; // type:object size:0x4 data:float +lbl_801F3310 = .sdata2:0x801F3310; // type:object size:0x8 data:double +lbl_801F3318 = .sdata2:0x801F3318; // type:object size:0x4 data:float +lbl_801F331C = .sdata2:0x801F331C; // type:object size:0x4 data:float +lbl_801F3320 = .sdata2:0x801F3320; // type:object size:0x4 data:float +lbl_801F3324 = .sdata2:0x801F3324; // type:object size:0x4 data:float +lbl_801F3328 = .sdata2:0x801F3328; // type:object size:0x8 data:double +lbl_801F3330 = .sdata2:0x801F3330; // type:object size:0x8 data:double +lbl_801F3338 = .sdata2:0x801F3338; // type:object size:0x4 data:float +lbl_801F333C = .sdata2:0x801F333C; // type:object size:0x4 data:float +lbl_801F3340 = .sdata2:0x801F3340; // type:object size:0x4 data:float +lbl_801F3348 = .sdata2:0x801F3348; // type:object size:0x8 data:double +lbl_801F3350 = .sdata2:0x801F3350; // type:object size:0x4 data:float +lbl_801F3354 = .sdata2:0x801F3354; // type:object size:0x4 data:float +lbl_801F3358 = .sdata2:0x801F3358; // type:object size:0x4 data:float +lbl_801F335C = .sdata2:0x801F335C; // type:object size:0x4 data:float +lbl_801F3360 = .sdata2:0x801F3360; // type:object size:0x8 data:double +lbl_801F3368 = .sdata2:0x801F3368; // type:object size:0x4 data:float +lbl_801F336C = .sdata2:0x801F336C; // type:object size:0x4 data:float +lbl_801F3370 = .sdata2:0x801F3370; // type:object size:0x4 data:float +lbl_801F3374 = .sdata2:0x801F3374; // type:object size:0x4 data:float +lbl_801F3378 = .sdata2:0x801F3378; // type:object size:0x4 data:float +lbl_801F337C = .sdata2:0x801F337C; // type:object size:0x4 data:float +lbl_801F3380 = .sdata2:0x801F3380; // type:object size:0x4 data:float +lbl_801F3384 = .sdata2:0x801F3384; // type:object size:0x4 data:float +lbl_801F3388 = .sdata2:0x801F3388; // type:object size:0x4 data:float +lbl_801F338C = .sdata2:0x801F338C; // type:object size:0x4 data:float +lbl_801F3390 = .sdata2:0x801F3390; // type:object size:0x4 data:float +lbl_801F3394 = .sdata2:0x801F3394; // type:object size:0x1 data:byte +lbl_801F3395 = .sdata2:0x801F3395; // type:object size:0x1 data:byte +lbl_801F3398 = .sdata2:0x801F3398; // type:object size:0x4 data:float +lbl_801F33A0 = .sdata2:0x801F33A0; // type:object size:0x8 data:double +lbl_801F33A8 = .sdata2:0x801F33A8; // type:object size:0x8 data:double +lbl_801F33B0 = .sdata2:0x801F33B0; // type:object size:0x8 data:double +lbl_801F33B8 = .sdata2:0x801F33B8; // type:object size:0x8 data:double +lbl_801F33C0 = .sdata2:0x801F33C0; // type:object size:0x4 data:float +lbl_801F33C4 = .sdata2:0x801F33C4; // type:object size:0x4 data:float +lbl_801F33C8 = .sdata2:0x801F33C8; // type:object size:0x8 data:double +lbl_801F33D0 = .sdata2:0x801F33D0; // type:object size:0x4 data:float +lbl_801F33D4 = .sdata2:0x801F33D4; // type:object size:0x4 data:float +lbl_801F33D8 = .sdata2:0x801F33D8; // type:object size:0x8 data:double +lbl_801F33E0 = .sdata2:0x801F33E0; // type:object size:0x4 data:float +lbl_801F33E4 = .sdata2:0x801F33E4; // type:object size:0x2 data:2byte +lbl_801F33E6 = .sdata2:0x801F33E6; // type:object size:0x2 data:2byte +lbl_801F33E8 = .sdata2:0x801F33E8; // type:object size:0x2 data:2byte +lbl_801F33EC = .sdata2:0x801F33EC; // type:object size:0x4 data:float +lbl_801F33F0 = .sdata2:0x801F33F0; // type:object size:0x4 data:float +lbl_801F33F4 = .sdata2:0x801F33F4; // type:object size:0x4 data:float +lbl_801F33F8 = .sdata2:0x801F33F8; // type:object size:0x2 data:2byte +lbl_801F33FA = .sdata2:0x801F33FA; // type:object size:0x2 data:2byte +lbl_801F33FC = .sdata2:0x801F33FC; // type:object size:0x2 data:2byte +lbl_801F3400 = .sdata2:0x801F3400; // type:object size:0x4 data:float +lbl_801F3404 = .sdata2:0x801F3404; // type:object size:0x4 data:float +lbl_801F3408 = .sdata2:0x801F3408; // type:object size:0x4 data:float +lbl_801F340C = .sdata2:0x801F340C; // type:object size:0x4 data:float +lbl_801F3410 = .sdata2:0x801F3410; // type:object size:0x4 data:float +lbl_801F3414 = .sdata2:0x801F3414; // type:object size:0x4 data:float +lbl_801F3418 = .sdata2:0x801F3418; // type:object size:0x4 data:float +lbl_801F3420 = .sdata2:0x801F3420; // type:object size:0x8 data:double +lbl_801F3428 = .sdata2:0x801F3428; // type:object size:0x4 data:float +lbl_801F342C = .sdata2:0x801F342C; // type:object size:0x4 data:float +lbl_801F3430 = .sdata2:0x801F3430; // type:object size:0x4 data:float +lbl_801F3434 = .sdata2:0x801F3434; // type:object size:0x4 data:float +lbl_801F3438 = .sdata2:0x801F3438; // type:object size:0x4 data:float +lbl_801F343C = .sdata2:0x801F343C; // type:object size:0x4 data:float +lbl_801F3440 = .sdata2:0x801F3440; // type:object size:0x4 data:float +lbl_801F3448 = .sdata2:0x801F3448; // type:object size:0x8 data:double +lbl_801F3450 = .sdata2:0x801F3450; // type:object size:0x8 data:double +lbl_801F3458 = .sdata2:0x801F3458; // type:object size:0x8 data:double +lbl_801F3460 = .sdata2:0x801F3460; // type:object size:0x4 data:float +lbl_801F3464 = .sdata2:0x801F3464; // type:object size:0x4 data:float +lbl_801F3468 = .sdata2:0x801F3468; // type:object size:0x4 data:float +lbl_801F346C = .sdata2:0x801F346C; // type:object size:0x4 data:float +lbl_801F3470 = .sdata2:0x801F3470; // type:object size:0x4 data:float +lbl_801F3474 = .sdata2:0x801F3474; // type:object size:0x4 data:float +lbl_801F3478 = .sdata2:0x801F3478; // type:object size:0x4 data:float +lbl_801F347C = .sdata2:0x801F347C; // type:object size:0x4 data:float +lbl_801F3480 = .sdata2:0x801F3480; // type:object size:0x4 data:float +lbl_801F3484 = .sdata2:0x801F3484; // type:object size:0x4 data:float +lbl_801F3488 = .sdata2:0x801F3488; // type:object size:0x4 data:float +lbl_801F348C = .sdata2:0x801F348C; // type:object size:0x4 data:float +lbl_801F3490 = .sdata2:0x801F3490; // type:object size:0x4 data:float +lbl_801F3494 = .sdata2:0x801F3494; // type:object size:0x4 data:float +lbl_801F3498 = .sdata2:0x801F3498; // type:object size:0x4 data:float +lbl_801F349C = .sdata2:0x801F349C; // type:object size:0x4 data:float +lbl_801F34A0 = .sdata2:0x801F34A0; // type:object size:0x4 data:float +lbl_801F34A4 = .sdata2:0x801F34A4; // type:object size:0x4 data:float +lbl_801F34A8 = .sdata2:0x801F34A8; // type:object size:0x4 data:float +lbl_801F34AC = .sdata2:0x801F34AC; // type:object size:0x4 data:float +lbl_801F34B0 = .sdata2:0x801F34B0; // type:object size:0x8 data:double +lbl_801F34B8 = .sdata2:0x801F34B8; // type:object size:0x8 data:double +lbl_801F34C0 = .sdata2:0x801F34C0; // type:object size:0x4 data:float +lbl_801F34C8 = .sdata2:0x801F34C8; // type:object size:0x8 data:double +lbl_801F34D0 = .sdata2:0x801F34D0; // type:object size:0x8 data:double +lbl_801F34D8 = .sdata2:0x801F34D8; // type:object size:0x4 data:float +lbl_801F34DC = .sdata2:0x801F34DC; // type:object size:0x4 data:float +lbl_801F34E0 = .sdata2:0x801F34E0; // type:object size:0x4 data:float +lbl_801F34E4 = .sdata2:0x801F34E4; // type:object size:0x4 data:float +lbl_801F34E8 = .sdata2:0x801F34E8; // type:object size:0x4 data:float +lbl_801F34EC = .sdata2:0x801F34EC; // type:object size:0x4 data:float +lbl_801F34F0 = .sdata2:0x801F34F0; // type:object size:0x4 data:float +lbl_801F34F4 = .sdata2:0x801F34F4; // type:object size:0x4 data:float +lbl_801F34F8 = .sdata2:0x801F34F8; // type:object size:0x4 data:float +lbl_801F34FC = .sdata2:0x801F34FC; // type:object size:0x4 data:float +lbl_801F3500 = .sdata2:0x801F3500; // type:object size:0x4 data:float +lbl_801F3504 = .sdata2:0x801F3504; // type:object size:0x4 data:float +lbl_801F3508 = .sdata2:0x801F3508; // type:object size:0x4 data:float +lbl_801F350C = .sdata2:0x801F350C; // type:object size:0x4 data:float +lbl_801F3510 = .sdata2:0x801F3510; // type:object size:0x4 data:float +lbl_801F3514 = .sdata2:0x801F3514; // type:object size:0x4 data:float +lbl_801F3518 = .sdata2:0x801F3518; // type:object size:0x4 data:float +lbl_801F351C = .sdata2:0x801F351C; // type:object size:0x4 data:float +lbl_801F3520 = .sdata2:0x801F3520; // type:object size:0x4 data:float +lbl_801F3528 = .sdata2:0x801F3528; // type:object size:0x8 data:double +lbl_801F3530 = .sdata2:0x801F3530; // type:object size:0x8 data:double +lbl_801F3538 = .sdata2:0x801F3538; // type:object size:0x8 data:double +lbl_801F3540 = .sdata2:0x801F3540; // type:object size:0x8 data:double +lbl_801F3548 = .sdata2:0x801F3548; // type:object size:0x4 data:float +lbl_801F354C = .sdata2:0x801F354C; // type:object size:0x4 data:float +lbl_801F3550 = .sdata2:0x801F3550; // type:object size:0x4 data:float +lbl_801F3554 = .sdata2:0x801F3554; // type:object size:0x4 data:float +lbl_801F3558 = .sdata2:0x801F3558; // type:object size:0x4 data:float +lbl_801F355C = .sdata2:0x801F355C; // type:object size:0x4 data:float +lbl_801F3560 = .sdata2:0x801F3560; // type:object size:0x4 data:float +lbl_801F3564 = .sdata2:0x801F3564; // type:object size:0x4 data:float +lbl_801F3568 = .sdata2:0x801F3568; // type:object size:0x4 data:float +lbl_801F356C = .sdata2:0x801F356C; // type:object size:0x4 data:float +lbl_801F3570 = .sdata2:0x801F3570; // type:object size:0x4 data:float +lbl_801F3574 = .sdata2:0x801F3574; // type:object size:0x4 data:float +lbl_801F3578 = .sdata2:0x801F3578; // type:object size:0x4 data:float +lbl_801F357C = .sdata2:0x801F357C; // type:object size:0x4 data:float +lbl_801F3580 = .sdata2:0x801F3580; // type:object size:0x4 data:float +lbl_801F3584 = .sdata2:0x801F3584; // type:object size:0x4 data:float +lbl_801F3588 = .sdata2:0x801F3588; // type:object size:0x4 data:float +lbl_801F358C = .sdata2:0x801F358C; // type:object size:0x4 data:float +lbl_801F3590 = .sdata2:0x801F3590; // type:object size:0x4 data:float +lbl_801F3594 = .sdata2:0x801F3594; // type:object size:0x4 data:float +lbl_801F3598 = .sdata2:0x801F3598; // type:object size:0x4 data:float +lbl_801F359C = .sdata2:0x801F359C; // type:object size:0x4 data:float +lbl_801F35A0 = .sdata2:0x801F35A0; // type:object size:0x8 data:double +lbl_801F35A8 = .sdata2:0x801F35A8; // type:object size:0x8 data:double +lbl_801F35B0 = .sdata2:0x801F35B0; // type:object size:0x4 data:float +lbl_801F35B4 = .sdata2:0x801F35B4; // type:object size:0x4 data:float +lbl_801F35B8 = .sdata2:0x801F35B8; // type:object size:0x8 data:double +lbl_801F35C0 = .sdata2:0x801F35C0; // type:object size:0x4 data:float +lbl_801F35C4 = .sdata2:0x801F35C4; // type:object size:0x4 data:float +lbl_801F35C8 = .sdata2:0x801F35C8; // type:object size:0x4 data:float +lbl_801F35CC = .sdata2:0x801F35CC; // type:object size:0x4 data:float +lbl_801F35D0 = .sdata2:0x801F35D0; // type:object size:0x4 data:float +lbl_801F35D4 = .sdata2:0x801F35D4; // type:object size:0x4 data:float +lbl_801F35D8 = .sdata2:0x801F35D8; // type:object size:0x4 data:float +lbl_801F35DC = .sdata2:0x801F35DC; // type:object size:0x4 data:float +lbl_801F35E0 = .sdata2:0x801F35E0; // type:object size:0x4 data:float +lbl_801F35E4 = .sdata2:0x801F35E4; // type:object size:0x4 data:float +lbl_801F35E8 = .sdata2:0x801F35E8; // type:object size:0x4 data:float +lbl_801F35EC = .sdata2:0x801F35EC; // type:object size:0x4 data:float +lbl_801F35F0 = .sdata2:0x801F35F0; // type:object size:0x4 data:float +lbl_801F35F4 = .sdata2:0x801F35F4; // type:object size:0x4 data:float +lbl_801F35F8 = .sdata2:0x801F35F8; // type:object size:0x4 data:float +lbl_801F35FC = .sdata2:0x801F35FC; // type:object size:0x4 data:float +lbl_801F3600 = .sdata2:0x801F3600; // type:object size:0x4 data:float +lbl_801F3604 = .sdata2:0x801F3604; // type:object size:0x4 data:float +lbl_801F3608 = .sdata2:0x801F3608; // type:object size:0x4 data:float +lbl_801F360C = .sdata2:0x801F360C; // type:object size:0x4 data:float +lbl_801F3610 = .sdata2:0x801F3610; // type:object size:0x4 data:float +lbl_801F3618 = .sdata2:0x801F3618; // type:object size:0x8 data:double +lbl_801F3620 = .sdata2:0x801F3620; // type:object size:0x8 data:double +lbl_801F3628 = .sdata2:0x801F3628; // type:object size:0x8 data:double +lbl_801F3630 = .sdata2:0x801F3630; // type:object size:0x8 data:double +lbl_801F3638 = .sdata2:0x801F3638; // type:object size:0x4 data:float +lbl_801F363C = .sdata2:0x801F363C; // type:object size:0x4 data:float +lbl_801F3640 = .sdata2:0x801F3640; // type:object size:0x4 data:float +lbl_801F3644 = .sdata2:0x801F3644; // type:object size:0x4 data:float +lbl_801F3648 = .sdata2:0x801F3648; // type:object size:0x4 data:float +lbl_801F364C = .sdata2:0x801F364C; // type:object size:0x4 data:float +lbl_801F3650 = .sdata2:0x801F3650; // type:object size:0x4 data:float +lbl_801F3654 = .sdata2:0x801F3654; // type:object size:0x4 data:float +lbl_801F3658 = .sdata2:0x801F3658; // type:object size:0x4 data:float +lbl_801F365C = .sdata2:0x801F365C; // type:object size:0x1 data:byte +lbl_801F365D = .sdata2:0x801F365D; // type:object size:0x1 data:byte +lbl_801F365E = .sdata2:0x801F365E; // type:object size:0x1 data:byte +lbl_801F365F = .sdata2:0x801F365F; // type:object size:0x1 data:byte +lbl_801F3660 = .sdata2:0x801F3660; // type:object size:0x8 data:float +lbl_801F3668 = .sdata2:0x801F3668; // type:object size:0x4 data:float +lbl_801F366C = .sdata2:0x801F366C; // type:object size:0x4 data:float +lbl_801F3670 = .sdata2:0x801F3670; // type:object size:0x4 data:float +lbl_801F3674 = .sdata2:0x801F3674; // type:object size:0x4 data:float +lbl_801F3678 = .sdata2:0x801F3678; // type:object size:0x4 data:float +lbl_801F367C = .sdata2:0x801F367C; // type:object size:0x4 data:float +lbl_801F3680 = .sdata2:0x801F3680; // type:object size:0x4 data:float +lbl_801F3684 = .sdata2:0x801F3684; // type:object size:0x4 data:float +lbl_801F3688 = .sdata2:0x801F3688; // type:object size:0x4 data:float +lbl_801F368C = .sdata2:0x801F368C; // type:object size:0x4 data:float +lbl_801F3690 = .sdata2:0x801F3690; // type:object size:0x4 data:float +lbl_801F3694 = .sdata2:0x801F3694; // type:object size:0x4 data:float +lbl_801F3698 = .sdata2:0x801F3698; // type:object size:0x4 data:float +lbl_801F369C = .sdata2:0x801F369C; // type:object size:0x4 data:float +lbl_801F36A0 = .sdata2:0x801F36A0; // type:object size:0x4 data:float +lbl_801F36A4 = .sdata2:0x801F36A4; // type:object size:0x4 data:float +lbl_801F36A8 = .sdata2:0x801F36A8; // type:object size:0x4 data:float +lbl_801F36AC = .sdata2:0x801F36AC; // type:object size:0x4 data:float +lbl_801F36B0 = .sdata2:0x801F36B0; // type:object size:0x4 data:float +lbl_801F36B4 = .sdata2:0x801F36B4; // type:object size:0x4 data:float +lbl_801F36B8 = .sdata2:0x801F36B8; // type:object size:0x4 data:float +lbl_801F36BC = .sdata2:0x801F36BC; // type:object size:0x4 data:float +lbl_801F36C0 = .sdata2:0x801F36C0; // type:object size:0x4 data:float +lbl_801F36C4 = .sdata2:0x801F36C4; // type:object size:0x4 data:float +lbl_801F36C8 = .sdata2:0x801F36C8; // type:object size:0x4 data:float +lbl_801F36CC = .sdata2:0x801F36CC; // type:object size:0x4 data:float +lbl_801F36D0 = .sdata2:0x801F36D0; // type:object size:0x4 data:float +lbl_801F36D4 = .sdata2:0x801F36D4; // type:object size:0x4 data:float +lbl_801F36D8 = .sdata2:0x801F36D8; // type:object size:0x4 data:float +lbl_801F36DC = .sdata2:0x801F36DC; // type:object size:0x4 data:float +lbl_801F36E0 = .sdata2:0x801F36E0; // type:object size:0x4 data:float +lbl_801F36E4 = .sdata2:0x801F36E4; // type:object size:0x4 data:float +lbl_801F36E8 = .sdata2:0x801F36E8; // type:object size:0x4 data:float +lbl_801F36EC = .sdata2:0x801F36EC; // type:object size:0x4 data:float +lbl_801F36F0 = .sdata2:0x801F36F0; // type:object size:0x4 data:float +lbl_801F36F4 = .sdata2:0x801F36F4; // type:object size:0x4 data:float +lbl_801F36F8 = .sdata2:0x801F36F8; // type:object size:0x4 data:float +lbl_801F36FC = .sdata2:0x801F36FC; // type:object size:0x4 data:float +lbl_801F3700 = .sdata2:0x801F3700; // type:object size:0x4 data:float +lbl_801F3704 = .sdata2:0x801F3704; // type:object size:0x4 data:float +lbl_801F3708 = .sdata2:0x801F3708; // type:object size:0x4 data:float +lbl_801F370C = .sdata2:0x801F370C; // type:object size:0x4 data:float +lbl_801F3710 = .sdata2:0x801F3710; // type:object size:0x8 data:double +lbl_801F3718 = .sdata2:0x801F3718; // type:object size:0x8 data:float +lbl_801F3720 = .sdata2:0x801F3720; // type:object size:0x4 data:float +lbl_801F3724 = .sdata2:0x801F3724; // type:object size:0x4 data:float +lbl_801F3728 = .sdata2:0x801F3728; // type:object size:0x4 data:float +lbl_801F372C = .sdata2:0x801F372C; // type:object size:0x4 data:float +lbl_801F3730 = .sdata2:0x801F3730; // type:object size:0x8 data:float +lbl_801F3738 = .sdata2:0x801F3738; // type:object size:0x4 data:float +lbl_801F373C = .sdata2:0x801F373C; // type:object size:0x4 data:float +lbl_801F3740 = .sdata2:0x801F3740; // type:object size:0x4 data:float +lbl_801F3744 = .sdata2:0x801F3744; // type:object size:0x4 data:float +lbl_801F3748 = .sdata2:0x801F3748; // type:object size:0x4 data:float +lbl_801F374C = .sdata2:0x801F374C; // type:object size:0x4 data:float +lbl_801F3750 = .sdata2:0x801F3750; // type:object size:0x4 data:float +lbl_801F3754 = .sdata2:0x801F3754; // type:object size:0x4 data:float +lbl_801F3758 = .sdata2:0x801F3758; // type:object size:0x4 data:float +lbl_801F375C = .sdata2:0x801F375C; // type:object size:0x4 data:float +lbl_801F3760 = .sdata2:0x801F3760; // type:object size:0x4 data:float +lbl_801F3764 = .sdata2:0x801F3764; // type:object size:0x4 data:float +lbl_801F3768 = .sdata2:0x801F3768; // type:object size:0x8 data:double +lbl_801F3770 = .sdata2:0x801F3770; // type:object size:0x8 data:double +lbl_801F3778 = .sdata2:0x801F3778; // type:object size:0x4 data:float +lbl_801F377C = .sdata2:0x801F377C; // type:object size:0x4 data:float +lbl_801F3780 = .sdata2:0x801F3780; // type:object size:0x4 data:float +lbl_801F3784 = .sdata2:0x801F3784; // type:object size:0x4 data:float +lbl_801F3788 = .sdata2:0x801F3788; // type:object size:0x4 data:float +lbl_801F378C = .sdata2:0x801F378C; // type:object size:0x4 data:float +lbl_801F3790 = .sdata2:0x801F3790; // type:object size:0x8 data:double +lbl_801F3798 = .sdata2:0x801F3798; // type:object size:0x8 data:double +lbl_801F37A0 = .sdata2:0x801F37A0; // type:object size:0x8 data:float +lbl_801F37A8 = .sdata2:0x801F37A8; // type:object size:0x4 data:float +lbl_801F37B0 = .sdata2:0x801F37B0; // type:object size:0x8 data:double +lbl_801F37B8 = .sdata2:0x801F37B8; // type:object size:0x4 data:4byte +lbl_801F37BC = .sdata2:0x801F37BC; // type:object size:0x4 data:4byte +lbl_801F37C0 = .sdata2:0x801F37C0; // type:object size:0x4 data:4byte +lbl_801F37C4 = .sdata2:0x801F37C4; // type:object size:0x4 data:float +lbl_801F37C8 = .sdata2:0x801F37C8; // type:object size:0x4 data:float +lbl_801F37CC = .sdata2:0x801F37CC; // type:object size:0x4 data:float +lbl_801F37D0 = .sdata2:0x801F37D0; // type:object size:0x8 data:double +lbl_801F37D8 = .sdata2:0x801F37D8; // type:object size:0x4 data:float +lbl_801F37E0 = .sdata2:0x801F37E0; // type:object size:0x8 data:double +lbl_801F37E8 = .sdata2:0x801F37E8; // type:object size:0x4 data:float +lbl_801F37EC = .sdata2:0x801F37EC; // type:object size:0x4 data:float +lbl_801F37F0 = .sdata2:0x801F37F0; // type:object size:0x4 data:float +lbl_801F37F4 = .sdata2:0x801F37F4; // type:object size:0x4 data:float +lbl_801F37F8 = .sdata2:0x801F37F8; // type:object size:0x4 data:float +lbl_801F37FC = .sdata2:0x801F37FC; // type:object size:0x4 data:float +lbl_801F3800 = .sdata2:0x801F3800; // type:object size:0x4 data:float +lbl_801F3804 = .sdata2:0x801F3804; // type:object size:0x4 data:float +lbl_801F3808 = .sdata2:0x801F3808; // type:object size:0x4 data:float +lbl_801F380C = .sdata2:0x801F380C; // type:object size:0x4 data:float +lbl_801F3810 = .sdata2:0x801F3810; // type:object size:0x4 data:float +lbl_801F3814 = .sdata2:0x801F3814; // type:object size:0x4 data:float +lbl_801F3818 = .sdata2:0x801F3818; // type:object size:0x4 data:float +lbl_801F3820 = .sdata2:0x801F3820; // type:object size:0x8 data:double +lbl_801F3828 = .sdata2:0x801F3828; // type:object size:0x8 data:double +lbl_801F3830 = .sdata2:0x801F3830; // type:object size:0x8 data:float +lbl_801F3838 = .sdata2:0x801F3838; // type:object size:0x4 data:float +lbl_801F3840 = .sdata2:0x801F3840; // type:object size:0x8 data:double +lbl_801F3848 = .sdata2:0x801F3848; // type:object size:0x4 data:float +lbl_801F384C = .sdata2:0x801F384C; // type:object size:0x4 data:float +lbl_801F3850 = .sdata2:0x801F3850; // type:object size:0x4 data:float +lbl_801F3854 = .sdata2:0x801F3854; // type:object size:0x4 data:float +lbl_801F3858 = .sdata2:0x801F3858; // type:object size:0x4 data:float +lbl_801F385C = .sdata2:0x801F385C; // type:object size:0x4 data:float +lbl_801F3860 = .sdata2:0x801F3860; // type:object size:0x4 data:float +lbl_801F3864 = .sdata2:0x801F3864; // type:object size:0x4 data:float +lbl_801F3868 = .sdata2:0x801F3868; // type:object size:0x4 data:float +lbl_801F3870 = .sdata2:0x801F3870; // type:object size:0x8 data:double +lbl_801F3878 = .sdata2:0x801F3878; // type:object size:0x4 data:float +lbl_801F387C = .sdata2:0x801F387C; // type:object size:0x4 data:float +lbl_801F3880 = .sdata2:0x801F3880; // type:object size:0x8 data:double +lbl_801F3888 = .sdata2:0x801F3888; // type:object size:0x4 data:float +lbl_801F3890 = .sdata2:0x801F3890; // type:object size:0x8 data:double +lbl_801F3898 = .sdata2:0x801F3898; // type:object size:0x4 data:float +lbl_801F38A0 = .sdata2:0x801F38A0; // type:object size:0x8 data:double +lbl_801F38A8 = .sdata2:0x801F38A8; // type:object size:0x4 data:float +lbl_801F38AC = .sdata2:0x801F38AC; // type:object size:0x4 data:float +lbl_801F38B0 = .sdata2:0x801F38B0; // type:object size:0x4 data:float +lbl_801F38B8 = .sdata2:0x801F38B8; // type:object size:0x8 data:double +lbl_801F38C0 = .sdata2:0x801F38C0; // type:object size:0x4 data:float +lbl_801F38C4 = .sdata2:0x801F38C4; // type:object size:0x4 data:float +lbl_801F38C8 = .sdata2:0x801F38C8; // type:object size:0x8 data:double +lbl_801F38D0 = .sdata2:0x801F38D0; // type:object size:0x4 data:float +lbl_801F38D4 = .sdata2:0x801F38D4; // type:object size:0x4 data:float +lbl_801F38D8 = .sdata2:0x801F38D8; // type:object size:0x4 data:float +lbl_801F38DC = .sdata2:0x801F38DC; // type:object size:0x4 data:float +lbl_801F38E0 = .sdata2:0x801F38E0; // type:object size:0x4 data:float +lbl_801F38E8 = .sdata2:0x801F38E8; // type:object size:0x8 data:double +lbl_801F38F0 = .sdata2:0x801F38F0; // type:object size:0x4 data:4byte +lbl_801F38F8 = .sdata2:0x801F38F8; // type:object size:0x8 data:double +lbl_801F3900 = .sdata2:0x801F3900; // type:object size:0x8 data:double +lbl_801F3908 = .sdata2:0x801F3908; // type:object size:0x8 data:double +lbl_801F3910 = .sdata2:0x801F3910; // type:object size:0x8 data:double +lbl_801F3918 = .sdata2:0x801F3918; // type:object size:0x8 data:double +lbl_801F3920 = .sdata2:0x801F3920; // type:object size:0x8 data:double +lbl_801F3928 = .sdata2:0x801F3928; // type:object size:0x8 data:double +lbl_801F3930 = .sdata2:0x801F3930; // type:object size:0x8 data:double +lbl_801F3938 = .sdata2:0x801F3938; // type:object size:0x8 data:double +lbl_801F3940 = .sdata2:0x801F3940; // type:object size:0x8 data:double +lbl_801F3948 = .sdata2:0x801F3948; // type:object size:0x8 data:double +lbl_801F3950 = .sdata2:0x801F3950; // type:object size:0x8 data:double +lbl_801F3958 = .sdata2:0x801F3958; // type:object size:0x8 data:double +lbl_801F3960 = .sdata2:0x801F3960; // type:object size:0x8 data:double +lbl_801F3968 = .sdata2:0x801F3968; // type:object size:0x8 data:double +lbl_801F3970 = .sdata2:0x801F3970; // type:object size:0x8 data:double +lbl_801F3978 = .sdata2:0x801F3978; // type:object size:0x8 data:double +lbl_801F3980 = .sdata2:0x801F3980; // type:object size:0x8 data:double +lbl_801F3988 = .sdata2:0x801F3988; // type:object size:0x8 data:double +lbl_801F3990 = .sdata2:0x801F3990; // type:object size:0x8 data:double +lbl_801F3998 = .sdata2:0x801F3998; // type:object size:0x8 data:double +lbl_801F39A0 = .sdata2:0x801F39A0; // type:object size:0x8 data:double +lbl_801F39A8 = .sdata2:0x801F39A8; // type:object size:0x8 data:double +lbl_801F39B0 = .sdata2:0x801F39B0; // type:object size:0x8 data:double +lbl_801F39B8 = .sdata2:0x801F39B8; // type:object size:0x8 data:double +lbl_801F39C0 = .sdata2:0x801F39C0; // type:object size:0x8 data:double +lbl_801F39C8 = .sdata2:0x801F39C8; // type:object size:0x8 data:double +lbl_801F39D0 = .sdata2:0x801F39D0; // type:object size:0x8 data:double +lbl_801F39D8 = .sdata2:0x801F39D8; // type:object size:0x8 data:double +lbl_801F39E0 = .sdata2:0x801F39E0; // type:object size:0x8 data:double +lbl_801F39E8 = .sdata2:0x801F39E8; // type:object size:0x8 data:double +lbl_801F39F0 = .sdata2:0x801F39F0; // type:object size:0x8 data:double +lbl_801F39F8 = .sdata2:0x801F39F8; // type:object size:0x8 data:double +lbl_801F3A00 = .sdata2:0x801F3A00; // type:object size:0x8 data:double +lbl_801F3A08 = .sdata2:0x801F3A08; // type:object size:0x8 data:double +lbl_801F3A10 = .sdata2:0x801F3A10; // type:object size:0x8 data:double +lbl_801F3A18 = .sdata2:0x801F3A18; // type:object size:0x8 data:double +lbl_801F3A20 = .sdata2:0x801F3A20; // type:object size:0x8 data:double +lbl_801F3A28 = .sdata2:0x801F3A28; // type:object size:0x8 data:double +lbl_801F3A30 = .sdata2:0x801F3A30; // type:object size:0x8 data:double +lbl_801F3A38 = .sdata2:0x801F3A38; // type:object size:0x8 data:double +lbl_801F3A40 = .sdata2:0x801F3A40; // type:object size:0x8 data:double +lbl_801F3A48 = .sdata2:0x801F3A48; // type:object size:0x8 data:double +lbl_801F3A50 = .sdata2:0x801F3A50; // type:object size:0x8 data:double +lbl_801F3A58 = .sdata2:0x801F3A58; // type:object size:0x8 data:double +lbl_801F3A60 = .sdata2:0x801F3A60; // type:object size:0x8 data:double +lbl_801F3A68 = .sdata2:0x801F3A68; // type:object size:0x8 data:double +lbl_801F3A70 = .sdata2:0x801F3A70; // type:object size:0x8 data:double +lbl_801F3A78 = .sdata2:0x801F3A78; // type:object size:0x8 data:double +lbl_801F3A80 = .sdata2:0x801F3A80; // type:object size:0x8 data:double +lbl_801F3A88 = .sdata2:0x801F3A88; // type:object size:0x8 data:double +lbl_801F3A90 = .sdata2:0x801F3A90; // type:object size:0x8 data:double +lbl_801F3A98 = .sdata2:0x801F3A98; // type:object size:0x8 data:double +lbl_801F3AA0 = .sdata2:0x801F3AA0; // type:object size:0x8 data:double +lbl_801F3AA8 = .sdata2:0x801F3AA8; // type:object size:0x8 data:double +lbl_801F3AB0 = .sdata2:0x801F3AB0; // type:object size:0x8 data:double +lbl_801F3AB8 = .sdata2:0x801F3AB8; // type:object size:0x8 data:double +lbl_801F3AC0 = .sdata2:0x801F3AC0; // type:object size:0x8 data:double +lbl_801F3AC8 = .sdata2:0x801F3AC8; // type:object size:0x8 data:double +lbl_801F3AD0 = .sdata2:0x801F3AD0; // type:object size:0x8 data:double +lbl_801F3AD8 = .sdata2:0x801F3AD8; // type:object size:0x8 data:double +lbl_801F3AE0 = .sdata2:0x801F3AE0; // type:object size:0x8 data:double +lbl_801F3AE8 = .sdata2:0x801F3AE8; // type:object size:0x8 data:double +lbl_801F3AF0 = .sdata2:0x801F3AF0; // type:object size:0x8 data:double +lbl_801F3AF8 = .sdata2:0x801F3AF8; // type:object size:0x8 data:double +lbl_801F3B00 = .sdata2:0x801F3B00; // type:object size:0x8 data:double +lbl_801F3B08 = .sdata2:0x801F3B08; // type:object size:0x8 data:double +lbl_801F3B10 = .sdata2:0x801F3B10; // type:object size:0x8 data:double +lbl_801F3B18 = .sdata2:0x801F3B18; // type:object size:0x8 data:double +lbl_801F3B20 = .sdata2:0x801F3B20; // type:object size:0x8 data:double +lbl_801F3B28 = .sdata2:0x801F3B28; // type:object size:0x8 data:double +lbl_801F3B30 = .sdata2:0x801F3B30; // type:object size:0x8 data:double +lbl_801F3B38 = .sdata2:0x801F3B38; // type:object size:0x8 data:double +lbl_801F3B40 = .sdata2:0x801F3B40; // type:object size:0x8 data:double +lbl_801F3B48 = .sdata2:0x801F3B48; // type:object size:0x8 data:double +lbl_801F3B50 = .sdata2:0x801F3B50; // type:object size:0x8 data:double +lbl_801F3B58 = .sdata2:0x801F3B58; // type:object size:0x8 data:double +lbl_801F3B60 = .sdata2:0x801F3B60; // type:object size:0x8 data:double +lbl_801F3B68 = .sdata2:0x801F3B68; // type:object size:0x8 data:double +lbl_801F3B70 = .sdata2:0x801F3B70; // type:object size:0x8 data:double +lbl_801F3B78 = .sdata2:0x801F3B78; // type:object size:0x8 data:double +lbl_801F3B80 = .sdata2:0x801F3B80; // type:object size:0x8 data:double +lbl_801F3B88 = .sdata2:0x801F3B88; // type:object size:0x8 data:double +lbl_801F3B90 = .sdata2:0x801F3B90; // type:object size:0x8 data:double +lbl_801F3B98 = .sdata2:0x801F3B98; // type:object size:0x8 data:double +lbl_801F3BA0 = .sdata2:0x801F3BA0; // type:object size:0x8 data:double +lbl_801F3BA8 = .sdata2:0x801F3BA8; // type:object size:0x8 data:double +lbl_801F3BB0 = .sdata2:0x801F3BB0; // type:object size:0x8 data:double +lbl_801F3BB8 = .sdata2:0x801F3BB8; // type:object size:0x8 data:double +lbl_801F3BC0 = .sdata2:0x801F3BC0; // type:object size:0x8 data:double +lbl_801F3BC8 = .sdata2:0x801F3BC8; // type:object size:0x8 data:double +lbl_801F3BD0 = .sdata2:0x801F3BD0; // type:object size:0x8 data:double +lbl_801F3BD8 = .sdata2:0x801F3BD8; // type:object size:0x8 data:double +lbl_801F3BE0 = .sdata2:0x801F3BE0; // type:object size:0x8 data:double +lbl_801F3BE8 = .sdata2:0x801F3BE8; // type:object size:0x8 data:double +lbl_801F3BF0 = .sdata2:0x801F3BF0; // type:object size:0x8 data:double +lbl_801F3BF8 = .sdata2:0x801F3BF8; // type:object size:0x8 data:double +lbl_801F3C00 = .sdata2:0x801F3C00; // type:object size:0x8 data:double +lbl_801F3C08 = .sdata2:0x801F3C08; // type:object size:0x8 data:double +lbl_801F3C10 = .sdata2:0x801F3C10; // type:object size:0x8 data:double +lbl_801F3C18 = .sdata2:0x801F3C18; // type:object size:0x8 data:double +lbl_801F3C20 = .sdata2:0x801F3C20; // type:object size:0x8 data:double +lbl_801F3C28 = .sdata2:0x801F3C28; // type:object size:0x8 data:double +lbl_801F3C30 = .sdata2:0x801F3C30; // type:object size:0x8 data:double +lbl_801F3C38 = .sdata2:0x801F3C38; // type:object size:0x8 data:double +lbl_801F3C40 = .sdata2:0x801F3C40; // type:object size:0x8 data:double +lbl_801F3C48 = .sdata2:0x801F3C48; // type:object size:0x8 data:double +lbl_801F3C50 = .sdata2:0x801F3C50; // type:object size:0x8 data:double +lbl_801F3C58 = .sdata2:0x801F3C58; // type:object size:0x8 data:double +lbl_801F3C60 = .sdata2:0x801F3C60; // type:object size:0x8 data:double +lbl_801F3C68 = .sdata2:0x801F3C68; // type:object size:0x8 data:double +lbl_801F3C70 = .sdata2:0x801F3C70; // type:object size:0x8 data:double +lbl_801F3C78 = .sdata2:0x801F3C78; // type:object size:0x8 data:double +lbl_801F3C80 = .sdata2:0x801F3C80; // type:object size:0x8 data:double +lbl_801F3C88 = .sdata2:0x801F3C88; // type:object size:0x8 data:double +lbl_801F3C90 = .sdata2:0x801F3C90; // type:object size:0x8 data:double +lbl_801F3C98 = .sdata2:0x801F3C98; // type:object size:0x8 data:double +lbl_801F3CA0 = .sdata2:0x801F3CA0; // type:object size:0x8 data:double +lbl_801F3CA8 = .sdata2:0x801F3CA8; // type:object size:0x8 data:double +lbl_801F3CB0 = .sdata2:0x801F3CB0; // type:object size:0x8 data:double +lbl_801F3CB8 = .sdata2:0x801F3CB8; // type:object size:0x8 data:double +lbl_801F3CC0 = .sdata2:0x801F3CC0; // type:object size:0x8 data:double +lbl_801F3CC8 = .sdata2:0x801F3CC8; // type:object size:0x8 data:double +lbl_801F3CD0 = .sdata2:0x801F3CD0; // type:object size:0x8 data:double +lbl_801F3CD8 = .sdata2:0x801F3CD8; // type:object size:0x8 data:double +lbl_801F3CE0 = .sdata2:0x801F3CE0; // type:object size:0x8 data:double +lbl_801F3CE8 = .sdata2:0x801F3CE8; // type:object size:0x8 data:double +lbl_801F3CF0 = .sdata2:0x801F3CF0; // type:object size:0x8 data:double +lbl_801F3CF8 = .sdata2:0x801F3CF8; // type:object size:0x8 data:double +lbl_801F3D00 = .sdata2:0x801F3D00; // type:object size:0x8 data:double +lbl_801F3D08 = .sdata2:0x801F3D08; // type:object size:0x8 data:double +lbl_801F3D10 = .sdata2:0x801F3D10; // type:object size:0x8 data:double +lbl_801F3D18 = .sdata2:0x801F3D18; // type:object size:0x8 data:double +lbl_801F3D20 = .sdata2:0x801F3D20; // type:object size:0x8 data:double +lbl_801F3D28 = .sdata2:0x801F3D28; // type:object size:0x8 data:double +lbl_801F3D30 = .sdata2:0x801F3D30; // type:object size:0x8 data:double +lbl_801F3D38 = .sdata2:0x801F3D38; // type:object size:0x8 data:double +lbl_801F3D40 = .sdata2:0x801F3D40; // type:object size:0x8 data:double +lbl_801F3D48 = .sdata2:0x801F3D48; // type:object size:0x8 data:double +lbl_801F3D50 = .sdata2:0x801F3D50; // type:object size:0x8 data:double +lbl_801F3D58 = .sdata2:0x801F3D58; // type:object size:0x8 data:double +lbl_801F3D60 = .sdata2:0x801F3D60; // type:object size:0x4 data:float +lbl_801F3D64 = .sdata2:0x801F3D64; // type:object size:0x4 data:float +lbl_801F3D68 = .sdata2:0x801F3D68; // type:object size:0x4 data:float +lbl_801F3D70 = .sdata2:0x801F3D70; // type:object size:0x8 data:double +lbl_801F3D78 = .sdata2:0x801F3D78; // type:object size:0x8 data:double +lbl_801F3D80 = .sdata2:0x801F3D80; // type:object size:0x4 data:float +lbl_801F3D84 = .sdata2:0x801F3D84; // type:object size:0x4 data:float +lbl_801F3D88 = .sdata2:0x801F3D88; // type:object size:0x4 data:float +lbl_801F3D8C = .sdata2:0x801F3D8C; // type:object size:0x4 data:float +lbl_801F3D90 = .sdata2:0x801F3D90; // type:object size:0x4 data:float +lbl_801F3D94 = .sdata2:0x801F3D94; // type:object size:0x4 data:float +lbl_801F3D98 = .sdata2:0x801F3D98; // type:object size:0x4 data:float +lbl_801F3D9C = .sdata2:0x801F3D9C; // type:object size:0x4 data:float +lbl_801F3DA0 = .sdata2:0x801F3DA0; // type:object size:0x4 data:float +lbl_801F3DA8 = .sdata2:0x801F3DA8; // type:object size:0x8 data:double +lbl_801F3DB0 = .sdata2:0x801F3DB0; // type:object size:0x8 data:double +lbl_801F3DB8 = .sdata2:0x801F3DB8; // type:object size:0x4 data:float +lbl_801F3DBC = .sdata2:0x801F3DBC; // type:object size:0x4 data:float +lbl_801F3DC0 = .sdata2:0x801F3DC0; // type:object size:0x4 data:float +lbl_801F3DC8 = .sdata2:0x801F3DC8; // type:object size:0x8 data:double +lbl_801F3DD0 = .sdata2:0x801F3DD0; // type:object size:0x8 data:float +lbl_801F3DD8 = .sdata2:0x801F3DD8; // type:object size:0x4 data:float +lbl_801F3DDC = .sdata2:0x801F3DDC; // type:object size:0x4 data:float +lbl_801F3DE0 = .sdata2:0x801F3DE0; // type:object size:0x4 data:float +lbl_801F3DE8 = .sdata2:0x801F3DE8; // type:object size:0x8 data:double +lbl_801F3DF0 = .sdata2:0x801F3DF0; // type:object size:0x8 data:double +lbl_801F3DF8 = .sdata2:0x801F3DF8; // type:object size:0x4 data:float +lbl_801F3DFC = .sdata2:0x801F3DFC; // type:object size:0x4 data:float +lbl_801F3E00 = .sdata2:0x801F3E00; // type:object size:0x4 data:float +lbl_801F3E08 = .sdata2:0x801F3E08; // type:object size:0x8 data:double +lbl_801F3E10 = .sdata2:0x801F3E10; // type:object size:0x4 data:float +lbl_801F3E18 = .sdata2:0x801F3E18; // type:object size:0x8 data:double +lbl_801F3E20 = .sdata2:0x801F3E20; // type:object size:0x4 data:float +lbl_801F3E24 = .sdata2:0x801F3E24; // type:object size:0x4 data:float +lbl_801F3E28 = .sdata2:0x801F3E28; // type:object size:0x8 data:double +lbl_801F3E30 = .sdata2:0x801F3E30; // type:object size:0x4 data:float +lbl_801F3E38 = .sdata2:0x801F3E38; // type:object size:0x8 data:double +lbl_801F3E40 = .sdata2:0x801F3E40; // type:object size:0x4 data:float +lbl_801F3E44 = .sdata2:0x801F3E44; // type:object size:0x4 data:float +lbl_801F3E48 = .sdata2:0x801F3E48; // type:object size:0x4 data:float +lbl_801F3E50 = .sdata2:0x801F3E50; // type:object size:0x8 data:double +lbl_801F3E58 = .sdata2:0x801F3E58; // type:object size:0x4 data:float +lbl_801F3E60 = .sdata2:0x801F3E60; // type:object size:0x8 data:double +lbl_801F3E68 = .sdata2:0x801F3E68; // type:object size:0x4 data:float +lbl_801F3E6C = .sdata2:0x801F3E6C; // type:object size:0x4 data:float +lbl_801F3E70 = .sdata2:0x801F3E70; // type:object size:0x8 data:float +lbl_801F3E78 = .sdata2:0x801F3E78; // type:object size:0x4 data:float +lbl_801F3E80 = .sdata2:0x801F3E80; // type:object size:0x8 data:double +lbl_801F3E88 = .sdata2:0x801F3E88; // type:object size:0x4 data:float +lbl_801F3E8C = .sdata2:0x801F3E8C; // type:object size:0x4 data:float +lbl_801F3E90 = .sdata2:0x801F3E90; // type:object size:0x8 data:double +lbl_801F3E98 = .sdata2:0x801F3E98; // type:object size:0x4 data:float +lbl_801F3E9C = .sdata2:0x801F3E9C; // type:object size:0x4 data:float +lbl_801F3EA0 = .sdata2:0x801F3EA0; // type:object size:0x8 data:double +lbl_801F3EA8 = .sdata2:0x801F3EA8; // type:object size:0x4 data:float +lbl_801F3EAC = .sdata2:0x801F3EAC; // type:object size:0x4 data:float +lbl_801F3EB0 = .sdata2:0x801F3EB0; // type:object size:0x4 data:float +lbl_801F3EB4 = .sdata2:0x801F3EB4; // type:object size:0x4 data:float +lbl_801F3EB8 = .sdata2:0x801F3EB8; // type:object size:0x4 data:float +lbl_801F3EBC = .sdata2:0x801F3EBC; // type:object size:0x4 data:float +lbl_801F3EC0 = .sdata2:0x801F3EC0; // type:object size:0x8 data:float +lbl_801F3EC8 = .sdata2:0x801F3EC8; // type:object size:0x4 data:float +lbl_801F3ED0 = .sdata2:0x801F3ED0; // type:object size:0x8 data:double +lbl_801F3ED8 = .sdata2:0x801F3ED8; // type:object size:0x8 data:double +lbl_801F3EE0 = .sdata2:0x801F3EE0; // type:object size:0x8 data:float +lbl_801F3EE8 = .sdata2:0x801F3EE8; // type:object size:0x4 data:float +lbl_801F3EEC = .sdata2:0x801F3EEC; // type:object size:0x4 data:float +lbl_801F3EF0 = .sdata2:0x801F3EF0; // type:object size:0x4 data:float +lbl_801F3EF8 = .sdata2:0x801F3EF8; // type:object size:0x8 data:double +lbl_801F3F00 = .sdata2:0x801F3F00; // type:object size:0x4 data:float +lbl_801F3F04 = .sdata2:0x801F3F04; // type:object size:0x4 data:float +lbl_801F3F08 = .sdata2:0x801F3F08; // type:object size:0x4 data:float +lbl_801F3F0C = .sdata2:0x801F3F0C; // type:object size:0x4 data:float +lbl_801F3F10 = .sdata2:0x801F3F10; // type:object size:0x4 data:float +lbl_801F3F14 = .sdata2:0x801F3F14; // type:object size:0x4 data:float +lbl_801F3F18 = .sdata2:0x801F3F18; // type:object size:0x8 data:double +lbl_801F3F20 = .sdata2:0x801F3F20; // type:object size:0x4 data:float +lbl_801F3F24 = .sdata2:0x801F3F24; // type:object size:0x4 data:float +lbl_801F3F28 = .sdata2:0x801F3F28; // type:object size:0x8 data:double +lbl_801F3F30 = .sdata2:0x801F3F30; // type:object size:0x4 data:float +lbl_801F3F34 = .sdata2:0x801F3F34; // type:object size:0x4 data:float +lbl_801F3F38 = .sdata2:0x801F3F38; // type:object size:0x8 data:double +lbl_801F3F40 = .sdata2:0x801F3F40; // type:object size:0x4 data:float +lbl_801F3F44 = .sdata2:0x801F3F44; // type:object size:0x4 data:float +lbl_801F3F48 = .sdata2:0x801F3F48; // type:object size:0x4 data:float +lbl_801F3F4C = .sdata2:0x801F3F4C; // type:object size:0x4 data:float +lbl_801F3F50 = .sdata2:0x801F3F50; // type:object size:0x4 data:float +lbl_801F3F54 = .sdata2:0x801F3F54; // type:object size:0x4 data:float +lbl_801F3F58 = .sdata2:0x801F3F58; // type:object size:0x8 data:double +lbl_801F3F60 = .sdata2:0x801F3F60; // type:object size:0x4 data:float +lbl_801F3F64 = .sdata2:0x801F3F64; // type:object size:0x4 data:float +lbl_801F3F68 = .sdata2:0x801F3F68; // type:object size:0x8 data:double +lbl_801F3F70 = .sdata2:0x801F3F70; // type:object size:0x8 data:double +lbl_801F3F78 = .sdata2:0x801F3F78; // type:object size:0x4 data:float +lbl_801F3F7C = .sdata2:0x801F3F7C; // type:object size:0x4 data:float +lbl_801F3F80 = .sdata2:0x801F3F80; // type:object size:0x4 data:float +lbl_801F3F88 = .sdata2:0x801F3F88; // type:object size:0x8 data:double +lbl_801F3F90 = .sdata2:0x801F3F90; // type:object size:0x4 data:4byte +lbl_801F3F94 = .sdata2:0x801F3F94; // type:object size:0x4 data:4byte +lbl_801F3F98 = .sdata2:0x801F3F98; // type:object size:0x4 data:float +lbl_801F3F9C = .sdata2:0x801F3F9C; // type:object size:0x4 data:float +lbl_801F3FA0 = .sdata2:0x801F3FA0; // type:object size:0x4 data:float +lbl_801F3FA4 = .sdata2:0x801F3FA4; // type:object size:0x4 data:float +lbl_801F3FA8 = .sdata2:0x801F3FA8; // type:object size:0x8 data:double +lbl_801F3FC0 = .sbss2:0x801F3FC0; // type:object size:0x1 data:byte +lbl_801F3FC1 = .sbss2:0x801F3FC1; // type:object size:0x1 data:byte +lbl_801F3FC2 = .sbss2:0x801F3FC2; // type:object size:0x1 data:byte +lbl_801F3FC3 = .sbss2:0x801F3FC3; // type:object size:0x1 data:byte +lbl_801F3FC4 = .sbss2:0x801F3FC4; // type:object size:0x1 data:byte +lbl_801F3FC5 = .sbss2:0x801F3FC5; // type:object size:0x1 data:byte +lbl_801F3FC6 = .sbss2:0x801F3FC6; // type:object size:0x1 data:byte +lbl_801F3FC7 = .sbss2:0x801F3FC7; // type:object size:0x1 data:byte diff --git a/config/GMPP01_02/build.sha1 b/config/GMPP01_02/build.sha1 new file mode 100644 index 00000000..fcf1ec59 --- /dev/null +++ b/config/GMPP01_02/build.sha1 @@ -0,0 +1,100 @@ +65ef91650e9201047f50a3c39c7693a21fff2b29 build/GMPP01_02/main.dol +7101a759bcd45edee5bbc00a36d347c1f787c2a1 build/GMPP01_02/_minigameDll/_minigameDll.rel +b60fe8dd6faa20663224d64651b80c25b9b202ef build/GMPP01_02/bootDll/bootDll.rel +eef3ac50923ab2f20d588ef10ae15f3bc739f2b8 build/GMPP01_02/instDll/instDll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_02/m302Dll/m302Dll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_02/m303Dll/m303Dll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_02/m330Dll/m330Dll.rel +f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 build/GMPP01_02/m333Dll/m333Dll.rel +cd3532af828e8217924296c4cadbd31ddd915a05 build/GMPP01_02/m402Dll/m402Dll.rel +b2e3cdd9167c579e02c6ecc5643b6aadcc5b6a99 build/GMPP01_02/m403Dll/m403Dll.rel +56c825a1e0bbe33e3a0e1e70396c21af9b575243 build/GMPP01_02/m404Dll/m404Dll.rel +cc76ded0a41aea632fd9b3c5e37fe6d847107d91 build/GMPP01_02/m405Dll/m405Dll.rel +5c2aee9c8f10dc763c9ff763874f3a4b58880f02 build/GMPP01_02/m406Dll/m406Dll.rel +7133701b7c28a66f9d24ab64081e472d458dad51 build/GMPP01_02/m407dll/m407dll.rel +6f2552516b8e151ccbed99ee6730ca2cb2e0fd49 build/GMPP01_02/m408Dll/m408Dll.rel +71a91946651b40cc217b08d293f23fbf01c7407a build/GMPP01_02/m409Dll/m409Dll.rel +e938c2f354224a6a5a7b015f9abae596298788ee build/GMPP01_02/m410Dll/m410Dll.rel +e29bae44753c7ce8e5213881b10d6b27c02c4f7a build/GMPP01_02/m411Dll/m411Dll.rel +23da1cff677f992bb76dcbf4a9f9061542b4be7f build/GMPP01_02/m412Dll/m412Dll.rel +6ed381e5b4d75eeab2c3ded39473a482f61ee32d build/GMPP01_02/m413Dll/m413Dll.rel +902f32cc75ac0030c7c531dbeefda055bc8d7f27 build/GMPP01_02/m414Dll/m414Dll.rel +7063ae505540bafebf802128d8d2f394b7f6f921 build/GMPP01_02/m415Dll/m415Dll.rel +2979d5f934b9099116fbd943a91d6a3bb56e6ec0 build/GMPP01_02/m416Dll/m416Dll.rel +b20482a2af7c839456fe7580dcbd92ca9984ec71 build/GMPP01_02/m417Dll/m417Dll.rel +762f56820668c74cdcde436a08419bdb59a35a89 build/GMPP01_02/m418Dll/m418Dll.rel +5fba3dfcfca6ef78eb46833f665019bca641063e build/GMPP01_02/m419Dll/m419Dll.rel +bb514277a33821093fd2acfae2cb86531b317d17 build/GMPP01_02/m420dll/m420dll.rel +216ba8bbc8905f33370ae651d478f6bd56c17b27 build/GMPP01_02/m421Dll/m421Dll.rel +6c152ddb5f518c9c6444030dfc30ab53ef931b40 build/GMPP01_02/m422Dll/m422Dll.rel +db80fcb993ce09d808de29d2488f2b1ab2afc8cd build/GMPP01_02/m423Dll/m423Dll.rel +827da0897edcc2706a3623722430d4e70512c653 build/GMPP01_02/m424Dll/m424Dll.rel +26eb36bfc9106af2462a0d7e013f5321dbaecdd1 build/GMPP01_02/m425Dll/m425Dll.rel +04b649fb6eb248e506cf15fdcfbed3e915a80682 build/GMPP01_02/m426Dll/m426Dll.rel +810a1c91f794897862ac9b6a4e076a70c6b0238a build/GMPP01_02/m427Dll/m427Dll.rel +888af662a228e349ea6a0c60e19de74f8fa47914 build/GMPP01_02/m428Dll/m428Dll.rel +88b2330f175d1346a71f67491dcf9eff62d2d2d1 build/GMPP01_02/m429Dll/m429Dll.rel +e611007dd71ab515de65e9a6879f0508193fd58a build/GMPP01_02/m430Dll/m430Dll.rel +6a2b097a6d57c36bff5aaeb8c9ea2f01df7407ad build/GMPP01_02/m431Dll/m431Dll.rel +17b6a0c65c7cb759fc460fe7b8eed3dd7dc7184d build/GMPP01_02/m432Dll/m432Dll.rel +ce90f494ced6f2611603c247bdc733a458b5a523 build/GMPP01_02/m433Dll/m433Dll.rel +100fe402942821dc8e5753f3cada5e2bf5ab6214 build/GMPP01_02/m434Dll/m434Dll.rel +4936db381fa068395cff28c0d635c5ec7cc7218f build/GMPP01_02/m435Dll/m435Dll.rel +ba1c3bdc5f250996a5c873791347ce4c20b38692 build/GMPP01_02/m436Dll/m436Dll.rel +7273786a2995182baf9a85148c5974097999fe8e build/GMPP01_02/m437Dll/m437Dll.rel +d7c4bdf1729695a7348f8a36de2911db7aa24abb build/GMPP01_02/m438Dll/m438Dll.rel +4d5a719b49edb55e0b0b52c0d81b31c14d197d20 build/GMPP01_02/m439Dll/m439Dll.rel +469b18886221ae8a5b90f3e85b01ce6a01befb0b build/GMPP01_02/m440Dll/m440Dll.rel +7d6e99b67d2dde25d3fc75ac314c2a69be34137e build/GMPP01_02/m441Dll/m441Dll.rel +63af3c4f33fd362f17aa1be9f764d0549f92598d build/GMPP01_02/m442Dll/m442Dll.rel +5118a0bab1877455eae9002c3cc561d3360fd792 build/GMPP01_02/m443Dll/m443Dll.rel +a344672428b1e3a1d4bc3ce935472af529a6dd18 build/GMPP01_02/m444dll/m444dll.rel +02f7c52aa6fd4b21a5700615aeaee9ef59e6b9f3 build/GMPP01_02/m445Dll/m445Dll.rel +2ab71adae47a3d9632dcf45cf18ca0b1fc33d157 build/GMPP01_02/m446dll/m446dll.rel +0640357fe4d0148dac4bc382c8231410e24fe951 build/GMPP01_02/m447dll/m447dll.rel +78bcdd8d1fdb810784fca4d5bbec92c63e2e6b54 build/GMPP01_02/m448Dll/m448Dll.rel +fcf6e4b0089e19ffddf01a119c8c515a4acc943a build/GMPP01_02/m449Dll/m449Dll.rel +ebcf95781e8078813ed041dd0a869ae2e413679b build/GMPP01_02/m450Dll/m450Dll.rel +aa16b743f7b64f22abfd8bb93646883cc73bd7e0 build/GMPP01_02/m451Dll/m451Dll.rel +f6fd7a6537e56c535d02ac4a48c9008605f93ea1 build/GMPP01_02/m453Dll/m453Dll.rel +cc3431f55b523d474a952f3a0e927fac6b5402ab build/GMPP01_02/m455Dll/m455Dll.rel +09797251306bbd0f6fd712d6f832128ca8c58690 build/GMPP01_02/m456Dll/m456Dll.rel +8a992a09077fd5e1f6ca3e717547792938a519c1 build/GMPP01_02/m457Dll/m457Dll.rel +5dea2127d51d621b30d78b22cfa32327797e6e0b build/GMPP01_02/m458Dll/m458Dll.rel +e96dafe5949909cb7cc839174aa38e8e6661a63b build/GMPP01_02/m459dll/m459dll.rel +ea1e0bda22675840d39c74117e2a11ffe45f8dd4 build/GMPP01_02/m460Dll/m460Dll.rel +8d515f3b92a786df53bb88291b5cfc4bc59a3c8d build/GMPP01_02/m461Dll/m461Dll.rel +f02ba47e4459d9b0de174c5619a4efe61942962d build/GMPP01_02/m462Dll/m462Dll.rel +352ad6d84ded6cf28b9ff2f9e5da8812ac9164db build/GMPP01_02/m463Dll/m463Dll.rel +4705ada9d259a81ab2815fee3516f6217d848dd9 build/GMPP01_02/mentDll/mentDll.rel +b966ce340e98dbda624ff80f96c78d51ff1ed687 build/GMPP01_02/messDll/messDll.rel +7a3fed787df2d1bc942efd56a160eaf59605b94f build/GMPP01_02/mgmodedll/mgmodedll.rel +1e5bf1777b1470fcead2174c25b291b8f0513284 build/GMPP01_02/modeltestDll/modeltestDll.rel +d958038528a774801a4f5a0aee9e7aaae4bd94ce build/GMPP01_02/modeseldll/modeseldll.rel +a3e1e06937703f98191f4080e092bf06c4f449b3 build/GMPP01_02/mpexDll/mpexDll.rel +86ff8288bb92472376d02cade1d3c9603b613c57 build/GMPP01_02/msetupDll/msetupDll.rel +24b3e03e35f5bd395ef80a14babae724b7414190 build/GMPP01_02/mstory2Dll/mstory2Dll.rel +ccac71c67e5171a02b4a086df4d2daad81455466 build/GMPP01_02/mstory3Dll/mstory3Dll.rel +a8eee3981f4965412490cb9eef76aaa798957db1 build/GMPP01_02/mstory4Dll/mstory4Dll.rel +4ef3463c5dc60771468c6ab033dda1391c39d689 build/GMPP01_02/mstoryDll/mstoryDll.rel +45619d95e61d9296f25d94d7c6756f397fb89bee build/GMPP01_02/nisDll/nisDll.rel +1304967e3aa58a46492d4c736a7c86cf8a3b2e11 build/GMPP01_02/option/option.rel +7845814c6be2546930cfd8e0b9dec263fc1a959f build/GMPP01_02/present/present.rel +d9bd10433d1e2a6c0c4d9f942b766d743f99deec build/GMPP01_02/resultDll/resultDll.rel +c13262cf14f00e1d70bd65d20bbf988479816ca7 build/GMPP01_02/safDll/safDll.rel +51f53e1398c86c5a22251a457e3af86339b4b11f build/GMPP01_02/selmenuDll/selmenuDll.rel +af869e37d004f687fab2ff6897d75d6c15e31a00 build/GMPP01_02/staffDll/staffDll.rel +21de7aff7d39f8e130b4ef7602b8de85e51cf3e5 build/GMPP01_02/subchrselDll/subchrselDll.rel +70ee81af67a4f55de2fef65823583d22312f09be build/GMPP01_02/w01Dll/w01Dll.rel +33b5663ece821df4dbc50870e00de0e22e099efd build/GMPP01_02/w02Dll/w02Dll.rel +97aa16f847cdf2d6fd014f06df14c55f5f02024d build/GMPP01_02/w03Dll/w03Dll.rel +135cf03d803b9d8d39721b2a96769909aa719ee6 build/GMPP01_02/w04Dll/w04Dll.rel +e6d07092b69cc3b0514d9c12e3f5949edeb25f5f build/GMPP01_02/w05Dll/w05Dll.rel +0d5445461f58fac4c043c75bed7237b7f4045188 build/GMPP01_02/w06Dll/w06Dll.rel +5678fedd4a0490aeb9703328e959fdedea7da117 build/GMPP01_02/w10Dll/w10Dll.rel +58ae9e311cc8bd0291921480f423e2ad4774e1a2 build/GMPP01_02/w20Dll/w20Dll.rel +8ea052be8c7585a1ab152682a0698b631c5b566f build/GMPP01_02/w21Dll/w21Dll.rel +8987f11fafd11f69161ca275967afe9c8b4e7b20 build/GMPP01_02/ztardll/ztardll.rel +d59c60b0149a85782fa98d1a4da6cc768a09b473 build/GMPP01_02/E3setupDLL/E3setupDLL.rel +eba8a17e8b263bc9cd601b1aea7e698a8785416a build/GMPP01_02/m300Dll/m300Dll.rel +c457a4a45ebae776331484ba94f5798041a77a57 build/GMPP01_02/m401Dll/m401Dll.rel diff --git a/config/GMPP01_02/config.yml b/config/GMPP01_02/config.yml new file mode 100644 index 00000000..19380dcf --- /dev/null +++ b/config/GMPP01_02/config.yml @@ -0,0 +1,639 @@ +object_base: orig/GMPP01_02 +object: sys/main.dol +hash: 65ef91650e9201047f50a3c39c7693a21fff2b29 +symbols: config/GMPP01_00/symbols.txt +splits: config/GMPP01_00/splits.txt +quick_analysis: false # Faster re-runs after initial analysis +mw_comment_version: 10 # GC 2.6 linker +force_active: [__register_global_object, lbl_801D40D0] + +detect_objects: true +detect_strings: true +fill_gaps: true +modules: +- object: files/dll/_minigameDll.rel + hash: 7101a759bcd45edee5bbc00a36d347c1f787c2a1 + symbols: config/GMPP01_00/rels/_minigameDll/symbols.txt + splits: config/GMPP01_00/rels/_minigameDll/splits.txt + links: [] +- object: files/dll/bootDll.rel + hash: b60fe8dd6faa20663224d64651b80c25b9b202ef + symbols: config/GMPP01_00/rels/bootDll/symbols.txt + splits: config/GMPP01_00/rels/bootDll/splits.txt + links: [] +- object: files/dll/instDll.rel + hash: eef3ac50923ab2f20d588ef10ae15f3bc739f2b8 + symbols: config/GMPP01_00/rels/instDll/symbols.txt + splits: config/GMPP01_00/rels/instDll/splits.txt + links: [] +- object: files/dll/m302Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m302Dll/symbols.txt + splits: config/GMPP01_00/rels/m302Dll/splits.txt + links: [] +- object: files/dll/m303Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m303Dll/symbols.txt + splits: config/GMPP01_00/rels/m303Dll/splits.txt + links: [] +- object: files/dll/m330Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m330Dll/symbols.txt + splits: config/GMPP01_00/rels/m330Dll/splits.txt + links: [] +- object: files/dll/m333Dll.rel + hash: f1ad7b5a5198a14d34141b28c654bc1704c9dcd9 + symbols: config/GMPP01_00/rels/m333Dll/symbols.txt + splits: config/GMPP01_00/rels/m333Dll/splits.txt + links: [] +- object: files/dll/m402Dll.rel + hash: cd3532af828e8217924296c4cadbd31ddd915a05 + symbols: config/GMPP01_00/rels/m402Dll/symbols.txt + splits: config/GMPP01_00/rels/m402Dll/splits.txt + links: [] +- object: files/dll/m403Dll.rel + hash: b2e3cdd9167c579e02c6ecc5643b6aadcc5b6a99 + symbols: config/GMPP01_00/rels/m403Dll/symbols.txt + splits: config/GMPP01_00/rels/m403Dll/splits.txt + links: [] +- object: files/dll/m404Dll.rel + hash: 56c825a1e0bbe33e3a0e1e70396c21af9b575243 + symbols: config/GMPP01_00/rels/m404Dll/symbols.txt + splits: config/GMPP01_00/rels/m404Dll/splits.txt + links: [] +- object: files/dll/m405Dll.rel + hash: cc76ded0a41aea632fd9b3c5e37fe6d847107d91 + symbols: config/GMPP01_00/rels/m405Dll/symbols.txt + splits: config/GMPP01_00/rels/m405Dll/splits.txt + links: [] +- object: files/dll/m406Dll.rel + hash: 5c2aee9c8f10dc763c9ff763874f3a4b58880f02 + symbols: config/GMPP01_00/rels/m406Dll/symbols.txt + splits: config/GMPP01_00/rels/m406Dll/splits.txt + links: [] +- object: files/dll/m407dll.rel + hash: 7133701b7c28a66f9d24ab64081e472d458dad51 + symbols: config/GMPP01_00/rels/m407dll/symbols.txt + splits: config/GMPP01_00/rels/m407dll/splits.txt + links: [] +- object: files/dll/m408Dll.rel + hash: 6f2552516b8e151ccbed99ee6730ca2cb2e0fd49 + symbols: config/GMPP01_00/rels/m408Dll/symbols.txt + splits: config/GMPP01_00/rels/m408Dll/splits.txt + links: [] +- object: files/dll/m409Dll.rel + hash: 71a91946651b40cc217b08d293f23fbf01c7407a + symbols: config/GMPP01_00/rels/m409Dll/symbols.txt + splits: config/GMPP01_00/rels/m409Dll/splits.txt + links: [] +- object: files/dll/m410Dll.rel + hash: e938c2f354224a6a5a7b015f9abae596298788ee + symbols: config/GMPP01_00/rels/m410Dll/symbols.txt + splits: config/GMPP01_00/rels/m410Dll/splits.txt + links: [] +- object: files/dll/m411Dll.rel + hash: e29bae44753c7ce8e5213881b10d6b27c02c4f7a + symbols: config/GMPP01_00/rels/m411Dll/symbols.txt + splits: config/GMPP01_00/rels/m411Dll/splits.txt + links: [] +- object: files/dll/m412Dll.rel + hash: 23da1cff677f992bb76dcbf4a9f9061542b4be7f + symbols: config/GMPP01_00/rels/m412Dll/symbols.txt + splits: config/GMPP01_00/rels/m412Dll/splits.txt + links: [] +- object: files/dll/m413Dll.rel + hash: 6ed381e5b4d75eeab2c3ded39473a482f61ee32d + symbols: config/GMPP01_00/rels/m413Dll/symbols.txt + splits: config/GMPP01_00/rels/m413Dll/splits.txt + links: [] +- object: files/dll/m414Dll.rel + hash: 902f32cc75ac0030c7c531dbeefda055bc8d7f27 + symbols: config/GMPP01_00/rels/m414Dll/symbols.txt + splits: config/GMPP01_00/rels/m414Dll/splits.txt + links: [] +- object: files/dll/m415Dll.rel + hash: 7063ae505540bafebf802128d8d2f394b7f6f921 + symbols: config/GMPP01_00/rels/m415Dll/symbols.txt + splits: config/GMPP01_00/rels/m415Dll/splits.txt + links: [] +- object: files/dll/m416Dll.rel + hash: 2979d5f934b9099116fbd943a91d6a3bb56e6ec0 + symbols: config/GMPP01_00/rels/m416Dll/symbols.txt + splits: config/GMPP01_00/rels/m416Dll/splits.txt + links: [] +- object: files/dll/m417Dll.rel + hash: b20482a2af7c839456fe7580dcbd92ca9984ec71 + symbols: config/GMPP01_00/rels/m417Dll/symbols.txt + splits: config/GMPP01_00/rels/m417Dll/splits.txt + links: [] +- object: files/dll/m418Dll.rel + hash: 762f56820668c74cdcde436a08419bdb59a35a89 + symbols: config/GMPP01_00/rels/m418Dll/symbols.txt + splits: config/GMPP01_00/rels/m418Dll/splits.txt + links: [] +- object: files/dll/m419Dll.rel + hash: 5fba3dfcfca6ef78eb46833f665019bca641063e + symbols: config/GMPP01_00/rels/m419Dll/symbols.txt + splits: config/GMPP01_00/rels/m419Dll/splits.txt + links: [] +- object: files/dll/m420dll.rel + hash: bb514277a33821093fd2acfae2cb86531b317d17 + symbols: config/GMPP01_00/rels/m420dll/symbols.txt + splits: config/GMPP01_00/rels/m420dll/splits.txt + links: [] +- object: files/dll/m421Dll.rel + hash: 216ba8bbc8905f33370ae651d478f6bd56c17b27 + symbols: config/GMPP01_00/rels/m421Dll/symbols.txt + splits: config/GMPP01_00/rels/m421Dll/splits.txt + links: [] +- object: files/dll/m422Dll.rel + hash: 6c152ddb5f518c9c6444030dfc30ab53ef931b40 + symbols: config/GMPP01_00/rels/m422Dll/symbols.txt + splits: config/GMPP01_00/rels/m422Dll/splits.txt + links: [] +- object: files/dll/m423Dll.rel + hash: db80fcb993ce09d808de29d2488f2b1ab2afc8cd + symbols: config/GMPP01_00/rels/m423Dll/symbols.txt + splits: config/GMPP01_00/rels/m423Dll/splits.txt + links: [] +- object: files/dll/m424Dll.rel + hash: 827da0897edcc2706a3623722430d4e70512c653 + symbols: config/GMPP01_00/rels/m424Dll/symbols.txt + splits: config/GMPP01_00/rels/m424Dll/splits.txt + links: [] +- object: files/dll/m425Dll.rel + hash: 26eb36bfc9106af2462a0d7e013f5321dbaecdd1 + symbols: config/GMPP01_00/rels/m425Dll/symbols.txt + splits: config/GMPP01_00/rels/m425Dll/splits.txt + links: [] +- object: files/dll/m426Dll.rel + hash: 04b649fb6eb248e506cf15fdcfbed3e915a80682 + symbols: config/GMPP01_00/rels/m426Dll/symbols.txt + splits: config/GMPP01_00/rels/m426Dll/splits.txt + links: [] +- object: files/dll/m427Dll.rel + hash: 810a1c91f794897862ac9b6a4e076a70c6b0238a + symbols: config/GMPP01_00/rels/m427Dll/symbols.txt + splits: config/GMPP01_00/rels/m427Dll/splits.txt + links: [] +- object: files/dll/m428Dll.rel + hash: 888af662a228e349ea6a0c60e19de74f8fa47914 + symbols: config/GMPP01_00/rels/m428Dll/symbols.txt + splits: config/GMPP01_00/rels/m428Dll/splits.txt + links: [] +- object: files/dll/m429Dll.rel + hash: 88b2330f175d1346a71f67491dcf9eff62d2d2d1 + symbols: config/GMPP01_00/rels/m429Dll/symbols.txt + splits: config/GMPP01_00/rels/m429Dll/splits.txt + links: [] +- object: files/dll/m430Dll.rel + hash: e611007dd71ab515de65e9a6879f0508193fd58a + symbols: config/GMPP01_00/rels/m430Dll/symbols.txt + splits: config/GMPP01_00/rels/m430Dll/splits.txt + links: [] +- object: files/dll/m431Dll.rel + hash: 6a2b097a6d57c36bff5aaeb8c9ea2f01df7407ad + symbols: config/GMPP01_00/rels/m431Dll/symbols.txt + splits: config/GMPP01_00/rels/m431Dll/splits.txt + links: [] +- object: files/dll/m432Dll.rel + hash: 17b6a0c65c7cb759fc460fe7b8eed3dd7dc7184d + symbols: config/GMPP01_00/rels/m432Dll/symbols.txt + splits: config/GMPP01_00/rels/m432Dll/splits.txt + links: [] +- object: files/dll/m433Dll.rel + hash: ce90f494ced6f2611603c247bdc733a458b5a523 + symbols: config/GMPP01_00/rels/m433Dll/symbols.txt + splits: config/GMPP01_00/rels/m433Dll/splits.txt + links: [] +- object: files/dll/m434Dll.rel + hash: 100fe402942821dc8e5753f3cada5e2bf5ab6214 + symbols: config/GMPP01_00/rels/m434Dll/symbols.txt + splits: config/GMPP01_00/rels/m434Dll/splits.txt + links: [] +- object: files/dll/m435Dll.rel + hash: 4936db381fa068395cff28c0d635c5ec7cc7218f + symbols: config/GMPP01_00/rels/m435Dll/symbols.txt + splits: config/GMPP01_00/rels/m435Dll/splits.txt + links: [] +- object: files/dll/m436Dll.rel + hash: ba1c3bdc5f250996a5c873791347ce4c20b38692 + symbols: config/GMPP01_00/rels/m436Dll/symbols.txt + splits: config/GMPP01_00/rels/m436Dll/splits.txt + links: [] +- object: files/dll/m437Dll.rel + hash: 7273786a2995182baf9a85148c5974097999fe8e + symbols: config/GMPP01_00/rels/m437Dll/symbols.txt + splits: config/GMPP01_00/rels/m437Dll/splits.txt + links: [] +- object: files/dll/m438Dll.rel + hash: d7c4bdf1729695a7348f8a36de2911db7aa24abb + symbols: config/GMPP01_00/rels/m438Dll/symbols.txt + splits: config/GMPP01_00/rels/m438Dll/splits.txt + links: [] +- object: files/dll/m439Dll.rel + hash: 4d5a719b49edb55e0b0b52c0d81b31c14d197d20 + symbols: config/GMPP01_00/rels/m439Dll/symbols.txt + splits: config/GMPP01_00/rels/m439Dll/splits.txt + links: [] +- object: files/dll/m440Dll.rel + hash: 469b18886221ae8a5b90f3e85b01ce6a01befb0b + symbols: config/GMPP01_00/rels/m440Dll/symbols.txt + splits: config/GMPP01_00/rels/m440Dll/splits.txt + links: [] +- object: files/dll/m441Dll.rel + hash: 7d6e99b67d2dde25d3fc75ac314c2a69be34137e + symbols: config/GMPP01_00/rels/m441Dll/symbols.txt + splits: config/GMPP01_00/rels/m441Dll/splits.txt + links: [] +- object: files/dll/m442Dll.rel + hash: 63af3c4f33fd362f17aa1be9f764d0549f92598d + symbols: config/GMPP01_00/rels/m442Dll/symbols.txt + splits: config/GMPP01_00/rels/m442Dll/splits.txt + links: [] +- object: files/dll/m443Dll.rel + hash: 5118a0bab1877455eae9002c3cc561d3360fd792 + symbols: config/GMPP01_00/rels/m443Dll/symbols.txt + splits: config/GMPP01_00/rels/m443Dll/splits.txt + links: [] +- object: files/dll/m444dll.rel + hash: a344672428b1e3a1d4bc3ce935472af529a6dd18 + symbols: config/GMPP01_02/rels/m444dll/symbols.txt + splits: config/GMPP01_02/rels/m444dll/splits.txt + links: [] +- object: files/dll/m445Dll.rel + hash: 02f7c52aa6fd4b21a5700615aeaee9ef59e6b9f3 + symbols: config/GMPP01_00/rels/m445Dll/symbols.txt + splits: config/GMPP01_00/rels/m445Dll/splits.txt + links: [] +- object: files/dll/m446dll.rel + hash: 2ab71adae47a3d9632dcf45cf18ca0b1fc33d157 + symbols: config/GMPP01_00/rels/m446dll/symbols.txt + splits: config/GMPP01_00/rels/m446dll/splits.txt + links: [] +- object: files/dll/m447dll.rel + hash: 0640357fe4d0148dac4bc382c8231410e24fe951 + symbols: config/GMPP01_00/rels/m447dll/symbols.txt + splits: config/GMPP01_00/rels/m447dll/splits.txt + links: [] +- object: files/dll/m448Dll.rel + hash: 78bcdd8d1fdb810784fca4d5bbec92c63e2e6b54 + symbols: config/GMPP01_00/rels/m448Dll/symbols.txt + splits: config/GMPP01_00/rels/m448Dll/splits.txt + links: [] +- object: files/dll/m449Dll.rel + hash: fcf6e4b0089e19ffddf01a119c8c515a4acc943a + symbols: config/GMPP01_00/rels/m449Dll/symbols.txt + splits: config/GMPP01_00/rels/m449Dll/splits.txt + links: [] +- object: files/dll/m450Dll.rel + hash: ebcf95781e8078813ed041dd0a869ae2e413679b + symbols: config/GMPP01_00/rels/m450Dll/symbols.txt + splits: config/GMPP01_00/rels/m450Dll/splits.txt + links: [] +- object: files/dll/m451Dll.rel + hash: aa16b743f7b64f22abfd8bb93646883cc73bd7e0 + symbols: config/GMPP01_00/rels/m451Dll/symbols.txt + splits: config/GMPP01_00/rels/m451Dll/splits.txt + links: [] +- object: files/dll/m453Dll.rel + hash: f6fd7a6537e56c535d02ac4a48c9008605f93ea1 + symbols: config/GMPP01_00/rels/m453Dll/symbols.txt + splits: config/GMPP01_00/rels/m453Dll/splits.txt + links: [] +- object: files/dll/m455Dll.rel + hash: cc3431f55b523d474a952f3a0e927fac6b5402ab + symbols: config/GMPP01_00/rels/m455Dll/symbols.txt + splits: config/GMPP01_00/rels/m455Dll/splits.txt + links: [] +- object: files/dll/m456Dll.rel + hash: 09797251306bbd0f6fd712d6f832128ca8c58690 + symbols: config/GMPP01_00/rels/m456Dll/symbols.txt + splits: config/GMPP01_00/rels/m456Dll/splits.txt + links: [] +- object: files/dll/m457Dll.rel + hash: 8a992a09077fd5e1f6ca3e717547792938a519c1 + symbols: config/GMPP01_00/rels/m457Dll/symbols.txt + splits: config/GMPP01_00/rels/m457Dll/splits.txt + links: [] +- object: files/dll/m458Dll.rel + hash: 5dea2127d51d621b30d78b22cfa32327797e6e0b + symbols: config/GMPP01_00/rels/m458Dll/symbols.txt + splits: config/GMPP01_00/rels/m458Dll/splits.txt + links: [] +- object: files/dll/m459dll.rel + hash: e96dafe5949909cb7cc839174aa38e8e6661a63b + symbols: config/GMPP01_00/rels/m459dll/symbols.txt + splits: config/GMPP01_00/rels/m459dll/splits.txt + links: [] +- object: files/dll/m460Dll.rel + hash: ea1e0bda22675840d39c74117e2a11ffe45f8dd4 + symbols: config/GMPP01_00/rels/m460Dll/symbols.txt + splits: config/GMPP01_00/rels/m460Dll/splits.txt + links: [] +- object: files/dll/m461Dll.rel + hash: 8d515f3b92a786df53bb88291b5cfc4bc59a3c8d + symbols: config/GMPP01_00/rels/m461Dll/symbols.txt + splits: config/GMPP01_00/rels/m461Dll/splits.txt + links: [] +- object: files/dll/m462Dll.rel + hash: f02ba47e4459d9b0de174c5619a4efe61942962d + symbols: config/GMPP01_00/rels/m462Dll/symbols.txt + splits: config/GMPP01_00/rels/m462Dll/splits.txt + links: [] +- object: files/dll/m463Dll.rel + hash: 352ad6d84ded6cf28b9ff2f9e5da8812ac9164db + symbols: config/GMPP01_00/rels/m463Dll/symbols.txt + splits: config/GMPP01_00/rels/m463Dll/splits.txt + links: [] +- object: files/dll/mentDll.rel + hash: 4705ada9d259a81ab2815fee3516f6217d848dd9 + symbols: config/GMPP01_00/rels/mentDll/symbols.txt + splits: config/GMPP01_00/rels/mentDll/splits.txt + links: [] +- object: files/dll/messDll.rel + hash: b966ce340e98dbda624ff80f96c78d51ff1ed687 + symbols: config/GMPP01_00/rels/messDll/symbols.txt + splits: config/GMPP01_00/rels/messDll/splits.txt + links: [] +- object: files/dll/mgmodedll.rel + hash: 7a3fed787df2d1bc942efd56a160eaf59605b94f + symbols: config/GMPP01_00/rels/mgmodedll/symbols.txt + splits: config/GMPP01_00/rels/mgmodedll/splits.txt + links: [] +- object: files/dll/modeltestDll.rel + hash: 1e5bf1777b1470fcead2174c25b291b8f0513284 + symbols: config/GMPP01_00/rels/modeltestDll/symbols.txt + splits: config/GMPP01_00/rels/modeltestDll/splits.txt + links: [] +- object: files/dll/modeseldll.rel + hash: d958038528a774801a4f5a0aee9e7aaae4bd94ce + symbols: config/GMPP01_00/rels/modeseldll/symbols.txt + splits: config/GMPP01_00/rels/modeseldll/splits.txt + links: [] +- object: files/dll/mpexDll.rel + hash: a3e1e06937703f98191f4080e092bf06c4f449b3 + symbols: config/GMPP01_00/rels/mpexDll/symbols.txt + splits: config/GMPP01_00/rels/mpexDll/splits.txt + links: [] +- object: files/dll/msetupDll.rel + hash: 86ff8288bb92472376d02cade1d3c9603b613c57 + symbols: config/GMPP01_00/rels/msetupDll/symbols.txt + splits: config/GMPP01_00/rels/msetupDll/splits.txt + links: [] +- object: files/dll/mstory2Dll.rel + hash: 24b3e03e35f5bd395ef80a14babae724b7414190 + symbols: config/GMPP01_02/rels/mstory2Dll/symbols.txt + splits: config/GMPP01_02/rels/mstory2Dll/splits.txt + links: [] +- object: files/dll/mstory3Dll.rel + hash: ccac71c67e5171a02b4a086df4d2daad81455466 + symbols: config/GMPP01_02/rels/mstory3Dll/symbols.txt + splits: config/GMPP01_02/rels/mstory3Dll/splits.txt + links: [] +- object: files/dll/mstory4Dll.rel + hash: a8eee3981f4965412490cb9eef76aaa798957db1 + symbols: config/GMPP01_00/rels/mstory4Dll/symbols.txt + splits: config/GMPP01_00/rels/mstory4Dll/splits.txt + links: [] +- object: files/dll/mstoryDll.rel + hash: 4ef3463c5dc60771468c6ab033dda1391c39d689 + symbols: config/GMPP01_02/rels/mstoryDll/symbols.txt + splits: config/GMPP01_02/rels/mstoryDll/splits.txt + links: [] +- object: files/dll/nisDll.rel + hash: 45619d95e61d9296f25d94d7c6756f397fb89bee + symbols: config/GMPP01_00/rels/nisDll/symbols.txt + splits: config/GMPP01_00/rels/nisDll/splits.txt + links: [] +- object: files/dll/option.rel + hash: 1304967e3aa58a46492d4c736a7c86cf8a3b2e11 + symbols: config/GMPP01_00/rels/option/symbols.txt + splits: config/GMPP01_00/rels/option/splits.txt + links: [] +- object: files/dll/present.rel + hash: 7845814c6be2546930cfd8e0b9dec263fc1a959f + symbols: config/GMPP01_00/rels/present/symbols.txt + splits: config/GMPP01_00/rels/present/splits.txt + links: [] +- object: files/dll/resultDll.rel + hash: d9bd10433d1e2a6c0c4d9f942b766d743f99deec + symbols: config/GMPP01_00/rels/resultDll/symbols.txt + splits: config/GMPP01_00/rels/resultDll/splits.txt + links: [] +- object: files/dll/safDll.rel + hash: c13262cf14f00e1d70bd65d20bbf988479816ca7 + symbols: config/GMPP01_00/rels/safDll/symbols.txt + splits: config/GMPP01_00/rels/safDll/splits.txt + links: [] +- object: files/dll/selmenuDll.rel + hash: 51f53e1398c86c5a22251a457e3af86339b4b11f + symbols: config/GMPP01_00/rels/selmenuDll/symbols.txt + splits: config/GMPP01_00/rels/selmenuDll/splits.txt + links: [] +- object: files/dll/staffDll.rel + hash: af869e37d004f687fab2ff6897d75d6c15e31a00 + symbols: config/GMPP01_00/rels/staffDll/symbols.txt + splits: config/GMPP01_00/rels/staffDll/splits.txt + links: [] +- object: files/dll/subchrselDll.rel + hash: 21de7aff7d39f8e130b4ef7602b8de85e51cf3e5 + symbols: config/GMPP01_00/rels/subchrselDll/symbols.txt + splits: config/GMPP01_00/rels/subchrselDll/splits.txt + links: [] +- object: files/dll/w01Dll.rel + hash: 70ee81af67a4f55de2fef65823583d22312f09be + symbols: config/GMPP01_00/rels/w01Dll/symbols.txt + splits: config/GMPP01_00/rels/w01Dll/splits.txt + links: [] +- object: files/dll/w02Dll.rel + hash: 33b5663ece821df4dbc50870e00de0e22e099efd + symbols: config/GMPP01_00/rels/w02Dll/symbols.txt + splits: config/GMPP01_00/rels/w02Dll/splits.txt + links: [] +- object: files/dll/w03Dll.rel + hash: 97aa16f847cdf2d6fd014f06df14c55f5f02024d + symbols: config/GMPP01_00/rels/w03Dll/symbols.txt + splits: config/GMPP01_00/rels/w03Dll/splits.txt + links: [] +- object: files/dll/w04Dll.rel + hash: 135cf03d803b9d8d39721b2a96769909aa719ee6 + symbols: config/GMPP01_00/rels/w04Dll/symbols.txt + splits: config/GMPP01_00/rels/w04Dll/splits.txt + links: [] +- object: files/dll/w05Dll.rel + hash: e6d07092b69cc3b0514d9c12e3f5949edeb25f5f + symbols: config/GMPP01_00/rels/w05Dll/symbols.txt + splits: config/GMPP01_00/rels/w05Dll/splits.txt + links: [] +- object: files/dll/w06Dll.rel + hash: 0d5445461f58fac4c043c75bed7237b7f4045188 + symbols: config/GMPP01_00/rels/w06Dll/symbols.txt + splits: config/GMPP01_00/rels/w06Dll/splits.txt + links: [] +- object: files/dll/w10Dll.rel + hash: 5678fedd4a0490aeb9703328e959fdedea7da117 + symbols: config/GMPP01_00/rels/w10Dll/symbols.txt + splits: config/GMPP01_00/rels/w10Dll/splits.txt + links: [] +- object: files/dll/w20Dll.rel + hash: 58ae9e311cc8bd0291921480f423e2ad4774e1a2 + symbols: config/GMPP01_00/rels/w20Dll/symbols.txt + splits: config/GMPP01_00/rels/w20Dll/splits.txt + links: [] +- object: files/dll/w21Dll.rel + hash: 8ea052be8c7585a1ab152682a0698b631c5b566f + symbols: config/GMPP01_00/rels/w21Dll/symbols.txt + splits: config/GMPP01_00/rels/w21Dll/splits.txt + links: [] +- object: files/dll/ztardll.rel + hash: 8987f11fafd11f69161ca275967afe9c8b4e7b20 + symbols: config/GMPP01_00/rels/ztardll/symbols.txt + splits: config/GMPP01_00/rels/ztardll/splits.txt + links: [] +- object: files/dll/E3setupDLL.rel + hash: d59c60b0149a85782fa98d1a4da6cc768a09b473 + symbols: config/GMPP01_00/rels/E3setupDLL/symbols.txt + splits: config/GMPP01_00/rels/E3setupDLL/splits.txt + links: [_minigameDll] +- object: files/dll/m300Dll.rel + hash: eba8a17e8b263bc9cd601b1aea7e698a8785416a + symbols: config/GMPP01_00/rels/m300Dll/symbols.txt + splits: config/GMPP01_00/rels/m300Dll/splits.txt + links: [_minigameDll] +- object: files/dll/m401Dll.rel + hash: c457a4a45ebae776331484ba94f5798041a77a57 + symbols: config/GMPP01_00/rels/m401Dll/symbols.txt + splits: config/GMPP01_00/rels/m401Dll/splits.txt + links: [_minigameDll] + +extract: +- symbol: ank8x8_4b + binary: ank8x8_4b.bin + header: ank8x8_4b.inc +- symbol: refMapData0 + binary: refMapData0.anm + header: refMapData0.inc +- symbol: refMapData1 + binary: refMapData1.anm + header: refMapData1.inc +- symbol: refMapData2 + binary: refMapData2.anm + header: refMapData2.inc +- symbol: refMapData3 + binary: refMapData3.anm + header: refMapData3.inc +- symbol: refMapData4 + binary: refMapData4.anm + header: refMapData4.inc +- symbol: toonMapData + binary: toonMapData.anm + header: toonMapData.inc +- symbol: toonMapData2 + binary: toonMapData2.anm + header: toonMapData2.inc +- symbol: hiliteData + binary: hiliteData.anm + header: hiliteData.inc +- symbol: hiliteData2 + binary: hiliteData2.anm + header: hiliteData2.inc +- symbol: hiliteData3 + binary: hiliteData3.anm + header: hiliteData3.inc +- symbol: hiliteData4 + binary: hiliteData4.anm + header: hiliteData4.inc +- symbol: Ascii8x8_1bpp + binary: Ascii8x8_1bpp.bin + header: Ascii8x8_1bpp.inc +- symbol: coveropen_en + binary: coveropen_en.bin + header: coveropen_en.inc +- symbol: fatalerror_en + binary: fatalerror_en.bin + header: fatalerror_en.inc +- symbol: loading_en + binary: loading_en.bin + header: loading_en.inc +- symbol: nodisc_en + binary: nodisc_en.bin + header: nodisc_en.inc +- symbol: retryerror_en + binary: retryerror_en.bin + header: retryerror_en.inc +- symbol: wrongdisc_en + binary: wrongdisc_en.bin + header: wrongdisc_en.inc +- symbol: coveropen_fr + binary: coveropen_fr.bin + header: coveropen_fr.inc +- symbol: fatalerror_fr + binary: fatalerror_fr.bin + header: fatalerror_fr.inc +- symbol: loading_fr + binary: loading_fr.bin + header: loading_fr.inc +- symbol: nodisc_fr + binary: nodisc_fr.bin + header: nodisc_fr.inc +- symbol: retryerror_fr + binary: retryerror_fr.bin + header: retryerror_fr.inc +- symbol: wrongdisc_fr + binary: wrongdisc_fr.bin + header: wrongdisc_fr.inc +- symbol: coveropen_ge + binary: coveropen_ge.bin + header: coveropen_ge.inc +- symbol: fatalerror_ge + binary: fatalerror_ge.bin + header: fatalerror_ge.inc +- symbol: loading_ge + binary: loading_ge.bin + header: loading_ge.inc +- symbol: nodisc_ge + binary: nodisc_ge.bin + header: nodisc_ge.inc +- symbol: retryerror_ge + binary: retryerror_ge.bin + header: retryerror_ge.inc +- symbol: wrongdisc_ge + binary: wrongdisc_ge.bin + header: wrongdisc_ge.inc +- symbol: coveropen_it + binary: coveropen_it.bin + header: coveropen_it.inc +- symbol: fatalerror_it + binary: fatalerror_it.bin + header: fatalerror_it.inc +- symbol: loading_it + binary: loading_it.bin + header: loading_it.inc +- symbol: nodisc_it + binary: nodisc_it.bin + header: nodisc_it.inc +- symbol: retryerror_it + binary: retryerror_it.bin + header: retryerror_it.inc +- symbol: wrongdisc_it + binary: wrongdisc_it.bin + header: wrongdisc_it.inc +- symbol: coveropen_sp + binary: coveropen_sp.bin + header: coveropen_sp.inc +- symbol: fatalerror_sp + binary: fatalerror_sp.bin + header: fatalerror_sp.inc +- symbol: loading_sp + binary: loading_sp.bin + header: loading_sp.inc +- symbol: nodisc_sp + binary: nodisc_sp.bin + header: nodisc_sp.inc +- symbol: retryerror_sp + binary: retryerror_sp.bin + header: retryerror_sp.inc +- symbol: wrongdisc_sp + binary: wrongdisc_sp.bin + header: wrongdisc_sp.inc \ No newline at end of file diff --git a/config/GMPP01_02/rels/m444dll/splits.txt b/config/GMPP01_02/rels/m444dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_02/rels/m444dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_02/rels/m444dll/symbols.txt b/config/GMPP01_02/rels/m444dll/symbols.txt new file mode 100644 index 00000000..45016f3f --- /dev/null +++ b/config/GMPP01_02/rels/m444dll/symbols.txt @@ -0,0 +1,321 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3D0 +fn_1_470 = .text:0x00000470; // type:function size:0x3788 +fn_1_3BF8 = .text:0x00003BF8; // type:function size:0x1270 +fn_1_4E68 = .text:0x00004E68; // type:function size:0x7C4 +fn_1_562C = .text:0x0000562C; // type:function size:0x1C4 +fn_1_57F0 = .text:0x000057F0; // type:function size:0x6F4 +fn_1_5EE4 = .text:0x00005EE4; // type:function size:0x6F4 +fn_1_65D8 = .text:0x000065D8; // type:function size:0x824 +fn_1_6DFC = .text:0x00006DFC; // type:function size:0xBC +fn_1_6EB8 = .text:0x00006EB8; // type:function size:0xA0 +fn_1_6F58 = .text:0x00006F58; // type:function size:0x3B4 +fn_1_730C = .text:0x0000730C; // type:function size:0xC2C +fn_1_7F38 = .text:0x00007F38; // type:function size:0x2C4 +fn_1_81FC = .text:0x000081FC; // type:function size:0x90 +fn_1_828C = .text:0x0000828C; // type:function size:0xEC +fn_1_8378 = .text:0x00008378; // type:function size:0x128 +fn_1_84A0 = .text:0x000084A0; // type:function size:0x1F8 +fn_1_8698 = .text:0x00008698; // type:function size:0x7B4 +fn_1_8E4C = .text:0x00008E4C; // type:function size:0x648 +fn_1_9494 = .text:0x00009494; // type:function size:0x894 +fn_1_9D28 = .text:0x00009D28; // type:function size:0x3B4 +fn_1_A0DC = .text:0x0000A0DC; // type:function size:0xB70 +fn_1_AC4C = .text:0x0000AC4C; // type:function size:0x618 +fn_1_B264 = .text:0x0000B264; // type:function size:0x1108 +fn_1_C36C = .text:0x0000C36C; // type:function size:0x528 +fn_1_C894 = .text:0x0000C894; // type:function size:0x2F4 +fn_1_CB88 = .text:0x0000CB88; // type:function size:0x140 +fn_1_CCC8 = .text:0x0000CCC8; // type:function size:0x298 +fn_1_CF60 = .text:0x0000CF60; // type:function size:0x194 +fn_1_D0F4 = .text:0x0000D0F4; // type:function size:0x244 +fn_1_D338 = .text:0x0000D338; // type:function size:0x3A8 +fn_1_D6E0 = .text:0x0000D6E0; // type:function size:0x290 +fn_1_D970 = .text:0x0000D970; // type:function size:0x138 +fn_1_DAA8 = .text:0x0000DAA8; // type:function size:0x78 +fn_1_DB20 = .text:0x0000DB20; // type:function size:0x2C +fn_1_DB4C = .text:0x0000DB4C; // type:function size:0x42C +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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_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:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0xC data:4byte +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x28 +lbl_1_data_140 = .data:0x00000140; // type:object size:0x54 data:float +lbl_1_data_194 = .data:0x00000194; // type:object size:0x20 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0xA data:string +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0xA data:string +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xA data:string +lbl_1_data_1F6 = .data:0x000001F6; // type:object size:0xD data:string +lbl_1_data_203 = .data:0x00000203; // type:object size:0xD data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0xD data:string +lbl_1_data_21D = .data:0x0000021D; // type:object size:0xD data:string +lbl_1_data_22A = .data:0x0000022A; // type:object size:0xB data:string +lbl_1_data_235 = .data:0x00000235; // type:object size:0xB data:string +lbl_1_data_240 = .data:0x00000240; // type:object size:0x4 +lbl_1_data_244 = .data:0x00000244; // type:object size:0xA data:string +lbl_1_data_24E = .data:0x0000024E; // type:object size:0xA +lbl_1_data_258 = .data:0x00000258; // type:object size:0xC +lbl_1_data_264 = .data:0x00000264; // type:object size:0x3C +lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0x28 +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0xA +lbl_1_data_2D2 = .data:0x000002D2; // type:object size:0xD data:string +lbl_1_data_2DF = .data:0x000002DF; // type:object size:0xD data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xD data:string +lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0xD data:string +lbl_1_data_306 = .data:0x00000306; // type:object size:0xD data:string +lbl_1_data_313 = .data:0x00000313; // type:object size:0xD data:string +lbl_1_data_320 = .data:0x00000320; // type:object size:0xD data:string +lbl_1_data_32D = .data:0x0000032D; // type:object size:0xD data:string +lbl_1_data_33A = .data:0x0000033A; // type:object size:0xD data:string +lbl_1_data_347 = .data:0x00000347; // type:object size:0xD data:string +lbl_1_data_354 = .data:0x00000354; // type:object size:0xD data:string +lbl_1_data_361 = .data:0x00000361; // type:object size:0xD data:string +lbl_1_data_36E = .data:0x0000036E; // type:object size:0xD data:string +lbl_1_data_37B = .data:0x0000037B; // type:object size:0xD data:string +jumptable_1_data_388 = .data:0x00000388; // type:object size:0x1C scope:local +lbl_1_data_3A4 = .data:0x000003A4; // type:object size:0x8 +lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x30 +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x24 +lbl_1_data_400 = .data:0x00000400; // type:object size:0x54 +lbl_1_data_454 = .data:0x00000454; // type:object size:0xC +lbl_1_data_460 = .data:0x00000460; // type:object size:0x10 data:string +lbl_1_data_470 = .data:0x00000470; // type:object size:0x127C +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x140 data:2byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x140 data:2byte +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x8 data:float +lbl_1_bss_290 = .bss:0x00000290; // type:object size:0x18 data:4byte +lbl_1_bss_2A8 = .bss:0x000002A8; // type:object size:0x18 data:float +lbl_1_bss_2C0 = .bss:0x000002C0; // type:object size:0x10 data:2byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x2 data:2byte +lbl_1_bss_2D2 = .bss:0x000002D2; // type:object size:0x2 data:2byte +lbl_1_bss_2D4 = .bss:0x000002D4; // type:object size:0x2 data:2byte +lbl_1_bss_2D6 = .bss:0x000002D6; // type:object size:0x2 data:2byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x2 data:2byte +lbl_1_bss_2DA = .bss:0x000002DA; // type:object size:0x2 data:2byte +lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x2 data:2byte +lbl_1_bss_2E0 = .bss:0x000002E0; // type:object size:0x4 data:float +lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0xC data:float +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0xC data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC data:4byte +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0x4 data:4byte +lbl_1_bss_310 = .bss:0x00000310; // type:object size:0x1 data:byte +lbl_1_bss_312 = .bss:0x00000312; // type:object size:0x2 data:2byte +lbl_1_bss_314 = .bss:0x00000314; // type:object size:0xC data:float +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x8 data:2byte +lbl_1_bss_328 = .bss:0x00000328; // type:object size:0x24 data:float +lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x24 data:float +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0x400 +lbl_1_bss_770 = .bss:0x00000770; // type:object size:0xC data:float +lbl_1_bss_77C = .bss:0x0000077C; // type:object size:0xC data:float +lbl_1_bss_788 = .bss:0x00000788; // type:object size:0xC +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x90 +lbl_1_bss_824 = .bss:0x00000824; // type:object size:0x3C +lbl_1_bss_860 = .bss:0x00000860; // type:object size:0x24 +lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x1000 +lbl_1_bss_1884 = .bss:0x00001884; // type:object size:0x2 data:2byte +lbl_1_bss_1888 = .bss:0x00001888; // type:object size:0xC data:float +lbl_1_bss_1894 = .bss:0x00001894; // type:object size:0xC data:float +lbl_1_bss_18A0 = .bss:0x000018A0; // type:object size:0x14 +lbl_1_bss_18B4 = .bss:0x000018B4; // type:object size:0x3C +lbl_1_bss_18F0 = .bss:0x000018F0; // type:object size:0xC000 +lbl_1_bss_D8F0 = .bss:0x0000D8F0; // type:object size:0xC000 +lbl_1_bss_198F0 = .bss:0x000198F0; // type:object size:0x1A +lbl_1_bss_1990A = .bss:0x0001990A; // type:object size:0x2 data:2byte +lbl_1_bss_1990E = .bss:0x0001990E; // type:object size:0xB4 data:2byte +lbl_1_bss_199C2 = .bss:0x000199C2; // type:object size:0xB4 data:2byte diff --git a/config/GMPP01_02/rels/mstory2Dll/splits.txt b/config/GMPP01_02/rels/mstory2Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_02/rels/mstory2Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_02/rels/mstory2Dll/symbols.txt b/config/GMPP01_02/rels/mstory2Dll/symbols.txt new file mode 100644 index 00000000..a43c0850 --- /dev/null +++ b/config/GMPP01_02/rels/mstory2Dll/symbols.txt @@ -0,0 +1,709 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x2A0 +_prolog = .text:0x00000344; // type:function size:0x54 scope:global +_epilog = .text:0x00000398; // type:function size:0x4C scope:global +fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 +fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 +fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +fn_1_864 = .text:0x00000864; // type:function size:0x28 +fn_1_88C = .text:0x0000088C; // type:function size:0x20 +fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 +fn_1_984 = .text:0x00000984; // type:function size:0xC8 +fn_1_A4C = .text:0x00000A4C; // type:function size:0xBC +fn_1_B08 = .text:0x00000B08; // type:function size:0xBC +fn_1_BC4 = .text:0x00000BC4; // type:function size:0x4 +fn_1_BC8 = .text:0x00000BC8; // type:function size:0x20 +fn_1_BE8 = .text:0x00000BE8; // type:function size:0x28 +fn_1_C10 = .text:0x00000C10; // type:function size:0x20 +fn_1_C30 = .text:0x00000C30; // type:function size:0x24 +fn_1_C54 = .text:0x00000C54; // type:function size:0x4 +fn_1_C58 = .text:0x00000C58; // type:function size:0xA48 +fn_1_16A0 = .text:0x000016A0; // type:function size:0x1BC +fn_1_185C = .text:0x0000185C; // type:function size:0x1D8 +fn_1_1A34 = .text:0x00001A34; // type:function size:0x60 +fn_1_1A94 = .text:0x00001A94; // type:function size:0x68 +fn_1_1AFC = .text:0x00001AFC; // type:function size:0xAC +fn_1_1BA8 = .text:0x00001BA8; // type:function size:0xBC +fn_1_1C64 = .text:0x00001C64; // type:function size:0xB4 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x34 +fn_1_1D4C = .text:0x00001D4C; // type:function size:0x40 +fn_1_1D8C = .text:0x00001D8C; // type:function size:0x70 +fn_1_1DFC = .text:0x00001DFC; // type:function size:0x188 +fn_1_1F84 = .text:0x00001F84; // type:function size:0x2E0 +fn_1_2264 = .text:0x00002264; // type:function size:0x90 +fn_1_22F4 = .text:0x000022F4; // type:function size:0x48 +fn_1_233C = .text:0x0000233C; // type:function size:0x54 +fn_1_2390 = .text:0x00002390; // type:function size:0x3C0 +fn_1_2750 = .text:0x00002750; // type:function size:0x10 +fn_1_2760 = .text:0x00002760; // type:function size:0x10 +fn_1_2770 = .text:0x00002770; // type:function size:0xB8 +fn_1_2828 = .text:0x00002828; // type:function size:0x120 +fn_1_2948 = .text:0x00002948; // type:function size:0x3B8 +fn_1_2D00 = .text:0x00002D00; // type:function size:0x7F4 +fn_1_34F4 = .text:0x000034F4; // type:function size:0x88 +fn_1_357C = .text:0x0000357C; // type:function size:0x94 +fn_1_3610 = .text:0x00003610; // type:function size:0x58 +fn_1_3668 = .text:0x00003668; // type:function size:0xEC +fn_1_3754 = .text:0x00003754; // type:function size:0xC4 +fn_1_3818 = .text:0x00003818; // type:function size:0x3C +fn_1_3854 = .text:0x00003854; // type:function size:0x44 +fn_1_3898 = .text:0x00003898; // type:function size:0x26C +fn_1_3B04 = .text:0x00003B04; // type:function size:0x26C +fn_1_3D70 = .text:0x00003D70; // type:function size:0x27C +fn_1_3FEC = .text:0x00003FEC; // type:function size:0x2B4 +fn_1_42A0 = .text:0x000042A0; // type:function size:0x46C +fn_1_470C = .text:0x0000470C; // type:function size:0x454 +fn_1_4B60 = .text:0x00004B60; // type:function size:0x48C +fn_1_4FEC = .text:0x00004FEC; // type:function size:0x658 +fn_1_5644 = .text:0x00005644; // type:function size:0x4C4 +fn_1_5B08 = .text:0x00005B08; // type:function size:0x4FC +fn_1_6004 = .text:0x00006004; // type:function size:0x6C8 +fn_1_66CC = .text:0x000066CC; // type:function size:0x38 +fn_1_6704 = .text:0x00006704; // type:function size:0xD4 +fn_1_67D8 = .text:0x000067D8; // type:function size:0x198 +fn_1_6970 = .text:0x00006970; // type:function size:0x34 +fn_1_69A4 = .text:0x000069A4; // type:function size:0x40 +fn_1_69E4 = .text:0x000069E4; // type:function size:0xAC +fn_1_6A90 = .text:0x00006A90; // type:function size:0x2E8 +fn_1_6D78 = .text:0x00006D78; // type:function size:0x44 +fn_1_6DBC = .text:0x00006DBC; // type:function size:0x1F4 +fn_1_6FB0 = .text:0x00006FB0; // type:function size:0xB4 +fn_1_7064 = .text:0x00007064; // type:function size:0x178 +fn_1_71DC = .text:0x000071DC; // type:function size:0x68 +fn_1_7244 = .text:0x00007244; // type:function size:0x140 +fn_1_7384 = .text:0x00007384; // type:function size:0xA2C +fn_1_7DB0 = .text:0x00007DB0; // type:function size:0x1A4 +fn_1_7F54 = .text:0x00007F54; // type:function size:0x118 +fn_1_806C = .text:0x0000806C; // type:function size:0x8C +fn_1_80F8 = .text:0x000080F8; // type:function size:0x488 +fn_1_8580 = .text:0x00008580; // type:function size:0x5C +fn_1_85DC = .text:0x000085DC; // type:function size:0x1F8 +fn_1_87D4 = .text:0x000087D4; // type:function size:0x2E8 +fn_1_8ABC = .text:0x00008ABC; // type:function size:0x578 +fn_1_9034 = .text:0x00009034; // type:function size:0x164 +fn_1_9198 = .text:0x00009198; // type:function size:0x124 +fn_1_92BC = .text:0x000092BC; // type:function size:0x4AC +fn_1_9768 = .text:0x00009768; // type:function size:0xB4 +fn_1_981C = .text:0x0000981C; // type:function size:0x138 +fn_1_9954 = .text:0x00009954; // type:function size:0xBC +fn_1_9A10 = .text:0x00009A10; // type:function size:0x1C4 +fn_1_9BD4 = .text:0x00009BD4; // type:function size:0xE4 +fn_1_9CB8 = .text:0x00009CB8; // type:function size:0x214 +fn_1_9ECC = .text:0x00009ECC; // type:function size:0x110 +fn_1_9FDC = .text:0x00009FDC; // type:function size:0x2AC +fn_1_A288 = .text:0x0000A288; // type:function size:0x220 +fn_1_A4A8 = .text:0x0000A4A8; // type:function size:0xE4 +fn_1_A58C = .text:0x0000A58C; // type:function size:0x2BC +fn_1_A848 = .text:0x0000A848; // type:function size:0x2C8 +fn_1_AB10 = .text:0x0000AB10; // type:function size:0x2A0 +fn_1_ADB0 = .text:0x0000ADB0; // type:function size:0xAC +fn_1_AE5C = .text:0x0000AE5C; // type:function size:0x364 +fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x8C +fn_1_B24C = .text:0x0000B24C; // type:function size:0x130 +fn_1_B37C = .text:0x0000B37C; // type:function size:0x68 +fn_1_B3E4 = .text:0x0000B3E4; // type:function size:0x134 +fn_1_B518 = .text:0x0000B518; // type:function size:0x8C +fn_1_B5A4 = .text:0x0000B5A4; // type:function size:0x3E0 +fn_1_B984 = .text:0x0000B984; // type:function size:0x5C +fn_1_B9E0 = .text:0x0000B9E0; // type:function size:0xB0 +fn_1_BA90 = .text:0x0000BA90; // type:function size:0x360 +fn_1_BDF0 = .text:0x0000BDF0; // type:function size:0x158 +fn_1_BF48 = .text:0x0000BF48; // type:function size:0x328 +fn_1_C270 = .text:0x0000C270; // type:function size:0x250 +fn_1_C4C0 = .text:0x0000C4C0; // type:function size:0xB4 +fn_1_C574 = .text:0x0000C574; // type:function size:0x228 +fn_1_C79C = .text:0x0000C79C; // type:function size:0xBC +fn_1_C858 = .text:0x0000C858; // type:function size:0x2B4 +fn_1_CB0C = .text:0x0000CB0C; // type:function size:0x1C0 +fn_1_CCCC = .text:0x0000CCCC; // type:function size:0xAC +fn_1_CD78 = .text:0x0000CD78; // type:function size:0x2B8 +fn_1_D030 = .text:0x0000D030; // type:function size:0x1F4 +fn_1_D224 = .text:0x0000D224; // type:function size:0xAC +fn_1_D2D0 = .text:0x0000D2D0; // type:function size:0xC4 +fn_1_D394 = .text:0x0000D394; // type:function size:0xE4 +fn_1_D478 = .text:0x0000D478; // type:function size:0x2EC +fn_1_D764 = .text:0x0000D764; // type:function size:0x134 +fn_1_D898 = .text:0x0000D898; // type:function size:0x2C0 +fn_1_DB58 = .text:0x0000DB58; // type:function size:0xFC +fn_1_DC54 = .text:0x0000DC54; // type:function size:0x170 +fn_1_DDC4 = .text:0x0000DDC4; // type:function size:0x3F4 +fn_1_E1B8 = .text:0x0000E1B8; // type:function size:0x8C +fn_1_E244 = .text:0x0000E244; // type:function size:0xF0 +fn_1_E334 = .text:0x0000E334; // type:function size:0x23C +fn_1_E570 = .text:0x0000E570; // type:function size:0xC8 +fn_1_E638 = .text:0x0000E638; // type:function size:0x2B4 +fn_1_E8EC = .text:0x0000E8EC; // type:function size:0x140 +fn_1_EA2C = .text:0x0000EA2C; // type:function size:0x134 +fn_1_EB60 = .text:0x0000EB60; // type:function size:0x8C +fn_1_EBEC = .text:0x0000EBEC; // type:function size:0x3E0 +fn_1_EFCC = .text:0x0000EFCC; // type:function size:0x5C +fn_1_F028 = .text:0x0000F028; // type:function size:0x128 +fn_1_F150 = .text:0x0000F150; // type:function size:0xDC +fn_1_F22C = .text:0x0000F22C; // type:function size:0xD0 +fn_1_F2FC = .text:0x0000F2FC; // type:function size:0xD4 +fn_1_F3D0 = .text:0x0000F3D0; // type:function size:0x468 +fn_1_F838 = .text:0x0000F838; // type:function size:0x4 +fn_1_F83C = .text:0x0000F83C; // type:function size:0x78 +fn_1_F8B4 = .text:0x0000F8B4; // type:function size:0x548 +fn_1_FDFC = .text:0x0000FDFC; // type:function size:0xB4 +fn_1_FEB0 = .text:0x0000FEB0; // type:function size:0x228 +fn_1_100D8 = .text:0x000100D8; // type:function size:0xBC +fn_1_10194 = .text:0x00010194; // type:function size:0x2B4 +fn_1_10448 = .text:0x00010448; // type:function size:0x1BC +fn_1_10604 = .text:0x00010604; // type:function size:0xAC +fn_1_106B0 = .text:0x000106B0; // type:function size:0x29C +fn_1_1094C = .text:0x0001094C; // type:function size:0x2B4 +fn_1_10C00 = .text:0x00010C00; // type:function size:0x1F4 +fn_1_10DF4 = .text:0x00010DF4; // type:function size:0xAC +fn_1_10EA0 = .text:0x00010EA0; // type:function size:0xE4 +fn_1_10F84 = .text:0x00010F84; // type:function size:0xC4 +fn_1_11048 = .text:0x00011048; // type:function size:0xE4 +fn_1_1112C = .text:0x0001112C; // type:function size:0x2EC +fn_1_11418 = .text:0x00011418; // type:function size:0x134 +fn_1_1154C = .text:0x0001154C; // type:function size:0x2EC +fn_1_11838 = .text:0x00011838; // type:function size:0xFC +fn_1_11934 = .text:0x00011934; // type:function size:0x164 +fn_1_11A98 = .text:0x00011A98; // type:function size:0x118 +fn_1_11BB0 = .text:0x00011BB0; // type:function size:0x420 +fn_1_11FD0 = .text:0x00011FD0; // type:function size:0x8C +fn_1_1205C = .text:0x0001205C; // type:function size:0x130 +fn_1_1218C = .text:0x0001218C; // type:function size:0x23C +fn_1_123C8 = .text:0x000123C8; // type:function size:0x1A4 +fn_1_1256C = .text:0x0001256C; // type:function size:0x124 +fn_1_12690 = .text:0x00012690; // type:function size:0x8C +fn_1_1271C = .text:0x0001271C; // type:function size:0x3AC +fn_1_12AC8 = .text:0x00012AC8; // type:function size:0x48 +fn_1_12B10 = .text:0x00012B10; // type:function size:0x2C4 +fn_1_12DD4 = .text:0x00012DD4; // type:function size:0x37C +fn_1_13150 = .text:0x00013150; // type:function size:0x70 +fn_1_131C0 = .text:0x000131C0; // type:function size:0xA4 +fn_1_13264 = .text:0x00013264; // type:function size:0x5C4 +fn_1_13828 = .text:0x00013828; // type:function size:0xA4 +fn_1_138CC = .text:0x000138CC; // type:function size:0x14C +fn_1_13A18 = .text:0x00013A18; // type:function size:0x1A0 +fn_1_13BB8 = .text:0x00013BB8; // type:function size:0xB4 +fn_1_13C6C = .text:0x00013C6C; // type:function size:0x348 +fn_1_13FB4 = .text:0x00013FB4; // type:function size:0xEC +fn_1_140A0 = .text:0x000140A0; // type:function size:0xCC +fn_1_1416C = .text:0x0001416C; // type:function size:0x330 +fn_1_1449C = .text:0x0001449C; // type:function size:0x3CC +fn_1_14868 = .text:0x00014868; // type:function size:0x234 +fn_1_14A9C = .text:0x00014A9C; // type:function size:0xAC +fn_1_14B48 = .text:0x00014B48; // type:function size:0xF8 +fn_1_14C40 = .text:0x00014C40; // type:function size:0x32C +fn_1_14F6C = .text:0x00014F6C; // type:function size:0x1C8 +fn_1_15134 = .text:0x00015134; // type:function size:0xAC +fn_1_151E0 = .text:0x000151E0; // type:function size:0xE4 +fn_1_152C4 = .text:0x000152C4; // type:function size:0xE4 +fn_1_153A8 = .text:0x000153A8; // type:function size:0x2C0 +fn_1_15668 = .text:0x00015668; // type:function size:0xE4 +fn_1_1574C = .text:0x0001574C; // type:function size:0x1F8 +fn_1_15944 = .text:0x00015944; // type:function size:0xAC +fn_1_159F0 = .text:0x000159F0; // type:function size:0x2EC +fn_1_15CDC = .text:0x00015CDC; // type:function size:0x8C +fn_1_15D68 = .text:0x00015D68; // type:function size:0xF0 +fn_1_15E58 = .text:0x00015E58; // type:function size:0x118 +fn_1_15F70 = .text:0x00015F70; // type:function size:0xF0 +fn_1_16060 = .text:0x00016060; // type:function size:0x118 +fn_1_16178 = .text:0x00016178; // type:function size:0x8C +fn_1_16204 = .text:0x00016204; // type:function size:0x3AC +fn_1_165B0 = .text:0x000165B0; // type:function size:0x5C +fn_1_1660C = .text:0x0001660C; // type:function size:0x110 +fn_1_1671C = .text:0x0001671C; // type:function size:0x194 +fn_1_168B0 = .text:0x000168B0; // type:function size:0xD4 +fn_1_16984 = .text:0x00016984; // type:function size:0x50 +fn_1_169D4 = .text:0x000169D4; // type:function size:0x4 +fn_1_169D8 = .text:0x000169D8; // type:function size:0xF4 +fn_1_16ACC = .text:0x00016ACC; // type:function size:0x4F4 +fn_1_16FC0 = .text:0x00016FC0; // type:function size:0xB4 +fn_1_17074 = .text:0x00017074; // type:function size:0x208 +fn_1_1727C = .text:0x0001727C; // type:function size:0xBC +fn_1_17338 = .text:0x00017338; // type:function size:0x294 +fn_1_175CC = .text:0x000175CC; // type:function size:0x180 +fn_1_1774C = .text:0x0001774C; // type:function size:0xAC +fn_1_177F8 = .text:0x000177F8; // type:function size:0x278 +fn_1_17A70 = .text:0x00017A70; // type:function size:0x128 +fn_1_17B98 = .text:0x00017B98; // type:function size:0xAC +fn_1_17C44 = .text:0x00017C44; // type:function size:0x220 +fn_1_17E64 = .text:0x00017E64; // type:function size:0xE4 +fn_1_17F48 = .text:0x00017F48; // type:function size:0x190 +fn_1_180D8 = .text:0x000180D8; // type:function size:0xAC +fn_1_18184 = .text:0x00018184; // type:function size:0x284 +fn_1_18408 = .text:0x00018408; // type:function size:0x8C +fn_1_18494 = .text:0x00018494; // type:function size:0x23C +fn_1_186D0 = .text:0x000186D0; // type:function size:0x220 +fn_1_188F0 = .text:0x000188F0; // type:function size:0x144 +fn_1_18A34 = .text:0x00018A34; // type:function size:0x8C +fn_1_18AC0 = .text:0x00018AC0; // type:function size:0x3BC +fn_1_18E7C = .text:0x00018E7C; // type:function size:0x48 +fn_1_18EC4 = .text:0x00018EC4; // type:function size:0x274 +fn_1_19138 = .text:0x00019138; // type:function size:0x1FC +fn_1_19334 = .text:0x00019334; // type:function size:0x6B0 +fn_1_199E4 = .text:0x000199E4; // type:function size:0x248 +fn_1_19C2C = .text:0x00019C2C; // type:function size:0x84 +fn_1_19CB0 = .text:0x00019CB0; // type:function size:0x2A8 +fn_1_19F58 = .text:0x00019F58; // type:function size:0xB4 +fn_1_1A00C = .text:0x0001A00C; // type:function size:0x198 +fn_1_1A1A4 = .text:0x0001A1A4; // type:function size:0x208 +fn_1_1A3AC = .text:0x0001A3AC; // type:function size:0x1D0 +fn_1_1A57C = .text:0x0001A57C; // type:function size:0x40 +fn_1_1A5BC = .text:0x0001A5BC; // type:function size:0x254 +fn_1_1A810 = .text:0x0001A810; // type:function size:0x204 +fn_1_1AA14 = .text:0x0001AA14; // type:function size:0xE4 +fn_1_1AAF8 = .text:0x0001AAF8; // type:function size:0x288 +fn_1_1AD80 = .text:0x0001AD80; // type:function size:0xE4 +fn_1_1AE64 = .text:0x0001AE64; // type:function size:0x1B4 +fn_1_1B018 = .text:0x0001B018; // type:function size:0x110 +fn_1_1B128 = .text:0x0001B128; // type:function size:0x234 +fn_1_1B35C = .text:0x0001B35C; // type:function size:0x8C +fn_1_1B3E8 = .text:0x0001B3E8; // type:function size:0x8C +fn_1_1B474 = .text:0x0001B474; // type:function size:0x130 +fn_1_1B5A4 = .text:0x0001B5A4; // type:function size:0xEC +fn_1_1B690 = .text:0x0001B690; // type:function size:0x23C +fn_1_1B8CC = .text:0x0001B8CC; // type:function size:0x9C +fn_1_1B968 = .text:0x0001B968; // type:function size:0x50 +_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:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0xC data:4byte +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:0xC data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local +jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 +lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x33 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 +lbl_1_data_698 = .data:0x00000698; // type:object size:0x3C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x34 +lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 +lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte +lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 +lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 +lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte +lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte +lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x24 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x54 data:float +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x10 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x40 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x28 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x28 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x28 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x28 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x28 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x104 data:float +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x4 data:4byte +lbl_1_bss_29C = .bss:0x0000029C; // type:object size:0xA0 +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x28 data:4byte +lbl_1_bss_364 = .bss:0x00000364; // type:object size:0x28 data:4byte +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x28 data:4byte +lbl_1_bss_3B4 = .bss:0x000003B4; // type:object size:0x28 data:4byte +lbl_1_bss_3DC = .bss:0x000003DC; // type:object size:0x104 data:4byte +lbl_1_bss_4E0 = .bss:0x000004E0; // type:object size:0x4 data:4byte +lbl_1_bss_4E4 = .bss:0x000004E4; // type:object size:0x4 data:4byte +lbl_1_bss_4E8 = .bss:0x000004E8; // type:object size:0x60 data:4byte +lbl_1_bss_548 = .bss:0x00000548; // type:object size:0xA0 +lbl_1_bss_5E8 = .bss:0x000005E8; // type:object size:0x28 data:4byte +lbl_1_bss_610 = .bss:0x00000610; // type:object size:0x28 data:4byte +lbl_1_bss_638 = .bss:0x00000638; // type:object size:0x28 data:4byte +lbl_1_bss_660 = .bss:0x00000660; // type:object size:0x28 data:4byte +lbl_1_bss_688 = .bss:0x00000688; // type:object size:0x108 data:float +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x4 data:4byte +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x4 data:4byte +lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x28 data:4byte +lbl_1_bss_7C0 = .bss:0x000007C0; // type:object size:0x28 data:4byte +lbl_1_bss_7E8 = .bss:0x000007E8; // type:object size:0x28 data:4byte +lbl_1_bss_810 = .bss:0x00000810; // type:object size:0x28 data:4byte +lbl_1_bss_838 = .bss:0x00000838; // type:object size:0x28 data:4byte +lbl_1_bss_860 = .bss:0x00000860; // type:object size:0x108 data:4byte +lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x4 data:4byte +lbl_1_bss_96C = .bss:0x0000096C; // type:object size:0x28 data:4byte +lbl_1_bss_994 = .bss:0x00000994; // type:object size:0x28 data:4byte +lbl_1_bss_9BC = .bss:0x000009BC; // type:object size:0x28 data:4byte +lbl_1_bss_9E4 = .bss:0x000009E4; // type:object size:0x28 data:4byte +lbl_1_bss_A0C = .bss:0x00000A0C; // type:object size:0x28 data:4byte +lbl_1_bss_A34 = .bss:0x00000A34; // type:object size:0x104 data:4byte +lbl_1_bss_B38 = .bss:0x00000B38; // type:object size:0x4 data:4byte +lbl_1_bss_B3C = .bss:0x00000B3C; // type:object size:0x4 data:4byte +lbl_1_bss_B40 = .bss:0x00000B40; // type:object size:0x4 data:4byte +lbl_1_bss_B44 = .bss:0x00000B44; // type:object size:0x28 data:4byte +lbl_1_bss_B6C = .bss:0x00000B6C; // type:object size:0x28 data:4byte +lbl_1_bss_B94 = .bss:0x00000B94; // type:object size:0x28 data:4byte +lbl_1_bss_BBC = .bss:0x00000BBC; // type:object size:0x28 data:4byte +lbl_1_bss_BE4 = .bss:0x00000BE4; // type:object size:0x28 data:4byte +lbl_1_bss_C0C = .bss:0x00000C0C; // type:object size:0x104 data:float +lbl_1_bss_D10 = .bss:0x00000D10; // type:object size:0x4 data:4byte +lbl_1_bss_D14 = .bss:0x00000D14; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_02/rels/mstory3Dll/splits.txt b/config/GMPP01_02/rels/mstory3Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_02/rels/mstory3Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_02/rels/mstory3Dll/symbols.txt b/config/GMPP01_02/rels/mstory3Dll/symbols.txt new file mode 100644 index 00000000..21c07213 --- /dev/null +++ b/config/GMPP01_02/rels/mstory3Dll/symbols.txt @@ -0,0 +1,549 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 +_prolog = .text:0x0000036C; // type:function size:0x54 scope:global +_epilog = .text:0x000003C0; // type:function size:0x4C scope:global +fn_1_40C = .text:0x0000040C; // type:function size:0xE4 +fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 +fn_1_5FC = .text:0x000005FC; // type:function size:0x20 +fn_1_61C = .text:0x0000061C; // type:function size:0xD8 +fn_1_6F4 = .text:0x000006F4; // type:function size:0xC8 +fn_1_7BC = .text:0x000007BC; // type:function size:0xBC +fn_1_878 = .text:0x00000878; // type:function size:0xBC +fn_1_934 = .text:0x00000934; // type:function size:0x4 +fn_1_938 = .text:0x00000938; // type:function size:0x20 +fn_1_958 = .text:0x00000958; // type:function size:0x28 +fn_1_980 = .text:0x00000980; // type:function size:0x20 +fn_1_9A0 = .text:0x000009A0; // type:function size:0x24 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x20 +fn_1_9E4 = .text:0x000009E4; // type:function size:0xA48 +fn_1_142C = .text:0x0000142C; // type:function size:0x1F8 +fn_1_1624 = .text:0x00001624; // type:function size:0x210 +fn_1_1834 = .text:0x00001834; // type:function size:0x1F0 +fn_1_1A24 = .text:0x00001A24; // type:function size:0x2C +fn_1_1A50 = .text:0x00001A50; // type:function size:0x60 +fn_1_1AB0 = .text:0x00001AB0; // type:function size:0x68 +fn_1_1B18 = .text:0x00001B18; // type:function size:0xAC +fn_1_1BC4 = .text:0x00001BC4; // type:function size:0xC4 +fn_1_1C88 = .text:0x00001C88; // type:function size:0xBC +fn_1_1D44 = .text:0x00001D44; // type:function size:0x34 +fn_1_1D78 = .text:0x00001D78; // type:function size:0x40 +fn_1_1DB8 = .text:0x00001DB8; // type:function size:0x70 +fn_1_1E28 = .text:0x00001E28; // type:function size:0x178 +fn_1_1FA0 = .text:0x00001FA0; // type:function size:0x2E0 +fn_1_2280 = .text:0x00002280; // type:function size:0x90 +fn_1_2310 = .text:0x00002310; // type:function size:0xC8 +fn_1_23D8 = .text:0x000023D8; // type:function size:0x48 +fn_1_2420 = .text:0x00002420; // type:function size:0x54 +fn_1_2474 = .text:0x00002474; // type:function size:0x3C0 +fn_1_2834 = .text:0x00002834; // type:function size:0x10 +fn_1_2844 = .text:0x00002844; // type:function size:0x10 +fn_1_2854 = .text:0x00002854; // type:function size:0xB8 +fn_1_290C = .text:0x0000290C; // type:function size:0x120 +fn_1_2A2C = .text:0x00002A2C; // type:function size:0x3A8 +fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x7F4 +fn_1_35C8 = .text:0x000035C8; // type:function size:0x88 +fn_1_3650 = .text:0x00003650; // type:function size:0x94 +fn_1_36E4 = .text:0x000036E4; // type:function size:0x58 +fn_1_373C = .text:0x0000373C; // type:function size:0x8C +fn_1_37C8 = .text:0x000037C8; // type:function size:0xEC +fn_1_38B4 = .text:0x000038B4; // type:function size:0xC4 +fn_1_3978 = .text:0x00003978; // type:function size:0x3C +fn_1_39B4 = .text:0x000039B4; // type:function size:0x44 +fn_1_39F8 = .text:0x000039F8; // type:function size:0x26C +fn_1_3C64 = .text:0x00003C64; // type:function size:0x26C +fn_1_3ED0 = .text:0x00003ED0; // type:function size:0x27C +fn_1_414C = .text:0x0000414C; // type:function size:0x2B4 +fn_1_4400 = .text:0x00004400; // type:function size:0x46C +fn_1_486C = .text:0x0000486C; // type:function size:0x454 +fn_1_4CC0 = .text:0x00004CC0; // type:function size:0x48C +fn_1_514C = .text:0x0000514C; // type:function size:0x658 +fn_1_57A4 = .text:0x000057A4; // type:function size:0x4C4 +fn_1_5C68 = .text:0x00005C68; // type:function size:0x4FC +fn_1_6164 = .text:0x00006164; // type:function size:0x6C8 +fn_1_682C = .text:0x0000682C; // type:function size:0xC4 +fn_1_68F0 = .text:0x000068F0; // type:function size:0x188 +fn_1_6A78 = .text:0x00006A78; // type:function size:0x34 +fn_1_6AAC = .text:0x00006AAC; // type:function size:0x40 +fn_1_6AEC = .text:0x00006AEC; // type:function size:0xAC +fn_1_6B98 = .text:0x00006B98; // type:function size:0x1E8 +fn_1_6D80 = .text:0x00006D80; // type:function size:0xB4 +fn_1_6E34 = .text:0x00006E34; // type:function size:0x1D0 +fn_1_7004 = .text:0x00007004; // type:function size:0x394 +fn_1_7398 = .text:0x00007398; // type:function size:0x640 +fn_1_79D8 = .text:0x000079D8; // type:function size:0x4B0 +fn_1_7E88 = .text:0x00007E88; // type:function size:0x2C4 +fn_1_814C = .text:0x0000814C; // type:function size:0x118 +fn_1_8264 = .text:0x00008264; // type:function size:0x7C +fn_1_82E0 = .text:0x000082E0; // type:function size:0x8C +fn_1_836C = .text:0x0000836C; // type:function size:0xF0 +fn_1_845C = .text:0x0000845C; // type:function size:0x2FC +fn_1_8758 = .text:0x00008758; // type:function size:0x100 +fn_1_8858 = .text:0x00008858; // type:function size:0xF0 +fn_1_8948 = .text:0x00008948; // type:function size:0xF0 +fn_1_8A38 = .text:0x00008A38; // type:function size:0xF0 +fn_1_8B28 = .text:0x00008B28; // type:function size:0xF0 +fn_1_8C18 = .text:0x00008C18; // type:function size:0x7C +fn_1_8C94 = .text:0x00008C94; // type:function size:0x4AC +fn_1_9140 = .text:0x00009140; // type:function size:0x88 +fn_1_91C8 = .text:0x000091C8; // type:function size:0x58 +fn_1_9220 = .text:0x00009220; // type:function size:0x1B0 +fn_1_93D0 = .text:0x000093D0; // type:function size:0xB8 +fn_1_9488 = .text:0x00009488; // type:function size:0x228 +fn_1_96B0 = .text:0x000096B0; // type:function size:0xB8 +fn_1_9768 = .text:0x00009768; // type:function size:0x228 +fn_1_9990 = .text:0x00009990; // type:function size:0x78 +fn_1_9A08 = .text:0x00009A08; // type:function size:0x5C +fn_1_9A64 = .text:0x00009A64; // type:function size:0x8B0 +fn_1_A314 = .text:0x0000A314; // type:function size:0x1DC +fn_1_A4F0 = .text:0x0000A4F0; // type:function size:0x6BC +fn_1_ABAC = .text:0x0000ABAC; // type:function size:0xAC4 +fn_1_B670 = .text:0x0000B670; // type:function size:0x118 +fn_1_B788 = .text:0x0000B788; // type:function size:0x6D4 +fn_1_BE5C = .text:0x0000BE5C; // type:function size:0x104 +fn_1_BF60 = .text:0x0000BF60; // type:function size:0x100 +fn_1_C060 = .text:0x0000C060; // type:function size:0xE0C +fn_1_CE6C = .text:0x0000CE6C; // type:function size:0x620 +fn_1_D48C = .text:0x0000D48C; // type:function size:0xAC +fn_1_D538 = .text:0x0000D538; // type:function size:0x1E0 +fn_1_D718 = .text:0x0000D718; // type:function size:0xC0 +fn_1_D7D8 = .text:0x0000D7D8; // type:function size:0x390 +fn_1_DB68 = .text:0x0000DB68; // type:function size:0x5F8 +fn_1_E160 = .text:0x0000E160; // type:function size:0x1BD0 +fn_1_FD30 = .text:0x0000FD30; // type:function size:0x150 +fn_1_FE80 = .text:0x0000FE80; // type:function size:0xFC +fn_1_FF7C = .text:0x0000FF7C; // type:function size:0x3F0 +fn_1_1036C = .text:0x0001036C; // type:function size:0xA08 +fn_1_10D74 = .text:0x00010D74; // type:function size:0xA20 +fn_1_11794 = .text:0x00011794; // type:function size:0xA0 +fn_1_11834 = .text:0x00011834; // type:function size:0xBA4 +fn_1_123D8 = .text:0x000123D8; // type:function size:0x44 +fn_1_1241C = .text:0x0001241C; // type:function size:0x4 +fn_1_12420 = .text:0x00012420; // type:function size:0x678 +fn_1_12A98 = .text:0x00012A98; // type:function size:0x170 +fn_1_12C08 = .text:0x00012C08; // type:function size:0x1A4 +fn_1_12DAC = .text:0x00012DAC; // type:function size:0x2FC +fn_1_130A8 = .text:0x000130A8; // type:function size:0xD4 +fn_1_1317C = .text:0x0001317C; // type:function size:0x130 +fn_1_132AC = .text:0x000132AC; // type:function size:0x65C +fn_1_13908 = .text:0x00013908; // type:function size:0x130 +fn_1_13A38 = .text:0x00013A38; // type:function size:0x4 +fn_1_13A3C = .text:0x00013A3C; // type:function size:0x23C +fn_1_13C78 = .text:0x00013C78; // type:function size:0xC0 +fn_1_13D38 = .text:0x00013D38; // type:function size:0x60 +fn_1_13D98 = .text:0x00013D98; // type:function size:0x308 +fn_1_140A0 = .text:0x000140A0; // type:function size:0x38C +fn_1_1442C = .text:0x0001442C; // type:function size:0x140 +fn_1_1456C = .text:0x0001456C; // type:function size:0x118 +fn_1_14684 = .text:0x00014684; // type:function size:0x7C +fn_1_14700 = .text:0x00014700; // type:function size:0x48 +fn_1_14748 = .text:0x00014748; // type:function size:0x724 +fn_1_14E6C = .text:0x00014E6C; // type:function size:0x114 +fn_1_14F80 = .text:0x00014F80; // type:function size:0x54 +fn_1_14FD4 = .text:0x00014FD4; // type:function size:0x31C +fn_1_152F0 = .text:0x000152F0; // type:function size:0x160 +fn_1_15450 = .text:0x00015450; // type:function size:0x3A0 +fn_1_157F0 = .text:0x000157F0; // type:function size:0x1B4 +fn_1_159A4 = .text:0x000159A4; // type:function size:0x268 +fn_1_15C0C = .text:0x00015C0C; // type:function size:0xFC +fn_1_15D08 = .text:0x00015D08; // type:function size:0xC0 +fn_1_15DC8 = .text:0x00015DC8; // type:function size:0x3F0 +fn_1_161B8 = .text:0x000161B8; // type:function size:0x3BC +fn_1_16574 = .text:0x00016574; // type:function size:0x54 +fn_1_165C8 = .text:0x000165C8; // type:function size:0x35C +fn_1_16924 = .text:0x00016924; // type:function size:0x1B0 +fn_1_16AD4 = .text:0x00016AD4; // type:function size:0x400 +fn_1_16ED4 = .text:0x00016ED4; // type:function size:0x258 +fn_1_1712C = .text:0x0001712C; // type:function size:0x160 +fn_1_1728C = .text:0x0001728C; // type:function size:0x210 +fn_1_1749C = .text:0x0001749C; // type:function size:0xEC +fn_1_17588 = .text:0x00017588; // type:function size:0x850 +fn_1_17DD8 = .text:0x00017DD8; // type:function size:0x2C0 +fn_1_18098 = .text:0x00018098; // type:function size:0x9C +fn_1_18134 = .text:0x00018134; // type:function size:0x218 +fn_1_1834C = .text:0x0001834C; // type:function size:0x1B4 +fn_1_18500 = .text:0x00018500; // type:function size:0x70 +fn_1_18570 = .text:0x00018570; // type:function size:0x110 +fn_1_18680 = .text:0x00018680; // type:function size:0x694 +fn_1_18D14 = .text:0x00018D14; // type:function size:0x29C +fn_1_18FB0 = .text:0x00018FB0; // type:function size:0x1AC +fn_1_1915C = .text:0x0001915C; // type:function size:0xD0 +fn_1_1922C = .text:0x0001922C; // type:function size:0x28C +fn_1_194B8 = .text:0x000194B8; // type:function size:0xF0 +fn_1_195A8 = .text:0x000195A8; // type:function size:0x224 +fn_1_197CC = .text:0x000197CC; // type:function size:0x854 +fn_1_1A020 = .text:0x0001A020; // type:function size:0x1EF4 +fn_1_1BF14 = .text:0x0001BF14; // type:function size:0x3F8 +fn_1_1C30C = .text:0x0001C30C; // type:function size:0x16C +fn_1_1C478 = .text:0x0001C478; // type:function size:0xD4 +fn_1_1C54C = .text:0x0001C54C; // type:function size:0x3E0 +fn_1_1C92C = .text:0x0001C92C; // type:function size:0x184 +fn_1_1CAB0 = .text:0x0001CAB0; // type:function size:0xE4 +fn_1_1CB94 = .text:0x0001CB94; // type:function size:0xE0 +fn_1_1CC74 = .text:0x0001CC74; // type:function size:0x104 +fn_1_1CD78 = .text:0x0001CD78; // type:function size:0x90 +fn_1_1CE08 = .text:0x0001CE08; // type:function size:0x334 +fn_1_1D13C = .text:0x0001D13C; // type:function size:0x518 +fn_1_1D654 = .text:0x0001D654; // type:function size:0x140 +fn_1_1D794 = .text:0x0001D794; // type:function size:0x150 +fn_1_1D8E4 = .text:0x0001D8E4; // type:function size:0x98 +fn_1_1D97C = .text:0x0001D97C; // type:function size:0x100 +fn_1_1DA7C = .text:0x0001DA7C; // type:function size:0x48 +fn_1_1DAC4 = .text:0x0001DAC4; // type:function size:0x3A0 +fn_1_1DE64 = .text:0x0001DE64; // type:function size:0x8C +fn_1_1DEF0 = .text:0x0001DEF0; // type:function size:0x21C +fn_1_1E10C = .text:0x0001E10C; // type:function size:0x14 +fn_1_1E120 = .text:0x0001E120; // type:function size:0x10 +fn_1_1E130 = .text:0x0001E130; // type:function size:0x14 +fn_1_1E144 = .text:0x0001E144; // type:function size:0x10 +fn_1_1E154 = .text:0x0001E154; // type:function size:0x41C +fn_1_1E570 = .text:0x0001E570; // type:function size:0x2C8 +fn_1_1E838 = .text:0x0001E838; // type:function size:0x8E0 +_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:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x20 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte +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_214 = .rodata:0x00000214; // 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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x2C data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xF +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0x15 +lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float +lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 +lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1E +lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x11 +jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 +lbl_1_data_78C = .data:0x0000078C; // type:object size:0x54 +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:float +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:float +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:float +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:float +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:float +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x1340 +lbl_1_bss_1408 = .bss:0x00001408; // type:object size:0x18 +lbl_1_bss_1420 = .bss:0x00001420; // type:object size:0x4 data:4byte +lbl_1_bss_1424 = .bss:0x00001424; // type:object size:0x4 data:float +lbl_1_bss_1428 = .bss:0x00001428; // type:object size:0x10 data:4byte +lbl_1_bss_1438 = .bss:0x00001438; // type:object size:0x10 +lbl_1_bss_1448 = .bss:0x00001448; // type:object size:0x10 data:4byte +lbl_1_bss_1458 = .bss:0x00001458; // type:object size:0x10 data:4byte +lbl_1_bss_1468 = .bss:0x00001468; // type:object size:0x28 data:4byte +lbl_1_bss_1490 = .bss:0x00001490; // type:object size:0xA0 data:4byte +lbl_1_bss_1530 = .bss:0x00001530; // type:object size:0x28 data:4byte +lbl_1_bss_1558 = .bss:0x00001558; // type:object size:0x28 data:4byte +lbl_1_bss_1580 = .bss:0x00001580; // type:object size:0x350 data:4byte +lbl_1_bss_18D0 = .bss:0x000018D0; // type:object size:0x4 data:4byte +lbl_1_bss_18D4 = .bss:0x000018D4; // type:object size:0x4 data:4byte +lbl_1_bss_18D8 = .bss:0x000018D8; // type:object size:0xC data:4byte +lbl_1_bss_18E4 = .bss:0x000018E4; // type:object size:0x8 data:4byte +lbl_1_bss_18EC = .bss:0x000018EC; // type:object size:0x8 data:4byte +lbl_1_bss_18F4 = .bss:0x000018F4; // type:object size:0xA0 +lbl_1_bss_1994 = .bss:0x00001994; // type:object size:0x28 data:4byte +lbl_1_bss_19BC = .bss:0x000019BC; // type:object size:0x28 data:4byte +lbl_1_bss_19E4 = .bss:0x000019E4; // type:object size:0x28 data:4byte +lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2DC data:float +lbl_1_bss_1CE8 = .bss:0x00001CE8; // type:object size:0x2 data:2byte +lbl_1_bss_1CEC = .bss:0x00001CEC; // type:object size:0x4 data:4byte +lbl_1_bss_1CF0 = .bss:0x00001CF0; // type:object size:0x4 data:4byte +lbl_1_bss_1CF4 = .bss:0x00001CF4; // type:object size:0x4 data:4byte +lbl_1_bss_1CF8 = .bss:0x00001CF8; // type:object size:0x58 data:2byte diff --git a/config/GMPP01_02/rels/mstoryDll/splits.txt b/config/GMPP01_02/rels/mstoryDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPP01_02/rels/mstoryDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_02/rels/mstoryDll/symbols.txt b/config/GMPP01_02/rels/mstoryDll/symbols.txt new file mode 100644 index 00000000..293cb82c --- /dev/null +++ b/config/GMPP01_02/rels/mstoryDll/symbols.txt @@ -0,0 +1,498 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x344 +_prolog = .text:0x000003E8; // type:function size:0x54 scope:global +_epilog = .text:0x0000043C; // type:function size:0x4C scope:global +fn_1_488 = .text:0x00000488; // type:function size:0x1D0 +fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +fn_1_828 = .text:0x00000828; // type:function size:0x28 +fn_1_850 = .text:0x00000850; // type:function size:0x20 +fn_1_870 = .text:0x00000870; // type:function size:0xD8 +fn_1_948 = .text:0x00000948; // type:function size:0xC8 +fn_1_A10 = .text:0x00000A10; // type:function size:0xBC +fn_1_ACC = .text:0x00000ACC; // type:function size:0xBC +fn_1_B88 = .text:0x00000B88; // type:function size:0x4 +fn_1_B8C = .text:0x00000B8C; // type:function size:0x20 +fn_1_BAC = .text:0x00000BAC; // type:function size:0x28 +fn_1_BD4 = .text:0x00000BD4; // type:function size:0x20 +fn_1_BF4 = .text:0x00000BF4; // type:function size:0x24 +fn_1_C18 = .text:0x00000C18; // type:function size:0x20 +fn_1_C38 = .text:0x00000C38; // type:function size:0xA48 +fn_1_1680 = .text:0x00001680; // type:function size:0x1B4 +fn_1_1834 = .text:0x00001834; // type:function size:0x1D0 +fn_1_1A04 = .text:0x00001A04; // type:function size:0x60 +fn_1_1A64 = .text:0x00001A64; // type:function size:0x68 +fn_1_1ACC = .text:0x00001ACC; // type:function size:0xAC +fn_1_1B78 = .text:0x00001B78; // type:function size:0xBC +fn_1_1C34 = .text:0x00001C34; // type:function size:0xB4 +fn_1_1CE8 = .text:0x00001CE8; // type:function size:0x34 +fn_1_1D1C = .text:0x00001D1C; // type:function size:0x40 +fn_1_1D5C = .text:0x00001D5C; // type:function size:0x70 +fn_1_1DCC = .text:0x00001DCC; // type:function size:0x178 +fn_1_1F44 = .text:0x00001F44; // type:function size:0x2E0 +fn_1_2224 = .text:0x00002224; // type:function size:0x90 +fn_1_22B4 = .text:0x000022B4; // type:function size:0x48 +fn_1_22FC = .text:0x000022FC; // type:function size:0x54 +fn_1_2350 = .text:0x00002350; // type:function size:0x3C0 +fn_1_2710 = .text:0x00002710; // type:function size:0x10 +fn_1_2720 = .text:0x00002720; // type:function size:0x10 +fn_1_2730 = .text:0x00002730; // type:function size:0xB8 +fn_1_27E8 = .text:0x000027E8; // type:function size:0x120 +fn_1_2908 = .text:0x00002908; // type:function size:0x3A8 +fn_1_2CB0 = .text:0x00002CB0; // type:function size:0x7F4 +fn_1_34A4 = .text:0x000034A4; // type:function size:0x88 +fn_1_352C = .text:0x0000352C; // type:function size:0x94 +fn_1_35C0 = .text:0x000035C0; // type:function size:0x58 +fn_1_3618 = .text:0x00003618; // type:function size:0xEC +fn_1_3704 = .text:0x00003704; // type:function size:0xC4 +fn_1_37C8 = .text:0x000037C8; // type:function size:0x3C +fn_1_3804 = .text:0x00003804; // type:function size:0x44 +fn_1_3848 = .text:0x00003848; // type:function size:0x274 +fn_1_3ABC = .text:0x00003ABC; // type:function size:0x26C +fn_1_3D28 = .text:0x00003D28; // type:function size:0x22C +fn_1_3F54 = .text:0x00003F54; // type:function size:0x27C +fn_1_41D0 = .text:0x000041D0; // type:function size:0x2B4 +fn_1_4484 = .text:0x00004484; // type:function size:0x46C +fn_1_48F0 = .text:0x000048F0; // type:function size:0x454 +fn_1_4D44 = .text:0x00004D44; // type:function size:0x48C +fn_1_51D0 = .text:0x000051D0; // type:function size:0x658 +fn_1_5828 = .text:0x00005828; // type:function size:0x4C4 +fn_1_5CEC = .text:0x00005CEC; // type:function size:0x4FC +fn_1_61E8 = .text:0x000061E8; // type:function size:0x6C8 +fn_1_68B0 = .text:0x000068B0; // type:function size:0xC4 +fn_1_6974 = .text:0x00006974; // type:function size:0x188 +fn_1_6AFC = .text:0x00006AFC; // type:function size:0x34 +fn_1_6B30 = .text:0x00006B30; // type:function size:0x40 +fn_1_6B70 = .text:0x00006B70; // type:function size:0xAC +fn_1_6C1C = .text:0x00006C1C; // type:function size:0x1E8 +fn_1_6E04 = .text:0x00006E04; // type:function size:0xB4 +fn_1_6EB8 = .text:0x00006EB8; // type:function size:0x170 +fn_1_7028 = .text:0x00007028; // type:function size:0x68 +fn_1_7090 = .text:0x00007090; // type:function size:0xA4 +fn_1_7134 = .text:0x00007134; // type:function size:0x1E8 +fn_1_731C = .text:0x0000731C; // type:function size:0x69C +fn_1_79B8 = .text:0x000079B8; // type:function size:0x128 +fn_1_7AE0 = .text:0x00007AE0; // type:function size:0x390 +fn_1_7E70 = .text:0x00007E70; // type:function size:0x5C +fn_1_7ECC = .text:0x00007ECC; // type:function size:0x1C4 +fn_1_8090 = .text:0x00008090; // type:function size:0x320 +fn_1_83B0 = .text:0x000083B0; // type:function size:0x58 +fn_1_8408 = .text:0x00008408; // type:function size:0x3D4 +fn_1_87DC = .text:0x000087DC; // type:function size:0x268 +fn_1_8A44 = .text:0x00008A44; // type:function size:0x9C +fn_1_8AE0 = .text:0x00008AE0; // type:function size:0x2E0 +fn_1_8DC0 = .text:0x00008DC0; // type:function size:0xAC +fn_1_8E6C = .text:0x00008E6C; // type:function size:0xFC +fn_1_8F68 = .text:0x00008F68; // type:function size:0x36C +fn_1_92D4 = .text:0x000092D4; // type:function size:0x134 +fn_1_9408 = .text:0x00009408; // type:function size:0x310 +fn_1_9718 = .text:0x00009718; // type:function size:0x18C +fn_1_98A4 = .text:0x000098A4; // type:function size:0x88 +fn_1_992C = .text:0x0000992C; // type:function size:0x3DC +fn_1_9D08 = .text:0x00009D08; // type:function size:0x300 +fn_1_A008 = .text:0x0000A008; // type:function size:0xE4 +fn_1_A0EC = .text:0x0000A0EC; // type:function size:0x38C +fn_1_A478 = .text:0x0000A478; // type:function size:0x8C +fn_1_A504 = .text:0x0000A504; // type:function size:0xF0 +fn_1_A5F4 = .text:0x0000A5F4; // type:function size:0x23C +fn_1_A830 = .text:0x0000A830; // type:function size:0xC8 +fn_1_A8F8 = .text:0x0000A8F8; // type:function size:0x2B4 +fn_1_ABAC = .text:0x0000ABAC; // type:function size:0x150 +fn_1_ACFC = .text:0x0000ACFC; // type:function size:0x134 +fn_1_AE30 = .text:0x0000AE30; // type:function size:0x8C +fn_1_AEBC = .text:0x0000AEBC; // type:function size:0x374 +fn_1_B230 = .text:0x0000B230; // type:function size:0x5C +fn_1_B28C = .text:0x0000B28C; // type:function size:0x214 +fn_1_B4A0 = .text:0x0000B4A0; // type:function size:0xE8 +fn_1_B588 = .text:0x0000B588; // type:function size:0xE8 +fn_1_B670 = .text:0x0000B670; // type:function size:0x11C +fn_1_B78C = .text:0x0000B78C; // type:function size:0x13C +fn_1_B8C8 = .text:0x0000B8C8; // type:function size:0x4 +fn_1_B8CC = .text:0x0000B8CC; // type:function size:0x104 +fn_1_B9D0 = .text:0x0000B9D0; // type:function size:0x208 +fn_1_BBD8 = .text:0x0000BBD8; // type:function size:0x788 +fn_1_C360 = .text:0x0000C360; // type:function size:0xB4 +fn_1_C414 = .text:0x0000C414; // type:function size:0x2F4 +fn_1_C708 = .text:0x0000C708; // type:function size:0xBC +fn_1_C7C4 = .text:0x0000C7C4; // type:function size:0x384 +fn_1_CB48 = .text:0x0000CB48; // type:function size:0x300 +fn_1_CE48 = .text:0x0000CE48; // type:function size:0xAC +fn_1_CEF4 = .text:0x0000CEF4; // type:function size:0xE4 +fn_1_CFD8 = .text:0x0000CFD8; // type:function size:0xC4 +fn_1_D09C = .text:0x0000D09C; // type:function size:0xE4 +fn_1_D180 = .text:0x0000D180; // type:function size:0x3FC +fn_1_D57C = .text:0x0000D57C; // type:function size:0x134 +fn_1_D6B0 = .text:0x0000D6B0; // type:function size:0x2F8 +fn_1_D9A8 = .text:0x0000D9A8; // type:function size:0xFC +fn_1_DAA4 = .text:0x0000DAA4; // type:function size:0x164 +fn_1_DC08 = .text:0x0000DC08; // type:function size:0x118 +fn_1_DD20 = .text:0x0000DD20; // type:function size:0xE4 +fn_1_DE04 = .text:0x0000DE04; // type:function size:0x424 +fn_1_E228 = .text:0x0000E228; // type:function size:0x8C +fn_1_E2B4 = .text:0x0000E2B4; // type:function size:0x130 +fn_1_E3E4 = .text:0x0000E3E4; // type:function size:0x23C +fn_1_E620 = .text:0x0000E620; // type:function size:0xF0 +fn_1_E710 = .text:0x0000E710; // type:function size:0x118 +fn_1_E828 = .text:0x0000E828; // type:function size:0x8C +fn_1_E8B4 = .text:0x0000E8B4; // type:function size:0x34C +fn_1_EC00 = .text:0x0000EC00; // type:function size:0x5C +fn_1_EC5C = .text:0x0000EC5C; // type:function size:0x384 +fn_1_EFE0 = .text:0x0000EFE0; // type:function size:0x70 +fn_1_F050 = .text:0x0000F050; // type:function size:0x14C +fn_1_F19C = .text:0x0000F19C; // type:function size:0x5E4 +fn_1_F780 = .text:0x0000F780; // type:function size:0xEC +fn_1_F86C = .text:0x0000F86C; // type:function size:0xA4 +fn_1_F910 = .text:0x0000F910; // type:function size:0x1D4 +fn_1_FAE4 = .text:0x0000FAE4; // type:function size:0x238 +fn_1_FD1C = .text:0x0000FD1C; // type:function size:0xB4 +fn_1_FDD0 = .text:0x0000FDD0; // type:function size:0x4C8 +fn_1_10298 = .text:0x00010298; // type:function size:0xEC +fn_1_10384 = .text:0x00010384; // type:function size:0xCC +fn_1_10450 = .text:0x00010450; // type:function size:0xFC +fn_1_1054C = .text:0x0001054C; // type:function size:0xAC +fn_1_105F8 = .text:0x000105F8; // type:function size:0x300 +fn_1_108F8 = .text:0x000108F8; // type:function size:0x374 +fn_1_10C6C = .text:0x00010C6C; // type:function size:0xE4 +fn_1_10D50 = .text:0x00010D50; // type:function size:0x1D4 +fn_1_10F24 = .text:0x00010F24; // type:function size:0xAC +fn_1_10FD0 = .text:0x00010FD0; // type:function size:0x2D0 +fn_1_112A0 = .text:0x000112A0; // type:function size:0x8C +fn_1_1132C = .text:0x0001132C; // type:function size:0xF0 +fn_1_1141C = .text:0x0001141C; // type:function size:0x118 +fn_1_11534 = .text:0x00011534; // type:function size:0xF0 +fn_1_11624 = .text:0x00011624; // type:function size:0x10C +fn_1_11730 = .text:0x00011730; // type:function size:0x35C +fn_1_11A8C = .text:0x00011A8C; // type:function size:0x5C +fn_1_11AE8 = .text:0x00011AE8; // type:function size:0x184 +fn_1_11C6C = .text:0x00011C6C; // type:function size:0x16C +fn_1_11DD8 = .text:0x00011DD8; // type:function size:0xEC +fn_1_11EC4 = .text:0x00011EC4; // type:function size:0x64 +fn_1_11F28 = .text:0x00011F28; // type:function size:0x4 +fn_1_11F2C = .text:0x00011F2C; // type:function size:0x144 +fn_1_12070 = .text:0x00012070; // type:function size:0x5C0 +fn_1_12630 = .text:0x00012630; // type:function size:0xB4 +fn_1_126E4 = .text:0x000126E4; // type:function size:0x234 +fn_1_12918 = .text:0x00012918; // type:function size:0xBC +fn_1_129D4 = .text:0x000129D4; // type:function size:0x2C0 +fn_1_12C94 = .text:0x00012C94; // type:function size:0xE4 +fn_1_12D78 = .text:0x00012D78; // type:function size:0x1A8 +fn_1_12F20 = .text:0x00012F20; // type:function size:0x88 +fn_1_12FA8 = .text:0x00012FA8; // type:function size:0x118 +fn_1_130C0 = .text:0x000130C0; // type:function size:0x22C +fn_1_132EC = .text:0x000132EC; // type:function size:0x284 +fn_1_13570 = .text:0x00013570; // type:function size:0x310 +fn_1_13880 = .text:0x00013880; // type:function size:0x8C +fn_1_1390C = .text:0x0001390C; // type:function size:0x23C +fn_1_13B48 = .text:0x00013B48; // type:function size:0xEC +fn_1_13C34 = .text:0x00013C34; // type:function size:0x210 +fn_1_13E44 = .text:0x00013E44; // type:function size:0x324 +fn_1_14168 = .text:0x00014168; // type:function size:0x50 +_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:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0xC data:4byte +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte +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:0x14 data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string +lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string +lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 +lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string +lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C +lbl_1_data_354 = .data:0x00000354; // type:object size:0x34 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string +lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 +lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 +lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 +lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string +lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB +lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string +lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 +lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x28 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x28 data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x104 data:4byte +lbl_1_bss_2C8 = .bss:0x000002C8; // type:object size:0x4 data:4byte +lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x4 data:4byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x60 data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0x8 data:4byte +lbl_1_bss_338 = .bss:0x00000338; // type:object size:0xA0 +lbl_1_bss_3D8 = .bss:0x000003D8; // type:object size:0x28 data:4byte +lbl_1_bss_400 = .bss:0x00000400; // type:object size:0x28 data:4byte +lbl_1_bss_428 = .bss:0x00000428; // type:object size:0x28 data:4byte +lbl_1_bss_450 = .bss:0x00000450; // type:object size:0x108 data:float +lbl_1_bss_558 = .bss:0x00000558; // type:object size:0x4 data:4byte +lbl_1_bss_55C = .bss:0x0000055C; // type:object size:0x4 data:4byte +lbl_1_bss_560 = .bss:0x00000560; // type:object size:0x8 data:4byte +lbl_1_bss_568 = .bss:0x00000568; // type:object size:0x28 data:4byte +lbl_1_bss_590 = .bss:0x00000590; // type:object size:0x28 data:4byte +lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x28 data:4byte +lbl_1_bss_5E0 = .bss:0x000005E0; // type:object size:0x28 data:4byte +lbl_1_bss_608 = .bss:0x00000608; // type:object size:0x108 data:4byte +lbl_1_bss_710 = .bss:0x00000710; // type:object size:0x4 data:4byte +lbl_1_bss_714 = .bss:0x00000714; // type:object size:0x28 data:4byte +lbl_1_bss_73C = .bss:0x0000073C; // type:object size:0x28 data:4byte +lbl_1_bss_764 = .bss:0x00000764; // type:object size:0x28 data:4byte +lbl_1_bss_78C = .bss:0x0000078C; // type:object size:0x28 data:4byte +lbl_1_bss_7B4 = .bss:0x000007B4; // type:object size:0x104 data:4byte +lbl_1_bss_8B8 = .bss:0x000008B8; // type:object size:0x4 data:4byte +lbl_1_bss_8BC = .bss:0x000008BC; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index c9a29b4f..ba94ebfe 100644 --- a/configure.py +++ b/configure.py @@ -31,6 +31,8 @@ DEFAULT_VERSION = 0 VERSIONS = [ "GMPE01_00", # USA 1.0 "GMPE01_01", # USA 1.1 + "GMPP01_00", # PAL 1.0 + "GMPP01_02", # PAL 1.2 ] parser = argparse.ArgumentParser() @@ -371,13 +373,13 @@ config.libs = [ "cflags": cflags_game, "host": False, "objects": [ - Object(Matching, "game/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/main.c"), Object(Matching, "game/pad.c"), Object(Matching, "game/dvd.c"), Object(Matching, "game/data.c"), Object(Matching, "game/decode.c"), Object(Matching, "game/font.c"), - Object(Matching, "game/init.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/init.c"), Object(Matching, "game/jmp.c"), Object(Matching, "game/malloc.c"), Object(Matching, "game/memory.c"), @@ -394,22 +396,22 @@ config.libs = [ Object(Matching, "game/perf.c"), Object(Matching, "game/objmain.c"), Object(Matching, "game/fault.c"), - Object(Matching, "game/gamework.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/gamework.c"), Object(Matching, "game/objsysobj.c"), Object(Matching, "game/objdll.c"), Object(Matching, "game/frand.c"), - Object(Matching, "game/audio.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/audio.c"), Object(Matching, "game/EnvelopeExec.c"), - Object(Matching, "game/minigame_seq.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/minigame_seq.c"), Object(Matching, "game/ovllist.c"), Object(Matching, "game/esprite.c"), Object(Matching, "game/code_8003FF68.c"), Object(Matching, "game/ClusterExec.c"), Object(Matching, "game/ShapeExec.c"), Object(Matching, "game/wipe.c"), - Object(Matching, "game/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/window.c"), Object(Matching, "game/messdata.c"), - Object(Matching, "game/card.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/card.c"), Object(Matching, "game/armem.c"), Object(Matching, "game/chrman.c"), Object(Matching, "game/mapspace.c"), @@ -418,7 +420,7 @@ config.libs = [ Object(Matching, "game/thpmain.c"), Object(Matching, "game/objsub.c"), Object(Matching, "game/flag.c"), - Object(Matching, "game/saveload.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/saveload.c"), Object(Matching, "game/sreset.c"), Object(Matching, "game/board/main.c"), Object(Matching, "game/board/player.c"), @@ -450,113 +452,113 @@ config.libs = [ Object(Matching, "game/board/pause.c"), Object(Matching, "game/board/com_path.c"), Object(Matching, "game/board/tutorial.c"), - Object(Matching, "game/kerent.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/kerent.c"), ], }, DolphinLib( "base", [ - Object(Matching, "dolphin/PPCArch.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/PPCArch.c"), ], ), DolphinLib( "os", [ Object(Matching, "dolphin/os/OS.c"), - Object(Matching, "dolphin/os/OSAlarm.c"), - Object(Matching, "dolphin/os/OSAlloc.c"), - Object(Matching, "dolphin/os/OSArena.c"), - Object(Matching, "dolphin/os/OSAudioSystem.c"), - Object(Matching, "dolphin/os/OSCache.c"), - Object(Matching, "dolphin/os/OSContext.c"), - Object(Matching, "dolphin/os/OSError.c"), - Object(Matching, "dolphin/os/OSFont.c"), - Object(Matching, "dolphin/os/OSInterrupt.c"), - Object(Matching, "dolphin/os/OSLink.c"), - Object(Matching, "dolphin/os/OSMessage.c"), - Object(Matching, "dolphin/os/OSMemory.c"), - Object(Matching, "dolphin/os/OSMutex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSAlarm.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSAlloc.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSArena.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSAudioSystem.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSCache.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSContext.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSError.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSFont.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSInterrupt.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSLink.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSMessage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSMemory.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSMutex.c"), Object(NonMatching, "dolphin/os/OSReboot.c"), - Object(Matching, "dolphin/os/OSReset.c"), - Object(Matching, "dolphin/os/OSResetSW.c"), - Object(Matching, "dolphin/os/OSRtc.c"), - Object(Matching, "dolphin/os/OSStopwatch.c"), - Object(Matching, "dolphin/os/OSSync.c"), - Object(Matching, "dolphin/os/OSThread.c"), - Object(Matching, "dolphin/os/OSTime.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSReset.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSResetSW.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSRtc.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSStopwatch.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSSync.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSThread.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSTime.c"), Object(Matching, "dolphin/os/__start.c"), - Object(Matching, "dolphin/os/__ppc_eabi_init.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/__ppc_eabi_init.c"), ], ), DolphinLib( "db", [ - Object(Matching, "dolphin/db.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/db.c"), ], ), DolphinLib( "mtx", [ Object(NonMatching, "dolphin/mtx/mtx.c"), - Object(Matching, "dolphin/mtx/mtxvec.c"), - Object(Matching, "dolphin/mtx/mtx44.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/mtxvec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/mtx44.c"), Object(NonMatching, "dolphin/mtx/vec.c"), Object(NonMatching, "dolphin/mtx/quat.c"), - Object(Matching, "dolphin/mtx/psmtx.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/psmtx.c"), ], ), DolphinLib( "dvd", [ - Object(Matching, "dolphin/dvd/dvdlow.c"), - Object(Matching, "dolphin/dvd/dvdfs.c"), - Object(Matching, "dolphin/dvd/dvd.c"), - Object(Matching, "dolphin/dvd/dvdqueue.c"), - Object(Matching, "dolphin/dvd/dvderror.c"), - Object(Matching, "dolphin/dvd/fstload.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dvd/dvdlow.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dvd/dvdfs.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dvd/dvd.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dvd/dvdqueue.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dvd/dvderror.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dvd/fstload.c"), ], ), DolphinLib( "vi", [ - Object(Matching, "dolphin/vi.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/vi.c"), ], ), DolphinLib( "demo", [ - Object(Matching, "dolphin/demo/DEMOInit.c"), - Object(Matching, "dolphin/demo/DEMOFont.c"), - Object(Matching, "dolphin/demo/DEMOPuts.c"), - Object(Matching, "dolphin/demo/DEMOStats.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/demo/DEMOInit.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/demo/DEMOFont.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/demo/DEMOPuts.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/demo/DEMOStats.c"), ], ), DolphinLib( "pad", [ Object(NonMatching, "dolphin/pad/Padclamp.c"), - Object(Matching, "dolphin/pad/Pad.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/pad/Pad.c"), ], ), DolphinLib( "ai", [ - Object(Matching, "dolphin/ai.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/ai.c"), ], ), DolphinLib( "ar", [ Object(NonMatching, "dolphin/ar/ar.c"), - Object(Matching, "dolphin/ar/arq.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/ar/arq.c"), ], ), DolphinLib( "dsp", [ - Object(Matching, "dolphin/dsp/dsp.c"), - Object(Matching, "dolphin/dsp/dsp_debug.c"), - Object(Matching, "dolphin/dsp/dsp_task.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dsp/dsp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dsp/dsp_debug.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/dsp/dsp_task.c"), ], ), DolphinLib( @@ -582,35 +584,35 @@ config.libs = [ DolphinLib( "card", [ - Object(Matching, "dolphin/card/CARDBios.c"), - Object(Matching, "dolphin/card/CARDUnlock.c"), - Object(Matching, "dolphin/card/CARDRdwr.c"), - Object(Matching, "dolphin/card/CARDBlock.c"), - Object(Matching, "dolphin/card/CARDDir.c"), - Object(Matching, "dolphin/card/CARDCheck.c"), - Object(Matching, "dolphin/card/CARDMount.c"), - Object(Matching, "dolphin/card/CARDFormat.c"), - Object(Matching, "dolphin/card/CARDOpen.c"), - Object(Matching, "dolphin/card/CARDCreate.c"), - Object(Matching, "dolphin/card/CARDRead.c"), - Object(Matching, "dolphin/card/CARDWrite.c"), - Object(Matching, "dolphin/card/CARDDelete.c"), - Object(Matching, "dolphin/card/CARDStat.c"), - Object(Matching, "dolphin/card/CARDNet.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDBios.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDUnlock.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDRdwr.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDBlock.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDDir.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDCheck.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDMount.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDFormat.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDOpen.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDCreate.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDRead.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDWrite.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDDelete.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDStat.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/card/CARDNet.c"), ], ), DolphinLib( "exi", [ - Object(Matching, "dolphin/exi/EXIBios.c"), - Object(Matching, "dolphin/exi/EXIUart.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/exi/EXIBios.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/exi/EXIUart.c"), ], ), DolphinLib( "si", [ - Object(Matching, "dolphin/si/SIBios.c"), - Object(Matching, "dolphin/si/SISamplingRate.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/si/SIBios.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/si/SISamplingRate.c"), ], ), { @@ -619,7 +621,7 @@ config.libs = [ "cflags": cflags_thp, "host": False, "objects": [ - Object(Matching, "dolphin/thp/THPDec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/thp/THPDec.c"), Object(NonMatching, "dolphin/thp/THPAudio.c"), ], }, @@ -630,13 +632,13 @@ config.libs = [ "host": False, "objects": [ Object(NonMatching, "Runtime.PPCEABI.H/__va_arg.c"), - Object(Matching, "Runtime.PPCEABI.H/global_destructor_chain.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/global_destructor_chain.c"), Object(NonMatching, "Runtime.PPCEABI.H/__mem.c"), Object(NonMatching, "Runtime.PPCEABI.H/New.cp"), Object(NonMatching, "Runtime.PPCEABI.H/NewMore.cp"), Object(NonMatching, "Runtime.PPCEABI.H/NMWException.cp"), Object(NonMatching, "Runtime.PPCEABI.H/runtime.c"), - Object(Matching, "Runtime.PPCEABI.H/__init_cpp_exceptions.cpp"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__init_cpp_exceptions.cpp"), Object(NonMatching, "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cp"), Object(NonMatching, "Runtime.PPCEABI.H/GCN_mem_alloc.c"), ], @@ -729,37 +731,37 @@ config.libs = [ }, MusyX( objects={ - Object(Matching, "musyx/runtime/seq.c"), - Object(Matching, "musyx/runtime/synth.c"), - Object(Matching, "musyx/runtime/seq_api.c"), - Object(Matching, "musyx/runtime/snd_synthapi.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/seq.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/seq_api.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_synthapi.c"), Object(NonMatching, "musyx/runtime/stream.c"), - Object(Matching, "musyx/runtime/synthdata.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synthdata.c"), Object(NonMatching, "musyx/runtime/synthmacros.c"), - Object(Matching, "musyx/runtime/synthvoice.c"), - Object(Matching, "musyx/runtime/synth_ac.c"), - Object(Matching, "musyx/runtime/synth_dbtab.c"), - Object(Matching, "musyx/runtime/synth_adsr.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synthvoice.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth_ac.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth_dbtab.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth_adsr.c"), Object(NonMatching, "musyx/runtime/synth_vsamples.c"), - Object(Matching, "musyx/runtime/s_data.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/s_data.c"), Object(NonMatching, "musyx/runtime/hw_dspctrl.c"), - Object(Matching, "musyx/runtime/hw_volconv.c"), - Object(Matching, "musyx/runtime/snd3d.c"), - Object(Matching, "musyx/runtime/snd_init.c"), - Object(Matching, "musyx/runtime/snd_math.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hw_volconv.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd3d.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_init.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_math.c"), Object(NonMatching, "musyx/runtime/snd_midictrl.c"), - Object(Matching, "musyx/runtime/snd_service.c"), - Object(Matching, "musyx/runtime/hardware.c"), - Object(Matching, "musyx/runtime/dsp_import.c"), - Object(Matching, "musyx/runtime/hw_aramdma.c"), - Object(Matching, "musyx/runtime/hw_dolphin.c"), - Object(Matching, "musyx/runtime/hw_memory.c"), - Object(Matching, "musyx/runtime/CheapReverb/creverb_fx.c"), - Object(Matching, "musyx/runtime/CheapReverb/creverb.c"), - Object(Matching, "musyx/runtime/StdReverb/reverb_fx.c"), - Object(Matching, "musyx/runtime/StdReverb/reverb.c"), - Object(Matching, "musyx/runtime/Delay/delay_fx.c"), - Object(Matching, "musyx/runtime/Chorus/chorus_fx.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_service.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hardware.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/dsp_import.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hw_aramdma.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hw_dolphin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hw_memory.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/CheapReverb/creverb_fx.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/CheapReverb/creverb.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/StdReverb/reverb_fx.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/StdReverb/reverb.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/Delay/delay_fx.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/Chorus/chorus_fx.c"), } ), { @@ -777,7 +779,7 @@ config.libs = [ "cflags": cflags_amcstub, "host": False, "objects": [ - Object(Matching, "amcstubs/AmcExi2Stubs.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "amcstubs/AmcExi2Stubs.c"), ], }, { @@ -786,7 +788,7 @@ config.libs = [ "cflags": cflags_odenotstub, "host": False, "objects": [ - Object(Matching, "odenotstub/odenotstub.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "odenotstub/odenotstub.c"), ], }, { @@ -795,8 +797,8 @@ config.libs = [ "cflags": cflags_libhu, "host": False, "objects": [ - Object(Matching, "libhu/setvf.c"), - Object(Matching, "libhu/subvf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "libhu/setvf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "libhu/subvf.c"), ], }, { @@ -806,8 +808,8 @@ config.libs = [ "host": False, "objects": [ Object(NonMatching, "msm/msmsys.c"), - Object(Matching, "msm/msmmem.c"), - Object(Matching, "msm/msmfio.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmmem.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmfio.c"), Object(NonMatching, "msm/msmmus.c"), Object(NonMatching, "msm/msmse.c"), Object(NonMatching, "msm/msmstream.c"), @@ -819,7 +821,7 @@ config.libs = [ "cflags": cflags_rel, "host": False, "objects": [ - Object(Matching, "REL/executor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/executor.c"), Object(Matching, "REL/empty.c"), # Must be marked as matching Object(Matching, "REL/board_executor.c"), ], @@ -827,119 +829,119 @@ config.libs = [ Rel( "_minigameDLL", objects={ - Object(Matching, "REL/_minigameDLL/_minigameDLL.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/_minigameDLL/_minigameDLL.c"), }, ), Rel( "bootDll", objects={ - Object(Matching, "REL/bootDll/main.c"), - Object(Matching, "REL/bootDll/nintendo_data.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/nintendo_data.c"), }, ), Rel( "E3setupDLL", objects={ - Object(Matching, "REL/E3setupDLL/mgselect.c"), - Object(Matching, "REL/E3setupDLL/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/mgselect.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/main.c"), }, ), Rel( "instDll", objects={ - Object(Matching, "REL/instDll/main.c"), - Object(Matching, "REL/instDll/font.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/font.c"), }, ), Rel( "m401Dll", # Manta Rings objects={ - Object(Matching, "REL/m401Dll/main.c"), - Object(Matching, "REL/m401Dll/main_ex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main_ex.c"), }, ), Rel( "m402Dll", # Slime Time objects={ - Object(Matching, "REL/m402Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m402Dll/main.c"), }, ), Rel( "m403Dll", # Booksquirm objects={ - Object(Matching, "REL/m403Dll/main.c"), - Object(Matching, "REL/m403Dll/scene.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m403Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m403Dll/scene.c"), }, ), Rel( "m404Dll", # Trace Race objects={ - Object(Matching, "REL/m404Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m404Dll/main.c"), }, ), Rel( "m405Dll", # Mario Medley objects={ - Object(Matching, "REL/m405Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m405Dll/main.c"), }, ), Rel( "m406Dll", # Avalanche! objects={ - Object(Matching, "REL/m406Dll/main.c"), - Object(Matching, "REL/m406Dll/map.c"), - Object(Matching, "REL/m406Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m406Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m406Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m406Dll/player.c"), }, ), Rel( "m407dll", # Domination objects={ - Object(Matching, "REL/m407dll/player.c"), - Object(Matching, "REL/m407dll/map.c"), - Object(Matching, "REL/m407dll/camera.c"), - Object(Matching, "REL/m407dll/whomp.c"), - Object(Matching, "REL/m407dll/whomp_score.c"), - Object(Matching, "REL/m407dll/effect.c"), - Object(Matching, "REL/m407dll/main.c"), - Object(Matching, "REL/m407dll/score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/whomp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/whomp_score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/effect.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/score.c"), }, ), Rel( "m408Dll", # Paratrooper Plunge objects={ - Object(Matching, "REL/m408Dll/main.c"), - Object(Matching, "REL/m408Dll/camera.c"), - Object(Matching, "REL/m408Dll/stage.c"), - Object(Matching, "REL/m408Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/object.c"), }, ), Rel( "m409Dll", # Toad's Quick Draw objects={ - Object(Matching, "REL/m409Dll/main.c"), - Object(Matching, "REL/m409Dll/player.c"), - Object(Matching, "REL/m409Dll/cursor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m409Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m409Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m409Dll/cursor.c"), }, ), Rel( "m410Dll", # Three Throw objects={ - Object(Matching, "REL/m410Dll/main.c"), - Object(Matching, "REL/m410Dll/stage.c"), - Object(Matching, "REL/m410Dll/game.c"), - Object(Matching, "REL/m410Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/game.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/player.c"), }, ), Rel( "m411Dll", # Photo Finish objects={ - Object(Matching, "REL/m411Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m411Dll/main.c"), }, ), Rel( "m412Dll", # Mr. Blizzard's Brigade objects={ - Object(Matching, "REL/m412Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m412Dll/main.c"), }, ), Rel( @@ -951,30 +953,30 @@ config.libs = [ Rel( "m414Dll", # Long Claw of the Law objects={ - Object(Matching, "REL/m414Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m414Dll/main.c"), }, ), Rel( "m415Dll", # Stamp Out! objects={ - Object(Matching, "REL/m415Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m415Dll/main.c"), Object(NonMatching, "REL/m415Dll/map.c"), }, ), Rel( "m416Dll", # Candlelight Flight objects={ - Object(Matching, "REL/m416Dll/main.c"), - Object(Matching, "REL/m416Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m416Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m416Dll/map.c"), }, ), Rel( "m417Dll", # Makin' Waves objects={ - Object(Matching, "REL/m417Dll/main.c"), - Object(Matching, "REL/m417Dll/water.c"), - Object(Matching, "REL/m417Dll/player.c"), - Object(Matching, "REL/m417Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/water.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/sequence.c"), }, ), Rel( @@ -993,11 +995,11 @@ config.libs = [ Rel( "m420dll", # Fish n' Drips objects={ - Object(Matching, "REL/m420dll/main.c"), - Object(Matching, "REL/m420dll/camera.c"), - Object(Matching, "REL/m420dll/player.c"), - Object(Matching, "REL/m420dll/map.c"), - Object(Matching, "REL/m420dll/rand.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/rand.c"), }, ), Rel( @@ -1061,7 +1063,7 @@ config.libs = [ Rel( "m429Dll", # Team Treasure Trek objects={ - Object(Matching, "REL/m429Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m429Dll/main.c"), }, ), Rel( @@ -1075,14 +1077,14 @@ config.libs = [ Rel( "m431Dll", # Order Up objects={ - Object(Matching, "REL/m431Dll/main.c"), - Object(Matching, "REL/m431Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/object.c"), }, ), Rel( "m432Dll", # Dungeon Duos objects={ - Object(Matching, "REL/m432Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m432Dll/main.c"), }, ), Rel( @@ -1096,10 +1098,10 @@ config.libs = [ Rel( "m434Dll", # Cheep Cheep Sweep objects={ - Object(Matching, "REL/m434Dll/main.c"), - Object(Matching, "REL/m434Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/map.c"), Object(NonMatching, "REL/m434Dll/player.c"), - Object(Matching, "REL/m434Dll/fish.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/fish.c"), }, ), Rel( @@ -1112,15 +1114,15 @@ config.libs = [ Rel( "m436Dll", # Fruits of Doom objects={ - Object(Matching, "REL/m436Dll/main.c"), - Object(Matching, "REL/m436Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/sequence.c"), }, ), Rel( "m437Dll", # Balloon of Doom objects={ - Object(Matching, "REL/m437Dll/main.c"), - Object(Matching, "REL/m437Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/sequence.c"), }, ), Rel( @@ -1134,80 +1136,80 @@ config.libs = [ Rel( "m439Dll", # Paths of Peril objects={ - Object(Matching, "REL/m439Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m439Dll/main.c"), }, ), Rel( "m440Dll", # Bowser's Bigger Blast objects={ - Object(Matching, "REL/m440Dll/main.c"), - Object(Matching, "REL/m440Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/object.c"), }, ), Rel( "m441Dll", # Butterfly Blitz objects={ - Object(Matching, "REL/m441Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m441Dll/main.c"), }, ), Rel( "m442Dll", # Barrel Baron objects={ - Object(Matching, "REL/m442Dll/main.c"), - Object(Matching, "REL/m442Dll/score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/score.c"), }, ), Rel( "m443Dll", # Mario Speedwagons objects={ - Object(Matching, "REL/m443Dll/main.c"), - Object(Matching, "REL/m443Dll/map.c"), - Object(Matching, "REL/m443Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m443Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m443Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m443Dll/player.c"), }, ), Rel( "m444dll", # Reversal of Fortune objects={ - Object(Matching, "REL/m444dll/main.c"), - Object(Matching, "REL/m444dll/pinball.c"), - Object(Matching, "REL/m444dll/datalist.c"), - Object(Matching, "REL/m444dll/shadow.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/pinball.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/shadow.c"), }, ), Rel( "m445Dll", # Bowser Bop objects={ - Object(Matching, "REL/m445Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m445Dll/main.c"), }, ), Rel( "m446dll", # Mystic Match 'Em objects={ - Object(Matching, "REL/m446Dll/main.c"), - Object(Matching, "REL/m446Dll/card.c"), - Object(Matching, "REL/m446Dll/deck.c"), - Object(Matching, "REL/m446Dll/table.c"), - Object(Matching, "REL/m446Dll/player.c"), - Object(Matching, "REL/m446Dll/camera.c"), - Object(Matching, "REL/m446Dll/cursor.c"), - Object(Matching, "REL/m446Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/card.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/deck.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/table.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/cursor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/stage.c"), }, ), Rel( "m447dll", # Archaeologuess objects={ - Object(Matching, "REL/m447dll/main.c"), - Object(Matching, "REL/m447dll/stage.c"), - Object(Matching, "REL/m447dll/camera.c"), - Object(Matching, "REL/m447dll/player.c"), - Object(Matching, "REL/m447dll/player_col.c"), - Object(Matching, "REL/m447dll/block.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/player_col.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/block.c"), }, ), Rel( "m448Dll", # Goomba's Chip Flip objects={ - Object(Matching, "REL/m448Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m448Dll/main.c"), }, ), Rel( @@ -1219,28 +1221,28 @@ config.libs = [ Rel( "m450Dll", # The Final Battle! objects={ - Object(Matching, "REL/m450Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m450Dll/main.c"), }, ), Rel( "m451Dll", # Jigsaw Jitters objects={ - Object(Matching, "REL/m451Dll/m451.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m451Dll/m451.c"), }, ), Rel( "m453Dll", # Challenge Booksquirm objects={ - Object(Matching, "REL/m453Dll/main.c"), - Object(Matching, "REL/m453Dll/map.c"), - Object(Matching, "REL/m453Dll/score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m453Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m453Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m453Dll/score.c"), }, ), Rel( "m455Dll", # Rumble Fishing objects={ - Object(Matching, "REL/m455Dll/main.c"), - Object(Matching, "REL/m455Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m455Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m455Dll/stage.c"), }, ), Rel( @@ -1280,7 +1282,7 @@ config.libs = [ Rel( "m461Dll", # Bob-omb X-ing objects={ - Object(Matching, "REL/m461Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m461Dll/main.c"), }, ), Rel( @@ -1298,53 +1300,53 @@ config.libs = [ Rel( "mentDll", objects={ - Object(Matching, "REL/mentDll/common.c"), - Object(Matching, "REL/mentDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/common.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/main.c"), }, ), Rel( "messDll", objects={ - Object(Matching, "REL/messDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/messDll/main.c"), }, ), Rel( "mgmodedll", objects={ - Object(Matching, "REL/mgmodedll/mgmode.c"), - Object(Matching, "REL/mgmodedll/free_play.c"), - Object(Matching, "REL/mgmodedll/record.c"), - Object(Matching, "REL/mgmodedll/battle.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/mgmode.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/free_play.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/record.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/battle.c"), Object(NonMatching, "REL/mgmodedll/tictactoe.c"), - Object(Matching, "REL/mgmodedll/main.c"), - Object(Matching, "REL/mgmodedll/datalist.c"), - Object(Matching, "REL/mgmodedll/minigame.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/minigame.c"), }, ), Rel( "modeltestDll", objects={ - Object(Matching, "REL/modeltestDll/main.c"), - Object(Matching, "REL/modeltestDll/modeltest00.c"), - Object(Matching, "REL/modeltestDll/modeltest01.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest00.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest01.c"), }, ), Rel( "modeseldll", objects={ - Object(Matching, "REL/modeseldll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/main.c"), Object(NonMatching, "REL/modeseldll/modesel.c"), - Object(Matching, "REL/modeseldll/filesel.c"), - Object(Matching, "REL/modeseldll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/filesel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/datalist.c"), }, ), Rel( "mpexDll", objects={ - Object(Matching, "REL/mpexDll/main.c"), - Object(Matching, "REL/mpexDll/mpex.c"), - Object(Matching, "REL/mpexDll/charsel.c"), - Object(Matching, "REL/mpexDll/mgname.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mpex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/charsel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mgname.c"), }, ), Rel( @@ -1372,7 +1374,7 @@ config.libs = [ Rel( "mstory4Dll", objects={ - Object(Matching, "REL/mstory4Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mstory4Dll/main.c"), }, ), Rel( @@ -1389,71 +1391,71 @@ config.libs = [ Rel( "nisDll", objects={ - Object(Matching, "REL/nisDll/main.c") + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/nisDll/main.c") }, ), Rel( "option", objects={ - Object(Matching, "REL/option/scene.c"), - Object(Matching, "REL/option/camera.c"), - Object(Matching, "REL/option/room.c"), - Object(Matching, "REL/option/guide.c"), - Object(Matching, "REL/option/state.c"), - Object(Matching, "REL/option/rumble.c"), - Object(Matching, "REL/option/sound.c"), - Object(Matching, "REL/option/record.c"), - Object(Matching, "REL/option/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/scene.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/room.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/guide.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/state.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/rumble.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/sound.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/record.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/window.c"), }, ), Rel( "present", objects={ - Object(Matching, "REL/present/init.c"), - Object(Matching, "REL/present/camera.c"), - Object(Matching, "REL/present/present.c"), - Object(Matching, "REL/present/main.c"), - Object(Matching, "REL/present/common.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/init.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/present.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/common.c"), }, ), Rel( "resultDll", objects={ - Object(Matching, "REL/resultDll/main.c"), - Object(Matching, "REL/resultDll/battle.c"), - Object(Matching, "REL/resultDll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/battle.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/datalist.c"), }, ), Rel( "safDll", objects={ - Object(Matching, "REL/safDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/safDll/main.c"), }, ), Rel( "selmenuDll", objects={ - Object(Matching, "REL/selmenuDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/selmenuDll/main.c"), }, ), Rel( "staffDll", objects={ - Object(Matching, "REL/staffDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/staffDll/main.c"), }, ), Rel( "subchrselDll", objects={ - Object(Matching, "REL/subchrselDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/subchrselDll/main.c"), }, ), Rel( "w01Dll", # Toad's Midway Madness objects={ Object(Matching, "REL/w01Dll/main.c"), - Object(Matching, "REL/w01Dll/mg_coin.c"), - Object(Matching, "REL/w01Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_item.c"), }, ), Rel( @@ -1462,8 +1464,8 @@ config.libs = [ Object(Matching, "REL/w02Dll/main.c"), Object(Matching, "REL/w02Dll/gendice.c"), Object(Matching, "REL/w02Dll/gamble.c"), - Object(Matching, "REL/w02Dll/mg_coin.c"), - Object(Matching, "REL/w02Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_item.c"), Object(Matching, "REL/w02Dll/shuffleboard.c"), Object(Matching, "REL/w02Dll/roulette.c"), }, @@ -1487,8 +1489,8 @@ config.libs = [ Object(Matching, "REL/w04Dll/bridge.c"), Object(Matching, "REL/w04Dll/boo_event.c"), Object(Matching, "REL/w04Dll/big_boo.c"), - Object(Matching, "REL/w04Dll/mg_item.c"), - Object(Matching, "REL/w04Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_coin.c"), }, ), Rel( @@ -1496,10 +1498,10 @@ config.libs = [ objects={ Object(Matching, "REL/w05Dll/main.c"), Object(Matching, "REL/w05Dll/hotel.c"), - Object(Matching, "REL/w05Dll/monkey.c"), + Object(Matching,"REL/w05Dll/monkey.c"), Object(Matching, "REL/w05Dll/dolphin.c"), - Object(Matching, "REL/w05Dll/mg_item.c"), - Object(Matching, "REL/w05Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_coin.c"), }, ), Rel( @@ -1537,9 +1539,9 @@ config.libs = [ Rel( "ztardll", objects={ - Object(Matching, "REL/ztardll/main.c"), - Object(Matching, "REL/ztardll/font.c"), - Object(Matching, "REL/ztardll/select.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/ztardll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/ztardll/font.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/ztardll/select.c"), }, ), ] diff --git a/include/game/board/window.h b/include/game/board/window.h index eb015c5f..dd0b87df 100644 --- a/include/game/board/window.h +++ b/include/game/board/window.h @@ -31,5 +31,6 @@ s32 BoardWinPortraitGetStar(void); void BoardWinPlayerSet(s32 player); void BoardWinStartComKeySet(void); void BoardWinComKeyFuncSet(BoardWinComKeyFunc func); +s16 BoardWinIDGet(void); #endif \ No newline at end of file diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index cad58011..6e876bc1 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -3,6 +3,7 @@ #include "dolphin.h" #include "game/flag.h" +#include "version.h" //HACK: to prevent prototype errors extern void HuPadRumbleAllStop(void); @@ -235,6 +236,7 @@ static inline s32 GWMessSpeedGet(void) static inline void GWMessSpeedSet(s32 value) { + #if VERSION_NTSC GWSystem.mess_speed = value; switch(value) { case 0: @@ -249,6 +251,26 @@ static inline void GWMessSpeedSet(s32 value) GWSystem.mess_delay = 32; break; } + #else + GWSystem.mess_speed = value; + switch(value) { + case 0: + GWSystem.mess_delay = 32; + break; + + case 2: + GWSystem.mess_delay = 64; + break; + + case 1: + GWSystem.mess_delay = 48; + break; + + default: + GWSystem.mess_delay = 120; + break; + } + #endif } static inline void GWSaveModeSet(s32 value) diff --git a/include/version.h b/include/version.h new file mode 100644 index 00000000..8d91dabf --- /dev/null +++ b/include/version.h @@ -0,0 +1,18 @@ +#ifndef _VERSION_H +#define _VERSION_H + +#define VERSION_NO_ENG0 0 +#define VERSION_NO_ENG1 1 +#define VERSION_NO_PAL0 2 +#define VERSION_NO_PAL2 3 +#define VERSION_NO_JAP 4 + +#define VERSION_ENG (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_ENG1) +#define VERSION_PAL (VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_PAL2) +#define VERSION_JAP (VERSION == VERSION_NO_JAP) +#define VERSION_NTSC (!VERSION_PAL) + +#define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JAP) +#define VERSION_REV1 (!VERSION_REV0) + +#endif diff --git a/src/REL/w04Dll/big_boo.c b/src/REL/w04Dll/big_boo.c index ddc030bc..b5f6b3cf 100755 --- a/src/REL/w04Dll/big_boo.c +++ b/src/REL/w04Dll/big_boo.c @@ -913,9 +913,13 @@ static void fn_1_8A60(void) { HuPrcVSleep(); } fn_1_7300(); + #if VERSION_NTSC sprintf(sp10, "%d", var_r29); BoardWinCreate(2, MAKE_MESSID(32, 11), 9); BoardWinInsertMesSet(MAKE_MESSID_PTR(sp10), 0); + #else + BoardWinCreate(2, MAKE_MESSID(32, 11), 9); + #endif BoardWinWait(); BoardWinKill(); BoardAudSeqFadeOut(1, 1000); diff --git a/src/REL/w06Dll/fire.c b/src/REL/w06Dll/fire.c index 2fcc6899..f9fb964b 100755 --- a/src/REL/w06Dll/fire.c +++ b/src/REL/w06Dll/fire.c @@ -49,6 +49,24 @@ static s16 lbl_1_data_22A = -1; static s16 lbl_1_data_22C = -1; static s16 lbl_1_data_22E = -1; +#if VERSION_PAL +static s32 lbl_1_data_230[] = { + MAKE_MESSID(8, 0), + MAKE_MESSID(8, 1), + MAKE_MESSID(8, 2), + MAKE_MESSID(8, 3), + MAKE_MESSID(8, 4), + MAKE_MESSID(8, 5), + MAKE_MESSID(8, 6), + MAKE_MESSID(8, 7), + MAKE_MESSID(8, 8), + MAKE_MESSID(8, 9), + MAKE_MESSID(8, 10), + MAKE_MESSID(8, 11), + MAKE_MESSID(8, 12), + MAKE_MESSID(8, 13) +}; +#else static s32 lbl_1_data_230[] = { MAKE_MESSID(8, 14), MAKE_MESSID(8, 15), @@ -65,7 +83,7 @@ static s32 lbl_1_data_230[] = { MAKE_MESSID(8, 26), MAKE_MESSID(8, 27) }; - +#endif void fn_1_6EF0(void) { BoardRollDispSet(0); lbl_1_bss_90 = HuPrcChildCreate(fn_1_6F80, 0x2003, 0x3800, 0, boardMainProc); @@ -203,9 +221,12 @@ static void fn_1_74BC(s32 arg0) { static void fn_1_7574(void) { s32 temp_r3; s32 temp_r29; + #if VERSION_PAL + s32 playerNo = GWSystem.player_curr; + #endif s32 temp_r28; s32 i; - + for (i = 0; i < 4; i++) { if (lbl_1_bss_C2[i] == 0) { continue; @@ -218,11 +239,17 @@ static void fn_1_7574(void) { BoardWinCreate(0, MAKE_MESSID(48, 16), -1); BoardWinInsertMesSet(temp_r28, 0); BoardWinInsertMesSet(lbl_1_data_230[temp_r29], 1); + #if VERSION_PAL + GWSystem.player_curr = i; + #endif BoardWinPlayerSet(i); BoardWinWait(); BoardWinKill(); } } + #if VERSION_PAL + GWSystem.player_curr = playerNo; + #endif } static void fn_1_7674(s32 arg0) { diff --git a/src/game/audio.c b/src/game/audio.c index 82810c52..808369d4 100644 --- a/src/game/audio.c +++ b/src/game/audio.c @@ -9,7 +9,7 @@ static int HuSePlay(int seId, MSM_SEPARAM *param); extern s16 omSysExitReq; -static s32 charVoiceGroupStat[8]; +s32 charVoiceGroupStat[8]; static s32 sndFXBuf[64][2]; static s16 Hu3DAudVol; diff --git a/src/game/board/boo.c b/src/game/board/boo.c index dc546aeb..56dff9ce 100755 --- a/src/game/board/boo.c +++ b/src/game/board/boo.c @@ -1335,7 +1335,7 @@ static void TakeBallCoinPosSet(BallTakeCoinData *arg0, Vec *arg1) { BoardModelPosSetV(arg0->unk00, &arg0->unk04); } -BOOL CheckBallCoinDone(void) { +static BOOL CheckBallCoinDone(void) { BallTakeCoinData *var_r31; s32 i; @@ -1351,7 +1351,7 @@ BOOL CheckBallCoinDone(void) { return TRUE; } -void TakeBallStar(void) { +static void TakeBallStar(void) { BallTakeCoinWork *temp_r31; Vec sp8; @@ -1376,7 +1376,7 @@ void TakeBallStar(void) { HuAudFXPlay(0x361); } -void ExecTakeBallStar(omObjData *arg0) { +static void ExecTakeBallStar(omObjData *arg0) { BallTakeCoinWork *temp_r29 = OM_GET_WORK_PTR(arg0, BallTakeCoinWork); Vec sp8; float var_f30; @@ -1405,7 +1405,7 @@ void ExecTakeBallStar(omObjData *arg0) { BoardModelRotYSet(temp_r29->unk02, arg0->rot.y); } -BOOL CheckTakeBallStarDone(void) { +static BOOL CheckTakeBallStarDone(void) { if (ballTakeCoinObj) { return FALSE; } else { diff --git a/src/game/board/char_wheel.c b/src/game/board/char_wheel.c index 380fc7bc..13e4664f 100755 --- a/src/game/board/char_wheel.c +++ b/src/game/board/char_wheel.c @@ -132,6 +132,12 @@ static void ExecCharWheel(omObjData *arg0) { temp_r31 = OM_GET_WORK_PTR(arg0, CharWheelWork);; if (temp_r31->unk00_field0 != 0 || BoardIsKill()) { KillCharWheelSpr(); + #if VERSION_PAL + if (wheelFXStat != -1) { + HuAudFXStop(wheelFXStat); + wheelFXStat = -1; + } + #endif charWheelObj = NULL; omDelObjEx(HuPrcCurrentGet(), arg0); return; @@ -322,7 +328,13 @@ static void UpdateCharWheel(CharWheelWork *arg0) { } var_f23 = 8191.0f - 8191.0f * (var_f25 / wheelSpeed); OSf32tos16(&var_f23, &var_r17); + #if VERSION_PAL + if(wheelFXStat != -1) { + HuAudFXPitchSet(wheelFXStat, -var_r17); + } + #else HuAudFXPitchSet(wheelFXStat, -var_r17); + #endif if (var_f25 > -0.0000001f && var_f25 < 0.0000001f) { arg0->unk00_field3 = 3; if (wheelFXStat != -1) { @@ -379,7 +391,14 @@ static void GrowCharWheel(CharWheelWork *arg0) { } arg0->unk02 = 90; arg0->unk00_field3 = 2; + #if VERSION_PAL + if(!BoardIsKill()) { + wheelFXStat = HuAudFXPlay(0x30A); + } + #else wheelFXStat = HuAudFXPlay(0x30A); + #endif + } OSs8tof32(&arg0->unk02, &temp_f30); HuSprGrpScaleSet(wheelSprGrp, sind(temp_f30), sind(temp_f30)); diff --git a/src/game/board/item.c b/src/game/board/item.c index df2f49b1..4386a4a7 100755 --- a/src/game/board/item.c +++ b/src/game/board/item.c @@ -112,7 +112,7 @@ static AnimData *genieParticleAnim; static s16 geniePlayerMot[3]; static Process *itemProc; -s32 lbl_801D37A0[2] = { DATA_MAKE_NUM(DATADIR_BOARD, 117), -1 }; +static s32 itemMotTbl[2] = { DATA_MAKE_NUM(DATADIR_BOARD, 117), -1 }; static void (*itemFuncTbl[])(void) = { ExecItemMini, ExecItemMega, ExecItemMiniSuper, ExecItemMegaSuper, ExecItemHammer, ExecItemPipe, ExecItemSwap, ExecItemSpark, ExecItemLight, ExecItemWhistle, ExecItemBowser, ExecItemBooBall, ExecItemGenie, ExecItemBag }; @@ -1183,7 +1183,7 @@ static void ExecItemSpark(void) BoardModelLayerSet(temp_r30, 3); BoardModelVisibilitySet(temp_r30, 0); HuAudFXPlay(0x350); - suitMdl = BoardModelCreate(itemMdlTbl[currItem], lbl_801D37A0, 0); + suitMdl = BoardModelCreate(itemMdlTbl[currItem], itemMotTbl, 0); BoardModelLayerSet(suitMdl, 2); ItemShowProc(NULL, NULL); temp_r28 = GWPlayer[currItemRestore].space_curr; diff --git a/src/game/board/main.c b/src/game/board/main.c index e244e4df..eaa31aa0 100644 --- a/src/game/board/main.c +++ b/src/game/board/main.c @@ -403,8 +403,11 @@ static void MainFunc(void) if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { BoardTutorialWorkSave(); BoardTutorialPlayerInit(); - GWSystem.mess_speed = 1; - GWSystem.mess_delay = 32; + #if VERSION_PAL + GWMessSpeedSet(3); + #else + GWMessSpeedSet(1); + #endif } CreateBoard(); if(!_CheckFlag(FLAG_ID_MAKE(1, 1))) { diff --git a/src/game/board/roll.c b/src/game/board/roll.c index fecf6dd3..c52bd6a5 100755 --- a/src/game/board/roll.c +++ b/src/game/board/roll.c @@ -139,6 +139,71 @@ s32 BoardRollExec(s32 arg0) return destMode; } +static void RollWinCreate(s32 playerNo) +{ + float sp8[2]; + float posX; + float posY; + s32 var_r29; + s32 var_r27; + s32 temp_r25; + + if (!_CheckFlag(FLAG_ID_MAKE(1, 11))) { + var_r27 = BoardPlayerItemCount(playerNo); + if (GWTeamGet()) { + temp_r25 = BoardPlayerSameTeamFind(playerNo); + var_r27 += BoardPlayerItemCount(temp_r25); + } + if (BoardItemPrevGet() != -1 || var_r27 == 0 || _CheckFlag(FLAG_ID_MAKE(1, 9)) || BoardMegaDoubleDiceCheck()) { + var_r29 = MAKE_MESSID(0x09, 0x04); + } + else { + var_r29 = MAKE_MESSID(0x09, 0x02); + } + if (inputTimer != 0) { + var_r29 = MAKE_MESSID(0x30, 0x25); + } + HuWinMesMaxSizeGet(1, sp8, var_r29); + #if VERSION_PAL + posY = HU_DISP_HEIGHT - 176; + switch (GWGameStat.language) { + case 0: + case 4: + posX = -10000.0f; + break; + + case 3: + posX = HU_DISP_CENTERX - (sp8[0] / 2 - 32.0f); + break; + + case 5: + posX = HU_DISP_CENTERX - (sp8[0] / 2 - 16.0f); + posY = 258; + break; + + default: + posX = HU_DISP_CENTERX - (sp8[0] / 2 - 16.0f); + break; + } + #else + switch (GWGameStat.language) { + case 0: + posX = -10000.0f; + break; + case 1: + posX = HU_DISP_CENTERX - (sp8[0] / 2 - 16.0f); + break; + } + posY = HU_DISP_HEIGHT - 176; + #endif + + rollWin = HuWinCreate(posX, posY, sp8[0], sp8[1], 0); + HuWinBGTPLvlSet(rollWin, 0.0f); + HuWinMesSpeedSet(rollWin, 0); + HuWinMesSet(rollWin, var_r29); + } +} + void BoardRollKill(void) { if (rollProc) { @@ -177,15 +242,11 @@ void BoardRollWinDispSet(s32 arg0) static void RollMain(void) { - float sp8[2]; - float var_f31; - float var_f30; + s32 var_r28; - s32 var_r27; - s32 temp_r26; - s32 temp_r25; + s32 var_r30; - s32 var_r29; + s32 i; diceValue[0] = diceValue[1] = diceValue[2] = 0; @@ -195,37 +256,7 @@ static void RollMain(void) BoardCameraMotionWait(); BoardCameraTargetModelSet(-1); for (i = 0; i < numDice; i++) { - temp_r26 = rollPlayer; - if (!_CheckFlag(FLAG_ID_MAKE(1, 11))) { - var_r27 = BoardPlayerItemCount(temp_r26); - if (GWTeamGet()) { - temp_r25 = BoardPlayerSameTeamFind(temp_r26); - var_r27 += BoardPlayerItemCount(temp_r25); - } - if (BoardItemPrevGet() != -1 || var_r27 == 0 || _CheckFlag(FLAG_ID_MAKE(1, 9)) || BoardMegaDoubleDiceCheck()) { - var_r29 = MAKE_MESSID(0x09, 0x04); - } - else { - var_r29 = MAKE_MESSID(0x09, 0x02); - } - if (inputTimer != 0) { - var_r29 = MAKE_MESSID(0x30, 0x25); - } - HuWinMesMaxSizeGet(1, sp8, var_r29); - switch (GWGameStat.language) { - case 0: - var_f31 = -10000.0f; - break; - case 1: - var_f31 = HU_DISP_CENTERX - (sp8[0] / 2 - 16.0f); - break; - } - var_f30 = HU_DISP_HEIGHT - 176; - rollWin = HuWinCreate(var_f31, var_f30, sp8[0], sp8[1], 0); - HuWinBGTPLvlSet(rollWin, 0.0f); - HuWinMesSpeedSet(rollWin, 0); - HuWinMesSet(rollWin, var_r29); - } + RollWinCreate(rollPlayer); DiceCreate(i); DiceWaitFull(i); DoInput(i); diff --git a/src/game/board/shop.c b/src/game/board/shop.c index 92198602..47b332c3 100755 --- a/src/game/board/shop.c +++ b/src/game/board/shop.c @@ -984,7 +984,12 @@ static void CreateShopItemChoice(s32 arg0, s32 arg1) { omObjData *temp_r30; ItemChoiceWork *var_r31; s16 spC; - + s16 i; + #if VERSION_PAL + for(i=0; i<6; i++) { + cursorPosTbl[i][0] = 190; + } + #endif temp_r30 = omAddObjEx(boardObjMan, 0x7E01, 0, 0, -1, UpdateShopItemChoice); itemChoiceObj = temp_r30; itemChoice = -1; @@ -996,11 +1001,29 @@ static void CreateShopItemChoice(s32 arg0, s32 arg1) { var_r31->unk02 = 0; var_r31->unk03 = arg1; var_r31->unk06 = HuSprGrpCreate(1); + #if VERSION_PAL + if (GWLanguageGet() != 0) { + s16 winId = BoardWinIDGet(); + if(winId != -1) { + WindowData *winP = &winData[winId]; + for(i=0; i<6; i++) { + cursorPosTbl[i][0] = winP->pos_x+96; + } + } else { + for(i=0; i<6; i++) { + cursorPosTbl[i][0] = 166; + } + } + } + temp_r30->trans.x = cursorPosTbl[0][0]; + temp_r30->trans.y = cursorPosTbl[0][1]; + #else temp_r30->trans.x = cursorPosTbl[0][0]; temp_r30->trans.y = cursorPosTbl[0][1]; if (GWLanguageGet() != 0) { temp_r30->trans.x -= 24.0f; } + #endif if (GWPlayer[arg0].com) { var_r31->unk01 = GWMessDelayGet(); } @@ -1032,9 +1055,11 @@ static void MoveShopItemChoice(omObjData *arg0, ItemChoiceWork *arg1) { temp_r28 = arg1->unk02; arg0->trans.x = cursorPosTbl[arg1->unk02][0]; arg0->trans.y = cursorPosTbl[arg1->unk02][1]; + #if VERSION_NTSC if (GWLanguageGet() != 0) { arg0->trans.x -= 24.0f; } + #endif if (GWPlayer[arg1->unk00_field1].com) { GetShopItemChoiceInput(arg1, arg0, &sp8); } else { diff --git a/src/game/board/star.c b/src/game/board/star.c index f4579aa8..3f2a0ba5 100755 --- a/src/game/board/star.c +++ b/src/game/board/star.c @@ -74,7 +74,7 @@ static Process *starProc; static s16 starParman = -1; static s16 hostMdl = -1; -const s32 lbl_8011E040[9] = { +static const s32 starMesTbl1[9] = { MAKE_MESSID(12, 0), MAKE_MESSID(12, 9), MAKE_MESSID(12, 18), @@ -86,7 +86,7 @@ const s32 lbl_8011E040[9] = { MAKE_MESSID(12, 0) }; -const s32 lbl_8011E064[9][2] = { +static const s32 starMesTbl2[9][2] = { { MAKE_MESSID(21, 34), MAKE_MESSID(21, 40) }, { MAKE_MESSID(21, 35), MAKE_MESSID(21, 41) }, { MAKE_MESSID(21, 36), MAKE_MESSID(21, 42) }, @@ -249,12 +249,12 @@ static void ExecStar(void) { BoardCameraViewSet(3); BoardCameraMotionWait(); if (GWStarsGet(temp_r31) >= 999) { - temp_r29 = lbl_8011E040[temp_r27] + 5; + temp_r29 = starMesTbl1[temp_r27] + 5; BoardWinCreate(0, temp_r29, BoardWinPortraitGetStar()); BoardWinWait(); BoardWinKill(); } else if (BoardPlayerCoinsGet(temp_r31) < 20 && GWSystem.last5_effect != 4) { - temp_r29 = lbl_8011E040[temp_r27] + 2; + temp_r29 = starMesTbl1[temp_r27] + 2; BoardWinCreate(2, temp_r29, BoardWinPortraitGetStar()); BoardWinWait(); BoardWinKill(); @@ -263,7 +263,7 @@ static void ExecStar(void) { while (!BoardStatusStopCheck(0) || !BoardStatusStopCheck(1) || !BoardStatusStopCheck(2) || !BoardStatusStopCheck(3)) { HuPrcVSleep(); } - temp_r29 = lbl_8011E040[temp_r27]; + temp_r29 = starMesTbl1[temp_r27]; BoardWinCreate(2, temp_r29, BoardWinPortraitGetStar()); BoardWinInsertMesSet(BoardPlayerGetCharMess(temp_r31), 0); BoardWinWait(); @@ -275,12 +275,12 @@ static void ExecStar(void) { HuPrcVSleep(); } if (GWSystem.last5_effect == 4) { - temp_r29 = lbl_8011E040[temp_r27] + 8; + temp_r29 = starMesTbl1[temp_r27] + 8; BoardWinCreate(2, temp_r29, BoardWinPortraitGetStar()); BoardWinWait(); break; } - temp_r29 = lbl_8011E040[temp_r27] + 1; + temp_r29 = starMesTbl1[temp_r27] + 1; BoardWinCreateChoice(1, temp_r29, BoardWinPortraitGetStar(), 0); BoardWinAttrSet(0x10); if (GWPlayer[temp_r31].com) { @@ -294,7 +294,7 @@ static void ExecStar(void) { switch (BoardWinChoiceGet()) { case 0: if (BoardPlayerCoinsGet(temp_r31) < 20) { - temp_r29 = lbl_8011E040[temp_r27] + 2; + temp_r29 = starMesTbl1[temp_r27] + 2; BoardWinCreate(2, temp_r29, BoardWinPortraitGetStar()); BoardWinWait(); BoardStatusShowSet(temp_r31, 0); @@ -306,7 +306,7 @@ static void ExecStar(void) { } goto block_A; case 1: - temp_r29 = lbl_8011E040[temp_r27] + 4; + temp_r29 = starMesTbl1[temp_r27] + 4; BoardWinCreate(2, temp_r29, BoardWinPortraitGetStar()); BoardWinWait(); BoardStatusShowSet(temp_r31, 0); @@ -326,7 +326,7 @@ static void ExecStar(void) { } } block_A: - temp_r29 = lbl_8011E040[temp_r27] + 3; + temp_r29 = starMesTbl1[temp_r27] + 3; BoardWinCreate(2, temp_r29, BoardWinPortraitGetStar()); BoardWinWait(); BoardWinKill(); @@ -734,9 +734,9 @@ void BoardStarShowNext(s32 arg0) { HuPrcVSleep(); } if (var_r28 == 0) { - var_r30 = lbl_8011E040[GWBoardGet()] + 6; + var_r30 = starMesTbl1[GWBoardGet()] + 6; } else { - var_r30 = lbl_8011E064[GWBoardGet()][0]; + var_r30 = starMesTbl2[GWBoardGet()][0]; } BoardWinCreate(3, var_r30, -1); BoardWinPause(); @@ -748,9 +748,9 @@ void BoardStarShowNext(s32 arg0) { BoardWinKill(); HuPrcSleep(3); if (var_r28 == 0) { - var_r30 = lbl_8011E040[GWBoardGet()] + 7; + var_r30 = starMesTbl1[GWBoardGet()] + 7; } else { - var_r30 = lbl_8011E064[GWBoardGet()][1]; + var_r30 = starMesTbl2[GWBoardGet()][1]; } BoardWinCreate(3, var_r30, -1); BoardWinWait(); diff --git a/src/game/board/ui.c b/src/game/board/ui.c index d8f89499..4259f29d 100755 --- a/src/game/board/ui.c +++ b/src/game/board/ui.c @@ -1951,28 +1951,32 @@ static void UpdateItemWindow(omObjData *arg0) { static void CreatePickerWindow(UnkUiWork01 *arg0, s32 arg1) { float spC[2]; - float var_f31; - float var_f30; - float var_f29; + + float posX; + float posY; + float yOfs; s32 var_r30; - + #if VERSION_NTSC switch (GWGameStat.language) { case 1: - var_f31 = 0.0f; + yOfs = 0.0f; break; case 0: - var_f31 = 0.0f; + yOfs = 0.0f; break; } + #else + yOfs = 0; + #endif if (arg1 != 0) { var_r30 = MAKE_MESSID(0x10, 0x1A); } else { var_r30 = MAKE_MESSID(0x10, 0x1B); } HuWinMesMaxSizeGet(1, spC, var_r30); - var_f30 = -10000.0f; - var_f29 = var_f31 + (HU_DISP_HEIGHT-128); - arg0->unk06 = HuWinCreate(var_f30, var_f29, spC[0], spC[1], 0); + posX = -10000.0f; + posY = yOfs + (HU_DISP_HEIGHT-128); + arg0->unk06 = HuWinCreate(posX, posY, spC[0], spC[1], 0); HuWinBGTPLvlSet(arg0->unk06, 0.0f); HuWinMesSpeedSet(arg0->unk06, 0); HuWinMesSet(arg0->unk06, var_r30); diff --git a/src/game/board/view.c b/src/game/board/view.c index 369f16f7..72d5b4b3 100755 --- a/src/game/board/view.c +++ b/src/game/board/view.c @@ -396,20 +396,32 @@ static void DestroyFocus(void) { static void CreateButtonWin(void) { float sp8[2]; - float var_f31; - float var_f30; + float posX; + float posY; s32 var_r31; if (viewControls != 2) { var_r31 = MAKE_MESSID(0x09, 0x05); - var_f31 = 286.0f; + #if VERSION_PAL + HuWinMesMaxSizeGet(1, sp8, var_r31); + posX = 288-((sp8[0]/2)-32); + #endif + posY = 286.0f; } else { var_r31 = MAKE_MESSID(0x10, 0x4D); - var_f31 = 328.0f; + #if VERSION_PAL + posX = -10000.0f; + posY = 324.0f; + #else + posY = 328.0f; + #endif + } HuWinMesMaxSizeGet(1, sp8, var_r31); - var_f30 = -10000.0f; - buttonWin = HuWinCreate(var_f30, var_f31, sp8[0], sp8[1], 0); + #if VERSION_NTSC + posX = -10000.0f; + #endif + buttonWin = HuWinCreate(posX, posY, sp8[0], sp8[1], 0); HuWinBGTPLvlSet(buttonWin, 0.0f); HuWinMesSpeedSet(buttonWin, 0); HuWinMesSet(buttonWin, var_r31); diff --git a/src/game/board/window.c b/src/game/board/window.c index 447f45e0..4fbc3f45 100644 --- a/src/game/board/window.c +++ b/src/game/board/window.c @@ -97,6 +97,11 @@ static void ExecBoardWindow(void) { if (size[0] <= size_win[0]) { size[0] = size_win[0]; pos[0] = pos_win[0]; + #if VERSION_PAL + if(winPosIdx == 1) { + size[0] += 4; + } + #endif } else { pos[0] = -10000.0f; } @@ -338,7 +343,7 @@ s32 BoardWinPortraitGetStar(void) { void BoardWinPlayerSet(s32 player) { s32 i; - + #if VERSION_NTSC if (player == -1) { if (GWPartyGet() != 1) { for (i = 0, disablePlayer = i; i < 4; i++) { @@ -354,6 +359,21 @@ void BoardWinPlayerSet(s32 player) { } else { disablePlayer = ~(1 << GWPlayer[player].port); } + #else + if (player == -1) { + if (GWPartyGet() != 1) { + for (i = 0, disablePlayer = i; i < 4; i++) { + if (GWPlayer[i].com != 0) { + disablePlayer |= 1 << GWPlayer[i].port; + } + } + } else { + disablePlayer = 0; + } + } else { + disablePlayer = ~(1 << GWPlayer[player].port); + } + #endif if (_CheckFlag(FLAG_ID_MAKE(1, 11)) != 0) { disablePlayer = 0; } @@ -405,4 +425,9 @@ void BoardWinStartComKeySet(void) { void BoardWinComKeyFuncSet(BoardWinComKeyFunc func) { comKeyFunc = func; +} + +s16 BoardWinIDGet(void) +{ + return windowID; } \ No newline at end of file diff --git a/src/game/data.c b/src/game/data.c index e630d7ed..f76419c5 100644 --- a/src/game/data.c +++ b/src/game/data.c @@ -6,7 +6,7 @@ #define PTR_OFFSET(ptr, offset) (void *)(((u8 *)(ptr)+(u32)(offset))) #define DATA_EFF_SIZE(size) (((size)+1) & ~0x1) -static void **HuDataReadMultiSub(s32 *data_ids, BOOL use_num, s32 num); +void **HuDataReadMultiSub(s32 *data_ids, BOOL use_num, s32 num); #define DATA_MAX_READSTAT 128 @@ -406,7 +406,7 @@ void **HuDataReadMulti(s32 *data_ids) return HuDataReadMultiSub(data_ids, FALSE, 0); } -static void **HuDataReadMultiSub(s32 *data_ids, BOOL use_num, s32 num) +void **HuDataReadMultiSub(s32 *data_ids, BOOL use_num, s32 num) { s32 *dir_ids; char **paths; diff --git a/src/game/decode.c b/src/game/decode.c index 6414b269..db70b788 100644 --- a/src/game/decode.c +++ b/src/game/decode.c @@ -8,7 +8,7 @@ struct decode_data u32 size; }; -static u8 TextBuffer[1024]; +static u8 textBuffer[1024]; static void HuDecodeNone(struct decode_data *decode) { @@ -27,7 +27,7 @@ static void HuDecodeLz(struct decode_data *decode) for(i=0; i<1024; i++) { - TextBuffer[i] = 0; + textBuffer[i] = 0; } while(decode->size) { flag >>= 1; @@ -35,7 +35,7 @@ static void HuDecodeLz(struct decode_data *decode) flag = (*decode->src++)|0xFF00; } if(flag & 0x1) { - TextBuffer[pos++] = *decode->dst++ = *decode->src++; + textBuffer[pos++] = *decode->dst++ = *decode->src++; pos = pos & 0x3FF; decode->size--; } else { @@ -44,7 +44,7 @@ static void HuDecodeLz(struct decode_data *decode) i |= ((copy_len & ~0x3F) << 2); copy_len = (copy_len & 0x3F)+3; for(j=0; jdst++ = TextBuffer[(i+j) & 0x3FF]; + textBuffer[pos++] = *decode->dst++ = textBuffer[(i+j) & 0x3FF]; pos &= 0x3FF; } decode->size -= j; diff --git a/src/game/hsfanim.c b/src/game/hsfanim.c index d0d7a579..7de7763f 100755 --- a/src/game/hsfanim.c +++ b/src/game/hsfanim.c @@ -24,7 +24,7 @@ typedef struct { /* 0x3C */ HsfanimStruct00 *unk3C; } ParManProcUserData; // Size 0x40 -static void _Hu3DParticleAttrReset(ModelData *arg0, Mtx arg1); +static void particleFunc(ModelData *arg0, Mtx arg1); static void ParManFunc(void); static void ParManHook(ModelData *arg0, ParticleData *arg1, Mtx matrix); @@ -493,7 +493,7 @@ s16 Hu3DParticleCreate(AnimData *arg0, s16 arg1) { s16 i; void *temp_r24; - temp_r25 = Hu3DHookFuncCreate((void*) &_Hu3DParticleAttrReset); + temp_r25 = Hu3DHookFuncCreate((void*) &particleFunc); temp_r28 = &Hu3DData[temp_r25]; Hu3DModelAttrSet(temp_r25, HU3D_ATTR_PARTICLE_KILL); temp_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(ParticleData), temp_r28->unk_48); @@ -658,7 +658,7 @@ static float baseST[] = { 1.0f, 1.0f, 0.0f, 1.0f }; -static void _Hu3DParticleAttrReset(ModelData *arg0, Mtx arg1) { +static void particleFunc(ModelData *arg0, Mtx arg1) { Vec *var_r30; float temp_f31; float temp_f29; diff --git a/src/game/sreset.c b/src/game/sreset.c index ae00c3cf..2ddadd51 100644 --- a/src/game/sreset.c +++ b/src/game/sreset.c @@ -4,6 +4,9 @@ #include "game/pad.h" #include "game/audio.h" #include "game/thpmain.h" +#include "game/gamework_data.h" + +#include "version.h" #define SR_DVD_LOADING 0 #define SR_DVD_COVER_OPEN 1 @@ -19,6 +22,8 @@ extern s32 HuDvdErrWait; static s32 SR_PreRstChk[4] = {}; +#if VERSION_NTSC + #include "coveropen_en.inc" #include "fatalerror_en.inc" #include "loading_en.inc" @@ -26,6 +31,45 @@ static s32 SR_PreRstChk[4] = {}; #include "retryerror_en.inc" #include "wrongdisc_en.inc" +#else + +#include "coveropen_en.inc" +#include "fatalerror_en.inc" +#include "loading_en.inc" +#include "nodisc_en.inc" +#include "retryerror_en.inc" +#include "wrongdisc_en.inc" + +#include "coveropen_fr.inc" +#include "fatalerror_fr.inc" +#include "loading_fr.inc" +#include "nodisc_fr.inc" +#include "retryerror_fr.inc" +#include "wrongdisc_fr.inc" + +#include "coveropen_ge.inc" +#include "fatalerror_ge.inc" +#include "loading_ge.inc" +#include "nodisc_ge.inc" +#include "retryerror_ge.inc" +#include "wrongdisc_ge.inc" + +#include "coveropen_it.inc" +#include "fatalerror_it.inc" +#include "loading_it.inc" +#include "nodisc_it.inc" +#include "retryerror_it.inc" +#include "wrongdisc_it.inc" + +#include "coveropen_sp.inc" +#include "fatalerror_sp.inc" +#include "loading_sp.inc" +#include "nodisc_sp.inc" +#include "retryerror_sp.inc" +#include "wrongdisc_sp.inc" + +#endif + static s16 SR_PushTime[4] = {}; static s8 SR_ResetPad = -1; @@ -103,9 +147,17 @@ void HuDvdErrDispInit(GXRenderModeObj *rmode, void *xfb1, void *xfb2) XfbW = (u16)(((u16)rmode->fbWidth+15) & ~0xF); XfbH = rmode->xfbHeight; } else { + #if VERSION_NTSC XfbW = 640; XfbH = 480; + #else + XfbW = 640; + XfbH = 528; + #endif } + #if VERSION_PAL + (void)(VIGetTvFormat() == VI_PAL); + #endif if((u16)rmode->xFBmode == VI_XFBMODE_SF) { XfbProg = 0; } else { @@ -223,20 +275,39 @@ static void ToeDispCheck(void) _HuDvdErrDispXFB(status); } +#if VERSION_NTSC + +#define XFB_SIZE 0x96000 + +#else + +#define XFB_SIZE (XfbW*XfbH*2) + +#endif + static void _HuDvdErrDispXFB(s32 error) { + #if VERSION_NTSC static void *bmpMes[][6] = { loading_en, coveropen_en, nodisc_en, wrongdisc_en, retryerror_en, fatalerror_en }; - volatile s32 status; - u8 color[2]; - s8 language; + #else + static void *bmpMes[][6] = { + loading_en, coveropen_en, nodisc_en, wrongdisc_en, retryerror_en, fatalerror_en, + loading_fr, coveropen_fr, nodisc_fr, wrongdisc_fr, retryerror_fr, fatalerror_fr, + loading_ge, coveropen_ge, nodisc_ge, wrongdisc_ge, retryerror_ge, fatalerror_ge, + loading_it, coveropen_it, nodisc_it, wrongdisc_it, retryerror_it, fatalerror_it, + loading_sp, coveropen_sp, nodisc_sp, wrongdisc_sp, retryerror_sp, fatalerror_sp + }; + #endif + s16 *bmpData; u8 *xfb1_ptr; u8 *xfb2_ptr; u32 i; u32 data; u32 row; + s8 language; u32 *xfb1; u32 *xfb2; u32 j; @@ -246,25 +317,59 @@ static void _HuDvdErrDispXFB(s32 error) u32 *data_ptr; u32 row_offset; u32 row_pitch; + void *tempfb1; + void *tempfb2; + s32 status; + u8 color[2]; + + + #if VERSION_PAL + switch(GWGameStat.language) { + case 2: + language = 2; + break; + + case 3: + language = 1; + break; + + case 4: + language = 3; + break; + + case 5: + language = 4; + break; + + default: + language = 0; + break; + } + #else language = 0; + #endif xfb1 = Xfb[0]; xfb2 = Xfb[1]; - for(i=0; i<0x25800; i++, xfb1++, xfb2++) { + for(i=0; i>= 2, xfb1_ptr += 4, xfb2_ptr += 4) { @@ -290,8 +395,8 @@ static void _HuDvdErrDispXFB(s32 error) } } } - DCStoreRangeNoSync(sp14[1], bmpData[0]*2); - DCStoreRangeNoSync(sp14[0], bmpData[0]*2); + DCStoreRangeNoSync(tempfb1, bmpData[0]*2); + DCStoreRangeNoSync(tempfb2, bmpData[0]*2); } status = DVDGetDriveStatus(); while(status) { diff --git a/src/game/wipe.c b/src/game/wipe.c index f3902d7e..aa7c1d9a 100644 --- a/src/game/wipe.c +++ b/src/game/wipe.c @@ -3,6 +3,7 @@ #include "game/memory.h" #include "game/flag.h" #include "game/board/tutorial.h" +#include "version.h" s16 HuSysVWaitGet(s16 old); @@ -141,6 +142,11 @@ void WipeCreate(s16 mode, s16 type, s16 duration) void WipeColorSet(u8 r, u8 g, u8 b) { + #if VERSION_PAL + if(r > 160 && g > 160 && b > 160) { + r = g = b = 160; + } + #endif wipeData.color.r = r; wipeData.color.g = g; wipeData.color.b = b; From ae81b60c47147cbbe0192bc224ed90d5733f0ba8 Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Sat, 16 Nov 2024 15:01:59 -0600 Subject: [PATCH 006/178] Port some RELs to PAL (#465) --- config/GMPP01_00/rels/E3setupDLL/splits.txt | 15 + config/GMPP01_00/rels/E3setupDLL/symbols.txt | 359 +++++++++--------- config/GMPP01_00/rels/_minigameDll/splits.txt | 8 + .../GMPP01_00/rels/_minigameDll/symbols.txt | 2 +- config/GMPP01_00/rels/instDll/splits.txt | 14 + config/GMPP01_00/rels/instDll/symbols.txt | 2 +- config/GMPP01_00/rels/mentDll/splits.txt | 12 + config/GMPP01_00/rels/mentDll/symbols.txt | 3 +- configure.py | 12 +- src/REL/instDll/main.c | 64 +++- src/REL/mentDll/main.c | 55 ++- 11 files changed, 349 insertions(+), 197 deletions(-) diff --git a/config/GMPP01_00/rels/E3setupDLL/splits.txt b/config/GMPP01_00/rels/E3setupDLL/splits.txt index 531cd645..d5a4c674 100644 --- a/config/GMPP01_00/rels/E3setupDLL/splits.txt +++ b/config/GMPP01_00/rels/E3setupDLL/splits.txt @@ -5,3 +5,18 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/E3setupDLL/mgselect.c: + .text start:0x00000000 end:0x0000133C + .rodata start:0x00000000 end:0x00000088 + .data start:0x00000000 end:0x00000250 + .bss start:0x00000000 end:0x00000028 + +REL/executor.c: + .text start:0x0000133C end:0x000013DC + +REL/E3setupDLL/main.c: + .text start:0x000013DC end:0x00005850 + .rodata start:0x00000088 end:0x00000130 + .data start:0x00000250 end:0x000004D0 + .bss start:0x00000028 end:0x000000F8 diff --git a/config/GMPP01_00/rels/E3setupDLL/symbols.txt b/config/GMPP01_00/rels/E3setupDLL/symbols.txt index 382731fd..4089dcf6 100644 --- a/config/GMPP01_00/rels/E3setupDLL/symbols.txt +++ b/config/GMPP01_00/rels/E3setupDLL/symbols.txt @@ -1,168 +1,179 @@ -fn_2_0 = .text:0x00000000; // type:function size:0x324 -fn_2_324 = .text:0x00000324; // type:function size:0x9C -fn_2_3C0 = .text:0x000003C0; // type:function size:0xA0 -fn_2_460 = .text:0x00000460; // type:function size:0x584 -fn_2_9E4 = .text:0x000009E4; // type:function size:0x528 -fn_2_F0C = .text:0x00000F0C; // type:function size:0x80 -fn_2_F8C = .text:0x00000F8C; // type:function size:0x1AC -fn_2_1138 = .text:0x00001138; // type:function size:0x14 -fn_2_114C = .text:0x0000114C; // type:function size:0x1F0 +E3MGSelectInit = .text:0x00000000; // type:function size:0x324 +StartMGSelect = .text:0x00000324; // type:function size:0x9C scope:local +UpdatePad = .text:0x000003C0; // type:function size:0xA0 scope:local +UpdateMGSelect = .text:0x00000460; // type:function size:0x584 scope:local +CreateMGSelect = .text:0x000009E4; // type:function size:0x528 scope:local +UpdateMGPic = .text:0x00000F0C; // type:function size:0x80 scope:local +CreateMGPic = .text:0x00000F8C; // type:function size:0x1AC scope:local +UpdateMGInterface = .text:0x00001138; // type:function size:0x14 scope:local +CreateMGInterface = .text:0x0000114C; // type:function size:0x1F0 scope:local _prolog = .text:0x0000133C; // type:function size:0x54 scope:global _epilog = .text:0x00001390; // type:function size:0x4C scope:global -fn_2_13DC = .text:0x000013DC; // type:function size:0x108 -fn_2_14E4 = .text:0x000014E4; // type:function size:0x514 -fn_2_19F8 = .text:0x000019F8; // type:function size:0x1AC -fn_2_1BA4 = .text:0x00001BA4; // type:function size:0x7C -fn_2_1C20 = .text:0x00001C20; // type:function size:0x84 -fn_2_1CA4 = .text:0x00001CA4; // type:function size:0x90 -fn_2_1D34 = .text:0x00001D34; // type:function size:0x24 -fn_2_1D58 = .text:0x00001D58; // type:function size:0xFC -fn_2_1E54 = .text:0x00001E54; // type:function size:0x1C0 -fn_2_2014 = .text:0x00002014; // type:function size:0x78 -fn_2_208C = .text:0x0000208C; // type:function size:0x2C -fn_2_20B8 = .text:0x000020B8; // type:function size:0xA4 -fn_2_215C = .text:0x0000215C; // type:function size:0x400 -fn_2_255C = .text:0x0000255C; // type:function size:0x124 -fn_2_2680 = .text:0x00002680; // type:function size:0x74 -fn_2_26F4 = .text:0x000026F4; // type:function size:0x344 -fn_2_2A38 = .text:0x00002A38; // type:function size:0x59C -fn_2_2FD4 = .text:0x00002FD4; // type:function size:0x208 -fn_2_31DC = .text:0x000031DC; // type:function size:0x37C -fn_2_3558 = .text:0x00003558; // type:function size:0x3B4 -fn_2_390C = .text:0x0000390C; // type:function size:0xAC -fn_2_39B8 = .text:0x000039B8; // type:function size:0x2B8 -fn_2_3C70 = .text:0x00003C70; // type:function size:0x534 -fn_2_41A4 = .text:0x000041A4; // type:function size:0x2DC -fn_2_4480 = .text:0x00004480; // type:function size:0x520 -fn_2_49A0 = .text:0x000049A0; // type:function size:0x59C -fn_2_4F3C = .text:0x00004F3C; // type:function size:0x4E8 -fn_2_5424 = .text:0x00005424; // type:function size:0x100 -fn_2_5524 = .text:0x00005524; // type:function size:0x184 -fn_2_56A8 = .text:0x000056A8; // type:function size:0x7C -fn_2_5724 = .text:0x00005724; // type:function size:0x12C +ObjectSetup = .text:0x000013DC; // type:function size:0x108 +E3MainInit = .text:0x000014E4; // type:function size:0x514 +E3LightInit = .text:0x000019F8; // type:function size:0x1AC +GetStickX = .text:0x00001BA4; // type:function size:0x7C scope:local +GetStickY = .text:0x00001C20; // type:function size:0x84 scope:local +GetBtn = .text:0x00001CA4; // type:function size:0x90 scope:local +GetBtnDown = .text:0x00001D34; // type:function size:0x24 scope:local +E3PadUpdate = .text:0x00001D58; // type:function size:0xFC +E3PadRead = .text:0x00001E54; // type:function size:0x1C0 +MotionMaxTimeGet = .text:0x00002014; // type:function size:0x78 +MotionShiftTimeGet = .text:0x0000208C; // type:function size:0x2C +InitMenuControl = .text:0x000020B8; // type:function size:0xA4 scope:local +UpdateMenuControl = .text:0x0000215C; // type:function size:0x400 scope:local +UpdateOvlWatch = .text:0x0000255C; // type:function size:0x124 scope:local +E3OvlWatchInit = .text:0x00002680; // type:function size:0x74 +UpdatePlayerCnt = .text:0x000026F4; // type:function size:0x344 scope:local +InitPlayerCnt = .text:0x00002A38; // type:function size:0x59C scope:local +UpdateCharSelCursor = .text:0x00002FD4; // type:function size:0x208 scope:local +UpdateCharSelPlayerCursor = .text:0x000031DC; // type:function size:0x37C scope:local +UpdateCharSelComCursor = .text:0x00003558; // type:function size:0x3B4 scope:local +CheckCharSel = .text:0x0000390C; // type:function size:0xAC scope:local +UpdateCharSel = .text:0x000039B8; // type:function size:0x2B8 scope:local +InitCharSel = .text:0x00003C70; // type:function size:0x534 scope:local +UpdateRumbleCfg = .text:0x000041A4; // type:function size:0x2DC scope:local +InitRumbleCfg = .text:0x00004480; // type:function size:0x520 scope:local +UpdateModeSel = .text:0x000049A0; // type:function size:0x59C scope:local +InitModeSel = .text:0x00004F3C; // type:function size:0x4E8 scope:local +E3BGUpdate = .text:0x00005424; // type:function size:0x100 scope:local +E3BGCreate = .text:0x00005524; // type:function size:0x184 +InitCamera = .text:0x000056A8; // type:function size:0x7C scope:local +UpdateCamera = .text:0x00005724; // type:function size:0x12C scope:local _ctors = .ctors:0x00000000; // type:label scope:global data:4byte _dtors = .dtors:0x00000000; // type:label scope:global data:4byte -lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float -lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float -lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float -lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float -lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float -lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float -lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float -lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float -lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float -lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float -lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float -lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float -lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float -lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_2_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_2_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float -lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float -lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float -lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float -lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:float -lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float -lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float -lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float -lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float -lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float -lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float -lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float -lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float -lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float -lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float -lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_2_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 data:float -lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float -lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float -lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float -lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float -lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_2_data_24 = .data:0x00000024; // type:object size:0x1A -lbl_2_data_3E = .data:0x0000003E; // type:object size:0x1A -lbl_2_data_58 = .data:0x00000058; // type:object size:0x1C -lbl_2_data_74 = .data:0x00000074; // type:object size:0x34 -lbl_2_data_A8 = .data:0x000000A8; // type:object size:0x21 -lbl_2_data_C9 = .data:0x000000C9; // type:object size:0x16 -lbl_2_data_DF = .data:0x000000DF; // type:object size:0x16 -lbl_2_data_F5 = .data:0x000000F5; // type:object size:0x16 -lbl_2_data_10B = .data:0x0000010B; // type:object size:0xD -lbl_2_data_118 = .data:0x00000118; // type:object size:0x16 -lbl_2_data_12E = .data:0x0000012E; // type:object size:0xD -lbl_2_data_13B = .data:0x0000013B; // type:object size:0x16 -lbl_2_data_151 = .data:0x00000151; // type:object size:0x16 -lbl_2_data_167 = .data:0x00000167; // type:object size:0x16 -lbl_2_data_17D = .data:0x0000017D; // type:object size:0x16 -lbl_2_data_193 = .data:0x00000193; // type:object size:0x16 -lbl_2_data_1A9 = .data:0x000001A9; // type:object size:0x4B -lbl_2_data_1F4 = .data:0x000001F4; // type:object size:0x14 -lbl_2_data_208 = .data:0x00000208; // type:object size:0x34 -lbl_2_data_23C = .data:0x0000023C; // type:object size:0x14 -lbl_2_data_250 = .data:0x00000250; // type:object size:0xC -lbl_2_data_25C = .data:0x0000025C; // type:object size:0xC -lbl_2_data_268 = .data:0x00000268; // type:object size:0x6C -lbl_2_data_2D4 = .data:0x000002D4; // type:object size:0x8 -lbl_2_data_2DC = .data:0x000002DC; // type:object size:0x10 -lbl_2_data_2EC = .data:0x000002EC; // type:object size:0x20 -lbl_2_data_30C = .data:0x0000030C; // type:object size:0x1C -lbl_2_data_328 = .data:0x00000328; // type:object size:0x10 -lbl_2_data_338 = .data:0x00000338; // type:object size:0x40 -lbl_2_data_378 = .data:0x00000378; // type:object size:0x20 -lbl_2_data_398 = .data:0x00000398; // type:object size:0x10 -lbl_2_data_3A8 = .data:0x000003A8; // type:object size:0x20 -lbl_2_data_3C8 = .data:0x000003C8; // type:object size:0x14 -lbl_2_data_3DC = .data:0x000003DC; // type:object size:0x14 -lbl_2_data_3F0 = .data:0x000003F0; // type:object size:0x8 -lbl_2_data_3F8 = .data:0x000003F8; // type:object size:0x10 -lbl_2_data_408 = .data:0x00000408; // type:object size:0x10 -lbl_2_data_418 = .data:0x00000418; // type:object size:0x60 -lbl_2_data_478 = .data:0x00000478; // type:object size:0x24 -lbl_2_data_49C = .data:0x0000049C; // type:object size:0x34 +lbl_2_rodata_0 = .rodata:0x00000000; // type:object size:0x10 +lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 scope:local data:float +lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float +lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 scope:local data:float +lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 scope:local data:float +lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 scope:local data:float +lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 scope:local data:float +lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_2_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local data:float +lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 scope:local data:float +lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 scope:local data:float +lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 scope:local data:float +lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:float +lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 scope:local data:float +lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 scope:local data:float +lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 scope:local data:float +lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_2_data_0 = .data:0x00000000; // type:object size:0x24 data:float +lbl_2_data_24 = .data:0x00000024; // type:object size:0x11 scope:local data:string +lbl_2_data_36 = .data:0x00000036; // type:object size:0x8 +mgOvlTbl = .data:0x0000003E; // type:object size:0x1A scope:local +mgIdTbl = .data:0x00000058; // type:object size:0x1C scope:local +mgNameTbl = .data:0x00000074; // type:object size:0x34 scope:local +lbl_2_data_A8 = .data:0x000000A8; // type:object size:0x21 data:string +lbl_2_data_C9 = .data:0x000000C9; // type:object size:0x16 data:string +lbl_2_data_DF = .data:0x000000DF; // type:object size:0x16 data:string +lbl_2_data_F5 = .data:0x000000F5; // type:object size:0x16 data:string +lbl_2_data_10B = .data:0x0000010B; // type:object size:0xD data:string +lbl_2_data_118 = .data:0x00000118; // type:object size:0x16 data:string +lbl_2_data_12E = .data:0x0000012E; // type:object size:0xD data:string +lbl_2_data_13B = .data:0x0000013B; // type:object size:0x16 data:string +lbl_2_data_151 = .data:0x00000151; // type:object size:0x16 data:string +lbl_2_data_167 = .data:0x00000167; // type:object size:0x16 data:string +lbl_2_data_17D = .data:0x0000017D; // type:object size:0x16 data:string +lbl_2_data_193 = .data:0x00000193; // type:object size:0x16 data:string +lbl_2_data_1A9 = .data:0x000001A9; // type:object size:0x16 data:string +mgNameTestTbl = .data:0x000001C0; // type:object size:0x34 scope:local +cursorYOfsTbl = .data:0x000001F4; // type:object size:0x14 scope:local data:float +mgPicTbl = .data:0x00000208; // type:object size:0x34 scope:local +startText = .data:0x0000023C; // type:object size:0x10 scope:local data:string +shadowPos = .data:0x00000250; // type:object size:0xC scope:local +shadowTarget = .data:0x0000025C; // type:object size:0xC scope:local +shadowUp = .data:0x00000268; // type:object size:0xC scope:local +lbl_2_data_274 = .data:0x00000274; // type:object size:0x60 data:float +playerCntTbl = .data:0x000002D4; // type:object size:0x8 scope:local +charTbl = .data:0x000002DC; // type:object size:0x10 scope:local +charSfxTbl = .data:0x000002EC; // type:object size:0x20 scope:local +lbl_2_data_30C = .data:0x0000030C; // type:object size:0x12 scope:local +lbl_2_data_31E = .data:0x0000031E; // type:object size:0x8 +playerCntMessTbl = .data:0x00000328; // type:object size:0x10 scope:local +charPosTbl = .data:0x00000338; // type:object size:0x40 scope:local data:float +charComSfxTbl = .data:0x00000378; // type:object size:0x20 scope:local +lbl_2_data_398 = .data:0x00000398; // type:object size:0xF scope:local data:string +charSpriteTbl = .data:0x000003A8; // type:object size:0x20 scope:local +cursorSpriteTbl = .data:0x000003C8; // type:object size:0x14 scope:local +hiliteSprTbl = .data:0x000003DC; // type:object size:0x14 scope:local +rumbleMess = .data:0x000003F0; // type:object size:0x8 scope:local +modeSelCursorPosTbl = .data:0x000003F8; // type:object size:0x10 scope:local +boardSelCursorPosTbl = .data:0x00000408; // type:object size:0x10 scope:local +camViewTbl = .data:0x00000418; // type:object size:0x60 scope:local data:float +lbl_2_data_478 = .data:0x00000478; // type:object size:0x24 data:float +lbl_2_data_49C = .data:0x0000049C; // type:object size:0x24 data:float +lbl_2_data_4C0 = .data:0x000004C0; // type:object size:0x10 +lbl_2_bss_0 = .bss:0x00000000; // type:object size:0xA data:2byte lbl_2_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte lbl_2_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_2_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte lbl_2_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte lbl_2_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_2_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_2_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_2_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_2_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_2_bss_28 = .bss:0x00000028; // type:object size:0xC data:2byte +mgPicObj = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +mgSelectObj = .bss:0x0000001C; // type:object size:0x4 scope:local data:4byte +mgInterfaceObj = .bss:0x00000020; // type:object size:0x4 scope:local data:4byte +mgDefault = .bss:0x00000024; // type:object size:0x2 scope:local data:2byte +repBtn = .bss:0x00000028; // type:object size:0x2 scope:local data:2byte +lbl_2_bss_2A = .bss:0x0000002A; // type:object size:0xA data:2byte lbl_2_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte lbl_2_bss_36 = .bss:0x00000036; // type:object size:0x2 data:2byte +lbl_2_bss_38 = .bss:0x00000038; // type:object size:0x2 data:2byte lbl_2_bss_3A = .bss:0x0000003A; // type:object size:0x2 data:2byte lbl_2_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte lbl_2_bss_40 = .bss:0x00000040; // type:object size:0x2 data:2byte @@ -171,22 +182,24 @@ lbl_2_bss_48 = .bss:0x00000048; // type:object size:0xC data:float lbl_2_bss_54 = .bss:0x00000054; // type:object size:0xC data:float lbl_2_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte lbl_2_bss_62 = .bss:0x00000062; // type:object size:0x8 -lbl_2_bss_6A = .bss:0x0000006A; // type:object size:0x6 data:2byte -lbl_2_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_2_bss_74 = .bss:0x00000074; // type:object size:0x18 data:4byte -lbl_2_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_2_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte -lbl_2_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte -lbl_2_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte -lbl_2_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:float -lbl_2_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_2_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte -lbl_2_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte -lbl_2_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lightE3 = .bss:0x0000006A; // type:object size:0x2 scope:local data:2byte +lbl_2_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:2byte +e3BGObj = .bss:0x00000070; // type:object size:0x4 data:4byte +configModeObj = .bss:0x00000074; // type:object size:0x10 scope:local data:4byte +lbl_2_bss_84 = .bss:0x00000084; // type:object size:0x8 data:4byte +cameraObj = .bss:0x0000008C; // type:object size:0x4 scope:local data:4byte +e3OvlWatchObj = .bss:0x00000090; // type:object size:0x4 data:4byte +e3ViewObj = .bss:0x00000094; // type:object size:0x4 data:4byte +e3MenuMainObj = .bss:0x00000098; // type:object size:0x4 data:4byte +e3CameraFov = .bss:0x0000009C; // type:object size:0x4 data:float +needCharKill = .bss:0x000000A0; // type:object size:0x4 scope:local data:4byte +e3ExitMode = .bss:0x000000A4; // type:object size:0x4 data:4byte +e3NextEvent = .bss:0x000000A8; // type:object size:0x4 data:4byte +e3NextOvl = .bss:0x000000AC; // type:object size:0x4 data:4byte lbl_2_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte -lbl_2_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte -lbl_2_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_2_bss_BC = .bss:0x000000BC; // type:object size:0x2 data:2byte -lbl_2_bss_BE = .bss:0x000000BE; // type:object size:0x2 data:2byte -lbl_2_bss_C0 = .bss:0x000000C0; // type:object size:0x20 -lbl_2_bss_E0 = .bss:0x000000E0; // type:object size:0x18 data:2byte +e3ExitEnableF = .bss:0x000000B4; // type:object size:0x4 data:4byte +e3EvtNo = .bss:0x000000B8; // type:object size:0x4 scope:local data:4byte +e3ConfigPlayerCnt = .bss:0x000000BC; // type:object size:0x2 data:2byte +e3PadCtrl = .bss:0x000000BE; // type:object size:0x2 data:2byte +e3PadData = .bss:0x000000C0; // type:object size:0x20 +configE3 = .bss:0x000000E0; // type:object size:0x18 scope:local data:2byte diff --git a/config/GMPP01_00/rels/_minigameDll/splits.txt b/config/GMPP01_00/rels/_minigameDll/splits.txt index be323846..7a4d7e18 100644 --- a/config/GMPP01_00/rels/_minigameDll/splits.txt +++ b/config/GMPP01_00/rels/_minigameDll/splits.txt @@ -4,3 +4,11 @@ Sections: .dtors type:rodata align:4 .rodata type:rodata align:8 .data type:data align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/_minigameDLL/_minigameDLL.c: + .text start:0x000000A0 end:0x000000F0 + .rodata start:0x00000000 end:0x00000010 + .data start:0x00000000 end:0x00000014 diff --git a/config/GMPP01_00/rels/_minigameDll/symbols.txt b/config/GMPP01_00/rels/_minigameDll/symbols.txt index 5c4a5ab3..032e2444 100644 --- a/config/GMPP01_00/rels/_minigameDll/symbols.txt +++ b/config/GMPP01_00/rels/_minigameDll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2C +ObjectSetup = .text:0x000000A0; // type:function size:0x2C fn_1_CC = .text:0x000000CC; // type:function size:0x24 _ctors = .ctors:0x00000000; // type:label scope:global data:4byte _dtors = .dtors:0x00000000; // type:label scope:global data:4byte diff --git a/config/GMPP01_00/rels/instDll/splits.txt b/config/GMPP01_00/rels/instDll/splits.txt index 531cd645..83d6ff27 100644 --- a/config/GMPP01_00/rels/instDll/splits.txt +++ b/config/GMPP01_00/rels/instDll/splits.txt @@ -5,3 +5,17 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/instDll/main.c: + .text start:0x000000A0 end:0x00005EA4 + .rodata start:0x00000000 end:0x00000208 + .data start:0x00000000 end:0x00000150 + .bss start:0x00000000 end:0x00000064 + +REL/instDll/font.c: + .text start:0x00005EA4 end:0x0000629C + .rodata start:0x00000208 end:0x00000210 + .data start:0x00000150 end:0x00000610 diff --git a/config/GMPP01_00/rels/instDll/symbols.txt b/config/GMPP01_00/rels/instDll/symbols.txt index d927e6ae..5cb1ad79 100644 --- a/config/GMPP01_00/rels/instDll/symbols.txt +++ b/config/GMPP01_00/rels/instDll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x8F4 +ObjectSetup = .text:0x000000A0; // type:function size:0x8F4 fn_1_994 = .text:0x00000994; // type:function size:0xE50 fn_1_17E4 = .text:0x000017E4; // type:function size:0xA28 fn_1_220C = .text:0x0000220C; // type:function size:0x5F8 diff --git a/config/GMPP01_00/rels/mentDll/splits.txt b/config/GMPP01_00/rels/mentDll/splits.txt index 531cd645..6f4f419c 100644 --- a/config/GMPP01_00/rels/mentDll/splits.txt +++ b/config/GMPP01_00/rels/mentDll/splits.txt @@ -5,3 +5,15 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mentDll/common.c: + .text start:0x00000000 end:0x0000658C + .rodata start:0x00000000 end:0x000000E8 + .data start:0x00000000 end:0x000000D8 + .bss start:0x00000000 end:0x00000008 + +REL/mentDll/main.c: + .text start:0x0000658C end:0x000238C4 + .rodata start:0x000000E8 end:0x00000520 + .data start:0x000000D8 end:0x000006D0 + .bss start:0x00000008 end:0x000036C4 diff --git a/config/GMPP01_00/rels/mentDll/symbols.txt b/config/GMPP01_00/rels/mentDll/symbols.txt index 8e7e77e2..7d00e49a 100644 --- a/config/GMPP01_00/rels/mentDll/symbols.txt +++ b/config/GMPP01_00/rels/mentDll/symbols.txt @@ -417,7 +417,8 @@ lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x20 lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x64 data:float lbl_1_data_640 = .data:0x00000640; // type:object size:0x50 data:4byte lbl_1_data_690 = .data:0x00000690; // type:object size:0x40 data:4byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x14 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x10 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x40 data:4byte lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x44 data:float diff --git a/configure.py b/configure.py index ba94ebfe..ea0272c0 100644 --- a/configure.py +++ b/configure.py @@ -829,7 +829,7 @@ config.libs = [ Rel( "_minigameDLL", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/_minigameDLL/_minigameDLL.c"), + Object(Matching, "REL/_minigameDLL/_minigameDLL.c"), }, ), Rel( @@ -842,14 +842,14 @@ config.libs = [ Rel( "E3setupDLL", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/mgselect.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/main.c"), + Object(Matching, "REL/E3setupDLL/mgselect.c"), + Object(Matching, "REL/E3setupDLL/main.c"), }, ), Rel( "instDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/main.c"), + Object(Matching, "REL/instDll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/font.c"), }, ), @@ -1300,8 +1300,8 @@ config.libs = [ Rel( "mentDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/common.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/main.c"), + Object(Matching, "REL/mentDll/common.c"), + Object(Matching, "REL/mentDll/main.c"), }, ), Rel( diff --git a/src/REL/instDll/main.c b/src/REL/instDll/main.c index 3dbcc0a4..45308b70 100644 --- a/src/REL/instDll/main.c +++ b/src/REL/instDll/main.c @@ -689,7 +689,11 @@ static void fn_1_2804(void) HuWinMesPalSet(window, 7, 0, 0, 192); HuWinPosSet(window_other, 142.0f, 320.0f); for (i = 0; i <= 10; i++) { + #if VERSION_NTSC HuWinPosSet(window_other, 30.0 * sind(i * 9.0f) + 142.0, 160.0 * (1.0 - cosd(i * 9.0f)) + 320.0); + #else + HuWinPosSet(window_other, 30.0 * sind(i * 9.0f) + 142.0, 180.0 * (1.0 - cosd(i * 9.0f)) + 320.0); + #endif HuPrcVSleep(); } HuPrcSleep(5); @@ -711,6 +715,12 @@ static void fn_1_2804(void) static float lbl_1_data_124[] = { 420, 70, 488, 186, 476, 242, 400, 292 }; +#if VERSION_NTSC +#define WIN_ANIM_OFS 201 +#else +#define WIN_ANIM_OFS 219 +#endif + static void fn_1_2FA0(void) { float temp_f31; @@ -763,20 +773,39 @@ static void fn_1_2FA0(void) temp_r29++; } + #if VERSION_NTSC if (temp_r26 == 1) { temp_r22 = spC[0]; temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); - temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 227.0f; + temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 227; temp_f28 = 78; temp_f27 = 0.5f; } else { temp_r22 = (spC[0] > spC[1]) ? spC[0] : spC[1]; temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 15)); + temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 172.0f; temp_f28 = 84; temp_f27 = 1.0f; } + #else + if (temp_r26 == 1) { + temp_r22 = spC[0]; + temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); + temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 235; + temp_f28 = 78; + temp_f27 = 0.5f; + } + else { + temp_r22 = (spC[0] > spC[1]) ? spC[0] : spC[1]; + temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 15)); + + temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 235; + temp_f28 = 84; + temp_f27 = 1.0f; + } + #endif temp_r25 = HuSprGrpCreate(1); temp_r17 = HuSprCreate(temp_r28, 0, 0); HuSprGrpMemberSet(temp_r25, 0, temp_r17); @@ -809,13 +838,13 @@ static void fn_1_2FA0(void) HuWinMesSet(sp10[2], lbl_1_bss_10 + MAKE_MESSID(0x24, 0x02)); HuWinBGTPLvlSet(sp10[2], 0.0f); HuWinMesSpeedSet(sp10[2], 0); - temp_r31 = HuWinAnimSet(sp10[2], temp_r28, 0, 201, 18); + temp_r31 = HuWinAnimSet(sp10[2], temp_r28, 0, WIN_ANIM_OFS, 18); HuWinSprPriSet(sp10[2], temp_r31, 1000); temp_r27 = HuWinCreate(1000, 292, 456, 42, 0); HuWinBGTPLvlSet(temp_r27, 0.0f); HuWinMesSpeedSet(temp_r27, 0); HuWinMesSet(temp_r27, lbl_1_bss_10 + MAKE_MESSID(0x24, 0x02)); - temp_r31 = HuWinAnimSet(temp_r27, temp_r28, 0, 201, 18); + temp_r31 = HuWinAnimSet(temp_r27, temp_r28, 0, WIN_ANIM_OFS, 18); HuWinPriSet(temp_r27, 10); HuWinSprPriSet(temp_r27, temp_r31, 11); while (lbl_1_data_0 != 0) { @@ -824,12 +853,21 @@ static void fn_1_2FA0(void) for (temp_r31 = 0; temp_r31 < 36; temp_r31++) { temp_f30 = temp_r31; if (temp_f30 <= 20.0f) { + #if VERSION_NTSC temp_f31 = 300.0 * cosd(4.5f * temp_f30) + temp_f29; HuSprGrpPosSet(temp_r25, temp_f31, temp_f28); temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (576.0f - (temp_r22 / 2) - 24.0f); for (temp_r30 = 0; temp_r30 < temp_r26; temp_r30++) { HuSprGrpPosSet(work.spr_grp[temp_r30], temp_f31, (temp_r30 * 28) + 70); } + #else + temp_f31 = 500.0 * cosd(4.5f * temp_f30) + temp_f29; + HuSprGrpPosSet(temp_r25, temp_f31, temp_f28); + temp_f31 = 500.0 * cosd(4.5f * temp_f30) + (576.0f - (temp_r22 / 2) - 24.0f); + for (temp_r30 = 0; temp_r30 < temp_r26; temp_r30++) { + HuSprGrpPosSet(work.spr_grp[temp_r30], temp_f31, (temp_r30 * 28) + 70); + } + #endif } temp_f30 = temp_r31 - 3; if (temp_f30 > 0.0f) { @@ -837,7 +875,11 @@ static void fn_1_2FA0(void) temp_f31 = 300.0 * cosd(4.5f * temp_f30) + lbl_1_data_124[2]; HuSprGrpPosSet(temp_r24, temp_f31, 186.0f); temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (lbl_1_data_124[2] - 88.0f); + #if VERSION_NTSC HuWinPosSet(sp10[0], 16.0f + temp_f31, 168.0f); + #else + HuWinPosSet(sp10[0], 8.0f + temp_f31, 168.0f); + #endif } } temp_f30 = temp_r31 - 6; @@ -846,13 +888,17 @@ static void fn_1_2FA0(void) temp_f31 = 300.0 * cosd(4.5f * temp_f30) + lbl_1_data_124[4]; HuSprGrpPosSet(temp_r23, temp_f31, 242.0f); temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (lbl_1_data_124[4] - 100.0f); + #if VERSION_NTSC HuWinPosSet(sp10[1], 16.0f + temp_f31, 224.0f); + #else + HuWinPosSet(sp10[1], 8.0f + temp_f31, 224.0f); + #endif } } temp_f30 = temp_r31 - 9; if (temp_f30 > 0.0f) { if (temp_f30 <= 20.0f) { - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (lbl_1_data_124[6] - 217.0f); + temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (lbl_1_data_124[6] - (WIN_ANIM_OFS+16)); HuWinPosSet(sp10[2], 16.0f + temp_f31, 274.0f); } } @@ -860,7 +906,7 @@ static void fn_1_2FA0(void) } while (lbl_1_data_0 != 3) { if (temp_r21 != lbl_1_bss_6) { - temp_f31 = 16.0f + (lbl_1_data_124[6] - 217.0f); + temp_f31 = 16.0f + (lbl_1_data_124[6] - (WIN_ANIM_OFS+16)); HuWinMesSet(temp_r27, MAKE_MESSID(0x24, 0x02) + lbl_1_bss_10 + temp_r21); temp_r21 = lbl_1_bss_6; if (lbl_1_bss_6 == 1) { @@ -875,7 +921,11 @@ static void fn_1_2FA0(void) HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x02) + lbl_1_bss_10 + lbl_1_bss_6); } for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) { + #if VERSION_NTSC HuWinPosSet(temp_r27, 30.0 * sind(temp_r31 * 9.0f) + temp_f31, 200.0 * (1.0 - cosd(temp_r31 * 9.0f)) + 274.0); + #else + HuWinPosSet(temp_r27, 30.0 * sind(temp_r31 * 9.0f) + temp_f31, 220.0 * (1.0 - cosd(temp_r31 * 9.0f)) + 274.0); + #endif HuPrcVSleep(); } } @@ -897,7 +947,11 @@ static void fn_1_2FA0(void) HuSprGrpPosSet(temp_r23, temp_f31, 242.0f); temp_f31 = (lbl_1_data_124[4] - 100.0f) + (300.0f * temp_f30); HuWinPosSet(sp10[1], 16.0f + temp_f31, 224); + #if VERSION_NTSC temp_f31 = (lbl_1_data_124[6] - 184.0f) + (400.0f * temp_f30); + #else + temp_f31 = (lbl_1_data_124[6] - 235.0f) + (400.0f * temp_f30); + #endif HuWinPosSet(sp10[2], 16.0f + temp_f31, 274); HuPrcVSleep(); } diff --git a/src/REL/mentDll/main.c b/src/REL/mentDll/main.c index 4b75201f..847ac234 100644 --- a/src/REL/mentDll/main.c +++ b/src/REL/mentDll/main.c @@ -3768,6 +3768,8 @@ s32 lbl_1_data_5BC[4][2] = { { 0x77, 0x18 }, { 0xA5, 0x18 }, }; + +#if VERSION_NTSC float lbl_1_data_5DC[5][5] = { { 262.0f, 119.0f, 1.3f, 227.0f, 455.0f }, { 314.0f, 168.0f, 0.75f, 265.0f, 416.0f }, @@ -3775,6 +3777,16 @@ float lbl_1_data_5DC[5][5] = { { 418.0f, 240.0f, 0.75f, 300.0f, 381.0f }, { -1.0f, 289.0f, 1.3f, 220.0f, 460.0f }, }; +#else +float lbl_1_data_5DC[5][5] = { + { 262.0f, 119.0f, 1.3f, 227.0f, 455.0f }, + { 314.0f, 168.0f, 0.75f, 300.0f, 381.0f }, + { 366.0f, 204.0f, 0.75f, 240.0f, 440.0f }, + { 418.0f, 240.0f, 0.75f, 300.0f, 381.0f }, + { -1.0f, 289.0f, 1.3f, 220.0f, 460.0f }, +}; +#endif + s32 lbl_1_data_640[4][5] = { { 0xB4, 0x60, 0x87, 0, 0 }, { 0xFC, 0xB8, 0xF6, 0xD4, 0x1D4 }, @@ -4633,6 +4645,18 @@ void fn_1_18F74(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) } } +#if VERSION_PAL + +#define POSX1 353 +#define POSX2 325 + +#else + +#define POSX1 321 +#define POSX2 295 + +#endif + void fn_1_190E8(void) { s32 var_r31; @@ -4690,16 +4714,18 @@ void fn_1_190E8(void) HuSprPosSet(var_r30, 0x47, 340.0f, lbl_1_data_5DC[0][1]); HuSprScaleSet(var_r30, 0x47, 0.0f, 0.0f); HuSprAttrReset(var_r30, 0x47, 4); + #if VERSION_NTSC HuSprAttrReset(var_r30, 0x48, 4); HuSprPosSet(var_r30, 0x48, 366.0f, lbl_1_data_5DC[1][1]); HuSprAttrReset(var_r30, 0x49, 4); HuSprPosSet(var_r30, 0x49, 367.0f, 2.0f + lbl_1_data_5DC[1][1]); + #endif for (var_r31 = 0; var_r31 < 2; var_r31++) { HuSprAttrReset(var_r30, var_r31 + 0x4A, 4); - HuSprPosSet(var_r30, var_r31 + 0x4A, 0x141 - (var_r31 * 0x1A), lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, var_r31 + 0x4A, POSX1 - (var_r31 * (POSX1-POSX2)), lbl_1_data_5DC[1][1]); HuSprBankSet(var_r30, var_r31 + 0x4A, var_r31); HuSprAttrReset(var_r30, var_r31 + 0x4C, 4); - HuSprPosSet(var_r30, var_r31 + 0x4C, 0x142 - (var_r31 * 0x1A), 2.0f + lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, var_r31 + 0x4C, POSX1+1 - (var_r31 * (POSX1-POSX2)), 2.0f + lbl_1_data_5DC[1][1]); HuSprBankSet(var_r30, var_r31 + 0x4C, var_r31); } HuSprAttrReset(var_r30, 0x4E, 4); @@ -4964,23 +4990,29 @@ void fn_1_19C98(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) break; case 1: if (var_r26 == 1) { + #if VERSION_NTSC HuSprPosSet(var_r30, 0x48, 366.0f + var_f31, lbl_1_data_5DC[1][1]); HuSprPosSet(var_r30, 0x49, 367.0f + var_f31, 2.0f + lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4A, 321.0f + var_f31, lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4C, 322.0f + var_f31, 2.0f + lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4B, 295.0f + var_f31, lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4D, 296.0f + var_f31, 2.0f + lbl_1_data_5DC[1][1]); + #endif + HuSprPosSet(var_r30, 0x4A, POSX1 + var_f31, lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, 0x4C, POSX1+1 + var_f31, 2.0f + lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, 0x4B, POSX2 + var_f31, lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, 0x4D, POSX2+1 + var_f31, 2.0f + lbl_1_data_5DC[1][1]); } else { + #if VERSION_NTSC HuSprPosSet(var_r30, 0x48, 366.0f - var_f31, lbl_1_data_5DC[1][1]); HuSprPosSet(var_r30, 0x49, 367.0f - var_f31, 2.0f + lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4A, 321.0f - var_f31, lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4C, 322.0f - var_f31, 2.0f + lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4B, 295.0f - var_f31, lbl_1_data_5DC[1][1]); - HuSprPosSet(var_r30, 0x4D, 296.0f - var_f31, 2.0f + lbl_1_data_5DC[1][1]); + #endif + HuSprPosSet(var_r30, 0x4A, POSX1 - var_f31, lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, 0x4C, POSX1+1 - var_f31, 2.0f + lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, 0x4B, POSX2 - var_f31, lbl_1_data_5DC[1][1]); + HuSprPosSet(var_r30, 0x4D, POSX2+1 - var_f31, 2.0f + lbl_1_data_5DC[1][1]); } + #if VERSION_NTSC HuSprScaleSet(var_r30, 0x48, 1.0f, var_f30); HuSprScaleSet(var_r30, 0x49, 1.0f, var_f30); + #endif HuSprScaleSet(var_r30, 0x4A, 1.0f, var_f30); HuSprScaleSet(var_r30, 0x4C, 1.0f, var_f30); HuSprScaleSet(var_r30, 0x4B, 1.0f, var_f30); @@ -5103,6 +5135,9 @@ void fn_1_19C98(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) } } +#undef POSX2 +#undef POSX1 + void fn_1_1BB2C(MentDllUnkBss35BCStruct *arg0, s32 arg1, s32 arg2, s32 arg3) { s32 var_r31; From 03e0dedb8e4837ec98692568387366e536679ce9 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sat, 16 Nov 2024 23:17:35 +0100 Subject: [PATCH 007/178] More PAL porting (#466) * Use US splits for PAl w10, w20, w21 * Port m450 and option to PAL * Matched m420dll for PAL * Port m429Dll * Port m431Dll to PAL --- config/GMPP01_00/config.yml | 17 +- config/GMPP01_00/rels/m420dll/splits.txt | 29 + config/GMPP01_00/rels/m420dll/symbols.txt | 413 +++++------ config/GMPP01_00/rels/m429Dll/splits.txt | 6 + config/GMPP01_00/rels/m429Dll/symbols.txt | 442 ++++++------ config/GMPP01_00/rels/m431Dll/splits.txt | 15 + config/GMPP01_00/rels/m431Dll/symbols.txt | 406 +++++------ config/GMPP01_00/rels/m450Dll/splits.txt | 6 + config/GMPP01_00/rels/m450Dll/symbols.txt | 833 +++++++++++----------- config/GMPP01_00/rels/option/splits.txt | 54 ++ config/GMPP01_00/rels/option/symbols.txt | 740 +++++++++---------- config/GMPP01_00/rels/w10Dll/splits.txt | 33 - config/GMPP01_00/rels/w10Dll/symbols.txt | 116 --- config/GMPP01_00/rels/w20Dll/splits.txt | 17 - config/GMPP01_00/rels/w20Dll/symbols.txt | 33 - config/GMPP01_00/rels/w21Dll/splits.txt | 15 - config/GMPP01_00/rels/w21Dll/symbols.txt | 18 - config/GMPP01_02/config.yml | 12 +- configure.py | 40 +- include/REL/m431Dll.h | 183 ++--- include/version.h | 6 + src/REL/m402Dll/main.c | 14 +- src/REL/m405Dll/main.c | 14 +- src/REL/m420dll/main.c | 14 +- src/REL/m429Dll/main.c | 47 +- src/REL/m431Dll/main.c | 53 +- src/REL/m431Dll/object.c | 28 +- src/REL/m432Dll/main.c | 14 +- src/REL/m441Dll/main.c | 14 +- src/REL/m444dll/pinball.c | 10 +- src/REL/m450Dll/main.c | 160 ++--- src/REL/m461Dll/main.c | 14 +- src/REL/option/record.c | 25 +- src/REL/option/window.c | 6 +- 34 files changed, 1891 insertions(+), 1956 deletions(-) delete mode 100644 config/GMPP01_00/rels/w10Dll/splits.txt delete mode 100644 config/GMPP01_00/rels/w10Dll/symbols.txt delete mode 100644 config/GMPP01_00/rels/w20Dll/splits.txt delete mode 100644 config/GMPP01_00/rels/w20Dll/symbols.txt delete mode 100644 config/GMPP01_00/rels/w21Dll/splits.txt delete mode 100644 config/GMPP01_00/rels/w21Dll/symbols.txt diff --git a/config/GMPP01_00/config.yml b/config/GMPP01_00/config.yml index 352ced1a..129c2220 100644 --- a/config/GMPP01_00/config.yml +++ b/config/GMPP01_00/config.yml @@ -3,10 +3,9 @@ object: sys/main.dol hash: 65ef91650e9201047f50a3c39c7693a21fff2b29 symbols: config/GMPP01_00/symbols.txt splits: config/GMPP01_00/splits.txt -quick_analysis: false # Faster re-runs after initial analysis +quick_analysis: true # Faster re-runs after initial analysis mw_comment_version: 10 # GC 2.6 linker force_active: [__register_global_object, lbl_801D40D0] - detect_objects: true detect_strings: true fill_gaps: true @@ -473,18 +472,18 @@ modules: links: [] - object: files/dll/w10Dll.rel hash: 5678fedd4a0490aeb9703328e959fdedea7da117 - symbols: config/GMPP01_00/rels/w10Dll/symbols.txt - splits: config/GMPP01_00/rels/w10Dll/splits.txt + symbols: config/GMPE01_00/rels/w10Dll/symbols.txt + splits: config/GMPE01_00/rels/w10Dll/splits.txt links: [] - object: files/dll/w20Dll.rel hash: 58ae9e311cc8bd0291921480f423e2ad4774e1a2 - symbols: config/GMPP01_00/rels/w20Dll/symbols.txt - splits: config/GMPP01_00/rels/w20Dll/splits.txt + symbols: config/GMPE01_00/rels/w20Dll/symbols.txt + splits: config/GMPE01_00/rels/w20Dll/splits.txt links: [] - object: files/dll/w21Dll.rel hash: 8ea052be8c7585a1ab152682a0698b631c5b566f - symbols: config/GMPP01_00/rels/w21Dll/symbols.txt - splits: config/GMPP01_00/rels/w21Dll/splits.txt + symbols: config/GMPE01_00/rels/w21Dll/symbols.txt + splits: config/GMPE01_00/rels/w21Dll/splits.txt links: [] - object: files/dll/ztardll.rel hash: 8987f11fafd11f69161ca275967afe9c8b4e7b20 @@ -654,4 +653,4 @@ extract: header: retryerror_sp.inc - symbol: wrongdisc_sp binary: wrongdisc_sp.bin - header: wrongdisc_sp.inc \ No newline at end of file + header: wrongdisc_sp.inc diff --git a/config/GMPP01_00/rels/m420dll/splits.txt b/config/GMPP01_00/rels/m420dll/splits.txt index 531cd645..08f811fa 100644 --- a/config/GMPP01_00/rels/m420dll/splits.txt +++ b/config/GMPP01_00/rels/m420dll/splits.txt @@ -5,3 +5,32 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m420dll/main.c: + .text start:0x000000A0 end:0x00000D80 + .rodata start:0x00000000 end:0x00000098 + .bss start:0x00000000 end:0x00000030 + +REL/m420dll/camera.c: + .text start:0x00000D80 end:0x00001B74 + .rodata start:0x00000098 end:0x000000F8 + .data start:0x00000000 end:0x00000050 + .bss start:0x00000030 end:0x000000B0 + +REL/m420dll/player.c: + .text start:0x00001B74 end:0x0000494C + .rodata start:0x000000F8 end:0x00000360 + .data start:0x00000050 end:0x00000138 + +REL/m420dll/map.c: + .text start:0x0000494C end:0x0000891C + .rodata start:0x00000360 end:0x00000570 + .data start:0x00000138 end:0x00000171 + .bss start:0x000000B0 end:0x00000A48 + +REL/m420dll/rand.c: + .text start:0x0000891C end:0x00008960 + .bss start:0x00000A48 end:0x00000A4C diff --git a/config/GMPP01_00/rels/m420dll/symbols.txt b/config/GMPP01_00/rels/m420dll/symbols.txt index 8077c937..95aa9732 100644 --- a/config/GMPP01_00/rels/m420dll/symbols.txt +++ b/config/GMPP01_00/rels/m420dll/symbols.txt @@ -1,217 +1,219 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x78 +ObjectSetup = .text:0x000000A0; // type:function size:0x78 fn_1_118 = .text:0x00000118; // type:function size:0x80 fn_1_198 = .text:0x00000198; // type:function size:0x23C fn_1_3D4 = .text:0x000003D4; // type:function size:0x68 fn_1_43C = .text:0x0000043C; // type:function size:0x8C0 -fn_1_CFC = .text:0x00000CFC; // type:function size:0x84 -fn_1_D80 = .text:0x00000D80; // type:function size:0x1B0 -fn_1_F30 = .text:0x00000F30; // type:function size:0x2C -fn_1_F5C = .text:0x00000F5C; // type:function size:0xBC -fn_1_1018 = .text:0x00001018; // type:function size:0xBC -fn_1_10D4 = .text:0x000010D4; // type:function size:0x98 -fn_1_116C = .text:0x0000116C; // type:function size:0x718 -fn_1_1884 = .text:0x00001884; // type:function size:0x214 -fn_1_1A98 = .text:0x00001A98; // type:function size:0xDC -fn_1_1B74 = .text:0x00001B74; // type:function size:0x288 -fn_1_1DFC = .text:0x00001DFC; // type:function size:0x50 -fn_1_1E4C = .text:0x00001E4C; // type:function size:0xB0 -fn_1_1EFC = .text:0x00001EFC; // type:function size:0x40 -fn_1_1F3C = .text:0x00001F3C; // type:function size:0x40 -fn_1_1F7C = .text:0x00001F7C; // type:function size:0x78 -fn_1_1FF4 = .text:0x00001FF4; // type:function size:0xE0 -fn_1_20D4 = .text:0x000020D4; // type:function size:0x30 -fn_1_2104 = .text:0x00002104; // type:function size:0x58 -fn_1_215C = .text:0x0000215C; // type:function size:0x54 -fn_1_21B0 = .text:0x000021B0; // type:function size:0x98 -fn_1_2248 = .text:0x00002248; // type:function size:0x6C -fn_1_22B4 = .text:0x000022B4; // type:function size:0x4A0 -fn_1_2754 = .text:0x00002754; // type:function size:0x574 -fn_1_2CC8 = .text:0x00002CC8; // type:function size:0x9C -fn_1_2D64 = .text:0x00002D64; // type:function size:0x12C -fn_1_2E90 = .text:0x00002E90; // type:function size:0x1F0 -fn_1_3080 = .text:0x00003080; // type:function size:0x1D4 -fn_1_3254 = .text:0x00003254; // type:function size:0x1E4 -fn_1_3438 = .text:0x00003438; // type:function size:0x5C -fn_1_3494 = .text:0x00003494; // type:function size:0xB0 -fn_1_3544 = .text:0x00003544; // type:function size:0x188 -fn_1_36CC = .text:0x000036CC; // type:function size:0x68 -fn_1_3734 = .text:0x00003734; // type:function size:0x40 -fn_1_3774 = .text:0x00003774; // type:function size:0xC8 -fn_1_383C = .text:0x0000383C; // type:function size:0x11C -fn_1_3958 = .text:0x00003958; // type:function size:0x624 -fn_1_3F7C = .text:0x00003F7C; // type:function size:0x300 -fn_1_427C = .text:0x0000427C; // type:function size:0x2E0 -fn_1_455C = .text:0x0000455C; // type:function size:0x1F8 -fn_1_4754 = .text:0x00004754; // type:function size:0x1F8 -fn_1_494C = .text:0x0000494C; // type:function size:0x1008 -fn_1_5954 = .text:0x00005954; // type:function size:0x88 -fn_1_59DC = .text:0x000059DC; // type:function size:0x88 -fn_1_5A64 = .text:0x00005A64; // type:function size:0x2C -fn_1_5A90 = .text:0x00005A90; // type:function size:0x1E4 -fn_1_5C74 = .text:0x00005C74; // type:function size:0x464 -fn_1_60D8 = .text:0x000060D8; // type:function size:0x178 -fn_1_6250 = .text:0x00006250; // type:function size:0x104 -fn_1_6354 = .text:0x00006354; // type:function size:0x80 -fn_1_63D4 = .text:0x000063D4; // type:function size:0x120 -fn_1_64F4 = .text:0x000064F4; // type:function size:0x48 -fn_1_653C = .text:0x0000653C; // type:function size:0x10C -fn_1_6648 = .text:0x00006648; // type:function size:0x10 -fn_1_6658 = .text:0x00006658; // type:function size:0x2C -fn_1_6684 = .text:0x00006684; // type:function size:0x8C -fn_1_6710 = .text:0x00006710; // type:function size:0x7C -fn_1_678C = .text:0x0000678C; // type:function size:0x44 -fn_1_67D0 = .text:0x000067D0; // type:function size:0x28 -fn_1_67F8 = .text:0x000067F8; // type:function size:0x10 -fn_1_6808 = .text:0x00006808; // type:function size:0x64 -fn_1_686C = .text:0x0000686C; // type:function size:0xCC -fn_1_6938 = .text:0x00006938; // type:function size:0x3BC -fn_1_6CF4 = .text:0x00006CF4; // type:function size:0x50 -fn_1_6D44 = .text:0x00006D44; // type:function size:0x94 -fn_1_6DD8 = .text:0x00006DD8; // type:function size:0x440 -fn_1_7218 = .text:0x00007218; // type:function size:0x98 -fn_1_72B0 = .text:0x000072B0; // type:function size:0x98 -fn_1_7348 = .text:0x00007348; // type:function size:0x98 -fn_1_73E0 = .text:0x000073E0; // type:function size:0x100 -fn_1_74E0 = .text:0x000074E0; // type:function size:0x20C -fn_1_76EC = .text:0x000076EC; // type:function size:0x720 -fn_1_7E0C = .text:0x00007E0C; // type:function size:0x41C -fn_1_8228 = .text:0x00008228; // type:function size:0x1D4 -fn_1_83FC = .text:0x000083FC; // type:function size:0x520 -fn_1_891C = .text:0x0000891C; // type:function size:0x10 -fn_1_892C = .text:0x0000892C; // type:function size:0x34 +fn_1_D14 = .text:0x00000CFC; // type:function size:0x84 +fn_1_D98 = .text:0x00000D80; // type:function size:0x1B0 +fn_1_F48 = .text:0x00000F30; // type:function size:0x2C +fn_1_F74 = .text:0x00000F5C; // type:function size:0xBC +fn_1_1030 = .text:0x00001018; // type:function size:0xBC +fn_1_10EC = .text:0x000010D4; // type:function size:0x98 +fn_1_1184 = .text:0x0000116C; // type:function size:0x718 +fn_1_189C = .text:0x00001884; // type:function size:0x214 +fn_1_1AB0 = .text:0x00001A98; // type:function size:0xDC +fn_1_1B8C = .text:0x00001B74; // type:function size:0x288 +fn_1_1E14 = .text:0x00001DFC; // type:function size:0x50 +fn_1_1E64 = .text:0x00001E4C; // type:function size:0xB0 +fn_1_1F14 = .text:0x00001EFC; // type:function size:0x40 +fn_1_1F54 = .text:0x00001F3C; // type:function size:0x40 +fn_1_1F94 = .text:0x00001F7C; // type:function size:0x78 +fn_1_200C = .text:0x00001FF4; // type:function size:0xE0 +fn_1_20EC = .text:0x000020D4; // type:function size:0x30 +fn_1_211C = .text:0x00002104; // type:function size:0x58 +fn_1_2174 = .text:0x0000215C; // type:function size:0x54 +fn_1_21C8 = .text:0x000021B0; // type:function size:0x98 +fn_1_2260 = .text:0x00002248; // type:function size:0x6C +fn_1_22CC = .text:0x000022B4; // type:function size:0x4A0 +fn_1_276C = .text:0x00002754; // type:function size:0x574 +fn_1_2CE0 = .text:0x00002CC8; // type:function size:0x9C +fn_1_2D7C = .text:0x00002D64; // type:function size:0x12C +fn_1_2EA8 = .text:0x00002E90; // type:function size:0x1F0 +fn_1_3098 = .text:0x00003080; // type:function size:0x1D4 +fn_1_326C = .text:0x00003254; // type:function size:0x1E4 +fn_1_3450 = .text:0x00003438; // type:function size:0x5C +fn_1_34AC = .text:0x00003494; // type:function size:0xB0 +fn_1_355C = .text:0x00003544; // type:function size:0x188 +fn_1_36E4 = .text:0x000036CC; // type:function size:0x68 +fn_1_374C = .text:0x00003734; // type:function size:0x40 +fn_1_378C = .text:0x00003774; // type:function size:0xC8 +fn_1_3854 = .text:0x0000383C; // type:function size:0x11C +fn_1_3970 = .text:0x00003958; // type:function size:0x624 +fn_1_3F94 = .text:0x00003F7C; // type:function size:0x300 +fn_1_4294 = .text:0x0000427C; // type:function size:0x2E0 +fn_1_4574 = .text:0x0000455C; // type:function size:0x1F8 +fn_1_476C = .text:0x00004754; // type:function size:0x1F8 +fn_1_4964 = .text:0x0000494C; // type:function size:0x1008 +fn_1_596C = .text:0x00005954; // type:function size:0x88 +fn_1_59F4 = .text:0x000059DC; // type:function size:0x88 +fn_1_5A7C = .text:0x00005A64; // type:function size:0x2C +fn_1_5AA8 = .text:0x00005A90; // type:function size:0x1E4 +fn_1_5C8C = .text:0x00005C74; // type:function size:0x464 +fn_1_60F0 = .text:0x000060D8; // type:function size:0x178 +fn_1_6268 = .text:0x00006250; // type:function size:0x104 +fn_1_636C = .text:0x00006354; // type:function size:0x80 +fn_1_63EC = .text:0x000063D4; // type:function size:0x120 +fn_1_650C = .text:0x000064F4; // type:function size:0x48 +fn_1_6554 = .text:0x0000653C; // type:function size:0x10C +fn_1_6660 = .text:0x00006648; // type:function size:0x10 +fn_1_6670 = .text:0x00006658; // type:function size:0x2C +fn_1_669C = .text:0x00006684; // type:function size:0x8C +fn_1_6728 = .text:0x00006710; // type:function size:0x7C +fn_1_67A4 = .text:0x0000678C; // type:function size:0x44 +fn_1_67E8 = .text:0x000067D0; // type:function size:0x28 +fn_1_6810 = .text:0x000067F8; // type:function size:0x10 +fn_1_6820 = .text:0x00006808; // type:function size:0x64 +fn_1_6884 = .text:0x0000686C; // type:function size:0xCC +fn_1_6950 = .text:0x00006938; // type:function size:0x3BC +fn_1_6D0C = .text:0x00006CF4; // type:function size:0x50 +fn_1_6D5C = .text:0x00006D44; // type:function size:0x94 +fn_1_6DF0 = .text:0x00006DD8; // type:function size:0x440 +fn_1_7230 = .text:0x00007218; // type:function size:0x98 +fn_1_72C8 = .text:0x000072B0; // type:function size:0x98 +fn_1_7360 = .text:0x00007348; // type:function size:0x98 +fn_1_73F8 = .text:0x000073E0; // type:function size:0x100 +fn_1_74F8 = .text:0x000074E0; // type:function size:0x20C +fn_1_7704 = .text:0x000076EC; // type:function size:0x720 +fn_1_7E24 = .text:0x00007E0C; // type:function size:0x41C +fn_1_8240 = .text:0x00008228; // type:function size:0x1D4 +fn_1_8414 = .text:0x000083FC; // type:function size:0x520 +fn_1_8934 = .text:0x0000891C; // type:function size:0x10 +fn_1_8944 = .text:0x0000892C; // type:function size:0x34 _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:0x54 -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x160 -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x60 -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x10 -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x1C -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x6C -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0xC data:4byte -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0xC data:4byte -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x30 data:4byte -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x30 data:4byte -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0xC data:4byte -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E data:string -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x1E data:string -lbl_1_data_3C = .data:0x0000003C; // type:object size:0x14 +__fakeHalf = .rodata:0x00000000; // type:object size:0x8 data:double +__fakeThree = .rodata:0x00000008; // type:object size:0x8 data:double +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x54 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 scope:local data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x160 scope:local +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x60 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x10 scope:local +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x1C scope:local +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x6C scope:local +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0xC scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0xC scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 scope:local data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 scope:local data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 scope:local data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 scope:local data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x30 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x30 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 scope:local data:double +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 scope:local data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E scope:local data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x1E scope:local data:string +lbl_1_data_3C = .data:0x0000003C; // type:object size:0x10 scope:local data:string lbl_1_data_50 = .data:0x00000050; // type:object size:0x80 -lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x1C +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x1B scope:local data:string lbl_1_data_EC = .data:0x000000EC; // type:object size:0x30 -lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0x3 +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 scope:local data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0x1 lbl_1_data_138 = .data:0x00000138; // type:object size:0x1C lbl_1_data_154 = .data:0x00000154; // type:object size:0x10 data:4byte -lbl_1_data_164 = .data:0x00000164; // type:object size:0xD data:string +lbl_1_data_164 = .data:0x00000164; // type:object size:0xD scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte @@ -220,7 +222,8 @@ lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x10 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:float @@ -233,7 +236,7 @@ lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x1C data:4byte lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x1C data:float lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x1C data:float -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x8 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte @@ -245,5 +248,5 @@ lbl_1_bss_9F0 = .bss:0x000009F0; // type:object size:0x38 data:2byte lbl_1_bss_A28 = .bss:0x00000A28; // type:object size:0x4 data:4byte lbl_1_bss_A2C = .bss:0x00000A2C; // type:object size:0x10 data:4byte lbl_1_bss_A3C = .bss:0x00000A3C; // type:object size:0x4 data:4byte -lbl_1_bss_A40 = .bss:0x00000A40; // type:object size:0x8 data:4byte +lbl_1_bss_A40 = .bss:0x00000A40; // type:object size:0x4 data:4byte lbl_1_bss_A48 = .bss:0x00000A48; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m429Dll/splits.txt b/config/GMPP01_00/rels/m429Dll/splits.txt index 531cd645..eddadec6 100644 --- a/config/GMPP01_00/rels/m429Dll/splits.txt +++ b/config/GMPP01_00/rels/m429Dll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m429Dll/main.c: + .text start:0x00000000 end:0x0000EA18 + .rodata start:0x00000000 end:0x00000198 + .data start:0x00000000 end:0x00001510 + .bss start:0x00000000 end:0x00000364 diff --git a/config/GMPP01_00/rels/m429Dll/symbols.txt b/config/GMPP01_00/rels/m429Dll/symbols.txt index 3bd2a26f..5ec24090 100644 --- a/config/GMPP01_00/rels/m429Dll/symbols.txt +++ b/config/GMPP01_00/rels/m429Dll/symbols.txt @@ -7,228 +7,229 @@ fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C fn_1_414 = .text:0x00000414; // type:function size:0x58 fn_1_46C = .text:0x0000046C; // type:function size:0x114 fn_1_580 = .text:0x00000580; // type:function size:0x204 -fn_1_784 = .text:0x00000784; // type:function size:0x240 -fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 -fn_1_A18 = .text:0x00000A18; // type:function size:0x10C -fn_1_B24 = .text:0x00000B24; // type:function size:0x680 -fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C -fn_1_1300 = .text:0x00001300; // type:function size:0x8C -fn_1_138C = .text:0x0000138C; // type:function size:0x334 -fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 -fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 -fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 -fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 -fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 -fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 -fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C -fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 -fn_1_2364 = .text:0x00002364; // type:function size:0x260 -fn_1_25C4 = .text:0x000025C4; // type:function size:0x70 -fn_1_2634 = .text:0x00002634; // type:function size:0x2CC -fn_1_2900 = .text:0x00002900; // type:function size:0x290 -fn_1_2B90 = .text:0x00002B90; // type:function size:0x234 -fn_1_2DC4 = .text:0x00002DC4; // type:function size:0xD8 -fn_1_2E9C = .text:0x00002E9C; // type:function size:0x2BC -fn_1_3158 = .text:0x00003158; // type:function size:0x4 -fn_1_315C = .text:0x0000315C; // type:function size:0xD8 -fn_1_3234 = .text:0x00003234; // type:function size:0x174 -fn_1_33A8 = .text:0x000033A8; // type:function size:0x304 -fn_1_36AC = .text:0x000036AC; // type:function size:0x170 -fn_1_381C = .text:0x0000381C; // type:function size:0x560 -fn_1_3D7C = .text:0x00003D7C; // type:function size:0x254 +fn_1_798 = .text:0x00000784; // type:function size:0x240 +fn_1_9EC = .text:0x000009C4; // type:function size:0x54 +fn_1_A40 = .text:0x00000A18; // type:function size:0x10C +fn_1_B4C = .text:0x00000B24; // type:function size:0x680 +fn_1_11F4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1350 = .text:0x00001300; // type:function size:0x8C +fn_1_13DC = .text:0x0000138C; // type:function size:0x334 +fn_1_1710 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1F24 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F08; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_23B4 = .text:0x00002364; // type:function size:0x260 +fn_1_2614 = .text:0x000025C4; // type:function size:0x70 +fn_1_2684 = .text:0x00002634; // type:function size:0x2CC +fn_1_2950 = .text:0x00002900; // type:function size:0x290 +fn_1_2BE0 = .text:0x00002B90; // type:function size:0x234 +fn_1_2E14 = .text:0x00002DC4; // type:function size:0xD8 +fn_1_2EEC = .text:0x00002E9C; // type:function size:0x2BC +fn_1_31A8 = .text:0x00003158; // type:function size:0x4 +fn_1_31AC = .text:0x0000315C; // type:function size:0xD8 +fn_1_3284 = .text:0x00003234; // type:function size:0x174 +fn_1_33F8 = .text:0x000033A8; // type:function size:0x304 +fn_1_36FC = .text:0x000036AC; // type:function size:0x170 +fn_1_386C = .text:0x0000381C; // type:function size:0x560 +fn_1_3DCC = .text:0x00003D7C; // type:function size:0x254 _prolog = .text:0x00003FD0; // type:function size:0x54 scope:global _epilog = .text:0x00004024; // type:function size:0x4C scope:global -fn_1_4070 = .text:0x00004070; // type:function size:0x164 -fn_1_41D4 = .text:0x000041D4; // type:function size:0xBCC -fn_1_4DA0 = .text:0x00004DA0; // type:function size:0x60 -fn_1_4E00 = .text:0x00004E00; // type:function size:0x25C -fn_1_505C = .text:0x0000505C; // type:function size:0x410 -fn_1_546C = .text:0x0000546C; // type:function size:0x380 -fn_1_57EC = .text:0x000057EC; // type:function size:0x120 -fn_1_590C = .text:0x0000590C; // type:function size:0x380 -fn_1_5C8C = .text:0x00005C8C; // type:function size:0x268 -fn_1_5EF4 = .text:0x00005EF4; // type:function size:0x1154 -fn_1_7048 = .text:0x00007048; // type:function size:0x158 -fn_1_71A0 = .text:0x000071A0; // type:function size:0xB48 -fn_1_7CE8 = .text:0x00007CE8; // type:function size:0x1230 -fn_1_8F18 = .text:0x00008F18; // type:function size:0xA84 -fn_1_999C = .text:0x0000999C; // type:function size:0x4 -fn_1_99A0 = .text:0x000099A0; // type:function size:0x1BC -fn_1_9B5C = .text:0x00009B5C; // type:function size:0x340 -fn_1_9E9C = .text:0x00009E9C; // type:function size:0x1BC -fn_1_A058 = .text:0x0000A058; // type:function size:0x70 -fn_1_A0C8 = .text:0x0000A0C8; // type:function size:0x470 -fn_1_A538 = .text:0x0000A538; // type:function size:0x22C -fn_1_A764 = .text:0x0000A764; // type:function size:0x5C0 -fn_1_AD24 = .text:0x0000AD24; // type:function size:0x2A8 -fn_1_AFCC = .text:0x0000AFCC; // type:function size:0x738 -fn_1_B704 = .text:0x0000B704; // type:function size:0x18C -fn_1_B890 = .text:0x0000B890; // type:function size:0x1D00 -fn_1_D590 = .text:0x0000D590; // type:function size:0x6B4 -fn_1_DC44 = .text:0x0000DC44; // type:function size:0xCD0 -fn_1_E914 = .text:0x0000E914; // type:function size:0x104 +fn_1_40C0 = .text:0x00004070; // type:function size:0x164 +fn_1_4224 = .text:0x000041D4; // type:function size:0xBCC +fn_1_4DF0 = .text:0x00004DA0; // type:function size:0x60 +fn_1_4E50 = .text:0x00004E00; // type:function size:0x25C +fn_1_50AC = .text:0x0000505C; // type:function size:0x410 +fn_1_54BC = .text:0x0000546C; // type:function size:0x380 +fn_1_583C = .text:0x000057EC; // type:function size:0x120 +fn_1_595C = .text:0x0000590C; // type:function size:0x380 +fn_1_5CDC = .text:0x00005C8C; // type:function size:0x268 +fn_1_5F44 = .text:0x00005EF4; // type:function size:0x1154 +fn_1_7098 = .text:0x00007048; // type:function size:0x158 +fn_1_71F0 = .text:0x000071A0; // type:function size:0xB48 +fn_1_7D38 = .text:0x00007CE8; // type:function size:0x1230 +fn_1_8F68 = .text:0x00008F18; // type:function size:0xA84 +fn_1_99EC = .text:0x0000999C; // type:function size:0x4 +fn_1_99F0 = .text:0x000099A0; // type:function size:0x1BC +fn_1_9BAC = .text:0x00009B5C; // type:function size:0x340 +fn_1_9EEC = .text:0x00009E9C; // type:function size:0x1BC +fn_1_A0A8 = .text:0x0000A058; // type:function size:0x70 +fn_1_A118 = .text:0x0000A0C8; // type:function size:0x470 +fn_1_A588 = .text:0x0000A538; // type:function size:0x22C +fn_1_A7B4 = .text:0x0000A764; // type:function size:0x5C0 +fn_1_AD74 = .text:0x0000AD24; // type:function size:0x2A8 +fn_1_B01C = .text:0x0000AFCC; // type:function size:0x738 +fn_1_B754 = .text:0x0000B704; // type:function size:0x18C +fn_1_B8E0 = .text:0x0000B890; // type:function size:0x1D00 +fn_1_D5E8 = .text:0x0000D590; // type:function size:0x6B4 +ObjectSetup = .text:0x0000DC44; // type:function size:0xCD0 +fn_1_E96C = .text:0x0000E914; // type:function size:0x104 _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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_140 = .rodata:0x00000140; // type:object size:0x8 data:double -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_164 = .rodata:0x00000164; // 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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +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_164 = .rodata:0x00000164; // 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:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0xD data:string -lbl_1_data_1D = .data:0x0000001D; // type:object size:0xE data:string -lbl_1_data_2B = .data:0x0000002B; // type:object size:0xE data:string -lbl_1_data_39 = .data:0x00000039; // type:object size:0xE data:string -lbl_1_data_47 = .data:0x00000047; // type:object size:0xD data:string -lbl_1_data_54 = .data:0x00000054; // type:object size:0xD data:string -lbl_1_data_61 = .data:0x00000061; // type:object size:0xE data:string -lbl_1_data_6F = .data:0x0000006F; // type:object size:0xE data:string -lbl_1_data_7D = .data:0x0000007D; // type:object size:0xE data:string -lbl_1_data_8B = .data:0x0000008B; // type:object size:0xD data:string -lbl_1_data_98 = .data:0x00000098; // type:object size:0xE data:string -lbl_1_data_A6 = .data:0x000000A6; // type:object size:0xE data:string -lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xE data:string -lbl_1_data_C2 = .data:0x000000C2; // type:object size:0xD data:string -lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD data:string -lbl_1_data_DC = .data:0x000000DC; // type:object size:0xD data:string -lbl_1_data_E9 = .data:0x000000E9; // type:object size:0xD data:string -lbl_1_data_F6 = .data:0x000000F6; // type:object size:0xE data:string -lbl_1_data_104 = .data:0x00000104; // type:object size:0xE data:string -lbl_1_data_112 = .data:0x00000112; // type:object size:0xE data:string -lbl_1_data_120 = .data:0x00000120; // type:object size:0xE data:string -lbl_1_data_12E = .data:0x0000012E; // type:object size:0xE data:string -lbl_1_data_13C = .data:0x0000013C; // type:object size:0xE data:string -lbl_1_data_14A = .data:0x0000014A; // type:object size:0xE data:string -lbl_1_data_158 = .data:0x00000158; // type:object size:0xE data:string -lbl_1_data_166 = .data:0x00000166; // type:object size:0xE data:string -lbl_1_data_174 = .data:0x00000174; // type:object size:0xE data:string -lbl_1_data_182 = .data:0x00000182; // type:object size:0xE data:string -lbl_1_data_190 = .data:0x00000190; // type:object size:0xE data:string -lbl_1_data_19E = .data:0x0000019E; // type:object size:0xE data:string -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xE data:string -lbl_1_data_1BA = .data:0x000001BA; // type:object size:0xE data:string -lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0xE data:string -lbl_1_data_1D6 = .data:0x000001D6; // type:object size:0xE data:string -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xE data:string -lbl_1_data_1F2 = .data:0x000001F2; // type:object size:0xE data:string -lbl_1_data_200 = .data:0x00000200; // type:object size:0xE data:string -lbl_1_data_20E = .data:0x0000020E; // type:object size:0xE data:string -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0xD scope:local data:string +lbl_1_data_1D = .data:0x0000001D; // type:object size:0xE scope:local data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0xE scope:local data:string +lbl_1_data_39 = .data:0x00000039; // type:object size:0xE scope:local data:string +lbl_1_data_47 = .data:0x00000047; // type:object size:0xD scope:local data:string +lbl_1_data_54 = .data:0x00000054; // type:object size:0xD scope:local data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0xE scope:local data:string +lbl_1_data_6F = .data:0x0000006F; // type:object size:0xE scope:local data:string +lbl_1_data_7D = .data:0x0000007D; // type:object size:0xE scope:local data:string +lbl_1_data_8B = .data:0x0000008B; // type:object size:0xD scope:local data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0xE scope:local data:string +lbl_1_data_A6 = .data:0x000000A6; // type:object size:0xE scope:local data:string +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xE scope:local data:string +lbl_1_data_C2 = .data:0x000000C2; // type:object size:0xD scope:local data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD scope:local data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xD scope:local data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0xD scope:local data:string +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0xE scope:local data:string +lbl_1_data_104 = .data:0x00000104; // type:object size:0xE scope:local data:string +lbl_1_data_112 = .data:0x00000112; // type:object size:0xE scope:local data:string +lbl_1_data_120 = .data:0x00000120; // type:object size:0xE scope:local data:string +lbl_1_data_12E = .data:0x0000012E; // type:object size:0xE scope:local data:string +lbl_1_data_13C = .data:0x0000013C; // type:object size:0xE scope:local data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xE scope:local data:string +lbl_1_data_158 = .data:0x00000158; // type:object size:0xE scope:local data:string +lbl_1_data_166 = .data:0x00000166; // type:object size:0xE scope:local data:string +lbl_1_data_174 = .data:0x00000174; // type:object size:0xE scope:local data:string +lbl_1_data_182 = .data:0x00000182; // type:object size:0xE scope:local data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0xE scope:local data:string +lbl_1_data_19E = .data:0x0000019E; // type:object size:0xE scope:local data:string +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xE scope:local data:string +lbl_1_data_1BA = .data:0x000001BA; // type:object size:0xE scope:local data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0xE scope:local data:string +lbl_1_data_1D6 = .data:0x000001D6; // type:object size:0xE scope:local data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xE scope:local data:string +lbl_1_data_1F2 = .data:0x000001F2; // type:object size:0xE scope:local data:string +lbl_1_data_200 = .data:0x00000200; // type:object size:0xE scope:local data:string +lbl_1_data_20E = .data:0x0000020E; // type:object size:0xE scope:local data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0xE scope:local data:string lbl_1_data_22C = .data:0x0000022C; // type:object size:0x57C -lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0xD data:string -lbl_1_data_7B5 = .data:0x000007B5; // type:object size:0xD data:string -lbl_1_data_7C2 = .data:0x000007C2; // type:object size:0xD data:string -lbl_1_data_7CF = .data:0x000007CF; // type:object size:0xE data:string -lbl_1_data_7DD = .data:0x000007DD; // type:object size:0xE data:string -lbl_1_data_7EB = .data:0x000007EB; // type:object size:0xE data:string -lbl_1_data_7F9 = .data:0x000007F9; // type:object size:0xE data:string -lbl_1_data_807 = .data:0x00000807; // type:object size:0xD data:string -lbl_1_data_814 = .data:0x00000814; // type:object size:0xD data:string -lbl_1_data_821 = .data:0x00000821; // type:object size:0xD data:string -lbl_1_data_82E = .data:0x0000082E; // type:object size:0xE data:string -lbl_1_data_83C = .data:0x0000083C; // type:object size:0xE data:string -lbl_1_data_84A = .data:0x0000084A; // type:object size:0xD data:string -lbl_1_data_857 = .data:0x00000857; // type:object size:0xD data:string -lbl_1_data_864 = .data:0x00000864; // type:object size:0xD data:string -lbl_1_data_871 = .data:0x00000871; // type:object size:0xE data:string -lbl_1_data_87F = .data:0x0000087F; // type:object size:0xE data:string -lbl_1_data_88D = .data:0x0000088D; // type:object size:0xE data:string -lbl_1_data_89B = .data:0x0000089B; // type:object size:0xE data:string -lbl_1_data_8A9 = .data:0x000008A9; // type:object size:0xE data:string -lbl_1_data_8B7 = .data:0x000008B7; // type:object size:0xE data:string -lbl_1_data_8C5 = .data:0x000008C5; // type:object size:0xE data:string -lbl_1_data_8D3 = .data:0x000008D3; // type:object size:0xE data:string -lbl_1_data_8E1 = .data:0x000008E1; // type:object size:0xE data:string -lbl_1_data_8EF = .data:0x000008EF; // type:object size:0xE data:string -lbl_1_data_8FD = .data:0x000008FD; // type:object size:0xE data:string -lbl_1_data_90B = .data:0x0000090B; // type:object size:0xE data:string -lbl_1_data_919 = .data:0x00000919; // type:object size:0xE data:string -lbl_1_data_927 = .data:0x00000927; // type:object size:0xE data:string -lbl_1_data_935 = .data:0x00000935; // type:object size:0xE data:string -lbl_1_data_943 = .data:0x00000943; // type:object size:0xE data:string -lbl_1_data_951 = .data:0x00000951; // type:object size:0xE data:string -lbl_1_data_95F = .data:0x0000095F; // type:object size:0xE data:string -lbl_1_data_96D = .data:0x0000096D; // type:object size:0xE data:string -lbl_1_data_97B = .data:0x0000097B; // type:object size:0xE data:string -lbl_1_data_989 = .data:0x00000989; // type:object size:0xE data:string -lbl_1_data_997 = .data:0x00000997; // type:object size:0xE data:string -lbl_1_data_9A5 = .data:0x000009A5; // type:object size:0xE data:string -lbl_1_data_9B3 = .data:0x000009B3; // type:object size:0xE data:string -lbl_1_data_9C1 = .data:0x000009C1; // type:object size:0xE data:string -lbl_1_data_9CF = .data:0x000009CF; // type:object size:0xE data:string -lbl_1_data_9DD = .data:0x000009DD; // type:object size:0xF +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0xD scope:local data:string +lbl_1_data_7B5 = .data:0x000007B5; // type:object size:0xD scope:local data:string +lbl_1_data_7C2 = .data:0x000007C2; // type:object size:0xD scope:local data:string +lbl_1_data_7CF = .data:0x000007CF; // type:object size:0xE scope:local data:string +lbl_1_data_7DD = .data:0x000007DD; // type:object size:0xE scope:local data:string +lbl_1_data_7EB = .data:0x000007EB; // type:object size:0xE scope:local data:string +lbl_1_data_7F9 = .data:0x000007F9; // type:object size:0xE scope:local data:string +lbl_1_data_807 = .data:0x00000807; // type:object size:0xD scope:local data:string +lbl_1_data_814 = .data:0x00000814; // type:object size:0xD scope:local data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0xD scope:local data:string +lbl_1_data_82E = .data:0x0000082E; // type:object size:0xE scope:local data:string +lbl_1_data_83C = .data:0x0000083C; // type:object size:0xE scope:local data:string +lbl_1_data_84A = .data:0x0000084A; // type:object size:0xD scope:local data:string +lbl_1_data_857 = .data:0x00000857; // type:object size:0xD scope:local data:string +lbl_1_data_864 = .data:0x00000864; // type:object size:0xD scope:local data:string +lbl_1_data_871 = .data:0x00000871; // type:object size:0xE scope:local data:string +lbl_1_data_87F = .data:0x0000087F; // type:object size:0xE scope:local data:string +lbl_1_data_88D = .data:0x0000088D; // type:object size:0xE scope:local data:string +lbl_1_data_89B = .data:0x0000089B; // type:object size:0xE scope:local data:string +lbl_1_data_8A9 = .data:0x000008A9; // type:object size:0xE scope:local data:string +lbl_1_data_8B7 = .data:0x000008B7; // type:object size:0xE scope:local data:string +lbl_1_data_8C5 = .data:0x000008C5; // type:object size:0xE scope:local data:string +lbl_1_data_8D3 = .data:0x000008D3; // type:object size:0xE scope:local data:string +lbl_1_data_8E1 = .data:0x000008E1; // type:object size:0xE scope:local data:string +lbl_1_data_8EF = .data:0x000008EF; // type:object size:0xE scope:local data:string +lbl_1_data_8FD = .data:0x000008FD; // type:object size:0xE scope:local data:string +lbl_1_data_90B = .data:0x0000090B; // type:object size:0xE scope:local data:string +lbl_1_data_919 = .data:0x00000919; // type:object size:0xE scope:local data:string +lbl_1_data_927 = .data:0x00000927; // type:object size:0xE scope:local data:string +lbl_1_data_935 = .data:0x00000935; // type:object size:0xE scope:local data:string +lbl_1_data_943 = .data:0x00000943; // type:object size:0xE scope:local data:string +lbl_1_data_951 = .data:0x00000951; // type:object size:0xE scope:local data:string +lbl_1_data_95F = .data:0x0000095F; // type:object size:0xE scope:local data:string +lbl_1_data_96D = .data:0x0000096D; // type:object size:0xE scope:local data:string +lbl_1_data_97B = .data:0x0000097B; // type:object size:0xE scope:local data:string +lbl_1_data_989 = .data:0x00000989; // type:object size:0xE scope:local data:string +lbl_1_data_997 = .data:0x00000997; // type:object size:0xE scope:local data:string +lbl_1_data_9A5 = .data:0x000009A5; // type:object size:0xE scope:local data:string +lbl_1_data_9B3 = .data:0x000009B3; // type:object size:0xE scope:local data:string +lbl_1_data_9C1 = .data:0x000009C1; // type:object size:0xE scope:local data:string +lbl_1_data_9CF = .data:0x000009CF; // type:object size:0xE scope:local data:string +lbl_1_data_9DD = .data:0x000009DD; // type:object size:0xF scope:local lbl_1_data_9EC = .data:0x000009EC; // type:object size:0x5E8 lbl_1_data_FD4 = .data:0x00000FD4; // type:object size:0xC lbl_1_data_FE0 = .data:0x00000FE0; // type:object size:0xC @@ -258,12 +259,12 @@ lbl_1_data_13B8 = .data:0x000013B8; // type:object size:0x10 lbl_1_data_13C8 = .data:0x000013C8; // type:object size:0x10 lbl_1_data_13D8 = .data:0x000013D8; // type:object size:0x10 lbl_1_data_13E8 = .data:0x000013E8; // type:object size:0x50 -lbl_1_data_1438 = .data:0x00001438; // type:object size:0x21 data:string -lbl_1_data_1459 = .data:0x00001459; // type:object size:0x1F +lbl_1_data_1438 = .data:0x00001438; // type:object size:0x21 scope:local data:string +lbl_1_data_1459 = .data:0x00001459; // type:object size:0x1F scope:local jumptable_1_data_1478 = .data:0x00001478; // type:object size:0x24 scope:local -lbl_1_data_149C = .data:0x0000149C; // type:object size:0x1C +lbl_1_data_149C = .data:0x0000149C; // type:object size:0x1B scope:local data:string jumptable_1_data_14B8 = .data:0x000014B8; // type:object size:0x34 scope:local -lbl_1_data_14EC = .data:0x000014EC; // type:object size:0x24 data:string +lbl_1_data_14EC = .data:0x000014EC; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte @@ -290,7 +291,8 @@ lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:float lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:float lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x60 -lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x8 data:4byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x4 data:4byte lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x4 data:4byte lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 data:4byte lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m431Dll/splits.txt b/config/GMPP01_00/rels/m431Dll/splits.txt index 531cd645..ad48912a 100644 --- a/config/GMPP01_00/rels/m431Dll/splits.txt +++ b/config/GMPP01_00/rels/m431Dll/splits.txt @@ -5,3 +5,18 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m431Dll/main.c: + .text start:0x000000A0 end:0x00007AB8 + .rodata start:0x00000000 end:0x00000180 + .data start:0x00000000 end:0x000001D0 + .bss start:0x00000000 end:0x00000098 + +REL/m431Dll/object.c: + .text start:0x00007AB8 end:0x0000B57C + .rodata start:0x00000180 end:0x0000022C + .data start:0x000001D0 end:0x0000026C + .bss start:0x00000098 end:0x0000067C diff --git a/config/GMPP01_00/rels/m431Dll/symbols.txt b/config/GMPP01_00/rels/m431Dll/symbols.txt index c0040e1f..a67c25d3 100644 --- a/config/GMPP01_00/rels/m431Dll/symbols.txt +++ b/config/GMPP01_00/rels/m431Dll/symbols.txt @@ -1,207 +1,208 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +ObjectSetup = .text:0x000000A0; // type:function size:0x384 fn_1_424 = .text:0x00000424; // type:function size:0x78 fn_1_49C = .text:0x0000049C; // type:function size:0xE0 fn_1_57C = .text:0x0000057C; // type:function size:0x234 fn_1_7B0 = .text:0x000007B0; // type:function size:0x294 fn_1_A44 = .text:0x00000A44; // type:function size:0x660 fn_1_10A4 = .text:0x000010A4; // type:function size:0x364 -fn_1_1408 = .text:0x00001408; // type:function size:0x228 -fn_1_1630 = .text:0x00001630; // type:function size:0x40C -fn_1_1A3C = .text:0x00001A3C; // type:function size:0x5C0 -fn_1_1FFC = .text:0x00001FFC; // type:function size:0x50 -fn_1_204C = .text:0x0000204C; // type:function size:0x40 -fn_1_208C = .text:0x0000208C; // type:function size:0x40 -fn_1_20CC = .text:0x000020CC; // type:function size:0x40 -fn_1_210C = .text:0x0000210C; // type:function size:0x9A0 -fn_1_2AAC = .text:0x00002AAC; // type:function size:0x10 -fn_1_2ABC = .text:0x00002ABC; // type:function size:0x1D4 -fn_1_2C90 = .text:0x00002C90; // type:function size:0x44C -fn_1_30DC = .text:0x000030DC; // type:function size:0x460 -fn_1_353C = .text:0x0000353C; // type:function size:0x83C -fn_1_3D78 = .text:0x00003D78; // type:function size:0x254 -fn_1_3FCC = .text:0x00003FCC; // type:function size:0x58 -fn_1_4024 = .text:0x00004024; // type:function size:0x6FC -fn_1_4720 = .text:0x00004720; // type:function size:0x14 -fn_1_4734 = .text:0x00004734; // type:function size:0x60 -fn_1_4794 = .text:0x00004794; // type:function size:0x138 -fn_1_48CC = .text:0x000048CC; // type:function size:0xBC -fn_1_4988 = .text:0x00004988; // type:function size:0x188 -fn_1_4B10 = .text:0x00004B10; // type:function size:0x1C8 -fn_1_4CD8 = .text:0x00004CD8; // type:function size:0x70 -fn_1_4D48 = .text:0x00004D48; // type:function size:0xE4 -fn_1_4E2C = .text:0x00004E2C; // type:function size:0x4A8 -fn_1_52D4 = .text:0x000052D4; // type:function size:0x1A8 -fn_1_547C = .text:0x0000547C; // type:function size:0xA4 -fn_1_5520 = .text:0x00005520; // type:function size:0x148 -fn_1_5668 = .text:0x00005668; // type:function size:0x9C -fn_1_5704 = .text:0x00005704; // type:function size:0x468 -fn_1_5B6C = .text:0x00005B6C; // type:function size:0x4C0 -fn_1_602C = .text:0x0000602C; // type:function size:0x154 -fn_1_6180 = .text:0x00006180; // type:function size:0x380 -fn_1_6500 = .text:0x00006500; // type:function size:0xC8 -fn_1_65C8 = .text:0x000065C8; // type:function size:0x10 -fn_1_65D8 = .text:0x000065D8; // type:function size:0x5C -fn_1_6634 = .text:0x00006634; // type:function size:0xA4 -fn_1_66D8 = .text:0x000066D8; // type:function size:0xE4 -fn_1_67BC = .text:0x000067BC; // type:function size:0x374 -fn_1_6B30 = .text:0x00006B30; // type:function size:0x140 -fn_1_6C70 = .text:0x00006C70; // type:function size:0x544 -fn_1_71B4 = .text:0x000071B4; // type:function size:0x60 -fn_1_7214 = .text:0x00007214; // type:function size:0x2C -fn_1_7240 = .text:0x00007240; // type:function size:0x38 -fn_1_7278 = .text:0x00007278; // type:function size:0x38 -fn_1_72B0 = .text:0x000072B0; // type:function size:0x570 -fn_1_7820 = .text:0x00007820; // type:function size:0xCC -fn_1_78EC = .text:0x000078EC; // type:function size:0xA4 -fn_1_7990 = .text:0x00007990; // type:function size:0x68 -fn_1_79F8 = .text:0x000079F8; // type:function size:0x7C -fn_1_7A74 = .text:0x00007A74; // type:function size:0x44 -fn_1_7AB8 = .text:0x00007AB8; // type:function size:0x4FC -fn_1_7FB4 = .text:0x00007FB4; // type:function size:0x4BC -fn_1_8470 = .text:0x00008470; // type:function size:0x118 -fn_1_8588 = .text:0x00008588; // type:function size:0x204 -fn_1_878C = .text:0x0000878C; // type:function size:0x344 -fn_1_8AD0 = .text:0x00008AD0; // type:function size:0x1EC -fn_1_8CBC = .text:0x00008CBC; // type:function size:0x6CC -fn_1_9388 = .text:0x00009388; // type:function size:0xB4 -fn_1_943C = .text:0x0000943C; // type:function size:0x494 -fn_1_98D0 = .text:0x000098D0; // type:function size:0x130 -fn_1_9A00 = .text:0x00009A00; // type:function size:0x278 -fn_1_9C78 = .text:0x00009C78; // type:function size:0x49C -fn_1_A114 = .text:0x0000A114; // type:function size:0x360 -fn_1_A474 = .text:0x0000A474; // type:function size:0x380 -fn_1_A7F4 = .text:0x0000A7F4; // type:function size:0x134 -fn_1_A928 = .text:0x0000A928; // type:function size:0x13C -fn_1_AA64 = .text:0x0000AA64; // type:function size:0xB0 -fn_1_AB14 = .text:0x0000AB14; // type:function size:0xB0 -fn_1_ABC4 = .text:0x0000ABC4; // type:function size:0x20 -fn_1_ABE4 = .text:0x0000ABE4; // type:function size:0x30 -fn_1_AC14 = .text:0x0000AC14; // type:function size:0x90 -fn_1_ACA4 = .text:0x0000ACA4; // type:function size:0x108 -fn_1_ADAC = .text:0x0000ADAC; // type:function size:0x7C -fn_1_AE28 = .text:0x0000AE28; // type:function size:0x2E4 -fn_1_B10C = .text:0x0000B10C; // type:function size:0x48 -fn_1_B154 = .text:0x0000B154; // type:function size:0x20 -fn_1_B174 = .text:0x0000B174; // type:function size:0x1C -fn_1_B190 = .text:0x0000B190; // type:function size:0x20 -fn_1_B1B0 = .text:0x0000B1B0; // type:function size:0x1F8 -fn_1_B3A8 = .text:0x0000B3A8; // type:function size:0x80 -fn_1_B428 = .text:0x0000B428; // type:function size:0x90 -fn_1_B4B8 = .text:0x0000B4B8; // type:function size:0x64 -fn_1_B51C = .text:0x0000B51C; // type:function size:0x38 -fn_1_B554 = .text:0x0000B554; // type:function size:0x28 +fn_1_140C = .text:0x00001408; // type:function size:0x228 +fn_1_1634 = .text:0x00001630; // type:function size:0x40C +fn_1_1A40 = .text:0x00001A3C; // type:function size:0x5C0 +fn_1_2000 = .text:0x00001FFC; // type:function size:0x50 +fn_1_2050 = .text:0x0000204C; // type:function size:0x40 +fn_1_2090 = .text:0x0000208C; // type:function size:0x40 +fn_1_20D0 = .text:0x000020CC; // type:function size:0x40 +fn_1_2110 = .text:0x0000210C; // type:function size:0x9A0 +fn_1_2AB0 = .text:0x00002AAC; // type:function size:0x10 +fn_1_2AC0 = .text:0x00002ABC; // type:function size:0x1D4 +fn_1_2C94 = .text:0x00002C90; // type:function size:0x44C +fn_1_30E0 = .text:0x000030DC; // type:function size:0x460 +fn_1_3540 = .text:0x0000353C; // type:function size:0x83C +fn_1_3D7C = .text:0x00003D78; // type:function size:0x254 +fn_1_3FD0 = .text:0x00003FCC; // type:function size:0x58 +fn_1_4028 = .text:0x00004024; // type:function size:0x6FC +fn_1_4724 = .text:0x00004720; // type:function size:0x14 +fn_1_4738 = .text:0x00004734; // type:function size:0x60 +fn_1_4798 = .text:0x00004794; // type:function size:0x138 +fn_1_48D0 = .text:0x000048CC; // type:function size:0xBC +fn_1_498C = .text:0x00004988; // type:function size:0x188 +fn_1_4B14 = .text:0x00004B10; // type:function size:0x1C8 +fn_1_4CDC = .text:0x00004CD8; // type:function size:0x70 +fn_1_4D4C = .text:0x00004D48; // type:function size:0xE4 +fn_1_4E30 = .text:0x00004E2C; // type:function size:0x4A8 +fn_1_52D8 = .text:0x000052D4; // type:function size:0x1A8 +fn_1_5480 = .text:0x0000547C; // type:function size:0xA4 +fn_1_5524 = .text:0x00005520; // type:function size:0x148 +fn_1_566C = .text:0x00005668; // type:function size:0x9C +fn_1_5708 = .text:0x00005704; // type:function size:0x468 +fn_1_5B70 = .text:0x00005B6C; // type:function size:0x4C0 +fn_1_6030 = .text:0x0000602C; // type:function size:0x154 +fn_1_6184 = .text:0x00006180; // type:function size:0x380 +fn_1_6504 = .text:0x00006500; // type:function size:0xC8 +fn_1_65CC = .text:0x000065C8; // type:function size:0x10 +fn_1_65DC = .text:0x000065D8; // type:function size:0x5C +fn_1_6638 = .text:0x00006634; // type:function size:0xA4 +fn_1_66DC = .text:0x000066D8; // type:function size:0xE4 +fn_1_67C0 = .text:0x000067BC; // type:function size:0x374 +fn_1_6B34 = .text:0x00006B30; // type:function size:0x140 +fn_1_6C74 = .text:0x00006C70; // type:function size:0x544 +fn_1_71B8 = .text:0x000071B4; // type:function size:0x60 +fn_1_7218 = .text:0x00007214; // type:function size:0x2C +fn_1_7244 = .text:0x00007240; // type:function size:0x38 +fn_1_727C = .text:0x00007278; // type:function size:0x38 +fn_1_72B4 = .text:0x000072B0; // type:function size:0x570 +fn_1_7824 = .text:0x00007820; // type:function size:0xCC +fn_1_78F0 = .text:0x000078EC; // type:function size:0xA4 +fn_1_7994 = .text:0x00007990; // type:function size:0x68 +fn_1_79FC = .text:0x000079F8; // type:function size:0x7C +fn_1_7A78 = .text:0x00007A74; // type:function size:0x44 +fn_1_7ABC = .text:0x00007AB8; // type:function size:0x4FC +fn_1_7FB8 = .text:0x00007FB4; // type:function size:0x4BC +fn_1_8474 = .text:0x00008470; // type:function size:0x118 +fn_1_858C = .text:0x00008588; // type:function size:0x204 +fn_1_8790 = .text:0x0000878C; // type:function size:0x344 +fn_1_8AD4 = .text:0x00008AD0; // type:function size:0x1EC +fn_1_8CC0 = .text:0x00008CBC; // type:function size:0x6CC +fn_1_938C = .text:0x00009388; // type:function size:0xB4 +fn_1_9440 = .text:0x0000943C; // type:function size:0x494 +fn_1_98D4 = .text:0x000098D0; // type:function size:0x130 +fn_1_9A04 = .text:0x00009A00; // type:function size:0x278 +fn_1_9C5C = .text:0x00009C78; // type:function size:0x49C +fn_1_A0F8 = .text:0x0000A114; // type:function size:0x360 +fn_1_A450 = .text:0x0000A474; // type:function size:0x380 +fn_1_A7D0 = .text:0x0000A7F4; // type:function size:0x134 +fn_1_A904 = .text:0x0000A928; // type:function size:0x13C +fn_1_AA40 = .text:0x0000AA64; // type:function size:0xB0 +fn_1_AAF0 = .text:0x0000AB14; // type:function size:0xB0 +fn_1_ABA0 = .text:0x0000ABC4; // type:function size:0x20 +fn_1_ABC0 = .text:0x0000ABE4; // type:function size:0x30 +fn_1_ABF0 = .text:0x0000AC14; // type:function size:0x90 +fn_1_AC80 = .text:0x0000ACA4; // type:function size:0x108 +fn_1_AD88 = .text:0x0000ADAC; // type:function size:0x7C +fn_1_AE04 = .text:0x0000AE28; // type:function size:0x2E4 +fn_1_B0E8 = .text:0x0000B10C; // type:function size:0x48 +fn_1_B130 = .text:0x0000B154; // type:function size:0x20 +fn_1_B150 = .text:0x0000B174; // type:function size:0x1C +fn_1_B16C = .text:0x0000B190; // type:function size:0x20 +fn_1_B18C = .text:0x0000B1B0; // type:function size:0x1F8 +fn_1_B384 = .text:0x0000B3A8; // type:function size:0x80 +fn_1_B404 = .text:0x0000B428; // type:function size:0x90 +fn_1_B494 = .text:0x0000B4B8; // type:function size:0x64 +fn_1_B4F8 = .text:0x0000B51C; // type:function size:0x38 +fn_1_B530 = .text:0x0000B554; // 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:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // 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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:2byte -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // 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:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 scope:local data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 scope:local data:2byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // 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: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 @@ -213,20 +214,21 @@ 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:0x26 +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_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:0x1C +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:0x2 data:2byte +lbl_1_data_268 = .data:0x00000268; // type:object size:0x4 data:2byte lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte @@ -242,7 +244,7 @@ lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x28 -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x3C data:2byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x38 data:2byte lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x1 data:byte lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x10 lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x80 data:4byte diff --git a/config/GMPP01_00/rels/m450Dll/splits.txt b/config/GMPP01_00/rels/m450Dll/splits.txt index 531cd645..eecefe9b 100644 --- a/config/GMPP01_00/rels/m450Dll/splits.txt +++ b/config/GMPP01_00/rels/m450Dll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m450Dll/main.c: + .text start:0x00000000 end:0x00029968 + .rodata start:0x00000000 end:0x00000398 + .data start:0x00000000 end:0x000017C4 + .bss start:0x00000000 end:0x00000364 diff --git a/config/GMPP01_00/rels/m450Dll/symbols.txt b/config/GMPP01_00/rels/m450Dll/symbols.txt index 09e43eee..feaece31 100644 --- a/config/GMPP01_00/rels/m450Dll/symbols.txt +++ b/config/GMPP01_00/rels/m450Dll/symbols.txt @@ -7,381 +7,385 @@ fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C fn_1_414 = .text:0x00000414; // type:function size:0x58 fn_1_46C = .text:0x0000046C; // type:function size:0x114 fn_1_580 = .text:0x00000580; // type:function size:0x204 -fn_1_784 = .text:0x00000784; // type:function size:0x240 -fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 -fn_1_A18 = .text:0x00000A18; // type:function size:0x10C -fn_1_B24 = .text:0x00000B24; // type:function size:0x680 -fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C -fn_1_1300 = .text:0x00001300; // type:function size:0x8C -fn_1_138C = .text:0x0000138C; // type:function size:0x334 -fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 -fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 -fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 -fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 -fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 -fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 -fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C -fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 -fn_1_2364 = .text:0x00002364; // type:function size:0x64 -fn_1_23C8 = .text:0x000023C8; // type:function size:0xE0 -fn_1_24A8 = .text:0x000024A8; // type:function size:0x32C -fn_1_27D4 = .text:0x000027D4; // type:function size:0x3AC -fn_1_2B80 = .text:0x00002B80; // type:function size:0x30 -fn_1_2BB0 = .text:0x00002BB0; // type:function size:0x1C -fn_1_2BCC = .text:0x00002BCC; // type:function size:0x18C -fn_1_2D58 = .text:0x00002D58; // type:function size:0x8 -fn_1_2D60 = .text:0x00002D60; // type:function size:0x8 -fn_1_2D68 = .text:0x00002D68; // type:function size:0x8 -fn_1_2D70 = .text:0x00002D70; // type:function size:0x8 -fn_1_2D78 = .text:0x00002D78; // type:function size:0xC -fn_1_2D84 = .text:0x00002D84; // type:function size:0x60 -fn_1_2DE4 = .text:0x00002DE4; // type:function size:0xB90 -fn_1_3974 = .text:0x00003974; // type:function size:0x31C -fn_1_3C90 = .text:0x00003C90; // type:function size:0xD8 -fn_1_3D68 = .text:0x00003D68; // type:function size:0x114 -fn_1_3E7C = .text:0x00003E7C; // type:function size:0xB8 -fn_1_3F34 = .text:0x00003F34; // type:function size:0xA0 -fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x9C -fn_1_4070 = .text:0x00004070; // type:function size:0xE18 -fn_1_4E88 = .text:0x00004E88; // type:function size:0x250 -fn_1_50D8 = .text:0x000050D8; // type:function size:0x10 -fn_1_50E8 = .text:0x000050E8; // type:function size:0x10 -fn_1_50F8 = .text:0x000050F8; // type:function size:0x400 -fn_1_54F8 = .text:0x000054F8; // type:function size:0x7C -fn_1_5574 = .text:0x00005574; // type:function size:0x5C -fn_1_55D0 = .text:0x000055D0; // type:function size:0xA4 -fn_1_5674 = .text:0x00005674; // type:function size:0x748 -fn_1_5DBC = .text:0x00005DBC; // type:function size:0xCC -fn_1_5E88 = .text:0x00005E88; // type:function size:0x658 -fn_1_64E0 = .text:0x000064E0; // type:function size:0x108 -fn_1_65E8 = .text:0x000065E8; // type:function size:0x38 -fn_1_6620 = .text:0x00006620; // type:function size:0x30 -fn_1_6650 = .text:0x00006650; // type:function size:0x3C -fn_1_668C = .text:0x0000668C; // type:function size:0xBC -fn_1_6748 = .text:0x00006748; // type:function size:0x260 -fn_1_69A8 = .text:0x000069A8; // type:function size:0xD0 -fn_1_6A78 = .text:0x00006A78; // type:function size:0xC8 -fn_1_6B40 = .text:0x00006B40; // type:function size:0xD8 -fn_1_6C18 = .text:0x00006C18; // type:function size:0x48 -fn_1_6C60 = .text:0x00006C60; // type:function size:0x7C -fn_1_6CDC = .text:0x00006CDC; // type:function size:0x3C -fn_1_6D18 = .text:0x00006D18; // type:function size:0x70 -fn_1_6D88 = .text:0x00006D88; // type:function size:0x714 -fn_1_749C = .text:0x0000749C; // type:function size:0x6A4 -fn_1_7B40 = .text:0x00007B40; // type:function size:0x84 -fn_1_7BC4 = .text:0x00007BC4; // type:function size:0x84 -fn_1_7C48 = .text:0x00007C48; // type:function size:0xA8 -fn_1_7CF0 = .text:0x00007CF0; // type:function size:0x3E0 -fn_1_80D0 = .text:0x000080D0; // type:function size:0x3E0 -fn_1_84B0 = .text:0x000084B0; // type:function size:0x6DC -fn_1_8B8C = .text:0x00008B8C; // type:function size:0x498 -fn_1_9024 = .text:0x00009024; // type:function size:0x64C -fn_1_9670 = .text:0x00009670; // type:function size:0x164 -fn_1_97D4 = .text:0x000097D4; // type:function size:0x380 -fn_1_9B54 = .text:0x00009B54; // type:function size:0x3A8 -fn_1_9EFC = .text:0x00009EFC; // type:function size:0x478 -fn_1_A374 = .text:0x0000A374; // type:function size:0xAC -fn_1_A420 = .text:0x0000A420; // type:function size:0x190 -fn_1_A5B0 = .text:0x0000A5B0; // type:function size:0x1CC -fn_1_A77C = .text:0x0000A77C; // type:function size:0x5C -fn_1_A7D8 = .text:0x0000A7D8; // type:function size:0x140 -fn_1_A918 = .text:0x0000A918; // type:function size:0x148 -fn_1_AA60 = .text:0x0000AA60; // type:function size:0xD8 -fn_1_AB38 = .text:0x0000AB38; // type:function size:0x48 -fn_1_AB80 = .text:0x0000AB80; // type:function size:0x188 -fn_1_AD08 = .text:0x0000AD08; // type:function size:0x2E98 -fn_1_DBA0 = .text:0x0000DBA0; // type:function size:0x4F8 -fn_1_E098 = .text:0x0000E098; // type:function size:0x90 -fn_1_E128 = .text:0x0000E128; // type:function size:0x30 -fn_1_E158 = .text:0x0000E158; // type:function size:0x114 -fn_1_E26C = .text:0x0000E26C; // type:function size:0x10C -fn_1_E378 = .text:0x0000E378; // type:function size:0xB0 -fn_1_E428 = .text:0x0000E428; // type:function size:0x18C -fn_1_E5B4 = .text:0x0000E5B4; // type:function size:0x314 -fn_1_E8C8 = .text:0x0000E8C8; // type:function size:0x138 -fn_1_EA00 = .text:0x0000EA00; // type:function size:0x11C -fn_1_EB1C = .text:0x0000EB1C; // type:function size:0x1E0 -fn_1_ECFC = .text:0x0000ECFC; // type:function size:0x3010 -fn_1_11D0C = .text:0x00011D0C; // type:function size:0x4D8 -fn_1_121E4 = .text:0x000121E4; // type:function size:0x30C -fn_1_124F0 = .text:0x000124F0; // type:function size:0x80 -fn_1_12570 = .text:0x00012570; // type:function size:0xC8 -fn_1_12638 = .text:0x00012638; // type:function size:0x294 -fn_1_128CC = .text:0x000128CC; // type:function size:0x100 -fn_1_129CC = .text:0x000129CC; // type:function size:0x164 -fn_1_12B30 = .text:0x00012B30; // type:function size:0x1F8 -fn_1_12D28 = .text:0x00012D28; // type:function size:0x4 -fn_1_12D2C = .text:0x00012D2C; // type:function size:0xE0 -fn_1_12E0C = .text:0x00012E0C; // type:function size:0x248 -fn_1_13054 = .text:0x00013054; // type:function size:0xD0 -fn_1_13124 = .text:0x00013124; // type:function size:0x3EC -fn_1_13510 = .text:0x00013510; // type:function size:0x1B4 -fn_1_136C4 = .text:0x000136C4; // type:function size:0x29C -fn_1_13960 = .text:0x00013960; // type:function size:0x19C -fn_1_13AFC = .text:0x00013AFC; // type:function size:0xC -fn_1_13B08 = .text:0x00013B08; // type:function size:0x38 -fn_1_13B40 = .text:0x00013B40; // type:function size:0x34 -fn_1_13B74 = .text:0x00013B74; // type:function size:0x364 -fn_1_13ED8 = .text:0x00013ED8; // type:function size:0x988 -fn_1_14860 = .text:0x00014860; // type:function size:0x110 -fn_1_14970 = .text:0x00014970; // type:function size:0xF8 -fn_1_14A68 = .text:0x00014A68; // type:function size:0x110 -fn_1_14B78 = .text:0x00014B78; // type:function size:0x60 -fn_1_14BD8 = .text:0x00014BD8; // type:function size:0xC0 -fn_1_14C98 = .text:0x00014C98; // type:function size:0x620 -fn_1_152B8 = .text:0x000152B8; // type:function size:0x840 -fn_1_15AF8 = .text:0x00015AF8; // type:function size:0x64 -fn_1_15B5C = .text:0x00015B5C; // type:function size:0x500 -fn_1_1605C = .text:0x0001605C; // type:function size:0x1D4 -fn_1_16230 = .text:0x00016230; // type:function size:0x94 -fn_1_162C4 = .text:0x000162C4; // type:function size:0x64 -fn_1_16328 = .text:0x00016328; // type:function size:0x598 -fn_1_168C0 = .text:0x000168C0; // type:function size:0x2B4 -fn_1_16B74 = .text:0x00016B74; // type:function size:0x130 -fn_1_16CA4 = .text:0x00016CA4; // type:function size:0x4D0 -fn_1_17174 = .text:0x00017174; // type:function size:0x19C -fn_1_17310 = .text:0x00017310; // type:function size:0x114 -fn_1_17424 = .text:0x00017424; // type:function size:0x4FC -fn_1_17920 = .text:0x00017920; // type:function size:0x24C -fn_1_17B6C = .text:0x00017B6C; // type:function size:0x868 -fn_1_183D4 = .text:0x000183D4; // type:function size:0x284 -fn_1_18658 = .text:0x00018658; // type:function size:0x888 -fn_1_18EE0 = .text:0x00018EE0; // type:function size:0x37C -fn_1_1925C = .text:0x0001925C; // type:function size:0xE4 -fn_1_19340 = .text:0x00019340; // type:function size:0xC0 -fn_1_19400 = .text:0x00019400; // type:function size:0x1FC -fn_1_195FC = .text:0x000195FC; // type:function size:0x14C -fn_1_19748 = .text:0x00019748; // type:function size:0x278 -fn_1_199C0 = .text:0x000199C0; // type:function size:0x208 -fn_1_19BC8 = .text:0x00019BC8; // type:function size:0xC8 -fn_1_19C90 = .text:0x00019C90; // type:function size:0x334 -fn_1_19FC4 = .text:0x00019FC4; // type:function size:0x4C -fn_1_1A010 = .text:0x0001A010; // type:function size:0x1BC -fn_1_1A1CC = .text:0x0001A1CC; // type:function size:0x1D4 -fn_1_1A3A0 = .text:0x0001A3A0; // type:function size:0x284 +fn_1_798 = .text:0x00000784; // type:function size:0x240 +fn_1_9EC = .text:0x000009C4; // type:function size:0x54 +fn_1_A40 = .text:0x00000A18; // type:function size:0x10C +fn_1_B4C = .text:0x00000B24; // type:function size:0x680 +fn_1_11F4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1350 = .text:0x00001300; // type:function size:0x8C +fn_1_13DC = .text:0x0000138C; // type:function size:0x334 +fn_1_1710 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1F24 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F08; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_23B4 = .text:0x00002364; // type:function size:0x64 +fn_1_2418 = .text:0x000023C8; // type:function size:0xE0 +fn_1_24F8 = .text:0x000024A8; // type:function size:0x32C +fn_1_2824 = .text:0x000027D4; // type:function size:0x3AC +fn_1_2BD0 = .text:0x00002B80; // type:function size:0x30 +fn_1_2C00 = .text:0x00002BB0; // type:function size:0x1C +fn_1_2C1C = .text:0x00002BCC; // type:function size:0x18C +fn_1_2DA8 = .text:0x00002D58; // type:function size:0x8 +fn_1_2DB0 = .text:0x00002D60; // type:function size:0x8 +fn_1_2DB8 = .text:0x00002D68; // type:function size:0x8 +fn_1_2DC0 = .text:0x00002D70; // type:function size:0x8 +fn_1_2DC8 = .text:0x00002D78; // type:function size:0xC +fn_1_2DD4 = .text:0x00002D84; // type:function size:0x60 +fn_1_2E34 = .text:0x00002DE4; // type:function size:0xB90 +fn_1_39C4 = .text:0x00003974; // type:function size:0x31C +fn_1_3CE0 = .text:0x00003C90; // type:function size:0xD8 +fn_1_3DB8 = .text:0x00003D68; // type:function size:0x114 +fn_1_3ECC = .text:0x00003E7C; // type:function size:0xB8 +fn_1_3F84 = .text:0x00003F34; // type:function size:0xA0 +fn_1_4024 = .text:0x00003FD4; // type:function size:0x9C +fn_1_40C0 = .text:0x00004070; // type:function size:0xE18 +fn_1_4ED8 = .text:0x00004E88; // type:function size:0x250 +fn_1_5128 = .text:0x000050D8; // type:function size:0x10 +fn_1_5138 = .text:0x000050E8; // type:function size:0x10 +fn_1_5148 = .text:0x000050F8; // type:function size:0x400 +fn_1_5548 = .text:0x000054F8; // type:function size:0x7C +fn_1_55C4 = .text:0x00005574; // type:function size:0x5C +fn_1_5620 = .text:0x000055D0; // type:function size:0xA4 +fn_1_56C4 = .text:0x00005674; // type:function size:0x748 +fn_1_5E0C = .text:0x00005DBC; // type:function size:0xCC +fn_1_5ED8 = .text:0x00005E88; // type:function size:0x658 +fn_1_6530 = .text:0x000064E0; // type:function size:0x108 +fn_1_6638 = .text:0x000065E8; // type:function size:0x38 +fn_1_6670 = .text:0x00006620; // type:function size:0x30 +fn_1_66A0 = .text:0x00006650; // type:function size:0x3C +fn_1_66DC = .text:0x0000668C; // type:function size:0xBC +fn_1_6798 = .text:0x00006748; // type:function size:0x260 +fn_1_69F8 = .text:0x000069A8; // type:function size:0xD0 +fn_1_6AC8 = .text:0x00006A78; // type:function size:0xC8 +fn_1_6B90 = .text:0x00006B40; // type:function size:0xD8 +fn_1_6C68 = .text:0x00006C18; // type:function size:0x48 +fn_1_6CB0 = .text:0x00006C60; // type:function size:0x7C +fn_1_6D2C = .text:0x00006CDC; // type:function size:0x3C +fn_1_6D68 = .text:0x00006D18; // type:function size:0x70 +fn_1_6DD8 = .text:0x00006D88; // type:function size:0x714 +fn_1_74EC = .text:0x0000749C; // type:function size:0x6A4 +fn_1_7B90 = .text:0x00007B40; // type:function size:0x84 +fn_1_7C14 = .text:0x00007BC4; // type:function size:0x84 +fn_1_7C98 = .text:0x00007C48; // type:function size:0xA8 +fn_1_7D40 = .text:0x00007CF0; // type:function size:0x3E0 +fn_1_8120 = .text:0x000080D0; // type:function size:0x3E0 +fn_1_8500 = .text:0x000084B0; // type:function size:0x6DC +fn_1_8BDC = .text:0x00008B8C; // type:function size:0x498 +fn_1_9074 = .text:0x00009024; // type:function size:0x64C +fn_1_96C0 = .text:0x00009670; // type:function size:0x164 +fn_1_9824 = .text:0x000097D4; // type:function size:0x380 +fn_1_9BA4 = .text:0x00009B54; // type:function size:0x3A8 +fn_1_9F4C = .text:0x00009EFC; // type:function size:0x478 +fn_1_A3C4 = .text:0x0000A374; // type:function size:0xAC +fn_1_A470 = .text:0x0000A420; // type:function size:0x190 +fn_1_A600 = .text:0x0000A5B0; // type:function size:0x1CC +fn_1_A7CC = .text:0x0000A77C; // type:function size:0x5C +fn_1_A828 = .text:0x0000A7D8; // type:function size:0x140 +fn_1_A968 = .text:0x0000A918; // type:function size:0x148 +fn_1_AAB0 = .text:0x0000AA60; // type:function size:0xD8 +fn_1_AB88 = .text:0x0000AB38; // type:function size:0x48 +fn_1_ABD0 = .text:0x0000AB80; // type:function size:0x188 +fn_1_AD58 = .text:0x0000AD08; // type:function size:0x2E98 +fn_1_DBF0 = .text:0x0000DBA0; // type:function size:0x4F8 +fn_1_E0E8 = .text:0x0000E098; // type:function size:0x90 +fn_1_E178 = .text:0x0000E128; // type:function size:0x30 +fn_1_E1A8 = .text:0x0000E158; // type:function size:0x114 +fn_1_E2BC = .text:0x0000E26C; // type:function size:0x10C +fn_1_E3C8 = .text:0x0000E378; // type:function size:0xB0 +fn_1_E478 = .text:0x0000E428; // type:function size:0x18C +fn_1_E604 = .text:0x0000E5B4; // type:function size:0x314 +fn_1_E918 = .text:0x0000E8C8; // type:function size:0x138 +fn_1_EA50 = .text:0x0000EA00; // type:function size:0x11C +fn_1_EB6C = .text:0x0000EB1C; // type:function size:0x1E0 +fn_1_ED4C = .text:0x0000ECFC; // type:function size:0x3010 +fn_1_11D5C = .text:0x00011D0C; // type:function size:0x4D8 +fn_1_12234 = .text:0x000121E4; // type:function size:0x30C +fn_1_12540 = .text:0x000124F0; // type:function size:0x80 +fn_1_125C0 = .text:0x00012570; // type:function size:0xC8 +fn_1_12688 = .text:0x00012638; // type:function size:0x294 +fn_1_1291C = .text:0x000128CC; // type:function size:0x100 +fn_1_12A1C = .text:0x000129CC; // type:function size:0x164 +fn_1_12B80 = .text:0x00012B30; // type:function size:0x1F8 +fn_1_12D78 = .text:0x00012D28; // type:function size:0x4 +fn_1_12D7C = .text:0x00012D2C; // type:function size:0xE0 +fn_1_12E5C = .text:0x00012E0C; // type:function size:0x248 +fn_1_130A4 = .text:0x00013054; // type:function size:0xD0 +fn_1_13174 = .text:0x00013124; // type:function size:0x3EC +fn_1_13560 = .text:0x00013510; // type:function size:0x1B4 +fn_1_13714 = .text:0x000136C4; // type:function size:0x29C +fn_1_139B0 = .text:0x00013960; // type:function size:0x19C +fn_1_13B4C = .text:0x00013AFC; // type:function size:0xC +fn_1_13B58 = .text:0x00013B08; // type:function size:0x38 +fn_1_13B90 = .text:0x00013B40; // type:function size:0x34 +fn_1_13BC4 = .text:0x00013B74; // type:function size:0x364 +fn_1_13F28 = .text:0x00013ED8; // type:function size:0x988 +fn_1_148B0 = .text:0x00014860; // type:function size:0x110 +fn_1_149C0 = .text:0x00014970; // type:function size:0xF8 +fn_1_14AB8 = .text:0x00014A68; // type:function size:0x110 +fn_1_14BC8 = .text:0x00014B78; // type:function size:0x60 +fn_1_14C28 = .text:0x00014BD8; // type:function size:0xC0 +fn_1_14CE8 = .text:0x00014C98; // type:function size:0x620 +fn_1_15308 = .text:0x000152B8; // type:function size:0x840 +fn_1_15B48 = .text:0x00015AF8; // type:function size:0x64 +fn_1_15BAC = .text:0x00015B5C; // type:function size:0x500 +fn_1_160AC = .text:0x0001605C; // type:function size:0x1D4 +fn_1_16280 = .text:0x00016230; // type:function size:0x94 +fn_1_16314 = .text:0x000162C4; // type:function size:0x64 +fn_1_16378 = .text:0x00016328; // type:function size:0x598 +fn_1_16910 = .text:0x000168C0; // type:function size:0x2B4 +fn_1_16BC4 = .text:0x00016B74; // type:function size:0x130 +fn_1_16CF4 = .text:0x00016CA4; // type:function size:0x4D0 +fn_1_171C4 = .text:0x00017174; // type:function size:0x19C +fn_1_17360 = .text:0x00017310; // type:function size:0x114 +fn_1_17474 = .text:0x00017424; // type:function size:0x4FC +fn_1_17970 = .text:0x00017920; // type:function size:0x24C +fn_1_17BBC = .text:0x00017B6C; // type:function size:0x868 +fn_1_18424 = .text:0x000183D4; // type:function size:0x284 +fn_1_186A8 = .text:0x00018658; // type:function size:0x888 +fn_1_18F30 = .text:0x00018EE0; // type:function size:0x37C +fn_1_192AC = .text:0x0001925C; // type:function size:0xE4 +fn_1_19390 = .text:0x00019340; // type:function size:0xC0 +fn_1_19450 = .text:0x00019400; // type:function size:0x1FC +fn_1_1964C = .text:0x000195FC; // type:function size:0x14C +fn_1_19798 = .text:0x00019748; // type:function size:0x278 +fn_1_19A10 = .text:0x000199C0; // type:function size:0x208 +fn_1_19C18 = .text:0x00019BC8; // type:function size:0xC8 +fn_1_19CE0 = .text:0x00019C90; // type:function size:0x334 +fn_1_1A014 = .text:0x00019FC4; // type:function size:0x4C +fn_1_1A060 = .text:0x0001A010; // type:function size:0x1BC +fn_1_1A21C = .text:0x0001A1CC; // type:function size:0x1D4 +fn_1_1A3F0 = .text:0x0001A3A0; // type:function size:0x284 _prolog = .text:0x0001A624; // type:function size:0x54 scope:global _epilog = .text:0x0001A678; // type:function size:0x4C scope:global -fn_1_1A6C4 = .text:0x0001A6C4; // type:function size:0x22C -fn_1_1A8F0 = .text:0x0001A8F0; // type:function size:0x784 -fn_1_1B074 = .text:0x0001B074; // type:function size:0x94 -fn_1_1B108 = .text:0x0001B108; // type:function size:0x154 -fn_1_1B25C = .text:0x0001B25C; // type:function size:0x21C -fn_1_1B478 = .text:0x0001B478; // type:function size:0x48 -fn_1_1B4C0 = .text:0x0001B4C0; // type:function size:0x134 -fn_1_1B5F4 = .text:0x0001B5F4; // type:function size:0x1EC -fn_1_1B7E0 = .text:0x0001B7E0; // type:function size:0x830 -fn_1_1C010 = .text:0x0001C010; // type:function size:0x274 -fn_1_1C284 = .text:0x0001C284; // type:function size:0xC8 -fn_1_1C34C = .text:0x0001C34C; // type:function size:0x98 -fn_1_1C3E4 = .text:0x0001C3E4; // type:function size:0x2B0 -fn_1_1C694 = .text:0x0001C694; // type:function size:0x98 -fn_1_1C72C = .text:0x0001C72C; // type:function size:0x11C -fn_1_1C848 = .text:0x0001C848; // type:function size:0x18B8 -fn_1_1E100 = .text:0x0001E100; // type:function size:0x1F6C -fn_1_2006C = .text:0x0002006C; // type:function size:0xB4 -fn_1_20120 = .text:0x00020120; // type:function size:0x31C0 -fn_1_232E0 = .text:0x000232E0; // type:function size:0x440 -fn_1_23720 = .text:0x00023720; // type:function size:0x530 -fn_1_23C50 = .text:0x00023C50; // type:function size:0x980 -fn_1_245D0 = .text:0x000245D0; // type:function size:0x4A08 -fn_1_28FD8 = .text:0x00028FD8; // type:function size:0x8C0 -fn_1_29898 = .text:0x00029898; // type:function size:0xD0 +fn_1_1A714 = .text:0x0001A6C4; // type:function size:0x22C +fn_1_1A940 = .text:0x0001A8F0; // type:function size:0x784 +fn_1_1B0C4 = .text:0x0001B074; // type:function size:0x94 +fn_1_1B158 = .text:0x0001B108; // type:function size:0x154 +fn_1_1B2AC = .text:0x0001B25C; // type:function size:0x21C +fn_1_1B4C8 = .text:0x0001B478; // type:function size:0x48 +fn_1_1B510 = .text:0x0001B4C0; // type:function size:0x134 +fn_1_1B644 = .text:0x0001B5F4; // type:function size:0x1EC +fn_1_1B830 = .text:0x0001B7E0; // type:function size:0x830 +fn_1_1C060 = .text:0x0001C010; // type:function size:0x274 +fn_1_1C2D4 = .text:0x0001C284; // type:function size:0xC8 +fn_1_1C39C = .text:0x0001C34C; // type:function size:0x98 +fn_1_1C434 = .text:0x0001C3E4; // type:function size:0x2B0 +fn_1_1C6E4 = .text:0x0001C694; // type:function size:0x98 +fn_1_1C77C = .text:0x0001C72C; // type:function size:0x11C +fn_1_1C898 = .text:0x0001C848; // type:function size:0x18B8 +fn_1_1E150 = .text:0x0001E100; // type:function size:0x1F6C +fn_1_200BC = .text:0x0002006C; // type:function size:0xB4 +fn_1_20170 = .text:0x00020120; // type:function size:0x31C0 +fn_1_23330 = .text:0x000232E0; // type:function size:0x440 +fn_1_23770 = .text:0x00023720; // type:function size:0x530 +fn_1_23CA0 = .text:0x00023C50; // type:function size:0x980 +fn_1_24620 = .text:0x000245D0; // type:function size:0x4A08 +ObjectSetup = .text:0x00028FD8; // type:function size:0x8C0 +fn_1_298EC = .text:0x00029898; // type:function size:0xD0 _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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x1 data:byte -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:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:4byte -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x58 -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x58 -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:4byte -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0x8 data:4byte -lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 data:float -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:4byte -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +__fakeHalf = .rodata:0x00000000; // type:object size:0x8 data:double +__fakeThree = .rodata:0x00000008; // type:object size:0x8 data:double +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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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:byte +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_FC = .rodata:0x000000FC; // 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:0x8 scope:local data:4byte +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x58 scope:local +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:4byte +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x58 scope:local +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:4byte +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 -lbl_1_data_80 = .data:0x00000080; // type:object size:0x1F data:string -lbl_1_data_9F = .data:0x0000009F; // type:object size:0xD +lbl_1_data_80 = .data:0x00000080; // type:object size:0x1F scope:local data:string +lbl_1_data_9F = .data:0x0000009F; // type:object size:0xC data:byte lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4C lbl_1_data_100 = .data:0x00000100; // type:object size:0x14 -lbl_1_data_114 = .data:0x00000114; // type:object size:0x3C -lbl_1_data_150 = .data:0x00000150; // type:object size:0x3C -lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x20 -lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x10 -lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x28 -lbl_1_data_204 = .data:0x00000204; // type:object size:0x30 -lbl_1_data_234 = .data:0x00000234; // type:object size:0x20 -lbl_1_data_254 = .data:0x00000254; // type:object size:0x14 -lbl_1_data_268 = .data:0x00000268; // type:object size:0x14 -lbl_1_data_27C = .data:0x0000027C; // type:object size:0x14 -lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x12 data:string -lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x13 data:string -lbl_1_data_2C9 = .data:0x000002C9; // type:object size:0x14 data:string -lbl_1_data_2DD = .data:0x000002DD; // type:object size:0x1C data:string -lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0x12 data:string -lbl_1_data_30B = .data:0x0000030B; // type:object size:0x11 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x3C data:4byte +lbl_1_data_150 = .data:0x00000150; // type:object size:0x3C data:4byte +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 data:4byte +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x20 data:4byte +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x10 data:4byte +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x28 data:float +lbl_1_data_204 = .data:0x00000204; // type:object size:0x30 data:float +lbl_1_data_234 = .data:0x00000234; // type:object size:0x20 data:float +lbl_1_data_254 = .data:0x00000254; // type:object size:0x14 data:float +lbl_1_data_268 = .data:0x00000268; // type:object size:0x14 data:float +lbl_1_data_27C = .data:0x0000027C; // type:object size:0x14 data:float +lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 data:float +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x12 scope:local data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x13 scope:local data:string +lbl_1_data_2C9 = .data:0x000002C9; // type:object size:0x14 scope:local data:string +lbl_1_data_2DD = .data:0x000002DD; // type:object size:0x1C scope:local data:string +lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0x12 scope:local data:string +lbl_1_data_30B = .data:0x0000030B; // type:object size:0xE scope:local data:string jumptable_1_data_31C = .data:0x0000031C; // type:object size:0x60 scope:local -lbl_1_data_37C = .data:0x0000037C; // type:object size:0x12 data:string -lbl_1_data_38E = .data:0x0000038E; // type:object size:0x12 data:string -lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x13 data:string -lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x14 data:string -lbl_1_data_3C7 = .data:0x000003C7; // type:object size:0x14 data:string -lbl_1_data_3DB = .data:0x000003DB; // type:object size:0x13 data:string -lbl_1_data_3EE = .data:0x000003EE; // type:object size:0x1E +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x12 scope:local data:string +lbl_1_data_38E = .data:0x0000038E; // type:object size:0x12 scope:local data:string +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x13 scope:local data:string +lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x14 scope:local data:string +lbl_1_data_3C7 = .data:0x000003C7; // type:object size:0x14 scope:local data:string +lbl_1_data_3DB = .data:0x000003DB; // type:object size:0x13 scope:local data:string +lbl_1_data_3EE = .data:0x000003EE; // type:object size:0x1C scope:local data:string jumptable_1_data_40C = .data:0x0000040C; // type:object size:0x44 scope:local -lbl_1_data_450 = .data:0x00000450; // type:object size:0x14 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x12 scope:local data:string lbl_1_data_464 = .data:0x00000464; // type:object size:0xC data:4byte lbl_1_data_470 = .data:0x00000470; // type:object size:0xC lbl_1_data_47C = .data:0x0000047C; // type:object size:0xC data:4byte lbl_1_data_488 = .data:0x00000488; // type:object size:0xC data:4byte lbl_1_data_494 = .data:0x00000494; // type:object size:0xC data:4byte -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xC data:4byte +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xC data:float lbl_1_data_4AC = .data:0x000004AC; // type:object size:0xC data:4byte lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0xC data:4byte lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0xC data:4byte @@ -393,41 +397,41 @@ lbl_1_data_500 = .data:0x00000500; // type:object size:0x4 lbl_1_data_504 = .data:0x00000504; // type:object size:0xC lbl_1_data_510 = .data:0x00000510; // type:object size:0xC lbl_1_data_51C = .data:0x0000051C; // type:object size:0x30 -lbl_1_data_54C = .data:0x0000054C; // type:object size:0x10 data:string -lbl_1_data_55C = .data:0x0000055C; // type:object size:0x10 data:string -lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 data:string -lbl_1_data_57C = .data:0x0000057C; // type:object size:0x10 data:string -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x10 data:string -lbl_1_data_59C = .data:0x0000059C; // type:object size:0x10 data:string -lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x10 data:string -lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x10 data:string +lbl_1_data_54C = .data:0x0000054C; // type:object size:0x10 scope:local data:string +lbl_1_data_55C = .data:0x0000055C; // type:object size:0x10 scope:local data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 scope:local data:string +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x10 scope:local data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x10 scope:local data:string +lbl_1_data_59C = .data:0x0000059C; // type:object size:0x10 scope:local data:string +lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x10 scope:local data:string +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x10 scope:local data:string lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x80 lbl_1_data_64C = .data:0x0000064C; // type:object size:0x2E0 lbl_1_data_92C = .data:0x0000092C; // type:object size:0x20 -lbl_1_data_94C = .data:0x0000094C; // type:object size:0xA0 +lbl_1_data_94C = .data:0x0000094C; // type:object size:0xA0 data:float lbl_1_data_9EC = .data:0x000009EC; // type:object size:0x20 lbl_1_data_A0C = .data:0x00000A0C; // type:object size:0x38 data:4byte -lbl_1_data_A44 = .data:0x00000A44; // type:object size:0x13 data:string -lbl_1_data_A57 = .data:0x00000A57; // type:object size:0x13 data:string -lbl_1_data_A6A = .data:0x00000A6A; // type:object size:0x16 +lbl_1_data_A44 = .data:0x00000A44; // type:object size:0x13 scope:local data:string +lbl_1_data_A57 = .data:0x00000A57; // type:object size:0x13 scope:local data:string +lbl_1_data_A6A = .data:0x00000A6A; // type:object size:0x13 scope:local data:string lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x18C -lbl_1_data_C0C = .data:0x00000C0C; // type:object size:0x13 data:string -lbl_1_data_C1F = .data:0x00000C1F; // type:object size:0x13 data:string -lbl_1_data_C32 = .data:0x00000C32; // type:object size:0x13 data:string -lbl_1_data_C45 = .data:0x00000C45; // type:object size:0x13 data:string +lbl_1_data_C0C = .data:0x00000C0C; // type:object size:0x13 scope:local data:string +lbl_1_data_C1F = .data:0x00000C1F; // type:object size:0x13 scope:local data:string +lbl_1_data_C32 = .data:0x00000C32; // type:object size:0x13 scope:local data:string +lbl_1_data_C45 = .data:0x00000C45; // type:object size:0x13 scope:local data:string lbl_1_data_C58 = .data:0x00000C58; // type:object size:0x1B8 -lbl_1_data_E10 = .data:0x00000E10; // type:object size:0x11 data:string -lbl_1_data_E21 = .data:0x00000E21; // type:object size:0x11 data:string -lbl_1_data_E32 = .data:0x00000E32; // type:object size:0x11 data:string -lbl_1_data_E43 = .data:0x00000E43; // type:object size:0x11 data:string -lbl_1_data_E54 = .data:0x00000E54; // type:object size:0x14 +lbl_1_data_E10 = .data:0x00000E10; // type:object size:0x11 scope:local data:string +lbl_1_data_E21 = .data:0x00000E21; // type:object size:0x11 scope:local data:string +lbl_1_data_E32 = .data:0x00000E32; // type:object size:0x11 scope:local data:string +lbl_1_data_E43 = .data:0x00000E43; // type:object size:0x11 scope:local data:string +lbl_1_data_E54 = .data:0x00000E54; // type:object size:0x11 scope:local data:string lbl_1_data_E68 = .data:0x00000E68; // type:object size:0x14 lbl_1_data_E7C = .data:0x00000E7C; // type:object size:0x84 lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x5C lbl_1_data_F5C = .data:0x00000F5C; // type:object size:0x10 lbl_1_data_F6C = .data:0x00000F6C; // type:object size:0x18 -lbl_1_data_F84 = .data:0x00000F84; // type:object size:0x14 -lbl_1_data_F98 = .data:0x00000F98; // type:object size:0x14 +lbl_1_data_F84 = .data:0x00000F84; // type:object size:0x14 data:float +lbl_1_data_F98 = .data:0x00000F98; // type:object size:0x14 data:float lbl_1_data_FAC = .data:0x00000FAC; // type:object size:0x18 lbl_1_data_FC4 = .data:0x00000FC4; // type:object size:0x14 lbl_1_data_FD8 = .data:0x00000FD8; // type:object size:0x14 @@ -451,47 +455,47 @@ lbl_1_data_1210 = .data:0x00001210; // type:object size:0xC lbl_1_data_121C = .data:0x0000121C; // type:object size:0xC lbl_1_data_1228 = .data:0x00001228; // type:object size:0xC lbl_1_data_1234 = .data:0x00001234; // type:object size:0x20 -lbl_1_data_1254 = .data:0x00001254; // type:object size:0x13 data:string -lbl_1_data_1267 = .data:0x00001267; // type:object size:0x13 data:string -lbl_1_data_127A = .data:0x0000127A; // type:object size:0x13 data:string -lbl_1_data_128D = .data:0x0000128D; // type:object size:0x13 data:string +lbl_1_data_1254 = .data:0x00001254; // type:object size:0x13 scope:local data:string +lbl_1_data_1267 = .data:0x00001267; // type:object size:0x13 scope:local data:string +lbl_1_data_127A = .data:0x0000127A; // type:object size:0x13 scope:local data:string +lbl_1_data_128D = .data:0x0000128D; // type:object size:0x13 scope:local data:string lbl_1_data_12A0 = .data:0x000012A0; // type:object size:0x10 -lbl_1_data_12B0 = .data:0x000012B0; // type:object size:0x13 data:string -lbl_1_data_12C3 = .data:0x000012C3; // type:object size:0x13 data:string -lbl_1_data_12D6 = .data:0x000012D6; // type:object size:0x13 data:string -lbl_1_data_12E9 = .data:0x000012E9; // type:object size:0x13 data:string -lbl_1_data_12FC = .data:0x000012FC; // type:object size:0x13 data:string -lbl_1_data_130F = .data:0x0000130F; // type:object size:0x13 data:string -lbl_1_data_1322 = .data:0x00001322; // type:object size:0x13 data:string -lbl_1_data_1335 = .data:0x00001335; // type:object size:0x13 data:string -lbl_1_data_1348 = .data:0x00001348; // type:object size:0x14 +lbl_1_data_12B0 = .data:0x000012B0; // type:object size:0x13 scope:local data:string +lbl_1_data_12C3 = .data:0x000012C3; // type:object size:0x13 scope:local data:string +lbl_1_data_12D6 = .data:0x000012D6; // type:object size:0x13 scope:local data:string +lbl_1_data_12E9 = .data:0x000012E9; // type:object size:0x13 scope:local data:string +lbl_1_data_12FC = .data:0x000012FC; // type:object size:0x13 scope:local data:string +lbl_1_data_130F = .data:0x0000130F; // type:object size:0x13 scope:local data:string +lbl_1_data_1322 = .data:0x00001322; // type:object size:0x13 scope:local data:string +lbl_1_data_1335 = .data:0x00001335; // type:object size:0x13 scope:local data:string +lbl_1_data_1348 = .data:0x00001348; // type:object size:0x13 scope:local data:string lbl_1_data_135C = .data:0x0000135C; // type:object size:0x24 lbl_1_data_1380 = .data:0x00001380; // type:object size:0x38 data:4byte lbl_1_data_13B8 = .data:0x000013B8; // type:object size:0x38 data:4byte -lbl_1_data_13F0 = .data:0x000013F0; // type:object size:0x13 data:string -lbl_1_data_1403 = .data:0x00001403; // type:object size:0x13 data:string -lbl_1_data_1416 = .data:0x00001416; // type:object size:0x13 data:string -lbl_1_data_1429 = .data:0x00001429; // type:object size:0x13 data:string -lbl_1_data_143C = .data:0x0000143C; // type:object size:0x14 +lbl_1_data_13F0 = .data:0x000013F0; // type:object size:0x13 scope:local data:string +lbl_1_data_1403 = .data:0x00001403; // type:object size:0x13 scope:local data:string +lbl_1_data_1416 = .data:0x00001416; // type:object size:0x13 scope:local data:string +lbl_1_data_1429 = .data:0x00001429; // type:object size:0x13 scope:local data:string +lbl_1_data_143C = .data:0x0000143C; // type:object size:0x13 scope:local data:string lbl_1_data_1450 = .data:0x00001450; // type:object size:0xB4 lbl_1_data_1504 = .data:0x00001504; // type:object size:0x50 -lbl_1_data_1554 = .data:0x00001554; // type:object size:0x13 data:string -lbl_1_data_1567 = .data:0x00001567; // type:object size:0x13 data:string -lbl_1_data_157A = .data:0x0000157A; // type:object size:0x13 data:string -lbl_1_data_158D = .data:0x0000158D; // type:object size:0x13 data:string -lbl_1_data_15A0 = .data:0x000015A0; // type:object size:0x13 data:string -lbl_1_data_15B3 = .data:0x000015B3; // type:object size:0x12 data:string -lbl_1_data_15C5 = .data:0x000015C5; // type:object size:0x25 data:string -lbl_1_data_15EA = .data:0x000015EA; // type:object size:0x22 data:string -lbl_1_data_160C = .data:0x0000160C; // type:object size:0x9 data:string -lbl_1_data_1615 = .data:0x00001615; // type:object size:0xA data:string -lbl_1_data_161F = .data:0x0000161F; // type:object size:0xE data:string -lbl_1_data_162D = .data:0x0000162D; // type:object size:0x6 data:string -lbl_1_data_1633 = .data:0x00001633; // type:object size:0x1D data:string +lbl_1_data_1554 = .data:0x00001554; // type:object size:0x13 scope:local data:string +lbl_1_data_1567 = .data:0x00001567; // type:object size:0x13 scope:local data:string +lbl_1_data_157A = .data:0x0000157A; // type:object size:0x13 scope:local data:string +lbl_1_data_158D = .data:0x0000158D; // type:object size:0x13 scope:local data:string +lbl_1_data_15A0 = .data:0x000015A0; // type:object size:0x13 scope:local data:string +lbl_1_data_15B3 = .data:0x000015B3; // type:object size:0x12 scope:local data:string +lbl_1_data_15C5 = .data:0x000015C5; // type:object size:0x25 scope:local data:string +lbl_1_data_15EA = .data:0x000015EA; // type:object size:0x22 scope:local data:string +lbl_1_data_160C = .data:0x0000160C; // type:object size:0x9 scope:local data:string +lbl_1_data_1615 = .data:0x00001615; // type:object size:0xA scope:local data:string +lbl_1_data_161F = .data:0x0000161F; // type:object size:0xE scope:local data:string +lbl_1_data_162D = .data:0x0000162D; // type:object size:0x6 scope:local data:string +lbl_1_data_1633 = .data:0x00001633; // type:object size:0x1D scope:local data:string jumptable_1_data_1650 = .data:0x00001650; // type:object size:0x70 scope:local -lbl_1_data_16C0 = .data:0x000016C0; // type:object size:0x1C +lbl_1_data_16C0 = .data:0x000016C0; // type:object size:0x1B scope:local data:string jumptable_1_data_16DC = .data:0x000016DC; // type:object size:0xC4 scope:local -lbl_1_data_17A0 = .data:0x000017A0; // type:object size:0x24 data:string +lbl_1_data_17A0 = .data:0x000017A0; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte @@ -528,7 +532,8 @@ lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float -lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x8 data:float +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:float +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:float lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/option/splits.txt b/config/GMPP01_00/rels/option/splits.txt index 531cd645..0b7d9789 100644 --- a/config/GMPP01_00/rels/option/splits.txt +++ b/config/GMPP01_00/rels/option/splits.txt @@ -5,3 +5,57 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/option/scene.c: + .text start:0x000000A0 end:0x000007F8 + .rodata start:0x00000000 end:0x00000028 + .bss start:0x00000000 end:0x00000010 + +REL/option/camera.c: + .text start:0x000007F8 end:0x000015A4 + .rodata start:0x00000028 end:0x000000A8 + .data start:0x00000000 end:0x00000068 + .bss start:0x00000010 end:0x00000018 + +REL/option/room.c: + .text start:0x000015A4 end:0x000021F8 + .rodata start:0x000000A8 end:0x000000E0 + .data start:0x00000068 end:0x00000098 + .bss start:0x00000018 end:0x00000020 + +REL/option/guide.c: + .text start:0x000021F8 end:0x00002E04 + .rodata start:0x000000E0 end:0x00000160 + .data start:0x00000098 end:0x000000A0 + .bss start:0x00000020 end:0x00000028 + +REL/option/state.c: + .text start:0x00002E04 end:0x00003158 + .rodata start:0x00000160 end:0x00000170 + .data start:0x000000A0 end:0x00000108 + .bss start:0x00000028 end:0x00000030 + +REL/option/rumble.c: + .text start:0x00003158 end:0x00004028 + .rodata start:0x00000170 end:0x000001A8 + .data start:0x00000108 end:0x00000118 + .bss start:0x00000030 end:0x00000038 + +REL/option/sound.c: + .text start:0x00004028 end:0x000080E4 + .rodata start:0x000001A8 end:0x000013C0 + .data start:0x00000118 end:0x00000210 + .bss start:0x00000038 end:0x00000040 + +REL/option/record.c: + .text start:0x000080E4 end:0x0000A3E8 + .rodata start:0x000013C0 end:0x000019C8 + .data start:0x00000210 end:0x00000254 + .bss start:0x00000040 end:0x00000044 + +REL/option/window.c: + .text start:0x0000A3E8 end:0x0000A948 + .rodata start:0x000019C8 end:0x000019E8 diff --git a/config/GMPP01_00/rels/option/symbols.txt b/config/GMPP01_00/rels/option/symbols.txt index 26d4655e..16625f3c 100644 --- a/config/GMPP01_00/rels/option/symbols.txt +++ b/config/GMPP01_00/rels/option/symbols.txt @@ -1,379 +1,381 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0xC0 -fn_1_160 = .text:0x00000160; // type:function size:0x110 -fn_1_270 = .text:0x00000270; // type:function size:0xE4 -fn_1_354 = .text:0x00000354; // type:function size:0x114 -fn_1_468 = .text:0x00000468; // type:function size:0xE8 -fn_1_550 = .text:0x00000550; // type:function size:0x34 -fn_1_584 = .text:0x00000584; // type:function size:0x34 -fn_1_5B8 = .text:0x000005B8; // type:function size:0x34 -fn_1_5EC = .text:0x000005EC; // type:function size:0xFC -fn_1_6E8 = .text:0x000006E8; // type:function size:0x110 -fn_1_7F8 = .text:0x000007F8; // type:function size:0x244 -fn_1_A3C = .text:0x00000A3C; // type:function size:0x30 -fn_1_A6C = .text:0x00000A6C; // type:function size:0x84 -fn_1_AF0 = .text:0x00000AF0; // type:function size:0x84 -fn_1_B74 = .text:0x00000B74; // type:function size:0x84 -fn_1_BF8 = .text:0x00000BF8; // type:function size:0x30 -fn_1_C28 = .text:0x00000C28; // type:function size:0x30 -fn_1_C58 = .text:0x00000C58; // type:function size:0x30 -fn_1_C88 = .text:0x00000C88; // type:function size:0x30 -fn_1_CB8 = .text:0x00000CB8; // type:function size:0x8C -fn_1_D44 = .text:0x00000D44; // type:function size:0x28 -fn_1_D6C = .text:0x00000D6C; // type:function size:0x578 -fn_1_12E4 = .text:0x000012E4; // type:function size:0x200 -fn_1_14E4 = .text:0x000014E4; // type:function size:0xC0 -fn_1_15A4 = .text:0x000015A4; // type:function size:0x1F4 -fn_1_1798 = .text:0x00001798; // type:function size:0xAC -fn_1_1844 = .text:0x00001844; // type:function size:0x1E8 -fn_1_1A2C = .text:0x00001A2C; // type:function size:0x44 -fn_1_1A70 = .text:0x00001A70; // type:function size:0x1C -fn_1_1A8C = .text:0x00001A8C; // type:function size:0x5FC -fn_1_2088 = .text:0x00002088; // type:function size:0x88 -fn_1_2110 = .text:0x00002110; // type:function size:0x34 -fn_1_2144 = .text:0x00002144; // type:function size:0x80 -fn_1_21C4 = .text:0x000021C4; // type:function size:0x34 -fn_1_21F8 = .text:0x000021F8; // type:function size:0x224 -fn_1_241C = .text:0x0000241C; // type:function size:0x8C -fn_1_24A8 = .text:0x000024A8; // type:function size:0x44 -fn_1_24EC = .text:0x000024EC; // type:function size:0x1C -fn_1_2508 = .text:0x00002508; // type:function size:0xA4 -fn_1_25AC = .text:0x000025AC; // type:function size:0x46C -fn_1_2A18 = .text:0x00002A18; // type:function size:0x2E8 -fn_1_2D00 = .text:0x00002D00; // type:function size:0x104 -fn_1_2E04 = .text:0x00002E04; // type:function size:0x148 -fn_1_2F4C = .text:0x00002F4C; // type:function size:0x64 -fn_1_2FB0 = .text:0x00002FB0; // type:function size:0x1A8 -fn_1_3158 = .text:0x00003158; // type:function size:0xD4 -fn_1_322C = .text:0x0000322C; // type:function size:0x64 -fn_1_3290 = .text:0x00003290; // type:function size:0x44 -fn_1_32D4 = .text:0x000032D4; // type:function size:0x1C -fn_1_32F0 = .text:0x000032F0; // type:function size:0x4BC -fn_1_37AC = .text:0x000037AC; // type:function size:0xBC -fn_1_3868 = .text:0x00003868; // type:function size:0x54 -fn_1_38BC = .text:0x000038BC; // type:function size:0xD0 -fn_1_398C = .text:0x0000398C; // type:function size:0x54 -fn_1_39E0 = .text:0x000039E0; // type:function size:0x128 -fn_1_3B08 = .text:0x00003B08; // type:function size:0x84 -fn_1_3B8C = .text:0x00003B8C; // type:function size:0x54 -fn_1_3BE0 = .text:0x00003BE0; // type:function size:0x8C -fn_1_3C6C = .text:0x00003C6C; // type:function size:0x94 -fn_1_3D00 = .text:0x00003D00; // type:function size:0x54 -fn_1_3D54 = .text:0x00003D54; // type:function size:0xC8 -fn_1_3E1C = .text:0x00003E1C; // type:function size:0xB4 -fn_1_3ED0 = .text:0x00003ED0; // type:function size:0x58 -fn_1_3F28 = .text:0x00003F28; // type:function size:0xAC -fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x54 -fn_1_4028 = .text:0x00004028; // type:function size:0x2B4 -fn_1_42DC = .text:0x000042DC; // type:function size:0xAC -fn_1_4388 = .text:0x00004388; // type:function size:0x44 -fn_1_43CC = .text:0x000043CC; // type:function size:0x1C -fn_1_43E8 = .text:0x000043E8; // type:function size:0x270 -fn_1_4658 = .text:0x00004658; // type:function size:0x424 -fn_1_4A7C = .text:0x00004A7C; // type:function size:0x3D4 -fn_1_4E50 = .text:0x00004E50; // type:function size:0x93C -fn_1_578C = .text:0x0000578C; // type:function size:0x8B8 -fn_1_6044 = .text:0x00006044; // type:function size:0xF8 -fn_1_613C = .text:0x0000613C; // type:function size:0x64 -fn_1_61A0 = .text:0x000061A0; // type:function size:0xFC -fn_1_629C = .text:0x0000629C; // type:function size:0x54 -fn_1_62F0 = .text:0x000062F0; // type:function size:0xFC -fn_1_63EC = .text:0x000063EC; // type:function size:0x54 -fn_1_6440 = .text:0x00006440; // type:function size:0x94 -fn_1_64D4 = .text:0x000064D4; // type:function size:0x54 -fn_1_6528 = .text:0x00006528; // type:function size:0x118 -fn_1_6640 = .text:0x00006640; // type:function size:0x54 -fn_1_6694 = .text:0x00006694; // type:function size:0x38 -fn_1_66CC = .text:0x000066CC; // type:function size:0x38 -fn_1_6704 = .text:0x00006704; // type:function size:0xC4 -fn_1_67C8 = .text:0x000067C8; // type:function size:0x60 -fn_1_6828 = .text:0x00006828; // type:function size:0x1E4 -fn_1_6A0C = .text:0x00006A0C; // type:function size:0x74 -fn_1_6A80 = .text:0x00006A80; // type:function size:0x1DC -fn_1_6C5C = .text:0x00006C5C; // type:function size:0x74 -fn_1_6CD0 = .text:0x00006CD0; // type:function size:0x1D4 -fn_1_6EA4 = .text:0x00006EA4; // type:function size:0xA4 -fn_1_6F48 = .text:0x00006F48; // type:function size:0x1D4 -fn_1_711C = .text:0x0000711C; // type:function size:0xA4 -fn_1_71C0 = .text:0x000071C0; // type:function size:0xE8 -fn_1_72A8 = .text:0x000072A8; // type:function size:0x68 -fn_1_7310 = .text:0x00007310; // type:function size:0x400 -fn_1_7710 = .text:0x00007710; // type:function size:0x190 -fn_1_78A0 = .text:0x000078A0; // type:function size:0x60 -fn_1_7900 = .text:0x00007900; // type:function size:0x3C -fn_1_793C = .text:0x0000793C; // type:function size:0x5C4 -fn_1_7F00 = .text:0x00007F00; // type:function size:0x148 -fn_1_8048 = .text:0x00008048; // type:function size:0x9C -fn_1_80E4 = .text:0x000080E4; // type:function size:0x178 -fn_1_825C = .text:0x0000825C; // type:function size:0x54 -fn_1_82B0 = .text:0x000082B0; // type:function size:0x44 -fn_1_82F4 = .text:0x000082F4; // type:function size:0x1C -fn_1_8310 = .text:0x00008310; // type:function size:0x778 -fn_1_8A88 = .text:0x00008A88; // type:function size:0xD0 -fn_1_8B58 = .text:0x00008B58; // type:function size:0x54 -fn_1_8BAC = .text:0x00008BAC; // type:function size:0xD8 -fn_1_8C84 = .text:0x00008C84; // type:function size:0xFC -fn_1_8D80 = .text:0x00008D80; // type:function size:0x54 -fn_1_8DD4 = .text:0x00008DD4; // type:function size:0xC4 -fn_1_8E98 = .text:0x00008E98; // type:function size:0x60 -fn_1_8EF8 = .text:0x00008EF8; // type:function size:0x40 -fn_1_8F38 = .text:0x00008F38; // type:function size:0x72C -fn_1_9664 = .text:0x00009664; // type:function size:0x9C -fn_1_9700 = .text:0x00009700; // type:function size:0x344 -fn_1_9A44 = .text:0x00009A44; // type:function size:0x7C -fn_1_9AC0 = .text:0x00009AC0; // type:function size:0x88C -fn_1_A34C = .text:0x0000A34C; // type:function size:0x9C -fn_1_A3E8 = .text:0x0000A3E8; // type:function size:0x260 -fn_1_A648 = .text:0x0000A648; // type:function size:0x40 -fn_1_A688 = .text:0x0000A688; // type:function size:0x18 -fn_1_A6A0 = .text:0x0000A6A0; // type:function size:0x18 -fn_1_A6B8 = .text:0x0000A6B8; // type:function size:0x54 -fn_1_A70C = .text:0x0000A70C; // type:function size:0x40 -fn_1_A74C = .text:0x0000A74C; // type:function size:0x40 -fn_1_A78C = .text:0x0000A78C; // type:function size:0x38 -fn_1_A7C4 = .text:0x0000A7C4; // type:function size:0x38 -fn_1_A7FC = .text:0x0000A7FC; // type:function size:0x20 -fn_1_A81C = .text:0x0000A81C; // type:function size:0x24 -fn_1_A840 = .text:0x0000A840; // type:function size:0x108 +ObjectSetup = .text:0x000000A0; // type:function size:0xC0 +OptionFadeSprite = .text:0x00000160; // type:function size:0x110 +FadeSprite = .text:0x00000270; // type:function size:0xE4 scope:local +OptionFadeModel = .text:0x00000354; // type:function size:0x114 scope:local +FadeModel = .text:0x00000468; // type:function size:0xE8 scope:local +OptionPadCheck = .text:0x00000550; // type:function size:0x34 +OptionPadDStkRepCheck = .text:0x00000584; // type:function size:0x34 +OptionPadDStkCheck = .text:0x000005B8; // type:function size:0x34 +SceneMain = .text:0x000005EC; // type:function size:0xFC scope:local +KillScene = .text:0x000006E8; // type:function size:0x110 scope:local +OptionCameraCreate = .text:0x000007F8; // type:function size:0x244 +OptionCameraKill = .text:0x00000A3C; // type:function size:0x30 +OptionCameraTargetSet = .text:0x00000A6C; // type:function size:0x84 +OptionCameraFocusSet = .text:0x00000AF0; // type:function size:0x84 +OptionCameraViewSet = .text:0x00000B74; // type:function size:0x84 +OptionCameraZoomGet = .text:0x00000BF8; // type:function size:0x30 +OptionCameraRotGet = .text:0x00000C28; // type:function size:0x30 +OptionCameraPosGet = .text:0x00000C58; // type:function size:0x30 +OptionCameraTargetGet = .text:0x00000C88; // type:function size:0x30 +OptionCameraDoneCheck = .text:0x00000CB8; // type:function size:0x8C +ExecCameraObj = .text:0x00000D44; // type:function size:0x28 scope:local +ExecCamera = .text:0x00000D6C; // type:function size:0x578 scope:local +CameraExecDebug = .text:0x000012E4; // type:function size:0x200 scope:local +CameraPrintDebug = .text:0x000014E4; // type:function size:0xC0 scope:local +OptionRoomCreate = .text:0x000015A4; // type:function size:0x1F4 +OptionRoomKill = .text:0x00001798; // type:function size:0xAC +MoveOption = .text:0x00001844; // type:function size:0x1E8 scope:local +OptionRoomExecModeSet = .text:0x00001A2C; // type:function size:0x44 +OptionRoomExecModeGet = .text:0x00001A70; // type:function size:0x1C +ExecRoom = .text:0x00001A8C; // type:function size:0x5FC scope:local +CreateRoomBG = .text:0x00002088; // type:function size:0x88 scope:local +KillRoomBG = .text:0x00002110; // type:function size:0x34 scope:local +CreateArrow = .text:0x00002144; // type:function size:0x80 scope:local +KillArrow = .text:0x000021C4; // type:function size:0x34 scope:local +OptionGuideCreate = .text:0x000021F8; // type:function size:0x224 +OptionGuideKill = .text:0x0000241C; // type:function size:0x8C +SetExecMode = .text:0x000024A8; // type:function size:0x44 scope:local +GetExecMode = .text:0x000024EC; // type:function size:0x1C scope:local +OptionGuideWalkExec = .text:0x00002508; // type:function size:0xA4 +ExecGuide = .text:0x000025AC; // type:function size:0x46C scope:local +UpdateGuide = .text:0x00002A18; // type:function size:0x2E8 scope:local +LerpAngle = .text:0x00002D00; // type:function size:0x104 scope:local +OptionStateCreate = .text:0x00002E04; // type:function size:0x148 +OptionStateKill = .text:0x00002F4C; // type:function size:0x64 +ExecState = .text:0x00002FB0; // type:function size:0x1A8 scope:local +OptionRumbleCreate = .text:0x00003158; // type:function size:0xD4 +OptionRumbleKill = .text:0x0000322C; // type:function size:0x64 +OptionRumbleExecModeSet = .text:0x00003290; // type:function size:0x44 +OptionRumbleExecModeGet = .text:0x000032D4; // type:function size:0x1C +ExecRumble = .text:0x000032F0; // type:function size:0x4BC scope:local +CreateHand = .text:0x000037AC; // type:function size:0xBC scope:local +KillHand = .text:0x00003868; // type:function size:0x54 scope:local +CreateSystem = .text:0x000038BC; // type:function size:0xD0 scope:local +KillSystem = .text:0x0000398C; // type:function size:0x54 scope:local +StartSystemMotion = .text:0x000039E0; // type:function size:0x128 scope:local +CreatePad = .text:0x00003B08; // type:function size:0x84 scope:local +KillPad = .text:0x00003B8C; // type:function size:0x54 scope:local +ShakePad = .text:0x00003BE0; // type:function size:0x8C scope:local +CreatePadFilter = .text:0x00003C6C; // type:function size:0x94 scope:local +KillPadFilter = .text:0x00003D00; // type:function size:0x54 scope:local +OptionRumbleMotionShowStart = .text:0x00003D54; // type:function size:0xC8 +OptionRumbleMotionHideStart = .text:0x00003E1C; // type:function size:0xB4 +OptionRumbleMotionCheck = .text:0x00003ED0; // type:function size:0x58 +CreateHiliteOn = .text:0x00003F28; // type:function size:0xAC scope:local +KillHiliteOn = .text:0x00003FD4; // type:function size:0x54 scope:local +OptionSoundCreate = .text:0x00004028; // type:function size:0x2B4 +OptionSoundKill = .text:0x000042DC; // type:function size:0xAC +OptionSoundExecModeSet = .text:0x00004388; // type:function size:0x44 +OptionSoundExecModeGet = .text:0x000043CC; // type:function size:0x1C +ExecZoom = .text:0x000043E8; // type:function size:0x270 scope:local +ExecOptionSel = .text:0x00004658; // type:function size:0x424 scope:local +ExecOutputMode = .text:0x00004A7C; // type:function size:0x3D4 scope:local +ExecMusic = .text:0x00004E50; // type:function size:0x93C scope:local +ExecVoice = .text:0x0000578C; // type:function size:0x8B8 scope:local +LightSetCurr = .text:0x00006044; // type:function size:0xF8 scope:local +LightSetNone = .text:0x0000613C; // type:function size:0x64 scope:local +CreateHand = .text:0x000061A0; // type:function size:0xFC scope:local +KillHand = .text:0x0000629C; // type:function size:0x54 scope:local +CreateOutputModeHand = .text:0x000062F0; // type:function size:0xFC scope:local +KillOutputModeHand = .text:0x000063EC; // type:function size:0x54 scope:local +CreateSystem = .text:0x00006440; // type:function size:0x94 scope:local +KillSystem = .text:0x000064D4; // type:function size:0x54 scope:local +CreateLightObj = .text:0x00006528; // type:function size:0x118 scope:local +KillLightObj = .text:0x00006640; // type:function size:0x54 scope:local +LightDispOff = .text:0x00006694; // type:function size:0x38 scope:local +LightDispOn = .text:0x000066CC; // type:function size:0x38 scope:local +CreateSpr = .text:0x00006704; // type:function size:0xC4 scope:local +KillSpr = .text:0x000067C8; // type:function size:0x60 scope:local +OptionSelDisp = .text:0x00006828; // type:function size:0x1E4 scope:local +OptionSelHide = .text:0x00006A0C; // type:function size:0x74 scope:local +OutputModeDisp = .text:0x00006A80; // type:function size:0x1DC scope:local +OutputModeHide = .text:0x00006C5C; // type:function size:0x74 scope:local +MusicPageDisp = .text:0x00006CD0; // type:function size:0x1D4 scope:local +MusicPageHide = .text:0x00006EA4; // type:function size:0xA4 scope:local +VoicePageDisp = .text:0x00006F48; // type:function size:0x1D4 scope:local +VoicePageHide = .text:0x0000711C; // type:function size:0xA4 scope:local +CreateNoteObj = .text:0x000071C0; // type:function size:0xE8 scope:local +KillNote = .text:0x000072A8; // type:function size:0x68 scope:local +HandleNote = .text:0x00007310; // type:function size:0x400 scope:local +CreateNote = .text:0x00007710; // type:function size:0x190 scope:local +CreateNoteSpawner = .text:0x000078A0; // type:function size:0x60 scope:local +KillNoteSpawner = .text:0x00007900; // type:function size:0x3C scope:local +ExecNoteSpawner = .text:0x0000793C; // type:function size:0x5C4 scope:local +PlaySound = .text:0x00007F00; // type:function size:0x148 scope:local +FadeSound = .text:0x00008048; // type:function size:0x9C scope:local +OptionRecordCreate = .text:0x000080E4; // type:function size:0x178 +OptionRecordKill = .text:0x0000825C; // type:function size:0x54 +OptionRecordExecModeSet = .text:0x000082B0; // type:function size:0x44 +OptionRecordExecModeGet = .text:0x000082F4; // type:function size:0x1C +ExecRecord = .text:0x00008310; // type:function size:0x778 scope:local +CreateSystem = .text:0x00008A88; // type:function size:0xD0 scope:local +KillSystem = .text:0x00008B58; // type:function size:0x54 scope:local +StartSystemMotion = .text:0x00008BAC; // type:function size:0xD8 scope:local +CreateHand = .text:0x00008C84; // type:function size:0xFC scope:local +KillHand = .text:0x00008D80; // type:function size:0x54 scope:local +CreateSpr = .text:0x00008DD4; // type:function size:0xC4 scope:local +KillSpr = .text:0x00008E98; // type:function size:0x60 scope:local +GetDigit = .text:0x00008EF8; // type:function size:0x40 scope:local +ShowBoard = .text:0x00008F38; // type:function size:0x72C scope:local +HideBoard = .text:0x00009664; // type:function size:0x9C scope:local +ShowTotal = .text:0x00009700; // type:function size:0x344 scope:local +HideTotal = .text:0x00009A44; // type:function size:0x7C scope:local +ShowMG = .text:0x00009AC0; // type:function size:0x88C scope:local +HideMG = .text:0x0000A34C; // type:function size:0x9C scope:local +OptionWinCreate = .text:0x0000A3E8; // type:function size:0x260 +OptionWinKill = .text:0x0000A648; // type:function size:0x40 +OptionWinAnimIn = .text:0x0000A688; // type:function size:0x18 +OptionWinAnimOut = .text:0x0000A6A0; // type:function size:0x18 +OptionWinMesSet = .text:0x0000A6B8; // type:function size:0x54 +OptionWinInsertMesSet = .text:0x0000A70C; // type:function size:0x40 +OptionWinPosSet = .text:0x0000A74C; // type:function size:0x40 +OptionWinDispOn = .text:0x0000A78C; // type:function size:0x38 +OptionWinDispOff = .text:0x0000A7C4; // type:function size:0x38 +OptionWinMesWait = .text:0x0000A7FC; // type:function size:0x20 +OptionWinChoiceSet = .text:0x0000A81C; // type:function size:0x24 +ExecWindow = .text:0x0000A840; // type:function size:0x108 scope:local _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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -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_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0xC data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x38 -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8C0 -lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x30 -lbl_1_rodata_AD0 = .rodata:0x00000AD0; // type:object size:0x780 -lbl_1_rodata_1250 = .rodata:0x00001250; // type:object size:0x4 data:float -lbl_1_rodata_1254 = .rodata:0x00001254; // type:object size:0x4 data:float -lbl_1_rodata_1258 = .rodata:0x00001258; // type:object size:0x4 data:float -lbl_1_rodata_125C = .rodata:0x0000125C; // type:object size:0x4 data:float -lbl_1_rodata_1260 = .rodata:0x00001260; // type:object size:0x4 data:float -lbl_1_rodata_1264 = .rodata:0x00001264; // type:object size:0x4 data:float -lbl_1_rodata_1268 = .rodata:0x00001268; // type:object size:0x4 data:float -lbl_1_rodata_1270 = .rodata:0x00001270; // type:object size:0x8 data:double -lbl_1_rodata_1278 = .rodata:0x00001278; // type:object size:0x8 -lbl_1_rodata_1280 = .rodata:0x00001280; // type:object size:0x8 -lbl_1_rodata_1288 = .rodata:0x00001288; // type:object size:0x8 -lbl_1_rodata_1290 = .rodata:0x00001290; // type:object size:0x4 data:float -lbl_1_rodata_1294 = .rodata:0x00001294; // type:object size:0x4 data:float -lbl_1_rodata_1298 = .rodata:0x00001298; // type:object size:0x4 data:float -lbl_1_rodata_129C = .rodata:0x0000129C; // type:object size:0x4 data:float -lbl_1_rodata_12A0 = .rodata:0x000012A0; // type:object size:0x4 data:float -lbl_1_rodata_12A4 = .rodata:0x000012A4; // type:object size:0x4 data:float -lbl_1_rodata_12A8 = .rodata:0x000012A8; // type:object size:0x4 data:float -lbl_1_rodata_12AC = .rodata:0x000012AC; // type:object size:0x4 data:float -lbl_1_rodata_12B0 = .rodata:0x000012B0; // type:object size:0x4 data:float -lbl_1_rodata_12B4 = .rodata:0x000012B4; // type:object size:0x4 data:float -lbl_1_rodata_12B8 = .rodata:0x000012B8; // type:object size:0x4 data:float -lbl_1_rodata_12BC = .rodata:0x000012BC; // type:object size:0x4 data:float -lbl_1_rodata_12C0 = .rodata:0x000012C0; // type:object size:0x4 data:float -lbl_1_rodata_12C4 = .rodata:0x000012C4; // type:object size:0x4 data:float -lbl_1_rodata_12C8 = .rodata:0x000012C8; // type:object size:0x4 data:float -lbl_1_rodata_12CC = .rodata:0x000012CC; // type:object size:0x4 data:float -lbl_1_rodata_12D0 = .rodata:0x000012D0; // type:object size:0x24 -lbl_1_rodata_12F4 = .rodata:0x000012F4; // type:object size:0x4 data:float -lbl_1_rodata_12F8 = .rodata:0x000012F8; // type:object size:0x4 data:float -lbl_1_rodata_12FC = .rodata:0x000012FC; // type:object size:0x4 data:float -lbl_1_rodata_1300 = .rodata:0x00001300; // type:object size:0x4 data:float -lbl_1_rodata_1304 = .rodata:0x00001304; // type:object size:0x4 data:float -lbl_1_rodata_1308 = .rodata:0x00001308; // type:object size:0x1C -lbl_1_rodata_1324 = .rodata:0x00001324; // type:object size:0x4 data:float -lbl_1_rodata_1328 = .rodata:0x00001328; // type:object size:0x4 data:float -lbl_1_rodata_132C = .rodata:0x0000132C; // type:object size:0x4 data:float -lbl_1_rodata_1330 = .rodata:0x00001330; // type:object size:0x14 -lbl_1_rodata_1344 = .rodata:0x00001344; // type:object size:0x4 data:float -lbl_1_rodata_1348 = .rodata:0x00001348; // type:object size:0x4 data:float -lbl_1_rodata_134C = .rodata:0x0000134C; // type:object size:0x4 -lbl_1_rodata_1350 = .rodata:0x00001350; // type:object size:0x8 -lbl_1_rodata_1358 = .rodata:0x00001358; // type:object size:0x8 data:double -lbl_1_rodata_1360 = .rodata:0x00001360; // type:object size:0x8 data:double -lbl_1_rodata_1368 = .rodata:0x00001368; // type:object size:0x4 data:float -lbl_1_rodata_136C = .rodata:0x0000136C; // type:object size:0x4 data:float -lbl_1_rodata_1370 = .rodata:0x00001370; // type:object size:0x8 data:double -lbl_1_rodata_1378 = .rodata:0x00001378; // type:object size:0x8 data:double -lbl_1_rodata_1380 = .rodata:0x00001380; // type:object size:0x4 data:float -lbl_1_rodata_1384 = .rodata:0x00001384; // type:object size:0x4 data:float -lbl_1_rodata_1388 = .rodata:0x00001388; // type:object size:0x8 data:double -lbl_1_rodata_1390 = .rodata:0x00001390; // type:object size:0x4 data:float -lbl_1_rodata_1394 = .rodata:0x00001394; // type:object size:0x4 data:float -lbl_1_rodata_1398 = .rodata:0x00001398; // type:object size:0x4 data:float -lbl_1_rodata_139C = .rodata:0x0000139C; // type:object size:0x4 data:float -lbl_1_rodata_13A0 = .rodata:0x000013A0; // type:object size:0x8 data:double -lbl_1_rodata_13A8 = .rodata:0x000013A8; // type:object size:0x8 data:double -lbl_1_rodata_13B0 = .rodata:0x000013B0; // type:object size:0x4 data:float -lbl_1_rodata_13B4 = .rodata:0x000013B4; // type:object size:0x4 data:float -lbl_1_rodata_13B8 = .rodata:0x000013B8; // type:object size:0x8 data:float -lbl_1_rodata_13C0 = .rodata:0x000013C0; // type:object size:0x18 -lbl_1_rodata_13D8 = .rodata:0x000013D8; // type:object size:0x4 data:float -lbl_1_rodata_13DC = .rodata:0x000013DC; // type:object size:0x4 data:float -lbl_1_rodata_13E0 = .rodata:0x000013E0; // type:object size:0x4 data:float -lbl_1_rodata_13E4 = .rodata:0x000013E4; // type:object size:0x4 data:float -lbl_1_rodata_13E8 = .rodata:0x000013E8; // type:object size:0x4 data:float -lbl_1_rodata_13EC = .rodata:0x000013EC; // type:object size:0x4 data:float -lbl_1_rodata_13F0 = .rodata:0x000013F0; // type:object size:0x4 data:float -lbl_1_rodata_13F4 = .rodata:0x000013F4; // type:object size:0x4 data:float -lbl_1_rodata_13F8 = .rodata:0x000013F8; // type:object size:0x8 data:double -lbl_1_rodata_1400 = .rodata:0x00001400; // type:object size:0x8 data:double -lbl_1_rodata_1408 = .rodata:0x00001408; // type:object size:0x4 data:float -lbl_1_rodata_140C = .rodata:0x0000140C; // type:object size:0x4 data:float -lbl_1_rodata_1410 = .rodata:0x00001410; // type:object size:0x4 data:float -lbl_1_rodata_1414 = .rodata:0x00001414; // type:object size:0x4 data:float -lbl_1_rodata_1418 = .rodata:0x00001418; // type:object size:0x4 data:float -lbl_1_rodata_1420 = .rodata:0x00001420; // type:object size:0x8 data:double -lbl_1_rodata_1428 = .rodata:0x00001428; // type:object size:0x4 data:float -lbl_1_rodata_142C = .rodata:0x0000142C; // type:object size:0x4 data:float -lbl_1_rodata_1430 = .rodata:0x00001430; // type:object size:0x4 data:float -lbl_1_rodata_1434 = .rodata:0x00001434; // type:object size:0x4 data:float -lbl_1_rodata_1438 = .rodata:0x00001438; // type:object size:0x4 data:float -lbl_1_rodata_143C = .rodata:0x0000143C; // type:object size:0x264 -lbl_1_rodata_16A0 = .rodata:0x000016A0; // type:object size:0x4 data:float -lbl_1_rodata_16A4 = .rodata:0x000016A4; // type:object size:0x4 data:float -lbl_1_rodata_16A8 = .rodata:0x000016A8; // type:object size:0x4 data:float -lbl_1_rodata_16AC = .rodata:0x000016AC; // type:object size:0x4 data:float -lbl_1_rodata_16B0 = .rodata:0x000016B0; // type:object size:0x4 data:float -lbl_1_rodata_16B4 = .rodata:0x000016B4; // type:object size:0x4 data:float -lbl_1_rodata_16B8 = .rodata:0x000016B8; // type:object size:0x4 data:float -lbl_1_rodata_16BC = .rodata:0x000016BC; // type:object size:0x4 data:float -lbl_1_rodata_16C0 = .rodata:0x000016C0; // type:object size:0x4 data:float -lbl_1_rodata_16C4 = .rodata:0x000016C4; // type:object size:0x4 data:float -lbl_1_rodata_16C8 = .rodata:0x000016C8; // type:object size:0x4 data:float -lbl_1_rodata_16CC = .rodata:0x000016CC; // type:object size:0x4 data:float -lbl_1_rodata_16D0 = .rodata:0x000016D0; // type:object size:0x4 data:float -lbl_1_rodata_16D4 = .rodata:0x000016D4; // type:object size:0x4 data:float -lbl_1_rodata_16D8 = .rodata:0x000016D8; // type:object size:0x4 data:float -lbl_1_rodata_16DC = .rodata:0x000016DC; // type:object size:0x4 data:float -lbl_1_rodata_16E0 = .rodata:0x000016E0; // type:object size:0x4 data:float -lbl_1_rodata_16E4 = .rodata:0x000016E4; // type:object size:0x4 data:float -lbl_1_rodata_16E8 = .rodata:0x000016E8; // type:object size:0x4 data:float -lbl_1_rodata_16EC = .rodata:0x000016EC; // type:object size:0x4 data:float -lbl_1_rodata_16F0 = .rodata:0x000016F0; // type:object size:0xD4 -lbl_1_rodata_17C4 = .rodata:0x000017C4; // type:object size:0x4 data:float -lbl_1_rodata_17C8 = .rodata:0x000017C8; // type:object size:0x4 data:float -lbl_1_rodata_17CC = .rodata:0x000017CC; // type:object size:0x4 data:float -lbl_1_rodata_17D0 = .rodata:0x000017D0; // type:object size:0x4 data:float -lbl_1_rodata_17D4 = .rodata:0x000017D4; // type:object size:0x4 data:float -lbl_1_rodata_17D8 = .rodata:0x000017D8; // type:object size:0x4 data:float -lbl_1_rodata_17DC = .rodata:0x000017DC; // type:object size:0x4 data:float -lbl_1_rodata_17E0 = .rodata:0x000017E0; // type:object size:0x84 -lbl_1_rodata_1864 = .rodata:0x00001864; // type:object size:0x48 -lbl_1_rodata_18AC = .rodata:0x000018AC; // type:object size:0x4 data:float -lbl_1_rodata_18B0 = .rodata:0x000018B0; // type:object size:0x4 data:float -lbl_1_rodata_18B4 = .rodata:0x000018B4; // type:object size:0x4 data:float -lbl_1_rodata_18B8 = .rodata:0x000018B8; // type:object size:0x4 data:float -lbl_1_rodata_18BC = .rodata:0x000018BC; // type:object size:0x4 data:float -lbl_1_rodata_18C0 = .rodata:0x000018C0; // type:object size:0x108 -lbl_1_rodata_19C8 = .rodata:0x000019C8; // type:object size:0x4 data:float -lbl_1_rodata_19CC = .rodata:0x000019CC; // type:object size:0x4 data:float -lbl_1_rodata_19D0 = .rodata:0x000019D0; // type:object size:0x4 data:float -lbl_1_rodata_19D4 = .rodata:0x000019D4; // type:object size:0x4 data:float -lbl_1_rodata_19D8 = .rodata:0x000019D8; // type:object size:0x4 data:float -lbl_1_rodata_19DC = .rodata:0x000019DC; // type:object size:0x4 data:float -lbl_1_rodata_19E0 = .rodata:0x000019E0; // type:object size:0x4 data:float -lbl_1_rodata_19E4 = .rodata:0x000019E4; // type:object size:0x4 data:float -lbl_1_data_1C = .data:0x0000001C; // type:object size:0x1B data:string -lbl_1_data_37 = .data:0x00000037; // type:object size:0x1B data:string -lbl_1_data_52 = .data:0x00000052; // type:object size:0x16 data:string -lbl_1_data_68 = .data:0x00000068; // type:object size:0x8 data:4byte +_half$localstatic3$sqrtf = .rodata:0x00000000; // type:object size:0x8 scope:weak data:double +_three$localstatic4$sqrtf = .rodata:0x00000008; // type:object size:0x8 scope:weak data:double +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:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +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_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +guideAngleTbl = .rodata:0x000000BC; // type:object size:0xC scope:local data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC scope:local +guideMotTbl = .rodata:0x000000E0; // type:object size:0xC scope:local +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:float +musigPageNameTbl = .rodata:0x000001A8; // type:object size:0x38 scope:local +musicTbl = .rodata:0x000001E0; // type:object size:0x8C0 scope:local +voiceCharNameTbl = .rodata:0x00000AA0; // type:object size:0x30 scope:local +lbl_1_rodata_AD0 = .rodata:0x00000AD0; // type:object size:0x780 scope:local +lbl_1_rodata_1250 = .rodata:0x00001250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1254 = .rodata:0x00001254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1258 = .rodata:0x00001258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_125C = .rodata:0x0000125C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1260 = .rodata:0x00001260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1264 = .rodata:0x00001264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1268 = .rodata:0x00001268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1270 = .rodata:0x00001270; // type:object size:0x8 scope:local data:double +outputModeTbl = .rodata:0x00001278; // type:object size:0x8 scope:local +soundModeTbl = .rodata:0x00001280; // type:object size:0x8 scope:local +soundModeNameTbl = .rodata:0x00001288; // type:object size:0x8 scope:local +lbl_1_rodata_1290 = .rodata:0x00001290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1294 = .rodata:0x00001294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1298 = .rodata:0x00001298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_129C = .rodata:0x0000129C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12A0 = .rodata:0x000012A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12A4 = .rodata:0x000012A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12A8 = .rodata:0x000012A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12AC = .rodata:0x000012AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12B0 = .rodata:0x000012B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12B4 = .rodata:0x000012B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12B8 = .rodata:0x000012B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12BC = .rodata:0x000012BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C0 = .rodata:0x000012C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C4 = .rodata:0x000012C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C8 = .rodata:0x000012C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12CC = .rodata:0x000012CC; // type:object size:0x4 scope:local data:float +lightPosTbl = .rodata:0x000012D0; // type:object size:0x24 scope:local +lbl_1_rodata_12F4 = .rodata:0x000012F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12F8 = .rodata:0x000012F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12FC = .rodata:0x000012FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1300 = .rodata:0x00001300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1304 = .rodata:0x00001304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1308 = .rodata:0x00001308; // type:object size:0x1C scope:local +lbl_1_rodata_1324 = .rodata:0x00001324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1328 = .rodata:0x00001328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_132C = .rodata:0x0000132C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1330 = .rodata:0x00001330; // type:object size:0x14 scope:local +lbl_1_rodata_1344 = .rodata:0x00001344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1348 = .rodata:0x00001348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_134C = .rodata:0x0000134C; // type:object size:0x4 scope:local +lbl_1_rodata_1350 = .rodata:0x00001350; // type:object size:0x8 scope:local +lbl_1_rodata_1358 = .rodata:0x00001358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1360 = .rodata:0x00001360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1368 = .rodata:0x00001368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_136C = .rodata:0x0000136C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1370 = .rodata:0x00001370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1378 = .rodata:0x00001378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1380 = .rodata:0x00001380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1384 = .rodata:0x00001384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1388 = .rodata:0x00001388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1390 = .rodata:0x00001390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1394 = .rodata:0x00001394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1398 = .rodata:0x00001398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_139C = .rodata:0x0000139C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13A0 = .rodata:0x000013A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_13A8 = .rodata:0x000013A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_13B0 = .rodata:0x000013B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13B4 = .rodata:0x000013B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13B8 = .rodata:0x000013B8; // type:object size:0x8 scope:local data:float +mgRecordIdxTbl = .rodata:0x000013C0; // type:object size:0x18 scope:local +lbl_1_rodata_13D8 = .rodata:0x000013D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13DC = .rodata:0x000013DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13E0 = .rodata:0x000013E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13E4 = .rodata:0x000013E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13E8 = .rodata:0x000013E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13EC = .rodata:0x000013EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13F0 = .rodata:0x000013F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13F4 = .rodata:0x000013F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13F8 = .rodata:0x000013F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1400 = .rodata:0x00001400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1408 = .rodata:0x00001408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_140C = .rodata:0x0000140C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1410 = .rodata:0x00001410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1414 = .rodata:0x00001414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1418 = .rodata:0x00001418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1420 = .rodata:0x00001420; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1428 = .rodata:0x00001428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_142C = .rodata:0x0000142C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1430 = .rodata:0x00001430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1434 = .rodata:0x00001434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1438 = .rodata:0x00001438; // type:object size:0x4 scope:local data:float +sprTbl = .rodata:0x0000143C; // type:object size:0x264 scope:local +lbl_1_rodata_16A0 = .rodata:0x000016A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16A4 = .rodata:0x000016A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16A8 = .rodata:0x000016A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16AC = .rodata:0x000016AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16B0 = .rodata:0x000016B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16B4 = .rodata:0x000016B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16B8 = .rodata:0x000016B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16BC = .rodata:0x000016BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C0 = .rodata:0x000016C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C4 = .rodata:0x000016C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C8 = .rodata:0x000016C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16CC = .rodata:0x000016CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16D0 = .rodata:0x000016D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16D4 = .rodata:0x000016D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16D8 = .rodata:0x000016D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16DC = .rodata:0x000016DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16E0 = .rodata:0x000016E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16E4 = .rodata:0x000016E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16E8 = .rodata:0x000016E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16EC = .rodata:0x000016EC; // type:object size:0x4 scope:local data:float +boardSprHideTbl = .rodata:0x000016F0; // type:object size:0xD4 scope:local +lbl_1_rodata_17C4 = .rodata:0x000017C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_17C8 = .rodata:0x000017C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_17CC = .rodata:0x000017CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_17D0 = .rodata:0x000017D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_17D4 = .rodata:0x000017D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_17D8 = .rodata:0x000017D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_17DC = .rodata:0x000017DC; // type:object size:0x4 scope:local data:float +totalSprHideTbl = .rodata:0x000017E0; // type:object size:0x84 scope:local +mgTbl = .rodata:0x00001864; // type:object size:0x48 scope:local +lbl_1_rodata_18AC = .rodata:0x000018AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_18B0 = .rodata:0x000018B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_18B4 = .rodata:0x000018B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_18B8 = .rodata:0x000018B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_18BC = .rodata:0x000018BC; // type:object size:0x4 scope:local data:float +mgSprHideTbl = .rodata:0x000018C0; // type:object size:0x108 scope:local +lbl_1_rodata_19C8 = .rodata:0x000019C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_19CC = .rodata:0x000019CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_19D0 = .rodata:0x000019D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_19D4 = .rodata:0x000019D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_19D8 = .rodata:0x000019D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_19DC = .rodata:0x000019DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_19E0 = .rodata:0x000019E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_19E4 = .rodata:0x000019E4; // type:object size:0x4 scope:local data:float +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x1B scope:local data:string +lbl_1_data_37 = .data:0x00000037; // type:object size:0x1B scope:local data:string +lbl_1_data_52 = .data:0x00000052; // type:object size:0x16 scope:local data:string +execModeTbl = .data:0x00000068; // type:object size:0x8 scope:local data:4byte jumptable_1_data_70 = .data:0x00000070; // type:object size:0x24 scope:local -lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 data:4byte -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x1C -lbl_1_data_BC = .data:0x000000BC; // type:object size:0x24 +execModeTbl = .data:0x00000098; // type:object size:0x8 scope:local data:4byte +lightTbl = .data:0x000000A0; // type:object size:0x1C scope:local +shadowPosTbl = .data:0x000000BC; // type:object size:0x24 scope:local jumptable_1_data_E0 = .data:0x000000E0; // type:object size:0x24 scope:local -lbl_1_data_108 = .data:0x00000108; // type:object size:0x8 data:4byte -lbl_1_data_110 = .data:0x00000110; // type:object size:0x8 -lbl_1_data_118 = .data:0x00000118; // type:object size:0x38 data:4byte -lbl_1_data_150 = .data:0x00000150; // type:object size:0x18 data:4byte -lbl_1_data_168 = .data:0x00000168; // type:object size:0xC +execModeTbl = .data:0x00000108; // type:object size:0x8 scope:local data:4byte +lbl_1_data_110 = .data:0x00000110; // type:object size:0x8 scope:local +musicPageOn = .data:0x00000118; // type:object size:0x38 scope:local data:4byte +execModeTbl = .data:0x00000150; // type:object size:0x18 scope:local data:4byte +choiceMess = .data:0x00000168; // type:object size:0xC scope:local jumptable_1_data_174 = .data:0x00000174; // type:object size:0x24 scope:local jumptable_1_data_198 = .data:0x00000198; // type:object size:0x24 scope:local -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x4C -lbl_1_data_208 = .data:0x00000208; // type:object size:0x8 -lbl_1_data_210 = .data:0x00000210; // type:object size:0x8 data:4byte +spriteDataTbl = .data:0x000001BC; // type:object size:0x4C scope:local +noteMdlTbl = .data:0x00000208; // type:object size:0x8 scope:local +execModeTbl = .data:0x00000210; // type:object size:0x8 scope:local data:4byte jumptable_1_data_218 = .data:0x00000218; // type:object size:0x1C scope:local jumptable_1_data_234 = .data:0x00000234; // type:object size:0x20 scope:local -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +rumbleF = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte +scene = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +optionObjMan = .bss:0x00000008; // type:object size:0x8 data:4byte +optionCamera = .bss:0x00000010; // type:object size:0x8 data:4byte +optionRoom = .bss:0x00000018; // type:object size:0x8 data:4byte +optionGuide = .bss:0x00000020; // type:object size:0x8 data:4byte +optionState = .bss:0x00000028; // type:object size:0x8 data:4byte +optionRumble = .bss:0x00000030; // type:object size:0x8 data:4byte +optionSound = .bss:0x00000038; // type:object size:0x8 data:4byte +optionRecord = .bss:0x00000040; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/w10Dll/splits.txt b/config/GMPP01_00/rels/w10Dll/splits.txt deleted file mode 100644 index c6adc1ab..00000000 --- a/config/GMPP01_00/rels/w10Dll/splits.txt +++ /dev/null @@ -1,33 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 - -REL/board_executor.c: - .text start:0x00000000 end:0x000000E0 - .rodata start:0x00000000 end:0x00000010 - -REL/w10Dll/main.c: - .text start:0x000000E0 end:0x00000AEC - .rodata start:0x00000010 end:0x00000038 - .data start:0x00000000 end:0x00000078 - .bss start:0x00000000 end:0x00000018 - -REL/w10Dll/host.c: - .text start:0x00000AEC end:0x00000D2C - .rodata start:0x00000038 end:0x00000048 - .data start:0x00000078 end:0x00000098 - .bss start:0x00000018 end:0x00000020 - -REL/w10Dll/scene.c: - .text start:0x00000D2C end:0x00001984 - .rodata start:0x00000048 end:0x00000058 - -REL/w10Dll/tutorial.c: - .text start:0x00001984 end:0x0000206C - .rodata start:0x00000058 end:0x00000070 - .data start:0x00000098 end:0x000002D4 - .bss start:0x00000020 end:0x00000038 diff --git a/config/GMPP01_00/rels/w10Dll/symbols.txt b/config/GMPP01_00/rels/w10Dll/symbols.txt deleted file mode 100644 index f10220e4..00000000 --- a/config/GMPP01_00/rels/w10Dll/symbols.txt +++ /dev/null @@ -1,116 +0,0 @@ -ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -BoardCreate = .text:0x000000E0; // type:function size:0x5F8 -BoardDestroy = .text:0x000006D8; // type:function size:0x1E8 -LightSetHook = .text:0x000008C0; // type:function size:0x44 scope:local -LightResetHook = .text:0x00000904; // type:function size:0x4 scope:local -LandEvent = .text:0x00000908; // type:function size:0x4 scope:local -WalkEvent = .text:0x0000090C; // type:function size:0x8 scope:local -fn_1_914 = .text:0x00000914; // type:function size:0x4 -fn_1_918 = .text:0x00000918; // type:function size:0x4 -WalkMiniEvent = .text:0x0000091C; // type:function size:0x4 scope:local -fn_1_920 = .text:0x00000920; // type:function size:0x1CC -HostCreate = .text:0x00000AEC; // type:function size:0xB4 -HostWinExec = .text:0x00000BA0; // type:function size:0x70 -HostPosSet = .text:0x00000C10; // type:function size:0x10 -UpdateHost = .text:0x00000C20; // type:function size:0x10C scope:local -TutorialStartExec = .text:0x00000D2C; // type:function size:0x28 -TutorialPreRollExec = .text:0x00000D54; // type:function size:0x28 -TutorialOrderExec = .text:0x00000D7C; // type:function size:0x28 -TutorialP1StartExec = .text:0x00000DA4; // type:function size:0x28 -TutorialP2StartExec = .text:0x00000DCC; // type:function size:0x28 -TutorialP3StartExec = .text:0x00000DF4; // type:function size:0x28 -TutorialP4StartExec = .text:0x00000E1C; // type:function size:0x28 -TutorialGameStartExec = .text:0x00000E44; // type:function size:0x50 -TutorialRollExec = .text:0x00000E94; // type:function size:0x28 -TutorialMoveExec = .text:0x00000EBC; // type:function size:0x28 -TutorialLandExec = .text:0x00000EE4; // type:function size:0x4 -TutorialLandBlueExec = .text:0x00000EE8; // type:function size:0x48 -TutorialLandRedExec = .text:0x00000F30; // type:function size:0x3C -TutorialLandHappenExec = .text:0x00000F6C; // type:function size:0x4C -TutorialLandFortuneExec = .text:0x00000FB8; // type:function size:0x58 -TutorialLandBowserExec = .text:0x00001010; // type:function size:0x4C -TutorialLandMushroomExec = .text:0x0000105C; // type:function size:0x3C -TutorialMushroomMegaExec = .text:0x00001098; // type:function size:0x28 -TutorialMushroomMiniExec = .text:0x000010C0; // type:function size:0x38 -TutorialLandBattleExec = .text:0x000010F8; // type:function size:0x3C -TutorialLandWarpExec = .text:0x00001134; // type:function size:0x44 -TutorialWarpDecideExec = .text:0x00001178; // type:function size:0x28 -TutorialBlockStarExec = .text:0x000011A0; // type:function size:0x4C -TutorialBlockCoinExec = .text:0x000011EC; // type:function size:0x54 -TutorialMiniMegaExec = .text:0x00001240; // type:function size:0x38 -TutorialMiniUseExec = .text:0x00001278; // type:function size:0x28 -TutorialMiniStopExec = .text:0x000012A0; // type:function size:0x3C -TutorialMegaUseExec = .text:0x000012DC; // type:function size:0x28 -TutorialMegaDiceExec = .text:0x00001304; // type:function size:0x28 -TutorialMegaStompExec = .text:0x0000132C; // type:function size:0x28 -TutorialMegaEventExec = .text:0x00001354; // type:function size:0x28 -TutorialMegaStopExec = .text:0x0000137C; // type:function size:0x28 -TutorialEndExec = .text:0x000013A4; // type:function size:0x3C8 -TutorialMGStatusExec = .text:0x0000176C; // type:function size:0x30 -TutorialMG4PExec = .text:0x0000179C; // type:function size:0x58 -TutorialMG2Vs2Exec = .text:0x000017F4; // type:function size:0x40 -TutorialMG1Vs3Exec = .text:0x00001834; // type:function size:0x88 -TutorialMG1Vs3AltExec = .text:0x000018BC; // type:function size:0x4C -TutorialShopExec = .text:0x00001908; // type:function size:0x28 -TutorialLotteryExec = .text:0x00001930; // type:function size:0x28 -TutorialBooHouseExec = .text:0x00001958; // type:function size:0x28 -TutorialNullExec = .text:0x00001980; // type:function size:0x4 -CloseTutorial = .text:0x00001984; // type:function size:0x128 scope:local -TutorialHookExec = .text:0x00001AAC; // type:function size:0x2BC -TutorialSprCreate = .text:0x00001D68; // type:function size:0x84 -TutorialSprKill = .text:0x00001DEC; // type:function size:0x50 -TutorialSpaceShow = .text:0x00001E3C; // type:function size:0x174 -TutorialSpaceHide = .text:0x00001FB0; // type:function size:0xBC -_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 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_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double -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:0x8 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:0x4 scope:local data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double -mapObjTbl = .data:0x00000000; // type:object size:0x28 scope:local data:float -bgMdl = .data:0x00000028; // type:object size:0x2 scope:local data:2byte -fgMdl = .data:0x0000002A; // type:object size:0x2 scope:local data:2byte -boardStarHostMdl = .data:0x0000002C; // type:object size:0x2 data:2byte -boardShopHostMdl = .data:0x0000002E; // type:object size:0x2 data:2byte -boardLotteryHostMdl = .data:0x00000030; // type:object size:0x2 data:2byte -boardBooHouseHostMdl = .data:0x00000032; // type:object size:0x2 data:2byte -charMotDirTbl = .data:0x00000034; // type:object size:0x20 scope:local data:4byte -starHostMot = .data:0x00000054; // type:object size:0x8 scope:local -shopHostMot = .data:0x0000005C; // type:object size:0x8 scope:local -lotteryHostMot = .data:0x00000064; // type:object size:0x8 scope:local -booHouseHostMot = .data:0x0000006C; // type:object size:0x8 scope:local -hostMot = .data:0x00000078; // type:object size:0x8 scope:local -hostPosTbl = .data:0x00000080; // type:object size:0x18 scope:local data:float -lbl_1_data_98 = .data:0x00000098; // type:object size:0x2D scope:local data:string -rollDataTbl = .data:0x000000C6; // type:object size:0x42 scope:local -sceneTbl = .data:0x00000108; // type:object size:0x150 scope:local -lbl_1_data_258 = .data:0x00000258; // type:object size:0x50 scope:local data:string -tutorialSprTbl = .data:0x000002A8; // type:object size:0x2C scope:local -boardWork = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -motTbl = .bss:0x00000008; // type:object size:0x4 scope:local data:4byte -tutorialDoneF = .bss:0x0000000C; // type:object size:0x2 data:2byte -tutorialExitWin = .bss:0x0000000E; // type:object size:0x2 data:2byte -boardMapObjMdl = .bss:0x00000010; // type:object size:0x2 data:2byte -hostProc = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte -hostPos = .bss:0x0000001C; // type:object size:0x2 scope:local data:2byte -hostMdl = .bss:0x0000001E; // type:object size:0x2 scope:local data:2byte -sprCurr = .bss:0x00000020; // type:object size:0x2 scope:local data:2byte -sprList = .bss:0x00000022; // type:object size:0x16 scope:local diff --git a/config/GMPP01_00/rels/w20Dll/splits.txt b/config/GMPP01_00/rels/w20Dll/splits.txt deleted file mode 100644 index 9df8ed45..00000000 --- a/config/GMPP01_00/rels/w20Dll/splits.txt +++ /dev/null @@ -1,17 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 - -REL/board_executor.c: - .text start:0x00000000 end:0x000000E0 - .rodata start:0x00000000 end:0x00000010 - -REL/w20Dll/main.c: - .text start:0x000000E0 end:0x00000678 - .rodata start:0x00000010 end:0x00000030 - .data start:0x00000000 end:0x00000034 - .bss start:0x00000000 end:0x0000000E diff --git a/config/GMPP01_00/rels/w20Dll/symbols.txt b/config/GMPP01_00/rels/w20Dll/symbols.txt deleted file mode 100644 index 0e84011e..00000000 --- a/config/GMPP01_00/rels/w20Dll/symbols.txt +++ /dev/null @@ -1,33 +0,0 @@ -ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -BoardCreate = .text:0x000000E0; // type:function size:0x2B0 -BoardDestroy = .text:0x00000390; // type:function size:0xBC -fn_1_44C = .text:0x0000044C; // type:function size:0x44 -fn_1_490 = .text:0x00000490; // type:function size:0x4 -fn_1_494 = .text:0x00000494; // type:function size:0x4 -fn_1_498 = .text:0x00000498; // type:function size:0x8 -fn_1_4A0 = .text:0x000004A0; // type:function size:0x4 -fn_1_4A4 = .text:0x000004A4; // type:function size:0x4 -fn_1_4A8 = .text:0x000004A8; // type:function size:0x4 -fn_1_4AC = .text:0x000004AC; // type:function size:0x1CC -_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_20 = .rodata:0x00000020; // type:object size:0x8 data:double -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_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte -lbl_1_data_2 = .data:0x00000002; // type:object size:0x2 data:2byte -lbl_1_data_4 = .data:0x00000004; // type:object size:0x2 data:2byte -lbl_1_data_6 = .data:0x00000006; // type:object size:0x2 data:2byte -lbl_1_data_8 = .data:0x00000008; // type:object size:0x2 data:2byte -lbl_1_data_A = .data:0x0000000A; // type:object size:0x2 data:2byte -lbl_1_data_C = .data:0x0000000C; // type:object size:0x20 data:4byte -unkMotTbl = .data:0x0000002C; // type:object size:0x8 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 diff --git a/config/GMPP01_00/rels/w21Dll/splits.txt b/config/GMPP01_00/rels/w21Dll/splits.txt deleted file mode 100644 index 1ab21815..00000000 --- a/config/GMPP01_00/rels/w21Dll/splits.txt +++ /dev/null @@ -1,15 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - -REL/board_executor.c: - .text start:0x00000000 end:0x000000E0 - .rodata start:0x00000000 end:0x00000010 - -REL/w21Dll/main.c: - .text start:0x000000E0 end:0x000003E0 - .rodata start:0x00000010 end:0x00000018 - .data start:0x00000000 end:0x00000010 diff --git a/config/GMPP01_00/rels/w21Dll/symbols.txt b/config/GMPP01_00/rels/w21Dll/symbols.txt deleted file mode 100644 index 708d3b88..00000000 --- a/config/GMPP01_00/rels/w21Dll/symbols.txt +++ /dev/null @@ -1,18 +0,0 @@ -ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -BoardCreate = .text:0x000000E0; // type:function size:0x1D4 -BoardDestroy = .text:0x000002B4; // type:function size:0xB8 -LightSetHook = .text:0x0000036C; // type:function size:0x44 scope:local -LightResetHook = .text:0x000003B0; // type:function size:0x20 scope:local -WalkEvent = .text:0x000003D0; // type:function size:0x8 scope:local -WalkMiniEvent = .text:0x000003D8; // type:function size:0x4 scope:local -LandEvent = .text:0x000003DC; // type:function size:0x4 scope:local -_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 scope:local data:float -lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float -bgMdl = .data:0x00000000; // type:object size:0x2 scope:local data:2byte -fgMdl = .data:0x00000002; // type:object size:0x2 scope:local data:2byte -hostMdl = .data:0x00000004; // type:object size:0x2 scope:local data:2byte -hostMotTbl = .data:0x00000008; // type:object size:0x8 scope:local diff --git a/config/GMPP01_02/config.yml b/config/GMPP01_02/config.yml index 19380dcf..da871c96 100644 --- a/config/GMPP01_02/config.yml +++ b/config/GMPP01_02/config.yml @@ -3,7 +3,7 @@ object: sys/main.dol hash: 65ef91650e9201047f50a3c39c7693a21fff2b29 symbols: config/GMPP01_00/symbols.txt splits: config/GMPP01_00/splits.txt -quick_analysis: false # Faster re-runs after initial analysis +quick_analysis: true # Faster re-runs after initial analysis mw_comment_version: 10 # GC 2.6 linker force_active: [__register_global_object, lbl_801D40D0] @@ -473,8 +473,8 @@ modules: links: [] - object: files/dll/w10Dll.rel hash: 5678fedd4a0490aeb9703328e959fdedea7da117 - symbols: config/GMPP01_00/rels/w10Dll/symbols.txt - splits: config/GMPP01_00/rels/w10Dll/splits.txt + symbols: config/GMPE01_00/rels/w10Dll/symbols.txt + splits: config/GMPE01_00/rels/w10Dll/splits.txt links: [] - object: files/dll/w20Dll.rel hash: 58ae9e311cc8bd0291921480f423e2ad4774e1a2 @@ -483,8 +483,8 @@ modules: links: [] - object: files/dll/w21Dll.rel hash: 8ea052be8c7585a1ab152682a0698b631c5b566f - symbols: config/GMPP01_00/rels/w21Dll/symbols.txt - splits: config/GMPP01_00/rels/w21Dll/splits.txt + symbols: config/GMPE01_00/rels/w21Dll/symbols.txt + splits: config/GMPE01_00/rels/w21Dll/splits.txt links: [] - object: files/dll/ztardll.rel hash: 8987f11fafd11f69161ca275967afe9c8b4e7b20 @@ -636,4 +636,4 @@ extract: header: retryerror_sp.inc - symbol: wrongdisc_sp binary: wrongdisc_sp.bin - header: wrongdisc_sp.inc \ No newline at end of file + header: wrongdisc_sp.inc diff --git a/configure.py b/configure.py index ea0272c0..a1c14491 100644 --- a/configure.py +++ b/configure.py @@ -821,7 +821,7 @@ config.libs = [ "cflags": cflags_rel, "host": False, "objects": [ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/executor.c"), + Object(Matching, "REL/executor.c"), Object(Matching, "REL/empty.c"), # Must be marked as matching Object(Matching, "REL/board_executor.c"), ], @@ -995,11 +995,11 @@ config.libs = [ Rel( "m420dll", # Fish n' Drips objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/rand.c"), + Object(Matching, "REL/m420dll/main.c"), + Object(Matching, "REL/m420dll/camera.c"), + Object(Matching, "REL/m420dll/player.c"), + Object(Matching, "REL/m420dll/map.c"), + Object(Matching, "REL/m420dll/rand.c"), }, ), Rel( @@ -1063,7 +1063,7 @@ config.libs = [ Rel( "m429Dll", # Team Treasure Trek objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m429Dll/main.c"), + Object(Matching, "REL/m429Dll/main.c"), }, ), Rel( @@ -1077,8 +1077,8 @@ config.libs = [ Rel( "m431Dll", # Order Up objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/object.c"), + Object(Matching, "REL/m431Dll/main.c"), + Object(Matching, "REL/m431Dll/object.c"), }, ), Rel( @@ -1221,7 +1221,7 @@ config.libs = [ Rel( "m450Dll", # The Final Battle! objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m450Dll/main.c"), + Object(Matching, "REL/m450Dll/main.c"), }, ), Rel( @@ -1397,15 +1397,15 @@ config.libs = [ Rel( "option", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/scene.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/room.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/guide.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/state.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/rumble.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/sound.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/record.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/window.c"), + Object(Matching, "REL/option/scene.c"), + Object(Matching, "REL/option/camera.c"), + Object(Matching, "REL/option/room.c"), + Object(Matching, "REL/option/guide.c"), + Object(Matching, "REL/option/state.c"), + Object(Matching, "REL/option/rumble.c"), + Object(Matching, "REL/option/sound.c"), + Object(Matching, "REL/option/record.c"), + Object(Matching, "REL/option/window.c"), }, ), Rel( @@ -1498,7 +1498,7 @@ config.libs = [ objects={ Object(Matching, "REL/w05Dll/main.c"), Object(Matching, "REL/w05Dll/hotel.c"), - Object(Matching,"REL/w05Dll/monkey.c"), + Object(Matching, "REL/w05Dll/monkey.c"), Object(Matching, "REL/w05Dll/dolphin.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_item.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_coin.c"), diff --git a/include/REL/m431Dll.h b/include/REL/m431Dll.h index 78bcb746..c4286562 100644 --- a/include/REL/m431Dll.h +++ b/include/REL/m431Dll.h @@ -3,113 +3,116 @@ #include "game/object.h" -#define rand16() ((rand8() << 8)|(rand8())) - +#define rand16() ((rand8() << 8) | (rand8())) typedef struct bss_12C_inner { - Vec unk0; - float unkC; - s8 unk10; + Vec unk0; + float unkC; + s8 unk10; } Bss12CInner; typedef struct bss_12c_struct { - s16 unk0[2]; - s16 unk4; - s16 unk6; - s16 unk8; - Vec unkC; - float unk18; - Bss12CInner unk1C[10]; - float unkE4[10][2]; - s16 unk134[2]; - s16 unk138[2]; + s16 unk0[2]; + s16 unk4; + s16 unk6; + s16 unk8; + Vec unkC; + float unk18; + Bss12CInner unk1C[10]; + float unkE4[10][2]; + s16 unk134[2]; + s16 unk138[2]; } Bss12CStruct; typedef struct bss_61C_work { - u32 unk0; - s16 unk4; - s16 unk6; - s16 unk8; - s16 unkA; - s16 unkC; - float unk10; - struct bss_61C_work *unk14; - 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; - 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; + u32 unk0; + s16 unk4; + s16 unk6; + s16 unk8; + s16 unkA; + s16 unkC; + float unk10; + struct bss_61C_work *unk14; + Vec unk18; + Vec unk24; + float unk30; + omObjFunc unk34; + s16 unk38; + s16 unk3A; +#if VERSION_PAL + s16 unk3C_pal; + s16 unk3E_pal; +#endif + 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; + 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; + 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; + 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; diff --git a/include/version.h b/include/version.h index 8d91dabf..8cac62af 100644 --- a/include/version.h +++ b/include/version.h @@ -15,4 +15,10 @@ #define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JAP) #define VERSION_REV1 (!VERSION_REV0) +#if VERSION_PAL +#define REFRESH_RATE 50 +#else +#define REFRESH_RATE 60 +#endif + #endif diff --git a/src/REL/m402Dll/main.c b/src/REL/m402Dll/main.c index 59f189c3..eff45b37 100755 --- a/src/REL/m402Dll/main.c +++ b/src/REL/m402Dll/main.c @@ -425,20 +425,20 @@ static void fn_1_580(s32 *arg0, s32 arg1, s32 arg2) espBankSet(arg0[arg1 + 1], 10); espBankSet(arg0[arg1 + 4], 11); - if (36000 <= arg2) { - arg2 = 35999; + if (600 * REFRESH_RATE <= arg2) { + arg2 = 600 * REFRESH_RATE - 1; } - var_r30 = arg2 / 3600; - arg2 -= var_r30 * 3600; + var_r30 = arg2 / (60 * REFRESH_RATE); + arg2 -= var_r30 * (60 * REFRESH_RATE); if (var_r30 > 9) { var_r30 = 9; } espBankSet(arg0[arg1], var_r30); - var_r30 = arg2 / 60; - arg2 -= var_r30 * 60; + var_r30 = arg2 / REFRESH_RATE; + arg2 -= var_r30 * REFRESH_RATE; espBankSet(arg0[arg1 + 2], var_r30 / 10); espBankSet(arg0[arg1 + 3], var_r30 % 10); - var_r30 = 101.5f * arg2 / 60.0f; + var_r30 = 101.5f * arg2 / REFRESH_RATE; espBankSet(arg0[arg1 + 5], var_r30 / 10); espBankSet(arg0[arg1 + 6], var_r30 % 10); } diff --git a/src/REL/m405Dll/main.c b/src/REL/m405Dll/main.c index 0c999c19..610db76f 100755 --- a/src/REL/m405Dll/main.c +++ b/src/REL/m405Dll/main.c @@ -418,20 +418,20 @@ void fn_1_580(s32 *arg0, s32 arg1, s32 arg2) espBankSet(arg0[arg1 + 1], 10); espBankSet(arg0[arg1 + 4], 11); - if (36000 <= arg2) { - arg2 = 35999; + if (600 * REFRESH_RATE <= arg2) { + arg2 = 600 * REFRESH_RATE - 1; } - var_r30 = arg2 / 3600; - arg2 -= var_r30 * 3600; + var_r30 = arg2 / (60 * REFRESH_RATE); + arg2 -= var_r30 * (60 * REFRESH_RATE); if (var_r30 > 9) { var_r30 = 9; } espBankSet(arg0[arg1], var_r30); - var_r30 = arg2 / 60; - arg2 -= var_r30 * 60; + var_r30 = arg2 / REFRESH_RATE; + arg2 -= var_r30 * REFRESH_RATE; espBankSet(arg0[arg1 + 2], var_r30 / 10); espBankSet(arg0[arg1 + 3], var_r30 % 10); - var_r30 = 101.5f * arg2 / 60.0f; + var_r30 = 101.5f * arg2 / REFRESH_RATE; espBankSet(arg0[arg1 + 5], var_r30 / 10); espBankSet(arg0[arg1 + 6], var_r30 % 10); } diff --git a/src/REL/m420dll/main.c b/src/REL/m420dll/main.c index 18f5b3ea..d6574513 100644 --- a/src/REL/m420dll/main.c +++ b/src/REL/m420dll/main.c @@ -1,5 +1,4 @@ #include "ext_math.h" -#include "game/audio.h" #include "game/flag.h" #include "game/hsfman.h" #include "game/minigame_seq.h" @@ -9,6 +8,11 @@ #include "game/wipe.h" #include "REL/m420dll.h" +#include "version.h" + +#ifndef __MWERKS__ +#include "game/audio.h" +#endif s32 fn_1_198(void); void fn_1_3D4(void); @@ -142,8 +146,8 @@ void fn_1_43C(void) HuPrcVSleep(); } MGSeqKill(lbl_1_bss_10); - lbl_1_bss_12 = 0xE10; - lbl_1_bss_14 = MGSeqCreate(1, lbl_1_bss_12 / 60, -1, -1); + lbl_1_bss_12 = 60 * REFRESH_RATE; + lbl_1_bss_14 = MGSeqCreate(1, lbl_1_bss_12 / REFRESH_RATE, -1, -1); var_r30 = 1; while (TRUE) { if (lbl_1_bss_18[0]->unk_48 == 0) { @@ -163,8 +167,8 @@ void fn_1_43C(void) } } if (lbl_1_bss_12 >= 0) { - if (((--lbl_1_bss_12) % 60) == 0) { - MGSeqParamSet(lbl_1_bss_14, 1, lbl_1_bss_12 / 60); + if (((--lbl_1_bss_12) % REFRESH_RATE) == 0) { + MGSeqParamSet(lbl_1_bss_14, 1, lbl_1_bss_12 / REFRESH_RATE); } } if ((fn_1_67E8(0) == 0) && (fn_1_67E8(1) == 0) && (lbl_1_bss_12 > 0)) { diff --git a/src/REL/m429Dll/main.c b/src/REL/m429Dll/main.c index 7c2aa9be..f48c989e 100644 --- a/src/REL/m429Dll/main.c +++ b/src/REL/m429Dll/main.c @@ -21,6 +21,7 @@ #include "game/sprite.h" #include "ext_math.h" +#include "version.h" #undef ABS #define ABS(x) ((0 > (x)) ? -(x) : (x)) @@ -222,20 +223,20 @@ void fn_1_580(s32 *arg0, s32 arg1, s32 arg2) espBankSet(arg0[arg1 + 1], 10); espBankSet(arg0[arg1 + 4], 11); - if (36000 <= arg2) { - arg2 = 35999; + if (600 * REFRESH_RATE <= arg2) { + arg2 = 600 * REFRESH_RATE - 1; } - var_r30 = arg2 / 3600; - arg2 -= var_r30 * 3600; + var_r30 = arg2 / (60 * REFRESH_RATE); + arg2 -= var_r30 * (60 * REFRESH_RATE); if (var_r30 > 9) { var_r30 = 9; } espBankSet(arg0[arg1], var_r30); - var_r30 = arg2 / 60; - arg2 -= var_r30 * 60; + var_r30 = arg2 / REFRESH_RATE; + arg2 -= var_r30 * REFRESH_RATE; espBankSet(arg0[arg1 + 2], var_r30 / 10); espBankSet(arg0[arg1 + 3], var_r30 % 10); - var_r30 = 101.5f * arg2 / 60.0f; + var_r30 = 101.5f * arg2 / REFRESH_RATE; espBankSet(arg0[arg1 + 5], var_r30 / 10); espBankSet(arg0[arg1 + 6], var_r30 % 10); } @@ -2343,7 +2344,7 @@ void fn_1_AD74(float *arg0) float temp_f30; temp_r31 = &lbl_1_data_103C[0][0]; - temp_f30 = lbl_1_bss_12C / 60; + temp_f30 = lbl_1_bss_12C / REFRESH_RATE; temp_f31 = sind(90 * temp_f30) * sind(90 * temp_f30); for (temp_r28 = 0; temp_r28 < 4; temp_r28++, temp_r31 += 4, arg0 += 4) { sp8[0] = temp_r31[0] + (temp_f31 * (arg0[0] - temp_r31[0])); @@ -2395,8 +2396,8 @@ void fn_1_B01C(void) temp_f31 = lbl_1_bss_98[lbl_1_bss_28].x - temp_r30->unk4.x; temp_f30 = lbl_1_bss_98[lbl_1_bss_28].z - temp_r30->unk4.z; temp_r30->unk64 = atan2d(temp_f31, temp_f30); - omVibrate(temp_r31->unk114, 120, 6, 6); - omVibrate(temp_r30->unk114, 120, 6, 6); + omVibrate(temp_r31->unk114, 2 * REFRESH_RATE, 6, 6); + omVibrate(temp_r30->unk114, 2 * REFRESH_RATE, 6, 6); } void fn_1_B754(float *arg0, float arg1, float arg2, s32 arg3) @@ -2438,7 +2439,7 @@ void fn_1_B8E0(omObjData *object) WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); object->func = fn_1_E96C; } - lbl_1_bss_114 += 1.0f / 60.0f; + lbl_1_bss_114 += 1.0f / REFRESH_RATE; if (360.0f <= lbl_1_bss_114) { lbl_1_bss_114 -= 360.0f; } @@ -2464,12 +2465,12 @@ void fn_1_B8E0(omObjData *object) case 1002: lbl_1_bss_12C++; - temp_f30 = lbl_1_bss_12C / 60; + temp_f30 = lbl_1_bss_12C / REFRESH_RATE; temp_f31 = 1 - (sind(temp_f30 * 90.0f) * sind(temp_f30 * 90.0f)); for (temp_r29 = 0; temp_r29 < 5; temp_r29++) { espTPLvlSet(lbl_1_bss_10[temp_r29], temp_f31); } - if (60.0f <= lbl_1_bss_12C) { + if (REFRESH_RATE <= lbl_1_bss_12C) { object->work[0]++; lbl_1_bss_12C = 0; for (temp_r29 = 0; temp_r29 < 5; temp_r29++) { @@ -2480,12 +2481,12 @@ void fn_1_B8E0(omObjData *object) case 1003: lbl_1_bss_12C++; - temp_f30 = lbl_1_bss_12C / 60; + temp_f30 = lbl_1_bss_12C / REFRESH_RATE; temp_f31 = sind(temp_f30 * 90.0f) * sind(temp_f30 * 90.0f); for (temp_r29 = 0; temp_r29 < 4; temp_r29++) { lbl_1_bss_130[temp_r29].unk4 = temp_f31; } - if (60.0f <= lbl_1_bss_12C) { + if (REFRESH_RATE <= lbl_1_bss_12C) { object->work[0]++; lbl_1_bss_12C = 0; lbl_1_bss_4 = HuAudFXPlay(1645); @@ -2511,19 +2512,19 @@ void fn_1_B8E0(omObjData *object) } if (!MGSeqStatGet(lbl_1_bss_2FE)) { object->work[0]++; - lbl_1_bss_304 = 3600; - lbl_1_bss_2FC = MGSeqTimerCreate(lbl_1_bss_304 / 60); + lbl_1_bss_304 = 60 * REFRESH_RATE; + lbl_1_bss_2FC = MGSeqTimerCreate(lbl_1_bss_304 / REFRESH_RATE); lbl_1_bss_2FE = -1; } } break; case 1006: - MGSeqParamSet(lbl_1_bss_2FC, 1, (lbl_1_bss_304 + 59) / 60); + MGSeqParamSet(lbl_1_bss_2FC, 1, (lbl_1_bss_304 + REFRESH_RATE - 1) / REFRESH_RATE); lbl_1_bss_304--; if (lbl_1_bss_304 < 0 || lbl_1_bss_28 >= 0) { object->work[0] = 1007; - lbl_1_bss_304 = 3600; + lbl_1_bss_304 = 60 * REFRESH_RATE; lbl_1_bss_12C = 0; } break; @@ -2575,7 +2576,7 @@ void fn_1_B8E0(omObjData *object) case 1008: lbl_1_bss_12C++; - if (60.0f < lbl_1_bss_12C) { + if (REFRESH_RATE < lbl_1_bss_12C) { object->work[0]++; lbl_1_bss_12C = 0; HuAudFXPlay(1650); @@ -2587,7 +2588,7 @@ void fn_1_B8E0(omObjData *object) } else { fn_1_AD74(((lbl_1_bss_28 & 0x2) == 0) ? &lbl_1_data_107C[0][0] : &lbl_1_data_10BC[0][0]); - temp_f30 = lbl_1_bss_12C / 60.0f; + temp_f30 = lbl_1_bss_12C / REFRESH_RATE; temp_f31 = sind(temp_f30 * 90.0f) * sind(temp_f30 * 90.0f); fn_1_A588(lbl_1_bss_28, &lbl_1_data_FE0, temp_f31); } @@ -2595,13 +2596,13 @@ void fn_1_B8E0(omObjData *object) case 1009: lbl_1_bss_12C++; - if (120.0f < lbl_1_bss_12C) { + if (2 * REFRESH_RATE < lbl_1_bss_12C) { object->work[0]++; lbl_1_bss_12C = 0; HuAudFXPlay(1651); } else { - temp_f30 = lbl_1_bss_12C / 120.0f; + temp_f30 = lbl_1_bss_12C / (2 * REFRESH_RATE); temp_f31 = sind(temp_f30 * 90.0f) * sind(temp_f30 * 90.0f); temp_f20 = (6.0f * frandf()) - 3.0f; temp_f19 = (6.0f * frandf()) - 3.0f; diff --git a/src/REL/m431Dll/main.c b/src/REL/m431Dll/main.c index 9ef89c53..44ae5974 100644 --- a/src/REL/m431Dll/main.c +++ b/src/REL/m431Dll/main.c @@ -15,6 +15,7 @@ #include "ext_math.h" #include "REL/m431Dll.h" +#include "version.h" typedef struct bss_5C_struct { s16 unk0[6]; @@ -167,8 +168,8 @@ u8 fn_1_57C(void) temp_r31 = &lbl_1_data_4C[0]; temp_r30 = 0; lbl_1_bss_8++; - temp_f30 = lbl_1_bss_8 / 90.0f; - if (lbl_1_bss_8 > 90) { + temp_f30 = lbl_1_bss_8 / (1.5f * REFRESH_RATE); + if (lbl_1_bss_8 > (s32)(1.5f * REFRESH_RATE)) { lbl_1_bss_8 = 0; temp_f30 = 1; temp_r30 = 1; @@ -210,9 +211,9 @@ s32 fn_1_7B0(void) temp_r31 = &lbl_1_data_4C[0]; temp_r29 = 0; lbl_1_bss_8++; - temp_f30 = lbl_1_bss_8 / 120.0f; - if (lbl_1_bss_8 > 120) { - lbl_1_bss_8 = 120; + temp_f30 = lbl_1_bss_8 / (2.0f * REFRESH_RATE); + if (lbl_1_bss_8 > (2 * REFRESH_RATE)) { + lbl_1_bss_8 = 2 * REFRESH_RATE; temp_f30 = 1; temp_r29 = 1; } @@ -258,7 +259,7 @@ void fn_1_A44(omObjData *object) temp_r26 = object->data; temp_r26->unk0 = 4; temp_r26->unk6[0] = 0; - temp_r26->unkA = 900; + temp_r26->unkA = 15 * REFRESH_RATE; temp_r26->unk10 = -1; temp_r27 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M431, 0x1A), MEMORY_DEFAULT_NUM)); object->model[0] = fn_1_6C74(temp_r27, 1024, 25, 64, 64); @@ -365,7 +366,7 @@ void fn_1_10A4(omObjData *object) case 12: if (temp_r31->unk10 != -1) { - temp_r28 = (temp_r31->unkA + 59) / 60; + temp_r28 = (temp_r31->unkA + REFRESH_RATE - 1) / REFRESH_RATE; if (temp_r28 < 0) { temp_r28 = 0; } @@ -426,7 +427,7 @@ void fn_1_10A4(omObjData *object) break; case 20: - if (++lbl_1_bss_C > 210.0f) { + if (++lbl_1_bss_C > (3.5f * REFRESH_RATE)) { lbl_1_bss_0 = 1; } break; @@ -442,11 +443,11 @@ void fn_1_140C(omObjData *object) return; } temp_r31->unk12++; - temp_f31 = temp_r31->unk12 / 18.0f; - if (temp_r31->unk12 > 18.0f) { + temp_f31 = temp_r31->unk12 / (3.0f / 10 * REFRESH_RATE); + if (temp_r31->unk12 > (3.0f / 10 * REFRESH_RATE)) { temp_r31->unk12 = 0; temp_f31 = 1.0f; - temp_r31->unk12 = 18; + temp_r31->unk12 = 0.3f * REFRESH_RATE; temp_r31->unk0 &= ~0x300; } temp_f30 = 1.0 - cosd(90.0f * temp_f31); @@ -848,9 +849,9 @@ void fn_1_2C94(Work2110 *arg0) HuAudFXPlay(1670); } lbl_1_bss_10++; - temp_f31 = lbl_1_bss_10 / 60.0f; + temp_f31 = lbl_1_bss_10 / (1.0f * REFRESH_RATE); if (temp_f31 >= 1.0f) { - temp_r26->unkA = 900; + temp_r26->unkA = 15 * REFRESH_RATE; lbl_1_bss_10 = 0; temp_f31 = 1; lbl_1_data_162++; @@ -870,7 +871,7 @@ void fn_1_2C94(Work2110 *arg0) HuAudFXPlay(1663); } lbl_1_bss_10++; - temp_f31 = lbl_1_bss_10 / 60.0f; + temp_f31 = lbl_1_bss_10 / (1.0f * REFRESH_RATE); if (temp_f31 >= 1.0f) { lbl_1_bss_10 = 0; temp_f31 = 1.0f; @@ -912,7 +913,7 @@ void fn_1_30E0(Work2110 *arg0) switch (lbl_1_data_162) { case 0: lbl_1_bss_10++; - if (lbl_1_bss_10 > 60) { + if (lbl_1_bss_10 > REFRESH_RATE) { lbl_1_bss_10 = 0; lbl_1_data_162++; } @@ -945,7 +946,7 @@ void fn_1_30E0(Work2110 *arg0) temp_r31 = &arg0[0].unk4[temp_r28]; switch (temp_r22 = temp_r31->unk0 & 0x1C) { case 4: - if (sp8[temp_r27] > 15) { + if (sp8[temp_r27] > (VERSION_NTSC ? 15 : 12)) { sp8[temp_r27] = 0; temp_r25 = 1; if (temp_r29 - 1 > -6) { @@ -969,7 +970,7 @@ void fn_1_30E0(Work2110 *arg0) temp_f31 = 50.0f; temp_r31->unk0 &= ~0x1C; if (temp_r22 == 8) { - temp_r31->unk20 = 6; + temp_r31->unk20 = 6.0f; temp_r31->unk0 |= 12; HuAudFXPlay(1664); } @@ -1020,7 +1021,7 @@ void fn_1_3540(Work2110 *arg0) temp_f31 += temp_r29 * 36.0f; lbl_1_bss_18[0] = lbl_1_bss_20[0] + temp_f31; lbl_1_bss_18[1] = lbl_1_bss_20[1] - temp_f31; - lbl_1_bss_14 = (0.01f * temp_f31) * 60; + lbl_1_bss_14 = (0.01f * temp_f31) * REFRESH_RATE; lbl_1_data_162++; lbl_1_data_164 = HuAudFXPlay(1665); break; @@ -1119,7 +1120,7 @@ void fn_1_3D7C(Work2110 *arg0) s16 temp_r27; switch (lbl_1_data_162) { case 0: - if (++lbl_1_bss_10 > 60) { + if (++lbl_1_bss_10 > REFRESH_RATE) { lbl_1_bss_10 = 0; lbl_1_data_162++; } @@ -1151,7 +1152,7 @@ void fn_1_3D7C(Work2110 *arg0) break; case 2: - if (++lbl_1_bss_10 > 60) { + if (++lbl_1_bss_10 > REFRESH_RATE) { lbl_1_bss_10 = lbl_1_data_162 = 0; fn_1_2050(224, 32); } @@ -1235,7 +1236,7 @@ void fn_1_4028(Work2110 *arg0) break; case 2: - if (++lbl_1_bss_10 > 90.0f) { + if (++lbl_1_bss_10 > (1.5f * REFRESH_RATE)) { lbl_1_bss_10 = 0; lbl_1_data_162 = 1; fn_1_2050(224, 128); @@ -1250,7 +1251,7 @@ void fn_1_4028(Work2110 *arg0) } if (temp_r31->unk0 & 0x2) { temp_r31->unk18++; - temp_f31 = temp_r31->unk18 / 30.0f; + temp_f31 = temp_r31->unk18 / (0.5f * REFRESH_RATE); if (temp_f31 >= 1.0f) { temp_r31->unk20 -= 1.0f; if (temp_r31->unk20 < 0.4f) { @@ -1264,16 +1265,16 @@ void fn_1_4028(Work2110 *arg0) } else { if (!temp_r31->unk20) { - if (++temp_r31->unk18 > 30.0f) { + if (++temp_r31->unk18 > (0.5f * REFRESH_RATE)) { temp_r31->unk20 = 1; temp_r31->unk18 = 0; } } else { temp_r31->unk18++; - temp_f31 = temp_r31->unk18 / 54.0f; + temp_f31 = temp_r31->unk18 / (VERSION_NTSC ? 54.0f : 45.0f); if (temp_f31 >= 1.0f) { - temp_r31->unk18 = 54; + temp_r31->unk18 = VERSION_NTSC ? 54 : 45; temp_f31 = 1.0f; } temp_f31 = cosd(temp_f31 * 90.0f); @@ -1594,7 +1595,7 @@ void fn_1_5708(void) Hu3DMotionShiftSet(lbl_1_bss_2C->model[5], lbl_1_bss_2C->motion[5], 0, 8, HU3D_MOTATTR_LOOP); } else { - if (temp_r29->unkA < 180) { + if (temp_r29->unkA < (3 * REFRESH_RATE)) { temp_r31->unk12 = 0; temp_r31->unk10 = 5; } diff --git a/src/REL/m431Dll/object.c b/src/REL/m431Dll/object.c index 4bd1247c..aaa65ed0 100644 --- a/src/REL/m431Dll/object.c +++ b/src/REL/m431Dll/object.c @@ -13,6 +13,7 @@ #include "REL/m431Dll.h" #include "ext_math.h" +#include "version.h" typedef struct bss_struct_62C { u8 unk0; @@ -319,7 +320,7 @@ void fn_1_8790(omObjData *object) } } if (temp_r31->unk7C && temp_r28 == temp_r31->unk6E - 1) { - if (++temp_r31->unk7C > 120) { + if (++temp_r31->unk7C > 2 * REFRESH_RATE) { temp_r31->unk7C = 0; } if ((temp_r31->unk14->unk0 & 0xC0) == 0x40) { @@ -704,6 +705,12 @@ void fn_1_98D4(omObjData *object) Hu3DModelRotSet(object->model[0], 0, temp_r31->unk30, 0); } +#if VERSION_NTSC +#define fn_1_9A04_CHECK (temp_r29->unk_0C == -1 && temp_r29->unk_64 == 14.0f) +#else +#define fn_1_9A04_CHECK (temp_r29->unk_0C == -1 && temp_r29->unk_64 >= 14.0f && temp_r31->unk3C_pal == 0) +#endif + void fn_1_9A04(omObjData *object) { Bss61CWork *temp_r31; @@ -725,12 +732,18 @@ void fn_1_9A04(omObjData *object) if (fn_1_4CDC(temp_r31->unkA, temp_r31->unk40)) { fn_1_B0E8(object, 3, 4); fn_1_B130(object, 0, 8); +#if VERSION_PAL + temp_r31->unk3C_pal = 0; +#endif } } } else { if (temp_r31->unk38 == 3) { - if (temp_r29->unk_0C == -1 && temp_r29->unk_64 == 14.0f) { + if (fn_1_9A04_CHECK) { +#if VERSION_PAL + temp_r31->unk3C_pal = 1; +#endif temp_r31->unk5C = fn_1_4B14(temp_r31->unkA, temp_r31->unk40, &temp_r31->unk7E); if (temp_r31->unk5C != -1) { if (temp_r31->unkA == 0) { @@ -742,18 +755,18 @@ void fn_1_9A04(omObjData *object) if (temp_r31->unk7E != 0) { omVibrate(temp_r31->unk4, 12, 6, 6); if (temp_r31->unkA == 0) { - fn_1_B494(1666, 30); + fn_1_B494(1666, 0.5f * REFRESH_RATE); } else { - fn_1_B494(1671, 30); + fn_1_B494(1671, 0.5f * REFRESH_RATE); } } else { if (temp_r31->unkA == 0) { - fn_1_B494(1667, 30); + fn_1_B494(1667, 0.5f * REFRESH_RATE); } else { - fn_1_B494(1672, 30); + fn_1_B494(1672, 0.5f * REFRESH_RATE); } } temp_r31->unk70++; @@ -891,6 +904,9 @@ void fn_1_A0F8(omObjData *object) if (fn_1_4CDC(temp_r31->unkA, temp_r31->unk40) && fn_1_2090(28) == 12 && fn_1_2090(224) == 0 && fn_1_4724() < 2) { fn_1_B0E8(object, 3, 4); fn_1_B130(object, 0, 8); +#if VERSION_PAL + temp_r31->unk3C_pal = 0; +#endif temp_r27 = 1; } if (temp_r27 == 0) { diff --git a/src/REL/m432Dll/main.c b/src/REL/m432Dll/main.c index a1b6da31..fd8e16f1 100644 --- a/src/REL/m432Dll/main.c +++ b/src/REL/m432Dll/main.c @@ -234,20 +234,20 @@ void fn_1_580(s32 *arg0, s32 arg1, s32 arg2) espBankSet(arg0[arg1 + 1], 10); espBankSet(arg0[arg1 + 4], 11); - if (36000 <= arg2) { - arg2 = 35999; + if (600 * REFRESH_RATE <= arg2) { + arg2 = 600 * REFRESH_RATE - 1; } - var_r30 = arg2 / 3600; - arg2 -= var_r30 * 3600; + var_r30 = arg2 / (60 * REFRESH_RATE); + arg2 -= var_r30 * (60 * REFRESH_RATE); if (var_r30 > 9) { var_r30 = 9; } espBankSet(arg0[arg1], var_r30); - var_r30 = arg2 / 60; - arg2 -= var_r30 * 60; + var_r30 = arg2 / REFRESH_RATE; + arg2 -= var_r30 * REFRESH_RATE; espBankSet(arg0[arg1 + 2], var_r30 / 10); espBankSet(arg0[arg1 + 3], var_r30 % 10); - var_r30 = 101.5f * arg2 / 60.0f; + var_r30 = 101.5f * arg2 / REFRESH_RATE; espBankSet(arg0[arg1 + 5], var_r30 / 10); espBankSet(arg0[arg1 + 6], var_r30 % 10); } diff --git a/src/REL/m441Dll/main.c b/src/REL/m441Dll/main.c index 10409258..fbd7fe34 100644 --- a/src/REL/m441Dll/main.c +++ b/src/REL/m441Dll/main.c @@ -222,20 +222,20 @@ void fn_1_580(s32 *arg0, s32 arg1, s32 arg2) espBankSet(arg0[arg1 + 1], 10); espBankSet(arg0[arg1 + 4], 11); - if (36000 <= arg2) { - arg2 = 35999; + if (600 * REFRESH_RATE <= arg2) { + arg2 = 600 * REFRESH_RATE - 1; } - var_r30 = arg2 / 3600; - arg2 -= var_r30 * 3600; + var_r30 = arg2 / (60 * REFRESH_RATE); + arg2 -= var_r30 * (60 * REFRESH_RATE); if (var_r30 > 9) { var_r30 = 9; } espBankSet(arg0[arg1], var_r30); - var_r30 = arg2 / 60; - arg2 -= var_r30 * 60; + var_r30 = arg2 / REFRESH_RATE; + arg2 -= var_r30 * REFRESH_RATE; espBankSet(arg0[arg1 + 2], var_r30 / 10); espBankSet(arg0[arg1 + 3], var_r30 % 10); - var_r30 = 101.5f * arg2 / 60.0f; + var_r30 = 101.5f * arg2 / REFRESH_RATE; espBankSet(arg0[arg1 + 5], var_r30 / 10); espBankSet(arg0[arg1 + 6], var_r30 % 10); } diff --git a/src/REL/m444dll/pinball.c b/src/REL/m444dll/pinball.c index 167aee6e..a455a9f4 100644 --- a/src/REL/m444dll/pinball.c +++ b/src/REL/m444dll/pinball.c @@ -20,8 +20,10 @@ #include "REL/m444dll.h" #include "ext_math.h" +#include "version.h" #include "math.h" + s16 lbl_1_bss_198F0[5][2]; Vec lbl_1_bss_D8F0[4096]; Vec lbl_1_bss_18F0[4096]; @@ -844,7 +846,7 @@ s16 fn_1_B1E8(Vec *arg0, Vec *arg1, s16 arg2) if (temp_f31 < 0.0f) { temp_f28 -= temp_f31; temp_f31 = ABS(temp_f31); -#if VERSION > 0 +#if VERSION_REV1 if (temp_f31 == 0.0) { sp1C.x = sp1C.y = sp1C.z = 0.0f; break; @@ -886,7 +888,7 @@ s16 fn_1_B1E8(Vec *arg0, Vec *arg1, s16 arg2) } } temp_f31 = VECMag(arg1); -#if VERSION > 0 +#if VERSION_REV1 if (VECMag(&sp1C) == 0.0) { sp1C.x = 0.0f; sp1C.y = 1.0f; @@ -912,7 +914,7 @@ s16 fn_1_B1E8(Vec *arg0, Vec *arg1, s16 arg2) break; } if (temp_f30 < 20.0f -#if VERSION > 0 +#if VERSION_REV1 && !(temp_f30 < 0.000001) #endif ) { @@ -925,7 +927,7 @@ s16 fn_1_B1E8(Vec *arg0, Vec *arg1, s16 arg2) } if (temp_r30 == lbl_1_data_3A4[arg2]) { arg1->y += 0.3; -#if VERSION > 0 +#if VERSION_REV1 if (VECMag((Vec *)&arg1) < 0.000001) { arg1->y += 0.3; } diff --git a/src/REL/m450Dll/main.c b/src/REL/m450Dll/main.c index cca17e4b..7936766b 100644 --- a/src/REL/m450Dll/main.c +++ b/src/REL/m450Dll/main.c @@ -34,6 +34,7 @@ #include "game/window.h" #include "string.h" +#include "version.h" #ifndef __MWERKS__ #include "game/audio.h" @@ -242,20 +243,20 @@ void fn_1_580(s32 *arg0, s32 arg1, s32 arg2) espBankSet(arg0[arg1 + 1], 10); espBankSet(arg0[arg1 + 4], 11); - if (36000 <= arg2) { - arg2 = 35999; + if (600 * REFRESH_RATE <= arg2) { + arg2 = 600 * REFRESH_RATE - 1; } - var_r30 = arg2 / 3600; - arg2 -= var_r30 * 3600; + var_r30 = arg2 / (60 * REFRESH_RATE); + arg2 -= var_r30 * (60 * REFRESH_RATE); if (var_r30 > 9) { var_r30 = 9; } espBankSet(arg0[arg1], var_r30); - var_r30 = arg2 / 60; - arg2 -= var_r30 * 60; + var_r30 = arg2 / REFRESH_RATE; + arg2 -= var_r30 * REFRESH_RATE; espBankSet(arg0[arg1 + 2], var_r30 / 10); espBankSet(arg0[arg1 + 3], var_r30 % 10); - var_r30 = 101.5f * arg2 / 60.0f; + var_r30 = 101.5f * arg2 / REFRESH_RATE; espBankSet(arg0[arg1 + 5], var_r30 / 10); espBankSet(arg0[arg1 + 6], var_r30 % 10); } @@ -1018,7 +1019,7 @@ void fn_1_2E34(WorkPlayerOld *player) player->unk_3C |= 0x100; player->unk_A4 = 0; if (!(player2->unk_3C & 0x100)) { - player->unk_84.y = 26.766666f; + player->unk_84.y = VERSION_NTSC ? 26.766666f : 32.120003f; } } if (state == 3) { @@ -1122,7 +1123,7 @@ void fn_1_3CE0(WorkPlayerOld *player, s32 *state, u32 *motAttr) } if (player->unk_14[3] >= 0 && (player->unk_28 & 0x100)) { - fn_1_2BD0(player, 26.766666f, 1.0f); + fn_1_2BD0(player, VERSION_NTSC ? 26.766666f : 32.120003f, 1.0f); *motAttr = HU3D_MOTATTR_NONE; *state = 3; } @@ -1137,14 +1138,14 @@ void fn_1_3DB8(WorkPlayerOld *player, s32 *state, u32 *motAttr) player->unk_A4 = 0; } else { - player->unk_84.y += 3.65f; + player->unk_84.y += 219.0f / REFRESH_RATE; } } else { player->unk_A4 = 0; } } - player->unk_84.y += -2.4333334f; + player->unk_84.y += -146.0f / REFRESH_RATE; if (player->unk_14[5] >= 0 && (player->unk_28 & 0x140)) { player->unk_38 = 3; player->unk_84.y = 0; @@ -1271,7 +1272,7 @@ void fn_1_40C0(WorkPlayerOld *player) if (player->unk_3C & 0x2000) { player->unk_84.y = 0; } - temp_f28 = 0; + temp_f28 = 0.0f; if (50.0f < ABS(player->unk_84.y)) { player->unk_84.y = 50.0f * ((0.0f > player->unk_84.y) ? -1 : 1); } @@ -2019,25 +2020,25 @@ s32 lbl_1_data_18C[8] = { 0, 1, 2, 1, 1, -1, -1, -1 }; s32 lbl_1_data_1AC[8] = { 0, 1, 2, 1, 1, -1, -1, -1 }; s32 lbl_1_data_1CC[4] = { 0x3E, 0x65, 0x3F, 0x66 }; UnkData204Struct lbl_1_data_1DC[5] = { - { 510.0f, 0 }, - { 300.0f, 1 }, - { 300.0f, 0 }, - { 300.0f, 1 }, + { 8.5f * REFRESH_RATE, 0 }, + { 5.0f * REFRESH_RATE, 1 }, + { 5.0f * REFRESH_RATE, 0 }, + { 5.0f * REFRESH_RATE, 1 }, { 0.0f, 0 }, }; UnkData204Struct lbl_1_data_204[6] = { - { 210.0f, 0 }, - { 300.0f, 1 }, - { 300.0f, 0 }, - { 300.0f, 1 }, - { 300.0f, 0 }, + { 3.5f * REFRESH_RATE, 0 }, + { 5.0f * REFRESH_RATE, 1 }, + { 5.0f * REFRESH_RATE, 0 }, + { 5.0f * REFRESH_RATE, 1 }, + { 5.0f * REFRESH_RATE, 0 }, { 0.0f, 0 }, }; Vec2f lbl_1_data_234[4] = { - { 300.0f, 300.0f }, - { 300.0f, 240.0f }, - { 300.0f, 210.0f }, - { 300.0f, 180.0f }, + { 5.0f * REFRESH_RATE, 5.0f * REFRESH_RATE }, + { 5.0f * REFRESH_RATE, 4.0f * REFRESH_RATE }, + { 5.0f * REFRESH_RATE, 3.5f * REFRESH_RATE }, + { 5.0f * REFRESH_RATE, 3.0f * REFRESH_RATE }, }; float lbl_1_data_254[5] = { 0.4f, 0.35f, 0.3f, 0.25f, 0.2f }; float lbl_1_data_268[5] = { 0.45f, 0.4f, 0.35f, 0.3f, 0.25f }; @@ -2381,9 +2382,9 @@ void fn_1_8500(void) HuPrcVSleep(); } HuAudFXPlay(0x3B); - fn_1_A968(4, 8.0f, 0, 0, 60.0f); - fn_1_E1A8(0, 9, 8.0f, 0, 7, 60.0f); - fn_1_E1A8(1, 9, 8.0f, 0, 7, 60.0f); + fn_1_A968(4, 8.0f, 0, 0, REFRESH_RATE); + fn_1_E1A8(0, 9, 8.0f, 0, 7, REFRESH_RATE); + fn_1_E1A8(1, 9, 8.0f, 0, 7, REFRESH_RATE); fn_1_7B90(var_r31, 0x2D0004); fn_1_7C14(var_r31, -1); HuAudFXPlay(0x3C); @@ -2786,7 +2787,7 @@ void fn_1_AAB0(UnkM450Struct3 *arg0, Vec2f *arg1, s32 arg2) float var_f31 = 1.0f; if (arg2 != 0) { var_f31 = arg0->unk_F4; - if ((lbl_1_data_F6C[lbl_1_bss_118] - lbl_1_bss_304) > 0xE10) { + if ((lbl_1_data_F6C[lbl_1_bss_118] - lbl_1_bss_304) > 60 * REFRESH_RATE) { arg0->unk_F4 = arg0->unk_F4 - 0.1f; if (0.0f > arg0->unk_F4) { arg0->unk_F4 = 0.0f; @@ -2916,7 +2917,7 @@ void fn_1_AD58(omObjData *object) } break; case 0xBBE: - fn_1_A828(var_r31, 120.0f, 3000.0f, 1605.0f); + fn_1_A828(var_r31, 2 * REFRESH_RATE, 3000.0f, 1605.0f); if (lbl_1_bss_1A4->work[0] >= 0x40B) { var_r31->unk_150++; var_r31->unk_E0 = 0.0f; @@ -3048,7 +3049,7 @@ void fn_1_AD58(omObjData *object) fn_1_19A10(&var_r31->unk_00, &spE4); fn_1_40C0(&var_r31->unk_00); var_r31->unk_E0 += 1.0f; - spC8 = (60.0f * (3.0f + lbl_1_data_A0C[1].unk_14)); + spC8 = (REFRESH_RATE * (3.0f + lbl_1_data_A0C[1].unk_14)); if (spC8 < var_r31->unk_E0) { var_r31->unk_150++; var_r31->unk_154 &= ~0x70; @@ -3115,7 +3116,7 @@ void fn_1_AD58(omObjData *object) Hu3DMotionTimeSet(object->model[0], 50.0f); } var_r31->unk_E0 += 1.0f; - if (180.0f < var_r31->unk_E0) { + if (3 * REFRESH_RATE < var_r31->unk_E0) { var_r31->unk_150 = 0xBC6; var_r31->unk_E0 = 0.0f; var_r31->unk_154 |= 0x20; @@ -3154,7 +3155,7 @@ void fn_1_AD58(omObjData *object) fn_1_19A10(&var_r31->unk_00, &spE4); fn_1_40C0(&var_r31->unk_00); var_r31->unk_E0 += 1.0f; - if (180.0f < var_r31->unk_E0) { + if (3 * REFRESH_RATE < var_r31->unk_E0) { var_r31->unk_150 = 0xBC6; var_r31->unk_E0 = 0.0f; var_r31->unk_154 |= 0x20; @@ -3660,7 +3661,7 @@ void fn_1_ED4C(omObjData *object) } break; case 0xFA8: - fn_1_A828(var_r31, 120.0f, 3000.0f, 1605.0f); + fn_1_A828(var_r31, 2 * REFRESH_RATE, 3000.0f, 1605.0f); if (lbl_1_bss_1A4->work[0] >= 0x3F9) { var_r31->unk_150 = var_r31->unk_150 + 1; var_r31->unk_E0 = 0.0f; @@ -4038,7 +4039,7 @@ void fn_1_12688(omObjData *object) if (object->work[0] != 0) { if (lbl_1_bss_1A4->work[0] <= 0x3EB) { object->work[0] = object->work[0] - (3.0f - (lbl_1_bss_128 / 120.0f)); - if (object->work[0] > 0x258) { + if (object->work[0] > 10 * REFRESH_RATE) { object->work[0] = 1; } } @@ -4055,7 +4056,7 @@ void fn_1_12688(omObjData *object) } } else if (Hu3DMotionEndCheck(object->model[0]) != 0) { - object->work[0] = frandmod(0x258); + object->work[0] = frandmod(10 * REFRESH_RATE); Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_PAUSE); } @@ -4063,7 +4064,7 @@ void fn_1_12688(omObjData *object) void fn_1_1291C(omObjData *object) { - object->work[0] = frandmod(0x258); + object->work[0] = frandmod(10 * REFRESH_RATE); omSetTra(object, 0.0f, 0.0f, 0.0f); omSetRot(object, 0.0f, 0.0f, 0.0f); object->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M450, 0x22)); @@ -4312,27 +4313,27 @@ UnkDataA0CStruct lbl_1_data_A0C[2] = { { 0x00510067, DATA_MAKE_NUM(DATADIR_M450, 0x66), DATA_MAKE_NUM(DATADIR_M450, 0x69), DATA_MAKE_NUM(DATADIR_M450, 0x6A), 5, 5, NULL }, }; UnkDataA80Struct lbl_1_data_A80[9] = { - { "m450mex06-s2hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 135.0f, 0.6f, 350.0f }, -1, 0 }, - { "m450mex06-s2hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 315.0f, 0.6f, 350.0f }, -2, 0 }, - { "m450mex06-s2hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 45.0f, -0.6f, 350.0f }, -1, 0 }, - { "m450mex06-s2hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 225.0f, -0.6f, 350.0f }, -2, 0 }, - { "m450mex06-s2hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 0.0f, 0.6f, 350.0f }, -1, 0 }, - { "m450mex06-s2hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 120.0f, 0.6f, 350.0f }, -2, 0 }, - { "m450mex06-s2hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 240.0f, 0.6f, 350.0f }, -2, 0 }, - { "m450mex06-s2hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 0.0f, 0.6f, 300.0f }, -1, 0 }, - { "m450mex06-s2hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 180.0f, 0.6f, 300.0f }, -2, 0 }, + { "m450mex06-s2hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 135.0f, 36.0f / REFRESH_RATE, 350.0f }, -1, 0 }, + { "m450mex06-s2hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 315.0f, 36.0f / REFRESH_RATE, 350.0f }, -2, 0 }, + { "m450mex06-s2hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 45.0f, -36.0f / REFRESH_RATE, 350.0f }, -1, 0 }, + { "m450mex06-s2hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 225.0f, -36.0f / REFRESH_RATE, 350.0f }, -2, 0 }, + { "m450mex06-s2hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 0.0f, 36.0f / REFRESH_RATE, 350.0f }, -1, 0 }, + { "m450mex06-s2hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 120.0f, 36.0f / REFRESH_RATE, 350.0f }, -2, 0 }, + { "m450mex06-s2hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 240.0f, 36.0f / REFRESH_RATE, 350.0f }, -2, 0 }, + { "m450mex06-s2hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 0.0f, 36.0f / REFRESH_RATE, 300.0f }, -1, 0 }, + { "m450mex06-s2hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 180.0f, 36.0f / REFRESH_RATE, 300.0f }, -2, 0 }, }; UnkDataA80Struct lbl_1_data_C58[0xA] = { - { "m450mex06-s4hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 60.0f, -0.6f, 300.0f }, -1, 0 }, - { "m450mex06-s4hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 180.0f, -0.6f, 300.0f }, -2, 0 }, - { "m450mex06-s4hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 300.0f, -0.6f, 300.0f }, -2, 0 }, - { "m450mex06-s4hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 135.0f, -1.2f, 300.0f }, -1, 0 }, - { "m450mex06-s4hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 315.0f, -1.2f, 300.0f }, -2, 0 }, - { "m450mex06-s4hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 225.0f, -0.6f, 300.0f }, -1, 0 }, - { "m450mex06-s4hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 45.0f, -0.6f, 300.0f }, -2, 0 }, - { "m450mex06-s4hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 0.0f, 1.2f, 300.0f }, -1, 0 }, - { "m450mex06-s4hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 120.0f, 1.2f, 300.0f }, -2, 0 }, - { "m450mex06-s4hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 240.0f, 1.2f, 300.0f }, -2, 0 }, + { "m450mex06-s4hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 60.0f, -36.0f / REFRESH_RATE, 300.0f }, -1, 0 }, + { "m450mex06-s4hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 180.0f, -36.0f / REFRESH_RATE, 300.0f }, -2, 0 }, + { "m450mex06-s4hook01", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 300.0f, -36.0f / REFRESH_RATE, 300.0f }, -2, 0 }, + { "m450mex06-s4hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 135.0f, -72.0f / REFRESH_RATE, 300.0f }, -1, 0 }, + { "m450mex06-s4hook03", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 315.0f, -72.0f / REFRESH_RATE, 300.0f }, -2, 0 }, + { "m450mex06-s4hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 225.0f, -36.0f / REFRESH_RATE, 300.0f }, -1, 0 }, + { "m450mex06-s4hook02", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 45.0f, -36.0f / REFRESH_RATE, 300.0f }, -2, 0 }, + { "m450mex06-s4hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 0.0f, 72.0f / REFRESH_RATE, 300.0f }, -1, 0 }, + { "m450mex06-s4hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 120.0f, 72.0f / REFRESH_RATE, 300.0f }, -2, 0 }, + { "m450mex06-s4hook04", { 0.0f, 0.0f, 0.0f }, -1, 0.0f, { 240.0f, 72.0f / REFRESH_RATE, 300.0f }, -2, 0 }, }; char *lbl_1_data_E68[5] = { "m450m01-from1to2", @@ -4403,7 +4404,7 @@ s32 lbl_1_data_F00[0x17] = { }; s32 lbl_1_data_F5C[4] = { DATA_MAKE_NUM(DATADIR_M450, 0x24), DATA_MAKE_NUM(DATADIR_M450, 0x25), DATA_MAKE_NUM(DATADIR_M450, 0x26), DATA_MAKE_NUM(DATADIR_M450, 0x27) }; -s32 lbl_1_data_F6C[6] = { 0, 0xE10, 0x4650, 0xE10, 0x4650, 0x4650 }; +s32 lbl_1_data_F6C[6] = { 0, 60 * REFRESH_RATE, 300 * REFRESH_RATE, 60 * REFRESH_RATE, 300 * REFRESH_RATE, 300 * REFRESH_RATE }; float lbl_1_data_F84[5] = { 1200.0f, 1500.0f, 0.0f, 200.0f, 300.0f }; float lbl_1_data_F98[5] = { 1200.0f, 1500.0f, 0.0f, 200.0f, 300.0f }; float *lbl_1_data_FAC[6] = { NULL, lbl_1_data_F84, NULL, lbl_1_data_F98, NULL, NULL }; @@ -4502,7 +4503,7 @@ void fn_1_12A1C(omObjData *object) } } else if (Hu3DMotionEndCheck(object->model[0]) != 0) { - object->work[0] = frandmod(0xB4); + object->work[0] = frandmod(3 * REFRESH_RATE); Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_PAUSE); } @@ -4513,7 +4514,7 @@ void fn_1_12B80(omObjData *object) s32 var_r30; s16 var_r29; - object->work[0] = frandmod(0xB4); + object->work[0] = frandmod(3 * REFRESH_RATE); omSetTra(object, 0.0f, 0.0f, 0.0f); omSetRot(object, 0.0f, 0.0f, 0.0f); @@ -4813,7 +4814,7 @@ void fn_1_13F28(omObjData *object) } if (((UnkM450Struct5 *)lbl_1_bss_138->data)->unk_10C < 3) { var_r31->unk_14 += 1.0f; - if (1200.0f < var_r31->unk_14) { + if (20 * REFRESH_RATE < var_r31->unk_14) { var_r31->unk_1C = 0; fn_1_1B510(var_r29); } @@ -6012,7 +6013,7 @@ void fn_1_19CE0(omObjData *object) var_r31->unk_FC &= ~0x3000; var_r31->unk_FC &= ~0x30000; var_r31->unk_FC &= ~0x300000; - var_r31->unk_100 = 0x78; + var_r31->unk_100 = 2 * REFRESH_RATE; var_r31->unk_F8 = 0.0f; var_r31->unk_00.unk_3C &= ~0x210; } @@ -6567,7 +6568,7 @@ s32 fn_1_1C898(UnkM450Struct5 *var_r31, omObjData *var_r30) HuAudCharVoicePlay(var_r31->unk_11C, 0x123); var_r31->unk_FC |= 0x10; var_r31->unk_00.unk_3C |= 0x210; - fn_1_2BD0(&var_r31->unk_00, 48.179996f, 0.0f); + fn_1_2BD0(&var_r31->unk_00, VERSION_NTSC ? 48.179995f : 57.816f, 0.0f); Hu3DMotionShiftSet(var_r30->model[0], var_r30->motion[8], 0.0f, 8.0f, 0); if (fn_1_125C0(0, 1) <= 0) { var_r31->unk_FC |= 0x80000; @@ -6615,7 +6616,7 @@ s32 fn_1_1C898(UnkM450Struct5 *var_r31, omObjData *var_r30) var_r31->unk_FC |= 0x100000; var_r31->unk_00.unk_3C |= 0x200; var_r31->unk_00.unk_3C &= ~0x10; - var_f31 = 40.15f; + var_f31 = VERSION_NTSC ? 40.15f : 48.180005f; if (var_r31->unk_FC & 4) { var_f31 = var_f31 / 2; } @@ -6690,7 +6691,7 @@ void fn_1_1E150(omObjData *var_r29) HuAudCharVoicePlay(var_r31->unk_11C, 0x123); var_r31->unk_FC |= 0x800000; var_r31->unk_118 = 0x7EB; - fn_1_2BD0(&var_r31->unk_00, 53.533333f, 0.0f); + fn_1_2BD0(&var_r31->unk_00, VERSION_NTSC ? 53.533333f : 64.240005f, 0.0f); Hu3DMotionSet(var_r29->model[0], var_r29->motion[8]); Hu3DModelAttrReset(var_r29->model[0], HU3D_ATTR_DISPOFF); fn_1_125C0(0, 0); @@ -7074,7 +7075,7 @@ void fn_1_20170(omObjData *var_r30) break; case 0x7E9: if (lbl_1_bss_1A4->work[0] >= 0x417) { - if (100.0f < lbl_1_bss_128) { + if ((VERSION_NTSC ? 100.0f : 80.0f) < lbl_1_bss_128) { var_r31->unk_118++; GWPlayerCoinWinSet(lbl_1_bss_120, 10); Hu3DMotionShiftSet(var_r30->model[0], var_r30->motion[21], 0.0f, 8.0f, 0); @@ -7092,14 +7093,13 @@ void fn_1_20170(omObjData *var_r30) break; case 0x7EB: if (var_r31->unk_FC & 0x800000) { - // inline? var_r29 = var_r31; - var_r29->unk_00.unk_84.y += -2.4333334f; + var_r29->unk_00.unk_84.y += -146.0f / REFRESH_RATE; var_r29->unk_00.unk_6C.y += var_r29->unk_00.unk_84.y; var_r29->unk_00.unk_A8 = MapPos( var_r29->unk_00.unk_6C.x, var_r29->unk_00.unk_6C.y, var_r29->unk_00.unk_6C.z, var_r29->unk_00.unk_C0, &var_r29->unk_00.unk_AC); if (var_r29->unk_00.unk_A8 > var_r29->unk_00.unk_6C.y) { - fn_1_2BD0(&var_r31->unk_00, 53.533333f, 0.0f); + fn_1_2BD0(&var_r31->unk_00, VERSION_NTSC ? 53.533333f : 64.240005f, 0.0f); } var_f31 = var_r29->unk_00.unk_6C.x; var_f30 = var_r29->unk_00.unk_6C.z; @@ -7367,12 +7367,12 @@ void fn_1_24620(omObjData *var_r31) case 0x40D: case 0x415: if (lbl_1_bss_2FC >= 0) { - MGSeqParamSet(lbl_1_bss_2FC, 1, (lbl_1_bss_304 + 0x3B) / 60); + MGSeqParamSet(lbl_1_bss_2FC, 1, (lbl_1_bss_304 + REFRESH_RATE - 1) / REFRESH_RATE); } else { sp120 = 0; if ((lbl_1_bss_118 == 2) || (lbl_1_bss_118 == 4) || (lbl_1_bss_118 == 5)) { - if (lbl_1_bss_304 < 0x708) { + if (lbl_1_bss_304 < 30 * REFRESH_RATE) { sp120 = 1; } } @@ -7380,7 +7380,7 @@ void fn_1_24620(omObjData *var_r31) sp120 = 1; } if (sp120 != 0) { - lbl_1_bss_2FC = MGSeqCreate(1, lbl_1_bss_304 / 60, -1, -1); + lbl_1_bss_2FC = MGSeqCreate(1, lbl_1_bss_304 / REFRESH_RATE, -1, -1); } } lbl_1_bss_304--; @@ -7390,7 +7390,7 @@ void fn_1_24620(omObjData *var_r31) } break; case 0x3F4: - fn_1_23CA0(var_r31, 270.0f, 120.0f); + fn_1_23CA0(var_r31, 270.0f, 2 * REFRESH_RATE); break; case 0x3F5: lbl_1_bss_128 += 1.0f; @@ -7413,7 +7413,7 @@ void fn_1_24620(omObjData *var_r31) omVibrate(lbl_1_bss_120, 0xC, 6, 6); lbl_1_bss_128 += 1.0f; Hu3DModelPosSet(lbl_1_bss_1A0->model[6], 0.0f, -(2.0f * lbl_1_bss_128), 0.0f); - if (120.0f < lbl_1_bss_128) { + if (2 * REFRESH_RATE < lbl_1_bss_128) { var_r31->work[0] += 1; fn_1_6CB0(fn_1_9074, 2); HuAudFXPlay(0x7BB); @@ -7433,7 +7433,7 @@ void fn_1_24620(omObjData *var_r31) } break; case 0x3FC: - var_f31 = lbl_1_bss_128 / 120.0f; + var_f31 = lbl_1_bss_128 / (2 * REFRESH_RATE); if (1.0f < var_f31) { var_f31 = 1.0f; } @@ -7442,7 +7442,7 @@ void fn_1_24620(omObjData *var_r31) Hu3DModelRotSet(lbl_1_bss_1A0->model[5], 0.0f, 90.0f, 0.0f); Hu3DModelPosSet(lbl_1_bss_1A0->model[5], var_r30->unk_30[3].x, var_r30->unk_30[3].y, var_r30->unk_30[3].z); Hu3DModelTPLvlSet(lbl_1_bss_1A0->model[5], var_f31); - fn_1_23CA0(var_r31, 270.0f, 120.0f); + fn_1_23CA0(var_r31, 270.0f, 2 * REFRESH_RATE); break; case 0x3FD: case 0x3FE: @@ -7493,7 +7493,7 @@ void fn_1_24620(omObjData *var_r31) } break; case 0x406: - fn_1_23CA0(var_r31, 270.0f, 120.0f); + fn_1_23CA0(var_r31, 270.0f, 2 * REFRESH_RATE); break; case 0x407: lbl_1_bss_128 += 1.0f; @@ -7516,7 +7516,7 @@ void fn_1_24620(omObjData *var_r31) omVibrate(lbl_1_bss_120, 0xC, 6, 6); lbl_1_bss_128 += 1.0f; Hu3DModelPosSet(lbl_1_bss_1A0->model[17], 0.0f, -(2.0f * lbl_1_bss_128), 0.0f); - if (120.0f < lbl_1_bss_128) { + if (2 * REFRESH_RATE < lbl_1_bss_128) { var_r31->work[0] += 1; fn_1_6CB0(fn_1_9824, 4); HuAudFXPlay(0x7BB); @@ -7536,7 +7536,7 @@ void fn_1_24620(omObjData *var_r31) } break; case 0x40E: - var_f31 = lbl_1_bss_128 / 120.0f; + var_f31 = lbl_1_bss_128 / (2 * REFRESH_RATE); if (1.0f < var_f31) { var_f31 = 1.0f; } @@ -7545,7 +7545,7 @@ void fn_1_24620(omObjData *var_r31) Hu3DModelRotSet(lbl_1_bss_1A0->model[16], 0.0f, -90.0f, 0.0f); Hu3DModelPosSet(lbl_1_bss_1A0->model[16], var_r30->unk_30[8].x, var_r30->unk_30[8].y, var_r30->unk_30[8].z); Hu3DModelTPLvlSet(lbl_1_bss_1A0->model[16], var_f31); - fn_1_23CA0(var_r31, 270.0f, 120.0f); + fn_1_23CA0(var_r31, 270.0f, 2 * REFRESH_RATE); break; case 0x40F: lbl_1_bss_20 = -1; @@ -7598,7 +7598,7 @@ void fn_1_24620(omObjData *var_r31) lbl_1_bss_128 += 1.0f; break; case 0x417: - fn_1_23CA0(var_r31, 0.0f, 120.0f); + fn_1_23CA0(var_r31, 0.0f, 2 * REFRESH_RATE); break; case 0x418: lbl_1_bss_128 += 1.0f; diff --git a/src/REL/m461Dll/main.c b/src/REL/m461Dll/main.c index f94c9831..d24bdfd7 100644 --- a/src/REL/m461Dll/main.c +++ b/src/REL/m461Dll/main.c @@ -223,20 +223,20 @@ void fn_1_580(s32 *arg0, s32 arg1, s32 arg2) espBankSet(arg0[arg1 + 1], 10); espBankSet(arg0[arg1 + 4], 11); - if (36000 <= arg2) { - arg2 = 35999; + if (600 * REFRESH_RATE <= arg2) { + arg2 = 600 * REFRESH_RATE - 1; } - var_r30 = arg2 / 3600; - arg2 -= var_r30 * 3600; + var_r30 = arg2 / (60 * REFRESH_RATE); + arg2 -= var_r30 * (60 * REFRESH_RATE); if (var_r30 > 9) { var_r30 = 9; } espBankSet(arg0[arg1], var_r30); - var_r30 = arg2 / 60; - arg2 -= var_r30 * 60; + var_r30 = arg2 / REFRESH_RATE; + arg2 -= var_r30 * REFRESH_RATE; espBankSet(arg0[arg1 + 2], var_r30 / 10); espBankSet(arg0[arg1 + 3], var_r30 % 10); - var_r30 = 101.5f * arg2 / 60.0f; + var_r30 = 101.5f * arg2 / REFRESH_RATE; espBankSet(arg0[arg1 + 5], var_r30 / 10); espBankSet(arg0[arg1 + 6], var_r30 % 10); } diff --git a/src/REL/option/record.c b/src/REL/option/record.c index 671f0793..fb16ee2e 100755 --- a/src/REL/option/record.c +++ b/src/REL/option/record.c @@ -10,6 +10,7 @@ #include "dolphin.h" #include "math.h" +#include "version.h" #define RECORD_TYPE_BOARD 0 #define RECORD_TYPE_MG 1 @@ -572,7 +573,7 @@ static void ShowBoard(omObjData *object, s32 board) espPosSet(work->sprList[board], 275.0f, 72.0f); value = work->boardRecord[work->board].playCount; for (i = 0; i < PLAY_COUNT_NUM_DIGITS; i++) { - espPosSet(work->sprList[i + 11], 323.0f + 20.0f * i, 116.0f); + espPosSet(work->sprList[i + 11], (VERSION_NTSC ? 323.0f : 392.0f) + 20.0f * i, 116.0f); if (value > 999) { espBankSet(work->sprList[i + 11], i + 10); } @@ -583,7 +584,7 @@ static void ShowBoard(omObjData *object, s32 board) espPosSet(work->sprList[8], 416.0f, 120.0f); value = work->boardRecord[work->board].maxCoins; for (i = 0; i < MAX_COINS_NUM_DIGITS; i++) { - espPosSet(work->sprList[i + 15], 364.0f + 20.0f * i, 268.0f); + espPosSet(work->sprList[i + 15], (VERSION_NTSC ? 364.0f : 392.0f) + 20.0f * i, 268.0f); if (value > 999) { espBankSet(work->sprList[i + 15], i + 10); } @@ -591,10 +592,12 @@ static void ShowBoard(omObjData *object, s32 board) espBankSet(work->sprList[i + 15], GetDigit(value, 3 - i)); } } +#if VERSION_NTSC espPosSet(work->sprList[9], 456.0f, 268.0f); +#endif value = work->boardRecord[work->board].maxStars; for (i = 0; i < MAX_STARS_NUM_DIGITS; i++) { - espPosSet(work->sprList[i + 19], 364.0f + 20.0f * i, 312.0f); + espPosSet(work->sprList[i + 19], (VERSION_NTSC ? 364.0f : 392.0f) + 20.0f * i, 312.0f); if (value > 999) { espBankSet(work->sprList[i + 19], i + 10); } @@ -602,7 +605,9 @@ static void ShowBoard(omObjData *object, s32 board) espBankSet(work->sprList[i + 19], GetDigit(value, 3 - i)); } } +#if VERSION_NTSC espPosSet(work->sprList[10], 456.0f, 312.0f); +#endif for (i = 0; i < NUM_CHARACTERS; i++) { espPosSet(work->sprList[i + 49], 92.0f + 50.0f * i, 200.0f); for (j = 0; j < WIN_COUNT_NUM_DIGITS; j++) { @@ -616,11 +621,15 @@ static void ShowBoard(omObjData *object, s32 board) for (i = 0; i < PLAY_COUNT_NUM_DIGITS; i++) { espDispOn(work->sprList[i + 11]); } +#if VERSION_NTSC espDispOn(work->sprList[8]); +#endif for (i = 0; i < MAX_COINS_NUM_DIGITS; i++) { espDispOn(work->sprList[i + 15]); } +#if VERSION_NTSC espDispOn(work->sprList[9]); +#endif for (i = 0; i < MAX_STARS_NUM_DIGITS; i++) { espDispOn(work->sprList[i + 19]); } @@ -759,14 +768,14 @@ static void ShowMG(omObjData *object, s32 page) } break; case DISPLAY_TYPE_TIME: - timeMin = value / 3600; - timeSec = (value % 3600) / 60; - timeCenti = (value % 3600) % 60; + timeMin = value / (60 * REFRESH_RATE); + timeSec = (value % (60 * REFRESH_RATE)) / REFRESH_RATE; + timeCenti = (value % (60 * REFRESH_RATE)) % REFRESH_RATE; if (mgTbl[mg].id == 405 || mgTbl[mg].id == 432) { - timeCenti *= 1.6916667f; + timeCenti *= (101.5f / REFRESH_RATE); } else { - timeCenti *= 1.6666666f; + timeCenti *= (100.0f / REFRESH_RATE); } for (j = 1; j < MG_TIME_NUM_DIGITS; j++) { espPosSet(work->sprList[i * 8 + 89 + j], 336.0f + 16.0f * j, 116.0f + 40.0f * i); diff --git a/src/REL/option/window.c b/src/REL/option/window.c index 6bb32d8d..7497bef7 100755 --- a/src/REL/option/window.c +++ b/src/REL/option/window.c @@ -5,6 +5,8 @@ #include "game/process.h" #include "game/sprite.h" +#include "version.h" + static void ExecWindow(void); OptionWindow *OptionWinCreate(s32 id) @@ -33,13 +35,13 @@ OptionWindow *OptionWinCreate(s32 id) HuWinMesSpeedSet(work->window, 0); break; case 2: - work->window = HuWinExCreateStyled(-10000.0f, 88.0f, 224, 34, -1, 0); + work->window = HuWinExCreateStyled(-10000.0f, 88.0f, VERSION_NTSC ? 224 : 320, 34, -1, 0); HuWinAttrSet(work->window, 0x800); HuWinBGTPLvlSet(work->window, 0.0f); HuWinMesSpeedSet(work->window, 0); break; case 3: - work->window = HuWinExCreateStyled(175.0f, 100.0f, 300, 34, -1, 0); + work->window = HuWinExCreateStyled(175.0f, 100.0f, VERSION_NTSC ? 300 : 320, 34, -1, 0); HuWinBGTPLvlSet(work->window, 0.0f); HuWinMesSpeedSet(work->window, 0); break; From be795772029dec01530956f14fdb2427e96e0ed9 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sun, 17 Nov 2024 00:08:24 +0100 Subject: [PATCH 008/178] Port gamework.c to PAL (#467) --- config/GMPE01_00/symbols.txt | 1 - config/GMPP01_00/symbols.txt | 2 +- configure.py | 2 +- include/game/gamework_data.h | 8 +++ src/game/gamework.c | 132 ++++++++++++++++++++--------------- 5 files changed, 85 insertions(+), 60 deletions(-) diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index cfa1a176..ff55eea2 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -4293,7 +4293,6 @@ luckyMessTbl = .data:0x8013ADC4; // type:object size:0x24 scope:local jumptable_8013ADE8 = .data:0x8013ADE8; // type:object size:0x20 scope:local cursorYTbl = .data:0x8013AE08; // type:object size:0x10 scope:local hiliteYTbl = .data:0x8013AE18; // type:object size:0x10 scope:local - hiliteColTbl = .data:0x8013AE28; // type:object size:0xC scope:local hostMesTbl = .data:0x8013AE38; // type:object size:0x90 scope:local houseMdlTbl = .data:0x8013AEC8; // type:object size:0x30 scope:local diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index 36e40d58..33e87867 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -4611,7 +4611,7 @@ __fini_cpp_exceptions_reference = .dtors:0x8011DB04; // type:object size:0x4 sco lbl_8011DB20 = .rodata:0x8011DB20; // type:object size:0x10 data:4byte lbl_8011DB30 = .rodata:0x8011DB30; // type:object size:0x10 data:4byte lbl_8011DB40 = .rodata:0x8011DB40; // type:object size:0x10 data:4byte -lbl_8011DB50 = .rodata:0x8011DB50; // type:object size:0x20 data:byte +lbl_8011DB50 = .rodata:0x8011DB50; // type:object size:0x20 scope:local data:byte lbl_8011DB70 = .rodata:0x8011DB70; // type:object size:0x10 data:4byte lbl_8011DB80 = .rodata:0x8011DB80; // type:object size:0x24 data:4byte lbl_8011DBA4 = .rodata:0x8011DBA4; // type:object size:0xC data:4byte diff --git a/configure.py b/configure.py index a1c14491..9a885735 100644 --- a/configure.py +++ b/configure.py @@ -396,7 +396,7 @@ config.libs = [ Object(Matching, "game/perf.c"), Object(Matching, "game/objmain.c"), Object(Matching, "game/fault.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/gamework.c"), + Object(Matching, "game/gamework.c"), Object(Matching, "game/objsysobj.c"), Object(Matching, "game/objdll.c"), Object(Matching, "game/frand.c"), diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index 6e876bc1..53500e51 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -144,6 +144,9 @@ typedef struct game_stat { /* 0x110 */ PauseBackupConfig party_pause; } GameStat; +extern s16 GwLanguage; +extern s16 GwLanguageSave; + extern PlayerConfig GWPlayerCfg[4]; extern PlayerState GWPlayer[4]; extern SystemState GWSystem; @@ -169,6 +172,11 @@ static inline s32 GWPartyGet(void) return GWSystem.party; } +static inline void GWLanguageSet(s16 language) +{ + GWGameStat.language = language; +} + static inline s32 GWLanguageGet(void) { return GWGameStat.language; diff --git a/src/game/gamework.c b/src/game/gamework.c index 371d8499..ea372944 100644 --- a/src/game/gamework.c +++ b/src/game/gamework.c @@ -1,7 +1,12 @@ -#include "string.h" #include "game/gamework.h" -#include "game/gamework_data.h" #include "game/flag.h" +#include "game/gamework_data.h" +#include "string.h" +#include "version.h" + + +s16 GwLanguage = 1; +s16 GwLanguageSave = -1; GameStat GWGameStatDefault; GameStat GWGameStat; @@ -20,15 +25,16 @@ static inline void InitPlayerConfig(void) { PlayerConfig *config; s32 i; - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { config = &GWPlayerCfg[i]; config->character = i; config->pad_idx = i; config->diff = 0; config->group = i; - if(!HuPadStatGet(i)) { + if (!HuPadStatGet(i)) { config->iscom = 0; - } else { + } + else { config->iscom = 1; } } @@ -36,11 +42,11 @@ static inline void InitPlayerConfig(void) static inline void ResetBoardSettings(void) { - GWRumbleSet(1); - GWMGExplainSet(1); - GWMGShowComSet(1); - GWMessSpeedSet(1); - GWSaveModeSet(0); + GWRumbleSet(1); + GWMGExplainSet(1); + GWMGShowComSet(1); + GWMessSpeedSet(1); + GWSaveModeSet(0); } void GWInit(void) @@ -49,23 +55,29 @@ void GWInit(void) _InitFlag(); GWErase(); InitPlayerConfig(); +#if VERSION_JAP + GWGameStat.language = 0; +#elif VERSION_NTSC GWGameStat.language = 1; +#else + GWLanguageSet(GwLanguage); +#endif ResetBoardSettings(); } static inline void ResetMGRecord(GameStat *game_stat) { - game_stat->mg_record[0] = 18000; + game_stat->mg_record[0] = 300 * REFRESH_RATE; game_stat->mg_record[1] = 80; - game_stat->mg_record[2] = 3600; - game_stat->mg_record[3] = 7200; + game_stat->mg_record[2] = 60 * REFRESH_RATE; + game_stat->mg_record[3] = 120 * REFRESH_RATE; game_stat->mg_record[4] = 0; - game_stat->mg_record[5] = 3600; - game_stat->mg_record[6] = 18000; - game_stat->mg_record[7] = 18000; - game_stat->mg_record[8] = 18000; + game_stat->mg_record[5] = 60 * REFRESH_RATE; + game_stat->mg_record[6] = 300 * REFRESH_RATE; + game_stat->mg_record[7] = 300 * REFRESH_RATE; + game_stat->mg_record[8] = 300 * REFRESH_RATE; game_stat->mg_record[9] = 0; - game_stat->mg_record[10] = 300; + game_stat->mg_record[10] = 5 * REFRESH_RATE; game_stat->mg_record[11] = 0; game_stat->mg_record[12] = 0; game_stat->mg_record[13] = 0; @@ -76,9 +88,9 @@ static inline void ResetBoardRecord(GameStat *game_stat) { s32 i; s32 j; - - for(i=0; i<9; i++) { - for(j=0; j<8; j++) { + + for (i = 0; i < 9; i++) { + for (j = 0; j < 8; j++) { game_stat->board_win_count[i][j] = 0; } game_stat->board_play_count[i] = 0; @@ -90,10 +102,10 @@ static inline void ResetBoardRecord(GameStat *game_stat) static inline void ResetPresent(GameStat *game_stat) { s32 i; - for(i=0; i<60; i++) { + for (i = 0; i < 60; i++) { game_stat->present[i] = 0; } - (void)i; //HACK to match GWResetGameStat + (void)i; // HACK to match GWResetGameStat } static inline void ResetFlag(GameStat *game_stat) @@ -120,7 +132,13 @@ void GWGameStatReset(void) GameStat *game_stat = &GWGameStatDefault; memset(game_stat, 0, sizeof(GameStat)); game_stat->unk_00 = 0; +#if VERSION_JAP + game_stat->language = 0; +#elif VERSION_NTSC game_stat->language = 1; +#else + game_stat->language = GwLanguage; +#endif game_stat->sound_mode = 1; game_stat->rumble = 1; game_stat->total_stars = 0; @@ -133,23 +151,30 @@ void GWGameStatReset(void) ResetBoardRecord(game_stat); ResetPresent(game_stat); ResetFlag(game_stat); - ResetPauseConfig(game_stat); + ResetPauseConfig(game_stat); memcpy(&GWGameStat, &GWGameStatDefault, sizeof(GameStat)); ResetBoardSettings(); } s32 GWMessDelayGet(void) { - if(GWSystem.mess_delay > 48) { +#if VERSION_NTSC + if (GWSystem.mess_delay > 48) { GWSystem.mess_speed = 1; GWSystem.mess_delay = 32; } +#else + if (GWSystem.mess_delay > 64) { + GWSystem.mess_speed = 1; + GWSystem.mess_delay = 48; + } +#endif return GWSystem.mess_delay; } void GWMGRecordSet(s32 index, u32 value) { - if(!_CheckFlag(FLAG_ID_MAKE(1, 12))) { + if (!_CheckFlag(FLAG_ID_MAKE(1, 12))) { GWGameStat.mg_record[index] = value; } } @@ -161,22 +186,14 @@ u32 GWMGRecordGet(s32 index) void GWCharColorGet(s32 character, GXColor *color) { - GXColor char_color[] = { - { 227, 67, 67, 255 }, - { 68, 67, 227, 255 }, - { 241, 158, 220, 255 }, - { 67, 228, 68, 255 }, - { 138, 60, 180, 255 }, - { 146, 85, 55, 255 }, - { 227, 228, 68, 255 }, - { 40, 40, 40, 255 } - }; + GXColor char_color[] = { { 227, 67, 67, 255 }, { 68, 67, 227, 255 }, { 241, 158, 220, 255 }, { 67, 228, 68, 255 }, { 138, 60, 180, 255 }, + { 146, 85, 55, 255 }, { 227, 228, 68, 255 }, { 40, 40, 40, 255 } }; *color = char_color[character]; } void GWBoardPlayCountSet(s32 board, u8 value) { - if(value > 99) { + if (value > 99) { value = 99; } GWGameStat.board_play_count[board] = value; @@ -185,13 +202,12 @@ void GWBoardPlayCountSet(s32 board, u8 value) void GWBoardPlayCountAdd(s32 board, u8 value) { value += GWGameStat.board_play_count[board]; - if(value > 99) { + if (value > 99) { value = 99; } GWGameStat.board_play_count[board] = value; } - u8 GWBoardPlayCountGet(s32 board) { return GWGameStat.board_play_count[board]; @@ -219,8 +235,8 @@ u16 GWBoardMaxCoinsGet(s32 board) s32 GWBoardWinCountInc(s32 character, s32 board) { - s32 win_count = GWGameStat.board_win_count[board][character]+1; - if(win_count > 99) { + s32 win_count = GWGameStat.board_win_count[board][character] + 1; + if (win_count > 99) { win_count = 99; } GWGameStat.board_win_count[board][character] = win_count; @@ -244,9 +260,10 @@ s32 GWMGAvailGet(s32 id) id -= 401; word = id >> 5; bit = id % 32; - if(GWGameStat.mg_avail[word] & (1 << bit)) { + if (GWGameStat.mg_avail[word] & (1 << bit)) { return 1; - } else { + } + else { return 0; } } @@ -268,9 +285,10 @@ s32 GWMGCustomGet(s32 id) id -= 401; word = id >> 5; bit = id % 32; - if(GWGameStat.mg_custom[word] & (1 << bit)) { + if (GWGameStat.mg_custom[word] & (1 << bit)) { return 1; - } else { + } + else { return 0; } } @@ -302,14 +320,14 @@ s16 GWCoinsGet(s32 player) void GWCoinsSet(s32 player, s16 value) { - if(!_CheckFlag(FLAG_ID_MAKE(1, 12))) { - if(value < 0) { + if (!_CheckFlag(FLAG_ID_MAKE(1, 12))) { + if (value < 0) { value = 0; } - if(value > 999) { + if (value > 999) { value = 999; } - if(value > GWPlayer[player].coins_max) { + if (value > GWPlayer[player].coins_max) { GWPlayer[player].coins_max = value; } GWPlayer[player].coins = value; @@ -318,18 +336,18 @@ void GWCoinsSet(s32 player, s16 value) void GWCoinsAdd(s32 player, s16 amount) { - GWCoinsSet(player, GWPlayer[player].coins+amount); + GWCoinsSet(player, GWPlayer[player].coins + amount); } void GWStarsSet(s32 player, s16 value) { - if(value < 0) { + if (value < 0) { value = 0; } - if(value > 999) { + if (value > 999) { value = 999; } - if(value > GWPlayer[player].stars_max) { + if (value > GWPlayer[player].stars_max) { GWPlayer[player].stars_max = value; } GWPlayer[player].stars = value; @@ -337,7 +355,7 @@ void GWStarsSet(s32 player, s16 value) void GWStarsAdd(s32 player, s16 amount) { - GWStarsSet(player, GWPlayer[player].stars+amount); + GWStarsSet(player, GWPlayer[player].stars + amount); } s32 GWStarsGet(s32 player) @@ -347,10 +365,10 @@ s32 GWStarsGet(s32 player) void GWTotalStarsSet(s16 value) { - if(value < 0) { + if (value < 0) { value = 0; } - if(value > 10000) { + if (value > 10000) { value = 10000; } GWGameStat.total_stars = value; @@ -358,7 +376,7 @@ void GWTotalStarsSet(s16 value) void GWTotalStarsAdd(s16 amount) { - GWTotalStarsSet(GWGameStat.total_stars+amount); + GWTotalStarsSet(GWGameStat.total_stars + amount); } u16 GWTotalStarsGet(void) From 76ad3ea249338ec69b5f1f763639a00f61d1993c Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Sat, 16 Nov 2024 20:34:04 -0600 Subject: [PATCH 009/178] Fix w20Dll linking (#468) --- config/GMPP01_00/config.yml | 4 +-- config/GMPP01_00/rels/w20Dll/splits.txt | 17 ++++++++++++ config/GMPP01_00/rels/w20Dll/symbols.txt | 33 ++++++++++++++++++++++++ 3 files changed, 52 insertions(+), 2 deletions(-) create mode 100644 config/GMPP01_00/rels/w20Dll/splits.txt create mode 100644 config/GMPP01_00/rels/w20Dll/symbols.txt diff --git a/config/GMPP01_00/config.yml b/config/GMPP01_00/config.yml index 129c2220..ed67d838 100644 --- a/config/GMPP01_00/config.yml +++ b/config/GMPP01_00/config.yml @@ -477,8 +477,8 @@ modules: links: [] - object: files/dll/w20Dll.rel hash: 58ae9e311cc8bd0291921480f423e2ad4774e1a2 - symbols: config/GMPE01_00/rels/w20Dll/symbols.txt - splits: config/GMPE01_00/rels/w20Dll/splits.txt + symbols: config/GMPP01_00/rels/w20Dll/symbols.txt + splits: config/GMPP01_00/rels/w20Dll/splits.txt links: [] - object: files/dll/w21Dll.rel hash: 8ea052be8c7585a1ab152682a0698b631c5b566f diff --git a/config/GMPP01_00/rels/w20Dll/splits.txt b/config/GMPP01_00/rels/w20Dll/splits.txt new file mode 100644 index 00000000..9df8ed45 --- /dev/null +++ b/config/GMPP01_00/rels/w20Dll/splits.txt @@ -0,0 +1,17 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w20Dll/main.c: + .text start:0x000000E0 end:0x00000678 + .rodata start:0x00000010 end:0x00000030 + .data start:0x00000000 end:0x00000034 + .bss start:0x00000000 end:0x0000000E diff --git a/config/GMPP01_00/rels/w20Dll/symbols.txt b/config/GMPP01_00/rels/w20Dll/symbols.txt new file mode 100644 index 00000000..0e84011e --- /dev/null +++ b/config/GMPP01_00/rels/w20Dll/symbols.txt @@ -0,0 +1,33 @@ +ObjectSetup = .text:0x00000000; // type:function size:0x30 scope:local +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +BoardCreate = .text:0x000000E0; // type:function size:0x2B0 +BoardDestroy = .text:0x00000390; // type:function size:0xBC +fn_1_44C = .text:0x0000044C; // type:function size:0x44 +fn_1_490 = .text:0x00000490; // type:function size:0x4 +fn_1_494 = .text:0x00000494; // type:function size:0x4 +fn_1_498 = .text:0x00000498; // type:function size:0x8 +fn_1_4A0 = .text:0x000004A0; // type:function size:0x4 +fn_1_4A4 = .text:0x000004A4; // type:function size:0x4 +fn_1_4A8 = .text:0x000004A8; // type:function size:0x4 +fn_1_4AC = .text:0x000004AC; // type:function size:0x1CC +_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_20 = .rodata:0x00000020; // type:object size:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_2 = .data:0x00000002; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0x2 data:2byte +lbl_1_data_6 = .data:0x00000006; // type:object size:0x2 data:2byte +lbl_1_data_8 = .data:0x00000008; // type:object size:0x2 data:2byte +lbl_1_data_A = .data:0x0000000A; // type:object size:0x2 data:2byte +lbl_1_data_C = .data:0x0000000C; // type:object size:0x20 data:4byte +unkMotTbl = .data:0x0000002C; // type:object size:0x8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 From 42a72ba07ff784b10e7ed8465eb586f879ba53c8 Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Sat, 16 Nov 2024 21:02:31 -0600 Subject: [PATCH 010/178] More TU Matching in PAL (#469) * Fix w20Dll linking * Match some more TUs in PAL * Fix NTSC Build --- configure.py | 10 +-- include/dolphin/gx/GXFrameBuffer.h | 1 + src/game/audio.c | 7 ++- src/game/card.c | 5 ++ src/game/init.c | 29 ++++++++- src/game/main.c | 9 ++- src/game/saveload.c | 99 ++++++++++++++++++++++++++---- 7 files changed, 138 insertions(+), 22 deletions(-) diff --git a/configure.py b/configure.py index 9a885735..2456a535 100644 --- a/configure.py +++ b/configure.py @@ -373,13 +373,13 @@ config.libs = [ "cflags": cflags_game, "host": False, "objects": [ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/main.c"), + Object(Matching, "game/main.c"), Object(Matching, "game/pad.c"), Object(Matching, "game/dvd.c"), Object(Matching, "game/data.c"), Object(Matching, "game/decode.c"), Object(Matching, "game/font.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/init.c"), + Object(Matching, "game/init.c"), Object(Matching, "game/jmp.c"), Object(Matching, "game/malloc.c"), Object(Matching, "game/memory.c"), @@ -400,7 +400,7 @@ config.libs = [ Object(Matching, "game/objsysobj.c"), Object(Matching, "game/objdll.c"), Object(Matching, "game/frand.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/audio.c"), + Object(Matching, "game/audio.c"), Object(Matching, "game/EnvelopeExec.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/minigame_seq.c"), Object(Matching, "game/ovllist.c"), @@ -411,7 +411,7 @@ config.libs = [ Object(Matching, "game/wipe.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/window.c"), Object(Matching, "game/messdata.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/card.c"), + Object(Matching, "game/card.c"), Object(Matching, "game/armem.c"), Object(Matching, "game/chrman.c"), Object(Matching, "game/mapspace.c"), @@ -420,7 +420,7 @@ config.libs = [ Object(Matching, "game/thpmain.c"), Object(Matching, "game/objsub.c"), Object(Matching, "game/flag.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/saveload.c"), + Object(Matching, "game/saveload.c"), Object(Matching, "game/sreset.c"), Object(Matching, "game/board/main.c"), Object(Matching, "game/board/player.c"), diff --git a/include/dolphin/gx/GXFrameBuffer.h b/include/dolphin/gx/GXFrameBuffer.h index ebd81e78..f5785f8c 100644 --- a/include/dolphin/gx/GXFrameBuffer.h +++ b/include/dolphin/gx/GXFrameBuffer.h @@ -47,6 +47,7 @@ void GXCopyDisp(void* dest, GXBool clear); void GXSetDispCopyGamma(GXGamma gamma); void GXSetDispCopySrc(u16 left, u16 top, u16 wd, u16 ht); void GXSetDispCopyDst(u16 wd, u16 ht); +f32 GXGetYScaleFactor(u16 efbHeight, u16 xfbHeight); u32 GXSetDispCopyYScale(f32 vscale); void GXSetCopyFilter(GXBool aa, u8 sample_pattern[12][2], GXBool vf, u8 vfilter[7]); void GXSetPixelFmt(GXPixelFmt pix_fmt, GXZFmt16 z_fmt); diff --git a/src/game/audio.c b/src/game/audio.c index 808369d4..8b01f192 100644 --- a/src/game/audio.c +++ b/src/game/audio.c @@ -555,10 +555,11 @@ void HuAudAUXVolSet(s8 arg0, s8 arg1) { void HuAudVoiceInit(s16 ovl) { SNDGRPTBL *var_r29; OSTick temp_r23; + s16 var_r27; s16 temp_r26; s16 temp_r25; s16 temp_r30; - s16 var_r27; + void *temp_r3; s16 i; @@ -602,7 +603,11 @@ void HuAudVoiceInit(s16 ovl) { charVoiceGroupStat[temp_r30] = 1; temp_r26 = temp_r30 + 0xA; temp_r3 = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(temp_r26)); + #if VERSION_NTSC msmSysLoadGroupBase(temp_r26, temp_r3); + #else + temp_r25 = msmSysLoadGroupBase(temp_r26, temp_r3); + #endif HuMemDirectFree(temp_r3); } } diff --git a/src/game/card.c b/src/game/card.c index 845bf3b0..97fdd32d 100644 --- a/src/game/card.c +++ b/src/game/card.c @@ -1,6 +1,7 @@ #include "dolphin.h" #include "game/memory.h" #include "game/card.h" +#include "version.h" static void *cardWork; u8 UnMountCnt; @@ -98,7 +99,11 @@ s32 HuCardFormat(s16 slot) static void MountCallBack(s32 chan, s32 result) { + #if VERSION_ENG UnMountCnt = (1 << chan); + #else + UnMountCnt |= (1 << chan); + #endif } s32 HuCardOpen(s16 slot, const char *fileName, CARDFileInfo *fileInfo) diff --git a/src/game/init.c b/src/game/init.c index f3a4f853..61315c66 100644 --- a/src/game/init.c +++ b/src/game/init.c @@ -39,6 +39,8 @@ static void InitVI(); static void SwapBuffers(); static void LoadMemInfo(); +#define ASSERT_LINE(ntsc, pal) ((VERSION_NTSC) ? (ntsc) : (pal)) + void HuSysInit(GXRenderModeObj *mode) { u32 rnd_temp; @@ -46,13 +48,19 @@ void HuSysInit(GXRenderModeObj *mode) DVDInit(); VIInit(); PADInit(); + #if VERSION_NTSC if(OSGetProgressiveMode() == 1 && VIGetDTVStatus() == 1) { mode = &GXNtsc480Prog; } + #else + mode->efbHeight = 480; + #endif InitRenderMode(mode); InitMem(); VIConfigure(RenderMode); + #if VERSION_NTSC VIConfigurePan(0, 0, 640, 480); + #endif DefaultFifo = OSAlloc(0x100000); DefaultFifoObj = GXInit(DefaultFifo, 0x100000); InitGX(); @@ -91,7 +99,7 @@ static void InitRenderMode(GXRenderModeObj *mode) break; default: - OSPanic("init.c", 169, "DEMOInit: invalid TV format\n"); + OSPanic("init.c", ASSERT_LINE(169, 167), "DEMOInit: invalid TV format\n"); break; } GXAdjustForOverscan(RenderMode, &rmodeobj, 0, 16); @@ -104,7 +112,12 @@ static void InitGX() GXSetScissor(0, 0, RenderMode->fbWidth, RenderMode->efbHeight); GXSetDispCopySrc(0, 0, RenderMode->fbWidth, RenderMode->efbHeight); GXSetDispCopyDst(RenderMode->fbWidth, RenderMode->xfbHeight); + #if VERSION_NTSC GXSetDispCopyYScale((float)RenderMode->xfbHeight/(float)RenderMode->efbHeight); + #else + OSReport("%D\n", RenderMode->xfbHeight); + GXSetDispCopyYScale(GXGetYScaleFactor(RenderMode->efbHeight, RenderMode->xfbHeight)); + #endif GXSetCopyFilter(RenderMode->aa, RenderMode->sample_pattern, GX_TRUE, RenderMode->vfilter); if(RenderMode->aa) { GXSetPixelFmt(GX_PF_RGB565_Z16, GX_ZC_LINEAR); @@ -120,9 +133,21 @@ static void InitMem() void *arena_lo = OSGetArenaLo(); void *arena_hi = OSGetArenaHi(); u32 fb_size = (u16)(((u16)RenderMode->fbWidth+15) & ~15)*RenderMode->xfbHeight*2; + u32 *fb1; + u32 *fb2; + u32 i; DemoFrameBuffer1 = (void *)OSRoundUp32B((u32)arena_lo); DemoFrameBuffer2 = (void *)OSRoundUp32B((u32)DemoFrameBuffer1+fb_size); DemoCurrentBuffer = DemoFrameBuffer2; + #if VERSION_PAL + fb1 = DemoFrameBuffer1; + fb2 = DemoFrameBuffer2; + for(i=0; i Date: Sun, 17 Nov 2024 14:20:28 +0100 Subject: [PATCH 011/178] Correct macro in gamework.c --- src/game/gamework.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/game/gamework.c b/src/game/gamework.c index ea372944..dd8e2c70 100644 --- a/src/game/gamework.c +++ b/src/game/gamework.c @@ -57,7 +57,7 @@ void GWInit(void) InitPlayerConfig(); #if VERSION_JAP GWGameStat.language = 0; -#elif VERSION_NTSC +#elif VERSION_ENG GWGameStat.language = 1; #else GWLanguageSet(GwLanguage); @@ -134,7 +134,7 @@ void GWGameStatReset(void) game_stat->unk_00 = 0; #if VERSION_JAP game_stat->language = 0; -#elif VERSION_NTSC +#elif VERSION_ENG game_stat->language = 1; #else game_stat->language = GwLanguage; From 900a533d5968f39bce2f3ce989c654bb5b794142 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 17 Nov 2024 16:22:11 +0100 Subject: [PATCH 012/178] Port m432 and m434 --- config/GMPP01_00/rels/m432Dll/splits.txt | 6 + config/GMPP01_00/rels/m432Dll/symbols.txt | 561 +++++++++++----------- config/GMPP01_00/rels/m434Dll/splits.txt | 27 ++ config/GMPP01_00/rels/m434Dll/symbols.txt | 427 ++++++++-------- configure.py | 8 +- include/REL/m432data.h | 9 +- src/REL/m432Dll/main.c | 51 +- src/REL/m434Dll/fish.c | 35 +- src/REL/m434Dll/main.c | 11 +- src/REL/m434Dll/map.c | 7 +- src/REL/m434Dll/player.c | 35 +- src/REL/m450Dll/main.c | 10 +- 12 files changed, 627 insertions(+), 560 deletions(-) diff --git a/config/GMPP01_00/rels/m432Dll/splits.txt b/config/GMPP01_00/rels/m432Dll/splits.txt index 531cd645..ff3ccc71 100644 --- a/config/GMPP01_00/rels/m432Dll/splits.txt +++ b/config/GMPP01_00/rels/m432Dll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m432Dll/main.c: + .text start:0x00000000 end:0x000160D8 + .rodata start:0x00000000 end:0x00000234 + .data start:0x00000000 end:0x000019F8 + .bss start:0x00000000 end:0x000005DC diff --git a/config/GMPP01_00/rels/m432Dll/symbols.txt b/config/GMPP01_00/rels/m432Dll/symbols.txt index dd9786bc..ea91fc89 100644 --- a/config/GMPP01_00/rels/m432Dll/symbols.txt +++ b/config/GMPP01_00/rels/m432Dll/symbols.txt @@ -7,232 +7,232 @@ fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C fn_1_414 = .text:0x00000414; // type:function size:0x58 fn_1_46C = .text:0x0000046C; // type:function size:0x114 fn_1_580 = .text:0x00000580; // type:function size:0x204 -fn_1_784 = .text:0x00000784; // type:function size:0x240 -fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 -fn_1_A18 = .text:0x00000A18; // type:function size:0x10C -fn_1_B24 = .text:0x00000B24; // type:function size:0x680 -fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C -fn_1_1300 = .text:0x00001300; // type:function size:0x8C -fn_1_138C = .text:0x0000138C; // type:function size:0x334 -fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 -fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 -fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 -fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 -fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 -fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 -fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C -fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 -fn_1_2364 = .text:0x00002364; // type:function size:0x64 -fn_1_23C8 = .text:0x000023C8; // type:function size:0xE0 -fn_1_24A8 = .text:0x000024A8; // type:function size:0x32C -fn_1_27D4 = .text:0x000027D4; // type:function size:0x3AC -fn_1_2B80 = .text:0x00002B80; // type:function size:0x30 -fn_1_2BB0 = .text:0x00002BB0; // type:function size:0x1C -fn_1_2BCC = .text:0x00002BCC; // type:function size:0x18C -fn_1_2D58 = .text:0x00002D58; // type:function size:0x8 -fn_1_2D60 = .text:0x00002D60; // type:function size:0x8 -fn_1_2D68 = .text:0x00002D68; // type:function size:0x8 -fn_1_2D70 = .text:0x00002D70; // type:function size:0x8 -fn_1_2D78 = .text:0x00002D78; // type:function size:0xC -fn_1_2D84 = .text:0x00002D84; // type:function size:0x60 -fn_1_2DE4 = .text:0x00002DE4; // type:function size:0xB90 -fn_1_3974 = .text:0x00003974; // type:function size:0x31C -fn_1_3C90 = .text:0x00003C90; // type:function size:0xD8 -fn_1_3D68 = .text:0x00003D68; // type:function size:0x114 -fn_1_3E7C = .text:0x00003E7C; // type:function size:0xB8 -fn_1_3F34 = .text:0x00003F34; // type:function size:0xA0 -fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x9C -fn_1_4070 = .text:0x00004070; // type:function size:0xE18 -fn_1_4E88 = .text:0x00004E88; // type:function size:0x250 -fn_1_50D8 = .text:0x000050D8; // type:function size:0x10 -fn_1_50E8 = .text:0x000050E8; // type:function size:0x10 -fn_1_50F8 = .text:0x000050F8; // type:function size:0x60 -fn_1_5158 = .text:0x00005158; // type:function size:0x60 -fn_1_51B8 = .text:0x000051B8; // type:function size:0xB0 -fn_1_5268 = .text:0x00005268; // type:function size:0xAC -fn_1_5314 = .text:0x00005314; // type:function size:0x408 -fn_1_571C = .text:0x0000571C; // type:function size:0xDC -fn_1_57F8 = .text:0x000057F8; // type:function size:0x364 -fn_1_5B5C = .text:0x00005B5C; // type:function size:0x380 -fn_1_5EDC = .text:0x00005EDC; // type:function size:0x310 -fn_1_61EC = .text:0x000061EC; // type:function size:0xAF8 -fn_1_6CE4 = .text:0x00006CE4; // type:function size:0x1F4 -fn_1_6ED8 = .text:0x00006ED8; // type:function size:0xCF4 -fn_1_7BCC = .text:0x00007BCC; // type:function size:0x924 -fn_1_84F0 = .text:0x000084F0; // type:function size:0x6C -fn_1_855C = .text:0x0000855C; // type:function size:0x70 -fn_1_85CC = .text:0x000085CC; // type:function size:0x1F8 -fn_1_87C4 = .text:0x000087C4; // type:function size:0x200 -fn_1_89C4 = .text:0x000089C4; // type:function size:0x2A0 -fn_1_8C64 = .text:0x00008C64; // type:function size:0x288 -fn_1_8EEC = .text:0x00008EEC; // type:function size:0x130 -fn_1_901C = .text:0x0000901C; // type:function size:0x350 -fn_1_936C = .text:0x0000936C; // type:function size:0x15B8 -fn_1_A924 = .text:0x0000A924; // type:function size:0x8C -fn_1_A9B0 = .text:0x0000A9B0; // type:function size:0x1C -fn_1_A9CC = .text:0x0000A9CC; // type:function size:0x2AC -fn_1_AC78 = .text:0x0000AC78; // type:function size:0x260 -fn_1_AED8 = .text:0x0000AED8; // type:function size:0x26C +fn_1_798 = .text:0x00000784; // type:function size:0x240 +fn_1_9EC = .text:0x000009C4; // type:function size:0x54 +fn_1_A40 = .text:0x00000A18; // type:function size:0x10C +fn_1_B4C = .text:0x00000B24; // type:function size:0x680 +fn_1_11F4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1350 = .text:0x00001300; // type:function size:0x8C +fn_1_13DC = .text:0x0000138C; // type:function size:0x334 +fn_1_1710 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1F24 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F08; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_23B4 = .text:0x00002364; // type:function size:0x64 +fn_1_2418 = .text:0x000023C8; // type:function size:0xE0 +fn_1_24F8 = .text:0x000024A8; // type:function size:0x32C +fn_1_2824 = .text:0x000027D4; // type:function size:0x3AC +fn_1_2BD0 = .text:0x00002B80; // type:function size:0x30 +fn_1_2C00 = .text:0x00002BB0; // type:function size:0x1C +fn_1_2C1C = .text:0x00002BCC; // type:function size:0x18C +fn_1_2DA8 = .text:0x00002D58; // type:function size:0x8 +fn_1_2DB0 = .text:0x00002D60; // type:function size:0x8 +fn_1_2DB8 = .text:0x00002D68; // type:function size:0x8 +fn_1_2DC0 = .text:0x00002D70; // type:function size:0x8 +fn_1_2DC8 = .text:0x00002D78; // type:function size:0xC +fn_1_2DD4 = .text:0x00002D84; // type:function size:0x60 +fn_1_2E34 = .text:0x00002DE4; // type:function size:0xB90 +fn_1_39C4 = .text:0x00003974; // type:function size:0x31C +fn_1_3CE0 = .text:0x00003C90; // type:function size:0xD8 +fn_1_3DB8 = .text:0x00003D68; // type:function size:0x114 +fn_1_3ECC = .text:0x00003E7C; // type:function size:0xB8 +fn_1_3F84 = .text:0x00003F34; // type:function size:0xA0 +fn_1_4024 = .text:0x00003FD4; // type:function size:0x9C +fn_1_40C0 = .text:0x00004070; // type:function size:0xE18 +fn_1_4ED8 = .text:0x00004E88; // type:function size:0x250 +fn_1_5128 = .text:0x000050D8; // type:function size:0x10 +fn_1_5138 = .text:0x000050E8; // type:function size:0x10 +fn_1_5148 = .text:0x000050F8; // type:function size:0x60 +fn_1_51A8 = .text:0x00005158; // type:function size:0x60 +fn_1_5208 = .text:0x000051B8; // type:function size:0xB0 +fn_1_52B8 = .text:0x00005268; // type:function size:0xAC +fn_1_5364 = .text:0x00005314; // type:function size:0x408 +fn_1_576C = .text:0x0000571C; // type:function size:0xDC +fn_1_5848 = .text:0x000057F8; // type:function size:0x364 +fn_1_5BAC = .text:0x00005B5C; // type:function size:0x380 +fn_1_5F2C = .text:0x00005EDC; // type:function size:0x310 +fn_1_623C = .text:0x000061EC; // type:function size:0xAF8 +fn_1_6D34 = .text:0x00006CE4; // type:function size:0x1F4 +fn_1_6F28 = .text:0x00006ED8; // type:function size:0xCF4 +fn_1_7C1C = .text:0x00007BCC; // type:function size:0x924 +fn_1_8540 = .text:0x000084F0; // type:function size:0x6C +fn_1_85AC = .text:0x0000855C; // type:function size:0x70 +fn_1_861C = .text:0x000085CC; // type:function size:0x1F8 +fn_1_8814 = .text:0x000087C4; // type:function size:0x200 +fn_1_8A14 = .text:0x000089C4; // type:function size:0x2A0 +fn_1_8CB4 = .text:0x00008C64; // type:function size:0x288 +fn_1_8F3C = .text:0x00008EEC; // type:function size:0x130 +fn_1_906C = .text:0x0000901C; // type:function size:0x350 +fn_1_93BC = .text:0x0000936C; // type:function size:0x15B8 +fn_1_A974 = .text:0x0000A924; // type:function size:0x8C +fn_1_AA00 = .text:0x0000A9B0; // type:function size:0x1C +fn_1_AA1C = .text:0x0000A9CC; // type:function size:0x2AC +fn_1_ACC8 = .text:0x0000AC78; // type:function size:0x260 +fn_1_AF28 = .text:0x0000AED8; // type:function size:0x26C _prolog = .text:0x0000B144; // type:function size:0x54 scope:global _epilog = .text:0x0000B198; // type:function size:0x4C scope:global -fn_1_B1E4 = .text:0x0000B1E4; // type:function size:0x224 -fn_1_B408 = .text:0x0000B408; // type:function size:0xC0 -fn_1_B4C8 = .text:0x0000B4C8; // type:function size:0x2CC -fn_1_B794 = .text:0x0000B794; // type:function size:0x190 -fn_1_B924 = .text:0x0000B924; // type:function size:0x134 -fn_1_BA58 = .text:0x0000BA58; // type:function size:0x460 -fn_1_BEB8 = .text:0x0000BEB8; // type:function size:0x94 -fn_1_BF4C = .text:0x0000BF4C; // type:function size:0x3A0 -fn_1_C2EC = .text:0x0000C2EC; // type:function size:0x3E8 -fn_1_C6D4 = .text:0x0000C6D4; // type:function size:0x9BC -fn_1_D090 = .text:0x0000D090; // type:function size:0x90C -fn_1_D99C = .text:0x0000D99C; // type:function size:0x9C8 -fn_1_E364 = .text:0x0000E364; // type:function size:0x630 -fn_1_E994 = .text:0x0000E994; // type:function size:0x298 -fn_1_EC2C = .text:0x0000EC2C; // type:function size:0x90 -fn_1_ECBC = .text:0x0000ECBC; // type:function size:0x1544 -fn_1_10200 = .text:0x00010200; // type:function size:0xA7C -fn_1_10C7C = .text:0x00010C7C; // type:function size:0x724 -fn_1_113A0 = .text:0x000113A0; // type:function size:0x4 -fn_1_113A4 = .text:0x000113A4; // type:function size:0x140C -fn_1_127B0 = .text:0x000127B0; // type:function size:0x4 -fn_1_127B4 = .text:0x000127B4; // type:function size:0xC4 -fn_1_12878 = .text:0x00012878; // type:function size:0x4D0 -fn_1_12D48 = .text:0x00012D48; // type:function size:0x300 -fn_1_13048 = .text:0x00013048; // type:function size:0x2150 -fn_1_15198 = .text:0x00015198; // type:function size:0x9C -fn_1_15234 = .text:0x00015234; // type:function size:0xDA0 -fn_1_15FD4 = .text:0x00015FD4; // type:function size:0x104 +fn_1_B234 = .text:0x0000B1E4; // type:function size:0x224 +fn_1_B458 = .text:0x0000B408; // type:function size:0xC0 +fn_1_B518 = .text:0x0000B4C8; // type:function size:0x2CC +fn_1_B7E4 = .text:0x0000B794; // type:function size:0x190 +fn_1_B974 = .text:0x0000B924; // type:function size:0x134 +fn_1_BAA8 = .text:0x0000BA58; // type:function size:0x460 +fn_1_BF08 = .text:0x0000BEB8; // type:function size:0x94 +fn_1_BF9C = .text:0x0000BF4C; // type:function size:0x3A0 +fn_1_C33C = .text:0x0000C2EC; // type:function size:0x3E8 +fn_1_C724 = .text:0x0000C6D4; // type:function size:0x9BC +fn_1_D0E0 = .text:0x0000D090; // type:function size:0x90C +fn_1_D9EC = .text:0x0000D99C; // type:function size:0x9C8 +fn_1_E3B4 = .text:0x0000E364; // type:function size:0x630 +fn_1_E9E4 = .text:0x0000E994; // type:function size:0x298 +fn_1_EC7C = .text:0x0000EC2C; // type:function size:0x90 +fn_1_ED0C = .text:0x0000ECBC; // type:function size:0x1544 +fn_1_10250 = .text:0x00010200; // type:function size:0xA7C +fn_1_10CCC = .text:0x00010C7C; // type:function size:0x724 +fn_1_113F0 = .text:0x000113A0; // type:function size:0x4 +fn_1_113F4 = .text:0x000113A4; // type:function size:0x140C +fn_1_12800 = .text:0x000127B0; // type:function size:0x4 +fn_1_12804 = .text:0x000127B4; // type:function size:0xC4 +fn_1_128C8 = .text:0x00012878; // type:function size:0x4D0 +fn_1_12EA8 = .text:0x00012D48; // type:function size:0x300 +fn_1_131A8 = .text:0x00013048; // type:function size:0x2150 +fn_1_15320 = .text:0x00015198; // type:function size:0x9C +ObjectSetup = .text:0x00015234; // type:function size:0xDA0 +fn_1_1615C = .text:0x00015FD4; // type:function size:0x104 _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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // 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:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 -lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x1F scope:local data:string lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x20 data:float lbl_1_data_C8 = .data:0x000000C8; // type:object size:0xC @@ -250,81 +250,81 @@ lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x24 lbl_1_data_318 = .data:0x00000318; // type:object size:0x3C lbl_1_data_354 = .data:0x00000354; // type:object size:0x18 lbl_1_data_36C = .data:0x0000036C; // type:object size:0x18 -lbl_1_data_384 = .data:0x00000384; // type:object size:0xB data:string -lbl_1_data_38F = .data:0x0000038F; // type:object size:0xB data:string -lbl_1_data_39A = .data:0x0000039A; // type:object size:0xB data:string -lbl_1_data_3A5 = .data:0x000003A5; // type:object size:0xB data:string -lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0xB data:string -lbl_1_data_3BB = .data:0x000003BB; // type:object size:0xB data:string -lbl_1_data_3C6 = .data:0x000003C6; // type:object size:0xB data:string -lbl_1_data_3D1 = .data:0x000003D1; // type:object size:0xB data:string +lbl_1_data_384 = .data:0x00000384; // type:object size:0xB scope:local data:string +lbl_1_data_38F = .data:0x0000038F; // type:object size:0xB scope:local data:string +lbl_1_data_39A = .data:0x0000039A; // type:object size:0xB scope:local data:string +lbl_1_data_3A5 = .data:0x000003A5; // type:object size:0xB scope:local data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0xB scope:local data:string +lbl_1_data_3BB = .data:0x000003BB; // type:object size:0xB scope:local data:string +lbl_1_data_3C6 = .data:0x000003C6; // type:object size:0xB scope:local data:string +lbl_1_data_3D1 = .data:0x000003D1; // type:object size:0xB scope:local data:string lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x20 -lbl_1_data_3FC = .data:0x000003FC; // type:object size:0xB data:string -lbl_1_data_407 = .data:0x00000407; // type:object size:0xB data:string -lbl_1_data_412 = .data:0x00000412; // type:object size:0xB data:string -lbl_1_data_41D = .data:0x0000041D; // type:object size:0xB data:string -lbl_1_data_428 = .data:0x00000428; // type:object size:0xB data:string -lbl_1_data_433 = .data:0x00000433; // type:object size:0xD +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0xB scope:local data:string +lbl_1_data_407 = .data:0x00000407; // type:object size:0xB scope:local data:string +lbl_1_data_412 = .data:0x00000412; // type:object size:0xB scope:local data:string +lbl_1_data_41D = .data:0x0000041D; // type:object size:0xB scope:local data:string +lbl_1_data_428 = .data:0x00000428; // type:object size:0xB scope:local data:string +lbl_1_data_433 = .data:0x00000433; // type:object size:0xB scope:local data:string lbl_1_data_440 = .data:0x00000440; // type:object size:0x18 data:4byte -lbl_1_data_458 = .data:0x00000458; // type:object size:0xB data:string -lbl_1_data_463 = .data:0x00000463; // type:object size:0xB data:string -lbl_1_data_46E = .data:0x0000046E; // type:object size:0xB data:string -lbl_1_data_479 = .data:0x00000479; // type:object size:0xB data:string -lbl_1_data_484 = .data:0x00000484; // type:object size:0xB data:string -lbl_1_data_48F = .data:0x0000048F; // type:object size:0xB data:string -lbl_1_data_49A = .data:0x0000049A; // type:object size:0xB data:string -lbl_1_data_4A5 = .data:0x000004A5; // type:object size:0xB data:string -lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0xB data:string -lbl_1_data_4BB = .data:0x000004BB; // type:object size:0xD +lbl_1_data_458 = .data:0x00000458; // type:object size:0xB scope:local data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0xB scope:local data:string +lbl_1_data_46E = .data:0x0000046E; // type:object size:0xB scope:local data:string +lbl_1_data_479 = .data:0x00000479; // type:object size:0xB scope:local data:string +lbl_1_data_484 = .data:0x00000484; // type:object size:0xB scope:local data:string +lbl_1_data_48F = .data:0x0000048F; // type:object size:0xB scope:local data:string +lbl_1_data_49A = .data:0x0000049A; // type:object size:0xB scope:local data:string +lbl_1_data_4A5 = .data:0x000004A5; // type:object size:0xB scope:local data:string +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0xB scope:local data:string +lbl_1_data_4BB = .data:0x000004BB; // type:object size:0xB scope:local data:string lbl_1_data_4C8 = .data:0x000004C8; // type:object size:0x28 data:4byte -lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x14 -lbl_1_data_504 = .data:0x00000504; // type:object size:0x24 +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x14 data:byte +lbl_1_data_504 = .data:0x00000504; // type:object size:0x24 data:byte lbl_1_data_528 = .data:0x00000528; // type:object size:0x8 -lbl_1_data_530 = .data:0x00000530; // type:object size:0xB data:string -lbl_1_data_53B = .data:0x0000053B; // type:object size:0xB data:string -lbl_1_data_546 = .data:0x00000546; // type:object size:0xB data:string -lbl_1_data_551 = .data:0x00000551; // type:object size:0xB data:string -lbl_1_data_55C = .data:0x0000055C; // type:object size:0xB data:string -lbl_1_data_567 = .data:0x00000567; // type:object size:0xB data:string -lbl_1_data_572 = .data:0x00000572; // type:object size:0xB data:string -lbl_1_data_57D = .data:0x0000057D; // type:object size:0xB data:string -lbl_1_data_588 = .data:0x00000588; // type:object size:0xB data:string -lbl_1_data_593 = .data:0x00000593; // type:object size:0xB data:string -lbl_1_data_59E = .data:0x0000059E; // type:object size:0xB data:string -lbl_1_data_5A9 = .data:0x000005A9; // type:object size:0xB data:string -lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0xB data:string -lbl_1_data_5BF = .data:0x000005BF; // type:object size:0xB data:string -lbl_1_data_5CA = .data:0x000005CA; // type:object size:0xB data:string -lbl_1_data_5D5 = .data:0x000005D5; // type:object size:0xB data:string -lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0xC +lbl_1_data_530 = .data:0x00000530; // type:object size:0xB scope:local data:string +lbl_1_data_53B = .data:0x0000053B; // type:object size:0xB scope:local data:string +lbl_1_data_546 = .data:0x00000546; // type:object size:0xB scope:local data:string +lbl_1_data_551 = .data:0x00000551; // type:object size:0xB scope:local data:string +lbl_1_data_55C = .data:0x0000055C; // type:object size:0xB scope:local data:string +lbl_1_data_567 = .data:0x00000567; // type:object size:0xB scope:local data:string +lbl_1_data_572 = .data:0x00000572; // type:object size:0xB scope:local data:string +lbl_1_data_57D = .data:0x0000057D; // type:object size:0xB scope:local data:string +lbl_1_data_588 = .data:0x00000588; // type:object size:0xB scope:local data:string +lbl_1_data_593 = .data:0x00000593; // type:object size:0xB scope:local data:string +lbl_1_data_59E = .data:0x0000059E; // type:object size:0xB scope:local data:string +lbl_1_data_5A9 = .data:0x000005A9; // type:object size:0xB scope:local data:string +lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0xB scope:local data:string +lbl_1_data_5BF = .data:0x000005BF; // type:object size:0xB scope:local data:string +lbl_1_data_5CA = .data:0x000005CA; // type:object size:0xB scope:local data:string +lbl_1_data_5D5 = .data:0x000005D5; // type:object size:0xB scope:local data:string +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0xB scope:local data:string lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x8B8 -lbl_1_data_EA4 = .data:0x00000EA4; // type:object size:0xB data:string -lbl_1_data_EAF = .data:0x00000EAF; // type:object size:0xB data:string -lbl_1_data_EBA = .data:0x00000EBA; // type:object size:0xB data:string -lbl_1_data_EC5 = .data:0x00000EC5; // type:object size:0xB data:string -lbl_1_data_ED0 = .data:0x00000ED0; // type:object size:0xC +lbl_1_data_EA4 = .data:0x00000EA4; // type:object size:0xB scope:local data:string +lbl_1_data_EAF = .data:0x00000EAF; // type:object size:0xB scope:local data:string +lbl_1_data_EBA = .data:0x00000EBA; // type:object size:0xB scope:local data:string +lbl_1_data_EC5 = .data:0x00000EC5; // type:object size:0xB scope:local data:string +lbl_1_data_ED0 = .data:0x00000ED0; // type:object size:0xB scope:local data:string lbl_1_data_EDC = .data:0x00000EDC; // type:object size:0x8B8 lbl_1_data_1794 = .data:0x00001794; // type:object size:0x20 lbl_1_data_17B4 = .data:0x000017B4; // type:object size:0x20 lbl_1_data_17D4 = .data:0x000017D4; // type:object size:0x20 data:float lbl_1_data_17F4 = .data:0x000017F4; // type:object size:0x20 lbl_1_data_1814 = .data:0x00001814; // type:object size:0x50 -lbl_1_data_1864 = .data:0x00001864; // type:object size:0x11 data:string -lbl_1_data_1875 = .data:0x00001875; // type:object size:0x11 data:string -lbl_1_data_1886 = .data:0x00001886; // type:object size:0x11 data:string -lbl_1_data_1897 = .data:0x00001897; // type:object size:0x18 data:string -lbl_1_data_18AF = .data:0x000018AF; // type:object size:0xB data:string -lbl_1_data_18BA = .data:0x000018BA; // type:object size:0x18 data:string -lbl_1_data_18D2 = .data:0x000018D2; // type:object size:0xC data:string -lbl_1_data_18DE = .data:0x000018DE; // type:object size:0x6 data:string -lbl_1_data_18E4 = .data:0x000018E4; // type:object size:0x21 data:string -lbl_1_data_1905 = .data:0x00001905; // type:object size:0x1F +lbl_1_data_1864 = .data:0x00001864; // type:object size:0x11 scope:local data:string +lbl_1_data_1875 = .data:0x00001875; // type:object size:0x11 scope:local data:string +lbl_1_data_1886 = .data:0x00001886; // type:object size:0x11 scope:local data:string +lbl_1_data_1897 = .data:0x00001897; // type:object size:0x18 scope:local data:string +lbl_1_data_18AF = .data:0x000018AF; // type:object size:0xB scope:local data:string +lbl_1_data_18BA = .data:0x000018BA; // type:object size:0x18 scope:local data:string +lbl_1_data_18D2 = .data:0x000018D2; // type:object size:0xC scope:local data:string +lbl_1_data_18DE = .data:0x000018DE; // type:object size:0x6 scope:local data:string +lbl_1_data_18E4 = .data:0x000018E4; // type:object size:0x21 scope:local data:string +lbl_1_data_1905 = .data:0x00001905; // type:object size:0x1D scope:local data:string jumptable_1_data_1924 = .data:0x00001924; // type:object size:0x1C scope:local jumptable_1_data_1940 = .data:0x00001940; // type:object size:0x44 scope:local -lbl_1_data_1984 = .data:0x00001984; // type:object size:0xB data:string -lbl_1_data_198F = .data:0x0000198F; // type:object size:0x1D +lbl_1_data_1984 = .data:0x00001984; // type:object size:0xB scope:local data:string +lbl_1_data_198F = .data:0x0000198F; // type:object size:0x1B scope:local data:string jumptable_1_data_19AC = .data:0x000019AC; // type:object size:0x28 scope:local -lbl_1_data_19D4 = .data:0x000019D4; // type:object size:0x24 data:string +lbl_1_data_19D4 = .data:0x000019D4; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x3F0 data:float lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x4 data:float lbl_1_bss_3F4 = .bss:0x000003F4; // type:object size:0x4 data:4byte @@ -333,7 +333,8 @@ lbl_1_bss_3FC = .bss:0x000003FC; // type:object size:0x4 data:4byte lbl_1_bss_400 = .bss:0x00000400; // type:object size:0x2 data:2byte lbl_1_bss_402 = .bss:0x00000402; // type:object size:0x2 data:2byte lbl_1_bss_404 = .bss:0x00000404; // type:object size:0x2 data:2byte -lbl_1_bss_408 = .bss:0x00000408; // type:object size:0x8 data:4byte +lbl_1_bss_408 = .bss:0x00000408; // type:object size:0x4 data:4byte +lbl_1_bss_40C = .bss:0x0000040C; // type:object size:0x4 data:4byte lbl_1_bss_410 = .bss:0x00000410; // type:object size:0x4 data:4byte lbl_1_bss_414 = .bss:0x00000414; // type:object size:0x4 data:4byte lbl_1_bss_418 = .bss:0x00000418; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m434Dll/splits.txt b/config/GMPP01_00/rels/m434Dll/splits.txt index 531cd645..f4ed5551 100644 --- a/config/GMPP01_00/rels/m434Dll/splits.txt +++ b/config/GMPP01_00/rels/m434Dll/splits.txt @@ -5,3 +5,30 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m434Dll/main.c: + .text start:0x000000A0 end:0x00001DB0 + .rodata start:0x00000000 end:0x000000B8 + .data start:0x00000000 end:0x00000100 + .bss start:0x00000000 end:0x000003D8 + +REL/m434Dll/map.c: + .text start:0x00001DB0 end:0x00004854 + .rodata start:0x000000B8 end:0x000001A8 + .data start:0x00000100 end:0x00000180 + .bss start:0x000003D8 end:0x00005870 + +REL/m434Dll/player.c: + .text start:0x00004854 end:0x00006860 + .rodata start:0x000001A8 end:0x000002C8 + .data start:0x00000180 end:0x000002C0 + .bss start:0x00005870 end:0x00005880 + +REL/m434Dll/fish.c: + .text start:0x00006860 end:0x0000918C + .rodata start:0x000002C8 end:0x000004C8 + .data start:0x000002C0 end:0x000002C8 + .bss start:0x00005880 end:0x00007884 diff --git a/config/GMPP01_00/rels/m434Dll/symbols.txt b/config/GMPP01_00/rels/m434Dll/symbols.txt index 08f8f83e..185c6a51 100644 --- a/config/GMPP01_00/rels/m434Dll/symbols.txt +++ b/config/GMPP01_00/rels/m434Dll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x45C +ObjectSetup = .text:0x000000A0; // type:function size:0x45C fn_1_4FC = .text:0x000004FC; // type:function size:0x5C fn_1_558 = .text:0x00000558; // type:function size:0x70C fn_1_C64 = .text:0x00000C64; // type:function size:0x64 @@ -82,219 +82,227 @@ fn_1_8F3C = .text:0x00008F3C; // type:function size:0x64 fn_1_8FA0 = .text:0x00008FA0; // type:function size:0x1EC _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // 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:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -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:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:4byte -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x10 data:4byte -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0xC data:4byte -lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC data:4byte -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -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_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 scope:local data:double +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // 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:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 scope:local data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +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:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:double +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_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:4byte -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x48 -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x48 -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:4byte -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x48 -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x48 +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 scope:local data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 scope:local data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x48 scope:local +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x48 scope:local +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x48 scope:local +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x48 scope:local lbl_1_data_0 = .data:0x00000000; // type:object size:0xC data:float -lbl_1_data_C = .data:0x0000000C; // type:object size:0x18 data:float -lbl_1_data_24 = .data:0x00000024; // type:object size:0x28 -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 +lbl_1_data_C = .data:0x0000000C; // type:object size:0xC data:float +lbl_1_data_18 = .data:0x00000018; // type:object size:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x23 scope:local data:string lbl_1_data_70 = .data:0x00000070; // type:object size:0x4 data:4byte -lbl_1_data_74 = .data:0x00000074; // type:object size:0x12 data:string -lbl_1_data_86 = .data:0x00000086; // type:object size:0x1E +lbl_1_data_74 = .data:0x00000074; // type:object size:0x12 scope:local data:string +lbl_1_data_86 = .data:0x00000086; // type:object size:0x1C scope:local data:string lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xC -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x30 -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x10 -lbl_1_data_100 = .data:0x00000100; // type:object size:0x34 -lbl_1_data_134 = .data:0x00000134; // type:object size:0x5 data:string -lbl_1_data_139 = .data:0x00000139; // type:object size:0x7 data:byte +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x30 data:float +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x10 data:float +lbl_1_data_100 = .data:0x00000100; // type:object size:0x32 +lbl_1_data_132 = .data:0x00000132; // type:object size:0x2 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x5 scope:local data:string +lbl_1_data_139 = .data:0x00000139; // type:object size:0x4 data:byte lbl_1_data_140 = .data:0x00000140; // type:object size:0x18 -lbl_1_data_158 = .data:0x00000158; // type:object size:0x1C -lbl_1_data_174 = .data:0x00000174; // type:object size:0x1 data:byte -lbl_1_data_178 = .data:0x00000178; // type:object size:0x8 data:byte -lbl_1_data_180 = .data:0x00000180; // type:object size:0x10 +lbl_1_data_158 = .data:0x00000158; // type:object size:0x18 +lbl_1_data_170 = .data:0x00000170; // type:object size:0x4 +lbl_1_data_174 = .data:0x00000174; // type:object size:0x4 data:byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x4 data:byte +lbl_1_data_17C = .data:0x0000017C; // type:object size:0x4 data:byte +lbl_1_data_180 = .data:0x00000180; // type:object size:0x10 scope:local lbl_1_data_190 = .data:0x00000190; // type:object size:0x20 -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2C +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0xB scope:local data:string +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x20 lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x18 lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x28 lbl_1_data_224 = .data:0x00000224; // type:object size:0x90 lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 data:string lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 data:string -lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x6 +lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x3 data:string lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x8 lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte @@ -306,26 +314,31 @@ lbl_1_bss_39C = .bss:0x0000039C; // type:object size:0x4 data:4byte lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x8 lbl_1_bss_3A8 = .bss:0x000003A8; // type:object size:0x2 data:2byte lbl_1_bss_3AA = .bss:0x000003AA; // type:object size:0x2 data:2byte -lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x2 data:2byte -lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x8 data:2byte +lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x4 data:2byte +lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x2 data:2byte +lbl_1_bss_3B2 = .bss:0x000003B2; // type:object size:0x6 data:2byte lbl_1_bss_3B8 = .bss:0x000003B8; // type:object size:0x4 data:4byte lbl_1_bss_3BC = .bss:0x000003BC; // type:object size:0x4 data:4byte lbl_1_bss_3C0 = .bss:0x000003C0; // type:object size:0x2 data:2byte lbl_1_bss_3C2 = .bss:0x000003C2; // type:object size:0x2 data:2byte -lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x8 data:4byte +lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x4 data:4byte +lbl_1_bss_3C8 = .bss:0x000003C8; // type:object size:0x4 data:4byte lbl_1_bss_3CC = .bss:0x000003CC; // type:object size:0x4 data:4byte lbl_1_bss_3D0 = .bss:0x000003D0; // type:object size:0x4 data:4byte -lbl_1_bss_3D4 = .bss:0x000003D4; // type:object size:0x1C data:4byte +lbl_1_bss_3D4 = .bss:0x000003D4; // type:object size:0x4 data:4byte +lbl_1_bss_3D8 = .bss:0x000003D8; // type:object size:0x18 data:4byte lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x50 data:4byte -lbl_1_bss_440 = .bss:0x00000440; // type:object size:0x10 data:4byte +lbl_1_bss_440 = .bss:0x00000440; // type:object size:0x8 data:4byte +lbl_1_bss_448 = .bss:0x00000448; // type:object size:0x8 data:4byte lbl_1_bss_450 = .bss:0x00000450; // type:object size:0x8 data:4byte lbl_1_bss_458 = .bss:0x00000458; // type:object size:0x4 data:4byte -lbl_1_bss_45C = .bss:0x0000045C; // type:object size:0x8 data:4byte +lbl_1_bss_45C = .bss:0x0000045C; // type:object size:0x4 data:4byte +lbl_1_bss_460 = .bss:0x00000460; // type:object size:0x4 data:4byte lbl_1_bss_464 = .bss:0x00000464; // type:object size:0x2000 data:float lbl_1_bss_2464 = .bss:0x00002464; // type:object size:0x4 data:4byte lbl_1_bss_2468 = .bss:0x00002468; // type:object size:0x400 data:2byte lbl_1_bss_2868 = .bss:0x00002868; // type:object size:0x3000 data:float -lbl_1_bss_5868 = .bss:0x00005868; // type:object size:0x8 data:4byte +lbl_1_bss_5868 = .bss:0x00005868; // type:object size:0x4 data:4byte lbl_1_bss_5870 = .bss:0x00005870; // type:object size:0x10 lbl_1_bss_5880 = .bss:0x00005880; // type:object size:0x800 lbl_1_bss_6080 = .bss:0x00006080; // type:object size:0x400 diff --git a/configure.py b/configure.py index 2456a535..9e58532b 100644 --- a/configure.py +++ b/configure.py @@ -1084,7 +1084,7 @@ config.libs = [ Rel( "m432Dll", # Dungeon Duos objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m432Dll/main.c"), + Object(Matching, "REL/m432Dll/main.c"), }, ), Rel( @@ -1098,10 +1098,10 @@ config.libs = [ Rel( "m434Dll", # Cheep Cheep Sweep objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/map.c"), + Object(Matching, "REL/m434Dll/main.c"), + Object(Matching, "REL/m434Dll/map.c"), Object(NonMatching, "REL/m434Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/fish.c"), + Object(Matching, "REL/m434Dll/fish.c"), }, ), Rel( diff --git a/include/REL/m432data.h b/include/REL/m432data.h index 1152d0c7..a9b72135 100644 --- a/include/REL/m432data.h +++ b/include/REL/m432data.h @@ -4,6 +4,7 @@ #include "datadir_enum.h" #include "dolphin.h" #include "game/hsfanim.h" +#include "version.h" typedef struct UnkM432DllBss0SubStruct { char *unk_00; @@ -1202,10 +1203,10 @@ UnkM432DllBss0SubStruct lbl_1_data_EDC[0x1F] = { }, }; -UnkM432DllData1794Struct lbl_1_data_1794 = { 6300.0f, 0.7f, 10.0f, 0.4f, 1.0f, 0, 2, 6 }; -UnkM432DllData1794Struct lbl_1_data_17B4 = { 5700.0f, 0.8f, 8.0f, 0.6f, 1.0f, 0, 4, 5 }; -UnkM432DllData1794Struct lbl_1_data_17D4 = { 5100.0f, 0.9f, 6.0f, 0.8f, 1.0f, 0, 6, 4 }; -UnkM432DllData1794Struct lbl_1_data_17F4 = { 4500.0f, 1.0f, 4.0f, 1.0f, 1.0f, 0, 8, 3 }; +UnkM432DllData1794Struct lbl_1_data_1794 = { 105.0f * REFRESH_RATE, 0.7f, 10.0f, 0.4f, 1.0f, 0, 2, 6 }; +UnkM432DllData1794Struct lbl_1_data_17B4 = { 95.0f * REFRESH_RATE, 0.8f, 8.0f, 0.6f, 1.0f, 0, 4, 5 }; +UnkM432DllData1794Struct lbl_1_data_17D4 = { 85.0f * REFRESH_RATE, 0.9f, 6.0f, 0.8f, 1.0f, 0, 6, 4 }; +UnkM432DllData1794Struct lbl_1_data_17F4 = { 75.0f * REFRESH_RATE, 1.0f, 4.0f, 1.0f, 1.0f, 0, 8, 3 }; HsfanimStruct00 lbl_1_data_1814 = { 0x1E, { 0, 0 }, diff --git a/src/REL/m432Dll/main.c b/src/REL/m432Dll/main.c index fd8e16f1..038512c9 100644 --- a/src/REL/m432Dll/main.c +++ b/src/REL/m432Dll/main.c @@ -26,6 +26,7 @@ #include "ext_math.h" #include "string.h" +#include "version.h" #ifndef __MWERKS__ #include "game/audio.h" @@ -76,6 +77,12 @@ float lbl_1_bss_568; s32 lbl_1_bss_528[16]; UnkBss428Struct lbl_1_bss_428[32]; +#if VERSION_NTSC +#define _1606_BY_REFRESH_RATE 26.766666f +#else +#define _1606_BY_REFRESH_RATE 32.120003f +#endif + void fn_1_0(void) { lbl_1_bss_5D0.unk04 = NULL; @@ -738,7 +745,7 @@ void fn_1_2E34(WorkPlayerOld *player) player->unk_3C |= 0x100; player->unk_A4 = 0; if (!(player2->unk_3C & 0x100)) { - player->unk_84.y = 26.766666f; + player->unk_84.y = _1606_BY_REFRESH_RATE; } } if (state == 3) { @@ -842,7 +849,7 @@ void fn_1_3CE0(WorkPlayerOld *player, s32 *state, u32 *motAttr) } if (player->unk_14[3] >= 0 && (player->unk_28 & 0x100)) { - fn_1_2BD0(player, 26.766666f, 1); + fn_1_2BD0(player, _1606_BY_REFRESH_RATE, 1); *motAttr = HU3D_MOTATTR_NONE; *state = 3; } @@ -857,14 +864,14 @@ void fn_1_3DB8(WorkPlayerOld *player, s32 *state, u32 *motAttr) player->unk_A4 = 0; } else { - player->unk_84.y += 3.65f; + player->unk_84.y += 219.0f / REFRESH_RATE; } } else { player->unk_A4 = 0; } } - player->unk_84.y += -2.4333334f; + player->unk_84.y += -146.0f / REFRESH_RATE; if (player->unk_14[5] >= 0 && (player->unk_28 & 0x140)) { player->unk_38 = 3; player->unk_84.y = 0; @@ -1317,7 +1324,7 @@ void fn_1_52B8(UnkM432DllBss0SubStruct *arg0, Vec *arg1) void fn_1_5364(s32 arg0, omObjData *object) { if (lbl_1_bss_0[arg0].unk_1D8 >= 0) { - lbl_1_bss_0[arg0].unk_1DC -= 0.016666668f; + lbl_1_bss_0[arg0].unk_1DC -= 1.0f / REFRESH_RATE; if (0.0f >= lbl_1_bss_0[arg0].unk_1DC) { HuAudFXStop(lbl_1_bss_0[arg0].unk_1D8); lbl_1_bss_0[arg0].unk_1D8 = -1; @@ -2241,7 +2248,7 @@ void fn_1_B234(void) u32 var_r28; if (HuPadBtn[0] & 2) { - lbl_1_bss_57C = 0x4650; + lbl_1_bss_57C = 300 * REFRESH_RATE; } print8(0x18, 0x20, 1.5f, "COUNT:%d MODE:%d MES:%d", lbl_1_bss_580, lbl_1_bss_41C->work[0], lbl_1_bss_576); print8(0x18, 0x30, 1.5f, "%f %f %f %f", lbl_1_bss_0[0].unk_64, lbl_1_bss_0[0].unk_68, lbl_1_bss_0[0].unk_6C, lbl_1_bss_0[0].unk_28.z); @@ -2487,7 +2494,7 @@ void fn_1_C724(UnkM432DllStruct *var_r31, omObjData *var_r25, omObjData *var_r24 var_r30 = &lbl_1_bss_0[var_r31->unk_184 >> 1]; fn_1_BF9C(var_r31); if (fn_1_BF08(var_r31) == 0x7D4) { - var_r30->unk_1D4 += 1.0f - (2.0f * (var_r31->unk_14C / 60.0f)); + var_r30->unk_1D4 += 1.0f - (2.0f * (var_r31->unk_14C / REFRESH_RATE)); if (0.0f > var_r30->unk_1D4) { var_r30->unk_1D4 = 0.0f; } @@ -2502,7 +2509,7 @@ void fn_1_C724(UnkM432DllStruct *var_r31, omObjData *var_r25, omObjData *var_r24 } else { var_r31->unk_14C += 1.0f; - var_r30->unk_1D4 -= 0.016666668f; + var_r30->unk_1D4 -= 1.0f / REFRESH_RATE; if (0.0f > var_r30->unk_1D4) { var_r30->unk_1D4 = 0.0f; } @@ -2538,7 +2545,7 @@ void fn_1_D0E0(UnkM432DllStruct *arg0, omObjData *arg1, omObjData *arg2) { fn_1_BF9C(arg0); if (fn_1_BF08(arg0) == 0x7D5) { - lbl_1_bss_0[arg0->unk_184 >> 1].unk_1DC += 1.0f - (2.0f * (arg0->unk_14C / 60.0f)); + lbl_1_bss_0[arg0->unk_184 >> 1].unk_1DC += 1.0f - (2.0f * (arg0->unk_14C / REFRESH_RATE)); if (0.0f > lbl_1_bss_0[arg0->unk_184 >> 1].unk_1DC) { lbl_1_bss_0[arg0->unk_184 >> 1].unk_1DC = 0.0f; } @@ -2705,7 +2712,7 @@ void fn_1_E9E4(UnkM432DllStruct *arg0) var_f28 = 100.0f; } if ((arg0->unk_C8->unk_2C.y + var_f28) > arg0->unk_00.unk_6C.y) { - arg0->unk_00.unk_84.y = 26.766666f; + arg0->unk_00.unk_84.y = _1606_BY_REFRESH_RATE; arg0->unk_00.unk_A4 = 1.0f; return; } @@ -2938,7 +2945,7 @@ void fn_1_10250(omObjData *object) var_r31->unk_00.unk_2C = 0x100; fn_1_40C0(&var_r31->unk_00); if (200.0f > var_r31->unk_00.unk_6C.y) { - var_r31->unk_00.unk_84.y = 26.766666f; + var_r31->unk_00.unk_84.y = _1606_BY_REFRESH_RATE; var_r31->unk_00.unk_A4 = 1.0f; } else { @@ -3296,6 +3303,7 @@ void fn_1_128C8(omObjData *object) lbl_1_bss_0[var_r31].unk_1F0[1] = 0.0f; } } +#if VERSION_NTSC if (lbl_1_bss_41C->work[0] >= 0x3EC) { for (var_r31 = 0; var_r31 < 2; var_r31++) { if (lbl_1_bss_0[var_r31].unk_1CC >= 0) { @@ -3312,6 +3320,7 @@ void fn_1_128C8(omObjData *object) lbl_1_bss_0[var_r31].unk_1D8 = -1; } } +#endif } } @@ -3416,16 +3425,16 @@ void fn_1_131A8(omObjData *var_r28) case 0x3EB: lbl_1_bss_57C++; if (lbl_1_bss_574 >= 0) { - MGSeqParamSet(lbl_1_bss_574, 1, (0x468B - lbl_1_bss_57C) / 60); + MGSeqParamSet(lbl_1_bss_574, 1, (300 * REFRESH_RATE + REFRESH_RATE - 1 - lbl_1_bss_57C) / REFRESH_RATE); } - else if (lbl_1_bss_57C > 0x3F48) { - lbl_1_bss_574 = MGSeqCreate(1, (0x468B - lbl_1_bss_57C) / 60, -1, -1); + else if (lbl_1_bss_57C > 270 * REFRESH_RATE) { + lbl_1_bss_574 = MGSeqCreate(1, (300 * REFRESH_RATE + REFRESH_RATE - 1 - lbl_1_bss_57C) / REFRESH_RATE, -1, -1); MGSeqPosSet(lbl_1_bss_574, 288.0f, 400.0f); } fn_1_580(lbl_1_bss_528, 0, lbl_1_bss_57C); fn_1_12EA8(); - if ((lbl_1_bss_57C >= 0x4650) || (lbl_1_bss_3FC >= 0)) { + if ((lbl_1_bss_57C >= 300 * REFRESH_RATE) || (lbl_1_bss_3FC >= 0)) { var_r28->work[0] = 0x3EC; lbl_1_bss_3F0 = 0.0f; } @@ -3453,7 +3462,7 @@ void fn_1_131A8(omObjData *var_r28) lbl_1_bss_3F0 += 1.0f; if ((var_r17 >= 4) && (60.0f <= lbl_1_bss_3F0) && (MGSeqStatGet(lbl_1_bss_576) == 0)) { var_r28->work[0] = 0x3EE; - if ((lbl_1_bss_3FC >= 0) && (lbl_1_bss_57C < 0x1518)) { + if ((lbl_1_bss_3FC >= 0) && (lbl_1_bss_57C < (VERSION_NTSC ? 5400 : 5250))) { if (GWPlayerCfg[fn_1_51A8(lbl_1_bss_3FC)->unk_188].iscom != 0) { if (GWPlayerCfg[fn_1_51A8(lbl_1_bss_3FC + 1)->unk_188].iscom == 0) { goto block_81; @@ -3535,17 +3544,17 @@ void fn_1_131A8(omObjData *var_r28) case 0x3F0: var_r29 = &lbl_1_bss_0[lbl_1_bss_3FC >> 1]; lbl_1_bss_3F0 += 1.0f; - var_f31 = lbl_1_bss_3F0 / 180.0f; + var_f31 = lbl_1_bss_3F0 / (3.0f * REFRESH_RATE); var_f30 = sind((90.0f * var_f31)) * sind((90.0f * var_f31)); var_r29->unk_28.y = var_r29->unk_4C.y + (var_f30 * (var_r29->unk_58.y - var_r29->unk_4C.y)); var_r29->unk_1C.y = var_r29->unk_34.y + (var_f30 * (var_r29->unk_40.y - var_r29->unk_34.y)); - if (90.0f < lbl_1_bss_3F0) { - var_f31 = (lbl_1_bss_3F0 - 90.0f) / 90.0f; + if ((1.5f * REFRESH_RATE) < lbl_1_bss_3F0) { + var_f31 = (lbl_1_bss_3F0 - 1.5f * REFRESH_RATE) / (1.5f * REFRESH_RATE); var_f30 = sind((90.0f * var_f31)) * sind((90.0f * var_f31)); var_r29->unk_1C.z = var_r29->unk_34.z + (var_f30 * (var_r29->unk_40.z - var_r29->unk_34.z)); } Hu3DCameraPosSetV(lbl_1_data_A0[lbl_1_bss_3FC >> 1], &var_r29->unk_1C, &lbl_1_data_C8, &var_r29->unk_28); - if (180.0f <= lbl_1_bss_3F0) { + if ((3 * REFRESH_RATE) <= lbl_1_bss_3F0) { var_r28->work[0]++; lbl_1_bss_3F0 = 0.0f; } @@ -3654,7 +3663,7 @@ void ObjectSetup(void) lbl_1_bss_578 = GWMGRecordGet(3); lbl_1_bss_568 = -1.0f; if (lbl_1_bss_578 == 0) { - lbl_1_bss_578 = 0x1C20; + lbl_1_bss_578 = 120 * REFRESH_RATE; } fn_1_414(); for (var_r30 = 0; var_r30 < 2; var_r30++) { diff --git a/src/REL/m434Dll/fish.c b/src/REL/m434Dll/fish.c index 37883dc7..b5940faa 100644 --- a/src/REL/m434Dll/fish.c +++ b/src/REL/m434Dll/fish.c @@ -11,6 +11,7 @@ #include "game/gamework_data.h" #include "game/minigame_seq.h" #include "math.h" +#include "version.h" typedef struct bss_7480_struct { @@ -246,16 +247,16 @@ void fn_1_6DBC(omObjData *object) temp_r31->unk34.y += (75.0f - temp_r31->unk34.y) * 0.02f; } temp_r31->unk34.x += (temp_r31->unk34.y - temp_r31->unk34.x) * 0.2f; - temp_r31->unk1C.x += sind(temp_r31->unk34.z) * ((1.0f / 60.0f) * temp_r31->unk34.x); - temp_r31->unk1C.z += cosd(temp_r31->unk34.z) * ((1.0f / 60.0f) * temp_r31->unk34.x); - temp_r31->unk40.y += (1.0f / 60.0f) * temp_r31->unk34.x; + temp_r31->unk1C.x += sind(temp_r31->unk34.z) * ((1.0f / REFRESH_RATE) * temp_r31->unk34.x); + temp_r31->unk1C.z += cosd(temp_r31->unk34.z) * ((1.0f / REFRESH_RATE) * temp_r31->unk34.x); + temp_r31->unk40.y += (1.0f / REFRESH_RATE) * temp_r31->unk34.x; temp_r31->unk18 = fn_1_8254(temp_r31->unk18, &temp_r31->unk1C); Hu3DModelPosSetV(temp_r31->unk2, &temp_r31->unk1C); Hu3DModelRotSet(temp_r31->unk2, 0, temp_r31->unk34.z, 0); break; case 1: - temp_r31->unk34.z += 3.0000002f; + temp_r31->unk34.z += 1.0f / REFRESH_RATE * 180.0f; Hu3DModelPosSetV(temp_r31->unk2, &temp_r31->unk1C); Hu3DModelRotSet(temp_r31->unk2, 0, temp_r31->unk34.z, 0); if (fn_1_1D54() == 4) { @@ -274,9 +275,9 @@ void fn_1_6DBC(omObjData *object) } VECSubtract(&sp8, &temp_r31->unk1C, &sp8); temp_r31->unk40.x = temp_r31->unk34.z = atan2d(sp8.x, sp8.z); - temp_r31->unk28.x = (1.0f / 60.0f) * sp8.x; - temp_r31->unk28.y = 6.666667f; - temp_r31->unk28.z = (1.0f / 60.0f) * sp8.z; + temp_r31->unk28.x = (1.0f / REFRESH_RATE) * sp8.x; + temp_r31->unk28.y = VERSION_NTSC ? 6.666667f : 8.0f; + temp_r31->unk28.z = (1.0f / REFRESH_RATE) * sp8.z; temp_r31->unk8++; HuAudFXPlay(1734); } @@ -284,7 +285,7 @@ void fn_1_6DBC(omObjData *object) if (temp_r31->unk1C.y <= -15.000001f) { temp_r29 = 1; } - temp_r31->unk28.y += -0.27222225f; + temp_r31->unk28.y += VERSION_NTSC ? -0.27222225f : -0.392f; VECAdd(&temp_r31->unk1C, &temp_r31->unk28, &temp_r31->unk1C); if (!temp_r29 && temp_r31->unk1C.y <= -15.000001f) { fn_1_43AC(&temp_r31->unk1C); @@ -345,9 +346,9 @@ void fn_1_6DBC(omObjData *object) temp_r31->unk34.z = fn_1_6690(temp_r31->unk34.z, temp_r31->unk40.x, 0.07f); temp_r31->unk34.y += (50.0f - temp_r31->unk34.y) * 0.02f; temp_r31->unk34.x += (temp_r31->unk34.y - temp_r31->unk34.x) * 0.2f; - temp_r31->unk1C.x += sind(temp_r31->unk34.z) * ((1.0f / 60.0f) * temp_r31->unk34.x); - temp_r31->unk1C.z += cosd(temp_r31->unk34.z) * ((1.0f / 60.0f) * temp_r31->unk34.x); - temp_r31->unk40.y += (1.0f / 60.0f) * temp_r31->unk34.x; + temp_r31->unk1C.x += sind(temp_r31->unk34.z) * ((1.0f / REFRESH_RATE) * temp_r31->unk34.x); + temp_r31->unk1C.z += cosd(temp_r31->unk34.z) * ((1.0f / REFRESH_RATE) * temp_r31->unk34.x); + temp_r31->unk40.y += (1.0f / REFRESH_RATE) * temp_r31->unk34.x; Hu3DModelPosSetV(temp_r31->unk2, &temp_r31->unk1C); Hu3DModelRotSet(temp_r31->unk2, 0, temp_r31->unk34.z, 0); @@ -363,16 +364,16 @@ void fn_1_6DBC(omObjData *object) } VECSubtract(&sp8, &temp_r31->unk1C, &sp8); temp_r31->unk40.x = temp_r31->unk34.z = atan2d(sp8.x, sp8.z); - temp_r31->unk28.x = (1.0f / 60.0f) * sp8.x; - temp_r31->unk28.y = 6.666667f; - temp_r31->unk28.z = (1.0f / 60.0f) * sp8.z; + temp_r31->unk28.x = (1.0f / REFRESH_RATE) * sp8.x; + temp_r31->unk28.y = VERSION_NTSC ? 6.666667f : 8.0f; + temp_r31->unk28.z = (1.0f / REFRESH_RATE) * sp8.z; temp_r31->unk8++; } temp_r29 = temp_r25 = 0; if (temp_r31->unk1C.y <= -15.000001f) { temp_r29 = 1; } - temp_r31->unk28.y += -0.27222225f; + temp_r31->unk28.y += VERSION_NTSC ? -0.27222225f : -0.392f; VECAdd(&temp_r31->unk1C, &temp_r31->unk28, &temp_r31->unk1C); if (temp_r31->unk1C.y <= -15.000001f) { temp_r25 = 1; @@ -689,8 +690,8 @@ void fn_1_8C14(s32 arg0, Vec *arg1, float arg2) temp_r31 = lbl_1_bss_7480; for (temp_r30 = 0; temp_r30 < 32; temp_r30++, temp_r31++) { if (!temp_r31->unk0) { - temp_r31->unk4 = 30; - temp_r31->unk0 = (60.0f * (3.0f * arg2)) + 150.0f; + temp_r31->unk4 = 0.5 * REFRESH_RATE; + temp_r31->unk0 = (REFRESH_RATE * (3.0f * arg2)) + 2.5f * REFRESH_RATE; temp_r31->unk8 = arg0; temp_r31->unk14 = *arg1; temp_r31->unkC = 0; diff --git a/src/REL/m434Dll/main.c b/src/REL/m434Dll/main.c index 733df325..e13e8578 100644 --- a/src/REL/m434Dll/main.c +++ b/src/REL/m434Dll/main.c @@ -11,6 +11,7 @@ #include "game/gamework_data.h" #include "game/minigame_seq.h" #include "math.h" +#include "version.h" typedef struct camera_view { float zoom; @@ -127,9 +128,9 @@ void fn_1_558(omObjData *object) switch (fn_1_1D54()) { case 0: lbl_1_bss_3C2 = 60; - lbl_1_bss_3C0 = 60; + lbl_1_bss_3C0 = REFRESH_RATE; fn_1_1D64(1); - lbl_1_bss_10[1] = 60; + lbl_1_bss_10[1] = REFRESH_RATE; WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); HuAudFXPlay(1736); break; @@ -160,7 +161,7 @@ void fn_1_558(omObjData *object) if (--lbl_1_bss_3C0 == 0) { lbl_1_bss_3C2--; MGSeqParamSet(lbl_1_bss_3B8, 1, lbl_1_bss_3C2); - lbl_1_bss_3C0 = 60; + lbl_1_bss_3C0 = REFRESH_RATE; } if (!lbl_1_bss_3C2 || lbl_1_bss_3A8 == 1) { fn_1_1D64(3); @@ -178,7 +179,7 @@ void fn_1_558(omObjData *object) } if (MGSeqStatGet(lbl_1_bss_3BC) == 0) { fn_1_1D64(4); - lbl_1_bss_10[1] = 60; + lbl_1_bss_10[1] = REFRESH_RATE; } break; @@ -215,7 +216,7 @@ void fn_1_558(omObjData *object) break; } fn_1_1D64(5); - lbl_1_bss_10[1] = 210; + lbl_1_bss_10[1] = 3.5 * REFRESH_RATE; } break; diff --git a/src/REL/m434Dll/map.c b/src/REL/m434Dll/map.c index e690b936..ee77f381 100644 --- a/src/REL/m434Dll/map.c +++ b/src/REL/m434Dll/map.c @@ -14,6 +14,7 @@ #include "game/gamework_data.h" #include "game/minigame_seq.h" #include "math.h" +#include "version.h" typedef struct bss_2468_data { Vec unk0; @@ -531,8 +532,8 @@ void fn_1_3CC8(ModelData *model, Mtx mtx) if (temp_r31->unkC == 0) { continue; } - temp_f31 = (0.2f + cosd((90.0f * temp_r31->unkC) / 60.0f)) * 128.0f; - lbl_1_data_174.a = 255.0f * sind((90.0f * temp_r31->unkC) / 60.0f); + temp_f31 = (0.2f + cosd((90.0f * temp_r31->unkC) / REFRESH_RATE)) * 128.0f; + lbl_1_data_174.a = 255.0f * sind((90.0f * temp_r31->unkC) / REFRESH_RATE); GXSetChanMatColor(GX_COLOR0A0, lbl_1_data_174); MTXScale(sp14, 0.5f * temp_f31, 0.5f * temp_f31, 1.0f); mtxTransCat(sp14, (200.0f * (600.0f + temp_r31->unk0.x)) / 1200.0f, (200.0f * (600.0f + temp_r31->unk0.z)) / 1200.0f, 0); @@ -550,7 +551,7 @@ void fn_1_43AC(Vec *arg0) temp_r31->unk0.x = arg0->x; temp_r31->unk0.y = arg0->y; temp_r31->unk0.z = arg0->z; - temp_r31->unkC = 60; + temp_r31->unkC = REFRESH_RATE; lbl_1_bss_2464 = (lbl_1_bss_2464 + 1) % 64; return; } diff --git a/src/REL/m434Dll/player.c b/src/REL/m434Dll/player.c index 103d7352..c2dd1f93 100644 --- a/src/REL/m434Dll/player.c +++ b/src/REL/m434Dll/player.c @@ -13,6 +13,7 @@ #include "game/gamework_data.h" #include "game/minigame_seq.h" #include "math.h" +#include "version.h" typedef struct data_224_struct { @@ -54,15 +55,15 @@ Vec lbl_1_data_1E4[2] = { { -550, 0, 550 }, { 550, 0, 550 } }; u32 lbl_1_data_1FC[10] = { 0, 2, 23, 133, 0x41000E, 0x410016, 0x41001E, 0x410026, 0x41002E, 0x410036 }; Data224Struct lbl_1_data_224[9] = { - { 0, 4, 12, 0, HU3D_MOTATTR_LOOP }, - { 1, 6, 6, 0, HU3D_MOTATTR_LOOP }, - { 0, 8, 6, 0, HU3D_MOTATTR_NONE }, - { 0, 5, 6, 0, HU3D_MOTATTR_LOOP }, - { 1, 5, 6, 0, HU3D_MOTATTR_LOOP }, - { 0, 8, 6, 30, HU3D_MOTATTR_NONE }, - { 0, 9, 6, 0, HU3D_MOTATTR_NONE }, - { 2, 0, 12, 0, HU3D_MOTATTR_NONE }, - { 3, 0, 12, 0, HU3D_MOTATTR_NONE }, + { 0, 4, 0.2f * REFRESH_RATE, 0, HU3D_MOTATTR_LOOP }, + { 1, 6, 0.1f * REFRESH_RATE, 0, HU3D_MOTATTR_LOOP }, + { 0, 8, 0.1f * REFRESH_RATE, 0, HU3D_MOTATTR_NONE }, + { 0, 5, 0.1f * REFRESH_RATE, 0, HU3D_MOTATTR_LOOP }, + { 1, 5, 0.1f * REFRESH_RATE, 0, HU3D_MOTATTR_LOOP }, + { 0, 8, 0.1f * REFRESH_RATE, 0.5f * REFRESH_RATE, HU3D_MOTATTR_NONE }, + { 0, 9, 0.1f * REFRESH_RATE, 0, HU3D_MOTATTR_NONE }, + { 2, 0, 0.2f * REFRESH_RATE, 0, HU3D_MOTATTR_NONE }, + { 3, 0, 0.2f * REFRESH_RATE, 0, HU3D_MOTATTR_NONE }, }; void fn_1_4988(omObjData *object); @@ -254,8 +255,8 @@ void fn_1_4E50(omObjData *object) if (temp_r31->unk1C > spC[temp_r31->unk24]) { temp_r31->unk24 = 1; temp_r31->unk44 = temp_r31->unk20; - temp_r31->unk94.x += 225.0f * (temp_r31->unk1C * sind(temp_r31->unk20)) * (1.0f / 60.0f); - temp_r31->unk94.z += 225.0f * (temp_r31->unk1C * cosd(temp_r31->unk20)) * (1.0f / 60.0f); + temp_r31->unk94.x += 225.0f * (temp_r31->unk1C * sind(temp_r31->unk20)) * (1.0f / REFRESH_RATE); + temp_r31->unk94.z += 225.0f * (temp_r31->unk1C * cosd(temp_r31->unk20)) * (1.0f / REFRESH_RATE); temp_r31->unk48 = 0.2f; temp_r31->unk4C = 0; if (CharModelMotionShiftIDGet(temp_r31->unk8) < 0) { @@ -296,7 +297,7 @@ void fn_1_4E50(omObjData *object) temp_r31->unk3A = 0; temp_r31->unk3C++; } - else if (temp_r31->unk3C == 1 && temp_r31->unk3A > 30.0f) { + else if (temp_r31->unk3C == 1 && temp_r31->unk3A > (0.5f * REFRESH_RATE)) { if (temp_r31->unk54 < 3) { temp_r28 = fn_1_8884(&temp_r31->unk88, 20, 150, temp_r31->unk40, -30, 30, 1, object->work[0]); if (temp_r28 >= 0) { @@ -352,7 +353,7 @@ void fn_1_4E50(omObjData *object) } } else { - if (temp_r31->unk3A > 30.0f) { + if (temp_r31->unk3A > (0.5f * REFRESH_RATE)) { temp_r31->unk38 = 0; } } @@ -376,7 +377,7 @@ void fn_1_4E50(omObjData *object) temp_r31->unk3C++; } if (temp_r31->unk3E) { - if (temp_r31->unk3A > 36.0f) { + if (temp_r31->unk3A > (VERSION_NTSC ? 36.0f : 30.000002f)) { for (temp_r29 = 0; temp_r29 < temp_r31->unk54; temp_r29++) { fn_1_8B58(temp_r31->unk58[temp_r29]); } @@ -384,7 +385,7 @@ void fn_1_4E50(omObjData *object) temp_r31->unk3E = 0; } } - if (temp_r31->unk3A > 60.0f) { + if (temp_r31->unk3A > 1.0f * REFRESH_RATE) { temp_r31->unk38 = 0; } break; @@ -514,7 +515,7 @@ void fn_1_5C98(omObjData *object) } else { temp_r31->unk80++; - if (temp_r30 || temp_r31->unk80 > 60.0f) { + if (temp_r30 || temp_r31->unk80 > (1.0f * REFRESH_RATE)) { if (temp_r30 || frandmod(1000) < 10) { temp_r31->unk70 = fn_1_8FA0(&temp_r31->unk88); fn_1_8E2C(temp_r31->unk70, &temp_r31->unk74); @@ -532,7 +533,7 @@ void fn_1_5C98(omObjData *object) case 2: temp_r31->unk80++; - if (temp_r31->unk80 < 120 * temp_r31->unk64) { + if (temp_r31->unk80 < (2 * REFRESH_RATE) * temp_r31->unk64) { temp_r31->unk1C = 0.4f; temp_r31->unk20 = temp_r31->unk40 + 10.0f; temp_r31->unk14 = temp_r31->unk18 = PAD_BUTTON_A; diff --git a/src/REL/m450Dll/main.c b/src/REL/m450Dll/main.c index 7936766b..e8536366 100644 --- a/src/REL/m450Dll/main.c +++ b/src/REL/m450Dll/main.c @@ -836,6 +836,12 @@ s32 lbl_1_bss_8; s32 lbl_1_bss_4; s32 lbl_1_bss_0; +#if VERSION_NTSC +#define _1606_BY_REFRESH_RATE 26.766666f +#else +#define _1606_BY_REFRESH_RATE 32.120003f +#endif + void fn_1_23B4(WorkPlayerOld *player) { s32 i; @@ -1019,7 +1025,7 @@ void fn_1_2E34(WorkPlayerOld *player) player->unk_3C |= 0x100; player->unk_A4 = 0; if (!(player2->unk_3C & 0x100)) { - player->unk_84.y = VERSION_NTSC ? 26.766666f : 32.120003f; + player->unk_84.y = _1606_BY_REFRESH_RATE; } } if (state == 3) { @@ -1123,7 +1129,7 @@ void fn_1_3CE0(WorkPlayerOld *player, s32 *state, u32 *motAttr) } if (player->unk_14[3] >= 0 && (player->unk_28 & 0x100)) { - fn_1_2BD0(player, VERSION_NTSC ? 26.766666f : 32.120003f, 1.0f); + fn_1_2BD0(player, _1606_BY_REFRESH_RATE, 1.0f); *motAttr = HU3D_MOTATTR_NONE; *state = 3; } From 5561cdf32e1a514a8291cc2fd436671376471139 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 17 Nov 2024 16:35:49 +0100 Subject: [PATCH 013/178] Ported m436Dll --- config/GMPP01_00/rels/m436Dll/splits.txt | 10 + config/GMPP01_00/rels/m436Dll/symbols.txt | 570 +++++++++++----------- configure.py | 4 +- src/REL/m436Dll/main.c | 35 +- 4 files changed, 315 insertions(+), 304 deletions(-) diff --git a/config/GMPP01_00/rels/m436Dll/splits.txt b/config/GMPP01_00/rels/m436Dll/splits.txt index 531cd645..a76a23ab 100644 --- a/config/GMPP01_00/rels/m436Dll/splits.txt +++ b/config/GMPP01_00/rels/m436Dll/splits.txt @@ -5,3 +5,13 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m436Dll/main.c: + .text start:0x00000000 end:0x000110F4 + .rodata start:0x00000000 end:0x00000350 + .data start:0x00000000 end:0x0000036C + .bss start:0x00000000 end:0x000004B4 + +REL/m436Dll/sequence.c: + .text start:0x000110F4 end:0x000154A8 + .rodata start:0x00000350 end:0x000003B8 diff --git a/config/GMPP01_00/rels/m436Dll/symbols.txt b/config/GMPP01_00/rels/m436Dll/symbols.txt index 057ebf99..35ef65e7 100644 --- a/config/GMPP01_00/rels/m436Dll/symbols.txt +++ b/config/GMPP01_00/rels/m436Dll/symbols.txt @@ -25,303 +25,303 @@ fn_1_27C8 = .text:0x000027C8; // type:function size:0x38 fn_1_2800 = .text:0x00002800; // type:function size:0x24 fn_1_2824 = .text:0x00002824; // type:function size:0x38 fn_1_285C = .text:0x0000285C; // type:function size:0x1C8 -fn_1_2A24 = .text:0x00002A24; // type:function size:0x64 -fn_1_2A88 = .text:0x00002A88; // type:function size:0x304 -fn_1_2D8C = .text:0x00002D8C; // type:function size:0x28C -fn_1_3018 = .text:0x00003018; // type:function size:0x68 -fn_1_3080 = .text:0x00003080; // type:function size:0x174 -fn_1_31F4 = .text:0x000031F4; // type:function size:0x7B8 -fn_1_39AC = .text:0x000039AC; // type:function size:0x23C -fn_1_3BE8 = .text:0x00003BE8; // type:function size:0x61C -fn_1_4204 = .text:0x00004204; // type:function size:0xF8 -fn_1_42FC = .text:0x000042FC; // type:function size:0x290 -fn_1_458C = .text:0x0000458C; // type:function size:0x318 -fn_1_48A4 = .text:0x000048A4; // type:function size:0x150 -fn_1_49F4 = .text:0x000049F4; // type:function size:0xB8 -fn_1_4AAC = .text:0x00004AAC; // type:function size:0x68 -fn_1_4B14 = .text:0x00004B14; // type:function size:0x38C -fn_1_4EA0 = .text:0x00004EA0; // type:function size:0x108 -fn_1_4FA8 = .text:0x00004FA8; // type:function size:0x3DC -fn_1_5384 = .text:0x00005384; // type:function size:0x28 -fn_1_53AC = .text:0x000053AC; // type:function size:0x60 -fn_1_540C = .text:0x0000540C; // type:function size:0x3C -fn_1_5448 = .text:0x00005448; // type:function size:0x50 -fn_1_5498 = .text:0x00005498; // type:function size:0x168 -fn_1_5600 = .text:0x00005600; // type:function size:0x6C8 -fn_1_5CC8 = .text:0x00005CC8; // type:function size:0x390 -fn_1_6058 = .text:0x00006058; // type:function size:0x264 -fn_1_62BC = .text:0x000062BC; // type:function size:0x624 -fn_1_68E0 = .text:0x000068E0; // type:function size:0x5C -fn_1_693C = .text:0x0000693C; // type:function size:0x298 -fn_1_6BD4 = .text:0x00006BD4; // type:function size:0xB0 -fn_1_6C84 = .text:0x00006C84; // type:function size:0xD8 -fn_1_6D5C = .text:0x00006D5C; // type:function size:0xB0 -fn_1_6E0C = .text:0x00006E0C; // type:function size:0xB0 -fn_1_6EBC = .text:0x00006EBC; // type:function size:0xB0 -fn_1_6F6C = .text:0x00006F6C; // type:function size:0xD8 -fn_1_7044 = .text:0x00007044; // type:function size:0xB0 -fn_1_70F4 = .text:0x000070F4; // type:function size:0xB0 -fn_1_71A4 = .text:0x000071A4; // type:function size:0x120 -fn_1_72C4 = .text:0x000072C4; // type:function size:0x524 -fn_1_77E8 = .text:0x000077E8; // type:function size:0x368 -fn_1_7B50 = .text:0x00007B50; // type:function size:0x3C4 -fn_1_7F14 = .text:0x00007F14; // type:function size:0x268C -fn_1_A5A0 = .text:0x0000A5A0; // type:function size:0xE2C -fn_1_B3CC = .text:0x0000B3CC; // type:function size:0x40C -fn_1_B7D8 = .text:0x0000B7D8; // type:function size:0x4 -fn_1_B7DC = .text:0x0000B7DC; // type:function size:0x184 -fn_1_B960 = .text:0x0000B960; // type:function size:0x4C -fn_1_B9AC = .text:0x0000B9AC; // type:function size:0x5C -fn_1_BA08 = .text:0x0000BA08; // type:function size:0x94 -fn_1_BA9C = .text:0x0000BA9C; // type:function size:0x100 -fn_1_BB9C = .text:0x0000BB9C; // type:function size:0x50 -fn_1_BBEC = .text:0x0000BBEC; // type:function size:0x48 -fn_1_BC34 = .text:0x0000BC34; // type:function size:0x3C -fn_1_BC70 = .text:0x0000BC70; // type:function size:0x80 -fn_1_BCF0 = .text:0x0000BCF0; // type:function size:0x74 -fn_1_BD64 = .text:0x0000BD64; // type:function size:0xB0 -fn_1_BE14 = .text:0x0000BE14; // type:function size:0x50 -fn_1_BE64 = .text:0x0000BE64; // type:function size:0x48 -fn_1_BEAC = .text:0x0000BEAC; // type:function size:0x4C -fn_1_BEF8 = .text:0x0000BEF8; // type:function size:0xC8 -fn_1_BFC0 = .text:0x0000BFC0; // type:function size:0x30 -fn_1_BFF0 = .text:0x0000BFF0; // type:function size:0x98 -fn_1_C088 = .text:0x0000C088; // type:function size:0x458 -fn_1_C4E0 = .text:0x0000C4E0; // type:function size:0xFC -fn_1_C5DC = .text:0x0000C5DC; // type:function size:0xB0 -fn_1_C68C = .text:0x0000C68C; // type:function size:0xD8 -fn_1_C764 = .text:0x0000C764; // type:function size:0xD8 -fn_1_C83C = .text:0x0000C83C; // type:function size:0xC8 -fn_1_C904 = .text:0x0000C904; // type:function size:0x398 -fn_1_CC9C = .text:0x0000CC9C; // type:function size:0x374 -fn_1_D010 = .text:0x0000D010; // type:function size:0x32C -fn_1_D33C = .text:0x0000D33C; // type:function size:0xD4 -fn_1_D410 = .text:0x0000D410; // type:function size:0x2A8 -fn_1_D6B8 = .text:0x0000D6B8; // type:function size:0x24 -fn_1_D6DC = .text:0x0000D6DC; // type:function size:0x37C -fn_1_DA58 = .text:0x0000DA58; // type:function size:0xA0 -fn_1_DAF8 = .text:0x0000DAF8; // type:function size:0x2BC -fn_1_DDB4 = .text:0x0000DDB4; // type:function size:0xF4 -fn_1_DEA8 = .text:0x0000DEA8; // type:function size:0x200 -fn_1_E0A8 = .text:0x0000E0A8; // type:function size:0x94 -fn_1_E13C = .text:0x0000E13C; // type:function size:0x248 -fn_1_E384 = .text:0x0000E384; // type:function size:0x140 -fn_1_E4C4 = .text:0x0000E4C4; // type:function size:0xA0 -fn_1_E564 = .text:0x0000E564; // type:function size:0xBC -fn_1_E620 = .text:0x0000E620; // type:function size:0x58 -fn_1_E678 = .text:0x0000E678; // type:function size:0x90 -fn_1_E708 = .text:0x0000E708; // type:function size:0x220 -fn_1_E928 = .text:0x0000E928; // type:function size:0xD4 -fn_1_E9FC = .text:0x0000E9FC; // type:function size:0x348 -fn_1_ED44 = .text:0x0000ED44; // type:function size:0xC4 -fn_1_EE08 = .text:0x0000EE08; // type:function size:0x5F4 -fn_1_F3FC = .text:0x0000F3FC; // type:function size:0xEC -fn_1_F4E8 = .text:0x0000F4E8; // type:function size:0x48 -fn_1_F530 = .text:0x0000F530; // type:function size:0x30 -fn_1_F560 = .text:0x0000F560; // type:function size:0x98 -fn_1_F5F8 = .text:0x0000F5F8; // type:function size:0xB0 -fn_1_F6A8 = .text:0x0000F6A8; // type:function size:0xAC -fn_1_F754 = .text:0x0000F754; // type:function size:0x30 -fn_1_F784 = .text:0x0000F784; // type:function size:0x98 -fn_1_F81C = .text:0x0000F81C; // type:function size:0x100 -fn_1_F91C = .text:0x0000F91C; // type:function size:0x60 -fn_1_F97C = .text:0x0000F97C; // type:function size:0x8E8 -fn_1_10264 = .text:0x00010264; // type:function size:0x404 -fn_1_10668 = .text:0x00010668; // type:function size:0x1CC +fn_1_2A2C = .text:0x00002A24; // type:function size:0x64 +fn_1_2A90 = .text:0x00002A88; // type:function size:0x304 +fn_1_2D94 = .text:0x00002D8C; // type:function size:0x28C +fn_1_3020 = .text:0x00003018; // type:function size:0x68 +fn_1_3088 = .text:0x00003080; // type:function size:0x174 +fn_1_31FC = .text:0x000031F4; // type:function size:0x7B8 +fn_1_39B4 = .text:0x000039AC; // type:function size:0x23C +fn_1_3BF0 = .text:0x00003BE8; // type:function size:0x61C +fn_1_420C = .text:0x00004204; // type:function size:0xF8 +fn_1_4304 = .text:0x000042FC; // type:function size:0x290 +fn_1_4594 = .text:0x0000458C; // type:function size:0x318 +fn_1_48AC = .text:0x000048A4; // type:function size:0x150 +fn_1_49FC = .text:0x000049F4; // type:function size:0xB8 +fn_1_4AB4 = .text:0x00004AAC; // type:function size:0x68 +fn_1_4B1C = .text:0x00004B14; // type:function size:0x38C +fn_1_4EA8 = .text:0x00004EA0; // type:function size:0x108 +fn_1_4FB0 = .text:0x00004FA8; // type:function size:0x3DC +fn_1_538C = .text:0x00005384; // type:function size:0x28 +fn_1_53B4 = .text:0x000053AC; // type:function size:0x60 +fn_1_5414 = .text:0x0000540C; // type:function size:0x3C +fn_1_5450 = .text:0x00005448; // type:function size:0x50 +fn_1_54A0 = .text:0x00005498; // type:function size:0x168 +fn_1_5608 = .text:0x00005600; // type:function size:0x6C8 +fn_1_5CD0 = .text:0x00005CC8; // type:function size:0x390 +fn_1_6060 = .text:0x00006058; // type:function size:0x264 +fn_1_62C4 = .text:0x000062BC; // type:function size:0x624 +fn_1_68E8 = .text:0x000068E0; // type:function size:0x5C +fn_1_6944 = .text:0x0000693C; // type:function size:0x298 +fn_1_6BDC = .text:0x00006BD4; // type:function size:0xB0 +fn_1_6C8C = .text:0x00006C84; // type:function size:0xD8 +fn_1_6D64 = .text:0x00006D5C; // type:function size:0xB0 +fn_1_6E14 = .text:0x00006E0C; // type:function size:0xB0 +fn_1_6EC4 = .text:0x00006EBC; // type:function size:0xB0 +fn_1_6F74 = .text:0x00006F6C; // type:function size:0xD8 +fn_1_704C = .text:0x00007044; // type:function size:0xB0 +fn_1_70FC = .text:0x000070F4; // type:function size:0xB0 +fn_1_71AC = .text:0x000071A4; // type:function size:0x120 +fn_1_72CC = .text:0x000072C4; // type:function size:0x524 +fn_1_77F0 = .text:0x000077E8; // type:function size:0x368 +fn_1_7B58 = .text:0x00007B50; // type:function size:0x3C4 +fn_1_7F1C = .text:0x00007F14; // type:function size:0x268C +fn_1_A5A8 = .text:0x0000A5A0; // type:function size:0xE2C +fn_1_B3D4 = .text:0x0000B3CC; // type:function size:0x40C +fn_1_B7E0 = .text:0x0000B7D8; // type:function size:0x4 +fn_1_B7E4 = .text:0x0000B7DC; // type:function size:0x184 +fn_1_B968 = .text:0x0000B960; // type:function size:0x4C +fn_1_B9B4 = .text:0x0000B9AC; // type:function size:0x5C +fn_1_BA10 = .text:0x0000BA08; // type:function size:0x94 +fn_1_BAA4 = .text:0x0000BA9C; // type:function size:0x100 +fn_1_BBA4 = .text:0x0000BB9C; // type:function size:0x50 +fn_1_BBF4 = .text:0x0000BBEC; // type:function size:0x48 +fn_1_BC3C = .text:0x0000BC34; // type:function size:0x3C +fn_1_BC78 = .text:0x0000BC70; // type:function size:0x80 +fn_1_BCF8 = .text:0x0000BCF0; // type:function size:0x74 +fn_1_BD6C = .text:0x0000BD64; // type:function size:0xB0 +fn_1_BE1C = .text:0x0000BE14; // type:function size:0x50 +fn_1_BE6C = .text:0x0000BE64; // type:function size:0x48 +fn_1_BEB4 = .text:0x0000BEAC; // type:function size:0x4C +fn_1_BF00 = .text:0x0000BEF8; // type:function size:0xC8 +fn_1_BFC8 = .text:0x0000BFC0; // type:function size:0x30 +fn_1_BFF8 = .text:0x0000BFF0; // type:function size:0x98 +fn_1_C090 = .text:0x0000C088; // type:function size:0x458 +fn_1_C4E8 = .text:0x0000C4E0; // type:function size:0xFC +fn_1_C5E4 = .text:0x0000C5DC; // type:function size:0xB0 +fn_1_C694 = .text:0x0000C68C; // type:function size:0xD8 +fn_1_C76C = .text:0x0000C764; // type:function size:0xD8 +fn_1_C844 = .text:0x0000C83C; // type:function size:0xC8 +fn_1_C90C = .text:0x0000C904; // type:function size:0x398 +fn_1_CCA4 = .text:0x0000CC9C; // type:function size:0x374 +fn_1_D018 = .text:0x0000D010; // type:function size:0x32C +fn_1_D344 = .text:0x0000D33C; // type:function size:0xD4 +fn_1_D418 = .text:0x0000D410; // type:function size:0x2A8 +fn_1_D6C0 = .text:0x0000D6B8; // type:function size:0x24 +fn_1_D6E4 = .text:0x0000D6DC; // type:function size:0x37C +fn_1_DA60 = .text:0x0000DA58; // type:function size:0xA0 +fn_1_DB00 = .text:0x0000DAF8; // type:function size:0x2BC +fn_1_DDBC = .text:0x0000DDB4; // type:function size:0xF4 +fn_1_DEB0 = .text:0x0000DEA8; // type:function size:0x200 +fn_1_E0B0 = .text:0x0000E0A8; // type:function size:0x94 +fn_1_E144 = .text:0x0000E13C; // type:function size:0x248 +fn_1_E38C = .text:0x0000E384; // type:function size:0x140 +fn_1_E4CC = .text:0x0000E4C4; // type:function size:0xA0 +fn_1_E56C = .text:0x0000E564; // type:function size:0xBC +fn_1_E628 = .text:0x0000E620; // type:function size:0x58 +fn_1_E680 = .text:0x0000E678; // type:function size:0x90 +fn_1_E710 = .text:0x0000E708; // type:function size:0x220 +fn_1_E930 = .text:0x0000E928; // type:function size:0xD4 +fn_1_EA04 = .text:0x0000E9FC; // type:function size:0x348 +fn_1_ED4C = .text:0x0000ED44; // type:function size:0xC4 +fn_1_EE10 = .text:0x0000EE08; // type:function size:0x5F4 +fn_1_F404 = .text:0x0000F3FC; // type:function size:0xEC +fn_1_F4F0 = .text:0x0000F4E8; // type:function size:0x48 +fn_1_F538 = .text:0x0000F530; // type:function size:0x30 +fn_1_F568 = .text:0x0000F560; // type:function size:0x98 +fn_1_F600 = .text:0x0000F5F8; // type:function size:0xB0 +fn_1_F6B0 = .text:0x0000F6A8; // type:function size:0xAC +fn_1_F75C = .text:0x0000F754; // type:function size:0x30 +fn_1_F78C = .text:0x0000F784; // type:function size:0x98 +fn_1_F824 = .text:0x0000F81C; // type:function size:0x100 +fn_1_F924 = .text:0x0000F91C; // type:function size:0x60 +fn_1_F984 = .text:0x0000F97C; // type:function size:0x8E8 +fn_1_1026C = .text:0x00010264; // type:function size:0x404 +fn_1_10670 = .text:0x00010668; // type:function size:0x1CC _prolog = .text:0x00010834; // type:function size:0x54 scope:global _epilog = .text:0x00010888; // type:function size:0x4C scope:global -fn_1_108D4 = .text:0x000108D4; // type:function size:0x410 -fn_1_10CE4 = .text:0x00010CE4; // type:function size:0x410 -fn_1_110F4 = .text:0x000110F4; // type:function size:0x40 -fn_1_11134 = .text:0x00011134; // type:function size:0x28 -fn_1_1115C = .text:0x0001115C; // type:function size:0xC8 -fn_1_11224 = .text:0x00011224; // type:function size:0xC8 -fn_1_112EC = .text:0x000112EC; // type:function size:0xD8 -fn_1_113C4 = .text:0x000113C4; // type:function size:0x33C -fn_1_11700 = .text:0x00011700; // type:function size:0x110 -fn_1_11810 = .text:0x00011810; // type:function size:0x178 -fn_1_11988 = .text:0x00011988; // type:function size:0x188 -fn_1_11B10 = .text:0x00011B10; // type:function size:0x1B0 -fn_1_11CC0 = .text:0x00011CC0; // type:function size:0x50 -fn_1_11D10 = .text:0x00011D10; // type:function size:0x5C -fn_1_11D6C = .text:0x00011D6C; // type:function size:0x88 -fn_1_11DF4 = .text:0x00011DF4; // type:function size:0x74 -fn_1_11E68 = .text:0x00011E68; // type:function size:0x94 -fn_1_11EFC = .text:0x00011EFC; // type:function size:0x3C -fn_1_11F38 = .text:0x00011F38; // type:function size:0x318 -fn_1_12250 = .text:0x00012250; // type:function size:0x3C -fn_1_1228C = .text:0x0001228C; // type:function size:0x4C -fn_1_122D8 = .text:0x000122D8; // type:function size:0x314 -fn_1_125EC = .text:0x000125EC; // type:function size:0x314 -fn_1_12900 = .text:0x00012900; // type:function size:0x27C -fn_1_12B7C = .text:0x00012B7C; // type:function size:0x2B4 -fn_1_12E30 = .text:0x00012E30; // type:function size:0x530 -fn_1_13360 = .text:0x00013360; // type:function size:0x454 -fn_1_137B4 = .text:0x000137B4; // type:function size:0x48C -fn_1_13C40 = .text:0x00013C40; // type:function size:0x71C -fn_1_1435C = .text:0x0001435C; // type:function size:0x4C4 -fn_1_14820 = .text:0x00014820; // type:function size:0x4FC -fn_1_14D1C = .text:0x00014D1C; // type:function size:0x78C +fn_1_108DC = .text:0x000108D4; // type:function size:0x410 +ObjectSetup = .text:0x00010CE4; // type:function size:0x410 +fn_1_110FC = .text:0x000110F4; // type:function size:0x40 +fn_1_1113C = .text:0x00011134; // type:function size:0x28 +fn_1_11164 = .text:0x0001115C; // type:function size:0xC8 +fn_1_1122C = .text:0x00011224; // type:function size:0xC8 +fn_1_112F4 = .text:0x000112EC; // type:function size:0xD8 +fn_1_113CC = .text:0x000113C4; // type:function size:0x33C +fn_1_11708 = .text:0x00011700; // type:function size:0x110 +fn_1_11818 = .text:0x00011810; // type:function size:0x178 +fn_1_11990 = .text:0x00011988; // type:function size:0x188 +fn_1_11B18 = .text:0x00011B10; // type:function size:0x1B0 +fn_1_11CC8 = .text:0x00011CC0; // type:function size:0x50 +fn_1_11D18 = .text:0x00011D10; // type:function size:0x5C +fn_1_11D74 = .text:0x00011D6C; // type:function size:0x88 +fn_1_11DFC = .text:0x00011DF4; // type:function size:0x74 +fn_1_11E70 = .text:0x00011E68; // type:function size:0x94 +fn_1_11F04 = .text:0x00011EFC; // type:function size:0x3C +fn_1_11F40 = .text:0x00011F38; // type:function size:0x318 +fn_1_12258 = .text:0x00012250; // type:function size:0x3C +fn_1_12294 = .text:0x0001228C; // type:function size:0x4C +fn_1_122E0 = .text:0x000122D8; // type:function size:0x314 +fn_1_125F4 = .text:0x000125EC; // type:function size:0x314 +fn_1_12908 = .text:0x00012900; // type:function size:0x27C +fn_1_12B84 = .text:0x00012B7C; // type:function size:0x2B4 +fn_1_12E38 = .text:0x00012E30; // type:function size:0x530 +fn_1_13368 = .text:0x00013360; // type:function size:0x454 +fn_1_137BC = .text:0x000137B4; // type:function size:0x48C +fn_1_13C48 = .text:0x00013C40; // type:function size:0x71C +fn_1_14364 = .text:0x0001435C; // type:function size:0x4C4 +fn_1_14828 = .text:0x00014820; // type:function size:0x4FC +fn_1_14D24 = .text:0x00014D1C; // type:function size:0x78C _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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte -lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x3C data:4byte -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x30 data:4byte -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:4byte -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x18 data:4byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:4byte -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:4byte -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:4byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x8 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0xC data:4byte -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:4byte -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:4byte -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x30 data:4byte -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x34 data:4byte -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC scope:local data:float +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC scope:local data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x3C scope:local data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC 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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x30 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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x30 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x30 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 lbl_1_data_20 = .data:0x00000020; // type:object size:0x20 lbl_1_data_40 = .data:0x00000040; // type:object size:0xA0 lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x4 data:4byte lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x4 data:4byte lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:4byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x1B data:string -lbl_1_data_107 = .data:0x00000107; // type:object size:0x22 data:string -lbl_1_data_129 = .data:0x00000129; // type:object size:0x1A data:string -lbl_1_data_143 = .data:0x00000143; // type:object size:0x1A data:string -lbl_1_data_15D = .data:0x0000015D; // type:object size:0xF +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x1B scope:local data:string +lbl_1_data_107 = .data:0x00000107; // type:object size:0x22 scope:local data:string +lbl_1_data_129 = .data:0x00000129; // type:object size:0x1A scope:local data:string +lbl_1_data_143 = .data:0x00000143; // type:object size:0x1A scope:local data:string +lbl_1_data_15D = .data:0x0000015D; // type:object size:0xE scope:local data:string lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 data:4byte -lbl_1_data_170 = .data:0x00000170; // type:object size:0x34 -lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x14 +lbl_1_data_170 = .data:0x00000170; // type:object size:0x12 scope:local data:string +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x12 scope:local data:string jumptable_1_data_1B8 = .data:0x000001B8; // type:object size:0x30 scope:local lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x6C -lbl_1_data_254 = .data:0x00000254; // type:object size:0x18 data:float -lbl_1_data_26C = .data:0x0000026C; // type:object size:0x12 data:string -lbl_1_data_27E = .data:0x0000027E; // type:object size:0x12 data:string +lbl_1_data_254 = .data:0x00000254; // type:object size:0xC data:float +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x12 scope:local data:string +lbl_1_data_27E = .data:0x0000027E; // type:object size:0x12 scope:local data:string lbl_1_data_290 = .data:0x00000290; // type:object size:0x9C lbl_1_data_32C = .data:0x0000032C; // type:object size:0x18 jumptable_1_data_344 = .data:0x00000344; // type:object size:0x28 scope:local @@ -332,7 +332,7 @@ lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:float lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x30 data:float diff --git a/configure.py b/configure.py index 9e58532b..614869f4 100644 --- a/configure.py +++ b/configure.py @@ -1114,8 +1114,8 @@ config.libs = [ Rel( "m436Dll", # Fruits of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/sequence.c"), + Object(Matching, "REL/m436Dll/main.c"), + Object(Matching, "REL/m436Dll/sequence.c"), }, ), Rel( diff --git a/src/REL/m436Dll/main.c b/src/REL/m436Dll/main.c index c7a806b9..95440203 100755 --- a/src/REL/m436Dll/main.c +++ b/src/REL/m436Dll/main.c @@ -14,6 +14,7 @@ #include "game/wipe.h" #include "ext_math.h" +#include "version.h" typedef struct { /* 0x00 */ omObjData *unk00; @@ -650,7 +651,7 @@ void fn_1_27C8(s32 arg0) { if (lbl_1_bss_10 == 0) { lbl_1_bss_10 = 1; - lbl_1_bss_C = arg0 * 60; + lbl_1_bss_C = arg0 * REFRESH_RATE; } } @@ -679,14 +680,14 @@ void fn_1_285C(omObjData *arg0) switch (lbl_1_bss_10) { case 1: if (lbl_1_data_16C == -1) { - lbl_1_data_16C = MGSeqCreate(1, lbl_1_bss_C / 60, -1, -1); + lbl_1_data_16C = MGSeqCreate(1, lbl_1_bss_C / REFRESH_RATE, -1, -1); } lbl_1_bss_10 = 2; break; case 2: lbl_1_bss_C--; if (lbl_1_data_16C != -1) { - MGSeqParamSet(lbl_1_data_16C, 1, (lbl_1_bss_C + 59) / 60); + MGSeqParamSet(lbl_1_data_16C, 1, (lbl_1_bss_C + REFRESH_RATE - 1) / REFRESH_RATE); } if (lbl_1_bss_C <= 0) { lbl_1_bss_C = 30; @@ -1789,9 +1790,9 @@ void fn_1_77F0(void) HuAudFXPlay(0x6D2); var_r30->unk00->work[3] = 3; fn_1_2744(var_r31, MAKE_MESSID(29, 3)); - fn_1_24D0(var_r31, 60); + fn_1_24D0(var_r31, REFRESH_RATE); lbl_1_bss_4 = 2; - fn_1_24D0(var_r31, 60); + fn_1_24D0(var_r31, REFRESH_RATE); var_r30->unk00->work[3] = 2; fn_1_2468(var_r31); lbl_1_bss_4 = 1; @@ -1901,17 +1902,17 @@ void fn_1_A5A8(void) var_r28->unk00->work[3] = 2; var_r28->unk00->work[3] = 1; fn_1_2744(var_r31, MAKE_MESSID(29, 21)); - fn_1_24D0(var_r31, 180); + fn_1_24D0(var_r31, 3 * REFRESH_RATE); var_r28->unk00->work[3] = 2; sp68->unk00->work[0] = 10; fn_1_2744(var_r31, MAKE_MESSID(29, 22)); - fn_1_24D0(var_r31, 60); + fn_1_24D0(var_r31, REFRESH_RATE); var_r28->unk00->work[3] = 4; fn_1_2A90(var_r31); fn_1_2D94(var_r31); fn_1_3020(); var_r28->unk00->work[3] = 2; - HuPrcSleep(120); + HuPrcSleep(2 * REFRESH_RATE); var_r28->unk00->work[3] = 1; fn_1_2744(var_r31, MAKE_MESSID(29, 37)); fn_1_24D0(var_r31, 0); @@ -2153,7 +2154,7 @@ s32 fn_1_C090(s32 arg0, s32 arg1, s32 arg2) if (arg2 % 27 == 2 && temp_r31->unk24 == 0) { switch (temp_r31->unk10) { case 0: - if (arg2 <= 120) { + if (arg2 <= 2 * REFRESH_RATE) { var_r29 = 0; } else if (var_r28->unk04 <= 3) { @@ -2164,7 +2165,7 @@ s32 fn_1_C090(s32 arg0, s32 arg1, s32 arg2) } break; case 1: - if (arg2 <= 120) { + if (arg2 <= 2 * REFRESH_RATE) { var_r29 = 0; } else if (var_r28->unk04 <= 6) { @@ -2175,7 +2176,7 @@ s32 fn_1_C090(s32 arg0, s32 arg1, s32 arg2) } break; case 2: - if (arg2 <= 60) { + if (arg2 <= REFRESH_RATE) { var_r29 = 0; } else if (var_r28->unk04 <= 9) { @@ -2186,7 +2187,7 @@ s32 fn_1_C090(s32 arg0, s32 arg1, s32 arg2) } break; case 3: - if (arg2 <= 60) { + if (arg2 <= REFRESH_RATE) { var_r29 = 0; } else if (var_r28->unk04 <= 12) { @@ -2339,14 +2340,14 @@ void fn_1_C90C(void) s32 sp3C[] = { MAKE_MESSID(29, 31), MAKE_MESSID(29, 32), MAKE_MESSID(29, 33) }; var_r28 = rand8() % 3; - HuPrcSleep(70); + HuPrcSleep(REFRESH_RATE + 10); fn_1_26D4(sp28, sp3C[var_r28]); var_r31 = fn_1_2230((580.0f - sp28[0]) / 2, 60.0f, sp28[0], sp28[1], 2); var_r27->unk00->work[2] = 1; HuAudFXPlay(0x6D2); HuAudFXPlay(0x6E3); fn_1_2744(var_r31, sp3C[var_r28]); - fn_1_24D0(var_r31, 120); + fn_1_24D0(var_r31, 2 * REFRESH_RATE); fn_1_2468(var_r31); lbl_1_bss_4 = 1; HuPrcEnd(); @@ -2367,7 +2368,7 @@ void fn_1_CCA4(void) HuAudFXPlay(0x6D9); HuAudSeqAllFadeOut(100); fn_1_2744(var_r31, sp24[var_r28]); - fn_1_24D0(var_r31, 120); + fn_1_24D0(var_r31, 2 * REFRESH_RATE); fn_1_2468(var_r31); lbl_1_bss_4 = 1; HuPrcEnd(); @@ -2385,7 +2386,7 @@ void fn_1_D018(void) HuAudFXPlay(0x6D9); HuAudSeqAllFadeOut(100); fn_1_2744(var_r31, MAKE_MESSID(29, 36)); - fn_1_24D0(var_r31, 120); + fn_1_24D0(var_r31, 2 * REFRESH_RATE); fn_1_2468(var_r31); lbl_1_bss_4 = 1; HuPrcEnd(); @@ -2645,7 +2646,7 @@ s32 fn_1_DEB0(void) Hu3DModelScaleSet(var_r29->unk00->model[temp_r31->unk1C + 1], 1.0f, 1.0f, 1.0f); var_r30->unk0C = temp_r31->unk20 = 1; } - if (temp_r31->unk20 == 1 && temp_r31->unk24++ >= 60) { + if (temp_r31->unk20 == 1 && temp_r31->unk24++ >= REFRESH_RATE) { temp_r26 = &Hu3DData[var_r29->unk00->model[temp_r31->unk1C + 1]]; var_r28->unk00->work[1] = 3; temp_r26->pos.y = temp_r27->pos.y; From 4e5aa07dbcf96f37cf013f650a341bc014f7e8ef Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 17 Nov 2024 16:46:21 +0100 Subject: [PATCH 014/178] Ported m437Dll --- config/GMPP01_00/rels/m437Dll/splits.txt | 11 + config/GMPP01_00/rels/m437Dll/symbols.txt | 704 +++++++++++----------- configure.py | 4 +- src/REL/m402Dll/main.c | 3 +- src/REL/m426Dll/main.c | 3 +- src/REL/m437Dll/main.c | 25 +- src/REL/m441Dll/main.c | 3 +- src/REL/m448Dll/main.c | 3 +- 8 files changed, 386 insertions(+), 370 deletions(-) diff --git a/config/GMPP01_00/rels/m437Dll/splits.txt b/config/GMPP01_00/rels/m437Dll/splits.txt index 531cd645..9337d9d2 100644 --- a/config/GMPP01_00/rels/m437Dll/splits.txt +++ b/config/GMPP01_00/rels/m437Dll/splits.txt @@ -5,3 +5,14 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m437Dll/main.c: + .text start:0x00000000 end:0x00011340 + .rodata start:0x00000000 end:0x000005D0 + .data start:0x00000000 end:0x00000350 + .bss start:0x00000000 end:0x000009A8 + +REL/m437Dll/sequence.c: + .text start:0x00011340 end:0x00016794 + .rodata start:0x000005D0 end:0x00000640 + .data start:0x00000350 end:0x00000430 diff --git a/config/GMPP01_00/rels/m437Dll/symbols.txt b/config/GMPP01_00/rels/m437Dll/symbols.txt index ae5723b4..fac6c7f3 100644 --- a/config/GMPP01_00/rels/m437Dll/symbols.txt +++ b/config/GMPP01_00/rels/m437Dll/symbols.txt @@ -14,374 +14,374 @@ fn_1_1184 = .text:0x00001184; // type:function size:0x38 fn_1_11BC = .text:0x000011BC; // type:function size:0x24 fn_1_11E0 = .text:0x000011E0; // type:function size:0x38 fn_1_1218 = .text:0x00001218; // type:function size:0x1C8 -fn_1_13E0 = .text:0x000013E0; // type:function size:0x64 -fn_1_1444 = .text:0x00001444; // type:function size:0x644 -fn_1_1A88 = .text:0x00001A88; // type:function size:0x24 -fn_1_1AAC = .text:0x00001AAC; // type:function size:0x458 -fn_1_1F04 = .text:0x00001F04; // type:function size:0x1EC -fn_1_20F0 = .text:0x000020F0; // type:function size:0x1EC -fn_1_22DC = .text:0x000022DC; // type:function size:0x458 -fn_1_2734 = .text:0x00002734; // type:function size:0x68 -fn_1_279C = .text:0x0000279C; // type:function size:0x68 -fn_1_2804 = .text:0x00002804; // type:function size:0xE8 -fn_1_28EC = .text:0x000028EC; // type:function size:0x11C -fn_1_2A08 = .text:0x00002A08; // type:function size:0x84 -fn_1_2A8C = .text:0x00002A8C; // type:function size:0x70 -fn_1_2AFC = .text:0x00002AFC; // type:function size:0xA8 -fn_1_2BA4 = .text:0x00002BA4; // type:function size:0x10 -fn_1_2BB4 = .text:0x00002BB4; // type:function size:0x5D8 -fn_1_318C = .text:0x0000318C; // type:function size:0xCC -fn_1_3258 = .text:0x00003258; // type:function size:0x1B0 -fn_1_3408 = .text:0x00003408; // type:function size:0x284 -fn_1_368C = .text:0x0000368C; // type:function size:0x20 -fn_1_36AC = .text:0x000036AC; // type:function size:0x120 -fn_1_37CC = .text:0x000037CC; // type:function size:0x14 -fn_1_37E0 = .text:0x000037E0; // type:function size:0x1A8 -fn_1_3988 = .text:0x00003988; // type:function size:0x34 -fn_1_39BC = .text:0x000039BC; // type:function size:0x20 -fn_1_39DC = .text:0x000039DC; // type:function size:0x16C -fn_1_3B48 = .text:0x00003B48; // type:function size:0x14 -fn_1_3B5C = .text:0x00003B5C; // type:function size:0x154 -fn_1_3CB0 = .text:0x00003CB0; // type:function size:0x88 -fn_1_3D38 = .text:0x00003D38; // type:function size:0x204 -fn_1_3F3C = .text:0x00003F3C; // type:function size:0x5F4 -fn_1_4530 = .text:0x00004530; // type:function size:0x188 -fn_1_46B8 = .text:0x000046B8; // type:function size:0x268 -fn_1_4920 = .text:0x00004920; // type:function size:0x10 -fn_1_4930 = .text:0x00004930; // type:function size:0x1C0 -fn_1_4AF0 = .text:0x00004AF0; // type:function size:0xB4 -fn_1_4BA4 = .text:0x00004BA4; // type:function size:0x94 -fn_1_4C38 = .text:0x00004C38; // type:function size:0x1C0 -fn_1_4DF8 = .text:0x00004DF8; // type:function size:0xE0 -fn_1_4ED8 = .text:0x00004ED8; // type:function size:0x268 -fn_1_5140 = .text:0x00005140; // type:function size:0x94 -fn_1_51D4 = .text:0x000051D4; // type:function size:0x94 -fn_1_5268 = .text:0x00005268; // type:function size:0x94 -fn_1_52FC = .text:0x000052FC; // type:function size:0x28 -fn_1_5324 = .text:0x00005324; // type:function size:0x32C -fn_1_5650 = .text:0x00005650; // type:function size:0x32C -fn_1_597C = .text:0x0000597C; // type:function size:0x154 -fn_1_5AD0 = .text:0x00005AD0; // type:function size:0x4E4 -fn_1_5FB4 = .text:0x00005FB4; // type:function size:0x150 -fn_1_6104 = .text:0x00006104; // type:function size:0x28 -fn_1_612C = .text:0x0000612C; // type:function size:0x64 -fn_1_6190 = .text:0x00006190; // type:function size:0x68 -fn_1_61F8 = .text:0x000061F8; // type:function size:0x380 -fn_1_6578 = .text:0x00006578; // type:function size:0x60 -fn_1_65D8 = .text:0x000065D8; // type:function size:0xB18 -fn_1_70F0 = .text:0x000070F0; // type:function size:0x3C -fn_1_712C = .text:0x0000712C; // type:function size:0x198 -fn_1_72C4 = .text:0x000072C4; // type:function size:0x1E4 -fn_1_74A8 = .text:0x000074A8; // type:function size:0x1C8 -fn_1_7670 = .text:0x00007670; // type:function size:0x368 -fn_1_79D8 = .text:0x000079D8; // type:function size:0x34 -fn_1_7A0C = .text:0x00007A0C; // type:function size:0x8CC -fn_1_82D8 = .text:0x000082D8; // type:function size:0x28 -fn_1_8300 = .text:0x00008300; // type:function size:0x1BC -fn_1_84BC = .text:0x000084BC; // type:function size:0x1C0 -fn_1_867C = .text:0x0000867C; // type:function size:0xB0 -fn_1_872C = .text:0x0000872C; // type:function size:0xF0 -fn_1_881C = .text:0x0000881C; // type:function size:0xB0 -fn_1_88CC = .text:0x000088CC; // type:function size:0xB0 -fn_1_897C = .text:0x0000897C; // type:function size:0xB0 -fn_1_8A2C = .text:0x00008A2C; // type:function size:0xF0 -fn_1_8B1C = .text:0x00008B1C; // type:function size:0xB0 -fn_1_8BCC = .text:0x00008BCC; // type:function size:0xB0 -fn_1_8C7C = .text:0x00008C7C; // type:function size:0x120 -fn_1_8D9C = .text:0x00008D9C; // type:function size:0x57C -fn_1_9318 = .text:0x00009318; // type:function size:0x3B8 -fn_1_96D0 = .text:0x000096D0; // type:function size:0x454 -fn_1_9B24 = .text:0x00009B24; // type:function size:0x474 -fn_1_9F98 = .text:0x00009F98; // type:function size:0x4A0 -fn_1_A438 = .text:0x0000A438; // type:function size:0x420 -fn_1_A858 = .text:0x0000A858; // type:function size:0x4 -fn_1_A85C = .text:0x0000A85C; // type:function size:0x184 -fn_1_A9E0 = .text:0x0000A9E0; // type:function size:0x3C -fn_1_AA1C = .text:0x0000AA1C; // type:function size:0x5C -fn_1_AA78 = .text:0x0000AA78; // type:function size:0x3C -fn_1_AAB4 = .text:0x0000AAB4; // type:function size:0x5C -fn_1_AB10 = .text:0x0000AB10; // type:function size:0x50 -fn_1_AB60 = .text:0x0000AB60; // type:function size:0x48 -fn_1_ABA8 = .text:0x0000ABA8; // type:function size:0x3C -fn_1_ABE4 = .text:0x0000ABE4; // type:function size:0x84 -fn_1_AC68 = .text:0x0000AC68; // type:function size:0x5C -fn_1_ACC4 = .text:0x0000ACC4; // type:function size:0x5C -fn_1_AD20 = .text:0x0000AD20; // type:function size:0x70 -fn_1_AD90 = .text:0x0000AD90; // type:function size:0x48 -fn_1_ADD8 = .text:0x0000ADD8; // type:function size:0x3C -fn_1_AE14 = .text:0x0000AE14; // type:function size:0x5C -fn_1_AE70 = .text:0x0000AE70; // type:function size:0xD4 -fn_1_AF44 = .text:0x0000AF44; // type:function size:0x248 -fn_1_B18C = .text:0x0000B18C; // type:function size:0x30 -fn_1_B1BC = .text:0x0000B1BC; // type:function size:0x8C -fn_1_B248 = .text:0x0000B248; // type:function size:0x20 -fn_1_B268 = .text:0x0000B268; // type:function size:0x180 -fn_1_B3E8 = .text:0x0000B3E8; // type:function size:0x104 -fn_1_B4EC = .text:0x0000B4EC; // type:function size:0x2EC -fn_1_B7D8 = .text:0x0000B7D8; // type:function size:0xF0 -fn_1_B8C8 = .text:0x0000B8C8; // type:function size:0x348 -fn_1_BC10 = .text:0x0000BC10; // type:function size:0xB0 -fn_1_BCC0 = .text:0x0000BCC0; // type:function size:0xF0 -fn_1_BDB0 = .text:0x0000BDB0; // type:function size:0xC8 -fn_1_BE78 = .text:0x0000BE78; // type:function size:0x3C8 -fn_1_C240 = .text:0x0000C240; // type:function size:0x3C8 -fn_1_C608 = .text:0x0000C608; // type:function size:0x3B4 -fn_1_C9BC = .text:0x0000C9BC; // type:function size:0x35C -fn_1_CD18 = .text:0x0000CD18; // type:function size:0x31C -fn_1_D034 = .text:0x0000D034; // type:function size:0x384 -fn_1_D3B8 = .text:0x0000D3B8; // type:function size:0x394 -fn_1_D74C = .text:0x0000D74C; // type:function size:0x1DC -fn_1_D928 = .text:0x0000D928; // type:function size:0x3BC -fn_1_DCE4 = .text:0x0000DCE4; // type:function size:0x1D8 -fn_1_DEBC = .text:0x0000DEBC; // type:function size:0x3E4 -fn_1_E2A0 = .text:0x0000E2A0; // type:function size:0x2F0 -fn_1_E590 = .text:0x0000E590; // type:function size:0x9C -fn_1_E62C = .text:0x0000E62C; // type:function size:0x310 -fn_1_E93C = .text:0x0000E93C; // type:function size:0x5C -fn_1_E998 = .text:0x0000E998; // type:function size:0x104 -fn_1_EA9C = .text:0x0000EA9C; // type:function size:0x94 -fn_1_EB30 = .text:0x0000EB30; // type:function size:0xD8 -fn_1_EC08 = .text:0x0000EC08; // type:function size:0x1C4 -fn_1_EDCC = .text:0x0000EDCC; // type:function size:0xCC -fn_1_EE98 = .text:0x0000EE98; // type:function size:0x12C -fn_1_EFC4 = .text:0x0000EFC4; // type:function size:0xEC -fn_1_F0B0 = .text:0x0000F0B0; // type:function size:0x40 -fn_1_F0F0 = .text:0x0000F0F0; // type:function size:0x4C -fn_1_F13C = .text:0x0000F13C; // type:function size:0x48 -fn_1_F184 = .text:0x0000F184; // type:function size:0x108 -fn_1_F28C = .text:0x0000F28C; // type:function size:0x144 -fn_1_F3D0 = .text:0x0000F3D0; // type:function size:0xBC -fn_1_F48C = .text:0x0000F48C; // type:function size:0x40 -fn_1_F4CC = .text:0x0000F4CC; // type:function size:0x30 -fn_1_F4FC = .text:0x0000F4FC; // type:function size:0x8C -fn_1_F588 = .text:0x0000F588; // type:function size:0xB0 -fn_1_F638 = .text:0x0000F638; // type:function size:0xAC -fn_1_F6E4 = .text:0x0000F6E4; // type:function size:0x30 -fn_1_F714 = .text:0x0000F714; // type:function size:0x8C -fn_1_F7A0 = .text:0x0000F7A0; // type:function size:0xF4 -fn_1_F894 = .text:0x0000F894; // type:function size:0x10 -fn_1_F8A4 = .text:0x0000F8A4; // type:function size:0xB90 -fn_1_10434 = .text:0x00010434; // type:function size:0x468 -fn_1_1089C = .text:0x0001089C; // type:function size:0x1EC +fn_1_13E8 = .text:0x000013E0; // type:function size:0x64 +fn_1_144C = .text:0x00001444; // type:function size:0x644 +fn_1_1A90 = .text:0x00001A88; // type:function size:0x24 +fn_1_1AB4 = .text:0x00001AAC; // type:function size:0x458 +fn_1_1F0C = .text:0x00001F04; // type:function size:0x1EC +fn_1_20F8 = .text:0x000020F0; // type:function size:0x1EC +fn_1_22E4 = .text:0x000022DC; // type:function size:0x458 +fn_1_273C = .text:0x00002734; // type:function size:0x68 +fn_1_27A4 = .text:0x0000279C; // type:function size:0x68 +fn_1_280C = .text:0x00002804; // type:function size:0xE8 +fn_1_28F4 = .text:0x000028EC; // type:function size:0x11C +fn_1_2A10 = .text:0x00002A08; // type:function size:0x84 +fn_1_2A94 = .text:0x00002A8C; // type:function size:0x70 +fn_1_2B04 = .text:0x00002AFC; // type:function size:0xA8 +fn_1_2BAC = .text:0x00002BA4; // type:function size:0x10 +fn_1_2BBC = .text:0x00002BB4; // type:function size:0x5D8 +fn_1_3194 = .text:0x0000318C; // type:function size:0xCC +fn_1_3260 = .text:0x00003258; // type:function size:0x1B0 +fn_1_3410 = .text:0x00003408; // type:function size:0x284 +fn_1_3694 = .text:0x0000368C; // type:function size:0x20 +fn_1_36B4 = .text:0x000036AC; // type:function size:0x120 +fn_1_37D4 = .text:0x000037CC; // type:function size:0x14 +fn_1_37E8 = .text:0x000037E0; // type:function size:0x1A8 +fn_1_3990 = .text:0x00003988; // type:function size:0x34 +fn_1_39C4 = .text:0x000039BC; // type:function size:0x20 +fn_1_39E4 = .text:0x000039DC; // type:function size:0x16C +fn_1_3B50 = .text:0x00003B48; // type:function size:0x14 +fn_1_3B64 = .text:0x00003B5C; // type:function size:0x154 +fn_1_3CB8 = .text:0x00003CB0; // type:function size:0x88 +fn_1_3D40 = .text:0x00003D38; // type:function size:0x204 +fn_1_3F44 = .text:0x00003F3C; // type:function size:0x5F4 +fn_1_4538 = .text:0x00004530; // type:function size:0x188 +fn_1_46C0 = .text:0x000046B8; // type:function size:0x268 +fn_1_4928 = .text:0x00004920; // type:function size:0x10 +fn_1_4938 = .text:0x00004930; // type:function size:0x1C0 +fn_1_4AF8 = .text:0x00004AF0; // type:function size:0xB4 +fn_1_4BAC = .text:0x00004BA4; // type:function size:0x94 +fn_1_4C40 = .text:0x00004C38; // type:function size:0x1C0 +fn_1_4E00 = .text:0x00004DF8; // type:function size:0xE0 +fn_1_4EE0 = .text:0x00004ED8; // type:function size:0x268 +fn_1_5148 = .text:0x00005140; // type:function size:0x94 +fn_1_51DC = .text:0x000051D4; // type:function size:0x94 +fn_1_5270 = .text:0x00005268; // type:function size:0x94 +fn_1_5304 = .text:0x000052FC; // type:function size:0x28 +fn_1_532C = .text:0x00005324; // type:function size:0x32C +fn_1_5658 = .text:0x00005650; // type:function size:0x32C +fn_1_5984 = .text:0x0000597C; // type:function size:0x154 +fn_1_5AD8 = .text:0x00005AD0; // type:function size:0x4E4 +fn_1_5FBC = .text:0x00005FB4; // type:function size:0x150 +fn_1_610C = .text:0x00006104; // type:function size:0x28 +fn_1_6134 = .text:0x0000612C; // type:function size:0x64 +fn_1_6198 = .text:0x00006190; // type:function size:0x68 +fn_1_6200 = .text:0x000061F8; // type:function size:0x380 +fn_1_6580 = .text:0x00006578; // type:function size:0x60 +fn_1_65E0 = .text:0x000065D8; // type:function size:0xB18 +fn_1_70F8 = .text:0x000070F0; // type:function size:0x3C +fn_1_7134 = .text:0x0000712C; // type:function size:0x198 +fn_1_72CC = .text:0x000072C4; // type:function size:0x1E4 +fn_1_74B0 = .text:0x000074A8; // type:function size:0x1C8 +fn_1_7678 = .text:0x00007670; // type:function size:0x368 +fn_1_79E0 = .text:0x000079D8; // type:function size:0x34 +fn_1_7A14 = .text:0x00007A0C; // type:function size:0x8CC +fn_1_82E0 = .text:0x000082D8; // type:function size:0x28 +fn_1_8308 = .text:0x00008300; // type:function size:0x1BC +fn_1_84C4 = .text:0x000084BC; // type:function size:0x1C0 +fn_1_8684 = .text:0x0000867C; // type:function size:0xB0 +fn_1_8734 = .text:0x0000872C; // type:function size:0xF0 +fn_1_8824 = .text:0x0000881C; // type:function size:0xB0 +fn_1_88D4 = .text:0x000088CC; // type:function size:0xB0 +fn_1_8984 = .text:0x0000897C; // type:function size:0xB0 +fn_1_8A34 = .text:0x00008A2C; // type:function size:0xF0 +fn_1_8B24 = .text:0x00008B1C; // type:function size:0xB0 +fn_1_8BD4 = .text:0x00008BCC; // type:function size:0xB0 +fn_1_8C84 = .text:0x00008C7C; // type:function size:0x120 +fn_1_8DA4 = .text:0x00008D9C; // type:function size:0x57C +fn_1_9320 = .text:0x00009318; // type:function size:0x3B8 +fn_1_96D8 = .text:0x000096D0; // type:function size:0x454 +fn_1_9B2C = .text:0x00009B24; // type:function size:0x474 +fn_1_9FA0 = .text:0x00009F98; // type:function size:0x4A0 +fn_1_A440 = .text:0x0000A438; // type:function size:0x420 +fn_1_A860 = .text:0x0000A858; // type:function size:0x4 +fn_1_A864 = .text:0x0000A85C; // type:function size:0x184 +fn_1_A9E8 = .text:0x0000A9E0; // type:function size:0x3C +fn_1_AA24 = .text:0x0000AA1C; // type:function size:0x5C +fn_1_AA80 = .text:0x0000AA78; // type:function size:0x3C +fn_1_AABC = .text:0x0000AAB4; // type:function size:0x5C +fn_1_AB18 = .text:0x0000AB10; // type:function size:0x50 +fn_1_AB68 = .text:0x0000AB60; // type:function size:0x48 +fn_1_ABB0 = .text:0x0000ABA8; // type:function size:0x3C +fn_1_ABEC = .text:0x0000ABE4; // type:function size:0x84 +fn_1_AC70 = .text:0x0000AC68; // type:function size:0x5C +fn_1_ACCC = .text:0x0000ACC4; // type:function size:0x5C +fn_1_AD28 = .text:0x0000AD20; // type:function size:0x70 +fn_1_AD98 = .text:0x0000AD90; // type:function size:0x48 +fn_1_ADE0 = .text:0x0000ADD8; // type:function size:0x3C +fn_1_AE1C = .text:0x0000AE14; // type:function size:0x5C +fn_1_AE78 = .text:0x0000AE70; // type:function size:0xD4 +fn_1_AF4C = .text:0x0000AF44; // type:function size:0x248 +fn_1_B194 = .text:0x0000B18C; // type:function size:0x30 +fn_1_B1C4 = .text:0x0000B1BC; // type:function size:0x8C +fn_1_B250 = .text:0x0000B248; // type:function size:0x20 +fn_1_B270 = .text:0x0000B268; // type:function size:0x180 +fn_1_B3F0 = .text:0x0000B3E8; // type:function size:0x104 +fn_1_B4F4 = .text:0x0000B4EC; // type:function size:0x2EC +fn_1_B7E0 = .text:0x0000B7D8; // type:function size:0xF0 +fn_1_B8D0 = .text:0x0000B8C8; // type:function size:0x348 +fn_1_BC18 = .text:0x0000BC10; // type:function size:0xB0 +fn_1_BCC8 = .text:0x0000BCC0; // type:function size:0xF0 +fn_1_BDB8 = .text:0x0000BDB0; // type:function size:0xC8 +fn_1_BE80 = .text:0x0000BE78; // type:function size:0x3C8 +fn_1_C248 = .text:0x0000C240; // type:function size:0x3C8 +fn_1_C610 = .text:0x0000C608; // type:function size:0x3B4 +fn_1_C9C4 = .text:0x0000C9BC; // type:function size:0x35C +fn_1_CD20 = .text:0x0000CD18; // type:function size:0x31C +fn_1_D03C = .text:0x0000D034; // type:function size:0x384 +fn_1_D3C0 = .text:0x0000D3B8; // type:function size:0x394 +fn_1_D754 = .text:0x0000D74C; // type:function size:0x1DC +fn_1_D930 = .text:0x0000D928; // type:function size:0x3BC +fn_1_DCEC = .text:0x0000DCE4; // type:function size:0x1D8 +fn_1_DEC4 = .text:0x0000DEBC; // type:function size:0x3E4 +fn_1_E2A8 = .text:0x0000E2A0; // type:function size:0x2F0 +fn_1_E598 = .text:0x0000E590; // type:function size:0x9C +fn_1_E634 = .text:0x0000E62C; // type:function size:0x310 +fn_1_E944 = .text:0x0000E93C; // type:function size:0x5C +fn_1_E9A0 = .text:0x0000E998; // type:function size:0x104 +fn_1_EAA4 = .text:0x0000EA9C; // type:function size:0x94 +fn_1_EB38 = .text:0x0000EB30; // type:function size:0xD8 +fn_1_EC10 = .text:0x0000EC08; // type:function size:0x1C4 +fn_1_EDD4 = .text:0x0000EDCC; // type:function size:0xCC +fn_1_EEA0 = .text:0x0000EE98; // type:function size:0x12C +fn_1_EFCC = .text:0x0000EFC4; // type:function size:0xEC +fn_1_F0B8 = .text:0x0000F0B0; // type:function size:0x40 +fn_1_F0F8 = .text:0x0000F0F0; // type:function size:0x4C +fn_1_F144 = .text:0x0000F13C; // type:function size:0x48 +fn_1_F18C = .text:0x0000F184; // type:function size:0x108 +fn_1_F294 = .text:0x0000F28C; // type:function size:0x144 +fn_1_F3D8 = .text:0x0000F3D0; // type:function size:0xBC +fn_1_F494 = .text:0x0000F48C; // type:function size:0x40 +fn_1_F4D4 = .text:0x0000F4CC; // type:function size:0x30 +fn_1_F504 = .text:0x0000F4FC; // type:function size:0x8C +fn_1_F590 = .text:0x0000F588; // type:function size:0xB0 +fn_1_F640 = .text:0x0000F638; // type:function size:0xAC +fn_1_F6EC = .text:0x0000F6E4; // type:function size:0x30 +fn_1_F71C = .text:0x0000F714; // type:function size:0x8C +fn_1_F7A8 = .text:0x0000F7A0; // type:function size:0xF4 +fn_1_F89C = .text:0x0000F894; // type:function size:0x10 +fn_1_F8AC = .text:0x0000F8A4; // type:function size:0xB90 +fn_1_1043C = .text:0x00010434; // type:function size:0x468 +fn_1_108A4 = .text:0x0001089C; // type:function size:0x1EC _prolog = .text:0x00010A88; // type:function size:0x54 scope:global _epilog = .text:0x00010ADC; // type:function size:0x4C scope:global -fn_1_10B28 = .text:0x00010B28; // type:function size:0x40C -fn_1_10F34 = .text:0x00010F34; // type:function size:0x40C -fn_1_11340 = .text:0x00011340; // type:function size:0x28 -fn_1_11368 = .text:0x00011368; // type:function size:0x40 -fn_1_113A8 = .text:0x000113A8; // type:function size:0xC8 -fn_1_11470 = .text:0x00011470; // type:function size:0xC8 -fn_1_11538 = .text:0x00011538; // type:function size:0xD8 -fn_1_11610 = .text:0x00011610; // type:function size:0x50 -fn_1_11660 = .text:0x00011660; // type:function size:0x5C -fn_1_116BC = .text:0x000116BC; // type:function size:0x88 -fn_1_11744 = .text:0x00011744; // type:function size:0x74 -fn_1_117B8 = .text:0x000117B8; // type:function size:0x94 -fn_1_1184C = .text:0x0001184C; // type:function size:0x3C -fn_1_11888 = .text:0x00011888; // type:function size:0x110 -fn_1_11998 = .text:0x00011998; // type:function size:0x178 -fn_1_11B10 = .text:0x00011B10; // type:function size:0x1C8 -fn_1_11CD8 = .text:0x00011CD8; // type:function size:0x7B4 -fn_1_1248C = .text:0x0001248C; // type:function size:0x4C4 -fn_1_12950 = .text:0x00012950; // type:function size:0x60 -fn_1_129B0 = .text:0x000129B0; // type:function size:0x64 -fn_1_12A14 = .text:0x00012A14; // type:function size:0x64 -fn_1_12A78 = .text:0x00012A78; // type:function size:0x3C -fn_1_12AB4 = .text:0x00012AB4; // type:function size:0x44 -fn_1_12AF8 = .text:0x00012AF8; // type:function size:0x314 -fn_1_12E0C = .text:0x00012E0C; // type:function size:0x314 -fn_1_13120 = .text:0x00013120; // type:function size:0x27C -fn_1_1339C = .text:0x0001339C; // type:function size:0x2B4 -fn_1_13650 = .text:0x00013650; // type:function size:0x530 -fn_1_13B80 = .text:0x00013B80; // type:function size:0x454 -fn_1_13FD4 = .text:0x00013FD4; // type:function size:0x48C -fn_1_14460 = .text:0x00014460; // type:function size:0x71C -fn_1_14B7C = .text:0x00014B7C; // type:function size:0x4C4 -fn_1_15040 = .text:0x00015040; // type:function size:0x4FC -fn_1_1553C = .text:0x0001553C; // type:function size:0x78C -fn_1_15CC8 = .text:0x00015CC8; // type:function size:0x6C -fn_1_15D34 = .text:0x00015D34; // type:function size:0x68 -fn_1_15D9C = .text:0x00015D9C; // type:function size:0x10 -fn_1_15DAC = .text:0x00015DAC; // type:function size:0xC -fn_1_15DB8 = .text:0x00015DB8; // type:function size:0x8 -fn_1_15DC0 = .text:0x00015DC0; // type:function size:0x48 -fn_1_15E08 = .text:0x00015E08; // type:function size:0x344 -fn_1_1614C = .text:0x0001614C; // type:function size:0x190 -fn_1_162DC = .text:0x000162DC; // type:function size:0x64 -fn_1_16340 = .text:0x00016340; // type:function size:0x4 -fn_1_16344 = .text:0x00016344; // type:function size:0x164 -fn_1_164A8 = .text:0x000164A8; // type:function size:0x15C -fn_1_16604 = .text:0x00016604; // type:function size:0x190 +fn_1_10B30 = .text:0x00010B28; // type:function size:0x40C +ObjectSetup = .text:0x00010F34; // type:function size:0x40C +fn_1_11348 = .text:0x00011340; // type:function size:0x28 +fn_1_11370 = .text:0x00011368; // type:function size:0x40 +fn_1_113B0 = .text:0x000113A8; // type:function size:0xC8 +fn_1_11478 = .text:0x00011470; // type:function size:0xC8 +fn_1_11540 = .text:0x00011538; // type:function size:0xD8 +fn_1_11618 = .text:0x00011610; // type:function size:0x50 +fn_1_11668 = .text:0x00011660; // type:function size:0x5C +fn_1_116C4 = .text:0x000116BC; // type:function size:0x88 +fn_1_1174C = .text:0x00011744; // type:function size:0x74 +fn_1_117C0 = .text:0x000117B8; // type:function size:0x94 +fn_1_11854 = .text:0x0001184C; // type:function size:0x3C +fn_1_11890 = .text:0x00011888; // type:function size:0x110 +fn_1_119A0 = .text:0x00011998; // type:function size:0x178 +fn_1_11B18 = .text:0x00011B10; // type:function size:0x1C8 +fn_1_11CE0 = .text:0x00011CD8; // type:function size:0x7B4 +fn_1_12494 = .text:0x0001248C; // type:function size:0x4C4 +fn_1_12958 = .text:0x00012950; // type:function size:0x60 +fn_1_129B8 = .text:0x000129B0; // type:function size:0x64 +fn_1_12A1C = .text:0x00012A14; // type:function size:0x64 +fn_1_12A80 = .text:0x00012A78; // type:function size:0x3C +fn_1_12ABC = .text:0x00012AB4; // type:function size:0x44 +fn_1_12B00 = .text:0x00012AF8; // type:function size:0x314 +fn_1_12E14 = .text:0x00012E0C; // type:function size:0x314 +fn_1_13128 = .text:0x00013120; // type:function size:0x27C +fn_1_133A4 = .text:0x0001339C; // type:function size:0x2B4 +fn_1_13658 = .text:0x00013650; // type:function size:0x530 +fn_1_13B88 = .text:0x00013B80; // type:function size:0x454 +fn_1_13FDC = .text:0x00013FD4; // type:function size:0x48C +fn_1_14468 = .text:0x00014460; // type:function size:0x71C +fn_1_14B84 = .text:0x00014B7C; // type:function size:0x4C4 +fn_1_15048 = .text:0x00015040; // type:function size:0x4FC +fn_1_15544 = .text:0x0001553C; // type:function size:0x78C +fn_1_15CD0 = .text:0x00015CC8; // type:function size:0x6C +fn_1_15D3C = .text:0x00015D34; // type:function size:0x68 +fn_1_15DA4 = .text:0x00015D9C; // type:function size:0x10 +fn_1_15DB4 = .text:0x00015DAC; // type:function size:0xC +fn_1_15DC0 = .text:0x00015DB8; // type:function size:0x8 +fn_1_15DC8 = .text:0x00015DC0; // type:function size:0x48 +fn_1_15E10 = .text:0x00015E08; // type:function size:0x344 +fn_1_16154 = .text:0x0001614C; // type:function size:0x190 +fn_1_162E4 = .text:0x000162DC; // type:function size:0x64 +fn_1_16348 = .text:0x00016340; // type:function size:0x4 +fn_1_1634C = .text:0x00016344; // type:function size:0x164 +fn_1_164B0 = .text:0x000164A8; // type:function size:0x15C +fn_1_1660C = .text:0x00016604; // type:function size:0x190 _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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte -lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x48 -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:4byte -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x78 -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x78 -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC8 -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x78 -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x14 data:4byte -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x30 data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x30 data:4byte -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:4byte -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:4byte -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:4byte -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:4byte -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x20 data:4byte -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:4byte -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x20 data:4byte -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:4byte -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x30 data:4byte -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x10 data:4byte -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x8 data:4byte -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0xC data:4byte -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:4byte -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:4byte -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0xC data:4byte -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x8 data:4byte -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 data:4byte -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x30 data:4byte -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x18 data:4byte -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC scope:local data:float +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC scope:local data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x48 scope:local +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x78 scope:local +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x78 scope:local data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC8 scope:local +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x78 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x30 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x30 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x30 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x30 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x18 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 scope:local data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 scope:local data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 scope:local data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 scope:local data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 scope:local data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 scope:local data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0xA0 lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x4 data:4byte lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x4 data:4byte lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x4 data:4byte -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x1B data:string -lbl_1_data_C7 = .data:0x000000C7; // type:object size:0x22 data:string -lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x1A data:string -lbl_1_data_103 = .data:0x00000103; // type:object size:0x1A data:string -lbl_1_data_11D = .data:0x0000011D; // type:object size:0xF +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x1B scope:local data:string +lbl_1_data_C7 = .data:0x000000C7; // type:object size:0x22 scope:local data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x1A scope:local data:string +lbl_1_data_103 = .data:0x00000103; // type:object size:0x1A scope:local data:string +lbl_1_data_11D = .data:0x0000011D; // type:object size:0xE scope:local data:string lbl_1_data_12C = .data:0x0000012C; // type:object size:0x4 data:4byte -lbl_1_data_130 = .data:0x00000130; // type:object size:0x16 data:string -lbl_1_data_146 = .data:0x00000146; // type:object size:0x13 data:string -lbl_1_data_159 = .data:0x00000159; // type:object size:0xE data:string -lbl_1_data_167 = .data:0x00000167; // type:object size:0xE data:string -lbl_1_data_175 = .data:0x00000175; // type:object size:0x13 +lbl_1_data_130 = .data:0x00000130; // type:object size:0x16 scope:local data:string +lbl_1_data_146 = .data:0x00000146; // type:object size:0x13 scope:local data:string +lbl_1_data_159 = .data:0x00000159; // type:object size:0xE scope:local data:string +lbl_1_data_167 = .data:0x00000167; // type:object size:0xE scope:local data:string +lbl_1_data_175 = .data:0x00000175; // type:object size:0x12 scope:local data:string lbl_1_data_188 = .data:0x00000188; // type:object size:0x4 data:float -lbl_1_data_18C = .data:0x0000018C; // type:object size:0x14 data:string +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x14 scope:local data:string jumptable_1_data_1A0 = .data:0x000001A0; // type:object size:0x20 scope:local -lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x14 +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x12 scope:local data:string jumptable_1_data_1D4 = .data:0x000001D4; // type:object size:0x30 scope:local lbl_1_data_204 = .data:0x00000204; // type:object size:0x78 lbl_1_data_27C = .data:0x0000027C; // type:object size:0x90 lbl_1_data_30C = .data:0x0000030C; // type:object size:0x18 jumptable_1_data_324 = .data:0x00000324; // type:object size:0x2C scope:local -lbl_1_data_350 = .data:0x00000350; // type:object size:0x10 data:string -lbl_1_data_360 = .data:0x00000360; // type:object size:0x10 data:string -lbl_1_data_370 = .data:0x00000370; // type:object size:0x10 data:string -lbl_1_data_380 = .data:0x00000380; // type:object size:0x10 data:string -lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 data:string -lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x10 data:string -lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x10 data:string -lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x10 data:string +lbl_1_data_350 = .data:0x00000350; // type:object size:0x10 scope:local data:string +lbl_1_data_360 = .data:0x00000360; // type:object size:0x10 scope:local data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0x10 scope:local data:string +lbl_1_data_380 = .data:0x00000380; // type:object size:0x10 scope:local data:string +lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 scope:local data:string +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x10 scope:local data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x10 scope:local data:string +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x10 scope:local data:string lbl_1_data_3D0 = .data:0x000003D0; // type:object size:0x20 lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x40 lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 614869f4..61aba1d4 100644 --- a/configure.py +++ b/configure.py @@ -1121,8 +1121,8 @@ config.libs = [ Rel( "m437Dll", # Balloon of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/sequence.c"), + Object(Matching, "REL/m437Dll/main.c"), + Object(Matching, "REL/m437Dll/sequence.c"), }, ), Rel( diff --git a/src/REL/m402Dll/main.c b/src/REL/m402Dll/main.c index eff45b37..53a17274 100755 --- a/src/REL/m402Dll/main.c +++ b/src/REL/m402Dll/main.c @@ -22,6 +22,7 @@ #include "dolphin.h" #include "ext_math.h" +#include "version.h" #undef ABS #define ABS(x) ((0 > (x)) ? -(x) : (x)) @@ -1671,7 +1672,7 @@ static void fn_1_8218(omObjData *arg0) } break; case 1006: - MGSeqParamSet(lbl_1_bss_1A8, 1, (lbl_1_bss_1B0 + 59) / 60); + MGSeqParamSet(lbl_1_bss_1A8, 1, (lbl_1_bss_1B0 + REFRESH_RATE - 1) / REFRESH_RATE); lbl_1_bss_1B0--; if (lbl_1_bss_1B0 < 0 || lbl_1_bss_26 >= 0) { lbl_1_bss_1B0 = 1800; diff --git a/src/REL/m426Dll/main.c b/src/REL/m426Dll/main.c index 6f4d3a64..ae15dbe3 100644 --- a/src/REL/m426Dll/main.c +++ b/src/REL/m426Dll/main.c @@ -11,6 +11,7 @@ #include "game/sprite.h" #include "game/wipe.h" #include "string.h" +#include "version.h" typedef struct UnkM426Struct { /* 0x00 */ s32 unk_00; @@ -457,7 +458,7 @@ void fn_1_330(omObjData *object) } break; case 5: - var_r25 = (lbl_1_bss_58 + 59) / 60; + var_r25 = (lbl_1_bss_58 + REFRESH_RATE - 1) / REFRESH_RATE; if (var_r25 < 0) { var_r25 = 0; } diff --git a/src/REL/m437Dll/main.c b/src/REL/m437Dll/main.c index 6b57e11a..5ca6de46 100755 --- a/src/REL/m437Dll/main.c +++ b/src/REL/m437Dll/main.c @@ -18,6 +18,7 @@ #include "dolphin.h" #include "math.h" #include "string.h" +#include "version.h" typedef struct { /* 0x000 */ omObjData *unk00; @@ -524,7 +525,7 @@ void fn_1_1184(s32 arg0) { if (lbl_1_bss_8 == 0) { lbl_1_bss_8 = 1; - lbl_1_bss_4 = arg0 * 60; + lbl_1_bss_4 = arg0 * REFRESH_RATE; } } @@ -553,14 +554,14 @@ void fn_1_1218(omObjData *arg0) switch (lbl_1_bss_8) { case 1: if (lbl_1_data_12C == -1) { - lbl_1_data_12C = MGSeqCreate(1, lbl_1_bss_4 / 60, -1, -1); + lbl_1_data_12C = MGSeqCreate(1, lbl_1_bss_4 / REFRESH_RATE, -1, -1); } lbl_1_bss_8 = 2; break; case 2: lbl_1_bss_4--; if (lbl_1_data_12C != -1) { - MGSeqParamSet(lbl_1_data_12C, 1, (lbl_1_bss_4 + 59) / 60); + MGSeqParamSet(lbl_1_data_12C, 1, (lbl_1_bss_4 + REFRESH_RATE - 1) / REFRESH_RATE); } if (lbl_1_bss_4 <= 0) { lbl_1_bss_4 = 30; @@ -1019,7 +1020,7 @@ void fn_1_2BBC(omObjData *arg0) fn_1_230(1, 10, 4.0f); } if (temp_r30->unk04 == 0) { - if (temp_r30->unk14++ >= 300) { + if (temp_r30->unk14++ >= 5 * REFRESH_RATE) { temp_r30->unk14 = 0; if (rand8() % 2 != 0) { fn_1_2BAC(1); @@ -2272,9 +2273,9 @@ void fn_1_9320(void) HuAudFXPlay(0x6D2); fn_1_4BAC(2, 10, 0, 1); fn_1_2A10(var_r31, MAKE_MESSID(29, 4)); - fn_1_280C(var_r31, 60); + fn_1_280C(var_r31, REFRESH_RATE); fn_1_2BAC(3); - fn_1_280C(var_r31, 60); + fn_1_280C(var_r31, REFRESH_RATE); fn_1_4BAC(0, 30, 1, 1); fn_1_27A4(var_r31); lbl_1_bss_C = 1; @@ -2726,9 +2727,9 @@ void fn_1_BE80(void) HuAudFXPlay(0x6D2); fn_1_4928(1); fn_1_2A10(var_r30, sp1C[temp_r27]); - fn_1_280C(var_r30, 60); + fn_1_280C(var_r30, REFRESH_RATE); lbl_1_bss_C = 1; - fn_1_280C(var_r30, 60); + fn_1_280C(var_r30, REFRESH_RATE); fn_1_27A4(var_r30); HuPrcEnd(); } @@ -2747,9 +2748,9 @@ void fn_1_C248(void) HuAudFXPlay(0x6D2); fn_1_4928(1); fn_1_2A10(var_r31, sp1C[temp_r27]); - fn_1_280C(var_r31, 60); + fn_1_280C(var_r31, REFRESH_RATE); lbl_1_bss_C = 1; - fn_1_280C(var_r31, 60); + fn_1_280C(var_r31, REFRESH_RATE); fn_1_27A4(var_r31); HuPrcEnd(); } @@ -2814,7 +2815,7 @@ void fn_1_D03C(void) var_r31 = fn_1_20F8((580.0f - sp10[0]) / 2, 100.0f, sp10[0], sp10[1], 2); HuAudFXPlay(0x6D6); fn_1_2A10(var_r31, sp18[temp_r28]); - fn_1_280C(var_r31, 120); + fn_1_280C(var_r31, 2 * REFRESH_RATE); fn_1_27A4(var_r31); HuPrcEnd(); } @@ -2830,7 +2831,7 @@ void fn_1_D3C0(void) HuAudFXPlay(0x6D6); fn_1_4BAC(1, 10, 0, 1); fn_1_2A10(var_r31, MAKE_MESSID(29, 92)); - fn_1_280C(var_r31, 120); + fn_1_280C(var_r31, 2 * REFRESH_RATE); fn_1_4BAC(0, 30, 1, 1); fn_1_27A4(var_r31); lbl_1_bss_C = 1; diff --git a/src/REL/m441Dll/main.c b/src/REL/m441Dll/main.c index fbd7fe34..38896429 100644 --- a/src/REL/m441Dll/main.c +++ b/src/REL/m441Dll/main.c @@ -21,6 +21,7 @@ #include "game/sprite.h" #include "ext_math.h" +#include "version.h" #undef ABS #define ABS(x) ((0 > (x)) ? -(x) : (x)) @@ -1876,7 +1877,7 @@ void fn_1_8D58(omObjData *object) break; case 1004: - MGSeqParamSet(lbl_1_bss_19C, 1, (lbl_1_bss_1A4 + 59) / 60); + MGSeqParamSet(lbl_1_bss_19C, 1, (lbl_1_bss_1A4 + REFRESH_RATE - 1) / REFRESH_RATE); lbl_1_bss_1A4--; if (lbl_1_bss_1A4 < 0) { object->work[0] = 1005; diff --git a/src/REL/m448Dll/main.c b/src/REL/m448Dll/main.c index 8309a194..fce3e974 100755 --- a/src/REL/m448Dll/main.c +++ b/src/REL/m448Dll/main.c @@ -20,6 +20,7 @@ #include "dolphin.h" #include "ext_math.h" +#include "version.h" typedef struct { /* 0x00 */ s32 unk00; @@ -1431,7 +1432,7 @@ void fn_1_7148(omObjData *arg0) case 1005: lbl_1_bss_84++; if (lbl_1_data_19A != -1) { - MGSeqParamSet(lbl_1_data_19A, 1, ((lbl_1_bss_0 < 0 ? 0 : lbl_1_bss_0) + 59) / 60); + MGSeqParamSet(lbl_1_data_19A, 1, ((lbl_1_bss_0 < 0 ? 0 : lbl_1_bss_0) + REFRESH_RATE - 1) / REFRESH_RATE); lbl_1_bss_0--; if (lbl_1_bss_0 <= -30) { MGSeqParamSet(lbl_1_data_19A, 2, -1); From 92a755ef97601f1138a5758e318e38a39016ec3d Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 17 Nov 2024 17:57:27 +0100 Subject: [PATCH 015/178] Port m439Dll --- config/GMPP01_00/rels/m439Dll/splits.txt | 9 + config/GMPP01_00/rels/m439Dll/symbols.txt | 367 +++++++++++----------- configure.py | 2 +- src/REL/m439Dll/main.c | 97 +++--- 4 files changed, 234 insertions(+), 241 deletions(-) diff --git a/config/GMPP01_00/rels/m439Dll/splits.txt b/config/GMPP01_00/rels/m439Dll/splits.txt index 531cd645..55b19f1f 100644 --- a/config/GMPP01_00/rels/m439Dll/splits.txt +++ b/config/GMPP01_00/rels/m439Dll/splits.txt @@ -5,3 +5,12 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m439Dll/main.c: + .text start:0x000000A0 end:0x0000818C + .rodata start:0x00000000 end:0x00000200 + .data start:0x00000000 end:0x000078F0 + .bss start:0x00000000 end:0x00000174 diff --git a/config/GMPP01_00/rels/m439Dll/symbols.txt b/config/GMPP01_00/rels/m439Dll/symbols.txt index c7cb102e..a4c18c94 100644 --- a/config/GMPP01_00/rels/m439Dll/symbols.txt +++ b/config/GMPP01_00/rels/m439Dll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2C4 +ObjectSetup = .text:0x000000A0; // type:function size:0x2C4 fn_1_364 = .text:0x00000364; // type:function size:0x10 fn_1_374 = .text:0x00000374; // type:function size:0x10 fn_1_384 = .text:0x00000384; // type:function size:0x84 @@ -50,89 +50,92 @@ fn_1_7578 = .text:0x00007578; // type:function size:0x26C fn_1_77E4 = .text:0x000077E4; // type:function size:0x9A8 _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_50 = .rodata:0x00000050; // type:object size:0x8 data:double -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -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:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC data:2byte -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x50 -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_50 = .rodata:0x00000050; // type:object size:0x8 scope:local data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 scope:local data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x50 scope:local +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x1 scope:local data:byte +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x18 lbl_1_data_18 = .data:0x00000018; // type:object size:0x18 lbl_1_data_30 = .data:0x00000030; // type:object size:0x8 @@ -170,129 +173,130 @@ lbl_1_data_EA8 = .data:0x00000EA8; // type:object size:0x9C lbl_1_data_F44 = .data:0x00000F44; // type:object size:0x9C lbl_1_data_FE0 = .data:0x00000FE0; // type:object size:0x34 lbl_1_data_1014 = .data:0x00001014; // type:object size:0x60 -lbl_1_data_1074 = .data:0x00001074; // type:object size:0x18 -lbl_1_data_108C = .data:0x0000108C; // type:object size:0x30 -lbl_1_data_10BC = .data:0x000010BC; // type:object size:0x204 -lbl_1_data_12C0 = .data:0x000012C0; // type:object size:0x204 -lbl_1_data_14C4 = .data:0x000014C4; // type:object size:0x204 +lbl_1_data_1074 = .data:0x00001074; // type:object size:0x18 data:2byte +lbl_1_data_108C = .data:0x0000108C; // type:object size:0x30 data:float +lbl_1_data_10BC = .data:0x000010BC; // type:object size:0x204 data:float +lbl_1_data_12C0 = .data:0x000012C0; // type:object size:0x204 data:float +lbl_1_data_14C4 = .data:0x000014C4; // type:object size:0x204 data:float lbl_1_data_16C8 = .data:0x000016C8; // type:object size:0xC -lbl_1_data_16D4 = .data:0x000016D4; // type:object size:0x4 -lbl_1_data_16D8 = .data:0x000016D8; // type:object size:0x1D4 -lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x1D4 -lbl_1_data_1A80 = .data:0x00001A80; // type:object size:0x1D4 -lbl_1_data_1C54 = .data:0x00001C54; // type:object size:0x120 -lbl_1_data_1D74 = .data:0x00001D74; // type:object size:0x120 -lbl_1_data_1E94 = .data:0x00001E94; // type:object size:0x120 -lbl_1_data_1FB4 = .data:0x00001FB4; // type:object size:0xF0 -lbl_1_data_20A4 = .data:0x000020A4; // type:object size:0xF0 -lbl_1_data_2194 = .data:0x00002194; // type:object size:0xF0 +lbl_1_data_16D4 = .data:0x000016D4; // type:object size:0x4 data:4byte +lbl_1_data_16D8 = .data:0x000016D8; // type:object size:0x1D4 data:float +lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x1D4 data:float +lbl_1_data_1A80 = .data:0x00001A80; // type:object size:0x1D4 data:float +lbl_1_data_1C54 = .data:0x00001C54; // type:object size:0x120 data:float +lbl_1_data_1D74 = .data:0x00001D74; // type:object size:0x120 data:float +lbl_1_data_1E94 = .data:0x00001E94; // type:object size:0x120 data:float +lbl_1_data_1FB4 = .data:0x00001FB4; // type:object size:0xF0 data:float +lbl_1_data_20A4 = .data:0x000020A4; // type:object size:0xF0 data:float +lbl_1_data_2194 = .data:0x00002194; // type:object size:0xF0 data:float lbl_1_data_2284 = .data:0x00002284; // type:object size:0x24 -lbl_1_data_22A8 = .data:0x000022A8; // type:object size:0xC -lbl_1_data_22B4 = .data:0x000022B4; // type:object size:0x174 -lbl_1_data_2428 = .data:0x00002428; // type:object size:0x174 -lbl_1_data_259C = .data:0x0000259C; // type:object size:0x174 -lbl_1_data_2710 = .data:0x00002710; // type:object size:0x144 -lbl_1_data_2854 = .data:0x00002854; // type:object size:0x144 -lbl_1_data_2998 = .data:0x00002998; // type:object size:0x144 -lbl_1_data_2ADC = .data:0x00002ADC; // type:object size:0x1A4 -lbl_1_data_2C80 = .data:0x00002C80; // type:object size:0x1A4 -lbl_1_data_2E24 = .data:0x00002E24; // type:object size:0x1A4 +lbl_1_data_22A8 = .data:0x000022A8; // type:object size:0xC data:4byte +lbl_1_data_22B4 = .data:0x000022B4; // type:object size:0x174 data:float +lbl_1_data_2428 = .data:0x00002428; // type:object size:0x174 data:float +lbl_1_data_259C = .data:0x0000259C; // type:object size:0x174 data:float +lbl_1_data_2710 = .data:0x00002710; // type:object size:0x144 data:float +lbl_1_data_2854 = .data:0x00002854; // type:object size:0x144 data:float +lbl_1_data_2998 = .data:0x00002998; // type:object size:0x144 data:float +lbl_1_data_2ADC = .data:0x00002ADC; // type:object size:0x1A4 data:float +lbl_1_data_2C80 = .data:0x00002C80; // type:object size:0x1A4 data:float +lbl_1_data_2E24 = .data:0x00002E24; // type:object size:0x1A4 data:float lbl_1_data_2FC8 = .data:0x00002FC8; // type:object size:0x24 -lbl_1_data_2FEC = .data:0x00002FEC; // type:object size:0xC -lbl_1_data_2FF8 = .data:0x00002FF8; // type:object size:0x294 -lbl_1_data_328C = .data:0x0000328C; // type:object size:0x294 -lbl_1_data_3520 = .data:0x00003520; // type:object size:0x294 +lbl_1_data_2FEC = .data:0x00002FEC; // type:object size:0xC data:4byte +lbl_1_data_2FF8 = .data:0x00002FF8; // type:object size:0x294 data:float +lbl_1_data_328C = .data:0x0000328C; // type:object size:0x294 data:float +lbl_1_data_3520 = .data:0x00003520; // type:object size:0x294 data:float lbl_1_data_37B4 = .data:0x000037B4; // type:object size:0xC -lbl_1_data_37C0 = .data:0x000037C0; // type:object size:0x4 -lbl_1_data_37C4 = .data:0x000037C4; // type:object size:0x198 -lbl_1_data_395C = .data:0x0000395C; // type:object size:0x198 -lbl_1_data_3AF4 = .data:0x00003AF4; // type:object size:0x198 -lbl_1_data_3C8C = .data:0x00003C8C; // type:object size:0x198 -lbl_1_data_3E24 = .data:0x00003E24; // type:object size:0x198 -lbl_1_data_3FBC = .data:0x00003FBC; // type:object size:0x198 +lbl_1_data_37C0 = .data:0x000037C0; // type:object size:0x4 data:4byte +lbl_1_data_37C4 = .data:0x000037C4; // type:object size:0x198 data:float +lbl_1_data_395C = .data:0x0000395C; // type:object size:0x198 data:float +lbl_1_data_3AF4 = .data:0x00003AF4; // type:object size:0x198 data:float +lbl_1_data_3C8C = .data:0x00003C8C; // type:object size:0x198 data:float +lbl_1_data_3E24 = .data:0x00003E24; // type:object size:0x198 data:float +lbl_1_data_3FBC = .data:0x00003FBC; // type:object size:0x198 data:float lbl_1_data_4154 = .data:0x00004154; // type:object size:0x18 -lbl_1_data_416C = .data:0x0000416C; // type:object size:0x8 -lbl_1_data_4174 = .data:0x00004174; // type:object size:0x210 -lbl_1_data_4384 = .data:0x00004384; // type:object size:0x210 -lbl_1_data_4594 = .data:0x00004594; // type:object size:0x210 -lbl_1_data_47A4 = .data:0x000047A4; // type:object size:0x210 -lbl_1_data_49B4 = .data:0x000049B4; // type:object size:0x210 -lbl_1_data_4BC4 = .data:0x00004BC4; // type:object size:0x210 +lbl_1_data_416C = .data:0x0000416C; // type:object size:0x8 data:4byte +lbl_1_data_4174 = .data:0x00004174; // type:object size:0x210 data:float +lbl_1_data_4384 = .data:0x00004384; // type:object size:0x210 data:float +lbl_1_data_4594 = .data:0x00004594; // type:object size:0x210 data:float +lbl_1_data_47A4 = .data:0x000047A4; // type:object size:0x210 data:float +lbl_1_data_49B4 = .data:0x000049B4; // type:object size:0x210 data:float +lbl_1_data_4BC4 = .data:0x00004BC4; // type:object size:0x210 data:float lbl_1_data_4DD4 = .data:0x00004DD4; // type:object size:0x18 -lbl_1_data_4DEC = .data:0x00004DEC; // type:object size:0x8 -lbl_1_data_4DF4 = .data:0x00004DF4; // type:object size:0x1D4 -lbl_1_data_4FC8 = .data:0x00004FC8; // type:object size:0x1D4 -lbl_1_data_519C = .data:0x0000519C; // type:object size:0x1D4 -lbl_1_data_5370 = .data:0x00005370; // type:object size:0x1D4 -lbl_1_data_5544 = .data:0x00005544; // type:object size:0x1D4 -lbl_1_data_5718 = .data:0x00005718; // type:object size:0x1D4 +lbl_1_data_4DEC = .data:0x00004DEC; // type:object size:0x8 data:4byte +lbl_1_data_4DF4 = .data:0x00004DF4; // type:object size:0x1D4 data:float +lbl_1_data_4FC8 = .data:0x00004FC8; // type:object size:0x1D4 data:float +lbl_1_data_519C = .data:0x0000519C; // type:object size:0x1D4 data:float +lbl_1_data_5370 = .data:0x00005370; // type:object size:0x1D4 data:float +lbl_1_data_5544 = .data:0x00005544; // type:object size:0x1D4 data:float +lbl_1_data_5718 = .data:0x00005718; // type:object size:0x1D4 data:float lbl_1_data_58EC = .data:0x000058EC; // type:object size:0x18 -lbl_1_data_5904 = .data:0x00005904; // type:object size:0x8 -lbl_1_data_590C = .data:0x0000590C; // type:object size:0x18C -lbl_1_data_5A98 = .data:0x00005A98; // type:object size:0x18C -lbl_1_data_5C24 = .data:0x00005C24; // type:object size:0x18C -lbl_1_data_5DB0 = .data:0x00005DB0; // type:object size:0x168 -lbl_1_data_5F18 = .data:0x00005F18; // type:object size:0x168 -lbl_1_data_6080 = .data:0x00006080; // type:object size:0x168 +lbl_1_data_5904 = .data:0x00005904; // type:object size:0x8 data:4byte +lbl_1_data_590C = .data:0x0000590C; // type:object size:0x18C data:float +lbl_1_data_5A98 = .data:0x00005A98; // type:object size:0x18C data:float +lbl_1_data_5C24 = .data:0x00005C24; // type:object size:0x18C data:float +lbl_1_data_5DB0 = .data:0x00005DB0; // type:object size:0x168 data:float +lbl_1_data_5F18 = .data:0x00005F18; // type:object size:0x168 data:float +lbl_1_data_6080 = .data:0x00006080; // type:object size:0x168 data:float lbl_1_data_61E8 = .data:0x000061E8; // type:object size:0x18 -lbl_1_data_6200 = .data:0x00006200; // type:object size:0x8 -lbl_1_data_6208 = .data:0x00006208; // type:object size:0x174 -lbl_1_data_637C = .data:0x0000637C; // type:object size:0x174 -lbl_1_data_64F0 = .data:0x000064F0; // type:object size:0x174 -lbl_1_data_6664 = .data:0x00006664; // type:object size:0x15C -lbl_1_data_67C0 = .data:0x000067C0; // type:object size:0x15C -lbl_1_data_691C = .data:0x0000691C; // type:object size:0x15C +lbl_1_data_6200 = .data:0x00006200; // type:object size:0x8 data:4byte +lbl_1_data_6208 = .data:0x00006208; // type:object size:0x174 data:float +lbl_1_data_637C = .data:0x0000637C; // type:object size:0x174 data:float +lbl_1_data_64F0 = .data:0x000064F0; // type:object size:0x174 data:float +lbl_1_data_6664 = .data:0x00006664; // type:object size:0x15C data:float +lbl_1_data_67C0 = .data:0x000067C0; // type:object size:0x15C data:float +lbl_1_data_691C = .data:0x0000691C; // type:object size:0x15C data:float lbl_1_data_6A78 = .data:0x00006A78; // type:object size:0x18 -lbl_1_data_6A90 = .data:0x00006A90; // type:object size:0x8 -lbl_1_data_6A98 = .data:0x00006A98; // type:object size:0x18C -lbl_1_data_6C24 = .data:0x00006C24; // type:object size:0x18C -lbl_1_data_6DB0 = .data:0x00006DB0; // type:object size:0x18C -lbl_1_data_6F3C = .data:0x00006F3C; // type:object size:0x174 -lbl_1_data_70B0 = .data:0x000070B0; // type:object size:0x174 -lbl_1_data_7224 = .data:0x00007224; // type:object size:0x174 +lbl_1_data_6A90 = .data:0x00006A90; // type:object size:0x8 data:4byte +lbl_1_data_6A98 = .data:0x00006A98; // type:object size:0x18C data:float +lbl_1_data_6C24 = .data:0x00006C24; // type:object size:0x18C data:float +lbl_1_data_6DB0 = .data:0x00006DB0; // type:object size:0x18C data:float +lbl_1_data_6F3C = .data:0x00006F3C; // type:object size:0x174 data:float +lbl_1_data_70B0 = .data:0x000070B0; // type:object size:0x174 data:float +lbl_1_data_7224 = .data:0x00007224; // type:object size:0x174 data:float lbl_1_data_7398 = .data:0x00007398; // type:object size:0x18 -lbl_1_data_73B0 = .data:0x000073B0; // type:object size:0x8 -lbl_1_data_73B8 = .data:0x000073B8; // type:object size:0x14 +lbl_1_data_73B0 = .data:0x000073B0; // type:object size:0x8 data:4byte +lbl_1_data_73B8 = .data:0x000073B8; // type:object size:0x14 data:4byte lbl_1_data_73CC = .data:0x000073CC; // type:object size:0x28 lbl_1_data_73F4 = .data:0x000073F4; // type:object size:0x28 lbl_1_data_741C = .data:0x0000741C; // type:object size:0x70 data:float lbl_1_data_748C = .data:0x0000748C; // type:object size:0x140 -lbl_1_data_75CC = .data:0x000075CC; // type:object size:0x14 +lbl_1_data_75CC = .data:0x000075CC; // type:object size:0x14 data:float lbl_1_data_75E0 = .data:0x000075E0; // type:object size:0x10 data:4byte lbl_1_data_75F0 = .data:0x000075F0; // type:object size:0xC data:float lbl_1_data_75FC = .data:0x000075FC; // type:object size:0xC data:float lbl_1_data_7608 = .data:0x00007608; // type:object size:0x4 -lbl_1_data_760C = .data:0x0000760C; // type:object size:0xC -lbl_1_data_7618 = .data:0x00007618; // type:object size:0xC -lbl_1_data_7624 = .data:0x00007624; // type:object size:0x24 +lbl_1_data_760C = .data:0x0000760C; // type:object size:0xC data:float +lbl_1_data_7618 = .data:0x00007618; // type:object size:0xC data:float +lbl_1_data_7624 = .data:0x00007624; // type:object size:0x23 scope:local data:string lbl_1_data_7648 = .data:0x00007648; // type:object size:0x4 data:4byte lbl_1_data_764C = .data:0x0000764C; // type:object size:0x4 data:4byte jumptable_1_data_7650 = .data:0x00007650; // type:object size:0x28 scope:local -lbl_1_data_7678 = .data:0x00007678; // type:object size:0x1C data:string +lbl_1_data_7678 = .data:0x00007678; // type:object size:0x1C scope:local data:string lbl_1_data_7694 = .data:0x00007694; // type:object size:0x1C -lbl_1_data_76B0 = .data:0x000076B0; // type:object size:0x58 -lbl_1_data_7708 = .data:0x00007708; // type:object size:0x30 -lbl_1_data_7738 = .data:0x00007738; // type:object size:0x5C +lbl_1_data_76B0 = .data:0x000076B0; // type:object size:0x58 data:float +lbl_1_data_7708 = .data:0x00007708; // type:object size:0x30 data:float +lbl_1_data_7738 = .data:0x00007738; // type:object size:0x3C data:2byte +lbl_1_data_7774 = .data:0x00007774; // type:object size:0x20 data:4byte lbl_1_data_7794 = .data:0x00007794; // type:object size:0x4 lbl_1_data_7798 = .data:0x00007798; // type:object size:0x4 data:4byte lbl_1_data_779C = .data:0x0000779C; // type:object size:0x4 data:4byte lbl_1_data_77A0 = .data:0x000077A0; // type:object size:0x28 -lbl_1_data_77C8 = .data:0x000077C8; // type:object size:0x70 -lbl_1_data_7838 = .data:0x00007838; // type:object size:0x1C -lbl_1_data_7854 = .data:0x00007854; // type:object size:0x6 data:string -lbl_1_data_785A = .data:0x0000785A; // type:object size:0x6 data:string -lbl_1_data_7860 = .data:0x00007860; // type:object size:0x8 data:string -lbl_1_data_7868 = .data:0x00007868; // type:object size:0x6 data:string -lbl_1_data_786E = .data:0x0000786E; // type:object size:0x8 data:string -lbl_1_data_7876 = .data:0x00007876; // type:object size:0x6 data:string -lbl_1_data_787C = .data:0x0000787C; // type:object size:0x6 data:string -lbl_1_data_7882 = .data:0x00007882; // type:object size:0x6 data:string -lbl_1_data_7888 = .data:0x00007888; // type:object size:0x6 data:string -lbl_1_data_788E = .data:0x0000788E; // type:object size:0x6 data:string -lbl_1_data_7894 = .data:0x00007894; // type:object size:0x6 data:string -lbl_1_data_789A = .data:0x0000789A; // type:object size:0x6 data:string +lbl_1_data_77C8 = .data:0x000077C8; // type:object size:0x70 data:float +lbl_1_data_7838 = .data:0x00007838; // type:object size:0x1C data:2byte +lbl_1_data_7854 = .data:0x00007854; // type:object size:0x6 scope:local data:string +lbl_1_data_785A = .data:0x0000785A; // type:object size:0x6 scope:local data:string +lbl_1_data_7860 = .data:0x00007860; // type:object size:0x8 scope:local data:string +lbl_1_data_7868 = .data:0x00007868; // type:object size:0x6 scope:local data:string +lbl_1_data_786E = .data:0x0000786E; // type:object size:0x8 scope:local data:string +lbl_1_data_7876 = .data:0x00007876; // type:object size:0x6 scope:local data:string +lbl_1_data_787C = .data:0x0000787C; // type:object size:0x6 scope:local data:string +lbl_1_data_7882 = .data:0x00007882; // type:object size:0x6 scope:local data:string +lbl_1_data_7888 = .data:0x00007888; // type:object size:0x6 scope:local data:string +lbl_1_data_788E = .data:0x0000788E; // type:object size:0x6 scope:local data:string +lbl_1_data_7894 = .data:0x00007894; // type:object size:0x6 scope:local data:string +lbl_1_data_789A = .data:0x0000789A; // type:object size:0x6 scope:local data:string lbl_1_data_78A0 = .data:0x000078A0; // type:object size:0x20 -lbl_1_data_78C0 = .data:0x000078C0; // type:object size:0x30 +lbl_1_data_78C0 = .data:0x000078C0; // type:object size:0x30 data:float lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x20 @@ -316,7 +320,8 @@ lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:4byte lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x10 data:4byte -lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x8 data:4byte +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x4 data:4byte +lbl_1_bss_164 = .bss:0x00000164; // type:object size:0x4 data:4byte lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x4 data:4byte lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 61aba1d4..fea780ac 100644 --- a/configure.py +++ b/configure.py @@ -1136,7 +1136,7 @@ config.libs = [ Rel( "m439Dll", # Paths of Peril objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m439Dll/main.c"), + Object(Matching, "REL/m439Dll/main.c"), }, ), Rel( diff --git a/src/REL/m439Dll/main.c b/src/REL/m439Dll/main.c index 8e761bba..44c7927b 100644 --- a/src/REL/m439Dll/main.c +++ b/src/REL/m439Dll/main.c @@ -21,6 +21,7 @@ #include "ext_math.h" #include "REL/m439data.h" +#include "version.h" typedef struct camera_params { float zoom; @@ -28,34 +29,12 @@ typedef struct camera_params { Vec rot; } CameraViewParams; -CameraViewParams lbl_1_data_741C[] = { { - 4775, - -2800, - 0, - -7700, - 343, - 20, - 0, - }, - { - 5000, - 0, - 0, - 0, - 290, - 0, - 0, - }, - { - 2800, - 0, - 0, - -7600, - 347, - 0, - 0, - }, - { 2800, 0, 0, -7600, 290, 0, 0 } }; +CameraViewParams lbl_1_data_741C[] = { + { VERSION_NTSC ? 4775.0f : 4500.0f, -2800.0f, 0.0f, -7700.0f, 343.0f, 20.0f, 0.0f }, + { 5000.0f, 0.f, 0.0f, 0.0f, 290.0f, 0.0f, 0.0f }, + { 2800.0f, 0.f, 0.0f, -7600.0f, 347.0f, 0.0f, 0.0f }, + { 2800.0f, 0.f, 0.0f, -7600.0f, 290.0f, 0.0f, 0.0f }, +}; typedef struct struct_data_748C { s32 unk0; @@ -162,9 +141,9 @@ void fn_1_408(omObjData *object); void fn_1_384(omObjData *object) { fn_1_364(0); - lbl_1_bss_14C = 60; + lbl_1_bss_14C = REFRESH_RATE; lbl_1_bss_12E = 60; - lbl_1_bss_12C = 60; + lbl_1_bss_12C = REFRESH_RATE; WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); object->func = fn_1_408; } @@ -181,12 +160,12 @@ void fn_1_408(omObjData *object) { switch (fn_1_374()) { case 0: - if (lbl_1_bss_14C == 60) { + if (lbl_1_bss_14C == REFRESH_RATE) { HuAudFXPlay(1797); } if (--lbl_1_bss_14C == 0) { fn_1_364(1); - lbl_1_bss_14C = 120; + lbl_1_bss_14C = 2 * REFRESH_RATE; } break; @@ -227,7 +206,7 @@ void fn_1_408(omObjData *object) if (--lbl_1_bss_12C == 0) { lbl_1_bss_12E--; MGSeqParamSet(lbl_1_bss_30, 1, lbl_1_bss_12E); - lbl_1_bss_12C = 60; + lbl_1_bss_12C = REFRESH_RATE; } if (lbl_1_bss_130 >= 3 || lbl_1_bss_12E == 0) { fn_1_364(6); @@ -243,7 +222,7 @@ void fn_1_408(omObjData *object) } if (!MGSeqStatGet(lbl_1_bss_32)) { fn_1_364(7); - lbl_1_bss_14C = 60; + lbl_1_bss_14C = REFRESH_RATE; } break; @@ -257,7 +236,7 @@ void fn_1_408(omObjData *object) else { HuAudSStreamPlay(4); } - lbl_1_bss_14C = 210; + lbl_1_bss_14C = 3.5f * REFRESH_RATE; } break; @@ -823,7 +802,7 @@ void fn_1_2C84(omObjData *object) if (fn_1_374() >= 6 && !temp_r31->unk0_field2) { temp_r31->unk0_field7 = 1; temp_r31->unk12 = 2; - temp_r31->unk3E = 120; + temp_r31->unk3E = 2 * REFRESH_RATE; object->func = fn_1_3C1C; return; } @@ -852,18 +831,18 @@ void fn_1_2C84(omObjData *object) if (temp_f26 > 72) { temp_f26 = 72; } - temp_f23 = (10.0f * temp_f26) / 72.0f; + temp_f23 = ((600.0f / REFRESH_RATE) * temp_f26) / 72.0f; temp_r31->unk20.x = temp_f31 * temp_f23; temp_r31->unk20.z = temp_f30 * temp_f23; temp_r31->unk14.y = temp_f23; object->rot.y = fn_1_1024(object->rot.y, atan2d(temp_r31->unk20.x, temp_r31->unk20.z), 0.2f); - if (temp_r31->unk14.y < 7.5f) { + if (temp_r31->unk14.y < (450.0f / REFRESH_RATE)) { temp_r28 = 1; - temp_f25 = temp_r31->unk14.y / 7.5f; + temp_f25 = temp_r31->unk14.y / (450.0f / REFRESH_RATE); } else { temp_r28 = 2; - temp_f25 = temp_r31->unk14.y / 10.0f; + temp_f25 = temp_r31->unk14.y / (600.0f / REFRESH_RATE); } } else { @@ -900,7 +879,7 @@ void fn_1_2C84(omObjData *object) temp_r31->unk50.z = object->trans.z; temp_r31->unk68.y = -2000; temp_r31->unk12 = 2; - temp_r31->unk3E = 12; + temp_r31->unk3E = 0.2f * REFRESH_RATE; temp_r23 = Hu3DData[object->model[2]].unk_120; temp_r23->unk_00 = 0; VECSubtract(&temp_r31->unk5C, &object->trans, &temp_r23->unk_04); @@ -933,7 +912,7 @@ void fn_1_2C84(omObjData *object) temp_r31->unk0_field4 = 01; if (temp_r29 > 1 && temp_r29 < 6) { temp_r31->unk12++; - temp_r31->unk3E = 30; + temp_r31->unk3E = 0.5f * REFRESH_RATE; temp_r31->unk48 = CenterM[temp_r31->unk2].z; temp_r31->unk4C = object->trans.z - 350.0f; temp_r31->unk40 = lbl_1_data_75CC[temp_r31->unk46 - 1]; @@ -946,7 +925,7 @@ void fn_1_2C84(omObjData *object) if (--temp_r31->unk3E == 0) { temp_r31->unk12 = 0; } - CenterM[temp_r31->unk2].z = temp_r31->unk48 + ((temp_r31->unk4C - temp_r31->unk48) * cosd((temp_r31->unk3E * 90.0f) / 30.0f)); + CenterM[temp_r31->unk2].z = temp_r31->unk48 + ((temp_r31->unk4C - temp_r31->unk48) * cosd((temp_r31->unk3E * 90.0f) / (0.5f * REFRESH_RATE))); temp_r28 = 0; temp_f25 = 1; break; @@ -957,7 +936,7 @@ void fn_1_2C84(omObjData *object) temp_r24 = temp_r27->data; switch (temp_r24->unk4) { case 1: - temp_f28 = 1.0f - (temp_r24->unk24 / 90.0f); + temp_f28 = 1.0f - (temp_r24->unk24 / (1.5f * REFRESH_RATE)); object->trans.x = temp_r31->unk50.x + (temp_f28 * (temp_r31->unk5C.x - temp_r31->unk50.x)); object->trans.y = 100 + (-2000.0f * (temp_f28 - 0.1f)) * (temp_f28 - 0.1f); object->trans.z = temp_r31->unk50.z + (temp_f28 * (temp_r31->unk5C.z - temp_r31->unk50.z)); @@ -978,7 +957,7 @@ void fn_1_2C84(omObjData *object) if (temp_r31->unk3E) { temp_r31->unk3E--; } - temp_f28 = sind((temp_r31->unk3E / 30.0f) * 90.0f); + temp_f28 = sind((temp_r31->unk3E / (0.5f * REFRESH_RATE)) * 90.0f); object->trans.x = temp_r31->unk74.x - (temp_f28 * (temp_r31->unk74.x - temp_r31->unk68.x)); object->trans.y = temp_r31->unk74.y - (temp_f28 * (temp_r31->unk74.y - temp_r31->unk68.y)); object->trans.z = temp_r31->unk74.z - (temp_f28 * (temp_r31->unk74.z - temp_r31->unk68.z)); @@ -1032,7 +1011,7 @@ void fn_1_3C1C(omObjData *object) switch (temp_r31->unk12) { case 0: if (object->trans.z > -7600.0f) { - object->trans.z -= 3.75f; + object->trans.z -= 225.0f / REFRESH_RATE; } else { temp_r31->unk12++; @@ -1113,11 +1092,11 @@ void fn_1_4528(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk34.x = 100.0f * (0.2f * sind(temp_f31)); temp_r31->unk34.y = 0; temp_r31->unk34.z = 100.0f * (0.2f * cosd(temp_f31)); - temp_f30 = ((frand8() * 2.5f) / 256.0f) + (5.0f / 3.0f); + temp_f30 = ((frand8() * (150.0f / REFRESH_RATE)) / 256.0f) + (100.0f / REFRESH_RATE); temp_f31 = temp_f29 + (30.0f * (((s32)frand() & 0x1FF) - 256.0f) / 256.0f); temp_r31->unk08.x = temp_f30 * sind(temp_f31); temp_r31->unk08.z = temp_f30 * cosd(temp_f31); - temp_r31->unk08.y = (frand8() * (50.0f / 3.0f)) / 256.0f; + temp_r31->unk08.y = (frand8() * (1000.0f / REFRESH_RATE)) / 256.0f; temp_r31->unk40.r = temp_r31->unk40.g = temp_r31->unk40.b = temp_r31->unk40.a = 255; } } @@ -1128,7 +1107,7 @@ void fn_1_4528(ModelData *model, ParticleData *particle, Mtx matrix) temp_r28++; } else { - temp_r31->unk08.y += -0.50000006f; + temp_r31->unk08.y += VERSION_NTSC ? -0.50000006f : -0.6f; // -3.0f / REFRESH_RATE temp_r31->unk34.x += temp_r31->unk08.x; temp_r31->unk34.y += temp_r31->unk08.y; temp_r31->unk34.z += temp_r31->unk08.z; @@ -1193,7 +1172,7 @@ void fn_1_4AA8(omObjData *object) } Hu3DMotionSet(object->model[0], object->motion[0]); Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); - object->trans.y = 500; + object->trans.y = 500.0f; object->scale.x = object->scale.y = object->scale.z = 0.25f; if (work->unk2 == 0) { object->trans.x = -1800; @@ -1202,7 +1181,7 @@ void fn_1_4AA8(omObjData *object) object->rot.y = -90; object->func = fn_1_4CC0; Hu3DMotionSpeedSet(object->model[0], 2.0f); - work->unk24 = 60; + work->unk24 = REFRESH_RATE; } else { object->func = fn_1_4F54; @@ -1218,11 +1197,11 @@ void fn_1_4CC0(omObjData *object) Work4AA8 *work = object->data; float pan; Vec pos2D; - if (42.0f == work->unk24) { + if ((VERSION_NTSC ? 42.0f : 35.0f) == work->unk24) { HuAudFXPlay(1795); } if (work->unk24 == 0) { - object->trans.x -= 25.0f; + object->trans.x -= 1500.0f / REFRESH_RATE; } else { if (--work->unk24 == 0) { @@ -1273,7 +1252,7 @@ void fn_1_4F54(omObjData *object) case 0: if (object->work[3]) { work->unk4++; - work->unk24 = work->unk26 = 90; + work->unk24 = work->unk26 = 1.5f * REFRESH_RATE; temp_r29 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); object->trans.x = work->unk28.x = temp_r29[work->unk2]->trans.x; object->trans.y = work->unk28.y = 2000; @@ -1301,11 +1280,11 @@ void fn_1_4F54(omObjData *object) if (--work->unk24 == 0) { work->unk0 = 1; work->unk4++; - work->unk24 = 90; + work->unk24 = 1.5f * REFRESH_RATE; work->unk10 = (200.0f - object->trans.y) / work->unk24; object->rot.x = 0; } - if (60.0f == work->unk24) { + if (1.0f * REFRESH_RATE == work->unk24) { HuAudFXPlay(1796); } break; @@ -1314,7 +1293,7 @@ void fn_1_4F54(omObjData *object) object->trans.y += work->unk10; if (--work->unk24 == 0) { work->unk4++; - work->unk24 = work->unk26 = 48; + work->unk24 = work->unk26 = 0.8f * REFRESH_RATE; work->unk28.x = object->trans.x; work->unk28.y = object->trans.y; work->unk28.z = object->trans.z; @@ -1350,7 +1329,7 @@ void fn_1_4F54(omObjData *object) object->work[3] = 0; Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); } - if (work->unk24 == (int)(work->unk26 - 12.0f)) { + if (work->unk24 == (int)(work->unk26 - (0.2f * REFRESH_RATE))) { work->unk0 = 0; temp_r29 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); temp_r28 = temp_r29[work->unk2]->data; @@ -1686,7 +1665,7 @@ void fn_1_6DEC(omObjData *object) switch (object->work[0]) { case 0: if (fn_1_374() <= 3) { - CRotM[0].y -= 10.0f / 60.0f; + CRotM[0].y -= 10.0f / REFRESH_RATE; } if (fn_1_374() == 3) { Hu3DCameraCreate(15); From fcc2d922e8e8570b0c36e6daedc38f9e776d0846 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 17 Nov 2024 19:13:59 +0100 Subject: [PATCH 016/178] Port minigame_seq.c --- config/GMPP01_00/symbols.txt | 252 +- configure.py | 2 +- src/game/minigame_seq.c | 6535 +++++++++++++++++----------------- 3 files changed, 3401 insertions(+), 3388 deletions(-) diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index 33e87867..be859f5f 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -4940,12 +4940,12 @@ seqFontKanaTbl = .data:0x8012F1F0; // type:object size:0x52 scope:local seqFontNumTbl = .data:0x8012F242; // type:object size:0xB scope:local data:string letterBufTbl = .data:0x8012F250; // type:object size:0x14 scope:local wordMgTbl = .data:0x8012F264; // type:object size:0x18 scope:local -letterOfs$1002 = .data:0x8012F27C; // type:object size:0x40 -letterOfs$1479 = .data:0x8012F2BC; // type:object size:0x1C -letterOfs$1853 = .data:0x8012F2D8; // type:object size:0x38 -lbl_8012F310 = .data:0x8012F310; // type:object size:0xC data:string +letterOfs$1002 = .data:0x8012F27C; // type:object size:0x40 scope:local +letterOfs$1479 = .data:0x8012F2BC; // type:object size:0x1C scope:local +letterOfs$1853 = .data:0x8012F2D8; // type:object size:0x38 scope:local +lbl_8012F310 = .data:0x8012F310; // type:object size:0xC scope:local data:string winCharNameTbl = .data:0x8012F31C; // type:object size:0x78 scope:local -lbl_8012F394 = .data:0x8012F394; // type:object size:0xC +lbl_8012F394 = .data:0x8012F394; // type:object size:0xC scope:local winWordTbl = .data:0x8012F3A0; // type:object size:0x18 scope:local winPosOfs = .data:0x8012F3B8; // type:object size:0x50 scope:local practiceTbl = .data:0x8012F408; // type:object size:0xAC scope:local @@ -5806,43 +5806,43 @@ wordFinishJ = .sdata:0x801F0874; // type:object size:0x8 scope:local wordDrawJ = .sdata:0x801F087C; // type:object size:0x6 scope:local wordFinishE = .sdata:0x801F0882; // type:object size:0x8 scope:local data:string wordDrawE = .sdata:0x801F088A; // type:object size:0x6 scope:local data:string -lbl_801F0890 = .sdata:0x801F0890; // type:object size:0x4 -lbl_801F0894 = .sdata:0x801F0894; // type:object size:0x6 data:string -lbl_801F089A = .sdata:0x801F089A; // type:object size:0x6 -lbl_801F08A0 = .sdata:0x801F08A0; // type:object size:0x6 data:string -lbl_801F08A6 = .sdata:0x801F08A6; // type:object size:0x5 -lbl_801F08AB = .sdata:0x801F08AB; // type:object size:0x6 data:string -lbl_801F08B1 = .sdata:0x801F08B1; // type:object size:0x5 -lbl_801F08B6 = .sdata:0x801F08B6; // type:object size:0x6 data:string -lbl_801F08BC = .sdata:0x801F08BC; // type:object size:0x4 -lbl_801F08C0 = .sdata:0x801F08C0; // type:object size:0x6 data:string -lbl_801F08C6 = .sdata:0x801F08C6; // type:object size:0x6 -lbl_801F08CC = .sdata:0x801F08CC; // type:object size:0x5 data:string -lbl_801F08D1 = .sdata:0x801F08D1; // type:object size:0x7 -lbl_801F08D8 = .sdata:0x801F08D8; // type:object size:0x6 data:string -lbl_801F08DE = .sdata:0x801F08DE; // type:object size:0x7 -lbl_801F08E5 = .sdata:0x801F08E5; // type:object size:0x8 data:string -lbl_801F08ED = .sdata:0x801F08ED; // type:object size:0x5 -lbl_801F08F2 = .sdata:0x801F08F2; // type:object size:0x7 data:string -lbl_801F08F9 = .sdata:0x801F08F9; // type:object size:0x6 -lbl_801F08FF = .sdata:0x801F08FF; // type:object size:0x5 data:string -lbl_801F0904 = .sdata:0x801F0904; // type:object size:0x5 -lbl_801F0909 = .sdata:0x801F0909; // type:object size:0x8 data:string -lbl_801F0911 = .sdata:0x801F0911; // type:object size:0x4 -lbl_801F0915 = .sdata:0x801F0915; // type:object size:0x4 data:string -lbl_801F0919 = .sdata:0x801F0919; // type:object size:0x5 -lbl_801F091E = .sdata:0x801F091E; // type:object size:0x6 data:string -lbl_801F0924 = .sdata:0x801F0924; // type:object size:0x7 -lbl_801F092B = .sdata:0x801F092B; // type:object size:0x6 -lbl_801F0931 = .sdata:0x801F0931; // type:object size:0x7 data:string -lbl_801F0938 = .sdata:0x801F0938; // type:object size:0x3 -lbl_801F093B = .sdata:0x801F093B; // type:object size:0x5 data:string -lbl_801F0940 = .sdata:0x801F0940; // type:object size:0x6 -lbl_801F0946 = .sdata:0x801F0946; // type:object size:0x5 data:string -lbl_801F094B = .sdata:0x801F094B; // type:object size:0x7 -lbl_801F0952 = .sdata:0x801F0952; // type:object size:0x6 -lbl_801F0958 = .sdata:0x801F0958; // type:object size:0x8 -pauseStr$2309 = .sdata:0x801F0960; // type:object size:0x8 +lbl_801F0890 = .sdata:0x801F0890; // type:object size:0x4 scope:local +lbl_801F0894 = .sdata:0x801F0894; // type:object size:0x6 scope:local data:string +lbl_801F089A = .sdata:0x801F089A; // type:object size:0x6 scope:local +lbl_801F08A0 = .sdata:0x801F08A0; // type:object size:0x6 scope:local data:string +lbl_801F08A6 = .sdata:0x801F08A6; // type:object size:0x5 scope:local +lbl_801F08AB = .sdata:0x801F08AB; // type:object size:0x6 scope:local data:string +lbl_801F08B1 = .sdata:0x801F08B1; // type:object size:0x5 scope:local +lbl_801F08B6 = .sdata:0x801F08B6; // type:object size:0x6 scope:local data:string +lbl_801F08BC = .sdata:0x801F08BC; // type:object size:0x4 scope:local +lbl_801F08C0 = .sdata:0x801F08C0; // type:object size:0x6 scope:local data:string +lbl_801F08C6 = .sdata:0x801F08C6; // type:object size:0x6 scope:local +lbl_801F08CC = .sdata:0x801F08CC; // type:object size:0x5 scope:local data:string +lbl_801F08D1 = .sdata:0x801F08D1; // type:object size:0x7 scope:local +lbl_801F08D8 = .sdata:0x801F08D8; // type:object size:0x6 scope:local data:string +lbl_801F08DE = .sdata:0x801F08DE; // type:object size:0x7 scope:local +lbl_801F08E5 = .sdata:0x801F08E5; // type:object size:0x8 scope:local data:string +lbl_801F08ED = .sdata:0x801F08ED; // type:object size:0x5 scope:local +lbl_801F08F2 = .sdata:0x801F08F2; // type:object size:0x7 scope:local data:string +lbl_801F08F9 = .sdata:0x801F08F9; // type:object size:0x6 scope:local +lbl_801F08FF = .sdata:0x801F08FF; // type:object size:0x5 scope:local data:string +lbl_801F0904 = .sdata:0x801F0904; // type:object size:0x5 scope:local +lbl_801F0909 = .sdata:0x801F0909; // type:object size:0x8 scope:local data:string +lbl_801F0911 = .sdata:0x801F0911; // type:object size:0x4 scope:local +lbl_801F0915 = .sdata:0x801F0915; // type:object size:0x4 scope:local data:string +lbl_801F0919 = .sdata:0x801F0919; // type:object size:0x5 scope:local +lbl_801F091E = .sdata:0x801F091E; // type:object size:0x6 scope:local data:string +lbl_801F0924 = .sdata:0x801F0924; // type:object size:0x7 scope:local +lbl_801F092B = .sdata:0x801F092B; // type:object size:0x6 scope:local +lbl_801F0931 = .sdata:0x801F0931; // type:object size:0x7 scope:local data:string +lbl_801F0938 = .sdata:0x801F0938; // type:object size:0x3 scope:local +lbl_801F093B = .sdata:0x801F093B; // type:object size:0x5 scope:local data:string +lbl_801F0940 = .sdata:0x801F0940; // type:object size:0x6 scope:local +lbl_801F0946 = .sdata:0x801F0946; // type:object size:0x5 scope:local data:string +lbl_801F094B = .sdata:0x801F094B; // type:object size:0x7 scope:local +lbl_801F0952 = .sdata:0x801F0952; // type:object size:0x6 scope:local +lbl_801F0958 = .sdata:0x801F0958; // type:object size:0x8 scope:local +pauseStr$2309 = .sdata:0x801F0960; // type:object size:0x8 scope:local lbl_801F0968 = .sdata:0x801F0968; // type:object size:0x8 scope:local lbl_801F0970 = .sdata:0x801F0970; // type:object size:0x8 lbl_801F0978 = .sdata:0x801F0978; // type:object size:0x8 @@ -7115,90 +7115,90 @@ lbl_801F2090 = .sdata2:0x801F2090; // type:object size:0x4 data:float lbl_801F2094 = .sdata2:0x801F2094; // type:object size:0x4 data:float lbl_801F2098 = .sdata2:0x801F2098; // type:object size:0x4 data:float lbl_801F20A0 = .sdata2:0x801F20A0; // type:object size:0x8 data:double -lbl_801F20A8 = .sdata2:0x801F20A8; // type:object size:0x4 data:float -lbl_801F20AC = .sdata2:0x801F20AC; // type:object size:0x4 data:float -lbl_801F20B0 = .sdata2:0x801F20B0; // type:object size:0x4 data:float -lbl_801F20B8 = .sdata2:0x801F20B8; // type:object size:0x8 data:double -lbl_801F20C0 = .sdata2:0x801F20C0; // type:object size:0x8 data:double -lbl_801F20C8 = .sdata2:0x801F20C8; // type:object size:0x8 data:double -lbl_801F20D0 = .sdata2:0x801F20D0; // type:object size:0x8 data:double -lbl_801F20D8 = .sdata2:0x801F20D8; // type:object size:0x8 data:double -lbl_801F20E0 = .sdata2:0x801F20E0; // type:object size:0x8 data:double -lbl_801F20E8 = .sdata2:0x801F20E8; // type:object size:0x4 data:float -lbl_801F20EC = .sdata2:0x801F20EC; // type:object size:0x4 data:float -lbl_801F20F0 = .sdata2:0x801F20F0; // type:object size:0x8 data:double -lbl_801F20F8 = .sdata2:0x801F20F8; // type:object size:0x4 data:float -lbl_801F20FC = .sdata2:0x801F20FC; // type:object size:0x4 data:float -lbl_801F2100 = .sdata2:0x801F2100; // type:object size:0x4 data:float -lbl_801F2104 = .sdata2:0x801F2104; // type:object size:0x4 data:float -lbl_801F2108 = .sdata2:0x801F2108; // type:object size:0x4 data:float -lbl_801F210C = .sdata2:0x801F210C; // type:object size:0x4 data:float -lbl_801F2110 = .sdata2:0x801F2110; // type:object size:0x4 data:float -lbl_801F2114 = .sdata2:0x801F2114; // type:object size:0x4 data:float -lbl_801F2118 = .sdata2:0x801F2118; // type:object size:0x4 data:float -lbl_801F211C = .sdata2:0x801F211C; // type:object size:0x4 data:float -lbl_801F2120 = .sdata2:0x801F2120; // type:object size:0x4 data:float -lbl_801F2124 = .sdata2:0x801F2124; // type:object size:0x4 data:float -lbl_801F2128 = .sdata2:0x801F2128; // type:object size:0x4 data:float -lbl_801F212C = .sdata2:0x801F212C; // type:object size:0x4 data:float -lbl_801F2130 = .sdata2:0x801F2130; // type:object size:0x4 data:float -lbl_801F2134 = .sdata2:0x801F2134; // type:object size:0x4 data:float -lbl_801F2138 = .sdata2:0x801F2138; // type:object size:0x4 data:float -lbl_801F213C = .sdata2:0x801F213C; // type:object size:0x4 data:float -lbl_801F2140 = .sdata2:0x801F2140; // type:object size:0x8 data:double -lbl_801F2148 = .sdata2:0x801F2148; // type:object size:0x4 data:float -lbl_801F214C = .sdata2:0x801F214C; // type:object size:0x4 data:float -lbl_801F2150 = .sdata2:0x801F2150; // type:object size:0x8 data:double -lbl_801F2158 = .sdata2:0x801F2158; // type:object size:0x8 data:double -lbl_801F2160 = .sdata2:0x801F2160; // type:object size:0x4 data:float -lbl_801F2164 = .sdata2:0x801F2164; // type:object size:0x4 data:float -lbl_801F2168 = .sdata2:0x801F2168; // type:object size:0x8 data:double -lbl_801F2170 = .sdata2:0x801F2170; // type:object size:0x4 data:float -lbl_801F2174 = .sdata2:0x801F2174; // type:object size:0x4 data:float -lbl_801F2178 = .sdata2:0x801F2178; // type:object size:0x4 data:float -lbl_801F217C = .sdata2:0x801F217C; // type:object size:0x4 data:float -lbl_801F2180 = .sdata2:0x801F2180; // type:object size:0x4 data:float -lbl_801F2188 = .sdata2:0x801F2188; // type:object size:0x8 data:double -lbl_801F2190 = .sdata2:0x801F2190; // type:object size:0x4 data:float -lbl_801F2198 = .sdata2:0x801F2198; // type:object size:0x8 data:double -lbl_801F21A0 = .sdata2:0x801F21A0; // type:object size:0x4 data:float -lbl_801F21A4 = .sdata2:0x801F21A4; // type:object size:0x4 data:float -lbl_801F21A8 = .sdata2:0x801F21A8; // type:object size:0x4 data:float -lbl_801F21AC = .sdata2:0x801F21AC; // type:object size:0x4 data:float -lbl_801F21B0 = .sdata2:0x801F21B0; // type:object size:0x8 data:double -lbl_801F21B8 = .sdata2:0x801F21B8; // type:object size:0x4 data:float -lbl_801F21C0 = .sdata2:0x801F21C0; // type:object size:0x8 data:double -lbl_801F21C8 = .sdata2:0x801F21C8; // type:object size:0x8 data:double -lbl_801F21D0 = .sdata2:0x801F21D0; // type:object size:0x8 data:double -lbl_801F21D8 = .sdata2:0x801F21D8; // type:object size:0x4 data:float -lbl_801F21E0 = .sdata2:0x801F21E0; // type:object size:0x8 data:double -lbl_801F21E8 = .sdata2:0x801F21E8; // type:object size:0x4 data:float -lbl_801F21EC = .sdata2:0x801F21EC; // type:object size:0x4 data:float -lbl_801F21F0 = .sdata2:0x801F21F0; // type:object size:0x4 data:float -lbl_801F21F4 = .sdata2:0x801F21F4; // type:object size:0x4 data:float -lbl_801F21F8 = .sdata2:0x801F21F8; // type:object size:0x4 data:float -lbl_801F21FC = .sdata2:0x801F21FC; // type:object size:0x4 data:float -lbl_801F2200 = .sdata2:0x801F2200; // type:object size:0x4 data:float -lbl_801F2208 = .sdata2:0x801F2208; // type:object size:0x8 data:double -lbl_801F2210 = .sdata2:0x801F2210; // type:object size:0x8 data:double -lbl_801F2218 = .sdata2:0x801F2218; // type:object size:0x8 data:double -lbl_801F2220 = .sdata2:0x801F2220; // type:object size:0x2 data:2byte -lbl_801F2222 = .sdata2:0x801F2222; // type:object size:0x2 data:2byte -lbl_801F2224 = .sdata2:0x801F2224; // type:object size:0x2 data:2byte -lbl_801F2228 = .sdata2:0x801F2228; // type:object size:0x4 data:float -lbl_801F222C = .sdata2:0x801F222C; // type:object size:0x4 data:float -lbl_801F2230 = .sdata2:0x801F2230; // type:object size:0x4 data:float -lbl_801F2234 = .sdata2:0x801F2234; // type:object size:0x4 data:float -lbl_801F2238 = .sdata2:0x801F2238; // type:object size:0x4 data:float -lbl_801F223C = .sdata2:0x801F223C; // type:object size:0x4 data:float -lbl_801F2240 = .sdata2:0x801F2240; // type:object size:0x4 data:float -lbl_801F2244 = .sdata2:0x801F2244; // type:object size:0x4 data:float -lbl_801F2248 = .sdata2:0x801F2248; // type:object size:0x4 data:float -lbl_801F224C = .sdata2:0x801F224C; // type:object size:0x4 data:float -lbl_801F2250 = .sdata2:0x801F2250; // type:object size:0x8 data:double -lbl_801F2258 = .sdata2:0x801F2258; // type:object size:0x8 data:double -lbl_801F2260 = .sdata2:0x801F2260; // type:object size:0x4 data:float -lbl_801F2264 = .sdata2:0x801F2264; // type:object size:0x4 data:float +lbl_801F20A8 = .sdata2:0x801F20A8; // type:object size:0x4 scope:local data:float +lbl_801F20AC = .sdata2:0x801F20AC; // type:object size:0x4 scope:local data:float +lbl_801F20B0 = .sdata2:0x801F20B0; // type:object size:0x4 scope:local data:float +lbl_801F20B8 = .sdata2:0x801F20B8; // type:object size:0x8 scope:local data:double +lbl_801F20C0 = .sdata2:0x801F20C0; // type:object size:0x8 scope:local data:double +lbl_801F20C8 = .sdata2:0x801F20C8; // type:object size:0x8 scope:local data:double +lbl_801F20D0 = .sdata2:0x801F20D0; // type:object size:0x8 scope:local data:double +lbl_801F20D8 = .sdata2:0x801F20D8; // type:object size:0x8 scope:local data:double +lbl_801F20E0 = .sdata2:0x801F20E0; // type:object size:0x8 scope:local data:double +lbl_801F20E8 = .sdata2:0x801F20E8; // type:object size:0x4 scope:local data:float +lbl_801F20EC = .sdata2:0x801F20EC; // type:object size:0x4 scope:local data:float +lbl_801F20F0 = .sdata2:0x801F20F0; // type:object size:0x8 scope:local data:double +lbl_801F20F8 = .sdata2:0x801F20F8; // type:object size:0x4 scope:local data:float +lbl_801F20FC = .sdata2:0x801F20FC; // type:object size:0x4 scope:local data:float +lbl_801F2100 = .sdata2:0x801F2100; // type:object size:0x4 scope:local data:float +lbl_801F2104 = .sdata2:0x801F2104; // type:object size:0x4 scope:local data:float +lbl_801F2108 = .sdata2:0x801F2108; // type:object size:0x4 scope:local data:float +lbl_801F210C = .sdata2:0x801F210C; // type:object size:0x4 scope:local data:float +lbl_801F2110 = .sdata2:0x801F2110; // type:object size:0x4 scope:local data:float +lbl_801F2114 = .sdata2:0x801F2114; // type:object size:0x4 scope:local data:float +lbl_801F2118 = .sdata2:0x801F2118; // type:object size:0x4 scope:local data:float +lbl_801F211C = .sdata2:0x801F211C; // type:object size:0x4 scope:local data:float +lbl_801F2120 = .sdata2:0x801F2120; // type:object size:0x4 scope:local data:float +lbl_801F2124 = .sdata2:0x801F2124; // type:object size:0x4 scope:local data:float +lbl_801F2128 = .sdata2:0x801F2128; // type:object size:0x4 scope:local data:float +lbl_801F212C = .sdata2:0x801F212C; // type:object size:0x4 scope:local data:float +lbl_801F2130 = .sdata2:0x801F2130; // type:object size:0x4 scope:local data:float +lbl_801F2134 = .sdata2:0x801F2134; // type:object size:0x4 scope:local data:float +lbl_801F2138 = .sdata2:0x801F2138; // type:object size:0x4 scope:local data:float +lbl_801F213C = .sdata2:0x801F213C; // type:object size:0x4 scope:local data:float +lbl_801F2140 = .sdata2:0x801F2140; // type:object size:0x8 scope:local data:double +lbl_801F2148 = .sdata2:0x801F2148; // type:object size:0x4 scope:local data:float +lbl_801F214C = .sdata2:0x801F214C; // type:object size:0x4 scope:local data:float +lbl_801F2150 = .sdata2:0x801F2150; // type:object size:0x8 scope:local data:double +lbl_801F2158 = .sdata2:0x801F2158; // type:object size:0x8 scope:local data:double +lbl_801F2160 = .sdata2:0x801F2160; // type:object size:0x4 scope:local data:float +lbl_801F2164 = .sdata2:0x801F2164; // type:object size:0x4 scope:local data:float +lbl_801F2168 = .sdata2:0x801F2168; // type:object size:0x8 scope:local data:double +lbl_801F2170 = .sdata2:0x801F2170; // type:object size:0x4 scope:local data:float +lbl_801F2174 = .sdata2:0x801F2174; // type:object size:0x4 scope:local data:float +lbl_801F2178 = .sdata2:0x801F2178; // type:object size:0x4 scope:local data:float +lbl_801F217C = .sdata2:0x801F217C; // type:object size:0x4 scope:local data:float +lbl_801F2180 = .sdata2:0x801F2180; // type:object size:0x4 scope:local data:float +lbl_801F2188 = .sdata2:0x801F2188; // type:object size:0x8 scope:local data:double +lbl_801F2190 = .sdata2:0x801F2190; // type:object size:0x4 scope:local data:float +lbl_801F2198 = .sdata2:0x801F2198; // type:object size:0x8 scope:local data:double +lbl_801F21A0 = .sdata2:0x801F21A0; // type:object size:0x4 scope:local data:float +lbl_801F21A4 = .sdata2:0x801F21A4; // type:object size:0x4 scope:local data:float +lbl_801F21A8 = .sdata2:0x801F21A8; // type:object size:0x4 scope:local data:float +lbl_801F21AC = .sdata2:0x801F21AC; // type:object size:0x4 scope:local data:float +lbl_801F21B0 = .sdata2:0x801F21B0; // type:object size:0x8 scope:local data:double +lbl_801F21B8 = .sdata2:0x801F21B8; // type:object size:0x4 scope:local data:float +lbl_801F21C0 = .sdata2:0x801F21C0; // type:object size:0x8 scope:local data:double +lbl_801F21C8 = .sdata2:0x801F21C8; // type:object size:0x8 scope:local data:double +lbl_801F21D0 = .sdata2:0x801F21D0; // type:object size:0x8 scope:local data:double +lbl_801F21D8 = .sdata2:0x801F21D8; // type:object size:0x4 scope:local data:float +lbl_801F21E0 = .sdata2:0x801F21E0; // type:object size:0x8 scope:local data:double +lbl_801F21E8 = .sdata2:0x801F21E8; // type:object size:0x4 scope:local data:float +lbl_801F21EC = .sdata2:0x801F21EC; // type:object size:0x4 scope:local data:float +lbl_801F21F0 = .sdata2:0x801F21F0; // type:object size:0x4 scope:local data:float +lbl_801F21F4 = .sdata2:0x801F21F4; // type:object size:0x4 scope:local data:float +lbl_801F21F8 = .sdata2:0x801F21F8; // type:object size:0x4 scope:local data:float +lbl_801F21FC = .sdata2:0x801F21FC; // type:object size:0x4 scope:local data:float +lbl_801F2200 = .sdata2:0x801F2200; // type:object size:0x4 scope:local data:float +lbl_801F2208 = .sdata2:0x801F2208; // type:object size:0x8 scope:local data:double +lbl_801F2210 = .sdata2:0x801F2210; // type:object size:0x8 scope:local data:double +lbl_801F2218 = .sdata2:0x801F2218; // type:object size:0x8 scope:local data:double +lbl_801F2220 = .sdata2:0x801F2220; // type:object size:0x2 scope:local data:2byte +lbl_801F2222 = .sdata2:0x801F2222; // type:object size:0x2 scope:local data:2byte +lbl_801F2224 = .sdata2:0x801F2224; // type:object size:0x2 scope:local data:2byte +lbl_801F2228 = .sdata2:0x801F2228; // type:object size:0x4 scope:local data:float +lbl_801F222C = .sdata2:0x801F222C; // type:object size:0x4 scope:local data:float +lbl_801F2230 = .sdata2:0x801F2230; // type:object size:0x4 scope:local data:float +lbl_801F2234 = .sdata2:0x801F2234; // type:object size:0x4 scope:local data:float +lbl_801F2238 = .sdata2:0x801F2238; // type:object size:0x4 scope:local data:float +lbl_801F223C = .sdata2:0x801F223C; // type:object size:0x4 scope:local data:float +lbl_801F2240 = .sdata2:0x801F2240; // type:object size:0x4 scope:local data:float +lbl_801F2244 = .sdata2:0x801F2244; // type:object size:0x4 scope:local data:float +lbl_801F2248 = .sdata2:0x801F2248; // type:object size:0x4 scope:local data:float +lbl_801F224C = .sdata2:0x801F224C; // type:object size:0x4 scope:local data:float +lbl_801F2250 = .sdata2:0x801F2250; // type:object size:0x8 scope:local data:double +lbl_801F2258 = .sdata2:0x801F2258; // type:object size:0x8 scope:local data:double +lbl_801F2260 = .sdata2:0x801F2260; // type:object size:0x4 scope:local data:float +lbl_801F2264 = .sdata2:0x801F2264; // type:object size:0x4 scope:local data:float lbl_801F2268 = .sdata2:0x801F2268; // type:object size:0x4 data:float lbl_801F2270 = .sdata2:0x801F2270; // type:object size:0x8 data:double lbl_801F2278 = .sdata2:0x801F2278; // type:object size:0x8 data:double diff --git a/configure.py b/configure.py index fea780ac..5e690faf 100644 --- a/configure.py +++ b/configure.py @@ -402,7 +402,7 @@ config.libs = [ Object(Matching, "game/frand.c"), Object(Matching, "game/audio.c"), Object(Matching, "game/EnvelopeExec.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/minigame_seq.c"), + Object(Matching, "game/minigame_seq.c"), Object(Matching, "game/ovllist.c"), Object(Matching, "game/esprite.c"), Object(Matching, "game/code_8003FF68.c"), diff --git a/src/game/minigame_seq.c b/src/game/minigame_seq.c index ca883739..b163d790 100644 --- a/src/game/minigame_seq.c +++ b/src/game/minigame_seq.c @@ -1,36 +1,36 @@ #include "game/armem.h" -#include "game/sprite.h" -#include "game/process.h" +#include "game/disp.h" #include "game/gamework_data.h" -#include "game/objsub.h" -#include "game/object.h" #include "game/hsfman.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/process.h" +#include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "game/pad.h" -#include "game/disp.h" #include "game/minigame_seq.h" #include "math.h" #include "stdarg.h" +#include "version.h" #undef abs #define ABS(x) (((x) < 0) ? -(x) : (x)) - extern s16 HuSysVWaitGet(s16 param); typedef struct seq_info { - SeqInitFunc init; - SeqUpdateFunc update; - float x; - float y; - float scale_x; - float scale_y; - s32 time_max; + SeqInitFunc init; + SeqUpdateFunc update; + float x; + float y; + float scale_x; + float scale_y; + s32 time_max; } SeqInfo; static s32 SeqInitTimer(SeqWork *work, va_list params); @@ -61,54 +61,41 @@ static s32 SeqUpdateFlip(SeqWork *work); OverlayID mgSeqOvlPrev = OVL_INVALID; static SeqInfo seqInfoTbl[] = { - { NULL, NULL, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, - { SeqInitTimer, SeqUpdateTimer, HU_DISP_CENTERX+4, 64.0f, 1.0f, 1.0f, 60 }, - { SeqInitType2, SeqUpdateType2, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 0.5f, 0.5f, 60 }, - { SeqInitMGBasic, SeqUpdateMGBasic, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMG1vs3, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitWin, SeqUpdateWin, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMGBattle, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMGStory, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGBasic, SeqUpdateMGBasic, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMG2vs2, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitFlip, SeqUpdateFlip, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMGBowser, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitWin, SeqUpdateWin, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitDraw, SeqUpdateDraw, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, - { SeqInitRecord, SeqUpdateRecord, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { NULL, NULL, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, - { NULL, NULL, HU_DISP_CENTERX+4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, + { NULL, NULL, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, + { SeqInitTimer, SeqUpdateTimer, HU_DISP_CENTERX + 4, 64.0f, 1.0f, 1.0f, 60 }, + { SeqInitType2, SeqUpdateType2, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 0.5f, 0.5f, 60 }, + { SeqInitMGBasic, SeqUpdateMGBasic, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitMGCommon, SeqUpdateMG1vs3, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitWin, SeqUpdateWin, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitMGCommon, SeqUpdateMGBattle, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitMGCommon, SeqUpdateMGStory, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitMGBasic, SeqUpdateMGBasic, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitMGCommon, SeqUpdateMG2vs2, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitFlip, SeqUpdateFlip, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitMGCommon, SeqUpdateMGBowser, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitWin, SeqUpdateWin, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { SeqInitDraw, SeqUpdateDraw, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, + { SeqInitRecord, SeqUpdateRecord, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { NULL, NULL, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, + { NULL, NULL, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, }; -static s32 seqType2SprTbl[6] = { - 0, 0, 0, 0, 0, 0 -}; +static s32 seqType2SprTbl[6] = { 0, 0, 0, 0, 0, 0 }; -static s16 mgSeqTypeTbl[9] = { - MG_SEQ_TYPE_4P, - MG_SEQ_TYPE_1VS3, - MG_SEQ_TYPE_2VS2, - MG_SEQ_TYPE_BOWSER, - MG_SEQ_TYPE_BATTLE, - MG_SEQ_TYPE_PINBALL, - MG_SEQ_TYPE_STORY, - MG_SEQ_TYPE_BOWSER, - MG_SEQ_TYPE_STORY -}; +static s16 mgSeqTypeTbl[9] = { MG_SEQ_TYPE_4P, MG_SEQ_TYPE_1VS3, MG_SEQ_TYPE_2VS2, MG_SEQ_TYPE_BOWSER, MG_SEQ_TYPE_BATTLE, MG_SEQ_TYPE_PINBALL, + MG_SEQ_TYPE_STORY, MG_SEQ_TYPE_BOWSER, MG_SEQ_TYPE_STORY }; -static char lbl_8012F336[] = { - "アイウエオカキク" - "ケコサシスセソタ" - "チツテトナニヌネ" - "ノハヒフヘホマミ" - "ムメモヤユヨラリ" - "ルレロワヲンァィ" - "ゥェォャュョッカ" - "キクコサシスセソ" - "タチツテトハヒフ" - "ヘホハヒフヘホ" - "!?ー" -}; +static char lbl_8012F336[] = { "アイウエオカキク" + "ケコサシスセソタ" + "チツテトナニヌネ" + "ノハヒフヘホマミ" + "ムメモヤユヨラリ" + "ルレロワヲンァィ" + "ゥェォャュョッカ" + "キクコサシスセソ" + "タチツテトハヒフ" + "ヘホハヒフヘホ" + "!?ー" }; static char lbl_8012F389[] = "x first\n"; static char lbl_8012F392[] = "y first\n"; @@ -129,645 +116,657 @@ static s32 seqLanguage; void fn_80036BC8(void); - void MGSeqInit(void) { - s32 i; - SeqWork *work; - work = &seqWorkData[0]; - for(i=8; i!=0; i--, work++) { - work->seq_no = 0; - work->data = NULL; - } - seqPauseF = 0; - seqDoneF = 0; - lbl_801D3D94 = 0; - seqTimer = 30; - HuAR_DVDtoARAM(DATADIR_GAMEMES); - HuAR_DVDtoARAM(DATADIR_MGCONST); - while(HuARDMACheck()); - fn_80036BC8(); - mgSeqOvlPrev = -1; - seqLanguage = GWLanguageGet(); + s32 i; + SeqWork *work; + work = &seqWorkData[0]; + for (i = 8; i != 0; i--, work++) { + work->seq_no = 0; + work->data = NULL; + } + seqPauseF = 0; + seqDoneF = 0; + lbl_801D3D94 = 0; + seqTimer = 30; + HuAR_DVDtoARAM(DATADIR_GAMEMES); + HuAR_DVDtoARAM(DATADIR_MGCONST); + while (HuARDMACheck()) + ; + fn_80036BC8(); + mgSeqOvlPrev = -1; + seqLanguage = GWLanguageGet(); } void MGSeqMain(void) { - SeqInfo *info; - s32 i; - s32 j; - s32 alive_flag; - u8 stat; - SeqWork *work; - - seqSpeed = HuSysVWaitGet(seqSpeed); - if(Hu3DPauseF) { - return; - } - alive_flag = 0; - stat = 0; - work = &seqWorkData[0]; - for(i=0; i<8; i++, work++) { - if(work->stat == 0) { - continue; - } - if(work->update) { - alive_flag = work->update(work); - } else { - info = &seqInfoTbl[work->seq_no]; - if(work->seq_no != 0 && NULL != info->update) { - alive_flag = info->update(work); - } - } - if(!alive_flag) { - work->stat = 0; - if(!lbl_801D3D94) { - for(j=0; j<8; j++) { - if(seqWorkData[j].stat) { - break; - } - } - } - if(!work->data) { - HuMemDirectFree(work->data); - work->data = NULL; - } - } - stat |= work->stat; - } - if(!stat || stat & 0x4) { - if(seqTimer > 0) { - seqTimer -= seqSpeed; - } - } + SeqInfo *info; + s32 i; + s32 j; + s32 alive_flag; + u8 stat; + SeqWork *work; + + seqSpeed = HuSysVWaitGet(seqSpeed); + if (Hu3DPauseF) { + return; + } + alive_flag = 0; + stat = 0; + work = &seqWorkData[0]; + for (i = 0; i < 8; i++, work++) { + if (work->stat == 0) { + continue; + } + if (work->update) { + alive_flag = work->update(work); + } + else { + info = &seqInfoTbl[work->seq_no]; + if (work->seq_no != 0 && NULL != info->update) { + alive_flag = info->update(work); + } + } + if (!alive_flag) { + work->stat = 0; + if (!lbl_801D3D94) { + for (j = 0; j < 8; j++) { + if (seqWorkData[j].stat) { + break; + } + } + } + if (!work->data) { + HuMemDirectFree(work->data); + work->data = NULL; + } + } + stat |= work->stat; + } + if (!stat || stat & 0x4) { + if (seqTimer > 0) { + seqTimer -= seqSpeed; + } + } } static s16 CreateSeq(s16 seq_no, va_list params) { - SeqWork *work; - SeqInfo *info; - s32 i; - s32 temp; - work = seqWorkData; - info = &seqInfoTbl[(u8)seq_no]; - for(i=0; i<8; i++, work++) { - if(work->stat == 0) { - break; - } - } - if(i >= 8) { - return -1; - } - work->stat |= 0x1; - if(work->data) { - HuMemDirectFree(work->data); - } - work->data = NULL; - work->seq_no = (u8)seq_no; - work->time = 0; - work->x = info->x; - work->y = info->y; - work->scale_x = info->scale_x; - work->scale_y = info->scale_y; - work->unk_18 = 0.0f; - work->unk_7D = 255; - work->time_max = info->time_max; - work->timer_val = work->state = work->alt_word_len = work->word_len = 0; - work->angle = work->win_scale = 0.0f; - work->param[0] = work->param[1] = 0; - for(temp=0; temp<16; temp++) { - work->sprite[temp] = work->spr_grp[temp] = -1; - } - if(NULL != info->init) { - temp = info->init(work, params); - if(temp == 0) { - work->stat = 0; - return -1; - } - } - seqTimer = 30; - return i; + SeqWork *work; + SeqInfo *info; + s32 i; + s32 temp; + work = seqWorkData; + info = &seqInfoTbl[(u8)seq_no]; + for (i = 0; i < 8; i++, work++) { + if (work->stat == 0) { + break; + } + } + if (i >= 8) { + return -1; + } + work->stat |= 0x1; + if (work->data) { + HuMemDirectFree(work->data); + } + work->data = NULL; + work->seq_no = (u8)seq_no; + work->time = 0; + work->x = info->x; + work->y = info->y; + work->scale_x = info->scale_x; + work->scale_y = info->scale_y; + work->unk_18 = 0.0f; + work->unk_7D = 255; + work->time_max = info->time_max; + work->timer_val = work->state = work->alt_word_len = work->word_len = 0; + work->angle = work->win_scale = 0.0f; + work->param[0] = work->param[1] = 0; + for (temp = 0; temp < 16; temp++) { + work->sprite[temp] = work->spr_grp[temp] = -1; + } + if (NULL != info->init) { + temp = info->init(work, params); + if (temp == 0) { + work->stat = 0; + return -1; + } + } + seqTimer = 30; + return i; } s16 MGSeqCreate(s16 type, ...) { - s16 ret; - va_list params; - va_start(params, type); - if(type == MG_SEQ_TYPE_AUTO) { - if(GWSystem.mg_next == 0xFFFF) { - type = MG_SEQ_TYPE_4P; - } else { - type = mgSeqTypeTbl[mgInfoTbl[GWSystem.mg_next].type]; - } - } - ret = CreateSeq(type, params); - va_end(params); - return ret; + s16 ret; + va_list params; + va_start(params, type); + if (type == MG_SEQ_TYPE_AUTO) { + if (GWSystem.mg_next == 0xFFFF) { + type = MG_SEQ_TYPE_4P; + } + else { + type = mgSeqTypeTbl[mgInfoTbl[GWSystem.mg_next].type]; + } + } + ret = CreateSeq(type, params); + va_end(params); + return ret; } u8 MGSeqStatGet(s16 id) { - SeqWork *work; - u8 ret = 0; - if(id < 0) { - s32 i; - work = seqWorkData; - for(i=8; i != 0; i--, work++) { - ret |= work->stat; - } - } else { - if(id < 8) { - ret = seqWorkData[id].stat; - } - } - return ret; + SeqWork *work; + u8 ret = 0; + if (id < 0) { + s32 i; + work = seqWorkData; + for (i = 8; i != 0; i--, work++) { + ret |= work->stat; + } + } + else { + if (id < 8) { + ret = seqWorkData[id].stat; + } + } + return ret; } void MGSeqPosSet(s16 id, float x, float y) { - if(id >= 0 && id < 8) { - seqWorkData[id].x = x; - seqWorkData[id].y = y; - } + if (id >= 0 && id < 8) { + seqWorkData[id].x = x; + seqWorkData[id].y = y; + } } void MGSeqParamSet(s16 id, s16 param1, s16 param2) { - if(id >= 0 && id < 8) { - seqWorkData[id].param[0] = param1; - seqWorkData[id].param[1] = param2; - } + if (id >= 0 && id < 8) { + seqWorkData[id].param[0] = param1; + seqWorkData[id].param[1] = param2; + } } void MGSeqKill(s16 id) { - if(id >= 0 && id < 8) { - if(seqWorkData[id].stat != 0) { - seqWorkData[id].stat = 8; - } - } + if (id >= 0 && id < 8) { + if (seqWorkData[id].stat != 0) { + seqWorkData[id].stat = 8; + } + } } void MGSeqKillAll(void) { - seqDoneF = 1; - MGSeqMain(); - seqDoneF = 0; - MGSeqStub(); - lbl_801D3D94 = 0; + seqDoneF = 1; + MGSeqMain(); + seqDoneF = 0; + MGSeqStub(); + lbl_801D3D94 = 0; } s32 MGSeqDoneCheck(void) { - u8 stat = MGSeqStatGet(-1); - if(stat == 0 || (stat & 0xC)) { - if(seqTimer <= 0 || (stat & 0x8)) { - return 1; - } - } - return 0; + u8 stat = MGSeqStatGet(-1); + if (stat == 0 || (stat & 0xC)) { + if (seqTimer <= 0 || (stat & 0x8)) { + return 1; + } + } + return 0; } -void MGSeqStub(void) -{ - -} +void MGSeqStub(void) { } void MGSeqSprKill(SeqWork *work) { - s32 i; - for(i=0; i<16; i++) { - if(work->spr_grp[i] >= 0) { - HuSprGrpKill(work->spr_grp[i]); - } - if(work->sprite[i] >= 0) { - HuSprKill(work->sprite[i]); - } - } + s32 i; + for (i = 0; i < 16; i++) { + if (work->spr_grp[i] >= 0) { + HuSprGrpKill(work->spr_grp[i]); + } + if (work->sprite[i] >= 0) { + HuSprKill(work->sprite[i]); + } + } } static void *SeqReadFile(s32 file) { - return HuAR_ARAMtoMRAMFileRead(file, MEMORY_DEFAULT_NUM, HEAP_DATA); + return HuAR_ARAMtoMRAMFileRead(file, MEMORY_DEFAULT_NUM, HEAP_DATA); } static s32 SeqInitTimer(SeqWork *work, va_list params) { - AnimData *spr_anim; - s16 sprite; - s16 spr_grp; - int duration, x, y; - s16 i; - - duration = va_arg(params, int); - x = va_arg(params, int); - y = va_arg(params, int); - if(duration <= 0 && duration > 99) { - duration = 99; - } - work->timer_val = duration; - if(x >= 0) { - work->x = x; - } - if(y >= 0) { - work->y = y; - } - work->alt_word_len = 0; - work->state = 2; - work->angle = 0; - work->spr_grp[0] = spr_grp = HuSprGrpCreate(4); - HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); - spr_anim = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 2))); - x = 12; - for(i=0; i<2; i++) { - sprite = HuSprCreate(spr_anim, 5, 0); - HuSprGrpMemberSet(spr_grp, i, sprite); - HuSprSpeedSet(spr_grp, i, 0); - HuSprPosSet(spr_grp, i, x, 0); - HuSprColorSet(spr_grp, i, 112, 233, 255); - x -= 24; - (void)i; //Hack for Matching - } - spr_anim = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 1))); - sprite = HuSprCreate(spr_anim, 7, 0); - HuSprGrpMemberSet(spr_grp, 2, sprite); - HuSprPosSet(spr_grp, 2, 0, 0); - HuSprTPLvlSet(spr_grp, 2, 0.5f); - HuSprColorSet(spr_grp, 2, 0, 0, 0); - spr_anim = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 0))); - sprite = HuSprCreate(spr_anim, 6, 0); - HuSprGrpMemberSet(spr_grp, 3, sprite); - HuSprPosSet(spr_grp, 3, 0, 0); - if(seqPauseF) { - work->state = 1; - for(i=0; i<2; i++) { - HuSprAttrSet(spr_grp, i, HUSPR_ATTR_DISPOFF); - (void)i; //Hack for Matching - } - } - return 1; + AnimData *spr_anim; + s16 sprite; + s16 spr_grp; + int duration, x, y; + s16 i; + + duration = va_arg(params, int); + x = va_arg(params, int); + y = va_arg(params, int); + if (duration <= 0 && duration > 99) { + duration = 99; + } + work->timer_val = duration; + if (x >= 0) { + work->x = x; + } + if (y >= 0) { + work->y = y; + } + work->alt_word_len = 0; + work->state = 2; + work->angle = 0; + work->spr_grp[0] = spr_grp = HuSprGrpCreate(4); + HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); + spr_anim = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 2))); + x = 12; + for (i = 0; i < 2; i++) { + sprite = HuSprCreate(spr_anim, 5, 0); + HuSprGrpMemberSet(spr_grp, i, sprite); + HuSprSpeedSet(spr_grp, i, 0); + HuSprPosSet(spr_grp, i, x, 0); + HuSprColorSet(spr_grp, i, 112, 233, 255); + x -= 24; + (void)i; // Hack for Matching + } + spr_anim = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 1))); + sprite = HuSprCreate(spr_anim, 7, 0); + HuSprGrpMemberSet(spr_grp, 2, sprite); + HuSprPosSet(spr_grp, 2, 0, 0); + HuSprTPLvlSet(spr_grp, 2, 0.5f); + HuSprColorSet(spr_grp, 2, 0, 0, 0); + spr_anim = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 0))); + sprite = HuSprCreate(spr_anim, 6, 0); + HuSprGrpMemberSet(spr_grp, 3, sprite); + HuSprPosSet(spr_grp, 3, 0, 0); + if (seqPauseF) { + work->state = 1; + for (i = 0; i < 2; i++) { + HuSprAttrSet(spr_grp, i, HUSPR_ATTR_DISPOFF); +#if VERSION_NTSC + //(void)i; //Hack for Matching +#endif + } + } +#if VERSION_PAL + HuSprGrpPosSet(spr_grp, -1000.0f, 0.0f); +#endif + return 1; } static s32 SeqUpdateTimer(SeqWork *work) { - float scale; - float tp_lvl; - u8 digits[2]; - s16 i; - s16 spr_grp = work->spr_grp[0]; - if(work->param[0] != 0 && work->state != -1) { - switch(work->param[0]) { - case 2: - switch(work->param[1]) { - case -1: - work->stat |= 0x4; - work->state = -1; - work->angle = 0.0f; - break; - - case 0: - work->state = 2; - work->angle = 0.0f; - break; - - case 1: - work->state = 3; - work->angle = 0.0f; - break; - - default: - break; - } - work->param[0] = 0; - break; - - case 1: - if(work->param[1] < 0 && !(work->stat & 0x4)) { - work->stat |= 0x4; - work->state = -1; - work->angle = 0.0f; - } else { - if(work->param[1] > 99) { - work->timer_val = 99; - } else { - if(work->timer_val != work->param[1]) { - work->timer_val = work->param[1]; - if(work->param[1] <= 5) { - HuAudFXPlay(6); - work->state = 3; - work->angle = 0.0f; - HuSprColorSet(spr_grp, 0, 255, 112, 160); - HuSprColorSet(spr_grp, 1, 255, 112, 160); - } else { - HuSprColorSet(spr_grp, 0, 112, 233, 255); - HuSprColorSet(spr_grp, 1, 112, 233, 255); - } - } - } - } - work->param[0] = 0; - break; - - case 3: - for(i=0; i<2; i++) { - HuSprAttrReset(spr_grp, i, HUSPR_ATTR_DISPOFF); - } - work->state = 3; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->state == 1) { - return 1; - } - if(work->timer_val > 99) { - digits[0] = digits[1] = 9; - } else { - s32 value; - value = work->timer_val/10; - digits[1] = value; - digits[0] = work->timer_val-(value*10); - } - HuSprGrpPosSet(spr_grp, work->x, work->y); - HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); - for(i=0; i<2; i++) { - HuSprBankSet(spr_grp, i, digits[i]); - } - if(work->state != 0) { - switch(work->state) { - case 2: - { - float scale_x, scale_y; - scale = fabs(((sin((work->angle*M_PI)/180)*5.0f)+1.0f)-(sin((130*M_PI)/180)*5.0f)); - scale_x = work->scale_x*scale; - scale_y = work->scale_y*scale; - work->angle += seqSpeed*5.0f; - if(work->angle > 130.0f) { - work->state = 0; - break; - } - HuSprGrpScaleSet(spr_grp, scale_x, scale_y); - } - break; - - case 3: - { - scale = sin((work->angle*M_PI)/180)+1.0; - tp_lvl = 1.0-(sin((work->angle*M_PI)/180)*0.5); - work->angle += seqSpeed*18.0f; - if(work->angle > 180.0f) { - work->state = 0; - scale = 1.0f; - tp_lvl = 1.0f; - } - for(i=0; i<2; i++) { - HuSprScaleSet(spr_grp, i, scale, scale); - HuSprTPLvlSet(spr_grp, i, tp_lvl); - } - } - break; - - case -1: - HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); - for(i=0; i<2; i++) { - HuSprScaleSet(spr_grp, i, 1.0f, 1.0f); - } - work->angle += 1.0f; - if(work->angle < 60.0f) { - break; - } - tp_lvl = 1.0-((work->angle-60.0f)/20.0f); - if(tp_lvl <= 0.0f) { - tp_lvl = 0.0f; - work->state = 0; - work->stat |= 0x8; - } - - for(i=0; i<4; i++) { - HuSprTPLvlSet(spr_grp, i, tp_lvl); - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } else { - return 1; - } + float scale; + float tp_lvl; + u8 digits[2]; + s16 i; + s16 spr_grp = work->spr_grp[0]; + if (work->param[0] != 0 && work->state != -1) { + switch (work->param[0]) { + case 2: + switch (work->param[1]) { + case -1: + work->stat |= 0x4; + work->state = -1; + work->angle = 0.0f; + break; + + case 0: + work->state = 2; + work->angle = 0.0f; + break; + + case 1: + work->state = 3; + work->angle = 0.0f; + break; + + default: + break; + } + work->param[0] = 0; + break; + + case 1: + if (work->param[1] < 0 && !(work->stat & 0x4)) { + work->stat |= 0x4; + work->state = -1; + work->angle = 0.0f; + } + else { + if (work->param[1] > 99) { + work->timer_val = 99; + } + else { + if (work->timer_val != work->param[1]) { + work->timer_val = work->param[1]; + if (work->param[1] <= 5) { + HuAudFXPlay(6); + work->state = 3; + work->angle = 0.0f; + HuSprColorSet(spr_grp, 0, 255, 112, 160); + HuSprColorSet(spr_grp, 1, 255, 112, 160); + } + else { + HuSprColorSet(spr_grp, 0, 112, 233, 255); + HuSprColorSet(spr_grp, 1, 112, 233, 255); + } + } + } + } + work->param[0] = 0; + break; + + case 3: + for (i = 0; i < 2; i++) { + HuSprAttrReset(spr_grp, i, HUSPR_ATTR_DISPOFF); + } + work->state = 3; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->state == 1) { + return 1; + } + if (work->timer_val > 99) { + digits[0] = digits[1] = 9; + } + else { + s32 value; + value = work->timer_val / 10; + digits[1] = value; + digits[0] = work->timer_val - (value * 10); + } + HuSprGrpPosSet(spr_grp, work->x, work->y); + HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); + for (i = 0; i < 2; i++) { + HuSprBankSet(spr_grp, i, digits[i]); + } + if (work->state != 0) { + switch (work->state) { + case 2: { + float scale_x, scale_y; + scale = fabs(((sin((work->angle * M_PI) / 180) * 5.0f) + 1.0f) - (sin((130 * M_PI) / 180) * 5.0f)); + scale_x = work->scale_x * scale; + scale_y = work->scale_y * scale; + work->angle += seqSpeed * 5.0f; + if (work->angle > 130.0f) { + work->state = 0; + break; + } + HuSprGrpScaleSet(spr_grp, scale_x, scale_y); + } break; + + case 3: { + scale = sin((work->angle * M_PI) / 180) + 1.0; + tp_lvl = 1.0 - (sin((work->angle * M_PI) / 180) * 0.5); + work->angle += seqSpeed * 18.0f; + if (work->angle > 180.0f) { + work->state = 0; + scale = 1.0f; + tp_lvl = 1.0f; + } + for (i = 0; i < 2; i++) { + HuSprScaleSet(spr_grp, i, scale, scale); + HuSprTPLvlSet(spr_grp, i, tp_lvl); + } + } break; + + case -1: + HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); + for (i = 0; i < 2; i++) { + HuSprScaleSet(spr_grp, i, 1.0f, 1.0f); + } + work->angle += 1.0f; + if (work->angle < 60.0f) { + break; + } + tp_lvl = 1.0 - ((work->angle - 60.0f) / 20.0f); + if (tp_lvl <= 0.0f) { + tp_lvl = 0.0f; + work->state = 0; + work->stat |= 0x8; + } + + for (i = 0; i < 4; i++) { + HuSprTPLvlSet(spr_grp, i, tp_lvl); + } + break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + else { + return 1; + } } static s32 SeqInitType2(SeqWork *work, va_list params) { - s16 spr_idx; - s16 spr_grp; - AnimData *anim_tbl[6]; - s32 i; - s16 len; - char *str; - char c; - int time_max; - int x, y; - work->data = va_arg(params, void *); - time_max = va_arg(params, int); - x = va_arg(params, int); - y = va_arg(params, int); - if(time_max < 0) { - time_max = -1; - } - work->time_max = time_max; - if(x >= 0) { - work->x = x; - } - if(y >= 0) { - work->y = y; - } - work->state = 0; - work->angle = 0.0f; - x = 0; - len = 0; - str=work->data; - while(c=*str++) { - if(c >= '0' && c <= '9') { - x |= 1; - len++; - } else if(c >= 'A' && c <= 'Z') { - x |= 2; - len++; - } else if(c >= 'a' && c <= 'z') { - x |= 4; - len++; - } else if(c == '!' || c == '?') { - x |= 8; - len++; - } - } - work->word_len = len; - for(i=0; i<6; i++) { - if(x & (1 << i)) { - anim_tbl[i] = HuSprAnimRead(SeqReadFile(seqType2SprTbl[i])); - } else { - anim_tbl[i] = NULL; - } - } - work->spr_grp[0] = spr_grp = HuSprGrpCreate(len); - x = 0; - spr_idx = 0; - str=work->data; - while(c=*str++) { - i = -2; - if(c >= '0' && c <= '9') { - c -= '0'; - i = 0; - } else if(c >= 'A' && c <= 'Z') { - c -= 'A'; - i = 1; - } else if(c >= 'a' && c <= 'z') { - c -= 'a'; - i = 2; - } else if(c == '!' || c == '?') { - if(c == '!') { - c = 0; - } else { - c = 1; - } - i = 3; - } else if(c == ' ') { - i = -1; - } - work->alt_word_len = x; - if(i == -1) { - x += 32; - } else if(i >= 0) { - s16 sprite = HuSprCreate(anim_tbl[i], 5, c); - HuSprGrpMemberSet(spr_grp, spr_idx, sprite); - HuSprSpeedSet(spr_grp, spr_idx, 0.0f); - HuSprPosSet(spr_grp, spr_idx, x, 0.0f); - spr_idx++; - x += 64; - } - } - if(seqPauseF) { - work->state = 1; - for(i=0; iword_len; i++) { - HuSprAttrSet(spr_grp, i, HUSPR_ATTR_DISPOFF); - } - } - return 1; + s16 spr_idx; + s16 spr_grp; + AnimData *anim_tbl[6]; + s32 i; + s16 len; + char *str; + char c; + int time_max; + int x, y; + work->data = va_arg(params, void *); + time_max = va_arg(params, int); + x = va_arg(params, int); + y = va_arg(params, int); + if (time_max < 0) { + time_max = -1; + } + work->time_max = time_max; + if (x >= 0) { + work->x = x; + } + if (y >= 0) { + work->y = y; + } + work->state = 0; + work->angle = 0.0f; + x = 0; + len = 0; + str = work->data; + while (c = *str++) { + if (c >= '0' && c <= '9') { + x |= 1; + len++; + } + else if (c >= 'A' && c <= 'Z') { + x |= 2; + len++; + } + else if (c >= 'a' && c <= 'z') { + x |= 4; + len++; + } + else if (c == '!' || c == '?') { + x |= 8; + len++; + } + } + work->word_len = len; + for (i = 0; i < 6; i++) { + if (x & (1 << i)) { + anim_tbl[i] = HuSprAnimRead(SeqReadFile(seqType2SprTbl[i])); + } + else { + anim_tbl[i] = NULL; + } + } + work->spr_grp[0] = spr_grp = HuSprGrpCreate(len); + x = 0; + spr_idx = 0; + str = work->data; + while (c = *str++) { + i = -2; + if (c >= '0' && c <= '9') { + c -= '0'; + i = 0; + } + else if (c >= 'A' && c <= 'Z') { + c -= 'A'; + i = 1; + } + else if (c >= 'a' && c <= 'z') { + c -= 'a'; + i = 2; + } + else if (c == '!' || c == '?') { + if (c == '!') { + c = 0; + } + else { + c = 1; + } + i = 3; + } + else if (c == ' ') { + i = -1; + } + work->alt_word_len = x; + if (i == -1) { + x += 32; + } + else if (i >= 0) { + s16 sprite = HuSprCreate(anim_tbl[i], 5, c); + HuSprGrpMemberSet(spr_grp, spr_idx, sprite); + HuSprSpeedSet(spr_grp, spr_idx, 0.0f); + HuSprPosSet(spr_grp, spr_idx, x, 0.0f); + spr_idx++; + x += 64; + } + } + if (seqPauseF) { + work->state = 1; + for (i = 0; i < work->word_len; i++) { + HuSprAttrSet(spr_grp, i, HUSPR_ATTR_DISPOFF); + } + } + return 1; } static s32 SeqUpdateType2(SeqWork *work) { - float tp_lvl; - s16 spr_grp; - spr_grp = work->spr_grp[0]; - HuSprGrpPosSet(spr_grp, work->x-((0.5f*work->scale_x)*work->alt_word_len), work->y); - HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); - if(work->param[0] != 0 && work->state != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->state = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - { - s32 i; - for(i=0; iword_len; i++) { - HuSprAttrReset(spr_grp, i, HUSPR_ATTR_DISPOFF); - (void)i; - } - work->state = 0; - work->param[0] = 0; - } - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->state == 1) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->state != -1) { - work->stat |= 0x4; - work->state = -1; - work->angle = 0.0f; - } - if(work->state != 0) { - if(work->state != -1) { - (void)work; //HACK: to introduce extra branch - } else { - s16 i; - work->angle += seqSpeed*0.1f; - tp_lvl = 1.0f-work->angle; - if(tp_lvl <= 0.0f) { - tp_lvl = 0.0f; - work->state = 0; - work->stat |= 0x8; - } - for(i=0; iword_len; i++) { - HuSprTPLvlSet(spr_grp, i, tp_lvl); - (void)i; - } - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } else { - return 1; - } + float tp_lvl; + s16 spr_grp; + spr_grp = work->spr_grp[0]; + HuSprGrpPosSet(spr_grp, work->x - ((0.5f * work->scale_x) * work->alt_word_len), work->y); + HuSprGrpScaleSet(spr_grp, work->scale_x, work->scale_y); + if (work->param[0] != 0 && work->state != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->state = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: { + s32 i; + for (i = 0; i < work->word_len; i++) { + HuSprAttrReset(spr_grp, i, HUSPR_ATTR_DISPOFF); + (void)i; + } + work->state = 0; + work->param[0] = 0; + } break; + + default: + work->param[0] = 0; + break; + } + } + if (work->state == 1) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->state != -1) { + work->stat |= 0x4; + work->state = -1; + work->angle = 0.0f; + } + if (work->state != 0) { + if (work->state != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + s16 i; + work->angle += seqSpeed * 0.1f; + tp_lvl = 1.0f - work->angle; + if (tp_lvl <= 0.0f) { + tp_lvl = 0.0f; + work->state = 0; + work->stat |= 0x8; + } + for (i = 0; i < work->word_len; i++) { + HuSprTPLvlSet(spr_grp, i, tp_lvl); + (void)i; + } + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + else { + return 1; + } } +static char seqFontAlphaTbl[] = { "ABCDEFGH" + "IJKLMNOP" + "QRSTUVWX" + "YZabcdef" + "ghijklmn" + "opqrstuv" + "wxyz" }; -static char seqFontAlphaTbl[] = { - "ABCDEFGH" - "IJKLMNOP" - "QRSTUVWX" - "YZabcdef" - "ghijklmn" - "opqrstuv" - "wxyz" -}; - -static char seqFontKanaTbl[] = { - "アイウエオカキク" - "ケコサシスセソタ" - "チツテトナニヌネ" - "ノハヒフヘホマミ" - "ムメモヤユヨラリ" - "ルレロワヲンァィ" - "ゥェォャュョッカ" - "キクケコサシスセ" - "ソタチツテトハヒ" - "フヘホハヒフヘホ" - "ー" -}; +static char seqFontKanaTbl[] = { "アイウエオカキク" + "ケコサシスセソタ" + "チツテトナニヌネ" + "ノハヒフヘホマミ" + "ムメモヤユヨラリ" + "ルレロワヲンァィ" + "ゥェォャュョッカ" + "キクケコサシスセ" + "ソタチツテトハヒ" + "フヘホハヒフヘホ" + "ー" }; static char seqFontNumTbl[] = "0123456789"; -static s32 *letterBufTbl[5] = { }; +static s32 *letterBufTbl[5] = {}; static char wordStartE[] = "START!"; @@ -783,2772 +782,2786 @@ static char wordFinishE[] = "FINISH!"; static char wordDrawE[] = "DRAW!"; static char *wordMgTbl[6] = { - wordStartJ, wordFinishJ, wordDrawJ, - wordStartE, wordFinishE, wordDrawE, + wordStartJ, + wordFinishJ, + wordDrawJ, + wordStartE, + wordFinishE, + wordDrawE, }; void fn_80036BC8(void) { - if(!letterBufTbl[0]) { - letterBufTbl[0] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32)*strlen(seqFontAlphaTbl)); - memset(letterBufTbl[0], 0, sizeof(s32)*strlen(seqFontAlphaTbl)); - } - if(!letterBufTbl[1]) { - letterBufTbl[1] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32)*strlen(seqFontKanaTbl)); - memset(letterBufTbl[1], 0, sizeof(s32)*strlen(seqFontKanaTbl)); - } - if(!letterBufTbl[2]) { - letterBufTbl[2] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32)*strlen(seqFontKanaTbl)); - memset(letterBufTbl[2], 0, sizeof(s32)*strlen(seqFontKanaTbl)); - } - if(!letterBufTbl[3]) { - letterBufTbl[3] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32)*strlen(seqFontNumTbl)); - memset(letterBufTbl[3], 0, sizeof(s32)*strlen(seqFontNumTbl)); - } - if(!letterBufTbl[4]) { - letterBufTbl[4] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32)*strlen(seqPunctTbl)); - memset(letterBufTbl[4], 0, sizeof(s32)*strlen(seqPunctTbl)); - } + if (!letterBufTbl[0]) { + letterBufTbl[0] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32) * strlen(seqFontAlphaTbl)); + memset(letterBufTbl[0], 0, sizeof(s32) * strlen(seqFontAlphaTbl)); + } + if (!letterBufTbl[1]) { + letterBufTbl[1] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32) * strlen(seqFontKanaTbl)); + memset(letterBufTbl[1], 0, sizeof(s32) * strlen(seqFontKanaTbl)); + } + if (!letterBufTbl[2]) { + letterBufTbl[2] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32) * strlen(seqFontKanaTbl)); + memset(letterBufTbl[2], 0, sizeof(s32) * strlen(seqFontKanaTbl)); + } + if (!letterBufTbl[3]) { + letterBufTbl[3] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32) * strlen(seqFontNumTbl)); + memset(letterBufTbl[3], 0, sizeof(s32) * strlen(seqFontNumTbl)); + } + if (!letterBufTbl[4]) { + letterBufTbl[4] = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s32) * strlen(seqPunctTbl)); + memset(letterBufTbl[4], 0, sizeof(s32) * strlen(seqPunctTbl)); + } } static AnimData *SeqLoadFontChar(char *str, s16 flags); static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags) { - s16 *char_pos; - char *str_ptr; - s16 spr_grp; - s16 i; - s16 x; - s16 grp_idx; - s16 len; - AnimData **char_anim; - for(grp_idx=0; grp_idx<16; grp_idx++) { - if(work->spr_grp[grp_idx] == -1) { - break; - } - } - if(grp_idx == 16) { - return -1; - } - char_anim = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(AnimData *)*100); - char_pos = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s16)*100); - str_ptr = str; - x = 0; - len = 0; - while(*str_ptr != 0) { - char_anim[len] = SeqLoadFontChar(str_ptr, flags); - if(char_anim[len]) { - char_pos[len] = x; - x += 56; - len++; - } - str_ptr++; - } - work->spr_grp[grp_idx] = spr_grp = HuSprGrpCreate(len); - x = (x/2)-28; - for(i=0; iword_len = len; - HuMemDirectFree(char_anim); - HuMemDirectFree(char_pos); - return grp_idx; + s16 *char_pos; + char *str_ptr; + s16 spr_grp; + s16 i; + s16 x; + s16 grp_idx; + s16 len; + AnimData **char_anim; + for (grp_idx = 0; grp_idx < 16; grp_idx++) { + if (work->spr_grp[grp_idx] == -1) { + break; + } + } + if (grp_idx == 16) { + return -1; + } + char_anim = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(AnimData *) * 100); + char_pos = HuMemDirectMalloc(HEAP_SYSTEM, sizeof(s16) * 100); + str_ptr = str; + x = 0; + len = 0; + while (*str_ptr != 0) { + char_anim[len] = SeqLoadFontChar(str_ptr, flags); + if (char_anim[len]) { + char_pos[len] = x; + x += 56; + len++; + } + str_ptr++; + } + work->spr_grp[grp_idx] = spr_grp = HuSprGrpCreate(len); + x = (x / 2) - 28; + for (i = 0; i < len; i++) { + s16 sprite = HuSprCreate(char_anim[i], 5, 0); + HuSprGrpMemberSet(spr_grp, i, sprite); + HuSprPosSet(spr_grp, i, char_pos[i] - x, 0.0f); + } + work->word_len = len; + HuMemDirectFree(char_anim); + HuMemDirectFree(char_pos); + return grp_idx; } static AnimData *SeqLoadFontChar(char *str, s16 flags) { - s32 data_num; - s16 id; - char *list; - char c = *str; - if(c == 222 || c == 223) { - return NULL; - } - if(c == 32) { - return HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 10))); - } - for(id = 0, list=seqFontAlphaTbl; *list != 0; id++, list++) { - if(*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id+21); - return HuSprAnimRead(SeqReadFile(data_num)); - } - } - for(id = 0, list=seqFontNumTbl; *list != 0; id++, list++) { - if(*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id+11); - return HuSprAnimRead(SeqReadFile(data_num)); - } - } - for(id = 0, list=seqPunctTbl; *list != 0; id++, list++) { - if(*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id+154); - return HuSprAnimRead(SeqReadFile(data_num)); - } - } - if(str[1] == 222) { //゛ - list = seqFontKanaTbl; - list += 55; - id = 55; - } else if(str[1] == 223) { //゜ - list = seqFontKanaTbl; - list += 75; - id = 75; - } else { - list = seqFontKanaTbl; - id = 0; - } - while(*list != 0) { - if(*list == c) { - if(flags & 0x1) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id+156); - } else { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id+73); - } - return HuSprAnimRead(SeqReadFile(data_num)); - } - id++; - list++; - } - return NULL; + s32 data_num; + s16 id; + char *list; + char c = *str; + if (c == 222 || c == 223) { + return NULL; + } + if (c == 32) { + return HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 10))); + } + for (id = 0, list = seqFontAlphaTbl; *list != 0; id++, list++) { + if (*list == c) { + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 21); + return HuSprAnimRead(SeqReadFile(data_num)); + } + } + for (id = 0, list = seqFontNumTbl; *list != 0; id++, list++) { + if (*list == c) { + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 11); + return HuSprAnimRead(SeqReadFile(data_num)); + } + } + for (id = 0, list = seqPunctTbl; *list != 0; id++, list++) { + if (*list == c) { + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 154); + return HuSprAnimRead(SeqReadFile(data_num)); + } + } + if (str[1] == 222) { // ゛ + list = seqFontKanaTbl; + list += 55; + id = 55; + } + else if (str[1] == 223) { // ゜ + list = seqFontKanaTbl; + list += 75; + id = 75; + } + else { + list = seqFontKanaTbl; + id = 0; + } + while (*list != 0) { + if (*list == c) { + if (flags & 0x1) { + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 156); + } + else { + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 73); + } + return HuSprAnimRead(SeqReadFile(data_num)); + } + id++; + list++; + } + return NULL; } static float ForceDefine480() { - return 480.0f; + return 480.0f; } static void SeqPlayStartFX(void); static s32 SeqInitMGBasic(SeqWork *work, va_list params) { - s16 i; - s16 word_grp; - - work->state = va_arg(params, int); - if(work->state == 2) { - return SeqInitDraw(work, params); - } - work->type = 0; - work->angle = 0; - - { - s32 word_katakana; - s32 word_flag; - s32 word_ofs; - word_katakana = 0; - if(work->state == 2 && seqLanguage == 0) { - word_katakana = 1; - } - if(word_katakana) { - word_flag = 1; - } else { - word_flag = 0; - } - if(seqLanguage == 0) { - word_ofs = 0; - } else { - word_ofs = 3; - } - word_grp = SeqMakeWord(work, wordMgTbl[work->state+word_ofs], word_flag); - } - HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); - - for(i=0; iword_len; i++) { - HuSprTPLvlSet(work->spr_grp[word_grp], i, 1.0f); - HuSprPosSet(work->spr_grp[word_grp], i, -100.0f, HU_DISP_CENTERY); - } - if(seqPauseF) { - work->type = 2; - HuSprAttrSet(word_grp, 0, HUSPR_ATTR_DISPOFF); - } else { - work->param[0] = 3; - } - return 1; + s16 i; + s16 word_grp; + + work->state = va_arg(params, int); + if (work->state == 2) { + return SeqInitDraw(work, params); + } + work->type = 0; + work->angle = 0; + + { + s32 word_katakana; + s32 word_flag; + s32 word_ofs; + word_katakana = 0; + if (work->state == 2 && seqLanguage == 0) { + word_katakana = 1; + } + if (word_katakana) { + word_flag = 1; + } + else { + word_flag = 0; + } + if (seqLanguage == 0) { + word_ofs = 0; + } + else { + word_ofs = 3; + } + word_grp = SeqMakeWord(work, wordMgTbl[work->state + word_ofs], word_flag); + } + HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); + + for (i = 0; i < work->word_len; i++) { + HuSprTPLvlSet(work->spr_grp[word_grp], i, 1.0f); + HuSprPosSet(work->spr_grp[word_grp], i, -100.0f, HU_DISP_CENTERY); + } + if (seqPauseF) { + work->type = 2; + HuSprAttrSet(word_grp, 0, HUSPR_ATTR_DISPOFF); + } + else { + work->param[0] = 3; + } + return 1; } static s32 SeqUpdateMGBasic(SeqWork *work) { - s16 idx; - float scale; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->type == 2) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - float pos_x; - float time; - s16 i; - if(work->state == 0) { - if(work->time <= 40) { - for(i=0; iword_len; i++) { - time = work->time-((20/work->word_len)*(work->word_len-i-1)); - if(time < 0 || time > 20.0f) { - continue; - } - pos_x = (work->x-(0.5f*(work->word_len*56)))+28.0f+(i*56); - if(time == 20.0f) { - HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprZRotSet(work->spr_grp[0], i, 0.0f); - } else { - HuSprPosSet(work->spr_grp[0], i, pos_x-(((1.0-sin(((time*4.5f)*M_PI)/180.0))*(work->word_len*56*2))), work->y); - HuSprZRotSet(work->spr_grp[0], i, (time/20.0f)*390.0f); - } - } - } else { - time = work->time-40; - scale = work->scale_x+(0.5*sin(((time*9.0f)*M_PI)/180.0)); - for(i=0; iword_len; i++) { - pos_x = ((28.0f*scale)+(work->x-(0.5f*(scale*(work->word_len*56)))))+(scale*(i*56)); - HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], i, scale, work->scale_y+sin(((time*9.0f)*M_PI)/180.0)); - } - } - if(work->time == 40) { - idx = HuAudFXPlay(36); - work->stat |= 0x10; - } - if(work->time == 60) { - SeqPlayStartFX(); - work->stat |= 0x4; - } - if(work->time >= 60) { - work->type = 0; - } - } else { - if(work->time == 1) { - if(work->state == 1) { - HuAudFXPlay(37); - } else { - HuAudFXPlay(40); - } - MGSeqPauseEnableCtrl(0); - work->stat |= 0x10; - } - if(work->time <= 20) { - time = work->time; - scale = work->scale_x+(0.5*sin(((time*9.0f)*M_PI)/180.0)); - for(i=0; iword_len; i++) { - HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); - pos_x = ((28.0f*scale)+(work->x-(0.5f*(scale*(work->word_len*56)))))+(scale*(i*56)); - HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], i, work->scale_x+sin(((time*9.0f)*M_PI)/180.0), work->scale_y+sin(((time*9.0f)*M_PI)/180.0)); - } - if(time == 20.0f) { - for(i=0; iword_len; i++) { - HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); - } - } - } else { - if(work->time > 80) { - for(i=0; iword_len; i++) { - time = (work->time-80)-((20/work->word_len)*(work->word_len-i-1)); - if(time < 0.0f || time > 20.0f) { - continue; - } - pos_x = (28.0f+(work->x-(0.5f*(work->word_len*56))))+(i*56); - if(time == 20.0f) { - HuSprAttrSet(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); - } else { - HuSprPosSet(work->spr_grp[0], i, pos_x+((1.0-cos(((time*4.5f)*M_PI)/180.0f))*(work->word_len*56*2)), work->y); - HuSprZRotSet(work->spr_grp[0], i, (time/20.0f)*390.0f); - } - } - } - } - if(work->time == 110) { - work->stat |= 0x4; - } - if(work->time >= 110) { - work->type = 0; - work->stat |= 8; - } - } - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - scale = 1.0f-work->angle; - if(scale <= 0.0f) { - scale = 0.0f; - work->type = 0; - work->stat |= 0x8; - if(work->state == 0) { - MGSeqPauseEnableCtrl(1); - } - } - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[0], idx, scale); - } - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->type == 2) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + float pos_x; + float time; + s16 i; + if (work->state == 0) { + if (work->time <= 40) { + for (i = 0; i < work->word_len; i++) { + time = work->time - ((20 / work->word_len) * (work->word_len - i - 1)); + if (time < 0 || time > 20.0f) { + continue; + } + pos_x = (work->x - (0.5f * (work->word_len * 56))) + 28.0f + (i * 56); + if (time == 20.0f) { + HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); + HuSprZRotSet(work->spr_grp[0], i, 0.0f); + } + else { + HuSprPosSet(work->spr_grp[0], i, pos_x - (((1.0 - sin(((time * 4.5f) * M_PI) / 180.0)) * (work->word_len * 56 * 2))), + work->y); + HuSprZRotSet(work->spr_grp[0], i, (time / 20.0f) * 390.0f); + } + } + } + else { + time = work->time - 40; + scale = work->scale_x + (0.5 * sin(((time * 9.0f) * M_PI) / 180.0)); + for (i = 0; i < work->word_len; i++) { + pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (i * 56)); + HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], i, scale, work->scale_y + sin(((time * 9.0f) * M_PI) / 180.0)); + } + } + if (work->time == 40) { + idx = HuAudFXPlay(36); + work->stat |= 0x10; + } + if (work->time == 60) { + SeqPlayStartFX(); + work->stat |= 0x4; + } + if (work->time >= 60) { + work->type = 0; + } + } + else { + if (work->time == 1) { + if (work->state == 1) { + HuAudFXPlay(37); + } + else { + HuAudFXPlay(40); + } + MGSeqPauseEnableCtrl(0); + work->stat |= 0x10; + } + if (work->time <= 20) { + time = work->time; + scale = work->scale_x + (0.5 * sin(((time * 9.0f) * M_PI) / 180.0)); + for (i = 0; i < work->word_len; i++) { + HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); + pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (i * 56)); + HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], i, work->scale_x + sin(((time * 9.0f) * M_PI) / 180.0), + work->scale_y + sin(((time * 9.0f) * M_PI) / 180.0)); + } + if (time == 20.0f) { + for (i = 0; i < work->word_len; i++) { + HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); + } + } + } + else { + if (work->time > 80) { + for (i = 0; i < work->word_len; i++) { + time = (work->time - 80) - ((20 / work->word_len) * (work->word_len - i - 1)); + if (time < 0.0f || time > 20.0f) { + continue; + } + pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (i * 56); + if (time == 20.0f) { + HuSprAttrSet(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); + } + else { + HuSprPosSet(work->spr_grp[0], i, + pos_x + ((1.0 - cos(((time * 4.5f) * M_PI) / 180.0f)) * (work->word_len * 56 * 2)), work->y); + HuSprZRotSet(work->spr_grp[0], i, (time / 20.0f) * 390.0f); + } + } + } + } + if (work->time == 110) { + work->stat |= 0x4; + } + if (work->time >= 110) { + work->type = 0; + work->stat |= 8; + } + } + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + scale = 1.0f - work->angle; + if (scale <= 0.0f) { + scale = 0.0f; + work->type = 0; + work->stat |= 0x8; + if (work->state == 0) { + MGSeqPauseEnableCtrl(1); + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[0], idx, scale); + } + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqInitMGCommon(SeqWork *work, va_list params) { - s16 i; - float tp_lvl; - s16 j; - s16 word_grp; - - work->state = va_arg(params, int); - if(work->state == 2) { - return SeqInitDraw(work, params); - } - work->type = 0; - work->angle = 0; - tp_lvl = 1.0f; - for(i=0; i<4; i++) { - if(i == 0) - { - s32 word_katakana; - s32 word_flag; - s32 word_ofs; - word_katakana = 0; - if(work->state == 2 && seqLanguage == 0) { - word_katakana = 1; - } - if(word_katakana) { - word_flag = 1; - } else { - word_flag = 0; - } - if(seqLanguage == 0) { - word_ofs = 0; - } else { - word_ofs = 3; - } - word_grp = SeqMakeWord(work, wordMgTbl[work->state+word_ofs], word_flag); - } else { - s16 grp_idx; - s32 new_grp; - for(grp_idx=0; grp_idx<16; grp_idx++) { - if(work->spr_grp[grp_idx] == -1) { - break; - } - } - if(grp_idx == 16) { - new_grp = -1; - } else { - work->spr_grp[grp_idx] = HuSprGrpCopy(work->spr_grp[word_grp]); - new_grp = grp_idx; - } - (void)new_grp; - word_grp = new_grp; - } - HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); - for(j=0; jword_len; j++) { - HuSprTPLvlSet(work->spr_grp[word_grp], j, tp_lvl); - HuSprPosSet(work->spr_grp[word_grp], j, -100.0f, HU_DISP_CENTERY); - HuSprPriSet(work->spr_grp[word_grp], j, i+5); - HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); - } - if(i == 0) { - tp_lvl -= 0.5; - } else { - tp_lvl -= 0.1f; - } - } - if(seqPauseF) { - work->type = 2; - HuSprAttrSet(word_grp, 0, HUSPR_ATTR_DISPOFF); - } else { - work->param[0] = 3; - } - return 1; + s16 i; + float tp_lvl; + s16 j; + s16 word_grp; + + work->state = va_arg(params, int); + if (work->state == 2) { + return SeqInitDraw(work, params); + } + work->type = 0; + work->angle = 0; + tp_lvl = 1.0f; + for (i = 0; i < 4; i++) { + if (i == 0) { + s32 word_katakana; + s32 word_flag; + s32 word_ofs; + word_katakana = 0; + if (work->state == 2 && seqLanguage == 0) { + word_katakana = 1; + } + if (word_katakana) { + word_flag = 1; + } + else { + word_flag = 0; + } + if (seqLanguage == 0) { + word_ofs = 0; + } + else { + word_ofs = 3; + } + word_grp = SeqMakeWord(work, wordMgTbl[work->state + word_ofs], word_flag); + } + else { + s16 grp_idx; + s32 new_grp; + for (grp_idx = 0; grp_idx < 16; grp_idx++) { + if (work->spr_grp[grp_idx] == -1) { + break; + } + } + if (grp_idx == 16) { + new_grp = -1; + } + else { + work->spr_grp[grp_idx] = HuSprGrpCopy(work->spr_grp[word_grp]); + new_grp = grp_idx; + } + (void)new_grp; + word_grp = new_grp; + } + HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); + for (j = 0; j < work->word_len; j++) { + HuSprTPLvlSet(work->spr_grp[word_grp], j, tp_lvl); + HuSprPosSet(work->spr_grp[word_grp], j, -100.0f, HU_DISP_CENTERY); + HuSprPriSet(work->spr_grp[word_grp], j, i + 5); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + } + if (i == 0) { + tp_lvl -= 0.5; + } + else { + tp_lvl -= 0.1f; + } + } + if (seqPauseF) { + work->type = 2; + HuSprAttrSet(word_grp, 0, HUSPR_ATTR_DISPOFF); + } + else { + work->param[0] = 3; + } + return 1; } static s32 SeqUpdateMGBattle(SeqWork *work) { - s16 idx; - float scale; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->type == 2) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - s16 i, j; - float time; - float pos_x; - if(work->state == 0) { - if(work->time < 45) { - if(work->time > 10 && work->time <= 40) { - time = work->time-10; - scale = 10.0f*(1.0f-(time/30.0f)); - pos_x = (work->x-(0.5f*(work->word_len*56)))+28.0f; - HuSprPosSet(work->spr_grp[0], 0, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], 0, work->scale_x+scale, work->scale_y+scale); - scale = time/30.0f; - HuSprTPLvlSet(work->spr_grp[0], 0, scale); - } - for(i=0; i<4; i++) { - time = work->time-i; - if(time < 0 || time > 40) { - continue; - } - for(j=1; jword_len; j++) { - pos_x = (28.0f+(work->x-(0.5f*(work->word_len*56))))+(j*56); - if(time == 40.0f) { - HuSprPosSet(work->spr_grp[i], j, pos_x, work->y); - HuSprZRotSet(work->spr_grp[i], j, 0.0f); - HuSprScaleSet(work->spr_grp[i], j, work->scale_x, work->scale_y); - if(i != 0) { - HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } else { - s16 discard_cnt; - static float letterOfs[] = { - 30, 20, - 20, 3, - -4, 20, - -30, 20, - 20, 20, - -30, 20, - -10, 40, - 10, -40 - }; - float x, y; - float ofs_x, ofs_y; - float zrot, scale_ang; - x = pos_x; - y = work->y; - ofs_x = letterOfs[((j-1)&0x7)*2]; - ofs_y = letterOfs[(((j-1)&0x7)*2)+1]; - zrot = 0.0f; - discard_cnt = 0; - scale_ang = 0.0f; - for(idx=0; idx<40.0f-time; idx++) { - if(x+ofs_x > HU_DISP_WIDTH || x+ofs_x < 0) { - ofs_x = -ofs_x; - discard_cnt++; - } - if(y+ofs_y > HU_DISP_HEIGHT || y+ofs_y < 0) { - ofs_y = -ofs_y; - discard_cnt++; - } - if(discard_cnt) { - zrot += 20.0f; - scale_ang = 0.0f; - } - x += ofs_x; - y += ofs_y; - } - HuSprPosSet(work->spr_grp[i], j, x, y); - HuSprScaleSet(work->spr_grp[i], j, work->scale_x*cos((M_PI*scale_ang)/180.0), work->scale_y); - HuSprZRotSet(work->spr_grp[i], j, zrot); - } - } - } - } else { - if(work->time > 60) { - time = work->time-60; - scale = 0.5*sin((M_PI*(time*9.0f))/180.0); - for(j=0; jword_len; j++) { - pos_x = (28.0f*(scale+work->scale_x))+(work->x-(0.5f*((work->word_len*56)*(scale+work->scale_x))))+((j*56)*(scale+work->scale_x)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+scale, work->scale_y+scale); - } - } - } - if(work->time == 60) { - HuAudFXPlay(36); - work->stat |= 0x10; - } - if(work->time == 80) { - work->stat |= 0x4; - SeqPlayStartFX(); - } - if(work->time >= 80) { - work->type = 0; - } - } else { - if(work->time == 1) { - if(work->state == 1) { - HuAudFXPlay(37); - } else { - HuAudFXPlay(40); - } - MGSeqPauseEnableCtrl(0); - work->stat |= 0x10; - } - if(work->time <= 20) { - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - time = work->time; - scale = work->scale_x+(0.5*sin((M_PI*(time*9.0f))/180.0)); - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); - pos_x = ((28.0f*scale)+(work->x-(0.5f*(scale*(work->word_len*56)))))+(scale*(j*56)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+(sin((M_PI*(time*9.0f))/180.0)), work->scale_y+(sin((M_PI*(time*9.0f))/180.0))); - } - if(time == 20.0f) { - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); - } - } - } else { - if(work->time > 80 && work->time <= 95) { - time = work->time-80; - for(j=0; jword_len; j++) { - pos_x = (28.0f+(work->x-(0.5f*(work->word_len*56))))+(j*56); - HuSprPosSet(work->spr_grp[0], j, pos_x+((HU_DISP_CENTERX-pos_x)*(1.0-cos((M_PI*(time*6.0))/180.0))), work->y); - } - if(time == 15.0f) { - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[1], j, HUSPR_ATTR_DISPOFF); - HuSprPosSet(work->spr_grp[1], j, HU_DISP_CENTERX, work->y); - HuSprTPLvlSet(work->spr_grp[1], j, 1.0f); - } - } - } else { - if(work->time > 105) { - for(j=0; jword_len; j++) { - time = work->time-105; - time -= j*3; - if(time < 0) { - continue; - } - scale = 1.0f-(time/15.0f); - if(scale < 0.0f) { - scale = 0.0f; - } - HuSprPosSet(work->spr_grp[0], j, HU_DISP_CENTERX, work->y+((-100.0f-work->y)*(time/20.0f))); - HuSprTPLvlSet(work->spr_grp[0], j, scale); - HuSprPosSet(work->spr_grp[1], j, HU_DISP_CENTERX, work->y+((580.0f-work->y)*(time/20.0f))); - HuSprTPLvlSet(work->spr_grp[1], j, scale); - } - } - } - } - if(work->time == 130) { - work->stat |= 0x4; - } - if(work->time >= 130) { - work->type = 0; - work->stat |= 0x8; - } - } - - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - scale = 1.0f-work->angle; - if(scale <= 0.0f) { - scale = 0.0f; - work->type = 0; - work->stat |= 0x8; - if(work->state == 0) { - MGSeqPauseEnableCtrl(1); - } - } - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[0], idx, scale); - } - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->type == 2) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + s16 i, j; + float time; + float pos_x; + if (work->state == 0) { + if (work->time < 45) { + if (work->time > 10 && work->time <= 40) { + time = work->time - 10; + scale = 10.0f * (1.0f - (time / 30.0f)); + pos_x = (work->x - (0.5f * (work->word_len * 56))) + 28.0f; + HuSprPosSet(work->spr_grp[0], 0, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], 0, work->scale_x + scale, work->scale_y + scale); + scale = time / 30.0f; + HuSprTPLvlSet(work->spr_grp[0], 0, scale); + } + for (i = 0; i < 4; i++) { + time = work->time - i; + if (time < 0 || time > 40) { + continue; + } + for (j = 1; j < work->word_len; j++) { + pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (j * 56); + if (time == 40.0f) { + HuSprPosSet(work->spr_grp[i], j, pos_x, work->y); + HuSprZRotSet(work->spr_grp[i], j, 0.0f); + HuSprScaleSet(work->spr_grp[i], j, work->scale_x, work->scale_y); + if (i != 0) { + HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + else { + s16 discard_cnt; + static float letterOfs[] = { 30, 20, 20, 3, -4, 20, -30, 20, 20, 20, -30, 20, -10, 40, 10, -40 }; + float x, y; + float ofs_x, ofs_y; + float zrot, scale_ang; + x = pos_x; + y = work->y; + ofs_x = letterOfs[((j - 1) & 0x7) * 2]; + ofs_y = letterOfs[(((j - 1) & 0x7) * 2) + 1]; + zrot = 0.0f; + discard_cnt = 0; + scale_ang = 0.0f; + for (idx = 0; idx < 40.0f - time; idx++) { + if (x + ofs_x > HU_DISP_WIDTH || x + ofs_x < 0) { + ofs_x = -ofs_x; + discard_cnt++; + } + if (y + ofs_y > HU_DISP_HEIGHT || y + ofs_y < 0) { + ofs_y = -ofs_y; + discard_cnt++; + } + if (discard_cnt) { + zrot += 20.0f; + scale_ang = 0.0f; + } + x += ofs_x; + y += ofs_y; + } + HuSprPosSet(work->spr_grp[i], j, x, y); + HuSprScaleSet(work->spr_grp[i], j, work->scale_x * cos((M_PI * scale_ang) / 180.0), work->scale_y); + HuSprZRotSet(work->spr_grp[i], j, zrot); + } + } + } + } + else { + if (work->time > 60) { + time = work->time - 60; + scale = 0.5 * sin((M_PI * (time * 9.0f)) / 180.0); + for (j = 0; j < work->word_len; j++) { + pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + + ((j * 56) * (scale + work->scale_x)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + scale, work->scale_y + scale); + } + } + } + if (work->time == 60) { + HuAudFXPlay(36); + work->stat |= 0x10; + } + if (work->time == 80) { + work->stat |= 0x4; + SeqPlayStartFX(); + } + if (work->time >= 80) { + work->type = 0; + } + } + else { + if (work->time == 1) { + if (work->state == 1) { + HuAudFXPlay(37); + } + else { + HuAudFXPlay(40); + } + MGSeqPauseEnableCtrl(0); + work->stat |= 0x10; + } + if (work->time <= 20) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + time = work->time; + scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); + pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), + work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + } + if (time == 20.0f) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); + } + } + } + else { + if (work->time > 80 && work->time <= 95) { + time = work->time - 80; + for (j = 0; j < work->word_len; j++) { + pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (j * 56); + HuSprPosSet( + work->spr_grp[0], j, pos_x + ((HU_DISP_CENTERX - pos_x) * (1.0 - cos((M_PI * (time * 6.0)) / 180.0))), work->y); + } + if (time == 15.0f) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[1], j, HUSPR_ATTR_DISPOFF); + HuSprPosSet(work->spr_grp[1], j, HU_DISP_CENTERX, work->y); + HuSprTPLvlSet(work->spr_grp[1], j, 1.0f); + } + } + } + else { + if (work->time > 105) { + for (j = 0; j < work->word_len; j++) { + time = work->time - 105; + time -= j * 3; + if (time < 0) { + continue; + } + scale = 1.0f - (time / 15.0f); + if (scale < 0.0f) { + scale = 0.0f; + } + HuSprPosSet(work->spr_grp[0], j, HU_DISP_CENTERX, work->y + ((-100.0f - work->y) * (time / 20.0f))); + HuSprTPLvlSet(work->spr_grp[0], j, scale); + HuSprPosSet(work->spr_grp[1], j, HU_DISP_CENTERX, work->y + ((580.0f - work->y) * (time / 20.0f))); + HuSprTPLvlSet(work->spr_grp[1], j, scale); + } + } + } + } + if (work->time == 130) { + work->stat |= 0x4; + } + if (work->time >= 130) { + work->type = 0; + work->stat |= 0x8; + } + } + + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + scale = 1.0f - work->angle; + if (scale <= 0.0f) { + scale = 0.0f; + work->type = 0; + work->stat |= 0x8; + if (work->state == 0) { + MGSeqPauseEnableCtrl(1); + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[0], idx, scale); + } + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqUpdateMG1vs3(SeqWork *work) { - s16 idx; - float scale; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->type == 2) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - float time; - float scale_x, scale_y; - float pos_x, pos_y; - s16 i; - s16 j; - if(work->state == 0) { - if(work->time <= 10) { - scale = work->time/10.0f; - time = work->time; - for(idx=0; idxword_len; idx++) { - scale_x = 0.3*work->scale_x; - scale_y = 0.3*work->scale_y; - pos_x = ((28.0f*scale_x)+(work->x-(0.5f*(scale_x*(work->word_len*56)))))+(scale_x*(idx*56)); - pos_y = work->y-(150.0*sin((M_PI*(((16.0f/3.0f)*time)+20.0f))/180.0)); - HuSprPosSet(work->spr_grp[0], idx, pos_x, pos_y); - HuSprScaleSet(work->spr_grp[0], idx, scale_x, scale_y*cos(M_PI*(12.0f*time)/180.0)); - HuSprTPLvlSet(work->spr_grp[0], idx, scale); - } - } else { - if(work->time <= 60) { - for(i=0; i<4; i++) { - for(idx=0; idxword_len; idx++) { - time = (work->time-10)-(idx*3)-i; - if(time < 0.0f) { - time = 0.0f; - } else { - if(time > 30.0f) { - continue; - } - } - scale = 0.3+(0.7*(1.0-cos((M_PI*(time*3.0f))/180.0))); - scale_x = work->scale_x*scale; - scale_y = work->scale_y*scale; - pos_x = ((28.0f*scale_x)+(work->x-(0.5f*(scale_x*(work->word_len*56)))))+(scale_x*(idx*56)); - pos_y = work->y-(150.0*sin((M_PI*(((16.0f/3.0f)*time)+20.0f))/180.0)); - HuSprPosSet(work->spr_grp[i], idx, pos_x, pos_y); - HuSprScaleSet(work->spr_grp[i], idx, scale_x, scale_y*cos(M_PI*(12.0f*time)/180.0)); - } - } - if(work->time == 60) { - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - } - } else { - if(work->time > 70) { - time = work->time-70; - scale = 0.5*sin((M_PI*(time*9.0f))/180.0); - for(j=0; jword_len; j++) { - pos_x = (28.0f*(scale+work->scale_x))+(work->x-(0.5f*((work->word_len*56)*(scale+work->scale_x))))+((j*56)*(scale+work->scale_x)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+scale, work->scale_y+scale); - } - } - } - } - if(work->time == 70) { - HuAudFXPlay(36); - work->stat |= 0x10; - } - if(work->time == 90) { - work->stat |= 0x4; - SeqPlayStartFX(); - } - if(work->time >= 90) { - work->type = 0; - } - } else { - if(work->time == 1) { - if(work->state == 1) { - HuAudFXPlay(37); - } else { - HuAudFXPlay(40); - } - MGSeqPauseEnableCtrl(0); - work->stat |= 0x10; - } - if(work->time <= 20) { - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - time = work->time; - scale = work->scale_x+(0.5*sin((M_PI*(time*9.0f))/180.0)); - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); - pos_x = ((28.0f*scale)+(work->x-(0.5f*(scale*(work->word_len*56)))))+(scale*(j*56)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+(sin((M_PI*(time*9.0f))/180.0)), work->scale_y+(sin((M_PI*(time*9.0f))/180.0))); - } - if(time == 20.0f) { - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - } - } else { - if(work->time > 80 || work->time < 140) { - for(i=0; i<4; i++) { - for(j=0; jword_len; j++) { - time = (work->time-80)-i-j; - if(time < 0 || time > 40) { - continue; - } - if(time <= 20) { - float pos_base = (28.0f+(work->x-(0.5f*(work->word_len*56))))+(j*56); - pos_x = (28.0f+(work->x-(0.5f*(work->word_len*56))))+((work->word_len-j-1)*56); - HuSprPosSet(work->spr_grp[i], j, pos_base+((time/20.0f)*(pos_x-pos_base)), work->y+(((HU_DISP_HEIGHT-40)-work->y)*(time/20.0f))); - } else { - time -= 20.0f; - pos_x = (28.0f+(work->x-(0.5f*(work->word_len*56))))+((work->word_len-j-1)*56); - pos_y = HU_DISP_HEIGHT-40; - HuSprPosSet(work->spr_grp[i], j, pos_x, pos_y+((-40.0f-pos_y)*(time/20.0f))); - } - } - } - } - } - if(work->time == 140) { - work->stat |= 0x4; - } - if(work->time >= 140) { - work->type = 0; - work->stat |= 0x8; - } - } - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - scale = 1.0f-work->angle; - if(scale <= 0.0f) { - scale = 0.0f; - work->type = 0; - work->stat |= 0x8; - if(work->state == 0) { - MGSeqPauseEnableCtrl(1); - } - } - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[0], idx, scale); - } - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->type == 2) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + float time; + float scale_x, scale_y; + float pos_x, pos_y; + s16 i; + s16 j; + if (work->state == 0) { + if (work->time <= 10) { + scale = work->time / 10.0f; + time = work->time; + for (idx = 0; idx < work->word_len; idx++) { + scale_x = 0.3 * work->scale_x; + scale_y = 0.3 * work->scale_y; + pos_x = ((28.0f * scale_x) + (work->x - (0.5f * (scale_x * (work->word_len * 56))))) + (scale_x * (idx * 56)); + pos_y = work->y - (150.0 * sin((M_PI * (((16.0f / 3.0f) * time) + 20.0f)) / 180.0)); + HuSprPosSet(work->spr_grp[0], idx, pos_x, pos_y); + HuSprScaleSet(work->spr_grp[0], idx, scale_x, scale_y * cos(M_PI * (12.0f * time) / 180.0)); + HuSprTPLvlSet(work->spr_grp[0], idx, scale); + } + } + else { + if (work->time <= 60) { + for (i = 0; i < 4; i++) { + for (idx = 0; idx < work->word_len; idx++) { + time = (work->time - 10) - (idx * 3) - i; + if (time < 0.0f) { + time = 0.0f; + } + else { + if (time > 30.0f) { + continue; + } + } + scale = 0.3 + (0.7 * (1.0 - cos((M_PI * (time * 3.0f)) / 180.0))); + scale_x = work->scale_x * scale; + scale_y = work->scale_y * scale; + pos_x = ((28.0f * scale_x) + (work->x - (0.5f * (scale_x * (work->word_len * 56))))) + (scale_x * (idx * 56)); + pos_y = work->y - (150.0 * sin((M_PI * (((16.0f / 3.0f) * time) + 20.0f)) / 180.0)); + HuSprPosSet(work->spr_grp[i], idx, pos_x, pos_y); + HuSprScaleSet(work->spr_grp[i], idx, scale_x, scale_y * cos(M_PI * (12.0f * time) / 180.0)); + } + } + if (work->time == 60) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + } + } + else { + if (work->time > 70) { + time = work->time - 70; + scale = 0.5 * sin((M_PI * (time * 9.0f)) / 180.0); + for (j = 0; j < work->word_len; j++) { + pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + + ((j * 56) * (scale + work->scale_x)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + scale, work->scale_y + scale); + } + } + } + } + if (work->time == 70) { + HuAudFXPlay(36); + work->stat |= 0x10; + } + if (work->time == 90) { + work->stat |= 0x4; + SeqPlayStartFX(); + } + if (work->time >= 90) { + work->type = 0; + } + } + else { + if (work->time == 1) { + if (work->state == 1) { + HuAudFXPlay(37); + } + else { + HuAudFXPlay(40); + } + MGSeqPauseEnableCtrl(0); + work->stat |= 0x10; + } + if (work->time <= 20) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + time = work->time; + scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); + pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), + work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + } + if (time == 20.0f) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + } + } + else { + if (work->time > 80 || work->time < 140) { + for (i = 0; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + time = (work->time - 80) - i - j; + if (time < 0 || time > 40) { + continue; + } + if (time <= 20) { + float pos_base = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (j * 56); + pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + ((work->word_len - j - 1) * 56); + HuSprPosSet(work->spr_grp[i], j, pos_base + ((time / 20.0f) * (pos_x - pos_base)), + work->y + (((HU_DISP_HEIGHT - 40) - work->y) * (time / 20.0f))); + } + else { + time -= 20.0f; + pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + ((work->word_len - j - 1) * 56); + pos_y = HU_DISP_HEIGHT - 40; + HuSprPosSet(work->spr_grp[i], j, pos_x, pos_y + ((-40.0f - pos_y) * (time / 20.0f))); + } + } + } + } + } + if (work->time == 140) { + work->stat |= 0x4; + } + if (work->time >= 140) { + work->type = 0; + work->stat |= 0x8; + } + } + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + scale = 1.0f - work->angle; + if (scale <= 0.0f) { + scale = 0.0f; + work->type = 0; + work->stat |= 0x8; + if (work->state == 0) { + MGSeqPauseEnableCtrl(1); + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[0], idx, scale); + } + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqUpdateMGStory(SeqWork *work) { - s16 idx; - float scale; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->type == 2) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - float pos_x, pos_y; - float time; - s16 i; - s16 j; - if(work->state == 0) { - if(work->time <= 30) { - for(idx=0; idxword_len; idx++) { - time = (work->time-(idx*2)); - if(time < 0.0f || time > 15.0f) { - continue; - } - pos_x = -50.0f; - HuSprPosSet(work->spr_grp[0], idx, pos_x+((HU_DISP_CENTERX-pos_x)*(time/15.0f)), work->y); - HuSprTPLvlSet(work->spr_grp[0], idx, 1.0f); - HuSprZRotSet(work->spr_grp[0], idx, (1.0-(time/15.0f))*180.0); - pos_x = HU_DISP_WIDTH+50; - HuSprPosSet(work->spr_grp[1], idx, pos_x+((HU_DISP_CENTERX-pos_x)*(time/15.0f)), work->y); - HuSprTPLvlSet(work->spr_grp[1], idx, 1.0f); - HuSprZRotSet(work->spr_grp[1], idx, (1.0-(time/15.0f))*-180.0); - } - if(work->time == 30) { - for(j=0; jword_len; j++) { - HuSprAttrSet(work->spr_grp[1], j, HUSPR_ATTR_DISPOFF); - } - } - } else { - if(work->time > 35 && work->time <= 45) { - time = work->time-35; - for(idx=0; idxword_len; idx++) { - pos_x = (work->x-(0.5f*(work->word_len*56)))+28.0f+(idx*56); - HuSprPosSet(work->spr_grp[0], idx, HU_DISP_CENTERX+((pos_x-HU_DISP_CENTERX)*(time/10.0f)), work->y); - } - } else { - if(work->time > 55) { - time = work->time-55; - scale = 0.5*sin(M_PI*(9.0f*time)/180.0); - for(j=0; jword_len; j++) { - pos_x = (28.0f*(scale+work->scale_x))+(work->x-(0.5f*((work->word_len*56)*(scale+work->scale_x))))+((j*56)*(scale+work->scale_x)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+scale, work->scale_y+scale); - } - } - } - } - if(work->time == 55) { - HuAudFXPlay(36); - work->stat |= 0x10; - } - if(work->time == 75) { - SeqPlayStartFX(); - work->stat |= 0x4; - } - if(work->time >= 75) { - work->type = 0; - } - } else { - if(work->time == 1) { - if(work->state == 1) { - HuAudFXPlay(37); - } else { - HuAudFXPlay(40); - } - MGSeqPauseEnableCtrl(0); - work->stat |= 0x10; - } - if(work->time <= 20) { - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - time = work->time; - scale = work->scale_x+(0.5*sin((M_PI*(time*9.0f))/180.0)); - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); - pos_x = ((28.0f*scale)+(work->x-(0.5f*(scale*(work->word_len*56)))))+(scale*(j*56)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+(sin((M_PI*(time*9.0f))/180.0)), work->scale_y+(sin((M_PI*(time*9.0f))/180.0))); - } - if(time == 20.0f){ - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - } - } else if(work->time > 80 && work->time < 160) { - for(i=0; i<4; i++) { - for(j=0; jword_len; j++) { - s16 initF; - float dx, dy; - time = (work->time-80)-i; - if(time < 0 || time > 60) { - continue; - } - pos_x = (28.0f+(work->x-(0.5f*(work->word_len*56))))+(j*56); - dx = 28.0f+(work->x-(0.5f*(work->word_len*56))); - pos_y = work->y; - for(idx=initF=0; idxx-(0.5f*(work->word_len*56))); - initF = 1; - dy = 25.0f; - dx = 10.0f; - } - - } else { - pos_x += dx; - pos_y += dy; - dx += 0.1; - dy -= 2.0f; - if(pos_y < 0.0f) { - break; - } - } - } - - HuSprPosSet(work->spr_grp[i], j, pos_x, pos_y); - } - } - } - if(work->time == 160) { - work->stat |= 0x4; - } - if(work->time >= 160) { - work->type = 0; - work->stat |= 0x8; - } - } - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - scale = 1.0f-work->angle; - if(scale <= 0.0f) { - scale = 0.0f; - work->type = 0; - work->stat |= 0x8; - if(work->state == 0) { - MGSeqPauseEnableCtrl(1); - } - } - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[0], idx, scale); - } - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->type == 2) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + float pos_x, pos_y; + float time; + s16 i; + s16 j; + if (work->state == 0) { + if (work->time <= 30) { + for (idx = 0; idx < work->word_len; idx++) { + time = (work->time - (idx * 2)); + if (time < 0.0f || time > 15.0f) { + continue; + } + pos_x = -50.0f; + HuSprPosSet(work->spr_grp[0], idx, pos_x + ((HU_DISP_CENTERX - pos_x) * (time / 15.0f)), work->y); + HuSprTPLvlSet(work->spr_grp[0], idx, 1.0f); + HuSprZRotSet(work->spr_grp[0], idx, (1.0 - (time / 15.0f)) * 180.0); + pos_x = HU_DISP_WIDTH + 50; + HuSprPosSet(work->spr_grp[1], idx, pos_x + ((HU_DISP_CENTERX - pos_x) * (time / 15.0f)), work->y); + HuSprTPLvlSet(work->spr_grp[1], idx, 1.0f); + HuSprZRotSet(work->spr_grp[1], idx, (1.0 - (time / 15.0f)) * -180.0); + } + if (work->time == 30) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrSet(work->spr_grp[1], j, HUSPR_ATTR_DISPOFF); + } + } + } + else { + if (work->time > 35 && work->time <= 45) { + time = work->time - 35; + for (idx = 0; idx < work->word_len; idx++) { + pos_x = (work->x - (0.5f * (work->word_len * 56))) + 28.0f + (idx * 56); + HuSprPosSet(work->spr_grp[0], idx, HU_DISP_CENTERX + ((pos_x - HU_DISP_CENTERX) * (time / 10.0f)), work->y); + } + } + else { + if (work->time > 55) { + time = work->time - 55; + scale = 0.5 * sin(M_PI * (9.0f * time) / 180.0); + for (j = 0; j < work->word_len; j++) { + pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + + ((j * 56) * (scale + work->scale_x)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + scale, work->scale_y + scale); + } + } + } + } + if (work->time == 55) { + HuAudFXPlay(36); + work->stat |= 0x10; + } + if (work->time == 75) { + SeqPlayStartFX(); + work->stat |= 0x4; + } + if (work->time >= 75) { + work->type = 0; + } + } + else { + if (work->time == 1) { + if (work->state == 1) { + HuAudFXPlay(37); + } + else { + HuAudFXPlay(40); + } + MGSeqPauseEnableCtrl(0); + work->stat |= 0x10; + } + if (work->time <= 20) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + time = work->time; + scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); + pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), + work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + } + if (time == 20.0f) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + } + } + else if (work->time > 80 && work->time < 160) { + for (i = 0; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + s16 initF; + float dx, dy; + time = (work->time - 80) - i; + if (time < 0 || time > 60) { + continue; + } + pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (j * 56); + dx = 28.0f + (work->x - (0.5f * (work->word_len * 56))); + pos_y = work->y; + for (idx = initF = 0; idx < time; idx++) { + if (!initF) { + pos_x -= 20.0f; + if (pos_x <= dx) { + pos_x = 28.0f + (work->x - (0.5f * (work->word_len * 56))); + initF = 1; + dy = 25.0f; + dx = 10.0f; + } + } + else { + pos_x += dx; + pos_y += dy; + dx += 0.1; + dy -= 2.0f; + if (pos_y < 0.0f) { + break; + } + } + } + + HuSprPosSet(work->spr_grp[i], j, pos_x, pos_y); + } + } + } + if (work->time == 160) { + work->stat |= 0x4; + } + if (work->time >= 160) { + work->type = 0; + work->stat |= 0x8; + } + } + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + scale = 1.0f - work->angle; + if (scale <= 0.0f) { + scale = 0.0f; + work->type = 0; + work->stat |= 0x8; + if (work->state == 0) { + MGSeqPauseEnableCtrl(1); + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[0], idx, scale); + } + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqUpdateMG2vs2(SeqWork *work) { - s16 idx; - float scale; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->type == 2) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - static s16 letterOfs[] = { - -10, -50, - 0, -30, - 5, -60, - -10, 60, - 8, -40, - 5, 50, - -10, 20 - }; - - float pos_x; - float time; - s16 i; - s16 j; - if(work->state == 0) { - if(work->time <= 30) { - time = work->time; - for(idx=0; idxword_len; idx++) { - pos_x = (28.0f+(work->x-(0.5f*(work->scale_x*(work->word_len*56)))))+(idx*56); - HuSprPosSet(work->spr_grp[0], idx, pos_x+((1.0f-(time/30.0f))*letterOfs[(idx*2)]), work->y+((1.0f-(time/30.0f))*letterOfs[(idx*2)+1])); - HuSprTPLvlSet(work->spr_grp[0], idx, time/30.0f); - } - } else { - if(work->time > 40 && work->time <= 60) { - time = work->time-40; - scale = 0.5*sin(((time*9.0f)*M_PI)/180.0); - for(j=0; jword_len; j++) { - pos_x = (28.0f*(scale+work->scale_x))+(work->x-(0.5f*((work->word_len*56)*(scale+work->scale_x))))+((j*56)*(scale+work->scale_x)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+scale, work->scale_y+scale); - } - } - } - if(work->time == 40) { - HuAudFXPlay(36); - work->stat |= 0x10; - } - if(work->time == 60) { - work->stat |= 0x4; - SeqPlayStartFX(); - } - if(work->time >= 60) { - work->type = 0; - } - } else { - if(work->time == 1) { - if(work->state == 1) { - HuAudFXPlay(37); - } else { - HuAudFXPlay(40); - } - MGSeqPauseEnableCtrl(0); - work->stat |= 0x10; - } - if(work->time <= 20) { - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - time = work->time; - scale = work->scale_x+(0.5*sin((M_PI*(time*9.0f))/180.0)); - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); - pos_x = ((28.0f*scale)+(work->x-(0.5f*(scale*(work->word_len*56)))))+(scale*(j*56)); - HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x+(sin((M_PI*(time*9.0f))/180.0)), work->scale_y+(sin((M_PI*(time*9.0f))/180.0))); - } - if(time == 20.0f) { - for(i=1; i<4; i++) { - for(j=0; jword_len; j++) { - HuSprAttrReset(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); - } - } - } - } else { - if(work->time > 80 && work->time < 140) { - time = work->time-80; - for(idx=0; idxword_len; idx++) { - float radius = (idx*56)-(((work->word_len-1)*56)/2); - float angle = (1.0f+(1.0f-(ABS(radius)/320.0f)))*720.0f; - float new_scale; - radius *= 1.0-(time/60.0f); - HuSprPosSet(work->spr_grp[0], idx, (radius*sin(M_PI*(((time/60.0f)*angle)+90.0f)/180.0))+work->x, (radius*cos(M_PI*(((time/60.0f)*angle)+90.0f)/180.0))+work->y); - HuSprZRotSet(work->spr_grp[0], idx, -(time/60.0f)*720.0f); - new_scale = 0.5+(0.5*(1.0f-(time/60.0f))); - HuSprScaleSet(work->spr_grp[0], idx, new_scale, new_scale); - HuSprTPLvlSet(work->spr_grp[0], idx, 1.0f-(time/60.0f)); - } - } - } - if(work->time == 140) { - work->stat |= 0x4; - } - if(work->time >= 150) { - work->type = 0; - work->stat |= 0x8; - } - } - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - scale = 1.0f-work->angle; - if(scale <= 0.0f) { - scale = 0.0f; - work->type = 0; - work->stat |= 0x8; - if(work->state == 0) { - MGSeqPauseEnableCtrl(1); - } - } - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[0], idx, scale); - } - } - break; - - default: - - break; - - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->type == 2) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + static s16 letterOfs[] = { -10, -50, 0, -30, 5, -60, -10, 60, 8, -40, 5, 50, -10, 20 }; + + float pos_x; + float time; + s16 i; + s16 j; + if (work->state == 0) { + if (work->time <= 30) { + time = work->time; + for (idx = 0; idx < work->word_len; idx++) { + pos_x = (28.0f + (work->x - (0.5f * (work->scale_x * (work->word_len * 56))))) + (idx * 56); + HuSprPosSet(work->spr_grp[0], idx, pos_x + ((1.0f - (time / 30.0f)) * letterOfs[(idx * 2)]), + work->y + ((1.0f - (time / 30.0f)) * letterOfs[(idx * 2) + 1])); + HuSprTPLvlSet(work->spr_grp[0], idx, time / 30.0f); + } + } + else { + if (work->time > 40 && work->time <= 60) { + time = work->time - 40; + scale = 0.5 * sin(((time * 9.0f) * M_PI) / 180.0); + for (j = 0; j < work->word_len; j++) { + pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + + ((j * 56) * (scale + work->scale_x)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + scale, work->scale_y + scale); + } + } + } + if (work->time == 40) { + HuAudFXPlay(36); + work->stat |= 0x10; + } + if (work->time == 60) { + work->stat |= 0x4; + SeqPlayStartFX(); + } + if (work->time >= 60) { + work->type = 0; + } + } + else { + if (work->time == 1) { + if (work->state == 1) { + HuAudFXPlay(37); + } + else { + HuAudFXPlay(40); + } + MGSeqPauseEnableCtrl(0); + work->stat |= 0x10; + } + if (work->time <= 20) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrSet(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + time = work->time; + scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); + pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); + HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), + work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + } + if (time == 20.0f) { + for (i = 1; i < 4; i++) { + for (j = 0; j < work->word_len; j++) { + HuSprAttrReset(work->spr_grp[i], j, HUSPR_ATTR_DISPOFF); + } + } + } + } + else { + if (work->time > 80 && work->time < 140) { + time = work->time - 80; + for (idx = 0; idx < work->word_len; idx++) { + float radius = (idx * 56) - (((work->word_len - 1) * 56) / 2); + float angle = (1.0f + (1.0f - (ABS(radius) / 320.0f))) * 720.0f; + float new_scale; + radius *= 1.0 - (time / 60.0f); + HuSprPosSet(work->spr_grp[0], idx, (radius * sin(M_PI * (((time / 60.0f) * angle) + 90.0f) / 180.0)) + work->x, + (radius * cos(M_PI * (((time / 60.0f) * angle) + 90.0f) / 180.0)) + work->y); + HuSprZRotSet(work->spr_grp[0], idx, -(time / 60.0f) * 720.0f); + new_scale = 0.5 + (0.5 * (1.0f - (time / 60.0f))); + HuSprScaleSet(work->spr_grp[0], idx, new_scale, new_scale); + HuSprTPLvlSet(work->spr_grp[0], idx, 1.0f - (time / 60.0f)); + } + } + } + if (work->time == 140) { + work->stat |= 0x4; + } + if (work->time >= 150) { + work->type = 0; + work->stat |= 0x8; + } + } + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + scale = 1.0f - work->angle; + if (scale <= 0.0f) { + scale = 0.0f; + work->type = 0; + work->stat |= 0x8; + if (work->state == 0) { + MGSeqPauseEnableCtrl(1); + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[0], idx, scale); + } + } break; + + default: + + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqInitFlip(SeqWork *work, va_list params) { - s16 i; - s16 word_grp; - s16 word_ofs; - work->state = va_arg(params, int); - if(work->state == 2) { - return SeqInitDraw(work, params); - } - work->type = 0; - work->angle = 0; - { - s32 word_ofs_temp; - s32 word_katakana; - s32 word_flag; + s16 i; + s16 word_grp; + s16 word_ofs; + work->state = va_arg(params, int); + if (work->state == 2) { + return SeqInitDraw(work, params); + } + work->type = 0; + work->angle = 0; + { + s32 word_ofs_temp; + s32 word_katakana; + s32 word_flag; - if(seqLanguage == 0) { - word_ofs_temp = 3; - } else { - word_ofs_temp = 0; - } - word_ofs = word_ofs_temp; - word_katakana = 0; - if(work->state == 2 && word_ofs == 0) { - word_katakana = 1; - } - if(word_katakana) { - word_flag = 1; - } else { - word_flag = 0; - } - - word_grp = SeqMakeWord(work, wordMgTbl[work->state+word_ofs], word_flag); - } - HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); - for(i=0; iword_len; i++) { - HuSprTPLvlSet(work->spr_grp[word_grp], i, 0.0f); - HuSprPosSet(work->spr_grp[word_grp], i, (28.0f+(work->x-(0.5f*(work->word_len*56))))+(i*56), work->y); - HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); - HuSprAttrReset(work->spr_grp[word_grp], i, HUSPR_ATTR_DISPOFF); - } - work->alt_word_len = work->word_len; - { - s32 word_ofs_temp; - s32 word_katakana; - s32 word_flag; - - if(seqLanguage == 0) { - word_ofs_temp = 0; - } else { - word_ofs_temp = 3; - } - word_ofs = word_ofs_temp; - word_katakana = 0; - if(work->state == 2 && word_ofs == 0) { - word_katakana = 1; - } - if(word_katakana) { - word_flag = 1; - } else { - word_flag = 0; - } - - word_grp = SeqMakeWord(work, wordMgTbl[work->state+word_ofs], word_flag); - } - HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); - for(i=0; iword_len; i++) { - HuSprTPLvlSet(work->spr_grp[word_grp], i, 0.0f); - HuSprPosSet(work->spr_grp[word_grp], i, (28.0f+(work->x-(0.5f*(work->word_len*56))))+(i*56), work->y); - HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); - HuSprAttrReset(work->spr_grp[word_grp], i, HUSPR_ATTR_DISPOFF); - } - if(seqPauseF) { - work->type = 2; - HuSprAttrSet(word_grp, 0, HUSPR_ATTR_DISPOFF); - } else { - work->param[0] = 3; - } - return 1; + if (seqLanguage == 0) { + word_ofs_temp = 3; + } + else { + word_ofs_temp = 0; + } + word_ofs = word_ofs_temp; + word_katakana = 0; + if (work->state == 2 && word_ofs == 0) { + word_katakana = 1; + } + if (word_katakana) { + word_flag = 1; + } + else { + word_flag = 0; + } + + word_grp = SeqMakeWord(work, wordMgTbl[work->state + word_ofs], word_flag); + } + HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); + for (i = 0; i < work->word_len; i++) { + HuSprTPLvlSet(work->spr_grp[word_grp], i, 0.0f); + HuSprPosSet(work->spr_grp[word_grp], i, (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (i * 56), work->y); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + HuSprAttrReset(work->spr_grp[word_grp], i, HUSPR_ATTR_DISPOFF); + } + work->alt_word_len = work->word_len; + { + s32 word_ofs_temp; + s32 word_katakana; + s32 word_flag; + + if (seqLanguage == 0) { + word_ofs_temp = 0; + } + else { + word_ofs_temp = 3; + } + word_ofs = word_ofs_temp; + word_katakana = 0; + if (work->state == 2 && word_ofs == 0) { + word_katakana = 1; + } + if (word_katakana) { + word_flag = 1; + } + else { + word_flag = 0; + } + + word_grp = SeqMakeWord(work, wordMgTbl[work->state + word_ofs], word_flag); + } + HuSprGrpPosSet(work->spr_grp[word_grp], 0.0f, 0.0f); + for (i = 0; i < work->word_len; i++) { + HuSprTPLvlSet(work->spr_grp[word_grp], i, 0.0f); + HuSprPosSet(work->spr_grp[word_grp], i, (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (i * 56), work->y); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + HuSprAttrReset(work->spr_grp[word_grp], i, HUSPR_ATTR_DISPOFF); + } + if (seqPauseF) { + work->type = 2; + HuSprAttrSet(word_grp, 0, HUSPR_ATTR_DISPOFF); + } + else { + work->param[0] = 3; + } + return 1; } static s32 SeqUpdateFlip(SeqWork *work) { - s16 idx; - float scale; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->type == 2) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - float time; - float pos_x; - s16 i; - if(work->state == 0) { - if(work->time <= 10) { - for(idx=0; idxalt_word_len; idx++) { - HuSprTPLvlSet(work->spr_grp[0], idx, work->time/10.0f); - } - } else { - if(work->time <= 30) { - time = work->time-10; - if(time <= 10) { - for(idx=0; idxalt_word_len; idx++) { - HuSprScaleSet(work->spr_grp[0], idx, cos(M_PI*((time/10.0f)*90.0f)/180.0), 1.0f); - } - } else { - time -= 10.0f; - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[1], idx, 1.0f); - HuSprScaleSet(work->spr_grp[1], idx, sin(M_PI*((time/10.0f)*90.0f)/180.0), 1.0f); - } - } - } else { - if(work->time > 35 && work->time <= 55) { - time = work->time-35; - scale = 0.5*sin(((time*9.0f)*M_PI)/180.0); - for(i=0; iword_len; i++) { - pos_x = (28.0f*(scale+work->scale_x))+(work->x-(0.5f*((work->word_len*56)*(scale+work->scale_x))))+((i*56)*(scale+work->scale_x)); - HuSprPosSet(work->spr_grp[1], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[1], i, work->scale_x+scale, work->scale_y+scale); - } - } - } - } - if(work->time == 35) { - HuAudFXPlay(36); - work->stat |= 0x10; - } - if(work->time == 55) { - work->stat |= 0x4; - SeqPlayStartFX(); - } - if(work->time >= 75) { - work->type = 0; - } - } else { - if(work->time == 1) { - if(work->state == 1) { - HuAudFXPlay(37); - } else { - HuAudFXPlay(40); - } - MGSeqPauseEnableCtrl(0); - work->stat |= 0x10; - } - if(work->time <= 20) { - time = work->time; - scale = 0.5*sin(M_PI*(9.0f*time)/180.0); - for(i=0; iword_len; i++) { - HuSprTPLvlSet(work->spr_grp[1], i, 1.0f); - pos_x = (28.0f*(scale+work->scale_x))+(work->x-(0.5f*((work->word_len*56)*(scale+work->scale_x))))+((i*56)*(scale+work->scale_x)); - HuSprPosSet(work->spr_grp[1], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[1], i, work->scale_x+scale, work->scale_y+scale); - } - } else { - if(work->time > 80 && work->time <= 160) { - time = work->time-80; - for(idx=0; idxword_len; idx++) { - scale = time-(idx*2); - if(scale < 0 || scale > 15.0f) { - continue; - } - HuSprScaleSet(work->spr_grp[1], idx, cos(M_PI*((scale/15.0f)*90.0f)/180.0), 1.0f); - } - for(idx=0; idxalt_word_len; idx++) { - scale = (time-15.0f)-(idx*2); - if(scale < 0 || scale > 30.0f) { - continue; - } - HuSprTPLvlSet(work->spr_grp[0], idx, 1.0f); - HuSprScaleSet(work->spr_grp[0], idx, sin(M_PI*((scale/30.0f)*180.0f)/180.0), 1.0f); - } - } - } - if(work->time == 160) { - work->stat |= 0x4; - } - if(work->time >= 160) { - work->type = 0; - work->stat |= 0x8; - } - } - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - scale = 1.0f-work->angle; - if(scale <= 0.0f) { - scale = 0.0f; - work->type = 0; - work->stat |= 0x8; - if(work->state == 0) { - MGSeqPauseEnableCtrl(1); - } - } - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[1], idx, scale); - } - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->type == 2) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + float time; + float pos_x; + s16 i; + if (work->state == 0) { + if (work->time <= 10) { + for (idx = 0; idx < work->alt_word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[0], idx, work->time / 10.0f); + } + } + else { + if (work->time <= 30) { + time = work->time - 10; + if (time <= 10) { + for (idx = 0; idx < work->alt_word_len; idx++) { + HuSprScaleSet(work->spr_grp[0], idx, cos(M_PI * ((time / 10.0f) * 90.0f) / 180.0), 1.0f); + } + } + else { + time -= 10.0f; + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[1], idx, 1.0f); + HuSprScaleSet(work->spr_grp[1], idx, sin(M_PI * ((time / 10.0f) * 90.0f) / 180.0), 1.0f); + } + } + } + else { + if (work->time > 35 && work->time <= 55) { + time = work->time - 35; + scale = 0.5 * sin(((time * 9.0f) * M_PI) / 180.0); + for (i = 0; i < work->word_len; i++) { + pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + + ((i * 56) * (scale + work->scale_x)); + HuSprPosSet(work->spr_grp[1], i, pos_x, work->y); + HuSprScaleSet(work->spr_grp[1], i, work->scale_x + scale, work->scale_y + scale); + } + } + } + } + if (work->time == 35) { + HuAudFXPlay(36); + work->stat |= 0x10; + } + if (work->time == 55) { + work->stat |= 0x4; + SeqPlayStartFX(); + } + if (work->time >= 75) { + work->type = 0; + } + } + else { + if (work->time == 1) { + if (work->state == 1) { + HuAudFXPlay(37); + } + else { + HuAudFXPlay(40); + } + MGSeqPauseEnableCtrl(0); + work->stat |= 0x10; + } + if (work->time <= 20) { + time = work->time; + scale = 0.5 * sin(M_PI * (9.0f * time) / 180.0); + for (i = 0; i < work->word_len; i++) { + HuSprTPLvlSet(work->spr_grp[1], i, 1.0f); + pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + + ((i * 56) * (scale + work->scale_x)); + HuSprPosSet(work->spr_grp[1], i, pos_x, work->y); + HuSprScaleSet(work->spr_grp[1], i, work->scale_x + scale, work->scale_y + scale); + } + } + else { + if (work->time > 80 && work->time <= 160) { + time = work->time - 80; + for (idx = 0; idx < work->word_len; idx++) { + scale = time - (idx * 2); + if (scale < 0 || scale > 15.0f) { + continue; + } + HuSprScaleSet(work->spr_grp[1], idx, cos(M_PI * ((scale / 15.0f) * 90.0f) / 180.0), 1.0f); + } + for (idx = 0; idx < work->alt_word_len; idx++) { + scale = (time - 15.0f) - (idx * 2); + if (scale < 0 || scale > 30.0f) { + continue; + } + HuSprTPLvlSet(work->spr_grp[0], idx, 1.0f); + HuSprScaleSet(work->spr_grp[0], idx, sin(M_PI * ((scale / 30.0f) * 180.0f) / 180.0), 1.0f); + } + } + } + if (work->time == 160) { + work->stat |= 0x4; + } + if (work->time >= 160) { + work->type = 0; + work->stat |= 0x8; + } + } + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + scale = 1.0f - work->angle; + if (scale <= 0.0f) { + scale = 0.0f; + work->type = 0; + work->stat |= 0x8; + if (work->state == 0) { + MGSeqPauseEnableCtrl(1); + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[1], idx, scale); + } + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqUpdateMGBowser(SeqWork *work) { - s16 idx; - float scale; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - if(work->type == 2) { - return 1; - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - s16 i; - s16 j; - float angle; - float time_angle; - float time; - float pos_x, pos_y; - - float temp_f25; - float center_x; - s16 spr_idx[16]; - float scale_arr[16]; - - - if(work->state == 0) { - if(work->time <= 60) { - center_x = (0.5*(work->word_len*56))+20.0; - for(idx=0; idxword_len; idx++) { - time = work->time-idx; - if(time < 0) { - scale_arr[idx] = 0.0f; - spr_idx[idx] = idx; - } else { - if(time > 50.0f) { - time = 50.0f; - } - time_angle = 540.0*(1.0f-(time/50.0f)); - pos_x = (28.0f+(0.5f*-(work->word_len*56)))+(idx*56); - angle = 180.0*(atan2(pos_x, center_x)/M_PI); - pos_x = work->x+(center_x*sin(M_PI*(angle+time_angle)/180.0)); - pos_y = work->y-(HU_DISP_CENTERY*(1.0-(time/50.0f))); - HuSprPosSet(work->spr_grp[0], idx, pos_x, pos_y); - temp_f25 = 0.9+(0.1*cos(M_PI*(angle+time_angle)/180.0)); - HuSprScaleSet(work->spr_grp[0], idx, temp_f25*cos(M_PI*(angle+time_angle)/180.0), temp_f25); - scale_arr[idx] = cos(M_PI*(angle+time_angle)/180.0); - spr_idx[idx] = idx; - } - } - for(i=1; iword_len; i++) { - for(idx=0; idxword_len-i; idx++) { - if(scale_arr[idx] > scale_arr[idx+1]) { - j= spr_idx[idx]; - spr_idx[idx] = spr_idx[idx+1]; - spr_idx[idx+1] = j; - angle = scale_arr[idx]; - scale_arr[idx] = scale_arr[idx+1]; - scale_arr[idx+1] = angle; - } - } - } - for(idx=0; idxword_len; idx++) { - HuSprPriSet(work->spr_grp[0], spr_idx[idx], idx+5); - } - } else { - if(work->time > 60 && work->time <= 80) { - time = work->time-60; - scale = 0.5*sin(((time*9.0f)*M_PI)/180.0); - for(i=0; iword_len; i++) { - pos_x = (28.0f*(scale+work->scale_x))+(work->x-(0.5f*((work->word_len*56)*(scale+work->scale_x))))+((i*56)*(scale+work->scale_x)); - HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], i, work->scale_x+scale, work->scale_y+scale); - } - } - - } - if(work->time == 60) { - HuAudFXPlay(36); - work->stat |= 0x10; - } - if(work->time == 80) { - work->stat |= 0x4; - SeqPlayStartFX(); - } - if(work->time >= 100) { - work->type = 0; - } - } else { - if(work->time == 1) { - if(work->state == 1) { - HuAudFXPlay(37); - } else { - HuAudFXPlay(40); - } - MGSeqPauseEnableCtrl(0); - work->stat |= 0x10; - } - if(work->time <= 20) { - for(j=1; j<4; j++) { - for(i=0; iword_len; i++) { - HuSprAttrSet(work->spr_grp[j], i, HUSPR_ATTR_DISPOFF); - } - } - time = work->time; - scale = work->scale_x+(0.5*sin(((time*9.0f)*M_PI)/180.0)); - for(i=0; iword_len; i++) { - HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); - pos_x = ((28.0f*scale)+(work->x-(0.5f*(scale*(work->word_len*56)))))+(scale*(i*56)); - HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], i, work->scale_x+(sin((M_PI*(time*9.0f))/180.0)), work->scale_y+(sin((M_PI*(time*9.0f))/180.0))); - } - if(time == 20.0f) { - for(j=1; j<4; j++) { - for(i=0; iword_len; i++) { - HuSprAttrReset(work->spr_grp[j], i, HUSPR_ATTR_DISPOFF); - } - } - } - } else { - if(work->time > 80 && work->time <= 125) { - static float letterOfs[] = { - -30, -30, - HU_DISP_WIDTH+30, -30, - HU_DISP_CENTERX+52, HU_DISP_HEIGHT+30, - HU_DISP_WIDTH+30, HU_DISP_HEIGHT+30, - -30, HU_DISP_HEIGHT-30, - HU_DISP_WIDTH+30, 120, - HU_DISP_CENTERX+162, -30, - }; - for(i=0; i<4; i++) { - time = work->time-80-i; - if(time < 0.0f || time > 15.0f) { - continue; - } - for(idx=0; idxword_len; idx++) { - pos_x = (28.0f+(work->x-(0.5f*(work->word_len*56))))+(idx*56); - pos_x += (time/15.0f)*(letterOfs[(idx*2)]-pos_x); - pos_y = work->y+((time/15.0f)*(letterOfs[(idx*2)+1]-work->y)); - HuSprPosSet(work->spr_grp[i], idx, pos_x, pos_y); - } - } - } - } - if(work->time == 125) { - work->stat |= 0x4; - } - if(work->time >= 135) { - work->type = 0; - work->stat |= 0x8; - } - } - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - scale = 1.0f-work->angle; - if(scale <= 0.0f) { - scale = 0.0f; - work->type = 0; - work->stat |= 0x8; - if(work->state == 0) { - MGSeqPauseEnableCtrl(1); - } - } - for(idx=0; idxword_len; idx++) { - HuSprTPLvlSet(work->spr_grp[0], idx, scale); - } - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + if (work->type == 2) { + return 1; + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + s16 i; + s16 j; + float angle; + float time_angle; + float time; + float pos_x, pos_y; + + float temp_f25; + float center_x; + s16 spr_idx[16]; + float scale_arr[16]; + + if (work->state == 0) { + if (work->time <= 60) { + center_x = (0.5 * (work->word_len * 56)) + 20.0; + for (idx = 0; idx < work->word_len; idx++) { + time = work->time - idx; + if (time < 0) { + scale_arr[idx] = 0.0f; + spr_idx[idx] = idx; + } + else { + if (time > 50.0f) { + time = 50.0f; + } + time_angle = 540.0 * (1.0f - (time / 50.0f)); + pos_x = (28.0f + (0.5f * -(work->word_len * 56))) + (idx * 56); + angle = 180.0 * (atan2(pos_x, center_x) / M_PI); + pos_x = work->x + (center_x * sin(M_PI * (angle + time_angle) / 180.0)); + pos_y = work->y - (HU_DISP_CENTERY * (1.0 - (time / 50.0f))); + HuSprPosSet(work->spr_grp[0], idx, pos_x, pos_y); + temp_f25 = 0.9 + (0.1 * cos(M_PI * (angle + time_angle) / 180.0)); + HuSprScaleSet(work->spr_grp[0], idx, temp_f25 * cos(M_PI * (angle + time_angle) / 180.0), temp_f25); + scale_arr[idx] = cos(M_PI * (angle + time_angle) / 180.0); + spr_idx[idx] = idx; + } + } + for (i = 1; i < work->word_len; i++) { + for (idx = 0; idx < work->word_len - i; idx++) { + if (scale_arr[idx] > scale_arr[idx + 1]) { + j = spr_idx[idx]; + spr_idx[idx] = spr_idx[idx + 1]; + spr_idx[idx + 1] = j; + angle = scale_arr[idx]; + scale_arr[idx] = scale_arr[idx + 1]; + scale_arr[idx + 1] = angle; + } + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprPriSet(work->spr_grp[0], spr_idx[idx], idx + 5); + } + } + else { + if (work->time > 60 && work->time <= 80) { + time = work->time - 60; + scale = 0.5 * sin(((time * 9.0f) * M_PI) / 180.0); + for (i = 0; i < work->word_len; i++) { + pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + + ((i * 56) * (scale + work->scale_x)); + HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], i, work->scale_x + scale, work->scale_y + scale); + } + } + } + if (work->time == 60) { + HuAudFXPlay(36); + work->stat |= 0x10; + } + if (work->time == 80) { + work->stat |= 0x4; + SeqPlayStartFX(); + } + if (work->time >= 100) { + work->type = 0; + } + } + else { + if (work->time == 1) { + if (work->state == 1) { + HuAudFXPlay(37); + } + else { + HuAudFXPlay(40); + } + MGSeqPauseEnableCtrl(0); + work->stat |= 0x10; + } + if (work->time <= 20) { + for (j = 1; j < 4; j++) { + for (i = 0; i < work->word_len; i++) { + HuSprAttrSet(work->spr_grp[j], i, HUSPR_ATTR_DISPOFF); + } + } + time = work->time; + scale = work->scale_x + (0.5 * sin(((time * 9.0f) * M_PI) / 180.0)); + for (i = 0; i < work->word_len; i++) { + HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); + pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (i * 56)); + HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); + HuSprScaleSet(work->spr_grp[0], i, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), + work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + } + if (time == 20.0f) { + for (j = 1; j < 4; j++) { + for (i = 0; i < work->word_len; i++) { + HuSprAttrReset(work->spr_grp[j], i, HUSPR_ATTR_DISPOFF); + } + } + } + } + else { + if (work->time > 80 && work->time <= 125) { + static float letterOfs[] = { + -30, + -30, + HU_DISP_WIDTH + 30, + -30, + HU_DISP_CENTERX + 52, + HU_DISP_HEIGHT + 30, + HU_DISP_WIDTH + 30, + HU_DISP_HEIGHT + 30, + -30, + HU_DISP_HEIGHT - 30, + HU_DISP_WIDTH + 30, + 120, + HU_DISP_CENTERX + 162, + -30, + }; + for (i = 0; i < 4; i++) { + time = work->time - 80 - i; + if (time < 0.0f || time > 15.0f) { + continue; + } + for (idx = 0; idx < work->word_len; idx++) { + pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (idx * 56); + pos_x += (time / 15.0f) * (letterOfs[(idx * 2)] - pos_x); + pos_y = work->y + ((time / 15.0f) * (letterOfs[(idx * 2) + 1] - work->y)); + HuSprPosSet(work->spr_grp[i], idx, pos_x, pos_y); + } + } + } + } + if (work->time == 125) { + work->stat |= 0x4; + } + if (work->time >= 135) { + work->type = 0; + work->stat |= 0x8; + } + } + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + scale = 1.0f - work->angle; + if (scale <= 0.0f) { + scale = 0.0f; + work->type = 0; + work->stat |= 0x8; + if (work->state == 0) { + MGSeqPauseEnableCtrl(1); + } + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprTPLvlSet(work->spr_grp[0], idx, scale); + } + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqInitDraw(SeqWork *work, va_list params) { - s16 word_grp; - work->state = 2; - work->seq_no = 13; - work->type = 0; - work->angle = 0.0f; - { - s32 word_flag; - s32 word_ofs; + s16 word_grp; + work->state = 2; + work->seq_no = 13; + work->type = 0; + work->angle = 0.0f; + { + s32 word_flag; + s32 word_ofs; - if(seqLanguage == 0) { - word_flag = 1; - } else { - word_flag = 0; - } - if(seqLanguage == 0) { - word_ofs = 0; - } else { - word_ofs = 3; - } - - word_grp = SeqMakeWord(work, wordMgTbl[2+word_ofs], word_flag); - } - HuSprGrpPosSet(work->spr_grp[word_grp], HU_DISP_CENTERX, HU_DISP_CENTERY); - work->param[0] = 3; - return 1; + if (seqLanguage == 0) { + word_flag = 1; + } + else { + word_flag = 0; + } + if (seqLanguage == 0) { + word_ofs = 0; + } + else { + word_ofs = 3; + } + + word_grp = SeqMakeWord(work, wordMgTbl[2 + word_ofs], word_flag); + } + HuSprGrpPosSet(work->spr_grp[word_grp], HU_DISP_CENTERX, HU_DISP_CENTERY); + work->param[0] = 3; + return 1; } static s32 SeqUpdateDraw(SeqWork *work) { - s16 idx; - float scale; - s16 group = work->spr_grp[0]; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - float time; - float scale; - float zrot; - if(work->time <= 20) { - time = work->time; - zrot = 365.0f*(time/20.0f); - scale = 1.3f*sin(M_PI*(90.0f*(time/20.0f))/180.0); - HuSprGrpScaleSet(group, scale, scale); - HuSprGrpZRotSet(group, zrot); - } - if(work->time > 20 && work->time <= 25) { - HuSprGrpZRotSet(group, 0.0f); - time = work->time-20; - scale = 1.0+(0.3*cos(M_PI*(90.0f*(time/5.0f))/180.0)); - HuSprGrpScaleSet(group, scale, scale); - } - if(work->time == 5) { - HuAudFXPlay(40); - } - if(work->time == 60) { - work->type = 0; - } - } - break; - - case -1: - { - float tp_lvl; - work->angle += seqSpeed*0.1f; - tp_lvl = 1.0f-work->angle; - if(tp_lvl <= 0.0f) { - tp_lvl = 0.0f; - work->state = 0; - work->stat |= 0x8; - } - HuSprGrpTPLvlSet(group, tp_lvl); - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 idx; + float scale; + s16 group = work->spr_grp[0]; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + float time; + float scale; + float zrot; + if (work->time <= 20) { + time = work->time; + zrot = 365.0f * (time / 20.0f); + scale = 1.3f * sin(M_PI * (90.0f * (time / 20.0f)) / 180.0); + HuSprGrpScaleSet(group, scale, scale); + HuSprGrpZRotSet(group, zrot); + } + if (work->time > 20 && work->time <= 25) { + HuSprGrpZRotSet(group, 0.0f); + time = work->time - 20; + scale = 1.0 + (0.3 * cos(M_PI * (90.0f * (time / 5.0f)) / 180.0)); + HuSprGrpScaleSet(group, scale, scale); + } + if (work->time == 5) { + HuAudFXPlay(40); + } + if (work->time == 60) { + work->type = 0; + } + } break; + + case -1: { + float tp_lvl; + work->angle += seqSpeed * 0.1f; + tp_lvl = 1.0f - work->angle; + if (tp_lvl <= 0.0f) { + tp_lvl = 0.0f; + work->state = 0; + work->stat |= 0x8; + } + HuSprGrpTPLvlSet(group, tp_lvl); + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } -static char *winCharNameTbl[] = { - "マリオ", - "MARIO", - "ルイージ", - "LUIGI", - "ピーチ", - "PEACH", - "ヨッシー", - "YOSHI", - "ワリオ", - "WARIO", - "ドンキー", - " DK ", - "デイジー", - "DAISY", - "ワルイージ", - "WALUIGI", - "クッパ", - "BOWSER", - "キノピオ", - "TOAD", - "ヘイホー", - "SHY GUY", - "テレサ", - "BOO", - "ノコノコ", - "KOOPA", - "ミニクッパ", - "KOOPA KID", - "クリボー", - "GOOMBA" -}; +static char *winCharNameTbl[] + = { "マリオ", "MARIO", "ルイージ", "LUIGI", "ピーチ", "PEACH", "ヨッシー", "YOSHI", "ワリオ", "WARIO", "ドンキー", " DK ", "デイジー", "DAISY", "ワルイージ", "WALUIGI", + "クッパ", "BOWSER", "キノピオ", "TOAD", "ヘイホー", "SHY GUY", "テレサ", "BOO", "ノコノコ", "KOOPA", "ミニクッパ", VERSION_NTSC ? "KOOPA KID" : "MINI BOWSER", "クリボー", "GOOMBA" }; -static char *winWordTbl[] = { - "カチ", - "WON!", - "ハイボク", - "LOSE", - "ユウショウ!", - "CHAMPION!" -}; +static char *winWordTbl[] = { "カチ", "WON!", "ハイボク", "LOSE", "ユウショウ!", "CHAMPION!" }; -static s16 winPosOfs[][5][2] = { - { - { 114, 0 }, - { -144, 0 }, - { 0, 0 }, - { 0, 0 }, - { 0, 0 } - }, - { - { 0, 35 }, - { -144, -35 }, - { 144, -35 }, - { 0, 0 }, - { 0, 0 } - }, - { - { 0, 105 }, - { 0, -105 }, - { -144, 0 }, - { 144, 0 }, - { 0, 0 } - }, - { - { 0, 105 }, - { -144, -105 }, - { 144, -105 }, - { -144, 0 }, - { 144, 0 } - } -}; +static s16 winPosOfs[][5][2] + = { { { 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, { { 0, 35 }, { -144, -35 }, { 144, -35 }, { 0, 0 }, { 0, 0 } }, + { { 0, 105 }, { 0, -105 }, { -144, 0 }, { 144, 0 }, { 0, 0 } }, { { 0, 105 }, { -144, -105 }, { 144, -105 }, { -144, 0 }, { 144, 0 } } }; static s16 winnerNameW[8]; #define GET_LANG_IDX() ((seqLanguage == 0) ? 0 : 1) #define GET_WIN_KANAF() ((seqLanguage == 0) ? 1 : 0) - static s32 SeqInitWin(SeqWork *work, va_list params) { - int win_type = va_arg(params, int); - s16 word_idx; - s16 word_grp; - s32 i; - s32 j; - s32 num_winners; - float word_w; - float word_x; - if(win_type < 0 && win_type >= 6) { - return 0; - } - if(win_type == 3) { - word_idx = GET_LANG_IDX(); - } else { - if(win_type == 4) { - word_idx = GET_LANG_IDX()+2; - } else { - word_idx = GET_LANG_IDX()+4; - } - } - word_grp = SeqMakeWord(work, winWordTbl[word_idx], GET_WIN_KANAF()); - winnerNameW[0] = work->word_len*50; - for(i=0; iword_len; i++) { - HuSprPosSet(work->spr_grp[word_grp], i, 25.0f+((i*50)-(0.5f*(work->word_len*50))), 0.0f); - HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); - } - num_winners = 0; - work->win_scale = 1.0f; - for(j=0; j<4; j++) { - int winner = va_arg(params, int); - if(winner < 0) { - continue; - } - word_grp = SeqMakeWord(work, winCharNameTbl[(winner*2)+GET_LANG_IDX()], 0); - if(seqLanguage != 0) { - char *name = winCharNameTbl[(winner*2)+GET_LANG_IDX()]; - word_w = 0.0f; - for(i=word_w; iword_len; i++, name++) { - if(*name == ' ') { - word_w += 30.0f; - } else { - word_w += 50.0f; - } - } - name = winCharNameTbl[(winner*2)+GET_LANG_IDX()]; - word_x = 0.0f; - for(i=word_x; iword_len; i++, name++) { - HuSprPosSet(work->spr_grp[word_grp], i, 25.0+(word_x-(0.5*word_w)), 0.0f); - HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); - if(*name == ' ') { - word_x += 30.0f; - } else { - word_x += 50.0f; - } - } - if(work->win_scale == 0.6f || winner == 7 || winner == 13 || winner == 10) { - work->win_scale = 0.6f; - } else { - work->win_scale = 0.75f; - } - winnerNameW[num_winners+1] = word_w; - } else { - if(winner == 7 || winner == 13) { - for(i=0;iword_len; i++) { - HuSprPosSet(work->spr_grp[word_grp], i, 26.0f+((i*52)-(0.5f*(work->word_len*52))), 0.0f); - HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); - } - work->win_scale = 0.8f; - winnerNameW[num_winners+1] = work->word_len*52; - } else { - work->win_scale = 1.0f; - winnerNameW[num_winners+1] = work->word_len*56; - } - - } - num_winners++; - } - if(num_winners == 0) { - return 0; - } - work->state = 0; - work->word_len = num_winners+1; - work->angle = 0.0f; - work->type = 0; - for(j=0; jwin_scale)); - if(j == 0) { - word_x = (((HU_DISP_WIDTH-word_x)/2.0f)+(word_x-(winnerNameW[0]/2)))-HU_DISP_CENTERX; - } else { - word_x = (((HU_DISP_WIDTH-word_x)/2.0f)+(winnerNameW[1]/2))-HU_DISP_CENTERX; - } - } else { - if(abs(winPosOfs[num_winners-1][j][0]) == 144.0f) { - if(winnerNameW[j]+32 < HU_DISP_CENTERX) { - word_x = 176.0f; - } else { - word_x = 32.0f+((winnerNameW[j]*work->win_scale)/2.0f); - } - if(winPosOfs[num_winners-1][j][0] < 0) { - word_x = -(HU_DISP_CENTERX-word_x); - } else { - word_x = (HU_DISP_WIDTH-word_x)-HU_DISP_CENTERX; - } - } else { - word_x = winPosOfs[num_winners-1][j][0]; - } - } - HuSprGrpPosSet(work->spr_grp[j], HU_DISP_CENTERX+word_x, HU_DISP_CENTERY+winPosOfs[num_winners-1][j][1]); - } - if(seqPauseF) { - work->type = 1; - num_winners++; - for(j=0; jspr_grp[j], 0, HUSPR_ATTR_DISPOFF); - } - } else { - work->param[0] = 3; - } - return 1; + int win_type = va_arg(params, int); + s16 word_idx; + s16 word_grp; + s32 i; + s32 j; + s32 num_winners; + float word_w; + float word_x; + if (win_type < 0 && win_type >= 6) { + return 0; + } + if (win_type == 3) { + word_idx = GET_LANG_IDX(); + } + else { + if (win_type == 4) { + word_idx = GET_LANG_IDX() + 2; + } + else { + word_idx = GET_LANG_IDX() + 4; + } + } + word_grp = SeqMakeWord(work, winWordTbl[word_idx], GET_WIN_KANAF()); + winnerNameW[0] = work->word_len * 50; + for (i = 0; i < work->word_len; i++) { + HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + } + num_winners = 0; + work->win_scale = 1.0f; + for (j = 0; j < 4; j++) { + int winner = va_arg(params, int); + (void)winner; // to match PAL + if (winner < 0) { + continue; + } + word_grp = SeqMakeWord(work, winCharNameTbl[(winner * 2) + GET_LANG_IDX()], 0); +#if VERSION_NTSC + if (seqLanguage != 0) { + char *name = winCharNameTbl[(winner * 2) + GET_LANG_IDX()]; + word_w = 0.0f; + for (i = word_w; i < work->word_len; i++, name++) { + if (*name == ' ') { + word_w += 30.0f; + } + else { + word_w += 50.0f; + } + } + name = winCharNameTbl[(winner * 2) + GET_LANG_IDX()]; + word_x = 0.0f; + for (i = word_x; i < work->word_len; i++, name++) { + HuSprPosSet(work->spr_grp[word_grp], i, 25.0 + (word_x - (0.5 * word_w)), 0.0f); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + if (*name == ' ') { + word_x += 30.0f; + } + else { + word_x += 50.0f; + } + } + if (work->win_scale == 0.6f || winner == 7 || winner == 13 || winner == 10) { + work->win_scale = 0.6f; + } + else { + work->win_scale = 0.75f; + } + winnerNameW[num_winners + 1] = word_w; + } + else { + if (winner == 7 || winner == 13) { + for (i = 0; i < work->word_len; i++) { + HuSprPosSet(work->spr_grp[word_grp], i, 26.0f + ((i * 52) - (0.5f * (work->word_len * 52))), 0.0f); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + } + work->win_scale = 0.8f; + winnerNameW[num_winners + 1] = work->word_len * 52; + } + else { + work->win_scale = 1.0f; + winnerNameW[num_winners + 1] = work->word_len * 56; + } + } +#else + for (i = 0; i < work->word_len; i++) { + HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + } + if ((work->win_scale == 0.5f) || (winner == 13)) { + work->win_scale = 0.5f; + } + else if ((work->win_scale == 0.6f) || (winner == 7) || (winner == 10)) { + work->win_scale = 0.6f; + } + else { + work->win_scale = 0.75f; + } + winnerNameW[num_winners + 1] = work->word_len * 50; +#endif + num_winners++; + } + if (num_winners == 0) { + return 0; + } + work->state = 0; + work->word_len = num_winners + 1; + work->angle = 0.0f; + work->type = 0; + for (j = 0; j < num_winners + 1; j++) { + if (num_winners == 1) { + word_x = 32.0f + ((float)winnerNameW[0] + (winnerNameW[1] * work->win_scale)); + if (j == 0) { + word_x = (((HU_DISP_WIDTH - word_x) / 2.0f) + (word_x - (winnerNameW[0] / 2))) - HU_DISP_CENTERX; + } + else { + word_x = (((HU_DISP_WIDTH - word_x) / 2.0f) + (winnerNameW[1] / 2)) - HU_DISP_CENTERX; + } + } + else { + if (abs(winPosOfs[num_winners - 1][j][0]) == 144.0f) { +#if VERSION_NTSC + if (winnerNameW[j] + 32 < HU_DISP_CENTERX) { + word_x = 176.0f; + } + else { + word_x = 32.0f + ((winnerNameW[j] * work->win_scale) / 2.0f); + } + if (winPosOfs[num_winners - 1][j][0] < 0) { + word_x = -(HU_DISP_CENTERX - word_x); + } + else { + word_x = (HU_DISP_WIDTH - word_x) - HU_DISP_CENTERX; + } +#else + if (32.0f + (work->win_scale * winnerNameW[j]) < HU_DISP_CENTERX) { + word_x = 32.0f + ((winnerNameW[j] * work->win_scale) / 2.0f); + } + else { + word_x = 120.0f; + } + if (winPosOfs[num_winners - 1][j][0] < 0) { + word_x = -word_x; + } +#endif + } + else { + word_x = winPosOfs[num_winners - 1][j][0]; + } + } + HuSprGrpPosSet(work->spr_grp[j], HU_DISP_CENTERX + word_x, HU_DISP_CENTERY + winPosOfs[num_winners - 1][j][1]); + } + if (seqPauseF) { + work->type = 1; + num_winners++; + for (j = 0; j < num_winners; j++) { + HuSprAttrSet(work->spr_grp[j], 0, HUSPR_ATTR_DISPOFF); + } + } + else { + work->param[0] = 3; + } + return 1; } - static s32 SeqUpdateWin(SeqWork *work) { - s32 idx; - float tp_lvl; - s16 group = work->spr_grp[0]; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - float time; - float scale; - float zrot; - if(work->time <= 20) { - time = work->time; - zrot = 365.0f*(time/20.0f); - scale = sin(M_PI*(90.0f*(time/20.0f))/180.0); - HuSprGrpScaleSet(work->spr_grp[0], scale, scale); - HuSprGrpZRotSet(work->spr_grp[0], zrot); - scale = 1.0+(5.0*cos(M_PI*(90.0f*(time/20.0f))/180.0)); - tp_lvl = time/20.0f; - for(idx=1; idxword_len; idx++) { - HuSprGrpTPLvlSet(work->spr_grp[idx], tp_lvl); - HuSprGrpScaleSet(work->spr_grp[idx], scale*work->win_scale, scale); - } - } - if(work->time > 20 && work->time <= 22) { - HuSprGrpZRotSet(work->spr_grp[0], 0.0f); - for(idx=1; idxword_len; idx++) { - float pos_x; - float ofs[2]; - if(work->time == 21) { - ofs[0] = ((idx & 0x1)*2)-1; - ofs[1] = (idx & 0x2) ? 2 : -1; - } else { - ofs[0] = ofs[1] = 0.0f; - } - if(work->word_len == 2) { - pos_x = winnerNameW[1]+winnerNameW[0]+32; - pos_x = (((HU_DISP_WIDTH-pos_x)/2.0f)+(winnerNameW[1]/2))-HU_DISP_CENTERX; - } else { - if(abs(winPosOfs[work->word_len-2][idx][0]) == 144.0f) { - if(winnerNameW[idx]+32 < HU_DISP_CENTERX) { - pos_x = 176.0f; - } else { - pos_x = 32.0f+((winnerNameW[idx]*work->win_scale)/2.0f); - } - if(winPosOfs[work->word_len-2][idx][0] < 0) { - pos_x = -(HU_DISP_CENTERX-pos_x); - } else { - pos_x = (HU_DISP_WIDTH-pos_x)-HU_DISP_CENTERX; - } - } else { - pos_x = winPosOfs[work->word_len-2][idx][0]; - } - } - HuSprGrpPosSet(work->spr_grp[idx], (HU_DISP_CENTERX+pos_x)+ofs[0], ofs[1]+(HU_DISP_CENTERY+winPosOfs[work->word_len-2][idx][1])); - } - } - if(work->time == 125) { - work->type = 0; - } - } - break; - - case -1: - { - work->angle += seqSpeed*0.1f; - tp_lvl = 1.0f-work->angle; - if(tp_lvl <= 0.0f) { - tp_lvl = 0.0f; - work->state = 0; - work->stat |= 0x8; - } - for(idx=0; idxword_len; idx++) { - HuSprGrpTPLvlSet(work->spr_grp[idx], tp_lvl); - } - } - break; - - default: - break; - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s32 idx; + float tp_lvl; + s16 group = work->spr_grp[0]; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + float time; + float scale; + float zrot; + if (work->time <= 20) { + time = work->time; + zrot = 365.0f * (time / 20.0f); + scale = sin(M_PI * (90.0f * (time / 20.0f)) / 180.0); + HuSprGrpScaleSet(work->spr_grp[0], scale, scale); + HuSprGrpZRotSet(work->spr_grp[0], zrot); + scale = 1.0 + (5.0 * cos(M_PI * (90.0f * (time / 20.0f)) / 180.0)); + tp_lvl = time / 20.0f; + for (idx = 1; idx < work->word_len; idx++) { + HuSprGrpTPLvlSet(work->spr_grp[idx], tp_lvl); + HuSprGrpScaleSet(work->spr_grp[idx], scale * work->win_scale, scale); + } + } + if (work->time > 20 && work->time <= 22) { + HuSprGrpZRotSet(work->spr_grp[0], 0.0f); + for (idx = 1; idx < work->word_len; idx++) { + float pos_x; + float ofs[2]; + if (work->time == 21) { + ofs[0] = ((idx & 0x1) * 2) - 1; + ofs[1] = (idx & 0x2) ? 2 : -1; + } + else { + ofs[0] = ofs[1] = 0.0f; + } + if (work->word_len == 2) { + pos_x = winnerNameW[1] + winnerNameW[0] + 32; + pos_x = (((HU_DISP_WIDTH - pos_x) / 2.0f) + (winnerNameW[1] / 2)) - HU_DISP_CENTERX; + } + else { + if (abs(winPosOfs[work->word_len - 2][idx][0]) == 144.0f) { + if (winnerNameW[idx] + 32 < HU_DISP_CENTERX) { + pos_x = VERSION_NTSC ? 176.0f : winnerNameW[idx] / 2 + 32; + } + else { + pos_x = VERSION_NTSC ? 32.0f + ((winnerNameW[idx] * work->win_scale) / 2.0f) : 128.0f; + } + if (winPosOfs[work->word_len - 2][idx][0] < 0) { + pos_x = VERSION_NTSC ? -(HU_DISP_CENTERX - pos_x) : -pos_x; + } +#if VERSION_NTSC + else { + pos_x = (HU_DISP_WIDTH - pos_x) - HU_DISP_CENTERX; + } +#endif + } + else { + pos_x = winPosOfs[work->word_len - 2][idx][0]; + } + } + HuSprGrpPosSet(work->spr_grp[idx], (HU_DISP_CENTERX + pos_x) + ofs[0], + ofs[1] + (HU_DISP_CENTERY + winPosOfs[work->word_len - 2][idx][1])); + } + } + if (work->time == 125) { + work->type = 0; + } + } break; + + case -1: { + work->angle += seqSpeed * 0.1f; + tp_lvl = 1.0f - work->angle; + if (tp_lvl <= 0.0f) { + tp_lvl = 0.0f; + work->state = 0; + work->stat |= 0x8; + } + for (idx = 0; idx < work->word_len; idx++) { + HuSprGrpTPLvlSet(work->spr_grp[idx], tp_lvl); + } + } break; + + default: + break; + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static s32 SeqInitRecord(SeqWork *work, va_list params) { - AnimData *spr_data; - s16 spr_grp; - s16 time_pos[2]; - s16 i; - s16 sprite; - s16 digit_idx; - s32 digit; - seqRecordVal = va_arg(params, int); - work->type = 0; - work->angle = 0.0f; - work->spr_grp[0] = spr_grp = HuSprGrpCreate(10); - spr_data = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 9))); - sprite = HuSprCreate(spr_data, 0, 0); - HuSprGrpMemberSet(spr_grp, 0, sprite); - HuSprPosSet(spr_grp, 0, 0.0f, -32.0f); - spr_data = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 8))); - sprite = HuSprCreate(spr_data, 0, 0); - HuSprGrpMemberSet(spr_grp, 1, sprite); - spr_data = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 7))); - for(i=0; i<8; i++) { - sprite = HuSprCreate(spr_data, 0, 0); - HuSprGrpMemberSet(spr_grp, i+2, sprite); - } - if(omcurovl == OVL_M407 || omcurovl == OVL_M453 || omcurovl == OVL_M459 || omcurovl == OVL_M460 || omcurovl == OVL_M462 || omcurovl == OVL_M442) { - digit_idx = 0; - if(seqRecordVal > 9999) { - seqRecordVal = 9999; - } - digit = seqRecordVal/1000; - if(digit != 0) { - HuSprBankSet(spr_grp, digit_idx+2, digit); - seqRecordVal -= digit*1000; - digit_idx++; - } - - digit = seqRecordVal/100; - if(digit != 0 || digit_idx != 0) { - HuSprBankSet(spr_grp, digit_idx+2, digit); - seqRecordVal -= digit*100; - digit_idx++; - } - digit = seqRecordVal/10; - if(digit != 0 || digit_idx != 0) { - HuSprBankSet(spr_grp, digit_idx+2, digit); - seqRecordVal -= digit*10; - digit_idx++; - } - HuSprBankSet(spr_grp, digit_idx+2, seqRecordVal); - digit_idx++; - for(i=digit_idx; i<8; i++) { - HuSprAttrSet(spr_grp, i+2, HUSPR_ATTR_DISPOFF); - } - HuSprPosSet(spr_grp, 1, (-((digit_idx*44)+48)/2)+24, 32.0f); - for(i=0; iparam[0] = 3; - return 1; + AnimData *spr_data; + s16 spr_grp; + s16 time_pos[2]; + s16 i; + s16 sprite; + s16 digit_idx; + s32 digit; + seqRecordVal = va_arg(params, int); + work->type = 0; + work->angle = 0.0f; + work->spr_grp[0] = spr_grp = HuSprGrpCreate(10); + spr_data = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 9))); + sprite = HuSprCreate(spr_data, 0, 0); + HuSprGrpMemberSet(spr_grp, 0, sprite); + HuSprPosSet(spr_grp, 0, 0.0f, -32.0f); + spr_data = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 8))); + sprite = HuSprCreate(spr_data, 0, 0); + HuSprGrpMemberSet(spr_grp, 1, sprite); + spr_data = HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 7))); + for (i = 0; i < 8; i++) { + sprite = HuSprCreate(spr_data, 0, 0); + HuSprGrpMemberSet(spr_grp, i + 2, sprite); + } + if (omcurovl == OVL_M407 || omcurovl == OVL_M453 || omcurovl == OVL_M459 || omcurovl == OVL_M460 || omcurovl == OVL_M462 + || omcurovl == OVL_M442) { + digit_idx = 0; + if (seqRecordVal > 9999) { + seqRecordVal = 9999; + } + digit = seqRecordVal / 1000; + if (digit != 0) { + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * 1000; + digit_idx++; + } + + digit = seqRecordVal / 100; + if (digit != 0 || digit_idx != 0) { + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * 100; + digit_idx++; + } + digit = seqRecordVal / 10; + if (digit != 0 || digit_idx != 0) { + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * 10; + digit_idx++; + } + HuSprBankSet(spr_grp, digit_idx + 2, seqRecordVal); + digit_idx++; + for (i = digit_idx; i < 8; i++) { + HuSprAttrSet(spr_grp, i + 2, HUSPR_ATTR_DISPOFF); + } + HuSprPosSet(spr_grp, 1, (-((digit_idx * 44) + 48) / 2) + 24, 32.0f); + for (i = 0; i < digit_idx; i++) { + HuSprPosSet(spr_grp, i + 2, (-((digit_idx * 44) + 48) / 2) + 70 + (i * 44), 32.0f); + } + } + else { + s16 x; + digit_idx = 0; + digit = seqRecordVal / (600 * REFRESH_RATE); + if (digit != 0) { + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * (600 * REFRESH_RATE); + digit_idx++; + } + digit = seqRecordVal / (60 * REFRESH_RATE); + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * (60 * REFRESH_RATE); + digit_idx++; + HuSprBankSet(spr_grp, digit_idx + 2, 10); + time_pos[0] = digit_idx; + digit_idx++; + digit = seqRecordVal / (10 * REFRESH_RATE); + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * (10 * REFRESH_RATE); + digit_idx++; + digit = seqRecordVal / REFRESH_RATE; + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * REFRESH_RATE; + digit_idx++; + HuSprBankSet(spr_grp, digit_idx + 2, 11); + time_pos[1] = digit_idx; + digit_idx++; + if (omcurovl == OVL_M405 || omcurovl == OVL_M432 || omcurovl == OVL_M461) { + seqRecordVal = (float)seqRecordVal * (101.5 / REFRESH_RATE); + } + else { + seqRecordVal = (float)seqRecordVal * (100.0 / REFRESH_RATE); + } + digit = seqRecordVal / 10; + HuSprBankSet(spr_grp, digit_idx + 2, digit); + seqRecordVal -= digit * 10; + digit_idx++; + HuSprBankSet(spr_grp, digit_idx + 2, seqRecordVal); + digit_idx++; + for (i = digit_idx; i < 8; i++) { + HuSprAttrSet(spr_grp, i + 2, HUSPR_ATTR_DISPOFF); + } + HuSprPosSet(spr_grp, 1, (-((digit_idx * 44) + 4) / 2) + 24, 32.0f); + x = (-((digit_idx * 44) + 4) / 2) + 70; + for (i = 0; i < digit_idx; i++) { + HuSprPosSet(spr_grp, i + 2, x, 32.0f); + if (time_pos[0] == i || time_pos[1] == i) { + x += 22; + } + else { + x += 44; + } + } + } + HuSprGrpPosSet(spr_grp, HU_DISP_CENTERX, HU_DISP_CENTERY); + work->param[0] = 3; + return 1; } static s32 SeqUpdateRecord(SeqWork *work) { - s16 group; - if(_CheckFlag(FLAG_ID_MAKE(1, 12))) { - work->state = 0; - work->stat |= 0xC; - } else { - group = work->spr_grp[0]; - if(work->param[0] != 0 && work->type != -1) { - switch(work->param[0]) { - case 2: - if(work->param[1] != -1) { - (void)work; //HACK: to introduce extra branch - } else { - work->type = -1; - work->angle = 0.0f; - } - work->param[0] = 0; - break; - - case 1: - work->time_max = work->param[1]; - work->param[0] = 0; - break; - - case 3: - work->type = 1; - work->param[0] = 0; - break; - - default: - work->param[0] = 0; - break; - } - } - work->time += seqSpeed; - if(work->time >= work->time_max && work->type != -1) { - work->stat |= 0x4; - work->type = -1; - work->angle = 0.0f; - } - if(work->type) { - switch(work->type) { - case 1: - { - if(work->time <= 10) { - HuSprGrpTPLvlSet(group, work->time/10.0); - } - if(work->time == 5) { - HuAudFXPlay(38); - } - if(work->time == 30) { - work->type = 0; - } - } - break; - - case -1: - { - float tp_lvl; - work->angle += seqSpeed*0.1f; - tp_lvl = 1.0f-work->angle; - if(tp_lvl <= 0.0f) { - tp_lvl = 0.0f; - work->state = 0; - work->stat |= 0x8; - } - HuSprGrpTPLvlSet(group, tp_lvl); - } - break; - - default: - break; - } - } - } - if(seqDoneF || (work->stat & 0x8)) { - MGSeqSprKill(work); - return 0; - } - return 1; + s16 group; + if (_CheckFlag(FLAG_ID_MAKE(1, 12))) { + work->state = 0; + work->stat |= 0xC; + } + else { + group = work->spr_grp[0]; + if (work->param[0] != 0 && work->type != -1) { + switch (work->param[0]) { + case 2: + if (work->param[1] != -1) { + (void)work; // HACK: to introduce extra branch + } + else { + work->type = -1; + work->angle = 0.0f; + } + work->param[0] = 0; + break; + + case 1: + work->time_max = work->param[1]; + work->param[0] = 0; + break; + + case 3: + work->type = 1; + work->param[0] = 0; + break; + + default: + work->param[0] = 0; + break; + } + } + work->time += seqSpeed; + if (work->time >= work->time_max && work->type != -1) { + work->stat |= 0x4; + work->type = -1; + work->angle = 0.0f; + } + if (work->type) { + switch (work->type) { + case 1: { + if (work->time <= 10) { + HuSprGrpTPLvlSet(group, work->time / 10.0); + } + if (work->time == 5) { + HuAudFXPlay(38); + } + if (work->time == 30) { + work->type = 0; + } + } break; + + case -1: { + float tp_lvl; + work->angle += seqSpeed * 0.1f; + tp_lvl = 1.0f - work->angle; + if (tp_lvl <= 0.0f) { + tp_lvl = 0.0f; + work->state = 0; + work->stat |= 0x8; + } + HuSprGrpTPLvlSet(group, tp_lvl); + } break; + + default: + break; + } + } + } + if (seqDoneF || (work->stat & 0x8)) { + MGSeqSprKill(work); + return 0; + } + return 1; } static void PauseProc(void); void MGSeqPauseInit(void) { - MGSeqPauseEnableCtrl(0); - HuWinInit(1); - pauseProcess = HuPrcCreate(PauseProc, 100, 4096, 0); - HuPrcSetStat(pauseProcess, PROCESS_STAT_PAUSE_EN|PROCESS_STAT_UPAUSE_EN); - pauseActiveF = 1; - pauseExitF = 0; - pauseWaitF = 0; + MGSeqPauseEnableCtrl(0); + HuWinInit(1); + pauseProcess = HuPrcCreate(PauseProc, 100, 4096, 0); + HuPrcSetStat(pauseProcess, PROCESS_STAT_PAUSE_EN | PROCESS_STAT_UPAUSE_EN); + pauseActiveF = 1; + pauseExitF = 0; + pauseWaitF = 0; } -#define PAUSE_WIN_X (HU_DISP_CENTERX-206) -#define PAUSE_WIN_DIST (HU_DISP_CENTERX+112) -#define PAUSE_EXIT_Y (HU_DISP_HEIGHT-80) +#define PAUSE_WIN_X (HU_DISP_CENTERX - 206) +#define PAUSE_WIN_DIST (HU_DISP_CENTERX + 112) +#define PAUSE_EXIT_Y (HU_DISP_HEIGHT - 80) static void PauseProc(void) { - s16 mg; - s16 i; - s16 j; - - s16 char_mess_map[4]; - s16 char_mess[4][4]; - s16 window[3] = { -1, -1, -1 }; - - SeqWork work; - static char *pauseStr[] = { - "ポーズ", - "PAUSE" - }; - float ratio; - - HuAudFXPlay(5); - for(i=0; i<16; i++) { - work.sprite[i] = work.spr_grp[i] = -1; - } - SeqMakeWord(&work, pauseStr[GET_LANG_IDX()], 0); - for(i=0; iwork[0] == 0) { - if(omMgIndexGet(omcurovl) == -1) { - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - object->work[0]++; - } - if(!omPauseChk() || _CheckFlag(FLAG_ID_MAKE(1, 12)) || !pauseWaitF) { - return; - } - for(i=input=0; i<4; i++) { - input |= HuPadBtnDown[i]; - } - if(input & PAD_TRIGGER_Z) { - HuAudFXPlay(3); - pauseExitF = 1; - omSysPauseCtrl(0); - omSysExitReq = 1; - mgQuitExtraF = 1; - omDelObjEx(HuPrcCurrentGet(), object); - } + s16 input; + s16 i; + mgQuitExtraF = 0; + if (object->work[0] == 0) { + if (omMgIndexGet(omcurovl) == -1) { + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + object->work[0]++; + } + if (!omPauseChk() || _CheckFlag(FLAG_ID_MAKE(1, 12)) || !pauseWaitF) { + return; + } + for (i = input = 0; i < 4; i++) { + input |= HuPadBtnDown[i]; + } + if (input & PAD_TRIGGER_Z) { + HuAudFXPlay(3); + pauseExitF = 1; + omSysPauseCtrl(0); + omSysExitReq = 1; + mgQuitExtraF = 1; + omDelObjEx(HuPrcCurrentGet(), object); + } } From f3b922a476230add1edb8ed44c7359d98e10b253 Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Sun, 17 Nov 2024 12:35:21 -0600 Subject: [PATCH 017/178] Match window.c in PAL --- config/GMPP01_00/symbols.txt | 2 +- configure.py | 2 +- src/game/window.c | 63 +++++++++++++++++++++++++++++++++++- 3 files changed, 64 insertions(+), 3 deletions(-) diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index be859f5f..03c4876c 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -5549,7 +5549,7 @@ wipeData = .bss:0x801AF700; // type:object size:0x4C data:4byte winData = .bss:0x801AF760; // type:object size:0x3000 align:32 data:byte winKey = .bss:0x801B2760; // type:object size:0x10 winComKeyBuf = .bss:0x801B2770; // type:object size:0x1400 -mesWInsert = .bss:0x801B3B70; // type:object size:0x10 +mesWInsert = .bss:0x801B3B70; // type:object size:0x10 scope:local ARInfo = .bss:0x801B3B80; // type:object size:0x400 data:byte arqReq = .bss:0x801B3F80; // type:object size:0x20 scope:local ARQueBuf = .bss:0x801B3FA0; // type:object size:0x280 scope:local diff --git a/configure.py b/configure.py index 5e690faf..d80ab1c0 100644 --- a/configure.py +++ b/configure.py @@ -409,7 +409,7 @@ config.libs = [ Object(Matching, "game/ClusterExec.c"), Object(Matching, "game/ShapeExec.c"), Object(Matching, "game/wipe.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/window.c"), + Object(Matching, "game/window.c"), Object(Matching, "game/messdata.c"), Object(Matching, "game/card.c"), Object(Matching, "game/armem.c"), diff --git a/src/game/window.c b/src/game/window.c index a2018b5d..816514f3 100644 --- a/src/game/window.c +++ b/src/game/window.c @@ -58,7 +58,12 @@ void *messDataPtr; static s32 messDataNo; static s16 winMaxWidth; static s16 winMaxHeight; +#if VERSION_NTSC static u8 mesWInsert[8]; +#else +static u16 mesWInsert[8]; +#endif + static u8 winTabSize; static u8 winInsertF; static u32 winAMemP; @@ -96,6 +101,7 @@ static spcFontTblData spcFontTbl[] = { { &cardAnimB, 0, 32, 32, 16, 16 } }; +#if VERSION_NTSC u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -118,6 +124,31 @@ u8 charWETbl[] = { 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }; +#else +u8 charWETbl[] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 18, 20, 12, 12, 11, 14, + 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, + 12, 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, + 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, + 11, 12, 9, 11, 9, 11, 11, 15, 11, 11, 11, 4, 13, 8, 14, 12, + 9, 8, 8, 8, 20, 4, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 12, 12, 12, 12, 12, 12, 12, 12, 8, 8, 12, 12, 12, 12, 12, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 13, 13, 6, 12, 18, 14, 14, 8, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 10, 10, 10, 12, 12, 12, 12, 12, 10, 10, 12, 12, 10, 10, 10, + 10, 7, 7, 12, 12, 10, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 +}; + +#endif + u8 charWJTbl[] = { 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 0, 20, 20, 20, @@ -171,12 +202,29 @@ static s32 frameFileTbl[] = { WIN_FRAME1_ANM }; +#if VERSION_NTSC static char *mesDataTbl[] = { "mess/mini.dat", "mess/board.dat", "mess/mini_e.dat", "mess/board_e.dat" }; +#else +static char *mesDataTbl[] = { + "mess/mini.dat", + "mess/board.dat", + "mess/mini_e.dat", + "mess/board_e.dat", + "mess/mini_g.dat", + "mess/board_g.dat", + "mess/mini_f.dat", + "mess/board_f.dat", + "mess/mini_i.dat", + "mess/board_i.dat", + "mess/mini_s.dat", + "mess/board_s.dat" +}; +#endif static s32 winVoiceTbl[] = { 0x37, 0x36, 0x38, 0x44, @@ -609,12 +657,13 @@ static inline void charEntry(s16 window, s16 x, s16 y, s16 char_idx, s16 color) static void HuWinDrawMes(s16 window) { WindowData *window_ptr = &winData[window]; HuSprGrp *group = &HuSprGrpData[window_ptr->group]; - s16 c; s16 i; s16 char_w; s16 tab_w; s16 insert_mess; s16 mess_end; + s16 c; + s16 shadow_color; s16 color; s16 mess_w; @@ -790,6 +839,7 @@ static void HuWinDrawMes(s16 window) { } c = window_ptr->mess[0]; window_ptr->attr |= 0x200; + #if VERSION_NTSC if (window_ptr->mess[1] == 128) { if (c >= 150 && c <= 164) { c = c+106; @@ -809,6 +859,7 @@ static void HuWinDrawMes(s16 window) { } window_ptr->mess++; } + #endif color = (window_ptr->attr & 0x20) ? 8 : window_ptr->mess_color; if (window_ptr->attr & 1) { shadow_color = 0; @@ -1249,11 +1300,15 @@ void HuWinMesRead(s32 mess_data_no) { HuMemDirectFree(messDataPtr); } messDataNo = mess_data_no; + #if VERSION_NTSC if (LanguageNo == 0) { mess_path = mesDataTbl[messDataNo]; } else { mess_path = mesDataTbl[messDataNo + 2]; } + #else + mess_path = mesDataTbl[messDataNo+(LanguageNo*2)]; + #endif dvd_mess = HuDvdDataRead(mess_path); messDataPtr = HuMemDirectMalloc(HEAP_SYSTEM, DirDataSize); memcpy(messDataPtr, dvd_mess, DirDataSize); @@ -1653,9 +1708,15 @@ static void GetMesMaxSizeSub(u32 mess) { char_w = mesWInsert[*mess_data - 1]; break; } + #if VERSION_NTSC if ((*mess_data != 255 && *mess_data >= 32) || *mess_data == 16) { cr_flag = 1; } + #else + if ((*mess_data != 255 && *mess_data >= 32) || *mess_data == 16 || mess_data[-1] == 31) { + cr_flag = 1; + } + #endif line_w += char_w; line_h += char_h; mess_data++; From ddf7241695384781e8bafbfec6bf83657a73a34f Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Sun, 17 Nov 2024 14:32:24 -0600 Subject: [PATCH 018/178] More splits and RELS m401, mpex, saf, staff have edits. Split modeltest, mstory4, present, result, saf, selmenu, and ztar --- config/GMPE01_00/rels/mpexDll/symbols.txt | 2 +- config/GMPP01_00/rels/m401Dll/splits.txt | 15 + config/GMPP01_00/rels/m401Dll/symbols.txt | 2 +- config/GMPP01_00/rels/modeltestDll/splits.txt | 21 + .../GMPP01_00/rels/modeltestDll/symbols.txt | 2 +- config/GMPP01_00/rels/mpexDll/splits.txt | 26 ++ config/GMPP01_00/rels/mpexDll/symbols.txt | 11 +- config/GMPP01_00/rels/mstory4Dll/splits.txt | 6 + config/GMPP01_00/rels/present/splits.txt | 29 ++ config/GMPP01_00/rels/present/symbols.txt | 368 +++++++++-------- config/GMPP01_00/rels/resultDll/splits.txt | 20 + config/GMPP01_00/rels/resultDll/symbols.txt | 241 +++++------ config/GMPP01_00/rels/safDll/splits.txt | 5 + config/GMPP01_00/rels/safDll/symbols.txt | 21 +- config/GMPP01_00/rels/selmenuDll/splits.txt | 9 + config/GMPP01_00/rels/selmenuDll/symbols.txt | 391 +++++++++--------- config/GMPP01_00/rels/staffDll/splits.txt | 9 + config/GMPP01_00/rels/staffDll/symbols.txt | 32 +- config/GMPP01_00/rels/ztardll/splits.txt | 20 + config/GMPP01_00/rels/ztardll/symbols.txt | 2 +- configure.py | 38 +- src/REL/m401Dll/main.c | 4 + src/REL/mpexDll/mgname.c | 4 +- src/REL/mpexDll/mpex.c | 127 ++++-- src/REL/safDll/main.c | 2 + src/REL/staffDll/main.c | 86 +++- 26 files changed, 898 insertions(+), 595 deletions(-) diff --git a/config/GMPE01_00/rels/mpexDll/symbols.txt b/config/GMPE01_00/rels/mpexDll/symbols.txt index d4725e33..994e2382 100644 --- a/config/GMPE01_00/rels/mpexDll/symbols.txt +++ b/config/GMPE01_00/rels/mpexDll/symbols.txt @@ -437,7 +437,7 @@ lbl_1_data_74C = .data:0x0000074C; // type:object size:0x10 lbl_1_data_75C = .data:0x0000075C; // type:object size:0x20 lbl_1_data_77C = .data:0x0000077C; // type:object size:0x4 data:4byte lbl_1_data_780 = .data:0x00000780; // type:object size:0x8 data:4byte -lbl_1_data_788 = .data:0x00000788; // type:object size:0x318 +fontDataTbl = .data:0x00000788; // type:object size:0x318 scope:local lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x60 data:4byte lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x44 data:float diff --git a/config/GMPP01_00/rels/m401Dll/splits.txt b/config/GMPP01_00/rels/m401Dll/splits.txt index 531cd645..d7d2d541 100644 --- a/config/GMPP01_00/rels/m401Dll/splits.txt +++ b/config/GMPP01_00/rels/m401Dll/splits.txt @@ -5,3 +5,18 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m401Dll/main.c: + .text start:0x000000A0 end:0x00010244 + .rodata start:0x00000000 end:0x00000450 + .data start:0x00000000 end:0x00000478 + .bss start:0x00000000 end:0x00000120 + +REL/m401Dll/main_ex.c: + .text start:0x00010244 end:0x00014E18 + .rodata start:0x00000450 end:0x000005E8 + .data start:0x00000478 end:0x00000498 + .bss start:0x00000120 end:0x00000254 diff --git a/config/GMPP01_00/rels/m401Dll/symbols.txt b/config/GMPP01_00/rels/m401Dll/symbols.txt index c4412263..98566a01 100644 --- a/config/GMPP01_00/rels/m401Dll/symbols.txt +++ b/config/GMPP01_00/rels/m401Dll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_2_A0 = .text:0x000000A0; // type:function size:0x66C +ObjectSetup = .text:0x000000A0; // type:function size:0x66C fn_2_70C = .text:0x0000070C; // type:function size:0x304 fn_2_A10 = .text:0x00000A10; // type:function size:0x88 fn_2_A98 = .text:0x00000A98; // type:function size:0x54 diff --git a/config/GMPP01_00/rels/modeltestDll/splits.txt b/config/GMPP01_00/rels/modeltestDll/splits.txt index 531cd645..9ff3fae5 100644 --- a/config/GMPP01_00/rels/modeltestDll/splits.txt +++ b/config/GMPP01_00/rels/modeltestDll/splits.txt @@ -5,3 +5,24 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/modeltestDll/main.c: + .text start:0x000000A0 end:0x000034B0 + .rodata start:0x00000000 end:0x00000130 + .data start:0x00000000 end:0x00000358 + .bss start:0x00000000 end:0x000009A8 + +REL/modeltestDll/modeltest00.c: + .text start:0x000034B0 end:0x00004AC8 + .rodata start:0x00000130 end:0x000001C8 + .data start:0x00000358 end:0x00000388 + .bss start:0x000009A8 end:0x00000A00 + +REL/modeltestDll/modeltest01.c: + .text start:0x00004AC8 end:0x000086B8 + .rodata start:0x000001C8 end:0x00000290 + .data start:0x00000388 end:0x000007AE + .bss start:0x00000A00 end:0x00000AC8 diff --git a/config/GMPP01_00/rels/modeltestDll/symbols.txt b/config/GMPP01_00/rels/modeltestDll/symbols.txt index 3c87f506..460a17bf 100644 --- a/config/GMPP01_00/rels/modeltestDll/symbols.txt +++ b/config/GMPP01_00/rels/modeltestDll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x1FC +ObjectSetup = .text:0x000000A0; // type:function size:0x1FC fn_1_29C = .text:0x0000029C; // type:function size:0xC9C fn_1_F38 = .text:0x00000F38; // type:function size:0x64 fn_1_F9C = .text:0x00000F9C; // type:function size:0x1158 diff --git a/config/GMPP01_00/rels/mpexDll/splits.txt b/config/GMPP01_00/rels/mpexDll/splits.txt index 531cd645..8980a70d 100644 --- a/config/GMPP01_00/rels/mpexDll/splits.txt +++ b/config/GMPP01_00/rels/mpexDll/splits.txt @@ -5,3 +5,29 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/mpexDll/main.c: + .text start:0x000000A0 end:0x00003044 + .rodata start:0x00000000 end:0x000000A0 + .data start:0x00000000 end:0x00000240 + .bss start:0x00000000 end:0x000000A8 + +REL/mpexDll/mpex.c: + .text start:0x00003044 end:0x000125C4 + .rodata start:0x000000A0 end:0x00000538 + .data start:0x00000240 end:0x00000510 + .bss start:0x000000A8 end:0x00000440 + +REL/mpexDll/charsel.c: + .text start:0x000125C4 end:0x0001CAF8 + .rodata start:0x00000538 end:0x00000610 + .data start:0x00000510 end:0x00000780 + .bss start:0x00000440 end:0x000006AD + +REL/mpexDll/mgname.c: + .text start:0x0001CAF8 end:0x0001D014 + .rodata start:0x00000610 end:0x00000620 + .data start:0x00000780 end:0x00000C40 diff --git a/config/GMPP01_00/rels/mpexDll/symbols.txt b/config/GMPP01_00/rels/mpexDll/symbols.txt index eb374c16..caa7e094 100644 --- a/config/GMPP01_00/rels/mpexDll/symbols.txt +++ b/config/GMPP01_00/rels/mpexDll/symbols.txt @@ -3,7 +3,7 @@ _epilog = .text:0x00000054; // type:function size:0x4C scope:global fn_1_A0 = .text:0x000000A0; // type:function size:0xE8 fn_1_188 = .text:0x00000188; // type:function size:0x38 fn_1_1C0 = .text:0x000001C0; // type:function size:0x70 -fn_1_230 = .text:0x00000230; // type:function size:0x68 +ObjectSetup = .text:0x00000230; // type:function size:0x68 fn_1_298 = .text:0x00000298; // type:function size:0xDC fn_1_374 = .text:0x00000374; // type:function size:0xC4 fn_1_438 = .text:0x00000438; // type:function size:0x3E4 @@ -209,8 +209,8 @@ fn_1_1C0EC = .text:0x0001C0EC; // type:function size:0x304 fn_1_1C3F0 = .text:0x0001C3F0; // type:function size:0x304 fn_1_1C6F4 = .text:0x0001C6F4; // type:function size:0x340 fn_1_1CA34 = .text:0x0001CA34; // type:function size:0xC4 -fn_1_1CAF8 = .text:0x0001CAF8; // type:function size:0x3B0 -fn_1_1CEA8 = .text:0x0001CEA8; // type:function size:0x16C +fn_1_1CB80 = .text:0x0001CAF8; // type:function size:0x3B0 +fn_1_1D02C = .text:0x0001CEA8; // type:function size:0x16C _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 @@ -389,7 +389,8 @@ lbl_1_data_18D = .data:0x0000018D; // type:object size:0x4F data:string lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x22 data:string lbl_1_data_1FE = .data:0x000001FE; // type:object size:0x1A data:string lbl_1_data_218 = .data:0x00000218; // type:object size:0x1A data:string -lbl_1_data_232 = .data:0x00000232; // type:object size:0x62 +lbl_1_data_232 = .data:0x00000232; // type:object size:0xE scope:local data:string +lbl_1_data_240 = .data:0x00000240; // type:object size:0x54 data:float lbl_1_data_294 = .data:0x00000294; // type:object size:0x4 data:4byte lbl_1_data_298 = .data:0x00000298; // type:object size:0x4 data:4byte lbl_1_data_29C = .data:0x0000029C; // type:object size:0x18 @@ -433,7 +434,7 @@ lbl_1_data_744 = .data:0x00000744; // type:object size:0x10 lbl_1_data_754 = .data:0x00000754; // type:object size:0x20 lbl_1_data_774 = .data:0x00000774; // type:object size:0x4 data:4byte lbl_1_data_778 = .data:0x00000778; // type:object size:0x8 data:4byte -lbl_1_data_780 = .data:0x00000780; // type:object size:0x4C0 +fontDataTbl = .data:0x00000780; // type:object size:0x4C0 scope:local lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x64 data:4byte lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x44 data:float lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/mstory4Dll/splits.txt b/config/GMPP01_00/rels/mstory4Dll/splits.txt index 531cd645..20264b16 100644 --- a/config/GMPP01_00/rels/mstory4Dll/splits.txt +++ b/config/GMPP01_00/rels/mstory4Dll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstory4Dll/main.c: + .text start:0x00000000 end:0x00001738 + .rodata start:0x00000000 end:0x00000048 + .data start:0x00000000 end:0x00000722 + .bss start:0x00000000 end:0x00000014 diff --git a/config/GMPP01_00/rels/present/splits.txt b/config/GMPP01_00/rels/present/splits.txt index 531cd645..3c65c150 100644 --- a/config/GMPP01_00/rels/present/splits.txt +++ b/config/GMPP01_00/rels/present/splits.txt @@ -5,3 +5,32 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/present/init.c: + .text start:0x000000A0 end:0x000006B4 + .rodata start:0x00000000 end:0x00000020 + .bss start:0x00000000 end:0x00000020 + +REL/present/camera.c: + .text start:0x000006B4 end:0x00001458 + .rodata start:0x00000020 end:0x000000A0 + .data start:0x00000000 end:0x00000050 + +REL/present/present.c: + .text start:0x00001458 end:0x000039A8 + .rodata start:0x000000A0 end:0x00000BB0 + .data start:0x00000050 end:0x000000F0 + +REL/present/main.c: + .text start:0x000039A8 end:0x000042F4 + .rodata start:0x00000BB0 end:0x00000BD8 + .data start:0x000000F0 end:0x000001A0 + .bss start:0x00000020 end:0x00000024 + +REL/present/common.c: + .text start:0x000042F4 end:0x00004DF0 + .rodata start:0x00000BD8 end:0x00000C50 + .data start:0x000001A0 end:0x000001AC diff --git a/config/GMPP01_00/rels/present/symbols.txt b/config/GMPP01_00/rels/present/symbols.txt index e6b4d8f0..332b6bce 100644 --- a/config/GMPP01_00/rels/present/symbols.txt +++ b/config/GMPP01_00/rels/present/symbols.txt @@ -1,189 +1,193 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0xA4 -fn_1_144 = .text:0x00000144; // type:function size:0x110 -fn_1_254 = .text:0x00000254; // type:function size:0xE0 -fn_1_334 = .text:0x00000334; // type:function size:0x128 -fn_1_45C = .text:0x0000045C; // type:function size:0xF4 -fn_1_550 = .text:0x00000550; // type:function size:0x34 -fn_1_584 = .text:0x00000584; // type:function size:0x34 -fn_1_5B8 = .text:0x000005B8; // type:function size:0x34 -fn_1_5EC = .text:0x000005EC; // type:function size:0xC8 -fn_1_6B4 = .text:0x000006B4; // type:function size:0x23C -fn_1_8F0 = .text:0x000008F0; // type:function size:0x30 -fn_1_920 = .text:0x00000920; // type:function size:0x84 -fn_1_9A4 = .text:0x000009A4; // type:function size:0x84 -fn_1_A28 = .text:0x00000A28; // type:function size:0x84 -fn_1_AAC = .text:0x00000AAC; // type:function size:0x30 -fn_1_ADC = .text:0x00000ADC; // type:function size:0x30 -fn_1_B0C = .text:0x00000B0C; // type:function size:0x30 -fn_1_B3C = .text:0x00000B3C; // type:function size:0x30 -fn_1_B6C = .text:0x00000B6C; // type:function size:0x8C -fn_1_BF8 = .text:0x00000BF8; // type:function size:0x28 -fn_1_C20 = .text:0x00000C20; // type:function size:0x578 -fn_1_1198 = .text:0x00001198; // type:function size:0x200 -fn_1_1398 = .text:0x00001398; // type:function size:0xC0 -fn_1_1458 = .text:0x00001458; // type:function size:0x32C -fn_1_1784 = .text:0x00001784; // type:function size:0x88 -fn_1_180C = .text:0x0000180C; // type:function size:0x44 -fn_1_1850 = .text:0x00001850; // type:function size:0x1C -fn_1_186C = .text:0x0000186C; // type:function size:0xBC -fn_1_1928 = .text:0x00001928; // type:function size:0x680 -fn_1_1FA8 = .text:0x00001FA8; // type:function size:0x140 -fn_1_20E8 = .text:0x000020E8; // type:function size:0x5A4 -fn_1_268C = .text:0x0000268C; // type:function size:0x7C -fn_1_2708 = .text:0x00002708; // type:function size:0x6C -fn_1_2774 = .text:0x00002774; // type:function size:0x17C -fn_1_28F0 = .text:0x000028F0; // type:function size:0x34 -fn_1_2924 = .text:0x00002924; // type:function size:0x260 -fn_1_2B84 = .text:0x00002B84; // type:function size:0x48 -fn_1_2BCC = .text:0x00002BCC; // type:function size:0x90 -fn_1_2C5C = .text:0x00002C5C; // type:function size:0x738 -fn_1_3394 = .text:0x00003394; // type:function size:0x18 -fn_1_33AC = .text:0x000033AC; // type:function size:0x590 -fn_1_393C = .text:0x0000393C; // type:function size:0x6C -fn_1_39A8 = .text:0x000039A8; // type:function size:0x170 -fn_1_3B18 = .text:0x00003B18; // type:function size:0x74 -fn_1_3B8C = .text:0x00003B8C; // type:function size:0x22C -fn_1_3DB8 = .text:0x00003DB8; // type:function size:0xEC -fn_1_3EA4 = .text:0x00003EA4; // type:function size:0x19C -fn_1_4040 = .text:0x00004040; // type:function size:0x40 -fn_1_4080 = .text:0x00004080; // type:function size:0x18 -fn_1_4098 = .text:0x00004098; // type:function size:0x18 -fn_1_40B0 = .text:0x000040B0; // type:function size:0x54 -fn_1_4104 = .text:0x00004104; // type:function size:0x40 -fn_1_4144 = .text:0x00004144; // type:function size:0x40 -fn_1_4184 = .text:0x00004184; // type:function size:0xC -fn_1_4190 = .text:0x00004190; // type:function size:0xC -fn_1_419C = .text:0x0000419C; // type:function size:0x20 -fn_1_41BC = .text:0x000041BC; // type:function size:0x24 -fn_1_41E0 = .text:0x000041E0; // type:function size:0x114 -fn_1_42F4 = .text:0x000042F4; // type:function size:0x240 -fn_1_4534 = .text:0x00004534; // type:function size:0x8C -fn_1_45C0 = .text:0x000045C0; // type:function size:0x44 -fn_1_4604 = .text:0x00004604; // type:function size:0x1C -fn_1_4620 = .text:0x00004620; // type:function size:0x260 -fn_1_4880 = .text:0x00004880; // type:function size:0x184 -fn_1_4A04 = .text:0x00004A04; // type:function size:0x2E8 -fn_1_4CEC = .text:0x00004CEC; // type:function size:0x104 +ObjectSetup = .text:0x000000A0; // type:function size:0xA4 +PresentFadeSprite = .text:0x00000144; // type:function size:0x110 +FadeSprite = .text:0x00000254; // type:function size:0xE0 scope:local +FadeSpriteWithMultiplier = .text:0x00000334; // type:function size:0x128 +FadeModel = .text:0x0000045C; // type:function size:0xF4 scope:local +PresentPadCheck = .text:0x00000550; // type:function size:0x34 +PresentPadDStkRepCheck = .text:0x00000584; // type:function size:0x34 +PresentPadDStkCheck = .text:0x000005B8; // type:function size:0x34 +SceneMain = .text:0x000005EC; // type:function size:0xC8 scope:local +PresentCameraCreate = .text:0x000006B4; // type:function size:0x23C +PresentCameraKill = .text:0x000008F0; // type:function size:0x30 +PresentCameraTargetSet = .text:0x00000920; // type:function size:0x84 +PresentCameraFocusSet = .text:0x000009A4; // type:function size:0x84 +PresentCameraViewSet = .text:0x00000A28; // type:function size:0x84 +PresentCameraZoomGet = .text:0x00000AAC; // type:function size:0x30 +PresentCameraRotGet = .text:0x00000ADC; // type:function size:0x30 +PresentCameraPosGet = .text:0x00000B0C; // type:function size:0x30 +PresentCameraTargetGet = .text:0x00000B3C; // type:function size:0x30 +PresentCameraDoneCheck = .text:0x00000B6C; // type:function size:0x8C +ExecCameraObj = .text:0x00000BF8; // type:function size:0x28 scope:local +ExecCamera = .text:0x00000C20; // type:function size:0x578 scope:local +CameraExecDebug = .text:0x00001198; // type:function size:0x200 scope:local +CameraPrintDebug = .text:0x00001398; // type:function size:0xC0 scope:local +PresentCreate = .text:0x00001458; // type:function size:0x32C +PresentKill = .text:0x00001784; // type:function size:0x88 +PresentExecModeSet = .text:0x0000180C; // type:function size:0x44 +PresentExecModeGet = .text:0x00001850; // type:function size:0x1C +PresentSelectedIDSet = .text:0x0000186C; // type:function size:0xBC +ExecSelectRoom = .text:0x00001928; // type:function size:0x680 scope:local +ChangeRoom = .text:0x00001FA8; // type:function size:0x140 scope:local +ExecSelectPresent = .text:0x000020E8; // type:function size:0x5A4 scope:local +GetCursorPos = .text:0x0000268C; // type:function size:0x7C scope:local +SetCameraRot = .text:0x00002708; // type:function size:0x6C scope:local +RotateCamera = .text:0x00002774; // type:function size:0x17C scope:local +CameraRotationDoneCheck = .text:0x000028F0; // type:function size:0x34 scope:local +ShowHidePresents = .text:0x00002924; // type:function size:0x260 scope:local +PresentUnlocked = .text:0x00002B84; // type:function size:0x48 scope:local +UnlockedPresents = .text:0x00002BCC; // type:function size:0x90 scope:local +MoveCursor = .text:0x00002C5C; // type:function size:0x738 scope:local +TotalPresentsInRoom = .text:0x00003394; // type:function size:0x18 scope:local +ExecPresentGet = .text:0x000033AC; // type:function size:0x590 scope:local +fn_1_393C = .text:0x0000393C; // type:function size:0x6C scope:local +PresentStateCreate = .text:0x000039A8; // type:function size:0x170 +PresentStateKill = .text:0x00003B18; // type:function size:0x74 +ExecPresentView = .text:0x00003B8C; // type:function size:0x22C scope:local +ExecPresentGet = .text:0x00003DB8; // type:function size:0xEC scope:local +PresentWinCreate = .text:0x00003EA4; // type:function size:0x19C +PresentWinKill = .text:0x00004040; // type:function size:0x40 +PresentWinAnimIn = .text:0x00004080; // type:function size:0x18 +PresentWinAnimOut = .text:0x00004098; // type:function size:0x18 +PresentWinMesSet = .text:0x000040B0; // type:function size:0x54 +PresentWinInsertMesSet = .text:0x00004104; // type:function size:0x40 +PresentWinPosSet = .text:0x00004144; // type:function size:0x40 +PresentWinDispOn = .text:0x00004184; // type:function size:0xC +PresentWinDispOff = .text:0x00004190; // type:function size:0xC +PresentWinMesWait = .text:0x0000419C; // type:function size:0x20 +PresentWinChoiceSet = .text:0x000041BC; // type:function size:0x24 +ExecWindow = .text:0x000041E0; // type:function size:0x114 scope:local +PresentGuideCreate = .text:0x000042F4; // type:function size:0x240 +PresentGuideKill = .text:0x00004534; // type:function size:0x8C +PresentGuideExecModeSet = .text:0x000045C0; // type:function size:0x44 +PresentGuideExecModeGet = .text:0x00004604; // type:function size:0x1C +ExecGuideEnter = .text:0x00004620; // type:function size:0x260 scope:local +ExecGuideLeave = .text:0x00004880; // type:function size:0x184 scope:local +UpdateGuide = .text:0x00004A04; // type:function size:0x2E8 scope:local +LerpAngle = .text:0x00004CEC; // type:function size:0x104 scope:local _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:0x8 data:double -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_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:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x8 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x218 -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x708 -lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 data:float -lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 data:float -lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 data:float -lbl_1_rodata_9D0 = .rodata:0x000009D0; // type:object size:0x8 data:double -lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0x20 -lbl_1_rodata_9F8 = .rodata:0x000009F8; // type:object size:0x28 -lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x4 data:float -lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 data:float -lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 data:float -lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 data:float -lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 data:float -lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 data:float -lbl_1_rodata_A38 = .rodata:0x00000A38; // type:object size:0x4 data:float -lbl_1_rodata_A3C = .rodata:0x00000A3C; // type:object size:0x4 data:float -lbl_1_rodata_A40 = .rodata:0x00000A40; // type:object size:0x4 data:float -lbl_1_rodata_A44 = .rodata:0x00000A44; // type:object size:0x4 data:float -lbl_1_rodata_A48 = .rodata:0x00000A48; // type:object size:0x4 data:float -lbl_1_rodata_A50 = .rodata:0x00000A50; // type:object size:0x8 data:double -lbl_1_rodata_A58 = .rodata:0x00000A58; // type:object size:0x4 data:float -lbl_1_rodata_A60 = .rodata:0x00000A60; // type:object size:0x8 data:double -lbl_1_rodata_A68 = .rodata:0x00000A68; // type:object size:0x8 data:double -lbl_1_rodata_A70 = .rodata:0x00000A70; // type:object size:0x4 data:float -lbl_1_rodata_A74 = .rodata:0x00000A74; // type:object size:0x28 -lbl_1_rodata_A9C = .rodata:0x00000A9C; // type:object size:0x4 data:float -lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x4 data:float -lbl_1_rodata_AA4 = .rodata:0x00000AA4; // type:object size:0x4 data:float -lbl_1_rodata_AA8 = .rodata:0x00000AA8; // type:object size:0x4 data:float -lbl_1_rodata_AAC = .rodata:0x00000AAC; // type:object size:0x4 data:float -lbl_1_rodata_AB0 = .rodata:0x00000AB0; // type:object size:0x4 data:float -lbl_1_rodata_AB8 = .rodata:0x00000AB8; // type:object size:0x8 data:double -lbl_1_rodata_AC0 = .rodata:0x00000AC0; // type:object size:0x8 data:double -lbl_1_rodata_AC8 = .rodata:0x00000AC8; // type:object size:0x28 -lbl_1_rodata_AF0 = .rodata:0x00000AF0; // type:object size:0x28 -lbl_1_rodata_B18 = .rodata:0x00000B18; // type:object size:0x28 -lbl_1_rodata_B40 = .rodata:0x00000B40; // type:object size:0x28 -lbl_1_rodata_B68 = .rodata:0x00000B68; // type:object size:0x28 -lbl_1_rodata_B90 = .rodata:0x00000B90; // type:object size:0x4 data:float -lbl_1_rodata_B94 = .rodata:0x00000B94; // type:object size:0x4 data:float -lbl_1_rodata_B98 = .rodata:0x00000B98; // type:object size:0x4 data:float -lbl_1_rodata_B9C = .rodata:0x00000B9C; // type:object size:0x4 data:float -lbl_1_rodata_BA0 = .rodata:0x00000BA0; // type:object size:0x4 data:float -lbl_1_rodata_BA4 = .rodata:0x00000BA4; // type:object size:0xC -lbl_1_rodata_BB0 = .rodata:0x00000BB0; // type:object size:0x4 data:float -lbl_1_rodata_BB4 = .rodata:0x00000BB4; // type:object size:0x4 data:float -lbl_1_rodata_BB8 = .rodata:0x00000BB8; // type:object size:0x4 data:float -lbl_1_rodata_BBC = .rodata:0x00000BBC; // type:object size:0x4 data:float -lbl_1_rodata_BC0 = .rodata:0x00000BC0; // type:object size:0x4 data:float -lbl_1_rodata_BC4 = .rodata:0x00000BC4; // type:object size:0x4 data:float -lbl_1_rodata_BC8 = .rodata:0x00000BC8; // type:object size:0x4 data:float -lbl_1_rodata_BCC = .rodata:0x00000BCC; // type:object size:0x4 data:float -lbl_1_rodata_BD0 = .rodata:0x00000BD0; // type:object size:0x8 data:float -lbl_1_rodata_BD8 = .rodata:0x00000BD8; // type:object size:0xC -lbl_1_rodata_BE4 = .rodata:0x00000BE4; // type:object size:0x4 data:float -lbl_1_rodata_BE8 = .rodata:0x00000BE8; // type:object size:0x4 data:float -lbl_1_rodata_BEC = .rodata:0x00000BEC; // type:object size:0x4 data:float -lbl_1_rodata_BF0 = .rodata:0x00000BF0; // type:object size:0x4 data:float -lbl_1_rodata_BF4 = .rodata:0x00000BF4; // type:object size:0x4 data:float -lbl_1_rodata_BF8 = .rodata:0x00000BF8; // type:object size:0x8 data:double -lbl_1_rodata_C00 = .rodata:0x00000C00; // type:object size:0x4 data:float -lbl_1_rodata_C08 = .rodata:0x00000C08; // type:object size:0x8 data:double -lbl_1_rodata_C10 = .rodata:0x00000C10; // type:object size:0x4 data:float -lbl_1_rodata_C14 = .rodata:0x00000C14; // type:object size:0x4 data:float -lbl_1_rodata_C18 = .rodata:0x00000C18; // type:object size:0x4 data:float -lbl_1_rodata_C1C = .rodata:0x00000C1C; // type:object size:0x4 data:float -lbl_1_rodata_C20 = .rodata:0x00000C20; // type:object size:0x8 data:double -lbl_1_rodata_C28 = .rodata:0x00000C28; // type:object size:0x8 data:double -lbl_1_rodata_C30 = .rodata:0x00000C30; // type:object size:0x4 data:float -lbl_1_rodata_C34 = .rodata:0x00000C34; // type:object size:0x4 data:float -lbl_1_rodata_C38 = .rodata:0x00000C38; // type:object size:0x4 data:float -lbl_1_rodata_C40 = .rodata:0x00000C40; // type:object size:0x8 data:double -lbl_1_rodata_C48 = .rodata:0x00000C48; // type:object size:0x4 data:float -lbl_1_rodata_C4C = .rodata:0x00000C4C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string -lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1B data:string -lbl_1_data_36 = .data:0x00000036; // type:object size:0x1A -lbl_1_data_50 = .data:0x00000050; // type:object size:0x1C -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x10 data:4byte -lbl_1_data_7C = .data:0x0000007C; // type:object size:0x8 -lbl_1_data_84 = .data:0x00000084; // type:object size:0x20 +__fakeHalf = .rodata:0x00000000; // type:object size:0x8 data:double +__fakeThree = .rodata:0x00000008; // type:object size:0x8 data:double +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:0x8 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_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:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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 +presentMdlTbl = .rodata:0x000000A0; // type:object size:0x218 scope:local +roomTbl = .rodata:0x000002B8; // type:object size:0x708 scope:local +lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_9D0 = .rodata:0x000009D0; // type:object size:0x8 scope:local data:float +roomIdxTbl = .rodata:0x000009D8; // type:object size:0x20 scope:local +roomMessTbl = .rodata:0x000009F8; // type:object size:0x28 scope:local +lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A38 = .rodata:0x00000A38; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A3C = .rodata:0x00000A3C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A40 = .rodata:0x00000A40; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A44 = .rodata:0x00000A44; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A48 = .rodata:0x00000A48; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A50 = .rodata:0x00000A50; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A58 = .rodata:0x00000A58; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A60 = .rodata:0x00000A60; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A68 = .rodata:0x00000A68; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A70 = .rodata:0x00000A70; // type:object size:0x4 scope:local data:float +roomPresentOffsetTbl = .rodata:0x00000A74; // type:object size:0x28 scope:local +lbl_1_rodata_A9C = .rodata:0x00000A9C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_AA4 = .rodata:0x00000AA4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_AA8 = .rodata:0x00000AA8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_AAC = .rodata:0x00000AAC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_AB0 = .rodata:0x00000AB0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_AB8 = .rodata:0x00000AB8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_AC0 = .rodata:0x00000AC0; // type:object size:0x8 scope:local data:double +totalPresentCntTbl = .rodata:0x00000AC8; // type:object size:0x28 scope:local +presentItemIdxTbl = .rodata:0x00000AF0; // type:object size:0x28 scope:local +lbl_1_rodata_B18 = .rodata:0x00000B18; // type:object size:0x28 scope:local +constellationIdxTbl = .rodata:0x00000B40; // type:object size:0x28 scope:local +roofIdxTbl = .rodata:0x00000B68; // type:object size:0x28 scope:local +lbl_1_rodata_B90 = .rodata:0x00000B90; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B94 = .rodata:0x00000B94; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B98 = .rodata:0x00000B98; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B9C = .rodata:0x00000B9C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BA0 = .rodata:0x00000BA0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BA4 = .rodata:0x00000BA4; // type:object size:0x8 scope:local +lbl_1_rodata_BB0 = .rodata:0x00000BB0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BB4 = .rodata:0x00000BB4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BB8 = .rodata:0x00000BB8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BBC = .rodata:0x00000BBC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC0 = .rodata:0x00000BC0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC4 = .rodata:0x00000BC4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC8 = .rodata:0x00000BC8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BCC = .rodata:0x00000BCC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BD0 = .rodata:0x00000BD0; // type:object size:0x4 scope:local data:float +guideMotTbl = .rodata:0x00000BD8; // type:object size:0xC scope:local +lbl_1_rodata_BE4 = .rodata:0x00000BE4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BE8 = .rodata:0x00000BE8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BEC = .rodata:0x00000BEC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BF0 = .rodata:0x00000BF0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BF4 = .rodata:0x00000BF4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BF8 = .rodata:0x00000BF8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C00 = .rodata:0x00000C00; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C08 = .rodata:0x00000C08; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C10 = .rodata:0x00000C10; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C14 = .rodata:0x00000C14; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C18 = .rodata:0x00000C18; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C1C = .rodata:0x00000C1C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C20 = .rodata:0x00000C20; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C28 = .rodata:0x00000C28; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C30 = .rodata:0x00000C30; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C34 = .rodata:0x00000C34; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C38 = .rodata:0x00000C38; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C40 = .rodata:0x00000C40; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C48 = .rodata:0x00000C48; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C4C = .rodata:0x00000C4C; // type:object size:0x4 scope:local data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B scope:local data:string +lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1B scope:local data:string +lbl_1_data_36 = .data:0x00000036; // type:object size:0x16 scope:local data:string +lightTbl = .data:0x00000050; // type:object size:0x1C scope:local data:4byte +execModeTbl = .data:0x0000006C; // type:object size:0x10 scope:local data:4byte +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x7 scope:local data:string +roomIdxTbl2 = .data:0x00000084; // type:object size:0x20 jumptable_1_data_A4 = .data:0x000000A4; // type:object size:0x2C scope:local jumptable_1_data_D0 = .data:0x000000D0; // type:object size:0x1C scope:local -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x24 -lbl_1_data_114 = .data:0x00000114; // type:object size:0x2A data:string -lbl_1_data_13E = .data:0x0000013E; // type:object size:0x2E +shadowPosTbl = .data:0x000000F0; // type:object size:0x24 scope:local data:float +lbl_1_data_114 = .data:0x00000114; // type:object size:0x2A scope:local data:string +lbl_1_data_13E = .data:0x0000013E; // type:object size:0x2B scope:local data:string jumptable_1_data_16C = .data:0x0000016C; // type:object size:0x34 scope:local -lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC data:4byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +execModeTbl = .data:0x000001A0; // type:object size:0xC scope:local data:4byte +scene = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte +presentObjMan = .bss:0x00000004; // type:object size:0x4 data:4byte +presentCamera = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +present = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +presentState = .bss:0x00000018; // type:object size:0x4 data:4byte +presentGuide = .bss:0x00000020; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/resultDll/splits.txt b/config/GMPP01_00/rels/resultDll/splits.txt index 531cd645..a2f15b2b 100644 --- a/config/GMPP01_00/rels/resultDll/splits.txt +++ b/config/GMPP01_00/rels/resultDll/splits.txt @@ -5,3 +5,23 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/resultDll/main.c: + .text start:0x000000A0 end:0x00006490 + .rodata start:0x00000000 end:0x00000160 + .data start:0x00000000 end:0x000004E8 + .bss start:0x00000000 end:0x00000190 + +REL/resultDll/battle.c: + .text start:0x00006490 end:0x00008FF8 + .rodata start:0x00000160 end:0x00000220 + .data start:0x000004E8 end:0x00000918 + .bss start:0x00000190 end:0x00001A18 + +REL/resultDll/datalist.c: + .text start:0x00008FF8 end:0x0000942C + .rodata start:0x00000220 end:0x00000230 + .bss start:0x00001A18 end:0x00001ADC diff --git a/config/GMPP01_00/rels/resultDll/symbols.txt b/config/GMPP01_00/rels/resultDll/symbols.txt index 07d67720..b0b7a9af 100644 --- a/config/GMPP01_00/rels/resultDll/symbols.txt +++ b/config/GMPP01_00/rels/resultDll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x438 +ObjectSetup = .text:0x000000A0; // type:function size:0x438 fn_1_4D8 = .text:0x000004D8; // type:function size:0x3B0 fn_1_888 = .text:0x00000888; // type:function size:0x2F0 fn_1_B78 = .text:0x00000B78; // type:function size:0x13D4 @@ -31,136 +31,139 @@ fn_1_927C = .text:0x0000927C; // type:function size:0x138 fn_1_93B4 = .text:0x000093B4; // type:function size:0x78 _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:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x10 data:4byte -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 data:float -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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_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:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_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:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 scope:local data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +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_data_0 = .data:0x00000000; // type:object size:0x2A4 lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0xDC data:4byte lbl_1_data_380 = .data:0x00000380; // type:object size:0x2 data:2byte -lbl_1_data_382 = .data:0x00000382; // type:object size:0x26 data:string +lbl_1_data_382 = .data:0x00000382; // type:object size:0x26 scope:local data:string lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x18 lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x18 lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x20 lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x10 lbl_1_data_408 = .data:0x00000408; // type:object size:0x30 lbl_1_data_438 = .data:0x00000438; // type:object size:0x10 -lbl_1_data_448 = .data:0x00000448; // type:object size:0x8 -lbl_1_data_450 = .data:0x00000450; // type:object size:0x38 +lbl_1_data_448 = .data:0x00000448; // type:object size:0x8 scope:local +lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 +lbl_1_data_468 = .data:0x00000468; // type:object size:0x20 lbl_1_data_488 = .data:0x00000488; // type:object size:0x30 -lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x11 data:string -lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0x11 data:string -lbl_1_data_4DA = .data:0x000004DA; // type:object size:0xE +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x11 scope:local data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0x11 scope:local data:string +lbl_1_data_4DA = .data:0x000004DA; // type:object size:0xB scope:local data:string lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x270 lbl_1_data_758 = .data:0x00000758; // type:object size:0x28 -lbl_1_data_780 = .data:0x00000780; // type:object size:0x70 -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x40 +lbl_1_data_780 = .data:0x00000780; // type:object size:0x50 +lbl_1_data_7D0 = .data:0x000007D0; // type:object size:0x20 +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x30 +lbl_1_data_820 = .data:0x00000820; // type:object size:0x10 lbl_1_data_830 = .data:0x00000830; // type:object size:0x10 lbl_1_data_840 = .data:0x00000840; // type:object size:0x20 lbl_1_data_860 = .data:0x00000860; // type:object size:0x20 lbl_1_data_880 = .data:0x00000880; // type:object size:0x20 lbl_1_data_8A0 = .data:0x000008A0; // type:object size:0x6 data:2byte -lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 data:string -lbl_1_data_8AE = .data:0x000008AE; // type:object size:0xA +lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 scope:local data:float +lbl_1_data_8AE = .data:0x000008AE; // type:object size:0x8 scope:local data:float lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x60 lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte @@ -187,17 +190,21 @@ lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x2 data:2byte lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte -lbl_1_bss_184 = .bss:0x00000184; // type:object size:0xC data:4byte +lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x4 data:4byte +lbl_1_bss_188 = .bss:0x00000188; // type:object size:0x4 data:4byte lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x1680 -lbl_1_bss_1814 = .bss:0x00001814; // type:object size:0x14 +lbl_1_bss_1814 = .bss:0x00001814; // type:object size:0x8 +lbl_1_bss_181C = .bss:0x0000181C; // type:object size:0xC lbl_1_bss_1828 = .bss:0x00001828; // type:object size:0x168 data:2byte lbl_1_bss_1990 = .bss:0x00001990; // type:object size:0x20 lbl_1_bss_19B0 = .bss:0x000019B0; // type:object size:0x8 lbl_1_bss_19B8 = .bss:0x000019B8; // type:object size:0x28 lbl_1_bss_19E0 = .bss:0x000019E0; // type:object size:0x8 lbl_1_bss_19E8 = .bss:0x000019E8; // type:object size:0x8 -lbl_1_bss_19F0 = .bss:0x000019F0; // type:object size:0x2A +lbl_1_bss_19F0 = .bss:0x000019F0; // type:object size:0x8 +lbl_1_bss_19F8 = .bss:0x000019F8; // type:object size:0x20 +lbl_1_bss_1A18 = .bss:0x00001A18; // type:object size:0x2 lbl_1_bss_1A1A = .bss:0x00001A1A; // type:object size:0x42 data:2byte lbl_1_bss_1A5C = .bss:0x00001A5C; // type:object size:0x40 data:2byte lbl_1_bss_1A9C = .bss:0x00001A9C; // type:object size:0x40 data:2byte diff --git a/config/GMPP01_00/rels/safDll/splits.txt b/config/GMPP01_00/rels/safDll/splits.txt index 531cd645..43792488 100644 --- a/config/GMPP01_00/rels/safDll/splits.txt +++ b/config/GMPP01_00/rels/safDll/splits.txt @@ -5,3 +5,8 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/safDll/main.c: + .text start:0x00000000 end:0x000003AC + .rodata start:0x00000000 end:0x00000024 + .data start:0x00000000 end:0x00000039 diff --git a/config/GMPP01_00/rels/safDll/symbols.txt b/config/GMPP01_00/rels/safDll/symbols.txt index 11ae3d8d..6a012c0c 100644 --- a/config/GMPP01_00/rels/safDll/symbols.txt +++ b/config/GMPP01_00/rels/safDll/symbols.txt @@ -1,13 +1,14 @@ fn_1_0 = .text:0x00000000; // type:function size:0x4 -fn_1_4 = .text:0x00000004; // type:function size:0x284 -fn_1_288 = .text:0x00000288; // type:function size:0x124 +safMarioEyeDim = .text:0x00000004; // type:function size:0x284 +safSaveTest = .text:0x00000288; // type:function size:0x124 _ctors = .ctors:0x00000000; // type:label scope:global _dtors = .dtors:0x00000000; // type:label scope:global -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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float -lbl_1_data_4 = .data:0x00000004; // type:object size:0xE data:string -lbl_1_data_12 = .data:0x00000012; // type:object size:0xB data:string -lbl_1_data_1D = .data:0x0000001D; // type:object size:0xE data:string -lbl_1_data_2B = .data:0x0000002B; // type:object size:0xE data:string +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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 scope:local data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x4 +lbl_1_data_4 = .data:0x00000004; // type:object size:0xE scope:local data:string +lbl_1_data_12 = .data:0x00000012; // type:object size:0xB scope:local data:string +lbl_1_data_1D = .data:0x0000001D; // type:object size:0xE scope:local data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0xE scope:local data:string diff --git a/config/GMPP01_00/rels/selmenuDll/splits.txt b/config/GMPP01_00/rels/selmenuDll/splits.txt index 531cd645..39e27b1f 100644 --- a/config/GMPP01_00/rels/selmenuDll/splits.txt +++ b/config/GMPP01_00/rels/selmenuDll/splits.txt @@ -5,3 +5,12 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/selmenuDll/main.c: + .text start:0x000000A0 end:0x00005198 + .rodata start:0x00000000 end:0x00000084 + .data start:0x00000000 end:0x00000B3F + .bss start:0x00000000 end:0x00000098 diff --git a/config/GMPP01_00/rels/selmenuDll/symbols.txt b/config/GMPP01_00/rels/selmenuDll/symbols.txt index d5cd5a48..199e2ba8 100644 --- a/config/GMPP01_00/rels/selmenuDll/symbols.txt +++ b/config/GMPP01_00/rels/selmenuDll/symbols.txt @@ -1,201 +1,204 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x4B8 -fn_1_558 = .text:0x00000558; // type:function size:0x60 -fn_1_5B8 = .text:0x000005B8; // type:function size:0x324 -fn_1_8DC = .text:0x000008DC; // type:function size:0x170 -fn_1_A4C = .text:0x00000A4C; // type:function size:0x180 -fn_1_BCC = .text:0x00000BCC; // type:function size:0x88 -fn_1_C54 = .text:0x00000C54; // type:function size:0x474 -fn_1_10C8 = .text:0x000010C8; // type:function size:0xA78 -fn_1_1B40 = .text:0x00001B40; // type:function size:0x334 -fn_1_1E74 = .text:0x00001E74; // type:function size:0x110 -fn_1_1F84 = .text:0x00001F84; // type:function size:0x50 -fn_1_1FD4 = .text:0x00001FD4; // type:function size:0x10C -fn_1_20E0 = .text:0x000020E0; // type:function size:0x1F8 -fn_1_22D8 = .text:0x000022D8; // type:function size:0xD6C -fn_1_3044 = .text:0x00003044; // type:function size:0x2FC -fn_1_3340 = .text:0x00003340; // type:function size:0x804 -fn_1_3B44 = .text:0x00003B44; // type:function size:0x40 -fn_1_3B84 = .text:0x00003B84; // type:function size:0x968 -fn_1_44EC = .text:0x000044EC; // type:function size:0x20 +ObjectSetup = .text:0x000000A0; // type:function size:0x4B8 +CopyPlayerCfg = .text:0x00000558; // type:function size:0x60 scope:local +CalcBtns = .text:0x000005B8; // type:function size:0x324 scope:local +DrawPage = .text:0x000008DC; // type:function size:0x170 scope:local +MoveSMPage = .text:0x00000A4C; // type:function size:0x180 scope:local +MoveSMCursor = .text:0x00000BCC; // type:function size:0x88 scope:local +SMInit = .text:0x00000C54; // type:function size:0x474 scope:local +SMUpdate = .text:0x000010C8; // type:function size:0xA78 scope:local +SMGroupGen = .text:0x00001B40; // type:function size:0x334 scope:local +SMChangeChar = .text:0x00001E74; // type:function size:0x110 scope:local +SMCharKill = .text:0x00001F84; // type:function size:0x50 scope:local +CharRandomize = .text:0x00001FD4; // type:function size:0x10C scope:local +SMCharInit = .text:0x000020E0; // type:function size:0x1F8 scope:local +SMCharUpdate = .text:0x000022D8; // type:function size:0xD6C scope:local +SMExit = .text:0x00003044; // type:function size:0x2FC scope:local +SMPlayerCfgDraw = .text:0x00003340; // type:function size:0x804 scope:local +SMPlayerCfgInit = .text:0x00003B44; // type:function size:0x40 scope:local +SMPlayerCfgUpdate = .text:0x00003B84; // type:function size:0x968 scope:local +SMRand8Tick = .text:0x000044EC; // type:function size:0x20 scope:local fn_1_450C = .text:0x0000450C; // type:function size:0x4 -fn_1_4510 = .text:0x00004510; // type:function size:0x64 -fn_1_4574 = .text:0x00004574; // type:function size:0x854 -fn_1_4DC8 = .text:0x00004DC8; // type:function size:0x3D0 +SMSound3DInit = .text:0x00004510; // type:function size:0x64 scope:local +SMSound3DUpdate = .text:0x00004574; // type:function size:0x854 scope:local +SMSound3DDraw = .text:0x00004DC8; // type:function size:0x3D0 scope:local _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:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x8 data:4byte -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x10 data:4byte -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:0x8 data:4byte -lbl_1_data_0 = .data:0x00000000; // type:object size:0x6 data:string -lbl_1_data_6 = .data:0x00000006; // type:object size:0x6 data:string -lbl_1_data_C = .data:0x0000000C; // type:object size:0x6 data:string -lbl_1_data_12 = .data:0x00000012; // type:object size:0x6 data:string -lbl_1_data_18 = .data:0x00000018; // type:object size:0x6 data:string -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x7 data:string -lbl_1_data_25 = .data:0x00000025; // type:object size:0x6 data:string -lbl_1_data_2B = .data:0x0000002B; // type:object size:0x9 -lbl_1_data_34 = .data:0x00000034; // type:object size:0x20 -lbl_1_data_54 = .data:0x00000054; // type:object size:0x14 data:string -lbl_1_data_68 = .data:0x00000068; // type:object size:0x16 data:string -lbl_1_data_7E = .data:0x0000007E; // type:object size:0x11 data:string -lbl_1_data_8F = .data:0x0000008F; // type:object size:0x12 data:string -lbl_1_data_A1 = .data:0x000000A1; // type:object size:0x10 data:string -lbl_1_data_B1 = .data:0x000000B1; // type:object size:0xD data:string -lbl_1_data_BE = .data:0x000000BE; // type:object size:0x11 data:string -lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD data:string -lbl_1_data_DC = .data:0x000000DC; // type:object size:0xE data:string -lbl_1_data_EA = .data:0x000000EA; // type:object size:0x16 data:string -lbl_1_data_100 = .data:0x00000100; // type:object size:0x13 data:string -lbl_1_data_113 = .data:0x00000113; // type:object size:0xF data:string -lbl_1_data_122 = .data:0x00000122; // type:object size:0x14 data:string -lbl_1_data_136 = .data:0x00000136; // type:object size:0x11 data:string -lbl_1_data_147 = .data:0x00000147; // type:object size:0x13 data:string -lbl_1_data_15A = .data:0x0000015A; // type:object size:0x10 data:string -lbl_1_data_16A = .data:0x0000016A; // type:object size:0x11 data:string -lbl_1_data_17B = .data:0x0000017B; // type:object size:0x15 data:string -lbl_1_data_190 = .data:0x00000190; // type:object size:0x17 data:string -lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x11 data:string -lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x10 data:string -lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x10 data:string -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x12 data:string -lbl_1_data_1EA = .data:0x000001EA; // type:object size:0x10 data:string -lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xF data:string -lbl_1_data_209 = .data:0x00000209; // type:object size:0x15 data:string -lbl_1_data_21E = .data:0x0000021E; // type:object size:0xE data:string -lbl_1_data_22C = .data:0x0000022C; // type:object size:0x13 data:string -lbl_1_data_23F = .data:0x0000023F; // type:object size:0x14 data:string -lbl_1_data_253 = .data:0x00000253; // type:object size:0x13 data:string -lbl_1_data_266 = .data:0x00000266; // type:object size:0x11 data:string -lbl_1_data_277 = .data:0x00000277; // type:object size:0x11 data:string -lbl_1_data_288 = .data:0x00000288; // type:object size:0x11 data:string -lbl_1_data_299 = .data:0x00000299; // type:object size:0x10 data:string -lbl_1_data_2A9 = .data:0x000002A9; // type:object size:0x10 data:string -lbl_1_data_2B9 = .data:0x000002B9; // type:object size:0x1B data:string -lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x11 data:string -lbl_1_data_2E5 = .data:0x000002E5; // type:object size:0x1D data:string -lbl_1_data_302 = .data:0x00000302; // type:object size:0x17 data:string -lbl_1_data_319 = .data:0x00000319; // type:object size:0x16 data:string -lbl_1_data_32F = .data:0x0000032F; // type:object size:0x15 data:string -lbl_1_data_344 = .data:0x00000344; // type:object size:0x13 data:string -lbl_1_data_357 = .data:0x00000357; // type:object size:0xE data:string -lbl_1_data_365 = .data:0x00000365; // type:object size:0x14 data:string -lbl_1_data_379 = .data:0x00000379; // type:object size:0x13 data:string -lbl_1_data_38C = .data:0x0000038C; // type:object size:0x12 data:string -lbl_1_data_39E = .data:0x0000039E; // type:object size:0xD data:string -lbl_1_data_3AB = .data:0x000003AB; // type:object size:0xD data:string -lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x17 data:string -lbl_1_data_3CF = .data:0x000003CF; // type:object size:0xE data:string -lbl_1_data_3DD = .data:0x000003DD; // type:object size:0xB data:string -lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x11 data:string -lbl_1_data_3F9 = .data:0x000003F9; // type:object size:0x11 data:string -lbl_1_data_40A = .data:0x0000040A; // type:object size:0xA data:string -lbl_1_data_414 = .data:0x00000414; // type:object size:0x13 data:string -lbl_1_data_427 = .data:0x00000427; // type:object size:0xD data:string -lbl_1_data_434 = .data:0x00000434; // type:object size:0x5 data:string -lbl_1_data_439 = .data:0x00000439; // type:object size:0x15 data:string -lbl_1_data_44E = .data:0x0000044E; // type:object size:0x5 data:string -lbl_1_data_453 = .data:0x00000453; // type:object size:0xF data:string -lbl_1_data_462 = .data:0x00000462; // type:object size:0xE data:string -lbl_1_data_470 = .data:0x00000470; // type:object size:0xE data:string -lbl_1_data_47E = .data:0x0000047E; // type:object size:0xE data:string -lbl_1_data_48C = .data:0x0000048C; // type:object size:0xE data:string -lbl_1_data_49A = .data:0x0000049A; // type:object size:0xE data:string -lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0xE data:string -lbl_1_data_4B6 = .data:0x000004B6; // type:object size:0xE data:string -lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0xE data:string -lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0xA data:string -lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x10 -lbl_1_data_4EC = .data:0x000004EC; // type:object size:0x348 -lbl_1_data_834 = .data:0x00000834; // type:object size:0x28 -lbl_1_data_85C = .data:0x0000085C; // type:object size:0x12 data:string -lbl_1_data_86E = .data:0x0000086E; // type:object size:0x12 data:string -lbl_1_data_880 = .data:0x00000880; // type:object size:0x12 data:string -lbl_1_data_892 = .data:0x00000892; // type:object size:0x12 data:string -lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x12 data:string -lbl_1_data_8B6 = .data:0x000008B6; // type:object size:0x12 data:string -lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x11 data:string -lbl_1_data_8D9 = .data:0x000008D9; // type:object size:0x23 -lbl_1_data_8FC = .data:0x000008FC; // type:object size:0x2 data:2byte -lbl_1_data_8FE = .data:0x000008FE; // type:object size:0x8 -lbl_1_data_906 = .data:0x00000906; // type:object size:0x12 -lbl_1_data_918 = .data:0x00000918; // type:object size:0x4 data:4byte -lbl_1_data_91C = .data:0x0000091C; // type:object size:0x12 data:string -lbl_1_data_92E = .data:0x0000092E; // type:object size:0x24 data:string -lbl_1_data_952 = .data:0x00000952; // type:object size:0xB data:string -lbl_1_data_95D = .data:0x0000095D; // type:object size:0x3 data:string -lbl_1_data_960 = .data:0x00000960; // type:object size:0x10 -lbl_1_data_970 = .data:0x00000970; // type:object size:0x20 -lbl_1_data_990 = .data:0x00000990; // type:object size:0x20 -lbl_1_data_9B0 = .data:0x000009B0; // type:object size:0xD data:string -lbl_1_data_9BD = .data:0x000009BD; // type:object size:0x5 -lbl_1_data_9C2 = .data:0x000009C2; // type:object size:0x5 -lbl_1_data_9C7 = .data:0x000009C7; // type:object size:0x6 -lbl_1_data_9CD = .data:0x000009CD; // type:object size:0x9 data:string -lbl_1_data_9D6 = .data:0x000009D6; // type:object size:0xA data:string -lbl_1_data_9E0 = .data:0x000009E0; // type:object size:0xA data:string -lbl_1_data_9EA = .data:0x000009EA; // type:object size:0x9 data:string -lbl_1_data_9F3 = .data:0x000009F3; // type:object size:0x9 data:string -lbl_1_data_9FC = .data:0x000009FC; // type:object size:0xC -lbl_1_data_A08 = .data:0x00000A08; // type:object size:0x14 data:4byte -lbl_1_data_A1C = .data:0x00000A1C; // type:object size:0x6 data:string -lbl_1_data_A22 = .data:0x00000A22; // type:object size:0x4 data:string -lbl_1_data_A26 = .data:0x00000A26; // type:object size:0x5 data:string -lbl_1_data_A2B = .data:0x00000A2B; // type:object size:0x7 data:string -lbl_1_data_A32 = .data:0x00000A32; // type:object size:0x5 data:string -lbl_1_data_A37 = .data:0x00000A37; // type:object size:0x9 data:string +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:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x10 scope:local data:4byte +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:0x8 scope:local data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x6 scope:local data:string +lbl_1_data_6 = .data:0x00000006; // type:object size:0x6 scope:local data:string +lbl_1_data_C = .data:0x0000000C; // type:object size:0x6 scope:local data:string +lbl_1_data_12 = .data:0x00000012; // type:object size:0x6 scope:local data:string +lbl_1_data_18 = .data:0x00000018; // type:object size:0x6 scope:local data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x7 scope:local data:string +lbl_1_data_25 = .data:0x00000025; // type:object size:0x6 scope:local data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0x8 scope:local data:string +smCharTbl = .data:0x00000034; // type:object size:0x20 scope:local +lbl_1_data_54 = .data:0x00000054; // type:object size:0x14 scope:local data:string +lbl_1_data_68 = .data:0x00000068; // type:object size:0x16 scope:local data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0x11 scope:local data:string +lbl_1_data_8F = .data:0x0000008F; // type:object size:0x12 scope:local data:string +lbl_1_data_A1 = .data:0x000000A1; // type:object size:0x10 scope:local data:string +lbl_1_data_B1 = .data:0x000000B1; // type:object size:0xD scope:local data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0x11 scope:local data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD scope:local data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xE scope:local data:string +lbl_1_data_EA = .data:0x000000EA; // type:object size:0x16 scope:local data:string +lbl_1_data_100 = .data:0x00000100; // type:object size:0x13 scope:local data:string +lbl_1_data_113 = .data:0x00000113; // type:object size:0xF scope:local data:string +lbl_1_data_122 = .data:0x00000122; // type:object size:0x14 scope:local data:string +lbl_1_data_136 = .data:0x00000136; // type:object size:0x11 scope:local data:string +lbl_1_data_147 = .data:0x00000147; // type:object size:0x13 scope:local data:string +lbl_1_data_15A = .data:0x0000015A; // type:object size:0x10 scope:local data:string +lbl_1_data_16A = .data:0x0000016A; // type:object size:0x11 scope:local data:string +lbl_1_data_17B = .data:0x0000017B; // type:object size:0x15 scope:local data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0x17 scope:local data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x11 scope:local data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x10 scope:local data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x10 scope:local data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x12 scope:local data:string +lbl_1_data_1EA = .data:0x000001EA; // type:object size:0x10 scope:local data:string +lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xF scope:local data:string +lbl_1_data_209 = .data:0x00000209; // type:object size:0x15 scope:local data:string +lbl_1_data_21E = .data:0x0000021E; // type:object size:0xE scope:local data:string +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x13 scope:local data:string +lbl_1_data_23F = .data:0x0000023F; // type:object size:0x14 scope:local data:string +lbl_1_data_253 = .data:0x00000253; // type:object size:0x13 scope:local data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x11 scope:local data:string +lbl_1_data_277 = .data:0x00000277; // type:object size:0x11 scope:local data:string +lbl_1_data_288 = .data:0x00000288; // type:object size:0x11 scope:local data:string +lbl_1_data_299 = .data:0x00000299; // type:object size:0x10 scope:local data:string +lbl_1_data_2A9 = .data:0x000002A9; // type:object size:0x10 scope:local data:string +lbl_1_data_2B9 = .data:0x000002B9; // type:object size:0x1B scope:local data:string +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x11 scope:local data:string +lbl_1_data_2E5 = .data:0x000002E5; // type:object size:0x1D scope:local data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0x17 scope:local data:string +lbl_1_data_319 = .data:0x00000319; // type:object size:0x16 scope:local data:string +lbl_1_data_32F = .data:0x0000032F; // type:object size:0x15 scope:local data:string +lbl_1_data_344 = .data:0x00000344; // type:object size:0x13 scope:local data:string +lbl_1_data_357 = .data:0x00000357; // type:object size:0xE scope:local data:string +lbl_1_data_365 = .data:0x00000365; // type:object size:0x14 scope:local data:string +lbl_1_data_379 = .data:0x00000379; // type:object size:0x13 scope:local data:string +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x12 scope:local data:string +lbl_1_data_39E = .data:0x0000039E; // type:object size:0xD scope:local data:string +lbl_1_data_3AB = .data:0x000003AB; // type:object size:0xD scope:local data:string +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x17 scope:local data:string +lbl_1_data_3CF = .data:0x000003CF; // type:object size:0xE scope:local data:string +lbl_1_data_3DD = .data:0x000003DD; // type:object size:0xB scope:local data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x11 scope:local data:string +lbl_1_data_3F9 = .data:0x000003F9; // type:object size:0x11 scope:local data:string +lbl_1_data_40A = .data:0x0000040A; // type:object size:0xA scope:local data:string +lbl_1_data_414 = .data:0x00000414; // type:object size:0x13 scope:local data:string +lbl_1_data_427 = .data:0x00000427; // type:object size:0xD scope:local data:string +lbl_1_data_434 = .data:0x00000434; // type:object size:0x5 scope:local data:string +lbl_1_data_439 = .data:0x00000439; // type:object size:0x15 scope:local data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x5 scope:local data:string +lbl_1_data_453 = .data:0x00000453; // type:object size:0xF scope:local data:string +lbl_1_data_462 = .data:0x00000462; // type:object size:0xE scope:local data:string +lbl_1_data_470 = .data:0x00000470; // type:object size:0xE scope:local data:string +lbl_1_data_47E = .data:0x0000047E; // type:object size:0xE scope:local data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0xE scope:local data:string +lbl_1_data_49A = .data:0x0000049A; // type:object size:0xE scope:local data:string +lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0xE scope:local data:string +lbl_1_data_4B6 = .data:0x000004B6; // type:object size:0xE scope:local data:string +lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0xE scope:local data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0xA scope:local data:string +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0xF scope:local data:string +smMenuTbl = .data:0x000004EC; // type:object size:0x348 scope:local +cameraMaskTbl = .data:0x00000834; // type:object size:0x10 scope:local +lbl_1_data_844 = .data:0x00000844; // type:object size:0x18 scope:local +lbl_1_data_85C = .data:0x0000085C; // type:object size:0x12 scope:local data:string +lbl_1_data_86E = .data:0x0000086E; // type:object size:0x12 scope:local data:string +lbl_1_data_880 = .data:0x00000880; // type:object size:0x12 scope:local data:string +lbl_1_data_892 = .data:0x00000892; // type:object size:0x12 scope:local data:string +lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x12 scope:local data:string +lbl_1_data_8B6 = .data:0x000008B6; // type:object size:0x12 scope:local data:string +lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x11 scope:local data:string +lbl_1_data_8D9 = .data:0x000008D9; // type:object size:0x1 scope:local +dvdMusTbl = .data:0x000008DC; // type:object size:0x20 scope:local +smSelectPosExit = .data:0x000008FC; // type:object size:0x2 scope:local data:2byte +keyDStkAllPrev = .data:0x000008FE; // type:object size:0x8 scope:local +lbl_1_data_906 = .data:0x00000906; // type:object size:0xF scope:local data:string +funcId$244 = .data:0x00000918; // type:object size:0x4 scope:local data:4byte +lbl_1_data_91C = .data:0x0000091C; // type:object size:0x12 scope:local data:string +lbl_1_data_92E = .data:0x0000092E; // type:object size:0x24 scope:local data:string +lbl_1_data_952 = .data:0x00000952; // type:object size:0xB scope:local data:string +lbl_1_data_95D = .data:0x0000095D; // type:object size:0x3 scope:local data:string +lbl_1_data_960 = .data:0x00000960; // type:object size:0xD scope:local data:string +charMdlTbl = .data:0x00000970; // type:object size:0x20 scope:local +charMdlMotTbl = .data:0x00000990; // type:object size:0x20 scope:local +lbl_1_data_9B0 = .data:0x000009B0; // type:object size:0xD scope:local data:string +lbl_1_data_9BD = .data:0x000009BD; // type:object size:0x5 scope:local +lbl_1_data_9C2 = .data:0x000009C2; // type:object size:0x5 scope:local +lbl_1_data_9C7 = .data:0x000009C7; // type:object size:0x6 scope:local +lbl_1_data_9CD = .data:0x000009CD; // type:object size:0x9 scope:local data:string +lbl_1_data_9D6 = .data:0x000009D6; // type:object size:0xA scope:local data:string +lbl_1_data_9E0 = .data:0x000009E0; // type:object size:0xA scope:local data:string +lbl_1_data_9EA = .data:0x000009EA; // type:object size:0x9 scope:local data:string +lbl_1_data_9F3 = .data:0x000009F3; // type:object size:0x9 scope:local data:string +lbl_1_data_9FC = .data:0x000009FC; // type:object size:0x9 scope:local data:string +padCfgStrTbl = .data:0x00000A08; // type:object size:0x14 scope:local data:4byte +lbl_1_data_A1C = .data:0x00000A1C; // type:object size:0x6 scope:local data:string +lbl_1_data_A22 = .data:0x00000A22; // type:object size:0x4 scope:local data:string +lbl_1_data_A26 = .data:0x00000A26; // type:object size:0x5 scope:local data:string +lbl_1_data_A2B = .data:0x00000A2B; // type:object size:0x7 scope:local data:string +lbl_1_data_A32 = .data:0x00000A32; // type:object size:0x5 scope:local data:string +lbl_1_data_A37 = .data:0x00000A37; // type:object size:0x9 scope:local data:string jumptable_1_data_A40 = .data:0x00000A40; // type:object size:0x20 scope:local jumptable_1_data_A60 = .data:0x00000A60; // type:object size:0x20 scope:local -lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x4 data:string -lbl_1_data_A84 = .data:0x00000A84; // type:object size:0x4 data:string -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x10 data:string -lbl_1_data_A98 = .data:0x00000A98; // type:object size:0x15 data:string -lbl_1_data_AAD = .data:0x00000AAD; // type:object size:0x15 data:string -lbl_1_data_AC2 = .data:0x00000AC2; // type:object size:0x15 data:string -lbl_1_data_AD7 = .data:0x00000AD7; // type:object size:0x15 data:string -lbl_1_data_AEC = .data:0x00000AEC; // type:object size:0x15 data:string -lbl_1_data_B01 = .data:0x00000B01; // type:object size:0x15 data:string -lbl_1_data_B16 = .data:0x00000B16; // type:object size:0x15 data:string -lbl_1_data_B2B = .data:0x00000B2B; // type:object size:0x14 data:string -lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte -lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte -lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x10 -lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x8 -lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x10 -lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x8 -lbl_1_bss_3E = .bss:0x0000003E; // type:object size:0x8 -lbl_1_bss_46 = .bss:0x00000046; // type:object size:0x8 -lbl_1_bss_4E = .bss:0x0000004E; // type:object size:0x2 data:2byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte -lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x2 data:2byte -lbl_1_bss_56 = .bss:0x00000056; // type:object size:0x2A data:2byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0xE -lbl_1_bss_96 = .bss:0x00000096; // type:object size:0x2 data:2byte +lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x4 scope:local data:string +lbl_1_data_A84 = .data:0x00000A84; // type:object size:0x4 scope:local data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x10 scope:local data:string +lbl_1_data_A98 = .data:0x00000A98; // type:object size:0x15 scope:local data:string +lbl_1_data_AAD = .data:0x00000AAD; // type:object size:0x15 scope:local data:string +lbl_1_data_AC2 = .data:0x00000AC2; // type:object size:0x15 scope:local data:string +lbl_1_data_AD7 = .data:0x00000AD7; // type:object size:0x15 scope:local data:string +lbl_1_data_AEC = .data:0x00000AEC; // type:object size:0x15 scope:local data:string +lbl_1_data_B01 = .data:0x00000B01; // type:object size:0x15 scope:local data:string +lbl_1_data_B16 = .data:0x00000B16; // type:object size:0x15 scope:local data:string +lbl_1_data_B2B = .data:0x00000B2B; // type:object size:0x14 scope:local data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +smSound3DPos = .bss:0x00000002; // type:object size:0x2 scope:local data:2byte +emiCompVal = .bss:0x00000004; // type:object size:0x2 scope:local data:2byte +emiCompDataNo = .bss:0x00000006; // type:object size:0x2 scope:local data:2byte +playerCfgOptionPos = .bss:0x00000008; // type:object size:0x2 scope:local data:2byte +playerCfgPlayerPos = .bss:0x0000000A; // type:object size:0x2 scope:local data:2byte +playerCfgSelF = .bss:0x0000000C; // type:object size:0x2 scope:local data:2byte +charSelProhibitF = .bss:0x0000000E; // type:object size:0x10 scope:local +playerDoneF = .bss:0x0000001E; // type:object size:0x8 scope:local +charModelID = .bss:0x00000026; // type:object size:0x10 scope:local +keyDStkAllDown = .bss:0x00000036; // type:object size:0x8 scope:local +keyDStkAll = .bss:0x0000003E; // type:object size:0x8 scope:local +btnDownAll = .bss:0x00000046; // type:object size:0x8 scope:local +keyDStkDown = .bss:0x0000004E; // type:object size:0x2 scope:local data:2byte +keyDStk = .bss:0x00000050; // type:object size:0x2 scope:local data:2byte +btnDown = .bss:0x00000052; // type:object size:0x2 scope:local data:2byte +smSelectPos = .bss:0x00000054; // type:object size:0x2 scope:local data:2byte +smPlayerCfg = .bss:0x00000056; // type:object size:0x28 scope:local data:2byte +outViewObj = .bss:0x00000080; // type:object size:0x4 scope:local data:4byte +smMainObj = .bss:0x00000084; // type:object size:0x4 scope:local data:4byte +smSelectPosBackup = .bss:0x00000088; // type:object size:0xE scope:local +smPage = .bss:0x00000096; // type:object size:0x2 scope:local data:2byte diff --git a/config/GMPP01_00/rels/staffDll/splits.txt b/config/GMPP01_00/rels/staffDll/splits.txt index 531cd645..c7a221dd 100644 --- a/config/GMPP01_00/rels/staffDll/splits.txt +++ b/config/GMPP01_00/rels/staffDll/splits.txt @@ -5,3 +5,12 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/staffDll/main.c: + .text start:0x000000A0 end:0x000012F8 + .rodata start:0x00000000 end:0x00000098 + .data start:0x00000000 end:0x00001328 + .bss start:0x00000000 end:0x0000004A diff --git a/config/GMPP01_00/rels/staffDll/symbols.txt b/config/GMPP01_00/rels/staffDll/symbols.txt index 15413e32..82c981fb 100644 --- a/config/GMPP01_00/rels/staffDll/symbols.txt +++ b/config/GMPP01_00/rels/staffDll/symbols.txt @@ -1,12 +1,12 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x218 -fn_1_2B8 = .text:0x000002B8; // type:function size:0x60 -fn_1_318 = .text:0x00000318; // type:function size:0x444 -fn_1_75C = .text:0x0000075C; // type:function size:0x3AC -fn_1_B08 = .text:0x00000B08; // type:function size:0x12C -fn_1_C34 = .text:0x00000C34; // type:function size:0x1C4 -fn_1_DF8 = .text:0x00000DF8; // type:function size:0x500 +ObjectSetup = .text:0x000000A0; // type:function size:0x218 +ExitProc = .text:0x000002B8; // type:function size:0x60 scope:local +CreateStaff = .text:0x00000318; // type:function size:0x444 scope:local +MoveStaff = .text:0x0000075C; // type:function size:0x3AC scope:local +HidePicture = .text:0x00000B08; // type:function size:0x12C scope:local +ShowPicture = .text:0x00000C34; // type:function size:0x1C4 scope:local +MainProc = .text:0x00000DF8; // type:function size:0x500 scope:local _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 @@ -43,13 +43,13 @@ lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1308 -lbl_1_data_1308 = .data:0x00001308; // type:object size:0xC data:float +staffData = .data:0x00000000; // type:object size:0x1308 scope:local +staffLogoPosTbl = .data:0x00001308; // type:object size:0xC scope:local data:float lbl_1_data_1314 = .data:0x00001314; // type:object size:0x14 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte -lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x6 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x34 data:2byte +multiViewObj = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte +currImg = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +staffSide = .bss:0x00000008; // type:object size:0x4 scope:local data:4byte +thpCoverGroup = .bss:0x0000000C; // type:object size:0x2 scope:local data:2byte +thpGroup = .bss:0x0000000E; // type:object size:0x2 scope:local data:2byte +staffLogoGroup = .bss:0x00000010; // type:object size:0x6 scope:local data:2byte +imgGroup = .bss:0x00000016; // type:object size:0x34 scope:local data:2byte diff --git a/config/GMPP01_00/rels/ztardll/splits.txt b/config/GMPP01_00/rels/ztardll/splits.txt index 531cd645..403b2201 100644 --- a/config/GMPP01_00/rels/ztardll/splits.txt +++ b/config/GMPP01_00/rels/ztardll/splits.txt @@ -5,3 +5,23 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/ztardll/main.c: + .text start:0x000000A0 end:0x0000789C + .rodata start:0x00000000 end:0x000001C0 + .data start:0x00000000 end:0x000000B0 + .bss start:0x00000000 end:0x00000070 + +REL/ztardll/font.c: + .text start:0x0000789C end:0x00007C40 + .rodata start:0x000001C0 end:0x000001C8 + .data start:0x000000B0 end:0x00000570 + +REL/ztardll/select.c: + .text start:0x00007C40 end:0x000123AC + .rodata start:0x000001C8 end:0x000002A0 + .data start:0x00000570 end:0x0000081C + .bss start:0x00000070 end:0x000002D8 diff --git a/config/GMPP01_00/rels/ztardll/symbols.txt b/config/GMPP01_00/rels/ztardll/symbols.txt index 2d23cebb..acceedbe 100644 --- a/config/GMPP01_00/rels/ztardll/symbols.txt +++ b/config/GMPP01_00/rels/ztardll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +ObjectSetup = .text:0x000000A0; // type:function size:0x384 fn_1_424 = .text:0x00000424; // type:function size:0x1350 fn_1_1774 = .text:0x00001774; // type:function size:0x57C fn_1_1CF0 = .text:0x00001CF0; // type:function size:0xB0 diff --git a/configure.py b/configure.py index d80ab1c0..a5be4728 100644 --- a/configure.py +++ b/configure.py @@ -856,8 +856,8 @@ config.libs = [ Rel( "m401Dll", # Manta Rings objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main_ex.c"), + Object(Matching, "REL/m401Dll/main.c"), + Object(Matching, "REL/m401Dll/main_ex.c"), }, ), Rel( @@ -1326,9 +1326,9 @@ config.libs = [ Rel( "modeltestDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest00.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest01.c"), + Object(Matching, "REL/modeltestDll/main.c"), + Object(Matching, "REL/modeltestDll/modeltest00.c"), + Object(Matching, "REL/modeltestDll/modeltest01.c"), }, ), Rel( @@ -1343,9 +1343,9 @@ config.libs = [ Rel( "mpexDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mpex.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/charsel.c"), + Object(Matching, "REL/mpexDll/main.c"), + Object(Matching, "REL/mpexDll/mpex.c"), + Object(Matching, "REL/mpexDll/charsel.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mgname.c"), }, ), @@ -1411,37 +1411,37 @@ config.libs = [ Rel( "present", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/init.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/present.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/common.c"), + Object(Matching, "REL/present/init.c"), + Object(Matching, "REL/present/camera.c"), + Object(Matching, "REL/present/present.c"), + Object(Matching, "REL/present/main.c"), + Object(Matching, "REL/present/common.c"), }, ), Rel( "resultDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/battle.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/datalist.c"), + Object(Matching, "REL/resultDll/main.c"), + Object(Matching, "REL/resultDll/battle.c"), + Object(Matching, "REL/resultDll/datalist.c"), }, ), Rel( "safDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/safDll/main.c"), + Object(Matching, "REL/safDll/main.c"), }, ), Rel( "selmenuDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/selmenuDll/main.c"), + Object(Matching, "REL/selmenuDll/main.c"), }, ), Rel( "staffDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/staffDll/main.c"), + Object(Matching, "REL/staffDll/main.c"), }, ), Rel( diff --git a/src/REL/m401Dll/main.c b/src/REL/m401Dll/main.c index cb02264e..3308961a 100644 --- a/src/REL/m401Dll/main.c +++ b/src/REL/m401Dll/main.c @@ -2769,7 +2769,11 @@ void fn_2_C130(omObjData *object) case 0: if (!MGSeqStatGet(lbl_2_bss_C0)) { object->work[0] = 1; + #if VERSION_NTSC HuAudFXStop(lbl_2_bss_11C); + #else + HuAudFXFadeOut(lbl_2_bss_11C, 500); + #endif WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); WipeColorSet(255, 255, 255); } diff --git a/src/REL/mpexDll/mgname.c b/src/REL/mpexDll/mgname.c index 91f3d5b9..e173ead7 100644 --- a/src/REL/mpexDll/mgname.c +++ b/src/REL/mpexDll/mgname.c @@ -13,7 +13,7 @@ #include "REL/mpexDll.h" -s32 lbl_1_data_788[0xC6] = { +static s32 fontDataTbl[0xC6] = { 0, 0, 0, @@ -229,7 +229,7 @@ s32 fn_1_1CB80(SeqWork *arg0, u8 *arg1, s16 arg2) s16 var_r20; s16 var_r19; - var_r27 = lbl_1_data_788; + var_r27 = fontDataTbl; for (var_r23 = 0; var_r23 < 0x10; var_r23++) { if (arg0->spr_grp[var_r23] == -1) { diff --git a/src/REL/mpexDll/mpex.c b/src/REL/mpexDll/mpex.c index bfb46be1..31a7359e 100644 --- a/src/REL/mpexDll/mpex.c +++ b/src/REL/mpexDll/mpex.c @@ -1606,7 +1606,7 @@ void fn_1_9988(s32 arg0) u32 var_r29; fn_1_1B834(); - if (((mgRecordExtra == 0) && (arg0 != 4)) || ((mgRecordExtra >= 0x8CA0) && (arg0 == 4))) { + if (((mgRecordExtra == 0) && (arg0 != 4)) || ((mgRecordExtra >= 600*REFRESH_RATE) && (arg0 == 4))) { HuAudFXPlay(0x4A); fn_1_25C4(lbl_1_bss_2D8[1].unk_00, 1, 3, 0xF, 1); fn_1_1BA78(arg0 + 0x330096, -1, -1); @@ -1615,23 +1615,23 @@ void fn_1_9988(s32 arg0) else { if ((arg0 == 4) || (arg0 == 8)) { var_r31 = mgRecordExtra; - var_r30 = var_r31 / 36000; - var_r31 -= var_r30 * 36000; - var_r29 = var_r31 / 3600; - var_r31 -= var_r29 * 3600; + var_r30 = var_r31 / (600*REFRESH_RATE); + var_r31 -= var_r30 * (600*REFRESH_RATE); + var_r29 = var_r31 / (60*REFRESH_RATE); + var_r31 -= var_r29 * (60*REFRESH_RATE); sprintf(lbl_1_bss_120, "%d", var_r29); fn_1_1BB4C((u32)&lbl_1_bss_120, 0); - var_r30 = var_r31 / 600; - var_r31 -= var_r30 * 600; - var_r29 = var_r31 / 60; - var_r31 -= var_r29 * 60; + var_r30 = var_r31 / (10*REFRESH_RATE); + var_r31 -= var_r30 * (10*REFRESH_RATE); + var_r29 = var_r31 / REFRESH_RATE; + var_r31 -= var_r29 * REFRESH_RATE; sprintf(lbl_1_bss_118, "%d%d", var_r30, var_r29); fn_1_1BB4C((u32)lbl_1_bss_118, 1); if (arg0 == 8) { - var_r31 = 1.6916666666666667 * (float)var_r31; + var_r31 = (101.5/REFRESH_RATE) * (float)var_r31; } else { - var_r31 = 1.6666666666666667 * (float)var_r31; + var_r31 = (100.0/REFRESH_RATE) * (float)var_r31; } var_r30 = var_r31 / 10; var_r31 -= var_r30 * 0xA; @@ -1856,12 +1856,21 @@ void fn_1_AD34(void) HuAudFXPlay(0x9E); fn_1_1B7D0(0xA5); lbl_1_bss_1B8[0].unk_04 = (MpexDllUnkFunc2)fn_1_A0E4; - if (((mgRecordExtra == 0) && (lbl_1_bss_1B0 != 4)) || ((mgRecordExtra >= 0x8CA0) && (lbl_1_bss_1B0 == 4))) { + #if VERSION_NTSC + if (((mgRecordExtra == 0) && (lbl_1_bss_1B0 != 4)) || ((mgRecordExtra >= 600*REFRESH_RATE) && (lbl_1_bss_1B0 == 4))) { fn_1_25C4(lbl_1_bss_1B8[0].unk_00, 1, 5, 0xF, 0); } else { fn_1_25C4(lbl_1_bss_1B8[0].unk_00, 1, 4, 0xF, 0); } + #else + if (((mgRecordExtra == 0) && (lbl_1_bss_1B0 != 4)) || ((mgRecordExtra >= 500*REFRESH_RATE) && (lbl_1_bss_1B0 == 4))) { + fn_1_25C4(lbl_1_bss_1B8[0].unk_00, 1, 5, 0xF, 0); + } + else { + fn_1_25C4(lbl_1_bss_1B8[0].unk_00, 1, 4, 0xF, 0); + } + #endif fn_1_BC18(); fn_1_1B7D0(1); HuAudFXPlay(0x9F); @@ -2232,6 +2241,7 @@ void fn_1_C860(void) s32 fn_1_C898(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { + #if VERSION_NTSC s32 sp88[5][9] = { { 0x64, 0xC8, 0x12C, 0x136, 0x140, 0x14A, 0x154, 0x15E, 0x168 }, { 0x05, 0x0A, 0x0F, 0x14, 0x19, 0x1E, 0x23, 0x28, 0x32 }, @@ -2244,6 +2254,21 @@ s32 fn_1_C898(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { 0x4650, 0x3840, 0x2A30, 0x1C20, 0x1770, 0x12C0, 0x0E10, 0, 0 }, { 0x4650, 0x3840, 0x2A30, 0x2328, 0x1C20, 0x19C8, 0x1770, 0x1644, 0x1518 }, }; + #else + s32 sp88[5][9] = { + { 0x32, 0x64, 0xC8, 0x12C, 0x136, 0x140, 0x14A, 0x154, 0x15E }, + { 0x05, 0x0A, 0x0F, 0x14, 0x19, 0x1E, 0x23, 0x28, 0x32 }, + { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09 }, + { 60*REFRESH_RATE, 120*REFRESH_RATE, 180*REFRESH_RATE, 240*REFRESH_RATE, 300*REFRESH_RATE, + 360*REFRESH_RATE, 420*REFRESH_RATE, 480*REFRESH_RATE, 540*REFRESH_RATE }, + { 0x0A, 0xF, 0x14, 0x19, 0x1E, 0x23, 0x28, 0x2B, 0x2D }, + }; + s32 sp1C[3][9] = { + { 300*REFRESH_RATE, 240*REFRESH_RATE, 180*REFRESH_RATE, 120*REFRESH_RATE, 60*REFRESH_RATE, 0, 0, 0, 0 }, + { 300*REFRESH_RATE, 240*REFRESH_RATE, 180*REFRESH_RATE, 120*REFRESH_RATE, 110*REFRESH_RATE, 100*REFRESH_RATE, 90*REFRESH_RATE, 0, 0 }, + { 300*REFRESH_RATE, 240*REFRESH_RATE, 180*REFRESH_RATE, 170*REFRESH_RATE, 124*REFRESH_RATE, 150*REFRESH_RATE, 140*REFRESH_RATE, 130*REFRESH_RATE, 120*REFRESH_RATE }, + }; + #endif s32 sp10[3]; s32 var_r31; s32 var_r30; @@ -2324,6 +2349,7 @@ void fn_1_CA98(s32 arg0, u32 arg1) case 3: OSReport("#################### HI-SCORE(%d) : %d\n", arg1, GWGameStat.mg_record[sp8[arg1]]); var_r31 = GWGameStat.mg_record[sp8[arg1]]; + #if VERSION_NTSC if (var_r31 < 0xA) { sprintf(lbl_1_bss_FC, " %d", var_r31); } @@ -2333,28 +2359,31 @@ void fn_1_CA98(s32 arg0, u32 arg1) else { sprintf(lbl_1_bss_FC, "%d", var_r31); } + #else + sprintf(lbl_1_bss_FC, " %d", var_r31); + #endif HuWinInsertMesSet(arg0, (u32)lbl_1_bss_FC, 0); break; case 8: OSReport("#################### HI-SCORE(%d) : %d\n", arg1, GWGameStat.mg_record[sp8[arg1]]); var_r31 = GWGameStat.mg_record[sp8[arg1]]; - var_r29 = var_r31 / 36000; - var_r31 -= var_r29 * 36000; - var_r28 = var_r31 / 3600; - var_r31 -= var_r28 * 3600; + var_r29 = var_r31 / (600 *REFRESH_RATE); + var_r31 -= var_r29 * (600 *REFRESH_RATE); + var_r28 = var_r31 / (60 *REFRESH_RATE); + var_r31 -= var_r28 * (60 *REFRESH_RATE); sprintf(lbl_1_bss_F4, " %d", var_r28); HuWinInsertMesSet(arg0, (u32)lbl_1_bss_F4, 0); - var_r29 = var_r31 / 600; - var_r31 -= var_r29 * 600; - var_r28 = var_r31 / 60; - var_r31 -= var_r28 * 60; + var_r29 = var_r31 / (10 *REFRESH_RATE); + var_r31 -= var_r29 * (10 *REFRESH_RATE); + var_r28 = var_r31 / REFRESH_RATE; + var_r31 -= var_r28 * REFRESH_RATE; sprintf(lbl_1_bss_EC, "%d%d", var_r29, var_r28); HuWinInsertMesSet(arg0, (u32)lbl_1_bss_EC, 1); - var_r31 = 1.6916666666666667 * (float)var_r31; + var_r31 = (101.5/REFRESH_RATE) * (float)var_r31; var_r29 = var_r31 / 10; var_r31 -= var_r29 * 0xA; var_r28 = var_r31; - if (GWGameStat.mg_record[sp8[arg1]] >= 0x8C9F) { + if (GWGameStat.mg_record[sp8[arg1]] >= ((600*REFRESH_RATE)-1)) { sprintf(lbl_1_bss_E4, "99"); } else { @@ -2678,24 +2707,24 @@ void fn_1_E568(void) HuSprPosSet(var_r29, 0x0D + var_r28 + (var_r31 * 7), (var_r28 * 0x14) + 0x512, (var_r31 * 0x38) + 0xBA); } var_r30 = GWGameStat.mg_record[var_r31 + 6]; - var_r27 = var_r30 / 36000; - var_r30 -= var_r27 * 36000; - var_r26 = var_r30 / 3600; - var_r30 -= var_r26 * 3600; + var_r27 = var_r30 / (600*REFRESH_RATE); + var_r30 -= var_r27 * (600*REFRESH_RATE); + var_r26 = var_r30 / (60*REFRESH_RATE); + var_r30 -= var_r26 * (60*REFRESH_RATE); HuSprBankSet(var_r29, (var_r31 * 7) + 0xD, var_r26); HuSprBankSet(var_r29, (var_r31 * 7) + 0xE, 0xA); - var_r27 = var_r30 / 600; - var_r30 -= var_r27 * 600; - var_r26 = var_r30 / 60; - var_r30 -= var_r26 * 60; + var_r27 = var_r30 / (10*REFRESH_RATE); + var_r30 -= var_r27 * (10*REFRESH_RATE); + var_r26 = var_r30 / REFRESH_RATE; + var_r30 -= var_r26 * REFRESH_RATE; HuSprBankSet(var_r29, (var_r31 * 7) + 0xF, var_r27); HuSprBankSet(var_r29, (var_r31 * 7) + 0x10, var_r26); HuSprBankSet(var_r29, (var_r31 * 7) + 0x11, 0xB); - var_r30 = 1.6666666666666667 * (float)var_r30; + var_r30 = (100.0/REFRESH_RATE) * (float)var_r30; var_r27 = var_r30 / 10; var_r30 -= var_r27 * 0xA; var_r26 = var_r30; - if (GWGameStat.mg_record[var_r31 + 6] == 0x8C9F) { + if (GWGameStat.mg_record[var_r31 + 6] == ((600*REFRESH_RATE)-1)) { HuSprBankSet(var_r29, (var_r31 * 7) + 0x12, 9); HuSprBankSet(var_r29, (var_r31 * 7) + 0x13, 9); } @@ -3426,26 +3455,38 @@ void fn_1_121E8(void) else if (GWGameStat.mg_record[9] >= 0x63) { GWGameStat.mg_record[9] = 0x63; } + #if VERSION_NTSC OSReport("HIScore 451A(0-35999):%d\n", GWGameStat.mg_record[6]); + #else + OSReport("HIScore 451A(0-29999):%d\n", GWGameStat.mg_record[6]); + #endif if (GWGameStat.mg_record[6] == 0) { GWGameStat.mg_record[6] = 0; } - else if (GWGameStat.mg_record[6] >= 0x8C9F) { - GWGameStat.mg_record[6] = 0x8C9F; + else if (GWGameStat.mg_record[6] >= ((REFRESH_RATE*600)-1)) { + GWGameStat.mg_record[6] = ((REFRESH_RATE*600)-1); } + #if VERSION_NTSC OSReport("HIScore 451B(0-35999):%d\n", GWGameStat.mg_record[7]); + #else + OSReport("HIScore 451B(0-29999):%d\n", GWGameStat.mg_record[7]); + #endif if (GWGameStat.mg_record[7] == 0) { GWGameStat.mg_record[7] = 0; } - else if (GWGameStat.mg_record[7] >= 0x8C9F) { - GWGameStat.mg_record[7] = 0x8C9F; + else if (GWGameStat.mg_record[7] >= ((REFRESH_RATE*600)-1)) { + GWGameStat.mg_record[7] = ((REFRESH_RATE*600)-1); } + #if VERSION_NTSC OSReport("HIScore 451C(0-35999):%d\n", GWGameStat.mg_record[8]); + #else + OSReport("HIScore 451C(0-29999):%d\n", GWGameStat.mg_record[8]); + #endif if (GWGameStat.mg_record[8] == 0) { GWGameStat.mg_record[8] = 0; } - else if (GWGameStat.mg_record[8] >= 0x8C9F) { - GWGameStat.mg_record[8] = 0x8C9F; + else if (GWGameStat.mg_record[8] >= ((REFRESH_RATE*600)-1)) { + GWGameStat.mg_record[8] = ((REFRESH_RATE*600)-1); } OSReport("HIScore 442(0-999):%d\n", GWGameStat.mg_record[4]); if (GWGameStat.mg_record[4] == 0) { @@ -3468,12 +3509,16 @@ void fn_1_121E8(void) else if (GWGameStat.mg_record[0xC] >= 0x63) { GWGameStat.mg_record[0xC] = 0x63; } - OSReport("HIScore 461(0-35999):%d\n", GWGameStat.mg_record[0xD]); + #if VERSION_NTSC + OSReport("HIScore 461(0-35999):%d\n", GWGameStat.mg_record[13]); + #else + OSReport("HIScore 461(0-29999):%d\n", GWGameStat.mg_record[13]); + #endif if (GWGameStat.mg_record[0xD] == 0) { GWGameStat.mg_record[0xD] = 0; } - else if (GWGameStat.mg_record[0xD] >= 0x8C9F) { - GWGameStat.mg_record[0xD] = 0x8C9F; + else if (GWGameStat.mg_record[0xD] >= ((REFRESH_RATE*600)-1)) { + GWGameStat.mg_record[0xD] = ((REFRESH_RATE*600)-1); } OSReport("HIScore 462(0-99):%d\n", GWGameStat.mg_record[0xE]); if (GWGameStat.mg_record[0xE] == 0) { diff --git a/src/REL/safDll/main.c b/src/REL/safDll/main.c index dfb34d70..8c2447d2 100644 --- a/src/REL/safDll/main.c +++ b/src/REL/safDll/main.c @@ -6,7 +6,9 @@ #include "math.h" s32 lbl_1_data_0 = 100; +#if VERSION_NTSC s32 lbl_1_bss_0[192]; +#endif void fn_1_0(void) { diff --git a/src/REL/staffDll/main.c b/src/REL/staffDll/main.c index 0580c6a1..8f880eb9 100644 --- a/src/REL/staffDll/main.c +++ b/src/REL/staffDll/main.c @@ -178,9 +178,32 @@ static StaffData staffData[] = { { 0x0035005F, 2, 0.0f, 0, 0, 0 }, { 0x00350060, 2, 0.0f, 0, 0, 0 }, { -3, 0, 48.0f, 0, 0, 0 }, + #if VERSION_PAL + { 0x00340026, 0, 0.0f, 0, 0, 0 }, + { -3, 0, 24.0f, 0, 0, 0 }, + { 0x00340027, 1, 0.0f, 0, 0, 0 }, + { -3, 0, 24.0f, 0, 0, 0 }, + { 0x00340028, 1, 0.0f, 0, 0, 0 }, + { 0x00350061, 2, 0.0f, 0, 0, 0 }, + { -3, 0, 24.0f, 0, 0, 0 }, + { 0x00340029, 1, 0.0f, 0, 0, 0 }, + { 0x0034002A, 1, 0.0f, 0, 0, 0 }, + { 0x00350062, 2, 0.0f, 0, 0, 0 }, + { 0x0034002B, 1, 0.0f, 0, 0, 0 }, + { 0x00350063, 2, 0.0f, 0, 0, 0 }, + { 0x0034002C, 1, 0.0f, 0, 0, 0 }, + { 0x00350064, 2, 0.0f, 0, 0, 0 }, + { 0x0034002D, 1, 0.0f, 0, 0, 0 }, + { 0x00350065, 2, 0.0f, 0, 0, 0 }, + { -3, 0, 24.0f, 0, 0, 0 }, + { 0x0034002E, 1, 0.0f, 0, 0, 0 }, + { -3, 0, 72.0f, 0, 0, 0 }, + #endif { 0x00340016, 0, 0.0f, 0, 0, 0 }, { 0x00350044, 2, 0.0f, 0, 0, 0 }, + #if VERSION_NTSC { 0x00350045, 2, 0.0f, 0, 0, 0 }, + #endif { -3, 0, 24.0f, 0, 0, 0 }, { 0x00350046, 2, 0.0f, 0, 0, 0 }, { 0x00350047, 2, 0.0f, 0, 0, 0 }, @@ -216,7 +239,11 @@ static StaffData staffData[] = { { -1, 0, 0.0f, 0, 0, 0 }, }; +#if VERSION_NTSC static float staffLogoPosTbl[] = { 460.0f, 293.0f, 293.0f }; +#else +static float staffLogoPosTbl[] = { 460.0f, 290.0f, 293.0f }; +#endif static void MainProc(void); static void CreateStaff(void); @@ -305,7 +332,36 @@ static void CreateStaff(void) } for (var_r31 = 0; var_r31 < 3; var_r31++) { + int languageNo; + #if VERSION_NTSC var_r29 = HuDataSelHeapReadNum(var_r31 + DATA_MAKE_NUM(DATADIR_STAFF, 0x1A), MEMORY_DEFAULT_NUM, HEAP_DATA); + #else + if(var_r31 == 2) { + switch(GWGameStat.language) { + case 1: + languageNo = 0; + break; + + case 2: + languageNo = 1; + break; + + case 4: + languageNo = 3; + break; + + default: + languageNo = 2; + break; + + } + + var_r29 = HuDataSelHeapReadNum(var_r31 + DATA_MAKE_NUM(DATADIR_STAFF, 0x1A) + languageNo, MEMORY_DEFAULT_NUM, HEAP_DATA); + } else { + var_r29 = HuDataSelHeapReadNum(var_r31 + DATA_MAKE_NUM(DATADIR_STAFF, 0x1A), MEMORY_DEFAULT_NUM, HEAP_DATA); + } + #endif + var_r28 = HuSprAnimRead(var_r29); var_r30 = HuSprCreate(var_r28, 256, 0); staffLogoGroup[var_r31] = HuSprGrpCreate(1); @@ -319,7 +375,11 @@ static void CreateStaff(void) HuSprGrpPosSet(thpGroup, 280.0f, 200.0f); HuSprAttrSet(thpGroup, 0, HUSPR_ATTR_DISPOFF); HuTHPStop(); + #if VERSION_NTSC var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_STAFF, 0x1D), MEMORY_DEFAULT_NUM, HEAP_DATA); + #else + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_STAFF, 0x20), MEMORY_DEFAULT_NUM, HEAP_DATA); + #endif var_r28 = HuSprAnimRead(var_r29); var_r30 = HuSprCreate(var_r28, 16385, 0); thpCoverGroup = HuSprGrpCreate(1); @@ -462,12 +522,19 @@ static void ShowPicture(void) HuSprTPLvlSet(imgGroup[currImg], 0, 1.0f); while (TRUE) { + #if VERSION_NTSC if (currImg >= 24) { HuPrcSleep(430); - } - else { + } else { HuPrcSleep(550); } + #else + if (currImg >= 24) { + HuPrcSleep(480); + } else { + HuPrcSleep(600); + } + #endif if (currImg >= 25) { break; } @@ -548,7 +615,11 @@ static void MainProc(void) HuPrcVSleep(); } HuSprGrpPosSet(staffLogoGroup[1], var_f29, 400.0f); + #if VERSION_NTSC HuPrcSleep(240); + #else + HuPrcSleep(60); + #endif HuSprAttrReset(thpGroup, 0, HUSPR_ATTR_DISPOFF); HuSprAttrReset(thpCoverGroup, 0, HUSPR_ATTR_DISPOFF); HuTHPRestart(); @@ -579,15 +650,20 @@ static void MainProc(void) HuSprAttrSet(staffLogoGroup[1], 0, HUSPR_ATTR_DISPOFF); HuPrcSleep(120); HuSprAttrReset(staffLogoGroup[2], 0, HUSPR_ATTR_DISPOFF); + #if VERSION_NTSC HuSprGrpPosSet(staffLogoGroup[2], 280.0f, 240.0f); - + #else + HuSprGrpPosSet(staffLogoGroup[2], 275.0f, 240.0f); + #endif for (var_r31 = 0, var_f31 = 0.0f; var_r31 < 30; var_r31++, var_f31 += 1.0f / 30.0f) { HuSprTPLvlSet(staffLogoGroup[2], 0, var_f31); HuPrcVSleep(); } - + #if VERSION_NTSC HuPrcSleep(600); - + #else + HuPrcSleep(480); + #endif while (TRUE) { for (var_r31 = 0; var_r31 < 4; var_r31++) { if (HuPadBtn[var_r31] & PAD_BUTTON_START) { From 68a6774f9b746c5f21da3fb9fc78157ff7b03706 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 18 Nov 2024 00:50:02 +0100 Subject: [PATCH 019/178] Ported m440Dll --- config/GMPE01_00/rels/m440Dll/symbols.txt | 12 +- config/GMPP01_00/rels/m440Dll/splits.txt | 15 + config/GMPP01_00/rels/m440Dll/symbols.txt | 478 +++++++++++----------- config/GMPP01_00/rels/m451Dll/symbols.txt | 194 ++++----- configure.py | 4 +- include/REL/m440Dll.h | 5 + src/REL/m440Dll/main.c | 47 +-- src/REL/m440Dll/object.c | 66 +-- 8 files changed, 427 insertions(+), 394 deletions(-) diff --git a/config/GMPE01_00/rels/m440Dll/symbols.txt b/config/GMPE01_00/rels/m440Dll/symbols.txt index 8cff0e70..47f1c944 100644 --- a/config/GMPE01_00/rels/m440Dll/symbols.txt +++ b/config/GMPE01_00/rels/m440Dll/symbols.txt @@ -238,13 +238,13 @@ lbl_1_data_60 = .data:0x00000060; // type:object size:0xC lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC data:float lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float lbl_1_data_CC = .data:0x000000CC; // type:object size:0x18 scope:local -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x2 data:2byte -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x2 data:2byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2 data:2byte -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x4 data:2byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:2byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x4 data:2byte +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x4 data:2byte lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x10 -lbl_1_data_104 = .data:0x00000104; // type:object size:0x2 data:2byte -lbl_1_data_108 = .data:0x00000108; // type:object size:0x2 data:2byte +lbl_1_data_104 = .data:0x00000104; // type:object size:0x4 data:2byte +lbl_1_data_108 = .data:0x00000108; // type:object size:0x4 data:2byte lbl_1_data_10C = .data:0x0000010C; // type:object size:0x12 lbl_1_data_11E = .data:0x0000011E; // type:object size:0x13 scope:local data:string lbl_1_data_131 = .data:0x00000131; // type:object size:0x17 scope:local data:string diff --git a/config/GMPP01_00/rels/m440Dll/splits.txt b/config/GMPP01_00/rels/m440Dll/splits.txt index 531cd645..a5cd08ba 100644 --- a/config/GMPP01_00/rels/m440Dll/splits.txt +++ b/config/GMPP01_00/rels/m440Dll/splits.txt @@ -5,3 +5,18 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m440Dll/main.c: + .text start:0x000000A0 end:0x0000AE04 + .rodata start:0x00000000 end:0x00000190 + .data start:0x00000000 end:0x000001D8 + .bss start:0x00000000 end:0x00000070 + +REL/m440Dll/object.c: + .text start:0x0000AE04 end:0x0000F4F0 + .rodata start:0x00000190 end:0x000002B8 + .data start:0x000001D8 end:0x00000254 + .bss start:0x00000070 end:0x000000D0 diff --git a/config/GMPP01_00/rels/m440Dll/symbols.txt b/config/GMPP01_00/rels/m440Dll/symbols.txt index 2f3f212b..c1d0231e 100644 --- a/config/GMPP01_00/rels/m440Dll/symbols.txt +++ b/config/GMPP01_00/rels/m440Dll/symbols.txt @@ -1,237 +1,238 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x324 +ObjectSetup = .text:0x000000A0; // type:function size:0x324 fn_1_3C4 = .text:0x000003C4; // type:function size:0x70 fn_1_434 = .text:0x00000434; // type:function size:0x70 fn_1_4A4 = .text:0x000004A4; // type:function size:0x224 fn_1_6C8 = .text:0x000006C8; // type:function size:0x228 fn_1_8F0 = .text:0x000008F0; // type:function size:0x1F0 fn_1_AE0 = .text:0x00000AE0; // type:function size:0x330 -fn_1_E10 = .text:0x00000E10; // type:function size:0x324 -fn_1_1134 = .text:0x00001134; // type:function size:0x5A0 -fn_1_16D4 = .text:0x000016D4; // type:function size:0x30 -fn_1_1704 = .text:0x00001704; // type:function size:0x60 -fn_1_1764 = .text:0x00001764; // type:function size:0x64 -fn_1_17C8 = .text:0x000017C8; // type:function size:0x28 -fn_1_17F0 = .text:0x000017F0; // type:function size:0x28 -fn_1_1818 = .text:0x00001818; // type:function size:0x74 -fn_1_188C = .text:0x0000188C; // type:function size:0x50 -fn_1_18DC = .text:0x000018DC; // type:function size:0x74 -fn_1_1950 = .text:0x00001950; // type:function size:0x5C -fn_1_19AC = .text:0x000019AC; // type:function size:0x2FC -fn_1_1CA8 = .text:0x00001CA8; // type:function size:0xA8 -fn_1_1D50 = .text:0x00001D50; // type:function size:0x4EC -fn_1_223C = .text:0x0000223C; // type:function size:0x1A4 -fn_1_23E0 = .text:0x000023E0; // type:function size:0x44 -fn_1_2424 = .text:0x00002424; // type:function size:0x48 -fn_1_246C = .text:0x0000246C; // type:function size:0x604 -fn_1_2A70 = .text:0x00002A70; // type:function size:0x40 -fn_1_2AB0 = .text:0x00002AB0; // type:function size:0x50 -fn_1_2B00 = .text:0x00002B00; // type:function size:0x1A4 -fn_1_2CA4 = .text:0x00002CA4; // type:function size:0x80 -fn_1_2D24 = .text:0x00002D24; // type:function size:0x6AC -fn_1_33D0 = .text:0x000033D0; // type:function size:0xA04 -fn_1_3DD4 = .text:0x00003DD4; // type:function size:0x780 -fn_1_4554 = .text:0x00004554; // type:function size:0x64 -fn_1_45B8 = .text:0x000045B8; // type:function size:0xA4 -fn_1_465C = .text:0x0000465C; // type:function size:0x80 -fn_1_46DC = .text:0x000046DC; // type:function size:0x340 -fn_1_4A1C = .text:0x00004A1C; // type:function size:0x124 -fn_1_4B40 = .text:0x00004B40; // type:function size:0x2BC -fn_1_4DFC = .text:0x00004DFC; // type:function size:0x2C -fn_1_4E28 = .text:0x00004E28; // type:function size:0x28 -fn_1_4E50 = .text:0x00004E50; // type:function size:0x54 -fn_1_4EA4 = .text:0x00004EA4; // type:function size:0x44 -fn_1_4EE8 = .text:0x00004EE8; // type:function size:0x48 -fn_1_4F30 = .text:0x00004F30; // type:function size:0xDC -fn_1_500C = .text:0x0000500C; // type:function size:0x7A4 -fn_1_57B0 = .text:0x000057B0; // type:function size:0x478 -fn_1_5C28 = .text:0x00005C28; // type:function size:0x928 -fn_1_6550 = .text:0x00006550; // type:function size:0x604 -fn_1_6B54 = .text:0x00006B54; // type:function size:0x6A4 -fn_1_71F8 = .text:0x000071F8; // type:function size:0x738 -fn_1_7930 = .text:0x00007930; // type:function size:0x42C -fn_1_7D5C = .text:0x00007D5C; // type:function size:0x30C -fn_1_8068 = .text:0x00008068; // type:function size:0x404 -fn_1_846C = .text:0x0000846C; // type:function size:0x654 -fn_1_8AC0 = .text:0x00008AC0; // type:function size:0x258 -fn_1_8D18 = .text:0x00008D18; // type:function size:0x488 -fn_1_91A0 = .text:0x000091A0; // type:function size:0xD8 -fn_1_9278 = .text:0x00009278; // type:function size:0xC8 -fn_1_9340 = .text:0x00009340; // type:function size:0x7C -fn_1_93BC = .text:0x000093BC; // type:function size:0x10 -fn_1_93CC = .text:0x000093CC; // type:function size:0x5C -fn_1_9428 = .text:0x00009428; // type:function size:0x140 -fn_1_9568 = .text:0x00009568; // type:function size:0x544 -fn_1_9AAC = .text:0x00009AAC; // type:function size:0x60 -fn_1_9B0C = .text:0x00009B0C; // type:function size:0x2C -fn_1_9B38 = .text:0x00009B38; // type:function size:0x58 -fn_1_9B90 = .text:0x00009B90; // type:function size:0x38 -fn_1_9BC8 = .text:0x00009BC8; // type:function size:0x38 -fn_1_9C00 = .text:0x00009C00; // type:function size:0x5B4 -fn_1_A1B4 = .text:0x0000A1B4; // type:function size:0xCC -fn_1_A280 = .text:0x0000A280; // type:function size:0xA4 -fn_1_A324 = .text:0x0000A324; // type:function size:0x68 -fn_1_A38C = .text:0x0000A38C; // type:function size:0x704 -fn_1_AA90 = .text:0x0000AA90; // type:function size:0x374 -fn_1_AE04 = .text:0x0000AE04; // type:function size:0xDC -fn_1_AEE0 = .text:0x0000AEE0; // type:function size:0x298 -fn_1_B178 = .text:0x0000B178; // type:function size:0x4 -fn_1_B17C = .text:0x0000B17C; // type:function size:0x224 -fn_1_B3A0 = .text:0x0000B3A0; // type:function size:0x4E0 -fn_1_B880 = .text:0x0000B880; // type:function size:0x950 -fn_1_C1D0 = .text:0x0000C1D0; // type:function size:0x770 -fn_1_C940 = .text:0x0000C940; // type:function size:0x668 -fn_1_CFA8 = .text:0x0000CFA8; // type:function size:0x2A0 -fn_1_D248 = .text:0x0000D248; // type:function size:0x100 -fn_1_D348 = .text:0x0000D348; // type:function size:0x4AC -fn_1_D7F4 = .text:0x0000D7F4; // type:function size:0x83C -fn_1_E030 = .text:0x0000E030; // type:function size:0x858 -fn_1_E888 = .text:0x0000E888; // type:function size:0x4DC -fn_1_ED64 = .text:0x0000ED64; // type:function size:0xF0 -fn_1_EE54 = .text:0x0000EE54; // type:function size:0xD8 -fn_1_EF2C = .text:0x0000EF2C; // type:function size:0x1AC -fn_1_F0D8 = .text:0x0000F0D8; // type:function size:0x6C -fn_1_F144 = .text:0x0000F144; // type:function size:0xC0 -fn_1_F204 = .text:0x0000F204; // type:function size:0x298 -fn_1_F49C = .text:0x0000F49C; // type:function size:0x14 -fn_1_F4B0 = .text:0x0000F4B0; // type:function size:0x28 -fn_1_F4D8 = .text:0x0000F4D8; // type:function size:0x18 +fn_1_E14 = .text:0x00000E10; // type:function size:0x324 +fn_1_1138 = .text:0x00001134; // type:function size:0x5A0 +fn_1_16D8 = .text:0x000016D4; // type:function size:0x30 +fn_1_1708 = .text:0x00001704; // type:function size:0x60 +fn_1_1768 = .text:0x00001764; // type:function size:0x64 +fn_1_17CC = .text:0x000017C8; // type:function size:0x28 +fn_1_17F4 = .text:0x000017F0; // type:function size:0x28 +fn_1_181C = .text:0x00001818; // type:function size:0x74 +fn_1_1890 = .text:0x0000188C; // type:function size:0x50 +fn_1_18E0 = .text:0x000018DC; // type:function size:0x74 +fn_1_1954 = .text:0x00001950; // type:function size:0x5C +fn_1_19B0 = .text:0x000019AC; // type:function size:0x2FC +fn_1_1CAC = .text:0x00001CA8; // type:function size:0xA8 +fn_1_1D54 = .text:0x00001D50; // type:function size:0x4EC +fn_1_2240 = .text:0x0000223C; // type:function size:0x1A4 +fn_1_23E4 = .text:0x000023E0; // type:function size:0x44 +fn_1_2428 = .text:0x00002424; // type:function size:0x48 +fn_1_2470 = .text:0x0000246C; // type:function size:0x604 +fn_1_2A74 = .text:0x00002A70; // type:function size:0x40 +fn_1_2AB4 = .text:0x00002AB0; // type:function size:0x50 +fn_1_2B04 = .text:0x00002B00; // type:function size:0x1A4 +fn_1_2CA8 = .text:0x00002CA4; // type:function size:0x80 +fn_1_2D28 = .text:0x00002D24; // type:function size:0x6AC +fn_1_33D4 = .text:0x000033D0; // type:function size:0xA04 +fn_1_3DD8 = .text:0x00003DD4; // type:function size:0x780 +fn_1_4558 = .text:0x00004554; // type:function size:0x64 +fn_1_45BC = .text:0x000045B8; // type:function size:0xA4 +fn_1_4660 = .text:0x0000465C; // type:function size:0x80 +fn_1_46E0 = .text:0x000046DC; // type:function size:0x340 +fn_1_4A20 = .text:0x00004A1C; // type:function size:0x124 +fn_1_4B44 = .text:0x00004B40; // type:function size:0x2BC +fn_1_4E00 = .text:0x00004DFC; // type:function size:0x2C +fn_1_4E2C = .text:0x00004E28; // type:function size:0x28 +fn_1_4E54 = .text:0x00004E50; // type:function size:0x54 +fn_1_4EA8 = .text:0x00004EA4; // type:function size:0x44 +fn_1_4EEC = .text:0x00004EE8; // type:function size:0x48 +fn_1_4F34 = .text:0x00004F30; // type:function size:0xDC +fn_1_5010 = .text:0x0000500C; // type:function size:0x7A4 +fn_1_57B4 = .text:0x000057B0; // type:function size:0x478 +fn_1_5C2C = .text:0x00005C28; // type:function size:0x928 +fn_1_6554 = .text:0x00006550; // type:function size:0x604 +fn_1_6B58 = .text:0x00006B54; // type:function size:0x6A4 +fn_1_71FC = .text:0x000071F8; // type:function size:0x738 +fn_1_7934 = .text:0x00007930; // type:function size:0x42C +fn_1_7D60 = .text:0x00007D5C; // type:function size:0x30C +fn_1_806C = .text:0x00008068; // type:function size:0x404 +fn_1_8470 = .text:0x0000846C; // type:function size:0x654 +fn_1_8AC4 = .text:0x00008AC0; // type:function size:0x258 +fn_1_8D1C = .text:0x00008D18; // type:function size:0x488 +fn_1_91A4 = .text:0x000091A0; // type:function size:0xD8 +fn_1_927C = .text:0x00009278; // type:function size:0xC8 +fn_1_9344 = .text:0x00009340; // type:function size:0x7C +fn_1_93C0 = .text:0x000093BC; // type:function size:0x10 +fn_1_93D0 = .text:0x000093CC; // type:function size:0x5C +fn_1_942C = .text:0x00009428; // type:function size:0x140 +fn_1_956C = .text:0x00009568; // type:function size:0x544 +fn_1_9AB0 = .text:0x00009AAC; // type:function size:0x60 +fn_1_9B10 = .text:0x00009B0C; // type:function size:0x2C +fn_1_9B3C = .text:0x00009B38; // type:function size:0x58 +fn_1_9B94 = .text:0x00009B90; // type:function size:0x38 +fn_1_9BCC = .text:0x00009BC8; // type:function size:0x38 +fn_1_9C04 = .text:0x00009C00; // type:function size:0x5B4 +fn_1_A1B8 = .text:0x0000A1B4; // type:function size:0xCC +fn_1_A284 = .text:0x0000A280; // type:function size:0xA4 +fn_1_A328 = .text:0x0000A324; // type:function size:0x68 +fn_1_A390 = .text:0x0000A38C; // type:function size:0x704 +fn_1_AA94 = .text:0x0000AA90; // type:function size:0x374 +fn_1_AE08 = .text:0x0000AE04; // type:function size:0xDC +fn_1_AEE4 = .text:0x0000AEE0; // type:function size:0x298 +fn_1_B17C = .text:0x0000B178; // type:function size:0x4 +fn_1_B180 = .text:0x0000B17C; // type:function size:0x224 +fn_1_B3A4 = .text:0x0000B3A0; // type:function size:0x4E0 +fn_1_B884 = .text:0x0000B880; // type:function size:0x950 +fn_1_C1D4 = .text:0x0000C1D0; // type:function size:0x770 +fn_1_C944 = .text:0x0000C940; // type:function size:0x668 +fn_1_CFAC = .text:0x0000CFA8; // type:function size:0x2A0 +fn_1_D24C = .text:0x0000D248; // type:function size:0x100 +fn_1_D34C = .text:0x0000D348; // type:function size:0x4AC +fn_1_D7F8 = .text:0x0000D7F4; // type:function size:0x83C +fn_1_E034 = .text:0x0000E030; // type:function size:0x858 +fn_1_E8AC = .text:0x0000E888; // type:function size:0x4DC +fn_1_ED88 = .text:0x0000ED64; // type:function size:0xF0 +fn_1_EE78 = .text:0x0000EE54; // type:function size:0xD8 +fn_1_EF50 = .text:0x0000EF2C; // type:function size:0x1AC +fn_1_F0FC = .text:0x0000F0D8; // type:function size:0x6C +fn_1_F168 = .text:0x0000F144; // type:function size:0xC0 +fn_1_F228 = .text:0x0000F204; // type:function size:0x298 +fn_1_F4C0 = .text:0x0000F49C; // type:function size:0x14 +fn_1_F4D4 = .text:0x0000F4B0; // type:function size:0x28 +fn_1_F4FC = .text:0x0000F4D8; // type:function size:0x18 _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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -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:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0xC data:2byte -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:2byte -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 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_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:byte +lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // 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_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x14 lbl_1_data_14 = .data:0x00000014; // type:object size:0xC lbl_1_data_20 = .data:0x00000020; // type:object size:0xC data:float @@ -242,22 +243,23 @@ lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float lbl_1_data_60 = .data:0x00000060; // type:object size:0xC lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC data:float lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float -lbl_1_data_CC = .data:0x000000CC; // type:object size:0x18 -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x2 data:2byte -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x2 data:2byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2 data:2byte -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte +lbl_1_data_CC = .data:0x000000CC; // type:object size:0x18 scope:local +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x4 data:2byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:2byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x4 data:2byte +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x4 data:2byte lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x10 -lbl_1_data_104 = .data:0x00000104; // type:object size:0x2 data:2byte -lbl_1_data_108 = .data:0x00000108; // type:object size:0x2 data:2byte +lbl_1_data_104 = .data:0x00000104; // type:object size:0x4 data:2byte +lbl_1_data_108 = .data:0x00000108; // type:object size:0x4 data:2byte lbl_1_data_10C = .data:0x0000010C; // type:object size:0x12 -lbl_1_data_11E = .data:0x0000011E; // type:object size:0x13 data:string -lbl_1_data_131 = .data:0x00000131; // type:object size:0x18 -lbl_1_data_149 = .data:0x00000149; // type:object size:0x19 data:string -lbl_1_data_162 = .data:0x00000162; // type:object size:0x1C data:string -lbl_1_data_17E = .data:0x0000017E; // type:object size:0x10 data:string -lbl_1_data_18E = .data:0x0000018E; // type:object size:0x26 data:string -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string +lbl_1_data_11E = .data:0x0000011E; // type:object size:0x13 scope:local data:string +lbl_1_data_131 = .data:0x00000131; // type:object size:0x17 scope:local data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x1 scope:local +lbl_1_data_149 = .data:0x00000149; // type:object size:0x19 scope:local data:string +lbl_1_data_162 = .data:0x00000162; // type:object size:0x1C scope:local data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x10 scope:local data:string +lbl_1_data_18E = .data:0x0000018E; // type:object size:0x26 scope:local data:string +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 scope:local data:string lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x40 diff --git a/config/GMPP01_00/rels/m451Dll/symbols.txt b/config/GMPP01_00/rels/m451Dll/symbols.txt index 31e776c0..27c352fc 100644 --- a/config/GMPP01_00/rels/m451Dll/symbols.txt +++ b/config/GMPP01_00/rels/m451Dll/symbols.txt @@ -99,109 +99,109 @@ lbl_1_data_54 = .data:0x00000054; // type:object size:0xC lbl_1_data_60 = .data:0x00000060; // type:object size:0xC lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC lbl_1_data_78 = .data:0x00000078; // type:object size:0xC -lbl_1_data_84 = .data:0x00000084; // type:object size:0xB data:string -lbl_1_data_8F = .data:0x0000008F; // type:object size:0xB data:string -lbl_1_data_9A = .data:0x0000009A; // type:object size:0xB data:string -lbl_1_data_A5 = .data:0x000000A5; // type:object size:0xB data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xB data:string -lbl_1_data_BB = .data:0x000000BB; // type:object size:0xB data:string -lbl_1_data_C6 = .data:0x000000C6; // type:object size:0xB data:string -lbl_1_data_D1 = .data:0x000000D1; // type:object size:0xB data:string -lbl_1_data_DC = .data:0x000000DC; // type:object size:0xB data:string -lbl_1_data_E7 = .data:0x000000E7; // type:object size:0xB data:string -lbl_1_data_F2 = .data:0x000000F2; // type:object size:0xB data:string -lbl_1_data_FD = .data:0x000000FD; // type:object size:0xB data:string -lbl_1_data_108 = .data:0x00000108; // type:object size:0xB data:string -lbl_1_data_113 = .data:0x00000113; // type:object size:0xB data:string -lbl_1_data_11E = .data:0x0000011E; // type:object size:0xB data:string -lbl_1_data_129 = .data:0x00000129; // type:object size:0xB data:string -lbl_1_data_134 = .data:0x00000134; // type:object size:0xB data:string -lbl_1_data_13F = .data:0x0000013F; // type:object size:0xB data:string -lbl_1_data_14A = .data:0x0000014A; // type:object size:0xB data:string -lbl_1_data_155 = .data:0x00000155; // type:object size:0xB data:string -lbl_1_data_160 = .data:0x00000160; // type:object size:0xB data:string -lbl_1_data_16B = .data:0x0000016B; // type:object size:0xB data:string -lbl_1_data_176 = .data:0x00000176; // type:object size:0xB data:string -lbl_1_data_181 = .data:0x00000181; // type:object size:0xB data:string -lbl_1_data_18C = .data:0x0000018C; // type:object size:0xB data:string -lbl_1_data_197 = .data:0x00000197; // type:object size:0xB data:string -lbl_1_data_1A2 = .data:0x000001A2; // type:object size:0xB data:string -lbl_1_data_1AD = .data:0x000001AD; // type:object size:0xB data:string -lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0xB data:string -lbl_1_data_1C3 = .data:0x000001C3; // type:object size:0xB data:string -lbl_1_data_1CE = .data:0x000001CE; // type:object size:0xB data:string -lbl_1_data_1D9 = .data:0x000001D9; // type:object size:0xB data:string -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xB data:string -lbl_1_data_1EF = .data:0x000001EF; // type:object size:0xB data:string -lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xB data:string -lbl_1_data_205 = .data:0x00000205; // type:object size:0xB data:string -lbl_1_data_210 = .data:0x00000210; // type:object size:0xB data:string -lbl_1_data_21B = .data:0x0000021B; // type:object size:0xB data:string -lbl_1_data_226 = .data:0x00000226; // type:object size:0xB data:string -lbl_1_data_231 = .data:0x00000231; // type:object size:0xB data:string -lbl_1_data_23C = .data:0x0000023C; // type:object size:0xB data:string -lbl_1_data_247 = .data:0x00000247; // type:object size:0xB data:string -lbl_1_data_252 = .data:0x00000252; // type:object size:0xB data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0xB data:string -lbl_1_data_268 = .data:0x00000268; // type:object size:0xB data:string -lbl_1_data_273 = .data:0x00000273; // type:object size:0xB data:string -lbl_1_data_27E = .data:0x0000027E; // type:object size:0xB data:string -lbl_1_data_289 = .data:0x00000289; // type:object size:0xB data:string -lbl_1_data_294 = .data:0x00000294; // type:object size:0xB data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0xB data:string -lbl_1_data_2AA = .data:0x000002AA; // type:object size:0xB data:string -lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0xB data:string -lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0xB data:string -lbl_1_data_2CB = .data:0x000002CB; // type:object size:0xB data:string -lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0xB data:string -lbl_1_data_2E1 = .data:0x000002E1; // type:object size:0xB data:string -lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xB data:string -lbl_1_data_2F7 = .data:0x000002F7; // type:object size:0xB data:string -lbl_1_data_302 = .data:0x00000302; // type:object size:0xB data:string -lbl_1_data_30D = .data:0x0000030D; // type:object size:0xB data:string -lbl_1_data_318 = .data:0x00000318; // type:object size:0xB data:string -lbl_1_data_323 = .data:0x00000323; // type:object size:0xB data:string -lbl_1_data_32E = .data:0x0000032E; // type:object size:0xB data:string -lbl_1_data_339 = .data:0x00000339; // type:object size:0xB data:string -lbl_1_data_344 = .data:0x00000344; // type:object size:0xB data:string -lbl_1_data_34F = .data:0x0000034F; // type:object size:0xB data:string -lbl_1_data_35A = .data:0x0000035A; // type:object size:0xB data:string -lbl_1_data_365 = .data:0x00000365; // type:object size:0xB data:string -lbl_1_data_370 = .data:0x00000370; // type:object size:0xB data:string -lbl_1_data_37B = .data:0x0000037B; // type:object size:0xB data:string -lbl_1_data_386 = .data:0x00000386; // type:object size:0xB data:string -lbl_1_data_391 = .data:0x00000391; // type:object size:0xB data:string -lbl_1_data_39C = .data:0x0000039C; // type:object size:0xB data:string -lbl_1_data_3A7 = .data:0x000003A7; // type:object size:0xB data:string -lbl_1_data_3B2 = .data:0x000003B2; // type:object size:0xB data:string -lbl_1_data_3BD = .data:0x000003BD; // type:object size:0xB data:string -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xB data:string -lbl_1_data_3D3 = .data:0x000003D3; // type:object size:0xB data:string -lbl_1_data_3DE = .data:0x000003DE; // type:object size:0xB data:string -lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0xB data:string -lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0xB data:string -lbl_1_data_3FF = .data:0x000003FF; // type:object size:0xB data:string -lbl_1_data_40A = .data:0x0000040A; // type:object size:0xB data:string -lbl_1_data_415 = .data:0x00000415; // type:object size:0xB data:string -lbl_1_data_420 = .data:0x00000420; // type:object size:0xB data:string -lbl_1_data_42B = .data:0x0000042B; // type:object size:0xB data:string -lbl_1_data_436 = .data:0x00000436; // type:object size:0xB data:string -lbl_1_data_441 = .data:0x00000441; // type:object size:0xB data:string -lbl_1_data_44C = .data:0x0000044C; // type:object size:0xB data:string +lbl_1_data_84 = .data:0x00000084; // type:object size:0xB scope:local data:string +lbl_1_data_8F = .data:0x0000008F; // type:object size:0xB scope:local data:string +lbl_1_data_9A = .data:0x0000009A; // type:object size:0xB scope:local data:string +lbl_1_data_A5 = .data:0x000000A5; // type:object size:0xB scope:local data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xB scope:local data:string +lbl_1_data_BB = .data:0x000000BB; // type:object size:0xB scope:local data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0xB scope:local data:string +lbl_1_data_D1 = .data:0x000000D1; // type:object size:0xB scope:local data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xB scope:local data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0xB scope:local data:string +lbl_1_data_F2 = .data:0x000000F2; // type:object size:0xB scope:local data:string +lbl_1_data_FD = .data:0x000000FD; // type:object size:0xB scope:local data:string +lbl_1_data_108 = .data:0x00000108; // type:object size:0xB scope:local data:string +lbl_1_data_113 = .data:0x00000113; // type:object size:0xB scope:local data:string +lbl_1_data_11E = .data:0x0000011E; // type:object size:0xB scope:local data:string +lbl_1_data_129 = .data:0x00000129; // type:object size:0xB scope:local data:string +lbl_1_data_134 = .data:0x00000134; // type:object size:0xB scope:local data:string +lbl_1_data_13F = .data:0x0000013F; // type:object size:0xB scope:local data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xB scope:local data:string +lbl_1_data_155 = .data:0x00000155; // type:object size:0xB scope:local data:string +lbl_1_data_160 = .data:0x00000160; // type:object size:0xB scope:local data:string +lbl_1_data_16B = .data:0x0000016B; // type:object size:0xB scope:local data:string +lbl_1_data_176 = .data:0x00000176; // type:object size:0xB scope:local data:string +lbl_1_data_181 = .data:0x00000181; // type:object size:0xB scope:local data:string +lbl_1_data_18C = .data:0x0000018C; // type:object size:0xB scope:local data:string +lbl_1_data_197 = .data:0x00000197; // type:object size:0xB scope:local data:string +lbl_1_data_1A2 = .data:0x000001A2; // type:object size:0xB scope:local data:string +lbl_1_data_1AD = .data:0x000001AD; // type:object size:0xB scope:local data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0xB scope:local data:string +lbl_1_data_1C3 = .data:0x000001C3; // type:object size:0xB scope:local data:string +lbl_1_data_1CE = .data:0x000001CE; // type:object size:0xB scope:local data:string +lbl_1_data_1D9 = .data:0x000001D9; // type:object size:0xB scope:local data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xB scope:local data:string +lbl_1_data_1EF = .data:0x000001EF; // type:object size:0xB scope:local data:string +lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xB scope:local data:string +lbl_1_data_205 = .data:0x00000205; // type:object size:0xB scope:local data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0xB scope:local data:string +lbl_1_data_21B = .data:0x0000021B; // type:object size:0xB scope:local data:string +lbl_1_data_226 = .data:0x00000226; // type:object size:0xB scope:local data:string +lbl_1_data_231 = .data:0x00000231; // type:object size:0xB scope:local data:string +lbl_1_data_23C = .data:0x0000023C; // type:object size:0xB scope:local data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0xB scope:local data:string +lbl_1_data_252 = .data:0x00000252; // type:object size:0xB scope:local data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0xB scope:local data:string +lbl_1_data_268 = .data:0x00000268; // type:object size:0xB scope:local data:string +lbl_1_data_273 = .data:0x00000273; // type:object size:0xB scope:local data:string +lbl_1_data_27E = .data:0x0000027E; // type:object size:0xB scope:local data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0xB scope:local data:string +lbl_1_data_294 = .data:0x00000294; // type:object size:0xB scope:local data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0xB scope:local data:string +lbl_1_data_2AA = .data:0x000002AA; // type:object size:0xB scope:local data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0xB scope:local data:string +lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0xB scope:local data:string +lbl_1_data_2CB = .data:0x000002CB; // type:object size:0xB scope:local data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0xB scope:local data:string +lbl_1_data_2E1 = .data:0x000002E1; // type:object size:0xB scope:local data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xB scope:local data:string +lbl_1_data_2F7 = .data:0x000002F7; // type:object size:0xB scope:local data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0xB scope:local data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0xB scope:local data:string +lbl_1_data_318 = .data:0x00000318; // type:object size:0xB scope:local data:string +lbl_1_data_323 = .data:0x00000323; // type:object size:0xB scope:local data:string +lbl_1_data_32E = .data:0x0000032E; // type:object size:0xB scope:local data:string +lbl_1_data_339 = .data:0x00000339; // type:object size:0xB scope:local data:string +lbl_1_data_344 = .data:0x00000344; // type:object size:0xB scope:local data:string +lbl_1_data_34F = .data:0x0000034F; // type:object size:0xB scope:local data:string +lbl_1_data_35A = .data:0x0000035A; // type:object size:0xB scope:local data:string +lbl_1_data_365 = .data:0x00000365; // type:object size:0xB scope:local data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0xB scope:local data:string +lbl_1_data_37B = .data:0x0000037B; // type:object size:0xB scope:local data:string +lbl_1_data_386 = .data:0x00000386; // type:object size:0xB scope:local data:string +lbl_1_data_391 = .data:0x00000391; // type:object size:0xB scope:local data:string +lbl_1_data_39C = .data:0x0000039C; // type:object size:0xB scope:local data:string +lbl_1_data_3A7 = .data:0x000003A7; // type:object size:0xB scope:local data:string +lbl_1_data_3B2 = .data:0x000003B2; // type:object size:0xB scope:local data:string +lbl_1_data_3BD = .data:0x000003BD; // type:object size:0xB scope:local data:string +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xB scope:local data:string +lbl_1_data_3D3 = .data:0x000003D3; // type:object size:0xB scope:local data:string +lbl_1_data_3DE = .data:0x000003DE; // type:object size:0xB scope:local data:string +lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0xB scope:local data:string +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0xB scope:local data:string +lbl_1_data_3FF = .data:0x000003FF; // type:object size:0xB scope:local data:string +lbl_1_data_40A = .data:0x0000040A; // type:object size:0xB scope:local data:string +lbl_1_data_415 = .data:0x00000415; // type:object size:0xB scope:local data:string +lbl_1_data_420 = .data:0x00000420; // type:object size:0xB scope:local data:string +lbl_1_data_42B = .data:0x0000042B; // type:object size:0xB scope:local data:string +lbl_1_data_436 = .data:0x00000436; // type:object size:0xB scope:local data:string +lbl_1_data_441 = .data:0x00000441; // type:object size:0xB scope:local data:string +lbl_1_data_44C = .data:0x0000044C; // type:object size:0xB scope:local data:string lbl_1_data_457 = .data:0x00000457; // type:object size:0xD lbl_1_data_464 = .data:0x00000464; // type:object size:0x264 lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0xC lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x78 data:float lbl_1_data_74C = .data:0x0000074C; // type:object size:0xC lbl_1_data_758 = .data:0x00000758; // type:object size:0xC -lbl_1_data_764 = .data:0x00000764; // type:object size:0xC data:string -lbl_1_data_770 = .data:0x00000770; // type:object size:0xC data:string -lbl_1_data_77C = .data:0x0000077C; // type:object size:0x7 data:string -lbl_1_data_783 = .data:0x00000783; // type:object size:0x8 data:string -lbl_1_data_78B = .data:0x0000078B; // type:object size:0x8 data:string -lbl_1_data_793 = .data:0x00000793; // type:object size:0x8 data:string -lbl_1_data_79B = .data:0x0000079B; // type:object size:0xB data:string -lbl_1_data_7A6 = .data:0x000007A6; // type:object size:0xF data:string +lbl_1_data_764 = .data:0x00000764; // type:object size:0xC scope:local data:string +lbl_1_data_770 = .data:0x00000770; // type:object size:0xC scope:local data:string +lbl_1_data_77C = .data:0x0000077C; // type:object size:0x7 scope:local data:string +lbl_1_data_783 = .data:0x00000783; // type:object size:0x8 scope:local data:string +lbl_1_data_78B = .data:0x0000078B; // type:object size:0x8 scope:local data:string +lbl_1_data_793 = .data:0x00000793; // type:object size:0x8 scope:local data:string +lbl_1_data_79B = .data:0x0000079B; // type:object size:0xB scope:local data:string +lbl_1_data_7A6 = .data:0x000007A6; // type:object size:0xF scope:local data:string lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x340 data:4byte lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x810 data:float diff --git a/configure.py b/configure.py index a5be4728..44b5348f 100644 --- a/configure.py +++ b/configure.py @@ -1142,8 +1142,8 @@ config.libs = [ Rel( "m440Dll", # Bowser's Bigger Blast objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/object.c"), + Object(Matching, "REL/m440Dll/main.c"), + Object(Matching, "REL/m440Dll/object.c"), }, ), Rel( diff --git a/include/REL/m440Dll.h b/include/REL/m440Dll.h index 071bc6a5..d4d806b2 100644 --- a/include/REL/m440Dll.h +++ b/include/REL/m440Dll.h @@ -240,6 +240,11 @@ typedef struct _unkObjStruct { f32 unk70; } unkObjStruct; +#if VERSION_NTSC +#define REFRESH_RATE_F 60.0f +#else +#define REFRESH_RATE_F 49.998f +#endif ////// BSS ////// extern omObjData* lbl_1_bss_C0[4]; diff --git a/src/REL/m440Dll/main.c b/src/REL/m440Dll/main.c index e200145c..1ec95168 100644 --- a/src/REL/m440Dll/main.c +++ b/src/REL/m440Dll/main.c @@ -14,6 +14,7 @@ #include "math.h" #include "string.h" +#include "version.h" // bss omObjData *lbl_1_bss_6C; @@ -117,7 +118,7 @@ s32 fn_1_4A4(void) var_r31 = &lbl_1_data_78[0]; var_r30 = 0; lbl_1_bss_4++; - var_f31 = lbl_1_bss_4 / 120.0f; + var_f31 = lbl_1_bss_4 / (2 * REFRESH_RATE_F); if (var_f31 > 1.0f) { lbl_1_bss_4 = 0; var_f31 = 1.0f; @@ -144,7 +145,7 @@ s32 fn_1_6C8(void) var_r31 = &lbl_1_data_78[1]; var_r30 = 0; lbl_1_bss_4++; - var_f31 = lbl_1_bss_4 / 120.0f; + var_f31 = lbl_1_bss_4 / (2 * REFRESH_RATE_F); if (var_f31 > 1.0f) { lbl_1_bss_4 = 0; var_f31 = 1.0f; @@ -173,7 +174,7 @@ void fn_1_8F0(omObjData *arg0) temp_r31->unk0 = 1; temp_r31->unk4 = -1; temp_r31->unk8 = -1; - temp_r31->unk6 = 0x12C; + temp_r31->unk6 = 5 * REFRESH_RATE; temp_r31->unkA = 0; temp_r31->unkC = -1; @@ -215,7 +216,7 @@ void fn_1_AE0(omObjData *arg0) break; case 3: if (temp_r31->unk8 != -1) { - MGSeqParamSet(temp_r31->unk8, 1, ((temp_r31->unk6 + 0x3B) / 60)); + MGSeqParamSet(temp_r31->unk8, 1, ((temp_r31->unk6 + REFRESH_RATE - 1) / REFRESH_RATE)); } if ((temp_r31->unkC < 0) && ((MGSeqStatGet(temp_r31->unk4) & 0x10) != 0)) { temp_r31->unkC = HuAudSeqPlay(0x49); @@ -226,7 +227,7 @@ void fn_1_AE0(omObjData *arg0) temp_f31 = (((rand8() << 8) | rand8()) % 361); Center.x = (lbl_1_data_78[1].center.x + (10.0 * sind(temp_f31))); Center.y = (lbl_1_data_78[1].center.y + (10.0 * cosd(temp_f31))); - if (temp_r31->unkA > 0x28) { + if (temp_r31->unkA > (2 * REFRESH_RATE / 3)) { temp_r31->unkA = 0; return; } @@ -265,7 +266,7 @@ u8 fn_1_E14(omObjData *arg0) lbl_1_bss_6++; break; case 1: - if (++lbl_1_bss_8 > 0x1E) { + if (++lbl_1_bss_8 > (s16)(0.5f * REFRESH_RATE_F)) { fn_1_F168(); lbl_1_bss_8 = 0; lbl_1_bss_6++; @@ -275,7 +276,7 @@ u8 fn_1_E14(omObjData *arg0) var_r31 = lbl_1_data_78; var_r30 = 0; lbl_1_bss_4++; - var_f31 = lbl_1_bss_4 / 120.0f; + var_f31 = lbl_1_bss_4 / (2 * REFRESH_RATE_F); if (var_f31 > 1.0f) { lbl_1_bss_4 = 0; var_f31 = 1.0f; @@ -319,7 +320,7 @@ u8 fn_1_1138(omObjData *object) temp_r30->unk40 = temp_r30->unk34; } lbl_1_bss_8++; - var_f30 = lbl_1_bss_8 / 30.0f; + var_f30 = lbl_1_bss_8 / (0.5f * REFRESH_RATE_F); if (var_f30 >= 1.0f) { var_f30 = 1.0f; if (lbl_1_bss_B == 0) { @@ -331,7 +332,7 @@ u8 fn_1_1138(omObjData *object) var_r31 = &lbl_1_data_78[1]; // could be fn_1_6C8 var_r28 = 0; lbl_1_bss_4++; - var_f31 = lbl_1_bss_4 / 120.0f; + var_f31 = lbl_1_bss_4 / (2 * REFRESH_RATE_F); if (var_f31 > 1.0f) { lbl_1_bss_4 = 0; var_f31 = 1.0f; @@ -357,7 +358,7 @@ u8 fn_1_1138(omObjData *object) lbl_1_bss_8 = 0; break; case 2: - if (++lbl_1_bss_8 > 210.0f) { + if (++lbl_1_bss_8 > (3.5f * REFRESH_RATE)) { lbl_1_bss_6 = 0; return 1; } @@ -392,7 +393,7 @@ void fn_1_1768(void) temp_r31 = (unkStruct2 *)lbl_1_bss_6C->data; if (temp_r31->unk8 == -1) { - temp_r31->unk6 = 0x12C; + temp_r31->unk6 = 5 * REFRESH_RATE; temp_r31->unk8 = MGSeqCreate(1, 5, -1, -1); } } @@ -695,7 +696,7 @@ void fn_1_2B04(omObjData *object) switch (lbl_1_data_E4[0]) { case 0: lbl_1_data_E8[0]++; - temp_f31 = lbl_1_data_E8[0] / 360.0f; + temp_f31 = lbl_1_data_E8[0] / (6 * REFRESH_RATE_F); if (temp_f31 > 1.0f) { temp_f31 = 1.0f; Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); @@ -752,15 +753,15 @@ void fn_1_2D28(omObjData *object) break; case 0x1: lbl_1_data_F0[0]++; - var_f31 = lbl_1_data_F0[0] / 120.0f; + var_f31 = lbl_1_data_F0[0] / (2 * REFRESH_RATE_F); if (var_f31 > 1.0f) { var_f31 = 1.0f; lbl_1_data_F0[0] = 0; - lbl_1_data_F0[1] = 0xF; + lbl_1_data_F0[1] = REFRESH_RATE / 4; lbl_1_data_EC[1] = (lbl_1_data_EC[0] + 1); lbl_1_data_EC[0] = 0x63; } - if (110.0f == lbl_1_data_F0[0]) { + if ((11 * REFRESH_RATE_F / 6) == lbl_1_data_F0[0]) { HuAudFXPlay(0x70A); } var_f31 = sin((M_PI * (90.0f * var_f31)) / 180.0); @@ -771,11 +772,11 @@ void fn_1_2D28(omObjData *object) HuAudFXPlay(0x713); } lbl_1_data_F0[0]++; - var_f31 = lbl_1_data_F0[0] / 60.0f; + var_f31 = lbl_1_data_F0[0] / REFRESH_RATE_F; if (var_f31 > 1.0f) { var_f31 = 1.0f; lbl_1_data_F0[0] = 0; - lbl_1_data_F0[1] = 0xF; + lbl_1_data_F0[1] = REFRESH_RATE / 4; lbl_1_data_EC[1] = lbl_1_data_EC[0] + 1; lbl_1_data_EC[0] = 0x63; HuAudFXPlay(0x714); @@ -788,7 +789,7 @@ void fn_1_2D28(omObjData *object) if (lbl_1_data_F0[0] == 0) { HuAudFXPlay(0x711); } - if (++lbl_1_data_F0[0] > 12.0) { + if (++lbl_1_data_F0[0] > (0.2 * REFRESH_RATE)) { if (fn_1_4EA8(0x40) != 0) { fn_1_4EEC(0x40, 0); fn_1_F228(); @@ -801,7 +802,7 @@ void fn_1_2D28(omObjData *object) break; case 0x4: lbl_1_data_F0[0]++; - var_f31 = lbl_1_data_F0[0] / 360.0f; + var_f31 = lbl_1_data_F0[0] / (6 * REFRESH_RATE_F); if (var_f31 > 1.0f) { var_f31 = 1.0f; Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); @@ -1021,7 +1022,7 @@ void fn_1_46E0(omObjData *object) break; case 0x1: lbl_1_data_108[0]++; - var_f31 = lbl_1_data_108[0] / 60.0f; + var_f31 = lbl_1_data_108[0] / REFRESH_RATE_F; if (var_f31 > 1.0f) { var_f31 = 1.0f; lbl_1_data_108[0] = 0; @@ -1083,7 +1084,7 @@ void fn_1_4B44(omObjData *object) switch (lbl_1_data_104[0]) { case 0: lbl_1_data_108[0]++; - var_f31 = lbl_1_data_108[0] / 60.0f; + var_f31 = lbl_1_data_108[0] / REFRESH_RATE_F; if (var_f31 > 1.0f) { var_f31 = 1.0f; lbl_1_data_108[0] = 0; @@ -1094,7 +1095,7 @@ void fn_1_4B44(omObjData *object) break; case 1: lbl_1_data_108[0]++; - var_f31 = (lbl_1_data_108[0] / 30.0f); + var_f31 = (lbl_1_data_108[0] / (0.5f * REFRESH_RATE_F)); if (var_f31 >= 1.0f) { lbl_1_data_108[0] = 0; lbl_1_data_104[0] = 0; @@ -1301,7 +1302,7 @@ void fn_1_57B4(unkStruct6 *arg0) } } if ((arg0->unk2 & 4) != 0) { - if (++arg0->unk3E > 0x50) { + if (++arg0->unk3E > (4 * REFRESH_RATE / 3)) { arg0->unk3C = ((arg0->unk3C - 10) < 0) ? 0 : arg0->unk3C - 10; } } diff --git a/src/REL/m440Dll/object.c b/src/REL/m440Dll/object.c index 5e94301f..941f1463 100644 --- a/src/REL/m440Dll/object.c +++ b/src/REL/m440Dll/object.c @@ -8,6 +8,12 @@ #include "game/pad.h" #include "math.h" #include "string.h" +#include "version.h" + + +#ifdef __MWERKS__ +#include "game/audio.h" +#endif // bss @@ -78,7 +84,7 @@ void fn_1_AEE4(omObjData *arg0) temp_r31->unk30.x = temp_r31->unk30.y = temp_r31->unk30.z = 0.0f; temp_r31->unk3C.y = 90.0f; temp_r31->unkC = 0; - temp_r31->unkE = 0x78; + temp_r31->unkE = 2 * REFRESH_RATE_F; temp_r31->unk10 = temp_r31->unk12 = temp_r31->unk14 = 0; if (temp_r31->unk8 == 5) { var_f31 = 350.0f; @@ -173,7 +179,7 @@ void fn_1_B3A4(omObjData *arg0) var_r31->unk18.y = 0.0f; var_r31->unk18.z = var_r31->unk24.z + (lbl_1_bss_88[var_r28].z - var_r31->unk24.z) * var_f31; var_r31->unk14++; - var_f31 = var_r31->unk14 / 20.0f; + var_f31 = var_r31->unk14 / (REFRESH_RATE_F / 3.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; } @@ -181,7 +187,7 @@ void fn_1_B3A4(omObjData *arg0) break; case 7: var_r31->unkC++; - var_f31 = (f32)var_r31->unkC / 40.0f; + var_f31 = (f32)var_r31->unkC / (2.0f * REFRESH_RATE_F / 3); if (var_f31 >= 1.0f) { var_f31 = 1.0f; var_r31->unkC = 0; @@ -239,7 +245,7 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) switch (lbl_1_bss_74) { case 0: - lbl_1_data_250 -= 0.5f; + lbl_1_data_250 -= (REFRESH_RATE_F / 120); if (lbl_1_data_250 <= 45.0f) { lbl_1_data_250 = 45.0f; lbl_1_bss_74++; @@ -258,14 +264,14 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) return; case 1: arg1->unkE++; - var_f31 = arg1->unkE / 10.0f; + var_f31 = arg1->unkE / (REFRESH_RATE_F / 6.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; } var_f30 = 225.0f; arg1->unk30.y = arg1->unk68 + (var_f31 * (var_f30 - arg1->unk68)); arg1->unkC++; - var_f31 = arg1->unkC / 50.0f; + var_f31 = arg1->unkC / (5.0f * REFRESH_RATE_F / 6.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; arg1->unkC = arg1->unkE = 0; @@ -294,7 +300,7 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) } break; case 2: - lbl_1_data_250++; + lbl_1_data_250 += REFRESH_RATE_F / 60.0f; if (lbl_1_data_250 >= lbl_1_data_0[arg1->unk60]) { lbl_1_data_250 = lbl_1_data_0[arg1->unk60]; lbl_1_bss_74++; @@ -309,7 +315,7 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) var_f30 += 360.0f; } arg1->unkC++; - var_f31 = arg1->unkC / 10.0f; + var_f31 = arg1->unkC / (REFRESH_RATE_F / 6.0f); if (var_f31 < 1.0f) { arg1->unk30.y = arg1->unk68 + (var_f31 * (var_f30 - arg1->unk68)); } @@ -320,7 +326,7 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) return; case 3: arg1->unkE++; - var_f31 = arg1->unkE / 10.0f; + var_f31 = arg1->unkE / (REFRESH_RATE_F / 6.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; arg1->unkC = arg1->unkE = 0; @@ -332,7 +338,7 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) arg1->unk30.y = fn_1_927C(arg1->unk6C, var_f30, var_f31); return; case 4: - if (++arg1->unkC > 15) { + if (++arg1->unkC > (REFRESH_RATE / 4)) { lbl_1_bss_74++; } break; @@ -443,7 +449,7 @@ void fn_1_C1D4(omObjData *arg0, unkObjStruct *arg1) if (var_f30 < 5.0f) { if (arg1->unk5A != 0) { arg1->unk56++; - var_f31 = arg1->unk56 / 40.0f; + var_f31 = arg1->unk56 / (2.0f * REFRESH_RATE_F / 3.0f); if (var_f31 > 1.0f) { var_f31 = 1.0f; arg1->unk5A = 0; @@ -523,7 +529,7 @@ void fn_1_C944(omObjData *arg0, unkObjStruct *arg1) } } if ((arg1->unk48 & 1) != 0) { - arg1->unk68 -= 1.0f; + arg1->unk68 -= REFRESH_RATE_F / 60.0f; if ((var_r30 != -1) && (lbl_1_data_0[var_r30] > arg1->unk68)) { arg1->unk68 = lbl_1_data_0[var_r30]; arg1->unk4A = var_r30; @@ -531,7 +537,7 @@ void fn_1_C944(omObjData *arg0, unkObjStruct *arg1) } } else if ((arg1->unk48 & 2) != 0) { - arg1->unk68++; + arg1->unk68 += REFRESH_RATE_F / 60.0f; if ((var_r30 != -1) && (lbl_1_data_0[var_r30] < arg1->unk68)) { arg1->unk68 = lbl_1_data_0[var_r30]; arg1->unk4A = var_r30; @@ -659,7 +665,7 @@ void fn_1_D24C(unkObjStruct *arg0, f32 arg1, f32 arg2) f32 var_f30; f32 var_f31; - var_f28 = 10.0f; + var_f28 = REFRESH_RATE_F / 6.0f; arg0->unk6C = arg1; arg0->unk70 = arg2; var_f31 = ABS(arg1 - arg2); @@ -702,7 +708,7 @@ void fn_1_D34C(omObjData *arg0, unkObjStruct *arg1) arg1->unk6C = 0.0f; arg1->unk48 = 0; lbl_1_data_14[arg1->unk4A] = 0; - if (fn_1_17CC() < 270.0f) { + if (fn_1_17CC() < (4.5f * REFRESH_RATE)) { fn_1_1708(); } fn_1_F4D4(arg1, 15, 4); @@ -793,7 +799,7 @@ void fn_1_D7F8(omObjData *arg0, unkObjStruct *arg1) } break; case 1: - if (++arg1->unkC > 0xA) { + if (++arg1->unkC > (REFRESH_RATE / 6)) { arg1->unkC = 0; Hu3DMotionSpeedSet(arg0->model[0], 2.0f); if ((arg1->unk6C - arg1->unk68) > 0.0f) { @@ -808,7 +814,7 @@ void fn_1_D7F8(omObjData *arg0, unkObjStruct *arg1) break; case 2: arg1->unkC++; - var_f31 = arg1->unkC / 30.0f; + var_f31 = arg1->unkC / (0.5f * REFRESH_RATE_F); arg1->unk18.x = ((410.0f + (var_f31 * (arg1->unk5C - 410.0f))) * cosd(lbl_1_data_0[arg1->unk4A])); arg1->unk18.z = ((410.0f + (var_f31 * (arg1->unk5C - 410.0f))) * sind(lbl_1_data_0[arg1->unk4A])); if (var_f31 >= 1.0f) { @@ -825,7 +831,7 @@ void fn_1_D7F8(omObjData *arg0, unkObjStruct *arg1) arg1->unk30.y = fn_1_927C(arg1->unk68, arg1->unk6C, var_f31); break; case 3: - if (++arg1->unkC > 0x3C) { + if (++arg1->unkC > (s32)REFRESH_RATE_F) { if (fn_1_4E54(arg1->unk4A) == 0) { fn_1_4EEC(7U, 3U); } @@ -852,7 +858,7 @@ void fn_1_D7F8(omObjData *arg0, unkObjStruct *arg1) break; } if (fn_1_17F4() >= 0) { - if (fn_1_17CC() < 270.0f) { + if (fn_1_17CC() < (4.5f * REFRESH_RATE)) { fn_1_1708(); return; } @@ -874,7 +880,11 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) switch (arg1->unk60) { case 0: lbl_1_bss_84 = lbl_1_data_0[arg1->unk4A]; +#if VERSION_NTSC Hu3DMotionShiftSet(arg0->model[0], arg0->motion[4], 0.0f, 7.0f, HU3D_MOTATTR_LOOP); +#else + Hu3DMotionSet(arg0->model[0], arg0->motion[4]); +#endif HuAudCharVoicePlay(arg1->unk8, 0x125); arg1->unk60++; break; @@ -898,7 +908,7 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) } break; case 2: - lbl_1_bss_84++; + lbl_1_bss_84 += REFRESH_RATE_F / 60.0f; if (lbl_1_bss_84 >= 135.0f) { lbl_1_bss_84 = 135.0f; arg1->unkE = arg1->unk10 = 0; @@ -915,7 +925,7 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) var_f30 += 360.0f; } arg1->unkC++; - var_f31 = arg1->unkC / 10.0f; + var_f31 = arg1->unkC / (REFRESH_RATE_F / 6.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; } @@ -924,14 +934,14 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) break; case 3: arg1->unkE++; - var_f31 = arg1->unkE / 10.0f; + var_f31 = arg1->unkE / (REFRESH_RATE_F / 6.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; } var_f30 = 315.0f; arg1->unk30.y = arg1->unk6C + (var_f31 * (var_f30 - arg1->unk6C)); arg1->unk10++; - var_f31 = arg1->unk10 / 50.0f; + var_f31 = arg1->unk10 / (5.0f * REFRESH_RATE_F / 6.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; arg1->unkC = arg1->unkE = arg1->unk10 = 0; @@ -953,12 +963,12 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) } break; case 4: - lbl_1_bss_84 -= 0.5f; + lbl_1_bss_84 -= REFRESH_RATE_F / 120; if (lbl_1_bss_84 <= 110.0f) { lbl_1_bss_84 = 110.0f; arg1->unk60 = 0; arg1->unkC = 0; - arg1->unkE = (3 - lbl_1_data_1D8) * 0x1E; + arg1->unkE = (3 - lbl_1_data_1D8) * (s32)(0.5f * REFRESH_RATE_F); arg1->unk14 = 0; arg1->unk3C.y = 90.0f; fn_1_F4D4(arg1, 15, 1); @@ -973,7 +983,7 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) var_f30 += 360.0f; } arg1->unk10++; - var_f31 = arg1->unk10 / 10.0f; + var_f31 = arg1->unk10 / (REFRESH_RATE_F / 6.0f); if (var_f31 >= 1.0f) { var_f31 = 1.0f; } @@ -1025,7 +1035,7 @@ u8 fn_1_E8AC(omObjData *arg0, unkObjStruct *arg1) case 2: arg1->unkC++; arg1->unk68 += 40.0f; - var_f31 = arg1->unkC / 90.0f; + var_f31 = arg1->unkC / (1.5f * REFRESH_RATE_F); if (var_f31 >= 1.0f) { var_f31 = 1.0f; arg1->unk60++; @@ -1165,7 +1175,7 @@ void fn_1_F228(void) temp_r31->unkA--; temp_r31->unk24 = temp_r31->unk18; temp_r31->unkC = 0; - temp_r31->unkE = 0x1E; + temp_r31->unkE = (s32)(0.5f * REFRESH_RATE_F); temp_r31->unk14 = 0; fn_1_F4D4(temp_r31, 15, 1); } From 9693b314e0e7d44226f6d854735b93e8f25ef93a Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 18 Nov 2024 01:09:56 +0100 Subject: [PATCH 020/178] Ported m441Dll --- config/GMPP01_00/rels/m441Dll/splits.txt | 6 + config/GMPP01_00/rels/m441Dll/symbols.txt | 315 +++++++++++----------- configure.py | 2 +- src/REL/m441Dll/main.c | 24 +- 4 files changed, 177 insertions(+), 170 deletions(-) diff --git a/config/GMPP01_00/rels/m441Dll/splits.txt b/config/GMPP01_00/rels/m441Dll/splits.txt index 531cd645..b67999c6 100644 --- a/config/GMPP01_00/rels/m441Dll/splits.txt +++ b/config/GMPP01_00/rels/m441Dll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m441Dll/main.c: + .text start:0x00000000 end:0x0000AABC + .rodata start:0x00000000 end:0x000001EC + .data start:0x00000000 end:0x000005CC + .bss start:0x00000000 end:0x00000204 diff --git a/config/GMPP01_00/rels/m441Dll/symbols.txt b/config/GMPP01_00/rels/m441Dll/symbols.txt index d2b885ed..ccaec68e 100644 --- a/config/GMPP01_00/rels/m441Dll/symbols.txt +++ b/config/GMPP01_00/rels/m441Dll/symbols.txt @@ -7,185 +7,185 @@ fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C fn_1_414 = .text:0x00000414; // type:function size:0x58 fn_1_46C = .text:0x0000046C; // type:function size:0x114 fn_1_580 = .text:0x00000580; // type:function size:0x204 -fn_1_784 = .text:0x00000784; // type:function size:0x240 -fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 -fn_1_A18 = .text:0x00000A18; // type:function size:0x10C -fn_1_B24 = .text:0x00000B24; // type:function size:0x680 -fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C -fn_1_1300 = .text:0x00001300; // type:function size:0x8C -fn_1_138C = .text:0x0000138C; // type:function size:0x334 -fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 -fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 -fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 -fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 -fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 -fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 -fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C -fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_798 = .text:0x00000784; // type:function size:0x240 +fn_1_9EC = .text:0x000009C4; // type:function size:0x54 +fn_1_A40 = .text:0x00000A18; // type:function size:0x10C +fn_1_B4C = .text:0x00000B24; // type:function size:0x680 +fn_1_11F4 = .text:0x000011A4; // type:function size:0x15C +fn_1_1350 = .text:0x00001300; // type:function size:0x8C +fn_1_13DC = .text:0x0000138C; // type:function size:0x334 +fn_1_1710 = .text:0x000016C0; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A10; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001CC8; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D20; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001DD0; // type:function size:0x104 +fn_1_1F24 = .text:0x00001ED4; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F08; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001F74; // type:function size:0x3F0 _prolog = .text:0x00002364; // type:function size:0x54 scope:global _epilog = .text:0x000023B8; // type:function size:0x4C scope:global -fn_1_2404 = .text:0x00002404; // type:function size:0x2E8 -fn_1_26EC = .text:0x000026EC; // type:function size:0x1C8 -fn_1_28B4 = .text:0x000028B4; // type:function size:0x2D0 -fn_1_2B84 = .text:0x00002B84; // type:function size:0x830 -fn_1_33B4 = .text:0x000033B4; // type:function size:0x700 -fn_1_3AB4 = .text:0x00003AB4; // type:function size:0xFC -fn_1_3BB0 = .text:0x00003BB0; // type:function size:0x4A8 -fn_1_4058 = .text:0x00004058; // type:function size:0x1340 -fn_1_5398 = .text:0x00005398; // type:function size:0x744 -fn_1_5ADC = .text:0x00005ADC; // type:function size:0xD8 -fn_1_5BB4 = .text:0x00005BB4; // type:function size:0x1538 -fn_1_70EC = .text:0x000070EC; // type:function size:0x3B8 -fn_1_74A4 = .text:0x000074A4; // type:function size:0x464 -fn_1_7908 = .text:0x00007908; // type:function size:0xD4 -fn_1_79DC = .text:0x000079DC; // type:function size:0x610 -fn_1_7FEC = .text:0x00007FEC; // type:function size:0x4DC -fn_1_84C8 = .text:0x000084C8; // type:function size:0x414 -fn_1_88DC = .text:0x000088DC; // type:function size:0x174 -fn_1_8A50 = .text:0x00008A50; // type:function size:0x2B8 -fn_1_8D08 = .text:0x00008D08; // type:function size:0x11D8 -fn_1_9EE0 = .text:0x00009EE0; // type:function size:0x570 -fn_1_A450 = .text:0x0000A450; // type:function size:0x59C -fn_1_A9EC = .text:0x0000A9EC; // type:function size:0xD0 +fn_1_2454 = .text:0x00002404; // type:function size:0x2E8 +fn_1_273C = .text:0x000026EC; // type:function size:0x1C8 +fn_1_2904 = .text:0x000028B4; // type:function size:0x2D0 +fn_1_2BD4 = .text:0x00002B84; // type:function size:0x830 +fn_1_3404 = .text:0x000033B4; // type:function size:0x700 +fn_1_3B04 = .text:0x00003AB4; // type:function size:0xFC +fn_1_3C00 = .text:0x00003BB0; // type:function size:0x4A8 +fn_1_40A8 = .text:0x00004058; // type:function size:0x1340 +fn_1_53E8 = .text:0x00005398; // type:function size:0x744 +fn_1_5B2C = .text:0x00005ADC; // type:function size:0xD8 +fn_1_5C04 = .text:0x00005BB4; // type:function size:0x1538 +fn_1_713C = .text:0x000070EC; // type:function size:0x3B8 +fn_1_74F4 = .text:0x000074A4; // type:function size:0x464 +fn_1_7958 = .text:0x00007908; // type:function size:0xD4 +fn_1_7A2C = .text:0x000079DC; // type:function size:0x610 +fn_1_803C = .text:0x00007FEC; // type:function size:0x4DC +fn_1_8518 = .text:0x000084C8; // type:function size:0x414 +fn_1_892C = .text:0x000088DC; // type:function size:0x174 +fn_1_8AA0 = .text:0x00008A50; // type:function size:0x2B8 +fn_1_8D58 = .text:0x00008D08; // type:function size:0x11D8 +fn_1_9F40 = .text:0x00009EE0; // type:function size:0x570 +ObjectSetup = .text:0x0000A450; // type:function size:0x59C +fn_1_AA4C = .text:0x0000A9EC; // type:function size:0xD0 _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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // 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:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // 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:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_data_0 = .data:0x00000000; // type:object size:0x10 lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:4byte -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC -lbl_1_data_4C = .data:0x0000004C; // type:object size:0xC data:4byte -lbl_1_data_58 = .data:0x00000058; // type:object size:0xC data:4byte -lbl_1_data_64 = .data:0x00000064; // type:object size:0xC -lbl_1_data_70 = .data:0x00000070; // type:object size:0xC data:4byte -lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC -lbl_1_data_88 = .data:0x00000088; // type:object size:0xC +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0xC data:float +lbl_1_data_58 = .data:0x00000058; // type:object size:0xC data:float +lbl_1_data_64 = .data:0x00000064; // type:object size:0xC data:float +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC data:float +lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC data:float +lbl_1_data_88 = .data:0x00000088; // type:object size:0xC data:float lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 -lbl_1_data_98 = .data:0x00000098; // type:object size:0xC -lbl_1_data_A4 = .data:0x000000A4; // type:object size:0xC +lbl_1_data_98 = .data:0x00000098; // type:object size:0xC data:float +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0xC data:float lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x200 lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x8 lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0xC lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x10 -lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x40 +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x40 data:float lbl_1_data_314 = .data:0x00000314; // type:object size:0xC lbl_1_data_320 = .data:0x00000320; // type:object size:0x6 lbl_1_data_326 = .data:0x00000326; // type:object size:0x6 -lbl_1_data_32C = .data:0x0000032C; // type:object size:0x24 -lbl_1_data_350 = .data:0x00000350; // type:object size:0x18 +lbl_1_data_32C = .data:0x0000032C; // type:object size:0x24 data:float +lbl_1_data_350 = .data:0x00000350; // type:object size:0x18 data:float lbl_1_data_368 = .data:0x00000368; // type:object size:0x4 -lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0xC -lbl_1_data_384 = .data:0x00000384; // type:object size:0xC -lbl_1_data_390 = .data:0x00000390; // type:object size:0xC +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC data:float +lbl_1_data_378 = .data:0x00000378; // type:object size:0xC data:float +lbl_1_data_384 = .data:0x00000384; // type:object size:0xC data:float +lbl_1_data_390 = .data:0x00000390; // type:object size:0xC data:float lbl_1_data_39C = .data:0x0000039C; // type:object size:0x50 lbl_1_data_3EC = .data:0x000003EC; // type:object size:0x50 lbl_1_data_43C = .data:0x0000043C; // type:object size:0x50 lbl_1_data_48C = .data:0x0000048C; // type:object size:0x50 -lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x18 data:string -lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x9 data:string -lbl_1_data_4FD = .data:0x000004FD; // type:object size:0x6 data:string -lbl_1_data_503 = .data:0x00000503; // type:object size:0x1D data:string +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x18 scope:local data:string +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x9 scope:local data:string +lbl_1_data_4FD = .data:0x000004FD; // type:object size:0x6 scope:local data:string +lbl_1_data_503 = .data:0x00000503; // type:object size:0x1D scope:local data:string jumptable_1_data_520 = .data:0x00000520; // type:object size:0x40 scope:local -lbl_1_data_560 = .data:0x00000560; // type:object size:0x8 data:string -lbl_1_data_568 = .data:0x00000568; // type:object size:0x1C +lbl_1_data_560 = .data:0x00000560; // type:object size:0x8 scope:local data:string +lbl_1_data_568 = .data:0x00000568; // type:object size:0x1B scope:local data:string jumptable_1_data_584 = .data:0x00000584; // type:object size:0x24 scope:local -lbl_1_data_5A8 = .data:0x000005A8; // type:object size:0x24 data:string +lbl_1_data_5A8 = .data:0x000005A8; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float @@ -200,7 +200,8 @@ lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 44b5348f..3c629e35 100644 --- a/configure.py +++ b/configure.py @@ -1149,7 +1149,7 @@ config.libs = [ Rel( "m441Dll", # Butterfly Blitz objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m441Dll/main.c"), + Object(Matching, "REL/m441Dll/main.c"), }, ), Rel( diff --git a/src/REL/m441Dll/main.c b/src/REL/m441Dll/main.c index 38896429..e6143406 100644 --- a/src/REL/m441Dll/main.c +++ b/src/REL/m441Dll/main.c @@ -872,7 +872,7 @@ void fn_1_3404(Work53E8 *arg0) } arg0->unk94 = 1; arg0->unk8C = arg0->unk0[1] + ((frandf() * arg0->unk0[1]) / 2); - temp_f25 = 1.0f - (lbl_1_bss_1A4 / 3600.0f); + temp_f25 = 1.0f - (lbl_1_bss_1A4 / (60.0f * REFRESH_RATE)); if (0.25f < temp_f25) { arg0->unk8C *= arg0->unk90 / (arg0->unk0[2] * temp_f25); } @@ -1491,7 +1491,7 @@ void fn_1_5C04(omObjData *object) if (2.0f > temp_f23) { temp_r31->unk24.x--; if (0.0f > temp_r31->unk24.x) { - temp_r31->unk24.x = 60.0f; + temp_r31->unk24.x = 1.0f * REFRESH_RATE; if (frandmod(100) > 50) { temp_r31->unk24.y = (frandf() * 220.0f) + 80.0f; } @@ -1619,7 +1619,7 @@ void fn_1_74F4(s32 arg0) work->unk18.z = 0; work->unk38 = 0; work->unk18.y = 2; - work->unk24.x = (frandf() * 180.0f) + 180.0f; + work->unk24.x = (frandf() * (3.0f * REFRESH_RATE)) + (3.0f * REFRESH_RATE); if (arg0) { work->unk18.y = 3; work->unk18.x = 180.0f - (frandf() * 120.0f); @@ -1821,7 +1821,7 @@ void fn_1_8D58(omObjData *object) WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); object->func = fn_1_AA4C; } - lbl_1_bss_24 += (1.0f / 60.0f); + lbl_1_bss_24 += (1.0f / REFRESH_RATE); if (360.0f <= lbl_1_bss_24) { lbl_1_bss_24 -= 360.0f; } @@ -1850,8 +1850,8 @@ void fn_1_8D58(omObjData *object) case 1002: lbl_1_bss_28++; - fn_1_13DC(lbl_1_bss_28 / 180.0f, &lbl_1_data_40); - if (180.0f <= lbl_1_bss_28) { + fn_1_13DC(lbl_1_bss_28 / (3.0f * REFRESH_RATE), &lbl_1_data_40); + if ((3.0f * REFRESH_RATE) <= lbl_1_bss_28) { object->work[0]++; fn_1_1350(&lbl_1_data_34, &lbl_1_data_40, &lbl_1_data_4C); } @@ -1869,8 +1869,8 @@ void fn_1_8D58(omObjData *object) } if (!MGSeqStatGet(lbl_1_bss_19E)) { object->work[0]++; - lbl_1_bss_1A4 = 3600; - lbl_1_bss_19C = MGSeqTimerCreate(lbl_1_bss_1A4 / 60); + lbl_1_bss_1A4 = 60 * REFRESH_RATE; + lbl_1_bss_19C = MGSeqTimerCreate(lbl_1_bss_1A4 / REFRESH_RATE); lbl_1_bss_19E = -1; } } @@ -1881,7 +1881,7 @@ void fn_1_8D58(omObjData *object) lbl_1_bss_1A4--; if (lbl_1_bss_1A4 < 0) { object->work[0] = 1005; - lbl_1_bss_1A4 = 3600; + lbl_1_bss_1A4 = 60 * REFRESH_RATE; lbl_1_bss_28 = 0; } break; @@ -1913,9 +1913,9 @@ void fn_1_8D58(omObjData *object) case 1006: lbl_1_bss_28++; - fn_1_13DC(lbl_1_bss_28 / 120.0f, &lbl_1_data_64); - if (120.0f <= lbl_1_bss_28) { - lbl_1_bss_28 = 120.0f; + fn_1_13DC(lbl_1_bss_28 / (2.0f * REFRESH_RATE), &lbl_1_data_64); + if ((2.0f * REFRESH_RATE) <= lbl_1_bss_28) { + lbl_1_bss_28 = 2.0f * REFRESH_RATE; for (i = 0; i < 4; i++) { float temp; if (OM_GET_DATA_PTR(lbl_1_bss_48[i], Work53E8)->unk98 != 2010) { From e51cba8941696356bdca0cf5e9f47a2d7f47806f Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 18 Nov 2024 03:13:05 +0100 Subject: [PATCH 021/178] Ported m442Dll/main.c, score.c needs bss fixing --- config/GMPP01_00/rels/m442Dll/splits.txt | 15 + config/GMPP01_00/rels/m442Dll/symbols.txt | 386 +++++++++++----------- configure.py | 2 +- src/REL/m442Dll/main.c | 86 +++-- 4 files changed, 267 insertions(+), 222 deletions(-) diff --git a/config/GMPP01_00/rels/m442Dll/splits.txt b/config/GMPP01_00/rels/m442Dll/splits.txt index 531cd645..87722ecf 100644 --- a/config/GMPP01_00/rels/m442Dll/splits.txt +++ b/config/GMPP01_00/rels/m442Dll/splits.txt @@ -5,3 +5,18 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m442Dll/main.c: + .text start:0x000000A0 end:0x000091B8 + .rodata start:0x00000000 end:0x000001D0 + .data start:0x00000000 end:0x00000268 + .bss start:0x00000000 end:0x00011F48 + +REL/m442Dll/score.c: + .text start:0x000091B8 end:0x0000997C + .rodata start:0x000001D0 end:0x00000200 + .data start:0x00000268 end:0x00000274 + .bss start:0x00011F48 end:0x00011F58 diff --git a/config/GMPP01_00/rels/m442Dll/symbols.txt b/config/GMPP01_00/rels/m442Dll/symbols.txt index f7292ca9..c50572e9 100644 --- a/config/GMPP01_00/rels/m442Dll/symbols.txt +++ b/config/GMPP01_00/rels/m442Dll/symbols.txt @@ -1,222 +1,234 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2D4 +ObjectSetup = .text:0x000000A0; // type:function size:0x2D4 fn_1_374 = .text:0x00000374; // type:function size:0x10 fn_1_384 = .text:0x00000384; // type:function size:0x10 fn_1_394 = .text:0x00000394; // type:function size:0xB4 fn_1_448 = .text:0x00000448; // type:function size:0x5E8 fn_1_A30 = .text:0x00000A30; // type:function size:0x60 fn_1_A90 = .text:0x00000A90; // type:function size:0x31C -fn_1_DAC = .text:0x00000DAC; // type:function size:0x68 -fn_1_E14 = .text:0x00000E14; // type:function size:0x84 -fn_1_E98 = .text:0x00000E98; // type:function size:0x380 -fn_1_1218 = .text:0x00001218; // type:function size:0x30 -fn_1_1248 = .text:0x00001248; // type:function size:0xDE0 -fn_1_2028 = .text:0x00002028; // type:function size:0x244 -fn_1_226C = .text:0x0000226C; // type:function size:0xF9C -fn_1_3208 = .text:0x00003208; // type:function size:0x3B0 -fn_1_35B8 = .text:0x000035B8; // type:function size:0xAC -fn_1_3664 = .text:0x00003664; // type:function size:0x160 -fn_1_37C4 = .text:0x000037C4; // type:function size:0x150 -fn_1_3914 = .text:0x00003914; // type:function size:0x1DC -fn_1_3AF0 = .text:0x00003AF0; // type:function size:0x13C -fn_1_3C2C = .text:0x00003C2C; // type:function size:0x74 -fn_1_3CA0 = .text:0x00003CA0; // type:function size:0x180 -fn_1_3E20 = .text:0x00003E20; // type:function size:0x50 -fn_1_3E70 = .text:0x00003E70; // type:function size:0x58 -fn_1_3EC8 = .text:0x00003EC8; // type:function size:0x4 -fn_1_3ECC = .text:0x00003ECC; // type:function size:0x4A4 -fn_1_4370 = .text:0x00004370; // type:function size:0x4 -fn_1_4374 = .text:0x00004374; // type:function size:0xDC -fn_1_4450 = .text:0x00004450; // type:function size:0x418 -fn_1_4868 = .text:0x00004868; // type:function size:0xC6C -fn_1_54D4 = .text:0x000054D4; // type:function size:0x450 -fn_1_5924 = .text:0x00005924; // type:function size:0xA8 -fn_1_59CC = .text:0x000059CC; // type:function size:0x88 -fn_1_5A54 = .text:0x00005A54; // type:function size:0x494 -fn_1_5EE8 = .text:0x00005EE8; // type:function size:0x5D8 -fn_1_64C0 = .text:0x000064C0; // type:function size:0x700 -fn_1_6BC0 = .text:0x00006BC0; // type:function size:0x114 -fn_1_6CD4 = .text:0x00006CD4; // type:function size:0x5C -fn_1_6D30 = .text:0x00006D30; // type:function size:0x5A0 -fn_1_72D0 = .text:0x000072D0; // type:function size:0x318 -fn_1_75E8 = .text:0x000075E8; // type:function size:0x158 -fn_1_7740 = .text:0x00007740; // type:function size:0x114 -fn_1_7854 = .text:0x00007854; // type:function size:0x48 -fn_1_789C = .text:0x0000789C; // type:function size:0x3FC -fn_1_7C98 = .text:0x00007C98; // type:function size:0x230 -fn_1_7EC8 = .text:0x00007EC8; // type:function size:0x664 -fn_1_852C = .text:0x0000852C; // type:function size:0xC8 -fn_1_85F4 = .text:0x000085F4; // type:function size:0x104 -fn_1_86F8 = .text:0x000086F8; // type:function size:0x4C -fn_1_8744 = .text:0x00008744; // type:function size:0x250 -fn_1_8994 = .text:0x00008994; // type:function size:0x764 -fn_1_90F8 = .text:0x000090F8; // type:function size:0x10 -fn_1_9108 = .text:0x00009108; // type:function size:0xB0 -fn_1_91B8 = .text:0x000091B8; // type:function size:0x28C -fn_1_9444 = .text:0x00009444; // type:function size:0x74 -fn_1_94B8 = .text:0x000094B8; // type:function size:0x50 -fn_1_9508 = .text:0x00009508; // type:function size:0x24 -fn_1_952C = .text:0x0000952C; // type:function size:0x30 -fn_1_955C = .text:0x0000955C; // type:function size:0x1BC -fn_1_9718 = .text:0x00009718; // type:function size:0x78 -fn_1_9790 = .text:0x00009790; // type:function size:0x88 -fn_1_9818 = .text:0x00009818; // type:function size:0x164 +fn_1_D9C = .text:0x00000DAC; // type:function size:0x68 +fn_1_E04 = .text:0x00000E14; // type:function size:0x84 +fn_1_E88 = .text:0x00000E98; // type:function size:0x380 +fn_1_1200 = .text:0x00001218; // type:function size:0x30 +fn_1_1230 = .text:0x00001248; // type:function size:0xDE0 +fn_1_2010 = .text:0x00002028; // type:function size:0x244 +fn_1_2254 = .text:0x0000226C; // type:function size:0xF9C +fn_1_31FC = .text:0x00003208; // type:function size:0x3B0 +fn_1_35AC = .text:0x000035B8; // type:function size:0xAC +fn_1_3658 = .text:0x00003664; // type:function size:0x160 +fn_1_37B8 = .text:0x000037C4; // type:function size:0x150 +fn_1_3908 = .text:0x00003914; // type:function size:0x1DC +fn_1_3AE4 = .text:0x00003AF0; // type:function size:0x13C +fn_1_3C20 = .text:0x00003C2C; // type:function size:0x74 +fn_1_3C94 = .text:0x00003CA0; // type:function size:0x180 +fn_1_3E14 = .text:0x00003E20; // type:function size:0x50 +fn_1_3E64 = .text:0x00003E70; // type:function size:0x58 +fn_1_3EBC = .text:0x00003EC8; // type:function size:0x4 +fn_1_3EC0 = .text:0x00003ECC; // type:function size:0x4A4 +fn_1_4364 = .text:0x00004370; // type:function size:0x4 +fn_1_4368 = .text:0x00004374; // type:function size:0xDC +fn_1_4444 = .text:0x00004450; // type:function size:0x418 +fn_1_485C = .text:0x00004868; // type:function size:0xC6C +fn_1_54C8 = .text:0x000054D4; // type:function size:0x450 +fn_1_5918 = .text:0x00005924; // type:function size:0xA8 +fn_1_59C0 = .text:0x000059CC; // type:function size:0x88 +fn_1_5A48 = .text:0x00005A54; // type:function size:0x494 +fn_1_5EDC = .text:0x00005EE8; // type:function size:0x5D8 +fn_1_64B4 = .text:0x000064C0; // type:function size:0x700 +fn_1_6BB4 = .text:0x00006BC0; // type:function size:0x114 +fn_1_6CC8 = .text:0x00006CD4; // type:function size:0x5C +fn_1_6D24 = .text:0x00006D30; // type:function size:0x5A0 +fn_1_72C4 = .text:0x000072D0; // type:function size:0x318 +fn_1_75DC = .text:0x000075E8; // type:function size:0x158 +fn_1_7734 = .text:0x00007740; // type:function size:0x114 +fn_1_7848 = .text:0x00007854; // type:function size:0x48 +fn_1_7890 = .text:0x0000789C; // type:function size:0x3FC +fn_1_7C8C = .text:0x00007C98; // type:function size:0x230 +fn_1_7EBC = .text:0x00007EC8; // type:function size:0x664 +fn_1_8520 = .text:0x0000852C; // type:function size:0xC8 +fn_1_85E8 = .text:0x000085F4; // type:function size:0x104 +fn_1_86EC = .text:0x000086F8; // type:function size:0x4C +fn_1_8738 = .text:0x00008744; // type:function size:0x250 +fn_1_8988 = .text:0x00008994; // type:function size:0x764 +fn_1_90EC = .text:0x000090F8; // type:function size:0x10 +fn_1_90FC = .text:0x00009108; // type:function size:0xB0 +fn_1_91AC = .text:0x000091B8; // type:function size:0x28C +fn_1_9438 = .text:0x00009444; // type:function size:0x74 +fn_1_94AC = .text:0x000094B8; // type:function size:0x50 +fn_1_94FC = .text:0x00009508; // type:function size:0x24 +fn_1_9520 = .text:0x0000952C; // type:function size:0x30 +fn_1_9550 = .text:0x0000955C; // type:function size:0x1BC +fn_1_970C = .text:0x00009718; // type:function size:0x78 +fn_1_9784 = .text:0x00009790; // type:function size:0x88 +fn_1_980C = .text:0x00009818; // type:function size:0x164 _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:0x10 data:4byte -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:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -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:0x4 data:float -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:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0xC data:4byte -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -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:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -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 +__fakeHalf = .rodata:0x00000000; // type:object size:0x8 data:double +__fakeThree = .rodata:0x00000008; // type:object size:0x8 data:double +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:0x10 scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 scope:local data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0xC scope:local data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_data_0 = .data:0x00000000; // type:object size:0x54 data:float lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float lbl_1_data_60 = .data:0x00000060; // type:object size:0xC data:float -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x4 -lbl_1_data_70 = .data:0x00000070; // type:object size:0xC -lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC -lbl_1_data_88 = .data:0x00000088; // type:object size:0x24 +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x4 data:byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC data:float +lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC data:float +lbl_1_data_88 = .data:0x00000088; // type:object size:0x23 scope:local data:string lbl_1_data_AC = .data:0x000000AC; // type:object size:0x4 data:4byte jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x30 scope:local -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x1C data:string -lbl_1_data_FC = .data:0x000000FC; // type:object size:0x1C -lbl_1_data_118 = .data:0x00000118; // type:object size:0x8 -lbl_1_data_120 = .data:0x00000120; // type:object size:0x30 -lbl_1_data_150 = .data:0x00000150; // type:object size:0x1A -lbl_1_data_16A = .data:0x0000016A; // type:object size:0x20 -lbl_1_data_18A = .data:0x0000018A; // type:object size:0x16 -lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xC data:string -lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x1 data:byte -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x1 data:byte -lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x30 -lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x1 data:byte -lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 -lbl_1_data_218 = .data:0x00000218; // type:object size:0x1 data:byte -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x20 -lbl_1_data_23C = .data:0x0000023C; // type:object size:0xC -lbl_1_data_248 = .data:0x00000248; // type:object size:0x8 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x1C scope:local data:string +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x1C data:4byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0x8 data:4byte +lbl_1_data_120 = .data:0x00000120; // type:object size:0x30 data:float +lbl_1_data_150 = .data:0x00000150; // type:object size:0x19 scope:local data:string +lbl_1_data_16A = .data:0x0000016A; // type:object size:0x20 data:2byte +lbl_1_data_18A = .data:0x0000018A; // type:object size:0x14 data:2byte +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC data:4byte +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xC scope:local data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x4 data:byte +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x4 data:byte +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x30 data:float +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x4 data:byte +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x18 data:float +lbl_1_data_20C = .data:0x0000020C; // type:object size:0xC data:byte +lbl_1_data_218 = .data:0x00000218; // type:object size:0x4 data:byte +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x20 data:2byte +lbl_1_data_23C = .data:0x0000023C; // type:object size:0xC data:4byte +lbl_1_data_248 = .data:0x00000248; // type:object size:0x8 data:2byte lbl_1_data_250 = .data:0x00000250; // type:object size:0x8 data:float lbl_1_data_258 = .data:0x00000258; // type:object size:0x10 lbl_1_data_268 = .data:0x00000268; // type:object size:0xC lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC data:float -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x3C -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0xC000 data:2byte -lbl_1_bss_C060 = .bss:0x0000C060; // type:object size:0x28 data:2byte -lbl_1_bss_C088 = .bss:0x0000C088; // type:object size:0x974 -lbl_1_bss_C9FC = .bss:0x0000C9FC; // type:object size:0x5000 data:4byte -lbl_1_bss_119FC = .bss:0x000119FC; // type:object size:0x4 data:4byte -lbl_1_bss_11A00 = .bss:0x00011A00; // type:object size:0x271 -lbl_1_bss_11C71 = .bss:0x00011C71; // type:object size:0x273 +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x3C data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0xC000 data:2byte +lbl_1_bss_C05C = .bss:0x0000C05C; // type:object size:0x28 data:2byte +lbl_1_bss_C084 = .bss:0x0000C084; // type:object size:0x974 +lbl_1_bss_C9F8 = .bss:0x0000C9F8; // type:object size:0x5000 data:4byte +lbl_1_bss_119F8 = .bss:0x000119F8; // type:object size:0x4 data:4byte +lbl_1_bss_119FC = .bss:0x000119FC; // type:object size:0x271 +lbl_1_bss_11C6D = .bss:0x00011C6D; // type:object size:0x271 +lbl_1_bss_11EE0 = .bss:0x00011EE0; // type:object size:0x4 data:4byte lbl_1_bss_11EE4 = .bss:0x00011EE4; // type:object size:0x4 data:4byte -lbl_1_bss_11EE8 = .bss:0x00011EE8; // type:object size:0x4 data:4byte -lbl_1_bss_11EEC = .bss:0x00011EEC; // type:object size:0x2 data:2byte -lbl_1_bss_11EF0 = .bss:0x00011EF0; // type:object size:0x10 +lbl_1_bss_11EE8 = .bss:0x00011EE8; // type:object size:0x2 data:2byte +lbl_1_bss_11EEC = .bss:0x00011EEC; // type:object size:0x10 data:2byte +lbl_1_bss_11EFC = .bss:0x00011EFC; // type:object size:0x4 data:4byte lbl_1_bss_11F00 = .bss:0x00011F00; // type:object size:0x4 data:4byte -lbl_1_bss_11F04 = .bss:0x00011F04; // type:object size:0x4 data:4byte -lbl_1_bss_11F08 = .bss:0x00011F08; // type:object size:0xC -lbl_1_bss_11F14 = .bss:0x00011F14; // type:object size:0x4 data:4byte +lbl_1_bss_11F04 = .bss:0x00011F04; // type:object size:0xC data:4byte +lbl_1_bss_11F10 = .bss:0x00011F10; // type:object size:0x4 data:4byte +lbl_1_bss_11F14 = .bss:0x00011F14; // type:object size:0x2 data:2byte +lbl_1_bss_11F16 = .bss:0x00011F16; // type:object size:0x2 data:2byte lbl_1_bss_11F18 = .bss:0x00011F18; // type:object size:0x2 data:2byte lbl_1_bss_11F1A = .bss:0x00011F1A; // type:object size:0x2 data:2byte lbl_1_bss_11F1C = .bss:0x00011F1C; // type:object size:0x2 data:2byte lbl_1_bss_11F1E = .bss:0x00011F1E; // type:object size:0x2 data:2byte -lbl_1_bss_11F20 = .bss:0x00011F20; // type:object size:0x2 data:2byte +lbl_1_bss_11F20 = .bss:0x00011F20; // type:object size:0x4 data:4byte lbl_1_bss_11F24 = .bss:0x00011F24; // type:object size:0x4 data:4byte lbl_1_bss_11F28 = .bss:0x00011F28; // type:object size:0x4 data:4byte lbl_1_bss_11F2C = .bss:0x00011F2C; // type:object size:0x4 data:4byte lbl_1_bss_11F30 = .bss:0x00011F30; // type:object size:0x4 data:4byte -lbl_1_bss_11F34 = .bss:0x00011F34; // type:object size:0x8 data:4byte +lbl_1_bss_11F34 = .bss:0x00011F34; // type:object size:0x4 data:4byte +lbl_1_bss_11F38 = .bss:0x00011F38; // type:object size:0x4 data:4byte lbl_1_bss_11F3C = .bss:0x00011F3C; // type:object size:0x4 data:4byte lbl_1_bss_11F40 = .bss:0x00011F40; // type:object size:0x4 data:4byte -lbl_1_bss_11F44 = .bss:0x00011F44; // type:object size:0xC data:4byte +lbl_1_bss_11F44 = .bss:0x00011F44; // type:object size:0x4 data:4byte +lbl_1_bss_11F48 = .bss:0x00011F48; // type:object size:0x4 data:4byte +lbl_1_bss_11F4C = .bss:0x00011F4C; // type:object size:0x4 data:4byte lbl_1_bss_11F50 = .bss:0x00011F50; // type:object size:0x4 data:4byte lbl_1_bss_11F54 = .bss:0x00011F54; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 3c629e35..c8eccedb 100644 --- a/configure.py +++ b/configure.py @@ -1155,7 +1155,7 @@ config.libs = [ Rel( "m442Dll", # Barrel Baron objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/main.c"), + Object(Matching, "REL/m442Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/score.c"), }, ), diff --git a/src/REL/m442Dll/main.c b/src/REL/m442Dll/main.c index b6e60e1e..28beaccd 100644 --- a/src/REL/m442Dll/main.c +++ b/src/REL/m442Dll/main.c @@ -1,3 +1,4 @@ +#include "version.h" #define HUSPR_USE_OLD_DEFS #include "ext_math.h" #include "game/audio.h" @@ -213,6 +214,9 @@ M442StructBssC084 lbl_1_bss_C084[11][11]; M442StructBssC05C lbl_1_bss_C05C[2]; M442StructBss5C lbl_1_bss_5C[0x400]; float lbl_1_bss_20[0xF]; +#if VERSION_PAL +s32 lbl_1_bss_20_pal; +#endif Vec lbl_1_bss_14; s16 lbl_1_bss_12; s16 lbl_1_bss_10; @@ -268,9 +272,9 @@ u32 fn_1_384(void) void fn_1_394(omObjData *object) { lbl_1_bss_11F30 = 0; - lbl_1_bss_11F24 = 60; + lbl_1_bss_11F24 = REFRESH_RATE; lbl_1_bss_11F1C = 60; - lbl_1_bss_11F1A = 60; + lbl_1_bss_11F1A = REFRESH_RATE; lbl_1_bss_11F18 = -1; lbl_1_bss_11F16 = 0; lbl_1_bss_11EE8 = 0; @@ -286,19 +290,19 @@ void fn_1_448(omObjData *object) switch (lbl_1_bss_11F30) { case 0: - if (lbl_1_bss_11F24 == 60) { + if (lbl_1_bss_11F24 == REFRESH_RATE) { HuAudFXPlay(0x71B); HuAudFXPlay(0x71F); } if (--lbl_1_bss_11F24 == 0) { lbl_1_bss_11F30 = 1; - lbl_1_bss_11F24 = 0x78; + lbl_1_bss_11F24 = 2 * REFRESH_RATE; } break; case 1: if (--lbl_1_bss_11F24 == 0) { lbl_1_bss_11F30 = 2; - lbl_1_bss_11F24 = 0x78; + lbl_1_bss_11F24 = 2 * REFRESH_RATE; } break; case 2: @@ -320,7 +324,7 @@ void fn_1_448(omObjData *object) if (--lbl_1_bss_11F1A == 0) { lbl_1_bss_11F1C -= 1; MGSeqParamSet(lbl_1_bss_10, 1, lbl_1_bss_11F1C); - lbl_1_bss_11F1A = 0x3C; + lbl_1_bss_11F1A = REFRESH_RATE; } if (lbl_1_bss_11F1C == 0 || lbl_1_bss_11EE4 == 0) { lbl_1_bss_11F30 = 5; @@ -337,13 +341,13 @@ void fn_1_448(omObjData *object) if (GWMGRecordGet(4) < lbl_1_bss_11EE8) { GWMGRecordSet(4, lbl_1_bss_11EE8); lbl_1_bss_11F30 = 6; - lbl_1_bss_11F24 = 60; + lbl_1_bss_11F24 = REFRESH_RATE; lbl_1_bss_12 = MGSeqCreate(0xE, lbl_1_bss_11EE8); fn_1_94AC(1); } else { lbl_1_bss_11F30 = 9; - lbl_1_bss_11F24 = 60; + lbl_1_bss_11F24 = REFRESH_RATE; } mgRecordExtra = lbl_1_bss_11EE8; } @@ -351,7 +355,7 @@ void fn_1_448(omObjData *object) case 6: if (MGSeqStatGet(lbl_1_bss_12) == 0) { lbl_1_bss_11F30 = 9; - lbl_1_bss_11F24 = 60; + lbl_1_bss_11F24 = REFRESH_RATE; } break; case 9: @@ -363,7 +367,7 @@ void fn_1_448(omObjData *object) else { HuAudSStreamPlay(4); } - lbl_1_bss_11F24 = 0xD2; + lbl_1_bss_11F24 = 3.5f * REFRESH_RATE; } break; case 11: @@ -410,6 +414,10 @@ void fn_1_A90(Process *arg0) lbl_1_bss_11F28[0] = lbl_1_bss_11F28[1] = lbl_1_bss_11F28[2] = lbl_1_bss_11F28[3] = -1; lbl_1_bss_11F20 = 0; +#if VERSION_PAL + lbl_1_bss_20_pal = fn_1_90FC(); +#endif + for (var_r31 = 0; var_r31 < 4; var_r31++) { if (GWPlayerCfg[var_r31].iscom != 1) { break; @@ -495,7 +503,11 @@ void fn_1_E88(omObjData *object) memset(var_r30, 0, sizeof(M442MainWork)); var_r30->unk_02 = lbl_1_bss_11F20++; var_r30->unk_04 = GWPlayerCfg[var_r30->unk_02].pad_idx; +#if VERSION_NTSC var_r30->unk_0C = fn_1_90FC(); +#else + var_r30->unk_0C = lbl_1_bss_20_pal; +#endif var_r26 = GWPlayerCfg[var_r30->unk_02].character; var_r30->unk_10 = var_r26; var_r30->unk_12 = GWPlayerCfg[var_r30->unk_02].diff; @@ -740,7 +752,7 @@ void fn_1_1230(omObjData *object) var_r30->unk_06 = var_f29 * sind(var_r30->unk_18); var_r30->unk_07 = var_f29 * -cosd(var_r30->unk_18); - if (++var_r30->unk_7C > 300) { + if (++var_r30->unk_7C > 5 * REFRESH_RATE) { var_r30->unk_00_field2 = 1; var_r30->unk_7C = 0; } @@ -863,18 +875,18 @@ void fn_1_2254(omObjData *object) if (var_f27 > 72.0f) { var_f27 = 72.0f; } - var_f26 = (10.0f * var_f27) / 72.0f; + var_f26 = ((VERSION_NTSC ? 10.0f : 12.0f) * var_f27) / 72.0f; var_r31->unk_24.x = var_f31 * var_f26; var_r31->unk_24.z = var_f30 * var_f26; var_r31->unk_1C = var_f26; object->rot.y = fn_1_85E8(object->rot.y, atan2d(var_r31->unk_24.x, var_r31->unk_24.z), 0.5f); - if (var_r31->unk_1C < 7.5f) { + if (var_r31->unk_1C < (450.0f / REFRESH_RATE)) { var_r29 = 1; - var_f28 = var_r31->unk_1C / 7.5f; + var_f28 = var_r31->unk_1C / (450.0f / REFRESH_RATE); } else { var_r29 = 2; - var_f28 = var_r31->unk_1C / 10.0f; + var_f28 = var_r31->unk_1C / (VERSION_NTSC ? 10.0f : 12.0f); } } else { @@ -935,7 +947,7 @@ void fn_1_2254(omObjData *object) } if ((var_r31->unk_48 >= 0) && (lbl_1_bss_C9F8[var_r31->unk_48].unk_0C < 3)) { lbl_1_bss_C9F8[var_r31->unk_48].unk_0C += 1; - lbl_1_bss_C9F8[var_r31->unk_48].unk_0E = 120; + lbl_1_bss_C9F8[var_r31->unk_48].unk_0E = 2 * REFRESH_RATE; HuAudFXPlay(0x71C); if (lbl_1_bss_C9F8[var_r31->unk_48].unk_0C == 3) { var_r31->unk_00_field2 = 1; @@ -998,21 +1010,27 @@ void fn_1_2254(omObjData *object) } switch (var_r31->unk_40) { case 0: - var_r31->unk_44 = 0.75 + sind(((90.0f * (var_r31->unk_42 % 15)) / 15.0f)); - if ((var_r31->unk_42 % 20) == 0) { - omVibrate(var_r31->unk_02, 0xC, 0xC, 0); + var_r31->unk_44 = 0.75 + sind(((90.0f * (var_r31->unk_42 % (REFRESH_RATE / 4))) / (float)(REFRESH_RATE / 4))); + if (VERSION_NTSC ? 1 : var_r31->unk_0C == 1) { + if ((var_r31->unk_42 % (REFRESH_RATE / 3)) == 0) { + omVibrate(var_r31->unk_02, 0xC, 0xC, 0); + } } break; case 1: - var_r31->unk_44 = 0.75 + (0.75 * sind(((90.0f * (var_r31->unk_42 % 30)) / 30.0f))); - if ((var_r31->unk_42 % 20) == 0) { - omVibrate(var_r31->unk_02, 0xC, 4, 2); + var_r31->unk_44 = 0.75 + (0.75 * sind(((90.0f * (var_r31->unk_42 % (REFRESH_RATE / 2))) / (0.5f * REFRESH_RATE)))); + if (VERSION_NTSC ? 1 : var_r31->unk_0C == 1) { + if ((var_r31->unk_42 % (REFRESH_RATE / 3)) == 0) { + omVibrate(var_r31->unk_02, 0xC, 4, 2); + } } break; case 2: - var_r31->unk_44 = 0.75 + (0.5 * sind(((90.0f * (var_r31->unk_42 % 60)) / 60.0f))); - if ((var_r31->unk_42 % 20) == 0) { - omVibrate(var_r31->unk_02, 12, 6, 6); + var_r31->unk_44 = 0.75 + (0.5 * sind(((90.0f * (var_r31->unk_42 % REFRESH_RATE)) / (1.0f * REFRESH_RATE)))); + if (VERSION_NTSC ? 1 : var_r31->unk_0C == 1) { + if ((var_r31->unk_42 % (REFRESH_RATE / 3)) == 0) { + omVibrate(var_r31->unk_02, 12, 6, 6); + } } break; } @@ -1273,7 +1291,7 @@ void fn_1_3C20(omObjData *object) Hu3DMotionOverlayReset(object->model[0]); Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); - var_r30->unk_3C = 10; + var_r30->unk_3C = REFRESH_RATE / 5.5; object->func = fn_1_3C94; } @@ -1414,7 +1432,7 @@ void fn_1_4444(s32 arg0) lbl_1_bss_5C[arg0].unk_04 = 0.0f; lbl_1_bss_5C[arg0].unk_08 = 100.0f * (18.0f * ((frand() & 0x1FF) - 256.0f)) / 256; lbl_1_bss_5C[arg0].unk_0C = lbl_1_bss_5C[arg0].unk_00; - lbl_1_bss_5C[arg0].unk_10 = 0.41666666f + (1.6666666f * (frand() & 0xFF) / 256); + lbl_1_bss_5C[arg0].unk_10 = (25.0f / REFRESH_RATE) + ((100.0f / REFRESH_RATE) * (frand() & 0xFF) / 256); lbl_1_bss_5C[arg0].unk_18 = lbl_1_bss_5C[arg0].unk_1A = (frand() & 0x3F) + 0x20; lbl_1_bss_5C[arg0].unk_1C = 0.1f + (0.9f * (frand() & 0xFF) / 256); lbl_1_bss_5C[arg0].unk_20 = 360.0f * (frand() & 0xFF) / 256; @@ -1965,7 +1983,7 @@ void fn_1_72C4(omObjData *object) Hu3DModelAttrReset(object->model[1], HU3D_ATTR_DISPOFF); var_r31->unk_02 = 1; var_r31->unk_18 = 0.0f; - var_r31->unk_0C = 60; + var_r31->unk_0C = REFRESH_RATE; } break; case 1: @@ -1973,7 +1991,7 @@ void fn_1_72C4(omObjData *object) var_r31->unk_18 += 0.05f; } var_r31->unk_02 = 2; - var_r31->unk_0C = var_r31->unk_0E = 45; + var_r31->unk_0C = var_r31->unk_0E = 0.75 * REFRESH_RATE; var_r31->unk_10 = HuAudFXPlay(lbl_1_data_23C[var_r31->unk_14]); break; case 2: @@ -2070,11 +2088,11 @@ void fn_1_7890(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk34.x = 100.0 * (0.20000000298023224 * sind(var_f31)); var_r31->unk34.y = 0.0f; var_r31->unk34.z = 100.0 * (0.20000000298023224 * cosd(var_f31)); - var_f30 = 1.6666666f + (2.5f * (frand() & 0xFF) / 256); + var_f30 = (100.0f / REFRESH_RATE) + ((150.0f / REFRESH_RATE) * (frand() & 0xFF) / 256); var_f31 = 360.0f * (frand() & 0xFF) / 256; var_r31->unk08.x = var_f30 * sind(var_f31); var_r31->unk08.z = var_f30 * cosd(var_f31); - var_r31->unk08.y = 16.666666f * (frand() & 0xFF) / 256; + var_r31->unk08.y = (1000.0f / REFRESH_RATE) * (frand() & 0xFF) / 256; var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = var_r31->unk40.a = 0xFF; } } @@ -2085,7 +2103,7 @@ void fn_1_7890(ModelData *model, ParticleData *particle, Mtx matrix) var_r28++; } else { - var_r31->unk08.y += -0.50000006f; + var_r31->unk08.y += VERSION_NTSC ? -0.50000006f : -0.6f; var_r31->unk34.x += var_r31->unk08.x; var_r31->unk34.y += var_r31->unk08.y; var_r31->unk34.z += var_r31->unk08.z; @@ -2210,7 +2228,7 @@ void fn_1_8988(omObjData *arg0) case 1: fn_1_8738(0, 1, sind((90.0f * lbl_1_data_250[0]))); if (lbl_1_data_250[0] < 1.0f) { - lbl_1_data_250[0] += 0.016666668f; + lbl_1_data_250[0] += 1.0f / REFRESH_RATE; if (lbl_1_data_250[0] > 1.0f) { lbl_1_data_250[0] = 1.0f; return; @@ -2222,7 +2240,7 @@ void fn_1_8988(omObjData *arg0) case 2: fn_1_8738(1, 2, 1.0 - cosd((90.0f * lbl_1_data_250[1]))); if (lbl_1_data_250[1] < 1.0f) { - lbl_1_data_250[1] += 0.016666668f; + lbl_1_data_250[1] += 1.0f / REFRESH_RATE; if (lbl_1_data_250[1] > 1.0f) { lbl_1_data_250[1] = 1.0f; return; From 6e22db3fc5eceace9463397ede7bd82ea487e767 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 18 Nov 2024 03:13:17 +0100 Subject: [PATCH 022/178] Import version.h in m440Dll.h --- include/REL/m440Dll.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/REL/m440Dll.h b/include/REL/m440Dll.h index d4d806b2..ef9426e8 100644 --- a/include/REL/m440Dll.h +++ b/include/REL/m440Dll.h @@ -4,6 +4,8 @@ #include "dolphin/types.h" #include "game/hsfman.h" +#include "version.h" + #include "game/object.h" extern s32 rand8(void); From 8a96d23ba9fd02bbad7babf029bb032703894334 Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Sun, 17 Nov 2024 21:06:57 -0600 Subject: [PATCH 023/178] Match bootdll in PAL --- config/GMPE01_00/config.yml | 6 +- config/GMPE01_00/rels/bootDll/splits.txt | 8 +- config/GMPE01_00/rels/bootDll/symbols.txt | 39 +- config/GMPE01_01/config.yml | 6 +- config/GMPP01_00/config.yml | 4 + config/GMPP01_00/rels/bootDll/splits.txt | 14 + config/GMPP01_00/rels/bootDll/symbols.txt | 49 +-- config/GMPP01_02/config.yml | 4 + configure.py | 4 +- include/data_num/title.h | 39 ++ src/REL/bootDll/language.c | 280 +++++++++++++ src/REL/bootDll/main.c | 470 ++++++++++++++++------ src/REL/bootDll/nintendo_data.c | 15 - 13 files changed, 746 insertions(+), 192 deletions(-) create mode 100644 src/REL/bootDll/language.c delete mode 100644 src/REL/bootDll/nintendo_data.c diff --git a/config/GMPE01_00/config.yml b/config/GMPE01_00/config.yml index 9512c05c..7e4233af 100644 --- a/config/GMPE01_00/config.yml +++ b/config/GMPE01_00/config.yml @@ -19,9 +19,9 @@ modules: splits: config/GMPE01_00/rels/bootDll/splits.txt links: [] extract: - - symbol: logoNintendoData - binary: logoNintendoData.bin - header: logoNintendoData.inc + - symbol: nintendoData + binary: nintendoData.bin + header: nintendoData.inc - object: files/dll/instDll.rel hash: f09399fee83c63abfe2adb25341152adad959a93 symbols: config/GMPE01_00/rels/instDll/symbols.txt diff --git a/config/GMPE01_00/rels/bootDll/splits.txt b/config/GMPE01_00/rels/bootDll/splits.txt index 49f64a4a..14a67037 100644 --- a/config/GMPE01_00/rels/bootDll/splits.txt +++ b/config/GMPE01_00/rels/bootDll/splits.txt @@ -10,11 +10,7 @@ REL/executor.c: .text start:0x00000000 end:0x000000A0 REL/bootDll/main.c: - .text start:0x000000A0 end:0x00002944 + .text start:0x000000A0 end:0x000029C8 .rodata start:0x00000000 end:0x000000DC - .data start:0x00000000 end:0x000000A0 + .data start:0x00000000 end:0x0000311D .bss start:0x00000000 end:0x0000005C - -REL/bootDll/nintendo_data.c: - .text start:0x00002944 end:0x000029C8 - .data start:0x000000A0 end:0x0000311D diff --git a/config/GMPE01_00/rels/bootDll/symbols.txt b/config/GMPE01_00/rels/bootDll/symbols.txt index b576a34e..463f8400 100644 --- a/config/GMPE01_00/rels/bootDll/symbols.txt +++ b/config/GMPE01_00/rels/bootDll/symbols.txt @@ -1,14 +1,14 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global ObjectSetup = .text:0x000000A0; // type:function size:0x1CC -BootProc = .text:0x0000026C; // type:function size:0x78C scope:local +BootExec = .text:0x0000026C; // type:function size:0x78C UpdateDemoMess = .text:0x000009F8; // type:function size:0xC8 scope:local -ProgressiveProc = .text:0x00000AC0; // type:function size:0x6B8 scope:local -fn_1_1178 = .text:0x00001178; // type:function size:0x3B4 -fn_1_152C = .text:0x0000152C; // type:function size:0xBD4 -TitleInit = .text:0x00002100; // type:function size:0x374 scope:local -TitleProc = .text:0x00002474; // type:function size:0x4D0 scope:local -logoReadNintendo = .text:0x00002944; // type:function size:0x84 +BootProgExec = .text:0x00000AC0; // type:function size:0x6B8 +DebugCamOutView = .text:0x00001178; // type:function size:0x3B4 +DebugCamUpdate = .text:0x0000152C; // type:function size:0xBD4 +BootTitleCreate = .text:0x00002100; // type:function size:0x374 +BootTitleExec = .text:0x00002474; // type:function size:0x4D0 +NintendoDataDecode = .text:0x00002944; // type:function size:0x84 _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 scope:local data:float @@ -50,20 +50,21 @@ lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:d lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x24 scope:local data:string lbl_1_data_24 = .data:0x00000024; // type:object size:0x14 scope:local data:string -demoTimingTbl = .data:0x00000038; // type:object size:0x18 scope:local data:2byte -progressivePosTbl = .data:0x00000050; // type:object size:0x8 scope:local -lbl_1_data_58 = .data:0x00000058; // type:object size:0x4 scope:local +demoMessTimeTbl = .data:0x00000038; // type:object size:0x18 scope:local data:2byte +progPosTbl = .data:0x00000050; // type:object size:0x8 scope:local +debugCamTbl = .data:0x00000058; // type:object size:0x4 scope:local lbl_1_data_5C = .data:0x0000005C; // type:object size:0x1A scope:local data:string lbl_1_data_76 = .data:0x00000076; // type:object size:0x13 scope:local data:string lbl_1_data_89 = .data:0x00000089; // type:object size:0x17 scope:local -logoNintendoData = .data:0x000000A0; // type:object size:0x307D align:32 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 +nintendoData = .data:0x000000A0; // type:object size:0x307D align:32 +debugCamOnF = .bss:0x00000000; // type:object size:0x4 lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 -titleGroup = .bss:0x00000006; // type:object size:0x2 scope:local data:2byte -titleModel = .bss:0x00000008; // type:object size:0x6 scope:local data:2byte -demoWin = .bss:0x0000000E; // type:object size:0x2 scope:local data:2byte +bootGrpId = .bss:0x00000006; // type:object size:0x2 scope:local data:2byte +titleMdlId = .bss:0x00000008; // type:object size:0x6 scope:local data:2byte +demoWinId = .bss:0x0000000E; // type:object size:0x2 scope:local data:2byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0xC -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:float -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:float -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x18 data:float -objman = .bss:0x00000054; // type:object size:0x8 scope:local data:4byte +debugCamZoom = .bss:0x0000001C; // type:object size:0x8 data:float +debugCamPos = .bss:0x00000024; // type:object size:0x18 data:float +debugCamRot = .bss:0x0000003C; // type:object size:0x18 data:float +objman = .bss:0x00000054; // type:object size:0x4 data:4byte +debugOutView = .bss:0x00000058; // type:object size:0x4 scope:local data:4byte diff --git a/config/GMPE01_01/config.yml b/config/GMPE01_01/config.yml index f9236cb2..8445dc5f 100644 --- a/config/GMPE01_01/config.yml +++ b/config/GMPE01_01/config.yml @@ -19,9 +19,9 @@ modules: splits: config/GMPE01_00/rels/bootDll/splits.txt links: [] extract: - - symbol: logoNintendoData - binary: logoNintendoData.bin - header: logoNintendoData.inc + - symbol: nintendoData + binary: nintendoData.bin + header: nintendoData.inc - object: files/dll/instDll.rel hash: f09399fee83c63abfe2adb25341152adad959a93 symbols: config/GMPE01_00/rels/instDll/symbols.txt diff --git a/config/GMPP01_00/config.yml b/config/GMPP01_00/config.yml index ed67d838..997b2d75 100644 --- a/config/GMPP01_00/config.yml +++ b/config/GMPP01_00/config.yml @@ -20,6 +20,10 @@ modules: symbols: config/GMPP01_00/rels/bootDll/symbols.txt splits: config/GMPP01_00/rels/bootDll/splits.txt links: [] + extract: + - symbol: nintendoData + binary: nintendoData.bin + header: nintendoData.inc - object: files/dll/instDll.rel hash: eef3ac50923ab2f20d588ef10ae15f3bc739f2b8 symbols: config/GMPP01_00/rels/instDll/symbols.txt diff --git a/config/GMPP01_00/rels/bootDll/splits.txt b/config/GMPP01_00/rels/bootDll/splits.txt index 531cd645..593d873d 100644 --- a/config/GMPP01_00/rels/bootDll/splits.txt +++ b/config/GMPP01_00/rels/bootDll/splits.txt @@ -5,3 +5,17 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/bootDll/main.c: + .text start:0x000000A0 end:0x00002AE0 + .rodata start:0x00000000 end:0x000000F8 + .data start:0x00000000 end:0x00003120 + .bss start:0x00000000 end:0x00000060 + +REL/bootDll/language.c: + .text start:0x00002AE0 end:0x00003D9C + .rodata start:0x000000F8 end:0x000001A0 + .data start:0x00003120 end:0x00003156 diff --git a/config/GMPP01_00/rels/bootDll/symbols.txt b/config/GMPP01_00/rels/bootDll/symbols.txt index b9ed4f1e..fa5f8812 100644 --- a/config/GMPP01_00/rels/bootDll/symbols.txt +++ b/config/GMPP01_00/rels/bootDll/symbols.txt @@ -1,15 +1,15 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x204 -fn_1_2A4 = .text:0x000002A4; // type:function size:0x8B4 -fn_1_B58 = .text:0x00000B58; // type:function size:0xC8 -fn_1_C20 = .text:0x00000C20; // type:function size:0x3B4 -fn_1_FD4 = .text:0x00000FD4; // type:function size:0xB88 -fn_1_1B5C = .text:0x00001B5C; // type:function size:0x460 -fn_1_1FBC = .text:0x00001FBC; // type:function size:0xAA0 -fn_1_2A5C = .text:0x00002A5C; // type:function size:0x84 -fn_1_2AE0 = .text:0x00002AE0; // type:function size:0x10C8 -fn_1_3BA8 = .text:0x00003BA8; // type:function size:0x1F4 +ObjectSetup = .text:0x000000A0; // type:function size:0x204 +BootExec = .text:0x000002A4; // type:function size:0x8B4 +UpdateDemoMess = .text:0x00000B58; // type:function size:0xC8 scope:local +DebugCamOutView = .text:0x00000C20; // type:function size:0x3B4 +DebugCamUpdate = .text:0x00000FD4; // type:function size:0xB88 +BootTitleCreate = .text:0x00001B5C; // type:function size:0x460 +BootTitleExec = .text:0x00001FBC; // type:function size:0xAA0 +NintendoDataDecode = .text:0x00002A5C; // type:function size:0x84 +LanguageMenuExec = .text:0x00002AE0; // type:function size:0x10C8 +LanguageBootGet = .text:0x00003BA8; // type:function size:0x1F4 _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 @@ -86,22 +86,25 @@ lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x24 data:string lbl_1_data_24 = .data:0x00000024; // type:object size:0x14 data:string -lbl_1_data_38 = .data:0x00000038; // type:object size:0x18 data:2byte -lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 +demoMessTimeTbl = .data:0x00000038; // type:object size:0x18 scope:local data:2byte +debugCamTbl = .data:0x00000050; // type:object size:0x4 scope:local lbl_1_data_54 = .data:0x00000054; // type:object size:0x1A data:string lbl_1_data_6E = .data:0x0000006E; // type:object size:0x13 data:string lbl_1_data_81 = .data:0x00000081; // type:object size:0x1F -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x3080 data:4byte -lbl_1_data_3120 = .data:0x00003120; // type:object size:0x14 +nintendoData = .data:0x000000A0; // type:object size:0x307D align:32 +flagFileTbl = .data:0x00003120; // type:object size:0x14 scope:local lbl_1_data_3134 = .data:0x00003134; // type:object size:0x5 data:string lbl_1_data_3139 = .data:0x00003139; // type:object size:0xD data:string lbl_1_data_3146 = .data:0x00003146; // type:object size:0x10 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x6 -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x6 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0xE data:2byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x18 data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x18 data:float -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte +debugCamOnF = .bss:0x00000000; // type:object size:0x4 data:4byte +initLanguageF = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_4 = .bss:0x00000008; // type:object size:0x2 +bootGrpId = .bss:0x0000000A; // type:object size:0x2 scope:local data:2byte +titleMdlId = .bss:0x0000000C; // type:object size:0x6 scope:local data:2byte +demoWinId = .bss:0x00000012; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_10 = .bss:0x00000014; // type:object size:0xC data:float +debugCamZoom = .bss:0x00000020; // type:object size:0x8 data:float +debugCamPos = .bss:0x00000028; // type:object size:0x18 data:float +debugCamRot = .bss:0x00000040; // type:object size:0x18 data:float +objman = .bss:0x00000058; // type:object size:0x4 data:4byte +debugOutView = .bss:0x0000005C; // type:object size:0x4 scope:local data:4byte diff --git a/config/GMPP01_02/config.yml b/config/GMPP01_02/config.yml index da871c96..fa72e0a2 100644 --- a/config/GMPP01_02/config.yml +++ b/config/GMPP01_02/config.yml @@ -21,6 +21,10 @@ modules: symbols: config/GMPP01_00/rels/bootDll/symbols.txt splits: config/GMPP01_00/rels/bootDll/splits.txt links: [] + extract: + - symbol: nintendoData + binary: nintendoData.bin + header: nintendoData.inc - object: files/dll/instDll.rel hash: eef3ac50923ab2f20d588ef10ae15f3bc739f2b8 symbols: config/GMPP01_00/rels/instDll/symbols.txt diff --git a/configure.py b/configure.py index a5be4728..d3de99e8 100644 --- a/configure.py +++ b/configure.py @@ -835,8 +835,8 @@ config.libs = [ Rel( "bootDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/nintendo_data.c"), + Object(Matching, "REL/bootDll/main.c"), + Object(Matching, "REL/bootDll/language.c"), }, ), Rel( diff --git a/include/data_num/title.h b/include/data_num/title.h index 2d0ce603..a50179ec 100644 --- a/include/data_num/title.h +++ b/include/data_num/title.h @@ -2,6 +2,9 @@ #define DATANUM_TITLE_H #include "datadir_enum.h" +#include "version.h" + +#if VERSION_NTSC enum { TITLE_NINTENDO_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 0), @@ -20,4 +23,40 @@ enum { TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13), }; +#else + +enum { + TITLE_HUDSON_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 0), + TITLE_PROGRESSIVE_CHOOSE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 1), + TITLE_PROGRESSIVE_ON_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 2), + TITLE_PROGRESSIVE_OFF_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 3), + TITLE_PROGRESSIVE_CURSOR_ON_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 4), + TITLE_PROGRESSIVE_CURSOR_OFF_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 5), + TITLE_BG_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 6), + TITLE_LOGO_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 7), + TITLE_COPYRIGHT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 8), + TITLE_CHAR_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 9), + TITLE_CUBE_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 10), + TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 11), + TITLE_LANGUAGEBG_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 12), + TITLE_FLAG_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13), + TITLE_FLAG_EN_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 14), + TITLE_FLAG_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 15), + TITLE_FLAG_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 16), + TITLE_FLAG_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 17), + TITLE_FLAG_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 18), + TITLE_PRESS_START_EN_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 19), + TITLE_PRESS_START_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 20), + TITLE_PRESS_START_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 21), + TITLE_PRESS_START_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 22), + TITLE_PRESS_START_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 23), + TITLE_LANGUAGE_EN_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 24), + TITLE_LANGUAGE_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 25), + TITLE_LANGUAGE_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 26), + TITLE_LANGUAGE_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 27), + TITLE_LANGUAGE_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 28), +}; + +#endif + #endif \ No newline at end of file diff --git a/src/REL/bootDll/language.c b/src/REL/bootDll/language.c new file mode 100644 index 00000000..fdc674f1 --- /dev/null +++ b/src/REL/bootDll/language.c @@ -0,0 +1,280 @@ +#include "version.h" +#if VERSION_PAL +#include "dolphin.h" +#include "game/card.h" +#include "game/saveload.h" +#include "game/sprite.h" +#include "game/hsfman.h" +#include "game/hsfanim.h" +#include "game/window.h" +#include "game/gamework_data.h" +#include "game/object.h" +#include "game/wipe.h" +#include "game/pad.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/minigame_seq.h" + +#include "math.h" +#include "ext_math.h" + +#include "data_num/title.h" + +s32 flagFileTbl[] = { + TITLE_FLAG_EN_ANM, + TITLE_FLAG_ES_ANM, + TITLE_FLAG_IT_ANM, + TITLE_FLAG_FR_ANM, + TITLE_FLAG_GE_ANM +}; + +extern int SystemInitF; + +extern Process *objman; +extern Vec debugCamRot[2]; +extern Vec debugCamPos[2]; +extern float debugCamZoom[2]; + +void DebugCamOutView(omObjData *obj); +void DebugCamUpdate(omObjData *obj); + +BOOL LanguageMenuExec(void) +{ + s16 language = GWLanguageGet()-1; + s16 i; + s16 gid; + s16 time; + s16 choiceChange; + AnimData *anim; + s16 sprid; + s16 choice; + omObjData *outView; + omObjData *updateCamera; + s16 modelId[5]; + s16 winId[5]; + + float winSize[2]; + float dist; + float posX; + float posZ; + + for(i=0; i<4; i++) { + GWPlayerCfg[i].character = i; + } + gid = HuSprGrpCreate(1); + anim = HuSprAnimReadFile(TITLE_LANGUAGEBG_ANM); + sprid = HuSprCreate(anim, 0, 0); + HuSprGrpMemberSet(gid, 0, sprid); + HuSprDrawNoSet(gid, 0, 127); + HuSprPosSet(gid, 0, 288, 240); + HuSprTPLvlSet(gid, 0, 0.6f); + Hu3DFogSet(350, 2000, 128, 128, 128); + debugCamRot[0].x = -20; + debugCamRot[0].y = 0; + debugCamRot[0].z = 0; + debugCamPos[0].x = 0; + debugCamPos[0].y = 20; + debugCamPos[0].z = -7; + debugCamZoom[0] = 600; + + Hu3DCameraPerspectiveSet(HU3D_CAM0, 60, 20, 5000, 1.2f); + outView = omAddObjEx(objman, 32730, 0, 0, -1, DebugCamOutView); + updateCamera = omAddObjEx(objman, 0, 32, 32, -1, DebugCamUpdate); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 30); + while (WipeStatGet()) { + HuPrcVSleep(); + } + if(!SystemInitF) { + void *group_samp; + HuWindowInit(); + group_samp = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(0)); + msmSysLoadGroup(0, group_samp, 0); + HuMemDirectFree(group_samp); + } + for(i=0; i<5; i++) { + modelId[i] = Hu3DModelCreateFile(TITLE_FLAG_HSF); + anim = HuSprAnimReadFile(flagFileTbl[i]); + Hu3DAnimCreate(anim, modelId[i], "flag"); + Hu3DModelPosSet(modelId[i], sind(i*72)*200, 70, cosd(i*72)*200); + Hu3DModelRotSet(modelId[i], -20, 0, 0); + } + for(time=1; time<=30; time++) { + dist = 1.0-(time/30.0); + for(i=0; i<5; i++) { + Hu3DModelPosSet(modelId[i], sind((dist*180.0f)+(i*72)+(language*72))*(200+(300*dist)), 70, cosd((dist*180.0f)+(i*72)+(language*72))*(200+(300*dist))); + } + HuPrcVSleep(); + } + HuWinInit(1); + HuWinMesMaxSizeGet(5, winSize, 0x380000, 0x380005, 0x38000A, 0x38000F, 0x380014); + winId[0] = HuWinExCreateStyled(-10000, 50, winSize[0], winSize[1], -1, 0); + HuWinAttrSet(winId[0], 0x800); + HuWinMesSet(winId[0], 0x380000+(language*5)); + HuWinBGTPLvlSet(winId[0], 0); + HuWinMesSpeedSet(winId[0], 0); + HuWinDispOn(winId[0]); + HuWinMesMaxSizeGet(5, winSize, 0x380001, 0x380006, 0x38000B, 0x380010, 0x380015); + winId[1] = HuWinExCreateStyled(-10000, 100, winSize[0], winSize[1], -1, 0); + HuWinAttrSet(winId[1], 0x800); + HuWinMesSet(winId[1], 0x380001+(language*5)); + HuWinBGTPLvlSet(winId[1], 0); + HuWinMesSpeedSet(winId[1], 0); + HuWinDispOn(winId[1]); + HuWinMesMaxSizeGet(5, winSize, 0x380002, 0x380007, 0x38000C, 0x380011, 0x380016); + winId[2] = HuWinExCreateStyled(-10000, 340, winSize[0], winSize[1], -1, 0); + HuWinAttrSet(winId[2], 0x800); + HuWinMesSet(winId[2], 0x380002+(language*5)); + HuWinBGTPLvlSet(winId[2], 0); + HuWinMesSpeedSet(winId[2], 0); + HuWinDispOn(winId[2]); + HuWinMesMaxSizeGet(5, winSize, 0x380004, 0x380009, 0x38000E, 0x380013, 0x380018); + winId[4] = HuWinExCreateStyled(-10000, (448-winSize[1])-10, winSize[0], winSize[1], -1, 0); + HuWinAttrSet(winId[4], 0x800); + choiceChange = FALSE; + while(1) { + if(HuPadDStkRep[0] & PAD_BUTTON_LEFT) { + HuAudFXPlay(0); + for(time=0; time<=10; time++) { + for(i=0; i<5; i++) { + posX = sind((72.0*language)+(i*72)-(72.0*(time/10.0)))*200; + posZ = cosd((72.0*language)+(i*72)-(72.0*(time/10.0)))*200; + Hu3DModelPosSet(modelId[i], posX, 70, posZ); + } + HuPrcVSleep(); + } + language--; + if(language < 0) { + language = 4; + } + choiceChange = TRUE; + } else if(HuPadDStkRep[0] & PAD_BUTTON_RIGHT) { + HuAudFXPlay(0); + for(time=0; time<=10; time++) { + for(i=0; i<5; i++) { + posX = sind((72.0*language)+(i*72)+(72.0*(time/10.0)))*200; + posZ = cosd((72.0*language)+(i*72)+(72.0*(time/10.0)))*200; + Hu3DModelPosSet(modelId[i], posX, 70, posZ); + } + HuPrcVSleep(); + } + language++; + if(language >= 5) { + language = 0; + } + choiceChange = TRUE; + } + if(choiceChange) { + HuWinMesSet(winId[0], 0x380000+(language*5)); + HuWinMesSet(winId[1], 0x380001+(language*5)); + HuWinMesSet(winId[2], 0x380002+(language*5)); + choiceChange = FALSE; + } + if(HuPadBtnDown[0] & PAD_BUTTON_A) { + HuAudFXPlay(1); + HuWinHomeClear(winId[4]); + HuWinExAnimIn(winId[4]); + HuWinMesSet(winId[4], 0x380004+(language*5)); + HuWinMesWait(winId[4]); + choice = HuWinChoiceGet(winId[4], 0); + if(choice == 0) { + GwLanguage = GwLanguageSave = language+1; + GWLanguageSet(GwLanguage); + break; + } + HuWinExAnimOut(winId[4]); + } + if(GwLanguage != -1 && (HuPadBtnDown[0] & PAD_BUTTON_B)) { + HuAudFXPlay(3); + break; + } + HuPrcVSleep(); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); + while (WipeStatGet()) { + HuPrcVSleep(); + } + HuSprGrpKill(gid); + for(i=0; i<5; i++) { + Hu3DModelKill(modelId[i]); + } + omDelObjEx(objman, outView); + omDelObjEx(objman, updateCamera); + if(SystemInitF == 0) { + CharManInit(); + MGSeqInit(); + } + HuWinAllKill(); + Hu3DFogClear(); + return TRUE; +} + +s32 LanguageBootGet(void) +{ + s16 result = -1; + s16 i; + s16 j; + for(i=0; i<2; i++) { + if(HuCardSlotCheck(i) < 0) { + continue; + } + if(HuCardMount(i) < 0) { + continue; + } + for(j=0; j<3; j++) { + CARDFileInfo fileInfo; + if(HuCardOpen(i, SaveFileNameTbl[j], &fileInfo) < 0) { + continue; + } + if(HuCardRead(&fileInfo, &saveBuf, SAVE_BUF_SIZE, 0) < 0) { + continue; + } + if(!SLCheckSumCheck()) { + continue; + } + memcpy(&GWGameStat, &saveBuf.data.stat, sizeof(GameStat)); + if(GWGameStat.language < 1) { + continue; + } + if(GWGameStat.language > 5) { + continue; + } + result = GWGameStat.language; + OSReport("Language %d\n", GWGameStat.language); + HuCardClose(&fileInfo); + HuCardUnMount(i); + return result; + } + HuCardUnMount(i); + } + if(result == -1) { + OSReport("OS Language %d\n", OSGetLanguage()); + switch(OSGetLanguage()) { + case OS_LANG_ENGLISH: + result = 1; + break; + + case OS_LANG_GERMAN: + result = 2; + break; + + case OS_LANG_FRENCH: + result = 3; + break; + + case OS_LANG_SPANISH: + result = 5; + break; + + case OS_LANG_ITALIAN: + result = 4; + break; + + default: + result = -1; + break; + } + } + return result; +} + +#endif \ No newline at end of file diff --git a/src/REL/bootDll/main.c b/src/REL/bootDll/main.c index b525067a..5aa7dfcb 100644 --- a/src/REL/bootDll/main.c +++ b/src/REL/bootDll/main.c @@ -24,51 +24,69 @@ extern int SystemInitF; -static Process *objman[2]; -Vec lbl_1_bss_3C[2]; -Vec lbl_1_bss_24[2]; -float lbl_1_bss_1C[2]; +static omObjData *debugOutView; +Process *objman; +Vec debugCamRot[2]; +Vec debugCamPos[2]; +float debugCamZoom[2]; Vec lbl_1_bss_10; -static s16 demoWin; +static s16 demoWinId; -static s16 titleModel[3]; -static s16 titleGroup; +static s16 titleMdlId[3]; +static s16 bootGrpId; s16 lbl_1_bss_4; -s32 lbl_1_bss_0; +#if VERSION_PAL +static BOOL initLanguageF; +#endif +s32 debugCamOnF; -static void BootProc(void); +void BootExec(void); static void UpdateDemoMess(void); -static void ProgressiveProc(void); -static void TitleInit(void); -static BOOL TitleProc(void); +#if VERSION_NTSC +void BootProgExec(void); +#endif +void BootTitleCreate(void); +BOOL BootTitleExec(void); -void *logoReadNintendo(void); +void *NintendoDataDecode(void); void ObjectSetup(void) { omOvlHisData *history; OSReport("******* Boot ObjectSetup *********\n"); - objman[0] = omInitObjMan(50, 8192); - lbl_1_bss_3C[0].x = -67; - lbl_1_bss_3C[0].y = 40; - lbl_1_bss_3C[0].z = 0; - lbl_1_bss_24[0].x = 260; - lbl_1_bss_24[0].y = -103; - lbl_1_bss_24[0].z = -18; - lbl_1_bss_1C[0] = 2885; + objman = omInitObjMan(50, 8192); + debugCamRot[0].x = -67; + debugCamRot[0].y = 40; + debugCamRot[0].z = 0; + debugCamPos[0].x = 260; + debugCamPos[0].y = -103; + debugCamPos[0].z = -18; + debugCamZoom[0] = 2885; Hu3DCameraCreate(1); Hu3DCameraPerspectiveSet(1, 30, 20, 15000, 1.2); Hu3DCameraViewportSet(1, 0, 0, 640, 480, 0, 1); - HuPrcCreate(BootProc, 100, 12288, 0); + HuPrcCreate(BootExec, 100, 12288, 0); Hu3DBGColorSet(0, 0, 0); history = omOvlHisGet(0); omOvlHisChg(0, history->overlay, 1, history->stat); + #if VERSION_PAL + if(SystemInitF == FALSE) { + initLanguageF = FALSE; + } else { + initLanguageF = TRUE; + } + #endif } -static void BootProc(void) +#if VERSION_PAL +s32 LanguageBootGet(void); +BOOL LanguageMenuExec(void); +#endif + +void BootExec(void) { AnimData *data; s16 group; @@ -77,11 +95,24 @@ static void BootProc(void) s16 i; OSTick tick_prev; Process *curr = HuPrcCurrentGet(); + #if VERSION_NTSC if (omovlevtno == 0) { - ProgressiveProc(); + BootProgExec(); } + #else + if(SystemInitF == FALSE) { + GwLanguage = LanguageBootGet(); + if(GwLanguage == -1) { + if(LanguageMenuExec()) { + SystemInitF = TRUE; + } + } else { + GWLanguageSet(GwLanguage); + } + } + #endif group = HuSprGrpCreate(2); - data = HuSprAnimRead(logoReadNintendo()); + data = HuSprAnimRead(NintendoDataDecode()); sprite_nintendo = HuSprCreate(data, 0, 0); HuSprGrpMemberSet(group, 0, sprite_nintendo); HuSprPosSet(group, 0, 288, 240); @@ -94,7 +125,7 @@ static void BootProc(void) HuSprPosSet(group, 1, 288, 240); HuSprAttrSet(group, 1, HUSPR_ATTR_DISPOFF); HuWinInit(1); - TitleInit(); + BootTitleCreate(); SystemInitF = 1; } else { @@ -105,6 +136,18 @@ static void BootProc(void) for (i = 0; i < 4; i++) { GWPlayerCfg[i].pad_idx = i; } + #if VERSION_PAL + if(SystemInitF) { + data = HuSprAnimReadFile(TITLE_HUDSON_ANM); + sprite_hudson = HuSprCreate(data, 0, 0); + HuSprGrpMemberSet(group, 1, sprite_hudson); + HuSprPosSet(group, 1, 288, 240); + HuSprAttrSet(group, 1, HUSPR_ATTR_DISPOFF); + HuAudSndGrpSetSet(0); + BootTitleCreate(); + HuWinInit(1); + } + #endif repeat: HuSprAttrReset(group, 0, HUSPR_ATTR_DISPOFF); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 30); @@ -118,7 +161,7 @@ static void BootProc(void) HuWindowInit(); MGSeqInit(); HuWinInit(1); - TitleInit(); + BootTitleCreate(); data = HuSprAnimReadFile(TITLE_HUDSON_ANM); sprite_hudson = HuSprCreate(data, 0, 0); HuSprGrpMemberSet(group, 1, sprite_hudson); @@ -130,9 +173,15 @@ static void BootProc(void) } else { for (i = 0; i < 180; i++) { + #if VERSION_NTSC if (HuPadBtnDown[0] & (PAD_BUTTON_START | PAD_BUTTON_A)) { break; } + #else + if (initLanguageF && (HuPadBtnDown[0] & (PAD_BUTTON_START | PAD_BUTTON_A))) { + break; + } + #endif HuPrcVSleep(); } } @@ -159,12 +208,21 @@ static void BootProc(void) } else { for (i = 0; i < 180; i++) { + #if VERSION_NTSC if (HuPadBtnDown[0] & (PAD_BUTTON_START | PAD_BUTTON_A)) { break; } + #else + if (initLanguageF && (HuPadBtnDown[0] & (PAD_BUTTON_START | PAD_BUTTON_A))) { + break; + } + #endif HuPrcVSleep(); } } + #if VERSION_PAL + initLanguageF = TRUE; + #endif WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); while (WipeStatGet()) { HuPrcVSleep(); @@ -184,11 +242,11 @@ static void BootProc(void) HuSprGrpMemberSet(group_thp, 0, sprite_thp); HuSprPosSet(group_thp, 0, 288, 240); HuWinMesMaxSizeBetGet(win_size, MAKE_MESSID(54, 0), MAKE_MESSID(54, 4)); - demoWin = HuWinCreate(-10000, 448 - win_size[1], win_size[0], win_size[1], 0); - HuWinMesSpeedSet(demoWin, 0); - HuWinBGTPLvlSet(demoWin, 0); - HuWinPriSet(demoWin, 10); - HuWinAttrSet(demoWin, 0x800); + demoWinId = HuWinCreate(-10000, 448 - win_size[1], win_size[0], win_size[1], 0); + HuWinMesSpeedSet(demoWinId, 0); + HuWinBGTPLvlSet(demoWinId, 0); + HuWinPriSet(demoWinId, 10); + HuWinAttrSet(demoWinId, 0x800); HuPrcSleep(5); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); while (WipeStatGet()) { @@ -207,7 +265,7 @@ static void BootProc(void) while (WipeStatGet()) { HuPrcVSleep(); } - HuWinKill(demoWin); + HuWinKill(demoWinId); HuTHPClose(); HuPrcVSleep(); HuSprGrpKill(group_thp); @@ -216,7 +274,7 @@ static void BootProc(void) } skip_wait = FALSE; } - if (!TitleProc()) { + if (!BootTitleExec()) { HuPrcSleep(60); goto repeat; } @@ -242,7 +300,7 @@ static void BootProc(void) } while (1); } -static s16 demoTimingTbl[] = { +static s16 demoMessTimeTbl[] = { 1686, 1785, 1850, @@ -261,19 +319,21 @@ static void UpdateDemoMess(void) { int frame = HuTHPFrameGet(); int i; - for (i = 0; demoTimingTbl[i * 2] != -1; i++) { - if (frame == demoTimingTbl[i * 2]) { - HuWinMesSet(demoWin, MAKE_MESSID(54, i)); + for (i = 0; demoMessTimeTbl[i * 2] != -1; i++) { + if (frame == demoMessTimeTbl[i * 2]) { + HuWinMesSet(demoWinId, MAKE_MESSID(54, i)); } - if (frame == demoTimingTbl[(i * 2) + 1]) { - HuWinHomeClear(demoWin); + if (frame == demoMessTimeTbl[(i * 2) + 1]) { + HuWinHomeClear(demoWinId); } } } -static u16 progressivePosTbl[] = { 236, 313, 353, 313 }; +#if VERSION_NTSC -static void ProgressiveProc(void) +static u16 progPosTbl[] = { 236, 313, 353, 313 }; + +void BootProgExec(void) { s16 i; s16 option; @@ -303,11 +363,11 @@ static void ProgressiveProc(void) data = HuSprAnimReadFile(TITLE_PROGRESSIVE_CURSOR_ON_ANM); sprite = HuSprCreate(data, 0, 0); HuSprGrpMemberSet(group, 1, sprite); - HuSprPosSet(group, 1, progressivePosTbl[option * 2], progressivePosTbl[(option * 2) + 1]); + HuSprPosSet(group, 1, progPosTbl[option * 2], progPosTbl[(option * 2) + 1]); data = HuSprAnimReadFile(TITLE_PROGRESSIVE_CURSOR_OFF_ANM); sprite = HuSprCreate(data, 0, 0); HuSprGrpMemberSet(group, 2, sprite); - HuSprPosSet(group, 2, progressivePosTbl[option * 2], progressivePosTbl[(option * 2) + 1]); + HuSprPosSet(group, 2, progPosTbl[option * 2], progPosTbl[(option * 2) + 1]); HuSprAttrSet(group, 2, HUSPR_ATTR_DISPOFF); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 30); while (WipeStatGet()) { @@ -316,12 +376,12 @@ static void ProgressiveProc(void) for (i = 0; i < 600; i++) { if (HU_PAD_DSTK_ALL & (PAD_BUTTON_LEFT | PAD_BUTTON_RIGHT)) { option ^= 1; - HuSprPosSet(group, 1, progressivePosTbl[option * 2], progressivePosTbl[(option * 2) + 1]); + HuSprPosSet(group, 1, progPosTbl[option * 2], progPosTbl[(option * 2) + 1]); i = 0; } if (HU_PAD_BTNDOWN_ALL & PAD_BUTTON_A) { HuSprAttrSet(group, 1, HUSPR_ATTR_DISPOFF); - HuSprPosSet(group, 2, progressivePosTbl[option * 2], progressivePosTbl[(option * 2) + 1]); + HuSprPosSet(group, 2, progPosTbl[option * 2], progPosTbl[(option * 2) + 1]); HuSprAttrReset(group, 2, HUSPR_ATTR_DISPOFF); break; } @@ -370,33 +430,35 @@ static void ProgressiveProc(void) HuPrcSleep(30); } -u16 lbl_1_data_58[] = { 1, 2 }; +#endif -void fn_1_1178(void) +static u16 debugCamTbl[] = { 1, 2 }; + +void DebugCamOutView(omObjData *obj) { s16 i; for (i = 0; i < 1; i++) { Vec pos, target, up; float x, y, z; - x = lbl_1_bss_3C[i].x; - y = lbl_1_bss_3C[i].y; - z = lbl_1_bss_3C[i].z; + x = debugCamRot[i].x; + y = debugCamRot[i].y; + z = debugCamRot[i].z; - pos.x = (((sind(y) * cosd(x)) * lbl_1_bss_1C[i]) + lbl_1_bss_24[i].x); - pos.y = (-sind(x) * lbl_1_bss_1C[i]) + lbl_1_bss_24[i].y; - pos.z = ((cosd(y) * cosd(x)) * lbl_1_bss_1C[i]) + lbl_1_bss_24[i].z; - target.x = lbl_1_bss_24[i].x; - target.y = lbl_1_bss_24[i].y; - target.z = lbl_1_bss_24[i].z; + pos.x = (((sind(y) * cosd(x)) * debugCamZoom[i]) + debugCamPos[i].x); + pos.y = (-sind(x) * debugCamZoom[i]) + debugCamPos[i].y; + pos.z = ((cosd(y) * cosd(x)) * debugCamZoom[i]) + debugCamPos[i].z; + target.x = debugCamPos[i].x; + target.y = debugCamPos[i].y; + target.z = debugCamPos[i].z; up.x = sind(y) * sind(x); up.y = cosd(x); up.z = cosd(y) * sind(x); - Hu3DCameraPosSet(lbl_1_data_58[i], pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z); + Hu3DCameraPosSet(debugCamTbl[i], pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z); } } -void fn_1_152C(void) +void DebugCamUpdate(omObjData *obj) { Vec pos; Vec offset; @@ -405,28 +467,30 @@ void fn_1_152C(void) f32 z_rot; s8 stick_pos; - + + #if VERSION_NTSC if ((HuPadBtnDown[0] & 0x800)) { - lbl_1_bss_0 = (lbl_1_bss_0) ? 0 : 1; + debugCamOnF = (debugCamOnF) ? 0 : 1; } - if (lbl_1_bss_0 != 0) { - lbl_1_bss_3C[0].y += 0.1f * HuPadStkX[0]; - lbl_1_bss_3C[0].x += 0.1f * HuPadStkY[0]; - lbl_1_bss_1C[0] += HuPadTrigL[0] / 2; - lbl_1_bss_1C[0] -= HuPadTrigR[0] / 2; - if (lbl_1_bss_1C[0] < 100.0f) { - lbl_1_bss_1C[0] = 100.0f; + #endif + if (debugCamOnF != 0) { + debugCamRot[0].y += 0.1f * HuPadStkX[0]; + debugCamRot[0].x += 0.1f * HuPadStkY[0]; + debugCamZoom[0] += HuPadTrigL[0] / 2; + debugCamZoom[0] -= HuPadTrigR[0] / 2; + if (debugCamZoom[0] < 100.0f) { + debugCamZoom[0] = 100.0f; } - pos.x = lbl_1_bss_24[0].x + (lbl_1_bss_1C[0] * (sind(lbl_1_bss_3C[0].y) * cosd(lbl_1_bss_3C[0].x))); - pos.y = (lbl_1_bss_24[0].y + (lbl_1_bss_1C[0] * -sind(lbl_1_bss_3C[0].x))); - pos.z = (lbl_1_bss_24[0].z + (lbl_1_bss_1C[0] * (cosd(lbl_1_bss_3C[0].y) * cosd(lbl_1_bss_3C[0].x)))); - offset.x = lbl_1_bss_24[0].x - pos.x; - offset.y = lbl_1_bss_24[0].y - pos.y; - offset.z = lbl_1_bss_24[0].z - pos.z; - dir.x = (sind(lbl_1_bss_3C[0].y) * sind(lbl_1_bss_3C[0].x)); - dir.y = cosd(lbl_1_bss_3C[0].x); - dir.z = (cosd(lbl_1_bss_3C[0].y) * sind(lbl_1_bss_3C[0].x)); - z_rot = lbl_1_bss_3C[0].z; + pos.x = debugCamPos[0].x + (debugCamZoom[0] * (sind(debugCamRot[0].y) * cosd(debugCamRot[0].x))); + pos.y = (debugCamPos[0].y + (debugCamZoom[0] * -sind(debugCamRot[0].x))); + pos.z = (debugCamPos[0].z + (debugCamZoom[0] * (cosd(debugCamRot[0].y) * cosd(debugCamRot[0].x)))); + offset.x = debugCamPos[0].x - pos.x; + offset.y = debugCamPos[0].y - pos.y; + offset.z = debugCamPos[0].z - pos.z; + dir.x = (sind(debugCamRot[0].y) * sind(debugCamRot[0].x)); + dir.y = cosd(debugCamRot[0].x); + dir.z = (cosd(debugCamRot[0].y) * sind(debugCamRot[0].x)); + z_rot = debugCamRot[0].z; y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cosd(z_rot)) + dir.y * (offset.x * offset.y * (1.0f - cosd(z_rot)) - offset.z * sind(z_rot)) + dir.z * (offset.x * offset.z * (1.0f - cosd(z_rot)) + offset.y * sind(z_rot)); @@ -443,70 +507,102 @@ void fn_1_152C(void) VECNormalize(&offset, &offset); stick_pos = (HuPadSubStkX[0] & 0xF8); if (stick_pos != 0) { - lbl_1_bss_24[0].x += 0.05f * (offset.x * stick_pos); - lbl_1_bss_24[0].y += 0.05f * (offset.y * stick_pos); - lbl_1_bss_24[0].z += 0.05f * (offset.z * stick_pos); + debugCamPos[0].x += 0.05f * (offset.x * stick_pos); + debugCamPos[0].y += 0.05f * (offset.y * stick_pos); + debugCamPos[0].z += 0.05f * (offset.z * stick_pos); } VECNormalize(&y_offset, &offset); stick_pos = -(HuPadSubStkY[0] & 0xF8); if (stick_pos != 0) { - lbl_1_bss_24[0].x += 0.05f * (offset.x * stick_pos); - lbl_1_bss_24[0].y += 0.05f * (offset.y * stick_pos); - lbl_1_bss_24[0].z += 0.05f * (offset.z * stick_pos); + debugCamPos[0].x += 0.05f * (offset.x * stick_pos); + debugCamPos[0].y += 0.05f * (offset.y * stick_pos); + debugCamPos[0].z += 0.05f * (offset.z * stick_pos); } } } -static void TitleInit(void) +void BootTitleCreate(void) { s16 model; s16 sprite; AnimData *sprite_data; - titleModel[0] = model = Hu3DModelCreateFile(TITLE_CHAR_HSF); + s16 i; + titleMdlId[0] = model = Hu3DModelCreateFile(TITLE_CHAR_HSF); Hu3DModelAttrSet(model, HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(model, HU3D_MOTATTR_LOOP); - titleModel[1] = model = Hu3DModelCreateFile(TITLE_CUBE_HSF); + titleMdlId[1] = model = Hu3DModelCreateFile(TITLE_CUBE_HSF); Hu3DModelAttrSet(model, HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(model, HU3D_MOTATTR_LOOP); - titleModel[2] = model = Hu3DModelCreateFile(TITLE_SKY_HSF); + titleMdlId[2] = model = Hu3DModelCreateFile(TITLE_SKY_HSF); Hu3DModelAttrSet(model, HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(model, HU3D_MOTATTR_LOOP); Hu3DModelCameraInfoSet(model, 1); Hu3DModelLightInfoSet(model, 1); - titleGroup = HuSprGrpCreate(4); + #if VERSION_NTSC + bootGrpId = HuSprGrpCreate(4); + #else + bootGrpId = HuSprGrpCreate(13); + #endif sprite_data = HuSprAnimReadFile(TITLE_BG_ANM); sprite = HuSprCreate(sprite_data, 0, 0); - HuSprGrpMemberSet(titleGroup, 0, sprite); - HuSprAttrSet(titleGroup, 0, HUSPR_ATTR_DISPOFF); - HuSprDrawNoSet(titleGroup, 0, 127); - HuSprPosSet(titleGroup, 0, 288, 240); + HuSprGrpMemberSet(bootGrpId, 0, sprite); + HuSprAttrSet(bootGrpId, 0, HUSPR_ATTR_DISPOFF); + HuSprDrawNoSet(bootGrpId, 0, 127); + HuSprPosSet(bootGrpId, 0, 288, 240); sprite_data = HuSprAnimReadFile(TITLE_COPYRIGHT_ANM); sprite = HuSprCreate(sprite_data, 1, 0); - HuSprGrpMemberSet(titleGroup, 1, sprite); - HuSprAttrSet(titleGroup, 1, HUSPR_ATTR_DISPOFF); - HuSprPosSet(titleGroup, 1, 288, 420); + HuSprGrpMemberSet(bootGrpId, 1, sprite); + HuSprAttrSet(bootGrpId, 1, HUSPR_ATTR_DISPOFF); + HuSprPosSet(bootGrpId, 1, 288, 420); + #if VERSION_NTSC sprite_data = HuSprAnimReadFile(TITLE_PRESS_START_ANM); sprite = HuSprCreate(sprite_data, 2, 0); - HuSprGrpMemberSet(titleGroup, 2, sprite); - HuSprAttrSet(titleGroup, 2, HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LINEAR); - HuSprPosSet(titleGroup, 2, 288, 380); + HuSprGrpMemberSet(bootGrpId, 2, sprite); + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LINEAR); + HuSprPosSet(bootGrpId, 2, 288, 380); sprite_data = HuSprAnimReadFile(TITLE_LOGO_ANM); sprite = HuSprCreate(sprite_data, 0, 0); - HuSprGrpMemberSet(titleGroup, 3, sprite); - HuSprAttrSet(titleGroup, 3, HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LINEAR); - HuSprPosSet(titleGroup, 3, 288, 200); + HuSprGrpMemberSet(bootGrpId, 3, sprite); + HuSprAttrSet(bootGrpId, 3, HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LINEAR); + HuSprPosSet(bootGrpId, 3, 288, 200); + #else + sprite_data = HuSprAnimReadFile(TITLE_LOGO_ANM); + sprite = HuSprCreate(sprite_data, 0, 0); + HuSprGrpMemberSet(bootGrpId, 2, sprite); + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LINEAR); + HuSprPosSet(bootGrpId, 2, 288, 200); + for(i=0; i<5; i++) { + sprite_data = HuSprAnimReadFile(TITLE_PRESS_START_EN_ANM+i); + sprite = HuSprCreate(sprite_data, 3+i, 0); + HuSprGrpMemberSet(bootGrpId, 3+i, sprite); + HuSprAttrSet(bootGrpId, 3+i, HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LINEAR); + HuSprPosSet(bootGrpId, 3+i, 288, 340); + } + for(i=0; i<5; i++) { + sprite_data = HuSprAnimReadFile(TITLE_LANGUAGE_EN_ANM+i); + sprite = HuSprCreate(sprite_data, 8+i, 0); + HuSprGrpMemberSet(bootGrpId, 8+i, sprite); + HuSprAttrSet(bootGrpId, 8+i, HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LINEAR); + HuSprPosSet(bootGrpId, 8+i, 288, 380); + } + #endif } -static BOOL TitleProc(void) +BOOL BootTitleExec(void) { float scale; float scale_time; int seNo[32]; + s16 pressStartMemberNo; + s16 languageMemberNo; s16 i; - Hu3DModelAttrReset(titleModel[0], HU3D_ATTR_DISPOFF); - Hu3DModelAttrReset(titleModel[1], HU3D_ATTR_DISPOFF); - HuSprAttrReset(titleGroup, 0, HUSPR_ATTR_DISPOFF); - HuSprAttrReset(titleGroup, 1, HUSPR_ATTR_DISPOFF); + s16 choice; + float temp; + repeat: + Hu3DModelAttrReset(titleMdlId[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(titleMdlId[1], HU3D_ATTR_DISPOFF); + HuSprAttrReset(bootGrpId, 0, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(bootGrpId, 1, HUSPR_ATTR_DISPOFF); OSReport(">>>>>>>>MSM_SE_SEL_01 %d\n", msmSeGetEntryID(2092, seNo)); OSReport(">>>>>>>>SE Num %d\n", msmSeGetNumPlay(0)); HuAudSStreamPlay(20); @@ -514,24 +610,128 @@ static BOOL TitleProc(void) while (WipeStatGet()) { HuPrcVSleep(); } - HuSprAttrReset(titleGroup, 3, HUSPR_ATTR_DISPOFF); + #if VERSION_NTSC + HuSprAttrReset(bootGrpId, 3, HUSPR_ATTR_DISPOFF); for (i = 1; i <= 50; i++) { scale = (cosd(i * 1.8) * 10.0) + 1.0; - HuSprScaleSet(titleGroup, 3, scale, scale); - HuSprTPLvlSet(titleGroup, 3, i / 50.0); + HuSprScaleSet(bootGrpId, 3, scale, scale); + HuSprTPLvlSet(bootGrpId, 3, i / 50.0); HuPrcVSleep(); } - HuSprAttrReset(titleGroup, 2, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(bootGrpId, 2, HUSPR_ATTR_DISPOFF); + #else + HuSprAttrReset(bootGrpId, 2, HUSPR_ATTR_DISPOFF); + for (i = 1; i <= 50; i++) { + scale = (cosd(i * 1.8) * 10.0) + 1.0; + HuSprScaleSet(bootGrpId, 2, scale, scale); + HuSprTPLvlSet(bootGrpId, 2, i / 50.0); + HuPrcVSleep(); + } + if(GwLanguage == -1) { + pressStartMemberNo = 3; + languageMemberNo = 8; + } else { + pressStartMemberNo = GwLanguage+3-1; + languageMemberNo = GwLanguage+8-1; + } + HuSprAttrReset(bootGrpId, pressStartMemberNo, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(bootGrpId, languageMemberNo, HUSPR_ATTR_DISPOFF); + for(i=1; i<=20; i++) { + scale = sind(i*4.5); + HuSprScaleSet(bootGrpId, pressStartMemberNo, scale, scale); + HuSprScaleSet(bootGrpId, languageMemberNo, scale*0.7, scale*0.7); + HuPrcVSleep(); + } + choice = 0; + scale_time = 0; + #endif + + #if VERSION_NTSC for (i = scale_time = 0; i < 1800; i++) { + #else + for (i = temp = 0; i < 1800; i++) { + #endif + #if VERSION_PAL + if((choice == 0 && (HuPadDStkRep[0] & PAD_BUTTON_DOWN)) || (choice != 0 && (HuPadDStkRep[0] & PAD_BUTTON_UP))) { + HuAudFXPlay(0); + for(i=1; i<=10; i++) { + scale = ((1-(i/10.0))*(((cosd(scale_time)*0.1)+0.9)-0.7))+0.7; + if(choice == 0) { + HuSprScaleSet(bootGrpId, pressStartMemberNo, scale, scale); + } else { + HuSprScaleSet(bootGrpId, languageMemberNo, scale, scale); + } + scale = ((1-(i/10.0))*(((cosd(scale_time/3.0)*0.05)+0.65)-1.0))+1.0; + if(choice == 0) { + HuSprScaleSet(bootGrpId, languageMemberNo, scale, scale); + } else { + HuSprScaleSet(bootGrpId, pressStartMemberNo, scale, scale); + } + HuPrcVSleep(); + } + choice ^= 1; + scale_time = 0; + } + if (HuPadBtnDown[0] & (PAD_BUTTON_START|PAD_BUTTON_A)) { + if(choice == 0) { + s32 ret = HuAudFXPlay(2092); + if (ret < 0) { + OSReport(">>>>>Error %d\n", ret); + } + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF); + return 1; + } else { + HuAudFXPlay(1); + HuAudSStreamAllFadeOut(500); + WipeColorSet(255, 255, 255); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); + while (WipeStatGet()) { + HuPrcVSleep(); + } + Hu3DModelAttrSet(titleMdlId[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(titleMdlId[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(titleMdlId[2], HU3D_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 0, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 1, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF); + for(i=0; i<5; i++) { + HuSprAttrSet(bootGrpId, i+3, HUSPR_ATTR_DISPOFF); + } + for(i=0; i<5; i++) { + HuSprAttrSet(bootGrpId, i+8, HUSPR_ATTR_DISPOFF); + } + LanguageMenuExec(); + Hu3DModelCameraInfoSet(titleMdlId[2], 1); + Hu3DModelLightInfoSet(titleMdlId[2], 1); + HuWinInit(1); + goto repeat; + } + } + scale = (cosd(scale_time) * 0.1) + 0.9; + if(choice == 0) { + HuSprScaleSet(bootGrpId, pressStartMemberNo, scale, scale); + } else { + HuSprScaleSet(bootGrpId, languageMemberNo, scale, scale); + } + scale = (cosd(scale_time/3.0) * 0.05) + 0.65; + if(choice == 0) { + HuSprScaleSet(bootGrpId, languageMemberNo, scale, scale); + } else { + HuSprScaleSet(bootGrpId, pressStartMemberNo, scale, scale); + } + scale_time += 5; + HuPrcVSleep(); + #else if (i <= 10) { - HuSprTPLvlSet(titleGroup, 2, i / 10.0); + HuSprTPLvlSet(bootGrpId, 2, i / 10.0); } if (HuPadBtnDown[0] & PAD_BUTTON_START) { s32 ret = HuAudFXPlay(2092); if (ret < 0) { OSReport(">>>>>Error %d\n", ret); } - HuSprAttrSet(titleGroup, 2, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF); return 1; } scale = (sind(i * scale_time) * 0.1) + 0.9; @@ -539,20 +739,48 @@ static BOOL TitleProc(void) if (scale_time > 5) { scale_time = 5; } - HuSprScaleSet(titleGroup, 2, scale, scale); + HuSprScaleSet(bootGrpId, 2, scale, scale); HuPrcVSleep(); + #endif + } WipeColorSet(255, 255, 255); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); while (WipeStatGet()) { HuPrcVSleep(); } - Hu3DModelAttrSet(titleModel[0], HU3D_ATTR_DISPOFF); - Hu3DModelAttrSet(titleModel[1], HU3D_ATTR_DISPOFF); - Hu3DModelAttrSet(titleModel[2], HU3D_ATTR_DISPOFF); - HuSprAttrSet(titleGroup, 0, HUSPR_ATTR_DISPOFF); - HuSprAttrSet(titleGroup, 1, HUSPR_ATTR_DISPOFF); - HuSprAttrSet(titleGroup, 2, HUSPR_ATTR_DISPOFF); - HuSprAttrSet(titleGroup, 3, HUSPR_ATTR_DISPOFF); + Hu3DModelAttrSet(titleMdlId[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(titleMdlId[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(titleMdlId[2], HU3D_ATTR_DISPOFF); + #if VERSION_NTSC + HuSprAttrSet(bootGrpId, 0, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 1, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 3, HUSPR_ATTR_DISPOFF); + #else + HuSprAttrSet(bootGrpId, 0, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 1, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(bootGrpId, 2, HUSPR_ATTR_DISPOFF); + for(i=0; i<5; i++) { + HuSprAttrSet(bootGrpId, i+3, HUSPR_ATTR_DISPOFF); + } + for(i=0; i<5; i++) { + HuSprAttrSet(bootGrpId, i+8, HUSPR_ATTR_DISPOFF); + } + #endif return 0; } + +#include "nintendoData.inc" + +void *NintendoDataDecode(void) +{ + u32 *src = (u32 *)nintendoData; + u32 size = *src++; + void *dst = HuMemDirectMalloc(HEAP_DATA, size); + int decode_type = *src++; + if(dst) { + HuDecodeData(src, dst, size, decode_type); + } + return dst; +} \ No newline at end of file diff --git a/src/REL/bootDll/nintendo_data.c b/src/REL/bootDll/nintendo_data.c deleted file mode 100644 index 5cb14723..00000000 --- a/src/REL/bootDll/nintendo_data.c +++ /dev/null @@ -1,15 +0,0 @@ -#include "game/data.h" - -#include "logoNintendoData.inc" - -void *logoReadNintendo(void) -{ - u32 *src = (u32 *)logoNintendoData; - u32 size = *src++; - void *dst = HuMemDirectMalloc(HEAP_DATA, size); - int decode_type = *src++; - if(dst) { - HuDecodeData(src, dst, size, decode_type); - } - return dst; -} \ No newline at end of file From 19c4fb715799d5ae31fdad6909712d44b7ac522e Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Mon, 18 Nov 2024 09:01:11 -0600 Subject: [PATCH 024/178] Match Rest of Board RELs for PAL --- config/GMPP01_00/rels/w04Dll/splits.txt | 2 +- configure.py | 16 ++++++------- src/REL/w01Dll/mg_coin.c | 8 +++---- src/REL/w01Dll/mg_item.c | 8 +++---- src/REL/w02Dll/mg_coin.c | 6 ++--- src/REL/w02Dll/mg_item.c | 30 ++++++++++++------------- src/REL/w04Dll/mg_coin.c | 8 +++---- src/REL/w04Dll/mg_item.c | 8 +++---- src/REL/w05Dll/mg_item.c | 10 ++++----- 9 files changed, 48 insertions(+), 48 deletions(-) diff --git a/config/GMPP01_00/rels/w04Dll/splits.txt b/config/GMPP01_00/rels/w04Dll/splits.txt index d977e9ab..afc4b596 100644 --- a/config/GMPP01_00/rels/w04Dll/splits.txt +++ b/config/GMPP01_00/rels/w04Dll/splits.txt @@ -42,6 +42,6 @@ REL/w04Dll/mg_item.c: REL/w04Dll/mg_coin.c: .text start:0x0000C784 end:0x0000E9F0 - .rodata start:0x000003A0 end:0x00000428 + .rodata start:0x000003A0 end:0x0000042C .data start:0x00000588 end:0x0000063F .bss start:0x000002B0 end:0x00000328 diff --git a/configure.py b/configure.py index cd766eff..c7a4f2e5 100644 --- a/configure.py +++ b/configure.py @@ -1454,8 +1454,8 @@ config.libs = [ "w01Dll", # Toad's Midway Madness objects={ Object(Matching, "REL/w01Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_item.c"), + Object(Matching, "REL/w01Dll/mg_coin.c"), + Object(Matching, "REL/w01Dll/mg_item.c"), }, ), Rel( @@ -1464,8 +1464,8 @@ config.libs = [ Object(Matching, "REL/w02Dll/main.c"), Object(Matching, "REL/w02Dll/gendice.c"), Object(Matching, "REL/w02Dll/gamble.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_item.c"), + Object(Matching, "REL/w02Dll/mg_coin.c"), + Object(Matching, "REL/w02Dll/mg_item.c"), Object(Matching, "REL/w02Dll/shuffleboard.c"), Object(Matching, "REL/w02Dll/roulette.c"), }, @@ -1489,8 +1489,8 @@ config.libs = [ Object(Matching, "REL/w04Dll/bridge.c"), Object(Matching, "REL/w04Dll/boo_event.c"), Object(Matching, "REL/w04Dll/big_boo.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_coin.c"), + Object(Matching, "REL/w04Dll/mg_item.c"), + Object(Matching, "REL/w04Dll/mg_coin.c"), }, ), Rel( @@ -1500,8 +1500,8 @@ config.libs = [ Object(Matching, "REL/w05Dll/hotel.c"), Object(Matching, "REL/w05Dll/monkey.c"), Object(Matching, "REL/w05Dll/dolphin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_coin.c"), + Object(Matching, "REL/w05Dll/mg_item.c"), + Object(Matching, "REL/w05Dll/mg_coin.c"), }, ), Rel( diff --git a/src/REL/w01Dll/mg_coin.c b/src/REL/w01Dll/mg_coin.c index 6a7c12b8..c24ee595 100755 --- a/src/REL/w01Dll/mg_coin.c +++ b/src/REL/w01Dll/mg_coin.c @@ -248,7 +248,7 @@ void fn_1_9DD8(void) } lbl_1_bss_72C = 0; lbl_1_bss_74C = 5; - lbl_1_bss_748 = 0x3C; + lbl_1_bss_748 = REFRESH_RATE; lbl_1_bss_72A = 0; fn_1_CEC4(); lbl_1_bss_788 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 17), NULL, 0); @@ -566,11 +566,11 @@ static void fn_1_B478(omObjData *arg0) u16 var_r29; temp_r31 = arg0->data; - if ((lbl_1_bss_748 -= 1) == 0) { - if ((lbl_1_bss_74C -= 1) >= 0) { + if ((--lbl_1_bss_748) == 0) { + if ((--lbl_1_bss_74C) >= 0) { MGSeqParamSet(lbl_1_bss_744, 1, lbl_1_bss_74C); } - lbl_1_bss_748 = 60; + lbl_1_bss_748 = REFRESH_RATE; } if (GWPlayerCfg[lbl_1_bss_798].iscom == 1) { fn_1_B1CC(arg0, &var_r29, &var_r27); diff --git a/src/REL/w01Dll/mg_item.c b/src/REL/w01Dll/mg_item.c index ab932863..99d31a68 100755 --- a/src/REL/w01Dll/mg_item.c +++ b/src/REL/w01Dll/mg_item.c @@ -342,7 +342,7 @@ static void fn_1_ECD4(omObjData *arg0) lbl_1_bss_7E8 = 4.0f; arg0->func = fn_1_EED8; lbl_1_bss_7D2 = 5; - lbl_1_bss_7D0 = 60; + lbl_1_bss_7D0 = REFRESH_RATE; lbl_1_bss_7D4 = MGSeqTimerCreateXY(lbl_1_bss_7D2, 288, 64); } BoardModelMotionSpeedSet(lbl_1_bss_6C4[17], lbl_1_bss_7EC); @@ -368,11 +368,11 @@ static void fn_1_EED8(omObjData *arg0) fn_1_10CF0(arg0->work[2]); temp_r29 = GWPlayer[lbl_1_bss_7E4].port; - if ((lbl_1_bss_7D0 -= 1) == 0) { - if ((lbl_1_bss_7D2 -= 1) >= 0) { + if ((--lbl_1_bss_7D0) == 0) { + if ((--lbl_1_bss_7D2) >= 0) { MGSeqParamSet(lbl_1_bss_7D4, 1, lbl_1_bss_7D2); } - lbl_1_bss_7D0 = 60; + lbl_1_bss_7D0 = REFRESH_RATE; } if (GWPlayerCfg[lbl_1_bss_7E4].iscom == 1) { fn_1_EEA0(arg0, &var_r30); diff --git a/src/REL/w02Dll/mg_coin.c b/src/REL/w02Dll/mg_coin.c index d8678d53..054d750b 100644 --- a/src/REL/w02Dll/mg_coin.c +++ b/src/REL/w02Dll/mg_coin.c @@ -253,7 +253,7 @@ void fn_1_4378(omObjData *object) HuAudFXPlay(1067); object->work[0] &= ~temp_r28; temp_r31->unkC[temp_r30] = 0; - lbl_1_bss_A8->work[2] = 60; + lbl_1_bss_A8->work[2] = REFRESH_RATE; if (temp_r30 != 2) { lbl_1_bss_A8->func = fn_1_5290; } @@ -468,7 +468,7 @@ void fn_1_5290(omObjData *object) if (object->work[2] == 0) { temp_r31 = object->data; temp_r31->unk18 = 5; - temp_r31->unk1A = 60; + temp_r31->unk1A = REFRESH_RATE; temp_r31->unk1C = MGSeqTimerCreateXY(temp_r31->unk18, 288, 64); HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x13, 0x15)); temp_r31->unk1E = HuWinCreate(-10000, 400, sp8[0], sp8[1], 0); @@ -495,7 +495,7 @@ void fn_1_53B8(omObjData *object) temp_r31 = object->data; temp_r28 = GWPlayer[lbl_1_bss_86].port; if (--temp_r31->unk1A == 0) { - temp_r31->unk1A = 60; + temp_r31->unk1A = REFRESH_RATE; if (--temp_r31->unk18 >= 0) { MGSeqParamSet(temp_r31->unk1C, 1, temp_r31->unk18); } diff --git a/src/REL/w02Dll/mg_item.c b/src/REL/w02Dll/mg_item.c index 9429bc92..d51268e8 100644 --- a/src/REL/w02Dll/mg_item.c +++ b/src/REL/w02Dll/mg_item.c @@ -92,11 +92,11 @@ void fn_1_5D28(void) HuPrcVSleep(); } BoardPlayerIdleSet(lbl_1_bss_196); - HuPrcSleep(120); + HuPrcSleep(REFRESH_RATE*2); BoardAudSeqPause(0, 1, 1000); HuAudFXPlay(781); fn_1_8570(); - HuPrcSleep(60); + HuPrcSleep(REFRESH_RATE); lbl_1_bss_104 = omAddObjEx(boardObjMan, 257, 0, 0, -1, fn_1_5F08); lbl_1_bss_108 = omAddObjEx(boardObjMan, 257, 0, 0, -1, fn_1_606C); lbl_1_bss_10C = omAddObjEx(boardObjMan, 257, 0, 0, -1, NULL); @@ -155,7 +155,7 @@ void fn_1_606C(omObjData *object) temp_r31->unk44[1].x += lbl_1_bss_110; BoardModelPosGet(lbl_1_bss_18A[1], &temp_r31->unk44[2]); BoardMusStart(1, 19, 127, 0); - object->work[0] = 300; + object->work[0] = REFRESH_RATE*5; object->work[1] = 0; object->func = fn_1_6248; } @@ -199,7 +199,7 @@ void fn_1_6248(omObjData *object) temp_r31->unk2A[1] = temp_r31->unk24[1]; sp28 = lbl_1_bss_160[0]; sp34 = lbl_1_bss_160[1]; - temp_f31 = 15; + temp_f31 = (VERSION_PAL) ? 13 : 15; break; case 1: @@ -207,13 +207,13 @@ void fn_1_6248(omObjData *object) temp_r31->unk2A[1] = temp_r31->unk24[2]; sp28 = lbl_1_bss_160[1]; sp34 = lbl_1_bss_160[2]; - temp_f31 = 15; + temp_f31 = (VERSION_PAL) ? 13 : 15; break; case 2: temp_r31->unk2A[0] = temp_r31->unk24[0]; temp_r31->unk2A[1] = temp_r31->unk24[2]; - temp_f31 = 22.5f; + temp_f31 = (VERSION_PAL) ? 19.5f : 22.5f; break; } temp_r31->unk68 = temp_r28; @@ -429,8 +429,8 @@ void fn_1_6EA8(void) sp20.y = sp2C.y = 0; VECSubtract(&sp20, &sp2C, &sp14); temp_f30 = VECMag(&sp14); - VECScale(&sp14, &sp14, 1.0f / 60.0f); - for (temp_r30 = 0; temp_r30 < 60; temp_r30++) { + VECScale(&sp14, &sp14, 1.0f / REFRESH_RATE); + for (temp_r30 = 0; temp_r30 < REFRESH_RATE; temp_r30++) { BoardModelPosGet(lbl_1_bss_184[temp_r31], &sp2C); VECAdd(&sp2C, &sp14, &sp2C); BoardModelPosSetV(lbl_1_bss_184[temp_r31], &sp2C); @@ -452,9 +452,9 @@ void fn_1_6EA8(void) BoardModelScaleGet(lbl_1_bss_184[temp_r31], &sp8); temp_f31 = sp8.x; temp_f29 = -0.04f; - temp_f30 = (sp20.y - sp2C.y) / 30.0f; + temp_f30 = (sp20.y - sp2C.y) / (REFRESH_RATE/2); temp_r29 = 0; - HuAudFXFadeOut(lbl_1_bss_D8, 499); + HuAudFXFadeOut(lbl_1_bss_D8, (VERSION_PAL) ? 416 : 500); while (!temp_r29) { sp2C.y += temp_f30; temp_f31 += temp_f29; @@ -476,7 +476,7 @@ void fn_1_6EA8(void) while (!BoardPlayerMotionEndCheck(lbl_1_bss_196)) { HuPrcVSleep(); } - HuPrcSleep(30); + HuPrcSleep(REFRESH_RATE/2); while (HuAudSStreamStatGet(temp_r28)) { HuPrcVSleep(); } @@ -505,7 +505,7 @@ void fn_1_732C(s32 arg0) void fn_1_7358(WorkMGItem *arg0) { if (--arg0->unk2 == 0) { - arg0->unk2 = 60; + arg0->unk2 = REFRESH_RATE; if (--arg0->unk0 >= 0) { MGSeqParamSet(arg0->unk4, 1, arg0->unk0); } @@ -520,7 +520,7 @@ void fn_1_73C8(omObjData *object) WorkMGItem *temp_r31; temp_r31 = object->data; temp_r31->unk0 = 5; - temp_r31->unk2 = 60; + temp_r31->unk2 = REFRESH_RATE; temp_r31->unk4 = MGSeqTimerCreateXY(temp_r31->unk0, 288, 64); HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x13, 0x1B)); temp_r31->unk6 = HuWinCreate(-10000, 368, sp8[0], sp8[1], 0); @@ -564,14 +564,14 @@ void fn_1_74E4(omObjData *object) else if (spC & PAD_BUTTON_LEFT) { if (temp_r31->unk8 != 0) { temp_r31->unk8--; - BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 + 1], &lbl_1_bss_DC[temp_r31->unk8], 12); + BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 + 1], &lbl_1_bss_DC[temp_r31->unk8], REFRESH_RATE/5); object->func = fn_1_7750; } } else if (spC & PAD_BUTTON_RIGHT) { if (temp_r31->unk8 != 2) { temp_r31->unk8++; - BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 - 1], &lbl_1_bss_DC[temp_r31->unk8], 12); + BoardPlayerPosLerpStart(lbl_1_bss_196, &lbl_1_bss_DC[temp_r31->unk8 - 1], &lbl_1_bss_DC[temp_r31->unk8], REFRESH_RATE/5); object->func = fn_1_7750; } } diff --git a/src/REL/w04Dll/mg_coin.c b/src/REL/w04Dll/mg_coin.c index 11ce6a4e..72baaaff 100755 --- a/src/REL/w04Dll/mg_coin.c +++ b/src/REL/w04Dll/mg_coin.c @@ -273,7 +273,7 @@ static void fn_1_D2A4(omObjData *arg0) { sp8 = BoardModelRotYGet(lbl_1_bss_14[9]); BoardModelPosGet(lbl_1_bss_14[9], &spC); if (arg0->scale.x != 0.0f) { - arg0->scale.x -= 8.5f; + arg0->scale.x -= 510.0f/REFRESH_RATE; if (arg0->scale.x < 0.0f) { arg0->scale.x = 0.0f; } @@ -294,7 +294,7 @@ static void fn_1_D2A4(omObjData *arg0) { Hu3DMotionExec(BoardModelIDGet(lbl_1_bss_2F8), temp_r30->unk_08, temp_r30->unk_64, 0); } lbl_1_bss_31C->work[0] = 60; - lbl_1_bss_31C->unk10 = frandmod(40) + 10; + lbl_1_bss_31C->unk10 = frandmod((REFRESH_RATE*2)/3) + (REFRESH_RATE/6); lbl_1_bss_31C->work[1] = arg0->work[1]; lbl_1_bss_31C->func = fn_1_E18C; } @@ -304,7 +304,7 @@ static void fn_1_D554(omObjData *arg0) { float sp8; sp8 = BoardModelRotYGet(lbl_1_bss_14[9]); - arg0->scale.x += 8.5f; + arg0->scale.x += 510.0f/REFRESH_RATE; if (arg0->scale.x > 255.0f) { arg0->scale.x = 255.0f; } @@ -567,7 +567,7 @@ static void fn_1_E4C0(omObjData *arg0) { sp14.z = arg0->scale.z; sp20.x = arg0->trans.x; sp20.z = arg0->trans.z; - sp20.y = arg0->trans.y - arg0->rot.x * arg0->rot.x * 0.25f * 0.075f; + sp20.y = arg0->trans.y - arg0->rot.x * arg0->rot.x * 0.25f * ((VERSION_PAL) ? 0.1125f : 0.075f); arg0->rot.x += 1.0f; VECAdd(&sp2C, &sp20, &sp2C); sp8 = sp2C; diff --git a/src/REL/w04Dll/mg_item.c b/src/REL/w04Dll/mg_item.c index 6f22fb6b..fe8464a2 100755 --- a/src/REL/w04Dll/mg_item.c +++ b/src/REL/w04Dll/mg_item.c @@ -130,9 +130,9 @@ void fn_1_A1F0(void) { BoardAudSeqPause(0, 1, 1000); BoardModelMotionTimeSet(lbl_1_bss_14[6], 0.0f); BoardModelAttrReset(lbl_1_bss_14[6], 0x40000002); - HuPrcSleep(20); + HuPrcSleep((REFRESH_RATE+2)/3); HuAudFXPlay(0x469); - HuPrcSleep(50); + HuPrcSleep(((REFRESH_RATE*5)+3)/6); BoardMusStart(1, 0x1E, 0x7F, 0); HuAudFXPlay(0x46C); while (BoardModelMotionTimeGet(lbl_1_bss_14[6]) < 202.0f) { @@ -349,7 +349,7 @@ static void fn_1_A7E8(void) { } BoardModelHookSet(lbl_1_bss_14[6], lbl_1_data_51C[1], lbl_1_bss_298[temp_r29]); BoardModelAttrReset(lbl_1_bss_14[6], 0x40000002); - HuPrcSleep(30); + HuPrcSleep(REFRESH_RATE/2); HuAudFXPlay(0x310); while (BoardModelMotionTimeGet(lbl_1_bss_14[6]) < BoardModelMotionMaxTimeGet(lbl_1_bss_14[6])) { HuPrcVSleep(); @@ -471,7 +471,7 @@ static void fn_1_A7E8(void) { HuPrcVSleep(); } BoardModelRotYSet(lbl_1_bss_14[10], 0.0f); - HuPrcSleep(30); + HuPrcSleep(REFRESH_RATE/2); while (HuAudSStreamStatGet(sp8) != 0) { HuPrcVSleep(); } diff --git a/src/REL/w05Dll/mg_item.c b/src/REL/w05Dll/mg_item.c index 4a58d846..f0f6c031 100644 --- a/src/REL/w05Dll/mg_item.c +++ b/src/REL/w05Dll/mg_item.c @@ -80,7 +80,7 @@ void fn_1_6B7C(void) BoardModelAttrReset(lbl_1_bss_14[0], 0x40000002); BoardMusStart(1, 0x22, 0x7F, 0); BoardPlayerMotionShiftSet(lbl_1_bss_B6, lbl_1_bss_9E[0], 0.0f, 30.0f, HU3D_MOTATTR_LOOP); - HuPrcSleep(0x1E); + HuPrcSleep(REFRESH_RATE/2); BoardModelVisibilitySet(lbl_1_bss_A2, 1); BoardModelHookSet(BoardPlayerModelGet(lbl_1_bss_B6), "a-itemhook-r", lbl_1_bss_A2); Hu3DModelObjPosGet(BoardModelIDGet(*lbl_1_bss_14), "chara1", &sp10); @@ -353,7 +353,7 @@ void fn_1_799C(void) while (BoardPlayerMotionEndCheck(lbl_1_bss_B6) == 0) { HuPrcVSleep(); } - HuPrcSleep(0x1E); + HuPrcSleep(REFRESH_RATE/2); while (HuAudSStreamStatGet(temp_r27) != 0) { HuPrcVSleep(); @@ -605,10 +605,10 @@ void fn_1_896C(void) } } if ((temp_r30 & 0x80) != 0) { - HuPrcSleep(0x19); + HuPrcSleep(((REFRESH_RATE*5)+6)/12); } else { - HuPrcSleep(0xF); + HuPrcSleep((REFRESH_RATE+2)/4); } spC.x = spC.y = spC.z = 0.0f; @@ -706,7 +706,7 @@ void fn_1_896C(void) for (var_r31 = 0; var_r31 < 3; var_r31++) { BoardModelMotionStartEndSet(lbl_1_bss_AA[var_r31], 0x28, 0x46); } - HuPrcSleep(13); + HuPrcSleep((REFRESH_RATE*2)/9); var_f31 = -8.0f; while (1) { for (var_r28 = 0, var_r31 = 0; var_r31 < 3; var_r31++) { From 9e2c4f7e4a83af96c7b5428262a0c7ab1970113b Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Mon, 18 Nov 2024 09:05:32 -0600 Subject: [PATCH 025/178] Fix mg_item build in NTSC --- src/REL/w02Dll/mg_item.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/REL/w02Dll/mg_item.c b/src/REL/w02Dll/mg_item.c index d51268e8..e7b041b5 100644 --- a/src/REL/w02Dll/mg_item.c +++ b/src/REL/w02Dll/mg_item.c @@ -454,7 +454,7 @@ void fn_1_6EA8(void) temp_f29 = -0.04f; temp_f30 = (sp20.y - sp2C.y) / (REFRESH_RATE/2); temp_r29 = 0; - HuAudFXFadeOut(lbl_1_bss_D8, (VERSION_PAL) ? 416 : 500); + HuAudFXFadeOut(lbl_1_bss_D8, (((REFRESH_RATE*500)+30)/60)-1); while (!temp_r29) { sp2C.y += temp_f30; temp_f31 += temp_f29; From 8e91e6ecf6c5bfc4f53765c8c4c74e1b5c6dda51 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 19 Nov 2024 01:25:01 +0100 Subject: [PATCH 026/178] Matched m460Dll --- config/GMPE01_00/rels/m460Dll/symbols.txt | 334 +++---- configure.py | 8 +- include/REL/m460Dll.h | 64 ++ src/REL/m453Dll/main.c | 2 +- src/REL/m460Dll/main.c | 1015 +++++++++++++++++++++ src/REL/m460Dll/map.c | 547 +++++++++++ src/REL/m460Dll/player.c | 658 +++++++++++++ src/REL/m460Dll/score.c | 183 ++++ 8 files changed, 2639 insertions(+), 172 deletions(-) create mode 100644 include/REL/m460Dll.h create mode 100644 src/REL/m460Dll/main.c create mode 100644 src/REL/m460Dll/map.c create mode 100644 src/REL/m460Dll/player.c create mode 100644 src/REL/m460Dll/score.c diff --git a/config/GMPE01_00/rels/m460Dll/symbols.txt b/config/GMPE01_00/rels/m460Dll/symbols.txt index 0261cad3..bd1cca6f 100644 --- a/config/GMPE01_00/rels/m460Dll/symbols.txt +++ b/config/GMPE01_00/rels/m460Dll/symbols.txt @@ -86,167 +86,167 @@ fn_1_91E4 = .text:0x000091E4; // type:function size:0x8C fn_1_9270 = .text:0x00009270; // type:function size:0x164 _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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -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:4byte -lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x50 -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x14 data:4byte -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x10 data:4byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x30 data:4byte -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:4byte -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x18 data:4byte -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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x18 data:4byte -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:4byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x1 data:byte -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x1 data:byte -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0xC data:4byte -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0xC scope:local data:float +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +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:4byte +lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x50 scope:local data:float +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x10 scope:local data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x30 scope:local data:float +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x18 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:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x18 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 scope:local data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // 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:0xC data:float @@ -259,9 +259,9 @@ lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 lbl_1_data_94 = .data:0x00000094; // type:object size:0xC lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC -lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x1 data:byte -lbl_1_data_BC = .data:0x000000BC; // type:object size:0x1A data:string -lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x19 data:string +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x4 data:byte +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x1A scope:local data:string +lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x19 scope:local data:string lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x20 lbl_1_data_110 = .data:0x00000110; // type:object size:0xA0 jumptable_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 scope:local @@ -273,10 +273,10 @@ lbl_1_data_334 = .data:0x00000334; // type:object size:0xC lbl_1_data_340 = .data:0x00000340; // type:object size:0xC lbl_1_data_34C = .data:0x0000034C; // type:object size:0x8 lbl_1_data_354 = .data:0x00000354; // type:object size:0x8 -lbl_1_data_35C = .data:0x0000035C; // type:object size:0x7 data:string -lbl_1_data_363 = .data:0x00000363; // type:object size:0x7 data:string +lbl_1_data_35C = .data:0x0000035C; // type:object size:0x7 scope:local data:string +lbl_1_data_363 = .data:0x00000363; // type:object size:0x7 scope:local data:string lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0x8 data:byte +lbl_1_data_378 = .data:0x00000378; // type:object size:0x4 data:byte lbl_1_data_380 = .data:0x00000380; // type:object size:0xC lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index c7a4f2e5..3f14b329 100644 --- a/configure.py +++ b/configure.py @@ -1273,10 +1273,10 @@ config.libs = [ Rel( "m460Dll", # Doors of Doom objects={ - Object(NonMatching, "REL/m460Dll/main.c"), - Object(NonMatching, "REL/m460Dll/player.c"), - Object(NonMatching, "REL/m460Dll/map.c"), - Object(NonMatching, "REL/m460Dll/score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/score.c"), }, ), Rel( diff --git a/include/REL/m460Dll.h b/include/REL/m460Dll.h new file mode 100644 index 00000000..6f97310d --- /dev/null +++ b/include/REL/m460Dll.h @@ -0,0 +1,64 @@ +#ifndef M460DLL_H +#define M460DLL_H + +#include "game/object.h" + +typedef struct UnkM460DllStruct { + float unk_00; + float unk_04; + float unk_08; + float unk_0C; +} UnkM460DllStruct; + +typedef struct M460DllCameraStruct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + u32 unk_0C; + float unk_10; + float unk_14; + float unk_18; + Vec unk_1C; + Vec unk_28; + float unk_34; + s32 unk_38; + s32 unk_3C; + float unk_40; + UnkM460DllStruct unk_44; + char unk54[0x30]; + float unk_84; + char unk88[0x4]; + float unk_8C; + float unk_90; + s32 unk_94; + char unk98[0xC]; +} M460DllCameraStruct; /* size = 0xA4 */ // same as M443DllCameraStruct // TODO does this have to be here? + +void fn_1_3E68(u32 arg0); +M460DllCameraStruct *fn_1_3E90(s32 arg0); +M460DllCameraStruct *fn_1_3F2C(s32 arg0); +u32 fn_1_414C(void); +u32 fn_1_4164(void); +s32 fn_1_419C(void); +void fn_1_41B4(s32 arg0, s32 arg1, s32 arg2); +void fn_1_41F4(s32 arg0); +void fn_1_4224(s32 arg0); +void fn_1_42BC(u32 arg0); +s32 fn_1_42F0(void); +void fn_1_4308(void); +s32 fn_1_4324(void); +void fn_1_433C(void); +s32 fn_1_4358(void); +u32 fn_1_4370(void); +float fn_1_47D0(float arg8, float arg9, float argA); + +void fn_1_49A0(Process *process); +void fn_1_4BE4(void); +void fn_1_67B4(Process *process); +void fn_1_6814(void); +void fn_1_8BA0(float arg8); +void fn_1_8CAC(Process *process, s16 arg1); +void fn_1_8F38(void); +void fn_1_8FAC(s32 arg0); + +#endif diff --git a/src/REL/m453Dll/main.c b/src/REL/m453Dll/main.c index 2c8f9116..f72224c2 100644 --- a/src/REL/m453Dll/main.c +++ b/src/REL/m453Dll/main.c @@ -87,7 +87,7 @@ typedef struct M453DllWork2 { M453DllUnkStruct unk_5C; u8 unk_9C; s32 unk_A0; -} M453DllWork2; /* size 0xA4 */ +} M453DllWork2; /* size 0xA4 */ // same as Unkm403Struct_01 void fn_1_440(omObjData *object); void fn_1_460(omObjData *object); diff --git a/src/REL/m460Dll/main.c b/src/REL/m460Dll/main.c new file mode 100644 index 00000000..73c153ea --- /dev/null +++ b/src/REL/m460Dll/main.c @@ -0,0 +1,1015 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/gamework.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m460Dll.h" + +#ifndef __MWERKS__ +#include "game/frand.h" +#endif + +typedef struct M460DllWork { + u32 unk_00; + s32 unk_04; + s32 unk_08; + u32 unk_0C; + s32 unk_10; + u32 unk_14; + u32 unk_18; + u32 unk_1C; + u32 unk_20; + u32 unk_24; + s32 unk_28; + u32 unk_2C; + s32 unk_30; + char unk34[0x4]; + u32 unk_38; + s32 unk_3C; + s32 unk_40; + s32 unk_44; + s32 unk_48; + s32 unk_4C; + u32 unk_50; + s32 unk_54[4]; + s32 unk_64[4]; + s32 unk_74; + s32 unk_78; + s32 unk_7C; + s32 unk_80; + char unk84[4]; + s32 unk_88; + u32 unk_8C; + u32 unk_90; + s32 unk_94; +} M460DllWork; /* size = 0x98 */ + +void fn_1_11EC(omObjData *object); +void fn_1_1548(omObjData *object); +void fn_1_197C(omObjData *object); +void fn_1_201C(omObjData *object); +omObjFunc fn_1_24F4(Process *arg1, omObjData *object); +void fn_1_2564(omObjData *object); +omObjFunc fn_1_2D64(Process *process, omObjData *object); +void fn_1_2D70(omObjData *object); +void fn_1_32CC(Process *process); +void fn_1_337C(omObjData *object); +void fn_1_35F0(omObjData *object); +void fn_1_3618(omObjData *object); +void fn_1_3BC0(ModelData *model, Mtx mtx); +M460DllCameraStruct *fn_1_3E90(s32 arg0); +M460DllCameraStruct *fn_1_3F2C(s32 arg0); +void fn_1_42BC(u32 arg0); +s32 fn_1_4358(void); +void fn_1_4C8(omObjData *object); +void fn_1_7FC(omObjData *object); +void fn_1_948(omObjData *object); +void fn_1_D7C(omObjData *object); + +Vec lbl_1_data_0 = { 100.0f, 800.0f, -100.0f }; +Vec lbl_1_data_C = { 0.3f, -0.8f, 0.3f }; +Vec lbl_1_data_18 = { 10.0f, 45.0f, 3500.0f }; +GXColor lbl_1_data_24 = { 0xFF, 0xFF, 0xFF, 0xFF }; +Vec lbl_1_data_28 = { 50.0f, 150000.0f, 50.0f }; +Vec lbl_1_data_34 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_40 = { 0.0f, 0.0f, 0.0f }; +Vec lbl_1_data_4C[3] = { + { 0.0f, 442.0f, -927.00006f }, + { 0.0f, 442.0f, -927.00006f }, + { 0.0f, 325.0f, -600.0f }, +}; +Vec lbl_1_data_70[3] = { + { 4.5f, 0.0f, 450.0f }, + { 4.5f, 0.0f, 450.0f }, + { 9.75f, 0.0f, 1275.0f }, +}; +float lbl_1_data_94[3] = { 70.0f, 70.0f, 41.5f }; +float lbl_1_data_A0[3] = { 0.0f, 0.016666668f, 0.0f }; +s32 lbl_1_data_AC[3] = { -0x3C, 0x3C, 0 }; +GXColor lbl_1_data_B8 = { 0, 0, 0, 0 }; + +Process *lbl_1_bss_30; +// M460DllWork2 +omObjData *lbl_1_bss_2C; +omObjData *lbl_1_bss_28; +// M460DllWork2 +omObjData *lbl_1_bss_24; +s16 lbl_1_bss_20; +s16 lbl_1_bss_1A[3]; +s16 lbl_1_bss_18; +s16 lbl_1_bss_16; +s16 lbl_1_bss_14; +s16 lbl_1_bss_12; +s16 lbl_1_bss_10; +s32 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +void ObjectSetup(void) +{ + Mtx sp2C; + Process *var_r31; + LightData *var_r30; + + Vec sp20 = { 0.0f, 0.0f, 0.0f }; + Vec sp14 = { 0.0f, 0.0f, -1.0f }; + Vec sp8; + + lbl_1_bss_C = 0; + HuAudSndGrpSet(0x53); + HuAudFXListnerSetEX(&sp20, &sp14, 10000.0f, 566.6667f, 0.0f, 300.0f, 300.0f); + lbl_1_bss_8 = lbl_1_bss_4 = -1; + lbl_1_bss_20 = -1; + lbl_1_bss_0 = 1; + lbl_1_data_28.x = 200.0f; + lbl_1_data_28.y = 1200.0f; + lbl_1_data_28.z = 160.0f; + lbl_1_data_34.x = 0.0f; + lbl_1_data_34.y = 1.0f; + lbl_1_data_34.z = 0.0f; + lbl_1_data_40.x = 0.0f; + lbl_1_data_40.y = 0.0f; + lbl_1_data_40.z = 0.0f; + Hu3DShadowCreate(30.0f, 20.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); + lbl_1_bss_1A[0] = Hu3DGLightCreateV(&lbl_1_data_0, &lbl_1_data_C, &lbl_1_data_24); + Hu3DGLightInfinitytSet(lbl_1_bss_1A[0]); + var_r30 = &Hu3DGlobalLight[lbl_1_bss_1A[0]]; + var_r30->unk_00 |= 0x8000; + lbl_1_data_18.x = 160.0f; + lbl_1_data_18.y = 0.0f; + lbl_1_data_18.z = 4200.0f; + sp8.x = sp8.z = 0.0f; + sp8.y = lbl_1_data_18.z; + mtxRot(sp2C, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); + PSMTXMultVec(sp2C, &sp8, &lbl_1_data_28); + Hu3DGLightPosAimSetV(lbl_1_bss_1A[0], &lbl_1_data_28, &lbl_1_data_40); + Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); + lbl_1_bss_18 = lbl_1_bss_16 = lbl_1_bss_14 = lbl_1_bss_12 = lbl_1_bss_10 = -1; + var_r31 = omInitObjMan(0x32, 0x2000); + lbl_1_bss_30 = var_r31; + omGameSysInit(var_r31); + fn_1_32CC(var_r31); + lbl_1_bss_2C = omAddObjEx(var_r31, 0xA, 0, 0, -1, fn_1_4C8); + fn_1_67B4(var_r31); + fn_1_49A0(var_r31); +} + +void fn_1_4C8(omObjData *var_r30) +{ + M460DllWork *var_r31; + + var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M460DllWork), MEMORY_DEFAULT_NUM); + var_r31 = var_r30->data; + memset(var_r31, 0, sizeof(M460DllWork)); + var_r31->unk_00 = 0; + var_r31->unk_04 = 0; + var_r31->unk_0C = 0; + var_r31->unk_10 = 0; + var_r31->unk_14 = 0; + var_r31->unk_18 = 0; + var_r31->unk_4C = 0; + var_r31->unk_50 = 0; + var_r31->unk_08 = 0; + var_r31->unk_88 = 0; + var_r31->unk_74 = var_r31->unk_78 = var_r31->unk_7C = var_r31->unk_80 = -1; + var_r31->unk_8C = 0; + var_r31->unk_94 = 0; + var_r31->unk_30 = 0; + var_r31->unk_30 = GWMGRecordGet(0xC); + var_r31->unk_28 = (var_r31->unk_30 >> 0x10) & 0xFF; + var_r31->unk_24 = (var_r31->unk_30 >> 0x18) & 0xFF; + var_r31->unk_30 = (u16)var_r31->unk_30; + fn_1_8CAC(lbl_1_bss_30, var_r31->unk_30); + var_r30->func = fn_1_948; +} + +void fn_1_5F0(omObjData *var_r29) +{ + Vec sp14; + Vec sp8; + M460DllCameraStruct *var_r31; + M460DllWork *var_r30; + + var_r30 = var_r29->data; + var_r30->unk_04++; + var_r30->unk_10++; + var_r30->unk_18++; + var_r30->unk_50++; + if ((omSysExitReq != 0) && (var_r30->unk_00 != 5)) { + var_r30->unk_00 = 4; + fn_1_7FC(var_r29); + } + var_r31 = fn_1_3F2C(1); + sp8.x = -(sind(var_r31->unk_28.y) * cosd(var_r31->unk_28.x)); + sp8.y = -(-sind(var_r31->unk_28.x)); + sp8.z = -(cosd(var_r31->unk_28.y) * cosd(var_r31->unk_28.x)); + sp14.x = var_r31->unk_1C.x - (sp8.x * var_r31->unk_34); + sp14.y = var_r31->unk_1C.y - (sp8.y * var_r31->unk_34); + sp14.z = var_r31->unk_1C.z - (sp8.z * var_r31->unk_34); + HuAudFXListnerUpdate(&sp14, &sp8); +} + +void fn_1_7FC(omObjData *object) +{ + M460DllWork *work = object->data; + + if (work->unk_08 == 0) { + switch (work->unk_00) { + case 0: + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 0x3C); + lbl_1_bss_0 = 1; + fn_1_8FAC(0); + work->unk_00 = 1; + work->unk_10 = 0; + object->func = fn_1_24F4(lbl_1_bss_30, object); + break; + case 1: + work->unk_00 = 2; + work->unk_18 = 0; + object->func = fn_1_1548; + break; + case 2: + work->unk_00 = 3; + work->unk_50 = 0; + object->func = fn_1_2D64(lbl_1_bss_30, object); + break; + case 3: + case 4: + work->unk_08 = 1; + work->unk_00 = 5; + object->func = fn_1_D7C; + break; + case 5: + default: + work->unk_00 = 5; + object->func = fn_1_11EC; + } + work->unk_04 = 0; + } +} + +void fn_1_948(omObjData *object) +{ + fn_1_5F0(object); + fn_1_7FC(object); +} + +void fn_1_D7C(omObjData *object) +{ + M460DllWork *work = object->data; + fn_1_5F0(object); + if (WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); + WipeColorSet(0xFF, 0xFF, 0xFF); + work->unk_08 = 0; + fn_1_7FC(object); + } +} + +void fn_1_11EC(omObjData *object) +{ + fn_1_5F0(object); + if (WipeStatGet() == 0) { + fn_1_4BE4(); + fn_1_6814(); + fn_1_8F38(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_1548(omObjData *object) +{ + M460DllWork *var_r28 = object->data; + fn_1_5F0(object); + switch (var_r28->unk_14) { + case 0: + var_r28->unk_1C = 0x3C; + var_r28->unk_20 = 0x3C; + lbl_1_bss_18 = MGSeqCreate(3, 0); + MGSeqPosSet(lbl_1_bss_18, 320.0f, 240.0f); + var_r28->unk_14 = 1; + var_r28->unk_18 = 0; + break; + case 1: + if ((lbl_1_bss_8 < 0) && ((MGSeqStatGet(lbl_1_bss_18) & 0x10) != 0)) { + lbl_1_bss_8 = HuAudSeqPlay(0x49); + } + if (MGSeqStatGet(lbl_1_bss_18) == 0) { + var_r28->unk_2C = 0; + var_r28->unk_44 = 0; + if (var_r28->unk_08 == 0) { + var_r28->unk_18 = 0; + object->func = fn_1_197C; + } + } + break; + } +} + +void fn_1_197C(omObjData *object) +{ + M460DllWork *var_r31 = object->data; + s32 var_r26 = 0; + s32 sp8 = 0; + fn_1_5F0(object); + switch (var_r31->unk_14) { + case 1: + if (WipeStatGet() == 0) { + var_r31->unk_38 = 3; + var_r31->unk_3C = 0; + var_r31->unk_40 = 0; + var_r31->unk_1C = 0x3C; + var_r31->unk_20 = 0x3C; + var_r31->unk_14 = 2; + var_r31->unk_18 = 0; + } + break; + case 2: + if (var_r31->unk_38 == 3) { + if ((--var_r31->unk_20) == 0) { + var_r31->unk_20 = 0x3C; + var_r31->unk_1C--; + if (var_r31->unk_1C == 0) { + var_r31->unk_44 = 1; + fn_1_42BC(frandmod(2)); + } + } + if ((lbl_1_bss_16 < 0) && (var_r31->unk_1C < 0xA)) { + lbl_1_bss_16 = MGSeqCreate(1, var_r31->unk_1C, -1, -1); + } + MGSeqParamSet(lbl_1_bss_16, 1, var_r31->unk_1C); + } + else { + if (lbl_1_bss_16 >= 0) { + MGSeqParamSet(lbl_1_bss_16, 2, -1); + lbl_1_bss_16 = -1; + } + if (frandmod(0x3E8) < 0x1F4) { + var_r31->unk_44 = 1; + } + if (var_r31->unk_2C >= 0x1E) { + var_r31->unk_44 = 1; + } + if (var_r31->unk_44 != 0) { + var_r31->unk_44 = 1; + var_r31->unk_88 = 1; + } + var_r31->unk_14 = 3; + var_r31->unk_18 = 0; + } + break; + case 3: + if (fn_1_4358() != 0) { + if (var_r31->unk_44 != 0) { + var_r26 = 1; + } + else if (var_r31->unk_18 > 60.0f) { + if (var_r31->unk_08 == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x1E); + WipeColorSet(0, 0, 0); + } + var_r31->unk_14 = 4; + var_r31->unk_18 = 0; + } + } + else { + var_r31->unk_18 = 0; + } + break; + case 4: + if (WipeStatGet() == 0) { + var_r31->unk_2C++; + if (var_r31->unk_08 == 0) { + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 0x1E); + } + var_r31->unk_14 = 1; + var_r31->unk_18 = 0; + } + break; + } + if (var_r26 != 0) { + lbl_1_bss_14 = MGSeqCreate(3, 1); + HuAudSeqFadeOut(lbl_1_bss_8, 0x64); + var_r31->unk_24++; + if (var_r31->unk_24 > 0xFF) { + var_r31->unk_24 = 0xFF; + } + if (var_r31->unk_2C > var_r31->unk_30) { + var_r31->unk_28 = var_r31->unk_24; + var_r31->unk_30 = var_r31->unk_2C; + var_r31->unk_48 = 1; + GWMGRecordSet(0xC, var_r31->unk_30); + } + mgRecordExtra = var_r31->unk_2C; + var_r31->unk_14 = 5; + var_r31->unk_18 = 0; + if (var_r31->unk_08 == 0) { + object->func = fn_1_201C; + } + } +} + +void fn_1_201C(omObjData *object) +{ + M460DllWork *var_r26 = object->data; + + if (lbl_1_bss_16 >= 0) { + MGSeqParamSet(lbl_1_bss_16, 2, -1); + lbl_1_bss_16 = -1; + } + fn_1_5F0(object); + if (MGSeqStatGet(lbl_1_bss_14) == 0) { + if (var_r26->unk_48 != 0) { + fn_1_8FAC(1); + lbl_1_bss_12 = MGSeqCreate(0xE, var_r26->unk_30); + var_r26->unk_48 = 0; + } + var_r26->unk_14 = 6; + var_r26->unk_18 = 0; + fn_1_7FC(object); + } +} + +omObjFunc fn_1_24F4(Process *process, omObjData *object) +{ + M460DllCameraStruct *var_r31; + + object->work[0] = object->work[1] = 0; + fn_1_3E68(1); + var_r31 = fn_1_3E90(1); + var_r31->unk_84 = 1.0f; + var_r31->unk_94 = 0; + return fn_1_2564; +} + +void fn_1_2564(omObjData *object) +{ + Vec sp20; + M460DllCameraStruct *var_r26; + M460DllWork *var_r25; + s32 var_r24; + float var_f31; + + var_r25 = object->data; + fn_1_5F0(object); + object->work[0]++; + var_f31 = lbl_1_data_AC[object->work[1]]; + var_r24 = 1; + if (var_f31 < 0.0f) { + var_r24 = 0; + var_f31 *= -1.0f; + } + var_f31 = object->work[0] / var_f31; + PSVECSubtract(&lbl_1_data_4C[object->work[1] + var_r24], &lbl_1_data_4C[object->work[1]], &sp20); + PSVECScale(&sp20, &sp20, var_f31); + PSVECAdd(&lbl_1_data_4C[object->work[1]], &sp20, &sp20); + Center.x = sp20.x; + Center.y = sp20.y; + Center.z = sp20.z; + PSVECSubtract(&lbl_1_data_70[object->work[1] + var_r24], &lbl_1_data_70[object->work[1]], &sp20); + PSVECScale(&sp20, &sp20, var_f31); + PSVECAdd(&lbl_1_data_70[object->work[1]], &sp20, &sp20); + CRot.x = sp20.x; + CRot.y = sp20.y; + CRot.z = 0.0f; + CZoom = sp20.z; + var_r26 = fn_1_3E90(1); + var_r26->unk_1C = Center; + var_r26->unk_28 = CRot; + var_r26->unk_34 = CZoom; + var_r26->unk_10 = lbl_1_data_94[object->work[1]] + (var_f31 * (lbl_1_data_94[object->work[1] + var_r24] - lbl_1_data_94[object->work[1]])); + if (var_f31 >= 1.0f) { + object->work[0] = 0; + object->work[1]++; + if (lbl_1_data_A0[object->work[1]] > 0.0f) { + fn_1_8BA0(lbl_1_data_A0[object->work[1]]); + } + if (lbl_1_data_AC[object->work[1]] == 0) { + var_r25->unk_0C = 2; + fn_1_7FC(object); + } + else if (lbl_1_data_AC[object->work[1] + 1] == 0) { + var_r25->unk_0C = 1; + } + } +} + +omObjFunc fn_1_2D64(Process *process, omObjData *object) +{ + return fn_1_2D70; +} + +void fn_1_2D70(omObjData *object) +{ + M460DllWork *var_r26 = object->data; + s32 var_r23 = 1; + fn_1_5F0(object); + if (lbl_1_bss_12 >= 0) { + if (MGSeqStatGet(lbl_1_bss_12) != 0) { + var_r23 = 0; + } + else { + lbl_1_bss_12 = -1; + } + } + if (var_r26->unk_8C != 1) { + var_r23 = 0; + } + if (var_r23 != 0) { + var_r26->unk_4C = 1; + if (lbl_1_bss_4 < 0) { + lbl_1_bss_4 = HuAudSStreamPlay(4); + } + if (var_r26->unk_50 >= 210.0f) { + var_r26->unk_4C = 2; + fn_1_7FC(object); + } + } + else { + var_r26->unk_50 = 0; + } +} + +void fn_1_32CC(Process *process) +{ + Hu3DCameraCreate(0x1F); + lbl_1_bss_28 = omAddObjEx(process, 0x7FDA, 0, 0, -1, omOutViewMulti); + lbl_1_bss_28->work[0] = 5; + lbl_1_bss_24 = omAddObjEx(process, 0xC, 1, 0, -1, fn_1_337C); + lbl_1_bss_24->work[0] = 0; +} + +void fn_1_337C(omObjData *object) +{ + UnkM460DllStruct sp1C[5] = { + { 320.0f, 240.0f, 640.0f, 480.0f }, + { 160.0f, 120.0f, 320.0f, 240.0f }, + { 160.0f, 360.0f, 320.0f, 240.0f }, + { 480.0f, 120.0f, 320.0f, 240.0f }, + { 480.0f, 360.0f, 320.0f, 240.0f }, + }; + s32 sp8[5] = { 1, 2, 4, 8, 16 }; + M460DllCameraStruct *var_r31; + s32 var_r29; + M460DllCameraStruct *var_r28; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, 10 * sizeof(M460DllCameraStruct), MEMORY_DEFAULT_NUM); + var_r28 = object->data; + memset(var_r28, 0, 0x668); + object->model[0] = Hu3DHookFuncCreate(fn_1_3BC0); + Hu3DModelLayerSet(object->model[0], 0); + Hu3DModelCameraSet(object->model[0], 0x1E); + for (var_r31 = var_r28, var_r29 = 0; var_r29 < 5; var_r29++, var_r31++) { + var_r31->unk_00 = 0; + var_r31->unk_04 = var_r29 * 0x64; + var_r31->unk_10 = 41.5f; + var_r31->unk_14 = 100.0f; + var_r31->unk_18 = 5500.0f; + var_r31->unk_1C.x = 0.0f; + var_r31->unk_1C.y = 0.0f; + var_r31->unk_1C.z = 0.0f; + var_r31->unk_28.x = -15.0f; + var_r31->unk_28.y = 0.0f; + var_r31->unk_28.z = 0.0f; + var_r31->unk_34 = 1000.0f; + var_r31->unk_40 = 1.0f; + var_r31->unk_44.unk_00 = sp1C[var_r29].unk_00; + var_r31->unk_44.unk_04 = sp1C[var_r29].unk_04; + var_r31->unk_44.unk_08 = sp1C[var_r29].unk_08; + var_r31->unk_44.unk_0C = sp1C[var_r29].unk_0C; + var_r31->unk_3C = var_r31->unk_0C = sp8[var_r29]; + var_r31->unk_08 = var_r29; + var_r31->unk_38 = var_r29; + } + var_r31 = var_r28; + var_r31->unk_00 = 1; + object->work[1] = object->work[2] = 0; + object->work[0]++; + fn_1_3618(object); + object->func = fn_1_35F0; +} + +void fn_1_35F0(omObjData *object) +{ + fn_1_3618(object); +} + +void fn_1_3618(omObjData *var_r28) +{ + float var_f31; + M460DllCameraStruct *var_r31; + s32 var_r30; + s32 var_r29; + M460DllCameraStruct *var_r27; + u32 var_r26; + u32 var_r25; + s32 var_r24; + u32 var_r23; + u32 var_r22; + u32 var_r21; + + var_r27 = var_r28->data; + { + s32 sp40[4] = { 2, 4, 8, 16 }; + u32 sp30[4]; + s32 sp20[4]; + float sp10[4]; + float sp8[2]; + var_r24 = 0; + var_r26 = 0; + memcpy(&var_r27[5], var_r27, 5 * sizeof(M460DllCameraStruct)); + var_r28->work[1] = var_r28->work[2]; + switch (var_r28->work[1]) { + case 0: + break; + case 1: + var_r26 |= 1; + break; + case 2: + var_r26 |= 1; + case 3: + var_r24 = 1; + case 4: + var_r26 |= 0x1E; + break; + } + if (var_r24 != 0) { + Hu3DModelAttrReset(var_r28->model[0], HU3D_ATTR_DISPOFF); + } + else { + Hu3DModelAttrSet(var_r28->model[0], HU3D_ATTR_DISPOFF); + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + sp30[var_r30] = var_r27[var_r30 + 6].unk_04; + sp20[var_r30] = var_r30; + } + for (var_r30 = 0; var_r30 < 3; var_r30++) { + for (var_r29 = var_r30 + 1; var_r29 < 4; var_r29++) { + if ((var_r30 != var_r29) && (sp30[var_r30] > sp30[var_r29])) { + var_r25 = sp30[var_r30]; + sp30[var_r30] = sp30[var_r29]; + sp30[var_r29] = var_r25; + var_r25 = sp20[var_r30]; + sp20[var_r30] = sp20[var_r29]; + sp20[var_r29] = var_r25; + } + } + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + var_r27[sp20[var_r30] + 6].unk_3C = sp40[var_r30]; + var_r27[sp20[var_r30] + 6].unk_38 = var_r30 + 1; + } + + for (var_r31 = &var_r27[5], var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_00 == 0) || ((var_r26 & var_r31->unk_0C) == 0)) { + Hu3DCamera[var_r31->unk_38].fov = -1.0f; + } + else { + var_f31 = 1.2f * ((var_r31->unk_44.unk_08 / 640.0f) / (var_r31->unk_44.unk_0C / 480.0f)); + sp10[2] = var_r31->unk_44.unk_08 * var_r31->unk_40; + sp10[3] = var_r31->unk_44.unk_0C * var_r31->unk_40; + Hu3DCameraPerspectiveSet(var_r31->unk_3C, var_r31->unk_10, var_r31->unk_14, var_r31->unk_18, var_f31); + Hu3DCameraViewportSet( + var_r31->unk_3C, var_r31->unk_44.unk_00 - (0.5f * sp10[2]), var_r31->unk_44.unk_04 - (0.5f * sp10[3]), sp10[2], sp10[3], 0.0f, 1.0f); + sp10[0] = var_r31->unk_44.unk_00 - (0.5f * sp10[2]); + sp10[1] = var_r31->unk_44.unk_04 - (0.5f * sp10[3]); + sp8[0] = var_r31->unk_44.unk_00 + (0.5f * sp10[2]); + sp8[1] = var_r31->unk_44.unk_04 + (0.5f * sp10[3]); + if (sp10[0] < 0.0f) { + sp10[0] = 0.0f; + } + if (sp10[1] < 0.0f) { + sp10[1] = 0.0f; + } + if (sp8[0] > 640.0f) { + sp8[0] = 640.0f; + } + if (sp8[1] > 480.0f) { + sp8[1] = 480.0f; + } + sp8[0] -= sp10[0]; + sp8[1] -= sp10[1]; + var_r21 = sp8[1]; + var_r22 = sp8[0]; + var_r23 = sp10[1]; + Hu3DCameraScissorSet(var_r31->unk_3C, sp10[0], var_r23, var_r22, var_r21); + var_r29 = var_r31->unk_38; + CenterM[var_r29].x = var_r31->unk_1C.x; + CenterM[var_r29].y = var_r31->unk_1C.y; + CenterM[var_r29].z = var_r31->unk_1C.z; + CRotM[var_r29].x = var_r31->unk_28.x; + CRotM[var_r29].y = var_r31->unk_28.y; + CRotM[var_r29].z = var_r31->unk_28.z; + CZoomM[var_r29] = var_r31->unk_34; + } + } + } +} + +void fn_1_3BC0(ModelData *model, Mtx mtx) +{ + Mtx sp3C; + Mtx spC; + float var_f31; + float var_f30; + float var_f29; + + DCStoreRange(&lbl_1_data_B8, 4); + C_MTXPerspective(spC, 41.5f, 1.2f, 100.0f, 5500.0f); + GXSetProjection(spC, GX_PERSPECTIVE); + PSMTXIdentity(sp3C); + GXLoadPosMtxImm(sp3C, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + GXSetNumTexGens(0); + GXSetNumTevStages(1); + GXSetTevColor(GX_TEVREG0, lbl_1_data_B8); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetBlendMode(GX_BM_NONE, GX_BL_ONE, GX_BL_ZERO, GX_LO_SET); + GXSetZMode(GX_TRUE, GX_ALWAYS, GX_TRUE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + var_f31 = 4125.0f; + var_f30 = 2750.0f; + var_f29 = 2530.0f; + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(-var_f31, var_f30, -var_f29); + GXPosition3f32(var_f31, var_f30, -var_f29); + GXPosition3f32(var_f31, -var_f30, -var_f29); + GXPosition3f32(-var_f31, -var_f30, -var_f29); +} + +void fn_1_3E68(u32 arg0) +{ + lbl_1_bss_24->work[2] = arg0; +} + +u32 fn_1_3E7C(void) +{ + return lbl_1_bss_24->work[1]; +} + +M460DllCameraStruct *fn_1_3E90(s32 arg0) +{ + M460DllCameraStruct *var_r31; + s32 var_r30; + M460DllCameraStruct *var_r29; + + var_r29 = lbl_1_bss_24->data; + for (var_r31 = var_r29, var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_0C & arg0) != 0) { + break; + } + } + if (var_r30 >= 5) { + OSReport("M460:Camera Flag Error!!\n"); + return NULL; + } + return var_r31; +} + +M460DllCameraStruct *fn_1_3F2C(s32 arg0) +{ + M460DllCameraStruct *var_r31; + s32 var_r30; + M460DllCameraStruct *var_r29; + + var_r29 = lbl_1_bss_24->data; + for (var_r31 = &var_r29[5], var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_0C & arg0) != 0) { + break; + } + } + if (var_r30 >= 5) { + OSReport("M460:Camera Flag Error!!\n"); + return NULL; + } + return var_r31; +} + +M460DllCameraStruct *fn_1_3FC8(u32 arg0) +{ + M460DllCameraStruct *var_r31 = lbl_1_bss_24->data; + if (arg0 >= 5) { + OSReport("M460:Camera No. Error!!\n"); + return NULL; + } + return &var_r31[arg0]; +} + +M460DllCameraStruct *fn_1_4030(u32 arg0) +{ + M460DllCameraStruct *var_r31 = lbl_1_bss_24->data; + if (arg0 >= 5) { + OSReport("M460:Camera No. Error!!\n"); + return NULL; + } + return &var_r31[arg0 + 5]; +} + +void fn_1_409C(s32 arg0, s32 arg1) +{ + M460DllCameraStruct *var_r31; + s32 var_r30; + s32 var_r29; + M460DllCameraStruct *var_r28; + M460DllCameraStruct *var_r27; + + var_r29 = 0; + if (arg0 >= 0) { + var_r27 = lbl_1_bss_24->data; + var_r28 = &var_r27[5]; + for (var_r31 = var_r28, var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_0C & arg1) != 0) { + var_r29 |= var_r31->unk_3C; + } + } + Hu3DModelCameraSet(arg0, var_r29); + } +} + +s32 fn_1_4134(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_00; +} + +u32 fn_1_414C(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_0C; +} + +u32 fn_1_4164(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_14; +} + +s32 fn_1_417C(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_4C; +} + +s32 fn_1_4194(void) +{ + return 1; +} + +s32 fn_1_419C(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_88; +} + +void fn_1_41B4(s32 arg0, s32 arg1, s32 arg2) +{ + M460DllWork *var_r31 = lbl_1_bss_2C->data; + var_r31->unk_64[arg0 &= 3] = arg1; + var_r31->unk_54[arg0] = arg2; +} + +void fn_1_41F4(s32 arg0) +{ + ((M460DllWork *)lbl_1_bss_2C->data)->unk_8C |= (1 << ((arg0 & 7) * 4)); +} + +void fn_1_4224(s32 arg0) +{ + ((M460DllWork *)lbl_1_bss_2C->data)->unk_90 |= (1 << ((arg0 & 3) * 4)); +} + +void fn_1_4254(s32 arg0) +{ + ((M460DllWork *)lbl_1_bss_2C->data)->unk_94 |= (1 << ((arg0 & 3) * 4)); +} + +s32 fn_1_4284(void) +{ + return MGSeqStatGet(lbl_1_bss_14) == 0; +} + +void fn_1_42BC(u32 arg0) +{ + M460DllWork *var_r31 = lbl_1_bss_2C->data; + if (var_r31->unk_38 == 3) { + var_r31->unk_38 = arg0; + } +} + +s32 fn_1_42F0(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_38; +} + +void fn_1_4308(void) +{ + ((M460DllWork *)lbl_1_bss_2C->data)->unk_3C = 1; +} + +s32 fn_1_4324(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_3C; +} + +void fn_1_433C(void) +{ + ((M460DllWork *)lbl_1_bss_2C->data)->unk_40 = 1; +} + +s32 fn_1_4358(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_40; +} + +u32 fn_1_4370(void) +{ + return ((M460DllWork *)lbl_1_bss_2C->data)->unk_2C; +} + +void fn_1_4388(Vec *sp8, Vec *var_r31) +{ + Vec sp10; + float var_f30; + float var_f29; + + PSVECSubtract(var_r31, sp8, &sp10); + Center = *var_r31; + CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); + CRot.y = atan2d(-sp10.x, -sp10.z); + CRot.z = 0.0f; + CZoom = PSVECMag(&sp10); +} + +void fn_1_4590(float arg8, float arg9, float argA, float argB, float argC, float argD) +{ + Vec sp3C; + Vec sp30; + Vec sp24; + + sp3C.x = arg8; + sp3C.y = arg9; + sp3C.z = argA; + sp30.x = argB; + sp30.y = argC; + sp30.z = argD; + PSVECSubtract(&sp30, &sp3C, &sp24); + Center = sp30; + CRot.x = atan2d(sp24.y, sqrtf((sp24.x * sp24.x) + (sp24.z * sp24.z))); + CRot.y = atan2d(-sp24.x, -sp24.z); + CRot.z = 0.0f; + CZoom = PSVECMag(&sp24); +} + +float fn_1_47D0(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f29; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + var_f29 = fmod(arg8 + (argA * var_f31), 360.0); + var_f31 = var_f29; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + return var_f31; +} + +float fn_1_48EC(float arg8, float arg9) +{ + float var_f31; + float var_f30; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} diff --git a/src/REL/m460Dll/map.c b/src/REL/m460Dll/map.c new file mode 100644 index 00000000..c2fea221 --- /dev/null +++ b/src/REL/m460Dll/map.c @@ -0,0 +1,547 @@ +#include "datadir_enum.h" +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/object.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "string.h" + +#include "REL/m460Dll.h" + +#ifndef __MWERKS__ +#include "game/frand.h" +#endif + +typedef struct UnkM460MapWork { + s32 unk_00; + u32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + s32 unk_14; + s32 unk_18; + s32 unk_1C; + char unk20[4]; + u32 unk_24; + s32 unk_28; + s32 unk_2C; + u32 unk_30; + float unk_34; + float unk_38; + Vec unk_3C; + Vec unk_48; + HsfObject *unk_54; + u32 unk_58; + void *unk_5C; +} UnkM460MapWork; /* size = 0x60 */ + +void fn_1_6818(omObjData *object); +void fn_1_6C00(omObjData *object); +void fn_1_73F8(omObjData *object); +u32 fn_1_76C4(u32 arg0, u32 arg1); +void fn_1_7724(ModelData *model, Mtx mtx); +void fn_1_7790(ModelData *model, Mtx mtx); +void fn_1_7B94(s32 arg0); +void fn_1_7DA8(omObjData *object, Vec *arg1, u32 arg2); + +float lbl_1_data_1E8[8][8] = { + { 0.0f, 325.0f, -387.0f, -8.25f, 15.0f, 0.0f, 1208.0f, 38.65f }, + { 0.0f, 325.0f, -387.0f, -8.25f, -15.0f, 0.0f, 1208.0f, 38.65f }, + { 0.0f, 325.0f, -700.0f, -45.0f, 18.0f, 0.0f, 1500.0f, 41.5f }, + { 0.0f, 325.0f, -700.0f, -45.0f, 0.0f, 0.0f, 1500.0f, 41.5f }, + { 0.0f, 325.0f, -700.0f, -45.0f, -18.0f, 0.0f, 925.0f, 68.0f }, + { 0.0f, 302.0f, -783.0f, 14.25f, 28.5f, 0.0f, 833.0f, 61.0f }, + { 0.0f, 302.0f, -783.0f, 14.25f, 0.0f, 0.0f, 833.0f, 61.0f }, + { 0.0f, 302.0f, -783.0f, 14.25f, -28.5f, 0.0f, 833.0f, 61.0f }, +}; +float lbl_1_data_2E8[2][8] = { + { -250.0f, 200.0f, -1000.0f, -10.0f, 0.0f, 0.0f, 1200.0f, 41.5f }, + { 250.0f, 200.0f, -1000.0f, -10.0f, 0.0f, 0.0f, 1200.0f, 41.5f }, +}; +s32 lbl_1_data_328[3] = { DATA_MAKE_NUM(DATADIR_M460, 0x00), DATA_MAKE_NUM(DATADIR_M460, 0x01), DATA_MAKE_NUM(DATADIR_M460, 0x02) }; +s32 lbl_1_data_334[3] = { DATA_MAKE_NUM(DATADIR_M460, 0x03), DATA_MAKE_NUM(DATADIR_M460, 0x04), DATA_MAKE_NUM(DATADIR_M460, 0x05) }; +s32 lbl_1_data_340[3] = { DATA_MAKE_NUM(DATADIR_M460, 0x06), DATA_MAKE_NUM(DATADIR_M460, 0x07), DATA_MAKE_NUM(DATADIR_M460, 0x08) }; +s32 lbl_1_data_34C[2] = { DATA_MAKE_NUM(DATADIR_M460, 0x09), DATA_MAKE_NUM(DATADIR_M460, 0x0A) }; +s32 lbl_1_data_354[2] = { DATA_MAKE_NUM(DATADIR_M460, 0x0B), DATA_MAKE_NUM(DATADIR_M460, 0x0C) }; + +// UnkM460MapWork +omObjData *lbl_1_bss_48; + +void fn_1_67B4(Process *process) +{ + omObjData *var_r31 = omAddObjEx(process, 0x1E, 0x10, 0, -1, fn_1_6818); + lbl_1_bss_48 = var_r31; + var_r31->work[0] = 0; +} + +void fn_1_6814(void) { } + +void fn_1_6818(omObjData *object) +{ + s32 var_r31; + s32 var_r30; + UnkM460MapWork *var_r28; + HsfanimStruct01 *var_r27; + + var_r28 = object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(UnkM460MapWork), MEMORY_DEFAULT_NUM); + memset(var_r28, 0, sizeof(UnkM460MapWork)); + omSetTra(object, 0.0f, 0.0f, 0.0f); + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r30 = Hu3DModelCreateFile(lbl_1_data_328[var_r31]); + object->model[var_r31] = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, HU3D_ATTR_DISPOFF); + } + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r30 = Hu3DModelCreateFile(lbl_1_data_334[var_r31]); + object->model[var_r31 + 3] = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, HU3D_ATTR_DISPOFF); + } + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r30 = Hu3DModelCreateFile(lbl_1_data_340[var_r31]); + object->model[var_r31 + 6] = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, HU3D_ATTR_DISPOFF); + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r30 = Hu3DModelCreateFile(lbl_1_data_34C[var_r31]); + object->model[var_r31 + 9] = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r30 = Hu3DModelCreateFile(lbl_1_data_354[var_r31]); + object->model[var_r31 + 0xB] = var_r30; + Hu3DModelLayerSet(var_r30, 3); + Hu3DModelAttrSet(var_r30, HU3D_ATTR_DISPOFF); + } + var_r28->unk_08 = 8; + fn_1_73F8(object); + var_r30 = Hu3DHookFuncCreate(fn_1_7724); + object->model[13] = var_r30; + Hu3DModelCameraSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 7); + var_r30 = Hu3DHookFuncCreate(fn_1_7790); + object->model[14] = var_r30; + Hu3DModelCameraSet(var_r30, 2); + Hu3DModelLayerSet(var_r30, 7); + var_r28->unk_58 = GXGetTexBufferSize(0x280, 0x1E0, 5, 0, 0); + var_r28->unk_5C = HuMemDirectMallocNum(HEAP_SYSTEM, var_r28->unk_58, MEMORY_DEFAULT_NUM); + DCFlushRange(var_r28->unk_5C, var_r28->unk_58); + var_r30 = Hu3DParticleCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M460, 0x23)), 0x100); + object->model[15] = var_r30; + Hu3DModelLayerSet(var_r30, 4); + for (var_r27 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_48, var_r31 = 0; var_r31 < 0x100; var_r31++, var_r27++) { + var_r27->unk2C = 0.0f; + var_r27->unk40.a = 0; + var_r27->unk00 = 0; + } + DCStoreRange(((ParticleData *)Hu3DData[var_r30].unk_120)->unk_48, 0x4400); + var_r28->unk_28 = 1; + var_r28->unk_2C = -1; + object->func = fn_1_6C00; +} + +void fn_1_6C00(omObjData *object) +{ + Vec sp14; + Vec sp8; + float var_f31; + UnkM460MapWork *var_r31; + M460DllCameraStruct *var_r30; + M460DllCameraStruct *var_r28; + u32 var_r27; + s32 var_r26; + s32 var_r25; + + var_r31 = object->data; + var_r30 = fn_1_3E90(1); + var_r28 = fn_1_3E90(2); + switch (fn_1_4164()) { + case 1: + var_r31->unk_18 = 0; + var_r31->unk_1C = 0; + var_r31->unk_24 = 0; + if (var_r31->unk_00 != 0) { + fn_1_73F8(object); + var_r31->unk_00 = 0; + } + break; + case 3: + var_r27 = fn_1_42F0(); + Hu3DMotionSpeedSet(object->model[var_r27 + 9], 1.5f); + if (var_r31->unk_18 == 0) { + if (fn_1_4324() != 0) { + var_r31->unk_18 = 1; + if (var_r27 == 0) { + var_r31->unk_2C = object->model[var_r31->unk_14 + 3]; + var_r31->unk_54 = Hu3DModelObjPtrGet(var_r31->unk_2C, "door_l"); + } + else if (var_r27 == 1) { + var_r31->unk_2C = object->model[var_r31->unk_10 + 6]; + var_r31->unk_54 = Hu3DModelObjPtrGet(var_r31->unk_2C, "door_r"); + } + var_r31->unk_28 = 0; + var_r31->unk_30 = 0; + Hu3DModelAttrReset(object->model[var_r27 + 0xB], HU3D_ATTR_DISPOFF); + } + } + else if (var_r31->unk_28 != 0) { + fn_1_433C(); + var_r30->unk_10 -= 0.116666675f; + } + if (var_r31->unk_1C == 0) { + var_r31->unk_24++; + if (var_r31->unk_24 > 102.0f) { + var_r31->unk_1C = 1; + fn_1_8BA0(0.041666668f); + var_r30->unk_1C.x = lbl_1_data_2E8[var_r27][0]; + var_r30->unk_1C.y = lbl_1_data_2E8[var_r27][1]; + var_r30->unk_1C.z = lbl_1_data_2E8[var_r27][2]; + var_r30->unk_28.x = lbl_1_data_2E8[var_r27][3]; + var_r30->unk_28.y = lbl_1_data_2E8[var_r27][4]; + var_r30->unk_28.z = lbl_1_data_2E8[var_r27][5]; + var_r30->unk_34 = lbl_1_data_2E8[var_r27][6]; + var_r30->unk_10 = lbl_1_data_2E8[var_r27][7]; + } + } + break; + case 4: + var_r30->unk_10 -= 0.116666675f; + var_r31->unk_00 = 1; + break; + } + if ((var_r31->unk_28 == 0) && (var_r31->unk_2C >= 0)) { + if (var_r31->unk_30 == 0) { + var_r31->unk_34 = 0.0f; + var_r31->unk_38 = 0.0f; + var_r31->unk_3C.x = var_r31->unk_3C.y = var_r31->unk_3C.z = 0.0f; + var_r31->unk_48 = var_r31->unk_3C; + var_r31->unk_38 = 2.9166667f; + if (var_r31->unk_54) { + sp14.x = var_r31->unk_54->data.base.pos.x; + sp14.y = 10.0f + var_r31->unk_54->data.base.pos.y; + sp14.z = 20.0f + var_r31->unk_54->data.base.pos.z; + fn_1_7DA8(object, &sp14, 0); + } + HuAudFXPlay(0x818); + } + if (var_r31->unk_30 < 24.0f) { + var_r31->unk_38 *= 0.93f; + } + else { + var_f31 = 3.888889f; + var_r31->unk_38 = var_r31->unk_38 + (0.033333335f * var_f31); + if (var_r31->unk_38 > var_f31) { + var_r31->unk_38 = var_f31; + } + } + var_r26 = 0.5f + (0.2f * var_r31->unk_34); + var_r31->unk_34 = var_r31->unk_34 + var_r31->unk_38; + if (var_r31->unk_34 >= 350.0f) { + var_r31->unk_34 = 350.0f; + var_r31->unk_28 = 1; + HuAudFXPlay(0x819); + if (var_r31->unk_54) { + sp14.x = var_r31->unk_54->data.base.pos.x; + sp14.y = (var_r31->unk_54->data.base.pos.y + var_r31->unk_34) - 15.000001f; + sp14.z = 10.0f + var_r31->unk_54->data.base.pos.z; + fn_1_7DA8(object, &sp14, 2); + } + } + var_r25 = 0.5f + (0.2f * var_r31->unk_34); + if (var_r26 != var_r25) { + var_r31->unk_48.x = 100.0f * ((0.00003f * frandmod(0x3E8)) - 0.015f); + var_r31->unk_48.y = 100.0f * ((0.00006f * frandmod(0x3E8)) - 0.03f); + var_r31->unk_48.z = 100.0f * ((0.00006f * frandmod(0x3E8)) - 0.03f); + if (var_r31->unk_54) { + sp14.x = var_r31->unk_54->data.base.pos.x; + sp14.y = (var_r31->unk_54->data.base.pos.y + var_r31->unk_34) - 15.000001f; + sp14.z = 15.000001f + var_r31->unk_54->data.base.pos.z; + fn_1_7DA8(object, &sp14, 1); + } + } + PSVECSubtract(&var_r31->unk_48, &var_r31->unk_3C, &sp8); + PSVECScale(&sp8, &sp8, 0.4f); + PSVECAdd(&var_r31->unk_3C, &sp8, &sp14); + sp14.y += var_r31->unk_34; + Hu3DModelPosSetV(var_r31->unk_2C, &sp14); + var_r31->unk_30++; + } + fn_1_7B94(object->model[15]); + if (var_r28->unk_00 != 0) { + var_r28->unk_90 = var_r28->unk_90 + var_r28->unk_8C; + if (var_r28->unk_90 > 1.0f) { + var_r28->unk_00 = 0; + var_r28->unk_90 = 1.0f; + fn_1_3E68(1); + } + } +} + +Vec lbl_1_data_36C = { 0.0f, 0.0f, 0.0f }; +GXColor lbl_1_data_378 = { 0, 0, 0, 0x80 }; + +void fn_1_73F8(omObjData *object) +{ + UnkM460MapWork *var_r31; + M460DllCameraStruct *var_r29; + u32 var_r28; + + var_r31 = object->data; + Hu3DModelAttrSet(object->model[var_r31->unk_0C], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[var_r31->unk_10 + 6], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[var_r31->unk_14 + 3], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[11], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[12], HU3D_ATTR_DISPOFF); + if (var_r31->unk_04 != 0) { + var_r31->unk_0C = fn_1_76C4(3, var_r31->unk_0C); + var_r31->unk_14 = fn_1_76C4(3, var_r31->unk_14); + var_r31->unk_10 = fn_1_76C4(3, var_r31->unk_10); + var_r29 = fn_1_3E90(1); + var_r28 = var_r31->unk_08 = fn_1_76C4(8, var_r31->unk_08); + var_r29->unk_1C.x = lbl_1_data_1E8[var_r28][0]; + var_r29->unk_1C.y = lbl_1_data_1E8[var_r28][1]; + var_r29->unk_1C.z = lbl_1_data_1E8[var_r28][2]; + var_r29->unk_28.x = lbl_1_data_1E8[var_r28][3]; + var_r29->unk_28.y = lbl_1_data_1E8[var_r28][4]; + var_r29->unk_28.z = lbl_1_data_1E8[var_r28][5]; + var_r29->unk_34 = lbl_1_data_1E8[var_r28][6]; + var_r29->unk_10 = lbl_1_data_1E8[var_r28][7]; + } + Hu3DMotionTimeSet(object->model[9], 0.0f); + Hu3DMotionSpeedSet(object->model[9], 0.0f); + Hu3DMotionTimeSet(object->model[10], 0.0f); + Hu3DMotionSpeedSet(object->model[10], 0.0f); + Hu3DModelAttrReset(object->model[var_r31->unk_0C], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[var_r31->unk_14 + 3], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[var_r31->unk_10 + 6], HU3D_ATTR_DISPOFF); + Hu3DModelPosSetV(object->model[var_r31->unk_14 + 3], &lbl_1_data_36C); + Hu3DModelPosSetV(object->model[var_r31->unk_10 + 6], &lbl_1_data_36C); + var_r31->unk_04++; +} + +u32 fn_1_76C4(u32 arg0, u32 arg8) +{ + u32 var_r31 = frandmod(arg0); + if (var_r31 == arg8) { + var_r31++; + } + var_r31 %= arg0; + return var_r31; +} + +void fn_1_7724(ModelData *model, Mtx mtx) +{ + UnkM460MapWork *var_r31 = lbl_1_bss_48->data; + GXSetTexCopySrc(0, 0, 0x280, 0x1E0); + GXSetTexCopyDst(0x280, 0x1E0, GX_TF_RGB5A3, 0); + GXCopyTex(var_r31->unk_5C, 0); + GXPixModeSync(); +} + +void fn_1_7790(ModelData *model, Mtx mtx) +{ + Mtx sp5C; + Mtx sp2C; + GXTexObj spC; + float var_f31; + float var_f30; + float var_f29; + UnkM460MapWork *var_r31; + M460DllCameraStruct *var_r30; + + var_r31 = lbl_1_bss_48->data; + var_r30 = fn_1_3F2C(2); + lbl_1_data_378.a = 255.0f * var_r30->unk_90; + DCStoreRange(&lbl_1_data_378, 4); + C_MTXPerspective(sp2C, 41.5f, 1.2f, 100.0f, 5500.0f); + GXSetProjection(sp2C, GX_PERSPECTIVE); + PSMTXIdentity(sp5C); + GXLoadPosMtxImm(sp5C, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + GXInitTexObj(&spC, var_r31->unk_5C, 0x280, 0x1E0, 5, GX_CLAMP, GX_CLAMP, 0); + GXInitTexObjLOD(&spC, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, 0, 0, GX_ANISO_1); + GXLoadTexObj(&spC, GX_TEXMAP0); + C_MTXLightPerspective(sp2C, 41.5f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); + GXLoadTexMtxImm(sp2C, 0x1E, GX_MTX3x4); + GXSetNumTexGens(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 0x1E, 0, 0x7D); + GXSetNumTevStages(1); + GXSetTevColor(GX_TEVREG0, lbl_1_data_378); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_TEXC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 0, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_A0); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 0, GX_TEVPREV); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_SET); + GXSetZMode(0, GX_LEQUAL, 0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + var_f31 = 4125.0f; + var_f30 = 2750.0f; + var_f29 = 2530.0f; + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(-var_f31, var_f30, -var_f29); + GXPosition3f32(var_f31, var_f30, -var_f29); + GXPosition3f32(var_f31, -var_f30, -var_f29); + GXPosition3f32(-var_f31, -var_f30, -var_f29); +} + +void fn_1_7B94(s32 arg0) +{ + HsfanimStruct01 *var_r31; + ParticleData *var_r30; + s32 var_r29; + + var_r30 = Hu3DData[arg0].unk_120; + for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + switch (var_r31->unk02) { + case 0: + var_r31->unk2C += 1.0f; + var_r31->unk20 *= 0.99f; + var_r31->unk08.y += 0.019444447f; + break; + case 1: + var_r31->unk2C += 2.0f; + var_r31->unk20 *= 0.98f; + break; + case 2: + var_r31->unk2C += 1.0f; + var_r31->unk20 *= 0.995f; + break; + } + if (var_r31->unk00_s16 < 12.0f) { + var_r31->unk20 = 0.9f * var_r31->unk20; + } + var_r31->unk40.a = var_r31->unk20; + if (--var_r31->unk00_s16 == 0) { + var_r31->unk00 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + } + } + DCStoreRange(var_r30->unk_48, var_r30->unk_30 * 0x44); +} + +void fn_1_7DA8(omObjData *object, Vec *arg1, u32 arg2) +{ + Vec sp1C; + float var_f31; + + HsfanimStruct01 *var_r31; + ParticleData *var_r30; + s32 var_r28; + u32 var_r27; + + GXColor spC = { 0xA2, 0x97, 0x7B, 0x80 }; + GXColor sp8 = { 0xE7, 0xDD, 0xC0, 0xFF }; + s32 sp10[3] = { 0x00000032, 4, 0x00000046 }; + + var_r30 = Hu3DData[object->model[15]].unk_120; + if (arg2 > 2) { + arg2 = 1; + } + var_r27 = sp10[arg2]; + for (var_r31 = var_r30->unk_48, var_r28 = 0; var_r28 < var_r30->unk_30; var_r28++, var_r31++) { + if (var_r31->unk00_s16 == 0) { + var_r31->unk02 = arg2; + sp1C.x = 100.0f * ((0.0026f * frandmod(0x3E8)) - 1.3f); + sp1C.y = 0.0f; + sp1C.z = 100.0f * ((0.000100000005f * frandmod(0x3E8)) - 0.05f); + PSVECAdd(&sp1C, arg1, &var_r31->unk34); + var_r31->unk30 = 0.0031415902f * frandmod(0x3E8); + switch (arg2) { + case 0: + var_r31->unk00_s16 = 60.0f * (0.8f + (0.0007f * frandmod(0x3E8))); + var_r31->unk08.x = 1.6666667f * (0.000100000005f * frandmod(0x3E8) - 0.05f); + var_r31->unk08.y = 1.6666667f * (0.05f + (0.00020000001f * frandmod(0x3E8))); + var_r31->unk08.z = 1.6666667f * (0.1f + (0.0006f * frandmod(0x3E8))); + var_f31 = 0.001f * frandmod(0x3E8); + var_r31->unk2C = 30.0f + (30.0f * var_f31); + var_r31->unk40.a = 40.0f + (40.0f * (1.0f - var_f31)); + var_r31->unk40.r = spC.r + (var_f31 * (sp8.r - spC.r)); + var_r31->unk40.g = spC.g + (var_f31 * (sp8.g - spC.g)); + var_r31->unk40.b = spC.b + (var_f31 * (sp8.b - spC.b)); + break; + case 1: + sp1C.x = 100.0f * (1.1f + (0.00020000001f * frandmod(0x3E8))); + sp1C.y = 100.0f * (0.2f + (0.0005f * frandmod(0x3E8))); + if (frandmod(0x3E8) < 0x1F4) { + sp1C.x *= -1.0f; + } + PSVECAdd(&sp1C, arg1, &var_r31->unk34); + var_r31->unk00 = 60.0f * (0.2f + (0.0005f * frandmod(0x3E8))); + var_r31->unk08.x = 1.6666667f * ((0.000100000005f * frandmod(0x3E8)) - 0.05f); + var_r31->unk08.y = -1.6666667f * (0.2f + (0.0003f * frandmod(0x3E8))); + var_r31->unk08.z = 1.6666667f * (0.05f + (0.000100000005f * frandmod(0x3E8))); + var_f31 = 0.001f * frandmod(0x3E8); + var_r31->unk2C = 20.0f + (30.0f * var_f31); + var_r31->unk40.a = 8.0f + (13.0f * (1.0f - var_f31)); + var_r31->unk40.r = spC.r + (var_f31 * (sp8.r - spC.r)); + var_r31->unk40.g = spC.g + (var_f31 * (sp8.g - spC.g)); + var_r31->unk40.b = spC.b + (var_f31 * (sp8.b - spC.b)); + break; + case 2: + var_r31->unk00 = 60.0f * (0.9f + (0.00080000004f * frandmod(0x3E8))); + var_r31->unk08.x = 1.6666667f * ((0.00020000001f * frandmod(0x3E8)) - 0.1f); + var_r31->unk08.y = -1.6666667f * (0.1f + (0.0007f * frandmod(0x3E8))); + var_r31->unk08.z = 1.6666667f * ((0.00020000001f * frandmod(0x3E8)) - 0.1f); + var_f31 = 0.001f * frandmod(0x3E8); + var_r31->unk2C = 40.0f + (60.0f * var_f31); + var_r31->unk40.a = 8.0f + (10.0f * (1.0f - var_f31)); + var_r31->unk40.r = spC.r + (var_f31 * (sp8.r - spC.r)); + var_r31->unk40.g = spC.g + (var_f31 * (sp8.g - spC.g)); + var_r31->unk40.b = spC.b + (var_f31 * (sp8.b - spC.b)); + break; + } + var_r31->unk20 = var_r31->unk40.a; + var_r27--; + if (var_r27 < 1) { + break; + } + } + } + + DCStoreRange(var_r30->unk_48, var_r30->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_8BA0(float arg8) +{ + M460DllCameraStruct *var_r31; + M460DllCameraStruct *var_r30; + + var_r30 = fn_1_3E90(1); + var_r31 = fn_1_3E90(2); + var_r31->unk_00 = 1; + var_r31->unk_1C = var_r30->unk_1C; + var_r31->unk_28 = var_r30->unk_28; + var_r31->unk_34 = var_r30->unk_34; + var_r31->unk_10 = var_r30->unk_10; + var_r31->unk_44 = var_r30->unk_44; + var_r31->unk_40 = var_r30->unk_40; + var_r31->unk_8C = arg8; + var_r31->unk_90 = 0.0f; + fn_1_3E68(2); +} + +s32 fn_1_8C78(void) +{ + M460DllCameraStruct *var_r31 = fn_1_3E90(2); + return var_r31->unk_00; +} diff --git a/src/REL/m460Dll/player.c b/src/REL/m460Dll/player.c new file mode 100644 index 00000000..740af4a2 --- /dev/null +++ b/src/REL/m460Dll/player.c @@ -0,0 +1,658 @@ +#include "datadir_enum.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/object.h" +#include "game/pad.h" +#include "string.h" + +#include "REL/m460Dll.h" + +#ifndef __MWERKS__ +#include "game/frand.h" +#endif + +typedef struct UnkData110Struct { + /* 0x00 */ u16 unk_00; + /* 0x04 */ float unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ u32 unk_10; +} UnkData110Struct; /* size = 0x14 */ + +typedef struct UnkM460DllPlayerWork { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + u32 unk_14; + u32 unk_18; + float unk_1C; + float unk_20; + s32 unk_24; + s32 unk_28; + u16 unk_2C; + s32 unk_30; + char unk34[0x4]; + s16 unk_38; + char unk3A[6]; + s32 unk_40; + float unk_44; + float unk_48; + float unk_4C; + float unk_50; + float unk_54; + s32 unk_58; + float unk_5C; + Vec unk_60; + Vec unk_6C; + Vec unk_78; + s32 unk_84; +} UnkM460DllPlayerWork; /* size = 0x88 */ + +void fn_1_4C08(omObjData *object); +void fn_1_4F6C(omObjData *object); +void fn_1_5168(omObjData *object); +void fn_1_55EC(omObjData *object); +void fn_1_57D8(omObjData *object); +s32 fn_1_58C8(omObjData *object, float arg8, float arg9); +void fn_1_5A14(omObjData *object); +void fn_1_5C88(omObjData *object); +void fn_1_5CE0(omObjData *object, u32 arg1); +s32 fn_1_5E6C(omObjData *object); +void fn_1_60B0(omObjData *object); +void fn_1_61F4(omObjData *object); + +u32 lbl_1_data_F0[8] = { 0, 2, 3, 0x590015, 0x59000D, 0x17, 0x18, 0x1A }; +struct UnkData110Struct lbl_1_data_110[8] = { + { 0, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 1, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 2, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 3, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 4, 0.2f, 0.0f, -1.0f, 0 }, + { 5, 0.2f, 0.0f, -1.0f, 0 }, + { 6, 0.2f, 0.0f, -1.0f, 0 }, + { 7, 0.2f, 0.0f, -1.0f, 0x40000001 }, +}; + +omObjData *lbl_1_bss_40[1]; +omObjData *lbl_1_bss_3C; +s32 lbl_1_bss_38[1]; + +void fn_1_49A0(Process *process) +{ + u32 spC[1]; + u32 sp8[1]; + + s16 var_r31; + s16 var_r30; + u32 var_r29; + omObjData *var_r27; + + for (var_r31 = 0; var_r31 < 1; var_r31++) { + spC[var_r31] = GWPlayerCfg[var_r31].group; + sp8[var_r31] = var_r31; + } + for (var_r31 = 0; var_r31 < 0; var_r31++) { + for (var_r30 = var_r31 + 1; var_r30 < 1; var_r30++) { + if (spC[var_r31] > spC[var_r30]) { + var_r29 = spC[var_r31]; + spC[var_r31] = spC[var_r30]; + spC[var_r30] = var_r29; + var_r29 = sp8[var_r31]; + sp8[var_r31] = sp8[var_r30]; + sp8[var_r30] = var_r29; + } + } + } + for (var_r31 = 0; var_r31 < 1; var_r31++) { + lbl_1_bss_38[sp8[var_r31]] = var_r31; + } + omMakeGroupEx(process, 0, 1); + omGetGroupMemberListEx(process, 0); + for (var_r31 = 0; var_r31 < 1; var_r31++) { + var_r27 = lbl_1_bss_40[var_r31] = omAddObjEx(process, 0x28, 1, 8, 0, fn_1_4C08); + var_r27->work[0] = var_r31; + } + lbl_1_bss_3C = omAddObjEx(process, 0x28, 1, 5, -1, fn_1_60B0); +} + +void fn_1_4BE4(void) +{ + CharModelKill(-1); +} + +void fn_1_4C08(omObjData *object) +{ + UnkM460DllPlayerWork *var_r31; + s32 var_r29; + + float sp8[4] = { 0.25f, 0.5f, 0.75f, 1.0f }; + Vec sp18[4] = { + { 0.0f, 0.0f, 300.0f }, + { -450.0f, 0.0f, -50.0f }, + { 0.0f, 0.0f, -350.0f }, + { 450.0f, 0.0f, -50.0f }, + }; + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(UnkM460DllPlayerWork), MEMORY_DEFAULT_NUM); + var_r31 = object->data; + memset(var_r31, 0, sizeof(UnkM460DllPlayerWork)); + object->stat |= 0x100; + var_r31->unk_00 = GWPlayerCfg[object->work[0]].character; + var_r31->unk_08 = lbl_1_bss_38[object->work[0]]; + fn_1_41B4(object->work[0], var_r31->unk_08, var_r31->unk_00); + var_r31->unk_54 = sp8[GWPlayerCfg[object->work[0]].diff & 3]; + var_r31->unk_24 = GWPlayerCfg[object->work[0]].iscom; + object->model[0] = CharModelCreate(var_r31->unk_00, 2); + Hu3DModelLayerSet(object->model[0], 1); + CharModelLayerSetAll(2); + Hu3DModelShadowSet(object->model[0]); + for (var_r29 = 0; var_r29 < 8; var_r29++) { + if (lbl_1_data_F0[var_r29] < 0x10000) { + object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_00, lbl_1_data_F0[var_r29]); + } + else { + object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], var_r31->unk_00 + lbl_1_data_F0[var_r29]); + } + } + CharModelMotionDataClose(var_r31->unk_00); + CharModelEffectNpcInitSilent(object->model[0], object->motion[3], 1); + object->trans.x = var_r31->unk_60.x = sp18[var_r31->unk_08].x; + object->trans.y = var_r31->unk_60.y = sp18[var_r31->unk_08].y; + object->trans.z = var_r31->unk_60.z = sp18[var_r31->unk_08].z; + var_r31->unk_44 = var_r31->unk_48 = 0.0f; + var_r31->unk_4C = 0.0f; + var_r31->unk_50 = 0.02f; + var_r31->unk_5C = 50.0f; + var_r31->unk_58 = 0; + var_r31->unk_2C = 0; + var_r31->unk_04 = -1; + fn_1_5CE0(object, 0); + var_r31->unk_84 = -1; + object->func = fn_1_4F6C; +} + +void fn_1_4F6C(omObjData *object) +{ + UnkM460DllPlayerWork *var_r31; + s32 var_r29; + + var_r31 = object->data; + var_r31->unk_14 = var_r31->unk_18 = 0; + var_r31->unk_0C = var_r31->unk_10 = 0; + var_r31->unk_1C = 0.0f; + var_r31->unk_20 = 0.0f; + switch (var_r31->unk_2C) { + case 0: + var_r31->unk_44 = var_r31->unk_48 = 180.0f; + var_r31->unk_60.x = 0.0f; + var_r31->unk_60.y = 0.0f; + var_r31->unk_60.z = -450.0f; + fn_1_5CE0(object, 7); + var_r31->unk_2C = 1; + var_r31->unk_30 = 0; + break; + case 1: + if (fn_1_414C() == 1) { + var_r31->unk_60.x = 0.0f; + var_r31->unk_60.y = 0.0f; + var_r31->unk_60.z = -100.0f; + var_r31->unk_78.x = 0.0f; + var_r31->unk_78.y = 0.0f; + var_r31->unk_78.z = -450.0f; + var_r31->unk_2C = 2; + var_r31->unk_30 = 0; + } + break; + case 2: + var_r29 = fn_1_58C8(object, 0.5f, 20.0f); + fn_1_5A14(object); + if (var_r29 != 0) { + var_r31->unk_2C = 3; + var_r31->unk_30 = 0; + } + break; + } + PSVECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); + fn_1_57D8(object); + if (fn_1_414C() == 2) { + var_r31->unk_2C = 0; + object->func = fn_1_5168; + } +} + +void fn_1_5168(omObjData *object) +{ + UnkM460DllPlayerWork *var_r31; + s32 var_r29; + u32 var_r28; + s32 var_r27; + + var_r31 = object->data; + var_r27 = 0; + { + Vec sp20[2] = { + { -250.0f, 0.0f, -900.0f }, + { 250.0f, 0.0f, -900.0f }, + }; + + Vec sp8[2] = { + { -250.0f, 0.0f, -1400.0f }, + { 250.0f, 0.0f, -1400.0f }, + }; + var_r31->unk_14 = var_r31->unk_18 = 0; + var_r31->unk_0C = var_r31->unk_10 = 0; + var_r31->unk_1C = 0.0f; + var_r31->unk_20 = 0.0f; + if (fn_1_4164() == 2) { + if (var_r31->unk_24 != 0) { + fn_1_5C88(object); + } + else { + if (HuPadTrigL[GWPlayerCfg[object->work[0]].pad_idx] > 0x28) { + var_r31->unk_14 = 1; + } + if (HuPadTrigR[GWPlayerCfg[object->work[0]].pad_idx] > 0x28) { + var_r31->unk_18 = 1; + } + } + } + switch (var_r31->unk_2C) { + case 0: + if (fn_1_4370() != 0) { + var_r31->unk_60.x = -140.0f; + var_r31->unk_60.y = 0.0f; + var_r31->unk_60.z = -150.0f; + } + var_r31->unk_78.x = 0.0f; + var_r31->unk_78.y = 0.0f; + var_r31->unk_78.z = -450.0f; + var_r31->unk_40 = 3; + var_r31->unk_2C = 4; + case 4: + var_r29 = fn_1_58C8(object, 0.5f, 20.0f); + fn_1_5A14(object); + if ((var_r29 != 0) && (fn_1_4164() == 2)) { + var_r31->unk_48 = 180.0f; + var_r31->unk_6C.x = var_r31->unk_6C.y = var_r31->unk_6C.z = 0.0f; + var_r31->unk_2C = 5; + } + break; + case 5: + var_r29 = 0; + fn_1_5A14(object); + if (CharModelMotionShiftIDGet(var_r31->unk_00) < 0) { + var_r29 = 1; + } + var_r28 = fn_1_42F0(); + if (var_r28 == 3) { + if (var_r29 != 0) { + if (var_r31->unk_14 != 0) { + var_r28 = 0; + } + else if (var_r31->unk_18 != 0) { + var_r28 = 1; + } + if (var_r28 != 3) { + fn_1_42BC(var_r28); + } + } + } + else { + var_r31->unk_40 = var_r28; + var_r31->unk_78 = sp20[var_r31->unk_40]; + var_r31->unk_2C = 6; + } + break; + case 6: + var_r29 = fn_1_58C8(object, 1.0f, 20.0f); + fn_1_5A14(object); + if (var_r29 != 0) { + fn_1_4308(); + var_r31->unk_48 = 180.0f; + var_r31->unk_6C.x = var_r31->unk_6C.y = var_r31->unk_6C.z = 0.0f; + var_r31->unk_2C = 7; + } + break; + case 7: + fn_1_5A14(object); + if (fn_1_4358() != 0) { + if (fn_1_419C() == 0) { + var_r31->unk_78 = sp8[var_r31->unk_40]; + var_r31->unk_2C = 8; + } + else { + var_r27 = 1; + } + } + break; + case 8: + var_r29 = fn_1_58C8(object, 0.5f, 20.0f); + fn_1_5A14(object); + + default: + if (fn_1_4164() == 1) { + var_r31->unk_2C = 0; + } + var_r27 = 1; + break; + } + } + PSVECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); + fn_1_57D8(object); + if ((fn_1_4164() == 5) && (var_r27 != 0)) { + var_r31->unk_2C = 0; + object->func = fn_1_55EC; + } +} + +void fn_1_55EC(omObjData *object) +{ + Vec sp8; + UnkM460DllPlayerWork *var_r31; + s32 var_r29; + + var_r31 = object->data; + var_r29 = 0; + switch (var_r31->unk_2C) { + case 0: + fn_1_41F4(object->work[0]); + fn_1_5CE0(object, 4); + sp8 = var_r31->unk_60; + sp8.y += 160.0f; + var_r31->unk_2C = 9; + break; + case 9: + if (fn_1_5E6C(object) != 0) { + var_r31->unk_78.x = 0.0f; + var_r31->unk_78.y = 0.0f; + var_r31->unk_78.z = 500.0f; + fn_1_4224(object->work[0]); + HuAudCharVoicePlay(var_r31->unk_00, 0x128); + var_r31->unk_28 = 1; + var_r31->unk_2C = 0xA; + } + break; + case 10: + var_r29 = fn_1_58C8(object, 1.0f, 20.0f); + fn_1_5A14(object); + if (var_r29 != 0) { + var_r31->unk_6C.x = var_r31->unk_6C.y = var_r31->unk_6C.z = 0.0f; + var_r31->unk_2C = 0xB; + } + break; + case 11: + fn_1_5CE0(object, 0); + break; + } + PSVECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); + fn_1_57D8(object); + if (var_r31->unk_84 >= 0) { + sp8 = var_r31->unk_60; + sp8.y += 160.0f; + HuAudFXEmiterUpDate(var_r31->unk_84, &sp8); + } +} + +void fn_1_57D8(omObjData *object) +{ + UnkM460DllPlayerWork *var_r31 = object->data; + var_r31->unk_38++; + var_r31->unk_30++; + object->trans.x = var_r31->unk_60.x; + object->trans.y = var_r31->unk_60.y; + object->trans.z = var_r31->unk_60.z; + var_r31->unk_4C = var_r31->unk_4C + var_r31->unk_50; + if (var_r31->unk_4C > 0.45f) { + var_r31->unk_4C = 0.45f; + } + var_r31->unk_44 = fn_1_47D0(var_r31->unk_44, var_r31->unk_48, var_r31->unk_4C); + object->rot.y = var_r31->unk_44; + Hu3DModelPosSetV(object->model[0], &var_r31->unk_60); + Hu3DModelRotSet(object->model[0], 0.0f, var_r31->unk_44, 0.0f); +} + +s32 fn_1_58C8(omObjData *object, float arg8, float arg9) +{ + Vec spC; + float var_f31; + UnkM460DllPlayerWork *var_r31; + s32 var_r30; + + var_r31 = object->data; + var_r30 = 0; + PSVECSubtract(&var_r31->unk_78, &var_r31->unk_60, &spC); + spC.y = 0.0f; + var_f31 = PSVECMag(&spC); + if (var_f31 < arg9) { + var_f31 = 0.0f; + var_r30 = 1; + } + else { + if (PSVECMag(&spC) >= 100.0f) { + var_f31 = 100.0f; + } + var_f31 = 0.2f + (0.008f * var_f31); + } + var_r31->unk_1C = atan2d(spC.x, spC.z); + var_r31->unk_20 = var_f31; + if (var_r31->unk_20 > arg8) { + var_r31->unk_20 = arg8; + } + return var_r30; +} + +void fn_1_5A14(omObjData *object) +{ + float var_f31; + float var_f30; + + UnkM460DllPlayerWork *var_r31 = object->data; + if (var_r31->unk_20 > 0.0f) { + var_r31->unk_48 = var_r31->unk_1C; + } + if (var_r31->unk_20 > 0.05f) { + // 1 / REFRESH_RATE? + var_r31->unk_6C.x = 0.01666666753590107 * (550.0 * (var_r31->unk_20 * sind(var_r31->unk_1C))); + var_r31->unk_6C.z = 0.01666666753590107 * (550.0 * (var_r31->unk_20 * cosd(var_r31->unk_1C))); + if (var_r31->unk_28 != 0) { + var_r31->unk_6C.x *= 1.5f; + var_r31->unk_6C.z *= 1.5f; + } + var_r31->unk_4C = 0.2f; + var_r31->unk_50 = 0.0f; + if (CharModelMotionShiftIDGet(var_r31->unk_00) < 0) { + var_f31 = 0.5f; + if (var_r31->unk_04 == 2) { + var_f31 = 0.45f; + } + if (var_r31->unk_20 > var_f31) { + if (var_r31->unk_28 != 0) { + fn_1_5CE0(object, 3); + } + else { + fn_1_5CE0(object, 2); + } + var_f30 = var_r31->unk_20; + } + else { + fn_1_5CE0(object, 1); + var_f30 = var_r31->unk_20 / var_f31; + } + CharModelMotionSpeedSet(var_r31->unk_00, var_f30); + } + } + else { + var_r31->unk_6C.x = var_r31->unk_6C.y = var_r31->unk_6C.z = 0.0f; + if (CharModelMotionShiftIDGet(var_r31->unk_00) < 0) { + fn_1_5CE0(object, 0); + } + } +} + +void fn_1_5C88(omObjData *object) +{ + UnkM460DllPlayerWork *var_r31 = object->data; + if (frandmod(0x3E8) < 0x1F4) { + var_r31->unk_14 = 1; + return; + } + var_r31->unk_18 = 1; +} + +void fn_1_5CE0(omObjData *object, u32 arg1) +{ + UnkM460DllPlayerWork *var_r30 = object->data; + if ((var_r30->unk_04 != arg1) && (arg1 < 8)) { + float var_f31 = 60.0f * lbl_1_data_110[arg1].unk_04; + if (var_r30->unk_04 < 0) { + var_f31 = 0.0f; + } + var_r30->unk_04 = arg1; + CharModelMotionShiftSet( + var_r30->unk_00, object->motion[lbl_1_data_110[arg1].unk_00], 60.0f * lbl_1_data_110[arg1].unk_08, var_f31, lbl_1_data_110[arg1].unk_10); + if (lbl_1_data_110[arg1].unk_0C >= 0.0f) { + Hu3DMotionShiftStartEndSet(object->model[0], 60.0f * lbl_1_data_110[arg1].unk_08, 60.0f * lbl_1_data_110[arg1].unk_0C); + } + } +} + +s32 fn_1_5E6C(omObjData *object) +{ + M460DllCameraStruct *var_r31 = object->data; + s32 var_r30 = 0; + if ((CharModelMotionEndCheck(var_r31->unk_00) != 0) && (CharModelMotionShiftIDGet(var_r31->unk_00) < 0)) { + var_r30 = 1; + } + return var_r30; +} + +s32 fn_1_5EE0(omObjData *object, u32 arg1) +{ + s32 var_r27 = 0; + if (fn_1_5E6C(object)) { + fn_1_5CE0(object, arg1); + var_r27 = 1; + } + return var_r27; +} + +s32 lbl_1_data_1D4[5] = { + DATA_MAKE_NUM(DATADIR_M460, 0x1E), + DATA_MAKE_NUM(DATADIR_M460, 0x1F), + DATA_MAKE_NUM(DATADIR_M460, 0x20), + DATA_MAKE_NUM(DATADIR_M460, 0x21), + DATA_MAKE_NUM(DATADIR_M460, 0x22), +}; + +void fn_1_60B0(omObjData *object) +{ + s32 var_r30; + s32 var_r29; + + omSetTra(object, 0.0f, 0.0f, 0.0f); + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M460, 0x1D)); + object->model[0] = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowSet(var_r30); + Hu3DModelAttrSet(var_r30, HU3D_ATTR_DISPOFF); + for (var_r29 = 0; var_r29 < 5; var_r29++) { + object->motion[var_r29] = Hu3DJointMotionFile(var_r30, lbl_1_data_1D4[var_r29]); + } + CharModelEffectNpcInitSilent(var_r30, object->motion[1], 0); + CharModelEffectNpcInitSilent(var_r30, object->motion[2], 1); + CharModelEffectNpcInitSilent(var_r30, object->motion[3], 1); + object->work[1] = 0; + object->func = fn_1_61F4; +} + +void fn_1_61F4(omObjData *object) +{ + float var_f31; + float var_f30; + s32 var_r30; + s32 var_r29; + + Vec sp1C[2] = { + { -250.0f, 0.0f, -2200.0f }, + { 250.0f, 0.0f, -2200.0f }, + }; + Vec sp10; + s32 sp8[2] = { 6, 21 }; + switch (object->work[1]) { + case 0: + if ((fn_1_4164() == 3) && (fn_1_419C() != 0) && (fn_1_4324() != 0)) { + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + Hu3DMotionShiftSet(object->model[0], object->motion[0], 0.0f, 0.0f, HU3D_MOTATTR_LOOP); + var_r30 = fn_1_42F0(); + object->trans.x = sp1C[var_r30].x; + object->trans.y = sp1C[var_r30].y; + object->trans.z = sp1C[var_r30].z; + object->rot.y = 0.0f; + object->work[1] = 1; + object->work[2] = 0; + } + break; + case 1: + object->work[2]++; + if (object->work[2] > 18.0f) { + Hu3DMotionShiftSet(object->model[0], object->motion[2], 0.0f, 30.0f, HU3D_MOTATTR_LOOP); + object->work[1] = 2; + } + break; + case 2: + sp10.x = (*lbl_1_bss_40)->trans.x - object->trans.x; + sp10.y = 0.0f; + sp10.z = (*lbl_1_bss_40)->trans.z - object->trans.z; + object->rot.y = fn_1_47D0(object->rot.y, atan2d(sp10.x, sp10.z), 0.1f); + object->trans.z += 6.666667f; + if (fn_1_4358() != 0) { + HuAudFXPlay(0x3C); + Hu3DMotionShiftSet(object->model[0], object->motion[3], 0.0f, 30.0f, HU3D_MOTATTR_LOOP); + object->work[1] = 3; + object->work[3] = 0x3C; + } + break; + case 3: + Hu3DMotionSpeedSet(object->model[0], 0.9f); + var_r29 = Hu3DMotionTimeGet(object->model[0]); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + if (var_r29 == sp8[var_r30]) { + var_f30 = 2.1166666f * object->work[3]; + HuAudFXPlayVol(0x6B, var_f30); + } + } + sp10.x = (*lbl_1_bss_40)->trans.x - object->trans.x; + sp10.y = 0.0f; + sp10.z = (*lbl_1_bss_40)->trans.z - object->trans.z; + object->rot.y = fn_1_47D0(object->rot.y, atan2d(sp10.x, sp10.z), 0.1f); + if (object->trans.z < -900.0f) { + // depending on refresh rate? + object->trans.z += 11.666667f; + } + else { + var_f31 = PSVECMag(&sp10); + if (var_f31 < 20.0f) { + var_f31 = 0.0f; + } + else { + if (PSVECMag(&sp10) >= 100.0f) { + var_f31 = 100.0f; + } + var_f31 = 0.2f + (0.008f * var_f31); + var_f31 *= 11.666667f; + } + object->trans.x = object->trans.x + (var_f31 * sind(object->rot.y)); + object->trans.z = object->trans.z + (var_f31 * cosd(object->rot.y)); + } + if ((object->trans.z > 450.0f) && (object->work[3] != 0)) { + object->work[3]--; + } + break; + } +} diff --git a/src/REL/m460Dll/score.c b/src/REL/m460Dll/score.c new file mode 100644 index 00000000..357c2d8c --- /dev/null +++ b/src/REL/m460Dll/score.c @@ -0,0 +1,183 @@ +#include "datadir_enum.h" +#include "game/data.h" + +#include "REL/m460Dll.h" +#include "game/memory.h" + +#include "game/esprite.h" +#ifndef __MWERKS__ +#endif + +typedef struct UnkM460DllScoreWork { + s32 unk_00; + s32 unk_04; + s16 unk_08; + s16 unk_0A; + s16 unk_0C[6]; + s32 unk_18; + float unk_1C; +} UnkM460DllScoreWork; /* size = 0x20 */ + +typedef void (*UnkM460DllScoreFunc)(void); + +void fn_1_9020(s32 arg0); +void fn_1_9050(omObjData *object); +void fn_1_916C(void); +void fn_1_91E4(void); +void fn_1_9270(void); + +UnkM460DllScoreFunc lbl_1_data_380[3] = { fn_1_916C, fn_1_91E4, fn_1_9270 }; + +Process *lbl_1_bss_54; +omObjData *lbl_1_bss_50; +// ? lbl_1_rodata_3D0; + +void fn_1_8CAC(Process *process, s16 arg1) +{ + UnkM460DllScoreWork *var_r31; + u32 var_r30; + + lbl_1_bss_54 = process; + lbl_1_bss_50 = omAddObjEx(lbl_1_bss_54, 0x800, 0, 0, 7, fn_1_9050); + lbl_1_bss_50->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(UnkM460DllScoreWork), MEMORY_DEFAULT_NUM); + var_r31 = lbl_1_bss_50->data; + var_r31->unk_08 = arg1; + var_r31->unk_0A = 0; + var_r31->unk_0C[4] = espEntry(0x590024, 2, 0); + espColorSet(var_r31->unk_0C[4], 0, 0, 0); + espTPLvlSet(var_r31->unk_0C[4], 0.5f); + espPosSet(var_r31->unk_0C[4], 508.0f, 64.0f); + var_r31->unk_0C[5] = espEntry(0x610037, 1, 0); + espPosSet(var_r31->unk_0C[5], 490.0f, 56.0f); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r31->unk_0C[var_r30] = espEntry(0x610030, 0, 0); + espPosSet(var_r31->unk_0C[var_r30], (var_r30 * 0x10) + 0x1FE, 56.0f); + espDispOff(var_r31->unk_0C[var_r30]); + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r31->unk_0C[var_r30 + 2] = espEntry(0x610031, 1, 0); + espPosSet(var_r31->unk_0C[var_r30 + 2], (var_r30 * 0x10) + 0x1FE, 74.0f); + } + for (var_r30 = 0; var_r30 < 6; var_r30++) { + espDispOff(var_r31->unk_0C[var_r30]); + } + HuDataDirClose(DATA_MAKE_NUM(DATADIR_MGCONST, 0)); + fn_1_9020(0); +} + +void fn_1_8F38(void) +{ + s32 var_r31; + UnkM460DllScoreWork *var_r30 = lbl_1_bss_50->data; + for (var_r31 = 0; var_r31 < 6; var_r31++) { + espKill(var_r30->unk_0C[var_r31]); + } + HuMemDirectFree(lbl_1_bss_50->data); +} + +void fn_1_8FAC(s32 arg0) +{ + s32 sp8; + s32 var_r3; + + switch (arg0) { + case 0: + fn_1_9020(1); + break; + case 1: + fn_1_9020(2); + break; + } +} + +void fn_1_8FFC(void) +{ + fn_1_9020(0); +} + +void fn_1_9020(s32 arg0) +{ + UnkM460DllScoreWork *var_r31; + + var_r31 = lbl_1_bss_50->data; + var_r31->unk_00 = arg0; + var_r31->unk_04 = 0; +} + +void fn_1_9050(omObjData *arg0) +{ + UnkM460DllScoreWork *var_r31; + s16 var_r30; + + var_r31 = lbl_1_bss_50->data; + lbl_1_data_380[var_r31->unk_00](); + var_r30 = var_r31->unk_08; + espBankSet(var_r31->unk_0C[0], var_r30 / 10); + var_r30 -= (var_r30 / 10) * 10; + espBankSet(var_r31->unk_0C[1], var_r30); + var_r30 = var_r31->unk_0A; + espBankSet(var_r31->unk_0C[2], var_r30 / 10); + var_r30 -= (var_r30 / 10) * 10; + espBankSet(var_r31->unk_0C[3], var_r30); +} + +void fn_1_916C(void) +{ + UnkM460DllScoreWork *var_r31; + s32 var_r30; + + var_r31 = lbl_1_bss_50->data; + if (var_r31->unk_04 == 0) { + for (var_r30 = 0; var_r30 < 6; var_r30++) { + espDispOff(var_r31->unk_0C[var_r30]); + } + var_r31->unk_04++; + } +} + +void fn_1_91E4(void) +{ + UnkM460DllScoreWork *var_r31; + s16 var_r30; + + var_r31 = lbl_1_bss_50->data; + if (var_r31->unk_04 == 0) { + for (var_r30 = 0; var_r30 < 6; var_r30++) { + espDispOn(var_r31->unk_0C[var_r30]); + } + var_r31->unk_04++; + } + var_r31->unk_0A = fn_1_4370(); +} + +void fn_1_9270(void) +{ + UnkM460DllScoreWork *var_r31; + s32 var_r30; + + var_r31 = lbl_1_bss_50->data; + if (var_r31->unk_04 == 0) { + var_r31->unk_18 = 0; + var_r31->unk_1C = 1.0f; + if (var_r31->unk_0A > var_r31->unk_08) { + var_r31->unk_08 = var_r31->unk_0A; + } + var_r31->unk_04++; + } + if (var_r31->unk_18 == 0) { + if ((var_r31->unk_1C += 0.02f) >= 1.2f) { + var_r31->unk_1C = 1.2f; + var_r31->unk_18 = 1; + } + } + else { + if ((var_r31->unk_1C -= 0.04f) <= 1.0f) { + var_r31->unk_1C = 1.0f; + var_r31->unk_18 = 0; + } + } + for (var_r30 = 0; var_r30 <= 1; var_r30++) { + espScaleSet(var_r31->unk_0C[var_r30], var_r31->unk_1C, var_r31->unk_1C); + } + espScaleSet(var_r31->unk_0C[5], var_r31->unk_1C, var_r31->unk_1C); +} From faacc236bfefdaa46c1194c6b4954a86ae802fae Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 19 Nov 2024 02:57:22 +0100 Subject: [PATCH 027/178] Imported some runtime libraries --- configure.py | 6 +- include/Runtime.PPCEABI.H/__va_arg.h | 40 ++ include/dol2asm.h | 90 +++ include/dolphin/os.h | 10 +- src/Runtime.PPCEABI.H/GCN_Mem_Alloc.c | 30 + src/Runtime.PPCEABI.H/__mem.c | 91 +++ src/Runtime.PPCEABI.H/__va_arg.c | 50 ++ src/Runtime.PPCEABI.H/runtime.c | 827 ++++++++++++++++++++++++++ 8 files changed, 1139 insertions(+), 5 deletions(-) create mode 100644 include/Runtime.PPCEABI.H/__va_arg.h create mode 100644 include/dol2asm.h create mode 100644 src/Runtime.PPCEABI.H/GCN_Mem_Alloc.c create mode 100644 src/Runtime.PPCEABI.H/__mem.c create mode 100644 src/Runtime.PPCEABI.H/__va_arg.c create mode 100644 src/Runtime.PPCEABI.H/runtime.c diff --git a/configure.py b/configure.py index 3f14b329..608ebd22 100644 --- a/configure.py +++ b/configure.py @@ -631,13 +631,13 @@ config.libs = [ "cflags": cflags_runtime, "host": False, "objects": [ - Object(NonMatching, "Runtime.PPCEABI.H/__va_arg.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__va_arg.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/global_destructor_chain.c"), - Object(NonMatching, "Runtime.PPCEABI.H/__mem.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__mem.c"), Object(NonMatching, "Runtime.PPCEABI.H/New.cp"), Object(NonMatching, "Runtime.PPCEABI.H/NewMore.cp"), Object(NonMatching, "Runtime.PPCEABI.H/NMWException.cp"), - Object(NonMatching, "Runtime.PPCEABI.H/runtime.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/runtime.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__init_cpp_exceptions.cpp"), Object(NonMatching, "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cp"), Object(NonMatching, "Runtime.PPCEABI.H/GCN_mem_alloc.c"), diff --git a/include/Runtime.PPCEABI.H/__va_arg.h b/include/Runtime.PPCEABI.H/__va_arg.h new file mode 100644 index 00000000..22975640 --- /dev/null +++ b/include/Runtime.PPCEABI.H/__va_arg.h @@ -0,0 +1,40 @@ +#ifndef __VA_ARG_H +#define __VA_ARG_H + +#include "dolphin/types.h" + +typedef struct __va_list_struct { + char gpr; + char fpr; + char reserved[2]; + char* input_arg_area; + char* reg_save_area; +} _va_list_struct; + +typedef _va_list_struct __va_list[1]; + +#ifdef __cplusplus +extern "C" void* __va_arg(_va_list_struct*, int); +#else +void* __va_arg(_va_list_struct*, int); +#endif + +#ifndef __MWERKS__ +#define __builtin_va_info(...) +#define _var_arg_typeof(...) +#endif + +// from defined-string in mwcceppc.exe: +// __builtin_va_info: initialize the __va_list_struct +// _var_arg_typeof: convert type to integer for __va_arg +#define __va_start(list, fmt) __builtin_va_info(&list) +#define __va_arg(list, type) (*((type*)__va_arg(list, _var_arg_typeof(type)))) +#define va_start __va_start +#define va_arg __va_arg +#define va_end __va_end +#define va_list __va_list +#define __va_end(list) ((void)0) + +#define __va_copy(a, b) (*(a) = *(b)) + +#endif /* __VA_ARG_H */ diff --git a/include/dol2asm.h b/include/dol2asm.h new file mode 100644 index 00000000..3b28a774 --- /dev/null +++ b/include/dol2asm.h @@ -0,0 +1,90 @@ +#ifndef DOL2ASM +#define DOL2ASM + +// this helps remove useless error from the linter when using vscode. +#ifdef __MWERKS__ + +#ifdef __cplusplus +#define SECTION_INIT extern "C" __declspec(section ".init") +#define SECTION_RODATA __declspec(section ".rodata") +#define SECTION_DATA __declspec(section ".data") +#define SECTION_SDATA __declspec(section ".sdata") +#define SECTION_SDATA2 __declspec(section ".sdata2") +#define SECTION_BSS __declspec(section ".data") +#define SECTION_SBSS __declspec(section ".sdata") +#define SECTION_SBSS2 __declspec(section ".sdata2") +#define SECTION_CTORS extern "C" __declspec(section ".ctors") +#define SECTION_DTORS extern "C" __declspec(section ".dtors") +#define SECTION_EXTAB extern "C" __declspec(section "extab_") +#define SECTION_EXTABINDEX extern "C" __declspec(section "extabindex_") +#define SECTION_DEAD extern "C" __declspec(section ".dead") +#define SECTION_CTORS10 __declspec(section ".ctors$10") +#define SECTION_CTORS15 __declspec(section ".ctors$15") +#define SECTION_DTORS10 __declspec(section ".dtors$10") +#define SECTION_DTORS15 __declspec(section ".dtors$15") +#define COMPILER_STRIP_GATE(NAME, VALUE) SECTION_DEAD void* const cg_##NAME = (void*)(VALUE) +#define REGISTER_CTORS(ADDR, FUNCTION) SECTION_CTORS void* const _ctors_##ADDR = (void*)(FUNCTION); +#else +#define SECTION_INIT __declspec(section ".init") +#define SECTION_RODATA __declspec(section ".rodata") +#define SECTION_DATA __declspec(section ".data") +#define SECTION_SDATA __declspec(section ".sdata") +#define SECTION_SDATA2 __declspec(section ".sdata2") +#define SECTION_BSS __declspec(section ".data") +#define SECTION_SBSS __declspec(section ".sdata") +#define SECTION_SBSS2 __declspec(section ".sdata2") +#define SECTION_CTORS __declspec(section ".ctors") +#define SECTION_DTORS __declspec(section ".dtors") +#define SECTION_EXTAB __declspec(section "extab_") +#define SECTION_EXTABINDEX __declspec(section "extabindex_") +#define SECTION_DEAD __declspec(section ".dead") +#define SECTION_CTORS10 __declspec(section ".ctors$10") +#define SECTION_CTORS15 __declspec(section ".ctors$15") +#define SECTION_DTORS10 __declspec(section ".dtors$10") +#define SECTION_DTORS15 __declspec(section ".dtors$15") +#define COMPILER_STRIP_GATE(NAME, VALUE) SECTION_DEAD void* const cg_##NAME = (void*)(VALUE) +#define REGISTER_CTORS(ADDR, FUNCTION) SECTION_CTORS void* const _ctors_##ADDR = (void*)(FUNCTION); +#endif + +#else +#define SECTION_INIT +#define SECTION_RODATA +#define SECTION_DATA +#define SECTION_SDATA +#define SECTION_SDATA2 +#define SECTION_BSS +#define SECTION_SBSS +#define SECTION_SBSS2 +#define SECTION_CTORS +#define SECTION_DTORS +#define SECTION_EXTAB +#define SECTION_EXTABINDEX +#define SECTION_DEAD +#define SECTION_CTORS10 +#define SECTION_CTORS15 +#define SECTION_DTORS10 +#define SECTION_DTORS15 +#define COMPILER_STRIP_GATE(...) +#define REGISTER_CTORS(...) + +// vscode doesn't like asm and nofralloc very much +#define asm +#define nofralloc +#endif + +// floating-point constants +// TODO: move to different header +#define _HUGE_ENUF 1e+300 +#define INFINITY ((float)(_HUGE_ENUF * _HUGE_ENUF)) +#define HUGE_VAL ((double)INFINITY) +#define HUGE_VALL ((long double)INFINITY) + +#define DOUBLE_INF HUGE_VAL + +#pragma section ".dead" +#pragma section ".ctors$10" +#pragma section ".ctors$15" +#pragma section ".dtors$10" +#pragma section ".dtors$15" + +#endif /* DOL2ASM */ diff --git a/include/dolphin/os.h b/include/dolphin/os.h index 6394de8b..d255bb04 100644 --- a/include/dolphin/os.h +++ b/include/dolphin/os.h @@ -57,8 +57,14 @@ u32 OSUncachedToCached(void *ucaddr); #define OSDiffTick(tick1, tick0) ((s32)(tick1) - (s32)(tick0)) -#define OSRoundUp32B(v) (((u32)(v + 31) & ~31)) -#define OSRoundDown32B(x) (((u32)(x)) & ~31) +#define OSRoundUp32B(x) (((u32)(x) + 0x1F) & ~(0x1F)) +#define OSRoundDown32B(x) (((u32)(x)) & ~(0x1F)) + +#define OSRoundUp(x, align) (((x) + (align)-1) & (-(align))) +#define OSRoundUpPtr(x, align) ((void*)((((u32)(x)) + (align)-1) & (~((align)-1)))) + +#define OSRoundDown(x, align) ((x) & (-(align))) +#define OSRoundDownPtr(x, align) ((void*)(((u32)(x)) & (~((align)-1)))) void OSInit(); diff --git a/src/Runtime.PPCEABI.H/GCN_Mem_Alloc.c b/src/Runtime.PPCEABI.H/GCN_Mem_Alloc.c new file mode 100644 index 00000000..c36465e2 --- /dev/null +++ b/src/Runtime.PPCEABI.H/GCN_Mem_Alloc.c @@ -0,0 +1,30 @@ +#include "dolphin/os.h" + +inline static void InitDefaultHeap(void) { + void* arenaLo; + void* arenaHi; + + OSReport("GCN_Mem_Alloc.c : InitDefaultHeap. No Heap Available\n"); + OSReport("Metrowerks CW runtime library initializing default heap\n"); + + arenaLo = OSGetArenaLo(); + arenaHi = OSGetArenaHi(); + + arenaLo = OSInitAlloc(arenaLo, arenaHi, 1); + OSSetArenaLo(arenaLo); + + arenaLo = OSRoundUpPtr(arenaLo, 0x20); + arenaHi = OSRoundDownPtr(arenaHi, 0x20); + + OSSetCurrentHeap(OSCreateHeap(arenaLo, arenaHi)); + OSSetArenaLo(arenaLo = arenaHi); +} + +/* 80362914-803629CC 35D254 00B8+00 0/0 1/1 0/0 .text __sys_free */ +void __sys_free(void* p) { + if (__OSCurrHeap == -1) { + InitDefaultHeap(); + } + + OSFreeToHeap(__OSCurrHeap, p); +} diff --git a/src/Runtime.PPCEABI.H/__mem.c b/src/Runtime.PPCEABI.H/__mem.c new file mode 100644 index 00000000..08da3972 --- /dev/null +++ b/src/Runtime.PPCEABI.H/__mem.c @@ -0,0 +1,91 @@ +#include "dol2asm.h" +#include "stddef.h" +#include + + +/* 80003540-80003590 000440 0050+00 1/1 63/63 6/6 .init memcpy */ +SECTION_INIT void* memcpy(void* dst, const void* src, size_t n) { + const unsigned char* s; + unsigned char* d; + + if ((unsigned long)src >= (unsigned long)dst) { + s = (const unsigned char*)src - 1; + d = (unsigned char*)dst - 1; + n++; + while (--n != 0) + *++d = *++s; + } else { + s = (const unsigned char*)src + n; + d = (unsigned char*)dst + n; + n++; + while (--n != 0) + *--d = *--s; + } + return dst; +} + +/* 80003488-80003540 000388 00B8+00 1/1 0/0 0/0 .init __fill_mem */ +SECTION_INIT void __fill_mem(void* dst, int val, size_t n) { + unsigned long v = (unsigned char)val; + unsigned long i; + + ((unsigned char*)dst) = ((unsigned char*)dst) - 1; + + if (n >= 32) { + i = (~(unsigned long)dst) & 3; + + if (i) { + n -= i; + + do { + *++(((unsigned char*)dst)) = v; + } while (--i); + } + + if (v) + v |= v << 24 | v << 16 | v << 8; + + ((unsigned long*)dst) = ((unsigned long*)(((unsigned char*)dst) + 1)) - 1; + + i = n >> 5; + + if (i) { + do { + *++((unsigned long*)dst) = v; + *++((unsigned long*)dst) = v; + *++((unsigned long*)dst) = v; + *++((unsigned long*)dst) = v; + *++((unsigned long*)dst) = v; + *++((unsigned long*)dst) = v; + *++((unsigned long*)dst) = v; + *++((unsigned long*)dst) = v; + } while (--i); + } + + i = (n & 31) >> 2; + + if (i) { + do { + *++((unsigned long*)dst) = v; + } while (--i); + } + + ((unsigned char*)dst) = ((unsigned char*)(((unsigned long*)dst) + 1)) - 1; + + n &= 3; + } + + if (n) + do { + *++((unsigned char*)dst) = v; + } while (--n); + + return; +} + +/* 80003458-80003488 000358 0030+00 1/1 55/55 137/137 .init memset */ +SECTION_INIT void* memset(void* dst, int val, size_t n) { + __fill_mem(dst, val, n); + + return dst; +} diff --git a/src/Runtime.PPCEABI.H/__va_arg.c b/src/Runtime.PPCEABI.H/__va_arg.c new file mode 100644 index 00000000..c6e8bc63 --- /dev/null +++ b/src/Runtime.PPCEABI.H/__va_arg.c @@ -0,0 +1,50 @@ +#include "Runtime.PPCEABI.H/__va_arg.h" + +#undef __va_arg + +/* 80361B14-80361BDC 35C454 00C8+00 0/0 3/3 0/0 .text __va_arg */ +void* __va_arg(_va_list_struct* list, int type) { + char* addr; + char* reg = &(list->gpr); + int g_reg = list->gpr; + int maxsize = 8; + int size = 4; + int increment = 1; + int even = 0; + int fpr_offset = 0; + int regsize = 4; + + if (type == 3) { + reg = &(list->fpr); + g_reg = list->fpr; + size = 8; + fpr_offset = 32; + regsize = 8; + } + + if (type == 2) { + size = 8; + maxsize--; + if (g_reg & 1) { + even = 1; + } + increment = 2; + } + + if (g_reg < maxsize) { + g_reg += even; + addr = list->reg_save_area + fpr_offset + (g_reg * regsize); + *reg = g_reg + increment; + } else { + *reg = 8; + addr = list->input_arg_area; + addr = (char*)(((u32)(addr) + ((size)-1)) & ~((size)-1)); + list->input_arg_area = addr + size; + } + + if (type == 0) { + addr = *((char**)addr); + } + + return addr; +} diff --git a/src/Runtime.PPCEABI.H/runtime.c b/src/Runtime.PPCEABI.H/runtime.c new file mode 100644 index 00000000..8616931a --- /dev/null +++ b/src/Runtime.PPCEABI.H/runtime.c @@ -0,0 +1,827 @@ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* macros for GPR/FPR resting and saving */ +#define SAVE_FPR(reg) _savefpr_##reg +#define RESTORE_FPR(reg) _restfpr_##reg +#define SAVE_GPR(reg) _savegpr_##reg +#define RESTORE_GPR(reg) _restgpr_##reg + +#define ENTRY_SAVE_FPR(reg) entry SAVE_FPR(reg) +#define ENTRY_RESTORE_FPR(reg) entry RESTORE_FPR(reg) +#define ENTRY_SAVE_GPR(reg) entry SAVE_GPR(reg) +#define ENTRY_RESTORE_GPR(reg) entry RESTORE_GPR(reg) + +#define save_restore_reg r11 + +asm void __div2u(void); +asm void __div2i(void); +asm void __mod2u(void); +asm void __mod2i(void); +asm void __shl2i(void); +asm void __shr2u(void); +asm void __shr2i(void); +asm void __cvt_dbl_usll(void); + +void SAVE_FPR(14)(void); +void SAVE_FPR(15)(void); +void SAVE_FPR(16)(void); +void SAVE_FPR(17)(void); +void SAVE_FPR(18)(void); +void SAVE_FPR(19)(void); +void SAVE_FPR(20)(void); +void SAVE_FPR(21)(void); +void SAVE_FPR(22)(void); +void SAVE_FPR(23)(void); +void SAVE_FPR(24)(void); +void SAVE_FPR(25)(void); +void SAVE_FPR(26)(void); +void SAVE_FPR(27)(void); +void SAVE_FPR(28)(void); +void SAVE_FPR(29)(void); +void SAVE_FPR(30)(void); +void SAVE_FPR(31)(void); + +void RESTORE_FPR(14)(void); +void RESTORE_FPR(15)(void); +void RESTORE_FPR(16)(void); +void RESTORE_FPR(17)(void); +void RESTORE_FPR(18)(void); +void RESTORE_FPR(19)(void); +void RESTORE_FPR(20)(void); +void RESTORE_FPR(21)(void); +void RESTORE_FPR(22)(void); +void RESTORE_FPR(23)(void); +void RESTORE_FPR(24)(void); +void RESTORE_FPR(25)(void); +void RESTORE_FPR(26)(void); +void RESTORE_FPR(27)(void); +void RESTORE_FPR(28)(void); +void RESTORE_FPR(29)(void); +void RESTORE_FPR(30)(void); +void RESTORE_FPR(31)(void); + +void SAVE_GPR(14)(void); +void SAVE_GPR(15)(void); +void SAVE_GPR(16)(void); +void SAVE_GPR(17)(void); +void SAVE_GPR(18)(void); +void SAVE_GPR(19)(void); +void SAVE_GPR(20)(void); +void SAVE_GPR(21)(void); +void SAVE_GPR(22)(void); +void SAVE_GPR(23)(void); +void SAVE_GPR(24)(void); +void SAVE_GPR(25)(void); +void SAVE_GPR(26)(void); +void SAVE_GPR(27)(void); +void SAVE_GPR(28)(void); +void SAVE_GPR(29)(void); +void SAVE_GPR(30)(void); +void SAVE_GPR(31)(void); + +void RESTORE_GPR(14)(void); +void RESTORE_GPR(15)(void); +void RESTORE_GPR(16)(void); +void RESTORE_GPR(17)(void); +void RESTORE_GPR(18)(void); +void RESTORE_GPR(19)(void); +void RESTORE_GPR(20)(void); +void RESTORE_GPR(21)(void); +void RESTORE_GPR(22)(void); +void RESTORE_GPR(23)(void); +void RESTORE_GPR(24)(void); +void RESTORE_GPR(25)(void); +void RESTORE_GPR(26)(void); +void RESTORE_GPR(27)(void); +void RESTORE_GPR(28)(void); +void RESTORE_GPR(29)(void); +void RESTORE_GPR(30)(void); +void RESTORE_GPR(31)(void); + +static const u32 __constants[] = { + 0x00000000, 0x00000000, 0x41F00000, 0x00000000, 0x41E00000, 0x00000000, +}; + +/* 803620AC-80362108 35C9EC 005C+00 0/0 42/42 89/89 .text __cvt_fp2unsigned */ +asm u32 __cvt_fp2unsigned(register f64 d) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + stwu r1,-16(r1) + lis r4, __constants@h + ori r4, r4, __constants@l + li r3,0 + lfd fp0,0(r4) + lfd fp3,8(r4) + lfd fp4,16(r4) + fcmpu cr0,fp1,fp0 + fcmpu cr6,fp1,fp3 + blt cr0, @exit + addi r3,r3,-1 + bge cr6,@exit + fcmpu cr7,fp1,fp4 + fmr fp2,fp1 + blt cr7,@1 + fsub fp2,fp1,fp4 +@1 fctiwz fp2,fp2 + stfd fp2,8(r1) + lwz r3,12(r1) + blt cr7,@exit + addis r3,r3,-0x8000 +@exit: + addi r1,r1,16 + blr +#endif // clang-format on +} + +/* 80362108-80362134 35CA48 002C+00 0/0 0/0 0/0 .text __save_fpr */ +asm void __save_fpr(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + ENTRY_SAVE_FPR(14) + stfd fp14,-144(save_restore_reg) + ENTRY_SAVE_FPR(15) + stfd fp15,-136(save_restore_reg) + ENTRY_SAVE_FPR(16) + stfd fp16,-128(save_restore_reg) + ENTRY_SAVE_FPR(17) + stfd fp17,-120(save_restore_reg) + ENTRY_SAVE_FPR(18) + stfd fp18,-112(save_restore_reg) + ENTRY_SAVE_FPR(19) + stfd fp19,-104(save_restore_reg) + ENTRY_SAVE_FPR(20) + stfd fp20,-96(save_restore_reg) + ENTRY_SAVE_FPR(21) + stfd fp21,-88(save_restore_reg) + ENTRY_SAVE_FPR(22) + stfd fp22,-80(save_restore_reg) + ENTRY_SAVE_FPR(23) + stfd fp23,-72(save_restore_reg) + ENTRY_SAVE_FPR(24) + stfd fp24,-64(save_restore_reg) + ENTRY_SAVE_FPR(25) + stfd fp25,-56(save_restore_reg) + ENTRY_SAVE_FPR(26) + stfd fp26,-48(save_restore_reg) + ENTRY_SAVE_FPR(27) + stfd fp27,-40(save_restore_reg) + ENTRY_SAVE_FPR(28) + stfd fp28,-32(save_restore_reg) + ENTRY_SAVE_FPR(29) + stfd fp29,-24(save_restore_reg) + ENTRY_SAVE_FPR(30) + stfd fp30,-16(save_restore_reg) + ENTRY_SAVE_FPR(31) + stfd fp31,-8(save_restore_reg) + blr +#endif // clang-format on +} + +/* 80362154-80362180 35CA94 002C+00 0/0 0/0 0/0 .text __restore_fpr */ +asm void __restore_fpr(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + ENTRY_RESTORE_FPR(14) + lfd fp14,-144(save_restore_reg) + ENTRY_RESTORE_FPR(15) + lfd fp15,-136(save_restore_reg) + ENTRY_RESTORE_FPR(16) + lfd fp16,-128(save_restore_reg) + ENTRY_RESTORE_FPR(17) + lfd fp17,-120(save_restore_reg) + ENTRY_RESTORE_FPR(18) + lfd fp18,-112(save_restore_reg) + ENTRY_RESTORE_FPR(19) + lfd fp19,-104(save_restore_reg) + ENTRY_RESTORE_FPR(20) + lfd fp20,-96(save_restore_reg) + ENTRY_RESTORE_FPR(21) + lfd fp21,-88(save_restore_reg) + ENTRY_RESTORE_FPR(22) + lfd fp22,-80(save_restore_reg) + ENTRY_RESTORE_FPR(23) + lfd fp23,-72(save_restore_reg) + ENTRY_RESTORE_FPR(24) + lfd fp24,-64(save_restore_reg) + ENTRY_RESTORE_FPR(25) + lfd fp25,-56(save_restore_reg) + ENTRY_RESTORE_FPR(26) + lfd fp26,-48(save_restore_reg) + ENTRY_RESTORE_FPR(27) + lfd fp27,-40(save_restore_reg) + ENTRY_RESTORE_FPR(28) + lfd fp28,-32(save_restore_reg) + ENTRY_RESTORE_FPR(29) + lfd fp29,-24(save_restore_reg) + ENTRY_RESTORE_FPR(30) + lfd fp30,-16(save_restore_reg) + ENTRY_RESTORE_FPR(31) + lfd fp31,-8(save_restore_reg) + blr +#endif // clang-format on +} + +/* 803621A0-803621A4 35CAE0 0004+00 0/0 22/22 13/13 .text _savegpr_14 */ +asm void __save_gpr(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + ENTRY_SAVE_GPR(14) + stw r14,-72(save_restore_reg) + ENTRY_SAVE_GPR(15) + stw r15,-68(save_restore_reg) + ENTRY_SAVE_GPR(16) + stw r16,-64(save_restore_reg) + ENTRY_SAVE_GPR(17) + stw r17,-60(save_restore_reg) + ENTRY_SAVE_GPR(18) + stw r18,-56(save_restore_reg) + ENTRY_SAVE_GPR(19) + stw r19,-52(save_restore_reg) + ENTRY_SAVE_GPR(20) + stw r20,-48(save_restore_reg) + ENTRY_SAVE_GPR(21) + stw r21,-44(save_restore_reg) + ENTRY_SAVE_GPR(22) + stw r22,-40(save_restore_reg) + ENTRY_SAVE_GPR(23) + stw r23,-36(save_restore_reg) + ENTRY_SAVE_GPR(24) + stw r24,-32(save_restore_reg) + ENTRY_SAVE_GPR(25) + stw r25,-28(save_restore_reg) + ENTRY_SAVE_GPR(26) + stw r26,-24(save_restore_reg) + ENTRY_SAVE_GPR(27) + stw r27,-20(save_restore_reg) + ENTRY_SAVE_GPR(28) + stw r28,-16(save_restore_reg) + ENTRY_SAVE_GPR(29) + stw r29,-12(save_restore_reg) + ENTRY_SAVE_GPR(30) + stw r30,-8(save_restore_reg) + ENTRY_SAVE_GPR(31) + stw r31,-4(save_restore_reg) + blr +#endif // clang-format on +} + +/* 803621EC-803621F0 35CB2C 0004+00 0/0 22/22 13/13 .text _restgpr_14 */ +asm void __restore_gpr(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + ENTRY_RESTORE_GPR(14) + lwz r14,-72(save_restore_reg) + ENTRY_RESTORE_GPR(15) + lwz r15,-68(save_restore_reg) + ENTRY_RESTORE_GPR(16) + lwz r16,-64(save_restore_reg) + ENTRY_RESTORE_GPR(17) + lwz r17,-60(save_restore_reg) + ENTRY_RESTORE_GPR(18) + lwz r18,-56(save_restore_reg) + ENTRY_RESTORE_GPR(19) + lwz r19,-52(save_restore_reg) + ENTRY_RESTORE_GPR(20) + lwz r20,-48(save_restore_reg) + ENTRY_RESTORE_GPR(21) + lwz r21,-44(save_restore_reg) + ENTRY_RESTORE_GPR(22) + lwz r22,-40(save_restore_reg) + ENTRY_RESTORE_GPR(23) + lwz r23,-36(save_restore_reg) + ENTRY_RESTORE_GPR(24) + lwz r24,-32(save_restore_reg) + ENTRY_RESTORE_GPR(25) + lwz r25,-28(save_restore_reg) + ENTRY_RESTORE_GPR(26) + lwz r26,-24(save_restore_reg) + ENTRY_RESTORE_GPR(27) + lwz r27,-20(save_restore_reg) + ENTRY_RESTORE_GPR(28) + lwz r28,-16(save_restore_reg) + ENTRY_RESTORE_GPR(29) + lwz r29,-12(save_restore_reg) + ENTRY_RESTORE_GPR(30) + lwz r30,-8(save_restore_reg) + ENTRY_RESTORE_GPR(31) + lwz r31,-4(save_restore_reg) + blr +#endif // clang-format on +} + +/* 80362238-80362324 35CB78 00EC+00 0/0 2/2 0/0 .text __div2u */ +asm void __div2u(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + cmpwi cr0,r3,0 + cntlzw r0,r3 + cntlzw r9,r4 + bne cr0,lab1 + addi r0,r9,32 +lab1: + cmpwi cr0,r5,0 + cntlzw r9,r5 + cntlzw r10,r6 + bne cr0,lab2 + addi r9,r10,32 +lab2: + cmpw cr0,r0,r9 + subfic r10,r0,64 + bgt cr0,lab9 + addi r9,r9,1 + subfic r9,r9,64 + add r0,r0,r9 + subf r9,r9,r10 + mtctr r9 + cmpwi cr0,r9,32 + addi r7,r9,-32 + blt cr0,lab3 + srw r8,r3,r7 + li r7,0 + b lab4 +lab3: + srw r8,r4,r9 + subfic r7,r9,32 + slw r7,r3,r7 + or r8,r8,r7 + srw r7,r3,r9 +lab4: + cmpwi cr0,r0,32 + addic r9,r0,-32 + blt cr0,lab5 + slw r3,r4,r9 + li r4,0 + b lab6 +lab5: + slw r3,r3,r0 + subfic r9,r0,32 + srw r9,r4,r9 + or r3,r3,r9 + slw r4,r4,r0 +lab6: + li r10,-1 + addic r7,r7,0 +lab7: + adde r4,r4,r4 + adde r3,r3,r3 + adde r8,r8,r8 + adde r7,r7,r7 + subfc r0,r6,r8 + subfe. r9,r5,r7 + blt cr0,lab8 + mr r8,r0 + mr r7,r9 + addic r0,r10,1 +lab8: + bdnz lab7 + adde r4,r4,r4 + adde r3,r3,r3 + blr +lab9: + li r4,0 + li r3,0 + blr +#endif // clang-format on +} + +/* 80362324-8036245C 35CC64 0138+00 0/0 16/16 1/1 .text __div2i */ +asm void __div2i(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + stwu r1,-16(r1) + rlwinm. r9,r3,0,0,0 + beq cr0,positive1 + subfic r4,r4,0 + subfze r3,r3 +positive1: + stw r9,8(r1) + rlwinm. r10,r5,0,0,0 + beq cr0,positive2 + subfic r6,r6,0 + subfze r5,r5 +positive2: + stw r10,12(r1) + cmpwi cr0,r3,0 + cntlzw r0,r3 + cntlzw r9,r4 + bne cr0,lab1 + addi r0,r9,32 +lab1: + cmpwi cr0,r5,0 + cntlzw r9,r5 + cntlzw r10,r6 + bne cr0,lab2 + addi r9,r10,32 +lab2: + cmpw cr0,r0,r9 + subfic r10,r0,64 + bgt cr0,lab9 + addi r9,r9,1 + subfic r9,r9,64 + add r0,r0,r9 + subf r9,r9,r10 + mtctr r9 + cmpwi cr0,r9,32 + addi r7,r9,-32 + blt cr0,lab3 + srw r8,r3,r7 + li r7,0 + b lab4 +lab3: + srw r8,r4,r9 + subfic r7,r9,32 + slw r7,r3,r7 + or r8,r8,r7 + srw r7,r3,r9 +lab4: + cmpwi cr0,r0,32 + addic r9,r0,-32 + blt cr0,lab5 + slw r3,r4,r9 + li r4,0 + b lab6 +lab5: + slw r3,r3,r0 + subfic r9,r0,32 + srw r9,r4,r9 + or r3,r3,r9 + slw r4,r4,r0 +lab6: + li r10,-1 + addic r7,r7,0 +lab7: + adde r4,r4,r4 + adde r3,r3,r3 + adde r8,r8,r8 + adde r7,r7,r7 + subfc r0,r6,r8 + subfe. r9,r5,r7 + blt cr0,lab8 + mr r8,r0 + mr r7,r9 + addic r0,r10,1 +lab8: + bdnz lab7 + adde r4,r4,r4 + adde r3,r3,r3 + lwz r9,8(r1) + lwz r10,12(r1) + xor. r7,r9,r10 + beq cr0,no_adjust + cmpwi cr0,r9,0 + subfic r4,r4,0 + subfze r3,r3 + +no_adjust: + b func_end + +lab9: + li r4,0 + li r3,0 +func_end: + addi r1,r1,16 + blr +#endif // clang-format on +} + +/* 8036245C-80362540 35CD9C 00E4+00 0/0 2/2 0/0 .text __mod2u */ +asm void __mod2u(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + cmpwi cr0,r3,0 + cntlzw r0,r3 + cntlzw r9,r4 + bne cr0,lab1 + addi r0,r9,32 +lab1: + cmpwi cr0,r5,0 + cntlzw r9,r5 + cntlzw r10,r6 + bne cr0,lab2 + addi r9,r10,32 +lab2: + cmpw cr0,r0,r9 + subfic r10,r0,64 + bgt cr0,lab9 + addi r9,r9,1 + subfic r9,r9,64 + add r0,r0,r9 + subf r9,r9,r10 + mtctr r9 + cmpwi cr0,r9,32 + addi r7,r9,-32 + blt cr0,lab3 + srw r8,r3,r7 + li r7,0 + b lab4 +lab3: + srw r8,r4,r9 + subfic r7,r9,32 + slw r7,r3,r7 + or r8,r8,r7 + srw r7,r3,r9 +lab4: + cmpwi cr0,r0,32 + addic r9,r0,-32 + blt cr0,lab5 + slw r3,r4,r9 + li r4,0 + b lab6 +lab5: + slw r3,r3,r0 + subfic r9,r0,32 + srw r9,r4,r9 + or r3,r3,r9 + slw r4,r4,r0 +lab6: + li r10,-1 + addic r7,r7,0 +lab7: + adde r4,r4,r4 + adde r3,r3,r3 + adde r8,r8,r8 + adde r7,r7,r7 + subfc r0,r6,r8 + subfe. r9,r5,r7 + blt cr0,lab8 + mr r8,r0 + mr r7,r9 + addic r0,r10,1 +lab8: + bdnz lab7 + mr r4,r8 + mr r3,r7 + blr +lab9: + blr +#endif // clang-format on +} + +/* 80362540-8036264C 35CE80 010C+00 0/0 2/2 0/0 .text __mod2i */ +asm void __mod2i(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + + cmpwi cr7,r3,0 + bge cr7,positive1 + subfic r4,r4,0 + subfze r3,r3 +positive1: + cmpwi cr0,r5,0 + bge cr0,positive2 + subfic r6,r6,0 + subfze r5,r5 +positive2: + cmpwi cr0,r3,0 + cntlzw r0,r3 + cntlzw r9,r4 + bne cr0,lab1 + addi r0,r9,32 +lab1: + cmpwi cr0,r5,0 + cntlzw r9,r5 + cntlzw r10,r6 + bne cr0,lab2 + addi r9,r10,32 +lab2: + cmpw cr0,r0,r9 + subfic r10,r0,64 + bgt cr0,lab9 + addi r9,r9,1 + subfic r9,r9,64 + add r0,r0,r9 + subf r9,r9,r10 + mtctr r9 + cmpwi cr0,r9,32 + addi r7,r9,-32 + blt cr0,lab3 + srw r8,r3,r7 + li r7,0 + b lab4 +lab3: + srw r8,r4,r9 + subfic r7,r9,32 + slw r7,r3,r7 + or r8,r8,r7 + srw r7,r3,r9 +lab4: + cmpwi cr0,r0,32 + addic r9,r0,-32 + blt cr0,lab5 + slw r3,r4,r9 + li r4,0 + b lab6 +lab5: + slw r3,r3,r0 + subfic r9,r0,32 + srw r9,r4,r9 + or r3,r3,r9 + slw r4,r4,r0 +lab6: + li r10,-1 + addic r7,r7,0 +lab7: + adde r4,r4,r4 + adde r3,r3,r3 + adde r8,r8,r8 + adde r7,r7,r7 + subfc r0,r6,r8 + subfe. r9,r5,r7 + blt cr0,lab8 + mr r8,r0 + mr r7,r9 + addic r0,r10,1 +lab8: + bdnz lab7 + mr r4,r8 + mr r3,r7 +lab9: + bge cr7,no_adjust + subfic r4,r4,0 + subfze r3,r3 +no_adjust: + blr +#endif // clang-format on +} + +/* 8036264C-80362670 35CF8C 0024+00 0/0 2/2 0/0 .text __shl2i */ +asm void __shl2i(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + subfic r8,r5,32 + subic r9,r5,32 + slw r3,r3,r5 + srw r10,r4,r8 + or r3,r3,r10 + slw r10,r4,r9 + or r3,r3,r10 + slw r4,r4,r5 + blr +#endif // clang-format on +} + +/* 80362670-80362694 35CFB0 0024+00 0/0 2/2 0/0 .text __shr2u */ +asm void __shr2u(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + subfic r8,r5,32 + subic r9,r5,32 + srw r4,r4,r5 + slw r10,r3,r8 + or r4,r4,r10 + srw r10,r3,r9 + or r4,r4,r10 + srw r3,r3,r5 + blr +#endif // clang-format on +} + +/* 80362694-803626BC 35CFD4 0028+00 0/0 3/3 0/0 .text __shr2i */ +asm void __shr2i(void) { +#ifdef __MWERKS__ // clang-format off + nofralloc + subfic r8, r5, 0x20 + addic. r9, r5, -0x20 + srw r4, r4, r5 + slw r10, r3, r8 + or r4, r4, r10 + sraw r10, r3, r9 + ble around + or r4, r4, r10 +around: + sraw r3, r3, r5 + blr +#endif // clang-format on +} + +/* 803626BC-80362770 35CFFC 00B4+00 0/0 1/1 0/0 .text __cvt_sll_flt */ +asm void __cvt_sll_flt(void) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + stwu r1, -0x10(r1) + rlwinm. r5, r3, 0, 0, 0 + beq lbl_803626D0 + subfic r4, r4, 0 + subfze r3, r3 +lbl_803626D0: + or. r7, r3, r4 + li r6, 0 + beq lbl_80362758 + cntlzw r7, r3 + cntlzw r8, r4 + rlwinm r9, r7, 0x1a, 0, 4 + srawi r9, r9, 0x1f + and r9, r9, r8 + add r7, r7, r9 + subfic r8, r7, 0x20 + addic r9, r7, -32 + slw r3, r3, r7 + srw r10, r4, r8 + or r3, r3, r10 + slw r10, r4, r9 + or r3, r3, r10 + slw r4, r4, r7 + subf r6, r7, r6 + clrlwi r7, r4, 0x15 + cmpwi r7, 0x400 + addi r6, r6, 0x43e + blt lbl_80362740 + bgt lbl_80362734 + rlwinm. r7, r4, 0, 0x14, 0x14 + beq lbl_80362740 +lbl_80362734: + addic r4, r4, 0x800 + addze r3, r3 + addze r6, r6 +lbl_80362740: + rotlwi r4, r4, 0x15 + rlwimi r4, r3, 0x15, 0, 0xa + rlwinm r3, r3, 0x15, 0xc, 0x1f + slwi r6, r6, 0x14 + or r3, r6, r3 + or r3, r5, r3 +lbl_80362758: + stw r3, 8(r1) + stw r4, 0xc(r1) + lfd f1, 8(r1) + frsp f1, f1 + addi r1, r1, 0x10 + blr +#endif // clang-format on +} + +/* 80362770-8036283C 35D0B0 00CC+00 0/0 2/2 0/0 .text __cvt_dbl_usll */ +asm void __cvt_dbl_usll(void) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + stwu r1,-16(r1) + stfd f1,8(r1) + lwz r3,8(r1) + lwz r4,12(r1) + rlwinm r5,r3,12,21,31 + cmpli cr0,0,r5,1023 + bge cr0,not_fraction + li r3,0 + li r4,0 + b func_end +not_fraction: + mr r6,r3 + rlwinm r3,r3,0,12,31 + oris r3,r3,0x0010 + addi r5,r5,-1075 + cmpwi cr0,r5,0 + bge cr0,left + neg r5,r5 + subfic r8,r5,32 + subic r9,r5,32 + srw r4,r4,r5 + slw r10,r3,r8 + or r4,r4,r10 + srw r10,r3,r9 + or r4,r4,r10 + srw r3,r3,r5 + b around +left: + cmpwi cr0,r5,10 + ble+ no_overflow + rlwinm. r6,r6,0,0,0 + beq cr0,max_positive + lis r3,0x8000 + li r4,0 + b func_end +max_positive: + lis r3,0x7FFF + ori r3,r3,0xFFFF + li r4,-1 + b func_end +no_overflow: + subfic r8,r5,32 + subic r9,r5,32 + slw r3,r3,r5 + srw r10,r4,r8 + or r3,r3,r10 + slw r10,r4,r9 + or r3,r3,r10 + slw r4,r4,r5 +around: + rlwinm. r6,r6,0,0,0 + beq cr0,positive + subfic r4,r4,0 + subfze r3,r3 +positive: +func_end: + addi r1,r1,16 + blr +#endif // clang-format on +} + +#ifdef __cplusplus +} +#endif From a955c8a69b600c5c8d1003dd15c1a1e776d73baf Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 19 Nov 2024 16:48:37 +0100 Subject: [PATCH 028/178] Copied parts of m460Dll/main.c to m421Dll --- config/GMPE01_00/rels/m421Dll/symbols.txt | 2 +- include/REL/m421Dll.h | 42 ++ include/REL/m460Dll.h | 2 +- src/REL/m421Dll/main.c | 582 ++++++++++++++++++++++ src/REL/m460Dll/main.c | 222 ++++----- 5 files changed, 737 insertions(+), 113 deletions(-) create mode 100644 include/REL/m421Dll.h create mode 100644 src/REL/m421Dll/main.c diff --git a/config/GMPE01_00/rels/m421Dll/symbols.txt b/config/GMPE01_00/rels/m421Dll/symbols.txt index cb29a8cd..4afd037f 100644 --- a/config/GMPE01_00/rels/m421Dll/symbols.txt +++ b/config/GMPE01_00/rels/m421Dll/symbols.txt @@ -110,7 +110,7 @@ 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:4byte -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x50 +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x50 data:float lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x14 data:4byte lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float diff --git a/include/REL/m421Dll.h b/include/REL/m421Dll.h new file mode 100644 index 00000000..04e08da4 --- /dev/null +++ b/include/REL/m421Dll.h @@ -0,0 +1,42 @@ +#ifndef M421DLL_H +#define M421DLL_H + +#include "game/object.h" + +typedef struct UnkM421DllStruct { + float unk_00; + float unk_04; + float unk_08; + float unk_0C; +} UnkM421DllStruct; + +typedef struct M421DllCameraStruct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + u32 unk_0C; + float unk_10; + float unk_14; + float unk_18; + Vec unk_1C; + Vec unk_28; + float unk_34; + s32 unk_38; + s32 unk_3C; + float unk_40; + UnkM421DllStruct unk_44; + char unk54[0x30]; + float unk_84; + char unk88[0x4]; + float unk_8C; + float unk_90; + s32 unk_94; + char unk98[0xC]; +} M421DllCameraStruct; /* size = 0xA4 */ // same as M443DllCameraStruct and M460 + +void fn_1_4648(Process *process); +void fn_1_48B0(void); +void fn_1_B15C(Process *process, omObjData *object); +void fn_1_B1BC(void); + +#endif diff --git a/include/REL/m460Dll.h b/include/REL/m460Dll.h index 6f97310d..40ca863d 100644 --- a/include/REL/m460Dll.h +++ b/include/REL/m460Dll.h @@ -32,7 +32,7 @@ typedef struct M460DllCameraStruct { float unk_90; s32 unk_94; char unk98[0xC]; -} M460DllCameraStruct; /* size = 0xA4 */ // same as M443DllCameraStruct // TODO does this have to be here? +} M460DllCameraStruct; /* size = 0xA4 */ // same as M443DllCameraStruct void fn_1_3E68(u32 arg0); M460DllCameraStruct *fn_1_3E90(s32 arg0); diff --git a/src/REL/m421Dll/main.c b/src/REL/m421Dll/main.c new file mode 100644 index 00000000..d958eb05 --- /dev/null +++ b/src/REL/m421Dll/main.c @@ -0,0 +1,582 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/gamework.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m421Dll.h" + +#ifndef __MWERKS__ +#include "game/frand.h" +#endif + +typedef struct M421DllWork { + u32 unk_00; + s32 unk_04; + s32 unk_08; + u32 unk0C; + s32 unk_10; + u32 unk_14; + u32 unk_18; + u32 unk_1C; + u32 unk_20; + u32 unk24; + s32 unk28; + u32 unk_2C; + s32 unk30; + char unk34[0x4]; + u32 unk38; + s32 unk3C; + s32 unk40; + s32 unk44; + s32 unk48; + s32 unk4C; + u32 unk50; + s32 unk54[4]; + s32 unk64[4]; +} M421DllWork; /* size = 0x74 */ // TODO check the fields, they are copy pasted + +void fn_1_10EC(omObjData *object); +void fn_1_142C(omObjData *object); +void fn_1_1850(omObjData *object); +void fn_1_1C90(omObjData *object); +omObjFunc fn_1_213C(Process *process, omObjData *object); +void fn_1_21AC(omObjData *object); +omObjFunc fn_1_2A28(Process *process, omObjData *object); +void fn_1_2BB8(omObjData *object); +void fn_1_3020(Process *process); +void fn_1_30D0(omObjData *object); +void fn_1_3334(omObjData *object); +void fn_1_335C(omObjData *object); +void fn_1_38FC(ModelData *model, Mtx mtx); +void fn_1_3B50(u32 arg0); +M421DllCameraStruct *fn_1_3B78(s32 arg0); +M421DllCameraStruct *fn_1_3CB0(u32 arg0); +float fn_1_4478(float arg8, float arg9, float argA); +void fn_1_4A0(omObjData *object); +void fn_1_784(omObjData *object); +void fn_1_8B8(omObjData *object); +void fn_1_CBC(omObjData *object); + +GXColor lbl_1_data_A0 = { 0, 0, 0, 0 }; + +Process *lbl_1_bss_28; +omObjData *lbl_1_bss_24; +omObjData *lbl_1_bss_20; +// M421DllCameraStruct +omObjData *lbl_1_bss_1C; +s16 lbl_1_bss_18; +s16 lbl_1_bss_12; +s16 lbl_1_bss_10; +s16 lbl_1_bss_E; +s16 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +void fn_1_578(omObjData *var_r29) +{ + Vec sp14; + Vec sp8; + M421DllCameraStruct *var_r31; + M421DllWork *var_r30; + + var_r30 = var_r29->data; + var_r30->unk_04++; + var_r30->unk_10++; + var_r30->unk_18++; + var_r30->unk_2C++; + if ((omSysExitReq != 0) && (var_r30->unk_00 != 5)) { + var_r30->unk_00 = 4; + fn_1_784(var_r29); + } + var_r31 = fn_1_3B78(1); + sp8.x = -(sind(var_r31->unk_28.y) * cosd(var_r31->unk_28.x)); + sp8.y = -(-sind(var_r31->unk_28.x)); + sp8.z = -(cosd(var_r31->unk_28.y) * cosd(var_r31->unk_28.x)); + sp14.x = var_r31->unk_1C.x - (sp8.x * var_r31->unk_34); + sp14.y = var_r31->unk_1C.y - (sp8.y * var_r31->unk_34); + sp14.z = var_r31->unk_1C.z - (sp8.z * var_r31->unk_34); + HuAudFXListnerUpdate(&sp14, &sp8); +} + +void fn_1_784(omObjData *object) +{ + M421DllWork *work = object->data; + + if (work->unk_08 == 0) { + switch (work->unk_00) { + case 0: + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 0x3C); + work->unk_00 = 1; + work->unk_10 = 0; + object->func = fn_1_213C(lbl_1_bss_28, object); + break; + case 1: + work->unk_00 = 2; + work->unk_18 = 0; + object->func = fn_1_142C; + break; + case 2: + work->unk_00 = 3; + work->unk_2C = 0; + object->func = fn_1_2A28(lbl_1_bss_28, object); + break; + case 3: + case 4: + work->unk_08 = 1; + work->unk_00 = 5; + object->func = fn_1_CBC; + break; + case 5: + default: + work->unk_00 = 5; + object->func = fn_1_10EC; + } + work->unk_04 = 0; + } +} + +void fn_1_8B8(omObjData *object) +{ + fn_1_578(object); + fn_1_784(object); +} + +void fn_1_CBC(omObjData *object) +{ + M421DllWork *work = object->data; + fn_1_578(object); + if (WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); + work->unk_08 = 0; + fn_1_784(object); + } +} + +void fn_1_10EC(omObjData *object) +{ + fn_1_578(object); + if (WipeStatGet() == 0) { + fn_1_48B0(); + fn_1_B1BC(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_142C(omObjData *object) +{ + M421DllWork *work = object->data; + fn_1_578(object); + switch (work->unk_14) { + case 0: + work->unk_1C = 0x2D; + work->unk_20 = 0x3C; + lbl_1_bss_18 = MGSeqCreate(3, 0); + MGSeqPosSet(lbl_1_bss_10, 320.0f, 240.0f); + lbl_1_bss_18 = -1; + work->unk_14 = 1; + work->unk_18 = 0; + break; + case 1: + if ((lbl_1_bss_4 < 0) && ((MGSeqStatGet(lbl_1_bss_10) & 0x10) != 0)) { + lbl_1_bss_4 = HuAudSeqPlay(0x48); + } + if (MGSeqStatGet(lbl_1_bss_18) == 0 && (work->unk_08 == 0)) { + work->unk_14 = 2; + work->unk_18 = 0; + object->func = fn_1_1850; + } + break; + } +} + +omObjFunc fn_1_213C(Process *process, omObjData *object) +{ + M421DllCameraStruct *var_r31; + + object->work[0] = object->work[1] = 0; + fn_1_3B50(1); + var_r31 = fn_1_3CB0(0); + var_r31->unk_84 = 1.0f; + var_r31->unk_94 = 0; + return fn_1_21AC; +} + +void fn_1_3020(Process *process) +{ + Hu3DCameraCreate(0x1F); + lbl_1_bss_20 = omAddObjEx(process, 0x7FDA, 0, 0, -1, omOutViewMulti); + lbl_1_bss_20->work[0] = 5; + lbl_1_bss_1C = omAddObjEx(process, 0xC, 1, 0, -1, fn_1_30D0); + lbl_1_bss_1C->work[0] = 0; +} + +void fn_1_30D0(omObjData *object) +{ + UnkM421DllStruct sp1C[5] = { + { 320.0f, 240.0f, 640.0f, 480.0f }, + { 160.0f, 120.0f, 320.0f, 240.0f }, + { 160.0f, 360.0f, 320.0f, 240.0f }, + { 480.0f, 120.0f, 320.0f, 240.0f }, + { 480.0f, 360.0f, 320.0f, 240.0f }, + }; + s32 sp8[5] = { 1, 2, 4, 8, 16 }; + M421DllCameraStruct *var_r31; + s32 var_r29; + M421DllCameraStruct *var_r28; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, 10 * sizeof(M421DllCameraStruct), MEMORY_DEFAULT_NUM); + var_r28 = object->data; + memset(var_r28, 0, 10 * sizeof(M421DllCameraStruct)); + object->model[0] = Hu3DHookFuncCreate(fn_1_38FC); + Hu3DModelLayerSet(object->model[0], 0); + Hu3DModelCameraSet(object->model[0], 0x1E); + for (var_r31 = var_r28, var_r29 = 0; var_r29 < 5; var_r29++, var_r31++) { + var_r31->unk_00 = 1; + var_r31->unk_04 = var_r29 * 0x64; + var_r31->unk_10 = 41.5f; + var_r31->unk_14 = 100.0f; + var_r31->unk_18 = 5500.0f; + var_r31->unk_1C.x = 0.0f; + var_r31->unk_1C.y = 0.0f; + var_r31->unk_1C.z = 0.0f; + var_r31->unk_28.x = -15.0f; + var_r31->unk_28.y = 0.0f; + var_r31->unk_28.z = 0.0f; + var_r31->unk_34 = 1000.0f; + var_r31->unk_40 = 1.0f; + var_r31->unk_44.unk_00 = sp1C[var_r29].unk_00; + var_r31->unk_44.unk_04 = sp1C[var_r29].unk_04; + var_r31->unk_44.unk_08 = sp1C[var_r29].unk_08; + var_r31->unk_44.unk_0C = sp1C[var_r29].unk_0C; + var_r31->unk_3C = var_r31->unk_0C = sp8[var_r29]; + var_r31->unk_08 = var_r29; + var_r31->unk_38 = var_r29; + } + object->work[1] = 0; + object->work[0]++; + fn_1_335C(object); + object->func = fn_1_3334; +} + +void fn_1_3334(omObjData *object) +{ + fn_1_335C(object); +} + +void fn_1_335C(omObjData *var_r28) +{ + float var_f31; + M421DllCameraStruct *var_r31; + s32 var_r30; + s32 var_r29; + M421DllCameraStruct *var_r27; + u32 var_r26; + u32 var_r25; + s32 var_r24; + u32 var_r23; + u32 var_r22; + u32 var_r21; + + var_r27 = var_r28->data; + { + s32 sp40[4] = { 2, 4, 8, 16 }; + u32 sp30[4]; + s32 sp20[4]; + float sp10[4]; + float sp8[2]; + var_r24 = 0; + var_r26 = 0; + memcpy(&var_r27[5], var_r27, 5 * sizeof(M421DllCameraStruct)); + switch (var_r28->work[1]) { + case 0: + break; + case 1: + var_r26 |= 1; + break; + case 2: + var_r26 |= 1; + case 3: + var_r24 = 1; + case 4: + var_r26 |= 0x1E; + break; + } + if (var_r24 != 0) { + Hu3DModelAttrReset(var_r28->model[0], HU3D_ATTR_DISPOFF); + } + else { + Hu3DModelAttrSet(var_r28->model[0], HU3D_ATTR_DISPOFF); + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + sp30[var_r30] = var_r27[var_r30 + 6].unk_04; + sp20[var_r30] = var_r30; + } + for (var_r30 = 0; var_r30 < 3; var_r30++) { + for (var_r29 = var_r30 + 1; var_r29 < 4; var_r29++) { + if ((var_r30 != var_r29) && (sp30[var_r30] > sp30[var_r29])) { + var_r25 = sp30[var_r30]; + sp30[var_r30] = sp30[var_r29]; + sp30[var_r29] = var_r25; + var_r25 = sp20[var_r30]; + sp20[var_r30] = sp20[var_r29]; + sp20[var_r29] = var_r25; + } + } + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + var_r27[sp20[var_r30] + 6].unk_3C = sp40[var_r30]; + var_r27[sp20[var_r30] + 6].unk_38 = var_r30 + 1; + } + + for (var_r31 = &var_r27[5], var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_00 == 0) || ((var_r26 & var_r31->unk_0C) == 0)) { + Hu3DCamera[var_r31->unk_38].fov = -1.0f; + } + else { + var_f31 = 1.2f * ((var_r31->unk_44.unk_08 / 640.0f) / (var_r31->unk_44.unk_0C / 480.0f)); + sp10[2] = var_r31->unk_44.unk_08 * var_r31->unk_40; + sp10[3] = var_r31->unk_44.unk_0C * var_r31->unk_40; + Hu3DCameraPerspectiveSet(var_r31->unk_3C, var_r31->unk_10, var_r31->unk_14, var_r31->unk_18, var_f31); + Hu3DCameraViewportSet(var_r31->unk_3C, var_r31->unk_44.unk_00 - (0.5f * sp10[2]), var_r31->unk_44.unk_04 - (0.5f * sp10[3]), sp10[2], + sp10[3], 0.0f, 1.0f); + sp10[0] = var_r31->unk_44.unk_00 - (0.5f * sp10[2]); + sp10[1] = var_r31->unk_44.unk_04 - (0.5f * sp10[3]); + sp8[0] = var_r31->unk_44.unk_00 + (0.5f * sp10[2]); + sp8[1] = var_r31->unk_44.unk_04 + (0.5f * sp10[3]); + if (sp10[0] < 0.0f) { + sp10[0] = 0.0f; + } + if (sp10[1] < 0.0f) { + sp10[1] = 0.0f; + } + if (sp8[0] > 640.0f) { + sp8[0] = 640.0f; + } + if (sp8[1] > 480.0f) { + sp8[1] = 480.0f; + } + sp8[0] -= sp10[0]; + sp8[1] -= sp10[1]; + var_r21 = sp8[1]; + var_r22 = sp8[0]; + var_r23 = sp10[1]; + Hu3DCameraScissorSet(var_r31->unk_3C, sp10[0], var_r23, var_r22, var_r21); + var_r29 = var_r31->unk_38; + CenterM[var_r29].x = var_r31->unk_1C.x; + CenterM[var_r29].y = var_r31->unk_1C.y; + CenterM[var_r29].z = var_r31->unk_1C.z; + CRotM[var_r29].x = var_r31->unk_28.x; + CRotM[var_r29].y = var_r31->unk_28.y; + CRotM[var_r29].z = var_r31->unk_28.z; + CZoomM[var_r29] = var_r31->unk_34; + } + } + } +} + +void fn_1_38FC(ModelData *model, Mtx mtx) +{ + Mtx spC; + float var_f31; + float var_f30; + float var_f29; + + PSMTXIdentity(spC); + GXLoadPosMtxImm(spC, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + GXSetNumTexGens(0); + GXSetNumTevStages(1); + GXSetTevColor(GX_TEVREG0, lbl_1_data_A0); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetBlendMode(GX_BM_NONE, GX_BL_ONE, GX_BL_ZERO, GX_LO_SET); + GXSetZMode(GX_TRUE, GX_ALWAYS, GX_TRUE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + var_f31 = 4125.0f; + var_f30 = 2750.0f; + var_f29 = 5494.5f; + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(-var_f31, var_f30, -var_f29); + GXPosition3f32(var_f31, var_f30, -var_f29); + GXPosition3f32(var_f31, -var_f30, -var_f29); + GXPosition3f32(-var_f31, -var_f30, -var_f29); +} + +void fn_1_3B50(u32 arg0) +{ + lbl_1_bss_1C->work[1] = arg0; +} + +u32 fn_1_3B64(void) +{ + return lbl_1_bss_1C->work[1]; +} + +M421DllCameraStruct *fn_1_3B78(s32 arg0) +{ + M421DllCameraStruct *var_r31; + s32 var_r30; + M421DllCameraStruct *var_r29; + + var_r29 = lbl_1_bss_1C->data; + for (var_r31 = var_r29, var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_0C & arg0) != 0) { + break; + } + } + if (var_r30 >= 5) { + OSReport("M421:Camera Flag Error!!\n"); + return NULL; + } + return var_r31; +} + +M421DllCameraStruct *fn_1_3C14(s32 arg0) +{ + M421DllCameraStruct *var_r31; + s32 var_r30; + M421DllCameraStruct *var_r29; + + var_r29 = lbl_1_bss_1C->data; + for (var_r31 = &var_r29[5], var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_0C & arg0) != 0) { + break; + } + } + if (var_r30 >= 5) { + OSReport("M421:Camera Flag Error!!\n"); + return NULL; + } + return var_r31; +} + +M421DllCameraStruct *fn_1_3CB0(u32 arg0) +{ + M421DllCameraStruct *var_r31 = lbl_1_bss_1C->data; + if (arg0 >= 5) { + OSReport("M421:Camera No. Error!!\n"); + return NULL; + } + return &var_r31[arg0]; +} + +M421DllCameraStruct *fn_1_3D18(u32 arg0) +{ + M421DllCameraStruct *var_r31 = lbl_1_bss_1C->data; + if (arg0 >= 5) { + OSReport("M421:Camera No. Error!!\n"); + return NULL; + } + return &var_r31[arg0 + 5]; +} + +void fn_1_3D84(s32 arg0, s32 arg1) +{ + M421DllCameraStruct *var_r31; + s32 var_r30; + s32 var_r29; + M421DllCameraStruct *var_r28; + M421DllCameraStruct *var_r27; + + var_r29 = 0; + if (arg0 >= 0) { + var_r27 = lbl_1_bss_1C->data; + var_r28 = &var_r27[5]; + for (var_r31 = var_r28, var_r30 = 0; var_r30 < 5; var_r30++, var_r31++) { + if ((var_r31->unk_0C & arg1) != 0) { + var_r29 |= var_r31->unk_3C; + } + } + Hu3DModelCameraSet(arg0, var_r29); + } +} + +void fn_1_4030(Vec *sp8, Vec *var_r31) +{ + Vec sp10; + float var_f30; + float var_f29; + + PSVECSubtract(var_r31, sp8, &sp10); + Center = *var_r31; + CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); + CRot.y = atan2d(-sp10.x, -sp10.z); + CRot.z = 0.0f; + CZoom = PSVECMag(&sp10); +} + +void fn_1_4238(float arg8, float arg9, float argA, float argB, float argC, float argD) +{ + Vec sp3C; + Vec sp30; + Vec sp24; + + sp3C.x = arg8; + sp3C.y = arg9; + sp3C.z = argA; + sp30.x = argB; + sp30.y = argC; + sp30.z = argD; + PSVECSubtract(&sp30, &sp3C, &sp24); + Center = sp30; + CRot.x = atan2d(sp24.y, sqrtf((sp24.x * sp24.x) + (sp24.z * sp24.z))); + CRot.y = atan2d(-sp24.x, -sp24.z); + CRot.z = 0.0f; + CZoom = PSVECMag(&sp24); +} + +float fn_1_4478(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f29; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + var_f29 = fmod(arg8 + (argA * var_f31), 360.0); + var_f31 = var_f29; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + return var_f31; +} + +float fn_1_4594(float arg8, float arg9) +{ + float var_f31; + float var_f30; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} diff --git a/src/REL/m460Dll/main.c b/src/REL/m460Dll/main.c index 73c153ea..123f1c3e 100644 --- a/src/REL/m460Dll/main.c +++ b/src/REL/m460Dll/main.c @@ -168,30 +168,30 @@ void ObjectSetup(void) void fn_1_4C8(omObjData *var_r30) { - M460DllWork *var_r31; + M460DllWork *work; var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M460DllWork), MEMORY_DEFAULT_NUM); - var_r31 = var_r30->data; - memset(var_r31, 0, sizeof(M460DllWork)); - var_r31->unk_00 = 0; - var_r31->unk_04 = 0; - var_r31->unk_0C = 0; - var_r31->unk_10 = 0; - var_r31->unk_14 = 0; - var_r31->unk_18 = 0; - var_r31->unk_4C = 0; - var_r31->unk_50 = 0; - var_r31->unk_08 = 0; - var_r31->unk_88 = 0; - var_r31->unk_74 = var_r31->unk_78 = var_r31->unk_7C = var_r31->unk_80 = -1; - var_r31->unk_8C = 0; - var_r31->unk_94 = 0; - var_r31->unk_30 = 0; - var_r31->unk_30 = GWMGRecordGet(0xC); - var_r31->unk_28 = (var_r31->unk_30 >> 0x10) & 0xFF; - var_r31->unk_24 = (var_r31->unk_30 >> 0x18) & 0xFF; - var_r31->unk_30 = (u16)var_r31->unk_30; - fn_1_8CAC(lbl_1_bss_30, var_r31->unk_30); + work = var_r30->data; + memset(work, 0, sizeof(M460DllWork)); + work->unk_00 = 0; + work->unk_04 = 0; + work->unk_0C = 0; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0; + work->unk_4C = 0; + work->unk_50 = 0; + work->unk_08 = 0; + work->unk_88 = 0; + work->unk_74 = work->unk_78 = work->unk_7C = work->unk_80 = -1; + work->unk_8C = 0; + work->unk_94 = 0; + work->unk_30 = 0; + work->unk_30 = GWMGRecordGet(0xC); + work->unk_28 = (work->unk_30 >> 0x10) & 0xFF; + work->unk_24 = (work->unk_30 >> 0x18) & 0xFF; + work->unk_30 = (u16)work->unk_30; + fn_1_8CAC(lbl_1_bss_30, work->unk_30); var_r30->func = fn_1_948; } @@ -200,15 +200,15 @@ void fn_1_5F0(omObjData *var_r29) Vec sp14; Vec sp8; M460DllCameraStruct *var_r31; - M460DllWork *var_r30; + M460DllWork *work; - var_r30 = var_r29->data; - var_r30->unk_04++; - var_r30->unk_10++; - var_r30->unk_18++; - var_r30->unk_50++; - if ((omSysExitReq != 0) && (var_r30->unk_00 != 5)) { - var_r30->unk_00 = 4; + work = var_r29->data; + work->unk_04++; + work->unk_10++; + work->unk_18++; + work->unk_50++; + if ((omSysExitReq != 0) && (work->unk_00 != 5)) { + work->unk_00 = 4; fn_1_7FC(var_r29); } var_r31 = fn_1_3F2C(1); @@ -293,26 +293,26 @@ void fn_1_11EC(omObjData *object) void fn_1_1548(omObjData *object) { - M460DllWork *var_r28 = object->data; + M460DllWork *work = object->data; fn_1_5F0(object); - switch (var_r28->unk_14) { + switch (work->unk_14) { case 0: - var_r28->unk_1C = 0x3C; - var_r28->unk_20 = 0x3C; + work->unk_1C = 0x3C; + work->unk_20 = 0x3C; lbl_1_bss_18 = MGSeqCreate(3, 0); MGSeqPosSet(lbl_1_bss_18, 320.0f, 240.0f); - var_r28->unk_14 = 1; - var_r28->unk_18 = 0; + work->unk_14 = 1; + work->unk_18 = 0; break; case 1: if ((lbl_1_bss_8 < 0) && ((MGSeqStatGet(lbl_1_bss_18) & 0x10) != 0)) { lbl_1_bss_8 = HuAudSeqPlay(0x49); } if (MGSeqStatGet(lbl_1_bss_18) == 0) { - var_r28->unk_2C = 0; - var_r28->unk_44 = 0; - if (var_r28->unk_08 == 0) { - var_r28->unk_18 = 0; + work->unk_2C = 0; + work->unk_44 = 0; + if (work->unk_08 == 0) { + work->unk_18 = 0; object->func = fn_1_197C; } } @@ -322,36 +322,36 @@ void fn_1_1548(omObjData *object) void fn_1_197C(omObjData *object) { - M460DllWork *var_r31 = object->data; + M460DllWork *work = object->data; s32 var_r26 = 0; s32 sp8 = 0; fn_1_5F0(object); - switch (var_r31->unk_14) { + switch (work->unk_14) { case 1: if (WipeStatGet() == 0) { - var_r31->unk_38 = 3; - var_r31->unk_3C = 0; - var_r31->unk_40 = 0; - var_r31->unk_1C = 0x3C; - var_r31->unk_20 = 0x3C; - var_r31->unk_14 = 2; - var_r31->unk_18 = 0; + work->unk_38 = 3; + work->unk_3C = 0; + work->unk_40 = 0; + work->unk_1C = 0x3C; + work->unk_20 = 0x3C; + work->unk_14 = 2; + work->unk_18 = 0; } break; case 2: - if (var_r31->unk_38 == 3) { - if ((--var_r31->unk_20) == 0) { - var_r31->unk_20 = 0x3C; - var_r31->unk_1C--; - if (var_r31->unk_1C == 0) { - var_r31->unk_44 = 1; + if (work->unk_38 == 3) { + if ((--work->unk_20) == 0) { + work->unk_20 = 0x3C; + work->unk_1C--; + if (work->unk_1C == 0) { + work->unk_44 = 1; fn_1_42BC(frandmod(2)); } } - if ((lbl_1_bss_16 < 0) && (var_r31->unk_1C < 0xA)) { - lbl_1_bss_16 = MGSeqCreate(1, var_r31->unk_1C, -1, -1); + if ((lbl_1_bss_16 < 0) && (work->unk_1C < 0xA)) { + lbl_1_bss_16 = MGSeqCreate(1, work->unk_1C, -1, -1); } - MGSeqParamSet(lbl_1_bss_16, 1, var_r31->unk_1C); + MGSeqParamSet(lbl_1_bss_16, 1, work->unk_1C); } else { if (lbl_1_bss_16 >= 0) { @@ -359,65 +359,65 @@ void fn_1_197C(omObjData *object) lbl_1_bss_16 = -1; } if (frandmod(0x3E8) < 0x1F4) { - var_r31->unk_44 = 1; + work->unk_44 = 1; } - if (var_r31->unk_2C >= 0x1E) { - var_r31->unk_44 = 1; + if (work->unk_2C >= 0x1E) { + work->unk_44 = 1; } - if (var_r31->unk_44 != 0) { - var_r31->unk_44 = 1; - var_r31->unk_88 = 1; + if (work->unk_44 != 0) { + work->unk_44 = 1; + work->unk_88 = 1; } - var_r31->unk_14 = 3; - var_r31->unk_18 = 0; + work->unk_14 = 3; + work->unk_18 = 0; } break; case 3: if (fn_1_4358() != 0) { - if (var_r31->unk_44 != 0) { + if (work->unk_44 != 0) { var_r26 = 1; } - else if (var_r31->unk_18 > 60.0f) { - if (var_r31->unk_08 == 0) { + else if (work->unk_18 > 60.0f) { + if (work->unk_08 == 0) { WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x1E); WipeColorSet(0, 0, 0); } - var_r31->unk_14 = 4; - var_r31->unk_18 = 0; + work->unk_14 = 4; + work->unk_18 = 0; } } else { - var_r31->unk_18 = 0; + work->unk_18 = 0; } break; case 4: if (WipeStatGet() == 0) { - var_r31->unk_2C++; - if (var_r31->unk_08 == 0) { + work->unk_2C++; + if (work->unk_08 == 0) { WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 0x1E); } - var_r31->unk_14 = 1; - var_r31->unk_18 = 0; + work->unk_14 = 1; + work->unk_18 = 0; } break; } if (var_r26 != 0) { lbl_1_bss_14 = MGSeqCreate(3, 1); HuAudSeqFadeOut(lbl_1_bss_8, 0x64); - var_r31->unk_24++; - if (var_r31->unk_24 > 0xFF) { - var_r31->unk_24 = 0xFF; + work->unk_24++; + if (work->unk_24 > 0xFF) { + work->unk_24 = 0xFF; } - if (var_r31->unk_2C > var_r31->unk_30) { - var_r31->unk_28 = var_r31->unk_24; - var_r31->unk_30 = var_r31->unk_2C; - var_r31->unk_48 = 1; - GWMGRecordSet(0xC, var_r31->unk_30); + if (work->unk_2C > work->unk_30) { + work->unk_28 = work->unk_24; + work->unk_30 = work->unk_2C; + work->unk_48 = 1; + GWMGRecordSet(0xC, work->unk_30); } - mgRecordExtra = var_r31->unk_2C; - var_r31->unk_14 = 5; - var_r31->unk_18 = 0; - if (var_r31->unk_08 == 0) { + mgRecordExtra = work->unk_2C; + work->unk_14 = 5; + work->unk_18 = 0; + if (work->unk_08 == 0) { object->func = fn_1_201C; } } @@ -425,7 +425,7 @@ void fn_1_197C(omObjData *object) void fn_1_201C(omObjData *object) { - M460DllWork *var_r26 = object->data; + M460DllWork *work = object->data; if (lbl_1_bss_16 >= 0) { MGSeqParamSet(lbl_1_bss_16, 2, -1); @@ -433,13 +433,13 @@ void fn_1_201C(omObjData *object) } fn_1_5F0(object); if (MGSeqStatGet(lbl_1_bss_14) == 0) { - if (var_r26->unk_48 != 0) { + if (work->unk_48 != 0) { fn_1_8FAC(1); - lbl_1_bss_12 = MGSeqCreate(0xE, var_r26->unk_30); - var_r26->unk_48 = 0; + lbl_1_bss_12 = MGSeqCreate(0xE, work->unk_30); + work->unk_48 = 0; } - var_r26->unk_14 = 6; - var_r26->unk_18 = 0; + work->unk_14 = 6; + work->unk_18 = 0; fn_1_7FC(object); } } @@ -460,11 +460,11 @@ void fn_1_2564(omObjData *object) { Vec sp20; M460DllCameraStruct *var_r26; - M460DllWork *var_r25; + M460DllWork *work; s32 var_r24; float var_f31; - var_r25 = object->data; + work = object->data; fn_1_5F0(object); object->work[0]++; var_f31 = lbl_1_data_AC[object->work[1]]; @@ -499,11 +499,11 @@ void fn_1_2564(omObjData *object) fn_1_8BA0(lbl_1_data_A0[object->work[1]]); } if (lbl_1_data_AC[object->work[1]] == 0) { - var_r25->unk_0C = 2; + work->unk_0C = 2; fn_1_7FC(object); } else if (lbl_1_data_AC[object->work[1] + 1] == 0) { - var_r25->unk_0C = 1; + work->unk_0C = 1; } } } @@ -515,7 +515,7 @@ omObjFunc fn_1_2D64(Process *process, omObjData *object) void fn_1_2D70(omObjData *object) { - M460DllWork *var_r26 = object->data; + M460DllWork *work = object->data; s32 var_r23 = 1; fn_1_5F0(object); if (lbl_1_bss_12 >= 0) { @@ -526,21 +526,21 @@ void fn_1_2D70(omObjData *object) lbl_1_bss_12 = -1; } } - if (var_r26->unk_8C != 1) { + if (work->unk_8C != 1) { var_r23 = 0; } if (var_r23 != 0) { - var_r26->unk_4C = 1; + work->unk_4C = 1; if (lbl_1_bss_4 < 0) { lbl_1_bss_4 = HuAudSStreamPlay(4); } - if (var_r26->unk_50 >= 210.0f) { - var_r26->unk_4C = 2; + if (work->unk_50 >= 210.0f) { + work->unk_4C = 2; fn_1_7FC(object); } } else { - var_r26->unk_50 = 0; + work->unk_50 = 0; } } @@ -569,7 +569,7 @@ void fn_1_337C(omObjData *object) object->data = HuMemDirectMallocNum(HEAP_SYSTEM, 10 * sizeof(M460DllCameraStruct), MEMORY_DEFAULT_NUM); var_r28 = object->data; - memset(var_r28, 0, 0x668); + memset(var_r28, 0, 10 * sizeof(M460DllCameraStruct)); object->model[0] = Hu3DHookFuncCreate(fn_1_3BC0); Hu3DModelLayerSet(object->model[0], 0); Hu3DModelCameraSet(object->model[0], 0x1E); @@ -879,9 +879,9 @@ s32 fn_1_419C(void) void fn_1_41B4(s32 arg0, s32 arg1, s32 arg2) { - M460DllWork *var_r31 = lbl_1_bss_2C->data; - var_r31->unk_64[arg0 &= 3] = arg1; - var_r31->unk_54[arg0] = arg2; + M460DllWork *work = lbl_1_bss_2C->data; + work->unk_64[arg0 &= 3] = arg1; + work->unk_54[arg0] = arg2; } void fn_1_41F4(s32 arg0) @@ -906,9 +906,9 @@ s32 fn_1_4284(void) void fn_1_42BC(u32 arg0) { - M460DllWork *var_r31 = lbl_1_bss_2C->data; - if (var_r31->unk_38 == 3) { - var_r31->unk_38 = arg0; + M460DllWork *work = lbl_1_bss_2C->data; + if (work->unk_38 == 3) { + work->unk_38 = arg0; } } From 1ae91925a61eb7d3b01842dd1564e350a9009366 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Tue, 19 Nov 2024 16:17:51 -0500 Subject: [PATCH 029/178] up to 3444 --- include/REL/m418Dll.h | 2 + src/REL/m418Dll/main.c | 316 +++++++++++++++++++++++++++++++++++++++-- 2 files changed, 309 insertions(+), 9 deletions(-) diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h index 3fd899d3..73a943fd 100644 --- a/include/REL/m418Dll.h +++ b/include/REL/m418Dll.h @@ -17,7 +17,9 @@ typedef struct M418DllUnkStruct { char unk48[0x4]; } M418DllUnkStruct; // sizeof 0x4C +f32 fn_1_A920(f32, f32, f32); void fn_1_ABC4(omObjData*, s32, s32, s32, s32); +void fn_1_AD14(omObjData*, s32, s32, s32, s32); void fn_1_B104(M418DllUnkStruct*, Vec, Vec); void fn_1_B41C(M418DllUnkStruct*); diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index a9f5f9c2..d844ac0f 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -16,9 +16,16 @@ typedef struct M418DllUnkStruct2 { } M418DllUnkStruct2; // sizeof 0x14 typedef struct M418DllUnkStruct3 { - char unk0[0x4]; + omObjData* unk0; s32 unk4; - char unk[0x58]; + s32 unk8; + s32 unkC; + s32 unk10; + s32 unk14; + s32 unk18; + s32 unk1C; + f32 unk20; + char unk24[0x3C]; } M418DllUnkStruct3; // sizeof 0x60 typedef struct M418DllUnkStruct4 { @@ -35,12 +42,20 @@ typedef struct M418DllUnkStruct5 { char unk[0x14]; s32 unk14; char unk18[0x14]; -} M418DllUnkStruct5; // sizeof 0x2C; +} M418DllUnkStruct5; // sizeof 0x2C typedef struct M418DllUnkStruct6 { s32 unk0; char unk4[0x40]; -} M418DllUnkStruct6; +} M418DllUnkStruct6; // sizeof 0x44 + +typedef struct M418DllWorkStruct { + omObjData* unk0; + Vec unk4; + Vec unk10[10]; + s32 unk88; + s32 unk8C[10]; +} M418DllWorkStruct; // bss M418DllUnkStruct6 lbl_1_bss_3EC; @@ -50,6 +65,7 @@ M418DllUnkStruct lbl_1_bss_1F4; M418DllUnkStruct2 lbl_1_bss_1E0; M418DllUnkStruct4 lbl_1_bss_170[4]; M418DllUnkStruct4 lbl_1_bss_11C[3]; +M418DllWorkStruct lbl_1_bss_68; s32 lbl_1_bss_8; s32 lbl_1_bss_4; Process* lbl_1_bss_0; @@ -58,9 +74,6 @@ Process* lbl_1_bss_0; s32 lbl_1_data_0[2] = { -1, -1 }; s32 lbl_1_data_8 = -1; -// protos -void fn_1_AD14(omObjData*, s32, s32, s32, s32); - void fn_1_0(void) { Hu3DGLightCreate(-2500.0f, 5000.0f, 5000.0f, 0.0f, -1.0f, -1.0f, 0xFF, 0xD8, 0xA0); } @@ -447,8 +460,8 @@ s32 fn_1_18FC(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { if (var_f27 >= arg9) { var_f27 = arg9; } else if (var_f27 <= 1.0f) { - var_f31 = var_f30 = var_f27 = 0.0f; - var_r28 = 1; + var_f31 = var_f30 = var_f27 = 0.0f; + var_r28 = 1; } if (var_f31 != 0.0f || var_f30 != 0.0f || arg8 >= 0.0f) { if (arg8 >= 0.0f && var_f31 == 0.0f && var_f30 == 0.0f) { @@ -605,3 +618,288 @@ s32 fn_1_2178(omObjData* object) { break; } } + +void fn_1_2894(omObjData* object) { + Mtx sp3C; + Mtx spC; + M418DllUnkStruct6* sp8; + f32 temp_f31; + + sp8 = &lbl_1_bss_3EC; + temp_f31 = 0.5f + (0.5f * (CRot.x / 90.0f)); + Hu3DModelObjMtxGet(object->model[0], "g031m1-itemhook_R", spC); + Hu3DModelObjMtxGet(object->model[5], "g031i00-itemhook_eff", sp3C); + Hu3DModelRotSet(object->model[6], 0.0f, -object->rot.y, 0.0f); + Hu3DModelScaleSet(object->model[6], 0.35f, temp_f31, 0.35f); + fn_1_2178(object); +} + +void fn_1_29A0(omObjData* object) { + u32 temp_r30; + + temp_r30 = object->work[0]; + object->model[0] = Hu3DModelCreateFile(0x31002A); + object->motion[0] = Hu3DJointMotionFile(object->model[0], 0x31002B); + object->motion[1] = Hu3DJointMotionFile(object->model[0], 0x31002C); + object->motion[2] = Hu3DJointMotionFile(object->model[0], 0x31002D); + object->motion[3] = Hu3DJointMotionFile(object->model[0], 0x31002E); + omSetTra(object, lbl_1_data_8C[temp_r30].x, lbl_1_data_8C[temp_r30].y, lbl_1_data_8C[temp_r30].z); + fn_1_ABC4(object, 0, 0, 0, 1); + object->model[5] = Hu3DModelCreateFile(0x31002F); + Hu3DModelHookSet(object->model[0], "g031m1-itemhook_R", object->model[5]); + object->model[6] = Hu3DModelCreateFile(0x310027); + object->motion[6] = Hu3DMotionIDGet(object->model[6]); + Hu3DModelHookSet(object->model[5], "g031i00-itemhook_eff", object->model[6]); + fn_1_ABC4(object, 6, 6, 0, 1); + object->work[1] = -1; + Hu3DModelShadowSet(object->model[0]); + object->func = fn_1_2894; +} + +void fn_1_2BC4(Vec* arg0) { + M418DllWorkStruct* var_r31 = &lbl_1_bss_68; + var_r31->unk4.x = arg0->x; + var_r31->unk4.y = arg0->y; + var_r31->unk4.z = arg0->z; + var_r31->unk88 = 0; + var_r31->unk0->work[0] = 1; +} + +void fn_1_2C0C(omObjData* object) { + ModelData* temp_r28; + M418DllWorkStruct* var_r31 = &lbl_1_bss_68; + s32 var_r30; + + switch (object->work[0]) { + case 1: + for (var_r30 = 0; var_r30 < 10; var_r30++) { + var_r31->unk10[var_r30].x = (var_r31->unk4.x + 50.0 * cosd(36.0f * var_r30)) + (rand8() % 25); + var_r31->unk10[var_r30].y = (var_r31->unk4.y + 50.0 * sind(36.0f * var_r30)) + (rand8() % 25); + var_r31->unk10[var_r30].z = var_r31->unk4.z; + var_r31->unk8C[var_r30] = (rand8() % 5) + 10; + Hu3DModelPosSet(object->model[var_r30 + 1], var_r31->unk4.x, var_r31->unk4.y, var_r31->unk4.z); + Hu3DModelTPLvlSet(object->model[var_r30 + 1], 1.0f); + } + object->work[0] = 2; + break; + case 2: + for (var_r30 = 0; var_r30 < 10; var_r30++) { + temp_r28 = &Hu3DData[object->model[var_r30 + 1]]; + temp_r28->pos.x = fn_1_A920(temp_r28->pos.x, var_r31->unk10[var_r30].x, var_r31->unk8C[var_r30]); + temp_r28->pos.y = fn_1_A920(temp_r28->pos.y, var_r31->unk10[var_r30].y, var_r31->unk8C[var_r30]); + temp_r28->pos.z = fn_1_A920(temp_r28->pos.z, var_r31->unk10[var_r30].z, var_r31->unk8C[var_r30]); + if (var_r31->unk88 >= 20) { + Hu3DModelTPLvlSet(object->model[var_r30 + 1], 1.0f - (0.1f * (var_r31->unk88 - 0x14))); + } + } + if (var_r31->unk88 >= 30) { + object->work[0] = 0; + } + var_r31->unk88++; + } +} + +void fn_1_3054(omObjData* object) { + s32 var_r30; + + for (var_r30 = 1; var_r30 < 11; var_r30++) { + object->model[var_r30] = Hu3DModelCreateFile(0x310029); + Hu3DModelPosSet(object->model[var_r30], 0.0f, -500.0f, 0.0f); + Hu3DModelScaleSet(object->model[var_r30], 10.0f, 10.0f, 10.0f); + } + object->work[0] = 0; + object->func = fn_1_2C0C; +} + +void fn_1_3138(void) { + M418DllUnkStruct3* temp_r31; + s32 var_r30; + + for (var_r30 = 0; var_r30 < 4; var_r30++) { + temp_r31 = &lbl_1_bss_26C[var_r30]; + temp_r31->unk4 = var_r30; + temp_r31->unk8 = GWPlayerCfg[temp_r31->unk4].group; + if (temp_r31->unk8 == 0) { + temp_r31->unk8 = 0; + } else { + temp_r31->unk8 = 1; + } + temp_r31->unkC = GWPlayerCfg[temp_r31->unk4].iscom; + if (temp_r31->unkC != 0) { + temp_r31->unk10 = GWPlayerCfg[temp_r31->unk4].diff; + } else { + temp_r31->unk10 = 0; + } + temp_r31->unk14 = GWPlayerCfg[temp_r31->unk4].character; + temp_r31->unk18 = GWPlayerCfg[temp_r31->unk4].pad_idx; + } +} + +const char* lbl_1_data_1C0[8] = { + "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r" +}; + +void fn_1_3240(omObjData* object) { + Mtx sp14; + Vec sp8; + M418DllUnkStruct3* temp_r28; + ModelData* temp_r30; + M418DllWorkStruct* var_r29; + + temp_r30 = &Hu3DData[object->model[11]]; + temp_r28 = &lbl_1_bss_26C[object->work[0]]; + switch (object->work[1]) { + case 1: + Hu3DModelHookReset(object->model[0]); + Hu3DModelObjMtxGet(object->model[0], lbl_1_data_1C0[temp_r28->unk14], sp14); + Hu3DModelPosSet(object->model[11], sp14[0][3], sp14[1][3], sp14[2][3]); + temp_r30->rot.y = object->rot.y; + object->work[1] = 2; + object->work[2] = 0; + break; + case 2: + fn_1_AD14(object, 0, 0, 0x1E, 1); + temp_r30->pos.y = fn_1_A920(temp_r30->pos.y, 350.0f, 30.0f); + temp_r30->rot.x += 30.0f; + if (object->work[2]++ >= 0x1EU) { + HuAudFXPlay(0x5DE); + sp8 = temp_r30->pos; + var_r29 = &lbl_1_bss_68; + var_r29->unk4.x = sp8.x; + var_r29->unk4.y = sp8.y; + var_r29->unk4.z = sp8.z; + var_r29->unk88 = 0; + var_r29->unk0->work[0] = 1; + Hu3DModelAttrSet(object->model[11], 1); + object->work[1] = object->work[2] = 0; + } + break; + } +} + +void fn_1_3408(omObjData* object) { + M418DllUnkStruct3* temp_r31; + + temp_r31 = &lbl_1_bss_26C[object->work[0]]; + if (temp_r31->unk1C == 0) { + temp_r31->unk1C = 1; + } +} + +void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { + s32 sp24; + f32 sp20; + f32 sp1C; + f32 sp18; + M418DllUnkStruct3* temp_r28; + M418DllUnkStruct3* temp_r30; + + f32 var_f31; + f32 var_f30; + f32 temp_f29; + f32 temp_f28; + f32 var_f24; + f32 var_f23; + f32 var_f22; + + s32 var_r27; + s32 var_r29; + + sp24 = 0; + var_r27 = 0; + temp_r30 = &lbl_1_bss_26C[object->work[0]]; + var_f31 = arg1.x - object->trans.x; + var_f30 = object->trans.z - arg1.z; + var_f23 = 90.0 + atan2d(var_f30, var_f31); + var_f24 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f24 <= 30.0f) { + var_f31 = var_f30 = 0.0f; + } else { + var_f31 = 55.0f * (var_f31 / var_f24); + var_f30 = 55.0f * (var_f30 / var_f24); + } + if (temp_r30->unk1C == 1) { + temp_r30->unk20 = -1.47f; + } + var_f24 = arg9 * (sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)) / 72.0f); + if (var_f24 >= arg9) { + var_f24 = arg9; + } else if (var_f24 <= 1.0f) { + var_f31 = var_f30 = var_f24 = 0.0f; + } + if (var_f31 != 0.0f || var_f30 != 0.0f || arg8 >= 0.0f) { + if (arg8 >= 0.0f && var_f31 == 0.0f && var_f30 == 0.0f) { + var_f23 = arg8; + } + if (var_f23 >= 180.0f) { + if (object->rot.y - var_f23 >= 180.0f) { + object->rot.y -= 360.0f; + } + if (object->rot.y - var_f23 < -180.0f) { + object->rot.y += 360.0f; + } + } else { + if (object->rot.y - var_f23 > 180.0f) { + object->rot.y -= 360.0f; + } + if (object->rot.y - var_f23 <= -180.0f) { + object->rot.y += 360.0f; + } + } + object->rot.y = (((9.0f * object->rot.y) + var_f23) / 10.0f); + } + var_r27 = 0; + sp1C = object->trans.x + (50.0 * cosd(object->rot.y - 90.0f)); + sp18 = object->trans.z - (50.0 * sind(object->rot.y - 90.0f)); + + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (var_r29 == object->work[0]) continue; + temp_r28 = &lbl_1_bss_26C[var_r29]; + temp_f29 = temp_r28->unk0->trans.x; + temp_f28 = temp_r28->unk0->trans.z; + temp_f29 -= sp1C; + temp_f28 -= sp18; + if (sqrtf((temp_f29 * temp_f29) + (temp_f28 * temp_f28)) < 100.0f) { + var_r27 = 1; + break; + } + } + if (var_r27 == 0) { + object->trans.x = object->trans.x + (var_f24 * sind(object->rot.y)); + object->trans.z = object->trans.z + (var_f24 * cosd(object->rot.y)); + } + if (temp_r30->unk1C != 0) { + temp_r30->unk1C = 2; + if (temp_r30->unk20 > 1.7f) { + temp_r30->unk20 = 1.7f; + } + sp20 = temp_r30->unk20 * temp_r30->unk20 * (temp_r30->unk20 >= 0.0f ? -17.5f : 17.5f); + object->trans.y += sp20; + if (object->trans.y <= 0.0f) { + object->trans.y = 0.0f; + temp_r30->unk1C = temp_r30->unk20 = 0.0f; + omVibrate(temp_r30->unk4, 0xC, 6, 6); + } + temp_r30->unk20 += 0.11f; + } + if (temp_r30->unk1C != 0) { + fn_1_AD14(object, 0, 3, 10, 0); + return; + } + if (var_f24 >= 6.75f) { + fn_1_AD14(object, 0, 2, 10, 1); + return; + } + if (var_f24 > 0.0f) { + fn_1_AD14(object, 0, 1, 10, 1); + return; + } + fn_1_AD14(object, 0, 0, 10, 1); +} From c9f9191feabf2eff214e9581dc3ee03362ec8285 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Wed, 20 Nov 2024 13:02:55 -0500 Subject: [PATCH 030/178] fix download_tool.py --- .vscode/settings.json | 77 ++++++++++++++++++++++++++++++++++++------ configure.py | 2 +- tools/download_tool.py | 4 ++- 3 files changed, 71 insertions(+), 12 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 6f6e1099..fe219716 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -29,16 +29,73 @@ }, "search.useIgnoreFiles": false, "search.exclude": { - "build/*/config.json": true, - "build/**/*.MAP": true, - "build.ninja": true, - ".ninja_*": true, - "objdiff.json": true, - "progress.json": true, - "report.json": true, - "compile_commands.json": true, + "build/*/config.json": true, + "build/**/*.MAP": true, + "build.ninja": true, + ".ninja_*": true, + "objdiff.json": true, + "progress.json": true, + "report.json": true, + "compile_commands.json": true }, "cmake.ignoreCMakeListsMissing": true, "editor.fontFamily": "Fira Code", - "editor.fontLigatures": true -} + "editor.fontLigatures": true, + "C_Cpp_Runner.cCompilerPath": "gcc", + "C_Cpp_Runner.cppCompilerPath": "g++", + "C_Cpp_Runner.debuggerPath": "gdb", + "C_Cpp_Runner.cStandard": "", + "C_Cpp_Runner.cppStandard": "", + "C_Cpp_Runner.msvcBatchPath": "C:/Program Files/Microsoft Visual Studio/VR_NR/Community/VC/Auxiliary/Build/vcvarsall.bat", + "C_Cpp_Runner.useMsvc": false, + "C_Cpp_Runner.warnings": [ + "-Wall", + "-Wextra", + "-Wpedantic", + "-Wshadow", + "-Wformat=2", + "-Wcast-align", + "-Wconversion", + "-Wsign-conversion", + "-Wnull-dereference" + ], + "C_Cpp_Runner.msvcWarnings": [ + "/W4", + "/permissive-", + "/w14242", + "/w14287", + "/w14296", + "/w14311", + "/w14826", + "/w44062", + "/w44242", + "/w14905", + "/w14906", + "/w14263", + "/w44265", + "/w14928" + ], + "C_Cpp_Runner.enableWarnings": true, + "C_Cpp_Runner.warningsAsError": false, + "C_Cpp_Runner.compilerArgs": [], + "C_Cpp_Runner.linkerArgs": [], + "C_Cpp_Runner.includePaths": [], + "C_Cpp_Runner.includeSearch": [ + "*", + "**/*" + ], + "C_Cpp_Runner.excludeSearch": [ + "**/build", + "**/build/**", + "**/.*", + "**/.*/**", + "**/.vscode", + "**/.vscode/**" + ], + "C_Cpp_Runner.useAddressSanitizer": false, + "C_Cpp_Runner.useUndefinedSanitizer": false, + "C_Cpp_Runner.useLeakSanitizer": false, + "C_Cpp_Runner.showCompilationTime": false, + "C_Cpp_Runner.useLinkTimeOptimization": false, + "C_Cpp_Runner.msvcSecureNoWarnings": false +} \ No newline at end of file diff --git a/configure.py b/configure.py index 3f14b329..e1153506 100644 --- a/configure.py +++ b/configure.py @@ -149,7 +149,7 @@ config.binutils_tag = "2.42-1" config.compilers_tag = "20240706" config.dtk_tag = "v1.1.4" config.objdiff_tag = "v2.3.3" -config.sjiswrap_tag = "v1.1.1" +config.sjiswrap_tag = "v1.2.0" config.wibo_tag = "0.6.11" # Project diff --git a/tools/download_tool.py b/tools/download_tool.py index f4512d01..09b002a5 100644 --- a/tools/download_tool.py +++ b/tools/download_tool.py @@ -20,6 +20,8 @@ import urllib.request import zipfile from typing import Callable, Dict from pathlib import Path +import certifi +import ssl def binutils_url(tag): @@ -104,7 +106,7 @@ def main() -> None: print(f"Downloading {url} to {output}") req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"}) - with urllib.request.urlopen(req) as response: + with urllib.request.urlopen(req, context=ssl.create_default_context(cafile=certifi.where())) as response: if url.endswith(".zip"): data = io.BytesIO(response.read()) with zipfile.ZipFile(data) as f: From 68521c6732c64bdcec91627fde2e8299b2393ffb Mon Sep 17 00:00:00 2001 From: CreateSource Date: Wed, 20 Nov 2024 16:30:31 -0500 Subject: [PATCH 031/178] up to 57E4 --- include/REL/m418Dll.h | 11 +- src/REL/m418Dll/main.c | 370 +++++++++++++++++++++++++++++++++++++++-- 2 files changed, 367 insertions(+), 14 deletions(-) diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h index 73a943fd..af7e7ab4 100644 --- a/include/REL/m418Dll.h +++ b/include/REL/m418Dll.h @@ -14,13 +14,22 @@ typedef struct M418DllUnkStruct { f32 zoom; char unk38[0x4]; f32 unk3C[3]; - char unk48[0x4]; + f32 unk48; } M418DllUnkStruct; // sizeof 0x4C +typedef struct M418DllUnkStruct7 { + char unk[0x18]; +} M418DllUnkStruct7; // sizeof 0x18 + f32 fn_1_A920(f32, f32, f32); void fn_1_ABC4(omObjData*, s32, s32, s32, s32); void fn_1_AD14(omObjData*, s32, s32, s32, s32); +s32 fn_1_AF38(M418DllUnkStruct7*); +s32 fn_1_B0C8(M418DllUnkStruct7*, s32); void fn_1_B104(M418DllUnkStruct*, Vec, Vec); void fn_1_B41C(M418DllUnkStruct*); +void fn_1_B458(M418DllUnkStruct*); +void fn_1_CBF8(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); +void fn_1_DC10(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); #endif diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index d844ac0f..daf129d7 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -1,5 +1,6 @@ #include "math.h" #include "ext_math.h" +#include "game/chrman.h" #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" @@ -25,7 +26,14 @@ typedef struct M418DllUnkStruct3 { s32 unk18; s32 unk1C; f32 unk20; - char unk24[0x3C]; + s32 unk24; + f32 unk28; + f32 unk2C; + f32 unk30; + f32 unk34; + f32 unk38; + f32 unk3C; + char unk[0x20]; } M418DllUnkStruct3; // sizeof 0x60 typedef struct M418DllUnkStruct4 { @@ -66,6 +74,7 @@ M418DllUnkStruct2 lbl_1_bss_1E0; M418DllUnkStruct4 lbl_1_bss_170[4]; M418DllUnkStruct4 lbl_1_bss_11C[3]; M418DllWorkStruct lbl_1_bss_68; +M418DllUnkStruct7 lbl_1_bss_50; s32 lbl_1_bss_8; s32 lbl_1_bss_4; Process* lbl_1_bss_0; @@ -656,11 +665,11 @@ void fn_1_29A0(omObjData* object) { object->func = fn_1_2894; } -void fn_1_2BC4(Vec* arg0) { +void fn_1_2BC4(Vec arg0) { M418DllWorkStruct* var_r31 = &lbl_1_bss_68; - var_r31->unk4.x = arg0->x; - var_r31->unk4.y = arg0->y; - var_r31->unk4.z = arg0->z; + var_r31->unk4.x = arg0.x; + var_r31->unk4.y = arg0.y; + var_r31->unk4.z = arg0.z; var_r31->unk88 = 0; var_r31->unk0->work[0] = 1; } @@ -770,13 +779,7 @@ void fn_1_3240(omObjData* object) { temp_r30->rot.x += 30.0f; if (object->work[2]++ >= 0x1EU) { HuAudFXPlay(0x5DE); - sp8 = temp_r30->pos; - var_r29 = &lbl_1_bss_68; - var_r29->unk4.x = sp8.x; - var_r29->unk4.y = sp8.y; - var_r29->unk4.z = sp8.z; - var_r29->unk88 = 0; - var_r29->unk0->work[0] = 1; + fn_1_2BC4(temp_r30->pos); Hu3DModelAttrSet(object->model[11], 1); object->work[1] = object->work[2] = 0; } @@ -853,7 +856,7 @@ void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { object->rot.y += 360.0f; } } - object->rot.y = (((9.0f * object->rot.y) + var_f23) / 10.0f); + object->rot.y = (((4.0f * object->rot.y) + var_f23) / 5.0f); } var_r27 = 0; sp1C = object->trans.x + (50.0 * cosd(object->rot.y - 90.0f)); @@ -903,3 +906,344 @@ void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { } fn_1_AD14(object, 0, 0, 10, 1); } + +void fn_1_3EB0(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { + M418DllUnkStruct3* temp_r30; + s32 sp10; + f32 var_f31; + f32 var_f30; + f32 var_f27; + f32 var_f26; + f32 var_f24; + f32 var_f20; + + sp10 = 0; + temp_r30 = &lbl_1_bss_26C[object->work[0]]; + var_f31 = arg1.x - object->trans.x; + var_f30 = object->trans.z - arg1.z; + var_f26 = 90.0 + atan2d(var_f30, var_f31); + var_f27 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f27 <= 30.0f) { + var_f31 = var_f30 = 0.0f; + } else { + var_f31 = 55.0f * (var_f31 / var_f27); + var_f30 = 55.0f * (var_f30 / var_f27); + } + if (temp_r30->unk1C == 1) { + temp_r30->unk20 = -1.47f; + } + var_f27 = arg9 * (sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)) / 72.0f); + if (var_f27 >= arg9) { + var_f27 = arg9; + } else if (var_f27 <= 1.0f) { + var_f31 = var_f30 = var_f27 = 0.0f; + } + if (var_f31 != 0.0f || var_f30 != 0.0f || arg8 >= 0.0f) { + if (arg8 >= 0.0f && var_f31 == 0.0f && var_f30 == 0.0f) { + var_f26 = arg8; + } + if (var_f26 >= 180.0f) { + if (object->rot.y - var_f26 >= 180.0f) { + object->rot.y -= 360.0f; + } + if (object->rot.y - var_f26 < -180.0f) { + object->rot.y += 360.0f; + } + } else { + if (object->rot.y - var_f26 > 180.0f) { + object->rot.y -= 360.0f; + } + if (object->rot.y - var_f26 <= -180.0f) { + object->rot.y += 360.0f; + } + } + object->rot.y = (((4.0f * object->rot.y) + var_f26) / 5.0f); + } + object->trans.x += var_f27 * sind(object->rot.y); + object->trans.z += var_f27 * cosd(object->rot.y); + if (temp_r30->unk1C) { + temp_r30->unk1C = 2.0f; + if (temp_r30->unk20 > 1.7f) { + temp_r30->unk20 = 1.7f; + } + var_f20 = (temp_r30->unk20 * temp_r30->unk20) * (temp_r30->unk20 >= 0.0f ? -17.5f : 17.5f); + object->trans.y += var_f20; + if (object->trans.y <= 0.0f) { + object->trans.y = 0.0f; + temp_r30->unk1C = temp_r30->unk20 = 0.0f; + omVibrate(temp_r30->unk4, 0xC, 6, 6); + } + temp_r30->unk20 += 0.11f; + } + if (temp_r30->unk1C != 0) { + fn_1_AD14(object, 0, 3, 10, 0); + } else if (var_f27 >= 6.75f) { + fn_1_AD14(object, 0, 2, 10, 1); + } else if (var_f27 > 0.0f) { + fn_1_AD14(object, 0, 1, 10, 1); + } else { + fn_1_AD14(object, 0, 0, 10, 1); + } +} + +s32 lbl_1_data_1E0[4][2] = { + { -1, 127 }, + { -1, 127 }, + { -1, 127 }, + { -1, 127 } +}; + +void fn_1_46C4(omObjData* object) { + s32 sp8; + M418DllUnkStruct3* temp_r31; + + sp8 = 0; + temp_r31 = &lbl_1_bss_26C[object->work[0]]; + + switch (temp_r31->unk24) { + case 0: + temp_r31->unk2C = object->scale.x; + temp_r31->unk34 = temp_r31->unk38 = 0.0f; + temp_r31->unk24 = 1; + break; + case 1: + temp_r31->unk28 -= 1.0f; + if (temp_r31->unk28 <= 0.0f) { + temp_r31->unk28 = 15.0f; + temp_r31->unk24 = 2; + omVibrate(temp_r31->unk4, 0xC, 0xC, 0); + lbl_1_data_1E0[object->work[0]][0] = HuAudCharVoicePlay(temp_r31->unk14, 0x123); + lbl_1_data_1E0[object->work[0]][1] = 0x7F; + HuAudFXPlay(0x5D4); + } + break; + case 2: + object->trans.x += 4.0f * temp_r31->unk30; + object->trans.y += 125.0 * sind(temp_r31->unk28); + object->trans.z -= 125.0 * cos(M_PI / 12.0); + if (temp_r31->unk28 <= 14.0f) { + Hu3DModelAttrReset(object->model[0], 1); + } + temp_r31->unk28 -= 0.25f; + if (temp_r31->unk28 <= 0.0f) { + temp_r31->unk24 = 3; + } + break; + case 3: + object->trans.y += 110.0 * sind(temp_r31->unk28); + temp_r31->unk28 -= 0.0275f; + temp_r31->unk2C -= 0.0025f; + if (temp_r31->unk2C <= 0.3f) { + temp_r31->unk2C = 0.0f; + temp_r31->unk24 = 4; + temp_r31->unk28 = 0.0f; + HuAudFXPlay(0x5D5); + } + omSetSca(object, temp_r31->unk2C, temp_r31->unk2C, temp_r31->unk2C); + break; + case 4: + temp_r31->unk38 = fn_1_A920(temp_r31->unk38, 360.0f, 15.0f); + temp_r31->unk34 = fn_1_A920(temp_r31->unk34, 4.0f, 15.0f); + Hu3DModelPosSet(object->model[1], object->trans.x, object->trans.y, object->trans.z); + Hu3DModelRotSet(object->model[1], 0.0f, 0.0f, temp_r31->unk38); + Hu3DModelScaleSet(object->model[1], temp_r31->unk34, temp_r31->unk34, temp_r31->unk34); + if (temp_r31->unk28++ >= 30.0f) { + temp_r31->unk24 = 5; + temp_r31->unk28 = 0.0f; + } + break; + case 5: + temp_r31->unk38 = fn_1_A920(temp_r31->unk38, 720.0f, 15.0f); + temp_r31->unk34 = fn_1_A920(temp_r31->unk34, 0.0f, 15.0f); + Hu3DModelPosSet(object->model[1], object->trans.x, object->trans.y, object->trans.z); + Hu3DModelRotSet(object->model[1], 0.0f, 0.0f, temp_r31->unk38); + Hu3DModelScaleSet(object->model[1], temp_r31->unk34, temp_r31->unk34, temp_r31->unk34); + if (temp_r31->unk28++ >= 60.0f) { + temp_r31->unk24 = 6; + temp_r31->unk28 = 0.0f; + } + break; + } + if ((temp_r31->unk24 >= 1) && (temp_r31->unk24 <= 5) && (lbl_1_data_1E0[object->work[0]][0] != -1)) { + HuAudFXVolSet(lbl_1_data_1E0[object->work[0]][0], --lbl_1_data_1E0[object->work[0]][1]); + if (lbl_1_data_1E0[object->work[0]][1] < 0) { + lbl_1_data_1E0[object->work[0]][1] = 0; + } + } +} + +void fn_1_4C84(omObjData* object) { + Mtx sp14; + Vec sp8; + f32 var_f31; + M418DllUnkStruct3* temp_r26; + M418DllWorkStruct* var_r27; + M418DllUnkStruct3* temp_r30; + ModelData* temp_r28; + ModelData* temp_r29; + s32 temp_r0; + u32 temp_r3; + + temp_r30 = &lbl_1_bss_26C[object->work[0]]; + if (temp_r30->unk8 == 0) { + var_f31 = (0.5f * temp_r30->unk3C) + ((CRot.x / 90.0f) * (0.5f * temp_r30->unk3C)); + temp_r29 = &Hu3DData[object->model[12]]; + if ((temp_r30->unk14 == 7) || (temp_r30->unk14 == 5)) { + temp_r29->rot.y = -object->rot.y - 360.0f; + } else { + temp_r29->rot.y = -object->rot.y - 90.0f; + } + temp_r29->scale.x = 0.35f * temp_r30->unk3C; + temp_r29->scale.y = var_f31; + temp_r29->scale.z = 0.35f * temp_r30->unk3C; + fn_1_3240(object); + } + fn_1_46C4(object); +} + +void fn_1_4F60(omObjData* object) { + M418DllUnkStruct3* temp_r30; + + temp_r30 = &lbl_1_bss_26C[object->work[0]]; + object->model[0] = CharModelCreate(temp_r30->unk14, 2); + object->motion[0] = CharModelMotionCreate(temp_r30->unk14, 0x5F0000); + object->motion[1] = CharModelMotionCreate(temp_r30->unk14, 0x5F0002); + object->motion[2] = CharModelMotionCreate(temp_r30->unk14, 0x5F0003); + object->motion[3] = CharModelMotionCreate(temp_r30->unk14, 0x5F0073); + object->motion[4] = CharModelMotionCreate(temp_r30->unk14, 0x5F0074); + object->motion[5] = CharModelMotionCreate(temp_r30->unk14, 0x5F0017); + object->motion[6] = CharModelMotionCreate(temp_r30->unk14, 0x5F0018); + object->motion[7] = CharModelMotionCreate(temp_r30->unk14, 0x5F001B); + object->motion[8] = CharModelMotionCreate(temp_r30->unk14, 0x5F002A); + object->motion[9] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(temp_r30->unk14 + 0x310000, 0x10000000, HEAP_DATA)); + object->motion[10] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(temp_r30->unk14 + 0x310008, 0x10000000, HEAP_DATA)); + object->model[1] = Hu3DModelCreateFile(0x310017); + Hu3DModelPosSet(object->model[1], 0.0f, -5000.0f, 0.0f); + Hu3DModelShadowSet(object->model[0]); + if (temp_r30->unk8 == 0) { + Hu3DMotionOverlaySet(object->model[0], object->motion[9]); + Hu3DMotionOverlaySpeedSet(object->model[0], 0.0f); + object->model[11] = Hu3DModelCreateFile(0x31002F); + Hu3DModelHookSet(object->model[0], CharModelHookNameGet(temp_r30->unk14, 2, 0), object->model[11]); + if ((temp_r30->unk14 == 4) || (temp_r30->unk14 == 5)) { + Hu3DModelScaleSet(object->model[11], 1.0f, 1.2f, 1.0f); + } + object->model[12] = Hu3DModelCreateFile(0x310027); + object->motion[12] = Hu3DMotionIDGet(object->model[12]); + Hu3DModelHookSet(object->model[11], "g031i00-itemhook_eff", object->model[12]); + Hu3DModelScaleSet(object->model[12], 0.0f, 0.5f, 0.0f); + fn_1_ABC4(object, 0xC, 0xC, 0, 1); + object->model[13] = Hu3DModelCreateFile(0x310028); + object->motion[13] = Hu3DMotionIDGet(object->model[13]); + fn_1_ABC4(object, 0xD, 0xD, 0, 2); + } + *lbl_1_data_1E0[object->work[0]] = -1; + CharModelMotionDataClose(temp_r30->unk14); + CharModelLayerSetAll2(7); + object->func = fn_1_4C84; +} + +void fn_1_5358(void) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; + Vec sp20 = { 0.0f, 600.0f, 600.0f }; + + fn_1_B104(var_r31, sp2C, sp20); + fn_1_B41C(var_r31); + var_r31->rot.x++; +} + +void fn_1_543C(void) { + M418DllUnkStruct sp38; + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + Vec sp2C = { -180.0f, 500.0f, 440.0f }; + Vec sp20 = { -180.0f, 330.0f, -760.0f }; + + + fn_1_B104(&sp38, sp2C, sp20); + fn_1_B41C(&sp38); + sp38.center.x = 0.0f; + sp38.center.y -= 75.0f; + sp38.rot.x = -10.0f; + sp38.rot.y = 10.0f; + fn_1_DC10(var_r31, &sp38, var_r31->unk48++, 30.0f, 10.0f); +} + +void fn_1_558C(void) { + M418DllUnkStruct sp38; + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; + Vec sp20 = { 0.0f, 600.0f, 600.0f }; + + fn_1_B104(&sp38, sp2C, sp20); + fn_1_B41C(&sp38); + sp38.rot.x++; + fn_1_CBF8(var_r31, &sp38, var_r31->unk48++, 30.0f, 10.0f); +} + +void fn_1_56AC(s32 arg0) { + M418DllUnkStruct* var_r28 = &lbl_1_bss_1F4; + fn_1_B458(var_r28); + switch (arg0) { + case 0: + fn_1_248(fn_1_5358); + break; + case 1: + fn_1_248(fn_1_543C); + break; + case 2: + fn_1_248(fn_1_558C); + break; + } +} + +void fn_1_5768(s32 arg0) { + s32 var_r31; + M418DllUnkStruct4* var_r30; + M418DllUnkStruct* var_r26; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r30 = &lbl_1_bss_170[var_r31]; + var_r30->unkC = 0; + } + + fn_1_56AC(0); +} + +s32 fn_1_57E4(s32 arg0) { + M418DllUnkStruct4* temp_r31; + M418DllUnkStruct* var_r25; + s32 var_r29; + s32 var_r30; + + if (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x3C) { + + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r31 = &lbl_1_bss_170[var_r30]; + if (temp_r31->unkC == 0) { + if ((rand8() % 5) == 0) { + var_r29 = 1; + } else { + var_r29 = 0; + } + if ((var_r29 != 0) || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x41)) { + HuAudFXPlay(0x5D3); + temp_r31->unkC = 1; + } + } else { + temp_r31->unk4 += 5.0f; + if (temp_r31->unk4 >= 90.0f) { + temp_r31->unk4 = 90.0f; + } + } + } + } + if (fn_1_B0C8(&lbl_1_bss_50, 0) == 0x1E) { + fn_1_56AC(1); + } + if (fn_1_B0C8(&lbl_1_bss_50, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_50); + } else { + return 0; + } +} From 08b09a5f31c721dab6d276fe8057a63231eb8537 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Fri, 22 Nov 2024 00:14:09 -0500 Subject: [PATCH 032/178] up to 7FD4 --- .vscode/settings.json | 84 +--- include/REL/m418Dll.h | 21 +- src/REL/m418Dll/main.c | 859 ++++++++++++++++++++++++++++++++++++++++- 3 files changed, 881 insertions(+), 83 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index fe219716..b4546cc9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -20,82 +20,20 @@ "*.inc": "c", ".clangd": "yaml", "m443dll.h": "c", - "object.h": "c", - "m417dll.h": "c", - "m418dll.h": "c", - "hsfman.h": "c", - "math.h": "c", - "corecrt_math.h": "c" + "object.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { - "build/*/config.json": true, - "build/**/*.MAP": true, - "build.ninja": true, - ".ninja_*": true, - "objdiff.json": true, - "progress.json": true, - "report.json": true, - "compile_commands.json": true + "build/*/config.json": true, + "build/**/*.MAP": true, + "build.ninja": true, + ".ninja_*": true, + "objdiff.json": true, + "progress.json": true, + "report.json": true, + "compile_commands.json": true, }, "cmake.ignoreCMakeListsMissing": true, "editor.fontFamily": "Fira Code", - "editor.fontLigatures": true, - "C_Cpp_Runner.cCompilerPath": "gcc", - "C_Cpp_Runner.cppCompilerPath": "g++", - "C_Cpp_Runner.debuggerPath": "gdb", - "C_Cpp_Runner.cStandard": "", - "C_Cpp_Runner.cppStandard": "", - "C_Cpp_Runner.msvcBatchPath": "C:/Program Files/Microsoft Visual Studio/VR_NR/Community/VC/Auxiliary/Build/vcvarsall.bat", - "C_Cpp_Runner.useMsvc": false, - "C_Cpp_Runner.warnings": [ - "-Wall", - "-Wextra", - "-Wpedantic", - "-Wshadow", - "-Wformat=2", - "-Wcast-align", - "-Wconversion", - "-Wsign-conversion", - "-Wnull-dereference" - ], - "C_Cpp_Runner.msvcWarnings": [ - "/W4", - "/permissive-", - "/w14242", - "/w14287", - "/w14296", - "/w14311", - "/w14826", - "/w44062", - "/w44242", - "/w14905", - "/w14906", - "/w14263", - "/w44265", - "/w14928" - ], - "C_Cpp_Runner.enableWarnings": true, - "C_Cpp_Runner.warningsAsError": false, - "C_Cpp_Runner.compilerArgs": [], - "C_Cpp_Runner.linkerArgs": [], - "C_Cpp_Runner.includePaths": [], - "C_Cpp_Runner.includeSearch": [ - "*", - "**/*" - ], - "C_Cpp_Runner.excludeSearch": [ - "**/build", - "**/build/**", - "**/.*", - "**/.*/**", - "**/.vscode", - "**/.vscode/**" - ], - "C_Cpp_Runner.useAddressSanitizer": false, - "C_Cpp_Runner.useUndefinedSanitizer": false, - "C_Cpp_Runner.useLeakSanitizer": false, - "C_Cpp_Runner.showCompilationTime": false, - "C_Cpp_Runner.useLinkTimeOptimization": false, - "C_Cpp_Runner.msvcSecureNoWarnings": false -} \ No newline at end of file + "editor.fontLigatures": true +} diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h index af7e7ab4..967fa628 100644 --- a/include/REL/m418Dll.h +++ b/include/REL/m418Dll.h @@ -4,6 +4,7 @@ #include "dolphin.h" typedef void (*M418DllFunc)(void); +typedef s32 (*M418DllS7Func)(void); typedef struct M418DllUnkStruct { M418DllFunc unk0; @@ -18,17 +19,35 @@ typedef struct M418DllUnkStruct { } M418DllUnkStruct; // sizeof 0x4C typedef struct M418DllUnkStruct7 { - char unk[0x18]; + char unk[0x10]; + M418DllFunc unk10; + M418DllS7Func unk14; } M418DllUnkStruct7; // sizeof 0x18 +typedef struct M418DllUnkStruct8 { + s32 unk0; + s32 unk4; + s32 unk8; + s32 unkC; + s32 unk10; + s32 unk14; + s32 unk18; + s32 unk1C; + s32 unk20; +} M418DllUnkStruct8; // sizeof 0x24 + f32 fn_1_A920(f32, f32, f32); +f32 fn_1_A940(f32, f32, f32, f32); +f32 fn_1_AA30(f32, f32, f32, f32); void fn_1_ABC4(omObjData*, s32, s32, s32, s32); void fn_1_AD14(omObjData*, s32, s32, s32, s32); s32 fn_1_AF38(M418DllUnkStruct7*); +s32 fn_1_B034(M418DllUnkStruct7*, s32); s32 fn_1_B0C8(M418DllUnkStruct7*, s32); void fn_1_B104(M418DllUnkStruct*, Vec, Vec); void fn_1_B41C(M418DllUnkStruct*); void fn_1_B458(M418DllUnkStruct*); +void fn_1_BEAC(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); void fn_1_CBF8(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); void fn_1_DC10(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index daf129d7..4cb5cbb5 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -6,12 +6,13 @@ #include "game/minigame_seq.h" #include "game/object.h" #include "game/objsub.h" +#include "game/pad.h" #include "REL/m418Dll.h" // types typedef struct M418DllUnkStruct2 { - char unk[0x4]; + omObjData* unk0; s32 unk4[3]; char unk10[0x4]; } M418DllUnkStruct2; // sizeof 0x14 @@ -33,28 +34,42 @@ typedef struct M418DllUnkStruct3 { f32 unk34; f32 unk38; f32 unk3C; - char unk[0x20]; + char unk40[0xC]; + s32 unk4C; + s32 unk50; + char unk[0x8]; + s32 unk5C; } M418DllUnkStruct3; // sizeof 0x60 typedef struct M418DllUnkStruct4 { - char unk[0x4]; + omObjData* unk0; f32 unk4; f32 unk8; s32 unkC; s32 unk10; f32 unk14; - f32 unk18; + union { + f32 unk18; + s32 unk18s; + }; } M418DllUnkStruct4; // sizeof 0x1C typedef struct M418DllUnkStruct5 { char unk[0x14]; s32 unk14; - char unk18[0x14]; -} M418DllUnkStruct5; // sizeof 0x2C + char unk18[0x8]; + s32 unk20; + char unk24[0x8]; +} M418DllUnkStruct5; // sizeof 0x2C; typedef struct M418DllUnkStruct6 { s32 unk0; - char unk4[0x40]; + s32 unk4[3]; + s32 unk10[3]; + char unk1C[0x18]; + s32 unk34; + s32 unk38; + char unk3C[0x8]; } M418DllUnkStruct6; // sizeof 0x44 typedef struct M418DllWorkStruct { @@ -75,6 +90,7 @@ M418DllUnkStruct4 lbl_1_bss_170[4]; M418DllUnkStruct4 lbl_1_bss_11C[3]; M418DllWorkStruct lbl_1_bss_68; M418DllUnkStruct7 lbl_1_bss_50; +M418DllUnkStruct7 lbl_1_bss_38; s32 lbl_1_bss_8; s32 lbl_1_bss_4; Process* lbl_1_bss_0; @@ -1217,7 +1233,6 @@ s32 fn_1_57E4(s32 arg0) { s32 var_r30; if (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x3C) { - for (var_r30 = 0; var_r30 < 3; var_r30++) { temp_r31 = &lbl_1_bss_170[var_r30]; if (temp_r31->unkC == 0) { @@ -1226,7 +1241,7 @@ s32 fn_1_57E4(s32 arg0) { } else { var_r29 = 0; } - if ((var_r29 != 0) || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x41)) { + if (var_r29 || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x41)) { HuAudFXPlay(0x5D3); temp_r31->unkC = 1; } @@ -1247,3 +1262,829 @@ s32 fn_1_57E4(s32 arg0) { return 0; } } + +s32 lbl_1_data_200[16] = { + 0x310000, 0x310001, 0x310002, 0x310003, + 0x310004, 0x310005, 0x310006, 0x310007, + 0x310008, 0x310009, 0x31000A, 0x31000B, + 0x31000C, 0x31000D, 0x31000E, 0x31000F +}; + +Vec lbl_1_data_240[3] = { + { -540.0f, 225.0f, -900.0f }, + { -180.0f, 225.0f, -900.0f }, + { 180.0f, 225.0f, -900.0f }, +}; + +void fn_1_5970(void) { + M418DllUnkStruct3* temp_r30; + M418DllUnkStruct6* temp_r29; + M418DllUnkStruct4* temp_r28; + s32 var_r31; + + temp_r29 = &lbl_1_bss_3EC; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + temp_r30 = &lbl_1_bss_26C[temp_r29->unk4[var_r31]]; + omSetTra(temp_r30->unk0, lbl_1_data_240[var_r31].x, lbl_1_data_240[var_r31].y, lbl_1_data_240[var_r31].z - 50.0f); + temp_r30->unk4C = 0; + } + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + temp_r28 = &lbl_1_bss_170[var_r31]; + temp_r28->unkC = 0; + } +} + +Vec lbl_1_data_264[4] = { + { -355.0f, 0.0f, -680.0f }, + { 5.0f, 0.0f, -680.0f }, + { 365.0f, 0.0f, -680.0f }, +}; + +s32 fn_1_5A6C(s32 arg0) { + s32 var_r31; + M418DllUnkStruct3* temp_r30; + M418DllUnkStruct4* temp_r29; + M418DllUnkStruct3* temp_r28; + M418DllUnkStruct6* temp_r27; + s32 var_r26; + omObjData* temp_r25; + s32 var_r24; + M418DllUnkStruct* temp_r20; + + temp_r27 = &lbl_1_bss_3EC; + for (var_r31 = 0; var_r31 < 3; var_r31++) { + temp_r30 = &lbl_1_bss_26C[temp_r27->unk4[var_r31]]; + if (temp_r30->unk4C == 0) { + if ((rand8() % 5) == 0) { + var_r26 = 1; + } else { + var_r26 = 0; + } + if (var_r26 || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 5)) { + temp_r30->unk4C = 1; + temp_r25 = temp_r30->unk0; + temp_r28 = &lbl_1_bss_26C[temp_r25->work[0]]; + if (temp_r28->unk1C == 0) { + temp_r28->unk1C = 1; + } + HuAudCharVoicePlay(temp_r30->unk14, 0x122); + } + } else { + fn_1_3EB0(temp_r30->unk0, lbl_1_data_264[var_r31], 0.0f, 9.0f); + } + } + if (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x3C) { + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + temp_r29 = &lbl_1_bss_170[var_r31]; + if (temp_r29->unkC == 0) { + if ((rand8() % 5) == 0) { + var_r24 = 1; + } else { + var_r24 = 0; + } + if ((var_r24 != 0) || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x41)) { + HuAudFXPlay(0x5D3); + temp_r29->unkC = 1; + } + } else { + temp_r29->unk4 -= 2.5f; + if (temp_r29->unk4 <= 0.0f) { + temp_r29->unk4 = 0.0f; + } + } + } + } + if (fn_1_B0C8(&lbl_1_bss_50, 0) == 0x3C) { + fn_1_56AC(2); + } + if (fn_1_B0C8(&lbl_1_bss_50, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_50); + } + return 0; +} + +M418DllUnkStruct8 lbl_1_data_294 = { + 0, 0, 0x5A, + 0, 0, 0xB4, + 0, 0, -1 +}; + +void fn_1_5D28(void) { + fn_1_AEDC(&lbl_1_bss_50, &lbl_1_data_294); +} + +s32 fn_1_5D58(void) { + s32 var_r31; + + var_r31 = 0; + if (lbl_1_bss_50.unk10 != NULL) { + lbl_1_bss_50.unk10(); + lbl_1_bss_50.unk10 = NULL; + } + if (lbl_1_bss_50.unk14 != NULL) { + var_r31 = lbl_1_bss_50.unk14(); + } + return var_r31; +} + +s32 fn_1_5DF0(omObjData* object, s32 arg1) { + M418DllUnkStruct3* temp_r31; + s32 var_r30; + + temp_r31 = &lbl_1_bss_26C[object->work[0]]; + var_r30 = temp_r31->unk4C; + if (temp_r31->unkC != 0) { + switch (temp_r31->unk10) { + case 0: + if ((arg1 % 100) == 0) { + var_r30 = rand8() % 4; + } + break; + case 1: + if ((arg1 % 50) == 0) { + var_r30 = rand8() % 4; + } + break; + case 2: + if ((arg1 % 25) == 0) { + var_r30 = rand8() % 4; + } + break; + case 3: + if ((arg1 % 25) == 0) { + var_r30 = rand8() % 4; + } + break; + } + } else { + if ((HuPadBtnDown[temp_r31->unk18] & PAD_BUTTON_A) != 0) { + var_r30 = 1; + } + if ((HuPadBtnDown[temp_r31->unk18] & PAD_BUTTON_B) != 0) { + var_r30 = 0; + } + if ((HuPadBtnDown[temp_r31->unk18] & PAD_BUTTON_X) != 0) { + var_r30 = 3; + } + if ((HuPadBtnDown[temp_r31->unk18] & PAD_BUTTON_Y) != 0) { + var_r30 = 2; + } + } + return var_r30; +} + +s32 fn_1_6038(omObjData* object, s32 arg1) { + M418DllUnkStruct3* temp_r30; + M418DllUnkStruct4* temp_r28; + M418DllUnkStruct4* temp_r27; + M418DllUnkStruct4* temp_r26; + s32 var_r29; + s32 var_r31; + + temp_r30 = &lbl_1_bss_26C[object->work[0]]; + var_r31 = temp_r30->unk4C; + if (temp_r30->unkC != 0) { + switch (temp_r30->unk10) { + case 0: + if ((arg1 % 200) == 1) { + var_r31 = rand8() % 4; + } + break; + case 1: + if ((arg1 % 150) == 1) { + var_r31 = rand8() % 4; + } + break; + case 2: + if ((arg1 % 100) == 1) { + var_r31 = rand8() % 4; + } + break; + case 3: + if ((arg1 % 100) == 1) { + var_r31 = rand8() % 4; + } + break; + } + if (var_r31 != -1) { + temp_r28 = &lbl_1_bss_170[var_r31]; + if (temp_r28->unk18s == 1) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + temp_r27 = &lbl_1_bss_170[var_r29]; + if (temp_r27->unk18s != 1) { + var_r31 = var_r29; + temp_r27->unk18s = 1; + break; + } + } + } else { + temp_r28->unk18s = 1; + } + } + } else { + if ((HuPadBtnDown[temp_r30->unk18] & PAD_BUTTON_A) != 0) { + var_r31 = 1; + } + if ((HuPadBtnDown[temp_r30->unk18] & PAD_BUTTON_B) != 0) { + var_r31 = 0; + } + if ((HuPadBtnDown[temp_r30->unk18] & PAD_BUTTON_X) != 0) { + var_r31 = 3; + } + if ((HuPadBtnDown[temp_r30->unk18] & PAD_BUTTON_Y) != 0) { + var_r31 = 2; + } + if (var_r31 != -1) { + temp_r26 = &lbl_1_bss_170[var_r31]; + if (temp_r26->unk18s == 1) { + var_r31 = -1; + } else { + temp_r26->unk18s = 1; + } + } + } + return var_r31; +} + +void fn_1_6314(void) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; + Vec sp20 = { 0.0f, 600.0f, 600.0f }; + + fn_1_B104(var_r31, sp2C, sp20); + fn_1_B41C(var_r31); + var_r31->rot.x++; +} + +void fn_1_63F8(void) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + M418DllUnkStruct sp38; + Vec sp2C = { 0.0f, 1800.0f, 480.0f }; + Vec sp20 = { 0.0f, 600.0f, 250.0f }; + + fn_1_B104(&sp38, sp2C, sp20); + fn_1_B41C(&sp38); + sp38.zoom = 750.0f; + fn_1_BEAC(var_r31, &sp38, var_r31->unk48++, 120.0f, 10.0f); +} + +void fn_1_6510(void) { + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + M418DllUnkStruct sp38; + Vec sp2C = { 0.0f, 980.0f, 1330.0f }; + Vec sp20 = { 0.0f, 480.0f, 130.0f }; + + fn_1_B104(&sp38, sp2C, sp20); + fn_1_B41C(&sp38); + fn_1_BEAC(var_r31, &sp38, var_r31->unk48++, 30.0f, 10.0f); +} + +Vec lbl_1_data_2B8[8] = { + { -540.0f, 225.0f, -900.0f }, + { -180.0f, 225.0f, -900.0f }, + { 180.0f, 225.0f, -900.0f }, + { 540.0f, 225.0f, -900.0f }, + { -360.0f, 0.0f, -680.0f }, + { 0.0f, 0.0f, -680.0f }, + { 360.0f, 0.0f, -680.0f }, + { 0.0f, 0.0f, 0.0f } +}; + +void fn_1_6618(void) { + M418DllUnkStruct sp8; + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct* var_r30; + M418DllUnkStruct6* var_r29; + + var_r29 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[var_r29->unk0]; + var_r30 = &lbl_1_bss_1F4; + sp8.center.x = lbl_1_data_2B8[temp_r31->unk4C].x; + sp8.center.y = lbl_1_data_2B8[temp_r31->unk4C].y; + sp8.center.z = lbl_1_data_2B8[temp_r31->unk4C].z; + sp8.rot.x = 0.0f; + sp8.rot.y = 0.0f; + sp8.rot.z = 0.0f; + sp8.zoom = 725.0f; + fn_1_CBF8(var_r30, &sp8, var_r30->unk48++, 30.0f, 5.0f); +} + +void fn_1_6740(s32 arg0) { + M418DllUnkStruct* var_r27 = &lbl_1_bss_1F4; + + fn_1_B458(var_r27); + switch (arg0) { + case 0: + fn_1_248(fn_1_6314); + break; + case 1: + fn_1_248(fn_1_63F8); + break; + case 2: + fn_1_248(fn_1_6510); + break; + case 3: + fn_1_248(fn_1_6618); + break; + } +} + +void fn_1_6808(s32 arg0) { + s32 var_r31; + M418DllUnkStruct6* var_r30 = &lbl_1_bss_3EC; + M418DllUnkStruct3* var_r29; + M418DllUnkStruct4* var_r28; + M418DllUnkStruct* var_r23; + + HuAudAUXVolSet(0x40, 0x40); + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r29 = &lbl_1_bss_26C[var_r30->unk4[var_r31]]; + var_r29->unk4C = -1; + } + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r28 = &lbl_1_bss_11C[var_r31]; + fn_1_ABC4(var_r28->unk0, 0, 3, 30, 1); + } + if (lbl_1_bss_8 == 0) { + lbl_1_bss_8 = 1; + lbl_1_bss_4 = 0x12C; + } + + fn_1_6740(0); +} + +Vec lbl_1_data_318[4] = { + { -540.0f, 115.0f, -700.0f }, + { -180.0f, 115.0f, -700.0f }, + { 180.0f, 115.0f, -700.0f }, + { 540.0f, 115.0f, -700.0f } +}; + +s32 fn_1_6914(s32 arg0) { + Vec sp14; + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct3* temp_r30; + s32 var_r29; + s32 temp_r27; + M418DllUnkStruct6* var_r26; + M418DllUnkStruct4* var_r25; + M418DllUnkStruct* var_r18; + + var_r26 = &lbl_1_bss_3EC; + + for (var_r29 = 0; var_r29 < 3; var_r29++) { + temp_r31 = &lbl_1_bss_26C[var_r26->unk4[var_r29]]; + temp_r27 = fn_1_B0C8(&lbl_1_bss_38, 0); + temp_r31->unk4C = fn_1_5DF0(temp_r31->unk0, temp_r27); + if (temp_r31->unk4C != -1) { + sp14.x = lbl_1_data_318[temp_r31->unk4C].x; + sp14.y = lbl_1_data_318[temp_r31->unk4C].y; + sp14.z = (75.0f * var_r29) + lbl_1_data_318[temp_r31->unk4C].z; + fn_1_3444(temp_r31->unk0, sp14, -1.0f, 9.0f); + if (temp_r31->unk0->trans.z <= -720.0f) { + temp_r31->unk0->trans.z = -720.0f; + } + if (temp_r31->unk0->trans.z >= -480.0f) { + temp_r31->unk0->trans.z = -480.0f; + } + if (fn_1_B0C8(&lbl_1_bss_38, 0) >= 0xF0) { + temp_r31->unk0->trans.x = temp_r31->unk0->trans.y = -5000.0f; + fn_1_ABC4(temp_r31->unk0, 0, 0, 0xA, 1); + } + } + } + + for (var_r29 = 0; var_r29 < 3; var_r29++) { + var_r25 = &lbl_1_bss_11C[var_r29]; + var_r25->unk0->rot.y += 1.2f; + } + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0x3C) { + fn_1_6740(1); + } + if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_38); + } + return 0; +} + +void fn_1_6DCC(s32 arg0) { + s32 var_r31; + M418DllUnkStruct4* temp_r30; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + temp_r30 = &lbl_1_bss_11C[var_r31]; + temp_r30->unk0->rot.y = 0.0f; + fn_1_ABC4(temp_r30->unk0, 0, 0, 0x1E, 1); + } + fn_1_6740(2); +} + +s32 fn_1_6E6C(void) { + if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_38); + } + return 0; +} + +void fn_1_6EB4(void) { + M418DllUnkStruct6* var_r31 = &lbl_1_bss_3EC; + s32 var_r30; + M418DllUnkStruct3* temp_r29; + + var_r31->unk34 = 0; + + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r29 = &lbl_1_bss_26C[var_r31->unk4[var_r30]]; + if (temp_r29->unk4C == -1) { + var_r31->unk34++; + temp_r29->unk50 = 0; + } + } +} + +s32 fn_1_6F38(void) { + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct2* temp_r29; + M418DllUnkStruct6* temp_r28; + M418DllUnkStruct2* temp_r27; + + s32 var_r26; + s32 var_r30; + f32 var_f31; + + temp_r29 = &lbl_1_bss_1E0; + temp_r28 = &lbl_1_bss_3EC; + + if (temp_r28->unk34 == 0) { + return fn_1_B034(&lbl_1_bss_38, 9); + } + + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r31 = &lbl_1_bss_26C[temp_r28->unk4[var_r30]]; + if (temp_r31->unk4C == -1) { + if (temp_r29->unk4[var_r30] == 0) { + if ((rand8() % 10) == 0) { + var_r26 = 1; + } else { + var_r26 = 0; + } + if ((var_r26 != 0) || (fn_1_B0C8(&lbl_1_bss_38, 0) >= 10)) { + HuAudFXPlay(0x5DC); + HuAudCharVoicePlay(temp_r31->unk14, 0x128); + temp_r29->unk4[var_r30] = 2; + Hu3DModelShadowDispOff(temp_r31->unk0->model[0]); + fn_1_ABC4(temp_r31->unk0, 0, 7, 0x1E, 0); + temp_r31->unk50 = fn_1_B0C8(&lbl_1_bss_38, 0); + omVibrate(temp_r31->unk4, 0xC, 6, 6); + } + } else if (fn_1_B0C8(&lbl_1_bss_38, 0) >= (temp_r31->unk50 + 0x1E)) { + temp_r31->unk0->trans.y -= 15.0f; + } + if (fn_1_B0C8(&lbl_1_bss_38, 0) >= (temp_r31->unk50 + 0x3C)) { + var_f31 = fn_1_AA30(-200.0f, -110.0f, fn_1_B0C8(&lbl_1_bss_38, 0) - (temp_r31->unk50 + 0x3C), 90.0f); + Hu3DModelPosSet( + temp_r29->unk0->model[var_r30 + 8], + -350.0f + (360.0f * var_r30), + var_f31, + -660.0f + ); + Hu3DModelRotSet(temp_r29->unk0->model[var_r30 + 8], 0.0f, 0.0f, 20.0f); + } + } + } + if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { + temp_r27 = &lbl_1_bss_1E0; + temp_r27->unk4[0] = temp_r27->unk4[1] = temp_r27->unk4[2] = 3; + if (temp_r28->unk34 >= 3) { + return 1; + } + return fn_1_B034(&lbl_1_bss_38, 9); + } else { + return 0; + } +} + +void fn_1_7294(void) {} + +s32 fn_1_7298(void) { + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct4* temp_r30; + M418DllUnkStruct6* temp_r29; + + temp_r29 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[temp_r29->unk0]; + temp_r30 = &lbl_1_bss_11C[temp_r29->unk38]; + if (fn_1_B0C8(&lbl_1_bss_38, 0) < 0x3C) { + if (((temp_r30->unk0->work[0] == 0) || (temp_r30->unk0->work[1] == 0x18)) && (temp_r30->unk0->rot.y > -50.0f)) { + temp_r30->unk0->rot.y -= 5.0f; + if (temp_r30->unk0->rot.y <= -50.0f) { + temp_r30->unk0->rot.y = -50.0f; + } + } + if (temp_r31->unk0->rot.y < 180.0f) { + temp_r31->unk0->rot.y += 5.0f; + if (temp_r30->unk0->rot.y <= -50.0f) { + temp_r30->unk0->rot.y = -50.0f; + } + } + } else if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0x3C) { + HuAudFXPlay(0x40); + fn_1_ABC4(temp_r30->unk0, 0, 2, 0xA, 0); + fn_1_AD14(temp_r31->unk0, 0, 0, 0xA, 1); + Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[9]); + Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 1.0f); + lbl_1_bss_240.unk20 = HuAudFXPlay(0x5D9); + } else if (fn_1_B0C8(&lbl_1_bss_38, 0) <= 0xAA) { + if (fn_1_B0C8(&lbl_1_bss_38, 0) >= 0x5A) { + temp_r31->unk3C += 0.025f; + if (temp_r31->unk3C >= 1.0f) { + temp_r31->unk3C = 1.0f; + } + } + } else { + Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], -1.0f); + } + if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_38); + } else { + return 0; + } +} + +void fn_1_7570(void) { + M418DllUnkStruct6* var_r31 = &lbl_1_bss_3EC; + M418DllUnkStruct3* var_r30 = &lbl_1_bss_26C[var_r31->unk0]; + var_r30->unk4C = -1; + if (lbl_1_bss_8 == 0) { + lbl_1_bss_8 = 1; + lbl_1_bss_4 = 0x12C; + } +} + +s32 fn_1_75E4(void) { + Mtx sp38; + Mtx sp8; + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct6* var_r30; + s32 var_r29; + + var_r30 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[var_r30->unk0]; + if (fn_1_B0C8(&lbl_1_bss_38, 0) >= 10) { + temp_r31->unk4C = fn_1_6038(temp_r31->unk0, fn_1_B0C8(&lbl_1_bss_38, 0)); + if (temp_r31->unk4C != -1) { + if (lbl_1_bss_8 == 2) { + lbl_1_bss_8 = 3; + lbl_1_bss_4 = 0x1E; + } + return fn_1_AF38(&lbl_1_bss_38); + } + } + fn_1_B0C8(&lbl_1_bss_38, 1); + var_r29 = 0; + if (lbl_1_bss_8 == 3) { + var_r29 = 1; + } + if (var_r29 != 0) { + Hu3DModelObjMtxGet(temp_r31->unk0->model[0], lbl_1_data_1C0[temp_r31->unk14], sp8); + Hu3DModelObjMtxGet(temp_r31->unk0->model[12], "g031i00-itemhook_eff", sp38); + Hu3DModelPosSet(temp_r31->unk0->model[13], sp38[0][3] + sp8[0][3], 80.0f + (sp38[1][3] + sp8[1][3]), sp38[2][3] + sp8[2][3]); + Hu3DModelScaleSet(temp_r31->unk0->model[13], 0.5f, 0.5f, 0.5f); + Hu3DMotionSpeedSet(temp_r31->unk0->model[13], 2.0f); + fn_1_ABC4(temp_r31->unk0, 0xD, 0xD, 0, 0); + return fn_1_AF38(&lbl_1_bss_38); + } else { + return 0; + } +} + +void fn_1_77F8(void) { + M418DllUnkStruct6* var_r31; + M418DllUnkStruct3* var_r30; + + var_r31 = &lbl_1_bss_3EC; + var_r30 = &lbl_1_bss_26C[var_r31->unk0]; + if (var_r30->unk4C == -1) { + HuAudFXFadeOut(lbl_1_bss_240.unk20, 0x3E8); + } +} + +s32 fn_1_7860(void) { + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct6* temp_r30; + + temp_r30 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[temp_r30->unk0]; + if (temp_r31->unk4C == -1) { + temp_r31->unk3C -= 0.025f; + if (temp_r31->unk3C <= 0.0f) { + temp_r31->unk3C = 0.0f; + } + if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_38); + } + } else { + temp_r31->unk0->rot.y = fn_1_A940( + 180.0f, 200.0f - (10.0f * temp_r31->unk4C), + fn_1_B0C8(&lbl_1_bss_38, 0), 10.0f + ); + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0xA) { + Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[10]); + Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 1.0f); + temp_r31->unk5C = 1; + } + if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { + Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], -1.0f); + temp_r31->unk5C = 2; + return fn_1_AF38(&lbl_1_bss_38); + } + } + return 0; +} + +void fn_1_7A68(s32 arg0) { + M418DllUnkStruct6* temp_r31; + M418DllUnkStruct3* temp_r30; + M418DllUnkStruct4* temp_r29; + s32 var_r28; + M418DllUnkStruct3* temp_r27; + s32 var_r26; + + var_r26 = 0; + temp_r31 = &lbl_1_bss_3EC; + temp_r30 = &lbl_1_bss_26C[temp_r31->unk0]; + if (temp_r30->unk4C != -1) { + temp_r31->unk10[0] = temp_r31->unk10[1] = temp_r31->unk10[2] = -1; + + for (var_r28 = 0; var_r28 < 3; var_r28++) { + temp_r27 = &lbl_1_bss_26C[temp_r31->unk4[var_r28]]; + if (temp_r30->unk4C == temp_r27->unk4C) { + temp_r31->unk10[var_r26++] = temp_r27->unk0->work[0]; + } + } + temp_r29 = &lbl_1_bss_170[temp_r30->unk4C]; + temp_r29->unkC = 0; + if (temp_r31->unk10[0] == -1) { + temp_r29->unk10 = 1; + } + temp_r29->unk0->work[1] = 1; + } +} + +s32 fn_1_7B68(s32 arg0) { + Mtx sp8; + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct6* temp_r30; + M418DllUnkStruct3* temp_r29; + M418DllUnkStruct4* temp_r28; + s32 var_r27; + s32 var_r26; + M418DllUnkStruct* temp_r21; + + var_r26 = -1; + temp_r30 = &lbl_1_bss_3EC; + temp_r29 = &lbl_1_bss_26C[temp_r30->unk0]; + temp_r28 = &lbl_1_bss_170[temp_r29->unk4C]; + if (temp_r29->unk4C == -1) { + return fn_1_AF38(&lbl_1_bss_38); + } + if (temp_r28->unkC == 1) { + fn_1_6740(3); + } + if (temp_r28->unkC == 3) { + + for (var_r27 = 0; var_r27 < 3; var_r27++) { + if (temp_r30->unk10[var_r27] != -1) { + temp_r31 = &lbl_1_bss_26C[temp_r30->unk10[var_r27]]; + Hu3DModelObjMtxGet(*temp_r28->unk0->model, "taihou-null4", (f32 (*)[4]) &sp8[0]); + omSetTra(temp_r31->unk0, sp8[0][3], sp8[1][3] - 25.0f, 50.0f + sp8[2][3]); + omSetRot(temp_r31->unk0, 0.0f, 180.0f, 0.0f); + fn_1_AD14(temp_r31->unk0, 0, 8, 0, 2); + temp_r31->unk4C = -1; + temp_r31->unk24 = 0; + if (var_r26 >= 2) { + var_r26 = 1; + } + temp_r31->unk30 = var_r26++; + temp_r31->unk28 = 0.0f; + omVibrate((s16) temp_r29->unk4, 0xC, 4, 2); + } + } + return fn_1_AF38(&lbl_1_bss_38); + } + return 0; +} + +void fn_1_7D80(void) { + s32 var_r31; + M418DllUnkStruct3* temp_r30; + M418DllUnkStruct6* temp_r29; + M418DllUnkStruct4* temp_r28; + + temp_r29 = &lbl_1_bss_3EC; + temp_r30 = &lbl_1_bss_26C[temp_r29->unk0]; + temp_r30->unk0->rot.y = 180.0f; + temp_r30->unk3C = 0.0f; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + temp_r28 = &lbl_1_bss_11C[var_r31]; + temp_r28->unk0->rot.y = 0.0f; + } +} + +s32 fn_1_7E24(s32 arg0) { + M418DllUnkStruct6* var_r31; + s32 var_r30; + s32 var_r29; + M418DllUnkStruct4* var_r28; + M418DllUnkStruct4* var_r27; + M418DllUnkStruct4* var_r26; + M418DllUnkStruct3* var_r25; + + var_r29 = 0; + var_r31 = &lbl_1_bss_3EC; + var_r28 = &lbl_1_bss_11C[0]; + var_r27 = &lbl_1_bss_11C[1]; + var_r26 = &lbl_1_bss_11C[2]; + if (var_r31->unk38 == 2) { + var_r28->unk0->work[1] = 0; + var_r27->unk0->work[1] = 0; + var_r26->unk0->work[1] = 3; + return 1; + } + var_r31->unk38++; + + for (var_r30 = 0; var_r30 < 3; var_r30++) { + var_r25 = &lbl_1_bss_26C[var_r31->unk4[var_r30]]; + if (var_r25->unk4C != -1) { + var_r29++; + } + } + if (var_r29 == 0) { + return 1; + } else { + return fn_1_AF38(&lbl_1_bss_38); + } +} + +void fn_1_7F1C(void) { + M418DllUnkStruct6* var_r31; + M418DllUnkStruct4* var_r30; + M418DllUnkStruct4* var_r29; + M418DllUnkStruct4* var_r28; + + var_r31 = &lbl_1_bss_3EC; + var_r30 = &lbl_1_bss_11C[0]; + var_r29 = &lbl_1_bss_11C[1]; + var_r28 = &lbl_1_bss_11C[2]; + if (var_r31->unk38 == 1) { + var_r30->unk0->work[1] = 3; + var_r29->unk0->work[1] = 2; + var_r28->unk0->work[1] = 1; + } else if (var_r31->unk38 == 2) { + var_r30->unk0->work[1] = 0; + var_r29->unk0->work[1] = 3; + var_r28->unk0->work[1] = 2; + } +} + +s32 fn_1_7FD4(s32 arg0) { + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct6* temp_r30; + M418DllUnkStruct4* temp_r29; + + temp_r30 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[temp_r30->unk0]; + if (temp_r31->unk4C == -1) { + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 30) { + fn_1_6740(2); + } + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 120) { + return fn_1_B034(&lbl_1_bss_38, 9); + } + } else { + temp_r29 = &lbl_1_bss_170[temp_r31->unk4C]; + if (temp_r29->unk10 != 0) { + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 210) { + fn_1_6740(2); + } + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 300) { + return fn_1_B034(&lbl_1_bss_38, 9); + } + } else { + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 30) { + fn_1_6740(2); + } + if (fn_1_B0C8(&lbl_1_bss_38, 0) == 120) { + return fn_1_B034(&lbl_1_bss_38, 3); + } + } + } + fn_1_B0C8(&lbl_1_bss_38, 1); + return 0; +} From c7ebeb9c336e7fe7eb468b510a8068cb3c3f9d00 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Fri, 22 Nov 2024 23:50:11 -0500 Subject: [PATCH 033/178] complete m418/main.c --- .vscode/settings.json | 3 +- include/REL/m418Dll.h | 17 +- src/REL/m418Dll/main.c | 784 +++++++++++++++++++++++++++++++++++++++-- 3 files changed, 754 insertions(+), 50 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index b4546cc9..0e3a6ba5 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -20,7 +20,8 @@ "*.inc": "c", ".clangd": "yaml", "m443dll.h": "c", - "object.h": "c" + "object.h": "c", + "executor.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h index 967fa628..cd283bde 100644 --- a/include/REL/m418Dll.h +++ b/include/REL/m418Dll.h @@ -4,7 +4,9 @@ #include "dolphin.h" typedef void (*M418DllFunc)(void); -typedef s32 (*M418DllS7Func)(void); +typedef s32 (*M418DllRetFunc)(void); +typedef void (*M418DllInFunc)(s32); +typedef s32 (*M418DllInRetFunc)(s32); typedef struct M418DllUnkStruct { M418DllFunc unk0; @@ -21,19 +23,13 @@ typedef struct M418DllUnkStruct { typedef struct M418DllUnkStruct7 { char unk[0x10]; M418DllFunc unk10; - M418DllS7Func unk14; + M418DllRetFunc unk14; } M418DllUnkStruct7; // sizeof 0x18 typedef struct M418DllUnkStruct8 { - s32 unk0; - s32 unk4; + M418DllInFunc unk0; + M418DllInRetFunc unk4; s32 unk8; - s32 unkC; - s32 unk10; - s32 unk14; - s32 unk18; - s32 unk1C; - s32 unk20; } M418DllUnkStruct8; // sizeof 0x24 f32 fn_1_A920(f32, f32, f32); @@ -41,6 +37,7 @@ f32 fn_1_A940(f32, f32, f32, f32); f32 fn_1_AA30(f32, f32, f32, f32); void fn_1_ABC4(omObjData*, s32, s32, s32, s32); void fn_1_AD14(omObjData*, s32, s32, s32, s32); +void fn_1_AEDC(M418DllUnkStruct7*, M418DllUnkStruct8**); s32 fn_1_AF38(M418DllUnkStruct7*); s32 fn_1_B034(M418DllUnkStruct7*, s32); s32 fn_1_B0C8(M418DllUnkStruct7*, s32); diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index 4cb5cbb5..e4b50f24 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -7,14 +7,14 @@ #include "game/object.h" #include "game/objsub.h" #include "game/pad.h" +#include "game/wipe.h" #include "REL/m418Dll.h" // types typedef struct M418DllUnkStruct2 { omObjData* unk0; - s32 unk4[3]; - char unk10[0x4]; + s32 unk4[4]; } M418DllUnkStruct2; // sizeof 0x14 typedef struct M418DllUnkStruct3 { @@ -37,7 +37,8 @@ typedef struct M418DllUnkStruct3 { char unk40[0xC]; s32 unk4C; s32 unk50; - char unk[0x8]; + s32 unk54; + s32 unk58; s32 unk5C; } M418DllUnkStruct3; // sizeof 0x60 @@ -47,29 +48,26 @@ typedef struct M418DllUnkStruct4 { f32 unk8; s32 unkC; s32 unk10; - f32 unk14; + union { + f32 unk14; + s32 unk14s; + }; union { f32 unk18; s32 unk18s; }; } M418DllUnkStruct4; // sizeof 0x1C -typedef struct M418DllUnkStruct5 { - char unk[0x14]; - s32 unk14; - char unk18[0x8]; - s32 unk20; - char unk24[0x8]; -} M418DllUnkStruct5; // sizeof 0x2C; - typedef struct M418DllUnkStruct6 { s32 unk0; s32 unk4[3]; s32 unk10[3]; - char unk1C[0x18]; + s32 unk1C[3]; + s32 unk28[3]; s32 unk34; s32 unk38; - char unk3C[0x8]; + s32 unk3C; + s32 unk40; } M418DllUnkStruct6; // sizeof 0x44 typedef struct M418DllWorkStruct { @@ -83,7 +81,7 @@ typedef struct M418DllWorkStruct { // bss M418DllUnkStruct6 lbl_1_bss_3EC; M418DllUnkStruct3 lbl_1_bss_26C[4]; -M418DllUnkStruct5 lbl_1_bss_240; +s32 lbl_1_bss_240[11]; M418DllUnkStruct lbl_1_bss_1F4; M418DllUnkStruct2 lbl_1_bss_1E0; M418DllUnkStruct4 lbl_1_bss_170[4]; @@ -91,6 +89,11 @@ M418DllUnkStruct4 lbl_1_bss_11C[3]; M418DllWorkStruct lbl_1_bss_68; M418DllUnkStruct7 lbl_1_bss_50; M418DllUnkStruct7 lbl_1_bss_38; +M418DllUnkStruct7 lbl_1_bss_20; +s32 lbl_1_bss_1C; +u32 lbl_1_bss_18; +s32 lbl_1_bss_14; +s32 lbl_1_bss_10; s32 lbl_1_bss_8; s32 lbl_1_bss_4; Process* lbl_1_bss_0; @@ -199,7 +202,7 @@ void fn_1_748(void) { } } -void fn_1_780(void) { +void fn_1_780(omObjData* object) { switch (lbl_1_bss_8) { case 1: if (lbl_1_data_8 == -1) { @@ -332,13 +335,13 @@ void fn_1_E74(omObjData* object) { fn_1_ABC4(object, 3, 3, 0, 0); fn_1_ABC4(object, 4, 4, 0, 1); object->work[1] = 2; - lbl_1_bss_240.unk14 = HuAudFXPlay(0x5D6); + lbl_1_bss_240[5] = HuAudFXPlay(0x5D6); } else if (object->work[1] == 2) { if (Hu3DMotionEndCheck(object->model[3]) != 0) { object->work[1] = 3; object->work[2] = 0; temp_r30->unkC = 1; - HuAudFXFadeOut(lbl_1_bss_240.unk14, 0x3E8); + HuAudFXFadeOut(lbl_1_bss_240[5], 0x3E8); } } else if (object->work[1] == 3) { temp_r29 = &lbl_1_bss_170[object->work[0]]; @@ -760,7 +763,7 @@ void fn_1_3138(void) { } } -const char* lbl_1_data_1C0[8] = { +char* lbl_1_data_1C0[8] = { "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r", @@ -1153,7 +1156,7 @@ void fn_1_4F60(omObjData* object) { object->motion[13] = Hu3DMotionIDGet(object->model[13]); fn_1_ABC4(object, 0xD, 0xD, 0, 2); } - *lbl_1_data_1E0[object->work[0]] = -1; + lbl_1_data_1E0[object->work[0]][0] = -1; CharModelMotionDataClose(temp_r30->unk14); CharModelLayerSetAll2(7); object->func = fn_1_4C84; @@ -1276,7 +1279,7 @@ Vec lbl_1_data_240[3] = { { 180.0f, 225.0f, -900.0f }, }; -void fn_1_5970(void) { +void fn_1_5970(s32 arg0) { M418DllUnkStruct3* temp_r30; M418DllUnkStruct6* temp_r29; M418DllUnkStruct4* temp_r28; @@ -1366,14 +1369,14 @@ s32 fn_1_5A6C(s32 arg0) { return 0; } -M418DllUnkStruct8 lbl_1_data_294 = { - 0, 0, 0x5A, - 0, 0, 0xB4, - 0, 0, -1 +M418DllUnkStruct8 lbl_1_data_294[3] = { + { fn_1_5768, fn_1_57E4, 0x5A }, + { fn_1_5970, fn_1_5A6C, 0xB4 }, + { NULL, NULL, -1 } }; void fn_1_5D28(void) { - fn_1_AEDC(&lbl_1_bss_50, &lbl_1_data_294); + fn_1_AEDC(&lbl_1_bss_50, (M418DllUnkStruct8**)&lbl_1_data_294); } s32 fn_1_5D58(void) { @@ -1684,14 +1687,14 @@ void fn_1_6DCC(s32 arg0) { fn_1_6740(2); } -s32 fn_1_6E6C(void) { +s32 fn_1_6E6C(s32 arg0) { if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { return fn_1_AF38(&lbl_1_bss_38); } return 0; } -void fn_1_6EB4(void) { +void fn_1_6EB4(s32 arg0) { M418DllUnkStruct6* var_r31 = &lbl_1_bss_3EC; s32 var_r30; M418DllUnkStruct3* temp_r29; @@ -1707,7 +1710,7 @@ void fn_1_6EB4(void) { } } -s32 fn_1_6F38(void) { +s32 fn_1_6F38(s32 arg0) { M418DllUnkStruct3* temp_r31; M418DllUnkStruct2* temp_r29; M418DllUnkStruct6* temp_r28; @@ -1769,9 +1772,9 @@ s32 fn_1_6F38(void) { } } -void fn_1_7294(void) {} +void fn_1_7294(s32 arg0) {} -s32 fn_1_7298(void) { +s32 fn_1_7298(s32 arg0) { M418DllUnkStruct3* temp_r31; M418DllUnkStruct4* temp_r30; M418DllUnkStruct6* temp_r29; @@ -1798,7 +1801,7 @@ s32 fn_1_7298(void) { fn_1_AD14(temp_r31->unk0, 0, 0, 0xA, 1); Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[9]); Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 1.0f); - lbl_1_bss_240.unk20 = HuAudFXPlay(0x5D9); + lbl_1_bss_240[8] = HuAudFXPlay(0x5D9); } else if (fn_1_B0C8(&lbl_1_bss_38, 0) <= 0xAA) { if (fn_1_B0C8(&lbl_1_bss_38, 0) >= 0x5A) { temp_r31->unk3C += 0.025f; @@ -1816,7 +1819,7 @@ s32 fn_1_7298(void) { } } -void fn_1_7570(void) { +void fn_1_7570(s32 arg0) { M418DllUnkStruct6* var_r31 = &lbl_1_bss_3EC; M418DllUnkStruct3* var_r30 = &lbl_1_bss_26C[var_r31->unk0]; var_r30->unk4C = -1; @@ -1826,7 +1829,7 @@ void fn_1_7570(void) { } } -s32 fn_1_75E4(void) { +s32 fn_1_75E4(s32 arg0) { Mtx sp38; Mtx sp8; M418DllUnkStruct3* temp_r31; @@ -1863,18 +1866,18 @@ s32 fn_1_75E4(void) { } } -void fn_1_77F8(void) { +void fn_1_77F8(s32 arg0) { M418DllUnkStruct6* var_r31; M418DllUnkStruct3* var_r30; var_r31 = &lbl_1_bss_3EC; var_r30 = &lbl_1_bss_26C[var_r31->unk0]; if (var_r30->unk4C == -1) { - HuAudFXFadeOut(lbl_1_bss_240.unk20, 0x3E8); + HuAudFXFadeOut(lbl_1_bss_240[8], 0x3E8); } } -s32 fn_1_7860(void) { +s32 fn_1_7860(s32 arg0) { M418DllUnkStruct3* temp_r31; M418DllUnkStruct6* temp_r30; @@ -1980,7 +1983,7 @@ s32 fn_1_7B68(s32 arg0) { return 0; } -void fn_1_7D80(void) { +void fn_1_7D80(s32 arg0) { s32 var_r31; M418DllUnkStruct3* temp_r30; M418DllUnkStruct6* temp_r29; @@ -2032,7 +2035,7 @@ s32 fn_1_7E24(s32 arg0) { } } -void fn_1_7F1C(void) { +void fn_1_7F1C(s32 arg0) { M418DllUnkStruct6* var_r31; M418DllUnkStruct4* var_r30; M418DllUnkStruct4* var_r29; @@ -2088,3 +2091,706 @@ s32 fn_1_7FD4(s32 arg0) { fn_1_B0C8(&lbl_1_bss_38, 1); return 0; } + +void fn_1_81A0(s32 arg0) {} + +s32 fn_1_81A4(s32 arg0) { + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct4* temp_r30; + M418DllUnkStruct6* temp_r29; + + temp_r29 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[temp_r29->unk0]; + temp_r30 = &lbl_1_bss_11C[temp_r29->unk38]; + if (fn_1_B0C8(&lbl_1_bss_38, 0) < 0x3C) { + if (((temp_r30->unk0->work[0] == 0) || (temp_r30->unk0->work[1] == 0x18)) && (temp_r30->unk0->rot.y > -50.0f)) { + temp_r30->unk0->rot.y -= 5.0f; + if (temp_r30->unk0->rot.y <= -50.0f) { + temp_r30->unk0->rot.y = -50.0f; + } + } + if (temp_r31->unk0->rot.y < 180.0f) { + temp_r31->unk0->rot.y += 5.0f; + if (temp_r30->unk0->rot.y <= -50.0f) { + temp_r30->unk0->rot.y = -50.0f; + } + } + } else if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0x3C) { + HuAudFXPlay(0x40); + fn_1_ABC4(temp_r30->unk0, 0, 2, 0xA, 0); + fn_1_AD14(temp_r31->unk0, 0, 0, 0xA, 1); + Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[9]); + Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 1.0f); + lbl_1_bss_240[8] = HuAudFXPlay(0x5D9); + } else if (fn_1_B0C8(&lbl_1_bss_38, 0) <= 0xAA) { + if (fn_1_B0C8(&lbl_1_bss_38, 0) >= 0x5A) { + temp_r31->unk3C += 0.025f; + if (temp_r31->unk3C >= 1.0f) { + temp_r31->unk3C = 1.0f; + } + } + } else { + Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], -1.0f); + } + if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { + return fn_1_B034(&lbl_1_bss_38, 4); + } else { + return 0; + } +} + +M418DllUnkStruct8 lbl_1_data_348[11] = { + { fn_1_6808, fn_1_6914, 300 }, + { fn_1_6DCC, fn_1_6E6C, 60 }, + { fn_1_6EB4, fn_1_6F38, 180 }, + { fn_1_7294, fn_1_7298, 300 }, + { fn_1_7570, fn_1_75E4, 300 }, + { fn_1_77F8, fn_1_7860, 60 }, + { fn_1_7A68, fn_1_7B68, 180 }, + { fn_1_7D80, fn_1_7E24, -1 }, + { fn_1_7F1C, fn_1_7FD4, 300 }, + { fn_1_81A0, fn_1_81A4, 240 }, + { NULL, NULL, -1 } +}; + +void fn_1_8480(void) { + fn_1_AEDC(&lbl_1_bss_38, (M418DllUnkStruct8**)&lbl_1_data_348); +} + +s32 fn_1_84B0(void) { + s32 var_r31; + + var_r31 = 0; + if (lbl_1_bss_38.unk10 != NULL) { + lbl_1_bss_38.unk10(); + lbl_1_bss_38.unk10 = NULL; + } + if (lbl_1_bss_38.unk14 != NULL) { + var_r31 = lbl_1_bss_38.unk14(); + } + return var_r31; +} + +void fn_1_8548(void) { + M418DllUnkStruct sp38; + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; + Vec sp20 = { 0.0f, 600.0f, 600.0f }; + + fn_1_B104(&sp38, sp2C, sp20); + fn_1_B41C(&sp38); + sp38.rot.x++; + fn_1_CBF8(var_r31, &sp38, var_r31->unk48++, 60.0f, 10.0f); +} + +void fn_1_8668(void) { + M418DllUnkStruct sp8; + f32 temp_f1; + + M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + + sp8.center.x = sp8.center.y = 0.0f; + sp8.center.z = -500.0f; + sp8.rot.x = -20.0f; + sp8.rot.y = sp8.rot.z = 0.0f; + sp8.zoom = 1000.0f; + fn_1_CBF8(var_r31, &sp8, var_r31->unk48++, 10.0f, 5.0f); +} + +void fn_1_8728(void) { + M418DllUnkStruct sp8; + M418DllUnkStruct* var_r31; + + var_r31 = &lbl_1_bss_1F4; + + sp8.center.x = var_r31->center.x; + sp8.center.y = var_r31->center.y; + sp8.center.z = var_r31->center.z; + sp8.rot.x = var_r31->rot.x; + sp8.rot.y = var_r31->rot.y; + sp8.rot.z = var_r31->rot.z; + sp8.zoom = 500.0f; + fn_1_CBF8(var_r31, &sp8, var_r31->unk48++, 10.0f, 5.0f); +} + +void fn_1_87D0(s32 arg0) { + M418DllUnkStruct* var_r31; + + var_r31 = &lbl_1_bss_1F4; + + fn_1_B458(var_r31); + switch (arg0) { + case 0: + fn_1_248(fn_1_8548); + break; + case 1: + fn_1_248(fn_1_8668); + break; + case 2: + fn_1_248(fn_1_8728); + break; + } +} + +void fn_1_888C(s32 arg0) { + HuAudAUXVolSet(-1, -1); +} + +s32 fn_1_88B4(s32 arg0) { + s32 var_r31; + M418DllUnkStruct6* var_r30; + s32 var_r29; + M418DllUnkStruct3* var_r28; + M418DllUnkStruct3* var_r27; + M418DllUnkStruct* var_r23; + + var_r29 = 5; + var_r30 = &lbl_1_bss_3EC; + + fn_1_87D0(0); + lbl_1_bss_10 = 0; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r28 = &lbl_1_bss_26C[var_r30->unk4[var_r31]]; + if (var_r28->unk4C != -1) { + var_r29 = 1; + lbl_1_bss_10 = 1; + } + } + if (var_r29 == 5) { + var_r27 = &lbl_1_bss_26C[var_r30->unk0]; + var_r27->unk0->rot.y = 0.0f; + } + fn_1_B034(&lbl_1_bss_20, var_r29); +} + +void fn_1_89B0(s32 arg0) { + M418DllUnkStruct6* var_r31; + s32 var_r30; + s32 var_r29; + M418DllUnkStruct3* temp_r28; + M418DllUnkStruct4* temp_r27; + + var_r29 = 0; + var_r31 = &lbl_1_bss_3EC; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r28 = &lbl_1_bss_26C[var_r31->unk4[var_r30]]; + if (temp_r28->unk4C != -1) { + var_r31->unk1C[var_r29] = var_r31->unk28[var_r29] = temp_r28->unk4C; + var_r29++; + } + } + switch (var_r29) { /* irregular */ + case 1: + var_r31->unk1C[0] = 3; + break; + case 2: + var_r31->unk1C[0] = 4; + var_r31->unk1C[1] = 5; + break; + case 3: + var_r31->unk1C[0] = 0; + var_r31->unk1C[1] = 1; + var_r31->unk1C[2] = 2; + break; + } + if (var_r31->unk28[0] == var_r31->unk28[1]) { + var_r31->unk28[1] = -1; + } + if (var_r31->unk28[0] == var_r31->unk28[1]) { + var_r31->unk28[1] = -1; + } + if (var_r31->unk28[1] == var_r31->unk28[2]) { + var_r31->unk28[2] = -1; + } + + for (var_r30 = 0; var_r30 < 4; var_r30++) { + temp_r27 = &lbl_1_bss_170[var_r30]; + temp_r27->unkC = 0; + } +} + +s32 fn_1_8B14(s32 arg0) { + M418DllUnkStruct4* temp_r31; + s32 var_r30; + M418DllUnkStruct6* var_r29; + s32 var_r28; + + var_r29 = &lbl_1_bss_3EC; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + if (var_r29->unk28[var_r30] != -1) { + temp_r31 = &lbl_1_bss_170[var_r29->unk28[var_r30]]; + if (temp_r31->unkC == 0) { + if ((rand8() % 5) == 0) { + var_r28 = 1; + } else { + var_r28 = 0; + } + if ((var_r28 != 0) || (fn_1_B0C8(&lbl_1_bss_20, 0) >= 5)) { + temp_r31->unkC = 1; + HuAudFXPlay(0x5D3); + } + } else { + temp_r31->unk4 += 5.0f; + if (temp_r31->unk4 >= 90.0f) { + temp_r31->unk4 = 90.0f; + } + } + } + } + if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_20); + } else { + return 0; + } +} + +void fn_1_8C84(s32 arg0) { + M418DllUnkStruct3* temp_r31; + s32 var_r30; + M418DllUnkStruct6* temp_r29; + M418DllUnkStruct3* temp_r28; + s32 var_r27; + s32 temp_r0; + + var_r27 = 0; + temp_r29 = &lbl_1_bss_3EC; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r31 = &lbl_1_bss_26C[temp_r29->unk4[var_r30]]; + if (temp_r31->unk4C != -1) { + omSetRot(temp_r31->unk0, 0.0f, 0.0f, 0.0f); + temp_r31->unk50 = var_r27 * -10; + temp_r31->unk54 = 0; + temp_r31->unk58 = var_r27++; + } + } + temp_r28 = &lbl_1_bss_26C[temp_r29->unk0]; + Hu3DMotionOverlayReset(*temp_r28->unk0->model); + temp_r28->unk0->work[1] = 1; +} + +Vec lbl_1_data_3CC[4] = { + { -540.0f, 225.0f, -900.0f }, + { -180.0f, 225.0f, -900.0f }, + { 180.0f, 225.0f, -900.0f }, + { 540.0f, 225.0f, -900.0f } +}; + +Vec lbl_1_data_3FC[6] = { + { -200.0f, 0.0f, -450.0f }, + { 0.0f, 0.0f, -400.0f }, + { 200.0f, 0.0f, -450.0f }, + { 0.0f, 0.0f, -400.0f }, + { -100.0f, 0.0f, -425.0f }, + { 100.0f, 0.0f, -425.0f } +}; + +s32 fn_1_8D70(s32 arg0) { + s32 sp10; + s32 spC; + s32 sp8; + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct6* temp_r30; + s32 var_r29; + M418DllUnkStruct3* temp_r28; + M418DllUnkStruct3* temp_r27; + omObjData* var_r26; + s32 temp_r3; + void* temp_r4; + + temp_r30 = &lbl_1_bss_3EC; + + for (var_r29 = 0; var_r29 < 3; var_r29++) { + temp_r31 = &lbl_1_bss_26C[temp_r30->unk4[var_r29]]; + if (temp_r31->unk4C != -1) { + if (temp_r31->unk54 == 0) { + if (temp_r31->unk50++ == 0) { + temp_r31->unk54 = 1; + omSetTra(temp_r31->unk0, lbl_1_data_3CC[temp_r31->unk4C].x, lbl_1_data_3CC[temp_r31->unk4C].y, lbl_1_data_3CC[temp_r31->unk4C].z - 50.0f); + var_r26 = temp_r31->unk0; + temp_r28 = &lbl_1_bss_26C[var_r26->work[0]]; + if (temp_r28->unk1C == 0) { + temp_r28->unk1C = 1; + } + } + } else if (temp_r31->unk54 == 1) { + fn_1_3EB0(temp_r31->unk0, lbl_1_data_3FC[temp_r30->unk1C[temp_r31->unk58]], 0.0f, 12.0f); + } + } + } + temp_r27 = &lbl_1_bss_26C[temp_r30->unk0]; + if (fn_1_B0C8(&lbl_1_bss_20, 0) == 0x1E) { + fn_1_ABC4(temp_r27->unk0, 0, 0, 0xA, 1); + } + if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_20); + } else { + return 0; + } +} + +void fn_1_8F74(s32 arg0) { + s32 sp8[3]; + M418DllUnkStruct3* temp_r31; + s32 var_r30; + M418DllUnkStruct6* var_r29; + M418DllUnkStruct3* temp_r28; + + var_r29 = &lbl_1_bss_3EC; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r31 = &lbl_1_bss_26C[var_r29->unk4[var_r30]]; + if (temp_r31->unk4C != -1) { + fn_1_ABC4(temp_r31->unk0, 0, 5, 10, 0); + } + sp8[var_r30] = temp_r31->unk14; + } + temp_r28 = &lbl_1_bss_26C[var_r29->unk0]; + fn_1_ABC4(temp_r28->unk0, 0, 6, 10, 0); + fn_1_87D0(1); + lbl_1_bss_14 = MGSeqCreate(5, 3, sp8[0], sp8[1], sp8[2], -1); + HuAudSStreamPlay(1); +} + +s32 fn_1_9094(s32 arg0) { + if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_20); + } else { + return 0; + } +} + +void fn_1_90DC(s32 arg0) { + M418DllUnkStruct3* temp_r31; + M418DllUnkStruct6* temp_r30; + + temp_r30 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[temp_r30->unk0]; + Hu3DMotionOverlayReset(temp_r31->unk0->model[0]); + temp_r31->unk0->work[1] = 1; +} + +s32 fn_1_9140(s32 arg0) { + M418DllUnkStruct6* temp_r31; + M418DllUnkStruct3* temp_r30; + + temp_r31 = &lbl_1_bss_3EC; + + temp_r30 = &lbl_1_bss_26C[temp_r31->unk0]; + if (fn_1_B0C8(&lbl_1_bss_20, 0) == 0x1E) { + fn_1_ABC4(temp_r30->unk0, 0, 0, 0xA, 1); + } + if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_20); + } else { + return 0; + } +} + +void fn_1_91E4(s32 arg0) { + M418DllUnkStruct3* temp_r31; + s32 var_r30; + M418DllUnkStruct6* temp_r29; + M418DllUnkStruct4* temp_r28; + + temp_r29 = &lbl_1_bss_3EC; + temp_r31 = &lbl_1_bss_26C[temp_r29->unk0]; + Hu3DMotionOverlayReset(temp_r31->unk0->model[0]); + fn_1_ABC4(temp_r31->unk0, 0, 5, 10, 0); + + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r28 = &lbl_1_bss_11C[var_r30]; + fn_1_ABC4(temp_r28->unk0, 0, 3, 10, 1); + } + fn_1_87D0(2); + lbl_1_bss_14 = MGSeqCreate(5, 3, temp_r31->unk14, -1, -1, -1); + HuAudSStreamPlay(1); +} + +s32 fn_1_92EC(s32 arg0) { + if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { + return fn_1_AF38(&lbl_1_bss_20); + } else { + return 0; + } +} + +M418DllUnkStruct8 lbl_1_data_444[8] = { + { fn_1_888C, fn_1_88B4, -1 }, + { fn_1_89B0, fn_1_8B14, 90 }, + { fn_1_8C84, fn_1_8D70, 180 }, + { fn_1_8F74, fn_1_9094, 210 }, + { NULL, NULL, -1 }, + { fn_1_90DC, fn_1_9140, 180 }, + { fn_1_91E4, fn_1_92EC, 240 }, + { NULL, NULL, -1 } +}; + +void fn_1_9334(void) { + fn_1_AEDC(&lbl_1_bss_20, (M418DllUnkStruct8**)&lbl_1_data_444); +} + +s32 fn_1_9364(void) { + s32 var_r31; + + var_r31 = 0; + if (lbl_1_bss_20.unk10 != NULL) { + lbl_1_bss_20.unk10(); + lbl_1_bss_20.unk10 = NULL; + } + if (lbl_1_bss_20.unk14 != NULL) { + var_r31 = lbl_1_bss_20.unk14(); + } + return var_r31; +} + +void fn_1_93FC(omObjData* object) { + s32 var_r31; + M418DllUnkStruct6* var_r30; + M418DllUnkStruct3* var_r29; + M418DllUnkStruct3* var_r28; + s32 temp_r27; + s32 temp_r26; + + if (WipeStatGet() == 0) { + var_r30 = &lbl_1_bss_3EC; + if (lbl_1_bss_10 != 0) { + for (var_r31 = 0; var_r31 < 3; var_r31++) { + var_r29 = &lbl_1_bss_26C[var_r30->unk4[var_r31]]; + temp_r27 = var_r29->unk4; + if (_CheckFlag(0x1000C) == 0) { + GWPlayer[temp_r27].coin_win = 10; + } + } + } else { + var_r28 = &lbl_1_bss_26C[var_r30->unk0]; + temp_r26 = var_r28->unk4; + if (_CheckFlag(0x1000CU) == 0) { + GWPlayer[temp_r26].coin_win = 10; + } + } + HuAudFadeOut(0x3E8); + CharModelKill(-1); + MGSeqKillAll(); + HuAudAllStop(); + omOvlReturnEx(1, 1); + object->func = NULL; + } +} + +void fn_1_952C(omObjData* object) { + if (omSysExitReq == 1) { + HuAudSeqAllFadeOut(0xFA); + WipeCreate(2, 0, -1); + object->func = fn_1_93FC; + } +} + +void fn_1_958C(void) { + M418DllUnkStruct3* temp_r31; + s32 var_r30; + M418DllUnkStruct6* temp_r29; + M418DllUnkStruct2* temp_r28; + M418DllUnkStruct4* temp_r27; + M418DllUnkStruct4* temp_r26; + M418DllUnkStruct3* temp_r25; + s32 temp_r0; + s32 var_r24; + + var_r24 = 0; + temp_r28 = &lbl_1_bss_1E0; + for (var_r30 = 1; var_r30 < 4; var_r30++) { + fn_1_ABC4(temp_r28->unk0, var_r30, var_r30, 0, 2); + } + + for (var_r30 = 8; var_r30 < 11; var_r30++) { + fn_1_ABC4(temp_r28->unk0, var_r30, var_r30, 0, 1); + Hu3DModelPosSet(temp_r28->unk0->model[var_r30 + 8], -360.0f + (360.0f * (var_r30 - 8)), -200.0f, -660.0f); + Hu3DModelRotSet(temp_r28->unk0->model[var_r30], 0.0f, 0.0f, 20.0f); + } + + temp_r28->unk4[0] = temp_r28->unk4[1] = temp_r28->unk4[2] = temp_r28->unk4[3] = 0; + + for (var_r30 = 0; var_r30 < 4; var_r30++) { + temp_r27 = &lbl_1_bss_170[var_r30]; + temp_r27->unk0->work[1] = temp_r27->unk0->work[2] = 0; + temp_r27->unk4 = 0.0f; + temp_r27->unkC = temp_r27->unk10 = temp_r27->unk14s = temp_r27->unk18s = 0; + } + + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r26 = &lbl_1_bss_11C[var_r30]; + omSetTra(temp_r26->unk0, lbl_1_data_8C[var_r30].x, lbl_1_data_8C[var_r30].y, lbl_1_data_8C[var_r30].z); + omSetRot(temp_r26->unk0, 0.0f, 0.0f, 0.0f); + omSetSca(temp_r26->unk0, 1.0f, 1.0f, 1.0f); + fn_1_AD14(temp_r26->unk0, 0, 0, 10, 1); + temp_r26->unk0->work[1] = -1U; + } + + for (var_r30 = 0; var_r30 < 4; var_r30++) { + temp_r31 = &lbl_1_bss_26C[var_r30]; + if (temp_r31->unk8 != 0) { + omSetTra(temp_r31->unk0, 0.0f, -5000.0f, 0.0f); + } else { + omSetTra(temp_r31->unk0, 0.0f, 0.0f, 0.0f); + } + omSetRot(temp_r31->unk0, 0.0f, 0.0f, 0.0f); + omSetSca(temp_r31->unk0, 1.0f, 1.0f, 1.0f); + if (temp_r31->unk8 == 0) { + Hu3DModelAttrReset(temp_r31->unk0->model[11], 1); + Hu3DModelHookSet(temp_r31->unk0->model[0], lbl_1_data_1C0[temp_r31->unk14], temp_r31->unk0->model[11]); + Hu3DModelPosSet(temp_r31->unk0->model[11], 0.0f, 0.0f, 0.0f); + Hu3DModelRotSet(temp_r31->unk0->model[11], 0.0f, 0.0f, 0.0f); + Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[9]); + Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 0.0f); + } + fn_1_ABC4(temp_r31->unk0, 0, 0, 0, 1); + Hu3DModelShadowDispOn(temp_r31->unk0->model[0]); + temp_r31->unk4C = temp_r31->unk50 = temp_r31->unk54 = temp_r31->unk58 = temp_r31->unk5C = 0; + temp_r31->unk24 = -1; + temp_r31->unk28 = temp_r31->unk2C = temp_r31->unk30 = temp_r31->unk34 = temp_r31->unk38 = 0.0f; + } + + temp_r29 = &lbl_1_bss_3EC; + for (var_r30 = 0, var_r24 = 0; var_r30 < 4; var_r30++) { + temp_r25 = &lbl_1_bss_26C[var_r30]; + if (temp_r25->unk8 != 0) { + temp_r29->unk4[var_r24++] = temp_r25->unk4; + } else { + temp_r29->unk0 = temp_r25->unk4; + } + } + + for (var_r30 = 0; var_r30 < 3; var_r30++) { + temp_r29->unk1C[var_r30] = temp_r29->unk28[var_r30] = -1; + temp_r29->unk10[var_r30] = -1; + } + + temp_r29->unk34 = temp_r29->unk38 = temp_r29->unk3C = temp_r29->unk40 = 0; + fn_1_5D28(); + fn_1_8480(); + fn_1_9334(); + + for (var_r30 = 0; var_r30 < 10; var_r30++) { + lbl_1_bss_240[var_r30] = -1; + } + lbl_1_bss_240[6] = HuAudFXPlay(0x5D7); + lbl_1_bss_240[7] = HuAudFXPlay(0x5D8); +} + +void fn_1_9BA4(omObjData* object) { + switch (lbl_1_bss_18) { + case 0: + fn_1_958C(); + lbl_1_bss_18 = 1; + break; + case 1: + if (WipeStatGet() == 0) { + lbl_1_bss_18 = 2; + } + break; + case 2: + if (fn_1_5D58()) { + lbl_1_bss_18 = 3; + } + break; + case 3: + lbl_1_bss_1C = MGSeqCreate(3, 0); + lbl_1_bss_18 = 4; + lbl_1_data_0[1] = -1; + break; + case 4: + if (((MGSeqStatGet(lbl_1_bss_1C) & 0x10) != 0) && (lbl_1_data_0[1] == -1)) { + lbl_1_data_0[1] = HuAudSeqPlay(0x49); + } + if (MGSeqStatGet(lbl_1_bss_1C) == 0) { + lbl_1_bss_18 = 5; + } + break; + case 5: + if (fn_1_84B0()) { + lbl_1_bss_18 = 6; + } + break; + case 6: + lbl_1_bss_1C = MGSeqCreate(3, 1); + HuAudSeqPauseAll(0); + HuAudSeqAllFadeOut(0x64); + lbl_1_bss_18 = 7; + break; + case 7: + if (MGSeqStatGet(lbl_1_bss_1C) == 0) { + lbl_1_bss_18 = 8; + } + break; + case 8: + if (fn_1_9364()) { + lbl_1_bss_18 = 9; + } + break; + case 9: + WipeCreate(2, 0, -1); + object->func = fn_1_93FC; + break; + default: + lbl_1_bss_18 = 0; + break; + } + if (omSysExitReq == 1) { + HuAudSeqAllFadeOut(0xFA); + WipeCreate(2, 0, -1); + object->func = fn_1_93FC; + } +} + +void fn_1_9F94(omObjData* object) { + s32 var_r31; + M418DllUnkStruct4* temp_r30; + M418DllUnkStruct4* temp_r29; + M418DllUnkStruct3* temp_r28; + M418DllUnkStruct2* temp_r27; + M418DllWorkStruct* temp_r26; + + temp_r27 = &lbl_1_bss_1E0; + temp_r27->unk0 = omAddObjEx(lbl_1_bss_0, 0x100, 0x14U, 0x14U, -1, fn_1_B4C); + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + temp_r30 = &lbl_1_bss_170[var_r31]; + temp_r30->unk0 = omAddObjEx(lbl_1_bss_0, 0x200, 0x14U, 0x14U, -1, fn_1_14F0); + temp_r30->unk0->work[0] = var_r31; + } + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + temp_r29 = &lbl_1_bss_11C[var_r31]; + temp_r29->unk0 = omAddObjEx(lbl_1_bss_0, 0x300, 0x14U, 0x14U, -1, fn_1_29A0); + temp_r29->unk0->work[0] = var_r31; + } + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + temp_r28 = &lbl_1_bss_26C[var_r31]; + temp_r28->unk0 = omAddObjEx(lbl_1_bss_0, 0x400, 0x14U, 0x14U, -1, fn_1_4F60); + temp_r28->unk0->work[0] = var_r31; + } + + temp_r26 = &lbl_1_bss_68; + temp_r26->unk0 = omAddObjEx(lbl_1_bss_0, 0x500, 0xBU, 0xBU, -1, fn_1_3054); + WipeCreate(1, 0, -1); + object->func = fn_1_9BA4; +} + +#include "src/REL/executor.c" + +void fn_1_A1F0(void) { + lbl_1_bss_0 = omInitObjMan(0x3E, 0x2000); + omGameSysInit(lbl_1_bss_0); + HuAudAUXVolSet(-1, -1); + fn_1_0(); + fn_1_500(); + fn_1_618(); + fn_1_3138(); + omAddObjEx(lbl_1_bss_0, 0x1000, 0U, 0U, -1, fn_1_9F94); + omAddObjEx(lbl_1_bss_0, 0x2000, 0U, 0U, -1, fn_1_780); +} + +void ObjectSetup(void) { + fn_1_A1F0(); +} From 0382d2e342ad3dbb1dc5da9cdc07c671c7574bf8 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Fri, 22 Nov 2024 23:51:37 -0500 Subject: [PATCH 034/178] remove download_tool.py edit --- tools/download_tool.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tools/download_tool.py b/tools/download_tool.py index 09b002a5..f4512d01 100644 --- a/tools/download_tool.py +++ b/tools/download_tool.py @@ -20,8 +20,6 @@ import urllib.request import zipfile from typing import Callable, Dict from pathlib import Path -import certifi -import ssl def binutils_url(tag): @@ -106,7 +104,7 @@ def main() -> None: print(f"Downloading {url} to {output}") req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"}) - with urllib.request.urlopen(req, context=ssl.create_default_context(cafile=certifi.where())) as response: + with urllib.request.urlopen(req) as response: if url.endswith(".zip"): data = io.BytesIO(response.read()) with zipfile.ZipFile(data) as f: From f5e953cd617c140e9ccdf4b58926d50a0153d0f8 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 25 Nov 2024 12:47:58 +0100 Subject: [PATCH 035/178] Finished m421Dll --- config/GMPE01_00/rels/m421Dll/symbols.txt | 312 ++-- configure.py | 6 +- include/REL/m421Dll.h | 26 +- src/REL/m421Dll/main.c | 398 ++++- src/REL/m421Dll/map.c | 54 + src/REL/m421Dll/player.c | 1828 +++++++++++++++++++++ 6 files changed, 2424 insertions(+), 200 deletions(-) create mode 100644 src/REL/m421Dll/map.c create mode 100644 src/REL/m421Dll/player.c diff --git a/config/GMPE01_00/rels/m421Dll/symbols.txt b/config/GMPE01_00/rels/m421Dll/symbols.txt index 4afd037f..b2817421 100644 --- a/config/GMPE01_00/rels/m421Dll/symbols.txt +++ b/config/GMPE01_00/rels/m421Dll/symbols.txt @@ -79,157 +79,157 @@ fn_1_B398 = .text:0x0000B398; // type:function size:0x4 fn_1_B39C = .text:0x0000B39C; // type:function size:0x40 _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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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:0x8 data:double -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:4byte -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x50 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x14 data:4byte -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_124 = .rodata:0x00000124; // type:object size:0x10 data:4byte -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:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x10 data:4byte -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 data:4byte -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x30 data:4byte -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x30 data:4byte -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // 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_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0xC scope:local data:float +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:4byte +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x50 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x14 scope:local data:4byte +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_124 = .rodata:0x00000124; // type:object size:0x10 scope:local data:4byte +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:0x8 scope:local data:double +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:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x10 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 scope:local data:float +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x30 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x30 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // 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_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // 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:0xC data:float @@ -237,13 +237,13 @@ lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 data:float +lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 data:float lbl_1_data_94 = .data:0x00000094; // type:object size:0xC lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x4 data:byte -lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x1A data:string -lbl_1_data_BE = .data:0x000000BE; // type:object size:0x19 data:string -lbl_1_data_D8 = .data:0x000000D8; // type:object size:0xB data:string +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x1A scope:local data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0x19 scope:local data:string +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0xB scope:local data:string lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x20 lbl_1_data_104 = .data:0x00000104; // type:object size:0x60 lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 diff --git a/configure.py b/configure.py index 3ed51f0e..ca011b7c 100644 --- a/configure.py +++ b/configure.py @@ -1005,9 +1005,9 @@ config.libs = [ Rel( "m421Dll", # Hop or Pop objects={ - Object(NonMatching, "REL/m421Dll/main.c"), - Object(NonMatching, "REL/m421Dll/player.c"), - Object(NonMatching, "REL/m421Dll/map.c"), + Object(Matching, "REL/m421Dll/main.c"), + Object(Matching, "REL/m421Dll/player.c"), + Object(Matching, "REL/m421Dll/map.c"), }, ), Rel( diff --git a/include/REL/m421Dll.h b/include/REL/m421Dll.h index 04e08da4..9f2ff4a9 100644 --- a/include/REL/m421Dll.h +++ b/include/REL/m421Dll.h @@ -25,18 +25,38 @@ typedef struct M421DllCameraStruct { s32 unk_3C; float unk_40; UnkM421DllStruct unk_44; - char unk54[0x30]; + float unk_54; + float unk_58; + float unk_5C; + float unk_60; + float unk_64; + float unk_68; + char unk6C[0x18]; float unk_84; char unk88[0x4]; float unk_8C; float unk_90; - s32 unk_94; + u32 unk_94; char unk98[0xC]; } M421DllCameraStruct; /* size = 0xA4 */ // same as M443DllCameraStruct and M460 +M421DllCameraStruct *fn_1_3C14(s32 arg0); +u32 fn_1_3E34(void); +u32 fn_1_3E4C(void); +u32 fn_1_3E64(void); +s32 fn_1_3E7C(s32 arg0); +s32 fn_1_3EF8(s32 arg0); +void fn_1_3F28(s32 arg0, s32 arg1, s32 arg2); +void fn_1_3F68(s32 arg0); +void fn_1_3F98(s32 arg0); +void fn_1_3FC8(s32 arg0); +s32 fn_1_3FF8(void); +float fn_1_4478(float arg8, float arg9, float argA); + void fn_1_4648(Process *process); void fn_1_48B0(void); -void fn_1_B15C(Process *process, omObjData *object); +void fn_1_B15C(Process *process); void fn_1_B1BC(void); +void fn_1_B39C(void); #endif diff --git a/src/REL/m421Dll/main.c b/src/REL/m421Dll/main.c index d958eb05..24d109e2 100644 --- a/src/REL/m421Dll/main.c +++ b/src/REL/m421Dll/main.c @@ -1,5 +1,3 @@ -#include "dolphin/gx/GXEnum.h" -#include "dolphin/gx/GXVert.h" #include "ext_math.h" #include "game/audio.h" #include "game/gamework.h" @@ -22,27 +20,24 @@ typedef struct M421DllWork { u32 unk_00; s32 unk_04; s32 unk_08; - u32 unk0C; + u32 unk_0C; s32 unk_10; u32 unk_14; u32 unk_18; u32 unk_1C; u32 unk_20; u32 unk24; - s32 unk28; + u32 unk_28; u32 unk_2C; - s32 unk30; - char unk34[0x4]; - u32 unk38; - s32 unk3C; - s32 unk40; - s32 unk44; - s32 unk48; - s32 unk4C; - u32 unk50; - s32 unk54[4]; - s32 unk64[4]; -} M421DllWork; /* size = 0x74 */ // TODO check the fields, they are copy pasted + s32 unk_30[4]; + s32 unk_40[4]; + s32 unk_50[4]; + u32 unk_60; + u32 unk_64; + u32 unk_68; + u32 unk_6C; + s32 unk_70; +} M421DllWork; /* size = 0x74 */ void fn_1_10EC(omObjData *object); void fn_1_142C(omObjData *object); @@ -66,6 +61,24 @@ void fn_1_784(omObjData *object); void fn_1_8B8(omObjData *object); void fn_1_CBC(omObjData *object); +Vec lbl_1_data_0 = { 100.0f, 800.0f, -100.0f }; +Vec lbl_1_data_C = { 0.3f, -0.8f, 0.3f }; +Vec lbl_1_data_18 = { 10.0f, 45.0f, 3500.0f }; +GXColor lbl_1_data_24 = { 0xFF, 0xFF, 0xFF, 0xFF }; +Vec lbl_1_data_28 = { 50.0f, 150000.0f, 50.0f }; +Vec lbl_1_data_34 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_40 = { 0.0f, 0.0f, 0.0f }; +Vec lbl_1_data_4C[3] = { + { 0.0f, 200.0f, -50.0f }, + { 0.0f, 200.0f, -50.0f }, + { 0.0f, 200.0f, -50.0f }, +}; +Vec lbl_1_data_70[3] = { + { -37.5f, 0.0f, 1500.0f }, + { -37.5f, 0.0f, 1500.0f }, + { -37.5f, 0.0f, 2300.0f }, +}; +s32 lbl_1_data_94[3] = { 0xF0, 0x1E, 0 }; GXColor lbl_1_data_A0 = { 0, 0, 0, 0 }; Process *lbl_1_bss_28; @@ -74,7 +87,7 @@ omObjData *lbl_1_bss_20; // M421DllCameraStruct omObjData *lbl_1_bss_1C; s16 lbl_1_bss_18; -s16 lbl_1_bss_12; +s16 lbl_1_bss_12[3]; s16 lbl_1_bss_10; s16 lbl_1_bss_E; s16 lbl_1_bss_C; @@ -82,21 +95,92 @@ s32 lbl_1_bss_8; s32 lbl_1_bss_4; s32 lbl_1_bss_0; -void fn_1_578(omObjData *var_r29) +void ObjectSetup(void) +{ + Mtx sp2C; + Vec sp20 = { 0.0f, 0.0f, 0.0f }; + Vec sp14 = { 0.0f, 0.0f, -1.0f }; + Vec sp8; + Process *process; + LightData *lightData; + + lbl_1_bss_8 = 0; + HuAudSndGrpSet(0x2E); + HuAudFXListnerSetEX(&sp20, &sp14, 11200.0f, 4166.6665f, 0.0f, 300.0f, 0.0f); + lbl_1_bss_4 = lbl_1_bss_0 = -1; + lbl_1_bss_18 = -1; + lbl_1_data_28.x = 200.0f; + lbl_1_data_28.y = 1200.0f; + lbl_1_data_28.z = 160.0f; + lbl_1_data_34.x = 0.0f; + lbl_1_data_34.y = 1.0f; + lbl_1_data_34.z = 0.0f; + lbl_1_data_40.x = 0.0f; + lbl_1_data_40.y = 0.0f; + lbl_1_data_40.z = 0.0f; + Hu3DShadowCreate(22.0f, 20.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); + lbl_1_bss_12[0] = Hu3DGLightCreateV(&lbl_1_data_0, &lbl_1_data_C, &lbl_1_data_24); + Hu3DGLightInfinitytSet(lbl_1_bss_12[0]); + lightData = &Hu3DGlobalLight[lbl_1_bss_12[0]]; + lightData->unk_00 |= 0x8000; + lbl_1_data_18.x = 1.0f; + lbl_1_data_18.y = 0.0f; + lbl_1_data_18.z = 4200.0f; + sp8.x = sp8.z = 0.0f; + sp8.y = lbl_1_data_18.z; + mtxRot(sp2C, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); + PSMTXMultVec(sp2C, &sp8, &lbl_1_data_28); + Hu3DGLightPosAimSetV(lbl_1_bss_12[0], &lbl_1_data_28, &lbl_1_data_40); + Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); + lbl_1_bss_10 = lbl_1_bss_E = lbl_1_bss_C = -1; + process = omInitObjMan(0x32, 0x2000); + lbl_1_bss_28 = process; + omGameSysInit(process); + fn_1_3020(process); + lbl_1_bss_24 = omAddObjEx(process, 0xA, 0, 0, -1, fn_1_4A0); + fn_1_B15C(process); + fn_1_4648(process); +} + +void fn_1_4A0(omObjData *object) +{ + M421DllWork *work; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M421DllWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M421DllWork)); + work->unk_00 = 0; + work->unk_04 = 0; + work->unk_0C = 0; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0; + work->unk_28 = 0; + work->unk_2C = 0; + work->unk_08 = 0; + work->unk_64 = 2; + work->unk_50[0] = work->unk_50[1] = work->unk_50[2] = work->unk_50[3] = -1; + work->unk_68 = 0; + work->unk_70 = 0; + object->func = fn_1_8B8; +} + +void fn_1_578(omObjData *object) { Vec sp14; Vec sp8; M421DllCameraStruct *var_r31; - M421DllWork *var_r30; - var_r30 = var_r29->data; - var_r30->unk_04++; - var_r30->unk_10++; - var_r30->unk_18++; - var_r30->unk_2C++; - if ((omSysExitReq != 0) && (var_r30->unk_00 != 5)) { - var_r30->unk_00 = 4; - fn_1_784(var_r29); + M421DllWork *work = object->data; + work->unk_04++; + work->unk_10++; + work->unk_18++; + work->unk_2C++; + if ((omSysExitReq != 0) && (work->unk_00 != 5)) { + work->unk_00 = 4; + fn_1_784(object); } var_r31 = fn_1_3B78(1); sp8.x = -(sind(var_r31->unk_28.y) * cosd(var_r31->unk_28.x)); @@ -182,7 +266,7 @@ void fn_1_142C(omObjData *object) case 0: work->unk_1C = 0x2D; work->unk_20 = 0x3C; - lbl_1_bss_18 = MGSeqCreate(3, 0); + lbl_1_bss_10 = MGSeqCreate(3, 0); MGSeqPosSet(lbl_1_bss_10, 320.0f, 240.0f); lbl_1_bss_18 = -1; work->unk_14 = 1; @@ -192,7 +276,7 @@ void fn_1_142C(omObjData *object) if ((lbl_1_bss_4 < 0) && ((MGSeqStatGet(lbl_1_bss_10) & 0x10) != 0)) { lbl_1_bss_4 = HuAudSeqPlay(0x48); } - if (MGSeqStatGet(lbl_1_bss_18) == 0 && (work->unk_08 == 0)) { + if (MGSeqStatGet(lbl_1_bss_10) == 0 && (work->unk_08 == 0)) { work->unk_14 = 2; work->unk_18 = 0; object->func = fn_1_1850; @@ -201,6 +285,61 @@ void fn_1_142C(omObjData *object) } } +void fn_1_1850(omObjData *object) +{ + M421DllWork *work = object->data; + s32 var_r26 = 0; + fn_1_578(object); + if (--work->unk_20 == 0) { + work->unk_20 = 0x3C; + work->unk_1C--; + if ((work->unk_1C == 0) && (work->unk_64 == 2)) { + work->unk_64 = 1; + var_r26 = 1; + } + } + if (lbl_1_bss_18 < 0) { + lbl_1_bss_18 = MGSeqCreate(1, work->unk_1C, -1, -1); + } + MGSeqParamSet(lbl_1_bss_18, 1, work->unk_1C); + if (work->unk_64 != 2) { + var_r26 = 1; + } + if (var_r26 != 0) { + lbl_1_bss_E = MGSeqCreate(3, 1); + MGSeqPosSet(lbl_1_bss_E, 320.0f, 240.0f); + HuAudSeqFadeOut(lbl_1_bss_4, 0x64); + work->unk_14 = 3; + work->unk_18 = 0; + if (work->unk_08 == 0) { + object->func = fn_1_1C90; + } + } +} + +void fn_1_1C90(omObjData *object) +{ + M421DllWork *work = object->data; + s32 var_r25 = 0; + if (lbl_1_bss_18 >= 0) { + MGSeqParamSet(lbl_1_bss_18, 2, -1); + lbl_1_bss_18 = -1; + } + fn_1_578(object); + if (work->unk_14 == 3) { + var_r25 = 1; + if ((MGSeqStatGet(lbl_1_bss_E) == 0) && (work->unk_68 == 0x1111) && (var_r25 != 0)) { + work->unk_14 = 4; + work->unk_18 = 0; + } + } + else { + work->unk_14 = 5; + work->unk_18 = 0; + fn_1_784(object); + } +} + omObjFunc fn_1_213C(Process *process, omObjData *object) { M421DllCameraStruct *var_r31; @@ -213,6 +352,121 @@ omObjFunc fn_1_213C(Process *process, omObjData *object) return fn_1_21AC; } +void fn_1_21AC(omObjData *object) +{ + Vec sp20; + float var_f31; + M421DllCameraStruct *var_r30; + M421DllWork *work; + + work = object->data; + fn_1_578(object); + work->unk_0C = 1; + object->work[0]++; + var_f31 = (float)object->work[0] / lbl_1_data_94[object->work[1]]; + VECSubtract(&lbl_1_data_4C[object->work[1] + 1], &lbl_1_data_4C[object->work[1]], &sp20); + VECScale(&sp20, &sp20, var_f31); + VECAdd(&lbl_1_data_4C[object->work[1]], &sp20, &sp20); + Center.x = sp20.x; + Center.y = sp20.y; + Center.z = sp20.z; + VECSubtract(&lbl_1_data_70[object->work[1] + 1], &lbl_1_data_70[object->work[1]], &sp20); + VECScale(&sp20, &sp20, var_f31); + VECAdd(&lbl_1_data_70[object->work[1]], &sp20, &sp20); + CRot.x = sp20.x; + CRot.y = sp20.y; + CRot.z = 0.0f; + CZoom = sp20.z; + var_r30 = fn_1_3CB0(0); + var_r30->unk_1C = Center; + var_r30->unk_28 = CRot; + var_r30->unk_34 = CZoom; + var_r30->unk_94++; + if (var_r30->unk_94 > 180.0f) { + var_r30->unk_84 -= 0.025000002f; + if (var_r30->unk_84 < 0.0f) { + var_r30->unk_84 = 0.0f; + } + var_r30->unk_1C.x += var_r30->unk_84 * ((0.02f * frandmod(0x3E8)) - 10.0f); + var_r30->unk_1C.y += var_r30->unk_84 * ((0.02f * frandmod(0x3E8)) - 10.0f); + var_r30->unk_1C.z += var_r30->unk_84 * ((0.02f * frandmod(0x3E8)) - 10.0f); + } + if (var_f31 >= 1.0f) { + object->work[0] = 0; + object->work[1]++; + if (lbl_1_data_94[object->work[1]] == 0) { + work->unk_0C = 2; + fn_1_784(object); + } + } +} + +omObjFunc fn_1_2A28(Process *process, omObjData *object) +{ + M421DllCameraStruct *var_r31; + s32 var_r30; + M421DllWork *var_r29; + s32 var_r28; + + var_r29 = object->data; + var_r28 = 1; + var_r31 = fn_1_3CB0(0); + if (var_r29->unk_64 == 1) { + var_r28 = 0; + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + var_r29->unk_50[var_r30] = -1; + if ((var_r29->unk_40[var_r30] == 0) == var_r28) { + var_r29->unk_50[var_r30] = var_r29->unk_30[var_r30]; + } + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + if (var_r29->unk_50[var_r30] >= 0) { + GWPlayerCoinWinAdd(var_r30, 10); + } + } + var_r31->unk_54 = 0.0f; + var_r31->unk_58 = 150.0f; + var_r31->unk_5C = 0.0f; + var_r31->unk_60 = -30.0f; + var_r31->unk_64 = 0.0f; + var_r31->unk_68 = 1000.0f; + var_r31->unk_84 = 0.0f; + return fn_1_2BB8; +} + +void fn_1_2BB8(omObjData *var_r29) +{ + M421DllCameraStruct *var_r31; + M421DllWork *var_r28; + + var_r28 = var_r29->data; + var_r31 = fn_1_3CB0(0); + fn_1_578(var_r29); + var_r31->unk_84 += 0.0016666668f; + if (var_r31->unk_84 > 0.1f) { + var_r31->unk_84 = 0.1f; + } + var_r31->unk_1C.y += var_r31->unk_84 * (var_r31->unk_58 - var_r31->unk_1C.y); + var_r31->unk_1C.z += var_r31->unk_84 * (var_r31->unk_5C - var_r31->unk_1C.z); + var_r31->unk_28.x = fn_1_4478(var_r31->unk_28.x, var_r31->unk_60, var_r31->unk_84); + var_r31->unk_34 += var_r31->unk_84 * (var_r31->unk_68 - var_r31->unk_34); + if (var_r28->unk_6C == 0x1111) { + var_r28->unk_28 = 1; + if (lbl_1_bss_0 < 0) { + lbl_1_bss_0 = HuAudSStreamPlay(1); + } + if (lbl_1_bss_C < 0) { + lbl_1_bss_C = MGSeqCreate(5, 3, var_r28->unk_50[0], var_r28->unk_50[1], var_r28->unk_50[2], var_r28->unk_50[3]); + return; + } + if ((MGSeqStatGet(lbl_1_bss_C) == 0) && (var_r28->unk_2C >= 210.0f)) { + var_r28->unk_28 = 2; + fn_1_784(var_r29); + } + } +} + void fn_1_3020(Process *process) { Hu3DCameraCreate(0x1F); @@ -275,7 +529,7 @@ void fn_1_3334(omObjData *object) fn_1_335C(object); } -void fn_1_335C(omObjData *var_r28) +void fn_1_335C(omObjData *object) { float var_f31; M421DllCameraStruct *var_r31; @@ -289,7 +543,7 @@ void fn_1_335C(omObjData *var_r28) u32 var_r22; u32 var_r21; - var_r27 = var_r28->data; + var_r27 = object->data; { s32 sp40[4] = { 2, 4, 8, 16 }; u32 sp30[4]; @@ -299,7 +553,7 @@ void fn_1_335C(omObjData *var_r28) var_r24 = 0; var_r26 = 0; memcpy(&var_r27[5], var_r27, 5 * sizeof(M421DllCameraStruct)); - switch (var_r28->work[1]) { + switch (object->work[1]) { case 0: break; case 1: @@ -314,10 +568,10 @@ void fn_1_335C(omObjData *var_r28) break; } if (var_r24 != 0) { - Hu3DModelAttrReset(var_r28->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); } else { - Hu3DModelAttrSet(var_r28->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); } for (var_r30 = 0; var_r30 < 4; var_r30++) { sp30[var_r30] = var_r27[var_r30 + 6].unk_04; @@ -509,18 +763,86 @@ void fn_1_3D84(s32 arg0, s32 arg1) } } +s32 fn_1_3E1C(void) +{ + return ((M421DllWork *)lbl_1_bss_24->data)->unk_00; +} + +u32 fn_1_3E34(void) +{ + return ((M421DllWork *)lbl_1_bss_24->data)->unk_0C; +} + +u32 fn_1_3E4C(void) +{ + return ((M421DllWork *)lbl_1_bss_24->data)->unk_14; +} + +u32 fn_1_3E64(void) +{ + return ((M421DllWork *)lbl_1_bss_24->data)->unk_28; +} + +s32 fn_1_3E7C(s32 arg0) +{ + M421DllWork *work = lbl_1_bss_24->data; + + if (work->unk_64 != 2) { + return 0; + } + work->unk_60 |= (1 << ((arg0 & 3) * 4)); + if (((work->unk_60 & 0x1110) == 0x1110) && (work->unk_64 == 2)) { + work->unk_64 = 0; + } + return 1; +} + +s32 fn_1_3EF8(s32 arg0) +{ + M421DllWork *work = lbl_1_bss_24->data; + return work->unk_50[arg0]; +} + +void fn_1_3F28(s32 arg0, s32 arg1, s32 arg2) +{ + M421DllWork *work = lbl_1_bss_24->data; + arg0 &= 3; + work->unk_40[arg0] = arg1; + work->unk_30[arg0] = arg2; +} + +void fn_1_3F68(s32 arg0) +{ + ((M421DllWork *)lbl_1_bss_24->data)->unk_68 |= (1 << ((arg0 & 7) * 4)); +} + +void fn_1_3F98(s32 arg0) +{ + ((M421DllWork *)lbl_1_bss_24->data)->unk_6C |= (1 << ((arg0 & 3) * 4)); +} + +void fn_1_3FC8(s32 arg0) +{ + ((M421DllWork *)lbl_1_bss_24->data)->unk_70 |= (1 << ((arg0 & 3) * 4)); +} + +s32 fn_1_3FF8(void) +{ + return MGSeqStatGet(lbl_1_bss_E) == 0; +} + void fn_1_4030(Vec *sp8, Vec *var_r31) { Vec sp10; float var_f30; float var_f29; - PSVECSubtract(var_r31, sp8, &sp10); + VECSubtract(var_r31, sp8, &sp10); Center = *var_r31; CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); CRot.y = atan2d(-sp10.x, -sp10.z); CRot.z = 0.0f; - CZoom = PSVECMag(&sp10); + CZoom = VECMag(&sp10); } void fn_1_4238(float arg8, float arg9, float argA, float argB, float argC, float argD) @@ -535,12 +857,12 @@ void fn_1_4238(float arg8, float arg9, float argA, float argB, float argC, float sp30.x = argB; sp30.y = argC; sp30.z = argD; - PSVECSubtract(&sp30, &sp3C, &sp24); + VECSubtract(&sp30, &sp3C, &sp24); Center = sp30; CRot.x = atan2d(sp24.y, sqrtf((sp24.x * sp24.x) + (sp24.z * sp24.z))); CRot.y = atan2d(-sp24.x, -sp24.z); CRot.z = 0.0f; - CZoom = PSVECMag(&sp24); + CZoom = VECMag(&sp24); } float fn_1_4478(float arg8, float arg9, float argA) diff --git a/src/REL/m421Dll/map.c b/src/REL/m421Dll/map.c new file mode 100644 index 00000000..5bd4e611 --- /dev/null +++ b/src/REL/m421Dll/map.c @@ -0,0 +1,54 @@ +#include "game/hsfman.h" +#include "game/hsfmotion.h" + +#include "REL/m421Dll.h" + +void fn_1_B1C0(omObjData *object); +void fn_1_B398(omObjData *object); + +omObjData *lbl_1_bss_58; + +void fn_1_B15C(Process *work) +{ + omObjData *object = omAddObjEx(work, 0x1E, 6, 0, -1, fn_1_B1C0); + lbl_1_bss_58 = object; + object->work[0] = 0; +} + +void fn_1_B1BC(void) { } + +void fn_1_B1C0(omObjData *var_r31) +{ + omSetTra(var_r31, 0.0f, 0.0f, 0.0f); + var_r31->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M421, 0x02)); + Hu3DModelLayerSet(var_r31->model[0], 1); + Hu3DModelShadowMapSet(var_r31->model[0]); + + var_r31->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M421, 0x00)); + Hu3DModelLayerSet(var_r31->model[1], 1); + + var_r31->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M421, 0x01)); + Hu3DModelLayerSet(var_r31->model[2], 5); + + var_r31->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M421, 0x05)); + Hu3DModelLayerSet(var_r31->model[3], 1); + Hu3DModelAttrSet(var_r31->model[3], HU3D_MOTATTR_LOOP); + + var_r31->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M421, 0x03)); + Hu3DModelLayerSet(var_r31->model[4], 5); + Hu3DModelAttrSet(var_r31->model[4], HU3D_MOTATTR_LOOP); + + var_r31->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M421, 0x04)); + Hu3DModelLayerSet(var_r31->model[5], 5); + Hu3DMotionTimeSet(var_r31->model[5], 0.0f); + var_r31->work[0] = 0; + var_r31->work[1] = 0; + var_r31->func = fn_1_B398; +} + +void fn_1_B398(omObjData *object) { } + +void fn_1_B39C(void) +{ + Hu3DMotionTimeSet(lbl_1_bss_58->model[5], 0.0f); +} diff --git a/src/REL/m421Dll/player.c b/src/REL/m421Dll/player.c new file mode 100644 index 00000000..4735d112 --- /dev/null +++ b/src/REL/m421Dll/player.c @@ -0,0 +1,1828 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "string.h" + +#include "REL/m421Dll.h" + +#ifndef __MWERKS__ +#include "game/esprite.h" +#include "game/frand.h" +#endif + +typedef struct M421DllPlayerWork { + s32 unk_00; + s32 unk_04; + s32 unk_08; + u32 unk_0C; + u32 unk_10; + s32 unk_14; + float unk_18; + float unk_1C; + s32 unk_20; + s32 unk_24; + s32 unk_28; + s32 unk_2C; + char unk30[0x4]; + s32 unk_34; + s32 unk_38; + s32 unk_3C; + char unk40[4]; + u16 unk_44; + u32 unk_48; + char unk4C[0x4]; + s16 unk_50; + char unk52[6]; + float unk_58; + float unk_5C; + float unk_60; + float unk_64; + float unk_68; + s32 unk_6C; + u32 unk_70; + u32 unk_74; + s32 unk_78; + char unk7C[4]; + float unk_80; + float unk_84; + float unk_88; + float unk_8C; + float unk_90; + float unk_94; + float unk_98; + float unk_9C; + float unk_A0; + float unk_A4; + float unk_A8; + float unk_AC; + float unk_B0; + float unk_B4; + u32 unk_B8; + u32 unk_BC; + u32 unk_C0; + u32 unk_C4; + s32 unk_C8; + Vec unk_CC; + Vec unk_D8; + Vec unk_E4; + Vec unk_F0; + Vec unk_FC; + float unk_108[4]; + Mtx unk_118; + float *unk_148; +} M421DllPlayerWork; /* size = 0x14C */ + +typedef struct M421DllPlayerDLWork { + Vec unk_00[4]; + u32 unk_30[4]; + GXColor unk_40[4]; + Vec unk_50[4][0xE]; + u32 unk_2F0; + void *unk_2F4; +} M421DllPlayerDLWork; /* size = 0x2F8 */ + +typedef struct UnkData1BCStruct { + /* 0x00 */ u16 unk_00; + /* 0x04 */ float unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ u32 unk_10; +} UnkData1BCStruct; /* size = 0x14 */ + +void fn_1_48D4(omObjData *object); +void fn_1_4F00(omObjData *object); +void fn_1_5060(omObjData *object); +void fn_1_53C8(omObjData *object); +void fn_1_578C(omObjData *object); +void fn_1_5B9C(omObjData *object); +void fn_1_6184(omObjData *object); +void fn_1_6400(omObjData *object); +void fn_1_66B4(omObjData *object); +void fn_1_676C(omObjData *object); +void fn_1_6D48(omObjData *object); +void fn_1_7478(omObjData *object); +void fn_1_7670(omObjData *object); +void fn_1_7AA0(omObjData *object); +void fn_1_80C0(omObjData *object); +void fn_1_893C(omObjData *object); +void fn_1_9474(omObjData *object, Vec *arg1, Vec *arg2); +void fn_1_956C(omObjData *object); +void fn_1_982C(omObjData *object, u32 arg1); +s32 fn_1_99B8(omObjData *object); +void fn_1_9BFC(float arg8, float arg9, float *arg0); +void fn_1_9C38(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_9DD0(omObjData *object, Vec *arg1); +void fn_1_A528(omObjData *object); +void fn_1_AB68(omObjData *object); +void fn_1_AB6C(ModelData *model, Mtx matrix); +void fn_1_ABDC(ModelData *model, Mtx matrix); + +char *lbl_1_data_E4[8] = { + "itemhook-r", + "itemhook-r", + "itemhook-r", + "itemhook-r", + "itemhook-r", + "itemhook-r", + "itemhook-r", + "itemhook-r", +}; + +s32 lbl_1_data_104[8][3] = { + { DATA_MAKE_NUM(DATADIR_M421, 0x06), DATA_MAKE_NUM(DATADIR_M421, 0x0E), DATA_MAKE_NUM(DATADIR_M421, 0x16) }, + { DATA_MAKE_NUM(DATADIR_M421, 0x07), DATA_MAKE_NUM(DATADIR_M421, 0x0F), DATA_MAKE_NUM(DATADIR_M421, 0x17) }, + { DATA_MAKE_NUM(DATADIR_M421, 0x08), DATA_MAKE_NUM(DATADIR_M421, 0x10), DATA_MAKE_NUM(DATADIR_M421, 0x18) }, + { DATA_MAKE_NUM(DATADIR_M421, 0x09), DATA_MAKE_NUM(DATADIR_M421, 0x11), DATA_MAKE_NUM(DATADIR_M421, 0x19) }, + { DATA_MAKE_NUM(DATADIR_M421, 0x0A), DATA_MAKE_NUM(DATADIR_M421, 0x12), DATA_MAKE_NUM(DATADIR_M421, 0x1A) }, + { DATA_MAKE_NUM(DATADIR_M421, 0x0B), DATA_MAKE_NUM(DATADIR_M421, 0x13), DATA_MAKE_NUM(DATADIR_M421, 0x1B) }, + { DATA_MAKE_NUM(DATADIR_M421, 0x0C), DATA_MAKE_NUM(DATADIR_M421, 0x14), DATA_MAKE_NUM(DATADIR_M421, 0x1C) }, + { DATA_MAKE_NUM(DATADIR_M421, 0x0D), DATA_MAKE_NUM(DATADIR_M421, 0x15), DATA_MAKE_NUM(DATADIR_M421, 0x1D) }, +}; +s32 lbl_1_data_164[8] = { + DATA_MAKE_NUM(DATADIR_M421, 0x1E), + DATA_MAKE_NUM(DATADIR_M421, 0x1F), + DATA_MAKE_NUM(DATADIR_M421, 0x20), + DATA_MAKE_NUM(DATADIR_M421, 0x21), + DATA_MAKE_NUM(DATADIR_M421, 0x22), + DATA_MAKE_NUM(DATADIR_M421, 0x23), + DATA_MAKE_NUM(DATADIR_M421, 0x24), + DATA_MAKE_NUM(DATADIR_M421, 0x25), +}; +float lbl_1_data_184[8] = { 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.8f }; +s32 lbl_1_data_1A4[6] = { 0, 2, 3, 0x14, 0x17, 0x18 }; +UnkData1BCStruct lbl_1_data_1BC[6] = { + { 0, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 1, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 2, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 3, 0.2f, 0.0f, -1.0f, 0 }, + { 4, 0.2f, 0.0f, -1.0f, 0 }, + { 5, 0.2f, 0.0f, -1.0f, 0 }, +}; +Vec lbl_1_data_234[4] = { + { 0.0f, 0.0f, 100.0f }, + { -200.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f }, + { 200.0f, 0.0f, 0.0f }, +}; +Vec lbl_1_data_264[4] = { + { -80.0f, 0.0f, -300.0f }, + { -200.0f, 0.0f, -50.0f }, + { 0.0f, 0.0f, -150.0f }, + { 200.0f, 0.0f, -50.0f }, +}; +Vec2f lbl_1_data_294[3] = { { 300.0f, 0.4f }, { 450.0f, 0.7f }, { 600.0f, 1.0f } }; +u32 lbl_1_data_2AC[3] = { 6, 0xC, 0xC }; +float lbl_1_data_2B8[3] = { 8.000001f, 8.5f, 9.166667f }; +float lbl_1_data_2C4[3] = { 0.9f, 0.8f, 0.5f }; +float lbl_1_data_2D0[3] = { 19.800001f, 20.400002f, 20.400002f }; +float lbl_1_data_2DC[3] = { -70.0f, -60.000004f, -70.0f }; +float lbl_1_data_2E8[3] = { 192.00003f, 357.0f, 550.0f }; + +// M421DllPlayerWork +omObjData *lbl_1_bss_48[4]; +// M421DllPlayerDLWork +omObjData *lbl_1_bss_44; +u32 lbl_1_bss_34[4]; +u32 lbl_1_bss_30; + +void fn_1_4648(Process *process) +{ + u32 sp18[4]; + u32 sp8[4]; + s16 var_r31; + s16 var_r30; + u32 var_r29; + omObjData *var_r27; + + lbl_1_bss_30 = -1; + for (var_r31 = 0; var_r31 < 4; var_r31++) { + sp18[var_r31] = GWPlayerCfg[var_r31].group; + sp8[var_r31] = var_r31; + } + for (var_r31 = 0; var_r31 < 3; var_r31++) { + for (var_r30 = var_r31 + 1; var_r30 < 4; var_r30++) { + if (sp18[var_r31] > sp18[var_r30]) { + var_r29 = sp18[var_r31]; + sp18[var_r31] = sp18[var_r30]; + sp18[var_r30] = var_r29; + var_r29 = sp8[var_r31]; + sp8[var_r31] = sp8[var_r30]; + sp8[var_r30] = var_r29; + } + } + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_34[sp8[var_r31]] = var_r31; + } + omMakeGroupEx(process, 0, 4); + omGetGroupMemberListEx(process, 0); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + var_r27 = lbl_1_bss_48[var_r31] = omAddObjEx(process, 0x28, 5, 6, 0, fn_1_48D4); + var_r27->work[0] = var_r31; + } + lbl_1_bss_44 = omAddObjEx(process, 0x1E, 2, 0, -1, fn_1_A528); + lbl_1_bss_44->work[0] = 0; +} + +void fn_1_48B0(void) +{ + CharModelKill(-1); +} + +void fn_1_48D4(omObjData *object) +{ + s32 sp8; + + M421DllPlayerWork *work; + s32 var_r29; + HsfanimStruct01 *var_r28; + u32 var_r27; + s32 var_r26; + s32 var_r25; + u32 var_r24; + + float sp1C[4] = { 0.25f, 0.5f, 0.75f, 1.0f }; + float spC[2][2] = { { 100.0f, 143.0f }, { 100.0f, 100.0f } }; + Vec sp2C[4] = { 0.0f, 1500.0f, 300.0f, -450.0f, 0.0f, -50.0f, 0.0f, 0.0f, -350.0f, 450.0f, 0.0f, -50.0f }; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M421DllPlayerWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M421DllPlayerWork)); + object->stat |= 0x100; + var_r24 = object->work[0]; + var_r26 = GWPlayerCfg[var_r24].character; + work->unk_00 = var_r26; + sp8 = work->unk_04 = 0; + work->unk_0C = lbl_1_bss_34[object->work[0]]; + var_r27 = 0; + if (work->unk_0C != 0) { + var_r27++; + } + fn_1_3F28(object->work[0], work->unk_0C, work->unk_00); + work->unk_68 = sp1C[GWPlayerCfg[var_r24].diff & 3]; + work->unk_2C = GWPlayerCfg[object->work[0]].iscom; + object->model[0] = CharModelCreate(var_r26, 4); + Hu3DModelLayerSet(object->model[0], 1); + for (var_r29 = 0; var_r29 < 6; var_r29++) { + object->motion[var_r29] = CharModelMotionCreate(var_r26, lbl_1_data_1A4[var_r29]); + } + CharModelMotionDataClose(var_r26); + if (var_r27 == 1) { + object->model[1] = Hu3DModelCreateFile(lbl_1_data_164[var_r26]); + Hu3DModelLayerSet(object->model[1], 1); + fn_1_982C(object, 0); + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); + } + object->model[2] = Hu3DModelCreateFile(lbl_1_data_104[var_r26][var_r27]); + Hu3DModelLayerSet(object->model[2], 1); + Hu3DModelShadowSet(object->model[2]); + if (var_r27 != 0) { + object->model[3] = Hu3DModelCreateFile(lbl_1_data_104[var_r26][2]); + Hu3DModelLayerSet(object->model[3], 1); + Hu3DModelShadowSet(object->model[3]); + Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); + work->unk_C8 = espEntry(0x120006, 1, 0); + espDispOff(work->unk_C8); + espAttrSet(work->unk_C8, HUSPR_ATTR_LINEAR); + } + var_r25 = Hu3DParticleCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M421, 0x27)), 0x80); + object->model[4] = var_r25; + Hu3DModelLayerSet(var_r25, 1); + Hu3DParticleHookSet(var_r25, fn_1_9C38); + for (var_r28 = ((ParticleData *)Hu3DData[var_r25].unk_120)->unk_48, var_r29 = 0; var_r29 < 0x80; var_r29++, var_r28++) { + var_r28->unk2C = 0.0f; + var_r28->unk40.a = 0; + var_r28->unk00 = 0; + } + if (work->unk_0C == 0) { + work->unk_148 = HuMemDirectMallocNum(HEAP_SYSTEM, 441 * sizeof(float), MEMORY_DEFAULT_NUM); + memset(work->unk_148, 0, 441 * sizeof(float)); + } + object->trans.x = work->unk_CC.x = sp2C[work->unk_0C].x; + object->trans.y = work->unk_CC.y = sp2C[work->unk_0C].y; + object->trans.z = work->unk_CC.z = sp2C[work->unk_0C].z; + work->unk_20 = 1; + work->unk_94 = 1.0f; + work->unk_84 = spC[var_r27][0]; + work->unk_88 = spC[var_r27][1]; + work->unk_8C = 110.0f; + work->unk_90 = 1.0f; + work->unk_98 = work->unk_CC.y + (2.0f * work->unk_88); + work->unk_9C = work->unk_CC.y; + work->unk_A0 = 0.0f; + work->unk_A4 = 0.0f; + work->unk_78 = -1; + work->unk_58 = work->unk_5C = 0.0f; + work->unk_60 = 0.0f; + work->unk_64 = 0.02f; + work->unk_80 = 50.0f; + work->unk_A8 = 0.0f; + MTXIdentity(work->unk_118); + work->unk_08 = -1; + work->unk_6C = 0; + work->unk_3C = 1; + work->unk_44 = 0; + if (var_r27 == 0) { + Hu3DModelShadowSet(object->model[0]); + object->func = fn_1_4F00; + Hu3DModelReflectTypeSet(object->model[2], 4); + work->unk_90 = lbl_1_data_184[work->unk_00]; + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + return; + } + object->func = fn_1_5060; +} + +void fn_1_4F00(omObjData *object) +{ + M421DllPlayerWork *work = object->data; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0.0f; + work->unk_1C = 0.0f; + switch (work->unk_44) { + case 0: + if (work->unk_48 > 108.0f) { + HuAudFXPlay(0x601); + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[2], HU3D_ATTR_DISPOFF); + work->unk_10 = 0x100; + work->unk_44++; + } + break; + case 1: + if (work->unk_24 == 0) { + work->unk_10 = 0x100; + work->unk_44++; + } + break; + } + VECAdd(&work->unk_CC, &work->unk_D8, &work->unk_CC); + fn_1_676C(object); + fn_1_66B4(object); + fn_1_7670(object); + if (fn_1_3E34() == 2) { + work->unk_44 = 0; + object->func = fn_1_53C8; + } +} + +void fn_1_5060(omObjData *object) +{ + M421DllPlayerWork *work = object->data; + { + Vec sp8[4] = { + { 0.0f, 0.0f, 0.0f }, + { 80.0f, 190.0f, 0.0f }, + { 290.0f, 120.0f, 0.0f }, + { 500.0f, 190.0f, 0.0f }, + }; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0.0f; + work->unk_1C = 0.0f; + switch (work->unk_44) { + case 0: + if ((work->unk_48 > 30.0f) && ((work->unk_48 & 0xF) == 0) && (frandmod(0x3E8) < 0x12C)) { + work->unk_10 = 0x100; + work->unk_44++; + } + else if (work->unk_48 > 120.0f) { + work->unk_44++; + } + break; + case 1: + if (work->unk_48 > 120.0f) { + work->unk_18 = atan2d(-work->unk_CC.x, 300.0f - work->unk_CC.z); + work->unk_1C = 0.01f; + if (work->unk_48 < 156.0f) { + espPosSet(work->unk_C8, sp8[work->unk_0C].x, sp8[work->unk_0C].y); + espScaleSet(work->unk_C8, 0.6000000238418579, 0.6000000238418579); + espDispOn(work->unk_C8); + } + else { + espDispOff(work->unk_C8); + } + } + if (work->unk_48 >= 180.0f) { + work->unk_10 = 0x100; + work->unk_C0 = 1; + work->unk_44++; + } + break; + } + } + VECAdd(&work->unk_CC, &work->unk_D8, &work->unk_CC); + fn_1_6D48(object); + fn_1_66B4(object); + fn_1_7670(object); + if (fn_1_3E34() == 2) { + work->unk_44 = 0; + object->func = fn_1_578C; + } +} + +void fn_1_53C8(omObjData *object) +{ + float var_f31; + float var_f30; + + M421DllPlayerWork *work = object->data; + s32 var_r29 = 0; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0.0f; + work->unk_1C = 0.0f; + if (fn_1_3E4C() == 2) { + if (work->unk_2C != 0) { + fn_1_80C0(object); + } + else { + work->unk_14 = HuPadBtn[GWPlayerCfg[object->work[0]].pad_idx]; + work->unk_10 = HuPadBtnDown[GWPlayerCfg[object->work[0]].pad_idx]; + var_f31 = HuPadStkX[GWPlayerCfg[object->work[0]].pad_idx]; + var_f30 = -HuPadStkY[GWPlayerCfg[object->work[0]].pad_idx]; + work->unk_18 = atan2d(var_f31, var_f30); + work->unk_1C = 0.013888889f * sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (work->unk_1C > 1.0f) { + work->unk_1C = 1.0f; + } + } + } + if ((s32)work->unk_44 != 0) { + (void)var_r29; + } + else { + var_r29 = 1; + } + VECAdd(&work->unk_CC, &work->unk_D8, &work->unk_CC); + fn_1_893C(object); + fn_1_66B4(object); + fn_1_676C(object); + fn_1_7670(object); + if ((fn_1_3E4C() == 3) && (var_r29 != 0) && (fn_1_3FF8() != 0)) { + work->unk_44 = 0; + object->func = fn_1_6184; + } +} + +void fn_1_578C(omObjData *object) +{ + float var_f31; + float var_f30; + + M421DllPlayerWork *work = object->data; + s32 var_r29 = 0; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0.0f; + work->unk_1C = 0.0f; + if (fn_1_3E4C() == 2) { + if (work->unk_2C != 0) { + fn_1_80C0(object); + } + else { + work->unk_14 = HuPadBtn[GWPlayerCfg[object->work[0]].pad_idx]; + work->unk_10 = HuPadBtnDown[GWPlayerCfg[object->work[0]].pad_idx]; + var_f31 = HuPadStkX[GWPlayerCfg[object->work[0]].pad_idx]; + var_f30 = -HuPadStkY[GWPlayerCfg[object->work[0]].pad_idx]; + work->unk_18 = atan2d(var_f31, var_f30); + work->unk_1C = 0.013888889f * sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (work->unk_1C > 1.0f) { + work->unk_1C = 1.0f; + } + } + } + if ((s32)work->unk_44 != 0) { + (void)var_r29; + } + else if (work->unk_24 == 0) { + var_r29 = 1; + } + VECAdd(&work->unk_CC, &work->unk_D8, &work->unk_CC); + fn_1_893C(object); + fn_1_6D48(object); + fn_1_66B4(object); + fn_1_7670(object); + if (work->unk_38 != 0) { + if (fn_1_3E7C(work->unk_0C) != 0) { + object->func = fn_1_5B9C; + } + else { + work->unk_38 = 0; + } + } + if ((work->unk_38 == 0) && (fn_1_3E4C() == 3) && (var_r29 != 0) && (fn_1_3FF8() != 0)) { + work->unk_44 = 0; + object->func = fn_1_6184; + } +} + +void fn_1_5B9C(omObjData *object) +{ + Mtx sp34; + Vec sp28; + Vec sp1C; + s32 spC; + float sp8; + float var_f29; + + M421DllPlayerWork *work; + M421DllCameraStruct *var_r29; + + work = object->data; + spC = 0; + { + Vec sp10 = { 0.0f, 0.0f, 0.0f }; + switch (work->unk_44) { + case 7: + break; + case 0: + fn_1_B39C(); + work->unk_20 = 0; + work->unk_58 = work->unk_5C = 0.0f; + MTXIdentity(work->unk_118); + Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelPosSetV(object->model[3], &work->unk_F0); + Hu3DMotionTimeSet(object->model[3], 0.0f); + Hu3DMotionSpeedSet(object->model[3], 3.0f); + HuAudFXEmiterPlay(0x5FC, &work->unk_F0); + work->unk_78 = HuAudCharVoicePlayPos(work->unk_00, 0x123, &work->unk_CC); + omVibrate(object->work[0], 0xC, 4, 2); + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + fn_1_982C(object, 0); + fn_1_9DD0(object, &work->unk_F0); + var_r29 = fn_1_3C14(1); + mtxRot(sp34, var_r29->unk_28.x, var_r29->unk_28.y, 0.0f); + sp10.z = var_r29->unk_34 - 350.0f; + MTXMultVec(sp34, &sp10, &sp1C); + VECAdd(&var_r29->unk_1C, &sp1C, &sp28); + fn_1_9BFC(sp28.y - work->unk_CC.y, 0.9f, work->unk_108); + VECSubtract(&sp28, &work->unk_CC, &sp1C); + work->unk_D8.y = 0.016666668f * work->unk_108[2]; + work->unk_D8.x = 0.01851852f * sp1C.x; + work->unk_D8.z = 0.01851852f * sp1C.z; + work->unk_44 = 1; + work->unk_48 = 0; + break; + case 1: + work->unk_D8.y += 0.016666668f * (0.016666668f * work->unk_108[3]); + var_f29 = sqrtf((work->unk_D8.x * work->unk_D8.x) + (work->unk_D8.z * work->unk_D8.z)); + var_f29 = atan2d(var_f29, work->unk_D8.y); + var_f29 = var_f29; + sp1C.x = work->unk_D8.z; + sp1C.y = 0.0f; + sp1C.z = -work->unk_D8.x; + VECNormalize(&sp1C, &sp1C); + MTXRotAxisRad(work->unk_118, &sp1C, 0.017453292f * var_f29); + sp1C.x = sp1C.z = 0.0f; + sp1C.y = 1.0f; + MTXRotAxisRad(sp34, &sp1C, 0.017453292f * (22.5f * work->unk_48)); + MTXConcat(work->unk_118, sp34, work->unk_118); + HuAudFXEmiterUpDate(work->unk_78, &work->unk_CC); + if (work->unk_48 >= 72.0f) { + MTXIdentity(work->unk_118); + work->unk_D8.x = work->unk_D8.y = work->unk_D8.z = 0.0f; + work->unk_44 = 2; + work->unk_48 = 0; + fn_1_3F68(object->work[0]); + fn_1_3F98(object->work[0]); + fn_1_3FC8(object->work[0]); + } + break; + case 2: + work->unk_D8.y += -0.27222225f; + if (work->unk_48 > 120.0f) { + work->unk_44 = 7; + work->unk_48 = 0; + work->unk_D8.x = work->unk_D8.y = work->unk_D8.z = 0.0f; + } + break; + } + } + VECAdd(&work->unk_CC, &work->unk_D8, &work->unk_CC); + fn_1_66B4(object); + fn_1_7670(object); +} + +void fn_1_6184(omObjData *object) +{ + M421DllPlayerWork *work = object->data; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0.0f; + work->unk_1C = 0.0f; + switch (work->unk_44) { + case 0: + if (work->unk_0C == 0) { + work->unk_20 = 0; + work->unk_58 = work->unk_5C = 0.0f; + MTXIdentity(work->unk_118); + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + fn_1_982C(object, 0); + work->unk_CC = work->unk_E4; + } + else { + work->unk_20 = 0; + work->unk_58 = work->unk_5C = 0.0f; + MTXIdentity(work->unk_118); + Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + fn_1_982C(object, 0); + work->unk_CC = work->unk_E4; + } + fn_1_9DD0(object, &work->unk_F0); + HuAudFXEmiterPlay(0x600, &work->unk_F0); + work->unk_D8.x = work->unk_D8.y = work->unk_D8.z = 0.0f; + work->unk_44 = 3; + break; + case 3: + Hu3DModelShadowSet(object->model[0]); + work->unk_D8.y += -0.27222225f; + if (work->unk_CC.y <= 0.0f) { + work->unk_CC.y = 0.0f; + work->unk_D8.y = 0.0f; + work->unk_44 = 4; + } + break; + case 4: + work->unk_48 = 0; + fn_1_3F68(object->work[0]); + break; + } + VECAdd(&work->unk_CC, &work->unk_D8, &work->unk_CC); + work->unk_E4 = work->unk_CC; + fn_1_956C(object); + fn_1_66B4(object); + fn_1_7670(object); + if (fn_1_3E4C() == 5) { + object->func = fn_1_6400; + } +} + +void fn_1_6400(omObjData *object) +{ + Vec sp8; + float var_f31; + M421DllPlayerWork *work = object->data; + + VECAdd(&work->unk_CC, &work->unk_D8, &work->unk_CC); + work->unk_E4 = work->unk_CC; + fn_1_956C(object); + fn_1_66B4(object); + fn_1_7670(object); + switch (work->unk_44) { + case 4: + if (fn_1_3EF8(object->work[0]) >= 0) { + VECSubtract(&lbl_1_data_234[work->unk_0C], &work->unk_CC, &sp8); + } + else { + VECSubtract(&lbl_1_data_264[work->unk_0C], &work->unk_CC, &sp8); + } + sp8.y = 0.0f; + var_f31 = VECMag(&sp8); + if (var_f31 < 10.0f) { + var_f31 = 0.0f; + } + else { + if (VECMag(&sp8) >= 100.0f) { + var_f31 = 100.0f; + } + var_f31 = 0.2f + (0.008f * var_f31); + } + work->unk_18 = atan2d(sp8.x, sp8.z); + work->unk_1C = var_f31; + fn_1_7478(object); + if ((work->unk_1C == 0.0f) || (work->unk_48 > 0x12C)) { + work->unk_5C = 0.0f; + work->unk_60 = 0.15f; + work->unk_64 = 0.0f; + work->unk_D8.x = work->unk_D8.y = work->unk_D8.z = 0.0f; + fn_1_3F98(object->work[0]); + } + if (fn_1_3E64() == 1) { + work->unk_44 = 5; + } + break; + case 5: + if (fn_1_3E64() == 1) { + if (fn_1_3EF8(object->work[0]) >= 0) { + fn_1_982C(object, 4); + } + else { + fn_1_982C(object, 5); + } + work->unk_44 = 6; + return; + } + break; + case 6: + if (fn_1_99B8(object) != 0) { + fn_1_3FC8(object->work[0]); + } + break; + } +} + +void fn_1_66B4(omObjData *object) +{ + M421DllPlayerWork *work = object->data; + work->unk_50++; + work->unk_48++; + object->trans.x = work->unk_CC.x; + object->trans.y = work->unk_CC.y; + object->trans.z = work->unk_CC.z; + work->unk_60 += work->unk_64; + if (work->unk_60 > 0.45f) { + work->unk_60 = 0.45f; + } + work->unk_58 = fn_1_4478(work->unk_58, work->unk_5C, work->unk_60); + object->rot.y = work->unk_58; +} + +void fn_1_676C(omObjData *object) +{ + Mtx sp44; + Mtx sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + + M421DllPlayerWork *work = object->data; + if (work->unk_20 != 0) { + if (work->unk_1C > 0.0f) { + work->unk_5C = work->unk_18; + work->unk_60 = 0.15f; + work->unk_64 = 0.0f; + } + if (work->unk_1C < 0.05f) { + fn_1_982C(object, 0); + CharModelMotionSpeedSet(work->unk_00, 1.0f); + } + else { + var_f30 = 0.5f; + if (work->unk_08 == 2) { + var_f30 = 0.45f; + } + if (work->unk_1C > var_f30) { + fn_1_982C(object, 2); + var_f29 = work->unk_1C; + } + else { + fn_1_982C(object, 1); + var_f29 = work->unk_1C / var_f30; + } + CharModelMotionSpeedSet(work->unk_00, var_f29); + } + sp8.x = 0.01666666753590107 * (1.6666667461395264 * (2.0 * (work->unk_1C * sind(work->unk_18)))); + sp8.y = 0.0f; + sp8.z = 0.01666666753590107 * (1.6666667461395264 * (2.0 * (work->unk_1C * cosd(work->unk_18)))); + VECAdd(&sp8, &work->unk_D8, &work->unk_D8); + if (work->unk_24 == 0) { + if ((work->unk_10 & 0x100) != 0) { + work->unk_24 = 1; + fn_1_9BFC(400.0f - (2.0f * work->unk_88), 0.25f, work->unk_108); + work->unk_D8.y = 0.016666668f * work->unk_108[2]; + if (fn_1_3E34() == 2) { + HuAudFXEmiterPlay(0x5FE, &work->unk_F0); + } + } + } + else { + work->unk_D8.y += 0.016666668f * (0.016666668f * work->unk_108[3]); + if ((work->unk_D8.y < 0.0f) && (work->unk_CC.y <= 0.0f)) { + work->unk_D8.y = 0.0f; + work->unk_24 = 0; + if (fn_1_3E34() != 2) { + HuAudFXEmiterPlay(0x5FD, &work->unk_F0); + omVibrate(object->work[0], 0xC, 4, 2); + } + else { + HuAudFXEmiterPlay(0x5FF, &work->unk_F0); + } + } + } + MTXIdentity(sp44); + MTXIdentity(sp14); + work->unk_A8 = 1.0f - work->unk_1C; + sp8 = work->unk_D8; + sp8.y = 0.0f; + var_f31 = VECMag(&sp8); + if (var_f31 > 0.0f) { + VECNormalize(&sp8, &sp8); + var_f28 = sp8.z; + sp8.z = -sp8.x; + sp8.x = var_f28; + var_f31 *= 360.0f / (3.14159f * (2.0f * work->unk_88)); + MTXRotAxisRad(sp44, &sp8, 0.017453292f * var_f31); + } + sp8.x = sind((90.0f + work->unk_18)); + sp8.y = 0.0f; + sp8.z = cosd((90.0f + work->unk_18)); + if (work->unk_1C > 0.0f) { + var_f31 = 1.6666667f * work->unk_1C * (360.0f / (3.14159f * (2.0f * work->unk_88))); + if (work->unk_24 != 0) { + var_f31 *= 2.0f; + } + MTXRotAxisRad(sp14, &sp8, 0.017453292f * var_f31); + } + MTXConcat(sp44, sp14, sp44); + MTXConcat(sp44, work->unk_118, work->unk_118); + fn_1_7AA0(object); + } +} + +void fn_1_6D48(omObjData *object) +{ + M421DllPlayerWork *work = object->data; + if (work->unk_20 != 0) { + if (work->unk_D8.y > 0.0f) { + work->unk_9C = work->unk_CC.y - (1.7999998f * work->unk_D8.y); + if (work->unk_9C < 0.0f) { + work->unk_9C = 0.0f; + } + work->unk_98 = (2.0f * (work->unk_CC.y + work->unk_88)) - work->unk_9C; + work->unk_A0 = 0.5f * work->unk_D8.y; + work->unk_A4 = -0.2f * work->unk_A0; + } + else if (work->unk_D8.y < 0.0f) { + work->unk_98 = work->unk_CC.y + (2.0f * work->unk_88); + work->unk_9C = work->unk_CC.y; + work->unk_A0 = 0.8f * work->unk_D8.y; + work->unk_A4 = work->unk_A0 * (-2.0f / work->unk_B8); + } + else if (work->unk_24 == 0) { + work->unk_9C = work->unk_CC.y; + if ((work->unk_B8 != 0) || (work->unk_BC != 0)) { + work->unk_98 += work->unk_A0; + work->unk_A0 += work->unk_A4; + } + else { + work->unk_A0 = work->unk_A4 = 0.0f; + work->unk_98 = work->unk_CC.y + (2.0f * work->unk_88); + } + if (work->unk_BC != 0) { + work->unk_AC = work->unk_AC + work->unk_B0; + work->unk_98 = work->unk_CC.y + (2.0f * work->unk_88); + work->unk_98 = work->unk_98 + ((work->unk_BC / 18.0f) * (work->unk_B4 * sind(work->unk_AC))); + } + } + work->unk_F0 = work->unk_CC; + work->unk_F0.y = 0.5f * (work->unk_98 + work->unk_9C); + work->unk_94 = (work->unk_F0.y - work->unk_9C) / work->unk_88; + if ((work->unk_1C > 0.0f) && (work->unk_24 == 0)) { + work->unk_5C = work->unk_18; + work->unk_60 = 0.15f; + work->unk_64 = 0.0f; + } + if ((work->unk_10 & 0x100) != 0) { + work->unk_C4 = 0xC; + } + if (work->unk_C4 != 0) { + work->unk_C4--; + } + if (work->unk_24 == 0) { + if ((work->unk_28 == 0) && (work->unk_C0 < 3) && ((work->unk_C0 != 0) || (work->unk_BC == 0)) && (work->unk_C4 != 0)) { + work->unk_28 = 1; + } + if (work->unk_B8 != 0) { + work->unk_B8--; + if (work->unk_B8 == 0) { + work->unk_A0 *= lbl_1_data_2C4[work->unk_C0 - 1]; + work->unk_A4 = work->unk_A0 * (-2.0f / (work->unk_BC + 1)); + } + } + else { + if (work->unk_BC != 0) { + work->unk_BC--; + } + if ((work->unk_C0 >= 3) || (work->unk_28 == 0)) { + work->unk_C0 = 0; + } + if (work->unk_28 != 0) { + work->unk_28 = 0; + work->unk_24 = 1; + work->unk_D8.x = lbl_1_data_2B8[work->unk_C0] * (work->unk_1C * sind(work->unk_18)); + work->unk_D8.z = lbl_1_data_2B8[work->unk_C0] * (work->unk_1C * cosd(work->unk_18)); + if (work->unk_C0 < 2) { + HuAudFXEmiterPlay(0x5F9, &work->unk_F0); + } + else { + HuAudFXEmiterPlay(0x5FA, &work->unk_F0); + } + fn_1_9BFC(lbl_1_data_294[work->unk_C0].x - (2.0f * work->unk_88), 0.5f * lbl_1_data_294[work->unk_C0].y, work->unk_108); + work->unk_D8.y = 0.016666668f * work->unk_108[2]; + work->unk_B8 = 9; + work->unk_BC = lbl_1_data_2AC[work->unk_C0]; + work->unk_C0++; + } + } + } + else { + work->unk_AC = 0.0f; + work->unk_B0 = lbl_1_data_2D0[work->unk_C0 - 1]; + work->unk_B4 = lbl_1_data_2DC[work->unk_C0 - 1]; + work->unk_D8.y += 0.016666668f * (0.016666668f * work->unk_108[3]); + if ((work->unk_D8.y < 0.0f) && (work->unk_CC.y <= 0.0f)) { + work->unk_D8.x = work->unk_D8.y = work->unk_D8.z = 0.0f; + work->unk_24 = 0; + HuAudFXEmiterPlay(0x5FB, &work->unk_F0); + } + } + } +} + +void fn_1_7478(omObjData *object) +{ + float var_f31; + float var_f30; + + M421DllPlayerWork *work = object->data; + if (work->unk_1C > 0.0f) { + work->unk_5C = work->unk_18; + } + if ((work->unk_1C > 0.05f) && (work->unk_34 == 0)) { + work->unk_D8.x = 0.01666666753590107 * (550.0 * (work->unk_1C * sind(work->unk_18))); + work->unk_D8.z = 0.01666666753590107 * (550.0 * (work->unk_1C * cosd(work->unk_18))); + work->unk_60 = 0.2f; + work->unk_64 = 0.0f; + var_f31 = 0.5f; + if (work->unk_08 == 2) { + var_f31 = 0.45f; + } + if (work->unk_1C > var_f31) { + fn_1_982C(object, 2); + var_f30 = work->unk_1C; + } + else { + fn_1_982C(object, 1); + var_f30 = work->unk_1C / var_f31; + } + CharModelMotionSpeedSet(work->unk_00, var_f30); + return; + } + work->unk_D8.x = work->unk_D8.y = work->unk_D8.z = 0.0f; + fn_1_982C(object, 0); +} + +void fn_1_7670(omObjData *object) +{ + float var_f29; + + M421DllPlayerWork *work = object->data; + work->unk_E4 = work->unk_CC; + if (work->unk_20 != 0) { + if (work->unk_0C == 0) { + work->unk_F0 = work->unk_CC; + work->unk_F0.y += work->unk_88 * work->unk_94; + work->unk_E4.y += work->unk_94 * (work->unk_88 - work->unk_84); + Hu3DModelPosSetV(object->model[0], &work->unk_E4); + Hu3DModelRotSet(object->model[0], 0.0f, work->unk_58, 0.0f); + Hu3DModelScaleSet(object->model[0], work->unk_90, work->unk_90, work->unk_90); + Hu3DModelPosSetV(object->model[2], &work->unk_F0); + MTXCopy(work->unk_118, Hu3DData[object->model[2]].unk_F0); + Hu3DModelScaleSet(object->model[2], 1.0f, work->unk_94, 1.0f); + return; + } + work->unk_E4.y += (2.0f * work->unk_88 * work->unk_94) - work->unk_8C; + Hu3DModelPosSetV(object->model[0], &work->unk_E4); + Hu3DModelRotSet(object->model[0], 0.0f, work->unk_58, 0.0f); + Hu3DModelPosSetV(object->model[2], &work->unk_F0); + Hu3DModelRotSet(object->model[2], 0.0f, work->unk_58, 0.0f); + var_f29 = sqrtf(1.0f / work->unk_94); + Hu3DModelScaleSet(object->model[2], var_f29, work->unk_94, var_f29); + Hu3DModelPosSet(object->model[1], work->unk_F0.x, 15.000001f + (work->unk_F0.y + (work->unk_88 * work->unk_94)), work->unk_F0.z); + Hu3DModelRotSet(object->model[1], 0.0f, work->unk_58, 0.0f); + return; + } + work->unk_90 += 0.1f * (1.0f - work->unk_90); + Hu3DModelPosSetV(object->model[0], &work->unk_E4); + Hu3DModelRotSet(object->model[0], 0.0f, work->unk_58, 0.0f); + Hu3DModelScaleSet(object->model[0], work->unk_90, work->unk_90, work->unk_90); + MTXCopy(work->unk_118, Hu3DData[object->model[0]].unk_F0); +} + +void fn_1_7AA0(omObjData *object) +{ + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + + s32 var_r30; + s32 var_r29; + s32 var_r28; + + M421DllPlayerWork *work = object->data; + sp38 = work->unk_CC; + sp38.y = 0.0f; + VECScale(&work->unk_D8, &sp14, 7.5f); + sp2C = sp38; + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + VECAdd(&sp2C, &sp14, &sp2C); + fn_1_9474(object, &sp2C, &sp2C); + } + sp2C.y = 0.0f; + VECSubtract(&sp38, &sp2C, &sp8); + sp8.y = 0.0f; + var_f28 = VECMag((Vec *)&sp8.y); + var_f29 = 0.0025f * var_f28; + if (var_f29 > 1.0f) { + var_f29 = 1.0f; + } + if (var_f28 > 0.0f) { + VECNormalize(&sp8, &sp8); + } + sp20.y = 0.0f; + sp20.z = -750.0f; + var_r29 = 0; + for (var_r30 = 0; var_r30 < 0x15; var_r30++) { + sp20.x = -750.0f; + for (var_r28 = 0; var_r28 < 0x15; var_r28++, var_r29++) { + if (VECMag(&sp20) >= 700.0f) { + work->unk_148[var_r29] = 10.0f; + } + else { + VECSubtract(&sp2C, &sp20, &sp14); + var_f31 = 1.0f - (0.001f * VECMag(&sp14)); + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + work->unk_148[var_r29] = 3.0f * var_f31; + VECSubtract(&sp38, &sp20, &sp14); + var_f31 = 1.0f - (0.001f * VECMag(&sp14)); + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + work->unk_148[var_r29] += 3.0f * var_f31; + VECSubtract(&sp20, &sp38, &sp14); + var_f31 = VECMag(&sp14); + var_f30 = 1.0f - (0.001f * var_f31); + if (var_f30 < 0.0f) { + var_f30 = 0.0f; + } + if (var_f31 > 0.0f) { + VECNormalize(&sp14, &sp14); + } + var_f31 = VECDotProduct(&sp14, &sp8); + if (var_f31 > 0.0f) { + var_f31 = 4.0f * (var_f29 * (var_f30 * (var_f31 * var_f31))); + work->unk_148[var_r29] += var_f31; + } + } + sp20.x += 75.0f; + } + sp20.z += 75.0f; + } +} + +void fn_1_7EB8(Vec *var_r26, float sp8, Vec *var_r27) +{ + Vec sp24; + Vec sp18; + Vec spC; + float var_f31; + float var_f30; + + s32 var_r31; + M421DllPlayerWork *work; + s32 var_r29; + s32 var_r28; + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + work = lbl_1_bss_48[var_r31]->data; + if ((work->unk_0C == 0) && work->unk_148) { + break; + } + } + sp24 = *var_r26; + sp24.y = 0.0f; + *var_r27 = sp24; + var_f30 = 100.0f; + sp18.y = 0.0f; + sp18.z = -750.0f; + var_r28 = 0; + for (var_r31 = 0; var_r31 < 0x15; var_r31++) { + sp18.x = -750.0f; + for (var_r29 = 0; var_r29 < 0x15; var_r29++, var_r28++) { + VECSubtract(&sp18, &sp24, &spC); + var_f31 = VECMag(&spC); + if (var_f31 <= sp8) { + var_f31 = 1.0f + (0.5f - (0.0005f * var_f31)); + var_f31 *= work->unk_148[var_r28]; + if (var_f31 < var_f30) { + var_f30 = var_f31; + *var_r27 = sp18; + } + } + sp18.x += 75.0f; + } + sp18.z += 75.0f; + } +} + +void fn_1_80C0(omObjData *var_r28) +{ + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + + M421DllPlayerWork *var_r30; + s32 var_r29; + + M421DllPlayerWork *var_r31 = var_r28->data; + if (var_r31->unk_0C != 0) { + if (var_r31->unk_24 == 0) { + switch (var_r31->unk_6C) { + case 0: + if (var_r31->unk_C0 == 3) { + var_r31->unk_6C = 3; + return; + } + var_r31->unk_6C = 2; + var_r31->unk_70 = 60.0f * (0.3f + (0.00040000002f * frandmod(0x3E8))); + if ((frandmod(0x410) < (1000.0f * (0.5f + (0.5f * var_r31->unk_68)))) || (var_r31->unk_3C != 0)) { + var_r31->unk_3C = 0; + var_r31->unk_6C = 1; + return; + } + break; + case 1: + var_f29 = lbl_1_data_2E8[var_r31->unk_C0]; + fn_1_7EB8(&var_r31->unk_CC, 1000.0f, &sp38); + VECSubtract(&sp38, &var_r31->unk_CC, &sp2C); + sp2C.y = 0.0f; + var_f31 = VECMag(&sp2C); + if (var_f31 < var_f29) { + var_r31->unk_1C = VECMag(&sp2C) / var_f29; + } + else { + var_r31->unk_1C = 1.0f; + } + var_r31->unk_18 = atan2d(sp2C.x, sp2C.z); + var_r31->unk_10 = 0x100; + return; + case 2: + if (var_r31->unk_70 != 0) { + var_r31->unk_70--; + return; + } + var_r31->unk_6C = 0; + return; + case 3: + if (var_r31->unk_C0 != 3) { + var_r31->unk_6C = 2; + var_r31->unk_70 = 60.0f * (0.0003f * frandmod(0x3E8)); + return; + } + break; + } + } + else { + var_r31->unk_6C = 0; + } + } + else { + var_f30 = 10000.0f; + if (var_r31->unk_74 == 0) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (var_r28->work[0] != lbl_1_bss_48[var_r29]->work[0]) { + var_r30 = lbl_1_bss_48[var_r29]->data; + if (var_r30->unk_38 == 0) { + if (var_r30->unk_24 != 0) { + VECScale(&var_r30->unk_D8, &sp20, 60.0f); + VECAdd(&var_r30->unk_CC, &sp20, &sp20); + } + else { + sp20 = var_r30->unk_CC; + } + sp20.y = 0.0f; + sp20.x += 100.0f * (0.5f * ((((2.0f * var_r31->unk_68) / 1000.0f) * frandmod(0x3E8)) - var_r31->unk_68)); + sp20.z += 100.0f * (0.5f * ((((2.0f * var_r31->unk_68) / 1000.0f) * frandmod(0x3E8)) - var_r31->unk_68)); + var_f31 = VECMag(&sp20); + if (var_f31 > (700.0f - (100.0f * (2.3f * var_r31->unk_68)))) { + var_f31 = (700.0f - (100.0f * (2.3f * var_r31->unk_68))) / var_f31; + VECScale(&sp20, &sp20, var_f31); + } + VECSubtract(&sp20, &var_r31->unk_CC, &sp14); + sp14.y = 0.0f; + var_f31 = VECMag(&sp14); + if (var_f30 > var_f31) { + var_r31->unk_FC = sp20; + var_f30 = var_f31; + } + } + } + } + var_r31->unk_74 = 60.0f * ((1.5f - var_r31->unk_68) + (0.0015f * frandmod(0x3E8))); + } + VECSubtract(&var_r31->unk_FC, &var_r31->unk_CC, &sp14); + sp8 = var_r31->unk_D8; + if (VECMag(&sp14)) { + VECNormalize(&sp14, &sp14); + } + if (VECMag(&sp8)) { + VECNormalize(&sp8, &sp8); + } + var_f31 = (0.5f + (0.5f * var_r31->unk_68)) * (1.0f - VECDotProduct(&sp14, &sp8)); + VECScale(&var_r31->unk_D8, &sp14, 60.0f * (2.0f * var_f31)); + VECAdd(&var_r31->unk_CC, &sp14, &sp14); + VECSubtract(&var_r31->unk_FC, &sp14, &sp20); + var_f30 = VECMag(&sp20); + var_r31->unk_18 = fn_1_4478(var_r31->unk_58, atan2d(sp20.x, sp20.z), 0.5f); + var_r31->unk_1C = 0.95f + (0.05f * var_r31->unk_68); + if ((var_f30 < 300.0f) && ((var_r31->unk_50 & 7) == 0) && (frandmod(0x514) < (1000.0f * var_r31->unk_68))) { + var_r31->unk_10 = 0x100; + } + var_r31->unk_74--; + if (var_f30 < 130.0f) { + var_r31->unk_74 = 0; + } + } +} + +void fn_1_893C(omObjData *object) +{ + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + + M421DllPlayerWork *var_r31; + M421DllPlayerWork *var_r30; + s32 var_r29; + s32 var_r28; + M421DllPlayerWork *var_r27; + M421DllPlayerWork *var_r26; + s32 var_r24; + s32 var_r23; + + if (lbl_1_bss_30 >= object->work[0]) { + for (var_r24 = 0; var_r24 < 4; var_r24++) { + for (var_r28 = 0; var_r28 < 4; var_r28++) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + var_r31 = lbl_1_bss_48[var_r29]->data; + if ((var_r31->unk_38 == 0) && (var_r31->unk_20 != 0)) { + var_r31->unk_F0 = var_r31->unk_CC; + var_r31->unk_F0.y += var_r31->unk_88; + } + } + var_r31 = lbl_1_bss_48[var_r28]->data; + if ((var_r31->unk_38 == 0) && (var_r31->unk_20 != 0)) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (var_r28 != var_r29) { + var_r30 = lbl_1_bss_48[var_r29]->data; + if ((var_r30->unk_38 == 0) && (var_r30->unk_20 != 0)) { + VECSubtract(&var_r31->unk_F0, &var_r30->unk_F0, &sp38); + var_f31 = VECMag(&sp38); + if (var_f31 < (var_r31->unk_88 + var_r30->unk_88)) { + if (var_f31 > 0.0f) { + var_f31 = 0.5f * ((var_r31->unk_88 + var_r30->unk_88) - var_f31); + } + else { + var_f31 = 0.5f * (var_r31->unk_88 + var_r30->unk_88); + sp38.x = frandmod(0x3E8) - 0.0005f; + sp38.y = 0.0f; + sp38.z = frandmod(0x3E8) - 0.0005f; + } + VECNormalize(&sp38, &sp38); + VECScale(&sp38, &sp38, var_f31); + VECAdd(&var_r31->unk_F0, &sp38, &var_r31->unk_F0); + VECSubtract(&var_r30->unk_F0, &sp38, &var_r30->unk_F0); + if ((var_r31->unk_0C == 0) && (var_r30->unk_0C != 0)) { + var_r30->unk_38 = 1; + } + else if ((var_r31->unk_0C != 0) && (var_r30->unk_0C == 0)) { + var_r31->unk_38 = 1; + } + } + } + } + } + for (var_r29 = 0; var_r29 < 4; var_r29++) { + var_r31 = lbl_1_bss_48[var_r29]->data; + if ((var_r31->unk_38 == 0) && (var_r31->unk_20 != 0)) { + var_r31->unk_CC = var_r31->unk_F0; + var_r31->unk_CC.y -= var_r31->unk_88; + } + } + var_r31 = lbl_1_bss_48[var_r28]->data; + if (var_r31->unk_24 != 0) { + if (var_r31->unk_CC.y < 0.0f) { + var_r31->unk_CC.y = 0.0f; + } + } + else { + var_r31->unk_CC.y = 0.0f; + } + sp38 = var_r31->unk_CC; + sp38.y = 0.0f; + var_f31 = VECMag(&sp38); + if (var_f31 > (750.0f - var_r31->unk_88)) { + var_f30 = (750.0f - var_r31->unk_88) / var_f31; + VECScale(&sp38, &sp38, var_f30); + var_r31->unk_CC.x = sp38.x; + var_r31->unk_CC.z = sp38.z; + } + } + } + } + for (var_r28 = 0; var_r28 < 4; var_r28++) { + var_r31 = lbl_1_bss_48[var_r28]->data; + if ((var_r31->unk_38 == 0) && (var_r31->unk_20 != 0) && (var_r31->unk_0C == 0)) { + sp38 = var_r31->unk_CC; + sp38.y = 0.0f; + var_f31 = VECMag(&sp38); + if (var_f31 >= (750.0f - var_r31->unk_88)) { + var_f31 = VECDotProduct(&var_r31->unk_D8, &sp38); + if (var_f31 > 0.0f) { + VECNormalize(&sp38, &sp38); + var_f31 = VECDotProduct(&var_r31->unk_D8, &sp38); + var_r31->unk_D8.x = 0.92f * (var_r31->unk_D8.x - (1.1f * (var_f31 * sp38.x))); + var_r31->unk_D8.z = 0.92f * (var_r31->unk_D8.z - (1.1f * (var_f31 * sp38.z))); + } + } + } + } + for (var_r28 = 0; var_r28 < 3; var_r28++) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + var_r31 = lbl_1_bss_48[var_r29]->data; + if ((var_r31->unk_38 == 0) && (var_r31->unk_20 != 0)) { + var_r31->unk_F0 = var_r31->unk_CC; + var_r31->unk_F0.y += var_r31->unk_88; + } + } + var_r31 = lbl_1_bss_48[var_r28]->data; + if ((var_r31->unk_38 == 0) && (var_r31->unk_20 != 0) && (var_r31->unk_0C != 0)) { + for (var_r29 = var_r28; var_r29 < 4; var_r29++) { + if (var_r28 != var_r29) { + var_r30 = lbl_1_bss_48[var_r29]->data; + if ((var_r30->unk_38 == 0) && (var_r30->unk_20 != 0) && (var_r30->unk_0C != 0)) { + var_r23 = 0; + var_f31 = VECMag(&var_r31->unk_D8); + var_f30 = VECMag(&var_r30->unk_D8); + if ((!(var_f31 <= 0.0f) && (var_r31->unk_24 != 0)) || (!(var_f30 <= 0.0f) && (var_r30->unk_24 != 0))) { + if (var_r31->unk_24 == 0) { + var_r27 = var_r30; + var_r26 = var_r31; + } + else if (var_r30->unk_24 == 0) { + var_r27 = var_r31; + var_r26 = var_r30; + } + else { + var_r23 = 1; + var_r27 = var_r31; + var_r26 = var_r30; + } + VECAdd(&var_r27->unk_F0, &var_r27->unk_D8, &sp14); + VECAdd(&var_r26->unk_F0, &var_r26->unk_D8, &sp8); + VECSubtract(&sp14, &sp8, &sp38); + var_f31 = VECMag(&sp38); + if ((var_f31 < (var_r27->unk_88 + var_r26->unk_88)) && (var_f31 > 0.0f)) { + VECNormalize(&sp38, &sp38); + if (var_r23 != 0) { + VECNormalize(&var_r27->unk_D8, &sp2C); + VECNormalize(&var_r26->unk_D8, &sp20); + var_f31 = -VECDotProduct(&sp2C, &sp38); + var_f30 = VECDotProduct(&sp20, &sp38); + } + else { + VECNormalize(&var_r27->unk_D8, &sp2C); + sp20.x = sp20.y = sp20.z = 0.0f; + var_f31 = -VECDotProduct(&sp2C, &sp38); + var_f30 = 0.0f; + } + if ((var_f31 > 0.01f) || (var_f31 > 0.01f)) { + var_f31 = VECDotProduct(&var_r27->unk_D8, &sp38); + var_f30 = VECDotProduct(&var_r26->unk_D8, &sp38); + sp14.x = var_r27->unk_D8.x - (var_f31 * sp38.x); + sp14.y = var_r27->unk_D8.y - (var_f31 * sp38.y); + sp14.z = var_r27->unk_D8.z - (var_f31 * sp38.z); + sp8.x = var_r26->unk_D8.x - (var_f30 * sp38.x); + sp8.y = var_r26->unk_D8.y - (var_f30 * sp38.y); + sp8.z = var_r26->unk_D8.z - (var_f30 * sp38.z); + if (var_r23 != 0) { + sp14.x += 0.5f * (var_f30 * sp38.x); + sp14.y += var_f30 * sp38.y; + sp14.z += 0.5f * (var_f30 * sp38.z); + sp8.x += 0.5f * (var_f31 * sp38.x); + sp8.y += var_f31 * sp38.y; + sp8.z += 0.5f * (var_f31 * sp38.z); + } + else { + sp14.x -= 0.5f * (var_f31 * sp38.x); + sp14.y -= var_f31 * sp38.y; + sp14.z -= 0.5f * (var_f31 * sp38.z); + } + var_r27->unk_D8 = sp14; + var_r26->unk_D8 = sp8; + } + } + } + } + } + } + } + } + } + else { + var_r31 = object->data; + if (var_r31->unk_38 == 0) { + if (var_r31->unk_CC.y < 0.0f) { + var_r31->unk_CC.y = 0.0f; + } + sp38 = var_r31->unk_CC; + sp38.y = 0.0f; + var_f31 = VECMag(&sp38); + if (var_f31 > (750.0f - var_r31->unk_88)) { + var_f30 = (750.0f - var_r31->unk_88) / var_f31; + VECScale(&sp38, &sp38, var_f30); + var_r31->unk_CC.x = sp38.x; + var_r31->unk_CC.z = sp38.z; + } + } + } + lbl_1_bss_30 = object->work[0]; +} + +void fn_1_9474(omObjData *object, Vec *arg1, Vec *arg2) +{ + Vec sp8; + float var_f31; + float var_f30; + + M421DllPlayerWork *work = object->data; + + sp8 = *arg1; + if (work->unk_38 == 0) { + var_f31 = VECMag(&sp8); + if (var_f31 > (750.0f - work->unk_88)) { + var_f30 = (750.0f - work->unk_88) / var_f31; + VECScale(&sp8, &sp8, var_f30); + } + } + *arg2 = sp8; +} + +void fn_1_956C(omObjData *object) +{ + Vec sp8; + float var_f31; + float var_f30; + + M421DllPlayerWork *var_r31; + M421DllPlayerWork *var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + for (var_r27 = 0; var_r27 < 2; var_r27++) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + var_r31 = lbl_1_bss_48[var_r29]->data; + if (var_r31->unk_38 == 0) { + for (var_r28 = 0; var_r28 < 4; var_r28++) { + if (var_r29 != var_r28) { + var_r30 = lbl_1_bss_48[var_r28]->data; + if (var_r30->unk_38 == 0) { + VECSubtract(&var_r31->unk_CC, &var_r30->unk_CC, &sp8); + sp8.y = 0.0f; + var_f31 = VECMag(&sp8); + if (var_f31 < (var_r31->unk_80 + var_r30->unk_80)) { + if (var_f31 > 0.0f) { + var_f31 = 0.5f * ((var_r31->unk_80 + var_r30->unk_80) - var_f31); + } + else { + var_f31 = 0.5f * (var_r31->unk_80 + var_r30->unk_80); + sp8.x = frandmod(0x3E8) - 0x1F4; + sp8.z = frandmod(0x3E8) - 0x1F4; + } + VECNormalize(&sp8, &sp8); + VECScale(&sp8, &sp8, var_f31); + VECAdd(&var_r31->unk_CC, &sp8, &var_r31->unk_CC); + VECSubtract(&var_r30->unk_CC, &sp8, &var_r30->unk_CC); + } + } + } + } + if (var_r31->unk_CC.y < 0.0f) { + var_r31->unk_CC.y = 0.0f; + } + sp8 = var_r31->unk_CC; + sp8.y = 0.0f; + var_f31 = VECMag(&sp8); + if (var_f31 > (750.0f - var_r31->unk_80)) { + var_f30 = (750.0f - var_r31->unk_80) / var_f31; + VECScale(&sp8, &sp8, var_f30); + var_r31->unk_CC.x = sp8.x; + var_r31->unk_CC.z = sp8.z; + } + } + } + } +} + +void fn_1_982C(omObjData *object, u32 arg1) +{ + + M421DllPlayerWork *work = object->data; + if ((work->unk_08 != arg1) && (arg1 < 6)) { + float var_f31 = 60.0f * lbl_1_data_1BC[arg1].unk_04; + if (work->unk_08 < 0) { + var_f31 = 0.0f; + } + work->unk_08 = arg1; + CharModelMotionShiftSet( + work->unk_00, object->motion[lbl_1_data_1BC[arg1].unk_00], 60.0f * lbl_1_data_1BC[arg1].unk_08, var_f31, lbl_1_data_1BC[arg1].unk_10); + if (lbl_1_data_1BC[arg1].unk_0C >= 0.0f) { + Hu3DMotionShiftStartEndSet(object->model[0], 60.0f * lbl_1_data_1BC[arg1].unk_08, 60.0f * lbl_1_data_1BC[arg1].unk_0C); + } + } +} + +s32 fn_1_99B8(omObjData *object) +{ + + M421DllPlayerWork *work = object->data; + s32 var_r30 = 0; + if ((CharModelMotionEndCheck(work->unk_00) != 0) && (CharModelMotionShiftIDGet(work->unk_00) < 0)) { + var_r30 = 1; + } + return var_r30; +} + +s32 fn_1_9A2C(omObjData *object, u32 arg1) +{ + s32 var_r27; + + var_r27 = 0; + if (fn_1_99B8(object)) { + fn_1_982C(object, arg1); + var_r27 = 1; + } + return var_r27; +} + +void fn_1_9BFC(float arg8, float arg9, float *arg0) +{ + arg0[0] = arg9; + arg0[1] = arg8; + arg0[3] = (2.0f * -arg8) / (arg9 * arg9); + arg0[2] = -arg0[3] * arg9; +} + +void fn_1_9C38(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + s32 var_r29; + + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + var_r31->unk2C += 2.0f; + var_r31->unk40.a *= 0.98f; + if (var_r31->unk00_s16 < 24.0f) { + var_r31->unk40.a = 0.9f * var_r31->unk40.a; + } + if (--var_r31->unk00_s16 == 0) { + var_r31->unk00 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + } + } + DCStoreRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_9DD0(omObjData *object, Vec *arg1) +{ + Vec sp18; + GXColor sp14; + u8 sp10[4]; + u8 spC[4]; + float var_f31; + float var_f30; + + HsfanimStruct01 *var_r31; + ParticleData *var_r30; + s32 var_r29; + M421DllPlayerWork *work; + u32 var_r26; + + work = object->data; + var_r30 = Hu3DData[object->model[4]].unk_120; + GWCharColorGet(work->unk_00, &sp14); + sp10[0] = 100.0f + (0.47058824f * sp14.r); + sp10[1] = 100.0f + (0.47058824f * sp14.g); + sp10[2] = 100.0f + (0.47058824f * sp14.b); + spC[0] = (220.0f + (0.13725491f * sp14.r)) - sp10[0]; + spC[1] = (220.0f + (0.13725491f * sp14.g)) - sp10[1]; + spC[2] = (220.0f + (0.13725491f * sp14.b)) - sp10[2]; + var_r26 = 0x64; + for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + continue; + } + var_r31->unk00_s16 = 60.0f * (0.6f + (0.0005f * frandmod(0x3E8))); + var_f31 = frandmod(0x168); + var_f30 = frandmod(0x168); + sp18.y = sind(var_f31); + var_f31 = cosd(var_f31); + sp18.x = var_f31 * sind(var_f30); + sp18.z = var_f31 * cosd(var_f30); + var_f31 = 120.00001f; + VECScale(&sp18, &sp18, var_f31); + VECAdd(&sp18, arg1, &var_r31->unk34); + var_r31->unk08.x = 0.016666668f * (0.5f * sp18.x); + var_r31->unk08.y = 5.0f + (0.016666668f * (0.5f * sp18.y)); + var_r31->unk08.z = 0.016666668f * (0.5f * sp18.z); + var_r31->unk30 = 0.0031415902f * frandmod(0x3E8); + var_f31 = 0.001f * frandmod(0x3E8); + var_r31->unk2C = 80.0f + (220.0f * var_f31); + var_r31->unk40.a = 100.0f + (100.0f * (1.0f - var_f31)); + var_r31->unk40.r = sp10[0] + (spC[0] * var_f31); + var_r31->unk40.g = sp10[1] + (spC[1] * var_f31); + var_r31->unk40.b = sp10[2] + (spC[2] * var_f31); + if (--var_r26 < 1) { + break; + } + } +} + +void fn_1_A528(omObjData *object) +{ + M421DllPlayerDLWork *work; + s32 i; + + object->stat |= 0x100; + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M421DllPlayerDLWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M421DllPlayerDLWork)); + work->unk_2F0 = GXGetTexBufferSize(0x280, 0x1E0, 5, 0, 0); + work->unk_2F4 = HuMemDirectMallocNum(HEAP_SYSTEM, work->unk_2F0, MEMORY_DEFAULT_NUM); + DCFlushRange(work->unk_2F4, work->unk_2F0); + for (i = 0; i < 4; i++) { + work->unk_40[i].r = work->unk_40[i].g = work->unk_40[i].b = 0xFF; + } + work->unk_40[0].a = 0x40; + work->unk_40[1].a = 0; + work->unk_40[2].a = 0xFF; + work->unk_40[3].a = 0; + for (i = 0; i < 4; i++) { + work->unk_50[i][0].x = work->unk_50[i][0].y = work->unk_50[i][0].z = 0.0f; + } + for (i = 1; i < 0xE; i++) { + work->unk_50[0][i].x = 100.0 * (1.7999999523162842 * sind((30.0f * i))); + work->unk_50[0][i].y = 100.0 * (1.7999999523162842 * cosd((30.0f * i))); + work->unk_50[0][i].z = 0.0f; + work->unk_50[1][i].x = 100.0 * (2.0 * cosd((30.0f * i))); + work->unk_50[1][i].y = 0.0f; + work->unk_50[1][i].z = 100.0 * (2.0 * sind((30.0f * i))); + work->unk_50[2][i].x = 100.0 * sind((30.0f * i)); + work->unk_50[2][i].y = 100.0 * (1.2000000476837158 * cosd((30.0f * i))); + work->unk_50[2][i].z = 0.0f; + work->unk_50[3][i].x = 100.0 * sind((30.0f * i)); + work->unk_50[3][i].y = 0.0f; + work->unk_50[3][i].z = 100.0 * cosd((30.0f * i)); + } + DCStoreRangeNoSync(work->unk_40, sizeof(work->unk_40)); + DCStoreRangeNoSync(work->unk_50, sizeof(work->unk_50)); + PPCSync(); + object->model[0] = Hu3DHookFuncCreate(fn_1_AB6C); + Hu3DModelLayerSet(object->model[0], 4); + object->model[1] = Hu3DHookFuncCreate(fn_1_ABDC); + Hu3DModelLayerSet(object->model[1], 6); + object->func = fn_1_AB68; +} + +void fn_1_AB68(omObjData *object) { } + +void fn_1_AB6C(ModelData *model, Mtx matrix) +{ + M421DllPlayerDLWork *work = lbl_1_bss_44->data; + GXPixModeSync(); + GXSetTexCopySrc(0, 0, 0x280, 0x1E0); + GXSetTexCopyDst(0x280, 0x1E0, GX_TF_RGB5A3, GX_FALSE); + GXCopyTex(work->unk_2F4, GX_FALSE); + GXPixModeSync(); +} + +void fn_1_ABDC(ModelData *model, Mtx matrix) +{ + Mtx sp118; + Mtx spE8; + Mtx spB8; + Mtx sp88; + Mtx sp58; + Mtx sp28; + GXTexObj sp8; + + M421DllPlayerDLWork *work; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + work = lbl_1_bss_44->data; + MTXTrans(spE8, -400.0f, 400.0f, -700.0f); + MTXConcat(Hu3DCameraMtx, spE8, sp88); + GXLoadPosMtxImm(sp88, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + GXInitTexObj(&sp8, work->unk_2F4, 0x280, 0x1E0, 5, GX_CLAMP, GX_CLAMP, GX_FALSE); + GXInitTexObjLOD(&sp8, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); + GXLoadTexObj(&sp8, GX_TEXMAP0); + GXSetNumTexGens(1); + C_MTXLightPerspective(spB8, 41.5f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); + MTXConcat(spB8, Hu3DCameraMtx, spB8); + MTXInverse(Hu3DCameraMtx, sp58); + MTXConcat(sp58, sp88, sp118); + MTXConcat(spB8, sp118, spE8); + GXLoadTexMtxImm(spE8, 0x1E, GX_MTX3x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 0x1E, 0, 0x7D); + MTXInverse(Hu3DCameraMtx, sp28); + sp28[0][3] = sp28[1][3] = sp28[2][3] = 0.0f; + GXSetNumTevStages(1); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_TEXC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_FALSE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_RASA); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_FALSE, GX_TEVPREV); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_SET); + GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + for (var_r30 = 0; var_r30 < 4; var_r30++) { + work->unk_00[var_r30] = ((M421DllPlayerWork *)lbl_1_bss_48[var_r30]->data)->unk_F0; + if (work->unk_30[var_r30] == 2) { + var_r27 = 2; + } + else { + var_r27 = 0; + } + var_r28 = var_r27; + MTXTrans(spE8, work->unk_00[var_r30].x, work->unk_00[var_r30].y, work->unk_00[var_r30].z); + MTXConcat(spE8, sp28, spE8); + MTXConcat(Hu3DCameraMtx, spE8, sp88); + GXLoadPosMtxImm(sp88, 0); + MTXConcat(sp58, sp88, sp118); + MTXConcat(spB8, sp118, spE8); + GXLoadTexMtxImm(spE8, 0x1E, GX_MTX3x4); + GXSetArray(GX_VA_POS, work->unk_50[var_r28], 0xC); + GXSetArray(GX_VA_CLR0, &work->unk_40[var_r28], 4); + GXBegin(GX_TRIANGLEFAN, GX_VTXFMT0, 0xE); + GXPosition1x8(0); + GXPosition1x8(0); + for (var_r29 = 1; var_r29 < 0xE; var_r29++) { + GXColor1x8(var_r29); + GXColor1x8(1); + } + MTXTrans(spE8, work->unk_00[var_r30].x, 0.0f, work->unk_00[var_r30].z); + MTXConcat(Hu3DCameraMtx, spE8, sp88); + GXLoadPosMtxImm(sp88, 0); + MTXConcat(sp58, sp88, sp118); + MTXConcat(spB8, sp118, spE8); + GXLoadTexMtxImm(spE8, 0x1E, GX_MTX3x4); + GXSetArray(GX_VA_POS, work->unk_50[var_r28 + 1], 0xC); + GXSetArray(GX_VA_CLR0, &work->unk_40[var_r28], 4); + GXBegin(GX_TRIANGLEFAN, GX_VTXFMT0, 0xE); + GXPosition1x8(0); + GXPosition1x8(0); + for (var_r29 = 1; var_r29 < 0xE; var_r29++) { + GXColor1x8(var_r29); + GXColor1x8(1); + } + } +} From f3d073553f3aa61a4501e82e799c27d9ffe335a5 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Fri, 15 Nov 2024 16:34:55 +0100 Subject: [PATCH 036/178] Initial analysis for the Japanese version --- config/GMPJ01_00/build.sha1 | 100 + config/GMPJ01_00/config.yml | 509 + config/GMPJ01_00/rels/E3setupDLL/splits.txt | 7 + config/GMPJ01_00/rels/E3setupDLL/symbols.txt | 192 + config/GMPJ01_00/rels/_minigameDll/splits.txt | 6 + .../GMPJ01_00/rels/_minigameDll/symbols.txt | 7 + config/GMPJ01_00/rels/bootDll/splits.txt | 7 + config/GMPJ01_00/rels/bootDll/symbols.txt | 67 + config/GMPJ01_00/rels/instDll/splits.txt | 7 + config/GMPJ01_00/rels/instDll/symbols.txt | 149 + config/GMPJ01_00/rels/m300Dll/splits.txt | 3 + config/GMPJ01_00/rels/m300Dll/symbols.txt | 2 + config/GMPJ01_00/rels/m302Dll/splits.txt | 3 + config/GMPJ01_00/rels/m302Dll/symbols.txt | 2 + config/GMPJ01_00/rels/m303Dll/splits.txt | 3 + config/GMPJ01_00/rels/m303Dll/symbols.txt | 2 + config/GMPJ01_00/rels/m330Dll/splits.txt | 3 + config/GMPJ01_00/rels/m330Dll/symbols.txt | 2 + config/GMPJ01_00/rels/m333Dll/splits.txt | 3 + config/GMPJ01_00/rels/m333Dll/symbols.txt | 2 + config/GMPJ01_00/rels/m401Dll/splits.txt | 7 + config/GMPJ01_00/rels/m401Dll/symbols.txt | 522 + config/GMPJ01_00/rels/m402Dll/splits.txt | 7 + config/GMPJ01_00/rels/m402Dll/symbols.txt | 204 + config/GMPJ01_00/rels/m403Dll/splits.txt | 7 + config/GMPJ01_00/rels/m403Dll/symbols.txt | 256 + config/GMPJ01_00/rels/m404Dll/splits.txt | 7 + config/GMPJ01_00/rels/m404Dll/symbols.txt | 154 + config/GMPJ01_00/rels/m405Dll/splits.txt | 7 + config/GMPJ01_00/rels/m405Dll/symbols.txt | 254 + config/GMPJ01_00/rels/m406Dll/splits.txt | 7 + config/GMPJ01_00/rels/m406Dll/symbols.txt | 434 + config/GMPJ01_00/rels/m407dll/splits.txt | 7 + config/GMPJ01_00/rels/m407dll/symbols.txt | 271 + config/GMPJ01_00/rels/m408Dll/splits.txt | 7 + config/GMPJ01_00/rels/m408Dll/symbols.txt | 549 ++ config/GMPJ01_00/rels/m409Dll/splits.txt | 7 + config/GMPJ01_00/rels/m409Dll/symbols.txt | 332 + config/GMPJ01_00/rels/m410Dll/splits.txt | 7 + config/GMPJ01_00/rels/m410Dll/symbols.txt | 317 + config/GMPJ01_00/rels/m411Dll/splits.txt | 7 + config/GMPJ01_00/rels/m411Dll/symbols.txt | 278 + config/GMPJ01_00/rels/m412Dll/splits.txt | 7 + config/GMPJ01_00/rels/m412Dll/symbols.txt | 190 + config/GMPJ01_00/rels/m413Dll/splits.txt | 7 + config/GMPJ01_00/rels/m413Dll/symbols.txt | 210 + config/GMPJ01_00/rels/m414Dll/splits.txt | 7 + config/GMPJ01_00/rels/m414Dll/symbols.txt | 183 + config/GMPJ01_00/rels/m415Dll/splits.txt | 7 + config/GMPJ01_00/rels/m415Dll/symbols.txt | 234 + config/GMPJ01_00/rels/m416Dll/splits.txt | 7 + config/GMPJ01_00/rels/m416Dll/symbols.txt | 209 + config/GMPJ01_00/rels/m417Dll/splits.txt | 7 + config/GMPJ01_00/rels/m417Dll/symbols.txt | 366 + config/GMPJ01_00/rels/m418Dll/splits.txt | 7 + config/GMPJ01_00/rels/m418Dll/symbols.txt | 303 + config/GMPJ01_00/rels/m419Dll/splits.txt | 7 + config/GMPJ01_00/rels/m419Dll/symbols.txt | 184 + config/GMPJ01_00/rels/m420dll/splits.txt | 7 + config/GMPJ01_00/rels/m420dll/symbols.txt | 249 + config/GMPJ01_00/rels/m421Dll/splits.txt | 7 + config/GMPJ01_00/rels/m421Dll/symbols.txt | 277 + config/GMPJ01_00/rels/m422Dll/splits.txt | 7 + config/GMPJ01_00/rels/m422Dll/symbols.txt | 249 + config/GMPJ01_00/rels/m423Dll/splits.txt | 7 + config/GMPJ01_00/rels/m423Dll/symbols.txt | 367 + config/GMPJ01_00/rels/m424Dll/splits.txt | 7 + config/GMPJ01_00/rels/m424Dll/symbols.txt | 315 + config/GMPJ01_00/rels/m425Dll/splits.txt | 7 + config/GMPJ01_00/rels/m425Dll/symbols.txt | 299 + config/GMPJ01_00/rels/m426Dll/splits.txt | 7 + config/GMPJ01_00/rels/m426Dll/symbols.txt | 224 + config/GMPJ01_00/rels/m427Dll/splits.txt | 7 + config/GMPJ01_00/rels/m427Dll/symbols.txt | 437 + config/GMPJ01_00/rels/m428Dll/splits.txt | 7 + config/GMPJ01_00/rels/m428Dll/symbols.txt | 409 + config/GMPJ01_00/rels/m429Dll/splits.txt | 7 + config/GMPJ01_00/rels/m429Dll/symbols.txt | 316 + config/GMPJ01_00/rels/m430Dll/splits.txt | 7 + config/GMPJ01_00/rels/m430Dll/symbols.txt | 492 + config/GMPJ01_00/rels/m431Dll/splits.txt | 7 + config/GMPJ01_00/rels/m431Dll/symbols.txt | 252 + config/GMPJ01_00/rels/m432Dll/splits.txt | 7 + config/GMPJ01_00/rels/m432Dll/symbols.txt | 359 + config/GMPJ01_00/rels/m433Dll/splits.txt | 7 + config/GMPJ01_00/rels/m433Dll/symbols.txt | 472 + config/GMPJ01_00/rels/m434Dll/splits.txt | 7 + config/GMPJ01_00/rels/m434Dll/symbols.txt | 337 + config/GMPJ01_00/rels/m435Dll/splits.txt | 7 + config/GMPJ01_00/rels/m435Dll/symbols.txt | 471 + config/GMPJ01_00/rels/m436Dll/splits.txt | 7 + config/GMPJ01_00/rels/m436Dll/symbols.txt | 352 + config/GMPJ01_00/rels/m437Dll/splits.txt | 7 + config/GMPJ01_00/rels/m437Dll/symbols.txt | 411 + config/GMPJ01_00/rels/m438Dll/splits.txt | 7 + config/GMPJ01_00/rels/m438Dll/symbols.txt | 462 + config/GMPJ01_00/rels/m439Dll/splits.txt | 7 + config/GMPJ01_00/rels/m439Dll/symbols.txt | 325 + config/GMPJ01_00/rels/m440Dll/splits.txt | 7 + config/GMPJ01_00/rels/m440Dll/symbols.txt | 288 + config/GMPJ01_00/rels/m441Dll/splits.txt | 7 + config/GMPJ01_00/rels/m441Dll/symbols.txt | 224 + config/GMPJ01_00/rels/m442Dll/splits.txt | 7 + config/GMPJ01_00/rels/m442Dll/symbols.txt | 225 + config/GMPJ01_00/rels/m443Dll/splits.txt | 7 + config/GMPJ01_00/rels/m443Dll/symbols.txt | 330 + config/GMPJ01_00/rels/m444dll/splits.txt | 7 + config/GMPJ01_00/rels/m444dll/symbols.txt | 320 + config/GMPJ01_00/rels/m445Dll/splits.txt | 7 + config/GMPJ01_00/rels/m445Dll/symbols.txt | 173 + config/GMPJ01_00/rels/m446dll/splits.txt | 7 + config/GMPJ01_00/rels/m446dll/symbols.txt | 305 + config/GMPJ01_00/rels/m447dll/splits.txt | 7 + config/GMPJ01_00/rels/m447dll/symbols.txt | 309 + config/GMPJ01_00/rels/m448Dll/splits.txt | 7 + config/GMPJ01_00/rels/m448Dll/symbols.txt | 200 + config/GMPJ01_00/rels/m449Dll/splits.txt | 7 + config/GMPJ01_00/rels/m449Dll/symbols.txt | 210 + config/GMPJ01_00/rels/m450Dll/splits.txt | 7 + config/GMPJ01_00/rels/m450Dll/symbols.txt | 558 ++ config/GMPJ01_00/rels/m451Dll/splits.txt | 7 + config/GMPJ01_00/rels/m451Dll/symbols.txt | 217 + config/GMPJ01_00/rels/m453Dll/splits.txt | 7 + config/GMPJ01_00/rels/m453Dll/symbols.txt | 279 + config/GMPJ01_00/rels/m455Dll/splits.txt | 7 + config/GMPJ01_00/rels/m455Dll/symbols.txt | 290 + config/GMPJ01_00/rels/m456Dll/splits.txt | 7 + config/GMPJ01_00/rels/m456Dll/symbols.txt | 282 + config/GMPJ01_00/rels/m457Dll/splits.txt | 7 + config/GMPJ01_00/rels/m457Dll/symbols.txt | 178 + config/GMPJ01_00/rels/m458Dll/splits.txt | 7 + config/GMPJ01_00/rels/m458Dll/symbols.txt | 176 + config/GMPJ01_00/rels/m459dll/splits.txt | 7 + config/GMPJ01_00/rels/m459dll/symbols.txt | 169 + config/GMPJ01_00/rels/m460Dll/splits.txt | 7 + config/GMPJ01_00/rels/m460Dll/symbols.txt | 301 + config/GMPJ01_00/rels/m461Dll/splits.txt | 7 + config/GMPJ01_00/rels/m461Dll/symbols.txt | 224 + config/GMPJ01_00/rels/m462Dll/splits.txt | 7 + config/GMPJ01_00/rels/m462Dll/symbols.txt | 144 + config/GMPJ01_00/rels/m463Dll/splits.txt | 7 + config/GMPJ01_00/rels/m463Dll/symbols.txt | 164 + config/GMPJ01_00/rels/mentDll/splits.txt | 7 + config/GMPJ01_00/rels/mentDll/symbols.txt | 442 + config/GMPJ01_00/rels/mgmodedll/splits.txt | 7 + config/GMPJ01_00/rels/mgmodedll/symbols.txt | 583 ++ config/GMPJ01_00/rels/modeltestDll/splits.txt | 7 + .../GMPJ01_00/rels/modeltestDll/symbols.txt | 230 + config/GMPJ01_00/rels/modeseldll/splits.txt | 7 + config/GMPJ01_00/rels/modeseldll/symbols.txt | 270 + config/GMPJ01_00/rels/movieDll/splits.txt | 7 + config/GMPJ01_00/rels/movieDll/symbols.txt | 51 + config/GMPJ01_00/rels/mpexDll/splits.txt | 7 + config/GMPJ01_00/rels/mpexDll/symbols.txt | 474 + config/GMPJ01_00/rels/msetupDll/splits.txt | 3 + config/GMPJ01_00/rels/msetupDll/symbols.txt | 2 + config/GMPJ01_00/rels/mstory2Dll/splits.txt | 7 + config/GMPJ01_00/rels/mstory2Dll/symbols.txt | 709 ++ config/GMPJ01_00/rels/mstory3Dll/splits.txt | 7 + config/GMPJ01_00/rels/mstory3Dll/symbols.txt | 549 ++ config/GMPJ01_00/rels/mstory4Dll/splits.txt | 7 + config/GMPJ01_00/rels/mstory4Dll/symbols.txt | 65 + config/GMPJ01_00/rels/mstoryDll/splits.txt | 7 + config/GMPJ01_00/rels/mstoryDll/symbols.txt | 498 + config/GMPJ01_00/rels/nisDll/splits.txt | 5 + config/GMPJ01_00/rels/nisDll/symbols.txt | 6 + config/GMPJ01_00/rels/option/splits.txt | 7 + config/GMPJ01_00/rels/option/symbols.txt | 380 + config/GMPJ01_00/rels/present/splits.txt | 7 + config/GMPJ01_00/rels/present/symbols.txt | 189 + config/GMPJ01_00/rels/resultDll/splits.txt | 7 + config/GMPJ01_00/rels/resultDll/symbols.txt | 203 + config/GMPJ01_00/rels/safDll/splits.txt | 7 + config/GMPJ01_00/rels/safDll/symbols.txt | 131 + config/GMPJ01_00/rels/selmenuDll/splits.txt | 7 + config/GMPJ01_00/rels/selmenuDll/symbols.txt | 201 + config/GMPJ01_00/rels/staffDll/splits.txt | 7 + config/GMPJ01_00/rels/staffDll/symbols.txt | 54 + config/GMPJ01_00/rels/subchrselDll/splits.txt | 7 + .../GMPJ01_00/rels/subchrselDll/symbols.txt | 33 + config/GMPJ01_00/rels/w01Dll/splits.txt | 7 + config/GMPJ01_00/rels/w01Dll/symbols.txt | 469 + config/GMPJ01_00/rels/w02Dll/splits.txt | 7 + config/GMPJ01_00/rels/w02Dll/symbols.txt | 456 + config/GMPJ01_00/rels/w03Dll/splits.txt | 7 + config/GMPJ01_00/rels/w03Dll/symbols.txt | 443 + config/GMPJ01_00/rels/w04Dll/splits.txt | 7 + config/GMPJ01_00/rels/w04Dll/symbols.txt | 451 + config/GMPJ01_00/rels/w05Dll/splits.txt | 7 + config/GMPJ01_00/rels/w05Dll/symbols.txt | 356 + config/GMPJ01_00/rels/w06Dll/splits.txt | 7 + config/GMPJ01_00/rels/w06Dll/symbols.txt | 373 + config/GMPJ01_00/rels/w10Dll/splits.txt | 7 + config/GMPJ01_00/rels/w10Dll/symbols.txt | 114 + config/GMPJ01_00/rels/w20Dll/splits.txt | 7 + config/GMPJ01_00/rels/w20Dll/symbols.txt | 27 + config/GMPJ01_00/rels/w21Dll/splits.txt | 6 + config/GMPJ01_00/rels/w21Dll/symbols.txt | 18 + config/GMPJ01_00/rels/ztardll/splits.txt | 7 + config/GMPJ01_00/rels/ztardll/symbols.txt | 257 + config/GMPJ01_00/splits.txt | 14 + config/GMPJ01_00/symbols.txt | 8529 +++++++++++++++++ configure.py | 363 +- 203 files changed, 36549 insertions(+), 181 deletions(-) create mode 100644 config/GMPJ01_00/build.sha1 create mode 100644 config/GMPJ01_00/config.yml create mode 100644 config/GMPJ01_00/rels/E3setupDLL/splits.txt create mode 100644 config/GMPJ01_00/rels/E3setupDLL/symbols.txt create mode 100644 config/GMPJ01_00/rels/_minigameDll/splits.txt create mode 100644 config/GMPJ01_00/rels/_minigameDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/bootDll/splits.txt create mode 100644 config/GMPJ01_00/rels/bootDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/instDll/splits.txt create mode 100644 config/GMPJ01_00/rels/instDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m300Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m300Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m302Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m302Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m303Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m303Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m330Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m330Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m333Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m333Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m401Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m401Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m402Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m402Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m403Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m403Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m404Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m404Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m405Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m405Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m406Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m406Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m407dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m407dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m408Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m408Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m409Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m409Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m410Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m410Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m411Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m411Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m412Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m412Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m413Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m413Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m414Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m414Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m415Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m415Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m416Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m416Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m417Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m417Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m418Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m418Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m419Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m419Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m420dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m420dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m421Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m421Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m422Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m422Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m423Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m423Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m424Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m424Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m425Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m425Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m426Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m426Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m427Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m427Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m428Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m428Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m429Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m429Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m430Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m430Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m431Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m431Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m432Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m432Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m433Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m433Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m434Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m434Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m435Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m435Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m436Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m436Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m437Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m437Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m438Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m438Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m439Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m439Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m440Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m440Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m441Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m441Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m442Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m442Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m443Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m443Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m444dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m444dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m445Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m445Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m446dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m446dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m447dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m447dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m448Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m448Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m449Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m449Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m450Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m450Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m451Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m451Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m453Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m453Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m455Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m455Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m456Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m456Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m457Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m457Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m458Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m458Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m459dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m459dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m460Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m460Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m461Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m461Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m462Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m462Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/m463Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/m463Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/mentDll/splits.txt create mode 100644 config/GMPJ01_00/rels/mentDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/mgmodedll/splits.txt create mode 100644 config/GMPJ01_00/rels/mgmodedll/symbols.txt create mode 100644 config/GMPJ01_00/rels/modeltestDll/splits.txt create mode 100644 config/GMPJ01_00/rels/modeltestDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/modeseldll/splits.txt create mode 100644 config/GMPJ01_00/rels/modeseldll/symbols.txt create mode 100644 config/GMPJ01_00/rels/movieDll/splits.txt create mode 100644 config/GMPJ01_00/rels/movieDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/mpexDll/splits.txt create mode 100644 config/GMPJ01_00/rels/mpexDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/msetupDll/splits.txt create mode 100644 config/GMPJ01_00/rels/msetupDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/mstory2Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/mstory2Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/mstory3Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/mstory3Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/mstory4Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/mstory4Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/mstoryDll/splits.txt create mode 100644 config/GMPJ01_00/rels/mstoryDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/nisDll/splits.txt create mode 100644 config/GMPJ01_00/rels/nisDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/option/splits.txt create mode 100644 config/GMPJ01_00/rels/option/symbols.txt create mode 100644 config/GMPJ01_00/rels/present/splits.txt create mode 100644 config/GMPJ01_00/rels/present/symbols.txt create mode 100644 config/GMPJ01_00/rels/resultDll/splits.txt create mode 100644 config/GMPJ01_00/rels/resultDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/safDll/splits.txt create mode 100644 config/GMPJ01_00/rels/safDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/selmenuDll/splits.txt create mode 100644 config/GMPJ01_00/rels/selmenuDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/staffDll/splits.txt create mode 100644 config/GMPJ01_00/rels/staffDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/subchrselDll/splits.txt create mode 100644 config/GMPJ01_00/rels/subchrselDll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w01Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w01Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w02Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w02Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w03Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w03Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w04Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w04Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w05Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w05Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w06Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w06Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w10Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w10Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w20Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w20Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/w21Dll/splits.txt create mode 100644 config/GMPJ01_00/rels/w21Dll/symbols.txt create mode 100644 config/GMPJ01_00/rels/ztardll/splits.txt create mode 100644 config/GMPJ01_00/rels/ztardll/symbols.txt create mode 100644 config/GMPJ01_00/splits.txt create mode 100644 config/GMPJ01_00/symbols.txt diff --git a/config/GMPJ01_00/build.sha1 b/config/GMPJ01_00/build.sha1 new file mode 100644 index 00000000..c9f5f735 --- /dev/null +++ b/config/GMPJ01_00/build.sha1 @@ -0,0 +1,100 @@ +abe951fa239e7cb5de67e1ac091cfbc14010d6e0 build/GMPJ01_00/main.dol +164e5e0bec4e1fbf068a158b00a62bd2a4124fb1 build/GMPJ01_00/_minigameDll/_minigameDll.rel +214a6992eabf31e8a202833c8f6e4da4e553ceb5 build/GMPJ01_00/bootDll/bootDll.rel +bd08e86c8b36eaa84319a8c41030afc769058983 build/GMPJ01_00/instDll/instDll.rel +803dcd1192a06ea975d04234bc6ea29a8852a3f5 build/GMPJ01_00/m302Dll/m302Dll.rel +803dcd1192a06ea975d04234bc6ea29a8852a3f5 build/GMPJ01_00/m303Dll/m303Dll.rel +803dcd1192a06ea975d04234bc6ea29a8852a3f5 build/GMPJ01_00/m330Dll/m330Dll.rel +803dcd1192a06ea975d04234bc6ea29a8852a3f5 build/GMPJ01_00/m333Dll/m333Dll.rel +fc2f898e5da6e17e2bb4a5b1efa6344dc210ed19 build/GMPJ01_00/m402Dll/m402Dll.rel +f6346c570fb659d8098f55a8f15b54ab96393019 build/GMPJ01_00/m403Dll/m403Dll.rel +404b9558c0a1b0ac728afe9e827604e0d606a8e1 build/GMPJ01_00/m404Dll/m404Dll.rel +a5ab650f706128955ee2bc7a068813097b9c31c0 build/GMPJ01_00/m405Dll/m405Dll.rel +90ab2775e7e60d07bcb2bc4879e2c2e4ef95a721 build/GMPJ01_00/m406Dll/m406Dll.rel +efe1a502cd82f22572f1e56992be2cf7a9c27cbb build/GMPJ01_00/m407dll/m407dll.rel +2206fa17d24e900079543ac9d4c48ad405d8e55f build/GMPJ01_00/m408Dll/m408Dll.rel +7edd8e77b69db00378c14b2130b9d3692841b8d1 build/GMPJ01_00/m409Dll/m409Dll.rel +8d6dd949a706594ad6bbc5d2447072a3519b087c build/GMPJ01_00/m410Dll/m410Dll.rel +8cbdc67b341232955341a2f9193128483f3d2325 build/GMPJ01_00/m411Dll/m411Dll.rel +952cd93f9dca7282ffe4a162e773a93249e39c6e build/GMPJ01_00/m412Dll/m412Dll.rel +bb130095d6045dc761b3dcd70307c8de12946e95 build/GMPJ01_00/m413Dll/m413Dll.rel +f75c13865a8508024bb6c4ba215293e02ac4029a build/GMPJ01_00/m414Dll/m414Dll.rel +9c90fbfaa45e838dcf0d06f1d8930c4ebfb346d6 build/GMPJ01_00/m415Dll/m415Dll.rel +fb6e0bd126678c5611d4b805697804edd5a3bbb4 build/GMPJ01_00/m416Dll/m416Dll.rel +3d1a40d456dab6fc4058bee79d0b9556ec69da5b build/GMPJ01_00/m417Dll/m417Dll.rel +c545db0be0b14179586b0b7e3f29ffa68f30a4a2 build/GMPJ01_00/m418Dll/m418Dll.rel +eac3a130a36057c156b3527ff464cd29e5f89b34 build/GMPJ01_00/m419Dll/m419Dll.rel +f5f355eb7e0884478ce8d353bd7f39a3d270f22f build/GMPJ01_00/m420dll/m420dll.rel +5e199b4773791122284125afa07e094edff53ea2 build/GMPJ01_00/m421Dll/m421Dll.rel +bc3cc80aafb1d4e3f80e746f275fd5d69b251a98 build/GMPJ01_00/m422Dll/m422Dll.rel +e4220010e147160fcd683e4f75f668a2a278545d build/GMPJ01_00/m423Dll/m423Dll.rel +6007eaeb00271006355018faf4c45cdb6bea9462 build/GMPJ01_00/m424Dll/m424Dll.rel +78b12773afcf2c5d7f5f3437d0f8f46d9ee2fb6c build/GMPJ01_00/m425Dll/m425Dll.rel +646a30f82b46f522b154da1441c633a6344bcb4e build/GMPJ01_00/m426Dll/m426Dll.rel +d1775769482dcca5335b715423c7937cc90c11ff build/GMPJ01_00/m427Dll/m427Dll.rel +3a429bc7c87646735dd0221938162031e8e8eb18 build/GMPJ01_00/m428Dll/m428Dll.rel +5c73605a373af413cbdde7ab014697dbf74d73c5 build/GMPJ01_00/m429Dll/m429Dll.rel +5b7bee635458a6faa467e32387774a1c755842c2 build/GMPJ01_00/m430Dll/m430Dll.rel +d838e4d9378ce9d70cec9ba87f585340755b3978 build/GMPJ01_00/m431Dll/m431Dll.rel +84429fff6278ce44615d859220b04bee048aab32 build/GMPJ01_00/m432Dll/m432Dll.rel +f56e9cc895578b9ff8cf57f54fa7af35459bb353 build/GMPJ01_00/m433Dll/m433Dll.rel +cd3135998d2703af72e9c547cf2ecdff8dfddb12 build/GMPJ01_00/m434Dll/m434Dll.rel +bd3a81c1b4eb44503bc81d30412c9a9ebf646f09 build/GMPJ01_00/m435Dll/m435Dll.rel +43b55269820dba54ba5afb2cbdeeb889b4a3908f build/GMPJ01_00/m436Dll/m436Dll.rel +9c5711c7354f0b0e1811aae39d63ae3a1ab1d8fc build/GMPJ01_00/m437Dll/m437Dll.rel +eff0920fd6695a4886e531477fe845ebab9fa58c build/GMPJ01_00/m438Dll/m438Dll.rel +a69d462dff8ed14565de09fdf9ea25811a07e760 build/GMPJ01_00/m439Dll/m439Dll.rel +b131837b247ab12b0a0eedc24524b4b7078fe3df build/GMPJ01_00/m440Dll/m440Dll.rel +50290b2b7216b6e1c873d2140371cd01d318e96d build/GMPJ01_00/m441Dll/m441Dll.rel +86d546fc4345975773057465c0ded6f001cbf3f7 build/GMPJ01_00/m442Dll/m442Dll.rel +8625605a1198477a21f7540151822bba638ba56f build/GMPJ01_00/m443Dll/m443Dll.rel +1a9e6e528ccc38315650fe86c607a51f7bbca22e build/GMPJ01_00/m444dll/m444dll.rel +1dceaf7e6a3b550eeba10b1f88b1f77df67d77d4 build/GMPJ01_00/m445Dll/m445Dll.rel +bb9b17127b6d3e7c42f7c198c4b58d73dc6ead04 build/GMPJ01_00/m446dll/m446dll.rel +dcb78f18f4b2de862532b0557a093bf0e7ac2a3f build/GMPJ01_00/m447dll/m447dll.rel +7a9b438e699ee4c960438e60f08f6a3f10a6847f build/GMPJ01_00/m448Dll/m448Dll.rel +2511aaea175c454025b25e6f873991f643517afa build/GMPJ01_00/m449Dll/m449Dll.rel +b9bed4dffcb4447b1cf83dc7be8dfb4e04ba6908 build/GMPJ01_00/m450Dll/m450Dll.rel +30b1fcd7438cbc70bd78b0a68d58b5c4dc7dfc1f build/GMPJ01_00/m451Dll/m451Dll.rel +4726a8d2fe900e5fd3a1fe747e53d9d8bd533c4d build/GMPJ01_00/m453Dll/m453Dll.rel +3f6938ca1a430e799f82ed835bdb2852caa6f081 build/GMPJ01_00/m455Dll/m455Dll.rel +32c370c9e690903950c449ecde463aa1f67c22d2 build/GMPJ01_00/m456Dll/m456Dll.rel +8cc0fbd1a8c70cd84068054c859fbe437b100a29 build/GMPJ01_00/m457Dll/m457Dll.rel +c6b7148b5103f7c079821322e6c52750dc421b92 build/GMPJ01_00/m458Dll/m458Dll.rel +050ceeb799efbc0b789944e7ac9f8092c0916710 build/GMPJ01_00/m459dll/m459dll.rel +2d34a403542ce7ea0752244425e98ba34e2cae7a build/GMPJ01_00/m460Dll/m460Dll.rel +d95c248d3570681f5367e3b2bf3598560ae9ff1c build/GMPJ01_00/m461Dll/m461Dll.rel +0f050808bb94a113ad75d5364cb5ca660868f44a build/GMPJ01_00/m462Dll/m462Dll.rel +70616dce8be76266dcc1f364353bac97598b81eb build/GMPJ01_00/m463Dll/m463Dll.rel +8a933d827ea1455c93e7c277bfa48be844897d9f build/GMPJ01_00/mentDll/mentDll.rel +af7dc453707dbb01a82e9f867bfeff2f06a73a29 build/GMPJ01_00/mgmodedll/mgmodedll.rel +b64343c9747b118a29ceb4bcb028cb4f16fb589e build/GMPJ01_00/modeltestDll/modeltestDll.rel +e4181ec6478f305cd87d1f4d1f28758637321956 build/GMPJ01_00/modeseldll/modeseldll.rel +a521e035ae1210b6638cb781febd390d1999190b build/GMPJ01_00/movieDll/movieDll.rel +d6a49ebd47855e9bdffa17c1ab57ca548a3fb75a build/GMPJ01_00/mpexDll/mpexDll.rel +7cbf86d25a20d5571270b45ed1620c6ff7913476 build/GMPJ01_00/msetupDll/msetupDll.rel +cbb7197d16e7cec374e0b5d3bd90d0cc9d650127 build/GMPJ01_00/mstory2Dll/mstory2Dll.rel +f02191dfe80020d8e9cc17ea2da8f33e81a32e31 build/GMPJ01_00/mstory3Dll/mstory3Dll.rel +4ae421deb583f684d17a58d232861a4c52b7d694 build/GMPJ01_00/mstory4Dll/mstory4Dll.rel +403343e740c0ea0cd1c1571946921b0e137a612f build/GMPJ01_00/mstoryDll/mstoryDll.rel +95803acba3dd4fc8e98140a923f3716d45377eef build/GMPJ01_00/nisDll/nisDll.rel +d8915bb0a375a86125fb67a287d1723cfafc6f62 build/GMPJ01_00/option/option.rel +ef8fa41e2b5f0e69cd6d2d763d8cdaeca782b4c9 build/GMPJ01_00/present/present.rel +5166964e0adaa9beb257665edd8d0d1726d53f88 build/GMPJ01_00/resultDll/resultDll.rel +5cb945cfbe3c8f626326c75b26d7ea3b318ae3c9 build/GMPJ01_00/safDll/safDll.rel +86639a3aff8b7660f541a15904868131d01a458f build/GMPJ01_00/selmenuDll/selmenuDll.rel +bca64fa6b8287dba977e7bc567dbbf345d36fed8 build/GMPJ01_00/staffDll/staffDll.rel +2ea368663d63828fdfdf0085290ba9a1e160b620 build/GMPJ01_00/subchrselDll/subchrselDll.rel +75f8861387de75f5d5d74e59e69fc43f2e5e3de2 build/GMPJ01_00/w01Dll/w01Dll.rel +91cdc49e2aa44fa47551345d6ecfaa563e5c648b build/GMPJ01_00/w02Dll/w02Dll.rel +5e3a277824da41154ac2601e00c72661c86aa41b build/GMPJ01_00/w03Dll/w03Dll.rel +cd988b1377ba5039794b4cc2eae2921e5a6de167 build/GMPJ01_00/w04Dll/w04Dll.rel +2a6e644000418800e5e85fd4585c37f0193fbe76 build/GMPJ01_00/w05Dll/w05Dll.rel +d9765f5f7e9e1ea486fe6f1ab3a478dff265c72a build/GMPJ01_00/w06Dll/w06Dll.rel +f7f16f2fb45fc874a437267ca7d17139c1110495 build/GMPJ01_00/w10Dll/w10Dll.rel +dce8d65e08069e87029a0a950aa2ab6894c110b4 build/GMPJ01_00/w20Dll/w20Dll.rel +0ecb1234fdc25f76f41c12678135d0c74a5b39a2 build/GMPJ01_00/w21Dll/w21Dll.rel +f21fcb2b66e154a0ae3e875ddefbb5e9eb1d5174 build/GMPJ01_00/ztardll/ztardll.rel +83c94c0ef384f7783fecfd77fb845659883dd7d6 build/GMPJ01_00/E3setupDLL/E3setupDLL.rel +1264a80903d561b61e86d9db3e7648e0b7570bf5 build/GMPJ01_00/m300Dll/m300Dll.rel +5ae17b9ca8a5689c107350b5e0dabb658f4af019 build/GMPJ01_00/m401Dll/m401Dll.rel diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml new file mode 100644 index 00000000..be895058 --- /dev/null +++ b/config/GMPJ01_00/config.yml @@ -0,0 +1,509 @@ +object_base: orig/GMPJ01_00 +object: sys/main.dol +hash: abe951fa239e7cb5de67e1ac091cfbc14010d6e0 +symbols: config/GMPJ01_00/symbols.txt +splits: config/GMPJ01_00/splits.txt +quick_analysis: false # Faster re-runs after initial analysis +mw_comment_version: 10 # GC 2.6 linker +force_active: [__register_global_object] + +detect_objects: true +detect_strings: true +fill_gaps: true +# TODO add hashes +modules: +- object: files/dll/_minigameDll.rel + + symbols: config/GMPJ01_00/rels/_minigameDll/symbols.txt + splits: config/GMPJ01_00/rels/_minigameDll/splits.txt + links: [] +- object: files/dll/bootDll.rel + + symbols: config/GMPJ01_00/rels/bootDll/symbols.txt + splits: config/GMPJ01_00/rels/bootDll/splits.txt + links: [] +- object: files/dll/instDll.rel + + symbols: config/GMPJ01_00/rels/instDll/symbols.txt + splits: config/GMPJ01_00/rels/instDll/splits.txt + links: [] +- object: files/dll/m302Dll.rel + + symbols: config/GMPJ01_00/rels/m302Dll/symbols.txt + splits: config/GMPJ01_00/rels/m302Dll/splits.txt + links: [] +- object: files/dll/m303Dll.rel + + symbols: config/GMPJ01_00/rels/m303Dll/symbols.txt + splits: config/GMPJ01_00/rels/m303Dll/splits.txt + links: [] +- object: files/dll/m330Dll.rel + + symbols: config/GMPJ01_00/rels/m330Dll/symbols.txt + splits: config/GMPJ01_00/rels/m330Dll/splits.txt + links: [] +- object: files/dll/m333Dll.rel + + symbols: config/GMPJ01_00/rels/m333Dll/symbols.txt + splits: config/GMPJ01_00/rels/m333Dll/splits.txt + links: [] +- object: files/dll/m402Dll.rel + + symbols: config/GMPJ01_00/rels/m402Dll/symbols.txt + splits: config/GMPJ01_00/rels/m402Dll/splits.txt + links: [] +- object: files/dll/m403Dll.rel + + symbols: config/GMPJ01_00/rels/m403Dll/symbols.txt + splits: config/GMPJ01_00/rels/m403Dll/splits.txt + links: [] +- object: files/dll/m404Dll.rel + + symbols: config/GMPJ01_00/rels/m404Dll/symbols.txt + splits: config/GMPJ01_00/rels/m404Dll/splits.txt + links: [] +- object: files/dll/m405Dll.rel + + symbols: config/GMPJ01_00/rels/m405Dll/symbols.txt + splits: config/GMPJ01_00/rels/m405Dll/splits.txt + links: [] +- object: files/dll/m406Dll.rel + + symbols: config/GMPJ01_00/rels/m406Dll/symbols.txt + splits: config/GMPJ01_00/rels/m406Dll/splits.txt + links: [] +- object: files/dll/m407dll.rel + + symbols: config/GMPJ01_00/rels/m407dll/symbols.txt + splits: config/GMPJ01_00/rels/m407dll/splits.txt + links: [] +- object: files/dll/m408Dll.rel + + symbols: config/GMPJ01_00/rels/m408Dll/symbols.txt + splits: config/GMPJ01_00/rels/m408Dll/splits.txt + links: [] +- object: files/dll/m409Dll.rel + + symbols: config/GMPJ01_00/rels/m409Dll/symbols.txt + splits: config/GMPJ01_00/rels/m409Dll/splits.txt + links: [] +- object: files/dll/m410Dll.rel + + symbols: config/GMPJ01_00/rels/m410Dll/symbols.txt + splits: config/GMPJ01_00/rels/m410Dll/splits.txt + links: [] +- object: files/dll/m411Dll.rel + + symbols: config/GMPJ01_00/rels/m411Dll/symbols.txt + splits: config/GMPJ01_00/rels/m411Dll/splits.txt + links: [] +- object: files/dll/m412Dll.rel + + symbols: config/GMPJ01_00/rels/m412Dll/symbols.txt + splits: config/GMPJ01_00/rels/m412Dll/splits.txt + links: [] +- object: files/dll/m413Dll.rel + + symbols: config/GMPJ01_00/rels/m413Dll/symbols.txt + splits: config/GMPJ01_00/rels/m413Dll/splits.txt + links: [] +- object: files/dll/m414Dll.rel + + symbols: config/GMPJ01_00/rels/m414Dll/symbols.txt + splits: config/GMPJ01_00/rels/m414Dll/splits.txt + links: [] +- object: files/dll/m415Dll.rel + + symbols: config/GMPJ01_00/rels/m415Dll/symbols.txt + splits: config/GMPJ01_00/rels/m415Dll/splits.txt + links: [] +- object: files/dll/m416Dll.rel + + symbols: config/GMPJ01_00/rels/m416Dll/symbols.txt + splits: config/GMPJ01_00/rels/m416Dll/splits.txt + links: [] +- object: files/dll/m417Dll.rel + + symbols: config/GMPJ01_00/rels/m417Dll/symbols.txt + splits: config/GMPJ01_00/rels/m417Dll/splits.txt + links: [] +- object: files/dll/m418Dll.rel + + symbols: config/GMPJ01_00/rels/m418Dll/symbols.txt + splits: config/GMPJ01_00/rels/m418Dll/splits.txt + links: [] +- object: files/dll/m419Dll.rel + + symbols: config/GMPJ01_00/rels/m419Dll/symbols.txt + splits: config/GMPJ01_00/rels/m419Dll/splits.txt + links: [] +- object: files/dll/m420dll.rel + + symbols: config/GMPJ01_00/rels/m420dll/symbols.txt + splits: config/GMPJ01_00/rels/m420dll/splits.txt + links: [] +- object: files/dll/m421Dll.rel + + symbols: config/GMPJ01_00/rels/m421Dll/symbols.txt + splits: config/GMPJ01_00/rels/m421Dll/splits.txt + links: [] +- object: files/dll/m422Dll.rel + + symbols: config/GMPJ01_00/rels/m422Dll/symbols.txt + splits: config/GMPJ01_00/rels/m422Dll/splits.txt + links: [] +- object: files/dll/m423Dll.rel + + symbols: config/GMPJ01_00/rels/m423Dll/symbols.txt + splits: config/GMPJ01_00/rels/m423Dll/splits.txt + links: [] +- object: files/dll/m424Dll.rel + + symbols: config/GMPJ01_00/rels/m424Dll/symbols.txt + splits: config/GMPJ01_00/rels/m424Dll/splits.txt + links: [] +- object: files/dll/m425Dll.rel + + symbols: config/GMPJ01_00/rels/m425Dll/symbols.txt + splits: config/GMPJ01_00/rels/m425Dll/splits.txt + links: [] +- object: files/dll/m426Dll.rel + + symbols: config/GMPJ01_00/rels/m426Dll/symbols.txt + splits: config/GMPJ01_00/rels/m426Dll/splits.txt + links: [] +- object: files/dll/m427Dll.rel + + symbols: config/GMPJ01_00/rels/m427Dll/symbols.txt + splits: config/GMPJ01_00/rels/m427Dll/splits.txt + links: [] +- object: files/dll/m428Dll.rel + + symbols: config/GMPJ01_00/rels/m428Dll/symbols.txt + splits: config/GMPJ01_00/rels/m428Dll/splits.txt + links: [] +- object: files/dll/m429Dll.rel + + symbols: config/GMPJ01_00/rels/m429Dll/symbols.txt + splits: config/GMPJ01_00/rels/m429Dll/splits.txt + links: [] +- object: files/dll/m430Dll.rel + + symbols: config/GMPJ01_00/rels/m430Dll/symbols.txt + splits: config/GMPJ01_00/rels/m430Dll/splits.txt + links: [] +- object: files/dll/m431Dll.rel + + symbols: config/GMPJ01_00/rels/m431Dll/symbols.txt + splits: config/GMPJ01_00/rels/m431Dll/splits.txt + links: [] +- object: files/dll/m432Dll.rel + + symbols: config/GMPJ01_00/rels/m432Dll/symbols.txt + splits: config/GMPJ01_00/rels/m432Dll/splits.txt + links: [] +- object: files/dll/m433Dll.rel + + symbols: config/GMPJ01_00/rels/m433Dll/symbols.txt + splits: config/GMPJ01_00/rels/m433Dll/splits.txt + links: [] +- object: files/dll/m434Dll.rel + + symbols: config/GMPJ01_00/rels/m434Dll/symbols.txt + splits: config/GMPJ01_00/rels/m434Dll/splits.txt + links: [] +- object: files/dll/m435Dll.rel + + symbols: config/GMPJ01_00/rels/m435Dll/symbols.txt + splits: config/GMPJ01_00/rels/m435Dll/splits.txt + links: [] +- object: files/dll/m436Dll.rel + + symbols: config/GMPJ01_00/rels/m436Dll/symbols.txt + splits: config/GMPJ01_00/rels/m436Dll/splits.txt + links: [] +- object: files/dll/m437Dll.rel + + symbols: config/GMPJ01_00/rels/m437Dll/symbols.txt + splits: config/GMPJ01_00/rels/m437Dll/splits.txt + links: [] +- object: files/dll/m438Dll.rel + + symbols: config/GMPJ01_00/rels/m438Dll/symbols.txt + splits: config/GMPJ01_00/rels/m438Dll/splits.txt + links: [] +- object: files/dll/m439Dll.rel + + symbols: config/GMPJ01_00/rels/m439Dll/symbols.txt + splits: config/GMPJ01_00/rels/m439Dll/splits.txt + links: [] +- object: files/dll/m440Dll.rel + + symbols: config/GMPJ01_00/rels/m440Dll/symbols.txt + splits: config/GMPJ01_00/rels/m440Dll/splits.txt + links: [] +- object: files/dll/m441Dll.rel + + symbols: config/GMPJ01_00/rels/m441Dll/symbols.txt + splits: config/GMPJ01_00/rels/m441Dll/splits.txt + links: [] +- object: files/dll/m442Dll.rel + + symbols: config/GMPJ01_00/rels/m442Dll/symbols.txt + splits: config/GMPJ01_00/rels/m442Dll/splits.txt + links: [] +- object: files/dll/m443Dll.rel + + symbols: config/GMPJ01_00/rels/m443Dll/symbols.txt + splits: config/GMPJ01_00/rels/m443Dll/splits.txt + links: [] +- object: files/dll/m444dll.rel + + symbols: config/GMPJ01_00/rels/m444dll/symbols.txt + splits: config/GMPJ01_00/rels/m444dll/splits.txt + links: [] +- object: files/dll/m445Dll.rel + + symbols: config/GMPJ01_00/rels/m445Dll/symbols.txt + splits: config/GMPJ01_00/rels/m445Dll/splits.txt + links: [] +- object: files/dll/m446dll.rel + + symbols: config/GMPJ01_00/rels/m446dll/symbols.txt + splits: config/GMPJ01_00/rels/m446dll/splits.txt + links: [] +- object: files/dll/m447dll.rel + + symbols: config/GMPJ01_00/rels/m447dll/symbols.txt + splits: config/GMPJ01_00/rels/m447dll/splits.txt + links: [] +- object: files/dll/m448Dll.rel + + symbols: config/GMPJ01_00/rels/m448Dll/symbols.txt + splits: config/GMPJ01_00/rels/m448Dll/splits.txt + links: [] +- object: files/dll/m449Dll.rel + + symbols: config/GMPJ01_00/rels/m449Dll/symbols.txt + splits: config/GMPJ01_00/rels/m449Dll/splits.txt + links: [] +- object: files/dll/m450Dll.rel + + symbols: config/GMPJ01_00/rels/m450Dll/symbols.txt + splits: config/GMPJ01_00/rels/m450Dll/splits.txt + links: [] +- object: files/dll/m451Dll.rel + + symbols: config/GMPJ01_00/rels/m451Dll/symbols.txt + splits: config/GMPJ01_00/rels/m451Dll/splits.txt + links: [] +- object: files/dll/m453Dll.rel + + symbols: config/GMPJ01_00/rels/m453Dll/symbols.txt + splits: config/GMPJ01_00/rels/m453Dll/splits.txt + links: [] +- object: files/dll/m455Dll.rel + + symbols: config/GMPJ01_00/rels/m455Dll/symbols.txt + splits: config/GMPJ01_00/rels/m455Dll/splits.txt + links: [] +- object: files/dll/m456Dll.rel + + symbols: config/GMPJ01_00/rels/m456Dll/symbols.txt + splits: config/GMPJ01_00/rels/m456Dll/splits.txt + links: [] +- object: files/dll/m457Dll.rel + + symbols: config/GMPJ01_00/rels/m457Dll/symbols.txt + splits: config/GMPJ01_00/rels/m457Dll/splits.txt + links: [] +- object: files/dll/m458Dll.rel + + symbols: config/GMPJ01_00/rels/m458Dll/symbols.txt + splits: config/GMPJ01_00/rels/m458Dll/splits.txt + links: [] +- object: files/dll/m459dll.rel + + symbols: config/GMPJ01_00/rels/m459dll/symbols.txt + splits: config/GMPJ01_00/rels/m459dll/splits.txt + links: [] +- object: files/dll/m460Dll.rel + + symbols: config/GMPJ01_00/rels/m460Dll/symbols.txt + splits: config/GMPJ01_00/rels/m460Dll/splits.txt + links: [] +- object: files/dll/m461Dll.rel + + symbols: config/GMPJ01_00/rels/m461Dll/symbols.txt + splits: config/GMPJ01_00/rels/m461Dll/splits.txt + links: [] +- object: files/dll/m462Dll.rel + + symbols: config/GMPJ01_00/rels/m462Dll/symbols.txt + splits: config/GMPJ01_00/rels/m462Dll/splits.txt + links: [] +- object: files/dll/m463Dll.rel + + symbols: config/GMPJ01_00/rels/m463Dll/symbols.txt + splits: config/GMPJ01_00/rels/m463Dll/splits.txt + links: [] +- object: files/dll/mentDll.rel + + symbols: config/GMPJ01_00/rels/mentDll/symbols.txt + splits: config/GMPJ01_00/rels/mentDll/splits.txt + links: [] +- object: files/dll/movieDll.rel + + symbols: config/GMPJ01_00/rels/movieDll/symbols.txt + splits: config/GMPJ01_00/rels/movieDll/splits.txt + links: [] +- object: files/dll/mgmodedll.rel + + symbols: config/GMPJ01_00/rels/mgmodedll/symbols.txt + splits: config/GMPJ01_00/rels/mgmodedll/splits.txt + links: [] +- object: files/dll/modeltestDll.rel + + symbols: config/GMPJ01_00/rels/modeltestDll/symbols.txt + splits: config/GMPJ01_00/rels/modeltestDll/splits.txt + links: [] +- object: files/dll/modeseldll.rel + + symbols: config/GMPJ01_00/rels/modeseldll/symbols.txt + splits: config/GMPJ01_00/rels/modeseldll/splits.txt + links: [] +- object: files/dll/mpexDll.rel + + symbols: config/GMPJ01_00/rels/mpexDll/symbols.txt + splits: config/GMPJ01_00/rels/mpexDll/splits.txt + links: [] +- object: files/dll/msetupDll.rel + + symbols: config/GMPJ01_00/rels/msetupDll/symbols.txt + splits: config/GMPJ01_00/rels/msetupDll/splits.txt + links: [] +- object: files/dll/mstory2Dll.rel + + symbols: config/GMPJ01_00/rels/mstory2Dll/symbols.txt + splits: config/GMPJ01_00/rels/mstory2Dll/splits.txt + links: [] +- object: files/dll/mstory3Dll.rel + + symbols: config/GMPJ01_00/rels/mstory3Dll/symbols.txt + splits: config/GMPJ01_00/rels/mstory3Dll/splits.txt + links: [] +- object: files/dll/mstory4Dll.rel + + symbols: config/GMPJ01_00/rels/mstory4Dll/symbols.txt + splits: config/GMPJ01_00/rels/mstory4Dll/splits.txt + links: [] +- object: files/dll/mstoryDll.rel + + symbols: config/GMPJ01_00/rels/mstoryDll/symbols.txt + splits: config/GMPJ01_00/rels/mstoryDll/splits.txt + links: [] +- object: files/dll/nisDll.rel + + symbols: config/GMPJ01_00/rels/nisDll/symbols.txt + splits: config/GMPJ01_00/rels/nisDll/splits.txt + links: [] +- object: files/dll/option.rel + + symbols: config/GMPJ01_00/rels/option/symbols.txt + splits: config/GMPJ01_00/rels/option/splits.txt + links: [] +- object: files/dll/present.rel + + symbols: config/GMPJ01_00/rels/present/symbols.txt + splits: config/GMPJ01_00/rels/present/splits.txt + links: [] +- object: files/dll/resultDll.rel + + symbols: config/GMPJ01_00/rels/resultDll/symbols.txt + splits: config/GMPJ01_00/rels/resultDll/splits.txt + links: [] +- object: files/dll/safDll.rel + + symbols: config/GMPJ01_00/rels/safDll/symbols.txt + splits: config/GMPJ01_00/rels/safDll/splits.txt + links: [] +- object: files/dll/selmenuDll.rel + + symbols: config/GMPJ01_00/rels/selmenuDll/symbols.txt + splits: config/GMPJ01_00/rels/selmenuDll/splits.txt + links: [] +- object: files/dll/staffDll.rel + + symbols: config/GMPJ01_00/rels/staffDll/symbols.txt + splits: config/GMPJ01_00/rels/staffDll/splits.txt + links: [] +- object: files/dll/subchrselDll.rel + + symbols: config/GMPJ01_00/rels/subchrselDll/symbols.txt + splits: config/GMPJ01_00/rels/subchrselDll/splits.txt + links: [] +- object: files/dll/w01Dll.rel + + symbols: config/GMPJ01_00/rels/w01Dll/symbols.txt + splits: config/GMPJ01_00/rels/w01Dll/splits.txt + links: [] +- object: files/dll/w02Dll.rel + + symbols: config/GMPJ01_00/rels/w02Dll/symbols.txt + splits: config/GMPJ01_00/rels/w02Dll/splits.txt + links: [] +- object: files/dll/w03Dll.rel + + symbols: config/GMPJ01_00/rels/w03Dll/symbols.txt + splits: config/GMPJ01_00/rels/w03Dll/splits.txt + links: [] +- object: files/dll/w04Dll.rel + + symbols: config/GMPJ01_00/rels/w04Dll/symbols.txt + splits: config/GMPJ01_00/rels/w04Dll/splits.txt + links: [] +- object: files/dll/w05Dll.rel + + symbols: config/GMPJ01_00/rels/w05Dll/symbols.txt + splits: config/GMPJ01_00/rels/w05Dll/splits.txt + links: [] +- object: files/dll/w06Dll.rel + + symbols: config/GMPJ01_00/rels/w06Dll/symbols.txt + splits: config/GMPJ01_00/rels/w06Dll/splits.txt + links: [] +- object: files/dll/w10Dll.rel + + symbols: config/GMPJ01_00/rels/w10Dll/symbols.txt + splits: config/GMPJ01_00/rels/w10Dll/splits.txt + links: [] +- object: files/dll/w20Dll.rel + + symbols: config/GMPJ01_00/rels/w20Dll/symbols.txt + splits: config/GMPJ01_00/rels/w20Dll/splits.txt + links: [] +- object: files/dll/w21Dll.rel + + symbols: config/GMPJ01_00/rels/w21Dll/symbols.txt + splits: config/GMPJ01_00/rels/w21Dll/splits.txt + links: [] +- object: files/dll/ztardll.rel + + symbols: config/GMPJ01_00/rels/ztardll/symbols.txt + splits: config/GMPJ01_00/rels/ztardll/splits.txt + links: [] +- object: files/dll/E3setupDLL.rel + + symbols: config/GMPJ01_00/rels/E3setupDLL/symbols.txt + splits: config/GMPJ01_00/rels/E3setupDLL/splits.txt + links: [_minigameDll] +- object: files/dll/m300Dll.rel + + symbols: config/GMPJ01_00/rels/m300Dll/symbols.txt + splits: config/GMPJ01_00/rels/m300Dll/splits.txt + links: [_minigameDll] +- object: files/dll/m401Dll.rel + + symbols: config/GMPJ01_00/rels/m401Dll/symbols.txt + splits: config/GMPJ01_00/rels/m401Dll/splits.txt + links: [_minigameDll] diff --git a/config/GMPJ01_00/rels/E3setupDLL/splits.txt b/config/GMPJ01_00/rels/E3setupDLL/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/E3setupDLL/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/E3setupDLL/symbols.txt b/config/GMPJ01_00/rels/E3setupDLL/symbols.txt new file mode 100644 index 00000000..382731fd --- /dev/null +++ b/config/GMPJ01_00/rels/E3setupDLL/symbols.txt @@ -0,0 +1,192 @@ +fn_2_0 = .text:0x00000000; // type:function size:0x324 +fn_2_324 = .text:0x00000324; // type:function size:0x9C +fn_2_3C0 = .text:0x000003C0; // type:function size:0xA0 +fn_2_460 = .text:0x00000460; // type:function size:0x584 +fn_2_9E4 = .text:0x000009E4; // type:function size:0x528 +fn_2_F0C = .text:0x00000F0C; // type:function size:0x80 +fn_2_F8C = .text:0x00000F8C; // type:function size:0x1AC +fn_2_1138 = .text:0x00001138; // type:function size:0x14 +fn_2_114C = .text:0x0000114C; // type:function size:0x1F0 +_prolog = .text:0x0000133C; // type:function size:0x54 scope:global +_epilog = .text:0x00001390; // type:function size:0x4C scope:global +fn_2_13DC = .text:0x000013DC; // type:function size:0x108 +fn_2_14E4 = .text:0x000014E4; // type:function size:0x514 +fn_2_19F8 = .text:0x000019F8; // type:function size:0x1AC +fn_2_1BA4 = .text:0x00001BA4; // type:function size:0x7C +fn_2_1C20 = .text:0x00001C20; // type:function size:0x84 +fn_2_1CA4 = .text:0x00001CA4; // type:function size:0x90 +fn_2_1D34 = .text:0x00001D34; // type:function size:0x24 +fn_2_1D58 = .text:0x00001D58; // type:function size:0xFC +fn_2_1E54 = .text:0x00001E54; // type:function size:0x1C0 +fn_2_2014 = .text:0x00002014; // type:function size:0x78 +fn_2_208C = .text:0x0000208C; // type:function size:0x2C +fn_2_20B8 = .text:0x000020B8; // type:function size:0xA4 +fn_2_215C = .text:0x0000215C; // type:function size:0x400 +fn_2_255C = .text:0x0000255C; // type:function size:0x124 +fn_2_2680 = .text:0x00002680; // type:function size:0x74 +fn_2_26F4 = .text:0x000026F4; // type:function size:0x344 +fn_2_2A38 = .text:0x00002A38; // type:function size:0x59C +fn_2_2FD4 = .text:0x00002FD4; // type:function size:0x208 +fn_2_31DC = .text:0x000031DC; // type:function size:0x37C +fn_2_3558 = .text:0x00003558; // type:function size:0x3B4 +fn_2_390C = .text:0x0000390C; // type:function size:0xAC +fn_2_39B8 = .text:0x000039B8; // type:function size:0x2B8 +fn_2_3C70 = .text:0x00003C70; // type:function size:0x534 +fn_2_41A4 = .text:0x000041A4; // type:function size:0x2DC +fn_2_4480 = .text:0x00004480; // type:function size:0x520 +fn_2_49A0 = .text:0x000049A0; // type:function size:0x59C +fn_2_4F3C = .text:0x00004F3C; // type:function size:0x4E8 +fn_2_5424 = .text:0x00005424; // type:function size:0x100 +fn_2_5524 = .text:0x00005524; // type:function size:0x184 +fn_2_56A8 = .text:0x000056A8; // type:function size:0x7C +fn_2_5724 = .text:0x00005724; // type:function size:0x12C +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float +lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float +lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float +lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float +lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float +lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float +lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float +lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float +lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float +lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float +lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float +lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float +lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float +lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_2_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_2_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float +lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float +lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float +lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float +lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:float +lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float +lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float +lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float +lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float +lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float +lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float +lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float +lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float +lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float +lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float +lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_2_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 data:float +lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float +lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float +lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float +lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float +lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_2_data_24 = .data:0x00000024; // type:object size:0x1A +lbl_2_data_3E = .data:0x0000003E; // type:object size:0x1A +lbl_2_data_58 = .data:0x00000058; // type:object size:0x1C +lbl_2_data_74 = .data:0x00000074; // type:object size:0x34 +lbl_2_data_A8 = .data:0x000000A8; // type:object size:0x21 +lbl_2_data_C9 = .data:0x000000C9; // type:object size:0x16 +lbl_2_data_DF = .data:0x000000DF; // type:object size:0x16 +lbl_2_data_F5 = .data:0x000000F5; // type:object size:0x16 +lbl_2_data_10B = .data:0x0000010B; // type:object size:0xD +lbl_2_data_118 = .data:0x00000118; // type:object size:0x16 +lbl_2_data_12E = .data:0x0000012E; // type:object size:0xD +lbl_2_data_13B = .data:0x0000013B; // type:object size:0x16 +lbl_2_data_151 = .data:0x00000151; // type:object size:0x16 +lbl_2_data_167 = .data:0x00000167; // type:object size:0x16 +lbl_2_data_17D = .data:0x0000017D; // type:object size:0x16 +lbl_2_data_193 = .data:0x00000193; // type:object size:0x16 +lbl_2_data_1A9 = .data:0x000001A9; // type:object size:0x4B +lbl_2_data_1F4 = .data:0x000001F4; // type:object size:0x14 +lbl_2_data_208 = .data:0x00000208; // type:object size:0x34 +lbl_2_data_23C = .data:0x0000023C; // type:object size:0x14 +lbl_2_data_250 = .data:0x00000250; // type:object size:0xC +lbl_2_data_25C = .data:0x0000025C; // type:object size:0xC +lbl_2_data_268 = .data:0x00000268; // type:object size:0x6C +lbl_2_data_2D4 = .data:0x000002D4; // type:object size:0x8 +lbl_2_data_2DC = .data:0x000002DC; // type:object size:0x10 +lbl_2_data_2EC = .data:0x000002EC; // type:object size:0x20 +lbl_2_data_30C = .data:0x0000030C; // type:object size:0x1C +lbl_2_data_328 = .data:0x00000328; // type:object size:0x10 +lbl_2_data_338 = .data:0x00000338; // type:object size:0x40 +lbl_2_data_378 = .data:0x00000378; // type:object size:0x20 +lbl_2_data_398 = .data:0x00000398; // type:object size:0x10 +lbl_2_data_3A8 = .data:0x000003A8; // type:object size:0x20 +lbl_2_data_3C8 = .data:0x000003C8; // type:object size:0x14 +lbl_2_data_3DC = .data:0x000003DC; // type:object size:0x14 +lbl_2_data_3F0 = .data:0x000003F0; // type:object size:0x8 +lbl_2_data_3F8 = .data:0x000003F8; // type:object size:0x10 +lbl_2_data_408 = .data:0x00000408; // type:object size:0x10 +lbl_2_data_418 = .data:0x00000418; // type:object size:0x60 +lbl_2_data_478 = .data:0x00000478; // type:object size:0x24 +lbl_2_data_49C = .data:0x0000049C; // type:object size:0x34 +lbl_2_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte +lbl_2_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_2_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_2_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_2_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_2_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_2_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_2_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_2_bss_28 = .bss:0x00000028; // type:object size:0xC data:2byte +lbl_2_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_2_bss_36 = .bss:0x00000036; // type:object size:0x2 data:2byte +lbl_2_bss_3A = .bss:0x0000003A; // type:object size:0x2 data:2byte +lbl_2_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_2_bss_40 = .bss:0x00000040; // type:object size:0x2 data:2byte +lbl_2_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float +lbl_2_bss_48 = .bss:0x00000048; // type:object size:0xC data:float +lbl_2_bss_54 = .bss:0x00000054; // type:object size:0xC data:float +lbl_2_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_2_bss_62 = .bss:0x00000062; // type:object size:0x8 +lbl_2_bss_6A = .bss:0x0000006A; // type:object size:0x6 data:2byte +lbl_2_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_2_bss_74 = .bss:0x00000074; // type:object size:0x18 data:4byte +lbl_2_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_2_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_2_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_2_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_2_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:float +lbl_2_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_2_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_2_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_2_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_2_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_2_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_2_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_2_bss_BC = .bss:0x000000BC; // type:object size:0x2 data:2byte +lbl_2_bss_BE = .bss:0x000000BE; // type:object size:0x2 data:2byte +lbl_2_bss_C0 = .bss:0x000000C0; // type:object size:0x20 +lbl_2_bss_E0 = .bss:0x000000E0; // type:object size:0x18 data:2byte diff --git a/config/GMPJ01_00/rels/_minigameDll/splits.txt b/config/GMPJ01_00/rels/_minigameDll/splits.txt new file mode 100644 index 00000000..be323846 --- /dev/null +++ b/config/GMPJ01_00/rels/_minigameDll/splits.txt @@ -0,0 +1,6 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 diff --git a/config/GMPJ01_00/rels/_minigameDll/symbols.txt b/config/GMPJ01_00/rels/_minigameDll/symbols.txt new file mode 100644 index 00000000..5c4a5ab3 --- /dev/null +++ b/config/GMPJ01_00/rels/_minigameDll/symbols.txt @@ -0,0 +1,7 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2C +fn_1_CC = .text:0x000000CC; // type:function size:0x24 +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x14 data:string diff --git a/config/GMPJ01_00/rels/bootDll/splits.txt b/config/GMPJ01_00/rels/bootDll/splits.txt new file mode 100644 index 00000000..bc4e958f --- /dev/null +++ b/config/GMPJ01_00/rels/bootDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:32 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/bootDll/symbols.txt b/config/GMPJ01_00/rels/bootDll/symbols.txt new file mode 100644 index 00000000..a27cc9e1 --- /dev/null +++ b/config/GMPJ01_00/rels/bootDll/symbols.txt @@ -0,0 +1,67 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x1CC +fn_1_26C = .text:0x0000026C; // type:function size:0x78C +fn_1_9F8 = .text:0x000009F8; // type:function size:0xC8 +fn_1_AC0 = .text:0x00000AC0; // type:function size:0x6B8 +fn_1_1178 = .text:0x00001178; // type:function size:0x3B4 +fn_1_152C = .text:0x0000152C; // type:function size:0xBD4 +fn_1_2100 = .text:0x00002100; // type:function size:0x374 +fn_1_2474 = .text:0x00002474; // type:function size:0x4D0 +fn_1_2944 = .text:0x00002944; // type:function size:0x84 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +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:0x8 data:double +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x24 data:string +lbl_1_data_24 = .data:0x00000024; // type:object size:0x14 data:string +lbl_1_data_38 = .data:0x00000038; // type:object size:0x18 data:2byte +lbl_1_data_50 = .data:0x00000050; // type:object size:0x8 +lbl_1_data_58 = .data:0x00000058; // type:object size:0x4 +lbl_1_data_5C = .data:0x0000005C; // type:object size:0x1A data:string +lbl_1_data_76 = .data:0x00000076; // type:object size:0x13 data:string +lbl_1_data_89 = .data:0x00000089; // type:object size:0x17 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x307D +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x6 +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x6 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0xE data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x18 data:float +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte diff --git a/config/GMPJ01_00/rels/instDll/splits.txt b/config/GMPJ01_00/rels/instDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/instDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/instDll/symbols.txt b/config/GMPJ01_00/rels/instDll/symbols.txt new file mode 100644 index 00000000..1013d7c3 --- /dev/null +++ b/config/GMPJ01_00/rels/instDll/symbols.txt @@ -0,0 +1,149 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x8F4 +fn_1_994 = .text:0x00000994; // type:function size:0xE50 +fn_1_17E4 = .text:0x000017E4; // type:function size:0xA28 +fn_1_220C = .text:0x0000220C; // type:function size:0x5F8 +fn_1_2804 = .text:0x00002804; // type:function size:0x79C +fn_1_2FA0 = .text:0x00002FA0; // type:function size:0x11D4 +fn_1_4174 = .text:0x00004174; // type:function size:0x3B4 +fn_1_4528 = .text:0x00004528; // type:function size:0xB88 +fn_1_50B0 = .text:0x000050B0; // type:function size:0xAB4 +fn_1_5B64 = .text:0x00005B64; // type:function size:0x340 +fn_1_5EA4 = .text:0x00005EA4; // type:function size:0x47C +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_2 = .data:0x00000002; // type:object size:0x24 data:string +lbl_1_data_26 = .data:0x00000026; // type:object size:0x20 +lbl_1_data_46 = .data:0x00000046; // type:object size:0xA +lbl_1_data_50 = .data:0x00000050; // type:object size:0x20 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x20 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x8 data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 data:string +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 data:string +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x8 data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x4 +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x48 +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x18 +lbl_1_data_124 = .data:0x00000124; // type:object size:0x20 data:float +lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 data:float +lbl_1_data_150 = .data:0x00000150; // type:object size:0x4C8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x1 data:byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x18 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x18 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x8 data:4byte diff --git a/config/GMPJ01_00/rels/m300Dll/splits.txt b/config/GMPJ01_00/rels/m300Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPJ01_00/rels/m300Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPJ01_00/rels/m300Dll/symbols.txt b/config/GMPJ01_00/rels/m300Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPJ01_00/rels/m300Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPJ01_00/rels/m302Dll/splits.txt b/config/GMPJ01_00/rels/m302Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPJ01_00/rels/m302Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPJ01_00/rels/m302Dll/symbols.txt b/config/GMPJ01_00/rels/m302Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPJ01_00/rels/m302Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPJ01_00/rels/m303Dll/splits.txt b/config/GMPJ01_00/rels/m303Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPJ01_00/rels/m303Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPJ01_00/rels/m303Dll/symbols.txt b/config/GMPJ01_00/rels/m303Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPJ01_00/rels/m303Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPJ01_00/rels/m330Dll/splits.txt b/config/GMPJ01_00/rels/m330Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPJ01_00/rels/m330Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPJ01_00/rels/m330Dll/symbols.txt b/config/GMPJ01_00/rels/m330Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPJ01_00/rels/m330Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPJ01_00/rels/m333Dll/splits.txt b/config/GMPJ01_00/rels/m333Dll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPJ01_00/rels/m333Dll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPJ01_00/rels/m333Dll/symbols.txt b/config/GMPJ01_00/rels/m333Dll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPJ01_00/rels/m333Dll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPJ01_00/rels/m401Dll/splits.txt b/config/GMPJ01_00/rels/m401Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m401Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m401Dll/symbols.txt b/config/GMPJ01_00/rels/m401Dll/symbols.txt new file mode 100644 index 00000000..6a0cc8b9 --- /dev/null +++ b/config/GMPJ01_00/rels/m401Dll/symbols.txt @@ -0,0 +1,522 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_2_A0 = .text:0x000000A0; // type:function size:0x66C +fn_2_70C = .text:0x0000070C; // type:function size:0x304 +fn_2_A10 = .text:0x00000A10; // type:function size:0x88 +fn_2_A98 = .text:0x00000A98; // type:function size:0x54 +fn_2_AEC = .text:0x00000AEC; // type:function size:0x130 +fn_2_C1C = .text:0x00000C1C; // type:function size:0x5B4 +fn_2_11D0 = .text:0x000011D0; // type:function size:0x3F4 +fn_2_15C4 = .text:0x000015C4; // type:function size:0xD8 +fn_2_169C = .text:0x0000169C; // type:function size:0x1BC +fn_2_1858 = .text:0x00001858; // type:function size:0x1E0 +fn_2_1A38 = .text:0x00001A38; // type:function size:0x148 +fn_2_1B80 = .text:0x00001B80; // type:function size:0x170 +fn_2_1CF0 = .text:0x00001CF0; // type:function size:0xF8 +fn_2_1DE8 = .text:0x00001DE8; // type:function size:0x2C8 +fn_2_20B0 = .text:0x000020B0; // type:function size:0x148 +fn_2_21F8 = .text:0x000021F8; // type:function size:0x4E8 +fn_2_26E0 = .text:0x000026E0; // type:function size:0x5DC +fn_2_2CBC = .text:0x00002CBC; // type:function size:0xA8 +fn_2_2D64 = .text:0x00002D64; // type:function size:0x68 +fn_2_2DCC = .text:0x00002DCC; // type:function size:0x54 +fn_2_2E20 = .text:0x00002E20; // type:function size:0xB0 +fn_2_2ED0 = .text:0x00002ED0; // type:function size:0xCC +fn_2_2F9C = .text:0x00002F9C; // type:function size:0x4 +fn_2_2FA0 = .text:0x00002FA0; // type:function size:0x4 +fn_2_2FA4 = .text:0x00002FA4; // type:function size:0x410 +fn_2_33B4 = .text:0x000033B4; // type:function size:0x104 +fn_2_34B8 = .text:0x000034B8; // type:function size:0x380 +fn_2_3838 = .text:0x00003838; // type:function size:0x2EC +fn_2_3B24 = .text:0x00003B24; // type:function size:0x404 +fn_2_3F28 = .text:0x00003F28; // type:function size:0x978 +fn_2_48A0 = .text:0x000048A0; // type:function size:0x1420 +fn_2_5CC0 = .text:0x00005CC0; // type:function size:0x93C +fn_2_65FC = .text:0x000065FC; // type:function size:0x4F8 +fn_2_6AF4 = .text:0x00006AF4; // type:function size:0x50 +fn_2_6B44 = .text:0x00006B44; // type:function size:0x150 +fn_2_6C94 = .text:0x00006C94; // type:function size:0x9AC +fn_2_7640 = .text:0x00007640; // type:function size:0x6C +fn_2_76AC = .text:0x000076AC; // type:function size:0x280 +fn_2_792C = .text:0x0000792C; // type:function size:0x310 +fn_2_7C3C = .text:0x00007C3C; // type:function size:0x78 +fn_2_7CB4 = .text:0x00007CB4; // type:function size:0x1B8 +fn_2_7E6C = .text:0x00007E6C; // type:function size:0x70 +fn_2_7EDC = .text:0x00007EDC; // type:function size:0x574 +fn_2_8450 = .text:0x00008450; // type:function size:0x2EC +fn_2_873C = .text:0x0000873C; // type:function size:0x12C +fn_2_8868 = .text:0x00008868; // type:function size:0x100 +fn_2_8968 = .text:0x00008968; // type:function size:0x1F0 +fn_2_8B58 = .text:0x00008B58; // type:function size:0x100 +fn_2_8C58 = .text:0x00008C58; // type:function size:0x21C +fn_2_8E74 = .text:0x00008E74; // type:function size:0x338 +fn_2_91AC = .text:0x000091AC; // type:function size:0xEC +fn_2_9298 = .text:0x00009298; // type:function size:0x34C +fn_2_95E4 = .text:0x000095E4; // type:function size:0x150 +fn_2_9734 = .text:0x00009734; // type:function size:0x68 +fn_2_979C = .text:0x0000979C; // type:function size:0xF0 +fn_2_988C = .text:0x0000988C; // type:function size:0x118 +fn_2_99A4 = .text:0x000099A4; // type:function size:0x1EC +fn_2_9B90 = .text:0x00009B90; // type:function size:0x170 +fn_2_9D00 = .text:0x00009D00; // type:function size:0x128 +fn_2_9E28 = .text:0x00009E28; // type:function size:0x288 +fn_2_A0B0 = .text:0x0000A0B0; // type:function size:0x268 +fn_2_A318 = .text:0x0000A318; // type:function size:0x58C +fn_2_A8A4 = .text:0x0000A8A4; // type:function size:0x70 +fn_2_A914 = .text:0x0000A914; // type:function size:0x2C +fn_2_A940 = .text:0x0000A940; // type:function size:0x2EC +fn_2_AC2C = .text:0x0000AC2C; // type:function size:0x1164 +fn_2_BD90 = .text:0x0000BD90; // type:function size:0x3A0 +fn_2_C130 = .text:0x0000C130; // type:function size:0x5AC +fn_2_C6DC = .text:0x0000C6DC; // type:function size:0x164 +fn_2_C840 = .text:0x0000C840; // type:function size:0x270 +fn_2_CAB0 = .text:0x0000CAB0; // type:function size:0x5D8 +fn_2_D088 = .text:0x0000D088; // type:function size:0xF8 +fn_2_D180 = .text:0x0000D180; // type:function size:0x268 +fn_2_D3E8 = .text:0x0000D3E8; // type:function size:0x4E4 +fn_2_D8CC = .text:0x0000D8CC; // type:function size:0x300 +fn_2_DBCC = .text:0x0000DBCC; // type:function size:0x250 +fn_2_DE1C = .text:0x0000DE1C; // type:function size:0xA0 +fn_2_DEBC = .text:0x0000DEBC; // type:function size:0x390 +fn_2_E24C = .text:0x0000E24C; // type:function size:0x118 +fn_2_E364 = .text:0x0000E364; // type:function size:0xBC +fn_2_E420 = .text:0x0000E420; // type:function size:0x24C +fn_2_E66C = .text:0x0000E66C; // type:function size:0x30 +fn_2_E69C = .text:0x0000E69C; // type:function size:0x20 +fn_2_E6BC = .text:0x0000E6BC; // type:function size:0x2C +fn_2_E6E8 = .text:0x0000E6E8; // type:function size:0x1090 +fn_2_F778 = .text:0x0000F778; // type:function size:0x4C8 +fn_2_FC40 = .text:0x0000FC40; // type:function size:0x358 +fn_2_FF98 = .text:0x0000FF98; // type:function size:0x2A8 +fn_2_10240 = .text:0x00010240; // type:function size:0x1DC +fn_2_1041C = .text:0x0001041C; // type:function size:0x2F4 +fn_2_10710 = .text:0x00010710; // type:function size:0x8C +fn_2_1079C = .text:0x0001079C; // type:function size:0x12C +fn_2_108C8 = .text:0x000108C8; // type:function size:0xB8 +fn_2_10980 = .text:0x00010980; // type:function size:0x88 +fn_2_10A08 = .text:0x00010A08; // type:function size:0x80 +fn_2_10A88 = .text:0x00010A88; // type:function size:0x924 +fn_2_113AC = .text:0x000113AC; // type:function size:0x504 +fn_2_118B0 = .text:0x000118B0; // type:function size:0x1B8 +fn_2_11A68 = .text:0x00011A68; // type:function size:0x110 +fn_2_11B78 = .text:0x00011B78; // type:function size:0xB8 +fn_2_11C30 = .text:0x00011C30; // type:function size:0x110 +fn_2_11D40 = .text:0x00011D40; // type:function size:0x104 +fn_2_11E44 = .text:0x00011E44; // type:function size:0xB8 +fn_2_11EFC = .text:0x00011EFC; // type:function size:0xB8 +fn_2_11FB4 = .text:0x00011FB4; // type:function size:0x444 +fn_2_123F8 = .text:0x000123F8; // type:function size:0x2D0 +fn_2_126C8 = .text:0x000126C8; // type:function size:0x2C +fn_2_126F4 = .text:0x000126F4; // type:function size:0x43C +fn_2_12B30 = .text:0x00012B30; // type:function size:0x4EC +fn_2_1301C = .text:0x0001301C; // type:function size:0x4F0 +fn_2_1350C = .text:0x0001350C; // type:function size:0x670 +fn_2_13B7C = .text:0x00013B7C; // type:function size:0x634 +fn_2_141B0 = .text:0x000141B0; // type:function size:0x120 +fn_2_142D0 = .text:0x000142D0; // type:function size:0x4 +fn_2_142D4 = .text:0x000142D4; // type:function size:0x36C +fn_2_14640 = .text:0x00014640; // type:function size:0xF8 +fn_2_14738 = .text:0x00014738; // type:function size:0x7C +fn_2_147B4 = .text:0x000147B4; // type:function size:0x660 +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float +lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float +lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float +lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float +lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float +lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float +lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float +lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float +lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float +lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float +lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float +lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float +lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float +lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float +lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float +lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float +lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float +lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_2_rodata_84 = .rodata:0x00000084; // type:object size:0x4 data:float +lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float +lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float +lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float +lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float +lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float +lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_2_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 data:float +lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float +lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float +lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float +lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float +lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float +lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float +lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float +lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float +lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float +lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_2_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_2_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_2_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_2_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 data:float +lbl_2_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float +lbl_2_rodata_144 = .rodata:0x00000144; // type:object size:0x4 data:float +lbl_2_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_2_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 data:float +lbl_2_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_2_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_2_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_2_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_2_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_2_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_2_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_2_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_2_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_2_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_2_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_2_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_2_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 data:float +lbl_2_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_2_rodata_194 = .rodata:0x00000194; // type:object size:0x4 data:float +lbl_2_rodata_198 = .rodata:0x00000198; // type:object size:0x4 data:float +lbl_2_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 data:float +lbl_2_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_2_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_2_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_2_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_2_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_2_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_2_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_2_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_2_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_2_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_2_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double +lbl_2_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_2_rodata_1DC = .rodata:0x000001DC; // type:object size:0x10 data:4byte +lbl_2_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 data:float +lbl_2_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_2_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 data:float +lbl_2_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float +lbl_2_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 data:float +lbl_2_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float +lbl_2_rodata_204 = .rodata:0x00000204; // type:object size:0x4 data:float +lbl_2_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_2_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_2_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_2_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_2_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_2_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_2_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_2_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_2_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_2_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_2_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_2_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_2_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_2_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_2_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_2_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_2_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_2_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_2_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_2_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_2_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_2_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_2_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_2_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_2_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_2_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_2_rodata_290 = .rodata:0x00000290; // type:object size:0x40 data:2byte +lbl_2_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:2byte +lbl_2_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:2byte +lbl_2_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:2byte +lbl_2_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_2_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_2_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_2_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_2_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_2_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_2_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_2_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_2_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_2_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_2_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_2_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_2_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_2_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_2_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_2_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_2_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_2_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_2_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_2_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_2_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_2_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_2_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_2_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_2_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_2_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_2_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_2_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_2_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_2_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_2_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_2_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_2_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_2_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_2_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_2_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_2_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_2_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_2_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_2_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_2_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_2_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_2_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_2_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_2_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_2_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_2_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_2_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_2_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_2_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_2_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_2_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_2_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_2_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_2_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_2_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_2_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_2_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_2_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_2_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_2_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_2_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_2_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_2_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_2_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_2_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_2_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_2_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_2_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_2_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_2_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_2_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_2_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_2_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_2_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_2_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_2_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_2_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_2_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_2_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_2_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_2_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_2_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_2_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_2_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_2_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_2_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_2_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_2_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_2_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_2_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_2_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_2_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_2_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_2_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_2_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double +lbl_2_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_2_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_2_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_2_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_2_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_2_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_2_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_2_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_2_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_2_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_2_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_2_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_2_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_2_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_2_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_2_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_2_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_2_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_2_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_2_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_2_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_2_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_2_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_2_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_2_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_2_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_2_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_2_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_2_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_2_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_2_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_2_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_2_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double +lbl_2_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_2_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_2_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double +lbl_2_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_2_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_2_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_2_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_2_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_2_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_2_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_2_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_2_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_2_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:double +lbl_2_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_2_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_2_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_2_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_2_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_2_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_2_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_2_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_2_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double +lbl_2_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_2_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_2_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_2_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_2_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_2_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_2_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_2_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_2_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_2_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_2_data_0 = .data:0x00000000; // type:object size:0x4 data:float +lbl_2_data_4 = .data:0x00000004; // type:object size:0x10 +lbl_2_data_14 = .data:0x00000014; // type:object size:0xC +lbl_2_data_20 = .data:0x00000020; // type:object size:0xC +lbl_2_data_2C = .data:0x0000002C; // type:object size:0x4 +lbl_2_data_30 = .data:0x00000030; // type:object size:0xC data:float +lbl_2_data_3C = .data:0x0000003C; // type:object size:0xC +lbl_2_data_48 = .data:0x00000048; // type:object size:0xC data:float +lbl_2_data_54 = .data:0x00000054; // type:object size:0x1B data:string +lbl_2_data_6F = .data:0x0000006F; // type:object size:0x11 +lbl_2_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_2_data_A0 = .data:0x000000A0; // type:object size:0x14 +lbl_2_data_B4 = .data:0x000000B4; // type:object size:0x18 +lbl_2_data_CC = .data:0x000000CC; // type:object size:0x28 +lbl_2_data_F4 = .data:0x000000F4; // type:object size:0x9 data:string +lbl_2_data_FD = .data:0x000000FD; // type:object size:0x9 data:string +lbl_2_data_106 = .data:0x00000106; // type:object size:0x9 data:string +lbl_2_data_10F = .data:0x0000010F; // type:object size:0x9 data:string +lbl_2_data_118 = .data:0x00000118; // type:object size:0xC +lbl_2_data_124 = .data:0x00000124; // type:object size:0x34 data:4byte +lbl_2_data_158 = .data:0x00000158; // type:object size:0x140 +lbl_2_data_298 = .data:0x00000298; // type:object size:0x30 +lbl_2_data_2C8 = .data:0x000002C8; // type:object size:0x30 +jumptable_2_data_2F8 = .data:0x000002F8; // type:object size:0x30 scope:local +lbl_2_data_32C = .data:0x0000032C; // type:object size:0x8 +lbl_2_data_334 = .data:0x00000334; // type:object size:0xF0 +lbl_2_data_424 = .data:0x00000424; // type:object size:0x8 +lbl_2_data_42C = .data:0x0000042C; // type:object size:0x28 +lbl_2_data_454 = .data:0x00000454; // type:object size:0xC data:string +lbl_2_data_460 = .data:0x00000460; // type:object size:0xC +lbl_2_data_46C = .data:0x0000046C; // type:object size:0x5 data:string +lbl_2_data_471 = .data:0x00000471; // type:object size:0x7 +jumptable_2_data_478 = .data:0x00000478; // type:object size:0x20 scope:local +lbl_2_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_2_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_2_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_2_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_2_bss_10 = .bss:0x00000010; // type:object size:0x4 data:float +lbl_2_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_2_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_2_bss_1A = .bss:0x0000001A; // type:object size:0x2 data:2byte +lbl_2_bss_1C = .bss:0x0000001C; // type:object size:0x10 data:4byte +lbl_2_bss_2C = .bss:0x0000002C; // type:object size:0xC data:float +lbl_2_bss_38 = .bss:0x00000038; // type:object size:0xC data:float +lbl_2_bss_44 = .bss:0x00000044; // type:object size:0xC data:float +lbl_2_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float +lbl_2_bss_54 = .bss:0x00000054; // type:object size:0xC data:4byte +lbl_2_bss_60 = .bss:0x00000060; // type:object size:0xC data:float +lbl_2_bss_6C = .bss:0x0000006C; // type:object size:0xC data:float +lbl_2_bss_78 = .bss:0x00000078; // type:object size:0xC data:float +lbl_2_bss_84 = .bss:0x00000084; // type:object size:0x4 data:float +lbl_2_bss_88 = .bss:0x00000088; // type:object size:0x4 data:float +lbl_2_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_2_bss_90 = .bss:0x00000090; // type:object size:0x14 data:4byte +lbl_2_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_2_bss_A8 = .bss:0x000000A8; // type:object size:0x2 data:2byte +lbl_2_bss_AA = .bss:0x000000AA; // type:object size:0x8 data:2byte +lbl_2_bss_B2 = .bss:0x000000B2; // type:object size:0x8 data:2byte +lbl_2_bss_BA = .bss:0x000000BA; // type:object size:0x2 data:2byte +lbl_2_bss_BE = .bss:0x000000BE; // type:object size:0x2 data:2byte +lbl_2_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte +lbl_2_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_2_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_2_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_2_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_2_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_2_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_2_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_2_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_2_bss_E4 = .bss:0x000000E4; // type:object size:0x10 +lbl_2_bss_F4 = .bss:0x000000F4; // type:object size:0x4 data:4byte +lbl_2_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte +lbl_2_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_2_bss_100 = .bss:0x00000100; // type:object size:0x8 data:4byte +lbl_2_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_2_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_2_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte +lbl_2_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte +lbl_2_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte +lbl_2_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_2_bss_120 = .bss:0x00000120; // type:object size:0x2 data:2byte +lbl_2_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float +lbl_2_bss_128 = .bss:0x00000128; // type:object size:0x4 data:float +lbl_2_bss_12C = .bss:0x0000012C; // type:object size:0x8 data:float +lbl_2_bss_134 = .bss:0x00000134; // type:object size:0x2 data:2byte +lbl_2_bss_136 = .bss:0x00000136; // type:object size:0x8 +lbl_2_bss_13E = .bss:0x0000013E; // type:object size:0xE2 +lbl_2_bss_220 = .bss:0x00000220; // type:object size:0x18 data:4byte +lbl_2_bss_238 = .bss:0x00000238; // type:object size:0x4 data:4byte +lbl_2_bss_23C = .bss:0x0000023C; // type:object size:0x4 data:4byte +lbl_2_bss_240 = .bss:0x00000240; // type:object size:0x4 data:4byte +lbl_2_bss_244 = .bss:0x00000244; // type:object size:0x4 data:4byte +lbl_2_bss_248 = .bss:0x00000248; // type:object size:0x4 data:4byte +lbl_2_bss_24C = .bss:0x0000024C; // type:object size:0x4 data:4byte +lbl_2_bss_250 = .bss:0x00000250; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m402Dll/splits.txt b/config/GMPJ01_00/rels/m402Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m402Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m402Dll/symbols.txt b/config/GMPJ01_00/rels/m402Dll/symbols.txt new file mode 100644 index 00000000..5fa3679a --- /dev/null +++ b/config/GMPJ01_00/rels/m402Dll/symbols.txt @@ -0,0 +1,204 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x218 +fn_1_798 = .text:0x00000798; // type:function size:0x254 +fn_1_9EC = .text:0x000009EC; // type:function size:0x54 +fn_1_A40 = .text:0x00000A40; // type:function size:0x10C +fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C +fn_1_1350 = .text:0x00001350; // type:function size:0x8C +fn_1_13DC = .text:0x000013DC; // type:function size:0x334 +fn_1_1710 = .text:0x00001710; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 +fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 +_prolog = .text:0x000023B4; // type:function size:0x54 scope:global +_epilog = .text:0x00002408; // type:function size:0x4C scope:global +fn_1_2454 = .text:0x00002454; // type:function size:0x2F0 +fn_1_2744 = .text:0x00002744; // type:function size:0x64 +fn_1_27A8 = .text:0x000027A8; // type:function size:0xD8 +fn_1_2880 = .text:0x00002880; // type:function size:0xF0 +fn_1_2970 = .text:0x00002970; // type:function size:0x1C0 +fn_1_2B30 = .text:0x00002B30; // type:function size:0x28C +fn_1_2DBC = .text:0x00002DBC; // type:function size:0x380 +fn_1_313C = .text:0x0000313C; // type:function size:0xC8 +fn_1_3204 = .text:0x00003204; // type:function size:0xF8C +fn_1_4190 = .text:0x00004190; // type:function size:0xF4 +fn_1_4284 = .text:0x00004284; // type:function size:0x154 +fn_1_43D8 = .text:0x000043D8; // type:function size:0x1FF0 +fn_1_63C8 = .text:0x000063C8; // type:function size:0x490 +fn_1_6858 = .text:0x00006858; // type:function size:0x4 +fn_1_685C = .text:0x0000685C; // type:function size:0x258 +fn_1_6AB4 = .text:0x00006AB4; // type:function size:0x3B0 +fn_1_6E64 = .text:0x00006E64; // type:function size:0x1BC +fn_1_7020 = .text:0x00007020; // type:function size:0xC4 +fn_1_70E4 = .text:0x000070E4; // type:function size:0x86C +fn_1_7950 = .text:0x00007950; // type:function size:0x19C +fn_1_7AEC = .text:0x00007AEC; // type:function size:0x25C +fn_1_7D48 = .text:0x00007D48; // type:function size:0x4 +fn_1_7D4C = .text:0x00007D4C; // type:function size:0x134 +fn_1_7E80 = .text:0x00007E80; // type:function size:0x4 +fn_1_7E84 = .text:0x00007E84; // type:function size:0x1C4 +fn_1_8048 = .text:0x00008048; // type:function size:0x1D0 +fn_1_8218 = .text:0x00008218; // type:function size:0xE40 +fn_1_9058 = .text:0x00009058; // type:function size:0x1EC +fn_1_9244 = .text:0x00009244; // type:function size:0x8B0 +fn_1_9AF4 = .text:0x00009AF4; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte +lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0x160 +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x10 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x4 data:4byte +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x8 +lbl_1_data_200 = .data:0x00000200; // type:object size:0x18 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x1C +lbl_1_data_234 = .data:0x00000234; // type:object size:0x190 +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x14 +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x1A data:string +lbl_1_data_3F2 = .data:0x000003F2; // type:object size:0x9 data:string +lbl_1_data_3FB = .data:0x000003FB; // type:object size:0x6 data:string +lbl_1_data_401 = .data:0x00000401; // type:object size:0x10 data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x1F +jumptable_1_data_430 = .data:0x00000430; // type:object size:0x40 scope:local +lbl_1_data_470 = .data:0x00000470; // type:object size:0x17 data:string +lbl_1_data_487 = .data:0x00000487; // type:object size:0x1B data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x24 data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xE +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x100 +lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x40 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 data:float +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x2 data:2byte +lbl_1_bss_1AA = .bss:0x000001AA; // type:object size:0x2 data:2byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x4 data:4byte +lbl_1_bss_1B4 = .bss:0x000001B4; // type:object size:0x4 data:4byte +lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC data:4byte +lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC data:4byte +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC data:4byte +lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0x4 data:4byte +lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x18 data:4byte +lbl_1_bss_204 = .bss:0x00000204; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m403Dll/splits.txt b/config/GMPJ01_00/rels/m403Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m403Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m403Dll/symbols.txt b/config/GMPJ01_00/rels/m403Dll/symbols.txt new file mode 100644 index 00000000..f3ebacb7 --- /dev/null +++ b/config/GMPJ01_00/rels/m403Dll/symbols.txt @@ -0,0 +1,256 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +fn_1_424 = .text:0x00000424; // type:function size:0x20 +fn_1_444 = .text:0x00000444; // type:function size:0x3E8 +fn_1_82C = .text:0x0000082C; // type:function size:0x9E8 +fn_1_1214 = .text:0x00001214; // type:function size:0x60 +fn_1_1274 = .text:0x00001274; // type:function size:0x1EC +fn_1_1460 = .text:0x00001460; // type:function size:0x278 +fn_1_16D8 = .text:0x000016D8; // type:function size:0x104 +fn_1_17DC = .text:0x000017DC; // type:function size:0x274 +fn_1_1A50 = .text:0x00001A50; // type:function size:0xA0 +fn_1_1AF0 = .text:0x00001AF0; // type:function size:0x2B8 +fn_1_1DA8 = .text:0x00001DA8; // type:function size:0x28 +fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x388 +fn_1_2158 = .text:0x00002158; // type:function size:0x14C +fn_1_22A4 = .text:0x000022A4; // type:function size:0x2F4 +fn_1_2598 = .text:0x00002598; // type:function size:0xA44 +fn_1_2FDC = .text:0x00002FDC; // type:function size:0x824 +fn_1_3800 = .text:0x00003800; // type:function size:0x94 +fn_1_3894 = .text:0x00003894; // type:function size:0x2EC +fn_1_3B80 = .text:0x00003B80; // type:function size:0x1EC +fn_1_3D6C = .text:0x00003D6C; // type:function size:0xE0 +fn_1_3E4C = .text:0x00003E4C; // type:function size:0x1C0 +fn_1_400C = .text:0x0000400C; // type:function size:0x9C +fn_1_40A8 = .text:0x000040A8; // type:function size:0x480 +fn_1_4528 = .text:0x00004528; // type:function size:0x54 +fn_1_457C = .text:0x0000457C; // type:function size:0x168 +fn_1_46E4 = .text:0x000046E4; // type:function size:0x120 +fn_1_4804 = .text:0x00004804; // type:function size:0x30C +fn_1_4B10 = .text:0x00004B10; // type:function size:0x78 +fn_1_4B88 = .text:0x00004B88; // type:function size:0x11C +fn_1_4CA4 = .text:0x00004CA4; // type:function size:0x78 +fn_1_4D1C = .text:0x00004D1C; // type:function size:0x2D8 +fn_1_4FF4 = .text:0x00004FF4; // type:function size:0x2B8 +fn_1_52AC = .text:0x000052AC; // type:function size:0x154 +fn_1_5400 = .text:0x00005400; // type:function size:0x3E0 +fn_1_57E0 = .text:0x000057E0; // type:function size:0x214 +fn_1_59F4 = .text:0x000059F4; // type:function size:0x198 +fn_1_5B8C = .text:0x00005B8C; // type:function size:0xD8 +fn_1_5C64 = .text:0x00005C64; // type:function size:0xBC +fn_1_5D20 = .text:0x00005D20; // type:function size:0x33C +fn_1_605C = .text:0x0000605C; // type:function size:0x4B0 +fn_1_650C = .text:0x0000650C; // type:function size:0x260 +fn_1_676C = .text:0x0000676C; // type:function size:0x20 +fn_1_678C = .text:0x0000678C; // type:function size:0x84 +fn_1_6810 = .text:0x00006810; // type:function size:0x4 +fn_1_6814 = .text:0x00006814; // type:function size:0x16C +fn_1_6980 = .text:0x00006980; // type:function size:0x318 +fn_1_6C98 = .text:0x00006C98; // type:function size:0x240 +fn_1_6ED8 = .text:0x00006ED8; // type:function size:0x110 +fn_1_6FE8 = .text:0x00006FE8; // type:function size:0x400 +fn_1_73E8 = .text:0x000073E8; // type:function size:0x5B4 +fn_1_799C = .text:0x0000799C; // type:function size:0xFC +fn_1_7A98 = .text:0x00007A98; // type:function size:0x88 +fn_1_7B20 = .text:0x00007B20; // type:function size:0xB4 +fn_1_7BD4 = .text:0x00007BD4; // type:function size:0x4C +fn_1_7C20 = .text:0x00007C20; // type:function size:0x10 +fn_1_7C30 = .text:0x00007C30; // type:function size:0x20 +fn_1_7C50 = .text:0x00007C50; // type:function size:0x10 +fn_1_7C60 = .text:0x00007C60; // type:function size:0xA4 +fn_1_7D04 = .text:0x00007D04; // type:function size:0x274 +fn_1_7F78 = .text:0x00007F78; // type:function size:0x15C +fn_1_80D4 = .text:0x000080D4; // type:function size:0x180 +fn_1_8254 = .text:0x00008254; // type:function size:0x10 +fn_1_8264 = .text:0x00008264; // type:function size:0x10 +fn_1_8274 = .text:0x00008274; // type:function size:0x5C +fn_1_82D0 = .text:0x000082D0; // type:function size:0x1A0 +fn_1_8470 = .text:0x00008470; // type:function size:0x200 +fn_1_8670 = .text:0x00008670; // type:function size:0x30 +fn_1_86A0 = .text:0x000086A0; // type:function size:0x8CC +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x9 data:byte +lbl_1_rodata_A9 = .rodata:0x000000A9; // type:object size:0xB data:byte +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0xC +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x28 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x4 data:4byte +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x20 +jumptable_1_data_8C = .data:0x0000008C; // type:object size:0x1C scope:local +jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x20 +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x30 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x20 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x20 +lbl_1_data_154 = .data:0x00000154; // type:object size:0x4 data:4byte +lbl_1_data_158 = .data:0x00000158; // type:object size:0xC0 +lbl_1_data_218 = .data:0x00000218; // type:object size:0xC0 +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x78 +lbl_1_data_350 = .data:0x00000350; // type:object size:0x78 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xC0 +lbl_1_data_488 = .data:0x00000488; // type:object size:0xC0 +lbl_1_data_548 = .data:0x00000548; // type:object size:0x78 +lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x78 +lbl_1_data_638 = .data:0x00000638; // type:object size:0x108 +lbl_1_data_740 = .data:0x00000740; // type:object size:0x108 +lbl_1_data_848 = .data:0x00000848; // type:object size:0x108 +lbl_1_data_950 = .data:0x00000950; // type:object size:0x108 +lbl_1_data_A58 = .data:0x00000A58; // type:object size:0x30 +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x48 +lbl_1_data_AD0 = .data:0x00000AD0; // type:object size:0xC data:4byte +lbl_1_data_ADC = .data:0x00000ADC; // type:object size:0xC data:4byte +lbl_1_data_AE8 = .data:0x00000AE8; // type:object size:0x14 data:4byte +lbl_1_data_AFC = .data:0x00000AFC; // type:object size:0x18 +lbl_1_data_B14 = .data:0x00000B14; // type:object size:0x18 +lbl_1_data_B2C = .data:0x00000B2C; // type:object size:0x48 +lbl_1_data_B74 = .data:0x00000B74; // type:object size:0x30 +lbl_1_data_BA4 = .data:0x00000BA4; // type:object size:0x18 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0xC data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte +lbl_1_bss_2A = .bss:0x0000002A; // type:object size:0x2 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x2 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x8 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x18 +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:float +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x14 +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m404Dll/splits.txt b/config/GMPJ01_00/rels/m404Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m404Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m404Dll/symbols.txt b/config/GMPJ01_00/rels/m404Dll/symbols.txt new file mode 100644 index 00000000..b3dd1045 --- /dev/null +++ b/config/GMPJ01_00/rels/m404Dll/symbols.txt @@ -0,0 +1,154 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2DC +fn_1_37C = .text:0x0000037C; // type:function size:0x10 +fn_1_38C = .text:0x0000038C; // type:function size:0x10 +fn_1_39C = .text:0x0000039C; // type:function size:0x64 +fn_1_400 = .text:0x00000400; // type:function size:0x384 +fn_1_784 = .text:0x00000784; // type:function size:0x5C +fn_1_7E0 = .text:0x000007E0; // type:function size:0x2BC +fn_1_A9C = .text:0x00000A9C; // type:function size:0x234 +fn_1_CD0 = .text:0x00000CD0; // type:function size:0x30 +fn_1_D00 = .text:0x00000D00; // type:function size:0xEC +fn_1_DEC = .text:0x00000DEC; // type:function size:0x5C +fn_1_E48 = .text:0x00000E48; // type:function size:0x8C +fn_1_ED4 = .text:0x00000ED4; // type:function size:0x9C +fn_1_F70 = .text:0x00000F70; // type:function size:0x1F0 +fn_1_1160 = .text:0x00001160; // type:function size:0x1E4 +fn_1_1344 = .text:0x00001344; // type:function size:0x7B8 +fn_1_1AFC = .text:0x00001AFC; // type:function size:0x184 +fn_1_1C80 = .text:0x00001C80; // type:function size:0xA8 +fn_1_1D28 = .text:0x00001D28; // type:function size:0xD0 +fn_1_1DF8 = .text:0x00001DF8; // type:function size:0x38C +fn_1_2184 = .text:0x00002184; // type:function size:0xD38 +fn_1_2EBC = .text:0x00002EBC; // type:function size:0xB7C +fn_1_3A38 = .text:0x00003A38; // type:function size:0x3F4 +fn_1_3E2C = .text:0x00003E2C; // type:function size:0x104 +fn_1_3F30 = .text:0x00003F30; // type:function size:0x52C +fn_1_445C = .text:0x0000445C; // type:function size:0x44 +fn_1_44A0 = .text:0x000044A0; // type:function size:0x7DC +fn_1_4C7C = .text:0x00004C7C; // type:function size:0x2D0 +fn_1_4F4C = .text:0x00004F4C; // type:function size:0x32C +fn_1_5278 = .text:0x00005278; // type:function size:0x2C4 +fn_1_553C = .text:0x0000553C; // type:function size:0x5C +fn_1_5598 = .text:0x00005598; // type:function size:0x58 +fn_1_55F0 = .text:0x000055F0; // type:function size:0x4 +fn_1_55F4 = .text:0x000055F4; // type:function size:0x1AC +fn_1_57A0 = .text:0x000057A0; // type:function size:0x4 +fn_1_57A4 = .text:0x000057A4; // type:function size:0x140 +fn_1_58E4 = .text:0x000058E4; // type:function size:0x480 +fn_1_5D64 = .text:0x00005D64; // type:function size:0x110 +fn_1_5E74 = .text:0x00005E74; // type:function size:0x208 +fn_1_607C = .text:0x0000607C; // type:function size:0x1CC +fn_1_6248 = .text:0x00006248; // type:function size:0x1F8 +fn_1_6440 = .text:0x00006440; // type:function size:0x4C +fn_1_648C = .text:0x0000648C; // type:function size:0x250 +fn_1_66DC = .text:0x000066DC; // type:function size:0x5AC +_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:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:2byte +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x20 data:byte +lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x1 data:byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x1 data:byte +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:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x248 +lbl_1_data_248 = .data:0x00000248; // type:object size:0x260 +lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0x290 +lbl_1_data_738 = .data:0x00000738; // type:object size:0x38 data:float +lbl_1_data_770 = .data:0x00000770; // type:object size:0xC data:float +lbl_1_data_77C = .data:0x0000077C; // type:object size:0xC data:float +lbl_1_data_788 = .data:0x00000788; // type:object size:0x4 +lbl_1_data_78C = .data:0x0000078C; // type:object size:0xC +lbl_1_data_798 = .data:0x00000798; // type:object size:0xC +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x24 +lbl_1_data_7C8 = .data:0x000007C8; // type:object size:0x4 data:4byte +jumptable_1_data_7CC = .data:0x000007CC; // type:object size:0x28 scope:local +lbl_1_data_7F4 = .data:0x000007F4; // type:object size:0x1C data:string +lbl_1_data_810 = .data:0x00000810; // type:object size:0xC +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x30 +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x20 +lbl_1_data_86C = .data:0x0000086C; // type:object size:0x20 +lbl_1_data_88C = .data:0x0000088C; // type:object size:0x4 data:4byte +lbl_1_data_890 = .data:0x00000890; // type:object size:0x28 +lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x20 +lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x10 +lbl_1_data_8E8 = .data:0x000008E8; // type:object size:0xC +lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x8 data:wstring +lbl_1_data_8FC = .data:0x000008FC; // type:object size:0x18 +lbl_1_data_914 = .data:0x00000914; // type:object size:0x1C +lbl_1_data_930 = .data:0x00000930; // type:object size:0x20 +lbl_1_data_950 = .data:0x00000950; // type:object size:0x20 +lbl_1_data_970 = .data:0x00000970; // type:object size:0x7 data:string +lbl_1_data_977 = .data:0x00000977; // type:object size:0x7 data:string +lbl_1_data_97E = .data:0x0000097E; // type:object size:0x7 data:string +lbl_1_data_985 = .data:0x00000985; // type:object size:0x7 data:string +lbl_1_data_98C = .data:0x0000098C; // type:object size:0x10 +lbl_1_data_99C = .data:0x0000099C; // type:object size:0x10 +lbl_1_data_9AC = .data:0x000009AC; // type:object size:0x30 +lbl_1_data_9DC = .data:0x000009DC; // type:object size:0x18 data:4byte +lbl_1_data_9F4 = .data:0x000009F4; // type:object size:0x18 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0xC data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x10 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x10 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m405Dll/splits.txt b/config/GMPJ01_00/rels/m405Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m405Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m405Dll/symbols.txt b/config/GMPJ01_00/rels/m405Dll/symbols.txt new file mode 100644 index 00000000..d64b7049 --- /dev/null +++ b/config/GMPJ01_00/rels/m405Dll/symbols.txt @@ -0,0 +1,254 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x218 +fn_1_798 = .text:0x00000798; // type:function size:0x254 +fn_1_9EC = .text:0x000009EC; // type:function size:0x54 +fn_1_A40 = .text:0x00000A40; // type:function size:0x10C +fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C +fn_1_1350 = .text:0x00001350; // type:function size:0x8C +fn_1_13DC = .text:0x000013DC; // type:function size:0x334 +fn_1_1710 = .text:0x00001710; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 +fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 +fn_1_23B4 = .text:0x000023B4; // type:function size:0xCC +fn_1_2480 = .text:0x00002480; // type:function size:0x88 +fn_1_2508 = .text:0x00002508; // type:function size:0x20C +fn_1_2714 = .text:0x00002714; // type:function size:0xF8 +fn_1_280C = .text:0x0000280C; // type:function size:0x2A0 +fn_1_2AAC = .text:0x00002AAC; // type:function size:0xCF8 +fn_1_37A4 = .text:0x000037A4; // type:function size:0x778 +fn_1_3F1C = .text:0x00003F1C; // type:function size:0x24 +fn_1_3F40 = .text:0x00003F40; // type:function size:0xE4 +fn_1_4024 = .text:0x00004024; // type:function size:0x6DC +fn_1_4700 = .text:0x00004700; // type:function size:0x828 +fn_1_4F28 = .text:0x00004F28; // type:function size:0x4DC +fn_1_5404 = .text:0x00005404; // type:function size:0x12C +fn_1_5530 = .text:0x00005530; // type:function size:0x4C +fn_1_557C = .text:0x0000557C; // type:function size:0xE8 +fn_1_5664 = .text:0x00005664; // type:function size:0xF8 +_prolog = .text:0x0000575C; // type:function size:0x54 scope:global +_epilog = .text:0x000057B0; // type:function size:0x4C scope:global +fn_1_57FC = .text:0x000057FC; // type:function size:0xA4 +fn_1_58A0 = .text:0x000058A0; // type:function size:0x288 +fn_1_5B28 = .text:0x00005B28; // type:function size:0x214 +fn_1_5D3C = .text:0x00005D3C; // type:function size:0x90 +fn_1_5DCC = .text:0x00005DCC; // type:function size:0x274 +fn_1_6040 = .text:0x00006040; // type:function size:0x57C +fn_1_65BC = .text:0x000065BC; // type:function size:0x26C +fn_1_6828 = .text:0x00006828; // type:function size:0xA4 +fn_1_68CC = .text:0x000068CC; // type:function size:0x330 +fn_1_6BFC = .text:0x00006BFC; // type:function size:0xD90 +fn_1_798C = .text:0x0000798C; // type:function size:0x828 +fn_1_81B4 = .text:0x000081B4; // type:function size:0x93C +fn_1_8AF0 = .text:0x00008AF0; // type:function size:0x798 +fn_1_9288 = .text:0x00009288; // type:function size:0x1A88 +fn_1_AD10 = .text:0x0000AD10; // type:function size:0x3CC +fn_1_B0DC = .text:0x0000B0DC; // type:function size:0x4EC +fn_1_B5C8 = .text:0x0000B5C8; // type:function size:0x16C +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x1 data:byte +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x30 data:2byte +lbl_1_data_40 = .data:0x00000040; // type:object size:0x60 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x48 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x1 data:byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x14 +lbl_1_data_100 = .data:0x00000100; // type:object size:0xC +lbl_1_data_10C = .data:0x0000010C; // type:object size:0xC data:4byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0xC data:4byte +lbl_1_data_124 = .data:0x00000124; // type:object size:0xC data:4byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0xC data:4byte +lbl_1_data_13C = .data:0x0000013C; // type:object size:0xC data:4byte +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC data:4byte +lbl_1_data_154 = .data:0x00000154; // type:object size:0xC +lbl_1_data_160 = .data:0x00000160; // type:object size:0xC +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 +lbl_1_data_170 = .data:0x00000170; // type:object size:0xC +lbl_1_data_17C = .data:0x0000017C; // type:object size:0xC +lbl_1_data_188 = .data:0x00000188; // type:object size:0x100 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x20 +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x10 +lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x50 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x18 data:4byte +lbl_1_data_328 = .data:0x00000328; // type:object size:0x14 +lbl_1_data_33C = .data:0x0000033C; // type:object size:0xA +lbl_1_data_346 = .data:0x00000346; // type:object size:0xA +lbl_1_data_350 = .data:0x00000350; // type:object size:0x8 +lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 +lbl_1_data_360 = .data:0x00000360; // type:object size:0x8 +lbl_1_data_368 = .data:0x00000368; // type:object size:0x8 +lbl_1_data_370 = .data:0x00000370; // type:object size:0x50 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x50 +lbl_1_data_410 = .data:0x00000410; // type:object size:0xC data:string +lbl_1_data_41C = .data:0x0000041C; // type:object size:0x16 data:string +lbl_1_data_432 = .data:0x00000432; // type:object size:0x1D data:string +lbl_1_data_44F = .data:0x0000044F; // type:object size:0x1D +jumptable_1_data_46C = .data:0x0000046C; // type:object size:0x24 scope:local +lbl_1_data_490 = .data:0x00000490; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x18 data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x18 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x18 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x18 data:float +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:float +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:float +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:float +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x2 data:2byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x2 data:2byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x1 data:byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x500 data:float +lbl_1_bss_5AC = .bss:0x000005AC; // type:object size:0x2C data:4byte +lbl_1_bss_5D8 = .bss:0x000005D8; // type:object size:0x4 data:4byte +lbl_1_bss_5DC = .bss:0x000005DC; // type:object size:0x4 data:4byte +lbl_1_bss_5E0 = .bss:0x000005E0; // type:object size:0x4 data:4byte +lbl_1_bss_5E4 = .bss:0x000005E4; // type:object size:0x4 data:4byte +lbl_1_bss_5E8 = .bss:0x000005E8; // type:object size:0x100 +lbl_1_bss_6E8 = .bss:0x000006E8; // type:object size:0x40 data:4byte +lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x4 data:float +lbl_1_bss_72C = .bss:0x0000072C; // type:object size:0x4 data:4byte +lbl_1_bss_730 = .bss:0x00000730; // type:object size:0x4 data:4byte +lbl_1_bss_734 = .bss:0x00000734; // type:object size:0x2 data:2byte +lbl_1_bss_736 = .bss:0x00000736; // type:object size:0x2 data:2byte +lbl_1_bss_738 = .bss:0x00000738; // type:object size:0x4 data:4byte +lbl_1_bss_73C = .bss:0x0000073C; // type:object size:0x4 data:4byte +lbl_1_bss_740 = .bss:0x00000740; // type:object size:0x4 data:4byte +lbl_1_bss_744 = .bss:0x00000744; // type:object size:0xC data:float +lbl_1_bss_750 = .bss:0x00000750; // type:object size:0xC data:4byte +lbl_1_bss_75C = .bss:0x0000075C; // type:object size:0xC data:float +lbl_1_bss_768 = .bss:0x00000768; // type:object size:0xC data:4byte +lbl_1_bss_774 = .bss:0x00000774; // type:object size:0x4 data:4byte +lbl_1_bss_778 = .bss:0x00000778; // type:object size:0x18 data:4byte +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m406Dll/splits.txt b/config/GMPJ01_00/rels/m406Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m406Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m406Dll/symbols.txt b/config/GMPJ01_00/rels/m406Dll/symbols.txt new file mode 100644 index 00000000..67393891 --- /dev/null +++ b/config/GMPJ01_00/rels/m406Dll/symbols.txt @@ -0,0 +1,434 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x318 +fn_1_3B8 = .text:0x000003B8; // type:function size:0x54 +fn_1_40C = .text:0x0000040C; // type:function size:0xD00 +fn_1_110C = .text:0x0000110C; // type:function size:0x5C +fn_1_1168 = .text:0x00001168; // type:function size:0xC4 +fn_1_122C = .text:0x0000122C; // type:function size:0x10 +fn_1_123C = .text:0x0000123C; // type:function size:0x38 +fn_1_1274 = .text:0x00001274; // type:function size:0x10 +fn_1_1284 = .text:0x00001284; // type:function size:0x38 +fn_1_12BC = .text:0x000012BC; // type:function size:0x84 +fn_1_1340 = .text:0x00001340; // type:function size:0x1DC +fn_1_151C = .text:0x0000151C; // type:function size:0x4 +fn_1_1520 = .text:0x00001520; // type:function size:0x4 +fn_1_1524 = .text:0x00001524; // type:function size:0xAC +fn_1_15D0 = .text:0x000015D0; // type:function size:0x26C +fn_1_183C = .text:0x0000183C; // type:function size:0x35C +fn_1_1B98 = .text:0x00001B98; // type:function size:0x10 +fn_1_1BA8 = .text:0x00001BA8; // type:function size:0x118 +fn_1_1CC0 = .text:0x00001CC0; // type:function size:0x250 +fn_1_1F10 = .text:0x00001F10; // type:function size:0x3F8 +fn_1_2308 = .text:0x00002308; // type:function size:0x624 +fn_1_292C = .text:0x0000292C; // type:function size:0x2C0 +fn_1_2BEC = .text:0x00002BEC; // type:function size:0x38 +fn_1_2C24 = .text:0x00002C24; // type:function size:0x440 +fn_1_3064 = .text:0x00003064; // type:function size:0xF4 +fn_1_3158 = .text:0x00003158; // type:function size:0xF2C +fn_1_4084 = .text:0x00004084; // type:function size:0x4E4 +fn_1_4568 = .text:0x00004568; // type:function size:0x54 +fn_1_45BC = .text:0x000045BC; // type:function size:0x3A8 +fn_1_4964 = .text:0x00004964; // type:function size:0x1810 +fn_1_6174 = .text:0x00006174; // type:function size:0x190 +fn_1_6304 = .text:0x00006304; // type:function size:0x1F4 +fn_1_64F8 = .text:0x000064F8; // type:function size:0x1FC +fn_1_66F4 = .text:0x000066F4; // type:function size:0xD8 +fn_1_67CC = .text:0x000067CC; // type:function size:0x1A0 +fn_1_696C = .text:0x0000696C; // type:function size:0x54 +fn_1_69C0 = .text:0x000069C0; // type:function size:0x84 +fn_1_6A44 = .text:0x00006A44; // type:function size:0x118 +fn_1_6B5C = .text:0x00006B5C; // type:function size:0x58 +fn_1_6BB4 = .text:0x00006BB4; // type:function size:0x370 +fn_1_6F24 = .text:0x00006F24; // type:function size:0xD8 +fn_1_6FFC = .text:0x00006FFC; // type:function size:0x180 +fn_1_717C = .text:0x0000717C; // type:function size:0x48 +fn_1_71C4 = .text:0x000071C4; // type:function size:0x134 +fn_1_72F8 = .text:0x000072F8; // type:function size:0x3B0 +fn_1_76A8 = .text:0x000076A8; // type:function size:0x70 +fn_1_7718 = .text:0x00007718; // type:function size:0xD8 +fn_1_77F0 = .text:0x000077F0; // type:function size:0x1C0 +fn_1_79B0 = .text:0x000079B0; // type:function size:0x48 +fn_1_79F8 = .text:0x000079F8; // type:function size:0x134 +fn_1_7B2C = .text:0x00007B2C; // type:function size:0x70 +fn_1_7B9C = .text:0x00007B9C; // type:function size:0xB0 +fn_1_7C4C = .text:0x00007C4C; // type:function size:0x160 +fn_1_7DAC = .text:0x00007DAC; // type:function size:0x4 +fn_1_7DB0 = .text:0x00007DB0; // type:function size:0x120 +fn_1_7ED0 = .text:0x00007ED0; // type:function size:0xB0 +fn_1_7F80 = .text:0x00007F80; // type:function size:0x180 +fn_1_8100 = .text:0x00008100; // type:function size:0x4 +fn_1_8104 = .text:0x00008104; // type:function size:0x140 +fn_1_8244 = .text:0x00008244; // type:function size:0x84 +fn_1_82C8 = .text:0x000082C8; // type:function size:0xCD0 +fn_1_8F98 = .text:0x00008F98; // type:function size:0x248 +fn_1_91E0 = .text:0x000091E0; // type:function size:0x2DC +fn_1_94BC = .text:0x000094BC; // type:function size:0x4 +fn_1_94C0 = .text:0x000094C0; // type:function size:0xAB8 +fn_1_9F78 = .text:0x00009F78; // type:function size:0x300 +fn_1_A278 = .text:0x0000A278; // type:function size:0x50 +fn_1_A2C8 = .text:0x0000A2C8; // type:function size:0xAEC +fn_1_ADB4 = .text:0x0000ADB4; // type:function size:0x350 +fn_1_B104 = .text:0x0000B104; // type:function size:0xDC +fn_1_B1E0 = .text:0x0000B1E0; // type:function size:0x7C +fn_1_B25C = .text:0x0000B25C; // type:function size:0x1C0 +fn_1_B41C = .text:0x0000B41C; // type:function size:0x54 +fn_1_B470 = .text:0x0000B470; // type:function size:0x4 +fn_1_B474 = .text:0x0000B474; // type:function size:0x488 +fn_1_B8FC = .text:0x0000B8FC; // type:function size:0x31C +fn_1_BC18 = .text:0x0000BC18; // type:function size:0x8DC +fn_1_C4F4 = .text:0x0000C4F4; // type:function size:0x378 +fn_1_C86C = .text:0x0000C86C; // type:function size:0x4C8 +fn_1_CD34 = .text:0x0000CD34; // type:function size:0xA4 +fn_1_CDD8 = .text:0x0000CDD8; // type:function size:0x14C +fn_1_CF24 = .text:0x0000CF24; // type:function size:0x74 +fn_1_CF98 = .text:0x0000CF98; // type:function size:0xD4 +fn_1_D06C = .text:0x0000D06C; // type:function size:0xD0 +fn_1_D13C = .text:0x0000D13C; // type:function size:0x34C +fn_1_D488 = .text:0x0000D488; // type:function size:0x90 +fn_1_D518 = .text:0x0000D518; // type:function size:0xB4 +fn_1_D5CC = .text:0x0000D5CC; // type:function size:0x90 +fn_1_D65C = .text:0x0000D65C; // type:function size:0x254 +fn_1_D8B0 = .text:0x0000D8B0; // type:function size:0x5C +fn_1_D90C = .text:0x0000D90C; // type:function size:0x470 +fn_1_DD7C = .text:0x0000DD7C; // type:function size:0xE4 +fn_1_DE60 = .text:0x0000DE60; // type:function size:0x3B4 +fn_1_E214 = .text:0x0000E214; // type:function size:0xF80 +fn_1_F194 = .text:0x0000F194; // type:function size:0x500 +fn_1_F694 = .text:0x0000F694; // type:function size:0x3BC +fn_1_FA50 = .text:0x0000FA50; // type:function size:0xC0C +fn_1_1065C = .text:0x0001065C; // type:function size:0xE8 +fn_1_10744 = .text:0x00010744; // type:function size:0x914 +fn_1_11058 = .text:0x00011058; // type:function size:0x448 +fn_1_114A0 = .text:0x000114A0; // type:function size:0x31C +fn_1_117BC = .text:0x000117BC; // type:function size:0x228 +fn_1_119E4 = .text:0x000119E4; // type:function size:0x5E0 +fn_1_11FC4 = .text:0x00011FC4; // type:function size:0x1D0 +fn_1_12194 = .text:0x00012194; // type:function size:0xDC +fn_1_12270 = .text:0x00012270; // type:function size:0x4EC +fn_1_1275C = .text:0x0001275C; // type:function size:0x5C +fn_1_127B8 = .text:0x000127B8; // type:function size:0x22C +fn_1_129E4 = .text:0x000129E4; // type:function size:0xD4 +fn_1_12AB8 = .text:0x00012AB8; // type:function size:0x48 +fn_1_12B00 = .text:0x00012B00; // type:function size:0x38 +fn_1_12B38 = .text:0x00012B38; // type:function size:0x8C +fn_1_12BC4 = .text:0x00012BC4; // type:function size:0xAE4 +fn_1_136A8 = .text:0x000136A8; // type:function size:0x4 +fn_1_136AC = .text:0x000136AC; // type:function size:0x3DC +fn_1_13A88 = .text:0x00013A88; // type:function size:0x6C +fn_1_13AF4 = .text:0x00013AF4; // type:function size:0x11C +fn_1_13C10 = .text:0x00013C10; // type:function size:0x7E4 +fn_1_143F4 = .text:0x000143F4; // type:function size:0x330 +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // 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:double +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:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +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_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x1 data:byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x8C data:float +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x24 +jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x40 scope:local +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x348 +lbl_1_data_438 = .data:0x00000438; // type:object size:0x348 +lbl_1_data_780 = .data:0x00000780; // type:object size:0x24 data:float +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x2 data:2byte +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0x1C +lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x1C +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x18 +lbl_1_data_7F8 = .data:0x000007F8; // type:object size:0xC +lbl_1_data_804 = .data:0x00000804; // type:object size:0xC +lbl_1_data_810 = .data:0x00000810; // type:object size:0x4 +lbl_1_data_814 = .data:0x00000814; // type:object size:0xC +lbl_1_data_820 = .data:0x00000820; // type:object size:0xC +lbl_1_data_82C = .data:0x0000082C; // type:object size:0xC +lbl_1_data_838 = .data:0x00000838; // type:object size:0xC +lbl_1_data_844 = .data:0x00000844; // type:object size:0xC +lbl_1_data_850 = .data:0x00000850; // type:object size:0x20 +lbl_1_data_870 = .data:0x00000870; // type:object size:0x1F data:string +lbl_1_data_88F = .data:0x0000088F; // type:object size:0x1 data:byte +lbl_1_data_893 = .data:0x00000893; // type:object size:0x1 data:byte +lbl_1_data_897 = .data:0x00000897; // type:object size:0x1 data:byte +lbl_1_data_89B = .data:0x0000089B; // type:object size:0x1 data:byte +lbl_1_data_89F = .data:0x0000089F; // type:object size:0x5 data:byte +lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x10 +lbl_1_data_8B4 = .data:0x000008B4; // type:object size:0x10 +lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0xC +lbl_1_data_8D0 = .data:0x000008D0; // type:object size:0xC +lbl_1_data_8DC = .data:0x000008DC; // type:object size:0x4 +lbl_1_data_8E0 = .data:0x000008E0; // type:object size:0x30 +lbl_1_data_910 = .data:0x00000910; // type:object size:0x20 +lbl_1_data_930 = .data:0x00000930; // type:object size:0x30 +lbl_1_data_960 = .data:0x00000960; // type:object size:0x348 +lbl_1_data_CA8 = .data:0x00000CA8; // type:object size:0x348 +lbl_1_data_FF0 = .data:0x00000FF0; // type:object size:0x10 +lbl_1_data_1000 = .data:0x00001000; // type:object size:0x19 data:string +lbl_1_data_1019 = .data:0x00001019; // type:object size:0x19 data:string +lbl_1_data_1032 = .data:0x00001032; // type:object size:0x1A data:string +lbl_1_data_104C = .data:0x0000104C; // type:object size:0x1C +lbl_1_data_1068 = .data:0x00001068; // type:object size:0x10 +lbl_1_data_1078 = .data:0x00001078; // type:object size:0x28 +lbl_1_data_10A0 = .data:0x000010A0; // type:object size:0x80 +lbl_1_data_1120 = .data:0x00001120; // type:object size:0x20 +lbl_1_data_1140 = .data:0x00001140; // type:object size:0x8 +lbl_1_data_1148 = .data:0x00001148; // type:object size:0x1C data:string +lbl_1_data_1164 = .data:0x00001164; // type:object size:0x90 +lbl_1_data_11F4 = .data:0x000011F4; // type:object size:0x4 data:4byte +lbl_1_data_11F8 = .data:0x000011F8; // type:object size:0x20 +lbl_1_data_1218 = .data:0x00001218; // type:object size:0x18 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0xC data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x50 +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x8 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x18 data:float +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x8 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:float +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0xC0 +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x4 data:4byte +lbl_1_bss_1C8 = .bss:0x000001C8; // type:object size:0x4 data:4byte +lbl_1_bss_1CC = .bss:0x000001CC; // type:object size:0x4 data:4byte +lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC +lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0xC +lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x2 data:2byte +lbl_1_bss_1F6 = .bss:0x000001F6; // type:object size:0x2 data:2byte +lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m407dll/splits.txt b/config/GMPJ01_00/rels/m407dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m407dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m407dll/symbols.txt b/config/GMPJ01_00/rels/m407dll/symbols.txt new file mode 100644 index 00000000..4fb3dbd8 --- /dev/null +++ b/config/GMPJ01_00/rels/m407dll/symbols.txt @@ -0,0 +1,271 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x54 +fn_1_F4 = .text:0x000000F4; // type:function size:0xA0 +fn_1_194 = .text:0x00000194; // type:function size:0x50 +fn_1_1E4 = .text:0x000001E4; // type:function size:0x54 +fn_1_238 = .text:0x00000238; // type:function size:0x54 +fn_1_28C = .text:0x0000028C; // type:function size:0x54 +fn_1_2E0 = .text:0x000002E0; // type:function size:0x54 +fn_1_334 = .text:0x00000334; // type:function size:0x54 +fn_1_388 = .text:0x00000388; // type:function size:0x3C +fn_1_3C4 = .text:0x000003C4; // type:function size:0x40 +fn_1_404 = .text:0x00000404; // type:function size:0xBC +fn_1_4C0 = .text:0x000004C0; // type:function size:0x48 +fn_1_508 = .text:0x00000508; // type:function size:0x34 +fn_1_53C = .text:0x0000053C; // type:function size:0x2C +fn_1_568 = .text:0x00000568; // type:function size:0xC0 +fn_1_628 = .text:0x00000628; // type:function size:0x24 +fn_1_64C = .text:0x0000064C; // type:function size:0x350 +fn_1_99C = .text:0x0000099C; // type:function size:0x80 +fn_1_A1C = .text:0x00000A1C; // type:function size:0x6C +fn_1_A88 = .text:0x00000A88; // type:function size:0x4 +fn_1_A8C = .text:0x00000A8C; // type:function size:0x1CC +fn_1_C58 = .text:0x00000C58; // type:function size:0x9C +fn_1_CF4 = .text:0x00000CF4; // type:function size:0xC0 +fn_1_DB4 = .text:0x00000DB4; // type:function size:0x1D8 +fn_1_F8C = .text:0x00000F8C; // type:function size:0xE8 +fn_1_1074 = .text:0x00001074; // type:function size:0x158 +fn_1_11CC = .text:0x000011CC; // type:function size:0x218 +fn_1_13E4 = .text:0x000013E4; // type:function size:0x7C +fn_1_1460 = .text:0x00001460; // type:function size:0x90 +fn_1_14F0 = .text:0x000014F0; // type:function size:0xE8 +fn_1_15D8 = .text:0x000015D8; // type:function size:0x54 +fn_1_162C = .text:0x0000162C; // type:function size:0x460 +fn_1_1A8C = .text:0x00001A8C; // type:function size:0x90 +fn_1_1B1C = .text:0x00001B1C; // type:function size:0x18C +fn_1_1CA8 = .text:0x00001CA8; // type:function size:0x4 +fn_1_1CAC = .text:0x00001CAC; // type:function size:0x28 +fn_1_1CD4 = .text:0x00001CD4; // type:function size:0x34 +fn_1_1D08 = .text:0x00001D08; // type:function size:0x28 +fn_1_1D30 = .text:0x00001D30; // type:function size:0x34 +fn_1_1D64 = .text:0x00001D64; // type:function size:0x10 +fn_1_1D74 = .text:0x00001D74; // type:function size:0x14 +fn_1_1D88 = .text:0x00001D88; // type:function size:0x28 +fn_1_1DB0 = .text:0x00001DB0; // type:function size:0x16C +fn_1_1F1C = .text:0x00001F1C; // type:function size:0x108 +fn_1_2024 = .text:0x00002024; // type:function size:0x330 +fn_1_2354 = .text:0x00002354; // type:function size:0x19C +fn_1_24F0 = .text:0x000024F0; // type:function size:0x74 +fn_1_2564 = .text:0x00002564; // type:function size:0x5C +fn_1_25C0 = .text:0x000025C0; // type:function size:0x10C +fn_1_26CC = .text:0x000026CC; // type:function size:0xA4 +fn_1_2770 = .text:0x00002770; // type:function size:0x110 +fn_1_2880 = .text:0x00002880; // type:function size:0x38 +fn_1_28B8 = .text:0x000028B8; // type:function size:0x1C +fn_1_28D4 = .text:0x000028D4; // type:function size:0x10 +fn_1_28E4 = .text:0x000028E4; // type:function size:0x28 +fn_1_290C = .text:0x0000290C; // type:function size:0x24 +fn_1_2930 = .text:0x00002930; // type:function size:0x24C +fn_1_2B7C = .text:0x00002B7C; // type:function size:0x67C +fn_1_31F8 = .text:0x000031F8; // type:function size:0x168 +fn_1_3360 = .text:0x00003360; // type:function size:0x4 +fn_1_3364 = .text:0x00003364; // type:function size:0x140 +fn_1_34A4 = .text:0x000034A4; // type:function size:0x22C +fn_1_36D0 = .text:0x000036D0; // type:function size:0xE0 +fn_1_37B0 = .text:0x000037B0; // type:function size:0x318 +fn_1_3AC8 = .text:0x00003AC8; // type:function size:0xA0 +fn_1_3B68 = .text:0x00003B68; // type:function size:0x50 +fn_1_3BB8 = .text:0x00003BB8; // type:function size:0x170 +fn_1_3D28 = .text:0x00003D28; // type:function size:0x24 +fn_1_3D4C = .text:0x00003D4C; // type:function size:0xE8 +fn_1_3E34 = .text:0x00003E34; // type:function size:0x148 +fn_1_3F7C = .text:0x00003F7C; // type:function size:0x74 +fn_1_3FF0 = .text:0x00003FF0; // type:function size:0x4 +fn_1_3FF4 = .text:0x00003FF4; // type:function size:0x100 +fn_1_40F4 = .text:0x000040F4; // type:function size:0xD8 +fn_1_41CC = .text:0x000041CC; // type:function size:0x328 +fn_1_44F4 = .text:0x000044F4; // type:function size:0x50 +fn_1_4544 = .text:0x00004544; // type:function size:0x118 +fn_1_465C = .text:0x0000465C; // type:function size:0x24 +fn_1_4680 = .text:0x00004680; // type:function size:0x6C +fn_1_46EC = .text:0x000046EC; // type:function size:0x11C +fn_1_4808 = .text:0x00004808; // type:function size:0x50 +fn_1_4858 = .text:0x00004858; // type:function size:0x4 +fn_1_485C = .text:0x0000485C; // type:function size:0x124 +fn_1_4980 = .text:0x00004980; // type:function size:0x1FC +fn_1_4B7C = .text:0x00004B7C; // type:function size:0xC0 +fn_1_4C3C = .text:0x00004C3C; // type:function size:0x30 +fn_1_4C6C = .text:0x00004C6C; // type:function size:0xA0 +fn_1_4D0C = .text:0x00004D0C; // type:function size:0x48 +fn_1_4D54 = .text:0x00004D54; // type:function size:0x138 +fn_1_4E8C = .text:0x00004E8C; // type:function size:0x120 +fn_1_4FAC = .text:0x00004FAC; // type:function size:0x13C +fn_1_50E8 = .text:0x000050E8; // type:function size:0xFC +fn_1_51E4 = .text:0x000051E4; // type:function size:0xC8 +fn_1_52AC = .text:0x000052AC; // type:function size:0x10C +fn_1_53B8 = .text:0x000053B8; // type:function size:0x1BC +fn_1_5574 = .text:0x00005574; // type:function size:0xBC +fn_1_5630 = .text:0x00005630; // type:function size:0x1D4 +fn_1_5804 = .text:0x00005804; // type:function size:0x27C +fn_1_5A80 = .text:0x00005A80; // type:function size:0x130 +fn_1_5BB0 = .text:0x00005BB0; // type:function size:0xAC +fn_1_5C5C = .text:0x00005C5C; // type:function size:0x270 +fn_1_5ECC = .text:0x00005ECC; // type:function size:0x74 +fn_1_5F40 = .text:0x00005F40; // type:function size:0x50 +fn_1_5F90 = .text:0x00005F90; // type:function size:0x24 +fn_1_5FB4 = .text:0x00005FB4; // type:function size:0x30 +fn_1_5FE4 = .text:0x00005FE4; // type:function size:0x1BC +fn_1_61A0 = .text:0x000061A0; // type:function size:0x78 +fn_1_6218 = .text:0x00006218; // type:function size:0x88 +fn_1_62A0 = .text:0x000062A0; // type:function size:0x164 +_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_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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:0x20 +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:4byte +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0xC data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x100 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x20 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x1C +lbl_1_data_13C = .data:0x0000013C; // type:object size:0x20 +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x8 +lbl_1_data_18C = .data:0x0000018C; // type:object size:0xC +lbl_1_data_198 = .data:0x00000198; // type:object size:0x34 data:4byte +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x30 +lbl_1_data_1FC = .data:0x000001FC; // type:object size:0xC data:float +lbl_1_data_208 = .data:0x00000208; // type:object size:0xC +lbl_1_data_214 = .data:0x00000214; // type:object size:0x4 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x10 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x10 data:4byte +lbl_1_data_238 = .data:0x00000238; // type:object size:0x20 data:4byte +lbl_1_data_258 = .data:0x00000258; // type:object size:0x14 +lbl_1_data_26C = .data:0x0000026C; // type:object size:0xC +lbl_1_data_278 = .data:0x00000278; // type:object size:0x10 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x14 +lbl_1_data_29C = .data:0x0000029C; // type:object size:0xC +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x34 +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0x10 +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xC +lbl_1_data_2F8 = .data:0x000002F8; // type:object size:0xC +lbl_1_data_304 = .data:0x00000304; // type:object size:0x4 +lbl_1_data_308 = .data:0x00000308; // type:object size:0xC +lbl_1_data_314 = .data:0x00000314; // type:object size:0xC +lbl_1_data_320 = .data:0x00000320; // type:object size:0x4 +lbl_1_data_324 = .data:0x00000324; // type:object size:0xC +lbl_1_data_330 = .data:0x00000330; // type:object size:0xC +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 +lbl_1_data_340 = .data:0x00000340; // type:object size:0xC +lbl_1_data_34C = .data:0x0000034C; // type:object size:0xC +lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 +lbl_1_data_360 = .data:0x00000360; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x8 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x10 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x2 data:2byte +lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x2A +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_66 = .bss:0x00000066; // type:object size:0x2 data:2byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x1E30 data:2byte +lbl_1_bss_1E98 = .bss:0x00001E98; // type:object size:0xF18 +lbl_1_bss_2DB0 = .bss:0x00002DB0; // type:object size:0xA10 +lbl_1_bss_37C0 = .bss:0x000037C0; // type:object size:0x8 data:4byte +lbl_1_bss_37C8 = .bss:0x000037C8; // type:object size:0x10 +lbl_1_bss_37D8 = .bss:0x000037D8; // type:object size:0x8 data:4byte +lbl_1_bss_37E0 = .bss:0x000037E0; // type:object size:0x190 +lbl_1_bss_3970 = .bss:0x00003970; // type:object size:0x8 data:4byte +lbl_1_bss_3978 = .bss:0x00003978; // type:object size:0x2 data:2byte +lbl_1_bss_397C = .bss:0x0000397C; // type:object size:0x4 data:4byte +lbl_1_bss_3980 = .bss:0x00003980; // type:object size:0x8 data:4byte +lbl_1_bss_3988 = .bss:0x00003988; // type:object size:0x4 data:4byte +lbl_1_bss_398C = .bss:0x0000398C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m408Dll/splits.txt b/config/GMPJ01_00/rels/m408Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m408Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m408Dll/symbols.txt b/config/GMPJ01_00/rels/m408Dll/symbols.txt new file mode 100644 index 00000000..0553b57b --- /dev/null +++ b/config/GMPJ01_00/rels/m408Dll/symbols.txt @@ -0,0 +1,549 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x47C +fn_1_51C = .text:0x0000051C; // type:function size:0x50 +fn_1_56C = .text:0x0000056C; // type:function size:0x438 +fn_1_9A4 = .text:0x000009A4; // type:function size:0x4C +fn_1_9F0 = .text:0x000009F0; // type:function size:0x50 +fn_1_A40 = .text:0x00000A40; // type:function size:0x298 +fn_1_CD8 = .text:0x00000CD8; // type:function size:0x220 +fn_1_EF8 = .text:0x00000EF8; // type:function size:0x3A8 +fn_1_12A0 = .text:0x000012A0; // type:function size:0x1EC +fn_1_148C = .text:0x0000148C; // type:function size:0x434 +fn_1_18C0 = .text:0x000018C0; // type:function size:0x80 +fn_1_1940 = .text:0x00001940; // type:function size:0x120 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x98 +fn_1_1AF8 = .text:0x00001AF8; // type:function size:0xF0 +fn_1_1BE8 = .text:0x00001BE8; // type:function size:0x26C +fn_1_1E54 = .text:0x00001E54; // type:function size:0x68 +fn_1_1EBC = .text:0x00001EBC; // type:function size:0x718 +fn_1_25D4 = .text:0x000025D4; // type:function size:0x110 +fn_1_26E4 = .text:0x000026E4; // type:function size:0x8C8 +fn_1_2FAC = .text:0x00002FAC; // type:function size:0x924 +fn_1_38D0 = .text:0x000038D0; // type:function size:0x5B0 +fn_1_3E80 = .text:0x00003E80; // type:function size:0xBD8 +fn_1_4A58 = .text:0x00004A58; // type:function size:0x640 +fn_1_5098 = .text:0x00005098; // type:function size:0x44C +fn_1_54E4 = .text:0x000054E4; // type:function size:0x1A0 +fn_1_5684 = .text:0x00005684; // type:function size:0x41C +fn_1_5AA0 = .text:0x00005AA0; // type:function size:0x14 +fn_1_5AB4 = .text:0x00005AB4; // type:function size:0x318 +fn_1_5DCC = .text:0x00005DCC; // type:function size:0x430 +fn_1_61FC = .text:0x000061FC; // type:function size:0x344 +fn_1_6540 = .text:0x00006540; // type:function size:0x284 +fn_1_67C4 = .text:0x000067C4; // type:function size:0xA4 +fn_1_6868 = .text:0x00006868; // type:function size:0x10 +fn_1_6878 = .text:0x00006878; // type:function size:0x10 +fn_1_6888 = .text:0x00006888; // type:function size:0x10 +fn_1_6898 = .text:0x00006898; // type:function size:0x4 +fn_1_689C = .text:0x0000689C; // type:function size:0x8 +fn_1_68A4 = .text:0x000068A4; // type:function size:0x4 +fn_1_68A8 = .text:0x000068A8; // type:function size:0x1C +fn_1_68C4 = .text:0x000068C4; // type:function size:0x364 +fn_1_6C28 = .text:0x00006C28; // type:function size:0x324 +fn_1_6F4C = .text:0x00006F4C; // type:function size:0x66C +fn_1_75B8 = .text:0x000075B8; // type:function size:0x260 +fn_1_7818 = .text:0x00007818; // type:function size:0xC0 +fn_1_78D8 = .text:0x000078D8; // type:function size:0x748 +fn_1_8020 = .text:0x00008020; // type:function size:0x15C +fn_1_817C = .text:0x0000817C; // type:function size:0x348 +fn_1_84C4 = .text:0x000084C4; // type:function size:0x378 +fn_1_883C = .text:0x0000883C; // type:function size:0x11C +fn_1_8958 = .text:0x00008958; // type:function size:0xC8 +fn_1_8A20 = .text:0x00008A20; // type:function size:0x58C +fn_1_8FAC = .text:0x00008FAC; // type:function size:0x568 +fn_1_9514 = .text:0x00009514; // type:function size:0x25C +fn_1_9770 = .text:0x00009770; // type:function size:0x258 +fn_1_99C8 = .text:0x000099C8; // type:function size:0x96C +fn_1_A334 = .text:0x0000A334; // type:function size:0x48 +fn_1_A37C = .text:0x0000A37C; // type:function size:0x16C +fn_1_A4E8 = .text:0x0000A4E8; // type:function size:0x3AC +fn_1_A894 = .text:0x0000A894; // type:function size:0x760 +fn_1_AFF4 = .text:0x0000AFF4; // type:function size:0x70C +fn_1_B700 = .text:0x0000B700; // type:function size:0x494 +fn_1_BB94 = .text:0x0000BB94; // type:function size:0x24C +fn_1_BDE0 = .text:0x0000BDE0; // type:function size:0x5E0 +fn_1_C3C0 = .text:0x0000C3C0; // type:function size:0x7C +fn_1_C43C = .text:0x0000C43C; // type:function size:0x10 +fn_1_C44C = .text:0x0000C44C; // type:function size:0x98 +fn_1_C4E4 = .text:0x0000C4E4; // type:function size:0x4C +fn_1_C530 = .text:0x0000C530; // type:function size:0x7E4 +fn_1_CD14 = .text:0x0000CD14; // type:function size:0x154 +fn_1_CE68 = .text:0x0000CE68; // type:function size:0x84 +fn_1_CEEC = .text:0x0000CEEC; // type:function size:0x118 +fn_1_D004 = .text:0x0000D004; // type:function size:0x6EC +fn_1_D6F0 = .text:0x0000D6F0; // type:function size:0x288 +fn_1_D978 = .text:0x0000D978; // type:function size:0xF4 +fn_1_DA6C = .text:0x0000DA6C; // type:function size:0x564 +fn_1_DFD0 = .text:0x0000DFD0; // type:function size:0x340 +fn_1_E310 = .text:0x0000E310; // type:function size:0x6A4 +fn_1_E9B4 = .text:0x0000E9B4; // type:function size:0x544 +fn_1_EEF8 = .text:0x0000EEF8; // type:function size:0x174 +fn_1_F06C = .text:0x0000F06C; // type:function size:0x444 +fn_1_F4B0 = .text:0x0000F4B0; // type:function size:0xB4 +fn_1_F564 = .text:0x0000F564; // type:function size:0x33C +fn_1_F8A0 = .text:0x0000F8A0; // type:function size:0x2F8 +fn_1_FB98 = .text:0x0000FB98; // type:function size:0x8EC +fn_1_10484 = .text:0x00010484; // type:function size:0x3AC +fn_1_10830 = .text:0x00010830; // type:function size:0x330 +fn_1_10B60 = .text:0x00010B60; // type:function size:0xB10 +fn_1_11670 = .text:0x00011670; // type:function size:0x54 +fn_1_116C4 = .text:0x000116C4; // type:function size:0xBC +fn_1_11780 = .text:0x00011780; // type:function size:0x150 +fn_1_118D0 = .text:0x000118D0; // type:function size:0x90 +fn_1_11960 = .text:0x00011960; // type:function size:0x4DC +fn_1_11E3C = .text:0x00011E3C; // type:function size:0x518 +fn_1_12354 = .text:0x00012354; // type:function size:0x74 +fn_1_123C8 = .text:0x000123C8; // type:function size:0x2A8 +fn_1_12670 = .text:0x00012670; // type:function size:0x4 +fn_1_12674 = .text:0x00012674; // type:function size:0x12C +fn_1_127A0 = .text:0x000127A0; // type:function size:0x4CC +fn_1_12C6C = .text:0x00012C6C; // type:function size:0x3F0 +fn_1_1305C = .text:0x0001305C; // type:function size:0x47C +fn_1_134D8 = .text:0x000134D8; // type:function size:0x348 +fn_1_13820 = .text:0x00013820; // type:function size:0x568 +fn_1_13D88 = .text:0x00013D88; // type:function size:0x2E4 +fn_1_1406C = .text:0x0001406C; // type:function size:0x464 +fn_1_144D0 = .text:0x000144D0; // type:function size:0x8E4 +fn_1_14DB4 = .text:0x00014DB4; // type:function size:0x3F0 +fn_1_151A4 = .text:0x000151A4; // type:function size:0x43C +fn_1_155E0 = .text:0x000155E0; // type:function size:0x38 +fn_1_15618 = .text:0x00015618; // type:function size:0x40 +fn_1_15658 = .text:0x00015658; // type:function size:0x4F8 +fn_1_15B50 = .text:0x00015B50; // type:function size:0x7C +fn_1_15BCC = .text:0x00015BCC; // type:function size:0xD8 +fn_1_15CA4 = .text:0x00015CA4; // type:function size:0xC0 +fn_1_15D64 = .text:0x00015D64; // type:function size:0x568 +fn_1_162CC = .text:0x000162CC; // type:function size:0xFC +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x10 data:4byte +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x30 data:4byte +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x10 data:4byte +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +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:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x20 data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x38 data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x48 +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x10 data:4byte +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x10 data:4byte +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x28 data:2byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x10 data:4byte +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x10 data:4byte +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x8 data:double +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 data:double +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:double +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x8 data:double +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x8 data:double +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x8 data:double +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 data:double +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x8 data:double +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x8 data:double +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x8 data:double +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x8 data:double +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x4 data:float +lbl_1_rodata_694 = .rodata:0x00000694; // type:object size:0x4 data:float +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float +lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float +lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:double +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:double +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x4 data:float +lbl_1_rodata_6C4 = .rodata:0x000006C4; // type:object size:0x4 data:float +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x4 data:float +lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0x4 data:float +lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x4 data:float +lbl_1_rodata_6D4 = .rodata:0x000006D4; // type:object size:0x4 data:float +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x8 data:double +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x4 data:float +lbl_1_rodata_6F4 = .rodata:0x000006F4; // type:object size:0x4 data:float +lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float +lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0x4 data:float +lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x8 data:double +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 data:double +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x4 data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x8 data:double +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float +lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float +lbl_1_rodata_73C = .rodata:0x0000073C; // type:object size:0x4 data:float +lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x4 data:float +lbl_1_rodata_744 = .rodata:0x00000744; // type:object size:0x4 data:float +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 data:double +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float +lbl_1_rodata_754 = .rodata:0x00000754; // type:object size:0x4 data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x8 data:double +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 data:float +lbl_1_rodata_764 = .rodata:0x00000764; // type:object size:0x4 data:float +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x4 data:float +lbl_1_rodata_76C = .rodata:0x0000076C; // type:object size:0x4 data:float +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x4 data:float +lbl_1_rodata_774 = .rodata:0x00000774; // type:object size:0x4 data:float +lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x4 data:float +lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0x4 data:float +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x4 data:float +lbl_1_rodata_784 = .rodata:0x00000784; // type:object size:0x4 data:float +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x8 data:double +lbl_1_rodata_790 = .rodata:0x00000790; // type:object size:0x4 data:float +lbl_1_rodata_794 = .rodata:0x00000794; // type:object size:0x4 data:float +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x4 data:float +lbl_1_rodata_79C = .rodata:0x0000079C; // type:object size:0x4 data:float +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x4 data:float +lbl_1_rodata_7A4 = .rodata:0x000007A4; // type:object size:0x4 data:float +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float +lbl_1_rodata_7AC = .rodata:0x000007AC; // type:object size:0x4 data:float +lbl_1_rodata_7B0 = .rodata:0x000007B0; // type:object size:0x4 data:float +lbl_1_rodata_7B4 = .rodata:0x000007B4; // type:object size:0x4 data:float +lbl_1_rodata_7B8 = .rodata:0x000007B8; // type:object size:0x4 data:float +lbl_1_rodata_7BC = .rodata:0x000007BC; // type:object size:0x4 data:float +lbl_1_rodata_7C0 = .rodata:0x000007C0; // type:object size:0x8 data:double +lbl_1_rodata_7C8 = .rodata:0x000007C8; // type:object size:0x4 data:float +lbl_1_rodata_7CC = .rodata:0x000007CC; // type:object size:0x4 data:float +lbl_1_rodata_7D0 = .rodata:0x000007D0; // type:object size:0x4 data:float +lbl_1_rodata_7D8 = .rodata:0x000007D8; // type:object size:0x8 data:double +lbl_1_rodata_7E0 = .rodata:0x000007E0; // type:object size:0x8 data:double +lbl_1_rodata_7E8 = .rodata:0x000007E8; // type:object size:0x4 data:float +lbl_1_rodata_7EC = .rodata:0x000007EC; // type:object size:0x4 data:float +lbl_1_rodata_7F0 = .rodata:0x000007F0; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0xC +lbl_1_data_2C = .data:0x0000002C; // type:object size:0xC +lbl_1_data_38 = .data:0x00000038; // type:object size:0x20 +lbl_1_data_58 = .data:0x00000058; // type:object size:0xC +lbl_1_data_64 = .data:0x00000064; // type:object size:0xC +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x7 data:string +lbl_1_data_83 = .data:0x00000083; // type:object size:0x7 data:string +lbl_1_data_8A = .data:0x0000008A; // type:object size:0x7 data:string +lbl_1_data_91 = .data:0x00000091; // type:object size:0x7 data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x28 +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x20 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x1C +lbl_1_data_104 = .data:0x00000104; // type:object size:0x40 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x58 +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x4 data:4byte +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x24 +lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x24 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x24 +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x2E8 +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x10 +lbl_1_data_504 = .data:0x00000504; // type:object size:0x4 +lbl_1_data_508 = .data:0x00000508; // type:object size:0xC +lbl_1_data_514 = .data:0x00000514; // type:object size:0xC +lbl_1_data_520 = .data:0x00000520; // type:object size:0x30 +jumptable_1_data_550 = .data:0x00000550; // type:object size:0x24 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x14 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_1_bss_62 = .bss:0x00000062; // type:object size:0x2 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_66 = .bss:0x00000066; // type:object size:0x6 data:2byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x8 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0xC +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0xC +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x50 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0xC data:float +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0xC data:float +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x8 data:4byte +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x2 data:2byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x8 data:4byte +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x8 data:4byte +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x4 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x2 data:2byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x1C data:4byte +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0xC00 +lbl_1_bss_D6C = .bss:0x00000D6C; // type:object size:0x30 +lbl_1_bss_D9C = .bss:0x00000D9C; // type:object size:0x4 data:4byte +lbl_1_bss_DA0 = .bss:0x00000DA0; // type:object size:0x4 data:4byte +lbl_1_bss_DA4 = .bss:0x00000DA4; // type:object size:0x6800 data:float +lbl_1_bss_75A4 = .bss:0x000075A4; // type:object size:0x4 data:4byte +lbl_1_bss_75A8 = .bss:0x000075A8; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m409Dll/splits.txt b/config/GMPJ01_00/rels/m409Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m409Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m409Dll/symbols.txt b/config/GMPJ01_00/rels/m409Dll/symbols.txt new file mode 100644 index 00000000..40e875cb --- /dev/null +++ b/config/GMPJ01_00/rels/m409Dll/symbols.txt @@ -0,0 +1,332 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x394 +fn_1_434 = .text:0x00000434; // type:function size:0xA8 +fn_1_4DC = .text:0x000004DC; // type:function size:0x48 +fn_1_524 = .text:0x00000524; // type:function size:0x65C +fn_1_B80 = .text:0x00000B80; // type:function size:0x25C +fn_1_DDC = .text:0x00000DDC; // type:function size:0x194 +fn_1_F70 = .text:0x00000F70; // type:function size:0x178 +fn_1_10E8 = .text:0x000010E8; // type:function size:0xA8C +fn_1_1B74 = .text:0x00001B74; // type:function size:0x524 +fn_1_2098 = .text:0x00002098; // type:function size:0x354 +fn_1_23EC = .text:0x000023EC; // type:function size:0x28 +fn_1_2414 = .text:0x00002414; // type:function size:0x40 +fn_1_2454 = .text:0x00002454; // type:function size:0x30 +fn_1_2484 = .text:0x00002484; // type:function size:0x948 +fn_1_2DCC = .text:0x00002DCC; // type:function size:0xA74 +fn_1_3840 = .text:0x00003840; // type:function size:0x148 +fn_1_3988 = .text:0x00003988; // type:function size:0x150 +fn_1_3AD8 = .text:0x00003AD8; // type:function size:0x5CC +fn_1_40A4 = .text:0x000040A4; // type:function size:0x7C +fn_1_4120 = .text:0x00004120; // type:function size:0x5C +fn_1_417C = .text:0x0000417C; // type:function size:0x374 +fn_1_44F0 = .text:0x000044F0; // type:function size:0xB0C +fn_1_4FFC = .text:0x00004FFC; // type:function size:0x40C +fn_1_5408 = .text:0x00005408; // type:function size:0x1D8 +fn_1_55E0 = .text:0x000055E0; // type:function size:0x1FC +fn_1_57DC = .text:0x000057DC; // type:function size:0x104 +fn_1_58E0 = .text:0x000058E0; // type:function size:0x138 +fn_1_5A18 = .text:0x00005A18; // type:function size:0x544 +fn_1_5F5C = .text:0x00005F5C; // type:function size:0x60 +fn_1_5FBC = .text:0x00005FBC; // type:function size:0x38 +fn_1_5FF4 = .text:0x00005FF4; // type:function size:0x38 +fn_1_602C = .text:0x0000602C; // type:function size:0x5DC +fn_1_6608 = .text:0x00006608; // type:function size:0xCC +fn_1_66D4 = .text:0x000066D4; // type:function size:0xA4 +fn_1_6778 = .text:0x00006778; // type:function size:0x68 +fn_1_67E0 = .text:0x000067E0; // type:function size:0x120 +fn_1_6900 = .text:0x00006900; // type:function size:0x28 +fn_1_6928 = .text:0x00006928; // type:function size:0xA1C +fn_1_7344 = .text:0x00007344; // type:function size:0xCA4 +fn_1_7FE8 = .text:0x00007FE8; // type:function size:0x850 +fn_1_8838 = .text:0x00008838; // type:function size:0x4D0 +fn_1_8D08 = .text:0x00008D08; // type:function size:0x64 +fn_1_8D6C = .text:0x00008D6C; // type:function size:0x454 +fn_1_91C0 = .text:0x000091C0; // type:function size:0x46C +fn_1_962C = .text:0x0000962C; // type:function size:0xF58 +fn_1_A584 = .text:0x0000A584; // type:function size:0x43C +fn_1_A9C0 = .text:0x0000A9C0; // type:function size:0x1F4 +fn_1_ABB4 = .text:0x0000ABB4; // type:function size:0x54 +fn_1_AC08 = .text:0x0000AC08; // type:function size:0x138 +fn_1_AD40 = .text:0x0000AD40; // type:function size:0x154 +fn_1_AE94 = .text:0x0000AE94; // type:function size:0x78 +fn_1_AF0C = .text:0x0000AF0C; // type:function size:0x11C +fn_1_B028 = .text:0x0000B028; // type:function size:0x78 +fn_1_B0A0 = .text:0x0000B0A0; // type:function size:0x2D8 +fn_1_B378 = .text:0x0000B378; // type:function size:0x198 +fn_1_B510 = .text:0x0000B510; // type:function size:0xD8 +fn_1_B5E8 = .text:0x0000B5E8; // type:function size:0xBC +fn_1_B6A4 = .text:0x0000B6A4; // type:function size:0x33C +fn_1_B9E0 = .text:0x0000B9E0; // type:function size:0x4B0 +fn_1_BE90 = .text:0x0000BE90; // type:function size:0xA8 +fn_1_BF38 = .text:0x0000BF38; // type:function size:0x50 +fn_1_BF88 = .text:0x0000BF88; // type:function size:0x138 +fn_1_C0C0 = .text:0x0000C0C0; // type:function size:0xA4 +fn_1_C164 = .text:0x0000C164; // type:function size:0xA34 +fn_1_CB98 = .text:0x0000CB98; // type:function size:0x118 +fn_1_CCB0 = .text:0x0000CCB0; // type:function size:0x1C +fn_1_CCCC = .text:0x0000CCCC; // type:function size:0x2C +fn_1_CCF8 = .text:0x0000CCF8; // type:function size:0x184 +fn_1_CE7C = .text:0x0000CE7C; // type:function size:0xA0 +fn_1_CF1C = .text:0x0000CF1C; // type:function size:0xA8 +fn_1_CFC4 = .text:0x0000CFC4; // type:function size:0x8C +fn_1_D050 = .text:0x0000D050; // type:function size:0x98 +fn_1_D0E8 = .text:0x0000D0E8; // type:function size:0x348 +fn_1_D430 = .text:0x0000D430; // type:function size:0x618 +fn_1_DA48 = .text:0x0000DA48; // type:function size:0x370 +fn_1_DDB8 = .text:0x0000DDB8; // type:function size:0x13C +fn_1_DEF4 = .text:0x0000DEF4; // type:function size:0x2C +fn_1_DF20 = .text:0x0000DF20; // type:function size:0x308 +fn_1_E228 = .text:0x0000E228; // type:function size:0x80 +fn_1_E2A8 = .text:0x0000E2A8; // type:function size:0x520 +fn_1_E7C8 = .text:0x0000E7C8; // type:function size:0x50 +fn_1_E818 = .text:0x0000E818; // type:function size:0x44 +fn_1_E85C = .text:0x0000E85C; // type:function size:0x70 +fn_1_E8CC = .text:0x0000E8CC; // type:function size:0x74 +fn_1_E940 = .text:0x0000E940; // type:function size:0x5C +fn_1_E99C = .text:0x0000E99C; // type:function size:0x88 +fn_1_EA24 = .text:0x0000EA24; // type:function size:0x8C +fn_1_EAB0 = .text:0x0000EAB0; // type:function size:0x44 +fn_1_EAF4 = .text:0x0000EAF4; // type:function size:0x70 +fn_1_EB64 = .text:0x0000EB64; // type:function size:0x74 +fn_1_EBD8 = .text:0x0000EBD8; // type:function size:0x44 +fn_1_EC1C = .text:0x0000EC1C; // type:function size:0x70 +fn_1_EC8C = .text:0x0000EC8C; // type:function size:0x74 +fn_1_ED00 = .text:0x0000ED00; // type:function size:0x44 +fn_1_ED44 = .text:0x0000ED44; // type:function size:0x70 +fn_1_EDB4 = .text:0x0000EDB4; // type:function size:0x70 +fn_1_EE24 = .text:0x0000EE24; // type:function size:0x44 +fn_1_EE68 = .text:0x0000EE68; // type:function size:0x70 +fn_1_EED8 = .text:0x0000EED8; // type:function size:0x70 +fn_1_EF48 = .text:0x0000EF48; // type:function size:0x5C +fn_1_EFA4 = .text:0x0000EFA4; // type:function size:0x80 +fn_1_F024 = .text:0x0000F024; // type:function size:0x74 +fn_1_F098 = .text:0x0000F098; // type:function size:0x78 +fn_1_F110 = .text:0x0000F110; // type:function size:0x6C +fn_1_F17C = .text:0x0000F17C; // type:function size:0x78 +fn_1_F1F4 = .text:0x0000F1F4; // type:function size:0x98 +fn_1_F28C = .text:0x0000F28C; // type:function size:0x6C +fn_1_F2F8 = .text:0x0000F2F8; // type:function size:0x78 +fn_1_F370 = .text:0x0000F370; // type:function size:0x98 +fn_1_F408 = .text:0x0000F408; // type:function size:0x70 +fn_1_F478 = .text:0x0000F478; // type:function size:0x78 +fn_1_F4F0 = .text:0x0000F4F0; // type:function size:0x98 +_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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x30 data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x100 +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x30 data:4byte +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x10 data:byte +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +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_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 +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x70 data:float +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x9 data:string +lbl_1_data_CD = .data:0x000000CD; // type:object size:0x9 data:string +lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x3 data:string +lbl_1_data_D9 = .data:0x000000D9; // type:object size:0x10 data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x26 data:string +lbl_1_data_10F = .data:0x0000010F; // type:object size:0x2D +lbl_1_data_13C = .data:0x0000013C; // type:object size:0x1C +lbl_1_data_158 = .data:0x00000158; // type:object size:0x20 +lbl_1_data_178 = .data:0x00000178; // type:object size:0x40 +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x14 +jumptable_1_data_1CC = .data:0x000001CC; // type:object size:0x20 scope:local +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x4 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x1 data:byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x1 data:byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x1 data:byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x1 data:byte +lbl_1_bss_21 = .bss:0x00000021; // type:object size:0x1 data:byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x9C data:2byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 data:2byte +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x8 data:4byte +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x14 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x2 data:2byte +lbl_1_bss_106 = .bss:0x00000106; // type:object size:0x2 data:2byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x2 data:2byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x280 data:float +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x10 +lbl_1_bss_39C = .bss:0x0000039C; // type:object size:0x4 data:4byte +lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x10 diff --git a/config/GMPJ01_00/rels/m410Dll/splits.txt b/config/GMPJ01_00/rels/m410Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m410Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m410Dll/symbols.txt b/config/GMPJ01_00/rels/m410Dll/symbols.txt new file mode 100644 index 00000000..64fb64e4 --- /dev/null +++ b/config/GMPJ01_00/rels/m410Dll/symbols.txt @@ -0,0 +1,317 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x444 +fn_1_4E4 = .text:0x000004E4; // type:function size:0xC4 +fn_1_5A8 = .text:0x000005A8; // type:function size:0x94 +fn_1_63C = .text:0x0000063C; // type:function size:0x16C +fn_1_7A8 = .text:0x000007A8; // type:function size:0x314 +fn_1_ABC = .text:0x00000ABC; // type:function size:0x330 +fn_1_DEC = .text:0x00000DEC; // type:function size:0x204 +fn_1_FF0 = .text:0x00000FF0; // type:function size:0x3AC +fn_1_139C = .text:0x0000139C; // type:function size:0x2AC +fn_1_1648 = .text:0x00001648; // type:function size:0x380 +fn_1_19C8 = .text:0x000019C8; // type:function size:0xB4 +fn_1_1A7C = .text:0x00001A7C; // type:function size:0x6F0 +fn_1_216C = .text:0x0000216C; // type:function size:0x1C +fn_1_2188 = .text:0x00002188; // type:function size:0x664 +fn_1_27EC = .text:0x000027EC; // type:function size:0x18 +fn_1_2804 = .text:0x00002804; // type:function size:0x18 +fn_1_281C = .text:0x0000281C; // type:function size:0x18 +fn_1_2834 = .text:0x00002834; // type:function size:0x18 +fn_1_284C = .text:0x0000284C; // type:function size:0x18 +fn_1_2864 = .text:0x00002864; // type:function size:0x18 +fn_1_287C = .text:0x0000287C; // type:function size:0x30 +fn_1_28AC = .text:0x000028AC; // type:function size:0x30 +fn_1_28DC = .text:0x000028DC; // type:function size:0x38 +fn_1_2914 = .text:0x00002914; // type:function size:0x348 +fn_1_2C5C = .text:0x00002C5C; // type:function size:0x378 +fn_1_2FD4 = .text:0x00002FD4; // type:function size:0x11C +fn_1_30F0 = .text:0x000030F0; // type:function size:0xB4 +fn_1_31A4 = .text:0x000031A4; // type:function size:0x54 +fn_1_31F8 = .text:0x000031F8; // type:function size:0x4 +fn_1_31FC = .text:0x000031FC; // type:function size:0x154 +fn_1_3350 = .text:0x00003350; // type:function size:0x58 +fn_1_33A8 = .text:0x000033A8; // type:function size:0xDC +fn_1_3484 = .text:0x00003484; // type:function size:0x3C +fn_1_34C0 = .text:0x000034C0; // type:function size:0x154 +fn_1_3614 = .text:0x00003614; // type:function size:0x5CC +fn_1_3BE0 = .text:0x00003BE0; // type:function size:0xCF8 +fn_1_48D8 = .text:0x000048D8; // type:function size:0x32C +fn_1_4C04 = .text:0x00004C04; // type:function size:0x3E8 +fn_1_4FEC = .text:0x00004FEC; // type:function size:0x5DC +fn_1_55C8 = .text:0x000055C8; // type:function size:0x3C4 +fn_1_598C = .text:0x0000598C; // type:function size:0x168 +fn_1_5AF4 = .text:0x00005AF4; // type:function size:0x1AC +fn_1_5CA0 = .text:0x00005CA0; // type:function size:0x23C +fn_1_5EDC = .text:0x00005EDC; // type:function size:0x300 +fn_1_61DC = .text:0x000061DC; // type:function size:0x188 +fn_1_6364 = .text:0x00006364; // type:function size:0x354 +fn_1_66B8 = .text:0x000066B8; // type:function size:0x11C +fn_1_67D4 = .text:0x000067D4; // type:function size:0x194 +fn_1_6968 = .text:0x00006968; // type:function size:0x41C +fn_1_6D84 = .text:0x00006D84; // type:function size:0x30 +fn_1_6DB4 = .text:0x00006DB4; // type:function size:0x384 +fn_1_7138 = .text:0x00007138; // type:function size:0x32C +fn_1_7464 = .text:0x00007464; // type:function size:0x30 +fn_1_7494 = .text:0x00007494; // type:function size:0x8C +fn_1_7520 = .text:0x00007520; // type:function size:0x80 +fn_1_75A0 = .text:0x000075A0; // type:function size:0x118 +fn_1_76B8 = .text:0x000076B8; // type:function size:0xEC +fn_1_77A4 = .text:0x000077A4; // type:function size:0x44 +fn_1_77E8 = .text:0x000077E8; // type:function size:0x10 +fn_1_77F8 = .text:0x000077F8; // type:function size:0x48 +fn_1_7840 = .text:0x00007840; // type:function size:0x48 +fn_1_7888 = .text:0x00007888; // type:function size:0x170 +fn_1_79F8 = .text:0x000079F8; // type:function size:0xCC +fn_1_7AC4 = .text:0x00007AC4; // type:function size:0x36C +fn_1_7E30 = .text:0x00007E30; // type:function size:0x23C +fn_1_806C = .text:0x0000806C; // type:function size:0x34 +fn_1_80A0 = .text:0x000080A0; // type:function size:0x374 +fn_1_8414 = .text:0x00008414; // type:function size:0x264 +fn_1_8678 = .text:0x00008678; // type:function size:0x260 +fn_1_88D8 = .text:0x000088D8; // type:function size:0x138 +fn_1_8A10 = .text:0x00008A10; // type:function size:0xAC +fn_1_8ABC = .text:0x00008ABC; // type:function size:0x584 +fn_1_9040 = .text:0x00009040; // type:function size:0x6B4 +fn_1_96F4 = .text:0x000096F4; // type:function size:0x39C +fn_1_9A90 = .text:0x00009A90; // type:function size:0x1F4 +fn_1_9C84 = .text:0x00009C84; // type:function size:0x188 +fn_1_9E0C = .text:0x00009E0C; // type:function size:0xF0 +fn_1_9EFC = .text:0x00009EFC; // type:function size:0x74 +fn_1_9F70 = .text:0x00009F70; // type:function size:0x134 +fn_1_A0A4 = .text:0x0000A0A4; // type:function size:0x31C +fn_1_A3C0 = .text:0x0000A3C0; // type:function size:0x468 +fn_1_A828 = .text:0x0000A828; // type:function size:0x17C +fn_1_A9A4 = .text:0x0000A9A4; // type:function size:0x79C +fn_1_B140 = .text:0x0000B140; // type:function size:0x644 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float +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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x10 data:4byte +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:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x10 data:4byte +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x20 data:4byte +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x1 data:byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x3C +lbl_1_data_88 = .data:0x00000088; // type:object size:0x3C +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x14 +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x2 data:2byte +lbl_1_data_DC = .data:0x000000DC; // type:object size:0x20 +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x8 +lbl_1_data_104 = .data:0x00000104; // type:object size:0xC +lbl_1_data_110 = .data:0x00000110; // type:object size:0x4 data:4byte +lbl_1_data_114 = .data:0x00000114; // type:object size:0x1C +lbl_1_data_130 = .data:0x00000130; // type:object size:0x10 +lbl_1_data_140 = .data:0x00000140; // type:object size:0x20 +lbl_1_data_160 = .data:0x00000160; // type:object size:0xC +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x20 +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x28 +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xA0 +lbl_1_data_274 = .data:0x00000274; // type:object size:0x20 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x20 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x6 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:float +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:float +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x10 +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m411Dll/splits.txt b/config/GMPJ01_00/rels/m411Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m411Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m411Dll/symbols.txt b/config/GMPJ01_00/rels/m411Dll/symbols.txt new file mode 100644 index 00000000..38a4c8cd --- /dev/null +++ b/config/GMPJ01_00/rels/m411Dll/symbols.txt @@ -0,0 +1,278 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xDE0 +fn_1_E80 = .text:0x00000E80; // type:function size:0x10C +fn_1_F8C = .text:0x00000F8C; // type:function size:0xE8 +fn_1_1074 = .text:0x00001074; // type:function size:0x424 +fn_1_1498 = .text:0x00001498; // type:function size:0x88 +fn_1_1520 = .text:0x00001520; // type:function size:0x72C +fn_1_1C4C = .text:0x00001C4C; // type:function size:0x47C +fn_1_20C8 = .text:0x000020C8; // type:function size:0x508 +fn_1_25D0 = .text:0x000025D0; // type:function size:0xEE0 +fn_1_34B0 = .text:0x000034B0; // type:function size:0x5B0 +fn_1_3A60 = .text:0x00003A60; // type:function size:0x3C +fn_1_3A9C = .text:0x00003A9C; // type:function size:0x3C +fn_1_3AD8 = .text:0x00003AD8; // type:function size:0x3C +fn_1_3B14 = .text:0x00003B14; // type:function size:0x3C +fn_1_3B50 = .text:0x00003B50; // type:function size:0x3E4 +fn_1_3F34 = .text:0x00003F34; // type:function size:0x2E4 +fn_1_4218 = .text:0x00004218; // type:function size:0x23C +fn_1_4454 = .text:0x00004454; // type:function size:0x514 +fn_1_4968 = .text:0x00004968; // type:function size:0x248 +fn_1_4BB0 = .text:0x00004BB0; // type:function size:0x2DC +fn_1_4E8C = .text:0x00004E8C; // type:function size:0x1F0 +fn_1_507C = .text:0x0000507C; // type:function size:0x308 +fn_1_5384 = .text:0x00005384; // type:function size:0xC8 +fn_1_544C = .text:0x0000544C; // type:function size:0x108 +fn_1_5554 = .text:0x00005554; // type:function size:0x368 +fn_1_58BC = .text:0x000058BC; // type:function size:0x54 +fn_1_5910 = .text:0x00005910; // type:function size:0x448 +fn_1_5D58 = .text:0x00005D58; // type:function size:0xB8 +fn_1_5E10 = .text:0x00005E10; // type:function size:0xC0 +fn_1_5ED0 = .text:0x00005ED0; // type:function size:0x6C +fn_1_5F3C = .text:0x00005F3C; // type:function size:0x4EC +fn_1_6428 = .text:0x00006428; // type:function size:0x3F8 +fn_1_6820 = .text:0x00006820; // type:function size:0x21C +fn_1_6A3C = .text:0x00006A3C; // type:function size:0x2B8 +fn_1_6CF4 = .text:0x00006CF4; // type:function size:0xE4 +fn_1_6DD8 = .text:0x00006DD8; // type:function size:0xC4 +fn_1_6E9C = .text:0x00006E9C; // type:function size:0xAC +fn_1_6F48 = .text:0x00006F48; // type:function size:0x680 +fn_1_75C8 = .text:0x000075C8; // type:function size:0xB8 +fn_1_7680 = .text:0x00007680; // type:function size:0xB8 +fn_1_7738 = .text:0x00007738; // type:function size:0x1348 +fn_1_8A80 = .text:0x00008A80; // type:function size:0x33C +fn_1_8DBC = .text:0x00008DBC; // type:function size:0x6D4 +fn_1_9490 = .text:0x00009490; // type:function size:0x730 +fn_1_9BC0 = .text:0x00009BC0; // type:function size:0x444 +fn_1_A004 = .text:0x0000A004; // type:function size:0x78 +fn_1_A07C = .text:0x0000A07C; // type:function size:0xA4 +fn_1_A120 = .text:0x0000A120; // type:function size:0x394 +fn_1_A4B4 = .text:0x0000A4B4; // type:function size:0x2D4 +fn_1_A788 = .text:0x0000A788; // type:function size:0x528 +fn_1_ACB0 = .text:0x0000ACB0; // type:function size:0xA8 +fn_1_AD58 = .text:0x0000AD58; // type:function size:0xB50 +_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0xE data:string +lbl_1_data_86 = .data:0x00000086; // type:object size:0xE data:string +lbl_1_data_94 = .data:0x00000094; // type:object size:0xE data:string +lbl_1_data_A2 = .data:0x000000A2; // type:object size:0xE data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xE data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0xE data:string +lbl_1_data_CC = .data:0x000000CC; // type:object size:0xE data:string +lbl_1_data_DA = .data:0x000000DA; // type:object size:0xE data:string +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0xE data:string +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0xE data:string +lbl_1_data_104 = .data:0x00000104; // type:object size:0xE data:string +lbl_1_data_112 = .data:0x00000112; // type:object size:0xE data:string +lbl_1_data_120 = .data:0x00000120; // type:object size:0xE data:string +lbl_1_data_12E = .data:0x0000012E; // type:object size:0xE data:string +lbl_1_data_13C = .data:0x0000013C; // type:object size:0xE data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xE data:string +lbl_1_data_158 = .data:0x00000158; // type:object size:0xE data:string +lbl_1_data_166 = .data:0x00000166; // type:object size:0xE data:string +lbl_1_data_174 = .data:0x00000174; // type:object size:0xE data:string +lbl_1_data_182 = .data:0x00000182; // type:object size:0xE data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0xE data:string +lbl_1_data_19E = .data:0x0000019E; // type:object size:0xE data:string +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xE data:string +lbl_1_data_1BA = .data:0x000001BA; // type:object size:0xE data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x78 +lbl_1_data_240 = .data:0x00000240; // type:object size:0x20 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x20 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x24 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x20 +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0xC +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x14 +lbl_1_data_2E4 = .data:0x000002E4; // type:object size:0xB data:string +lbl_1_data_2EF = .data:0x000002EF; // type:object size:0xB data:string +lbl_1_data_2FA = .data:0x000002FA; // type:object size:0x8 data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0xA +lbl_1_data_30C = .data:0x0000030C; // type:object size:0x10 +lbl_1_data_31C = .data:0x0000031C; // type:object size:0xC data:string +lbl_1_data_328 = .data:0x00000328; // type:object size:0x7 data:string +lbl_1_data_32F = .data:0x0000032F; // type:object size:0x7 data:string +lbl_1_data_336 = .data:0x00000336; // type:object size:0x7 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x60 data:float +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x60 data:float +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x60 data:float +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x10 +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x33C data:float +lbl_1_bss_474 = .bss:0x00000474; // type:object size:0x9B0 +lbl_1_bss_E24 = .bss:0x00000E24; // type:object size:0x4 data:float +lbl_1_bss_E28 = .bss:0x00000E28; // type:object size:0x4 data:4byte +lbl_1_bss_E2C = .bss:0x00000E2C; // type:object size:0xC data:4byte +lbl_1_bss_E38 = .bss:0x00000E38; // type:object size:0x4 data:4byte +lbl_1_bss_E3C = .bss:0x00000E3C; // type:object size:0x4 data:4byte +lbl_1_bss_E40 = .bss:0x00000E40; // type:object size:0x4 data:4byte +lbl_1_bss_E44 = .bss:0x00000E44; // type:object size:0x28 data:4byte +lbl_1_bss_E6C = .bss:0x00000E6C; // type:object size:0x28 data:4byte +lbl_1_bss_E94 = .bss:0x00000E94; // type:object size:0x4 data:4byte +lbl_1_bss_E98 = .bss:0x00000E98; // type:object size:0x4 data:4byte +lbl_1_bss_E9C = .bss:0x00000E9C; // type:object size:0x2 data:2byte +lbl_1_bss_E9E = .bss:0x00000E9E; // type:object size:0x2 data:2byte +lbl_1_bss_EA0 = .bss:0x00000EA0; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m412Dll/splits.txt b/config/GMPJ01_00/rels/m412Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m412Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m412Dll/symbols.txt b/config/GMPJ01_00/rels/m412Dll/symbols.txt new file mode 100644 index 00000000..4212d668 --- /dev/null +++ b/config/GMPJ01_00/rels/m412Dll/symbols.txt @@ -0,0 +1,190 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x64C +fn_1_6EC = .text:0x000006EC; // type:function size:0x50 +fn_1_73C = .text:0x0000073C; // type:function size:0x80 +fn_1_7BC = .text:0x000007BC; // type:function size:0xD8 +fn_1_894 = .text:0x00000894; // type:function size:0x4 +fn_1_898 = .text:0x00000898; // type:function size:0x24 +fn_1_8BC = .text:0x000008BC; // type:function size:0x144C +fn_1_1D08 = .text:0x00001D08; // type:function size:0x80 +fn_1_1D88 = .text:0x00001D88; // type:function size:0x34 +fn_1_1DBC = .text:0x00001DBC; // type:function size:0x258 +fn_1_2014 = .text:0x00002014; // type:function size:0x50 +fn_1_2064 = .text:0x00002064; // type:function size:0x6A4 +fn_1_2708 = .text:0x00002708; // type:function size:0xBC +fn_1_27C4 = .text:0x000027C4; // type:function size:0x258 +fn_1_2A1C = .text:0x00002A1C; // type:function size:0xF34 +fn_1_3950 = .text:0x00003950; // type:function size:0x1294 +fn_1_4BE4 = .text:0x00004BE4; // type:function size:0xB8 +fn_1_4C9C = .text:0x00004C9C; // type:function size:0x1BC +fn_1_4E58 = .text:0x00004E58; // type:function size:0x404 +fn_1_525C = .text:0x0000525C; // type:function size:0xC0 +fn_1_531C = .text:0x0000531C; // type:function size:0x6C +fn_1_5388 = .text:0x00005388; // type:function size:0x6C +fn_1_53F4 = .text:0x000053F4; // type:function size:0x228 +fn_1_561C = .text:0x0000561C; // type:function size:0x21C +fn_1_5838 = .text:0x00005838; // type:function size:0xD5C +fn_1_6594 = .text:0x00006594; // type:function size:0x104 +fn_1_6698 = .text:0x00006698; // type:function size:0x17C +fn_1_6814 = .text:0x00006814; // type:function size:0x144C +fn_1_7C60 = .text:0x00007C60; // type:function size:0x23BC +fn_1_A01C = .text:0x0000A01C; // type:function size:0x5FC +fn_1_A618 = .text:0x0000A618; // type:function size:0x470 +fn_1_AA88 = .text:0x0000AA88; // type:function size:0x340 +fn_1_ADC8 = .text:0x0000ADC8; // type:function size:0x374 +fn_1_B13C = .text:0x0000B13C; // type:function size:0x24 +fn_1_B160 = .text:0x0000B160; // type:function size:0x60 +fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x4A0 +_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:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +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_1B4 = .rodata:0x000001B4; // 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:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x20 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x20 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x18 +lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float +lbl_1_data_CC = .data:0x000000CC; // type:object size:0x14 data:string +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x14 data:string +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x14 data:string +lbl_1_data_108 = .data:0x00000108; // type:object size:0x14 data:string +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x14 data:string +lbl_1_data_130 = .data:0x00000130; // type:object size:0x14 data:string +lbl_1_data_144 = .data:0x00000144; // type:object size:0x14 data:string +lbl_1_data_158 = .data:0x00000158; // type:object size:0x14 data:string +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x14 data:string +lbl_1_data_180 = .data:0x00000180; // type:object size:0x14 data:string +lbl_1_data_194 = .data:0x00000194; // type:object size:0x14 data:string +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x14 data:string +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x14 data:string +lbl_1_data_1D0 = .data:0x000001D0; // type:object size:0x14 data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x14 data:string +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x14 data:string +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x14 data:string +lbl_1_data_220 = .data:0x00000220; // type:object size:0x14 data:string +lbl_1_data_234 = .data:0x00000234; // type:object size:0x14 data:string +lbl_1_data_248 = .data:0x00000248; // type:object size:0x14 data:string +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x14 data:string +lbl_1_data_270 = .data:0x00000270; // type:object size:0x14 data:string +lbl_1_data_284 = .data:0x00000284; // type:object size:0x14 data:string +lbl_1_data_298 = .data:0x00000298; // type:object size:0x5C +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0xC data:string +lbl_1_data_300 = .data:0x00000300; // type:object size:0x7 data:string +lbl_1_data_307 = .data:0x00000307; // type:object size:0x9 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x30 +lbl_1_data_340 = .data:0x00000340; // type:object size:0x8 +lbl_1_data_348 = .data:0x00000348; // type:object size:0x18 +lbl_1_data_360 = .data:0x00000360; // type:object size:0x9 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x10 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x114 +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x114 +lbl_1_bss_250 = .bss:0x00000250; // type:object size:0xC data:float +lbl_1_bss_25C = .bss:0x0000025C; // type:object size:0xC data:float +lbl_1_bss_268 = .bss:0x00000268; // type:object size:0xC data:float +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x4 data:4byte +lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x80 +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x44 data:2byte +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x198 +lbl_1_bss_4D4 = .bss:0x000004D4; // type:object size:0x2A0 +lbl_1_bss_774 = .bss:0x00000774; // type:object size:0x4 data:float +lbl_1_bss_778 = .bss:0x00000778; // type:object size:0x4 data:float +lbl_1_bss_77C = .bss:0x0000077C; // type:object size:0x4 data:float +lbl_1_bss_780 = .bss:0x00000780; // type:object size:0x10 data:4byte +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x4 data:4byte +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x4 data:4byte +lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x2 data:2byte +lbl_1_bss_79C = .bss:0x0000079C; // type:object size:0x2 data:2byte +lbl_1_bss_79E = .bss:0x0000079E; // type:object size:0x2 data:2byte +lbl_1_bss_7A0 = .bss:0x000007A0; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m413Dll/splits.txt b/config/GMPJ01_00/rels/m413Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m413Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m413Dll/symbols.txt b/config/GMPJ01_00/rels/m413Dll/symbols.txt new file mode 100644 index 00000000..019fba8d --- /dev/null +++ b/config/GMPJ01_00/rels/m413Dll/symbols.txt @@ -0,0 +1,210 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2EC +fn_1_38C = .text:0x0000038C; // type:function size:0x134 +fn_1_4C0 = .text:0x000004C0; // type:function size:0xBC +fn_1_57C = .text:0x0000057C; // type:function size:0x154 +fn_1_6D0 = .text:0x000006D0; // type:function size:0x128 +fn_1_7F8 = .text:0x000007F8; // type:function size:0x6C8 +fn_1_EC0 = .text:0x00000EC0; // type:function size:0x1F8 +fn_1_10B8 = .text:0x000010B8; // type:function size:0x90C +fn_1_19C4 = .text:0x000019C4; // type:function size:0x4 +fn_1_19C8 = .text:0x000019C8; // type:function size:0x38DC +fn_1_52A4 = .text:0x000052A4; // type:function size:0x3824 +fn_1_8AC8 = .text:0x00008AC8; // type:function size:0x148 +fn_1_8C10 = .text:0x00008C10; // type:function size:0x192C +fn_1_A53C = .text:0x0000A53C; // type:function size:0x1188 +fn_1_B6C4 = .text:0x0000B6C4; // type:function size:0x101C +fn_1_C6E0 = .text:0x0000C6E0; // type:function size:0x4D4 +fn_1_CBB4 = .text:0x0000CBB4; // type:function size:0x78C +fn_1_D340 = .text:0x0000D340; // type:function size:0x60 +fn_1_D3A0 = .text:0x0000D3A0; // type:function size:0x360 +fn_1_D700 = .text:0x0000D700; // type:function size:0x64 +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xCC +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0xC data:byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:4byte +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x19 data:byte +lbl_1_rodata_201 = .rodata:0x00000201; // type:object size:0x1F data:byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC data:4byte +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x30 data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x10 data:4byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x10 data:4byte +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0xC data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0xC data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:4byte +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x428 +lbl_1_rodata_764 = .rodata:0x00000764; // type:object size:0xC data:4byte +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0xC data:4byte +lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0x4 data:float +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x4 data:float +lbl_1_rodata_784 = .rodata:0x00000784; // type:object size:0x4 data:float +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x8 data:double +lbl_1_rodata_790 = .rodata:0x00000790; // type:object size:0x8 data:double +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x8 data:double +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x8 data:double +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float +lbl_1_rodata_7AC = .rodata:0x000007AC; // type:object size:0x10 data:4byte +lbl_1_rodata_7BC = .rodata:0x000007BC; // type:object size:0x14 data:4byte +lbl_1_rodata_7D0 = .rodata:0x000007D0; // type:object size:0x60 +lbl_1_rodata_830 = .rodata:0x00000830; // type:object size:0x8 data:double +lbl_1_rodata_838 = .rodata:0x00000838; // type:object size:0x8 data:double +lbl_1_rodata_840 = .rodata:0x00000840; // type:object size:0x4 data:float +lbl_1_rodata_848 = .rodata:0x00000848; // type:object size:0x8 data:double +lbl_1_rodata_850 = .rodata:0x00000850; // type:object size:0x4 data:float +lbl_1_rodata_858 = .rodata:0x00000858; // type:object size:0x8 data:double +lbl_1_rodata_860 = .rodata:0x00000860; // type:object size:0x8 data:double +lbl_1_rodata_868 = .rodata:0x00000868; // type:object size:0x8 data:double +lbl_1_rodata_870 = .rodata:0x00000870; // type:object size:0x8 data:double +lbl_1_rodata_878 = .rodata:0x00000878; // type:object size:0x4 data:float +lbl_1_rodata_87C = .rodata:0x0000087C; // type:object size:0x4 data:float +lbl_1_rodata_880 = .rodata:0x00000880; // type:object size:0x4 data:float +lbl_1_rodata_884 = .rodata:0x00000884; // type:object size:0x4 data:float +lbl_1_rodata_888 = .rodata:0x00000888; // type:object size:0x4 data:float +lbl_1_rodata_88C = .rodata:0x0000088C; // type:object size:0x1C data:4byte +lbl_1_rodata_8A8 = .rodata:0x000008A8; // type:object size:0x8 data:double +lbl_1_rodata_8B0 = .rodata:0x000008B0; // type:object size:0x4 data:float +lbl_1_rodata_8B4 = .rodata:0x000008B4; // type:object size:0x4 data:float +lbl_1_rodata_8B8 = .rodata:0x000008B8; // type:object size:0x4 data:float +lbl_1_rodata_8BC = .rodata:0x000008BC; // type:object size:0x4 data:float +lbl_1_rodata_8C0 = .rodata:0x000008C0; // type:object size:0x8 data:double +lbl_1_rodata_8C8 = .rodata:0x000008C8; // type:object size:0x4 data:float +lbl_1_rodata_8D0 = .rodata:0x000008D0; // type:object size:0x8 data:double +lbl_1_rodata_8D8 = .rodata:0x000008D8; // type:object size:0x4 data:float +lbl_1_rodata_8DC = .rodata:0x000008DC; // type:object size:0x4 data:float +lbl_1_rodata_8E0 = .rodata:0x000008E0; // type:object size:0x4 data:float +lbl_1_rodata_8E4 = .rodata:0x000008E4; // type:object size:0x4 data:float +lbl_1_rodata_8E8 = .rodata:0x000008E8; // type:object size:0x4 data:float +lbl_1_rodata_8EC = .rodata:0x000008EC; // type:object size:0x4 data:float +lbl_1_rodata_8F0 = .rodata:0x000008F0; // type:object size:0x4 data:float +lbl_1_rodata_8F4 = .rodata:0x000008F4; // type:object size:0x4 data:float +lbl_1_rodata_8F8 = .rodata:0x000008F8; // type:object size:0x8 data:double +lbl_1_rodata_900 = .rodata:0x00000900; // type:object size:0x8 data:double +lbl_1_rodata_908 = .rodata:0x00000908; // type:object size:0x4 data:float +lbl_1_rodata_90C = .rodata:0x0000090C; // type:object size:0x4 data:float +lbl_1_rodata_910 = .rodata:0x00000910; // type:object size:0x4 data:float +lbl_1_rodata_914 = .rodata:0x00000914; // type:object size:0xC data:byte +lbl_1_rodata_920 = .rodata:0x00000920; // type:object size:0x18 data:4byte +lbl_1_rodata_938 = .rodata:0x00000938; // type:object size:0x8 data:byte +lbl_1_rodata_940 = .rodata:0x00000940; // type:object size:0x10 data:4byte +lbl_1_rodata_950 = .rodata:0x00000950; // type:object size:0x1 data:byte +lbl_1_rodata_954 = .rodata:0x00000954; // type:object size:0x10 data:4byte +lbl_1_rodata_964 = .rodata:0x00000964; // type:object size:0x14 data:4byte +lbl_1_rodata_978 = .rodata:0x00000978; // type:object size:0x8 data:double +lbl_1_rodata_980 = .rodata:0x00000980; // type:object size:0x4 data:float +lbl_1_rodata_984 = .rodata:0x00000984; // type:object size:0x4 data:float +lbl_1_rodata_988 = .rodata:0x00000988; // type:object size:0x4 data:float +lbl_1_rodata_98C = .rodata:0x0000098C; // type:object size:0x4 data:float +lbl_1_rodata_990 = .rodata:0x00000990; // type:object size:0x8 data:double +lbl_1_rodata_998 = .rodata:0x00000998; // type:object size:0x4 data:float +lbl_1_rodata_99C = .rodata:0x0000099C; // type:object size:0x4 data:float +lbl_1_rodata_9A0 = .rodata:0x000009A0; // type:object size:0x8 data:double +lbl_1_rodata_9A8 = .rodata:0x000009A8; // type:object size:0x8 data:double +lbl_1_rodata_9B0 = .rodata:0x000009B0; // type:object size:0x10 data:4byte +lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 data:float +lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 data:float +lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 data:float +lbl_1_rodata_9CC = .rodata:0x000009CC; // type:object size:0xC data:4byte +lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0xC data:4byte +lbl_1_rodata_9E4 = .rodata:0x000009E4; // type:object size:0xC data:4byte +lbl_1_rodata_9F0 = .rodata:0x000009F0; // type:object size:0xC data:4byte +lbl_1_rodata_9FC = .rodata:0x000009FC; // type:object size:0xC data:4byte +lbl_1_rodata_A08 = .rodata:0x00000A08; // type:object size:0xC data:4byte +lbl_1_rodata_A14 = .rodata:0x00000A14; // type:object size:0xC data:4byte +lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x1 data:byte +lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 data:float +lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 data:float +lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 data:float +lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 data:float +lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x4 data:4byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0x8 data:4byte +lbl_1_data_C = .data:0x0000000C; // type:object size:0x2C data:4byte +lbl_1_data_38 = .data:0x00000038; // type:object size:0x9 data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x19 data:string +lbl_1_data_5A = .data:0x0000005A; // type:object size:0x1B data:string +lbl_1_data_75 = .data:0x00000075; // type:object size:0x10 data:string +lbl_1_data_85 = .data:0x00000085; // type:object size:0x10 data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0x10 data:string +lbl_1_data_A5 = .data:0x000000A5; // type:object size:0x10 data:string +lbl_1_data_B5 = .data:0x000000B5; // type:object size:0x11 data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x11 data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x12 data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x12 data:string +lbl_1_data_FB = .data:0x000000FB; // type:object size:0x12 data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0xF data:string +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x8 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x70 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x18 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x28 +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x2580 +lbl_1_bss_2680 = .bss:0x00002680; // type:object size:0x4 data:4byte +lbl_1_bss_2684 = .bss:0x00002684; // type:object size:0x3E8 +lbl_1_bss_2A6C = .bss:0x00002A6C; // type:object size:0x4E18 +lbl_1_bss_7884 = .bss:0x00007884; // type:object size:0x30 diff --git a/config/GMPJ01_00/rels/m414Dll/splits.txt b/config/GMPJ01_00/rels/m414Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m414Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m414Dll/symbols.txt b/config/GMPJ01_00/rels/m414Dll/symbols.txt new file mode 100644 index 00000000..79f1669a --- /dev/null +++ b/config/GMPJ01_00/rels/m414Dll/symbols.txt @@ -0,0 +1,183 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x87C +fn_1_91C = .text:0x0000091C; // type:function size:0x268 +fn_1_B84 = .text:0x00000B84; // type:function size:0x154 +fn_1_CD8 = .text:0x00000CD8; // type:function size:0x7C +fn_1_D54 = .text:0x00000D54; // type:function size:0x634 +fn_1_1388 = .text:0x00001388; // type:function size:0x3C +fn_1_13C4 = .text:0x000013C4; // type:function size:0x3C +fn_1_1400 = .text:0x00001400; // type:function size:0x3C +fn_1_143C = .text:0x0000143C; // type:function size:0x3C +fn_1_1478 = .text:0x00001478; // type:function size:0x214 +fn_1_168C = .text:0x0000168C; // type:function size:0x3C +fn_1_16C8 = .text:0x000016C8; // type:function size:0x3C +fn_1_1704 = .text:0x00001704; // type:function size:0x3C +fn_1_1740 = .text:0x00001740; // type:function size:0x3C +fn_1_177C = .text:0x0000177C; // type:function size:0x3DC +fn_1_1B58 = .text:0x00001B58; // type:function size:0x3C +fn_1_1B94 = .text:0x00001B94; // type:function size:0x3C +fn_1_1BD0 = .text:0x00001BD0; // type:function size:0x3C +fn_1_1C0C = .text:0x00001C0C; // type:function size:0x3C +fn_1_1C48 = .text:0x00001C48; // type:function size:0x1BC +fn_1_1E04 = .text:0x00001E04; // type:function size:0x1B78 +fn_1_397C = .text:0x0000397C; // type:function size:0xDC +fn_1_3A58 = .text:0x00003A58; // type:function size:0xDC +fn_1_3B34 = .text:0x00003B34; // type:function size:0x214 +fn_1_3D48 = .text:0x00003D48; // type:function size:0x184 +fn_1_3ECC = .text:0x00003ECC; // type:function size:0x3E0 +fn_1_42AC = .text:0x000042AC; // type:function size:0x958 +fn_1_4C04 = .text:0x00004C04; // type:function size:0x70 +fn_1_4C74 = .text:0x00004C74; // type:function size:0x19C +fn_1_4E10 = .text:0x00004E10; // type:function size:0x744 +fn_1_5554 = .text:0x00005554; // type:function size:0xD0 +fn_1_5624 = .text:0x00005624; // type:function size:0xD8 +fn_1_56FC = .text:0x000056FC; // type:function size:0x84 +fn_1_5780 = .text:0x00005780; // type:function size:0x2BC +fn_1_5A3C = .text:0x00005A3C; // type:function size:0x4AC +fn_1_5EE8 = .text:0x00005EE8; // type:function size:0x24C +fn_1_6134 = .text:0x00006134; // type:function size:0x418 +fn_1_654C = .text:0x0000654C; // type:function size:0x90 +fn_1_65DC = .text:0x000065DC; // type:function size:0x68 +fn_1_6644 = .text:0x00006644; // type:function size:0x10B0 +fn_1_76F4 = .text:0x000076F4; // type:function size:0x2B4 +fn_1_79A8 = .text:0x000079A8; // type:function size:0x620 +fn_1_7FC8 = .text:0x00007FC8; // type:function size:0x90C +fn_1_88D4 = .text:0x000088D4; // type:function size:0x78 +fn_1_894C = .text:0x0000894C; // type:function size:0xC4 +fn_1_8A10 = .text:0x00008A10; // type:function size:0x60 +fn_1_8A70 = .text:0x00008A70; // type:function size:0x458 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +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_124 = .rodata:0x00000124; // 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:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x10 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x20 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x18 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x24 +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x18 +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x10 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x10 +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x60 +lbl_1_data_124 = .data:0x00000124; // type:object size:0x10 data:string +lbl_1_data_134 = .data:0x00000134; // type:object size:0x7 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0xC data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x3C +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x3C +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x3C +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x10 +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x820 data:2byte +lbl_1_bss_910 = .bss:0x00000910; // type:object size:0x10 data:float +lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x10 data:float +lbl_1_bss_930 = .bss:0x00000930; // type:object size:0x8 data:4byte +lbl_1_bss_938 = .bss:0x00000938; // type:object size:0x40 +lbl_1_bss_978 = .bss:0x00000978; // type:object size:0x4 data:4byte +lbl_1_bss_97C = .bss:0x0000097C; // type:object size:0x10 +lbl_1_bss_98C = .bss:0x0000098C; // type:object size:0x4 data:4byte +lbl_1_bss_990 = .bss:0x00000990; // type:object size:0x80 +lbl_1_bss_A10 = .bss:0x00000A10; // type:object size:0x2 data:2byte +lbl_1_bss_A12 = .bss:0x00000A12; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m415Dll/splits.txt b/config/GMPJ01_00/rels/m415Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m415Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m415Dll/symbols.txt b/config/GMPJ01_00/rels/m415Dll/symbols.txt new file mode 100644 index 00000000..e1777beb --- /dev/null +++ b/config/GMPJ01_00/rels/m415Dll/symbols.txt @@ -0,0 +1,234 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x39C +fn_1_43C = .text:0x0000043C; // type:function size:0x74 +fn_1_4B0 = .text:0x000004B0; // type:function size:0x328 +fn_1_7D8 = .text:0x000007D8; // type:function size:0xCE8 +fn_1_14C0 = .text:0x000014C0; // type:function size:0x64 +fn_1_1524 = .text:0x00001524; // type:function size:0xAC +fn_1_15D0 = .text:0x000015D0; // type:function size:0x390 +fn_1_1960 = .text:0x00001960; // type:function size:0x100 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x10B8 +fn_1_2B18 = .text:0x00002B18; // type:function size:0xFC +fn_1_2C14 = .text:0x00002C14; // type:function size:0x274 +fn_1_2E88 = .text:0x00002E88; // type:function size:0xA0 +fn_1_2F28 = .text:0x00002F28; // type:function size:0x2B8 +fn_1_31E0 = .text:0x000031E0; // type:function size:0x28 +fn_1_3208 = .text:0x00003208; // type:function size:0x438 +fn_1_3640 = .text:0x00003640; // type:function size:0x124 +fn_1_3764 = .text:0x00003764; // type:function size:0x3E0 +fn_1_3B44 = .text:0x00003B44; // type:function size:0xB1C +fn_1_4660 = .text:0x00004660; // type:function size:0x14C0 +fn_1_5B20 = .text:0x00005B20; // type:function size:0x490 +fn_1_5FB0 = .text:0x00005FB0; // type:function size:0x354 +fn_1_6304 = .text:0x00006304; // type:function size:0x64 +fn_1_6368 = .text:0x00006368; // type:function size:0x40 +fn_1_63A8 = .text:0x000063A8; // type:function size:0xA0 +fn_1_6448 = .text:0x00006448; // type:function size:0x94 +fn_1_64DC = .text:0x000064DC; // type:function size:0xA8 +fn_1_6584 = .text:0x00006584; // type:function size:0x108 +fn_1_668C = .text:0x0000668C; // type:function size:0x20 +fn_1_66AC = .text:0x000066AC; // type:function size:0xF0 +fn_1_679C = .text:0x0000679C; // type:function size:0x54 +fn_1_67F0 = .text:0x000067F0; // type:function size:0x168 +fn_1_6958 = .text:0x00006958; // type:function size:0x120 +fn_1_6A78 = .text:0x00006A78; // type:function size:0x30C +fn_1_6D84 = .text:0x00006D84; // type:function size:0x78 +fn_1_6DFC = .text:0x00006DFC; // type:function size:0x11C +fn_1_6F18 = .text:0x00006F18; // type:function size:0x78 +fn_1_6F90 = .text:0x00006F90; // type:function size:0x2D8 +fn_1_7268 = .text:0x00007268; // type:function size:0x2B8 +fn_1_7520 = .text:0x00007520; // type:function size:0x154 +fn_1_7674 = .text:0x00007674; // type:function size:0x3E0 +fn_1_7A54 = .text:0x00007A54; // type:function size:0x214 +fn_1_7C68 = .text:0x00007C68; // type:function size:0x198 +fn_1_7E00 = .text:0x00007E00; // type:function size:0xD8 +fn_1_7ED8 = .text:0x00007ED8; // type:function size:0xBC +fn_1_7F94 = .text:0x00007F94; // type:function size:0x33C +fn_1_82D0 = .text:0x000082D0; // type:function size:0x4B0 +fn_1_8780 = .text:0x00008780; // type:function size:0x138 +fn_1_88B8 = .text:0x000088B8; // type:function size:0xD08 +fn_1_95C0 = .text:0x000095C0; // type:function size:0x12C +fn_1_96EC = .text:0x000096EC; // type:function size:0x1C +fn_1_9708 = .text:0x00009708; // type:function size:0x2C +fn_1_9734 = .text:0x00009734; // type:function size:0x1C +fn_1_9750 = .text:0x00009750; // type:function size:0x184 +fn_1_98D4 = .text:0x000098D4; // type:function size:0xA0 +fn_1_9974 = .text:0x00009974; // type:function size:0xA8 +fn_1_9A1C = .text:0x00009A1C; // type:function size:0x8C +fn_1_9AA8 = .text:0x00009AA8; // type:function size:0x98 +fn_1_9B40 = .text:0x00009B40; // type:function size:0x288 +fn_1_9DC8 = .text:0x00009DC8; // type:function size:0x508 +fn_1_A2D0 = .text:0x0000A2D0; // type:function size:0x530 +fn_1_A800 = .text:0x0000A800; // type:function size:0x120 +fn_1_A920 = .text:0x0000A920; // type:function size:0x2C +fn_1_A94C = .text:0x0000A94C; // type:function size:0x3A8 +fn_1_ACF4 = .text:0x0000ACF4; // type:function size:0x254 +fn_1_AF48 = .text:0x0000AF48; // type:function size:0x80 +fn_1_AFC8 = .text:0x0000AFC8; // type:function size:0x70 +fn_1_B038 = .text:0x0000B038; // type:function size:0x80 +fn_1_B0B8 = .text:0x0000B0B8; // type:function size:0x57C +fn_1_B634 = .text:0x0000B634; // type:function size:0x230 +fn_1_B864 = .text:0x0000B864; // type:function size:0x6C +fn_1_B8D0 = .text:0x0000B8D0; // type:function size:0x70 +fn_1_B940 = .text:0x0000B940; // type:function size:0x74 +fn_1_B9B4 = .text:0x0000B9B4; // type:function size:0x84 +fn_1_BA38 = .text:0x0000BA38; // type:function size:0x88 +fn_1_BAC0 = .text:0x0000BAC0; // type:function size:0x8C +fn_1_BB4C = .text:0x0000BB4C; // type:function size:0x6C +fn_1_BBB8 = .text:0x0000BBB8; // type:function size:0x70 +fn_1_BC28 = .text:0x0000BC28; // type:function size:0x74 +fn_1_BC9C = .text:0x0000BC9C; // type:function size:0x6C +fn_1_BD08 = .text:0x0000BD08; // type:function size:0x70 +fn_1_BD78 = .text:0x0000BD78; // type:function size:0x74 +fn_1_BDEC = .text:0x0000BDEC; // type:function size:0x44 +fn_1_BE30 = .text:0x0000BE30; // type:function size:0x70 +fn_1_BEA0 = .text:0x0000BEA0; // type:function size:0x70 +fn_1_BF10 = .text:0x0000BF10; // type:function size:0x44 +fn_1_BF54 = .text:0x0000BF54; // type:function size:0x70 +fn_1_BFC4 = .text:0x0000BFC4; // type:function size:0x70 +fn_1_C034 = .text:0x0000C034; // type:function size:0x5C +fn_1_C090 = .text:0x0000C090; // type:function size:0x80 +fn_1_C110 = .text:0x0000C110; // type:function size:0x74 +fn_1_C184 = .text:0x0000C184; // type:function size:0x78 +fn_1_C1FC = .text:0x0000C1FC; // type:function size:0x68 +fn_1_C264 = .text:0x0000C264; // type:function size:0x6C +fn_1_C2D0 = .text:0x0000C2D0; // type:function size:0x68 +fn_1_C338 = .text:0x0000C338; // type:function size:0x6C +fn_1_C3A4 = .text:0x0000C3A4; // type:function size:0x6C +fn_1_C410 = .text:0x0000C410; // type:function size:0x78 +fn_1_C488 = .text:0x0000C488; // type:function size:0x98 +fn_1_C520 = .text:0x0000C520; // type:function size:0x6C +fn_1_C58C = .text:0x0000C58C; // type:function size:0x78 +fn_1_C604 = .text:0x0000C604; // type:function size:0x98 +fn_1_C69C = .text:0x0000C69C; // type:function size:0x70 +fn_1_C70C = .text:0x0000C70C; // type:function size:0x78 +fn_1_C784 = .text:0x0000C784; // type:function size:0x98 +fn_1_C81C = .text:0x0000C81C; // type:function size:0x40 +_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:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x10 data:byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x20 data:byte +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x20 data:byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x10 data:byte +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x10 data:byte +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // 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:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x10 data:byte +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +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 +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:0x24 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte +lbl_1_data_68 = .data:0x00000068; // type:object size:0x7 data:string +lbl_1_data_6F = .data:0x0000006F; // type:object size:0x6 data:string +lbl_1_data_75 = .data:0x00000075; // type:object size:0xB +lbl_1_data_80 = .data:0x00000080; // type:object size:0x28 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x30 +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x8 data:string +jumptable_1_data_E0 = .data:0x000000E0; // type:object size:0x28 scope:local +lbl_1_data_108 = .data:0x00000108; // type:object size:0x8 data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x30 +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x200 +lbl_1_bss_234 = .bss:0x00000234; // type:object size:0x100 +lbl_1_bss_334 = .bss:0x00000334; // type:object size:0x4 data:4byte +lbl_1_bss_338 = .bss:0x00000338; // type:object size:0x2 data:2byte +lbl_1_bss_33A = .bss:0x0000033A; // type:object size:0x8 data:2byte +lbl_1_bss_342 = .bss:0x00000342; // type:object size:0x2 data:2byte +lbl_1_bss_344 = .bss:0x00000344; // type:object size:0x2 data:2byte +lbl_1_bss_346 = .bss:0x00000346; // type:object size:0x2 data:2byte +lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte +lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x2 data:2byte +lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x10 +lbl_1_bss_35C = .bss:0x0000035C; // type:object size:0x4 data:4byte +lbl_1_bss_360 = .bss:0x00000360; // type:object size:0x4 data:4byte +lbl_1_bss_364 = .bss:0x00000364; // type:object size:0x4 data:4byte +lbl_1_bss_368 = .bss:0x00000368; // type:object size:0x4 data:4byte +lbl_1_bss_36C = .bss:0x0000036C; // type:object size:0x44 data:4byte diff --git a/config/GMPJ01_00/rels/m416Dll/splits.txt b/config/GMPJ01_00/rels/m416Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m416Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m416Dll/symbols.txt b/config/GMPJ01_00/rels/m416Dll/symbols.txt new file mode 100644 index 00000000..6b6bdfe8 --- /dev/null +++ b/config/GMPJ01_00/rels/m416Dll/symbols.txt @@ -0,0 +1,209 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3B8 +fn_1_458 = .text:0x00000458; // type:function size:0xA4 +fn_1_4FC = .text:0x000004FC; // type:function size:0xCEC +fn_1_11E8 = .text:0x000011E8; // type:function size:0x58 +fn_1_1240 = .text:0x00001240; // type:function size:0x10 +fn_1_1250 = .text:0x00001250; // type:function size:0x10 +fn_1_1260 = .text:0x00001260; // type:function size:0x220 +fn_1_1480 = .text:0x00001480; // type:function size:0x68 +fn_1_14E8 = .text:0x000014E8; // type:function size:0x84 +fn_1_156C = .text:0x0000156C; // type:function size:0x3F8 +fn_1_1964 = .text:0x00001964; // type:function size:0x178 +fn_1_1ADC = .text:0x00001ADC; // type:function size:0x1A4 +fn_1_1C80 = .text:0x00001C80; // type:function size:0x104 +fn_1_1D84 = .text:0x00001D84; // type:function size:0xBAC +fn_1_2930 = .text:0x00002930; // type:function size:0xAC +fn_1_29DC = .text:0x000029DC; // type:function size:0x4C8 +fn_1_2EA4 = .text:0x00002EA4; // type:function size:0x778 +fn_1_361C = .text:0x0000361C; // type:function size:0x280 +fn_1_389C = .text:0x0000389C; // type:function size:0x54 +fn_1_38F0 = .text:0x000038F0; // type:function size:0x10D4 +fn_1_49C4 = .text:0x000049C4; // type:function size:0x640 +fn_1_5004 = .text:0x00005004; // type:function size:0x54 +fn_1_5058 = .text:0x00005058; // type:function size:0x264 +fn_1_52BC = .text:0x000052BC; // type:function size:0x274 +fn_1_5530 = .text:0x00005530; // type:function size:0x704 +fn_1_5C34 = .text:0x00005C34; // type:function size:0xE4 +fn_1_5D18 = .text:0x00005D18; // type:function size:0x60 +fn_1_5D78 = .text:0x00005D78; // type:function size:0x3C4 +fn_1_613C = .text:0x0000613C; // type:function size:0x504 +fn_1_6640 = .text:0x00006640; // type:function size:0x4A8 +fn_1_6AE8 = .text:0x00006AE8; // type:function size:0x304 +fn_1_6DEC = .text:0x00006DEC; // type:function size:0x70 +fn_1_6E5C = .text:0x00006E5C; // type:function size:0x240 +fn_1_709C = .text:0x0000709C; // type:function size:0x250 +fn_1_72EC = .text:0x000072EC; // type:function size:0x6E4 +fn_1_79D0 = .text:0x000079D0; // type:function size:0x84 +fn_1_7A54 = .text:0x00007A54; // type:function size:0x20 +fn_1_7A74 = .text:0x00007A74; // type:function size:0x300 +fn_1_7D74 = .text:0x00007D74; // type:function size:0x1BC +fn_1_7F30 = .text:0x00007F30; // type:function size:0x484 +fn_1_83B4 = .text:0x000083B4; // type:function size:0x550 +fn_1_8904 = .text:0x00008904; // type:function size:0xB8 +fn_1_89BC = .text:0x000089BC; // type:function size:0x4E4 +fn_1_8EA0 = .text:0x00008EA0; // type:function size:0x14 +fn_1_8EB4 = .text:0x00008EB4; // type:function size:0xAC +fn_1_8F60 = .text:0x00008F60; // type:function size:0x90 +fn_1_8FF0 = .text:0x00008FF0; // type:function size:0x4 +fn_1_8FF4 = .text:0x00008FF4; // type:function size:0x34 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0x1 data:byte +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0x1 data:byte +lbl_1_data_3C = .data:0x0000003C; // type:object size:0x1 data:byte +lbl_1_data_40 = .data:0x00000040; // type:object size:0x24 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte +jumptable_1_data_68 = .data:0x00000068; // type:object size:0x2C scope:local +lbl_1_data_94 = .data:0x00000094; // type:object size:0x1C data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x40 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x1C +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x48 +lbl_1_data_154 = .data:0x00000154; // type:object size:0x24 +lbl_1_data_178 = .data:0x00000178; // type:object size:0x8 +lbl_1_data_180 = .data:0x00000180; // type:object size:0x18 +lbl_1_data_198 = .data:0x00000198; // type:object size:0x30 +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x20 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC data:4byte +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x48 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x8 data:float +lbl_1_data_268 = .data:0x00000268; // type:object size:0x1 data:byte +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x60 data:float +lbl_1_data_2CC = .data:0x000002CC; // type:object size:0x18 +lbl_1_data_2E4 = .data:0x000002E4; // type:object size:0x8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x10 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x900 +lbl_1_bss_914 = .bss:0x00000914; // type:object size:0x4 data:4byte +lbl_1_bss_918 = .bss:0x00000918; // type:object size:0x2 data:2byte +lbl_1_bss_91A = .bss:0x0000091A; // type:object size:0x6 data:2byte +lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x4 data:float +lbl_1_bss_924 = .bss:0x00000924; // type:object size:0x2 data:2byte +lbl_1_bss_926 = .bss:0x00000926; // type:object size:0x2 data:2byte +lbl_1_bss_928 = .bss:0x00000928; // type:object size:0x2 data:2byte +lbl_1_bss_92A = .bss:0x0000092A; // type:object size:0x2 data:2byte +lbl_1_bss_92E = .bss:0x0000092E; // type:object size:0x2 data:2byte +lbl_1_bss_930 = .bss:0x00000930; // type:object size:0x20 data:4byte +lbl_1_bss_950 = .bss:0x00000950; // type:object size:0x4 data:4byte +lbl_1_bss_954 = .bss:0x00000954; // type:object size:0x4 data:4byte +lbl_1_bss_958 = .bss:0x00000958; // type:object size:0x4 data:4byte +lbl_1_bss_95C = .bss:0x0000095C; // type:object size:0x2 data:2byte +lbl_1_bss_960 = .bss:0x00000960; // type:object size:0x8 data:4byte +lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x800 data:2byte +lbl_1_bss_1168 = .bss:0x00001168; // type:object size:0x2 data:2byte +lbl_1_bss_116C = .bss:0x0000116C; // type:object size:0x8 data:float +lbl_1_bss_1174 = .bss:0x00001174; // type:object size:0x8 +lbl_1_bss_117C = .bss:0x0000117C; // type:object size:0x4 data:float +lbl_1_bss_1180 = .bss:0x00001180; // type:object size:0x4 data:4byte +lbl_1_bss_1184 = .bss:0x00001184; // type:object size:0x4 data:4byte +lbl_1_bss_1188 = .bss:0x00001188; // type:object size:0x4 data:4byte +lbl_1_bss_118C = .bss:0x0000118C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m417Dll/splits.txt b/config/GMPJ01_00/rels/m417Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m417Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m417Dll/symbols.txt b/config/GMPJ01_00/rels/m417Dll/symbols.txt new file mode 100644 index 00000000..944d6d8e --- /dev/null +++ b/config/GMPJ01_00/rels/m417Dll/symbols.txt @@ -0,0 +1,366 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x438 +fn_1_4D8 = .text:0x000004D8; // type:function size:0xD8 +fn_1_5B0 = .text:0x000005B0; // type:function size:0x250 +fn_1_800 = .text:0x00000800; // type:function size:0x190 +fn_1_990 = .text:0x00000990; // type:function size:0x518 +fn_1_EA8 = .text:0x00000EA8; // type:function size:0x534 +fn_1_13DC = .text:0x000013DC; // type:function size:0x3E4 +fn_1_17C0 = .text:0x000017C0; // type:function size:0x4E8 +fn_1_1CA8 = .text:0x00001CA8; // type:function size:0x4B0 +fn_1_2158 = .text:0x00002158; // type:function size:0x570 +fn_1_26C8 = .text:0x000026C8; // type:function size:0x18 +fn_1_26E0 = .text:0x000026E0; // type:function size:0x18 +fn_1_26F8 = .text:0x000026F8; // type:function size:0x18 +fn_1_2710 = .text:0x00002710; // type:function size:0x18 +fn_1_2728 = .text:0x00002728; // type:function size:0x18 +fn_1_2740 = .text:0x00002740; // type:function size:0x30 +fn_1_2770 = .text:0x00002770; // type:function size:0x30 +fn_1_27A0 = .text:0x000027A0; // type:function size:0x30 +fn_1_27D0 = .text:0x000027D0; // type:function size:0x38 +fn_1_2808 = .text:0x00002808; // type:function size:0x40 +fn_1_2848 = .text:0x00002848; // type:function size:0x348 +fn_1_2B90 = .text:0x00002B90; // type:function size:0x378 +fn_1_2F08 = .text:0x00002F08; // type:function size:0x11C +fn_1_3024 = .text:0x00003024; // type:function size:0xB4 +fn_1_30D8 = .text:0x000030D8; // type:function size:0x34 +fn_1_310C = .text:0x0000310C; // type:function size:0x168 +fn_1_3274 = .text:0x00003274; // type:function size:0x140 +fn_1_33B4 = .text:0x000033B4; // type:function size:0x4C +fn_1_3400 = .text:0x00003400; // type:function size:0x134 +fn_1_3534 = .text:0x00003534; // type:function size:0x40 +fn_1_3574 = .text:0x00003574; // type:function size:0x22C +fn_1_37A0 = .text:0x000037A0; // type:function size:0x37C +fn_1_3B1C = .text:0x00003B1C; // type:function size:0xA8 +fn_1_3BC4 = .text:0x00003BC4; // type:function size:0x190 +fn_1_3D54 = .text:0x00003D54; // type:function size:0x4 +fn_1_3D58 = .text:0x00003D58; // type:function size:0xE70 +fn_1_4BC8 = .text:0x00004BC8; // type:function size:0x29C +fn_1_4E64 = .text:0x00004E64; // type:function size:0x94C +fn_1_57B0 = .text:0x000057B0; // type:function size:0x68C +fn_1_5E3C = .text:0x00005E3C; // type:function size:0x210 +fn_1_604C = .text:0x0000604C; // type:function size:0xAB8 +fn_1_6B04 = .text:0x00006B04; // type:function size:0x5C +fn_1_6B60 = .text:0x00006B60; // type:function size:0x34 +fn_1_6B94 = .text:0x00006B94; // type:function size:0x1D0 +fn_1_6D64 = .text:0x00006D64; // type:function size:0x7AC +fn_1_7510 = .text:0x00007510; // type:function size:0xAC +fn_1_75BC = .text:0x000075BC; // type:function size:0x34 +fn_1_75F0 = .text:0x000075F0; // type:function size:0x10 +fn_1_7600 = .text:0x00007600; // type:function size:0x24 +fn_1_7624 = .text:0x00007624; // type:function size:0x298 +fn_1_78BC = .text:0x000078BC; // type:function size:0xAC +fn_1_7968 = .text:0x00007968; // type:function size:0xC0 +fn_1_7A28 = .text:0x00007A28; // type:function size:0xC +fn_1_7A34 = .text:0x00007A34; // type:function size:0x234 +fn_1_7C68 = .text:0x00007C68; // type:function size:0x24 +fn_1_7C8C = .text:0x00007C8C; // type:function size:0x670 +fn_1_82FC = .text:0x000082FC; // type:function size:0x3EC +fn_1_86E8 = .text:0x000086E8; // type:function size:0x424 +fn_1_8B0C = .text:0x00008B0C; // type:function size:0x224 +fn_1_8D30 = .text:0x00008D30; // type:function size:0x114 +fn_1_8E44 = .text:0x00008E44; // type:function size:0x39C +fn_1_91E0 = .text:0x000091E0; // type:function size:0xB8 +fn_1_9298 = .text:0x00009298; // type:function size:0x784 +fn_1_9A1C = .text:0x00009A1C; // type:function size:0x1F8 +fn_1_9C14 = .text:0x00009C14; // type:function size:0x3DC +fn_1_9FF0 = .text:0x00009FF0; // type:function size:0xD34 +fn_1_AD24 = .text:0x0000AD24; // type:function size:0xA0 +fn_1_ADC4 = .text:0x0000ADC4; // type:function size:0x4FC +fn_1_B2C0 = .text:0x0000B2C0; // type:function size:0x5E0 +fn_1_B8A0 = .text:0x0000B8A0; // type:function size:0x18C +fn_1_BA2C = .text:0x0000BA2C; // type:function size:0x74 +fn_1_BAA0 = .text:0x0000BAA0; // type:function size:0x1D0 +fn_1_BC70 = .text:0x0000BC70; // type:function size:0x3C +fn_1_BCAC = .text:0x0000BCAC; // type:function size:0xF0 +fn_1_BD9C = .text:0x0000BD9C; // type:function size:0x214 +fn_1_BFB0 = .text:0x0000BFB0; // type:function size:0xA0 +fn_1_C050 = .text:0x0000C050; // type:function size:0x3E4 +fn_1_C434 = .text:0x0000C434; // type:function size:0x224 +fn_1_C658 = .text:0x0000C658; // type:function size:0x134 +fn_1_C78C = .text:0x0000C78C; // type:function size:0xF0 +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x24 data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x24 data:4byte +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0xC data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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:0x1 data:byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x1 data:byte +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x10 data:4byte +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x10 data:4byte +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0xC data:4byte +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0xC data:4byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x10 data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0xC data:4byte +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:4byte +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x18 data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x18 data:4byte +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x8 data:double +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0x10 data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x40 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x84 +lbl_1_data_114 = .data:0x00000114; // type:object size:0xDC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x38 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x110 data:float +lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x700 data:4byte +lbl_1_bss_878 = .bss:0x00000878; // type:object size:0x8 data:4byte +lbl_1_bss_880 = .bss:0x00000880; // type:object size:0x4 data:4byte +lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x4 data:4byte +lbl_1_bss_888 = .bss:0x00000888; // type:object size:0x10 +lbl_1_bss_898 = .bss:0x00000898; // type:object size:0x10 data:4byte +lbl_1_bss_8A8 = .bss:0x000008A8; // type:object size:0x4 data:4byte +lbl_1_bss_8AC = .bss:0x000008AC; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m418Dll/splits.txt b/config/GMPJ01_00/rels/m418Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m418Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m418Dll/symbols.txt b/config/GMPJ01_00/rels/m418Dll/symbols.txt new file mode 100644 index 00000000..964068e3 --- /dev/null +++ b/config/GMPJ01_00/rels/m418Dll/symbols.txt @@ -0,0 +1,303 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x74 +fn_1_74 = .text:0x00000074; // type:function size:0xE4 +fn_1_158 = .text:0x00000158; // type:function size:0x28 +fn_1_180 = .text:0x00000180; // type:function size:0xC8 +fn_1_248 = .text:0x00000248; // type:function size:0x20 +fn_1_268 = .text:0x00000268; // type:function size:0x298 +fn_1_500 = .text:0x00000500; // type:function size:0x118 +fn_1_618 = .text:0x00000618; // type:function size:0xC4 +fn_1_6DC = .text:0x000006DC; // type:function size:0x38 +fn_1_714 = .text:0x00000714; // type:function size:0x34 +fn_1_748 = .text:0x00000748; // type:function size:0x38 +fn_1_780 = .text:0x00000780; // type:function size:0x1D0 +fn_1_950 = .text:0x00000950; // type:function size:0x48 +fn_1_998 = .text:0x00000998; // type:function size:0x110 +fn_1_AA8 = .text:0x00000AA8; // type:function size:0xA4 +fn_1_B4C = .text:0x00000B4C; // type:function size:0x328 +fn_1_E74 = .text:0x00000E74; // type:function size:0x67C +fn_1_14F0 = .text:0x000014F0; // type:function size:0x3BC +fn_1_18AC = .text:0x000018AC; // type:function size:0x50 +fn_1_18FC = .text:0x000018FC; // type:function size:0x7B4 +fn_1_20B0 = .text:0x000020B0; // type:function size:0xC8 +fn_1_2178 = .text:0x00002178; // type:function size:0x71C +fn_1_2894 = .text:0x00002894; // type:function size:0x10C +fn_1_29A0 = .text:0x000029A0; // type:function size:0x224 +fn_1_2BC4 = .text:0x00002BC4; // type:function size:0x48 +fn_1_2C0C = .text:0x00002C0C; // type:function size:0x448 +fn_1_3054 = .text:0x00003054; // type:function size:0xE4 +fn_1_3138 = .text:0x00003138; // type:function size:0x108 +fn_1_3240 = .text:0x00003240; // type:function size:0x1C8 +fn_1_3408 = .text:0x00003408; // type:function size:0x3C +fn_1_3444 = .text:0x00003444; // type:function size:0xA6C +fn_1_3EB0 = .text:0x00003EB0; // type:function size:0x814 +fn_1_46C4 = .text:0x000046C4; // type:function size:0x5C0 +fn_1_4C84 = .text:0x00004C84; // type:function size:0x2DC +fn_1_4F60 = .text:0x00004F60; // type:function size:0x3F8 +fn_1_5358 = .text:0x00005358; // type:function size:0xE4 +fn_1_543C = .text:0x0000543C; // type:function size:0x150 +fn_1_558C = .text:0x0000558C; // type:function size:0x120 +fn_1_56AC = .text:0x000056AC; // type:function size:0xBC +fn_1_5768 = .text:0x00005768; // type:function size:0x7C +fn_1_57E4 = .text:0x000057E4; // type:function size:0x18C +fn_1_5970 = .text:0x00005970; // type:function size:0xFC +fn_1_5A6C = .text:0x00005A6C; // type:function size:0x2BC +fn_1_5D28 = .text:0x00005D28; // type:function size:0x30 +fn_1_5D58 = .text:0x00005D58; // type:function size:0x98 +fn_1_5DF0 = .text:0x00005DF0; // type:function size:0x248 +fn_1_6038 = .text:0x00006038; // type:function size:0x2DC +fn_1_6314 = .text:0x00006314; // type:function size:0xE4 +fn_1_63F8 = .text:0x000063F8; // type:function size:0x118 +fn_1_6510 = .text:0x00006510; // type:function size:0x108 +fn_1_6618 = .text:0x00006618; // type:function size:0x128 +fn_1_6740 = .text:0x00006740; // type:function size:0xC8 +fn_1_6808 = .text:0x00006808; // type:function size:0x10C +fn_1_6914 = .text:0x00006914; // type:function size:0x4B8 +fn_1_6DCC = .text:0x00006DCC; // type:function size:0xA0 +fn_1_6E6C = .text:0x00006E6C; // type:function size:0x48 +fn_1_6EB4 = .text:0x00006EB4; // type:function size:0x84 +fn_1_6F38 = .text:0x00006F38; // type:function size:0x35C +fn_1_7294 = .text:0x00007294; // type:function size:0x4 +fn_1_7298 = .text:0x00007298; // type:function size:0x2D8 +fn_1_7570 = .text:0x00007570; // type:function size:0x74 +fn_1_75E4 = .text:0x000075E4; // type:function size:0x214 +fn_1_77F8 = .text:0x000077F8; // type:function size:0x68 +fn_1_7860 = .text:0x00007860; // type:function size:0x208 +fn_1_7A68 = .text:0x00007A68; // type:function size:0x100 +fn_1_7B68 = .text:0x00007B68; // type:function size:0x218 +fn_1_7D80 = .text:0x00007D80; // type:function size:0xA4 +fn_1_7E24 = .text:0x00007E24; // type:function size:0xF8 +fn_1_7F1C = .text:0x00007F1C; // type:function size:0xB8 +fn_1_7FD4 = .text:0x00007FD4; // type:function size:0x1CC +fn_1_81A0 = .text:0x000081A0; // type:function size:0x4 +fn_1_81A4 = .text:0x000081A4; // type:function size:0x2DC +fn_1_8480 = .text:0x00008480; // type:function size:0x30 +fn_1_84B0 = .text:0x000084B0; // type:function size:0x98 +fn_1_8548 = .text:0x00008548; // type:function size:0x120 +fn_1_8668 = .text:0x00008668; // type:function size:0xC0 +fn_1_8728 = .text:0x00008728; // type:function size:0xA8 +fn_1_87D0 = .text:0x000087D0; // type:function size:0xBC +fn_1_888C = .text:0x0000888C; // type:function size:0x28 +fn_1_88B4 = .text:0x000088B4; // type:function size:0xFC +fn_1_89B0 = .text:0x000089B0; // type:function size:0x164 +fn_1_8B14 = .text:0x00008B14; // type:function size:0x170 +fn_1_8C84 = .text:0x00008C84; // type:function size:0xEC +fn_1_8D70 = .text:0x00008D70; // type:function size:0x204 +fn_1_8F74 = .text:0x00008F74; // type:function size:0x120 +fn_1_9094 = .text:0x00009094; // type:function size:0x48 +fn_1_90DC = .text:0x000090DC; // type:function size:0x64 +fn_1_9140 = .text:0x00009140; // type:function size:0xA4 +fn_1_91E4 = .text:0x000091E4; // type:function size:0x108 +fn_1_92EC = .text:0x000092EC; // type:function size:0x48 +fn_1_9334 = .text:0x00009334; // type:function size:0x30 +fn_1_9364 = .text:0x00009364; // type:function size:0x98 +fn_1_93FC = .text:0x000093FC; // type:function size:0x130 +fn_1_952C = .text:0x0000952C; // type:function size:0x60 +fn_1_958C = .text:0x0000958C; // type:function size:0x618 +fn_1_9BA4 = .text:0x00009BA4; // type:function size:0x3F0 +fn_1_9F94 = .text:0x00009F94; // type:function size:0x1BC +_prolog = .text:0x0000A150; // type:function size:0x54 scope:global +_epilog = .text:0x0000A1A4; // type:function size:0x4C scope:global +fn_1_A1F0 = .text:0x0000A1F0; // type:function size:0x398 +fn_1_A588 = .text:0x0000A588; // type:function size:0x398 +fn_1_A920 = .text:0x0000A920; // type:function size:0x20 +fn_1_A940 = .text:0x0000A940; // type:function size:0x28 +fn_1_A968 = .text:0x0000A968; // type:function size:0xC8 +fn_1_AA30 = .text:0x0000AA30; // type:function size:0xBC +fn_1_AAEC = .text:0x0000AAEC; // type:function size:0xD8 +fn_1_ABC4 = .text:0x0000ABC4; // type:function size:0x150 +fn_1_AD14 = .text:0x0000AD14; // type:function size:0x178 +fn_1_AE8C = .text:0x0000AE8C; // type:function size:0x50 +fn_1_AEDC = .text:0x0000AEDC; // type:function size:0x5C +fn_1_AF38 = .text:0x0000AF38; // type:function size:0x88 +fn_1_AFC0 = .text:0x0000AFC0; // type:function size:0x74 +fn_1_B034 = .text:0x0000B034; // type:function size:0x94 +fn_1_B0C8 = .text:0x0000B0C8; // type:function size:0x3C +fn_1_B104 = .text:0x0000B104; // type:function size:0x318 +fn_1_B41C = .text:0x0000B41C; // type:function size:0x3C +fn_1_B458 = .text:0x0000B458; // type:function size:0x4C +fn_1_B4A4 = .text:0x0000B4A4; // type:function size:0x26C +fn_1_B710 = .text:0x0000B710; // type:function size:0x26C +fn_1_B97C = .text:0x0000B97C; // type:function size:0x27C +fn_1_BBF8 = .text:0x0000BBF8; // type:function size:0x2B4 +fn_1_BEAC = .text:0x0000BEAC; // type:function size:0x46C +fn_1_C318 = .text:0x0000C318; // type:function size:0x454 +fn_1_C76C = .text:0x0000C76C; // type:function size:0x48C +fn_1_CBF8 = .text:0x0000CBF8; // type:function size:0x658 +fn_1_D250 = .text:0x0000D250; // type:function size:0x4C4 +fn_1_D714 = .text:0x0000D714; // type:function size:0x4FC +fn_1_DC10 = .text:0x0000DC10; // type:function size:0x6C8 +_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:0xC data:4byte +lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0xC data:4byte +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC data:4byte +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0xC data:4byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x10 data:4byte +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x10 data:4byte +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x10 data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 data:4byte +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +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:0xC data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC data:4byte +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0xC data:4byte +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0xC data:4byte +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC data:4byte +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0xC data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0xC data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0xC data:4byte +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0xC data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0xC data:4byte +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0xC data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte +lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte +lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string +lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string +lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string +lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte +jumptable_1_data_F8 = .data:0x000000F8; // type:object size:0x88 scope:local +lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string +lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x20 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x60 +lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 +lbl_1_data_264 = .data:0x00000264; // type:object size:0x30 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x24 +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x60 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x30 +lbl_1_data_348 = .data:0x00000348; // type:object size:0x84 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x30 +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x48 +lbl_1_data_444 = .data:0x00000444; // type:object size:0x60 +jumptable_1_data_4A4 = .data:0x000004A4; // type:object size:0x28 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x18 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x18 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x18 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0xB4 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x54 data:4byte +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x70 +lbl_1_bss_1E0 = .bss:0x000001E0; // type:object size:0x14 data:4byte +lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x4C data:4byte +lbl_1_bss_240 = .bss:0x00000240; // type:object size:0x2C data:4byte +lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x180 +lbl_1_bss_3EC = .bss:0x000003EC; // type:object size:0x44 data:4byte diff --git a/config/GMPJ01_00/rels/m419Dll/splits.txt b/config/GMPJ01_00/rels/m419Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m419Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m419Dll/symbols.txt b/config/GMPJ01_00/rels/m419Dll/symbols.txt new file mode 100644 index 00000000..7b1b3da9 --- /dev/null +++ b/config/GMPJ01_00/rels/m419Dll/symbols.txt @@ -0,0 +1,184 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x400 +fn_1_4A0 = .text:0x000004A0; // type:function size:0xDC +fn_1_57C = .text:0x0000057C; // type:function size:0x2CC +fn_1_848 = .text:0x00000848; // type:function size:0x288 +fn_1_AD0 = .text:0x00000AD0; // type:function size:0x488 +fn_1_F58 = .text:0x00000F58; // type:function size:0x102C +fn_1_1F84 = .text:0x00001F84; // type:function size:0x128 +fn_1_20AC = .text:0x000020AC; // type:function size:0x128 +fn_1_21D4 = .text:0x000021D4; // type:function size:0x80 +fn_1_2254 = .text:0x00002254; // type:function size:0x4F0 +fn_1_2744 = .text:0x00002744; // type:function size:0x498 +fn_1_2BDC = .text:0x00002BDC; // type:function size:0x220 +fn_1_2DFC = .text:0x00002DFC; // type:function size:0x4FC +fn_1_32F8 = .text:0x000032F8; // type:function size:0x154 +fn_1_344C = .text:0x0000344C; // type:function size:0x1398 +fn_1_47E4 = .text:0x000047E4; // type:function size:0x33C +fn_1_4B20 = .text:0x00004B20; // type:function size:0x334 +fn_1_4E54 = .text:0x00004E54; // type:function size:0xB8 +fn_1_4F0C = .text:0x00004F0C; // type:function size:0xC0 +fn_1_4FCC = .text:0x00004FCC; // type:function size:0x6C +fn_1_5038 = .text:0x00005038; // type:function size:0x6C +fn_1_50A4 = .text:0x000050A4; // type:function size:0x244 +fn_1_52E8 = .text:0x000052E8; // type:function size:0x570 +fn_1_5858 = .text:0x00005858; // type:function size:0x104 +fn_1_595C = .text:0x0000595C; // type:function size:0x17C +fn_1_5AD8 = .text:0x00005AD8; // type:function size:0x45C +fn_1_5F34 = .text:0x00005F34; // type:function size:0x358 +fn_1_628C = .text:0x0000628C; // type:function size:0x334 +fn_1_65C0 = .text:0x000065C0; // type:function size:0x1E0 +fn_1_67A0 = .text:0x000067A0; // type:function size:0x564 +fn_1_6D04 = .text:0x00006D04; // type:function size:0x198 +fn_1_6E9C = .text:0x00006E9C; // type:function size:0xA18 +fn_1_78B4 = .text:0x000078B4; // type:function size:0x223C +fn_1_9AF0 = .text:0x00009AF0; // type:function size:0x130C +fn_1_ADFC = .text:0x0000ADFC; // type:function size:0x258 +fn_1_B054 = .text:0x0000B054; // type:function size:0x2E78 +fn_1_DECC = .text:0x0000DECC; // type:function size:0x70 +fn_1_DF3C = .text:0x0000DF3C; // type:function size:0x5C +fn_1_DF98 = .text:0x0000DF98; // type:function size:0x17A4 +fn_1_F73C = .text:0x0000F73C; // type:function size:0x280 +fn_1_F9BC = .text:0x0000F9BC; // type:function size:0x89C +fn_1_10258 = .text:0x00010258; // type:function size:0x248 +fn_1_104A0 = .text:0x000104A0; // type:function size:0x60 +fn_1_10500 = .text:0x00010500; // type:function size:0x3E0 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_88 = .rodata:0x00000088; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +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_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x2C +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x10 +lbl_1_data_5C = .data:0x0000005C; // type:object size:0x60 +lbl_1_data_BC = .data:0x000000BC; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x60 +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x1 data:byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x20 +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x20 +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0xC data:float +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0xC data:float +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0xC data:float +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0xB8 data:4byte +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x10 +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x58 data:2byte +lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0x18 data:2byte +lbl_1_bss_200 = .bss:0x00000200; // type:object size:0x380 +lbl_1_bss_580 = .bss:0x00000580; // type:object size:0x4 data:4byte +lbl_1_bss_584 = .bss:0x00000584; // type:object size:0x10 data:4byte +lbl_1_bss_594 = .bss:0x00000594; // type:object size:0x10 +lbl_1_bss_5A4 = .bss:0x000005A4; // type:object size:0x4 data:4byte +lbl_1_bss_5A8 = .bss:0x000005A8; // type:object size:0x4 data:4byte +lbl_1_bss_5AC = .bss:0x000005AC; // type:object size:0x4 data:4byte +lbl_1_bss_5B0 = .bss:0x000005B0; // type:object size:0x4 data:4byte +lbl_1_bss_5B4 = .bss:0x000005B4; // type:object size:0x4 data:4byte +lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x2 data:2byte +lbl_1_bss_5BA = .bss:0x000005BA; // type:object size:0x2 data:2byte +lbl_1_bss_5BC = .bss:0x000005BC; // type:object size:0x2 data:2byte +lbl_1_bss_5BE = .bss:0x000005BE; // type:object size:0x2 data:2byte +lbl_1_bss_5C2 = .bss:0x000005C2; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m420dll/splits.txt b/config/GMPJ01_00/rels/m420dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m420dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m420dll/symbols.txt b/config/GMPJ01_00/rels/m420dll/symbols.txt new file mode 100644 index 00000000..dcca974e --- /dev/null +++ b/config/GMPJ01_00/rels/m420dll/symbols.txt @@ -0,0 +1,249 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x78 +fn_1_118 = .text:0x00000118; // type:function size:0x80 +fn_1_198 = .text:0x00000198; // type:function size:0x23C +fn_1_3D4 = .text:0x000003D4; // type:function size:0x68 +fn_1_43C = .text:0x0000043C; // type:function size:0x8D8 +fn_1_D14 = .text:0x00000D14; // type:function size:0x84 +fn_1_D98 = .text:0x00000D98; // type:function size:0x1B0 +fn_1_F48 = .text:0x00000F48; // type:function size:0x2C +fn_1_F74 = .text:0x00000F74; // type:function size:0xBC +fn_1_1030 = .text:0x00001030; // type:function size:0xBC +fn_1_10EC = .text:0x000010EC; // type:function size:0x98 +fn_1_1184 = .text:0x00001184; // type:function size:0x718 +fn_1_189C = .text:0x0000189C; // type:function size:0x214 +fn_1_1AB0 = .text:0x00001AB0; // type:function size:0xDC +fn_1_1B8C = .text:0x00001B8C; // type:function size:0x288 +fn_1_1E14 = .text:0x00001E14; // type:function size:0x50 +fn_1_1E64 = .text:0x00001E64; // type:function size:0xB0 +fn_1_1F14 = .text:0x00001F14; // type:function size:0x40 +fn_1_1F54 = .text:0x00001F54; // type:function size:0x40 +fn_1_1F94 = .text:0x00001F94; // type:function size:0x78 +fn_1_200C = .text:0x0000200C; // type:function size:0xE0 +fn_1_20EC = .text:0x000020EC; // type:function size:0x30 +fn_1_211C = .text:0x0000211C; // type:function size:0x58 +fn_1_2174 = .text:0x00002174; // type:function size:0x54 +fn_1_21C8 = .text:0x000021C8; // type:function size:0x98 +fn_1_2260 = .text:0x00002260; // type:function size:0x6C +fn_1_22CC = .text:0x000022CC; // type:function size:0x4A0 +fn_1_276C = .text:0x0000276C; // type:function size:0x574 +fn_1_2CE0 = .text:0x00002CE0; // type:function size:0x9C +fn_1_2D7C = .text:0x00002D7C; // type:function size:0x12C +fn_1_2EA8 = .text:0x00002EA8; // type:function size:0x1F0 +fn_1_3098 = .text:0x00003098; // type:function size:0x1D4 +fn_1_326C = .text:0x0000326C; // type:function size:0x1E4 +fn_1_3450 = .text:0x00003450; // type:function size:0x5C +fn_1_34AC = .text:0x000034AC; // type:function size:0xB0 +fn_1_355C = .text:0x0000355C; // type:function size:0x188 +fn_1_36E4 = .text:0x000036E4; // type:function size:0x68 +fn_1_374C = .text:0x0000374C; // type:function size:0x40 +fn_1_378C = .text:0x0000378C; // type:function size:0xC8 +fn_1_3854 = .text:0x00003854; // type:function size:0x11C +fn_1_3970 = .text:0x00003970; // type:function size:0x624 +fn_1_3F94 = .text:0x00003F94; // type:function size:0x300 +fn_1_4294 = .text:0x00004294; // type:function size:0x2E0 +fn_1_4574 = .text:0x00004574; // type:function size:0x1F8 +fn_1_476C = .text:0x0000476C; // type:function size:0x1F8 +fn_1_4964 = .text:0x00004964; // type:function size:0x1008 +fn_1_596C = .text:0x0000596C; // type:function size:0x88 +fn_1_59F4 = .text:0x000059F4; // type:function size:0x88 +fn_1_5A7C = .text:0x00005A7C; // type:function size:0x2C +fn_1_5AA8 = .text:0x00005AA8; // type:function size:0x1E4 +fn_1_5C8C = .text:0x00005C8C; // type:function size:0x464 +fn_1_60F0 = .text:0x000060F0; // type:function size:0x178 +fn_1_6268 = .text:0x00006268; // type:function size:0x104 +fn_1_636C = .text:0x0000636C; // type:function size:0x80 +fn_1_63EC = .text:0x000063EC; // type:function size:0x120 +fn_1_650C = .text:0x0000650C; // type:function size:0x48 +fn_1_6554 = .text:0x00006554; // type:function size:0x10C +fn_1_6660 = .text:0x00006660; // type:function size:0x10 +fn_1_6670 = .text:0x00006670; // type:function size:0x2C +fn_1_669C = .text:0x0000669C; // type:function size:0x8C +fn_1_6728 = .text:0x00006728; // type:function size:0x7C +fn_1_67A4 = .text:0x000067A4; // type:function size:0x44 +fn_1_67E8 = .text:0x000067E8; // type:function size:0x28 +fn_1_6810 = .text:0x00006810; // type:function size:0x10 +fn_1_6820 = .text:0x00006820; // type:function size:0x64 +fn_1_6884 = .text:0x00006884; // type:function size:0xCC +fn_1_6950 = .text:0x00006950; // type:function size:0x3BC +fn_1_6D0C = .text:0x00006D0C; // type:function size:0x50 +fn_1_6D5C = .text:0x00006D5C; // type:function size:0x94 +fn_1_6DF0 = .text:0x00006DF0; // type:function size:0x440 +fn_1_7230 = .text:0x00007230; // type:function size:0x98 +fn_1_72C8 = .text:0x000072C8; // type:function size:0x98 +fn_1_7360 = .text:0x00007360; // type:function size:0x98 +fn_1_73F8 = .text:0x000073F8; // type:function size:0x100 +fn_1_74F8 = .text:0x000074F8; // type:function size:0x20C +fn_1_7704 = .text:0x00007704; // type:function size:0x720 +fn_1_7E24 = .text:0x00007E24; // type:function size:0x41C +fn_1_8240 = .text:0x00008240; // type:function size:0x1D4 +fn_1_8414 = .text:0x00008414; // type:function size:0x520 +fn_1_8934 = .text:0x00008934; // type:function size:0x10 +fn_1_8944 = .text:0x00008944; // type:function size:0x34 +_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:0x54 +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x160 +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x60 +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x10 +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x1C +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x6C +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0xC data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0xC data:4byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x30 data:4byte +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x30 data:4byte +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0xC data:4byte +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x1E data:string +lbl_1_data_3C = .data:0x0000003C; // type:object size:0x14 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x80 +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x1C +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x30 +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0x3 +lbl_1_data_138 = .data:0x00000138; // type:object size:0x1C +lbl_1_data_154 = .data:0x00000154; // type:object size:0x10 data:4byte +lbl_1_data_164 = .data:0x00000164; // type:object size:0xD data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x10 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:float +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x1C data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x1C data:float +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x1C data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x8 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x80 data:float +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x8AC data:4byte +lbl_1_bss_9EC = .bss:0x000009EC; // type:object size:0x2 data:2byte +lbl_1_bss_9F0 = .bss:0x000009F0; // type:object size:0x38 data:2byte +lbl_1_bss_A28 = .bss:0x00000A28; // type:object size:0x4 data:4byte +lbl_1_bss_A2C = .bss:0x00000A2C; // type:object size:0x10 data:4byte +lbl_1_bss_A3C = .bss:0x00000A3C; // type:object size:0x4 data:4byte +lbl_1_bss_A40 = .bss:0x00000A40; // type:object size:0x8 data:4byte +lbl_1_bss_A48 = .bss:0x00000A48; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m421Dll/splits.txt b/config/GMPJ01_00/rels/m421Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m421Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m421Dll/symbols.txt b/config/GMPJ01_00/rels/m421Dll/symbols.txt new file mode 100644 index 00000000..c704e2c9 --- /dev/null +++ b/config/GMPJ01_00/rels/m421Dll/symbols.txt @@ -0,0 +1,277 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x400 +fn_1_4A0 = .text:0x000004A0; // type:function size:0xD8 +fn_1_578 = .text:0x00000578; // type:function size:0x20C +fn_1_784 = .text:0x00000784; // type:function size:0x134 +fn_1_8B8 = .text:0x000008B8; // type:function size:0x404 +fn_1_CBC = .text:0x00000CBC; // type:function size:0x430 +fn_1_10EC = .text:0x000010EC; // type:function size:0x340 +fn_1_142C = .text:0x0000142C; // type:function size:0x424 +fn_1_1850 = .text:0x00001850; // type:function size:0x440 +fn_1_1C90 = .text:0x00001C90; // type:function size:0x4AC +fn_1_213C = .text:0x0000213C; // type:function size:0x70 +fn_1_21AC = .text:0x000021AC; // type:function size:0x87C +fn_1_2A28 = .text:0x00002A28; // type:function size:0x190 +fn_1_2BB8 = .text:0x00002BB8; // type:function size:0x468 +fn_1_3020 = .text:0x00003020; // type:function size:0xB0 +fn_1_30D0 = .text:0x000030D0; // type:function size:0x264 +fn_1_3334 = .text:0x00003334; // type:function size:0x28 +fn_1_335C = .text:0x0000335C; // type:function size:0x5A0 +fn_1_38FC = .text:0x000038FC; // type:function size:0x254 +fn_1_3B50 = .text:0x00003B50; // type:function size:0x14 +fn_1_3B64 = .text:0x00003B64; // type:function size:0x14 +fn_1_3B78 = .text:0x00003B78; // type:function size:0x9C +fn_1_3C14 = .text:0x00003C14; // type:function size:0x9C +fn_1_3CB0 = .text:0x00003CB0; // type:function size:0x68 +fn_1_3D18 = .text:0x00003D18; // type:function size:0x6C +fn_1_3D84 = .text:0x00003D84; // type:function size:0x98 +fn_1_3E1C = .text:0x00003E1C; // type:function size:0x18 +fn_1_3E34 = .text:0x00003E34; // type:function size:0x18 +fn_1_3E4C = .text:0x00003E4C; // type:function size:0x18 +fn_1_3E64 = .text:0x00003E64; // type:function size:0x18 +fn_1_3E7C = .text:0x00003E7C; // type:function size:0x7C +fn_1_3EF8 = .text:0x00003EF8; // type:function size:0x30 +fn_1_3F28 = .text:0x00003F28; // type:function size:0x40 +fn_1_3F68 = .text:0x00003F68; // type:function size:0x30 +fn_1_3F98 = .text:0x00003F98; // type:function size:0x30 +fn_1_3FC8 = .text:0x00003FC8; // type:function size:0x30 +fn_1_3FF8 = .text:0x00003FF8; // type:function size:0x38 +fn_1_4030 = .text:0x00004030; // type:function size:0x208 +fn_1_4238 = .text:0x00004238; // type:function size:0x240 +fn_1_4478 = .text:0x00004478; // type:function size:0x11C +fn_1_4594 = .text:0x00004594; // type:function size:0xB4 +fn_1_4648 = .text:0x00004648; // type:function size:0x268 +fn_1_48B0 = .text:0x000048B0; // type:function size:0x24 +fn_1_48D4 = .text:0x000048D4; // type:function size:0x62C +fn_1_4F00 = .text:0x00004F00; // type:function size:0x160 +fn_1_5060 = .text:0x00005060; // type:function size:0x368 +fn_1_53C8 = .text:0x000053C8; // type:function size:0x3C4 +fn_1_578C = .text:0x0000578C; // type:function size:0x410 +fn_1_5B9C = .text:0x00005B9C; // type:function size:0x5E8 +fn_1_6184 = .text:0x00006184; // type:function size:0x27C +fn_1_6400 = .text:0x00006400; // type:function size:0x2B4 +fn_1_66B4 = .text:0x000066B4; // type:function size:0xB8 +fn_1_676C = .text:0x0000676C; // type:function size:0x5DC +fn_1_6D48 = .text:0x00006D48; // type:function size:0x730 +fn_1_7478 = .text:0x00007478; // type:function size:0x1F8 +fn_1_7670 = .text:0x00007670; // type:function size:0x430 +fn_1_7AA0 = .text:0x00007AA0; // type:function size:0x418 +fn_1_7EB8 = .text:0x00007EB8; // type:function size:0x208 +fn_1_80C0 = .text:0x000080C0; // type:function size:0x87C +fn_1_893C = .text:0x0000893C; // type:function size:0xB38 +fn_1_9474 = .text:0x00009474; // type:function size:0xF8 +fn_1_956C = .text:0x0000956C; // type:function size:0x2C0 +fn_1_982C = .text:0x0000982C; // type:function size:0x18C +fn_1_99B8 = .text:0x000099B8; // type:function size:0x74 +fn_1_9A2C = .text:0x00009A2C; // type:function size:0x1D0 +fn_1_9BFC = .text:0x00009BFC; // type:function size:0x3C +fn_1_9C38 = .text:0x00009C38; // type:function size:0x198 +fn_1_9DD0 = .text:0x00009DD0; // type:function size:0x758 +fn_1_A528 = .text:0x0000A528; // type:function size:0x640 +fn_1_AB68 = .text:0x0000AB68; // type:function size:0x4 +fn_1_AB6C = .text:0x0000AB6C; // type:function size:0x70 +fn_1_ABDC = .text:0x0000ABDC; // type:function size:0x580 +fn_1_B15C = .text:0x0000B15C; // type:function size:0x60 +fn_1_B1BC = .text:0x0000B1BC; // type:function size:0x4 +fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x1D8 +fn_1_B398 = .text:0x0000B398; // type:function size:0x4 +fn_1_B39C = .text:0x0000B39C; // type:function size:0x40 +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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:0x8 data:double +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:4byte +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x50 +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x14 data:4byte +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_124 = .rodata:0x00000124; // type:object size:0x10 data:4byte +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:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x10 data:4byte +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 data:4byte +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x30 data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x30 data:4byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // 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_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 +lbl_1_data_94 = .data:0x00000094; // type:object size:0xC +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x1 data:byte +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x1A data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0x1A +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x2C +lbl_1_data_104 = .data:0x00000104; // type:object size:0x60 +lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x20 +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x18 +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x78 +lbl_1_data_234 = .data:0x00000234; // type:object size:0x30 +lbl_1_data_264 = .data:0x00000264; // type:object size:0x30 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x18 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0xC +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0xC +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0xC +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0xC +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0xC +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x6 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m422Dll/splits.txt b/config/GMPJ01_00/rels/m422Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m422Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m422Dll/symbols.txt b/config/GMPJ01_00/rels/m422Dll/symbols.txt new file mode 100644 index 00000000..804db144 --- /dev/null +++ b/config/GMPJ01_00/rels/m422Dll/symbols.txt @@ -0,0 +1,249 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x25C +fn_1_2FC = .text:0x000002FC; // type:function size:0x31C0 +fn_1_34BC = .text:0x000034BC; // type:function size:0x6B8 +fn_1_3B74 = .text:0x00003B74; // type:function size:0x4E6C +fn_1_89E0 = .text:0x000089E0; // type:function size:0xA30 +fn_1_9410 = .text:0x00009410; // type:function size:0x4F0 +fn_1_9900 = .text:0x00009900; // type:function size:0x134C +fn_1_AC4C = .text:0x0000AC4C; // type:function size:0x3B8 +fn_1_B004 = .text:0x0000B004; // type:function size:0x54 +fn_1_B058 = .text:0x0000B058; // type:function size:0x428 +fn_1_B480 = .text:0x0000B480; // type:function size:0xAC +_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:0x30 +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x30 +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x30 +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x30 +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x30 +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x30 +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x30 +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x1C data:4byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x1C data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0xC data:4byte +lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0xC data:4byte +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC data:4byte +lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0xC data:4byte +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0xC data:4byte +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x20 data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x60 +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:4byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x60 +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x30 data:4byte +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x34 data:4byte +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x8 data:double +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 data:double +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 data:double +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5EC = .rodata:0x000005EC; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x2C data:4byte +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 data:double +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x8 data:double +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x8 data:double +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x28 data:4byte +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x20 data:4byte +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:4byte +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:4byte +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 data:4byte +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x40 data:4byte +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x40 data:4byte +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x4 data:float +lbl_1_rodata_74C = .rodata:0x0000074C; // type:object size:0x4 data:float +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float +lbl_1_rodata_754 = .rodata:0x00000754; // type:object size:0x4 data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x4 data:float +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x8 data:double +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x4 data:float +lbl_1_rodata_76C = .rodata:0x0000076C; // type:object size:0x10 data:4byte +lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0xC data:4byte +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0xC data:4byte +lbl_1_rodata_794 = .rodata:0x00000794; // type:object size:0x1 data:byte +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x4 data:float +lbl_1_rodata_79C = .rodata:0x0000079C; // type:object size:0x4 data:float +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x4 data:float +lbl_1_rodata_7A4 = .rodata:0x000007A4; // type:object size:0x4 data:float +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x40 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x60 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x20 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x20 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x7 +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x9 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x1680 data:float +lbl_1_data_1770 = .data:0x00001770; // type:object size:0xF data:string +lbl_1_data_177F = .data:0x0000177F; // type:object size:0x10 data:string +lbl_1_data_178F = .data:0x0000178F; // type:object size:0x10 data:string +lbl_1_data_179F = .data:0x0000179F; // type:object size:0xF data:string +lbl_1_data_17AE = .data:0x000017AE; // type:object size:0x10 data:string +lbl_1_data_17BE = .data:0x000017BE; // type:object size:0x10 data:string +lbl_1_data_17CE = .data:0x000017CE; // type:object size:0xF data:string +lbl_1_data_17DD = .data:0x000017DD; // type:object size:0x11 data:string +lbl_1_data_17EE = .data:0x000017EE; // type:object size:0x11 data:string +lbl_1_data_17FF = .data:0x000017FF; // type:object size:0x12 data:string +lbl_1_data_1811 = .data:0x00001811; // type:object size:0x5 data:string +lbl_1_data_1816 = .data:0x00001816; // type:object size:0x12 +lbl_1_data_1828 = .data:0x00001828; // type:object size:0x50 +lbl_1_data_1878 = .data:0x00001878; // type:object size:0x2C +lbl_1_data_18A4 = .data:0x000018A4; // type:object size:0x8 data:4byte +lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x4 data:4byte +lbl_1_data_18B0 = .data:0x000018B0; // type:object size:0x4 data:4byte +lbl_1_data_18B4 = .data:0x000018B4; // type:object size:0x40 +lbl_1_data_18F4 = .data:0x000018F4; // type:object size:0xC data:4byte +lbl_1_data_1900 = .data:0x00001900; // type:object size:0x4 data:4byte +lbl_1_data_1904 = .data:0x00001904; // type:object size:0x1B data:string +lbl_1_data_191F = .data:0x0000191F; // type:object size:0x19 data:string +lbl_1_data_1938 = .data:0x00001938; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x8 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0xB0 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0xC0 diff --git a/config/GMPJ01_00/rels/m423Dll/splits.txt b/config/GMPJ01_00/rels/m423Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m423Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m423Dll/symbols.txt b/config/GMPJ01_00/rels/m423Dll/symbols.txt new file mode 100644 index 00000000..5450a16f --- /dev/null +++ b/config/GMPJ01_00/rels/m423Dll/symbols.txt @@ -0,0 +1,367 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x278 +fn_1_318 = .text:0x00000318; // type:function size:0x98 +fn_1_3B0 = .text:0x000003B0; // type:function size:0xA4C +fn_1_DFC = .text:0x00000DFC; // type:function size:0x64 +fn_1_E60 = .text:0x00000E60; // type:function size:0xA0 +fn_1_F00 = .text:0x00000F00; // type:function size:0x10 +fn_1_F10 = .text:0x00000F10; // type:function size:0x50 +fn_1_F60 = .text:0x00000F60; // type:function size:0x244 +fn_1_11A4 = .text:0x000011A4; // type:function size:0x34 +fn_1_11D8 = .text:0x000011D8; // type:function size:0x60 +fn_1_1238 = .text:0x00001238; // type:function size:0x68 +fn_1_12A0 = .text:0x000012A0; // type:function size:0x100 +fn_1_13A0 = .text:0x000013A0; // type:function size:0xA4 +fn_1_1444 = .text:0x00001444; // type:function size:0x5C +fn_1_14A0 = .text:0x000014A0; // type:function size:0x45C +fn_1_18FC = .text:0x000018FC; // type:function size:0x260 +fn_1_1B5C = .text:0x00001B5C; // type:function size:0x400 +fn_1_1F5C = .text:0x00001F5C; // type:function size:0x334 +fn_1_2290 = .text:0x00002290; // type:function size:0x394 +fn_1_2624 = .text:0x00002624; // type:function size:0x394 +fn_1_29B8 = .text:0x000029B8; // type:function size:0x4 +fn_1_29BC = .text:0x000029BC; // type:function size:0x24C +fn_1_2C08 = .text:0x00002C08; // type:function size:0x8D0 +fn_1_34D8 = .text:0x000034D8; // type:function size:0x50 +fn_1_3528 = .text:0x00003528; // type:function size:0x370 +fn_1_3898 = .text:0x00003898; // type:function size:0x1C0 +fn_1_3A58 = .text:0x00003A58; // type:function size:0xC +fn_1_3A64 = .text:0x00003A64; // type:function size:0x28 +fn_1_3A8C = .text:0x00003A8C; // type:function size:0x170 +fn_1_3BFC = .text:0x00003BFC; // type:function size:0x3E4 +fn_1_3FE0 = .text:0x00003FE0; // type:function size:0x798 +fn_1_4778 = .text:0x00004778; // type:function size:0x15A0 +fn_1_5D18 = .text:0x00005D18; // type:function size:0x1AAC +fn_1_77C4 = .text:0x000077C4; // type:function size:0xC +fn_1_77D0 = .text:0x000077D0; // type:function size:0x4C +fn_1_781C = .text:0x0000781C; // type:function size:0x100 +fn_1_791C = .text:0x0000791C; // type:function size:0x18C +fn_1_7AA8 = .text:0x00007AA8; // type:function size:0xA0 +fn_1_7B48 = .text:0x00007B48; // type:function size:0x780 +fn_1_82C8 = .text:0x000082C8; // type:function size:0x70 +fn_1_8338 = .text:0x00008338; // type:function size:0x97C +fn_1_8CB4 = .text:0x00008CB4; // type:function size:0x910 +fn_1_95C4 = .text:0x000095C4; // type:function size:0x50 +fn_1_9614 = .text:0x00009614; // type:function size:0x28C +fn_1_98A0 = .text:0x000098A0; // type:function size:0x1100 +fn_1_A9A0 = .text:0x0000A9A0; // type:function size:0xC +fn_1_A9AC = .text:0x0000A9AC; // type:function size:0x28 +fn_1_A9D4 = .text:0x0000A9D4; // type:function size:0x238 +fn_1_AC0C = .text:0x0000AC0C; // type:function size:0x74 +fn_1_AC80 = .text:0x0000AC80; // type:function size:0x1E4 +fn_1_AE64 = .text:0x0000AE64; // type:function size:0x84 +fn_1_AEE8 = .text:0x0000AEE8; // type:function size:0x254 +fn_1_B13C = .text:0x0000B13C; // type:function size:0x68 +fn_1_B1A4 = .text:0x0000B1A4; // type:function size:0x160 +fn_1_B304 = .text:0x0000B304; // type:function size:0x12C +fn_1_B430 = .text:0x0000B430; // type:function size:0x8A8 +fn_1_BCD8 = .text:0x0000BCD8; // type:function size:0x7C0 +fn_1_C498 = .text:0x0000C498; // type:function size:0x1498 +fn_1_D930 = .text:0x0000D930; // type:function size:0x108 +fn_1_DA38 = .text:0x0000DA38; // type:function size:0x190 +fn_1_DBC8 = .text:0x0000DBC8; // type:function size:0x5C +fn_1_DC24 = .text:0x0000DC24; // type:function size:0x14C +fn_1_DD70 = .text:0x0000DD70; // type:function size:0x44C +fn_1_E1BC = .text:0x0000E1BC; // type:function size:0xD4 +fn_1_E290 = .text:0x0000E290; // type:function size:0xA0 +fn_1_E330 = .text:0x0000E330; // type:function size:0x4 +fn_1_E334 = .text:0x0000E334; // type:function size:0x12C +fn_1_E460 = .text:0x0000E460; // type:function size:0x8C +fn_1_E4EC = .text:0x0000E4EC; // type:function size:0x120 +fn_1_E60C = .text:0x0000E60C; // type:function size:0x6C +fn_1_E678 = .text:0x0000E678; // type:function size:0x8CC +fn_1_EF44 = .text:0x0000EF44; // type:function size:0x630 +fn_1_F574 = .text:0x0000F574; // type:function size:0x11C +fn_1_F690 = .text:0x0000F690; // type:function size:0x50 +fn_1_F6E0 = .text:0x0000F6E0; // type:function size:0x360 +fn_1_FA40 = .text:0x0000FA40; // type:function size:0x4D0 +fn_1_FF10 = .text:0x0000FF10; // type:function size:0x88 +fn_1_FF98 = .text:0x0000FF98; // type:function size:0x90 +fn_1_10028 = .text:0x00010028; // type:function size:0xB4 +fn_1_100DC = .text:0x000100DC; // type:function size:0x3A4 +fn_1_10480 = .text:0x00010480; // type:function size:0xAC +fn_1_1052C = .text:0x0001052C; // type:function size:0x4 +fn_1_10530 = .text:0x00010530; // type:function size:0x10 +fn_1_10540 = .text:0x00010540; // type:function size:0x198 +fn_1_106D8 = .text:0x000106D8; // type:function size:0x4F0 +fn_1_10BC8 = .text:0x00010BC8; // type:function size:0x440 +fn_1_11008 = .text:0x00011008; // type:function size:0x10C +fn_1_11114 = .text:0x00011114; // type:function size:0x4B0 +fn_1_115C4 = .text:0x000115C4; // type:function size:0x33C +fn_1_11900 = .text:0x00011900; // type:function size:0x8DC +fn_1_121DC = .text:0x000121DC; // type:function size:0x118 +fn_1_122F4 = .text:0x000122F4; // type:function size:0x250 +fn_1_12544 = .text:0x00012544; // type:function size:0x3F8 +fn_1_1293C = .text:0x0001293C; // type:function size:0xB4 +fn_1_129F0 = .text:0x000129F0; // type:function size:0x27C +fn_1_12C6C = .text:0x00012C6C; // type:function size:0x100 +fn_1_12D6C = .text:0x00012D6C; // type:function size:0xFC +fn_1_12E68 = .text:0x00012E68; // type:function size:0x4E4 +fn_1_1334C = .text:0x0001334C; // type:function size:0x330 +fn_1_1367C = .text:0x0001367C; // type:function size:0x148 +fn_1_137C4 = .text:0x000137C4; // type:function size:0x78C +_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_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // 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:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // 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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x1 data:byte +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0x118 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 data:float +lbl_1_data_180 = .data:0x00000180; // type:object size:0x30 data:float +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xC +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0xC +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xC +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x24 +lbl_1_data_21C = .data:0x0000021C; // type:object size:0xC +lbl_1_data_228 = .data:0x00000228; // type:object size:0xC +lbl_1_data_234 = .data:0x00000234; // type:object size:0x4 +lbl_1_data_238 = .data:0x00000238; // type:object size:0x18 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x18 +jumptable_1_data_268 = .data:0x00000268; // type:object size:0x30 scope:local +lbl_1_data_298 = .data:0x00000298; // type:object size:0x1 data:byte +lbl_1_data_29C = .data:0x0000029C; // type:object size:0x30 +lbl_1_data_2CC = .data:0x000002CC; // type:object size:0x20 +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x20 +lbl_1_data_30C = .data:0x0000030C; // type:object size:0x4 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x1 data:byte +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 data:4byte +lbl_1_data_334 = .data:0x00000334; // type:object size:0x30 +lbl_1_data_364 = .data:0x00000364; // type:object size:0x24 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x1 data:byte +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x1F data:string +lbl_1_data_3AB = .data:0x000003AB; // type:object size:0x1 data:byte +lbl_1_data_3AF = .data:0x000003AF; // type:object size:0x1 data:byte +lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x5 data:byte +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0xF0 +lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0x54 +lbl_1_data_4FC = .data:0x000004FC; // type:object size:0xC +lbl_1_data_508 = .data:0x00000508; // type:object size:0x18 +lbl_1_data_520 = .data:0x00000520; // type:object size:0x6 +lbl_1_data_526 = .data:0x00000526; // type:object size:0x6 +lbl_1_data_52C = .data:0x0000052C; // type:object size:0x8 +lbl_1_data_534 = .data:0x00000534; // type:object size:0x40 +lbl_1_data_574 = .data:0x00000574; // type:object size:0xC +lbl_1_data_580 = .data:0x00000580; // type:object size:0x58 +lbl_1_data_5D8 = .data:0x000005D8; // type:object size:0x10 +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0xC data:4byte +lbl_1_data_5F4 = .data:0x000005F4; // type:object size:0x1 data:byte +lbl_1_data_5F8 = .data:0x000005F8; // type:object size:0x1 data:byte +jumptable_1_data_5FC = .data:0x000005FC; // type:object size:0x34 scope:local +lbl_1_data_630 = .data:0x00000630; // type:object size:0x1 data:byte +jumptable_1_data_634 = .data:0x00000634; // type:object size:0x34 scope:local +lbl_1_data_668 = .data:0x00000668; // type:object size:0x10 +lbl_1_data_678 = .data:0x00000678; // type:object size:0x10 +lbl_1_data_688 = .data:0x00000688; // type:object size:0x20 +lbl_1_data_6A8 = .data:0x000006A8; // type:object size:0x20 data:4byte +lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0x10 +lbl_1_data_6D8 = .data:0x000006D8; // type:object size:0x20 +lbl_1_data_6F8 = .data:0x000006F8; // type:object size:0x20 +lbl_1_data_718 = .data:0x00000718; // type:object size:0x20 +lbl_1_data_738 = .data:0x00000738; // type:object size:0x20 +lbl_1_data_758 = .data:0x00000758; // type:object size:0x1 data:byte +lbl_1_data_75C = .data:0x0000075C; // type:object size:0x48 +jumptable_1_data_7A4 = .data:0x000007A4; // type:object size:0x20 scope:local +lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x18 +jumptable_1_data_7DC = .data:0x000007DC; // type:object size:0x20 scope:local +lbl_1_data_7FC = .data:0x000007FC; // type:object size:0x20 +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x20 +lbl_1_data_83C = .data:0x0000083C; // type:object size:0x8 +lbl_1_data_844 = .data:0x00000844; // type:object size:0x60 +lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x20 +lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0x30 +lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x20 +lbl_1_data_914 = .data:0x00000914; // type:object size:0x6 data:byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x3C data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x3C data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0xC data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x10 +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x10 data:4byte +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x10 data:4byte +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x8 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m424Dll/splits.txt b/config/GMPJ01_00/rels/m424Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m424Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m424Dll/symbols.txt b/config/GMPJ01_00/rels/m424Dll/symbols.txt new file mode 100644 index 00000000..cd7eab29 --- /dev/null +++ b/config/GMPJ01_00/rels/m424Dll/symbols.txt @@ -0,0 +1,315 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x1C4 +fn_1_264 = .text:0x00000264; // type:function size:0x1B8 +fn_1_41C = .text:0x0000041C; // type:function size:0xAC4 +fn_1_EE0 = .text:0x00000EE0; // type:function size:0x60 +fn_1_F40 = .text:0x00000F40; // type:function size:0xA0 +fn_1_FE0 = .text:0x00000FE0; // type:function size:0x10 +fn_1_FF0 = .text:0x00000FF0; // type:function size:0x1FC +fn_1_11EC = .text:0x000011EC; // type:function size:0x4 +fn_1_11F0 = .text:0x000011F0; // type:function size:0x4 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x10 +fn_1_1204 = .text:0x00001204; // type:function size:0x154 +fn_1_1358 = .text:0x00001358; // type:function size:0x118 +fn_1_1470 = .text:0x00001470; // type:function size:0x250 +fn_1_16C0 = .text:0x000016C0; // type:function size:0x3F8 +fn_1_1AB8 = .text:0x00001AB8; // type:function size:0xD4 +fn_1_1B8C = .text:0x00001B8C; // type:function size:0x2C +fn_1_1BB8 = .text:0x00001BB8; // type:function size:0x264 +fn_1_1E1C = .text:0x00001E1C; // type:function size:0x314 +fn_1_2130 = .text:0x00002130; // type:function size:0xC +fn_1_213C = .text:0x0000213C; // type:function size:0x74 +fn_1_21B0 = .text:0x000021B0; // type:function size:0x70 +fn_1_2220 = .text:0x00002220; // type:function size:0x218 +fn_1_2438 = .text:0x00002438; // type:function size:0xF4 +fn_1_252C = .text:0x0000252C; // type:function size:0x94 +fn_1_25C0 = .text:0x000025C0; // type:function size:0xB0 +fn_1_2670 = .text:0x00002670; // type:function size:0xB0 +fn_1_2720 = .text:0x00002720; // type:function size:0x160 +fn_1_2880 = .text:0x00002880; // type:function size:0x20 +fn_1_28A0 = .text:0x000028A0; // type:function size:0x598 +fn_1_2E38 = .text:0x00002E38; // type:function size:0x4 +fn_1_2E3C = .text:0x00002E3C; // type:function size:0x384 +fn_1_31C0 = .text:0x000031C0; // type:function size:0x63C +fn_1_37FC = .text:0x000037FC; // type:function size:0xA24 +fn_1_4220 = .text:0x00004220; // type:function size:0x478 +fn_1_4698 = .text:0x00004698; // type:function size:0x4 +fn_1_469C = .text:0x0000469C; // type:function size:0x234 +fn_1_48D0 = .text:0x000048D0; // type:function size:0x1C0 +fn_1_4A90 = .text:0x00004A90; // type:function size:0x588 +fn_1_5018 = .text:0x00005018; // type:function size:0x1020 +fn_1_6038 = .text:0x00006038; // type:function size:0x40 +fn_1_6078 = .text:0x00006078; // type:function size:0xA0 +fn_1_6118 = .text:0x00006118; // type:function size:0x94 +fn_1_61AC = .text:0x000061AC; // type:function size:0x84 +fn_1_6230 = .text:0x00006230; // type:function size:0x4C +fn_1_627C = .text:0x0000627C; // type:function size:0x54 +fn_1_62D0 = .text:0x000062D0; // type:function size:0x13C +fn_1_640C = .text:0x0000640C; // type:function size:0x168 +fn_1_6574 = .text:0x00006574; // type:function size:0x120 +fn_1_6694 = .text:0x00006694; // type:function size:0x39C +fn_1_6A30 = .text:0x00006A30; // type:function size:0x2E0 +fn_1_6D10 = .text:0x00006D10; // type:function size:0x38C +fn_1_709C = .text:0x0000709C; // type:function size:0x384 +fn_1_7420 = .text:0x00007420; // type:function size:0x3A4 +fn_1_77C4 = .text:0x000077C4; // type:function size:0x238 +fn_1_79FC = .text:0x000079FC; // type:function size:0x2A4 +fn_1_7CA0 = .text:0x00007CA0; // type:function size:0x130 +fn_1_7DD0 = .text:0x00007DD0; // type:function size:0x198 +fn_1_7F68 = .text:0x00007F68; // type:function size:0xD8 +fn_1_8040 = .text:0x00008040; // type:function size:0xBC +fn_1_80FC = .text:0x000080FC; // type:function size:0x33C +fn_1_8438 = .text:0x00008438; // type:function size:0x4B0 +fn_1_88E8 = .text:0x000088E8; // type:function size:0x3C +fn_1_8924 = .text:0x00008924; // type:function size:0x2C +fn_1_8950 = .text:0x00008950; // type:function size:0x2C +fn_1_897C = .text:0x0000897C; // type:function size:0x2C +fn_1_89A8 = .text:0x000089A8; // type:function size:0x2C +fn_1_89D4 = .text:0x000089D4; // type:function size:0x2C +fn_1_8A00 = .text:0x00008A00; // type:function size:0x2C +fn_1_8A2C = .text:0x00008A2C; // type:function size:0x7C +fn_1_8AA8 = .text:0x00008AA8; // type:function size:0x1D0 +fn_1_8C78 = .text:0x00008C78; // type:function size:0x404 +fn_1_907C = .text:0x0000907C; // type:function size:0x374 +fn_1_93F0 = .text:0x000093F0; // type:function size:0xB4 +fn_1_94A4 = .text:0x000094A4; // type:function size:0x2C +fn_1_94D0 = .text:0x000094D0; // type:function size:0x594 +fn_1_9A64 = .text:0x00009A64; // type:function size:0x13F4 +fn_1_AE58 = .text:0x0000AE58; // type:function size:0xC +fn_1_AE64 = .text:0x0000AE64; // type:function size:0x938 +fn_1_B79C = .text:0x0000B79C; // type:function size:0x68 +fn_1_B804 = .text:0x0000B804; // type:function size:0x84 +fn_1_B888 = .text:0x0000B888; // type:function size:0x24 +fn_1_B8AC = .text:0x0000B8AC; // type:function size:0x78 +fn_1_B924 = .text:0x0000B924; // type:function size:0x78 +fn_1_B99C = .text:0x0000B99C; // type:function size:0x44 +fn_1_B9E0 = .text:0x0000B9E0; // type:function size:0x830 +fn_1_C210 = .text:0x0000C210; // type:function size:0xD0 +fn_1_C2E0 = .text:0x0000C2E0; // type:function size:0x324 +fn_1_C604 = .text:0x0000C604; // type:function size:0x250 +fn_1_C854 = .text:0x0000C854; // type:function size:0x24 +fn_1_C878 = .text:0x0000C878; // type:function size:0x124 +fn_1_C99C = .text:0x0000C99C; // type:function size:0x4D8 +fn_1_CE74 = .text:0x0000CE74; // type:function size:0x8C +fn_1_CF00 = .text:0x0000CF00; // type:function size:0x80 +fn_1_CF80 = .text:0x0000CF80; // type:function size:0x90 +fn_1_D010 = .text:0x0000D010; // type:function size:0x64 +_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:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0xC data:4byte +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0x24 +lbl_1_data_9C = .data:0x0000009C; // type:object size:0xC +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xC +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4 +jumptable_1_data_B8 = .data:0x000000B8; // type:object size:0x28 scope:local +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC +lbl_1_data_EC = .data:0x000000EC; // type:object size:0xC +lbl_1_data_F8 = .data:0x000000F8; // type:object size:0xC +lbl_1_data_104 = .data:0x00000104; // type:object size:0x4C +lbl_1_data_150 = .data:0x00000150; // type:object size:0x5C +jumptable_1_data_1AC = .data:0x000001AC; // type:object size:0x2C scope:local +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x8 data:4byte +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x30 data:float +lbl_1_data_210 = .data:0x00000210; // type:object size:0xC data:float +lbl_1_data_21C = .data:0x0000021C; // type:object size:0xC0 +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0xC +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x24 +lbl_1_data_30C = .data:0x0000030C; // type:object size:0xC data:4byte +lbl_1_data_318 = .data:0x00000318; // type:object size:0x6 data:string +lbl_1_data_31E = .data:0x0000031E; // type:object size:0x6 data:string +lbl_1_data_324 = .data:0x00000324; // type:object size:0x8 +jumptable_1_data_32C = .data:0x0000032C; // type:object size:0x40 scope:local +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x20 +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x20 +lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x19 data:string +lbl_1_data_3C5 = .data:0x000003C5; // type:object size:0x5 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x8 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x534 data:4byte +lbl_1_bss_594 = .bss:0x00000594; // type:object size:0x18 +lbl_1_bss_5AC = .bss:0x000005AC; // type:object size:0x10 data:4byte +lbl_1_bss_5BC = .bss:0x000005BC; // type:object size:0x84 +lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x80 data:4byte +lbl_1_bss_6C0 = .bss:0x000006C0; // type:object size:0x4 data:4byte +lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x4 data:4byte +lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x4 data:4byte +lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0xC data:4byte +lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte +lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m425Dll/splits.txt b/config/GMPJ01_00/rels/m425Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m425Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m425Dll/symbols.txt b/config/GMPJ01_00/rels/m425Dll/symbols.txt new file mode 100644 index 00000000..05f71975 --- /dev/null +++ b/config/GMPJ01_00/rels/m425Dll/symbols.txt @@ -0,0 +1,299 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3C0 +fn_1_460 = .text:0x00000460; // type:function size:0x20 +fn_1_480 = .text:0x00000480; // type:function size:0x464 +fn_1_8E4 = .text:0x000008E4; // type:function size:0x664 +fn_1_F48 = .text:0x00000F48; // type:function size:0x60 +fn_1_FA8 = .text:0x00000FA8; // type:function size:0x524 +fn_1_14CC = .text:0x000014CC; // type:function size:0x120 +fn_1_15EC = .text:0x000015EC; // type:function size:0xC4 +fn_1_16B0 = .text:0x000016B0; // type:function size:0x490 +fn_1_1B40 = .text:0x00001B40; // type:function size:0xC44 +fn_1_2784 = .text:0x00002784; // type:function size:0xEC +fn_1_2870 = .text:0x00002870; // type:function size:0x224 +fn_1_2A94 = .text:0x00002A94; // type:function size:0x98 +fn_1_2B2C = .text:0x00002B2C; // type:function size:0x34C +fn_1_2E78 = .text:0x00002E78; // type:function size:0x568 +fn_1_33E0 = .text:0x000033E0; // type:function size:0x384 +fn_1_3764 = .text:0x00003764; // type:function size:0x76C +fn_1_3ED0 = .text:0x00003ED0; // type:function size:0xB0 +fn_1_3F80 = .text:0x00003F80; // type:function size:0xB08 +fn_1_4A88 = .text:0x00004A88; // type:function size:0x5BC +fn_1_5044 = .text:0x00005044; // type:function size:0x524 +fn_1_5568 = .text:0x00005568; // type:function size:0xA0 +fn_1_5608 = .text:0x00005608; // type:function size:0xA8 +fn_1_56B0 = .text:0x000056B0; // type:function size:0x8C +fn_1_573C = .text:0x0000573C; // type:function size:0x98 +fn_1_57D4 = .text:0x000057D4; // type:function size:0x44C +fn_1_5C20 = .text:0x00005C20; // type:function size:0x8B4 +fn_1_64D4 = .text:0x000064D4; // type:function size:0x54 +fn_1_6528 = .text:0x00006528; // type:function size:0x78 +fn_1_65A0 = .text:0x000065A0; // type:function size:0x11C +fn_1_66BC = .text:0x000066BC; // type:function size:0x78 +fn_1_6734 = .text:0x00006734; // type:function size:0x2D8 +fn_1_6A0C = .text:0x00006A0C; // type:function size:0x1CC +fn_1_6BD8 = .text:0x00006BD8; // type:function size:0x30 +fn_1_6C08 = .text:0x00006C08; // type:function size:0xC8 +fn_1_6CD0 = .text:0x00006CD0; // type:function size:0x12C +fn_1_6DFC = .text:0x00006DFC; // type:function size:0xC8 +fn_1_6EC4 = .text:0x00006EC4; // type:function size:0x69D8 +fn_1_D89C = .text:0x0000D89C; // type:function size:0x10 +fn_1_D8AC = .text:0x0000D8AC; // type:function size:0x10 +fn_1_D8BC = .text:0x0000D8BC; // type:function size:0x10 +fn_1_D8CC = .text:0x0000D8CC; // type:function size:0x10 +fn_1_D8DC = .text:0x0000D8DC; // type:function size:0xCC +fn_1_D9A8 = .text:0x0000D9A8; // type:function size:0x19C +fn_1_DB44 = .text:0x0000DB44; // type:function size:0x2F8 +fn_1_DE3C = .text:0x0000DE3C; // type:function size:0x3D4 +fn_1_E210 = .text:0x0000E210; // type:function size:0x704 +fn_1_E914 = .text:0x0000E914; // type:function size:0x18B0 +fn_1_101C4 = .text:0x000101C4; // type:function size:0x828 +fn_1_109EC = .text:0x000109EC; // type:function size:0x308 +fn_1_10CF4 = .text:0x00010CF4; // type:function size:0x60 +fn_1_10D54 = .text:0x00010D54; // type:function size:0x60 +fn_1_10DB4 = .text:0x00010DB4; // type:function size:0x88 +fn_1_10E3C = .text:0x00010E3C; // type:function size:0xBC +fn_1_10EF8 = .text:0x00010EF8; // type:function size:0x38C +fn_1_11284 = .text:0x00011284; // type:function size:0x78 +fn_1_112FC = .text:0x000112FC; // type:function size:0x11C +fn_1_11418 = .text:0x00011418; // type:function size:0x3C +fn_1_11454 = .text:0x00011454; // type:function size:0x180 +fn_1_115D4 = .text:0x000115D4; // type:function size:0x110 +fn_1_116E4 = .text:0x000116E4; // type:function size:0x390 +fn_1_11A74 = .text:0x00011A74; // type:function size:0x46C +fn_1_11EE0 = .text:0x00011EE0; // type:function size:0x7B4 +_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:0x10 data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0xC0 +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x10 data:4byte +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x10 data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x20 data:4byte +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0xC +lbl_1_data_10 = .data:0x00000010; // type:object size:0x30 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x4 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x4 data:4byte +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x28 +lbl_1_data_94 = .data:0x00000094; // type:object size:0x30 +jumptable_1_data_C4 = .data:0x000000C4; // type:object size:0x28 scope:local +jumptable_1_data_EC = .data:0x000000EC; // type:object size:0x28 scope:local +lbl_1_data_114 = .data:0x00000114; // type:object size:0x4 data:4byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0x18 +lbl_1_data_130 = .data:0x00000130; // type:object size:0x20 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x18 +lbl_1_data_168 = .data:0x00000168; // type:object size:0x1 data:byte +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x30 +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x30 +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x20 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x630 +lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x2 data:2byte +lbl_1_bss_642 = .bss:0x00000642; // type:object size:0x2 data:2byte +lbl_1_bss_644 = .bss:0x00000644; // type:object size:0x2 data:2byte +lbl_1_bss_646 = .bss:0x00000646; // type:object size:0x2 data:2byte +lbl_1_bss_648 = .bss:0x00000648; // type:object size:0x2 data:2byte +lbl_1_bss_64C = .bss:0x0000064C; // type:object size:0x10 +lbl_1_bss_65C = .bss:0x0000065C; // type:object size:0x4 data:4byte +lbl_1_bss_660 = .bss:0x00000660; // type:object size:0x4 data:4byte +lbl_1_bss_664 = .bss:0x00000664; // type:object size:0x4 data:4byte +lbl_1_bss_668 = .bss:0x00000668; // type:object size:0x8 data:4byte +lbl_1_bss_670 = .bss:0x00000670; // type:object size:0xC data:float +lbl_1_bss_67C = .bss:0x0000067C; // type:object size:0xC data:float +lbl_1_bss_688 = .bss:0x00000688; // type:object size:0x40 +lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x1 data:byte +lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0x4 data:4byte +lbl_1_bss_6D0 = .bss:0x000006D0; // type:object size:0x1 data:byte +lbl_1_bss_6D4 = .bss:0x000006D4; // type:object size:0x4 data:4byte +lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte +lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte +lbl_1_bss_6E0 = .bss:0x000006E0; // type:object size:0x4 data:4byte +lbl_1_bss_6E4 = .bss:0x000006E4; // type:object size:0x4 data:4byte +lbl_1_bss_6E8 = .bss:0x000006E8; // type:object size:0x4 data:4byte +lbl_1_bss_6EC = .bss:0x000006EC; // type:object size:0x4 data:4byte +lbl_1_bss_6F0 = .bss:0x000006F0; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m426Dll/splits.txt b/config/GMPJ01_00/rels/m426Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m426Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m426Dll/symbols.txt b/config/GMPJ01_00/rels/m426Dll/symbols.txt new file mode 100644 index 00000000..ade0fb6b --- /dev/null +++ b/config/GMPJ01_00/rels/m426Dll/symbols.txt @@ -0,0 +1,224 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x16C +fn_1_20C = .text:0x0000020C; // type:function size:0x124 +fn_1_330 = .text:0x00000330; // type:function size:0xA88 +fn_1_DB8 = .text:0x00000DB8; // type:function size:0x60 +fn_1_E18 = .text:0x00000E18; // type:function size:0xA0 +fn_1_EB8 = .text:0x00000EB8; // type:function size:0x14C +fn_1_1004 = .text:0x00001004; // type:function size:0x178 +fn_1_117C = .text:0x0000117C; // type:function size:0x70 +fn_1_11EC = .text:0x000011EC; // type:function size:0x70 +fn_1_125C = .text:0x0000125C; // type:function size:0x49C +fn_1_16F8 = .text:0x000016F8; // type:function size:0x13D0 +fn_1_2AC8 = .text:0x00002AC8; // type:function size:0x14 +fn_1_2ADC = .text:0x00002ADC; // type:function size:0x98 +fn_1_2B74 = .text:0x00002B74; // type:function size:0x368 +fn_1_2EDC = .text:0x00002EDC; // type:function size:0x80 +fn_1_2F5C = .text:0x00002F5C; // type:function size:0x6F8 +fn_1_3654 = .text:0x00003654; // type:function size:0x70 +fn_1_36C4 = .text:0x000036C4; // type:function size:0x50 +fn_1_3714 = .text:0x00003714; // type:function size:0x7E8 +fn_1_3EFC = .text:0x00003EFC; // type:function size:0x700 +fn_1_45FC = .text:0x000045FC; // type:function size:0x48 +fn_1_4644 = .text:0x00004644; // type:function size:0x60 +fn_1_46A4 = .text:0x000046A4; // type:function size:0x94 +fn_1_4738 = .text:0x00004738; // type:function size:0x15C +fn_1_4894 = .text:0x00004894; // type:function size:0x5C +fn_1_48F0 = .text:0x000048F0; // type:function size:0x178 +fn_1_4A68 = .text:0x00004A68; // type:function size:0x8C +fn_1_4AF4 = .text:0x00004AF4; // type:function size:0x3D0 +fn_1_4EC4 = .text:0x00004EC4; // type:function size:0x50 +fn_1_4F14 = .text:0x00004F14; // type:function size:0x220 +fn_1_5134 = .text:0x00005134; // type:function size:0xA00 +fn_1_5B34 = .text:0x00005B34; // type:function size:0x14 +fn_1_5B48 = .text:0x00005B48; // type:function size:0x40 +fn_1_5B88 = .text:0x00005B88; // type:function size:0xE4 +fn_1_5C6C = .text:0x00005C6C; // type:function size:0xD0 +fn_1_5D3C = .text:0x00005D3C; // type:function size:0x130 +fn_1_5E6C = .text:0x00005E6C; // type:function size:0x50 +fn_1_5EBC = .text:0x00005EBC; // type:function size:0x14C +fn_1_6008 = .text:0x00006008; // type:function size:0x178 +fn_1_6180 = .text:0x00006180; // type:function size:0x60 +fn_1_61E0 = .text:0x000061E0; // type:function size:0x68 +fn_1_6248 = .text:0x00006248; // type:function size:0xC8 +fn_1_6310 = .text:0x00006310; // type:function size:0xA8 +fn_1_63B8 = .text:0x000063B8; // type:function size:0x1DC +fn_1_6594 = .text:0x00006594; // type:function size:0x50 +fn_1_65E4 = .text:0x000065E4; // type:function size:0x120 +fn_1_6704 = .text:0x00006704; // type:function size:0x118 +fn_1_681C = .text:0x0000681C; // type:function size:0x28 +fn_1_6844 = .text:0x00006844; // type:function size:0x44 +fn_1_6888 = .text:0x00006888; // type:function size:0x15C +fn_1_69E4 = .text:0x000069E4; // type:function size:0x50 +fn_1_6A34 = .text:0x00006A34; // type:function size:0x38C +fn_1_6DC0 = .text:0x00006DC0; // type:function size:0x410 +fn_1_71D0 = .text:0x000071D0; // type:function size:0xA8 +fn_1_7278 = .text:0x00007278; // type:function size:0xB0 +fn_1_7328 = .text:0x00007328; // type:function size:0xB4 +fn_1_73DC = .text:0x000073DC; // type:function size:0x1B0 +fn_1_758C = .text:0x0000758C; // type:function size:0x20 +fn_1_75AC = .text:0x000075AC; // type:function size:0x4 +fn_1_75B0 = .text:0x000075B0; // type:function size:0xC +fn_1_75BC = .text:0x000075BC; // type:function size:0x38 +fn_1_75F4 = .text:0x000075F4; // type:function size:0x118 +fn_1_770C = .text:0x0000770C; // type:function size:0x250 +fn_1_795C = .text:0x0000795C; // type:function size:0x46C +fn_1_7DC8 = .text:0x00007DC8; // type:function size:0x314 +fn_1_80DC = .text:0x000080DC; // type:function size:0x7D8 +fn_1_88B4 = .text:0x000088B4; // type:function size:0x55C +fn_1_8E10 = .text:0x00008E10; // type:function size:0x38 +fn_1_8E48 = .text:0x00008E48; // type:function size:0x2E8 +fn_1_9130 = .text:0x00009130; // type:function size:0x100 +fn_1_9230 = .text:0x00009230; // type:function size:0x314 +fn_1_9544 = .text:0x00009544; // type:function size:0x1D8 +fn_1_971C = .text:0x0000971C; // type:function size:0x7C +fn_1_9798 = .text:0x00009798; // type:function size:0x54 +fn_1_97EC = .text:0x000097EC; // type:function size:0x7C +fn_1_9868 = .text:0x00009868; // type:function size:0x7C +fn_1_98E4 = .text:0x000098E4; // type:function size:0x78 +fn_1_995C = .text:0x0000995C; // type:function size:0x12C +_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:0x8 data:4byte +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:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // 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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x1 data:byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x30 +lbl_1_data_30 = .data:0x00000030; // type:object size:0xC +lbl_1_data_3C = .data:0x0000003C; // type:object size:0xC +lbl_1_data_48 = .data:0x00000048; // type:object size:0x1 data:byte +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x54 data:float +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC +lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0xC +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x24 +jumptable_1_data_E8 = .data:0x000000E8; // type:object size:0x24 scope:local +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x4 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x60 data:4byte +lbl_1_data_170 = .data:0x00000170; // type:object size:0x60 +lbl_1_data_1D0 = .data:0x000001D0; // type:object size:0x8 +jumptable_1_data_1D8 = .data:0x000001D8; // type:object size:0x28 scope:local +lbl_1_data_200 = .data:0x00000200; // type:object size:0x18 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x8 +lbl_1_data_220 = .data:0x00000220; // type:object size:0xC +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x30 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x20 +lbl_1_data_27C = .data:0x0000027C; // type:object size:0x30 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x10 +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x20 +jumptable_1_data_2DC = .data:0x000002DC; // type:object size:0x1C scope:local +jumptable_1_data_2F8 = .data:0x000002F8; // type:object size:0x1C scope:local +jumptable_1_data_314 = .data:0x00000314; // type:object size:0x1C scope:local +jumptable_1_data_330 = .data:0x00000330; // type:object size:0x1C scope:local +jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x1C scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x1 data:byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x10 +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x8 +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m427Dll/splits.txt b/config/GMPJ01_00/rels/m427Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m427Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m427Dll/symbols.txt b/config/GMPJ01_00/rels/m427Dll/symbols.txt new file mode 100644 index 00000000..0ce6699f --- /dev/null +++ b/config/GMPJ01_00/rels/m427Dll/symbols.txt @@ -0,0 +1,437 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x1FC +fn_1_29C = .text:0x0000029C; // type:function size:0x64 +fn_1_300 = .text:0x00000300; // type:function size:0x1364 +fn_1_1664 = .text:0x00001664; // type:function size:0x60 +fn_1_16C4 = .text:0x000016C4; // type:function size:0xC4 +fn_1_1788 = .text:0x00001788; // type:function size:0x10 +fn_1_1798 = .text:0x00001798; // type:function size:0xCC +fn_1_1864 = .text:0x00001864; // type:function size:0x20 +fn_1_1884 = .text:0x00001884; // type:function size:0xD0 +fn_1_1954 = .text:0x00001954; // type:function size:0x5E0 +fn_1_1F34 = .text:0x00001F34; // type:function size:0x254 +fn_1_2188 = .text:0x00002188; // type:function size:0x60 +fn_1_21E8 = .text:0x000021E8; // type:function size:0x144 +fn_1_232C = .text:0x0000232C; // type:function size:0x1EC +fn_1_2518 = .text:0x00002518; // type:function size:0x1EC +fn_1_2704 = .text:0x00002704; // type:function size:0x28 +fn_1_272C = .text:0x0000272C; // type:function size:0x64 +fn_1_2790 = .text:0x00002790; // type:function size:0x390 +fn_1_2B20 = .text:0x00002B20; // type:function size:0x4 +fn_1_2B24 = .text:0x00002B24; // type:function size:0x4 +fn_1_2B28 = .text:0x00002B28; // type:function size:0x1C0 +fn_1_2CE8 = .text:0x00002CE8; // type:function size:0x1F8 +fn_1_2EE0 = .text:0x00002EE0; // type:function size:0x8C +fn_1_2F6C = .text:0x00002F6C; // type:function size:0x1F8 +fn_1_3164 = .text:0x00003164; // type:function size:0x188 +fn_1_32EC = .text:0x000032EC; // type:function size:0x8 +fn_1_32F4 = .text:0x000032F4; // type:function size:0x438 +fn_1_372C = .text:0x0000372C; // type:function size:0x35C +fn_1_3A88 = .text:0x00003A88; // type:function size:0x98 +fn_1_3B20 = .text:0x00003B20; // type:function size:0x29C +fn_1_3DBC = .text:0x00003DBC; // type:function size:0x9C +fn_1_3E58 = .text:0x00003E58; // type:function size:0x3C0 +fn_1_4218 = .text:0x00004218; // type:function size:0x2DC +fn_1_44F4 = .text:0x000044F4; // type:function size:0x7C +fn_1_4570 = .text:0x00004570; // type:function size:0x37C +fn_1_48EC = .text:0x000048EC; // type:function size:0x490 +fn_1_4D7C = .text:0x00004D7C; // type:function size:0x324 +fn_1_50A0 = .text:0x000050A0; // type:function size:0x6C +fn_1_510C = .text:0x0000510C; // type:function size:0x480 +fn_1_558C = .text:0x0000558C; // type:function size:0xC00 +fn_1_618C = .text:0x0000618C; // type:function size:0x5D4 +fn_1_6760 = .text:0x00006760; // type:function size:0xB84 +fn_1_72E4 = .text:0x000072E4; // type:function size:0xD8 +fn_1_73BC = .text:0x000073BC; // type:function size:0x590 +fn_1_794C = .text:0x0000794C; // type:function size:0x2E8 +fn_1_7C34 = .text:0x00007C34; // type:function size:0x22C +fn_1_7E60 = .text:0x00007E60; // type:function size:0xD8 +fn_1_7F38 = .text:0x00007F38; // type:function size:0x69C +fn_1_85D4 = .text:0x000085D4; // type:function size:0x194 +fn_1_8768 = .text:0x00008768; // type:function size:0x6B4 +fn_1_8E1C = .text:0x00008E1C; // type:function size:0x174 +fn_1_8F90 = .text:0x00008F90; // type:function size:0x250 +fn_1_91E0 = .text:0x000091E0; // type:function size:0x60 +fn_1_9240 = .text:0x00009240; // type:function size:0xD8 +fn_1_9318 = .text:0x00009318; // type:function size:0xD4 +fn_1_93EC = .text:0x000093EC; // type:function size:0xD0 +fn_1_94BC = .text:0x000094BC; // type:function size:0x12C +fn_1_95E8 = .text:0x000095E8; // type:function size:0x370 +fn_1_9958 = .text:0x00009958; // type:function size:0x44 +fn_1_999C = .text:0x0000999C; // type:function size:0x48 +fn_1_99E4 = .text:0x000099E4; // type:function size:0x48 +fn_1_9A2C = .text:0x00009A2C; // type:function size:0x74 +fn_1_9AA0 = .text:0x00009AA0; // type:function size:0x74 +fn_1_9B14 = .text:0x00009B14; // type:function size:0x74 +fn_1_9B88 = .text:0x00009B88; // type:function size:0x5C0 +fn_1_A148 = .text:0x0000A148; // type:function size:0xAC +fn_1_A1F4 = .text:0x0000A1F4; // type:function size:0x604 +fn_1_A7F8 = .text:0x0000A7F8; // type:function size:0x680 +fn_1_AE78 = .text:0x0000AE78; // type:function size:0x31C +fn_1_B194 = .text:0x0000B194; // type:function size:0x238 +fn_1_B3CC = .text:0x0000B3CC; // type:function size:0x960 +fn_1_BD2C = .text:0x0000BD2C; // type:function size:0x428 +fn_1_C154 = .text:0x0000C154; // type:function size:0xAC +fn_1_C200 = .text:0x0000C200; // type:function size:0xAC +fn_1_C2AC = .text:0x0000C2AC; // type:function size:0x10 +fn_1_C2BC = .text:0x0000C2BC; // type:function size:0xC +fn_1_C2C8 = .text:0x0000C2C8; // type:function size:0xD8 +fn_1_C3A0 = .text:0x0000C3A0; // type:function size:0x7C +fn_1_C41C = .text:0x0000C41C; // type:function size:0x10C +fn_1_C528 = .text:0x0000C528; // type:function size:0x164 +fn_1_C68C = .text:0x0000C68C; // type:function size:0xE0 +fn_1_C76C = .text:0x0000C76C; // type:function size:0xAC0 +fn_1_D22C = .text:0x0000D22C; // type:function size:0x204 +fn_1_D430 = .text:0x0000D430; // type:function size:0xCC +fn_1_D4FC = .text:0x0000D4FC; // type:function size:0x140 +fn_1_D63C = .text:0x0000D63C; // type:function size:0x544 +fn_1_DB80 = .text:0x0000DB80; // type:function size:0x60 +fn_1_DBE0 = .text:0x0000DBE0; // type:function size:0x2C +fn_1_DC0C = .text:0x0000DC0C; // type:function size:0x58 +fn_1_DC64 = .text:0x0000DC64; // type:function size:0x38 +fn_1_DC9C = .text:0x0000DC9C; // type:function size:0x38 +fn_1_DCD4 = .text:0x0000DCD4; // type:function size:0x5DC +fn_1_E2B0 = .text:0x0000E2B0; // type:function size:0xCC +fn_1_E37C = .text:0x0000E37C; // type:function size:0xA4 +fn_1_E420 = .text:0x0000E420; // type:function size:0x68 +fn_1_E488 = .text:0x0000E488; // type:function size:0x504 +fn_1_E98C = .text:0x0000E98C; // type:function size:0x2C8 +fn_1_EC54 = .text:0x0000EC54; // type:function size:0x20 +fn_1_EC74 = .text:0x0000EC74; // type:function size:0x20 +fn_1_EC94 = .text:0x0000EC94; // type:function size:0x44C +fn_1_F0E0 = .text:0x0000F0E0; // type:function size:0x1750 +fn_1_10830 = .text:0x00010830; // type:function size:0x75C +fn_1_10F8C = .text:0x00010F8C; // type:function size:0x5C +fn_1_10FE8 = .text:0x00010FE8; // type:function size:0x100 +fn_1_110E8 = .text:0x000110E8; // type:function size:0xD8 +fn_1_111C0 = .text:0x000111C0; // type:function size:0xD8 +fn_1_11298 = .text:0x00011298; // type:function size:0x158 +fn_1_113F0 = .text:0x000113F0; // type:function size:0x4C +fn_1_1143C = .text:0x0001143C; // type:function size:0x178 +fn_1_115B4 = .text:0x000115B4; // type:function size:0x40C +fn_1_119C0 = .text:0x000119C0; // type:function size:0xB4 +fn_1_11A74 = .text:0x00011A74; // type:function size:0x464 +fn_1_11ED8 = .text:0x00011ED8; // type:function size:0x63C +fn_1_12514 = .text:0x00012514; // type:function size:0x4 +fn_1_12518 = .text:0x00012518; // type:function size:0x68 +fn_1_12580 = .text:0x00012580; // type:function size:0x588 +fn_1_12B08 = .text:0x00012B08; // type:function size:0x141C +fn_1_13F24 = .text:0x00013F24; // type:function size:0x94 +fn_1_13FB8 = .text:0x00013FB8; // type:function size:0x4 +fn_1_13FBC = .text:0x00013FBC; // type:function size:0x14FC +fn_1_154B8 = .text:0x000154B8; // type:function size:0x4 +fn_1_154BC = .text:0x000154BC; // type:function size:0x124 +fn_1_155E0 = .text:0x000155E0; // type:function size:0x134 +fn_1_15714 = .text:0x00015714; // type:function size:0x1C4 +fn_1_158D8 = .text:0x000158D8; // type:function size:0x218 +fn_1_15AF0 = .text:0x00015AF0; // type:function size:0x420 +fn_1_15F10 = .text:0x00015F10; // type:function size:0xC0 +fn_1_15FD0 = .text:0x00015FD0; // type:function size:0xAC +fn_1_1607C = .text:0x0001607C; // type:function size:0x58 +fn_1_160D4 = .text:0x000160D4; // type:function size:0x18C +fn_1_16260 = .text:0x00016260; // type:function size:0x334 +fn_1_16594 = .text:0x00016594; // type:function size:0x118 +fn_1_166AC = .text:0x000166AC; // type:function size:0x250 +fn_1_168FC = .text:0x000168FC; // type:function size:0x3F8 +fn_1_16CF4 = .text:0x00016CF4; // type:function size:0x148 +fn_1_16E3C = .text:0x00016E3C; // type:function size:0xBC +fn_1_16EF8 = .text:0x00016EF8; // type:function size:0x150 +fn_1_17048 = .text:0x00017048; // type:function size:0x1F0 +fn_1_17238 = .text:0x00017238; // type:function size:0x4 +fn_1_1723C = .text:0x0001723C; // type:function size:0xB4 +fn_1_172F0 = .text:0x000172F0; // type:function size:0x140 +fn_1_17430 = .text:0x00017430; // type:function size:0xA4 +_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_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float +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:0xC data:2byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x3C data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x6 data:2byte +lbl_1_rodata_136 = .rodata:0x00000136; // type:object size:0xC data:2byte +lbl_1_rodata_142 = .rodata:0x00000142; // type:object size:0x1A data:2byte +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x24 data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x30 data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC data:4byte +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x1 data:byte +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x1 data:byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x1 data:byte +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x1 data:byte +lbl_1_rodata_38A = .rodata:0x0000038A; // type:object size:0x1 data:byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:float +lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 +jumptable_1_data_94 = .data:0x00000094; // type:object size:0x3C scope:local +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x8 +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x4 +lbl_1_data_DC = .data:0x000000DC; // type:object size:0x4 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC data:2byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x8 +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x4 data:float +lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x4 data:float +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x30 +lbl_1_data_12C = .data:0x0000012C; // type:object size:0x8 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x10 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x90 data:float +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x8 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x8 +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x4 +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x13 data:string +lbl_1_data_203 = .data:0x00000203; // type:object size:0x10 data:string +lbl_1_data_213 = .data:0x00000213; // type:object size:0x26 data:string +lbl_1_data_239 = .data:0x00000239; // type:object size:0x27 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x15C +lbl_1_data_3BC = .data:0x000003BC; // type:object size:0x178 +lbl_1_data_534 = .data:0x00000534; // type:object size:0x18 +lbl_1_data_54C = .data:0x0000054C; // type:object size:0x18 data:float +lbl_1_data_564 = .data:0x00000564; // type:object size:0xC data:float +lbl_1_data_570 = .data:0x00000570; // type:object size:0xC data:float +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x4 +lbl_1_data_580 = .data:0x00000580; // type:object size:0x10 +lbl_1_data_590 = .data:0x00000590; // type:object size:0x1C +lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x1C +lbl_1_data_5C8 = .data:0x000005C8; // type:object size:0x8 +lbl_1_data_5D0 = .data:0x000005D0; // type:object size:0x8 +jumptable_1_data_5D8 = .data:0x000005D8; // type:object size:0x20 scope:local +lbl_1_data_5F8 = .data:0x000005F8; // type:object size:0x8 +lbl_1_data_600 = .data:0x00000600; // type:object size:0x8 +lbl_1_data_608 = .data:0x00000608; // type:object size:0x10 +lbl_1_data_618 = .data:0x00000618; // type:object size:0x10 +jumptable_1_data_628 = .data:0x00000628; // type:object size:0x20 scope:local +lbl_1_data_648 = .data:0x00000648; // type:object size:0x4 +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1 data:byte +lbl_1_data_650 = .data:0x00000650; // type:object size:0x4 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x40 +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x8 +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x1 data:byte +lbl_1_bss_91 = .bss:0x00000091; // type:object size:0x1 data:byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:float +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4C data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x4 data:4byte +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x4 +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x4 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x4 data:4byte +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x60 data:2byte +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x3F0 data:byte +lbl_1_bss_548 = .bss:0x00000548; // type:object size:0x8 data:4byte +lbl_1_bss_550 = .bss:0x00000550; // type:object size:0x4 data:4byte +lbl_1_bss_554 = .bss:0x00000554; // type:object size:0x4 data:4byte +lbl_1_bss_558 = .bss:0x00000558; // type:object size:0x4 data:4byte +lbl_1_bss_55C = .bss:0x0000055C; // type:object size:0x10 +lbl_1_bss_56C = .bss:0x0000056C; // type:object size:0x8 +lbl_1_bss_574 = .bss:0x00000574; // type:object size:0x4 data:4byte +lbl_1_bss_578 = .bss:0x00000578; // type:object size:0x4 data:4byte +lbl_1_bss_57C = .bss:0x0000057C; // type:object size:0x4 data:4byte +lbl_1_bss_580 = .bss:0x00000580; // type:object size:0x4 data:4byte +lbl_1_bss_584 = .bss:0x00000584; // type:object size:0x4 data:4byte +lbl_1_bss_588 = .bss:0x00000588; // type:object size:0x4 data:4byte +lbl_1_bss_58C = .bss:0x0000058C; // type:object size:0x4 data:4byte +lbl_1_bss_590 = .bss:0x00000590; // type:object size:0x4 data:4byte +lbl_1_bss_594 = .bss:0x00000594; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m428Dll/splits.txt b/config/GMPJ01_00/rels/m428Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m428Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m428Dll/symbols.txt b/config/GMPJ01_00/rels/m428Dll/symbols.txt new file mode 100644 index 00000000..cd8f595d --- /dev/null +++ b/config/GMPJ01_00/rels/m428Dll/symbols.txt @@ -0,0 +1,409 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x218 +fn_1_2B8 = .text:0x000002B8; // type:function size:0x1C0 +fn_1_478 = .text:0x00000478; // type:function size:0x2154 +fn_1_25CC = .text:0x000025CC; // type:function size:0x50 +fn_1_261C = .text:0x0000261C; // type:function size:0xC4 +fn_1_26E0 = .text:0x000026E0; // type:function size:0x10 +fn_1_26F0 = .text:0x000026F0; // type:function size:0x2F8 +fn_1_29E8 = .text:0x000029E8; // type:function size:0x4 +fn_1_29EC = .text:0x000029EC; // type:function size:0x4 +fn_1_29F0 = .text:0x000029F0; // type:function size:0x10 +fn_1_2A00 = .text:0x00002A00; // type:function size:0xCC +fn_1_2ACC = .text:0x00002ACC; // type:function size:0x1C4 +fn_1_2C90 = .text:0x00002C90; // type:function size:0x19C +fn_1_2E2C = .text:0x00002E2C; // type:function size:0xD38 +fn_1_3B64 = .text:0x00003B64; // type:function size:0x540 +fn_1_40A4 = .text:0x000040A4; // type:function size:0xCC +fn_1_4170 = .text:0x00004170; // type:function size:0xF4 +fn_1_4264 = .text:0x00004264; // type:function size:0xC0 +fn_1_4324 = .text:0x00004324; // type:function size:0xA4 +fn_1_43C8 = .text:0x000043C8; // type:function size:0x268 +fn_1_4630 = .text:0x00004630; // type:function size:0x20 +fn_1_4650 = .text:0x00004650; // type:function size:0x10C +fn_1_475C = .text:0x0000475C; // type:function size:0x420 +fn_1_4B7C = .text:0x00004B7C; // type:function size:0x2C8 +fn_1_4E44 = .text:0x00004E44; // type:function size:0x34 +fn_1_4E78 = .text:0x00004E78; // type:function size:0x8C +fn_1_4F04 = .text:0x00004F04; // type:function size:0x2DC +fn_1_51E0 = .text:0x000051E0; // type:function size:0xF8 +fn_1_52D8 = .text:0x000052D8; // type:function size:0x4 +fn_1_52DC = .text:0x000052DC; // type:function size:0x94 +fn_1_5370 = .text:0x00005370; // type:function size:0x1E8 +fn_1_5558 = .text:0x00005558; // type:function size:0x12C +fn_1_5684 = .text:0x00005684; // type:function size:0x648 +fn_1_5CCC = .text:0x00005CCC; // type:function size:0x5B4 +fn_1_6280 = .text:0x00006280; // type:function size:0xF2C +fn_1_71AC = .text:0x000071AC; // type:function size:0xE8 +fn_1_7294 = .text:0x00007294; // type:function size:0x40 +fn_1_72D4 = .text:0x000072D4; // type:function size:0xC8 +fn_1_739C = .text:0x0000739C; // type:function size:0x94 +fn_1_7430 = .text:0x00007430; // type:function size:0x84 +fn_1_74B4 = .text:0x000074B4; // type:function size:0x4C +fn_1_7500 = .text:0x00007500; // type:function size:0x54 +fn_1_7554 = .text:0x00007554; // type:function size:0x13C +fn_1_7690 = .text:0x00007690; // type:function size:0x168 +fn_1_77F8 = .text:0x000077F8; // type:function size:0x120 +fn_1_7918 = .text:0x00007918; // type:function size:0x39C +fn_1_7CB4 = .text:0x00007CB4; // type:function size:0x2E0 +fn_1_7F94 = .text:0x00007F94; // type:function size:0x198 +fn_1_812C = .text:0x0000812C; // type:function size:0xD8 +fn_1_8204 = .text:0x00008204; // type:function size:0xBC +fn_1_82C0 = .text:0x000082C0; // type:function size:0x33C +fn_1_85FC = .text:0x000085FC; // type:function size:0x4B0 +fn_1_8AAC = .text:0x00008AAC; // type:function size:0x78 +fn_1_8B24 = .text:0x00008B24; // type:function size:0x11C +fn_1_8C40 = .text:0x00008C40; // type:function size:0x78 +fn_1_8CB8 = .text:0x00008CB8; // type:function size:0x2D8 +fn_1_8F90 = .text:0x00008F90; // type:function size:0x2B8 +fn_1_9248 = .text:0x00009248; // type:function size:0x154 +fn_1_939C = .text:0x0000939C; // type:function size:0x3E0 +fn_1_977C = .text:0x0000977C; // type:function size:0x214 +fn_1_9990 = .text:0x00009990; // type:function size:0xA0 +fn_1_9A30 = .text:0x00009A30; // type:function size:0xAC +fn_1_9ADC = .text:0x00009ADC; // type:function size:0x30C +fn_1_9DE8 = .text:0x00009DE8; // type:function size:0xC0 +fn_1_9EA8 = .text:0x00009EA8; // type:function size:0x60 +fn_1_9F08 = .text:0x00009F08; // type:function size:0x54 +fn_1_9F5C = .text:0x00009F5C; // type:function size:0x154 +fn_1_A0B0 = .text:0x0000A0B0; // type:function size:0x58 +fn_1_A108 = .text:0x0000A108; // type:function size:0x3C0 +fn_1_A4C8 = .text:0x0000A4C8; // type:function size:0xF0C +fn_1_B3D4 = .text:0x0000B3D4; // type:function size:0x68 +fn_1_B43C = .text:0x0000B43C; // type:function size:0x794 +fn_1_BBD0 = .text:0x0000BBD0; // type:function size:0x2A24 +fn_1_E5F4 = .text:0x0000E5F4; // type:function size:0xC +fn_1_E600 = .text:0x0000E600; // type:function size:0xA80 +fn_1_F080 = .text:0x0000F080; // type:function size:0x208 +fn_1_F288 = .text:0x0000F288; // type:function size:0xCC +fn_1_F354 = .text:0x0000F354; // type:function size:0x68 +fn_1_F3BC = .text:0x0000F3BC; // type:function size:0x58 +fn_1_F414 = .text:0x0000F414; // type:function size:0x40 +fn_1_F454 = .text:0x0000F454; // type:function size:0x18 +fn_1_F46C = .text:0x0000F46C; // type:function size:0x48 +fn_1_F4B4 = .text:0x0000F4B4; // type:function size:0x34 +fn_1_F4E8 = .text:0x0000F4E8; // type:function size:0x50 +fn_1_F538 = .text:0x0000F538; // type:function size:0x354 +fn_1_F88C = .text:0x0000F88C; // type:function size:0x300 +fn_1_FB8C = .text:0x0000FB8C; // type:function size:0x30C +fn_1_FE98 = .text:0x0000FE98; // type:function size:0x410 +fn_1_102A8 = .text:0x000102A8; // type:function size:0x288 +fn_1_10530 = .text:0x00010530; // type:function size:0x60 +fn_1_10590 = .text:0x00010590; // type:function size:0x58 +fn_1_105E8 = .text:0x000105E8; // type:function size:0xC0 +fn_1_106A8 = .text:0x000106A8; // type:function size:0xE0 +fn_1_10788 = .text:0x00010788; // type:function size:0x300 +fn_1_10A88 = .text:0x00010A88; // type:function size:0x58C +fn_1_11014 = .text:0x00011014; // type:function size:0x5E4 +fn_1_115F8 = .text:0x000115F8; // type:function size:0xCC +fn_1_116C4 = .text:0x000116C4; // type:function size:0x90 +fn_1_11754 = .text:0x00011754; // type:function size:0x44 +fn_1_11798 = .text:0x00011798; // type:function size:0x110 +fn_1_118A8 = .text:0x000118A8; // type:function size:0x88 +fn_1_11930 = .text:0x00011930; // type:function size:0x130 +fn_1_11A60 = .text:0x00011A60; // type:function size:0x1C0 +fn_1_11C20 = .text:0x00011C20; // type:function size:0x6C +fn_1_11C8C = .text:0x00011C8C; // type:function size:0x158 +fn_1_11DE4 = .text:0x00011DE4; // type:function size:0x470 +fn_1_12254 = .text:0x00012254; // type:function size:0x118 +fn_1_1236C = .text:0x0001236C; // type:function size:0x250 +fn_1_125BC = .text:0x000125BC; // type:function size:0x3F8 +fn_1_129B4 = .text:0x000129B4; // type:function size:0x78 +fn_1_12A2C = .text:0x00012A2C; // type:function size:0x78 +fn_1_12AA4 = .text:0x00012AA4; // type:function size:0x230 +fn_1_12CD4 = .text:0x00012CD4; // type:function size:0x4B0 +fn_1_13184 = .text:0x00013184; // type:function size:0x33C +fn_1_134C0 = .text:0x000134C0; // type:function size:0x8DC +fn_1_13D9C = .text:0x00013D9C; // type:function size:0x78 +fn_1_13E14 = .text:0x00013E14; // type:function size:0xB4 +fn_1_13EC8 = .text:0x00013EC8; // type:function size:0x8C +fn_1_13F54 = .text:0x00013F54; // type:function size:0x134 +fn_1_14088 = .text:0x00014088; // type:function size:0x4D8 +fn_1_14560 = .text:0x00014560; // type:function size:0x98 +fn_1_145F8 = .text:0x000145F8; // type:function size:0x98 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float +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_FC = .rodata:0x000000FC; // 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_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0x24 +lbl_1_data_9C = .data:0x0000009C; // type:object size:0xC +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xC +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4 +jumptable_1_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x48 data:byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x14 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 data:4byte +lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 data:float +lbl_1_data_180 = .data:0x00000180; // type:object size:0x30 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2A0 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x30 +lbl_1_data_480 = .data:0x00000480; // type:object size:0x30 +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x50 data:float +lbl_1_data_500 = .data:0x00000500; // type:object size:0x60 +lbl_1_data_560 = .data:0x00000560; // type:object size:0x80 +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0x60 +lbl_1_data_640 = .data:0x00000640; // type:object size:0x10 +lbl_1_data_650 = .data:0x00000650; // type:object size:0x1 data:byte +lbl_1_data_654 = .data:0x00000654; // type:object size:0x1 data:byte +lbl_1_data_658 = .data:0x00000658; // type:object size:0x14 +jumptable_1_data_66C = .data:0x0000066C; // type:object size:0x28 scope:local +lbl_1_data_694 = .data:0x00000694; // type:object size:0x8 +lbl_1_data_69C = .data:0x0000069C; // type:object size:0x4 +lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x2 data:2byte +lbl_1_data_6A4 = .data:0x000006A4; // type:object size:0x30 +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x20 +lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x19 data:string +lbl_1_data_70D = .data:0x0000070D; // type:object size:0x5 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x10 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x10 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:2byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x8 data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:float +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x8 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x80 +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:4byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:4byte +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x80 +lbl_1_bss_1BC = .bss:0x000001BC; // type:object size:0x80 +lbl_1_bss_23C = .bss:0x0000023C; // type:object size:0x60 +lbl_1_bss_29C = .bss:0x0000029C; // type:object size:0x8 data:4byte +lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x4 data:4byte +lbl_1_bss_2A8 = .bss:0x000002A8; // type:object size:0x4 data:4byte +lbl_1_bss_2AC = .bss:0x000002AC; // type:object size:0x4 data:4byte +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:4byte +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0x4 data:4byte +lbl_1_bss_2B8 = .bss:0x000002B8; // type:object size:0x10 +lbl_1_bss_2C8 = .bss:0x000002C8; // type:object size:0x8 +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m429Dll/splits.txt b/config/GMPJ01_00/rels/m429Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m429Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m429Dll/symbols.txt b/config/GMPJ01_00/rels/m429Dll/symbols.txt new file mode 100644 index 00000000..f2faf4cf --- /dev/null +++ b/config/GMPJ01_00/rels/m429Dll/symbols.txt @@ -0,0 +1,316 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x218 +fn_1_798 = .text:0x00000798; // type:function size:0x254 +fn_1_9EC = .text:0x000009EC; // type:function size:0x54 +fn_1_A40 = .text:0x00000A40; // type:function size:0x10C +fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C +fn_1_1350 = .text:0x00001350; // type:function size:0x8C +fn_1_13DC = .text:0x000013DC; // type:function size:0x334 +fn_1_1710 = .text:0x00001710; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 +fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 +fn_1_23B4 = .text:0x000023B4; // type:function size:0x260 +fn_1_2614 = .text:0x00002614; // type:function size:0x70 +fn_1_2684 = .text:0x00002684; // type:function size:0x2CC +fn_1_2950 = .text:0x00002950; // type:function size:0x290 +fn_1_2BE0 = .text:0x00002BE0; // type:function size:0x234 +fn_1_2E14 = .text:0x00002E14; // type:function size:0xD8 +fn_1_2EEC = .text:0x00002EEC; // type:function size:0x2BC +fn_1_31A8 = .text:0x000031A8; // type:function size:0x4 +fn_1_31AC = .text:0x000031AC; // type:function size:0xD8 +fn_1_3284 = .text:0x00003284; // type:function size:0x174 +fn_1_33F8 = .text:0x000033F8; // type:function size:0x304 +fn_1_36FC = .text:0x000036FC; // type:function size:0x170 +fn_1_386C = .text:0x0000386C; // type:function size:0x560 +fn_1_3DCC = .text:0x00003DCC; // type:function size:0x254 +_prolog = .text:0x00004020; // type:function size:0x54 scope:global +_epilog = .text:0x00004074; // type:function size:0x4C scope:global +fn_1_40C0 = .text:0x000040C0; // type:function size:0x164 +fn_1_4224 = .text:0x00004224; // type:function size:0xBCC +fn_1_4DF0 = .text:0x00004DF0; // type:function size:0x60 +fn_1_4E50 = .text:0x00004E50; // type:function size:0x25C +fn_1_50AC = .text:0x000050AC; // type:function size:0x410 +fn_1_54BC = .text:0x000054BC; // type:function size:0x380 +fn_1_583C = .text:0x0000583C; // type:function size:0x120 +fn_1_595C = .text:0x0000595C; // type:function size:0x380 +fn_1_5CDC = .text:0x00005CDC; // type:function size:0x268 +fn_1_5F44 = .text:0x00005F44; // type:function size:0x1154 +fn_1_7098 = .text:0x00007098; // type:function size:0x158 +fn_1_71F0 = .text:0x000071F0; // type:function size:0xB48 +fn_1_7D38 = .text:0x00007D38; // type:function size:0x1230 +fn_1_8F68 = .text:0x00008F68; // type:function size:0xA84 +fn_1_99EC = .text:0x000099EC; // type:function size:0x4 +fn_1_99F0 = .text:0x000099F0; // type:function size:0x1BC +fn_1_9BAC = .text:0x00009BAC; // type:function size:0x340 +fn_1_9EEC = .text:0x00009EEC; // type:function size:0x1BC +fn_1_A0A8 = .text:0x0000A0A8; // type:function size:0x70 +fn_1_A118 = .text:0x0000A118; // type:function size:0x470 +fn_1_A588 = .text:0x0000A588; // type:function size:0x22C +fn_1_A7B4 = .text:0x0000A7B4; // type:function size:0x5C0 +fn_1_AD74 = .text:0x0000AD74; // type:function size:0x2A8 +fn_1_B01C = .text:0x0000B01C; // type:function size:0x738 +fn_1_B754 = .text:0x0000B754; // type:function size:0x18C +fn_1_B8E0 = .text:0x0000B8E0; // type:function size:0x1D08 +fn_1_D5E8 = .text:0x0000D5E8; // type:function size:0x6B4 +fn_1_DC9C = .text:0x0000DC9C; // type:function size:0xCD0 +fn_1_E96C = .text:0x0000E96C; // type:function size:0x104 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0xD data:string +lbl_1_data_1D = .data:0x0000001D; // type:object size:0xE data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0xE data:string +lbl_1_data_39 = .data:0x00000039; // type:object size:0xE data:string +lbl_1_data_47 = .data:0x00000047; // type:object size:0xD data:string +lbl_1_data_54 = .data:0x00000054; // type:object size:0xD data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0xE data:string +lbl_1_data_6F = .data:0x0000006F; // type:object size:0xE data:string +lbl_1_data_7D = .data:0x0000007D; // type:object size:0xE data:string +lbl_1_data_8B = .data:0x0000008B; // type:object size:0xD data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0xE data:string +lbl_1_data_A6 = .data:0x000000A6; // type:object size:0xE data:string +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xE data:string +lbl_1_data_C2 = .data:0x000000C2; // type:object size:0xD data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xD data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0xD data:string +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0xE data:string +lbl_1_data_104 = .data:0x00000104; // type:object size:0xE data:string +lbl_1_data_112 = .data:0x00000112; // type:object size:0xE data:string +lbl_1_data_120 = .data:0x00000120; // type:object size:0xE data:string +lbl_1_data_12E = .data:0x0000012E; // type:object size:0xE data:string +lbl_1_data_13C = .data:0x0000013C; // type:object size:0xE data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xE data:string +lbl_1_data_158 = .data:0x00000158; // type:object size:0xE data:string +lbl_1_data_166 = .data:0x00000166; // type:object size:0xE data:string +lbl_1_data_174 = .data:0x00000174; // type:object size:0xE data:string +lbl_1_data_182 = .data:0x00000182; // type:object size:0xE data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0xE data:string +lbl_1_data_19E = .data:0x0000019E; // type:object size:0xE data:string +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xE data:string +lbl_1_data_1BA = .data:0x000001BA; // type:object size:0xE data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0xE data:string +lbl_1_data_1D6 = .data:0x000001D6; // type:object size:0xE data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xE data:string +lbl_1_data_1F2 = .data:0x000001F2; // type:object size:0xE data:string +lbl_1_data_200 = .data:0x00000200; // type:object size:0xE data:string +lbl_1_data_20E = .data:0x0000020E; // type:object size:0xE data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x57C +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0xD data:string +lbl_1_data_7B5 = .data:0x000007B5; // type:object size:0xD data:string +lbl_1_data_7C2 = .data:0x000007C2; // type:object size:0xD data:string +lbl_1_data_7CF = .data:0x000007CF; // type:object size:0xE data:string +lbl_1_data_7DD = .data:0x000007DD; // type:object size:0xE data:string +lbl_1_data_7EB = .data:0x000007EB; // type:object size:0xE data:string +lbl_1_data_7F9 = .data:0x000007F9; // type:object size:0xE data:string +lbl_1_data_807 = .data:0x00000807; // type:object size:0xD data:string +lbl_1_data_814 = .data:0x00000814; // type:object size:0xD data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0xD data:string +lbl_1_data_82E = .data:0x0000082E; // type:object size:0xE data:string +lbl_1_data_83C = .data:0x0000083C; // type:object size:0xE data:string +lbl_1_data_84A = .data:0x0000084A; // type:object size:0xD data:string +lbl_1_data_857 = .data:0x00000857; // type:object size:0xD data:string +lbl_1_data_864 = .data:0x00000864; // type:object size:0xD data:string +lbl_1_data_871 = .data:0x00000871; // type:object size:0xE data:string +lbl_1_data_87F = .data:0x0000087F; // type:object size:0xE data:string +lbl_1_data_88D = .data:0x0000088D; // type:object size:0xE data:string +lbl_1_data_89B = .data:0x0000089B; // type:object size:0xE data:string +lbl_1_data_8A9 = .data:0x000008A9; // type:object size:0xE data:string +lbl_1_data_8B7 = .data:0x000008B7; // type:object size:0xE data:string +lbl_1_data_8C5 = .data:0x000008C5; // type:object size:0xE data:string +lbl_1_data_8D3 = .data:0x000008D3; // type:object size:0xE data:string +lbl_1_data_8E1 = .data:0x000008E1; // type:object size:0xE data:string +lbl_1_data_8EF = .data:0x000008EF; // type:object size:0xE data:string +lbl_1_data_8FD = .data:0x000008FD; // type:object size:0xE data:string +lbl_1_data_90B = .data:0x0000090B; // type:object size:0xE data:string +lbl_1_data_919 = .data:0x00000919; // type:object size:0xE data:string +lbl_1_data_927 = .data:0x00000927; // type:object size:0xE data:string +lbl_1_data_935 = .data:0x00000935; // type:object size:0xE data:string +lbl_1_data_943 = .data:0x00000943; // type:object size:0xE data:string +lbl_1_data_951 = .data:0x00000951; // type:object size:0xE data:string +lbl_1_data_95F = .data:0x0000095F; // type:object size:0xE data:string +lbl_1_data_96D = .data:0x0000096D; // type:object size:0xE data:string +lbl_1_data_97B = .data:0x0000097B; // type:object size:0xE data:string +lbl_1_data_989 = .data:0x00000989; // type:object size:0xE data:string +lbl_1_data_997 = .data:0x00000997; // type:object size:0xE data:string +lbl_1_data_9A5 = .data:0x000009A5; // type:object size:0xE data:string +lbl_1_data_9B3 = .data:0x000009B3; // type:object size:0xE data:string +lbl_1_data_9C1 = .data:0x000009C1; // type:object size:0xE data:string +lbl_1_data_9CF = .data:0x000009CF; // type:object size:0xE data:string +lbl_1_data_9DD = .data:0x000009DD; // type:object size:0xF +lbl_1_data_9EC = .data:0x000009EC; // type:object size:0x5E8 +lbl_1_data_FD4 = .data:0x00000FD4; // type:object size:0xC +lbl_1_data_FE0 = .data:0x00000FE0; // type:object size:0xC +lbl_1_data_FEC = .data:0x00000FEC; // type:object size:0x10 +lbl_1_data_FFC = .data:0x00000FFC; // type:object size:0x40 +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x40 data:float +lbl_1_data_107C = .data:0x0000107C; // type:object size:0x40 +lbl_1_data_10BC = .data:0x000010BC; // type:object size:0x40 +lbl_1_data_10FC = .data:0x000010FC; // type:object size:0x20 +lbl_1_data_111C = .data:0x0000111C; // type:object size:0xC +lbl_1_data_1128 = .data:0x00001128; // type:object size:0xC +lbl_1_data_1134 = .data:0x00001134; // type:object size:0x4 +lbl_1_data_1138 = .data:0x00001138; // type:object size:0xC +lbl_1_data_1144 = .data:0x00001144; // type:object size:0xC +lbl_1_data_1150 = .data:0x00001150; // type:object size:0x140 +lbl_1_data_1290 = .data:0x00001290; // type:object size:0x20 +lbl_1_data_12B0 = .data:0x000012B0; // type:object size:0x20 +lbl_1_data_12D0 = .data:0x000012D0; // type:object size:0x10 +lbl_1_data_12E0 = .data:0x000012E0; // type:object size:0x30 +lbl_1_data_1310 = .data:0x00001310; // type:object size:0x10 +lbl_1_data_1320 = .data:0x00001320; // type:object size:0x10 +lbl_1_data_1330 = .data:0x00001330; // type:object size:0x10 +lbl_1_data_1340 = .data:0x00001340; // type:object size:0x48 +lbl_1_data_1388 = .data:0x00001388; // type:object size:0x20 +lbl_1_data_13A8 = .data:0x000013A8; // type:object size:0x10 +lbl_1_data_13B8 = .data:0x000013B8; // type:object size:0x10 +lbl_1_data_13C8 = .data:0x000013C8; // type:object size:0x10 +lbl_1_data_13D8 = .data:0x000013D8; // type:object size:0x10 +lbl_1_data_13E8 = .data:0x000013E8; // type:object size:0x50 +lbl_1_data_1438 = .data:0x00001438; // type:object size:0x21 data:string +lbl_1_data_1459 = .data:0x00001459; // type:object size:0x1F +jumptable_1_data_1478 = .data:0x00001478; // type:object size:0x24 scope:local +lbl_1_data_149C = .data:0x0000149C; // type:object size:0x1C +jumptable_1_data_14B8 = .data:0x000014B8; // type:object size:0x34 scope:local +lbl_1_data_14EC = .data:0x000014EC; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0xA data:2byte +lbl_1_bss_1A = .bss:0x0000001A; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x30 +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x30 +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x30 +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x30 +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x18 data:float +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:float +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:float +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:float +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:float +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:float +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:float +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:float +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x60 +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x8 data:4byte +lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x4 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 data:4byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:4byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x100 +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x40 data:4byte +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x4 data:float +lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x4 data:4byte +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x4 data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0x2 data:2byte +lbl_1_bss_2FE = .bss:0x000002FE; // type:object size:0x2 data:2byte +lbl_1_bss_300 = .bss:0x00000300; // type:object size:0x4 data:4byte +lbl_1_bss_304 = .bss:0x00000304; // type:object size:0x4 data:4byte +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0xC data:float +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0xC data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0xC data:float +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0xC data:4byte +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x4 data:4byte +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x18 data:4byte +lbl_1_bss_358 = .bss:0x00000358; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m430Dll/splits.txt b/config/GMPJ01_00/rels/m430Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m430Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m430Dll/symbols.txt b/config/GMPJ01_00/rels/m430Dll/symbols.txt new file mode 100644 index 00000000..3517ae68 --- /dev/null +++ b/config/GMPJ01_00/rels/m430Dll/symbols.txt @@ -0,0 +1,492 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x5BC +fn_1_65C = .text:0x0000065C; // type:function size:0xC4 +fn_1_720 = .text:0x00000720; // type:function size:0x334 +fn_1_A54 = .text:0x00000A54; // type:function size:0x144 +fn_1_B98 = .text:0x00000B98; // type:function size:0x564 +fn_1_10FC = .text:0x000010FC; // type:function size:0x590 +fn_1_168C = .text:0x0000168C; // type:function size:0x478 +fn_1_1B04 = .text:0x00001B04; // type:function size:0x6E0 +fn_1_21E4 = .text:0x000021E4; // type:function size:0x52C +fn_1_2710 = .text:0x00002710; // type:function size:0x638 +fn_1_2D48 = .text:0x00002D48; // type:function size:0x138 +fn_1_2E80 = .text:0x00002E80; // type:function size:0x81C +fn_1_369C = .text:0x0000369C; // type:function size:0xCC +fn_1_3768 = .text:0x00003768; // type:function size:0x8C8 +fn_1_4030 = .text:0x00004030; // type:function size:0x10 +fn_1_4040 = .text:0x00004040; // type:function size:0x18 +fn_1_4058 = .text:0x00004058; // type:function size:0x18 +fn_1_4070 = .text:0x00004070; // type:function size:0x18 +fn_1_4088 = .text:0x00004088; // type:function size:0x18 +fn_1_40A0 = .text:0x000040A0; // type:function size:0x18 +fn_1_40B8 = .text:0x000040B8; // type:function size:0x18 +fn_1_40D0 = .text:0x000040D0; // type:function size:0x30 +fn_1_4100 = .text:0x00004100; // type:function size:0x30 +fn_1_4130 = .text:0x00004130; // type:function size:0xC0 +fn_1_41F0 = .text:0x000041F0; // type:function size:0x348 +fn_1_4538 = .text:0x00004538; // type:function size:0x378 +fn_1_48B0 = .text:0x000048B0; // type:function size:0x11C +fn_1_49CC = .text:0x000049CC; // type:function size:0xB4 +fn_1_4A80 = .text:0x00004A80; // type:function size:0x1C8 +fn_1_4C48 = .text:0x00004C48; // type:function size:0x6C +fn_1_4CB4 = .text:0x00004CB4; // type:function size:0x1144 +fn_1_5DF8 = .text:0x00005DF8; // type:function size:0x388 +fn_1_6180 = .text:0x00006180; // type:function size:0x3C0 +fn_1_6540 = .text:0x00006540; // type:function size:0x214 +fn_1_6754 = .text:0x00006754; // type:function size:0x674 +fn_1_6DC8 = .text:0x00006DC8; // type:function size:0x2E4 +fn_1_70AC = .text:0x000070AC; // type:function size:0x280 +fn_1_732C = .text:0x0000732C; // type:function size:0x3AC +fn_1_76D8 = .text:0x000076D8; // type:function size:0x170 +fn_1_7848 = .text:0x00007848; // type:function size:0x464 +fn_1_7CAC = .text:0x00007CAC; // type:function size:0x200 +fn_1_7EAC = .text:0x00007EAC; // type:function size:0x110 +fn_1_7FBC = .text:0x00007FBC; // type:function size:0x40 +fn_1_7FFC = .text:0x00007FFC; // type:function size:0x40 +fn_1_803C = .text:0x0000803C; // type:function size:0x228 +fn_1_8264 = .text:0x00008264; // type:function size:0x90 +fn_1_82F4 = .text:0x000082F4; // type:function size:0x3C0 +fn_1_86B4 = .text:0x000086B4; // type:function size:0x4A8 +fn_1_8B5C = .text:0x00008B5C; // type:function size:0x184 +fn_1_8CE0 = .text:0x00008CE0; // type:function size:0x95C +fn_1_963C = .text:0x0000963C; // type:function size:0x654 +fn_1_9C90 = .text:0x00009C90; // type:function size:0x718 +fn_1_A3A8 = .text:0x0000A3A8; // type:function size:0x7F0 +fn_1_AB98 = .text:0x0000AB98; // type:function size:0xEC +fn_1_AC84 = .text:0x0000AC84; // type:function size:0x80 +fn_1_AD04 = .text:0x0000AD04; // type:function size:0x1DC +fn_1_AEE0 = .text:0x0000AEE0; // type:function size:0x4B4 +fn_1_B394 = .text:0x0000B394; // type:function size:0x1DC +fn_1_B570 = .text:0x0000B570; // type:function size:0x5E4 +fn_1_BB54 = .text:0x0000BB54; // type:function size:0x34 +fn_1_BB88 = .text:0x0000BB88; // type:function size:0x10 +fn_1_BB98 = .text:0x0000BB98; // type:function size:0x2C +fn_1_BBC4 = .text:0x0000BBC4; // type:function size:0x260 +fn_1_BE24 = .text:0x0000BE24; // type:function size:0x1E8 +fn_1_C00C = .text:0x0000C00C; // type:function size:0x34 +fn_1_C040 = .text:0x0000C040; // type:function size:0x1A4 +fn_1_C1E4 = .text:0x0000C1E4; // type:function size:0x858 +fn_1_CA3C = .text:0x0000CA3C; // type:function size:0x894 +fn_1_D2D0 = .text:0x0000D2D0; // type:function size:0x558 +fn_1_D828 = .text:0x0000D828; // type:function size:0x10D4 +fn_1_E8FC = .text:0x0000E8FC; // type:function size:0x7DC +fn_1_F0D8 = .text:0x0000F0D8; // type:function size:0x554 +fn_1_F62C = .text:0x0000F62C; // type:function size:0x74 +fn_1_F6A0 = .text:0x0000F6A0; // type:function size:0x5FC +fn_1_FC9C = .text:0x0000FC9C; // type:function size:0x404 +fn_1_100A0 = .text:0x000100A0; // type:function size:0x29C +fn_1_1033C = .text:0x0001033C; // type:function size:0x200 +fn_1_1053C = .text:0x0001053C; // type:function size:0x4 +fn_1_10540 = .text:0x00010540; // type:function size:0x4C +fn_1_1058C = .text:0x0001058C; // type:function size:0x2C +fn_1_105B8 = .text:0x000105B8; // type:function size:0x64 +fn_1_1061C = .text:0x0001061C; // type:function size:0x32C +fn_1_10948 = .text:0x00010948; // type:function size:0x240 +fn_1_10B88 = .text:0x00010B88; // type:function size:0x194 +fn_1_10D1C = .text:0x00010D1C; // type:function size:0x204 +fn_1_10F20 = .text:0x00010F20; // type:function size:0x4 +fn_1_10F24 = .text:0x00010F24; // type:function size:0x184 +fn_1_110A8 = .text:0x000110A8; // type:function size:0x114 +fn_1_111BC = .text:0x000111BC; // type:function size:0x158 +fn_1_11314 = .text:0x00011314; // type:function size:0x98 +fn_1_113AC = .text:0x000113AC; // type:function size:0x144 +fn_1_114F0 = .text:0x000114F0; // type:function size:0x154 +fn_1_11644 = .text:0x00011644; // type:function size:0x4 +fn_1_11648 = .text:0x00011648; // type:function size:0x15C +fn_1_117A4 = .text:0x000117A4; // type:function size:0x278 +fn_1_11A1C = .text:0x00011A1C; // type:function size:0x148 +fn_1_11B64 = .text:0x00011B64; // type:function size:0x30 +fn_1_11B94 = .text:0x00011B94; // type:function size:0x88 +fn_1_11C1C = .text:0x00011C1C; // type:function size:0x154 +fn_1_11D70 = .text:0x00011D70; // type:function size:0x1F0 +fn_1_11F60 = .text:0x00011F60; // type:function size:0x30 +fn_1_11F90 = .text:0x00011F90; // type:function size:0x5C0 +fn_1_12550 = .text:0x00012550; // type:function size:0x74 +fn_1_125C4 = .text:0x000125C4; // type:function size:0x408 +fn_1_129CC = .text:0x000129CC; // type:function size:0x3A8 +fn_1_12D74 = .text:0x00012D74; // type:function size:0x7C +fn_1_12DF0 = .text:0x00012DF0; // type:function size:0xB8 +fn_1_12EA8 = .text:0x00012EA8; // type:function size:0x78 +fn_1_12F20 = .text:0x00012F20; // type:function size:0x11C +fn_1_1303C = .text:0x0001303C; // type:function size:0x118 +fn_1_13154 = .text:0x00013154; // type:function size:0x250 +fn_1_133A4 = .text:0x000133A4; // type:function size:0x38 +fn_1_133DC = .text:0x000133DC; // type:function size:0xB4 +_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:0x4 data:float +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:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 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:4byte +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x10 data:4byte +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x10 data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 data:4byte +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x10 data:4byte +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:4byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x18 data:4byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:4byte +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC data:4byte +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0xC data:4byte +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0xC data:4byte +lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 data:float +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0xC data:4byte +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x18 data:4byte +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x18 data:4byte +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x8 data:4byte +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x8 data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x20 data:4byte +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x14 data:4byte +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x10 data:4byte +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x10 data:4byte +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x1 data:byte +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x1 data:byte +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x1 data:byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x1 data:byte +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x1 data:byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x1 data:byte +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x1 data:byte +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x1 data:byte +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x1 data:byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:4byte +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0xC data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 data:double +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 data:double +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x8 data:double +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x8 data:double +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 data:float +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x8 data:double +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:double +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x4 data:float +lbl_1_rodata_6BC = .rodata:0x000006BC; // type:object size:0x4 data:float +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 data:double +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x8 data:double +lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x8 data:double +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x8 data:double +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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0x10 data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x7 data:string +lbl_1_data_57 = .data:0x00000057; // type:object size:0x9 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x48 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x18 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x60 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x48 +lbl_1_data_168 = .data:0x00000168; // type:object size:0x8 +lbl_1_data_170 = .data:0x00000170; // type:object size:0x38 +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x20 +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x14 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x1C +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x60 +lbl_1_data_258 = .data:0x00000258; // type:object size:0x20 +lbl_1_data_278 = .data:0x00000278; // type:object size:0x8 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x8 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x8 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x54 +lbl_1_data_300 = .data:0x00000300; // type:object size:0x8 data:4byte +lbl_1_data_308 = .data:0x00000308; // type:object size:0x4 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x6 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:float +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:float +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0xE0 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:4byte +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x8 data:4byte +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x4 data:4byte +lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x4 data:4byte +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x4 data:4byte +lbl_1_bss_164 = .bss:0x00000164; // type:object size:0x4 data:4byte +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x4 data:4byte +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x4 data:4byte +lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte +lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte +lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m431Dll/splits.txt b/config/GMPJ01_00/rels/m431Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m431Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m431Dll/symbols.txt b/config/GMPJ01_00/rels/m431Dll/symbols.txt new file mode 100644 index 00000000..49cbc1e1 --- /dev/null +++ b/config/GMPJ01_00/rels/m431Dll/symbols.txt @@ -0,0 +1,252 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +fn_1_424 = .text:0x00000424; // type:function size:0x78 +fn_1_49C = .text:0x0000049C; // type:function size:0xE0 +fn_1_57C = .text:0x0000057C; // type:function size:0x234 +fn_1_7B0 = .text:0x000007B0; // type:function size:0x294 +fn_1_A44 = .text:0x00000A44; // type:function size:0x660 +fn_1_10A4 = .text:0x000010A4; // type:function size:0x368 +fn_1_140C = .text:0x0000140C; // type:function size:0x228 +fn_1_1634 = .text:0x00001634; // type:function size:0x40C +fn_1_1A40 = .text:0x00001A40; // type:function size:0x5C0 +fn_1_2000 = .text:0x00002000; // type:function size:0x50 +fn_1_2050 = .text:0x00002050; // type:function size:0x40 +fn_1_2090 = .text:0x00002090; // type:function size:0x40 +fn_1_20D0 = .text:0x000020D0; // type:function size:0x40 +fn_1_2110 = .text:0x00002110; // type:function size:0x9A0 +fn_1_2AB0 = .text:0x00002AB0; // type:function size:0x10 +fn_1_2AC0 = .text:0x00002AC0; // type:function size:0x1D4 +fn_1_2C94 = .text:0x00002C94; // type:function size:0x44C +fn_1_30E0 = .text:0x000030E0; // type:function size:0x460 +fn_1_3540 = .text:0x00003540; // type:function size:0x83C +fn_1_3D7C = .text:0x00003D7C; // type:function size:0x254 +fn_1_3FD0 = .text:0x00003FD0; // type:function size:0x58 +fn_1_4028 = .text:0x00004028; // type:function size:0x6FC +fn_1_4724 = .text:0x00004724; // type:function size:0x14 +fn_1_4738 = .text:0x00004738; // type:function size:0x60 +fn_1_4798 = .text:0x00004798; // type:function size:0x138 +fn_1_48D0 = .text:0x000048D0; // type:function size:0xBC +fn_1_498C = .text:0x0000498C; // type:function size:0x188 +fn_1_4B14 = .text:0x00004B14; // type:function size:0x1C8 +fn_1_4CDC = .text:0x00004CDC; // type:function size:0x70 +fn_1_4D4C = .text:0x00004D4C; // type:function size:0xE4 +fn_1_4E30 = .text:0x00004E30; // type:function size:0x4A8 +fn_1_52D8 = .text:0x000052D8; // type:function size:0x1A8 +fn_1_5480 = .text:0x00005480; // type:function size:0xA4 +fn_1_5524 = .text:0x00005524; // type:function size:0x148 +fn_1_566C = .text:0x0000566C; // type:function size:0x9C +fn_1_5708 = .text:0x00005708; // type:function size:0x468 +fn_1_5B70 = .text:0x00005B70; // type:function size:0x4C0 +fn_1_6030 = .text:0x00006030; // type:function size:0x154 +fn_1_6184 = .text:0x00006184; // type:function size:0x380 +fn_1_6504 = .text:0x00006504; // type:function size:0xC8 +fn_1_65CC = .text:0x000065CC; // type:function size:0x10 +fn_1_65DC = .text:0x000065DC; // type:function size:0x5C +fn_1_6638 = .text:0x00006638; // type:function size:0xA4 +fn_1_66DC = .text:0x000066DC; // type:function size:0xE4 +fn_1_67C0 = .text:0x000067C0; // type:function size:0x374 +fn_1_6B34 = .text:0x00006B34; // type:function size:0x140 +fn_1_6C74 = .text:0x00006C74; // type:function size:0x544 +fn_1_71B8 = .text:0x000071B8; // type:function size:0x60 +fn_1_7218 = .text:0x00007218; // type:function size:0x2C +fn_1_7244 = .text:0x00007244; // type:function size:0x38 +fn_1_727C = .text:0x0000727C; // type:function size:0x38 +fn_1_72B4 = .text:0x000072B4; // type:function size:0x570 +fn_1_7824 = .text:0x00007824; // type:function size:0xCC +fn_1_78F0 = .text:0x000078F0; // type:function size:0xA4 +fn_1_7994 = .text:0x00007994; // type:function size:0x68 +fn_1_79FC = .text:0x000079FC; // type:function size:0x7C +fn_1_7A78 = .text:0x00007A78; // type:function size:0x44 +fn_1_7ABC = .text:0x00007ABC; // type:function size:0x4FC +fn_1_7FB8 = .text:0x00007FB8; // type:function size:0x4BC +fn_1_8474 = .text:0x00008474; // type:function size:0x118 +fn_1_858C = .text:0x0000858C; // type:function size:0x204 +fn_1_8790 = .text:0x00008790; // type:function size:0x344 +fn_1_8AD4 = .text:0x00008AD4; // type:function size:0x1EC +fn_1_8CC0 = .text:0x00008CC0; // type:function size:0x6CC +fn_1_938C = .text:0x0000938C; // type:function size:0xB4 +fn_1_9440 = .text:0x00009440; // type:function size:0x494 +fn_1_98D4 = .text:0x000098D4; // type:function size:0x130 +fn_1_9A04 = .text:0x00009A04; // type:function size:0x258 +fn_1_9C5C = .text:0x00009C5C; // type:function size:0x49C +fn_1_A0F8 = .text:0x0000A0F8; // type:function size:0x358 +fn_1_A450 = .text:0x0000A450; // type:function size:0x380 +fn_1_A7D0 = .text:0x0000A7D0; // type:function size:0x134 +fn_1_A904 = .text:0x0000A904; // type:function size:0x13C +fn_1_AA40 = .text:0x0000AA40; // type:function size:0xB0 +fn_1_AAF0 = .text:0x0000AAF0; // type:function size:0xB0 +fn_1_ABA0 = .text:0x0000ABA0; // type:function size:0x20 +fn_1_ABC0 = .text:0x0000ABC0; // type:function size:0x30 +fn_1_ABF0 = .text:0x0000ABF0; // type:function size:0x90 +fn_1_AC80 = .text:0x0000AC80; // type:function size:0x108 +fn_1_AD88 = .text:0x0000AD88; // type:function size:0x7C +fn_1_AE04 = .text:0x0000AE04; // type:function size:0x2E4 +fn_1_B0E8 = .text:0x0000B0E8; // type:function size:0x48 +fn_1_B130 = .text:0x0000B130; // type:function size:0x20 +fn_1_B150 = .text:0x0000B150; // type:function size:0x1C +fn_1_B16C = .text:0x0000B16C; // type:function size:0x20 +fn_1_B18C = .text:0x0000B18C; // type:function size:0x1F8 +fn_1_B384 = .text:0x0000B384; // type:function size:0x80 +fn_1_B404 = .text:0x0000B404; // type:function size:0x90 +fn_1_B494 = .text:0x0000B494; // type:function size:0x64 +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_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_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_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 +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x70 data:float +lbl_1_data_BC = .data:0x000000BC; // type:object size:0xC +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x8 data:4byte +jumptable_1_data_D0 = .data:0x000000D0; // type:object size:0x44 scope:local +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_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:0x26 +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 +lbl_1_data_214 = .data:0x00000214; // type:object size:0x1C +lbl_1_data_230 = .data:0x00000230; // type:object size:0x20 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x10 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x8 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x2 data:2byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x1 data:byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x1 data:byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x28 +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x3C data:2byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x1 data:byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x10 +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x80 data:4byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4F0 data:2byte +lbl_1_bss_61C = .bss:0x0000061C; // type:object size:0x10 +lbl_1_bss_62C = .bss:0x0000062C; // type:object size:0x50 data:float diff --git a/config/GMPJ01_00/rels/m432Dll/splits.txt b/config/GMPJ01_00/rels/m432Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m432Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m432Dll/symbols.txt b/config/GMPJ01_00/rels/m432Dll/symbols.txt new file mode 100644 index 00000000..7d4201a9 --- /dev/null +++ b/config/GMPJ01_00/rels/m432Dll/symbols.txt @@ -0,0 +1,359 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x218 +fn_1_798 = .text:0x00000798; // type:function size:0x254 +fn_1_9EC = .text:0x000009EC; // type:function size:0x54 +fn_1_A40 = .text:0x00000A40; // type:function size:0x10C +fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C +fn_1_1350 = .text:0x00001350; // type:function size:0x8C +fn_1_13DC = .text:0x000013DC; // type:function size:0x334 +fn_1_1710 = .text:0x00001710; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 +fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 +fn_1_23B4 = .text:0x000023B4; // type:function size:0x64 +fn_1_2418 = .text:0x00002418; // type:function size:0xE0 +fn_1_24F8 = .text:0x000024F8; // type:function size:0x32C +fn_1_2824 = .text:0x00002824; // type:function size:0x3AC +fn_1_2BD0 = .text:0x00002BD0; // type:function size:0x30 +fn_1_2C00 = .text:0x00002C00; // type:function size:0x1C +fn_1_2C1C = .text:0x00002C1C; // type:function size:0x18C +fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x8 +fn_1_2DB0 = .text:0x00002DB0; // type:function size:0x8 +fn_1_2DB8 = .text:0x00002DB8; // type:function size:0x8 +fn_1_2DC0 = .text:0x00002DC0; // type:function size:0x8 +fn_1_2DC8 = .text:0x00002DC8; // type:function size:0xC +fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x60 +fn_1_2E34 = .text:0x00002E34; // type:function size:0xB90 +fn_1_39C4 = .text:0x000039C4; // type:function size:0x31C +fn_1_3CE0 = .text:0x00003CE0; // type:function size:0xD8 +fn_1_3DB8 = .text:0x00003DB8; // type:function size:0x114 +fn_1_3ECC = .text:0x00003ECC; // type:function size:0xB8 +fn_1_3F84 = .text:0x00003F84; // type:function size:0xA0 +fn_1_4024 = .text:0x00004024; // type:function size:0x9C +fn_1_40C0 = .text:0x000040C0; // type:function size:0xE18 +fn_1_4ED8 = .text:0x00004ED8; // type:function size:0x250 +fn_1_5128 = .text:0x00005128; // type:function size:0x10 +fn_1_5138 = .text:0x00005138; // type:function size:0x10 +fn_1_5148 = .text:0x00005148; // type:function size:0x60 +fn_1_51A8 = .text:0x000051A8; // type:function size:0x60 +fn_1_5208 = .text:0x00005208; // type:function size:0xB0 +fn_1_52B8 = .text:0x000052B8; // type:function size:0xAC +fn_1_5364 = .text:0x00005364; // type:function size:0x408 +fn_1_576C = .text:0x0000576C; // type:function size:0xDC +fn_1_5848 = .text:0x00005848; // type:function size:0x364 +fn_1_5BAC = .text:0x00005BAC; // type:function size:0x380 +fn_1_5F2C = .text:0x00005F2C; // type:function size:0x310 +fn_1_623C = .text:0x0000623C; // type:function size:0xAF8 +fn_1_6D34 = .text:0x00006D34; // type:function size:0x1F4 +fn_1_6F28 = .text:0x00006F28; // type:function size:0xCF4 +fn_1_7C1C = .text:0x00007C1C; // type:function size:0x924 +fn_1_8540 = .text:0x00008540; // type:function size:0x6C +fn_1_85AC = .text:0x000085AC; // type:function size:0x70 +fn_1_861C = .text:0x0000861C; // type:function size:0x1F8 +fn_1_8814 = .text:0x00008814; // type:function size:0x200 +fn_1_8A14 = .text:0x00008A14; // type:function size:0x2A0 +fn_1_8CB4 = .text:0x00008CB4; // type:function size:0x288 +fn_1_8F3C = .text:0x00008F3C; // type:function size:0x130 +fn_1_906C = .text:0x0000906C; // type:function size:0x350 +fn_1_93BC = .text:0x000093BC; // type:function size:0x15B8 +fn_1_A974 = .text:0x0000A974; // type:function size:0x8C +fn_1_AA00 = .text:0x0000AA00; // type:function size:0x1C +fn_1_AA1C = .text:0x0000AA1C; // type:function size:0x2AC +fn_1_ACC8 = .text:0x0000ACC8; // type:function size:0x260 +fn_1_AF28 = .text:0x0000AF28; // type:function size:0x26C +_prolog = .text:0x0000B194; // type:function size:0x54 scope:global +_epilog = .text:0x0000B1E8; // type:function size:0x4C scope:global +fn_1_B234 = .text:0x0000B234; // type:function size:0x224 +fn_1_B458 = .text:0x0000B458; // type:function size:0xC0 +fn_1_B518 = .text:0x0000B518; // type:function size:0x2CC +fn_1_B7E4 = .text:0x0000B7E4; // type:function size:0x190 +fn_1_B974 = .text:0x0000B974; // type:function size:0x134 +fn_1_BAA8 = .text:0x0000BAA8; // type:function size:0x460 +fn_1_BF08 = .text:0x0000BF08; // type:function size:0x94 +fn_1_BF9C = .text:0x0000BF9C; // type:function size:0x3A0 +fn_1_C33C = .text:0x0000C33C; // type:function size:0x3E8 +fn_1_C724 = .text:0x0000C724; // type:function size:0x9BC +fn_1_D0E0 = .text:0x0000D0E0; // type:function size:0x90C +fn_1_D9EC = .text:0x0000D9EC; // type:function size:0x9C8 +fn_1_E3B4 = .text:0x0000E3B4; // type:function size:0x630 +fn_1_E9E4 = .text:0x0000E9E4; // type:function size:0x298 +fn_1_EC7C = .text:0x0000EC7C; // type:function size:0x90 +fn_1_ED0C = .text:0x0000ED0C; // type:function size:0x1544 +fn_1_10250 = .text:0x00010250; // type:function size:0xA7C +fn_1_10CCC = .text:0x00010CCC; // type:function size:0x724 +fn_1_113F0 = .text:0x000113F0; // type:function size:0x4 +fn_1_113F4 = .text:0x000113F4; // type:function size:0x140C +fn_1_12800 = .text:0x00012800; // type:function size:0x4 +fn_1_12804 = .text:0x00012804; // type:function size:0xC4 +fn_1_128C8 = .text:0x000128C8; // type:function size:0x5E0 +fn_1_12EA8 = .text:0x00012EA8; // type:function size:0x300 +fn_1_131A8 = .text:0x000131A8; // type:function size:0x2178 +fn_1_15320 = .text:0x00015320; // type:function size:0x9C +fn_1_153BC = .text:0x000153BC; // type:function size:0xDA0 +fn_1_1615C = .text:0x0001615C; // type:function size:0x104 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // 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:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 +lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x20 data:float +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0xC +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0xC +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x4 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0xC +lbl_1_data_FC = .data:0x000000FC; // type:object size:0xC +lbl_1_data_108 = .data:0x00000108; // type:object size:0x160 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x20 +lbl_1_data_288 = .data:0x00000288; // type:object size:0x24 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x24 +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x24 +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x24 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x3C +lbl_1_data_354 = .data:0x00000354; // type:object size:0x18 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x18 +lbl_1_data_384 = .data:0x00000384; // type:object size:0xB data:string +lbl_1_data_38F = .data:0x0000038F; // type:object size:0xB data:string +lbl_1_data_39A = .data:0x0000039A; // type:object size:0xB data:string +lbl_1_data_3A5 = .data:0x000003A5; // type:object size:0xB data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0xB data:string +lbl_1_data_3BB = .data:0x000003BB; // type:object size:0xB data:string +lbl_1_data_3C6 = .data:0x000003C6; // type:object size:0xB data:string +lbl_1_data_3D1 = .data:0x000003D1; // type:object size:0xB data:string +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x20 +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0xB data:string +lbl_1_data_407 = .data:0x00000407; // type:object size:0xB data:string +lbl_1_data_412 = .data:0x00000412; // type:object size:0xB data:string +lbl_1_data_41D = .data:0x0000041D; // type:object size:0xB data:string +lbl_1_data_428 = .data:0x00000428; // type:object size:0xB data:string +lbl_1_data_433 = .data:0x00000433; // type:object size:0xD +lbl_1_data_440 = .data:0x00000440; // type:object size:0x18 data:4byte +lbl_1_data_458 = .data:0x00000458; // type:object size:0xB data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0xB data:string +lbl_1_data_46E = .data:0x0000046E; // type:object size:0xB data:string +lbl_1_data_479 = .data:0x00000479; // type:object size:0xB data:string +lbl_1_data_484 = .data:0x00000484; // type:object size:0xB data:string +lbl_1_data_48F = .data:0x0000048F; // type:object size:0xB data:string +lbl_1_data_49A = .data:0x0000049A; // type:object size:0xB data:string +lbl_1_data_4A5 = .data:0x000004A5; // type:object size:0xB data:string +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0xB data:string +lbl_1_data_4BB = .data:0x000004BB; // type:object size:0xD +lbl_1_data_4C8 = .data:0x000004C8; // type:object size:0x28 data:4byte +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x14 +lbl_1_data_504 = .data:0x00000504; // type:object size:0x24 +lbl_1_data_528 = .data:0x00000528; // type:object size:0x8 +lbl_1_data_530 = .data:0x00000530; // type:object size:0xB data:string +lbl_1_data_53B = .data:0x0000053B; // type:object size:0xB data:string +lbl_1_data_546 = .data:0x00000546; // type:object size:0xB data:string +lbl_1_data_551 = .data:0x00000551; // type:object size:0xB data:string +lbl_1_data_55C = .data:0x0000055C; // type:object size:0xB data:string +lbl_1_data_567 = .data:0x00000567; // type:object size:0xB data:string +lbl_1_data_572 = .data:0x00000572; // type:object size:0xB data:string +lbl_1_data_57D = .data:0x0000057D; // type:object size:0xB data:string +lbl_1_data_588 = .data:0x00000588; // type:object size:0xB data:string +lbl_1_data_593 = .data:0x00000593; // type:object size:0xB data:string +lbl_1_data_59E = .data:0x0000059E; // type:object size:0xB data:string +lbl_1_data_5A9 = .data:0x000005A9; // type:object size:0xB data:string +lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0xB data:string +lbl_1_data_5BF = .data:0x000005BF; // type:object size:0xB data:string +lbl_1_data_5CA = .data:0x000005CA; // type:object size:0xB data:string +lbl_1_data_5D5 = .data:0x000005D5; // type:object size:0xB data:string +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0xC +lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x8B8 +lbl_1_data_EA4 = .data:0x00000EA4; // type:object size:0xB data:string +lbl_1_data_EAF = .data:0x00000EAF; // type:object size:0xB data:string +lbl_1_data_EBA = .data:0x00000EBA; // type:object size:0xB data:string +lbl_1_data_EC5 = .data:0x00000EC5; // type:object size:0xB data:string +lbl_1_data_ED0 = .data:0x00000ED0; // type:object size:0xC +lbl_1_data_EDC = .data:0x00000EDC; // type:object size:0x8B8 +lbl_1_data_1794 = .data:0x00001794; // type:object size:0x20 +lbl_1_data_17B4 = .data:0x000017B4; // type:object size:0x20 +lbl_1_data_17D4 = .data:0x000017D4; // type:object size:0x20 data:float +lbl_1_data_17F4 = .data:0x000017F4; // type:object size:0x20 +lbl_1_data_1814 = .data:0x00001814; // type:object size:0x50 +lbl_1_data_1864 = .data:0x00001864; // type:object size:0x11 data:string +lbl_1_data_1875 = .data:0x00001875; // type:object size:0x11 data:string +lbl_1_data_1886 = .data:0x00001886; // type:object size:0x11 data:string +lbl_1_data_1897 = .data:0x00001897; // type:object size:0x18 data:string +lbl_1_data_18AF = .data:0x000018AF; // type:object size:0xB data:string +lbl_1_data_18BA = .data:0x000018BA; // type:object size:0x18 data:string +lbl_1_data_18D2 = .data:0x000018D2; // type:object size:0xC data:string +lbl_1_data_18DE = .data:0x000018DE; // type:object size:0x6 data:string +lbl_1_data_18E4 = .data:0x000018E4; // type:object size:0x21 data:string +lbl_1_data_1905 = .data:0x00001905; // type:object size:0x1F +jumptable_1_data_1924 = .data:0x00001924; // type:object size:0x1C scope:local +jumptable_1_data_1940 = .data:0x00001940; // type:object size:0x44 scope:local +lbl_1_data_1984 = .data:0x00001984; // type:object size:0xB data:string +lbl_1_data_198F = .data:0x0000198F; // type:object size:0x1D +jumptable_1_data_19AC = .data:0x000019AC; // type:object size:0x28 scope:local +lbl_1_data_19D4 = .data:0x000019D4; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x3F0 data:float +lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x4 data:float +lbl_1_bss_3F4 = .bss:0x000003F4; // type:object size:0x4 data:4byte +lbl_1_bss_3F8 = .bss:0x000003F8; // type:object size:0x4 data:4byte +lbl_1_bss_3FC = .bss:0x000003FC; // type:object size:0x4 data:4byte +lbl_1_bss_400 = .bss:0x00000400; // type:object size:0x2 data:2byte +lbl_1_bss_402 = .bss:0x00000402; // type:object size:0x2 data:2byte +lbl_1_bss_404 = .bss:0x00000404; // type:object size:0x2 data:2byte +lbl_1_bss_408 = .bss:0x00000408; // type:object size:0x8 data:4byte +lbl_1_bss_410 = .bss:0x00000410; // type:object size:0x4 data:4byte +lbl_1_bss_414 = .bss:0x00000414; // type:object size:0x4 data:4byte +lbl_1_bss_418 = .bss:0x00000418; // type:object size:0x4 data:4byte +lbl_1_bss_41C = .bss:0x0000041C; // type:object size:0x4 data:4byte +lbl_1_bss_420 = .bss:0x00000420; // type:object size:0x4 data:float +lbl_1_bss_424 = .bss:0x00000424; // type:object size:0x4 data:4byte +lbl_1_bss_428 = .bss:0x00000428; // type:object size:0x100 +lbl_1_bss_528 = .bss:0x00000528; // type:object size:0x40 data:4byte +lbl_1_bss_568 = .bss:0x00000568; // type:object size:0x4 data:float +lbl_1_bss_56C = .bss:0x0000056C; // type:object size:0x4 data:4byte +lbl_1_bss_570 = .bss:0x00000570; // type:object size:0x4 data:4byte +lbl_1_bss_574 = .bss:0x00000574; // type:object size:0x2 data:2byte +lbl_1_bss_576 = .bss:0x00000576; // type:object size:0x2 data:2byte +lbl_1_bss_578 = .bss:0x00000578; // type:object size:0x4 data:4byte +lbl_1_bss_57C = .bss:0x0000057C; // type:object size:0x4 data:4byte +lbl_1_bss_580 = .bss:0x00000580; // type:object size:0x4 data:4byte +lbl_1_bss_584 = .bss:0x00000584; // type:object size:0xC data:float +lbl_1_bss_590 = .bss:0x00000590; // type:object size:0xC data:4byte +lbl_1_bss_59C = .bss:0x0000059C; // type:object size:0xC data:float +lbl_1_bss_5A8 = .bss:0x000005A8; // type:object size:0xC data:4byte +lbl_1_bss_5B4 = .bss:0x000005B4; // type:object size:0x4 data:4byte +lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x18 data:4byte +lbl_1_bss_5D0 = .bss:0x000005D0; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m433Dll/splits.txt b/config/GMPJ01_00/rels/m433Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m433Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m433Dll/symbols.txt b/config/GMPJ01_00/rels/m433Dll/symbols.txt new file mode 100644 index 00000000..1d318f59 --- /dev/null +++ b/config/GMPJ01_00/rels/m433Dll/symbols.txt @@ -0,0 +1,472 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x420 +fn_1_4C0 = .text:0x000004C0; // type:function size:0xC4 +fn_1_584 = .text:0x00000584; // type:function size:0x94 +fn_1_618 = .text:0x00000618; // type:function size:0x180 +fn_1_798 = .text:0x00000798; // type:function size:0x33C +fn_1_AD4 = .text:0x00000AD4; // type:function size:0x358 +fn_1_E2C = .text:0x00000E2C; // type:function size:0x214 +fn_1_1040 = .text:0x00001040; // type:function size:0x3BC +fn_1_13FC = .text:0x000013FC; // type:function size:0x2D4 +fn_1_16D0 = .text:0x000016D0; // type:function size:0x36C +fn_1_1A3C = .text:0x00001A3C; // type:function size:0xC +fn_1_1A48 = .text:0x00001A48; // type:function size:0x6F4 +fn_1_213C = .text:0x0000213C; // type:function size:0x18 +fn_1_2154 = .text:0x00002154; // type:function size:0x18 +fn_1_216C = .text:0x0000216C; // type:function size:0x18 +fn_1_2184 = .text:0x00002184; // type:function size:0x18 +fn_1_219C = .text:0x0000219C; // type:function size:0x30 +fn_1_21CC = .text:0x000021CC; // type:function size:0x18 +fn_1_21E4 = .text:0x000021E4; // type:function size:0x30 +fn_1_2214 = .text:0x00002214; // type:function size:0x30 +fn_1_2244 = .text:0x00002244; // type:function size:0x38 +fn_1_227C = .text:0x0000227C; // type:function size:0x208 +fn_1_2484 = .text:0x00002484; // type:function size:0x240 +fn_1_26C4 = .text:0x000026C4; // type:function size:0x11C +fn_1_27E0 = .text:0x000027E0; // type:function size:0xB4 +fn_1_2894 = .text:0x00002894; // type:function size:0xF0 +fn_1_2984 = .text:0x00002984; // type:function size:0x20 +fn_1_29A4 = .text:0x000029A4; // type:function size:0x120 +fn_1_2AC4 = .text:0x00002AC4; // type:function size:0x21C +fn_1_2CE0 = .text:0x00002CE0; // type:function size:0x5EC +fn_1_32CC = .text:0x000032CC; // type:function size:0x6E0 +fn_1_39AC = .text:0x000039AC; // type:function size:0x270 +fn_1_3C1C = .text:0x00003C1C; // type:function size:0x240 +fn_1_3E5C = .text:0x00003E5C; // type:function size:0xB8 +fn_1_3F14 = .text:0x00003F14; // type:function size:0xB80 +fn_1_4A94 = .text:0x00004A94; // type:function size:0x10C +fn_1_4BA0 = .text:0x00004BA0; // type:function size:0x334 +fn_1_4ED4 = .text:0x00004ED4; // type:function size:0xEC +fn_1_4FC0 = .text:0x00004FC0; // type:function size:0x28 +fn_1_4FE8 = .text:0x00004FE8; // type:function size:0x80 +fn_1_5068 = .text:0x00005068; // type:function size:0x40 +fn_1_50A8 = .text:0x000050A8; // type:function size:0xA0 +fn_1_5148 = .text:0x00005148; // type:function size:0x94 +fn_1_51DC = .text:0x000051DC; // type:function size:0x84 +fn_1_5260 = .text:0x00005260; // type:function size:0x54 +fn_1_52B4 = .text:0x000052B4; // type:function size:0x168 +fn_1_541C = .text:0x0000541C; // type:function size:0x120 +fn_1_553C = .text:0x0000553C; // type:function size:0x39C +fn_1_58D8 = .text:0x000058D8; // type:function size:0x2C +fn_1_5904 = .text:0x00005904; // type:function size:0x270 +fn_1_5B74 = .text:0x00005B74; // type:function size:0x24 +fn_1_5B98 = .text:0x00005B98; // type:function size:0x4D8 +fn_1_6070 = .text:0x00006070; // type:function size:0x50 +fn_1_60C0 = .text:0x000060C0; // type:function size:0x76C +fn_1_682C = .text:0x0000682C; // type:function size:0xA00 +fn_1_722C = .text:0x0000722C; // type:function size:0x2A8 +fn_1_74D4 = .text:0x000074D4; // type:function size:0xF34 +fn_1_8408 = .text:0x00008408; // type:function size:0x334 +fn_1_873C = .text:0x0000873C; // type:function size:0x1FC +fn_1_8938 = .text:0x00008938; // type:function size:0x298 +fn_1_8BD0 = .text:0x00008BD0; // type:function size:0x3B0 +fn_1_8F80 = .text:0x00008F80; // type:function size:0x708 +fn_1_9688 = .text:0x00009688; // type:function size:0xF90 +fn_1_A618 = .text:0x0000A618; // type:function size:0x570 +fn_1_AB88 = .text:0x0000AB88; // type:function size:0x60C +fn_1_B194 = .text:0x0000B194; // type:function size:0x340 +fn_1_B4D4 = .text:0x0000B4D4; // type:function size:0x20C +fn_1_B6E0 = .text:0x0000B6E0; // type:function size:0xCC +fn_1_B7AC = .text:0x0000B7AC; // type:function size:0x8C +fn_1_B838 = .text:0x0000B838; // type:function size:0x2A8 +fn_1_BAE0 = .text:0x0000BAE0; // type:function size:0x268 +fn_1_BD48 = .text:0x0000BD48; // type:function size:0x4F8 +fn_1_C240 = .text:0x0000C240; // type:function size:0x46C +fn_1_C6AC = .text:0x0000C6AC; // type:function size:0x4 +fn_1_C6B0 = .text:0x0000C6B0; // type:function size:0x4E8 +fn_1_CB98 = .text:0x0000CB98; // type:function size:0x220 +fn_1_CDB8 = .text:0x0000CDB8; // type:function size:0x3C8 +fn_1_D180 = .text:0x0000D180; // type:function size:0x1B8 +fn_1_D338 = .text:0x0000D338; // type:function size:0x1A8 +fn_1_D4E0 = .text:0x0000D4E0; // type:function size:0x1C8 +fn_1_D6A8 = .text:0x0000D6A8; // type:function size:0x1E0 +fn_1_D888 = .text:0x0000D888; // type:function size:0x4E8 +fn_1_DD70 = .text:0x0000DD70; // type:function size:0xB8 +fn_1_DE28 = .text:0x0000DE28; // type:function size:0x11C +fn_1_DF44 = .text:0x0000DF44; // type:function size:0xA0 +fn_1_DFE4 = .text:0x0000DFE4; // type:function size:0x138 +fn_1_E11C = .text:0x0000E11C; // type:function size:0x4A4 +fn_1_E5C0 = .text:0x0000E5C0; // type:function size:0x4CC +fn_1_EA8C = .text:0x0000EA8C; // type:function size:0x158 +fn_1_EBE4 = .text:0x0000EBE4; // type:function size:0x118 +fn_1_ECFC = .text:0x0000ECFC; // type:function size:0x1168 +fn_1_FE64 = .text:0x0000FE64; // type:function size:0x28 +fn_1_FE8C = .text:0x0000FE8C; // type:function size:0x2A4 +fn_1_10130 = .text:0x00010130; // type:function size:0x130 +fn_1_10260 = .text:0x00010260; // type:function size:0x3B4 +fn_1_10614 = .text:0x00010614; // type:function size:0xF8 +fn_1_1070C = .text:0x0001070C; // type:function size:0x34 +fn_1_10740 = .text:0x00010740; // type:function size:0x70 +fn_1_107B0 = .text:0x000107B0; // type:function size:0x98 +fn_1_10848 = .text:0x00010848; // type:function size:0x30 +fn_1_10878 = .text:0x00010878; // type:function size:0x4C +fn_1_108C4 = .text:0x000108C4; // type:function size:0x3C +fn_1_10900 = .text:0x00010900; // type:function size:0x28 +fn_1_10928 = .text:0x00010928; // type:function size:0x1F8 +fn_1_10B20 = .text:0x00010B20; // type:function size:0x204 +fn_1_10D24 = .text:0x00010D24; // type:function size:0x180 +fn_1_10EA4 = .text:0x00010EA4; // type:function size:0x28 +fn_1_10ECC = .text:0x00010ECC; // type:function size:0x34 +fn_1_10F00 = .text:0x00010F00; // type:function size:0x38 +fn_1_10F38 = .text:0x00010F38; // type:function size:0x34 +fn_1_10F6C = .text:0x00010F6C; // type:function size:0x38 +fn_1_10FA4 = .text:0x00010FA4; // type:function size:0x38 +fn_1_10FDC = .text:0x00010FDC; // type:function size:0x28 +fn_1_11004 = .text:0x00011004; // type:function size:0x5C +fn_1_11060 = .text:0x00011060; // type:function size:0x38 +fn_1_11098 = .text:0x00011098; // type:function size:0x98 +fn_1_11130 = .text:0x00011130; // type:function size:0x1B0 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x10 data:4byte +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:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0xC0 +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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:0x8 data:double +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_214 = .rodata:0x00000214; // 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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 data:4byte +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 data:4byte +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 data:4byte +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:4byte +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 data:double +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x24 data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:4byte +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x8 data:4byte +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:4byte +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float +lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x4 data:float +lbl_1_rodata_674 = .rodata:0x00000674; // type:object size:0x4 data:float +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float +lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 data:float +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float +lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float +lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x8 data:double +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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0xC data:float +lbl_1_data_58 = .data:0x00000058; // type:object size:0x50 data:float +jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x1C data:4byte +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x38 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x38 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 +lbl_1_data_180 = .data:0x00000180; // type:object size:0x44 +lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x44 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x44 +lbl_1_data_24C = .data:0x0000024C; // type:object size:0x1A4 +lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x38 +lbl_1_data_428 = .data:0x00000428; // type:object size:0x9 data:string +lbl_1_data_431 = .data:0x00000431; // type:object size:0x9 data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0xB data:string +lbl_1_data_445 = .data:0x00000445; // type:object size:0xB data:string +lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 +lbl_1_data_468 = .data:0x00000468; // type:object size:0x24 +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x48 +lbl_1_data_4D4 = .data:0x000004D4; // type:object size:0x6C +lbl_1_data_540 = .data:0x00000540; // type:object size:0x24 +lbl_1_data_564 = .data:0x00000564; // type:object size:0x2 data:string +lbl_1_data_566 = .data:0x00000566; // type:object size:0x15 data:string +lbl_1_data_57B = .data:0x0000057B; // type:object size:0x15 data:string +lbl_1_data_590 = .data:0x00000590; // type:object size:0x15 data:string +lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x15 data:string +lbl_1_data_5BA = .data:0x000005BA; // type:object size:0x18 data:string +lbl_1_data_5D2 = .data:0x000005D2; // type:object size:0x18 data:string +lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 data:string +lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 data:string +lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 data:string +lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 data:string +lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 +jumptable_1_data_654 = .data:0x00000654; // type:object size:0x20 scope:local +lbl_1_data_674 = .data:0x00000674; // type:object size:0xC +lbl_1_data_680 = .data:0x00000680; // type:object size:0x8 +lbl_1_data_688 = .data:0x00000688; // type:object size:0x28 +lbl_1_data_6B0 = .data:0x000006B0; // type:object size:0x10 +lbl_1_data_6C0 = .data:0x000006C0; // type:object size:0xB0 data:4byte +lbl_1_data_770 = .data:0x00000770; // type:object size:0x24 +lbl_1_data_794 = .data:0x00000794; // type:object size:0x6C +lbl_1_data_800 = .data:0x00000800; // type:object size:0x24 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xA data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0xC data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x6F0 +lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x80 +lbl_1_bss_7A8 = .bss:0x000007A8; // type:object size:0x4 data:4byte +lbl_1_bss_7AC = .bss:0x000007AC; // type:object size:0x4 data:4byte +lbl_1_bss_7B0 = .bss:0x000007B0; // type:object size:0x8 data:4byte +lbl_1_bss_7B8 = .bss:0x000007B8; // type:object size:0x10 +lbl_1_bss_7C8 = .bss:0x000007C8; // type:object size:0x4 data:4byte +lbl_1_bss_7CC = .bss:0x000007CC; // type:object size:0x4 data:4byte +lbl_1_bss_7D0 = .bss:0x000007D0; // type:object size:0x14 diff --git a/config/GMPJ01_00/rels/m434Dll/splits.txt b/config/GMPJ01_00/rels/m434Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m434Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m434Dll/symbols.txt b/config/GMPJ01_00/rels/m434Dll/symbols.txt new file mode 100644 index 00000000..6e8050dc --- /dev/null +++ b/config/GMPJ01_00/rels/m434Dll/symbols.txt @@ -0,0 +1,337 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x45C +fn_1_4FC = .text:0x000004FC; // type:function size:0x5C +fn_1_558 = .text:0x00000558; // type:function size:0x70C +fn_1_C64 = .text:0x00000C64; // type:function size:0x64 +fn_1_CC8 = .text:0x00000CC8; // type:function size:0x17C +fn_1_E44 = .text:0x00000E44; // type:function size:0x278 +fn_1_10BC = .text:0x000010BC; // type:function size:0x38 +fn_1_10F4 = .text:0x000010F4; // type:function size:0x10 +fn_1_1104 = .text:0x00001104; // type:function size:0x4C +fn_1_1150 = .text:0x00001150; // type:function size:0x320 +fn_1_1470 = .text:0x00001470; // type:function size:0x1C8 +fn_1_1638 = .text:0x00001638; // type:function size:0x4C +fn_1_1684 = .text:0x00001684; // type:function size:0x30 +fn_1_16B4 = .text:0x000016B4; // type:function size:0x24 +fn_1_16D8 = .text:0x000016D8; // type:function size:0xB0 +fn_1_1788 = .text:0x00001788; // type:function size:0xB0 +fn_1_1838 = .text:0x00001838; // type:function size:0x118 +fn_1_1950 = .text:0x00001950; // type:function size:0xB0 +fn_1_1A00 = .text:0x00001A00; // type:function size:0x10 +fn_1_1A10 = .text:0x00001A10; // type:function size:0x234 +fn_1_1C44 = .text:0x00001C44; // type:function size:0x44 +fn_1_1C88 = .text:0x00001C88; // type:function size:0x30 +fn_1_1CB8 = .text:0x00001CB8; // type:function size:0x8C +fn_1_1D44 = .text:0x00001D44; // type:function size:0x10 +fn_1_1D54 = .text:0x00001D54; // type:function size:0x10 +fn_1_1D64 = .text:0x00001D64; // type:function size:0x10 +fn_1_1D74 = .text:0x00001D74; // type:function size:0x18 +fn_1_1D8C = .text:0x00001D8C; // type:function size:0x10 +fn_1_1D9C = .text:0x00001D9C; // type:function size:0x14 +fn_1_1DB0 = .text:0x00001DB0; // type:function size:0x94 +fn_1_1E44 = .text:0x00001E44; // type:function size:0x20 +fn_1_1E64 = .text:0x00001E64; // type:function size:0x7A4 +fn_1_2608 = .text:0x00002608; // type:function size:0x9C +fn_1_26A4 = .text:0x000026A4; // type:function size:0x24C +fn_1_28F0 = .text:0x000028F0; // type:function size:0x88 +fn_1_2978 = .text:0x00002978; // type:function size:0x68C +fn_1_3004 = .text:0x00003004; // type:function size:0x124 +fn_1_3128 = .text:0x00003128; // type:function size:0x1B4 +fn_1_32DC = .text:0x000032DC; // type:function size:0xC8 +fn_1_33A4 = .text:0x000033A4; // type:function size:0xF8 +fn_1_349C = .text:0x0000349C; // type:function size:0xF8 +fn_1_3594 = .text:0x00003594; // type:function size:0x734 +fn_1_3CC8 = .text:0x00003CC8; // type:function size:0x6E4 +fn_1_43AC = .text:0x000043AC; // type:function size:0x90 +fn_1_443C = .text:0x0000443C; // type:function size:0x3B0 +fn_1_47EC = .text:0x000047EC; // type:function size:0x68 +fn_1_4854 = .text:0x00004854; // type:function size:0x110 +fn_1_4964 = .text:0x00004964; // type:function size:0x24 +fn_1_4988 = .text:0x00004988; // type:function size:0x46C +fn_1_4DF4 = .text:0x00004DF4; // type:function size:0x5C +fn_1_4E50 = .text:0x00004E50; // type:function size:0xC60 +fn_1_5AB0 = .text:0x00005AB0; // type:function size:0x13C +fn_1_5BEC = .text:0x00005BEC; // type:function size:0xAC +fn_1_5C98 = .text:0x00005C98; // type:function size:0x414 +fn_1_60AC = .text:0x000060AC; // type:function size:0x19C +fn_1_6248 = .text:0x00006248; // type:function size:0x74 +fn_1_62BC = .text:0x000062BC; // type:function size:0x1E0 +fn_1_649C = .text:0x0000649C; // type:function size:0x24 +fn_1_64C0 = .text:0x000064C0; // type:function size:0x1D0 +fn_1_6690 = .text:0x00006690; // type:function size:0x11C +fn_1_67AC = .text:0x000067AC; // type:function size:0xB4 +fn_1_6860 = .text:0x00006860; // type:function size:0x224 +fn_1_6A84 = .text:0x00006A84; // type:function size:0x4 +fn_1_6A88 = .text:0x00006A88; // type:function size:0x2F4 +fn_1_6D7C = .text:0x00006D7C; // type:function size:0x3C +fn_1_6DB8 = .text:0x00006DB8; // type:function size:0x4 +fn_1_6DBC = .text:0x00006DBC; // type:function size:0x1034 +fn_1_7DF0 = .text:0x00007DF0; // type:function size:0x464 +fn_1_8254 = .text:0x00008254; // type:function size:0x174 +fn_1_83C8 = .text:0x000083C8; // type:function size:0x108 +fn_1_84D0 = .text:0x000084D0; // type:function size:0xF4 +fn_1_85C4 = .text:0x000085C4; // type:function size:0x2C0 +fn_1_8884 = .text:0x00008884; // type:function size:0x268 +fn_1_8AEC = .text:0x00008AEC; // type:function size:0x6C +fn_1_8B58 = .text:0x00008B58; // type:function size:0xBC +fn_1_8C14 = .text:0x00008C14; // type:function size:0x164 +fn_1_8D78 = .text:0x00008D78; // type:function size:0xB4 +fn_1_8E2C = .text:0x00008E2C; // type:function size:0x110 +fn_1_8F3C = .text:0x00008F3C; // type:function size:0x64 +fn_1_8FA0 = .text:0x00008FA0; // type:function size:0x1EC +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // 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:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x10 data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0xC data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC data:4byte +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x48 +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x48 +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:4byte +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x48 +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x48 +lbl_1_data_0 = .data:0x00000000; // type:object size:0xC data:float +lbl_1_data_C = .data:0x0000000C; // type:object size:0x18 data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x28 +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x4 data:4byte +lbl_1_data_74 = .data:0x00000074; // type:object size:0x12 data:string +lbl_1_data_86 = .data:0x00000086; // type:object size:0x1E +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xC +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x30 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x10 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x34 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x5 data:string +lbl_1_data_139 = .data:0x00000139; // type:object size:0x7 data:byte +lbl_1_data_140 = .data:0x00000140; // type:object size:0x18 +lbl_1_data_158 = .data:0x00000158; // type:object size:0x1C +lbl_1_data_174 = .data:0x00000174; // type:object size:0x1 data:byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x8 data:byte +lbl_1_data_180 = .data:0x00000180; // type:object size:0x10 +lbl_1_data_190 = .data:0x00000190; // type:object size:0x20 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2C +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x18 +lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x28 +lbl_1_data_224 = .data:0x00000224; // type:object size:0x90 +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 data:string +lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 data:string +lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x6 +lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x380 +lbl_1_bss_39C = .bss:0x0000039C; // type:object size:0x4 data:4byte +lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x8 +lbl_1_bss_3A8 = .bss:0x000003A8; // type:object size:0x2 data:2byte +lbl_1_bss_3AA = .bss:0x000003AA; // type:object size:0x2 data:2byte +lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x2 data:2byte +lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x8 data:2byte +lbl_1_bss_3B8 = .bss:0x000003B8; // type:object size:0x4 data:4byte +lbl_1_bss_3BC = .bss:0x000003BC; // type:object size:0x4 data:4byte +lbl_1_bss_3C0 = .bss:0x000003C0; // type:object size:0x2 data:2byte +lbl_1_bss_3C2 = .bss:0x000003C2; // type:object size:0x2 data:2byte +lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x8 data:4byte +lbl_1_bss_3CC = .bss:0x000003CC; // type:object size:0x4 data:4byte +lbl_1_bss_3D0 = .bss:0x000003D0; // type:object size:0x4 data:4byte +lbl_1_bss_3D4 = .bss:0x000003D4; // type:object size:0x1C data:4byte +lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x50 data:4byte +lbl_1_bss_440 = .bss:0x00000440; // type:object size:0x10 data:4byte +lbl_1_bss_450 = .bss:0x00000450; // type:object size:0x8 data:4byte +lbl_1_bss_458 = .bss:0x00000458; // type:object size:0x4 data:4byte +lbl_1_bss_45C = .bss:0x0000045C; // type:object size:0x8 data:4byte +lbl_1_bss_464 = .bss:0x00000464; // type:object size:0x2000 data:float +lbl_1_bss_2464 = .bss:0x00002464; // type:object size:0x4 data:4byte +lbl_1_bss_2468 = .bss:0x00002468; // type:object size:0x400 data:2byte +lbl_1_bss_2868 = .bss:0x00002868; // type:object size:0x3000 data:float +lbl_1_bss_5868 = .bss:0x00005868; // type:object size:0x8 data:4byte +lbl_1_bss_5870 = .bss:0x00005870; // type:object size:0x10 +lbl_1_bss_5880 = .bss:0x00005880; // type:object size:0x800 +lbl_1_bss_6080 = .bss:0x00006080; // type:object size:0x400 +lbl_1_bss_6480 = .bss:0x00006480; // type:object size:0x1000 +lbl_1_bss_7480 = .bss:0x00007480; // type:object size:0x400 data:4byte +lbl_1_bss_7880 = .bss:0x00007880; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m435Dll/splits.txt b/config/GMPJ01_00/rels/m435Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m435Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m435Dll/symbols.txt b/config/GMPJ01_00/rels/m435Dll/symbols.txt new file mode 100644 index 00000000..f12299da --- /dev/null +++ b/config/GMPJ01_00/rels/m435Dll/symbols.txt @@ -0,0 +1,471 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x1A8 +fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 +fn_1_230 = .text:0x00000230; // type:function size:0x68 +fn_1_298 = .text:0x00000298; // type:function size:0x6C +fn_1_304 = .text:0x00000304; // type:function size:0x130 +fn_1_434 = .text:0x00000434; // type:function size:0x3E4 +fn_1_818 = .text:0x00000818; // type:function size:0x8C +fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 +fn_1_8C4 = .text:0x000008C4; // type:function size:0x20 +fn_1_8E4 = .text:0x000008E4; // type:function size:0x48 +fn_1_92C = .text:0x0000092C; // type:function size:0x6B0 +fn_1_FDC = .text:0x00000FDC; // type:function size:0x134 +fn_1_1110 = .text:0x00001110; // type:function size:0xC4 +fn_1_11D4 = .text:0x000011D4; // type:function size:0x644 +fn_1_1818 = .text:0x00001818; // type:function size:0x24 +fn_1_183C = .text:0x0000183C; // type:function size:0x458 +fn_1_1C94 = .text:0x00001C94; // type:function size:0x1EC +fn_1_1E80 = .text:0x00001E80; // type:function size:0x1EC +fn_1_206C = .text:0x0000206C; // type:function size:0x458 +fn_1_24C4 = .text:0x000024C4; // type:function size:0x68 +fn_1_252C = .text:0x0000252C; // type:function size:0x68 +fn_1_2594 = .text:0x00002594; // type:function size:0xE8 +fn_1_267C = .text:0x0000267C; // type:function size:0x11C +fn_1_2798 = .text:0x00002798; // type:function size:0x84 +fn_1_281C = .text:0x0000281C; // type:function size:0x70 +fn_1_288C = .text:0x0000288C; // type:function size:0x38 +fn_1_28C4 = .text:0x000028C4; // type:function size:0x24 +fn_1_28E8 = .text:0x000028E8; // type:function size:0x38 +fn_1_2920 = .text:0x00002920; // type:function size:0x1D0 +fn_1_2AF0 = .text:0x00002AF0; // type:function size:0x64 +fn_1_2B54 = .text:0x00002B54; // type:function size:0xA8 +fn_1_2BFC = .text:0x00002BFC; // type:function size:0x20 +fn_1_2C1C = .text:0x00002C1C; // type:function size:0x5A0 +fn_1_31BC = .text:0x000031BC; // type:function size:0xCC +fn_1_3288 = .text:0x00003288; // type:function size:0x2D0 +fn_1_3558 = .text:0x00003558; // type:function size:0x59C +fn_1_3AF4 = .text:0x00003AF4; // type:function size:0x20 +fn_1_3B14 = .text:0x00003B14; // type:function size:0x370 +fn_1_3E84 = .text:0x00003E84; // type:function size:0x20 +fn_1_3EA4 = .text:0x00003EA4; // type:function size:0x260 +fn_1_4104 = .text:0x00004104; // type:function size:0x2C +fn_1_4130 = .text:0x00004130; // type:function size:0x5A8 +fn_1_46D8 = .text:0x000046D8; // type:function size:0x22C +fn_1_4904 = .text:0x00004904; // type:function size:0x3E8 +fn_1_4CEC = .text:0x00004CEC; // type:function size:0x11C +fn_1_4E08 = .text:0x00004E08; // type:function size:0x1AC +fn_1_4FB4 = .text:0x00004FB4; // type:function size:0x484 +fn_1_5438 = .text:0x00005438; // type:function size:0x1C8 +fn_1_5600 = .text:0x00005600; // type:function size:0x44 +fn_1_5644 = .text:0x00005644; // type:function size:0x1C18 +fn_1_725C = .text:0x0000725C; // type:function size:0x48 +fn_1_72A4 = .text:0x000072A4; // type:function size:0x384 +fn_1_7628 = .text:0x00007628; // type:function size:0x374 +fn_1_799C = .text:0x0000799C; // type:function size:0x24 +fn_1_79C0 = .text:0x000079C0; // type:function size:0xB8 +fn_1_7A78 = .text:0x00007A78; // type:function size:0xCC +fn_1_7B44 = .text:0x00007B44; // type:function size:0x1E4 +fn_1_7D28 = .text:0x00007D28; // type:function size:0x28 +fn_1_7D50 = .text:0x00007D50; // type:function size:0x24 +fn_1_7D74 = .text:0x00007D74; // type:function size:0x160 +fn_1_7ED4 = .text:0x00007ED4; // type:function size:0x37C +fn_1_8250 = .text:0x00008250; // type:function size:0x24 +fn_1_8274 = .text:0x00008274; // type:function size:0x2D0 +fn_1_8544 = .text:0x00008544; // type:function size:0x4C +fn_1_8590 = .text:0x00008590; // type:function size:0x1A4 +fn_1_8734 = .text:0x00008734; // type:function size:0x17C +fn_1_88B0 = .text:0x000088B0; // type:function size:0x598 +fn_1_8E48 = .text:0x00008E48; // type:function size:0x28 +fn_1_8E70 = .text:0x00008E70; // type:function size:0x58 +fn_1_8EC8 = .text:0x00008EC8; // type:function size:0x2C +fn_1_8EF4 = .text:0x00008EF4; // type:function size:0x40 +fn_1_8F34 = .text:0x00008F34; // type:function size:0x18 +fn_1_8F4C = .text:0x00008F4C; // type:function size:0x150 +fn_1_909C = .text:0x0000909C; // type:function size:0x6CC +fn_1_9768 = .text:0x00009768; // type:function size:0x28 +fn_1_9790 = .text:0x00009790; // type:function size:0x94 +fn_1_9824 = .text:0x00009824; // type:function size:0x28 +fn_1_984C = .text:0x0000984C; // type:function size:0x380 +fn_1_9BCC = .text:0x00009BCC; // type:function size:0x3C +fn_1_9C08 = .text:0x00009C08; // type:function size:0x180 +fn_1_9D88 = .text:0x00009D88; // type:function size:0x1F4 +fn_1_9F7C = .text:0x00009F7C; // type:function size:0x1CC +fn_1_A148 = .text:0x0000A148; // type:function size:0x370 +fn_1_A4B8 = .text:0x0000A4B8; // type:function size:0x28 +fn_1_A4E0 = .text:0x0000A4E0; // type:function size:0x190 +fn_1_A670 = .text:0x0000A670; // type:function size:0x64 +fn_1_A6D4 = .text:0x0000A6D4; // type:function size:0x1F0 +fn_1_A8C4 = .text:0x0000A8C4; // type:function size:0x338 +fn_1_ABFC = .text:0x0000ABFC; // type:function size:0x160 +fn_1_AD5C = .text:0x0000AD5C; // type:function size:0x498 +fn_1_B1F4 = .text:0x0000B1F4; // type:function size:0x634 +fn_1_B828 = .text:0x0000B828; // type:function size:0x128 +fn_1_B950 = .text:0x0000B950; // type:function size:0x298 +fn_1_BBE8 = .text:0x0000BBE8; // type:function size:0xB0 +fn_1_BC98 = .text:0x0000BC98; // type:function size:0xD8 +fn_1_BD70 = .text:0x0000BD70; // type:function size:0xB0 +fn_1_BE20 = .text:0x0000BE20; // type:function size:0xB0 +fn_1_BED0 = .text:0x0000BED0; // type:function size:0xB0 +fn_1_BF80 = .text:0x0000BF80; // type:function size:0xE4 +fn_1_C064 = .text:0x0000C064; // type:function size:0xD8 +fn_1_C13C = .text:0x0000C13C; // type:function size:0xD8 +fn_1_C214 = .text:0x0000C214; // type:function size:0xD8 +fn_1_C2EC = .text:0x0000C2EC; // type:function size:0xD8 +fn_1_C3C4 = .text:0x0000C3C4; // type:function size:0xD8 +fn_1_C49C = .text:0x0000C49C; // type:function size:0xB0 +fn_1_C54C = .text:0x0000C54C; // type:function size:0xB0 +fn_1_C5FC = .text:0x0000C5FC; // type:function size:0x168 +fn_1_C764 = .text:0x0000C764; // type:function size:0x558 +fn_1_CCBC = .text:0x0000CCBC; // type:function size:0x3A0 +fn_1_D05C = .text:0x0000D05C; // type:function size:0x43C +fn_1_D498 = .text:0x0000D498; // type:function size:0x424 +fn_1_D8BC = .text:0x0000D8BC; // type:function size:0x8D4 +fn_1_E190 = .text:0x0000E190; // type:function size:0x4E0 +fn_1_E670 = .text:0x0000E670; // type:function size:0x3E4 +fn_1_EA54 = .text:0x0000EA54; // type:function size:0x340 +fn_1_ED94 = .text:0x0000ED94; // type:function size:0x448 +fn_1_F1DC = .text:0x0000F1DC; // type:function size:0x4 +fn_1_F1E0 = .text:0x0000F1E0; // type:function size:0x18C +fn_1_F36C = .text:0x0000F36C; // type:function size:0x3C +fn_1_F3A8 = .text:0x0000F3A8; // type:function size:0x5C +fn_1_F404 = .text:0x0000F404; // type:function size:0x78 +fn_1_F47C = .text:0x0000F47C; // type:function size:0x5C +fn_1_F4D8 = .text:0x0000F4D8; // type:function size:0x5C +fn_1_F534 = .text:0x0000F534; // type:function size:0x48 +fn_1_F57C = .text:0x0000F57C; // type:function size:0x3C +fn_1_F5B8 = .text:0x0000F5B8; // type:function size:0x80 +fn_1_F638 = .text:0x0000F638; // type:function size:0x64 +fn_1_F69C = .text:0x0000F69C; // type:function size:0x5C +fn_1_F6F8 = .text:0x0000F6F8; // type:function size:0x70 +fn_1_F768 = .text:0x0000F768; // type:function size:0x48 +fn_1_F7B0 = .text:0x0000F7B0; // type:function size:0xA8 +fn_1_F858 = .text:0x0000F858; // type:function size:0x44 +fn_1_F89C = .text:0x0000F89C; // type:function size:0x5C +fn_1_F8F8 = .text:0x0000F8F8; // type:function size:0x5C +fn_1_F954 = .text:0x0000F954; // type:function size:0x4 +fn_1_F958 = .text:0x0000F958; // type:function size:0x48 +fn_1_F9A0 = .text:0x0000F9A0; // type:function size:0x4C +fn_1_F9EC = .text:0x0000F9EC; // type:function size:0x5C +fn_1_FA48 = .text:0x0000FA48; // type:function size:0x108 +fn_1_FB50 = .text:0x0000FB50; // type:function size:0x5C +fn_1_FBAC = .text:0x0000FBAC; // type:function size:0xB0 +fn_1_FC5C = .text:0x0000FC5C; // type:function size:0x208 +fn_1_FE64 = .text:0x0000FE64; // type:function size:0x30 +fn_1_FE94 = .text:0x0000FE94; // type:function size:0x98 +fn_1_FF2C = .text:0x0000FF2C; // type:function size:0x808 +fn_1_10734 = .text:0x00010734; // type:function size:0x28 +fn_1_1075C = .text:0x0001075C; // type:function size:0xD8 +fn_1_10834 = .text:0x00010834; // type:function size:0xD8 +fn_1_1090C = .text:0x0001090C; // type:function size:0x108 +fn_1_10A14 = .text:0x00010A14; // type:function size:0x408 +fn_1_10E1C = .text:0x00010E1C; // type:function size:0x404 +fn_1_11220 = .text:0x00011220; // type:function size:0x488 +fn_1_116A8 = .text:0x000116A8; // type:function size:0x45C +fn_1_11B04 = .text:0x00011B04; // type:function size:0x478 +fn_1_11F7C = .text:0x00011F7C; // type:function size:0x4 +fn_1_11F80 = .text:0x00011F80; // type:function size:0x48 +fn_1_11FC8 = .text:0x00011FC8; // type:function size:0x9C +fn_1_12064 = .text:0x00012064; // type:function size:0x1AC +fn_1_12210 = .text:0x00012210; // type:function size:0x50 +fn_1_12260 = .text:0x00012260; // type:function size:0x48 +fn_1_122A8 = .text:0x000122A8; // type:function size:0x38 +fn_1_122E0 = .text:0x000122E0; // type:function size:0x134 +fn_1_12414 = .text:0x00012414; // type:function size:0x2C +fn_1_12440 = .text:0x00012440; // type:function size:0x134 +fn_1_12574 = .text:0x00012574; // type:function size:0x48 +fn_1_125BC = .text:0x000125BC; // type:function size:0x48 +fn_1_12604 = .text:0x00012604; // type:function size:0xF0 +fn_1_126F4 = .text:0x000126F4; // type:function size:0xC0 +fn_1_127B4 = .text:0x000127B4; // type:function size:0x5C +fn_1_12810 = .text:0x00012810; // type:function size:0x48 +fn_1_12858 = .text:0x00012858; // type:function size:0x100 +fn_1_12958 = .text:0x00012958; // type:function size:0x1F8 +fn_1_12B50 = .text:0x00012B50; // type:function size:0x3C +fn_1_12B8C = .text:0x00012B8C; // type:function size:0x5C +fn_1_12BE8 = .text:0x00012BE8; // type:function size:0x3C +fn_1_12C24 = .text:0x00012C24; // type:function size:0x5C +fn_1_12C80 = .text:0x00012C80; // type:function size:0x3C +fn_1_12CBC = .text:0x00012CBC; // type:function size:0x5C +fn_1_12D18 = .text:0x00012D18; // type:function size:0x230 +fn_1_12F48 = .text:0x00012F48; // type:function size:0xF4 +fn_1_1303C = .text:0x0001303C; // type:function size:0x4C +fn_1_13088 = .text:0x00013088; // type:function size:0x128 +fn_1_131B0 = .text:0x000131B0; // type:function size:0x40 +fn_1_131F0 = .text:0x000131F0; // type:function size:0x98 +fn_1_13288 = .text:0x00013288; // type:function size:0xB0 +fn_1_13338 = .text:0x00013338; // type:function size:0xAC +fn_1_133E4 = .text:0x000133E4; // type:function size:0x30 +fn_1_13414 = .text:0x00013414; // type:function size:0x98 +fn_1_134AC = .text:0x000134AC; // type:function size:0xF4 +fn_1_135A0 = .text:0x000135A0; // type:function size:0x60 +fn_1_13600 = .text:0x00013600; // type:function size:0xD84 +fn_1_14384 = .text:0x00014384; // type:function size:0x3DC +fn_1_14760 = .text:0x00014760; // type:function size:0x254 +_prolog = .text:0x000149B4; // type:function size:0x54 scope:global +_epilog = .text:0x00014A08; // type:function size:0x4C scope:global +fn_1_14A54 = .text:0x00014A54; // type:function size:0x40C +fn_1_14E60 = .text:0x00014E60; // type:function size:0x40C +fn_1_1526C = .text:0x0001526C; // type:function size:0x28 +fn_1_15294 = .text:0x00015294; // type:function size:0x40 +fn_1_152D4 = .text:0x000152D4; // type:function size:0xC8 +fn_1_1539C = .text:0x0001539C; // type:function size:0xD8 +fn_1_15474 = .text:0x00015474; // type:function size:0x50 +fn_1_154C4 = .text:0x000154C4; // type:function size:0x5C +fn_1_15520 = .text:0x00015520; // type:function size:0x88 +fn_1_155A8 = .text:0x000155A8; // type:function size:0x74 +fn_1_1561C = .text:0x0001561C; // type:function size:0x54 +fn_1_15670 = .text:0x00015670; // type:function size:0x3C +fn_1_156AC = .text:0x000156AC; // type:function size:0x110 +fn_1_157BC = .text:0x000157BC; // type:function size:0x178 +fn_1_15934 = .text:0x00015934; // type:function size:0x1C8 +fn_1_15AFC = .text:0x00015AFC; // type:function size:0x318 +fn_1_15E14 = .text:0x00015E14; // type:function size:0x3C +fn_1_15E50 = .text:0x00015E50; // type:function size:0x4C +fn_1_15E9C = .text:0x00015E9C; // type:function size:0x314 +fn_1_161B0 = .text:0x000161B0; // type:function size:0x314 +fn_1_164C4 = .text:0x000164C4; // type:function size:0x27C +fn_1_16740 = .text:0x00016740; // type:function size:0x2B4 +fn_1_169F4 = .text:0x000169F4; // type:function size:0x530 +fn_1_16F24 = .text:0x00016F24; // type:function size:0x454 +fn_1_17378 = .text:0x00017378; // type:function size:0x48C +fn_1_17804 = .text:0x00017804; // type:function size:0x71C +fn_1_17F20 = .text:0x00017F20; // type:function size:0x4C4 +fn_1_183E4 = .text:0x000183E4; // type:function size:0x4FC +fn_1_188E0 = .text:0x000188E0; // type:function size:0x78C +fn_1_1906C = .text:0x0001906C; // type:function size:0x4C4 +fn_1_19530 = .text:0x00019530; // type:function size:0x60 +fn_1_19590 = .text:0x00019590; // type:function size:0x64 +fn_1_195F4 = .text:0x000195F4; // type:function size:0x64 +fn_1_19658 = .text:0x00019658; // type:function size:0x23C +fn_1_19894 = .text:0x00019894; // type:function size:0x64 +fn_1_198F8 = .text:0x000198F8; // type:function size:0x68 +fn_1_19960 = .text:0x00019960; // type:function size:0x8 +fn_1_19968 = .text:0x00019968; // type:function size:0xC +fn_1_19974 = .text:0x00019974; // type:function size:0x8 +fn_1_1997C = .text:0x0001997C; // type:function size:0x344 +fn_1_19CC0 = .text:0x00019CC0; // type:function size:0x190 +fn_1_19E50 = .text:0x00019E50; // type:function size:0x4EC +fn_1_1A33C = .text:0x0001A33C; // type:function size:0x110 +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:4byte +lbl_1_rodata_A4 = .rodata:0x000000A4; // type:object size:0x48 +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // 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:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x20 data:4byte +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x30 data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x30 data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x30 data:4byte +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x8 data:4byte +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x8 data:4byte +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x8 data:4byte +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x8 data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x24 data:4byte +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:4byte +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x24 data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x8 data:4byte +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x8 data:4byte +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x8 data:4byte +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x8 data:4byte +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x10 data:4byte +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x8 data:4byte +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x8 data:4byte +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x8 data:4byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x8 data:4byte +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x30 data:4byte +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x64 data:4byte +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x10 data:string +lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 data:string +lbl_1_data_80 = .data:0x00000080; // type:object size:0x10 data:string +lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 data:string +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 data:string +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 data:string +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x10 data:string +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x40 +lbl_1_data_140 = .data:0x00000140; // type:object size:0xA0 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x4 data:4byte +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x4 data:4byte +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x4 data:4byte +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x1B data:string +lbl_1_data_207 = .data:0x00000207; // type:object size:0x22 data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x1A data:string +lbl_1_data_243 = .data:0x00000243; // type:object size:0x1A data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0xF +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x4 data:4byte +jumptable_1_data_270 = .data:0x00000270; // type:object size:0x54 scope:local +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x4 data:float +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x13 data:string +lbl_1_data_2DB = .data:0x000002DB; // type:object size:0x11 +jumptable_1_data_2EC = .data:0x000002EC; // type:object size:0x24 scope:local +jumptable_1_data_310 = .data:0x00000310; // type:object size:0x2C scope:local +lbl_1_data_33C = .data:0x0000033C; // type:object size:0xE data:string +lbl_1_data_34A = .data:0x0000034A; // type:object size:0x12 data:string +lbl_1_data_35C = .data:0x0000035C; // type:object size:0x14 +jumptable_1_data_370 = .data:0x00000370; // type:object size:0x30 scope:local +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0xA8 +jumptable_1_data_448 = .data:0x00000448; // type:object size:0x1C scope:local +lbl_1_data_464 = .data:0x00000464; // type:object size:0x4 +lbl_1_data_468 = .data:0x00000468; // type:object size:0xB4 +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 +jumptable_1_data_534 = .data:0x00000534; // type:object size:0x28 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x8 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x30 +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x18 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x18 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0xA8 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x160 +lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x978 data:4byte +lbl_1_bss_C1C = .bss:0x00000C1C; // type:object size:0x14 data:4byte +lbl_1_bss_C30 = .bss:0x00000C30; // type:object size:0x1B4 data:4byte +lbl_1_bss_DE4 = .bss:0x00000DE4; // type:object size:0x24 data:4byte +lbl_1_bss_E08 = .bss:0x00000E08; // type:object size:0x80 data:4byte +lbl_1_bss_E88 = .bss:0x00000E88; // type:object size:0x4060 data:4byte +lbl_1_bss_4EE8 = .bss:0x00004EE8; // type:object size:0x20 data:4byte +lbl_1_bss_4F08 = .bss:0x00004F08; // type:object size:0x8 data:4byte +lbl_1_bss_4F10 = .bss:0x00004F10; // type:object size:0x38 data:4byte diff --git a/config/GMPJ01_00/rels/m436Dll/splits.txt b/config/GMPJ01_00/rels/m436Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m436Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m436Dll/symbols.txt b/config/GMPJ01_00/rels/m436Dll/symbols.txt new file mode 100644 index 00000000..03264278 --- /dev/null +++ b/config/GMPJ01_00/rels/m436Dll/symbols.txt @@ -0,0 +1,352 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x1A8 +fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 +fn_1_230 = .text:0x00000230; // type:function size:0x3E4 +fn_1_614 = .text:0x00000614; // type:function size:0x68 +fn_1_67C = .text:0x0000067C; // type:function size:0x6C +fn_1_6E8 = .text:0x000006E8; // type:function size:0x130 +fn_1_818 = .text:0x00000818; // type:function size:0x8C +fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 +fn_1_8C4 = .text:0x000008C4; // type:function size:0x6A8 +fn_1_F6C = .text:0x00000F6C; // type:function size:0x118 +fn_1_1084 = .text:0x00001084; // type:function size:0xC4 +fn_1_1148 = .text:0x00001148; // type:function size:0x644 +fn_1_178C = .text:0x0000178C; // type:function size:0x24 +fn_1_17B0 = .text:0x000017B0; // type:function size:0x458 +fn_1_1C08 = .text:0x00001C08; // type:function size:0x458 +fn_1_2060 = .text:0x00002060; // type:function size:0x1D0 +fn_1_2230 = .text:0x00002230; // type:function size:0x1D0 +fn_1_2400 = .text:0x00002400; // type:function size:0x68 +fn_1_2468 = .text:0x00002468; // type:function size:0x68 +fn_1_24D0 = .text:0x000024D0; // type:function size:0xE8 +fn_1_25B8 = .text:0x000025B8; // type:function size:0x11C +fn_1_26D4 = .text:0x000026D4; // type:function size:0x70 +fn_1_2744 = .text:0x00002744; // type:function size:0x84 +fn_1_27C8 = .text:0x000027C8; // type:function size:0x38 +fn_1_2800 = .text:0x00002800; // type:function size:0x24 +fn_1_2824 = .text:0x00002824; // type:function size:0x38 +fn_1_285C = .text:0x0000285C; // type:function size:0x1D0 +fn_1_2A2C = .text:0x00002A2C; // type:function size:0x64 +fn_1_2A90 = .text:0x00002A90; // type:function size:0x304 +fn_1_2D94 = .text:0x00002D94; // type:function size:0x28C +fn_1_3020 = .text:0x00003020; // type:function size:0x68 +fn_1_3088 = .text:0x00003088; // type:function size:0x174 +fn_1_31FC = .text:0x000031FC; // type:function size:0x7B8 +fn_1_39B4 = .text:0x000039B4; // type:function size:0x23C +fn_1_3BF0 = .text:0x00003BF0; // type:function size:0x61C +fn_1_420C = .text:0x0000420C; // type:function size:0xF8 +fn_1_4304 = .text:0x00004304; // type:function size:0x290 +fn_1_4594 = .text:0x00004594; // type:function size:0x318 +fn_1_48AC = .text:0x000048AC; // type:function size:0x150 +fn_1_49FC = .text:0x000049FC; // type:function size:0xB8 +fn_1_4AB4 = .text:0x00004AB4; // type:function size:0x68 +fn_1_4B1C = .text:0x00004B1C; // type:function size:0x38C +fn_1_4EA8 = .text:0x00004EA8; // type:function size:0x108 +fn_1_4FB0 = .text:0x00004FB0; // type:function size:0x3DC +fn_1_538C = .text:0x0000538C; // type:function size:0x28 +fn_1_53B4 = .text:0x000053B4; // type:function size:0x60 +fn_1_5414 = .text:0x00005414; // type:function size:0x3C +fn_1_5450 = .text:0x00005450; // type:function size:0x50 +fn_1_54A0 = .text:0x000054A0; // type:function size:0x168 +fn_1_5608 = .text:0x00005608; // type:function size:0x6C8 +fn_1_5CD0 = .text:0x00005CD0; // type:function size:0x390 +fn_1_6060 = .text:0x00006060; // type:function size:0x264 +fn_1_62C4 = .text:0x000062C4; // type:function size:0x624 +fn_1_68E8 = .text:0x000068E8; // type:function size:0x5C +fn_1_6944 = .text:0x00006944; // type:function size:0x298 +fn_1_6BDC = .text:0x00006BDC; // type:function size:0xB0 +fn_1_6C8C = .text:0x00006C8C; // type:function size:0xD8 +fn_1_6D64 = .text:0x00006D64; // type:function size:0xB0 +fn_1_6E14 = .text:0x00006E14; // type:function size:0xB0 +fn_1_6EC4 = .text:0x00006EC4; // type:function size:0xB0 +fn_1_6F74 = .text:0x00006F74; // type:function size:0xD8 +fn_1_704C = .text:0x0000704C; // type:function size:0xB0 +fn_1_70FC = .text:0x000070FC; // type:function size:0xB0 +fn_1_71AC = .text:0x000071AC; // type:function size:0x120 +fn_1_72CC = .text:0x000072CC; // type:function size:0x524 +fn_1_77F0 = .text:0x000077F0; // type:function size:0x368 +fn_1_7B58 = .text:0x00007B58; // type:function size:0x3C4 +fn_1_7F1C = .text:0x00007F1C; // type:function size:0x268C +fn_1_A5A8 = .text:0x0000A5A8; // type:function size:0xE2C +fn_1_B3D4 = .text:0x0000B3D4; // type:function size:0x40C +fn_1_B7E0 = .text:0x0000B7E0; // type:function size:0x4 +fn_1_B7E4 = .text:0x0000B7E4; // type:function size:0x184 +fn_1_B968 = .text:0x0000B968; // type:function size:0x4C +fn_1_B9B4 = .text:0x0000B9B4; // type:function size:0x5C +fn_1_BA10 = .text:0x0000BA10; // type:function size:0x94 +fn_1_BAA4 = .text:0x0000BAA4; // type:function size:0x100 +fn_1_BBA4 = .text:0x0000BBA4; // type:function size:0x50 +fn_1_BBF4 = .text:0x0000BBF4; // type:function size:0x48 +fn_1_BC3C = .text:0x0000BC3C; // type:function size:0x3C +fn_1_BC78 = .text:0x0000BC78; // type:function size:0x80 +fn_1_BCF8 = .text:0x0000BCF8; // type:function size:0x74 +fn_1_BD6C = .text:0x0000BD6C; // type:function size:0xB0 +fn_1_BE1C = .text:0x0000BE1C; // type:function size:0x50 +fn_1_BE6C = .text:0x0000BE6C; // type:function size:0x48 +fn_1_BEB4 = .text:0x0000BEB4; // type:function size:0x4C +fn_1_BF00 = .text:0x0000BF00; // type:function size:0xC8 +fn_1_BFC8 = .text:0x0000BFC8; // type:function size:0x30 +fn_1_BFF8 = .text:0x0000BFF8; // type:function size:0x98 +fn_1_C090 = .text:0x0000C090; // type:function size:0x458 +fn_1_C4E8 = .text:0x0000C4E8; // type:function size:0xFC +fn_1_C5E4 = .text:0x0000C5E4; // type:function size:0xB0 +fn_1_C694 = .text:0x0000C694; // type:function size:0xD8 +fn_1_C76C = .text:0x0000C76C; // type:function size:0xD8 +fn_1_C844 = .text:0x0000C844; // type:function size:0xC8 +fn_1_C90C = .text:0x0000C90C; // type:function size:0x398 +fn_1_CCA4 = .text:0x0000CCA4; // type:function size:0x374 +fn_1_D018 = .text:0x0000D018; // type:function size:0x32C +fn_1_D344 = .text:0x0000D344; // type:function size:0xD4 +fn_1_D418 = .text:0x0000D418; // type:function size:0x2A8 +fn_1_D6C0 = .text:0x0000D6C0; // type:function size:0x24 +fn_1_D6E4 = .text:0x0000D6E4; // type:function size:0x37C +fn_1_DA60 = .text:0x0000DA60; // type:function size:0xA0 +fn_1_DB00 = .text:0x0000DB00; // type:function size:0x2BC +fn_1_DDBC = .text:0x0000DDBC; // type:function size:0xF4 +fn_1_DEB0 = .text:0x0000DEB0; // type:function size:0x200 +fn_1_E0B0 = .text:0x0000E0B0; // type:function size:0x94 +fn_1_E144 = .text:0x0000E144; // type:function size:0x248 +fn_1_E38C = .text:0x0000E38C; // type:function size:0x140 +fn_1_E4CC = .text:0x0000E4CC; // type:function size:0xA0 +fn_1_E56C = .text:0x0000E56C; // type:function size:0xBC +fn_1_E628 = .text:0x0000E628; // type:function size:0x58 +fn_1_E680 = .text:0x0000E680; // type:function size:0x90 +fn_1_E710 = .text:0x0000E710; // type:function size:0x220 +fn_1_E930 = .text:0x0000E930; // type:function size:0xD4 +fn_1_EA04 = .text:0x0000EA04; // type:function size:0x348 +fn_1_ED4C = .text:0x0000ED4C; // type:function size:0xC4 +fn_1_EE10 = .text:0x0000EE10; // type:function size:0x5F4 +fn_1_F404 = .text:0x0000F404; // type:function size:0xEC +fn_1_F4F0 = .text:0x0000F4F0; // type:function size:0x48 +fn_1_F538 = .text:0x0000F538; // type:function size:0x30 +fn_1_F568 = .text:0x0000F568; // type:function size:0x98 +fn_1_F600 = .text:0x0000F600; // type:function size:0xB0 +fn_1_F6B0 = .text:0x0000F6B0; // type:function size:0xAC +fn_1_F75C = .text:0x0000F75C; // type:function size:0x30 +fn_1_F78C = .text:0x0000F78C; // type:function size:0x98 +fn_1_F824 = .text:0x0000F824; // type:function size:0x100 +fn_1_F924 = .text:0x0000F924; // type:function size:0x60 +fn_1_F984 = .text:0x0000F984; // type:function size:0x8E8 +fn_1_1026C = .text:0x0001026C; // type:function size:0x404 +fn_1_10670 = .text:0x00010670; // type:function size:0x1CC +_prolog = .text:0x0001083C; // type:function size:0x54 scope:global +_epilog = .text:0x00010890; // type:function size:0x4C scope:global +fn_1_108DC = .text:0x000108DC; // type:function size:0x410 +fn_1_10CEC = .text:0x00010CEC; // type:function size:0x410 +fn_1_110FC = .text:0x000110FC; // type:function size:0x40 +fn_1_1113C = .text:0x0001113C; // type:function size:0x28 +fn_1_11164 = .text:0x00011164; // type:function size:0xC8 +fn_1_1122C = .text:0x0001122C; // type:function size:0xC8 +fn_1_112F4 = .text:0x000112F4; // type:function size:0xD8 +fn_1_113CC = .text:0x000113CC; // type:function size:0x33C +fn_1_11708 = .text:0x00011708; // type:function size:0x110 +fn_1_11818 = .text:0x00011818; // type:function size:0x178 +fn_1_11990 = .text:0x00011990; // type:function size:0x188 +fn_1_11B18 = .text:0x00011B18; // type:function size:0x1B0 +fn_1_11CC8 = .text:0x00011CC8; // type:function size:0x50 +fn_1_11D18 = .text:0x00011D18; // type:function size:0x5C +fn_1_11D74 = .text:0x00011D74; // type:function size:0x88 +fn_1_11DFC = .text:0x00011DFC; // type:function size:0x74 +fn_1_11E70 = .text:0x00011E70; // type:function size:0x94 +fn_1_11F04 = .text:0x00011F04; // type:function size:0x3C +fn_1_11F40 = .text:0x00011F40; // type:function size:0x318 +fn_1_12258 = .text:0x00012258; // type:function size:0x3C +fn_1_12294 = .text:0x00012294; // type:function size:0x4C +fn_1_122E0 = .text:0x000122E0; // type:function size:0x314 +fn_1_125F4 = .text:0x000125F4; // type:function size:0x314 +fn_1_12908 = .text:0x00012908; // type:function size:0x27C +fn_1_12B84 = .text:0x00012B84; // type:function size:0x2B4 +fn_1_12E38 = .text:0x00012E38; // type:function size:0x530 +fn_1_13368 = .text:0x00013368; // type:function size:0x454 +fn_1_137BC = .text:0x000137BC; // type:function size:0x48C +fn_1_13C48 = .text:0x00013C48; // type:function size:0x71C +fn_1_14364 = .text:0x00014364; // type:function size:0x4C4 +fn_1_14828 = .text:0x00014828; // type:function size:0x4FC +fn_1_14D24 = .text:0x00014D24; // type:function size:0x78C +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x3C data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x30 data:4byte +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x18 data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:4byte +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:4byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x8 data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0xC data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:4byte +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x30 data:4byte +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x34 data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x20 +lbl_1_data_40 = .data:0x00000040; // type:object size:0xA0 +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x4 data:4byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:4byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x1B data:string +lbl_1_data_107 = .data:0x00000107; // type:object size:0x22 data:string +lbl_1_data_129 = .data:0x00000129; // type:object size:0x1A data:string +lbl_1_data_143 = .data:0x00000143; // type:object size:0x1A data:string +lbl_1_data_15D = .data:0x0000015D; // type:object size:0xF +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 data:4byte +lbl_1_data_170 = .data:0x00000170; // type:object size:0x34 +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x14 +jumptable_1_data_1B8 = .data:0x000001B8; // type:object size:0x30 scope:local +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x6C +lbl_1_data_254 = .data:0x00000254; // type:object size:0x18 data:float +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x12 data:string +lbl_1_data_27E = .data:0x0000027E; // type:object size:0x12 data:string +lbl_1_data_290 = .data:0x00000290; // type:object size:0x9C +lbl_1_data_32C = .data:0x0000032C; // type:object size:0x18 +jumptable_1_data_344 = .data:0x00000344; // type:object size:0x28 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x30 data:float +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x30 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x18 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x18 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0xA8 data:4byte +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x28 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x14 data:4byte +lbl_1_bss_1BC = .bss:0x000001BC; // type:object size:0x64 data:4byte +lbl_1_bss_220 = .bss:0x00000220; // type:object size:0x14 data:4byte +lbl_1_bss_234 = .bss:0x00000234; // type:object size:0xF8 data:4byte +lbl_1_bss_32C = .bss:0x0000032C; // type:object size:0x78 data:4byte +lbl_1_bss_3A4 = .bss:0x000003A4; // type:object size:0x8 data:4byte +lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x38 data:4byte +lbl_1_bss_3E4 = .bss:0x000003E4; // type:object size:0xC0 +lbl_1_bss_4A4 = .bss:0x000004A4; // type:object size:0x10 data:4byte diff --git a/config/GMPJ01_00/rels/m437Dll/splits.txt b/config/GMPJ01_00/rels/m437Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m437Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m437Dll/symbols.txt b/config/GMPJ01_00/rels/m437Dll/symbols.txt new file mode 100644 index 00000000..8cd64fd3 --- /dev/null +++ b/config/GMPJ01_00/rels/m437Dll/symbols.txt @@ -0,0 +1,411 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x1A8 +fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 +fn_1_230 = .text:0x00000230; // type:function size:0x68 +fn_1_298 = .text:0x00000298; // type:function size:0x6C +fn_1_304 = .text:0x00000304; // type:function size:0x130 +fn_1_434 = .text:0x00000434; // type:function size:0x8C +fn_1_4C0 = .text:0x000004C0; // type:function size:0x3E4 +fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 +fn_1_8C4 = .text:0x000008C4; // type:function size:0x20 +fn_1_8E4 = .text:0x000008E4; // type:function size:0x6A8 +fn_1_F8C = .text:0x00000F8C; // type:function size:0x134 +fn_1_10C0 = .text:0x000010C0; // type:function size:0xC4 +fn_1_1184 = .text:0x00001184; // type:function size:0x38 +fn_1_11BC = .text:0x000011BC; // type:function size:0x24 +fn_1_11E0 = .text:0x000011E0; // type:function size:0x38 +fn_1_1218 = .text:0x00001218; // type:function size:0x1D0 +fn_1_13E8 = .text:0x000013E8; // type:function size:0x64 +fn_1_144C = .text:0x0000144C; // type:function size:0x644 +fn_1_1A90 = .text:0x00001A90; // type:function size:0x24 +fn_1_1AB4 = .text:0x00001AB4; // type:function size:0x458 +fn_1_1F0C = .text:0x00001F0C; // type:function size:0x1EC +fn_1_20F8 = .text:0x000020F8; // type:function size:0x1EC +fn_1_22E4 = .text:0x000022E4; // type:function size:0x458 +fn_1_273C = .text:0x0000273C; // type:function size:0x68 +fn_1_27A4 = .text:0x000027A4; // type:function size:0x68 +fn_1_280C = .text:0x0000280C; // type:function size:0xE8 +fn_1_28F4 = .text:0x000028F4; // type:function size:0x11C +fn_1_2A10 = .text:0x00002A10; // type:function size:0x84 +fn_1_2A94 = .text:0x00002A94; // type:function size:0x70 +fn_1_2B04 = .text:0x00002B04; // type:function size:0xA8 +fn_1_2BAC = .text:0x00002BAC; // type:function size:0x10 +fn_1_2BBC = .text:0x00002BBC; // type:function size:0x5D8 +fn_1_3194 = .text:0x00003194; // type:function size:0xCC +fn_1_3260 = .text:0x00003260; // type:function size:0x1B0 +fn_1_3410 = .text:0x00003410; // type:function size:0x284 +fn_1_3694 = .text:0x00003694; // type:function size:0x20 +fn_1_36B4 = .text:0x000036B4; // type:function size:0x120 +fn_1_37D4 = .text:0x000037D4; // type:function size:0x14 +fn_1_37E8 = .text:0x000037E8; // type:function size:0x1A8 +fn_1_3990 = .text:0x00003990; // type:function size:0x34 +fn_1_39C4 = .text:0x000039C4; // type:function size:0x20 +fn_1_39E4 = .text:0x000039E4; // type:function size:0x16C +fn_1_3B50 = .text:0x00003B50; // type:function size:0x14 +fn_1_3B64 = .text:0x00003B64; // type:function size:0x154 +fn_1_3CB8 = .text:0x00003CB8; // type:function size:0x88 +fn_1_3D40 = .text:0x00003D40; // type:function size:0x204 +fn_1_3F44 = .text:0x00003F44; // type:function size:0x5F4 +fn_1_4538 = .text:0x00004538; // type:function size:0x188 +fn_1_46C0 = .text:0x000046C0; // type:function size:0x268 +fn_1_4928 = .text:0x00004928; // type:function size:0x10 +fn_1_4938 = .text:0x00004938; // type:function size:0x1C0 +fn_1_4AF8 = .text:0x00004AF8; // type:function size:0xB4 +fn_1_4BAC = .text:0x00004BAC; // type:function size:0x94 +fn_1_4C40 = .text:0x00004C40; // type:function size:0x1C0 +fn_1_4E00 = .text:0x00004E00; // type:function size:0xE0 +fn_1_4EE0 = .text:0x00004EE0; // type:function size:0x268 +fn_1_5148 = .text:0x00005148; // type:function size:0x94 +fn_1_51DC = .text:0x000051DC; // type:function size:0x94 +fn_1_5270 = .text:0x00005270; // type:function size:0x94 +fn_1_5304 = .text:0x00005304; // type:function size:0x28 +fn_1_532C = .text:0x0000532C; // type:function size:0x32C +fn_1_5658 = .text:0x00005658; // type:function size:0x32C +fn_1_5984 = .text:0x00005984; // type:function size:0x154 +fn_1_5AD8 = .text:0x00005AD8; // type:function size:0x4E4 +fn_1_5FBC = .text:0x00005FBC; // type:function size:0x150 +fn_1_610C = .text:0x0000610C; // type:function size:0x28 +fn_1_6134 = .text:0x00006134; // type:function size:0x64 +fn_1_6198 = .text:0x00006198; // type:function size:0x68 +fn_1_6200 = .text:0x00006200; // type:function size:0x380 +fn_1_6580 = .text:0x00006580; // type:function size:0x60 +fn_1_65E0 = .text:0x000065E0; // type:function size:0xB18 +fn_1_70F8 = .text:0x000070F8; // type:function size:0x3C +fn_1_7134 = .text:0x00007134; // type:function size:0x198 +fn_1_72CC = .text:0x000072CC; // type:function size:0x1E4 +fn_1_74B0 = .text:0x000074B0; // type:function size:0x1C8 +fn_1_7678 = .text:0x00007678; // type:function size:0x368 +fn_1_79E0 = .text:0x000079E0; // type:function size:0x34 +fn_1_7A14 = .text:0x00007A14; // type:function size:0x8CC +fn_1_82E0 = .text:0x000082E0; // type:function size:0x28 +fn_1_8308 = .text:0x00008308; // type:function size:0x1BC +fn_1_84C4 = .text:0x000084C4; // type:function size:0x1C0 +fn_1_8684 = .text:0x00008684; // type:function size:0xB0 +fn_1_8734 = .text:0x00008734; // type:function size:0xF0 +fn_1_8824 = .text:0x00008824; // type:function size:0xB0 +fn_1_88D4 = .text:0x000088D4; // type:function size:0xB0 +fn_1_8984 = .text:0x00008984; // type:function size:0xB0 +fn_1_8A34 = .text:0x00008A34; // type:function size:0xF0 +fn_1_8B24 = .text:0x00008B24; // type:function size:0xB0 +fn_1_8BD4 = .text:0x00008BD4; // type:function size:0xB0 +fn_1_8C84 = .text:0x00008C84; // type:function size:0x120 +fn_1_8DA4 = .text:0x00008DA4; // type:function size:0x57C +fn_1_9320 = .text:0x00009320; // type:function size:0x3B8 +fn_1_96D8 = .text:0x000096D8; // type:function size:0x454 +fn_1_9B2C = .text:0x00009B2C; // type:function size:0x474 +fn_1_9FA0 = .text:0x00009FA0; // type:function size:0x4A0 +fn_1_A440 = .text:0x0000A440; // type:function size:0x420 +fn_1_A860 = .text:0x0000A860; // type:function size:0x4 +fn_1_A864 = .text:0x0000A864; // type:function size:0x184 +fn_1_A9E8 = .text:0x0000A9E8; // type:function size:0x3C +fn_1_AA24 = .text:0x0000AA24; // type:function size:0x5C +fn_1_AA80 = .text:0x0000AA80; // type:function size:0x3C +fn_1_AABC = .text:0x0000AABC; // type:function size:0x5C +fn_1_AB18 = .text:0x0000AB18; // type:function size:0x50 +fn_1_AB68 = .text:0x0000AB68; // type:function size:0x48 +fn_1_ABB0 = .text:0x0000ABB0; // type:function size:0x3C +fn_1_ABEC = .text:0x0000ABEC; // type:function size:0x84 +fn_1_AC70 = .text:0x0000AC70; // type:function size:0x5C +fn_1_ACCC = .text:0x0000ACCC; // type:function size:0x5C +fn_1_AD28 = .text:0x0000AD28; // type:function size:0x70 +fn_1_AD98 = .text:0x0000AD98; // type:function size:0x48 +fn_1_ADE0 = .text:0x0000ADE0; // type:function size:0x3C +fn_1_AE1C = .text:0x0000AE1C; // type:function size:0x5C +fn_1_AE78 = .text:0x0000AE78; // type:function size:0xD4 +fn_1_AF4C = .text:0x0000AF4C; // type:function size:0x248 +fn_1_B194 = .text:0x0000B194; // type:function size:0x30 +fn_1_B1C4 = .text:0x0000B1C4; // type:function size:0x8C +fn_1_B250 = .text:0x0000B250; // type:function size:0x20 +fn_1_B270 = .text:0x0000B270; // type:function size:0x180 +fn_1_B3F0 = .text:0x0000B3F0; // type:function size:0x104 +fn_1_B4F4 = .text:0x0000B4F4; // type:function size:0x2EC +fn_1_B7E0 = .text:0x0000B7E0; // type:function size:0xF0 +fn_1_B8D0 = .text:0x0000B8D0; // type:function size:0x348 +fn_1_BC18 = .text:0x0000BC18; // type:function size:0xB0 +fn_1_BCC8 = .text:0x0000BCC8; // type:function size:0xF0 +fn_1_BDB8 = .text:0x0000BDB8; // type:function size:0xC8 +fn_1_BE80 = .text:0x0000BE80; // type:function size:0x3C8 +fn_1_C248 = .text:0x0000C248; // type:function size:0x3C8 +fn_1_C610 = .text:0x0000C610; // type:function size:0x3B4 +fn_1_C9C4 = .text:0x0000C9C4; // type:function size:0x35C +fn_1_CD20 = .text:0x0000CD20; // type:function size:0x31C +fn_1_D03C = .text:0x0000D03C; // type:function size:0x384 +fn_1_D3C0 = .text:0x0000D3C0; // type:function size:0x394 +fn_1_D754 = .text:0x0000D754; // type:function size:0x1DC +fn_1_D930 = .text:0x0000D930; // type:function size:0x3BC +fn_1_DCEC = .text:0x0000DCEC; // type:function size:0x1D8 +fn_1_DEC4 = .text:0x0000DEC4; // type:function size:0x3E4 +fn_1_E2A8 = .text:0x0000E2A8; // type:function size:0x2F0 +fn_1_E598 = .text:0x0000E598; // type:function size:0x9C +fn_1_E634 = .text:0x0000E634; // type:function size:0x310 +fn_1_E944 = .text:0x0000E944; // type:function size:0x5C +fn_1_E9A0 = .text:0x0000E9A0; // type:function size:0x104 +fn_1_EAA4 = .text:0x0000EAA4; // type:function size:0x94 +fn_1_EB38 = .text:0x0000EB38; // type:function size:0xD8 +fn_1_EC10 = .text:0x0000EC10; // type:function size:0x1C4 +fn_1_EDD4 = .text:0x0000EDD4; // type:function size:0xCC +fn_1_EEA0 = .text:0x0000EEA0; // type:function size:0x12C +fn_1_EFCC = .text:0x0000EFCC; // type:function size:0xEC +fn_1_F0B8 = .text:0x0000F0B8; // type:function size:0x40 +fn_1_F0F8 = .text:0x0000F0F8; // type:function size:0x4C +fn_1_F144 = .text:0x0000F144; // type:function size:0x48 +fn_1_F18C = .text:0x0000F18C; // type:function size:0x108 +fn_1_F294 = .text:0x0000F294; // type:function size:0x144 +fn_1_F3D8 = .text:0x0000F3D8; // type:function size:0xBC +fn_1_F494 = .text:0x0000F494; // type:function size:0x40 +fn_1_F4D4 = .text:0x0000F4D4; // type:function size:0x30 +fn_1_F504 = .text:0x0000F504; // type:function size:0x8C +fn_1_F590 = .text:0x0000F590; // type:function size:0xB0 +fn_1_F640 = .text:0x0000F640; // type:function size:0xAC +fn_1_F6EC = .text:0x0000F6EC; // type:function size:0x30 +fn_1_F71C = .text:0x0000F71C; // type:function size:0x8C +fn_1_F7A8 = .text:0x0000F7A8; // type:function size:0xF4 +fn_1_F89C = .text:0x0000F89C; // type:function size:0x10 +fn_1_F8AC = .text:0x0000F8AC; // type:function size:0xB90 +fn_1_1043C = .text:0x0001043C; // type:function size:0x468 +fn_1_108A4 = .text:0x000108A4; // type:function size:0x1EC +_prolog = .text:0x00010A90; // type:function size:0x54 scope:global +_epilog = .text:0x00010AE4; // type:function size:0x4C scope:global +fn_1_10B30 = .text:0x00010B30; // type:function size:0x40C +fn_1_10F3C = .text:0x00010F3C; // type:function size:0x40C +fn_1_11348 = .text:0x00011348; // type:function size:0x28 +fn_1_11370 = .text:0x00011370; // type:function size:0x40 +fn_1_113B0 = .text:0x000113B0; // type:function size:0xC8 +fn_1_11478 = .text:0x00011478; // type:function size:0xC8 +fn_1_11540 = .text:0x00011540; // type:function size:0xD8 +fn_1_11618 = .text:0x00011618; // type:function size:0x50 +fn_1_11668 = .text:0x00011668; // type:function size:0x5C +fn_1_116C4 = .text:0x000116C4; // type:function size:0x88 +fn_1_1174C = .text:0x0001174C; // type:function size:0x74 +fn_1_117C0 = .text:0x000117C0; // type:function size:0x94 +fn_1_11854 = .text:0x00011854; // type:function size:0x3C +fn_1_11890 = .text:0x00011890; // type:function size:0x110 +fn_1_119A0 = .text:0x000119A0; // type:function size:0x178 +fn_1_11B18 = .text:0x00011B18; // type:function size:0x1C8 +fn_1_11CE0 = .text:0x00011CE0; // type:function size:0x7B4 +fn_1_12494 = .text:0x00012494; // type:function size:0x4C4 +fn_1_12958 = .text:0x00012958; // type:function size:0x60 +fn_1_129B8 = .text:0x000129B8; // type:function size:0x64 +fn_1_12A1C = .text:0x00012A1C; // type:function size:0x64 +fn_1_12A80 = .text:0x00012A80; // type:function size:0x3C +fn_1_12ABC = .text:0x00012ABC; // type:function size:0x44 +fn_1_12B00 = .text:0x00012B00; // type:function size:0x314 +fn_1_12E14 = .text:0x00012E14; // type:function size:0x314 +fn_1_13128 = .text:0x00013128; // type:function size:0x27C +fn_1_133A4 = .text:0x000133A4; // type:function size:0x2B4 +fn_1_13658 = .text:0x00013658; // type:function size:0x530 +fn_1_13B88 = .text:0x00013B88; // type:function size:0x454 +fn_1_13FDC = .text:0x00013FDC; // type:function size:0x48C +fn_1_14468 = .text:0x00014468; // type:function size:0x71C +fn_1_14B84 = .text:0x00014B84; // type:function size:0x4C4 +fn_1_15048 = .text:0x00015048; // type:function size:0x4FC +fn_1_15544 = .text:0x00015544; // type:function size:0x78C +fn_1_15CD0 = .text:0x00015CD0; // type:function size:0x6C +fn_1_15D3C = .text:0x00015D3C; // type:function size:0x68 +fn_1_15DA4 = .text:0x00015DA4; // type:function size:0x10 +fn_1_15DB4 = .text:0x00015DB4; // type:function size:0xC +fn_1_15DC0 = .text:0x00015DC0; // type:function size:0x8 +fn_1_15DC8 = .text:0x00015DC8; // type:function size:0x48 +fn_1_15E10 = .text:0x00015E10; // type:function size:0x344 +fn_1_16154 = .text:0x00016154; // type:function size:0x190 +fn_1_162E4 = .text:0x000162E4; // type:function size:0x64 +fn_1_16348 = .text:0x00016348; // type:function size:0x4 +fn_1_1634C = .text:0x0001634C; // type:function size:0x164 +fn_1_164B0 = .text:0x000164B0; // type:function size:0x15C +fn_1_1660C = .text:0x0001660C; // type:function size:0x190 +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x48 +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x78 +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x78 +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC8 +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x78 +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x14 data:4byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x30 data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x30 data:4byte +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:4byte +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:4byte +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:4byte +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:4byte +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x20 data:4byte +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:4byte +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x20 data:4byte +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:4byte +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x30 data:4byte +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x10 data:4byte +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x8 data:4byte +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0xC data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:4byte +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:4byte +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0xC data:4byte +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x8 data:4byte +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 data:4byte +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x30 data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x18 data:4byte +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0xA0 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x1B data:string +lbl_1_data_C7 = .data:0x000000C7; // type:object size:0x22 data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x1A data:string +lbl_1_data_103 = .data:0x00000103; // type:object size:0x1A data:string +lbl_1_data_11D = .data:0x0000011D; // type:object size:0xF +lbl_1_data_12C = .data:0x0000012C; // type:object size:0x4 data:4byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x16 data:string +lbl_1_data_146 = .data:0x00000146; // type:object size:0x13 data:string +lbl_1_data_159 = .data:0x00000159; // type:object size:0xE data:string +lbl_1_data_167 = .data:0x00000167; // type:object size:0xE data:string +lbl_1_data_175 = .data:0x00000175; // type:object size:0x13 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x4 data:float +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x14 data:string +jumptable_1_data_1A0 = .data:0x000001A0; // type:object size:0x20 scope:local +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x14 +jumptable_1_data_1D4 = .data:0x000001D4; // type:object size:0x30 scope:local +lbl_1_data_204 = .data:0x00000204; // type:object size:0x78 +lbl_1_data_27C = .data:0x0000027C; // type:object size:0x90 +lbl_1_data_30C = .data:0x0000030C; // type:object size:0x18 +jumptable_1_data_324 = .data:0x00000324; // type:object size:0x2C scope:local +lbl_1_data_350 = .data:0x00000350; // type:object size:0x10 data:string +lbl_1_data_360 = .data:0x00000360; // type:object size:0x10 data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0x10 data:string +lbl_1_data_380 = .data:0x00000380; // type:object size:0x10 data:string +lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 data:string +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x10 data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x10 data:string +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x10 data:string +lbl_1_data_3D0 = .data:0x000003D0; // type:object size:0x20 +lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x40 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x18 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x18 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x18 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0xE4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:float +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x4 data:float +lbl_1_bss_154 = .bss:0x00000154; // type:object size:0x4 data:float +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x4 data:float +lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x4 data:float +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x7C data:4byte +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0x4E0 data:4byte +lbl_1_bss_6BC = .bss:0x000006BC; // type:object size:0x218 data:4byte +lbl_1_bss_8D4 = .bss:0x000008D4; // type:object size:0x28 data:4byte +lbl_1_bss_8FC = .bss:0x000008FC; // type:object size:0x24 data:4byte +lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x24 data:4byte +lbl_1_bss_944 = .bss:0x00000944; // type:object size:0x24 data:4byte +lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x40 data:4byte diff --git a/config/GMPJ01_00/rels/m438Dll/splits.txt b/config/GMPJ01_00/rels/m438Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m438Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m438Dll/symbols.txt b/config/GMPJ01_00/rels/m438Dll/symbols.txt new file mode 100644 index 00000000..7ea887f2 --- /dev/null +++ b/config/GMPJ01_00/rels/m438Dll/symbols.txt @@ -0,0 +1,462 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x43C +fn_1_4DC = .text:0x000004DC; // type:function size:0x20 +fn_1_4FC = .text:0x000004FC; // type:function size:0x478 +fn_1_974 = .text:0x00000974; // type:function size:0x800 +fn_1_1174 = .text:0x00001174; // type:function size:0x90 +fn_1_1204 = .text:0x00001204; // type:function size:0x19C +fn_1_13A0 = .text:0x000013A0; // type:function size:0x9C0 +fn_1_1D60 = .text:0x00001D60; // type:function size:0x1AC +fn_1_1F0C = .text:0x00001F0C; // type:function size:0x164 +fn_1_2070 = .text:0x00002070; // type:function size:0x4F4 +fn_1_2564 = .text:0x00002564; // type:function size:0xA0 +fn_1_2604 = .text:0x00002604; // type:function size:0x2B8 +fn_1_28BC = .text:0x000028BC; // type:function size:0x28 +fn_1_28E4 = .text:0x000028E4; // type:function size:0x80 +fn_1_2964 = .text:0x00002964; // type:function size:0x3EC +fn_1_2D50 = .text:0x00002D50; // type:function size:0xFC +fn_1_2E4C = .text:0x00002E4C; // type:function size:0x770 +fn_1_35BC = .text:0x000035BC; // type:function size:0x4 +fn_1_35C0 = .text:0x000035C0; // type:function size:0xDB4 +fn_1_4374 = .text:0x00004374; // type:function size:0x3B0 +fn_1_4724 = .text:0x00004724; // type:function size:0x260 +fn_1_4984 = .text:0x00004984; // type:function size:0x5CC +fn_1_4F50 = .text:0x00004F50; // type:function size:0xDFC +fn_1_5D4C = .text:0x00005D4C; // type:function size:0x570 +fn_1_62BC = .text:0x000062BC; // type:function size:0xF4 +fn_1_63B0 = .text:0x000063B0; // type:function size:0x68C +fn_1_6A3C = .text:0x00006A3C; // type:function size:0x8C4 +fn_1_7300 = .text:0x00007300; // type:function size:0x558 +fn_1_7858 = .text:0x00007858; // type:function size:0x300 +fn_1_7B58 = .text:0x00007B58; // type:function size:0x64 +fn_1_7BBC = .text:0x00007BBC; // type:function size:0x40 +fn_1_7BFC = .text:0x00007BFC; // type:function size:0xA0 +fn_1_7C9C = .text:0x00007C9C; // type:function size:0x94 +fn_1_7D30 = .text:0x00007D30; // type:function size:0x84 +fn_1_7DB4 = .text:0x00007DB4; // type:function size:0x24 +fn_1_7DD8 = .text:0x00007DD8; // type:function size:0x104 +fn_1_7EDC = .text:0x00007EDC; // type:function size:0x168 +fn_1_8044 = .text:0x00008044; // type:function size:0x120 +fn_1_8164 = .text:0x00008164; // type:function size:0x39C +fn_1_8500 = .text:0x00008500; // type:function size:0x250 +fn_1_8750 = .text:0x00008750; // type:function size:0x78 +fn_1_87C8 = .text:0x000087C8; // type:function size:0x11C +fn_1_88E4 = .text:0x000088E4; // type:function size:0x78 +fn_1_895C = .text:0x0000895C; // type:function size:0x2D8 +fn_1_8C34 = .text:0x00008C34; // type:function size:0x2B8 +fn_1_8EEC = .text:0x00008EEC; // type:function size:0x154 +fn_1_9040 = .text:0x00009040; // type:function size:0x3E0 +fn_1_9420 = .text:0x00009420; // type:function size:0x214 +fn_1_9634 = .text:0x00009634; // type:function size:0x198 +fn_1_97CC = .text:0x000097CC; // type:function size:0xD8 +fn_1_98A4 = .text:0x000098A4; // type:function size:0xBC +fn_1_9960 = .text:0x00009960; // type:function size:0x33C +fn_1_9C9C = .text:0x00009C9C; // type:function size:0x4B0 +fn_1_A14C = .text:0x0000A14C; // type:function size:0x4C0 +fn_1_A60C = .text:0x0000A60C; // type:function size:0x7C +fn_1_A688 = .text:0x0000A688; // type:function size:0x4 +fn_1_A68C = .text:0x0000A68C; // type:function size:0x270 +fn_1_A8FC = .text:0x0000A8FC; // type:function size:0x51C +fn_1_AE18 = .text:0x0000AE18; // type:function size:0x628 +fn_1_B440 = .text:0x0000B440; // type:function size:0x98 +fn_1_B4D8 = .text:0x0000B4D8; // type:function size:0x70 +fn_1_B548 = .text:0x0000B548; // type:function size:0x4 +fn_1_B54C = .text:0x0000B54C; // type:function size:0x9D4 +fn_1_BF20 = .text:0x0000BF20; // type:function size:0x844 +fn_1_C764 = .text:0x0000C764; // type:function size:0x184 +fn_1_C8E8 = .text:0x0000C8E8; // type:function size:0x1C8 +fn_1_CAB0 = .text:0x0000CAB0; // type:function size:0x94C +fn_1_D3FC = .text:0x0000D3FC; // type:function size:0x180 +fn_1_D57C = .text:0x0000D57C; // type:function size:0x4E8 +fn_1_DA64 = .text:0x0000DA64; // type:function size:0x43C +fn_1_DEA0 = .text:0x0000DEA0; // type:function size:0xD0 +fn_1_DF70 = .text:0x0000DF70; // type:function size:0xC4 +fn_1_E034 = .text:0x0000E034; // type:function size:0x454 +fn_1_E488 = .text:0x0000E488; // type:function size:0x11C +fn_1_E5A4 = .text:0x0000E5A4; // type:function size:0xB4 +fn_1_E658 = .text:0x0000E658; // type:function size:0x138 +fn_1_E790 = .text:0x0000E790; // type:function size:0xDA8 +fn_1_F538 = .text:0x0000F538; // type:function size:0x12C +fn_1_F664 = .text:0x0000F664; // type:function size:0x1C +fn_1_F680 = .text:0x0000F680; // type:function size:0x2C +fn_1_F6AC = .text:0x0000F6AC; // type:function size:0x1C +fn_1_F6C8 = .text:0x0000F6C8; // type:function size:0x184 +fn_1_F84C = .text:0x0000F84C; // type:function size:0xA0 +fn_1_F8EC = .text:0x0000F8EC; // type:function size:0xA8 +fn_1_F994 = .text:0x0000F994; // type:function size:0x8C +fn_1_FA20 = .text:0x0000FA20; // type:function size:0x98 +fn_1_FAB8 = .text:0x0000FAB8; // type:function size:0x288 +fn_1_FD40 = .text:0x0000FD40; // type:function size:0x518 +fn_1_10258 = .text:0x00010258; // type:function size:0x564 +fn_1_107BC = .text:0x000107BC; // type:function size:0x128 +fn_1_108E4 = .text:0x000108E4; // type:function size:0x2C +fn_1_10910 = .text:0x00010910; // type:function size:0x3A8 +fn_1_10CB8 = .text:0x00010CB8; // type:function size:0x254 +fn_1_10F0C = .text:0x00010F0C; // type:function size:0x80 +fn_1_10F8C = .text:0x00010F8C; // type:function size:0x8C +fn_1_11018 = .text:0x00011018; // type:function size:0x9C +fn_1_110B4 = .text:0x000110B4; // type:function size:0x5A4 +fn_1_11658 = .text:0x00011658; // type:function size:0x238 +fn_1_11890 = .text:0x00011890; // type:function size:0x6C +fn_1_118FC = .text:0x000118FC; // type:function size:0x70 +fn_1_1196C = .text:0x0001196C; // type:function size:0x74 +fn_1_119E0 = .text:0x000119E0; // type:function size:0x84 +fn_1_11A64 = .text:0x00011A64; // type:function size:0x88 +fn_1_11AEC = .text:0x00011AEC; // type:function size:0x8C +fn_1_11B78 = .text:0x00011B78; // type:function size:0x70 +fn_1_11BE8 = .text:0x00011BE8; // type:function size:0x74 +fn_1_11C5C = .text:0x00011C5C; // type:function size:0x6C +fn_1_11CC8 = .text:0x00011CC8; // type:function size:0x70 +fn_1_11D38 = .text:0x00011D38; // type:function size:0x74 +fn_1_11DAC = .text:0x00011DAC; // type:function size:0x6C +fn_1_11E18 = .text:0x00011E18; // type:function size:0x70 +fn_1_11E88 = .text:0x00011E88; // type:function size:0x74 +fn_1_11EFC = .text:0x00011EFC; // type:function size:0x6C +fn_1_11F68 = .text:0x00011F68; // type:function size:0x70 +fn_1_11FD8 = .text:0x00011FD8; // type:function size:0x74 +fn_1_1204C = .text:0x0001204C; // type:function size:0x44 +fn_1_12090 = .text:0x00012090; // type:function size:0x70 +fn_1_12100 = .text:0x00012100; // type:function size:0x74 +fn_1_12174 = .text:0x00012174; // type:function size:0x44 +fn_1_121B8 = .text:0x000121B8; // type:function size:0x70 +fn_1_12228 = .text:0x00012228; // type:function size:0x74 +fn_1_1229C = .text:0x0001229C; // type:function size:0x5C +fn_1_122F8 = .text:0x000122F8; // type:function size:0x80 +fn_1_12378 = .text:0x00012378; // type:function size:0x74 +fn_1_123EC = .text:0x000123EC; // type:function size:0x78 +fn_1_12464 = .text:0x00012464; // type:function size:0x68 +fn_1_124CC = .text:0x000124CC; // type:function size:0x6C +fn_1_12538 = .text:0x00012538; // type:function size:0x68 +fn_1_125A0 = .text:0x000125A0; // type:function size:0x6C +fn_1_1260C = .text:0x0001260C; // type:function size:0x68 +fn_1_12674 = .text:0x00012674; // type:function size:0x6C +fn_1_126E0 = .text:0x000126E0; // type:function size:0x6C +fn_1_1274C = .text:0x0001274C; // type:function size:0x78 +fn_1_127C4 = .text:0x000127C4; // type:function size:0x98 +fn_1_1285C = .text:0x0001285C; // type:function size:0x6C +fn_1_128C8 = .text:0x000128C8; // type:function size:0x78 +fn_1_12940 = .text:0x00012940; // type:function size:0x98 +fn_1_129D8 = .text:0x000129D8; // type:function size:0x70 +fn_1_12A48 = .text:0x00012A48; // type:function size:0x78 +fn_1_12AC0 = .text:0x00012AC0; // type:function size:0x98 +fn_1_12B58 = .text:0x00012B58; // type:function size:0x40 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_78 = .rodata:0x00000078; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // 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:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x10 data:4byte +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // 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:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x30 data:4byte +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x10 data:byte +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +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 +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:0x24 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte +lbl_1_data_68 = .data:0x00000068; // type:object size:0x420 +lbl_1_data_488 = .data:0x00000488; // type:object size:0x2C +lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x30 +jumptable_1_data_4E4 = .data:0x000004E4; // type:object size:0x2C scope:local +lbl_1_data_514 = .data:0x00000514; // type:object size:0xC +lbl_1_data_520 = .data:0x00000520; // type:object size:0x64 +lbl_1_data_584 = .data:0x00000584; // type:object size:0x64 +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x24 +lbl_1_data_60C = .data:0x0000060C; // type:object size:0x6C +lbl_1_data_678 = .data:0x00000678; // type:object size:0x24 +lbl_1_data_69C = .data:0x0000069C; // type:object size:0x6C +lbl_1_data_708 = .data:0x00000708; // type:object size:0x24 +lbl_1_data_72C = .data:0x0000072C; // type:object size:0x24 +lbl_1_data_750 = .data:0x00000750; // type:object size:0x7 data:string +lbl_1_data_757 = .data:0x00000757; // type:object size:0x7 data:string +lbl_1_data_75E = .data:0x0000075E; // type:object size:0x7 data:string +lbl_1_data_765 = .data:0x00000765; // type:object size:0x7 data:string +lbl_1_data_76C = .data:0x0000076C; // type:object size:0x7 data:string +lbl_1_data_773 = .data:0x00000773; // type:object size:0x7 data:string +lbl_1_data_77A = .data:0x0000077A; // type:object size:0x7 data:string +lbl_1_data_781 = .data:0x00000781; // type:object size:0x7 data:string +lbl_1_data_788 = .data:0x00000788; // type:object size:0x7 data:string +lbl_1_data_78F = .data:0x0000078F; // type:object size:0x8 data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x8 data:string +lbl_1_data_79F = .data:0x0000079F; // type:object size:0x8 data:string +lbl_1_data_7A7 = .data:0x000007A7; // type:object size:0x8 data:string +lbl_1_data_7AF = .data:0x000007AF; // type:object size:0x8 data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x8 data:string +lbl_1_data_7BF = .data:0x000007BF; // type:object size:0x8 data:string +lbl_1_data_7C7 = .data:0x000007C7; // type:object size:0x8 data:string +lbl_1_data_7CF = .data:0x000007CF; // type:object size:0x8 data:string +lbl_1_data_7D7 = .data:0x000007D7; // type:object size:0x8 data:string +lbl_1_data_7DF = .data:0x000007DF; // type:object size:0x8 data:string +lbl_1_data_7E7 = .data:0x000007E7; // type:object size:0x8 data:string +lbl_1_data_7EF = .data:0x000007EF; // type:object size:0x8 data:string +lbl_1_data_7F7 = .data:0x000007F7; // type:object size:0x8 data:string +lbl_1_data_7FF = .data:0x000007FF; // type:object size:0x8 data:string +lbl_1_data_807 = .data:0x00000807; // type:object size:0x8 data:string +lbl_1_data_80F = .data:0x0000080F; // type:object size:0x8 data:string +lbl_1_data_817 = .data:0x00000817; // type:object size:0x8 data:string +lbl_1_data_81F = .data:0x0000081F; // type:object size:0x8 data:string +lbl_1_data_827 = .data:0x00000827; // type:object size:0x8 data:string +lbl_1_data_82F = .data:0x0000082F; // type:object size:0x8 data:string +lbl_1_data_837 = .data:0x00000837; // type:object size:0x8 data:string +lbl_1_data_83F = .data:0x0000083F; // type:object size:0x9 +lbl_1_data_848 = .data:0x00000848; // type:object size:0x80 +lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x9 data:string +lbl_1_data_8D1 = .data:0x000008D1; // type:object size:0x7 data:string +lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x60 +lbl_1_data_938 = .data:0x00000938; // type:object size:0xB data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x288 +lbl_1_bss_294 = .bss:0x00000294; // type:object size:0x4 data:4byte +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x900 data:float +lbl_1_bss_B98 = .bss:0x00000B98; // type:object size:0xC data:4byte +lbl_1_bss_BA4 = .bss:0x00000BA4; // type:object size:0x200 +lbl_1_bss_DA4 = .bss:0x00000DA4; // type:object size:0x4 data:4byte +lbl_1_bss_DA8 = .bss:0x00000DA8; // type:object size:0x2 data:2byte +lbl_1_bss_DAA = .bss:0x00000DAA; // type:object size:0x8 data:2byte +lbl_1_bss_DB2 = .bss:0x00000DB2; // type:object size:0x2 data:2byte +lbl_1_bss_DB4 = .bss:0x00000DB4; // type:object size:0x2 data:2byte +lbl_1_bss_DB6 = .bss:0x00000DB6; // type:object size:0x2 data:2byte +lbl_1_bss_DB8 = .bss:0x00000DB8; // type:object size:0x2 data:2byte +lbl_1_bss_DBA = .bss:0x00000DBA; // type:object size:0x2 data:2byte +lbl_1_bss_DBC = .bss:0x00000DBC; // type:object size:0x4 data:4byte +lbl_1_bss_DC0 = .bss:0x00000DC0; // type:object size:0x4 data:4byte +lbl_1_bss_DC4 = .bss:0x00000DC4; // type:object size:0x10 +lbl_1_bss_DD4 = .bss:0x00000DD4; // type:object size:0x4 data:4byte +lbl_1_bss_DD8 = .bss:0x00000DD8; // type:object size:0x4 data:4byte +lbl_1_bss_DDC = .bss:0x00000DDC; // type:object size:0x4 data:4byte +lbl_1_bss_DE0 = .bss:0x00000DE0; // type:object size:0x4 data:4byte +lbl_1_bss_DE4 = .bss:0x00000DE4; // type:object size:0x48 data:4byte +lbl_1_bss_E2C = .bss:0x00000E2C; // type:object size:0x4 data:4byte +lbl_1_bss_E30 = .bss:0x00000E30; // type:object size:0x4 data:4byte +lbl_1_bss_E34 = .bss:0x00000E34; // type:object size:0x258 data:4byte +lbl_1_bss_108C = .bss:0x0000108C; // type:object size:0x18 data:4byte diff --git a/config/GMPJ01_00/rels/m439Dll/splits.txt b/config/GMPJ01_00/rels/m439Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m439Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m439Dll/symbols.txt b/config/GMPJ01_00/rels/m439Dll/symbols.txt new file mode 100644 index 00000000..37fa3fca --- /dev/null +++ b/config/GMPJ01_00/rels/m439Dll/symbols.txt @@ -0,0 +1,325 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2C4 +fn_1_364 = .text:0x00000364; // type:function size:0x10 +fn_1_374 = .text:0x00000374; // type:function size:0x10 +fn_1_384 = .text:0x00000384; // type:function size:0x84 +fn_1_408 = .text:0x00000408; // type:function size:0x5B4 +fn_1_9BC = .text:0x000009BC; // type:function size:0x5C +fn_1_A18 = .text:0x00000A18; // type:function size:0x108 +fn_1_B20 = .text:0x00000B20; // type:function size:0x5C +fn_1_B7C = .text:0x00000B7C; // type:function size:0x84 +fn_1_C00 = .text:0x00000C00; // type:function size:0x10C +fn_1_D0C = .text:0x00000D0C; // type:function size:0x318 +fn_1_1024 = .text:0x00001024; // type:function size:0x104 +fn_1_1128 = .text:0x00001128; // type:function size:0x588 +fn_1_16B0 = .text:0x000016B0; // type:function size:0x5A4 +fn_1_1C54 = .text:0x00001C54; // type:function size:0x2E8 +fn_1_1F3C = .text:0x00001F3C; // type:function size:0x248 +fn_1_2184 = .text:0x00002184; // type:function size:0xB8 +fn_1_223C = .text:0x0000223C; // type:function size:0x978 +fn_1_2BB4 = .text:0x00002BB4; // type:function size:0xD0 +fn_1_2C84 = .text:0x00002C84; // type:function size:0xF98 +fn_1_3C1C = .text:0x00003C1C; // type:function size:0x90C +fn_1_4528 = .text:0x00004528; // type:function size:0x450 +fn_1_4978 = .text:0x00004978; // type:function size:0x50 +fn_1_49C8 = .text:0x000049C8; // type:function size:0x84 +fn_1_4A4C = .text:0x00004A4C; // type:function size:0x5C +fn_1_4AA8 = .text:0x00004AA8; // type:function size:0x218 +fn_1_4CC0 = .text:0x00004CC0; // type:function size:0x294 +fn_1_4F54 = .text:0x00004F54; // type:function size:0xC48 +fn_1_5B9C = .text:0x00005B9C; // type:function size:0x4 +fn_1_5BA0 = .text:0x00005BA0; // type:function size:0x10C +fn_1_5CAC = .text:0x00005CAC; // type:function size:0x4 +fn_1_5CB0 = .text:0x00005CB0; // type:function size:0x3B8 +fn_1_6068 = .text:0x00006068; // type:function size:0xB8 +fn_1_6120 = .text:0x00006120; // type:function size:0x1C0 +fn_1_62E0 = .text:0x000062E0; // type:function size:0x48 +fn_1_6328 = .text:0x00006328; // type:function size:0x1F8 +fn_1_6520 = .text:0x00006520; // type:function size:0xFC +fn_1_661C = .text:0x0000661C; // type:function size:0xA0 +fn_1_66BC = .text:0x000066BC; // type:function size:0xF8 +fn_1_67B4 = .text:0x000067B4; // type:function size:0x454 +fn_1_6C08 = .text:0x00006C08; // type:function size:0xC8 +fn_1_6CD0 = .text:0x00006CD0; // type:function size:0x11C +fn_1_6DEC = .text:0x00006DEC; // type:function size:0x3A4 +fn_1_7190 = .text:0x00007190; // type:function size:0x5C +fn_1_71EC = .text:0x000071EC; // type:function size:0x208 +fn_1_73F4 = .text:0x000073F4; // type:function size:0x184 +fn_1_7578 = .text:0x00007578; // type:function size:0x26C +fn_1_77E4 = .text:0x000077E4; // type:function size:0x9A8 +_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_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC data:2byte +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x50 +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x18 +lbl_1_data_18 = .data:0x00000018; // type:object size:0x18 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x8 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x84 +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x84 +lbl_1_data_140 = .data:0x00000140; // type:object size:0x2C +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x90 +lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x90 +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x30 +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0xA8 +lbl_1_data_364 = .data:0x00000364; // type:object size:0xA8 +lbl_1_data_40C = .data:0x0000040C; // type:object size:0x38 +lbl_1_data_444 = .data:0x00000444; // type:object size:0xB4 +lbl_1_data_4F8 = .data:0x000004F8; // type:object size:0xB4 +lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x3C +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x18 +lbl_1_data_600 = .data:0x00000600; // type:object size:0x18 +lbl_1_data_618 = .data:0x00000618; // type:object size:0x8 +lbl_1_data_620 = .data:0x00000620; // type:object size:0xA8 +lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0xA8 +lbl_1_data_770 = .data:0x00000770; // type:object size:0x38 +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0xD8 +lbl_1_data_880 = .data:0x00000880; // type:object size:0xD8 +lbl_1_data_958 = .data:0x00000958; // type:object size:0x48 +lbl_1_data_9A0 = .data:0x000009A0; // type:object size:0xC0 +lbl_1_data_A60 = .data:0x00000A60; // type:object size:0xC0 +lbl_1_data_B20 = .data:0x00000B20; // type:object size:0x40 +lbl_1_data_B60 = .data:0x00000B60; // type:object size:0xC0 +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xC0 +lbl_1_data_CE0 = .data:0x00000CE0; // type:object size:0x40 +lbl_1_data_D20 = .data:0x00000D20; // type:object size:0xA8 +lbl_1_data_DC8 = .data:0x00000DC8; // type:object size:0xA8 +lbl_1_data_E70 = .data:0x00000E70; // type:object size:0x38 +lbl_1_data_EA8 = .data:0x00000EA8; // type:object size:0x9C +lbl_1_data_F44 = .data:0x00000F44; // type:object size:0x9C +lbl_1_data_FE0 = .data:0x00000FE0; // type:object size:0x34 +lbl_1_data_1014 = .data:0x00001014; // type:object size:0x60 +lbl_1_data_1074 = .data:0x00001074; // type:object size:0x18 +lbl_1_data_108C = .data:0x0000108C; // type:object size:0x30 +lbl_1_data_10BC = .data:0x000010BC; // type:object size:0x204 +lbl_1_data_12C0 = .data:0x000012C0; // type:object size:0x204 +lbl_1_data_14C4 = .data:0x000014C4; // type:object size:0x204 +lbl_1_data_16C8 = .data:0x000016C8; // type:object size:0xC +lbl_1_data_16D4 = .data:0x000016D4; // type:object size:0x4 +lbl_1_data_16D8 = .data:0x000016D8; // type:object size:0x1D4 +lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x1D4 +lbl_1_data_1A80 = .data:0x00001A80; // type:object size:0x1D4 +lbl_1_data_1C54 = .data:0x00001C54; // type:object size:0x120 +lbl_1_data_1D74 = .data:0x00001D74; // type:object size:0x120 +lbl_1_data_1E94 = .data:0x00001E94; // type:object size:0x120 +lbl_1_data_1FB4 = .data:0x00001FB4; // type:object size:0xF0 +lbl_1_data_20A4 = .data:0x000020A4; // type:object size:0xF0 +lbl_1_data_2194 = .data:0x00002194; // type:object size:0xF0 +lbl_1_data_2284 = .data:0x00002284; // type:object size:0x24 +lbl_1_data_22A8 = .data:0x000022A8; // type:object size:0xC +lbl_1_data_22B4 = .data:0x000022B4; // type:object size:0x174 +lbl_1_data_2428 = .data:0x00002428; // type:object size:0x174 +lbl_1_data_259C = .data:0x0000259C; // type:object size:0x174 +lbl_1_data_2710 = .data:0x00002710; // type:object size:0x144 +lbl_1_data_2854 = .data:0x00002854; // type:object size:0x144 +lbl_1_data_2998 = .data:0x00002998; // type:object size:0x144 +lbl_1_data_2ADC = .data:0x00002ADC; // type:object size:0x1A4 +lbl_1_data_2C80 = .data:0x00002C80; // type:object size:0x1A4 +lbl_1_data_2E24 = .data:0x00002E24; // type:object size:0x1A4 +lbl_1_data_2FC8 = .data:0x00002FC8; // type:object size:0x24 +lbl_1_data_2FEC = .data:0x00002FEC; // type:object size:0xC +lbl_1_data_2FF8 = .data:0x00002FF8; // type:object size:0x294 +lbl_1_data_328C = .data:0x0000328C; // type:object size:0x294 +lbl_1_data_3520 = .data:0x00003520; // type:object size:0x294 +lbl_1_data_37B4 = .data:0x000037B4; // type:object size:0xC +lbl_1_data_37C0 = .data:0x000037C0; // type:object size:0x4 +lbl_1_data_37C4 = .data:0x000037C4; // type:object size:0x198 +lbl_1_data_395C = .data:0x0000395C; // type:object size:0x198 +lbl_1_data_3AF4 = .data:0x00003AF4; // type:object size:0x198 +lbl_1_data_3C8C = .data:0x00003C8C; // type:object size:0x198 +lbl_1_data_3E24 = .data:0x00003E24; // type:object size:0x198 +lbl_1_data_3FBC = .data:0x00003FBC; // type:object size:0x198 +lbl_1_data_4154 = .data:0x00004154; // type:object size:0x18 +lbl_1_data_416C = .data:0x0000416C; // type:object size:0x8 +lbl_1_data_4174 = .data:0x00004174; // type:object size:0x210 +lbl_1_data_4384 = .data:0x00004384; // type:object size:0x210 +lbl_1_data_4594 = .data:0x00004594; // type:object size:0x210 +lbl_1_data_47A4 = .data:0x000047A4; // type:object size:0x210 +lbl_1_data_49B4 = .data:0x000049B4; // type:object size:0x210 +lbl_1_data_4BC4 = .data:0x00004BC4; // type:object size:0x210 +lbl_1_data_4DD4 = .data:0x00004DD4; // type:object size:0x18 +lbl_1_data_4DEC = .data:0x00004DEC; // type:object size:0x8 +lbl_1_data_4DF4 = .data:0x00004DF4; // type:object size:0x1D4 +lbl_1_data_4FC8 = .data:0x00004FC8; // type:object size:0x1D4 +lbl_1_data_519C = .data:0x0000519C; // type:object size:0x1D4 +lbl_1_data_5370 = .data:0x00005370; // type:object size:0x1D4 +lbl_1_data_5544 = .data:0x00005544; // type:object size:0x1D4 +lbl_1_data_5718 = .data:0x00005718; // type:object size:0x1D4 +lbl_1_data_58EC = .data:0x000058EC; // type:object size:0x18 +lbl_1_data_5904 = .data:0x00005904; // type:object size:0x8 +lbl_1_data_590C = .data:0x0000590C; // type:object size:0x18C +lbl_1_data_5A98 = .data:0x00005A98; // type:object size:0x18C +lbl_1_data_5C24 = .data:0x00005C24; // type:object size:0x18C +lbl_1_data_5DB0 = .data:0x00005DB0; // type:object size:0x168 +lbl_1_data_5F18 = .data:0x00005F18; // type:object size:0x168 +lbl_1_data_6080 = .data:0x00006080; // type:object size:0x168 +lbl_1_data_61E8 = .data:0x000061E8; // type:object size:0x18 +lbl_1_data_6200 = .data:0x00006200; // type:object size:0x8 +lbl_1_data_6208 = .data:0x00006208; // type:object size:0x174 +lbl_1_data_637C = .data:0x0000637C; // type:object size:0x174 +lbl_1_data_64F0 = .data:0x000064F0; // type:object size:0x174 +lbl_1_data_6664 = .data:0x00006664; // type:object size:0x15C +lbl_1_data_67C0 = .data:0x000067C0; // type:object size:0x15C +lbl_1_data_691C = .data:0x0000691C; // type:object size:0x15C +lbl_1_data_6A78 = .data:0x00006A78; // type:object size:0x18 +lbl_1_data_6A90 = .data:0x00006A90; // type:object size:0x8 +lbl_1_data_6A98 = .data:0x00006A98; // type:object size:0x18C +lbl_1_data_6C24 = .data:0x00006C24; // type:object size:0x18C +lbl_1_data_6DB0 = .data:0x00006DB0; // type:object size:0x18C +lbl_1_data_6F3C = .data:0x00006F3C; // type:object size:0x174 +lbl_1_data_70B0 = .data:0x000070B0; // type:object size:0x174 +lbl_1_data_7224 = .data:0x00007224; // type:object size:0x174 +lbl_1_data_7398 = .data:0x00007398; // type:object size:0x18 +lbl_1_data_73B0 = .data:0x000073B0; // type:object size:0x8 +lbl_1_data_73B8 = .data:0x000073B8; // type:object size:0x14 +lbl_1_data_73CC = .data:0x000073CC; // type:object size:0x28 +lbl_1_data_73F4 = .data:0x000073F4; // type:object size:0x28 +lbl_1_data_741C = .data:0x0000741C; // type:object size:0x70 data:float +lbl_1_data_748C = .data:0x0000748C; // type:object size:0x140 +lbl_1_data_75CC = .data:0x000075CC; // type:object size:0x14 +lbl_1_data_75E0 = .data:0x000075E0; // type:object size:0x10 data:4byte +lbl_1_data_75F0 = .data:0x000075F0; // type:object size:0xC data:float +lbl_1_data_75FC = .data:0x000075FC; // type:object size:0xC data:float +lbl_1_data_7608 = .data:0x00007608; // type:object size:0x4 +lbl_1_data_760C = .data:0x0000760C; // type:object size:0xC +lbl_1_data_7618 = .data:0x00007618; // type:object size:0xC +lbl_1_data_7624 = .data:0x00007624; // type:object size:0x24 +lbl_1_data_7648 = .data:0x00007648; // type:object size:0x4 data:4byte +lbl_1_data_764C = .data:0x0000764C; // type:object size:0x4 data:4byte +jumptable_1_data_7650 = .data:0x00007650; // type:object size:0x28 scope:local +lbl_1_data_7678 = .data:0x00007678; // type:object size:0x1C data:string +lbl_1_data_7694 = .data:0x00007694; // type:object size:0x1C +lbl_1_data_76B0 = .data:0x000076B0; // type:object size:0x58 +lbl_1_data_7708 = .data:0x00007708; // type:object size:0x30 +lbl_1_data_7738 = .data:0x00007738; // type:object size:0x5C +lbl_1_data_7794 = .data:0x00007794; // type:object size:0x4 +lbl_1_data_7798 = .data:0x00007798; // type:object size:0x4 data:4byte +lbl_1_data_779C = .data:0x0000779C; // type:object size:0x4 data:4byte +lbl_1_data_77A0 = .data:0x000077A0; // type:object size:0x28 +lbl_1_data_77C8 = .data:0x000077C8; // type:object size:0x70 +lbl_1_data_7838 = .data:0x00007838; // type:object size:0x1C +lbl_1_data_7854 = .data:0x00007854; // type:object size:0x6 data:string +lbl_1_data_785A = .data:0x0000785A; // type:object size:0x6 data:string +lbl_1_data_7860 = .data:0x00007860; // type:object size:0x8 data:string +lbl_1_data_7868 = .data:0x00007868; // type:object size:0x6 data:string +lbl_1_data_786E = .data:0x0000786E; // type:object size:0x8 data:string +lbl_1_data_7876 = .data:0x00007876; // type:object size:0x6 data:string +lbl_1_data_787C = .data:0x0000787C; // type:object size:0x6 data:string +lbl_1_data_7882 = .data:0x00007882; // type:object size:0x6 data:string +lbl_1_data_7888 = .data:0x00007888; // type:object size:0x6 data:string +lbl_1_data_788E = .data:0x0000788E; // type:object size:0x6 data:string +lbl_1_data_7894 = .data:0x00007894; // type:object size:0x6 data:string +lbl_1_data_789A = .data:0x0000789A; // type:object size:0x6 data:string +lbl_1_data_78A0 = .data:0x000078A0; // type:object size:0x20 +lbl_1_data_78C0 = .data:0x000078C0; // type:object size:0x30 +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x20 +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x2 data:2byte +lbl_1_bss_32 = .bss:0x00000032; // type:object size:0x2 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0xC data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x90 +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x24 +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x24 +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0xC +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:4byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x2 data:2byte +lbl_1_bss_12E = .bss:0x0000012E; // type:object size:0x2 data:2byte +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x2 data:2byte +lbl_1_bss_132 = .bss:0x00000132; // type:object size:0x8 data:2byte +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 data:2byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x2 data:2byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:4byte +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x10 data:4byte +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x8 data:4byte +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x4 data:4byte +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m440Dll/splits.txt b/config/GMPJ01_00/rels/m440Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m440Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m440Dll/symbols.txt b/config/GMPJ01_00/rels/m440Dll/symbols.txt new file mode 100644 index 00000000..562ed3d5 --- /dev/null +++ b/config/GMPJ01_00/rels/m440Dll/symbols.txt @@ -0,0 +1,288 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x324 +fn_1_3C4 = .text:0x000003C4; // type:function size:0x70 +fn_1_434 = .text:0x00000434; // type:function size:0x70 +fn_1_4A4 = .text:0x000004A4; // type:function size:0x224 +fn_1_6C8 = .text:0x000006C8; // type:function size:0x228 +fn_1_8F0 = .text:0x000008F0; // type:function size:0x1F0 +fn_1_AE0 = .text:0x00000AE0; // type:function size:0x334 +fn_1_E14 = .text:0x00000E14; // type:function size:0x324 +fn_1_1138 = .text:0x00001138; // type:function size:0x5A0 +fn_1_16D8 = .text:0x000016D8; // type:function size:0x30 +fn_1_1708 = .text:0x00001708; // type:function size:0x60 +fn_1_1768 = .text:0x00001768; // type:function size:0x64 +fn_1_17CC = .text:0x000017CC; // type:function size:0x28 +fn_1_17F4 = .text:0x000017F4; // type:function size:0x28 +fn_1_181C = .text:0x0000181C; // type:function size:0x74 +fn_1_1890 = .text:0x00001890; // type:function size:0x50 +fn_1_18E0 = .text:0x000018E0; // type:function size:0x74 +fn_1_1954 = .text:0x00001954; // type:function size:0x5C +fn_1_19B0 = .text:0x000019B0; // type:function size:0x2FC +fn_1_1CAC = .text:0x00001CAC; // type:function size:0xA8 +fn_1_1D54 = .text:0x00001D54; // type:function size:0x4EC +fn_1_2240 = .text:0x00002240; // type:function size:0x1A4 +fn_1_23E4 = .text:0x000023E4; // type:function size:0x44 +fn_1_2428 = .text:0x00002428; // type:function size:0x48 +fn_1_2470 = .text:0x00002470; // type:function size:0x604 +fn_1_2A74 = .text:0x00002A74; // type:function size:0x40 +fn_1_2AB4 = .text:0x00002AB4; // type:function size:0x50 +fn_1_2B04 = .text:0x00002B04; // type:function size:0x1A4 +fn_1_2CA8 = .text:0x00002CA8; // type:function size:0x80 +fn_1_2D28 = .text:0x00002D28; // type:function size:0x6AC +fn_1_33D4 = .text:0x000033D4; // type:function size:0xA04 +fn_1_3DD8 = .text:0x00003DD8; // type:function size:0x780 +fn_1_4558 = .text:0x00004558; // type:function size:0x64 +fn_1_45BC = .text:0x000045BC; // type:function size:0xA4 +fn_1_4660 = .text:0x00004660; // type:function size:0x80 +fn_1_46E0 = .text:0x000046E0; // type:function size:0x340 +fn_1_4A20 = .text:0x00004A20; // type:function size:0x124 +fn_1_4B44 = .text:0x00004B44; // type:function size:0x2BC +fn_1_4E00 = .text:0x00004E00; // type:function size:0x2C +fn_1_4E2C = .text:0x00004E2C; // type:function size:0x28 +fn_1_4E54 = .text:0x00004E54; // type:function size:0x54 +fn_1_4EA8 = .text:0x00004EA8; // type:function size:0x44 +fn_1_4EEC = .text:0x00004EEC; // type:function size:0x48 +fn_1_4F34 = .text:0x00004F34; // type:function size:0xDC +fn_1_5010 = .text:0x00005010; // type:function size:0x7A4 +fn_1_57B4 = .text:0x000057B4; // type:function size:0x478 +fn_1_5C2C = .text:0x00005C2C; // type:function size:0x928 +fn_1_6554 = .text:0x00006554; // type:function size:0x604 +fn_1_6B58 = .text:0x00006B58; // type:function size:0x6A4 +fn_1_71FC = .text:0x000071FC; // type:function size:0x738 +fn_1_7934 = .text:0x00007934; // type:function size:0x42C +fn_1_7D60 = .text:0x00007D60; // type:function size:0x30C +fn_1_806C = .text:0x0000806C; // type:function size:0x404 +fn_1_8470 = .text:0x00008470; // type:function size:0x654 +fn_1_8AC4 = .text:0x00008AC4; // type:function size:0x258 +fn_1_8D1C = .text:0x00008D1C; // type:function size:0x488 +fn_1_91A4 = .text:0x000091A4; // type:function size:0xD8 +fn_1_927C = .text:0x0000927C; // type:function size:0xC8 +fn_1_9344 = .text:0x00009344; // type:function size:0x7C +fn_1_93C0 = .text:0x000093C0; // type:function size:0x10 +fn_1_93D0 = .text:0x000093D0; // type:function size:0x5C +fn_1_942C = .text:0x0000942C; // type:function size:0x140 +fn_1_956C = .text:0x0000956C; // type:function size:0x544 +fn_1_9AB0 = .text:0x00009AB0; // type:function size:0x60 +fn_1_9B10 = .text:0x00009B10; // type:function size:0x2C +fn_1_9B3C = .text:0x00009B3C; // type:function size:0x58 +fn_1_9B94 = .text:0x00009B94; // type:function size:0x38 +fn_1_9BCC = .text:0x00009BCC; // type:function size:0x38 +fn_1_9C04 = .text:0x00009C04; // type:function size:0x5B4 +fn_1_A1B8 = .text:0x0000A1B8; // type:function size:0xCC +fn_1_A284 = .text:0x0000A284; // type:function size:0xA4 +fn_1_A328 = .text:0x0000A328; // type:function size:0x68 +fn_1_A390 = .text:0x0000A390; // type:function size:0x704 +fn_1_AA94 = .text:0x0000AA94; // type:function size:0x374 +fn_1_AE08 = .text:0x0000AE08; // type:function size:0xDC +fn_1_AEE4 = .text:0x0000AEE4; // type:function size:0x298 +fn_1_B17C = .text:0x0000B17C; // type:function size:0x4 +fn_1_B180 = .text:0x0000B180; // type:function size:0x224 +fn_1_B3A4 = .text:0x0000B3A4; // type:function size:0x4E0 +fn_1_B884 = .text:0x0000B884; // type:function size:0x950 +fn_1_C1D4 = .text:0x0000C1D4; // type:function size:0x770 +fn_1_C944 = .text:0x0000C944; // type:function size:0x668 +fn_1_CFAC = .text:0x0000CFAC; // type:function size:0x2A0 +fn_1_D24C = .text:0x0000D24C; // type:function size:0x100 +fn_1_D34C = .text:0x0000D34C; // type:function size:0x4AC +fn_1_D7F8 = .text:0x0000D7F8; // type:function size:0x83C +fn_1_E034 = .text:0x0000E034; // type:function size:0x878 +fn_1_E8AC = .text:0x0000E8AC; // type:function size:0x4DC +fn_1_ED88 = .text:0x0000ED88; // type:function size:0xF0 +fn_1_EE78 = .text:0x0000EE78; // type:function size:0xD8 +fn_1_EF50 = .text:0x0000EF50; // type:function size:0x1AC +fn_1_F0FC = .text:0x0000F0FC; // type:function size:0x6C +fn_1_F168 = .text:0x0000F168; // type:function size:0xC0 +fn_1_F228 = .text:0x0000F228; // type:function size:0x298 +fn_1_F4C0 = .text:0x0000F4C0; // type:function size:0x14 +fn_1_F4D4 = .text:0x0000F4D4; // type:function size:0x28 +fn_1_F4FC = .text:0x0000F4FC; // type:function size:0x18 +_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +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:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0xC data:2byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0xC data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:2byte +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x14 +lbl_1_data_14 = .data:0x00000014; // type:object size:0xC +lbl_1_data_20 = .data:0x00000020; // type:object size:0xC data:float +lbl_1_data_2C = .data:0x0000002C; // type:object size:0xC data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0xC +lbl_1_data_44 = .data:0x00000044; // type:object size:0x10 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC data:float +lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float +lbl_1_data_CC = .data:0x000000CC; // type:object size:0x18 +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x2 data:2byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x2 data:2byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2 data:2byte +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x10 +lbl_1_data_104 = .data:0x00000104; // type:object size:0x2 data:2byte +lbl_1_data_108 = .data:0x00000108; // type:object size:0x2 data:2byte +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x12 +lbl_1_data_11E = .data:0x0000011E; // type:object size:0x13 data:string +lbl_1_data_131 = .data:0x00000131; // type:object size:0x18 +lbl_1_data_149 = .data:0x00000149; // type:object size:0x19 data:string +lbl_1_data_162 = .data:0x00000162; // type:object size:0x1C data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x10 data:string +lbl_1_data_18E = .data:0x0000018E; // type:object size:0x26 data:string +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte +lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x40 +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 +jumptable_1_data_22C = .data:0x0000022C; // type:object size:0x24 scope:local +lbl_1_data_250 = .data:0x00000250; // type:object size:0x4 data:float +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte +lbl_1_bss_1 = .bss:0x00000001; // type:object size:0x1 data:byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x1 data:byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x1 data:byte +lbl_1_bss_B = .bss:0x0000000B; // type:object size:0x1 data:byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x1 data:byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x14 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x30 +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2 data:2byte +lbl_1_bss_72 = .bss:0x00000072; // type:object size:0x1 data:byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x2 data:2byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0xC data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:float +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x30 data:float +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x8 +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x10 diff --git a/config/GMPJ01_00/rels/m441Dll/splits.txt b/config/GMPJ01_00/rels/m441Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m441Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m441Dll/symbols.txt b/config/GMPJ01_00/rels/m441Dll/symbols.txt new file mode 100644 index 00000000..08b35ee9 --- /dev/null +++ b/config/GMPJ01_00/rels/m441Dll/symbols.txt @@ -0,0 +1,224 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x218 +fn_1_798 = .text:0x00000798; // type:function size:0x254 +fn_1_9EC = .text:0x000009EC; // type:function size:0x54 +fn_1_A40 = .text:0x00000A40; // type:function size:0x10C +fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C +fn_1_1350 = .text:0x00001350; // type:function size:0x8C +fn_1_13DC = .text:0x000013DC; // type:function size:0x334 +fn_1_1710 = .text:0x00001710; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 +fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 +_prolog = .text:0x000023B4; // type:function size:0x54 scope:global +_epilog = .text:0x00002408; // type:function size:0x4C scope:global +fn_1_2454 = .text:0x00002454; // type:function size:0x2E8 +fn_1_273C = .text:0x0000273C; // type:function size:0x1C8 +fn_1_2904 = .text:0x00002904; // type:function size:0x2D0 +fn_1_2BD4 = .text:0x00002BD4; // type:function size:0x830 +fn_1_3404 = .text:0x00003404; // type:function size:0x700 +fn_1_3B04 = .text:0x00003B04; // type:function size:0xFC +fn_1_3C00 = .text:0x00003C00; // type:function size:0x4A8 +fn_1_40A8 = .text:0x000040A8; // type:function size:0x1340 +fn_1_53E8 = .text:0x000053E8; // type:function size:0x744 +fn_1_5B2C = .text:0x00005B2C; // type:function size:0xD8 +fn_1_5C04 = .text:0x00005C04; // type:function size:0x1538 +fn_1_713C = .text:0x0000713C; // type:function size:0x3B8 +fn_1_74F4 = .text:0x000074F4; // type:function size:0x464 +fn_1_7958 = .text:0x00007958; // type:function size:0xD4 +fn_1_7A2C = .text:0x00007A2C; // type:function size:0x610 +fn_1_803C = .text:0x0000803C; // type:function size:0x4DC +fn_1_8518 = .text:0x00008518; // type:function size:0x414 +fn_1_892C = .text:0x0000892C; // type:function size:0x174 +fn_1_8AA0 = .text:0x00008AA0; // type:function size:0x2B8 +fn_1_8D58 = .text:0x00008D58; // type:function size:0x11E8 +fn_1_9F40 = .text:0x00009F40; // type:function size:0x570 +fn_1_A4B0 = .text:0x0000A4B0; // type:function size:0x59C +fn_1_AA4C = .text:0x0000AA4C; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte +lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:4byte +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC +lbl_1_data_4C = .data:0x0000004C; // type:object size:0xC data:4byte +lbl_1_data_58 = .data:0x00000058; // type:object size:0xC data:4byte +lbl_1_data_64 = .data:0x00000064; // type:object size:0xC +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC data:4byte +lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC +lbl_1_data_88 = .data:0x00000088; // type:object size:0xC +lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 +lbl_1_data_98 = .data:0x00000098; // type:object size:0xC +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0xC +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x200 +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x8 +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0xC +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x10 +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x40 +lbl_1_data_314 = .data:0x00000314; // type:object size:0xC +lbl_1_data_320 = .data:0x00000320; // type:object size:0x6 +lbl_1_data_326 = .data:0x00000326; // type:object size:0x6 +lbl_1_data_32C = .data:0x0000032C; // type:object size:0x24 +lbl_1_data_350 = .data:0x00000350; // type:object size:0x18 +lbl_1_data_368 = .data:0x00000368; // type:object size:0x4 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC +lbl_1_data_378 = .data:0x00000378; // type:object size:0xC +lbl_1_data_384 = .data:0x00000384; // type:object size:0xC +lbl_1_data_390 = .data:0x00000390; // type:object size:0xC +lbl_1_data_39C = .data:0x0000039C; // type:object size:0x50 +lbl_1_data_3EC = .data:0x000003EC; // type:object size:0x50 +lbl_1_data_43C = .data:0x0000043C; // type:object size:0x50 +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x50 +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x18 data:string +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x9 data:string +lbl_1_data_4FD = .data:0x000004FD; // type:object size:0x6 data:string +lbl_1_data_503 = .data:0x00000503; // type:object size:0x1D data:string +jumptable_1_data_520 = .data:0x00000520; // type:object size:0x40 scope:local +lbl_1_data_560 = .data:0x00000560; // type:object size:0x8 data:string +lbl_1_data_568 = .data:0x00000568; // type:object size:0x1C +jumptable_1_data_584 = .data:0x00000584; // type:object size:0x24 scope:local +lbl_1_data_5A8 = .data:0x000005A8; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x6 +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x6 +lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x2 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x100 +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x40 data:4byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:float +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x4 data:4byte +lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x4 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x2 data:2byte +lbl_1_bss_19E = .bss:0x0000019E; // type:object size:0x2 data:2byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:4byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0xC data:4byte +lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC data:4byte +lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC data:4byte +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0x4 data:4byte +lbl_1_bss_1E0 = .bss:0x000001E0; // type:object size:0x18 data:4byte +lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m442Dll/splits.txt b/config/GMPJ01_00/rels/m442Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m442Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m442Dll/symbols.txt b/config/GMPJ01_00/rels/m442Dll/symbols.txt new file mode 100644 index 00000000..2e955733 --- /dev/null +++ b/config/GMPJ01_00/rels/m442Dll/symbols.txt @@ -0,0 +1,225 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2D4 +fn_1_374 = .text:0x00000374; // type:function size:0x10 +fn_1_384 = .text:0x00000384; // type:function size:0x10 +fn_1_394 = .text:0x00000394; // type:function size:0xB4 +fn_1_448 = .text:0x00000448; // type:function size:0x5E8 +fn_1_A30 = .text:0x00000A30; // type:function size:0x60 +fn_1_A90 = .text:0x00000A90; // type:function size:0x30C +fn_1_D9C = .text:0x00000D9C; // type:function size:0x68 +fn_1_E04 = .text:0x00000E04; // type:function size:0x84 +fn_1_E88 = .text:0x00000E88; // type:function size:0x378 +fn_1_1200 = .text:0x00001200; // type:function size:0x30 +fn_1_1230 = .text:0x00001230; // type:function size:0xDE0 +fn_1_2010 = .text:0x00002010; // type:function size:0x244 +fn_1_2254 = .text:0x00002254; // type:function size:0xFA8 +fn_1_31FC = .text:0x000031FC; // type:function size:0x3B0 +fn_1_35AC = .text:0x000035AC; // type:function size:0xAC +fn_1_3658 = .text:0x00003658; // type:function size:0x160 +fn_1_37B8 = .text:0x000037B8; // type:function size:0x150 +fn_1_3908 = .text:0x00003908; // type:function size:0x1DC +fn_1_3AE4 = .text:0x00003AE4; // type:function size:0x13C +fn_1_3C20 = .text:0x00003C20; // type:function size:0x74 +fn_1_3C94 = .text:0x00003C94; // type:function size:0x180 +fn_1_3E14 = .text:0x00003E14; // type:function size:0x50 +fn_1_3E64 = .text:0x00003E64; // type:function size:0x58 +fn_1_3EBC = .text:0x00003EBC; // type:function size:0x4 +fn_1_3EC0 = .text:0x00003EC0; // type:function size:0x4A4 +fn_1_4364 = .text:0x00004364; // type:function size:0x4 +fn_1_4368 = .text:0x00004368; // type:function size:0xDC +fn_1_4444 = .text:0x00004444; // type:function size:0x418 +fn_1_485C = .text:0x0000485C; // type:function size:0xC6C +fn_1_54C8 = .text:0x000054C8; // type:function size:0x450 +fn_1_5918 = .text:0x00005918; // type:function size:0xA8 +fn_1_59C0 = .text:0x000059C0; // type:function size:0x88 +fn_1_5A48 = .text:0x00005A48; // type:function size:0x494 +fn_1_5EDC = .text:0x00005EDC; // type:function size:0x5D8 +fn_1_64B4 = .text:0x000064B4; // type:function size:0x700 +fn_1_6BB4 = .text:0x00006BB4; // type:function size:0x114 +fn_1_6CC8 = .text:0x00006CC8; // type:function size:0x5C +fn_1_6D24 = .text:0x00006D24; // type:function size:0x5A0 +fn_1_72C4 = .text:0x000072C4; // type:function size:0x318 +fn_1_75DC = .text:0x000075DC; // type:function size:0x158 +fn_1_7734 = .text:0x00007734; // type:function size:0x114 +fn_1_7848 = .text:0x00007848; // type:function size:0x48 +fn_1_7890 = .text:0x00007890; // type:function size:0x3FC +fn_1_7C8C = .text:0x00007C8C; // type:function size:0x230 +fn_1_7EBC = .text:0x00007EBC; // type:function size:0x664 +fn_1_8520 = .text:0x00008520; // type:function size:0xC8 +fn_1_85E8 = .text:0x000085E8; // type:function size:0x104 +fn_1_86EC = .text:0x000086EC; // type:function size:0x4C +fn_1_8738 = .text:0x00008738; // type:function size:0x250 +fn_1_8988 = .text:0x00008988; // type:function size:0x764 +fn_1_90EC = .text:0x000090EC; // type:function size:0x10 +fn_1_90FC = .text:0x000090FC; // type:function size:0xB0 +fn_1_91AC = .text:0x000091AC; // type:function size:0x28C +fn_1_9438 = .text:0x00009438; // type:function size:0x74 +fn_1_94AC = .text:0x000094AC; // type:function size:0x50 +fn_1_94FC = .text:0x000094FC; // type:function size:0x24 +fn_1_9520 = .text:0x00009520; // type:function size:0x30 +fn_1_9550 = .text:0x00009550; // type:function size:0x1BC +fn_1_970C = .text:0x0000970C; // type:function size:0x78 +fn_1_9784 = .text:0x00009784; // type:function size:0x88 +fn_1_980C = .text:0x0000980C; // type:function size:0x164 +_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:0x10 data:4byte +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:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0xC data:4byte +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +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:0x8 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:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC data:float +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x4 +lbl_1_data_70 = .data:0x00000070; // type:object size:0xC +lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC +lbl_1_data_88 = .data:0x00000088; // type:object size:0x24 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x4 data:4byte +jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x30 scope:local +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x1C data:string +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x1C +lbl_1_data_118 = .data:0x00000118; // type:object size:0x8 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x30 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x1A +lbl_1_data_16A = .data:0x0000016A; // type:object size:0x20 +lbl_1_data_18A = .data:0x0000018A; // type:object size:0x16 +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xC data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x1 data:byte +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x1 data:byte +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x30 +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x1 data:byte +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 +lbl_1_data_218 = .data:0x00000218; // type:object size:0x1 data:byte +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x20 +lbl_1_data_23C = .data:0x0000023C; // type:object size:0xC +lbl_1_data_248 = .data:0x00000248; // type:object size:0x8 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x8 data:float +lbl_1_data_258 = .data:0x00000258; // type:object size:0x10 +lbl_1_data_268 = .data:0x00000268; // type:object size:0xC +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x3C +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0xC000 data:2byte +lbl_1_bss_C05C = .bss:0x0000C05C; // type:object size:0x28 data:2byte +lbl_1_bss_C084 = .bss:0x0000C084; // type:object size:0x974 +lbl_1_bss_C9F8 = .bss:0x0000C9F8; // type:object size:0x5000 data:4byte +lbl_1_bss_119F8 = .bss:0x000119F8; // type:object size:0x4 data:4byte +lbl_1_bss_119FC = .bss:0x000119FC; // type:object size:0x271 +lbl_1_bss_11C6D = .bss:0x00011C6D; // type:object size:0x273 +lbl_1_bss_11EE0 = .bss:0x00011EE0; // type:object size:0x4 data:4byte +lbl_1_bss_11EE4 = .bss:0x00011EE4; // type:object size:0x4 data:4byte +lbl_1_bss_11EE8 = .bss:0x00011EE8; // type:object size:0x2 data:2byte +lbl_1_bss_11EEC = .bss:0x00011EEC; // type:object size:0x10 +lbl_1_bss_11EFC = .bss:0x00011EFC; // type:object size:0x4 data:4byte +lbl_1_bss_11F00 = .bss:0x00011F00; // type:object size:0x4 data:4byte +lbl_1_bss_11F04 = .bss:0x00011F04; // type:object size:0xC +lbl_1_bss_11F10 = .bss:0x00011F10; // type:object size:0x4 data:4byte +lbl_1_bss_11F14 = .bss:0x00011F14; // type:object size:0x2 data:2byte +lbl_1_bss_11F16 = .bss:0x00011F16; // type:object size:0x2 data:2byte +lbl_1_bss_11F18 = .bss:0x00011F18; // type:object size:0x2 data:2byte +lbl_1_bss_11F1A = .bss:0x00011F1A; // type:object size:0x2 data:2byte +lbl_1_bss_11F1C = .bss:0x00011F1C; // type:object size:0x2 data:2byte +lbl_1_bss_11F20 = .bss:0x00011F20; // type:object size:0x4 data:4byte +lbl_1_bss_11F24 = .bss:0x00011F24; // type:object size:0x4 data:4byte +lbl_1_bss_11F28 = .bss:0x00011F28; // type:object size:0x4 data:4byte +lbl_1_bss_11F2C = .bss:0x00011F2C; // type:object size:0x4 data:4byte +lbl_1_bss_11F30 = .bss:0x00011F30; // type:object size:0x8 data:4byte +lbl_1_bss_11F38 = .bss:0x00011F38; // type:object size:0x4 data:4byte +lbl_1_bss_11F3C = .bss:0x00011F3C; // type:object size:0x4 data:4byte +lbl_1_bss_11F40 = .bss:0x00011F40; // type:object size:0x8 data:4byte +lbl_1_bss_11F48 = .bss:0x00011F48; // type:object size:0x4 data:4byte +lbl_1_bss_11F4C = .bss:0x00011F4C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m443Dll/splits.txt b/config/GMPJ01_00/rels/m443Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m443Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m443Dll/symbols.txt b/config/GMPJ01_00/rels/m443Dll/symbols.txt new file mode 100644 index 00000000..b5924ac6 --- /dev/null +++ b/config/GMPJ01_00/rels/m443Dll/symbols.txt @@ -0,0 +1,330 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x380 +fn_1_420 = .text:0x00000420; // type:function size:0xC4 +fn_1_4E4 = .text:0x000004E4; // type:function size:0xA0 +fn_1_584 = .text:0x00000584; // type:function size:0x14C +fn_1_6D0 = .text:0x000006D0; // type:function size:0x2E0 +fn_1_9B0 = .text:0x000009B0; // type:function size:0x330 +fn_1_CE0 = .text:0x00000CE0; // type:function size:0x1EC +fn_1_ECC = .text:0x00000ECC; // type:function size:0x3C8 +fn_1_1294 = .text:0x00001294; // type:function size:0x544 +fn_1_17D8 = .text:0x000017D8; // type:function size:0x4C0 +fn_1_1C98 = .text:0x00001C98; // type:function size:0xF4 +fn_1_1D8C = .text:0x00001D8C; // type:function size:0x704 +fn_1_2490 = .text:0x00002490; // type:function size:0x114 +fn_1_25A4 = .text:0x000025A4; // type:function size:0x834 +fn_1_2DD8 = .text:0x00002DD8; // type:function size:0x17C +fn_1_2F54 = .text:0x00002F54; // type:function size:0x36C +fn_1_32C0 = .text:0x000032C0; // type:function size:0xB0 +fn_1_3370 = .text:0x00003370; // type:function size:0x3A0 +fn_1_3710 = .text:0x00003710; // type:function size:0x60 +fn_1_3770 = .text:0x00003770; // type:function size:0x608 +fn_1_3D78 = .text:0x00003D78; // type:function size:0x270 +fn_1_3FE8 = .text:0x00003FE8; // type:function size:0x14 +fn_1_3FFC = .text:0x00003FFC; // type:function size:0x14 +fn_1_4010 = .text:0x00004010; // type:function size:0x9C +fn_1_40AC = .text:0x000040AC; // type:function size:0x9C +fn_1_4148 = .text:0x00004148; // type:function size:0x68 +fn_1_41B0 = .text:0x000041B0; // type:function size:0x6C +fn_1_421C = .text:0x0000421C; // type:function size:0x98 +fn_1_42B4 = .text:0x000042B4; // type:function size:0x18 +fn_1_42CC = .text:0x000042CC; // type:function size:0x18 +fn_1_42E4 = .text:0x000042E4; // type:function size:0x18 +fn_1_42FC = .text:0x000042FC; // type:function size:0x18 +fn_1_4314 = .text:0x00004314; // type:function size:0x54 +fn_1_4368 = .text:0x00004368; // type:function size:0x44 +fn_1_43AC = .text:0x000043AC; // type:function size:0x30 +fn_1_43DC = .text:0x000043DC; // type:function size:0x30 +fn_1_440C = .text:0x0000440C; // type:function size:0x38 +fn_1_4444 = .text:0x00004444; // type:function size:0x208 +fn_1_464C = .text:0x0000464C; // type:function size:0x240 +fn_1_488C = .text:0x0000488C; // type:function size:0x11C +fn_1_49A8 = .text:0x000049A8; // type:function size:0xB4 +fn_1_4A5C = .text:0x00004A5C; // type:function size:0x54 +fn_1_4AB0 = .text:0x00004AB0; // type:function size:0x4 +fn_1_4AB4 = .text:0x00004AB4; // type:function size:0x260 +fn_1_4D14 = .text:0x00004D14; // type:function size:0x730 +fn_1_5444 = .text:0x00005444; // type:function size:0x218 +fn_1_565C = .text:0x0000565C; // type:function size:0x24 +fn_1_5680 = .text:0x00005680; // type:function size:0x554 +fn_1_5BD4 = .text:0x00005BD4; // type:function size:0x884 +fn_1_6458 = .text:0x00006458; // type:function size:0x21C +fn_1_6674 = .text:0x00006674; // type:function size:0xDC +fn_1_6750 = .text:0x00006750; // type:function size:0x264 +fn_1_69B4 = .text:0x000069B4; // type:function size:0x1DC +fn_1_6B90 = .text:0x00006B90; // type:function size:0x218 +fn_1_6DA8 = .text:0x00006DA8; // type:function size:0x388 +fn_1_7130 = .text:0x00007130; // type:function size:0x210 +fn_1_7340 = .text:0x00007340; // type:function size:0xDF8 +fn_1_8138 = .text:0x00008138; // type:function size:0x18C +fn_1_82C4 = .text:0x000082C4; // type:function size:0x74 +fn_1_8338 = .text:0x00008338; // type:function size:0x1D0 +fn_1_8508 = .text:0x00008508; // type:function size:0x178 +fn_1_8680 = .text:0x00008680; // type:function size:0x2D8 +fn_1_8958 = .text:0x00008958; // type:function size:0x38 +fn_1_8990 = .text:0x00008990; // type:function size:0x138 +fn_1_8AC8 = .text:0x00008AC8; // type:function size:0x1A0 +fn_1_8C68 = .text:0x00008C68; // type:function size:0x24 +fn_1_8C8C = .text:0x00008C8C; // type:function size:0x74 +fn_1_8D00 = .text:0x00008D00; // type:function size:0x74 +fn_1_8D74 = .text:0x00008D74; // type:function size:0x18 +fn_1_8D8C = .text:0x00008D8C; // type:function size:0x54 +fn_1_8DE0 = .text:0x00008DE0; // type:function size:0x54 +fn_1_8E34 = .text:0x00008E34; // type:function size:0x1C8 +fn_1_8FFC = .text:0x00008FFC; // type:function size:0x5A8 +fn_1_95A4 = .text:0x000095A4; // type:function size:0x94 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x50 +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x14 data:4byte +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 data:4byte +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x10 data:4byte +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x8 data:double +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:0xC data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x34 data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x10 data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x40 data:4byte +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x10 data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x10 data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x20 data:4byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x48 +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x48 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x18 +lbl_1_data_108 = .data:0x00000108; // type:object size:0x80 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x80 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x1 data:byte +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x1A data:string +lbl_1_data_226 = .data:0x00000226; // type:object size:0x1A +lbl_1_data_240 = .data:0x00000240; // type:object size:0x18 +lbl_1_data_258 = .data:0x00000258; // type:object size:0x2C +lbl_1_data_284 = .data:0x00000284; // type:object size:0x40 +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x10 +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x50 +lbl_1_data_324 = .data:0x00000324; // type:object size:0x10 +lbl_1_data_334 = .data:0x00000334; // type:object size:0x10 +lbl_1_data_344 = .data:0x00000344; // type:object size:0x10 +lbl_1_data_354 = .data:0x00000354; // type:object size:0x10 +lbl_1_data_364 = .data:0x00000364; // type:object size:0x30 +lbl_1_data_394 = .data:0x00000394; // type:object size:0x30 +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x30 +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x5 data:string +lbl_1_data_3F9 = .data:0x000003F9; // type:object size:0x7 data:string +lbl_1_data_400 = .data:0x00000400; // type:object size:0x7 data:string +lbl_1_data_407 = .data:0x00000407; // type:object size:0x9 +lbl_1_data_410 = .data:0x00000410; // type:object size:0x58 +lbl_1_data_468 = .data:0x00000468; // type:object size:0x20 +lbl_1_data_488 = .data:0x00000488; // type:object size:0x58 +lbl_1_data_4E0 = .data:0x000004E0; // type:object size:0x10 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x3C data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x2 data:2byte +lbl_1_bss_56 = .bss:0x00000056; // type:object size:0x2 data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte +lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x2 data:2byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x8 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x18 +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x10 diff --git a/config/GMPJ01_00/rels/m444dll/splits.txt b/config/GMPJ01_00/rels/m444dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m444dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m444dll/symbols.txt b/config/GMPJ01_00/rels/m444dll/symbols.txt new file mode 100644 index 00000000..5cf095ae --- /dev/null +++ b/config/GMPJ01_00/rels/m444dll/symbols.txt @@ -0,0 +1,320 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3E0 +fn_1_480 = .text:0x00000480; // type:function size:0x370C +fn_1_3B8C = .text:0x00003B8C; // type:function size:0x1270 +fn_1_4DFC = .text:0x00004DFC; // type:function size:0x7C4 +fn_1_55C0 = .text:0x000055C0; // type:function size:0x1C4 +fn_1_5784 = .text:0x00005784; // type:function size:0x6F4 +fn_1_5E78 = .text:0x00005E78; // type:function size:0x6F4 +fn_1_656C = .text:0x0000656C; // type:function size:0x824 +fn_1_6D90 = .text:0x00006D90; // type:function size:0xBC +fn_1_6E4C = .text:0x00006E4C; // type:function size:0xA0 +fn_1_6EEC = .text:0x00006EEC; // type:function size:0x3B4 +fn_1_72A0 = .text:0x000072A0; // type:function size:0xC2C +fn_1_7ECC = .text:0x00007ECC; // type:function size:0x2C4 +fn_1_8190 = .text:0x00008190; // type:function size:0x90 +fn_1_8220 = .text:0x00008220; // type:function size:0xEC +fn_1_830C = .text:0x0000830C; // type:function size:0x128 +fn_1_8434 = .text:0x00008434; // type:function size:0x1F8 +fn_1_862C = .text:0x0000862C; // type:function size:0x7B4 +fn_1_8DE0 = .text:0x00008DE0; // type:function size:0x648 +fn_1_9428 = .text:0x00009428; // type:function size:0x894 +fn_1_9CBC = .text:0x00009CBC; // type:function size:0x3B4 +fn_1_A070 = .text:0x0000A070; // type:function size:0xB70 +fn_1_ABE0 = .text:0x0000ABE0; // type:function size:0x618 +fn_1_B1F8 = .text:0x0000B1F8; // type:function size:0x102C +fn_1_C224 = .text:0x0000C224; // type:function size:0x528 +fn_1_C74C = .text:0x0000C74C; // type:function size:0x2F4 +fn_1_CA40 = .text:0x0000CA40; // type:function size:0x140 +fn_1_CB80 = .text:0x0000CB80; // type:function size:0x298 +fn_1_CE18 = .text:0x0000CE18; // type:function size:0x194 +fn_1_CFAC = .text:0x0000CFAC; // type:function size:0x244 +fn_1_D1F0 = .text:0x0000D1F0; // type:function size:0x3A8 +fn_1_D598 = .text:0x0000D598; // type:function size:0x290 +fn_1_D828 = .text:0x0000D828; // type:function size:0x138 +fn_1_D960 = .text:0x0000D960; // type:function size:0x78 +fn_1_D9D8 = .text:0x0000D9D8; // type:function size:0x2C +fn_1_DA04 = .text:0x0000DA04; // type:function size:0x42C +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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_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:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0xC data:4byte +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x28 +lbl_1_data_140 = .data:0x00000140; // type:object size:0x54 data:float +lbl_1_data_194 = .data:0x00000194; // type:object size:0x20 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0xA data:string +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0xA data:string +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xA data:string +lbl_1_data_1F6 = .data:0x000001F6; // type:object size:0xD data:string +lbl_1_data_203 = .data:0x00000203; // type:object size:0xD data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0xD data:string +lbl_1_data_21D = .data:0x0000021D; // type:object size:0xD data:string +lbl_1_data_22A = .data:0x0000022A; // type:object size:0xB data:string +lbl_1_data_235 = .data:0x00000235; // type:object size:0xB data:string +lbl_1_data_240 = .data:0x00000240; // type:object size:0x4 +lbl_1_data_244 = .data:0x00000244; // type:object size:0xA data:string +lbl_1_data_24E = .data:0x0000024E; // type:object size:0xA +lbl_1_data_258 = .data:0x00000258; // type:object size:0xC +lbl_1_data_264 = .data:0x00000264; // type:object size:0x3C +lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0x28 +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0xA +lbl_1_data_2D2 = .data:0x000002D2; // type:object size:0xD data:string +lbl_1_data_2DF = .data:0x000002DF; // type:object size:0xD data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xD data:string +lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0xD data:string +lbl_1_data_306 = .data:0x00000306; // type:object size:0xD data:string +lbl_1_data_313 = .data:0x00000313; // type:object size:0xD data:string +lbl_1_data_320 = .data:0x00000320; // type:object size:0xD data:string +lbl_1_data_32D = .data:0x0000032D; // type:object size:0xD data:string +lbl_1_data_33A = .data:0x0000033A; // type:object size:0xD data:string +lbl_1_data_347 = .data:0x00000347; // type:object size:0xD data:string +lbl_1_data_354 = .data:0x00000354; // type:object size:0xD data:string +lbl_1_data_361 = .data:0x00000361; // type:object size:0xD data:string +lbl_1_data_36E = .data:0x0000036E; // type:object size:0xD data:string +lbl_1_data_37B = .data:0x0000037B; // type:object size:0xD data:string +jumptable_1_data_388 = .data:0x00000388; // type:object size:0x1C scope:local +lbl_1_data_3A4 = .data:0x000003A4; // type:object size:0x8 +lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x30 +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x24 +lbl_1_data_400 = .data:0x00000400; // type:object size:0x54 +lbl_1_data_454 = .data:0x00000454; // type:object size:0xC +lbl_1_data_460 = .data:0x00000460; // type:object size:0x10 data:string +lbl_1_data_470 = .data:0x00000470; // type:object size:0x127C +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x140 data:2byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x140 data:2byte +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x8 data:float +lbl_1_bss_290 = .bss:0x00000290; // type:object size:0x18 data:4byte +lbl_1_bss_2A8 = .bss:0x000002A8; // type:object size:0x18 data:float +lbl_1_bss_2C0 = .bss:0x000002C0; // type:object size:0x10 data:2byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x2 data:2byte +lbl_1_bss_2D2 = .bss:0x000002D2; // type:object size:0x2 data:2byte +lbl_1_bss_2D4 = .bss:0x000002D4; // type:object size:0x2 data:2byte +lbl_1_bss_2D6 = .bss:0x000002D6; // type:object size:0x2 data:2byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x2 data:2byte +lbl_1_bss_2DA = .bss:0x000002DA; // type:object size:0x2 data:2byte +lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x2 data:2byte +lbl_1_bss_2E0 = .bss:0x000002E0; // type:object size:0x4 data:float +lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0xC data:float +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0xC data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC data:4byte +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0x4 data:4byte +lbl_1_bss_310 = .bss:0x00000310; // type:object size:0x1 data:byte +lbl_1_bss_312 = .bss:0x00000312; // type:object size:0x2 data:2byte +lbl_1_bss_314 = .bss:0x00000314; // type:object size:0xC data:float +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x8 data:2byte +lbl_1_bss_328 = .bss:0x00000328; // type:object size:0x24 data:float +lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x24 data:float +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0x400 +lbl_1_bss_770 = .bss:0x00000770; // type:object size:0xC data:float +lbl_1_bss_77C = .bss:0x0000077C; // type:object size:0xC data:float +lbl_1_bss_788 = .bss:0x00000788; // type:object size:0xC +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x90 +lbl_1_bss_824 = .bss:0x00000824; // type:object size:0x3C +lbl_1_bss_860 = .bss:0x00000860; // type:object size:0x24 +lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x1000 +lbl_1_bss_1884 = .bss:0x00001884; // type:object size:0x2 data:2byte +lbl_1_bss_1888 = .bss:0x00001888; // type:object size:0xC data:float +lbl_1_bss_1894 = .bss:0x00001894; // type:object size:0xC data:float +lbl_1_bss_18A0 = .bss:0x000018A0; // type:object size:0x14 +lbl_1_bss_18B4 = .bss:0x000018B4; // type:object size:0x3C +lbl_1_bss_18F0 = .bss:0x000018F0; // type:object size:0xC000 +lbl_1_bss_D8F0 = .bss:0x0000D8F0; // type:object size:0xC000 +lbl_1_bss_198F0 = .bss:0x000198F0; // type:object size:0x1A +lbl_1_bss_1990A = .bss:0x0001990A; // type:object size:0x2 data:2byte +lbl_1_bss_1990E = .bss:0x0001990E; // type:object size:0xB4 data:2byte +lbl_1_bss_199C2 = .bss:0x000199C2; // type:object size:0xB4 data:2byte diff --git a/config/GMPJ01_00/rels/m445Dll/splits.txt b/config/GMPJ01_00/rels/m445Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m445Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m445Dll/symbols.txt b/config/GMPJ01_00/rels/m445Dll/symbols.txt new file mode 100644 index 00000000..1f0a49de --- /dev/null +++ b/config/GMPJ01_00/rels/m445Dll/symbols.txt @@ -0,0 +1,173 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x418 +fn_1_4B8 = .text:0x000004B8; // type:function size:0x54 +fn_1_50C = .text:0x0000050C; // type:function size:0x4 +fn_1_510 = .text:0x00000510; // type:function size:0x10 +fn_1_520 = .text:0x00000520; // type:function size:0x30 +fn_1_550 = .text:0x00000550; // type:function size:0x1308 +fn_1_1858 = .text:0x00001858; // type:function size:0x80 +fn_1_18D8 = .text:0x000018D8; // type:function size:0x5C +fn_1_1934 = .text:0x00001934; // type:function size:0x34 +fn_1_1968 = .text:0x00001968; // type:function size:0x168 +fn_1_1AD0 = .text:0x00001AD0; // type:function size:0x3C +fn_1_1B0C = .text:0x00001B0C; // type:function size:0x158 +fn_1_1C64 = .text:0x00001C64; // type:function size:0xF90 +fn_1_2BF4 = .text:0x00002BF4; // type:function size:0xB8 +fn_1_2CAC = .text:0x00002CAC; // type:function size:0x1BC +fn_1_2E68 = .text:0x00002E68; // type:function size:0xD0 +fn_1_2F38 = .text:0x00002F38; // type:function size:0xD8 +fn_1_3010 = .text:0x00003010; // type:function size:0x84 +fn_1_3094 = .text:0x00003094; // type:function size:0x80 +fn_1_3114 = .text:0x00003114; // type:function size:0x220 +fn_1_3334 = .text:0x00003334; // type:function size:0x214 +fn_1_3548 = .text:0x00003548; // type:function size:0xD58 +fn_1_42A0 = .text:0x000042A0; // type:function size:0x104 +fn_1_43A4 = .text:0x000043A4; // type:function size:0x22C +fn_1_45D0 = .text:0x000045D0; // type:function size:0xFAC +fn_1_557C = .text:0x0000557C; // type:function size:0x74 +fn_1_55F0 = .text:0x000055F0; // type:function size:0x74 +fn_1_5664 = .text:0x00005664; // type:function size:0x9C +fn_1_5700 = .text:0x00005700; // type:function size:0xB68 +fn_1_6268 = .text:0x00006268; // type:function size:0x1D58 +fn_1_7FC0 = .text:0x00007FC0; // type:function size:0x360 +fn_1_8320 = .text:0x00008320; // type:function size:0x618 +fn_1_8938 = .text:0x00008938; // type:function size:0x80 +fn_1_89B8 = .text:0x000089B8; // type:function size:0x60 +fn_1_8A18 = .text:0x00008A18; // type:function size:0x33C +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x40 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x20 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x18 +lbl_1_data_78 = .data:0x00000078; // type:object size:0x18 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x40 +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x40 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x40 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x12 data:string +lbl_1_data_162 = .data:0x00000162; // type:object size:0x12 data:string +lbl_1_data_174 = .data:0x00000174; // type:object size:0x13 data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x13 data:string +lbl_1_data_19A = .data:0x0000019A; // type:object size:0x14 data:string +lbl_1_data_1AE = .data:0x000001AE; // type:object size:0x14 data:string +lbl_1_data_1C2 = .data:0x000001C2; // type:object size:0x10 data:string +lbl_1_data_1D2 = .data:0x000001D2; // type:object size:0x10 data:string +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0x13 data:string +lbl_1_data_1F5 = .data:0x000001F5; // type:object size:0xF data:string +lbl_1_data_204 = .data:0x00000204; // type:object size:0xE data:string +lbl_1_data_212 = .data:0x00000212; // type:object size:0xE +lbl_1_data_220 = .data:0x00000220; // type:object size:0x40 +lbl_1_data_260 = .data:0x00000260; // type:object size:0x20 +lbl_1_data_280 = .data:0x00000280; // type:object size:0xF data:string +lbl_1_data_28F = .data:0x0000028F; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0xC data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x28 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x230 +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x300 data:2byte +lbl_1_bss_588 = .bss:0x00000588; // type:object size:0x13C data:4byte +lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x4 data:4byte +lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x4 data:4byte +lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0xC data:4byte +lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte +lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte +lbl_1_bss_6E0 = .bss:0x000006E0; // type:object size:0x2 data:2byte +lbl_1_bss_6E2 = .bss:0x000006E2; // type:object size:0x2 data:2byte +lbl_1_bss_6E6 = .bss:0x000006E6; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m446dll/splits.txt b/config/GMPJ01_00/rels/m446dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m446dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m446dll/symbols.txt b/config/GMPJ01_00/rels/m446dll/symbols.txt new file mode 100644 index 00000000..ad45d2b5 --- /dev/null +++ b/config/GMPJ01_00/rels/m446dll/symbols.txt @@ -0,0 +1,305 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x9C +fn_1_13C = .text:0x0000013C; // type:function size:0x168 +fn_1_2A4 = .text:0x000002A4; // type:function size:0x158 +fn_1_3FC = .text:0x000003FC; // type:function size:0xB8 +fn_1_4B4 = .text:0x000004B4; // type:function size:0x88 +fn_1_53C = .text:0x0000053C; // type:function size:0x41C +fn_1_958 = .text:0x00000958; // type:function size:0x220 +fn_1_B78 = .text:0x00000B78; // type:function size:0x94 +fn_1_C0C = .text:0x00000C0C; // type:function size:0x94 +fn_1_CA0 = .text:0x00000CA0; // type:function size:0xB5C +fn_1_17FC = .text:0x000017FC; // type:function size:0x40 +fn_1_183C = .text:0x0000183C; // type:function size:0x38 +fn_1_1874 = .text:0x00001874; // type:function size:0x3C +fn_1_18B0 = .text:0x000018B0; // type:function size:0x3C +fn_1_18EC = .text:0x000018EC; // type:function size:0x84 +fn_1_1970 = .text:0x00001970; // type:function size:0x64 +fn_1_19D4 = .text:0x000019D4; // type:function size:0x290 +fn_1_1C64 = .text:0x00001C64; // type:function size:0x94 +fn_1_1CF8 = .text:0x00001CF8; // type:function size:0x38 +fn_1_1D30 = .text:0x00001D30; // type:function size:0x3C +fn_1_1D6C = .text:0x00001D6C; // type:function size:0x3C +fn_1_1DA8 = .text:0x00001DA8; // type:function size:0x34 +fn_1_1DDC = .text:0x00001DDC; // type:function size:0x10 +fn_1_1DEC = .text:0x00001DEC; // type:function size:0x8 +fn_1_1DF4 = .text:0x00001DF4; // type:function size:0x68 +fn_1_1E5C = .text:0x00001E5C; // type:function size:0x28 +fn_1_1E84 = .text:0x00001E84; // type:function size:0x44 +fn_1_1EC8 = .text:0x00001EC8; // type:function size:0x3C +fn_1_1F04 = .text:0x00001F04; // type:function size:0x34 +fn_1_1F38 = .text:0x00001F38; // type:function size:0x4C +fn_1_1F84 = .text:0x00001F84; // type:function size:0x3C +fn_1_1FC0 = .text:0x00001FC0; // type:function size:0x3C +fn_1_1FFC = .text:0x00001FFC; // type:function size:0x68 +fn_1_2064 = .text:0x00002064; // type:function size:0x18 +fn_1_207C = .text:0x0000207C; // type:function size:0x58 +fn_1_20D4 = .text:0x000020D4; // type:function size:0x338 +fn_1_240C = .text:0x0000240C; // type:function size:0x27C +fn_1_2688 = .text:0x00002688; // type:function size:0xA4 +fn_1_272C = .text:0x0000272C; // type:function size:0x68 +fn_1_2794 = .text:0x00002794; // type:function size:0x68 +fn_1_27FC = .text:0x000027FC; // type:function size:0x94 +fn_1_2890 = .text:0x00002890; // type:function size:0x98 +fn_1_2928 = .text:0x00002928; // type:function size:0x8C +fn_1_29B4 = .text:0x000029B4; // type:function size:0x68 +fn_1_2A1C = .text:0x00002A1C; // type:function size:0x3C +fn_1_2A58 = .text:0x00002A58; // type:function size:0x3C +fn_1_2A94 = .text:0x00002A94; // type:function size:0x14 +fn_1_2AA8 = .text:0x00002AA8; // type:function size:0x2EC +fn_1_2D94 = .text:0x00002D94; // type:function size:0x14 +fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x118 +fn_1_2EC0 = .text:0x00002EC0; // type:function size:0xA4 +fn_1_2F64 = .text:0x00002F64; // type:function size:0x100 +fn_1_3064 = .text:0x00003064; // type:function size:0x11C +fn_1_3180 = .text:0x00003180; // type:function size:0x58 +fn_1_31D8 = .text:0x000031D8; // type:function size:0x2C8 +fn_1_34A0 = .text:0x000034A0; // type:function size:0x260 +fn_1_3700 = .text:0x00003700; // type:function size:0x154 +fn_1_3854 = .text:0x00003854; // type:function size:0x5C +fn_1_38B0 = .text:0x000038B0; // type:function size:0x30 +fn_1_38E0 = .text:0x000038E0; // type:function size:0x10 +fn_1_38F0 = .text:0x000038F0; // type:function size:0x34 +fn_1_3924 = .text:0x00003924; // type:function size:0x18 +fn_1_393C = .text:0x0000393C; // type:function size:0x58 +fn_1_3994 = .text:0x00003994; // type:function size:0x3C +fn_1_39D0 = .text:0x000039D0; // type:function size:0x17C +fn_1_3B4C = .text:0x00003B4C; // type:function size:0xA4 +fn_1_3BF0 = .text:0x00003BF0; // type:function size:0x2C4 +fn_1_3EB4 = .text:0x00003EB4; // type:function size:0x11C +fn_1_3FD0 = .text:0x00003FD0; // type:function size:0x30 +fn_1_4000 = .text:0x00004000; // type:function size:0x88 +fn_1_4088 = .text:0x00004088; // type:function size:0x624 +fn_1_46AC = .text:0x000046AC; // type:function size:0x24 +fn_1_46D0 = .text:0x000046D0; // type:function size:0x50 +fn_1_4720 = .text:0x00004720; // type:function size:0x78 +fn_1_4798 = .text:0x00004798; // type:function size:0x74 +fn_1_480C = .text:0x0000480C; // type:function size:0x18 +fn_1_4824 = .text:0x00004824; // type:function size:0x58 +fn_1_487C = .text:0x0000487C; // type:function size:0x284 +fn_1_4B00 = .text:0x00004B00; // type:function size:0x59C +fn_1_509C = .text:0x0000509C; // type:function size:0x11C +fn_1_51B8 = .text:0x000051B8; // type:function size:0x34C +fn_1_5504 = .text:0x00005504; // type:function size:0x144 +fn_1_5648 = .text:0x00005648; // type:function size:0x30 +fn_1_5678 = .text:0x00005678; // type:function size:0x4BC +fn_1_5B34 = .text:0x00005B34; // type:function size:0x14 +fn_1_5B48 = .text:0x00005B48; // type:function size:0xC8 +fn_1_5C10 = .text:0x00005C10; // type:function size:0x14 +fn_1_5C24 = .text:0x00005C24; // type:function size:0xC8 +fn_1_5CEC = .text:0x00005CEC; // type:function size:0x14 +fn_1_5D00 = .text:0x00005D00; // type:function size:0x154 +fn_1_5E54 = .text:0x00005E54; // type:function size:0x220 +fn_1_6074 = .text:0x00006074; // type:function size:0x1F0 +fn_1_6264 = .text:0x00006264; // type:function size:0x8C +fn_1_62F0 = .text:0x000062F0; // type:function size:0x8C +fn_1_637C = .text:0x0000637C; // type:function size:0x140 +fn_1_64BC = .text:0x000064BC; // type:function size:0xBC +fn_1_6578 = .text:0x00006578; // type:function size:0xA8 +fn_1_6620 = .text:0x00006620; // type:function size:0x158 +fn_1_6778 = .text:0x00006778; // type:function size:0x160 +fn_1_68D8 = .text:0x000068D8; // type:function size:0x4 +fn_1_68DC = .text:0x000068DC; // type:function size:0x5C4 +fn_1_6EA0 = .text:0x00006EA0; // type:function size:0x24 +fn_1_6EC4 = .text:0x00006EC4; // type:function size:0x24 +fn_1_6EE8 = .text:0x00006EE8; // type:function size:0x10 +fn_1_6EF8 = .text:0x00006EF8; // type:function size:0x194 +fn_1_708C = .text:0x0000708C; // type:function size:0x10 +fn_1_709C = .text:0x0000709C; // type:function size:0x244 +fn_1_72E0 = .text:0x000072E0; // type:function size:0x18 +fn_1_72F8 = .text:0x000072F8; // type:function size:0x58 +fn_1_7350 = .text:0x00007350; // type:function size:0x1A4 +fn_1_74F4 = .text:0x000074F4; // type:function size:0x1F4 +fn_1_76E8 = .text:0x000076E8; // type:function size:0xE0 +fn_1_77C8 = .text:0x000077C8; // type:function size:0xBC +fn_1_7884 = .text:0x00007884; // type:function size:0x84 +fn_1_7908 = .text:0x00007908; // type:function size:0x94 +fn_1_799C = .text:0x0000799C; // type:function size:0x9C +fn_1_7A38 = .text:0x00007A38; // type:function size:0x7C +fn_1_7AB4 = .text:0x00007AB4; // type:function size:0x13C +fn_1_7BF0 = .text:0x00007BF0; // type:function size:0x18 +fn_1_7C08 = .text:0x00007C08; // type:function size:0x58 +fn_1_7C60 = .text:0x00007C60; // type:function size:0x460 +fn_1_80C0 = .text:0x000080C0; // type:function size:0x330 +fn_1_83F0 = .text:0x000083F0; // type:function size:0xBC +fn_1_84AC = .text:0x000084AC; // type:function size:0x80 +fn_1_852C = .text:0x0000852C; // type:function size:0xE0 +fn_1_860C = .text:0x0000860C; // type:function size:0xC +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x30 data:4byte +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:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x14 +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0x14 +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x28 +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x8 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_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // 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:0x4 data:float +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:0x4 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x18 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x18 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x8 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x14 +jumptable_1_data_B4 = .data:0x000000B4; // type:object size:0x30 scope:local +jumptable_1_data_E4 = .data:0x000000E4; // type:object size:0x68 scope:local +lbl_1_data_150 = .data:0x00000150; // type:object size:0xC +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x20 +jumptable_1_data_17C = .data:0x0000017C; // type:object size:0x2C scope:local +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x1F data:string +lbl_1_data_1C7 = .data:0x000001C7; // type:object size:0x21 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x1E data:string +lbl_1_data_206 = .data:0x00000206; // type:object size:0x22 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x24 +lbl_1_data_24C = .data:0x0000024C; // type:object size:0x90 +lbl_1_data_2DC = .data:0x000002DC; // type:object size:0x14 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x1F data:string +lbl_1_data_30F = .data:0x0000030F; // type:object size:0x1F data:string +lbl_1_data_32E = .data:0x0000032E; // type:object size:0x22 +jumptable_1_data_350 = .data:0x00000350; // type:object size:0x1C scope:local +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x1E data:string +lbl_1_data_39A = .data:0x0000039A; // type:object size:0x1E data:string +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x10 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x24 +lbl_1_data_3EC = .data:0x000003EC; // type:object size:0x24 +lbl_1_data_410 = .data:0x00000410; // type:object size:0x14 +lbl_1_data_424 = .data:0x00000424; // type:object size:0x3C +lbl_1_data_460 = .data:0x00000460; // type:object size:0x54 data:byte +lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x24 +lbl_1_data_4D8 = .data:0x000004D8; // type:object size:0x1E data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:float +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0xC data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0xC data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:float +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0xC data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0xC data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:float +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0xC data:float +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0xC data:float +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m447dll/splits.txt b/config/GMPJ01_00/rels/m447dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m447dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m447dll/symbols.txt b/config/GMPJ01_00/rels/m447dll/symbols.txt new file mode 100644 index 00000000..2b4f2427 --- /dev/null +++ b/config/GMPJ01_00/rels/m447dll/symbols.txt @@ -0,0 +1,309 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x8C +fn_1_12C = .text:0x0000012C; // type:function size:0x8C +fn_1_1B8 = .text:0x000001B8; // type:function size:0x284 +fn_1_43C = .text:0x0000043C; // type:function size:0x54 +fn_1_490 = .text:0x00000490; // type:function size:0x10 +fn_1_4A0 = .text:0x000004A0; // type:function size:0x10 +fn_1_4B0 = .text:0x000004B0; // type:function size:0x94 +fn_1_544 = .text:0x00000544; // type:function size:0x264 +fn_1_7A8 = .text:0x000007A8; // type:function size:0x3B4 +fn_1_B5C = .text:0x00000B5C; // type:function size:0x3D8 +fn_1_F34 = .text:0x00000F34; // type:function size:0x134 +fn_1_1068 = .text:0x00001068; // type:function size:0x32C +fn_1_1394 = .text:0x00001394; // type:function size:0x88 +fn_1_141C = .text:0x0000141C; // type:function size:0x68 +fn_1_1484 = .text:0x00001484; // type:function size:0x2D0 +fn_1_1754 = .text:0x00001754; // type:function size:0xDC +fn_1_1830 = .text:0x00001830; // type:function size:0x54 +fn_1_1884 = .text:0x00001884; // type:function size:0x278 +fn_1_1AFC = .text:0x00001AFC; // type:function size:0xFC +fn_1_1BF8 = .text:0x00001BF8; // type:function size:0xE8 +fn_1_1CE0 = .text:0x00001CE0; // type:function size:0x54 +fn_1_1D34 = .text:0x00001D34; // type:function size:0x5C +fn_1_1D90 = .text:0x00001D90; // type:function size:0xE0 +fn_1_1E70 = .text:0x00001E70; // type:function size:0x40 +fn_1_1EB0 = .text:0x00001EB0; // type:function size:0x10 +fn_1_1EC0 = .text:0x00001EC0; // type:function size:0x14 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x2C +fn_1_1F00 = .text:0x00001F00; // type:function size:0x9C +fn_1_1F9C = .text:0x00001F9C; // type:function size:0x50 +fn_1_1FEC = .text:0x00001FEC; // type:function size:0x8 +fn_1_1FF4 = .text:0x00001FF4; // type:function size:0x170 +fn_1_2164 = .text:0x00002164; // type:function size:0x1B8 +fn_1_231C = .text:0x0000231C; // type:function size:0x50 +fn_1_236C = .text:0x0000236C; // type:function size:0x124 +fn_1_2490 = .text:0x00002490; // type:function size:0x4 +fn_1_2494 = .text:0x00002494; // type:function size:0x150 +fn_1_25E4 = .text:0x000025E4; // type:function size:0x11C +fn_1_2700 = .text:0x00002700; // type:function size:0x33C +fn_1_2A3C = .text:0x00002A3C; // type:function size:0x2CC +fn_1_2D08 = .text:0x00002D08; // type:function size:0xA4 +fn_1_2DAC = .text:0x00002DAC; // type:function size:0x384 +fn_1_3130 = .text:0x00003130; // type:function size:0x1B0 +fn_1_32E0 = .text:0x000032E0; // type:function size:0x2C +fn_1_330C = .text:0x0000330C; // type:function size:0xBC +fn_1_33C8 = .text:0x000033C8; // type:function size:0xBC +fn_1_3484 = .text:0x00003484; // type:function size:0x98 +fn_1_351C = .text:0x0000351C; // type:function size:0x24 +fn_1_3540 = .text:0x00003540; // type:function size:0x24 +fn_1_3564 = .text:0x00003564; // type:function size:0x718 +fn_1_3C7C = .text:0x00003C7C; // type:function size:0x22C +fn_1_3EA8 = .text:0x00003EA8; // type:function size:0xDC +fn_1_3F84 = .text:0x00003F84; // type:function size:0x40 +fn_1_3FC4 = .text:0x00003FC4; // type:function size:0x33C +fn_1_4300 = .text:0x00004300; // type:function size:0xCC +fn_1_43CC = .text:0x000043CC; // type:function size:0x10 +fn_1_43DC = .text:0x000043DC; // type:function size:0x1C +fn_1_43F8 = .text:0x000043F8; // type:function size:0x4C +fn_1_4444 = .text:0x00004444; // type:function size:0x6C +fn_1_44B0 = .text:0x000044B0; // type:function size:0xE0 +fn_1_4590 = .text:0x00004590; // type:function size:0xA8 +fn_1_4638 = .text:0x00004638; // type:function size:0x48 +fn_1_4680 = .text:0x00004680; // type:function size:0x8C +fn_1_470C = .text:0x0000470C; // type:function size:0x54 +fn_1_4760 = .text:0x00004760; // type:function size:0x4 +fn_1_4764 = .text:0x00004764; // type:function size:0x520 +fn_1_4C84 = .text:0x00004C84; // type:function size:0x2F8 +fn_1_4F7C = .text:0x00004F7C; // type:function size:0x104 +fn_1_5080 = .text:0x00005080; // type:function size:0x218 +fn_1_5298 = .text:0x00005298; // type:function size:0x288 +fn_1_5520 = .text:0x00005520; // type:function size:0x240 +fn_1_5760 = .text:0x00005760; // type:function size:0x278 +fn_1_59D8 = .text:0x000059D8; // type:function size:0x118 +fn_1_5AF0 = .text:0x00005AF0; // type:function size:0xE0 +fn_1_5BD0 = .text:0x00005BD0; // type:function size:0xA8 +fn_1_5C78 = .text:0x00005C78; // type:function size:0xAA4 +fn_1_671C = .text:0x0000671C; // type:function size:0x9A0 +fn_1_70BC = .text:0x000070BC; // type:function size:0xC0 +fn_1_717C = .text:0x0000717C; // type:function size:0x80 +fn_1_71FC = .text:0x000071FC; // type:function size:0xAC +fn_1_72A8 = .text:0x000072A8; // type:function size:0x3E0 +fn_1_7688 = .text:0x00007688; // type:function size:0x220 +fn_1_78A8 = .text:0x000078A8; // type:function size:0xDC +fn_1_7984 = .text:0x00007984; // type:function size:0xB0 +fn_1_7A34 = .text:0x00007A34; // type:function size:0x38 +fn_1_7A6C = .text:0x00007A6C; // type:function size:0x38 +fn_1_7AA4 = .text:0x00007AA4; // type:function size:0xB0 +fn_1_7B54 = .text:0x00007B54; // type:function size:0x240 +fn_1_7D94 = .text:0x00007D94; // type:function size:0x1D0 +fn_1_7F64 = .text:0x00007F64; // type:function size:0x158 +fn_1_80BC = .text:0x000080BC; // type:function size:0x6E0 +fn_1_879C = .text:0x0000879C; // type:function size:0x220 +fn_1_89BC = .text:0x000089BC; // type:function size:0x43C +fn_1_8DF8 = .text:0x00008DF8; // type:function size:0x184 +fn_1_8F7C = .text:0x00008F7C; // type:function size:0x78 +fn_1_8FF4 = .text:0x00008FF4; // type:function size:0x10 +fn_1_9004 = .text:0x00009004; // type:function size:0xF8 +fn_1_90FC = .text:0x000090FC; // type:function size:0x10 +fn_1_910C = .text:0x0000910C; // type:function size:0x4C +fn_1_9158 = .text:0x00009158; // type:function size:0x1C8 +fn_1_9320 = .text:0x00009320; // type:function size:0x54 +fn_1_9374 = .text:0x00009374; // type:function size:0x1C4 +fn_1_9538 = .text:0x00009538; // type:function size:0x4 +fn_1_953C = .text:0x0000953C; // type:function size:0x21C +fn_1_9758 = .text:0x00009758; // type:function size:0x1C4 +fn_1_991C = .text:0x0000991C; // type:function size:0x2B0 +fn_1_9BCC = .text:0x00009BCC; // type:function size:0x120 +fn_1_9CEC = .text:0x00009CEC; // type:function size:0x200 +fn_1_9EEC = .text:0x00009EEC; // type:function size:0x54 +fn_1_9F40 = .text:0x00009F40; // type:function size:0x2F0 +fn_1_A230 = .text:0x0000A230; // type:function size:0x10 +fn_1_A240 = .text:0x0000A240; // type:function size:0x34 +_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:0x64 +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC data:4byte +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:0x18 +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // 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:0xC +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x18 data:4byte +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x58 +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x3C +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +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:0x1 data:byte +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x144 +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x24 +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x60 +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x14 +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x20 +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x60 +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x8 data:double +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x50 +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x50 +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float +lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float +lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float +lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0x4 data:float +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:double +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x4 data:float +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x8 data:double +lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x4 data:float +lbl_1_rodata_6D4 = .rodata:0x000006D4; // type:object size:0x4 data:float +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x8 data:double +lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float +lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x8 data:double +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x4 data:float +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 data:double +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x1 data:byte +lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float +lbl_1_rodata_73C = .rodata:0x0000073C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1C +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x14 +jumptable_1_data_30 = .data:0x00000030; // type:object size:0x28 scope:local +jumptable_1_data_58 = .data:0x00000058; // type:object size:0x28 scope:local +jumptable_1_data_80 = .data:0x00000080; // type:object size:0x20 scope:local +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA8 +lbl_1_data_148 = .data:0x00000148; // type:object size:0x18 +lbl_1_data_160 = .data:0x00000160; // type:object size:0x1E data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x1E data:string +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x14 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x1C +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x2C +jumptable_1_data_1F8 = .data:0x000001F8; // type:object size:0x24 scope:local +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x40 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x1C +lbl_1_data_278 = .data:0x00000278; // type:object size:0x1C +lbl_1_data_294 = .data:0x00000294; // type:object size:0x18 +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x37 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x1C data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1C data:float +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x1C data:float +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x14 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m448Dll/splits.txt b/config/GMPJ01_00/rels/m448Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m448Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m448Dll/symbols.txt b/config/GMPJ01_00/rels/m448Dll/symbols.txt new file mode 100644 index 00000000..68a679da --- /dev/null +++ b/config/GMPJ01_00/rels/m448Dll/symbols.txt @@ -0,0 +1,200 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x2EC +fn_1_38C = .text:0x0000038C; // type:function size:0xEC +fn_1_478 = .text:0x00000478; // type:function size:0x84 +fn_1_4FC = .text:0x000004FC; // type:function size:0xE3C +fn_1_1338 = .text:0x00001338; // type:function size:0x2FD8 +fn_1_4310 = .text:0x00004310; // type:function size:0x2A9C +fn_1_6DAC = .text:0x00006DAC; // type:function size:0x39C +fn_1_7148 = .text:0x00007148; // type:function size:0xC7C +fn_1_7DC4 = .text:0x00007DC4; // type:function size:0x3FC +fn_1_81C0 = .text:0x000081C0; // type:function size:0xC10 +fn_1_8DD0 = .text:0x00008DD0; // type:function size:0x738 +fn_1_9508 = .text:0x00009508; // type:function size:0x154 +fn_1_965C = .text:0x0000965C; // type:function size:0x4A4 +fn_1_9B00 = .text:0x00009B00; // type:function size:0x120 +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x14 data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x14 data:4byte +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x14 data:4byte +lbl_1_rodata_84 = .rodata:0x00000084; // type:object size:0x14 data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x14 data:4byte +lbl_1_rodata_AC = .rodata:0x000000AC; // type:object size:0x10 data:4byte +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x10 data:4byte +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0xC data:4byte +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x54 +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:4byte +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x50 +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x50 +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x50 +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x24 data:4byte +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x34 data:4byte +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x24 data:4byte +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x50 +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x50 +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x18 data:4byte +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x18 data:4byte +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x8 data:4byte +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x28 data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x28 data:4byte +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0xC data:4byte +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0xC data:4byte +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x1 data:byte +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5EC = .rodata:0x000005EC; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x28 +lbl_1_data_28 = .data:0x00000028; // type:object size:0x28 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x2C +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x2C +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xB data:byte +lbl_1_data_B3 = .data:0x000000B3; // type:object size:0xD +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x2C +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2C data:4byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0x58 +lbl_1_data_170 = .data:0x00000170; // type:object size:0x8 data:4byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x20 +lbl_1_data_198 = .data:0x00000198; // type:object size:0x2 data:2byte +lbl_1_data_19A = .data:0x0000019A; // type:object size:0x2 data:2byte +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x2 data:2byte +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x8 data:4byte +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x8 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x8 +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x20 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x10 data:float +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x9 data:string +lbl_1_data_1F5 = .data:0x000001F5; // type:object size:0x1B +jumptable_1_data_210 = .data:0x00000210; // type:object size:0x2C scope:local +jumptable_1_data_23C = .data:0x0000023C; // type:object size:0x20 scope:local +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x4 data:4byte +lbl_1_data_260 = .data:0x00000260; // type:object size:0x4 data:float +lbl_1_data_264 = .data:0x00000264; // type:object size:0x4 data:float +lbl_1_data_268 = .data:0x00000268; // type:object size:0x4 data:float +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x4 data:float +jumptable_1_data_270 = .data:0x00000270; // type:object size:0x24 scope:local +jumptable_1_data_294 = .data:0x00000294; // type:object size:0x20 scope:local +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x19 data:string +lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x20 +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x8 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0xD0 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x2D0 data:4byte diff --git a/config/GMPJ01_00/rels/m449Dll/splits.txt b/config/GMPJ01_00/rels/m449Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m449Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m449Dll/symbols.txt b/config/GMPJ01_00/rels/m449Dll/symbols.txt new file mode 100644 index 00000000..d2709158 --- /dev/null +++ b/config/GMPJ01_00/rels/m449Dll/symbols.txt @@ -0,0 +1,210 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x358 +fn_1_3F8 = .text:0x000003F8; // type:function size:0x360 +fn_1_758 = .text:0x00000758; // type:function size:0x5EB8 +fn_1_6610 = .text:0x00006610; // type:function size:0x8 +fn_1_6618 = .text:0x00006618; // type:function size:0x2C +fn_1_6644 = .text:0x00006644; // type:function size:0x140 +fn_1_6784 = .text:0x00006784; // type:function size:0xCC +fn_1_6850 = .text:0x00006850; // type:function size:0x958 +fn_1_71A8 = .text:0x000071A8; // type:function size:0x39C +fn_1_7544 = .text:0x00007544; // type:function size:0x988 +fn_1_7ECC = .text:0x00007ECC; // type:function size:0xC8 +fn_1_7F94 = .text:0x00007F94; // type:function size:0x5A4 +fn_1_8538 = .text:0x00008538; // type:function size:0xFC0 +fn_1_94F8 = .text:0x000094F8; // type:function size:0xE0 +fn_1_95D8 = .text:0x000095D8; // type:function size:0x460 +fn_1_9A38 = .text:0x00009A38; // type:function size:0x9C +_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:0x10 +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC0 +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0xC0 +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC0 +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x20 data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x60 +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x18 data:4byte +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x30 data:4byte +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x20 data:4byte +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 data:4byte +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x48 +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x48 +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0xC data:4byte +lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0xC data:4byte +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x1 data:byte +lbl_1_rodata_70C = .rodata:0x0000070C; // type:object size:0x4 data:float +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x4 data:float +lbl_1_rodata_714 = .rodata:0x00000714; // type:object size:0x4 data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float +lbl_1_rodata_71C = .rodata:0x0000071C; // type:object size:0x4 data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x4 data:float +lbl_1_rodata_724 = .rodata:0x00000724; // type:object size:0x4 data:float +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x48 +lbl_1_data_48 = .data:0x00000048; // type:object size:0x48 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x38 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x50 +lbl_1_data_138 = .data:0x00000138; // type:object size:0x50 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x50 +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x50 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x2 data:2byte +lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x4 data:4byte +lbl_1_data_230 = .data:0x00000230; // type:object size:0xC data:4byte +lbl_1_data_23C = .data:0x0000023C; // type:object size:0x28 data:4byte +lbl_1_data_264 = .data:0x00000264; // type:object size:0x20 +lbl_1_data_284 = .data:0x00000284; // type:object size:0x4 data:4byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x4 data:float +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x4 data:float +lbl_1_data_290 = .data:0x00000290; // type:object size:0x4 data:float +lbl_1_data_294 = .data:0x00000294; // type:object size:0x4 data:float +jumptable_1_data_298 = .data:0x00000298; // type:object size:0x1C scope:local +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x19 data:string +lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x24 data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x90 data:4byte diff --git a/config/GMPJ01_00/rels/m450Dll/splits.txt b/config/GMPJ01_00/rels/m450Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m450Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m450Dll/symbols.txt b/config/GMPJ01_00/rels/m450Dll/symbols.txt new file mode 100644 index 00000000..8f6a0e14 --- /dev/null +++ b/config/GMPJ01_00/rels/m450Dll/symbols.txt @@ -0,0 +1,558 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x218 +fn_1_798 = .text:0x00000798; // type:function size:0x254 +fn_1_9EC = .text:0x000009EC; // type:function size:0x54 +fn_1_A40 = .text:0x00000A40; // type:function size:0x10C +fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C +fn_1_1350 = .text:0x00001350; // type:function size:0x8C +fn_1_13DC = .text:0x000013DC; // type:function size:0x334 +fn_1_1710 = .text:0x00001710; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 +fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 +fn_1_23B4 = .text:0x000023B4; // type:function size:0x64 +fn_1_2418 = .text:0x00002418; // type:function size:0xE0 +fn_1_24F8 = .text:0x000024F8; // type:function size:0x32C +fn_1_2824 = .text:0x00002824; // type:function size:0x3AC +fn_1_2BD0 = .text:0x00002BD0; // type:function size:0x30 +fn_1_2C00 = .text:0x00002C00; // type:function size:0x1C +fn_1_2C1C = .text:0x00002C1C; // type:function size:0x18C +fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x8 +fn_1_2DB0 = .text:0x00002DB0; // type:function size:0x8 +fn_1_2DB8 = .text:0x00002DB8; // type:function size:0x8 +fn_1_2DC0 = .text:0x00002DC0; // type:function size:0x8 +fn_1_2DC8 = .text:0x00002DC8; // type:function size:0xC +fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x60 +fn_1_2E34 = .text:0x00002E34; // type:function size:0xB90 +fn_1_39C4 = .text:0x000039C4; // type:function size:0x31C +fn_1_3CE0 = .text:0x00003CE0; // type:function size:0xD8 +fn_1_3DB8 = .text:0x00003DB8; // type:function size:0x114 +fn_1_3ECC = .text:0x00003ECC; // type:function size:0xB8 +fn_1_3F84 = .text:0x00003F84; // type:function size:0xA0 +fn_1_4024 = .text:0x00004024; // type:function size:0x9C +fn_1_40C0 = .text:0x000040C0; // type:function size:0xE18 +fn_1_4ED8 = .text:0x00004ED8; // type:function size:0x250 +fn_1_5128 = .text:0x00005128; // type:function size:0x10 +fn_1_5138 = .text:0x00005138; // type:function size:0x10 +fn_1_5148 = .text:0x00005148; // type:function size:0x400 +fn_1_5548 = .text:0x00005548; // type:function size:0x7C +fn_1_55C4 = .text:0x000055C4; // type:function size:0x5C +fn_1_5620 = .text:0x00005620; // type:function size:0xA4 +fn_1_56C4 = .text:0x000056C4; // type:function size:0x748 +fn_1_5E0C = .text:0x00005E0C; // type:function size:0xCC +fn_1_5ED8 = .text:0x00005ED8; // type:function size:0x658 +fn_1_6530 = .text:0x00006530; // type:function size:0x108 +fn_1_6638 = .text:0x00006638; // type:function size:0x38 +fn_1_6670 = .text:0x00006670; // type:function size:0x30 +fn_1_66A0 = .text:0x000066A0; // type:function size:0x3C +fn_1_66DC = .text:0x000066DC; // type:function size:0xBC +fn_1_6798 = .text:0x00006798; // type:function size:0x260 +fn_1_69F8 = .text:0x000069F8; // type:function size:0xD0 +fn_1_6AC8 = .text:0x00006AC8; // type:function size:0xC8 +fn_1_6B90 = .text:0x00006B90; // type:function size:0xD8 +fn_1_6C68 = .text:0x00006C68; // type:function size:0x48 +fn_1_6CB0 = .text:0x00006CB0; // type:function size:0x7C +fn_1_6D2C = .text:0x00006D2C; // type:function size:0x3C +fn_1_6D68 = .text:0x00006D68; // type:function size:0x70 +fn_1_6DD8 = .text:0x00006DD8; // type:function size:0x714 +fn_1_74EC = .text:0x000074EC; // type:function size:0x6A4 +fn_1_7B90 = .text:0x00007B90; // type:function size:0x84 +fn_1_7C14 = .text:0x00007C14; // type:function size:0x84 +fn_1_7C98 = .text:0x00007C98; // type:function size:0xA8 +fn_1_7D40 = .text:0x00007D40; // type:function size:0x3E0 +fn_1_8120 = .text:0x00008120; // type:function size:0x3E0 +fn_1_8500 = .text:0x00008500; // type:function size:0x6DC +fn_1_8BDC = .text:0x00008BDC; // type:function size:0x498 +fn_1_9074 = .text:0x00009074; // type:function size:0x64C +fn_1_96C0 = .text:0x000096C0; // type:function size:0x164 +fn_1_9824 = .text:0x00009824; // type:function size:0x380 +fn_1_9BA4 = .text:0x00009BA4; // type:function size:0x3A8 +fn_1_9F4C = .text:0x00009F4C; // type:function size:0x478 +fn_1_A3C4 = .text:0x0000A3C4; // type:function size:0xAC +fn_1_A470 = .text:0x0000A470; // type:function size:0x190 +fn_1_A600 = .text:0x0000A600; // type:function size:0x1CC +fn_1_A7CC = .text:0x0000A7CC; // type:function size:0x5C +fn_1_A828 = .text:0x0000A828; // type:function size:0x140 +fn_1_A968 = .text:0x0000A968; // type:function size:0x148 +fn_1_AAB0 = .text:0x0000AAB0; // type:function size:0xD8 +fn_1_AB88 = .text:0x0000AB88; // type:function size:0x48 +fn_1_ABD0 = .text:0x0000ABD0; // type:function size:0x188 +fn_1_AD58 = .text:0x0000AD58; // type:function size:0x2E98 +fn_1_DBF0 = .text:0x0000DBF0; // type:function size:0x4F8 +fn_1_E0E8 = .text:0x0000E0E8; // type:function size:0x90 +fn_1_E178 = .text:0x0000E178; // type:function size:0x30 +fn_1_E1A8 = .text:0x0000E1A8; // type:function size:0x114 +fn_1_E2BC = .text:0x0000E2BC; // type:function size:0x10C +fn_1_E3C8 = .text:0x0000E3C8; // type:function size:0xB0 +fn_1_E478 = .text:0x0000E478; // type:function size:0x18C +fn_1_E604 = .text:0x0000E604; // type:function size:0x314 +fn_1_E918 = .text:0x0000E918; // type:function size:0x138 +fn_1_EA50 = .text:0x0000EA50; // type:function size:0x11C +fn_1_EB6C = .text:0x0000EB6C; // type:function size:0x1E0 +fn_1_ED4C = .text:0x0000ED4C; // type:function size:0x3010 +fn_1_11D5C = .text:0x00011D5C; // type:function size:0x4D8 +fn_1_12234 = .text:0x00012234; // type:function size:0x30C +fn_1_12540 = .text:0x00012540; // type:function size:0x80 +fn_1_125C0 = .text:0x000125C0; // type:function size:0xC8 +fn_1_12688 = .text:0x00012688; // type:function size:0x294 +fn_1_1291C = .text:0x0001291C; // type:function size:0x100 +fn_1_12A1C = .text:0x00012A1C; // type:function size:0x164 +fn_1_12B80 = .text:0x00012B80; // type:function size:0x1F8 +fn_1_12D78 = .text:0x00012D78; // type:function size:0x4 +fn_1_12D7C = .text:0x00012D7C; // type:function size:0xE0 +fn_1_12E5C = .text:0x00012E5C; // type:function size:0x248 +fn_1_130A4 = .text:0x000130A4; // type:function size:0xD0 +fn_1_13174 = .text:0x00013174; // type:function size:0x3EC +fn_1_13560 = .text:0x00013560; // type:function size:0x1B4 +fn_1_13714 = .text:0x00013714; // type:function size:0x29C +fn_1_139B0 = .text:0x000139B0; // type:function size:0x19C +fn_1_13B4C = .text:0x00013B4C; // type:function size:0xC +fn_1_13B58 = .text:0x00013B58; // type:function size:0x38 +fn_1_13B90 = .text:0x00013B90; // type:function size:0x34 +fn_1_13BC4 = .text:0x00013BC4; // type:function size:0x364 +fn_1_13F28 = .text:0x00013F28; // type:function size:0x988 +fn_1_148B0 = .text:0x000148B0; // type:function size:0x110 +fn_1_149C0 = .text:0x000149C0; // type:function size:0xF8 +fn_1_14AB8 = .text:0x00014AB8; // type:function size:0x110 +fn_1_14BC8 = .text:0x00014BC8; // type:function size:0x60 +fn_1_14C28 = .text:0x00014C28; // type:function size:0xC0 +fn_1_14CE8 = .text:0x00014CE8; // type:function size:0x620 +fn_1_15308 = .text:0x00015308; // type:function size:0x840 +fn_1_15B48 = .text:0x00015B48; // type:function size:0x64 +fn_1_15BAC = .text:0x00015BAC; // type:function size:0x500 +fn_1_160AC = .text:0x000160AC; // type:function size:0x1D4 +fn_1_16280 = .text:0x00016280; // type:function size:0x94 +fn_1_16314 = .text:0x00016314; // type:function size:0x64 +fn_1_16378 = .text:0x00016378; // type:function size:0x598 +fn_1_16910 = .text:0x00016910; // type:function size:0x2B4 +fn_1_16BC4 = .text:0x00016BC4; // type:function size:0x130 +fn_1_16CF4 = .text:0x00016CF4; // type:function size:0x4D0 +fn_1_171C4 = .text:0x000171C4; // type:function size:0x19C +fn_1_17360 = .text:0x00017360; // type:function size:0x114 +fn_1_17474 = .text:0x00017474; // type:function size:0x4FC +fn_1_17970 = .text:0x00017970; // type:function size:0x24C +fn_1_17BBC = .text:0x00017BBC; // type:function size:0x868 +fn_1_18424 = .text:0x00018424; // type:function size:0x284 +fn_1_186A8 = .text:0x000186A8; // type:function size:0x888 +fn_1_18F30 = .text:0x00018F30; // type:function size:0x37C +fn_1_192AC = .text:0x000192AC; // type:function size:0xE4 +fn_1_19390 = .text:0x00019390; // type:function size:0xC0 +fn_1_19450 = .text:0x00019450; // type:function size:0x1FC +fn_1_1964C = .text:0x0001964C; // type:function size:0x14C +fn_1_19798 = .text:0x00019798; // type:function size:0x278 +fn_1_19A10 = .text:0x00019A10; // type:function size:0x208 +fn_1_19C18 = .text:0x00019C18; // type:function size:0xC8 +fn_1_19CE0 = .text:0x00019CE0; // type:function size:0x334 +fn_1_1A014 = .text:0x0001A014; // type:function size:0x4C +fn_1_1A060 = .text:0x0001A060; // type:function size:0x1BC +fn_1_1A21C = .text:0x0001A21C; // type:function size:0x1D4 +fn_1_1A3F0 = .text:0x0001A3F0; // type:function size:0x284 +_prolog = .text:0x0001A674; // type:function size:0x54 scope:global +_epilog = .text:0x0001A6C8; // type:function size:0x4C scope:global +fn_1_1A714 = .text:0x0001A714; // type:function size:0x22C +fn_1_1A940 = .text:0x0001A940; // type:function size:0x784 +fn_1_1B0C4 = .text:0x0001B0C4; // type:function size:0x94 +fn_1_1B158 = .text:0x0001B158; // type:function size:0x154 +fn_1_1B2AC = .text:0x0001B2AC; // type:function size:0x21C +fn_1_1B4C8 = .text:0x0001B4C8; // type:function size:0x48 +fn_1_1B510 = .text:0x0001B510; // type:function size:0x134 +fn_1_1B644 = .text:0x0001B644; // type:function size:0x1EC +fn_1_1B830 = .text:0x0001B830; // type:function size:0x830 +fn_1_1C060 = .text:0x0001C060; // type:function size:0x274 +fn_1_1C2D4 = .text:0x0001C2D4; // type:function size:0xC8 +fn_1_1C39C = .text:0x0001C39C; // type:function size:0x98 +fn_1_1C434 = .text:0x0001C434; // type:function size:0x2B0 +fn_1_1C6E4 = .text:0x0001C6E4; // type:function size:0x98 +fn_1_1C77C = .text:0x0001C77C; // type:function size:0x11C +fn_1_1C898 = .text:0x0001C898; // type:function size:0x18B8 +fn_1_1E150 = .text:0x0001E150; // type:function size:0x1F6C +fn_1_200BC = .text:0x000200BC; // type:function size:0xB4 +fn_1_20170 = .text:0x00020170; // type:function size:0x31C0 +fn_1_23330 = .text:0x00023330; // type:function size:0x440 +fn_1_23770 = .text:0x00023770; // type:function size:0x530 +fn_1_23CA0 = .text:0x00023CA0; // type:function size:0x980 +fn_1_24620 = .text:0x00024620; // type:function size:0x4A0C +fn_1_2902C = .text:0x0002902C; // type:function size:0x8C0 +fn_1_298EC = .text:0x000298EC; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x1 data:byte +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_FC = .rodata:0x000000FC; // 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:0x8 data:4byte +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x58 +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:4byte +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x58 +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 data:float +lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x8 data:4byte +lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:4byte +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 +lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x1F data:string +lbl_1_data_9F = .data:0x0000009F; // type:object size:0xD +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4C +lbl_1_data_100 = .data:0x00000100; // type:object size:0x14 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x3C +lbl_1_data_150 = .data:0x00000150; // type:object size:0x3C +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x20 +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x10 +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x28 +lbl_1_data_204 = .data:0x00000204; // type:object size:0x30 +lbl_1_data_234 = .data:0x00000234; // type:object size:0x20 +lbl_1_data_254 = .data:0x00000254; // type:object size:0x14 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x14 +lbl_1_data_27C = .data:0x0000027C; // type:object size:0x14 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x12 data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x13 data:string +lbl_1_data_2C9 = .data:0x000002C9; // type:object size:0x14 data:string +lbl_1_data_2DD = .data:0x000002DD; // type:object size:0x1C data:string +lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0x12 data:string +lbl_1_data_30B = .data:0x0000030B; // type:object size:0x11 +jumptable_1_data_31C = .data:0x0000031C; // type:object size:0x60 scope:local +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x12 data:string +lbl_1_data_38E = .data:0x0000038E; // type:object size:0x12 data:string +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x13 data:string +lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x14 data:string +lbl_1_data_3C7 = .data:0x000003C7; // type:object size:0x14 data:string +lbl_1_data_3DB = .data:0x000003DB; // type:object size:0x13 data:string +lbl_1_data_3EE = .data:0x000003EE; // type:object size:0x1E +jumptable_1_data_40C = .data:0x0000040C; // type:object size:0x44 scope:local +lbl_1_data_450 = .data:0x00000450; // type:object size:0x14 +lbl_1_data_464 = .data:0x00000464; // type:object size:0xC data:4byte +lbl_1_data_470 = .data:0x00000470; // type:object size:0xC +lbl_1_data_47C = .data:0x0000047C; // type:object size:0xC data:4byte +lbl_1_data_488 = .data:0x00000488; // type:object size:0xC data:4byte +lbl_1_data_494 = .data:0x00000494; // type:object size:0xC data:4byte +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xC data:4byte +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0xC data:4byte +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0xC data:4byte +lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0xC data:4byte +lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0xC data:4byte +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0xC data:4byte +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0xC +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0xC +lbl_1_data_500 = .data:0x00000500; // type:object size:0x4 +lbl_1_data_504 = .data:0x00000504; // type:object size:0xC +lbl_1_data_510 = .data:0x00000510; // type:object size:0xC +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x30 +lbl_1_data_54C = .data:0x0000054C; // type:object size:0x10 data:string +lbl_1_data_55C = .data:0x0000055C; // type:object size:0x10 data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 data:string +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x10 data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x10 data:string +lbl_1_data_59C = .data:0x0000059C; // type:object size:0x10 data:string +lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x10 data:string +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x10 data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x80 +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x2E0 +lbl_1_data_92C = .data:0x0000092C; // type:object size:0x20 +lbl_1_data_94C = .data:0x0000094C; // type:object size:0xA0 +lbl_1_data_9EC = .data:0x000009EC; // type:object size:0x20 +lbl_1_data_A0C = .data:0x00000A0C; // type:object size:0x38 data:4byte +lbl_1_data_A44 = .data:0x00000A44; // type:object size:0x13 data:string +lbl_1_data_A57 = .data:0x00000A57; // type:object size:0x13 data:string +lbl_1_data_A6A = .data:0x00000A6A; // type:object size:0x16 +lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x18C +lbl_1_data_C0C = .data:0x00000C0C; // type:object size:0x13 data:string +lbl_1_data_C1F = .data:0x00000C1F; // type:object size:0x13 data:string +lbl_1_data_C32 = .data:0x00000C32; // type:object size:0x13 data:string +lbl_1_data_C45 = .data:0x00000C45; // type:object size:0x13 data:string +lbl_1_data_C58 = .data:0x00000C58; // type:object size:0x1B8 +lbl_1_data_E10 = .data:0x00000E10; // type:object size:0x11 data:string +lbl_1_data_E21 = .data:0x00000E21; // type:object size:0x11 data:string +lbl_1_data_E32 = .data:0x00000E32; // type:object size:0x11 data:string +lbl_1_data_E43 = .data:0x00000E43; // type:object size:0x11 data:string +lbl_1_data_E54 = .data:0x00000E54; // type:object size:0x14 +lbl_1_data_E68 = .data:0x00000E68; // type:object size:0x14 +lbl_1_data_E7C = .data:0x00000E7C; // type:object size:0x84 +lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x5C +lbl_1_data_F5C = .data:0x00000F5C; // type:object size:0x10 +lbl_1_data_F6C = .data:0x00000F6C; // type:object size:0x18 +lbl_1_data_F84 = .data:0x00000F84; // type:object size:0x14 +lbl_1_data_F98 = .data:0x00000F98; // type:object size:0x14 +lbl_1_data_FAC = .data:0x00000FAC; // type:object size:0x18 +lbl_1_data_FC4 = .data:0x00000FC4; // type:object size:0x14 +lbl_1_data_FD8 = .data:0x00000FD8; // type:object size:0x14 +lbl_1_data_FEC = .data:0x00000FEC; // type:object size:0x14 +lbl_1_data_1000 = .data:0x00001000; // type:object size:0x14 +lbl_1_data_1014 = .data:0x00001014; // type:object size:0x28 +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x28 +lbl_1_data_1064 = .data:0x00001064; // type:object size:0x28 +lbl_1_data_108C = .data:0x0000108C; // type:object size:0x28 +lbl_1_data_10B4 = .data:0x000010B4; // type:object size:0x28 +lbl_1_data_10DC = .data:0x000010DC; // type:object size:0x28 +lbl_1_data_1104 = .data:0x00001104; // type:object size:0x28 +lbl_1_data_112C = .data:0x0000112C; // type:object size:0x28 +lbl_1_data_1154 = .data:0x00001154; // type:object size:0x28 +lbl_1_data_117C = .data:0x0000117C; // type:object size:0x28 +lbl_1_data_11A4 = .data:0x000011A4; // type:object size:0x28 +lbl_1_data_11CC = .data:0x000011CC; // type:object size:0x28 +lbl_1_data_11F4 = .data:0x000011F4; // type:object size:0x10 +lbl_1_data_1204 = .data:0x00001204; // type:object size:0xC +lbl_1_data_1210 = .data:0x00001210; // type:object size:0xC +lbl_1_data_121C = .data:0x0000121C; // type:object size:0xC +lbl_1_data_1228 = .data:0x00001228; // type:object size:0xC +lbl_1_data_1234 = .data:0x00001234; // type:object size:0x20 +lbl_1_data_1254 = .data:0x00001254; // type:object size:0x13 data:string +lbl_1_data_1267 = .data:0x00001267; // type:object size:0x13 data:string +lbl_1_data_127A = .data:0x0000127A; // type:object size:0x13 data:string +lbl_1_data_128D = .data:0x0000128D; // type:object size:0x13 data:string +lbl_1_data_12A0 = .data:0x000012A0; // type:object size:0x10 +lbl_1_data_12B0 = .data:0x000012B0; // type:object size:0x13 data:string +lbl_1_data_12C3 = .data:0x000012C3; // type:object size:0x13 data:string +lbl_1_data_12D6 = .data:0x000012D6; // type:object size:0x13 data:string +lbl_1_data_12E9 = .data:0x000012E9; // type:object size:0x13 data:string +lbl_1_data_12FC = .data:0x000012FC; // type:object size:0x13 data:string +lbl_1_data_130F = .data:0x0000130F; // type:object size:0x13 data:string +lbl_1_data_1322 = .data:0x00001322; // type:object size:0x13 data:string +lbl_1_data_1335 = .data:0x00001335; // type:object size:0x13 data:string +lbl_1_data_1348 = .data:0x00001348; // type:object size:0x14 +lbl_1_data_135C = .data:0x0000135C; // type:object size:0x24 +lbl_1_data_1380 = .data:0x00001380; // type:object size:0x38 data:4byte +lbl_1_data_13B8 = .data:0x000013B8; // type:object size:0x38 data:4byte +lbl_1_data_13F0 = .data:0x000013F0; // type:object size:0x13 data:string +lbl_1_data_1403 = .data:0x00001403; // type:object size:0x13 data:string +lbl_1_data_1416 = .data:0x00001416; // type:object size:0x13 data:string +lbl_1_data_1429 = .data:0x00001429; // type:object size:0x13 data:string +lbl_1_data_143C = .data:0x0000143C; // type:object size:0x14 +lbl_1_data_1450 = .data:0x00001450; // type:object size:0xB4 +lbl_1_data_1504 = .data:0x00001504; // type:object size:0x50 +lbl_1_data_1554 = .data:0x00001554; // type:object size:0x13 data:string +lbl_1_data_1567 = .data:0x00001567; // type:object size:0x13 data:string +lbl_1_data_157A = .data:0x0000157A; // type:object size:0x13 data:string +lbl_1_data_158D = .data:0x0000158D; // type:object size:0x13 data:string +lbl_1_data_15A0 = .data:0x000015A0; // type:object size:0x13 data:string +lbl_1_data_15B3 = .data:0x000015B3; // type:object size:0x12 data:string +lbl_1_data_15C5 = .data:0x000015C5; // type:object size:0x25 data:string +lbl_1_data_15EA = .data:0x000015EA; // type:object size:0x22 data:string +lbl_1_data_160C = .data:0x0000160C; // type:object size:0x9 data:string +lbl_1_data_1615 = .data:0x00001615; // type:object size:0xA data:string +lbl_1_data_161F = .data:0x0000161F; // type:object size:0xE data:string +lbl_1_data_162D = .data:0x0000162D; // type:object size:0x6 data:string +lbl_1_data_1633 = .data:0x00001633; // type:object size:0x1D data:string +jumptable_1_data_1650 = .data:0x00001650; // type:object size:0x70 scope:local +lbl_1_data_16C0 = .data:0x000016C0; // type:object size:0x1C +jumptable_1_data_16DC = .data:0x000016DC; // type:object size:0xC4 scope:local +lbl_1_data_17A0 = .data:0x000017A0; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x18 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x3C data:float +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x30 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0xC data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:float +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0xC data:float +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x8 +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x4 +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0xC data:4byte +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x8 data:float +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x4 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x5C data:4byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:float +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x100 +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x40 data:4byte +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x4 data:float +lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x4 data:4byte +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x4 data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0x2 data:2byte +lbl_1_bss_2FE = .bss:0x000002FE; // type:object size:0x2 data:2byte +lbl_1_bss_300 = .bss:0x00000300; // type:object size:0x4 data:4byte +lbl_1_bss_304 = .bss:0x00000304; // type:object size:0x4 data:4byte +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0xC data:4byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0xC data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0xC data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0xC data:4byte +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x4 data:4byte +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x18 data:4byte +lbl_1_bss_358 = .bss:0x00000358; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m451Dll/splits.txt b/config/GMPJ01_00/rels/m451Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m451Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m451Dll/symbols.txt b/config/GMPJ01_00/rels/m451Dll/symbols.txt new file mode 100644 index 00000000..2bbf42af --- /dev/null +++ b/config/GMPJ01_00/rels/m451Dll/symbols.txt @@ -0,0 +1,217 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x71C +fn_1_7BC = .text:0x000007BC; // type:function size:0x9C +fn_1_858 = .text:0x00000858; // type:function size:0xC0 +fn_1_918 = .text:0x00000918; // type:function size:0x214 +fn_1_B2C = .text:0x00000B2C; // type:function size:0x1038 +fn_1_1B64 = .text:0x00001B64; // type:function size:0x598 +fn_1_20FC = .text:0x000020FC; // type:function size:0xB8 +fn_1_21B4 = .text:0x000021B4; // type:function size:0xC0 +fn_1_2274 = .text:0x00002274; // type:function size:0x6C +fn_1_22E0 = .text:0x000022E0; // type:function size:0x35C +fn_1_263C = .text:0x0000263C; // type:function size:0x3F8 +fn_1_2A34 = .text:0x00002A34; // type:function size:0x21C +fn_1_2C50 = .text:0x00002C50; // type:function size:0x2B8 +fn_1_2F08 = .text:0x00002F08; // type:function size:0xE4 +fn_1_2FEC = .text:0x00002FEC; // type:function size:0xC4 +fn_1_30B0 = .text:0x000030B0; // type:function size:0xA4 +fn_1_3154 = .text:0x00003154; // type:function size:0x670 +fn_1_37C4 = .text:0x000037C4; // type:function size:0xFA4 +fn_1_4768 = .text:0x00004768; // type:function size:0xFC +fn_1_4864 = .text:0x00004864; // type:function size:0x60 +fn_1_48C4 = .text:0x000048C4; // type:function size:0x8F4 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x8 data:double +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:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0xC +lbl_1_data_84 = .data:0x00000084; // type:object size:0xB data:string +lbl_1_data_8F = .data:0x0000008F; // type:object size:0xB data:string +lbl_1_data_9A = .data:0x0000009A; // type:object size:0xB data:string +lbl_1_data_A5 = .data:0x000000A5; // type:object size:0xB data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xB data:string +lbl_1_data_BB = .data:0x000000BB; // type:object size:0xB data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0xB data:string +lbl_1_data_D1 = .data:0x000000D1; // type:object size:0xB data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xB data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0xB data:string +lbl_1_data_F2 = .data:0x000000F2; // type:object size:0xB data:string +lbl_1_data_FD = .data:0x000000FD; // type:object size:0xB data:string +lbl_1_data_108 = .data:0x00000108; // type:object size:0xB data:string +lbl_1_data_113 = .data:0x00000113; // type:object size:0xB data:string +lbl_1_data_11E = .data:0x0000011E; // type:object size:0xB data:string +lbl_1_data_129 = .data:0x00000129; // type:object size:0xB data:string +lbl_1_data_134 = .data:0x00000134; // type:object size:0xB data:string +lbl_1_data_13F = .data:0x0000013F; // type:object size:0xB data:string +lbl_1_data_14A = .data:0x0000014A; // type:object size:0xB data:string +lbl_1_data_155 = .data:0x00000155; // type:object size:0xB data:string +lbl_1_data_160 = .data:0x00000160; // type:object size:0xB data:string +lbl_1_data_16B = .data:0x0000016B; // type:object size:0xB data:string +lbl_1_data_176 = .data:0x00000176; // type:object size:0xB data:string +lbl_1_data_181 = .data:0x00000181; // type:object size:0xB data:string +lbl_1_data_18C = .data:0x0000018C; // type:object size:0xB data:string +lbl_1_data_197 = .data:0x00000197; // type:object size:0xB data:string +lbl_1_data_1A2 = .data:0x000001A2; // type:object size:0xB data:string +lbl_1_data_1AD = .data:0x000001AD; // type:object size:0xB data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0xB data:string +lbl_1_data_1C3 = .data:0x000001C3; // type:object size:0xB data:string +lbl_1_data_1CE = .data:0x000001CE; // type:object size:0xB data:string +lbl_1_data_1D9 = .data:0x000001D9; // type:object size:0xB data:string +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xB data:string +lbl_1_data_1EF = .data:0x000001EF; // type:object size:0xB data:string +lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xB data:string +lbl_1_data_205 = .data:0x00000205; // type:object size:0xB data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0xB data:string +lbl_1_data_21B = .data:0x0000021B; // type:object size:0xB data:string +lbl_1_data_226 = .data:0x00000226; // type:object size:0xB data:string +lbl_1_data_231 = .data:0x00000231; // type:object size:0xB data:string +lbl_1_data_23C = .data:0x0000023C; // type:object size:0xB data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0xB data:string +lbl_1_data_252 = .data:0x00000252; // type:object size:0xB data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0xB data:string +lbl_1_data_268 = .data:0x00000268; // type:object size:0xB data:string +lbl_1_data_273 = .data:0x00000273; // type:object size:0xB data:string +lbl_1_data_27E = .data:0x0000027E; // type:object size:0xB data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0xB data:string +lbl_1_data_294 = .data:0x00000294; // type:object size:0xB data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0xB data:string +lbl_1_data_2AA = .data:0x000002AA; // type:object size:0xB data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0xB data:string +lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0xB data:string +lbl_1_data_2CB = .data:0x000002CB; // type:object size:0xB data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0xB data:string +lbl_1_data_2E1 = .data:0x000002E1; // type:object size:0xB data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xB data:string +lbl_1_data_2F7 = .data:0x000002F7; // type:object size:0xB data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0xB data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0xB data:string +lbl_1_data_318 = .data:0x00000318; // type:object size:0xB data:string +lbl_1_data_323 = .data:0x00000323; // type:object size:0xB data:string +lbl_1_data_32E = .data:0x0000032E; // type:object size:0xB data:string +lbl_1_data_339 = .data:0x00000339; // type:object size:0xB data:string +lbl_1_data_344 = .data:0x00000344; // type:object size:0xB data:string +lbl_1_data_34F = .data:0x0000034F; // type:object size:0xB data:string +lbl_1_data_35A = .data:0x0000035A; // type:object size:0xB data:string +lbl_1_data_365 = .data:0x00000365; // type:object size:0xB data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0xB data:string +lbl_1_data_37B = .data:0x0000037B; // type:object size:0xB data:string +lbl_1_data_386 = .data:0x00000386; // type:object size:0xB data:string +lbl_1_data_391 = .data:0x00000391; // type:object size:0xB data:string +lbl_1_data_39C = .data:0x0000039C; // type:object size:0xB data:string +lbl_1_data_3A7 = .data:0x000003A7; // type:object size:0xB data:string +lbl_1_data_3B2 = .data:0x000003B2; // type:object size:0xB data:string +lbl_1_data_3BD = .data:0x000003BD; // type:object size:0xB data:string +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xB data:string +lbl_1_data_3D3 = .data:0x000003D3; // type:object size:0xB data:string +lbl_1_data_3DE = .data:0x000003DE; // type:object size:0xB data:string +lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0xB data:string +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0xB data:string +lbl_1_data_3FF = .data:0x000003FF; // type:object size:0xB data:string +lbl_1_data_40A = .data:0x0000040A; // type:object size:0xB data:string +lbl_1_data_415 = .data:0x00000415; // type:object size:0xB data:string +lbl_1_data_420 = .data:0x00000420; // type:object size:0xB data:string +lbl_1_data_42B = .data:0x0000042B; // type:object size:0xB data:string +lbl_1_data_436 = .data:0x00000436; // type:object size:0xB data:string +lbl_1_data_441 = .data:0x00000441; // type:object size:0xB data:string +lbl_1_data_44C = .data:0x0000044C; // type:object size:0xB data:string +lbl_1_data_457 = .data:0x00000457; // type:object size:0xD +lbl_1_data_464 = .data:0x00000464; // type:object size:0x264 +lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0xC +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x78 data:float +lbl_1_data_74C = .data:0x0000074C; // type:object size:0xC +lbl_1_data_758 = .data:0x00000758; // type:object size:0xC +lbl_1_data_764 = .data:0x00000764; // type:object size:0xC data:string +lbl_1_data_770 = .data:0x00000770; // type:object size:0xC data:string +lbl_1_data_77C = .data:0x0000077C; // type:object size:0x7 data:string +lbl_1_data_783 = .data:0x00000783; // type:object size:0x8 data:string +lbl_1_data_78B = .data:0x0000078B; // type:object size:0x8 data:string +lbl_1_data_793 = .data:0x00000793; // type:object size:0x8 data:string +lbl_1_data_79B = .data:0x0000079B; // type:object size:0xB data:string +lbl_1_data_7A6 = .data:0x000007A6; // type:object size:0xF data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x340 data:4byte +lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x810 data:float +lbl_1_bss_B58 = .bss:0x00000B58; // type:object size:0x4 data:4byte +lbl_1_bss_B5C = .bss:0x00000B5C; // type:object size:0x4 data:4byte +lbl_1_bss_B60 = .bss:0x00000B60; // type:object size:0x4 data:4byte +lbl_1_bss_B64 = .bss:0x00000B64; // type:object size:0xA0 data:4byte +lbl_1_bss_C04 = .bss:0x00000C04; // type:object size:0xA0 data:4byte +lbl_1_bss_CA4 = .bss:0x00000CA4; // type:object size:0x4 data:4byte +lbl_1_bss_CA8 = .bss:0x00000CA8; // type:object size:0x6 +lbl_1_bss_CAE = .bss:0x00000CAE; // type:object size:0x6 data:2byte +lbl_1_bss_CB4 = .bss:0x00000CB4; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m453Dll/splits.txt b/config/GMPJ01_00/rels/m453Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m453Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m453Dll/symbols.txt b/config/GMPJ01_00/rels/m453Dll/symbols.txt new file mode 100644 index 00000000..fcb400ae --- /dev/null +++ b/config/GMPJ01_00/rels/m453Dll/symbols.txt @@ -0,0 +1,279 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3A0 +fn_1_440 = .text:0x00000440; // type:function size:0x20 +fn_1_460 = .text:0x00000460; // type:function size:0x3E8 +fn_1_848 = .text:0x00000848; // type:function size:0x7B4 +fn_1_FFC = .text:0x00000FFC; // type:function size:0x60 +fn_1_105C = .text:0x0000105C; // type:function size:0x1EC +fn_1_1248 = .text:0x00001248; // type:function size:0x2B0 +fn_1_14F8 = .text:0x000014F8; // type:function size:0x104 +fn_1_15FC = .text:0x000015FC; // type:function size:0x274 +fn_1_1870 = .text:0x00001870; // type:function size:0xA0 +fn_1_1910 = .text:0x00001910; // type:function size:0x2B8 +fn_1_1BC8 = .text:0x00001BC8; // type:function size:0x28 +fn_1_1BF0 = .text:0x00001BF0; // type:function size:0x3B0 +fn_1_1FA0 = .text:0x00001FA0; // type:function size:0x14C +fn_1_20EC = .text:0x000020EC; // type:function size:0x2F4 +fn_1_23E0 = .text:0x000023E0; // type:function size:0xA44 +fn_1_2E24 = .text:0x00002E24; // type:function size:0x824 +fn_1_3648 = .text:0x00003648; // type:function size:0x94 +fn_1_36DC = .text:0x000036DC; // type:function size:0x2EC +fn_1_39C8 = .text:0x000039C8; // type:function size:0x1EC +fn_1_3BB4 = .text:0x00003BB4; // type:function size:0xE0 +fn_1_3C94 = .text:0x00003C94; // type:function size:0x208 +fn_1_3E9C = .text:0x00003E9C; // type:function size:0x9C +fn_1_3F38 = .text:0x00003F38; // type:function size:0x480 +fn_1_43B8 = .text:0x000043B8; // type:function size:0x54 +fn_1_440C = .text:0x0000440C; // type:function size:0x168 +fn_1_4574 = .text:0x00004574; // type:function size:0x120 +fn_1_4694 = .text:0x00004694; // type:function size:0x30C +fn_1_49A0 = .text:0x000049A0; // type:function size:0x78 +fn_1_4A18 = .text:0x00004A18; // type:function size:0x11C +fn_1_4B34 = .text:0x00004B34; // type:function size:0x78 +fn_1_4BAC = .text:0x00004BAC; // type:function size:0x2D8 +fn_1_4E84 = .text:0x00004E84; // type:function size:0x2B8 +fn_1_513C = .text:0x0000513C; // type:function size:0x154 +fn_1_5290 = .text:0x00005290; // type:function size:0x3E0 +fn_1_5670 = .text:0x00005670; // type:function size:0x214 +fn_1_5884 = .text:0x00005884; // type:function size:0x198 +fn_1_5A1C = .text:0x00005A1C; // type:function size:0xD8 +fn_1_5AF4 = .text:0x00005AF4; // type:function size:0xBC +fn_1_5BB0 = .text:0x00005BB0; // type:function size:0x33C +fn_1_5EEC = .text:0x00005EEC; // type:function size:0x4B0 +fn_1_639C = .text:0x0000639C; // type:function size:0x10 +fn_1_63AC = .text:0x000063AC; // type:function size:0x9C +fn_1_6448 = .text:0x00006448; // type:function size:0xA0 +fn_1_64E8 = .text:0x000064E8; // type:function size:0x260 +fn_1_6748 = .text:0x00006748; // type:function size:0x20 +fn_1_6768 = .text:0x00006768; // type:function size:0x84 +fn_1_67EC = .text:0x000067EC; // type:function size:0x4 +fn_1_67F0 = .text:0x000067F0; // type:function size:0x16C +fn_1_695C = .text:0x0000695C; // type:function size:0x318 +fn_1_6C74 = .text:0x00006C74; // type:function size:0x240 +fn_1_6EB4 = .text:0x00006EB4; // type:function size:0x110 +fn_1_6FC4 = .text:0x00006FC4; // type:function size:0x400 +fn_1_73C4 = .text:0x000073C4; // type:function size:0x5B4 +fn_1_7978 = .text:0x00007978; // type:function size:0xFC +fn_1_7A74 = .text:0x00007A74; // type:function size:0x88 +fn_1_7AFC = .text:0x00007AFC; // type:function size:0xB4 +fn_1_7BB0 = .text:0x00007BB0; // type:function size:0x4C +fn_1_7BFC = .text:0x00007BFC; // type:function size:0x10 +fn_1_7C0C = .text:0x00007C0C; // type:function size:0x20 +fn_1_7C2C = .text:0x00007C2C; // type:function size:0x10 +fn_1_7C3C = .text:0x00007C3C; // type:function size:0xA4 +fn_1_7CE0 = .text:0x00007CE0; // type:function size:0x274 +fn_1_7F54 = .text:0x00007F54; // type:function size:0x15C +fn_1_80B0 = .text:0x000080B0; // type:function size:0x180 +fn_1_8230 = .text:0x00008230; // type:function size:0x10 +fn_1_8240 = .text:0x00008240; // type:function size:0x10 +fn_1_8250 = .text:0x00008250; // type:function size:0x5C +fn_1_82AC = .text:0x000082AC; // type:function size:0x1A0 +fn_1_844C = .text:0x0000844C; // type:function size:0x200 +fn_1_864C = .text:0x0000864C; // type:function size:0x30 +fn_1_867C = .text:0x0000867C; // type:function size:0x8CC +fn_1_8F48 = .text:0x00008F48; // type:function size:0x290 +fn_1_91D8 = .text:0x000091D8; // type:function size:0x74 +fn_1_924C = .text:0x0000924C; // type:function size:0x50 +fn_1_929C = .text:0x0000929C; // type:function size:0x24 +fn_1_92C0 = .text:0x000092C0; // type:function size:0x30 +fn_1_92F0 = .text:0x000092F0; // type:function size:0x11C +fn_1_940C = .text:0x0000940C; // type:function size:0x78 +fn_1_9484 = .text:0x00009484; // type:function size:0x8C +fn_1_9510 = .text:0x00009510; // type:function size:0x164 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x9 data:byte +lbl_1_rodata_8D = .rodata:0x0000008D; // type:object size:0xB data:byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0xC +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x28 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x24 data:4byte +jumptable_1_data_8C = .data:0x0000008C; // type:object size:0x1C scope:local +jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x20 +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x30 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x20 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x20 +lbl_1_data_154 = .data:0x00000154; // type:object size:0x4 data:4byte +lbl_1_data_158 = .data:0x00000158; // type:object size:0xC0 +lbl_1_data_218 = .data:0x00000218; // type:object size:0xC0 +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x78 +lbl_1_data_350 = .data:0x00000350; // type:object size:0x78 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xC0 +lbl_1_data_488 = .data:0x00000488; // type:object size:0xC0 +lbl_1_data_548 = .data:0x00000548; // type:object size:0x78 +lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x78 +lbl_1_data_638 = .data:0x00000638; // type:object size:0x108 +lbl_1_data_740 = .data:0x00000740; // type:object size:0x108 +lbl_1_data_848 = .data:0x00000848; // type:object size:0x108 +lbl_1_data_950 = .data:0x00000950; // type:object size:0x108 +lbl_1_data_A58 = .data:0x00000A58; // type:object size:0x30 +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x48 +lbl_1_data_AD0 = .data:0x00000AD0; // type:object size:0xC data:4byte +lbl_1_data_ADC = .data:0x00000ADC; // type:object size:0xC data:4byte +lbl_1_data_AE8 = .data:0x00000AE8; // type:object size:0x14 data:4byte +lbl_1_data_AFC = .data:0x00000AFC; // type:object size:0x18 +lbl_1_data_B14 = .data:0x00000B14; // type:object size:0x18 +lbl_1_data_B2C = .data:0x00000B2C; // type:object size:0x48 +lbl_1_data_B74 = .data:0x00000B74; // type:object size:0x30 +lbl_1_data_BA4 = .data:0x00000BA4; // type:object size:0x1C +lbl_1_data_BC0 = .data:0x00000BC0; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x6 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte +lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x14 data:2byte +lbl_1_bss_32 = .bss:0x00000032; // type:object size:0x2 data:2byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x2 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x2 data:2byte +lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x2 data:2byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x18 +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:float +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x14 +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m455Dll/splits.txt b/config/GMPJ01_00/rels/m455Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m455Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m455Dll/symbols.txt b/config/GMPJ01_00/rels/m455Dll/symbols.txt new file mode 100644 index 00000000..cd750911 --- /dev/null +++ b/config/GMPJ01_00/rels/m455Dll/symbols.txt @@ -0,0 +1,290 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x270 +fn_1_310 = .text:0x00000310; // type:function size:0x10 +fn_1_320 = .text:0x00000320; // type:function size:0x10 +fn_1_330 = .text:0x00000330; // type:function size:0x148 +fn_1_478 = .text:0x00000478; // type:function size:0x6C0 +fn_1_B38 = .text:0x00000B38; // type:function size:0x5C +fn_1_B94 = .text:0x00000B94; // type:function size:0x94 +fn_1_C28 = .text:0x00000C28; // type:function size:0x68 +fn_1_C90 = .text:0x00000C90; // type:function size:0x84 +fn_1_D14 = .text:0x00000D14; // type:function size:0x6EC +fn_1_1400 = .text:0x00001400; // type:function size:0x44 +fn_1_1444 = .text:0x00001444; // type:function size:0xBCC +fn_1_2010 = .text:0x00002010; // type:function size:0x50 +fn_1_2060 = .text:0x00002060; // type:function size:0x330 +fn_1_2390 = .text:0x00002390; // type:function size:0x104 +fn_1_2494 = .text:0x00002494; // type:function size:0x5C +fn_1_24F0 = .text:0x000024F0; // type:function size:0x208 +fn_1_26F8 = .text:0x000026F8; // type:function size:0xA8 +fn_1_27A0 = .text:0x000027A0; // type:function size:0x2F0 +fn_1_2A90 = .text:0x00002A90; // type:function size:0x64 +fn_1_2AF4 = .text:0x00002AF4; // type:function size:0x250 +fn_1_2D44 = .text:0x00002D44; // type:function size:0x4D0 +fn_1_3214 = .text:0x00003214; // type:function size:0xB0 +fn_1_32C4 = .text:0x000032C4; // type:function size:0x148 +fn_1_340C = .text:0x0000340C; // type:function size:0x70 +fn_1_347C = .text:0x0000347C; // type:function size:0x960 +fn_1_3DDC = .text:0x00003DDC; // type:function size:0x328 +fn_1_4104 = .text:0x00004104; // type:function size:0x7C +fn_1_4180 = .text:0x00004180; // type:function size:0x82C +fn_1_49AC = .text:0x000049AC; // type:function size:0x68 +fn_1_4A14 = .text:0x00004A14; // type:function size:0x108 +fn_1_4B1C = .text:0x00004B1C; // type:function size:0x348 +fn_1_4E64 = .text:0x00004E64; // type:function size:0xB3C +fn_1_59A0 = .text:0x000059A0; // type:function size:0x6E8 +fn_1_6088 = .text:0x00006088; // type:function size:0xBC +fn_1_6144 = .text:0x00006144; // type:function size:0x450 +fn_1_6594 = .text:0x00006594; // type:function size:0x104 +fn_1_6698 = .text:0x00006698; // type:function size:0x1E4 +fn_1_687C = .text:0x0000687C; // type:function size:0x4C +fn_1_68C8 = .text:0x000068C8; // type:function size:0x4C +fn_1_6914 = .text:0x00006914; // type:function size:0x158 +fn_1_6A6C = .text:0x00006A6C; // type:function size:0x1F4 +fn_1_6C60 = .text:0x00006C60; // type:function size:0x50 +fn_1_6CB0 = .text:0x00006CB0; // type:function size:0x5D0 +fn_1_7280 = .text:0x00007280; // type:function size:0xE8 +fn_1_7368 = .text:0x00007368; // type:function size:0xC8 +fn_1_7430 = .text:0x00007430; // type:function size:0x4 +fn_1_7434 = .text:0x00007434; // type:function size:0x18C +fn_1_75C0 = .text:0x000075C0; // type:function size:0xF0 +fn_1_76B0 = .text:0x000076B0; // type:function size:0x2C4 +fn_1_7974 = .text:0x00007974; // type:function size:0x54 +fn_1_79C8 = .text:0x000079C8; // type:function size:0x280 +fn_1_7C48 = .text:0x00007C48; // type:function size:0x408 +fn_1_8050 = .text:0x00008050; // type:function size:0x424 +fn_1_8474 = .text:0x00008474; // type:function size:0x4 +fn_1_8478 = .text:0x00008478; // type:function size:0x100 +fn_1_8578 = .text:0x00008578; // type:function size:0x104 +fn_1_867C = .text:0x0000867C; // type:function size:0x2A0 +fn_1_891C = .text:0x0000891C; // type:function size:0x474 +fn_1_8D90 = .text:0x00008D90; // type:function size:0x11C +fn_1_8EAC = .text:0x00008EAC; // type:function size:0x2BC +fn_1_9168 = .text:0x00009168; // type:function size:0x50 +fn_1_91B8 = .text:0x000091B8; // type:function size:0xB44 +fn_1_9CFC = .text:0x00009CFC; // type:function size:0x104 +fn_1_9E00 = .text:0x00009E00; // type:function size:0x118 +fn_1_9F18 = .text:0x00009F18; // type:function size:0x250 +_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // 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:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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:0x8 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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +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:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0xC data:float +lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x2 data:2byte +lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte +lbl_1_data_98 = .data:0x00000098; // type:object size:0x4 data:4byte +jumptable_1_data_9C = .data:0x0000009C; // type:object size:0x28 scope:local +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x1C data:string +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x28 +lbl_1_data_108 = .data:0x00000108; // type:object size:0x30 +lbl_1_data_138 = .data:0x00000138; // type:object size:0x1C +lbl_1_data_154 = .data:0x00000154; // type:object size:0x10 +lbl_1_data_164 = .data:0x00000164; // type:object size:0xC +lbl_1_data_170 = .data:0x00000170; // type:object size:0x1 data:byte +lbl_1_data_174 = .data:0x00000174; // type:object size:0x5 data:string +lbl_1_data_179 = .data:0x00000179; // type:object size:0xB data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x8 data:float +lbl_1_data_18C = .data:0x0000018C; // type:object size:0x4C +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x30 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x1 data:byte +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x50 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x7 data:string +lbl_1_data_263 = .data:0x00000263; // type:object size:0x7 data:string +lbl_1_data_26A = .data:0x0000026A; // type:object size:0x1 data:byte +lbl_1_data_26E = .data:0x0000026E; // type:object size:0x1 data:byte +lbl_1_data_272 = .data:0x00000272; // type:object size:0x6 data:byte +lbl_1_data_278 = .data:0x00000278; // type:object size:0x30 +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x138 +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x68 +lbl_1_data_448 = .data:0x00000448; // type:object size:0xD0 +lbl_1_data_518 = .data:0x00000518; // type:object size:0xD0 +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x18 +lbl_1_data_600 = .data:0x00000600; // type:object size:0x1 data:byte +lbl_1_data_604 = .data:0x00000604; // type:object size:0x6C +lbl_1_data_670 = .data:0x00000670; // type:object size:0x24 +lbl_1_data_694 = .data:0x00000694; // type:object size:0x8 data:byte +lbl_1_data_69C = .data:0x0000069C; // type:object size:0x1 data:byte +lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x10 +lbl_1_data_6B0 = .data:0x000006B0; // type:object size:0x10 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x8 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m456Dll/splits.txt b/config/GMPJ01_00/rels/m456Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m456Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m456Dll/symbols.txt b/config/GMPJ01_00/rels/m456Dll/symbols.txt new file mode 100644 index 00000000..fbdbf93f --- /dev/null +++ b/config/GMPJ01_00/rels/m456Dll/symbols.txt @@ -0,0 +1,282 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x300 +fn_1_3A0 = .text:0x000003A0; // type:function size:0x10 +fn_1_3B0 = .text:0x000003B0; // type:function size:0x10 +fn_1_3C0 = .text:0x000003C0; // type:function size:0xD8 +fn_1_498 = .text:0x00000498; // type:function size:0x74C +fn_1_BE4 = .text:0x00000BE4; // type:function size:0x5C +fn_1_C40 = .text:0x00000C40; // type:function size:0x84 +fn_1_CC4 = .text:0x00000CC4; // type:function size:0x68 +fn_1_D2C = .text:0x00000D2C; // type:function size:0x220 +fn_1_F4C = .text:0x00000F4C; // type:function size:0x84 +fn_1_FD0 = .text:0x00000FD0; // type:function size:0x2B8 +fn_1_1288 = .text:0x00001288; // type:function size:0x7C +fn_1_1304 = .text:0x00001304; // type:function size:0xD3C +fn_1_2040 = .text:0x00002040; // type:function size:0x50 +fn_1_2090 = .text:0x00002090; // type:function size:0x104 +fn_1_2194 = .text:0x00002194; // type:function size:0x64 +fn_1_21F8 = .text:0x000021F8; // type:function size:0x250 +fn_1_2448 = .text:0x00002448; // type:function size:0x4D0 +fn_1_2918 = .text:0x00002918; // type:function size:0x1AC +fn_1_2AC4 = .text:0x00002AC4; // type:function size:0x330 +fn_1_2DF4 = .text:0x00002DF4; // type:function size:0x148 +fn_1_2F3C = .text:0x00002F3C; // type:function size:0x70 +fn_1_2FAC = .text:0x00002FAC; // type:function size:0x960 +fn_1_390C = .text:0x0000390C; // type:function size:0x328 +fn_1_3C34 = .text:0x00003C34; // type:function size:0x7C +fn_1_3CB0 = .text:0x00003CB0; // type:function size:0x82C +fn_1_44DC = .text:0x000044DC; // type:function size:0x68 +fn_1_4544 = .text:0x00004544; // type:function size:0x108 +fn_1_464C = .text:0x0000464C; // type:function size:0x348 +fn_1_4994 = .text:0x00004994; // type:function size:0xB3C +fn_1_54D0 = .text:0x000054D0; // type:function size:0x6E8 +fn_1_5BB8 = .text:0x00005BB8; // type:function size:0xBC +fn_1_5C74 = .text:0x00005C74; // type:function size:0x450 +fn_1_60C4 = .text:0x000060C4; // type:function size:0x104 +fn_1_61C8 = .text:0x000061C8; // type:function size:0x1E4 +fn_1_63AC = .text:0x000063AC; // type:function size:0x4C +fn_1_63F8 = .text:0x000063F8; // type:function size:0x4C +fn_1_6444 = .text:0x00006444; // type:function size:0x158 +fn_1_659C = .text:0x0000659C; // type:function size:0x1F4 +fn_1_6790 = .text:0x00006790; // type:function size:0x50 +fn_1_67E0 = .text:0x000067E0; // type:function size:0x5D0 +fn_1_6DB0 = .text:0x00006DB0; // type:function size:0xE8 +fn_1_6E98 = .text:0x00006E98; // type:function size:0xC8 +fn_1_6F60 = .text:0x00006F60; // type:function size:0x4 +fn_1_6F64 = .text:0x00006F64; // type:function size:0x18C +fn_1_70F0 = .text:0x000070F0; // type:function size:0xF0 +fn_1_71E0 = .text:0x000071E0; // type:function size:0x2C4 +fn_1_74A4 = .text:0x000074A4; // type:function size:0x54 +fn_1_74F8 = .text:0x000074F8; // type:function size:0x280 +fn_1_7778 = .text:0x00007778; // type:function size:0x3D8 +fn_1_7B50 = .text:0x00007B50; // type:function size:0x424 +fn_1_7F74 = .text:0x00007F74; // type:function size:0x4 +fn_1_7F78 = .text:0x00007F78; // type:function size:0x100 +fn_1_8078 = .text:0x00008078; // type:function size:0x104 +fn_1_817C = .text:0x0000817C; // type:function size:0x2A0 +fn_1_841C = .text:0x0000841C; // type:function size:0x474 +fn_1_8890 = .text:0x00008890; // type:function size:0x11C +fn_1_89AC = .text:0x000089AC; // type:function size:0x2BC +fn_1_8C68 = .text:0x00008C68; // type:function size:0x50 +fn_1_8CB8 = .text:0x00008CB8; // type:function size:0xB44 +fn_1_97FC = .text:0x000097FC; // type:function size:0x104 +fn_1_9900 = .text:0x00009900; // type:function size:0x118 +fn_1_9A18 = .text:0x00009A18; // type:function size:0x250 +_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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:0x8 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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +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:0x4 data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float +lbl_1_data_38 = .data:0x00000038; // type:object size:0xC data:float +lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float +lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 +lbl_1_data_54 = .data:0x00000054; // type:object size:0xC +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x4 data:4byte +lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte +jumptable_1_data_98 = .data:0x00000098; // type:object size:0x30 scope:local +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x1C data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x50 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x30 +lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 +jumptable_1_data_188 = .data:0x00000188; // type:object size:0x20 scope:local +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x8 data:float +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x80 +lbl_1_data_230 = .data:0x00000230; // type:object size:0xB8 +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x30 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x1 data:byte +lbl_1_data_31C = .data:0x0000031C; // type:object size:0x50 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x7 data:string +lbl_1_data_373 = .data:0x00000373; // type:object size:0x7 data:string +lbl_1_data_37A = .data:0x0000037A; // type:object size:0x1 data:byte +lbl_1_data_37E = .data:0x0000037E; // type:object size:0x1 data:byte +lbl_1_data_382 = .data:0x00000382; // type:object size:0x6 data:byte +lbl_1_data_388 = .data:0x00000388; // type:object size:0x30 +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x138 +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x68 +lbl_1_data_558 = .data:0x00000558; // type:object size:0xD0 +lbl_1_data_628 = .data:0x00000628; // type:object size:0xD0 +lbl_1_data_6F8 = .data:0x000006F8; // type:object size:0x18 +lbl_1_data_710 = .data:0x00000710; // type:object size:0x1 data:byte +lbl_1_data_714 = .data:0x00000714; // type:object size:0x6C +lbl_1_data_780 = .data:0x00000780; // type:object size:0x24 +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x8 data:byte +lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x1 data:byte +lbl_1_data_7B0 = .data:0x000007B0; // type:object size:0x10 +lbl_1_data_7C0 = .data:0x000007C0; // type:object size:0x10 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x40 data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte +lbl_1_bss_62 = .bss:0x00000062; // type:object size:0x2 data:2byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x10 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x10 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m457Dll/splits.txt b/config/GMPJ01_00/rels/m457Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m457Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m457Dll/symbols.txt b/config/GMPJ01_00/rels/m457Dll/symbols.txt new file mode 100644 index 00000000..536be91f --- /dev/null +++ b/config/GMPJ01_00/rels/m457Dll/symbols.txt @@ -0,0 +1,178 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3CC +fn_1_46C = .text:0x0000046C; // type:function size:0x2858 +fn_1_2CC4 = .text:0x00002CC4; // type:function size:0x281C +fn_1_54E0 = .text:0x000054E0; // type:function size:0x220 +fn_1_5700 = .text:0x00005700; // type:function size:0x29C +fn_1_599C = .text:0x0000599C; // type:function size:0xB3C +fn_1_64D8 = .text:0x000064D8; // type:function size:0xAB8 +fn_1_6F90 = .text:0x00006F90; // type:function size:0x5F4 +fn_1_7584 = .text:0x00007584; // type:function size:0xC0 +fn_1_7644 = .text:0x00007644; // type:function size:0x480 +fn_1_7AC4 = .text:0x00007AC4; // type:function size:0x9C +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x64 +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 data:4byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 data:4byte +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:4byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x14 data:4byte +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x40 data:4byte +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x40 data:4byte +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x5C +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x5C +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0xC data:4byte +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0xC data:4byte +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x1 data:byte +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x5C +lbl_1_data_5C = .data:0x0000005C; // type:object size:0x5C data:4byte +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC +lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 +lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C +lbl_1_data_220 = .data:0x00000220; // type:object size:0x6C +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x4 data:4byte +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x4 data:4byte +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x4 data:4byte +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 data:string +lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 data:string +jumptable_1_data_2C8 = .data:0x000002C8; // type:object size:0x2C scope:local +jumptable_1_data_2F4 = .data:0x000002F4; // type:object size:0x48 scope:local +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte +lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float +lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float +lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float +jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x20 scope:local +jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local +lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 data:string +lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 data:string +lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x8 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte diff --git a/config/GMPJ01_00/rels/m458Dll/splits.txt b/config/GMPJ01_00/rels/m458Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m458Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m458Dll/symbols.txt b/config/GMPJ01_00/rels/m458Dll/symbols.txt new file mode 100644 index 00000000..5c135c78 --- /dev/null +++ b/config/GMPJ01_00/rels/m458Dll/symbols.txt @@ -0,0 +1,176 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x428 +fn_1_4C8 = .text:0x000004C8; // type:function size:0x3044 +fn_1_350C = .text:0x0000350C; // type:function size:0x16DC +fn_1_4BE8 = .text:0x00004BE8; // type:function size:0x15C +fn_1_4D44 = .text:0x00004D44; // type:function size:0x2D0 +fn_1_5014 = .text:0x00005014; // type:function size:0x9C8 +fn_1_59DC = .text:0x000059DC; // type:function size:0x938 +fn_1_6314 = .text:0x00006314; // type:function size:0x548 +fn_1_685C = .text:0x0000685C; // type:function size:0xC0 +fn_1_691C = .text:0x0000691C; // type:function size:0x480 +fn_1_6D9C = .text:0x00006D9C; // type:function size:0xD0 +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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:0x8 data:double +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:0x8 data:double +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x94 +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x50 +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:4byte +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x70 +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:4byte +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0xC data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0xC data:4byte +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 +lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 data:4byte +lbl_1_data_10 = .data:0x00000010; // type:object size:0x28 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x28 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x28 +lbl_1_data_88 = .data:0x00000088; // type:object size:0xA +lbl_1_data_92 = .data:0x00000092; // type:object size:0xA +lbl_1_data_9C = .data:0x0000009C; // type:object size:0x28 +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x28 +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x28 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x18 data:float +lbl_1_data_12C = .data:0x0000012C; // type:object size:0x2 data:2byte +lbl_1_data_12E = .data:0x0000012E; // type:object size:0x2 data:2byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x4 data:4byte +lbl_1_data_134 = .data:0x00000134; // type:object size:0x4 data:4byte +lbl_1_data_138 = .data:0x00000138; // type:object size:0x24 data:2byte +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x4 data:4byte +lbl_1_data_160 = .data:0x00000160; // type:object size:0x9 data:string +lbl_1_data_169 = .data:0x00000169; // type:object size:0x3 data:string +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 data:4byte +jumptable_1_data_170 = .data:0x00000170; // type:object size:0x30 scope:local +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x4 data:4byte +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x4 data:float +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x4 data:float +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x4 data:float +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x4 data:string +jumptable_1_data_1B4 = .data:0x000001B4; // type:object size:0x34 scope:local +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x2C +lbl_1_data_214 = .data:0x00000214; // type:object size:0x8 data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x19 data:string +lbl_1_data_235 = .data:0x00000235; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x50 +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x8 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x8 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x1C0 data:4byte +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x90 diff --git a/config/GMPJ01_00/rels/m459dll/splits.txt b/config/GMPJ01_00/rels/m459dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m459dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m459dll/symbols.txt b/config/GMPJ01_00/rels/m459dll/symbols.txt new file mode 100644 index 00000000..ee18477b --- /dev/null +++ b/config/GMPJ01_00/rels/m459dll/symbols.txt @@ -0,0 +1,169 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x138 +fn_1_1D8 = .text:0x000001D8; // type:function size:0x468 +fn_1_640 = .text:0x00000640; // type:function size:0xFC +fn_1_73C = .text:0x0000073C; // type:function size:0x73C +fn_1_E78 = .text:0x00000E78; // type:function size:0x364 +fn_1_11DC = .text:0x000011DC; // type:function size:0x28 +fn_1_1204 = .text:0x00001204; // type:function size:0x28 +fn_1_122C = .text:0x0000122C; // type:function size:0x200 +fn_1_142C = .text:0x0000142C; // type:function size:0x8C +fn_1_14B8 = .text:0x000014B8; // type:function size:0x2C0 +fn_1_1778 = .text:0x00001778; // type:function size:0x124 +fn_1_189C = .text:0x0000189C; // type:function size:0x118 +fn_1_19B4 = .text:0x000019B4; // type:function size:0x4C +fn_1_1A00 = .text:0x00001A00; // type:function size:0x5DC +fn_1_1FDC = .text:0x00001FDC; // type:function size:0x68 +fn_1_2044 = .text:0x00002044; // type:function size:0x168 +fn_1_21AC = .text:0x000021AC; // type:function size:0x200 +fn_1_23AC = .text:0x000023AC; // type:function size:0x21C +fn_1_25C8 = .text:0x000025C8; // type:function size:0x200 +fn_1_27C8 = .text:0x000027C8; // type:function size:0x168 +fn_1_2930 = .text:0x00002930; // type:function size:0x1F4 +fn_1_2B24 = .text:0x00002B24; // type:function size:0x3F4 +fn_1_2F18 = .text:0x00002F18; // type:function size:0xEC +fn_1_3004 = .text:0x00003004; // type:function size:0x388 +fn_1_338C = .text:0x0000338C; // type:function size:0x374 +fn_1_3700 = .text:0x00003700; // type:function size:0xA60 +fn_1_4160 = .text:0x00004160; // type:function size:0xB0 +fn_1_4210 = .text:0x00004210; // type:function size:0x104 +fn_1_4314 = .text:0x00004314; // type:function size:0x21C +fn_1_4530 = .text:0x00004530; // type:function size:0xBC +fn_1_45EC = .text:0x000045EC; // type:function size:0x178 +fn_1_4764 = .text:0x00004764; // type:function size:0x80 +fn_1_47E4 = .text:0x000047E4; // type:function size:0x6C +fn_1_4850 = .text:0x00004850; // type:function size:0x94 +fn_1_48E4 = .text:0x000048E4; // type:function size:0x190 +fn_1_4A74 = .text:0x00004A74; // type:function size:0xF4 +fn_1_4B68 = .text:0x00004B68; // type:function size:0xB4 +fn_1_4C1C = .text:0x00004C1C; // type:function size:0xB4 +fn_1_4CD0 = .text:0x00004CD0; // type:function size:0x184 +fn_1_4E54 = .text:0x00004E54; // type:function size:0x10 +fn_1_4E64 = .text:0x00004E64; // type:function size:0x20 +fn_1_4E84 = .text:0x00004E84; // type:function size:0x14 +fn_1_4E98 = .text:0x00004E98; // type:function size:0x14 +fn_1_4EAC = .text:0x00004EAC; // type:function size:0xE0 +fn_1_4F8C = .text:0x00004F8C; // type:function size:0x20 +fn_1_4FAC = .text:0x00004FAC; // type:function size:0x1C +fn_1_4FC8 = .text:0x00004FC8; // type:function size:0x310 +fn_1_52D8 = .text:0x000052D8; // type:function size:0x18 +fn_1_52F0 = .text:0x000052F0; // type:function size:0x10 +fn_1_5300 = .text:0x00005300; // type:function size:0x10 +fn_1_5310 = .text:0x00005310; // type:function size:0x4C +fn_1_535C = .text:0x0000535C; // type:function size:0x134 +fn_1_5490 = .text:0x00005490; // type:function size:0xDC +fn_1_556C = .text:0x0000556C; // type:function size:0x44 +fn_1_55B0 = .text:0x000055B0; // type:function size:0x4C8 +fn_1_5A78 = .text:0x00005A78; // type:function size:0x3C4 +fn_1_5E3C = .text:0x00005E3C; // type:function size:0x70 +fn_1_5EAC = .text:0x00005EAC; // type:function size:0x94 +fn_1_5F40 = .text:0x00005F40; // type:function size:0x44 +fn_1_5F84 = .text:0x00005F84; // type:function size:0x214 +fn_1_6198 = .text:0x00006198; // type:function size:0x2C0 +fn_1_6458 = .text:0x00006458; // type:function size:0x128 +_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:0x30 +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x78 +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x18 +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:wstring +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x20 +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x20 +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x19C +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x8 +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x14 +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x14 +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x14 +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x14 +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0xC data:4byte +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0xC data:4byte +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0xC data:4byte +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x48 +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string +lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1D +jumptable_1_data_38 = .data:0x00000038; // type:object size:0x38 scope:local +lbl_1_data_70 = .data:0x00000070; // type:object size:0x1C +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x1 data:byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x30 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x2 data:2byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x18 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0xC data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0xC data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x50 +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x550 data:4byte +lbl_1_bss_61C = .bss:0x0000061C; // type:object size:0x7C data:float +lbl_1_bss_698 = .bss:0x00000698; // type:object size:0x4C data:4byte +lbl_1_bss_6E4 = .bss:0x000006E4; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m460Dll/splits.txt b/config/GMPJ01_00/rels/m460Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m460Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m460Dll/symbols.txt b/config/GMPJ01_00/rels/m460Dll/symbols.txt new file mode 100644 index 00000000..9864f9d8 --- /dev/null +++ b/config/GMPJ01_00/rels/m460Dll/symbols.txt @@ -0,0 +1,301 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x428 +fn_1_4C8 = .text:0x000004C8; // type:function size:0x128 +fn_1_5F0 = .text:0x000005F0; // type:function size:0x20C +fn_1_7FC = .text:0x000007FC; // type:function size:0x14C +fn_1_948 = .text:0x00000948; // type:function size:0x434 +fn_1_D7C = .text:0x00000D7C; // type:function size:0x470 +fn_1_11EC = .text:0x000011EC; // type:function size:0x35C +fn_1_1548 = .text:0x00001548; // type:function size:0x434 +fn_1_197C = .text:0x0000197C; // type:function size:0x6A0 +fn_1_201C = .text:0x0000201C; // type:function size:0x4D8 +fn_1_24F4 = .text:0x000024F4; // type:function size:0x70 +fn_1_2564 = .text:0x00002564; // type:function size:0x800 +fn_1_2D64 = .text:0x00002D64; // type:function size:0xC +fn_1_2D70 = .text:0x00002D70; // type:function size:0x55C +fn_1_32CC = .text:0x000032CC; // type:function size:0xB0 +fn_1_337C = .text:0x0000337C; // type:function size:0x274 +fn_1_35F0 = .text:0x000035F0; // type:function size:0x28 +fn_1_3618 = .text:0x00003618; // type:function size:0x5A8 +fn_1_3BC0 = .text:0x00003BC0; // type:function size:0x2A8 +fn_1_3E68 = .text:0x00003E68; // type:function size:0x14 +fn_1_3E7C = .text:0x00003E7C; // type:function size:0x14 +fn_1_3E90 = .text:0x00003E90; // type:function size:0x9C +fn_1_3F2C = .text:0x00003F2C; // type:function size:0x9C +fn_1_3FC8 = .text:0x00003FC8; // type:function size:0x68 +fn_1_4030 = .text:0x00004030; // type:function size:0x6C +fn_1_409C = .text:0x0000409C; // type:function size:0x98 +fn_1_4134 = .text:0x00004134; // type:function size:0x18 +fn_1_414C = .text:0x0000414C; // type:function size:0x18 +fn_1_4164 = .text:0x00004164; // type:function size:0x18 +fn_1_417C = .text:0x0000417C; // type:function size:0x18 +fn_1_4194 = .text:0x00004194; // type:function size:0x8 +fn_1_419C = .text:0x0000419C; // type:function size:0x18 +fn_1_41B4 = .text:0x000041B4; // type:function size:0x40 +fn_1_41F4 = .text:0x000041F4; // type:function size:0x30 +fn_1_4224 = .text:0x00004224; // type:function size:0x30 +fn_1_4254 = .text:0x00004254; // type:function size:0x30 +fn_1_4284 = .text:0x00004284; // type:function size:0x38 +fn_1_42BC = .text:0x000042BC; // type:function size:0x34 +fn_1_42F0 = .text:0x000042F0; // type:function size:0x18 +fn_1_4308 = .text:0x00004308; // type:function size:0x1C +fn_1_4324 = .text:0x00004324; // type:function size:0x18 +fn_1_433C = .text:0x0000433C; // type:function size:0x1C +fn_1_4358 = .text:0x00004358; // type:function size:0x18 +fn_1_4370 = .text:0x00004370; // type:function size:0x18 +fn_1_4388 = .text:0x00004388; // type:function size:0x208 +fn_1_4590 = .text:0x00004590; // type:function size:0x240 +fn_1_47D0 = .text:0x000047D0; // type:function size:0x11C +fn_1_48EC = .text:0x000048EC; // type:function size:0xB4 +fn_1_49A0 = .text:0x000049A0; // type:function size:0x244 +fn_1_4BE4 = .text:0x00004BE4; // type:function size:0x24 +fn_1_4C08 = .text:0x00004C08; // type:function size:0x364 +fn_1_4F6C = .text:0x00004F6C; // type:function size:0x1FC +fn_1_5168 = .text:0x00005168; // type:function size:0x484 +fn_1_55EC = .text:0x000055EC; // type:function size:0x1EC +fn_1_57D8 = .text:0x000057D8; // type:function size:0xF0 +fn_1_58C8 = .text:0x000058C8; // type:function size:0x14C +fn_1_5A14 = .text:0x00005A14; // type:function size:0x274 +fn_1_5C88 = .text:0x00005C88; // type:function size:0x58 +fn_1_5CE0 = .text:0x00005CE0; // type:function size:0x18C +fn_1_5E6C = .text:0x00005E6C; // type:function size:0x74 +fn_1_5EE0 = .text:0x00005EE0; // type:function size:0x1D0 +fn_1_60B0 = .text:0x000060B0; // type:function size:0x144 +fn_1_61F4 = .text:0x000061F4; // type:function size:0x5C0 +fn_1_67B4 = .text:0x000067B4; // type:function size:0x60 +fn_1_6814 = .text:0x00006814; // type:function size:0x4 +fn_1_6818 = .text:0x00006818; // type:function size:0x3E8 +fn_1_6C00 = .text:0x00006C00; // type:function size:0x7F8 +fn_1_73F8 = .text:0x000073F8; // type:function size:0x2CC +fn_1_76C4 = .text:0x000076C4; // type:function size:0x60 +fn_1_7724 = .text:0x00007724; // type:function size:0x6C +fn_1_7790 = .text:0x00007790; // type:function size:0x404 +fn_1_7B94 = .text:0x00007B94; // type:function size:0x214 +fn_1_7DA8 = .text:0x00007DA8; // type:function size:0xDF8 +fn_1_8BA0 = .text:0x00008BA0; // type:function size:0xD8 +fn_1_8C78 = .text:0x00008C78; // type:function size:0x34 +fn_1_8CAC = .text:0x00008CAC; // type:function size:0x28C +fn_1_8F38 = .text:0x00008F38; // type:function size:0x74 +fn_1_8FAC = .text:0x00008FAC; // type:function size:0x50 +fn_1_8FFC = .text:0x00008FFC; // type:function size:0x24 +fn_1_9020 = .text:0x00009020; // type:function size:0x30 +fn_1_9050 = .text:0x00009050; // type:function size:0x11C +fn_1_916C = .text:0x0000916C; // type:function size:0x78 +fn_1_91E4 = .text:0x000091E4; // type:function size:0x8C +fn_1_9270 = .text:0x00009270; // type:function size:0x164 +_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:0xC data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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:4byte +lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x50 +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x14 data:4byte +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x10 data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x30 data:4byte +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x18 data:4byte +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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x18 data:4byte +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x1 data:byte +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x1 data:byte +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0xC data:4byte +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // 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:0xC data:float +lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 +lbl_1_data_94 = .data:0x00000094; // type:object size:0xC +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC +lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x1 data:byte +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x1A data:string +lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x1A +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x20 +lbl_1_data_110 = .data:0x00000110; // type:object size:0xA0 +jumptable_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 scope:local +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x14 +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x100 +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x40 +lbl_1_data_328 = .data:0x00000328; // type:object size:0xC +lbl_1_data_334 = .data:0x00000334; // type:object size:0xC +lbl_1_data_340 = .data:0x00000340; // type:object size:0xC +lbl_1_data_34C = .data:0x0000034C; // type:object size:0x8 +lbl_1_data_354 = .data:0x00000354; // type:object size:0x8 +lbl_1_data_35C = .data:0x0000035C; // type:object size:0x7 data:string +lbl_1_data_363 = .data:0x00000363; // type:object size:0x9 +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC +lbl_1_data_378 = .data:0x00000378; // type:object size:0x8 data:byte +lbl_1_data_380 = .data:0x00000380; // type:object size:0xC +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte +lbl_1_bss_1A = .bss:0x0000001A; // type:object size:0x6 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x8 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m461Dll/splits.txt b/config/GMPJ01_00/rels/m461Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m461Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m461Dll/symbols.txt b/config/GMPJ01_00/rels/m461Dll/symbols.txt new file mode 100644 index 00000000..02cf6c76 --- /dev/null +++ b/config/GMPJ01_00/rels/m461Dll/symbols.txt @@ -0,0 +1,224 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x24 +fn_1_24 = .text:0x00000024; // type:function size:0x88 +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 +fn_1_150 = .text:0x00000150; // type:function size:0x24 +fn_1_174 = .text:0x00000174; // type:function size:0x164 +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C +fn_1_414 = .text:0x00000414; // type:function size:0x58 +fn_1_46C = .text:0x0000046C; // type:function size:0x114 +fn_1_580 = .text:0x00000580; // type:function size:0x218 +fn_1_798 = .text:0x00000798; // type:function size:0x254 +fn_1_9EC = .text:0x000009EC; // type:function size:0x54 +fn_1_A40 = .text:0x00000A40; // type:function size:0x10C +fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 +fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C +fn_1_1350 = .text:0x00001350; // type:function size:0x8C +fn_1_13DC = .text:0x000013DC; // type:function size:0x334 +fn_1_1710 = .text:0x00001710; // type:function size:0x350 +fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 +fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 +fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 +fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 +fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C +fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 +fn_1_23B4 = .text:0x000023B4; // type:function size:0x64 +fn_1_2418 = .text:0x00002418; // type:function size:0xE0 +fn_1_24F8 = .text:0x000024F8; // type:function size:0x32C +fn_1_2824 = .text:0x00002824; // type:function size:0x3AC +fn_1_2BD0 = .text:0x00002BD0; // type:function size:0x30 +fn_1_2C00 = .text:0x00002C00; // type:function size:0x1C +fn_1_2C1C = .text:0x00002C1C; // type:function size:0x18C +fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x8 +fn_1_2DB0 = .text:0x00002DB0; // type:function size:0x8 +fn_1_2DB8 = .text:0x00002DB8; // type:function size:0x8 +fn_1_2DC0 = .text:0x00002DC0; // type:function size:0x8 +fn_1_2DC8 = .text:0x00002DC8; // type:function size:0xC +fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x60 +fn_1_2E34 = .text:0x00002E34; // type:function size:0xB90 +fn_1_39C4 = .text:0x000039C4; // type:function size:0x2B0 +fn_1_3C74 = .text:0x00003C74; // type:function size:0xD8 +fn_1_3D4C = .text:0x00003D4C; // type:function size:0x114 +fn_1_3E60 = .text:0x00003E60; // type:function size:0xB8 +fn_1_3F18 = .text:0x00003F18; // type:function size:0xA0 +fn_1_3FB8 = .text:0x00003FB8; // type:function size:0x9C +fn_1_4054 = .text:0x00004054; // type:function size:0xDC8 +fn_1_4E1C = .text:0x00004E1C; // type:function size:0x250 +fn_1_506C = .text:0x0000506C; // type:function size:0x10 +fn_1_507C = .text:0x0000507C; // type:function size:0x10 +_prolog = .text:0x0000508C; // type:function size:0x54 scope:global +_epilog = .text:0x000050E0; // type:function size:0x4C scope:global +fn_1_512C = .text:0x0000512C; // type:function size:0x30C +fn_1_5438 = .text:0x00005438; // type:function size:0xF0 +fn_1_5528 = .text:0x00005528; // type:function size:0x36C +fn_1_5894 = .text:0x00005894; // type:function size:0x1E8 +fn_1_5A7C = .text:0x00005A7C; // type:function size:0x178 +fn_1_5BF4 = .text:0x00005BF4; // type:function size:0xE0C +fn_1_6A00 = .text:0x00006A00; // type:function size:0x928 +fn_1_7328 = .text:0x00007328; // type:function size:0x288 +fn_1_75B0 = .text:0x000075B0; // type:function size:0x11C +fn_1_76CC = .text:0x000076CC; // type:function size:0x40C +fn_1_7AD8 = .text:0x00007AD8; // type:function size:0x1230 +fn_1_8D08 = .text:0x00008D08; // type:function size:0x45C +fn_1_9164 = .text:0x00009164; // type:function size:0x408 +fn_1_956C = .text:0x0000956C; // type:function size:0x1B8 +fn_1_9724 = .text:0x00009724; // type:function size:0x130 +fn_1_9854 = .text:0x00009854; // type:function size:0x458 +fn_1_9CAC = .text:0x00009CAC; // type:function size:0x248 +fn_1_9EF4 = .text:0x00009EF4; // type:function size:0xEE8 +fn_1_ADDC = .text:0x0000ADDC; // type:function size:0x458 +fn_1_B234 = .text:0x0000B234; // type:function size:0x7F8 +fn_1_BA2C = .text:0x0000BA2C; // type:function size:0xF44 +fn_1_C970 = .text:0x0000C970; // type:function size:0x240 +fn_1_CBB0 = .text:0x0000CBB0; // type:function size:0xB5C +fn_1_D70C = .text:0x0000D70C; // type:function size:0xD0 +_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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_data_0 = .data:0x00000000; // type:object size:0x10 +lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 +lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC data:4byte +lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0xC data:4byte +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0xC data:4byte +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0xC +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xC data:4byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0xC +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0xC +lbl_1_data_100 = .data:0x00000100; // type:object size:0x4 +lbl_1_data_104 = .data:0x00000104; // type:object size:0xC +lbl_1_data_110 = .data:0x00000110; // type:object size:0xC +lbl_1_data_11C = .data:0x0000011C; // type:object size:0xC +lbl_1_data_128 = .data:0x00000128; // type:object size:0xA0 +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0xC +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x10 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xC +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x50 data:float +lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 +lbl_1_data_264 = .data:0x00000264; // type:object size:0xC data:4byte +lbl_1_data_270 = .data:0x00000270; // type:object size:0x80 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x30 +lbl_1_data_320 = .data:0x00000320; // type:object size:0x23 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0x9 data:string +lbl_1_data_34C = .data:0x0000034C; // type:object size:0x6 data:string +lbl_1_data_352 = .data:0x00000352; // type:object size:0x1D data:string +lbl_1_data_36F = .data:0x0000036F; // type:object size:0x1D data:string +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x1C +jumptable_1_data_3A8 = .data:0x000003A8; // type:object size:0x20 scope:local +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x10 +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x50 +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x100 +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x40 data:4byte +lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x4 data:float +lbl_1_bss_1F0 = .bss:0x000001F0; // type:object size:0x4 data:4byte +lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x4 data:4byte +lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0x2 data:2byte +lbl_1_bss_1FA = .bss:0x000001FA; // type:object size:0x2 data:2byte +lbl_1_bss_1FC = .bss:0x000001FC; // type:object size:0x4 data:4byte +lbl_1_bss_200 = .bss:0x00000200; // type:object size:0x4 data:4byte +lbl_1_bss_204 = .bss:0x00000204; // type:object size:0x4 data:4byte +lbl_1_bss_208 = .bss:0x00000208; // type:object size:0xC data:4byte +lbl_1_bss_214 = .bss:0x00000214; // type:object size:0xC data:4byte +lbl_1_bss_220 = .bss:0x00000220; // type:object size:0xC data:4byte +lbl_1_bss_22C = .bss:0x0000022C; // type:object size:0xC data:4byte +lbl_1_bss_238 = .bss:0x00000238; // type:object size:0x4 data:4byte +lbl_1_bss_23C = .bss:0x0000023C; // type:object size:0x18 data:4byte +lbl_1_bss_254 = .bss:0x00000254; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m462Dll/splits.txt b/config/GMPJ01_00/rels/m462Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m462Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m462Dll/symbols.txt b/config/GMPJ01_00/rels/m462Dll/symbols.txt new file mode 100644 index 00000000..619006c8 --- /dev/null +++ b/config/GMPJ01_00/rels/m462Dll/symbols.txt @@ -0,0 +1,144 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x400 +fn_1_4A0 = .text:0x000004A0; // type:function size:0x1014 +fn_1_14B4 = .text:0x000014B4; // type:function size:0x80 +fn_1_1534 = .text:0x00001534; // type:function size:0x80 +fn_1_15B4 = .text:0x000015B4; // type:function size:0x80 +fn_1_1634 = .text:0x00001634; // type:function size:0xC4 +fn_1_16F8 = .text:0x000016F8; // type:function size:0x54 +fn_1_174C = .text:0x0000174C; // type:function size:0x54 +fn_1_17A0 = .text:0x000017A0; // type:function size:0xE0 +fn_1_1880 = .text:0x00001880; // type:function size:0x354 +fn_1_1BD4 = .text:0x00001BD4; // type:function size:0x23C +fn_1_1E10 = .text:0x00001E10; // type:function size:0x11CC +fn_1_2FDC = .text:0x00002FDC; // type:function size:0x14FC +fn_1_44D8 = .text:0x000044D8; // type:function size:0x16C +fn_1_4644 = .text:0x00004644; // type:function size:0x580 +fn_1_4BC4 = .text:0x00004BC4; // type:function size:0x898 +fn_1_545C = .text:0x0000545C; // type:function size:0x4F0 +fn_1_594C = .text:0x0000594C; // type:function size:0x498 +fn_1_5DE4 = .text:0x00005DE4; // type:function size:0x498 +fn_1_627C = .text:0x0000627C; // type:function size:0x74 +fn_1_62F0 = .text:0x000062F0; // type:function size:0x7C +fn_1_636C = .text:0x0000636C; // type:function size:0x48 +fn_1_63B4 = .text:0x000063B4; // type:function size:0x48 +fn_1_63FC = .text:0x000063FC; // type:function size:0x1D4 +fn_1_65D0 = .text:0x000065D0; // type:function size:0x220 +fn_1_67F0 = .text:0x000067F0; // type:function size:0x104 +fn_1_68F4 = .text:0x000068F4; // type:function size:0x70 +fn_1_6964 = .text:0x00006964; // type:function size:0x5C +fn_1_69C0 = .text:0x000069C0; // type:function size:0x137C +fn_1_7D3C = .text:0x00007D3C; // type:function size:0x4 +fn_1_7D40 = .text:0x00007D40; // type:function size:0x60 +fn_1_7DA0 = .text:0x00007DA0; // type:function size:0x3BC +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 +lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x60 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x30 data:float +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x3C +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x14 data:float +lbl_1_data_110 = .data:0x00000110; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0xC data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x48 data:float +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2D0 +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x98 data:float +lbl_1_bss_3D8 = .bss:0x000003D8; // type:object size:0x4 data:4byte +lbl_1_bss_3DC = .bss:0x000003DC; // type:object size:0x4 data:4byte +lbl_1_bss_3E0 = .bss:0x000003E0; // type:object size:0x4 data:4byte +lbl_1_bss_3E4 = .bss:0x000003E4; // type:object size:0x4 data:4byte +lbl_1_bss_3E8 = .bss:0x000003E8; // type:object size:0x2 data:2byte +lbl_1_bss_3EA = .bss:0x000003EA; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m463Dll/splits.txt b/config/GMPJ01_00/rels/m463Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/m463Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m463Dll/symbols.txt b/config/GMPJ01_00/rels/m463Dll/symbols.txt new file mode 100644 index 00000000..87b16e8f --- /dev/null +++ b/config/GMPJ01_00/rels/m463Dll/symbols.txt @@ -0,0 +1,164 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x428 +fn_1_4C8 = .text:0x000004C8; // type:function size:0x2D9C +fn_1_3264 = .text:0x00003264; // type:function size:0x1210 +fn_1_4474 = .text:0x00004474; // type:function size:0x184 +fn_1_45F8 = .text:0x000045F8; // type:function size:0xDA8 +fn_1_53A0 = .text:0x000053A0; // type:function size:0x4B0 +fn_1_5850 = .text:0x00005850; // type:function size:0x854 +fn_1_60A4 = .text:0x000060A4; // type:function size:0x98 +fn_1_613C = .text:0x0000613C; // type:function size:0x460 +fn_1_659C = .text:0x0000659C; // type:function size:0x11C +_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:0x8 data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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:0x8 data:double +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +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:4byte +lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x94 +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:4byte +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x50 +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x70 +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x24 data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x24 data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x10 data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0xC data:4byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0xC data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x1 data:byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x24 +lbl_1_data_24 = .data:0x00000024; // type:object size:0x24 +lbl_1_data_48 = .data:0x00000048; // type:object size:0x24 +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_90 = .data:0x00000090; // type:object size:0x24 +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x9 +lbl_1_data_BD = .data:0x000000BD; // type:object size:0xB +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x24 +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x24 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x24 +lbl_1_data_134 = .data:0x00000134; // type:object size:0x18 data:float +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x2 data:2byte +lbl_1_data_14E = .data:0x0000014E; // type:object size:0x2 data:2byte +lbl_1_data_150 = .data:0x00000150; // type:object size:0x4 data:4byte +lbl_1_data_154 = .data:0x00000154; // type:object size:0x24 data:4byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x9 data:string +lbl_1_data_181 = .data:0x00000181; // type:object size:0x3 data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 data:4byte +jumptable_1_data_188 = .data:0x00000188; // type:object size:0x1C scope:local +lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x10 +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x4 data:4byte +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x4 data:float +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x4 data:float +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x4 data:float +jumptable_1_data_1C4 = .data:0x000001C4; // type:object size:0x20 scope:local +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x2C +lbl_1_data_210 = .data:0x00000210; // type:object size:0x19 data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x8 data:2byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x2D0 +lbl_1_bss_32C = .bss:0x0000032C; // type:object size:0x4 data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0x24 data:4byte +lbl_1_bss_354 = .bss:0x00000354; // type:object size:0x4 data:4byte +lbl_1_bss_358 = .bss:0x00000358; // type:object size:0x4 data:4byte +lbl_1_bss_35C = .bss:0x0000035C; // type:object size:0x1C0 data:4byte +lbl_1_bss_51C = .bss:0x0000051C; // type:object size:0x90 diff --git a/config/GMPJ01_00/rels/mentDll/splits.txt b/config/GMPJ01_00/rels/mentDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/mentDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mentDll/symbols.txt b/config/GMPJ01_00/rels/mentDll/symbols.txt new file mode 100644 index 00000000..1be34e66 --- /dev/null +++ b/config/GMPJ01_00/rels/mentDll/symbols.txt @@ -0,0 +1,442 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +_prolog = .text:0x000000A4; // type:function size:0x54 scope:global +_epilog = .text:0x000000F8; // type:function size:0x4C scope:global +fn_1_144 = .text:0x00000144; // type:function size:0xC8 +fn_1_20C = .text:0x0000020C; // type:function size:0x28 +fn_1_234 = .text:0x00000234; // type:function size:0x20 +fn_1_254 = .text:0x00000254; // type:function size:0xD8 +fn_1_32C = .text:0x0000032C; // type:function size:0xC8 +fn_1_3F4 = .text:0x000003F4; // type:function size:0xBC +fn_1_4B0 = .text:0x000004B0; // type:function size:0x28 +fn_1_4D8 = .text:0x000004D8; // type:function size:0x20 +fn_1_4F8 = .text:0x000004F8; // type:function size:0x14 +fn_1_50C = .text:0x0000050C; // type:function size:0xDC +fn_1_5E8 = .text:0x000005E8; // type:function size:0xE8 +fn_1_6D0 = .text:0x000006D0; // type:function size:0x24 +fn_1_6F4 = .text:0x000006F4; // type:function size:0xA48 +fn_1_113C = .text:0x0000113C; // type:function size:0x2F8 +fn_1_1434 = .text:0x00001434; // type:function size:0x218 +fn_1_164C = .text:0x0000164C; // type:function size:0x60 +fn_1_16AC = .text:0x000016AC; // type:function size:0x68 +fn_1_1714 = .text:0x00001714; // type:function size:0x90 +fn_1_17A4 = .text:0x000017A4; // type:function size:0x134 +fn_1_18D8 = .text:0x000018D8; // type:function size:0x50 +fn_1_1928 = .text:0x00001928; // type:function size:0x40 +fn_1_1968 = .text:0x00001968; // type:function size:0xF4 +fn_1_1A5C = .text:0x00001A5C; // type:function size:0x37C +fn_1_1DD8 = .text:0x00001DD8; // type:function size:0x37C +fn_1_2154 = .text:0x00002154; // type:function size:0x1C4 +fn_1_2318 = .text:0x00002318; // type:function size:0x54 +fn_1_236C = .text:0x0000236C; // type:function size:0x3E4 +fn_1_2750 = .text:0x00002750; // type:function size:0xB8 +fn_1_2808 = .text:0x00002808; // type:function size:0x3C +fn_1_2844 = .text:0x00002844; // type:function size:0x120 +fn_1_2964 = .text:0x00002964; // type:function size:0x3C +fn_1_29A0 = .text:0x000029A0; // type:function size:0x44 +fn_1_29E4 = .text:0x000029E4; // type:function size:0x26C +fn_1_2C50 = .text:0x00002C50; // type:function size:0x26C +fn_1_2EBC = .text:0x00002EBC; // type:function size:0x27C +fn_1_3138 = .text:0x00003138; // type:function size:0x2B4 +fn_1_33EC = .text:0x000033EC; // type:function size:0x46C +fn_1_3858 = .text:0x00003858; // type:function size:0x454 +fn_1_3CAC = .text:0x00003CAC; // type:function size:0x48C +fn_1_4138 = .text:0x00004138; // type:function size:0x658 +fn_1_4790 = .text:0x00004790; // type:function size:0x4C4 +fn_1_4C54 = .text:0x00004C54; // type:function size:0x4FC +fn_1_5150 = .text:0x00005150; // type:function size:0x6C8 +fn_1_5818 = .text:0x00005818; // type:function size:0x188 +fn_1_59A0 = .text:0x000059A0; // type:function size:0x1B0 +fn_1_5B50 = .text:0x00005B50; // type:function size:0xB8 +fn_1_5C08 = .text:0x00005C08; // type:function size:0xD4 +fn_1_5CDC = .text:0x00005CDC; // type:function size:0x5C +fn_1_5D38 = .text:0x00005D38; // type:function size:0x7FC +fn_1_6534 = .text:0x00006534; // type:function size:0x58 +fn_1_658C = .text:0x0000658C; // type:function size:0x6C0 +fn_1_6C4C = .text:0x00006C4C; // type:function size:0x4D8 +fn_1_7124 = .text:0x00007124; // type:function size:0xF4 +fn_1_7218 = .text:0x00007218; // type:function size:0xEC +fn_1_7304 = .text:0x00007304; // type:function size:0x380 +fn_1_7684 = .text:0x00007684; // type:function size:0x13C +fn_1_77C0 = .text:0x000077C0; // type:function size:0x98 +fn_1_7858 = .text:0x00007858; // type:function size:0xA8 +fn_1_7900 = .text:0x00007900; // type:function size:0x114 +fn_1_7A14 = .text:0x00007A14; // type:function size:0x794 +fn_1_81A8 = .text:0x000081A8; // type:function size:0x30 +fn_1_81D8 = .text:0x000081D8; // type:function size:0x18 +fn_1_81F0 = .text:0x000081F0; // type:function size:0x5C +fn_1_824C = .text:0x0000824C; // type:function size:0x180 +fn_1_83CC = .text:0x000083CC; // type:function size:0x1FC +fn_1_85C8 = .text:0x000085C8; // type:function size:0x2DC +fn_1_88A4 = .text:0x000088A4; // type:function size:0x29C +fn_1_8B40 = .text:0x00008B40; // type:function size:0x28 +fn_1_8B68 = .text:0x00008B68; // type:function size:0x3DC +fn_1_8F44 = .text:0x00008F44; // type:function size:0x54 +fn_1_8F98 = .text:0x00008F98; // type:function size:0x20 +fn_1_8FB8 = .text:0x00008FB8; // type:function size:0x314 +fn_1_92CC = .text:0x000092CC; // type:function size:0x618 +fn_1_98E4 = .text:0x000098E4; // type:function size:0xC8 +fn_1_99AC = .text:0x000099AC; // type:function size:0x20 +fn_1_99CC = .text:0x000099CC; // type:function size:0x6D8 +fn_1_A0A4 = .text:0x0000A0A4; // type:function size:0x20 +fn_1_A0C4 = .text:0x0000A0C4; // type:function size:0x2D8 +fn_1_A39C = .text:0x0000A39C; // type:function size:0x20 +fn_1_A3BC = .text:0x0000A3BC; // type:function size:0x5D4 +fn_1_A990 = .text:0x0000A990; // type:function size:0x20 +fn_1_A9B0 = .text:0x0000A9B0; // type:function size:0x3C8 +fn_1_AD78 = .text:0x0000AD78; // type:function size:0x30C +fn_1_B084 = .text:0x0000B084; // type:function size:0x5D0 +fn_1_B654 = .text:0x0000B654; // type:function size:0xB20 +fn_1_C174 = .text:0x0000C174; // type:function size:0x1E0 +fn_1_C354 = .text:0x0000C354; // type:function size:0xEC +fn_1_C440 = .text:0x0000C440; // type:function size:0x78 +fn_1_C4B8 = .text:0x0000C4B8; // type:function size:0x62C +fn_1_CAE4 = .text:0x0000CAE4; // type:function size:0x288 +fn_1_CD6C = .text:0x0000CD6C; // type:function size:0x20 +fn_1_CD8C = .text:0x0000CD8C; // type:function size:0x200 +fn_1_CF8C = .text:0x0000CF8C; // type:function size:0x384 +fn_1_D310 = .text:0x0000D310; // type:function size:0x20 +fn_1_D330 = .text:0x0000D330; // type:function size:0x20 +fn_1_D350 = .text:0x0000D350; // type:function size:0x2E4 +fn_1_D634 = .text:0x0000D634; // type:function size:0x82C +fn_1_DE60 = .text:0x0000DE60; // type:function size:0x17C +fn_1_DFDC = .text:0x0000DFDC; // type:function size:0x268 +fn_1_E244 = .text:0x0000E244; // type:function size:0x70 +fn_1_E2B4 = .text:0x0000E2B4; // type:function size:0x148 +fn_1_E3FC = .text:0x0000E3FC; // type:function size:0x90 +fn_1_E48C = .text:0x0000E48C; // type:function size:0x1C8 +fn_1_E654 = .text:0x0000E654; // type:function size:0xC8 +fn_1_E71C = .text:0x0000E71C; // type:function size:0x158 +fn_1_E874 = .text:0x0000E874; // type:function size:0xFC8 +fn_1_F83C = .text:0x0000F83C; // type:function size:0x670 +fn_1_FEAC = .text:0x0000FEAC; // type:function size:0x388 +fn_1_10234 = .text:0x00010234; // type:function size:0x308 +fn_1_1053C = .text:0x0001053C; // type:function size:0x7C +fn_1_105B8 = .text:0x000105B8; // type:function size:0x39C +fn_1_10954 = .text:0x00010954; // type:function size:0x308 +fn_1_10C5C = .text:0x00010C5C; // type:function size:0x7C +fn_1_10CD8 = .text:0x00010CD8; // type:function size:0x39C +fn_1_11074 = .text:0x00011074; // type:function size:0x2F4 +fn_1_11368 = .text:0x00011368; // type:function size:0x138 +fn_1_114A0 = .text:0x000114A0; // type:function size:0x74 +fn_1_11514 = .text:0x00011514; // type:function size:0x1E0 +fn_1_116F4 = .text:0x000116F4; // type:function size:0x158 +fn_1_1184C = .text:0x0001184C; // type:function size:0xBC +fn_1_11908 = .text:0x00011908; // type:function size:0x1C8 +fn_1_11AD0 = .text:0x00011AD0; // type:function size:0x2D4 +fn_1_11DA4 = .text:0x00011DA4; // type:function size:0x434 +fn_1_121D8 = .text:0x000121D8; // type:function size:0x624 +fn_1_127FC = .text:0x000127FC; // type:function size:0x210 +fn_1_12A0C = .text:0x00012A0C; // type:function size:0x434 +fn_1_12E40 = .text:0x00012E40; // type:function size:0x508 +fn_1_13348 = .text:0x00013348; // type:function size:0x160 +fn_1_134A8 = .text:0x000134A8; // type:function size:0x1E4 +fn_1_1368C = .text:0x0001368C; // type:function size:0x64 +fn_1_136F0 = .text:0x000136F0; // type:function size:0xB4 +fn_1_137A4 = .text:0x000137A4; // type:function size:0x1CC +fn_1_13970 = .text:0x00013970; // type:function size:0x3F0 +fn_1_13D60 = .text:0x00013D60; // type:function size:0x8C +fn_1_13DEC = .text:0x00013DEC; // type:function size:0xF0 +fn_1_13EDC = .text:0x00013EDC; // type:function size:0x8C +fn_1_13F68 = .text:0x00013F68; // type:function size:0xF0 +fn_1_14058 = .text:0x00014058; // type:function size:0xF0 +fn_1_14148 = .text:0x00014148; // type:function size:0xF0 +fn_1_14238 = .text:0x00014238; // type:function size:0xF0 +fn_1_14328 = .text:0x00014328; // type:function size:0xF0 +fn_1_14418 = .text:0x00014418; // type:function size:0x2B8 +fn_1_146D0 = .text:0x000146D0; // type:function size:0xF0 +fn_1_147C0 = .text:0x000147C0; // type:function size:0xF0 +fn_1_148B0 = .text:0x000148B0; // type:function size:0xF0 +fn_1_149A0 = .text:0x000149A0; // type:function size:0x8C +fn_1_14A2C = .text:0x00014A2C; // type:function size:0x8C +fn_1_14AB8 = .text:0x00014AB8; // type:function size:0xF0 +fn_1_14BA8 = .text:0x00014BA8; // type:function size:0x138 +fn_1_14CE0 = .text:0x00014CE0; // type:function size:0x3B8 +fn_1_15098 = .text:0x00015098; // type:function size:0x120 +fn_1_151B8 = .text:0x000151B8; // type:function size:0x798 +fn_1_15950 = .text:0x00015950; // type:function size:0x364 +fn_1_15CB4 = .text:0x00015CB4; // type:function size:0x5EC +fn_1_162A0 = .text:0x000162A0; // type:function size:0x1EC +fn_1_1648C = .text:0x0001648C; // type:function size:0x6DC +fn_1_16B68 = .text:0x00016B68; // type:function size:0x894 +fn_1_173FC = .text:0x000173FC; // type:function size:0x518 +fn_1_17914 = .text:0x00017914; // type:function size:0xC8 +fn_1_179DC = .text:0x000179DC; // type:function size:0x2EC +fn_1_17CC8 = .text:0x00017CC8; // type:function size:0x454 +fn_1_1811C = .text:0x0001811C; // type:function size:0x3F0 +fn_1_1850C = .text:0x0001850C; // type:function size:0x220 +fn_1_1872C = .text:0x0001872C; // type:function size:0x5C +fn_1_18788 = .text:0x00018788; // type:function size:0x2CC +fn_1_18A54 = .text:0x00018A54; // type:function size:0x378 +fn_1_18DCC = .text:0x00018DCC; // type:function size:0x1A8 +fn_1_18F74 = .text:0x00018F74; // type:function size:0x174 +fn_1_190E8 = .text:0x000190E8; // type:function size:0xBB0 +fn_1_19C98 = .text:0x00019C98; // type:function size:0x1E94 +fn_1_1BB2C = .text:0x0001BB2C; // type:function size:0xA28 +fn_1_1C554 = .text:0x0001C554; // type:function size:0x120 +fn_1_1C674 = .text:0x0001C674; // type:function size:0xE0 +fn_1_1C754 = .text:0x0001C754; // type:function size:0x23C +fn_1_1C990 = .text:0x0001C990; // type:function size:0x238 +fn_1_1CBC8 = .text:0x0001CBC8; // type:function size:0x3A0 +fn_1_1CF68 = .text:0x0001CF68; // type:function size:0x594 +fn_1_1D4FC = .text:0x0001D4FC; // type:function size:0x9CC +fn_1_1DEC8 = .text:0x0001DEC8; // type:function size:0x70 +fn_1_1DF38 = .text:0x0001DF38; // type:function size:0x70 +fn_1_1DFA8 = .text:0x0001DFA8; // type:function size:0x1FC +fn_1_1E1A4 = .text:0x0001E1A4; // type:function size:0x250 +fn_1_1E3F4 = .text:0x0001E3F4; // type:function size:0x4A0 +fn_1_1E894 = .text:0x0001E894; // type:function size:0xD4C +fn_1_1F5E0 = .text:0x0001F5E0; // type:function size:0xC8 +fn_1_1F6A8 = .text:0x0001F6A8; // type:function size:0x1B0 +fn_1_1F858 = .text:0x0001F858; // type:function size:0x1CC +fn_1_1FA24 = .text:0x0001FA24; // type:function size:0x220 +fn_1_1FC44 = .text:0x0001FC44; // type:function size:0x1B4 +fn_1_1FDF8 = .text:0x0001FDF8; // type:function size:0x144 +fn_1_1FF3C = .text:0x0001FF3C; // type:function size:0x610 +fn_1_2054C = .text:0x0002054C; // type:function size:0x260 +fn_1_207AC = .text:0x000207AC; // type:function size:0x138 +fn_1_208E4 = .text:0x000208E4; // type:function size:0x130 +fn_1_20A14 = .text:0x00020A14; // type:function size:0x130 +fn_1_20B44 = .text:0x00020B44; // type:function size:0x5E0 +fn_1_21124 = .text:0x00021124; // type:function size:0x5F0 +fn_1_21714 = .text:0x00021714; // type:function size:0xED0 +fn_1_225E4 = .text:0x000225E4; // type:function size:0xE38 +fn_1_2341C = .text:0x0002341C; // type:function size:0x60C +_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_18 = .rodata:0x00000018; // type:object size:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0xC data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0xC data:4byte +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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:0x1 data:byte +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x1C data:4byte +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0xC data:4byte +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x10 data:4byte +lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x18 data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0xC data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0xC data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0xC data:4byte +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float +lbl_1_rodata_194 = .rodata:0x00000194; // type:object size:0x18 data:4byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0xC data:4byte +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0xC data:4byte +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0xC data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x1C data:4byte +lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x10 data:4byte +lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x18 data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0xC data:4byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0xC data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x1C data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0xC data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0xC data:4byte +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0xC data:4byte +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0xC data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC data:4byte +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x18 data:4byte +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x90 +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x18 data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x40 data:4byte +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x20 data:4byte +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x20 data:4byte +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0x4 data:4byte +lbl_1_data_74 = .data:0x00000074; // type:object size:0x22 data:string +lbl_1_data_96 = .data:0x00000096; // type:object size:0x1A data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x1A data:string +lbl_1_data_CA = .data:0x000000CA; // type:object size:0xE data:string +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x48 data:float +lbl_1_data_120 = .data:0x00000120; // type:object size:0x18 +jumptable_1_data_138 = .data:0x00000138; // type:object size:0x30 scope:local +lbl_1_data_168 = .data:0x00000168; // type:object size:0x16 data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x15 data:string +lbl_1_data_193 = .data:0x00000193; // type:object size:0x17 data:string +lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x16 data:string +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x17 data:string +lbl_1_data_1D7 = .data:0x000001D7; // type:object size:0x16 data:string +lbl_1_data_1ED = .data:0x000001ED; // type:object size:0x17 data:string +lbl_1_data_204 = .data:0x00000204; // type:object size:0x16 data:string +lbl_1_data_21A = .data:0x0000021A; // type:object size:0xF data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x1C data:string +lbl_1_data_245 = .data:0x00000245; // type:object size:0x1D data:string +lbl_1_data_262 = .data:0x00000262; // type:object size:0x14 data:string +lbl_1_data_276 = .data:0x00000276; // type:object size:0x15 data:string +lbl_1_data_28B = .data:0x0000028B; // type:object size:0x14 data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x15 +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3C +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x4 data:4byte +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 data:string +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 data:string +lbl_1_data_334 = .data:0x00000334; // type:object size:0x2A data:string +lbl_1_data_35E = .data:0x0000035E; // type:object size:0x3 data:string +lbl_1_data_361 = .data:0x00000361; // type:object size:0x1B data:string +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x1A data:string +lbl_1_data_396 = .data:0x00000396; // type:object size:0x29 data:string +lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x2A data:string +lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0x2A data:string +lbl_1_data_413 = .data:0x00000413; // type:object size:0x2B data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x29 data:string +lbl_1_data_467 = .data:0x00000467; // type:object size:0x2B data:string +lbl_1_data_492 = .data:0x00000492; // type:object size:0x20 data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x22 +jumptable_1_data_4D4 = .data:0x000004D4; // type:object size:0x54 scope:local +lbl_1_data_528 = .data:0x00000528; // type:object size:0x1B data:string +lbl_1_data_543 = .data:0x00000543; // type:object size:0x1A data:string +lbl_1_data_55D = .data:0x0000055D; // type:object size:0xF data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 data:string +lbl_1_data_57C = .data:0x0000057C; // type:object size:0x40 +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x20 +lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x64 data:float +lbl_1_data_640 = .data:0x00000640; // type:object size:0x50 data:4byte +lbl_1_data_690 = .data:0x00000690; // type:object size:0x40 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x14 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x10 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x40 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x44 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x20 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x15E0 +lbl_1_bss_16C4 = .bss:0x000016C4; // type:object size:0x1A40 +lbl_1_bss_3104 = .bss:0x00003104; // type:object size:0x4 data:4byte +lbl_1_bss_3108 = .bss:0x00003108; // type:object size:0xC data:4byte +lbl_1_bss_3114 = .bss:0x00003114; // type:object size:0x240 data:4byte +lbl_1_bss_3354 = .bss:0x00003354; // type:object size:0x58 data:4byte +lbl_1_bss_33AC = .bss:0x000033AC; // type:object size:0x210 data:4byte +lbl_1_bss_35BC = .bss:0x000035BC; // type:object size:0xB0 data:4byte +lbl_1_bss_366C = .bss:0x0000366C; // type:object size:0x58 data:4byte diff --git a/config/GMPJ01_00/rels/mgmodedll/splits.txt b/config/GMPJ01_00/rels/mgmodedll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/mgmodedll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mgmodedll/symbols.txt b/config/GMPJ01_00/rels/mgmodedll/symbols.txt new file mode 100644 index 00000000..506d2aa6 --- /dev/null +++ b/config/GMPJ01_00/rels/mgmodedll/symbols.txt @@ -0,0 +1,583 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x3C4 +fn_1_464 = .text:0x00000464; // type:function size:0x294 +fn_1_6F8 = .text:0x000006F8; // type:function size:0x6F8 +fn_1_DF0 = .text:0x00000DF0; // type:function size:0xD1C +fn_1_1B0C = .text:0x00001B0C; // type:function size:0x6B8 +fn_1_21C4 = .text:0x000021C4; // type:function size:0x77C +fn_1_2940 = .text:0x00002940; // type:function size:0x810 +fn_1_3150 = .text:0x00003150; // type:function size:0x788 +fn_1_38D8 = .text:0x000038D8; // type:function size:0x738 +fn_1_4010 = .text:0x00004010; // type:function size:0x86C +fn_1_487C = .text:0x0000487C; // type:function size:0x260 +fn_1_4ADC = .text:0x00004ADC; // type:function size:0x800 +fn_1_52DC = .text:0x000052DC; // type:function size:0x218 +fn_1_54F4 = .text:0x000054F4; // type:function size:0xCC +fn_1_55C0 = .text:0x000055C0; // type:function size:0x3B4 +fn_1_5974 = .text:0x00005974; // type:function size:0xC78 +fn_1_65EC = .text:0x000065EC; // type:function size:0xC4 +fn_1_66B0 = .text:0x000066B0; // type:function size:0x2C4 +fn_1_6974 = .text:0x00006974; // type:function size:0x90 +fn_1_6A04 = .text:0x00006A04; // type:function size:0xEC +fn_1_6AF0 = .text:0x00006AF0; // type:function size:0x128 +fn_1_6C18 = .text:0x00006C18; // type:function size:0x110 +fn_1_6D28 = .text:0x00006D28; // type:function size:0x311C +fn_1_9E44 = .text:0x00009E44; // type:function size:0x120 +fn_1_9F64 = .text:0x00009F64; // type:function size:0x400 +fn_1_A364 = .text:0x0000A364; // type:function size:0x2C0 +fn_1_A624 = .text:0x0000A624; // type:function size:0x84 +fn_1_A6A8 = .text:0x0000A6A8; // type:function size:0x604 +fn_1_ACAC = .text:0x0000ACAC; // type:function size:0xF4 +fn_1_ADA0 = .text:0x0000ADA0; // type:function size:0x80 +fn_1_AE20 = .text:0x0000AE20; // type:function size:0xB0 +fn_1_AED0 = .text:0x0000AED0; // type:function size:0x6D8 +fn_1_B5A8 = .text:0x0000B5A8; // type:function size:0x1C8 +fn_1_B770 = .text:0x0000B770; // type:function size:0x248 +fn_1_B9B8 = .text:0x0000B9B8; // type:function size:0x16C +fn_1_BB24 = .text:0x0000BB24; // type:function size:0x47C +fn_1_BFA0 = .text:0x0000BFA0; // type:function size:0x128 +fn_1_C0C8 = .text:0x0000C0C8; // type:function size:0x1808 +fn_1_D8D0 = .text:0x0000D8D0; // type:function size:0x56C +fn_1_DE3C = .text:0x0000DE3C; // type:function size:0x17C +fn_1_DFB8 = .text:0x0000DFB8; // type:function size:0x74 +fn_1_E02C = .text:0x0000E02C; // type:function size:0x700 +fn_1_E72C = .text:0x0000E72C; // type:function size:0x1830 +fn_1_FF5C = .text:0x0000FF5C; // type:function size:0x608 +fn_1_10564 = .text:0x00010564; // type:function size:0xD38 +fn_1_1129C = .text:0x0001129C; // type:function size:0xBCC +fn_1_11E68 = .text:0x00011E68; // type:function size:0x3C4 +fn_1_1222C = .text:0x0001222C; // type:function size:0x938 +fn_1_12B64 = .text:0x00012B64; // type:function size:0x88 +fn_1_12BEC = .text:0x00012BEC; // type:function size:0x82C +fn_1_13418 = .text:0x00013418; // type:function size:0x18E4 +fn_1_14CFC = .text:0x00014CFC; // type:function size:0x119C +fn_1_15E98 = .text:0x00015E98; // type:function size:0x5A0 +fn_1_16438 = .text:0x00016438; // type:function size:0x6F8 +fn_1_16B30 = .text:0x00016B30; // type:function size:0xF2C +fn_1_17A5C = .text:0x00017A5C; // type:function size:0x184 +fn_1_17BE0 = .text:0x00017BE0; // type:function size:0x1218 +fn_1_18DF8 = .text:0x00018DF8; // type:function size:0x220 +fn_1_19018 = .text:0x00019018; // type:function size:0x4B0 +fn_1_194C8 = .text:0x000194C8; // type:function size:0x568 +fn_1_19A30 = .text:0x00019A30; // type:function size:0x15C +fn_1_19B8C = .text:0x00019B8C; // type:function size:0x174 +fn_1_19D00 = .text:0x00019D00; // type:function size:0x194 +fn_1_19E94 = .text:0x00019E94; // type:function size:0xC8 +fn_1_19F5C = .text:0x00019F5C; // type:function size:0x608 +fn_1_1A564 = .text:0x0001A564; // type:function size:0x13C +fn_1_1A6A0 = .text:0x0001A6A0; // type:function size:0x248 +fn_1_1A8E8 = .text:0x0001A8E8; // type:function size:0x140 +fn_1_1AA28 = .text:0x0001AA28; // type:function size:0x130 +fn_1_1AB58 = .text:0x0001AB58; // type:function size:0x130 +fn_1_1AC88 = .text:0x0001AC88; // type:function size:0x5D8 +fn_1_1B260 = .text:0x0001B260; // type:function size:0xA8C +fn_1_1BCEC = .text:0x0001BCEC; // type:function size:0x1E0 +fn_1_1BECC = .text:0x0001BECC; // type:function size:0x1D0 +fn_1_1C09C = .text:0x0001C09C; // type:function size:0xAB0 +fn_1_1CB4C = .text:0x0001CB4C; // type:function size:0x364 +fn_1_1CEB0 = .text:0x0001CEB0; // type:function size:0x5EC +fn_1_1D49C = .text:0x0001D49C; // type:function size:0x1EC +fn_1_1D688 = .text:0x0001D688; // type:function size:0x6EC +fn_1_1DD74 = .text:0x0001DD74; // type:function size:0x894 +fn_1_1E608 = .text:0x0001E608; // type:function size:0x518 +fn_1_1EB20 = .text:0x0001EB20; // type:function size:0xC8 +fn_1_1EBE8 = .text:0x0001EBE8; // type:function size:0x138 +fn_1_1ED20 = .text:0x0001ED20; // type:function size:0x138 +fn_1_1EE58 = .text:0x0001EE58; // type:function size:0x4D4 +fn_1_1F32C = .text:0x0001F32C; // type:function size:0x790 +fn_1_1FABC = .text:0x0001FABC; // type:function size:0x188 +fn_1_1FC44 = .text:0x0001FC44; // type:function size:0xAE4 +fn_1_20728 = .text:0x00020728; // type:function size:0x248 +fn_1_20970 = .text:0x00020970; // type:function size:0x514 +fn_1_20E84 = .text:0x00020E84; // type:function size:0x150 +fn_1_20FD4 = .text:0x00020FD4; // type:function size:0x1E0 +fn_1_211B4 = .text:0x000211B4; // type:function size:0x2F0 +fn_1_214A4 = .text:0x000214A4; // type:function size:0x800 +fn_1_21CA4 = .text:0x00021CA4; // type:function size:0x5E8 +fn_1_2228C = .text:0x0002228C; // type:function size:0x49C +fn_1_22728 = .text:0x00022728; // type:function size:0x4E0 +fn_1_22C08 = .text:0x00022C08; // type:function size:0x5E8 +fn_1_231F0 = .text:0x000231F0; // type:function size:0xEF4 +fn_1_240E4 = .text:0x000240E4; // type:function size:0x28 +fn_1_2410C = .text:0x0002410C; // type:function size:0x20 +fn_1_2412C = .text:0x0002412C; // type:function size:0xD8 +fn_1_24204 = .text:0x00024204; // type:function size:0xC8 +fn_1_242CC = .text:0x000242CC; // type:function size:0xBC +fn_1_24388 = .text:0x00024388; // type:function size:0x28 +fn_1_243B0 = .text:0x000243B0; // type:function size:0x20 +fn_1_243D0 = .text:0x000243D0; // type:function size:0x14 +fn_1_243E4 = .text:0x000243E4; // type:function size:0xDC +fn_1_244C0 = .text:0x000244C0; // type:function size:0xE8 +fn_1_245A8 = .text:0x000245A8; // type:function size:0x24 +fn_1_245CC = .text:0x000245CC; // type:function size:0xA48 +fn_1_25014 = .text:0x00025014; // type:function size:0x2F8 +fn_1_2530C = .text:0x0002530C; // type:function size:0x218 +fn_1_25524 = .text:0x00025524; // type:function size:0x60 +fn_1_25584 = .text:0x00025584; // type:function size:0x68 +fn_1_255EC = .text:0x000255EC; // type:function size:0x90 +fn_1_2567C = .text:0x0002567C; // type:function size:0x134 +fn_1_257B0 = .text:0x000257B0; // type:function size:0x48 +fn_1_257F8 = .text:0x000257F8; // type:function size:0x40 +fn_1_25838 = .text:0x00025838; // type:function size:0xF4 +fn_1_2592C = .text:0x0002592C; // type:function size:0x37C +fn_1_25CA8 = .text:0x00025CA8; // type:function size:0x1CC +fn_1_25E74 = .text:0x00025E74; // type:function size:0x54 +fn_1_25EC8 = .text:0x00025EC8; // type:function size:0x13C +fn_1_26004 = .text:0x00026004; // type:function size:0x78C +fn_1_26790 = .text:0x00026790; // type:function size:0x58 +fn_1_267E8 = .text:0x000267E8; // type:function size:0x290 +fn_1_26A78 = .text:0x00026A78; // type:function size:0x138 +fn_1_26BB0 = .text:0x00026BB0; // type:function size:0x78 +fn_1_26C28 = .text:0x00026C28; // type:function size:0x2C +fn_1_26C54 = .text:0x00026C54; // type:function size:0x42C +fn_1_27080 = .text:0x00027080; // type:function size:0x134 +fn_1_271B4 = .text:0x000271B4; // type:function size:0x264 +fn_1_27418 = .text:0x00027418; // type:function size:0x424 +fn_1_2783C = .text:0x0002783C; // type:function size:0x1C0 +fn_1_279FC = .text:0x000279FC; // type:function size:0x210 +fn_1_27C0C = .text:0x00027C0C; // type:function size:0xE4 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0xC data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0xC data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0xC data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double +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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0xC data:4byte +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float +lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x8 data:double +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float +lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0xC data:4byte +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0xC data:4byte +lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0xC data:4byte +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x4 data:float +lbl_1_rodata_6F4 = .rodata:0x000006F4; // type:object size:0x4 data:float +lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float +lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0x4 data:float +lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x4 data:float +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 data:double +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float +lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float +lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x8 data:double +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 data:double +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x8 data:double +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 data:float +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x8 data:double +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x8 data:double +lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x4 data:float +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x8 data:double +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x4 data:float +lbl_1_rodata_78C = .rodata:0x0000078C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1C +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x24 +lbl_1_data_40 = .data:0x00000040; // type:object size:0x30 data:4byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0x16 data:string +lbl_1_data_86 = .data:0x00000086; // type:object size:0x6 +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x4 +lbl_1_data_90 = .data:0x00000090; // type:object size:0xA data:string +lbl_1_data_9A = .data:0x0000009A; // type:object size:0x6 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x2 data:2byte +lbl_1_data_A2 = .data:0x000000A2; // type:object size:0xE +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x6 +lbl_1_data_D6 = .data:0x000000D6; // type:object size:0xA +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x10 +lbl_1_data_120 = .data:0x00000120; // type:object size:0x28 +lbl_1_data_148 = .data:0x00000148; // type:object size:0x2 data:2byte +lbl_1_data_14A = .data:0x0000014A; // type:object size:0x8 +lbl_1_data_152 = .data:0x00000152; // type:object size:0x16 +lbl_1_data_168 = .data:0x00000168; // type:object size:0x2 data:2byte +lbl_1_data_16A = .data:0x0000016A; // type:object size:0x32 +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x10 +lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x10 +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0xA data:string +lbl_1_data_1C6 = .data:0x000001C6; // type:object size:0xE data:string +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x10 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 data:string +lbl_1_data_208 = .data:0x00000208; // type:object size:0x26 data:string +lbl_1_data_22E = .data:0x0000022E; // type:object size:0x27 data:string +lbl_1_data_255 = .data:0x00000255; // type:object size:0x1C data:string +lbl_1_data_271 = .data:0x00000271; // type:object size:0x1B data:string +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x1C data:string +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x1D data:string +lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0xC data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x1A data:string +lbl_1_data_2EB = .data:0x000002EB; // type:object size:0x1A data:string +lbl_1_data_305 = .data:0x00000305; // type:object size:0x27 +lbl_1_data_32C = .data:0x0000032C; // type:object size:0x40 data:4byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x60 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x18 data:4byte +lbl_1_data_3E4 = .data:0x000003E4; // type:object size:0x64 +lbl_1_data_448 = .data:0x00000448; // type:object size:0x40 +lbl_1_data_488 = .data:0x00000488; // type:object size:0x8 data:4byte +lbl_1_data_490 = .data:0x00000490; // type:object size:0x2D8 +lbl_1_data_768 = .data:0x00000768; // type:object size:0x258 +lbl_1_data_9C0 = .data:0x000009C0; // type:object size:0x20 +lbl_1_data_9E0 = .data:0x000009E0; // type:object size:0x20 +lbl_1_data_A00 = .data:0x00000A00; // type:object size:0x2 data:2byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x264 data:4byte +lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x8 data:float +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x18 data:4byte +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x18 data:4byte +lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x2 data:2byte +lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0xA data:2byte +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:float +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xC data:4byte +lbl_1_bss_2C0 = .bss:0x000002C0; // type:object size:0xC data:4byte +lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x2 data:2byte +lbl_1_bss_2CE = .bss:0x000002CE; // type:object size:0x2 data:2byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x8 data:4byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x4 data:4byte +lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x6 +lbl_1_bss_2E2 = .bss:0x000002E2; // type:object size:0x2 data:2byte +lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0x2 data:2byte +lbl_1_bss_2E6 = .bss:0x000002E6; // type:object size:0x2 data:2byte +lbl_1_bss_2E8 = .bss:0x000002E8; // type:object size:0x4 data:float +lbl_1_bss_2EC = .bss:0x000002EC; // type:object size:0x2 data:2byte +lbl_1_bss_2EE = .bss:0x000002EE; // type:object size:0x2 data:2byte +lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x2 data:2byte +lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x18 +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0x2 data:2byte +lbl_1_bss_30E = .bss:0x0000030E; // type:object size:0x8 +lbl_1_bss_316 = .bss:0x00000316; // type:object size:0x2 data:2byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x28 data:2byte +lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x8 +lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte +lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x8 data:2byte +lbl_1_bss_352 = .bss:0x00000352; // type:object size:0x1E +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC +lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC +lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte +lbl_1_bss_38A = .bss:0x0000038A; // type:object size:0x2 data:2byte +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x8 +lbl_1_bss_394 = .bss:0x00000394; // type:object size:0x2 data:2byte +lbl_1_bss_396 = .bss:0x00000396; // type:object size:0xA +lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x4 data:4byte +lbl_1_bss_3A4 = .bss:0x000003A4; // type:object size:0x2 data:2byte +lbl_1_bss_3A8 = .bss:0x000003A8; // type:object size:0x2 data:2byte +lbl_1_bss_3AA = .bss:0x000003AA; // type:object size:0x2 data:2byte +lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x2 data:2byte +lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x2 data:2byte +lbl_1_bss_3B4 = .bss:0x000003B4; // type:object size:0x2 data:2byte +lbl_1_bss_3B8 = .bss:0x000003B8; // type:object size:0x8 data:2byte +lbl_1_bss_3C0 = .bss:0x000003C0; // type:object size:0x4 data:4byte +lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x4 data:4byte +lbl_1_bss_3C8 = .bss:0x000003C8; // type:object size:0x4 data:4byte +lbl_1_bss_3CC = .bss:0x000003CC; // type:object size:0x1A40 +lbl_1_bss_1E0C = .bss:0x00001E0C; // type:object size:0x4 data:4byte +lbl_1_bss_1E10 = .bss:0x00001E10; // type:object size:0x240 data:4byte +lbl_1_bss_2050 = .bss:0x00002050; // type:object size:0x5A +lbl_1_bss_20AA = .bss:0x000020AA; // type:object size:0x2 data:2byte +lbl_1_bss_20AC = .bss:0x000020AC; // type:object size:0x14 data:2byte +lbl_1_bss_20C0 = .bss:0x000020C0; // type:object size:0x578 +lbl_1_bss_2638 = .bss:0x00002638; // type:object size:0x14 data:2byte +lbl_1_bss_264C = .bss:0x0000264C; // type:object size:0x578 +lbl_1_bss_2BC4 = .bss:0x00002BC4; // type:object size:0x50 +lbl_1_bss_2C14 = .bss:0x00002C14; // type:object size:0x8 +lbl_1_bss_2C1C = .bss:0x00002C1C; // type:object size:0x8 +lbl_1_bss_2C24 = .bss:0x00002C24; // type:object size:0x8 +lbl_1_bss_2C2C = .bss:0x00002C2C; // type:object size:0x3A data:2byte +lbl_1_bss_2C66 = .bss:0x00002C66; // type:object size:0x1A data:2byte +lbl_1_bss_2C80 = .bss:0x00002C80; // type:object size:0x1A data:2byte diff --git a/config/GMPJ01_00/rels/modeltestDll/splits.txt b/config/GMPJ01_00/rels/modeltestDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/modeltestDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/modeltestDll/symbols.txt b/config/GMPJ01_00/rels/modeltestDll/symbols.txt new file mode 100644 index 00000000..3c87f506 --- /dev/null +++ b/config/GMPJ01_00/rels/modeltestDll/symbols.txt @@ -0,0 +1,230 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x1FC +fn_1_29C = .text:0x0000029C; // type:function size:0xC9C +fn_1_F38 = .text:0x00000F38; // type:function size:0x64 +fn_1_F9C = .text:0x00000F9C; // type:function size:0x1158 +fn_1_20F4 = .text:0x000020F4; // type:function size:0x804 +fn_1_28F8 = .text:0x000028F8; // type:function size:0x204 +fn_1_2AFC = .text:0x00002AFC; // type:function size:0x6C +fn_1_2B68 = .text:0x00002B68; // type:function size:0x948 +fn_1_34B0 = .text:0x000034B0; // type:function size:0x32C +fn_1_37DC = .text:0x000037DC; // type:function size:0xBC0 +fn_1_439C = .text:0x0000439C; // type:function size:0x354 +fn_1_46F0 = .text:0x000046F0; // type:function size:0x3D8 +fn_1_4AC8 = .text:0x00004AC8; // type:function size:0x330 +fn_1_4DF8 = .text:0x00004DF8; // type:function size:0xC68 +fn_1_5A60 = .text:0x00005A60; // type:function size:0x348 +fn_1_5DA8 = .text:0x00005DA8; // type:function size:0xC20 +fn_1_69C8 = .text:0x000069C8; // type:function size:0x118 +fn_1_6AE0 = .text:0x00006AE0; // type:function size:0x166C +fn_1_814C = .text:0x0000814C; // type:function size:0x17C +fn_1_82C8 = .text:0x000082C8; // type:function size:0xEC +fn_1_83B4 = .text:0x000083B4; // type:function size:0x304 +_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:0xC data:4byte +lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0xC data:4byte +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x10 data:2byte +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +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_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float +lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0xC data:4byte +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0xC data:4byte +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0xC data:4byte +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0xC data:4byte +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_214 = .rodata:0x00000214; // 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:0x8 data:double +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_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0xC data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0xC data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 data:4byte +lbl_1_data_20 = .data:0x00000020; // type:object size:0x28 data:string +lbl_1_data_48 = .data:0x00000048; // type:object size:0x9 data:string +lbl_1_data_51 = .data:0x00000051; // type:object size:0x9 data:string +lbl_1_data_5A = .data:0x0000005A; // type:object size:0x9 data:string +lbl_1_data_63 = .data:0x00000063; // type:object size:0x9 data:string +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x9 data:string +lbl_1_data_75 = .data:0x00000075; // type:object size:0x9 data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0x9 data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x9 data:string +lbl_1_data_90 = .data:0x00000090; // type:object size:0x9 data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x9 data:string +lbl_1_data_A2 = .data:0x000000A2; // type:object size:0x9 data:string +lbl_1_data_AB = .data:0x000000AB; // type:object size:0x9 data:string +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x9 data:string +lbl_1_data_BD = .data:0x000000BD; // type:object size:0x9 data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x9 data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0x9 data:string +lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x40 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x50 data:float +lbl_1_data_168 = .data:0x00000168; // type:object size:0xA0 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x50 +lbl_1_data_258 = .data:0x00000258; // type:object size:0x50 +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x1A data:string +lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x16 +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x10 data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x4 data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x2C data:string +lbl_1_data_318 = .data:0x00000318; // type:object size:0x40 +lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 +lbl_1_data_360 = .data:0x00000360; // type:object size:0x28 data:string +lbl_1_data_388 = .data:0x00000388; // type:object size:0x28 data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x58 +lbl_1_data_408 = .data:0x00000408; // type:object size:0x58 +lbl_1_data_460 = .data:0x00000460; // type:object size:0x58 +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x58 +lbl_1_data_510 = .data:0x00000510; // type:object size:0x58 +lbl_1_data_568 = .data:0x00000568; // type:object size:0x58 +lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x58 +lbl_1_data_618 = .data:0x00000618; // type:object size:0x58 +lbl_1_data_670 = .data:0x00000670; // type:object size:0x20 +lbl_1_data_690 = .data:0x00000690; // type:object size:0x10 data:string +lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0xD data:string +lbl_1_data_6AD = .data:0x000006AD; // type:object size:0xD data:string +lbl_1_data_6BA = .data:0x000006BA; // type:object size:0xD data:string +lbl_1_data_6C7 = .data:0x000006C7; // type:object size:0xB data:string +lbl_1_data_6D2 = .data:0x000006D2; // type:object size:0x8 data:string +lbl_1_data_6DA = .data:0x000006DA; // type:object size:0xF data:string +lbl_1_data_6E9 = .data:0x000006E9; // type:object size:0xB +lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x60 +lbl_1_data_754 = .data:0x00000754; // type:object size:0x4 data:4byte +lbl_1_data_758 = .data:0x00000758; // type:object size:0x12 +lbl_1_data_76A = .data:0x0000076A; // type:object size:0x2E +lbl_1_data_798 = .data:0x00000798; // type:object size:0x14 +lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x1 data:byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x10 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x414 +lbl_1_bss_454 = .bss:0x00000454; // type:object size:0x4 data:4byte +lbl_1_bss_458 = .bss:0x00000458; // type:object size:0x2 data:2byte +lbl_1_bss_45A = .bss:0x0000045A; // type:object size:0x6 data:2byte +lbl_1_bss_460 = .bss:0x00000460; // type:object size:0x204 data:2byte +lbl_1_bss_664 = .bss:0x00000664; // type:object size:0x200 data:2byte +lbl_1_bss_864 = .bss:0x00000864; // type:object size:0x20 +lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x2 data:2byte +lbl_1_bss_888 = .bss:0x00000888; // type:object size:0x2 data:2byte +lbl_1_bss_88A = .bss:0x0000088A; // type:object size:0x100 +lbl_1_bss_98A = .bss:0x0000098A; // type:object size:0x10 data:2byte +lbl_1_bss_99A = .bss:0x0000099A; // type:object size:0x2 data:2byte +lbl_1_bss_99C = .bss:0x0000099C; // type:object size:0x2 data:2byte +lbl_1_bss_9A0 = .bss:0x000009A0; // type:object size:0x4 data:4byte +lbl_1_bss_9A4 = .bss:0x000009A4; // type:object size:0x4 data:4byte +lbl_1_bss_9A8 = .bss:0x000009A8; // type:object size:0x4 data:4byte +lbl_1_bss_9AC = .bss:0x000009AC; // type:object size:0x40 +lbl_1_bss_9EC = .bss:0x000009EC; // type:object size:0x8 +lbl_1_bss_9F4 = .bss:0x000009F4; // type:object size:0x4 data:4byte +lbl_1_bss_9F8 = .bss:0x000009F8; // type:object size:0x8 data:4byte +lbl_1_bss_A00 = .bss:0x00000A00; // type:object size:0x4 data:4byte +lbl_1_bss_A04 = .bss:0x00000A04; // type:object size:0x4 data:4byte +lbl_1_bss_A08 = .bss:0x00000A08; // type:object size:0x2 data:2byte +lbl_1_bss_A0C = .bss:0x00000A0C; // type:object size:0x8 data:float +lbl_1_bss_A14 = .bss:0x00000A14; // type:object size:0x4 data:4byte +lbl_1_bss_A18 = .bss:0x00000A18; // type:object size:0xA4 data:float +lbl_1_bss_ABC = .bss:0x00000ABC; // type:object size:0x4 data:4byte +lbl_1_bss_AC0 = .bss:0x00000AC0; // type:object size:0x8 data:4byte diff --git a/config/GMPJ01_00/rels/modeseldll/splits.txt b/config/GMPJ01_00/rels/modeseldll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/modeseldll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/modeseldll/symbols.txt b/config/GMPJ01_00/rels/modeseldll/symbols.txt new file mode 100644 index 00000000..9e826608 --- /dev/null +++ b/config/GMPJ01_00/rels/modeseldll/symbols.txt @@ -0,0 +1,270 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +fn_1_424 = .text:0x00000424; // type:function size:0x5E0 +fn_1_A04 = .text:0x00000A04; // type:function size:0xFC +fn_1_B00 = .text:0x00000B00; // type:function size:0x9C +fn_1_B9C = .text:0x00000B9C; // type:function size:0x3B4 +fn_1_F50 = .text:0x00000F50; // type:function size:0xC2C +fn_1_1B7C = .text:0x00001B7C; // type:function size:0x2C4 +fn_1_1E40 = .text:0x00001E40; // type:function size:0x90 +fn_1_1ED0 = .text:0x00001ED0; // type:function size:0x4A8 +fn_1_2378 = .text:0x00002378; // type:function size:0x128 +fn_1_24A0 = .text:0x000024A0; // type:function size:0x11D8 +fn_1_3678 = .text:0x00003678; // type:function size:0x174 +fn_1_37EC = .text:0x000037EC; // type:function size:0x2DC +fn_1_3AC8 = .text:0x00003AC8; // type:function size:0x1B80 +fn_1_5648 = .text:0x00005648; // type:function size:0x19C +fn_1_57E4 = .text:0x000057E4; // type:function size:0x88 +fn_1_586C = .text:0x0000586C; // type:function size:0x35C +fn_1_5BC8 = .text:0x00005BC8; // type:function size:0x8C +fn_1_5C54 = .text:0x00005C54; // type:function size:0xF8 +fn_1_5D4C = .text:0x00005D4C; // type:function size:0x484 +fn_1_61D0 = .text:0x000061D0; // type:function size:0x1134 +fn_1_7304 = .text:0x00007304; // type:function size:0x34C +fn_1_7650 = .text:0x00007650; // type:function size:0x8C +fn_1_76DC = .text:0x000076DC; // type:function size:0x4C0 +fn_1_7B9C = .text:0x00007B9C; // type:function size:0x5B8 +fn_1_8154 = .text:0x00008154; // type:function size:0x288 +fn_1_83DC = .text:0x000083DC; // type:function size:0x18C +fn_1_8568 = .text:0x00008568; // type:function size:0x6F0 +fn_1_8C58 = .text:0x00008C58; // type:function size:0x11DC +fn_1_9E34 = .text:0x00009E34; // type:function size:0x38 +fn_1_9E6C = .text:0x00009E6C; // type:function size:0xAE4 +fn_1_A950 = .text:0x0000A950; // type:function size:0x1F8 +fn_1_AB48 = .text:0x0000AB48; // type:function size:0xE20 +fn_1_B968 = .text:0x0000B968; // type:function size:0x154 +fn_1_BABC = .text:0x0000BABC; // type:function size:0x60 +fn_1_BB1C = .text:0x0000BB1C; // type:function size:0x458 +fn_1_BF74 = .text:0x0000BF74; // type:function size:0x290 +fn_1_C204 = .text:0x0000C204; // type:function size:0x154 +fn_1_C358 = .text:0x0000C358; // type:function size:0x78 +_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:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:byte +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x22 data:string +lbl_1_data_5A = .data:0x0000005A; // type:object size:0x14 data:string +lbl_1_data_6E = .data:0x0000006E; // type:object size:0x4 +lbl_1_data_72 = .data:0x00000072; // type:object size:0xA data:string +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x4 data:string +lbl_1_data_80 = .data:0x00000080; // type:object size:0xC +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x18 +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x18 +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x18 +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x14 data:string +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x9 data:string +lbl_1_data_F1 = .data:0x000000F1; // type:object size:0xF +lbl_1_data_100 = .data:0x00000100; // type:object size:0x11C data:2byte +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x48 data:4byte +lbl_1_data_264 = .data:0x00000264; // type:object size:0x3 +lbl_1_data_267 = .data:0x00000267; // type:object size:0x5 +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x8 +lbl_1_data_274 = .data:0x00000274; // type:object size:0x2 data:string +lbl_1_data_276 = .data:0x00000276; // type:object size:0x2 data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0x8 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:string +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:string +lbl_1_data_284 = .data:0x00000284; // type:object size:0x4 +lbl_1_data_288 = .data:0x00000288; // type:object size:0xC +lbl_1_data_294 = .data:0x00000294; // type:object size:0x19 data:string +lbl_1_data_2AD = .data:0x000002AD; // type:object size:0x23 data:string +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x1B data:string +lbl_1_data_2EB = .data:0x000002EB; // type:object size:0x19 data:string +lbl_1_data_304 = .data:0x00000304; // type:object size:0x19 data:string +lbl_1_data_31D = .data:0x0000031D; // type:object size:0x20 data:string +lbl_1_data_33D = .data:0x0000033D; // type:object size:0x1B data:string +lbl_1_data_358 = .data:0x00000358; // type:object size:0x1B data:string +lbl_1_data_373 = .data:0x00000373; // type:object size:0x22 data:string +lbl_1_data_395 = .data:0x00000395; // type:object size:0x5 data:string +lbl_1_data_39A = .data:0x0000039A; // type:object size:0x15 data:string +lbl_1_data_3AF = .data:0x000003AF; // type:object size:0x15 data:string +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x1F data:string +lbl_1_data_3E3 = .data:0x000003E3; // type:object size:0x10 data:string +lbl_1_data_3F3 = .data:0x000003F3; // type:object size:0xD data:string +lbl_1_data_400 = .data:0x00000400; // type:object size:0x16 +lbl_1_data_416 = .data:0x00000416; // type:object size:0x6 data:string +lbl_1_data_41C = .data:0x0000041C; // type:object size:0x2 data:2byte +lbl_1_data_41E = .data:0x0000041E; // type:object size:0xA +lbl_1_data_428 = .data:0x00000428; // type:object size:0x514 +lbl_1_data_93C = .data:0x0000093C; // type:object size:0x104 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x18 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x30 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0xC data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0xC data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x8 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x2 data:2byte +lbl_1_bss_82 = .bss:0x00000082; // type:object size:0x6 data:2byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x2 data:2byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:float +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x2 data:2byte +lbl_1_bss_92 = .bss:0x00000092; // type:object size:0x6 +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x6 +lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x6 +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x8 +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0xC +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0xC +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0xC +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x18 +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x6 +lbl_1_bss_EE = .bss:0x000000EE; // type:object size:0x6 +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x4 data:4byte +lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x8 data:float +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x8 data:float +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x6 +lbl_1_bss_116 = .bss:0x00000116; // type:object size:0x6 +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x2 data:2byte +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0xC data:4byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x8 data:4byte +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x6 +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x6 +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x6 +lbl_1_bss_146 = .bss:0x00000146; // type:object size:0x2 data:2byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x2 data:2byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x6 +lbl_1_bss_152 = .bss:0x00000152; // type:object size:0x1A data:2byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x30 data:2byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x30 data:2byte diff --git a/config/GMPJ01_00/rels/movieDll/splits.txt b/config/GMPJ01_00/rels/movieDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/movieDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/movieDll/symbols.txt b/config/GMPJ01_00/rels/movieDll/symbols.txt new file mode 100644 index 00000000..9127e46f --- /dev/null +++ b/config/GMPJ01_00/rels/movieDll/symbols.txt @@ -0,0 +1,51 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x23C +fn_1_2DC = .text:0x000002DC; // type:function size:0xE8 +fn_1_3C4 = .text:0x000003C4; // type:function size:0xD90 +_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_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_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_data_4 = .data:0x00000004; // type:object size:0x14 data:string +lbl_1_data_18 = .data:0x00000018; // type:object size:0x14 data:string +lbl_1_data_2C = .data:0x0000002C; // type:object size:0x15 data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x15 data:string +lbl_1_data_56 = .data:0x00000056; // type:object size:0x15 data:string +lbl_1_data_6B = .data:0x0000006B; // type:object size:0x15 data:string +lbl_1_data_80 = .data:0x00000080; // type:object size:0x15 data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0x15 data:string +lbl_1_data_AA = .data:0x000000AA; // type:object size:0x15 data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x15 data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x14 data:string +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x14 data:string +lbl_1_data_FC = .data:0x000000FC; // type:object size:0x34 data:4byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x24 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2C4 data:2byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x4 data:4byte +lbl_1_bss_2D4 = .bss:0x000002D4; // type:object size:0x4 data:4byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x20 +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x4 data:4byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/mpexDll/splits.txt b/config/GMPJ01_00/rels/mpexDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/mpexDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mpexDll/symbols.txt b/config/GMPJ01_00/rels/mpexDll/symbols.txt new file mode 100644 index 00000000..17f221a1 --- /dev/null +++ b/config/GMPJ01_00/rels/mpexDll/symbols.txt @@ -0,0 +1,474 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xE8 +fn_1_188 = .text:0x00000188; // type:function size:0x38 +fn_1_1C0 = .text:0x000001C0; // type:function size:0x70 +fn_1_230 = .text:0x00000230; // type:function size:0x68 +fn_1_298 = .text:0x00000298; // type:function size:0xDC +fn_1_374 = .text:0x00000374; // type:function size:0xC4 +fn_1_438 = .text:0x00000438; // type:function size:0x3E4 +fn_1_81C = .text:0x0000081C; // type:function size:0xB8 +fn_1_8D4 = .text:0x000008D4; // type:function size:0x3C +fn_1_910 = .text:0x00000910; // type:function size:0x124 +fn_1_A34 = .text:0x00000A34; // type:function size:0x3C +fn_1_A70 = .text:0x00000A70; // type:function size:0x44 +fn_1_AB4 = .text:0x00000AB4; // type:function size:0x1D0 +fn_1_C84 = .text:0x00000C84; // type:function size:0x1C4 +fn_1_E48 = .text:0x00000E48; // type:function size:0x200 +fn_1_1048 = .text:0x00001048; // type:function size:0x238 +fn_1_1280 = .text:0x00001280; // type:function size:0x39C +fn_1_161C = .text:0x0000161C; // type:function size:0x200 +fn_1_181C = .text:0x0000181C; // type:function size:0x238 +fn_1_1A54 = .text:0x00001A54; // type:function size:0x39C +fn_1_1DF0 = .text:0x00001DF0; // type:function size:0x200 +fn_1_1FF0 = .text:0x00001FF0; // type:function size:0x238 +fn_1_2228 = .text:0x00002228; // type:function size:0x39C +fn_1_25C4 = .text:0x000025C4; // type:function size:0x178 +fn_1_273C = .text:0x0000273C; // type:function size:0x1A0 +fn_1_28DC = .text:0x000028DC; // type:function size:0x4 +fn_1_28E0 = .text:0x000028E0; // type:function size:0x764 +fn_1_3044 = .text:0x00003044; // type:function size:0x294 +fn_1_32D8 = .text:0x000032D8; // type:function size:0xAC +fn_1_3384 = .text:0x00003384; // type:function size:0x74 +fn_1_33F8 = .text:0x000033F8; // type:function size:0x110 +fn_1_3508 = .text:0x00003508; // type:function size:0x19C +fn_1_36A4 = .text:0x000036A4; // type:function size:0xB4 +fn_1_3758 = .text:0x00003758; // type:function size:0x224 +fn_1_397C = .text:0x0000397C; // type:function size:0x78 +fn_1_39F4 = .text:0x000039F4; // type:function size:0x104 +fn_1_3AF8 = .text:0x00003AF8; // type:function size:0x51C +fn_1_4014 = .text:0x00004014; // type:function size:0x98 +fn_1_40AC = .text:0x000040AC; // type:function size:0x98 +fn_1_4144 = .text:0x00004144; // type:function size:0x40 +fn_1_4184 = .text:0x00004184; // type:function size:0x2C8 +fn_1_444C = .text:0x0000444C; // type:function size:0xC8 +fn_1_4514 = .text:0x00004514; // type:function size:0x21C +fn_1_4730 = .text:0x00004730; // type:function size:0x40 +fn_1_4770 = .text:0x00004770; // type:function size:0x2E8 +fn_1_4A58 = .text:0x00004A58; // type:function size:0xE4 +fn_1_4B3C = .text:0x00004B3C; // type:function size:0x3C +fn_1_4B78 = .text:0x00004B78; // type:function size:0xF4 +fn_1_4C6C = .text:0x00004C6C; // type:function size:0x18C +fn_1_4DF8 = .text:0x00004DF8; // type:function size:0x18C +fn_1_4F84 = .text:0x00004F84; // type:function size:0x2B4 +fn_1_5238 = .text:0x00005238; // type:function size:0x2F8 +fn_1_5530 = .text:0x00005530; // type:function size:0x188 +fn_1_56B8 = .text:0x000056B8; // type:function size:0x128 +fn_1_57E0 = .text:0x000057E0; // type:function size:0x3C +fn_1_581C = .text:0x0000581C; // type:function size:0x140 +fn_1_595C = .text:0x0000595C; // type:function size:0x19C +fn_1_5AF8 = .text:0x00005AF8; // type:function size:0x124 +fn_1_5C1C = .text:0x00005C1C; // type:function size:0x124 +fn_1_5D40 = .text:0x00005D40; // type:function size:0x1E88 +fn_1_7BC8 = .text:0x00007BC8; // type:function size:0x1B8 +fn_1_7D80 = .text:0x00007D80; // type:function size:0x244 +fn_1_7FC4 = .text:0x00007FC4; // type:function size:0x1A8 +fn_1_816C = .text:0x0000816C; // type:function size:0x1B4 +fn_1_8320 = .text:0x00008320; // type:function size:0x2A4 +fn_1_85C4 = .text:0x000085C4; // type:function size:0x194 +fn_1_8758 = .text:0x00008758; // type:function size:0x194 +fn_1_88EC = .text:0x000088EC; // type:function size:0xD8 +fn_1_89C4 = .text:0x000089C4; // type:function size:0x118 +fn_1_8ADC = .text:0x00008ADC; // type:function size:0x540 +fn_1_901C = .text:0x0000901C; // type:function size:0x414 +fn_1_9430 = .text:0x00009430; // type:function size:0x284 +fn_1_96B4 = .text:0x000096B4; // type:function size:0x8C +fn_1_9740 = .text:0x00009740; // type:function size:0x150 +fn_1_9890 = .text:0x00009890; // type:function size:0x78 +fn_1_9908 = .text:0x00009908; // type:function size:0x80 +fn_1_9988 = .text:0x00009988; // type:function size:0x34C +fn_1_9CD4 = .text:0x00009CD4; // type:function size:0x98 +fn_1_9D6C = .text:0x00009D6C; // type:function size:0x1A4 +fn_1_9F10 = .text:0x00009F10; // type:function size:0x1D4 +fn_1_A0E4 = .text:0x0000A0E4; // type:function size:0x1C8 +fn_1_A2AC = .text:0x0000A2AC; // type:function size:0xF8 +fn_1_A3A4 = .text:0x0000A3A4; // type:function size:0x264 +fn_1_A608 = .text:0x0000A608; // type:function size:0x72C +fn_1_AD34 = .text:0x0000AD34; // type:function size:0x2D0 +fn_1_B004 = .text:0x0000B004; // type:function size:0x20C +fn_1_B210 = .text:0x0000B210; // type:function size:0x38 +fn_1_B248 = .text:0x0000B248; // type:function size:0x9C +fn_1_B2E4 = .text:0x0000B2E4; // type:function size:0x510 +fn_1_B7F4 = .text:0x0000B7F4; // type:function size:0x7C +fn_1_B870 = .text:0x0000B870; // type:function size:0x138 +fn_1_B9A8 = .text:0x0000B9A8; // type:function size:0x18C +fn_1_BB34 = .text:0x0000BB34; // type:function size:0xE4 +fn_1_BC18 = .text:0x0000BC18; // type:function size:0xC0 +fn_1_BCD8 = .text:0x0000BCD8; // type:function size:0x38 +fn_1_BD10 = .text:0x0000BD10; // type:function size:0x68 +fn_1_BD78 = .text:0x0000BD78; // type:function size:0x2F4 +fn_1_C06C = .text:0x0000C06C; // type:function size:0x70 +fn_1_C0DC = .text:0x0000C0DC; // type:function size:0x3F8 +fn_1_C4D4 = .text:0x0000C4D4; // type:function size:0x70 +fn_1_C544 = .text:0x0000C544; // type:function size:0x31C +fn_1_C860 = .text:0x0000C860; // type:function size:0x38 +fn_1_C898 = .text:0x0000C898; // type:function size:0x200 +fn_1_CA98 = .text:0x0000CA98; // type:function size:0x478 +fn_1_CF10 = .text:0x0000CF10; // type:function size:0x49C +fn_1_D3AC = .text:0x0000D3AC; // type:function size:0xBC +fn_1_D468 = .text:0x0000D468; // type:function size:0x244 +fn_1_D6AC = .text:0x0000D6AC; // type:function size:0x524 +fn_1_DBD0 = .text:0x0000DBD0; // type:function size:0x5A4 +fn_1_E174 = .text:0x0000E174; // type:function size:0x210 +fn_1_E384 = .text:0x0000E384; // type:function size:0x1E4 +fn_1_E568 = .text:0x0000E568; // type:function size:0x5B4 +fn_1_EB1C = .text:0x0000EB1C; // type:function size:0x25C +fn_1_ED78 = .text:0x0000ED78; // type:function size:0x348 +fn_1_F0C0 = .text:0x0000F0C0; // type:function size:0x324 +fn_1_F3E4 = .text:0x0000F3E4; // type:function size:0x70 +fn_1_F454 = .text:0x0000F454; // type:function size:0x2B4 +fn_1_F708 = .text:0x0000F708; // type:function size:0x174 +fn_1_F87C = .text:0x0000F87C; // type:function size:0x4B0 +fn_1_FD2C = .text:0x0000FD2C; // type:function size:0x370 +fn_1_1009C = .text:0x0001009C; // type:function size:0xCC +fn_1_10168 = .text:0x00010168; // type:function size:0x40 +fn_1_101A8 = .text:0x000101A8; // type:function size:0x1F4 +fn_1_1039C = .text:0x0001039C; // type:function size:0x348 +fn_1_106E4 = .text:0x000106E4; // type:function size:0x70 +fn_1_10754 = .text:0x00010754; // type:function size:0x260 +fn_1_109B4 = .text:0x000109B4; // type:function size:0x174 +fn_1_10B28 = .text:0x00010B28; // type:function size:0x45C +fn_1_10F84 = .text:0x00010F84; // type:function size:0x370 +fn_1_112F4 = .text:0x000112F4; // type:function size:0xCC +fn_1_113C0 = .text:0x000113C0; // type:function size:0x40 +fn_1_11400 = .text:0x00011400; // type:function size:0x1F4 +fn_1_115F4 = .text:0x000115F4; // type:function size:0x15C +fn_1_11750 = .text:0x00011750; // type:function size:0x54 +fn_1_117A4 = .text:0x000117A4; // type:function size:0x5C +fn_1_11800 = .text:0x00011800; // type:function size:0x5C +fn_1_1185C = .text:0x0001185C; // type:function size:0x3EC +fn_1_11C48 = .text:0x00011C48; // type:function size:0x198 +fn_1_11DE0 = .text:0x00011DE0; // type:function size:0x228 +fn_1_12008 = .text:0x00012008; // type:function size:0x3F4 +fn_1_123FC = .text:0x000123FC; // type:function size:0xA0 +fn_1_1249C = .text:0x0001249C; // type:function size:0x224 +fn_1_126C0 = .text:0x000126C0; // type:function size:0x2DC +fn_1_1299C = .text:0x0001299C; // type:function size:0x2C +fn_1_129C8 = .text:0x000129C8; // type:function size:0x518 +fn_1_12EE0 = .text:0x00012EE0; // type:function size:0x2C +fn_1_12F0C = .text:0x00012F0C; // type:function size:0x28 +fn_1_12F34 = .text:0x00012F34; // type:function size:0x274 +fn_1_131A8 = .text:0x000131A8; // type:function size:0x2C +fn_1_131D4 = .text:0x000131D4; // type:function size:0x2C +fn_1_13200 = .text:0x00013200; // type:function size:0x24 +fn_1_13224 = .text:0x00013224; // type:function size:0x2BC +fn_1_134E0 = .text:0x000134E0; // type:function size:0x500 +fn_1_139E0 = .text:0x000139E0; // type:function size:0x480 +fn_1_13E60 = .text:0x00013E60; // type:function size:0x80C +fn_1_1466C = .text:0x0001466C; // type:function size:0x28 +fn_1_14694 = .text:0x00014694; // type:function size:0x28 +fn_1_146BC = .text:0x000146BC; // type:function size:0x21C +fn_1_148D8 = .text:0x000148D8; // type:function size:0x194 +fn_1_14A6C = .text:0x00014A6C; // type:function size:0x198 +fn_1_14C04 = .text:0x00014C04; // type:function size:0x9C +fn_1_14CA0 = .text:0x00014CA0; // type:function size:0x2D8 +fn_1_14F78 = .text:0x00014F78; // type:function size:0x2DC +fn_1_15254 = .text:0x00015254; // type:function size:0x1E0 +fn_1_15434 = .text:0x00015434; // type:function size:0xF0 +fn_1_15524 = .text:0x00015524; // type:function size:0x50 +fn_1_15574 = .text:0x00015574; // type:function size:0x584 +fn_1_15AF8 = .text:0x00015AF8; // type:function size:0x5D8 +fn_1_160D0 = .text:0x000160D0; // type:function size:0x2E0 +fn_1_163B0 = .text:0x000163B0; // type:function size:0x274 +fn_1_16624 = .text:0x00016624; // type:function size:0x7C +fn_1_166A0 = .text:0x000166A0; // type:function size:0x44C +fn_1_16AEC = .text:0x00016AEC; // type:function size:0x434 +fn_1_16F20 = .text:0x00016F20; // type:function size:0x204 +fn_1_17124 = .text:0x00017124; // type:function size:0x790 +fn_1_178B4 = .text:0x000178B4; // type:function size:0xB0C +fn_1_183C0 = .text:0x000183C0; // type:function size:0x720 +fn_1_18AE0 = .text:0x00018AE0; // type:function size:0x9C +fn_1_18B7C = .text:0x00018B7C; // type:function size:0xCCC +fn_1_19848 = .text:0x00019848; // type:function size:0x924 +fn_1_1A16C = .text:0x0001A16C; // type:function size:0x1E8 +fn_1_1A354 = .text:0x0001A354; // type:function size:0x958 +fn_1_1ACAC = .text:0x0001ACAC; // type:function size:0x7C +fn_1_1AD28 = .text:0x0001AD28; // type:function size:0x164 +fn_1_1AE8C = .text:0x0001AE8C; // type:function size:0x1B8 +fn_1_1B044 = .text:0x0001B044; // type:function size:0xA4 +fn_1_1B0E8 = .text:0x0001B0E8; // type:function size:0xF4 +fn_1_1B1DC = .text:0x0001B1DC; // type:function size:0x80 +fn_1_1B25C = .text:0x0001B25C; // type:function size:0x80 +fn_1_1B2DC = .text:0x0001B2DC; // type:function size:0x28 +fn_1_1B304 = .text:0x0001B304; // type:function size:0x20 +fn_1_1B324 = .text:0x0001B324; // type:function size:0xD8 +fn_1_1B3FC = .text:0x0001B3FC; // type:function size:0xC8 +fn_1_1B4C4 = .text:0x0001B4C4; // type:function size:0xBC +fn_1_1B580 = .text:0x0001B580; // type:function size:0x40 +fn_1_1B5C0 = .text:0x0001B5C0; // type:function size:0x24 +fn_1_1B5E4 = .text:0x0001B5E4; // type:function size:0x1C0 +fn_1_1B7A4 = .text:0x0001B7A4; // type:function size:0x84 +fn_1_1B828 = .text:0x0001B828; // type:function size:0xD4 +fn_1_1B8FC = .text:0x0001B8FC; // type:function size:0x58 +fn_1_1B954 = .text:0x0001B954; // type:function size:0x15C +fn_1_1BAB0 = .text:0x0001BAB0; // type:function size:0x1C4 +fn_1_1BC74 = .text:0x0001BC74; // type:function size:0x1AC +fn_1_1BE20 = .text:0x0001BE20; // type:function size:0x54 +fn_1_1BE74 = .text:0x0001BE74; // type:function size:0x304 +fn_1_1C178 = .text:0x0001C178; // type:function size:0x304 +fn_1_1C47C = .text:0x0001C47C; // type:function size:0x340 +fn_1_1C7BC = .text:0x0001C7BC; // type:function size:0xC4 +fn_1_1C880 = .text:0x0001C880; // type:function size:0x47C +fn_1_1CCFC = .text:0x0001CCFC; // type:function size:0x16C +_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:0xC data:4byte +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0xC data:4byte +lbl_1_rodata_34 = .rodata:0x00000034; // type:object size:0xC data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +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:0x78 +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0xC data:4byte +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_154 = .rodata:0x00000154; // type:object size:0xC data:4byte +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0xC data:4byte +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:double +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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0xC data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0xC data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:4byte +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0xC data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0xC data:4byte +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_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:4byte +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0xB4 +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x6C +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x2C data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0xB0 +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0xC data:4byte +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x18 data:4byte +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0xC data:4byte +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x8 data:double +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x38 data:4byte +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x4F data:string +lbl_1_data_4F = .data:0x0000004F; // type:object size:0x50 data:string +lbl_1_data_9F = .data:0x0000009F; // type:object size:0x50 data:string +lbl_1_data_EF = .data:0x000000EF; // type:object size:0x4E data:string +lbl_1_data_13D = .data:0x0000013D; // type:object size:0x50 data:string +lbl_1_data_18D = .data:0x0000018D; // type:object size:0x4F data:string +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x22 data:string +lbl_1_data_1FE = .data:0x000001FE; // type:object size:0x1A data:string +lbl_1_data_218 = .data:0x00000218; // type:object size:0x1A data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x62 +lbl_1_data_294 = .data:0x00000294; // type:object size:0x4 data:4byte +lbl_1_data_298 = .data:0x00000298; // type:object size:0x4 data:4byte +lbl_1_data_29C = .data:0x0000029C; // type:object size:0x18 +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x10 data:4byte +lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x4 data:4byte +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x3 data:string +lbl_1_data_2CB = .data:0x000002CB; // type:object size:0x5 data:string +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x19 data:string +lbl_1_data_2E9 = .data:0x000002E9; // type:object size:0x12 data:string +lbl_1_data_2FB = .data:0x000002FB; // type:object size:0x29 +lbl_1_data_324 = .data:0x00000324; // type:object size:0x4 data:4byte +lbl_1_data_328 = .data:0x00000328; // type:object size:0x4 data:4byte +lbl_1_data_32C = .data:0x0000032C; // type:object size:0xC data:4byte +lbl_1_data_338 = .data:0x00000338; // type:object size:0x2B data:string +lbl_1_data_363 = .data:0x00000363; // type:object size:0x28 data:string +lbl_1_data_38B = .data:0x0000038B; // type:object size:0x5 data:string +lbl_1_data_390 = .data:0x00000390; // type:object size:0x4 data:string +lbl_1_data_394 = .data:0x00000394; // type:object size:0x4 +jumptable_1_data_398 = .data:0x00000398; // type:object size:0x2C scope:local +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x3C data:string +lbl_1_data_400 = .data:0x00000400; // type:object size:0x16 data:string +lbl_1_data_416 = .data:0x00000416; // type:object size:0x1A data:string +lbl_1_data_430 = .data:0x00000430; // type:object size:0x1A data:string +lbl_1_data_44A = .data:0x0000044A; // type:object size:0x1A data:string +lbl_1_data_464 = .data:0x00000464; // type:object size:0x17 data:string +lbl_1_data_47B = .data:0x0000047B; // type:object size:0x16 data:string +lbl_1_data_491 = .data:0x00000491; // type:object size:0x16 data:string +lbl_1_data_4A7 = .data:0x000004A7; // type:object size:0x19 data:string +lbl_1_data_4C0 = .data:0x000004C0; // type:object size:0x16 data:string +lbl_1_data_4D6 = .data:0x000004D6; // type:object size:0x42 +lbl_1_data_518 = .data:0x00000518; // type:object size:0x3C data:string +lbl_1_data_554 = .data:0x00000554; // type:object size:0x19 data:string +lbl_1_data_56D = .data:0x0000056D; // type:object size:0x1A data:string +lbl_1_data_587 = .data:0x00000587; // type:object size:0x3D +lbl_1_data_5C4 = .data:0x000005C4; // type:object size:0x20 data:4byte +lbl_1_data_5E4 = .data:0x000005E4; // type:object size:0x40 data:4byte +lbl_1_data_624 = .data:0x00000624; // type:object size:0x70 +lbl_1_data_694 = .data:0x00000694; // type:object size:0x90 data:4byte +lbl_1_data_724 = .data:0x00000724; // type:object size:0x20 +lbl_1_data_744 = .data:0x00000744; // type:object size:0x8 data:4byte +lbl_1_data_74C = .data:0x0000074C; // type:object size:0x10 +lbl_1_data_75C = .data:0x0000075C; // type:object size:0x20 +lbl_1_data_77C = .data:0x0000077C; // type:object size:0x4 data:4byte +lbl_1_data_780 = .data:0x00000780; // type:object size:0x8 data:4byte +lbl_1_data_788 = .data:0x00000788; // type:object size:0x4C8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x64 data:4byte +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x44 data:float +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:float +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x18 +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x8 +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x8 +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x8 +lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x8 +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x8 +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x8 +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x10 +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x50 +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x2C data:4byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x4 data:4byte +lbl_1_bss_1B4 = .bss:0x000001B4; // type:object size:0x4 data:4byte +lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0x120 data:4byte +lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0xD8 data:4byte +lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x48 data:4byte +lbl_1_bss_3F8 = .bss:0x000003F8; // type:object size:0x48 data:4byte +lbl_1_bss_440 = .bss:0x00000440; // type:object size:0x4 data:4byte +lbl_1_bss_444 = .bss:0x00000444; // type:object size:0x4 data:4byte +lbl_1_bss_448 = .bss:0x00000448; // type:object size:0x14 data:4byte +lbl_1_bss_45C = .bss:0x0000045C; // type:object size:0x180 data:4byte +lbl_1_bss_5DC = .bss:0x000005DC; // type:object size:0x60 data:4byte +lbl_1_bss_63C = .bss:0x0000063C; // type:object size:0x70 data:4byte +lbl_1_bss_6AC = .bss:0x000006AC; // type:object size:0x1 data:byte diff --git a/config/GMPJ01_00/rels/msetupDll/splits.txt b/config/GMPJ01_00/rels/msetupDll/splits.txt new file mode 100644 index 00000000..e787a0ee --- /dev/null +++ b/config/GMPJ01_00/rels/msetupDll/splits.txt @@ -0,0 +1,3 @@ +Sections: + .ctors type:rodata align:4 + .dtors type:rodata align:4 diff --git a/config/GMPJ01_00/rels/msetupDll/symbols.txt b/config/GMPJ01_00/rels/msetupDll/symbols.txt new file mode 100644 index 00000000..120e2d17 --- /dev/null +++ b/config/GMPJ01_00/rels/msetupDll/symbols.txt @@ -0,0 +1,2 @@ +_ctors = .ctors:0x00000000; // type:label scope:global +_dtors = .dtors:0x00000000; // type:label scope:global diff --git a/config/GMPJ01_00/rels/mstory2Dll/splits.txt b/config/GMPJ01_00/rels/mstory2Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/mstory2Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mstory2Dll/symbols.txt b/config/GMPJ01_00/rels/mstory2Dll/symbols.txt new file mode 100644 index 00000000..43271272 --- /dev/null +++ b/config/GMPJ01_00/rels/mstory2Dll/symbols.txt @@ -0,0 +1,709 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x2A0 +_prolog = .text:0x00000344; // type:function size:0x54 scope:global +_epilog = .text:0x00000398; // type:function size:0x4C scope:global +fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 +fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 +fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +fn_1_864 = .text:0x00000864; // type:function size:0x28 +fn_1_88C = .text:0x0000088C; // type:function size:0x20 +fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 +fn_1_984 = .text:0x00000984; // type:function size:0xC8 +fn_1_A4C = .text:0x00000A4C; // type:function size:0xBC +fn_1_B08 = .text:0x00000B08; // type:function size:0xBC +fn_1_BC4 = .text:0x00000BC4; // type:function size:0x4 +fn_1_BC8 = .text:0x00000BC8; // type:function size:0x20 +fn_1_BE8 = .text:0x00000BE8; // type:function size:0x28 +fn_1_C10 = .text:0x00000C10; // type:function size:0x20 +fn_1_C30 = .text:0x00000C30; // type:function size:0x24 +fn_1_C54 = .text:0x00000C54; // type:function size:0x4 +fn_1_C58 = .text:0x00000C58; // type:function size:0xA48 +fn_1_16A0 = .text:0x000016A0; // type:function size:0x1BC +fn_1_185C = .text:0x0000185C; // type:function size:0x1D8 +fn_1_1A34 = .text:0x00001A34; // type:function size:0x60 +fn_1_1A94 = .text:0x00001A94; // type:function size:0x68 +fn_1_1AFC = .text:0x00001AFC; // type:function size:0xAC +fn_1_1BA8 = .text:0x00001BA8; // type:function size:0xBC +fn_1_1C64 = .text:0x00001C64; // type:function size:0xB4 +fn_1_1D18 = .text:0x00001D18; // type:function size:0x34 +fn_1_1D4C = .text:0x00001D4C; // type:function size:0x40 +fn_1_1D8C = .text:0x00001D8C; // type:function size:0x70 +fn_1_1DFC = .text:0x00001DFC; // type:function size:0x188 +fn_1_1F84 = .text:0x00001F84; // type:function size:0x2E0 +fn_1_2264 = .text:0x00002264; // type:function size:0x90 +fn_1_22F4 = .text:0x000022F4; // type:function size:0x48 +fn_1_233C = .text:0x0000233C; // type:function size:0x54 +fn_1_2390 = .text:0x00002390; // type:function size:0x3C0 +fn_1_2750 = .text:0x00002750; // type:function size:0x10 +fn_1_2760 = .text:0x00002760; // type:function size:0x10 +fn_1_2770 = .text:0x00002770; // type:function size:0xB8 +fn_1_2828 = .text:0x00002828; // type:function size:0x120 +fn_1_2948 = .text:0x00002948; // type:function size:0x3B8 +fn_1_2D00 = .text:0x00002D00; // type:function size:0x7F4 +fn_1_34F4 = .text:0x000034F4; // type:function size:0x88 +fn_1_357C = .text:0x0000357C; // type:function size:0x94 +fn_1_3610 = .text:0x00003610; // type:function size:0x58 +fn_1_3668 = .text:0x00003668; // type:function size:0xEC +fn_1_3754 = .text:0x00003754; // type:function size:0xC4 +fn_1_3818 = .text:0x00003818; // type:function size:0x3C +fn_1_3854 = .text:0x00003854; // type:function size:0x44 +fn_1_3898 = .text:0x00003898; // type:function size:0x26C +fn_1_3B04 = .text:0x00003B04; // type:function size:0x26C +fn_1_3D70 = .text:0x00003D70; // type:function size:0x27C +fn_1_3FEC = .text:0x00003FEC; // type:function size:0x2B4 +fn_1_42A0 = .text:0x000042A0; // type:function size:0x46C +fn_1_470C = .text:0x0000470C; // type:function size:0x454 +fn_1_4B60 = .text:0x00004B60; // type:function size:0x48C +fn_1_4FEC = .text:0x00004FEC; // type:function size:0x658 +fn_1_5644 = .text:0x00005644; // type:function size:0x4C4 +fn_1_5B08 = .text:0x00005B08; // type:function size:0x4FC +fn_1_6004 = .text:0x00006004; // type:function size:0x6C8 +fn_1_66CC = .text:0x000066CC; // type:function size:0x38 +fn_1_6704 = .text:0x00006704; // type:function size:0xD4 +fn_1_67D8 = .text:0x000067D8; // type:function size:0x198 +fn_1_6970 = .text:0x00006970; // type:function size:0x34 +fn_1_69A4 = .text:0x000069A4; // type:function size:0x40 +fn_1_69E4 = .text:0x000069E4; // type:function size:0xAC +fn_1_6A90 = .text:0x00006A90; // type:function size:0x2E8 +fn_1_6D78 = .text:0x00006D78; // type:function size:0x44 +fn_1_6DBC = .text:0x00006DBC; // type:function size:0x1F4 +fn_1_6FB0 = .text:0x00006FB0; // type:function size:0xB4 +fn_1_7064 = .text:0x00007064; // type:function size:0x178 +fn_1_71DC = .text:0x000071DC; // type:function size:0x68 +fn_1_7244 = .text:0x00007244; // type:function size:0x140 +fn_1_7384 = .text:0x00007384; // type:function size:0xA2C +fn_1_7DB0 = .text:0x00007DB0; // type:function size:0x1A4 +fn_1_7F54 = .text:0x00007F54; // type:function size:0x118 +fn_1_806C = .text:0x0000806C; // type:function size:0x8C +fn_1_80F8 = .text:0x000080F8; // type:function size:0x488 +fn_1_8580 = .text:0x00008580; // type:function size:0x5C +fn_1_85DC = .text:0x000085DC; // type:function size:0x1F8 +fn_1_87D4 = .text:0x000087D4; // type:function size:0x2E8 +fn_1_8ABC = .text:0x00008ABC; // type:function size:0x578 +fn_1_9034 = .text:0x00009034; // type:function size:0x164 +fn_1_9198 = .text:0x00009198; // type:function size:0x124 +fn_1_92BC = .text:0x000092BC; // type:function size:0x4AC +fn_1_9768 = .text:0x00009768; // type:function size:0xB4 +fn_1_981C = .text:0x0000981C; // type:function size:0x138 +fn_1_9954 = .text:0x00009954; // type:function size:0xBC +fn_1_9A10 = .text:0x00009A10; // type:function size:0x1C4 +fn_1_9BD4 = .text:0x00009BD4; // type:function size:0xE4 +fn_1_9CB8 = .text:0x00009CB8; // type:function size:0x214 +fn_1_9ECC = .text:0x00009ECC; // type:function size:0x110 +fn_1_9FDC = .text:0x00009FDC; // type:function size:0x2AC +fn_1_A288 = .text:0x0000A288; // type:function size:0x220 +fn_1_A4A8 = .text:0x0000A4A8; // type:function size:0xE4 +fn_1_A58C = .text:0x0000A58C; // type:function size:0x2BC +fn_1_A848 = .text:0x0000A848; // type:function size:0x2C8 +fn_1_AB10 = .text:0x0000AB10; // type:function size:0x2A0 +fn_1_ADB0 = .text:0x0000ADB0; // type:function size:0xAC +fn_1_AE5C = .text:0x0000AE5C; // type:function size:0x364 +fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x8C +fn_1_B24C = .text:0x0000B24C; // type:function size:0x130 +fn_1_B37C = .text:0x0000B37C; // type:function size:0x68 +fn_1_B3E4 = .text:0x0000B3E4; // type:function size:0x134 +fn_1_B518 = .text:0x0000B518; // type:function size:0x8C +fn_1_B5A4 = .text:0x0000B5A4; // type:function size:0x3E0 +fn_1_B984 = .text:0x0000B984; // type:function size:0x5C +fn_1_B9E0 = .text:0x0000B9E0; // type:function size:0xB0 +fn_1_BA90 = .text:0x0000BA90; // type:function size:0x360 +fn_1_BDF0 = .text:0x0000BDF0; // type:function size:0x158 +fn_1_BF48 = .text:0x0000BF48; // type:function size:0x328 +fn_1_C270 = .text:0x0000C270; // type:function size:0x250 +fn_1_C4C0 = .text:0x0000C4C0; // type:function size:0xB4 +fn_1_C574 = .text:0x0000C574; // type:function size:0x228 +fn_1_C79C = .text:0x0000C79C; // type:function size:0xBC +fn_1_C858 = .text:0x0000C858; // type:function size:0x2B4 +fn_1_CB0C = .text:0x0000CB0C; // type:function size:0x1C0 +fn_1_CCCC = .text:0x0000CCCC; // type:function size:0xAC +fn_1_CD78 = .text:0x0000CD78; // type:function size:0x2B8 +fn_1_D030 = .text:0x0000D030; // type:function size:0x1F4 +fn_1_D224 = .text:0x0000D224; // type:function size:0xAC +fn_1_D2D0 = .text:0x0000D2D0; // type:function size:0xC4 +fn_1_D394 = .text:0x0000D394; // type:function size:0xE4 +fn_1_D478 = .text:0x0000D478; // type:function size:0x2EC +fn_1_D764 = .text:0x0000D764; // type:function size:0x134 +fn_1_D898 = .text:0x0000D898; // type:function size:0x2C0 +fn_1_DB58 = .text:0x0000DB58; // type:function size:0xFC +fn_1_DC54 = .text:0x0000DC54; // type:function size:0x170 +fn_1_DDC4 = .text:0x0000DDC4; // type:function size:0x3F4 +fn_1_E1B8 = .text:0x0000E1B8; // type:function size:0x8C +fn_1_E244 = .text:0x0000E244; // type:function size:0xF0 +fn_1_E334 = .text:0x0000E334; // type:function size:0x23C +fn_1_E570 = .text:0x0000E570; // type:function size:0xC8 +fn_1_E638 = .text:0x0000E638; // type:function size:0x2B4 +fn_1_E8EC = .text:0x0000E8EC; // type:function size:0x140 +fn_1_EA2C = .text:0x0000EA2C; // type:function size:0x134 +fn_1_EB60 = .text:0x0000EB60; // type:function size:0x8C +fn_1_EBEC = .text:0x0000EBEC; // type:function size:0x3E0 +fn_1_EFCC = .text:0x0000EFCC; // type:function size:0x5C +fn_1_F028 = .text:0x0000F028; // type:function size:0x128 +fn_1_F150 = .text:0x0000F150; // type:function size:0xDC +fn_1_F22C = .text:0x0000F22C; // type:function size:0xD0 +fn_1_F2FC = .text:0x0000F2FC; // type:function size:0xD4 +fn_1_F3D0 = .text:0x0000F3D0; // type:function size:0x468 +fn_1_F838 = .text:0x0000F838; // type:function size:0x4 +fn_1_F83C = .text:0x0000F83C; // type:function size:0x78 +fn_1_F8B4 = .text:0x0000F8B4; // type:function size:0x548 +fn_1_FDFC = .text:0x0000FDFC; // type:function size:0xB4 +fn_1_FEB0 = .text:0x0000FEB0; // type:function size:0x228 +fn_1_100D8 = .text:0x000100D8; // type:function size:0xBC +fn_1_10194 = .text:0x00010194; // type:function size:0x2B4 +fn_1_10448 = .text:0x00010448; // type:function size:0x1BC +fn_1_10604 = .text:0x00010604; // type:function size:0xAC +fn_1_106B0 = .text:0x000106B0; // type:function size:0x29C +fn_1_1094C = .text:0x0001094C; // type:function size:0x2B4 +fn_1_10C00 = .text:0x00010C00; // type:function size:0x1F4 +fn_1_10DF4 = .text:0x00010DF4; // type:function size:0xAC +fn_1_10EA0 = .text:0x00010EA0; // type:function size:0xE4 +fn_1_10F84 = .text:0x00010F84; // type:function size:0xC4 +fn_1_11048 = .text:0x00011048; // type:function size:0xE4 +fn_1_1112C = .text:0x0001112C; // type:function size:0x2EC +fn_1_11418 = .text:0x00011418; // type:function size:0x134 +fn_1_1154C = .text:0x0001154C; // type:function size:0x2EC +fn_1_11838 = .text:0x00011838; // type:function size:0xFC +fn_1_11934 = .text:0x00011934; // type:function size:0x164 +fn_1_11A98 = .text:0x00011A98; // type:function size:0x118 +fn_1_11BB0 = .text:0x00011BB0; // type:function size:0x420 +fn_1_11FD0 = .text:0x00011FD0; // type:function size:0x8C +fn_1_1205C = .text:0x0001205C; // type:function size:0x130 +fn_1_1218C = .text:0x0001218C; // type:function size:0x23C +fn_1_123C8 = .text:0x000123C8; // type:function size:0x1A4 +fn_1_1256C = .text:0x0001256C; // type:function size:0x124 +fn_1_12690 = .text:0x00012690; // type:function size:0x8C +fn_1_1271C = .text:0x0001271C; // type:function size:0x3AC +fn_1_12AC8 = .text:0x00012AC8; // type:function size:0x48 +fn_1_12B10 = .text:0x00012B10; // type:function size:0x2C4 +fn_1_12DD4 = .text:0x00012DD4; // type:function size:0x37C +fn_1_13150 = .text:0x00013150; // type:function size:0x70 +fn_1_131C0 = .text:0x000131C0; // type:function size:0xA4 +fn_1_13264 = .text:0x00013264; // type:function size:0x5C4 +fn_1_13828 = .text:0x00013828; // type:function size:0xA4 +fn_1_138CC = .text:0x000138CC; // type:function size:0x14C +fn_1_13A18 = .text:0x00013A18; // type:function size:0x1A0 +fn_1_13BB8 = .text:0x00013BB8; // type:function size:0xB4 +fn_1_13C6C = .text:0x00013C6C; // type:function size:0x348 +fn_1_13FB4 = .text:0x00013FB4; // type:function size:0xEC +fn_1_140A0 = .text:0x000140A0; // type:function size:0xCC +fn_1_1416C = .text:0x0001416C; // type:function size:0x330 +fn_1_1449C = .text:0x0001449C; // type:function size:0x3CC +fn_1_14868 = .text:0x00014868; // type:function size:0x234 +fn_1_14A9C = .text:0x00014A9C; // type:function size:0xAC +fn_1_14B48 = .text:0x00014B48; // type:function size:0xF8 +fn_1_14C40 = .text:0x00014C40; // type:function size:0x32C +fn_1_14F6C = .text:0x00014F6C; // type:function size:0x1C8 +fn_1_15134 = .text:0x00015134; // type:function size:0xAC +fn_1_151E0 = .text:0x000151E0; // type:function size:0xE4 +fn_1_152C4 = .text:0x000152C4; // type:function size:0xE4 +fn_1_153A8 = .text:0x000153A8; // type:function size:0x2C0 +fn_1_15668 = .text:0x00015668; // type:function size:0xE4 +fn_1_1574C = .text:0x0001574C; // type:function size:0x1F8 +fn_1_15944 = .text:0x00015944; // type:function size:0xAC +fn_1_159F0 = .text:0x000159F0; // type:function size:0x2EC +fn_1_15CDC = .text:0x00015CDC; // type:function size:0x8C +fn_1_15D68 = .text:0x00015D68; // type:function size:0xF0 +fn_1_15E58 = .text:0x00015E58; // type:function size:0x118 +fn_1_15F70 = .text:0x00015F70; // type:function size:0xF0 +fn_1_16060 = .text:0x00016060; // type:function size:0x118 +fn_1_16178 = .text:0x00016178; // type:function size:0x8C +fn_1_16204 = .text:0x00016204; // type:function size:0x3AC +fn_1_165B0 = .text:0x000165B0; // type:function size:0x5C +fn_1_1660C = .text:0x0001660C; // type:function size:0x110 +fn_1_1671C = .text:0x0001671C; // type:function size:0x194 +fn_1_168B0 = .text:0x000168B0; // type:function size:0xD4 +fn_1_16984 = .text:0x00016984; // type:function size:0x50 +fn_1_169D4 = .text:0x000169D4; // type:function size:0x4 +fn_1_169D8 = .text:0x000169D8; // type:function size:0xF4 +fn_1_16ACC = .text:0x00016ACC; // type:function size:0x4F4 +fn_1_16FC0 = .text:0x00016FC0; // type:function size:0xB4 +fn_1_17074 = .text:0x00017074; // type:function size:0x208 +fn_1_1727C = .text:0x0001727C; // type:function size:0xBC +fn_1_17338 = .text:0x00017338; // type:function size:0x294 +fn_1_175CC = .text:0x000175CC; // type:function size:0x180 +fn_1_1774C = .text:0x0001774C; // type:function size:0xAC +fn_1_177F8 = .text:0x000177F8; // type:function size:0x278 +fn_1_17A70 = .text:0x00017A70; // type:function size:0x128 +fn_1_17B98 = .text:0x00017B98; // type:function size:0xAC +fn_1_17C44 = .text:0x00017C44; // type:function size:0x220 +fn_1_17E64 = .text:0x00017E64; // type:function size:0xE4 +fn_1_17F48 = .text:0x00017F48; // type:function size:0x190 +fn_1_180D8 = .text:0x000180D8; // type:function size:0xAC +fn_1_18184 = .text:0x00018184; // type:function size:0x284 +fn_1_18408 = .text:0x00018408; // type:function size:0x8C +fn_1_18494 = .text:0x00018494; // type:function size:0x23C +fn_1_186D0 = .text:0x000186D0; // type:function size:0x220 +fn_1_188F0 = .text:0x000188F0; // type:function size:0x144 +fn_1_18A34 = .text:0x00018A34; // type:function size:0x8C +fn_1_18AC0 = .text:0x00018AC0; // type:function size:0x3BC +fn_1_18E7C = .text:0x00018E7C; // type:function size:0x48 +fn_1_18EC4 = .text:0x00018EC4; // type:function size:0x274 +fn_1_19138 = .text:0x00019138; // type:function size:0x1FC +fn_1_19334 = .text:0x00019334; // type:function size:0x66C +fn_1_199A0 = .text:0x000199A0; // type:function size:0x248 +fn_1_19BE8 = .text:0x00019BE8; // type:function size:0x84 +fn_1_19C6C = .text:0x00019C6C; // type:function size:0x2A8 +fn_1_19F14 = .text:0x00019F14; // type:function size:0xB4 +fn_1_19FC8 = .text:0x00019FC8; // type:function size:0x198 +fn_1_1A160 = .text:0x0001A160; // type:function size:0x208 +fn_1_1A368 = .text:0x0001A368; // type:function size:0x1D0 +fn_1_1A538 = .text:0x0001A538; // type:function size:0x40 +fn_1_1A578 = .text:0x0001A578; // type:function size:0x254 +fn_1_1A7CC = .text:0x0001A7CC; // type:function size:0x204 +fn_1_1A9D0 = .text:0x0001A9D0; // type:function size:0xE4 +fn_1_1AAB4 = .text:0x0001AAB4; // type:function size:0x288 +fn_1_1AD3C = .text:0x0001AD3C; // type:function size:0xE4 +fn_1_1AE20 = .text:0x0001AE20; // type:function size:0x1B4 +fn_1_1AFD4 = .text:0x0001AFD4; // type:function size:0x110 +fn_1_1B0E4 = .text:0x0001B0E4; // type:function size:0x234 +fn_1_1B318 = .text:0x0001B318; // type:function size:0x8C +fn_1_1B3A4 = .text:0x0001B3A4; // type:function size:0x8C +fn_1_1B430 = .text:0x0001B430; // type:function size:0x130 +fn_1_1B560 = .text:0x0001B560; // type:function size:0xEC +fn_1_1B64C = .text:0x0001B64C; // type:function size:0x224 +fn_1_1B870 = .text:0x0001B870; // type:function size:0x9C +fn_1_1B90C = .text:0x0001B90C; // type:function size:0x50 +_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:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0xC data:4byte +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:0xC data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local +jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 +lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x33 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 +lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 +lbl_1_data_698 = .data:0x00000698; // type:object size:0x3C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x34 +lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 +lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte +lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 +lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 +lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte +lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte +lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x24 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x54 data:float +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x10 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x40 data:4byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x28 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x28 data:4byte +lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x28 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x28 data:4byte +lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x28 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x104 data:float +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x4 data:4byte +lbl_1_bss_29C = .bss:0x0000029C; // type:object size:0xA0 +lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x28 data:4byte +lbl_1_bss_364 = .bss:0x00000364; // type:object size:0x28 data:4byte +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x28 data:4byte +lbl_1_bss_3B4 = .bss:0x000003B4; // type:object size:0x28 data:4byte +lbl_1_bss_3DC = .bss:0x000003DC; // type:object size:0x104 data:4byte +lbl_1_bss_4E0 = .bss:0x000004E0; // type:object size:0x4 data:4byte +lbl_1_bss_4E4 = .bss:0x000004E4; // type:object size:0x4 data:4byte +lbl_1_bss_4E8 = .bss:0x000004E8; // type:object size:0x60 data:4byte +lbl_1_bss_548 = .bss:0x00000548; // type:object size:0xA0 +lbl_1_bss_5E8 = .bss:0x000005E8; // type:object size:0x28 data:4byte +lbl_1_bss_610 = .bss:0x00000610; // type:object size:0x28 data:4byte +lbl_1_bss_638 = .bss:0x00000638; // type:object size:0x28 data:4byte +lbl_1_bss_660 = .bss:0x00000660; // type:object size:0x28 data:4byte +lbl_1_bss_688 = .bss:0x00000688; // type:object size:0x108 data:float +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x4 data:4byte +lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x4 data:4byte +lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x28 data:4byte +lbl_1_bss_7C0 = .bss:0x000007C0; // type:object size:0x28 data:4byte +lbl_1_bss_7E8 = .bss:0x000007E8; // type:object size:0x28 data:4byte +lbl_1_bss_810 = .bss:0x00000810; // type:object size:0x28 data:4byte +lbl_1_bss_838 = .bss:0x00000838; // type:object size:0x28 data:4byte +lbl_1_bss_860 = .bss:0x00000860; // type:object size:0x108 data:4byte +lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x4 data:4byte +lbl_1_bss_96C = .bss:0x0000096C; // type:object size:0x28 data:4byte +lbl_1_bss_994 = .bss:0x00000994; // type:object size:0x28 data:4byte +lbl_1_bss_9BC = .bss:0x000009BC; // type:object size:0x28 data:4byte +lbl_1_bss_9E4 = .bss:0x000009E4; // type:object size:0x28 data:4byte +lbl_1_bss_A0C = .bss:0x00000A0C; // type:object size:0x28 data:4byte +lbl_1_bss_A34 = .bss:0x00000A34; // type:object size:0x104 data:4byte +lbl_1_bss_B38 = .bss:0x00000B38; // type:object size:0x4 data:4byte +lbl_1_bss_B3C = .bss:0x00000B3C; // type:object size:0x4 data:4byte +lbl_1_bss_B40 = .bss:0x00000B40; // type:object size:0x4 data:4byte +lbl_1_bss_B44 = .bss:0x00000B44; // type:object size:0x28 data:4byte +lbl_1_bss_B6C = .bss:0x00000B6C; // type:object size:0x28 data:4byte +lbl_1_bss_B94 = .bss:0x00000B94; // type:object size:0x28 data:4byte +lbl_1_bss_BBC = .bss:0x00000BBC; // type:object size:0x28 data:4byte +lbl_1_bss_BE4 = .bss:0x00000BE4; // type:object size:0x28 data:4byte +lbl_1_bss_C0C = .bss:0x00000C0C; // type:object size:0x104 data:float +lbl_1_bss_D10 = .bss:0x00000D10; // type:object size:0x4 data:4byte +lbl_1_bss_D14 = .bss:0x00000D14; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/mstory3Dll/splits.txt b/config/GMPJ01_00/rels/mstory3Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/mstory3Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mstory3Dll/symbols.txt b/config/GMPJ01_00/rels/mstory3Dll/symbols.txt new file mode 100644 index 00000000..9835d8ae --- /dev/null +++ b/config/GMPJ01_00/rels/mstory3Dll/symbols.txt @@ -0,0 +1,549 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 +_prolog = .text:0x0000036C; // type:function size:0x54 scope:global +_epilog = .text:0x000003C0; // type:function size:0x4C scope:global +fn_1_40C = .text:0x0000040C; // type:function size:0xE4 +fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 +fn_1_5FC = .text:0x000005FC; // type:function size:0x20 +fn_1_61C = .text:0x0000061C; // type:function size:0xD8 +fn_1_6F4 = .text:0x000006F4; // type:function size:0xC8 +fn_1_7BC = .text:0x000007BC; // type:function size:0xBC +fn_1_878 = .text:0x00000878; // type:function size:0xBC +fn_1_934 = .text:0x00000934; // type:function size:0x4 +fn_1_938 = .text:0x00000938; // type:function size:0x20 +fn_1_958 = .text:0x00000958; // type:function size:0x28 +fn_1_980 = .text:0x00000980; // type:function size:0x20 +fn_1_9A0 = .text:0x000009A0; // type:function size:0x24 +fn_1_9C4 = .text:0x000009C4; // type:function size:0x20 +fn_1_9E4 = .text:0x000009E4; // type:function size:0xA48 +fn_1_142C = .text:0x0000142C; // type:function size:0x1F8 +fn_1_1624 = .text:0x00001624; // type:function size:0x210 +fn_1_1834 = .text:0x00001834; // type:function size:0x1F0 +fn_1_1A24 = .text:0x00001A24; // type:function size:0x2C +fn_1_1A50 = .text:0x00001A50; // type:function size:0x60 +fn_1_1AB0 = .text:0x00001AB0; // type:function size:0x68 +fn_1_1B18 = .text:0x00001B18; // type:function size:0xAC +fn_1_1BC4 = .text:0x00001BC4; // type:function size:0xC4 +fn_1_1C88 = .text:0x00001C88; // type:function size:0xBC +fn_1_1D44 = .text:0x00001D44; // type:function size:0x34 +fn_1_1D78 = .text:0x00001D78; // type:function size:0x40 +fn_1_1DB8 = .text:0x00001DB8; // type:function size:0x70 +fn_1_1E28 = .text:0x00001E28; // type:function size:0x178 +fn_1_1FA0 = .text:0x00001FA0; // type:function size:0x2E0 +fn_1_2280 = .text:0x00002280; // type:function size:0x90 +fn_1_2310 = .text:0x00002310; // type:function size:0xC8 +fn_1_23D8 = .text:0x000023D8; // type:function size:0x48 +fn_1_2420 = .text:0x00002420; // type:function size:0x54 +fn_1_2474 = .text:0x00002474; // type:function size:0x3C0 +fn_1_2834 = .text:0x00002834; // type:function size:0x10 +fn_1_2844 = .text:0x00002844; // type:function size:0x10 +fn_1_2854 = .text:0x00002854; // type:function size:0xB8 +fn_1_290C = .text:0x0000290C; // type:function size:0x120 +fn_1_2A2C = .text:0x00002A2C; // type:function size:0x3A8 +fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x7F4 +fn_1_35C8 = .text:0x000035C8; // type:function size:0x88 +fn_1_3650 = .text:0x00003650; // type:function size:0x94 +fn_1_36E4 = .text:0x000036E4; // type:function size:0x58 +fn_1_373C = .text:0x0000373C; // type:function size:0x8C +fn_1_37C8 = .text:0x000037C8; // type:function size:0xEC +fn_1_38B4 = .text:0x000038B4; // type:function size:0xC4 +fn_1_3978 = .text:0x00003978; // type:function size:0x3C +fn_1_39B4 = .text:0x000039B4; // type:function size:0x44 +fn_1_39F8 = .text:0x000039F8; // type:function size:0x26C +fn_1_3C64 = .text:0x00003C64; // type:function size:0x26C +fn_1_3ED0 = .text:0x00003ED0; // type:function size:0x27C +fn_1_414C = .text:0x0000414C; // type:function size:0x2B4 +fn_1_4400 = .text:0x00004400; // type:function size:0x46C +fn_1_486C = .text:0x0000486C; // type:function size:0x454 +fn_1_4CC0 = .text:0x00004CC0; // type:function size:0x48C +fn_1_514C = .text:0x0000514C; // type:function size:0x658 +fn_1_57A4 = .text:0x000057A4; // type:function size:0x4C4 +fn_1_5C68 = .text:0x00005C68; // type:function size:0x4FC +fn_1_6164 = .text:0x00006164; // type:function size:0x6C8 +fn_1_682C = .text:0x0000682C; // type:function size:0xC4 +fn_1_68F0 = .text:0x000068F0; // type:function size:0x188 +fn_1_6A78 = .text:0x00006A78; // type:function size:0x34 +fn_1_6AAC = .text:0x00006AAC; // type:function size:0x40 +fn_1_6AEC = .text:0x00006AEC; // type:function size:0xAC +fn_1_6B98 = .text:0x00006B98; // type:function size:0x1E8 +fn_1_6D80 = .text:0x00006D80; // type:function size:0xB4 +fn_1_6E34 = .text:0x00006E34; // type:function size:0x1D0 +fn_1_7004 = .text:0x00007004; // type:function size:0x394 +fn_1_7398 = .text:0x00007398; // type:function size:0x640 +fn_1_79D8 = .text:0x000079D8; // type:function size:0x4B0 +fn_1_7E88 = .text:0x00007E88; // type:function size:0x2C4 +fn_1_814C = .text:0x0000814C; // type:function size:0x118 +fn_1_8264 = .text:0x00008264; // type:function size:0x7C +fn_1_82E0 = .text:0x000082E0; // type:function size:0x8C +fn_1_836C = .text:0x0000836C; // type:function size:0xF0 +fn_1_845C = .text:0x0000845C; // type:function size:0x2FC +fn_1_8758 = .text:0x00008758; // type:function size:0x100 +fn_1_8858 = .text:0x00008858; // type:function size:0xF0 +fn_1_8948 = .text:0x00008948; // type:function size:0xF0 +fn_1_8A38 = .text:0x00008A38; // type:function size:0xF0 +fn_1_8B28 = .text:0x00008B28; // type:function size:0xF0 +fn_1_8C18 = .text:0x00008C18; // type:function size:0x7C +fn_1_8C94 = .text:0x00008C94; // type:function size:0x4AC +fn_1_9140 = .text:0x00009140; // type:function size:0x88 +fn_1_91C8 = .text:0x000091C8; // type:function size:0x58 +fn_1_9220 = .text:0x00009220; // type:function size:0x1B0 +fn_1_93D0 = .text:0x000093D0; // type:function size:0xB8 +fn_1_9488 = .text:0x00009488; // type:function size:0x228 +fn_1_96B0 = .text:0x000096B0; // type:function size:0xB8 +fn_1_9768 = .text:0x00009768; // type:function size:0x228 +fn_1_9990 = .text:0x00009990; // type:function size:0x78 +fn_1_9A08 = .text:0x00009A08; // type:function size:0x5C +fn_1_9A64 = .text:0x00009A64; // type:function size:0x8B0 +fn_1_A314 = .text:0x0000A314; // type:function size:0x1DC +fn_1_A4F0 = .text:0x0000A4F0; // type:function size:0x6BC +fn_1_ABAC = .text:0x0000ABAC; // type:function size:0xAC4 +fn_1_B670 = .text:0x0000B670; // type:function size:0x118 +fn_1_B788 = .text:0x0000B788; // type:function size:0x6D4 +fn_1_BE5C = .text:0x0000BE5C; // type:function size:0x104 +fn_1_BF60 = .text:0x0000BF60; // type:function size:0x100 +fn_1_C060 = .text:0x0000C060; // type:function size:0xE0C +fn_1_CE6C = .text:0x0000CE6C; // type:function size:0x620 +fn_1_D48C = .text:0x0000D48C; // type:function size:0xAC +fn_1_D538 = .text:0x0000D538; // type:function size:0x1E0 +fn_1_D718 = .text:0x0000D718; // type:function size:0xC0 +fn_1_D7D8 = .text:0x0000D7D8; // type:function size:0x390 +fn_1_DB68 = .text:0x0000DB68; // type:function size:0x5F8 +fn_1_E160 = .text:0x0000E160; // type:function size:0x1BD0 +fn_1_FD30 = .text:0x0000FD30; // type:function size:0x150 +fn_1_FE80 = .text:0x0000FE80; // type:function size:0xFC +fn_1_FF7C = .text:0x0000FF7C; // type:function size:0x3F0 +fn_1_1036C = .text:0x0001036C; // type:function size:0xA08 +fn_1_10D74 = .text:0x00010D74; // type:function size:0xA20 +fn_1_11794 = .text:0x00011794; // type:function size:0xA0 +fn_1_11834 = .text:0x00011834; // type:function size:0xBA4 +fn_1_123D8 = .text:0x000123D8; // type:function size:0x44 +fn_1_1241C = .text:0x0001241C; // type:function size:0x4 +fn_1_12420 = .text:0x00012420; // type:function size:0x678 +fn_1_12A98 = .text:0x00012A98; // type:function size:0x170 +fn_1_12C08 = .text:0x00012C08; // type:function size:0x1A4 +fn_1_12DAC = .text:0x00012DAC; // type:function size:0x2FC +fn_1_130A8 = .text:0x000130A8; // type:function size:0xD4 +fn_1_1317C = .text:0x0001317C; // type:function size:0x130 +fn_1_132AC = .text:0x000132AC; // type:function size:0x65C +fn_1_13908 = .text:0x00013908; // type:function size:0x130 +fn_1_13A38 = .text:0x00013A38; // type:function size:0x4 +fn_1_13A3C = .text:0x00013A3C; // type:function size:0x23C +fn_1_13C78 = .text:0x00013C78; // type:function size:0xC0 +fn_1_13D38 = .text:0x00013D38; // type:function size:0x60 +fn_1_13D98 = .text:0x00013D98; // type:function size:0x308 +fn_1_140A0 = .text:0x000140A0; // type:function size:0x38C +fn_1_1442C = .text:0x0001442C; // type:function size:0x140 +fn_1_1456C = .text:0x0001456C; // type:function size:0x118 +fn_1_14684 = .text:0x00014684; // type:function size:0x7C +fn_1_14700 = .text:0x00014700; // type:function size:0x48 +fn_1_14748 = .text:0x00014748; // type:function size:0x724 +fn_1_14E6C = .text:0x00014E6C; // type:function size:0x114 +fn_1_14F80 = .text:0x00014F80; // type:function size:0x54 +fn_1_14FD4 = .text:0x00014FD4; // type:function size:0x31C +fn_1_152F0 = .text:0x000152F0; // type:function size:0x160 +fn_1_15450 = .text:0x00015450; // type:function size:0x3A0 +fn_1_157F0 = .text:0x000157F0; // type:function size:0x1B4 +fn_1_159A4 = .text:0x000159A4; // type:function size:0x268 +fn_1_15C0C = .text:0x00015C0C; // type:function size:0xFC +fn_1_15D08 = .text:0x00015D08; // type:function size:0xC0 +fn_1_15DC8 = .text:0x00015DC8; // type:function size:0x3F0 +fn_1_161B8 = .text:0x000161B8; // type:function size:0x3BC +fn_1_16574 = .text:0x00016574; // type:function size:0x54 +fn_1_165C8 = .text:0x000165C8; // type:function size:0x35C +fn_1_16924 = .text:0x00016924; // type:function size:0x1B0 +fn_1_16AD4 = .text:0x00016AD4; // type:function size:0x400 +fn_1_16ED4 = .text:0x00016ED4; // type:function size:0x258 +fn_1_1712C = .text:0x0001712C; // type:function size:0x160 +fn_1_1728C = .text:0x0001728C; // type:function size:0x1F8 +fn_1_17484 = .text:0x00017484; // type:function size:0xEC +fn_1_17570 = .text:0x00017570; // type:function size:0x850 +fn_1_17DC0 = .text:0x00017DC0; // type:function size:0x2C0 +fn_1_18080 = .text:0x00018080; // type:function size:0x9C +fn_1_1811C = .text:0x0001811C; // type:function size:0x218 +fn_1_18334 = .text:0x00018334; // type:function size:0x1B4 +fn_1_184E8 = .text:0x000184E8; // type:function size:0x70 +fn_1_18558 = .text:0x00018558; // type:function size:0x110 +fn_1_18668 = .text:0x00018668; // type:function size:0x694 +fn_1_18CFC = .text:0x00018CFC; // type:function size:0x29C +fn_1_18F98 = .text:0x00018F98; // type:function size:0x1AC +fn_1_19144 = .text:0x00019144; // type:function size:0xD0 +fn_1_19214 = .text:0x00019214; // type:function size:0x28C +fn_1_194A0 = .text:0x000194A0; // type:function size:0xF0 +fn_1_19590 = .text:0x00019590; // type:function size:0x224 +fn_1_197B4 = .text:0x000197B4; // type:function size:0x854 +fn_1_1A008 = .text:0x0001A008; // type:function size:0x1EF4 +fn_1_1BEFC = .text:0x0001BEFC; // type:function size:0x3F8 +fn_1_1C2F4 = .text:0x0001C2F4; // type:function size:0x16C +fn_1_1C460 = .text:0x0001C460; // type:function size:0xD4 +fn_1_1C534 = .text:0x0001C534; // type:function size:0x3E0 +fn_1_1C914 = .text:0x0001C914; // type:function size:0x184 +fn_1_1CA98 = .text:0x0001CA98; // type:function size:0xE4 +fn_1_1CB7C = .text:0x0001CB7C; // type:function size:0xE0 +fn_1_1CC5C = .text:0x0001CC5C; // type:function size:0x104 +fn_1_1CD60 = .text:0x0001CD60; // type:function size:0x90 +fn_1_1CDF0 = .text:0x0001CDF0; // type:function size:0x334 +fn_1_1D124 = .text:0x0001D124; // type:function size:0x518 +fn_1_1D63C = .text:0x0001D63C; // type:function size:0x140 +fn_1_1D77C = .text:0x0001D77C; // type:function size:0x150 +fn_1_1D8CC = .text:0x0001D8CC; // type:function size:0x98 +fn_1_1D964 = .text:0x0001D964; // type:function size:0x100 +fn_1_1DA64 = .text:0x0001DA64; // type:function size:0x48 +fn_1_1DAAC = .text:0x0001DAAC; // type:function size:0x3A0 +fn_1_1DE4C = .text:0x0001DE4C; // type:function size:0x8C +fn_1_1DED8 = .text:0x0001DED8; // type:function size:0x21C +fn_1_1E0F4 = .text:0x0001E0F4; // type:function size:0x14 +fn_1_1E108 = .text:0x0001E108; // type:function size:0x10 +fn_1_1E118 = .text:0x0001E118; // type:function size:0x14 +fn_1_1E12C = .text:0x0001E12C; // type:function size:0x10 +fn_1_1E13C = .text:0x0001E13C; // type:function size:0x41C +fn_1_1E558 = .text:0x0001E558; // type:function size:0x2C8 +fn_1_1E820 = .text:0x0001E820; // type:function size:0x8E0 +_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:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x20 data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte +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_214 = .rodata:0x00000214; // 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:0x8 data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x2C data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xF +lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0x15 +lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float +lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 +lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1E +lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x11 +jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 +lbl_1_data_78C = .data:0x0000078C; // type:object size:0x54 +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:float +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:float +lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:float +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:float +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:float +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x1340 +lbl_1_bss_1408 = .bss:0x00001408; // type:object size:0x18 +lbl_1_bss_1420 = .bss:0x00001420; // type:object size:0x4 data:4byte +lbl_1_bss_1424 = .bss:0x00001424; // type:object size:0x4 data:float +lbl_1_bss_1428 = .bss:0x00001428; // type:object size:0x10 data:4byte +lbl_1_bss_1438 = .bss:0x00001438; // type:object size:0x10 +lbl_1_bss_1448 = .bss:0x00001448; // type:object size:0x10 data:4byte +lbl_1_bss_1458 = .bss:0x00001458; // type:object size:0x10 data:4byte +lbl_1_bss_1468 = .bss:0x00001468; // type:object size:0x28 data:4byte +lbl_1_bss_1490 = .bss:0x00001490; // type:object size:0xA0 data:4byte +lbl_1_bss_1530 = .bss:0x00001530; // type:object size:0x28 data:4byte +lbl_1_bss_1558 = .bss:0x00001558; // type:object size:0x28 data:4byte +lbl_1_bss_1580 = .bss:0x00001580; // type:object size:0x350 data:4byte +lbl_1_bss_18D0 = .bss:0x000018D0; // type:object size:0x4 data:4byte +lbl_1_bss_18D4 = .bss:0x000018D4; // type:object size:0x4 data:4byte +lbl_1_bss_18D8 = .bss:0x000018D8; // type:object size:0xC data:4byte +lbl_1_bss_18E4 = .bss:0x000018E4; // type:object size:0x8 data:4byte +lbl_1_bss_18EC = .bss:0x000018EC; // type:object size:0x8 data:4byte +lbl_1_bss_18F4 = .bss:0x000018F4; // type:object size:0xA0 +lbl_1_bss_1994 = .bss:0x00001994; // type:object size:0x28 data:4byte +lbl_1_bss_19BC = .bss:0x000019BC; // type:object size:0x28 data:4byte +lbl_1_bss_19E4 = .bss:0x000019E4; // type:object size:0x28 data:4byte +lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2DC data:float +lbl_1_bss_1CE8 = .bss:0x00001CE8; // type:object size:0x2 data:2byte +lbl_1_bss_1CEC = .bss:0x00001CEC; // type:object size:0x4 data:4byte +lbl_1_bss_1CF0 = .bss:0x00001CF0; // type:object size:0x4 data:4byte +lbl_1_bss_1CF4 = .bss:0x00001CF4; // type:object size:0x4 data:4byte +lbl_1_bss_1CF8 = .bss:0x00001CF8; // type:object size:0x58 data:2byte diff --git a/config/GMPJ01_00/rels/mstory4Dll/splits.txt b/config/GMPJ01_00/rels/mstory4Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/mstory4Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mstory4Dll/symbols.txt b/config/GMPJ01_00/rels/mstory4Dll/symbols.txt new file mode 100644 index 00000000..59a31229 --- /dev/null +++ b/config/GMPJ01_00/rels/mstory4Dll/symbols.txt @@ -0,0 +1,65 @@ +fn_1_0 = .text:0x00000000; // type:function size:0xEC +fn_1_EC = .text:0x000000EC; // type:function size:0x115C +_prolog = .text:0x00001248; // type:function size:0x54 scope:global +_epilog = .text:0x0000129C; // type:function size:0x4C scope:global +fn_1_12E8 = .text:0x000012E8; // type:function size:0xB8 +fn_1_13A0 = .text:0x000013A0; // type:function size:0x68C +_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:0x1 data:byte +lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x1C data:4byte +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:0x1 data:byte +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_data_0 = .data:0x00000000; // type:object size:0x3C0 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0xF data:string +lbl_1_data_3CF = .data:0x000003CF; // type:object size:0x14 data:string +lbl_1_data_3E3 = .data:0x000003E3; // type:object size:0x15 data:string +lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x11 data:string +lbl_1_data_409 = .data:0x00000409; // type:object size:0x12 data:string +lbl_1_data_41B = .data:0x0000041B; // type:object size:0x15 +lbl_1_data_430 = .data:0x00000430; // type:object size:0x18 +lbl_1_data_448 = .data:0x00000448; // type:object size:0x17 data:string +lbl_1_data_45F = .data:0x0000045F; // type:object size:0x24 data:string +lbl_1_data_483 = .data:0x00000483; // type:object size:0x23 data:string +lbl_1_data_4A6 = .data:0x000004A6; // type:object size:0x27 data:string +lbl_1_data_4CD = .data:0x000004CD; // type:object size:0x26 data:string +lbl_1_data_4F3 = .data:0x000004F3; // type:object size:0x29 data:string +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x1C +lbl_1_data_538 = .data:0x00000538; // type:object size:0x1C +lbl_1_data_554 = .data:0x00000554; // type:object size:0x18 data:4byte +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x1C +lbl_1_data_588 = .data:0x00000588; // type:object size:0x7 data:string +lbl_1_data_58F = .data:0x0000058F; // type:object size:0x33 data:string +lbl_1_data_5C2 = .data:0x000005C2; // type:object size:0x3 data:string +lbl_1_data_5C5 = .data:0x000005C5; // type:object size:0x9 data:string +lbl_1_data_5CE = .data:0x000005CE; // type:object size:0xB data:string +lbl_1_data_5D9 = .data:0x000005D9; // type:object size:0xB data:string +lbl_1_data_5E4 = .data:0x000005E4; // type:object size:0xC +jumptable_1_data_5F0 = .data:0x000005F0; // type:object size:0x1C scope:local +lbl_1_data_60C = .data:0x0000060C; // type:object size:0x6 data:string +lbl_1_data_612 = .data:0x00000612; // type:object size:0x6 data:string +lbl_1_data_618 = .data:0x00000618; // type:object size:0x6 data:string +lbl_1_data_61E = .data:0x0000061E; // type:object size:0x6 data:string +lbl_1_data_624 = .data:0x00000624; // type:object size:0x6 data:string +lbl_1_data_62A = .data:0x0000062A; // type:object size:0x7 data:string +lbl_1_data_631 = .data:0x00000631; // type:object size:0x6 data:string +lbl_1_data_637 = .data:0x00000637; // type:object size:0x9 +lbl_1_data_640 = .data:0x00000640; // type:object size:0x20 +lbl_1_data_660 = .data:0x00000660; // type:object size:0x16 data:string +lbl_1_data_676 = .data:0x00000676; // type:object size:0x11 data:string +lbl_1_data_687 = .data:0x00000687; // type:object size:0x10 data:string +lbl_1_data_697 = .data:0x00000697; // type:object size:0xD data:string +lbl_1_data_6A4 = .data:0x000006A4; // type:object size:0x10 data:string +lbl_1_data_6B4 = .data:0x000006B4; // type:object size:0xD data:string +lbl_1_data_6C1 = .data:0x000006C1; // type:object size:0x1B data:string +lbl_1_data_6DC = .data:0x000006DC; // type:object size:0x1A data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/mstoryDll/splits.txt b/config/GMPJ01_00/rels/mstoryDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/mstoryDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mstoryDll/symbols.txt b/config/GMPJ01_00/rels/mstoryDll/symbols.txt new file mode 100644 index 00000000..e9076690 --- /dev/null +++ b/config/GMPJ01_00/rels/mstoryDll/symbols.txt @@ -0,0 +1,498 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x4C +fn_1_4C = .text:0x0000004C; // type:function size:0x58 +fn_1_A4 = .text:0x000000A4; // type:function size:0x344 +_prolog = .text:0x000003E8; // type:function size:0x54 scope:global +_epilog = .text:0x0000043C; // type:function size:0x4C scope:global +fn_1_488 = .text:0x00000488; // type:function size:0x1D0 +fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +fn_1_828 = .text:0x00000828; // type:function size:0x28 +fn_1_850 = .text:0x00000850; // type:function size:0x20 +fn_1_870 = .text:0x00000870; // type:function size:0xD8 +fn_1_948 = .text:0x00000948; // type:function size:0xC8 +fn_1_A10 = .text:0x00000A10; // type:function size:0xBC +fn_1_ACC = .text:0x00000ACC; // type:function size:0xBC +fn_1_B88 = .text:0x00000B88; // type:function size:0x4 +fn_1_B8C = .text:0x00000B8C; // type:function size:0x20 +fn_1_BAC = .text:0x00000BAC; // type:function size:0x28 +fn_1_BD4 = .text:0x00000BD4; // type:function size:0x20 +fn_1_BF4 = .text:0x00000BF4; // type:function size:0x24 +fn_1_C18 = .text:0x00000C18; // type:function size:0x20 +fn_1_C38 = .text:0x00000C38; // type:function size:0xA48 +fn_1_1680 = .text:0x00001680; // type:function size:0x1B4 +fn_1_1834 = .text:0x00001834; // type:function size:0x1D0 +fn_1_1A04 = .text:0x00001A04; // type:function size:0x60 +fn_1_1A64 = .text:0x00001A64; // type:function size:0x68 +fn_1_1ACC = .text:0x00001ACC; // type:function size:0xAC +fn_1_1B78 = .text:0x00001B78; // type:function size:0xBC +fn_1_1C34 = .text:0x00001C34; // type:function size:0xB4 +fn_1_1CE8 = .text:0x00001CE8; // type:function size:0x34 +fn_1_1D1C = .text:0x00001D1C; // type:function size:0x40 +fn_1_1D5C = .text:0x00001D5C; // type:function size:0x70 +fn_1_1DCC = .text:0x00001DCC; // type:function size:0x178 +fn_1_1F44 = .text:0x00001F44; // type:function size:0x2E0 +fn_1_2224 = .text:0x00002224; // type:function size:0x90 +fn_1_22B4 = .text:0x000022B4; // type:function size:0x48 +fn_1_22FC = .text:0x000022FC; // type:function size:0x54 +fn_1_2350 = .text:0x00002350; // type:function size:0x3C0 +fn_1_2710 = .text:0x00002710; // type:function size:0x10 +fn_1_2720 = .text:0x00002720; // type:function size:0x10 +fn_1_2730 = .text:0x00002730; // type:function size:0xB8 +fn_1_27E8 = .text:0x000027E8; // type:function size:0x120 +fn_1_2908 = .text:0x00002908; // type:function size:0x3A8 +fn_1_2CB0 = .text:0x00002CB0; // type:function size:0x7F4 +fn_1_34A4 = .text:0x000034A4; // type:function size:0x88 +fn_1_352C = .text:0x0000352C; // type:function size:0x94 +fn_1_35C0 = .text:0x000035C0; // type:function size:0x58 +fn_1_3618 = .text:0x00003618; // type:function size:0xEC +fn_1_3704 = .text:0x00003704; // type:function size:0xC4 +fn_1_37C8 = .text:0x000037C8; // type:function size:0x3C +fn_1_3804 = .text:0x00003804; // type:function size:0x44 +fn_1_3848 = .text:0x00003848; // type:function size:0x274 +fn_1_3ABC = .text:0x00003ABC; // type:function size:0x26C +fn_1_3D28 = .text:0x00003D28; // type:function size:0x22C +fn_1_3F54 = .text:0x00003F54; // type:function size:0x27C +fn_1_41D0 = .text:0x000041D0; // type:function size:0x2B4 +fn_1_4484 = .text:0x00004484; // type:function size:0x46C +fn_1_48F0 = .text:0x000048F0; // type:function size:0x454 +fn_1_4D44 = .text:0x00004D44; // type:function size:0x48C +fn_1_51D0 = .text:0x000051D0; // type:function size:0x658 +fn_1_5828 = .text:0x00005828; // type:function size:0x4C4 +fn_1_5CEC = .text:0x00005CEC; // type:function size:0x4FC +fn_1_61E8 = .text:0x000061E8; // type:function size:0x6C8 +fn_1_68B0 = .text:0x000068B0; // type:function size:0xC4 +fn_1_6974 = .text:0x00006974; // type:function size:0x188 +fn_1_6AFC = .text:0x00006AFC; // type:function size:0x34 +fn_1_6B30 = .text:0x00006B30; // type:function size:0x40 +fn_1_6B70 = .text:0x00006B70; // type:function size:0xAC +fn_1_6C1C = .text:0x00006C1C; // type:function size:0x1E8 +fn_1_6E04 = .text:0x00006E04; // type:function size:0xB4 +fn_1_6EB8 = .text:0x00006EB8; // type:function size:0x170 +fn_1_7028 = .text:0x00007028; // type:function size:0x68 +fn_1_7090 = .text:0x00007090; // type:function size:0xA4 +fn_1_7134 = .text:0x00007134; // type:function size:0x1E8 +fn_1_731C = .text:0x0000731C; // type:function size:0x69C +fn_1_79B8 = .text:0x000079B8; // type:function size:0x128 +fn_1_7AE0 = .text:0x00007AE0; // type:function size:0x390 +fn_1_7E70 = .text:0x00007E70; // type:function size:0x5C +fn_1_7ECC = .text:0x00007ECC; // type:function size:0x1C4 +fn_1_8090 = .text:0x00008090; // type:function size:0x320 +fn_1_83B0 = .text:0x000083B0; // type:function size:0x58 +fn_1_8408 = .text:0x00008408; // type:function size:0x3D4 +fn_1_87DC = .text:0x000087DC; // type:function size:0x268 +fn_1_8A44 = .text:0x00008A44; // type:function size:0x9C +fn_1_8AE0 = .text:0x00008AE0; // type:function size:0x2E0 +fn_1_8DC0 = .text:0x00008DC0; // type:function size:0xAC +fn_1_8E6C = .text:0x00008E6C; // type:function size:0xFC +fn_1_8F68 = .text:0x00008F68; // type:function size:0x36C +fn_1_92D4 = .text:0x000092D4; // type:function size:0x134 +fn_1_9408 = .text:0x00009408; // type:function size:0x310 +fn_1_9718 = .text:0x00009718; // type:function size:0x18C +fn_1_98A4 = .text:0x000098A4; // type:function size:0x88 +fn_1_992C = .text:0x0000992C; // type:function size:0x3DC +fn_1_9D08 = .text:0x00009D08; // type:function size:0x300 +fn_1_A008 = .text:0x0000A008; // type:function size:0xE4 +fn_1_A0EC = .text:0x0000A0EC; // type:function size:0x38C +fn_1_A478 = .text:0x0000A478; // type:function size:0x8C +fn_1_A504 = .text:0x0000A504; // type:function size:0xF0 +fn_1_A5F4 = .text:0x0000A5F4; // type:function size:0x23C +fn_1_A830 = .text:0x0000A830; // type:function size:0xC8 +fn_1_A8F8 = .text:0x0000A8F8; // type:function size:0x2B4 +fn_1_ABAC = .text:0x0000ABAC; // type:function size:0x150 +fn_1_ACFC = .text:0x0000ACFC; // type:function size:0x134 +fn_1_AE30 = .text:0x0000AE30; // type:function size:0x8C +fn_1_AEBC = .text:0x0000AEBC; // type:function size:0x374 +fn_1_B230 = .text:0x0000B230; // type:function size:0x5C +fn_1_B28C = .text:0x0000B28C; // type:function size:0x214 +fn_1_B4A0 = .text:0x0000B4A0; // type:function size:0xE8 +fn_1_B588 = .text:0x0000B588; // type:function size:0xE8 +fn_1_B670 = .text:0x0000B670; // type:function size:0x11C +fn_1_B78C = .text:0x0000B78C; // type:function size:0x13C +fn_1_B8C8 = .text:0x0000B8C8; // type:function size:0x4 +fn_1_B8CC = .text:0x0000B8CC; // type:function size:0x104 +fn_1_B9D0 = .text:0x0000B9D0; // type:function size:0x208 +fn_1_BBD8 = .text:0x0000BBD8; // type:function size:0x788 +fn_1_C360 = .text:0x0000C360; // type:function size:0xB4 +fn_1_C414 = .text:0x0000C414; // type:function size:0x2F4 +fn_1_C708 = .text:0x0000C708; // type:function size:0xBC +fn_1_C7C4 = .text:0x0000C7C4; // type:function size:0x384 +fn_1_CB48 = .text:0x0000CB48; // type:function size:0x300 +fn_1_CE48 = .text:0x0000CE48; // type:function size:0xAC +fn_1_CEF4 = .text:0x0000CEF4; // type:function size:0xE4 +fn_1_CFD8 = .text:0x0000CFD8; // type:function size:0xC4 +fn_1_D09C = .text:0x0000D09C; // type:function size:0xE4 +fn_1_D180 = .text:0x0000D180; // type:function size:0x3FC +fn_1_D57C = .text:0x0000D57C; // type:function size:0x134 +fn_1_D6B0 = .text:0x0000D6B0; // type:function size:0x2F8 +fn_1_D9A8 = .text:0x0000D9A8; // type:function size:0xFC +fn_1_DAA4 = .text:0x0000DAA4; // type:function size:0x164 +fn_1_DC08 = .text:0x0000DC08; // type:function size:0x118 +fn_1_DD20 = .text:0x0000DD20; // type:function size:0xE4 +fn_1_DE04 = .text:0x0000DE04; // type:function size:0x424 +fn_1_E228 = .text:0x0000E228; // type:function size:0x8C +fn_1_E2B4 = .text:0x0000E2B4; // type:function size:0x130 +fn_1_E3E4 = .text:0x0000E3E4; // type:function size:0x23C +fn_1_E620 = .text:0x0000E620; // type:function size:0xF0 +fn_1_E710 = .text:0x0000E710; // type:function size:0x118 +fn_1_E828 = .text:0x0000E828; // type:function size:0x8C +fn_1_E8B4 = .text:0x0000E8B4; // type:function size:0x34C +fn_1_EC00 = .text:0x0000EC00; // type:function size:0x5C +fn_1_EC5C = .text:0x0000EC5C; // type:function size:0x384 +fn_1_EFE0 = .text:0x0000EFE0; // type:function size:0x70 +fn_1_F050 = .text:0x0000F050; // type:function size:0x14C +fn_1_F19C = .text:0x0000F19C; // type:function size:0x5E4 +fn_1_F780 = .text:0x0000F780; // type:function size:0xEC +fn_1_F86C = .text:0x0000F86C; // type:function size:0xA4 +fn_1_F910 = .text:0x0000F910; // type:function size:0x1D4 +fn_1_FAE4 = .text:0x0000FAE4; // type:function size:0x238 +fn_1_FD1C = .text:0x0000FD1C; // type:function size:0xB4 +fn_1_FDD0 = .text:0x0000FDD0; // type:function size:0x4C8 +fn_1_10298 = .text:0x00010298; // type:function size:0xEC +fn_1_10384 = .text:0x00010384; // type:function size:0xCC +fn_1_10450 = .text:0x00010450; // type:function size:0xFC +fn_1_1054C = .text:0x0001054C; // type:function size:0xAC +fn_1_105F8 = .text:0x000105F8; // type:function size:0x300 +fn_1_108F8 = .text:0x000108F8; // type:function size:0x374 +fn_1_10C6C = .text:0x00010C6C; // type:function size:0xE4 +fn_1_10D50 = .text:0x00010D50; // type:function size:0x1D4 +fn_1_10F24 = .text:0x00010F24; // type:function size:0xAC +fn_1_10FD0 = .text:0x00010FD0; // type:function size:0x2D0 +fn_1_112A0 = .text:0x000112A0; // type:function size:0x8C +fn_1_1132C = .text:0x0001132C; // type:function size:0xF0 +fn_1_1141C = .text:0x0001141C; // type:function size:0x118 +fn_1_11534 = .text:0x00011534; // type:function size:0xF0 +fn_1_11624 = .text:0x00011624; // type:function size:0x10C +fn_1_11730 = .text:0x00011730; // type:function size:0x35C +fn_1_11A8C = .text:0x00011A8C; // type:function size:0x5C +fn_1_11AE8 = .text:0x00011AE8; // type:function size:0x184 +fn_1_11C6C = .text:0x00011C6C; // type:function size:0x16C +fn_1_11DD8 = .text:0x00011DD8; // type:function size:0xEC +fn_1_11EC4 = .text:0x00011EC4; // type:function size:0x64 +fn_1_11F28 = .text:0x00011F28; // type:function size:0x4 +fn_1_11F2C = .text:0x00011F2C; // type:function size:0x144 +fn_1_12070 = .text:0x00012070; // type:function size:0x5C0 +fn_1_12630 = .text:0x00012630; // type:function size:0xB4 +fn_1_126E4 = .text:0x000126E4; // type:function size:0x234 +fn_1_12918 = .text:0x00012918; // type:function size:0xBC +fn_1_129D4 = .text:0x000129D4; // type:function size:0x2C0 +fn_1_12C94 = .text:0x00012C94; // type:function size:0xE4 +fn_1_12D78 = .text:0x00012D78; // type:function size:0x1A8 +fn_1_12F20 = .text:0x00012F20; // type:function size:0x88 +fn_1_12FA8 = .text:0x00012FA8; // type:function size:0x118 +fn_1_130C0 = .text:0x000130C0; // type:function size:0x22C +fn_1_132EC = .text:0x000132EC; // type:function size:0x284 +fn_1_13570 = .text:0x00013570; // type:function size:0x310 +fn_1_13880 = .text:0x00013880; // type:function size:0x8C +fn_1_1390C = .text:0x0001390C; // type:function size:0x23C +fn_1_13B48 = .text:0x00013B48; // type:function size:0xEC +fn_1_13C34 = .text:0x00013C34; // type:function size:0x1F8 +fn_1_13E2C = .text:0x00013E2C; // type:function size:0x324 +fn_1_14150 = .text:0x00014150; // type:function size:0x50 +_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:0x8 data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0xC data:4byte +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x4 data:float +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:0x1 data:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte +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:0x14 data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string +lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string +lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 +lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string +lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C +lbl_1_data_354 = .data:0x00000354; // type:object size:0x34 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string +lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 +lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 +lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 +lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string +lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB +lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string +lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 +lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x28 data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x28 data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x104 data:4byte +lbl_1_bss_2C8 = .bss:0x000002C8; // type:object size:0x4 data:4byte +lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x4 data:4byte +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x60 data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0x8 data:4byte +lbl_1_bss_338 = .bss:0x00000338; // type:object size:0xA0 +lbl_1_bss_3D8 = .bss:0x000003D8; // type:object size:0x28 data:4byte +lbl_1_bss_400 = .bss:0x00000400; // type:object size:0x28 data:4byte +lbl_1_bss_428 = .bss:0x00000428; // type:object size:0x28 data:4byte +lbl_1_bss_450 = .bss:0x00000450; // type:object size:0x108 data:float +lbl_1_bss_558 = .bss:0x00000558; // type:object size:0x4 data:4byte +lbl_1_bss_55C = .bss:0x0000055C; // type:object size:0x4 data:4byte +lbl_1_bss_560 = .bss:0x00000560; // type:object size:0x8 data:4byte +lbl_1_bss_568 = .bss:0x00000568; // type:object size:0x28 data:4byte +lbl_1_bss_590 = .bss:0x00000590; // type:object size:0x28 data:4byte +lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x28 data:4byte +lbl_1_bss_5E0 = .bss:0x000005E0; // type:object size:0x28 data:4byte +lbl_1_bss_608 = .bss:0x00000608; // type:object size:0x108 data:4byte +lbl_1_bss_710 = .bss:0x00000710; // type:object size:0x4 data:4byte +lbl_1_bss_714 = .bss:0x00000714; // type:object size:0x28 data:4byte +lbl_1_bss_73C = .bss:0x0000073C; // type:object size:0x28 data:4byte +lbl_1_bss_764 = .bss:0x00000764; // type:object size:0x28 data:4byte +lbl_1_bss_78C = .bss:0x0000078C; // type:object size:0x28 data:4byte +lbl_1_bss_7B4 = .bss:0x000007B4; // type:object size:0x104 data:4byte +lbl_1_bss_8B8 = .bss:0x000008B8; // type:object size:0x4 data:4byte +lbl_1_bss_8BC = .bss:0x000008BC; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/nisDll/splits.txt b/config/GMPJ01_00/rels/nisDll/splits.txt new file mode 100644 index 00000000..2e500fe0 --- /dev/null +++ b/config/GMPJ01_00/rels/nisDll/splits.txt @@ -0,0 +1,5 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 diff --git a/config/GMPJ01_00/rels/nisDll/symbols.txt b/config/GMPJ01_00/rels/nisDll/symbols.txt new file mode 100644 index 00000000..1143328c --- /dev/null +++ b/config/GMPJ01_00/rels/nisDll/symbols.txt @@ -0,0 +1,6 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x68 +fn_1_68 = .text:0x00000068; // type:function size:0x2C +_prolog = .text:0x00000094; // type:function size:0x9C scope:global +_epilog = .text:0x00000130; // type:function size:0x4C scope:global +_ctors = .ctors:0x00000000; // type:label scope:global data:4byte +_dtors = .dtors:0x00000000; // type:label scope:global data:4byte diff --git a/config/GMPJ01_00/rels/option/splits.txt b/config/GMPJ01_00/rels/option/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/option/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/option/symbols.txt b/config/GMPJ01_00/rels/option/symbols.txt new file mode 100644 index 00000000..99c6ef45 --- /dev/null +++ b/config/GMPJ01_00/rels/option/symbols.txt @@ -0,0 +1,380 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xC0 +fn_1_160 = .text:0x00000160; // type:function size:0x110 +fn_1_270 = .text:0x00000270; // type:function size:0xE4 +fn_1_354 = .text:0x00000354; // type:function size:0x114 +fn_1_468 = .text:0x00000468; // type:function size:0xE8 +fn_1_550 = .text:0x00000550; // type:function size:0x34 +fn_1_584 = .text:0x00000584; // type:function size:0x34 +fn_1_5B8 = .text:0x000005B8; // type:function size:0x34 +fn_1_5EC = .text:0x000005EC; // type:function size:0xFC +fn_1_6E8 = .text:0x000006E8; // type:function size:0x110 +fn_1_7F8 = .text:0x000007F8; // type:function size:0x244 +fn_1_A3C = .text:0x00000A3C; // type:function size:0x30 +fn_1_A6C = .text:0x00000A6C; // type:function size:0x84 +fn_1_AF0 = .text:0x00000AF0; // type:function size:0x84 +fn_1_B74 = .text:0x00000B74; // type:function size:0x84 +fn_1_BF8 = .text:0x00000BF8; // type:function size:0x30 +fn_1_C28 = .text:0x00000C28; // type:function size:0x30 +fn_1_C58 = .text:0x00000C58; // type:function size:0x30 +fn_1_C88 = .text:0x00000C88; // type:function size:0x30 +fn_1_CB8 = .text:0x00000CB8; // type:function size:0x8C +fn_1_D44 = .text:0x00000D44; // type:function size:0x28 +fn_1_D6C = .text:0x00000D6C; // type:function size:0x578 +fn_1_12E4 = .text:0x000012E4; // type:function size:0x200 +fn_1_14E4 = .text:0x000014E4; // type:function size:0xC0 +fn_1_15A4 = .text:0x000015A4; // type:function size:0x1F4 +fn_1_1798 = .text:0x00001798; // type:function size:0xAC +fn_1_1844 = .text:0x00001844; // type:function size:0x1E8 +fn_1_1A2C = .text:0x00001A2C; // type:function size:0x44 +fn_1_1A70 = .text:0x00001A70; // type:function size:0x1C +fn_1_1A8C = .text:0x00001A8C; // type:function size:0x5FC +fn_1_2088 = .text:0x00002088; // type:function size:0x88 +fn_1_2110 = .text:0x00002110; // type:function size:0x34 +fn_1_2144 = .text:0x00002144; // type:function size:0x80 +fn_1_21C4 = .text:0x000021C4; // type:function size:0x34 +fn_1_21F8 = .text:0x000021F8; // type:function size:0x224 +fn_1_241C = .text:0x0000241C; // type:function size:0x8C +fn_1_24A8 = .text:0x000024A8; // type:function size:0x44 +fn_1_24EC = .text:0x000024EC; // type:function size:0x1C +fn_1_2508 = .text:0x00002508; // type:function size:0xA4 +fn_1_25AC = .text:0x000025AC; // type:function size:0x46C +fn_1_2A18 = .text:0x00002A18; // type:function size:0x2E8 +fn_1_2D00 = .text:0x00002D00; // type:function size:0x104 +fn_1_2E04 = .text:0x00002E04; // type:function size:0x148 +fn_1_2F4C = .text:0x00002F4C; // type:function size:0x64 +fn_1_2FB0 = .text:0x00002FB0; // type:function size:0x1A8 +fn_1_3158 = .text:0x00003158; // type:function size:0xD4 +fn_1_322C = .text:0x0000322C; // type:function size:0x64 +fn_1_3290 = .text:0x00003290; // type:function size:0x44 +fn_1_32D4 = .text:0x000032D4; // type:function size:0x1C +fn_1_32F0 = .text:0x000032F0; // type:function size:0x4BC +fn_1_37AC = .text:0x000037AC; // type:function size:0xBC +fn_1_3868 = .text:0x00003868; // type:function size:0x54 +fn_1_38BC = .text:0x000038BC; // type:function size:0xD0 +fn_1_398C = .text:0x0000398C; // type:function size:0x54 +fn_1_39E0 = .text:0x000039E0; // type:function size:0x128 +fn_1_3B08 = .text:0x00003B08; // type:function size:0x84 +fn_1_3B8C = .text:0x00003B8C; // type:function size:0x54 +fn_1_3BE0 = .text:0x00003BE0; // type:function size:0x8C +fn_1_3C6C = .text:0x00003C6C; // type:function size:0x94 +fn_1_3D00 = .text:0x00003D00; // type:function size:0x54 +fn_1_3D54 = .text:0x00003D54; // type:function size:0xC8 +fn_1_3E1C = .text:0x00003E1C; // type:function size:0xB4 +fn_1_3ED0 = .text:0x00003ED0; // type:function size:0x58 +fn_1_3F28 = .text:0x00003F28; // type:function size:0xAC +fn_1_3FD4 = .text:0x00003FD4; // type:function size:0x54 +fn_1_4028 = .text:0x00004028; // type:function size:0x2B4 +fn_1_42DC = .text:0x000042DC; // type:function size:0xAC +fn_1_4388 = .text:0x00004388; // type:function size:0x44 +fn_1_43CC = .text:0x000043CC; // type:function size:0x1C +fn_1_43E8 = .text:0x000043E8; // type:function size:0x270 +fn_1_4658 = .text:0x00004658; // type:function size:0x424 +fn_1_4A7C = .text:0x00004A7C; // type:function size:0x3D4 +fn_1_4E50 = .text:0x00004E50; // type:function size:0x93C +fn_1_578C = .text:0x0000578C; // type:function size:0x8B8 +fn_1_6044 = .text:0x00006044; // type:function size:0xF8 +fn_1_613C = .text:0x0000613C; // type:function size:0x64 +fn_1_61A0 = .text:0x000061A0; // type:function size:0xFC +fn_1_629C = .text:0x0000629C; // type:function size:0x54 +fn_1_62F0 = .text:0x000062F0; // type:function size:0xFC +fn_1_63EC = .text:0x000063EC; // type:function size:0x54 +fn_1_6440 = .text:0x00006440; // type:function size:0x94 +fn_1_64D4 = .text:0x000064D4; // type:function size:0x54 +fn_1_6528 = .text:0x00006528; // type:function size:0x118 +fn_1_6640 = .text:0x00006640; // type:function size:0x54 +fn_1_6694 = .text:0x00006694; // type:function size:0x38 +fn_1_66CC = .text:0x000066CC; // type:function size:0x38 +fn_1_6704 = .text:0x00006704; // type:function size:0xC4 +fn_1_67C8 = .text:0x000067C8; // type:function size:0x60 +fn_1_6828 = .text:0x00006828; // type:function size:0x1E4 +fn_1_6A0C = .text:0x00006A0C; // type:function size:0x74 +fn_1_6A80 = .text:0x00006A80; // type:function size:0x1DC +fn_1_6C5C = .text:0x00006C5C; // type:function size:0x74 +fn_1_6CD0 = .text:0x00006CD0; // type:function size:0x1D4 +fn_1_6EA4 = .text:0x00006EA4; // type:function size:0xA4 +fn_1_6F48 = .text:0x00006F48; // type:function size:0x1D4 +fn_1_711C = .text:0x0000711C; // type:function size:0xA4 +fn_1_71C0 = .text:0x000071C0; // type:function size:0xE8 +fn_1_72A8 = .text:0x000072A8; // type:function size:0x68 +fn_1_7310 = .text:0x00007310; // type:function size:0x400 +fn_1_7710 = .text:0x00007710; // type:function size:0x190 +fn_1_78A0 = .text:0x000078A0; // type:function size:0x60 +fn_1_7900 = .text:0x00007900; // type:function size:0x3C +fn_1_793C = .text:0x0000793C; // type:function size:0x5C4 +fn_1_7F00 = .text:0x00007F00; // type:function size:0x148 +fn_1_8048 = .text:0x00008048; // type:function size:0x9C +fn_1_80E4 = .text:0x000080E4; // type:function size:0x178 +fn_1_825C = .text:0x0000825C; // type:function size:0x54 +fn_1_82B0 = .text:0x000082B0; // type:function size:0x44 +fn_1_82F4 = .text:0x000082F4; // type:function size:0x1C +fn_1_8310 = .text:0x00008310; // type:function size:0x778 +fn_1_8A88 = .text:0x00008A88; // type:function size:0xD0 +fn_1_8B58 = .text:0x00008B58; // type:function size:0x54 +fn_1_8BAC = .text:0x00008BAC; // type:function size:0xD8 +fn_1_8C84 = .text:0x00008C84; // type:function size:0xFC +fn_1_8D80 = .text:0x00008D80; // type:function size:0x54 +fn_1_8DD4 = .text:0x00008DD4; // type:function size:0xC4 +fn_1_8E98 = .text:0x00008E98; // type:function size:0x60 +fn_1_8EF8 = .text:0x00008EF8; // type:function size:0x40 +fn_1_8F38 = .text:0x00008F38; // type:function size:0x77C +fn_1_96B4 = .text:0x000096B4; // type:function size:0x9C +fn_1_9750 = .text:0x00009750; // type:function size:0x344 +fn_1_9A94 = .text:0x00009A94; // type:function size:0x7C +fn_1_9B10 = .text:0x00009B10; // type:function size:0x8A0 +fn_1_A3B0 = .text:0x0000A3B0; // type:function size:0x9C +fn_1_A44C = .text:0x0000A44C; // type:function size:0x260 +fn_1_A6AC = .text:0x0000A6AC; // type:function size:0x40 +fn_1_A6EC = .text:0x0000A6EC; // type:function size:0x18 +fn_1_A704 = .text:0x0000A704; // type:function size:0x18 +fn_1_A71C = .text:0x0000A71C; // type:function size:0x54 +fn_1_A770 = .text:0x0000A770; // type:function size:0x40 +fn_1_A7B0 = .text:0x0000A7B0; // type:function size:0x40 +fn_1_A7F0 = .text:0x0000A7F0; // type:function size:0x38 +fn_1_A828 = .text:0x0000A828; // type:function size:0x38 +fn_1_A860 = .text:0x0000A860; // type:function size:0x20 +fn_1_A880 = .text:0x0000A880; // type:function size:0x24 +fn_1_A8A4 = .text:0x0000A8A4; // type:function size:0x108 +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +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_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0xC data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x38 +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8C0 +lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x30 +lbl_1_rodata_AD0 = .rodata:0x00000AD0; // type:object size:0x780 +lbl_1_rodata_1250 = .rodata:0x00001250; // type:object size:0x4 data:float +lbl_1_rodata_1254 = .rodata:0x00001254; // type:object size:0x4 data:float +lbl_1_rodata_1258 = .rodata:0x00001258; // type:object size:0x4 data:float +lbl_1_rodata_125C = .rodata:0x0000125C; // type:object size:0x4 data:float +lbl_1_rodata_1260 = .rodata:0x00001260; // type:object size:0x4 data:float +lbl_1_rodata_1264 = .rodata:0x00001264; // type:object size:0x4 data:float +lbl_1_rodata_1268 = .rodata:0x00001268; // type:object size:0x4 data:float +lbl_1_rodata_1270 = .rodata:0x00001270; // type:object size:0x8 data:double +lbl_1_rodata_1278 = .rodata:0x00001278; // type:object size:0x8 +lbl_1_rodata_1280 = .rodata:0x00001280; // type:object size:0x8 +lbl_1_rodata_1288 = .rodata:0x00001288; // type:object size:0x8 +lbl_1_rodata_1290 = .rodata:0x00001290; // type:object size:0x4 data:float +lbl_1_rodata_1294 = .rodata:0x00001294; // type:object size:0x4 data:float +lbl_1_rodata_1298 = .rodata:0x00001298; // type:object size:0x4 data:float +lbl_1_rodata_129C = .rodata:0x0000129C; // type:object size:0x4 data:float +lbl_1_rodata_12A0 = .rodata:0x000012A0; // type:object size:0x4 data:float +lbl_1_rodata_12A4 = .rodata:0x000012A4; // type:object size:0x4 data:float +lbl_1_rodata_12A8 = .rodata:0x000012A8; // type:object size:0x4 data:float +lbl_1_rodata_12AC = .rodata:0x000012AC; // type:object size:0x4 data:float +lbl_1_rodata_12B0 = .rodata:0x000012B0; // type:object size:0x4 data:float +lbl_1_rodata_12B4 = .rodata:0x000012B4; // type:object size:0x4 data:float +lbl_1_rodata_12B8 = .rodata:0x000012B8; // type:object size:0x4 data:float +lbl_1_rodata_12BC = .rodata:0x000012BC; // type:object size:0x4 data:float +lbl_1_rodata_12C0 = .rodata:0x000012C0; // type:object size:0x4 data:float +lbl_1_rodata_12C4 = .rodata:0x000012C4; // type:object size:0x4 data:float +lbl_1_rodata_12C8 = .rodata:0x000012C8; // type:object size:0x4 data:float +lbl_1_rodata_12CC = .rodata:0x000012CC; // type:object size:0x4 data:float +lbl_1_rodata_12D0 = .rodata:0x000012D0; // type:object size:0x24 +lbl_1_rodata_12F4 = .rodata:0x000012F4; // type:object size:0x4 data:float +lbl_1_rodata_12F8 = .rodata:0x000012F8; // type:object size:0x4 data:float +lbl_1_rodata_12FC = .rodata:0x000012FC; // type:object size:0x4 data:float +lbl_1_rodata_1300 = .rodata:0x00001300; // type:object size:0x4 data:float +lbl_1_rodata_1304 = .rodata:0x00001304; // type:object size:0x4 data:float +lbl_1_rodata_1308 = .rodata:0x00001308; // type:object size:0x1C +lbl_1_rodata_1324 = .rodata:0x00001324; // type:object size:0x4 data:float +lbl_1_rodata_1328 = .rodata:0x00001328; // type:object size:0x4 data:float +lbl_1_rodata_132C = .rodata:0x0000132C; // type:object size:0x4 data:float +lbl_1_rodata_1330 = .rodata:0x00001330; // type:object size:0x14 +lbl_1_rodata_1344 = .rodata:0x00001344; // type:object size:0x4 data:float +lbl_1_rodata_1348 = .rodata:0x00001348; // type:object size:0x4 data:float +lbl_1_rodata_134C = .rodata:0x0000134C; // type:object size:0x4 +lbl_1_rodata_1350 = .rodata:0x00001350; // type:object size:0x8 +lbl_1_rodata_1358 = .rodata:0x00001358; // type:object size:0x8 data:double +lbl_1_rodata_1360 = .rodata:0x00001360; // type:object size:0x8 data:double +lbl_1_rodata_1368 = .rodata:0x00001368; // type:object size:0x4 data:float +lbl_1_rodata_136C = .rodata:0x0000136C; // type:object size:0x4 data:float +lbl_1_rodata_1370 = .rodata:0x00001370; // type:object size:0x8 data:double +lbl_1_rodata_1378 = .rodata:0x00001378; // type:object size:0x8 data:double +lbl_1_rodata_1380 = .rodata:0x00001380; // type:object size:0x4 data:float +lbl_1_rodata_1384 = .rodata:0x00001384; // type:object size:0x4 data:float +lbl_1_rodata_1388 = .rodata:0x00001388; // type:object size:0x8 data:double +lbl_1_rodata_1390 = .rodata:0x00001390; // type:object size:0x4 data:float +lbl_1_rodata_1394 = .rodata:0x00001394; // type:object size:0x4 data:float +lbl_1_rodata_1398 = .rodata:0x00001398; // type:object size:0x4 data:float +lbl_1_rodata_139C = .rodata:0x0000139C; // type:object size:0x4 data:float +lbl_1_rodata_13A0 = .rodata:0x000013A0; // type:object size:0x8 data:double +lbl_1_rodata_13A8 = .rodata:0x000013A8; // type:object size:0x8 data:double +lbl_1_rodata_13B0 = .rodata:0x000013B0; // type:object size:0x4 data:float +lbl_1_rodata_13B4 = .rodata:0x000013B4; // type:object size:0x4 data:float +lbl_1_rodata_13B8 = .rodata:0x000013B8; // type:object size:0x8 data:float +lbl_1_rodata_13C0 = .rodata:0x000013C0; // type:object size:0x18 +lbl_1_rodata_13D8 = .rodata:0x000013D8; // type:object size:0x4 data:float +lbl_1_rodata_13DC = .rodata:0x000013DC; // type:object size:0x4 data:float +lbl_1_rodata_13E0 = .rodata:0x000013E0; // type:object size:0x4 data:float +lbl_1_rodata_13E4 = .rodata:0x000013E4; // type:object size:0x4 data:float +lbl_1_rodata_13E8 = .rodata:0x000013E8; // type:object size:0x4 data:float +lbl_1_rodata_13EC = .rodata:0x000013EC; // type:object size:0x4 data:float +lbl_1_rodata_13F0 = .rodata:0x000013F0; // type:object size:0x4 data:float +lbl_1_rodata_13F4 = .rodata:0x000013F4; // type:object size:0x4 data:float +lbl_1_rodata_13F8 = .rodata:0x000013F8; // type:object size:0x8 data:double +lbl_1_rodata_1400 = .rodata:0x00001400; // type:object size:0x8 data:double +lbl_1_rodata_1408 = .rodata:0x00001408; // type:object size:0x4 data:float +lbl_1_rodata_140C = .rodata:0x0000140C; // type:object size:0x4 data:float +lbl_1_rodata_1410 = .rodata:0x00001410; // type:object size:0x4 data:float +lbl_1_rodata_1414 = .rodata:0x00001414; // type:object size:0x4 data:float +lbl_1_rodata_1418 = .rodata:0x00001418; // type:object size:0x4 data:float +lbl_1_rodata_1420 = .rodata:0x00001420; // type:object size:0x8 data:double +lbl_1_rodata_1428 = .rodata:0x00001428; // type:object size:0x4 data:float +lbl_1_rodata_142C = .rodata:0x0000142C; // type:object size:0x4 data:float +lbl_1_rodata_1430 = .rodata:0x00001430; // type:object size:0x4 data:float +lbl_1_rodata_1434 = .rodata:0x00001434; // type:object size:0x4 data:float +lbl_1_rodata_1438 = .rodata:0x00001438; // type:object size:0x4 data:float +lbl_1_rodata_143C = .rodata:0x0000143C; // type:object size:0x264 +lbl_1_rodata_16A0 = .rodata:0x000016A0; // type:object size:0x4 data:float +lbl_1_rodata_16A4 = .rodata:0x000016A4; // type:object size:0x4 data:float +lbl_1_rodata_16A8 = .rodata:0x000016A8; // type:object size:0x4 data:float +lbl_1_rodata_16AC = .rodata:0x000016AC; // type:object size:0x4 data:float +lbl_1_rodata_16B0 = .rodata:0x000016B0; // type:object size:0x4 data:float +lbl_1_rodata_16B4 = .rodata:0x000016B4; // type:object size:0x4 data:float +lbl_1_rodata_16B8 = .rodata:0x000016B8; // type:object size:0x4 data:float +lbl_1_rodata_16BC = .rodata:0x000016BC; // type:object size:0x4 data:float +lbl_1_rodata_16C0 = .rodata:0x000016C0; // type:object size:0x4 data:float +lbl_1_rodata_16C4 = .rodata:0x000016C4; // type:object size:0x4 data:float +lbl_1_rodata_16C8 = .rodata:0x000016C8; // type:object size:0x4 data:float +lbl_1_rodata_16CC = .rodata:0x000016CC; // type:object size:0x4 data:float +lbl_1_rodata_16D0 = .rodata:0x000016D0; // type:object size:0x4 data:float +lbl_1_rodata_16D4 = .rodata:0x000016D4; // type:object size:0x4 data:float +lbl_1_rodata_16D8 = .rodata:0x000016D8; // type:object size:0x4 data:float +lbl_1_rodata_16DC = .rodata:0x000016DC; // type:object size:0x4 data:float +lbl_1_rodata_16E0 = .rodata:0x000016E0; // type:object size:0x4 data:float +lbl_1_rodata_16E4 = .rodata:0x000016E4; // type:object size:0x4 data:float +lbl_1_rodata_16E8 = .rodata:0x000016E8; // type:object size:0x4 data:float +lbl_1_rodata_16EC = .rodata:0x000016EC; // type:object size:0x4 data:float +lbl_1_rodata_16F0 = .rodata:0x000016F0; // type:object size:0x4 data:float +lbl_1_rodata_16F4 = .rodata:0x000016F4; // type:object size:0xD4 +lbl_1_rodata_17C8 = .rodata:0x000017C8; // type:object size:0x4 data:float +lbl_1_rodata_17CC = .rodata:0x000017CC; // type:object size:0x4 data:float +lbl_1_rodata_17D0 = .rodata:0x000017D0; // type:object size:0x4 data:float +lbl_1_rodata_17D4 = .rodata:0x000017D4; // type:object size:0x4 data:float +lbl_1_rodata_17D8 = .rodata:0x000017D8; // type:object size:0x4 data:float +lbl_1_rodata_17DC = .rodata:0x000017DC; // type:object size:0x4 data:float +lbl_1_rodata_17E0 = .rodata:0x000017E0; // type:object size:0x4 data:float +lbl_1_rodata_17E4 = .rodata:0x000017E4; // type:object size:0x84 +lbl_1_rodata_1868 = .rodata:0x00001868; // type:object size:0x48 +lbl_1_rodata_18B0 = .rodata:0x000018B0; // type:object size:0x4 data:float +lbl_1_rodata_18B4 = .rodata:0x000018B4; // type:object size:0x4 data:float +lbl_1_rodata_18B8 = .rodata:0x000018B8; // type:object size:0x4 data:float +lbl_1_rodata_18BC = .rodata:0x000018BC; // type:object size:0x4 data:float +lbl_1_rodata_18C0 = .rodata:0x000018C0; // type:object size:0x4 data:float +lbl_1_rodata_18C4 = .rodata:0x000018C4; // type:object size:0x104 +lbl_1_rodata_19C8 = .rodata:0x000019C8; // type:object size:0x4 data:float +lbl_1_rodata_19CC = .rodata:0x000019CC; // type:object size:0x4 data:float +lbl_1_rodata_19D0 = .rodata:0x000019D0; // type:object size:0x4 data:float +lbl_1_rodata_19D4 = .rodata:0x000019D4; // type:object size:0x4 data:float +lbl_1_rodata_19D8 = .rodata:0x000019D8; // type:object size:0x4 data:float +lbl_1_rodata_19DC = .rodata:0x000019DC; // type:object size:0x4 data:float +lbl_1_rodata_19E0 = .rodata:0x000019E0; // type:object size:0x4 data:float +lbl_1_rodata_19E4 = .rodata:0x000019E4; // type:object size:0x4 data:float +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x1B data:string +lbl_1_data_37 = .data:0x00000037; // type:object size:0x1B data:string +lbl_1_data_52 = .data:0x00000052; // type:object size:0x16 data:string +lbl_1_data_68 = .data:0x00000068; // type:object size:0x8 data:4byte +jumptable_1_data_70 = .data:0x00000070; // type:object size:0x24 scope:local +lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 data:4byte +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x1C +lbl_1_data_BC = .data:0x000000BC; // type:object size:0x24 +jumptable_1_data_E0 = .data:0x000000E0; // type:object size:0x24 scope:local +lbl_1_data_108 = .data:0x00000108; // type:object size:0x8 data:4byte +lbl_1_data_110 = .data:0x00000110; // type:object size:0x8 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x38 data:4byte +lbl_1_data_150 = .data:0x00000150; // type:object size:0x18 data:4byte +lbl_1_data_168 = .data:0x00000168; // type:object size:0xC +jumptable_1_data_174 = .data:0x00000174; // type:object size:0x24 scope:local +jumptable_1_data_198 = .data:0x00000198; // type:object size:0x24 scope:local +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x4C +lbl_1_data_208 = .data:0x00000208; // type:object size:0x8 +lbl_1_data_210 = .data:0x00000210; // type:object size:0x8 data:4byte +jumptable_1_data_218 = .data:0x00000218; // type:object size:0x1C scope:local +jumptable_1_data_234 = .data:0x00000234; // type:object size:0x20 scope:local +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/present/splits.txt b/config/GMPJ01_00/rels/present/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/present/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/present/symbols.txt b/config/GMPJ01_00/rels/present/symbols.txt new file mode 100644 index 00000000..e6b4d8f0 --- /dev/null +++ b/config/GMPJ01_00/rels/present/symbols.txt @@ -0,0 +1,189 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0xA4 +fn_1_144 = .text:0x00000144; // type:function size:0x110 +fn_1_254 = .text:0x00000254; // type:function size:0xE0 +fn_1_334 = .text:0x00000334; // type:function size:0x128 +fn_1_45C = .text:0x0000045C; // type:function size:0xF4 +fn_1_550 = .text:0x00000550; // type:function size:0x34 +fn_1_584 = .text:0x00000584; // type:function size:0x34 +fn_1_5B8 = .text:0x000005B8; // type:function size:0x34 +fn_1_5EC = .text:0x000005EC; // type:function size:0xC8 +fn_1_6B4 = .text:0x000006B4; // type:function size:0x23C +fn_1_8F0 = .text:0x000008F0; // type:function size:0x30 +fn_1_920 = .text:0x00000920; // type:function size:0x84 +fn_1_9A4 = .text:0x000009A4; // type:function size:0x84 +fn_1_A28 = .text:0x00000A28; // type:function size:0x84 +fn_1_AAC = .text:0x00000AAC; // type:function size:0x30 +fn_1_ADC = .text:0x00000ADC; // type:function size:0x30 +fn_1_B0C = .text:0x00000B0C; // type:function size:0x30 +fn_1_B3C = .text:0x00000B3C; // type:function size:0x30 +fn_1_B6C = .text:0x00000B6C; // type:function size:0x8C +fn_1_BF8 = .text:0x00000BF8; // type:function size:0x28 +fn_1_C20 = .text:0x00000C20; // type:function size:0x578 +fn_1_1198 = .text:0x00001198; // type:function size:0x200 +fn_1_1398 = .text:0x00001398; // type:function size:0xC0 +fn_1_1458 = .text:0x00001458; // type:function size:0x32C +fn_1_1784 = .text:0x00001784; // type:function size:0x88 +fn_1_180C = .text:0x0000180C; // type:function size:0x44 +fn_1_1850 = .text:0x00001850; // type:function size:0x1C +fn_1_186C = .text:0x0000186C; // type:function size:0xBC +fn_1_1928 = .text:0x00001928; // type:function size:0x680 +fn_1_1FA8 = .text:0x00001FA8; // type:function size:0x140 +fn_1_20E8 = .text:0x000020E8; // type:function size:0x5A4 +fn_1_268C = .text:0x0000268C; // type:function size:0x7C +fn_1_2708 = .text:0x00002708; // type:function size:0x6C +fn_1_2774 = .text:0x00002774; // type:function size:0x17C +fn_1_28F0 = .text:0x000028F0; // type:function size:0x34 +fn_1_2924 = .text:0x00002924; // type:function size:0x260 +fn_1_2B84 = .text:0x00002B84; // type:function size:0x48 +fn_1_2BCC = .text:0x00002BCC; // type:function size:0x90 +fn_1_2C5C = .text:0x00002C5C; // type:function size:0x738 +fn_1_3394 = .text:0x00003394; // type:function size:0x18 +fn_1_33AC = .text:0x000033AC; // type:function size:0x590 +fn_1_393C = .text:0x0000393C; // type:function size:0x6C +fn_1_39A8 = .text:0x000039A8; // type:function size:0x170 +fn_1_3B18 = .text:0x00003B18; // type:function size:0x74 +fn_1_3B8C = .text:0x00003B8C; // type:function size:0x22C +fn_1_3DB8 = .text:0x00003DB8; // type:function size:0xEC +fn_1_3EA4 = .text:0x00003EA4; // type:function size:0x19C +fn_1_4040 = .text:0x00004040; // type:function size:0x40 +fn_1_4080 = .text:0x00004080; // type:function size:0x18 +fn_1_4098 = .text:0x00004098; // type:function size:0x18 +fn_1_40B0 = .text:0x000040B0; // type:function size:0x54 +fn_1_4104 = .text:0x00004104; // type:function size:0x40 +fn_1_4144 = .text:0x00004144; // type:function size:0x40 +fn_1_4184 = .text:0x00004184; // type:function size:0xC +fn_1_4190 = .text:0x00004190; // type:function size:0xC +fn_1_419C = .text:0x0000419C; // type:function size:0x20 +fn_1_41BC = .text:0x000041BC; // type:function size:0x24 +fn_1_41E0 = .text:0x000041E0; // type:function size:0x114 +fn_1_42F4 = .text:0x000042F4; // type:function size:0x240 +fn_1_4534 = .text:0x00004534; // type:function size:0x8C +fn_1_45C0 = .text:0x000045C0; // type:function size:0x44 +fn_1_4604 = .text:0x00004604; // type:function size:0x1C +fn_1_4620 = .text:0x00004620; // type:function size:0x260 +fn_1_4880 = .text:0x00004880; // type:function size:0x184 +fn_1_4A04 = .text:0x00004A04; // type:function size:0x2E8 +fn_1_4CEC = .text:0x00004CEC; // type:function size:0x104 +_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:0x8 data:double +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_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:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x8 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x218 +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x708 +lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 data:float +lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 data:float +lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 data:float +lbl_1_rodata_9D0 = .rodata:0x000009D0; // type:object size:0x8 data:double +lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0x20 +lbl_1_rodata_9F8 = .rodata:0x000009F8; // type:object size:0x28 +lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x4 data:float +lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 data:float +lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 data:float +lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 data:float +lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 data:float +lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 data:float +lbl_1_rodata_A38 = .rodata:0x00000A38; // type:object size:0x4 data:float +lbl_1_rodata_A3C = .rodata:0x00000A3C; // type:object size:0x4 data:float +lbl_1_rodata_A40 = .rodata:0x00000A40; // type:object size:0x4 data:float +lbl_1_rodata_A44 = .rodata:0x00000A44; // type:object size:0x4 data:float +lbl_1_rodata_A48 = .rodata:0x00000A48; // type:object size:0x4 data:float +lbl_1_rodata_A50 = .rodata:0x00000A50; // type:object size:0x8 data:double +lbl_1_rodata_A58 = .rodata:0x00000A58; // type:object size:0x4 data:float +lbl_1_rodata_A60 = .rodata:0x00000A60; // type:object size:0x8 data:double +lbl_1_rodata_A68 = .rodata:0x00000A68; // type:object size:0x8 data:double +lbl_1_rodata_A70 = .rodata:0x00000A70; // type:object size:0x4 data:float +lbl_1_rodata_A74 = .rodata:0x00000A74; // type:object size:0x28 +lbl_1_rodata_A9C = .rodata:0x00000A9C; // type:object size:0x4 data:float +lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x4 data:float +lbl_1_rodata_AA4 = .rodata:0x00000AA4; // type:object size:0x4 data:float +lbl_1_rodata_AA8 = .rodata:0x00000AA8; // type:object size:0x4 data:float +lbl_1_rodata_AAC = .rodata:0x00000AAC; // type:object size:0x4 data:float +lbl_1_rodata_AB0 = .rodata:0x00000AB0; // type:object size:0x4 data:float +lbl_1_rodata_AB8 = .rodata:0x00000AB8; // type:object size:0x8 data:double +lbl_1_rodata_AC0 = .rodata:0x00000AC0; // type:object size:0x8 data:double +lbl_1_rodata_AC8 = .rodata:0x00000AC8; // type:object size:0x28 +lbl_1_rodata_AF0 = .rodata:0x00000AF0; // type:object size:0x28 +lbl_1_rodata_B18 = .rodata:0x00000B18; // type:object size:0x28 +lbl_1_rodata_B40 = .rodata:0x00000B40; // type:object size:0x28 +lbl_1_rodata_B68 = .rodata:0x00000B68; // type:object size:0x28 +lbl_1_rodata_B90 = .rodata:0x00000B90; // type:object size:0x4 data:float +lbl_1_rodata_B94 = .rodata:0x00000B94; // type:object size:0x4 data:float +lbl_1_rodata_B98 = .rodata:0x00000B98; // type:object size:0x4 data:float +lbl_1_rodata_B9C = .rodata:0x00000B9C; // type:object size:0x4 data:float +lbl_1_rodata_BA0 = .rodata:0x00000BA0; // type:object size:0x4 data:float +lbl_1_rodata_BA4 = .rodata:0x00000BA4; // type:object size:0xC +lbl_1_rodata_BB0 = .rodata:0x00000BB0; // type:object size:0x4 data:float +lbl_1_rodata_BB4 = .rodata:0x00000BB4; // type:object size:0x4 data:float +lbl_1_rodata_BB8 = .rodata:0x00000BB8; // type:object size:0x4 data:float +lbl_1_rodata_BBC = .rodata:0x00000BBC; // type:object size:0x4 data:float +lbl_1_rodata_BC0 = .rodata:0x00000BC0; // type:object size:0x4 data:float +lbl_1_rodata_BC4 = .rodata:0x00000BC4; // type:object size:0x4 data:float +lbl_1_rodata_BC8 = .rodata:0x00000BC8; // type:object size:0x4 data:float +lbl_1_rodata_BCC = .rodata:0x00000BCC; // type:object size:0x4 data:float +lbl_1_rodata_BD0 = .rodata:0x00000BD0; // type:object size:0x8 data:float +lbl_1_rodata_BD8 = .rodata:0x00000BD8; // type:object size:0xC +lbl_1_rodata_BE4 = .rodata:0x00000BE4; // type:object size:0x4 data:float +lbl_1_rodata_BE8 = .rodata:0x00000BE8; // type:object size:0x4 data:float +lbl_1_rodata_BEC = .rodata:0x00000BEC; // type:object size:0x4 data:float +lbl_1_rodata_BF0 = .rodata:0x00000BF0; // type:object size:0x4 data:float +lbl_1_rodata_BF4 = .rodata:0x00000BF4; // type:object size:0x4 data:float +lbl_1_rodata_BF8 = .rodata:0x00000BF8; // type:object size:0x8 data:double +lbl_1_rodata_C00 = .rodata:0x00000C00; // type:object size:0x4 data:float +lbl_1_rodata_C08 = .rodata:0x00000C08; // type:object size:0x8 data:double +lbl_1_rodata_C10 = .rodata:0x00000C10; // type:object size:0x4 data:float +lbl_1_rodata_C14 = .rodata:0x00000C14; // type:object size:0x4 data:float +lbl_1_rodata_C18 = .rodata:0x00000C18; // type:object size:0x4 data:float +lbl_1_rodata_C1C = .rodata:0x00000C1C; // type:object size:0x4 data:float +lbl_1_rodata_C20 = .rodata:0x00000C20; // type:object size:0x8 data:double +lbl_1_rodata_C28 = .rodata:0x00000C28; // type:object size:0x8 data:double +lbl_1_rodata_C30 = .rodata:0x00000C30; // type:object size:0x4 data:float +lbl_1_rodata_C34 = .rodata:0x00000C34; // type:object size:0x4 data:float +lbl_1_rodata_C38 = .rodata:0x00000C38; // type:object size:0x4 data:float +lbl_1_rodata_C40 = .rodata:0x00000C40; // type:object size:0x8 data:double +lbl_1_rodata_C48 = .rodata:0x00000C48; // type:object size:0x4 data:float +lbl_1_rodata_C4C = .rodata:0x00000C4C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string +lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1B data:string +lbl_1_data_36 = .data:0x00000036; // type:object size:0x1A +lbl_1_data_50 = .data:0x00000050; // type:object size:0x1C +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x10 data:4byte +lbl_1_data_7C = .data:0x0000007C; // type:object size:0x8 +lbl_1_data_84 = .data:0x00000084; // type:object size:0x20 +jumptable_1_data_A4 = .data:0x000000A4; // type:object size:0x2C scope:local +jumptable_1_data_D0 = .data:0x000000D0; // type:object size:0x1C scope:local +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x24 +lbl_1_data_114 = .data:0x00000114; // type:object size:0x2A data:string +lbl_1_data_13E = .data:0x0000013E; // type:object size:0x2E +jumptable_1_data_16C = .data:0x0000016C; // type:object size:0x34 scope:local +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/resultDll/splits.txt b/config/GMPJ01_00/rels/resultDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/resultDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/resultDll/symbols.txt b/config/GMPJ01_00/rels/resultDll/symbols.txt new file mode 100644 index 00000000..07d67720 --- /dev/null +++ b/config/GMPJ01_00/rels/resultDll/symbols.txt @@ -0,0 +1,203 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x438 +fn_1_4D8 = .text:0x000004D8; // type:function size:0x3B0 +fn_1_888 = .text:0x00000888; // type:function size:0x2F0 +fn_1_B78 = .text:0x00000B78; // type:function size:0x13D4 +fn_1_1F4C = .text:0x00001F4C; // type:function size:0xB90 +fn_1_2ADC = .text:0x00002ADC; // type:function size:0x1074 +fn_1_3B50 = .text:0x00003B50; // type:function size:0x15C +fn_1_3CAC = .text:0x00003CAC; // type:function size:0x15C +fn_1_3E08 = .text:0x00003E08; // type:function size:0x1D0 +fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x104 +fn_1_40DC = .text:0x000040DC; // type:function size:0x160 +fn_1_423C = .text:0x0000423C; // type:function size:0x3E0 +fn_1_461C = .text:0x0000461C; // type:function size:0x1E0 +fn_1_47FC = .text:0x000047FC; // type:function size:0x1084 +fn_1_5880 = .text:0x00005880; // type:function size:0xC10 +fn_1_6490 = .text:0x00006490; // type:function size:0x2D0 +fn_1_6760 = .text:0x00006760; // type:function size:0xC4 +fn_1_6824 = .text:0x00006824; // type:function size:0xD20 +fn_1_7544 = .text:0x00007544; // type:function size:0xA54 +fn_1_7F98 = .text:0x00007F98; // type:function size:0x3A0 +fn_1_8338 = .text:0x00008338; // type:function size:0x14C +fn_1_8484 = .text:0x00008484; // type:function size:0x1D4 +fn_1_8658 = .text:0x00008658; // type:function size:0x84 +fn_1_86DC = .text:0x000086DC; // type:function size:0x2BC +fn_1_8998 = .text:0x00008998; // type:function size:0x320 +fn_1_8CB8 = .text:0x00008CB8; // type:function size:0x340 +fn_1_8FF8 = .text:0x00008FF8; // type:function size:0x284 +fn_1_927C = .text:0x0000927C; // type:function size:0x138 +fn_1_93B4 = .text:0x000093B4; // type:function size:0x78 +_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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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_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:0x8 data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x10 data:4byte +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 data:float +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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_data_0 = .data:0x00000000; // type:object size:0x2A4 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0xDC data:4byte +lbl_1_data_380 = .data:0x00000380; // type:object size:0x2 data:2byte +lbl_1_data_382 = .data:0x00000382; // type:object size:0x26 data:string +lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x18 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x18 +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x20 +lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x10 +lbl_1_data_408 = .data:0x00000408; // type:object size:0x30 +lbl_1_data_438 = .data:0x00000438; // type:object size:0x10 +lbl_1_data_448 = .data:0x00000448; // type:object size:0x8 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x38 +lbl_1_data_488 = .data:0x00000488; // type:object size:0x30 +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x11 data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0x11 data:string +lbl_1_data_4DA = .data:0x000004DA; // type:object size:0xE +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x270 +lbl_1_data_758 = .data:0x00000758; // type:object size:0x28 +lbl_1_data_780 = .data:0x00000780; // type:object size:0x70 +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x40 +lbl_1_data_830 = .data:0x00000830; // type:object size:0x10 +lbl_1_data_840 = .data:0x00000840; // type:object size:0x20 +lbl_1_data_860 = .data:0x00000860; // type:object size:0x20 +lbl_1_data_880 = .data:0x00000880; // type:object size:0x20 +lbl_1_data_8A0 = .data:0x000008A0; // type:object size:0x6 data:2byte +lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 data:string +lbl_1_data_8AE = .data:0x000008AE; // type:object size:0xA +lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x60 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x8 +lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x28 +lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x8 +lbl_1_bss_42 = .bss:0x00000042; // type:object size:0x8 +lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x8 +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x40 +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte +lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x30 +lbl_1_bss_CE = .bss:0x000000CE; // type:object size:0x12 +lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x60 +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x14 +lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x10 +lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x8 +lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x2 data:2byte +lbl_1_bss_172 = .bss:0x00000172; // type:object size:0x2 data:2byte +lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte +lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte +lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x2 data:2byte +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte +lbl_1_bss_184 = .bss:0x00000184; // type:object size:0xC data:4byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x1680 +lbl_1_bss_1814 = .bss:0x00001814; // type:object size:0x14 +lbl_1_bss_1828 = .bss:0x00001828; // type:object size:0x168 data:2byte +lbl_1_bss_1990 = .bss:0x00001990; // type:object size:0x20 +lbl_1_bss_19B0 = .bss:0x000019B0; // type:object size:0x8 +lbl_1_bss_19B8 = .bss:0x000019B8; // type:object size:0x28 +lbl_1_bss_19E0 = .bss:0x000019E0; // type:object size:0x8 +lbl_1_bss_19E8 = .bss:0x000019E8; // type:object size:0x8 +lbl_1_bss_19F0 = .bss:0x000019F0; // type:object size:0x2A +lbl_1_bss_1A1A = .bss:0x00001A1A; // type:object size:0x42 data:2byte +lbl_1_bss_1A5C = .bss:0x00001A5C; // type:object size:0x40 data:2byte +lbl_1_bss_1A9C = .bss:0x00001A9C; // type:object size:0x40 data:2byte diff --git a/config/GMPJ01_00/rels/safDll/splits.txt b/config/GMPJ01_00/rels/safDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/safDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/safDll/symbols.txt b/config/GMPJ01_00/rels/safDll/symbols.txt new file mode 100644 index 00000000..0639762d --- /dev/null +++ b/config/GMPJ01_00/rels/safDll/symbols.txt @@ -0,0 +1,131 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x25C +fn_1_2FC = .text:0x000002FC; // type:function size:0x90 +fn_1_38C = .text:0x0000038C; // type:function size:0x1A0 +fn_1_52C = .text:0x0000052C; // type:function size:0xB8C +fn_1_10B8 = .text:0x000010B8; // type:function size:0xC4 +fn_1_117C = .text:0x0000117C; // type:function size:0x10D4 +fn_1_2250 = .text:0x00002250; // type:function size:0x104 +fn_1_2354 = .text:0x00002354; // type:function size:0x184 +fn_1_24D8 = .text:0x000024D8; // type:function size:0xB8 +fn_1_2590 = .text:0x00002590; // type:function size:0x148 +fn_1_26D8 = .text:0x000026D8; // type:function size:0x57C +fn_1_2C54 = .text:0x00002C54; // type:function size:0x4F0 +fn_1_3144 = .text:0x00003144; // type:function size:0x5A0 +fn_1_36E4 = .text:0x000036E4; // type:function size:0x498 +fn_1_3B7C = .text:0x00003B7C; // type:function size:0x284 +fn_1_3E00 = .text:0x00003E00; // type:function size:0x124 +fn_1_3F24 = .text:0x00003F24; // type:function size:0x21C +fn_1_4140 = .text:0x00004140; // type:function size:0x14 +fn_1_4154 = .text:0x00004154; // type:function size:0x10 +fn_1_4164 = .text:0x00004164; // type:function size:0x14 +fn_1_4178 = .text:0x00004178; // type:function size:0x10 +fn_1_4188 = .text:0x00004188; // type:function size:0x41C +fn_1_45A4 = .text:0x000045A4; // type:function size:0x2C8 +fn_1_486C = .text:0x0000486C; // type:function size:0x8E0 +fn_1_514C = .text:0x0000514C; // type:function size:0x404 +_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_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +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:0x8 data:double +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:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte +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:0x1 data:byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x4 data:4byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0x24 +lbl_1_data_28 = .data:0x00000028; // type:object size:0x48 +lbl_1_data_70 = .data:0x00000070; // type:object size:0x11 data:string +lbl_1_data_81 = .data:0x00000081; // type:object size:0x4 data:string +lbl_1_data_85 = .data:0x00000085; // type:object size:0x4 data:string +lbl_1_data_89 = .data:0x00000089; // type:object size:0xE data:string +lbl_1_data_97 = .data:0x00000097; // type:object size:0xB data:string +lbl_1_data_A2 = .data:0x000000A2; // type:object size:0xE data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x13 data:string +lbl_1_data_D3 = .data:0x000000D3; // type:object size:0xD +lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x38 data:2byte +lbl_1_data_118 = .data:0x00000118; // type:object size:0x22 data:string +lbl_1_data_13A = .data:0x0000013A; // type:object size:0x17 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0xA +lbl_1_bss_1A = .bss:0x0000001A; // type:object size:0x8 data:2byte +lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x2C2 data:2byte +lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0x4 data:4byte +lbl_1_bss_2E8 = .bss:0x000002E8; // type:object size:0x4 data:4byte +lbl_1_bss_2EC = .bss:0x000002EC; // type:object size:0x20 data:4byte +lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0x4 data:4byte +lbl_1_bss_310 = .bss:0x00000310; // type:object size:0x8 data:4byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x2 data:2byte +lbl_1_bss_31C = .bss:0x0000031C; // type:object size:0x4 data:4byte +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x4 data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0x4 data:4byte +lbl_1_bss_328 = .bss:0x00000328; // type:object size:0x58 data:2byte +lbl_1_bss_380 = .bss:0x00000380; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/selmenuDll/splits.txt b/config/GMPJ01_00/rels/selmenuDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/selmenuDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/selmenuDll/symbols.txt b/config/GMPJ01_00/rels/selmenuDll/symbols.txt new file mode 100644 index 00000000..b5746a65 --- /dev/null +++ b/config/GMPJ01_00/rels/selmenuDll/symbols.txt @@ -0,0 +1,201 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x4B8 +fn_1_558 = .text:0x00000558; // type:function size:0x60 +fn_1_5B8 = .text:0x000005B8; // type:function size:0x324 +fn_1_8DC = .text:0x000008DC; // type:function size:0x170 +fn_1_A4C = .text:0x00000A4C; // type:function size:0x180 +fn_1_BCC = .text:0x00000BCC; // type:function size:0x88 +fn_1_C54 = .text:0x00000C54; // type:function size:0x474 +fn_1_10C8 = .text:0x000010C8; // type:function size:0xA78 +fn_1_1B40 = .text:0x00001B40; // type:function size:0x334 +fn_1_1E74 = .text:0x00001E74; // type:function size:0x110 +fn_1_1F84 = .text:0x00001F84; // type:function size:0x50 +fn_1_1FD4 = .text:0x00001FD4; // type:function size:0x10C +fn_1_20E0 = .text:0x000020E0; // type:function size:0x1F8 +fn_1_22D8 = .text:0x000022D8; // type:function size:0xD6C +fn_1_3044 = .text:0x00003044; // type:function size:0x2FC +fn_1_3340 = .text:0x00003340; // type:function size:0x804 +fn_1_3B44 = .text:0x00003B44; // type:function size:0x40 +fn_1_3B84 = .text:0x00003B84; // type:function size:0x968 +fn_1_44EC = .text:0x000044EC; // type:function size:0x20 +fn_1_450C = .text:0x0000450C; // type:function size:0x4 +fn_1_4510 = .text:0x00004510; // type:function size:0x64 +fn_1_4574 = .text:0x00004574; // type:function size:0x854 +fn_1_4DC8 = .text:0x00004DC8; // type:function size:0x3D0 +_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:0x8 data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x8 data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x10 data:4byte +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:0x8 data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x6 data:string +lbl_1_data_6 = .data:0x00000006; // type:object size:0x6 data:string +lbl_1_data_C = .data:0x0000000C; // type:object size:0x6 data:string +lbl_1_data_12 = .data:0x00000012; // type:object size:0x6 data:string +lbl_1_data_18 = .data:0x00000018; // type:object size:0x6 data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x7 data:string +lbl_1_data_25 = .data:0x00000025; // type:object size:0x6 data:string +lbl_1_data_2B = .data:0x0000002B; // type:object size:0x9 +lbl_1_data_34 = .data:0x00000034; // type:object size:0x20 +lbl_1_data_54 = .data:0x00000054; // type:object size:0x14 data:string +lbl_1_data_68 = .data:0x00000068; // type:object size:0x16 data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0x11 data:string +lbl_1_data_8F = .data:0x0000008F; // type:object size:0x12 data:string +lbl_1_data_A1 = .data:0x000000A1; // type:object size:0x10 data:string +lbl_1_data_B1 = .data:0x000000B1; // type:object size:0xD data:string +lbl_1_data_BE = .data:0x000000BE; // type:object size:0x11 data:string +lbl_1_data_CF = .data:0x000000CF; // type:object size:0xD data:string +lbl_1_data_DC = .data:0x000000DC; // type:object size:0xE data:string +lbl_1_data_EA = .data:0x000000EA; // type:object size:0x16 data:string +lbl_1_data_100 = .data:0x00000100; // type:object size:0x13 data:string +lbl_1_data_113 = .data:0x00000113; // type:object size:0xF data:string +lbl_1_data_122 = .data:0x00000122; // type:object size:0x14 data:string +lbl_1_data_136 = .data:0x00000136; // type:object size:0x11 data:string +lbl_1_data_147 = .data:0x00000147; // type:object size:0x13 data:string +lbl_1_data_15A = .data:0x0000015A; // type:object size:0x10 data:string +lbl_1_data_16A = .data:0x0000016A; // type:object size:0x11 data:string +lbl_1_data_17B = .data:0x0000017B; // type:object size:0x15 data:string +lbl_1_data_190 = .data:0x00000190; // type:object size:0x17 data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x11 data:string +lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x10 data:string +lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x10 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x12 data:string +lbl_1_data_1EA = .data:0x000001EA; // type:object size:0x10 data:string +lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xF data:string +lbl_1_data_209 = .data:0x00000209; // type:object size:0x15 data:string +lbl_1_data_21E = .data:0x0000021E; // type:object size:0xE data:string +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x13 data:string +lbl_1_data_23F = .data:0x0000023F; // type:object size:0x14 data:string +lbl_1_data_253 = .data:0x00000253; // type:object size:0x13 data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x11 data:string +lbl_1_data_277 = .data:0x00000277; // type:object size:0x11 data:string +lbl_1_data_288 = .data:0x00000288; // type:object size:0x11 data:string +lbl_1_data_299 = .data:0x00000299; // type:object size:0x10 data:string +lbl_1_data_2A9 = .data:0x000002A9; // type:object size:0x10 data:string +lbl_1_data_2B9 = .data:0x000002B9; // type:object size:0x1B data:string +lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x11 data:string +lbl_1_data_2E5 = .data:0x000002E5; // type:object size:0x1D data:string +lbl_1_data_302 = .data:0x00000302; // type:object size:0x17 data:string +lbl_1_data_319 = .data:0x00000319; // type:object size:0x16 data:string +lbl_1_data_32F = .data:0x0000032F; // type:object size:0x15 data:string +lbl_1_data_344 = .data:0x00000344; // type:object size:0x13 data:string +lbl_1_data_357 = .data:0x00000357; // type:object size:0xE data:string +lbl_1_data_365 = .data:0x00000365; // type:object size:0x14 data:string +lbl_1_data_379 = .data:0x00000379; // type:object size:0x13 data:string +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x12 data:string +lbl_1_data_39E = .data:0x0000039E; // type:object size:0xD data:string +lbl_1_data_3AB = .data:0x000003AB; // type:object size:0xD data:string +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x17 data:string +lbl_1_data_3CF = .data:0x000003CF; // type:object size:0xE data:string +lbl_1_data_3DD = .data:0x000003DD; // type:object size:0xB data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x11 data:string +lbl_1_data_3F9 = .data:0x000003F9; // type:object size:0x11 data:string +lbl_1_data_40A = .data:0x0000040A; // type:object size:0xA data:string +lbl_1_data_414 = .data:0x00000414; // type:object size:0x13 data:string +lbl_1_data_427 = .data:0x00000427; // type:object size:0xD data:string +lbl_1_data_434 = .data:0x00000434; // type:object size:0x5 data:string +lbl_1_data_439 = .data:0x00000439; // type:object size:0x15 data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x5 data:string +lbl_1_data_453 = .data:0x00000453; // type:object size:0xA data:string +lbl_1_data_45D = .data:0x0000045D; // type:object size:0xE data:string +lbl_1_data_46B = .data:0x0000046B; // type:object size:0xE data:string +lbl_1_data_479 = .data:0x00000479; // type:object size:0xE data:string +lbl_1_data_487 = .data:0x00000487; // type:object size:0xE data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0xE data:string +lbl_1_data_4A3 = .data:0x000004A3; // type:object size:0xE data:string +lbl_1_data_4B1 = .data:0x000004B1; // type:object size:0xE data:string +lbl_1_data_4BF = .data:0x000004BF; // type:object size:0xE data:string +lbl_1_data_4CD = .data:0x000004CD; // type:object size:0xA data:string +lbl_1_data_4D7 = .data:0x000004D7; // type:object size:0x11 +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x348 +lbl_1_data_830 = .data:0x00000830; // type:object size:0x28 +lbl_1_data_858 = .data:0x00000858; // type:object size:0x12 data:string +lbl_1_data_86A = .data:0x0000086A; // type:object size:0x12 data:string +lbl_1_data_87C = .data:0x0000087C; // type:object size:0x12 data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0x12 data:string +lbl_1_data_8A0 = .data:0x000008A0; // type:object size:0x12 data:string +lbl_1_data_8B2 = .data:0x000008B2; // type:object size:0x12 data:string +lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0x11 data:string +lbl_1_data_8D5 = .data:0x000008D5; // type:object size:0x23 +lbl_1_data_8F8 = .data:0x000008F8; // type:object size:0x2 data:2byte +lbl_1_data_8FA = .data:0x000008FA; // type:object size:0x8 +lbl_1_data_902 = .data:0x00000902; // type:object size:0x12 +lbl_1_data_914 = .data:0x00000914; // type:object size:0x4 data:4byte +lbl_1_data_918 = .data:0x00000918; // type:object size:0x12 data:string +lbl_1_data_92A = .data:0x0000092A; // type:object size:0x24 data:string +lbl_1_data_94E = .data:0x0000094E; // type:object size:0xB data:string +lbl_1_data_959 = .data:0x00000959; // type:object size:0x3 data:string +lbl_1_data_95C = .data:0x0000095C; // type:object size:0x10 +lbl_1_data_96C = .data:0x0000096C; // type:object size:0x20 +lbl_1_data_98C = .data:0x0000098C; // type:object size:0x20 +lbl_1_data_9AC = .data:0x000009AC; // type:object size:0xD data:string +lbl_1_data_9B9 = .data:0x000009B9; // type:object size:0x5 +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x5 +lbl_1_data_9C3 = .data:0x000009C3; // type:object size:0x6 +lbl_1_data_9C9 = .data:0x000009C9; // type:object size:0x9 data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0xA data:string +lbl_1_data_9DC = .data:0x000009DC; // type:object size:0xA data:string +lbl_1_data_9E6 = .data:0x000009E6; // type:object size:0x9 data:string +lbl_1_data_9EF = .data:0x000009EF; // type:object size:0x9 data:string +lbl_1_data_9F8 = .data:0x000009F8; // type:object size:0xC +lbl_1_data_A04 = .data:0x00000A04; // type:object size:0x14 data:4byte +lbl_1_data_A18 = .data:0x00000A18; // type:object size:0x6 data:string +lbl_1_data_A1E = .data:0x00000A1E; // type:object size:0x4 data:string +lbl_1_data_A22 = .data:0x00000A22; // type:object size:0x5 data:string +lbl_1_data_A27 = .data:0x00000A27; // type:object size:0x7 data:string +lbl_1_data_A2E = .data:0x00000A2E; // type:object size:0x5 data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x9 data:string +jumptable_1_data_A3C = .data:0x00000A3C; // type:object size:0x20 scope:local +jumptable_1_data_A5C = .data:0x00000A5C; // type:object size:0x20 scope:local +lbl_1_data_A7C = .data:0x00000A7C; // type:object size:0x4 data:string +lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x4 data:string +lbl_1_data_A84 = .data:0x00000A84; // type:object size:0x10 data:string +lbl_1_data_A94 = .data:0x00000A94; // type:object size:0x15 data:string +lbl_1_data_AA9 = .data:0x00000AA9; // type:object size:0x15 data:string +lbl_1_data_ABE = .data:0x00000ABE; // type:object size:0x15 data:string +lbl_1_data_AD3 = .data:0x00000AD3; // type:object size:0x15 data:string +lbl_1_data_AE8 = .data:0x00000AE8; // type:object size:0x15 data:string +lbl_1_data_AFD = .data:0x00000AFD; // type:object size:0x15 data:string +lbl_1_data_B12 = .data:0x00000B12; // type:object size:0x15 data:string +lbl_1_data_B27 = .data:0x00000B27; // type:object size:0x14 data:string +lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte +lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x10 +lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x8 +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x10 +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x8 +lbl_1_bss_3E = .bss:0x0000003E; // type:object size:0x8 +lbl_1_bss_46 = .bss:0x00000046; // type:object size:0x8 +lbl_1_bss_4E = .bss:0x0000004E; // type:object size:0x2 data:2byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x2 data:2byte +lbl_1_bss_56 = .bss:0x00000056; // type:object size:0x2A data:2byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0xE +lbl_1_bss_96 = .bss:0x00000096; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/staffDll/splits.txt b/config/GMPJ01_00/rels/staffDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/staffDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/staffDll/symbols.txt b/config/GMPJ01_00/rels/staffDll/symbols.txt new file mode 100644 index 00000000..8f507623 --- /dev/null +++ b/config/GMPJ01_00/rels/staffDll/symbols.txt @@ -0,0 +1,54 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x218 +fn_1_2B8 = .text:0x000002B8; // type:function size:0x60 +fn_1_318 = .text:0x00000318; // type:function size:0x3DC +fn_1_6F4 = .text:0x000006F4; // type:function size:0x3AC +fn_1_AA0 = .text:0x00000AA0; // type:function size:0x12C +fn_1_BCC = .text:0x00000BCC; // type:function size:0x1C4 +fn_1_D90 = .text:0x00000D90; // type:function size:0x500 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0xFA8 +lbl_1_data_FA8 = .data:0x00000FA8; // type:object size:0xC data:float +lbl_1_data_FB4 = .data:0x00000FB4; // type:object size:0x14 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x6 data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x34 data:2byte diff --git a/config/GMPJ01_00/rels/subchrselDll/splits.txt b/config/GMPJ01_00/rels/subchrselDll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/subchrselDll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/subchrselDll/symbols.txt b/config/GMPJ01_00/rels/subchrselDll/symbols.txt new file mode 100644 index 00000000..22a9a485 --- /dev/null +++ b/config/GMPJ01_00/rels/subchrselDll/symbols.txt @@ -0,0 +1,33 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x6C +fn_1_10C = .text:0x0000010C; // type:function size:0x58 +fn_1_164 = .text:0x00000164; // type:function size:0x654 +_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_data_0 = .data:0x00000000; // type:object size:0x8 data:string +lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 data:string +lbl_1_data_10 = .data:0x00000010; // type:object size:0x8 data:string +lbl_1_data_18 = .data:0x00000018; // type:object size:0x8 data:string +lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x6 data:string +lbl_1_data_36 = .data:0x00000036; // type:object size:0x6 data:string +lbl_1_data_3C = .data:0x0000003C; // type:object size:0x6 data:string +lbl_1_data_42 = .data:0x00000042; // type:object size:0x6 data:string +lbl_1_data_48 = .data:0x00000048; // type:object size:0x6 data:string +lbl_1_data_4E = .data:0x0000004E; // type:object size:0x7 data:string +lbl_1_data_55 = .data:0x00000055; // type:object size:0x6 data:string +lbl_1_data_5B = .data:0x0000005B; // type:object size:0x9 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x20 +lbl_1_data_84 = .data:0x00000084; // type:object size:0x1 +lbl_1_data_85 = .data:0x00000085; // type:object size:0x6 data:string +lbl_1_data_8B = .data:0x0000008B; // type:object size:0x8 data:string +lbl_1_data_93 = .data:0x00000093; // type:object size:0x7 data:string +lbl_1_data_9A = .data:0x0000009A; // type:object size:0x7 data:string +lbl_1_data_A1 = .data:0x000000A1; // type:object size:0x6 data:string +lbl_1_data_A7 = .data:0x000000A7; // type:object size:0x9 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x1C +lbl_1_data_CC = .data:0x000000CC; // type:object size:0x15 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte diff --git a/config/GMPJ01_00/rels/w01Dll/splits.txt b/config/GMPJ01_00/rels/w01Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w01Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w01Dll/symbols.txt b/config/GMPJ01_00/rels/w01Dll/symbols.txt new file mode 100644 index 00000000..90f53307 --- /dev/null +++ b/config/GMPJ01_00/rels/w01Dll/symbols.txt @@ -0,0 +1,469 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x4BC +fn_1_59C = .text:0x0000059C; // type:function size:0x194 +fn_1_730 = .text:0x00000730; // type:function size:0x44 +fn_1_774 = .text:0x00000774; // type:function size:0x4 +fn_1_778 = .text:0x00000778; // type:function size:0x9C +fn_1_814 = .text:0x00000814; // type:function size:0x1D4 +fn_1_9E8 = .text:0x000009E8; // type:function size:0x318 +fn_1_D00 = .text:0x00000D00; // type:function size:0x4 +fn_1_D04 = .text:0x00000D04; // type:function size:0x550 +fn_1_1254 = .text:0x00001254; // type:function size:0x38 +fn_1_128C = .text:0x0000128C; // type:function size:0x80 +fn_1_130C = .text:0x0000130C; // type:function size:0x270 +fn_1_157C = .text:0x0000157C; // type:function size:0xF4 +fn_1_1670 = .text:0x00001670; // type:function size:0x90 +fn_1_1700 = .text:0x00001700; // type:function size:0x290 +fn_1_1990 = .text:0x00001990; // type:function size:0x148 +fn_1_1AD8 = .text:0x00001AD8; // type:function size:0x64 +fn_1_1B3C = .text:0x00001B3C; // type:function size:0x3A8 +fn_1_1EE4 = .text:0x00001EE4; // type:function size:0x48 +fn_1_1F2C = .text:0x00001F2C; // type:function size:0x78 +fn_1_1FA4 = .text:0x00001FA4; // type:function size:0x580 +fn_1_2524 = .text:0x00002524; // type:function size:0x248 +fn_1_276C = .text:0x0000276C; // type:function size:0x7AC +fn_1_2F18 = .text:0x00002F18; // type:function size:0x438 +fn_1_3350 = .text:0x00003350; // type:function size:0x1C4 +fn_1_3514 = .text:0x00003514; // type:function size:0xA0 +fn_1_35B4 = .text:0x000035B4; // type:function size:0x70 +fn_1_3624 = .text:0x00003624; // type:function size:0xFD0 +fn_1_45F4 = .text:0x000045F4; // type:function size:0x180 +fn_1_4774 = .text:0x00004774; // type:function size:0xF0 +fn_1_4864 = .text:0x00004864; // type:function size:0x50 +fn_1_48B4 = .text:0x000048B4; // type:function size:0x560 +fn_1_4E14 = .text:0x00004E14; // type:function size:0x194 +fn_1_4FA8 = .text:0x00004FA8; // type:function size:0x30 +fn_1_4FD8 = .text:0x00004FD8; // type:function size:0xFC +fn_1_50D4 = .text:0x000050D4; // type:function size:0x2E4 +fn_1_53B8 = .text:0x000053B8; // type:function size:0x84 +fn_1_543C = .text:0x0000543C; // type:function size:0x258 +fn_1_5694 = .text:0x00005694; // type:function size:0x1D8 +fn_1_586C = .text:0x0000586C; // type:function size:0xC0 +fn_1_592C = .text:0x0000592C; // type:function size:0x200 +fn_1_5B2C = .text:0x00005B2C; // type:function size:0x14 +fn_1_5B40 = .text:0x00005B40; // type:function size:0x190 +fn_1_5CD0 = .text:0x00005CD0; // type:function size:0x38 +fn_1_5D08 = .text:0x00005D08; // type:function size:0x390 +fn_1_6098 = .text:0x00006098; // type:function size:0xFC +fn_1_6194 = .text:0x00006194; // type:function size:0x25C +fn_1_63F0 = .text:0x000063F0; // type:function size:0x624 +fn_1_6A14 = .text:0x00006A14; // type:function size:0x1AC +fn_1_6BC0 = .text:0x00006BC0; // type:function size:0x3F4 +fn_1_6FB4 = .text:0x00006FB4; // type:function size:0x574 +fn_1_7528 = .text:0x00007528; // type:function size:0x2C4 +fn_1_77EC = .text:0x000077EC; // type:function size:0xA8 +fn_1_7894 = .text:0x00007894; // type:function size:0x1D0 +fn_1_7A64 = .text:0x00007A64; // type:function size:0xAC8 +fn_1_852C = .text:0x0000852C; // type:function size:0x280 +fn_1_87AC = .text:0x000087AC; // type:function size:0x34 +fn_1_87E0 = .text:0x000087E0; // type:function size:0x1A8 +fn_1_8988 = .text:0x00008988; // type:function size:0xC8 +fn_1_8A50 = .text:0x00008A50; // type:function size:0x11C +fn_1_8B6C = .text:0x00008B6C; // type:function size:0x270 +fn_1_8DDC = .text:0x00008DDC; // type:function size:0x3B0 +fn_1_918C = .text:0x0000918C; // type:function size:0xF0 +fn_1_927C = .text:0x0000927C; // type:function size:0xB0 +fn_1_932C = .text:0x0000932C; // type:function size:0x17C +fn_1_94A8 = .text:0x000094A8; // type:function size:0x14C +fn_1_95F4 = .text:0x000095F4; // type:function size:0x200 +fn_1_97F4 = .text:0x000097F4; // type:function size:0xF8 +fn_1_98EC = .text:0x000098EC; // type:function size:0x34 +fn_1_9920 = .text:0x00009920; // type:function size:0x104 +fn_1_9A24 = .text:0x00009A24; // type:function size:0x198 +fn_1_9BBC = .text:0x00009BBC; // type:function size:0x144 +fn_1_9D00 = .text:0x00009D00; // type:function size:0xD8 +fn_1_9DD8 = .text:0x00009DD8; // type:function size:0x6E0 +fn_1_A4B8 = .text:0x0000A4B8; // type:function size:0x9C +fn_1_A554 = .text:0x0000A554; // type:function size:0xA8 +fn_1_A5FC = .text:0x0000A5FC; // type:function size:0xE4 +fn_1_A6E0 = .text:0x0000A6E0; // type:function size:0x938 +fn_1_B018 = .text:0x0000B018; // type:function size:0x70 +fn_1_B088 = .text:0x0000B088; // type:function size:0x144 +fn_1_B1CC = .text:0x0000B1CC; // type:function size:0x1EC +fn_1_B3B8 = .text:0x0000B3B8; // type:function size:0xC0 +fn_1_B478 = .text:0x0000B478; // type:function size:0x680 +fn_1_BAF8 = .text:0x0000BAF8; // type:function size:0x1E4 +fn_1_BCDC = .text:0x0000BCDC; // type:function size:0x224 +fn_1_BF00 = .text:0x0000BF00; // type:function size:0x68 +fn_1_BF68 = .text:0x0000BF68; // type:function size:0x98 +fn_1_C000 = .text:0x0000C000; // type:function size:0xFC +fn_1_C0FC = .text:0x0000C0FC; // type:function size:0x160 +fn_1_C25C = .text:0x0000C25C; // type:function size:0x5E8 +fn_1_C844 = .text:0x0000C844; // type:function size:0x50 +fn_1_C894 = .text:0x0000C894; // type:function size:0xB8 +fn_1_C94C = .text:0x0000C94C; // type:function size:0x4C +fn_1_C998 = .text:0x0000C998; // type:function size:0x1AC +fn_1_CB44 = .text:0x0000CB44; // type:function size:0x380 +fn_1_CEC4 = .text:0x0000CEC4; // type:function size:0x170 +fn_1_D034 = .text:0x0000D034; // type:function size:0x48 +fn_1_D07C = .text:0x0000D07C; // type:function size:0x98 +fn_1_D114 = .text:0x0000D114; // type:function size:0x62C +fn_1_D740 = .text:0x0000D740; // type:function size:0x644 +fn_1_DD84 = .text:0x0000DD84; // type:function size:0x110 +fn_1_DE94 = .text:0x0000DE94; // type:function size:0x26C +fn_1_E100 = .text:0x0000E100; // type:function size:0x54 +fn_1_E154 = .text:0x0000E154; // type:function size:0x164 +fn_1_E2B8 = .text:0x0000E2B8; // type:function size:0x194 +fn_1_E44C = .text:0x0000E44C; // type:function size:0x4C8 +fn_1_E914 = .text:0x0000E914; // type:function size:0x3C0 +fn_1_ECD4 = .text:0x0000ECD4; // type:function size:0x1CC +fn_1_EEA0 = .text:0x0000EEA0; // type:function size:0x38 +fn_1_EED8 = .text:0x0000EED8; // type:function size:0x1C4 +fn_1_F09C = .text:0x0000F09C; // type:function size:0x2AC +fn_1_F348 = .text:0x0000F348; // type:function size:0xB0 +fn_1_F3F8 = .text:0x0000F3F8; // type:function size:0x2F0 +fn_1_F6E8 = .text:0x0000F6E8; // type:function size:0x1A8 +fn_1_F890 = .text:0x0000F890; // type:function size:0x18C +fn_1_FA1C = .text:0x0000FA1C; // type:function size:0xA0 +fn_1_FABC = .text:0x0000FABC; // type:function size:0x9C +fn_1_FB58 = .text:0x0000FB58; // type:function size:0xE4 +fn_1_FC3C = .text:0x0000FC3C; // type:function size:0xB0 +fn_1_FCEC = .text:0x0000FCEC; // type:function size:0x50 +fn_1_FD3C = .text:0x0000FD3C; // type:function size:0x108 +fn_1_FE44 = .text:0x0000FE44; // type:function size:0x8C +fn_1_FED0 = .text:0x0000FED0; // type:function size:0x14C +fn_1_1001C = .text:0x0001001C; // type:function size:0x19C +fn_1_101B8 = .text:0x000101B8; // type:function size:0x4AC +fn_1_10664 = .text:0x00010664; // type:function size:0x1BC +fn_1_10820 = .text:0x00010820; // type:function size:0x2C8 +fn_1_10AE8 = .text:0x00010AE8; // type:function size:0xC8 +fn_1_10BB0 = .text:0x00010BB0; // type:function size:0x140 +fn_1_10CF0 = .text:0x00010CF0; // type:function size:0x1C8 +fn_1_10EB8 = .text:0x00010EB8; // type:function size:0x1AC +fn_1_11064 = .text:0x00011064; // type:function size:0x420 +fn_1_11484 = .text:0x00011484; // type:function size:0x56C +_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:0x8 data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // 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:0x10 data:4byte +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x8 data:4byte +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x8 data:4byte +lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x2 data:2byte +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x2 data:2byte +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float +lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0xC data:2byte +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x528 +lbl_1_data_528 = .data:0x00000528; // type:object size:0x2 data:2byte +lbl_1_data_52A = .data:0x0000052A; // type:object size:0x2 data:2byte +lbl_1_data_52C = .data:0x0000052C; // type:object size:0x2 data:2byte +lbl_1_data_52E = .data:0x0000052E; // type:object size:0x2 data:2byte +lbl_1_data_530 = .data:0x00000530; // type:object size:0x2 data:2byte +lbl_1_data_534 = .data:0x00000534; // type:object size:0x8 +lbl_1_data_53C = .data:0x0000053C; // type:object size:0x8 +lbl_1_data_544 = .data:0x00000544; // type:object size:0x14 data:string +lbl_1_data_558 = .data:0x00000558; // type:object size:0x14 data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x14 +lbl_1_data_580 = .data:0x00000580; // type:object size:0x2 data:2byte +lbl_1_data_582 = .data:0x00000582; // type:object size:0x12 +lbl_1_data_594 = .data:0x00000594; // type:object size:0x40 +lbl_1_data_5D4 = .data:0x000005D4; // type:object size:0x4 data:4byte +lbl_1_data_5D8 = .data:0x000005D8; // type:object size:0x4 data:4byte +lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x10 +lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x7 data:string +lbl_1_data_5F3 = .data:0x000005F3; // type:object size:0x7 data:string +lbl_1_data_5FA = .data:0x000005FA; // type:object size:0xA +lbl_1_data_604 = .data:0x00000604; // type:object size:0xC +lbl_1_data_610 = .data:0x00000610; // type:object size:0x10 +lbl_1_data_620 = .data:0x00000620; // type:object size:0x5 data:string +lbl_1_data_625 = .data:0x00000625; // type:object size:0x5 data:string +lbl_1_data_62A = .data:0x0000062A; // type:object size:0x5 data:string +lbl_1_data_62F = .data:0x0000062F; // type:object size:0x4 data:string +lbl_1_data_633 = .data:0x00000633; // type:object size:0x1 data:byte +lbl_1_data_634 = .data:0x00000634; // type:object size:0x24 +lbl_1_data_658 = .data:0x00000658; // type:object size:0x24 +lbl_1_data_67C = .data:0x0000067C; // type:object size:0x14 +lbl_1_data_690 = .data:0x00000690; // type:object size:0x2D0 +lbl_1_data_960 = .data:0x00000960; // type:object size:0x2D0 +lbl_1_data_C30 = .data:0x00000C30; // type:object size:0x2D0 +lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x8 +lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x38 +lbl_1_data_F40 = .data:0x00000F40; // type:object size:0x20 +lbl_1_data_F60 = .data:0x00000F60; // type:object size:0x20 +lbl_1_data_F80 = .data:0x00000F80; // type:object size:0x7 data:string +lbl_1_data_F87 = .data:0x00000F87; // type:object size:0x5 data:string +lbl_1_data_F8C = .data:0x00000F8C; // type:object size:0x5 data:string +lbl_1_data_F91 = .data:0x00000F91; // type:object size:0x5 data:string +lbl_1_data_F96 = .data:0x00000F96; // type:object size:0x6 +lbl_1_data_F9C = .data:0x00000F9C; // type:object size:0x10 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x1 data:byte +lbl_1_bss_29 = .bss:0x00000029; // type:object size:0x1 data:byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x5A0 +lbl_1_bss_5CC = .bss:0x000005CC; // type:object size:0x2 data:2byte +lbl_1_bss_5D0 = .bss:0x000005D0; // type:object size:0x30 +lbl_1_bss_600 = .bss:0x00000600; // type:object size:0x18 +lbl_1_bss_618 = .bss:0x00000618; // type:object size:0xC data:4byte +lbl_1_bss_624 = .bss:0x00000624; // type:object size:0xC data:float +lbl_1_bss_630 = .bss:0x00000630; // type:object size:0xC data:4byte +lbl_1_bss_63C = .bss:0x0000063C; // type:object size:0x4 data:float +lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x4 data:float +lbl_1_bss_644 = .bss:0x00000644; // type:object size:0x4 data:float +lbl_1_bss_648 = .bss:0x00000648; // type:object size:0xC data:4byte +lbl_1_bss_654 = .bss:0x00000654; // type:object size:0xC data:float +lbl_1_bss_660 = .bss:0x00000660; // type:object size:0xC data:float +lbl_1_bss_66C = .bss:0x0000066C; // type:object size:0x4 data:float +lbl_1_bss_670 = .bss:0x00000670; // type:object size:0x4 data:float +lbl_1_bss_674 = .bss:0x00000674; // type:object size:0x4 data:float +lbl_1_bss_678 = .bss:0x00000678; // type:object size:0x30 +lbl_1_bss_6A8 = .bss:0x000006A8; // type:object size:0x4 data:float +lbl_1_bss_6AC = .bss:0x000006AC; // type:object size:0x2 data:2byte +lbl_1_bss_6AE = .bss:0x000006AE; // type:object size:0x2 data:2byte +lbl_1_bss_6B0 = .bss:0x000006B0; // type:object size:0x1 data:byte +lbl_1_bss_6B1 = .bss:0x000006B1; // type:object size:0x1 data:byte +lbl_1_bss_6B2 = .bss:0x000006B2; // type:object size:0x1 data:byte +lbl_1_bss_6B3 = .bss:0x000006B3; // type:object size:0x1 data:byte +lbl_1_bss_6B4 = .bss:0x000006B4; // type:object size:0x1 data:byte +lbl_1_bss_6B6 = .bss:0x000006B6; // type:object size:0xA data:2byte +lbl_1_bss_6C0 = .bss:0x000006C0; // type:object size:0x4 data:4byte +lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x44 data:2byte +lbl_1_bss_708 = .bss:0x00000708; // type:object size:0x2 data:2byte +lbl_1_bss_70C = .bss:0x0000070C; // type:object size:0x4 data:4byte +lbl_1_bss_710 = .bss:0x00000710; // type:object size:0x4 data:4byte +lbl_1_bss_714 = .bss:0x00000714; // type:object size:0xC +lbl_1_bss_720 = .bss:0x00000720; // type:object size:0x4 data:4byte +lbl_1_bss_724 = .bss:0x00000724; // type:object size:0x4 data:4byte +lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x2 data:2byte +lbl_1_bss_72A = .bss:0x0000072A; // type:object size:0x2 data:2byte +lbl_1_bss_72C = .bss:0x0000072C; // type:object size:0x4 data:4byte +lbl_1_bss_730 = .bss:0x00000730; // type:object size:0x4 data:4byte +lbl_1_bss_734 = .bss:0x00000734; // type:object size:0x4 data:4byte +lbl_1_bss_738 = .bss:0x00000738; // type:object size:0xC data:float +lbl_1_bss_744 = .bss:0x00000744; // type:object size:0x2 data:2byte +lbl_1_bss_748 = .bss:0x00000748; // type:object size:0x4 data:4byte +lbl_1_bss_74C = .bss:0x0000074C; // type:object size:0x4 data:4byte +lbl_1_bss_750 = .bss:0x00000750; // type:object size:0x2 data:2byte +lbl_1_bss_754 = .bss:0x00000754; // type:object size:0x4 data:float +lbl_1_bss_758 = .bss:0x00000758; // type:object size:0x4 data:4byte +lbl_1_bss_75C = .bss:0x0000075C; // type:object size:0x4 data:4byte +lbl_1_bss_760 = .bss:0x00000760; // type:object size:0x28 +lbl_1_bss_788 = .bss:0x00000788; // type:object size:0x2 data:2byte +lbl_1_bss_78A = .bss:0x0000078A; // type:object size:0x6 data:2byte +lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x6 data:2byte +lbl_1_bss_796 = .bss:0x00000796; // type:object size:0x2 data:2byte +lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x4 data:4byte +lbl_1_bss_79C = .bss:0x0000079C; // type:object size:0x4 data:4byte +lbl_1_bss_7A0 = .bss:0x000007A0; // type:object size:0x4 data:4byte +lbl_1_bss_7A4 = .bss:0x000007A4; // type:object size:0x4 data:4byte +lbl_1_bss_7A8 = .bss:0x000007A8; // type:object size:0x2 data:2byte +lbl_1_bss_7AA = .bss:0x000007AA; // type:object size:0x2 data:2byte +lbl_1_bss_7AC = .bss:0x000007AC; // type:object size:0x8 data:4byte +lbl_1_bss_7B4 = .bss:0x000007B4; // type:object size:0x2 data:2byte +lbl_1_bss_7B8 = .bss:0x000007B8; // type:object size:0x4 data:4byte +lbl_1_bss_7BC = .bss:0x000007BC; // type:object size:0x8 data:4byte +lbl_1_bss_7C4 = .bss:0x000007C4; // type:object size:0xC data:float +lbl_1_bss_7D0 = .bss:0x000007D0; // type:object size:0x2 data:2byte +lbl_1_bss_7D2 = .bss:0x000007D2; // type:object size:0x2 data:2byte +lbl_1_bss_7D4 = .bss:0x000007D4; // type:object size:0x2 data:2byte +lbl_1_bss_7D6 = .bss:0x000007D6; // type:object size:0x2 data:2byte +lbl_1_bss_7D8 = .bss:0x000007D8; // type:object size:0xC data:4byte +lbl_1_bss_7E4 = .bss:0x000007E4; // type:object size:0x4 data:4byte +lbl_1_bss_7E8 = .bss:0x000007E8; // type:object size:0x4 data:float +lbl_1_bss_7EC = .bss:0x000007EC; // type:object size:0x4 data:float +lbl_1_bss_7F0 = .bss:0x000007F0; // type:object size:0x4 data:4byte +lbl_1_bss_7F4 = .bss:0x000007F4; // type:object size:0x4 data:4byte +lbl_1_bss_7F8 = .bss:0x000007F8; // type:object size:0x4 data:4byte +lbl_1_bss_7FC = .bss:0x000007FC; // type:object size:0x10 data:4byte +lbl_1_bss_80C = .bss:0x0000080C; // type:object size:0xC data:float +lbl_1_bss_818 = .bss:0x00000818; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/w02Dll/splits.txt b/config/GMPJ01_00/rels/w02Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w02Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w02Dll/symbols.txt b/config/GMPJ01_00/rels/w02Dll/symbols.txt new file mode 100644 index 00000000..2969cbd4 --- /dev/null +++ b/config/GMPJ01_00/rels/w02Dll/symbols.txt @@ -0,0 +1,456 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x4F4 +fn_1_5D4 = .text:0x000005D4; // type:function size:0x158 +fn_1_72C = .text:0x0000072C; // type:function size:0x44 +fn_1_770 = .text:0x00000770; // type:function size:0x4 +fn_1_774 = .text:0x00000774; // type:function size:0x8C +fn_1_800 = .text:0x00000800; // type:function size:0x12C +fn_1_92C = .text:0x0000092C; // type:function size:0x24 +fn_1_950 = .text:0x00000950; // type:function size:0x4 +fn_1_954 = .text:0x00000954; // type:function size:0x3C +fn_1_990 = .text:0x00000990; // type:function size:0x2C0 +fn_1_C50 = .text:0x00000C50; // type:function size:0x420 +fn_1_1070 = .text:0x00001070; // type:function size:0x38 +fn_1_10A8 = .text:0x000010A8; // type:function size:0x80 +fn_1_1128 = .text:0x00001128; // type:function size:0xF4 +fn_1_121C = .text:0x0000121C; // type:function size:0x38 +fn_1_1254 = .text:0x00001254; // type:function size:0x17C +fn_1_13D0 = .text:0x000013D0; // type:function size:0x148 +fn_1_1518 = .text:0x00001518; // type:function size:0x5C +fn_1_1574 = .text:0x00001574; // type:function size:0x220 +fn_1_1794 = .text:0x00001794; // type:function size:0x60 +fn_1_17F4 = .text:0x000017F4; // type:function size:0x5C +fn_1_1850 = .text:0x00001850; // type:function size:0x744 +fn_1_1F94 = .text:0x00001F94; // type:function size:0x9C +fn_1_2030 = .text:0x00002030; // type:function size:0xD0 +fn_1_2100 = .text:0x00002100; // type:function size:0x120 +fn_1_2220 = .text:0x00002220; // type:function size:0x9C +fn_1_22BC = .text:0x000022BC; // type:function size:0x80 +fn_1_233C = .text:0x0000233C; // type:function size:0x78 +fn_1_23B4 = .text:0x000023B4; // type:function size:0x48 +fn_1_23FC = .text:0x000023FC; // type:function size:0x1D4 +fn_1_25D0 = .text:0x000025D0; // type:function size:0xC4 +fn_1_2694 = .text:0x00002694; // type:function size:0x98 +fn_1_272C = .text:0x0000272C; // type:function size:0x104 +fn_1_2830 = .text:0x00002830; // type:function size:0x3B4 +fn_1_2BE4 = .text:0x00002BE4; // type:function size:0x120 +fn_1_2D04 = .text:0x00002D04; // type:function size:0xC34 +fn_1_3938 = .text:0x00003938; // type:function size:0x14 +fn_1_394C = .text:0x0000394C; // type:function size:0xA8 +fn_1_39F4 = .text:0x000039F4; // type:function size:0x200 +fn_1_3BF4 = .text:0x00003BF4; // type:function size:0x318 +fn_1_3F0C = .text:0x00003F0C; // type:function size:0x58 +fn_1_3F64 = .text:0x00003F64; // type:function size:0x30 +fn_1_3F94 = .text:0x00003F94; // type:function size:0xBC +fn_1_4050 = .text:0x00004050; // type:function size:0xB0 +fn_1_4100 = .text:0x00004100; // type:function size:0xB8 +fn_1_41B8 = .text:0x000041B8; // type:function size:0x1C0 +fn_1_4378 = .text:0x00004378; // type:function size:0x320 +fn_1_4698 = .text:0x00004698; // type:function size:0x50 +fn_1_46E8 = .text:0x000046E8; // type:function size:0xA34 +fn_1_511C = .text:0x0000511C; // type:function size:0x98 +fn_1_51B4 = .text:0x000051B4; // type:function size:0xDC +fn_1_5290 = .text:0x00005290; // type:function size:0x128 +fn_1_53B8 = .text:0x000053B8; // type:function size:0x27C +fn_1_5634 = .text:0x00005634; // type:function size:0x234 +fn_1_5868 = .text:0x00005868; // type:function size:0x258 +fn_1_5AC0 = .text:0x00005AC0; // type:function size:0x1C4 +fn_1_5C84 = .text:0x00005C84; // type:function size:0x74 +fn_1_5CF8 = .text:0x00005CF8; // type:function size:0x30 +fn_1_5D28 = .text:0x00005D28; // type:function size:0x1E0 +fn_1_5F08 = .text:0x00005F08; // type:function size:0x58 +fn_1_5F60 = .text:0x00005F60; // type:function size:0x30 +fn_1_5F90 = .text:0x00005F90; // type:function size:0x9C +fn_1_602C = .text:0x0000602C; // type:function size:0x40 +fn_1_606C = .text:0x0000606C; // type:function size:0x100 +fn_1_616C = .text:0x0000616C; // type:function size:0xDC +fn_1_6248 = .text:0x00006248; // type:function size:0x868 +fn_1_6AB0 = .text:0x00006AB0; // type:function size:0x1F4 +fn_1_6CA4 = .text:0x00006CA4; // type:function size:0x60 +fn_1_6D04 = .text:0x00006D04; // type:function size:0x130 +fn_1_6E34 = .text:0x00006E34; // type:function size:0x74 +fn_1_6EA8 = .text:0x00006EA8; // type:function size:0x43C +fn_1_72E4 = .text:0x000072E4; // type:function size:0x48 +fn_1_732C = .text:0x0000732C; // type:function size:0x2C +fn_1_7358 = .text:0x00007358; // type:function size:0x70 +fn_1_73C8 = .text:0x000073C8; // type:function size:0x11C +fn_1_74E4 = .text:0x000074E4; // type:function size:0x26C +fn_1_7750 = .text:0x00007750; // type:function size:0xC8 +fn_1_7818 = .text:0x00007818; // type:function size:0x80 +fn_1_7898 = .text:0x00007898; // type:function size:0x124 +fn_1_79BC = .text:0x000079BC; // type:function size:0x888 +fn_1_8244 = .text:0x00008244; // type:function size:0x32C +fn_1_8570 = .text:0x00008570; // type:function size:0x8C +fn_1_85FC = .text:0x000085FC; // type:function size:0x7B0 +fn_1_8DAC = .text:0x00008DAC; // type:function size:0x8C +fn_1_8E38 = .text:0x00008E38; // type:function size:0x418 +fn_1_9250 = .text:0x00009250; // type:function size:0x178 +fn_1_93C8 = .text:0x000093C8; // type:function size:0xE4 +fn_1_94AC = .text:0x000094AC; // type:function size:0x14 +fn_1_94C0 = .text:0x000094C0; // type:function size:0x418 +fn_1_98D8 = .text:0x000098D8; // type:function size:0x5EC +fn_1_9EC4 = .text:0x00009EC4; // type:function size:0x694 +fn_1_A558 = .text:0x0000A558; // type:function size:0x390 +fn_1_A8E8 = .text:0x0000A8E8; // type:function size:0xB68 +fn_1_B450 = .text:0x0000B450; // type:function size:0x458 +fn_1_B8A8 = .text:0x0000B8A8; // type:function size:0x288 +fn_1_BB30 = .text:0x0000BB30; // type:function size:0xEC +fn_1_BC1C = .text:0x0000BC1C; // type:function size:0xE0 +fn_1_BCFC = .text:0x0000BCFC; // type:function size:0x178 +fn_1_BE74 = .text:0x0000BE74; // type:function size:0x14 +fn_1_BE88 = .text:0x0000BE88; // type:function size:0x280 +fn_1_C108 = .text:0x0000C108; // type:function size:0xBFC +fn_1_CD04 = .text:0x0000CD04; // type:function size:0x6A8 +fn_1_D3AC = .text:0x0000D3AC; // type:function size:0x518 +fn_1_D8C4 = .text:0x0000D8C4; // type:function size:0x684 +fn_1_DF48 = .text:0x0000DF48; // type:function size:0x364 +fn_1_E2AC = .text:0x0000E2AC; // type:function size:0x64 +fn_1_E310 = .text:0x0000E310; // type:function size:0x10C +fn_1_E41C = .text:0x0000E41C; // type:function size:0xB8 +_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:0x8 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:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0xC data:4byte +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x18 data:4byte +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x24 data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x28 data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +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:double +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_198 = .rodata:0x00000198; // type:object size:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0xC data:4byte +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte +lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte +lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x18 +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x12 data:string +lbl_1_data_2BA = .data:0x000002BA; // type:object size:0xE data:string +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x10 data:string +lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x50 +lbl_1_data_328 = .data:0x00000328; // type:object size:0x1D data:string +lbl_1_data_345 = .data:0x00000345; // type:object size:0x1B data:string +lbl_1_data_360 = .data:0x00000360; // type:object size:0x11 data:string +lbl_1_data_371 = .data:0x00000371; // type:object size:0x7 +lbl_1_data_378 = .data:0x00000378; // type:object size:0x24 +lbl_1_data_39C = .data:0x0000039C; // type:object size:0x24 +lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x24 +lbl_1_data_3E4 = .data:0x000003E4; // type:object size:0x20 +lbl_1_data_404 = .data:0x00000404; // type:object size:0x20 +lbl_1_data_424 = .data:0x00000424; // type:object size:0x4 +lbl_1_data_428 = .data:0x00000428; // type:object size:0x38 +lbl_1_data_460 = .data:0x00000460; // type:object size:0x5 data:string +lbl_1_data_465 = .data:0x00000465; // type:object size:0x6 data:string +lbl_1_data_46B = .data:0x0000046B; // type:object size:0x9 +lbl_1_data_474 = .data:0x00000474; // type:object size:0xC +lbl_1_data_480 = .data:0x00000480; // type:object size:0x10 +lbl_1_data_490 = .data:0x00000490; // type:object size:0x20 +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x20 +lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0x40 +lbl_1_data_510 = .data:0x00000510; // type:object size:0x14 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0xC +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x20 data:2byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x28 data:2byte +lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x2 data:2byte +lbl_1_bss_86 = .bss:0x00000086; // type:object size:0xE data:2byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0xC data:4byte +lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x2 data:2byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0xC +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x6 +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x6 +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0xC +lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte +lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x24 +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte +lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte +lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:float +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:float +lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x24 +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x24 +lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x24 data:float +lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x6 data:2byte +lbl_1_bss_18A = .bss:0x0000018A; // type:object size:0x6 data:2byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x6 data:2byte +lbl_1_bss_196 = .bss:0x00000196; // type:object size:0x2 data:2byte +lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x8 data:2byte +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0xC data:float +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x2 data:2byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0xC data:float +lbl_1_bss_1BC = .bss:0x000001BC; // type:object size:0x4 data:float +lbl_1_bss_1C0 = .bss:0x000001C0; // type:object size:0x2 data:2byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x20 +lbl_1_bss_1E4 = .bss:0x000001E4; // type:object size:0xB4 +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0xB4 data:float +lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x1E +lbl_1_bss_36A = .bss:0x0000036A; // type:object size:0x2 data:2byte +lbl_1_bss_36C = .bss:0x0000036C; // type:object size:0x2 data:2byte +lbl_1_bss_36E = .bss:0x0000036E; // type:object size:0x2 data:2byte +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0x2 data:2byte +lbl_1_bss_374 = .bss:0x00000374; // type:object size:0x4 data:4byte +lbl_1_bss_378 = .bss:0x00000378; // type:object size:0x8 data:4byte +lbl_1_bss_380 = .bss:0x00000380; // type:object size:0x4 data:float +lbl_1_bss_384 = .bss:0x00000384; // type:object size:0x4 data:4byte +lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte +lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/w03Dll/splits.txt b/config/GMPJ01_00/rels/w03Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w03Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w03Dll/symbols.txt b/config/GMPJ01_00/rels/w03Dll/symbols.txt new file mode 100644 index 00000000..d0fda24e --- /dev/null +++ b/config/GMPJ01_00/rels/w03Dll/symbols.txt @@ -0,0 +1,443 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x660 +fn_1_740 = .text:0x00000740; // type:function size:0x144 +fn_1_884 = .text:0x00000884; // type:function size:0x6C +fn_1_8F0 = .text:0x000008F0; // type:function size:0x20 +fn_1_910 = .text:0x00000910; // type:function size:0x164 +fn_1_A74 = .text:0x00000A74; // type:function size:0x84 +fn_1_AF8 = .text:0x00000AF8; // type:function size:0x64 +fn_1_B5C = .text:0x00000B5C; // type:function size:0x198 +fn_1_CF4 = .text:0x00000CF4; // type:function size:0xF8 +fn_1_DEC = .text:0x00000DEC; // type:function size:0x2C4 +fn_1_10B0 = .text:0x000010B0; // type:function size:0x34 +fn_1_10E4 = .text:0x000010E4; // type:function size:0x1E4 +fn_1_12C8 = .text:0x000012C8; // type:function size:0x90 +fn_1_1358 = .text:0x00001358; // type:function size:0x1D4 +fn_1_152C = .text:0x0000152C; // type:function size:0xBC +fn_1_15E8 = .text:0x000015E8; // type:function size:0x68 +fn_1_1650 = .text:0x00001650; // type:function size:0x38C +fn_1_19DC = .text:0x000019DC; // type:function size:0x340 +fn_1_1D1C = .text:0x00001D1C; // type:function size:0x1B8 +fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x20C +fn_1_20E0 = .text:0x000020E0; // type:function size:0x600 +fn_1_26E0 = .text:0x000026E0; // type:function size:0x138 +fn_1_2818 = .text:0x00002818; // type:function size:0x118 +fn_1_2930 = .text:0x00002930; // type:function size:0x110 +fn_1_2A40 = .text:0x00002A40; // type:function size:0x80 +fn_1_2AC0 = .text:0x00002AC0; // type:function size:0x84 +fn_1_2B44 = .text:0x00002B44; // type:function size:0x514 +fn_1_3058 = .text:0x00003058; // type:function size:0x44 +fn_1_309C = .text:0x0000309C; // type:function size:0xA0 +fn_1_313C = .text:0x0000313C; // type:function size:0xDC +fn_1_3218 = .text:0x00003218; // type:function size:0xEC +fn_1_3304 = .text:0x00003304; // type:function size:0x174 +fn_1_3478 = .text:0x00003478; // type:function size:0x39C +fn_1_3814 = .text:0x00003814; // type:function size:0x154 +fn_1_3968 = .text:0x00003968; // type:function size:0x520 +fn_1_3E88 = .text:0x00003E88; // type:function size:0xD4 +fn_1_3F5C = .text:0x00003F5C; // type:function size:0x3F8 +fn_1_4354 = .text:0x00004354; // type:function size:0xD0 +fn_1_4424 = .text:0x00004424; // type:function size:0x4C8 +fn_1_48EC = .text:0x000048EC; // type:function size:0x1B0 +fn_1_4A9C = .text:0x00004A9C; // type:function size:0x20 +fn_1_4ABC = .text:0x00004ABC; // type:function size:0x250 +fn_1_4D0C = .text:0x00004D0C; // type:function size:0x54 +fn_1_4D60 = .text:0x00004D60; // type:function size:0x1C4 +fn_1_4F24 = .text:0x00004F24; // type:function size:0x1B0 +fn_1_50D4 = .text:0x000050D4; // type:function size:0x764 +fn_1_5838 = .text:0x00005838; // type:function size:0x290 +fn_1_5AC8 = .text:0x00005AC8; // type:function size:0x194 +fn_1_5C5C = .text:0x00005C5C; // type:function size:0x3D0 +fn_1_602C = .text:0x0000602C; // type:function size:0x178 +fn_1_61A4 = .text:0x000061A4; // type:function size:0xF8 +fn_1_629C = .text:0x0000629C; // type:function size:0x34 +fn_1_62D0 = .text:0x000062D0; // type:function size:0x2C +fn_1_62FC = .text:0x000062FC; // type:function size:0xF8 +fn_1_63F4 = .text:0x000063F4; // type:function size:0xA0 +fn_1_6494 = .text:0x00006494; // type:function size:0x204 +fn_1_6698 = .text:0x00006698; // type:function size:0xC4 +fn_1_675C = .text:0x0000675C; // type:function size:0x9C +fn_1_67F8 = .text:0x000067F8; // type:function size:0x8C +fn_1_6884 = .text:0x00006884; // type:function size:0x14 +fn_1_6898 = .text:0x00006898; // type:function size:0x300 +fn_1_6B98 = .text:0x00006B98; // type:function size:0x404 +fn_1_6F9C = .text:0x00006F9C; // type:function size:0x3C0 +fn_1_735C = .text:0x0000735C; // type:function size:0x320 +fn_1_767C = .text:0x0000767C; // type:function size:0x168 +fn_1_77E4 = .text:0x000077E4; // type:function size:0x78 +fn_1_785C = .text:0x0000785C; // type:function size:0x184 +fn_1_79E0 = .text:0x000079E0; // type:function size:0xDC +fn_1_7ABC = .text:0x00007ABC; // type:function size:0x9C +fn_1_7B58 = .text:0x00007B58; // type:function size:0x50 +fn_1_7BA8 = .text:0x00007BA8; // type:function size:0x90 +fn_1_7C38 = .text:0x00007C38; // type:function size:0x60 +fn_1_7C98 = .text:0x00007C98; // type:function size:0x80 +fn_1_7D18 = .text:0x00007D18; // type:function size:0x428 +fn_1_8140 = .text:0x00008140; // type:function size:0xA0 +fn_1_81E0 = .text:0x000081E0; // type:function size:0x254 +fn_1_8434 = .text:0x00008434; // type:function size:0x74 +fn_1_84A8 = .text:0x000084A8; // type:function size:0x88 +fn_1_8530 = .text:0x00008530; // type:function size:0x168 +fn_1_8698 = .text:0x00008698; // type:function size:0x570 +fn_1_8C08 = .text:0x00008C08; // type:function size:0x23C +fn_1_8E44 = .text:0x00008E44; // type:function size:0x200 +fn_1_9044 = .text:0x00009044; // type:function size:0x174 +fn_1_91B8 = .text:0x000091B8; // type:function size:0x78 +fn_1_9230 = .text:0x00009230; // type:function size:0x154 +fn_1_9384 = .text:0x00009384; // type:function size:0xF0 +fn_1_9474 = .text:0x00009474; // type:function size:0x144 +fn_1_95B8 = .text:0x000095B8; // type:function size:0x240 +fn_1_97F8 = .text:0x000097F8; // type:function size:0x224 +fn_1_9A1C = .text:0x00009A1C; // type:function size:0x60 +fn_1_9A7C = .text:0x00009A7C; // type:function size:0x20 +fn_1_9A9C = .text:0x00009A9C; // type:function size:0x4 +fn_1_9AA0 = .text:0x00009AA0; // type:function size:0x90 +fn_1_9B30 = .text:0x00009B30; // type:function size:0x15C +fn_1_9C8C = .text:0x00009C8C; // type:function size:0x68 +fn_1_9CF4 = .text:0x00009CF4; // type:function size:0x284 +fn_1_9F78 = .text:0x00009F78; // type:function size:0x6C +fn_1_9FE4 = .text:0x00009FE4; // type:function size:0x468 +fn_1_A44C = .text:0x0000A44C; // type:function size:0x194 +fn_1_A5E0 = .text:0x0000A5E0; // type:function size:0xD0 +fn_1_A6B0 = .text:0x0000A6B0; // type:function size:0xF0 +fn_1_A7A0 = .text:0x0000A7A0; // type:function size:0x10C +fn_1_A8AC = .text:0x0000A8AC; // type:function size:0xE8 +fn_1_A994 = .text:0x0000A994; // type:function size:0x184 +fn_1_AB18 = .text:0x0000AB18; // type:function size:0xB8 +fn_1_ABD0 = .text:0x0000ABD0; // type:function size:0x108 +fn_1_ACD8 = .text:0x0000ACD8; // type:function size:0x148 +fn_1_AE20 = .text:0x0000AE20; // type:function size:0x2C +fn_1_AE4C = .text:0x0000AE4C; // type:function size:0xD8 +fn_1_AF24 = .text:0x0000AF24; // type:function size:0x180 +fn_1_B0A4 = .text:0x0000B0A4; // type:function size:0x2AC +fn_1_B350 = .text:0x0000B350; // type:function size:0x15C +fn_1_B4AC = .text:0x0000B4AC; // type:function size:0x1DC +fn_1_B688 = .text:0x0000B688; // type:function size:0xC0 +fn_1_B748 = .text:0x0000B748; // type:function size:0x1A0 +fn_1_B8E8 = .text:0x0000B8E8; // type:function size:0x260 +fn_1_BB48 = .text:0x0000BB48; // type:function size:0x2C +fn_1_BB74 = .text:0x0000BB74; // type:function size:0x50 +fn_1_BBC4 = .text:0x0000BBC4; // type:function size:0x34 +fn_1_BBF8 = .text:0x0000BBF8; // type:function size:0x84 +fn_1_BC7C = .text:0x0000BC7C; // type:function size:0x130 +fn_1_BDAC = .text:0x0000BDAC; // type:function size:0x84 +fn_1_BE30 = .text:0x0000BE30; // type:function size:0x418 +_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_38 = .rodata:0x00000038; // type:object size:0x8 data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC data:4byte +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x24 data:4byte +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x6 data:2byte +lbl_1_rodata_BE = .rodata:0x000000BE; // type:object size:0x1 data:byte +lbl_1_rodata_C2 = .rodata:0x000000C2; // type:object size:0x6 data:byte +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x20 data:4byte +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:4byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x10 data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +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_200 = .rodata:0x00000200; // type:object size:0x8 data:double +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:0x8 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E0 +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x2 data:2byte +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0x2 data:2byte +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x2 data:2byte +lbl_1_data_1E6 = .data:0x000001E6; // type:object size:0x2 data:2byte +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x2 data:2byte +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x20 data:float +lbl_1_data_20C = .data:0x0000020C; // type:object size:0x8 +lbl_1_data_214 = .data:0x00000214; // type:object size:0x8 +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x30 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x10 +lbl_1_data_26C = .data:0x0000026C; // type:object size:0x14 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte +lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte +lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x4 data:4byte +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x4 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x20 +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x20 +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x20 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x20 +lbl_1_data_310 = .data:0x00000310; // type:object size:0x2 data:2byte +lbl_1_data_312 = .data:0x00000312; // type:object size:0x2 data:2byte +lbl_1_data_314 = .data:0x00000314; // type:object size:0x2 data:2byte +lbl_1_data_316 = .data:0x00000316; // type:object size:0x2 data:2byte +lbl_1_data_318 = .data:0x00000318; // type:object size:0x18 +lbl_1_data_330 = .data:0x00000330; // type:object size:0xD data:string +lbl_1_data_33D = .data:0x0000033D; // type:object size:0x6 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0x9 +lbl_1_data_34C = .data:0x0000034C; // type:object size:0x8 +lbl_1_data_354 = .data:0x00000354; // type:object size:0x8 +lbl_1_data_35C = .data:0x0000035C; // type:object size:0xC +lbl_1_data_368 = .data:0x00000368; // type:object size:0x20 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x2 data:2byte +lbl_1_data_38A = .data:0x0000038A; // type:object size:0x2 data:2byte +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x2 data:2byte +lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 +lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0xB data:string +lbl_1_data_3AB = .data:0x000003AB; // type:object size:0x6 data:string +lbl_1_data_3B1 = .data:0x000003B1; // type:object size:0x7 +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x48 +lbl_1_data_400 = .data:0x00000400; // type:object size:0x3 data:string +lbl_1_data_403 = .data:0x00000403; // type:object size:0xD +lbl_1_data_410 = .data:0x00000410; // type:object size:0x8 data:string +lbl_1_data_418 = .data:0x00000418; // type:object size:0x8 data:string +lbl_1_data_420 = .data:0x00000420; // type:object size:0x8 data:string +lbl_1_data_428 = .data:0x00000428; // type:object size:0x8 data:string +lbl_1_data_430 = .data:0x00000430; // type:object size:0x8 data:string +lbl_1_data_438 = .data:0x00000438; // type:object size:0x18 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x4 data:4byte +lbl_1_data_454 = .data:0x00000454; // type:object size:0x2 data:2byte +lbl_1_data_456 = .data:0x00000456; // type:object size:0x2 data:2byte +lbl_1_data_458 = .data:0x00000458; // type:object size:0x2 data:2byte +lbl_1_data_45C = .data:0x0000045C; // type:object size:0xC +lbl_1_data_468 = .data:0x00000468; // type:object size:0x8 +lbl_1_data_470 = .data:0x00000470; // type:object size:0x20 +lbl_1_data_490 = .data:0x00000490; // type:object size:0x20 +lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x1 data:byte +lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x14 +lbl_1_data_4C8 = .data:0x000004C8; // type:object size:0x6 +lbl_1_data_4CE = .data:0x000004CE; // type:object size:0xA +lbl_1_data_4D8 = .data:0x000004D8; // type:object size:0x2 data:2byte +lbl_1_data_4DA = .data:0x000004DA; // type:object size:0x2 data:2byte +lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x2 data:2byte +lbl_1_data_4E0 = .data:0x000004E0; // type:object size:0x4 data:4byte +lbl_1_data_4E4 = .data:0x000004E4; // type:object size:0x2 data:2byte +lbl_1_data_4E6 = .data:0x000004E6; // type:object size:0xE +lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x5 data:string +lbl_1_data_4F9 = .data:0x000004F9; // type:object size:0x6 data:string +lbl_1_data_4FF = .data:0x000004FF; // type:object size:0x9 +lbl_1_data_508 = .data:0x00000508; // type:object size:0xC +lbl_1_data_514 = .data:0x00000514; // type:object size:0x38 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x1C data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x1 data:byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0xC +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x20 +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x2 data:2byte +lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 data:2byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x2 data:2byte +lbl_1_bss_6E = .bss:0x0000006E; // type:object size:0x1 data:byte +lbl_1_bss_6F = .bss:0x0000006F; // type:object size:0x1 data:byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x1 data:byte +lbl_1_bss_7D = .bss:0x0000007D; // type:object size:0x1 data:byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0xA0 +lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte +lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:4byte +lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x2 data:2byte +lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:4byte +lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x8 +lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x8 data:4byte +lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte +lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte +lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x1 data:byte +lbl_1_bss_14E = .bss:0x0000014E; // type:object size:0x2 data:2byte +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x30 +lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte +lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x4 data:4byte +lbl_1_bss_188 = .bss:0x00000188; // type:object size:0x4 data:4byte +lbl_1_bss_18C = .bss:0x0000018C; // type:object size:0x1 data:byte +lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte +lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x3 diff --git a/config/GMPJ01_00/rels/w04Dll/splits.txt b/config/GMPJ01_00/rels/w04Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w04Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w04Dll/symbols.txt b/config/GMPJ01_00/rels/w04Dll/symbols.txt new file mode 100644 index 00000000..662a89da --- /dev/null +++ b/config/GMPJ01_00/rels/w04Dll/symbols.txt @@ -0,0 +1,451 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x514 +fn_1_5F4 = .text:0x000005F4; // type:function size:0x15C +fn_1_750 = .text:0x00000750; // type:function size:0x44 +fn_1_794 = .text:0x00000794; // type:function size:0x4 +fn_1_798 = .text:0x00000798; // type:function size:0x64 +fn_1_7FC = .text:0x000007FC; // type:function size:0x134 +fn_1_930 = .text:0x00000930; // type:function size:0x24 +fn_1_954 = .text:0x00000954; // type:function size:0x4 +fn_1_958 = .text:0x00000958; // type:function size:0x3A0 +fn_1_CF8 = .text:0x00000CF8; // type:function size:0x38 +fn_1_D30 = .text:0x00000D30; // type:function size:0x80 +fn_1_DB0 = .text:0x00000DB0; // type:function size:0x28C +fn_1_103C = .text:0x0000103C; // type:function size:0xF4 +fn_1_1130 = .text:0x00001130; // type:function size:0x1CC +fn_1_12FC = .text:0x000012FC; // type:function size:0x2CC +fn_1_15C8 = .text:0x000015C8; // type:function size:0x50 +fn_1_1618 = .text:0x00001618; // type:function size:0x19C +fn_1_17B4 = .text:0x000017B4; // type:function size:0x168 +fn_1_191C = .text:0x0000191C; // type:function size:0x27C +fn_1_1B98 = .text:0x00001B98; // type:function size:0x94 +fn_1_1C2C = .text:0x00001C2C; // type:function size:0x234 +fn_1_1E60 = .text:0x00001E60; // type:function size:0x1A8 +fn_1_2008 = .text:0x00002008; // type:function size:0x3C +fn_1_2044 = .text:0x00002044; // type:function size:0x14 +fn_1_2058 = .text:0x00002058; // type:function size:0x94 +fn_1_20EC = .text:0x000020EC; // type:function size:0x7D0 +fn_1_28BC = .text:0x000028BC; // type:function size:0x2D0 +fn_1_2B8C = .text:0x00002B8C; // type:function size:0x84 +fn_1_2C10 = .text:0x00002C10; // type:function size:0x250 +fn_1_2E60 = .text:0x00002E60; // type:function size:0x88 +fn_1_2EE8 = .text:0x00002EE8; // type:function size:0x6C +fn_1_2F54 = .text:0x00002F54; // type:function size:0x68 +fn_1_2FBC = .text:0x00002FBC; // type:function size:0x20 +fn_1_2FDC = .text:0x00002FDC; // type:function size:0xC8 +fn_1_30A4 = .text:0x000030A4; // type:function size:0x834 +fn_1_38D8 = .text:0x000038D8; // type:function size:0x3C4 +fn_1_3C9C = .text:0x00003C9C; // type:function size:0x90C +fn_1_45A8 = .text:0x000045A8; // type:function size:0x88 +fn_1_4630 = .text:0x00004630; // type:function size:0x50 +fn_1_4680 = .text:0x00004680; // type:function size:0x1C8 +fn_1_4848 = .text:0x00004848; // type:function size:0x7D0 +fn_1_5018 = .text:0x00005018; // type:function size:0x288 +fn_1_52A0 = .text:0x000052A0; // type:function size:0x300 +fn_1_55A0 = .text:0x000055A0; // type:function size:0x14 +fn_1_55B4 = .text:0x000055B4; // type:function size:0x94 +fn_1_5648 = .text:0x00005648; // type:function size:0x1E0 +fn_1_5828 = .text:0x00005828; // type:function size:0x7C +fn_1_58A4 = .text:0x000058A4; // type:function size:0xDC +fn_1_5980 = .text:0x00005980; // type:function size:0x44 +fn_1_59C4 = .text:0x000059C4; // type:function size:0x68 +fn_1_5A2C = .text:0x00005A2C; // type:function size:0x5F8 +fn_1_6024 = .text:0x00006024; // type:function size:0x28C +fn_1_62B0 = .text:0x000062B0; // type:function size:0x628 +fn_1_68D8 = .text:0x000068D8; // type:function size:0x420 +fn_1_6CF8 = .text:0x00006CF8; // type:function size:0x608 +fn_1_7300 = .text:0x00007300; // type:function size:0x27C +fn_1_757C = .text:0x0000757C; // type:function size:0x5C +fn_1_75D8 = .text:0x000075D8; // type:function size:0x2B0 +fn_1_7888 = .text:0x00007888; // type:function size:0x11D8 +fn_1_8A60 = .text:0x00008A60; // type:function size:0xE24 +fn_1_9884 = .text:0x00009884; // type:function size:0x294 +fn_1_9B18 = .text:0x00009B18; // type:function size:0xA8 +fn_1_9BC0 = .text:0x00009BC0; // type:function size:0x3C +fn_1_9BFC = .text:0x00009BFC; // type:function size:0x290 +fn_1_9E8C = .text:0x00009E8C; // type:function size:0x14 +fn_1_9EA0 = .text:0x00009EA0; // type:function size:0x94 +fn_1_9F34 = .text:0x00009F34; // type:function size:0x124 +fn_1_A058 = .text:0x0000A058; // type:function size:0x84 +fn_1_A0DC = .text:0x0000A0DC; // type:function size:0xF8 +fn_1_A1D4 = .text:0x0000A1D4; // type:function size:0x52C +fn_1_A700 = .text:0x0000A700; // type:function size:0xCC +fn_1_A7CC = .text:0x0000A7CC; // type:function size:0x1294 +fn_1_BA60 = .text:0x0000BA60; // type:function size:0x84 +fn_1_BAE4 = .text:0x0000BAE4; // type:function size:0x7BC +fn_1_C2A0 = .text:0x0000C2A0; // type:function size:0xCC +fn_1_C36C = .text:0x0000C36C; // type:function size:0x418 +fn_1_C784 = .text:0x0000C784; // type:function size:0x34 +fn_1_C7B8 = .text:0x0000C7B8; // type:function size:0x7B8 +fn_1_CF70 = .text:0x0000CF70; // type:function size:0x120 +fn_1_D090 = .text:0x0000D090; // type:function size:0x30 +fn_1_D0C0 = .text:0x0000D0C0; // type:function size:0x98 +fn_1_D158 = .text:0x0000D158; // type:function size:0xBC +fn_1_D214 = .text:0x0000D214; // type:function size:0x74 +fn_1_D288 = .text:0x0000D288; // type:function size:0x2B0 +fn_1_D538 = .text:0x0000D538; // type:function size:0x154 +fn_1_D68C = .text:0x0000D68C; // type:function size:0x64 +fn_1_D6F0 = .text:0x0000D6F0; // type:function size:0x64 +fn_1_D754 = .text:0x0000D754; // type:function size:0x894 +fn_1_DFE8 = .text:0x0000DFE8; // type:function size:0x140 +fn_1_E128 = .text:0x0000E128; // type:function size:0x48 +fn_1_E170 = .text:0x0000E170; // type:function size:0x1E8 +fn_1_E358 = .text:0x0000E358; // type:function size:0x14C +fn_1_E4A4 = .text:0x0000E4A4; // type:function size:0x1EC +fn_1_E690 = .text:0x0000E690; // type:function size:0x1D4 +fn_1_E864 = .text:0x0000E864; // type:function size:0x18C +_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:0x8 data:double +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0xC data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC data:4byte +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte +lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte +lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x8 +lbl_1_data_298 = .data:0x00000298; // type:object size:0x8 +lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0xC +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x24 +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x20 +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x4 data:4byte +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 +lbl_1_data_334 = .data:0x00000334; // type:object size:0x5 data:string +lbl_1_data_339 = .data:0x00000339; // type:object size:0x5 data:string +lbl_1_data_33E = .data:0x0000033E; // type:object size:0x5 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0x5 data:string +lbl_1_data_348 = .data:0x00000348; // type:object size:0x10 +lbl_1_data_358 = .data:0x00000358; // type:object size:0x10 +lbl_1_data_368 = .data:0x00000368; // type:object size:0x8 data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0x12 data:string +lbl_1_data_382 = .data:0x00000382; // type:object size:0x11 data:string +lbl_1_data_393 = .data:0x00000393; // type:object size:0x15 +lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x8 data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x9 data:string +lbl_1_data_3B9 = .data:0x000003B9; // type:object size:0x6 data:string +lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x5 data:string +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x8 +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x14 data:4byte +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x14 +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x20 +lbl_1_data_414 = .data:0x00000414; // type:object size:0x10 +lbl_1_data_424 = .data:0x00000424; // type:object size:0x30 data:2byte +lbl_1_data_454 = .data:0x00000454; // type:object size:0xB data:string +lbl_1_data_45F = .data:0x0000045F; // type:object size:0x2 data:string +lbl_1_data_461 = .data:0x00000461; // type:object size:0xC data:string +lbl_1_data_46D = .data:0x0000046D; // type:object size:0x1B +lbl_1_data_488 = .data:0x00000488; // type:object size:0x3 data:string +lbl_1_data_48B = .data:0x0000048B; // type:object size:0x11 +lbl_1_data_49C = .data:0x0000049C; // type:object size:0x54 +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x6 data:string +lbl_1_data_4F6 = .data:0x000004F6; // type:object size:0x6 data:string +lbl_1_data_4FC = .data:0x000004FC; // type:object size:0x6 data:string +lbl_1_data_502 = .data:0x00000502; // type:object size:0x8 data:string +lbl_1_data_50A = .data:0x0000050A; // type:object size:0x8 data:string +lbl_1_data_512 = .data:0x00000512; // type:object size:0xA +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 data:4byte +lbl_1_data_534 = .data:0x00000534; // type:object size:0xC +lbl_1_data_540 = .data:0x00000540; // type:object size:0x48 +lbl_1_data_588 = .data:0x00000588; // type:object size:0x4 data:4byte +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x5 data:string +lbl_1_data_591 = .data:0x00000591; // type:object size:0x5 data:string +lbl_1_data_596 = .data:0x00000596; // type:object size:0x5 data:string +lbl_1_data_59B = .data:0x0000059B; // type:object size:0x5 data:string +lbl_1_data_5A0 = .data:0x000005A0; // type:object size:0x5 data:string +lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x5 data:string +lbl_1_data_5AA = .data:0x000005AA; // type:object size:0x5 data:string +lbl_1_data_5AF = .data:0x000005AF; // type:object size:0x5 data:string +lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0x8 +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x24 data:4byte +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0x10 +lbl_1_data_5F0 = .data:0x000005F0; // type:object size:0x20 +lbl_1_data_610 = .data:0x00000610; // type:object size:0xE data:string +lbl_1_data_61E = .data:0x0000061E; // type:object size:0xE data:string +lbl_1_data_62C = .data:0x0000062C; // type:object size:0x10 +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x3 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x24 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x18 +lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 data:2byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2 data:2byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x2 data:2byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x30 +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x2 data:2byte +lbl_1_bss_B2 = .bss:0x000000B2; // type:object size:0x8 +lbl_1_bss_BA = .bss:0x000000BA; // type:object size:0x8 data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 data:2byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x10 +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x10 +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x10 +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x6 data:2byte +lbl_1_bss_FA = .bss:0x000000FA; // type:object size:0x6 data:2byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0xC +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x20 +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x6 +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 data:2byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0xD4 data:2byte +lbl_1_bss_210 = .bss:0x00000210; // type:object size:0x30 +lbl_1_bss_240 = .bss:0x00000240; // type:object size:0x30 +lbl_1_bss_270 = .bss:0x00000270; // type:object size:0x2 data:2byte +lbl_1_bss_272 = .bss:0x00000272; // type:object size:0x2 data:2byte +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x2 data:2byte +lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x4 data:4byte +lbl_1_bss_27C = .bss:0x0000027C; // type:object size:0x2 data:2byte +lbl_1_bss_27E = .bss:0x0000027E; // type:object size:0x2 data:2byte +lbl_1_bss_280 = .bss:0x00000280; // type:object size:0x2 data:2byte +lbl_1_bss_282 = .bss:0x00000282; // type:object size:0x6 data:2byte +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x4 data:4byte +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x8 data:4byte +lbl_1_bss_294 = .bss:0x00000294; // type:object size:0x4 data:float +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x6 +lbl_1_bss_29E = .bss:0x0000029E; // type:object size:0x8 +lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0x6 +lbl_1_bss_2AC = .bss:0x000002AC; // type:object size:0x2 data:2byte +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:4byte +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xE +lbl_1_bss_2C2 = .bss:0x000002C2; // type:object size:0xE +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x28 data:2byte +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x2 data:2byte +lbl_1_bss_2FA = .bss:0x000002FA; // type:object size:0x2 data:2byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0xC data:float +lbl_1_bss_314 = .bss:0x00000314; // type:object size:0x2 data:2byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x4 data:4byte +lbl_1_bss_31C = .bss:0x0000031C; // type:object size:0x4 data:4byte +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x4 data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0x2 data:2byte +lbl_1_bss_326 = .bss:0x00000326; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/w05Dll/splits.txt b/config/GMPJ01_00/rels/w05Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w05Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w05Dll/symbols.txt b/config/GMPJ01_00/rels/w05Dll/symbols.txt new file mode 100644 index 00000000..03b04aa2 --- /dev/null +++ b/config/GMPJ01_00/rels/w05Dll/symbols.txt @@ -0,0 +1,356 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x4D8 +fn_1_5B8 = .text:0x000005B8; // type:function size:0x18C +fn_1_744 = .text:0x00000744; // type:function size:0x44 +fn_1_788 = .text:0x00000788; // type:function size:0x4 +fn_1_78C = .text:0x0000078C; // type:function size:0xA0 +fn_1_82C = .text:0x0000082C; // type:function size:0x100 +fn_1_92C = .text:0x0000092C; // type:function size:0x24 +fn_1_950 = .text:0x00000950; // type:function size:0x4 +fn_1_954 = .text:0x00000954; // type:function size:0x3F8 +fn_1_D4C = .text:0x00000D4C; // type:function size:0x38 +fn_1_D84 = .text:0x00000D84; // type:function size:0x80 +fn_1_E04 = .text:0x00000E04; // type:function size:0x3C +fn_1_E40 = .text:0x00000E40; // type:function size:0x2D4 +fn_1_1114 = .text:0x00001114; // type:function size:0xF4 +fn_1_1208 = .text:0x00001208; // type:function size:0x1CC +fn_1_13D4 = .text:0x000013D4; // type:function size:0xFC +fn_1_14D0 = .text:0x000014D0; // type:function size:0x2C +fn_1_14FC = .text:0x000014FC; // type:function size:0x60 +fn_1_155C = .text:0x0000155C; // type:function size:0x8E8 +fn_1_1E44 = .text:0x00001E44; // type:function size:0xCFC +fn_1_2B40 = .text:0x00002B40; // type:function size:0x13C +fn_1_2C7C = .text:0x00002C7C; // type:function size:0x3C8 +fn_1_3044 = .text:0x00003044; // type:function size:0x3EC +fn_1_3430 = .text:0x00003430; // type:function size:0xE4 +fn_1_3514 = .text:0x00003514; // type:function size:0x874 +fn_1_3D88 = .text:0x00003D88; // type:function size:0x104 +fn_1_3E8C = .text:0x00003E8C; // type:function size:0xE8 +fn_1_3F74 = .text:0x00003F74; // type:function size:0x64 +fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x5C +fn_1_4034 = .text:0x00004034; // type:function size:0xE80 +fn_1_4EB4 = .text:0x00004EB4; // type:function size:0x794 +fn_1_5648 = .text:0x00005648; // type:function size:0x14C +fn_1_5794 = .text:0x00005794; // type:function size:0xB18 +fn_1_62AC = .text:0x000062AC; // type:function size:0x210 +fn_1_64BC = .text:0x000064BC; // type:function size:0x12C +fn_1_65E8 = .text:0x000065E8; // type:function size:0x88 +fn_1_6670 = .text:0x00006670; // type:function size:0x50 +fn_1_66C0 = .text:0x000066C0; // type:function size:0x254 +fn_1_6914 = .text:0x00006914; // type:function size:0x214 +fn_1_6B28 = .text:0x00006B28; // type:function size:0x54 +fn_1_6B7C = .text:0x00006B7C; // type:function size:0x708 +fn_1_7284 = .text:0x00007284; // type:function size:0x60 +fn_1_72E4 = .text:0x000072E4; // type:function size:0x30 +fn_1_7314 = .text:0x00007314; // type:function size:0xAC +fn_1_73C0 = .text:0x000073C0; // type:function size:0x40 +fn_1_7400 = .text:0x00007400; // type:function size:0xD0 +fn_1_74D0 = .text:0x000074D0; // type:function size:0x2E0 +fn_1_77B0 = .text:0x000077B0; // type:function size:0xF0 +fn_1_78A0 = .text:0x000078A0; // type:function size:0x88 +fn_1_7928 = .text:0x00007928; // type:function size:0x74 +fn_1_799C = .text:0x0000799C; // type:function size:0x4B0 +fn_1_7E4C = .text:0x00007E4C; // type:function size:0x48 +fn_1_7E94 = .text:0x00007E94; // type:function size:0x70 +fn_1_7F04 = .text:0x00007F04; // type:function size:0x1D4 +fn_1_80D8 = .text:0x000080D8; // type:function size:0x338 +fn_1_8410 = .text:0x00008410; // type:function size:0xFC +fn_1_850C = .text:0x0000850C; // type:function size:0x15C +fn_1_8668 = .text:0x00008668; // type:function size:0x130 +fn_1_8798 = .text:0x00008798; // type:function size:0xEC +fn_1_8884 = .text:0x00008884; // type:function size:0x34 +fn_1_88B8 = .text:0x000088B8; // type:function size:0xB4 +fn_1_896C = .text:0x0000896C; // type:function size:0x870 +fn_1_91DC = .text:0x000091DC; // type:function size:0x8C +fn_1_9268 = .text:0x00009268; // type:function size:0x418 +fn_1_9680 = .text:0x00009680; // type:function size:0x34 +fn_1_96B4 = .text:0x000096B4; // type:function size:0xAC +fn_1_9760 = .text:0x00009760; // type:function size:0x4C +fn_1_97AC = .text:0x000097AC; // type:function size:0x2BC +fn_1_9A68 = .text:0x00009A68; // type:function size:0x58 +fn_1_9AC0 = .text:0x00009AC0; // type:function size:0x30 +fn_1_9AF0 = .text:0x00009AF0; // type:function size:0x84 +fn_1_9B74 = .text:0x00009B74; // type:function size:0xB0 +fn_1_9C24 = .text:0x00009C24; // type:function size:0x74 +fn_1_9C98 = .text:0x00009C98; // type:function size:0x74 +fn_1_9D0C = .text:0x00009D0C; // type:function size:0x218 +fn_1_9F24 = .text:0x00009F24; // type:function size:0x300 +fn_1_A224 = .text:0x0000A224; // type:function size:0x2D4 +fn_1_A4F8 = .text:0x0000A4F8; // type:function size:0xB8 +fn_1_A5B0 = .text:0x0000A5B0; // type:function size:0x3E0 +fn_1_A990 = .text:0x0000A990; // type:function size:0x194 +fn_1_AB24 = .text:0x0000AB24; // type:function size:0x6F0 +fn_1_B214 = .text:0x0000B214; // type:function size:0x9C +fn_1_B2B0 = .text:0x0000B2B0; // type:function size:0x114 +fn_1_B3C4 = .text:0x0000B3C4; // type:function size:0x280 +_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_38 = .rodata:0x00000038; // type:object size:0x8 data:double +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_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:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x8 data:double +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:0x8 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float +lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x8 data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:4byte +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +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_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 +lbl_1_data_118 = .data:0x00000118; // type:object size:0x2 data:2byte +lbl_1_data_11A = .data:0x0000011A; // type:object size:0x2 data:2byte +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x2 data:2byte +lbl_1_data_11E = .data:0x0000011E; // type:object size:0x2 data:2byte +lbl_1_data_120 = .data:0x00000120; // type:object size:0x2 data:2byte +lbl_1_data_124 = .data:0x00000124; // type:object size:0x20 +lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 +lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 +lbl_1_data_150 = .data:0x00000150; // type:object size:0x14 +lbl_1_data_164 = .data:0x00000164; // type:object size:0x2 data:2byte +lbl_1_data_166 = .data:0x00000166; // type:object size:0xA +lbl_1_data_170 = .data:0x00000170; // type:object size:0x10 +lbl_1_data_180 = .data:0x00000180; // type:object size:0x4 data:4byte +lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 +lbl_1_data_188 = .data:0x00000188; // type:object size:0x10 +lbl_1_data_198 = .data:0x00000198; // type:object size:0x8 +lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x8 data:string +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0xC +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x7 data:string +lbl_1_data_1BB = .data:0x000001BB; // type:object size:0x9 +lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x8 data:4byte +lbl_1_data_1CC = .data:0x000001CC; // type:object size:0xC +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x8 data:string +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x8 data:string +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xA data:string +lbl_1_data_1F2 = .data:0x000001F2; // type:object size:0xE +lbl_1_data_200 = .data:0x00000200; // type:object size:0x8 data:string +lbl_1_data_208 = .data:0x00000208; // type:object size:0x8 data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0x6 data:string +lbl_1_data_216 = .data:0x00000216; // type:object size:0x6 data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x7 data:string +lbl_1_data_223 = .data:0x00000223; // type:object size:0x9 +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x18 +lbl_1_data_244 = .data:0x00000244; // type:object size:0x18 +lbl_1_data_25C = .data:0x0000025C; // type:object size:0x48 +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x48 +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x8 +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x1C +lbl_1_data_310 = .data:0x00000310; // type:object size:0x8 +lbl_1_data_318 = .data:0x00000318; // type:object size:0x7 data:string +lbl_1_data_31F = .data:0x0000031F; // type:object size:0x7 data:string +lbl_1_data_326 = .data:0x00000326; // type:object size:0xA +lbl_1_data_330 = .data:0x00000330; // type:object size:0xC +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x7 data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0xD data:string +lbl_1_data_350 = .data:0x00000350; // type:object size:0xF0 +lbl_1_data_440 = .data:0x00000440; // type:object size:0x10 +lbl_1_data_450 = .data:0x00000450; // type:object size:0x6 data:string +lbl_1_data_456 = .data:0x00000456; // type:object size:0x7 data:string +lbl_1_data_45D = .data:0x0000045D; // type:object size:0x7 data:string +lbl_1_data_464 = .data:0x00000464; // type:object size:0xC +lbl_1_data_470 = .data:0x00000470; // type:object size:0xC +lbl_1_data_47C = .data:0x0000047C; // type:object size:0xC +lbl_1_data_488 = .data:0x00000488; // type:object size:0x3 data:string +lbl_1_data_48B = .data:0x0000048B; // type:object size:0x4 data:string +lbl_1_data_48F = .data:0x0000048F; // type:object size:0x5 +lbl_1_data_494 = .data:0x00000494; // type:object size:0xC +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xD data:string +lbl_1_data_4AD = .data:0x000004AD; // type:object size:0x5 data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x6 +lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0xC +lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0x3 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x14 data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:2byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0xC data:float +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x2 data:2byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x2 data:2byte +lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x2 data:2byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x2 data:2byte +lbl_1_bss_4E = .bss:0x0000004E; // type:object size:0xA data:2byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0xC +lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x6 +lbl_1_bss_72 = .bss:0x00000072; // type:object size:0x6 data:2byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0xC +lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte +lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte +lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte +lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte +lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x2 data:2byte +lbl_1_bss_A2 = .bss:0x000000A2; // type:object size:0x2 data:2byte +lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x6 +lbl_1_bss_AA = .bss:0x000000AA; // type:object size:0x6 +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x6 +lbl_1_bss_B6 = .bss:0x000000B6; // type:object size:0x2 data:2byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 data:2byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x2 data:2byte +lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x2 data:2byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x2 data:2byte +lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0x28 data:2byte +lbl_1_bss_FE = .bss:0x000000FE; // type:object size:0x2 data:2byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x2 data:2byte +lbl_1_bss_102 = .bss:0x00000102; // type:object size:0x6 data:2byte diff --git a/config/GMPJ01_00/rels/w06Dll/splits.txt b/config/GMPJ01_00/rels/w06Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w06Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w06Dll/symbols.txt b/config/GMPJ01_00/rels/w06Dll/symbols.txt new file mode 100644 index 00000000..51c6c855 --- /dev/null +++ b/config/GMPJ01_00/rels/w06Dll/symbols.txt @@ -0,0 +1,373 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x4C4 +fn_1_5A4 = .text:0x000005A4; // type:function size:0x18C +fn_1_730 = .text:0x00000730; // type:function size:0x6C +fn_1_79C = .text:0x0000079C; // type:function size:0x20 +fn_1_7BC = .text:0x000007BC; // type:function size:0x144 +fn_1_900 = .text:0x00000900; // type:function size:0x84 +fn_1_984 = .text:0x00000984; // type:function size:0x3C +fn_1_9C0 = .text:0x000009C0; // type:function size:0x168 +fn_1_B28 = .text:0x00000B28; // type:function size:0x34 +fn_1_B5C = .text:0x00000B5C; // type:function size:0x214 +fn_1_D70 = .text:0x00000D70; // type:function size:0x1FC +fn_1_F6C = .text:0x00000F6C; // type:function size:0xE8 +fn_1_1054 = .text:0x00001054; // type:function size:0x90 +fn_1_10E4 = .text:0x000010E4; // type:function size:0x64 +fn_1_1148 = .text:0x00001148; // type:function size:0x68 +fn_1_11B0 = .text:0x000011B0; // type:function size:0xF0 +fn_1_12A0 = .text:0x000012A0; // type:function size:0x32C +fn_1_15CC = .text:0x000015CC; // type:function size:0x614 +fn_1_1BE0 = .text:0x00001BE0; // type:function size:0xD0 +fn_1_1CB0 = .text:0x00001CB0; // type:function size:0xAC +fn_1_1D5C = .text:0x00001D5C; // type:function size:0xD4 +fn_1_1E30 = .text:0x00001E30; // type:function size:0xD8 +fn_1_1F08 = .text:0x00001F08; // type:function size:0x140 +fn_1_2048 = .text:0x00002048; // type:function size:0x84 +fn_1_20CC = .text:0x000020CC; // type:function size:0xA8 +fn_1_2174 = .text:0x00002174; // type:function size:0x58 +fn_1_21CC = .text:0x000021CC; // type:function size:0x54 +fn_1_2220 = .text:0x00002220; // type:function size:0x21C +fn_1_243C = .text:0x0000243C; // type:function size:0x5E0 +fn_1_2A1C = .text:0x00002A1C; // type:function size:0x144 +fn_1_2B60 = .text:0x00002B60; // type:function size:0xB8 +fn_1_2C18 = .text:0x00002C18; // type:function size:0x178 +fn_1_2D90 = .text:0x00002D90; // type:function size:0x40 +fn_1_2DD0 = .text:0x00002DD0; // type:function size:0x48 +fn_1_2E18 = .text:0x00002E18; // type:function size:0xDC +fn_1_2EF4 = .text:0x00002EF4; // type:function size:0x57C +fn_1_3470 = .text:0x00003470; // type:function size:0xF0 +fn_1_3560 = .text:0x00003560; // type:function size:0x5C +fn_1_35BC = .text:0x000035BC; // type:function size:0x48 +fn_1_3604 = .text:0x00003604; // type:function size:0x94 +fn_1_3698 = .text:0x00003698; // type:function size:0x2DC +fn_1_3974 = .text:0x00003974; // type:function size:0x6FC +fn_1_4070 = .text:0x00004070; // type:function size:0xB4 +fn_1_4124 = .text:0x00004124; // type:function size:0x70 +fn_1_4194 = .text:0x00004194; // type:function size:0x118 +fn_1_42AC = .text:0x000042AC; // type:function size:0x130 +fn_1_43DC = .text:0x000043DC; // type:function size:0x84 +fn_1_4460 = .text:0x00004460; // type:function size:0x418 +fn_1_4878 = .text:0x00004878; // type:function size:0x198 +fn_1_4A10 = .text:0x00004A10; // type:function size:0x50 +fn_1_4A60 = .text:0x00004A60; // type:function size:0xA0 +fn_1_4B00 = .text:0x00004B00; // type:function size:0xA0 +fn_1_4BA0 = .text:0x00004BA0; // type:function size:0x58 +fn_1_4BF8 = .text:0x00004BF8; // type:function size:0x3C0 +fn_1_4FB8 = .text:0x00004FB8; // type:function size:0x1E4 +fn_1_519C = .text:0x0000519C; // type:function size:0x204 +fn_1_53A0 = .text:0x000053A0; // type:function size:0xF0 +fn_1_5490 = .text:0x00005490; // type:function size:0x23C +fn_1_56CC = .text:0x000056CC; // type:function size:0x110 +fn_1_57DC = .text:0x000057DC; // type:function size:0xA0 +fn_1_587C = .text:0x0000587C; // type:function size:0x80 +fn_1_58FC = .text:0x000058FC; // type:function size:0x6C +fn_1_5968 = .text:0x00005968; // type:function size:0x68 +fn_1_59D0 = .text:0x000059D0; // type:function size:0x13C +fn_1_5B0C = .text:0x00005B0C; // type:function size:0x48 +fn_1_5B54 = .text:0x00005B54; // type:function size:0x190 +fn_1_5CE4 = .text:0x00005CE4; // type:function size:0x1D8 +fn_1_5EBC = .text:0x00005EBC; // type:function size:0x40 +fn_1_5EFC = .text:0x00005EFC; // type:function size:0x5C +fn_1_5F58 = .text:0x00005F58; // type:function size:0x114 +fn_1_606C = .text:0x0000606C; // type:function size:0x9A0 +fn_1_6A0C = .text:0x00006A0C; // type:function size:0x240 +fn_1_6C4C = .text:0x00006C4C; // type:function size:0x244 +fn_1_6E90 = .text:0x00006E90; // type:function size:0x60 +fn_1_6EF0 = .text:0x00006EF0; // type:function size:0x90 +fn_1_6F80 = .text:0x00006F80; // type:function size:0x290 +fn_1_7210 = .text:0x00007210; // type:function size:0x94 +fn_1_72A4 = .text:0x000072A4; // type:function size:0x28 +fn_1_72CC = .text:0x000072CC; // type:function size:0x120 +fn_1_73EC = .text:0x000073EC; // type:function size:0xD0 +fn_1_74BC = .text:0x000074BC; // type:function size:0xB8 +fn_1_7574 = .text:0x00007574; // type:function size:0x100 +fn_1_7674 = .text:0x00007674; // type:function size:0xEC +fn_1_7760 = .text:0x00007760; // type:function size:0x1E4 +fn_1_7944 = .text:0x00007944; // type:function size:0x26C +fn_1_7BB0 = .text:0x00007BB0; // type:function size:0x38C +fn_1_7F3C = .text:0x00007F3C; // type:function size:0x68 +fn_1_7FA4 = .text:0x00007FA4; // type:function size:0x2C0 +fn_1_8264 = .text:0x00008264; // type:function size:0xBC +fn_1_8320 = .text:0x00008320; // type:function size:0x100 +fn_1_8420 = .text:0x00008420; // type:function size:0x70 +fn_1_8490 = .text:0x00008490; // type:function size:0x5C8 +fn_1_8A58 = .text:0x00008A58; // type:function size:0x4C8 +fn_1_8F20 = .text:0x00008F20; // type:function size:0x2B8 +fn_1_91D8 = .text:0x000091D8; // type:function size:0xBC +fn_1_9294 = .text:0x00009294; // type:function size:0x44 +fn_1_92D8 = .text:0x000092D8; // type:function size:0xF0 +fn_1_93C8 = .text:0x000093C8; // type:function size:0x10C +fn_1_94D4 = .text:0x000094D4; // type:function size:0xD8 +fn_1_95AC = .text:0x000095AC; // type:function size:0x8B0 +fn_1_9E5C = .text:0x00009E5C; // type:function size:0x5AC +fn_1_A408 = .text:0x0000A408; // type:function size:0x744 +fn_1_AB4C = .text:0x0000AB4C; // type:function size:0x730 +fn_1_B27C = .text:0x0000B27C; // type:function size:0x424 +fn_1_B6A0 = .text:0x0000B6A0; // type:function size:0x240 +fn_1_B8E0 = .text:0x0000B8E0; // type:function size:0x230 +fn_1_BB10 = .text:0x0000BB10; // type:function size:0x1F8 +fn_1_BD08 = .text:0x0000BD08; // type:function size:0x3C +fn_1_BD44 = .text:0x0000BD44; // type:function size:0x48 +fn_1_BD8C = .text:0x0000BD8C; // type:function size:0x37C +fn_1_C108 = .text:0x0000C108; // type:function size:0x1AC +fn_1_C2B4 = .text:0x0000C2B4; // type:function size:0x158 +fn_1_C40C = .text:0x0000C40C; // type:function size:0x5B0 +fn_1_C9BC = .text:0x0000C9BC; // type:function size:0xD0 +fn_1_CA8C = .text:0x0000CA8C; // type:function size:0x40 +fn_1_CACC = .text:0x0000CACC; // type:function size:0x1C4 +fn_1_CC90 = .text:0x0000CC90; // type:function size:0x7C +fn_1_CD0C = .text:0x0000CD0C; // type:function size:0x398 +_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:0x8 data:4byte +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:4byte +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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float +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_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x1 data:byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x1 data:byte +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x6 data:2byte +lbl_1_rodata_9A = .rodata:0x0000009A; // type:object size:0x1 data:byte +lbl_1_rodata_9E = .rodata:0x0000009E; // type:object size:0x6 data:2byte +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:0x4 data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float +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:0x5 +lbl_1_rodata_F5 = .rodata:0x000000F5; // type:object size:0x7 +lbl_1_rodata_FC = .rodata:0x000000FC; // 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:0x8 data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double +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:0xC data:4byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double +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:0x8 data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0xF0 +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte +lbl_1_data_F2 = .data:0x000000F2; // type:object size:0x2 data:2byte +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x2 data:2byte +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0x2 data:2byte +lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x8 +lbl_1_data_100 = .data:0x00000100; // type:object size:0x8 +lbl_1_data_108 = .data:0x00000108; // type:object size:0xA0 +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x2 data:2byte +lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x1 data:byte +lbl_1_data_1AD = .data:0x000001AD; // type:object size:0x3 +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2 data:2byte +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0xC +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x5 data:string +lbl_1_data_1C5 = .data:0x000001C5; // type:object size:0x13 +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte +lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x2 data:2byte +lbl_1_data_1DE = .data:0x000001DE; // type:object size:0x6 +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 +lbl_1_data_208 = .data:0x00000208; // type:object size:0x20 +lbl_1_data_228 = .data:0x00000228; // type:object size:0x1 data:byte +lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x2 data:2byte +lbl_1_data_230 = .data:0x00000230; // type:object size:0x38 +lbl_1_data_268 = .data:0x00000268; // type:object size:0x5 data:string +lbl_1_data_26D = .data:0x0000026D; // type:object size:0xE +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x4 +lbl_1_data_27F = .data:0x0000027F; // type:object size:0x8 +lbl_1_data_287 = .data:0x00000287; // type:object size:0x12 data:string +lbl_1_data_299 = .data:0x00000299; // type:object size:0x11 data:string +lbl_1_data_2AA = .data:0x000002AA; // type:object size:0x18 data:string +lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x17 data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x16 data:string +lbl_1_data_2EF = .data:0x000002EF; // type:object size:0x10 data:string +lbl_1_data_2FF = .data:0x000002FF; // type:object size:0x10 data:string +lbl_1_data_30F = .data:0x0000030F; // type:object size:0x11 data:string +lbl_1_data_320 = .data:0x00000320; // type:object size:0x15 data:string +lbl_1_data_335 = .data:0x00000335; // type:object size:0x15 data:string +lbl_1_data_34A = .data:0x0000034A; // type:object size:0x10 data:string +lbl_1_data_35A = .data:0x0000035A; // type:object size:0x13 data:string +lbl_1_data_36D = .data:0x0000036D; // type:object size:0x13 data:string +lbl_1_data_380 = .data:0x00000380; // type:object size:0x98 +lbl_1_data_418 = .data:0x00000418; // type:object size:0x2 data:2byte +lbl_1_data_41C = .data:0x0000041C; // type:object size:0x18 +lbl_1_data_434 = .data:0x00000434; // type:object size:0x18 +lbl_1_data_44C = .data:0x0000044C; // type:object size:0xC +lbl_1_data_458 = .data:0x00000458; // type:object size:0x20 +lbl_1_data_478 = .data:0x00000478; // type:object size:0x20 +lbl_1_data_498 = .data:0x00000498; // type:object size:0x2 data:2byte +lbl_1_data_49A = .data:0x0000049A; // type:object size:0x2 data:2byte +lbl_1_data_49C = .data:0x0000049C; // type:object size:0x2 data:2byte +lbl_1_data_49E = .data:0x0000049E; // type:object size:0x2 data:2byte +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x2 data:2byte +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x2 data:2byte +lbl_1_data_4A4 = .data:0x000004A4; // type:object size:0x8 +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x20 +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x20 +lbl_1_data_4EC = .data:0x000004EC; // type:object size:0x24 +lbl_1_data_510 = .data:0x00000510; // type:object size:0x20 +lbl_1_data_530 = .data:0x00000530; // type:object size:0x6 data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x1 data:byte +lbl_1_bss_33 = .bss:0x00000033; // type:object size:0x1 data:byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x6 +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:2byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1 data:byte +lbl_1_bss_59 = .bss:0x00000059; // type:object size:0x1 data:byte +lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x1 data:byte +lbl_1_bss_5B = .bss:0x0000005B; // type:object size:0x31 +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x28 data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x4 +lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x1 data:byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x6 +lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0xC +lbl_1_bss_E2 = .bss:0x000000E2; // type:object size:0x2 data:2byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 data:2byte +lbl_1_bss_E6 = .bss:0x000000E6; // type:object size:0x1 data:byte +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 data:4byte +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x4 data:4byte +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x4 data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x1 data:byte diff --git a/config/GMPJ01_00/rels/w10Dll/splits.txt b/config/GMPJ01_00/rels/w10Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w10Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w10Dll/symbols.txt b/config/GMPJ01_00/rels/w10Dll/symbols.txt new file mode 100644 index 00000000..c99d83da --- /dev/null +++ b/config/GMPJ01_00/rels/w10Dll/symbols.txt @@ -0,0 +1,114 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x5F8 +fn_1_6D8 = .text:0x000006D8; // type:function size:0x1E8 +fn_1_8C0 = .text:0x000008C0; // type:function size:0x44 +fn_1_904 = .text:0x00000904; // type:function size:0x4 +fn_1_908 = .text:0x00000908; // type:function size:0x4 +fn_1_90C = .text:0x0000090C; // type:function size:0x8 +fn_1_914 = .text:0x00000914; // type:function size:0x4 +fn_1_918 = .text:0x00000918; // type:function size:0x4 +fn_1_91C = .text:0x0000091C; // type:function size:0x4 +fn_1_920 = .text:0x00000920; // type:function size:0x1CC +fn_1_AEC = .text:0x00000AEC; // type:function size:0xB4 +fn_1_BA0 = .text:0x00000BA0; // type:function size:0x70 +fn_1_C10 = .text:0x00000C10; // type:function size:0x10 +fn_1_C20 = .text:0x00000C20; // type:function size:0x10C +fn_1_D2C = .text:0x00000D2C; // type:function size:0x28 +fn_1_D54 = .text:0x00000D54; // type:function size:0x28 +fn_1_D7C = .text:0x00000D7C; // type:function size:0x28 +fn_1_DA4 = .text:0x00000DA4; // type:function size:0x28 +fn_1_DCC = .text:0x00000DCC; // type:function size:0x28 +fn_1_DF4 = .text:0x00000DF4; // type:function size:0x28 +fn_1_E1C = .text:0x00000E1C; // type:function size:0x28 +fn_1_E44 = .text:0x00000E44; // type:function size:0x50 +fn_1_E94 = .text:0x00000E94; // type:function size:0x28 +fn_1_EBC = .text:0x00000EBC; // type:function size:0x28 +fn_1_EE4 = .text:0x00000EE4; // type:function size:0x4 +fn_1_EE8 = .text:0x00000EE8; // type:function size:0x48 +fn_1_F30 = .text:0x00000F30; // type:function size:0x3C +fn_1_F6C = .text:0x00000F6C; // type:function size:0x4C +fn_1_FB8 = .text:0x00000FB8; // type:function size:0x58 +fn_1_1010 = .text:0x00001010; // type:function size:0x4C +fn_1_105C = .text:0x0000105C; // type:function size:0x3C +fn_1_1098 = .text:0x00001098; // type:function size:0x28 +fn_1_10C0 = .text:0x000010C0; // type:function size:0x38 +fn_1_10F8 = .text:0x000010F8; // type:function size:0x3C +fn_1_1134 = .text:0x00001134; // type:function size:0x44 +fn_1_1178 = .text:0x00001178; // type:function size:0x28 +fn_1_11A0 = .text:0x000011A0; // type:function size:0x4C +fn_1_11EC = .text:0x000011EC; // type:function size:0x54 +fn_1_1240 = .text:0x00001240; // type:function size:0x38 +fn_1_1278 = .text:0x00001278; // type:function size:0x28 +fn_1_12A0 = .text:0x000012A0; // type:function size:0x3C +fn_1_12DC = .text:0x000012DC; // type:function size:0x28 +fn_1_1304 = .text:0x00001304; // type:function size:0x28 +fn_1_132C = .text:0x0000132C; // type:function size:0x28 +fn_1_1354 = .text:0x00001354; // type:function size:0x28 +fn_1_137C = .text:0x0000137C; // type:function size:0x28 +fn_1_13A4 = .text:0x000013A4; // type:function size:0x3C8 +fn_1_176C = .text:0x0000176C; // type:function size:0x30 +fn_1_179C = .text:0x0000179C; // type:function size:0x58 +fn_1_17F4 = .text:0x000017F4; // type:function size:0x40 +fn_1_1834 = .text:0x00001834; // type:function size:0x88 +fn_1_18BC = .text:0x000018BC; // type:function size:0x4C +fn_1_1908 = .text:0x00001908; // type:function size:0x28 +fn_1_1930 = .text:0x00001930; // type:function size:0x28 +fn_1_1958 = .text:0x00001958; // type:function size:0x28 +fn_1_1980 = .text:0x00001980; // type:function size:0x4 +fn_1_1984 = .text:0x00001984; // type:function size:0x128 +fn_1_1AAC = .text:0x00001AAC; // type:function size:0x2BC +fn_1_1D68 = .text:0x00001D68; // type:function size:0x84 +fn_1_1DEC = .text:0x00001DEC; // type:function size:0x50 +fn_1_1E3C = .text:0x00001E3C; // type:function size:0x174 +fn_1_1FB0 = .text:0x00001FB0; // type:function size:0xBC +_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_28 = .rodata:0x00000028; // type:object size:0x8 data:double +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:0x8 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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double +lbl_1_data_0 = .data:0x00000000; // type:object size:0x28 +lbl_1_data_28 = .data:0x00000028; // type:object size:0x2 data:2byte +lbl_1_data_2A = .data:0x0000002A; // type:object size:0x2 data:2byte +lbl_1_data_2C = .data:0x0000002C; // type:object size:0x2 data:2byte +lbl_1_data_2E = .data:0x0000002E; // type:object size:0x2 data:2byte +lbl_1_data_30 = .data:0x00000030; // type:object size:0x2 data:2byte +lbl_1_data_32 = .data:0x00000032; // type:object size:0x22 data:2byte +lbl_1_data_54 = .data:0x00000054; // type:object size:0x8 +lbl_1_data_5C = .data:0x0000005C; // type:object size:0x8 +lbl_1_data_64 = .data:0x00000064; // type:object size:0x8 +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC +lbl_1_data_78 = .data:0x00000078; // type:object size:0x8 +lbl_1_data_80 = .data:0x00000080; // type:object size:0x18 +lbl_1_data_98 = .data:0x00000098; // type:object size:0x2E +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x42 +lbl_1_data_108 = .data:0x00000108; // type:object size:0x150 +lbl_1_data_258 = .data:0x00000258; // type:object size:0x50 data:string +lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x2C +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x8 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte +lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x2 data:2byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte +lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x16 diff --git a/config/GMPJ01_00/rels/w20Dll/splits.txt b/config/GMPJ01_00/rels/w20Dll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/w20Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w20Dll/symbols.txt b/config/GMPJ01_00/rels/w20Dll/symbols.txt new file mode 100644 index 00000000..709c60ad --- /dev/null +++ b/config/GMPJ01_00/rels/w20Dll/symbols.txt @@ -0,0 +1,27 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x2B0 +fn_1_390 = .text:0x00000390; // type:function size:0xBC +fn_1_44C = .text:0x0000044C; // type:function size:0x44 +fn_1_490 = .text:0x00000490; // type:function size:0x4 +fn_1_494 = .text:0x00000494; // type:function size:0x4 +fn_1_498 = .text:0x00000498; // type:function size:0x8 +fn_1_4A0 = .text:0x000004A0; // type:function size:0x4 +fn_1_4A4 = .text:0x000004A4; // type:function size:0x4 +fn_1_4A8 = .text:0x000004A8; // type:function size:0x4 +fn_1_4AC = .text:0x000004AC; // type:function size:0x1CC +_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_20 = .rodata:0x00000020; // type:object size:0x8 data:double +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_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_2 = .data:0x00000002; // type:object size:0x2 data:2byte +lbl_1_data_6 = .data:0x00000006; // type:object size:0x2 data:2byte +lbl_1_data_8 = .data:0x00000008; // type:object size:0x24 data:2byte +lbl_1_data_2C = .data:0x0000002C; // type:object size:0x8 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xE diff --git a/config/GMPJ01_00/rels/w21Dll/splits.txt b/config/GMPJ01_00/rels/w21Dll/splits.txt new file mode 100644 index 00000000..be323846 --- /dev/null +++ b/config/GMPJ01_00/rels/w21Dll/splits.txt @@ -0,0 +1,6 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 diff --git a/config/GMPJ01_00/rels/w21Dll/symbols.txt b/config/GMPJ01_00/rels/w21Dll/symbols.txt new file mode 100644 index 00000000..1e9f2fcb --- /dev/null +++ b/config/GMPJ01_00/rels/w21Dll/symbols.txt @@ -0,0 +1,18 @@ +fn_1_0 = .text:0x00000000; // type:function size:0x30 +_prolog = .text:0x00000030; // type:function size:0x64 scope:global +_epilog = .text:0x00000094; // type:function size:0x4C scope:global +fn_1_E0 = .text:0x000000E0; // type:function size:0x1D4 +fn_1_2B4 = .text:0x000002B4; // type:function size:0xB8 +fn_1_36C = .text:0x0000036C; // type:function size:0x44 +fn_1_3B0 = .text:0x000003B0; // type:function size:0x20 +fn_1_3D0 = .text:0x000003D0; // type:function size:0x8 +fn_1_3D8 = .text:0x000003D8; // type:function size:0x4 +fn_1_3DC = .text:0x000003DC; // type:function size:0x4 +_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_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte +lbl_1_data_2 = .data:0x00000002; // type:object size:0x2 data:2byte +lbl_1_data_4 = .data:0x00000004; // type:object size:0x2 data:2byte +lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 diff --git a/config/GMPJ01_00/rels/ztardll/splits.txt b/config/GMPJ01_00/rels/ztardll/splits.txt new file mode 100644 index 00000000..531cd645 --- /dev/null +++ b/config/GMPJ01_00/rels/ztardll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .ctors type:rodata align:4 + .dtors type:rodata align:4 + .rodata type:rodata align:8 + .data type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/ztardll/symbols.txt b/config/GMPJ01_00/rels/ztardll/symbols.txt new file mode 100644 index 00000000..7e87352c --- /dev/null +++ b/config/GMPJ01_00/rels/ztardll/symbols.txt @@ -0,0 +1,257 @@ +_prolog = .text:0x00000000; // type:function size:0x54 scope:global +_epilog = .text:0x00000054; // type:function size:0x4C scope:global +fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +fn_1_424 = .text:0x00000424; // type:function size:0x1350 +fn_1_1774 = .text:0x00001774; // type:function size:0x57C +fn_1_1CF0 = .text:0x00001CF0; // type:function size:0xB0 +fn_1_1DA0 = .text:0x00001DA0; // type:function size:0x5B0 +fn_1_2350 = .text:0x00002350; // type:function size:0x1060 +fn_1_33B0 = .text:0x000033B0; // type:function size:0xD34 +fn_1_40E4 = .text:0x000040E4; // type:function size:0x290 +fn_1_4374 = .text:0x00004374; // type:function size:0x5D4 +fn_1_4948 = .text:0x00004948; // type:function size:0x874 +fn_1_51BC = .text:0x000051BC; // type:function size:0x15C +fn_1_5318 = .text:0x00005318; // type:function size:0x14AC +fn_1_67C4 = .text:0x000067C4; // type:function size:0x10C +fn_1_68D0 = .text:0x000068D0; // type:function size:0xC10 +fn_1_74E0 = .text:0x000074E0; // type:function size:0x340 +fn_1_7820 = .text:0x00007820; // type:function size:0x47C +fn_1_7C9C = .text:0x00007C9C; // type:function size:0x16C +fn_1_7E08 = .text:0x00007E08; // type:function size:0xA0 +fn_1_7EA8 = .text:0x00007EA8; // type:function size:0x224 +fn_1_80CC = .text:0x000080CC; // type:function size:0x2DC +fn_1_83A8 = .text:0x000083A8; // type:function size:0x2C +fn_1_83D4 = .text:0x000083D4; // type:function size:0x518 +fn_1_88EC = .text:0x000088EC; // type:function size:0x2C +fn_1_8918 = .text:0x00008918; // type:function size:0x28 +fn_1_8940 = .text:0x00008940; // type:function size:0x274 +fn_1_8BB4 = .text:0x00008BB4; // type:function size:0x2C +fn_1_8BE0 = .text:0x00008BE0; // type:function size:0x2C +fn_1_8C0C = .text:0x00008C0C; // type:function size:0x24 +fn_1_8C30 = .text:0x00008C30; // type:function size:0x2BC +fn_1_8EEC = .text:0x00008EEC; // type:function size:0x500 +fn_1_93EC = .text:0x000093EC; // type:function size:0x480 +fn_1_986C = .text:0x0000986C; // type:function size:0x80C +fn_1_A078 = .text:0x0000A078; // type:function size:0x28 +fn_1_A0A0 = .text:0x0000A0A0; // type:function size:0x28 +fn_1_A0C8 = .text:0x0000A0C8; // type:function size:0x21C +fn_1_A2E4 = .text:0x0000A2E4; // type:function size:0x194 +fn_1_A478 = .text:0x0000A478; // type:function size:0x198 +fn_1_A610 = .text:0x0000A610; // type:function size:0x9C +fn_1_A6AC = .text:0x0000A6AC; // type:function size:0x2D8 +fn_1_A984 = .text:0x0000A984; // type:function size:0x2DC +fn_1_AC60 = .text:0x0000AC60; // type:function size:0x1E0 +fn_1_AE40 = .text:0x0000AE40; // type:function size:0xF0 +fn_1_AF30 = .text:0x0000AF30; // type:function size:0x50 +fn_1_AF80 = .text:0x0000AF80; // type:function size:0x584 +fn_1_B504 = .text:0x0000B504; // type:function size:0x5D8 +fn_1_BADC = .text:0x0000BADC; // type:function size:0x33C +fn_1_BE18 = .text:0x0000BE18; // type:function size:0x274 +fn_1_C08C = .text:0x0000C08C; // type:function size:0x7C +fn_1_C108 = .text:0x0000C108; // type:function size:0x44C +fn_1_C554 = .text:0x0000C554; // type:function size:0x434 +fn_1_C988 = .text:0x0000C988; // type:function size:0x204 +fn_1_CB8C = .text:0x0000CB8C; // type:function size:0x790 +fn_1_D31C = .text:0x0000D31C; // type:function size:0xB0C +fn_1_DE28 = .text:0x0000DE28; // type:function size:0x720 +fn_1_E548 = .text:0x0000E548; // type:function size:0x9C +fn_1_E5E4 = .text:0x0000E5E4; // type:function size:0xCCC +fn_1_F2B0 = .text:0x0000F2B0; // type:function size:0x924 +fn_1_FBD4 = .text:0x0000FBD4; // type:function size:0x258 +fn_1_FE2C = .text:0x0000FE2C; // type:function size:0x958 +fn_1_10784 = .text:0x00010784; // type:function size:0x7C +fn_1_10800 = .text:0x00010800; // type:function size:0x164 +fn_1_10964 = .text:0x00010964; // type:function size:0x1B8 +fn_1_10B1C = .text:0x00010B1C; // type:function size:0xA4 +fn_1_10BC0 = .text:0x00010BC0; // type:function size:0xF4 +fn_1_10CB4 = .text:0x00010CB4; // type:function size:0x80 +fn_1_10D34 = .text:0x00010D34; // type:function size:0x80 +fn_1_10DB4 = .text:0x00010DB4; // type:function size:0x28 +fn_1_10DDC = .text:0x00010DDC; // type:function size:0x20 +fn_1_10DFC = .text:0x00010DFC; // type:function size:0xD8 +fn_1_10ED4 = .text:0x00010ED4; // type:function size:0xC8 +fn_1_10F9C = .text:0x00010F9C; // type:function size:0xBC +fn_1_11058 = .text:0x00011058; // type:function size:0x40 +fn_1_11098 = .text:0x00011098; // type:function size:0x24 +fn_1_110BC = .text:0x000110BC; // type:function size:0x1C0 +fn_1_1127C = .text:0x0001127C; // type:function size:0x84 +fn_1_11300 = .text:0x00011300; // type:function size:0xD4 +fn_1_113D4 = .text:0x000113D4; // type:function size:0x58 +fn_1_1142C = .text:0x0001142C; // type:function size:0x15C +fn_1_11588 = .text:0x00011588; // type:function size:0x1C4 +fn_1_1174C = .text:0x0001174C; // type:function size:0x1AC +fn_1_118F8 = .text:0x000118F8; // type:function size:0x54 +fn_1_1194C = .text:0x0001194C; // type:function size:0x304 +fn_1_11C50 = .text:0x00011C50; // type:function size:0x304 +fn_1_11F54 = .text:0x00011F54; // type:function size:0x340 +fn_1_12294 = .text:0x00012294; // type:function size:0xC4 +_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:0x4 data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float +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_70 = .rodata:0x00000070; // type:object size:0x8 data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float +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:0x8 data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float +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:0x8 data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double +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:0x4 data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +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:0x4 data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x38 data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x22 data:string +lbl_1_data_22 = .data:0x00000022; // type:object size:0xA +lbl_1_data_2C = .data:0x0000002C; // type:object size:0x18 +lbl_1_data_44 = .data:0x00000044; // type:object size:0x6 +lbl_1_data_4A = .data:0x0000004A; // type:object size:0xC +lbl_1_data_56 = .data:0x00000056; // type:object size:0xE data:wstring +lbl_1_data_64 = .data:0x00000064; // type:object size:0x20 +lbl_1_data_84 = .data:0x00000084; // type:object size:0x10 +lbl_1_data_94 = .data:0x00000094; // type:object size:0xC +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA data:string +lbl_1_data_AA = .data:0x000000AA; // type:object size:0x6 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x4C8 +lbl_1_data_578 = .data:0x00000578; // type:object size:0x20 +lbl_1_data_598 = .data:0x00000598; // type:object size:0x20 +lbl_1_data_5B8 = .data:0x000005B8; // type:object size:0x3C data:string +lbl_1_data_5F4 = .data:0x000005F4; // type:object size:0x19 data:string +lbl_1_data_60D = .data:0x0000060D; // type:object size:0x1A data:string +lbl_1_data_627 = .data:0x00000627; // type:object size:0x3D +lbl_1_data_664 = .data:0x00000664; // type:object size:0x20 data:4byte +lbl_1_data_684 = .data:0x00000684; // type:object size:0x40 data:4byte +lbl_1_data_6C4 = .data:0x000006C4; // type:object size:0x70 +lbl_1_data_734 = .data:0x00000734; // type:object size:0x90 data:4byte +lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x20 +lbl_1_data_7E4 = .data:0x000007E4; // type:object size:0x8 data:4byte +lbl_1_data_7EC = .data:0x000007EC; // type:object size:0x10 +lbl_1_data_7FC = .data:0x000007FC; // type:object size:0x20 +lbl_1_data_81C = .data:0x0000081C; // type:object size:0x4 data:4byte +lbl_1_data_820 = .data:0x00000820; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte +lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x28 data:2byte +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x8 data:2byte +lbl_1_bss_3E = .bss:0x0000003E; // type:object size:0x2 data:2byte +lbl_1_bss_42 = .bss:0x00000042; // type:object size:0x2 data:2byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x2 data:2byte +lbl_1_bss_46 = .bss:0x00000046; // type:object size:0x2 data:2byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x2 data:2byte +lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x2 data:2byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x2 data:2byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte +lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x2 data:2byte +lbl_1_bss_5E = .bss:0x0000005E; // type:object size:0x2 data:2byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x8 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x14 data:4byte +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x180 data:4byte +lbl_1_bss_20C = .bss:0x0000020C; // type:object size:0x60 data:4byte +lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x6C data:4byte diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt new file mode 100644 index 00000000..f8a58b51 --- /dev/null +++ b/config/GMPJ01_00/splits.txt @@ -0,0 +1,14 @@ +Sections: + .init type:code align:4 + extab type:rodata align:32 + extabindex type:rodata align:32 + .text type:code align:8 + .ctors type:rodata align:16 + .dtors type:rodata align:32 + .rodata type:rodata align:32 + .data type:data align:32 + .bss type:bss align:32 + .sdata type:data align:4 + .sbss type:bss align:32 + .sdata2 type:rodata align:32 + .sbss2 type:bss align:4 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt new file mode 100644 index 00000000..b95ad54c --- /dev/null +++ b/config/GMPJ01_00/symbols.txt @@ -0,0 +1,8529 @@ +__check_pad3 = .init:0x80003100; // type:function size:0x40 scope:local +__start = .init:0x80003140; // type:function size:0x138 scope:weak +__init_registers = .init:0x80003278; // type:function size:0x1C scope:local +__init_data = .init:0x80003294; // type:function size:0xC0 scope:local +__init_hardware = .init:0x80003354; // type:function size:0x20 scope:global +__flush_cache = .init:0x80003374; // type:function size:0x34 scope:global +memset = .init:0x800033A8; // type:function size:0x30 scope:global +__fill_mem = .init:0x800033D8; // type:function size:0xB8 scope:global +memcpy = .init:0x80003490; // type:function size:0x50 scope:global +fn_800034E0 = .init:0x800034E0; // type:function size:0x30 +fn_80003510 = .init:0x80003510; // type:function size:0x24 +gTRKInterruptVectorTable = .init:0x80003534; // type:label scope:global +lbl_80003800 = .init:0x80003800; // type:label +lbl_80003C00 = .init:0x80003C00; // type:label +lbl_80003F80 = .init:0x80003F80; // type:label +fn_80005468 = .init:0x80005468; // type:function size:0x104 +gTRKInterruptVectorTableEnd = .init:0x80005468; // type:label scope:global +_rom_copy_info = .init:0x8000556C; // type:object size:0x84 scope:global data:4byte +_bss_init_info = .init:0x800055F0; // type:object size:0x20 scope:global data:4byte +@etb_80005620 = extab:0x80005620; // type:object size:0x28 scope:local hidden +@etb_80005648 = extab:0x80005648; // type:object size:0x8 scope:local hidden +@etb_80005650 = extab:0x80005650; // type:object size:0x8 scope:local hidden +@etb_80005658 = extab:0x80005658; // type:object size:0x8 scope:local hidden +@etb_80005660 = extab:0x80005660; // type:object size:0x8 scope:local hidden +@etb_80005668 = extab:0x80005668; // type:object size:0x8 scope:local hidden +@etb_80005670 = extab:0x80005670; // type:object size:0x8 scope:local hidden +@etb_80005678 = extab:0x80005678; // type:object size:0x14 scope:local hidden +@etb_8000568C = extab:0x8000568C; // type:object size:0x2C scope:local hidden +@etb_800056B8 = extab:0x800056B8; // type:object size:0x8 scope:local hidden +@etb_800056C0 = extab:0x800056C0; // type:object size:0x14 scope:local hidden +@etb_800056D4 = extab:0x800056D4; // type:object size:0x8 scope:local hidden +@etb_800056DC = extab:0x800056DC; // type:object size:0x8 scope:local hidden +@eti_80005700 = extabindex:0x80005700; // type:object size:0xC scope:local hidden +@eti_8000570C = extabindex:0x8000570C; // type:object size:0xC scope:local hidden +@eti_80005718 = extabindex:0x80005718; // type:object size:0xC scope:local hidden +@eti_80005724 = extabindex:0x80005724; // type:object size:0xC scope:local hidden +@eti_80005730 = extabindex:0x80005730; // type:object size:0xC scope:local hidden +@eti_8000573C = extabindex:0x8000573C; // type:object size:0xC scope:local hidden +@eti_80005748 = extabindex:0x80005748; // type:object size:0xC scope:local hidden +@eti_80005754 = extabindex:0x80005754; // type:object size:0xC scope:local hidden +@eti_80005760 = extabindex:0x80005760; // type:object size:0xC scope:local hidden +@eti_8000576C = extabindex:0x8000576C; // type:object size:0xC scope:local hidden +@eti_80005778 = extabindex:0x80005778; // type:object size:0xC scope:local hidden +@eti_80005784 = extabindex:0x80005784; // type:object size:0xC scope:local hidden +@eti_80005790 = extabindex:0x80005790; // type:object size:0xC scope:local hidden +_eti_init_info = extabindex:0x8000579C; // type:object size:0x20 scope:global +main = .text:0x800057C0; // type:function size:0x22C scope:global +fn_800059EC = .text:0x800059EC; // type:function size:0x38 +fn_80005A24 = .text:0x80005A24; // type:function size:0xC +fn_80005A30 = .text:0x80005A30; // type:function size:0x2C +fn_80005A5C = .text:0x80005A5C; // type:function size:0xF0 +fn_80005B4C = .text:0x80005B4C; // type:function size:0x168 +fn_80005CB4 = .text:0x80005CB4; // type:function size:0x440 +fn_800060F4 = .text:0x800060F4; // type:function size:0x234 +fn_80006328 = .text:0x80006328; // type:function size:0x54 +fn_8000637C = .text:0x8000637C; // type:function size:0x70 +fn_800063EC = .text:0x800063EC; // type:function size:0x70 +fn_8000645C = .text:0x8000645C; // type:function size:0x14 +fn_80006470 = .text:0x80006470; // type:function size:0x8 +fn_80006478 = .text:0x80006478; // type:function size:0xC +fn_80006484 = .text:0x80006484; // type:function size:0x16C +fn_800065F0 = .text:0x800065F0; // type:function size:0x1B4 +fn_800067A4 = .text:0x800067A4; // type:function size:0x170 +fn_80006914 = .text:0x80006914; // type:function size:0x16C +fn_80006A80 = .text:0x80006A80; // type:function size:0x174 +fn_80006BF4 = .text:0x80006BF4; // type:function size:0x150 +fn_80006D44 = .text:0x80006D44; // type:function size:0x38 +fn_80006D7C = .text:0x80006D7C; // type:function size:0xBC +fn_80006E38 = .text:0x80006E38; // type:function size:0xD0 +fn_80006F08 = .text:0x80006F08; // type:function size:0x74 +fn_80006F7C = .text:0x80006F7C; // type:function size:0x64 +fn_80006FE0 = .text:0x80006FE0; // type:function size:0xB8 +fn_80007098 = .text:0x80007098; // type:function size:0x224 +fn_800072BC = .text:0x800072BC; // type:function size:0x188 +fn_80007444 = .text:0x80007444; // type:function size:0xC8 +fn_8000750C = .text:0x8000750C; // type:function size:0x1A8 +fn_800076B4 = .text:0x800076B4; // type:function size:0x1A8 +fn_8000785C = .text:0x8000785C; // type:function size:0x60 +fn_800078BC = .text:0x800078BC; // type:function size:0x344 +fn_80007C00 = .text:0x80007C00; // type:function size:0x3A0 +fn_80007FA0 = .text:0x80007FA0; // type:function size:0x3C4 +fn_80008364 = .text:0x80008364; // type:function size:0x428 +fn_8000878C = .text:0x8000878C; // type:function size:0x30 +fn_800087BC = .text:0x800087BC; // type:function size:0x3FC +fn_80008BB8 = .text:0x80008BB8; // type:function size:0x104 +fn_80008CBC = .text:0x80008CBC; // type:function size:0x38 +fn_80008CF4 = .text:0x80008CF4; // type:function size:0x7C +fn_80008D70 = .text:0x80008D70; // type:function size:0xD4 +fn_80008E44 = .text:0x80008E44; // type:function size:0x130 +fn_80008F74 = .text:0x80008F74; // type:function size:0x48C +fn_80009400 = .text:0x80009400; // type:function size:0x200 +fn_80009600 = .text:0x80009600; // type:function size:0x1D8 +fn_800097D8 = .text:0x800097D8; // type:function size:0x324 +fn_80009AFC = .text:0x80009AFC; // type:function size:0x138 +fn_80009C34 = .text:0x80009C34; // type:function size:0xD0 +fn_80009D04 = .text:0x80009D04; // type:function size:0x164 +fn_80009E68 = .text:0x80009E68; // type:function size:0x13C +fn_80009FA4 = .text:0x80009FA4; // type:function size:0x54 +fn_80009FF8 = .text:0x80009FF8; // type:function size:0xE4 +fn_8000A0DC = .text:0x8000A0DC; // type:function size:0xC8 +fn_8000A1A4 = .text:0x8000A1A4; // type:function size:0x6C +fn_8000A210 = .text:0x8000A210; // type:function size:0x254 +fn_8000A464 = .text:0x8000A464; // type:function size:0x74 +fn_8000A4D8 = .text:0x8000A4D8; // type:function size:0x80 +fn_8000A558 = .text:0x8000A558; // type:function size:0x12C +fn_8000A684 = .text:0x8000A684; // type:function size:0x30 +fn_8000A6B4 = .text:0x8000A6B4; // type:function size:0x2C +fn_8000A6E0 = .text:0x8000A6E0; // type:function size:0x54 +fn_8000A734 = .text:0x8000A734; // type:function size:0x64 +fn_8000A798 = .text:0x8000A798; // type:function size:0x6C +fn_8000A804 = .text:0x8000A804; // type:function size:0x38 +fn_8000A83C = .text:0x8000A83C; // type:function size:0x54 +fn_8000A890 = .text:0x8000A890; // type:function size:0x3C +fn_8000A8CC = .text:0x8000A8CC; // type:function size:0x3C +fn_8000A908 = .text:0x8000A908; // type:function size:0x18 +fn_8000A920 = .text:0x8000A920; // type:function size:0x18 +fn_8000A938 = .text:0x8000A938; // type:function size:0x4C +fn_8000A984 = .text:0x8000A984; // type:function size:0x40 +fn_8000A9C4 = .text:0x8000A9C4; // type:function size:0x3C +fn_8000AA00 = .text:0x8000AA00; // type:function size:0x108 +fn_8000AB08 = .text:0x8000AB08; // type:function size:0x7C +fn_8000AB84 = .text:0x8000AB84; // type:function size:0x12C +fn_8000ACB0 = .text:0x8000ACB0; // type:function size:0x48 +fn_8000ACF8 = .text:0x8000ACF8; // type:function size:0x44 +fn_8000AD3C = .text:0x8000AD3C; // type:function size:0xC +fn_8000AD48 = .text:0x8000AD48; // type:function size:0x158 +fn_8000AEA0 = .text:0x8000AEA0; // type:function size:0x50 +fn_8000AEF0 = .text:0x8000AEF0; // type:function size:0x64 +fn_8000AF54 = .text:0x8000AF54; // type:function size:0xA0 +fn_8000AFF4 = .text:0x8000AFF4; // type:function size:0x15C +fn_8000B150 = .text:0x8000B150; // type:function size:0xAC +fn_8000B1FC = .text:0x8000B1FC; // type:function size:0xEE8 +fn_8000C0E4 = .text:0x8000C0E4; // type:function size:0x3C0 +fn_8000C4A4 = .text:0x8000C4A4; // type:function size:0x14 +fn_8000C4B8 = .text:0x8000C4B8; // type:function size:0x1E8 +fn_8000C6A0 = .text:0x8000C6A0; // type:function size:0x68 +fn_8000C708 = .text:0x8000C708; // type:function size:0x58 +fn_8000C760 = .text:0x8000C760; // type:function size:0x27C +fn_8000C9DC = .text:0x8000C9DC; // type:function size:0x60 +fn_8000CA3C = .text:0x8000CA3C; // type:function size:0x8 +fn_8000CA44 = .text:0x8000CA44; // type:function size:0x50 +fn_8000CA94 = .text:0x8000CA94; // type:function size:0xD4 +fn_8000CB68 = .text:0x8000CB68; // type:function size:0x2A4 +fn_8000CE0C = .text:0x8000CE0C; // type:function size:0x100 +fn_8000CF0C = .text:0x8000CF0C; // type:function size:0x80 +fn_8000CF8C = .text:0x8000CF8C; // type:function size:0x54 +fn_8000CFE0 = .text:0x8000CFE0; // type:function size:0xC +fn_8000CFEC = .text:0x8000CFEC; // type:function size:0x8 +fn_8000CFF4 = .text:0x8000CFF4; // type:function size:0x28 +fn_8000D01C = .text:0x8000D01C; // type:function size:0x184 +fn_8000D1A0 = .text:0x8000D1A0; // type:function size:0x4C +fn_8000D1EC = .text:0x8000D1EC; // type:function size:0x30 +fn_8000D21C = .text:0x8000D21C; // type:function size:0x10 +fn_8000D22C = .text:0x8000D22C; // type:function size:0x14 +fn_8000D240 = .text:0x8000D240; // type:function size:0x84 +fn_8000D2C4 = .text:0x8000D2C4; // type:function size:0x84 +fn_8000D348 = .text:0x8000D348; // type:function size:0xA0 +fn_8000D3E8 = .text:0x8000D3E8; // type:function size:0xB0 +fn_8000D498 = .text:0x8000D498; // type:function size:0x64 +fn_8000D4FC = .text:0x8000D4FC; // type:function size:0x188 +fn_8000D684 = .text:0x8000D684; // type:function size:0x14C +fn_8000D7D0 = .text:0x8000D7D0; // type:function size:0xF4 +fn_8000D8C4 = .text:0x8000D8C4; // type:function size:0x458 +fn_8000DD1C = .text:0x8000DD1C; // type:function size:0x8 +fn_8000DD24 = .text:0x8000DD24; // type:function size:0x114 +fn_8000DE38 = .text:0x8000DE38; // type:function size:0x10 +fn_8000DE48 = .text:0x8000DE48; // type:function size:0x128 +fn_8000DF70 = .text:0x8000DF70; // type:function size:0x188 +fn_8000E0F8 = .text:0x8000E0F8; // type:function size:0xF4 +fn_8000E1EC = .text:0x8000E1EC; // type:function size:0x334 +fn_8000E520 = .text:0x8000E520; // type:function size:0x8C +fn_8000E5AC = .text:0x8000E5AC; // type:function size:0xAC +fn_8000E658 = .text:0x8000E658; // type:function size:0x9C +fn_8000E6F4 = .text:0x8000E6F4; // type:function size:0x84 +fn_8000E778 = .text:0x8000E778; // type:function size:0x90 +fn_8000E808 = .text:0x8000E808; // type:function size:0xAC +fn_8000E8B4 = .text:0x8000E8B4; // type:function size:0xAC +fn_8000E960 = .text:0x8000E960; // type:function size:0x60 +fn_8000E9C0 = .text:0x8000E9C0; // type:function size:0x5C +fn_8000EA1C = .text:0x8000EA1C; // type:function size:0x60 +fn_8000EA7C = .text:0x8000EA7C; // type:function size:0x64 +fn_8000EAE0 = .text:0x8000EAE0; // type:function size:0x64 +fn_8000EB44 = .text:0x8000EB44; // type:function size:0x4C +fn_8000EB90 = .text:0x8000EB90; // type:function size:0xF0 +fn_8000EC80 = .text:0x8000EC80; // type:function size:0x9C +fn_8000ED1C = .text:0x8000ED1C; // type:function size:0x9C +fn_8000EDB8 = .text:0x8000EDB8; // type:function size:0x98 +fn_8000EE50 = .text:0x8000EE50; // type:function size:0x9C +fn_8000EEEC = .text:0x8000EEEC; // type:function size:0xC0 +fn_8000EFAC = .text:0x8000EFAC; // type:function size:0x8C +fn_8000F038 = .text:0x8000F038; // type:function size:0x50 +fn_8000F088 = .text:0x8000F088; // type:function size:0x4C +fn_8000F0D4 = .text:0x8000F0D4; // type:function size:0xAC +fn_8000F180 = .text:0x8000F180; // type:function size:0x58 +fn_8000F1D8 = .text:0x8000F1D8; // type:function size:0x1FC +fn_8000F3D4 = .text:0x8000F3D4; // type:function size:0x68 +fn_8000F43C = .text:0x8000F43C; // type:function size:0x50 +fn_8000F48C = .text:0x8000F48C; // type:function size:0x214 +fn_8000F6A0 = .text:0x8000F6A0; // type:function size:0x158 +fn_8000F7F8 = .text:0x8000F7F8; // type:function size:0xECC +fn_800106C4 = .text:0x800106C4; // type:function size:0x29C +fn_80010960 = .text:0x80010960; // type:function size:0x58 +fn_800109B8 = .text:0x800109B8; // type:function size:0x178 +fn_80010B30 = .text:0x80010B30; // type:function size:0xB0 +fn_80010BE0 = .text:0x80010BE0; // type:function size:0xA0 +fn_80010C80 = .text:0x80010C80; // type:function size:0xC8 +fn_80010D48 = .text:0x80010D48; // type:function size:0x284 +fn_80010FCC = .text:0x80010FCC; // type:function size:0x38 +fn_80011004 = .text:0x80011004; // type:function size:0x210 +fn_80011214 = .text:0x80011214; // type:function size:0xF8 +fn_8001130C = .text:0x8001130C; // type:function size:0x80 +fn_8001138C = .text:0x8001138C; // type:function size:0x130 +fn_800114BC = .text:0x800114BC; // type:function size:0x1C0 +fn_8001167C = .text:0x8001167C; // type:function size:0x128 +fn_800117A4 = .text:0x800117A4; // type:function size:0x1A8 +fn_8001194C = .text:0x8001194C; // type:function size:0x190 +fn_80011ADC = .text:0x80011ADC; // type:function size:0x7A8 +fn_80012284 = .text:0x80012284; // type:function size:0x15C +fn_800123E0 = .text:0x800123E0; // type:function size:0x464 +fn_80012844 = .text:0x80012844; // type:function size:0x198 +fn_800129DC = .text:0x800129DC; // type:function size:0x12C +fn_80012B08 = .text:0x80012B08; // type:function size:0x1E8 +fn_80012CF0 = .text:0x80012CF0; // type:function size:0x168 +fn_80012E58 = .text:0x80012E58; // type:function size:0xD0 +fn_80012F28 = .text:0x80012F28; // type:function size:0x174 +fn_8001309C = .text:0x8001309C; // type:function size:0x16C +fn_80013208 = .text:0x80013208; // type:function size:0xE8 +fn_800132F0 = .text:0x800132F0; // type:function size:0x38 +fn_80013328 = .text:0x80013328; // type:function size:0x938 +fn_80013C60 = .text:0x80013C60; // type:function size:0x80 +fn_80013CE0 = .text:0x80013CE0; // type:function size:0x94 +fn_80013D74 = .text:0x80013D74; // type:function size:0x44 +fn_80013DB8 = .text:0x80013DB8; // type:function size:0x44 +fn_80013DFC = .text:0x80013DFC; // type:function size:0x44 +fn_80013E40 = .text:0x80013E40; // type:function size:0x44 +fn_80013E84 = .text:0x80013E84; // type:function size:0x44 +fn_80013EC8 = .text:0x80013EC8; // type:function size:0x44 +fn_80013F0C = .text:0x80013F0C; // type:function size:0x44 +fn_80013F50 = .text:0x80013F50; // type:function size:0x3C +fn_80013F8C = .text:0x80013F8C; // type:function size:0x44 +fn_80013FD0 = .text:0x80013FD0; // type:function size:0x24 +fn_80013FF4 = .text:0x80013FF4; // type:function size:0x24 +fn_80014018 = .text:0x80014018; // type:function size:0xC +fn_80014024 = .text:0x80014024; // type:function size:0x1A0 +fn_800141C4 = .text:0x800141C4; // type:function size:0xEC +fn_800142B0 = .text:0x800142B0; // type:function size:0x86C +fn_80014B1C = .text:0x80014B1C; // type:function size:0x4C0 +fn_80014FDC = .text:0x80014FDC; // type:function size:0x10DC +fn_800160B8 = .text:0x800160B8; // type:function size:0x8E8 +fn_800169A0 = .text:0x800169A0; // type:function size:0x2588 +fn_80018F28 = .text:0x80018F28; // type:function size:0x164 +fn_8001908C = .text:0x8001908C; // type:function size:0x180 +fn_8001920C = .text:0x8001920C; // type:function size:0xB0 +fn_800192BC = .text:0x800192BC; // type:function size:0x280 +fn_8001953C = .text:0x8001953C; // type:function size:0x29C +fn_800197D8 = .text:0x800197D8; // type:function size:0x8C +fn_80019864 = .text:0x80019864; // type:function size:0xCC +fn_80019930 = .text:0x80019930; // type:function size:0x5E4 +fn_80019F14 = .text:0x80019F14; // type:function size:0x75C +fn_8001A670 = .text:0x8001A670; // type:function size:0x248 +fn_8001A8B8 = .text:0x8001A8B8; // type:function size:0x198 +fn_8001AA50 = .text:0x8001AA50; // type:function size:0x248 +fn_8001AC98 = .text:0x8001AC98; // type:function size:0x17C +fn_8001AE14 = .text:0x8001AE14; // type:function size:0x1B4 +fn_8001AFC8 = .text:0x8001AFC8; // type:function size:0xB00 +fn_8001BAC8 = .text:0x8001BAC8; // type:function size:0x6D0 +fn_8001C198 = .text:0x8001C198; // type:function size:0xBC +fn_8001C254 = .text:0x8001C254; // type:function size:0x438 +fn_8001C68C = .text:0x8001C68C; // type:function size:0x2A8 +fn_8001C934 = .text:0x8001C934; // type:function size:0x68 +fn_8001C99C = .text:0x8001C99C; // type:function size:0xD08 +fn_8001D6A4 = .text:0x8001D6A4; // type:function size:0x3A8 +fn_8001DA4C = .text:0x8001DA4C; // type:function size:0x2C4 +fn_8001DD10 = .text:0x8001DD10; // type:function size:0x2C8 +fn_8001DFD8 = .text:0x8001DFD8; // type:function size:0x4C +fn_8001E024 = .text:0x8001E024; // type:function size:0xF4 +fn_8001E118 = .text:0x8001E118; // type:function size:0xF0 +fn_8001E208 = .text:0x8001E208; // type:function size:0x70 +fn_8001E278 = .text:0x8001E278; // type:function size:0x1E0 +fn_8001E458 = .text:0x8001E458; // type:function size:0x190 +fn_8001E5E8 = .text:0x8001E5E8; // type:function size:0x90 +fn_8001E678 = .text:0x8001E678; // type:function size:0x318 +fn_8001E990 = .text:0x8001E990; // type:function size:0x80 +fn_8001EA10 = .text:0x8001EA10; // type:function size:0x7B0 +fn_8001F1C0 = .text:0x8001F1C0; // type:function size:0x574 +fn_8001F734 = .text:0x8001F734; // type:function size:0x158 +fn_8001F88C = .text:0x8001F88C; // type:function size:0x90 +fn_8001F91C = .text:0x8001F91C; // type:function size:0x90 +fn_8001F9AC = .text:0x8001F9AC; // type:function size:0x220 +fn_8001FBCC = .text:0x8001FBCC; // type:function size:0xD8 +fn_8001FCA4 = .text:0x8001FCA4; // type:function size:0x688 +fn_8002032C = .text:0x8002032C; // type:function size:0x158 +fn_80020484 = .text:0x80020484; // type:function size:0x18 +fn_8002049C = .text:0x8002049C; // type:function size:0x1C +fn_800204B8 = .text:0x800204B8; // type:function size:0xC +fn_800204C4 = .text:0x800204C4; // type:function size:0xC +fn_800204D0 = .text:0x800204D0; // type:function size:0x330 +fn_80020800 = .text:0x80020800; // type:function size:0x2E8 +fn_80020AE8 = .text:0x80020AE8; // type:function size:0x1C8 +fn_80020CB0 = .text:0x80020CB0; // type:function size:0x34C +fn_80020FFC = .text:0x80020FFC; // type:function size:0xD0 +fn_800210CC = .text:0x800210CC; // type:function size:0x34 +fn_80021100 = .text:0x80021100; // type:function size:0x40 +fn_80021140 = .text:0x80021140; // type:function size:0x34 +fn_80021174 = .text:0x80021174; // type:function size:0x40 +fn_800211B4 = .text:0x800211B4; // type:function size:0x34 +fn_800211E8 = .text:0x800211E8; // type:function size:0x40 +fn_80021228 = .text:0x80021228; // type:function size:0x54 +fn_8002127C = .text:0x8002127C; // type:function size:0x50 +fn_800212CC = .text:0x800212CC; // type:function size:0x2C +fn_800212F8 = .text:0x800212F8; // type:function size:0x2C +fn_80021324 = .text:0x80021324; // type:function size:0x44 +fn_80021368 = .text:0x80021368; // type:function size:0x44 +fn_800213AC = .text:0x800213AC; // type:function size:0x2C +fn_800213D8 = .text:0x800213D8; // type:function size:0x6C +fn_80021444 = .text:0x80021444; // type:function size:0xD8 +fn_8002151C = .text:0x8002151C; // type:function size:0xF8 +fn_80021614 = .text:0x80021614; // type:function size:0x98 +fn_800216AC = .text:0x800216AC; // type:function size:0xB0 +fn_8002175C = .text:0x8002175C; // type:function size:0xA0 +fn_800217FC = .text:0x800217FC; // type:function size:0x34 +fn_80021830 = .text:0x80021830; // type:function size:0x34 +fn_80021864 = .text:0x80021864; // type:function size:0x88 +fn_800218EC = .text:0x800218EC; // type:function size:0xBC +fn_800219A8 = .text:0x800219A8; // type:function size:0x34 +fn_800219DC = .text:0x800219DC; // type:function size:0xEC +fn_80021AC8 = .text:0x80021AC8; // type:function size:0xB4 +fn_80021B7C = .text:0x80021B7C; // type:function size:0xF0 +fn_80021C6C = .text:0x80021C6C; // type:function size:0x44 +fn_80021CB0 = .text:0x80021CB0; // type:function size:0x44 +fn_80021CF4 = .text:0x80021CF4; // type:function size:0xBC +fn_80021DB0 = .text:0x80021DB0; // type:function size:0x30 +fn_80021DE0 = .text:0x80021DE0; // type:function size:0x134 +fn_80021F14 = .text:0x80021F14; // type:function size:0x80 +fn_80021F94 = .text:0x80021F94; // type:function size:0x88 +fn_8002201C = .text:0x8002201C; // type:function size:0x90 +fn_800220AC = .text:0x800220AC; // type:function size:0x98 +fn_80022144 = .text:0x80022144; // type:function size:0xB8 +fn_800221FC = .text:0x800221FC; // type:function size:0x78 +fn_80022274 = .text:0x80022274; // type:function size:0xD0 +fn_80022344 = .text:0x80022344; // type:function size:0xDC +fn_80022420 = .text:0x80022420; // type:function size:0x3C0 +fn_800227E0 = .text:0x800227E0; // type:function size:0x88 +fn_80022868 = .text:0x80022868; // type:function size:0x58 +fn_800228C0 = .text:0x800228C0; // type:function size:0xD4 +fn_80022994 = .text:0x80022994; // type:function size:0x34 +fn_800229C8 = .text:0x800229C8; // type:function size:0x74 +fn_80022A3C = .text:0x80022A3C; // type:function size:0xA0 +fn_80022ADC = .text:0x80022ADC; // type:function size:0x104 +fn_80022BE0 = .text:0x80022BE0; // type:function size:0xA8 +fn_80022C88 = .text:0x80022C88; // type:function size:0x17C +fn_80022E04 = .text:0x80022E04; // type:function size:0x44 +fn_80022E48 = .text:0x80022E48; // type:function size:0x6C +fn_80022EB4 = .text:0x80022EB4; // type:function size:0x48 +fn_80022EFC = .text:0x80022EFC; // type:function size:0x70 +fn_80022F6C = .text:0x80022F6C; // type:function size:0x58 +fn_80022FC4 = .text:0x80022FC4; // type:function size:0x80 +fn_80023044 = .text:0x80023044; // type:function size:0x20 +fn_80023064 = .text:0x80023064; // type:function size:0xBC +fn_80023120 = .text:0x80023120; // type:function size:0x68 +fn_80023188 = .text:0x80023188; // type:function size:0x38 +fn_800231C0 = .text:0x800231C0; // type:function size:0x60 +fn_80023220 = .text:0x80023220; // type:function size:0x70 +fn_80023290 = .text:0x80023290; // type:function size:0x9C +fn_8002332C = .text:0x8002332C; // type:function size:0x90 +fn_800233BC = .text:0x800233BC; // type:function size:0xBC +fn_80023478 = .text:0x80023478; // type:function size:0x80 +fn_800234F8 = .text:0x800234F8; // type:function size:0xAC +fn_800235A4 = .text:0x800235A4; // type:function size:0xC4 +fn_80023668 = .text:0x80023668; // type:function size:0xF0 +fn_80023758 = .text:0x80023758; // type:function size:0x54 +fn_800237AC = .text:0x800237AC; // type:function size:0x7C +fn_80023828 = .text:0x80023828; // type:function size:0x4D0 +fn_80023CF8 = .text:0x80023CF8; // type:function size:0x130 +fn_80023E28 = .text:0x80023E28; // type:function size:0x254 +fn_8002407C = .text:0x8002407C; // type:function size:0x68 +fn_800240E4 = .text:0x800240E4; // type:function size:0x8 +fn_800240EC = .text:0x800240EC; // type:function size:0x60 +fn_8002414C = .text:0x8002414C; // type:function size:0x74 +fn_800241C0 = .text:0x800241C0; // type:function size:0x188 +fn_80024348 = .text:0x80024348; // type:function size:0x64 +fn_800243AC = .text:0x800243AC; // type:function size:0x2C +fn_800243D8 = .text:0x800243D8; // type:function size:0x78 +fn_80024450 = .text:0x80024450; // type:function size:0x860 +fn_80024CB0 = .text:0x80024CB0; // type:function size:0x130 +fn_80024DE0 = .text:0x80024DE0; // type:function size:0x60 +fn_80024E40 = .text:0x80024E40; // type:function size:0x88 +fn_80024EC8 = .text:0x80024EC8; // type:function size:0x38 +fn_80024F00 = .text:0x80024F00; // type:function size:0x1E8 +fn_800250E8 = .text:0x800250E8; // type:function size:0x48 +fn_80025130 = .text:0x80025130; // type:function size:0xA4 +fn_800251D4 = .text:0x800251D4; // type:function size:0xC4 +fn_80025298 = .text:0x80025298; // type:function size:0x114 +fn_800253AC = .text:0x800253AC; // type:function size:0x11C +fn_800254C8 = .text:0x800254C8; // type:function size:0xBC +fn_80025584 = .text:0x80025584; // type:function size:0x54 +fn_800255D8 = .text:0x800255D8; // type:function size:0x20 +fn_800255F8 = .text:0x800255F8; // type:function size:0x1C +fn_80025614 = .text:0x80025614; // type:function size:0x1C +fn_80025630 = .text:0x80025630; // type:function size:0x1C +fn_8002564C = .text:0x8002564C; // type:function size:0x1F4 +fn_80025840 = .text:0x80025840; // type:function size:0xBC +fn_800258FC = .text:0x800258FC; // type:function size:0x1C +fn_80025918 = .text:0x80025918; // type:function size:0x2C +fn_80025944 = .text:0x80025944; // type:function size:0x1C +fn_80025960 = .text:0x80025960; // type:function size:0x44 +fn_800259A4 = .text:0x800259A4; // type:function size:0x30 +fn_800259D4 = .text:0x800259D4; // type:function size:0x114 +fn_80025AE8 = .text:0x80025AE8; // type:function size:0xD0 +fn_80025BB8 = .text:0x80025BB8; // type:function size:0x20 +fn_80025BD8 = .text:0x80025BD8; // type:function size:0xC8 +fn_80025CA0 = .text:0x80025CA0; // type:function size:0x2C +fn_80025CCC = .text:0x80025CCC; // type:function size:0x2C +fn_80025CF8 = .text:0x80025CF8; // type:function size:0xF4 +fn_80025DEC = .text:0x80025DEC; // type:function size:0x2C +fn_80025E18 = .text:0x80025E18; // type:function size:0x2C +fn_80025E44 = .text:0x80025E44; // type:function size:0xA8 +fn_80025EEC = .text:0x80025EEC; // type:function size:0xA8 +fn_80025F94 = .text:0x80025F94; // type:function size:0x30 +fn_80025FC4 = .text:0x80025FC4; // type:function size:0x8C +fn_80026050 = .text:0x80026050; // type:function size:0x30 +fn_80026080 = .text:0x80026080; // type:function size:0x170 +fn_800261F0 = .text:0x800261F0; // type:function size:0x2C +fn_8002621C = .text:0x8002621C; // type:function size:0x2C +fn_80026248 = .text:0x80026248; // type:function size:0x114 +fn_8002635C = .text:0x8002635C; // type:function size:0x5C +fn_800263B8 = .text:0x800263B8; // type:function size:0x108 +fn_800264C0 = .text:0x800264C0; // type:function size:0x798 +fn_80026C58 = .text:0x80026C58; // type:function size:0x534 +fn_8002718C = .text:0x8002718C; // type:function size:0xC0 +fn_8002724C = .text:0x8002724C; // type:function size:0x2A8 +fn_800274F4 = .text:0x800274F4; // type:function size:0x14C +fn_80027640 = .text:0x80027640; // type:function size:0x208 +fn_80027848 = .text:0x80027848; // type:function size:0x218 +fn_80027A60 = .text:0x80027A60; // type:function size:0x558 +fn_80027FB8 = .text:0x80027FB8; // type:function size:0x1D8 +fn_80028190 = .text:0x80028190; // type:function size:0xD8 +fn_80028268 = .text:0x80028268; // type:function size:0x70 +fn_800282D8 = .text:0x800282D8; // type:function size:0x110 +fn_800283E8 = .text:0x800283E8; // type:function size:0x200 +fn_800285E8 = .text:0x800285E8; // type:function size:0x64 +fn_8002864C = .text:0x8002864C; // type:function size:0xCC +fn_80028718 = .text:0x80028718; // type:function size:0x124 +fn_8002883C = .text:0x8002883C; // type:function size:0x19C +fn_800289D8 = .text:0x800289D8; // type:function size:0x90 +fn_80028A68 = .text:0x80028A68; // type:function size:0x9C +fn_80028B04 = .text:0x80028B04; // type:function size:0x7C +fn_80028B80 = .text:0x80028B80; // type:function size:0x1D0 +fn_80028D50 = .text:0x80028D50; // type:function size:0x1C4 +fn_80028F14 = .text:0x80028F14; // type:function size:0x104 +fn_80029018 = .text:0x80029018; // type:function size:0x13C +fn_80029154 = .text:0x80029154; // type:function size:0x134 +fn_80029288 = .text:0x80029288; // type:function size:0x34 +fn_800292BC = .text:0x800292BC; // type:function size:0x38 +fn_800292F4 = .text:0x800292F4; // type:function size:0x2C +fn_80029320 = .text:0x80029320; // type:function size:0x48 +fn_80029368 = .text:0x80029368; // type:function size:0x38 +fn_800293A0 = .text:0x800293A0; // type:function size:0x240 +fn_800295E0 = .text:0x800295E0; // type:function size:0x474 +fn_80029A54 = .text:0x80029A54; // type:function size:0x1AC +fn_80029C00 = .text:0x80029C00; // type:function size:0xE0 +fn_80029CE0 = .text:0x80029CE0; // type:function size:0x10C +fn_80029DEC = .text:0x80029DEC; // type:function size:0x44 +fn_80029E30 = .text:0x80029E30; // type:function size:0xA4 +fn_80029ED4 = .text:0x80029ED4; // type:function size:0x3C +fn_80029F10 = .text:0x80029F10; // type:function size:0x5C +fn_80029F6C = .text:0x80029F6C; // type:function size:0x54 +fn_80029FC0 = .text:0x80029FC0; // type:function size:0x348 +fn_8002A308 = .text:0x8002A308; // type:function size:0x6C +fn_8002A374 = .text:0x8002A374; // type:function size:0x6C +fn_8002A3E0 = .text:0x8002A3E0; // type:function size:0x74 +fn_8002A454 = .text:0x8002A454; // type:function size:0x80 +fn_8002A4D4 = .text:0x8002A4D4; // type:function size:0x38 +fn_8002A50C = .text:0x8002A50C; // type:function size:0x38 +fn_8002A544 = .text:0x8002A544; // type:function size:0x40 +fn_8002A584 = .text:0x8002A584; // type:function size:0x44 +fn_8002A5C8 = .text:0x8002A5C8; // type:function size:0x3C +fn_8002A604 = .text:0x8002A604; // type:function size:0x60 +fn_8002A664 = .text:0x8002A664; // type:function size:0xAD4 +fn_8002B138 = .text:0x8002B138; // type:function size:0x48 +fn_8002B180 = .text:0x8002B180; // type:function size:0x1D4 +fn_8002B354 = .text:0x8002B354; // type:function size:0x17C +fn_8002B4D0 = .text:0x8002B4D0; // type:function size:0x190 +fn_8002B660 = .text:0x8002B660; // type:function size:0x1C4 +fn_8002B824 = .text:0x8002B824; // type:function size:0x20 +fn_8002B844 = .text:0x8002B844; // type:function size:0x3C +fn_8002B880 = .text:0x8002B880; // type:function size:0x3C +fn_8002B8BC = .text:0x8002B8BC; // type:function size:0x7C +fn_8002B938 = .text:0x8002B938; // type:function size:0x40 +fn_8002B978 = .text:0x8002B978; // type:function size:0x40 +fn_8002B9B8 = .text:0x8002B9B8; // type:function size:0x34 +fn_8002B9EC = .text:0x8002B9EC; // type:function size:0x38 +fn_8002BA24 = .text:0x8002BA24; // type:function size:0x74 +fn_8002BA98 = .text:0x8002BA98; // type:function size:0x68 +fn_8002BB00 = .text:0x8002BB00; // type:function size:0xBC0 +fn_8002C6C0 = .text:0x8002C6C0; // type:function size:0x4B4 +fn_8002CB74 = .text:0x8002CB74; // type:function size:0xAC +fn_8002CC20 = .text:0x8002CC20; // type:function size:0xA14 +fn_8002D634 = .text:0x8002D634; // type:function size:0x244 +fn_8002D878 = .text:0x8002D878; // type:function size:0x40C +fn_8002DC84 = .text:0x8002DC84; // type:function size:0x1D4 +fn_8002DE58 = .text:0x8002DE58; // type:function size:0x1D0 +fn_8002E028 = .text:0x8002E028; // type:function size:0x1C +fn_8002E044 = .text:0x8002E044; // type:function size:0x540 +fn_8002E584 = .text:0x8002E584; // type:function size:0x1C8 +fn_8002E74C = .text:0x8002E74C; // type:function size:0x94 +fn_8002E7E0 = .text:0x8002E7E0; // type:function size:0x130 +fn_8002E910 = .text:0x8002E910; // type:function size:0x40 +fn_8002E950 = .text:0x8002E950; // type:function size:0x7C +fn_8002E9CC = .text:0x8002E9CC; // type:function size:0xA0 +fn_8002EA6C = .text:0x8002EA6C; // type:function size:0x16C +fn_8002EBD8 = .text:0x8002EBD8; // type:function size:0x90 +fn_8002EC68 = .text:0x8002EC68; // type:function size:0x170 +fn_8002EDD8 = .text:0x8002EDD8; // type:function size:0xE8 +fn_8002EEC0 = .text:0x8002EEC0; // type:function size:0x60 +fn_8002EF20 = .text:0x8002EF20; // type:function size:0xF4 +fn_8002F014 = .text:0x8002F014; // type:function size:0xB8 +fn_8002F0CC = .text:0x8002F0CC; // type:function size:0xA0 +fn_8002F16C = .text:0x8002F16C; // type:function size:0x78 +fn_8002F1E4 = .text:0x8002F1E4; // type:function size:0x220 +fn_8002F404 = .text:0x8002F404; // type:function size:0x50 +fn_8002F454 = .text:0x8002F454; // type:function size:0x1DC +fn_8002F630 = .text:0x8002F630; // type:function size:0xF8 +fn_8002F728 = .text:0x8002F728; // type:function size:0x84 +fn_8002F7AC = .text:0x8002F7AC; // type:function size:0x190 +fn_8002F93C = .text:0x8002F93C; // type:function size:0x88 +fn_8002F9C4 = .text:0x8002F9C4; // type:function size:0xFC +fn_8002FAC0 = .text:0x8002FAC0; // type:function size:0x2C +fn_8002FAEC = .text:0x8002FAEC; // type:function size:0x10 +fn_8002FAFC = .text:0x8002FAFC; // type:function size:0x14 +fn_8002FB10 = .text:0x8002FB10; // type:function size:0x10 +fn_8002FB20 = .text:0x8002FB20; // type:function size:0x10 +fn_8002FB30 = .text:0x8002FB30; // type:function size:0x10 +fn_8002FB40 = .text:0x8002FB40; // type:function size:0x2F8 +fn_8002FE38 = .text:0x8002FE38; // type:function size:0xE0 +fn_8002FF18 = .text:0x8002FF18; // type:function size:0x2C +fn_8002FF44 = .text:0x8002FF44; // type:function size:0x8 +fn_8002FF4C = .text:0x8002FF4C; // type:function size:0x150 +fn_8003009C = .text:0x8003009C; // type:function size:0x118 +fn_800301B4 = .text:0x800301B4; // type:function size:0x34 +fn_800301E8 = .text:0x800301E8; // type:function size:0x98 +fn_80030280 = .text:0x80030280; // type:function size:0x50 +fn_800302D0 = .text:0x800302D0; // type:function size:0xF4 +fn_800303C4 = .text:0x800303C4; // type:function size:0x150 +fn_80030514 = .text:0x80030514; // type:function size:0x1F0 +fn_80030704 = .text:0x80030704; // type:function size:0x1B4 +fn_800308B8 = .text:0x800308B8; // type:function size:0x14C +fn_80030A04 = .text:0x80030A04; // type:function size:0x318 +fn_80030D1C = .text:0x80030D1C; // type:function size:0x4C +fn_80030D68 = .text:0x80030D68; // type:function size:0x54 +fn_80030DBC = .text:0x80030DBC; // type:function size:0x18 +fn_80030DD4 = .text:0x80030DD4; // type:function size:0x140 +fn_80030F14 = .text:0x80030F14; // type:function size:0x24 +fn_80030F38 = .text:0x80030F38; // type:function size:0x38 +fn_80030F70 = .text:0x80030F70; // type:function size:0x14 +fn_80030F84 = .text:0x80030F84; // type:function size:0x1C +fn_80030FA0 = .text:0x80030FA0; // type:function size:0x18 +fn_80030FB8 = .text:0x80030FB8; // type:function size:0x1C +fn_80030FD4 = .text:0x80030FD4; // type:function size:0x18 +fn_80030FEC = .text:0x80030FEC; // type:function size:0x5C +fn_80031048 = .text:0x80031048; // type:function size:0x1C +fn_80031064 = .text:0x80031064; // type:function size:0x20 +fn_80031084 = .text:0x80031084; // type:function size:0x6C +fn_800310F0 = .text:0x800310F0; // type:function size:0x5C +fn_8003114C = .text:0x8003114C; // type:function size:0x6C +fn_800311B8 = .text:0x800311B8; // type:function size:0x5C +fn_80031214 = .text:0x80031214; // type:function size:0x60 +fn_80031274 = .text:0x80031274; // type:function size:0x18 +fn_8003128C = .text:0x8003128C; // type:function size:0xB0 +fn_8003133C = .text:0x8003133C; // type:function size:0xD0 +fn_8003140C = .text:0x8003140C; // type:function size:0x6C +fn_80031478 = .text:0x80031478; // type:function size:0x94 +fn_8003150C = .text:0x8003150C; // type:function size:0x18 +fn_80031524 = .text:0x80031524; // type:function size:0x34 +fn_80031558 = .text:0x80031558; // type:function size:0x54 +fn_800315AC = .text:0x800315AC; // type:function size:0x10 +fn_800315BC = .text:0x800315BC; // type:function size:0x238 +fn_800317F4 = .text:0x800317F4; // type:function size:0x2C4 +fn_80031AB8 = .text:0x80031AB8; // type:function size:0x74 +fn_80031B2C = .text:0x80031B2C; // type:function size:0x230 +fn_80031D5C = .text:0x80031D5C; // type:function size:0x8 +fn_80031D64 = .text:0x80031D64; // type:function size:0x50 +fn_80031DB4 = .text:0x80031DB4; // type:function size:0x2C +fn_80031DE0 = .text:0x80031DE0; // type:function size:0x6C +fn_80031E4C = .text:0x80031E4C; // type:function size:0x154 +fn_80031FA0 = .text:0x80031FA0; // type:function size:0xB4 +fn_80032054 = .text:0x80032054; // type:function size:0x13C +fn_80032190 = .text:0x80032190; // type:function size:0x138 +fn_800322C8 = .text:0x800322C8; // type:function size:0xB4 +fn_8003237C = .text:0x8003237C; // type:function size:0xC8 +fn_80032444 = .text:0x80032444; // type:function size:0xD0 +fn_80032514 = .text:0x80032514; // type:function size:0xE0 +fn_800325F4 = .text:0x800325F4; // type:function size:0xAC +fn_800326A0 = .text:0x800326A0; // type:function size:0xD8 +fn_80032778 = .text:0x80032778; // type:function size:0xB8 +fn_80032830 = .text:0x80032830; // type:function size:0x170 +fn_800329A0 = .text:0x800329A0; // type:function size:0x8 +fn_800329A8 = .text:0x800329A8; // type:function size:0x3C +fn_800329E4 = .text:0x800329E4; // type:function size:0x24 +fn_80032A08 = .text:0x80032A08; // type:function size:0x24 +fn_80032A2C = .text:0x80032A2C; // type:function size:0x4 +fn_80032A30 = .text:0x80032A30; // type:function size:0x28 +fn_80032A58 = .text:0x80032A58; // type:function size:0x3C +fn_80032A94 = .text:0x80032A94; // type:function size:0x80 +fn_80032B14 = .text:0x80032B14; // type:function size:0x48 +fn_80032B5C = .text:0x80032B5C; // type:function size:0x68 +fn_80032BC4 = .text:0x80032BC4; // type:function size:0x2C +fn_80032BF0 = .text:0x80032BF0; // type:function size:0x28 +fn_80032C18 = .text:0x80032C18; // type:function size:0x30 +fn_80032C48 = .text:0x80032C48; // type:function size:0x50 +fn_80032C98 = .text:0x80032C98; // type:function size:0xA4 +fn_80032D3C = .text:0x80032D3C; // type:function size:0x134 +fn_80032E70 = .text:0x80032E70; // type:function size:0x3C +fn_80032EAC = .text:0x80032EAC; // type:function size:0x6C +fn_80032F18 = .text:0x80032F18; // type:function size:0x64 +fn_80032F7C = .text:0x80032F7C; // type:function size:0x20 +fn_80032F9C = .text:0x80032F9C; // type:function size:0x2C +fn_80032FC8 = .text:0x80032FC8; // type:function size:0x28 +fn_80032FF0 = .text:0x80032FF0; // type:function size:0x54 +fn_80033044 = .text:0x80033044; // type:function size:0x58 +fn_8003309C = .text:0x8003309C; // type:function size:0x5C +fn_800330F8 = .text:0x800330F8; // type:function size:0x48 +fn_80033140 = .text:0x80033140; // type:function size:0x3C +fn_8003317C = .text:0x8003317C; // type:function size:0x5C +fn_800331D8 = .text:0x800331D8; // type:function size:0x28 +fn_80033200 = .text:0x80033200; // type:function size:0x2C +fn_8003322C = .text:0x8003322C; // type:function size:0x54 +fn_80033280 = .text:0x80033280; // type:function size:0x60 +fn_800332E0 = .text:0x800332E0; // type:function size:0x64 +fn_80033344 = .text:0x80033344; // type:function size:0x38 +fn_8003337C = .text:0x8003337C; // type:function size:0x3C +fn_800333B8 = .text:0x800333B8; // type:function size:0x28 +fn_800333E0 = .text:0x800333E0; // type:function size:0x24 +fn_80033404 = .text:0x80033404; // type:function size:0x28 +fn_8003342C = .text:0x8003342C; // type:function size:0x104 +fn_80033530 = .text:0x80033530; // type:function size:0x1A4 +fn_800336D4 = .text:0x800336D4; // type:function size:0x60 +fn_80033734 = .text:0x80033734; // type:function size:0x154 +fn_80033888 = .text:0x80033888; // type:function size:0x58 +fn_800338E0 = .text:0x800338E0; // type:function size:0xC +fn_800338EC = .text:0x800338EC; // type:function size:0x294 +fn_80033B80 = .text:0x80033B80; // type:function size:0x50 +fn_80033BD0 = .text:0x80033BD0; // type:function size:0x58 +fn_80033C28 = .text:0x80033C28; // type:function size:0x50 +fn_80033C78 = .text:0x80033C78; // type:function size:0xAC +fn_80033D24 = .text:0x80033D24; // type:function size:0xD0 +fn_80033DF4 = .text:0x80033DF4; // type:function size:0x90 +fn_80033E84 = .text:0x80033E84; // type:function size:0x68 +fn_80033EEC = .text:0x80033EEC; // type:function size:0x1A4 +fn_80034090 = .text:0x80034090; // type:function size:0x23C +fn_800342CC = .text:0x800342CC; // type:function size:0x80 +fn_8003434C = .text:0x8003434C; // type:function size:0x50 +fn_8003439C = .text:0x8003439C; // type:function size:0x158 +fn_800344F4 = .text:0x800344F4; // type:function size:0x9F0 +fn_80034EE4 = .text:0x80034EE4; // type:function size:0x334 +fn_80035218 = .text:0x80035218; // type:function size:0x11C +fn_80035334 = .text:0x80035334; // type:function size:0x78 +fn_800353AC = .text:0x800353AC; // type:function size:0xBC +fn_80035468 = .text:0x80035468; // type:function size:0x188 +fn_800355F0 = .text:0x800355F0; // type:function size:0x1A4 +fn_80035794 = .text:0x80035794; // type:function size:0x100 +fn_80035894 = .text:0x80035894; // type:function size:0x88 +fn_8003591C = .text:0x8003591C; // type:function size:0x4C +fn_80035968 = .text:0x80035968; // type:function size:0x4C +fn_800359B4 = .text:0x800359B4; // type:function size:0x58 +fn_80035A0C = .text:0x80035A0C; // type:function size:0x3C +fn_80035A48 = .text:0x80035A48; // type:function size:0xA4 +fn_80035AEC = .text:0x80035AEC; // type:function size:0x4 +fn_80035AF0 = .text:0x80035AF0; // type:function size:0x8C +fn_80035B7C = .text:0x80035B7C; // type:function size:0x2E0 +fn_80035E5C = .text:0x80035E5C; // type:function size:0x69C +fn_800364F8 = .text:0x800364F8; // type:function size:0x3D8 +fn_800368D0 = .text:0x800368D0; // type:function size:0x2F8 +fn_80036BC8 = .text:0x80036BC8; // type:function size:0x188 +fn_80036D50 = .text:0x80036D50; // type:function size:0x1E4 +fn_80036F34 = .text:0x80036F34; // type:function size:0x23C +fn_80037170 = .text:0x80037170; // type:function size:0x194 +fn_80037304 = .text:0x80037304; // type:function size:0x9D0 +fn_80037CD4 = .text:0x80037CD4; // type:function size:0x2A4 +fn_80037F78 = .text:0x80037F78; // type:function size:0xDA4 +fn_80038D1C = .text:0x80038D1C; // type:function size:0xDA4 +fn_80039AC0 = .text:0x80039AC0; // type:function size:0xBB8 +fn_8003A678 = .text:0x8003A678; // type:function size:0xAB4 +fn_8003B12C = .text:0x8003B12C; // type:function size:0x3C4 +fn_8003B4F0 = .text:0x8003B4F0; // type:function size:0x91C +fn_8003BE0C = .text:0x8003BE0C; // type:function size:0xC84 +fn_8003CA90 = .text:0x8003CA90; // type:function size:0xDC +fn_8003CB6C = .text:0x8003CB6C; // type:function size:0x3DC +fn_8003CF48 = .text:0x8003CF48; // type:function size:0x6B8 +fn_8003D600 = .text:0x8003D600; // type:function size:0x708 +fn_8003DD08 = .text:0x8003DD08; // type:function size:0x774 +fn_8003E47C = .text:0x8003E47C; // type:function size:0x304 +fn_8003E780 = .text:0x8003E780; // type:function size:0x6C +fn_8003E7EC = .text:0x8003E7EC; // type:function size:0x94C +fn_8003F138 = .text:0x8003F138; // type:function size:0xC +fn_8003F144 = .text:0x8003F144; // type:function size:0x40 +fn_8003F184 = .text:0x8003F184; // type:function size:0xDC +fn_8003F260 = .text:0x8003F260; // type:function size:0x234 +fn_8003F494 = .text:0x8003F494; // type:function size:0xD4 +fn_8003F568 = .text:0x8003F568; // type:function size:0x128 +fn_8003F690 = .text:0x8003F690; // type:function size:0xA0 +fn_8003F730 = .text:0x8003F730; // type:function size:0x1B0 +fn_8003F8E0 = .text:0x8003F8E0; // type:function size:0x98 +fn_8003F978 = .text:0x8003F978; // type:function size:0x8 +fn_8003F980 = .text:0x8003F980; // type:function size:0x44 +fn_8003F9C4 = .text:0x8003F9C4; // type:function size:0x44 +fn_8003FA08 = .text:0x8003FA08; // type:function size:0x48 +fn_8003FA50 = .text:0x8003FA50; // type:function size:0x48 +fn_8003FA98 = .text:0x8003FA98; // type:function size:0x50 +fn_8003FAE8 = .text:0x8003FAE8; // type:function size:0x50 +fn_8003FB38 = .text:0x8003FB38; // type:function size:0x48 +fn_8003FB80 = .text:0x8003FB80; // type:function size:0x48 +fn_8003FBC8 = .text:0x8003FBC8; // type:function size:0x58 +fn_8003FC20 = .text:0x8003FC20; // type:function size:0x48 +fn_8003FC68 = .text:0x8003FC68; // type:function size:0x48 +fn_8003FCB0 = .text:0x8003FCB0; // type:function size:0x48 +fn_8003FCF8 = .text:0x8003FCF8; // type:function size:0x48 +fn_8003FD40 = .text:0x8003FD40; // type:function size:0x268 +fn_8003FFA8 = .text:0x8003FFA8; // type:function size:0x12C +fn_800400D4 = .text:0x800400D4; // type:function size:0x78 +fn_8004014C = .text:0x8004014C; // type:function size:0x98 +fn_800401E4 = .text:0x800401E4; // type:function size:0xF4 +fn_800402D8 = .text:0x800402D8; // type:function size:0xA8 +fn_80040380 = .text:0x80040380; // type:function size:0xA8 +fn_80040428 = .text:0x80040428; // type:function size:0x3A0 +fn_800407C8 = .text:0x800407C8; // type:function size:0x160 +fn_80040928 = .text:0x80040928; // type:function size:0x210 +fn_80040B38 = .text:0x80040B38; // type:function size:0x36C +fn_80040EA4 = .text:0x80040EA4; // type:function size:0xA4 +fn_80040F48 = .text:0x80040F48; // type:function size:0xB4 +fn_80040FFC = .text:0x80040FFC; // type:function size:0x288 +fn_80041284 = .text:0x80041284; // type:function size:0x12C +fn_800413B0 = .text:0x800413B0; // type:function size:0x28 +fn_800413D8 = .text:0x800413D8; // type:function size:0x10 +fn_800413E8 = .text:0x800413E8; // type:function size:0x8 +fn_800413F0 = .text:0x800413F0; // type:function size:0xFC +fn_800414EC = .text:0x800414EC; // type:function size:0x31C +fn_80041808 = .text:0x80041808; // type:function size:0x184 +fn_8004198C = .text:0x8004198C; // type:function size:0x4C8 +fn_80041E54 = .text:0x80041E54; // type:function size:0x74 +fn_80041EC8 = .text:0x80041EC8; // type:function size:0x214 +fn_800420DC = .text:0x800420DC; // type:function size:0x54C +fn_80042628 = .text:0x80042628; // type:function size:0xA4 +fn_800426CC = .text:0x800426CC; // type:function size:0x1AC +fn_80042878 = .text:0x80042878; // type:function size:0x7D0 +fn_80043048 = .text:0x80043048; // type:function size:0x480 +fn_800434C8 = .text:0x800434C8; // type:function size:0xF4 +fn_800435BC = .text:0x800435BC; // type:function size:0x1044 +fn_80044600 = .text:0x80044600; // type:function size:0x54 +fn_80044654 = .text:0x80044654; // type:function size:0x90 +fn_800446E4 = .text:0x800446E4; // type:function size:0xA4 +fn_80044788 = .text:0x80044788; // type:function size:0x88 +fn_80044810 = .text:0x80044810; // type:function size:0x10C +fn_8004491C = .text:0x8004491C; // type:function size:0x1A4 +fn_80044AC0 = .text:0x80044AC0; // type:function size:0x80 +fn_80044B40 = .text:0x80044B40; // type:function size:0xA90 +fn_800455D0 = .text:0x800455D0; // type:function size:0x68 +fn_80045638 = .text:0x80045638; // type:function size:0xE8 +fn_80045720 = .text:0x80045720; // type:function size:0x6C +fn_8004578C = .text:0x8004578C; // type:function size:0x6C +fn_800457F8 = .text:0x800457F8; // type:function size:0x58 +fn_80045850 = .text:0x80045850; // type:function size:0xAC +fn_800458FC = .text:0x800458FC; // type:function size:0x4C +fn_80045948 = .text:0x80045948; // type:function size:0x64 +fn_800459AC = .text:0x800459AC; // type:function size:0xB8 +fn_80045A64 = .text:0x80045A64; // type:function size:0x34 +fn_80045A98 = .text:0x80045A98; // type:function size:0x34 +fn_80045ACC = .text:0x80045ACC; // type:function size:0x2C +fn_80045AF8 = .text:0x80045AF8; // type:function size:0x3C +fn_80045B34 = .text:0x80045B34; // type:function size:0x58 +fn_80045B8C = .text:0x80045B8C; // type:function size:0x50 +fn_80045BDC = .text:0x80045BDC; // type:function size:0x60 +fn_80045C3C = .text:0x80045C3C; // type:function size:0x2C +fn_80045C68 = .text:0x80045C68; // type:function size:0xC4 +fn_80045D2C = .text:0x80045D2C; // type:function size:0xC8 +fn_80045DF4 = .text:0x80045DF4; // type:function size:0xD8 +fn_80045ECC = .text:0x80045ECC; // type:function size:0x27C +fn_80046148 = .text:0x80046148; // type:function size:0x2C +fn_80046174 = .text:0x80046174; // type:function size:0x38 +fn_800461AC = .text:0x800461AC; // type:function size:0x40 +fn_800461EC = .text:0x800461EC; // type:function size:0x50 +fn_8004623C = .text:0x8004623C; // type:function size:0x8C +fn_800462C8 = .text:0x800462C8; // type:function size:0xF0 +fn_800463B8 = .text:0x800463B8; // type:function size:0x88 +fn_80046440 = .text:0x80046440; // type:function size:0x6C +fn_800464AC = .text:0x800464AC; // type:function size:0x38 +fn_800464E4 = .text:0x800464E4; // type:function size:0x68 +fn_8004654C = .text:0x8004654C; // type:function size:0x90 +fn_800465DC = .text:0x800465DC; // type:function size:0x90 +fn_8004666C = .text:0x8004666C; // type:function size:0xC0 +fn_8004672C = .text:0x8004672C; // type:function size:0x44 +fn_80046770 = .text:0x80046770; // type:function size:0x98 +fn_80046808 = .text:0x80046808; // type:function size:0x1D4 +fn_800469DC = .text:0x800469DC; // type:function size:0x10 +fn_800469EC = .text:0x800469EC; // type:function size:0x170 +fn_80046B5C = .text:0x80046B5C; // type:function size:0x54 +fn_80046BB0 = .text:0x80046BB0; // type:function size:0x8 +fn_80046BB8 = .text:0x80046BB8; // type:function size:0x114 +fn_80046CCC = .text:0x80046CCC; // type:function size:0x2A0 +fn_80046F6C = .text:0x80046F6C; // type:function size:0x1CC +fn_80047138 = .text:0x80047138; // type:function size:0x88 +fn_800471C0 = .text:0x800471C0; // type:function size:0x2C +fn_800471EC = .text:0x800471EC; // type:function size:0x34 +fn_80047220 = .text:0x80047220; // type:function size:0x38 +fn_80047258 = .text:0x80047258; // type:function size:0x4C +fn_800472A4 = .text:0x800472A4; // type:function size:0x228 +fn_800474CC = .text:0x800474CC; // type:function size:0x3B0 +fn_8004787C = .text:0x8004787C; // type:function size:0x304 +fn_80047B80 = .text:0x80047B80; // type:function size:0xA4 +fn_80047C24 = .text:0x80047C24; // type:function size:0x264 +fn_80047E88 = .text:0x80047E88; // type:function size:0xE8 +fn_80047F70 = .text:0x80047F70; // type:function size:0x34 +fn_80047FA4 = .text:0x80047FA4; // type:function size:0xC4 +fn_80048068 = .text:0x80048068; // type:function size:0x58 +fn_800480C0 = .text:0x800480C0; // type:function size:0xEC +fn_800481AC = .text:0x800481AC; // type:function size:0x28 +fn_800481D4 = .text:0x800481D4; // type:function size:0x50 +fn_80048224 = .text:0x80048224; // type:function size:0x1C +fn_80048240 = .text:0x80048240; // type:function size:0x70 +fn_800482B0 = .text:0x800482B0; // type:function size:0x68 +fn_80048318 = .text:0x80048318; // type:function size:0x100 +fn_80048418 = .text:0x80048418; // type:function size:0x38 +fn_80048450 = .text:0x80048450; // type:function size:0x50 +fn_800484A0 = .text:0x800484A0; // type:function size:0x40 +fn_800484E0 = .text:0x800484E0; // type:function size:0x4C +fn_8004852C = .text:0x8004852C; // type:function size:0x48 +fn_80048574 = .text:0x80048574; // type:function size:0x148 +fn_800486BC = .text:0x800486BC; // type:function size:0x16C +fn_80048828 = .text:0x80048828; // type:function size:0x16C +fn_80048994 = .text:0x80048994; // type:function size:0xA8 +fn_80048A3C = .text:0x80048A3C; // type:function size:0x160 +fn_80048B9C = .text:0x80048B9C; // type:function size:0x10 +fn_80048BAC = .text:0x80048BAC; // type:function size:0x2C +fn_80048BD8 = .text:0x80048BD8; // type:function size:0x140 +fn_80048D18 = .text:0x80048D18; // type:function size:0x2C +fn_80048D44 = .text:0x80048D44; // type:function size:0x1F0 +fn_80048F34 = .text:0x80048F34; // type:function size:0x44 +fn_80048F78 = .text:0x80048F78; // type:function size:0x8 +fn_80048F80 = .text:0x80048F80; // type:function size:0x58 +fn_80048FD8 = .text:0x80048FD8; // type:function size:0x68 +fn_80049040 = .text:0x80049040; // type:function size:0x390 +fn_800493D0 = .text:0x800493D0; // type:function size:0x10 +fn_800493E0 = .text:0x800493E0; // type:function size:0x134 +fn_80049514 = .text:0x80049514; // type:function size:0x1C +fn_80049530 = .text:0x80049530; // type:function size:0x98 +fn_800495C8 = .text:0x800495C8; // type:function size:0x58 +fn_80049620 = .text:0x80049620; // type:function size:0x428 +fn_80049A48 = .text:0x80049A48; // type:function size:0x3C +fn_80049A84 = .text:0x80049A84; // type:function size:0x180 +fn_80049C04 = .text:0x80049C04; // type:function size:0x20C +fn_80049E10 = .text:0x80049E10; // type:function size:0x173C +fn_8004B54C = .text:0x8004B54C; // type:function size:0xB0 +fn_8004B5FC = .text:0x8004B5FC; // type:function size:0x254 +fn_8004B850 = .text:0x8004B850; // type:function size:0xB0 +fn_8004B900 = .text:0x8004B900; // type:function size:0xB0 +fn_8004B9B0 = .text:0x8004B9B0; // type:function size:0xB0 +fn_8004BA60 = .text:0x8004BA60; // type:function size:0xB0 +fn_8004BB10 = .text:0x8004BB10; // type:function size:0xB0 +fn_8004BBC0 = .text:0x8004BBC0; // type:function size:0xB0 +fn_8004BC70 = .text:0x8004BC70; // type:function size:0x1CC +fn_8004BE3C = .text:0x8004BE3C; // type:function size:0x4A0 +fn_8004C2DC = .text:0x8004C2DC; // type:function size:0x1E8 +fn_8004C4C4 = .text:0x8004C4C4; // type:function size:0x344 +fn_8004C808 = .text:0x8004C808; // type:function size:0x1D0 +fn_8004C9D8 = .text:0x8004C9D8; // type:function size:0x88 +fn_8004CA60 = .text:0x8004CA60; // type:function size:0x9C +fn_8004CAFC = .text:0x8004CAFC; // type:function size:0x2B8 +fn_8004CDB4 = .text:0x8004CDB4; // type:function size:0x430 +fn_8004D1E4 = .text:0x8004D1E4; // type:function size:0x244 +fn_8004D428 = .text:0x8004D428; // type:function size:0x7C +fn_8004D4A4 = .text:0x8004D4A4; // type:function size:0x17C +fn_8004D620 = .text:0x8004D620; // type:function size:0x7C +fn_8004D69C = .text:0x8004D69C; // type:function size:0x7C +fn_8004D718 = .text:0x8004D718; // type:function size:0x4C +fn_8004D764 = .text:0x8004D764; // type:function size:0x44 +fn_8004D7A8 = .text:0x8004D7A8; // type:function size:0x44 +fn_8004D7EC = .text:0x8004D7EC; // type:function size:0x44 +fn_8004D830 = .text:0x8004D830; // type:function size:0x44 +fn_8004D874 = .text:0x8004D874; // type:function size:0x84 +fn_8004D8F8 = .text:0x8004D8F8; // type:function size:0x44 +fn_8004D93C = .text:0x8004D93C; // type:function size:0x4C +fn_8004D988 = .text:0x8004D988; // type:function size:0x80 +fn_8004DA08 = .text:0x8004DA08; // type:function size:0x1D4 +fn_8004DBDC = .text:0x8004DBDC; // type:function size:0x484 +fn_8004E060 = .text:0x8004E060; // type:function size:0x3FC +fn_8004E45C = .text:0x8004E45C; // type:function size:0x168 +fn_8004E5C4 = .text:0x8004E5C4; // type:function size:0x1A0 +fn_8004E764 = .text:0x8004E764; // type:function size:0x130 +fn_8004E894 = .text:0x8004E894; // type:function size:0x2B4 +fn_8004EB48 = .text:0x8004EB48; // type:function size:0xE4 +fn_8004EC2C = .text:0x8004EC2C; // type:function size:0x2B4 +fn_8004EEE0 = .text:0x8004EEE0; // type:function size:0x80 +fn_8004EF60 = .text:0x8004EF60; // type:function size:0xBC +fn_8004F01C = .text:0x8004F01C; // type:function size:0x4C +fn_8004F068 = .text:0x8004F068; // type:function size:0xB0 +fn_8004F118 = .text:0x8004F118; // type:function size:0x2CC +fn_8004F3E4 = .text:0x8004F3E4; // type:function size:0x2CC +fn_8004F6B0 = .text:0x8004F6B0; // type:function size:0xF80 +fn_80050630 = .text:0x80050630; // type:function size:0x30 +fn_80050660 = .text:0x80050660; // type:function size:0xEC +fn_8005074C = .text:0x8005074C; // type:function size:0x1B8 +fn_80050904 = .text:0x80050904; // type:function size:0x110 +fn_80050A14 = .text:0x80050A14; // type:function size:0x2A8 +fn_80050CBC = .text:0x80050CBC; // type:function size:0x38C +fn_80051048 = .text:0x80051048; // type:function size:0x470 +fn_800514B8 = .text:0x800514B8; // type:function size:0x5D4 +fn_80051A8C = .text:0x80051A8C; // type:function size:0xF4 +fn_80051B80 = .text:0x80051B80; // type:function size:0x388 +fn_80051F08 = .text:0x80051F08; // type:function size:0x148 +fn_80052050 = .text:0x80052050; // type:function size:0x518 +fn_80052568 = .text:0x80052568; // type:function size:0x994 +fn_80052EFC = .text:0x80052EFC; // type:function size:0xC28 +fn_80053B24 = .text:0x80053B24; // type:function size:0x43C +fn_80053F60 = .text:0x80053F60; // type:function size:0x100 +fn_80054060 = .text:0x80054060; // type:function size:0x19C +fn_800541FC = .text:0x800541FC; // type:function size:0x4C +fn_80054248 = .text:0x80054248; // type:function size:0x184 +fn_800543CC = .text:0x800543CC; // type:function size:0x124 +fn_800544F0 = .text:0x800544F0; // type:function size:0x124 +fn_80054614 = .text:0x80054614; // type:function size:0x54 +fn_80054668 = .text:0x80054668; // type:function size:0x408 +fn_80054A70 = .text:0x80054A70; // type:function size:0xC0 +fn_80054B30 = .text:0x80054B30; // type:function size:0x184 +fn_80054CB4 = .text:0x80054CB4; // type:function size:0x240 +fn_80054EF4 = .text:0x80054EF4; // type:function size:0x2A4 +fn_80055198 = .text:0x80055198; // type:function size:0x2A4 +fn_8005543C = .text:0x8005543C; // type:function size:0x14 +fn_80055450 = .text:0x80055450; // type:function size:0x14 +fn_80055464 = .text:0x80055464; // type:function size:0x1B8 +fn_8005561C = .text:0x8005561C; // type:function size:0x47C +fn_80055A98 = .text:0x80055A98; // type:function size:0xD8 +fn_80055B70 = .text:0x80055B70; // type:function size:0x104 +fn_80055C74 = .text:0x80055C74; // type:function size:0x5F8 +fn_8005626C = .text:0x8005626C; // type:function size:0x58 +fn_800562C4 = .text:0x800562C4; // type:function size:0x2C +fn_800562F0 = .text:0x800562F0; // type:function size:0x188 +fn_80056478 = .text:0x80056478; // type:function size:0x17C +fn_800565F4 = .text:0x800565F4; // type:function size:0x130 +fn_80056724 = .text:0x80056724; // type:function size:0x5A0 +fn_80056CC4 = .text:0x80056CC4; // type:function size:0x288 +fn_80056F4C = .text:0x80056F4C; // type:function size:0x108 +fn_80057054 = .text:0x80057054; // type:function size:0x110 +fn_80057164 = .text:0x80057164; // type:function size:0xF8 +fn_8005725C = .text:0x8005725C; // type:function size:0x100 +fn_8005735C = .text:0x8005735C; // type:function size:0xC +fn_80057368 = .text:0x80057368; // type:function size:0xC +fn_80057374 = .text:0x80057374; // type:function size:0xC +fn_80057380 = .text:0x80057380; // type:function size:0x54 +fn_800573D4 = .text:0x800573D4; // type:function size:0x8 +fn_800573DC = .text:0x800573DC; // type:function size:0x20 +fn_800573FC = .text:0x800573FC; // type:function size:0x30 +fn_8005742C = .text:0x8005742C; // type:function size:0x27C +fn_800576A8 = .text:0x800576A8; // type:function size:0xA4 +fn_8005774C = .text:0x8005774C; // type:function size:0x17C +fn_800578C8 = .text:0x800578C8; // type:function size:0x4C +fn_80057914 = .text:0x80057914; // type:function size:0x5C +fn_80057970 = .text:0x80057970; // type:function size:0xF4 +fn_80057A64 = .text:0x80057A64; // type:function size:0x9C +fn_80057B00 = .text:0x80057B00; // type:function size:0xA0 +fn_80057BA0 = .text:0x80057BA0; // type:function size:0xA4 +fn_80057C44 = .text:0x80057C44; // type:function size:0xA4 +fn_80057CE8 = .text:0x80057CE8; // type:function size:0x30 +fn_80057D18 = .text:0x80057D18; // type:function size:0x140 +fn_80057E58 = .text:0x80057E58; // type:function size:0x280 +fn_800580D8 = .text:0x800580D8; // type:function size:0x10C +fn_800581E4 = .text:0x800581E4; // type:function size:0x84 +fn_80058268 = .text:0x80058268; // type:function size:0x4C +fn_800582B4 = .text:0x800582B4; // type:function size:0x8 +fn_800582BC = .text:0x800582BC; // type:function size:0xC +fn_800582C8 = .text:0x800582C8; // type:function size:0x40 +fn_80058308 = .text:0x80058308; // type:function size:0x8 +fn_80058310 = .text:0x80058310; // type:function size:0x154 +fn_80058464 = .text:0x80058464; // type:function size:0x2A0 +fn_80058704 = .text:0x80058704; // type:function size:0x2DC +fn_800589E0 = .text:0x800589E0; // type:function size:0x8C +fn_80058A6C = .text:0x80058A6C; // type:function size:0x8C +fn_80058AF8 = .text:0x80058AF8; // type:function size:0x370 +fn_80058E68 = .text:0x80058E68; // type:function size:0xDC +fn_80058F44 = .text:0x80058F44; // type:function size:0x48 +fn_80058F8C = .text:0x80058F8C; // type:function size:0x110 +fn_8005909C = .text:0x8005909C; // type:function size:0x38 +fn_800590D4 = .text:0x800590D4; // type:function size:0x1A0 +fn_80059274 = .text:0x80059274; // type:function size:0x184 +fn_800593F8 = .text:0x800593F8; // type:function size:0x28 +fn_80059420 = .text:0x80059420; // type:function size:0xA0 +fn_800594C0 = .text:0x800594C0; // type:function size:0x60 +fn_80059520 = .text:0x80059520; // type:function size:0x54 +fn_80059574 = .text:0x80059574; // type:function size:0x90 +fn_80059604 = .text:0x80059604; // type:function size:0x1D4 +fn_800597D8 = .text:0x800597D8; // type:function size:0x12C +fn_80059904 = .text:0x80059904; // type:function size:0x624 +fn_80059F28 = .text:0x80059F28; // type:function size:0x3FC +fn_8005A324 = .text:0x8005A324; // type:function size:0x50 +fn_8005A374 = .text:0x8005A374; // type:function size:0x28 +fn_8005A39C = .text:0x8005A39C; // type:function size:0x1F4 +fn_8005A590 = .text:0x8005A590; // type:function size:0xD8 +fn_8005A668 = .text:0x8005A668; // type:function size:0x128 +fn_8005A790 = .text:0x8005A790; // type:function size:0x2D0 +fn_8005AA60 = .text:0x8005AA60; // type:function size:0xDC +fn_8005AB3C = .text:0x8005AB3C; // type:function size:0xFC +fn_8005AC38 = .text:0x8005AC38; // type:function size:0xCC +fn_8005AD04 = .text:0x8005AD04; // type:function size:0x78 +fn_8005AD7C = .text:0x8005AD7C; // type:function size:0x2E0 +fn_8005B05C = .text:0x8005B05C; // type:function size:0x64 +fn_8005B0C0 = .text:0x8005B0C0; // type:function size:0x9C +fn_8005B15C = .text:0x8005B15C; // type:function size:0xCC +fn_8005B228 = .text:0x8005B228; // type:function size:0xAC +fn_8005B2D4 = .text:0x8005B2D4; // type:function size:0x48 +fn_8005B31C = .text:0x8005B31C; // type:function size:0x74 +fn_8005B390 = .text:0x8005B390; // type:function size:0x48 +fn_8005B3D8 = .text:0x8005B3D8; // type:function size:0x524 +fn_8005B8FC = .text:0x8005B8FC; // type:function size:0x160 +fn_8005BA5C = .text:0x8005BA5C; // type:function size:0x160 +fn_8005BBBC = .text:0x8005BBBC; // type:function size:0xC +fn_8005BBC8 = .text:0x8005BBC8; // type:function size:0x7D0 +fn_8005C398 = .text:0x8005C398; // type:function size:0x8C +fn_8005C424 = .text:0x8005C424; // type:function size:0x28C +fn_8005C6B0 = .text:0x8005C6B0; // type:function size:0xC4 +fn_8005C774 = .text:0x8005C774; // type:function size:0x8C +fn_8005C800 = .text:0x8005C800; // type:function size:0x410 +fn_8005CC10 = .text:0x8005CC10; // type:function size:0x128 +fn_8005CD38 = .text:0x8005CD38; // type:function size:0xC +fn_8005CD44 = .text:0x8005CD44; // type:function size:0x44 +fn_8005CD88 = .text:0x8005CD88; // type:function size:0x50 +fn_8005CDD8 = .text:0x8005CDD8; // type:function size:0x3C +fn_8005CE14 = .text:0x8005CE14; // type:function size:0x48 +fn_8005CE5C = .text:0x8005CE5C; // type:function size:0x54 +fn_8005CEB0 = .text:0x8005CEB0; // type:function size:0x2AC +fn_8005D15C = .text:0x8005D15C; // type:function size:0x48 +fn_8005D1A4 = .text:0x8005D1A4; // type:function size:0x48 +fn_8005D1EC = .text:0x8005D1EC; // type:function size:0x48 +fn_8005D234 = .text:0x8005D234; // type:function size:0x20 +fn_8005D254 = .text:0x8005D254; // type:function size:0xA8 +fn_8005D2FC = .text:0x8005D2FC; // type:function size:0xBC +fn_8005D3B8 = .text:0x8005D3B8; // type:function size:0x28 +fn_8005D3E0 = .text:0x8005D3E0; // type:function size:0x50 +fn_8005D430 = .text:0x8005D430; // type:function size:0x30 +fn_8005D460 = .text:0x8005D460; // type:function size:0xB4 +fn_8005D514 = .text:0x8005D514; // type:function size:0x40 +fn_8005D554 = .text:0x8005D554; // type:function size:0x44 +fn_8005D598 = .text:0x8005D598; // type:function size:0x28 +fn_8005D5C0 = .text:0x8005D5C0; // type:function size:0x3C +fn_8005D5FC = .text:0x8005D5FC; // type:function size:0x3C +fn_8005D638 = .text:0x8005D638; // type:function size:0x28 +fn_8005D660 = .text:0x8005D660; // type:function size:0x28 +fn_8005D688 = .text:0x8005D688; // type:function size:0x24 +fn_8005D6AC = .text:0x8005D6AC; // type:function size:0x20 +fn_8005D6CC = .text:0x8005D6CC; // type:function size:0x24 +fn_8005D6F0 = .text:0x8005D6F0; // type:function size:0x24 +fn_8005D714 = .text:0x8005D714; // type:function size:0x3C +fn_8005D750 = .text:0x8005D750; // type:function size:0x48 +fn_8005D798 = .text:0x8005D798; // type:function size:0x230 +fn_8005D9C8 = .text:0x8005D9C8; // type:function size:0x20 +fn_8005D9E8 = .text:0x8005D9E8; // type:function size:0x2BC +fn_8005DCA4 = .text:0x8005DCA4; // type:function size:0x48 +fn_8005DCEC = .text:0x8005DCEC; // type:function size:0x58 +fn_8005DD44 = .text:0x8005DD44; // type:function size:0x24C +fn_8005DF90 = .text:0x8005DF90; // type:function size:0x350 +fn_8005E2E0 = .text:0x8005E2E0; // type:function size:0xE4 +fn_8005E3C4 = .text:0x8005E3C4; // type:function size:0x764 +fn_8005EB28 = .text:0x8005EB28; // type:function size:0x48 +fn_8005EB70 = .text:0x8005EB70; // type:function size:0x48 +fn_8005EBB8 = .text:0x8005EBB8; // type:function size:0x170 +fn_8005ED28 = .text:0x8005ED28; // type:function size:0x60 +fn_8005ED88 = .text:0x8005ED88; // type:function size:0xC4 +fn_8005EE4C = .text:0x8005EE4C; // type:function size:0x74 +fn_8005EEC0 = .text:0x8005EEC0; // type:function size:0x28 +fn_8005EEE8 = .text:0x8005EEE8; // type:function size:0x28 +fn_8005EF10 = .text:0x8005EF10; // type:function size:0x48 +fn_8005EF58 = .text:0x8005EF58; // type:function size:0x10C +fn_8005F064 = .text:0x8005F064; // type:function size:0x330 +fn_8005F394 = .text:0x8005F394; // type:function size:0x390 +fn_8005F724 = .text:0x8005F724; // type:function size:0x24 +fn_8005F748 = .text:0x8005F748; // type:function size:0x24 +fn_8005F76C = .text:0x8005F76C; // type:function size:0x50 +fn_8005F7BC = .text:0x8005F7BC; // type:function size:0x58 +fn_8005F814 = .text:0x8005F814; // type:function size:0x134 +fn_8005F948 = .text:0x8005F948; // type:function size:0x15C +fn_8005FAA4 = .text:0x8005FAA4; // type:function size:0x7C +fn_8005FB20 = .text:0x8005FB20; // type:function size:0x34 +fn_8005FB54 = .text:0x8005FB54; // type:function size:0x1C0 +fn_8005FD14 = .text:0x8005FD14; // type:function size:0x6C +fn_8005FD80 = .text:0x8005FD80; // type:function size:0xD4 +fn_8005FE54 = .text:0x8005FE54; // type:function size:0x174 +fn_8005FFC8 = .text:0x8005FFC8; // type:function size:0x5C +fn_80060024 = .text:0x80060024; // type:function size:0x34 +fn_80060058 = .text:0x80060058; // type:function size:0x178 +fn_800601D0 = .text:0x800601D0; // type:function size:0x350 +fn_80060520 = .text:0x80060520; // type:function size:0x164 +fn_80060684 = .text:0x80060684; // type:function size:0x24 +fn_800606A8 = .text:0x800606A8; // type:function size:0x88 +fn_80060730 = .text:0x80060730; // type:function size:0xB8 +fn_800607E8 = .text:0x800607E8; // type:function size:0x564 +fn_80060D4C = .text:0x80060D4C; // type:function size:0x14C +fn_80060E98 = .text:0x80060E98; // type:function size:0x254 +fn_800610EC = .text:0x800610EC; // type:function size:0x278 +fn_80061364 = .text:0x80061364; // type:function size:0x2AC +fn_80061610 = .text:0x80061610; // type:function size:0xAC +fn_800616BC = .text:0x800616BC; // type:function size:0x80 +fn_8006173C = .text:0x8006173C; // type:function size:0x54 +fn_80061790 = .text:0x80061790; // type:function size:0x3A4 +fn_80061B34 = .text:0x80061B34; // type:function size:0x38 +fn_80061B6C = .text:0x80061B6C; // type:function size:0x48 +fn_80061BB4 = .text:0x80061BB4; // type:function size:0xC +fn_80061BC0 = .text:0x80061BC0; // type:function size:0xC +fn_80061BCC = .text:0x80061BCC; // type:function size:0x78 +fn_80061C44 = .text:0x80061C44; // type:function size:0x78 +fn_80061CBC = .text:0x80061CBC; // type:function size:0x80 +fn_80061D3C = .text:0x80061D3C; // type:function size:0x16C +fn_80061EA8 = .text:0x80061EA8; // type:function size:0x588 +fn_80062430 = .text:0x80062430; // type:function size:0xFC +fn_8006252C = .text:0x8006252C; // type:function size:0x84 +fn_800625B0 = .text:0x800625B0; // type:function size:0x80 +fn_80062630 = .text:0x80062630; // type:function size:0x80 +fn_800626B0 = .text:0x800626B0; // type:function size:0xB4 +fn_80062764 = .text:0x80062764; // type:function size:0xB0 +fn_80062814 = .text:0x80062814; // type:function size:0xB4 +fn_800628C8 = .text:0x800628C8; // type:function size:0x58 +fn_80062920 = .text:0x80062920; // type:function size:0x60 +fn_80062980 = .text:0x80062980; // type:function size:0x40 +fn_800629C0 = .text:0x800629C0; // type:function size:0xC4 +fn_80062A84 = .text:0x80062A84; // type:function size:0x90 +fn_80062B14 = .text:0x80062B14; // type:function size:0x80 +fn_80062B94 = .text:0x80062B94; // type:function size:0x9C +fn_80062C30 = .text:0x80062C30; // type:function size:0xCC +fn_80062CFC = .text:0x80062CFC; // type:function size:0x80 +fn_80062D7C = .text:0x80062D7C; // type:function size:0x9C +fn_80062E18 = .text:0x80062E18; // type:function size:0xCC +fn_80062EE4 = .text:0x80062EE4; // type:function size:0x80 +fn_80062F64 = .text:0x80062F64; // type:function size:0xD4 +fn_80063038 = .text:0x80063038; // type:function size:0xA8 +fn_800630E0 = .text:0x800630E0; // type:function size:0x80 +fn_80063160 = .text:0x80063160; // type:function size:0x90 +fn_800631F0 = .text:0x800631F0; // type:function size:0x80 +fn_80063270 = .text:0x80063270; // type:function size:0x44 +fn_800632B4 = .text:0x800632B4; // type:function size:0x88 +fn_8006333C = .text:0x8006333C; // type:function size:0x80 +fn_800633BC = .text:0x800633BC; // type:function size:0x80 +fn_8006343C = .text:0x8006343C; // type:function size:0x78 +fn_800634B4 = .text:0x800634B4; // type:function size:0x88 +fn_8006353C = .text:0x8006353C; // type:function size:0xD0 +fn_8006360C = .text:0x8006360C; // type:function size:0xE0 +fn_800636EC = .text:0x800636EC; // type:function size:0x80 +fn_8006376C = .text:0x8006376C; // type:function size:0x80 +fn_800637EC = .text:0x800637EC; // type:function size:0x78 +fn_80063864 = .text:0x80063864; // type:function size:0x78 +fn_800638DC = .text:0x800638DC; // type:function size:0xA0 +fn_8006397C = .text:0x8006397C; // type:function size:0x80 +fn_800639FC = .text:0x800639FC; // type:function size:0x80 +fn_80063A7C = .text:0x80063A7C; // type:function size:0x34 +fn_80063AB0 = .text:0x80063AB0; // type:function size:0x2C +fn_80063ADC = .text:0x80063ADC; // type:function size:0x9C +fn_80063B78 = .text:0x80063B78; // type:function size:0x48 +fn_80063BC0 = .text:0x80063BC0; // type:function size:0x16C +fn_80063D2C = .text:0x80063D2C; // type:function size:0x40 +fn_80063D6C = .text:0x80063D6C; // type:function size:0x7C +fn_80063DE8 = .text:0x80063DE8; // type:function size:0x7C +fn_80063E64 = .text:0x80063E64; // type:function size:0xC4 +fn_80063F28 = .text:0x80063F28; // type:function size:0x18 +fn_80063F40 = .text:0x80063F40; // type:function size:0x18 +fn_80063F58 = .text:0x80063F58; // type:function size:0x15C +fn_800640B4 = .text:0x800640B4; // type:function size:0x160 +fn_80064214 = .text:0x80064214; // type:function size:0x420 +fn_80064634 = .text:0x80064634; // type:function size:0x80 +fn_800646B4 = .text:0x800646B4; // type:function size:0x18C +fn_80064840 = .text:0x80064840; // type:function size:0x134 +fn_80064974 = .text:0x80064974; // type:function size:0x10 +fn_80064984 = .text:0x80064984; // type:function size:0x10 +fn_80064994 = .text:0x80064994; // type:function size:0xC +fn_800649A0 = .text:0x800649A0; // type:function size:0x634 +fn_80064FD4 = .text:0x80064FD4; // type:function size:0x1A0 +fn_80065174 = .text:0x80065174; // type:function size:0x70 +fn_800651E4 = .text:0x800651E4; // type:function size:0x180 +fn_80065364 = .text:0x80065364; // type:function size:0x114 +fn_80065478 = .text:0x80065478; // type:function size:0x8E8 +fn_80065D60 = .text:0x80065D60; // type:function size:0xBF8 +fn_80066958 = .text:0x80066958; // type:function size:0xBC +fn_80066A14 = .text:0x80066A14; // type:function size:0x90 +fn_80066AA4 = .text:0x80066AA4; // type:function size:0x90 +fn_80066B34 = .text:0x80066B34; // type:function size:0x430 +fn_80066F64 = .text:0x80066F64; // type:function size:0x218 +fn_8006717C = .text:0x8006717C; // type:function size:0x1D4 +fn_80067350 = .text:0x80067350; // type:function size:0x54 +fn_800673A4 = .text:0x800673A4; // type:function size:0x3E4 +fn_80067788 = .text:0x80067788; // type:function size:0xF8 +fn_80067880 = .text:0x80067880; // type:function size:0x5A0 +fn_80067E20 = .text:0x80067E20; // type:function size:0x51C +fn_8006833C = .text:0x8006833C; // type:function size:0x2C +fn_80068368 = .text:0x80068368; // type:function size:0x138 +fn_800684A0 = .text:0x800684A0; // type:function size:0x38 +fn_800684D8 = .text:0x800684D8; // type:function size:0x10C +fn_800685E4 = .text:0x800685E4; // type:function size:0x194 +fn_80068778 = .text:0x80068778; // type:function size:0x278 +fn_800689F0 = .text:0x800689F0; // type:function size:0x6C +fn_80068A5C = .text:0x80068A5C; // type:function size:0x9C +fn_80068AF8 = .text:0x80068AF8; // type:function size:0x40 +fn_80068B38 = .text:0x80068B38; // type:function size:0x1C +fn_80068B54 = .text:0x80068B54; // type:function size:0x224 +fn_80068D78 = .text:0x80068D78; // type:function size:0x40 +fn_80068DB8 = .text:0x80068DB8; // type:function size:0x100 +fn_80068EB8 = .text:0x80068EB8; // type:function size:0x1A4 +fn_8006905C = .text:0x8006905C; // type:function size:0x128 +fn_80069184 = .text:0x80069184; // type:function size:0x8 +fn_8006918C = .text:0x8006918C; // type:function size:0x8 +fn_80069194 = .text:0x80069194; // type:function size:0x74 +fn_80069208 = .text:0x80069208; // type:function size:0x54 +fn_8006925C = .text:0x8006925C; // type:function size:0x4C +fn_800692A8 = .text:0x800692A8; // type:function size:0x44 +fn_800692EC = .text:0x800692EC; // type:function size:0x44 +fn_80069330 = .text:0x80069330; // type:function size:0x44 +fn_80069374 = .text:0x80069374; // type:function size:0x1F0 +fn_80069564 = .text:0x80069564; // type:function size:0x5C +fn_800695C0 = .text:0x800695C0; // type:function size:0x1294 +fn_8006A854 = .text:0x8006A854; // type:function size:0xA0 +fn_8006A8F4 = .text:0x8006A8F4; // type:function size:0x24C +fn_8006AB40 = .text:0x8006AB40; // type:function size:0x8 +fn_8006AB48 = .text:0x8006AB48; // type:function size:0x38C +fn_8006AED4 = .text:0x8006AED4; // type:function size:0x950 +fn_8006B824 = .text:0x8006B824; // type:function size:0x980 +fn_8006C1A4 = .text:0x8006C1A4; // type:function size:0xA48 +fn_8006CBEC = .text:0x8006CBEC; // type:function size:0x24C +fn_8006CE38 = .text:0x8006CE38; // type:function size:0xC0 +fn_8006CEF8 = .text:0x8006CEF8; // type:function size:0xF0 +fn_8006CFE8 = .text:0x8006CFE8; // type:function size:0xA0 +fn_8006D088 = .text:0x8006D088; // type:function size:0x70 +fn_8006D0F8 = .text:0x8006D0F8; // type:function size:0x4 +fn_8006D0FC = .text:0x8006D0FC; // type:function size:0xCC +fn_8006D1C8 = .text:0x8006D1C8; // type:function size:0x90 +fn_8006D258 = .text:0x8006D258; // type:function size:0x70 +fn_8006D2C8 = .text:0x8006D2C8; // type:function size:0x7C +fn_8006D344 = .text:0x8006D344; // type:function size:0x250 +fn_8006D594 = .text:0x8006D594; // type:function size:0x40 +fn_8006D5D4 = .text:0x8006D5D4; // type:function size:0x44 +fn_8006D618 = .text:0x8006D618; // type:function size:0x168 +fn_8006D780 = .text:0x8006D780; // type:function size:0x44 +fn_8006D7C4 = .text:0x8006D7C4; // type:function size:0x48 +fn_8006D80C = .text:0x8006D80C; // type:function size:0x60 +fn_8006D86C = .text:0x8006D86C; // type:function size:0x74 +fn_8006D8E0 = .text:0x8006D8E0; // type:function size:0x68 +fn_8006D948 = .text:0x8006D948; // type:function size:0x48 +fn_8006D990 = .text:0x8006D990; // type:function size:0x48 +fn_8006D9D8 = .text:0x8006D9D8; // type:function size:0x70 +fn_8006DA48 = .text:0x8006DA48; // type:function size:0x140 +fn_8006DB88 = .text:0x8006DB88; // type:function size:0x118 +fn_8006DCA0 = .text:0x8006DCA0; // type:function size:0xE8 +fn_8006DD88 = .text:0x8006DD88; // type:function size:0x7C +fn_8006DE04 = .text:0x8006DE04; // type:function size:0xA4 +fn_8006DEA8 = .text:0x8006DEA8; // type:function size:0x174 +fn_8006E01C = .text:0x8006E01C; // type:function size:0x50 +fn_8006E06C = .text:0x8006E06C; // type:function size:0x148 +fn_8006E1B4 = .text:0x8006E1B4; // type:function size:0x58 +fn_8006E20C = .text:0x8006E20C; // type:function size:0x58 +fn_8006E264 = .text:0x8006E264; // type:function size:0x84 +fn_8006E2E8 = .text:0x8006E2E8; // type:function size:0x94 +fn_8006E37C = .text:0x8006E37C; // type:function size:0x88 +fn_8006E404 = .text:0x8006E404; // type:function size:0x64 +fn_8006E468 = .text:0x8006E468; // type:function size:0xA4 +fn_8006E50C = .text:0x8006E50C; // type:function size:0x80 +fn_8006E58C = .text:0x8006E58C; // type:function size:0x100 +fn_8006E68C = .text:0x8006E68C; // type:function size:0x7C +fn_8006E708 = .text:0x8006E708; // type:function size:0xBC +fn_8006E7C4 = .text:0x8006E7C4; // type:function size:0x88 +fn_8006E84C = .text:0x8006E84C; // type:function size:0x64 +fn_8006E8B0 = .text:0x8006E8B0; // type:function size:0x14C +fn_8006E9FC = .text:0x8006E9FC; // type:function size:0x100 +fn_8006EAFC = .text:0x8006EAFC; // type:function size:0xB0 +fn_8006EBAC = .text:0x8006EBAC; // type:function size:0x8C +fn_8006EC38 = .text:0x8006EC38; // type:function size:0x8C +fn_8006ECC4 = .text:0x8006ECC4; // type:function size:0x54 +fn_8006ED18 = .text:0x8006ED18; // type:function size:0x30 +fn_8006ED48 = .text:0x8006ED48; // type:function size:0x50 +fn_8006ED98 = .text:0x8006ED98; // type:function size:0x78 +fn_8006EE10 = .text:0x8006EE10; // type:function size:0x50 +fn_8006EE60 = .text:0x8006EE60; // type:function size:0x78 +fn_8006EED8 = .text:0x8006EED8; // type:function size:0x50 +fn_8006EF28 = .text:0x8006EF28; // type:function size:0x78 +fn_8006EFA0 = .text:0x8006EFA0; // type:function size:0x74 +fn_8006F014 = .text:0x8006F014; // type:function size:0x74 +fn_8006F088 = .text:0x8006F088; // type:function size:0x74 +fn_8006F0FC = .text:0x8006F0FC; // type:function size:0x60 +fn_8006F15C = .text:0x8006F15C; // type:function size:0x4C +fn_8006F1A8 = .text:0x8006F1A8; // type:function size:0x64 +fn_8006F20C = .text:0x8006F20C; // type:function size:0x64 +fn_8006F270 = .text:0x8006F270; // type:function size:0x48 +fn_8006F2B8 = .text:0x8006F2B8; // type:function size:0x74 +fn_8006F32C = .text:0x8006F32C; // type:function size:0xC4 +fn_8006F3F0 = .text:0x8006F3F0; // type:function size:0x50 +fn_8006F440 = .text:0x8006F440; // type:function size:0x58 +fn_8006F498 = .text:0x8006F498; // type:function size:0x9C +fn_8006F534 = .text:0x8006F534; // type:function size:0x178 +fn_8006F6AC = .text:0x8006F6AC; // type:function size:0x194 +fn_8006F840 = .text:0x8006F840; // type:function size:0x12C +fn_8006F96C = .text:0x8006F96C; // type:function size:0x24 +fn_8006F990 = .text:0x8006F990; // type:function size:0x34 +fn_8006F9C4 = .text:0x8006F9C4; // type:function size:0x24 +fn_8006F9E8 = .text:0x8006F9E8; // type:function size:0x6C +fn_8006FA54 = .text:0x8006FA54; // type:function size:0x514 +fn_8006FF68 = .text:0x8006FF68; // type:function size:0xC +fn_8006FF74 = .text:0x8006FF74; // type:function size:0xC +fn_8006FF80 = .text:0x8006FF80; // type:function size:0x1A0 +fn_80070120 = .text:0x80070120; // type:function size:0x1A0 +fn_800702C0 = .text:0x800702C0; // type:function size:0x18 +fn_800702D8 = .text:0x800702D8; // type:function size:0x50 +fn_80070328 = .text:0x80070328; // type:function size:0x38 +fn_80070360 = .text:0x80070360; // type:function size:0x48 +fn_800703A8 = .text:0x800703A8; // type:function size:0x48 +fn_800703F0 = .text:0x800703F0; // type:function size:0x1C +fn_8007040C = .text:0x8007040C; // type:function size:0xC +fn_80070418 = .text:0x80070418; // type:function size:0x64 +fn_8007047C = .text:0x8007047C; // type:function size:0x50 +fn_800704CC = .text:0x800704CC; // type:function size:0x38 +fn_80070504 = .text:0x80070504; // type:function size:0x44 +fn_80070548 = .text:0x80070548; // type:function size:0x38 +fn_80070580 = .text:0x80070580; // type:function size:0x38 +fn_800705B8 = .text:0x800705B8; // type:function size:0x38 +fn_800705F0 = .text:0x800705F0; // type:function size:0x168 +fn_80070758 = .text:0x80070758; // type:function size:0x214 +fn_8007096C = .text:0x8007096C; // type:function size:0x8 +fn_80070974 = .text:0x80070974; // type:function size:0x68 +fn_800709DC = .text:0x800709DC; // type:function size:0xD0 +fn_80070AAC = .text:0x80070AAC; // type:function size:0x2C +fn_80070AD8 = .text:0x80070AD8; // type:function size:0x60 +fn_80070B38 = .text:0x80070B38; // type:function size:0x5C +fn_80070B94 = .text:0x80070B94; // type:function size:0x90 +fn_80070C24 = .text:0x80070C24; // type:function size:0x94 +fn_80070CB8 = .text:0x80070CB8; // type:function size:0x54 +fn_80070D0C = .text:0x80070D0C; // type:function size:0x50 +fn_80070D5C = .text:0x80070D5C; // type:function size:0x74 +fn_80070DD0 = .text:0x80070DD0; // type:function size:0x78 +fn_80070E48 = .text:0x80070E48; // type:function size:0x38 +fn_80070E80 = .text:0x80070E80; // type:function size:0x38 +fn_80070EB8 = .text:0x80070EB8; // type:function size:0x28 +fn_80070EE0 = .text:0x80070EE0; // type:function size:0x38 +fn_80070F18 = .text:0x80070F18; // type:function size:0x28 +fn_80070F40 = .text:0x80070F40; // type:function size:0x38 +fn_80070F78 = .text:0x80070F78; // type:function size:0x28 +fn_80070FA0 = .text:0x80070FA0; // type:function size:0x38 +fn_80070FD8 = .text:0x80070FD8; // type:function size:0x28 +fn_80071000 = .text:0x80071000; // type:function size:0xE8 +fn_800710E8 = .text:0x800710E8; // type:function size:0x100 +fn_800711E8 = .text:0x800711E8; // type:function size:0x120 +fn_80071308 = .text:0x80071308; // type:function size:0x74 +fn_8007137C = .text:0x8007137C; // type:function size:0xD0 +fn_8007144C = .text:0x8007144C; // type:function size:0x6C +fn_800714B8 = .text:0x800714B8; // type:function size:0x68 +fn_80071520 = .text:0x80071520; // type:function size:0x16C +fn_8007168C = .text:0x8007168C; // type:function size:0x220 +fn_800718AC = .text:0x800718AC; // type:function size:0x248 +fn_80071AF4 = .text:0x80071AF4; // type:function size:0x158 +fn_80071C4C = .text:0x80071C4C; // type:function size:0x314 +fn_80071F60 = .text:0x80071F60; // type:function size:0x198 +fn_800720F8 = .text:0x800720F8; // type:function size:0x7C +fn_80072174 = .text:0x80072174; // type:function size:0x74 +fn_800721E8 = .text:0x800721E8; // type:function size:0x304 +fn_800724EC = .text:0x800724EC; // type:function size:0xA8 +fn_80072594 = .text:0x80072594; // type:function size:0x134 +fn_800726C8 = .text:0x800726C8; // type:function size:0x3C +fn_80072704 = .text:0x80072704; // type:function size:0xF0 +fn_800727F4 = .text:0x800727F4; // type:function size:0x128 +fn_8007291C = .text:0x8007291C; // type:function size:0x34 +fn_80072950 = .text:0x80072950; // type:function size:0xC +fn_8007295C = .text:0x8007295C; // type:function size:0x3C +fn_80072998 = .text:0x80072998; // type:function size:0xC8 +fn_80072A60 = .text:0x80072A60; // type:function size:0x398 +fn_80072DF8 = .text:0x80072DF8; // type:function size:0x170 +fn_80072F68 = .text:0x80072F68; // type:function size:0x158 +fn_800730C0 = .text:0x800730C0; // type:function size:0x80 +fn_80073140 = .text:0x80073140; // type:function size:0x178 +fn_800732B8 = .text:0x800732B8; // type:function size:0x4C +fn_80073304 = .text:0x80073304; // type:function size:0xE0 +fn_800733E4 = .text:0x800733E4; // type:function size:0x38 +fn_8007341C = .text:0x8007341C; // type:function size:0x374 +fn_80073790 = .text:0x80073790; // type:function size:0x24 +fn_800737B4 = .text:0x800737B4; // type:function size:0x400 +fn_80073BB4 = .text:0x80073BB4; // type:function size:0x30 +fn_80073BE4 = .text:0x80073BE4; // type:function size:0x8 +fn_80073BEC = .text:0x80073BEC; // type:function size:0x8 +fn_80073BF4 = .text:0x80073BF4; // type:function size:0x8 +fn_80073BFC = .text:0x80073BFC; // type:function size:0x48 +fn_80073C44 = .text:0x80073C44; // type:function size:0x60 +fn_80073CA4 = .text:0x80073CA4; // type:function size:0x10 +fn_80073CB4 = .text:0x80073CB4; // type:function size:0x44 +fn_80073CF8 = .text:0x80073CF8; // type:function size:0x18 +fn_80073D10 = .text:0x80073D10; // type:function size:0x18 +fn_80073D28 = .text:0x80073D28; // type:function size:0x48 +fn_80073D70 = .text:0x80073D70; // type:function size:0x48 +fn_80073DB8 = .text:0x80073DB8; // type:function size:0x48 +fn_80073E00 = .text:0x80073E00; // type:function size:0x8C +fn_80073E8C = .text:0x80073E8C; // type:function size:0x2C8 +fn_80074154 = .text:0x80074154; // type:function size:0x8C +fn_800741E0 = .text:0x800741E0; // type:function size:0xA0 +fn_80074280 = .text:0x80074280; // type:function size:0x134 +fn_800743B4 = .text:0x800743B4; // type:function size:0x134 +fn_800744E8 = .text:0x800744E8; // type:function size:0x148 +fn_80074630 = .text:0x80074630; // type:function size:0x104 +fn_80074734 = .text:0x80074734; // type:function size:0x110 +fn_80074844 = .text:0x80074844; // type:function size:0x1FC +fn_80074A40 = .text:0x80074A40; // type:function size:0x1BC +fn_80074BFC = .text:0x80074BFC; // type:function size:0x4AC +fn_800750A8 = .text:0x800750A8; // type:function size:0x344 +fn_800753EC = .text:0x800753EC; // type:function size:0x9C +fn_80075488 = .text:0x80075488; // type:function size:0xF0 +fn_80075578 = .text:0x80075578; // type:function size:0x1C +fn_80075594 = .text:0x80075594; // type:function size:0x3C +fn_800755D0 = .text:0x800755D0; // type:function size:0x110 +fn_800756E0 = .text:0x800756E0; // type:function size:0x474 +fn_80075B54 = .text:0x80075B54; // type:function size:0x2A4 +fn_80075DF8 = .text:0x80075DF8; // type:function size:0x180 +fn_80075F78 = .text:0x80075F78; // type:function size:0x268 +fn_800761E0 = .text:0x800761E0; // type:function size:0x5C +fn_8007623C = .text:0x8007623C; // type:function size:0x48 +fn_80076284 = .text:0x80076284; // type:function size:0x9E8 +fn_80076C6C = .text:0x80076C6C; // type:function size:0x174 +fn_80076DE0 = .text:0x80076DE0; // type:function size:0x2C +fn_80076E0C = .text:0x80076E0C; // type:function size:0xD0 +fn_80076EDC = .text:0x80076EDC; // type:function size:0x750 +fn_8007762C = .text:0x8007762C; // type:function size:0x70 +fn_8007769C = .text:0x8007769C; // type:function size:0x8 +fn_800776A4 = .text:0x800776A4; // type:function size:0x8 +fn_800776AC = .text:0x800776AC; // type:function size:0xD4 +fn_80077780 = .text:0x80077780; // type:function size:0xA0 +fn_80077820 = .text:0x80077820; // type:function size:0x9C +fn_800778BC = .text:0x800778BC; // type:function size:0x800 +fn_800780BC = .text:0x800780BC; // type:function size:0xD4 +fn_80078190 = .text:0x80078190; // type:function size:0x1B4 +fn_80078344 = .text:0x80078344; // type:function size:0xBC +fn_80078400 = .text:0x80078400; // type:function size:0x13C +fn_8007853C = .text:0x8007853C; // type:function size:0x314 +fn_80078850 = .text:0x80078850; // type:function size:0x168 +fn_800789B8 = .text:0x800789B8; // type:function size:0x2C +fn_800789E4 = .text:0x800789E4; // type:function size:0x18C +fn_80078B70 = .text:0x80078B70; // type:function size:0x168 +fn_80078CD8 = .text:0x80078CD8; // type:function size:0x34C +fn_80079024 = .text:0x80079024; // type:function size:0x144 +fn_80079168 = .text:0x80079168; // type:function size:0x6C +fn_800791D4 = .text:0x800791D4; // type:function size:0x280 +fn_80079454 = .text:0x80079454; // type:function size:0xA0 +fn_800794F4 = .text:0x800794F4; // type:function size:0x14C +fn_80079640 = .text:0x80079640; // type:function size:0x1C8 +fn_80079808 = .text:0x80079808; // type:function size:0x60 +fn_80079868 = .text:0x80079868; // type:function size:0x158 +fn_800799C0 = .text:0x800799C0; // type:function size:0x30 +fn_800799F0 = .text:0x800799F0; // type:function size:0x188 +fn_80079B78 = .text:0x80079B78; // type:function size:0xC +fn_80079B84 = .text:0x80079B84; // type:function size:0x38 +fn_80079BBC = .text:0x80079BBC; // type:function size:0x260 +fn_80079E1C = .text:0x80079E1C; // type:function size:0x104 +fn_80079F20 = .text:0x80079F20; // type:function size:0x30 +fn_80079F50 = .text:0x80079F50; // type:function size:0x4DC +fn_8007A42C = .text:0x8007A42C; // type:function size:0x8 +fn_8007A434 = .text:0x8007A434; // type:function size:0x8 +fn_8007A43C = .text:0x8007A43C; // type:function size:0x8C +fn_8007A4C8 = .text:0x8007A4C8; // type:function size:0x16C +fn_8007A634 = .text:0x8007A634; // type:function size:0x3B4 +fn_8007A9E8 = .text:0x8007A9E8; // type:function size:0x1FC +fn_8007ABE4 = .text:0x8007ABE4; // type:function size:0x64 +fn_8007AC48 = .text:0x8007AC48; // type:function size:0xB0 +fn_8007ACF8 = .text:0x8007ACF8; // type:function size:0x798 +fn_8007B490 = .text:0x8007B490; // type:function size:0x20C +fn_8007B69C = .text:0x8007B69C; // type:function size:0x1BC +fn_8007B858 = .text:0x8007B858; // type:function size:0xF0 +fn_8007B948 = .text:0x8007B948; // type:function size:0x3C8 +fn_8007BD10 = .text:0x8007BD10; // type:function size:0x140 +fn_8007BE50 = .text:0x8007BE50; // type:function size:0x914 +fn_8007C764 = .text:0x8007C764; // type:function size:0xC8 +fn_8007C82C = .text:0x8007C82C; // type:function size:0x27C +fn_8007CAA8 = .text:0x8007CAA8; // type:function size:0x30C +fn_8007CDB4 = .text:0x8007CDB4; // type:function size:0x3AC +fn_8007D160 = .text:0x8007D160; // type:function size:0x6C +fn_8007D1CC = .text:0x8007D1CC; // type:function size:0x21C +fn_8007D3E8 = .text:0x8007D3E8; // type:function size:0x68 +fn_8007D450 = .text:0x8007D450; // type:function size:0x288 +fn_8007D6D8 = .text:0x8007D6D8; // type:function size:0x3DC +fn_8007DAB4 = .text:0x8007DAB4; // type:function size:0x14C +fn_8007DC00 = .text:0x8007DC00; // type:function size:0xD0 +fn_8007DCD0 = .text:0x8007DCD0; // type:function size:0x160 +fn_8007DE30 = .text:0x8007DE30; // type:function size:0xA8 +fn_8007DED8 = .text:0x8007DED8; // type:function size:0x84 +fn_8007DF5C = .text:0x8007DF5C; // type:function size:0x6B0 +fn_8007E60C = .text:0x8007E60C; // type:function size:0x440 +fn_8007EA4C = .text:0x8007EA4C; // type:function size:0x338 +fn_8007ED84 = .text:0x8007ED84; // type:function size:0x68 +fn_8007EDEC = .text:0x8007EDEC; // type:function size:0x4C0 +fn_8007F2AC = .text:0x8007F2AC; // type:function size:0xA4 +fn_8007F350 = .text:0x8007F350; // type:function size:0xFC +fn_8007F44C = .text:0x8007F44C; // type:function size:0x38 +fn_8007F484 = .text:0x8007F484; // type:function size:0x2BC +fn_8007F740 = .text:0x8007F740; // type:function size:0x184 +fn_8007F8C4 = .text:0x8007F8C4; // type:function size:0x19C +fn_8007FA60 = .text:0x8007FA60; // type:function size:0x1E8 +fn_8007FC48 = .text:0x8007FC48; // type:function size:0x6C +fn_8007FCB4 = .text:0x8007FCB4; // type:function size:0x60 +fn_8007FD14 = .text:0x8007FD14; // type:function size:0x23C +fn_8007FF50 = .text:0x8007FF50; // type:function size:0x198 +fn_800800E8 = .text:0x800800E8; // type:function size:0x1B8 +fn_800802A0 = .text:0x800802A0; // type:function size:0x29C +fn_8008053C = .text:0x8008053C; // type:function size:0x1A8 +fn_800806E4 = .text:0x800806E4; // type:function size:0x260 +fn_80080944 = .text:0x80080944; // type:function size:0xA4 +fn_800809E8 = .text:0x800809E8; // type:function size:0x250 +fn_80080C38 = .text:0x80080C38; // type:function size:0x5C +fn_80080C94 = .text:0x80080C94; // type:function size:0x118 +fn_80080DAC = .text:0x80080DAC; // type:function size:0xBC +fn_80080E68 = .text:0x80080E68; // type:function size:0x1B0 +fn_80081018 = .text:0x80081018; // type:function size:0xA4 +fn_800810BC = .text:0x800810BC; // type:function size:0x200 +fn_800812BC = .text:0x800812BC; // type:function size:0x11C +fn_800813D8 = .text:0x800813D8; // type:function size:0x34 +fn_8008140C = .text:0x8008140C; // type:function size:0x50 +fn_8008145C = .text:0x8008145C; // type:function size:0x18 +fn_80081474 = .text:0x80081474; // type:function size:0x1C +fn_80081490 = .text:0x80081490; // type:function size:0xFC +fn_8008158C = .text:0x8008158C; // type:function size:0x754 +fn_80081CE0 = .text:0x80081CE0; // type:function size:0x314 +fn_80081FF4 = .text:0x80081FF4; // type:function size:0x164 +fn_80082158 = .text:0x80082158; // type:function size:0x120 +fn_80082278 = .text:0x80082278; // type:function size:0x10C +fn_80082384 = .text:0x80082384; // type:function size:0x38 +fn_800823BC = .text:0x800823BC; // type:function size:0xBC +fn_80082478 = .text:0x80082478; // type:function size:0x224 +fn_8008269C = .text:0x8008269C; // type:function size:0x10 +fn_800826AC = .text:0x800826AC; // type:function size:0x148 +fn_800827F4 = .text:0x800827F4; // type:function size:0x8C +fn_80082880 = .text:0x80082880; // type:function size:0xA4 +fn_80082924 = .text:0x80082924; // type:function size:0x38C +fn_80082CB0 = .text:0x80082CB0; // type:function size:0x58 +fn_80082D08 = .text:0x80082D08; // type:function size:0x118 +fn_80082E20 = .text:0x80082E20; // type:function size:0x114 +fn_80082F34 = .text:0x80082F34; // type:function size:0x160 +fn_80083094 = .text:0x80083094; // type:function size:0x68 +fn_800830FC = .text:0x800830FC; // type:function size:0xD4 +fn_800831D0 = .text:0x800831D0; // type:function size:0x2EC +fn_800834BC = .text:0x800834BC; // type:function size:0x64 +fn_80083520 = .text:0x80083520; // type:function size:0x34 +fn_80083554 = .text:0x80083554; // type:function size:0x54 +fn_800835A8 = .text:0x800835A8; // type:function size:0x34 +fn_800835DC = .text:0x800835DC; // type:function size:0x5C +fn_80083638 = .text:0x80083638; // type:function size:0x58 +fn_80083690 = .text:0x80083690; // type:function size:0x60 +fn_800836F0 = .text:0x800836F0; // type:function size:0x240 +fn_80083930 = .text:0x80083930; // type:function size:0xD4 +fn_80083A04 = .text:0x80083A04; // type:function size:0x38 +fn_80083A3C = .text:0x80083A3C; // type:function size:0x48 +fn_80083A84 = .text:0x80083A84; // type:function size:0x48 +fn_80083ACC = .text:0x80083ACC; // type:function size:0xA8 +fn_80083B74 = .text:0x80083B74; // type:function size:0x8 +fn_80083B7C = .text:0x80083B7C; // type:function size:0xCC +fn_80083C48 = .text:0x80083C48; // type:function size:0x8F4 +fn_8008453C = .text:0x8008453C; // type:function size:0x84 +fn_800845C0 = .text:0x800845C0; // type:function size:0x160 +fn_80084720 = .text:0x80084720; // type:function size:0x144 +fn_80084864 = .text:0x80084864; // type:function size:0x10C +fn_80084970 = .text:0x80084970; // type:function size:0x180 +fn_80084AF0 = .text:0x80084AF0; // type:function size:0x204 +fn_80084CF4 = .text:0x80084CF4; // type:function size:0x38 +fn_80084D2C = .text:0x80084D2C; // type:function size:0xB4 +fn_80084DE0 = .text:0x80084DE0; // type:function size:0x40 +fn_80084E20 = .text:0x80084E20; // type:function size:0x31C +fn_8008513C = .text:0x8008513C; // type:function size:0x628 +fn_80085764 = .text:0x80085764; // type:function size:0x130 +fn_80085894 = .text:0x80085894; // type:function size:0x24 +fn_800858B8 = .text:0x800858B8; // type:function size:0x1EC +fn_80085AA4 = .text:0x80085AA4; // type:function size:0x38 +fn_80085ADC = .text:0x80085ADC; // type:function size:0x84 +fn_80085B60 = .text:0x80085B60; // type:function size:0x4C +fn_80085BAC = .text:0x80085BAC; // type:function size:0x490 +fn_8008603C = .text:0x8008603C; // type:function size:0x280 +fn_800862BC = .text:0x800862BC; // type:function size:0x1C8 +fn_80086484 = .text:0x80086484; // type:function size:0x60 +fn_800864E4 = .text:0x800864E4; // type:function size:0x130 +fn_80086614 = .text:0x80086614; // type:function size:0x60 +fn_80086674 = .text:0x80086674; // type:function size:0x7E4 +fn_80086E58 = .text:0x80086E58; // type:function size:0x40 +fn_80086E98 = .text:0x80086E98; // type:function size:0x90 +fn_80086F28 = .text:0x80086F28; // type:function size:0xE0 +fn_80087008 = .text:0x80087008; // type:function size:0x84 +fn_8008708C = .text:0x8008708C; // type:function size:0x94 +fn_80087120 = .text:0x80087120; // type:function size:0x8C +fn_800871AC = .text:0x800871AC; // type:function size:0x58 +fn_80087204 = .text:0x80087204; // type:function size:0xC0 +fn_800872C4 = .text:0x800872C4; // type:function size:0x200 +fn_800874C4 = .text:0x800874C4; // type:function size:0xAC +fn_80087570 = .text:0x80087570; // type:function size:0x68 +fn_800875D8 = .text:0x800875D8; // type:function size:0xB4 +fn_8008768C = .text:0x8008768C; // type:function size:0x390 +fn_80087A1C = .text:0x80087A1C; // type:function size:0x110 +fn_80087B2C = .text:0x80087B2C; // type:function size:0x248 +fn_80087D74 = .text:0x80087D74; // type:function size:0x110 +fn_80087E84 = .text:0x80087E84; // type:function size:0x88 +fn_80087F0C = .text:0x80087F0C; // type:function size:0x4C +fn_80087F58 = .text:0x80087F58; // type:function size:0x90 +fn_80087FE8 = .text:0x80087FE8; // type:function size:0x98 +fn_80088080 = .text:0x80088080; // type:function size:0x48 +fn_800880C8 = .text:0x800880C8; // type:function size:0x1C +fn_800880E4 = .text:0x800880E4; // type:function size:0x48 +fn_8008812C = .text:0x8008812C; // type:function size:0xFC +fn_80088228 = .text:0x80088228; // type:function size:0x24 +fn_8008824C = .text:0x8008824C; // type:function size:0x134 +fn_80088380 = .text:0x80088380; // type:function size:0x138 +fn_800884B8 = .text:0x800884B8; // type:function size:0x50 +fn_80088508 = .text:0x80088508; // type:function size:0x44 +fn_8008854C = .text:0x8008854C; // type:function size:0x34 +fn_80088580 = .text:0x80088580; // type:function size:0x6C +fn_800885EC = .text:0x800885EC; // type:function size:0x158 +fn_80088744 = .text:0x80088744; // type:function size:0x94 +fn_800887D8 = .text:0x800887D8; // type:function size:0x6C +fn_80088844 = .text:0x80088844; // type:function size:0x90 +fn_800888D4 = .text:0x800888D4; // type:function size:0x20C +fn_80088AE0 = .text:0x80088AE0; // type:function size:0x98 +fn_80088B78 = .text:0x80088B78; // type:function size:0x36C +fn_80088EE4 = .text:0x80088EE4; // type:function size:0x8C +fn_80088F70 = .text:0x80088F70; // type:function size:0x210 +fn_80089180 = .text:0x80089180; // type:function size:0x40 +fn_800891C0 = .text:0x800891C0; // type:function size:0x180 +fn_80089340 = .text:0x80089340; // type:function size:0x140 +fn_80089480 = .text:0x80089480; // type:function size:0xB8 +fn_80089538 = .text:0x80089538; // type:function size:0x29C +fn_800897D4 = .text:0x800897D4; // type:function size:0x74 +fn_80089848 = .text:0x80089848; // type:function size:0x1C +fn_80089864 = .text:0x80089864; // type:function size:0x48 +fn_800898AC = .text:0x800898AC; // type:function size:0xC +fn_800898B8 = .text:0x800898B8; // type:function size:0xFC +fn_800899B4 = .text:0x800899B4; // type:function size:0x15C +fn_80089B10 = .text:0x80089B10; // type:function size:0x110 +fn_80089C20 = .text:0x80089C20; // type:function size:0x30 +fn_80089C50 = .text:0x80089C50; // type:function size:0x19C +fn_80089DEC = .text:0x80089DEC; // type:function size:0x1E4 +fn_80089FD0 = .text:0x80089FD0; // type:function size:0xD4 +fn_8008A0A4 = .text:0x8008A0A4; // type:function size:0xD8 +fn_8008A17C = .text:0x8008A17C; // type:function size:0xEC +fn_8008A268 = .text:0x8008A268; // type:function size:0xC8 +fn_8008A330 = .text:0x8008A330; // type:function size:0x80 +fn_8008A3B0 = .text:0x8008A3B0; // type:function size:0x4A8 +fn_8008A858 = .text:0x8008A858; // type:function size:0x370 +fn_8008ABC8 = .text:0x8008ABC8; // type:function size:0x174 +fn_8008AD3C = .text:0x8008AD3C; // type:function size:0x78 +fn_8008ADB4 = .text:0x8008ADB4; // type:function size:0x74 +fn_8008AE28 = .text:0x8008AE28; // type:function size:0xE8 +fn_8008AF10 = .text:0x8008AF10; // type:function size:0x650 +fn_8008B560 = .text:0x8008B560; // type:function size:0x3AC +fn_8008B90C = .text:0x8008B90C; // type:function size:0x420 +fn_8008BD2C = .text:0x8008BD2C; // type:function size:0x248 +fn_8008BF74 = .text:0x8008BF74; // type:function size:0xA8 +fn_8008C01C = .text:0x8008C01C; // type:function size:0x104 +fn_8008C120 = .text:0x8008C120; // type:function size:0x400 +fn_8008C520 = .text:0x8008C520; // type:function size:0x388 +fn_8008C8A8 = .text:0x8008C8A8; // type:function size:0x674 +fn_8008CF1C = .text:0x8008CF1C; // type:function size:0x50 +fn_8008CF6C = .text:0x8008CF6C; // type:function size:0x38 +fn_8008CFA4 = .text:0x8008CFA4; // type:function size:0x5A4 +fn_8008D548 = .text:0x8008D548; // type:function size:0x58 +fn_8008D5A0 = .text:0x8008D5A0; // type:function size:0x38 +fn_8008D5D8 = .text:0x8008D5D8; // type:function size:0xA4 +fn_8008D67C = .text:0x8008D67C; // type:function size:0x350 +fn_8008D9CC = .text:0x8008D9CC; // type:function size:0x148 +fn_8008DB14 = .text:0x8008DB14; // type:function size:0x44 +fn_8008DB58 = .text:0x8008DB58; // type:function size:0x84 +fn_8008DBDC = .text:0x8008DBDC; // type:function size:0x358 +fn_8008DF34 = .text:0x8008DF34; // type:function size:0x54 +fn_8008DF88 = .text:0x8008DF88; // type:function size:0x1F4 +fn_8008E17C = .text:0x8008E17C; // type:function size:0x12C +fn_8008E2A8 = .text:0x8008E2A8; // type:function size:0x38 +fn_8008E2E0 = .text:0x8008E2E0; // type:function size:0x120 +fn_8008E400 = .text:0x8008E400; // type:function size:0xCC +fn_8008E4CC = .text:0x8008E4CC; // type:function size:0x140 +fn_8008E60C = .text:0x8008E60C; // type:function size:0x2C +fn_8008E638 = .text:0x8008E638; // type:function size:0x2C +fn_8008E664 = .text:0x8008E664; // type:function size:0x48 +fn_8008E6AC = .text:0x8008E6AC; // type:function size:0x94 +fn_8008E740 = .text:0x8008E740; // type:function size:0x9C +fn_8008E7DC = .text:0x8008E7DC; // type:function size:0x10C +fn_8008E8E8 = .text:0x8008E8E8; // type:function size:0x130 +fn_8008EA18 = .text:0x8008EA18; // type:function size:0x74 +fn_8008EA8C = .text:0x8008EA8C; // type:function size:0x1C +fn_8008EAA8 = .text:0x8008EAA8; // type:function size:0x6C +fn_8008EB14 = .text:0x8008EB14; // type:function size:0x64 +fn_8008EB78 = .text:0x8008EB78; // type:function size:0x64 +fn_8008EBDC = .text:0x8008EBDC; // type:function size:0xC +fn_8008EBE8 = .text:0x8008EBE8; // type:function size:0xC +fn_8008EBF4 = .text:0x8008EBF4; // type:function size:0x180 +fn_8008ED74 = .text:0x8008ED74; // type:function size:0x1BC +fn_8008EF30 = .text:0x8008EF30; // type:function size:0x220 +fn_8008F150 = .text:0x8008F150; // type:function size:0x374 +fn_8008F4C4 = .text:0x8008F4C4; // type:function size:0x204 +fn_8008F6C8 = .text:0x8008F6C8; // type:function size:0xA4 +fn_8008F76C = .text:0x8008F76C; // type:function size:0xA4 +fn_8008F810 = .text:0x8008F810; // type:function size:0xA4 +fn_8008F8B4 = .text:0x8008F8B4; // type:function size:0xA4 +fn_8008F958 = .text:0x8008F958; // type:function size:0x584 +fn_8008FEDC = .text:0x8008FEDC; // type:function size:0xD34 +fn_80090C10 = .text:0x80090C10; // type:function size:0xEBC +fn_80091ACC = .text:0x80091ACC; // type:function size:0x4FC +fn_80091FC8 = .text:0x80091FC8; // type:function size:0xC8 +fn_80092090 = .text:0x80092090; // type:function size:0xE3C +fn_80092ECC = .text:0x80092ECC; // type:function size:0x3D4 +fn_800932A0 = .text:0x800932A0; // type:function size:0x1370 +fn_80094610 = .text:0x80094610; // type:function size:0x488 +fn_80094A98 = .text:0x80094A98; // type:function size:0x388 +fn_80094E20 = .text:0x80094E20; // type:function size:0xB0 +fn_80094ED0 = .text:0x80094ED0; // type:function size:0x7A4 +fn_80095674 = .text:0x80095674; // type:function size:0x9D8 +fn_8009604C = .text:0x8009604C; // type:function size:0x628 +fn_80096674 = .text:0x80096674; // type:function size:0x3C +fn_800966B0 = .text:0x800966B0; // type:function size:0x13C +fn_800967EC = .text:0x800967EC; // type:function size:0xDC +fn_800968C8 = .text:0x800968C8; // type:function size:0x584 +fn_80096E4C = .text:0x80096E4C; // type:function size:0x1C +fn_80096E68 = .text:0x80096E68; // type:function size:0x2C +fn_80096E94 = .text:0x80096E94; // type:function size:0x2C +fn_80096EC0 = .text:0x80096EC0; // type:function size:0x2C +fn_80096EEC = .text:0x80096EEC; // type:function size:0x2C +fn_80096F18 = .text:0x80096F18; // type:function size:0x284 +fn_8009719C = .text:0x8009719C; // type:function size:0x144 +fn_800972E0 = .text:0x800972E0; // type:function size:0x28C +fn_8009756C = .text:0x8009756C; // type:function size:0x208 +fn_80097774 = .text:0x80097774; // type:function size:0x1DC +fn_80097950 = .text:0x80097950; // type:function size:0x30 +fn_80097980 = .text:0x80097980; // type:function size:0x148 +fn_80097AC8 = .text:0x80097AC8; // type:function size:0x1B4 +fn_80097C7C = .text:0x80097C7C; // type:function size:0x250 +fn_80097ECC = .text:0x80097ECC; // type:function size:0x220 +fn_800980EC = .text:0x800980EC; // type:function size:0x2B0 +fn_8009839C = .text:0x8009839C; // type:function size:0x160 +fn_800984FC = .text:0x800984FC; // type:function size:0xB8 +fn_800985B4 = .text:0x800985B4; // type:function size:0x1C +fn_800985D0 = .text:0x800985D0; // type:function size:0x148 +fn_80098718 = .text:0x80098718; // type:function size:0x210 +fn_80098928 = .text:0x80098928; // type:function size:0x228 +fn_80098B50 = .text:0x80098B50; // type:function size:0x230 +fn_80098D80 = .text:0x80098D80; // type:function size:0x270 +fn_80098FF0 = .text:0x80098FF0; // type:function size:0x58 +fn_80099048 = .text:0x80099048; // type:function size:0x44 +fn_8009908C = .text:0x8009908C; // type:function size:0x150 +fn_800991DC = .text:0x800991DC; // type:function size:0x128 +fn_80099304 = .text:0x80099304; // type:function size:0x34 +fn_80099338 = .text:0x80099338; // type:function size:0x5C +fn_80099394 = .text:0x80099394; // type:function size:0xD4 +fn_80099468 = .text:0x80099468; // type:function size:0x1C +fn_80099484 = .text:0x80099484; // type:function size:0x18C +fn_80099610 = .text:0x80099610; // type:function size:0x1E8 +fn_800997F8 = .text:0x800997F8; // type:function size:0x38 +fn_80099830 = .text:0x80099830; // type:function size:0x24 +fn_80099854 = .text:0x80099854; // type:function size:0xEC +fn_80099940 = .text:0x80099940; // type:function size:0x1C8 +fn_80099B08 = .text:0x80099B08; // type:function size:0x108 +fn_80099C10 = .text:0x80099C10; // type:function size:0x160 +fn_80099D70 = .text:0x80099D70; // type:function size:0x1AC +fn_80099F1C = .text:0x80099F1C; // type:function size:0xB8 +fn_80099FD4 = .text:0x80099FD4; // type:function size:0x90 +fn_8009A064 = .text:0x8009A064; // type:function size:0x160 +fn_8009A1C4 = .text:0x8009A1C4; // type:function size:0xE4 +fn_8009A2A8 = .text:0x8009A2A8; // type:function size:0xCC +fn_8009A374 = .text:0x8009A374; // type:function size:0x40 +fn_8009A3B4 = .text:0x8009A3B4; // type:function size:0x188 +fn_8009A53C = .text:0x8009A53C; // type:function size:0x2C4 +fn_8009A800 = .text:0x8009A800; // type:function size:0x2B8 +fn_8009AAB8 = .text:0x8009AAB8; // type:function size:0x24 +fn_8009AADC = .text:0x8009AADC; // type:function size:0xC +fn_8009AAE8 = .text:0x8009AAE8; // type:function size:0x10 +fn_8009AAF8 = .text:0x8009AAF8; // type:function size:0x14C +fn_8009AC44 = .text:0x8009AC44; // type:function size:0x120 +fn_8009AD64 = .text:0x8009AD64; // type:function size:0xB4 +fn_8009AE18 = .text:0x8009AE18; // type:function size:0x88 +fn_8009AEA0 = .text:0x8009AEA0; // type:function size:0x80 +fn_8009AF20 = .text:0x8009AF20; // type:function size:0xD8 +fn_8009AFF8 = .text:0x8009AFF8; // type:function size:0x6C +fn_8009B064 = .text:0x8009B064; // type:function size:0x60 +fn_8009B0C4 = .text:0x8009B0C4; // type:function size:0x124 +fn_8009B1E8 = .text:0x8009B1E8; // type:function size:0x2C +fn_8009B214 = .text:0x8009B214; // type:function size:0x708 +fn_8009B91C = .text:0x8009B91C; // type:function size:0x1D4 +fn_8009BAF0 = .text:0x8009BAF0; // type:function size:0x1FC +fn_8009BCEC = .text:0x8009BCEC; // type:function size:0x24 +fn_8009BD10 = .text:0x8009BD10; // type:function size:0x2D0 +fn_8009BFE0 = .text:0x8009BFE0; // type:function size:0x1E8 +fn_8009C1C8 = .text:0x8009C1C8; // type:function size:0x1A0 +fn_8009C368 = .text:0x8009C368; // type:function size:0x64 +fn_8009C3CC = .text:0x8009C3CC; // type:function size:0x88 +fn_8009C454 = .text:0x8009C454; // type:function size:0x124 +fn_8009C578 = .text:0x8009C578; // type:function size:0x8C +fn_8009C604 = .text:0x8009C604; // type:function size:0x260 +fn_8009C864 = .text:0x8009C864; // type:function size:0x128 +fn_8009C98C = .text:0x8009C98C; // type:function size:0x12C +fn_8009CAB8 = .text:0x8009CAB8; // type:function size:0x58 +fn_8009CB10 = .text:0x8009CB10; // type:function size:0x64 +fn_8009CB74 = .text:0x8009CB74; // type:function size:0x24 +fn_8009CB98 = .text:0x8009CB98; // type:function size:0x10 +fn_8009CBA8 = .text:0x8009CBA8; // type:function size:0x34 +fn_8009CBDC = .text:0x8009CBDC; // type:function size:0x15C +fn_8009CD38 = .text:0x8009CD38; // type:function size:0x124 +fn_8009CE5C = .text:0x8009CE5C; // type:function size:0x74 +fn_8009CED0 = .text:0x8009CED0; // type:function size:0xC +fn_8009CEDC = .text:0x8009CEDC; // type:function size:0x340 +fn_8009D21C = .text:0x8009D21C; // type:function size:0xF8 +fn_8009D314 = .text:0x8009D314; // type:function size:0x160 +fn_8009D474 = .text:0x8009D474; // type:function size:0x5C +fn_8009D4D0 = .text:0x8009D4D0; // type:function size:0x198 +fn_8009D668 = .text:0x8009D668; // type:function size:0x18C +fn_8009D7F4 = .text:0x8009D7F4; // type:function size:0x20C +fn_8009DA00 = .text:0x8009DA00; // type:function size:0x78 +fn_8009DA78 = .text:0x8009DA78; // type:function size:0x78 +fn_8009DAF0 = .text:0x8009DAF0; // type:function size:0x68 +fn_8009DB58 = .text:0x8009DB58; // type:function size:0x68 +fn_8009DBC0 = .text:0x8009DBC0; // type:function size:0x11C +fn_8009DCDC = .text:0x8009DCDC; // type:function size:0x2C +fn_8009DD08 = .text:0x8009DD08; // type:function size:0x2A8 +fn_8009DFB0 = .text:0x8009DFB0; // type:function size:0x1D4 +fn_8009E184 = .text:0x8009E184; // type:function size:0xE8 +fn_8009E26C = .text:0x8009E26C; // type:function size:0x280 +fn_8009E4EC = .text:0x8009E4EC; // type:function size:0xC0 +fn_8009E5AC = .text:0x8009E5AC; // type:function size:0xA8 +fn_8009E654 = .text:0x8009E654; // type:function size:0x94 +fn_8009E6E8 = .text:0x8009E6E8; // type:function size:0x10 +fn_8009E6F8 = .text:0x8009E6F8; // type:function size:0xBC +fn_8009E7B4 = .text:0x8009E7B4; // type:function size:0x1D4 +fn_8009E988 = .text:0x8009E988; // type:function size:0xAC +fn_8009EA34 = .text:0x8009EA34; // type:function size:0x28 +fn_8009EA5C = .text:0x8009EA5C; // type:function size:0x4C +fn_8009EAA8 = .text:0x8009EAA8; // type:function size:0x300 +fn_8009EDA8 = .text:0x8009EDA8; // type:function size:0x4A0 +fn_8009F248 = .text:0x8009F248; // type:function size:0x9C +fn_8009F2E4 = .text:0x8009F2E4; // type:function size:0x1DC +fn_8009F4C0 = .text:0x8009F4C0; // type:function size:0x358 +fn_8009F818 = .text:0x8009F818; // type:function size:0x24 +fn_8009F83C = .text:0x8009F83C; // type:function size:0x2C +fn_8009F868 = .text:0x8009F868; // type:function size:0x214 +fn_8009FA7C = .text:0x8009FA7C; // type:function size:0x15C +fn_8009FBD8 = .text:0x8009FBD8; // type:function size:0x110 +fn_8009FCE8 = .text:0x8009FCE8; // type:function size:0x68 +fn_8009FD50 = .text:0x8009FD50; // type:function size:0x1E0 +fn_8009FF30 = .text:0x8009FF30; // type:function size:0x10C +fn_800A003C = .text:0x800A003C; // type:function size:0x190 +fn_800A01CC = .text:0x800A01CC; // type:function size:0x328 +fn_800A04F4 = .text:0x800A04F4; // type:function size:0x170 +fn_800A0664 = .text:0x800A0664; // type:function size:0x24 +fn_800A0688 = .text:0x800A0688; // type:function size:0x128 +fn_800A07B0 = .text:0x800A07B0; // type:function size:0x54 +fn_800A0804 = .text:0x800A0804; // type:function size:0x104 +fn_800A0908 = .text:0x800A0908; // type:function size:0x218 +fn_800A0B20 = .text:0x800A0B20; // type:function size:0xF4 +fn_800A0C14 = .text:0x800A0C14; // type:function size:0x178 +fn_800A0D8C = .text:0x800A0D8C; // type:function size:0x1B0 +fn_800A0F3C = .text:0x800A0F3C; // type:function size:0xDC +fn_800A1018 = .text:0x800A1018; // type:function size:0x9C +fn_800A10B4 = .text:0x800A10B4; // type:function size:0x68 +fn_800A111C = .text:0x800A111C; // type:function size:0x168 +fn_800A1284 = .text:0x800A1284; // type:function size:0x184 +fn_800A1408 = .text:0x800A1408; // type:function size:0x1C +fn_800A1424 = .text:0x800A1424; // type:function size:0x30 +fn_800A1454 = .text:0x800A1454; // type:function size:0x20 +fn_800A1474 = .text:0x800A1474; // type:function size:0x1B0 +fn_800A1624 = .text:0x800A1624; // type:function size:0x60 +fn_800A1684 = .text:0x800A1684; // type:function size:0x1C +fn_800A16A0 = .text:0x800A16A0; // type:function size:0x6FC +fn_800A1D9C = .text:0x800A1D9C; // type:function size:0x3B0 +fn_800A214C = .text:0x800A214C; // type:function size:0x3A8 +fn_800A24F4 = .text:0x800A24F4; // type:function size:0x388 +fn_800A287C = .text:0x800A287C; // type:function size:0x3A4 +fn_800A2C20 = .text:0x800A2C20; // type:function size:0x194 +fn_800A2DB4 = .text:0x800A2DB4; // type:function size:0x198 +fn_800A2F4C = .text:0x800A2F4C; // type:function size:0x174 +fn_800A30C0 = .text:0x800A30C0; // type:function size:0x200 +fn_800A32C0 = .text:0x800A32C0; // type:function size:0x20C +fn_800A34CC = .text:0x800A34CC; // type:function size:0x1C8 +fn_800A3694 = .text:0x800A3694; // type:function size:0x204 +fn_800A3898 = .text:0x800A3898; // type:function size:0xA8 +fn_800A3940 = .text:0x800A3940; // type:function size:0x430 +fn_800A3D70 = .text:0x800A3D70; // type:function size:0x8FC +fn_800A466C = .text:0x800A466C; // type:function size:0x74 +fn_800A46E0 = .text:0x800A46E0; // type:function size:0xC8 +fn_800A47A8 = .text:0x800A47A8; // type:function size:0xD0 +fn_800A4878 = .text:0x800A4878; // type:function size:0x2E4 +fn_800A4B5C = .text:0x800A4B5C; // type:function size:0x8 +fn_800A4B64 = .text:0x800A4B64; // type:function size:0x8 +fn_800A4B6C = .text:0x800A4B6C; // type:function size:0xB4 +fn_800A4C20 = .text:0x800A4C20; // type:function size:0x50 +fn_800A4C70 = .text:0x800A4C70; // type:function size:0x94 +fn_800A4D04 = .text:0x800A4D04; // type:function size:0x538 +fn_800A523C = .text:0x800A523C; // type:function size:0xF0 +fn_800A532C = .text:0x800A532C; // type:function size:0xFC +fn_800A5428 = .text:0x800A5428; // type:function size:0x3A0 +fn_800A57C8 = .text:0x800A57C8; // type:function size:0x124 +fn_800A58EC = .text:0x800A58EC; // type:function size:0xB0 +fn_800A599C = .text:0x800A599C; // type:function size:0xD4 +fn_800A5A70 = .text:0x800A5A70; // type:function size:0x68 +fn_800A5AD8 = .text:0x800A5AD8; // type:function size:0x2AC +fn_800A5D84 = .text:0x800A5D84; // type:function size:0x2AC +fn_800A6030 = .text:0x800A6030; // type:function size:0x188 +fn_800A61B8 = .text:0x800A61B8; // type:function size:0x16C +fn_800A6324 = .text:0x800A6324; // type:function size:0x164 +fn_800A6488 = .text:0x800A6488; // type:function size:0x70 +fn_800A64F8 = .text:0x800A64F8; // type:function size:0x60 +fn_800A6558 = .text:0x800A6558; // type:function size:0x1A8 +fn_800A6700 = .text:0x800A6700; // type:function size:0x3D4 +fn_800A6AD4 = .text:0x800A6AD4; // type:function size:0x64 +fn_800A6B38 = .text:0x800A6B38; // type:function size:0x84 +fn_800A6BBC = .text:0x800A6BBC; // type:function size:0x400 +fn_800A6FBC = .text:0x800A6FBC; // type:function size:0x2FC +fn_800A72B8 = .text:0x800A72B8; // type:function size:0x17C +fn_800A7434 = .text:0x800A7434; // type:function size:0x2D8 +fn_800A770C = .text:0x800A770C; // type:function size:0x188 +fn_800A7894 = .text:0x800A7894; // type:function size:0x1C8 +fn_800A7A5C = .text:0x800A7A5C; // type:function size:0xEC +fn_800A7B48 = .text:0x800A7B48; // type:function size:0x1A8 +fn_800A7CF0 = .text:0x800A7CF0; // type:function size:0x454 +fn_800A8144 = .text:0x800A8144; // type:function size:0xD8 +fn_800A821C = .text:0x800A821C; // type:function size:0x250 +fn_800A846C = .text:0x800A846C; // type:function size:0xC8 +fn_800A8534 = .text:0x800A8534; // type:function size:0x3C +fn_800A8570 = .text:0x800A8570; // type:function size:0x6D4 +fn_800A8C44 = .text:0x800A8C44; // type:function size:0x318 +fn_800A8F5C = .text:0x800A8F5C; // type:function size:0xA4 +fn_800A9000 = .text:0x800A9000; // type:function size:0xDC +fn_800A90DC = .text:0x800A90DC; // type:function size:0x21C +fn_800A92F8 = .text:0x800A92F8; // type:function size:0x84 +fn_800A937C = .text:0x800A937C; // type:function size:0x30 +fn_800A93AC = .text:0x800A93AC; // type:function size:0x1D4 +fn_800A9580 = .text:0x800A9580; // type:function size:0x184 +fn_800A9704 = .text:0x800A9704; // type:function size:0x48 +fn_800A974C = .text:0x800A974C; // type:function size:0x10C +fn_800A9858 = .text:0x800A9858; // type:function size:0xA4 +fn_800A98FC = .text:0x800A98FC; // type:function size:0xCC0 +fn_800AA5BC = .text:0x800AA5BC; // type:function size:0xA4 +fn_800AA660 = .text:0x800AA660; // type:function size:0x1FC +fn_800AA85C = .text:0x800AA85C; // type:function size:0xD4 +fn_800AA930 = .text:0x800AA930; // type:function size:0x170 +fn_800AAAA0 = .text:0x800AAAA0; // type:function size:0x88 +fn_800AAB28 = .text:0x800AAB28; // type:function size:0x20 +fn_800AAB48 = .text:0x800AAB48; // type:function size:0x24 +fn_800AAB6C = .text:0x800AAB6C; // type:function size:0x2D0 +fn_800AAE3C = .text:0x800AAE3C; // type:function size:0x1D8 +fn_800AB014 = .text:0x800AB014; // type:function size:0x950 +fn_800AB964 = .text:0x800AB964; // type:function size:0x4C +fn_800AB9B0 = .text:0x800AB9B0; // type:function size:0x488 +fn_800ABE38 = .text:0x800ABE38; // type:function size:0x2A4 +fn_800AC0DC = .text:0x800AC0DC; // type:function size:0x1C0 +fn_800AC29C = .text:0x800AC29C; // type:function size:0x7C +fn_800AC318 = .text:0x800AC318; // type:function size:0x78 +fn_800AC390 = .text:0x800AC390; // type:function size:0xB0 +fn_800AC440 = .text:0x800AC440; // type:function size:0x1CC +fn_800AC60C = .text:0x800AC60C; // type:function size:0x228 +fn_800AC834 = .text:0x800AC834; // type:function size:0x1C +fn_800AC850 = .text:0x800AC850; // type:function size:0xC0 +fn_800AC910 = .text:0x800AC910; // type:function size:0x180 +fn_800ACA90 = .text:0x800ACA90; // type:function size:0x2B0 +fn_800ACD40 = .text:0x800ACD40; // type:function size:0x44 +fn_800ACD84 = .text:0x800ACD84; // type:function size:0x38 +fn_800ACDBC = .text:0x800ACDBC; // type:function size:0x38 +fn_800ACDF4 = .text:0x800ACDF4; // type:function size:0x44 +fn_800ACE38 = .text:0x800ACE38; // type:function size:0x2B4 +fn_800AD0EC = .text:0x800AD0EC; // type:function size:0x340 +fn_800AD42C = .text:0x800AD42C; // type:function size:0x58 +fn_800AD484 = .text:0x800AD484; // type:function size:0x58 +fn_800AD4DC = .text:0x800AD4DC; // type:function size:0x38 +fn_800AD514 = .text:0x800AD514; // type:function size:0x260 +fn_800AD774 = .text:0x800AD774; // type:function size:0x88 +fn_800AD7FC = .text:0x800AD7FC; // type:function size:0x3C0 +fn_800ADBBC = .text:0x800ADBBC; // type:function size:0x108 +fn_800ADCC4 = .text:0x800ADCC4; // type:function size:0xABC +fn_800AE780 = .text:0x800AE780; // type:function size:0x168 +fn_800AE8E8 = .text:0x800AE8E8; // type:function size:0x58 +fn_800AE940 = .text:0x800AE940; // type:function size:0x4F4 +fn_800AEE34 = .text:0x800AEE34; // type:function size:0x310 +fn_800AF144 = .text:0x800AF144; // type:function size:0x264 +fn_800AF3A8 = .text:0x800AF3A8; // type:function size:0x110 +fn_800AF4B8 = .text:0x800AF4B8; // type:function size:0x48 +fn_800AF500 = .text:0x800AF500; // type:function size:0xD4 +fn_800AF5D4 = .text:0x800AF5D4; // type:function size:0x1CC +fn_800AF7A0 = .text:0x800AF7A0; // type:function size:0x178 +fn_800AF918 = .text:0x800AF918; // type:function size:0x238 +fn_800AFB50 = .text:0x800AFB50; // type:function size:0x3B0 +fn_800AFF00 = .text:0x800AFF00; // type:function size:0x154 +fn_800B0054 = .text:0x800B0054; // type:function size:0x390 +fn_800B03E4 = .text:0x800B03E4; // type:function size:0x3E4 +fn_800B07C8 = .text:0x800B07C8; // type:function size:0x240 +fn_800B0A08 = .text:0x800B0A08; // type:function size:0x210 +fn_800B0C18 = .text:0x800B0C18; // type:function size:0x70 +fn_800B0C88 = .text:0x800B0C88; // type:function size:0x1B8 +fn_800B0E40 = .text:0x800B0E40; // type:function size:0x12C +fn_800B0F6C = .text:0x800B0F6C; // type:function size:0x1A4 +fn_800B1110 = .text:0x800B1110; // type:function size:0x10C +fn_800B121C = .text:0x800B121C; // type:function size:0xDC +fn_800B12F8 = .text:0x800B12F8; // type:function size:0x34 +fn_800B132C = .text:0x800B132C; // type:function size:0x12C +fn_800B1458 = .text:0x800B1458; // type:function size:0x4C +fn_800B14A4 = .text:0x800B14A4; // type:function size:0xC0 +fn_800B1564 = .text:0x800B1564; // type:function size:0x60 +fn_800B15C4 = .text:0x800B15C4; // type:function size:0x180 +fn_800B1744 = .text:0x800B1744; // type:function size:0xE4 +fn_800B1828 = .text:0x800B1828; // type:function size:0xB4 +fn_800B18DC = .text:0x800B18DC; // type:function size:0xD0 +fn_800B19AC = .text:0x800B19AC; // type:function size:0x30 +fn_800B19DC = .text:0x800B19DC; // type:function size:0xAC +fn_800B1A88 = .text:0x800B1A88; // type:function size:0xF0 +fn_800B1B78 = .text:0x800B1B78; // type:function size:0x74C +fn_800B22C4 = .text:0x800B22C4; // type:function size:0x3E4 +fn_800B26A8 = .text:0x800B26A8; // type:function size:0x65C +fn_800B2D04 = .text:0x800B2D04; // type:function size:0x488 +fn_800B318C = .text:0x800B318C; // type:function size:0x45C +fn_800B35E8 = .text:0x800B35E8; // type:function size:0x4E0 +fn_800B3AC8 = .text:0x800B3AC8; // type:function size:0x34 +fn_800B3AFC = .text:0x800B3AFC; // type:function size:0x80 +fn_800B3B7C = .text:0x800B3B7C; // type:function size:0x4C +fn_800B3BC8 = .text:0x800B3BC8; // type:function size:0x8 +fn_800B3BD0 = .text:0x800B3BD0; // type:function size:0x44 +fn_800B3C14 = .text:0x800B3C14; // type:function size:0x78 +fn_800B3C8C = .text:0x800B3C8C; // type:function size:0x10C +fn_800B3D98 = .text:0x800B3D98; // type:function size:0xBC +fn_800B3E54 = .text:0x800B3E54; // type:function size:0x10 +fn_800B3E64 = .text:0x800B3E64; // type:function size:0x40 +fn_800B3EA4 = .text:0x800B3EA4; // type:function size:0x8 +fn_800B3EAC = .text:0x800B3EAC; // type:function size:0x8 +fn_800B3EB4 = .text:0x800B3EB4; // type:function size:0x30 +PPCMfmsr = .text:0x800B3EE4; // type:function size:0x8 scope:global +PPCMtmsr = .text:0x800B3EEC; // type:function size:0x8 scope:global +PPCMfhid0 = .text:0x800B3EF4; // type:function size:0x8 scope:global +fn_800B3EFC = .text:0x800B3EFC; // type:function size:0x8 +PPCMfl2cr = .text:0x800B3F04; // type:function size:0x8 scope:global +PPCMtl2cr = .text:0x800B3F0C; // type:function size:0x8 scope:global +PPCMtdec = .text:0x800B3F14; // type:function size:0x8 scope:weak +fn_800B3F1C = .text:0x800B3F1C; // type:function size:0x8 +PPCHalt = .text:0x800B3F24; // type:function size:0x14 scope:weak +PPCMfhid2 = .text:0x800B3F38; // type:function size:0x8 scope:global +PPCMthid2 = .text:0x800B3F40; // type:function size:0x8 scope:global +fn_800B3F48 = .text:0x800B3F48; // type:function size:0xC +PPCMtwpar = .text:0x800B3F54; // type:function size:0x8 scope:global +PPCDisableSpeculation = .text:0x800B3F5C; // type:function size:0x28 scope:global +PPCSetFpNonIEEEMode = .text:0x800B3F84; // type:function size:0x8 scope:global +OSGetConsoleType = .text:0x800B3F8C; // type:function size:0x28 scope:global +ClearArena = .text:0x800B3FB4; // type:function size:0x128 scope:local +InquiryCallback = .text:0x800B40DC; // type:function size:0x3C scope:local +OSInit = .text:0x800B4118; // type:function size:0x3B8 scope:global +OSExceptionInit = .text:0x800B44D0; // type:function size:0x280 scope:local +__OSDBINTSTART = .text:0x800B4750; // type:label scope:global +__OSDBIntegrator = .text:0x800B4750; // type:function size:0x24 scope:local +__OSDBINTEND = .text:0x800B4774; // type:label scope:global +fn_800B4774 = .text:0x800B4774; // type:function size:0x4 +__OSDBJUMPEND = .text:0x800B4778; // type:label scope:global +__OSSetExceptionHandler = .text:0x800B4778; // type:function size:0x1C scope:global +__OSGetExceptionHandler = .text:0x800B4794; // type:function size:0x14 scope:global +__OSEVStart = .text:0x800B47A8; // type:label scope:global +OSExceptionVector = .text:0x800B47A8; // type:function size:0x9C scope:local +__DBVECTOR = .text:0x800B4800; // type:label scope:global data:4byte +__OSEVSetNumber = .text:0x800B4810; // type:label scope:global data:4byte +__OSEVEnd = .text:0x800B4840; // type:label scope:global +OSDefaultExceptionHandler = .text:0x800B4844; // type:function size:0x58 scope:global +__OSPSInit = .text:0x800B489C; // type:function size:0x38 scope:global +fn_800B48D4 = .text:0x800B48D4; // type:function size:0x14 +OSInitAlarm = .text:0x800B48E8; // type:function size:0x4C scope:global +OSCreateAlarm = .text:0x800B4934; // type:function size:0xC scope:global +InsertAlarm = .text:0x800B4940; // type:function size:0x250 scope:local +OSSetAlarm = .text:0x800B4B90; // type:function size:0x68 scope:global +fn_800B4BF8 = .text:0x800B4BF8; // type:function size:0x11C +DecrementerExceptionCallback = .text:0x800B4D14; // type:function size:0x230 scope:local +DecrementerExceptionHandler = .text:0x800B4F44; // type:function size:0x50 scope:local +fn_800B4F94 = .text:0x800B4F94; // type:function size:0xAC +fn_800B5040 = .text:0x800B5040; // type:function size:0xFC +fn_800B513C = .text:0x800B513C; // type:function size:0x284 +fn_800B53C0 = .text:0x800B53C0; // type:function size:0x7C +fn_800B543C = .text:0x800B543C; // type:function size:0x10 +fn_800B544C = .text:0x800B544C; // type:function size:0x70 +fn_800B54BC = .text:0x800B54BC; // type:function size:0x6C +fn_800B5528 = .text:0x800B5528; // type:function size:0x360 +fn_800B5888 = .text:0x800B5888; // type:function size:0x104 +OSGetArenaHi = .text:0x800B598C; // type:function size:0x8 scope:global +OSGetArenaLo = .text:0x800B5994; // type:function size:0x8 scope:global +OSSetArenaHi = .text:0x800B599C; // type:function size:0x8 scope:global +OSSetArenaLo = .text:0x800B59A4; // type:function size:0x8 scope:global +__OSInitAudioSystem = .text:0x800B59AC; // type:function size:0x1BC scope:global +__OSStopAudioSystem = .text:0x800B5B68; // type:function size:0xD8 scope:global +DCEnable = .text:0x800B5C40; // type:function size:0x14 scope:global +DCInvalidateRange = .text:0x800B5C54; // type:function size:0x30 scope:global +DCFlushRange = .text:0x800B5C84; // type:function size:0x34 scope:global +fn_800B5CB8 = .text:0x800B5CB8; // type:function size:0x34 +DCFlushRangeNoSync = .text:0x800B5CEC; // type:function size:0x30 scope:global +fn_800B5D1C = .text:0x800B5D1C; // type:function size:0x30 +fn_800B5D4C = .text:0x800B5D4C; // type:function size:0x30 +ICInvalidateRange = .text:0x800B5D7C; // type:function size:0x38 scope:global +ICFlashInvalidate = .text:0x800B5DB4; // type:function size:0x10 scope:global +ICEnable = .text:0x800B5DC4; // type:function size:0x14 scope:global +fn_800B5DD8 = .text:0x800B5DD8; // type:function size:0xCC +fn_800B5EA4 = .text:0x800B5EA4; // type:function size:0x38 +LCDisable = .text:0x800B5EDC; // type:function size:0x28 scope:global +fn_800B5F04 = .text:0x800B5F04; // type:function size:0x24 +fn_800B5F28 = .text:0x800B5F28; // type:function size:0xAC +fn_800B5FD4 = .text:0x800B5FD4; // type:function size:0x18 +L2GlobalInvalidate = .text:0x800B5FEC; // type:function size:0x98 scope:global +DMAErrorHandler = .text:0x800B6084; // type:function size:0x160 scope:global +__OSCacheInit = .text:0x800B61E4; // type:function size:0xF4 scope:global +__OSLoadFPUContext = .text:0x800B62D8; // type:function size:0x124 scope:local +__OSSaveFPUContext = .text:0x800B63FC; // type:function size:0x128 scope:local +OSSetCurrentContext = .text:0x800B6524; // type:function size:0x5C scope:global +fn_800B6580 = .text:0x800B6580; // type:function size:0xC +fn_800B658C = .text:0x800B658C; // type:function size:0x80 +OSLoadContext = .text:0x800B660C; // type:function size:0xD8 scope:global +OSClearContext = .text:0x800B66E4; // type:function size:0x24 scope:global +fn_800B6708 = .text:0x800B6708; // type:function size:0xBC +OSDumpContext = .text:0x800B67C4; // type:function size:0x2A8 scope:global +OSSwitchFPUContext = .text:0x800B6A6C; // type:function size:0x84 scope:local +__OSContextInit = .text:0x800B6AF0; // type:function size:0x48 scope:global +OSReport = .text:0x800B6B38; // type:function size:0x80 scope:global +OSSetErrorHandler = .text:0x800B6BB8; // type:function size:0x1C scope:global +__OSUnhandledException = .text:0x800B6BD4; // type:function size:0x200 scope:global +fn_800B6DD4 = .text:0x800B6DD4; // type:function size:0x58 +OSDisableInterrupts = .text:0x800B6E2C; // type:function size:0x14 scope:global +OSEnableInterrupts = .text:0x800B6E40; // type:function size:0x14 scope:global +OSRestoreInterrupts = .text:0x800B6E54; // type:function size:0x24 scope:global +__OSSetInterruptHandler = .text:0x800B6E78; // type:function size:0x1C scope:global +fn_800B6E94 = .text:0x800B6E94; // type:function size:0x14 +__OSInterruptInit = .text:0x800B6EA8; // type:function size:0x74 scope:global +fn_800B6F1C = .text:0x800B6F1C; // type:function size:0x2D8 +__OSMaskInterrupts = .text:0x800B71F4; // type:function size:0x88 scope:global +__OSUnmaskInterrupts = .text:0x800B727C; // type:function size:0x88 scope:global +fn_800B7304 = .text:0x800B7304; // type:function size:0x344 +ExternalInterruptHandler = .text:0x800B7648; // type:function size:0x50 scope:local +fn_800B7698 = .text:0x800B7698; // type:function size:0x4 +fn_800B769C = .text:0x800B769C; // type:function size:0x4 +fn_800B76A0 = .text:0x800B76A0; // type:function size:0x274 +fn_800B7914 = .text:0x800B7914; // type:function size:0x250 +fn_800B7B64 = .text:0x800B7B64; // type:function size:0x20C +fn_800B7D70 = .text:0x800B7D70; // type:function size:0x94 +__OSModuleInit = .text:0x800B7E04; // type:function size:0x18 scope:global +fn_800B7E1C = .text:0x800B7E1C; // type:function size:0x60 +fn_800B7E7C = .text:0x800B7E7C; // type:function size:0xC +fn_800B7E88 = .text:0x800B7E88; // type:function size:0xC +fn_800B7E94 = .text:0x800B7E94; // type:function size:0x3C +MEMIntrruptHandler = .text:0x800B7ED0; // type:function size:0x6C scope:local +Config24MB = .text:0x800B7F3C; // type:function size:0x80 scope:local +Config48MB = .text:0x800B7FBC; // type:function size:0x80 scope:local +RealMode = .text:0x800B803C; // type:function size:0x18 scope:local +__OSInitMemoryProtection = .text:0x800B8054; // type:function size:0x120 scope:global +fn_800B8174 = .text:0x800B8174; // type:function size:0x70 +fn_800B81E4 = .text:0x800B81E4; // type:function size:0x2C +fn_800B8210 = .text:0x800B8210; // type:function size:0x14 +fn_800B8224 = .text:0x800B8224; // type:function size:0xC +__OSReboot = .text:0x800B8230; // type:function size:0x1C0 scope:global +OSRegisterResetFunction = .text:0x800B83F0; // type:function size:0x84 scope:global +Reset = .text:0x800B8474; // type:function size:0x70 scope:local +fn_800B84E4 = .text:0x800B84E4; // type:function size:0x48 +OSResetSystem = .text:0x800B852C; // type:function size:0x278 scope:global +OSGetResetCode = .text:0x800B87A4; // type:function size:0x30 scope:global +__OSResetSWInterruptHandler = .text:0x800B87D4; // type:function size:0xF4 scope:global +fn_800B88C8 = .text:0x800B88C8; // type:function size:0x298 +fn_800B8B60 = .text:0x800B8B60; // type:function size:0x60 +fn_800B8BC0 = .text:0x800B8BC0; // type:function size:0x118 +__OSInitSram = .text:0x800B8CD8; // type:function size:0x134 scope:global +__OSLockSram = .text:0x800B8E0C; // type:function size:0x5C scope:global +__OSLockSramEx = .text:0x800B8E68; // type:function size:0x5C scope:global +fn_800B8EC4 = .text:0x800B8EC4; // type:function size:0x308 +__OSUnlockSram = .text:0x800B91CC; // type:function size:0x24 scope:global +__OSUnlockSramEx = .text:0x800B91F0; // type:function size:0x24 scope:global +__OSSyncSram = .text:0x800B9214; // type:function size:0x10 scope:global +fn_800B9224 = .text:0x800B9224; // type:function size:0x80 +fn_800B92A4 = .text:0x800B92A4; // type:function size:0xA4 +fn_800B9348 = .text:0x800B9348; // type:function size:0x70 +fn_800B93B8 = .text:0x800B93B8; // type:function size:0xA4 +fn_800B945C = .text:0x800B945C; // type:function size:0x84 +fn_800B94E0 = .text:0x800B94E0; // type:function size:0xAC +fn_800B958C = .text:0x800B958C; // type:function size:0x2C +fn_800B95B8 = .text:0x800B95B8; // type:function size:0x3C +fn_800B95F4 = .text:0x800B95F4; // type:function size:0xCC +fn_800B96C0 = .text:0x800B96C0; // type:function size:0x70 +fn_800B9730 = .text:0x800B9730; // type:function size:0x28 +fn_800B9758 = .text:0x800B9758; // type:function size:0x1A4 +__OSSystemCallVectorStart = .text:0x800B98FC; // type:label scope:global +fn_800B98FC = .text:0x800B98FC; // type:function size:0x20 +__OSSystemCallVectorEnd = .text:0x800B9918; // type:label scope:global +__OSInitSystemCall = .text:0x800B991C; // type:function size:0x64 scope:global +__OSThreadInit = .text:0x800B9980; // type:function size:0x128 scope:global +OSInitThreadQueue = .text:0x800B9AA8; // type:function size:0x10 scope:global +fn_800B9AB8 = .text:0x800B9AB8; // type:function size:0xC +OSDisableScheduler = .text:0x800B9AC4; // type:function size:0x40 scope:global +OSEnableScheduler = .text:0x800B9B04; // type:function size:0x40 scope:global +fn_800B9B44 = .text:0x800B9B44; // type:function size:0x68 +fn_800B9BAC = .text:0x800B9BAC; // type:function size:0x3C +fn_800B9BE8 = .text:0x800B9BE8; // type:function size:0x1C0 +SelectThread = .text:0x800B9DA8; // type:function size:0x200 scope:local +__OSReschedule = .text:0x800B9FA8; // type:function size:0x30 scope:global +fn_800B9FD8 = .text:0x800B9FD8; // type:function size:0x3C +fn_800BA014 = .text:0x800BA014; // type:function size:0x120 +fn_800BA134 = .text:0x800BA134; // type:function size:0xE4 +OSCancelThread = .text:0x800BA218; // type:function size:0x1BC scope:global +fn_800BA3D4 = .text:0x800BA3D4; // type:function size:0x288 +fn_800BA65C = .text:0x800BA65C; // type:function size:0x170 +fn_800BA7CC = .text:0x800BA7CC; // type:function size:0xEC +fn_800BA8B8 = .text:0x800BA8B8; // type:function size:0x104 +fn_800BA9BC = .text:0x800BA9BC; // type:function size:0x90 +OSGetTime = .text:0x800BAA4C; // type:function size:0x18 scope:global +OSGetTick = .text:0x800BAA64; // type:function size:0x8 scope:global +__OSGetSystemTime = .text:0x800BAA6C; // type:function size:0x64 scope:global +fn_800BAAD0 = .text:0x800BAAD0; // type:function size:0x19C +fn_800BAC6C = .text:0x800BAC6C; // type:function size:0x204 +__init_user = .text:0x800BAE70; // type:function size:0x20 scope:global +__init_cpp = .text:0x800BAE90; // type:function size:0x54 scope:local +_ExitProcess = .text:0x800BAEE4; // type:function size:0x20 scope:global +DBInit = .text:0x800BAF04; // type:function size:0x28 scope:global +fn_800BAF2C = .text:0x800BAF2C; // type:function size:0x48 +__DBExceptionDestination = .text:0x800BAF74; // type:function size:0x10 scope:global +__DBIsExceptionMarked = .text:0x800BAF84; // type:function size:0x1C scope:global +DBPrintf = .text:0x800BAFA0; // type:function size:0x50 scope:global +fn_800BAFF0 = .text:0x800BAFF0; // type:function size:0x2C +fn_800BB01C = .text:0x800BB01C; // type:function size:0x34 +fn_800BB050 = .text:0x800BB050; // type:function size:0xCC +fn_800BB11C = .text:0x800BB11C; // type:function size:0x50 +fn_800BB16C = .text:0x800BB16C; // type:function size:0xF8 +fn_800BB264 = .text:0x800BB264; // type:function size:0xC8 +fn_800BB32C = .text:0x800BB32C; // type:function size:0x70 +fn_800BB39C = .text:0x800BB39C; // type:function size:0xA8 +fn_800BB444 = .text:0x800BB444; // type:function size:0x104 +fn_800BB548 = .text:0x800BB548; // type:function size:0x34 +fn_800BB57C = .text:0x800BB57C; // type:function size:0x28 +fn_800BB5A4 = .text:0x800BB5A4; // type:function size:0xA4 +fn_800BB648 = .text:0x800BB648; // type:function size:0x18C +fn_800BB7D4 = .text:0x800BB7D4; // type:function size:0xCC +fn_800BB8A0 = .text:0x800BB8A0; // type:function size:0x54 +fn_800BB8F4 = .text:0x800BB8F4; // type:function size:0x8C +fn_800BB980 = .text:0x800BB980; // type:function size:0x54 +fn_800BB9D4 = .text:0x800BB9D4; // type:function size:0xD0 +fn_800BBAA4 = .text:0x800BBAA4; // type:function size:0x98 +fn_800BBB3C = .text:0x800BBB3C; // type:function size:0x24 +fn_800BBB60 = .text:0x800BBB60; // type:function size:0x24 +fn_800BBB84 = .text:0x800BBB84; // type:function size:0x1C +fn_800BBBA0 = .text:0x800BBBA0; // type:function size:0x44 +fn_800BBBE4 = .text:0x800BBBE4; // type:function size:0x18 +fn_800BBBFC = .text:0x800BBBFC; // type:function size:0x3C +fn_800BBC38 = .text:0x800BBC38; // type:function size:0x20 +fn_800BBC58 = .text:0x800BBC58; // type:function size:0x3C +fn_800BBC94 = .text:0x800BBC94; // type:function size:0xD8 +fn_800BBD6C = .text:0x800BBD6C; // type:function size:0xD4 +fn_800BBE40 = .text:0x800BBE40; // type:function size:0x28 +fn_800BBE68 = .text:0x800BBE68; // type:function size:0x4C +fn_800BBEB4 = .text:0x800BBEB4; // type:function size:0x44 +fn_800BBEF8 = .text:0x800BBEF8; // type:function size:0x24 +fn_800BBF1C = .text:0x800BBF1C; // type:function size:0x5C +fn_800BBF78 = .text:0x800BBF78; // type:function size:0x54 +fn_800BBFCC = .text:0x800BBFCC; // type:function size:0x50 +fn_800BC01C = .text:0x800BC01C; // type:function size:0x8C +fn_800BC0A8 = .text:0x800BC0A8; // type:function size:0x258 +fn_800BC300 = .text:0x800BC300; // type:function size:0x174 +fn_800BC474 = .text:0x800BC474; // type:function size:0x4C +fn_800BC4C0 = .text:0x800BC4C0; // type:function size:0x118 +__DVDInitWA = .text:0x800BC5D8; // type:function size:0x40 scope:global +__DVDInterruptHandler = .text:0x800BC618; // type:function size:0x2F4 scope:global +fn_800BC90C = .text:0x800BC90C; // type:function size:0x84 +AlarmHandlerForTimeout = .text:0x800BC990; // type:function size:0x70 scope:local +fn_800BCA00 = .text:0x800BCA00; // type:function size:0x110 +fn_800BCB10 = .text:0x800BCB10; // type:function size:0x80 +fn_800BCB90 = .text:0x800BCB90; // type:function size:0x298 +fn_800BCE28 = .text:0x800BCE28; // type:function size:0x94 +DVDLowWaitCoverClose = .text:0x800BCEBC; // type:function size:0x2C scope:global +fn_800BCEE8 = .text:0x800BCEE8; // type:function size:0xA4 +DVDLowStopMotor = .text:0x800BCF8C; // type:function size:0x8C scope:global +fn_800BD018 = .text:0x800BD018; // type:function size:0x8C +fn_800BD0A4 = .text:0x800BD0A4; // type:function size:0x9C +fn_800BD140 = .text:0x800BD140; // type:function size:0x98 +fn_800BD1D8 = .text:0x800BD1D8; // type:function size:0x8C +fn_800BD264 = .text:0x800BD264; // type:function size:0x9C +DVDLowReset = .text:0x800BD300; // type:function size:0xBC scope:global +fn_800BD3BC = .text:0x800BD3BC; // type:function size:0x14 +fn_800BD3D0 = .text:0x800BD3D0; // type:function size:0x18 +__DVDLowSetWAType = .text:0x800BD3E8; // type:function size:0x44 scope:global +__DVDFSInit = .text:0x800BD42C; // type:function size:0x38 scope:global +fn_800BD464 = .text:0x800BD464; // type:function size:0x2F4 +fn_800BD758 = .text:0x800BD758; // type:function size:0x74 +fn_800BD7CC = .text:0x800BD7CC; // type:function size:0xC8 +fn_800BD894 = .text:0x800BD894; // type:function size:0x24 +fn_800BD8B8 = .text:0x800BD8B8; // type:function size:0x160 +fn_800BDA18 = .text:0x800BDA18; // type:function size:0xC4 +fn_800BDADC = .text:0x800BDADC; // type:function size:0xC0 +fn_800BDB9C = .text:0x800BDB9C; // type:function size:0x30 +fn_800BDBCC = .text:0x800BDBCC; // type:function size:0x118 +fn_800BDCE4 = .text:0x800BDCE4; // type:function size:0x24 +DVDInit = .text:0x800BDD08; // type:function size:0xFC scope:global +fn_800BDE04 = .text:0x800BDE04; // type:function size:0x54 +fn_800BDE58 = .text:0x800BDE58; // type:function size:0x80 +cbForStateError = .text:0x800BDED8; // type:function size:0xA8 scope:local +fn_800BDF80 = .text:0x800BDF80; // type:function size:0x9C +fn_800BE01C = .text:0x800BE01C; // type:function size:0x28 +fn_800BE044 = .text:0x800BE044; // type:function size:0xB4 +fn_800BE0F8 = .text:0x800BE0F8; // type:function size:0x294 +fn_800BE38C = .text:0x800BE38C; // type:function size:0x68 +fn_800BE3F4 = .text:0x800BE3F4; // type:function size:0x98 +fn_800BE48C = .text:0x800BE48C; // type:function size:0x28 +fn_800BE4B4 = .text:0x800BE4B4; // type:function size:0x158 +fn_800BE60C = .text:0x800BE60C; // type:function size:0xE4 +fn_800BE6F0 = .text:0x800BE6F0; // type:function size:0x34 +fn_800BE724 = .text:0x800BE724; // type:function size:0x38 +fn_800BE75C = .text:0x800BE75C; // type:function size:0x114 +fn_800BE870 = .text:0x800BE870; // type:function size:0xA4 +fn_800BE914 = .text:0x800BE914; // type:function size:0xFC +AlarmHandler = .text:0x800BEA10; // type:function size:0x44 scope:local +fn_800BEA54 = .text:0x800BEA54; // type:function size:0xCC +fn_800BEB20 = .text:0x800BEB20; // type:function size:0x30 +fn_800BEB50 = .text:0x800BEB50; // type:function size:0x70 +fn_800BEBC0 = .text:0x800BEBC0; // type:function size:0x28 +cbForStateMotorStopped = .text:0x800BEBE8; // type:function size:0xE4 scope:local +stateReady = .text:0x800BECCC; // type:function size:0x248 scope:local +stateBusy = .text:0x800BEF14; // type:function size:0x2C0 scope:local +fn_800BF1D4 = .text:0x800BF1D4; // type:function size:0x5D4 +fn_800BF7A8 = .text:0x800BF7A8; // type:function size:0xDC +fn_800BF884 = .text:0x800BF884; // type:function size:0xD0 +DVDReadDiskID = .text:0x800BF954; // type:function size:0xD4 scope:global +DVDInquiryAsync = .text:0x800BFA28; // type:function size:0xD0 scope:global +DVDReset = .text:0x800BFAF8; // type:function size:0x44 scope:global +fn_800BFB3C = .text:0x800BFB3C; // type:function size:0x4C +DVDGetDriveStatus = .text:0x800BFB88; // type:function size:0xAC scope:global +fn_800BFC34 = .text:0x800BFC34; // type:function size:0x10 +fn_800BFC44 = .text:0x800BFC44; // type:function size:0x270 +fn_800BFEB4 = .text:0x800BFEB4; // type:function size:0xAC +fn_800BFF60 = .text:0x800BFF60; // type:function size:0x24 +fn_800BFF84 = .text:0x800BFF84; // type:function size:0x8 +fn_800BFF8C = .text:0x800BFF8C; // type:function size:0xE4 +fn_800C0070 = .text:0x800C0070; // type:function size:0x11C +__DVDClearWaitingQueue = .text:0x800C018C; // type:function size:0x38 scope:global +__DVDPushWaitingQueue = .text:0x800C01C4; // type:function size:0x68 scope:global +__DVDPopWaitingQueue = .text:0x800C022C; // type:function size:0xA0 scope:global +__DVDCheckWaitingQueue = .text:0x800C02CC; // type:function size:0x58 scope:global +fn_800C0324 = .text:0x800C0324; // type:function size:0x60 +ErrorCode2Num = .text:0x800C0384; // type:function size:0x11C scope:local +__DVDStoreErrorCode = .text:0x800C04A0; // type:function size:0x7C scope:global +cb = .text:0x800C051C; // type:function size:0xD8 scope:local +__fstLoad = .text:0x800C05F4; // type:function size:0x168 scope:global +fn_800C075C = .text:0x800C075C; // type:function size:0x228 +fn_800C0984 = .text:0x800C0984; // type:function size:0x44 +fn_800C09C8 = .text:0x800C09C8; // type:function size:0x44 +fn_800C0A0C = .text:0x800C0A0C; // type:function size:0x90 +fn_800C0A9C = .text:0x800C0A9C; // type:function size:0x1F8 +fn_800C0C94 = .text:0x800C0C94; // type:function size:0x478 +fn_800C110C = .text:0x800C110C; // type:function size:0x54 +fn_800C1160 = .text:0x800C1160; // type:function size:0x2D4 +fn_800C1434 = .text:0x800C1434; // type:function size:0x1A0 +fn_800C15D4 = .text:0x800C15D4; // type:function size:0x79C +fn_800C1D70 = .text:0x800C1D70; // type:function size:0x394 +fn_800C2104 = .text:0x800C2104; // type:function size:0x11C +fn_800C2220 = .text:0x800C2220; // type:function size:0x6C +fn_800C228C = .text:0x800C228C; // type:function size:0x7C +fn_800C2308 = .text:0x800C2308; // type:function size:0x8 +fn_800C2310 = .text:0x800C2310; // type:function size:0x68 +fn_800C2378 = .text:0x800C2378; // type:function size:0xA8 +fn_800C2420 = .text:0x800C2420; // type:function size:0x98 +VIGetTvFormat = .text:0x800C24B8; // type:function size:0x7C scope:global +fn_800C2534 = .text:0x800C2534; // type:function size:0x3C +fn_800C2570 = .text:0x800C2570; // type:function size:0x8 +fn_800C2578 = .text:0x800C2578; // type:function size:0x228 +fn_800C27A0 = .text:0x800C27A0; // type:function size:0x310 +fn_800C2AB0 = .text:0x800C2AB0; // type:function size:0xC4 +fn_800C2B74 = .text:0x800C2B74; // type:function size:0x394 +fn_800C2F08 = .text:0x800C2F08; // type:function size:0x58 +fn_800C2F60 = .text:0x800C2F60; // type:function size:0x96C +fn_800C38CC = .text:0x800C38CC; // type:function size:0x130 +fn_800C39FC = .text:0x800C39FC; // type:function size:0x108 +fn_800C3B04 = .text:0x800C3B04; // type:function size:0x1A4 +fn_800C3CA8 = .text:0x800C3CA8; // type:function size:0xC4 +fn_800C3D6C = .text:0x800C3D6C; // type:function size:0xC0 +fn_800C3E2C = .text:0x800C3E2C; // type:function size:0xD8 +fn_800C3F04 = .text:0x800C3F04; // type:function size:0x32C +fn_800C4230 = .text:0x800C4230; // type:function size:0x134 +fn_800C4364 = .text:0x800C4364; // type:function size:0x100 +fn_800C4464 = .text:0x800C4464; // type:function size:0x104 +fn_800C4568 = .text:0x800C4568; // type:function size:0x210 +fn_800C4778 = .text:0x800C4778; // type:function size:0x3AC +fn_800C4B24 = .text:0x800C4B24; // type:function size:0xA4 +fn_800C4BC8 = .text:0x800C4BC8; // type:function size:0x60 +fn_800C4C28 = .text:0x800C4C28; // type:function size:0x174 +fn_800C4D9C = .text:0x800C4D9C; // type:function size:0x174 +fn_800C4F10 = .text:0x800C4F10; // type:function size:0x3F8 +fn_800C5308 = .text:0x800C5308; // type:function size:0x194 +fn_800C549C = .text:0x800C549C; // type:function size:0x60 +fn_800C54FC = .text:0x800C54FC; // type:function size:0x54 +__PADDisableRecalibration = .text:0x800C5550; // type:function size:0x7C scope:global +fn_800C55CC = .text:0x800C55CC; // type:function size:0x44 +fn_800C5610 = .text:0x800C5610; // type:function size:0x88 +fn_800C5698 = .text:0x800C5698; // type:function size:0x18 +fn_800C56B0 = .text:0x800C56B0; // type:function size:0x18 +fn_800C56C8 = .text:0x800C56C8; // type:function size:0x1C +fn_800C56E4 = .text:0x800C56E4; // type:function size:0xD8 +fn_800C57BC = .text:0x800C57BC; // type:function size:0x10 +fn_800C57CC = .text:0x800C57CC; // type:function size:0xE0 +fn_800C58AC = .text:0x800C58AC; // type:function size:0x14 +fn_800C58C0 = .text:0x800C58C0; // type:function size:0xD4 +fn_800C5994 = .text:0x800C5994; // type:function size:0x10 +fn_800C59A4 = .text:0x800C59A4; // type:function size:0x1C +fn_800C59C0 = .text:0x800C59C0; // type:function size:0x10 +fn_800C59D0 = .text:0x800C59D0; // type:function size:0x1C +fn_800C59EC = .text:0x800C59EC; // type:function size:0x10 +fn_800C59FC = .text:0x800C59FC; // type:function size:0x164 +fn_800C5B60 = .text:0x800C5B60; // type:function size:0x7C +fn_800C5BDC = .text:0x800C5BDC; // type:function size:0x90 +fn_800C5C6C = .text:0x800C5C6C; // type:function size:0x58 +fn_800C5CC4 = .text:0x800C5CC4; // type:function size:0x1E4 +fn_800C5EA8 = .text:0x800C5EA8; // type:function size:0x44 +fn_800C5EEC = .text:0x800C5EEC; // type:function size:0x3C +fn_800C5F28 = .text:0x800C5F28; // type:function size:0xF0 +fn_800C6018 = .text:0x800C6018; // type:function size:0x68 +fn_800C6080 = .text:0x800C6080; // type:function size:0x74 +fn_800C60F4 = .text:0x800C60F4; // type:function size:0x8 +fn_800C60FC = .text:0x800C60FC; // type:function size:0xBC +fn_800C61B8 = .text:0x800C61B8; // type:function size:0x4 +fn_800C61BC = .text:0x800C61BC; // type:function size:0x8 +fn_800C61C4 = .text:0x800C61C4; // type:function size:0x8 +fn_800C61CC = .text:0x800C61CC; // type:function size:0x78 +fn_800C6244 = .text:0x800C6244; // type:function size:0x914 +fn_800C6B58 = .text:0x800C6B58; // type:function size:0x100 +fn_800C6C58 = .text:0x800C6C58; // type:function size:0x4 +fn_800C6C5C = .text:0x800C6C5C; // type:function size:0xCC +fn_800C6D28 = .text:0x800C6D28; // type:function size:0x68 +fn_800C6D90 = .text:0x800C6D90; // type:function size:0x15C +fn_800C6EEC = .text:0x800C6EEC; // type:function size:0x10 +fn_800C6EFC = .text:0x800C6EFC; // type:function size:0x10 +fn_800C6F0C = .text:0x800C6F0C; // type:function size:0x18 +fn_800C6F24 = .text:0x800C6F24; // type:function size:0x14 +fn_800C6F38 = .text:0x800C6F38; // type:function size:0xB8 +fn_800C6FF0 = .text:0x800C6FF0; // type:function size:0x48 +fn_800C7038 = .text:0x800C7038; // type:function size:0x40 +fn_800C7078 = .text:0x800C7078; // type:function size:0x10 +fn_800C7088 = .text:0x800C7088; // type:function size:0x70 +fn_800C70F8 = .text:0x800C70F8; // type:function size:0x50 +fn_800C7148 = .text:0x800C7148; // type:function size:0x424 +fn_800C756C = .text:0x800C756C; // type:function size:0x1A0 +fn_800C770C = .text:0x800C770C; // type:function size:0x18C +fn_800C7898 = .text:0x800C7898; // type:function size:0xA0 +fn_800C7938 = .text:0x800C7938; // type:function size:0x94 +fn_800C79CC = .text:0x800C79CC; // type:function size:0x7C +fn_800C7A48 = .text:0x800C7A48; // type:function size:0x24 +GXInit = .text:0x800C7A6C; // type:function size:0x7CC scope:global +__GXInitGX = .text:0x800C8238; // type:function size:0x884 scope:global +fn_800C8ABC = .text:0x800C8ABC; // type:function size:0x13C +GXInitFifoBase = .text:0x800C8BF8; // type:function size:0x6C scope:global +fn_800C8C64 = .text:0x800C8C64; // type:function size:0x70 +fn_800C8CD4 = .text:0x800C8CD4; // type:function size:0xC +GXSetCPUFifo = .text:0x800C8CE0; // type:function size:0x110 scope:global +GXSetGPFifo = .text:0x800C8DF0; // type:function size:0x178 scope:global +fn_800C8F68 = .text:0x800C8F68; // type:function size:0x20 +fn_800C8F88 = .text:0x800C8F88; // type:function size:0xDC +__GXFifoInit = .text:0x800C9064; // type:function size:0x4C scope:global +fn_800C90B0 = .text:0x800C90B0; // type:function size:0x28 +fn_800C90D8 = .text:0x800C90D8; // type:function size:0x24 +fn_800C90FC = .text:0x800C90FC; // type:function size:0x44 +fn_800C9140 = .text:0x800C9140; // type:function size:0x4C +fn_800C918C = .text:0x800C918C; // type:function size:0x4C +fn_800C91D8 = .text:0x800C91D8; // type:function size:0xFC +fn_800C92D4 = .text:0x800C92D4; // type:function size:0x8 +fn_800C92DC = .text:0x800C92DC; // type:function size:0x8 +fn_800C92E4 = .text:0x800C92E4; // type:function size:0x158 +fn_800C943C = .text:0x800C943C; // type:function size:0x360 +fn_800C979C = .text:0x800C979C; // type:function size:0x54 +fn_800C97F0 = .text:0x800C97F0; // type:function size:0x124 +fn_800C9914 = .text:0x800C9914; // type:function size:0x4C +fn_800C9960 = .text:0x800C9960; // type:function size:0x35C +fn_800C9CBC = .text:0x800C9CBC; // type:function size:0x9C +fn_800C9D58 = .text:0x800C9D58; // type:function size:0x8C +fn_800C9DE4 = .text:0x800C9DE4; // type:function size:0x10 +fn_800C9DF4 = .text:0x800C9DF4; // type:function size:0x2D0 +fn_800CA0C4 = .text:0x800CA0C4; // type:function size:0x48 +GXSetMisc = .text:0x800CA10C; // type:function size:0x78 scope:global +fn_800CA184 = .text:0x800CA184; // type:function size:0x5C +fn_800CA1E0 = .text:0x800CA1E0; // type:function size:0x34 +fn_800CA214 = .text:0x800CA214; // type:function size:0xCC +fn_800CA2E0 = .text:0x800CA2E0; // type:function size:0xB8 +fn_800CA398 = .text:0x800CA398; // type:function size:0x98 +fn_800CA430 = .text:0x800CA430; // type:function size:0x4C +fn_800CA47C = .text:0x800CA47C; // type:function size:0x80 +fn_800CA4FC = .text:0x800CA4FC; // type:function size:0x24 +fn_800CA520 = .text:0x800CA520; // type:function size:0x14 +fn_800CA534 = .text:0x800CA534; // type:function size:0x14 +fn_800CA548 = .text:0x800CA548; // type:function size:0x1C +fn_800CA564 = .text:0x800CA564; // type:function size:0x88 +fn_800CA5EC = .text:0x800CA5EC; // type:function size:0x1C +fn_800CA608 = .text:0x800CA608; // type:function size:0x14 +fn_800CA61C = .text:0x800CA61C; // type:function size:0x1C +fn_800CA638 = .text:0x800CA638; // type:function size:0x28 +fn_800CA660 = .text:0x800CA660; // type:function size:0x44 +fn_800CA6A4 = .text:0x800CA6A4; // type:function size:0x88 +fn_800CA72C = .text:0x800CA72C; // type:function size:0x84 +__GXPEInit = .text:0x800CA7B0; // type:function size:0x80 scope:global +fn_800CA830 = .text:0x800CA830; // type:function size:0xA0 +fn_800CA8D0 = .text:0x800CA8D0; // type:function size:0xF0 +fn_800CA9C0 = .text:0x800CA9C0; // type:function size:0x88 +fn_800CAA48 = .text:0x800CAA48; // type:function size:0x58 +fn_800CAAA0 = .text:0x800CAAA0; // type:function size:0x54 +fn_800CAAF4 = .text:0x800CAAF4; // type:function size:0x64 +fn_800CAB58 = .text:0x800CAB58; // type:function size:0x50 +fn_800CABA8 = .text:0x800CABA8; // type:function size:0x44 +fn_800CABEC = .text:0x800CABEC; // type:function size:0x24 +fn_800CAC10 = .text:0x800CAC10; // type:function size:0x120 +fn_800CAD30 = .text:0x800CAD30; // type:function size:0xC0 +fn_800CADF0 = .text:0x800CADF0; // type:function size:0xC0 +fn_800CAEB0 = .text:0x800CAEB0; // type:function size:0x44 +fn_800CAEF4 = .text:0x800CAEF4; // type:function size:0x170 +fn_800CB064 = .text:0x800CB064; // type:function size:0x2C +fn_800CB090 = .text:0x800CB090; // type:function size:0x7C +fn_800CB10C = .text:0x800CB10C; // type:function size:0xD4 +fn_800CB1E0 = .text:0x800CB1E0; // type:function size:0x68 +fn_800CB248 = .text:0x800CB248; // type:function size:0x228 +fn_800CB470 = .text:0x800CB470; // type:function size:0x1C +fn_800CB48C = .text:0x800CB48C; // type:function size:0x170 +fn_800CB5FC = .text:0x800CB5FC; // type:function size:0x190 +fn_800CB78C = .text:0x800CB78C; // type:function size:0x38 +fn_800CB7C4 = .text:0x800CB7C4; // type:function size:0x1C +fn_800CB7E0 = .text:0x800CB7E0; // type:function size:0x10 +fn_800CB7F0 = .text:0x800CB7F0; // type:function size:0x180 +fn_800CB970 = .text:0x800CB970; // type:function size:0xD0 +fn_800CBA40 = .text:0x800CBA40; // type:function size:0x10 +fn_800CBA50 = .text:0x800CBA50; // type:function size:0x1C +fn_800CBA6C = .text:0x800CBA6C; // type:function size:0xD4 +fn_800CBB40 = .text:0x800CBB40; // type:function size:0x28 +fn_800CBB68 = .text:0x800CBB68; // type:function size:0x148 +fn_800CBCB0 = .text:0x800CBCB0; // type:function size:0x168 +fn_800CBE18 = .text:0x800CBE18; // type:function size:0x168 +fn_800CBF80 = .text:0x800CBF80; // type:function size:0x4C +fn_800CBFCC = .text:0x800CBFCC; // type:function size:0x1E4 +fn_800CC1B0 = .text:0x800CC1B0; // type:function size:0x15C +fn_800CC30C = .text:0x800CC30C; // type:function size:0xC8 +fn_800CC3D4 = .text:0x800CC3D4; // type:function size:0x274 +fn_800CC648 = .text:0x800CC648; // type:function size:0x48 +fn_800CC690 = .text:0x800CC690; // type:function size:0x194 +fn_800CC824 = .text:0x800CC824; // type:function size:0x8 +fn_800CC82C = .text:0x800CC82C; // type:function size:0x1A8 +fn_800CC9D4 = .text:0x800CC9D4; // type:function size:0x54 +fn_800CCA28 = .text:0x800CCA28; // type:function size:0x48 +fn_800CCA70 = .text:0x800CCA70; // type:function size:0x9C +GXInitTexCacheRegion = .text:0x800CCB0C; // type:function size:0x120 scope:global +GXInitTlutRegion = .text:0x800CCC2C; // type:function size:0x48 scope:global +fn_800CCC74 = .text:0x800CCC74; // type:function size:0x48 +fn_800CCCBC = .text:0x800CCCBC; // type:function size:0x14 +fn_800CCCD0 = .text:0x800CCCD0; // type:function size:0x14 +fn_800CCCE4 = .text:0x800CCCE4; // type:function size:0x9C +fn_800CCD80 = .text:0x800CCD80; // type:function size:0xCC +fn_800CCE4C = .text:0x800CCE4C; // type:function size:0x17C +__GXSetTmemConfig = .text:0x800CCFC8; // type:function size:0x240 scope:global +fn_800CD208 = .text:0x800CD208; // type:function size:0x9C +fn_800CD2A4 = .text:0x800CD2A4; // type:function size:0x160 +fn_800CD404 = .text:0x800CD404; // type:function size:0x1D4 +fn_800CD5D8 = .text:0x800CD5D8; // type:function size:0x138 +fn_800CD710 = .text:0x800CD710; // type:function size:0x2C +fn_800CD73C = .text:0x800CD73C; // type:function size:0x48 +fn_800CD784 = .text:0x800CD784; // type:function size:0x64 +fn_800CD7E8 = .text:0x800CD7E8; // type:function size:0x1AC +fn_800CD994 = .text:0x800CD994; // type:function size:0xCC +__GXFlushTextureState = .text:0x800CDA60; // type:function size:0x24 scope:global +fn_800CDA84 = .text:0x800CDA84; // type:function size:0x1A4 +fn_800CDC28 = .text:0x800CDC28; // type:function size:0x80 +fn_800CDCA8 = .text:0x800CDCA8; // type:function size:0x84 +fn_800CDD2C = .text:0x800CDD2C; // type:function size:0xC0 +fn_800CDDEC = .text:0x800CDDEC; // type:function size:0xC0 +fn_800CDEAC = .text:0x800CDEAC; // type:function size:0x74 +fn_800CDF20 = .text:0x800CDF20; // type:function size:0x74 +fn_800CDF94 = .text:0x800CDF94; // type:function size:0x74 +fn_800CE008 = .text:0x800CE008; // type:function size:0x6C +fn_800CE074 = .text:0x800CE074; // type:function size:0x6C +fn_800CE0E0 = .text:0x800CE0E0; // type:function size:0x58 +fn_800CE138 = .text:0x800CE138; // type:function size:0xA0 +fn_800CE1D8 = .text:0x800CE1D8; // type:function size:0x50 +fn_800CE228 = .text:0x800CE228; // type:function size:0x84 +fn_800CE2AC = .text:0x800CE2AC; // type:function size:0x1DC +fn_800CE488 = .text:0x800CE488; // type:function size:0x34 +fn_800CE4BC = .text:0x800CE4BC; // type:function size:0x1B0 +fn_800CE66C = .text:0x800CE66C; // type:function size:0x100 +fn_800CE76C = .text:0x800CE76C; // type:function size:0x104 +fn_800CE870 = .text:0x800CE870; // type:function size:0x40 +fn_800CE8B0 = .text:0x800CE8B0; // type:function size:0x40 +fn_800CE8F0 = .text:0x800CE8F0; // type:function size:0x78 +fn_800CE968 = .text:0x800CE968; // type:function size:0x40 +fn_800CE9A8 = .text:0x800CE9A8; // type:function size:0x110 +fn_800CEAB8 = .text:0x800CEAB8; // type:function size:0x40 +fn_800CEAF8 = .text:0x800CEAF8; // type:function size:0x54 +fn_800CEB4C = .text:0x800CEB4C; // type:function size:0x38 +fn_800CEB84 = .text:0x800CEB84; // type:function size:0x80 +fn_800CEC04 = .text:0x800CEC04; // type:function size:0x4 +fn_800CEC08 = .text:0x800CEC08; // type:function size:0xC8 +fn_800CECD0 = .text:0x800CECD0; // type:function size:0xD4 +fn_800CEDA4 = .text:0x800CEDA4; // type:function size:0x70 +fn_800CEE14 = .text:0x800CEE14; // type:function size:0x174 +fn_800CEF88 = .text:0x800CEF88; // type:function size:0xD4 +fn_800CF05C = .text:0x800CF05C; // type:function size:0x78 +fn_800CF0D4 = .text:0x800CF0D4; // type:function size:0x34 +fn_800CF108 = .text:0x800CF108; // type:function size:0x34 +fn_800CF13C = .text:0x800CF13C; // type:function size:0x24 +fn_800CF160 = .text:0x800CF160; // type:function size:0x3C +fn_800CF19C = .text:0x800CF19C; // type:function size:0x40 +fn_800CF1DC = .text:0x800CF1DC; // type:function size:0x3C +fn_800CF218 = .text:0x800CF218; // type:function size:0x84 +fn_800CF29C = .text:0x800CF29C; // type:function size:0x11C +fn_800CF3B8 = .text:0x800CF3B8; // type:function size:0x24 +fn_800CF3DC = .text:0x800CF3DC; // type:function size:0x4C +fn_800CF428 = .text:0x800CF428; // type:function size:0xB0 +fn_800CF4D8 = .text:0x800CF4D8; // type:function size:0x44 +fn_800CF51C = .text:0x800CF51C; // type:function size:0x28 +fn_800CF544 = .text:0x800CF544; // type:function size:0x84 +fn_800CF5C8 = .text:0x800CF5C8; // type:function size:0x898 +fn_800CFE60 = .text:0x800CFE60; // type:function size:0x1A8 +fn_800D0008 = .text:0x800D0008; // type:function size:0x10 +fn_800D0018 = .text:0x800D0018; // type:function size:0x2C +fn_800D0044 = .text:0x800D0044; // type:function size:0x2C +fn_800D0070 = .text:0x800D0070; // type:function size:0x214 +fn_800D0284 = .text:0x800D0284; // type:function size:0xA8 +fn_800D032C = .text:0x800D032C; // type:function size:0x138 +fn_800D0464 = .text:0x800D0464; // type:function size:0x30 +fn_800D0494 = .text:0x800D0494; // type:function size:0x50 +fn_800D04E4 = .text:0x800D04E4; // type:function size:0x94 +fn_800D0578 = .text:0x800D0578; // type:function size:0x1C +fn_800D0594 = .text:0x800D0594; // type:function size:0x4 +fn_800D0598 = .text:0x800D0598; // type:function size:0x34 +fn_800D05CC = .text:0x800D05CC; // type:function size:0xD8 +fn_800D06A4 = .text:0x800D06A4; // type:function size:0x118 +fn_800D07BC = .text:0x800D07BC; // type:function size:0xA8 +fn_800D0864 = .text:0x800D0864; // type:function size:0x84 +fn_800D08E8 = .text:0x800D08E8; // type:function size:0xC0 +fn_800D09A8 = .text:0x800D09A8; // type:function size:0xF0 +fn_800D0A98 = .text:0x800D0A98; // type:function size:0xAC +fn_800D0B44 = .text:0x800D0B44; // type:function size:0xA4 +fn_800D0BE8 = .text:0x800D0BE8; // type:function size:0x22C +fn_800D0E14 = .text:0x800D0E14; // type:function size:0x110 +fn_800D0F24 = .text:0x800D0F24; // type:function size:0x1B4 +fn_800D10D8 = .text:0x800D10D8; // type:function size:0x134 +fn_800D120C = .text:0x800D120C; // type:function size:0x11C +fn_800D1328 = .text:0x800D1328; // type:function size:0xE0 +fn_800D1408 = .text:0x800D1408; // type:function size:0x9C +fn_800D14A4 = .text:0x800D14A4; // type:function size:0x38 +fn_800D14DC = .text:0x800D14DC; // type:function size:0xB8 +fn_800D1594 = .text:0x800D1594; // type:function size:0x64 +fn_800D15F8 = .text:0x800D15F8; // type:function size:0x150 +fn_800D1748 = .text:0x800D1748; // type:function size:0x84 +fn_800D17CC = .text:0x800D17CC; // type:function size:0x98 +fn_800D1864 = .text:0x800D1864; // type:function size:0x50 +fn_800D18B4 = .text:0x800D18B4; // type:function size:0x16C +fn_800D1A20 = .text:0x800D1A20; // type:function size:0x144 +fn_800D1B64 = .text:0x800D1B64; // type:function size:0xC4 +fn_800D1C28 = .text:0x800D1C28; // type:function size:0xB58 +fn_800D2780 = .text:0x800D2780; // type:function size:0x70 +fn_800D27F0 = .text:0x800D27F0; // type:function size:0x324 +fn_800D2B14 = .text:0x800D2B14; // type:function size:0xDC +fn_800D2BF0 = .text:0x800D2BF0; // type:function size:0x64 +fn_800D2C54 = .text:0x800D2C54; // type:function size:0xDC +fn_800D2D30 = .text:0x800D2D30; // type:function size:0x64 +fn_800D2D94 = .text:0x800D2D94; // type:function size:0x8 +fn_800D2D9C = .text:0x800D2D9C; // type:function size:0xD4 +fn_800D2E70 = .text:0x800D2E70; // type:function size:0xC8 +fn_800D2F38 = .text:0x800D2F38; // type:function size:0x118 +fn_800D3050 = .text:0x800D3050; // type:function size:0x9C +fn_800D30EC = .text:0x800D30EC; // type:function size:0xAC +fn_800D3198 = .text:0x800D3198; // type:function size:0x8 +fn_800D31A0 = .text:0x800D31A0; // type:function size:0xD0 +fn_800D3270 = .text:0x800D3270; // type:function size:0xC8 +fn_800D3338 = .text:0x800D3338; // type:function size:0xC4 +fn_800D33FC = .text:0x800D33FC; // type:function size:0x1B0 +fn_800D35AC = .text:0x800D35AC; // type:function size:0x284 +fn_800D3830 = .text:0x800D3830; // type:function size:0x240 +fn_800D3A70 = .text:0x800D3A70; // type:function size:0x284 +fn_800D3CF4 = .text:0x800D3CF4; // type:function size:0x8C +fn_800D3D80 = .text:0x800D3D80; // type:function size:0x590 +fn_800D4310 = .text:0x800D4310; // type:function size:0x54 +fn_800D4364 = .text:0x800D4364; // type:function size:0xCC +fn_800D4430 = .text:0x800D4430; // type:function size:0x17C +fn_800D45AC = .text:0x800D45AC; // type:function size:0x410 +fn_800D49BC = .text:0x800D49BC; // type:function size:0x138 +fn_800D4AF4 = .text:0x800D4AF4; // type:function size:0x1A0 +fn_800D4C94 = .text:0x800D4C94; // type:function size:0x48 +fn_800D4CDC = .text:0x800D4CDC; // type:function size:0x9C +fn_800D4D78 = .text:0x800D4D78; // type:function size:0xAC +fn_800D4E24 = .text:0x800D4E24; // type:function size:0x144 +fn_800D4F68 = .text:0x800D4F68; // type:function size:0x658 +fn_800D55C0 = .text:0x800D55C0; // type:function size:0x54 +fn_800D5614 = .text:0x800D5614; // type:function size:0x68 +fn_800D567C = .text:0x800D567C; // type:function size:0x98 +fn_800D5714 = .text:0x800D5714; // type:function size:0x30 +fn_800D5744 = .text:0x800D5744; // type:function size:0x150 +fn_800D5894 = .text:0x800D5894; // type:function size:0x178 +fn_800D5A0C = .text:0x800D5A0C; // type:function size:0x54 +fn_800D5A60 = .text:0x800D5A60; // type:function size:0x8 +fn_800D5A68 = .text:0x800D5A68; // type:function size:0x130 +fn_800D5B98 = .text:0x800D5B98; // type:function size:0x220 +fn_800D5DB8 = .text:0x800D5DB8; // type:function size:0x48 +fn_800D5E00 = .text:0x800D5E00; // type:function size:0x1B8 +fn_800D5FB8 = .text:0x800D5FB8; // type:function size:0x130 +fn_800D60E8 = .text:0x800D60E8; // type:function size:0x148 +fn_800D6230 = .text:0x800D6230; // type:function size:0x48 +fn_800D6278 = .text:0x800D6278; // type:function size:0x170 +fn_800D63E8 = .text:0x800D63E8; // type:function size:0xB0 +fn_800D6498 = .text:0x800D6498; // type:function size:0x114 +fn_800D65AC = .text:0x800D65AC; // type:function size:0x48 +fn_800D65F4 = .text:0x800D65F4; // type:function size:0xA4 +fn_800D6698 = .text:0x800D6698; // type:function size:0x110 +fn_800D67A8 = .text:0x800D67A8; // type:function size:0x48 +fn_800D67F0 = .text:0x800D67F0; // type:function size:0x1F8 +fn_800D69E8 = .text:0x800D69E8; // type:function size:0x12C +fn_800D6B14 = .text:0x800D6B14; // type:function size:0x174 +fn_800D6C88 = .text:0x800D6C88; // type:function size:0x48 +fn_800D6CD0 = .text:0x800D6CD0; // type:function size:0xC4 +fn_800D6D94 = .text:0x800D6D94; // type:function size:0xF4 +EXIImm = .text:0x800D6E88; // type:function size:0x25C scope:global +fn_800D70E4 = .text:0x800D70E4; // type:function size:0xA0 +EXIDma = .text:0x800D7184; // type:function size:0xEC scope:global +EXISync = .text:0x800D7270; // type:function size:0x238 scope:global +fn_800D74A8 = .text:0x800D74A8; // type:function size:0x48 +fn_800D74F0 = .text:0x800D74F0; // type:function size:0x7C +__EXIProbe = .text:0x800D756C; // type:function size:0x174 scope:local +fn_800D76E0 = .text:0x800D76E0; // type:function size:0x80 +fn_800D7760 = .text:0x800D7760; // type:function size:0xB4 +fn_800D7814 = .text:0x800D7814; // type:function size:0x10C +fn_800D7920 = .text:0x800D7920; // type:function size:0xBC +EXISelect = .text:0x800D79DC; // type:function size:0x12C scope:global +EXIDeselect = .text:0x800D7B08; // type:function size:0x110 scope:global +EXIIntrruptHandler = .text:0x800D7C18; // type:function size:0xC8 scope:local +TCIntrruptHandler = .text:0x800D7CE0; // type:function size:0x218 scope:local +EXTIntrruptHandler = .text:0x800D7EF8; // type:function size:0xD0 scope:local +EXIInit = .text:0x800D7FC8; // type:function size:0x114 scope:global +EXILock = .text:0x800D80DC; // type:function size:0xF4 scope:global +EXIUnlock = .text:0x800D81D0; // type:function size:0xDC scope:global +fn_800D82AC = .text:0x800D82AC; // type:function size:0x18 +fn_800D82C4 = .text:0x800D82C4; // type:function size:0x28 +fn_800D82EC = .text:0x800D82EC; // type:function size:0x37C +fn_800D8668 = .text:0x800D8668; // type:function size:0x70 +fn_800D86D8 = .text:0x800D86D8; // type:function size:0x200 +fn_800D88D8 = .text:0x800D88D8; // type:function size:0x20 +fn_800D88F8 = .text:0x800D88F8; // type:function size:0x3C +fn_800D8934 = .text:0x800D8934; // type:function size:0x2FC +SIInterruptHandler = .text:0x800D8C30; // type:function size:0x344 scope:local +fn_800D8F74 = .text:0x800D8F74; // type:function size:0x98 +fn_800D900C = .text:0x800D900C; // type:function size:0xCC +fn_800D90D8 = .text:0x800D90D8; // type:function size:0xF4 +SIInit = .text:0x800D91CC; // type:function size:0xA4 scope:global +fn_800D9270 = .text:0x800D9270; // type:function size:0x20C +fn_800D947C = .text:0x800D947C; // type:function size:0x7C +fn_800D94F8 = .text:0x800D94F8; // type:function size:0x14 +fn_800D950C = .text:0x800D950C; // type:function size:0x10 +SISetXY = .text:0x800D951C; // type:function size:0x6C scope:global +fn_800D9588 = .text:0x800D9588; // type:function size:0x9C +fn_800D9624 = .text:0x800D9624; // type:function size:0x6C +fn_800D9690 = .text:0x800D9690; // type:function size:0xD4 +fn_800D9764 = .text:0x800D9764; // type:function size:0xC4 +fn_800D9828 = .text:0x800D9828; // type:function size:0x8C +SITransfer = .text:0x800D98B4; // type:function size:0x16C scope:global +GetTypeCallback = .text:0x800D9A20; // type:function size:0x298 scope:local +SIGetType = .text:0x800D9CB8; // type:function size:0x1C4 scope:global +fn_800D9E7C = .text:0x800D9E7C; // type:function size:0x13C +SISetSamplingRate = .text:0x800D9FB8; // type:function size:0xE4 scope:global +fn_800DA09C = .text:0x800DA09C; // type:function size:0x24 +fn_800DA0C0 = .text:0x800DA0C0; // type:function size:0x244 +fn_800DA304 = .text:0x800DA304; // type:function size:0x44 +fn_800DA348 = .text:0x800DA348; // type:function size:0x13C +fn_800DA484 = .text:0x800DA484; // type:function size:0x11C +fn_800DA5A0 = .text:0x800DA5A0; // type:function size:0x3BC +fn_800DA95C = .text:0x800DA95C; // type:function size:0x1E0 +fn_800DAB3C = .text:0x800DAB3C; // type:function size:0xF0 +fn_800DAC2C = .text:0x800DAC2C; // type:function size:0x68 +fn_800DAC94 = .text:0x800DAC94; // type:function size:0x1BC +fn_800DAE50 = .text:0x800DAE50; // type:function size:0x54 +fn_800DAEA4 = .text:0x800DAEA4; // type:function size:0x24C +fn_800DB0F0 = .text:0x800DB0F0; // type:function size:0x10C +fn_800DB1FC = .text:0x800DB1FC; // type:function size:0x1A88 +fn_800DCC84 = .text:0x800DCC84; // type:function size:0x1A8C +fn_800DE710 = .text:0x800DE710; // type:function size:0x1AAC +fn_800E01BC = .text:0x800E01BC; // type:function size:0x67C +fn_800E0838 = .text:0x800E0838; // type:function size:0x6A8 +fn_800E0EE0 = .text:0x800E0EE0; // type:function size:0x6A8 +fn_800E1588 = .text:0x800E1588; // type:function size:0x78 +fn_800E1600 = .text:0x800E1600; // type:function size:0x464 +fn_800E1A64 = .text:0x800E1A64; // type:function size:0x90 +fn_800E1AF4 = .text:0x800E1AF4; // type:function size:0x3C +__va_arg = .text:0x800E1B30; // type:function size:0xC8 scope:global +__destroy_global_chain = .text:0x800E1BF8; // type:function size:0x48 scope:global +__register_global_object = .text:0x800E1C40; // type:function size:0x18 scope:global +fn_800E1C58 = .text:0x800E1C58; // type:function size:0x4C +fn_800E1CA4 = .text:0x800E1CA4; // type:function size:0x48 +fn_800E1CEC = .text:0x800E1CEC; // type:function size:0xC +fn_800E1CF8 = .text:0x800E1CF8; // type:function size:0x22C +fn_800E1F24 = .text:0x800E1F24; // type:function size:0x28 +fn_800E1F4C = .text:0x800E1F4C; // type:function size:0x28 +fn_800E1F74 = .text:0x800E1F74; // type:function size:0x28 +fn_800E1F9C = .text:0x800E1F9C; // type:function size:0x20 +fn_800E1FBC = .text:0x800E1FBC; // type:function size:0x5C +__save_fpr = .text:0x800E2018; // type:function size:0x4C scope:global +_savefpr_14 = .text:0x800E2018; // type:label scope:global +_savefpr_15 = .text:0x800E201C; // type:label scope:global +_savefpr_16 = .text:0x800E2020; // type:label scope:global +_savefpr_17 = .text:0x800E2024; // type:label scope:global +_savefpr_18 = .text:0x800E2028; // type:label scope:global +_savefpr_19 = .text:0x800E202C; // type:label scope:global +_savefpr_20 = .text:0x800E2030; // type:label scope:global +_savefpr_21 = .text:0x800E2034; // type:label scope:global +_savefpr_22 = .text:0x800E2038; // type:label scope:global +_savefpr_23 = .text:0x800E203C; // type:label scope:global +_savefpr_24 = .text:0x800E2040; // type:label scope:global +_savefpr_25 = .text:0x800E2044; // type:label scope:global +_savefpr_26 = .text:0x800E2048; // type:label scope:global +_savefpr_27 = .text:0x800E204C; // type:label scope:global +_savefpr_28 = .text:0x800E2050; // type:label scope:global +_savefpr_29 = .text:0x800E2054; // type:label scope:global +_savefpr_30 = .text:0x800E2058; // type:label scope:global +_savefpr_31 = .text:0x800E205C; // type:label scope:global +__restore_fpr = .text:0x800E2064; // type:function size:0x4C scope:global +_restfpr_14 = .text:0x800E2064; // type:label scope:global +_restfpr_15 = .text:0x800E2068; // type:label scope:global +_restfpr_16 = .text:0x800E206C; // type:label scope:global +_restfpr_17 = .text:0x800E2070; // type:label scope:global +_restfpr_18 = .text:0x800E2074; // type:label scope:global +_restfpr_19 = .text:0x800E2078; // type:label scope:global +_restfpr_20 = .text:0x800E207C; // type:label scope:global +_restfpr_21 = .text:0x800E2080; // type:label scope:global +_restfpr_22 = .text:0x800E2084; // type:label scope:global +_restfpr_23 = .text:0x800E2088; // type:label scope:global +_restfpr_24 = .text:0x800E208C; // type:label scope:global +_restfpr_25 = .text:0x800E2090; // type:label scope:global +_restfpr_26 = .text:0x800E2094; // type:label scope:global +_restfpr_27 = .text:0x800E2098; // type:label scope:global +_restfpr_28 = .text:0x800E209C; // type:label scope:global +_restfpr_29 = .text:0x800E20A0; // type:label scope:global +_restfpr_30 = .text:0x800E20A4; // type:label scope:global +_restfpr_31 = .text:0x800E20A8; // type:label scope:global +__save_gpr = .text:0x800E20B0; // type:function size:0x4C scope:global +_savegpr_14 = .text:0x800E20B0; // type:label scope:global +_savegpr_15 = .text:0x800E20B4; // type:label scope:global +_savegpr_16 = .text:0x800E20B8; // type:label scope:global +_savegpr_17 = .text:0x800E20BC; // type:label scope:global +_savegpr_18 = .text:0x800E20C0; // type:label scope:global +_savegpr_19 = .text:0x800E20C4; // type:label scope:global +_savegpr_20 = .text:0x800E20C8; // type:label scope:global +_savegpr_21 = .text:0x800E20CC; // type:label scope:global +_savegpr_22 = .text:0x800E20D0; // type:label scope:global +_savegpr_23 = .text:0x800E20D4; // type:label scope:global +_savegpr_24 = .text:0x800E20D8; // type:label scope:global +_savegpr_25 = .text:0x800E20DC; // type:label scope:global +_savegpr_26 = .text:0x800E20E0; // type:label scope:global +_savegpr_27 = .text:0x800E20E4; // type:label scope:global +_savegpr_28 = .text:0x800E20E8; // type:label scope:global +_savegpr_29 = .text:0x800E20EC; // type:label scope:global +_savegpr_30 = .text:0x800E20F0; // type:label scope:global +_savegpr_31 = .text:0x800E20F4; // type:label scope:global +__restore_gpr = .text:0x800E20FC; // type:function size:0x4C scope:global +_restgpr_14 = .text:0x800E20FC; // type:label scope:global +_restgpr_15 = .text:0x800E2100; // type:label scope:global +_restgpr_16 = .text:0x800E2104; // type:label scope:global +_restgpr_17 = .text:0x800E2108; // type:label scope:global +_restgpr_18 = .text:0x800E210C; // type:label scope:global +_restgpr_19 = .text:0x800E2110; // type:label scope:global +_restgpr_20 = .text:0x800E2114; // type:label scope:global +_restgpr_21 = .text:0x800E2118; // type:label scope:global +_restgpr_22 = .text:0x800E211C; // type:label scope:global +_restgpr_23 = .text:0x800E2120; // type:label scope:global +_restgpr_24 = .text:0x800E2124; // type:label scope:global +_restgpr_25 = .text:0x800E2128; // type:label scope:global +_restgpr_26 = .text:0x800E212C; // type:label scope:global +_restgpr_27 = .text:0x800E2130; // type:label scope:global +_restgpr_28 = .text:0x800E2134; // type:label scope:global +_restgpr_29 = .text:0x800E2138; // type:label scope:global +_restgpr_30 = .text:0x800E213C; // type:label scope:global +_restgpr_31 = .text:0x800E2140; // type:label scope:global +__div2u = .text:0x800E2148; // type:function size:0xEC scope:global +fn_800E2234 = .text:0x800E2234; // type:function size:0x138 +__mod2u = .text:0x800E236C; // type:function size:0xE4 scope:global +fn_800E2450 = .text:0x800E2450; // type:function size:0x10C +fn_800E255C = .text:0x800E255C; // type:function size:0x24 +fn_800E2580 = .text:0x800E2580; // type:function size:0x24 +fn_800E25A4 = .text:0x800E25A4; // type:function size:0x28 +fn_800E25CC = .text:0x800E25CC; // type:function size:0xCC +GetR2__Fv = .text:0x800E2698; // type:function size:0x8 scope:local +__fini_cpp_exceptions = .text:0x800E26A0; // type:function size:0x34 scope:global +__init_cpp_exceptions = .text:0x800E26D4; // type:function size:0x40 scope:global +fn_800E2714 = .text:0x800E2714; // type:function size:0x104 +fn_800E2818 = .text:0x800E2818; // type:function size:0x144 +fn_800E295C = .text:0x800E295C; // type:function size:0x44 +fn_800E29A0 = .text:0x800E29A0; // type:function size:0x410 +fn_800E2DB0 = .text:0x800E2DB0; // type:function size:0x1B4 +fn_800E2F64 = .text:0x800E2F64; // type:function size:0x5C +fn_800E2FC0 = .text:0x800E2FC0; // type:function size:0x50C +fn_800E34CC = .text:0x800E34CC; // type:function size:0x248 +fn_800E3714 = .text:0x800E3714; // type:function size:0x1C0 +fn_800E38D4 = .text:0x800E38D4; // type:function size:0x204 +__unregister_fragment = .text:0x800E3AD8; // type:function size:0x34 scope:global +__register_fragment = .text:0x800E3B0C; // type:function size:0x34 scope:global +fn_800E3B40 = .text:0x800E3B40; // type:function size:0xC +fn_800E3B4C = .text:0x800E3B4C; // type:function size:0xB8 +exit = .text:0x800E3C04; // type:function size:0xCC scope:global +fn_800E3CD0 = .text:0x800E3CD0; // type:function size:0x88 +fn_800E3D58 = .text:0x800E3D58; // type:function size:0x134 +fn_800E3E8C = .text:0x800E3E8C; // type:function size:0x1FC +fn_800E4088 = .text:0x800E4088; // type:function size:0xBC +fn_800E4144 = .text:0x800E4144; // type:function size:0x17C +fn_800E42C0 = .text:0x800E42C0; // type:function size:0x70 +__close_all = .text:0x800E4330; // type:function size:0x98 scope:global +fn_800E43C8 = .text:0x800E43C8; // type:function size:0x1A4 +fn_800E456C = .text:0x800E456C; // type:function size:0x23C +fn_800E47A8 = .text:0x800E47A8; // type:function size:0x340 +fn_800E4AE8 = .text:0x800E4AE8; // type:function size:0xEC +fn_800E4BD4 = .text:0x800E4BD4; // type:function size:0x28C +fn_800E4E60 = .text:0x800E4E60; // type:function size:0x110 +fn_800E4F70 = .text:0x800E4F70; // type:function size:0x70 +fn_800E4FE0 = .text:0x800E4FE0; // type:function size:0x10 +__flush_buffer = .text:0x800E4FF0; // type:function size:0xC4 scope:global +__prep_buffer = .text:0x800E50B4; // type:function size:0x34 scope:global +fn_800E50E8 = .text:0x800E50E8; // type:function size:0x24 +fn_800E510C = .text:0x800E510C; // type:function size:0x18 +__fwrite = .text:0x800E5124; // type:function size:0x30C scope:global +fwrite = .text:0x800E5430; // type:function size:0x20 scope:global +fn_800E5450 = .text:0x800E5450; // type:function size:0x138 +fn_800E5588 = .text:0x800E5588; // type:function size:0xC0 +fseek = .text:0x800E5648; // type:function size:0x20 scope:global +fn_800E5668 = .text:0x800E5668; // type:function size:0x23C +fn_800E58A4 = .text:0x800E58A4; // type:function size:0x70 +wcstombs = .text:0x800E5914; // type:function size:0xA0 scope:global +fn_800E59B4 = .text:0x800E59B4; // type:function size:0xA4 +fn_800E5A58 = .text:0x800E5A58; // type:function size:0x4C +__memrchr = .text:0x800E5AA4; // type:function size:0x2C scope:global +memchr = .text:0x800E5AD0; // type:function size:0x2C scope:global +fn_800E5AFC = .text:0x800E5AFC; // type:function size:0xCC +fn_800E5BC8 = .text:0x800E5BC8; // type:function size:0xB0 +fn_800E5C78 = .text:0x800E5C78; // type:function size:0xC4 +fn_800E5D3C = .text:0x800E5D3C; // type:function size:0xAC +fn_800E5DE8 = .text:0x800E5DE8; // type:function size:0xC0 +__stdio_atexit = .text:0x800E5EA8; // type:function size:0x10 scope:global +fn_800E5EB8 = .text:0x800E5EB8; // type:function size:0xE0 +fn_800E5F98 = .text:0x800E5F98; // type:function size:0x78 +fn_800E6010 = .text:0x800E6010; // type:function size:0x74 +vprintf = .text:0x800E6084; // type:function size:0x7C scope:global +fn_800E6100 = .text:0x800E6100; // type:function size:0xCC +fn_800E61CC = .text:0x800E61CC; // type:function size:0x6C +__FileWrite = .text:0x800E6238; // type:function size:0x58 scope:global +__pformatter = .text:0x800E6290; // type:function size:0x774 scope:local +float2str = .text:0x800E6A04; // type:function size:0x6EC scope:local +fn_800E70F0 = .text:0x800E70F0; // type:function size:0x12C +double2hex = .text:0x800E721C; // type:function size:0x338 scope:local +longlong2str = .text:0x800E7554; // type:function size:0x2DC scope:local +long2str = .text:0x800E7830; // type:function size:0x220 scope:local +parse_format = .text:0x800E7A50; // type:function size:0x504 scope:local +fn_800E7F54 = .text:0x800E7F54; // type:function size:0xB0 +strchr = .text:0x800E8004; // type:function size:0x30 scope:global +fn_800E8034 = .text:0x800E8034; // type:function size:0x40 +fn_800E8074 = .text:0x800E8074; // type:function size:0x128 +fn_800E819C = .text:0x800E819C; // type:function size:0x44 +fn_800E81E0 = .text:0x800E81E0; // type:function size:0xB8 +strlen = .text:0x800E8298; // type:function size:0x1C scope:global +fn_800E82B4 = .text:0x800E82B4; // type:function size:0x8 +fn_800E82BC = .text:0x800E82BC; // type:function size:0xC4 +fwide = .text:0x800E8380; // type:function size:0x88 scope:global +fn_800E8408 = .text:0x800E8408; // type:function size:0x310 +fn_800E8718 = .text:0x800E8718; // type:function size:0x264 +fn_800E897C = .text:0x800E897C; // type:function size:0x290 +fn_800E8C0C = .text:0x800E8C0C; // type:function size:0x33C +fn_800E8F48 = .text:0x800E8F48; // type:function size:0x88C +fn_800E97D4 = .text:0x800E97D4; // type:function size:0x3A0 +fn_800E9B74 = .text:0x800E9B74; // type:function size:0xF4 +fn_800E9C68 = .text:0x800E9C68; // type:function size:0xE54 +fn_800EAABC = .text:0x800EAABC; // type:function size:0xA0 +fn_800EAB5C = .text:0x800EAB5C; // type:function size:0x214 +fn_800EAD70 = .text:0x800EAD70; // type:function size:0x200 +fn_800EAF70 = .text:0x800EAF70; // type:function size:0x28 +fn_800EAF98 = .text:0x800EAF98; // type:function size:0xD4 +fn_800EB06C = .text:0x800EB06C; // type:function size:0x148 +fn_800EB1B4 = .text:0x800EB1B4; // type:function size:0x8C +fn_800EB240 = .text:0x800EB240; // type:function size:0x1C4 +fn_800EB404 = .text:0x800EB404; // type:function size:0xFC +fn_800EB500 = .text:0x800EB500; // type:function size:0xD8 +fn_800EB5D8 = .text:0x800EB5D8; // type:function size:0x78 +fn_800EB650 = .text:0x800EB650; // type:function size:0x20 +fn_800EB670 = .text:0x800EB670; // type:function size:0x20 +fn_800EB690 = .text:0x800EB690; // type:function size:0x20 +fn_800EB6B0 = .text:0x800EB6B0; // type:function size:0x20 +fn_800EB6D0 = .text:0x800EB6D0; // type:function size:0x20 +fn_800EB6F0 = .text:0x800EB6F0; // type:function size:0x24 +fn_800EB714 = .text:0x800EB714; // type:function size:0x24 +fn_800EB738 = .text:0x800EB738; // type:function size:0x24 +fn_800EB75C = .text:0x800EB75C; // type:function size:0x24 +fn_800EB780 = .text:0x800EB780; // type:function size:0x24 +TRKNubMainLoop = .text:0x800EB7A4; // type:function size:0xF8 scope:global +TRKDestructEvent = .text:0x800EB89C; // type:function size:0x24 scope:global +fn_800EB8C0 = .text:0x800EB8C0; // type:function size:0x18 +fn_800EB8D8 = .text:0x800EB8D8; // type:function size:0xE0 +TRKGetNextEvent = .text:0x800EB9B8; // type:function size:0xB4 scope:global +TRKInitializeEventQueue = .text:0x800EBA6C; // type:function size:0x58 scope:global +TRKNubWelcome = .text:0x800EBAC4; // type:function size:0x28 scope:global +TRKTerminateNub = .text:0x800EBAEC; // type:function size:0x24 scope:global +TRKInitializeNub = .text:0x800EBB10; // type:function size:0x134 scope:global +fn_800EBC44 = .text:0x800EBC44; // type:function size:0x1DC +fn_800EBE20 = .text:0x800EBE20; // type:function size:0xF0 +fn_800EBF10 = .text:0x800EBF10; // type:function size:0x98 +fn_800EBFA8 = .text:0x800EBFA8; // type:function size:0xE8 +fn_800EC090 = .text:0x800EC090; // type:function size:0xC8 +fn_800EC158 = .text:0x800EC158; // type:function size:0xB8 +fn_800EC210 = .text:0x800EC210; // type:function size:0x80 +fn_800EC290 = .text:0x800EC290; // type:function size:0xA8 +fn_800EC338 = .text:0x800EC338; // type:function size:0x68 +fn_800EC3A0 = .text:0x800EC3A0; // type:function size:0x88 +fn_800EC428 = .text:0x800EC428; // type:function size:0x64 +fn_800EC48C = .text:0x800EC48C; // type:function size:0x54 +fn_800EC4E0 = .text:0x800EC4E0; // type:function size:0x8C +fn_800EC56C = .text:0x800EC56C; // type:function size:0xA4 +fn_800EC610 = .text:0x800EC610; // type:function size:0x30 +fn_800EC640 = .text:0x800EC640; // type:function size:0x40 +fn_800EC680 = .text:0x800EC680; // type:function size:0x64 +TRKGetBuffer = .text:0x800EC6E4; // type:function size:0x2C scope:global +fn_800EC710 = .text:0x800EC710; // type:function size:0xC8 +TRKInitializeMessageBuffers = .text:0x800EC7D8; // type:function size:0x74 scope:global +fn_800EC84C = .text:0x800EC84C; // type:function size:0x8 +TRKInitializeSerialHandler = .text:0x800EC854; // type:function size:0x24 scope:global +fn_800EC878 = .text:0x800EC878; // type:function size:0x50 +TRKGetInput = .text:0x800EC8C8; // type:function size:0x98 scope:global +fn_800EC960 = .text:0x800EC960; // type:function size:0x2B8 +usr_put_initialize = .text:0x800ECC18; // type:function size:0x4 scope:global +fn_800ECC1C = .text:0x800ECC1C; // type:function size:0x88 +TRKDispatchMessage = .text:0x800ECCA4; // type:function size:0x84 scope:global +TRKInitializeDispatcher = .text:0x800ECD28; // type:function size:0x18 scope:global +fn_800ECD40 = .text:0x800ECD40; // type:function size:0x1A4 +fn_800ECEE4 = .text:0x800ECEE4; // type:function size:0x100 +fn_800ECFE4 = .text:0x800ECFE4; // type:function size:0x530 +fn_800ED514 = .text:0x800ED514; // type:function size:0x154 +fn_800ED668 = .text:0x800ED668; // type:function size:0x2F8 +fn_800ED960 = .text:0x800ED960; // type:function size:0x3C8 +fn_800EDD28 = .text:0x800EDD28; // type:function size:0x3CC +fn_800EE0F4 = .text:0x800EE0F4; // type:function size:0x420 +fn_800EE514 = .text:0x800EE514; // type:function size:0x410 +fn_800EE924 = .text:0x800EE924; // type:function size:0x398 +fn_800EECBC = .text:0x800EECBC; // type:function size:0x230 +fn_800EEEEC = .text:0x800EEEEC; // type:function size:0x2D8 +fn_800EF1C4 = .text:0x800EF1C4; // type:function size:0xB8 +fn_800EF27C = .text:0x800EF27C; // type:function size:0xE4 +fn_800EF360 = .text:0x800EF360; // type:function size:0xBC +fn_800EF41C = .text:0x800EF41C; // type:function size:0xB0 +fn_800EF4CC = .text:0x800EF4CC; // type:function size:0xB8 +fn_800EF584 = .text:0x800EF584; // type:function size:0xC +fn_800EF590 = .text:0x800EF590; // type:function size:0x10 +fn_800EF5A0 = .text:0x800EF5A0; // type:function size:0x190 +fn_800EF730 = .text:0x800EF730; // type:function size:0x120 +fn_800EF850 = .text:0x800EF850; // type:function size:0x1A8 +fn_800EF9F8 = .text:0x800EF9F8; // type:function size:0x1A4 +fn_800EFB9C = .text:0x800EFB9C; // type:function size:0x2C4 +fn_800EFE60 = .text:0x800EFE60; // type:function size:0x8 +fn_800EFE68 = .text:0x800EFE68; // type:function size:0x8 +fn_800EFE70 = .text:0x800EFE70; // type:function size:0x8 +fn_800EFE78 = .text:0x800EFE78; // type:function size:0xD8 +fn_800EFF50 = .text:0x800EFF50; // type:function size:0x38 +fn_800EFF88 = .text:0x800EFF88; // type:function size:0xBC +fn_800F0044 = .text:0x800F0044; // type:function size:0x8 +fn_800F004C = .text:0x800F004C; // type:function size:0x8 +fn_800F0054 = .text:0x800F0054; // type:function size:0x3C +TRKInterruptHandler = .text:0x800F0090; // type:function size:0x194 scope:global +TRKExceptionHandler = .text:0x800F0224; // type:function size:0x9C scope:global +TRKSwapAndGo = .text:0x800F02C0; // type:function size:0xC4 scope:global +TRKInterruptHandlerEnableInterrupts = .text:0x800F0384; // type:function size:0x54 scope:global +TRKTargetSetInputPendingPtr = .text:0x800F03D8; // type:function size:0x10 scope:global +fn_800F03E8 = .text:0x800F03E8; // type:function size:0x21C +fn_800F0604 = .text:0x800F0604; // type:function size:0x18 +TRKTargetSetStopped = .text:0x800F061C; // type:function size:0x10 scope:global +TRKTargetStopped = .text:0x800F062C; // type:function size:0x10 scope:global +fn_800F063C = .text:0x800F063C; // type:function size:0x3C +TRKTargetSupportRequest = .text:0x800F0678; // type:function size:0x208 scope:global +fn_800F0880 = .text:0x800F0880; // type:function size:0x10 +fn_800F0890 = .text:0x800F0890; // type:function size:0x7C +fn_800F090C = .text:0x800F090C; // type:function size:0x6C +fn_800F0978 = .text:0x800F0978; // type:function size:0xAC +fn_800F0A24 = .text:0x800F0A24; // type:function size:0x124 +TRKTargetInterrupt = .text:0x800F0B48; // type:function size:0x15C scope:global +TRKPostInterruptEvent = .text:0x800F0CA4; // type:function size:0xC0 scope:global +fn_800F0D64 = .text:0x800F0D64; // type:function size:0x60 +fn_800F0DC4 = .text:0x800F0DC4; // type:function size:0xA4 +fn_800F0E68 = .text:0x800F0E68; // type:function size:0x24 +fn_800F0E8C = .text:0x800F0E8C; // type:function size:0x438 +fn_800F12C4 = .text:0x800F12C4; // type:function size:0x170 +fn_800F1434 = .text:0x800F1434; // type:function size:0x13C +fn_800F1570 = .text:0x800F1570; // type:function size:0xF4 +fn_800F1664 = .text:0x800F1664; // type:function size:0x14C +fn_800F17B0 = .text:0x800F17B0; // type:function size:0x124 +fn_800F18E0 = .text:0x800F18E0; // type:function size:0x8 +fn_800F18E8 = .text:0x800F18E8; // type:function size:0x8 +fn_800F18F0 = .text:0x800F18F0; // type:function size:0x8 +fn_800F18F8 = .text:0x800F18F8; // type:function size:0x8 +InitMetroTRK = .text:0x800F1900; // type:function size:0x94 scope:global +TRKInitializeTarget = .text:0x800F1994; // type:function size:0x4C scope:global +fn_800F19E0 = .text:0x800F19E0; // type:function size:0x40 +EnableMetroTRKInterrupts = .text:0x800F1A20; // type:function size:0x20 scope:global +TRKSaveExtended1Block = .text:0x800F1A40; // type:function size:0x1B8 scope:global +TRKRestoreExtended1Block = .text:0x800F1BF8; // type:function size:0x1B8 scope:global +fn_800F1DB0 = .text:0x800F1DB0; // type:function size:0x8 +TRK_main = .text:0x800F1DB8; // type:function size:0x44 scope:global +TRKLoadContext = .text:0x800F1DFC; // type:function size:0x88 scope:global +TRKUARTInterruptHandler = .text:0x800F1E84; // type:function size:0x4 scope:global +TRK_board_display = .text:0x800F1E88; // type:function size:0x24 scope:global +UnreserveEXI2Port = .text:0x800F1EAC; // type:function size:0x30 scope:global +ReserveEXI2Port = .text:0x800F1EDC; // type:function size:0x30 scope:global +fn_800F1F0C = .text:0x800F1F0C; // type:function size:0xF0 +fn_800F1FFC = .text:0x800F1FFC; // type:function size:0x28 +fn_800F2024 = .text:0x800F2024; // type:function size:0xE0 +fn_800F2104 = .text:0x800F2104; // type:function size:0x30 +TRKInitializeIntDrivenUART = .text:0x800F2134; // type:function size:0x3C scope:global +InitMetroTRKCommTable = .text:0x800F2170; // type:function size:0x100 scope:global +TRKEXICallBack = .text:0x800F2270; // type:function size:0x38 scope:global +TRKTargetContinue = .text:0x800F22A8; // type:function size:0x34 scope:global +fn_800F22DC = .text:0x800F22DC; // type:function size:0x10 +fn_800F22EC = .text:0x800F22EC; // type:function size:0xC +fn_800F22F8 = .text:0x800F22F8; // type:function size:0xBC +fn_800F23B4 = .text:0x800F23B4; // type:function size:0xBC +fn_800F2470 = .text:0x800F2470; // type:function size:0x68 +fn_800F24D8 = .text:0x800F24D8; // type:function size:0xAC4 +fn_800F2F9C = .text:0x800F2F9C; // type:function size:0x64 +fn_800F3000 = .text:0x800F3000; // type:function size:0x27C +fn_800F327C = .text:0x800F327C; // type:function size:0x2B0 +fn_800F352C = .text:0x800F352C; // type:function size:0x90 +fn_800F35BC = .text:0x800F35BC; // type:function size:0xE4 +fn_800F36A0 = .text:0x800F36A0; // type:function size:0x108 +fn_800F37A8 = .text:0x800F37A8; // type:function size:0xBC +fn_800F3864 = .text:0x800F3864; // type:function size:0x1CC +fn_800F3A30 = .text:0x800F3A30; // type:function size:0xB58 +fn_800F4588 = .text:0x800F4588; // type:function size:0x218 +fn_800F47A0 = .text:0x800F47A0; // type:function size:0xA94 +fn_800F5234 = .text:0x800F5234; // type:function size:0x174 +fn_800F53A8 = .text:0x800F53A8; // type:function size:0x49C +fn_800F5844 = .text:0x800F5844; // type:function size:0x9F4 +fn_800F6238 = .text:0x800F6238; // type:function size:0x1A8 +fn_800F63E0 = .text:0x800F63E0; // type:function size:0x44 +fn_800F6424 = .text:0x800F6424; // type:function size:0x34 +fn_800F6458 = .text:0x800F6458; // type:function size:0x78 +fn_800F64D0 = .text:0x800F64D0; // type:function size:0x2A0 +fn_800F6770 = .text:0x800F6770; // type:function size:0x3C0 +fn_800F6B30 = .text:0x800F6B30; // type:function size:0x25C +fn_800F6D8C = .text:0x800F6D8C; // type:function size:0x45C +fn_800F71E8 = .text:0x800F71E8; // type:function size:0x744 +fn_800F792C = .text:0x800F792C; // type:function size:0x6FC +fn_800F8028 = .text:0x800F8028; // type:function size:0x150 +fn_800F8178 = .text:0x800F8178; // type:function size:0x64 +fn_800F81DC = .text:0x800F81DC; // type:function size:0x44 +fn_800F8220 = .text:0x800F8220; // type:function size:0x28 +fn_800F8248 = .text:0x800F8248; // type:function size:0x510 +fn_800F8758 = .text:0x800F8758; // type:function size:0x34 +fn_800F878C = .text:0x800F878C; // type:function size:0xC8 +fn_800F8854 = .text:0x800F8854; // type:function size:0xE4 +fn_800F8938 = .text:0x800F8938; // type:function size:0xE4 +fn_800F8A1C = .text:0x800F8A1C; // type:function size:0x84 +fn_800F8AA0 = .text:0x800F8AA0; // type:function size:0x88 +fn_800F8B28 = .text:0x800F8B28; // type:function size:0x530 +fn_800F9058 = .text:0x800F9058; // type:function size:0x54 +fn_800F90AC = .text:0x800F90AC; // type:function size:0x28 +fn_800F90D4 = .text:0x800F90D4; // type:function size:0xD0 +fn_800F91A4 = .text:0x800F91A4; // type:function size:0x574 +fn_800F9718 = .text:0x800F9718; // type:function size:0x24 +fn_800F973C = .text:0x800F973C; // type:function size:0x30 +fn_800F976C = .text:0x800F976C; // type:function size:0x38 +fn_800F97A4 = .text:0x800F97A4; // type:function size:0x38 +fn_800F97DC = .text:0x800F97DC; // type:function size:0x48 +fn_800F9824 = .text:0x800F9824; // type:function size:0x38 +fn_800F985C = .text:0x800F985C; // type:function size:0x58 +fn_800F98B4 = .text:0x800F98B4; // type:function size:0x68 +fn_800F991C = .text:0x800F991C; // type:function size:0x84 +fn_800F99A0 = .text:0x800F99A0; // type:function size:0x1C +fn_800F99BC = .text:0x800F99BC; // type:function size:0x60 +fn_800F9A1C = .text:0x800F9A1C; // type:function size:0x60 +fn_800F9A7C = .text:0x800F9A7C; // type:function size:0x40 +fn_800F9ABC = .text:0x800F9ABC; // type:function size:0xE0 +fn_800F9B9C = .text:0x800F9B9C; // type:function size:0x40 +fn_800F9BDC = .text:0x800F9BDC; // type:function size:0x50 +fn_800F9C2C = .text:0x800F9C2C; // type:function size:0x60 +fn_800F9C8C = .text:0x800F9C8C; // type:function size:0x94 +fn_800F9D20 = .text:0x800F9D20; // type:function size:0xEC +fn_800F9E0C = .text:0x800F9E0C; // type:function size:0x158 +fn_800F9F64 = .text:0x800F9F64; // type:function size:0xA8 +fn_800FA00C = .text:0x800FA00C; // type:function size:0xF0 +fn_800FA0FC = .text:0x800FA0FC; // type:function size:0x20 +fn_800FA11C = .text:0x800FA11C; // type:function size:0x20 +fn_800FA13C = .text:0x800FA13C; // type:function size:0xBC +fn_800FA1F8 = .text:0x800FA1F8; // type:function size:0x8C +fn_800FA284 = .text:0x800FA284; // type:function size:0x8AC +fn_800FAB30 = .text:0x800FAB30; // type:function size:0x4 +fn_800FAB34 = .text:0x800FAB34; // type:function size:0x84 +fn_800FABB8 = .text:0x800FABB8; // type:function size:0x160 +fn_800FAD18 = .text:0x800FAD18; // type:function size:0x2C4 +fn_800FAFDC = .text:0x800FAFDC; // type:function size:0x34 +fn_800FB010 = .text:0x800FB010; // type:function size:0x44 +fn_800FB054 = .text:0x800FB054; // type:function size:0x130 +fn_800FB184 = .text:0x800FB184; // type:function size:0x458 +fn_800FB5DC = .text:0x800FB5DC; // type:function size:0x44 +fn_800FB620 = .text:0x800FB620; // type:function size:0x6E8 +fn_800FBD08 = .text:0x800FBD08; // type:function size:0x560 +fn_800FC268 = .text:0x800FC268; // type:function size:0x654 +fn_800FC8BC = .text:0x800FC8BC; // type:function size:0x6B8 +fn_800FCF74 = .text:0x800FCF74; // type:function size:0x634 +fn_800FD5A8 = .text:0x800FD5A8; // type:function size:0x700 +fn_800FDCA8 = .text:0x800FDCA8; // type:function size:0x1F0 +fn_800FDE98 = .text:0x800FDE98; // type:function size:0x17C +fn_800FE014 = .text:0x800FE014; // type:function size:0x248 +fn_800FE25C = .text:0x800FE25C; // type:function size:0x1C4 +fn_800FE420 = .text:0x800FE420; // type:function size:0x204 +fn_800FE624 = .text:0x800FE624; // type:function size:0x17C +fn_800FE7A0 = .text:0x800FE7A0; // type:function size:0x188 +fn_800FE928 = .text:0x800FE928; // type:function size:0x2C8 +fn_800FEBF0 = .text:0x800FEBF0; // type:function size:0xD8 +fn_800FECC8 = .text:0x800FECC8; // type:function size:0x98 +fn_800FED60 = .text:0x800FED60; // type:function size:0x11C +fn_800FEE7C = .text:0x800FEE7C; // type:function size:0x15C +fn_800FEFD8 = .text:0x800FEFD8; // type:function size:0x304 +fn_800FF2DC = .text:0x800FF2DC; // type:function size:0x284 +fn_800FF560 = .text:0x800FF560; // type:function size:0x10 +fn_800FF570 = .text:0x800FF570; // type:function size:0x8C +fn_800FF5FC = .text:0x800FF5FC; // type:function size:0x10 +fn_800FF60C = .text:0x800FF60C; // type:function size:0x128 +fn_800FF734 = .text:0x800FF734; // type:function size:0x10 +fn_800FF744 = .text:0x800FF744; // type:function size:0x5C +fn_800FF7A0 = .text:0x800FF7A0; // type:function size:0x5C +fn_800FF7FC = .text:0x800FF7FC; // type:function size:0x10 +fn_800FF80C = .text:0x800FF80C; // type:function size:0x7C +fn_800FF888 = .text:0x800FF888; // type:function size:0x10 +fn_800FF898 = .text:0x800FF898; // type:function size:0x9C +fn_800FF934 = .text:0x800FF934; // type:function size:0xE4 +fn_800FFA18 = .text:0x800FFA18; // type:function size:0x20 +fn_800FFA38 = .text:0x800FFA38; // type:function size:0x2F0 +fn_800FFD28 = .text:0x800FFD28; // type:function size:0xD0 +fn_800FFDF8 = .text:0x800FFDF8; // type:function size:0x154 +fn_800FFF4C = .text:0x800FFF4C; // type:function size:0x18C +fn_801000D8 = .text:0x801000D8; // type:function size:0xD8 +fn_801001B0 = .text:0x801001B0; // type:function size:0x1FC +fn_801003AC = .text:0x801003AC; // type:function size:0x17C +fn_80100528 = .text:0x80100528; // type:function size:0x1A0 +fn_801006C8 = .text:0x801006C8; // type:function size:0x258 +fn_80100920 = .text:0x80100920; // type:function size:0x12C +fn_80100A4C = .text:0x80100A4C; // type:function size:0x27C +fn_80100CC8 = .text:0x80100CC8; // type:function size:0x9C +fn_80100D64 = .text:0x80100D64; // type:function size:0x9C +fn_80100E00 = .text:0x80100E00; // type:function size:0x134 +fn_80100F34 = .text:0x80100F34; // type:function size:0x130 +fn_80101064 = .text:0x80101064; // type:function size:0x13C +fn_801011A0 = .text:0x801011A0; // type:function size:0x19C +fn_8010133C = .text:0x8010133C; // type:function size:0x104 +fn_80101440 = .text:0x80101440; // type:function size:0x104 +fn_80101544 = .text:0x80101544; // type:function size:0x104 +fn_80101648 = .text:0x80101648; // type:function size:0x104 +fn_8010174C = .text:0x8010174C; // type:function size:0x104 +fn_80101850 = .text:0x80101850; // type:function size:0x104 +fn_80101954 = .text:0x80101954; // type:function size:0x104 +fn_80101A58 = .text:0x80101A58; // type:function size:0x104 +fn_80101B5C = .text:0x80101B5C; // type:function size:0x104 +fn_80101C60 = .text:0x80101C60; // type:function size:0x104 +fn_80101D64 = .text:0x80101D64; // type:function size:0x104 +fn_80101E68 = .text:0x80101E68; // type:function size:0x104 +fn_80101F6C = .text:0x80101F6C; // type:function size:0x104 +fn_80102070 = .text:0x80102070; // type:function size:0x17C +fn_801021EC = .text:0x801021EC; // type:function size:0x17C +fn_80102368 = .text:0x80102368; // type:function size:0x164 +fn_801024CC = .text:0x801024CC; // type:function size:0x68 +fn_80102534 = .text:0x80102534; // type:function size:0x220 +fn_80102754 = .text:0x80102754; // type:function size:0x14C +fn_801028A0 = .text:0x801028A0; // type:function size:0xBC +fn_8010295C = .text:0x8010295C; // type:function size:0x244 +fn_80102BA0 = .text:0x80102BA0; // type:function size:0x80 +fn_80102C20 = .text:0x80102C20; // type:function size:0xDC +fn_80102CFC = .text:0x80102CFC; // type:function size:0xF58 +fn_80103C54 = .text:0x80103C54; // type:function size:0x150 +fn_80103DA4 = .text:0x80103DA4; // type:function size:0xAC +fn_80103E50 = .text:0x80103E50; // type:function size:0xF0 +fn_80103F40 = .text:0x80103F40; // type:function size:0x108 +fn_80104048 = .text:0x80104048; // type:function size:0xA4 +fn_801040EC = .text:0x801040EC; // type:function size:0x108 +fn_801041F4 = .text:0x801041F4; // type:function size:0xFC +fn_801042F0 = .text:0x801042F0; // type:function size:0x438 +fn_80104728 = .text:0x80104728; // type:function size:0x68 +fn_80104790 = .text:0x80104790; // type:function size:0xE0 +fn_80104870 = .text:0x80104870; // type:function size:0x350 +fn_80104BC0 = .text:0x80104BC0; // type:function size:0x14 +fn_80104BD4 = .text:0x80104BD4; // type:function size:0x104 +fn_80104CD8 = .text:0x80104CD8; // type:function size:0x50 +fn_80104D28 = .text:0x80104D28; // type:function size:0x24C +fn_80104F74 = .text:0x80104F74; // type:function size:0x460 +fn_801053D4 = .text:0x801053D4; // type:function size:0x1C4 +fn_80105598 = .text:0x80105598; // type:function size:0x2A0 +fn_80105838 = .text:0x80105838; // type:function size:0xFC +fn_80105934 = .text:0x80105934; // type:function size:0x218 +fn_80105B4C = .text:0x80105B4C; // type:function size:0x234 +fn_80105D80 = .text:0x80105D80; // type:function size:0xC4 +fn_80105E44 = .text:0x80105E44; // type:function size:0x15C +fn_80105FA0 = .text:0x80105FA0; // type:function size:0x74 +fn_80106014 = .text:0x80106014; // type:function size:0x54 +fn_80106068 = .text:0x80106068; // type:function size:0x74 +fn_801060DC = .text:0x801060DC; // type:function size:0x144 +fn_80106220 = .text:0x80106220; // type:function size:0x3C +fn_8010625C = .text:0x8010625C; // type:function size:0xE4 +fn_80106340 = .text:0x80106340; // type:function size:0x58 +fn_80106398 = .text:0x80106398; // type:function size:0x26C +fn_80106604 = .text:0x80106604; // type:function size:0x28 +fn_8010662C = .text:0x8010662C; // type:function size:0x150 +fn_8010677C = .text:0x8010677C; // type:function size:0x168 +fn_801068E4 = .text:0x801068E4; // type:function size:0x198 +fn_80106A7C = .text:0x80106A7C; // type:function size:0x84 +fn_80106B00 = .text:0x80106B00; // type:function size:0xBC +fn_80106BBC = .text:0x80106BBC; // type:function size:0x248 +fn_80106E04 = .text:0x80106E04; // type:function size:0xA8 +fn_80106EAC = .text:0x80106EAC; // type:function size:0x1F8 +fn_801070A4 = .text:0x801070A4; // type:function size:0x1E4 +fn_80107288 = .text:0x80107288; // type:function size:0xC +fn_80107294 = .text:0x80107294; // type:function size:0x27C +fn_80107510 = .text:0x80107510; // type:function size:0x32C +fn_8010783C = .text:0x8010783C; // type:function size:0x33C +fn_80107B78 = .text:0x80107B78; // type:function size:0x14C +fn_80107CC4 = .text:0x80107CC4; // type:function size:0x11C +fn_80107DE0 = .text:0x80107DE0; // type:function size:0x3B4 +fn_80108194 = .text:0x80108194; // type:function size:0x38 +fn_801081CC = .text:0x801081CC; // type:function size:0xE0 +fn_801082AC = .text:0x801082AC; // type:function size:0x150 +fn_801083FC = .text:0x801083FC; // type:function size:0x20 +fn_8010841C = .text:0x8010841C; // type:function size:0xF4 +fn_80108510 = .text:0x80108510; // type:function size:0x48 +fn_80108558 = .text:0x80108558; // type:function size:0x74 +fn_801085CC = .text:0x801085CC; // type:function size:0xAC +fn_80108678 = .text:0x80108678; // type:function size:0x2DC +fn_80108954 = .text:0x80108954; // type:function size:0x258 +fn_80108BAC = .text:0x80108BAC; // type:function size:0x21B8 +fn_8010AD64 = .text:0x8010AD64; // type:function size:0x44 +fn_8010ADA8 = .text:0x8010ADA8; // type:function size:0xA0 +fn_8010AE48 = .text:0x8010AE48; // type:function size:0x60 +fn_8010AEA8 = .text:0x8010AEA8; // type:function size:0xC8 +fn_8010AF70 = .text:0x8010AF70; // type:function size:0xA8 +fn_8010B018 = .text:0x8010B018; // type:function size:0x84 +fn_8010B09C = .text:0x8010B09C; // type:function size:0x158 +fn_8010B1F4 = .text:0x8010B1F4; // type:function size:0x6F0 +fn_8010B8E4 = .text:0x8010B8E4; // type:function size:0x4B4 +fn_8010BD98 = .text:0x8010BD98; // type:function size:0x51C +fn_8010C2B4 = .text:0x8010C2B4; // type:function size:0x130 +fn_8010C3E4 = .text:0x8010C3E4; // type:function size:0x20 +fn_8010C404 = .text:0x8010C404; // type:function size:0x3F8 +fn_8010C7FC = .text:0x8010C7FC; // type:function size:0x50 +fn_8010C84C = .text:0x8010C84C; // type:function size:0xA8 +fn_8010C8F4 = .text:0x8010C8F4; // type:function size:0x5C +fn_8010C950 = .text:0x8010C950; // type:function size:0xFC +fn_8010CA4C = .text:0x8010CA4C; // type:function size:0x204 +fn_8010CC50 = .text:0x8010CC50; // type:function size:0x230 +fn_8010CE80 = .text:0x8010CE80; // type:function size:0xD0 +fn_8010CF50 = .text:0x8010CF50; // type:function size:0x14C +fn_8010D09C = .text:0x8010D09C; // type:function size:0x3B0 +fn_8010D44C = .text:0x8010D44C; // type:function size:0x82C +fn_8010DC78 = .text:0x8010DC78; // type:function size:0x38 +fn_8010DCB0 = .text:0x8010DCB0; // type:function size:0x4 +fn_8010DCB4 = .text:0x8010DCB4; // type:function size:0x118 +fn_8010DDCC = .text:0x8010DDCC; // type:function size:0x34 +fn_8010DE00 = .text:0x8010DE00; // type:function size:0x8 +fn_8010DE08 = .text:0x8010DE08; // type:function size:0xAC +fn_8010DEB4 = .text:0x8010DEB4; // type:function size:0xB4 +fn_8010DF68 = .text:0x8010DF68; // type:function size:0x64 +fn_8010DFCC = .text:0x8010DFCC; // type:function size:0x1FC +fn_8010E1C8 = .text:0x8010E1C8; // type:function size:0x24 +fn_8010E1EC = .text:0x8010E1EC; // type:function size:0x608 +fn_8010E7F4 = .text:0x8010E7F4; // type:function size:0x124 +fn_8010E918 = .text:0x8010E918; // type:function size:0xF0 +fn_8010EA08 = .text:0x8010EA08; // type:function size:0x2C4 +fn_8010ECCC = .text:0x8010ECCC; // type:function size:0x34 +fn_8010ED00 = .text:0x8010ED00; // type:function size:0x3C +fn_8010ED3C = .text:0x8010ED3C; // type:function size:0x98 +fn_8010EDD4 = .text:0x8010EDD4; // type:function size:0x114 +fn_8010EEE8 = .text:0x8010EEE8; // type:function size:0x3C +fn_8010EF24 = .text:0x8010EF24; // type:function size:0x3C +fn_8010EF60 = .text:0x8010EF60; // type:function size:0x4A0 +fn_8010F400 = .text:0x8010F400; // type:function size:0x48 +fn_8010F448 = .text:0x8010F448; // type:function size:0x48 +fn_8010F490 = .text:0x8010F490; // type:function size:0x48 +fn_8010F4D8 = .text:0x8010F4D8; // type:function size:0x48 +fn_8010F520 = .text:0x8010F520; // type:function size:0x48 +fn_8010F568 = .text:0x8010F568; // type:function size:0x48 +fn_8010F5B0 = .text:0x8010F5B0; // type:function size:0x48 +fn_8010F5F8 = .text:0x8010F5F8; // type:function size:0x48 +fn_8010F640 = .text:0x8010F640; // type:function size:0x48 +fn_8010F688 = .text:0x8010F688; // type:function size:0x48 +fn_8010F6D0 = .text:0x8010F6D0; // type:function size:0x48 +fn_8010F718 = .text:0x8010F718; // type:function size:0x48 +fn_8010F760 = .text:0x8010F760; // type:function size:0xB4 +fn_8010F814 = .text:0x8010F814; // type:function size:0xB4 +fn_8010F8C8 = .text:0x8010F8C8; // type:function size:0x284 +fn_8010FB4C = .text:0x8010FB4C; // type:function size:0x70 +fn_8010FBBC = .text:0x8010FBBC; // type:function size:0xFC +fn_8010FCB8 = .text:0x8010FCB8; // type:function size:0x1E4 +fn_8010FE9C = .text:0x8010FE9C; // type:function size:0x1C +fn_8010FEB8 = .text:0x8010FEB8; // type:function size:0x8C +fn_8010FF44 = .text:0x8010FF44; // type:function size:0xA4 +fn_8010FFE8 = .text:0x8010FFE8; // type:function size:0x10 +fn_8010FFF8 = .text:0x8010FFF8; // type:function size:0x48 +fn_80110040 = .text:0x80110040; // type:function size:0x8 +fn_80110048 = .text:0x80110048; // type:function size:0x154 +fn_8011019C = .text:0x8011019C; // type:function size:0xB8 +fn_80110254 = .text:0x80110254; // type:function size:0x34 +fn_80110288 = .text:0x80110288; // type:function size:0x8 +fn_80110290 = .text:0x80110290; // type:function size:0x8 +fn_80110298 = .text:0x80110298; // type:function size:0x20 +fn_801102B8 = .text:0x801102B8; // type:function size:0x8 +fn_801102C0 = .text:0x801102C0; // type:function size:0x14 +fn_801102D4 = .text:0x801102D4; // type:function size:0x1B4 +fn_80110488 = .text:0x80110488; // type:function size:0x50 +fn_801104D8 = .text:0x801104D8; // type:function size:0x1AC +fn_80110684 = .text:0x80110684; // type:function size:0x20 +fn_801106A4 = .text:0x801106A4; // type:function size:0x14 +fn_801106B8 = .text:0x801106B8; // type:function size:0x14 +fn_801106CC = .text:0x801106CC; // type:function size:0x14 +fn_801106E0 = .text:0x801106E0; // type:function size:0x14 +fn_801106F4 = .text:0x801106F4; // type:function size:0x3C +fn_80110730 = .text:0x80110730; // type:function size:0x28 +fn_80110758 = .text:0x80110758; // type:function size:0x78 +fn_801107D0 = .text:0x801107D0; // type:function size:0x2C +fn_801107FC = .text:0x801107FC; // type:function size:0x2C +fn_80110828 = .text:0x80110828; // type:function size:0x5C +fn_80110884 = .text:0x80110884; // type:function size:0x2C0 +fn_80110B44 = .text:0x80110B44; // type:function size:0x2C +fn_80110B70 = .text:0x80110B70; // type:function size:0x28 +fn_80110B98 = .text:0x80110B98; // type:function size:0x20 +fn_80110BB8 = .text:0x80110BB8; // type:function size:0x20 +fn_80110BD8 = .text:0x80110BD8; // type:function size:0x34 +fn_80110C0C = .text:0x80110C0C; // type:function size:0x34 +fn_80110C40 = .text:0x80110C40; // type:function size:0x2C +fn_80110C6C = .text:0x80110C6C; // type:function size:0xA4 +fn_80110D10 = .text:0x80110D10; // type:function size:0x90 +fn_80110DA0 = .text:0x80110DA0; // type:function size:0x20 +fn_80110DC0 = .text:0x80110DC0; // type:function size:0x20 +fn_80110DE0 = .text:0x80110DE0; // type:function size:0x24 +fn_80110E04 = .text:0x80110E04; // type:function size:0x4 +fn_80110E08 = .text:0x80110E08; // type:function size:0x5C +fn_80110E64 = .text:0x80110E64; // type:function size:0x24 +fn_80110E88 = .text:0x80110E88; // type:function size:0x20 +fn_80110EA8 = .text:0x80110EA8; // type:function size:0x94 +fn_80110F3C = .text:0x80110F3C; // type:function size:0x84 +fn_80110FC0 = .text:0x80110FC0; // type:function size:0x20 +fn_80110FE0 = .text:0x80110FE0; // type:function size:0x4 +fn_80110FE4 = .text:0x80110FE4; // type:function size:0x14 +fn_80110FF8 = .text:0x80110FF8; // type:function size:0xC +fn_80111004 = .text:0x80111004; // type:function size:0x28 +fn_8011102C = .text:0x8011102C; // type:function size:0x20 +fn_8011104C = .text:0x8011104C; // type:function size:0xA0 +fn_801110EC = .text:0x801110EC; // type:function size:0x1DC +fn_801112C8 = .text:0x801112C8; // type:function size:0x18 +fn_801112E0 = .text:0x801112E0; // type:function size:0x2EC +fn_801115CC = .text:0x801115CC; // type:function size:0x4 +fn_801115D0 = .text:0x801115D0; // type:function size:0x20 +fn_801115F0 = .text:0x801115F0; // type:function size:0x3BC +fn_801119AC = .text:0x801119AC; // type:function size:0x18 +fn_801119C4 = .text:0x801119C4; // type:function size:0xC4 +fn_80111A88 = .text:0x80111A88; // type:function size:0x108 +fn_80111B90 = .text:0x80111B90; // type:function size:0x38 +fn_80111BC8 = .text:0x80111BC8; // type:function size:0xF8 +fn_80111CC0 = .text:0x80111CC0; // type:function size:0xA8 +fn_80111D68 = .text:0x80111D68; // type:function size:0x10 +fn_80111D78 = .text:0x80111D78; // type:function size:0x64 +fn_80111DDC = .text:0x80111DDC; // type:function size:0xC8 +fn_80111EA4 = .text:0x80111EA4; // type:function size:0x20 +fn_80111EC4 = .text:0x80111EC4; // type:function size:0x34 +fn_80111EF8 = .text:0x80111EF8; // type:function size:0x30 +fn_80111F28 = .text:0x80111F28; // type:function size:0xBC +fn_80111FE4 = .text:0x80111FE4; // type:function size:0x34 +fn_80112018 = .text:0x80112018; // type:function size:0x74 +fn_8011208C = .text:0x8011208C; // type:function size:0x4C +fn_801120D8 = .text:0x801120D8; // type:function size:0x2C +fn_80112104 = .text:0x80112104; // type:function size:0x4 +fn_80112108 = .text:0x80112108; // type:function size:0x38 +fn_80112140 = .text:0x80112140; // type:function size:0x38 +fn_80112178 = .text:0x80112178; // type:function size:0x20 +fn_80112198 = .text:0x80112198; // type:function size:0x20 +fn_801121B8 = .text:0x801121B8; // type:function size:0x28 +fn_801121E0 = .text:0x801121E0; // type:function size:0x2C +fn_8011220C = .text:0x8011220C; // type:function size:0x5C +fn_80112268 = .text:0x80112268; // type:function size:0x3C +fn_801122A4 = .text:0x801122A4; // type:function size:0x24 +fn_801122C8 = .text:0x801122C8; // type:function size:0x428 +fn_801126F0 = .text:0x801126F0; // type:function size:0x3B4 +fn_80112AA4 = .text:0x80112AA4; // type:function size:0x24 +fn_80112AC8 = .text:0x80112AC8; // type:function size:0xBC +fn_80112B84 = .text:0x80112B84; // type:function size:0x5C +fn_80112BE0 = .text:0x80112BE0; // type:function size:0x40 +fn_80112C20 = .text:0x80112C20; // type:function size:0x24 +fn_80112C44 = .text:0x80112C44; // type:function size:0x50C +fn_80113150 = .text:0x80113150; // type:function size:0x190 +fn_801132E0 = .text:0x801132E0; // type:function size:0x50C +fn_801137EC = .text:0x801137EC; // type:function size:0xE0 +fn_801138CC = .text:0x801138CC; // type:function size:0xBC +fn_80113988 = .text:0x80113988; // type:function size:0x168 +fn_80113AF0 = .text:0x80113AF0; // type:function size:0x1D0 +fn_80113CC0 = .text:0x80113CC0; // type:function size:0x28 +fn_80113CE8 = .text:0x80113CE8; // type:function size:0x4C +fn_80113D34 = .text:0x80113D34; // type:function size:0x198 +fn_80113ECC = .text:0x80113ECC; // type:function size:0x1EC +fn_801140B8 = .text:0x801140B8; // type:function size:0x2BC +fn_80114374 = .text:0x80114374; // type:function size:0x200 +fn_80114574 = .text:0x80114574; // type:function size:0x28 +DBClose = .text:0x8011459C; // type:function size:0x4 scope:global +DBOpen = .text:0x801145A0; // type:function size:0x4 scope:global +DBWrite = .text:0x801145A4; // type:function size:0x260 scope:global +DBRead = .text:0x80114804; // type:function size:0x8C scope:global +DBQueryData = .text:0x80114890; // type:function size:0x9C scope:global +DBInitInterrupts = .text:0x8011492C; // type:function size:0x54 scope:global +DBInitComm = .text:0x80114980; // type:function size:0x78 scope:global +fn_801149F8 = .text:0x801149F8; // type:function size:0x40 +fn_80114A38 = .text:0x80114A38; // type:function size:0x3C +fn_80114A74 = .text:0x80114A74; // type:function size:0xAC +fn_80114B20 = .text:0x80114B20; // type:function size:0xDC +fn_80114BFC = .text:0x80114BFC; // type:function size:0xDC +fn_80114CD8 = .text:0x80114CD8; // type:function size:0xAC +fn_80114D84 = .text:0x80114D84; // type:function size:0x298 +EXI2_Init = .text:0x8011501C; // type:function size:0x4 scope:global +EXI2_EnableInterrupts = .text:0x80115020; // type:function size:0x4 scope:global +EXI2_Poll = .text:0x80115024; // type:function size:0x8 scope:global +EXI2_ReadN = .text:0x8011502C; // type:function size:0x8 scope:global +EXI2_WriteN = .text:0x80115034; // type:function size:0x8 scope:global +EXI2_Reserve = .text:0x8011503C; // type:function size:0x4 scope:global +EXI2_Unreserve = .text:0x80115040; // type:function size:0x4 scope:global +AMC_IsStub = .text:0x80115044; // type:function size:0x8 scope:global +Hu_IsStub = .text:0x8011504C; // type:function size:0x8 scope:weak +fn_80115054 = .text:0x80115054; // type:function size:0x10 +fn_80115064 = .text:0x80115064; // type:function size:0x34 +fn_80115098 = .text:0x80115098; // type:function size:0x6C +fn_80115104 = .text:0x80115104; // type:function size:0x27C +fn_80115380 = .text:0x80115380; // type:function size:0x15C +fn_801154DC = .text:0x801154DC; // type:function size:0xB4 +fn_80115590 = .text:0x80115590; // type:function size:0x31C +fn_801158AC = .text:0x801158AC; // type:function size:0x48 +fn_801158F4 = .text:0x801158F4; // type:function size:0x48 +fn_8011593C = .text:0x8011593C; // type:function size:0x68 +fn_801159A4 = .text:0x801159A4; // type:function size:0xD8 +fn_80115A7C = .text:0x80115A7C; // type:function size:0xFC +fn_80115B78 = .text:0x80115B78; // type:function size:0x4 +fn_80115B7C = .text:0x80115B7C; // type:function size:0x14 +fn_80115B90 = .text:0x80115B90; // type:function size:0xD8 +fn_80115C68 = .text:0x80115C68; // type:function size:0x114 +fn_80115D7C = .text:0x80115D7C; // type:function size:0x28 +fn_80115DA4 = .text:0x80115DA4; // type:function size:0x140 +fn_80115EE4 = .text:0x80115EE4; // type:function size:0x28C +fn_80116170 = .text:0x80116170; // type:function size:0x298 +fn_80116408 = .text:0x80116408; // type:function size:0x3F0 +fn_801167F8 = .text:0x801167F8; // type:function size:0x3B4 +fn_80116BAC = .text:0x80116BAC; // type:function size:0x278 +fn_80116E24 = .text:0x80116E24; // type:function size:0x20 +fn_80116E44 = .text:0x80116E44; // type:function size:0x474 +fn_801172B8 = .text:0x801172B8; // type:function size:0xC8 +fn_80117380 = .text:0x80117380; // type:function size:0x104 +fn_80117484 = .text:0x80117484; // type:function size:0x64 +fn_801174E8 = .text:0x801174E8; // type:function size:0x30 +fn_80117518 = .text:0x80117518; // type:function size:0x34 +fn_8011754C = .text:0x8011754C; // type:function size:0x2C +fn_80117578 = .text:0x80117578; // type:function size:0x60 +fn_801175D8 = .text:0x801175D8; // type:function size:0x154 +fn_8011772C = .text:0x8011772C; // type:function size:0x174 +fn_801178A0 = .text:0x801178A0; // type:function size:0x1BC +fn_80117A5C = .text:0x80117A5C; // type:function size:0x4 +fn_80117A60 = .text:0x80117A60; // type:function size:0x1CC +fn_80117C2C = .text:0x80117C2C; // type:function size:0x9C +fn_80117CC8 = .text:0x80117CC8; // type:function size:0x38 +fn_80117D00 = .text:0x80117D00; // type:function size:0x3C +fn_80117D3C = .text:0x80117D3C; // type:function size:0x30 +fn_80117D6C = .text:0x80117D6C; // type:function size:0x16C +fn_80117ED8 = .text:0x80117ED8; // type:function size:0x88 +fn_80117F60 = .text:0x80117F60; // type:function size:0x74 +fn_80117FD4 = .text:0x80117FD4; // type:function size:0x134 +fn_80118108 = .text:0x80118108; // type:function size:0xCC +fn_801181D4 = .text:0x801181D4; // type:function size:0x328 +fn_801184FC = .text:0x801184FC; // type:function size:0x174 +fn_80118670 = .text:0x80118670; // type:function size:0x250 +fn_801188C0 = .text:0x801188C0; // type:function size:0x184 +fn_80118A44 = .text:0x80118A44; // type:function size:0x270 +fn_80118CB4 = .text:0x80118CB4; // type:function size:0x30 +fn_80118CE4 = .text:0x80118CE4; // type:function size:0x4C +fn_80118D30 = .text:0x80118D30; // type:function size:0xD8 +fn_80118E08 = .text:0x80118E08; // type:function size:0x13C +fn_80118F44 = .text:0x80118F44; // type:function size:0x74 +fn_80118FB8 = .text:0x80118FB8; // type:function size:0x38 +fn_80118FF0 = .text:0x80118FF0; // type:function size:0x60 +fn_80119050 = .text:0x80119050; // type:function size:0x30 +fn_80119080 = .text:0x80119080; // type:function size:0x320 +fn_801193A0 = .text:0x801193A0; // type:function size:0x80 +fn_80119420 = .text:0x80119420; // type:function size:0x168 +fn_80119588 = .text:0x80119588; // type:function size:0xFC +fn_80119684 = .text:0x80119684; // type:function size:0x480 +fn_80119B04 = .text:0x80119B04; // type:function size:0x130 +fn_80119C34 = .text:0x80119C34; // type:function size:0xC8 +fn_80119CFC = .text:0x80119CFC; // type:function size:0x118 +fn_80119E14 = .text:0x80119E14; // type:function size:0xE0 +fn_80119EF4 = .text:0x80119EF4; // type:function size:0x204 +fn_8011A0F8 = .text:0x8011A0F8; // type:function size:0x88 +fn_8011A180 = .text:0x8011A180; // type:function size:0x8C +fn_8011A20C = .text:0x8011A20C; // type:function size:0x114 +fn_8011A320 = .text:0x8011A320; // type:function size:0x68 +fn_8011A388 = .text:0x8011A388; // type:function size:0x10C +fn_8011A494 = .text:0x8011A494; // type:function size:0x2A8 +fn_8011A73C = .text:0x8011A73C; // type:function size:0x2B8 +fn_8011A9F4 = .text:0x8011A9F4; // type:function size:0x1AC +fn_8011ABA0 = .text:0x8011ABA0; // type:function size:0x2E8 +fn_8011AE88 = .text:0x8011AE88; // type:function size:0x33C +fn_8011B1C4 = .text:0x8011B1C4; // type:function size:0x13C +fn_8011B300 = .text:0x8011B300; // type:function size:0xE0 +fn_8011B3E0 = .text:0x8011B3E0; // type:function size:0x448 +fn_8011B828 = .text:0x8011B828; // type:function size:0x2DC +fn_8011BB04 = .text:0x8011BB04; // type:function size:0xD0 +fn_8011BBD4 = .text:0x8011BBD4; // type:function size:0x320 +fn_8011BEF4 = .text:0x8011BEF4; // type:function size:0x4A8 +fn_8011C39C = .text:0x8011C39C; // type:function size:0x188 +fn_8011C524 = .text:0x8011C524; // type:function size:0x17C +fn_8011C6A0 = .text:0x8011C6A0; // type:function size:0x214 +fn_8011C8B4 = .text:0x8011C8B4; // type:function size:0x4 +fn_8011C8B8 = .text:0x8011C8B8; // type:function size:0x4 +fn_8011C8BC = .text:0x8011C8BC; // type:function size:0x4 +fn_8011C8C0 = .text:0x8011C8C0; // type:function size:0x4 +fn_8011C8C4 = .text:0x8011C8C4; // type:function size:0x4 +fn_8011C8C8 = .text:0x8011C8C8; // type:function size:0x4 +fn_8011C8CC = .text:0x8011C8CC; // type:function size:0x4 +fn_8011C8D0 = .text:0x8011C8D0; // type:function size:0x4 +fn_8011C8D4 = .text:0x8011C8D4; // type:function size:0x4 +fn_8011C8D8 = .text:0x8011C8D8; // type:function size:0x4 +fn_8011C8DC = .text:0x8011C8DC; // type:function size:0x4 +fn_8011C8E0 = .text:0x8011C8E0; // type:function size:0x4 +fn_8011C8E4 = .text:0x8011C8E4; // type:function size:0x4 +fn_8011C8E8 = .text:0x8011C8E8; // type:function size:0x4 +fn_8011C8EC = .text:0x8011C8EC; // type:function size:0x4 +fn_8011C8F0 = .text:0x8011C8F0; // type:function size:0x4 +fn_8011C8F4 = .text:0x8011C8F4; // type:function size:0x4 +fn_8011C8F8 = .text:0x8011C8F8; // type:function size:0x4 +fn_8011C8FC = .text:0x8011C8FC; // type:function size:0x4 +fn_8011C900 = .text:0x8011C900; // type:function size:0x4 +fn_8011C904 = .text:0x8011C904; // type:function size:0x4 +fn_8011C908 = .text:0x8011C908; // type:function size:0x4 +fn_8011C90C = .text:0x8011C90C; // type:function size:0x4 +fn_8011C910 = .text:0x8011C910; // type:function size:0x4 +fn_8011C914 = .text:0x8011C914; // type:function size:0x4 +fn_8011C918 = .text:0x8011C918; // type:function size:0x4 +fn_8011C91C = .text:0x8011C91C; // type:function size:0x4 +fn_8011C920 = .text:0x8011C920; // type:function size:0x4 +fn_8011C924 = .text:0x8011C924; // type:function size:0x4 +fn_8011C928 = .text:0x8011C928; // type:function size:0x4 +fn_8011C92C = .text:0x8011C92C; // type:function size:0x4 +fn_8011C930 = .text:0x8011C930; // type:function size:0x4 +fn_8011C934 = .text:0x8011C934; // type:function size:0x4 +fn_8011C938 = .text:0x8011C938; // type:function size:0x4 +fn_8011C93C = .text:0x8011C93C; // type:function size:0x4 +fn_8011C940 = .text:0x8011C940; // type:function size:0x4 +fn_8011C944 = .text:0x8011C944; // type:function size:0x4 +fn_8011C948 = .text:0x8011C948; // type:function size:0x4 +fn_8011C94C = .text:0x8011C94C; // type:function size:0x4 +fn_8011C950 = .text:0x8011C950; // type:function size:0x4 +fn_8011C954 = .text:0x8011C954; // type:function size:0x4 +fn_8011C958 = .text:0x8011C958; // type:function size:0x4 +fn_8011C95C = .text:0x8011C95C; // type:function size:0x4 +fn_8011C960 = .text:0x8011C960; // type:function size:0x4 +fn_8011C964 = .text:0x8011C964; // type:function size:0x4 +fn_8011C968 = .text:0x8011C968; // type:function size:0x4 +fn_8011C96C = .text:0x8011C96C; // type:function size:0x4 +fn_8011C970 = .text:0x8011C970; // type:function size:0x4 +fn_8011C974 = .text:0x8011C974; // type:function size:0x4 +fn_8011C978 = .text:0x8011C978; // type:function size:0x4 +fn_8011C97C = .text:0x8011C97C; // type:function size:0x4 +fn_8011C980 = .text:0x8011C980; // type:function size:0x4 +fn_8011C984 = .text:0x8011C984; // type:function size:0x4 +fn_8011C988 = .text:0x8011C988; // type:function size:0x4 +fn_8011C98C = .text:0x8011C98C; // type:function size:0x4 +fn_8011C990 = .text:0x8011C990; // type:function size:0x4 +fn_8011C994 = .text:0x8011C994; // type:function size:0x4 +fn_8011C998 = .text:0x8011C998; // type:function size:0x4 +fn_8011C99C = .text:0x8011C99C; // type:function size:0x4 +fn_8011C9A0 = .text:0x8011C9A0; // type:function size:0x4 +fn_8011C9A4 = .text:0x8011C9A4; // type:function size:0x4 +fn_8011C9A8 = .text:0x8011C9A8; // type:function size:0x4 +fn_8011C9AC = .text:0x8011C9AC; // type:function size:0x4 +fn_8011C9B0 = .text:0x8011C9B0; // type:function size:0x4 +fn_8011C9B4 = .text:0x8011C9B4; // type:function size:0x4 +fn_8011C9B8 = .text:0x8011C9B8; // type:function size:0x4 +fn_8011C9BC = .text:0x8011C9BC; // type:function size:0x4 +fn_8011C9C0 = .text:0x8011C9C0; // type:function size:0x4 +fn_8011C9C4 = .text:0x8011C9C4; // type:function size:0x4 +fn_8011C9C8 = .text:0x8011C9C8; // type:function size:0x4 +fn_8011C9CC = .text:0x8011C9CC; // type:function size:0x4 +fn_8011C9D0 = .text:0x8011C9D0; // type:function size:0x4 +fn_8011C9D4 = .text:0x8011C9D4; // type:function size:0x4 +fn_8011C9D8 = .text:0x8011C9D8; // type:function size:0x4 +fn_8011C9DC = .text:0x8011C9DC; // type:function size:0x4 +fn_8011C9E0 = .text:0x8011C9E0; // type:function size:0x4 +fn_8011C9E4 = .text:0x8011C9E4; // type:function size:0x4 +fn_8011C9E8 = .text:0x8011C9E8; // type:function size:0x4 +fn_8011C9EC = .text:0x8011C9EC; // type:function size:0x4 +fn_8011C9F0 = .text:0x8011C9F0; // type:function size:0x4 +fn_8011C9F4 = .text:0x8011C9F4; // type:function size:0x4 +fn_8011C9F8 = .text:0x8011C9F8; // type:function size:0x4 +fn_8011C9FC = .text:0x8011C9FC; // type:function size:0x4 +fn_8011CA00 = .text:0x8011CA00; // type:function size:0x4 +fn_8011CA04 = .text:0x8011CA04; // type:function size:0x4 +fn_8011CA08 = .text:0x8011CA08; // type:function size:0x4 +fn_8011CA0C = .text:0x8011CA0C; // type:function size:0x4 +fn_8011CA10 = .text:0x8011CA10; // type:function size:0x4 +fn_8011CA14 = .text:0x8011CA14; // type:function size:0x4 +fn_8011CA18 = .text:0x8011CA18; // type:function size:0x4 +fn_8011CA1C = .text:0x8011CA1C; // type:function size:0x4 +fn_8011CA20 = .text:0x8011CA20; // type:function size:0x4 +fn_8011CA24 = .text:0x8011CA24; // type:function size:0x4 +fn_8011CA28 = .text:0x8011CA28; // type:function size:0x4 +fn_8011CA2C = .text:0x8011CA2C; // type:function size:0x4 +fn_8011CA30 = .text:0x8011CA30; // type:function size:0x4 +fn_8011CA34 = .text:0x8011CA34; // type:function size:0x4 +fn_8011CA38 = .text:0x8011CA38; // type:function size:0x4 +fn_8011CA3C = .text:0x8011CA3C; // type:function size:0x4 +fn_8011CA40 = .text:0x8011CA40; // type:function size:0x4 +fn_8011CA44 = .text:0x8011CA44; // type:function size:0x4 +fn_8011CA48 = .text:0x8011CA48; // type:function size:0x4 +fn_8011CA4C = .text:0x8011CA4C; // type:function size:0x4 +fn_8011CA50 = .text:0x8011CA50; // type:function size:0x4 +fn_8011CA54 = .text:0x8011CA54; // type:function size:0x4 +fn_8011CA58 = .text:0x8011CA58; // type:function size:0x4 +fn_8011CA5C = .text:0x8011CA5C; // type:function size:0x4 +fn_8011CA60 = .text:0x8011CA60; // type:function size:0x4 +fn_8011CA64 = .text:0x8011CA64; // type:function size:0x4 +fn_8011CA68 = .text:0x8011CA68; // type:function size:0x4 +fn_8011CA6C = .text:0x8011CA6C; // type:function size:0x4 +fn_8011CA70 = .text:0x8011CA70; // type:function size:0x4 +fn_8011CA74 = .text:0x8011CA74; // type:function size:0x4 +fn_8011CA78 = .text:0x8011CA78; // type:function size:0x4 +fn_8011CA7C = .text:0x8011CA7C; // type:function size:0x4 +fn_8011CA80 = .text:0x8011CA80; // type:function size:0x4 +fn_8011CA84 = .text:0x8011CA84; // type:function size:0x4 +fn_8011CA88 = .text:0x8011CA88; // type:function size:0x4 +fn_8011CA8C = .text:0x8011CA8C; // type:function size:0x4 +fn_8011CA90 = .text:0x8011CA90; // type:function size:0x4 +fn_8011CA94 = .text:0x8011CA94; // type:function size:0x4 +fn_8011CA98 = .text:0x8011CA98; // type:function size:0x4 +fn_8011CA9C = .text:0x8011CA9C; // type:function size:0x4 +fn_8011CAA0 = .text:0x8011CAA0; // type:function size:0x4 +fn_8011CAA4 = .text:0x8011CAA4; // type:function size:0x4 +fn_8011CAA8 = .text:0x8011CAA8; // type:function size:0x4 +fn_8011CAAC = .text:0x8011CAAC; // type:function size:0x4 +fn_8011CAB0 = .text:0x8011CAB0; // type:function size:0x4 +fn_8011CAB4 = .text:0x8011CAB4; // type:function size:0x4 +fn_8011CAB8 = .text:0x8011CAB8; // type:function size:0x4 +fn_8011CABC = .text:0x8011CABC; // type:function size:0x4 +fn_8011CAC0 = .text:0x8011CAC0; // type:function size:0x4 +fn_8011CAC4 = .text:0x8011CAC4; // type:function size:0x4 +fn_8011CAC8 = .text:0x8011CAC8; // type:function size:0x4 +fn_8011CACC = .text:0x8011CACC; // type:function size:0x4 +fn_8011CAD0 = .text:0x8011CAD0; // type:function size:0x4 +fn_8011CAD4 = .text:0x8011CAD4; // type:function size:0x4 +fn_8011CAD8 = .text:0x8011CAD8; // type:function size:0x4 +fn_8011CADC = .text:0x8011CADC; // type:function size:0x4 +fn_8011CAE0 = .text:0x8011CAE0; // type:function size:0x4 +fn_8011CAE4 = .text:0x8011CAE4; // type:function size:0x4 +fn_8011CAE8 = .text:0x8011CAE8; // type:function size:0x4 +fn_8011CAEC = .text:0x8011CAEC; // type:function size:0x4 +fn_8011CAF0 = .text:0x8011CAF0; // type:function size:0x4 +fn_8011CAF4 = .text:0x8011CAF4; // type:function size:0x4 +fn_8011CAF8 = .text:0x8011CAF8; // type:function size:0x4 +fn_8011CAFC = .text:0x8011CAFC; // type:function size:0x4 +fn_8011CB00 = .text:0x8011CB00; // type:function size:0x4 +fn_8011CB04 = .text:0x8011CB04; // type:function size:0x4 +fn_8011CB08 = .text:0x8011CB08; // type:function size:0x4 +fn_8011CB0C = .text:0x8011CB0C; // type:function size:0x4 +fn_8011CB10 = .text:0x8011CB10; // type:function size:0x4 +fn_8011CB14 = .text:0x8011CB14; // type:function size:0x4 +fn_8011CB18 = .text:0x8011CB18; // type:function size:0x4 +fn_8011CB1C = .text:0x8011CB1C; // type:function size:0x4 +fn_8011CB20 = .text:0x8011CB20; // type:function size:0x4 +fn_8011CB24 = .text:0x8011CB24; // type:function size:0x4 +fn_8011CB28 = .text:0x8011CB28; // type:function size:0x4 +fn_8011CB2C = .text:0x8011CB2C; // type:function size:0x4 +fn_8011CB30 = .text:0x8011CB30; // type:function size:0x4 +fn_8011CB34 = .text:0x8011CB34; // type:function size:0x4 +fn_8011CB38 = .text:0x8011CB38; // type:function size:0x4 +fn_8011CB3C = .text:0x8011CB3C; // type:function size:0x4 +fn_8011CB40 = .text:0x8011CB40; // type:function size:0x4 +fn_8011CB44 = .text:0x8011CB44; // type:function size:0x4 +fn_8011CB48 = .text:0x8011CB48; // type:function size:0x4 +fn_8011CB4C = .text:0x8011CB4C; // type:function size:0x4 +fn_8011CB50 = .text:0x8011CB50; // type:function size:0x4 +fn_8011CB54 = .text:0x8011CB54; // type:function size:0x4 +fn_8011CB58 = .text:0x8011CB58; // type:function size:0x4 +fn_8011CB5C = .text:0x8011CB5C; // type:function size:0x4 +fn_8011CB60 = .text:0x8011CB60; // type:function size:0x4 +fn_8011CB64 = .text:0x8011CB64; // type:function size:0x4 +fn_8011CB68 = .text:0x8011CB68; // type:function size:0x4 +fn_8011CB6C = .text:0x8011CB6C; // type:function size:0x4 +fn_8011CB70 = .text:0x8011CB70; // type:function size:0x4 +fn_8011CB74 = .text:0x8011CB74; // type:function size:0x4 +fn_8011CB78 = .text:0x8011CB78; // type:function size:0x4 +fn_8011CB7C = .text:0x8011CB7C; // type:function size:0x4 +fn_8011CB80 = .text:0x8011CB80; // type:function size:0x4 +fn_8011CB84 = .text:0x8011CB84; // type:function size:0x4 +fn_8011CB88 = .text:0x8011CB88; // type:function size:0x4 +fn_8011CB8C = .text:0x8011CB8C; // type:function size:0x4 +fn_8011CB90 = .text:0x8011CB90; // type:function size:0x4 +fn_8011CB94 = .text:0x8011CB94; // type:function size:0x4 +fn_8011CB98 = .text:0x8011CB98; // type:function size:0x4 +fn_8011CB9C = .text:0x8011CB9C; // type:function size:0x4 +fn_8011CBA0 = .text:0x8011CBA0; // type:function size:0x4 +fn_8011CBA4 = .text:0x8011CBA4; // type:function size:0x4 +fn_8011CBA8 = .text:0x8011CBA8; // type:function size:0x4 +fn_8011CBAC = .text:0x8011CBAC; // type:function size:0x4 +fn_8011CBB0 = .text:0x8011CBB0; // type:function size:0x4 +fn_8011CBB4 = .text:0x8011CBB4; // type:function size:0x4 +fn_8011CBB8 = .text:0x8011CBB8; // type:function size:0x4 +fn_8011CBBC = .text:0x8011CBBC; // type:function size:0x4 +fn_8011CBC0 = .text:0x8011CBC0; // type:function size:0x4 +fn_8011CBC4 = .text:0x8011CBC4; // type:function size:0x4 +fn_8011CBC8 = .text:0x8011CBC8; // type:function size:0x4 +fn_8011CBCC = .text:0x8011CBCC; // type:function size:0x4 +fn_8011CBD0 = .text:0x8011CBD0; // type:function size:0x4 +fn_8011CBD4 = .text:0x8011CBD4; // type:function size:0x4 +fn_8011CBD8 = .text:0x8011CBD8; // type:function size:0x4 +fn_8011CBDC = .text:0x8011CBDC; // type:function size:0x4 +fn_8011CBE0 = .text:0x8011CBE0; // type:function size:0x4 +fn_8011CBE4 = .text:0x8011CBE4; // type:function size:0x4 +fn_8011CBE8 = .text:0x8011CBE8; // type:function size:0x4 +fn_8011CBEC = .text:0x8011CBEC; // type:function size:0x4 +fn_8011CBF0 = .text:0x8011CBF0; // type:function size:0x4 +fn_8011CBF4 = .text:0x8011CBF4; // type:function size:0x4 +fn_8011CBF8 = .text:0x8011CBF8; // type:function size:0x4 +fn_8011CBFC = .text:0x8011CBFC; // type:function size:0x4 +fn_8011CC00 = .text:0x8011CC00; // type:function size:0x4 +fn_8011CC04 = .text:0x8011CC04; // type:function size:0x4 +fn_8011CC08 = .text:0x8011CC08; // type:function size:0x4 +fn_8011CC0C = .text:0x8011CC0C; // type:function size:0x4 +fn_8011CC10 = .text:0x8011CC10; // type:function size:0x4 +fn_8011CC14 = .text:0x8011CC14; // type:function size:0x4 +fn_8011CC18 = .text:0x8011CC18; // type:function size:0x4 +fn_8011CC1C = .text:0x8011CC1C; // type:function size:0x4 +fn_8011CC20 = .text:0x8011CC20; // type:function size:0x4 +fn_8011CC24 = .text:0x8011CC24; // type:function size:0x4 +fn_8011CC28 = .text:0x8011CC28; // type:function size:0x4 +fn_8011CC2C = .text:0x8011CC2C; // type:function size:0x4 +fn_8011CC30 = .text:0x8011CC30; // type:function size:0x4 +fn_8011CC34 = .text:0x8011CC34; // type:function size:0x4 +fn_8011CC38 = .text:0x8011CC38; // type:function size:0x4 +fn_8011CC3C = .text:0x8011CC3C; // type:function size:0x4 +fn_8011CC40 = .text:0x8011CC40; // type:function size:0x4 +fn_8011CC44 = .text:0x8011CC44; // type:function size:0x4 +fn_8011CC48 = .text:0x8011CC48; // type:function size:0x4 +fn_8011CC4C = .text:0x8011CC4C; // type:function size:0x4 +fn_8011CC50 = .text:0x8011CC50; // type:function size:0x4 +fn_8011CC54 = .text:0x8011CC54; // type:function size:0x4 +fn_8011CC58 = .text:0x8011CC58; // type:function size:0x4 +fn_8011CC5C = .text:0x8011CC5C; // type:function size:0x4 +fn_8011CC60 = .text:0x8011CC60; // type:function size:0x4 +fn_8011CC64 = .text:0x8011CC64; // type:function size:0x4 +fn_8011CC68 = .text:0x8011CC68; // type:function size:0x4 +fn_8011CC6C = .text:0x8011CC6C; // type:function size:0x4 +fn_8011CC70 = .text:0x8011CC70; // type:function size:0x4 +fn_8011CC74 = .text:0x8011CC74; // type:function size:0x4 +fn_8011CC78 = .text:0x8011CC78; // type:function size:0x4 +fn_8011CC7C = .text:0x8011CC7C; // type:function size:0x4 +fn_8011CC80 = .text:0x8011CC80; // type:function size:0x4 +fn_8011CC84 = .text:0x8011CC84; // type:function size:0x4 +fn_8011CC88 = .text:0x8011CC88; // type:function size:0x4 +fn_8011CC8C = .text:0x8011CC8C; // type:function size:0x4 +fn_8011CC90 = .text:0x8011CC90; // type:function size:0x4 +fn_8011CC94 = .text:0x8011CC94; // type:function size:0x4 +fn_8011CC98 = .text:0x8011CC98; // type:function size:0x4 +fn_8011CC9C = .text:0x8011CC9C; // type:function size:0x4 +fn_8011CCA0 = .text:0x8011CCA0; // type:function size:0x4 +fn_8011CCA4 = .text:0x8011CCA4; // type:function size:0x4 +fn_8011CCA8 = .text:0x8011CCA8; // type:function size:0x4 +fn_8011CCAC = .text:0x8011CCAC; // type:function size:0x4 +fn_8011CCB0 = .text:0x8011CCB0; // type:function size:0x4 +fn_8011CCB4 = .text:0x8011CCB4; // type:function size:0x4 +fn_8011CCB8 = .text:0x8011CCB8; // type:function size:0x4 +fn_8011CCBC = .text:0x8011CCBC; // type:function size:0x4 +fn_8011CCC0 = .text:0x8011CCC0; // type:function size:0x4 +fn_8011CCC4 = .text:0x8011CCC4; // type:function size:0x4 +fn_8011CCC8 = .text:0x8011CCC8; // type:function size:0x4 +fn_8011CCCC = .text:0x8011CCCC; // type:function size:0x4 +fn_8011CCD0 = .text:0x8011CCD0; // type:function size:0x4 +fn_8011CCD4 = .text:0x8011CCD4; // type:function size:0x4 +fn_8011CCD8 = .text:0x8011CCD8; // type:function size:0x4 +fn_8011CCDC = .text:0x8011CCDC; // type:function size:0x4 +fn_8011CCE0 = .text:0x8011CCE0; // type:function size:0x4 +fn_8011CCE4 = .text:0x8011CCE4; // type:function size:0x4 +fn_8011CCE8 = .text:0x8011CCE8; // type:function size:0x4 +fn_8011CCEC = .text:0x8011CCEC; // type:function size:0x4 +fn_8011CCF0 = .text:0x8011CCF0; // type:function size:0x4 +fn_8011CCF4 = .text:0x8011CCF4; // type:function size:0x4 +fn_8011CCF8 = .text:0x8011CCF8; // type:function size:0x4 +fn_8011CCFC = .text:0x8011CCFC; // type:function size:0x4 +fn_8011CD00 = .text:0x8011CD00; // type:function size:0x4 +fn_8011CD04 = .text:0x8011CD04; // type:function size:0x4 +fn_8011CD08 = .text:0x8011CD08; // type:function size:0x4 +fn_8011CD0C = .text:0x8011CD0C; // type:function size:0x4 +fn_8011CD10 = .text:0x8011CD10; // type:function size:0x4 +fn_8011CD14 = .text:0x8011CD14; // type:function size:0x4 +fn_8011CD18 = .text:0x8011CD18; // type:function size:0x4 +fn_8011CD1C = .text:0x8011CD1C; // type:function size:0x4 +fn_8011CD20 = .text:0x8011CD20; // type:function size:0x4 +fn_8011CD24 = .text:0x8011CD24; // type:function size:0x4 +fn_8011CD28 = .text:0x8011CD28; // type:function size:0x4 +fn_8011CD2C = .text:0x8011CD2C; // type:function size:0x4 +fn_8011CD30 = .text:0x8011CD30; // type:function size:0x4 +fn_8011CD34 = .text:0x8011CD34; // type:function size:0x4 +fn_8011CD38 = .text:0x8011CD38; // type:function size:0x4 +fn_8011CD3C = .text:0x8011CD3C; // type:function size:0x4 +fn_8011CD40 = .text:0x8011CD40; // type:function size:0x4 +fn_8011CD44 = .text:0x8011CD44; // type:function size:0x4 +fn_8011CD48 = .text:0x8011CD48; // type:function size:0x4 +fn_8011CD4C = .text:0x8011CD4C; // type:function size:0x4 +fn_8011CD50 = .text:0x8011CD50; // type:function size:0x4 +fn_8011CD54 = .text:0x8011CD54; // type:function size:0x4 +fn_8011CD58 = .text:0x8011CD58; // type:function size:0x4 +fn_8011CD5C = .text:0x8011CD5C; // type:function size:0x4 +fn_8011CD60 = .text:0x8011CD60; // type:function size:0x4 +fn_8011CD64 = .text:0x8011CD64; // type:function size:0x4 +fn_8011CD68 = .text:0x8011CD68; // type:function size:0x4 +fn_8011CD6C = .text:0x8011CD6C; // type:function size:0x4 +fn_8011CD70 = .text:0x8011CD70; // type:function size:0x4 +fn_8011CD74 = .text:0x8011CD74; // type:function size:0x4 +fn_8011CD78 = .text:0x8011CD78; // type:function size:0x4 +fn_8011CD7C = .text:0x8011CD7C; // type:function size:0x4 +fn_8011CD80 = .text:0x8011CD80; // type:function size:0x4 +fn_8011CD84 = .text:0x8011CD84; // type:function size:0x4 +fn_8011CD88 = .text:0x8011CD88; // type:function size:0x4 +fn_8011CD8C = .text:0x8011CD8C; // type:function size:0x4 +fn_8011CD90 = .text:0x8011CD90; // type:function size:0x4 +fn_8011CD94 = .text:0x8011CD94; // type:function size:0x4 +fn_8011CD98 = .text:0x8011CD98; // type:function size:0x4 +fn_8011CD9C = .text:0x8011CD9C; // type:function size:0x4 +fn_8011CDA0 = .text:0x8011CDA0; // type:function size:0x4 +fn_8011CDA4 = .text:0x8011CDA4; // type:function size:0x4 +fn_8011CDA8 = .text:0x8011CDA8; // type:function size:0x4 +fn_8011CDAC = .text:0x8011CDAC; // type:function size:0x4 +fn_8011CDB0 = .text:0x8011CDB0; // type:function size:0x4 +fn_8011CDB4 = .text:0x8011CDB4; // type:function size:0x4 +fn_8011CDB8 = .text:0x8011CDB8; // type:function size:0x4 +fn_8011CDBC = .text:0x8011CDBC; // type:function size:0x4 +fn_8011CDC0 = .text:0x8011CDC0; // type:function size:0x4 +fn_8011CDC4 = .text:0x8011CDC4; // type:function size:0x4 +fn_8011CDC8 = .text:0x8011CDC8; // type:function size:0x4 +fn_8011CDCC = .text:0x8011CDCC; // type:function size:0x4 +fn_8011CDD0 = .text:0x8011CDD0; // type:function size:0x4 +fn_8011CDD4 = .text:0x8011CDD4; // type:function size:0x4 +fn_8011CDD8 = .text:0x8011CDD8; // type:function size:0x4 +fn_8011CDDC = .text:0x8011CDDC; // type:function size:0x4 +fn_8011CDE0 = .text:0x8011CDE0; // type:function size:0x4 +fn_8011CDE4 = .text:0x8011CDE4; // type:function size:0x4 +fn_8011CDE8 = .text:0x8011CDE8; // type:function size:0x4 +fn_8011CDEC = .text:0x8011CDEC; // type:function size:0x4 +fn_8011CDF0 = .text:0x8011CDF0; // type:function size:0x4 +fn_8011CDF4 = .text:0x8011CDF4; // type:function size:0x4 +fn_8011CDF8 = .text:0x8011CDF8; // type:function size:0x4 +fn_8011CDFC = .text:0x8011CDFC; // type:function size:0x4 +fn_8011CE00 = .text:0x8011CE00; // type:function size:0x4 +fn_8011CE04 = .text:0x8011CE04; // type:function size:0x4 +fn_8011CE08 = .text:0x8011CE08; // type:function size:0x4 +fn_8011CE0C = .text:0x8011CE0C; // type:function size:0x4 +fn_8011CE10 = .text:0x8011CE10; // type:function size:0x4 +fn_8011CE14 = .text:0x8011CE14; // type:function size:0x4 +fn_8011CE18 = .text:0x8011CE18; // type:function size:0x4 +fn_8011CE1C = .text:0x8011CE1C; // type:function size:0x4 +fn_8011CE20 = .text:0x8011CE20; // type:function size:0x4 +fn_8011CE24 = .text:0x8011CE24; // type:function size:0x4 +fn_8011CE28 = .text:0x8011CE28; // type:function size:0x4 +fn_8011CE2C = .text:0x8011CE2C; // type:function size:0x4 +fn_8011CE30 = .text:0x8011CE30; // type:function size:0x4 +fn_8011CE34 = .text:0x8011CE34; // type:function size:0x4 +fn_8011CE38 = .text:0x8011CE38; // type:function size:0x4 +fn_8011CE3C = .text:0x8011CE3C; // type:function size:0x4 +fn_8011CE40 = .text:0x8011CE40; // type:function size:0x4 +fn_8011CE44 = .text:0x8011CE44; // type:function size:0x4 +fn_8011CE48 = .text:0x8011CE48; // type:function size:0x4 +fn_8011CE4C = .text:0x8011CE4C; // type:function size:0x4 +fn_8011CE50 = .text:0x8011CE50; // type:function size:0x4 +fn_8011CE54 = .text:0x8011CE54; // type:function size:0x4 +fn_8011CE58 = .text:0x8011CE58; // type:function size:0x4 +fn_8011CE5C = .text:0x8011CE5C; // type:function size:0x4 +fn_8011CE60 = .text:0x8011CE60; // type:function size:0x4 +fn_8011CE64 = .text:0x8011CE64; // type:function size:0x4 +fn_8011CE68 = .text:0x8011CE68; // type:function size:0x4 +fn_8011CE6C = .text:0x8011CE6C; // type:function size:0x4 +fn_8011CE70 = .text:0x8011CE70; // type:function size:0x4 +fn_8011CE74 = .text:0x8011CE74; // type:function size:0x4 +fn_8011CE78 = .text:0x8011CE78; // type:function size:0x4 +fn_8011CE7C = .text:0x8011CE7C; // type:function size:0x4 +fn_8011CE80 = .text:0x8011CE80; // type:function size:0x4 +fn_8011CE84 = .text:0x8011CE84; // type:function size:0x4 +fn_8011CE88 = .text:0x8011CE88; // type:function size:0x4 +fn_8011CE8C = .text:0x8011CE8C; // type:function size:0x4 +fn_8011CE90 = .text:0x8011CE90; // type:function size:0x4 +fn_8011CE94 = .text:0x8011CE94; // type:function size:0x4 +fn_8011CE98 = .text:0x8011CE98; // type:function size:0x4 +fn_8011CE9C = .text:0x8011CE9C; // type:function size:0x4 +fn_8011CEA0 = .text:0x8011CEA0; // type:function size:0x4 +fn_8011CEA4 = .text:0x8011CEA4; // type:function size:0x4 +fn_8011CEA8 = .text:0x8011CEA8; // type:function size:0x4 +fn_8011CEAC = .text:0x8011CEAC; // type:function size:0x4 +fn_8011CEB0 = .text:0x8011CEB0; // type:function size:0x4 +fn_8011CEB4 = .text:0x8011CEB4; // type:function size:0x4 +fn_8011CEB8 = .text:0x8011CEB8; // type:function size:0x4 +fn_8011CEBC = .text:0x8011CEBC; // type:function size:0x4 +fn_8011CEC0 = .text:0x8011CEC0; // type:function size:0x4 +fn_8011CEC4 = .text:0x8011CEC4; // type:function size:0x4 +fn_8011CEC8 = .text:0x8011CEC8; // type:function size:0x4 +fn_8011CECC = .text:0x8011CECC; // type:function size:0x4 +fn_8011CED0 = .text:0x8011CED0; // type:function size:0x4 +fn_8011CED4 = .text:0x8011CED4; // type:function size:0x4 +fn_8011CED8 = .text:0x8011CED8; // type:function size:0x4 +fn_8011CEDC = .text:0x8011CEDC; // type:function size:0x4 +fn_8011CEE0 = .text:0x8011CEE0; // type:function size:0x4 +fn_8011CEE4 = .text:0x8011CEE4; // type:function size:0x4 +fn_8011CEE8 = .text:0x8011CEE8; // type:function size:0x4 +fn_8011CEEC = .text:0x8011CEEC; // type:function size:0x4 +fn_8011CEF0 = .text:0x8011CEF0; // type:function size:0x4 +fn_8011CEF4 = .text:0x8011CEF4; // type:function size:0x4 +fn_8011CEF8 = .text:0x8011CEF8; // type:function size:0x4 +fn_8011CEFC = .text:0x8011CEFC; // type:function size:0x4 +fn_8011CF00 = .text:0x8011CF00; // type:function size:0x4 +fn_8011CF04 = .text:0x8011CF04; // type:function size:0x4 +fn_8011CF08 = .text:0x8011CF08; // type:function size:0x4 +fn_8011CF0C = .text:0x8011CF0C; // type:function size:0x4 +fn_8011CF10 = .text:0x8011CF10; // type:function size:0x4 +fn_8011CF14 = .text:0x8011CF14; // type:function size:0x4 +fn_8011CF18 = .text:0x8011CF18; // type:function size:0x4 +fn_8011CF1C = .text:0x8011CF1C; // type:function size:0x4 +fn_8011CF20 = .text:0x8011CF20; // type:function size:0x4 +fn_8011CF24 = .text:0x8011CF24; // type:function size:0x4 +fn_8011CF28 = .text:0x8011CF28; // type:function size:0x4 +fn_8011CF2C = .text:0x8011CF2C; // type:function size:0x4 +fn_8011CF30 = .text:0x8011CF30; // type:function size:0x4 +fn_8011CF34 = .text:0x8011CF34; // type:function size:0x4 +fn_8011CF38 = .text:0x8011CF38; // type:function size:0x4 +fn_8011CF3C = .text:0x8011CF3C; // type:function size:0x4 +fn_8011CF40 = .text:0x8011CF40; // type:function size:0x4 +fn_8011CF44 = .text:0x8011CF44; // type:function size:0x4 +fn_8011CF48 = .text:0x8011CF48; // type:function size:0x4 +fn_8011CF4C = .text:0x8011CF4C; // type:function size:0x4 +fn_8011CF50 = .text:0x8011CF50; // type:function size:0x4 +fn_8011CF54 = .text:0x8011CF54; // type:function size:0x4 +fn_8011CF58 = .text:0x8011CF58; // type:function size:0x4 +fn_8011CF5C = .text:0x8011CF5C; // type:function size:0x4 +fn_8011CF60 = .text:0x8011CF60; // type:function size:0x4 +fn_8011CF64 = .text:0x8011CF64; // type:function size:0x4 +fn_8011CF68 = .text:0x8011CF68; // type:function size:0x4 +fn_8011CF6C = .text:0x8011CF6C; // type:function size:0x4 +fn_8011CF70 = .text:0x8011CF70; // type:function size:0x4 +fn_8011CF74 = .text:0x8011CF74; // type:function size:0x4 +fn_8011CF78 = .text:0x8011CF78; // type:function size:0x4 +fn_8011CF7C = .text:0x8011CF7C; // type:function size:0x4 +fn_8011CF80 = .text:0x8011CF80; // type:function size:0x4 +fn_8011CF84 = .text:0x8011CF84; // type:function size:0x4 +fn_8011CF88 = .text:0x8011CF88; // type:function size:0x4 +fn_8011CF8C = .text:0x8011CF8C; // type:function size:0x4 +fn_8011CF90 = .text:0x8011CF90; // type:function size:0x4 +fn_8011CF94 = .text:0x8011CF94; // type:function size:0x4 +fn_8011CF98 = .text:0x8011CF98; // type:function size:0x4 +fn_8011CF9C = .text:0x8011CF9C; // type:function size:0x4 +fn_8011CFA0 = .text:0x8011CFA0; // type:function size:0x4 +fn_8011CFA4 = .text:0x8011CFA4; // type:function size:0x4 +fn_8011CFA8 = .text:0x8011CFA8; // type:function size:0x4 +fn_8011CFAC = .text:0x8011CFAC; // type:function size:0x4 +fn_8011CFB0 = .text:0x8011CFB0; // type:function size:0x4 +fn_8011CFB4 = .text:0x8011CFB4; // type:function size:0x4 +fn_8011CFB8 = .text:0x8011CFB8; // type:function size:0x4 +fn_8011CFBC = .text:0x8011CFBC; // type:function size:0x4 +fn_8011CFC0 = .text:0x8011CFC0; // type:function size:0x4 +fn_8011CFC4 = .text:0x8011CFC4; // type:function size:0x4 +fn_8011CFC8 = .text:0x8011CFC8; // type:function size:0x4 +fn_8011CFCC = .text:0x8011CFCC; // type:function size:0x4 +fn_8011CFD0 = .text:0x8011CFD0; // type:function size:0x4 +fn_8011CFD4 = .text:0x8011CFD4; // type:function size:0x4 +fn_8011CFD8 = .text:0x8011CFD8; // type:function size:0x4 +fn_8011CFDC = .text:0x8011CFDC; // type:function size:0x4 +fn_8011CFE0 = .text:0x8011CFE0; // type:function size:0x4 +fn_8011CFE4 = .text:0x8011CFE4; // type:function size:0x4 +fn_8011CFE8 = .text:0x8011CFE8; // type:function size:0x4 +fn_8011CFEC = .text:0x8011CFEC; // type:function size:0x4 +fn_8011CFF0 = .text:0x8011CFF0; // type:function size:0x4 +fn_8011CFF4 = .text:0x8011CFF4; // type:function size:0x4 +fn_8011CFF8 = .text:0x8011CFF8; // type:function size:0x4 +fn_8011CFFC = .text:0x8011CFFC; // type:function size:0x4 +fn_8011D000 = .text:0x8011D000; // type:function size:0x4 +fn_8011D004 = .text:0x8011D004; // type:function size:0x4 +fn_8011D008 = .text:0x8011D008; // type:function size:0x4 +fn_8011D00C = .text:0x8011D00C; // type:function size:0x4 +fn_8011D010 = .text:0x8011D010; // type:function size:0x4 +fn_8011D014 = .text:0x8011D014; // type:function size:0x4 +fn_8011D018 = .text:0x8011D018; // type:function size:0x4 +fn_8011D01C = .text:0x8011D01C; // type:function size:0x4 +fn_8011D020 = .text:0x8011D020; // type:function size:0x4 +fn_8011D024 = .text:0x8011D024; // type:function size:0x4 +fn_8011D028 = .text:0x8011D028; // type:function size:0x4 +fn_8011D02C = .text:0x8011D02C; // type:function size:0x4 +fn_8011D030 = .text:0x8011D030; // type:function size:0x4 +fn_8011D034 = .text:0x8011D034; // type:function size:0x4 +fn_8011D038 = .text:0x8011D038; // type:function size:0x4 +fn_8011D03C = .text:0x8011D03C; // type:function size:0x4 +fn_8011D040 = .text:0x8011D040; // type:function size:0x4 +fn_8011D044 = .text:0x8011D044; // type:function size:0x4 +fn_8011D048 = .text:0x8011D048; // type:function size:0x4 +fn_8011D04C = .text:0x8011D04C; // type:function size:0x4 +fn_8011D050 = .text:0x8011D050; // type:function size:0x4 +fn_8011D054 = .text:0x8011D054; // type:function size:0x4 +fn_8011D058 = .text:0x8011D058; // type:function size:0x4 +fn_8011D05C = .text:0x8011D05C; // type:function size:0x4 +fn_8011D060 = .text:0x8011D060; // type:function size:0x4 +fn_8011D064 = .text:0x8011D064; // type:function size:0x4 +fn_8011D068 = .text:0x8011D068; // type:function size:0x4 +fn_8011D06C = .text:0x8011D06C; // type:function size:0x4 +fn_8011D070 = .text:0x8011D070; // type:function size:0x4 +fn_8011D074 = .text:0x8011D074; // type:function size:0x4 +fn_8011D078 = .text:0x8011D078; // type:function size:0x4 +fn_8011D07C = .text:0x8011D07C; // type:function size:0x4 +fn_8011D080 = .text:0x8011D080; // type:function size:0x4 +fn_8011D084 = .text:0x8011D084; // type:function size:0x4 +fn_8011D088 = .text:0x8011D088; // type:function size:0x4 +fn_8011D08C = .text:0x8011D08C; // type:function size:0x4 +fn_8011D090 = .text:0x8011D090; // type:function size:0x4 +fn_8011D094 = .text:0x8011D094; // type:function size:0x4 +fn_8011D098 = .text:0x8011D098; // type:function size:0x4 +fn_8011D09C = .text:0x8011D09C; // type:function size:0x4 +fn_8011D0A0 = .text:0x8011D0A0; // type:function size:0x4 +fn_8011D0A4 = .text:0x8011D0A4; // type:function size:0x4 +fn_8011D0A8 = .text:0x8011D0A8; // type:function size:0x4 +fn_8011D0AC = .text:0x8011D0AC; // type:function size:0x4 +fn_8011D0B0 = .text:0x8011D0B0; // type:function size:0x4 +fn_8011D0B4 = .text:0x8011D0B4; // type:function size:0x4 +fn_8011D0B8 = .text:0x8011D0B8; // type:function size:0x4 +fn_8011D0BC = .text:0x8011D0BC; // type:function size:0x4 +fn_8011D0C0 = .text:0x8011D0C0; // type:function size:0x4 +fn_8011D0C4 = .text:0x8011D0C4; // type:function size:0x4 +fn_8011D0C8 = .text:0x8011D0C8; // type:function size:0x4 +fn_8011D0CC = .text:0x8011D0CC; // type:function size:0x4 +fn_8011D0D0 = .text:0x8011D0D0; // type:function size:0x4 +fn_8011D0D4 = .text:0x8011D0D4; // type:function size:0x4 +fn_8011D0D8 = .text:0x8011D0D8; // type:function size:0x4 +fn_8011D0DC = .text:0x8011D0DC; // type:function size:0x4 +fn_8011D0E0 = .text:0x8011D0E0; // type:function size:0x4 +fn_8011D0E4 = .text:0x8011D0E4; // type:function size:0x4 +fn_8011D0E8 = .text:0x8011D0E8; // type:function size:0x4 +fn_8011D0EC = .text:0x8011D0EC; // type:function size:0x4 +fn_8011D0F0 = .text:0x8011D0F0; // type:function size:0x4 +fn_8011D0F4 = .text:0x8011D0F4; // type:function size:0x4 +fn_8011D0F8 = .text:0x8011D0F8; // type:function size:0x4 +fn_8011D0FC = .text:0x8011D0FC; // type:function size:0x4 +fn_8011D100 = .text:0x8011D100; // type:function size:0x4 +fn_8011D104 = .text:0x8011D104; // type:function size:0x4 +fn_8011D108 = .text:0x8011D108; // type:function size:0x4 +fn_8011D10C = .text:0x8011D10C; // type:function size:0x4 +fn_8011D110 = .text:0x8011D110; // type:function size:0x4 +fn_8011D114 = .text:0x8011D114; // type:function size:0x4 +fn_8011D118 = .text:0x8011D118; // type:function size:0x4 +fn_8011D11C = .text:0x8011D11C; // type:function size:0x4 +fn_8011D120 = .text:0x8011D120; // type:function size:0x4 +fn_8011D124 = .text:0x8011D124; // type:function size:0x4 +fn_8011D128 = .text:0x8011D128; // type:function size:0x4 +fn_8011D12C = .text:0x8011D12C; // type:function size:0x4 +fn_8011D130 = .text:0x8011D130; // type:function size:0x4 +fn_8011D134 = .text:0x8011D134; // type:function size:0x4 +fn_8011D138 = .text:0x8011D138; // type:function size:0x4 +fn_8011D13C = .text:0x8011D13C; // type:function size:0x4 +fn_8011D140 = .text:0x8011D140; // type:function size:0x4 +fn_8011D144 = .text:0x8011D144; // type:function size:0x4 +fn_8011D148 = .text:0x8011D148; // type:function size:0x4 +fn_8011D14C = .text:0x8011D14C; // type:function size:0x4 +fn_8011D150 = .text:0x8011D150; // type:function size:0x4 +fn_8011D154 = .text:0x8011D154; // type:function size:0x4 +fn_8011D158 = .text:0x8011D158; // type:function size:0x4 +fn_8011D15C = .text:0x8011D15C; // type:function size:0x4 +fn_8011D160 = .text:0x8011D160; // type:function size:0x4 +fn_8011D164 = .text:0x8011D164; // type:function size:0x4 +fn_8011D168 = .text:0x8011D168; // type:function size:0x4 +fn_8011D16C = .text:0x8011D16C; // type:function size:0x4 +fn_8011D170 = .text:0x8011D170; // type:function size:0x4 +fn_8011D174 = .text:0x8011D174; // type:function size:0x4 +fn_8011D178 = .text:0x8011D178; // type:function size:0x4 +fn_8011D17C = .text:0x8011D17C; // type:function size:0x4 +fn_8011D180 = .text:0x8011D180; // type:function size:0x4 +fn_8011D184 = .text:0x8011D184; // type:function size:0x4 +fn_8011D188 = .text:0x8011D188; // type:function size:0x4 +fn_8011D18C = .text:0x8011D18C; // type:function size:0x4 +fn_8011D190 = .text:0x8011D190; // type:function size:0x4 +fn_8011D194 = .text:0x8011D194; // type:function size:0x4 +fn_8011D198 = .text:0x8011D198; // type:function size:0x4 +fn_8011D19C = .text:0x8011D19C; // type:function size:0x4 +fn_8011D1A0 = .text:0x8011D1A0; // type:function size:0x4 +fn_8011D1A4 = .text:0x8011D1A4; // type:function size:0x4 +fn_8011D1A8 = .text:0x8011D1A8; // type:function size:0x4 +fn_8011D1AC = .text:0x8011D1AC; // type:function size:0x4 +fn_8011D1B0 = .text:0x8011D1B0; // type:function size:0x4 +fn_8011D1B4 = .text:0x8011D1B4; // type:function size:0x4 +fn_8011D1B8 = .text:0x8011D1B8; // type:function size:0x4 +fn_8011D1BC = .text:0x8011D1BC; // type:function size:0x4 +fn_8011D1C0 = .text:0x8011D1C0; // type:function size:0x4 +fn_8011D1C4 = .text:0x8011D1C4; // type:function size:0x4 +fn_8011D1C8 = .text:0x8011D1C8; // type:function size:0x4 +fn_8011D1CC = .text:0x8011D1CC; // type:function size:0x4 +fn_8011D1D0 = .text:0x8011D1D0; // type:function size:0x4 +fn_8011D1D4 = .text:0x8011D1D4; // type:function size:0x4 +fn_8011D1D8 = .text:0x8011D1D8; // type:function size:0x4 +fn_8011D1DC = .text:0x8011D1DC; // type:function size:0x4 +fn_8011D1E0 = .text:0x8011D1E0; // type:function size:0x4 +fn_8011D1E4 = .text:0x8011D1E4; // type:function size:0x4 +fn_8011D1E8 = .text:0x8011D1E8; // type:function size:0x4 +fn_8011D1EC = .text:0x8011D1EC; // type:function size:0x4 +fn_8011D1F0 = .text:0x8011D1F0; // type:function size:0x4 +fn_8011D1F4 = .text:0x8011D1F4; // type:function size:0x4 +fn_8011D1F8 = .text:0x8011D1F8; // type:function size:0x4 +fn_8011D1FC = .text:0x8011D1FC; // type:function size:0x4 +fn_8011D200 = .text:0x8011D200; // type:function size:0x4 +fn_8011D204 = .text:0x8011D204; // type:function size:0x4 +fn_8011D208 = .text:0x8011D208; // type:function size:0x4 +fn_8011D20C = .text:0x8011D20C; // type:function size:0x4 +fn_8011D210 = .text:0x8011D210; // type:function size:0x4 +fn_8011D214 = .text:0x8011D214; // type:function size:0x4 +fn_8011D218 = .text:0x8011D218; // type:function size:0x4 +fn_8011D21C = .text:0x8011D21C; // type:function size:0x4 +fn_8011D220 = .text:0x8011D220; // type:function size:0x4 +fn_8011D224 = .text:0x8011D224; // type:function size:0x4 +fn_8011D228 = .text:0x8011D228; // type:function size:0x4 +fn_8011D22C = .text:0x8011D22C; // type:function size:0x4 +fn_8011D230 = .text:0x8011D230; // type:function size:0x4 +fn_8011D234 = .text:0x8011D234; // type:function size:0x4 +fn_8011D238 = .text:0x8011D238; // type:function size:0x4 +fn_8011D23C = .text:0x8011D23C; // type:function size:0x4 +fn_8011D240 = .text:0x8011D240; // type:function size:0x4 +fn_8011D244 = .text:0x8011D244; // type:function size:0x4 +fn_8011D248 = .text:0x8011D248; // type:function size:0x4 +fn_8011D24C = .text:0x8011D24C; // type:function size:0x4 +fn_8011D250 = .text:0x8011D250; // type:function size:0x4 +fn_8011D254 = .text:0x8011D254; // type:function size:0x4 +fn_8011D258 = .text:0x8011D258; // type:function size:0x4 +fn_8011D25C = .text:0x8011D25C; // type:function size:0x4 +fn_8011D260 = .text:0x8011D260; // type:function size:0x4 +fn_8011D264 = .text:0x8011D264; // type:function size:0x4 +fn_8011D268 = .text:0x8011D268; // type:function size:0x4 +fn_8011D26C = .text:0x8011D26C; // type:function size:0x4 +fn_8011D270 = .text:0x8011D270; // type:function size:0x4 +fn_8011D274 = .text:0x8011D274; // type:function size:0x4 +fn_8011D278 = .text:0x8011D278; // type:function size:0x4 +fn_8011D27C = .text:0x8011D27C; // type:function size:0x4 +fn_8011D280 = .text:0x8011D280; // type:function size:0x4 +fn_8011D284 = .text:0x8011D284; // type:function size:0x4 +fn_8011D288 = .text:0x8011D288; // type:function size:0x4 +fn_8011D28C = .text:0x8011D28C; // type:function size:0x4 +fn_8011D290 = .text:0x8011D290; // type:function size:0x4 +fn_8011D294 = .text:0x8011D294; // type:function size:0x4 +fn_8011D298 = .text:0x8011D298; // type:function size:0x4 +fn_8011D29C = .text:0x8011D29C; // type:function size:0x4 +fn_8011D2A0 = .text:0x8011D2A0; // type:function size:0x4 +fn_8011D2A4 = .text:0x8011D2A4; // type:function size:0x4 +fn_8011D2A8 = .text:0x8011D2A8; // type:function size:0x4 +fn_8011D2AC = .text:0x8011D2AC; // type:function size:0x4 +fn_8011D2B0 = .text:0x8011D2B0; // type:function size:0x4 +fn_8011D2B4 = .text:0x8011D2B4; // type:function size:0x4 +fn_8011D2B8 = .text:0x8011D2B8; // type:function size:0x4 +fn_8011D2BC = .text:0x8011D2BC; // type:function size:0x4 +fn_8011D2C0 = .text:0x8011D2C0; // type:function size:0x4 +fn_8011D2C4 = .text:0x8011D2C4; // type:function size:0x4 +fn_8011D2C8 = .text:0x8011D2C8; // type:function size:0x4 +fn_8011D2CC = .text:0x8011D2CC; // type:function size:0x4 +fn_8011D2D0 = .text:0x8011D2D0; // type:function size:0x4 +fn_8011D2D4 = .text:0x8011D2D4; // type:function size:0x4 +fn_8011D2D8 = .text:0x8011D2D8; // type:function size:0x4 +fn_8011D2DC = .text:0x8011D2DC; // type:function size:0x4 +fn_8011D2E0 = .text:0x8011D2E0; // type:function size:0x4 +fn_8011D2E4 = .text:0x8011D2E4; // type:function size:0x4 +fn_8011D2E8 = .text:0x8011D2E8; // type:function size:0x4 +fn_8011D2EC = .text:0x8011D2EC; // type:function size:0x4 +fn_8011D2F0 = .text:0x8011D2F0; // type:function size:0x4 +fn_8011D2F4 = .text:0x8011D2F4; // type:function size:0x4 +fn_8011D2F8 = .text:0x8011D2F8; // type:function size:0x4 +fn_8011D2FC = .text:0x8011D2FC; // type:function size:0x4 +fn_8011D300 = .text:0x8011D300; // type:function size:0x4 +fn_8011D304 = .text:0x8011D304; // type:function size:0x4 +fn_8011D308 = .text:0x8011D308; // type:function size:0x4 +fn_8011D30C = .text:0x8011D30C; // type:function size:0x4 +fn_8011D310 = .text:0x8011D310; // type:function size:0x4 +fn_8011D314 = .text:0x8011D314; // type:function size:0x4 +fn_8011D318 = .text:0x8011D318; // type:function size:0x4 +fn_8011D31C = .text:0x8011D31C; // type:function size:0x4 +fn_8011D320 = .text:0x8011D320; // type:function size:0x4 +fn_8011D324 = .text:0x8011D324; // type:function size:0x4 +fn_8011D328 = .text:0x8011D328; // type:function size:0x4 +fn_8011D32C = .text:0x8011D32C; // type:function size:0x4 +fn_8011D330 = .text:0x8011D330; // type:function size:0x4 +fn_8011D334 = .text:0x8011D334; // type:function size:0x4 +fn_8011D338 = .text:0x8011D338; // type:function size:0x4 +fn_8011D33C = .text:0x8011D33C; // type:function size:0x4 +fn_8011D340 = .text:0x8011D340; // type:function size:0x4 +fn_8011D344 = .text:0x8011D344; // type:function size:0x4 +fn_8011D348 = .text:0x8011D348; // type:function size:0x4 +fn_8011D34C = .text:0x8011D34C; // type:function size:0x4 +fn_8011D350 = .text:0x8011D350; // type:function size:0x4 +fn_8011D354 = .text:0x8011D354; // type:function size:0x4 +fn_8011D358 = .text:0x8011D358; // type:function size:0x4 +fn_8011D35C = .text:0x8011D35C; // type:function size:0x4 +fn_8011D360 = .text:0x8011D360; // type:function size:0x4 +fn_8011D364 = .text:0x8011D364; // type:function size:0x4 +fn_8011D368 = .text:0x8011D368; // type:function size:0x4 +fn_8011D36C = .text:0x8011D36C; // type:function size:0x4 +fn_8011D370 = .text:0x8011D370; // type:function size:0x4 +fn_8011D374 = .text:0x8011D374; // type:function size:0x4 +fn_8011D378 = .text:0x8011D378; // type:function size:0x4 +fn_8011D37C = .text:0x8011D37C; // type:function size:0x4 +fn_8011D380 = .text:0x8011D380; // type:function size:0x4 +fn_8011D384 = .text:0x8011D384; // type:function size:0x4 +fn_8011D388 = .text:0x8011D388; // type:function size:0x4 +fn_8011D38C = .text:0x8011D38C; // type:function size:0x4 +fn_8011D390 = .text:0x8011D390; // type:function size:0x4 +fn_8011D394 = .text:0x8011D394; // type:function size:0x4 +fn_8011D398 = .text:0x8011D398; // type:function size:0x4 +fn_8011D39C = .text:0x8011D39C; // type:function size:0x4 +fn_8011D3A0 = .text:0x8011D3A0; // type:function size:0x4 +fn_8011D3A4 = .text:0x8011D3A4; // type:function size:0x4 +fn_8011D3A8 = .text:0x8011D3A8; // type:function size:0x4 +fn_8011D3AC = .text:0x8011D3AC; // type:function size:0x4 +fn_8011D3B0 = .text:0x8011D3B0; // type:function size:0x4 +fn_8011D3B4 = .text:0x8011D3B4; // type:function size:0x4 +fn_8011D3B8 = .text:0x8011D3B8; // type:function size:0x4 +fn_8011D3BC = .text:0x8011D3BC; // type:function size:0x4 +fn_8011D3C0 = .text:0x8011D3C0; // type:function size:0x4 +fn_8011D3C4 = .text:0x8011D3C4; // type:function size:0x4 +fn_8011D3C8 = .text:0x8011D3C8; // type:function size:0x4 +fn_8011D3CC = .text:0x8011D3CC; // type:function size:0x4 +fn_8011D3D0 = .text:0x8011D3D0; // type:function size:0x4 +fn_8011D3D4 = .text:0x8011D3D4; // type:function size:0x4 +fn_8011D3D8 = .text:0x8011D3D8; // type:function size:0x4 +fn_8011D3DC = .text:0x8011D3DC; // type:function size:0x4 +fn_8011D3E0 = .text:0x8011D3E0; // type:function size:0x4 +fn_8011D3E4 = .text:0x8011D3E4; // type:function size:0x4 +fn_8011D3E8 = .text:0x8011D3E8; // type:function size:0x4 +fn_8011D3EC = .text:0x8011D3EC; // type:function size:0x4 +fn_8011D3F0 = .text:0x8011D3F0; // type:function size:0x4 +fn_8011D3F4 = .text:0x8011D3F4; // type:function size:0x4 +fn_8011D3F8 = .text:0x8011D3F8; // type:function size:0x4 +fn_8011D3FC = .text:0x8011D3FC; // type:function size:0x4 +fn_8011D400 = .text:0x8011D400; // type:function size:0x4 +fn_8011D404 = .text:0x8011D404; // type:function size:0x4 +fn_8011D408 = .text:0x8011D408; // type:function size:0x4 +fn_8011D40C = .text:0x8011D40C; // type:function size:0x4 +fn_8011D410 = .text:0x8011D410; // type:function size:0x4 +fn_8011D414 = .text:0x8011D414; // type:function size:0x4 +fn_8011D418 = .text:0x8011D418; // type:function size:0x4 +fn_8011D41C = .text:0x8011D41C; // type:function size:0x4 +fn_8011D420 = .text:0x8011D420; // type:function size:0x4 +fn_8011D424 = .text:0x8011D424; // type:function size:0x4 +fn_8011D428 = .text:0x8011D428; // type:function size:0x4 +fn_8011D42C = .text:0x8011D42C; // type:function size:0x4 +fn_8011D430 = .text:0x8011D430; // type:function size:0x4 +fn_8011D434 = .text:0x8011D434; // type:function size:0x4 +fn_8011D438 = .text:0x8011D438; // type:function size:0x4 +fn_8011D43C = .text:0x8011D43C; // type:function size:0x4 +fn_8011D440 = .text:0x8011D440; // type:function size:0x4 +fn_8011D444 = .text:0x8011D444; // type:function size:0x4 +fn_8011D448 = .text:0x8011D448; // type:function size:0x4 +fn_8011D44C = .text:0x8011D44C; // type:function size:0x4 +fn_8011D450 = .text:0x8011D450; // type:function size:0x4 +fn_8011D454 = .text:0x8011D454; // type:function size:0x4 +fn_8011D458 = .text:0x8011D458; // type:function size:0x4 +fn_8011D45C = .text:0x8011D45C; // type:function size:0x4 +fn_8011D460 = .text:0x8011D460; // type:function size:0x4 +fn_8011D464 = .text:0x8011D464; // type:function size:0x4 +fn_8011D468 = .text:0x8011D468; // type:function size:0x4 +fn_8011D46C = .text:0x8011D46C; // type:function size:0x4 +fn_8011D470 = .text:0x8011D470; // type:function size:0x4 +fn_8011D474 = .text:0x8011D474; // type:function size:0x4 +fn_8011D478 = .text:0x8011D478; // type:function size:0x4 +fn_8011D47C = .text:0x8011D47C; // type:function size:0x4 +fn_8011D480 = .text:0x8011D480; // type:function size:0x4 +fn_8011D484 = .text:0x8011D484; // type:function size:0x4 +fn_8011D488 = .text:0x8011D488; // type:function size:0x4 +fn_8011D48C = .text:0x8011D48C; // type:function size:0x4 +fn_8011D490 = .text:0x8011D490; // type:function size:0x4 +fn_8011D494 = .text:0x8011D494; // type:function size:0x4 +fn_8011D498 = .text:0x8011D498; // type:function size:0x4 +fn_8011D49C = .text:0x8011D49C; // type:function size:0x4 +fn_8011D4A0 = .text:0x8011D4A0; // type:function size:0x4 +fn_8011D4A4 = .text:0x8011D4A4; // type:function size:0x4 +fn_8011D4A8 = .text:0x8011D4A8; // type:function size:0x4 +fn_8011D4AC = .text:0x8011D4AC; // type:function size:0x4 +fn_8011D4B0 = .text:0x8011D4B0; // type:function size:0x4 +fn_8011D4B4 = .text:0x8011D4B4; // type:function size:0x4 +fn_8011D4B8 = .text:0x8011D4B8; // type:function size:0x4 +fn_8011D4BC = .text:0x8011D4BC; // type:function size:0x4 +fn_8011D4C0 = .text:0x8011D4C0; // type:function size:0x4 +fn_8011D4C4 = .text:0x8011D4C4; // type:function size:0x4 +fn_8011D4C8 = .text:0x8011D4C8; // type:function size:0x4 +fn_8011D4CC = .text:0x8011D4CC; // type:function size:0x4 +fn_8011D4D0 = .text:0x8011D4D0; // type:function size:0x4 +fn_8011D4D4 = .text:0x8011D4D4; // type:function size:0x4 +fn_8011D4D8 = .text:0x8011D4D8; // type:function size:0x4 +fn_8011D4DC = .text:0x8011D4DC; // type:function size:0x4 +fn_8011D4E0 = .text:0x8011D4E0; // type:function size:0x4 +fn_8011D4E4 = .text:0x8011D4E4; // type:function size:0x4 +fn_8011D4E8 = .text:0x8011D4E8; // type:function size:0x4 +fn_8011D4EC = .text:0x8011D4EC; // type:function size:0x4 +fn_8011D4F0 = .text:0x8011D4F0; // type:function size:0x4 +fn_8011D4F4 = .text:0x8011D4F4; // type:function size:0x4 +fn_8011D4F8 = .text:0x8011D4F8; // type:function size:0x4 +fn_8011D4FC = .text:0x8011D4FC; // type:function size:0x4 +fn_8011D500 = .text:0x8011D500; // type:function size:0x4 +fn_8011D504 = .text:0x8011D504; // type:function size:0x4 +fn_8011D508 = .text:0x8011D508; // type:function size:0x4 +fn_8011D50C = .text:0x8011D50C; // type:function size:0x4 +fn_8011D510 = .text:0x8011D510; // type:function size:0x4 +fn_8011D514 = .text:0x8011D514; // type:function size:0x4 +fn_8011D518 = .text:0x8011D518; // type:function size:0x4 +fn_8011D51C = .text:0x8011D51C; // type:function size:0x4 +fn_8011D520 = .text:0x8011D520; // type:function size:0x4 +fn_8011D524 = .text:0x8011D524; // type:function size:0x4 +fn_8011D528 = .text:0x8011D528; // type:function size:0x4 +fn_8011D52C = .text:0x8011D52C; // type:function size:0x4 +fn_8011D530 = .text:0x8011D530; // type:function size:0x4 +fn_8011D534 = .text:0x8011D534; // type:function size:0x4 +fn_8011D538 = .text:0x8011D538; // type:function size:0x4 +fn_8011D53C = .text:0x8011D53C; // type:function size:0x4 +fn_8011D540 = .text:0x8011D540; // type:function size:0x4 +fn_8011D544 = .text:0x8011D544; // type:function size:0x4 +fn_8011D548 = .text:0x8011D548; // type:function size:0x4 +fn_8011D54C = .text:0x8011D54C; // type:function size:0x4 +fn_8011D550 = .text:0x8011D550; // type:function size:0x4 +fn_8011D554 = .text:0x8011D554; // type:function size:0x4 +fn_8011D558 = .text:0x8011D558; // type:function size:0x4 +fn_8011D55C = .text:0x8011D55C; // type:function size:0x4 +fn_8011D560 = .text:0x8011D560; // type:function size:0x4 +fn_8011D564 = .text:0x8011D564; // type:function size:0x4 +fn_8011D568 = .text:0x8011D568; // type:function size:0x4 +fn_8011D56C = .text:0x8011D56C; // type:function size:0x4 +fn_8011D570 = .text:0x8011D570; // type:function size:0x4 +fn_8011D574 = .text:0x8011D574; // type:function size:0x4 +fn_8011D578 = .text:0x8011D578; // type:function size:0x4 +fn_8011D57C = .text:0x8011D57C; // type:function size:0x4 +fn_8011D580 = .text:0x8011D580; // type:function size:0x4 +fn_8011D584 = .text:0x8011D584; // type:function size:0x4 +fn_8011D588 = .text:0x8011D588; // type:function size:0x4 +fn_8011D58C = .text:0x8011D58C; // type:function size:0x4 +fn_8011D590 = .text:0x8011D590; // type:function size:0x4 +fn_8011D594 = .text:0x8011D594; // type:function size:0x4 +fn_8011D598 = .text:0x8011D598; // type:function size:0x4 +fn_8011D59C = .text:0x8011D59C; // type:function size:0x4 +fn_8011D5A0 = .text:0x8011D5A0; // type:function size:0x4 +fn_8011D5A4 = .text:0x8011D5A4; // type:function size:0x4 +fn_8011D5A8 = .text:0x8011D5A8; // type:function size:0x4 +fn_8011D5AC = .text:0x8011D5AC; // type:function size:0x4 +fn_8011D5B0 = .text:0x8011D5B0; // type:function size:0x4 +fn_8011D5B4 = .text:0x8011D5B4; // type:function size:0x4 +fn_8011D5B8 = .text:0x8011D5B8; // type:function size:0x4 +fn_8011D5BC = .text:0x8011D5BC; // type:function size:0x4 +fn_8011D5C0 = .text:0x8011D5C0; // type:function size:0x4 +fn_8011D5C4 = .text:0x8011D5C4; // type:function size:0x4 +fn_8011D5C8 = .text:0x8011D5C8; // type:function size:0x4 +fn_8011D5CC = .text:0x8011D5CC; // type:function size:0x4 +fn_8011D5D0 = .text:0x8011D5D0; // type:function size:0x4 +fn_8011D5D4 = .text:0x8011D5D4; // type:function size:0x4 +fn_8011D5D8 = .text:0x8011D5D8; // type:function size:0x4 +fn_8011D5DC = .text:0x8011D5DC; // type:function size:0x4 +fn_8011D5E0 = .text:0x8011D5E0; // type:function size:0x4 +fn_8011D5E4 = .text:0x8011D5E4; // type:function size:0x4 +fn_8011D5E8 = .text:0x8011D5E8; // type:function size:0x4 +fn_8011D5EC = .text:0x8011D5EC; // type:function size:0x4 +fn_8011D5F0 = .text:0x8011D5F0; // type:function size:0x4 +fn_8011D5F4 = .text:0x8011D5F4; // type:function size:0x4 +fn_8011D5F8 = .text:0x8011D5F8; // type:function size:0x4 +fn_8011D5FC = .text:0x8011D5FC; // type:function size:0x4 +fn_8011D600 = .text:0x8011D600; // type:function size:0x4 +fn_8011D604 = .text:0x8011D604; // type:function size:0x4 +fn_8011D608 = .text:0x8011D608; // type:function size:0x4 +fn_8011D60C = .text:0x8011D60C; // type:function size:0x4 +fn_8011D610 = .text:0x8011D610; // type:function size:0x4 +fn_8011D614 = .text:0x8011D614; // type:function size:0x4 +fn_8011D618 = .text:0x8011D618; // type:function size:0x4 +fn_8011D61C = .text:0x8011D61C; // type:function size:0x4 +fn_8011D620 = .text:0x8011D620; // type:function size:0x4 +fn_8011D624 = .text:0x8011D624; // type:function size:0x4 +fn_8011D628 = .text:0x8011D628; // type:function size:0x4 +fn_8011D62C = .text:0x8011D62C; // type:function size:0x4 +fn_8011D630 = .text:0x8011D630; // type:function size:0x4 +fn_8011D634 = .text:0x8011D634; // type:function size:0x4 +fn_8011D638 = .text:0x8011D638; // type:function size:0x4 +fn_8011D63C = .text:0x8011D63C; // type:function size:0x4 +fn_8011D640 = .text:0x8011D640; // type:function size:0x4 +fn_8011D644 = .text:0x8011D644; // type:function size:0x4 +fn_8011D648 = .text:0x8011D648; // type:function size:0x4 +fn_8011D64C = .text:0x8011D64C; // type:function size:0x4 +fn_8011D650 = .text:0x8011D650; // type:function size:0x4 +fn_8011D654 = .text:0x8011D654; // type:function size:0x4 +fn_8011D658 = .text:0x8011D658; // type:function size:0x4 +fn_8011D65C = .text:0x8011D65C; // type:function size:0x4 +fn_8011D660 = .text:0x8011D660; // type:function size:0x4 +fn_8011D664 = .text:0x8011D664; // type:function size:0x4 +fn_8011D668 = .text:0x8011D668; // type:function size:0x4 +fn_8011D66C = .text:0x8011D66C; // type:function size:0x4 +fn_8011D670 = .text:0x8011D670; // type:function size:0x4 +fn_8011D674 = .text:0x8011D674; // type:function size:0x4 +fn_8011D678 = .text:0x8011D678; // type:function size:0x4 +fn_8011D67C = .text:0x8011D67C; // type:function size:0x4 +fn_8011D680 = .text:0x8011D680; // type:function size:0x4 +fn_8011D684 = .text:0x8011D684; // type:function size:0x4 +fn_8011D688 = .text:0x8011D688; // type:function size:0x4 +fn_8011D68C = .text:0x8011D68C; // type:function size:0x4 +fn_8011D690 = .text:0x8011D690; // type:function size:0x4 +fn_8011D694 = .text:0x8011D694; // type:function size:0x4 +fn_8011D698 = .text:0x8011D698; // type:function size:0x4 +fn_8011D69C = .text:0x8011D69C; // type:function size:0x4 +fn_8011D6A0 = .text:0x8011D6A0; // type:function size:0x4 +fn_8011D6A4 = .text:0x8011D6A4; // type:function size:0x4 +fn_8011D6A8 = .text:0x8011D6A8; // type:function size:0x4 +fn_8011D6AC = .text:0x8011D6AC; // type:function size:0x4 +fn_8011D6B0 = .text:0x8011D6B0; // type:function size:0x4 +fn_8011D6B4 = .text:0x8011D6B4; // type:function size:0x4 +fn_8011D6B8 = .text:0x8011D6B8; // type:function size:0x4 +fn_8011D6BC = .text:0x8011D6BC; // type:function size:0x4 +fn_8011D6C0 = .text:0x8011D6C0; // type:function size:0x4 +fn_8011D6C4 = .text:0x8011D6C4; // type:function size:0x4 +fn_8011D6C8 = .text:0x8011D6C8; // type:function size:0x4 +fn_8011D6CC = .text:0x8011D6CC; // type:function size:0x4 +fn_8011D6D0 = .text:0x8011D6D0; // type:function size:0x4 +fn_8011D6D4 = .text:0x8011D6D4; // type:function size:0x4 +fn_8011D6D8 = .text:0x8011D6D8; // type:function size:0x4 +fn_8011D6DC = .text:0x8011D6DC; // type:function size:0x4 +fn_8011D6E0 = .text:0x8011D6E0; // type:function size:0x4 +fn_8011D6E4 = .text:0x8011D6E4; // type:function size:0x4 +fn_8011D6E8 = .text:0x8011D6E8; // type:function size:0x4 +fn_8011D6EC = .text:0x8011D6EC; // type:function size:0x4 +fn_8011D6F0 = .text:0x8011D6F0; // type:function size:0x4 +fn_8011D6F4 = .text:0x8011D6F4; // type:function size:0x4 +fn_8011D6F8 = .text:0x8011D6F8; // type:function size:0x4 +fn_8011D6FC = .text:0x8011D6FC; // type:function size:0x4 +fn_8011D700 = .text:0x8011D700; // type:function size:0x4 +fn_8011D704 = .text:0x8011D704; // type:function size:0x4 +fn_8011D708 = .text:0x8011D708; // type:function size:0x4 +fn_8011D70C = .text:0x8011D70C; // type:function size:0x4 +fn_8011D710 = .text:0x8011D710; // type:function size:0x4 +fn_8011D714 = .text:0x8011D714; // type:function size:0x4 +fn_8011D718 = .text:0x8011D718; // type:function size:0x4 +fn_8011D71C = .text:0x8011D71C; // type:function size:0x4 +fn_8011D720 = .text:0x8011D720; // type:function size:0x4 +fn_8011D724 = .text:0x8011D724; // type:function size:0x4 +fn_8011D728 = .text:0x8011D728; // type:function size:0x4 +fn_8011D72C = .text:0x8011D72C; // type:function size:0x4 +fn_8011D730 = .text:0x8011D730; // type:function size:0x4 +fn_8011D734 = .text:0x8011D734; // type:function size:0x4 +fn_8011D738 = .text:0x8011D738; // type:function size:0x4 +fn_8011D73C = .text:0x8011D73C; // type:function size:0x4 +fn_8011D740 = .text:0x8011D740; // type:function size:0x4 +fn_8011D744 = .text:0x8011D744; // type:function size:0x4 +fn_8011D748 = .text:0x8011D748; // type:function size:0x4 +fn_8011D74C = .text:0x8011D74C; // type:function size:0x4 +fn_8011D750 = .text:0x8011D750; // type:function size:0x4 +fn_8011D754 = .text:0x8011D754; // type:function size:0x4 +fn_8011D758 = .text:0x8011D758; // type:function size:0x4 +fn_8011D75C = .text:0x8011D75C; // type:function size:0x4 +fn_8011D760 = .text:0x8011D760; // type:function size:0x4 +fn_8011D764 = .text:0x8011D764; // type:function size:0x4 +fn_8011D768 = .text:0x8011D768; // type:function size:0x4 +fn_8011D76C = .text:0x8011D76C; // type:function size:0x4 +fn_8011D770 = .text:0x8011D770; // type:function size:0x4 +fn_8011D774 = .text:0x8011D774; // type:function size:0x4 +fn_8011D778 = .text:0x8011D778; // type:function size:0x4 +fn_8011D77C = .text:0x8011D77C; // type:function size:0x4 +fn_8011D780 = .text:0x8011D780; // type:function size:0x4 +fn_8011D784 = .text:0x8011D784; // type:function size:0x4 +fn_8011D788 = .text:0x8011D788; // type:function size:0x4 +fn_8011D78C = .text:0x8011D78C; // type:function size:0x4 +fn_8011D790 = .text:0x8011D790; // type:function size:0x4 +fn_8011D794 = .text:0x8011D794; // type:function size:0x4 +fn_8011D798 = .text:0x8011D798; // type:function size:0x4 +fn_8011D79C = .text:0x8011D79C; // type:function size:0x4 +fn_8011D7A0 = .text:0x8011D7A0; // type:function size:0x4 +fn_8011D7A4 = .text:0x8011D7A4; // type:function size:0x4 +fn_8011D7A8 = .text:0x8011D7A8; // type:function size:0x4 +fn_8011D7AC = .text:0x8011D7AC; // type:function size:0x4 +fn_8011D7B0 = .text:0x8011D7B0; // type:function size:0x4 +fn_8011D7B4 = .text:0x8011D7B4; // type:function size:0x4 +fn_8011D7B8 = .text:0x8011D7B8; // type:function size:0x4 +fn_8011D7BC = .text:0x8011D7BC; // type:function size:0x4 +fn_8011D7C0 = .text:0x8011D7C0; // type:function size:0x4 +fn_8011D7C4 = .text:0x8011D7C4; // type:function size:0x4 +fn_8011D7C8 = .text:0x8011D7C8; // type:function size:0x4 +fn_8011D7CC = .text:0x8011D7CC; // type:function size:0x4 +fn_8011D7D0 = .text:0x8011D7D0; // type:function size:0x4 +fn_8011D7D4 = .text:0x8011D7D4; // type:function size:0x4 +fn_8011D7D8 = .text:0x8011D7D8; // type:function size:0x4 +fn_8011D7DC = .text:0x8011D7DC; // type:function size:0x4 +fn_8011D7E0 = .text:0x8011D7E0; // type:function size:0x4 +fn_8011D7E4 = .text:0x8011D7E4; // type:function size:0x4 +fn_8011D7E8 = .text:0x8011D7E8; // type:function size:0x4 +fn_8011D7EC = .text:0x8011D7EC; // type:function size:0x4 +fn_8011D7F0 = .text:0x8011D7F0; // type:function size:0x4 +fn_8011D7F4 = .text:0x8011D7F4; // type:function size:0x4 +fn_8011D7F8 = .text:0x8011D7F8; // type:function size:0x4 +fn_8011D7FC = .text:0x8011D7FC; // type:function size:0x4 +fn_8011D800 = .text:0x8011D800; // type:function size:0x4 +fn_8011D804 = .text:0x8011D804; // type:function size:0x4 +fn_8011D808 = .text:0x8011D808; // type:function size:0x4 +fn_8011D80C = .text:0x8011D80C; // type:function size:0x4 +fn_8011D810 = .text:0x8011D810; // type:function size:0x4 +fn_8011D814 = .text:0x8011D814; // type:function size:0x4 +fn_8011D818 = .text:0x8011D818; // type:function size:0x4 +fn_8011D81C = .text:0x8011D81C; // type:function size:0x4 +fn_8011D820 = .text:0x8011D820; // type:function size:0x4 +fn_8011D824 = .text:0x8011D824; // type:function size:0x4 +fn_8011D828 = .text:0x8011D828; // type:function size:0x4 +fn_8011D82C = .text:0x8011D82C; // type:function size:0x4 +fn_8011D830 = .text:0x8011D830; // type:function size:0x4 +fn_8011D834 = .text:0x8011D834; // type:function size:0x4 +fn_8011D838 = .text:0x8011D838; // type:function size:0x4 +fn_8011D83C = .text:0x8011D83C; // type:function size:0x4 +fn_8011D840 = .text:0x8011D840; // type:function size:0x4 +fn_8011D844 = .text:0x8011D844; // type:function size:0x4 +fn_8011D848 = .text:0x8011D848; // type:function size:0x4 +fn_8011D84C = .text:0x8011D84C; // type:function size:0x4 +fn_8011D850 = .text:0x8011D850; // type:function size:0x4 +fn_8011D854 = .text:0x8011D854; // type:function size:0x4 +fn_8011D858 = .text:0x8011D858; // type:function size:0x4 +fn_8011D85C = .text:0x8011D85C; // type:function size:0x4 +fn_8011D860 = .text:0x8011D860; // type:function size:0x4 +fn_8011D864 = .text:0x8011D864; // type:function size:0x4 +fn_8011D868 = .text:0x8011D868; // type:function size:0x4 +fn_8011D86C = .text:0x8011D86C; // type:function size:0x4 +fn_8011D870 = .text:0x8011D870; // type:function size:0x4 +fn_8011D874 = .text:0x8011D874; // type:function size:0x4 +fn_8011D878 = .text:0x8011D878; // type:function size:0x4 +fn_8011D87C = .text:0x8011D87C; // type:function size:0x4 +fn_8011D880 = .text:0x8011D880; // type:function size:0x4 +fn_8011D884 = .text:0x8011D884; // type:function size:0x4 +fn_8011D888 = .text:0x8011D888; // type:function size:0x4 +fn_8011D88C = .text:0x8011D88C; // type:function size:0x4 +fn_8011D890 = .text:0x8011D890; // type:function size:0x4 +fn_8011D894 = .text:0x8011D894; // type:function size:0x4 +_ctors = .ctors:0x8011D8A0; // type:label scope:global data:4byte +__init_cpp_exceptions_reference = .ctors:0x8011D8A0; // type:object size:0x4 scope:global +_dtors = .dtors:0x8011D8C0; // type:label scope:global data:4byte +__destroy_global_chain_reference = .dtors:0x8011D8C0; // type:object size:0x4 scope:global +__fini_cpp_exceptions_reference = .dtors:0x8011D8C4; // type:object size:0x4 scope:global +lbl_8011D8E0 = .rodata:0x8011D8E0; // type:object size:0x10 data:4byte +lbl_8011D8F0 = .rodata:0x8011D8F0; // type:object size:0x10 data:4byte +lbl_8011D900 = .rodata:0x8011D900; // type:object size:0x10 data:4byte +lbl_8011D910 = .rodata:0x8011D910; // type:object size:0x20 data:byte +lbl_8011D930 = .rodata:0x8011D930; // type:object size:0x10 data:4byte +lbl_8011D940 = .rodata:0x8011D940; // type:object size:0x24 data:4byte +lbl_8011D964 = .rodata:0x8011D964; // type:object size:0xC data:4byte +lbl_8011D970 = .rodata:0x8011D970; // type:object size:0x20 data:4byte +lbl_8011D990 = .rodata:0x8011D990; // type:object size:0x7C data:4byte +lbl_8011DA0C = .rodata:0x8011DA0C; // type:object size:0x24 data:4byte +lbl_8011DA30 = .rodata:0x8011DA30; // type:object size:0x10 data:4byte +lbl_8011DA40 = .rodata:0x8011DA40; // type:object size:0x38 data:4byte +lbl_8011DA78 = .rodata:0x8011DA78; // type:object size:0x38 data:4byte +lbl_8011DAB0 = .rodata:0x8011DAB0; // type:object size:0x20 data:4byte +lbl_8011DAD0 = .rodata:0x8011DAD0; // type:object size:0x10 data:4byte +lbl_8011DAE0 = .rodata:0x8011DAE0; // type:object size:0x90 data:4byte +lbl_8011DB70 = .rodata:0x8011DB70; // type:object size:0x20 data:4byte +lbl_8011DB90 = .rodata:0x8011DB90; // type:object size:0x20 data:4byte +lbl_8011DBB0 = .rodata:0x8011DBB0; // type:object size:0x20 +lbl_8011DBD0 = .rodata:0x8011DBD0; // type:object size:0x20 +lbl_8011DBF0 = .rodata:0x8011DBF0; // type:object size:0x10 +lbl_8011DC00 = .rodata:0x8011DC00; // type:object size:0x20 data:4byte +lbl_8011DC20 = .rodata:0x8011DC20; // type:object size:0x24 +lbl_8011DC44 = .rodata:0x8011DC44; // type:object size:0x4C +lbl_8011DC90 = .rodata:0x8011DC90; // type:object size:0x68 data:4byte +lbl_8011DCF8 = .rodata:0x8011DCF8; // type:object size:0x38 data:4byte +lbl_8011DD30 = .rodata:0x8011DD30; // type:object size:0x3C data:4byte +lbl_8011DD6C = .rodata:0x8011DD6C; // type:object size:0x14 data:2byte +lbl_8011DD80 = .rodata:0x8011DD80; // type:object size:0x20 data:4byte +lbl_8011DDA0 = .rodata:0x8011DDA0; // type:object size:0x20 data:4byte +lbl_8011DDC0 = .rodata:0x8011DDC0; // type:object size:0x20 data:4byte +lbl_8011DDE0 = .rodata:0x8011DDE0; // type:object size:0x20 data:4byte +lbl_8011DE00 = .rodata:0x8011DE00; // type:object size:0xC data:4byte +lbl_8011DE0C = .rodata:0x8011DE0C; // type:object size:0xC data:4byte +lbl_8011DE18 = .rodata:0x8011DE18; // type:object size:0xC data:4byte +lbl_8011DE24 = .rodata:0x8011DE24; // type:object size:0xC data:4byte +lbl_8011DE30 = .rodata:0x8011DE30; // type:object size:0x18 +lbl_8011DE48 = .rodata:0x8011DE48; // type:object size:0x70 data:4byte +lbl_8011DEB8 = .rodata:0x8011DEB8; // type:object size:0xC data:byte +lbl_8011DEC4 = .rodata:0x8011DEC4; // type:object size:0x1C +lbl_8011DEE0 = .rodata:0x8011DEE0; // type:object size:0x24 data:4byte +lbl_8011DF04 = .rodata:0x8011DF04; // type:object size:0x20 data:4byte +lbl_8011DF24 = .rodata:0x8011DF24; // type:object size:0x2C data:4byte +lbl_8011DF50 = .rodata:0x8011DF50; // type:object size:0x10 data:4byte +lbl_8011DF60 = .rodata:0x8011DF60; // type:object size:0x28 data:4byte +lbl_8011DF88 = .rodata:0x8011DF88; // type:object size:0x28 data:4byte +lbl_8011DFB0 = .rodata:0x8011DFB0; // type:object size:0x20 data:4byte +lbl_8011DFD0 = .rodata:0x8011DFD0; // type:object size:0x20 data:4byte +lbl_8011DFF0 = .rodata:0x8011DFF0; // type:object size:0x20 data:4byte +lbl_8011E010 = .rodata:0x8011E010; // type:object size:0x10 data:4byte +lbl_8011E020 = .rodata:0x8011E020; // type:object size:0x90 data:byte +lbl_8011E0B0 = .rodata:0x8011E0B0; // type:object size:0x10 +lbl_8011E0C0 = .rodata:0x8011E0C0; // type:object size:0x10 +lbl_8011E0D0 = .rodata:0x8011E0D0; // type:object size:0x18 data:double +lbl_8011E0E8 = .rodata:0x8011E0E8; // type:object size:0x54 +lbl_8011E13C = .rodata:0x8011E13C; // type:object size:0x14 +lbl_8011E150 = .rodata:0x8011E150; // type:object size:0x10 +lbl_8011E160 = .rodata:0x8011E160; // type:object size:0x20 +lbl_8011E180 = .rodata:0x8011E180; // type:object size:0x38 +lbl_8011E1B8 = .rodata:0x8011E1B8; // type:object size:0x40 +lbl_8011E1F8 = .rodata:0x8011E1F8; // type:object size:0x18 data:4byte +lbl_8011E210 = .rodata:0x8011E210; // type:object size:0xE0 +@stringBase0 = .rodata:0x8011E2F0; // type:object size:0x25 scope:local data:string_table +lbl_8011E318 = .rodata:0x8011E318; // type:object size:0x10 +lbl_8011E328 = .rodata:0x8011E328; // type:object size:0x30 data:double +lbl_8011E358 = .rodata:0x8011E358; // type:object size:0x108 +lbl_8011E460 = .rodata:0x8011E460; // type:object size:0x80 +lbl_8011E4E0 = .rodata:0x8011E4E0; // type:object size:0x10 +lbl_8011E4F0 = .rodata:0x8011E4F0; // type:object size:0x40 data:double +lbl_8011E530 = .rodata:0x8011E530; // type:object size:0x68 data:double +lbl_8011E598 = .rodata:0x8011E598; // type:object size:0x98 +@62 = .rodata:0x8011E630; // type:object size:0x1B scope:local data:string +lbl_8011E650 = .rodata:0x8011E650; // type:object size:0x20 +lbl_8011E670 = .rodata:0x8011E670; // type:object size:0x10 data:4byte +lbl_8011E680 = .rodata:0x8011E680; // type:object size:0x28 data:4byte +lbl_8011E6A8 = .rodata:0x8011E6A8; // type:object size:0x28 data:4byte +lbl_8011E6D0 = .rodata:0x8011E6D0; // type:object size:0x28 data:4byte +@154 = .rodata:0x8011E6F8; // type:object size:0x21 scope:local data:string +@155 = .rodata:0x8011E71C; // type:object size:0x24 scope:local data:string +lbl_8011E740 = .rodata:0x8011E740; // type:object size:0x40 +lbl_8011E780 = .rodata:0x8011E780; // type:object size:0x18 +lbl_8011E798 = .rodata:0x8011E798; // type:object size:0x88 +lbl_8011E820 = .rodata:0x8011E820; // type:object size:0x88 data:byte +lbl_8011E8A8 = .rodata:0x8011E8A8; // type:object size:0x100 +lbl_8011E9C0 = .data:0x8011E9C0; // type:object size:0x10 data:string +lbl_8011E9D0 = .data:0x8011E9D0; // type:object size:0x10 +lbl_8011E9E0 = .data:0x8011E9E0; // type:object size:0x124 +jumptable_8011EB04 = .data:0x8011EB04; // type:object size:0x34 scope:local +lbl_8011EB38 = .data:0x8011EB38; // type:object size:0x11 data:string +lbl_8011EB49 = .data:0x8011EB49; // type:object size:0x11 data:string +lbl_8011EB5A = .data:0x8011EB5A; // type:object size:0x10 data:string +lbl_8011EB6A = .data:0x8011EB6A; // type:object size:0x10 data:string +lbl_8011EB7A = .data:0x8011EB7A; // type:object size:0x14 data:string +lbl_8011EB8E = .data:0x8011EB8E; // type:object size:0x11 data:string +lbl_8011EB9F = .data:0x8011EB9F; // type:object size:0x10 data:string +lbl_8011EBAF = .data:0x8011EBAF; // type:object size:0xF data:string +lbl_8011EBBE = .data:0x8011EBBE; // type:object size:0x10 data:string +lbl_8011EBCE = .data:0x8011EBCE; // type:object size:0x13 data:string +lbl_8011EBE1 = .data:0x8011EBE1; // type:object size:0xF data:string +lbl_8011EBF0 = .data:0x8011EBF0; // type:object size:0x13 data:string +lbl_8011EC03 = .data:0x8011EC03; // type:object size:0x13 data:string +lbl_8011EC16 = .data:0x8011EC16; // type:object size:0x12 data:string +lbl_8011EC28 = .data:0x8011EC28; // type:object size:0x10 data:string +lbl_8011EC38 = .data:0x8011EC38; // type:object size:0x14 data:string +lbl_8011EC4C = .data:0x8011EC4C; // type:object size:0x14 data:string +lbl_8011EC60 = .data:0x8011EC60; // type:object size:0x13 data:string +lbl_8011EC73 = .data:0x8011EC73; // type:object size:0x10 data:string +lbl_8011EC83 = .data:0x8011EC83; // type:object size:0x11 data:string +lbl_8011EC94 = .data:0x8011EC94; // type:object size:0xE data:string +lbl_8011ECA2 = .data:0x8011ECA2; // type:object size:0x12 data:string +lbl_8011ECB4 = .data:0x8011ECB4; // type:object size:0x11 data:string +lbl_8011ECC5 = .data:0x8011ECC5; // type:object size:0xF data:string +lbl_8011ECD4 = .data:0x8011ECD4; // type:object size:0x13 data:string +lbl_8011ECE7 = .data:0x8011ECE7; // type:object size:0x13 data:string +lbl_8011ECFA = .data:0x8011ECFA; // type:object size:0x12 data:string +lbl_8011ED0C = .data:0x8011ED0C; // type:object size:0xE data:string +lbl_8011ED1A = .data:0x8011ED1A; // type:object size:0xE data:string +lbl_8011ED28 = .data:0x8011ED28; // type:object size:0xE data:string +lbl_8011ED36 = .data:0x8011ED36; // type:object size:0xE data:string +lbl_8011ED44 = .data:0x8011ED44; // type:object size:0xE data:string +lbl_8011ED52 = .data:0x8011ED52; // type:object size:0xE data:string +lbl_8011ED60 = .data:0x8011ED60; // type:object size:0xE data:string +lbl_8011ED6E = .data:0x8011ED6E; // type:object size:0xE data:string +lbl_8011ED7C = .data:0x8011ED7C; // type:object size:0xE data:string +lbl_8011ED8A = .data:0x8011ED8A; // type:object size:0xE data:string +lbl_8011ED98 = .data:0x8011ED98; // type:object size:0xE data:string +lbl_8011EDA6 = .data:0x8011EDA6; // type:object size:0xE data:string +lbl_8011EDB4 = .data:0x8011EDB4; // type:object size:0xE data:string +lbl_8011EDC2 = .data:0x8011EDC2; // type:object size:0xE data:string +lbl_8011EDD0 = .data:0x8011EDD0; // type:object size:0xE data:string +lbl_8011EDDE = .data:0x8011EDDE; // type:object size:0xE data:string +lbl_8011EDEC = .data:0x8011EDEC; // type:object size:0xE data:string +lbl_8011EDFA = .data:0x8011EDFA; // type:object size:0xE data:string +lbl_8011EE08 = .data:0x8011EE08; // type:object size:0xE data:string +lbl_8011EE16 = .data:0x8011EE16; // type:object size:0xE data:string +lbl_8011EE24 = .data:0x8011EE24; // type:object size:0xE data:string +lbl_8011EE32 = .data:0x8011EE32; // type:object size:0xE data:string +lbl_8011EE40 = .data:0x8011EE40; // type:object size:0xE data:string +lbl_8011EE4E = .data:0x8011EE4E; // type:object size:0xE data:string +lbl_8011EE5C = .data:0x8011EE5C; // type:object size:0xE data:string +lbl_8011EE6A = .data:0x8011EE6A; // type:object size:0xE data:string +lbl_8011EE78 = .data:0x8011EE78; // type:object size:0xE data:string +lbl_8011EE86 = .data:0x8011EE86; // type:object size:0xE data:string +lbl_8011EE94 = .data:0x8011EE94; // type:object size:0xE data:string +lbl_8011EEA2 = .data:0x8011EEA2; // type:object size:0xE data:string +lbl_8011EEB0 = .data:0x8011EEB0; // type:object size:0xE data:string +lbl_8011EEBE = .data:0x8011EEBE; // type:object size:0xE data:string +lbl_8011EECC = .data:0x8011EECC; // type:object size:0xE data:string +lbl_8011EEDA = .data:0x8011EEDA; // type:object size:0xE data:string +lbl_8011EEE8 = .data:0x8011EEE8; // type:object size:0xE data:string +lbl_8011EEF6 = .data:0x8011EEF6; // type:object size:0xE data:string +lbl_8011EF04 = .data:0x8011EF04; // type:object size:0xE data:string +lbl_8011EF12 = .data:0x8011EF12; // type:object size:0xE data:string +lbl_8011EF20 = .data:0x8011EF20; // type:object size:0xE data:string +lbl_8011EF2E = .data:0x8011EF2E; // type:object size:0xE data:string +lbl_8011EF3C = .data:0x8011EF3C; // type:object size:0xE data:string +lbl_8011EF4A = .data:0x8011EF4A; // type:object size:0xE data:string +lbl_8011EF58 = .data:0x8011EF58; // type:object size:0xE data:string +lbl_8011EF66 = .data:0x8011EF66; // type:object size:0xE data:string +lbl_8011EF74 = .data:0x8011EF74; // type:object size:0xE data:string +lbl_8011EF82 = .data:0x8011EF82; // type:object size:0xE data:string +lbl_8011EF90 = .data:0x8011EF90; // type:object size:0xE data:string +lbl_8011EF9E = .data:0x8011EF9E; // type:object size:0xE data:string +lbl_8011EFAC = .data:0x8011EFAC; // type:object size:0xE data:string +lbl_8011EFBA = .data:0x8011EFBA; // type:object size:0xE data:string +lbl_8011EFC8 = .data:0x8011EFC8; // type:object size:0xE data:string +lbl_8011EFD6 = .data:0x8011EFD6; // type:object size:0xE data:string +lbl_8011EFE4 = .data:0x8011EFE4; // type:object size:0xE data:string +lbl_8011EFF2 = .data:0x8011EFF2; // type:object size:0xE data:string +lbl_8011F000 = .data:0x8011F000; // type:object size:0xE data:string +lbl_8011F00E = .data:0x8011F00E; // type:object size:0xE data:string +lbl_8011F01C = .data:0x8011F01C; // type:object size:0xE data:string +lbl_8011F02A = .data:0x8011F02A; // type:object size:0xE data:string +lbl_8011F038 = .data:0x8011F038; // type:object size:0xE data:string +lbl_8011F046 = .data:0x8011F046; // type:object size:0xE data:string +lbl_8011F054 = .data:0x8011F054; // type:object size:0xE data:string +lbl_8011F062 = .data:0x8011F062; // type:object size:0xE data:string +lbl_8011F070 = .data:0x8011F070; // type:object size:0xE data:string +lbl_8011F07E = .data:0x8011F07E; // type:object size:0xE data:string +lbl_8011F08C = .data:0x8011F08C; // type:object size:0xE data:string +lbl_8011F09A = .data:0x8011F09A; // type:object size:0xF data:string +lbl_8011F0A9 = .data:0x8011F0A9; // type:object size:0x13 data:string +lbl_8011F0BC = .data:0x8011F0BC; // type:object size:0x13 data:string +lbl_8011F0CF = .data:0x8011F0CF; // type:object size:0x12 data:string +lbl_8011F0E1 = .data:0x8011F0E1; // type:object size:0xE data:string +lbl_8011F0EF = .data:0x8011F0EF; // type:object size:0x11 data:string +lbl_8011F100 = .data:0x8011F100; // type:object size:0x10 data:string +lbl_8011F110 = .data:0x8011F110; // type:object size:0x11 data:string +lbl_8011F121 = .data:0x8011F121; // type:object size:0xE data:string +lbl_8011F12F = .data:0x8011F12F; // type:object size:0x10 data:string +lbl_8011F13F = .data:0x8011F13F; // type:object size:0x11 data:string +lbl_8011F150 = .data:0x8011F150; // type:object size:0x11 data:string +lbl_8011F161 = .data:0x8011F161; // type:object size:0x11 data:string +lbl_8011F172 = .data:0x8011F172; // type:object size:0x10 data:string +lbl_8011F182 = .data:0x8011F182; // type:object size:0xF data:string +lbl_8011F191 = .data:0x8011F191; // type:object size:0x13 data:string +lbl_8011F1A4 = .data:0x8011F1A4; // type:object size:0x13 data:string +lbl_8011F1B7 = .data:0x8011F1B7; // type:object size:0x12 data:string +lbl_8011F1C9 = .data:0x8011F1C9; // type:object size:0x11 data:string +lbl_8011F1DA = .data:0x8011F1DA; // type:object size:0x10 data:string +lbl_8011F1EA = .data:0x8011F1EA; // type:object size:0xD data:string +lbl_8011F1F7 = .data:0x8011F1F7; // type:object size:0x11 data:string +lbl_8011F208 = .data:0x8011F208; // type:object size:0xF data:string +lbl_8011F217 = .data:0x8011F217; // type:object size:0xF data:string +lbl_8011F226 = .data:0x8011F226; // type:object size:0xF data:string +lbl_8011F235 = .data:0x8011F235; // type:object size:0xD data:string +lbl_8011F242 = .data:0x8011F242; // type:object size:0xD data:string +lbl_8011F24F = .data:0x8011F24F; // type:object size:0xD data:string +lbl_8011F25C = .data:0x8011F25C; // type:object size:0xD data:string +lbl_8011F269 = .data:0x8011F269; // type:object size:0xD data:string +lbl_8011F276 = .data:0x8011F276; // type:object size:0xD data:string +lbl_8011F283 = .data:0x8011F283; // type:object size:0xD data:string +lbl_8011F290 = .data:0x8011F290; // type:object size:0xD data:string +lbl_8011F29D = .data:0x8011F29D; // type:object size:0xD data:string +lbl_8011F2AA = .data:0x8011F2AA; // type:object size:0x11 data:string +lbl_8011F2BB = .data:0x8011F2BB; // type:object size:0x15 data:string +lbl_8011F2D0 = .data:0x8011F2D0; // type:object size:0x15 data:string +lbl_8011F2E5 = .data:0x8011F2E5; // type:object size:0x14 data:string +lbl_8011F2F9 = .data:0x8011F2F9; // type:object size:0xF data:string +lbl_8011F308 = .data:0x8011F308; // type:object size:0x13 data:string +lbl_8011F31B = .data:0x8011F31B; // type:object size:0x13 data:string +lbl_8011F32E = .data:0x8011F32E; // type:object size:0x12 data:string +lbl_8011F340 = .data:0x8011F340; // type:object size:0xD data:string +lbl_8011F34D = .data:0x8011F34D; // type:object size:0xF data:string +lbl_8011F35C = .data:0x8011F35C; // type:object size:0x13 data:string +lbl_8011F36F = .data:0x8011F36F; // type:object size:0x13 data:string +lbl_8011F382 = .data:0x8011F382; // type:object size:0x12 data:string +lbl_8011F394 = .data:0x8011F394; // type:object size:0x10 +lbl_8011F3A4 = .data:0x8011F3A4; // type:object size:0x468 data:4byte +lbl_8011F80C = .data:0x8011F80C; // type:object size:0x1D data:string +lbl_8011F829 = .data:0x8011F829; // type:object size:0x1F data:string +lbl_8011F848 = .data:0x8011F848; // type:object size:0x3C +lbl_8011F884 = .data:0x8011F884; // type:object size:0x1A data:string +lbl_8011F89E = .data:0x8011F89E; // type:object size:0x122 +lbl_8011F9C0 = .data:0x8011F9C0; // type:object size:0x20 +lbl_8011F9E0 = .data:0x8011F9E0; // type:object size:0x2000 +lbl_801219E0 = .data:0x801219E0; // type:object size:0x150 +lbl_80121B30 = .data:0x80121B30; // type:object size:0x78 +lbl_80121BA8 = .data:0x80121BA8; // type:object size:0x50 +lbl_80121BF8 = .data:0x80121BF8; // type:object size:0x128 +lbl_80121D20 = .data:0x80121D20; // type:object size:0x40 +lbl_80121D60 = .data:0x80121D60; // type:object size:0x1F data:string +lbl_80121D7F = .data:0x80121D7F; // type:object size:0x31 +lbl_80121DB0 = .data:0x80121DB0; // type:object size:0x12 +lbl_80121DC2 = .data:0x80121DC2; // type:object size:0x10E +jumptable_80121ED0 = .data:0x80121ED0; // type:object size:0x2C scope:local +jumptable_80121F00 = .data:0x80121F00; // type:object size:0x28 scope:local +jumptable_80121F28 = .data:0x80121F28; // type:object size:0x2C scope:local +lbl_80121F54 = .data:0x80121F54; // type:object size:0x1C +lbl_80121F70 = .data:0x80121F70; // type:object size:0xC data:byte +jumptable_80121F7C = .data:0x80121F7C; // type:object size:0x28 scope:local +lbl_80121FA4 = .data:0x80121FA4; // type:object size:0x18 data:string +jumptable_80121FBC = .data:0x80121FBC; // type:object size:0x28 scope:local +jumptable_80121FE4 = .data:0x80121FE4; // type:object size:0x28 scope:local +lbl_8012200C = .data:0x8012200C; // type:object size:0x60 +lbl_8012206C = .data:0x8012206C; // type:object size:0x30 +lbl_8012209C = .data:0x8012209C; // type:object size:0x14 +jumptable_801220B0 = .data:0x801220B0; // type:object size:0x30 scope:local +jumptable_801220E0 = .data:0x801220E0; // type:object size:0x28 scope:local +jumptable_80122108 = .data:0x80122108; // type:object size:0x28 scope:local +lbl_80122130 = .data:0x80122130; // type:object size:0x19 data:string +lbl_80122149 = .data:0x80122149; // type:object size:0xA data:string +lbl_80122153 = .data:0x80122153; // type:object size:0x2D +lbl_80122180 = .data:0x80122180; // type:object size:0xAFC0 +lbl_8012D140 = .data:0x8012D140; // type:object size:0x1B data:string +lbl_8012D15B = .data:0x8012D15B; // type:object size:0x16 data:string +lbl_8012D171 = .data:0x8012D171; // type:object size:0x21 data:string +lbl_8012D192 = .data:0x8012D192; // type:object size:0x26 +lbl_8012D1B8 = .data:0x8012D1B8; // type:object size:0x58 data:4byte +lbl_8012D210 = .data:0x8012D210; // type:object size:0x28 +lbl_8012D238 = .data:0x8012D238; // type:object size:0x1C data:string +lbl_8012D254 = .data:0x8012D254; // type:object size:0x1C +jumptable_8012D270 = .data:0x8012D270; // type:object size:0x2C scope:local +jumptable_8012D29C = .data:0x8012D29C; // type:object size:0x68 scope:local +jumptable_8012D304 = .data:0x8012D304; // type:object size:0xF0 scope:local +jumptable_8012D3F4 = .data:0x8012D3F4; // type:object size:0x20 scope:local +lbl_8012D418 = .data:0x8012D418; // type:object size:0x15 data:string +lbl_8012D42D = .data:0x8012D42D; // type:object size:0x1F data:string +lbl_8012D44C = .data:0x8012D44C; // type:object size:0x18 +lbl_8012D464 = .data:0x8012D464; // type:object size:0x30 +lbl_8012D494 = .data:0x8012D494; // type:object size:0x20 +lbl_8012D4B4 = .data:0x8012D4B4; // type:object size:0x24 +jumptable_8012D4D8 = .data:0x8012D4D8; // type:object size:0x1C scope:local +lbl_8012D4F8 = .data:0x8012D4F8; // type:object size:0xCA +lbl_8012D5C2 = .data:0x8012D5C2; // type:object size:0x1C data:string +lbl_8012D5DE = .data:0x8012D5DE; // type:object size:0x1C data:string +lbl_8012D5FA = .data:0x8012D5FA; // type:object size:0x1D data:string +lbl_8012D617 = .data:0x8012D617; // type:object size:0x18 data:string +lbl_8012D62F = .data:0x8012D62F; // type:object size:0xC data:string +lbl_8012D63B = .data:0x8012D63B; // type:object size:0x45 +lbl_8012D680 = .data:0x8012D680; // type:object size:0x45 +lbl_8012D6C5 = .data:0x8012D6C5; // type:object size:0x19 data:string +lbl_8012D6DE = .data:0x8012D6DE; // type:object size:0x17 data:string +lbl_8012D6F5 = .data:0x8012D6F5; // type:object size:0x1B3 +lbl_8012D8A8 = .data:0x8012D8A8; // type:object size:0xF data:byte +lbl_8012D8B7 = .data:0x8012D8B7; // type:object size:0x800 +lbl_8012E0B7 = .data:0x8012E0B7; // type:object size:0x19 +lbl_8012E0D0 = .data:0x8012E0D0; // type:object size:0x21A +lbl_8012E2EA = .data:0x8012E2EA; // type:object size:0xB data:string +lbl_8012E2F5 = .data:0x8012E2F5; // type:object size:0x273 +lbl_8012E568 = .data:0x8012E568; // type:object size:0x12 data:string +lbl_8012E57A = .data:0x8012E57A; // type:object size:0xD6 +lbl_8012E650 = .data:0x8012E650; // type:object size:0x644 +lbl_8012EC94 = .data:0x8012EC94; // type:object size:0x11 data:string +lbl_8012ECA5 = .data:0x8012ECA5; // type:object size:0x3A +lbl_8012ECDF = .data:0x8012ECDF; // type:object size:0x31 +lbl_8012ED10 = .data:0x8012ED10; // type:object size:0x1DC +lbl_8012EEEC = .data:0x8012EEEC; // type:object size:0x18 +lbl_8012EF04 = .data:0x8012EF04; // type:object size:0x120 +lbl_8012F024 = .data:0x8012F024; // type:object size:0x18 +lbl_8012F03C = .data:0x8012F03C; // type:object size:0x40 +lbl_8012F07C = .data:0x8012F07C; // type:object size:0x1C +lbl_8012F098 = .data:0x8012F098; // type:object size:0x38 +lbl_8012F0D0 = .data:0x8012F0D0; // type:object size:0x9 data:string +lbl_8012F0D9 = .data:0x8012F0D9; // type:object size:0x83 +lbl_8012F15C = .data:0x8012F15C; // type:object size:0x24 +lbl_8012F180 = .data:0x8012F180; // type:object size:0x50 +lbl_8012F1D0 = .data:0x8012F1D0; // type:object size:0xAC +lbl_8012F27C = .data:0x8012F27C; // type:object size:0xC +lbl_8012F288 = .data:0x8012F288; // type:object size:0xF0 +lbl_8012F378 = .data:0x8012F378; // type:object size:0x15 data:string +lbl_8012F38D = .data:0x8012F38D; // type:object size:0x10 data:string +lbl_8012F39D = .data:0x8012F39D; // type:object size:0x13 data:string +lbl_8012F3B0 = .data:0x8012F3B0; // type:object size:0x10 data:string +lbl_8012F3C0 = .data:0x8012F3C0; // type:object size:0x10 data:string +lbl_8012F3D0 = .data:0x8012F3D0; // type:object size:0x10 data:string +lbl_8012F3E0 = .data:0x8012F3E0; // type:object size:0x10 data:string +lbl_8012F3F0 = .data:0x8012F3F0; // type:object size:0x10 data:string +lbl_8012F400 = .data:0x8012F400; // type:object size:0x10 data:string +lbl_8012F410 = .data:0x8012F410; // type:object size:0x10 data:string +lbl_8012F420 = .data:0x8012F420; // type:object size:0x10 data:string +lbl_8012F430 = .data:0x8012F430; // type:object size:0x10 data:string +lbl_8012F440 = .data:0x8012F440; // type:object size:0x10 data:string +lbl_8012F450 = .data:0x8012F450; // type:object size:0x10 data:string +lbl_8012F460 = .data:0x8012F460; // type:object size:0x10 data:string +lbl_8012F470 = .data:0x8012F470; // type:object size:0x10 data:string +lbl_8012F480 = .data:0x8012F480; // type:object size:0x10 data:string +lbl_8012F490 = .data:0x8012F490; // type:object size:0x10 data:string +lbl_8012F4A0 = .data:0x8012F4A0; // type:object size:0x10 data:string +lbl_8012F4B0 = .data:0x8012F4B0; // type:object size:0x10 data:string +lbl_8012F4C0 = .data:0x8012F4C0; // type:object size:0x10 data:string +lbl_8012F4D0 = .data:0x8012F4D0; // type:object size:0x10 data:string +lbl_8012F4E0 = .data:0x8012F4E0; // type:object size:0x10 data:string +lbl_8012F4F0 = .data:0x8012F4F0; // type:object size:0x10 data:string +lbl_8012F500 = .data:0x8012F500; // type:object size:0x10 data:string +lbl_8012F510 = .data:0x8012F510; // type:object size:0x10 data:string +lbl_8012F520 = .data:0x8012F520; // type:object size:0x10 data:string +lbl_8012F530 = .data:0x8012F530; // type:object size:0x10 data:string +lbl_8012F540 = .data:0x8012F540; // type:object size:0x10 data:string +lbl_8012F550 = .data:0x8012F550; // type:object size:0x10 data:string +lbl_8012F560 = .data:0x8012F560; // type:object size:0x10 data:string +lbl_8012F570 = .data:0x8012F570; // type:object size:0x10 data:string +lbl_8012F580 = .data:0x8012F580; // type:object size:0x10 data:string +lbl_8012F590 = .data:0x8012F590; // type:object size:0x10 data:string +lbl_8012F5A0 = .data:0x8012F5A0; // type:object size:0x10 data:string +lbl_8012F5B0 = .data:0x8012F5B0; // type:object size:0x10 data:string +lbl_8012F5C0 = .data:0x8012F5C0; // type:object size:0x10 data:string +lbl_8012F5D0 = .data:0x8012F5D0; // type:object size:0x10 data:string +lbl_8012F5E0 = .data:0x8012F5E0; // type:object size:0x10 data:string +lbl_8012F5F0 = .data:0x8012F5F0; // type:object size:0x10 data:string +lbl_8012F600 = .data:0x8012F600; // type:object size:0x10 data:string +lbl_8012F610 = .data:0x8012F610; // type:object size:0x10 data:string +lbl_8012F620 = .data:0x8012F620; // type:object size:0x10 data:string +lbl_8012F630 = .data:0x8012F630; // type:object size:0x10 data:string +lbl_8012F640 = .data:0x8012F640; // type:object size:0x10 data:string +lbl_8012F650 = .data:0x8012F650; // type:object size:0x10 data:string +lbl_8012F660 = .data:0x8012F660; // type:object size:0x10 data:string +lbl_8012F670 = .data:0x8012F670; // type:object size:0x10 data:string +lbl_8012F680 = .data:0x8012F680; // type:object size:0x10 data:string +lbl_8012F690 = .data:0x8012F690; // type:object size:0x10 data:string +lbl_8012F6A0 = .data:0x8012F6A0; // type:object size:0x10 data:string +lbl_8012F6B0 = .data:0x8012F6B0; // type:object size:0x10 data:string +lbl_8012F6C0 = .data:0x8012F6C0; // type:object size:0x10 data:string +lbl_8012F6D0 = .data:0x8012F6D0; // type:object size:0x10 data:string +lbl_8012F6E0 = .data:0x8012F6E0; // type:object size:0x10 data:string +lbl_8012F6F0 = .data:0x8012F6F0; // type:object size:0x10 data:string +lbl_8012F700 = .data:0x8012F700; // type:object size:0x10 data:string +lbl_8012F710 = .data:0x8012F710; // type:object size:0x10 data:string +lbl_8012F720 = .data:0x8012F720; // type:object size:0x10 data:string +lbl_8012F730 = .data:0x8012F730; // type:object size:0x10 data:string +lbl_8012F740 = .data:0x8012F740; // type:object size:0x10 data:string +lbl_8012F750 = .data:0x8012F750; // type:object size:0x10 data:string +lbl_8012F760 = .data:0x8012F760; // type:object size:0x10 data:string +lbl_8012F770 = .data:0x8012F770; // type:object size:0x10 data:string +lbl_8012F780 = .data:0x8012F780; // type:object size:0x10 data:string +lbl_8012F790 = .data:0x8012F790; // type:object size:0x10 data:string +lbl_8012F7A0 = .data:0x8012F7A0; // type:object size:0x10 data:string +lbl_8012F7B0 = .data:0x8012F7B0; // type:object size:0x10 data:string +lbl_8012F7C0 = .data:0x8012F7C0; // type:object size:0x10 data:string +lbl_8012F7D0 = .data:0x8012F7D0; // type:object size:0x10 data:string +lbl_8012F7E0 = .data:0x8012F7E0; // type:object size:0x10 data:string +lbl_8012F7F0 = .data:0x8012F7F0; // type:object size:0x12 data:string +lbl_8012F802 = .data:0x8012F802; // type:object size:0x15 data:string +lbl_8012F817 = .data:0x8012F817; // type:object size:0x13 data:string +lbl_8012F82A = .data:0x8012F82A; // type:object size:0x11 data:string +lbl_8012F83B = .data:0x8012F83B; // type:object size:0x10 data:string +lbl_8012F84B = .data:0x8012F84B; // type:object size:0x12 data:string +lbl_8012F85D = .data:0x8012F85D; // type:object size:0x13 data:string +lbl_8012F870 = .data:0x8012F870; // type:object size:0x13 data:string +lbl_8012F883 = .data:0x8012F883; // type:object size:0x13 data:string +lbl_8012F896 = .data:0x8012F896; // type:object size:0x12 data:string +lbl_8012F8A8 = .data:0x8012F8A8; // type:object size:0xF data:string +lbl_8012F8B7 = .data:0x8012F8B7; // type:object size:0xF data:string +lbl_8012F8C6 = .data:0x8012F8C6; // type:object size:0x10 data:string +lbl_8012F8D6 = .data:0x8012F8D6; // type:object size:0x12 data:string +lbl_8012F8E8 = .data:0x8012F8E8; // type:object size:0xF data:string +lbl_8012F8F7 = .data:0x8012F8F7; // type:object size:0x13 data:string +lbl_8012F90A = .data:0x8012F90A; // type:object size:0x11 data:string +lbl_8012F91B = .data:0x8012F91B; // type:object size:0x15 data:string +lbl_8012F930 = .data:0x8012F930; // type:object size:0xF data:string +lbl_8012F93F = .data:0x8012F93F; // type:object size:0xF data:string +lbl_8012F94E = .data:0x8012F94E; // type:object size:0xF data:string +lbl_8012F95D = .data:0x8012F95D; // type:object size:0xF data:string +lbl_8012F96C = .data:0x8012F96C; // type:object size:0xF data:string +lbl_8012F97B = .data:0x8012F97B; // type:object size:0xF data:string +lbl_8012F98A = .data:0x8012F98A; // type:object size:0xF data:string +lbl_8012F999 = .data:0x8012F999; // type:object size:0xF data:string +lbl_8012F9A8 = .data:0x8012F9A8; // type:object size:0xF data:string +lbl_8012F9B7 = .data:0x8012F9B7; // type:object size:0x11 +lbl_8012F9C8 = .data:0x8012F9C8; // type:object size:0x320 +lbl_8012FCE8 = .data:0x8012FCE8; // type:object size:0x20 +lbl_8012FD08 = .data:0x8012FD08; // type:object size:0xC +lbl_8012FD14 = .data:0x8012FD14; // type:object size:0xC +lbl_8012FD20 = .data:0x8012FD20; // type:object size:0x170 +lbl_8012FE90 = .data:0x8012FE90; // type:object size:0x130 +lbl_8012FFC0 = .data:0x8012FFC0; // type:object size:0x140 +lbl_80130100 = .data:0x80130100; // type:object size:0x3C +lbl_8013013C = .data:0x8013013C; // type:object size:0x10 +lbl_8013014C = .data:0x8013014C; // type:object size:0xE data:string +lbl_8013015A = .data:0x8013015A; // type:object size:0xF data:string +lbl_80130169 = .data:0x80130169; // type:object size:0x10 data:string +lbl_80130179 = .data:0x80130179; // type:object size:0x13 +lbl_8013018C = .data:0x8013018C; // type:object size:0x10 +lbl_8013019C = .data:0x8013019C; // type:object size:0x54 +lbl_801301F0 = .data:0x801301F0; // type:object size:0x13 data:string +lbl_80130203 = .data:0x80130203; // type:object size:0x19 +lbl_8013021C = .data:0x8013021C; // type:object size:0x4C +lbl_80130268 = .data:0x80130268; // type:object size:0x26 data:string +lbl_8013028E = .data:0x8013028E; // type:object size:0x2A +lbl_801302B8 = .data:0x801302B8; // type:object size:0x19 data:string +lbl_801302D1 = .data:0x801302D1; // type:object size:0x14 data:string +lbl_801302E5 = .data:0x801302E5; // type:object size:0x93 +lbl_80130378 = .data:0x80130378; // type:object size:0x30 +lbl_801303A8 = .data:0x801303A8; // type:object size:0x60 +lbl_80130408 = .data:0x80130408; // type:object size:0x60 +lbl_80130468 = .data:0x80130468; // type:object size:0x168 +jumptable_801305D0 = .data:0x801305D0; // type:object size:0x1E8 scope:local +lbl_801307B8 = .data:0x801307B8; // type:object size:0x40 +lbl_801307F8 = .data:0x801307F8; // type:object size:0xE data:string +lbl_80130806 = .data:0x80130806; // type:object size:0xE data:string +lbl_80130814 = .data:0x80130814; // type:object size:0xE data:string +lbl_80130822 = .data:0x80130822; // type:object size:0xD data:string +lbl_8013082F = .data:0x8013082F; // type:object size:0xD data:string +lbl_8013083C = .data:0x8013083C; // type:object size:0xB data:string +lbl_80130847 = .data:0x80130847; // type:object size:0xF data:string +lbl_80130856 = .data:0x80130856; // type:object size:0xF data:string +lbl_80130865 = .data:0x80130865; // type:object size:0xF data:string +lbl_80130874 = .data:0x80130874; // type:object size:0xF data:string +lbl_80130883 = .data:0x80130883; // type:object size:0xF data:string +lbl_80130892 = .data:0x80130892; // type:object size:0xF data:string +lbl_801308A1 = .data:0x801308A1; // type:object size:0x9 data:string +lbl_801308AA = .data:0x801308AA; // type:object size:0xD data:string +lbl_801308B7 = .data:0x801308B7; // type:object size:0x17 data:string +lbl_801308CE = .data:0x801308CE; // type:object size:0x17 data:string +lbl_801308E5 = .data:0x801308E5; // type:object size:0xE data:string +lbl_801308F3 = .data:0x801308F3; // type:object size:0xE data:string +lbl_80130901 = .data:0x80130901; // type:object size:0xD data:string +lbl_8013090E = .data:0x8013090E; // type:object size:0xE data:string +lbl_8013091C = .data:0x8013091C; // type:object size:0xE data:string +lbl_8013092A = .data:0x8013092A; // type:object size:0xF data:string +lbl_80130939 = .data:0x80130939; // type:object size:0xF data:string +lbl_80130948 = .data:0x80130948; // type:object size:0x18 data:string +lbl_80130960 = .data:0x80130960; // type:object size:0x18 data:string +lbl_80130978 = .data:0x80130978; // type:object size:0xE data:string +lbl_80130986 = .data:0x80130986; // type:object size:0x18 data:string +lbl_8013099E = .data:0x8013099E; // type:object size:0x1A +lbl_801309B8 = .data:0x801309B8; // type:object size:0x100 +lbl_80130AB8 = .data:0x80130AB8; // type:object size:0xD data:string +lbl_80130AC5 = .data:0x80130AC5; // type:object size:0xD data:string +lbl_80130AD2 = .data:0x80130AD2; // type:object size:0xE data:string +lbl_80130AE0 = .data:0x80130AE0; // type:object size:0xE data:string +lbl_80130AEE = .data:0x80130AEE; // type:object size:0x12 +lbl_80130B00 = .data:0x80130B00; // type:object size:0xA0 +lbl_80130BA0 = .data:0x80130BA0; // type:object size:0x38 +lbl_80130BD8 = .data:0x80130BD8; // type:object size:0x38 +lbl_80130C10 = .data:0x80130C10; // type:object size:0x38 +lbl_80130C48 = .data:0x80130C48; // type:object size:0x38 +lbl_80130C80 = .data:0x80130C80; // type:object size:0x1C +lbl_80130C9C = .data:0x80130C9C; // type:object size:0x38 +lbl_80130CD4 = .data:0x80130CD4; // type:object size:0x38 +lbl_80130D0C = .data:0x80130D0C; // type:object size:0xBC +lbl_80130DC8 = .data:0x80130DC8; // type:object size:0x100 +lbl_80130EC8 = .data:0x80130EC8; // type:object size:0x4D +lbl_80130F15 = .data:0x80130F15; // type:object size:0x1B +lbl_80130F30 = .data:0x80130F30; // type:object size:0xE00 data:2byte +lbl_80131D30 = .data:0x80131D30; // type:object size:0x40 +lbl_80131D70 = .data:0x80131D70; // type:object size:0x14 +lbl_80131D84 = .data:0x80131D84; // type:object size:0xC data:string +lbl_80131D90 = .data:0x80131D90; // type:object size:0xC data:string +lbl_80131D9C = .data:0x80131D9C; // type:object size:0xC data:string +lbl_80131DA8 = .data:0x80131DA8; // type:object size:0xC +jumptable_80131DB4 = .data:0x80131DB4; // type:object size:0x34 scope:local +lbl_80131E00 = .data:0x80131E00; // type:object size:0x20 +lbl_80131E20 = .data:0x80131E20; // type:object size:0x13A0 +lbl_801331C0 = .data:0x801331C0; // type:object size:0x13A0 +lbl_80134560 = .data:0x80134560; // type:object size:0x13A0 +lbl_80135900 = .data:0x80135900; // type:object size:0x13A0 +lbl_80136CA0 = .data:0x80136CA0; // type:object size:0x13A0 +lbl_80138040 = .data:0x80138040; // type:object size:0x1384 +jumptable_801393C4 = .data:0x801393C4; // type:object size:0x34 scope:local +lbl_801393F8 = .data:0x801393F8; // type:object size:0x18 +lbl_80139410 = .data:0x80139410; // type:object size:0x13 data:string +lbl_80139423 = .data:0x80139423; // type:object size:0x15 +lbl_80139438 = .data:0x80139438; // type:object size:0x24 +jumptable_8013945C = .data:0x8013945C; // type:object size:0x24 scope:local +lbl_80139480 = .data:0x80139480; // type:object size:0x48 +lbl_801394C8 = .data:0x801394C8; // type:object size:0xC +lbl_801394D4 = .data:0x801394D4; // type:object size:0x30 +lbl_80139504 = .data:0x80139504; // type:object size:0x10 +lbl_80139514 = .data:0x80139514; // type:object size:0x24 +lbl_80139538 = .data:0x80139538; // type:object size:0x10 +lbl_80139548 = .data:0x80139548; // type:object size:0x10 +lbl_80139558 = .data:0x80139558; // type:object size:0xA data:2byte +lbl_80139562 = .data:0x80139562; // type:object size:0x17 data:string +lbl_80139579 = .data:0x80139579; // type:object size:0x17 data:string +lbl_80139590 = .data:0x80139590; // type:object size:0xE data:string +lbl_8013959E = .data:0x8013959E; // type:object size:0xE data:string +lbl_801395AC = .data:0x801395AC; // type:object size:0x18 data:string +lbl_801395C4 = .data:0x801395C4; // type:object size:0x18 data:string +lbl_801395DC = .data:0x801395DC; // type:object size:0xA0 +lbl_8013967C = .data:0x8013967C; // type:object size:0x20 +lbl_8013969C = .data:0x8013969C; // type:object size:0x74 +lbl_80139710 = .data:0x80139710; // type:object size:0x30 +lbl_80139740 = .data:0x80139740; // type:object size:0x24 +lbl_80139764 = .data:0x80139764; // type:object size:0x24 +lbl_80139788 = .data:0x80139788; // type:object size:0x18 +lbl_801397A0 = .data:0x801397A0; // type:object size:0x60 +lbl_80139800 = .data:0x80139800; // type:object size:0x38 +lbl_80139838 = .data:0x80139838; // type:object size:0x30 +lbl_80139868 = .data:0x80139868; // type:object size:0xB8 +lbl_80139920 = .data:0x80139920; // type:object size:0x24 +lbl_80139944 = .data:0x80139944; // type:object size:0x24 +lbl_80139968 = .data:0x80139968; // type:object size:0xC +lbl_80139974 = .data:0x80139974; // type:object size:0xC +jumptable_80139980 = .data:0x80139980; // type:object size:0x28 scope:local +lbl_801399A8 = .data:0x801399A8; // type:object size:0x24 +lbl_801399CC = .data:0x801399CC; // type:object size:0x10 +lbl_801399DC = .data:0x801399DC; // type:object size:0x6C +lbl_80139A48 = .data:0x80139A48; // type:object size:0xB0 +lbl_80139AF8 = .data:0x80139AF8; // type:object size:0x30 data:float +lbl_80139B28 = .data:0x80139B28; // type:object size:0x1A8 +lbl_80139CD0 = .data:0x80139CD0; // type:object size:0xDA +lbl_80139DAA = .data:0x80139DAA; // type:object size:0x13 +lbl_80139DBD = .data:0x80139DBD; // type:object size:0x23 +jumptable_80139DE0 = .data:0x80139DE0; // type:object size:0x24 scope:local +lbl_80139E04 = .data:0x80139E04; // type:object size:0x30 +lbl_80139E34 = .data:0x80139E34; // type:object size:0xC +lbl_80139E40 = .data:0x80139E40; // type:object size:0xC data:4byte +lbl_80139E4C = .data:0x80139E4C; // type:object size:0x20 +lbl_80139E6C = .data:0x80139E6C; // type:object size:0x24 +lbl_80139E90 = .data:0x80139E90; // type:object size:0x10 +lbl_80139EA0 = .data:0x80139EA0; // type:object size:0x28 +jumptable_80139EC8 = .data:0x80139EC8; // type:object size:0x1C scope:local +lbl_80139EE8 = .data:0x80139EE8; // type:object size:0x58 +lbl_80139F40 = .data:0x80139F40; // type:object size:0x10 +lbl_80139F50 = .data:0x80139F50; // type:object size:0x20 +lbl_80139F70 = .data:0x80139F70; // type:object size:0x48 +lbl_80139FB8 = .data:0x80139FB8; // type:object size:0x50 +lbl_8013A008 = .data:0x8013A008; // type:object size:0xC data:4byte +lbl_8013A014 = .data:0x8013A014; // type:object size:0xC data:4byte +lbl_8013A020 = .data:0x8013A020; // type:object size:0xC +lbl_8013A02C = .data:0x8013A02C; // type:object size:0x50 +lbl_8013A07C = .data:0x8013A07C; // type:object size:0x2C +lbl_8013A0A8 = .data:0x8013A0A8; // type:object size:0xC4 data:byte +lbl_8013A16C = .data:0x8013A16C; // type:object size:0x20 data:float +lbl_8013A18C = .data:0x8013A18C; // type:object size:0x10 +lbl_8013A19C = .data:0x8013A19C; // type:object size:0x88 +lbl_8013A224 = .data:0x8013A224; // type:object size:0x30 +lbl_8013A254 = .data:0x8013A254; // type:object size:0x54 +lbl_8013A2A8 = .data:0x8013A2A8; // type:object size:0x18 +lbl_8013A2C0 = .data:0x8013A2C0; // type:object size:0x38 +lbl_8013A2F8 = .data:0x8013A2F8; // type:object size:0x38 +lbl_8013A330 = .data:0x8013A330; // type:object size:0x70 +lbl_8013A3A0 = .data:0x8013A3A0; // type:object size:0x13 data:string +lbl_8013A3B3 = .data:0x8013A3B3; // type:object size:0x13 data:string +lbl_8013A3C6 = .data:0x8013A3C6; // type:object size:0x13 data:string +lbl_8013A3D9 = .data:0x8013A3D9; // type:object size:0x13 data:string +lbl_8013A3EC = .data:0x8013A3EC; // type:object size:0x13 data:string +lbl_8013A3FF = .data:0x8013A3FF; // type:object size:0x13 data:string +lbl_8013A412 = .data:0x8013A412; // type:object size:0x13 data:string +lbl_8013A425 = .data:0x8013A425; // type:object size:0x63 +lbl_8013A488 = .data:0x8013A488; // type:object size:0x40 +lbl_8013A4C8 = .data:0x8013A4C8; // type:object size:0x10 +lbl_8013A4D8 = .data:0x8013A4D8; // type:object size:0x1D8 +lbl_8013A6B0 = .data:0x8013A6B0; // type:object size:0x20 +jumptable_8013A6D0 = .data:0x8013A6D0; // type:object size:0x1C scope:local +lbl_8013A6EC = .data:0x8013A6EC; // type:object size:0x14 +lbl_8013A700 = .data:0x8013A700; // type:object size:0x18 +lbl_8013A718 = .data:0x8013A718; // type:object size:0x20 +lbl_8013A738 = .data:0x8013A738; // type:object size:0x18 +jumptable_8013A750 = .data:0x8013A750; // type:object size:0x24 scope:local +lbl_8013A774 = .data:0x8013A774; // type:object size:0x3C +lbl_8013A7B0 = .data:0x8013A7B0; // type:object size:0x18 +lbl_8013A7C8 = .data:0x8013A7C8; // type:object size:0xC0 +lbl_8013A888 = .data:0x8013A888; // type:object size:0x80 +lbl_8013A908 = .data:0x8013A908; // type:object size:0x18 +lbl_8013A920 = .data:0x8013A920; // type:object size:0xC data:string +lbl_8013A92C = .data:0x8013A92C; // type:object size:0x18 +jumptable_8013A944 = .data:0x8013A944; // type:object size:0x20 scope:local +lbl_8013A964 = .data:0x8013A964; // type:object size:0x24 +lbl_8013A988 = .data:0x8013A988; // type:object size:0x18 +lbl_8013A9A0 = .data:0x8013A9A0; // type:object size:0x34 +lbl_8013A9D4 = .data:0x8013A9D4; // type:object size:0x30 +lbl_8013AA04 = .data:0x8013AA04; // type:object size:0x30 +lbl_8013AA34 = .data:0x8013AA34; // type:object size:0x30 +lbl_8013AA64 = .data:0x8013AA64; // type:object size:0x24 +jumptable_8013AA88 = .data:0x8013AA88; // type:object size:0x20 scope:local +lbl_8013AAD8 = .data:0x8013AAD8; // type:object size:0x90 +lbl_8013AB68 = .data:0x8013AB68; // type:object size:0x30 +lbl_8013AB98 = .data:0x8013AB98; // type:object size:0xC +lbl_8013ABA4 = .data:0x8013ABA4; // type:object size:0x6C +lbl_8013AC10 = .data:0x8013AC10; // type:object size:0x10 data:4byte +lbl_8013AC20 = .data:0x8013AC20; // type:object size:0xC4 +lbl_8013ACE4 = .data:0x8013ACE4; // type:object size:0x24 +jumptable_8013AD08 = .data:0x8013AD08; // type:object size:0x1C scope:local +lbl_8013AD24 = .data:0x8013AD24; // type:object size:0x30 +jumptable_8013AD54 = .data:0x8013AD54; // type:object size:0x24 scope:local +lbl_8013AD78 = .data:0x8013AD78; // type:object size:0x120 +lbl_8013AE98 = .data:0x8013AE98; // type:object size:0x24 +lbl_8013AEBC = .data:0x8013AEBC; // type:object size:0x28 +lbl_8013AEE4 = .data:0x8013AEE4; // type:object size:0x1AC +lbl_8013B090 = .data:0x8013B090; // type:object size:0x10 data:2byte +lbl_8013B0A0 = .data:0x8013B0A0; // type:object size:0x40 data:float +lbl_8013B0E0 = .data:0x8013B0E0; // type:object size:0x74 +jumptable_8013B154 = .data:0x8013B154; // type:object size:0x20 scope:local +jumptable_8013B174 = .data:0x8013B174; // type:object size:0x20 scope:local +jumptable_8013B194 = .data:0x8013B194; // type:object size:0x20 scope:local +lbl_8013B1B8 = .data:0x8013B1B8; // type:object size:0x24 data:string +lbl_8013B1DC = .data:0x8013B1DC; // type:object size:0x24 data:string +@84 = .data:0x8013B200; // type:object size:0x1E scope:local data:string +lbl_8013B3C0 = .data:0x8013B3C0; // type:object size:0x398 +DSPInitCode = .data:0x8013B758; // type:object size:0x80 scope:local +@69 = .data:0x8013B7D8; // type:object size:0x29 scope:local data:string +lbl_8013BA08 = .data:0x8013BA08; // type:object size:0x1B4 +@74 = .data:0x8013BBBC; // type:object size:0x23 scope:local data:string +@10 = .data:0x8013BBE0; // type:object size:0x16 scope:local data:string +@43 = .data:0x8013BEBC; // type:object size:0x40 scope:local +lbl_8013BF00 = .data:0x8013BF00; // type:object size:0x30 data:4byte +lbl_8013BF30 = .data:0x8013BF30; // type:object size:0x28 +lbl_8013BF58 = .data:0x8013BF58; // type:object size:0x28 +ResetFunctionInfo = .data:0x8013BF80; // type:object size:0x10 scope:local +lbl_8013BF90 = .data:0x8013BF90; // type:object size:0x78 +lbl_8013C008 = .data:0x8013C008; // type:object size:0x30 +lbl_8013C038 = .data:0x8013C038; // type:object size:0x30 +lbl_8013C068 = .data:0x8013C068; // type:object size:0x18 data:string +lbl_8013C080 = .data:0x8013C080; // type:object size:0xC8 data:string +lbl_8013C148 = .data:0x8013C148; // type:object size:0x38 +lbl_8013C180 = .data:0x8013C180; // type:object size:0x34 data:string +lbl_8013C1B4 = .data:0x8013C1B4; // type:object size:0x34 +@13 = .data:0x8013C1E8; // type:object size:0x15 scope:local data:string +@293 = .data:0x8013C234; // type:object size:0x20 scope:local +jumptable_8013C254 = .data:0x8013C254; // type:object size:0x40 scope:local +jumptable_8013C294 = .data:0x8013C294; // type:object size:0x34 scope:local +jumptable_8013C2C8 = .data:0x8013C2C8; // type:object size:0x34 scope:local +lbl_8013C300 = .data:0x8013C300; // type:object size:0x48 data:4byte +@36 = .data:0x8013C348; // type:object size:0x1A scope:local data:string +lbl_8013C3B8 = .data:0x8013C3B8; // type:object size:0x164 +jumptable_8013C51C = .data:0x8013C51C; // type:object size:0x58 scope:local +lbl_8013C680 = .data:0x8013C680; // type:object size:0xC00 +lbl_8013D280 = .data:0x8013D280; // type:object size:0xC data:string +lbl_8013D28C = .data:0x8013D28C; // type:object size:0x28 +jumptable_8013D2B4 = .data:0x8013D2B4; // type:object size:0x28 scope:local +jumptable_8013D338 = .data:0x8013D338; // type:object size:0x28 scope:local +jumptable_8013D360 = .data:0x8013D360; // type:object size:0x28 scope:local +jumptable_8013D388 = .data:0x8013D388; // type:object size:0x28 scope:local +jumptable_8013D3B0 = .data:0x8013D3B0; // type:object size:0x28 scope:local +lbl_8013D3D8 = .data:0x8013D3D8; // type:object size:0x10 +lbl_8013D3E8 = .data:0x8013D3E8; // type:object size:0x38 +lbl_8013D420 = .data:0x8013D420; // type:object size:0x140 +jumptable_8013D560 = .data:0x8013D560; // type:object size:0x68 scope:local +jumptable_8013D5C8 = .data:0x8013D5C8; // type:object size:0x44 scope:local +jumptable_8013D60C = .data:0x8013D60C; // type:object size:0x1C scope:local +jumptable_8013D628 = .data:0x8013D628; // type:object size:0x54 scope:local +lbl_8013D680 = .data:0x8013D680; // type:object size:0x3C +lbl_8013D6BC = .data:0x8013D6BC; // type:object size:0x3C +lbl_8013D6F8 = .data:0x8013D6F8; // type:object size:0x3C +lbl_8013D734 = .data:0x8013D734; // type:object size:0x3C +lbl_8013D770 = .data:0x8013D770; // type:object size:0x40 +jumptable_8013D7B0 = .data:0x8013D7B0; // type:object size:0x1C scope:local +jumptable_8013D7D0 = .data:0x8013D7D0; // type:object size:0xF4 scope:local +jumptable_8013D8C4 = .data:0x8013D8C4; // type:object size:0xF4 scope:local +jumptable_8013D9B8 = .data:0x8013D9B8; // type:object size:0x3C scope:local +lbl_8013D9F8 = .data:0x8013D9F8; // type:object size:0x28 +lbl_8013DA20 = .data:0x8013DA20; // type:object size:0x20 +jumptable_8013DA40 = .data:0x8013DA40; // type:object size:0x5C scope:local +jumptable_8013DA9C = .data:0x8013DA9C; // type:object size:0x90 scope:local +jumptable_8013DB2C = .data:0x8013DB2C; // type:object size:0x5C scope:local +lbl_8013DB88 = .data:0x8013DB88; // type:object size:0x18 +lbl_8013DBA0 = .data:0x8013DBA0; // type:object size:0x160 +lbl_8013DD00 = .data:0x8013DD00; // type:object size:0x20 +lbl_8013DD20 = .data:0x8013DD20; // type:object size:0x20 +Si = .data:0x8013DD40; // type:object size:0x14 scope:local data:4byte +Type = .data:0x8013DD54; // type:object size:0x10 scope:local +XYNTSC = .data:0x8013DE10; // type:object size:0x30 scope:local +lbl_8013DEA8 = .data:0x8013DEA8; // type:object size:0x10 +jumptable_8013DEB8 = .data:0x8013DEB8; // type:object size:0x44 scope:local +jumptable_8013DEFC = .data:0x8013DEFC; // type:object size:0x44 scope:local +jumptable_8013DF40 = .data:0x8013DF40; // type:object size:0x44 scope:local +lbl_8013DF84 = .data:0x8013DF84; // type:object size:0xC +lbl_8013DF90 = .data:0x8013DF90; // type:object size:0x10 +__files = .data:0x8013DFA0; // type:object size:0x140 scope:global +jumptable_8013E0E0 = .data:0x8013E0E0; // type:object size:0x124 scope:local +lbl_8013E208 = .data:0x8013E208; // type:object size:0x100 +lbl_8013E308 = .data:0x8013E308; // type:object size:0x100 +@1249 = .data:0x8013E408; // type:object size:0x84 scope:local +jumptable_8013E48C = .data:0x8013E48C; // type:object size:0x84 scope:local +jumptable_8013E510 = .data:0x8013E510; // type:object size:0xE0 scope:local +jumptable_8013E5F0 = .data:0x8013E5F0; // type:object size:0x44 scope:local +lbl_8013E638 = .data:0x8013E638; // type:object size:0x88 +jumptable_8013E6C0 = .data:0x8013E6C0; // type:object size:0x1C scope:local +jumptable_8013E6DC = .data:0x8013E6DC; // type:object size:0x1C scope:local +gTRKRestoreFlags = .data:0x8013E6F8; // type:object size:0x9 scope:global data:byte +gTRKExceptionStatus = .data:0x8013E704; // type:object size:0x10 scope:local data:4byte +lbl_8013E714 = .data:0x8013E714; // type:object size:0x14 data:4byte +lbl_8013E728 = .data:0x8013E728; // type:object size:0x40 data:4byte +gDBCommTable = .data:0x8013E768; // type:object size:0x1C scope:global data:4byte +jumptable_8013E788 = .data:0x8013E788; // type:object size:0x50 scope:local +lbl_8013E7D8 = .data:0x8013E7D8; // type:object size:0x1C +lbl_8013E7F4 = .data:0x8013E7F4; // type:object size:0x204 +lbl_8013E9F8 = .data:0x8013E9F8; // type:object size:0x20 +lbl_8013EA18 = .data:0x8013EA18; // type:object size:0x10 +lbl_8013EA28 = .data:0x8013EA28; // type:object size:0x20 +lbl_8013EA48 = .data:0x8013EA48; // type:object size:0x10 +jumptable_8013EA58 = .data:0x8013EA58; // type:object size:0x1C8 scope:local +lbl_8013EC20 = .data:0x8013EC20; // type:object size:0x200 +lbl_8013EE20 = .data:0x8013EE20; // type:object size:0x200 +lbl_8013F020 = .data:0x8013F020; // type:object size:0x184 +lbl_8013F1A4 = .data:0x8013F1A4; // type:object size:0x400 +lbl_8013F5A4 = .data:0x8013F5A4; // type:object size:0x204 +lbl_8013F7A8 = .data:0x8013F7A8; // type:object size:0x18 +lbl_8013F7C0 = .data:0x8013F7C0; // type:object size:0x228 +lbl_8013F9E8 = .data:0x8013F9E8; // type:object size:0x10 +lbl_8013F9F8 = .data:0x8013F9F8; // type:object size:0x10 +jumptable_8013FA08 = .data:0x8013FA08; // type:object size:0x24 scope:local +jumptable_8013FA2C = .data:0x8013FA2C; // type:object size:0x24 scope:local +jumptable_8013FA50 = .data:0x8013FA50; // type:object size:0x24 scope:local +lbl_8013FA78 = .data:0x8013FA78; // type:object size:0x808 +lbl_80140280 = .data:0x80140280; // type:object size:0x19E0 +lbl_80141C60 = .data:0x80141C60; // type:object size:0x10 +lbl_80141C70 = .data:0x80141C70; // type:object size:0x20 +lbl_80141C90 = .data:0x80141C90; // type:object size:0x800 +lbl_801424A0 = .bss:0x801424A0; // type:object size:0x10 +lbl_801424B0 = .bss:0x801424B0; // type:object size:0x30 +lbl_801424E0 = .bss:0x801424E0; // type:object size:0x2E00 data:4byte +lbl_801452E0 = .bss:0x801452E0; // type:object size:0x400 +lbl_801456E0 = .bss:0x801456E0; // type:object size:0x40 +lbl_80145720 = .bss:0x80145720; // type:object size:0x18 +lbl_80145738 = .bss:0x80145738; // type:object size:0x6800 +lbl_8014BF38 = .bss:0x8014BF38; // type:object size:0x100 data:byte +lbl_8014C038 = .bss:0x8014C038; // type:object size:0xF8 +lbl_8014C130 = .bss:0x8014C130; // type:object size:0x9600 +lbl_80155730 = .bss:0x80155730; // type:object size:0x5400 data:2byte +lbl_8015AB30 = .bss:0x8015AB30; // type:object size:0x1800 +lbl_8015C330 = .bss:0x8015C330; // type:object size:0x20 +lbl_8015C350 = .bss:0x8015C350; // type:object size:0x10 +lbl_8015C360 = .bss:0x8015C360; // type:object size:0x80 +lbl_8015C3E0 = .bss:0x8015C3E0; // type:object size:0x240 +lbl_8015C620 = .bss:0x8015C620; // type:object size:0x300 data:byte +lbl_8015C920 = .bss:0x8015C920; // type:object size:0x9000 +lbl_80165920 = .bss:0x80165920; // type:object size:0x20 data:4byte +lbl_80165940 = .bss:0x80165940; // type:object size:0x1200 +lbl_80166B40 = .bss:0x80166B40; // type:object size:0x480 data:4byte +lbl_80166FC0 = .bss:0x80166FC0; // type:object size:0x40 data:byte +lbl_80167000 = .bss:0x80167000; // type:object size:0x30 +lbl_80167030 = .bss:0x80167030; // type:object size:0x400 +lbl_80167430 = .bss:0x80167430; // type:object size:0xC data:float +lbl_8016743C = .bss:0x8016743C; // type:object size:0xC data:float +lbl_80167448 = .bss:0x80167448; // type:object size:0xC data:float +lbl_80167454 = .bss:0x80167454; // type:object size:0xC data:float +lbl_80167460 = .bss:0x80167460; // type:object size:0x24800 data:byte +lbl_8018BC60 = .bss:0x8018BC60; // type:object size:0x580 data:float +lbl_8018C1E0 = .bss:0x8018C1E0; // type:object size:0x10 data:2byte +lbl_8018C1F0 = .bss:0x8018C1F0; // type:object size:0x20 +lbl_8018C210 = .bss:0x8018C210; // type:object size:0x14 data:4byte +lbl_8018C224 = .bss:0x8018C224; // type:object size:0x10 data:4byte +lbl_8018C234 = .bss:0x8018C234; // type:object size:0x260 data:byte +lbl_8018C494 = .bss:0x8018C494; // type:object size:0x98 data:byte +lbl_8018C52C = .bss:0x8018C52C; // type:object size:0x10 data:4byte +lbl_8018C53C = .bss:0x8018C53C; // type:object size:0x30 +lbl_8018C56C = .bss:0x8018C56C; // type:object size:0x30 +lbl_8018C59C = .bss:0x8018C59C; // type:object size:0x220 data:2byte +lbl_8018C7BC = .bss:0x8018C7BC; // type:object size:0x8B4 data:2byte +lbl_8018D070 = .bss:0x8018D070; // type:object size:0x800 data:2byte +lbl_8018D870 = .bss:0x8018D870; // type:object size:0x1400 data:2byte +lbl_8018EC70 = .bss:0x8018EC70; // type:object size:0x6C0 data:2byte +lbl_8018F330 = .bss:0x8018F330; // type:object size:0x100 +lbl_8018F430 = .bss:0x8018F430; // type:object size:0x370 +lbl_8018F7A0 = .bss:0x8018F7A0; // type:object size:0x38 +lbl_8018F7D8 = .bss:0x8018F7D8; // type:object size:0xC0 +lbl_8018F898 = .bss:0x8018F898; // type:object size:0x18 +lbl_8018F8B0 = .bss:0x8018F8B0; // type:object size:0x28 +lbl_8018F8D8 = .bss:0x8018F8D8; // type:object size:0xC0 data:byte +lbl_8018F998 = .bss:0x8018F998; // type:object size:0xE0 data:byte +lbl_8018FA78 = .bss:0x8018FA78; // type:object size:0x230 +lbl_8018FCA8 = .bss:0x8018FCA8; // type:object size:0xC data:float +lbl_8018FCB4 = .bss:0x8018FCB4; // type:object size:0xC data:float +lbl_8018FCC0 = .bss:0x8018FCC0; // type:object size:0xC0 +lbl_8018FD80 = .bss:0x8018FD80; // type:object size:0xC0 +lbl_8018FE40 = .bss:0x8018FE40; // type:object size:0x40 +lbl_8018FE80 = .bss:0x8018FE80; // type:object size:0x50 +lbl_8018FED0 = .bss:0x8018FED0; // type:object size:0x200 +lbl_801900D0 = .bss:0x801900D0; // type:object size:0x20 +lbl_801900F0 = .bss:0x801900F0; // type:object size:0x400 data:4byte +lbl_801904F0 = .bss:0x801904F0; // type:object size:0x10 data:2byte +lbl_80190500 = .bss:0x80190500; // type:object size:0x600 data:2byte +lbl_80190B00 = .bss:0x80190B00; // type:object size:0x1200 data:4byte +lbl_80191D00 = .bss:0x80191D00; // type:object size:0x100 +lbl_80191E00 = .bss:0x80191E00; // type:object size:0x100 +lbl_80191F00 = .bss:0x80191F00; // type:object size:0x100 +lbl_80192000 = .bss:0x80192000; // type:object size:0x60 data:4byte +lbl_80192060 = .bss:0x80192060; // type:object size:0x3000 data:byte +lbl_80195060 = .bss:0x80195060; // type:object size:0x10 +lbl_80195070 = .bss:0x80195070; // type:object size:0x1410 +lbl_80196480 = .bss:0x80196480; // type:object size:0x400 data:byte +lbl_80196880 = .bss:0x80196880; // type:object size:0x20 +lbl_801968A0 = .bss:0x801968A0; // type:object size:0x2C0 +lbl_80196B60 = .bss:0x80196B60; // type:object size:0x640 +lbl_801971A0 = .bss:0x801971A0; // type:object size:0x10 data:2byte +lbl_801971B0 = .bss:0x801971B0; // type:object size:0x20 +lbl_801971D0 = .bss:0x801971D0; // type:object size:0x80 +lbl_80197250 = .bss:0x80197250; // type:object size:0xA0 +lbl_801972F0 = .bss:0x801972F0; // type:object size:0x40 +lbl_80197330 = .bss:0x80197330; // type:object size:0x60 +lbl_80197390 = .bss:0x80197390; // type:object size:0xC data:float +lbl_8019739C = .bss:0x8019739C; // type:object size:0xC data:float +lbl_801973A8 = .bss:0x801973A8; // type:object size:0x78 +lbl_80197420 = .bss:0x80197420; // type:object size:0x18C +lbl_801975AC = .bss:0x801975AC; // type:object size:0x180 +lbl_8019772C = .bss:0x8019772C; // type:object size:0x34 +lbl_80197760 = .bss:0x80197760; // type:object size:0x1A0 +lbl_80197900 = .bss:0x80197900; // type:object size:0x500 +lbl_80197E00 = .bss:0x80197E00; // type:object size:0x40 +lbl_80197E40 = .bss:0x80197E40; // type:object size:0x40 +lbl_80197E80 = .bss:0x80197E80; // type:object size:0x118 +lbl_80197F98 = .bss:0x80197F98; // type:object size:0x100 +lbl_80198098 = .bss:0x80198098; // type:object size:0x18 +lbl_801980B0 = .bss:0x801980B0; // type:object size:0x10 +lbl_801980C0 = .bss:0x801980C0; // type:object size:0x20 +lbl_801980E0 = .bss:0x801980E0; // type:object size:0x4000 +lbl_8019C0E0 = .bss:0x8019C0E0; // type:object size:0x13A0 +lbl_8019D480 = .bss:0x8019D480; // type:object size:0xC4 data:byte +lbl_8019D544 = .bss:0x8019D544; // type:object size:0xC4 +lbl_8019D608 = .bss:0x8019D608; // type:object size:0x10 +lbl_8019D618 = .bss:0x8019D618; // type:object size:0x10 +lbl_8019D628 = .bss:0x8019D628; // type:object size:0x10 +lbl_8019D638 = .bss:0x8019D638; // type:object size:0x20 +lbl_8019D658 = .bss:0x8019D658; // type:object size:0x40 +lbl_8019D698 = .bss:0x8019D698; // type:object size:0xC data:float +lbl_8019D6A4 = .bss:0x8019D6A4; // type:object size:0xC data:4byte +lbl_8019D6B0 = .bss:0x8019D6B0; // type:object size:0x7000 data:float +lbl_801A46B0 = .bss:0x801A46B0; // type:object size:0x50 +lbl_801A4700 = .bss:0x801A4700; // type:object size:0x14 data:4byte +lbl_801A4714 = .bss:0x801A4714; // type:object size:0x1C +lbl_801A4730 = .bss:0x801A4730; // type:object size:0xC data:2byte +lbl_801A473C = .bss:0x801A473C; // type:object size:0xC +lbl_801A4748 = .bss:0x801A4748; // type:object size:0x18 data:2byte +lbl_801A4760 = .bss:0x801A4760; // type:object size:0x10 +lbl_801A4770 = .bss:0x801A4770; // type:object size:0x10 data:4byte +lbl_801A4780 = .bss:0x801A4780; // type:object size:0x10 +lbl_801A4790 = .bss:0x801A4790; // type:object size:0x18 +lbl_801A47A8 = .bss:0x801A47A8; // type:object size:0x30 +lbl_801A47D8 = .bss:0x801A47D8; // type:object size:0x48 +lbl_801A4820 = .bss:0x801A4820; // type:object size:0x28 +lbl_801A4848 = .bss:0x801A4848; // type:object size:0xC data:4byte +lbl_801A4854 = .bss:0x801A4854; // type:object size:0x34 data:float +lbl_801A4888 = .bss:0x801A4888; // type:object size:0x30 +lbl_801A48B8 = .bss:0x801A48B8; // type:object size:0x18 +lbl_801A48D0 = .bss:0x801A48D0; // type:object size:0x10 data:2byte +lbl_801A48E0 = .bss:0x801A48E0; // type:object size:0xC data:4byte +lbl_801A48EC = .bss:0x801A48EC; // type:object size:0xC data:float +lbl_801A48F8 = .bss:0x801A48F8; // type:object size:0x20 data:2byte +lbl_801A4918 = .bss:0x801A4918; // type:object size:0x40 data:2byte +lbl_801A4958 = .bss:0x801A4958; // type:object size:0x10 +lbl_801A4968 = .bss:0x801A4968; // type:object size:0x10 data:2byte +lbl_801A4978 = .bss:0x801A4978; // type:object size:0xC data:float +lbl_801A4984 = .bss:0x801A4984; // type:object size:0xC data:float +lbl_801A4990 = .bss:0x801A4990; // type:object size:0xC data:float +lbl_801A499C = .bss:0x801A499C; // type:object size:0xC data:float +lbl_801A49A8 = .bss:0x801A49A8; // type:object size:0xC +lbl_801A49B4 = .bss:0x801A49B4; // type:object size:0x10 data:2byte +lbl_801A49C4 = .bss:0x801A49C4; // type:object size:0x14 data:4byte +lbl_801A49D8 = .bss:0x801A49D8; // type:object size:0x20 +lbl_801A49F8 = .bss:0x801A49F8; // type:object size:0x10 data:float +lbl_801A4A08 = .bss:0x801A4A08; // type:object size:0x500 data:byte +lbl_801A4F08 = .bss:0x801A4F08; // type:object size:0x80 +lbl_801A4F88 = .bss:0x801A4F88; // type:object size:0x18 data:4byte +DriveInfo = .bss:0x801A4FA0; // type:object size:0x20 scope:local +__OSErrorTable = .bss:0x801A4FF0; // type:object size:0x40 scope:global +lbl_801A5040 = .bss:0x801A5040; // type:object size:0x20 +Scb = .bss:0x801A5060; // type:object size:0x54 scope:local data:4byte +RunQueue = .bss:0x801A50B8; // type:object size:0x100 scope:local data:4byte +CommandList = .bss:0x801A5AA0; // type:object size:0x3C scope:local data:4byte +AlarmForTimeout = .bss:0x801A5B08; // type:object size:0x28 scope:local +tmpBuffer = .bss:0x801A5B80; // type:object size:0x80 scope:local +DummyCommandBlock = .bss:0x801A5C00; // type:object size:0x30 scope:local +WaitingQueue = .bss:0x801A5C58; // type:object size:0x20 scope:local data:4byte +bb2Buf = .bss:0x801A5C78; // type:object size:0x3F scope:local +block$16 = .bss:0x801A5CB8; // type:object size:0x30 scope:local +lbl_801A5CE8 = .bss:0x801A5CE8; // type:object size:0x78 data:2byte +lbl_801A5D60 = .bss:0x801A5D60; // type:object size:0x78 +lbl_801A5DD8 = .bss:0x801A5DD8; // type:object size:0x58 data:2byte +lbl_801A5E30 = .bss:0x801A5E30; // type:object size:0x20 +lbl_801A5E50 = .bss:0x801A5E50; // type:object size:0x10 +lbl_801A5E60 = .bss:0x801A5E60; // type:object size:0x40 +gxData = .bss:0x801A5EA0; // type:object size:0x4F8 scope:local +lbl_801A6418 = .bss:0x801A6418; // type:object size:0x520 data:4byte +lbl_801A6938 = .bss:0x801A6938; // type:object size:0x220 data:4byte +lbl_801A6B58 = .bss:0x801A6B58; // type:object size:0x20 +Ecb = .bss:0x801A6B78; // type:object size:0xC0 scope:local data:4byte +Packet = .bss:0x801A6C38; // type:object size:0x80 scope:local data:4byte +lbl_801A6CB8 = .bss:0x801A6CB8; // type:object size:0xA0 +TypeTime = .bss:0x801A6D58; // type:object size:0x20 scope:local +lbl_801A6D78 = .bss:0x801A6D78; // type:object size:0x20 +lbl_801A6D98 = .bss:0x801A6D98; // type:object size:0x40 +lbl_801A6DD8 = .bss:0x801A6DD8; // type:object size:0x68 data:4byte +lbl_801A6E40 = .bss:0x801A6E40; // type:object size:0x118 +lbl_801A6F58 = .bss:0x801A6F58; // type:object size:0x18 data:4byte +fragmentinfo = .bss:0x801A6F70; // type:object size:0xC scope:local data:4byte +__atexit_funcs = .bss:0x801A6F80; // type:object size:0x100 scope:local +lbl_801A7080 = .bss:0x801A7080; // type:object size:0x38 data:4byte +lbl_801A70B8 = .bss:0x801A70B8; // type:object size:0x100 +lbl_801A71B8 = .bss:0x801A71B8; // type:object size:0x100 +lbl_801A72B8 = .bss:0x801A72B8; // type:object size:0x100 +lbl_801A73B8 = .bss:0x801A73B8; // type:object size:0x18 +lbl_801A73D0 = .bss:0x801A73D0; // type:object size:0x28 +gTRKBigEndian = .bss:0x801A73F8; // type:object size:0x4 scope:global data:4byte +lbl_801A7400 = .bss:0x801A7400; // type:object size:0x19B0 +gTRKInputPendingPtr = .bss:0x801A8DB0; // type:object size:0x4 scope:global data:4byte +lbl_801A8DB4 = .bss:0x801A8DB4; // type:object size:0x14 data:4byte +lbl_801A8DC8 = .bss:0x801A8DC8; // type:object size:0x8 data:4byte +lbl_801A8DD0 = .bss:0x801A8DD0; // type:object size:0x8 data:4byte +TRK_saved_exceptionID = .bss:0x801A8DD8; // type:object size:0x2 scope:local data:2byte +gTRKState = .bss:0x801A8DDC; // type:object size:0xA4 scope:global data:4byte +gTRKCPUState = .bss:0x801A8E80; // type:object size:0x430 scope:global +gTRKSaveState = .bss:0x801A92B0; // type:object size:0x94 scope:global data:4byte +lbl_801A9344 = .bss:0x801A9344; // type:object size:0x14 +lbl_801A9358 = .bss:0x801A9358; // type:object size:0x8 data:4byte +TRK_mainError = .bss:0x801A9360; // type:object size:0x4 scope:local data:4byte +lbl_801A9368 = .bss:0x801A9368; // type:object size:0x111C data:4byte +lbl_801AA484 = .bss:0x801AA484; // type:object size:0x110C +lbl_801AB590 = .bss:0x801AB590; // type:object size:0x8 data:byte +lbl_801AB598 = .bss:0x801AB598; // type:object size:0x1400 data:4byte +lbl_801AC998 = .bss:0x801AC998; // type:object size:0xC340 +lbl_801B8CD8 = .bss:0x801B8CD8; // type:object size:0x100 data:2byte +lbl_801B8DD8 = .bss:0x801B8DD8; // type:object size:0x240 +lbl_801B9018 = .bss:0x801B9018; // type:object size:0x214 data:4byte +lbl_801B922C = .bss:0x801B922C; // type:object size:0x600 data:float +lbl_801B982C = .bss:0x801B982C; // type:object size:0x40 data:byte +lbl_801B986C = .bss:0x801B986C; // type:object size:0x180 +lbl_801B99EC = .bss:0x801B99EC; // type:object size:0x20 data:4byte +lbl_801B9A0C = .bss:0x801B9A0C; // type:object size:0x20 data:4byte +lbl_801B9A2C = .bss:0x801B9A2C; // type:object size:0x20 data:4byte +lbl_801B9A4C = .bss:0x801B9A4C; // type:object size:0x20 data:4byte +lbl_801B9A6C = .bss:0x801B9A6C; // type:object size:0x10 data:byte +lbl_801B9A7C = .bss:0x801B9A7C; // type:object size:0x40 data:4byte +lbl_801B9ABC = .bss:0x801B9ABC; // type:object size:0x480 +lbl_801B9F3C = .bss:0x801B9F3C; // type:object size:0x484 +lbl_801BA3C0 = .bss:0x801BA3C0; // type:object size:0x697 +lbl_801BAA57 = .bss:0x801BAA57; // type:object size:0x1269 +lbl_801BBCC0 = .bss:0x801BBCC0; // type:object size:0x800 +lbl_801BC4C0 = .bss:0x801BC4C0; // type:object size:0xC00 +lbl_801BD0C0 = .bss:0x801BD0C0; // type:object size:0x32C0 +lbl_801C0380 = .bss:0x801C0380; // type:object size:0x7 +lbl_801C0387 = .bss:0x801C0387; // type:object size:0x379 +lbl_801C0700 = .bss:0x801C0700; // type:object size:0x800 +lbl_801C0F00 = .bss:0x801C0F00; // type:object size:0x1C0 +lbl_801C10C0 = .bss:0x801C10C0; // type:object size:0x600 data:4byte +lbl_801C16C0 = .bss:0x801C16C0; // type:object size:0x400 data:2byte +lbl_801C1AC0 = .bss:0x801C1AC0; // type:object size:0x800 data:2byte +lbl_801C22C0 = .bss:0x801C22C0; // type:object size:0x4000 +lbl_801C62C0 = .bss:0x801C62C0; // type:object size:0x20 data:2byte +lbl_801C62E0 = .bss:0x801C62E0; // type:object size:0xC +lbl_801C62EC = .bss:0x801C62EC; // type:object size:0xC data:2byte +lbl_801C62F8 = .bss:0x801C62F8; // type:object size:0x20 data:4byte +lbl_801C6318 = .bss:0x801C6318; // type:object size:0xF00 data:4byte +lbl_801C7218 = .bss:0x801C7218; // type:object size:0x40 data:byte +lbl_801C7258 = .bss:0x801C7258; // type:object size:0x80 data:byte +lbl_801C72D8 = .bss:0x801C72D8; // type:object size:0x950 data:byte +lbl_801C7C28 = .bss:0x801C7C28; // type:object size:0x3D7 +lbl_801C7FFF = .bss:0x801C7FFF; // type:object size:0x229 +lbl_801C8228 = .bss:0x801C8228; // type:object size:0x5E0 data:4byte +lbl_801C8808 = .bss:0x801C8808; // type:object size:0x100 data:4byte +lbl_801C8908 = .bss:0x801C8908; // type:object size:0x50 +lbl_801C8958 = .bss:0x801C8958; // type:object size:0x400 data:4byte +lbl_801C8D58 = .bss:0x801C8D58; // type:object size:0x300 +lbl_801C9058 = .bss:0x801C9058; // type:object size:0x700 +lbl_801C9758 = .bss:0x801C9758; // type:object size:0x200 data:4byte +lbl_801C9958 = .bss:0x801C9958; // type:object size:0x4300 +lbl_801CDC58 = .bss:0x801CDC58; // type:object size:0x80 +lbl_801CDCD8 = .bss:0x801CDCD8; // type:object size:0x2180 +lbl_801CFE58 = .bss:0x801CFE58; // type:object size:0x40 +lbl_801CFE98 = .bss:0x801CFE98; // type:object size:0x80 +lbl_801CFF18 = .bss:0x801CFF18; // type:object size:0x40 +lbl_801CFF58 = .bss:0x801CFF58; // type:object size:0x284 +lbl_801D01DC = .bss:0x801D01DC; // type:object size:0x284 +lbl_801D0460 = .bss:0x801D0460; // type:object size:0x400 data:4byte +lbl_801D0860 = .bss:0x801D0860; // type:object size:0x60 +lbl_801D08C0 = .bss:0x801D08C0; // type:object size:0x2000 +lbl_801D28C0 = .bss:0x801D28C0; // type:object size:0x500 data:4byte +lbl_801D2DC0 = .bss:0x801D2DC0; // type:object size:0x30 data:4byte +lbl_801D2DF0 = .bss:0x801D2DF0; // type:object size:0x10 data:4byte +lbl_801D2E00 = .bss:0x801D2E00; // type:object size:0x178 data:2byte +lbl_801D2F78 = .bss:0x801D2F78; // type:object size:0xE8 data:4byte +lbl_801D3060 = .bss:0x801D3060; // type:object size:0x60 data:4byte +lbl_801D30C0 = .sdata:0x801D30C0; // type:object size:0x5 data:string +lbl_801D30C5 = .sdata:0x801D30C5; // type:object size:0x7 +lbl_801D30CC = .sdata:0x801D30CC; // type:object size:0x4 data:4byte +lbl_801D30D0 = .sdata:0x801D30D0; // type:object size:0x6 data:string +lbl_801D30D6 = .sdata:0x801D30D6; // type:object size:0x2 data:string +lbl_801D30D8 = .sdata:0x801D30D8; // type:object size:0x7 data:string +lbl_801D30DF = .sdata:0x801D30DF; // type:object size:0x9 +lbl_801D30E8 = .sdata:0x801D30E8; // type:object size:0x4 data:4byte +lbl_801D30EC = .sdata:0x801D30EC; // type:object size:0x7 data:string +lbl_801D30F3 = .sdata:0x801D30F3; // type:object size:0xD +lbl_801D3100 = .sdata:0x801D3100; // type:object size:0x2 data:string +lbl_801D3102 = .sdata:0x801D3102; // type:object size:0xE +lbl_801D3110 = .sdata:0x801D3110; // type:object size:0x2 data:2byte +lbl_801D3112 = .sdata:0x801D3112; // type:object size:0x4 +lbl_801D3116 = .sdata:0x801D3116; // type:object size:0x4 +lbl_801D311A = .sdata:0x801D311A; // type:object size:0xE +lbl_801D3128 = .sdata:0x801D3128; // type:object size:0x4 data:string +lbl_801D312C = .sdata:0x801D312C; // type:object size:0xC +lbl_801D3138 = .sdata:0x801D3138; // type:object size:0x1 data:byte +lbl_801D313C = .sdata:0x801D313C; // type:object size:0x4 data:4byte +lbl_801D3140 = .sdata:0x801D3140; // type:object size:0x4 data:4byte +lbl_801D3144 = .sdata:0x801D3144; // type:object size:0xC +lbl_801D3150 = .sdata:0x801D3150; // type:object size:0x1 +lbl_801D3151 = .sdata:0x801D3151; // type:object size:0x7 +lbl_801D3158 = .sdata:0x801D3158; // type:object size:0x4 data:4byte +lbl_801D315C = .sdata:0x801D315C; // type:object size:0x7 data:string +lbl_801D3163 = .sdata:0x801D3163; // type:object size:0x1 data:byte +lbl_801D3166 = .sdata:0x801D3166; // type:object size:0x6 +lbl_801D316C = .sdata:0x801D316C; // type:object size:0x8 +lbl_801D3174 = .sdata:0x801D3174; // type:object size:0x6 +lbl_801D317A = .sdata:0x801D317A; // type:object size:0x8 data:string +lbl_801D3182 = .sdata:0x801D3182; // type:object size:0x6 data:string +lbl_801D3188 = .sdata:0x801D3188; // type:object size:0x4 +lbl_801D318C = .sdata:0x801D318C; // type:object size:0x6 data:string +lbl_801D3192 = .sdata:0x801D3192; // type:object size:0x6 +lbl_801D3198 = .sdata:0x801D3198; // type:object size:0x6 data:string +lbl_801D319E = .sdata:0x801D319E; // type:object size:0x5 +lbl_801D31A3 = .sdata:0x801D31A3; // type:object size:0x6 data:string +lbl_801D31A9 = .sdata:0x801D31A9; // type:object size:0x5 +lbl_801D31AE = .sdata:0x801D31AE; // type:object size:0x6 data:string +lbl_801D31B4 = .sdata:0x801D31B4; // type:object size:0x4 +lbl_801D31B8 = .sdata:0x801D31B8; // type:object size:0x6 data:string +lbl_801D31BE = .sdata:0x801D31BE; // type:object size:0x6 +lbl_801D31C4 = .sdata:0x801D31C4; // type:object size:0x3 data:string +lbl_801D31C7 = .sdata:0x801D31C7; // type:object size:0x7 +lbl_801D31CE = .sdata:0x801D31CE; // type:object size:0x6 data:string +lbl_801D31D4 = .sdata:0x801D31D4; // type:object size:0x7 +lbl_801D31DB = .sdata:0x801D31DB; // type:object size:0x8 data:string +lbl_801D31E3 = .sdata:0x801D31E3; // type:object size:0x5 +lbl_801D31E8 = .sdata:0x801D31E8; // type:object size:0x7 data:string +lbl_801D31EF = .sdata:0x801D31EF; // type:object size:0x6 +lbl_801D31F5 = .sdata:0x801D31F5; // type:object size:0x5 data:string +lbl_801D31FA = .sdata:0x801D31FA; // type:object size:0x5 +lbl_801D31FF = .sdata:0x801D31FF; // type:object size:0x6 data:string +lbl_801D3205 = .sdata:0x801D3205; // type:object size:0x4 +lbl_801D3209 = .sdata:0x801D3209; // type:object size:0x8 data:string +lbl_801D3211 = .sdata:0x801D3211; // type:object size:0x5 +lbl_801D3216 = .sdata:0x801D3216; // type:object size:0x7 +lbl_801D321D = .sdata:0x801D321D; // type:object size:0x6 +lbl_801D3223 = .sdata:0x801D3223; // type:object size:0x7 data:string +lbl_801D322A = .sdata:0x801D322A; // type:object size:0x3 +lbl_801D322D = .sdata:0x801D322D; // type:object size:0x5 data:string +lbl_801D3232 = .sdata:0x801D3232; // type:object size:0x6 +lbl_801D3238 = .sdata:0x801D3238; // type:object size:0x5 data:string +lbl_801D323D = .sdata:0x801D323D; // type:object size:0x7 +lbl_801D3244 = .sdata:0x801D3244; // type:object size:0x6 +lbl_801D324A = .sdata:0x801D324A; // type:object size:0x6 data:string +lbl_801D3250 = .sdata:0x801D3250; // type:object size:0x8 +lbl_801D3258 = .sdata:0x801D3258; // type:object size:0x8 +lbl_801D3260 = .sdata:0x801D3260; // type:object size:0x8 +lbl_801D3268 = .sdata:0x801D3268; // type:object size:0x8 +lbl_801D3270 = .sdata:0x801D3270; // type:object size:0x8 +lbl_801D3278 = .sdata:0x801D3278; // type:object size:0x1 data:byte +lbl_801D3279 = .sdata:0x801D3279; // type:object size:0x1 data:byte +lbl_801D327A = .sdata:0x801D327A; // type:object size:0x1 data:byte +lbl_801D327B = .sdata:0x801D327B; // type:object size:0x1 data:byte +lbl_801D327C = .sdata:0x801D327C; // type:object size:0x1 data:byte +lbl_801D327D = .sdata:0x801D327D; // type:object size:0x1 data:byte +lbl_801D327E = .sdata:0x801D327E; // type:object size:0x1 data:byte +lbl_801D327F = .sdata:0x801D327F; // type:object size:0x1 data:byte +lbl_801D3280 = .sdata:0x801D3280; // type:object size:0x8 data:2byte +lbl_801D3288 = .sdata:0x801D3288; // type:object size:0x8 +lbl_801D3290 = .sdata:0x801D3290; // type:object size:0x8 +lbl_801D3298 = .sdata:0x801D3298; // type:object size:0x8 +lbl_801D32A0 = .sdata:0x801D32A0; // type:object size:0x8 +lbl_801D32A8 = .sdata:0x801D32A8; // type:object size:0x8 +lbl_801D32B0 = .sdata:0x801D32B0; // type:object size:0x1 +lbl_801D32B1 = .sdata:0x801D32B1; // type:object size:0x5 data:string +lbl_801D32B6 = .sdata:0x801D32B6; // type:object size:0x5 data:string +lbl_801D32BB = .sdata:0x801D32BB; // type:object size:0x8 data:string +lbl_801D32C3 = .sdata:0x801D32C3; // type:object size:0x6 data:string +lbl_801D32C9 = .sdata:0x801D32C9; // type:object size:0x7 +lbl_801D32D0 = .sdata:0x801D32D0; // type:object size:0x8 +lbl_801D32D8 = .sdata:0x801D32D8; // type:object size:0x4 data:4byte +lbl_801D32DC = .sdata:0x801D32DC; // type:object size:0x2 data:string +lbl_801D32DE = .sdata:0x801D32DE; // type:object size:0x2 data:string +lbl_801D32E0 = .sdata:0x801D32E0; // type:object size:0x8 +lbl_801D32E8 = .sdata:0x801D32E8; // type:object size:0x3 +lbl_801D32EB = .sdata:0x801D32EB; // type:object size:0x5 +lbl_801D32F0 = .sdata:0x801D32F0; // type:object size:0x8 +lbl_801D32F8 = .sdata:0x801D32F8; // type:object size:0x1 data:byte +lbl_801D32FC = .sdata:0x801D32FC; // type:object size:0x4 data:4byte +lbl_801D3300 = .sdata:0x801D3300; // type:object size:0x8 data:2byte +lbl_801D3308 = .sdata:0x801D3308; // type:object size:0x1 data:byte +lbl_801D330C = .sdata:0x801D330C; // type:object size:0xC data:4byte +lbl_801D3318 = .sdata:0x801D3318; // type:object size:0x4 data:4byte +lbl_801D331C = .sdata:0x801D331C; // type:object size:0x1 data:byte +lbl_801D331D = .sdata:0x801D331D; // type:object size:0x1 data:byte +lbl_801D331E = .sdata:0x801D331E; // type:object size:0x1 data:byte +lbl_801D331F = .sdata:0x801D331F; // type:object size:0x1 data:byte +lbl_801D3320 = .sdata:0x801D3320; // type:object size:0x8 +lbl_801D3328 = .sdata:0x801D3328; // type:object size:0x2 data:2byte +lbl_801D332A = .sdata:0x801D332A; // type:object size:0x2 data:2byte +lbl_801D332C = .sdata:0x801D332C; // type:object size:0x2 data:2byte +lbl_801D332E = .sdata:0x801D332E; // type:object size:0x5 data:string +lbl_801D3333 = .sdata:0x801D3333; // type:object size:0x5 data:string +lbl_801D3338 = .sdata:0x801D3338; // type:object size:0x6 data:string +lbl_801D333E = .sdata:0x801D333E; // type:object size:0x6 data:string +lbl_801D3344 = .sdata:0x801D3344; // type:object size:0x6 data:string +lbl_801D334A = .sdata:0x801D334A; // type:object size:0x6 data:string +lbl_801D3350 = .sdata:0x801D3350; // type:object size:0x6 data:string +lbl_801D3356 = .sdata:0x801D3356; // type:object size:0x6 data:string +lbl_801D335C = .sdata:0x801D335C; // type:object size:0x6 data:string +lbl_801D3362 = .sdata:0x801D3362; // type:object size:0x6 data:string +lbl_801D3368 = .sdata:0x801D3368; // type:object size:0x6 data:string +lbl_801D336E = .sdata:0x801D336E; // type:object size:0x6 data:string +lbl_801D3374 = .sdata:0x801D3374; // type:object size:0x6 data:string +lbl_801D337A = .sdata:0x801D337A; // type:object size:0xE +lbl_801D3388 = .sdata:0x801D3388; // type:object size:0x8 data:2byte +lbl_801D3390 = .sdata:0x801D3390; // type:object size:0x8 data:4byte +lbl_801D3398 = .sdata:0x801D3398; // type:object size:0x8 data:byte +lbl_801D33A0 = .sdata:0x801D33A0; // type:object size:0x2 data:2byte +lbl_801D33A2 = .sdata:0x801D33A2; // type:object size:0x6 data:2byte +lbl_801D33A8 = .sdata:0x801D33A8; // type:object size:0x2 data:2byte +lbl_801D33AA = .sdata:0x801D33AA; // type:object size:0x6 data:2byte +lbl_801D33B0 = .sdata:0x801D33B0; // type:object size:0x2 data:2byte +lbl_801D33B2 = .sdata:0x801D33B2; // type:object size:0x1 data:byte +lbl_801D33B4 = .sdata:0x801D33B4; // type:object size:0x8 +lbl_801D33BC = .sdata:0x801D33BC; // type:object size:0x2 data:2byte +lbl_801D33BE = .sdata:0x801D33BE; // type:object size:0x6 data:2byte +lbl_801D33C4 = .sdata:0x801D33C4; // type:object size:0x1 data:byte +lbl_801D33C5 = .sdata:0x801D33C5; // type:object size:0xB +lbl_801D33D0 = .sdata:0x801D33D0; // type:object size:0x2 data:2byte +lbl_801D33D2 = .sdata:0x801D33D2; // type:object size:0x8 data:2byte +lbl_801D33DA = .sdata:0x801D33DA; // type:object size:0x2 data:2byte +lbl_801D33DC = .sdata:0x801D33DC; // type:object size:0x2 data:2byte +lbl_801D33DE = .sdata:0x801D33DE; // type:object size:0x2 data:2byte +lbl_801D33E2 = .sdata:0x801D33E2; // type:object size:0x2 data:2byte +lbl_801D33E4 = .sdata:0x801D33E4; // type:object size:0x8 +lbl_801D33EC = .sdata:0x801D33EC; // type:object size:0x2 data:2byte +lbl_801D33EE = .sdata:0x801D33EE; // type:object size:0x2 data:2byte +lbl_801D33F0 = .sdata:0x801D33F0; // type:object size:0x2 data:2byte +lbl_801D33F2 = .sdata:0x801D33F2; // type:object size:0x2 data:2byte +lbl_801D33F4 = .sdata:0x801D33F4; // type:object size:0x4 +lbl_801D33F8 = .sdata:0x801D33F8; // type:object size:0x8 +lbl_801D3400 = .sdata:0x801D3400; // type:object size:0x1 data:byte +lbl_801D3402 = .sdata:0x801D3402; // type:object size:0x2 data:2byte +lbl_801D3404 = .sdata:0x801D3404; // type:object size:0x4 data:4byte +lbl_801D3408 = .sdata:0x801D3408; // type:object size:0x8 +lbl_801D3410 = .sdata:0x801D3410; // type:object size:0x8 data:2byte +lbl_801D3418 = .sdata:0x801D3418; // type:object size:0x2 data:2byte +lbl_801D341A = .sdata:0x801D341A; // type:object size:0x6 data:2byte +lbl_801D3420 = .sdata:0x801D3420; // type:object size:0x6 +lbl_801D3426 = .sdata:0x801D3426; // type:object size:0x6 +lbl_801D342C = .sdata:0x801D342C; // type:object size:0x2 data:2byte +lbl_801D342E = .sdata:0x801D342E; // type:object size:0xA +lbl_801D3438 = .sdata:0x801D3438; // type:object size:0x2 data:2byte +lbl_801D343A = .sdata:0x801D343A; // type:object size:0x6 data:2byte +lbl_801D3440 = .sdata:0x801D3440; // type:object size:0x2 data:2byte +lbl_801D3442 = .sdata:0x801D3442; // type:object size:0x6 data:2byte +lbl_801D3448 = .sdata:0x801D3448; // type:object size:0x8 +lbl_801D3450 = .sdata:0x801D3450; // type:object size:0x8 +lbl_801D3458 = .sdata:0x801D3458; // type:object size:0x2 data:2byte +lbl_801D345A = .sdata:0x801D345A; // type:object size:0x2 data:2byte +lbl_801D345C = .sdata:0x801D345C; // type:object size:0x2 data:2byte +lbl_801D345E = .sdata:0x801D345E; // type:object size:0x2 data:2byte +lbl_801D3460 = .sdata:0x801D3460; // type:object size:0x3 data:string +lbl_801D3463 = .sdata:0x801D3463; // type:object size:0xD +lbl_801D3470 = .sdata:0x801D3470; // type:object size:0x8 +lbl_801D3478 = .sdata:0x801D3478; // type:object size:0x8 +lbl_801D3480 = .sdata:0x801D3480; // type:object size:0x8 +lbl_801D3488 = .sdata:0x801D3488; // type:object size:0x8 +lbl_801D3490 = .sdata:0x801D3490; // type:object size:0x1 data:byte +lbl_801D3491 = .sdata:0x801D3491; // type:object size:0x7 data:byte +lbl_801D3498 = .sdata:0x801D3498; // type:object size:0x2 data:2byte +lbl_801D349A = .sdata:0x801D349A; // type:object size:0x2 data:2byte +lbl_801D349C = .sdata:0x801D349C; // type:object size:0x2 data:2byte +lbl_801D349E = .sdata:0x801D349E; // type:object size:0x2 data:2byte +lbl_801D34A0 = .sdata:0x801D34A0; // type:object size:0x2 data:2byte +lbl_801D34A2 = .sdata:0x801D34A2; // type:object size:0x2 data:2byte +lbl_801D34A4 = .sdata:0x801D34A4; // type:object size:0x6 data:2byte +lbl_801D34AA = .sdata:0x801D34AA; // type:object size:0x7 data:string +lbl_801D34B1 = .sdata:0x801D34B1; // type:object size:0x7 data:string +lbl_801D34B8 = .sdata:0x801D34B8; // type:object size:0x7 data:string +lbl_801D34BF = .sdata:0x801D34BF; // type:object size:0x7 data:string +lbl_801D34C6 = .sdata:0x801D34C6; // type:object size:0x7 data:string +lbl_801D34CD = .sdata:0x801D34CD; // type:object size:0x6 data:string +lbl_801D34D3 = .sdata:0x801D34D3; // type:object size:0x7 data:string +lbl_801D34DA = .sdata:0x801D34DA; // type:object size:0x6 data:string +lbl_801D34E0 = .sdata:0x801D34E0; // type:object size:0x8 +lbl_801D34E8 = .sdata:0x801D34E8; // type:object size:0x2 data:2byte +lbl_801D34EA = .sdata:0x801D34EA; // type:object size:0x2 data:2byte +lbl_801D34EC = .sdata:0x801D34EC; // type:object size:0x2 data:2byte +lbl_801D34EE = .sdata:0x801D34EE; // type:object size:0x2 data:2byte +lbl_801D34F0 = .sdata:0x801D34F0; // type:object size:0x4 data:4byte +lbl_801D34F4 = .sdata:0x801D34F4; // type:object size:0x4 +lbl_801D34F8 = .sdata:0x801D34F8; // type:object size:0x2 data:2byte +lbl_801D34FA = .sdata:0x801D34FA; // type:object size:0x2 data:2byte +lbl_801D34FC = .sdata:0x801D34FC; // type:object size:0x2 data:2byte +lbl_801D34FE = .sdata:0x801D34FE; // type:object size:0x2 data:2byte +lbl_801D3500 = .sdata:0x801D3500; // type:object size:0x4 data:4byte +lbl_801D3504 = .sdata:0x801D3504; // type:object size:0x6 data:string +lbl_801D350A = .sdata:0x801D350A; // type:object size:0x7 data:string +lbl_801D3511 = .sdata:0x801D3511; // type:object size:0x7 data:string +lbl_801D3518 = .sdata:0x801D3518; // type:object size:0x7 data:string +lbl_801D351F = .sdata:0x801D351F; // type:object size:0x5 data:string +lbl_801D3524 = .sdata:0x801D3524; // type:object size:0x6 data:string +lbl_801D352A = .sdata:0x801D352A; // type:object size:0x6 data:string +lbl_801D3530 = .sdata:0x801D3530; // type:object size:0x6 data:string +lbl_801D3536 = .sdata:0x801D3536; // type:object size:0x4 data:string +lbl_801D353A = .sdata:0x801D353A; // type:object size:0x5 data:string +lbl_801D353F = .sdata:0x801D353F; // type:object size:0x5 data:string +lbl_801D3544 = .sdata:0x801D3544; // type:object size:0xC +lbl_801D3550 = .sdata:0x801D3550; // type:object size:0x1 data:byte +lbl_801D3552 = .sdata:0x801D3552; // type:object size:0x2 data:2byte +lbl_801D3554 = .sdata:0x801D3554; // type:object size:0x2 data:2byte +lbl_801D3556 = .sdata:0x801D3556; // type:object size:0x2 data:2byte +lbl_801D3558 = .sdata:0x801D3558; // type:object size:0x2 data:2byte +lbl_801D355A = .sdata:0x801D355A; // type:object size:0x2 data:2byte +lbl_801D355C = .sdata:0x801D355C; // type:object size:0x2 data:2byte +lbl_801D355E = .sdata:0x801D355E; // type:object size:0x2 data:2byte +lbl_801D3560 = .sdata:0x801D3560; // type:object size:0x8 data:4byte +__OSArenaLo = .sdata:0x801D3568; // type:object size:0x4 scope:local data:4byte +@32 = .sdata:0x801D3570; // type:object size:0x2 scope:local data:string +lbl_801D3578 = .sdata:0x801D3578; // type:object size:0x8 data:2byte +lbl_801D3580 = .sdata:0x801D3580; // type:object size:0x8 +lbl_801D3588 = .sdata:0x801D3588; // type:object size:0x8 data:4byte +lbl_801D3590 = .sdata:0x801D3590; // type:object size:0x8 data:string +autoInvalidation = .sdata:0x801D3598; // type:object size:0x4 scope:local data:4byte +@35 = .sdata:0x801D35A0; // type:object size:0x2 scope:local data:string +@40 = .sdata:0x801D35A4; // type:object size:0x4 scope:local data:string +@41 = .sdata:0x801D35A8; // type:object size:0x3 scope:local data:string +lbl_801D35B0 = .sdata:0x801D35B0; // type:object size:0x8 data:string +lbl_801D35B8 = .sdata:0x801D35B8; // type:object size:0x8 data:byte +lbl_801D35C0 = .sdata:0x801D35C0; // type:object size:0x4 data:4byte +lbl_801D35C4 = .sdata:0x801D35C4; // type:object size:0x4 data:4byte +lbl_801D35C8 = .sdata:0x801D35C8; // type:object size:0x4 data:4byte +lbl_801D35CC = .sdata:0x801D35CC; // type:object size:0x4 data:4byte +lbl_801D35D0 = .sdata:0x801D35D0; // type:object size:0x4 data:4byte +lbl_801D35D4 = .sdata:0x801D35D4; // type:object size:0x4 +lbl_801D35D8 = .sdata:0x801D35D8; // type:object size:0x8 +gx = .sdata:0x801D35E0; // type:object size:0x4 scope:global data:4byte +lbl_801D35E8 = .sdata:0x801D35E8; // type:object size:0x4 +lbl_801D35EC = .sdata:0x801D35EC; // type:object size:0x4 +lbl_801D35F0 = .sdata:0x801D35F0; // type:object size:0x8 +lbl_801D35F8 = .sdata:0x801D35F8; // type:object size:0x8 +lbl_801D3600 = .sdata:0x801D3600; // type:object size:0x8 +lbl_801D3608 = .sdata:0x801D3608; // type:object size:0x8 +lbl_801D3610 = .sdata:0x801D3610; // type:object size:0x8 +lbl_801D3618 = .sdata:0x801D3618; // type:object size:0x8 +lbl_801D3620 = .sdata:0x801D3620; // type:object size:0x8 +lbl_801D3628 = .sdata:0x801D3628; // type:object size:0x8 +lbl_801D3630 = .sdata:0x801D3630; // type:object size:0x8 +lbl_801D3638 = .sdata:0x801D3638; // type:object size:0x8 data:4byte +lbl_801D3640 = .sdata:0x801D3640; // type:object size:0x8 data:2byte +lbl_801D3648 = .sdata:0x801D3648; // type:object size:0x8 +lbl_801D3650 = .sdata:0x801D3650; // type:object size:0x4 data:4byte +lbl_801D3654 = .sdata:0x801D3654; // type:object size:0x4 data:4byte +fragmentID = .sdata:0x801D3658; // type:object size:0x4 scope:local data:4byte +lbl_801D3660 = .sdata:0x801D3660; // type:object size:0x8 +lbl_801D3668 = .sdata:0x801D3668; // type:object size:0x8 +@wstringBase0 = .sdata:0x801D3670; // type:object size:0x2 scope:local +lbl_801D3678 = .sdata:0x801D3678; // type:object size:0x4 data:float +lbl_801D367C = .sdata:0x801D367C; // type:object size:0x4 data:float +lbl_801D3680 = .sdata:0x801D3680; // type:object size:0x8 data:4byte +lbl_801D3688 = .sdata:0x801D3688; // type:object size:0x8 +lbl_801D3690 = .sdata:0x801D3690; // type:object size:0x8 +lbl_801D3698 = .sdata:0x801D3698; // type:object size:0x8 data:2byte +lbl_801D36A0 = .sdata:0x801D36A0; // type:object size:0x1 data:byte +lbl_801D36C0 = .sbss:0x801D36C0; // type:object size:0x4 data:4byte +lbl_801D36C4 = .sbss:0x801D36C4; // type:object size:0x4 data:4byte +lbl_801D36C8 = .sbss:0x801D36C8; // type:object size:0x4 +lbl_801D36CC = .sbss:0x801D36CC; // type:object size:0x4 +lbl_801D36D0 = .sbss:0x801D36D0; // type:object size:0x4 +lbl_801D36D4 = .sbss:0x801D36D4; // type:object size:0x4 +lbl_801D36D8 = .sbss:0x801D36D8; // type:object size:0x4 +lbl_801D36DC = .sbss:0x801D36DC; // type:object size:0x4 +lbl_801D36E0 = .sbss:0x801D36E0; // type:object size:0x4 +lbl_801D36E4 = .sbss:0x801D36E4; // type:object size:0x4 +lbl_801D36E8 = .sbss:0x801D36E8; // type:object size:0x4 +lbl_801D36EC = .sbss:0x801D36EC; // type:object size:0x4 +lbl_801D36F0 = .sbss:0x801D36F0; // type:object size:0x4 +lbl_801D36F4 = .sbss:0x801D36F4; // type:object size:0x4 +lbl_801D36F8 = .sbss:0x801D36F8; // type:object size:0x4 +lbl_801D36FC = .sbss:0x801D36FC; // type:object size:0x4 +lbl_801D3700 = .sbss:0x801D3700; // type:object size:0x4 +lbl_801D3704 = .sbss:0x801D3704; // type:object size:0x4 +lbl_801D3708 = .sbss:0x801D3708; // type:object size:0x4 +lbl_801D370C = .sbss:0x801D370C; // type:object size:0x4 +lbl_801D3710 = .sbss:0x801D3710; // type:object size:0x4 +lbl_801D3714 = .sbss:0x801D3714; // type:object size:0x4 data:4byte +lbl_801D3718 = .sbss:0x801D3718; // type:object size:0x4 data:4byte +lbl_801D371C = .sbss:0x801D371C; // type:object size:0x4 data:4byte +lbl_801D3720 = .sbss:0x801D3720; // type:object size:0x4 +lbl_801D3724 = .sbss:0x801D3724; // type:object size:0x4 +lbl_801D3728 = .sbss:0x801D3728; // type:object size:0x4 +lbl_801D372C = .sbss:0x801D372C; // type:object size:0x4 +lbl_801D3730 = .sbss:0x801D3730; // type:object size:0x4 +lbl_801D3734 = .sbss:0x801D3734; // type:object size:0x4 +lbl_801D3738 = .sbss:0x801D3738; // type:object size:0x4 +lbl_801D373C = .sbss:0x801D373C; // type:object size:0x4 +lbl_801D3740 = .sbss:0x801D3740; // type:object size:0x4 +lbl_801D3744 = .sbss:0x801D3744; // type:object size:0x4 +lbl_801D3748 = .sbss:0x801D3748; // type:object size:0x4 +lbl_801D374C = .sbss:0x801D374C; // type:object size:0x8 +lbl_801D3754 = .sbss:0x801D3754; // type:object size:0x8 +lbl_801D375C = .sbss:0x801D375C; // type:object size:0x8 +lbl_801D3764 = .sbss:0x801D3764; // type:object size:0x4 +lbl_801D3768 = .sbss:0x801D3768; // type:object size:0x4 +lbl_801D376C = .sbss:0x801D376C; // type:object size:0x4 +lbl_801D3770 = .sbss:0x801D3770; // type:object size:0x4 +lbl_801D3774 = .sbss:0x801D3774; // type:object size:0x4 +lbl_801D3778 = .sbss:0x801D3778; // type:object size:0x4 +lbl_801D377C = .sbss:0x801D377C; // type:object size:0x4 +lbl_801D3780 = .sbss:0x801D3780; // type:object size:0x4 +lbl_801D3784 = .sbss:0x801D3784; // type:object size:0x4 +lbl_801D3788 = .sbss:0x801D3788; // type:object size:0x8 +lbl_801D3790 = .sbss:0x801D3790; // type:object size:0x8 data:2byte +lbl_801D3798 = .sbss:0x801D3798; // type:object size:0x8 +lbl_801D37A0 = .sbss:0x801D37A0; // type:object size:0x4 data:4byte +lbl_801D37A4 = .sbss:0x801D37A4; // type:object size:0x4 data:4byte +lbl_801D37A8 = .sbss:0x801D37A8; // type:object size:0x4 data:4byte +lbl_801D37AC = .sbss:0x801D37AC; // type:object size:0x4 data:4byte +lbl_801D37B0 = .sbss:0x801D37B0; // type:object size:0x8 data:4byte +lbl_801D37B8 = .sbss:0x801D37B8; // type:object size:0x4 data:4byte +lbl_801D37BC = .sbss:0x801D37BC; // type:object size:0x4 data:4byte +lbl_801D37C0 = .sbss:0x801D37C0; // type:object size:0x4 data:float +lbl_801D37C4 = .sbss:0x801D37C4; // type:object size:0x4 data:4byte +lbl_801D37C8 = .sbss:0x801D37C8; // type:object size:0x4 data:4byte +lbl_801D37CC = .sbss:0x801D37CC; // type:object size:0x4 data:4byte +lbl_801D37D0 = .sbss:0x801D37D0; // type:object size:0x4 data:4byte +lbl_801D37D4 = .sbss:0x801D37D4; // type:object size:0x4 data:4byte +lbl_801D37D8 = .sbss:0x801D37D8; // type:object size:0x4 data:4byte +lbl_801D37DC = .sbss:0x801D37DC; // type:object size:0x4 data:4byte +lbl_801D37E0 = .sbss:0x801D37E0; // type:object size:0x8 data:4byte +lbl_801D37E8 = .sbss:0x801D37E8; // type:object size:0x4 data:4byte +lbl_801D37EC = .sbss:0x801D37EC; // type:object size:0x2 data:2byte +lbl_801D37EE = .sbss:0x801D37EE; // type:object size:0x2 data:2byte +lbl_801D37F0 = .sbss:0x801D37F0; // type:object size:0x8 data:4byte +lbl_801D37F8 = .sbss:0x801D37F8; // type:object size:0x4 data:4byte +lbl_801D37FC = .sbss:0x801D37FC; // type:object size:0x2 data:2byte +lbl_801D3800 = .sbss:0x801D3800; // type:object size:0x4 data:4byte +lbl_801D3804 = .sbss:0x801D3804; // type:object size:0x4 data:4byte +lbl_801D3808 = .sbss:0x801D3808; // type:object size:0x4 data:4byte +lbl_801D380C = .sbss:0x801D380C; // type:object size:0x2 data:2byte +lbl_801D380E = .sbss:0x801D380E; // type:object size:0x2 data:2byte +lbl_801D3810 = .sbss:0x801D3810; // type:object size:0x8 data:2byte +lbl_801D3818 = .sbss:0x801D3818; // type:object size:0x4 data:4byte +lbl_801D381C = .sbss:0x801D381C; // type:object size:0x4 data:4byte +lbl_801D3820 = .sbss:0x801D3820; // type:object size:0x4 data:4byte +lbl_801D3824 = .sbss:0x801D3824; // type:object size:0x4 data:4byte +lbl_801D3828 = .sbss:0x801D3828; // type:object size:0x4 data:4byte +lbl_801D382C = .sbss:0x801D382C; // type:object size:0x4 data:4byte +lbl_801D3830 = .sbss:0x801D3830; // type:object size:0x4 data:4byte +lbl_801D3834 = .sbss:0x801D3834; // type:object size:0x4 data:4byte +lbl_801D3838 = .sbss:0x801D3838; // type:object size:0x4 data:4byte +lbl_801D383C = .sbss:0x801D383C; // type:object size:0x4 data:4byte +lbl_801D3840 = .sbss:0x801D3840; // type:object size:0x4 data:4byte +lbl_801D3844 = .sbss:0x801D3844; // type:object size:0x4 data:4byte +lbl_801D3848 = .sbss:0x801D3848; // type:object size:0x8 data:4byte +lbl_801D3850 = .sbss:0x801D3850; // type:object size:0x4 data:4byte +lbl_801D3854 = .sbss:0x801D3854; // type:object size:0x4 data:4byte +lbl_801D3858 = .sbss:0x801D3858; // type:object size:0x4 data:4byte +lbl_801D385C = .sbss:0x801D385C; // type:object size:0x4 data:4byte +lbl_801D3860 = .sbss:0x801D3860; // type:object size:0x2 data:2byte +lbl_801D3864 = .sbss:0x801D3864; // type:object size:0x4 data:4byte +lbl_801D3868 = .sbss:0x801D3868; // type:object size:0x4 data:4byte +lbl_801D386C = .sbss:0x801D386C; // type:object size:0x4 data:4byte +lbl_801D3870 = .sbss:0x801D3870; // type:object size:0x4 data:4byte +lbl_801D3874 = .sbss:0x801D3874; // type:object size:0x4 data:4byte +lbl_801D3878 = .sbss:0x801D3878; // type:object size:0x2 data:2byte +lbl_801D387A = .sbss:0x801D387A; // type:object size:0x2 data:2byte +lbl_801D387C = .sbss:0x801D387C; // type:object size:0x2 data:2byte +lbl_801D387E = .sbss:0x801D387E; // type:object size:0x2 data:2byte +lbl_801D3880 = .sbss:0x801D3880; // type:object size:0x4 data:4byte +lbl_801D3884 = .sbss:0x801D3884; // type:object size:0x2 data:2byte +lbl_801D3886 = .sbss:0x801D3886; // type:object size:0x2 data:2byte +lbl_801D3888 = .sbss:0x801D3888; // type:object size:0x4 data:4byte +lbl_801D388C = .sbss:0x801D388C; // type:object size:0x4 data:4byte +lbl_801D3890 = .sbss:0x801D3890; // type:object size:0x4 data:4byte +lbl_801D3894 = .sbss:0x801D3894; // type:object size:0x4 data:4byte +lbl_801D3898 = .sbss:0x801D3898; // type:object size:0x4 data:4byte +lbl_801D389C = .sbss:0x801D389C; // type:object size:0x4 data:4byte +lbl_801D38A0 = .sbss:0x801D38A0; // type:object size:0x4 data:4byte +lbl_801D38A4 = .sbss:0x801D38A4; // type:object size:0x4 data:4byte +lbl_801D38A8 = .sbss:0x801D38A8; // type:object size:0x2 data:2byte +lbl_801D38AC = .sbss:0x801D38AC; // type:object size:0x4 data:4byte +lbl_801D38B0 = .sbss:0x801D38B0; // type:object size:0x1 data:byte +lbl_801D38B1 = .sbss:0x801D38B1; // type:object size:0x1 data:byte +lbl_801D38B2 = .sbss:0x801D38B2; // type:object size:0x1 data:byte +lbl_801D38B3 = .sbss:0x801D38B3; // type:object size:0x1 data:byte +lbl_801D38B4 = .sbss:0x801D38B4; // type:object size:0x2 data:2byte +lbl_801D38B6 = .sbss:0x801D38B6; // type:object size:0x2 data:2byte +lbl_801D38B8 = .sbss:0x801D38B8; // type:object size:0x2 data:2byte +lbl_801D38BC = .sbss:0x801D38BC; // type:object size:0x4 data:4byte +lbl_801D38C0 = .sbss:0x801D38C0; // type:object size:0x2 data:2byte +lbl_801D38C2 = .sbss:0x801D38C2; // type:object size:0x2 data:2byte +lbl_801D38C4 = .sbss:0x801D38C4; // type:object size:0x2 data:2byte +lbl_801D38C8 = .sbss:0x801D38C8; // type:object size:0x4 data:4byte +lbl_801D38CC = .sbss:0x801D38CC; // type:object size:0x2 data:2byte +lbl_801D38CE = .sbss:0x801D38CE; // type:object size:0x2 data:2byte +lbl_801D38D0 = .sbss:0x801D38D0; // type:object size:0x4 data:4byte +lbl_801D38D4 = .sbss:0x801D38D4; // type:object size:0x4 data:4byte +lbl_801D38D8 = .sbss:0x801D38D8; // type:object size:0x4 data:4byte +lbl_801D38DC = .sbss:0x801D38DC; // type:object size:0x4 data:4byte +lbl_801D38E0 = .sbss:0x801D38E0; // type:object size:0x4 data:4byte +lbl_801D38E4 = .sbss:0x801D38E4; // type:object size:0x1 data:byte +lbl_801D38E8 = .sbss:0x801D38E8; // type:object size:0x4 data:4byte +lbl_801D38EC = .sbss:0x801D38EC; // type:object size:0x2 data:2byte +lbl_801D38F0 = .sbss:0x801D38F0; // type:object size:0x4 data:4byte +lbl_801D38F4 = .sbss:0x801D38F4; // type:object size:0x2 data:2byte +lbl_801D38F6 = .sbss:0x801D38F6; // type:object size:0x2 data:2byte +lbl_801D38F8 = .sbss:0x801D38F8; // type:object size:0x2 data:2byte +lbl_801D38FC = .sbss:0x801D38FC; // type:object size:0x4 data:4byte +lbl_801D3900 = .sbss:0x801D3900; // type:object size:0x2 data:2byte +lbl_801D3902 = .sbss:0x801D3902; // type:object size:0x2 data:2byte +lbl_801D3904 = .sbss:0x801D3904; // type:object size:0x2 data:2byte +lbl_801D3908 = .sbss:0x801D3908; // type:object size:0x4 data:4byte +lbl_801D390C = .sbss:0x801D390C; // type:object size:0x4 data:4byte +lbl_801D3910 = .sbss:0x801D3910; // type:object size:0x2 data:2byte +lbl_801D3914 = .sbss:0x801D3914; // type:object size:0x4 data:4byte +lbl_801D3918 = .sbss:0x801D3918; // type:object size:0x2 data:2byte +lbl_801D391A = .sbss:0x801D391A; // type:object size:0x1 data:byte +lbl_801D391B = .sbss:0x801D391B; // type:object size:0x1 data:byte +lbl_801D391C = .sbss:0x801D391C; // type:object size:0x1 data:byte +lbl_801D391D = .sbss:0x801D391D; // type:object size:0x1 data:byte +lbl_801D3920 = .sbss:0x801D3920; // type:object size:0x8 data:4byte +lbl_801D3928 = .sbss:0x801D3928; // type:object size:0x1 data:byte +lbl_801D392A = .sbss:0x801D392A; // type:object size:0x2 data:2byte +lbl_801D392C = .sbss:0x801D392C; // type:object size:0x4 data:4byte +lbl_801D3930 = .sbss:0x801D3930; // type:object size:0x4 +lbl_801D3934 = .sbss:0x801D3934; // type:object size:0x4 +lbl_801D3938 = .sbss:0x801D3938; // type:object size:0x4 +lbl_801D393C = .sbss:0x801D393C; // type:object size:0x4 +lbl_801D3940 = .sbss:0x801D3940; // type:object size:0x4 +lbl_801D3944 = .sbss:0x801D3944; // type:object size:0x4 +lbl_801D3948 = .sbss:0x801D3948; // type:object size:0x4 +lbl_801D394C = .sbss:0x801D394C; // type:object size:0x4 +lbl_801D3950 = .sbss:0x801D3950; // type:object size:0x4 +lbl_801D3954 = .sbss:0x801D3954; // type:object size:0x4 +lbl_801D3958 = .sbss:0x801D3958; // type:object size:0x4 +lbl_801D395C = .sbss:0x801D395C; // type:object size:0x4 +lbl_801D3960 = .sbss:0x801D3960; // type:object size:0x4 +lbl_801D3964 = .sbss:0x801D3964; // type:object size:0x4 +lbl_801D3968 = .sbss:0x801D3968; // type:object size:0x4 +lbl_801D396C = .sbss:0x801D396C; // type:object size:0x4 +lbl_801D3970 = .sbss:0x801D3970; // type:object size:0x4 +lbl_801D3974 = .sbss:0x801D3974; // type:object size:0x4 +lbl_801D3978 = .sbss:0x801D3978; // type:object size:0x4 +lbl_801D397C = .sbss:0x801D397C; // type:object size:0x4 +lbl_801D3980 = .sbss:0x801D3980; // type:object size:0x2 data:2byte +lbl_801D3982 = .sbss:0x801D3982; // type:object size:0x2 data:2byte +lbl_801D3984 = .sbss:0x801D3984; // type:object size:0x1 data:byte +lbl_801D3988 = .sbss:0x801D3988; // type:object size:0x4 data:4byte +lbl_801D398C = .sbss:0x801D398C; // type:object size:0x4 data:4byte +lbl_801D3990 = .sbss:0x801D3990; // type:object size:0x4 data:4byte +lbl_801D3994 = .sbss:0x801D3994; // type:object size:0x4 data:4byte +lbl_801D3998 = .sbss:0x801D3998; // type:object size:0x4 data:4byte +lbl_801D399C = .sbss:0x801D399C; // type:object size:0x4 data:4byte +lbl_801D39A0 = .sbss:0x801D39A0; // type:object size:0x4 data:4byte +lbl_801D39A4 = .sbss:0x801D39A4; // type:object size:0x4 data:4byte +lbl_801D39A8 = .sbss:0x801D39A8; // type:object size:0x4 data:4byte +lbl_801D39AC = .sbss:0x801D39AC; // type:object size:0x4 data:4byte +lbl_801D39B0 = .sbss:0x801D39B0; // type:object size:0x4 data:4byte +lbl_801D39B4 = .sbss:0x801D39B4; // type:object size:0x4 data:4byte +lbl_801D39B8 = .sbss:0x801D39B8; // type:object size:0x1 data:byte +lbl_801D39B9 = .sbss:0x801D39B9; // type:object size:0x1 data:byte +lbl_801D39BA = .sbss:0x801D39BA; // type:object size:0x1 data:byte +lbl_801D39BC = .sbss:0x801D39BC; // type:object size:0x4 data:4byte +lbl_801D39C0 = .sbss:0x801D39C0; // type:object size:0x4 +lbl_801D39C4 = .sbss:0x801D39C4; // type:object size:0x4 data:float +lbl_801D39C8 = .sbss:0x801D39C8; // type:object size:0x8 data:4byte +lbl_801D39D0 = .sbss:0x801D39D0; // type:object size:0x8 data:4byte +lbl_801D39D8 = .sbss:0x801D39D8; // type:object size:0x1 data:byte +lbl_801D39DC = .sbss:0x801D39DC; // type:object size:0x4 data:4byte +lbl_801D39E0 = .sbss:0x801D39E0; // type:object size:0x4 data:float +lbl_801D39E4 = .sbss:0x801D39E4; // type:object size:0x4 data:float +lbl_801D39E8 = .sbss:0x801D39E8; // type:object size:0x4 data:float +lbl_801D39EC = .sbss:0x801D39EC; // type:object size:0x4 data:float +lbl_801D39F0 = .sbss:0x801D39F0; // type:object size:0x4 data:float +lbl_801D39F4 = .sbss:0x801D39F4; // type:object size:0x1 data:byte +lbl_801D39F5 = .sbss:0x801D39F5; // type:object size:0x1 data:byte +lbl_801D39F8 = .sbss:0x801D39F8; // type:object size:0x4 data:4byte +lbl_801D39FC = .sbss:0x801D39FC; // type:object size:0x4 data:4byte +lbl_801D3A00 = .sbss:0x801D3A00; // type:object size:0x2 data:2byte +lbl_801D3A02 = .sbss:0x801D3A02; // type:object size:0x6 data:2byte +lbl_801D3A08 = .sbss:0x801D3A08; // type:object size:0x4 data:4byte +lbl_801D3A0C = .sbss:0x801D3A0C; // type:object size:0x4 data:4byte +lbl_801D3A10 = .sbss:0x801D3A10; // type:object size:0x4 data:4byte +lbl_801D3A14 = .sbss:0x801D3A14; // type:object size:0x4 data:4byte +lbl_801D3A18 = .sbss:0x801D3A18; // type:object size:0x4 data:4byte +lbl_801D3A1C = .sbss:0x801D3A1C; // type:object size:0x4 data:4byte +lbl_801D3A20 = .sbss:0x801D3A20; // type:object size:0x4 data:4byte +lbl_801D3A24 = .sbss:0x801D3A24; // type:object size:0x4 data:4byte +lbl_801D3A28 = .sbss:0x801D3A28; // type:object size:0x4 data:4byte +lbl_801D3A2C = .sbss:0x801D3A2C; // type:object size:0x4 data:4byte +lbl_801D3A30 = .sbss:0x801D3A30; // type:object size:0x8 data:4byte +lbl_801D3A38 = .sbss:0x801D3A38; // type:object size:0x4 data:4byte +lbl_801D3A3C = .sbss:0x801D3A3C; // type:object size:0x4 data:4byte +lbl_801D3A40 = .sbss:0x801D3A40; // type:object size:0x4 data:4byte +lbl_801D3A44 = .sbss:0x801D3A44; // type:object size:0x4 data:4byte +lbl_801D3A48 = .sbss:0x801D3A48; // type:object size:0x4 data:4byte +lbl_801D3A4C = .sbss:0x801D3A4C; // type:object size:0x4 data:4byte +lbl_801D3A50 = .sbss:0x801D3A50; // type:object size:0x2 data:2byte +lbl_801D3A52 = .sbss:0x801D3A52; // type:object size:0x2 data:2byte +lbl_801D3A54 = .sbss:0x801D3A54; // type:object size:0x1 data:byte +lbl_801D3A55 = .sbss:0x801D3A55; // type:object size:0x1 data:byte +lbl_801D3A56 = .sbss:0x801D3A56; // type:object size:0x2 data:2byte +lbl_801D3A58 = .sbss:0x801D3A58; // type:object size:0x8 data:2byte +lbl_801D3A60 = .sbss:0x801D3A60; // type:object size:0x8 +lbl_801D3A68 = .sbss:0x801D3A68; // type:object size:0x8 data:4byte +lbl_801D3A70 = .sbss:0x801D3A70; // type:object size:0x4 data:4byte +lbl_801D3A74 = .sbss:0x801D3A74; // type:object size:0x1 data:byte +lbl_801D3A76 = .sbss:0x801D3A76; // type:object size:0x2 data:2byte +lbl_801D3A78 = .sbss:0x801D3A78; // type:object size:0x2 data:2byte +lbl_801D3A7A = .sbss:0x801D3A7A; // type:object size:0x2 data:2byte +lbl_801D3A7C = .sbss:0x801D3A7C; // type:object size:0x4 data:4byte +lbl_801D3A80 = .sbss:0x801D3A80; // type:object size:0x4 data:4byte +lbl_801D3A84 = .sbss:0x801D3A84; // type:object size:0x4 data:4byte +lbl_801D3A88 = .sbss:0x801D3A88; // type:object size:0x1 data:byte +lbl_801D3A89 = .sbss:0x801D3A89; // type:object size:0x1 data:byte +lbl_801D3A8A = .sbss:0x801D3A8A; // type:object size:0x8 +lbl_801D3A92 = .sbss:0x801D3A92; // type:object size:0x2 data:2byte +lbl_801D3A94 = .sbss:0x801D3A94; // type:object size:0x2 data:2byte +lbl_801D3A98 = .sbss:0x801D3A98; // type:object size:0x4 data:4byte +lbl_801D3A9C = .sbss:0x801D3A9C; // type:object size:0x4 data:4byte +lbl_801D3AA0 = .sbss:0x801D3AA0; // type:object size:0x4 data:4byte +lbl_801D3AA4 = .sbss:0x801D3AA4; // type:object size:0x4 data:4byte +lbl_801D3AA8 = .sbss:0x801D3AA8; // type:object size:0x4 data:4byte +lbl_801D3AAC = .sbss:0x801D3AAC; // type:object size:0x4 data:4byte +lbl_801D3AB0 = .sbss:0x801D3AB0; // type:object size:0x8 data:4byte +lbl_801D3AB8 = .sbss:0x801D3AB8; // type:object size:0x1 data:byte +lbl_801D3ABC = .sbss:0x801D3ABC; // type:object size:0x4 data:4byte +lbl_801D3AC0 = .sbss:0x801D3AC0; // type:object size:0x2 data:2byte +lbl_801D3AC4 = .sbss:0x801D3AC4; // type:object size:0x4 data:4byte +lbl_801D3AC8 = .sbss:0x801D3AC8; // type:object size:0x8 data:4byte +lbl_801D3AD0 = .sbss:0x801D3AD0; // type:object size:0x4 data:4byte +lbl_801D3AD4 = .sbss:0x801D3AD4; // type:object size:0x4 data:4byte +lbl_801D3AD8 = .sbss:0x801D3AD8; // type:object size:0x4 data:4byte +lbl_801D3ADC = .sbss:0x801D3ADC; // type:object size:0x4 data:4byte +lbl_801D3AE0 = .sbss:0x801D3AE0; // type:object size:0x4 data:4byte +lbl_801D3AE4 = .sbss:0x801D3AE4; // type:object size:0x4 data:4byte +lbl_801D3AE8 = .sbss:0x801D3AE8; // type:object size:0x4 +lbl_801D3AEC = .sbss:0x801D3AEC; // type:object size:0x4 data:4byte +lbl_801D3AF0 = .sbss:0x801D3AF0; // type:object size:0x4 data:float +lbl_801D3AF4 = .sbss:0x801D3AF4; // type:object size:0x4 data:float +lbl_801D3AF8 = .sbss:0x801D3AF8; // type:object size:0x4 data:4byte +lbl_801D3AFC = .sbss:0x801D3AFC; // type:object size:0x4 data:4byte +lbl_801D3B00 = .sbss:0x801D3B00; // type:object size:0x4 data:4byte +lbl_801D3B04 = .sbss:0x801D3B04; // type:object size:0x4 data:4byte +lbl_801D3B08 = .sbss:0x801D3B08; // type:object size:0x4 data:4byte +lbl_801D3B0C = .sbss:0x801D3B0C; // type:object size:0x4 data:4byte +lbl_801D3B10 = .sbss:0x801D3B10; // type:object size:0x8 data:4byte +lbl_801D3B18 = .sbss:0x801D3B18; // type:object size:0x4 data:4byte +lbl_801D3B1C = .sbss:0x801D3B1C; // type:object size:0x2 data:2byte +lbl_801D3B20 = .sbss:0x801D3B20; // type:object size:0x4 data:4byte +lbl_801D3B24 = .sbss:0x801D3B24; // type:object size:0x2 data:2byte +lbl_801D3B26 = .sbss:0x801D3B26; // type:object size:0x2 data:2byte +lbl_801D3B28 = .sbss:0x801D3B28; // type:object size:0x4 data:4byte +lbl_801D3B2C = .sbss:0x801D3B2C; // type:object size:0x4 data:4byte +lbl_801D3B30 = .sbss:0x801D3B30; // type:object size:0x4 data:4byte +lbl_801D3B34 = .sbss:0x801D3B34; // type:object size:0xC data:4byte +lbl_801D3B40 = .sbss:0x801D3B40; // type:object size:0x4 +lbl_801D3B44 = .sbss:0x801D3B44; // type:object size:0x4 +lbl_801D3B48 = .sbss:0x801D3B48; // type:object size:0x4 data:4byte +lbl_801D3B4C = .sbss:0x801D3B4C; // type:object size:0x4 data:4byte +lbl_801D3B50 = .sbss:0x801D3B50; // type:object size:0x4 +lbl_801D3B54 = .sbss:0x801D3B54; // type:object size:0x2 +lbl_801D3B56 = .sbss:0x801D3B56; // type:object size:0x2 +lbl_801D3B58 = .sbss:0x801D3B58; // type:object size:0x8 +lbl_801D3B60 = .sbss:0x801D3B60; // type:object size:0x8 +lbl_801D3B68 = .sbss:0x801D3B68; // type:object size:0x2 data:2byte +lbl_801D3B6A = .sbss:0x801D3B6A; // type:object size:0x1 data:byte +lbl_801D3B6C = .sbss:0x801D3B6C; // type:object size:0x4 +lbl_801D3B70 = .sbss:0x801D3B70; // type:object size:0x4 data:4byte +lbl_801D3B74 = .sbss:0x801D3B74; // type:object size:0x4 data:4byte +lbl_801D3B78 = .sbss:0x801D3B78; // type:object size:0x4 data:4byte +lbl_801D3B7C = .sbss:0x801D3B7C; // type:object size:0x4 data:4byte +lbl_801D3B80 = .sbss:0x801D3B80; // type:object size:0x4 data:4byte +lbl_801D3B84 = .sbss:0x801D3B84; // type:object size:0x4 data:4byte +lbl_801D3B88 = .sbss:0x801D3B88; // type:object size:0x4 data:4byte +lbl_801D3B8C = .sbss:0x801D3B8C; // type:object size:0x2 data:2byte +lbl_801D3B8E = .sbss:0x801D3B8E; // type:object size:0x2 data:2byte +lbl_801D3B90 = .sbss:0x801D3B90; // type:object size:0x4 data:4byte +lbl_801D3B94 = .sbss:0x801D3B94; // type:object size:0x4 data:4byte +lbl_801D3B98 = .sbss:0x801D3B98; // type:object size:0x4 data:4byte +lbl_801D3B9C = .sbss:0x801D3B9C; // type:object size:0x4 data:4byte +lbl_801D3BA0 = .sbss:0x801D3BA0; // type:object size:0x4 data:4byte +lbl_801D3BA4 = .sbss:0x801D3BA4; // type:object size:0x4 data:4byte +lbl_801D3BA8 = .sbss:0x801D3BA8; // type:object size:0x4 data:4byte +lbl_801D3BAC = .sbss:0x801D3BAC; // type:object size:0x4 data:4byte +lbl_801D3BB0 = .sbss:0x801D3BB0; // type:object size:0x4 data:4byte +lbl_801D3BB4 = .sbss:0x801D3BB4; // type:object size:0x4 data:4byte +lbl_801D3BB8 = .sbss:0x801D3BB8; // type:object size:0x4 data:4byte +lbl_801D3BBC = .sbss:0x801D3BBC; // type:object size:0x4 data:4byte +lbl_801D3BC0 = .sbss:0x801D3BC0; // type:object size:0x4 data:4byte +lbl_801D3BC4 = .sbss:0x801D3BC4; // type:object size:0x4 data:4byte +lbl_801D3BC8 = .sbss:0x801D3BC8; // type:object size:0x4 data:4byte +lbl_801D3BCC = .sbss:0x801D3BCC; // type:object size:0x4 data:4byte +lbl_801D3BD0 = .sbss:0x801D3BD0; // type:object size:0x4 data:4byte +lbl_801D3BD4 = .sbss:0x801D3BD4; // type:object size:0x4 data:4byte +lbl_801D3BD8 = .sbss:0x801D3BD8; // type:object size:0x8 data:4byte +lbl_801D3BE0 = .sbss:0x801D3BE0; // type:object size:0x4 data:4byte +lbl_801D3BE4 = .sbss:0x801D3BE4; // type:object size:0x4 data:4byte +lbl_801D3BE8 = .sbss:0x801D3BE8; // type:object size:0x4 data:4byte +lbl_801D3BEC = .sbss:0x801D3BEC; // type:object size:0x4 data:4byte +lbl_801D3BF0 = .sbss:0x801D3BF0; // type:object size:0x4 data:4byte +lbl_801D3BF4 = .sbss:0x801D3BF4; // type:object size:0x4 data:4byte +lbl_801D3BF8 = .sbss:0x801D3BF8; // type:object size:0x8 +lbl_801D3C00 = .sbss:0x801D3C00; // type:object size:0x1 data:byte +lbl_801D3C04 = .sbss:0x801D3C04; // type:object size:0x1 data:byte +lbl_801D3C06 = .sbss:0x801D3C06; // type:object size:0x8 +lbl_801D3C0E = .sbss:0x801D3C0E; // type:object size:0xA +lbl_801D3C18 = .sbss:0x801D3C18; // type:object size:0x4 data:4byte +lbl_801D3C1C = .sbss:0x801D3C1C; // type:object size:0x4 data:4byte +lbl_801D3C20 = .sbss:0x801D3C20; // type:object size:0x8 data:2byte +lbl_801D3C28 = .sbss:0x801D3C28; // type:object size:0x4 data:4byte +lbl_801D3C2C = .sbss:0x801D3C2C; // type:object size:0x4 data:4byte +lbl_801D3C30 = .sbss:0x801D3C30; // type:object size:0x8 data:float +lbl_801D3C38 = .sbss:0x801D3C38; // type:object size:0x4 data:4byte +lbl_801D3C3C = .sbss:0x801D3C3C; // type:object size:0x4 data:4byte +lbl_801D3C40 = .sbss:0x801D3C40; // type:object size:0x2 data:2byte +lbl_801D3C42 = .sbss:0x801D3C42; // type:object size:0x2 data:2byte +lbl_801D3C44 = .sbss:0x801D3C44; // type:object size:0x2 data:2byte +lbl_801D3C46 = .sbss:0x801D3C46; // type:object size:0x1 data:byte +lbl_801D3C47 = .sbss:0x801D3C47; // type:object size:0x1 data:byte +lbl_801D3C48 = .sbss:0x801D3C48; // type:object size:0x1 data:byte +lbl_801D3C49 = .sbss:0x801D3C49; // type:object size:0x1 data:byte +lbl_801D3C4A = .sbss:0x801D3C4A; // type:object size:0x1 data:byte +lbl_801D3C4B = .sbss:0x801D3C4B; // type:object size:0x1 data:byte +lbl_801D3C4C = .sbss:0x801D3C4C; // type:object size:0x1 data:byte +lbl_801D3C50 = .sbss:0x801D3C50; // type:object size:0x8 +lbl_801D3C58 = .sbss:0x801D3C58; // type:object size:0x4 data:4byte +lbl_801D3C5C = .sbss:0x801D3C5C; // type:object size:0x1 data:byte +lbl_801D3C60 = .sbss:0x801D3C60; // type:object size:0x4 data:4byte +lbl_801D3C64 = .sbss:0x801D3C64; // type:object size:0x2 data:2byte +lbl_801D3C66 = .sbss:0x801D3C66; // type:object size:0x1 data:byte +lbl_801D3C67 = .sbss:0x801D3C67; // type:object size:0x1 data:byte +lbl_801D3C68 = .sbss:0x801D3C68; // type:object size:0x1 data:byte +lbl_801D3C69 = .sbss:0x801D3C69; // type:object size:0x7 data:byte +lbl_801D3C70 = .sbss:0x801D3C70; // type:object size:0x2 data:2byte +lbl_801D3C74 = .sbss:0x801D3C74; // type:object size:0x4 data:4byte +lbl_801D3C78 = .sbss:0x801D3C78; // type:object size:0x4 data:4byte +lbl_801D3C7C = .sbss:0x801D3C7C; // type:object size:0x4 data:4byte +lbl_801D3C80 = .sbss:0x801D3C80; // type:object size:0x4 data:4byte +lbl_801D3C84 = .sbss:0x801D3C84; // type:object size:0x8 data:2byte +lbl_801D3C8C = .sbss:0x801D3C8C; // type:object size:0x4 data:4byte +lbl_801D3C90 = .sbss:0x801D3C90; // type:object size:0x4 data:4byte +lbl_801D3C94 = .sbss:0x801D3C94; // type:object size:0x4 data:4byte +lbl_801D3C98 = .sbss:0x801D3C98; // type:object size:0x4 data:4byte +lbl_801D3C9C = .sbss:0x801D3C9C; // type:object size:0x8 data:4byte +lbl_801D3CA4 = .sbss:0x801D3CA4; // type:object size:0x2 data:2byte +lbl_801D3CA8 = .sbss:0x801D3CA8; // type:object size:0x4 data:4byte +lbl_801D3CAC = .sbss:0x801D3CAC; // type:object size:0x4 data:4byte +lbl_801D3CB0 = .sbss:0x801D3CB0; // type:object size:0x4 data:4byte +lbl_801D3CB4 = .sbss:0x801D3CB4; // type:object size:0x4 data:4byte +lbl_801D3CB8 = .sbss:0x801D3CB8; // type:object size:0x4 data:4byte +lbl_801D3CBC = .sbss:0x801D3CBC; // type:object size:0x2 data:2byte +lbl_801D3CBE = .sbss:0x801D3CBE; // type:object size:0x1 data:byte +lbl_801D3CC0 = .sbss:0x801D3CC0; // type:object size:0x4 data:4byte +lbl_801D3CC4 = .sbss:0x801D3CC4; // type:object size:0x4 +lbl_801D3CC8 = .sbss:0x801D3CC8; // type:object size:0x4 data:4byte +lbl_801D3CCC = .sbss:0x801D3CCC; // type:object size:0x4 data:4byte +lbl_801D3CD0 = .sbss:0x801D3CD0; // type:object size:0x4 data:4byte +lbl_801D3CD4 = .sbss:0x801D3CD4; // type:object size:0x4 data:4byte +lbl_801D3CD8 = .sbss:0x801D3CD8; // type:object size:0x1 data:byte +lbl_801D3CD9 = .sbss:0x801D3CD9; // type:object size:0x1 data:byte +lbl_801D3CDA = .sbss:0x801D3CDA; // type:object size:0x1 data:byte +lbl_801D3CDB = .sbss:0x801D3CDB; // type:object size:0x1 data:byte +lbl_801D3CDC = .sbss:0x801D3CDC; // type:object size:0x1 data:byte +lbl_801D3CDE = .sbss:0x801D3CDE; // type:object size:0x2 data:2byte +lbl_801D3CE0 = .sbss:0x801D3CE0; // type:object size:0x8 data:4byte +lbl_801D3CE8 = .sbss:0x801D3CE8; // type:object size:0x4 data:4byte +lbl_801D3CEC = .sbss:0x801D3CEC; // type:object size:0x4 data:float +lbl_801D3CF0 = .sbss:0x801D3CF0; // type:object size:0x4 data:float +lbl_801D3CF4 = .sbss:0x801D3CF4; // type:object size:0x2 data:2byte +lbl_801D3CF6 = .sbss:0x801D3CF6; // type:object size:0x1 data:byte +lbl_801D3CF7 = .sbss:0x801D3CF7; // type:object size:0x1 data:byte +lbl_801D3CF8 = .sbss:0x801D3CF8; // type:object size:0x8 data:byte +lbl_801D3D00 = .sbss:0x801D3D00; // type:object size:0x4 data:4byte +lbl_801D3D04 = .sbss:0x801D3D04; // type:object size:0x2 data:2byte +lbl_801D3D08 = .sbss:0x801D3D08; // type:object size:0x4 data:float +lbl_801D3D0C = .sbss:0x801D3D0C; // type:object size:0x2 data:2byte +lbl_801D3D10 = .sbss:0x801D3D10; // type:object size:0x4 data:float +lbl_801D3D14 = .sbss:0x801D3D14; // type:object size:0x2 data:2byte +lbl_801D3D16 = .sbss:0x801D3D16; // type:object size:0x2 data:2byte +lbl_801D3D18 = .sbss:0x801D3D18; // type:object size:0x8 data:byte +lbl_801D3D20 = .sbss:0x801D3D20; // type:object size:0x4 data:4byte +lbl_801D3D24 = .sbss:0x801D3D24; // type:object size:0x4 data:4byte +lbl_801D3D28 = .sbss:0x801D3D28; // type:object size:0x1 data:byte +lbl_801D3D29 = .sbss:0x801D3D29; // type:object size:0x7 data:byte +lbl_801D3D30 = .sbss:0x801D3D30; // type:object size:0x4 data:4byte +lbl_801D3D34 = .sbss:0x801D3D34; // type:object size:0x4 data:4byte +lbl_801D3D38 = .sbss:0x801D3D38; // type:object size:0x4 data:4byte +lbl_801D3D3C = .sbss:0x801D3D3C; // type:object size:0x2 data:2byte +lbl_801D3D40 = .sbss:0x801D3D40; // type:object size:0x4 data:4byte +lbl_801D3D44 = .sbss:0x801D3D44; // type:object size:0x2 data:2byte +lbl_801D3D48 = .sbss:0x801D3D48; // type:object size:0x4 data:4byte +lbl_801D3D4C = .sbss:0x801D3D4C; // type:object size:0x1 data:byte +lbl_801D3D4D = .sbss:0x801D3D4D; // type:object size:0xB +lbl_801D3D58 = .sbss:0x801D3D58; // type:object size:0x4 data:4byte +lbl_801D3D5C = .sbss:0x801D3D5C; // type:object size:0x1 data:byte +lbl_801D3D5D = .sbss:0x801D3D5D; // type:object size:0x1 data:byte +lbl_801D3D5E = .sbss:0x801D3D5E; // type:object size:0x1 data:byte +lbl_801D3D5F = .sbss:0x801D3D5F; // type:object size:0x1 data:byte +lbl_801D3D60 = .sbss:0x801D3D60; // type:object size:0x1 data:byte +lbl_801D3D61 = .sbss:0x801D3D61; // type:object size:0x1 data:byte +lbl_801D3D62 = .sbss:0x801D3D62; // type:object size:0x6 data:byte +lbl_801D3D68 = .sbss:0x801D3D68; // type:object size:0x4 data:4byte +lbl_801D3D6C = .sbss:0x801D3D6C; // type:object size:0x4 data:4byte +lbl_801D3D70 = .sbss:0x801D3D70; // type:object size:0x4 data:4byte +lbl_801D3D74 = .sbss:0x801D3D74; // type:object size:0x4 data:4byte +lbl_801D3D78 = .sbss:0x801D3D78; // type:object size:0x4 data:4byte +lbl_801D3D7C = .sbss:0x801D3D7C; // type:object size:0x4 data:4byte +lbl_801D3D80 = .sbss:0x801D3D80; // type:object size:0x4 data:float +lbl_801D3D84 = .sbss:0x801D3D84; // type:object size:0x6 +lbl_801D3D8A = .sbss:0x801D3D8A; // type:object size:0x1 data:byte +lbl_801D3D8B = .sbss:0x801D3D8B; // type:object size:0x1 data:byte +lbl_801D3D8C = .sbss:0x801D3D8C; // type:object size:0x1 data:byte +lbl_801D3D8E = .sbss:0x801D3D8E; // type:object size:0x6 data:2byte +lbl_801D3D94 = .sbss:0x801D3D94; // type:object size:0x4 data:4byte +lbl_801D3D98 = .sbss:0x801D3D98; // type:object size:0x1 data:byte +lbl_801D3D99 = .sbss:0x801D3D99; // type:object size:0x1 data:byte +lbl_801D3D9A = .sbss:0x801D3D9A; // type:object size:0x1 data:byte +lbl_801D3D9B = .sbss:0x801D3D9B; // type:object size:0x1 data:byte +lbl_801D3D9C = .sbss:0x801D3D9C; // type:object size:0x1 data:byte +lbl_801D3DA0 = .sbss:0x801D3DA0; // type:object size:0x4 data:4byte +lbl_801D3DA4 = .sbss:0x801D3DA4; // type:object size:0x4 data:4byte +lbl_801D3DA8 = .sbss:0x801D3DA8; // type:object size:0x4 data:float +lbl_801D3DAC = .sbss:0x801D3DAC; // type:object size:0x4 data:float +lbl_801D3DB0 = .sbss:0x801D3DB0; // type:object size:0x8 data:float +lbl_801D3DB8 = .sbss:0x801D3DB8; // type:object size:0x4 data:4byte +lbl_801D3DBC = .sbss:0x801D3DBC; // type:object size:0x8 data:2byte +lbl_801D3DC4 = .sbss:0x801D3DC4; // type:object size:0x4 data:4byte +lbl_801D3DC8 = .sbss:0x801D3DC8; // type:object size:0x4 data:float +lbl_801D3DCC = .sbss:0x801D3DCC; // type:object size:0x8 +lbl_801D3DD4 = .sbss:0x801D3DD4; // type:object size:0x4 data:float +lbl_801D3DD8 = .sbss:0x801D3DD8; // type:object size:0x2 data:2byte +lbl_801D3DDC = .sbss:0x801D3DDC; // type:object size:0x8 data:4byte +lbl_801D3DE4 = .sbss:0x801D3DE4; // type:object size:0x8 data:4byte +lbl_801D3DEC = .sbss:0x801D3DEC; // type:object size:0x2 data:2byte +lbl_801D3DEE = .sbss:0x801D3DEE; // type:object size:0x1 data:byte +lbl_801D3DEF = .sbss:0x801D3DEF; // type:object size:0x1 data:byte +lbl_801D3DF0 = .sbss:0x801D3DF0; // type:object size:0x8 +lbl_801D3DF8 = .sbss:0x801D3DF8; // type:object size:0x4 data:4byte +lbl_801D3DFC = .sbss:0x801D3DFC; // type:object size:0x4 data:4byte +lbl_801D3E00 = .sbss:0x801D3E00; // type:object size:0x4 data:4byte +lbl_801D3E04 = .sbss:0x801D3E04; // type:object size:0x4 data:4byte +lbl_801D3E08 = .sbss:0x801D3E08; // type:object size:0x4 data:4byte +lbl_801D3E0C = .sbss:0x801D3E0C; // type:object size:0x4 data:4byte +lbl_801D3E10 = .sbss:0x801D3E10; // type:object size:0x8 +lbl_801D3E18 = .sbss:0x801D3E18; // type:object size:0x8 +lbl_801D3E20 = .sbss:0x801D3E20; // type:object size:0x4 data:4byte +lbl_801D3E24 = .sbss:0x801D3E24; // type:object size:0x2 data:2byte +lbl_801D3E26 = .sbss:0x801D3E26; // type:object size:0x8 data:2byte +lbl_801D3E2E = .sbss:0x801D3E2E; // type:object size:0x2 data:2byte +lbl_801D3E30 = .sbss:0x801D3E30; // type:object size:0x1 data:byte +lbl_801D3E31 = .sbss:0x801D3E31; // type:object size:0x7 data:byte +lbl_801D3E38 = .sbss:0x801D3E38; // type:object size:0x4 data:4byte +lbl_801D3E3C = .sbss:0x801D3E3C; // type:object size:0x4 data:4byte +lbl_801D3E40 = .sbss:0x801D3E40; // type:object size:0x4 data:4byte +lbl_801D3E44 = .sbss:0x801D3E44; // type:object size:0x4 data:float +lbl_801D3E48 = .sbss:0x801D3E48; // type:object size:0x4 data:float +lbl_801D3E4C = .sbss:0x801D3E4C; // type:object size:0x8 +lbl_801D3E54 = .sbss:0x801D3E54; // type:object size:0x1 data:byte +lbl_801D3E56 = .sbss:0x801D3E56; // type:object size:0x1 data:byte +lbl_801D3E58 = .sbss:0x801D3E58; // type:object size:0x2 data:2byte +lbl_801D3E5A = .sbss:0x801D3E5A; // type:object size:0x1 data:byte +lbl_801D3E5B = .sbss:0x801D3E5B; // type:object size:0x1 data:byte +lbl_801D3E5C = .sbss:0x801D3E5C; // type:object size:0x1 data:byte +lbl_801D3E60 = .sbss:0x801D3E60; // type:object size:0x4 data:4byte +lbl_801D3E64 = .sbss:0x801D3E64; // type:object size:0x4 data:4byte +lbl_801D3E68 = .sbss:0x801D3E68; // type:object size:0x1 data:byte +lbl_801D3E69 = .sbss:0x801D3E69; // type:object size:0x1 data:byte +lbl_801D3E6A = .sbss:0x801D3E6A; // type:object size:0x1 data:byte +lbl_801D3E6B = .sbss:0x801D3E6B; // type:object size:0x1 data:byte +lbl_801D3E6C = .sbss:0x801D3E6C; // type:object size:0x1 data:byte +lbl_801D3E6D = .sbss:0x801D3E6D; // type:object size:0x1 data:byte +lbl_801D3E70 = .sbss:0x801D3E70; // type:object size:0x4 data:4byte +lbl_801D3E74 = .sbss:0x801D3E74; // type:object size:0x4 data:4byte +lbl_801D3E78 = .sbss:0x801D3E78; // type:object size:0x4 data:4byte +lbl_801D3E7C = .sbss:0x801D3E7C; // type:object size:0x4 data:4byte +lbl_801D3E80 = .sbss:0x801D3E80; // type:object size:0x4 data:4byte +lbl_801D3E84 = .sbss:0x801D3E84; // type:object size:0x4 data:4byte +lbl_801D3E88 = .sbss:0x801D3E88; // type:object size:0x4 data:4byte +lbl_801D3E8C = .sbss:0x801D3E8C; // type:object size:0x4 data:4byte +lbl_801D3E90 = .sbss:0x801D3E90; // type:object size:0x3 +lbl_801D3E93 = .sbss:0x801D3E93; // type:object size:0x3 +lbl_801D3E96 = .sbss:0x801D3E96; // type:object size:0x1 data:byte +lbl_801D3E97 = .sbss:0x801D3E97; // type:object size:0x1 data:byte +lbl_801D3E98 = .sbss:0x801D3E98; // type:object size:0x1 data:byte +lbl_801D3E9C = .sbss:0x801D3E9C; // type:object size:0x4 data:4byte +lbl_801D3EA0 = .sbss:0x801D3EA0; // type:object size:0x1 data:byte +lbl_801D3EA1 = .sbss:0x801D3EA1; // type:object size:0x1 data:byte +lbl_801D3EA2 = .sbss:0x801D3EA2; // type:object size:0x6 data:byte +lbl_801D3EA8 = .sbss:0x801D3EA8; // type:object size:0x4 data:4byte +lbl_801D3EAC = .sbss:0x801D3EAC; // type:object size:0x4 data:4byte +lbl_801D3EB0 = .sbss:0x801D3EB0; // type:object size:0x1 data:byte +lbl_801D3EB1 = .sbss:0x801D3EB1; // type:object size:0x1 data:byte +lbl_801D3EB2 = .sbss:0x801D3EB2; // type:object size:0x1 data:byte +lbl_801D3EB4 = .sbss:0x801D3EB4; // type:object size:0x4 +lbl_801D3EB8 = .sbss:0x801D3EB8; // type:object size:0x6 +lbl_801D3EBE = .sbss:0x801D3EBE; // type:object size:0x6 +lbl_801D3EC4 = .sbss:0x801D3EC4; // type:object size:0x1 data:byte +lbl_801D3EC5 = .sbss:0x801D3EC5; // type:object size:0x1 data:byte +lbl_801D3EC6 = .sbss:0x801D3EC6; // type:object size:0x1 data:byte +lbl_801D3EC7 = .sbss:0x801D3EC7; // type:object size:0x1 data:byte +lbl_801D3EC8 = .sbss:0x801D3EC8; // type:object size:0x2 data:2byte +lbl_801D3ECC = .sbss:0x801D3ECC; // type:object size:0x4 data:float +lbl_801D3ED0 = .sbss:0x801D3ED0; // type:object size:0x4 data:4byte +lbl_801D3ED4 = .sbss:0x801D3ED4; // type:object size:0x1 data:byte +lbl_801D3ED8 = .sbss:0x801D3ED8; // type:object size:0x4 data:4byte +lbl_801D3EDC = .sbss:0x801D3EDC; // type:object size:0x8 +lbl_801D3EE4 = .sbss:0x801D3EE4; // type:object size:0x4 data:4byte +lbl_801D3EE8 = .sbss:0x801D3EE8; // type:object size:0x1 data:byte +lbl_801D3EE9 = .sbss:0x801D3EE9; // type:object size:0x1 data:byte +lbl_801D3EEA = .sbss:0x801D3EEA; // type:object size:0x6 data:byte +lbl_801D3EF0 = .sbss:0x801D3EF0; // type:object size:0x4 data:4byte +lbl_801D3EF4 = .sbss:0x801D3EF4; // type:object size:0x4 +lbl_801D3EF8 = .sbss:0x801D3EF8; // type:object size:0x4 +lbl_801D3EFC = .sbss:0x801D3EFC; // type:object size:0x2 data:2byte +lbl_801D3EFE = .sbss:0x801D3EFE; // type:object size:0x2 data:2byte +lbl_801D3F00 = .sbss:0x801D3F00; // type:object size:0x4 data:4byte +lbl_801D3F04 = .sbss:0x801D3F04; // type:object size:0x4 data:4byte +lbl_801D3F08 = .sbss:0x801D3F08; // type:object size:0x4 data:4byte +lbl_801D3F0C = .sbss:0x801D3F0C; // type:object size:0x4 data:4byte +lbl_801D3F10 = .sbss:0x801D3F10; // type:object size:0x4 data:4byte +lbl_801D3F14 = .sbss:0x801D3F14; // type:object size:0x4 data:4byte +lbl_801D3F18 = .sbss:0x801D3F18; // type:object size:0x2 data:2byte +lbl_801D3F1A = .sbss:0x801D3F1A; // type:object size:0x2 data:2byte +lbl_801D3F1C = .sbss:0x801D3F1C; // type:object size:0x1 data:byte +lbl_801D3F1D = .sbss:0x801D3F1D; // type:object size:0x1 data:byte +lbl_801D3F1E = .sbss:0x801D3F1E; // type:object size:0x1 data:byte +lbl_801D3F20 = .sbss:0x801D3F20; // type:object size:0x4 data:4byte +lbl_801D3F24 = .sbss:0x801D3F24; // type:object size:0x4 data:4byte +lbl_801D3F28 = .sbss:0x801D3F28; // type:object size:0x4 data:4byte +lbl_801D3F2C = .sbss:0x801D3F2C; // type:object size:0x8 +lbl_801D3F34 = .sbss:0x801D3F34; // type:object size:0x1 data:byte +lbl_801D3F36 = .sbss:0x801D3F36; // type:object size:0x2 data:2byte +lbl_801D3F38 = .sbss:0x801D3F38; // type:object size:0x1 data:byte +lbl_801D3F39 = .sbss:0x801D3F39; // type:object size:0x1 data:byte +lbl_801D3F3A = .sbss:0x801D3F3A; // type:object size:0x6 data:byte +lbl_801D3F40 = .sbss:0x801D3F40; // type:object size:0x2 data:2byte +lbl_801D3F42 = .sbss:0x801D3F42; // type:object size:0x6 data:2byte +lbl_801D3F48 = .sbss:0x801D3F48; // type:object size:0x4 data:4byte +lbl_801D3F4C = .sbss:0x801D3F4C; // type:object size:0x4 data:4byte +lbl_801D3F50 = .sbss:0x801D3F50; // type:object size:0x4 data:4byte +lbl_801D3F54 = .sbss:0x801D3F54; // type:object size:0x4 data:4byte +lbl_801D3F58 = .sbss:0x801D3F58; // type:object size:0x4 data:4byte +lbl_801D3F5C = .sbss:0x801D3F5C; // type:object size:0x1 data:byte +lbl_801D3F5E = .sbss:0x801D3F5E; // type:object size:0x2 data:2byte +lbl_801D3F60 = .sbss:0x801D3F60; // type:object size:0x1 data:byte +lbl_801D3F61 = .sbss:0x801D3F61; // type:object size:0x1 data:byte +lbl_801D3F62 = .sbss:0x801D3F62; // type:object size:0x1 data:byte +lbl_801D3F64 = .sbss:0x801D3F64; // type:object size:0x4 data:4byte +lbl_801D3F68 = .sbss:0x801D3F68; // type:object size:0x2 data:2byte +lbl_801D3F6A = .sbss:0x801D3F6A; // type:object size:0x1 data:byte +lbl_801D3F6B = .sbss:0x801D3F6B; // type:object size:0x1 data:byte +lbl_801D3F6C = .sbss:0x801D3F6C; // type:object size:0x4 data:4byte +BootInfo = .sbss:0x801D3F70; // type:object size:0x4 scope:local data:4byte +BI2DebugFlag = .sbss:0x801D3F74; // type:object size:0x4 scope:local data:4byte +BI2DebugFlagHolder = .sbss:0x801D3F78; // type:object size:0x4 scope:local data:4byte +__OSIsGcam = .sbss:0x801D3F7C; // type:object size:0x4 scope:global data:4byte +AreWeInitialized = .sbss:0x801D3F80; // type:object size:0x4 scope:local data:4byte +OSExceptionTable = .sbss:0x801D3F84; // type:object size:0x4 scope:local data:4byte +__OSSavedRegionEnd = .sbss:0x801D3F88; // type:object size:0x4 scope:global data:4byte +__OSSavedRegionStart = .sbss:0x801D3F8C; // type:object size:0x4 scope:global data:4byte +__OSInIPL = .sbss:0x801D3F90; // type:object size:0x4 scope:global data:4byte +__OSStartTime = .sbss:0x801D3F98; // type:object size:0x8 scope:global data:4byte +AlarmQueue = .sbss:0x801D3FA0; // type:object size:0x8 scope:local data:4byte +lbl_801D3FA8 = .sbss:0x801D3FA8; // type:object size:0x4 data:4byte +lbl_801D3FAC = .sbss:0x801D3FAC; // type:object size:0x4 data:4byte +lbl_801D3FB0 = .sbss:0x801D3FB0; // type:object size:0x4 data:4byte +lbl_801D3FB4 = .sbss:0x801D3FB4; // type:object size:0x4 data:4byte +__OSArenaHi = .sbss:0x801D3FB8; // type:object size:0x4 scope:local data:4byte +InterruptHandlerTable = .sbss:0x801D3FC0; // type:object size:0x4 scope:local data:4byte +__OSLastInterruptSrr0 = .sbss:0x801D3FC4; // type:object size:0x4 scope:global data:4byte +__OSLastInterrupt = .sbss:0x801D3FC8; // type:object size:0x2 scope:global data:2byte +__OSLastInterruptTime = .sbss:0x801D3FD0; // type:object size:0x8 scope:global data:4byte +lbl_801D3FD8 = .sbss:0x801D3FD8; // type:object size:0x4 data:4byte +lbl_801D3FDC = .sbss:0x801D3FDC; // type:object size:0x4 data:4byte +lbl_801D3FE0 = .sbss:0x801D3FE0; // type:object size:0x8 data:4byte +ResetFunctionQueue = .sbss:0x801D3FE8; // type:object size:0x8 scope:local data:4byte +lbl_801D3FF0 = .sbss:0x801D3FF0; // type:object size:0x4 data:4byte +lbl_801D3FF4 = .sbss:0x801D3FF4; // type:object size:0x4 data:4byte +lbl_801D3FF8 = .sbss:0x801D3FF8; // type:object size:0x8 data:4byte +lbl_801D4000 = .sbss:0x801D4000; // type:object size:0x4 data:4byte +lbl_801D4004 = .sbss:0x801D4004; // type:object size:0x4 data:4byte +lbl_801D4008 = .sbss:0x801D4008; // type:object size:0x4 data:4byte +lbl_801D400C = .sbss:0x801D400C; // type:object size:0x4 data:4byte +RunQueueBits = .sbss:0x801D4010; // type:object size:0x4 scope:local data:4byte +RunQueueHint = .sbss:0x801D4014; // type:object size:0x4 scope:local data:4byte +Reschedule = .sbss:0x801D4018; // type:object size:0x4 scope:local data:4byte +__DBInterface = .sbss:0x801D4020; // type:object size:0x4 scope:global data:4byte +DBVerbose = .sbss:0x801D4024; // type:object size:0x4 scope:global data:4byte +StopAtNextInt = .sbss:0x801D4028; // type:object size:0x4 scope:local data:4byte +lbl_801D402C = .sbss:0x801D402C; // type:object size:0x4 data:4byte +Callback = .sbss:0x801D4030; // type:object size:0x4 scope:local data:4byte +lbl_801D4034 = .sbss:0x801D4034; // type:object size:0x4 data:4byte +LastResetEnd = .sbss:0x801D4038; // type:object size:0x8 scope:local data:4byte +ResetOccurred = .sbss:0x801D4040; // type:object size:0x4 scope:local data:4byte +WaitingCoverClose = .sbss:0x801D4044; // type:object size:0x4 scope:local data:4byte +lbl_801D4048 = .sbss:0x801D4048; // type:object size:0x4 data:4byte +WorkAroundType = .sbss:0x801D404C; // type:object size:0x4 scope:local data:4byte +WorkAroundSeekLocation = .sbss:0x801D4050; // type:object size:0x4 scope:local data:4byte +lbl_801D4058 = .sbss:0x801D4058; // type:object size:0x4 data:4byte +lbl_801D405C = .sbss:0x801D405C; // type:object size:0x4 data:4byte +lbl_801D4060 = .sbss:0x801D4060; // type:object size:0x4 data:4byte +lbl_801D4064 = .sbss:0x801D4064; // type:object size:0x4 data:4byte +lbl_801D4068 = .sbss:0x801D4068; // type:object size:0x4 data:4byte +NextCommandNumber = .sbss:0x801D406C; // type:object size:0x4 scope:local data:4byte +BootInfo = .sbss:0x801D4070; // type:object size:0x4 scope:local data:4byte +FstStart = .sbss:0x801D4074; // type:object size:0x4 scope:local data:4byte +FstStringStart = .sbss:0x801D4078; // type:object size:0x4 scope:local data:4byte +MaxEntryNum = .sbss:0x801D407C; // type:object size:0x4 scope:local data:4byte +lbl_801D4080 = .sbss:0x801D4080; // type:object size:0x4 data:4byte +__DVDLongFileNameFlag = .sbss:0x801D4084; // type:object size:0x4 scope:global data:4byte +__DVDThreadQueue = .sbss:0x801D4088; // type:object size:0x8 scope:global +executing = .sbss:0x801D4090; // type:object size:0x4 scope:local data:4byte +currID = .sbss:0x801D4094; // type:object size:0x4 scope:local data:4byte +bootInfo = .sbss:0x801D4098; // type:object size:0x4 scope:local data:4byte +PauseFlag = .sbss:0x801D409C; // type:object size:0x4 scope:local data:4byte +PausingFlag = .sbss:0x801D40A0; // type:object size:0x4 scope:local data:4byte +lbl_801D40A4 = .sbss:0x801D40A4; // type:object size:0x4 data:4byte +FatalErrorFlag = .sbss:0x801D40A8; // type:object size:0x4 scope:local data:4byte +CurrCommand = .sbss:0x801D40AC; // type:object size:0x4 scope:local data:4byte +lbl_801D40B0 = .sbss:0x801D40B0; // type:object size:0x4 data:4byte +lbl_801D40B4 = .sbss:0x801D40B4; // type:object size:0x4 data:4byte +ResumeFromHere = .sbss:0x801D40B8; // type:object size:0x4 scope:local data:4byte +CancelLastError = .sbss:0x801D40BC; // type:object size:0x4 scope:local data:4byte +lbl_801D40C0 = .sbss:0x801D40C0; // type:object size:0x4 data:4byte +lbl_801D40C4 = .sbss:0x801D40C4; // type:object size:0x4 data:4byte +ResetRequired = .sbss:0x801D40C8; // type:object size:0x4 scope:local data:4byte +FirstTimeInBootrom = .sbss:0x801D40CC; // type:object size:0x4 scope:local data:4byte +DVDInitialized = .sbss:0x801D40D0; // type:object size:0x4 scope:local data:4byte +lbl_801D40D4 = .sbss:0x801D40D4; // type:object size:0x4 data:4byte +lbl_801D40D8 = .sbss:0x801D40D8; // type:object size:0x4 data:4byte +bb2 = .sbss:0x801D40DC; // type:object size:0x4 scope:local data:4byte +idTmp = .sbss:0x801D40E0; // type:object size:0x4 scope:local data:4byte +lbl_801D40E8 = .sbss:0x801D40E8; // type:object size:0x4 data:4byte +lbl_801D40EC = .sbss:0x801D40EC; // type:object size:0x4 data:4byte +lbl_801D40F0 = .sbss:0x801D40F0; // type:object size:0x8 +lbl_801D40F8 = .sbss:0x801D40F8; // type:object size:0x4 data:4byte +lbl_801D40FC = .sbss:0x801D40FC; // type:object size:0x4 data:4byte +lbl_801D4100 = .sbss:0x801D4100; // type:object size:0x4 data:4byte +lbl_801D4104 = .sbss:0x801D4104; // type:object size:0x2 data:2byte +lbl_801D4106 = .sbss:0x801D4106; // type:object size:0x2 data:2byte +lbl_801D4108 = .sbss:0x801D4108; // type:object size:0x8 data:4byte +lbl_801D4110 = .sbss:0x801D4110; // type:object size:0x4 data:4byte +lbl_801D4114 = .sbss:0x801D4114; // type:object size:0x4 data:4byte +lbl_801D4118 = .sbss:0x801D4118; // type:object size:0x8 data:4byte +lbl_801D4120 = .sbss:0x801D4120; // type:object size:0x4 data:4byte +lbl_801D4124 = .sbss:0x801D4124; // type:object size:0x4 data:4byte +lbl_801D4128 = .sbss:0x801D4128; // type:object size:0x4 data:4byte +CurrTvMode = .sbss:0x801D412C; // type:object size:0x4 scope:local data:4byte +lbl_801D4130 = .sbss:0x801D4130; // type:object size:0x4 data:4byte +lbl_801D4134 = .sbss:0x801D4134; // type:object size:0x4 data:4byte +lbl_801D4138 = .sbss:0x801D4138; // type:object size:0x8 data:4byte +lbl_801D4140 = .sbss:0x801D4140; // type:object size:0x8 data:4byte +lbl_801D4148 = .sbss:0x801D4148; // type:object size:0x4 data:4byte +lbl_801D414C = .sbss:0x801D414C; // type:object size:0x4 data:4byte +lbl_801D4150 = .sbss:0x801D4150; // type:object size:0x4 data:4byte +lbl_801D4154 = .sbss:0x801D4154; // type:object size:0x4 data:4byte +lbl_801D4158 = .sbss:0x801D4158; // type:object size:0x4 data:4byte +lbl_801D415C = .sbss:0x801D415C; // type:object size:0x4 data:4byte +lbl_801D4160 = .sbss:0x801D4160; // type:object size:0x4 data:4byte +lbl_801D4164 = .sbss:0x801D4164; // type:object size:0x4 data:4byte +lbl_801D4168 = .sbss:0x801D4168; // type:object size:0x4 data:4byte +lbl_801D416C = .sbss:0x801D416C; // type:object size:0x4 data:4byte +lbl_801D4170 = .sbss:0x801D4170; // type:object size:0x4 data:4byte +lbl_801D4174 = .sbss:0x801D4174; // type:object size:0x4 data:4byte +lbl_801D4178 = .sbss:0x801D4178; // type:object size:0x4 data:4byte +lbl_801D417C = .sbss:0x801D417C; // type:object size:0x4 data:4byte +lbl_801D4180 = .sbss:0x801D4180; // type:object size:0x4 data:4byte +lbl_801D4184 = .sbss:0x801D4184; // type:object size:0x4 data:4byte +lbl_801D4188 = .sbss:0x801D4188; // type:object size:0x4 data:4byte +lbl_801D418C = .sbss:0x801D418C; // type:object size:0x4 data:4byte +lbl_801D4190 = .sbss:0x801D4190; // type:object size:0x4 data:4byte +lbl_801D4194 = .sbss:0x801D4194; // type:object size:0x4 data:4byte +lbl_801D4198 = .sbss:0x801D4198; // type:object size:0x4 data:4byte +lbl_801D419C = .sbss:0x801D419C; // type:object size:0x4 data:4byte +lbl_801D41A0 = .sbss:0x801D41A0; // type:object size:0x4 data:4byte +lbl_801D41A4 = .sbss:0x801D41A4; // type:object size:0x4 data:4byte +lbl_801D41A8 = .sbss:0x801D41A8; // type:object size:0x4 data:4byte +lbl_801D41AC = .sbss:0x801D41AC; // type:object size:0x4 data:4byte +lbl_801D41B0 = .sbss:0x801D41B0; // type:object size:0x4 data:4byte +lbl_801D41B4 = .sbss:0x801D41B4; // type:object size:0x4 data:4byte +lbl_801D41B8 = .sbss:0x801D41B8; // type:object size:0x4 data:4byte +lbl_801D41BC = .sbss:0x801D41BC; // type:object size:0x4 data:4byte +lbl_801D41C0 = .sbss:0x801D41C0; // type:object size:0x4 data:4byte +lbl_801D41C4 = .sbss:0x801D41C4; // type:object size:0x4 data:4byte +lbl_801D41C8 = .sbss:0x801D41C8; // type:object size:0x4 data:4byte +__PADSpec = .sbss:0x801D41CC; // type:object size:0x4 scope:global data:4byte +lbl_801D41D0 = .sbss:0x801D41D0; // type:object size:0x4 data:4byte +lbl_801D41D4 = .sbss:0x801D41D4; // type:object size:0x4 data:4byte +lbl_801D41D8 = .sbss:0x801D41D8; // type:object size:0x4 data:4byte +lbl_801D41DC = .sbss:0x801D41DC; // type:object size:0x4 data:4byte +lbl_801D41E0 = .sbss:0x801D41E0; // type:object size:0x8 data:4byte +lbl_801D41E8 = .sbss:0x801D41E8; // type:object size:0x4 data:4byte +lbl_801D41EC = .sbss:0x801D41EC; // type:object size:0x4 data:4byte +lbl_801D41F0 = .sbss:0x801D41F0; // type:object size:0x4 data:4byte +lbl_801D41F4 = .sbss:0x801D41F4; // type:object size:0x4 data:4byte +lbl_801D41F8 = .sbss:0x801D41F8; // type:object size:0x4 data:4byte +lbl_801D41FC = .sbss:0x801D41FC; // type:object size:0x4 data:4byte +lbl_801D4200 = .sbss:0x801D4200; // type:object size:0x4 data:4byte +lbl_801D4204 = .sbss:0x801D4204; // type:object size:0x4 data:4byte +lbl_801D4208 = .sbss:0x801D4208; // type:object size:0x4 data:4byte +lbl_801D420C = .sbss:0x801D420C; // type:object size:0x4 data:4byte +lbl_801D4210 = .sbss:0x801D4210; // type:object size:0x4 data:4byte +lbl_801D4214 = .sbss:0x801D4214; // type:object size:0x4 data:4byte +lbl_801D4218 = .sbss:0x801D4218; // type:object size:0x4 data:4byte +lbl_801D421C = .sbss:0x801D421C; // type:object size:0x4 data:4byte +lbl_801D4220 = .sbss:0x801D4220; // type:object size:0x4 data:4byte +lbl_801D4224 = .sbss:0x801D4224; // type:object size:0x4 data:4byte +lbl_801D4228 = .sbss:0x801D4228; // type:object size:0x4 data:4byte +lbl_801D422C = .sbss:0x801D422C; // type:object size:0x4 data:4byte +lbl_801D4230 = .sbss:0x801D4230; // type:object size:0x4 data:4byte +lbl_801D4234 = .sbss:0x801D4234; // type:object size:0x4 data:4byte +lbl_801D4238 = .sbss:0x801D4238; // type:object size:0x4 data:4byte +lbl_801D423C = .sbss:0x801D423C; // type:object size:0x4 data:4byte +lbl_801D4240 = .sbss:0x801D4240; // type:object size:0x4 data:4byte +lbl_801D4244 = .sbss:0x801D4244; // type:object size:0x4 data:4byte +lbl_801D4248 = .sbss:0x801D4248; // type:object size:0x4 data:4byte +lbl_801D424C = .sbss:0x801D424C; // type:object size:0x4 data:4byte +lbl_801D4250 = .sbss:0x801D4250; // type:object size:0x4 data:4byte +lbl_801D4254 = .sbss:0x801D4254; // type:object size:0x4 data:4byte +lbl_801D4258 = .sbss:0x801D4258; // type:object size:0x8 data:4byte +lbl_801D4260 = .sbss:0x801D4260; // type:object size:0x4 data:4byte +lbl_801D4264 = .sbss:0x801D4264; // type:object size:0x4 data:4byte +lbl_801D4268 = .sbss:0x801D4268; // type:object size:0x4 data:4byte +lbl_801D426C = .sbss:0x801D426C; // type:object size:0x4 data:4byte +lbl_801D4270 = .sbss:0x801D4270; // type:object size:0x4 data:4byte +lbl_801D4274 = .sbss:0x801D4274; // type:object size:0x4 data:4byte +__piReg = .sbss:0x801D4278; // type:object size:0x4 scope:global data:4byte +__cpReg = .sbss:0x801D427C; // type:object size:0x4 scope:global data:4byte +__peReg = .sbss:0x801D4280; // type:object size:0x4 scope:global data:4byte +__memReg = .sbss:0x801D4284; // type:object size:0x4 scope:global data:4byte +lbl_801D4288 = .sbss:0x801D4288; // type:object size:0x4 data:4byte +lbl_801D428C = .sbss:0x801D428C; // type:object size:0x4 data:4byte +lbl_801D4290 = .sbss:0x801D4290; // type:object size:0x4 data:4byte +lbl_801D4294 = .sbss:0x801D4294; // type:object size:0x1 data:byte +lbl_801D4298 = .sbss:0x801D4298; // type:object size:0x4 data:4byte +lbl_801D429C = .sbss:0x801D429C; // type:object size:0x4 data:4byte +lbl_801D42A0 = .sbss:0x801D42A0; // type:object size:0x8 data:4byte +lbl_801D42A8 = .sbss:0x801D42A8; // type:object size:0x4 data:4byte +lbl_801D42AC = .sbss:0x801D42AC; // type:object size:0x4 data:4byte +lbl_801D42B0 = .sbss:0x801D42B0; // type:object size:0x1 data:byte +lbl_801D42B4 = .sbss:0x801D42B4; // type:object size:0xC +lbl_801D42C0 = .sbss:0x801D42C0; // type:object size:0x8 data:4byte +lbl_801D42C8 = .sbss:0x801D42C8; // type:object size:0x4 data:4byte +lbl_801D42CC = .sbss:0x801D42CC; // type:object size:0x4 data:4byte +lbl_801D42D0 = .sbss:0x801D42D0; // type:object size:0x4 data:4byte +lbl_801D42D4 = .sbss:0x801D42D4; // type:object size:0x4 data:4byte +lbl_801D42D8 = .sbss:0x801D42D8; // type:object size:0x4 +cmdTypeAndStatus$371 = .sbss:0x801D42DC; // type:object size:0x4 scope:local +lbl_801D42E0 = .sbss:0x801D42E0; // type:object size:0x8 data:4byte +SamplingRate = .sbss:0x801D42E8; // type:object size:0x4 scope:local data:4byte +lbl_801D4300 = .sbss:0x801D4300; // type:object size:0x20 data:4byte +lbl_801D4320 = .sbss:0x801D4320; // type:object size:0x20 data:4byte +lbl_801D4340 = .sbss:0x801D4340; // type:object size:0x20 data:4byte +lbl_801D4360 = .sbss:0x801D4360; // type:object size:0x20 data:4byte +lbl_801D4380 = .sbss:0x801D4380; // type:object size:0x20 data:4byte +lbl_801D43A0 = .sbss:0x801D43A0; // type:object size:0x4 data:4byte +lbl_801D43A4 = .sbss:0x801D43A4; // type:object size:0x4 data:4byte +lbl_801D43A8 = .sbss:0x801D43A8; // type:object size:0x4 data:4byte +lbl_801D43AC = .sbss:0x801D43AC; // type:object size:0x14 data:4byte +lbl_801D43C0 = .sbss:0x801D43C0; // type:object size:0x20 data:4byte +lbl_801D43E0 = .sbss:0x801D43E0; // type:object size:0x20 data:4byte +lbl_801D4400 = .sbss:0x801D4400; // type:object size:0x4 data:4byte +lbl_801D4404 = .sbss:0x801D4404; // type:object size:0x4 data:4byte +lbl_801D4408 = .sbss:0x801D4408; // type:object size:0x4 data:4byte +lbl_801D440C = .sbss:0x801D440C; // type:object size:0x4 data:4byte +lbl_801D4410 = .sbss:0x801D4410; // type:object size:0x4 data:4byte +lbl_801D4414 = .sbss:0x801D4414; // type:object size:0x4 data:4byte +__global_destructor_chain = .sbss:0x801D4418; // type:object size:0x4 scope:global data:4byte +__aborting = .sbss:0x801D4420; // type:object size:0x4 scope:global data:4byte +__atexit_curr_func = .sbss:0x801D4424; // type:object size:0x4 scope:local data:4byte +__stdio_exit = .sbss:0x801D4428; // type:object size:0x4 scope:global data:4byte +__console_exit = .sbss:0x801D442C; // type:object size:0x4 scope:global data:4byte +lbl_801D4430 = .sbss:0x801D4430; // type:object size:0x8 data:byte +lbl_801D4438 = .sbss:0x801D4438; // type:object size:0x8 data:4byte +lbl_801D4440 = .sbss:0x801D4440; // type:object size:0x8 data:4byte +lbl_801D4448 = .sbss:0x801D4448; // type:object size:0x4 data:4byte +lbl_801D444C = .sbss:0x801D444C; // type:object size:0x1 data:byte +lbl_801D4450 = .sbss:0x801D4450; // type:object size:0x4 data:4byte +lbl_801D4454 = .sbss:0x801D4454; // type:object size:0x4 data:4byte +lbl_801D4458 = .sbss:0x801D4458; // type:object size:0x4 data:4byte +lbl_801D445C = .sbss:0x801D445C; // type:object size:0x4 data:4byte +lbl_801D4460 = .sbss:0x801D4460; // type:object size:0x4 data:4byte +lbl_801D4464 = .sbss:0x801D4464; // type:object size:0x4 data:4byte +lbl_801D4468 = .sbss:0x801D4468; // type:object size:0x1 data:byte +lbl_801D4469 = .sbss:0x801D4469; // type:object size:0x1 data:byte +lbl_801D446C = .sbss:0x801D446C; // type:object size:0x8 data:byte +lbl_801D4474 = .sbss:0x801D4474; // type:object size:0x8 data:byte +lbl_801D447C = .sbss:0x801D447C; // type:object size:0x8 data:byte +lbl_801D4484 = .sbss:0x801D4484; // type:object size:0x8 data:byte +lbl_801D448C = .sbss:0x801D448C; // type:object size:0x4 data:4byte +lbl_801D4490 = .sbss:0x801D4490; // type:object size:0x4 data:4byte +lbl_801D4494 = .sbss:0x801D4494; // type:object size:0x4 data:4byte +lbl_801D4498 = .sbss:0x801D4498; // type:object size:0x4 data:4byte +lbl_801D449C = .sbss:0x801D449C; // type:object size:0x4 data:4byte +lbl_801D44A0 = .sbss:0x801D44A0; // type:object size:0x8 data:byte +lbl_801D44A8 = .sbss:0x801D44A8; // type:object size:0x4 data:4byte +lbl_801D44AC = .sbss:0x801D44AC; // type:object size:0x4 data:4byte +lbl_801D44B0 = .sbss:0x801D44B0; // type:object size:0x4 data:4byte +lbl_801D44B4 = .sbss:0x801D44B4; // type:object size:0x1 data:byte +lbl_801D44B5 = .sbss:0x801D44B5; // type:object size:0x1 data:byte +lbl_801D44B8 = .sbss:0x801D44B8; // type:object size:0x4 data:4byte +lbl_801D44BC = .sbss:0x801D44BC; // type:object size:0x4 data:4byte +lbl_801D44C0 = .sbss:0x801D44C0; // type:object size:0x8 +lbl_801D44C8 = .sbss:0x801D44C8; // type:object size:0x4 data:4byte +lbl_801D44CC = .sbss:0x801D44CC; // type:object size:0x8 +lbl_801D44D4 = .sbss:0x801D44D4; // type:object size:0x4 data:4byte +lbl_801D44D8 = .sbss:0x801D44D8; // type:object size:0x4 data:4byte +lbl_801D44DC = .sbss:0x801D44DC; // type:object size:0x4 data:4byte +lbl_801D44E0 = .sbss:0x801D44E0; // type:object size:0x8 +lbl_801D44E8 = .sbss:0x801D44E8; // type:object size:0x4 data:4byte +lbl_801D44EC = .sbss:0x801D44EC; // type:object size:0x4 data:4byte +lbl_801D44F0 = .sbss:0x801D44F0; // type:object size:0x2 data:2byte +lbl_801D44F2 = .sbss:0x801D44F2; // type:object size:0x2 data:2byte +lbl_801D44F4 = .sbss:0x801D44F4; // type:object size:0x2 data:2byte +lbl_801D44F6 = .sbss:0x801D44F6; // type:object size:0x2 data:2byte +lbl_801D44F8 = .sbss:0x801D44F8; // type:object size:0x2 data:2byte +lbl_801D44FA = .sbss:0x801D44FA; // type:object size:0x6 data:2byte +lbl_801D4500 = .sbss:0x801D4500; // type:object size:0x8 data:4byte +lbl_801D4508 = .sbss:0x801D4508; // type:object size:0x4 data:4byte +lbl_801D450C = .sbss:0x801D450C; // type:object size:0x4 data:4byte +lbl_801D4510 = .sbss:0x801D4510; // type:object size:0x4 data:4byte +lbl_801D4514 = .sbss:0x801D4514; // type:object size:0x4 data:4byte +lbl_801D4518 = .sbss:0x801D4518; // type:object size:0x8 data:byte +lbl_801D4520 = .sbss:0x801D4520; // type:object size:0x4 data:4byte +lbl_801D4524 = .sbss:0x801D4524; // type:object size:0x4 data:4byte +lbl_801D4528 = .sbss:0x801D4528; // type:object size:0x4 data:4byte +lbl_801D452C = .sbss:0x801D452C; // type:object size:0x2 data:2byte +lbl_801D452E = .sbss:0x801D452E; // type:object size:0x1 data:byte +lbl_801D452F = .sbss:0x801D452F; // type:object size:0x1 data:byte +lbl_801D4530 = .sbss:0x801D4530; // type:object size:0x1 data:byte +lbl_801D4531 = .sbss:0x801D4531; // type:object size:0x7 data:byte +lbl_801D4538 = .sbss:0x801D4538; // type:object size:0x8 data:2byte +lbl_801D4540 = .sbss:0x801D4540; // type:object size:0x4 data:4byte +lbl_801D4544 = .sbss:0x801D4544; // type:object size:0x4 data:4byte +lbl_801D4548 = .sbss:0x801D4548; // type:object size:0x4 data:4byte +lbl_801D454C = .sbss:0x801D454C; // type:object size:0x2 data:2byte +lbl_801D4550 = .sbss:0x801D4550; // type:object size:0x4 data:4byte +lbl_801D4554 = .sbss:0x801D4554; // type:object size:0x4 data:4byte +lbl_801D4558 = .sbss:0x801D4558; // type:object size:0x4 data:4byte +lbl_801D455C = .sbss:0x801D455C; // type:object size:0x2 data:2byte +lbl_801D4560 = .sbss:0x801D4560; // type:object size:0x4 data:4byte +lbl_801D4564 = .sbss:0x801D4564; // type:object size:0x4 data:4byte +lbl_801D4568 = .sbss:0x801D4568; // type:object size:0x4 data:4byte +lbl_801D456C = .sbss:0x801D456C; // type:object size:0x4 data:4byte +lbl_801D4570 = .sbss:0x801D4570; // type:object size:0x4 data:4byte +lbl_801D4574 = .sbss:0x801D4574; // type:object size:0x4 data:4byte +lbl_801D4578 = .sbss:0x801D4578; // type:object size:0x8 data:4byte +lbl_801D4580 = .sbss:0x801D4580; // type:object size:0x1 data:byte +lbl_801D4581 = .sbss:0x801D4581; // type:object size:0x1 data:byte +lbl_801D4582 = .sbss:0x801D4582; // type:object size:0x1 data:byte +lbl_801D4583 = .sbss:0x801D4583; // type:object size:0x1 data:byte +lbl_801D4584 = .sbss:0x801D4584; // type:object size:0x1 data:byte +lbl_801D4585 = .sbss:0x801D4585; // type:object size:0x1 data:byte +lbl_801D4588 = .sbss:0x801D4588; // type:object size:0x4 data:4byte +lbl_801D458C = .sbss:0x801D458C; // type:object size:0x4 data:4byte +lbl_801D4590 = .sbss:0x801D4590; // type:object size:0x4 data:4byte +lbl_801D4594 = .sbss:0x801D4594; // type:object size:0x4 data:4byte +lbl_801D4598 = .sbss:0x801D4598; // type:object size:0x4 data:4byte +lbl_801D459C = .sbss:0x801D459C; // type:object size:0x1 data:byte +lbl_801D45A0 = .sbss:0x801D45A0; // type:object size:0x1 data:byte +lbl_801D45A4 = .sbss:0x801D45A4; // type:object size:0x4 data:4byte +lbl_801D45A8 = .sbss:0x801D45A8; // type:object size:0x4 data:4byte +lbl_801D45AC = .sbss:0x801D45AC; // type:object size:0x1 data:byte +lbl_801D45AD = .sbss:0x801D45AD; // type:object size:0x1 data:byte +lbl_801D45AE = .sbss:0x801D45AE; // type:object size:0x1 data:byte +lbl_801D45AF = .sbss:0x801D45AF; // type:object size:0x1 data:byte +lbl_801D45B0 = .sbss:0x801D45B0; // type:object size:0x4 data:4byte +lbl_801D45B4 = .sbss:0x801D45B4; // type:object size:0x4 data:4byte +lbl_801D45B8 = .sbss:0x801D45B8; // type:object size:0x4 data:4byte +lbl_801D45BC = .sbss:0x801D45BC; // type:object size:0x4 data:4byte +lbl_801D45C0 = .sbss:0x801D45C0; // type:object size:0x4 data:4byte +lbl_801D45C4 = .sbss:0x801D45C4; // type:object size:0x4 data:4byte +lbl_801D45C8 = .sbss:0x801D45C8; // type:object size:0x4 data:4byte +lbl_801D45CC = .sbss:0x801D45CC; // type:object size:0x4 data:4byte +lbl_801D45D0 = .sbss:0x801D45D0; // type:object size:0x4 data:4byte +lbl_801D45D4 = .sbss:0x801D45D4; // type:object size:0x2 data:2byte +lbl_801D45D8 = .sbss:0x801D45D8; // type:object size:0x4 data:4byte +lbl_801D45DC = .sbss:0x801D45DC; // type:object size:0x4 data:4byte +lbl_801D45E0 = .sbss:0x801D45E0; // type:object size:0x4 data:4byte +lbl_801D45E4 = .sbss:0x801D45E4; // type:object size:0x4 data:4byte +lbl_801D45E8 = .sbss:0x801D45E8; // type:object size:0x4 data:4byte +lbl_801D45EC = .sbss:0x801D45EC; // type:object size:0x4 data:4byte +lbl_801D45F0 = .sbss:0x801D45F0; // type:object size:0x1 data:byte +lbl_801D45F4 = .sbss:0x801D45F4; // type:object size:0x4 data:4byte +lbl_801D45F8 = .sbss:0x801D45F8; // type:object size:0x4 data:4byte +lbl_801D45FC = .sbss:0x801D45FC; // type:object size:0x4 data:4byte +lbl_801D4600 = .sbss:0x801D4600; // type:object size:0x4 data:4byte +lbl_801D4604 = .sbss:0x801D4604; // type:object size:0x4 data:4byte +lbl_801D4608 = .sbss:0x801D4608; // type:object size:0x4 data:4byte +lbl_801D460C = .sbss:0x801D460C; // type:object size:0x1 data:byte +lbl_801D4620 = .sdata2:0x801D4620; // type:object size:0x8 data:double +lbl_801D4628 = .sdata2:0x801D4628; // type:object size:0x4 data:float +lbl_801D462C = .sdata2:0x801D462C; // type:object size:0x4 data:float +lbl_801D4630 = .sdata2:0x801D4630; // type:object size:0x8 data:double +lbl_801D4638 = .sdata2:0x801D4638; // type:object size:0x4 data:float +lbl_801D463C = .sdata2:0x801D463C; // type:object size:0x4 data:float +lbl_801D4640 = .sdata2:0x801D4640; // type:object size:0x4 data:float +lbl_801D4644 = .sdata2:0x801D4644; // type:object size:0x4 data:float +lbl_801D4648 = .sdata2:0x801D4648; // type:object size:0x4 data:float +lbl_801D464C = .sdata2:0x801D464C; // type:object size:0x4 data:float +lbl_801D4650 = .sdata2:0x801D4650; // type:object size:0x4 data:float +lbl_801D4654 = .sdata2:0x801D4654; // type:object size:0x4 data:float +lbl_801D4658 = .sdata2:0x801D4658; // type:object size:0x4 data:float +lbl_801D4660 = .sdata2:0x801D4660; // type:object size:0x8 data:double +lbl_801D4668 = .sdata2:0x801D4668; // type:object size:0x8 data:double +lbl_801D4670 = .sdata2:0x801D4670; // type:object size:0x4 data:float +lbl_801D4674 = .sdata2:0x801D4674; // type:object size:0x4 data:float +lbl_801D4678 = .sdata2:0x801D4678; // type:object size:0x4 data:float +lbl_801D467C = .sdata2:0x801D467C; // type:object size:0x4 data:float +lbl_801D4680 = .sdata2:0x801D4680; // type:object size:0x8 data:float +lbl_801D4688 = .sdata2:0x801D4688; // type:object size:0x4 data:float +lbl_801D468C = .sdata2:0x801D468C; // type:object size:0x4 data:float +lbl_801D4690 = .sdata2:0x801D4690; // type:object size:0x4 data:float +lbl_801D4698 = .sdata2:0x801D4698; // type:object size:0x8 data:double +lbl_801D46A0 = .sdata2:0x801D46A0; // type:object size:0x8 data:double +lbl_801D46A8 = .sdata2:0x801D46A8; // type:object size:0x8 data:float +lbl_801D46B0 = .sdata2:0x801D46B0; // type:object size:0x4 data:float +lbl_801D46B4 = .sdata2:0x801D46B4; // type:object size:0x4 data:float +lbl_801D46B8 = .sdata2:0x801D46B8; // type:object size:0x4 data:float +lbl_801D46BC = .sdata2:0x801D46BC; // type:object size:0x4 data:float +lbl_801D46C0 = .sdata2:0x801D46C0; // type:object size:0x4 data:float +lbl_801D46C4 = .sdata2:0x801D46C4; // type:object size:0x4 data:float +lbl_801D46C8 = .sdata2:0x801D46C8; // type:object size:0x4 data:float +lbl_801D46D0 = .sdata2:0x801D46D0; // type:object size:0x8 data:double +lbl_801D46D8 = .sdata2:0x801D46D8; // type:object size:0x8 data:double +lbl_801D46E0 = .sdata2:0x801D46E0; // type:object size:0x8 data:double +lbl_801D46E8 = .sdata2:0x801D46E8; // type:object size:0x4 data:float +lbl_801D46EC = .sdata2:0x801D46EC; // type:object size:0x4 data:float +lbl_801D46F0 = .sdata2:0x801D46F0; // type:object size:0x4 data:float +lbl_801D46F4 = .sdata2:0x801D46F4; // type:object size:0x4 data:float +lbl_801D46F8 = .sdata2:0x801D46F8; // type:object size:0x8 data:double +lbl_801D4700 = .sdata2:0x801D4700; // type:object size:0x8 data:double +lbl_801D4708 = .sdata2:0x801D4708; // type:object size:0x8 data:double +lbl_801D4710 = .sdata2:0x801D4710; // type:object size:0x8 data:double +lbl_801D4718 = .sdata2:0x801D4718; // type:object size:0x4 data:float +lbl_801D4720 = .sdata2:0x801D4720; // type:object size:0x8 data:double +lbl_801D4728 = .sdata2:0x801D4728; // type:object size:0x4 data:float +lbl_801D472C = .sdata2:0x801D472C; // type:object size:0x4 data:float +lbl_801D4730 = .sdata2:0x801D4730; // type:object size:0x4 data:float +lbl_801D4734 = .sdata2:0x801D4734; // type:object size:0x4 data:float +lbl_801D4738 = .sdata2:0x801D4738; // type:object size:0x8 data:double +lbl_801D4740 = .sdata2:0x801D4740; // type:object size:0x4 data:float +lbl_801D4744 = .sdata2:0x801D4744; // type:object size:0x4 data:float +lbl_801D4748 = .sdata2:0x801D4748; // type:object size:0x4 data:float +lbl_801D474C = .sdata2:0x801D474C; // type:object size:0x4 data:float +lbl_801D4750 = .sdata2:0x801D4750; // type:object size:0x8 data:double +lbl_801D4758 = .sdata2:0x801D4758; // type:object size:0x4 data:float +lbl_801D4760 = .sdata2:0x801D4760; // type:object size:0x8 data:double +lbl_801D4768 = .sdata2:0x801D4768; // type:object size:0x4 data:float +lbl_801D476C = .sdata2:0x801D476C; // type:object size:0x4 data:float +lbl_801D4770 = .sdata2:0x801D4770; // type:object size:0x4 data:float +lbl_801D4774 = .sdata2:0x801D4774; // type:object size:0x4 data:float +lbl_801D4778 = .sdata2:0x801D4778; // type:object size:0x4 data:float +lbl_801D4780 = .sdata2:0x801D4780; // type:object size:0x8 data:double +lbl_801D4788 = .sdata2:0x801D4788; // type:object size:0x8 data:double +lbl_801D4790 = .sdata2:0x801D4790; // type:object size:0x8 data:double +lbl_801D4798 = .sdata2:0x801D4798; // type:object size:0x8 data:double +lbl_801D47A0 = .sdata2:0x801D47A0; // type:object size:0x4 data:float +lbl_801D47A4 = .sdata2:0x801D47A4; // type:object size:0x4 data:float +lbl_801D47A8 = .sdata2:0x801D47A8; // type:object size:0x4 data:float +lbl_801D47AC = .sdata2:0x801D47AC; // type:object size:0x4 data:float +lbl_801D47B0 = .sdata2:0x801D47B0; // type:object size:0x4 data:float +lbl_801D47B4 = .sdata2:0x801D47B4; // type:object size:0x4 data:float +lbl_801D47B8 = .sdata2:0x801D47B8; // type:object size:0x4 data:float +lbl_801D47BC = .sdata2:0x801D47BC; // type:object size:0x4 data:float +lbl_801D47C0 = .sdata2:0x801D47C0; // type:object size:0x8 data:double +lbl_801D47C8 = .sdata2:0x801D47C8; // type:object size:0x8 data:float +lbl_801D47D0 = .sdata2:0x801D47D0; // type:object size:0x4 data:float +lbl_801D47D4 = .sdata2:0x801D47D4; // type:object size:0x4 data:float +lbl_801D47D8 = .sdata2:0x801D47D8; // type:object size:0x8 data:double +lbl_801D47E0 = .sdata2:0x801D47E0; // type:object size:0x8 data:double +lbl_801D47E8 = .sdata2:0x801D47E8; // type:object size:0x4 data:float +lbl_801D47EC = .sdata2:0x801D47EC; // type:object size:0x4 data:float +lbl_801D47F0 = .sdata2:0x801D47F0; // type:object size:0x4 data:float +lbl_801D47F8 = .sdata2:0x801D47F8; // type:object size:0x8 data:double +lbl_801D4800 = .sdata2:0x801D4800; // type:object size:0x8 data:double +lbl_801D4808 = .sdata2:0x801D4808; // type:object size:0x8 data:double +lbl_801D4810 = .sdata2:0x801D4810; // type:object size:0x4 data:float +lbl_801D4814 = .sdata2:0x801D4814; // type:object size:0x4 data:float +lbl_801D4818 = .sdata2:0x801D4818; // type:object size:0x8 data:float +lbl_801D4820 = .sdata2:0x801D4820; // type:object size:0x4 data:float +lbl_801D4824 = .sdata2:0x801D4824; // type:object size:0x4 data:float +lbl_801D4828 = .sdata2:0x801D4828; // type:object size:0x8 data:double +lbl_801D4830 = .sdata2:0x801D4830; // type:object size:0x4 data:float +lbl_801D4834 = .sdata2:0x801D4834; // type:object size:0x4 data:float +lbl_801D4838 = .sdata2:0x801D4838; // type:object size:0x4 data:float +lbl_801D483C = .sdata2:0x801D483C; // type:object size:0x4 data:float +lbl_801D4840 = .sdata2:0x801D4840; // type:object size:0x8 data:double +lbl_801D4848 = .sdata2:0x801D4848; // type:object size:0x4 data:float +lbl_801D4850 = .sdata2:0x801D4850; // type:object size:0x8 data:double +lbl_801D4858 = .sdata2:0x801D4858; // type:object size:0x8 data:double +lbl_801D4860 = .sdata2:0x801D4860; // type:object size:0x8 data:double +lbl_801D4868 = .sdata2:0x801D4868; // type:object size:0x4 data:float +lbl_801D4870 = .sdata2:0x801D4870; // type:object size:0x8 data:double +lbl_801D4878 = .sdata2:0x801D4878; // type:object size:0x8 data:double +lbl_801D4880 = .sdata2:0x801D4880; // type:object size:0x4 data:float +lbl_801D4888 = .sdata2:0x801D4888; // type:object size:0x8 data:double +lbl_801D4890 = .sdata2:0x801D4890; // type:object size:0x8 data:double +lbl_801D4898 = .sdata2:0x801D4898; // type:object size:0x8 data:double +lbl_801D48A0 = .sdata2:0x801D48A0; // type:object size:0x8 data:double +lbl_801D48A8 = .sdata2:0x801D48A8; // type:object size:0x4 data:float +lbl_801D48AC = .sdata2:0x801D48AC; // type:object size:0x4 data:float +lbl_801D48B0 = .sdata2:0x801D48B0; // type:object size:0x4 data:float +lbl_801D48B4 = .sdata2:0x801D48B4; // type:object size:0x4 data:float +lbl_801D48B8 = .sdata2:0x801D48B8; // type:object size:0x8 data:double +lbl_801D48C0 = .sdata2:0x801D48C0; // type:object size:0x4 data:float +lbl_801D48C8 = .sdata2:0x801D48C8; // type:object size:0x8 data:double +lbl_801D48D0 = .sdata2:0x801D48D0; // type:object size:0x8 data:double +lbl_801D48D8 = .sdata2:0x801D48D8; // type:object size:0x4 data:float +lbl_801D48E0 = .sdata2:0x801D48E0; // type:object size:0x8 data:double +lbl_801D48E8 = .sdata2:0x801D48E8; // type:object size:0x4 data:float +lbl_801D48EC = .sdata2:0x801D48EC; // type:object size:0x4 data:float +lbl_801D48F0 = .sdata2:0x801D48F0; // type:object size:0x4 data:float +lbl_801D48F4 = .sdata2:0x801D48F4; // type:object size:0x4 data:float +lbl_801D48F8 = .sdata2:0x801D48F8; // type:object size:0x8 data:double +lbl_801D4900 = .sdata2:0x801D4900; // type:object size:0x8 data:double +lbl_801D4908 = .sdata2:0x801D4908; // type:object size:0x4 data:float +lbl_801D490C = .sdata2:0x801D490C; // type:object size:0x4 data:float +lbl_801D4910 = .sdata2:0x801D4910; // type:object size:0x8 data:double +lbl_801D4918 = .sdata2:0x801D4918; // type:object size:0x4 data:float +lbl_801D491C = .sdata2:0x801D491C; // type:object size:0x4 data:float +lbl_801D4920 = .sdata2:0x801D4920; // type:object size:0x4 data:float +lbl_801D4924 = .sdata2:0x801D4924; // type:object size:0x4 data:float +lbl_801D4928 = .sdata2:0x801D4928; // type:object size:0x8 data:double +lbl_801D4930 = .sdata2:0x801D4930; // type:object size:0x8 data:double +lbl_801D4938 = .sdata2:0x801D4938; // type:object size:0x4 data:float +lbl_801D493C = .sdata2:0x801D493C; // type:object size:0x4 data:float +lbl_801D4940 = .sdata2:0x801D4940; // type:object size:0x4 data:float +lbl_801D4944 = .sdata2:0x801D4944; // type:object size:0x4 data:float +lbl_801D4948 = .sdata2:0x801D4948; // type:object size:0x4 data:float +lbl_801D494C = .sdata2:0x801D494C; // type:object size:0x4 data:float +lbl_801D4950 = .sdata2:0x801D4950; // type:object size:0x4 data:float +lbl_801D4954 = .sdata2:0x801D4954; // type:object size:0x4 data:float +lbl_801D4958 = .sdata2:0x801D4958; // type:object size:0x4 data:float +lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 data:double +lbl_801D4968 = .sdata2:0x801D4968; // type:object size:0x8 data:double +lbl_801D4970 = .sdata2:0x801D4970; // type:object size:0x4 data:float +lbl_801D4978 = .sdata2:0x801D4978; // type:object size:0x8 data:double +lbl_801D4980 = .sdata2:0x801D4980; // type:object size:0x8 data:double +lbl_801D4988 = .sdata2:0x801D4988; // type:object size:0x8 data:double +lbl_801D4990 = .sdata2:0x801D4990; // type:object size:0x4 data:float +lbl_801D4994 = .sdata2:0x801D4994; // type:object size:0x4 data:float +lbl_801D4998 = .sdata2:0x801D4998; // type:object size:0x4 data:float +lbl_801D49A0 = .sdata2:0x801D49A0; // type:object size:0x8 data:double +lbl_801D49A8 = .sdata2:0x801D49A8; // type:object size:0x4 data:float +lbl_801D49AC = .sdata2:0x801D49AC; // type:object size:0x4 data:float +lbl_801D49B0 = .sdata2:0x801D49B0; // type:object size:0x8 data:double +lbl_801D49B8 = .sdata2:0x801D49B8; // type:object size:0x8 data:double +lbl_801D49C0 = .sdata2:0x801D49C0; // type:object size:0x8 data:double +lbl_801D49C8 = .sdata2:0x801D49C8; // type:object size:0x8 data:double +lbl_801D49D0 = .sdata2:0x801D49D0; // type:object size:0x8 data:double +lbl_801D49D8 = .sdata2:0x801D49D8; // type:object size:0x8 data:double +lbl_801D49E0 = .sdata2:0x801D49E0; // type:object size:0x4 data:float +lbl_801D49E4 = .sdata2:0x801D49E4; // type:object size:0x4 data:float +lbl_801D49E8 = .sdata2:0x801D49E8; // type:object size:0x8 data:double +lbl_801D49F0 = .sdata2:0x801D49F0; // type:object size:0x4 data:float +lbl_801D49F4 = .sdata2:0x801D49F4; // type:object size:0x4 data:float +lbl_801D49F8 = .sdata2:0x801D49F8; // type:object size:0x4 data:float +lbl_801D49FC = .sdata2:0x801D49FC; // type:object size:0x4 data:float +lbl_801D4A00 = .sdata2:0x801D4A00; // type:object size:0x4 data:float +lbl_801D4A04 = .sdata2:0x801D4A04; // type:object size:0x4 data:float +lbl_801D4A08 = .sdata2:0x801D4A08; // type:object size:0x4 data:float +lbl_801D4A0C = .sdata2:0x801D4A0C; // type:object size:0x4 data:float +lbl_801D4A10 = .sdata2:0x801D4A10; // type:object size:0x4 data:float +lbl_801D4A14 = .sdata2:0x801D4A14; // type:object size:0x4 data:float +lbl_801D4A18 = .sdata2:0x801D4A18; // type:object size:0x4 data:float +lbl_801D4A1C = .sdata2:0x801D4A1C; // type:object size:0x4 data:float +lbl_801D4A20 = .sdata2:0x801D4A20; // type:object size:0x4 data:float +lbl_801D4A24 = .sdata2:0x801D4A24; // type:object size:0x4 data:float +lbl_801D4A28 = .sdata2:0x801D4A28; // type:object size:0x4 data:float +lbl_801D4A2C = .sdata2:0x801D4A2C; // type:object size:0x4 data:float +lbl_801D4A30 = .sdata2:0x801D4A30; // type:object size:0x4 data:float +lbl_801D4A34 = .sdata2:0x801D4A34; // type:object size:0x4 data:float +lbl_801D4A38 = .sdata2:0x801D4A38; // type:object size:0x8 data:double +lbl_801D4A40 = .sdata2:0x801D4A40; // type:object size:0x4 data:float +lbl_801D4A44 = .sdata2:0x801D4A44; // type:object size:0x4 data:float +lbl_801D4A48 = .sdata2:0x801D4A48; // type:object size:0x8 data:double +lbl_801D4A50 = .sdata2:0x801D4A50; // type:object size:0x8 data:double +lbl_801D4A58 = .sdata2:0x801D4A58; // type:object size:0x4 data:float +lbl_801D4A5C = .sdata2:0x801D4A5C; // type:object size:0x4 data:float +lbl_801D4A60 = .sdata2:0x801D4A60; // type:object size:0x8 data:double +lbl_801D4A68 = .sdata2:0x801D4A68; // type:object size:0x4 data:float +lbl_801D4A6C = .sdata2:0x801D4A6C; // type:object size:0x4 data:float +lbl_801D4A70 = .sdata2:0x801D4A70; // type:object size:0x4 data:float +lbl_801D4A74 = .sdata2:0x801D4A74; // type:object size:0x4 data:float +lbl_801D4A78 = .sdata2:0x801D4A78; // type:object size:0x4 data:float +lbl_801D4A80 = .sdata2:0x801D4A80; // type:object size:0x8 data:double +lbl_801D4A88 = .sdata2:0x801D4A88; // type:object size:0x4 data:float +lbl_801D4A90 = .sdata2:0x801D4A90; // type:object size:0x8 data:double +lbl_801D4A98 = .sdata2:0x801D4A98; // type:object size:0x4 data:float +lbl_801D4A9C = .sdata2:0x801D4A9C; // type:object size:0x4 data:float +lbl_801D4AA0 = .sdata2:0x801D4AA0; // type:object size:0x4 data:float +lbl_801D4AA4 = .sdata2:0x801D4AA4; // type:object size:0x4 data:float +lbl_801D4AA8 = .sdata2:0x801D4AA8; // type:object size:0x8 data:double +lbl_801D4AB0 = .sdata2:0x801D4AB0; // type:object size:0x4 data:float +lbl_801D4AB8 = .sdata2:0x801D4AB8; // type:object size:0x8 data:double +lbl_801D4AC0 = .sdata2:0x801D4AC0; // type:object size:0x8 data:double +lbl_801D4AC8 = .sdata2:0x801D4AC8; // type:object size:0x8 data:double +lbl_801D4AD0 = .sdata2:0x801D4AD0; // type:object size:0x4 data:float +lbl_801D4AD8 = .sdata2:0x801D4AD8; // type:object size:0x8 data:double +lbl_801D4AE0 = .sdata2:0x801D4AE0; // type:object size:0x4 data:float +lbl_801D4AE4 = .sdata2:0x801D4AE4; // type:object size:0x4 data:float +lbl_801D4AE8 = .sdata2:0x801D4AE8; // type:object size:0x4 data:float +lbl_801D4AEC = .sdata2:0x801D4AEC; // type:object size:0x4 data:float +lbl_801D4AF0 = .sdata2:0x801D4AF0; // type:object size:0x4 data:float +lbl_801D4AF4 = .sdata2:0x801D4AF4; // type:object size:0x4 data:float +lbl_801D4AF8 = .sdata2:0x801D4AF8; // type:object size:0x4 data:float +lbl_801D4AFC = .sdata2:0x801D4AFC; // type:object size:0x4 data:float +lbl_801D4B00 = .sdata2:0x801D4B00; // type:object size:0x8 data:double +lbl_801D4B08 = .sdata2:0x801D4B08; // type:object size:0x8 data:double +lbl_801D4B10 = .sdata2:0x801D4B10; // type:object size:0x8 data:double +lbl_801D4B18 = .sdata2:0x801D4B18; // type:object size:0x2 data:2byte +lbl_801D4B1A = .sdata2:0x801D4B1A; // type:object size:0x2 data:2byte +lbl_801D4B1C = .sdata2:0x801D4B1C; // type:object size:0x2 data:2byte +lbl_801D4B20 = .sdata2:0x801D4B20; // type:object size:0x4 data:float +lbl_801D4B24 = .sdata2:0x801D4B24; // type:object size:0x4 data:float +lbl_801D4B28 = .sdata2:0x801D4B28; // type:object size:0x4 data:float +lbl_801D4B2C = .sdata2:0x801D4B2C; // type:object size:0x4 data:float +lbl_801D4B30 = .sdata2:0x801D4B30; // type:object size:0x4 data:float +lbl_801D4B34 = .sdata2:0x801D4B34; // type:object size:0x4 data:float +lbl_801D4B38 = .sdata2:0x801D4B38; // type:object size:0x4 data:float +lbl_801D4B3C = .sdata2:0x801D4B3C; // type:object size:0x4 data:float +lbl_801D4B40 = .sdata2:0x801D4B40; // type:object size:0x4 data:float +lbl_801D4B44 = .sdata2:0x801D4B44; // type:object size:0x4 data:float +lbl_801D4B48 = .sdata2:0x801D4B48; // type:object size:0x8 data:double +lbl_801D4B50 = .sdata2:0x801D4B50; // type:object size:0x8 data:double +lbl_801D4B58 = .sdata2:0x801D4B58; // type:object size:0x4 data:float +lbl_801D4B5C = .sdata2:0x801D4B5C; // type:object size:0x4 data:float +lbl_801D4B60 = .sdata2:0x801D4B60; // type:object size:0x4 data:float +lbl_801D4B68 = .sdata2:0x801D4B68; // type:object size:0x8 data:double +lbl_801D4B70 = .sdata2:0x801D4B70; // type:object size:0x8 data:double +lbl_801D4B78 = .sdata2:0x801D4B78; // type:object size:0x4 data:float +lbl_801D4B7C = .sdata2:0x801D4B7C; // type:object size:0x4 data:float +lbl_801D4B80 = .sdata2:0x801D4B80; // type:object size:0x8 data:double +lbl_801D4B88 = .sdata2:0x801D4B88; // type:object size:0x4 data:float +lbl_801D4B8C = .sdata2:0x801D4B8C; // type:object size:0x4 data:float +lbl_801D4B90 = .sdata2:0x801D4B90; // type:object size:0x8 data:double +lbl_801D4B98 = .sdata2:0x801D4B98; // type:object size:0x4 data:float +lbl_801D4BA0 = .sdata2:0x801D4BA0; // type:object size:0x8 data:double +lbl_801D4BA8 = .sdata2:0x801D4BA8; // type:object size:0x4 data:float +lbl_801D4BAC = .sdata2:0x801D4BAC; // type:object size:0x4 data:float +lbl_801D4BB0 = .sdata2:0x801D4BB0; // type:object size:0x4 data:float +lbl_801D4BB4 = .sdata2:0x801D4BB4; // type:object size:0x4 data:float +lbl_801D4BB8 = .sdata2:0x801D4BB8; // type:object size:0x8 data:double +lbl_801D4BC0 = .sdata2:0x801D4BC0; // type:object size:0x4 data:float +lbl_801D4BC4 = .sdata2:0x801D4BC4; // type:object size:0x4 data:float +lbl_801D4BC8 = .sdata2:0x801D4BC8; // type:object size:0x4 data:float +lbl_801D4BCC = .sdata2:0x801D4BCC; // type:object size:0x4 data:float +lbl_801D4BD0 = .sdata2:0x801D4BD0; // type:object size:0x4 data:float +lbl_801D4BD8 = .sdata2:0x801D4BD8; // type:object size:0x8 data:double +lbl_801D4BE0 = .sdata2:0x801D4BE0; // type:object size:0x4 data:float +lbl_801D4BE4 = .sdata2:0x801D4BE4; // type:object size:0x4 data:float +lbl_801D4BE8 = .sdata2:0x801D4BE8; // type:object size:0x4 data:float +lbl_801D4BEC = .sdata2:0x801D4BEC; // type:object size:0x4 data:float +lbl_801D4BF0 = .sdata2:0x801D4BF0; // type:object size:0x4 data:float +lbl_801D4BF4 = .sdata2:0x801D4BF4; // type:object size:0x4 data:float +lbl_801D4BF8 = .sdata2:0x801D4BF8; // type:object size:0x8 data:double +lbl_801D4C00 = .sdata2:0x801D4C00; // type:object size:0x4 data:float +lbl_801D4C08 = .sdata2:0x801D4C08; // type:object size:0x8 data:double +lbl_801D4C10 = .sdata2:0x801D4C10; // type:object size:0x4 data:float +lbl_801D4C18 = .sdata2:0x801D4C18; // type:object size:0x8 data:double +lbl_801D4C20 = .sdata2:0x801D4C20; // type:object size:0x4 data:float +lbl_801D4C24 = .sdata2:0x801D4C24; // type:object size:0x4 data:float +lbl_801D4C28 = .sdata2:0x801D4C28; // type:object size:0x4 data:float +lbl_801D4C30 = .sdata2:0x801D4C30; // type:object size:0x8 data:double +lbl_801D4C38 = .sdata2:0x801D4C38; // type:object size:0x8 data:double +lbl_801D4C40 = .sdata2:0x801D4C40; // type:object size:0x8 data:double +lbl_801D4C48 = .sdata2:0x801D4C48; // type:object size:0x4 data:float +lbl_801D4C50 = .sdata2:0x801D4C50; // type:object size:0x8 data:double +lbl_801D4C58 = .sdata2:0x801D4C58; // type:object size:0x8 data:double +lbl_801D4C60 = .sdata2:0x801D4C60; // type:object size:0x8 data:double +lbl_801D4C68 = .sdata2:0x801D4C68; // type:object size:0x8 data:double +lbl_801D4C70 = .sdata2:0x801D4C70; // type:object size:0x8 data:double +lbl_801D4C78 = .sdata2:0x801D4C78; // type:object size:0x8 data:double +lbl_801D4C80 = .sdata2:0x801D4C80; // type:object size:0x8 data:double +lbl_801D4C88 = .sdata2:0x801D4C88; // type:object size:0x8 data:double +lbl_801D4C90 = .sdata2:0x801D4C90; // type:object size:0x8 data:double +lbl_801D4C98 = .sdata2:0x801D4C98; // type:object size:0x4 data:float +lbl_801D4C9C = .sdata2:0x801D4C9C; // type:object size:0x4 data:float +lbl_801D4CA0 = .sdata2:0x801D4CA0; // type:object size:0x4 data:float +lbl_801D4CA4 = .sdata2:0x801D4CA4; // type:object size:0x4 data:float +lbl_801D4CA8 = .sdata2:0x801D4CA8; // type:object size:0x8 data:double +lbl_801D4CB0 = .sdata2:0x801D4CB0; // type:object size:0x4 data:float +lbl_801D4CB8 = .sdata2:0x801D4CB8; // type:object size:0x8 data:double +lbl_801D4CC0 = .sdata2:0x801D4CC0; // type:object size:0x8 data:double +lbl_801D4CC8 = .sdata2:0x801D4CC8; // type:object size:0x4 data:float +lbl_801D4CCC = .sdata2:0x801D4CCC; // type:object size:0x4 data:float +lbl_801D4CD0 = .sdata2:0x801D4CD0; // type:object size:0x8 data:double +lbl_801D4CD8 = .sdata2:0x801D4CD8; // type:object size:0x4 data:float +lbl_801D4CDC = .sdata2:0x801D4CDC; // type:object size:0x4 data:float +lbl_801D4CE0 = .sdata2:0x801D4CE0; // type:object size:0x4 data:float +lbl_801D4CE4 = .sdata2:0x801D4CE4; // type:object size:0x4 data:float +lbl_801D4CE8 = .sdata2:0x801D4CE8; // type:object size:0x4 data:float +lbl_801D4CEC = .sdata2:0x801D4CEC; // type:object size:0x4 data:float +lbl_801D4CF0 = .sdata2:0x801D4CF0; // type:object size:0x8 data:double +lbl_801D4CF8 = .sdata2:0x801D4CF8; // type:object size:0x4 data:float +lbl_801D4D00 = .sdata2:0x801D4D00; // type:object size:0x8 data:double +lbl_801D4D08 = .sdata2:0x801D4D08; // type:object size:0x8 data:double +lbl_801D4D10 = .sdata2:0x801D4D10; // type:object size:0x4 data:float +lbl_801D4D18 = .sdata2:0x801D4D18; // type:object size:0x8 data:double +lbl_801D4D20 = .sdata2:0x801D4D20; // type:object size:0x4 data:float +lbl_801D4D24 = .sdata2:0x801D4D24; // type:object size:0x4 data:float +lbl_801D4D28 = .sdata2:0x801D4D28; // type:object size:0x8 data:double +lbl_801D4D30 = .sdata2:0x801D4D30; // type:object size:0x8 data:double +lbl_801D4D38 = .sdata2:0x801D4D38; // type:object size:0x4 data:float +lbl_801D4D3C = .sdata2:0x801D4D3C; // type:object size:0x4 data:float +lbl_801D4D40 = .sdata2:0x801D4D40; // type:object size:0x4 data:float +lbl_801D4D48 = .sdata2:0x801D4D48; // type:object size:0x8 data:double +lbl_801D4D50 = .sdata2:0x801D4D50; // type:object size:0x4 data:float +lbl_801D4D54 = .sdata2:0x801D4D54; // type:object size:0x4 data:float +lbl_801D4D58 = .sdata2:0x801D4D58; // type:object size:0x4 data:float +lbl_801D4D5C = .sdata2:0x801D4D5C; // type:object size:0x4 data:float +lbl_801D4D60 = .sdata2:0x801D4D60; // type:object size:0x8 data:double +lbl_801D4D68 = .sdata2:0x801D4D68; // type:object size:0x4 data:float +lbl_801D4D70 = .sdata2:0x801D4D70; // type:object size:0x8 data:double +lbl_801D4D78 = .sdata2:0x801D4D78; // type:object size:0x4 data:float +lbl_801D4D80 = .sdata2:0x801D4D80; // type:object size:0x8 data:double +lbl_801D4D88 = .sdata2:0x801D4D88; // type:object size:0x8 data:float +lbl_801D4D90 = .sdata2:0x801D4D90; // type:object size:0x4 data:float +lbl_801D4D94 = .sdata2:0x801D4D94; // type:object size:0x4 data:float +lbl_801D4D98 = .sdata2:0x801D4D98; // type:object size:0x4 data:float +lbl_801D4D9C = .sdata2:0x801D4D9C; // type:object size:0x4 data:float +lbl_801D4DA0 = .sdata2:0x801D4DA0; // type:object size:0x8 data:double +lbl_801D4DA8 = .sdata2:0x801D4DA8; // type:object size:0x8 data:double +lbl_801D4DB0 = .sdata2:0x801D4DB0; // type:object size:0x8 data:double +lbl_801D4DB8 = .sdata2:0x801D4DB8; // type:object size:0x4 data:float +lbl_801D4DC0 = .sdata2:0x801D4DC0; // type:object size:0x8 data:double +lbl_801D4DC8 = .sdata2:0x801D4DC8; // type:object size:0x2 data:2byte +lbl_801D4DCA = .sdata2:0x801D4DCA; // type:object size:0x2 data:2byte +lbl_801D4DCC = .sdata2:0x801D4DCC; // type:object size:0x2 data:2byte +lbl_801D4DCE = .sdata2:0x801D4DCE; // type:object size:0x2 data:2byte +lbl_801D4DD0 = .sdata2:0x801D4DD0; // type:object size:0x1 data:byte +lbl_801D4DD1 = .sdata2:0x801D4DD1; // type:object size:0x1 data:byte +lbl_801D4DD2 = .sdata2:0x801D4DD2; // type:object size:0x1 data:byte +lbl_801D4DD3 = .sdata2:0x801D4DD3; // type:object size:0x1 data:byte +lbl_801D4DD4 = .sdata2:0x801D4DD4; // type:object size:0x1 data:byte +lbl_801D4DD5 = .sdata2:0x801D4DD5; // type:object size:0x1 data:byte +lbl_801D4DD6 = .sdata2:0x801D4DD6; // type:object size:0x1 data:byte +lbl_801D4DD7 = .sdata2:0x801D4DD7; // type:object size:0x1 data:byte +lbl_801D4DD8 = .sdata2:0x801D4DD8; // type:object size:0x1 data:byte +lbl_801D4DD9 = .sdata2:0x801D4DD9; // type:object size:0x1 data:byte +lbl_801D4DDA = .sdata2:0x801D4DDA; // type:object size:0x1 data:byte +lbl_801D4DDB = .sdata2:0x801D4DDB; // type:object size:0x1 data:byte +lbl_801D4DDC = .sdata2:0x801D4DDC; // type:object size:0x4 data:float +lbl_801D4DE0 = .sdata2:0x801D4DE0; // type:object size:0x4 data:float +lbl_801D4DE4 = .sdata2:0x801D4DE4; // type:object size:0x1 data:byte +lbl_801D4DE5 = .sdata2:0x801D4DE5; // type:object size:0x1 data:byte +lbl_801D4DE6 = .sdata2:0x801D4DE6; // type:object size:0x1 data:byte +lbl_801D4DE7 = .sdata2:0x801D4DE7; // type:object size:0x1 data:byte +lbl_801D4DE8 = .sdata2:0x801D4DE8; // type:object size:0x4 data:float +lbl_801D4DEC = .sdata2:0x801D4DEC; // type:object size:0x4 data:float +lbl_801D4DF0 = .sdata2:0x801D4DF0; // type:object size:0x8 data:float +lbl_801D4DF8 = .sdata2:0x801D4DF8; // type:object size:0x4 data:float +lbl_801D4DFC = .sdata2:0x801D4DFC; // type:object size:0x4 data:float +lbl_801D4E00 = .sdata2:0x801D4E00; // type:object size:0x8 data:float +lbl_801D4E08 = .sdata2:0x801D4E08; // type:object size:0x4 data:float +lbl_801D4E0C = .sdata2:0x801D4E0C; // type:object size:0x4 data:float +lbl_801D4E10 = .sdata2:0x801D4E10; // type:object size:0x4 data:float +lbl_801D4E14 = .sdata2:0x801D4E14; // type:object size:0x4 data:float +lbl_801D4E18 = .sdata2:0x801D4E18; // type:object size:0x4 data:float +lbl_801D4E1C = .sdata2:0x801D4E1C; // type:object size:0x4 data:float +lbl_801D4E20 = .sdata2:0x801D4E20; // type:object size:0x8 data:double +lbl_801D4E28 = .sdata2:0x801D4E28; // type:object size:0x8 data:double +lbl_801D4E30 = .sdata2:0x801D4E30; // type:object size:0x4 data:float +lbl_801D4E34 = .sdata2:0x801D4E34; // type:object size:0x4 data:float +lbl_801D4E38 = .sdata2:0x801D4E38; // type:object size:0x8 data:double +lbl_801D4E40 = .sdata2:0x801D4E40; // type:object size:0x8 data:double +lbl_801D4E48 = .sdata2:0x801D4E48; // type:object size:0x4 data:float +lbl_801D4E4C = .sdata2:0x801D4E4C; // type:object size:0x4 data:float +lbl_801D4E50 = .sdata2:0x801D4E50; // type:object size:0x4 data:float +lbl_801D4E54 = .sdata2:0x801D4E54; // type:object size:0x4 data:float +lbl_801D4E58 = .sdata2:0x801D4E58; // type:object size:0x4 data:float +lbl_801D4E5C = .sdata2:0x801D4E5C; // type:object size:0x4 data:float +lbl_801D4E60 = .sdata2:0x801D4E60; // type:object size:0x8 data:double +lbl_801D4E68 = .sdata2:0x801D4E68; // type:object size:0x4 data:float +lbl_801D4E6C = .sdata2:0x801D4E6C; // type:object size:0x4 data:float +lbl_801D4E70 = .sdata2:0x801D4E70; // type:object size:0x8 data:double +lbl_801D4E78 = .sdata2:0x801D4E78; // type:object size:0x4 data:float +lbl_801D4E7C = .sdata2:0x801D4E7C; // type:object size:0x4 data:float +lbl_801D4E80 = .sdata2:0x801D4E80; // type:object size:0x4 data:float +lbl_801D4E84 = .sdata2:0x801D4E84; // type:object size:0x4 data:float +lbl_801D4E88 = .sdata2:0x801D4E88; // type:object size:0x4 data:float +lbl_801D4E8C = .sdata2:0x801D4E8C; // type:object size:0x4 data:float +lbl_801D4E90 = .sdata2:0x801D4E90; // type:object size:0x4 data:float +lbl_801D4E94 = .sdata2:0x801D4E94; // type:object size:0x4 data:float +lbl_801D4E98 = .sdata2:0x801D4E98; // type:object size:0x4 data:float +lbl_801D4E9C = .sdata2:0x801D4E9C; // type:object size:0x4 data:float +lbl_801D4EA0 = .sdata2:0x801D4EA0; // type:object size:0x4 data:float +lbl_801D4EA4 = .sdata2:0x801D4EA4; // type:object size:0x4 data:float +lbl_801D4EA8 = .sdata2:0x801D4EA8; // type:object size:0x4 data:float +lbl_801D4EAC = .sdata2:0x801D4EAC; // type:object size:0x4 data:float +lbl_801D4EB0 = .sdata2:0x801D4EB0; // type:object size:0x4 data:float +lbl_801D4EB4 = .sdata2:0x801D4EB4; // type:object size:0x4 data:float +lbl_801D4EB8 = .sdata2:0x801D4EB8; // type:object size:0x4 data:float +lbl_801D4EBC = .sdata2:0x801D4EBC; // type:object size:0x4 data:float +lbl_801D4EC0 = .sdata2:0x801D4EC0; // type:object size:0x4 data:float +lbl_801D4EC4 = .sdata2:0x801D4EC4; // type:object size:0x4 data:float +lbl_801D4EC8 = .sdata2:0x801D4EC8; // type:object size:0x4 data:float +lbl_801D4ECC = .sdata2:0x801D4ECC; // type:object size:0x4 data:float +lbl_801D4ED0 = .sdata2:0x801D4ED0; // type:object size:0x4 data:float +lbl_801D4ED8 = .sdata2:0x801D4ED8; // type:object size:0x8 data:double +lbl_801D4EE0 = .sdata2:0x801D4EE0; // type:object size:0x8 data:double +lbl_801D4EE8 = .sdata2:0x801D4EE8; // type:object size:0x4 data:float +lbl_801D4EF0 = .sdata2:0x801D4EF0; // type:object size:0x8 data:double +lbl_801D4EF8 = .sdata2:0x801D4EF8; // type:object size:0x4 data:float +lbl_801D4F00 = .sdata2:0x801D4F00; // type:object size:0x8 data:double +lbl_801D4F08 = .sdata2:0x801D4F08; // type:object size:0x4 data:float +lbl_801D4F0C = .sdata2:0x801D4F0C; // type:object size:0x4 data:float +lbl_801D4F10 = .sdata2:0x801D4F10; // type:object size:0x4 data:float +lbl_801D4F14 = .sdata2:0x801D4F14; // type:object size:0x4 data:float +lbl_801D4F18 = .sdata2:0x801D4F18; // type:object size:0x8 data:double +lbl_801D4F20 = .sdata2:0x801D4F20; // type:object size:0x8 data:double +lbl_801D4F28 = .sdata2:0x801D4F28; // type:object size:0x4 data:float +lbl_801D4F2C = .sdata2:0x801D4F2C; // type:object size:0x4 data:float +lbl_801D4F30 = .sdata2:0x801D4F30; // type:object size:0x4 data:float +lbl_801D4F34 = .sdata2:0x801D4F34; // type:object size:0x4 data:float +lbl_801D4F38 = .sdata2:0x801D4F38; // type:object size:0x4 data:float +lbl_801D4F3C = .sdata2:0x801D4F3C; // type:object size:0x4 data:float +lbl_801D4F40 = .sdata2:0x801D4F40; // type:object size:0x4 data:float +lbl_801D4F44 = .sdata2:0x801D4F44; // type:object size:0x4 data:float +lbl_801D4F48 = .sdata2:0x801D4F48; // type:object size:0x4 data:float +lbl_801D4F4C = .sdata2:0x801D4F4C; // type:object size:0x4 data:float +lbl_801D4F50 = .sdata2:0x801D4F50; // type:object size:0x4 data:float +lbl_801D4F54 = .sdata2:0x801D4F54; // type:object size:0x4 data:float +lbl_801D4F58 = .sdata2:0x801D4F58; // type:object size:0x4 data:float +lbl_801D4F5C = .sdata2:0x801D4F5C; // type:object size:0x4 data:float +lbl_801D4F60 = .sdata2:0x801D4F60; // type:object size:0x4 data:4byte +lbl_801D4F64 = .sdata2:0x801D4F64; // type:object size:0x4 data:4byte +lbl_801D4F68 = .sdata2:0x801D4F68; // type:object size:0x4 data:float +lbl_801D4F6C = .sdata2:0x801D4F6C; // type:object size:0x4 data:float +lbl_801D4F70 = .sdata2:0x801D4F70; // type:object size:0x4 data:float +lbl_801D4F74 = .sdata2:0x801D4F74; // type:object size:0x4 data:float +lbl_801D4F78 = .sdata2:0x801D4F78; // type:object size:0x4 data:float +lbl_801D4F7C = .sdata2:0x801D4F7C; // type:object size:0x4 data:float +lbl_801D4F80 = .sdata2:0x801D4F80; // type:object size:0x4 data:float +lbl_801D4F84 = .sdata2:0x801D4F84; // type:object size:0x4 data:float +lbl_801D4F88 = .sdata2:0x801D4F88; // type:object size:0x4 data:float +lbl_801D4F8C = .sdata2:0x801D4F8C; // type:object size:0x2 data:2byte +lbl_801D4F8E = .sdata2:0x801D4F8E; // type:object size:0x2 data:2byte +lbl_801D4F90 = .sdata2:0x801D4F90; // type:object size:0x2 data:2byte +lbl_801D4F92 = .sdata2:0x801D4F92; // type:object size:0x2 data:2byte +lbl_801D4F94 = .sdata2:0x801D4F94; // type:object size:0x1 data:byte +lbl_801D4F95 = .sdata2:0x801D4F95; // type:object size:0x1 data:byte +lbl_801D4F96 = .sdata2:0x801D4F96; // type:object size:0x1 data:byte +lbl_801D4F97 = .sdata2:0x801D4F97; // type:object size:0x1 data:byte +lbl_801D4F98 = .sdata2:0x801D4F98; // type:object size:0x1 data:byte +lbl_801D4F99 = .sdata2:0x801D4F99; // type:object size:0x1 data:byte +lbl_801D4F9A = .sdata2:0x801D4F9A; // type:object size:0x1 data:byte +lbl_801D4F9B = .sdata2:0x801D4F9B; // type:object size:0x1 data:byte +lbl_801D4F9C = .sdata2:0x801D4F9C; // type:object size:0x4 data:float +lbl_801D4FA0 = .sdata2:0x801D4FA0; // type:object size:0x4 data:float +lbl_801D4FA4 = .sdata2:0x801D4FA4; // type:object size:0x4 data:float +lbl_801D4FA8 = .sdata2:0x801D4FA8; // type:object size:0x4 data:float +lbl_801D4FAC = .sdata2:0x801D4FAC; // type:object size:0x4 data:float +lbl_801D4FB0 = .sdata2:0x801D4FB0; // type:object size:0x4 data:float +lbl_801D4FB8 = .sdata2:0x801D4FB8; // type:object size:0x8 data:double +lbl_801D4FC0 = .sdata2:0x801D4FC0; // type:object size:0x4 data:float +lbl_801D4FC4 = .sdata2:0x801D4FC4; // type:object size:0x4 data:float +lbl_801D4FC8 = .sdata2:0x801D4FC8; // type:object size:0x4 data:float +lbl_801D4FCC = .sdata2:0x801D4FCC; // type:object size:0x4 data:float +lbl_801D4FD0 = .sdata2:0x801D4FD0; // type:object size:0x8 data:float +lbl_801D4FD8 = .sdata2:0x801D4FD8; // type:object size:0x4 +lbl_801D4FDC = .sdata2:0x801D4FDC; // type:object size:0x4 data:float +lbl_801D4FE0 = .sdata2:0x801D4FE0; // type:object size:0x4 data:float +lbl_801D4FE8 = .sdata2:0x801D4FE8; // type:object size:0x8 data:double +lbl_801D4FF0 = .sdata2:0x801D4FF0; // type:object size:0x8 data:double +lbl_801D4FF8 = .sdata2:0x801D4FF8; // type:object size:0x8 data:double +lbl_801D5000 = .sdata2:0x801D5000; // type:object size:0x4 data:float +lbl_801D5004 = .sdata2:0x801D5004; // type:object size:0x4 data:float +lbl_801D5008 = .sdata2:0x801D5008; // type:object size:0x8 data:float +lbl_801D5010 = .sdata2:0x801D5010; // type:object size:0x4 data:float +lbl_801D5014 = .sdata2:0x801D5014; // type:object size:0x4 data:float +lbl_801D5018 = .sdata2:0x801D5018; // type:object size:0x4 data:float +lbl_801D5020 = .sdata2:0x801D5020; // type:object size:0x8 data:double +lbl_801D5028 = .sdata2:0x801D5028; // type:object size:0x8 data:double +lbl_801D5030 = .sdata2:0x801D5030; // type:object size:0x4 data:float +lbl_801D5034 = .sdata2:0x801D5034; // type:object size:0x4 data:float +lbl_801D5038 = .sdata2:0x801D5038; // type:object size:0x4 data:float +lbl_801D503C = .sdata2:0x801D503C; // type:object size:0x4 data:float +lbl_801D5040 = .sdata2:0x801D5040; // type:object size:0x4 data:float +lbl_801D5044 = .sdata2:0x801D5044; // type:object size:0x4 data:float +lbl_801D5048 = .sdata2:0x801D5048; // type:object size:0x4 data:float +lbl_801D504C = .sdata2:0x801D504C; // type:object size:0x4 data:float +lbl_801D5050 = .sdata2:0x801D5050; // type:object size:0x4 data:float +lbl_801D5054 = .sdata2:0x801D5054; // type:object size:0x4 data:float +lbl_801D5058 = .sdata2:0x801D5058; // type:object size:0x4 data:float +lbl_801D505C = .sdata2:0x801D505C; // type:object size:0x4 data:float +lbl_801D5060 = .sdata2:0x801D5060; // type:object size:0x4 data:float +lbl_801D5068 = .sdata2:0x801D5068; // type:object size:0x8 data:double +lbl_801D5070 = .sdata2:0x801D5070; // type:object size:0x4 data:float +lbl_801D5074 = .sdata2:0x801D5074; // type:object size:0x4 data:float +lbl_801D5078 = .sdata2:0x801D5078; // type:object size:0x8 data:float +lbl_801D5080 = .sdata2:0x801D5080; // type:object size:0x1 data:byte +lbl_801D5081 = .sdata2:0x801D5081; // type:object size:0x1 data:byte +lbl_801D5082 = .sdata2:0x801D5082; // type:object size:0x1 data:byte +lbl_801D5083 = .sdata2:0x801D5083; // type:object size:0x1 data:byte +lbl_801D5084 = .sdata2:0x801D5084; // type:object size:0x1 data:byte +lbl_801D5085 = .sdata2:0x801D5085; // type:object size:0x1 data:byte +lbl_801D5086 = .sdata2:0x801D5086; // type:object size:0x1 data:byte +lbl_801D5087 = .sdata2:0x801D5087; // type:object size:0x1 data:byte +lbl_801D5088 = .sdata2:0x801D5088; // type:object size:0x4 data:float +lbl_801D508C = .sdata2:0x801D508C; // type:object size:0x4 data:float +lbl_801D5090 = .sdata2:0x801D5090; // type:object size:0x8 data:double +lbl_801D5098 = .sdata2:0x801D5098; // type:object size:0x8 data:double +lbl_801D50A0 = .sdata2:0x801D50A0; // type:object size:0x8 data:double +lbl_801D50A8 = .sdata2:0x801D50A8; // type:object size:0x4 data:float +lbl_801D50B0 = .sdata2:0x801D50B0; // type:object size:0x8 data:double +lbl_801D50B8 = .sdata2:0x801D50B8; // type:object size:0x4 data:float +lbl_801D50BC = .sdata2:0x801D50BC; // type:object size:0x4 data:float +lbl_801D50C0 = .sdata2:0x801D50C0; // type:object size:0x4 data:float +lbl_801D50C4 = .sdata2:0x801D50C4; // type:object size:0x4 data:float +lbl_801D50C8 = .sdata2:0x801D50C8; // type:object size:0x4 data:float +lbl_801D50CC = .sdata2:0x801D50CC; // type:object size:0x4 data:float +lbl_801D50D0 = .sdata2:0x801D50D0; // type:object size:0x4 data:float +lbl_801D50D4 = .sdata2:0x801D50D4; // type:object size:0x1 data:byte +lbl_801D50D5 = .sdata2:0x801D50D5; // type:object size:0x1 data:byte +lbl_801D50D6 = .sdata2:0x801D50D6; // type:object size:0x1 data:byte +lbl_801D50D7 = .sdata2:0x801D50D7; // type:object size:0x1 data:byte +lbl_801D50D8 = .sdata2:0x801D50D8; // type:object size:0x4 data:float +lbl_801D50DC = .sdata2:0x801D50DC; // type:object size:0x4 data:float +lbl_801D50E0 = .sdata2:0x801D50E0; // type:object size:0x4 data:float +lbl_801D50E4 = .sdata2:0x801D50E4; // type:object size:0x4 data:float +lbl_801D50E8 = .sdata2:0x801D50E8; // type:object size:0x4 data:float +lbl_801D50EC = .sdata2:0x801D50EC; // type:object size:0x4 data:float +lbl_801D50F0 = .sdata2:0x801D50F0; // type:object size:0x4 data:float +lbl_801D50F4 = .sdata2:0x801D50F4; // type:object size:0x4 data:float +lbl_801D50F8 = .sdata2:0x801D50F8; // type:object size:0x4 data:float +lbl_801D50FC = .sdata2:0x801D50FC; // type:object size:0x4 data:float +lbl_801D5100 = .sdata2:0x801D5100; // type:object size:0x4 data:4byte +lbl_801D5104 = .sdata2:0x801D5104; // type:object size:0x4 data:4byte +lbl_801D5108 = .sdata2:0x801D5108; // type:object size:0x4 data:float +lbl_801D5110 = .sdata2:0x801D5110; // type:object size:0x8 data:double +lbl_801D5118 = .sdata2:0x801D5118; // type:object size:0x8 data:double +lbl_801D5120 = .sdata2:0x801D5120; // type:object size:0x4 data:float +lbl_801D5124 = .sdata2:0x801D5124; // type:object size:0x4 data:float +lbl_801D5128 = .sdata2:0x801D5128; // type:object size:0x4 data:float +lbl_801D512C = .sdata2:0x801D512C; // type:object size:0x4 data:float +lbl_801D5130 = .sdata2:0x801D5130; // type:object size:0x4 data:float +lbl_801D5134 = .sdata2:0x801D5134; // type:object size:0x4 data:float +lbl_801D5138 = .sdata2:0x801D5138; // type:object size:0x4 data:float +lbl_801D513C = .sdata2:0x801D513C; // type:object size:0x4 data:float +lbl_801D5140 = .sdata2:0x801D5140; // type:object size:0x4 data:float +lbl_801D5144 = .sdata2:0x801D5144; // type:object size:0x4 data:float +lbl_801D5148 = .sdata2:0x801D5148; // type:object size:0x4 data:float +lbl_801D514C = .sdata2:0x801D514C; // type:object size:0x4 data:float +lbl_801D5150 = .sdata2:0x801D5150; // type:object size:0x4 data:float +lbl_801D5154 = .sdata2:0x801D5154; // type:object size:0x4 data:float +lbl_801D5158 = .sdata2:0x801D5158; // type:object size:0x4 data:float +lbl_801D515C = .sdata2:0x801D515C; // type:object size:0x4 data:float +lbl_801D5160 = .sdata2:0x801D5160; // type:object size:0x4 data:float +lbl_801D5168 = .sdata2:0x801D5168; // type:object size:0x8 data:double +lbl_801D5170 = .sdata2:0x801D5170; // type:object size:0x4 data:float +lbl_801D5174 = .sdata2:0x801D5174; // type:object size:0x4 data:float +lbl_801D5178 = .sdata2:0x801D5178; // type:object size:0x4 data:float +lbl_801D517C = .sdata2:0x801D517C; // type:object size:0x4 data:float +lbl_801D5180 = .sdata2:0x801D5180; // type:object size:0x4 data:float +lbl_801D5184 = .sdata2:0x801D5184; // type:object size:0x4 data:float +lbl_801D5188 = .sdata2:0x801D5188; // type:object size:0x4 data:float +lbl_801D518C = .sdata2:0x801D518C; // type:object size:0x4 data:float +lbl_801D5190 = .sdata2:0x801D5190; // type:object size:0x4 data:float +lbl_801D5194 = .sdata2:0x801D5194; // type:object size:0x4 data:float +lbl_801D5198 = .sdata2:0x801D5198; // type:object size:0x4 data:float +lbl_801D519C = .sdata2:0x801D519C; // type:object size:0x4 data:float +lbl_801D51A0 = .sdata2:0x801D51A0; // type:object size:0x4 data:float +lbl_801D51A8 = .sdata2:0x801D51A8; // type:object size:0x8 data:double +lbl_801D51B0 = .sdata2:0x801D51B0; // type:object size:0x4 data:float +lbl_801D51B4 = .sdata2:0x801D51B4; // type:object size:0x4 data:float +lbl_801D51B8 = .sdata2:0x801D51B8; // type:object size:0x4 data:float +lbl_801D51C0 = .sdata2:0x801D51C0; // type:object size:0x8 data:double +lbl_801D51C8 = .sdata2:0x801D51C8; // type:object size:0x8 data:float +lbl_801D51D0 = .sdata2:0x801D51D0; // type:object size:0x4 data:float +lbl_801D51D4 = .sdata2:0x801D51D4; // type:object size:0x4 data:4byte +lbl_801D51D8 = .sdata2:0x801D51D8; // type:object size:0x4 data:4byte +lbl_801D51DC = .sdata2:0x801D51DC; // type:object size:0x4 data:float +lbl_801D51E0 = .sdata2:0x801D51E0; // type:object size:0x4 data:float +lbl_801D51E8 = .sdata2:0x801D51E8; // type:object size:0x8 data:double +lbl_801D51F0 = .sdata2:0x801D51F0; // type:object size:0x8 data:double +lbl_801D51F8 = .sdata2:0x801D51F8; // type:object size:0x4 data:float +lbl_801D51FC = .sdata2:0x801D51FC; // type:object size:0x4 data:float +lbl_801D5200 = .sdata2:0x801D5200; // type:object size:0x4 data:float +lbl_801D5204 = .sdata2:0x801D5204; // type:object size:0x4 data:float +lbl_801D5208 = .sdata2:0x801D5208; // type:object size:0x8 data:double +lbl_801D5210 = .sdata2:0x801D5210; // type:object size:0x4 data:float +lbl_801D5214 = .sdata2:0x801D5214; // type:object size:0x4 data:float +lbl_801D5218 = .sdata2:0x801D5218; // type:object size:0x4 data:float +lbl_801D521C = .sdata2:0x801D521C; // type:object size:0x4 data:float +lbl_801D5220 = .sdata2:0x801D5220; // type:object size:0x4 data:float +lbl_801D5224 = .sdata2:0x801D5224; // type:object size:0x4 data:float +lbl_801D5228 = .sdata2:0x801D5228; // type:object size:0x4 data:float +lbl_801D522C = .sdata2:0x801D522C; // type:object size:0x4 data:float +lbl_801D5230 = .sdata2:0x801D5230; // type:object size:0x4 data:float +lbl_801D5234 = .sdata2:0x801D5234; // type:object size:0x4 data:float +lbl_801D5238 = .sdata2:0x801D5238; // type:object size:0x4 data:float +lbl_801D523C = .sdata2:0x801D523C; // type:object size:0x4 data:float +lbl_801D5240 = .sdata2:0x801D5240; // type:object size:0x4 data:float +lbl_801D5244 = .sdata2:0x801D5244; // type:object size:0x4 data:4byte +lbl_801D5248 = .sdata2:0x801D5248; // type:object size:0x4 data:4byte +lbl_801D524C = .sdata2:0x801D524C; // type:object size:0x2 data:2byte +lbl_801D524E = .sdata2:0x801D524E; // type:object size:0x2 data:2byte +lbl_801D5250 = .sdata2:0x801D5250; // type:object size:0x2 data:2byte +lbl_801D5252 = .sdata2:0x801D5252; // type:object size:0x2 data:2byte +lbl_801D5254 = .sdata2:0x801D5254; // type:object size:0x4 data:float +lbl_801D5258 = .sdata2:0x801D5258; // type:object size:0x4 data:float +lbl_801D525C = .sdata2:0x801D525C; // type:object size:0x4 data:float +lbl_801D5260 = .sdata2:0x801D5260; // type:object size:0x4 data:float +lbl_801D5264 = .sdata2:0x801D5264; // type:object size:0x4 data:float +lbl_801D5268 = .sdata2:0x801D5268; // type:object size:0x4 data:float +lbl_801D526C = .sdata2:0x801D526C; // type:object size:0x4 data:float +lbl_801D5270 = .sdata2:0x801D5270; // type:object size:0x4 data:float +lbl_801D5274 = .sdata2:0x801D5274; // type:object size:0x4 data:float +lbl_801D5278 = .sdata2:0x801D5278; // type:object size:0x4 data:float +lbl_801D527C = .sdata2:0x801D527C; // type:object size:0x4 data:float +lbl_801D5280 = .sdata2:0x801D5280; // type:object size:0x4 data:float +lbl_801D5284 = .sdata2:0x801D5284; // type:object size:0x4 data:float +lbl_801D5288 = .sdata2:0x801D5288; // type:object size:0x4 data:float +lbl_801D528C = .sdata2:0x801D528C; // type:object size:0x4 data:float +lbl_801D5290 = .sdata2:0x801D5290; // type:object size:0x4 data:float +lbl_801D5294 = .sdata2:0x801D5294; // type:object size:0x4 data:float +lbl_801D5298 = .sdata2:0x801D5298; // type:object size:0x4 data:float +lbl_801D529C = .sdata2:0x801D529C; // type:object size:0x4 data:float +lbl_801D52A0 = .sdata2:0x801D52A0; // type:object size:0x4 data:float +lbl_801D52A4 = .sdata2:0x801D52A4; // type:object size:0x4 data:float +lbl_801D52A8 = .sdata2:0x801D52A8; // type:object size:0x4 data:float +lbl_801D52AC = .sdata2:0x801D52AC; // type:object size:0x4 data:float +lbl_801D52B0 = .sdata2:0x801D52B0; // type:object size:0x4 data:float +lbl_801D52B4 = .sdata2:0x801D52B4; // type:object size:0x4 data:float +lbl_801D52B8 = .sdata2:0x801D52B8; // type:object size:0x4 data:float +lbl_801D52BC = .sdata2:0x801D52BC; // type:object size:0x4 data:float +lbl_801D52C0 = .sdata2:0x801D52C0; // type:object size:0x4 data:float +lbl_801D52C4 = .sdata2:0x801D52C4; // type:object size:0x4 data:float +lbl_801D52C8 = .sdata2:0x801D52C8; // type:object size:0x4 data:float +lbl_801D52CC = .sdata2:0x801D52CC; // type:object size:0x4 data:float +lbl_801D52D0 = .sdata2:0x801D52D0; // type:object size:0x4 data:float +lbl_801D52D4 = .sdata2:0x801D52D4; // type:object size:0x4 data:float +lbl_801D52D8 = .sdata2:0x801D52D8; // type:object size:0x4 data:float +lbl_801D52DC = .sdata2:0x801D52DC; // type:object size:0x4 data:float +lbl_801D52E0 = .sdata2:0x801D52E0; // type:object size:0x4 data:float +lbl_801D52E4 = .sdata2:0x801D52E4; // type:object size:0x4 data:float +lbl_801D52E8 = .sdata2:0x801D52E8; // type:object size:0x8 data:double +lbl_801D52F0 = .sdata2:0x801D52F0; // type:object size:0x8 data:double +lbl_801D52F8 = .sdata2:0x801D52F8; // type:object size:0x4 data:float +lbl_801D52FC = .sdata2:0x801D52FC; // type:object size:0x4 data:float +lbl_801D5300 = .sdata2:0x801D5300; // type:object size:0x4 data:float +lbl_801D5304 = .sdata2:0x801D5304; // type:object size:0x4 data:float +lbl_801D5308 = .sdata2:0x801D5308; // type:object size:0x4 data:float +lbl_801D530C = .sdata2:0x801D530C; // type:object size:0x4 data:float +lbl_801D5310 = .sdata2:0x801D5310; // type:object size:0x4 data:float +lbl_801D5314 = .sdata2:0x801D5314; // type:object size:0x4 data:float +lbl_801D5318 = .sdata2:0x801D5318; // type:object size:0x4 data:float +lbl_801D531C = .sdata2:0x801D531C; // type:object size:0x4 data:float +lbl_801D5320 = .sdata2:0x801D5320; // type:object size:0x4 data:float +lbl_801D5324 = .sdata2:0x801D5324; // type:object size:0x4 data:float +lbl_801D5328 = .sdata2:0x801D5328; // type:object size:0x8 data:double +lbl_801D5330 = .sdata2:0x801D5330; // type:object size:0x4 data:4byte +lbl_801D5334 = .sdata2:0x801D5334; // type:object size:0x4 data:4byte +lbl_801D5338 = .sdata2:0x801D5338; // type:object size:0x1 data:byte +lbl_801D5339 = .sdata2:0x801D5339; // type:object size:0x1 data:byte +lbl_801D533C = .sdata2:0x801D533C; // type:object size:0x4 data:float +lbl_801D5340 = .sdata2:0x801D5340; // type:object size:0x4 data:float +lbl_801D5344 = .sdata2:0x801D5344; // type:object size:0x4 data:float +lbl_801D5348 = .sdata2:0x801D5348; // type:object size:0x4 data:float +lbl_801D534C = .sdata2:0x801D534C; // type:object size:0x4 data:float +lbl_801D5350 = .sdata2:0x801D5350; // type:object size:0x4 data:float +lbl_801D5354 = .sdata2:0x801D5354; // type:object size:0x4 data:float +lbl_801D5358 = .sdata2:0x801D5358; // type:object size:0x8 data:float +lbl_801D5360 = .sdata2:0x801D5360; // type:object size:0x4 data:float +lbl_801D5364 = .sdata2:0x801D5364; // type:object size:0x4 data:float +lbl_801D5368 = .sdata2:0x801D5368; // type:object size:0x4 data:float +lbl_801D536C = .sdata2:0x801D536C; // type:object size:0x4 data:float +lbl_801D5370 = .sdata2:0x801D5370; // type:object size:0x8 +lbl_801D5378 = .sdata2:0x801D5378; // type:object size:0x4 data:float +lbl_801D537C = .sdata2:0x801D537C; // type:object size:0x4 data:float +lbl_801D5380 = .sdata2:0x801D5380; // type:object size:0x4 data:float +lbl_801D5388 = .sdata2:0x801D5388; // type:object size:0x8 data:double +lbl_801D5390 = .sdata2:0x801D5390; // type:object size:0x8 data:double +lbl_801D5398 = .sdata2:0x801D5398; // type:object size:0x4 data:float +lbl_801D539C = .sdata2:0x801D539C; // type:object size:0x4 data:float +lbl_801D53A0 = .sdata2:0x801D53A0; // type:object size:0x4 data:float +lbl_801D53A8 = .sdata2:0x801D53A8; // type:object size:0x8 data:double +lbl_801D53B0 = .sdata2:0x801D53B0; // type:object size:0x4 data:float +lbl_801D53B4 = .sdata2:0x801D53B4; // type:object size:0x4 data:float +lbl_801D53B8 = .sdata2:0x801D53B8; // type:object size:0x4 data:float +lbl_801D53BC = .sdata2:0x801D53BC; // type:object size:0x4 data:float +lbl_801D53C0 = .sdata2:0x801D53C0; // type:object size:0x4 data:float +lbl_801D53C4 = .sdata2:0x801D53C4; // type:object size:0x4 data:float +lbl_801D53C8 = .sdata2:0x801D53C8; // type:object size:0x4 data:float +lbl_801D53CC = .sdata2:0x801D53CC; // type:object size:0x4 data:float +lbl_801D53D0 = .sdata2:0x801D53D0; // type:object size:0x8 data:double +lbl_801D53D8 = .sdata2:0x801D53D8; // type:object size:0x8 data:double +lbl_801D53E0 = .sdata2:0x801D53E0; // type:object size:0x4 data:float +lbl_801D53E8 = .sdata2:0x801D53E8; // type:object size:0x8 data:double +lbl_801D53F0 = .sdata2:0x801D53F0; // type:object size:0x4 data:float +lbl_801D53F4 = .sdata2:0x801D53F4; // type:object size:0x4 data:float +lbl_801D53F8 = .sdata2:0x801D53F8; // type:object size:0x4 data:float +lbl_801D53FC = .sdata2:0x801D53FC; // type:object size:0x4 data:float +lbl_801D5400 = .sdata2:0x801D5400; // type:object size:0x4 data:float +lbl_801D5404 = .sdata2:0x801D5404; // type:object size:0x4 data:float +lbl_801D5408 = .sdata2:0x801D5408; // type:object size:0x4 data:float +lbl_801D540C = .sdata2:0x801D540C; // type:object size:0x4 data:float +lbl_801D5410 = .sdata2:0x801D5410; // type:object size:0x4 data:float +lbl_801D5414 = .sdata2:0x801D5414; // type:object size:0x4 data:float +lbl_801D5418 = .sdata2:0x801D5418; // type:object size:0x4 data:float +lbl_801D541C = .sdata2:0x801D541C; // type:object size:0x4 data:float +lbl_801D5420 = .sdata2:0x801D5420; // type:object size:0x4 data:float +lbl_801D5428 = .sdata2:0x801D5428; // type:object size:0x8 data:double +lbl_801D5430 = .sdata2:0x801D5430; // type:object size:0x8 data:double +lbl_801D5438 = .sdata2:0x801D5438; // type:object size:0x8 data:float +lbl_801D5440 = .sdata2:0x801D5440; // type:object size:0x4 data:float +lbl_801D5444 = .sdata2:0x801D5444; // type:object size:0x4 data:float +lbl_801D5448 = .sdata2:0x801D5448; // type:object size:0x4 data:float +lbl_801D544C = .sdata2:0x801D544C; // type:object size:0x4 data:float +lbl_801D5450 = .sdata2:0x801D5450; // type:object size:0x4 data:float +lbl_801D5454 = .sdata2:0x801D5454; // type:object size:0x4 data:float +lbl_801D5458 = .sdata2:0x801D5458; // type:object size:0x4 data:float +lbl_801D545C = .sdata2:0x801D545C; // type:object size:0x4 data:float +lbl_801D5460 = .sdata2:0x801D5460; // type:object size:0x4 data:float +lbl_801D5464 = .sdata2:0x801D5464; // type:object size:0x4 data:float +lbl_801D5468 = .sdata2:0x801D5468; // type:object size:0x4 data:float +lbl_801D546C = .sdata2:0x801D546C; // type:object size:0x4 data:float +lbl_801D5470 = .sdata2:0x801D5470; // type:object size:0x4 data:float +lbl_801D5474 = .sdata2:0x801D5474; // type:object size:0x4 data:float +lbl_801D5478 = .sdata2:0x801D5478; // type:object size:0x4 data:float +lbl_801D547C = .sdata2:0x801D547C; // type:object size:0x4 data:float +lbl_801D5480 = .sdata2:0x801D5480; // type:object size:0x8 data:double +lbl_801D5488 = .sdata2:0x801D5488; // type:object size:0x4 data:float +lbl_801D548C = .sdata2:0x801D548C; // type:object size:0x4 data:float +lbl_801D5490 = .sdata2:0x801D5490; // type:object size:0x4 data:float +lbl_801D5494 = .sdata2:0x801D5494; // type:object size:0x4 data:float +lbl_801D5498 = .sdata2:0x801D5498; // type:object size:0x4 data:float +lbl_801D549C = .sdata2:0x801D549C; // type:object size:0x4 data:float +lbl_801D54A0 = .sdata2:0x801D54A0; // type:object size:0x4 data:float +lbl_801D54A4 = .sdata2:0x801D54A4; // type:object size:0x4 data:float +lbl_801D54A8 = .sdata2:0x801D54A8; // type:object size:0x8 data:double +lbl_801D54B0 = .sdata2:0x801D54B0; // type:object size:0x8 data:double +lbl_801D54B8 = .sdata2:0x801D54B8; // type:object size:0x4 data:float +lbl_801D54C0 = .sdata2:0x801D54C0; // type:object size:0x8 data:double +lbl_801D54C8 = .sdata2:0x801D54C8; // type:object size:0x8 data:float +lbl_801D54D0 = .sdata2:0x801D54D0; // type:object size:0x8 +lbl_801D54D8 = .sdata2:0x801D54D8; // type:object size:0x4 data:float +lbl_801D54DC = .sdata2:0x801D54DC; // type:object size:0x4 data:float +lbl_801D54E0 = .sdata2:0x801D54E0; // type:object size:0x4 data:float +lbl_801D54E4 = .sdata2:0x801D54E4; // type:object size:0x4 data:float +lbl_801D54E8 = .sdata2:0x801D54E8; // type:object size:0x4 data:float +lbl_801D54EC = .sdata2:0x801D54EC; // type:object size:0x4 data:float +lbl_801D54F0 = .sdata2:0x801D54F0; // type:object size:0x8 data:double +lbl_801D54F8 = .sdata2:0x801D54F8; // type:object size:0x8 data:double +lbl_801D5500 = .sdata2:0x801D5500; // type:object size:0x8 data:double +lbl_801D5508 = .sdata2:0x801D5508; // type:object size:0x4 data:float +lbl_801D550C = .sdata2:0x801D550C; // type:object size:0x4 data:float +lbl_801D5510 = .sdata2:0x801D5510; // type:object size:0x4 data:float +lbl_801D5514 = .sdata2:0x801D5514; // type:object size:0x4 data:4byte +lbl_801D5518 = .sdata2:0x801D5518; // type:object size:0x4 data:4byte +lbl_801D551C = .sdata2:0x801D551C; // type:object size:0x4 data:float +lbl_801D5520 = .sdata2:0x801D5520; // type:object size:0x4 data:float +lbl_801D5524 = .sdata2:0x801D5524; // type:object size:0x4 data:float +lbl_801D5528 = .sdata2:0x801D5528; // type:object size:0x4 data:float +lbl_801D552C = .sdata2:0x801D552C; // type:object size:0x4 data:4byte +lbl_801D5530 = .sdata2:0x801D5530; // type:object size:0x4 data:4byte +lbl_801D5534 = .sdata2:0x801D5534; // type:object size:0x4 data:float +lbl_801D5538 = .sdata2:0x801D5538; // type:object size:0x4 data:float +lbl_801D553C = .sdata2:0x801D553C; // type:object size:0x4 data:float +lbl_801D5540 = .sdata2:0x801D5540; // type:object size:0x4 data:float +lbl_801D5544 = .sdata2:0x801D5544; // type:object size:0x4 data:float +lbl_801D5548 = .sdata2:0x801D5548; // type:object size:0x8 data:double +lbl_801D5550 = .sdata2:0x801D5550; // type:object size:0x4 data:float +lbl_801D5558 = .sdata2:0x801D5558; // type:object size:0x8 data:double +lbl_801D5560 = .sdata2:0x801D5560; // type:object size:0x8 data:double +lbl_801D5568 = .sdata2:0x801D5568; // type:object size:0x8 data:double +lbl_801D5570 = .sdata2:0x801D5570; // type:object size:0x4 data:float +lbl_801D5574 = .sdata2:0x801D5574; // type:object size:0x4 data:float +lbl_801D5578 = .sdata2:0x801D5578; // type:object size:0x4 data:float +lbl_801D557C = .sdata2:0x801D557C; // type:object size:0x4 data:float +lbl_801D5580 = .sdata2:0x801D5580; // type:object size:0x4 data:float +lbl_801D5584 = .sdata2:0x801D5584; // type:object size:0x4 data:float +lbl_801D5588 = .sdata2:0x801D5588; // type:object size:0x4 data:float +lbl_801D558C = .sdata2:0x801D558C; // type:object size:0x4 data:float +lbl_801D5590 = .sdata2:0x801D5590; // type:object size:0x4 data:float +lbl_801D5594 = .sdata2:0x801D5594; // type:object size:0x4 data:float +lbl_801D5598 = .sdata2:0x801D5598; // type:object size:0x4 data:float +lbl_801D55A0 = .sdata2:0x801D55A0; // type:object size:0x8 data:double +lbl_801D55A8 = .sdata2:0x801D55A8; // type:object size:0x4 data:float +lbl_801D55AC = .sdata2:0x801D55AC; // type:object size:0x4 data:float +lbl_801D55B0 = .sdata2:0x801D55B0; // type:object size:0x4 data:float +lbl_801D55B4 = .sdata2:0x801D55B4; // type:object size:0x4 data:float +lbl_801D55B8 = .sdata2:0x801D55B8; // type:object size:0x4 data:float +lbl_801D55BC = .sdata2:0x801D55BC; // type:object size:0x4 data:float +lbl_801D55C0 = .sdata2:0x801D55C0; // type:object size:0x4 data:float +lbl_801D55C4 = .sdata2:0x801D55C4; // type:object size:0x4 data:float +lbl_801D55C8 = .sdata2:0x801D55C8; // type:object size:0x4 data:float +lbl_801D55CC = .sdata2:0x801D55CC; // type:object size:0x4 data:float +lbl_801D55D0 = .sdata2:0x801D55D0; // type:object size:0x4 data:float +lbl_801D55D4 = .sdata2:0x801D55D4; // type:object size:0x4 data:float +lbl_801D55D8 = .sdata2:0x801D55D8; // type:object size:0x4 data:float +lbl_801D55DC = .sdata2:0x801D55DC; // type:object size:0x4 data:float +lbl_801D55E0 = .sdata2:0x801D55E0; // type:object size:0x4 data:float +lbl_801D55E4 = .sdata2:0x801D55E4; // type:object size:0x4 data:float +lbl_801D55E8 = .sdata2:0x801D55E8; // type:object size:0x4 data:float +lbl_801D55EC = .sdata2:0x801D55EC; // type:object size:0x4 data:float +lbl_801D55F0 = .sdata2:0x801D55F0; // type:object size:0x8 data:float +lbl_801D55F8 = .sdata2:0x801D55F8; // type:object size:0x4 data:float +lbl_801D55FC = .sdata2:0x801D55FC; // type:object size:0x4 data:float +lbl_801D5600 = .sdata2:0x801D5600; // type:object size:0x4 data:float +lbl_801D5604 = .sdata2:0x801D5604; // type:object size:0x4 data:float +lbl_801D5608 = .sdata2:0x801D5608; // type:object size:0x4 data:float +lbl_801D560C = .sdata2:0x801D560C; // type:object size:0x4 data:float +lbl_801D5610 = .sdata2:0x801D5610; // type:object size:0x4 data:float +lbl_801D5614 = .sdata2:0x801D5614; // type:object size:0x4 data:float +lbl_801D5618 = .sdata2:0x801D5618; // type:object size:0x4 data:float +lbl_801D561C = .sdata2:0x801D561C; // type:object size:0x4 data:float +lbl_801D5620 = .sdata2:0x801D5620; // type:object size:0x4 data:float +lbl_801D5624 = .sdata2:0x801D5624; // type:object size:0x4 data:float +lbl_801D5628 = .sdata2:0x801D5628; // type:object size:0x8 data:double +lbl_801D5630 = .sdata2:0x801D5630; // type:object size:0x8 data:double +lbl_801D5638 = .sdata2:0x801D5638; // type:object size:0x4 data:float +lbl_801D5640 = .sdata2:0x801D5640; // type:object size:0x8 data:double +lbl_801D5648 = .sdata2:0x801D5648; // type:object size:0x8 data:double +lbl_801D5650 = .sdata2:0x801D5650; // type:object size:0x8 data:double +lbl_801D5658 = .sdata2:0x801D5658; // type:object size:0x4 data:float +lbl_801D5660 = .sdata2:0x801D5660; // type:object size:0x8 data:double +lbl_801D5668 = .sdata2:0x801D5668; // type:object size:0x4 data:float +lbl_801D566C = .sdata2:0x801D566C; // type:object size:0x4 data:float +lbl_801D5670 = .sdata2:0x801D5670; // type:object size:0x4 data:float +lbl_801D5674 = .sdata2:0x801D5674; // type:object size:0x4 data:float +lbl_801D5678 = .sdata2:0x801D5678; // type:object size:0x4 data:float +lbl_801D567C = .sdata2:0x801D567C; // type:object size:0x4 data:float +lbl_801D5680 = .sdata2:0x801D5680; // type:object size:0x4 data:float +lbl_801D5684 = .sdata2:0x801D5684; // type:object size:0x4 data:float +lbl_801D5688 = .sdata2:0x801D5688; // type:object size:0x4 data:float +lbl_801D568C = .sdata2:0x801D568C; // type:object size:0x4 data:float +lbl_801D5690 = .sdata2:0x801D5690; // type:object size:0x4 data:float +lbl_801D5694 = .sdata2:0x801D5694; // type:object size:0x4 data:float +lbl_801D5698 = .sdata2:0x801D5698; // type:object size:0x8 data:float +lbl_801D56A0 = .sdata2:0x801D56A0; // type:object size:0x4 data:float +lbl_801D56A4 = .sdata2:0x801D56A4; // type:object size:0x4 data:float +lbl_801D56A8 = .sdata2:0x801D56A8; // type:object size:0x4 data:float +lbl_801D56AC = .sdata2:0x801D56AC; // type:object size:0x4 data:float +lbl_801D56B0 = .sdata2:0x801D56B0; // type:object size:0x4 data:float +lbl_801D56B4 = .sdata2:0x801D56B4; // type:object size:0x4 data:float +lbl_801D56B8 = .sdata2:0x801D56B8; // type:object size:0x4 data:float +lbl_801D56BC = .sdata2:0x801D56BC; // type:object size:0x4 data:float +lbl_801D56C0 = .sdata2:0x801D56C0; // type:object size:0x4 data:float +lbl_801D56C8 = .sdata2:0x801D56C8; // type:object size:0x8 data:double +lbl_801D56D0 = .sdata2:0x801D56D0; // type:object size:0x8 data:double +lbl_801D56D8 = .sdata2:0x801D56D8; // type:object size:0x8 data:double +lbl_801D56E0 = .sdata2:0x801D56E0; // type:object size:0x4 data:float +lbl_801D56E4 = .sdata2:0x801D56E4; // type:object size:0x4 data:float +lbl_801D56E8 = .sdata2:0x801D56E8; // type:object size:0x4 data:float +lbl_801D56EC = .sdata2:0x801D56EC; // type:object size:0x4 data:float +lbl_801D56F0 = .sdata2:0x801D56F0; // type:object size:0x8 data:double +lbl_801D56F8 = .sdata2:0x801D56F8; // type:object size:0x8 data:double +lbl_801D5700 = .sdata2:0x801D5700; // type:object size:0x4 data:float +lbl_801D5704 = .sdata2:0x801D5704; // type:object size:0x4 data:float +lbl_801D5708 = .sdata2:0x801D5708; // type:object size:0x4 data:float +lbl_801D570C = .sdata2:0x801D570C; // type:object size:0x4 data:float +lbl_801D5710 = .sdata2:0x801D5710; // type:object size:0x4 data:float +lbl_801D5714 = .sdata2:0x801D5714; // type:object size:0x4 data:float +lbl_801D5718 = .sdata2:0x801D5718; // type:object size:0x4 data:float +lbl_801D5720 = .sdata2:0x801D5720; // type:object size:0x8 data:double +lbl_801D5728 = .sdata2:0x801D5728; // type:object size:0x4 data:float +lbl_801D572C = .sdata2:0x801D572C; // type:object size:0x4 data:float +lbl_801D5730 = .sdata2:0x801D5730; // type:object size:0x4 data:float +lbl_801D5734 = .sdata2:0x801D5734; // type:object size:0x4 data:float +lbl_801D5738 = .sdata2:0x801D5738; // type:object size:0x4 data:float +lbl_801D573C = .sdata2:0x801D573C; // type:object size:0x4 data:float +lbl_801D5740 = .sdata2:0x801D5740; // type:object size:0x4 data:float +lbl_801D5744 = .sdata2:0x801D5744; // type:object size:0x4 data:float +lbl_801D5748 = .sdata2:0x801D5748; // type:object size:0x4 data:float +lbl_801D574C = .sdata2:0x801D574C; // type:object size:0x4 data:float +lbl_801D5750 = .sdata2:0x801D5750; // type:object size:0x4 data:float +lbl_801D5754 = .sdata2:0x801D5754; // type:object size:0x4 data:float +lbl_801D5758 = .sdata2:0x801D5758; // type:object size:0x4 data:float +lbl_801D575C = .sdata2:0x801D575C; // type:object size:0x4 data:float +lbl_801D5760 = .sdata2:0x801D5760; // type:object size:0x8 data:float +lbl_801D5768 = .sdata2:0x801D5768; // type:object size:0x4 data:float +lbl_801D576C = .sdata2:0x801D576C; // type:object size:0x4 data:float +lbl_801D5770 = .sdata2:0x801D5770; // type:object size:0x4 data:float +lbl_801D5774 = .sdata2:0x801D5774; // type:object size:0x4 data:float +lbl_801D5778 = .sdata2:0x801D5778; // type:object size:0x4 data:float +lbl_801D577C = .sdata2:0x801D577C; // type:object size:0x4 data:float +lbl_801D5780 = .sdata2:0x801D5780; // type:object size:0x4 data:float +lbl_801D5784 = .sdata2:0x801D5784; // type:object size:0x4 data:float +lbl_801D5788 = .sdata2:0x801D5788; // type:object size:0x4 data:float +lbl_801D578C = .sdata2:0x801D578C; // type:object size:0x4 data:float +lbl_801D5790 = .sdata2:0x801D5790; // type:object size:0x4 data:float +lbl_801D5794 = .sdata2:0x801D5794; // type:object size:0x4 data:float +lbl_801D5798 = .sdata2:0x801D5798; // type:object size:0x8 data:double +lbl_801D57A0 = .sdata2:0x801D57A0; // type:object size:0x8 data:double +lbl_801D57A8 = .sdata2:0x801D57A8; // type:object size:0x8 data:double +lbl_801D57B0 = .sdata2:0x801D57B0; // type:object size:0x4 data:float +lbl_801D57B4 = .sdata2:0x801D57B4; // type:object size:0x4 data:float +lbl_801D57B8 = .sdata2:0x801D57B8; // type:object size:0x4 data:float +lbl_801D57BC = .sdata2:0x801D57BC; // type:object size:0x4 data:float +lbl_801D57C0 = .sdata2:0x801D57C0; // type:object size:0x4 data:float +lbl_801D57C4 = .sdata2:0x801D57C4; // type:object size:0x4 data:float +lbl_801D57C8 = .sdata2:0x801D57C8; // type:object size:0x4 data:float +lbl_801D57D0 = .sdata2:0x801D57D0; // type:object size:0x8 data:double +lbl_801D57D8 = .sdata2:0x801D57D8; // type:object size:0x8 data:double +lbl_801D57E0 = .sdata2:0x801D57E0; // type:object size:0x8 data:double +lbl_801D57E8 = .sdata2:0x801D57E8; // type:object size:0x4 data:float +lbl_801D57EC = .sdata2:0x801D57EC; // type:object size:0x4 data:float +lbl_801D57F0 = .sdata2:0x801D57F0; // type:object size:0x4 data:float +lbl_801D57F4 = .sdata2:0x801D57F4; // type:object size:0x4 data:float +lbl_801D57F8 = .sdata2:0x801D57F8; // type:object size:0x4 data:float +lbl_801D57FC = .sdata2:0x801D57FC; // type:object size:0x4 data:float +lbl_801D5800 = .sdata2:0x801D5800; // type:object size:0x4 data:float +lbl_801D5804 = .sdata2:0x801D5804; // type:object size:0x4 data:float +lbl_801D5808 = .sdata2:0x801D5808; // type:object size:0x4 data:float +lbl_801D580C = .sdata2:0x801D580C; // type:object size:0x4 data:float +lbl_801D5810 = .sdata2:0x801D5810; // type:object size:0x8 data:double +lbl_801D5818 = .sdata2:0x801D5818; // type:object size:0x4 data:float +lbl_801D581C = .sdata2:0x801D581C; // type:object size:0x4 data:float +lbl_801D5820 = .sdata2:0x801D5820; // type:object size:0x4 data:float +lbl_801D5824 = .sdata2:0x801D5824; // type:object size:0x4 data:float +lbl_801D5828 = .sdata2:0x801D5828; // type:object size:0x4 data:float +lbl_801D582C = .sdata2:0x801D582C; // type:object size:0x4 data:float +lbl_801D5830 = .sdata2:0x801D5830; // type:object size:0x4 data:float +lbl_801D5834 = .sdata2:0x801D5834; // type:object size:0x4 data:float +lbl_801D5838 = .sdata2:0x801D5838; // type:object size:0x4 data:float +lbl_801D583C = .sdata2:0x801D583C; // type:object size:0x4 data:float +lbl_801D5840 = .sdata2:0x801D5840; // type:object size:0x4 data:float +lbl_801D5844 = .sdata2:0x801D5844; // type:object size:0x4 data:float +lbl_801D5848 = .sdata2:0x801D5848; // type:object size:0x4 data:float +lbl_801D584C = .sdata2:0x801D584C; // type:object size:0x4 data:float +lbl_801D5850 = .sdata2:0x801D5850; // type:object size:0x4 data:float +lbl_801D5854 = .sdata2:0x801D5854; // type:object size:0x4 data:float +lbl_801D5858 = .sdata2:0x801D5858; // type:object size:0x4 data:float +lbl_801D585C = .sdata2:0x801D585C; // type:object size:0x4 data:float +lbl_801D5860 = .sdata2:0x801D5860; // type:object size:0x4 data:float +lbl_801D5864 = .sdata2:0x801D5864; // type:object size:0x4 data:float +lbl_801D5868 = .sdata2:0x801D5868; // type:object size:0x4 data:float +lbl_801D586C = .sdata2:0x801D586C; // type:object size:0x4 data:float +lbl_801D5870 = .sdata2:0x801D5870; // type:object size:0x4 data:float +lbl_801D5874 = .sdata2:0x801D5874; // type:object size:0x4 data:float +lbl_801D5878 = .sdata2:0x801D5878; // type:object size:0x8 data:double +lbl_801D5880 = .sdata2:0x801D5880; // type:object size:0x8 data:double +lbl_801D5888 = .sdata2:0x801D5888; // type:object size:0x4 data:float +lbl_801D588C = .sdata2:0x801D588C; // type:object size:0x4 data:float +lbl_801D5890 = .sdata2:0x801D5890; // type:object size:0x4 data:float +lbl_801D5894 = .sdata2:0x801D5894; // type:object size:0x4 data:float +lbl_801D5898 = .sdata2:0x801D5898; // type:object size:0x4 data:float +lbl_801D58A0 = .sdata2:0x801D58A0; // type:object size:0x8 data:double +lbl_801D58A8 = .sdata2:0x801D58A8; // type:object size:0x4 data:float +lbl_801D58AC = .sdata2:0x801D58AC; // type:object size:0x4 data:float +lbl_801D58B0 = .sdata2:0x801D58B0; // type:object size:0x4 data:float +lbl_801D58B4 = .sdata2:0x801D58B4; // type:object size:0x4 data:float +lbl_801D58B8 = .sdata2:0x801D58B8; // type:object size:0x4 data:float +lbl_801D58BC = .sdata2:0x801D58BC; // type:object size:0x4 data:float +lbl_801D58C0 = .sdata2:0x801D58C0; // type:object size:0x4 data:float +lbl_801D58C4 = .sdata2:0x801D58C4; // type:object size:0x4 data:float +lbl_801D58C8 = .sdata2:0x801D58C8; // type:object size:0x4 data:float +lbl_801D58CC = .sdata2:0x801D58CC; // type:object size:0x4 data:float +lbl_801D58D0 = .sdata2:0x801D58D0; // type:object size:0x4 data:float +lbl_801D58D8 = .sdata2:0x801D58D8; // type:object size:0x8 data:double +lbl_801D58E0 = .sdata2:0x801D58E0; // type:object size:0x4 data:float +lbl_801D58E4 = .sdata2:0x801D58E4; // type:object size:0x4 data:float +lbl_801D58E8 = .sdata2:0x801D58E8; // type:object size:0x4 data:float +lbl_801D58EC = .sdata2:0x801D58EC; // type:object size:0x4 data:float +lbl_801D58F0 = .sdata2:0x801D58F0; // type:object size:0x4 data:float +lbl_801D58F4 = .sdata2:0x801D58F4; // type:object size:0x4 data:float +lbl_801D58F8 = .sdata2:0x801D58F8; // type:object size:0x4 data:float +lbl_801D58FC = .sdata2:0x801D58FC; // type:object size:0x4 data:float +lbl_801D5900 = .sdata2:0x801D5900; // type:object size:0x4 data:float +lbl_801D5904 = .sdata2:0x801D5904; // type:object size:0x4 data:float +lbl_801D5908 = .sdata2:0x801D5908; // type:object size:0x4 data:float +lbl_801D590C = .sdata2:0x801D590C; // type:object size:0x4 data:float +lbl_801D5910 = .sdata2:0x801D5910; // type:object size:0x4 data:float +lbl_801D5914 = .sdata2:0x801D5914; // type:object size:0x4 data:float +lbl_801D5918 = .sdata2:0x801D5918; // type:object size:0x4 data:float +lbl_801D591C = .sdata2:0x801D591C; // type:object size:0x4 data:float +lbl_801D5920 = .sdata2:0x801D5920; // type:object size:0x4 data:float +lbl_801D5924 = .sdata2:0x801D5924; // type:object size:0x4 data:float +lbl_801D5928 = .sdata2:0x801D5928; // type:object size:0x4 data:float +lbl_801D5930 = .sdata2:0x801D5930; // type:object size:0x8 data:double +lbl_801D5938 = .sdata2:0x801D5938; // type:object size:0x4 data:float +lbl_801D5940 = .sdata2:0x801D5940; // type:object size:0x8 data:double +lbl_801D5948 = .sdata2:0x801D5948; // type:object size:0x4 data:float +lbl_801D594C = .sdata2:0x801D594C; // type:object size:0x4 data:float +lbl_801D5950 = .sdata2:0x801D5950; // type:object size:0x4 data:float +lbl_801D5954 = .sdata2:0x801D5954; // type:object size:0x4 data:float +lbl_801D5958 = .sdata2:0x801D5958; // type:object size:0x4 data:float +lbl_801D5960 = .sdata2:0x801D5960; // type:object size:0x8 data:double +lbl_801D5968 = .sdata2:0x801D5968; // type:object size:0x4 data:float +lbl_801D596C = .sdata2:0x801D596C; // type:object size:0x4 data:float +lbl_801D5970 = .sdata2:0x801D5970; // type:object size:0x4 data:float +lbl_801D5974 = .sdata2:0x801D5974; // type:object size:0x4 data:float +lbl_801D5978 = .sdata2:0x801D5978; // type:object size:0x4 data:float +lbl_801D597C = .sdata2:0x801D597C; // type:object size:0x4 data:float +lbl_801D5980 = .sdata2:0x801D5980; // type:object size:0x4 data:float +lbl_801D5984 = .sdata2:0x801D5984; // type:object size:0x4 data:float +lbl_801D5988 = .sdata2:0x801D5988; // type:object size:0x4 data:float +lbl_801D598C = .sdata2:0x801D598C; // type:object size:0x4 data:float +lbl_801D5990 = .sdata2:0x801D5990; // type:object size:0x4 data:float +lbl_801D5994 = .sdata2:0x801D5994; // type:object size:0x4 data:float +lbl_801D5998 = .sdata2:0x801D5998; // type:object size:0x1 data:byte +lbl_801D5999 = .sdata2:0x801D5999; // type:object size:0x1 data:byte +lbl_801D599A = .sdata2:0x801D599A; // type:object size:0x1 data:byte +lbl_801D599B = .sdata2:0x801D599B; // type:object size:0x1 data:byte +lbl_801D599C = .sdata2:0x801D599C; // type:object size:0x4 data:float +lbl_801D59A0 = .sdata2:0x801D59A0; // type:object size:0x4 data:float +lbl_801D59A4 = .sdata2:0x801D59A4; // type:object size:0x4 data:float +lbl_801D59A8 = .sdata2:0x801D59A8; // type:object size:0x4 data:float +lbl_801D59AC = .sdata2:0x801D59AC; // type:object size:0x4 data:float +lbl_801D59B0 = .sdata2:0x801D59B0; // type:object size:0x8 data:double +lbl_801D59B8 = .sdata2:0x801D59B8; // type:object size:0x8 data:double +lbl_801D59C0 = .sdata2:0x801D59C0; // type:object size:0x4 data:float +lbl_801D59C4 = .sdata2:0x801D59C4; // type:object size:0x4 data:float +lbl_801D59C8 = .sdata2:0x801D59C8; // type:object size:0x4 data:float +lbl_801D59CC = .sdata2:0x801D59CC; // type:object size:0x4 data:float +lbl_801D59D0 = .sdata2:0x801D59D0; // type:object size:0x4 data:float +lbl_801D59D4 = .sdata2:0x801D59D4; // type:object size:0x4 data:float +lbl_801D59D8 = .sdata2:0x801D59D8; // type:object size:0x8 data:double +lbl_801D59E0 = .sdata2:0x801D59E0; // type:object size:0x4 data:float +lbl_801D59E4 = .sdata2:0x801D59E4; // type:object size:0x4 data:float +lbl_801D59E8 = .sdata2:0x801D59E8; // type:object size:0x8 data:double +lbl_801D59F0 = .sdata2:0x801D59F0; // type:object size:0x8 data:float +lbl_801D59F8 = .sdata2:0x801D59F8; // type:object size:0x4 data:float +lbl_801D59FC = .sdata2:0x801D59FC; // type:object size:0x4 data:float +lbl_801D5A00 = .sdata2:0x801D5A00; // type:object size:0x4 data:float +lbl_801D5A04 = .sdata2:0x801D5A04; // type:object size:0x4 data:float +lbl_801D5A08 = .sdata2:0x801D5A08; // type:object size:0x4 data:float +lbl_801D5A0C = .sdata2:0x801D5A0C; // type:object size:0x4 data:float +lbl_801D5A10 = .sdata2:0x801D5A10; // type:object size:0x4 data:float +lbl_801D5A14 = .sdata2:0x801D5A14; // type:object size:0x4 data:float +lbl_801D5A18 = .sdata2:0x801D5A18; // type:object size:0x4 data:float +lbl_801D5A1C = .sdata2:0x801D5A1C; // type:object size:0x4 data:float +lbl_801D5A20 = .sdata2:0x801D5A20; // type:object size:0x2 data:2byte +lbl_801D5A22 = .sdata2:0x801D5A22; // type:object size:0x2 data:2byte +lbl_801D5A24 = .sdata2:0x801D5A24; // type:object size:0x2 data:2byte +lbl_801D5A28 = .sdata2:0x801D5A28; // type:object size:0x4 data:float +lbl_801D5A2C = .sdata2:0x801D5A2C; // type:object size:0x4 data:float +lbl_801D5A30 = .sdata2:0x801D5A30; // type:object size:0x4 data:float +lbl_801D5A34 = .sdata2:0x801D5A34; // type:object size:0x4 data:float +lbl_801D5A38 = .sdata2:0x801D5A38; // type:object size:0x4 data:float +lbl_801D5A3C = .sdata2:0x801D5A3C; // type:object size:0x4 data:float +lbl_801D5A40 = .sdata2:0x801D5A40; // type:object size:0x4 data:float +lbl_801D5A44 = .sdata2:0x801D5A44; // type:object size:0x4 data:float +lbl_801D5A48 = .sdata2:0x801D5A48; // type:object size:0x8 data:double +lbl_801D5A50 = .sdata2:0x801D5A50; // type:object size:0x8 data:double +lbl_801D5A58 = .sdata2:0x801D5A58; // type:object size:0x8 data:double +lbl_801D5A60 = .sdata2:0x801D5A60; // type:object size:0x4 data:float +lbl_801D5A64 = .sdata2:0x801D5A64; // type:object size:0x4 data:float +lbl_801D5A68 = .sdata2:0x801D5A68; // type:object size:0x4 data:float +lbl_801D5A6C = .sdata2:0x801D5A6C; // type:object size:0x4 data:float +lbl_801D5A70 = .sdata2:0x801D5A70; // type:object size:0x4 data:float +lbl_801D5A74 = .sdata2:0x801D5A74; // type:object size:0x4 data:float +lbl_801D5A78 = .sdata2:0x801D5A78; // type:object size:0x4 data:float +lbl_801D5A7C = .sdata2:0x801D5A7C; // type:object size:0x4 data:float +lbl_801D5A80 = .sdata2:0x801D5A80; // type:object size:0x4 data:float +lbl_801D5A88 = .sdata2:0x801D5A88; // type:object size:0x8 data:double +lbl_801D5A90 = .sdata2:0x801D5A90; // type:object size:0x1 data:byte +lbl_801D5A91 = .sdata2:0x801D5A91; // type:object size:0x1 data:byte +lbl_801D5A92 = .sdata2:0x801D5A92; // type:object size:0x1 data:byte +lbl_801D5A94 = .sdata2:0x801D5A94; // type:object size:0x4 data:float +lbl_801D5A98 = .sdata2:0x801D5A98; // type:object size:0x8 data:double +lbl_801D5AA0 = .sdata2:0x801D5AA0; // type:object size:0x8 data:float +lbl_801D5AA8 = .sdata2:0x801D5AA8; // type:object size:0x8 +lbl_801D5AB0 = .sdata2:0x801D5AB0; // type:object size:0x4 data:float +lbl_801D5AB4 = .sdata2:0x801D5AB4; // type:object size:0x4 data:float +lbl_801D5AB8 = .sdata2:0x801D5AB8; // type:object size:0x4 data:float +lbl_801D5ABC = .sdata2:0x801D5ABC; // type:object size:0x4 data:float +lbl_801D5AC0 = .sdata2:0x801D5AC0; // type:object size:0x4 data:float +lbl_801D5AC4 = .sdata2:0x801D5AC4; // type:object size:0x4 data:float +lbl_801D5AC8 = .sdata2:0x801D5AC8; // type:object size:0x4 data:float +lbl_801D5ACC = .sdata2:0x801D5ACC; // type:object size:0x4 data:float +lbl_801D5AD0 = .sdata2:0x801D5AD0; // type:object size:0x4 data:float +lbl_801D5AD4 = .sdata2:0x801D5AD4; // type:object size:0x4 data:float +lbl_801D5AD8 = .sdata2:0x801D5AD8; // type:object size:0x4 data:float +lbl_801D5ADC = .sdata2:0x801D5ADC; // type:object size:0x4 data:float +lbl_801D5AE0 = .sdata2:0x801D5AE0; // type:object size:0x4 data:float +lbl_801D5AE4 = .sdata2:0x801D5AE4; // type:object size:0x4 data:float +lbl_801D5AE8 = .sdata2:0x801D5AE8; // type:object size:0x4 data:float +lbl_801D5AEC = .sdata2:0x801D5AEC; // type:object size:0x4 data:float +lbl_801D5AF0 = .sdata2:0x801D5AF0; // type:object size:0x4 data:float +lbl_801D5AF4 = .sdata2:0x801D5AF4; // type:object size:0x4 data:float +lbl_801D5AF8 = .sdata2:0x801D5AF8; // type:object size:0x4 data:float +lbl_801D5AFC = .sdata2:0x801D5AFC; // type:object size:0x4 data:float +lbl_801D5B00 = .sdata2:0x801D5B00; // type:object size:0x4 data:float +lbl_801D5B08 = .sdata2:0x801D5B08; // type:object size:0x8 data:double +lbl_801D5B10 = .sdata2:0x801D5B10; // type:object size:0x8 data:double +lbl_801D5B18 = .sdata2:0x801D5B18; // type:object size:0x4 data:float +lbl_801D5B1C = .sdata2:0x801D5B1C; // type:object size:0x4 data:float +lbl_801D5B20 = .sdata2:0x801D5B20; // type:object size:0x4 data:float +lbl_801D5B24 = .sdata2:0x801D5B24; // type:object size:0x4 data:float +lbl_801D5B28 = .sdata2:0x801D5B28; // type:object size:0x4 data:float +lbl_801D5B2C = .sdata2:0x801D5B2C; // type:object size:0x4 data:float +lbl_801D5B30 = .sdata2:0x801D5B30; // type:object size:0x4 data:float +lbl_801D5B34 = .sdata2:0x801D5B34; // type:object size:0x4 data:float +lbl_801D5B38 = .sdata2:0x801D5B38; // type:object size:0x8 data:double +lbl_801D5B40 = .sdata2:0x801D5B40; // type:object size:0x4 data:float +lbl_801D5B48 = .sdata2:0x801D5B48; // type:object size:0x8 data:double +lbl_801D5B50 = .sdata2:0x801D5B50; // type:object size:0x4 data:float +lbl_801D5B54 = .sdata2:0x801D5B54; // type:object size:0x4 data:float +lbl_801D5B58 = .sdata2:0x801D5B58; // type:object size:0x1 data:byte +lbl_801D5B59 = .sdata2:0x801D5B59; // type:object size:0x1 data:byte +lbl_801D5B5A = .sdata2:0x801D5B5A; // type:object size:0x1 data:byte +lbl_801D5B5B = .sdata2:0x801D5B5B; // type:object size:0x1 data:byte +lbl_801D5B5C = .sdata2:0x801D5B5C; // type:object size:0x1 data:byte +lbl_801D5B60 = .sdata2:0x801D5B60; // type:object size:0x4 data:float +lbl_801D5B64 = .sdata2:0x801D5B64; // type:object size:0x4 data:float +lbl_801D5B68 = .sdata2:0x801D5B68; // type:object size:0x4 data:float +lbl_801D5B6C = .sdata2:0x801D5B6C; // type:object size:0x4 data:float +lbl_801D5B70 = .sdata2:0x801D5B70; // type:object size:0x4 data:float +lbl_801D5B74 = .sdata2:0x801D5B74; // type:object size:0x4 data:float +lbl_801D5B78 = .sdata2:0x801D5B78; // type:object size:0x4 data:float +lbl_801D5B7C = .sdata2:0x801D5B7C; // type:object size:0x4 data:float +lbl_801D5B80 = .sdata2:0x801D5B80; // type:object size:0x4 data:float +lbl_801D5B84 = .sdata2:0x801D5B84; // type:object size:0x4 data:float +lbl_801D5B88 = .sdata2:0x801D5B88; // type:object size:0x4 data:float +lbl_801D5B8C = .sdata2:0x801D5B8C; // type:object size:0x4 data:float +lbl_801D5B90 = .sdata2:0x801D5B90; // type:object size:0x4 data:float +lbl_801D5B94 = .sdata2:0x801D5B94; // type:object size:0x4 data:float +lbl_801D5B98 = .sdata2:0x801D5B98; // type:object size:0x8 data:double +lbl_801D5BA0 = .sdata2:0x801D5BA0; // type:object size:0x8 data:double +lbl_801D5BA8 = .sdata2:0x801D5BA8; // type:object size:0x4 data:float +lbl_801D5BB0 = .sdata2:0x801D5BB0; // type:object size:0x8 data:double +lbl_801D5BB8 = .sdata2:0x801D5BB8; // type:object size:0x8 data:double +lbl_801D5BC0 = .sdata2:0x801D5BC0; // type:object size:0x8 data:double +lbl_801D5BC8 = .sdata2:0x801D5BC8; // type:object size:0x8 data:double +lbl_801D5BD0 = .sdata2:0x801D5BD0; // type:object size:0x4 data:float +lbl_801D5BD8 = .sdata2:0x801D5BD8; // type:object size:0x8 data:double +lbl_801D5BE0 = .sdata2:0x801D5BE0; // type:object size:0x4 data:float +lbl_801D5BE4 = .sdata2:0x801D5BE4; // type:object size:0x4 data:float +lbl_801D5BE8 = .sdata2:0x801D5BE8; // type:object size:0x4 data:float +lbl_801D5BF0 = .sdata2:0x801D5BF0; // type:object size:0x8 data:double +lbl_801D5BF8 = .sdata2:0x801D5BF8; // type:object size:0x8 data:double +lbl_801D5C00 = .sdata2:0x801D5C00; // type:object size:0x4 data:float +lbl_801D5C08 = .sdata2:0x801D5C08; // type:object size:0x8 data:double +lbl_801D5C10 = .sdata2:0x801D5C10; // type:object size:0x4 data:float +lbl_801D5C14 = .sdata2:0x801D5C14; // type:object size:0x4 data:float +lbl_801D5C18 = .sdata2:0x801D5C18; // type:object size:0x4 data:float +lbl_801D5C1C = .sdata2:0x801D5C1C; // type:object size:0x4 data:float +lbl_801D5C20 = .sdata2:0x801D5C20; // type:object size:0x8 data:double +lbl_801D5C28 = .sdata2:0x801D5C28; // type:object size:0x8 data:double +lbl_801D5C30 = .sdata2:0x801D5C30; // type:object size:0x4 data:float +lbl_801D5C34 = .sdata2:0x801D5C34; // type:object size:0x4 data:float +lbl_801D5C38 = .sdata2:0x801D5C38; // type:object size:0x4 data:float +lbl_801D5C40 = .sdata2:0x801D5C40; // type:object size:0x8 data:double +lbl_801D5C48 = .sdata2:0x801D5C48; // type:object size:0x4 data:float +lbl_801D5C4C = .sdata2:0x801D5C4C; // type:object size:0x4 data:float +lbl_801D5C50 = .sdata2:0x801D5C50; // type:object size:0x4 data:float +lbl_801D5C54 = .sdata2:0x801D5C54; // type:object size:0x4 data:float +lbl_801D5C58 = .sdata2:0x801D5C58; // type:object size:0x8 data:double +lbl_801D5C60 = .sdata2:0x801D5C60; // type:object size:0x4 data:float +lbl_801D5C64 = .sdata2:0x801D5C64; // type:object size:0x4 data:float +lbl_801D5C68 = .sdata2:0x801D5C68; // type:object size:0x4 data:float +lbl_801D5C6C = .sdata2:0x801D5C6C; // type:object size:0x4 data:float +lbl_801D5C70 = .sdata2:0x801D5C70; // type:object size:0x4 data:float +lbl_801D5C74 = .sdata2:0x801D5C74; // type:object size:0x4 data:float +lbl_801D5C78 = .sdata2:0x801D5C78; // type:object size:0x4 data:float +lbl_801D5C7C = .sdata2:0x801D5C7C; // type:object size:0x4 data:float +lbl_801D5C80 = .sdata2:0x801D5C80; // type:object size:0x4 data:float +lbl_801D5C84 = .sdata2:0x801D5C84; // type:object size:0x4 data:float +lbl_801D5C88 = .sdata2:0x801D5C88; // type:object size:0x4 data:float +lbl_801D5C8C = .sdata2:0x801D5C8C; // type:object size:0x1 data:byte +lbl_801D5C8D = .sdata2:0x801D5C8D; // type:object size:0x1 data:byte +lbl_801D5C90 = .sdata2:0x801D5C90; // type:object size:0x4 data:float +lbl_801D5C98 = .sdata2:0x801D5C98; // type:object size:0x8 data:double +lbl_801D5CA0 = .sdata2:0x801D5CA0; // type:object size:0x8 data:double +lbl_801D5CA8 = .sdata2:0x801D5CA8; // type:object size:0x8 data:double +lbl_801D5CB0 = .sdata2:0x801D5CB0; // type:object size:0x8 data:double +lbl_801D5CB8 = .sdata2:0x801D5CB8; // type:object size:0x4 data:float +lbl_801D5CBC = .sdata2:0x801D5CBC; // type:object size:0x4 data:float +lbl_801D5CC0 = .sdata2:0x801D5CC0; // type:object size:0x8 data:double +lbl_801D5CC8 = .sdata2:0x801D5CC8; // type:object size:0x4 data:float +lbl_801D5CCC = .sdata2:0x801D5CCC; // type:object size:0x4 data:float +lbl_801D5CD0 = .sdata2:0x801D5CD0; // type:object size:0x8 data:double +lbl_801D5CD8 = .sdata2:0x801D5CD8; // type:object size:0x4 data:float +lbl_801D5CDC = .sdata2:0x801D5CDC; // type:object size:0x2 data:2byte +lbl_801D5CDE = .sdata2:0x801D5CDE; // type:object size:0x2 data:2byte +lbl_801D5CE0 = .sdata2:0x801D5CE0; // type:object size:0x2 data:2byte +lbl_801D5CE4 = .sdata2:0x801D5CE4; // type:object size:0x4 data:float +lbl_801D5CE8 = .sdata2:0x801D5CE8; // type:object size:0x4 data:float +lbl_801D5CEC = .sdata2:0x801D5CEC; // type:object size:0x4 data:float +lbl_801D5CF0 = .sdata2:0x801D5CF0; // type:object size:0x2 data:2byte +lbl_801D5CF2 = .sdata2:0x801D5CF2; // type:object size:0x2 data:2byte +lbl_801D5CF4 = .sdata2:0x801D5CF4; // type:object size:0x2 data:2byte +lbl_801D5CF8 = .sdata2:0x801D5CF8; // type:object size:0x4 data:float +lbl_801D5CFC = .sdata2:0x801D5CFC; // type:object size:0x4 data:float +lbl_801D5D00 = .sdata2:0x801D5D00; // type:object size:0x4 data:float +lbl_801D5D04 = .sdata2:0x801D5D04; // type:object size:0x4 data:float +lbl_801D5D08 = .sdata2:0x801D5D08; // type:object size:0x4 data:float +lbl_801D5D0C = .sdata2:0x801D5D0C; // type:object size:0x4 data:float +lbl_801D5D10 = .sdata2:0x801D5D10; // type:object size:0x4 data:float +lbl_801D5D18 = .sdata2:0x801D5D18; // type:object size:0x8 data:double +lbl_801D5D20 = .sdata2:0x801D5D20; // type:object size:0x4 data:float +lbl_801D5D24 = .sdata2:0x801D5D24; // type:object size:0x4 data:float +lbl_801D5D28 = .sdata2:0x801D5D28; // type:object size:0x4 data:float +lbl_801D5D2C = .sdata2:0x801D5D2C; // type:object size:0x4 data:float +lbl_801D5D30 = .sdata2:0x801D5D30; // type:object size:0x4 data:float +lbl_801D5D34 = .sdata2:0x801D5D34; // type:object size:0x4 data:float +lbl_801D5D38 = .sdata2:0x801D5D38; // type:object size:0x4 data:float +lbl_801D5D40 = .sdata2:0x801D5D40; // type:object size:0x8 data:double +lbl_801D5D48 = .sdata2:0x801D5D48; // type:object size:0x8 data:double +lbl_801D5D50 = .sdata2:0x801D5D50; // type:object size:0x8 data:double +lbl_801D5D58 = .sdata2:0x801D5D58; // type:object size:0x4 data:float +lbl_801D5D5C = .sdata2:0x801D5D5C; // type:object size:0x4 data:float +lbl_801D5D60 = .sdata2:0x801D5D60; // type:object size:0x4 data:float +lbl_801D5D64 = .sdata2:0x801D5D64; // type:object size:0x4 data:float +lbl_801D5D68 = .sdata2:0x801D5D68; // type:object size:0x4 data:float +lbl_801D5D6C = .sdata2:0x801D5D6C; // type:object size:0x4 data:float +lbl_801D5D70 = .sdata2:0x801D5D70; // type:object size:0x4 data:float +lbl_801D5D74 = .sdata2:0x801D5D74; // type:object size:0x4 data:float +lbl_801D5D78 = .sdata2:0x801D5D78; // type:object size:0x4 data:float +lbl_801D5D7C = .sdata2:0x801D5D7C; // type:object size:0x4 data:float +lbl_801D5D80 = .sdata2:0x801D5D80; // type:object size:0x4 data:float +lbl_801D5D84 = .sdata2:0x801D5D84; // type:object size:0x4 data:float +lbl_801D5D88 = .sdata2:0x801D5D88; // type:object size:0x4 data:float +lbl_801D5D8C = .sdata2:0x801D5D8C; // type:object size:0x4 data:float +lbl_801D5D90 = .sdata2:0x801D5D90; // type:object size:0x4 data:float +lbl_801D5D94 = .sdata2:0x801D5D94; // type:object size:0x4 data:float +lbl_801D5D98 = .sdata2:0x801D5D98; // type:object size:0x4 data:float +lbl_801D5D9C = .sdata2:0x801D5D9C; // type:object size:0x4 data:float +lbl_801D5DA0 = .sdata2:0x801D5DA0; // type:object size:0x4 data:float +lbl_801D5DA4 = .sdata2:0x801D5DA4; // type:object size:0x4 data:float +lbl_801D5DA8 = .sdata2:0x801D5DA8; // type:object size:0x8 data:double +lbl_801D5DB0 = .sdata2:0x801D5DB0; // type:object size:0x8 data:double +lbl_801D5DB8 = .sdata2:0x801D5DB8; // type:object size:0x4 data:float +lbl_801D5DC0 = .sdata2:0x801D5DC0; // type:object size:0x8 data:double +lbl_801D5DC8 = .sdata2:0x801D5DC8; // type:object size:0x8 data:double +lbl_801D5DD0 = .sdata2:0x801D5DD0; // type:object size:0x4 data:float +lbl_801D5DD4 = .sdata2:0x801D5DD4; // type:object size:0x4 data:float +lbl_801D5DD8 = .sdata2:0x801D5DD8; // type:object size:0x4 data:float +lbl_801D5DDC = .sdata2:0x801D5DDC; // type:object size:0x4 data:float +lbl_801D5DE0 = .sdata2:0x801D5DE0; // type:object size:0x4 data:float +lbl_801D5DE4 = .sdata2:0x801D5DE4; // type:object size:0x4 data:float +lbl_801D5DE8 = .sdata2:0x801D5DE8; // type:object size:0x4 data:float +lbl_801D5DEC = .sdata2:0x801D5DEC; // type:object size:0x4 data:float +lbl_801D5DF0 = .sdata2:0x801D5DF0; // type:object size:0x4 data:float +lbl_801D5DF4 = .sdata2:0x801D5DF4; // type:object size:0x4 data:float +lbl_801D5DF8 = .sdata2:0x801D5DF8; // type:object size:0x4 data:float +lbl_801D5DFC = .sdata2:0x801D5DFC; // type:object size:0x4 data:float +lbl_801D5E00 = .sdata2:0x801D5E00; // type:object size:0x4 data:float +lbl_801D5E04 = .sdata2:0x801D5E04; // type:object size:0x4 data:float +lbl_801D5E08 = .sdata2:0x801D5E08; // type:object size:0x4 data:float +lbl_801D5E0C = .sdata2:0x801D5E0C; // type:object size:0x4 data:float +lbl_801D5E10 = .sdata2:0x801D5E10; // type:object size:0x4 data:float +lbl_801D5E14 = .sdata2:0x801D5E14; // type:object size:0x4 data:float +lbl_801D5E18 = .sdata2:0x801D5E18; // type:object size:0x4 data:float +lbl_801D5E20 = .sdata2:0x801D5E20; // type:object size:0x8 data:double +lbl_801D5E28 = .sdata2:0x801D5E28; // type:object size:0x8 data:double +lbl_801D5E30 = .sdata2:0x801D5E30; // type:object size:0x8 data:double +lbl_801D5E38 = .sdata2:0x801D5E38; // type:object size:0x8 data:double +lbl_801D5E40 = .sdata2:0x801D5E40; // type:object size:0x4 data:float +lbl_801D5E44 = .sdata2:0x801D5E44; // type:object size:0x4 data:float +lbl_801D5E48 = .sdata2:0x801D5E48; // type:object size:0x4 data:float +lbl_801D5E4C = .sdata2:0x801D5E4C; // type:object size:0x4 data:float +lbl_801D5E50 = .sdata2:0x801D5E50; // type:object size:0x4 data:float +lbl_801D5E54 = .sdata2:0x801D5E54; // type:object size:0x4 data:float +lbl_801D5E58 = .sdata2:0x801D5E58; // type:object size:0x4 data:float +lbl_801D5E5C = .sdata2:0x801D5E5C; // type:object size:0x4 data:float +lbl_801D5E60 = .sdata2:0x801D5E60; // type:object size:0x4 data:float +lbl_801D5E64 = .sdata2:0x801D5E64; // type:object size:0x4 data:float +lbl_801D5E68 = .sdata2:0x801D5E68; // type:object size:0x4 data:float +lbl_801D5E6C = .sdata2:0x801D5E6C; // type:object size:0x4 data:float +lbl_801D5E70 = .sdata2:0x801D5E70; // type:object size:0x4 data:float +lbl_801D5E74 = .sdata2:0x801D5E74; // type:object size:0x4 data:float +lbl_801D5E78 = .sdata2:0x801D5E78; // type:object size:0x4 data:float +lbl_801D5E7C = .sdata2:0x801D5E7C; // type:object size:0x4 data:float +lbl_801D5E80 = .sdata2:0x801D5E80; // type:object size:0x4 data:float +lbl_801D5E84 = .sdata2:0x801D5E84; // type:object size:0x4 data:float +lbl_801D5E88 = .sdata2:0x801D5E88; // type:object size:0x4 data:float +lbl_801D5E8C = .sdata2:0x801D5E8C; // type:object size:0x4 data:float +lbl_801D5E90 = .sdata2:0x801D5E90; // type:object size:0x4 data:float +lbl_801D5E94 = .sdata2:0x801D5E94; // type:object size:0x4 data:float +lbl_801D5E98 = .sdata2:0x801D5E98; // type:object size:0x8 data:double +lbl_801D5EA0 = .sdata2:0x801D5EA0; // type:object size:0x8 data:double +lbl_801D5EA8 = .sdata2:0x801D5EA8; // type:object size:0x4 data:float +lbl_801D5EAC = .sdata2:0x801D5EAC; // type:object size:0x4 data:float +lbl_801D5EB0 = .sdata2:0x801D5EB0; // type:object size:0x8 data:double +lbl_801D5EB8 = .sdata2:0x801D5EB8; // type:object size:0x4 data:float +lbl_801D5EBC = .sdata2:0x801D5EBC; // type:object size:0x4 data:float +lbl_801D5EC0 = .sdata2:0x801D5EC0; // type:object size:0x4 data:float +lbl_801D5EC4 = .sdata2:0x801D5EC4; // type:object size:0x4 data:float +lbl_801D5EC8 = .sdata2:0x801D5EC8; // type:object size:0x4 data:float +lbl_801D5ECC = .sdata2:0x801D5ECC; // type:object size:0x4 data:float +lbl_801D5ED0 = .sdata2:0x801D5ED0; // type:object size:0x4 data:float +lbl_801D5ED4 = .sdata2:0x801D5ED4; // type:object size:0x4 data:float +lbl_801D5ED8 = .sdata2:0x801D5ED8; // type:object size:0x4 data:float +lbl_801D5EDC = .sdata2:0x801D5EDC; // type:object size:0x4 data:float +lbl_801D5EE0 = .sdata2:0x801D5EE0; // type:object size:0x4 data:float +lbl_801D5EE4 = .sdata2:0x801D5EE4; // type:object size:0x4 data:float +lbl_801D5EE8 = .sdata2:0x801D5EE8; // type:object size:0x4 data:float +lbl_801D5EEC = .sdata2:0x801D5EEC; // type:object size:0x4 data:float +lbl_801D5EF0 = .sdata2:0x801D5EF0; // type:object size:0x4 data:float +lbl_801D5EF4 = .sdata2:0x801D5EF4; // type:object size:0x4 data:float +lbl_801D5EF8 = .sdata2:0x801D5EF8; // type:object size:0x4 data:float +lbl_801D5EFC = .sdata2:0x801D5EFC; // type:object size:0x4 data:float +lbl_801D5F00 = .sdata2:0x801D5F00; // type:object size:0x4 data:float +lbl_801D5F04 = .sdata2:0x801D5F04; // type:object size:0x4 data:float +lbl_801D5F08 = .sdata2:0x801D5F08; // type:object size:0x4 data:float +lbl_801D5F10 = .sdata2:0x801D5F10; // type:object size:0x8 data:double +lbl_801D5F18 = .sdata2:0x801D5F18; // type:object size:0x8 data:double +lbl_801D5F20 = .sdata2:0x801D5F20; // type:object size:0x8 data:double +lbl_801D5F28 = .sdata2:0x801D5F28; // type:object size:0x8 data:double +lbl_801D5F30 = .sdata2:0x801D5F30; // type:object size:0x4 data:float +lbl_801D5F34 = .sdata2:0x801D5F34; // type:object size:0x4 data:float +lbl_801D5F38 = .sdata2:0x801D5F38; // type:object size:0x4 data:float +lbl_801D5F3C = .sdata2:0x801D5F3C; // type:object size:0x4 data:float +lbl_801D5F40 = .sdata2:0x801D5F40; // type:object size:0x4 data:float +lbl_801D5F44 = .sdata2:0x801D5F44; // type:object size:0x4 data:float +lbl_801D5F48 = .sdata2:0x801D5F48; // type:object size:0x4 data:float +lbl_801D5F4C = .sdata2:0x801D5F4C; // type:object size:0x4 data:float +lbl_801D5F50 = .sdata2:0x801D5F50; // type:object size:0x4 data:float +lbl_801D5F54 = .sdata2:0x801D5F54; // type:object size:0x1 data:byte +lbl_801D5F55 = .sdata2:0x801D5F55; // type:object size:0x1 data:byte +lbl_801D5F56 = .sdata2:0x801D5F56; // type:object size:0x1 data:byte +lbl_801D5F57 = .sdata2:0x801D5F57; // type:object size:0x1 data:byte +lbl_801D5F58 = .sdata2:0x801D5F58; // type:object size:0x8 data:float +lbl_801D5F60 = .sdata2:0x801D5F60; // type:object size:0x4 data:float +lbl_801D5F64 = .sdata2:0x801D5F64; // type:object size:0x4 data:float +lbl_801D5F68 = .sdata2:0x801D5F68; // type:object size:0x4 data:float +lbl_801D5F6C = .sdata2:0x801D5F6C; // type:object size:0x4 data:float +lbl_801D5F70 = .sdata2:0x801D5F70; // type:object size:0x4 data:float +lbl_801D5F74 = .sdata2:0x801D5F74; // type:object size:0x4 data:float +lbl_801D5F78 = .sdata2:0x801D5F78; // type:object size:0x4 data:float +lbl_801D5F7C = .sdata2:0x801D5F7C; // type:object size:0x4 data:float +lbl_801D5F80 = .sdata2:0x801D5F80; // type:object size:0x4 data:float +lbl_801D5F84 = .sdata2:0x801D5F84; // type:object size:0x4 data:float +lbl_801D5F88 = .sdata2:0x801D5F88; // type:object size:0x4 data:float +lbl_801D5F8C = .sdata2:0x801D5F8C; // type:object size:0x4 data:float +lbl_801D5F90 = .sdata2:0x801D5F90; // type:object size:0x4 data:float +lbl_801D5F94 = .sdata2:0x801D5F94; // type:object size:0x4 data:float +lbl_801D5F98 = .sdata2:0x801D5F98; // type:object size:0x4 data:float +lbl_801D5F9C = .sdata2:0x801D5F9C; // type:object size:0x4 data:float +lbl_801D5FA0 = .sdata2:0x801D5FA0; // type:object size:0x4 data:float +lbl_801D5FA4 = .sdata2:0x801D5FA4; // type:object size:0x4 data:float +lbl_801D5FA8 = .sdata2:0x801D5FA8; // type:object size:0x4 data:float +lbl_801D5FAC = .sdata2:0x801D5FAC; // type:object size:0x4 data:float +lbl_801D5FB0 = .sdata2:0x801D5FB0; // type:object size:0x4 data:float +lbl_801D5FB4 = .sdata2:0x801D5FB4; // type:object size:0x4 data:float +lbl_801D5FB8 = .sdata2:0x801D5FB8; // type:object size:0x4 data:float +lbl_801D5FBC = .sdata2:0x801D5FBC; // type:object size:0x4 data:float +lbl_801D5FC0 = .sdata2:0x801D5FC0; // type:object size:0x4 data:float +lbl_801D5FC4 = .sdata2:0x801D5FC4; // type:object size:0x4 data:float +lbl_801D5FC8 = .sdata2:0x801D5FC8; // type:object size:0x4 data:float +lbl_801D5FCC = .sdata2:0x801D5FCC; // type:object size:0x4 data:float +lbl_801D5FD0 = .sdata2:0x801D5FD0; // type:object size:0x4 data:float +lbl_801D5FD4 = .sdata2:0x801D5FD4; // type:object size:0x4 data:float +lbl_801D5FD8 = .sdata2:0x801D5FD8; // type:object size:0x4 data:float +lbl_801D5FDC = .sdata2:0x801D5FDC; // type:object size:0x4 data:float +lbl_801D5FE0 = .sdata2:0x801D5FE0; // type:object size:0x4 data:float +lbl_801D5FE4 = .sdata2:0x801D5FE4; // type:object size:0x4 data:float +lbl_801D5FE8 = .sdata2:0x801D5FE8; // type:object size:0x4 data:float +lbl_801D5FEC = .sdata2:0x801D5FEC; // type:object size:0x4 data:float +lbl_801D5FF0 = .sdata2:0x801D5FF0; // type:object size:0x4 data:float +lbl_801D5FF4 = .sdata2:0x801D5FF4; // type:object size:0x4 data:float +lbl_801D5FF8 = .sdata2:0x801D5FF8; // type:object size:0x4 data:float +lbl_801D5FFC = .sdata2:0x801D5FFC; // type:object size:0x4 data:float +lbl_801D6000 = .sdata2:0x801D6000; // type:object size:0x4 data:float +lbl_801D6004 = .sdata2:0x801D6004; // type:object size:0x4 data:float +lbl_801D6008 = .sdata2:0x801D6008; // type:object size:0x8 data:double +lbl_801D6010 = .sdata2:0x801D6010; // type:object size:0x8 data:float +lbl_801D6018 = .sdata2:0x801D6018; // type:object size:0x4 data:float +lbl_801D601C = .sdata2:0x801D601C; // type:object size:0x4 data:float +lbl_801D6020 = .sdata2:0x801D6020; // type:object size:0x4 data:float +lbl_801D6024 = .sdata2:0x801D6024; // type:object size:0x4 data:float +lbl_801D6028 = .sdata2:0x801D6028; // type:object size:0x8 data:float +lbl_801D6030 = .sdata2:0x801D6030; // type:object size:0x4 data:float +lbl_801D6034 = .sdata2:0x801D6034; // type:object size:0x4 data:float +lbl_801D6038 = .sdata2:0x801D6038; // type:object size:0x4 data:float +lbl_801D603C = .sdata2:0x801D603C; // type:object size:0x4 data:float +lbl_801D6040 = .sdata2:0x801D6040; // type:object size:0x4 data:float +lbl_801D6044 = .sdata2:0x801D6044; // type:object size:0x4 data:float +lbl_801D6048 = .sdata2:0x801D6048; // type:object size:0x4 data:float +lbl_801D604C = .sdata2:0x801D604C; // type:object size:0x4 data:float +lbl_801D6050 = .sdata2:0x801D6050; // type:object size:0x4 data:float +lbl_801D6054 = .sdata2:0x801D6054; // type:object size:0x4 data:float +lbl_801D6058 = .sdata2:0x801D6058; // type:object size:0x4 data:float +lbl_801D605C = .sdata2:0x801D605C; // type:object size:0x4 data:float +lbl_801D6060 = .sdata2:0x801D6060; // type:object size:0x8 data:double +lbl_801D6068 = .sdata2:0x801D6068; // type:object size:0x8 data:double +lbl_801D6070 = .sdata2:0x801D6070; // type:object size:0x4 data:float +lbl_801D6074 = .sdata2:0x801D6074; // type:object size:0x4 data:float +lbl_801D6078 = .sdata2:0x801D6078; // type:object size:0x4 data:float +lbl_801D607C = .sdata2:0x801D607C; // type:object size:0x4 data:float +lbl_801D6080 = .sdata2:0x801D6080; // type:object size:0x4 data:float +lbl_801D6084 = .sdata2:0x801D6084; // type:object size:0x4 data:float +lbl_801D6088 = .sdata2:0x801D6088; // type:object size:0x8 data:double +lbl_801D6090 = .sdata2:0x801D6090; // type:object size:0x8 data:double +lbl_801D6098 = .sdata2:0x801D6098; // type:object size:0x8 data:float +lbl_801D60A0 = .sdata2:0x801D60A0; // type:object size:0x4 data:float +lbl_801D60A8 = .sdata2:0x801D60A8; // type:object size:0x8 data:double +lbl_801D60B0 = .sdata2:0x801D60B0; // type:object size:0x4 data:4byte +lbl_801D60B4 = .sdata2:0x801D60B4; // type:object size:0x4 data:4byte +lbl_801D60B8 = .sdata2:0x801D60B8; // type:object size:0x4 data:4byte +lbl_801D60BC = .sdata2:0x801D60BC; // type:object size:0x4 data:float +lbl_801D60C0 = .sdata2:0x801D60C0; // type:object size:0x4 data:float +lbl_801D60C4 = .sdata2:0x801D60C4; // type:object size:0x4 data:float +lbl_801D60C8 = .sdata2:0x801D60C8; // type:object size:0x8 data:double +lbl_801D60D0 = .sdata2:0x801D60D0; // type:object size:0x8 data:float +lbl_801D60D8 = .sdata2:0x801D60D8; // type:object size:0x4 data:float +lbl_801D60DC = .sdata2:0x801D60DC; // type:object size:0x4 data:float +lbl_801D60E0 = .sdata2:0x801D60E0; // type:object size:0x4 data:float +lbl_801D60E4 = .sdata2:0x801D60E4; // type:object size:0x4 data:float +lbl_801D60E8 = .sdata2:0x801D60E8; // type:object size:0x4 data:float +lbl_801D60EC = .sdata2:0x801D60EC; // type:object size:0x4 data:float +lbl_801D60F0 = .sdata2:0x801D60F0; // type:object size:0x4 data:float +lbl_801D60F4 = .sdata2:0x801D60F4; // type:object size:0x4 data:float +lbl_801D60F8 = .sdata2:0x801D60F8; // type:object size:0x4 data:float +lbl_801D60FC = .sdata2:0x801D60FC; // type:object size:0x4 data:float +lbl_801D6100 = .sdata2:0x801D6100; // type:object size:0x4 data:float +lbl_801D6104 = .sdata2:0x801D6104; // type:object size:0x4 data:float +lbl_801D6108 = .sdata2:0x801D6108; // type:object size:0x4 data:float +lbl_801D6110 = .sdata2:0x801D6110; // type:object size:0x8 data:double +lbl_801D6118 = .sdata2:0x801D6118; // type:object size:0x8 data:double +lbl_801D6120 = .sdata2:0x801D6120; // type:object size:0x8 data:float +lbl_801D6128 = .sdata2:0x801D6128; // type:object size:0x4 data:float +lbl_801D6130 = .sdata2:0x801D6130; // type:object size:0x8 data:double +lbl_801D6138 = .sdata2:0x801D6138; // type:object size:0x4 data:float +lbl_801D613C = .sdata2:0x801D613C; // type:object size:0x4 data:float +lbl_801D6140 = .sdata2:0x801D6140; // type:object size:0x4 data:float +lbl_801D6144 = .sdata2:0x801D6144; // type:object size:0x4 data:float +lbl_801D6148 = .sdata2:0x801D6148; // type:object size:0x4 data:float +lbl_801D614C = .sdata2:0x801D614C; // type:object size:0x4 data:float +lbl_801D6150 = .sdata2:0x801D6150; // type:object size:0x4 data:float +lbl_801D6154 = .sdata2:0x801D6154; // type:object size:0x4 data:float +lbl_801D6158 = .sdata2:0x801D6158; // type:object size:0x4 data:float +lbl_801D6160 = .sdata2:0x801D6160; // type:object size:0x8 data:double +lbl_801D6168 = .sdata2:0x801D6168; // type:object size:0x4 data:float +lbl_801D616C = .sdata2:0x801D616C; // type:object size:0x4 data:float +lbl_801D6170 = .sdata2:0x801D6170; // type:object size:0x8 data:double +lbl_801D6178 = .sdata2:0x801D6178; // type:object size:0x4 data:float +lbl_801D6180 = .sdata2:0x801D6180; // type:object size:0x8 data:double +lbl_801D6188 = .sdata2:0x801D6188; // type:object size:0x4 data:float +lbl_801D6190 = .sdata2:0x801D6190; // type:object size:0x8 data:double +lbl_801D6198 = .sdata2:0x801D6198; // type:object size:0x4 data:float +lbl_801D619C = .sdata2:0x801D619C; // type:object size:0x4 data:float +lbl_801D61A0 = .sdata2:0x801D61A0; // type:object size:0x4 data:float +lbl_801D61A8 = .sdata2:0x801D61A8; // type:object size:0x8 data:double +lbl_801D61B0 = .sdata2:0x801D61B0; // type:object size:0x4 data:float +lbl_801D61B4 = .sdata2:0x801D61B4; // type:object size:0x4 data:float +lbl_801D61B8 = .sdata2:0x801D61B8; // type:object size:0x8 data:double +lbl_801D61C0 = .sdata2:0x801D61C0; // type:object size:0x4 data:float +lbl_801D61C4 = .sdata2:0x801D61C4; // type:object size:0x4 data:float +lbl_801D61C8 = .sdata2:0x801D61C8; // type:object size:0x4 data:float +lbl_801D61CC = .sdata2:0x801D61CC; // type:object size:0x4 data:float +lbl_801D61D0 = .sdata2:0x801D61D0; // type:object size:0x4 data:float +lbl_801D61D8 = .sdata2:0x801D61D8; // type:object size:0x8 data:double +lbl_801D61E0 = .sdata2:0x801D61E0; // type:object size:0x4 data:4byte +lbl_801D61E8 = .sdata2:0x801D61E8; // type:object size:0x8 data:double +lbl_801D61F0 = .sdata2:0x801D61F0; // type:object size:0x8 data:double +lbl_801D61F8 = .sdata2:0x801D61F8; // type:object size:0x8 data:double +lbl_801D6200 = .sdata2:0x801D6200; // type:object size:0x8 data:double +lbl_801D6208 = .sdata2:0x801D6208; // type:object size:0x8 data:double +lbl_801D6210 = .sdata2:0x801D6210; // type:object size:0x8 data:double +lbl_801D6218 = .sdata2:0x801D6218; // type:object size:0x8 data:double +lbl_801D6220 = .sdata2:0x801D6220; // type:object size:0x8 data:double +lbl_801D6228 = .sdata2:0x801D6228; // type:object size:0x8 data:double +lbl_801D6230 = .sdata2:0x801D6230; // type:object size:0x8 data:double +lbl_801D6238 = .sdata2:0x801D6238; // type:object size:0x8 data:double +lbl_801D6240 = .sdata2:0x801D6240; // type:object size:0x8 data:double +lbl_801D6248 = .sdata2:0x801D6248; // type:object size:0x8 data:double +lbl_801D6250 = .sdata2:0x801D6250; // type:object size:0x8 data:double +lbl_801D6258 = .sdata2:0x801D6258; // type:object size:0x8 data:double +lbl_801D6260 = .sdata2:0x801D6260; // type:object size:0x8 data:double +lbl_801D6268 = .sdata2:0x801D6268; // type:object size:0x8 data:double +lbl_801D6270 = .sdata2:0x801D6270; // type:object size:0x8 data:double +lbl_801D6278 = .sdata2:0x801D6278; // type:object size:0x8 data:double +lbl_801D6280 = .sdata2:0x801D6280; // type:object size:0x8 data:double +lbl_801D6288 = .sdata2:0x801D6288; // type:object size:0x8 data:double +lbl_801D6290 = .sdata2:0x801D6290; // type:object size:0x8 data:double +lbl_801D6298 = .sdata2:0x801D6298; // type:object size:0x8 data:double +lbl_801D62A0 = .sdata2:0x801D62A0; // type:object size:0x8 data:double +lbl_801D62A8 = .sdata2:0x801D62A8; // type:object size:0x8 data:double +lbl_801D62B0 = .sdata2:0x801D62B0; // type:object size:0x8 data:double +lbl_801D62B8 = .sdata2:0x801D62B8; // type:object size:0x8 data:double +lbl_801D62C0 = .sdata2:0x801D62C0; // type:object size:0x8 data:double +lbl_801D62C8 = .sdata2:0x801D62C8; // type:object size:0x8 data:double +lbl_801D62D0 = .sdata2:0x801D62D0; // type:object size:0x8 data:double +lbl_801D62D8 = .sdata2:0x801D62D8; // type:object size:0x8 data:double +lbl_801D62E0 = .sdata2:0x801D62E0; // type:object size:0x8 data:double +lbl_801D62E8 = .sdata2:0x801D62E8; // type:object size:0x8 data:double +lbl_801D62F0 = .sdata2:0x801D62F0; // type:object size:0x8 data:double +lbl_801D62F8 = .sdata2:0x801D62F8; // type:object size:0x8 data:double +lbl_801D6300 = .sdata2:0x801D6300; // type:object size:0x8 data:double +lbl_801D6308 = .sdata2:0x801D6308; // type:object size:0x8 data:double +lbl_801D6310 = .sdata2:0x801D6310; // type:object size:0x8 data:double +lbl_801D6318 = .sdata2:0x801D6318; // type:object size:0x8 data:double +lbl_801D6320 = .sdata2:0x801D6320; // type:object size:0x8 data:double +lbl_801D6328 = .sdata2:0x801D6328; // type:object size:0x8 data:double +lbl_801D6330 = .sdata2:0x801D6330; // type:object size:0x8 data:double +lbl_801D6338 = .sdata2:0x801D6338; // type:object size:0x8 data:double +lbl_801D6340 = .sdata2:0x801D6340; // type:object size:0x8 data:double +lbl_801D6348 = .sdata2:0x801D6348; // type:object size:0x8 data:double +lbl_801D6350 = .sdata2:0x801D6350; // type:object size:0x8 data:double +lbl_801D6358 = .sdata2:0x801D6358; // type:object size:0x8 data:double +lbl_801D6360 = .sdata2:0x801D6360; // type:object size:0x8 data:double +lbl_801D6368 = .sdata2:0x801D6368; // type:object size:0x8 data:double +lbl_801D6370 = .sdata2:0x801D6370; // type:object size:0x8 data:double +lbl_801D6378 = .sdata2:0x801D6378; // type:object size:0x8 data:double +lbl_801D6380 = .sdata2:0x801D6380; // type:object size:0x8 data:double +lbl_801D6388 = .sdata2:0x801D6388; // type:object size:0x8 data:double +lbl_801D6390 = .sdata2:0x801D6390; // type:object size:0x8 data:double +lbl_801D6398 = .sdata2:0x801D6398; // type:object size:0x8 data:double +lbl_801D63A0 = .sdata2:0x801D63A0; // type:object size:0x8 data:double +lbl_801D63A8 = .sdata2:0x801D63A8; // type:object size:0x8 data:double +lbl_801D63B0 = .sdata2:0x801D63B0; // type:object size:0x8 data:double +lbl_801D63B8 = .sdata2:0x801D63B8; // type:object size:0x8 data:double +lbl_801D63C0 = .sdata2:0x801D63C0; // type:object size:0x8 data:double +lbl_801D63C8 = .sdata2:0x801D63C8; // type:object size:0x8 data:double +lbl_801D63D0 = .sdata2:0x801D63D0; // type:object size:0x8 data:double +lbl_801D63D8 = .sdata2:0x801D63D8; // type:object size:0x8 data:double +lbl_801D63E0 = .sdata2:0x801D63E0; // type:object size:0x8 data:double +lbl_801D63E8 = .sdata2:0x801D63E8; // type:object size:0x8 data:double +lbl_801D63F0 = .sdata2:0x801D63F0; // type:object size:0x8 data:double +lbl_801D63F8 = .sdata2:0x801D63F8; // type:object size:0x8 data:double +lbl_801D6400 = .sdata2:0x801D6400; // type:object size:0x8 data:double +lbl_801D6408 = .sdata2:0x801D6408; // type:object size:0x8 data:double +lbl_801D6410 = .sdata2:0x801D6410; // type:object size:0x8 data:double +lbl_801D6418 = .sdata2:0x801D6418; // type:object size:0x8 data:double +lbl_801D6420 = .sdata2:0x801D6420; // type:object size:0x8 data:double +lbl_801D6428 = .sdata2:0x801D6428; // type:object size:0x8 data:double +lbl_801D6430 = .sdata2:0x801D6430; // type:object size:0x8 data:double +lbl_801D6438 = .sdata2:0x801D6438; // type:object size:0x8 data:double +lbl_801D6440 = .sdata2:0x801D6440; // type:object size:0x8 data:double +lbl_801D6448 = .sdata2:0x801D6448; // type:object size:0x8 data:double +lbl_801D6450 = .sdata2:0x801D6450; // type:object size:0x8 data:double +lbl_801D6458 = .sdata2:0x801D6458; // type:object size:0x8 data:double +lbl_801D6460 = .sdata2:0x801D6460; // type:object size:0x8 data:double +lbl_801D6468 = .sdata2:0x801D6468; // type:object size:0x8 data:double +lbl_801D6470 = .sdata2:0x801D6470; // type:object size:0x8 data:double +lbl_801D6478 = .sdata2:0x801D6478; // type:object size:0x8 data:double +lbl_801D6480 = .sdata2:0x801D6480; // type:object size:0x8 data:double +lbl_801D6488 = .sdata2:0x801D6488; // type:object size:0x8 data:double +lbl_801D6490 = .sdata2:0x801D6490; // type:object size:0x8 data:double +lbl_801D6498 = .sdata2:0x801D6498; // type:object size:0x8 data:double +lbl_801D64A0 = .sdata2:0x801D64A0; // type:object size:0x8 data:double +lbl_801D64A8 = .sdata2:0x801D64A8; // type:object size:0x8 data:double +lbl_801D64B0 = .sdata2:0x801D64B0; // type:object size:0x8 data:double +lbl_801D64B8 = .sdata2:0x801D64B8; // type:object size:0x8 data:double +lbl_801D64C0 = .sdata2:0x801D64C0; // type:object size:0x8 data:double +lbl_801D64C8 = .sdata2:0x801D64C8; // type:object size:0x8 data:double +lbl_801D64D0 = .sdata2:0x801D64D0; // type:object size:0x8 data:double +lbl_801D64D8 = .sdata2:0x801D64D8; // type:object size:0x8 data:double +lbl_801D64E0 = .sdata2:0x801D64E0; // type:object size:0x8 data:double +lbl_801D64E8 = .sdata2:0x801D64E8; // type:object size:0x8 data:double +lbl_801D64F0 = .sdata2:0x801D64F0; // type:object size:0x8 data:double +lbl_801D64F8 = .sdata2:0x801D64F8; // type:object size:0x8 data:double +lbl_801D6500 = .sdata2:0x801D6500; // type:object size:0x8 data:double +lbl_801D6508 = .sdata2:0x801D6508; // type:object size:0x8 data:double +lbl_801D6510 = .sdata2:0x801D6510; // type:object size:0x8 data:double +lbl_801D6518 = .sdata2:0x801D6518; // type:object size:0x8 data:double +lbl_801D6520 = .sdata2:0x801D6520; // type:object size:0x8 data:double +lbl_801D6528 = .sdata2:0x801D6528; // type:object size:0x8 data:double +lbl_801D6530 = .sdata2:0x801D6530; // type:object size:0x8 data:double +lbl_801D6538 = .sdata2:0x801D6538; // type:object size:0x8 data:double +lbl_801D6540 = .sdata2:0x801D6540; // type:object size:0x8 data:double +lbl_801D6548 = .sdata2:0x801D6548; // type:object size:0x8 data:double +lbl_801D6550 = .sdata2:0x801D6550; // type:object size:0x8 data:double +lbl_801D6558 = .sdata2:0x801D6558; // type:object size:0x8 data:double +lbl_801D6560 = .sdata2:0x801D6560; // type:object size:0x8 data:double +lbl_801D6568 = .sdata2:0x801D6568; // type:object size:0x8 data:double +lbl_801D6570 = .sdata2:0x801D6570; // type:object size:0x8 data:double +lbl_801D6578 = .sdata2:0x801D6578; // type:object size:0x8 data:double +lbl_801D6580 = .sdata2:0x801D6580; // type:object size:0x8 data:double +lbl_801D6588 = .sdata2:0x801D6588; // type:object size:0x8 data:double +lbl_801D6590 = .sdata2:0x801D6590; // type:object size:0x8 data:double +lbl_801D6598 = .sdata2:0x801D6598; // type:object size:0x8 data:double +lbl_801D65A0 = .sdata2:0x801D65A0; // type:object size:0x8 data:double +lbl_801D65A8 = .sdata2:0x801D65A8; // type:object size:0x8 data:double +lbl_801D65B0 = .sdata2:0x801D65B0; // type:object size:0x8 data:double +lbl_801D65B8 = .sdata2:0x801D65B8; // type:object size:0x8 data:double +lbl_801D65C0 = .sdata2:0x801D65C0; // type:object size:0x8 data:double +lbl_801D65C8 = .sdata2:0x801D65C8; // type:object size:0x8 data:double +lbl_801D65D0 = .sdata2:0x801D65D0; // type:object size:0x8 data:double +lbl_801D65D8 = .sdata2:0x801D65D8; // type:object size:0x8 data:double +lbl_801D65E0 = .sdata2:0x801D65E0; // type:object size:0x8 data:double +lbl_801D65E8 = .sdata2:0x801D65E8; // type:object size:0x8 data:double +lbl_801D65F0 = .sdata2:0x801D65F0; // type:object size:0x8 data:double +lbl_801D65F8 = .sdata2:0x801D65F8; // type:object size:0x8 data:double +lbl_801D6600 = .sdata2:0x801D6600; // type:object size:0x8 data:double +lbl_801D6608 = .sdata2:0x801D6608; // type:object size:0x8 data:double +lbl_801D6610 = .sdata2:0x801D6610; // type:object size:0x8 data:double +lbl_801D6618 = .sdata2:0x801D6618; // type:object size:0x8 data:double +lbl_801D6620 = .sdata2:0x801D6620; // type:object size:0x8 data:double +lbl_801D6628 = .sdata2:0x801D6628; // type:object size:0x8 data:double +lbl_801D6630 = .sdata2:0x801D6630; // type:object size:0x8 data:double +lbl_801D6638 = .sdata2:0x801D6638; // type:object size:0x8 data:double +lbl_801D6640 = .sdata2:0x801D6640; // type:object size:0x8 data:double +lbl_801D6648 = .sdata2:0x801D6648; // type:object size:0x8 data:double +lbl_801D6650 = .sdata2:0x801D6650; // type:object size:0x4 data:float +lbl_801D6654 = .sdata2:0x801D6654; // type:object size:0x4 data:float +lbl_801D6658 = .sdata2:0x801D6658; // type:object size:0x4 data:float +lbl_801D6660 = .sdata2:0x801D6660; // type:object size:0x8 data:double +lbl_801D6668 = .sdata2:0x801D6668; // type:object size:0x8 data:double +lbl_801D6670 = .sdata2:0x801D6670; // type:object size:0x4 data:float +lbl_801D6674 = .sdata2:0x801D6674; // type:object size:0x4 data:float +lbl_801D6678 = .sdata2:0x801D6678; // type:object size:0x4 data:float +lbl_801D667C = .sdata2:0x801D667C; // type:object size:0x4 data:float +lbl_801D6680 = .sdata2:0x801D6680; // type:object size:0x4 data:float +lbl_801D6684 = .sdata2:0x801D6684; // type:object size:0x4 data:float +lbl_801D6688 = .sdata2:0x801D6688; // type:object size:0x4 data:float +lbl_801D668C = .sdata2:0x801D668C; // type:object size:0x4 data:float +lbl_801D6690 = .sdata2:0x801D6690; // type:object size:0x4 data:float +lbl_801D6698 = .sdata2:0x801D6698; // type:object size:0x8 data:double +lbl_801D66A0 = .sdata2:0x801D66A0; // type:object size:0x8 data:double +lbl_801D66A8 = .sdata2:0x801D66A8; // type:object size:0x4 data:float +lbl_801D66AC = .sdata2:0x801D66AC; // type:object size:0x4 data:float +lbl_801D66B0 = .sdata2:0x801D66B0; // type:object size:0x4 data:float +lbl_801D66B8 = .sdata2:0x801D66B8; // type:object size:0x8 data:double +lbl_801D66C0 = .sdata2:0x801D66C0; // type:object size:0x8 data:float +lbl_801D66C8 = .sdata2:0x801D66C8; // type:object size:0x4 data:float +lbl_801D66CC = .sdata2:0x801D66CC; // type:object size:0x4 data:float +lbl_801D66D0 = .sdata2:0x801D66D0; // type:object size:0x4 data:float +lbl_801D66D8 = .sdata2:0x801D66D8; // type:object size:0x8 data:double +lbl_801D66E0 = .sdata2:0x801D66E0; // type:object size:0x8 data:double +lbl_801D66E8 = .sdata2:0x801D66E8; // type:object size:0x4 data:float +lbl_801D66EC = .sdata2:0x801D66EC; // type:object size:0x4 data:float +lbl_801D66F0 = .sdata2:0x801D66F0; // type:object size:0x4 data:float +lbl_801D66F8 = .sdata2:0x801D66F8; // type:object size:0x8 data:double +lbl_801D6700 = .sdata2:0x801D6700; // type:object size:0x4 data:float +lbl_801D6708 = .sdata2:0x801D6708; // type:object size:0x8 data:double +lbl_801D6710 = .sdata2:0x801D6710; // type:object size:0x4 data:float +lbl_801D6714 = .sdata2:0x801D6714; // type:object size:0x4 data:float +lbl_801D6718 = .sdata2:0x801D6718; // type:object size:0x8 data:double +lbl_801D6720 = .sdata2:0x801D6720; // type:object size:0x4 data:float +lbl_801D6728 = .sdata2:0x801D6728; // type:object size:0x8 data:double +lbl_801D6730 = .sdata2:0x801D6730; // type:object size:0x4 data:float +lbl_801D6734 = .sdata2:0x801D6734; // type:object size:0x4 data:float +lbl_801D6738 = .sdata2:0x801D6738; // type:object size:0x4 data:float +lbl_801D6740 = .sdata2:0x801D6740; // type:object size:0x8 data:double +lbl_801D6748 = .sdata2:0x801D6748; // type:object size:0x4 data:float +lbl_801D6750 = .sdata2:0x801D6750; // type:object size:0x8 data:double +lbl_801D6758 = .sdata2:0x801D6758; // type:object size:0x4 data:float +lbl_801D675C = .sdata2:0x801D675C; // type:object size:0x4 data:float +lbl_801D6760 = .sdata2:0x801D6760; // type:object size:0x8 data:float +lbl_801D6768 = .sdata2:0x801D6768; // type:object size:0x4 data:float +lbl_801D6770 = .sdata2:0x801D6770; // type:object size:0x8 data:double +lbl_801D6778 = .sdata2:0x801D6778; // type:object size:0x4 data:float +lbl_801D677C = .sdata2:0x801D677C; // type:object size:0x4 data:float +lbl_801D6780 = .sdata2:0x801D6780; // type:object size:0x8 data:double +lbl_801D6788 = .sdata2:0x801D6788; // type:object size:0x4 data:float +lbl_801D678C = .sdata2:0x801D678C; // type:object size:0x4 data:float +lbl_801D6790 = .sdata2:0x801D6790; // type:object size:0x8 data:double +lbl_801D6798 = .sdata2:0x801D6798; // type:object size:0x4 data:float +lbl_801D679C = .sdata2:0x801D679C; // type:object size:0x4 data:float +lbl_801D67A0 = .sdata2:0x801D67A0; // type:object size:0x4 data:float +lbl_801D67A4 = .sdata2:0x801D67A4; // type:object size:0x4 data:float +lbl_801D67A8 = .sdata2:0x801D67A8; // type:object size:0x4 data:float +lbl_801D67AC = .sdata2:0x801D67AC; // type:object size:0x4 data:float +lbl_801D67B0 = .sdata2:0x801D67B0; // type:object size:0x8 data:float +lbl_801D67B8 = .sdata2:0x801D67B8; // type:object size:0x4 data:float +lbl_801D67C0 = .sdata2:0x801D67C0; // type:object size:0x8 data:double +lbl_801D67C8 = .sdata2:0x801D67C8; // type:object size:0x8 data:double +lbl_801D67D0 = .sdata2:0x801D67D0; // type:object size:0x8 data:float +lbl_801D67D8 = .sdata2:0x801D67D8; // type:object size:0x4 data:float +lbl_801D67DC = .sdata2:0x801D67DC; // type:object size:0x4 data:float +lbl_801D67E0 = .sdata2:0x801D67E0; // type:object size:0x4 data:float +lbl_801D67E8 = .sdata2:0x801D67E8; // type:object size:0x8 data:double +lbl_801D67F0 = .sdata2:0x801D67F0; // type:object size:0x4 data:float +lbl_801D67F4 = .sdata2:0x801D67F4; // type:object size:0x4 data:float +lbl_801D67F8 = .sdata2:0x801D67F8; // type:object size:0x4 data:float +lbl_801D67FC = .sdata2:0x801D67FC; // type:object size:0x4 data:float +lbl_801D6800 = .sdata2:0x801D6800; // type:object size:0x4 data:float +lbl_801D6804 = .sdata2:0x801D6804; // type:object size:0x4 data:float +lbl_801D6808 = .sdata2:0x801D6808; // type:object size:0x8 data:double +lbl_801D6810 = .sdata2:0x801D6810; // type:object size:0x4 data:float +lbl_801D6814 = .sdata2:0x801D6814; // type:object size:0x4 data:float +lbl_801D6818 = .sdata2:0x801D6818; // type:object size:0x8 data:double +lbl_801D6820 = .sdata2:0x801D6820; // type:object size:0x4 data:float +lbl_801D6824 = .sdata2:0x801D6824; // type:object size:0x4 data:float +lbl_801D6828 = .sdata2:0x801D6828; // type:object size:0x8 data:double +lbl_801D6830 = .sdata2:0x801D6830; // type:object size:0x4 data:float +lbl_801D6834 = .sdata2:0x801D6834; // type:object size:0x4 data:float +lbl_801D6838 = .sdata2:0x801D6838; // type:object size:0x4 data:float +lbl_801D683C = .sdata2:0x801D683C; // type:object size:0x4 data:float +lbl_801D6840 = .sdata2:0x801D6840; // type:object size:0x4 data:float +lbl_801D6844 = .sdata2:0x801D6844; // type:object size:0x4 data:float +lbl_801D6848 = .sdata2:0x801D6848; // type:object size:0x8 data:double +lbl_801D6850 = .sdata2:0x801D6850; // type:object size:0x4 data:float +lbl_801D6854 = .sdata2:0x801D6854; // type:object size:0x4 data:float +lbl_801D6858 = .sdata2:0x801D6858; // type:object size:0x8 data:double +lbl_801D6860 = .sdata2:0x801D6860; // type:object size:0x8 data:double +lbl_801D6868 = .sdata2:0x801D6868; // type:object size:0x4 data:float +lbl_801D686C = .sdata2:0x801D686C; // type:object size:0x4 data:float +lbl_801D6870 = .sdata2:0x801D6870; // type:object size:0x4 data:float +lbl_801D6878 = .sdata2:0x801D6878; // type:object size:0x8 data:double +lbl_801D6880 = .sdata2:0x801D6880; // type:object size:0x4 data:4byte +lbl_801D6884 = .sdata2:0x801D6884; // type:object size:0x4 data:4byte +lbl_801D6888 = .sdata2:0x801D6888; // type:object size:0x4 data:float +lbl_801D688C = .sdata2:0x801D688C; // type:object size:0x4 data:float +lbl_801D6890 = .sdata2:0x801D6890; // type:object size:0x4 data:float +lbl_801D6894 = .sdata2:0x801D6894; // type:object size:0x4 data:float +lbl_801D6898 = .sdata2:0x801D6898; // type:object size:0x8 data:double +lbl_801D68A0 = .sbss2:0x801D68A0; // type:object size:0x1 data:byte +lbl_801D68A1 = .sbss2:0x801D68A1; // type:object size:0x1 data:byte +lbl_801D68A2 = .sbss2:0x801D68A2; // type:object size:0x1 data:byte +lbl_801D68A3 = .sbss2:0x801D68A3; // type:object size:0x1 data:byte +lbl_801D68A4 = .sbss2:0x801D68A4; // type:object size:0x1 data:byte +lbl_801D68A5 = .sbss2:0x801D68A5; // type:object size:0x1 data:byte +lbl_801D68A6 = .sbss2:0x801D68A6; // type:object size:0x1 data:byte +lbl_801D68A7 = .sbss2:0x801D68A7; // type:object size:0x1 data:byte diff --git a/configure.py b/configure.py index ca011b7c..ea943200 100644 --- a/configure.py +++ b/configure.py @@ -33,6 +33,7 @@ VERSIONS = [ "GMPE01_01", # USA 1.1 "GMPP01_00", # PAL 1.0 "GMPP01_02", # PAL 1.2 + "GMPJ01_00", # Japan 1.0 ] parser = argparse.ArgumentParser() @@ -373,85 +374,85 @@ config.libs = [ "cflags": cflags_game, "host": False, "objects": [ - Object(Matching, "game/main.c"), - Object(Matching, "game/pad.c"), - Object(Matching, "game/dvd.c"), - Object(Matching, "game/data.c"), - Object(Matching, "game/decode.c"), - Object(Matching, "game/font.c"), - Object(Matching, "game/init.c"), - Object(Matching, "game/jmp.c"), - Object(Matching, "game/malloc.c"), - Object(Matching, "game/memory.c"), - Object(Matching, "game/printfunc.c"), - Object(Matching, "game/process.c"), - Object(Matching, "game/sprman.c"), - Object(Matching, "game/sprput.c"), - Object(Matching, "game/hsfload.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/pad.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/dvd.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/data.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/decode.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/font.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/init.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/jmp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/malloc.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/memory.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/printfunc.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/process.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/sprman.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/sprput.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfload.c"), Object(NonMatching, "game/hsfdraw.c"), - Object(Matching, "game/hsfman.c"), - Object(Matching, "game/hsfmotion.c"), - Object(Matching, "game/hsfanim.c"), - Object(Matching, "game/hsfex.c"), - Object(Matching, "game/perf.c"), - Object(Matching, "game/objmain.c"), - Object(Matching, "game/fault.c"), - Object(Matching, "game/gamework.c"), - Object(Matching, "game/objsysobj.c"), - Object(Matching, "game/objdll.c"), - Object(Matching, "game/frand.c"), - Object(Matching, "game/audio.c"), - Object(Matching, "game/EnvelopeExec.c"), - Object(Matching, "game/minigame_seq.c"), - Object(Matching, "game/ovllist.c"), - Object(Matching, "game/esprite.c"), - Object(Matching, "game/code_8003FF68.c"), - Object(Matching, "game/ClusterExec.c"), - Object(Matching, "game/ShapeExec.c"), - Object(Matching, "game/wipe.c"), - Object(Matching, "game/window.c"), - Object(Matching, "game/messdata.c"), - Object(Matching, "game/card.c"), - Object(Matching, "game/armem.c"), - Object(Matching, "game/chrman.c"), - Object(Matching, "game/mapspace.c"), - Object(Matching, "game/THPSimple.c"), - Object(Matching, "game/THPDraw.c"), - Object(Matching, "game/thpmain.c"), - Object(Matching, "game/objsub.c"), - Object(Matching, "game/flag.c"), - Object(Matching, "game/saveload.c"), - Object(Matching, "game/sreset.c"), - Object(Matching, "game/board/main.c"), - Object(Matching, "game/board/player.c"), - Object(Matching, "game/board/model.c"), - Object(Matching, "game/board/window.c"), - Object(Matching, "game/board/audio.c"), - Object(Matching, "game/board/com.c"), - Object(Matching, "game/board/view.c"), - Object(Matching, "game/board/space.c"), - Object(Matching, "game/board/shop.c"), - Object(Matching, "game/board/lottery.c"), - Object(Matching, "game/board/basic_space.c"), - Object(Matching, "game/board/warp.c"), - Object(Matching, "game/board/char_wheel.c"), - Object(Matching, "game/board/mushroom.c"), - Object(Matching, "game/board/star.c"), - Object(Matching, "game/board/roll.c"), - Object(Matching, "game/board/ui.c"), - Object(Matching, "game/board/block.c"), - Object(Matching, "game/board/item.c"), - Object(Matching, "game/board/bowser.c"), - Object(Matching, "game/board/battle.c"), - Object(Matching, "game/board/fortune.c"), - Object(Matching, "game/board/boo.c"), - Object(Matching, "game/board/mg_setup.c"), - Object(Matching, "game/board/boo_house.c"), - Object(Matching, "game/board/start.c"), - Object(Matching, "game/board/last5.c"), - Object(Matching, "game/board/pause.c"), - Object(Matching, "game/board/com_path.c"), - Object(Matching, "game/board/tutorial.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfman.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfmotion.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfanim.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/perf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objmain.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/fault.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/gamework.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objsysobj.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objdll.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/frand.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/audio.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/EnvelopeExec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/minigame_seq.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/ovllist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/esprite.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/code_8003FF68.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/ClusterExec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/ShapeExec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/wipe.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/messdata.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/card.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/armem.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/chrman.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/mapspace.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/THPSimple.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/THPDraw.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/thpmain.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objsub.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/flag.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/saveload.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/sreset.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/model.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/audio.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/com.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/view.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/space.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/shop.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/lottery.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/basic_space.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/warp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/char_wheel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/mushroom.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/star.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/roll.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/ui.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/block.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/bowser.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/battle.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/fortune.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/boo.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/mg_setup.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/boo_house.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/start.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/last5.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/pause.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/com_path.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/tutorial.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/kerent.c"), ], }, @@ -464,7 +465,7 @@ config.libs = [ DolphinLib( "os", [ - Object(Matching, "dolphin/os/OS.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OS.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSAlarm.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSAlloc.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSArena.c"), @@ -486,7 +487,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSSync.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSThread.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSTime.c"), - Object(Matching, "dolphin/os/__start.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/__start.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/__ppc_eabi_init.c"), ], ), @@ -821,43 +822,43 @@ config.libs = [ "cflags": cflags_rel, "host": False, "objects": [ - Object(Matching, "REL/executor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/executor.c"), Object(Matching, "REL/empty.c"), # Must be marked as matching - Object(Matching, "REL/board_executor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/board_executor.c"), ], }, Rel( "_minigameDLL", objects={ - Object(Matching, "REL/_minigameDLL/_minigameDLL.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/_minigameDLL/_minigameDLL.c"), }, ), Rel( "bootDll", objects={ - Object(Matching, "REL/bootDll/main.c"), - Object(Matching, "REL/bootDll/language.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/nintendo_data.c"), }, ), Rel( "E3setupDLL", objects={ - Object(Matching, "REL/E3setupDLL/mgselect.c"), - Object(Matching, "REL/E3setupDLL/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/mgselect.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/main.c"), }, ), Rel( "instDll", objects={ - Object(Matching, "REL/instDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/font.c"), }, ), Rel( "m401Dll", # Manta Rings objects={ - Object(Matching, "REL/m401Dll/main.c"), - Object(Matching, "REL/m401Dll/main_ex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main_ex.c"), }, ), Rel( @@ -995,11 +996,11 @@ config.libs = [ Rel( "m420dll", # Fish n' Drips objects={ - Object(Matching, "REL/m420dll/main.c"), - Object(Matching, "REL/m420dll/camera.c"), - Object(Matching, "REL/m420dll/player.c"), - Object(Matching, "REL/m420dll/map.c"), - Object(Matching, "REL/m420dll/rand.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/rand.c"), }, ), Rel( @@ -1063,7 +1064,7 @@ config.libs = [ Rel( "m429Dll", # Team Treasure Trek objects={ - Object(Matching, "REL/m429Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m429Dll/main.c"), }, ), Rel( @@ -1077,14 +1078,14 @@ config.libs = [ Rel( "m431Dll", # Order Up objects={ - Object(Matching, "REL/m431Dll/main.c"), - Object(Matching, "REL/m431Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/object.c"), }, ), Rel( "m432Dll", # Dungeon Duos objects={ - Object(Matching, "REL/m432Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m432Dll/main.c"), }, ), Rel( @@ -1098,10 +1099,10 @@ config.libs = [ Rel( "m434Dll", # Cheep Cheep Sweep objects={ - Object(Matching, "REL/m434Dll/main.c"), - Object(Matching, "REL/m434Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/map.c"), Object(NonMatching, "REL/m434Dll/player.c"), - Object(Matching, "REL/m434Dll/fish.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/fish.c"), }, ), Rel( @@ -1114,15 +1115,15 @@ config.libs = [ Rel( "m436Dll", # Fruits of Doom objects={ - Object(Matching, "REL/m436Dll/main.c"), - Object(Matching, "REL/m436Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/sequence.c"), }, ), Rel( "m437Dll", # Balloon of Doom objects={ - Object(Matching, "REL/m437Dll/main.c"), - Object(Matching, "REL/m437Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/sequence.c"), }, ), Rel( @@ -1136,26 +1137,26 @@ config.libs = [ Rel( "m439Dll", # Paths of Peril objects={ - Object(Matching, "REL/m439Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m439Dll/main.c"), }, ), Rel( "m440Dll", # Bowser's Bigger Blast objects={ - Object(Matching, "REL/m440Dll/main.c"), - Object(Matching, "REL/m440Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/object.c"), }, ), Rel( "m441Dll", # Butterfly Blitz objects={ - Object(Matching, "REL/m441Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m441Dll/main.c"), }, ), Rel( "m442Dll", # Barrel Baron objects={ - Object(Matching, "REL/m442Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/score.c"), }, ), @@ -1221,7 +1222,7 @@ config.libs = [ Rel( "m450Dll", # The Final Battle! objects={ - Object(Matching, "REL/m450Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m450Dll/main.c"), }, ), Rel( @@ -1300,8 +1301,8 @@ config.libs = [ Rel( "mentDll", objects={ - Object(Matching, "REL/mentDll/common.c"), - Object(Matching, "REL/mentDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/common.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/main.c"), }, ), Rel( @@ -1326,9 +1327,9 @@ config.libs = [ Rel( "modeltestDll", objects={ - Object(Matching, "REL/modeltestDll/main.c"), - Object(Matching, "REL/modeltestDll/modeltest00.c"), - Object(Matching, "REL/modeltestDll/modeltest01.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest00.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest01.c"), }, ), Rel( @@ -1343,9 +1344,9 @@ config.libs = [ Rel( "mpexDll", objects={ - Object(Matching, "REL/mpexDll/main.c"), - Object(Matching, "REL/mpexDll/mpex.c"), - Object(Matching, "REL/mpexDll/charsel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mpex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/charsel.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mgname.c"), }, ), @@ -1397,51 +1398,51 @@ config.libs = [ Rel( "option", objects={ - Object(Matching, "REL/option/scene.c"), - Object(Matching, "REL/option/camera.c"), - Object(Matching, "REL/option/room.c"), - Object(Matching, "REL/option/guide.c"), - Object(Matching, "REL/option/state.c"), - Object(Matching, "REL/option/rumble.c"), - Object(Matching, "REL/option/sound.c"), - Object(Matching, "REL/option/record.c"), - Object(Matching, "REL/option/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/scene.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/room.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/guide.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/state.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/rumble.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/sound.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/record.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/window.c"), }, ), Rel( "present", objects={ - Object(Matching, "REL/present/init.c"), - Object(Matching, "REL/present/camera.c"), - Object(Matching, "REL/present/present.c"), - Object(Matching, "REL/present/main.c"), - Object(Matching, "REL/present/common.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/init.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/present.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/common.c"), }, ), Rel( "resultDll", objects={ - Object(Matching, "REL/resultDll/main.c"), - Object(Matching, "REL/resultDll/battle.c"), - Object(Matching, "REL/resultDll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/battle.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/datalist.c"), }, ), Rel( "safDll", objects={ - Object(Matching, "REL/safDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/safDll/main.c"), }, ), Rel( "selmenuDll", objects={ - Object(Matching, "REL/selmenuDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/selmenuDll/main.c"), }, ), Rel( "staffDll", objects={ - Object(Matching, "REL/staffDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/staffDll/main.c"), }, ), Rel( @@ -1453,87 +1454,87 @@ config.libs = [ Rel( "w01Dll", # Toad's Midway Madness objects={ - Object(Matching, "REL/w01Dll/main.c"), - Object(Matching, "REL/w01Dll/mg_coin.c"), - Object(Matching, "REL/w01Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_item.c"), }, ), Rel( "w02Dll", # Goomba's Greedy Gala objects={ - Object(Matching, "REL/w02Dll/main.c"), - Object(Matching, "REL/w02Dll/gendice.c"), - Object(Matching, "REL/w02Dll/gamble.c"), - Object(Matching, "REL/w02Dll/mg_coin.c"), - Object(Matching, "REL/w02Dll/mg_item.c"), - Object(Matching, "REL/w02Dll/shuffleboard.c"), - Object(Matching, "REL/w02Dll/roulette.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/gendice.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/gamble.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/shuffleboard.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/roulette.c"), }, ), Rel( "w03Dll", # Shy Guy's Jungle Jam objects={ - Object(Matching, "REL/w03Dll/main.c"), - Object(Matching, "REL/w03Dll/statue.c"), - Object(Matching, "REL/w03Dll/condor.c"), - Object(Matching, "REL/w03Dll/river.c"), - Object(Matching, "REL/w03Dll/smoke.c"), - Object(Matching, "REL/w03Dll/mg_coin.c"), - Object(Matching, "REL/w03Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/statue.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/condor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/river.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/smoke.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/mg_item.c"), }, ), Rel( "w04Dll", # Boo's Haunted Bash objects={ - Object(Matching, "REL/w04Dll/main.c"), - Object(Matching, "REL/w04Dll/bridge.c"), - Object(Matching, "REL/w04Dll/boo_event.c"), - Object(Matching, "REL/w04Dll/big_boo.c"), - Object(Matching, "REL/w04Dll/mg_item.c"), - Object(Matching, "REL/w04Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/bridge.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/boo_event.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/big_boo.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_coin.c"), }, ), Rel( "w05Dll", # Koopa's Seaside Soiree objects={ - Object(Matching, "REL/w05Dll/main.c"), - Object(Matching, "REL/w05Dll/hotel.c"), - Object(Matching, "REL/w05Dll/monkey.c"), - Object(Matching, "REL/w05Dll/dolphin.c"), - Object(Matching, "REL/w05Dll/mg_item.c"), - Object(Matching, "REL/w05Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/hotel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/monkey.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/dolphin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_coin.c"), }, ), Rel( "w06Dll", # Bowser's Gnarly Party objects={ - Object(Matching, "REL/w06Dll/main.c"), - Object(Matching, "REL/w06Dll/mg_item.c"), - Object(Matching, "REL/w06Dll/mg_coin.c"), - Object(Matching, "REL/w06Dll/fire.c"), - Object(Matching, "REL/w06Dll/bridge.c"), - Object(Matching, "REL/w06Dll/bowser.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/fire.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/bridge.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/bowser.c"), }, ), Rel( "w10Dll", # Tutorial board objects={ - Object(Matching, "REL/w10Dll/main.c"), - Object(Matching, "REL/w10Dll/host.c"), - Object(Matching, "REL/w10Dll/scene.c"), - Object(Matching, "REL/w10Dll/tutorial.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/host.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/scene.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/tutorial.c"), }, ), Rel( "w20Dll", # Mega Board Mayhem objects={ - Object(Matching, "REL/w20Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w20Dll/main.c"), }, ), Rel( "w21Dll", # Mini Board Mad Dash objects={ - Object(Matching, "REL/w21Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w21Dll/main.c"), }, ), Rel( From f55fd84898344e04d46aa45e8cb65ab82bbdae50 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Fri, 15 Nov 2024 17:56:03 +0100 Subject: [PATCH 037/178] Work on Japanese dol splits --- config/GMPJ01_00/symbols.txt | 151 ++++++++++++++++++----------------- 1 file changed, 76 insertions(+), 75 deletions(-) diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index b95ad54c..e3026919 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -7,13 +7,13 @@ __flush_cache = .init:0x80003374; // type:function size:0x34 scope:global memset = .init:0x800033A8; // type:function size:0x30 scope:global __fill_mem = .init:0x800033D8; // type:function size:0xB8 scope:global memcpy = .init:0x80003490; // type:function size:0x50 scope:global -fn_800034E0 = .init:0x800034E0; // type:function size:0x30 -fn_80003510 = .init:0x80003510; // type:function size:0x24 +TRK_memset = .init:0x800034E0; // type:function size:0x30 +TRK_memcpy = .init:0x80003510; // type:function size:0x24 gTRKInterruptVectorTable = .init:0x80003534; // type:label scope:global lbl_80003800 = .init:0x80003800; // type:label lbl_80003C00 = .init:0x80003C00; // type:label lbl_80003F80 = .init:0x80003F80; // type:label -fn_80005468 = .init:0x80005468; // type:function size:0x104 +__TRK_reset = .init:0x80005468; // type:function size:0x104 gTRKInterruptVectorTableEnd = .init:0x80005468; // type:label scope:global _rom_copy_info = .init:0x8000556C; // type:object size:0x84 scope:global data:4byte _bss_init_info = .init:0x800055F0; // type:object size:0x20 scope:global data:4byte @@ -2014,15 +2014,15 @@ fn_800B3EB4 = .text:0x800B3EB4; // type:function size:0x30 PPCMfmsr = .text:0x800B3EE4; // type:function size:0x8 scope:global PPCMtmsr = .text:0x800B3EEC; // type:function size:0x8 scope:global PPCMfhid0 = .text:0x800B3EF4; // type:function size:0x8 scope:global -fn_800B3EFC = .text:0x800B3EFC; // type:function size:0x8 +PPCMthid0 = .text:0x800B3EFC; // type:function size:0x8 PPCMfl2cr = .text:0x800B3F04; // type:function size:0x8 scope:global PPCMtl2cr = .text:0x800B3F0C; // type:function size:0x8 scope:global PPCMtdec = .text:0x800B3F14; // type:function size:0x8 scope:weak -fn_800B3F1C = .text:0x800B3F1C; // type:function size:0x8 +PPCSync = .text:0x800B3F1C; // type:function size:0x8 PPCHalt = .text:0x800B3F24; // type:function size:0x14 scope:weak PPCMfhid2 = .text:0x800B3F38; // type:function size:0x8 scope:global PPCMthid2 = .text:0x800B3F40; // type:function size:0x8 scope:global -fn_800B3F48 = .text:0x800B3F48; // type:function size:0xC +PPCMfwpar = .text:0x800B3F48; // type:function size:0xC PPCMtwpar = .text:0x800B3F54; // type:function size:0x8 scope:global PPCDisableSpeculation = .text:0x800B3F5C; // type:function size:0x28 scope:global PPCSetFpNonIEEEMode = .text:0x800B3F84; // type:function size:0x8 scope:global @@ -2034,7 +2034,7 @@ OSExceptionInit = .text:0x800B44D0; // type:function size:0x280 scope:local __OSDBINTSTART = .text:0x800B4750; // type:label scope:global __OSDBIntegrator = .text:0x800B4750; // type:function size:0x24 scope:local __OSDBINTEND = .text:0x800B4774; // type:label scope:global -fn_800B4774 = .text:0x800B4774; // type:function size:0x4 +__OSDBJump = .text:0x800B4774; // type:function size:0x4 __OSDBJUMPEND = .text:0x800B4778; // type:label scope:global __OSSetExceptionHandler = .text:0x800B4778; // type:function size:0x1C scope:global __OSGetExceptionHandler = .text:0x800B4794; // type:function size:0x14 scope:global @@ -2045,23 +2045,23 @@ __OSEVSetNumber = .text:0x800B4810; // type:label scope:global data:4byte __OSEVEnd = .text:0x800B4840; // type:label scope:global OSDefaultExceptionHandler = .text:0x800B4844; // type:function size:0x58 scope:global __OSPSInit = .text:0x800B489C; // type:function size:0x38 scope:global -fn_800B48D4 = .text:0x800B48D4; // type:function size:0x14 +__OSGetDIConfig = .text:0x800B48D4; // type:function size:0x14 OSInitAlarm = .text:0x800B48E8; // type:function size:0x4C scope:global OSCreateAlarm = .text:0x800B4934; // type:function size:0xC scope:global InsertAlarm = .text:0x800B4940; // type:function size:0x250 scope:local OSSetAlarm = .text:0x800B4B90; // type:function size:0x68 scope:global -fn_800B4BF8 = .text:0x800B4BF8; // type:function size:0x11C +OSCancelAlarm = .text:0x800B4BF8; // type:function size:0x11C DecrementerExceptionCallback = .text:0x800B4D14; // type:function size:0x230 scope:local DecrementerExceptionHandler = .text:0x800B4F44; // type:function size:0x50 scope:local -fn_800B4F94 = .text:0x800B4F94; // type:function size:0xAC -fn_800B5040 = .text:0x800B5040; // type:function size:0xFC -fn_800B513C = .text:0x800B513C; // type:function size:0x284 -fn_800B53C0 = .text:0x800B53C0; // type:function size:0x7C -fn_800B543C = .text:0x800B543C; // type:function size:0x10 -fn_800B544C = .text:0x800B544C; // type:function size:0x70 -fn_800B54BC = .text:0x800B54BC; // type:function size:0x6C -fn_800B5528 = .text:0x800B5528; // type:function size:0x360 -fn_800B5888 = .text:0x800B5888; // type:function size:0x104 +DLInsert = .text:0x800B4F94; // type:function size:0xAC +OSAllocFromHeap = .text:0x800B5040; // type:function size:0xFC +OSAllocFixed = .text:0x800B513C; // type:function size:0x284 +OSFreeToHeap = .text:0x800B53C0; // type:function size:0x7C +OSSetCurrentHeap = .text:0x800B543C; // type:function size:0x10 +OSInitAlloc = .text:0x800B544C; // type:function size:0x70 +OSCreateHeap = .text:0x800B54BC; // type:function size:0x6C +OSCheckHeap = .text:0x800B5528; // type:function size:0x360 +OSDumpHeap = .text:0x800B5888; // type:function size:0x104 OSGetArenaHi = .text:0x800B598C; // type:function size:0x8 scope:global OSGetArenaLo = .text:0x800B5994; // type:function size:0x8 scope:global OSSetArenaHi = .text:0x800B599C; // type:function size:0x8 scope:global @@ -2071,99 +2071,100 @@ __OSStopAudioSystem = .text:0x800B5B68; // type:function size:0xD8 scope:global DCEnable = .text:0x800B5C40; // type:function size:0x14 scope:global DCInvalidateRange = .text:0x800B5C54; // type:function size:0x30 scope:global DCFlushRange = .text:0x800B5C84; // type:function size:0x34 scope:global -fn_800B5CB8 = .text:0x800B5CB8; // type:function size:0x34 +DCStoreRange = .text:0x800B5CB8; // type:function size:0x34 DCFlushRangeNoSync = .text:0x800B5CEC; // type:function size:0x30 scope:global -fn_800B5D1C = .text:0x800B5D1C; // type:function size:0x30 -fn_800B5D4C = .text:0x800B5D4C; // type:function size:0x30 +DCStoreRangeNoSync = .text:0x800B5D1C; // type:function size:0x30 +DCZeroRange = .text:0x800B5D4C; // type:function size:0x30 ICInvalidateRange = .text:0x800B5D7C; // type:function size:0x38 scope:global ICFlashInvalidate = .text:0x800B5DB4; // type:function size:0x10 scope:global ICEnable = .text:0x800B5DC4; // type:function size:0x14 scope:global -fn_800B5DD8 = .text:0x800B5DD8; // type:function size:0xCC -fn_800B5EA4 = .text:0x800B5EA4; // type:function size:0x38 +__LCEnable = .text:0x800B5DD8; // type:function size:0xCC scope:local +LCEnable = .text:0x800B5EA4; // type:function size:0x38 LCDisable = .text:0x800B5EDC; // type:function size:0x28 scope:global -fn_800B5F04 = .text:0x800B5F04; // type:function size:0x24 -fn_800B5F28 = .text:0x800B5F28; // type:function size:0xAC -fn_800B5FD4 = .text:0x800B5FD4; // type:function size:0x18 +LCStoreBlocks = .text:0x800B5F04; // type:function size:0x24 +LCStoreData = .text:0x800B5F28; // type:function size:0xAC +LCQueueWait = .text:0x800B5FD4; // type:function size:0x18 L2GlobalInvalidate = .text:0x800B5FEC; // type:function size:0x98 scope:global DMAErrorHandler = .text:0x800B6084; // type:function size:0x160 scope:global __OSCacheInit = .text:0x800B61E4; // type:function size:0xF4 scope:global __OSLoadFPUContext = .text:0x800B62D8; // type:function size:0x124 scope:local __OSSaveFPUContext = .text:0x800B63FC; // type:function size:0x128 scope:local OSSetCurrentContext = .text:0x800B6524; // type:function size:0x5C scope:global -fn_800B6580 = .text:0x800B6580; // type:function size:0xC -fn_800B658C = .text:0x800B658C; // type:function size:0x80 +OSGetCurrentContext = .text:0x800B6580; // type:function size:0xC +OSSaveContext = .text:0x800B658C; // type:function size:0x80 OSLoadContext = .text:0x800B660C; // type:function size:0xD8 scope:global OSClearContext = .text:0x800B66E4; // type:function size:0x24 scope:global -fn_800B6708 = .text:0x800B6708; // type:function size:0xBC +OSInitContext = .text:0x800B6708; // type:function size:0xBC OSDumpContext = .text:0x800B67C4; // type:function size:0x2A8 scope:global OSSwitchFPUContext = .text:0x800B6A6C; // type:function size:0x84 scope:local __OSContextInit = .text:0x800B6AF0; // type:function size:0x48 scope:global OSReport = .text:0x800B6B38; // type:function size:0x80 scope:global OSSetErrorHandler = .text:0x800B6BB8; // type:function size:0x1C scope:global __OSUnhandledException = .text:0x800B6BD4; // type:function size:0x200 scope:global -fn_800B6DD4 = .text:0x800B6DD4; // type:function size:0x58 +OSGetFontEncode = .text:0x800B6DD4; // type:function size:0x58 OSDisableInterrupts = .text:0x800B6E2C; // type:function size:0x14 scope:global +__RAS_OSDisableInterrupts_begin = .text:0x800B6E2C; // type:label scope:global +__RAS_OSDisableInterrupts_end = .text:0x800BE3C; // type:label scope:global OSEnableInterrupts = .text:0x800B6E40; // type:function size:0x14 scope:global OSRestoreInterrupts = .text:0x800B6E54; // type:function size:0x24 scope:global __OSSetInterruptHandler = .text:0x800B6E78; // type:function size:0x1C scope:global -fn_800B6E94 = .text:0x800B6E94; // type:function size:0x14 +__OSGetInterruptHandler = .text:0x800B6E94; // type:function size:0x14 __OSInterruptInit = .text:0x800B6EA8; // type:function size:0x74 scope:global -fn_800B6F1C = .text:0x800B6F1C; // type:function size:0x2D8 +SetInterruptMask = .text:0x800B6F1C; // type:function size:0x2D8 __OSMaskInterrupts = .text:0x800B71F4; // type:function size:0x88 scope:global __OSUnmaskInterrupts = .text:0x800B727C; // type:function size:0x88 scope:global -fn_800B7304 = .text:0x800B7304; // type:function size:0x344 +__OSDispatchInterrupt = .text:0x800B7304; // type:function size:0x344 ExternalInterruptHandler = .text:0x800B7648; // type:function size:0x50 scope:local -fn_800B7698 = .text:0x800B7698; // type:function size:0x4 -fn_800B769C = .text:0x800B769C; // type:function size:0x4 -fn_800B76A0 = .text:0x800B76A0; // type:function size:0x274 -fn_800B7914 = .text:0x800B7914; // type:function size:0x250 -fn_800B7B64 = .text:0x800B7B64; // type:function size:0x20C -fn_800B7D70 = .text:0x800B7D70; // type:function size:0x94 +OSNotifyLink = .text:0x800B7698; // type:function size:0x4 scope:weak +OSNotifyUnlink = .text:0x800B769C; // type:function size:0x4 scope:weak +Relocate = .text:0x800B76A0; // type:function size:0x274 scope:local +OSLink = .text:0x800B7914; // type:function size:0x250 +Undo = .text:0x800B7B64; // type:function size:0x20C +OSUnlink = .text:0x800B7D70; // type:function size:0x94 __OSModuleInit = .text:0x800B7E04; // type:function size:0x18 scope:global -fn_800B7E1C = .text:0x800B7E1C; // type:function size:0x60 -fn_800B7E7C = .text:0x800B7E7C; // type:function size:0xC -fn_800B7E88 = .text:0x800B7E88; // type:function size:0xC -fn_800B7E94 = .text:0x800B7E94; // type:function size:0x3C +OSInitMessageQueue = .text:0x800B7E1C; // type:function size:0x60 +OSGetPhysicalMemSize = .text:0x800B7E7C; // type:function size:0xC +OSGetConsoleSimulatedMemSize = .text:0x800B7E88; // type:function size:0xC +OnReset = .text:0x800B7E94; // type:function size:0x3C MEMIntrruptHandler = .text:0x800B7ED0; // type:function size:0x6C scope:local Config24MB = .text:0x800B7F3C; // type:function size:0x80 scope:local Config48MB = .text:0x800B7FBC; // type:function size:0x80 scope:local RealMode = .text:0x800B803C; // type:function size:0x18 scope:local __OSInitMemoryProtection = .text:0x800B8054; // type:function size:0x120 scope:global -fn_800B8174 = .text:0x800B8174; // type:function size:0x70 -fn_800B81E4 = .text:0x800B81E4; // type:function size:0x2C -fn_800B8210 = .text:0x800B8210; // type:function size:0x14 -fn_800B8224 = .text:0x800B8224; // type:function size:0xC +__OSUnlockAllMutex = .text:0x800B8174; // type:function size:0x70 +Run = .text:0x800B81E4; // type:function size:0x40 +Callback = .text:0x800B8224; // type:function size:0xC __OSReboot = .text:0x800B8230; // type:function size:0x1C0 scope:global OSRegisterResetFunction = .text:0x800B83F0; // type:function size:0x84 scope:global Reset = .text:0x800B8474; // type:function size:0x70 scope:local -fn_800B84E4 = .text:0x800B84E4; // type:function size:0x48 +__OSDoHotReset = .text:0x800B84E4; // type:function size:0x48 OSResetSystem = .text:0x800B852C; // type:function size:0x278 scope:global OSGetResetCode = .text:0x800B87A4; // type:function size:0x30 scope:global __OSResetSWInterruptHandler = .text:0x800B87D4; // type:function size:0xF4 scope:global -fn_800B88C8 = .text:0x800B88C8; // type:function size:0x298 -fn_800B8B60 = .text:0x800B8B60; // type:function size:0x60 -fn_800B8BC0 = .text:0x800B8BC0; // type:function size:0x118 +OSGetResetButtonState = .text:0x800B88C8; // type:function size:0x298 +WriteSramCallback = .text:0x800B8B60; // type:function size:0x60 +WriteSram = .text:0x800B8BC0; // type:function size:0x118 __OSInitSram = .text:0x800B8CD8; // type:function size:0x134 scope:global __OSLockSram = .text:0x800B8E0C; // type:function size:0x5C scope:global __OSLockSramEx = .text:0x800B8E68; // type:function size:0x5C scope:global -fn_800B8EC4 = .text:0x800B8EC4; // type:function size:0x308 +UnlockSram = .text:0x800B8EC4; // type:function size:0x308 __OSUnlockSram = .text:0x800B91CC; // type:function size:0x24 scope:global __OSUnlockSramEx = .text:0x800B91F0; // type:function size:0x24 scope:global __OSSyncSram = .text:0x800B9214; // type:function size:0x10 scope:global -fn_800B9224 = .text:0x800B9224; // type:function size:0x80 -fn_800B92A4 = .text:0x800B92A4; // type:function size:0xA4 -fn_800B9348 = .text:0x800B9348; // type:function size:0x70 -fn_800B93B8 = .text:0x800B93B8; // type:function size:0xA4 -fn_800B945C = .text:0x800B945C; // type:function size:0x84 -fn_800B94E0 = .text:0x800B94E0; // type:function size:0xAC -fn_800B958C = .text:0x800B958C; // type:function size:0x2C -fn_800B95B8 = .text:0x800B95B8; // type:function size:0x3C -fn_800B95F4 = .text:0x800B95F4; // type:function size:0xCC -fn_800B96C0 = .text:0x800B96C0; // type:function size:0x70 -fn_800B9730 = .text:0x800B9730; // type:function size:0x28 -fn_800B9758 = .text:0x800B9758; // type:function size:0x1A4 +OSGetSoundMode = .text:0x800B9224; // type:function size:0x80 +OSSetSoundMode = .text:0x800B92A4; // type:function size:0xA4 +OSGetProgressiveMode = .text:0x800B9348; // type:function size:0x70 +OSSetProgressiveMode = .text:0x800B93B8; // type:function size:0xA4 +OSGetWirelessID = .text:0x800B945C; // type:function size:0x84 +OSSetWirelessID = .text:0x800B94E0; // type:function size:0xAC +OSInitStopwatch = .text:0x800B958C; // type:function size:0x2C +OSStartStopwatch = .text:0x800B95B8; // type:function size:0x3C +OSStopStopwatch = .text:0x800B95F4; // type:function size:0xCC +OSCheckStopwatch = .text:0x800B96C0; // type:function size:0x70 +OSResetStopwatch = .text:0x800B9730; // type:function size:0x28 +OSDumpStopwatch = .text:0x800B9758; // type:function size:0x1A4 __OSSystemCallVectorStart = .text:0x800B98FC; // type:label scope:global -fn_800B98FC = .text:0x800B98FC; // type:function size:0x20 +SystemCallVector = .text:0x800B98FC; // type:function size:0x20 __OSSystemCallVectorEnd = .text:0x800B9918; // type:label scope:global __OSInitSystemCall = .text:0x800B991C; // type:function size:0x64 scope:global __OSThreadInit = .text:0x800B9980; // type:function size:0x128 scope:global @@ -2198,16 +2199,16 @@ fn_800BAF2C = .text:0x800BAF2C; // type:function size:0x48 __DBExceptionDestination = .text:0x800BAF74; // type:function size:0x10 scope:global __DBIsExceptionMarked = .text:0x800BAF84; // type:function size:0x1C scope:global DBPrintf = .text:0x800BAFA0; // type:function size:0x50 scope:global -fn_800BAFF0 = .text:0x800BAFF0; // type:function size:0x2C -fn_800BB01C = .text:0x800BB01C; // type:function size:0x34 -fn_800BB050 = .text:0x800BB050; // type:function size:0xCC -fn_800BB11C = .text:0x800BB11C; // type:function size:0x50 -fn_800BB16C = .text:0x800BB16C; // type:function size:0xF8 -fn_800BB264 = .text:0x800BB264; // type:function size:0xC8 -fn_800BB32C = .text:0x800BB32C; // type:function size:0x70 -fn_800BB39C = .text:0x800BB39C; // type:function size:0xA8 -fn_800BB444 = .text:0x800BB444; // type:function size:0x104 -fn_800BB548 = .text:0x800BB548; // type:function size:0x34 +PSMTXIdentity = .text:0x800BAFF0; // type:function size:0x2C +PSMTXCopy = .text:0x800BB01C; // type:function size:0x34 +PSMTXConcat = .text:0x800BB050; // type:function size:0xCC +PSMTXTranspose = .text:0x800BB11C; // type:function size:0x50 +PSMTXInverse = .text:0x800BB16C; // type:function size:0xF8 +PSMTXInvXpose = .text:0x800BB264; // type:function size:0xC8 +PSMTXRotRad = .text:0x800BB32C; // type:function size:0x70 +PSMTXRotTrig = .text:0x800BB39C; // type:function size:0xA8 +PSMTXRotAxisRad = .text:0x800BB444; // type:function size:0x104 +PSMTXTrans = .text:0x800BB548; // type:function size:0x34 fn_800BB57C = .text:0x800BB57C; // type:function size:0x28 fn_800BB5A4 = .text:0x800BB5A4; // type:function size:0xA4 fn_800BB648 = .text:0x800BB648; // type:function size:0x18C From a16f95b102fa02e657c909cf7169c139bac9b5d7 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Fri, 15 Nov 2024 18:15:28 +0100 Subject: [PATCH 038/178] Work on Japanese splits --- config/GMPJ01_00/config.yml | 2 +- config/GMPJ01_00/symbols.txt | 1020 +--------------------------------- 2 files changed, 3 insertions(+), 1019 deletions(-) diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index be895058..8da30f63 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -5,7 +5,7 @@ symbols: config/GMPJ01_00/symbols.txt splits: config/GMPJ01_00/splits.txt quick_analysis: false # Faster re-runs after initial analysis mw_comment_version: 10 # GC 2.6 linker -force_active: [__register_global_object] +force_active: [__register_global_object, _kerent] detect_objects: true detect_strings: true diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index e3026919..d49ba5b9 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -2104,7 +2104,7 @@ __OSUnhandledException = .text:0x800B6BD4; // type:function size:0x200 scope:glo OSGetFontEncode = .text:0x800B6DD4; // type:function size:0x58 OSDisableInterrupts = .text:0x800B6E2C; // type:function size:0x14 scope:global __RAS_OSDisableInterrupts_begin = .text:0x800B6E2C; // type:label scope:global -__RAS_OSDisableInterrupts_end = .text:0x800BE3C; // type:label scope:global +__RAS_OSDisableInterrupts_end = .text:0x800B6E3C; // type:label scope:global OSEnableInterrupts = .text:0x800B6E40; // type:function size:0x14 scope:global OSRestoreInterrupts = .text:0x800B6E54; // type:function size:0x24 scope:global __OSSetInterruptHandler = .text:0x800B6E78; // type:function size:0x1C scope:global @@ -3583,1023 +3583,7 @@ fn_8011BEF4 = .text:0x8011BEF4; // type:function size:0x4A8 fn_8011C39C = .text:0x8011C39C; // type:function size:0x188 fn_8011C524 = .text:0x8011C524; // type:function size:0x17C fn_8011C6A0 = .text:0x8011C6A0; // type:function size:0x214 -fn_8011C8B4 = .text:0x8011C8B4; // type:function size:0x4 -fn_8011C8B8 = .text:0x8011C8B8; // type:function size:0x4 -fn_8011C8BC = .text:0x8011C8BC; // type:function size:0x4 -fn_8011C8C0 = .text:0x8011C8C0; // type:function size:0x4 -fn_8011C8C4 = .text:0x8011C8C4; // type:function size:0x4 -fn_8011C8C8 = .text:0x8011C8C8; // type:function size:0x4 -fn_8011C8CC = .text:0x8011C8CC; // type:function size:0x4 -fn_8011C8D0 = .text:0x8011C8D0; // type:function size:0x4 -fn_8011C8D4 = .text:0x8011C8D4; // type:function size:0x4 -fn_8011C8D8 = .text:0x8011C8D8; // type:function size:0x4 -fn_8011C8DC = .text:0x8011C8DC; // type:function size:0x4 -fn_8011C8E0 = .text:0x8011C8E0; // type:function size:0x4 -fn_8011C8E4 = .text:0x8011C8E4; // type:function size:0x4 -fn_8011C8E8 = .text:0x8011C8E8; // type:function size:0x4 -fn_8011C8EC = .text:0x8011C8EC; // type:function size:0x4 -fn_8011C8F0 = .text:0x8011C8F0; // type:function size:0x4 -fn_8011C8F4 = .text:0x8011C8F4; // type:function size:0x4 -fn_8011C8F8 = .text:0x8011C8F8; // type:function size:0x4 -fn_8011C8FC = .text:0x8011C8FC; // type:function size:0x4 -fn_8011C900 = .text:0x8011C900; // type:function size:0x4 -fn_8011C904 = .text:0x8011C904; // type:function size:0x4 -fn_8011C908 = .text:0x8011C908; // type:function size:0x4 -fn_8011C90C = .text:0x8011C90C; // type:function size:0x4 -fn_8011C910 = .text:0x8011C910; // type:function size:0x4 -fn_8011C914 = .text:0x8011C914; // type:function size:0x4 -fn_8011C918 = .text:0x8011C918; // type:function size:0x4 -fn_8011C91C = .text:0x8011C91C; // type:function size:0x4 -fn_8011C920 = .text:0x8011C920; // type:function size:0x4 -fn_8011C924 = .text:0x8011C924; // type:function size:0x4 -fn_8011C928 = .text:0x8011C928; // type:function size:0x4 -fn_8011C92C = .text:0x8011C92C; // type:function size:0x4 -fn_8011C930 = .text:0x8011C930; // type:function size:0x4 -fn_8011C934 = .text:0x8011C934; // type:function size:0x4 -fn_8011C938 = .text:0x8011C938; // type:function size:0x4 -fn_8011C93C = .text:0x8011C93C; // type:function size:0x4 -fn_8011C940 = .text:0x8011C940; // type:function size:0x4 -fn_8011C944 = .text:0x8011C944; // type:function size:0x4 -fn_8011C948 = .text:0x8011C948; // type:function size:0x4 -fn_8011C94C = .text:0x8011C94C; // type:function size:0x4 -fn_8011C950 = .text:0x8011C950; // type:function size:0x4 -fn_8011C954 = .text:0x8011C954; // type:function size:0x4 -fn_8011C958 = .text:0x8011C958; // type:function size:0x4 -fn_8011C95C = .text:0x8011C95C; // type:function size:0x4 -fn_8011C960 = .text:0x8011C960; // type:function size:0x4 -fn_8011C964 = .text:0x8011C964; // type:function size:0x4 -fn_8011C968 = .text:0x8011C968; // type:function size:0x4 -fn_8011C96C = .text:0x8011C96C; // type:function size:0x4 -fn_8011C970 = .text:0x8011C970; // type:function size:0x4 -fn_8011C974 = .text:0x8011C974; // type:function size:0x4 -fn_8011C978 = .text:0x8011C978; // type:function size:0x4 -fn_8011C97C = .text:0x8011C97C; // type:function size:0x4 -fn_8011C980 = .text:0x8011C980; // type:function size:0x4 -fn_8011C984 = .text:0x8011C984; // type:function size:0x4 -fn_8011C988 = .text:0x8011C988; // type:function size:0x4 -fn_8011C98C = .text:0x8011C98C; // type:function size:0x4 -fn_8011C990 = .text:0x8011C990; // type:function size:0x4 -fn_8011C994 = .text:0x8011C994; // type:function size:0x4 -fn_8011C998 = .text:0x8011C998; // type:function size:0x4 -fn_8011C99C = .text:0x8011C99C; // type:function size:0x4 -fn_8011C9A0 = .text:0x8011C9A0; // type:function size:0x4 -fn_8011C9A4 = .text:0x8011C9A4; // type:function size:0x4 -fn_8011C9A8 = .text:0x8011C9A8; // type:function size:0x4 -fn_8011C9AC = .text:0x8011C9AC; // type:function size:0x4 -fn_8011C9B0 = .text:0x8011C9B0; // type:function size:0x4 -fn_8011C9B4 = .text:0x8011C9B4; // type:function size:0x4 -fn_8011C9B8 = .text:0x8011C9B8; // type:function size:0x4 -fn_8011C9BC = .text:0x8011C9BC; // type:function size:0x4 -fn_8011C9C0 = .text:0x8011C9C0; // type:function size:0x4 -fn_8011C9C4 = .text:0x8011C9C4; // type:function size:0x4 -fn_8011C9C8 = .text:0x8011C9C8; // type:function size:0x4 -fn_8011C9CC = .text:0x8011C9CC; // type:function size:0x4 -fn_8011C9D0 = .text:0x8011C9D0; // type:function size:0x4 -fn_8011C9D4 = .text:0x8011C9D4; // type:function size:0x4 -fn_8011C9D8 = .text:0x8011C9D8; // type:function size:0x4 -fn_8011C9DC = .text:0x8011C9DC; // type:function size:0x4 -fn_8011C9E0 = .text:0x8011C9E0; // type:function size:0x4 -fn_8011C9E4 = .text:0x8011C9E4; // type:function size:0x4 -fn_8011C9E8 = .text:0x8011C9E8; // type:function size:0x4 -fn_8011C9EC = .text:0x8011C9EC; // type:function size:0x4 -fn_8011C9F0 = .text:0x8011C9F0; // type:function size:0x4 -fn_8011C9F4 = .text:0x8011C9F4; // type:function size:0x4 -fn_8011C9F8 = .text:0x8011C9F8; // type:function size:0x4 -fn_8011C9FC = .text:0x8011C9FC; // type:function size:0x4 -fn_8011CA00 = .text:0x8011CA00; // type:function size:0x4 -fn_8011CA04 = .text:0x8011CA04; // type:function size:0x4 -fn_8011CA08 = .text:0x8011CA08; // type:function size:0x4 -fn_8011CA0C = .text:0x8011CA0C; // type:function size:0x4 -fn_8011CA10 = .text:0x8011CA10; // type:function size:0x4 -fn_8011CA14 = .text:0x8011CA14; // type:function size:0x4 -fn_8011CA18 = .text:0x8011CA18; // type:function size:0x4 -fn_8011CA1C = .text:0x8011CA1C; // type:function size:0x4 -fn_8011CA20 = .text:0x8011CA20; // type:function size:0x4 -fn_8011CA24 = .text:0x8011CA24; // type:function size:0x4 -fn_8011CA28 = .text:0x8011CA28; // type:function size:0x4 -fn_8011CA2C = .text:0x8011CA2C; // type:function size:0x4 -fn_8011CA30 = .text:0x8011CA30; // type:function size:0x4 -fn_8011CA34 = .text:0x8011CA34; // type:function size:0x4 -fn_8011CA38 = .text:0x8011CA38; // type:function size:0x4 -fn_8011CA3C = .text:0x8011CA3C; // type:function size:0x4 -fn_8011CA40 = .text:0x8011CA40; // type:function size:0x4 -fn_8011CA44 = .text:0x8011CA44; // type:function size:0x4 -fn_8011CA48 = .text:0x8011CA48; // type:function size:0x4 -fn_8011CA4C = .text:0x8011CA4C; // type:function size:0x4 -fn_8011CA50 = .text:0x8011CA50; // type:function size:0x4 -fn_8011CA54 = .text:0x8011CA54; // type:function size:0x4 -fn_8011CA58 = .text:0x8011CA58; // type:function size:0x4 -fn_8011CA5C = .text:0x8011CA5C; // type:function size:0x4 -fn_8011CA60 = .text:0x8011CA60; // type:function size:0x4 -fn_8011CA64 = .text:0x8011CA64; // type:function size:0x4 -fn_8011CA68 = .text:0x8011CA68; // type:function size:0x4 -fn_8011CA6C = .text:0x8011CA6C; // type:function size:0x4 -fn_8011CA70 = .text:0x8011CA70; // type:function size:0x4 -fn_8011CA74 = .text:0x8011CA74; // type:function size:0x4 -fn_8011CA78 = .text:0x8011CA78; // type:function size:0x4 -fn_8011CA7C = .text:0x8011CA7C; // type:function size:0x4 -fn_8011CA80 = .text:0x8011CA80; // type:function size:0x4 -fn_8011CA84 = .text:0x8011CA84; // type:function size:0x4 -fn_8011CA88 = .text:0x8011CA88; // type:function size:0x4 -fn_8011CA8C = .text:0x8011CA8C; // type:function size:0x4 -fn_8011CA90 = .text:0x8011CA90; // type:function size:0x4 -fn_8011CA94 = .text:0x8011CA94; // type:function size:0x4 -fn_8011CA98 = .text:0x8011CA98; // type:function size:0x4 -fn_8011CA9C = .text:0x8011CA9C; // type:function size:0x4 -fn_8011CAA0 = .text:0x8011CAA0; // type:function size:0x4 -fn_8011CAA4 = .text:0x8011CAA4; // type:function size:0x4 -fn_8011CAA8 = .text:0x8011CAA8; // type:function size:0x4 -fn_8011CAAC = .text:0x8011CAAC; // type:function size:0x4 -fn_8011CAB0 = .text:0x8011CAB0; // type:function size:0x4 -fn_8011CAB4 = .text:0x8011CAB4; // type:function size:0x4 -fn_8011CAB8 = .text:0x8011CAB8; // type:function size:0x4 -fn_8011CABC = .text:0x8011CABC; // type:function size:0x4 -fn_8011CAC0 = .text:0x8011CAC0; // type:function size:0x4 -fn_8011CAC4 = .text:0x8011CAC4; // type:function size:0x4 -fn_8011CAC8 = .text:0x8011CAC8; // type:function size:0x4 -fn_8011CACC = .text:0x8011CACC; // type:function size:0x4 -fn_8011CAD0 = .text:0x8011CAD0; // type:function size:0x4 -fn_8011CAD4 = .text:0x8011CAD4; // type:function size:0x4 -fn_8011CAD8 = .text:0x8011CAD8; // type:function size:0x4 -fn_8011CADC = .text:0x8011CADC; // type:function size:0x4 -fn_8011CAE0 = .text:0x8011CAE0; // type:function size:0x4 -fn_8011CAE4 = .text:0x8011CAE4; // type:function size:0x4 -fn_8011CAE8 = .text:0x8011CAE8; // type:function size:0x4 -fn_8011CAEC = .text:0x8011CAEC; // type:function size:0x4 -fn_8011CAF0 = .text:0x8011CAF0; // type:function size:0x4 -fn_8011CAF4 = .text:0x8011CAF4; // type:function size:0x4 -fn_8011CAF8 = .text:0x8011CAF8; // type:function size:0x4 -fn_8011CAFC = .text:0x8011CAFC; // type:function size:0x4 -fn_8011CB00 = .text:0x8011CB00; // type:function size:0x4 -fn_8011CB04 = .text:0x8011CB04; // type:function size:0x4 -fn_8011CB08 = .text:0x8011CB08; // type:function size:0x4 -fn_8011CB0C = .text:0x8011CB0C; // type:function size:0x4 -fn_8011CB10 = .text:0x8011CB10; // type:function size:0x4 -fn_8011CB14 = .text:0x8011CB14; // type:function size:0x4 -fn_8011CB18 = .text:0x8011CB18; // type:function size:0x4 -fn_8011CB1C = .text:0x8011CB1C; // type:function size:0x4 -fn_8011CB20 = .text:0x8011CB20; // type:function size:0x4 -fn_8011CB24 = .text:0x8011CB24; // type:function size:0x4 -fn_8011CB28 = .text:0x8011CB28; // type:function size:0x4 -fn_8011CB2C = .text:0x8011CB2C; // type:function size:0x4 -fn_8011CB30 = .text:0x8011CB30; // type:function size:0x4 -fn_8011CB34 = .text:0x8011CB34; // type:function size:0x4 -fn_8011CB38 = .text:0x8011CB38; // type:function size:0x4 -fn_8011CB3C = .text:0x8011CB3C; // type:function size:0x4 -fn_8011CB40 = .text:0x8011CB40; // type:function size:0x4 -fn_8011CB44 = .text:0x8011CB44; // type:function size:0x4 -fn_8011CB48 = .text:0x8011CB48; // type:function size:0x4 -fn_8011CB4C = .text:0x8011CB4C; // type:function size:0x4 -fn_8011CB50 = .text:0x8011CB50; // type:function size:0x4 -fn_8011CB54 = .text:0x8011CB54; // type:function size:0x4 -fn_8011CB58 = .text:0x8011CB58; // type:function size:0x4 -fn_8011CB5C = .text:0x8011CB5C; // type:function size:0x4 -fn_8011CB60 = .text:0x8011CB60; // type:function size:0x4 -fn_8011CB64 = .text:0x8011CB64; // type:function size:0x4 -fn_8011CB68 = .text:0x8011CB68; // type:function size:0x4 -fn_8011CB6C = .text:0x8011CB6C; // type:function size:0x4 -fn_8011CB70 = .text:0x8011CB70; // type:function size:0x4 -fn_8011CB74 = .text:0x8011CB74; // type:function size:0x4 -fn_8011CB78 = .text:0x8011CB78; // type:function size:0x4 -fn_8011CB7C = .text:0x8011CB7C; // type:function size:0x4 -fn_8011CB80 = .text:0x8011CB80; // type:function size:0x4 -fn_8011CB84 = .text:0x8011CB84; // type:function size:0x4 -fn_8011CB88 = .text:0x8011CB88; // type:function size:0x4 -fn_8011CB8C = .text:0x8011CB8C; // type:function size:0x4 -fn_8011CB90 = .text:0x8011CB90; // type:function size:0x4 -fn_8011CB94 = .text:0x8011CB94; // type:function size:0x4 -fn_8011CB98 = .text:0x8011CB98; // type:function size:0x4 -fn_8011CB9C = .text:0x8011CB9C; // type:function size:0x4 -fn_8011CBA0 = .text:0x8011CBA0; // type:function size:0x4 -fn_8011CBA4 = .text:0x8011CBA4; // type:function size:0x4 -fn_8011CBA8 = .text:0x8011CBA8; // type:function size:0x4 -fn_8011CBAC = .text:0x8011CBAC; // type:function size:0x4 -fn_8011CBB0 = .text:0x8011CBB0; // type:function size:0x4 -fn_8011CBB4 = .text:0x8011CBB4; // type:function size:0x4 -fn_8011CBB8 = .text:0x8011CBB8; // type:function size:0x4 -fn_8011CBBC = .text:0x8011CBBC; // type:function size:0x4 -fn_8011CBC0 = .text:0x8011CBC0; // type:function size:0x4 -fn_8011CBC4 = .text:0x8011CBC4; // type:function size:0x4 -fn_8011CBC8 = .text:0x8011CBC8; // type:function size:0x4 -fn_8011CBCC = .text:0x8011CBCC; // type:function size:0x4 -fn_8011CBD0 = .text:0x8011CBD0; // type:function size:0x4 -fn_8011CBD4 = .text:0x8011CBD4; // type:function size:0x4 -fn_8011CBD8 = .text:0x8011CBD8; // type:function size:0x4 -fn_8011CBDC = .text:0x8011CBDC; // type:function size:0x4 -fn_8011CBE0 = .text:0x8011CBE0; // type:function size:0x4 -fn_8011CBE4 = .text:0x8011CBE4; // type:function size:0x4 -fn_8011CBE8 = .text:0x8011CBE8; // type:function size:0x4 -fn_8011CBEC = .text:0x8011CBEC; // type:function size:0x4 -fn_8011CBF0 = .text:0x8011CBF0; // type:function size:0x4 -fn_8011CBF4 = .text:0x8011CBF4; // type:function size:0x4 -fn_8011CBF8 = .text:0x8011CBF8; // type:function size:0x4 -fn_8011CBFC = .text:0x8011CBFC; // type:function size:0x4 -fn_8011CC00 = .text:0x8011CC00; // type:function size:0x4 -fn_8011CC04 = .text:0x8011CC04; // type:function size:0x4 -fn_8011CC08 = .text:0x8011CC08; // type:function size:0x4 -fn_8011CC0C = .text:0x8011CC0C; // type:function size:0x4 -fn_8011CC10 = .text:0x8011CC10; // type:function size:0x4 -fn_8011CC14 = .text:0x8011CC14; // type:function size:0x4 -fn_8011CC18 = .text:0x8011CC18; // type:function size:0x4 -fn_8011CC1C = .text:0x8011CC1C; // type:function size:0x4 -fn_8011CC20 = .text:0x8011CC20; // type:function size:0x4 -fn_8011CC24 = .text:0x8011CC24; // type:function size:0x4 -fn_8011CC28 = .text:0x8011CC28; // type:function size:0x4 -fn_8011CC2C = .text:0x8011CC2C; // type:function size:0x4 -fn_8011CC30 = .text:0x8011CC30; // type:function size:0x4 -fn_8011CC34 = .text:0x8011CC34; // type:function size:0x4 -fn_8011CC38 = .text:0x8011CC38; // type:function size:0x4 -fn_8011CC3C = .text:0x8011CC3C; // type:function size:0x4 -fn_8011CC40 = .text:0x8011CC40; // type:function size:0x4 -fn_8011CC44 = .text:0x8011CC44; // type:function size:0x4 -fn_8011CC48 = .text:0x8011CC48; // type:function size:0x4 -fn_8011CC4C = .text:0x8011CC4C; // type:function size:0x4 -fn_8011CC50 = .text:0x8011CC50; // type:function size:0x4 -fn_8011CC54 = .text:0x8011CC54; // type:function size:0x4 -fn_8011CC58 = .text:0x8011CC58; // type:function size:0x4 -fn_8011CC5C = .text:0x8011CC5C; // type:function size:0x4 -fn_8011CC60 = .text:0x8011CC60; // type:function size:0x4 -fn_8011CC64 = .text:0x8011CC64; // type:function size:0x4 -fn_8011CC68 = .text:0x8011CC68; // type:function size:0x4 -fn_8011CC6C = .text:0x8011CC6C; // type:function size:0x4 -fn_8011CC70 = .text:0x8011CC70; // type:function size:0x4 -fn_8011CC74 = .text:0x8011CC74; // type:function size:0x4 -fn_8011CC78 = .text:0x8011CC78; // type:function size:0x4 -fn_8011CC7C = .text:0x8011CC7C; // type:function size:0x4 -fn_8011CC80 = .text:0x8011CC80; // type:function size:0x4 -fn_8011CC84 = .text:0x8011CC84; // type:function size:0x4 -fn_8011CC88 = .text:0x8011CC88; // type:function size:0x4 -fn_8011CC8C = .text:0x8011CC8C; // type:function size:0x4 -fn_8011CC90 = .text:0x8011CC90; // type:function size:0x4 -fn_8011CC94 = .text:0x8011CC94; // type:function size:0x4 -fn_8011CC98 = .text:0x8011CC98; // type:function size:0x4 -fn_8011CC9C = .text:0x8011CC9C; // type:function size:0x4 -fn_8011CCA0 = .text:0x8011CCA0; // type:function size:0x4 -fn_8011CCA4 = .text:0x8011CCA4; // type:function size:0x4 -fn_8011CCA8 = .text:0x8011CCA8; // type:function size:0x4 -fn_8011CCAC = .text:0x8011CCAC; // type:function size:0x4 -fn_8011CCB0 = .text:0x8011CCB0; // type:function size:0x4 -fn_8011CCB4 = .text:0x8011CCB4; // type:function size:0x4 -fn_8011CCB8 = .text:0x8011CCB8; // type:function size:0x4 -fn_8011CCBC = .text:0x8011CCBC; // type:function size:0x4 -fn_8011CCC0 = .text:0x8011CCC0; // type:function size:0x4 -fn_8011CCC4 = .text:0x8011CCC4; // type:function size:0x4 -fn_8011CCC8 = .text:0x8011CCC8; // type:function size:0x4 -fn_8011CCCC = .text:0x8011CCCC; // type:function size:0x4 -fn_8011CCD0 = .text:0x8011CCD0; // type:function size:0x4 -fn_8011CCD4 = .text:0x8011CCD4; // type:function size:0x4 -fn_8011CCD8 = .text:0x8011CCD8; // type:function size:0x4 -fn_8011CCDC = .text:0x8011CCDC; // type:function size:0x4 -fn_8011CCE0 = .text:0x8011CCE0; // type:function size:0x4 -fn_8011CCE4 = .text:0x8011CCE4; // type:function size:0x4 -fn_8011CCE8 = .text:0x8011CCE8; // type:function size:0x4 -fn_8011CCEC = .text:0x8011CCEC; // type:function size:0x4 -fn_8011CCF0 = .text:0x8011CCF0; // type:function size:0x4 -fn_8011CCF4 = .text:0x8011CCF4; // type:function size:0x4 -fn_8011CCF8 = .text:0x8011CCF8; // type:function size:0x4 -fn_8011CCFC = .text:0x8011CCFC; // type:function size:0x4 -fn_8011CD00 = .text:0x8011CD00; // type:function size:0x4 -fn_8011CD04 = .text:0x8011CD04; // type:function size:0x4 -fn_8011CD08 = .text:0x8011CD08; // type:function size:0x4 -fn_8011CD0C = .text:0x8011CD0C; // type:function size:0x4 -fn_8011CD10 = .text:0x8011CD10; // type:function size:0x4 -fn_8011CD14 = .text:0x8011CD14; // type:function size:0x4 -fn_8011CD18 = .text:0x8011CD18; // type:function size:0x4 -fn_8011CD1C = .text:0x8011CD1C; // type:function size:0x4 -fn_8011CD20 = .text:0x8011CD20; // type:function size:0x4 -fn_8011CD24 = .text:0x8011CD24; // type:function size:0x4 -fn_8011CD28 = .text:0x8011CD28; // type:function size:0x4 -fn_8011CD2C = .text:0x8011CD2C; // type:function size:0x4 -fn_8011CD30 = .text:0x8011CD30; // type:function size:0x4 -fn_8011CD34 = .text:0x8011CD34; // type:function size:0x4 -fn_8011CD38 = .text:0x8011CD38; // type:function size:0x4 -fn_8011CD3C = .text:0x8011CD3C; // type:function size:0x4 -fn_8011CD40 = .text:0x8011CD40; // type:function size:0x4 -fn_8011CD44 = .text:0x8011CD44; // type:function size:0x4 -fn_8011CD48 = .text:0x8011CD48; // type:function size:0x4 -fn_8011CD4C = .text:0x8011CD4C; // type:function size:0x4 -fn_8011CD50 = .text:0x8011CD50; // type:function size:0x4 -fn_8011CD54 = .text:0x8011CD54; // type:function size:0x4 -fn_8011CD58 = .text:0x8011CD58; // type:function size:0x4 -fn_8011CD5C = .text:0x8011CD5C; // type:function size:0x4 -fn_8011CD60 = .text:0x8011CD60; // type:function size:0x4 -fn_8011CD64 = .text:0x8011CD64; // type:function size:0x4 -fn_8011CD68 = .text:0x8011CD68; // type:function size:0x4 -fn_8011CD6C = .text:0x8011CD6C; // type:function size:0x4 -fn_8011CD70 = .text:0x8011CD70; // type:function size:0x4 -fn_8011CD74 = .text:0x8011CD74; // type:function size:0x4 -fn_8011CD78 = .text:0x8011CD78; // type:function size:0x4 -fn_8011CD7C = .text:0x8011CD7C; // type:function size:0x4 -fn_8011CD80 = .text:0x8011CD80; // type:function size:0x4 -fn_8011CD84 = .text:0x8011CD84; // type:function size:0x4 -fn_8011CD88 = .text:0x8011CD88; // type:function size:0x4 -fn_8011CD8C = .text:0x8011CD8C; // type:function size:0x4 -fn_8011CD90 = .text:0x8011CD90; // type:function size:0x4 -fn_8011CD94 = .text:0x8011CD94; // type:function size:0x4 -fn_8011CD98 = .text:0x8011CD98; // type:function size:0x4 -fn_8011CD9C = .text:0x8011CD9C; // type:function size:0x4 -fn_8011CDA0 = .text:0x8011CDA0; // type:function size:0x4 -fn_8011CDA4 = .text:0x8011CDA4; // type:function size:0x4 -fn_8011CDA8 = .text:0x8011CDA8; // type:function size:0x4 -fn_8011CDAC = .text:0x8011CDAC; // type:function size:0x4 -fn_8011CDB0 = .text:0x8011CDB0; // type:function size:0x4 -fn_8011CDB4 = .text:0x8011CDB4; // type:function size:0x4 -fn_8011CDB8 = .text:0x8011CDB8; // type:function size:0x4 -fn_8011CDBC = .text:0x8011CDBC; // type:function size:0x4 -fn_8011CDC0 = .text:0x8011CDC0; // type:function size:0x4 -fn_8011CDC4 = .text:0x8011CDC4; // type:function size:0x4 -fn_8011CDC8 = .text:0x8011CDC8; // type:function size:0x4 -fn_8011CDCC = .text:0x8011CDCC; // type:function size:0x4 -fn_8011CDD0 = .text:0x8011CDD0; // type:function size:0x4 -fn_8011CDD4 = .text:0x8011CDD4; // type:function size:0x4 -fn_8011CDD8 = .text:0x8011CDD8; // type:function size:0x4 -fn_8011CDDC = .text:0x8011CDDC; // type:function size:0x4 -fn_8011CDE0 = .text:0x8011CDE0; // type:function size:0x4 -fn_8011CDE4 = .text:0x8011CDE4; // type:function size:0x4 -fn_8011CDE8 = .text:0x8011CDE8; // type:function size:0x4 -fn_8011CDEC = .text:0x8011CDEC; // type:function size:0x4 -fn_8011CDF0 = .text:0x8011CDF0; // type:function size:0x4 -fn_8011CDF4 = .text:0x8011CDF4; // type:function size:0x4 -fn_8011CDF8 = .text:0x8011CDF8; // type:function size:0x4 -fn_8011CDFC = .text:0x8011CDFC; // type:function size:0x4 -fn_8011CE00 = .text:0x8011CE00; // type:function size:0x4 -fn_8011CE04 = .text:0x8011CE04; // type:function size:0x4 -fn_8011CE08 = .text:0x8011CE08; // type:function size:0x4 -fn_8011CE0C = .text:0x8011CE0C; // type:function size:0x4 -fn_8011CE10 = .text:0x8011CE10; // type:function size:0x4 -fn_8011CE14 = .text:0x8011CE14; // type:function size:0x4 -fn_8011CE18 = .text:0x8011CE18; // type:function size:0x4 -fn_8011CE1C = .text:0x8011CE1C; // type:function size:0x4 -fn_8011CE20 = .text:0x8011CE20; // type:function size:0x4 -fn_8011CE24 = .text:0x8011CE24; // type:function size:0x4 -fn_8011CE28 = .text:0x8011CE28; // type:function size:0x4 -fn_8011CE2C = .text:0x8011CE2C; // type:function size:0x4 -fn_8011CE30 = .text:0x8011CE30; // type:function size:0x4 -fn_8011CE34 = .text:0x8011CE34; // type:function size:0x4 -fn_8011CE38 = .text:0x8011CE38; // type:function size:0x4 -fn_8011CE3C = .text:0x8011CE3C; // type:function size:0x4 -fn_8011CE40 = .text:0x8011CE40; // type:function size:0x4 -fn_8011CE44 = .text:0x8011CE44; // type:function size:0x4 -fn_8011CE48 = .text:0x8011CE48; // type:function size:0x4 -fn_8011CE4C = .text:0x8011CE4C; // type:function size:0x4 -fn_8011CE50 = .text:0x8011CE50; // type:function size:0x4 -fn_8011CE54 = .text:0x8011CE54; // type:function size:0x4 -fn_8011CE58 = .text:0x8011CE58; // type:function size:0x4 -fn_8011CE5C = .text:0x8011CE5C; // type:function size:0x4 -fn_8011CE60 = .text:0x8011CE60; // type:function size:0x4 -fn_8011CE64 = .text:0x8011CE64; // type:function size:0x4 -fn_8011CE68 = .text:0x8011CE68; // type:function size:0x4 -fn_8011CE6C = .text:0x8011CE6C; // type:function size:0x4 -fn_8011CE70 = .text:0x8011CE70; // type:function size:0x4 -fn_8011CE74 = .text:0x8011CE74; // type:function size:0x4 -fn_8011CE78 = .text:0x8011CE78; // type:function size:0x4 -fn_8011CE7C = .text:0x8011CE7C; // type:function size:0x4 -fn_8011CE80 = .text:0x8011CE80; // type:function size:0x4 -fn_8011CE84 = .text:0x8011CE84; // type:function size:0x4 -fn_8011CE88 = .text:0x8011CE88; // type:function size:0x4 -fn_8011CE8C = .text:0x8011CE8C; // type:function size:0x4 -fn_8011CE90 = .text:0x8011CE90; // type:function size:0x4 -fn_8011CE94 = .text:0x8011CE94; // type:function size:0x4 -fn_8011CE98 = .text:0x8011CE98; // type:function size:0x4 -fn_8011CE9C = .text:0x8011CE9C; // type:function size:0x4 -fn_8011CEA0 = .text:0x8011CEA0; // type:function size:0x4 -fn_8011CEA4 = .text:0x8011CEA4; // type:function size:0x4 -fn_8011CEA8 = .text:0x8011CEA8; // type:function size:0x4 -fn_8011CEAC = .text:0x8011CEAC; // type:function size:0x4 -fn_8011CEB0 = .text:0x8011CEB0; // type:function size:0x4 -fn_8011CEB4 = .text:0x8011CEB4; // type:function size:0x4 -fn_8011CEB8 = .text:0x8011CEB8; // type:function size:0x4 -fn_8011CEBC = .text:0x8011CEBC; // type:function size:0x4 -fn_8011CEC0 = .text:0x8011CEC0; // type:function size:0x4 -fn_8011CEC4 = .text:0x8011CEC4; // type:function size:0x4 -fn_8011CEC8 = .text:0x8011CEC8; // type:function size:0x4 -fn_8011CECC = .text:0x8011CECC; // type:function size:0x4 -fn_8011CED0 = .text:0x8011CED0; // type:function size:0x4 -fn_8011CED4 = .text:0x8011CED4; // type:function size:0x4 -fn_8011CED8 = .text:0x8011CED8; // type:function size:0x4 -fn_8011CEDC = .text:0x8011CEDC; // type:function size:0x4 -fn_8011CEE0 = .text:0x8011CEE0; // type:function size:0x4 -fn_8011CEE4 = .text:0x8011CEE4; // type:function size:0x4 -fn_8011CEE8 = .text:0x8011CEE8; // type:function size:0x4 -fn_8011CEEC = .text:0x8011CEEC; // type:function size:0x4 -fn_8011CEF0 = .text:0x8011CEF0; // type:function size:0x4 -fn_8011CEF4 = .text:0x8011CEF4; // type:function size:0x4 -fn_8011CEF8 = .text:0x8011CEF8; // type:function size:0x4 -fn_8011CEFC = .text:0x8011CEFC; // type:function size:0x4 -fn_8011CF00 = .text:0x8011CF00; // type:function size:0x4 -fn_8011CF04 = .text:0x8011CF04; // type:function size:0x4 -fn_8011CF08 = .text:0x8011CF08; // type:function size:0x4 -fn_8011CF0C = .text:0x8011CF0C; // type:function size:0x4 -fn_8011CF10 = .text:0x8011CF10; // type:function size:0x4 -fn_8011CF14 = .text:0x8011CF14; // type:function size:0x4 -fn_8011CF18 = .text:0x8011CF18; // type:function size:0x4 -fn_8011CF1C = .text:0x8011CF1C; // type:function size:0x4 -fn_8011CF20 = .text:0x8011CF20; // type:function size:0x4 -fn_8011CF24 = .text:0x8011CF24; // type:function size:0x4 -fn_8011CF28 = .text:0x8011CF28; // type:function size:0x4 -fn_8011CF2C = .text:0x8011CF2C; // type:function size:0x4 -fn_8011CF30 = .text:0x8011CF30; // type:function size:0x4 -fn_8011CF34 = .text:0x8011CF34; // type:function size:0x4 -fn_8011CF38 = .text:0x8011CF38; // type:function size:0x4 -fn_8011CF3C = .text:0x8011CF3C; // type:function size:0x4 -fn_8011CF40 = .text:0x8011CF40; // type:function size:0x4 -fn_8011CF44 = .text:0x8011CF44; // type:function size:0x4 -fn_8011CF48 = .text:0x8011CF48; // type:function size:0x4 -fn_8011CF4C = .text:0x8011CF4C; // type:function size:0x4 -fn_8011CF50 = .text:0x8011CF50; // type:function size:0x4 -fn_8011CF54 = .text:0x8011CF54; // type:function size:0x4 -fn_8011CF58 = .text:0x8011CF58; // type:function size:0x4 -fn_8011CF5C = .text:0x8011CF5C; // type:function size:0x4 -fn_8011CF60 = .text:0x8011CF60; // type:function size:0x4 -fn_8011CF64 = .text:0x8011CF64; // type:function size:0x4 -fn_8011CF68 = .text:0x8011CF68; // type:function size:0x4 -fn_8011CF6C = .text:0x8011CF6C; // type:function size:0x4 -fn_8011CF70 = .text:0x8011CF70; // type:function size:0x4 -fn_8011CF74 = .text:0x8011CF74; // type:function size:0x4 -fn_8011CF78 = .text:0x8011CF78; // type:function size:0x4 -fn_8011CF7C = .text:0x8011CF7C; // type:function size:0x4 -fn_8011CF80 = .text:0x8011CF80; // type:function size:0x4 -fn_8011CF84 = .text:0x8011CF84; // type:function size:0x4 -fn_8011CF88 = .text:0x8011CF88; // type:function size:0x4 -fn_8011CF8C = .text:0x8011CF8C; // type:function size:0x4 -fn_8011CF90 = .text:0x8011CF90; // type:function size:0x4 -fn_8011CF94 = .text:0x8011CF94; // type:function size:0x4 -fn_8011CF98 = .text:0x8011CF98; // type:function size:0x4 -fn_8011CF9C = .text:0x8011CF9C; // type:function size:0x4 -fn_8011CFA0 = .text:0x8011CFA0; // type:function size:0x4 -fn_8011CFA4 = .text:0x8011CFA4; // type:function size:0x4 -fn_8011CFA8 = .text:0x8011CFA8; // type:function size:0x4 -fn_8011CFAC = .text:0x8011CFAC; // type:function size:0x4 -fn_8011CFB0 = .text:0x8011CFB0; // type:function size:0x4 -fn_8011CFB4 = .text:0x8011CFB4; // type:function size:0x4 -fn_8011CFB8 = .text:0x8011CFB8; // type:function size:0x4 -fn_8011CFBC = .text:0x8011CFBC; // type:function size:0x4 -fn_8011CFC0 = .text:0x8011CFC0; // type:function size:0x4 -fn_8011CFC4 = .text:0x8011CFC4; // type:function size:0x4 -fn_8011CFC8 = .text:0x8011CFC8; // type:function size:0x4 -fn_8011CFCC = .text:0x8011CFCC; // type:function size:0x4 -fn_8011CFD0 = .text:0x8011CFD0; // type:function size:0x4 -fn_8011CFD4 = .text:0x8011CFD4; // type:function size:0x4 -fn_8011CFD8 = .text:0x8011CFD8; // type:function size:0x4 -fn_8011CFDC = .text:0x8011CFDC; // type:function size:0x4 -fn_8011CFE0 = .text:0x8011CFE0; // type:function size:0x4 -fn_8011CFE4 = .text:0x8011CFE4; // type:function size:0x4 -fn_8011CFE8 = .text:0x8011CFE8; // type:function size:0x4 -fn_8011CFEC = .text:0x8011CFEC; // type:function size:0x4 -fn_8011CFF0 = .text:0x8011CFF0; // type:function size:0x4 -fn_8011CFF4 = .text:0x8011CFF4; // type:function size:0x4 -fn_8011CFF8 = .text:0x8011CFF8; // type:function size:0x4 -fn_8011CFFC = .text:0x8011CFFC; // type:function size:0x4 -fn_8011D000 = .text:0x8011D000; // type:function size:0x4 -fn_8011D004 = .text:0x8011D004; // type:function size:0x4 -fn_8011D008 = .text:0x8011D008; // type:function size:0x4 -fn_8011D00C = .text:0x8011D00C; // type:function size:0x4 -fn_8011D010 = .text:0x8011D010; // type:function size:0x4 -fn_8011D014 = .text:0x8011D014; // type:function size:0x4 -fn_8011D018 = .text:0x8011D018; // type:function size:0x4 -fn_8011D01C = .text:0x8011D01C; // type:function size:0x4 -fn_8011D020 = .text:0x8011D020; // type:function size:0x4 -fn_8011D024 = .text:0x8011D024; // type:function size:0x4 -fn_8011D028 = .text:0x8011D028; // type:function size:0x4 -fn_8011D02C = .text:0x8011D02C; // type:function size:0x4 -fn_8011D030 = .text:0x8011D030; // type:function size:0x4 -fn_8011D034 = .text:0x8011D034; // type:function size:0x4 -fn_8011D038 = .text:0x8011D038; // type:function size:0x4 -fn_8011D03C = .text:0x8011D03C; // type:function size:0x4 -fn_8011D040 = .text:0x8011D040; // type:function size:0x4 -fn_8011D044 = .text:0x8011D044; // type:function size:0x4 -fn_8011D048 = .text:0x8011D048; // type:function size:0x4 -fn_8011D04C = .text:0x8011D04C; // type:function size:0x4 -fn_8011D050 = .text:0x8011D050; // type:function size:0x4 -fn_8011D054 = .text:0x8011D054; // type:function size:0x4 -fn_8011D058 = .text:0x8011D058; // type:function size:0x4 -fn_8011D05C = .text:0x8011D05C; // type:function size:0x4 -fn_8011D060 = .text:0x8011D060; // type:function size:0x4 -fn_8011D064 = .text:0x8011D064; // type:function size:0x4 -fn_8011D068 = .text:0x8011D068; // type:function size:0x4 -fn_8011D06C = .text:0x8011D06C; // type:function size:0x4 -fn_8011D070 = .text:0x8011D070; // type:function size:0x4 -fn_8011D074 = .text:0x8011D074; // type:function size:0x4 -fn_8011D078 = .text:0x8011D078; // type:function size:0x4 -fn_8011D07C = .text:0x8011D07C; // type:function size:0x4 -fn_8011D080 = .text:0x8011D080; // type:function size:0x4 -fn_8011D084 = .text:0x8011D084; // type:function size:0x4 -fn_8011D088 = .text:0x8011D088; // type:function size:0x4 -fn_8011D08C = .text:0x8011D08C; // type:function size:0x4 -fn_8011D090 = .text:0x8011D090; // type:function size:0x4 -fn_8011D094 = .text:0x8011D094; // type:function size:0x4 -fn_8011D098 = .text:0x8011D098; // type:function size:0x4 -fn_8011D09C = .text:0x8011D09C; // type:function size:0x4 -fn_8011D0A0 = .text:0x8011D0A0; // type:function size:0x4 -fn_8011D0A4 = .text:0x8011D0A4; // type:function size:0x4 -fn_8011D0A8 = .text:0x8011D0A8; // type:function size:0x4 -fn_8011D0AC = .text:0x8011D0AC; // type:function size:0x4 -fn_8011D0B0 = .text:0x8011D0B0; // type:function size:0x4 -fn_8011D0B4 = .text:0x8011D0B4; // type:function size:0x4 -fn_8011D0B8 = .text:0x8011D0B8; // type:function size:0x4 -fn_8011D0BC = .text:0x8011D0BC; // type:function size:0x4 -fn_8011D0C0 = .text:0x8011D0C0; // type:function size:0x4 -fn_8011D0C4 = .text:0x8011D0C4; // type:function size:0x4 -fn_8011D0C8 = .text:0x8011D0C8; // type:function size:0x4 -fn_8011D0CC = .text:0x8011D0CC; // type:function size:0x4 -fn_8011D0D0 = .text:0x8011D0D0; // type:function size:0x4 -fn_8011D0D4 = .text:0x8011D0D4; // type:function size:0x4 -fn_8011D0D8 = .text:0x8011D0D8; // type:function size:0x4 -fn_8011D0DC = .text:0x8011D0DC; // type:function size:0x4 -fn_8011D0E0 = .text:0x8011D0E0; // type:function size:0x4 -fn_8011D0E4 = .text:0x8011D0E4; // type:function size:0x4 -fn_8011D0E8 = .text:0x8011D0E8; // type:function size:0x4 -fn_8011D0EC = .text:0x8011D0EC; // type:function size:0x4 -fn_8011D0F0 = .text:0x8011D0F0; // type:function size:0x4 -fn_8011D0F4 = .text:0x8011D0F4; // type:function size:0x4 -fn_8011D0F8 = .text:0x8011D0F8; // type:function size:0x4 -fn_8011D0FC = .text:0x8011D0FC; // type:function size:0x4 -fn_8011D100 = .text:0x8011D100; // type:function size:0x4 -fn_8011D104 = .text:0x8011D104; // type:function size:0x4 -fn_8011D108 = .text:0x8011D108; // type:function size:0x4 -fn_8011D10C = .text:0x8011D10C; // type:function size:0x4 -fn_8011D110 = .text:0x8011D110; // type:function size:0x4 -fn_8011D114 = .text:0x8011D114; // type:function size:0x4 -fn_8011D118 = .text:0x8011D118; // type:function size:0x4 -fn_8011D11C = .text:0x8011D11C; // type:function size:0x4 -fn_8011D120 = .text:0x8011D120; // type:function size:0x4 -fn_8011D124 = .text:0x8011D124; // type:function size:0x4 -fn_8011D128 = .text:0x8011D128; // type:function size:0x4 -fn_8011D12C = .text:0x8011D12C; // type:function size:0x4 -fn_8011D130 = .text:0x8011D130; // type:function size:0x4 -fn_8011D134 = .text:0x8011D134; // type:function size:0x4 -fn_8011D138 = .text:0x8011D138; // type:function size:0x4 -fn_8011D13C = .text:0x8011D13C; // type:function size:0x4 -fn_8011D140 = .text:0x8011D140; // type:function size:0x4 -fn_8011D144 = .text:0x8011D144; // type:function size:0x4 -fn_8011D148 = .text:0x8011D148; // type:function size:0x4 -fn_8011D14C = .text:0x8011D14C; // type:function size:0x4 -fn_8011D150 = .text:0x8011D150; // type:function size:0x4 -fn_8011D154 = .text:0x8011D154; // type:function size:0x4 -fn_8011D158 = .text:0x8011D158; // type:function size:0x4 -fn_8011D15C = .text:0x8011D15C; // type:function size:0x4 -fn_8011D160 = .text:0x8011D160; // type:function size:0x4 -fn_8011D164 = .text:0x8011D164; // type:function size:0x4 -fn_8011D168 = .text:0x8011D168; // type:function size:0x4 -fn_8011D16C = .text:0x8011D16C; // type:function size:0x4 -fn_8011D170 = .text:0x8011D170; // type:function size:0x4 -fn_8011D174 = .text:0x8011D174; // type:function size:0x4 -fn_8011D178 = .text:0x8011D178; // type:function size:0x4 -fn_8011D17C = .text:0x8011D17C; // type:function size:0x4 -fn_8011D180 = .text:0x8011D180; // type:function size:0x4 -fn_8011D184 = .text:0x8011D184; // type:function size:0x4 -fn_8011D188 = .text:0x8011D188; // type:function size:0x4 -fn_8011D18C = .text:0x8011D18C; // type:function size:0x4 -fn_8011D190 = .text:0x8011D190; // type:function size:0x4 -fn_8011D194 = .text:0x8011D194; // type:function size:0x4 -fn_8011D198 = .text:0x8011D198; // type:function size:0x4 -fn_8011D19C = .text:0x8011D19C; // type:function size:0x4 -fn_8011D1A0 = .text:0x8011D1A0; // type:function size:0x4 -fn_8011D1A4 = .text:0x8011D1A4; // type:function size:0x4 -fn_8011D1A8 = .text:0x8011D1A8; // type:function size:0x4 -fn_8011D1AC = .text:0x8011D1AC; // type:function size:0x4 -fn_8011D1B0 = .text:0x8011D1B0; // type:function size:0x4 -fn_8011D1B4 = .text:0x8011D1B4; // type:function size:0x4 -fn_8011D1B8 = .text:0x8011D1B8; // type:function size:0x4 -fn_8011D1BC = .text:0x8011D1BC; // type:function size:0x4 -fn_8011D1C0 = .text:0x8011D1C0; // type:function size:0x4 -fn_8011D1C4 = .text:0x8011D1C4; // type:function size:0x4 -fn_8011D1C8 = .text:0x8011D1C8; // type:function size:0x4 -fn_8011D1CC = .text:0x8011D1CC; // type:function size:0x4 -fn_8011D1D0 = .text:0x8011D1D0; // type:function size:0x4 -fn_8011D1D4 = .text:0x8011D1D4; // type:function size:0x4 -fn_8011D1D8 = .text:0x8011D1D8; // type:function size:0x4 -fn_8011D1DC = .text:0x8011D1DC; // type:function size:0x4 -fn_8011D1E0 = .text:0x8011D1E0; // type:function size:0x4 -fn_8011D1E4 = .text:0x8011D1E4; // type:function size:0x4 -fn_8011D1E8 = .text:0x8011D1E8; // type:function size:0x4 -fn_8011D1EC = .text:0x8011D1EC; // type:function size:0x4 -fn_8011D1F0 = .text:0x8011D1F0; // type:function size:0x4 -fn_8011D1F4 = .text:0x8011D1F4; // type:function size:0x4 -fn_8011D1F8 = .text:0x8011D1F8; // type:function size:0x4 -fn_8011D1FC = .text:0x8011D1FC; // type:function size:0x4 -fn_8011D200 = .text:0x8011D200; // type:function size:0x4 -fn_8011D204 = .text:0x8011D204; // type:function size:0x4 -fn_8011D208 = .text:0x8011D208; // type:function size:0x4 -fn_8011D20C = .text:0x8011D20C; // type:function size:0x4 -fn_8011D210 = .text:0x8011D210; // type:function size:0x4 -fn_8011D214 = .text:0x8011D214; // type:function size:0x4 -fn_8011D218 = .text:0x8011D218; // type:function size:0x4 -fn_8011D21C = .text:0x8011D21C; // type:function size:0x4 -fn_8011D220 = .text:0x8011D220; // type:function size:0x4 -fn_8011D224 = .text:0x8011D224; // type:function size:0x4 -fn_8011D228 = .text:0x8011D228; // type:function size:0x4 -fn_8011D22C = .text:0x8011D22C; // type:function size:0x4 -fn_8011D230 = .text:0x8011D230; // type:function size:0x4 -fn_8011D234 = .text:0x8011D234; // type:function size:0x4 -fn_8011D238 = .text:0x8011D238; // type:function size:0x4 -fn_8011D23C = .text:0x8011D23C; // type:function size:0x4 -fn_8011D240 = .text:0x8011D240; // type:function size:0x4 -fn_8011D244 = .text:0x8011D244; // type:function size:0x4 -fn_8011D248 = .text:0x8011D248; // type:function size:0x4 -fn_8011D24C = .text:0x8011D24C; // type:function size:0x4 -fn_8011D250 = .text:0x8011D250; // type:function size:0x4 -fn_8011D254 = .text:0x8011D254; // type:function size:0x4 -fn_8011D258 = .text:0x8011D258; // type:function size:0x4 -fn_8011D25C = .text:0x8011D25C; // type:function size:0x4 -fn_8011D260 = .text:0x8011D260; // type:function size:0x4 -fn_8011D264 = .text:0x8011D264; // type:function size:0x4 -fn_8011D268 = .text:0x8011D268; // type:function size:0x4 -fn_8011D26C = .text:0x8011D26C; // type:function size:0x4 -fn_8011D270 = .text:0x8011D270; // type:function size:0x4 -fn_8011D274 = .text:0x8011D274; // type:function size:0x4 -fn_8011D278 = .text:0x8011D278; // type:function size:0x4 -fn_8011D27C = .text:0x8011D27C; // type:function size:0x4 -fn_8011D280 = .text:0x8011D280; // type:function size:0x4 -fn_8011D284 = .text:0x8011D284; // type:function size:0x4 -fn_8011D288 = .text:0x8011D288; // type:function size:0x4 -fn_8011D28C = .text:0x8011D28C; // type:function size:0x4 -fn_8011D290 = .text:0x8011D290; // type:function size:0x4 -fn_8011D294 = .text:0x8011D294; // type:function size:0x4 -fn_8011D298 = .text:0x8011D298; // type:function size:0x4 -fn_8011D29C = .text:0x8011D29C; // type:function size:0x4 -fn_8011D2A0 = .text:0x8011D2A0; // type:function size:0x4 -fn_8011D2A4 = .text:0x8011D2A4; // type:function size:0x4 -fn_8011D2A8 = .text:0x8011D2A8; // type:function size:0x4 -fn_8011D2AC = .text:0x8011D2AC; // type:function size:0x4 -fn_8011D2B0 = .text:0x8011D2B0; // type:function size:0x4 -fn_8011D2B4 = .text:0x8011D2B4; // type:function size:0x4 -fn_8011D2B8 = .text:0x8011D2B8; // type:function size:0x4 -fn_8011D2BC = .text:0x8011D2BC; // type:function size:0x4 -fn_8011D2C0 = .text:0x8011D2C0; // type:function size:0x4 -fn_8011D2C4 = .text:0x8011D2C4; // type:function size:0x4 -fn_8011D2C8 = .text:0x8011D2C8; // type:function size:0x4 -fn_8011D2CC = .text:0x8011D2CC; // type:function size:0x4 -fn_8011D2D0 = .text:0x8011D2D0; // type:function size:0x4 -fn_8011D2D4 = .text:0x8011D2D4; // type:function size:0x4 -fn_8011D2D8 = .text:0x8011D2D8; // type:function size:0x4 -fn_8011D2DC = .text:0x8011D2DC; // type:function size:0x4 -fn_8011D2E0 = .text:0x8011D2E0; // type:function size:0x4 -fn_8011D2E4 = .text:0x8011D2E4; // type:function size:0x4 -fn_8011D2E8 = .text:0x8011D2E8; // type:function size:0x4 -fn_8011D2EC = .text:0x8011D2EC; // type:function size:0x4 -fn_8011D2F0 = .text:0x8011D2F0; // type:function size:0x4 -fn_8011D2F4 = .text:0x8011D2F4; // type:function size:0x4 -fn_8011D2F8 = .text:0x8011D2F8; // type:function size:0x4 -fn_8011D2FC = .text:0x8011D2FC; // type:function size:0x4 -fn_8011D300 = .text:0x8011D300; // type:function size:0x4 -fn_8011D304 = .text:0x8011D304; // type:function size:0x4 -fn_8011D308 = .text:0x8011D308; // type:function size:0x4 -fn_8011D30C = .text:0x8011D30C; // type:function size:0x4 -fn_8011D310 = .text:0x8011D310; // type:function size:0x4 -fn_8011D314 = .text:0x8011D314; // type:function size:0x4 -fn_8011D318 = .text:0x8011D318; // type:function size:0x4 -fn_8011D31C = .text:0x8011D31C; // type:function size:0x4 -fn_8011D320 = .text:0x8011D320; // type:function size:0x4 -fn_8011D324 = .text:0x8011D324; // type:function size:0x4 -fn_8011D328 = .text:0x8011D328; // type:function size:0x4 -fn_8011D32C = .text:0x8011D32C; // type:function size:0x4 -fn_8011D330 = .text:0x8011D330; // type:function size:0x4 -fn_8011D334 = .text:0x8011D334; // type:function size:0x4 -fn_8011D338 = .text:0x8011D338; // type:function size:0x4 -fn_8011D33C = .text:0x8011D33C; // type:function size:0x4 -fn_8011D340 = .text:0x8011D340; // type:function size:0x4 -fn_8011D344 = .text:0x8011D344; // type:function size:0x4 -fn_8011D348 = .text:0x8011D348; // type:function size:0x4 -fn_8011D34C = .text:0x8011D34C; // type:function size:0x4 -fn_8011D350 = .text:0x8011D350; // type:function size:0x4 -fn_8011D354 = .text:0x8011D354; // type:function size:0x4 -fn_8011D358 = .text:0x8011D358; // type:function size:0x4 -fn_8011D35C = .text:0x8011D35C; // type:function size:0x4 -fn_8011D360 = .text:0x8011D360; // type:function size:0x4 -fn_8011D364 = .text:0x8011D364; // type:function size:0x4 -fn_8011D368 = .text:0x8011D368; // type:function size:0x4 -fn_8011D36C = .text:0x8011D36C; // type:function size:0x4 -fn_8011D370 = .text:0x8011D370; // type:function size:0x4 -fn_8011D374 = .text:0x8011D374; // type:function size:0x4 -fn_8011D378 = .text:0x8011D378; // type:function size:0x4 -fn_8011D37C = .text:0x8011D37C; // type:function size:0x4 -fn_8011D380 = .text:0x8011D380; // type:function size:0x4 -fn_8011D384 = .text:0x8011D384; // type:function size:0x4 -fn_8011D388 = .text:0x8011D388; // type:function size:0x4 -fn_8011D38C = .text:0x8011D38C; // type:function size:0x4 -fn_8011D390 = .text:0x8011D390; // type:function size:0x4 -fn_8011D394 = .text:0x8011D394; // type:function size:0x4 -fn_8011D398 = .text:0x8011D398; // type:function size:0x4 -fn_8011D39C = .text:0x8011D39C; // type:function size:0x4 -fn_8011D3A0 = .text:0x8011D3A0; // type:function size:0x4 -fn_8011D3A4 = .text:0x8011D3A4; // type:function size:0x4 -fn_8011D3A8 = .text:0x8011D3A8; // type:function size:0x4 -fn_8011D3AC = .text:0x8011D3AC; // type:function size:0x4 -fn_8011D3B0 = .text:0x8011D3B0; // type:function size:0x4 -fn_8011D3B4 = .text:0x8011D3B4; // type:function size:0x4 -fn_8011D3B8 = .text:0x8011D3B8; // type:function size:0x4 -fn_8011D3BC = .text:0x8011D3BC; // type:function size:0x4 -fn_8011D3C0 = .text:0x8011D3C0; // type:function size:0x4 -fn_8011D3C4 = .text:0x8011D3C4; // type:function size:0x4 -fn_8011D3C8 = .text:0x8011D3C8; // type:function size:0x4 -fn_8011D3CC = .text:0x8011D3CC; // type:function size:0x4 -fn_8011D3D0 = .text:0x8011D3D0; // type:function size:0x4 -fn_8011D3D4 = .text:0x8011D3D4; // type:function size:0x4 -fn_8011D3D8 = .text:0x8011D3D8; // type:function size:0x4 -fn_8011D3DC = .text:0x8011D3DC; // type:function size:0x4 -fn_8011D3E0 = .text:0x8011D3E0; // type:function size:0x4 -fn_8011D3E4 = .text:0x8011D3E4; // type:function size:0x4 -fn_8011D3E8 = .text:0x8011D3E8; // type:function size:0x4 -fn_8011D3EC = .text:0x8011D3EC; // type:function size:0x4 -fn_8011D3F0 = .text:0x8011D3F0; // type:function size:0x4 -fn_8011D3F4 = .text:0x8011D3F4; // type:function size:0x4 -fn_8011D3F8 = .text:0x8011D3F8; // type:function size:0x4 -fn_8011D3FC = .text:0x8011D3FC; // type:function size:0x4 -fn_8011D400 = .text:0x8011D400; // type:function size:0x4 -fn_8011D404 = .text:0x8011D404; // type:function size:0x4 -fn_8011D408 = .text:0x8011D408; // type:function size:0x4 -fn_8011D40C = .text:0x8011D40C; // type:function size:0x4 -fn_8011D410 = .text:0x8011D410; // type:function size:0x4 -fn_8011D414 = .text:0x8011D414; // type:function size:0x4 -fn_8011D418 = .text:0x8011D418; // type:function size:0x4 -fn_8011D41C = .text:0x8011D41C; // type:function size:0x4 -fn_8011D420 = .text:0x8011D420; // type:function size:0x4 -fn_8011D424 = .text:0x8011D424; // type:function size:0x4 -fn_8011D428 = .text:0x8011D428; // type:function size:0x4 -fn_8011D42C = .text:0x8011D42C; // type:function size:0x4 -fn_8011D430 = .text:0x8011D430; // type:function size:0x4 -fn_8011D434 = .text:0x8011D434; // type:function size:0x4 -fn_8011D438 = .text:0x8011D438; // type:function size:0x4 -fn_8011D43C = .text:0x8011D43C; // type:function size:0x4 -fn_8011D440 = .text:0x8011D440; // type:function size:0x4 -fn_8011D444 = .text:0x8011D444; // type:function size:0x4 -fn_8011D448 = .text:0x8011D448; // type:function size:0x4 -fn_8011D44C = .text:0x8011D44C; // type:function size:0x4 -fn_8011D450 = .text:0x8011D450; // type:function size:0x4 -fn_8011D454 = .text:0x8011D454; // type:function size:0x4 -fn_8011D458 = .text:0x8011D458; // type:function size:0x4 -fn_8011D45C = .text:0x8011D45C; // type:function size:0x4 -fn_8011D460 = .text:0x8011D460; // type:function size:0x4 -fn_8011D464 = .text:0x8011D464; // type:function size:0x4 -fn_8011D468 = .text:0x8011D468; // type:function size:0x4 -fn_8011D46C = .text:0x8011D46C; // type:function size:0x4 -fn_8011D470 = .text:0x8011D470; // type:function size:0x4 -fn_8011D474 = .text:0x8011D474; // type:function size:0x4 -fn_8011D478 = .text:0x8011D478; // type:function size:0x4 -fn_8011D47C = .text:0x8011D47C; // type:function size:0x4 -fn_8011D480 = .text:0x8011D480; // type:function size:0x4 -fn_8011D484 = .text:0x8011D484; // type:function size:0x4 -fn_8011D488 = .text:0x8011D488; // type:function size:0x4 -fn_8011D48C = .text:0x8011D48C; // type:function size:0x4 -fn_8011D490 = .text:0x8011D490; // type:function size:0x4 -fn_8011D494 = .text:0x8011D494; // type:function size:0x4 -fn_8011D498 = .text:0x8011D498; // type:function size:0x4 -fn_8011D49C = .text:0x8011D49C; // type:function size:0x4 -fn_8011D4A0 = .text:0x8011D4A0; // type:function size:0x4 -fn_8011D4A4 = .text:0x8011D4A4; // type:function size:0x4 -fn_8011D4A8 = .text:0x8011D4A8; // type:function size:0x4 -fn_8011D4AC = .text:0x8011D4AC; // type:function size:0x4 -fn_8011D4B0 = .text:0x8011D4B0; // type:function size:0x4 -fn_8011D4B4 = .text:0x8011D4B4; // type:function size:0x4 -fn_8011D4B8 = .text:0x8011D4B8; // type:function size:0x4 -fn_8011D4BC = .text:0x8011D4BC; // type:function size:0x4 -fn_8011D4C0 = .text:0x8011D4C0; // type:function size:0x4 -fn_8011D4C4 = .text:0x8011D4C4; // type:function size:0x4 -fn_8011D4C8 = .text:0x8011D4C8; // type:function size:0x4 -fn_8011D4CC = .text:0x8011D4CC; // type:function size:0x4 -fn_8011D4D0 = .text:0x8011D4D0; // type:function size:0x4 -fn_8011D4D4 = .text:0x8011D4D4; // type:function size:0x4 -fn_8011D4D8 = .text:0x8011D4D8; // type:function size:0x4 -fn_8011D4DC = .text:0x8011D4DC; // type:function size:0x4 -fn_8011D4E0 = .text:0x8011D4E0; // type:function size:0x4 -fn_8011D4E4 = .text:0x8011D4E4; // type:function size:0x4 -fn_8011D4E8 = .text:0x8011D4E8; // type:function size:0x4 -fn_8011D4EC = .text:0x8011D4EC; // type:function size:0x4 -fn_8011D4F0 = .text:0x8011D4F0; // type:function size:0x4 -fn_8011D4F4 = .text:0x8011D4F4; // type:function size:0x4 -fn_8011D4F8 = .text:0x8011D4F8; // type:function size:0x4 -fn_8011D4FC = .text:0x8011D4FC; // type:function size:0x4 -fn_8011D500 = .text:0x8011D500; // type:function size:0x4 -fn_8011D504 = .text:0x8011D504; // type:function size:0x4 -fn_8011D508 = .text:0x8011D508; // type:function size:0x4 -fn_8011D50C = .text:0x8011D50C; // type:function size:0x4 -fn_8011D510 = .text:0x8011D510; // type:function size:0x4 -fn_8011D514 = .text:0x8011D514; // type:function size:0x4 -fn_8011D518 = .text:0x8011D518; // type:function size:0x4 -fn_8011D51C = .text:0x8011D51C; // type:function size:0x4 -fn_8011D520 = .text:0x8011D520; // type:function size:0x4 -fn_8011D524 = .text:0x8011D524; // type:function size:0x4 -fn_8011D528 = .text:0x8011D528; // type:function size:0x4 -fn_8011D52C = .text:0x8011D52C; // type:function size:0x4 -fn_8011D530 = .text:0x8011D530; // type:function size:0x4 -fn_8011D534 = .text:0x8011D534; // type:function size:0x4 -fn_8011D538 = .text:0x8011D538; // type:function size:0x4 -fn_8011D53C = .text:0x8011D53C; // type:function size:0x4 -fn_8011D540 = .text:0x8011D540; // type:function size:0x4 -fn_8011D544 = .text:0x8011D544; // type:function size:0x4 -fn_8011D548 = .text:0x8011D548; // type:function size:0x4 -fn_8011D54C = .text:0x8011D54C; // type:function size:0x4 -fn_8011D550 = .text:0x8011D550; // type:function size:0x4 -fn_8011D554 = .text:0x8011D554; // type:function size:0x4 -fn_8011D558 = .text:0x8011D558; // type:function size:0x4 -fn_8011D55C = .text:0x8011D55C; // type:function size:0x4 -fn_8011D560 = .text:0x8011D560; // type:function size:0x4 -fn_8011D564 = .text:0x8011D564; // type:function size:0x4 -fn_8011D568 = .text:0x8011D568; // type:function size:0x4 -fn_8011D56C = .text:0x8011D56C; // type:function size:0x4 -fn_8011D570 = .text:0x8011D570; // type:function size:0x4 -fn_8011D574 = .text:0x8011D574; // type:function size:0x4 -fn_8011D578 = .text:0x8011D578; // type:function size:0x4 -fn_8011D57C = .text:0x8011D57C; // type:function size:0x4 -fn_8011D580 = .text:0x8011D580; // type:function size:0x4 -fn_8011D584 = .text:0x8011D584; // type:function size:0x4 -fn_8011D588 = .text:0x8011D588; // type:function size:0x4 -fn_8011D58C = .text:0x8011D58C; // type:function size:0x4 -fn_8011D590 = .text:0x8011D590; // type:function size:0x4 -fn_8011D594 = .text:0x8011D594; // type:function size:0x4 -fn_8011D598 = .text:0x8011D598; // type:function size:0x4 -fn_8011D59C = .text:0x8011D59C; // type:function size:0x4 -fn_8011D5A0 = .text:0x8011D5A0; // type:function size:0x4 -fn_8011D5A4 = .text:0x8011D5A4; // type:function size:0x4 -fn_8011D5A8 = .text:0x8011D5A8; // type:function size:0x4 -fn_8011D5AC = .text:0x8011D5AC; // type:function size:0x4 -fn_8011D5B0 = .text:0x8011D5B0; // type:function size:0x4 -fn_8011D5B4 = .text:0x8011D5B4; // type:function size:0x4 -fn_8011D5B8 = .text:0x8011D5B8; // type:function size:0x4 -fn_8011D5BC = .text:0x8011D5BC; // type:function size:0x4 -fn_8011D5C0 = .text:0x8011D5C0; // type:function size:0x4 -fn_8011D5C4 = .text:0x8011D5C4; // type:function size:0x4 -fn_8011D5C8 = .text:0x8011D5C8; // type:function size:0x4 -fn_8011D5CC = .text:0x8011D5CC; // type:function size:0x4 -fn_8011D5D0 = .text:0x8011D5D0; // type:function size:0x4 -fn_8011D5D4 = .text:0x8011D5D4; // type:function size:0x4 -fn_8011D5D8 = .text:0x8011D5D8; // type:function size:0x4 -fn_8011D5DC = .text:0x8011D5DC; // type:function size:0x4 -fn_8011D5E0 = .text:0x8011D5E0; // type:function size:0x4 -fn_8011D5E4 = .text:0x8011D5E4; // type:function size:0x4 -fn_8011D5E8 = .text:0x8011D5E8; // type:function size:0x4 -fn_8011D5EC = .text:0x8011D5EC; // type:function size:0x4 -fn_8011D5F0 = .text:0x8011D5F0; // type:function size:0x4 -fn_8011D5F4 = .text:0x8011D5F4; // type:function size:0x4 -fn_8011D5F8 = .text:0x8011D5F8; // type:function size:0x4 -fn_8011D5FC = .text:0x8011D5FC; // type:function size:0x4 -fn_8011D600 = .text:0x8011D600; // type:function size:0x4 -fn_8011D604 = .text:0x8011D604; // type:function size:0x4 -fn_8011D608 = .text:0x8011D608; // type:function size:0x4 -fn_8011D60C = .text:0x8011D60C; // type:function size:0x4 -fn_8011D610 = .text:0x8011D610; // type:function size:0x4 -fn_8011D614 = .text:0x8011D614; // type:function size:0x4 -fn_8011D618 = .text:0x8011D618; // type:function size:0x4 -fn_8011D61C = .text:0x8011D61C; // type:function size:0x4 -fn_8011D620 = .text:0x8011D620; // type:function size:0x4 -fn_8011D624 = .text:0x8011D624; // type:function size:0x4 -fn_8011D628 = .text:0x8011D628; // type:function size:0x4 -fn_8011D62C = .text:0x8011D62C; // type:function size:0x4 -fn_8011D630 = .text:0x8011D630; // type:function size:0x4 -fn_8011D634 = .text:0x8011D634; // type:function size:0x4 -fn_8011D638 = .text:0x8011D638; // type:function size:0x4 -fn_8011D63C = .text:0x8011D63C; // type:function size:0x4 -fn_8011D640 = .text:0x8011D640; // type:function size:0x4 -fn_8011D644 = .text:0x8011D644; // type:function size:0x4 -fn_8011D648 = .text:0x8011D648; // type:function size:0x4 -fn_8011D64C = .text:0x8011D64C; // type:function size:0x4 -fn_8011D650 = .text:0x8011D650; // type:function size:0x4 -fn_8011D654 = .text:0x8011D654; // type:function size:0x4 -fn_8011D658 = .text:0x8011D658; // type:function size:0x4 -fn_8011D65C = .text:0x8011D65C; // type:function size:0x4 -fn_8011D660 = .text:0x8011D660; // type:function size:0x4 -fn_8011D664 = .text:0x8011D664; // type:function size:0x4 -fn_8011D668 = .text:0x8011D668; // type:function size:0x4 -fn_8011D66C = .text:0x8011D66C; // type:function size:0x4 -fn_8011D670 = .text:0x8011D670; // type:function size:0x4 -fn_8011D674 = .text:0x8011D674; // type:function size:0x4 -fn_8011D678 = .text:0x8011D678; // type:function size:0x4 -fn_8011D67C = .text:0x8011D67C; // type:function size:0x4 -fn_8011D680 = .text:0x8011D680; // type:function size:0x4 -fn_8011D684 = .text:0x8011D684; // type:function size:0x4 -fn_8011D688 = .text:0x8011D688; // type:function size:0x4 -fn_8011D68C = .text:0x8011D68C; // type:function size:0x4 -fn_8011D690 = .text:0x8011D690; // type:function size:0x4 -fn_8011D694 = .text:0x8011D694; // type:function size:0x4 -fn_8011D698 = .text:0x8011D698; // type:function size:0x4 -fn_8011D69C = .text:0x8011D69C; // type:function size:0x4 -fn_8011D6A0 = .text:0x8011D6A0; // type:function size:0x4 -fn_8011D6A4 = .text:0x8011D6A4; // type:function size:0x4 -fn_8011D6A8 = .text:0x8011D6A8; // type:function size:0x4 -fn_8011D6AC = .text:0x8011D6AC; // type:function size:0x4 -fn_8011D6B0 = .text:0x8011D6B0; // type:function size:0x4 -fn_8011D6B4 = .text:0x8011D6B4; // type:function size:0x4 -fn_8011D6B8 = .text:0x8011D6B8; // type:function size:0x4 -fn_8011D6BC = .text:0x8011D6BC; // type:function size:0x4 -fn_8011D6C0 = .text:0x8011D6C0; // type:function size:0x4 -fn_8011D6C4 = .text:0x8011D6C4; // type:function size:0x4 -fn_8011D6C8 = .text:0x8011D6C8; // type:function size:0x4 -fn_8011D6CC = .text:0x8011D6CC; // type:function size:0x4 -fn_8011D6D0 = .text:0x8011D6D0; // type:function size:0x4 -fn_8011D6D4 = .text:0x8011D6D4; // type:function size:0x4 -fn_8011D6D8 = .text:0x8011D6D8; // type:function size:0x4 -fn_8011D6DC = .text:0x8011D6DC; // type:function size:0x4 -fn_8011D6E0 = .text:0x8011D6E0; // type:function size:0x4 -fn_8011D6E4 = .text:0x8011D6E4; // type:function size:0x4 -fn_8011D6E8 = .text:0x8011D6E8; // type:function size:0x4 -fn_8011D6EC = .text:0x8011D6EC; // type:function size:0x4 -fn_8011D6F0 = .text:0x8011D6F0; // type:function size:0x4 -fn_8011D6F4 = .text:0x8011D6F4; // type:function size:0x4 -fn_8011D6F8 = .text:0x8011D6F8; // type:function size:0x4 -fn_8011D6FC = .text:0x8011D6FC; // type:function size:0x4 -fn_8011D700 = .text:0x8011D700; // type:function size:0x4 -fn_8011D704 = .text:0x8011D704; // type:function size:0x4 -fn_8011D708 = .text:0x8011D708; // type:function size:0x4 -fn_8011D70C = .text:0x8011D70C; // type:function size:0x4 -fn_8011D710 = .text:0x8011D710; // type:function size:0x4 -fn_8011D714 = .text:0x8011D714; // type:function size:0x4 -fn_8011D718 = .text:0x8011D718; // type:function size:0x4 -fn_8011D71C = .text:0x8011D71C; // type:function size:0x4 -fn_8011D720 = .text:0x8011D720; // type:function size:0x4 -fn_8011D724 = .text:0x8011D724; // type:function size:0x4 -fn_8011D728 = .text:0x8011D728; // type:function size:0x4 -fn_8011D72C = .text:0x8011D72C; // type:function size:0x4 -fn_8011D730 = .text:0x8011D730; // type:function size:0x4 -fn_8011D734 = .text:0x8011D734; // type:function size:0x4 -fn_8011D738 = .text:0x8011D738; // type:function size:0x4 -fn_8011D73C = .text:0x8011D73C; // type:function size:0x4 -fn_8011D740 = .text:0x8011D740; // type:function size:0x4 -fn_8011D744 = .text:0x8011D744; // type:function size:0x4 -fn_8011D748 = .text:0x8011D748; // type:function size:0x4 -fn_8011D74C = .text:0x8011D74C; // type:function size:0x4 -fn_8011D750 = .text:0x8011D750; // type:function size:0x4 -fn_8011D754 = .text:0x8011D754; // type:function size:0x4 -fn_8011D758 = .text:0x8011D758; // type:function size:0x4 -fn_8011D75C = .text:0x8011D75C; // type:function size:0x4 -fn_8011D760 = .text:0x8011D760; // type:function size:0x4 -fn_8011D764 = .text:0x8011D764; // type:function size:0x4 -fn_8011D768 = .text:0x8011D768; // type:function size:0x4 -fn_8011D76C = .text:0x8011D76C; // type:function size:0x4 -fn_8011D770 = .text:0x8011D770; // type:function size:0x4 -fn_8011D774 = .text:0x8011D774; // type:function size:0x4 -fn_8011D778 = .text:0x8011D778; // type:function size:0x4 -fn_8011D77C = .text:0x8011D77C; // type:function size:0x4 -fn_8011D780 = .text:0x8011D780; // type:function size:0x4 -fn_8011D784 = .text:0x8011D784; // type:function size:0x4 -fn_8011D788 = .text:0x8011D788; // type:function size:0x4 -fn_8011D78C = .text:0x8011D78C; // type:function size:0x4 -fn_8011D790 = .text:0x8011D790; // type:function size:0x4 -fn_8011D794 = .text:0x8011D794; // type:function size:0x4 -fn_8011D798 = .text:0x8011D798; // type:function size:0x4 -fn_8011D79C = .text:0x8011D79C; // type:function size:0x4 -fn_8011D7A0 = .text:0x8011D7A0; // type:function size:0x4 -fn_8011D7A4 = .text:0x8011D7A4; // type:function size:0x4 -fn_8011D7A8 = .text:0x8011D7A8; // type:function size:0x4 -fn_8011D7AC = .text:0x8011D7AC; // type:function size:0x4 -fn_8011D7B0 = .text:0x8011D7B0; // type:function size:0x4 -fn_8011D7B4 = .text:0x8011D7B4; // type:function size:0x4 -fn_8011D7B8 = .text:0x8011D7B8; // type:function size:0x4 -fn_8011D7BC = .text:0x8011D7BC; // type:function size:0x4 -fn_8011D7C0 = .text:0x8011D7C0; // type:function size:0x4 -fn_8011D7C4 = .text:0x8011D7C4; // type:function size:0x4 -fn_8011D7C8 = .text:0x8011D7C8; // type:function size:0x4 -fn_8011D7CC = .text:0x8011D7CC; // type:function size:0x4 -fn_8011D7D0 = .text:0x8011D7D0; // type:function size:0x4 -fn_8011D7D4 = .text:0x8011D7D4; // type:function size:0x4 -fn_8011D7D8 = .text:0x8011D7D8; // type:function size:0x4 -fn_8011D7DC = .text:0x8011D7DC; // type:function size:0x4 -fn_8011D7E0 = .text:0x8011D7E0; // type:function size:0x4 -fn_8011D7E4 = .text:0x8011D7E4; // type:function size:0x4 -fn_8011D7E8 = .text:0x8011D7E8; // type:function size:0x4 -fn_8011D7EC = .text:0x8011D7EC; // type:function size:0x4 -fn_8011D7F0 = .text:0x8011D7F0; // type:function size:0x4 -fn_8011D7F4 = .text:0x8011D7F4; // type:function size:0x4 -fn_8011D7F8 = .text:0x8011D7F8; // type:function size:0x4 -fn_8011D7FC = .text:0x8011D7FC; // type:function size:0x4 -fn_8011D800 = .text:0x8011D800; // type:function size:0x4 -fn_8011D804 = .text:0x8011D804; // type:function size:0x4 -fn_8011D808 = .text:0x8011D808; // type:function size:0x4 -fn_8011D80C = .text:0x8011D80C; // type:function size:0x4 -fn_8011D810 = .text:0x8011D810; // type:function size:0x4 -fn_8011D814 = .text:0x8011D814; // type:function size:0x4 -fn_8011D818 = .text:0x8011D818; // type:function size:0x4 -fn_8011D81C = .text:0x8011D81C; // type:function size:0x4 -fn_8011D820 = .text:0x8011D820; // type:function size:0x4 -fn_8011D824 = .text:0x8011D824; // type:function size:0x4 -fn_8011D828 = .text:0x8011D828; // type:function size:0x4 -fn_8011D82C = .text:0x8011D82C; // type:function size:0x4 -fn_8011D830 = .text:0x8011D830; // type:function size:0x4 -fn_8011D834 = .text:0x8011D834; // type:function size:0x4 -fn_8011D838 = .text:0x8011D838; // type:function size:0x4 -fn_8011D83C = .text:0x8011D83C; // type:function size:0x4 -fn_8011D840 = .text:0x8011D840; // type:function size:0x4 -fn_8011D844 = .text:0x8011D844; // type:function size:0x4 -fn_8011D848 = .text:0x8011D848; // type:function size:0x4 -fn_8011D84C = .text:0x8011D84C; // type:function size:0x4 -fn_8011D850 = .text:0x8011D850; // type:function size:0x4 -fn_8011D854 = .text:0x8011D854; // type:function size:0x4 -fn_8011D858 = .text:0x8011D858; // type:function size:0x4 -fn_8011D85C = .text:0x8011D85C; // type:function size:0x4 -fn_8011D860 = .text:0x8011D860; // type:function size:0x4 -fn_8011D864 = .text:0x8011D864; // type:function size:0x4 -fn_8011D868 = .text:0x8011D868; // type:function size:0x4 -fn_8011D86C = .text:0x8011D86C; // type:function size:0x4 -fn_8011D870 = .text:0x8011D870; // type:function size:0x4 -fn_8011D874 = .text:0x8011D874; // type:function size:0x4 -fn_8011D878 = .text:0x8011D878; // type:function size:0x4 -fn_8011D87C = .text:0x8011D87C; // type:function size:0x4 -fn_8011D880 = .text:0x8011D880; // type:function size:0x4 -fn_8011D884 = .text:0x8011D884; // type:function size:0x4 -fn_8011D888 = .text:0x8011D888; // type:function size:0x4 -fn_8011D88C = .text:0x8011D88C; // type:function size:0x4 -fn_8011D890 = .text:0x8011D890; // type:function size:0x4 -fn_8011D894 = .text:0x8011D894; // type:function size:0x4 +_kerent = .text:0x8011C8B4; // type:function size:0xFE4 _ctors = .ctors:0x8011D8A0; // type:label scope:global data:4byte __init_cpp_exceptions_reference = .ctors:0x8011D8A0; // type:object size:0x4 scope:global _dtors = .dtors:0x8011D8C0; // type:label scope:global data:4byte From 790b161b8d1e523a7f4715f8e1407ed5d9c03fb8 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Fri, 15 Nov 2024 19:01:46 +0100 Subject: [PATCH 039/178] Fix function locality in the Japanese dol --- config/GMPJ01_00/symbols.txt | 6284 +++++++++++++++++----------------- 1 file changed, 3142 insertions(+), 3142 deletions(-) diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index d49ba5b9..21fb23bc 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -45,1972 +45,1972 @@ _bss_init_info = .init:0x800055F0; // type:object size:0x20 scope:global data:4b @eti_80005790 = extabindex:0x80005790; // type:object size:0xC scope:local hidden _eti_init_info = extabindex:0x8000579C; // type:object size:0x20 scope:global main = .text:0x800057C0; // type:function size:0x22C scope:global -fn_800059EC = .text:0x800059EC; // type:function size:0x38 -fn_80005A24 = .text:0x80005A24; // type:function size:0xC -fn_80005A30 = .text:0x80005A30; // type:function size:0x2C -fn_80005A5C = .text:0x80005A5C; // type:function size:0xF0 -fn_80005B4C = .text:0x80005B4C; // type:function size:0x168 -fn_80005CB4 = .text:0x80005CB4; // type:function size:0x440 -fn_800060F4 = .text:0x800060F4; // type:function size:0x234 -fn_80006328 = .text:0x80006328; // type:function size:0x54 -fn_8000637C = .text:0x8000637C; // type:function size:0x70 -fn_800063EC = .text:0x800063EC; // type:function size:0x70 -fn_8000645C = .text:0x8000645C; // type:function size:0x14 -fn_80006470 = .text:0x80006470; // type:function size:0x8 -fn_80006478 = .text:0x80006478; // type:function size:0xC -fn_80006484 = .text:0x80006484; // type:function size:0x16C -fn_800065F0 = .text:0x800065F0; // type:function size:0x1B4 -fn_800067A4 = .text:0x800067A4; // type:function size:0x170 -fn_80006914 = .text:0x80006914; // type:function size:0x16C -fn_80006A80 = .text:0x80006A80; // type:function size:0x174 -fn_80006BF4 = .text:0x80006BF4; // type:function size:0x150 -fn_80006D44 = .text:0x80006D44; // type:function size:0x38 -fn_80006D7C = .text:0x80006D7C; // type:function size:0xBC -fn_80006E38 = .text:0x80006E38; // type:function size:0xD0 -fn_80006F08 = .text:0x80006F08; // type:function size:0x74 -fn_80006F7C = .text:0x80006F7C; // type:function size:0x64 -fn_80006FE0 = .text:0x80006FE0; // type:function size:0xB8 -fn_80007098 = .text:0x80007098; // type:function size:0x224 -fn_800072BC = .text:0x800072BC; // type:function size:0x188 -fn_80007444 = .text:0x80007444; // type:function size:0xC8 -fn_8000750C = .text:0x8000750C; // type:function size:0x1A8 -fn_800076B4 = .text:0x800076B4; // type:function size:0x1A8 -fn_8000785C = .text:0x8000785C; // type:function size:0x60 -fn_800078BC = .text:0x800078BC; // type:function size:0x344 -fn_80007C00 = .text:0x80007C00; // type:function size:0x3A0 -fn_80007FA0 = .text:0x80007FA0; // type:function size:0x3C4 -fn_80008364 = .text:0x80008364; // type:function size:0x428 -fn_8000878C = .text:0x8000878C; // type:function size:0x30 -fn_800087BC = .text:0x800087BC; // type:function size:0x3FC -fn_80008BB8 = .text:0x80008BB8; // type:function size:0x104 -fn_80008CBC = .text:0x80008CBC; // type:function size:0x38 -fn_80008CF4 = .text:0x80008CF4; // type:function size:0x7C -fn_80008D70 = .text:0x80008D70; // type:function size:0xD4 -fn_80008E44 = .text:0x80008E44; // type:function size:0x130 -fn_80008F74 = .text:0x80008F74; // type:function size:0x48C -fn_80009400 = .text:0x80009400; // type:function size:0x200 -fn_80009600 = .text:0x80009600; // type:function size:0x1D8 -fn_800097D8 = .text:0x800097D8; // type:function size:0x324 -fn_80009AFC = .text:0x80009AFC; // type:function size:0x138 -fn_80009C34 = .text:0x80009C34; // type:function size:0xD0 -fn_80009D04 = .text:0x80009D04; // type:function size:0x164 -fn_80009E68 = .text:0x80009E68; // type:function size:0x13C -fn_80009FA4 = .text:0x80009FA4; // type:function size:0x54 -fn_80009FF8 = .text:0x80009FF8; // type:function size:0xE4 -fn_8000A0DC = .text:0x8000A0DC; // type:function size:0xC8 -fn_8000A1A4 = .text:0x8000A1A4; // type:function size:0x6C -fn_8000A210 = .text:0x8000A210; // type:function size:0x254 -fn_8000A464 = .text:0x8000A464; // type:function size:0x74 -fn_8000A4D8 = .text:0x8000A4D8; // type:function size:0x80 -fn_8000A558 = .text:0x8000A558; // type:function size:0x12C -fn_8000A684 = .text:0x8000A684; // type:function size:0x30 -fn_8000A6B4 = .text:0x8000A6B4; // type:function size:0x2C -fn_8000A6E0 = .text:0x8000A6E0; // type:function size:0x54 -fn_8000A734 = .text:0x8000A734; // type:function size:0x64 -fn_8000A798 = .text:0x8000A798; // type:function size:0x6C -fn_8000A804 = .text:0x8000A804; // type:function size:0x38 -fn_8000A83C = .text:0x8000A83C; // type:function size:0x54 -fn_8000A890 = .text:0x8000A890; // type:function size:0x3C -fn_8000A8CC = .text:0x8000A8CC; // type:function size:0x3C -fn_8000A908 = .text:0x8000A908; // type:function size:0x18 -fn_8000A920 = .text:0x8000A920; // type:function size:0x18 -fn_8000A938 = .text:0x8000A938; // type:function size:0x4C -fn_8000A984 = .text:0x8000A984; // type:function size:0x40 -fn_8000A9C4 = .text:0x8000A9C4; // type:function size:0x3C -fn_8000AA00 = .text:0x8000AA00; // type:function size:0x108 -fn_8000AB08 = .text:0x8000AB08; // type:function size:0x7C -fn_8000AB84 = .text:0x8000AB84; // type:function size:0x12C -fn_8000ACB0 = .text:0x8000ACB0; // type:function size:0x48 -fn_8000ACF8 = .text:0x8000ACF8; // type:function size:0x44 -fn_8000AD3C = .text:0x8000AD3C; // type:function size:0xC -fn_8000AD48 = .text:0x8000AD48; // type:function size:0x158 -fn_8000AEA0 = .text:0x8000AEA0; // type:function size:0x50 -fn_8000AEF0 = .text:0x8000AEF0; // type:function size:0x64 -fn_8000AF54 = .text:0x8000AF54; // type:function size:0xA0 -fn_8000AFF4 = .text:0x8000AFF4; // type:function size:0x15C -fn_8000B150 = .text:0x8000B150; // type:function size:0xAC -fn_8000B1FC = .text:0x8000B1FC; // type:function size:0xEE8 -fn_8000C0E4 = .text:0x8000C0E4; // type:function size:0x3C0 -fn_8000C4A4 = .text:0x8000C4A4; // type:function size:0x14 -fn_8000C4B8 = .text:0x8000C4B8; // type:function size:0x1E8 -fn_8000C6A0 = .text:0x8000C6A0; // type:function size:0x68 -fn_8000C708 = .text:0x8000C708; // type:function size:0x58 -fn_8000C760 = .text:0x8000C760; // type:function size:0x27C -fn_8000C9DC = .text:0x8000C9DC; // type:function size:0x60 -fn_8000CA3C = .text:0x8000CA3C; // type:function size:0x8 -fn_8000CA44 = .text:0x8000CA44; // type:function size:0x50 -fn_8000CA94 = .text:0x8000CA94; // type:function size:0xD4 -fn_8000CB68 = .text:0x8000CB68; // type:function size:0x2A4 -fn_8000CE0C = .text:0x8000CE0C; // type:function size:0x100 -fn_8000CF0C = .text:0x8000CF0C; // type:function size:0x80 -fn_8000CF8C = .text:0x8000CF8C; // type:function size:0x54 -fn_8000CFE0 = .text:0x8000CFE0; // type:function size:0xC -fn_8000CFEC = .text:0x8000CFEC; // type:function size:0x8 -fn_8000CFF4 = .text:0x8000CFF4; // type:function size:0x28 -fn_8000D01C = .text:0x8000D01C; // type:function size:0x184 -fn_8000D1A0 = .text:0x8000D1A0; // type:function size:0x4C -fn_8000D1EC = .text:0x8000D1EC; // type:function size:0x30 -fn_8000D21C = .text:0x8000D21C; // type:function size:0x10 -fn_8000D22C = .text:0x8000D22C; // type:function size:0x14 -fn_8000D240 = .text:0x8000D240; // type:function size:0x84 -fn_8000D2C4 = .text:0x8000D2C4; // type:function size:0x84 -fn_8000D348 = .text:0x8000D348; // type:function size:0xA0 -fn_8000D3E8 = .text:0x8000D3E8; // type:function size:0xB0 -fn_8000D498 = .text:0x8000D498; // type:function size:0x64 -fn_8000D4FC = .text:0x8000D4FC; // type:function size:0x188 -fn_8000D684 = .text:0x8000D684; // type:function size:0x14C -fn_8000D7D0 = .text:0x8000D7D0; // type:function size:0xF4 -fn_8000D8C4 = .text:0x8000D8C4; // type:function size:0x458 -fn_8000DD1C = .text:0x8000DD1C; // type:function size:0x8 -fn_8000DD24 = .text:0x8000DD24; // type:function size:0x114 -fn_8000DE38 = .text:0x8000DE38; // type:function size:0x10 -fn_8000DE48 = .text:0x8000DE48; // type:function size:0x128 -fn_8000DF70 = .text:0x8000DF70; // type:function size:0x188 -fn_8000E0F8 = .text:0x8000E0F8; // type:function size:0xF4 -fn_8000E1EC = .text:0x8000E1EC; // type:function size:0x334 -fn_8000E520 = .text:0x8000E520; // type:function size:0x8C -fn_8000E5AC = .text:0x8000E5AC; // type:function size:0xAC -fn_8000E658 = .text:0x8000E658; // type:function size:0x9C -fn_8000E6F4 = .text:0x8000E6F4; // type:function size:0x84 -fn_8000E778 = .text:0x8000E778; // type:function size:0x90 -fn_8000E808 = .text:0x8000E808; // type:function size:0xAC -fn_8000E8B4 = .text:0x8000E8B4; // type:function size:0xAC -fn_8000E960 = .text:0x8000E960; // type:function size:0x60 -fn_8000E9C0 = .text:0x8000E9C0; // type:function size:0x5C -fn_8000EA1C = .text:0x8000EA1C; // type:function size:0x60 -fn_8000EA7C = .text:0x8000EA7C; // type:function size:0x64 -fn_8000EAE0 = .text:0x8000EAE0; // type:function size:0x64 -fn_8000EB44 = .text:0x8000EB44; // type:function size:0x4C -fn_8000EB90 = .text:0x8000EB90; // type:function size:0xF0 -fn_8000EC80 = .text:0x8000EC80; // type:function size:0x9C -fn_8000ED1C = .text:0x8000ED1C; // type:function size:0x9C -fn_8000EDB8 = .text:0x8000EDB8; // type:function size:0x98 -fn_8000EE50 = .text:0x8000EE50; // type:function size:0x9C -fn_8000EEEC = .text:0x8000EEEC; // type:function size:0xC0 -fn_8000EFAC = .text:0x8000EFAC; // type:function size:0x8C -fn_8000F038 = .text:0x8000F038; // type:function size:0x50 -fn_8000F088 = .text:0x8000F088; // type:function size:0x4C -fn_8000F0D4 = .text:0x8000F0D4; // type:function size:0xAC -fn_8000F180 = .text:0x8000F180; // type:function size:0x58 -fn_8000F1D8 = .text:0x8000F1D8; // type:function size:0x1FC -fn_8000F3D4 = .text:0x8000F3D4; // type:function size:0x68 -fn_8000F43C = .text:0x8000F43C; // type:function size:0x50 -fn_8000F48C = .text:0x8000F48C; // type:function size:0x214 -fn_8000F6A0 = .text:0x8000F6A0; // type:function size:0x158 -fn_8000F7F8 = .text:0x8000F7F8; // type:function size:0xECC -fn_800106C4 = .text:0x800106C4; // type:function size:0x29C -fn_80010960 = .text:0x80010960; // type:function size:0x58 -fn_800109B8 = .text:0x800109B8; // type:function size:0x178 -fn_80010B30 = .text:0x80010B30; // type:function size:0xB0 -fn_80010BE0 = .text:0x80010BE0; // type:function size:0xA0 -fn_80010C80 = .text:0x80010C80; // type:function size:0xC8 -fn_80010D48 = .text:0x80010D48; // type:function size:0x284 -fn_80010FCC = .text:0x80010FCC; // type:function size:0x38 -fn_80011004 = .text:0x80011004; // type:function size:0x210 -fn_80011214 = .text:0x80011214; // type:function size:0xF8 -fn_8001130C = .text:0x8001130C; // type:function size:0x80 -fn_8001138C = .text:0x8001138C; // type:function size:0x130 -fn_800114BC = .text:0x800114BC; // type:function size:0x1C0 -fn_8001167C = .text:0x8001167C; // type:function size:0x128 -fn_800117A4 = .text:0x800117A4; // type:function size:0x1A8 -fn_8001194C = .text:0x8001194C; // type:function size:0x190 -fn_80011ADC = .text:0x80011ADC; // type:function size:0x7A8 -fn_80012284 = .text:0x80012284; // type:function size:0x15C -fn_800123E0 = .text:0x800123E0; // type:function size:0x464 -fn_80012844 = .text:0x80012844; // type:function size:0x198 -fn_800129DC = .text:0x800129DC; // type:function size:0x12C -fn_80012B08 = .text:0x80012B08; // type:function size:0x1E8 -fn_80012CF0 = .text:0x80012CF0; // type:function size:0x168 -fn_80012E58 = .text:0x80012E58; // type:function size:0xD0 -fn_80012F28 = .text:0x80012F28; // type:function size:0x174 -fn_8001309C = .text:0x8001309C; // type:function size:0x16C -fn_80013208 = .text:0x80013208; // type:function size:0xE8 -fn_800132F0 = .text:0x800132F0; // type:function size:0x38 -fn_80013328 = .text:0x80013328; // type:function size:0x938 -fn_80013C60 = .text:0x80013C60; // type:function size:0x80 -fn_80013CE0 = .text:0x80013CE0; // type:function size:0x94 -fn_80013D74 = .text:0x80013D74; // type:function size:0x44 -fn_80013DB8 = .text:0x80013DB8; // type:function size:0x44 -fn_80013DFC = .text:0x80013DFC; // type:function size:0x44 -fn_80013E40 = .text:0x80013E40; // type:function size:0x44 -fn_80013E84 = .text:0x80013E84; // type:function size:0x44 -fn_80013EC8 = .text:0x80013EC8; // type:function size:0x44 -fn_80013F0C = .text:0x80013F0C; // type:function size:0x44 -fn_80013F50 = .text:0x80013F50; // type:function size:0x3C -fn_80013F8C = .text:0x80013F8C; // type:function size:0x44 -fn_80013FD0 = .text:0x80013FD0; // type:function size:0x24 -fn_80013FF4 = .text:0x80013FF4; // type:function size:0x24 -fn_80014018 = .text:0x80014018; // type:function size:0xC -fn_80014024 = .text:0x80014024; // type:function size:0x1A0 -fn_800141C4 = .text:0x800141C4; // type:function size:0xEC -fn_800142B0 = .text:0x800142B0; // type:function size:0x86C -fn_80014B1C = .text:0x80014B1C; // type:function size:0x4C0 -fn_80014FDC = .text:0x80014FDC; // type:function size:0x10DC -fn_800160B8 = .text:0x800160B8; // type:function size:0x8E8 -fn_800169A0 = .text:0x800169A0; // type:function size:0x2588 -fn_80018F28 = .text:0x80018F28; // type:function size:0x164 -fn_8001908C = .text:0x8001908C; // type:function size:0x180 -fn_8001920C = .text:0x8001920C; // type:function size:0xB0 -fn_800192BC = .text:0x800192BC; // type:function size:0x280 -fn_8001953C = .text:0x8001953C; // type:function size:0x29C -fn_800197D8 = .text:0x800197D8; // type:function size:0x8C -fn_80019864 = .text:0x80019864; // type:function size:0xCC -fn_80019930 = .text:0x80019930; // type:function size:0x5E4 -fn_80019F14 = .text:0x80019F14; // type:function size:0x75C -fn_8001A670 = .text:0x8001A670; // type:function size:0x248 -fn_8001A8B8 = .text:0x8001A8B8; // type:function size:0x198 -fn_8001AA50 = .text:0x8001AA50; // type:function size:0x248 -fn_8001AC98 = .text:0x8001AC98; // type:function size:0x17C -fn_8001AE14 = .text:0x8001AE14; // type:function size:0x1B4 -fn_8001AFC8 = .text:0x8001AFC8; // type:function size:0xB00 -fn_8001BAC8 = .text:0x8001BAC8; // type:function size:0x6D0 -fn_8001C198 = .text:0x8001C198; // type:function size:0xBC -fn_8001C254 = .text:0x8001C254; // type:function size:0x438 -fn_8001C68C = .text:0x8001C68C; // type:function size:0x2A8 -fn_8001C934 = .text:0x8001C934; // type:function size:0x68 -fn_8001C99C = .text:0x8001C99C; // type:function size:0xD08 -fn_8001D6A4 = .text:0x8001D6A4; // type:function size:0x3A8 -fn_8001DA4C = .text:0x8001DA4C; // type:function size:0x2C4 -fn_8001DD10 = .text:0x8001DD10; // type:function size:0x2C8 -fn_8001DFD8 = .text:0x8001DFD8; // type:function size:0x4C -fn_8001E024 = .text:0x8001E024; // type:function size:0xF4 -fn_8001E118 = .text:0x8001E118; // type:function size:0xF0 -fn_8001E208 = .text:0x8001E208; // type:function size:0x70 -fn_8001E278 = .text:0x8001E278; // type:function size:0x1E0 -fn_8001E458 = .text:0x8001E458; // type:function size:0x190 -fn_8001E5E8 = .text:0x8001E5E8; // type:function size:0x90 -fn_8001E678 = .text:0x8001E678; // type:function size:0x318 -fn_8001E990 = .text:0x8001E990; // type:function size:0x80 -fn_8001EA10 = .text:0x8001EA10; // type:function size:0x7B0 -fn_8001F1C0 = .text:0x8001F1C0; // type:function size:0x574 -fn_8001F734 = .text:0x8001F734; // type:function size:0x158 -fn_8001F88C = .text:0x8001F88C; // type:function size:0x90 -fn_8001F91C = .text:0x8001F91C; // type:function size:0x90 -fn_8001F9AC = .text:0x8001F9AC; // type:function size:0x220 -fn_8001FBCC = .text:0x8001FBCC; // type:function size:0xD8 -fn_8001FCA4 = .text:0x8001FCA4; // type:function size:0x688 -fn_8002032C = .text:0x8002032C; // type:function size:0x158 -fn_80020484 = .text:0x80020484; // type:function size:0x18 -fn_8002049C = .text:0x8002049C; // type:function size:0x1C -fn_800204B8 = .text:0x800204B8; // type:function size:0xC -fn_800204C4 = .text:0x800204C4; // type:function size:0xC -fn_800204D0 = .text:0x800204D0; // type:function size:0x330 -fn_80020800 = .text:0x80020800; // type:function size:0x2E8 -fn_80020AE8 = .text:0x80020AE8; // type:function size:0x1C8 -fn_80020CB0 = .text:0x80020CB0; // type:function size:0x34C -fn_80020FFC = .text:0x80020FFC; // type:function size:0xD0 -fn_800210CC = .text:0x800210CC; // type:function size:0x34 -fn_80021100 = .text:0x80021100; // type:function size:0x40 -fn_80021140 = .text:0x80021140; // type:function size:0x34 -fn_80021174 = .text:0x80021174; // type:function size:0x40 -fn_800211B4 = .text:0x800211B4; // type:function size:0x34 -fn_800211E8 = .text:0x800211E8; // type:function size:0x40 -fn_80021228 = .text:0x80021228; // type:function size:0x54 -fn_8002127C = .text:0x8002127C; // type:function size:0x50 -fn_800212CC = .text:0x800212CC; // type:function size:0x2C -fn_800212F8 = .text:0x800212F8; // type:function size:0x2C -fn_80021324 = .text:0x80021324; // type:function size:0x44 -fn_80021368 = .text:0x80021368; // type:function size:0x44 -fn_800213AC = .text:0x800213AC; // type:function size:0x2C -fn_800213D8 = .text:0x800213D8; // type:function size:0x6C -fn_80021444 = .text:0x80021444; // type:function size:0xD8 -fn_8002151C = .text:0x8002151C; // type:function size:0xF8 -fn_80021614 = .text:0x80021614; // type:function size:0x98 -fn_800216AC = .text:0x800216AC; // type:function size:0xB0 -fn_8002175C = .text:0x8002175C; // type:function size:0xA0 -fn_800217FC = .text:0x800217FC; // type:function size:0x34 -fn_80021830 = .text:0x80021830; // type:function size:0x34 -fn_80021864 = .text:0x80021864; // type:function size:0x88 -fn_800218EC = .text:0x800218EC; // type:function size:0xBC -fn_800219A8 = .text:0x800219A8; // type:function size:0x34 -fn_800219DC = .text:0x800219DC; // type:function size:0xEC -fn_80021AC8 = .text:0x80021AC8; // type:function size:0xB4 -fn_80021B7C = .text:0x80021B7C; // type:function size:0xF0 -fn_80021C6C = .text:0x80021C6C; // type:function size:0x44 -fn_80021CB0 = .text:0x80021CB0; // type:function size:0x44 -fn_80021CF4 = .text:0x80021CF4; // type:function size:0xBC -fn_80021DB0 = .text:0x80021DB0; // type:function size:0x30 -fn_80021DE0 = .text:0x80021DE0; // type:function size:0x134 -fn_80021F14 = .text:0x80021F14; // type:function size:0x80 -fn_80021F94 = .text:0x80021F94; // type:function size:0x88 -fn_8002201C = .text:0x8002201C; // type:function size:0x90 -fn_800220AC = .text:0x800220AC; // type:function size:0x98 -fn_80022144 = .text:0x80022144; // type:function size:0xB8 -fn_800221FC = .text:0x800221FC; // type:function size:0x78 -fn_80022274 = .text:0x80022274; // type:function size:0xD0 -fn_80022344 = .text:0x80022344; // type:function size:0xDC -fn_80022420 = .text:0x80022420; // type:function size:0x3C0 -fn_800227E0 = .text:0x800227E0; // type:function size:0x88 -fn_80022868 = .text:0x80022868; // type:function size:0x58 -fn_800228C0 = .text:0x800228C0; // type:function size:0xD4 -fn_80022994 = .text:0x80022994; // type:function size:0x34 -fn_800229C8 = .text:0x800229C8; // type:function size:0x74 -fn_80022A3C = .text:0x80022A3C; // type:function size:0xA0 -fn_80022ADC = .text:0x80022ADC; // type:function size:0x104 -fn_80022BE0 = .text:0x80022BE0; // type:function size:0xA8 -fn_80022C88 = .text:0x80022C88; // type:function size:0x17C -fn_80022E04 = .text:0x80022E04; // type:function size:0x44 -fn_80022E48 = .text:0x80022E48; // type:function size:0x6C -fn_80022EB4 = .text:0x80022EB4; // type:function size:0x48 -fn_80022EFC = .text:0x80022EFC; // type:function size:0x70 -fn_80022F6C = .text:0x80022F6C; // type:function size:0x58 -fn_80022FC4 = .text:0x80022FC4; // type:function size:0x80 -fn_80023044 = .text:0x80023044; // type:function size:0x20 -fn_80023064 = .text:0x80023064; // type:function size:0xBC -fn_80023120 = .text:0x80023120; // type:function size:0x68 -fn_80023188 = .text:0x80023188; // type:function size:0x38 -fn_800231C0 = .text:0x800231C0; // type:function size:0x60 -fn_80023220 = .text:0x80023220; // type:function size:0x70 -fn_80023290 = .text:0x80023290; // type:function size:0x9C -fn_8002332C = .text:0x8002332C; // type:function size:0x90 -fn_800233BC = .text:0x800233BC; // type:function size:0xBC -fn_80023478 = .text:0x80023478; // type:function size:0x80 -fn_800234F8 = .text:0x800234F8; // type:function size:0xAC -fn_800235A4 = .text:0x800235A4; // type:function size:0xC4 -fn_80023668 = .text:0x80023668; // type:function size:0xF0 -fn_80023758 = .text:0x80023758; // type:function size:0x54 -fn_800237AC = .text:0x800237AC; // type:function size:0x7C -fn_80023828 = .text:0x80023828; // type:function size:0x4D0 -fn_80023CF8 = .text:0x80023CF8; // type:function size:0x130 -fn_80023E28 = .text:0x80023E28; // type:function size:0x254 -fn_8002407C = .text:0x8002407C; // type:function size:0x68 -fn_800240E4 = .text:0x800240E4; // type:function size:0x8 -fn_800240EC = .text:0x800240EC; // type:function size:0x60 -fn_8002414C = .text:0x8002414C; // type:function size:0x74 -fn_800241C0 = .text:0x800241C0; // type:function size:0x188 -fn_80024348 = .text:0x80024348; // type:function size:0x64 -fn_800243AC = .text:0x800243AC; // type:function size:0x2C -fn_800243D8 = .text:0x800243D8; // type:function size:0x78 -fn_80024450 = .text:0x80024450; // type:function size:0x860 -fn_80024CB0 = .text:0x80024CB0; // type:function size:0x130 -fn_80024DE0 = .text:0x80024DE0; // type:function size:0x60 -fn_80024E40 = .text:0x80024E40; // type:function size:0x88 -fn_80024EC8 = .text:0x80024EC8; // type:function size:0x38 -fn_80024F00 = .text:0x80024F00; // type:function size:0x1E8 -fn_800250E8 = .text:0x800250E8; // type:function size:0x48 -fn_80025130 = .text:0x80025130; // type:function size:0xA4 -fn_800251D4 = .text:0x800251D4; // type:function size:0xC4 -fn_80025298 = .text:0x80025298; // type:function size:0x114 -fn_800253AC = .text:0x800253AC; // type:function size:0x11C -fn_800254C8 = .text:0x800254C8; // type:function size:0xBC -fn_80025584 = .text:0x80025584; // type:function size:0x54 -fn_800255D8 = .text:0x800255D8; // type:function size:0x20 -fn_800255F8 = .text:0x800255F8; // type:function size:0x1C -fn_80025614 = .text:0x80025614; // type:function size:0x1C -fn_80025630 = .text:0x80025630; // type:function size:0x1C -fn_8002564C = .text:0x8002564C; // type:function size:0x1F4 -fn_80025840 = .text:0x80025840; // type:function size:0xBC -fn_800258FC = .text:0x800258FC; // type:function size:0x1C -fn_80025918 = .text:0x80025918; // type:function size:0x2C -fn_80025944 = .text:0x80025944; // type:function size:0x1C -fn_80025960 = .text:0x80025960; // type:function size:0x44 -fn_800259A4 = .text:0x800259A4; // type:function size:0x30 -fn_800259D4 = .text:0x800259D4; // type:function size:0x114 -fn_80025AE8 = .text:0x80025AE8; // type:function size:0xD0 -fn_80025BB8 = .text:0x80025BB8; // type:function size:0x20 -fn_80025BD8 = .text:0x80025BD8; // type:function size:0xC8 -fn_80025CA0 = .text:0x80025CA0; // type:function size:0x2C -fn_80025CCC = .text:0x80025CCC; // type:function size:0x2C -fn_80025CF8 = .text:0x80025CF8; // type:function size:0xF4 -fn_80025DEC = .text:0x80025DEC; // type:function size:0x2C -fn_80025E18 = .text:0x80025E18; // type:function size:0x2C -fn_80025E44 = .text:0x80025E44; // type:function size:0xA8 -fn_80025EEC = .text:0x80025EEC; // type:function size:0xA8 -fn_80025F94 = .text:0x80025F94; // type:function size:0x30 -fn_80025FC4 = .text:0x80025FC4; // type:function size:0x8C -fn_80026050 = .text:0x80026050; // type:function size:0x30 -fn_80026080 = .text:0x80026080; // type:function size:0x170 -fn_800261F0 = .text:0x800261F0; // type:function size:0x2C -fn_8002621C = .text:0x8002621C; // type:function size:0x2C -fn_80026248 = .text:0x80026248; // type:function size:0x114 -fn_8002635C = .text:0x8002635C; // type:function size:0x5C -fn_800263B8 = .text:0x800263B8; // type:function size:0x108 -fn_800264C0 = .text:0x800264C0; // type:function size:0x798 -fn_80026C58 = .text:0x80026C58; // type:function size:0x534 -fn_8002718C = .text:0x8002718C; // type:function size:0xC0 -fn_8002724C = .text:0x8002724C; // type:function size:0x2A8 -fn_800274F4 = .text:0x800274F4; // type:function size:0x14C -fn_80027640 = .text:0x80027640; // type:function size:0x208 -fn_80027848 = .text:0x80027848; // type:function size:0x218 -fn_80027A60 = .text:0x80027A60; // type:function size:0x558 -fn_80027FB8 = .text:0x80027FB8; // type:function size:0x1D8 -fn_80028190 = .text:0x80028190; // type:function size:0xD8 -fn_80028268 = .text:0x80028268; // type:function size:0x70 -fn_800282D8 = .text:0x800282D8; // type:function size:0x110 -fn_800283E8 = .text:0x800283E8; // type:function size:0x200 -fn_800285E8 = .text:0x800285E8; // type:function size:0x64 -fn_8002864C = .text:0x8002864C; // type:function size:0xCC -fn_80028718 = .text:0x80028718; // type:function size:0x124 -fn_8002883C = .text:0x8002883C; // type:function size:0x19C -fn_800289D8 = .text:0x800289D8; // type:function size:0x90 -fn_80028A68 = .text:0x80028A68; // type:function size:0x9C -fn_80028B04 = .text:0x80028B04; // type:function size:0x7C -fn_80028B80 = .text:0x80028B80; // type:function size:0x1D0 -fn_80028D50 = .text:0x80028D50; // type:function size:0x1C4 -fn_80028F14 = .text:0x80028F14; // type:function size:0x104 -fn_80029018 = .text:0x80029018; // type:function size:0x13C -fn_80029154 = .text:0x80029154; // type:function size:0x134 -fn_80029288 = .text:0x80029288; // type:function size:0x34 -fn_800292BC = .text:0x800292BC; // type:function size:0x38 -fn_800292F4 = .text:0x800292F4; // type:function size:0x2C -fn_80029320 = .text:0x80029320; // type:function size:0x48 -fn_80029368 = .text:0x80029368; // type:function size:0x38 -fn_800293A0 = .text:0x800293A0; // type:function size:0x240 -fn_800295E0 = .text:0x800295E0; // type:function size:0x474 -fn_80029A54 = .text:0x80029A54; // type:function size:0x1AC -fn_80029C00 = .text:0x80029C00; // type:function size:0xE0 -fn_80029CE0 = .text:0x80029CE0; // type:function size:0x10C -fn_80029DEC = .text:0x80029DEC; // type:function size:0x44 -fn_80029E30 = .text:0x80029E30; // type:function size:0xA4 -fn_80029ED4 = .text:0x80029ED4; // type:function size:0x3C -fn_80029F10 = .text:0x80029F10; // type:function size:0x5C -fn_80029F6C = .text:0x80029F6C; // type:function size:0x54 -fn_80029FC0 = .text:0x80029FC0; // type:function size:0x348 -fn_8002A308 = .text:0x8002A308; // type:function size:0x6C -fn_8002A374 = .text:0x8002A374; // type:function size:0x6C -fn_8002A3E0 = .text:0x8002A3E0; // type:function size:0x74 -fn_8002A454 = .text:0x8002A454; // type:function size:0x80 -fn_8002A4D4 = .text:0x8002A4D4; // type:function size:0x38 -fn_8002A50C = .text:0x8002A50C; // type:function size:0x38 -fn_8002A544 = .text:0x8002A544; // type:function size:0x40 -fn_8002A584 = .text:0x8002A584; // type:function size:0x44 -fn_8002A5C8 = .text:0x8002A5C8; // type:function size:0x3C -fn_8002A604 = .text:0x8002A604; // type:function size:0x60 -fn_8002A664 = .text:0x8002A664; // type:function size:0xAD4 -fn_8002B138 = .text:0x8002B138; // type:function size:0x48 -fn_8002B180 = .text:0x8002B180; // type:function size:0x1D4 -fn_8002B354 = .text:0x8002B354; // type:function size:0x17C -fn_8002B4D0 = .text:0x8002B4D0; // type:function size:0x190 -fn_8002B660 = .text:0x8002B660; // type:function size:0x1C4 -fn_8002B824 = .text:0x8002B824; // type:function size:0x20 -fn_8002B844 = .text:0x8002B844; // type:function size:0x3C -fn_8002B880 = .text:0x8002B880; // type:function size:0x3C -fn_8002B8BC = .text:0x8002B8BC; // type:function size:0x7C -fn_8002B938 = .text:0x8002B938; // type:function size:0x40 -fn_8002B978 = .text:0x8002B978; // type:function size:0x40 -fn_8002B9B8 = .text:0x8002B9B8; // type:function size:0x34 -fn_8002B9EC = .text:0x8002B9EC; // type:function size:0x38 -fn_8002BA24 = .text:0x8002BA24; // type:function size:0x74 -fn_8002BA98 = .text:0x8002BA98; // type:function size:0x68 -fn_8002BB00 = .text:0x8002BB00; // type:function size:0xBC0 -fn_8002C6C0 = .text:0x8002C6C0; // type:function size:0x4B4 -fn_8002CB74 = .text:0x8002CB74; // type:function size:0xAC -fn_8002CC20 = .text:0x8002CC20; // type:function size:0xA14 -fn_8002D634 = .text:0x8002D634; // type:function size:0x244 -fn_8002D878 = .text:0x8002D878; // type:function size:0x40C -fn_8002DC84 = .text:0x8002DC84; // type:function size:0x1D4 -fn_8002DE58 = .text:0x8002DE58; // type:function size:0x1D0 -fn_8002E028 = .text:0x8002E028; // type:function size:0x1C -fn_8002E044 = .text:0x8002E044; // type:function size:0x540 -fn_8002E584 = .text:0x8002E584; // type:function size:0x1C8 -fn_8002E74C = .text:0x8002E74C; // type:function size:0x94 -fn_8002E7E0 = .text:0x8002E7E0; // type:function size:0x130 -fn_8002E910 = .text:0x8002E910; // type:function size:0x40 -fn_8002E950 = .text:0x8002E950; // type:function size:0x7C -fn_8002E9CC = .text:0x8002E9CC; // type:function size:0xA0 -fn_8002EA6C = .text:0x8002EA6C; // type:function size:0x16C -fn_8002EBD8 = .text:0x8002EBD8; // type:function size:0x90 -fn_8002EC68 = .text:0x8002EC68; // type:function size:0x170 -fn_8002EDD8 = .text:0x8002EDD8; // type:function size:0xE8 -fn_8002EEC0 = .text:0x8002EEC0; // type:function size:0x60 -fn_8002EF20 = .text:0x8002EF20; // type:function size:0xF4 -fn_8002F014 = .text:0x8002F014; // type:function size:0xB8 -fn_8002F0CC = .text:0x8002F0CC; // type:function size:0xA0 -fn_8002F16C = .text:0x8002F16C; // type:function size:0x78 -fn_8002F1E4 = .text:0x8002F1E4; // type:function size:0x220 -fn_8002F404 = .text:0x8002F404; // type:function size:0x50 -fn_8002F454 = .text:0x8002F454; // type:function size:0x1DC -fn_8002F630 = .text:0x8002F630; // type:function size:0xF8 -fn_8002F728 = .text:0x8002F728; // type:function size:0x84 -fn_8002F7AC = .text:0x8002F7AC; // type:function size:0x190 -fn_8002F93C = .text:0x8002F93C; // type:function size:0x88 -fn_8002F9C4 = .text:0x8002F9C4; // type:function size:0xFC -fn_8002FAC0 = .text:0x8002FAC0; // type:function size:0x2C -fn_8002FAEC = .text:0x8002FAEC; // type:function size:0x10 -fn_8002FAFC = .text:0x8002FAFC; // type:function size:0x14 -fn_8002FB10 = .text:0x8002FB10; // type:function size:0x10 -fn_8002FB20 = .text:0x8002FB20; // type:function size:0x10 -fn_8002FB30 = .text:0x8002FB30; // type:function size:0x10 -fn_8002FB40 = .text:0x8002FB40; // type:function size:0x2F8 -fn_8002FE38 = .text:0x8002FE38; // type:function size:0xE0 -fn_8002FF18 = .text:0x8002FF18; // type:function size:0x2C -fn_8002FF44 = .text:0x8002FF44; // type:function size:0x8 -fn_8002FF4C = .text:0x8002FF4C; // type:function size:0x150 -fn_8003009C = .text:0x8003009C; // type:function size:0x118 -fn_800301B4 = .text:0x800301B4; // type:function size:0x34 -fn_800301E8 = .text:0x800301E8; // type:function size:0x98 -fn_80030280 = .text:0x80030280; // type:function size:0x50 -fn_800302D0 = .text:0x800302D0; // type:function size:0xF4 -fn_800303C4 = .text:0x800303C4; // type:function size:0x150 -fn_80030514 = .text:0x80030514; // type:function size:0x1F0 -fn_80030704 = .text:0x80030704; // type:function size:0x1B4 -fn_800308B8 = .text:0x800308B8; // type:function size:0x14C -fn_80030A04 = .text:0x80030A04; // type:function size:0x318 -fn_80030D1C = .text:0x80030D1C; // type:function size:0x4C -fn_80030D68 = .text:0x80030D68; // type:function size:0x54 -fn_80030DBC = .text:0x80030DBC; // type:function size:0x18 -fn_80030DD4 = .text:0x80030DD4; // type:function size:0x140 -fn_80030F14 = .text:0x80030F14; // type:function size:0x24 -fn_80030F38 = .text:0x80030F38; // type:function size:0x38 -fn_80030F70 = .text:0x80030F70; // type:function size:0x14 -fn_80030F84 = .text:0x80030F84; // type:function size:0x1C -fn_80030FA0 = .text:0x80030FA0; // type:function size:0x18 -fn_80030FB8 = .text:0x80030FB8; // type:function size:0x1C -fn_80030FD4 = .text:0x80030FD4; // type:function size:0x18 -fn_80030FEC = .text:0x80030FEC; // type:function size:0x5C -fn_80031048 = .text:0x80031048; // type:function size:0x1C -fn_80031064 = .text:0x80031064; // type:function size:0x20 -fn_80031084 = .text:0x80031084; // type:function size:0x6C -fn_800310F0 = .text:0x800310F0; // type:function size:0x5C -fn_8003114C = .text:0x8003114C; // type:function size:0x6C -fn_800311B8 = .text:0x800311B8; // type:function size:0x5C -fn_80031214 = .text:0x80031214; // type:function size:0x60 -fn_80031274 = .text:0x80031274; // type:function size:0x18 -fn_8003128C = .text:0x8003128C; // type:function size:0xB0 -fn_8003133C = .text:0x8003133C; // type:function size:0xD0 -fn_8003140C = .text:0x8003140C; // type:function size:0x6C -fn_80031478 = .text:0x80031478; // type:function size:0x94 -fn_8003150C = .text:0x8003150C; // type:function size:0x18 -fn_80031524 = .text:0x80031524; // type:function size:0x34 -fn_80031558 = .text:0x80031558; // type:function size:0x54 -fn_800315AC = .text:0x800315AC; // type:function size:0x10 -fn_800315BC = .text:0x800315BC; // type:function size:0x238 -fn_800317F4 = .text:0x800317F4; // type:function size:0x2C4 -fn_80031AB8 = .text:0x80031AB8; // type:function size:0x74 -fn_80031B2C = .text:0x80031B2C; // type:function size:0x230 -fn_80031D5C = .text:0x80031D5C; // type:function size:0x8 -fn_80031D64 = .text:0x80031D64; // type:function size:0x50 -fn_80031DB4 = .text:0x80031DB4; // type:function size:0x2C -fn_80031DE0 = .text:0x80031DE0; // type:function size:0x6C -fn_80031E4C = .text:0x80031E4C; // type:function size:0x154 -fn_80031FA0 = .text:0x80031FA0; // type:function size:0xB4 -fn_80032054 = .text:0x80032054; // type:function size:0x13C -fn_80032190 = .text:0x80032190; // type:function size:0x138 -fn_800322C8 = .text:0x800322C8; // type:function size:0xB4 -fn_8003237C = .text:0x8003237C; // type:function size:0xC8 -fn_80032444 = .text:0x80032444; // type:function size:0xD0 -fn_80032514 = .text:0x80032514; // type:function size:0xE0 -fn_800325F4 = .text:0x800325F4; // type:function size:0xAC -fn_800326A0 = .text:0x800326A0; // type:function size:0xD8 -fn_80032778 = .text:0x80032778; // type:function size:0xB8 -fn_80032830 = .text:0x80032830; // type:function size:0x170 -fn_800329A0 = .text:0x800329A0; // type:function size:0x8 -fn_800329A8 = .text:0x800329A8; // type:function size:0x3C -fn_800329E4 = .text:0x800329E4; // type:function size:0x24 -fn_80032A08 = .text:0x80032A08; // type:function size:0x24 -fn_80032A2C = .text:0x80032A2C; // type:function size:0x4 -fn_80032A30 = .text:0x80032A30; // type:function size:0x28 -fn_80032A58 = .text:0x80032A58; // type:function size:0x3C -fn_80032A94 = .text:0x80032A94; // type:function size:0x80 -fn_80032B14 = .text:0x80032B14; // type:function size:0x48 -fn_80032B5C = .text:0x80032B5C; // type:function size:0x68 -fn_80032BC4 = .text:0x80032BC4; // type:function size:0x2C -fn_80032BF0 = .text:0x80032BF0; // type:function size:0x28 -fn_80032C18 = .text:0x80032C18; // type:function size:0x30 -fn_80032C48 = .text:0x80032C48; // type:function size:0x50 -fn_80032C98 = .text:0x80032C98; // type:function size:0xA4 -fn_80032D3C = .text:0x80032D3C; // type:function size:0x134 -fn_80032E70 = .text:0x80032E70; // type:function size:0x3C -fn_80032EAC = .text:0x80032EAC; // type:function size:0x6C -fn_80032F18 = .text:0x80032F18; // type:function size:0x64 -fn_80032F7C = .text:0x80032F7C; // type:function size:0x20 -fn_80032F9C = .text:0x80032F9C; // type:function size:0x2C -fn_80032FC8 = .text:0x80032FC8; // type:function size:0x28 -fn_80032FF0 = .text:0x80032FF0; // type:function size:0x54 -fn_80033044 = .text:0x80033044; // type:function size:0x58 -fn_8003309C = .text:0x8003309C; // type:function size:0x5C -fn_800330F8 = .text:0x800330F8; // type:function size:0x48 -fn_80033140 = .text:0x80033140; // type:function size:0x3C -fn_8003317C = .text:0x8003317C; // type:function size:0x5C -fn_800331D8 = .text:0x800331D8; // type:function size:0x28 -fn_80033200 = .text:0x80033200; // type:function size:0x2C -fn_8003322C = .text:0x8003322C; // type:function size:0x54 -fn_80033280 = .text:0x80033280; // type:function size:0x60 -fn_800332E0 = .text:0x800332E0; // type:function size:0x64 -fn_80033344 = .text:0x80033344; // type:function size:0x38 -fn_8003337C = .text:0x8003337C; // type:function size:0x3C -fn_800333B8 = .text:0x800333B8; // type:function size:0x28 -fn_800333E0 = .text:0x800333E0; // type:function size:0x24 -fn_80033404 = .text:0x80033404; // type:function size:0x28 -fn_8003342C = .text:0x8003342C; // type:function size:0x104 -fn_80033530 = .text:0x80033530; // type:function size:0x1A4 -fn_800336D4 = .text:0x800336D4; // type:function size:0x60 -fn_80033734 = .text:0x80033734; // type:function size:0x154 -fn_80033888 = .text:0x80033888; // type:function size:0x58 -fn_800338E0 = .text:0x800338E0; // type:function size:0xC -fn_800338EC = .text:0x800338EC; // type:function size:0x294 -fn_80033B80 = .text:0x80033B80; // type:function size:0x50 -fn_80033BD0 = .text:0x80033BD0; // type:function size:0x58 -fn_80033C28 = .text:0x80033C28; // type:function size:0x50 -fn_80033C78 = .text:0x80033C78; // type:function size:0xAC -fn_80033D24 = .text:0x80033D24; // type:function size:0xD0 -fn_80033DF4 = .text:0x80033DF4; // type:function size:0x90 -fn_80033E84 = .text:0x80033E84; // type:function size:0x68 -fn_80033EEC = .text:0x80033EEC; // type:function size:0x1A4 -fn_80034090 = .text:0x80034090; // type:function size:0x23C -fn_800342CC = .text:0x800342CC; // type:function size:0x80 -fn_8003434C = .text:0x8003434C; // type:function size:0x50 -fn_8003439C = .text:0x8003439C; // type:function size:0x158 -fn_800344F4 = .text:0x800344F4; // type:function size:0x9F0 -fn_80034EE4 = .text:0x80034EE4; // type:function size:0x334 -fn_80035218 = .text:0x80035218; // type:function size:0x11C -fn_80035334 = .text:0x80035334; // type:function size:0x78 -fn_800353AC = .text:0x800353AC; // type:function size:0xBC -fn_80035468 = .text:0x80035468; // type:function size:0x188 -fn_800355F0 = .text:0x800355F0; // type:function size:0x1A4 -fn_80035794 = .text:0x80035794; // type:function size:0x100 -fn_80035894 = .text:0x80035894; // type:function size:0x88 -fn_8003591C = .text:0x8003591C; // type:function size:0x4C -fn_80035968 = .text:0x80035968; // type:function size:0x4C -fn_800359B4 = .text:0x800359B4; // type:function size:0x58 -fn_80035A0C = .text:0x80035A0C; // type:function size:0x3C -fn_80035A48 = .text:0x80035A48; // type:function size:0xA4 -fn_80035AEC = .text:0x80035AEC; // type:function size:0x4 -fn_80035AF0 = .text:0x80035AF0; // type:function size:0x8C -fn_80035B7C = .text:0x80035B7C; // type:function size:0x2E0 -fn_80035E5C = .text:0x80035E5C; // type:function size:0x69C -fn_800364F8 = .text:0x800364F8; // type:function size:0x3D8 -fn_800368D0 = .text:0x800368D0; // type:function size:0x2F8 +HuSysVWaitSet = .text:0x800059EC; // type:function size:0x38 +HuSysVWaitGet = .text:0x80005A24; // type:function size:0xC +rand8 = .text:0x80005A30; // type:function size:0x2C +HuPadInit = .text:0x80005A5C; // type:function size:0xF0 +HuPadRead = .text:0x80005B4C; // type:function size:0x168 +PadReadVSync = .text:0x80005CB4; // type:function size:0x440 scope:local +PadADConv = .text:0x800060F4; // type:function size:0x234 scope:local +HuPadRumbleSet = .text:0x80006328; // type:function size:0x54 +HuPadRumbleStop = .text:0x8000637C; // type:function size:0x70 +HuPadRumbleAllStop = .text:0x800063EC; // type:function size:0x70 +HuPadStatGet = .text:0x8000645C; // type:function size:0x14 +HuPadRumbleGet = .text:0x80006470; // type:function size:0x8 +HuDVDReadAsyncCallBack = .text:0x80006478; // type:function size:0xC scope:local +HuDvdDataRead = .text:0x80006484; // type:function size:0x16C +HuDvdDataReadMulti = .text:0x800065F0; // type:function size:0x1B4 +HuDvdDataReadDirect = .text:0x800067A4; // type:function size:0x170 +HuDvdDataFastRead = .text:0x80006914; // type:function size:0x16C +HuDvdDataFastReadNum = .text:0x80006A80; // type:function size:0x174 +HuDvdDataFastReadAsync = .text:0x80006BF4; // type:function size:0x150 +HuDvdDataClose = .text:0x80006D44; // type:function size:0x38 +HuDvdErrorWatch = .text:0x80006D7C; // type:function size:0xBC +HuDataInit = .text:0x80006E38; // type:function size:0xD0 +HuDataReadChk = .text:0x80006F08; // type:function size:0x74 +HuDataGetStatus = .text:0x80006F7C; // type:function size:0x64 +HuDataGetDirPtr = .text:0x80006FE0; // type:function size:0xB8 +HuDataDirRead = .text:0x80007098; // type:function size:0x224 +HuDataDirSet = .text:0x800072BC; // type:function size:0x188 +HuDataDirReadAsyncCallBack = .text:0x80007444; // type:function size:0xC8 +HuDataDirReadAsync = .text:0x8000750C; // type:function size:0x1A8 +HuDataDirReadNumAsync = .text:0x800076B4; // type:function size:0x1A8 +HuDataGetAsyncStat = .text:0x8000785C; // type:function size:0x60 +HuDataRead = .text:0x800078BC; // type:function size:0x344 +HuDataReadNum = .text:0x80007C00; // type:function size:0x3A0 +HuDataSelHeapRead = .text:0x80007FA0; // type:function size:0x3C4 +HuDataSelHeapReadNum = .text:0x80008364; // type:function size:0x428 +HuDataReadMulti = .text:0x8000878C; // type:function size:0x30 +HuDataReadMultiSub = .text:0x800087BC; // type:function size:0x3FC +HuDataGetSize = .text:0x80008BB8; // type:function size:0x104 +HuDataClose = .text:0x80008CBC; // type:function size:0x38 +HuDataCloseMulti = .text:0x80008CF4; // type:function size:0x7C +HuDataDirClose = .text:0x80008D70; // type:function size:0xD4 +HuDataDirCloseNum = .text:0x80008E44; // type:function size:0x130 +HuDataReadNumHeapShortForce = .text:0x80008F74; // type:function size:0x48C +HuDecodeSlide = .text:0x80009400; // type:function size:0x200 scope:local +HuDecodeFslide = .text:0x80009600; // type:function size:0x1D8 scope:local +HuDecodeData = .text:0x800097D8; // type:function size:0x324 +HuSysInit = .text:0x80009AFC; // type:function size:0x138 +InitRenderMode = .text:0x80009C34; // type:function size:0xD0 scope:local +InitGX = .text:0x80009D04; // type:function size:0x164 scope:local +InitMem = .text:0x80009E68; // type:function size:0x13C scope:local +InitVI = .text:0x80009FA4; // type:function size:0x54 scope:local +HuSysBeforeRender = .text:0x80009FF8; // type:function size:0xE4 +HuSysDoneRender = .text:0x8000A0DC; // type:function size:0xC8 +SwapBuffers = .text:0x8000A1A4; // type:function size:0x6C scope:local +LoadMemInfo = .text:0x8000A210; // type:function size:0x254 scope:local +gcsetjmp = .text:0x8000A464; // type:function size:0x74 +gclongjmp = .text:0x8000A4D8; // type:function size:0x80 +HuMemInitAll = .text:0x8000A558; // type:function size:0x12C +HuMemInit = .text:0x8000A684; // type:function size:0x30 +HuMemDCFlushAll = .text:0x8000A6B4; // type:function size:0x2C +HuMemDCFlush = .text:0x8000A6E0; // type:function size:0x54 +HuMemDirectMalloc = .text:0x8000A734; // type:function size:0x64 +HuMemDirectMallocNum = .text:0x8000A798; // type:function size:0x6C +HuMemDirectFree = .text:0x8000A804; // type:function size:0x38 +HuMemDirectFreeNum = .text:0x8000A83C; // type:function size:0x54 +HuMemUsedMallocSizeGet = .text:0x8000A890; // type:function size:0x3C +HuMemUsedMallocBlockGet = .text:0x8000A8CC; // type:function size:0x3C +HuMemHeapSizeGet = .text:0x8000A908; // type:function size:0x18 +HuMemHeapPtrGet = .text:0x8000A920; // type:function size:0x18 +HuMemHeapInit = .text:0x8000A938; // type:function size:0x4C +HuMemMemoryAllocNum = .text:0x8000A984; // type:function size:0x40 +HuMemMemoryAlloc = .text:0x8000A9C4; // type:function size:0x3C +HuMemMemoryAlloc2 = .text:0x8000AA00; // type:function size:0x108 scope:local +HuMemMemoryFreeNum = .text:0x8000AB08; // type:function size:0x7C +HuMemMemoryFree = .text:0x8000AB84; // type:function size:0x12C +HuMemUsedMemorySizeGet = .text:0x8000ACB0; // type:function size:0x48 +HuMemUsedMemoryBlockGet = .text:0x8000ACF8; // type:function size:0x44 +HuMemMemoryAllocSizeGet = .text:0x8000AD3C; // type:function size:0xC +HuMemHeapDump = .text:0x8000AD48; // type:function size:0x158 +HuMemMemorySizeGet = .text:0x8000AEA0; // type:function size:0x50 +pfInit = .text:0x8000AEF0; // type:function size:0x64 +pfClsScr = .text:0x8000AF54; // type:function size:0xA0 +print8 = .text:0x8000AFF4; // type:function size:0x15C +printWin = .text:0x8000B150; // type:function size:0xAC +pfDrawFonts = .text:0x8000B1FC; // type:function size:0xEE8 +WireDraw = .text:0x8000C0E4; // type:function size:0x3C0 scope:local +HuPrcInit = .text:0x8000C4A4; // type:function size:0x14 +HuPrcCreate = .text:0x8000C4B8; // type:function size:0x1E8 +HuPrcChildLink = .text:0x8000C6A0; // type:function size:0x68 +HuPrcChildUnlink = .text:0x8000C708; // type:function size:0x58 +HuPrcChildCreate = .text:0x8000C760; // type:function size:0x27C +HuPrcChildWatch = .text:0x8000C9DC; // type:function size:0x60 +HuPrcCurrentGet = .text:0x8000CA3C; // type:function size:0x8 +SetKillStatusProcess = .text:0x8000CA44; // type:function size:0x50 scope:local +HuPrcKill = .text:0x8000CA94; // type:function size:0xD4 +HuPrcChildKill = .text:0x8000CB68; // type:function size:0x2A4 +HuPrcEnd = .text:0x8000CE0C; // type:function size:0x100 +HuPrcSleep = .text:0x8000CF0C; // type:function size:0x80 +HuPrcVSleep = .text:0x8000CF8C; // type:function size:0x54 +HuPrcWakeup = .text:0x8000CFE0; // type:function size:0xC +HuPrcDestructorSet2 = .text:0x8000CFEC; // type:function size:0x8 +HuPrcDestructorSet = .text:0x8000CFF4; // type:function size:0x28 +HuPrcCall = .text:0x8000D01C; // type:function size:0x184 +HuPrcMemAlloc = .text:0x8000D1A0; // type:function size:0x4C +HuPrcMemFree = .text:0x8000D1EC; // type:function size:0x30 +HuPrcSetStat = .text:0x8000D21C; // type:function size:0x10 +HuPrcResetStat = .text:0x8000D22C; // type:function size:0x14 +HuPrcAllPause = .text:0x8000D240; // type:function size:0x84 +HuPrcAllUPause = .text:0x8000D2C4; // type:function size:0x84 +HuSprInit = .text:0x8000D348; // type:function size:0xA0 +HuSprClose = .text:0x8000D3E8; // type:function size:0xB0 +HuSprExec = .text:0x8000D498; // type:function size:0x64 +HuSprBegin = .text:0x8000D4FC; // type:function size:0x188 +HuSprOrderEntry = .text:0x8000D684; // type:function size:0x14C +HuSprCall = .text:0x8000D7D0; // type:function size:0xF4 +HuSprFinish = .text:0x8000D8C4; // type:function size:0x458 +HuSprPauseSet = .text:0x8000DD1C; // type:function size:0x8 +HuSprAnimRead = .text:0x8000DD24; // type:function size:0x114 +HuSprAnimLock = .text:0x8000DE38; // type:function size:0x10 +HuSprCreate = .text:0x8000DE48; // type:function size:0x128 +HuSprFuncCreate = .text:0x8000DF70; // type:function size:0x188 +HuSprGrpCreate = .text:0x8000E0F8; // type:function size:0xF4 +HuSprGrpCopy = .text:0x8000E1EC; // type:function size:0x334 +HuSprGrpMemberSet = .text:0x8000E520; // type:function size:0x8C +HuSprGrpMemberKill = .text:0x8000E5AC; // type:function size:0xAC +HuSprGrpKill = .text:0x8000E658; // type:function size:0x9C +HuSprKill = .text:0x8000E6F4; // type:function size:0x84 +HuSprAnimKill = .text:0x8000E778; // type:function size:0x90 +HuSprAttrSet = .text:0x8000E808; // type:function size:0xAC +HuSprAttrReset = .text:0x8000E8B4; // type:function size:0xAC +HuSprPosSet = .text:0x8000E960; // type:function size:0x60 +HuSprZRotSet = .text:0x8000E9C0; // type:function size:0x5C +HuSprScaleSet = .text:0x8000EA1C; // type:function size:0x60 +HuSprTPLvlSet = .text:0x8000EA7C; // type:function size:0x64 +HuSprColorSet = .text:0x8000EAE0; // type:function size:0x64 +HuSprSpeedSet = .text:0x8000EB44; // type:function size:0x4C +HuSprBankSet = .text:0x8000EB90; // type:function size:0xF0 +HuSprGrpPosSet = .text:0x8000EC80; // type:function size:0x9C +HuSprGrpCenterSet = .text:0x8000ED1C; // type:function size:0x9C +HuSprGrpZRotSet = .text:0x8000EDB8; // type:function size:0x98 +HuSprGrpScaleSet = .text:0x8000EE50; // type:function size:0x9C +HuSprGrpTPLvlSet = .text:0x8000EEEC; // type:function size:0xC0 +HuSprGrpDrawNoSet = .text:0x8000EFAC; // type:function size:0x8C +HuSprDrawNoSet = .text:0x8000F038; // type:function size:0x50 +HuSprPriSet = .text:0x8000F088; // type:function size:0x4C +HuSprGrpScissorSet = .text:0x8000F0D4; // type:function size:0xAC +HuSprScissorSet = .text:0x8000F180; // type:function size:0x58 +HuSprAnimMake = .text:0x8000F1D8; // type:function size:0x1FC +HuSprBGSet = .text:0x8000F3D4; // type:function size:0x68 +HuSprSprBGSet = .text:0x8000F43C; // type:function size:0x50 +AnimDebug = .text:0x8000F48C; // type:function size:0x214 +HuSprDispInit = .text:0x8000F6A0; // type:function size:0x158 +HuSprDisp = .text:0x8000F7F8; // type:function size:0xECC +HuSprTexLoad = .text:0x800106C4; // type:function size:0x29C +HuSprExecLayerSet = .text:0x80010960; // type:function size:0x58 +HuSprLayerHook = .text:0x800109B8; // type:function size:0x178 scope:local +LoadHSF = .text:0x80010B30; // type:function size:0xB0 +ClusterAdjustObject = .text:0x80010BE0; // type:function size:0xA0 +FileLoad = .text:0x80010C80; // type:function size:0xC8 scope:local +SetHsfModel = .text:0x80010D48; // type:function size:0x284 scope:local +SetName = .text:0x80010FCC; // type:function size:0x38 +MaterialLoad = .text:0x80011004; // type:function size:0x210 scope:local +AttributeLoad = .text:0x80011214; // type:function size:0xF8 scope:local +SceneLoad = .text:0x8001130C; // type:function size:0x80 scope:local +ColorLoad = .text:0x8001138C; // type:function size:0x130 scope:local +VertexLoad = .text:0x800114BC; // type:function size:0x1C0 scope:local +NormalLoad = .text:0x8001167C; // type:function size:0x128 scope:local +STLoad = .text:0x800117A4; // type:function size:0x1A8 scope:local +FaceLoad = .text:0x8001194C; // type:function size:0x190 scope:local +DispObject = .text:0x80011ADC; // type:function size:0x7A8 scope:local +ObjectLoad = .text:0x80012284; // type:function size:0x15C scope:local +CenvLoad = .text:0x800123E0; // type:function size:0x464 scope:local +SkeletonLoad = .text:0x80012844; // type:function size:0x198 scope:local +PartLoad = .text:0x800129DC; // type:function size:0x12C scope:local +ClusterLoad = .text:0x80012B08; // type:function size:0x1E8 scope:local +ShapeLoad = .text:0x80012CF0; // type:function size:0x168 scope:local +MapAttrLoad = .text:0x80012E58; // type:function size:0xD0 scope:local +BitmapLoad = .text:0x80012F28; // type:function size:0x174 scope:local +PaletteLoad = .text:0x8001309C; // type:function size:0x16C scope:local +MakeObjectName = .text:0x80013208; // type:function size:0xE8 +CmpObjectName = .text:0x800132F0; // type:function size:0x38 +MotionLoad = .text:0x80013328; // type:function size:0x938 scope:local +MatrixLoad = .text:0x80013C60; // type:function size:0x80 scope:local +SearchObjectSetName = .text:0x80013CE0; // type:function size:0x94 scope:local +SearchVertexPtr = .text:0x80013D74; // type:function size:0x44 scope:local +SearchNormalPtr = .text:0x80013DB8; // type:function size:0x44 scope:local +SearchStPtr = .text:0x80013DFC; // type:function size:0x44 scope:local +SearchColorPtr = .text:0x80013E40; // type:function size:0x44 scope:local +SearchFacePtr = .text:0x80013E84; // type:function size:0x44 scope:local +SearchCenvPtr = .text:0x80013EC8; // type:function size:0x44 scope:local +SearchPartPtr = .text:0x80013F0C; // type:function size:0x44 scope:local +SearchPalettePtr = .text:0x80013F50; // type:function size:0x3C scope:local +SearchBitmapPtr = .text:0x80013F8C; // type:function size:0x44 scope:local +GetString = .text:0x80013FD0; // type:function size:0x24 scope:local +GetMotionString = .text:0x80013FF4; // type:function size:0x24 scope:local +Hu3DDrawPreInit = .text:0x80014018; // type:function size:0xC +Hu3DDraw = .text:0x80014024; // type:function size:0x1A0 +objCall = .text:0x800141C4; // type:function size:0xEC scope:local +objMesh = .text:0x800142B0; // type:function size:0x86C scope:local +ObjCullCheck = .text:0x80014B1C; // type:function size:0x4C0 +FaceDraw = .text:0x80014FDC; // type:function size:0x10DC scope:local +SetTevStageNoTex = .text:0x800160B8; // type:function size:0x8E8 scope:local +SetTevStageTex = .text:0x800169A0; // type:function size:0x2588 scope:local +SetKColor = .text:0x80018F28; // type:function size:0x164 scope:local +SetKColorRGB = .text:0x8001908C; // type:function size:0x180 scope:local +FlushKColor = .text:0x8001920C; // type:function size:0xB0 scope:local +SetReflect = .text:0x800192BC; // type:function size:0x280 scope:local +SetProjection = .text:0x8001953C; // type:function size:0x29C scope:local +SetShadowTex = .text:0x800197D8; // type:function size:0x8C scope:local +SetShadow = .text:0x80019864; // type:function size:0xCC scope:local +FaceDrawShadow = .text:0x80019930; // type:function size:0x5E4 scope:local +LoadTexture = .text:0x80019F14; // type:function size:0x75C scope:local +objNull = .text:0x8001A670; // type:function size:0x248 scope:local +objRoot = .text:0x8001A8B8; // type:function size:0x198 scope:local +objJoint = .text:0x8001AA50; // type:function size:0x248 scope:local +objMap = .text:0x8001AC98; // type:function size:0x17C scope:local +objReplica = .text:0x8001AE14; // type:function size:0x1B4 scope:local +Hu3DDrawPost = .text:0x8001AFC8; // type:function size:0xB00 +ObjDraw = .text:0x8001BAC8; // type:function size:0x6D0 scope:local +MakeDisplayList = .text:0x8001C198; // type:function size:0xBC +MDObjCall = .text:0x8001C254; // type:function size:0x438 scope:local +MDObjMesh = .text:0x8001C68C; // type:function size:0x2A8 scope:local +ObjConstantMake = .text:0x8001C934; // type:function size:0x68 +MDFaceDraw = .text:0x8001C99C; // type:function size:0xD08 scope:local +MakeCalcNBT = .text:0x8001D6A4; // type:function size:0x3A8 scope:local +MakeNBT = .text:0x8001DA4C; // type:function size:0x2C4 scope:local +MDFaceCnt = .text:0x8001DD10; // type:function size:0x2C8 scope:local +mtxTransCat = .text:0x8001DFD8; // type:function size:0x4C +mtxRotCat = .text:0x8001E024; // type:function size:0xF4 +mtxRot = .text:0x8001E118; // type:function size:0xF0 +mtxScaleCat = .text:0x8001E208; // type:function size:0x70 +HmfInverseMtxF3X3 = .text:0x8001E278; // type:function size:0x1E0 +SetDefLight = .text:0x8001E458; // type:function size:0x190 +Hu3DModelObjPosGet = .text:0x8001E5E8; // type:function size:0x90 +Hu3DModelObjMtxGet = .text:0x8001E678; // type:function size:0x318 +PGObjCall = .text:0x8001E990; // type:function size:0x80 +PGObjCalc = .text:0x8001EA10; // type:function size:0x7B0 +PGObjReplica = .text:0x8001F1C0; // type:function size:0x574 +Hu3DObjDuplicate = .text:0x8001F734; // type:function size:0x158 +Hu3DModelObjDrawInit = .text:0x8001F88C; // type:function size:0x90 +Hu3DModelObjDraw = .text:0x8001F91C; // type:function size:0x90 +Hu3DInit = .text:0x8001F9AC; // type:function size:0x220 +Hu3DPreProc = .text:0x8001FBCC; // type:function size:0xD8 +Hu3DExec = .text:0x8001FCA4; // type:function size:0x688 +Hu3DAllKill = .text:0x8002032C; // type:function size:0x158 +Hu3DBGColorSet = .text:0x80020484; // type:function size:0x18 +Hu3DLayerHookSet = .text:0x8002049C; // type:function size:0x1C +Hu3DPauseSet = .text:0x800204B8; // type:function size:0xC +Hu3DNoSyncSet = .text:0x800204C4; // type:function size:0xC +Hu3DModelCreate = .text:0x800204D0; // type:function size:0x330 +Hu3DModelLink = .text:0x80020800; // type:function size:0x2E8 +Hu3DHookFuncCreate = .text:0x80020AE8; // type:function size:0x1C8 +Hu3DModelKill = .text:0x80020CB0; // type:function size:0x34C +Hu3DModelAllKill = .text:0x80020FFC; // type:function size:0xD0 +Hu3DModelPosSet = .text:0x800210CC; // type:function size:0x34 +Hu3DModelPosSetV = .text:0x80021100; // type:function size:0x40 +Hu3DModelRotSet = .text:0x80021140; // type:function size:0x34 +Hu3DModelRotSetV = .text:0x80021174; // type:function size:0x40 +Hu3DModelScaleSet = .text:0x800211B4; // type:function size:0x34 +Hu3DModelScaleSetV = .text:0x800211E8; // type:function size:0x40 +Hu3DModelAttrSet = .text:0x80021228; // type:function size:0x54 +Hu3DModelAttrReset = .text:0x8002127C; // type:function size:0x50 +Hu3DModelAttrGet = .text:0x800212CC; // type:function size:0x2C +Hu3DModelMotionAttrGet = .text:0x800212F8; // type:function size:0x2C +Hu3DModelClusterAttrSet = .text:0x80021324; // type:function size:0x44 +Hu3DModelClusterAttrReset = .text:0x80021368; // type:function size:0x44 +Hu3DModelCameraSet = .text:0x800213AC; // type:function size:0x2C +Hu3DModelLayerSet = .text:0x800213D8; // type:function size:0x6C +Hu3DModelObjPtrGet = .text:0x80021444; // type:function size:0xD8 +Hu3DModelTPLvlSet = .text:0x8002151C; // type:function size:0xF8 +Hu3DModelHiliteMapSet = .text:0x80021614; // type:function size:0x98 +Hu3DModelShadowSet = .text:0x800216AC; // type:function size:0xB0 +Hu3DModelShadowReset = .text:0x8002175C; // type:function size:0xA0 +Hu3DModelShadowDispOn = .text:0x800217FC; // type:function size:0x34 +Hu3DModelShadowDispOff = .text:0x80021830; // type:function size:0x34 +Hu3DModelShadowMapSet = .text:0x80021864; // type:function size:0x88 +Hu3DModelShadowMapObjSet = .text:0x800218EC; // type:function size:0xBC +Hu3DModelAmbSet = .text:0x800219A8; // type:function size:0x34 +Hu3DModelHookSet = .text:0x800219DC; // type:function size:0xEC +Hu3DModelHookReset = .text:0x80021AC8; // type:function size:0xB4 +Hu3DModelHookObjReset = .text:0x80021B7C; // type:function size:0xF0 +Hu3DModelProjectionSet = .text:0x80021C6C; // type:function size:0x44 +Hu3DModelProjectionReset = .text:0x80021CB0; // type:function size:0x44 +Hu3DModelHiliteTypeSet = .text:0x80021CF4; // type:function size:0xBC +Hu3DModelReflectTypeSet = .text:0x80021DB0; // type:function size:0x30 +Hu3DCameraCreate = .text:0x80021DE0; // type:function size:0x134 +Hu3DCameraPerspectiveSet = .text:0x80021F14; // type:function size:0x80 +Hu3DCameraViewportSet = .text:0x80021F94; // type:function size:0x88 +Hu3DCameraScissorSet = .text:0x8002201C; // type:function size:0x90 +Hu3DCameraPosSet = .text:0x800220AC; // type:function size:0x98 +Hu3DCameraPosSetV = .text:0x80022144; // type:function size:0xB8 +Hu3DCameraKill = .text:0x800221FC; // type:function size:0x78 +Hu3DCameraAllKill = .text:0x80022274; // type:function size:0xD0 +Hu3DCameraSet = .text:0x80022344; // type:function size:0xDC +Hu3DModelCameraInfoSet = .text:0x80022420; // type:function size:0x3C0 +Hu3DModelCameraCreate = .text:0x800227E0; // type:function size:0x88 +Hu3DCameraMotionOn = .text:0x80022868; // type:function size:0x58 +Hu3DCameraMotionStart = .text:0x800228C0; // type:function size:0xD4 +Hu3DCameraMotionOff = .text:0x80022994; // type:function size:0x34 +Hu3DLighInit = .text:0x800229C8; // type:function size:0x74 +Hu3DGLightCreate = .text:0x80022A3C; // type:function size:0xA0 +Hu3DGLightCreateV = .text:0x80022ADC; // type:function size:0x104 +Hu3DLLightCreate = .text:0x80022BE0; // type:function size:0xA8 +Hu3DLLightCreateV = .text:0x80022C88; // type:function size:0x17C +Hu3DGLightSpotSet = .text:0x80022E04; // type:function size:0x44 +Hu3DLLightSpotSet = .text:0x80022E48; // type:function size:0x6C +Hu3DGLightInfinitytSet = .text:0x80022EB4; // type:function size:0x48 +Hu3DLLightInfinitytSet = .text:0x80022EFC; // type:function size:0x70 +Hu3DGLightPointSet = .text:0x80022F6C; // type:function size:0x58 +Hu3DLLightPointSet = .text:0x80022FC4; // type:function size:0x80 +Hu3DGLightKill = .text:0x80023044; // type:function size:0x20 +Hu3DLLightKill = .text:0x80023064; // type:function size:0xBC +Hu3DLightAllKill = .text:0x80023120; // type:function size:0x68 +Hu3DGLightColorSet = .text:0x80023188; // type:function size:0x38 +Hu3DLLightColorSet = .text:0x800231C0; // type:function size:0x60 +Hu3DGLightPosSetV = .text:0x80023220; // type:function size:0x70 +Hu3DLLightPosSetV = .text:0x80023290; // type:function size:0x9C +Hu3DGLightPosSet = .text:0x8002332C; // type:function size:0x90 +Hu3DLLightPosSet = .text:0x800233BC; // type:function size:0xBC +Hu3DGLightPosAimSetV = .text:0x80023478; // type:function size:0x80 +Hu3DLLightPosAimSetV = .text:0x800234F8; // type:function size:0xAC +Hu3DGLightPosAimSet = .text:0x800235A4; // type:function size:0xC4 +Hu3DLLightPosAimSet = .text:0x80023668; // type:function size:0xF0 +Hu3DGLightStaticSet = .text:0x80023758; // type:function size:0x54 +Hu3DLLightStaticSet = .text:0x800237AC; // type:function size:0x7C +Hu3DModelLightInfoSet = .text:0x80023828; // type:function size:0x4D0 +Hu3DLightSet = .text:0x80023CF8; // type:function size:0x130 +lightSet = .text:0x80023E28; // type:function size:0x254 +Hu3DReflectMapSet = .text:0x8002407C; // type:function size:0x68 +Hu3DReflectNoSet = .text:0x800240E4; // type:function size:0x8 +Hu3DFogSet = .text:0x800240EC; // type:function size:0x60 +Hu3DFogClear = .text:0x8002414C; // type:function size:0x74 +Hu3DShadowCreate = .text:0x800241C0; // type:function size:0x188 +Hu3DShadowPosSet = .text:0x80024348; // type:function size:0x64 +Hu3DShadowTPLvlSet = .text:0x800243AC; // type:function size:0x2C +Hu3DShadowSizeSet = .text:0x800243D8; // type:function size:0x78 +Hu3DShadowExec = .text:0x80024450; // type:function size:0x860 +Hu3DProjectionCreate = .text:0x80024CB0; // type:function size:0x130 +Hu3DProjectionKill = .text:0x80024DE0; // type:function size:0x60 +Hu3DProjectionPosSet = .text:0x80024E40; // type:function size:0x88 +Hu3DProjectionTPLvlSet = .text:0x80024EC8; // type:function size:0x38 +Hu3DMipMapSet = .text:0x80024F00; // type:function size:0x1E8 +Hu3DMotionInit = .text:0x800250E8; // type:function size:0x48 +Hu3DMotionCreate = .text:0x80025130; // type:function size:0xA4 +Hu3DMotionModelCreate = .text:0x800251D4; // type:function size:0xC4 +Hu3DMotionKill = .text:0x80025298; // type:function size:0x114 +Hu3DMotionAllKill = .text:0x800253AC; // type:function size:0x11C +Hu3DMotionSet = .text:0x800254C8; // type:function size:0xBC +Hu3DMotionOverlaySet = .text:0x80025584; // type:function size:0x54 +Hu3DMotionOverlayReset = .text:0x800255D8; // type:function size:0x20 +Hu3DMotionOverlayTimeGet = .text:0x800255F8; // type:function size:0x1C +Hu3DMotionOverlayTimeSet = .text:0x80025614; // type:function size:0x1C +Hu3DMotionOverlaySpeedSet = .text:0x80025630; // type:function size:0x1C +Hu3DMotionShiftSet = .text:0x8002564C; // type:function size:0x1F4 +Hu3DMotionShapeSet = .text:0x80025840; // type:function size:0xBC +Hu3DMotionShapeIDGet = .text:0x800258FC; // type:function size:0x1C +Hu3DMotionShapeSpeedSet = .text:0x80025918; // type:function size:0x2C +Hu3DMotionShapeTimeSet = .text:0x80025944; // type:function size:0x1C +Hu3DMotionShapeMaxTimeGet = .text:0x80025960; // type:function size:0x44 +Hu3DMotionShapeStartEndSet = .text:0x800259A4; // type:function size:0x30 +Hu3DMotionClusterSet = .text:0x800259D4; // type:function size:0x114 +Hu3DMotionClusterNoSet = .text:0x80025AE8; // type:function size:0xD0 +Hu3DMotionShapeReset = .text:0x80025BB8; // type:function size:0x20 +Hu3DMotionClusterReset = .text:0x80025BD8; // type:function size:0xC8 +Hu3DMotionIDGet = .text:0x80025CA0; // type:function size:0x2C +Hu3DMotionShiftIDGet = .text:0x80025CCC; // type:function size:0x2C +Hu3DMotionTimeSet = .text:0x80025CF8; // type:function size:0xF4 +Hu3DMotionTimeGet = .text:0x80025DEC; // type:function size:0x2C +Hu3DMotionShiftTimeGet = .text:0x80025E18; // type:function size:0x2C +Hu3DMotionMaxTimeGet = .text:0x80025E44; // type:function size:0xA8 +Hu3DMotionShiftMaxTimeGet = .text:0x80025EEC; // type:function size:0xA8 +Hu3DMotionShiftStartEndSet = .text:0x80025F94; // type:function size:0x30 +Hu3DMotionMotionMaxTimeGet = .text:0x80025FC4; // type:function size:0x8C +Hu3DMotionStartEndSet = .text:0x80026050; // type:function size:0x30 +Hu3DMotionEndCheck = .text:0x80026080; // type:function size:0x170 +Hu3DMotionSpeedSet = .text:0x800261F0; // type:function size:0x2C +Hu3DMotionShiftSpeedSet = .text:0x8002621C; // type:function size:0x2C +Hu3DMotionNoMotSet = .text:0x80026248; // type:function size:0x114 +Hu3DMotionNoMotReset = .text:0x8002635C; // type:function size:0x5C +Hu3DMotionForceSet = .text:0x800263B8; // type:function size:0x108 +Hu3DMotionNext = .text:0x800264C0; // type:function size:0x798 +Hu3DMotionExec = .text:0x80026C58; // type:function size:0x534 +Hu3DCameraMotionExec = .text:0x8002718C; // type:function size:0xC0 +Hu3DSubMotionExec = .text:0x8002724C; // type:function size:0x2A8 +GetObjTRXPtr = .text:0x800274F4; // type:function size:0x14C +SetObjMatMotion = .text:0x80027640; // type:function size:0x208 +SetObjAttrMotion = .text:0x80027848; // type:function size:0x218 +SetObjCameraMotion = .text:0x80027A60; // type:function size:0x558 +SetObjLightMotion = .text:0x80027FB8; // type:function size:0x1D8 +GetCurve = .text:0x80028190; // type:function size:0xD8 +GetConstant = .text:0x80028268; // type:function size:0x70 +GetLinear = .text:0x800282D8; // type:function size:0x110 +GetBezier = .text:0x800283E8; // type:function size:0x200 +GetBitMap = .text:0x800285E8; // type:function size:0x64 +Hu3DJointMotion = .text:0x8002864C; // type:function size:0xCC +JointModel_Motion = .text:0x80028718; // type:function size:0x124 +Hu3DMotionCalc = .text:0x8002883C; // type:function size:0x19C +SearchObjectIndex = .text:0x800289D8; // type:function size:0x90 scope:local +SearchAttributeIndex = .text:0x80028A68; // type:function size:0x9C scope:local +Hu3DAnimInit = .text:0x80028B04; // type:function size:0x7C +Hu3DAnimCreate = .text:0x80028B80; // type:function size:0x1D0 +Hu3DAnimLink = .text:0x80028D50; // type:function size:0x1C4 +Hu3DAnimKill = .text:0x80028F14; // type:function size:0x104 +Hu3DAnimModelKill = .text:0x80029018; // type:function size:0x13C +Hu3DAnimAllKill = .text:0x80029154; // type:function size:0x134 +Hu3DAnimAttrSet = .text:0x80029288; // type:function size:0x34 +Hu3DAnimAttrReset = .text:0x800292BC; // type:function size:0x38 +Hu3DAnimSpeedSet = .text:0x800292F4; // type:function size:0x2C +Hu3DAnimBankSet = .text:0x80029320; // type:function size:0x48 +Hu3DAnmNoSet = .text:0x80029368; // type:function size:0x38 +Hu3DAnimSet = .text:0x800293A0; // type:function size:0x240 +Hu3DAnimExec = .text:0x800295E0; // type:function size:0x474 +Hu3DTexScrollCreate = .text:0x80029A54; // type:function size:0x1AC +Hu3DTexScrollKill = .text:0x80029C00; // type:function size:0xE0 +Hu3DTexScrollAllKill = .text:0x80029CE0; // type:function size:0x10C +Hu3DTexScrollPosSet = .text:0x80029DEC; // type:function size:0x44 +Hu3DTexScrollPosMoveSet = .text:0x80029E30; // type:function size:0xA4 +Hu3DTexScrollRotSet = .text:0x80029ED4; // type:function size:0x3C +Hu3DTexScrollRotMoveSet = .text:0x80029F10; // type:function size:0x5C +Hu3DTexScrollPauseDisableSet = .text:0x80029F6C; // type:function size:0x54 +Hu3DParticleCreate = .text:0x80029FC0; // type:function size:0x348 +Hu3DParticleScaleSet = .text:0x8002A308; // type:function size:0x6C +Hu3DParticleZRotSet = .text:0x8002A374; // type:function size:0x6C +Hu3DParticleColSet = .text:0x8002A3E0; // type:function size:0x74 +Hu3DParticleTPLvlSet = .text:0x8002A454; // type:function size:0x80 +Hu3DParticleBlendModeSet = .text:0x8002A4D4; // type:function size:0x38 +Hu3DParticleHookSet = .text:0x8002A50C; // type:function size:0x38 +Hu3DParticleAttrSet = .text:0x8002A544; // type:function size:0x40 +Hu3DParticleAttrReset = .text:0x8002A584; // type:function size:0x44 +Hu3DParticleCntSet = .text:0x8002A5C8; // type:function size:0x3C +Hu3DParticleAnimModeSet = .text:0x8002A604; // type:function size:0x60 +_Hu3DParticleAttrReset = .text:0x8002A664; // type:function size:0xAD4 scope:local +Hu3DParManInit = .text:0x8002B138; // type:function size:0x48 +Hu3DParManCreate = .text:0x8002B180; // type:function size:0x1D4 +Hu3DParManLink = .text:0x8002B354; // type:function size:0x17C +Hu3DParManKill = .text:0x8002B4D0; // type:function size:0x190 +Hu3DParManAllKill = .text:0x8002B660; // type:function size:0x1C4 +Hu3DParManPtrGet = .text:0x8002B824; // type:function size:0x20 +Hu3DParManPosSet = .text:0x8002B844; // type:function size:0x3C +Hu3DParManVecSet = .text:0x8002B880; // type:function size:0x3C +Hu3DParManRotSet = .text:0x8002B8BC; // type:function size:0x7C +Hu3DParManAttrSet = .text:0x8002B938; // type:function size:0x40 +Hu3DParManAttrReset = .text:0x8002B978; // type:function size:0x40 +Hu3DParManModelIDGet = .text:0x8002B9B8; // type:function size:0x34 +Hu3DParManTimeLimitSet = .text:0x8002B9EC; // type:function size:0x38 +Hu3DParManVacumeSet = .text:0x8002BA24; // type:function size:0x74 +Hu3DParManColorSet = .text:0x8002BA98; // type:function size:0x68 +ParManFunc = .text:0x8002BB00; // type:function size:0xBC0 scope:local +ParManHook = .text:0x8002C6C0; // type:function size:0x4B4 scope:local +CamMotionEx2 = .text:0x8002CB74; // type:function size:0xAC +CamMotionEx = .text:0x8002CC20; // type:function size:0xA14 +SetObjCamMotion = .text:0x8002D634; // type:function size:0x244 scope:local +InterpolateBMLine = .text:0x8002D878; // type:function size:0x40C +Hu3D2Dto3D = .text:0x8002DC84; // type:function size:0x1D4 +Hu3D3Dto2D = .text:0x8002DE58; // type:function size:0x1D0 +Hu3DMtxTransGet = .text:0x8002E028; // type:function size:0x1C +Hu3DMtxRotGet = .text:0x8002E044; // type:function size:0x540 +Hu3DMtxScaleGet = .text:0x8002E584; // type:function size:0x1C8 +HuPerfInit = .text:0x8002E74C; // type:function size:0x94 +HuPerfCreate = .text:0x8002E7E0; // type:function size:0x130 +HuPerfZero = .text:0x8002E910; // type:function size:0x40 +HuPerfBegin = .text:0x8002E950; // type:function size:0x7C +HuPerfEnd = .text:0x8002E9CC; // type:function size:0xA0 +DSCallbackFunc = .text:0x8002EA6C; // type:function size:0x16C scope:local +omMasterInit = .text:0x8002EBD8; // type:function size:0x90 +omWatchOverlayProc = .text:0x8002EC68; // type:function size:0x170 scope:local +omOvlCallEx = .text:0x8002EDD8; // type:function size:0xE8 +omOvlGotoEx = .text:0x8002EEC0; // type:function size:0x60 +omOvlReturnEx = .text:0x8002EF20; // type:function size:0xF4 +omOvlKill = .text:0x8002F014; // type:function size:0xB8 +omOvlHisChg = .text:0x8002F0CC; // type:function size:0xA0 +omOvlHisGet = .text:0x8002F16C; // type:function size:0x78 +omInitObjMan = .text:0x8002F1E4; // type:function size:0x220 +omDestroyObjMan = .text:0x8002F404; // type:function size:0x50 +omAddObjEx = .text:0x8002F454; // type:function size:0x1DC +omInsertObj = .text:0x8002F630; // type:function size:0xF8 +omAddMember = .text:0x8002F728; // type:function size:0x84 +omDelObjEx = .text:0x8002F7AC; // type:function size:0x190 +omDelMember = .text:0x8002F93C; // type:function size:0x88 +omMakeGroupEx = .text:0x8002F9C4; // type:function size:0xFC +omGetGroupMemberListEx = .text:0x8002FAC0; // type:function size:0x2C +omSetStatBit = .text:0x8002FAEC; // type:function size:0x10 +omResetStatBit = .text:0x8002FAFC; // type:function size:0x14 +omSetTra = .text:0x8002FB10; // type:function size:0x10 +omSetRot = .text:0x8002FB20; // type:function size:0x10 +omSetSca = .text:0x8002FB30; // type:function size:0x10 +omMain = .text:0x8002FB40; // type:function size:0x2F8 +omAllPause = .text:0x8002FE38; // type:function size:0xE0 +omPauseChk = .text:0x8002FF18; // type:function size:0x2C +omCurrentOvlGet = .text:0x8002FF44; // type:function size:0x8 +OSPanic = .text:0x8002FF4C; // type:function size:0x150 +HuFaultInitXfbDirectDraw = .text:0x8003009C; // type:function size:0x118 +HuFaultSetXfbAddress = .text:0x800301B4; // type:function size:0x34 +XFB_WriteBackCache = .text:0x800301E8; // type:function size:0x98 scope:local +XFB_CR = .text:0x80030280; // type:function size:0x50 scope:local +XFB_puts = .text:0x800302D0; // type:function size:0xF4 scope:local +XFB_putcS = .text:0x800303C4; // type:function size:0x150 scope:local +XFB_putcProgressive = .text:0x80030514; // type:function size:0x1F0 scope:local +XFB_putcInterlace = .text:0x80030704; // type:function size:0x1B4 scope:local +GWInit = .text:0x800308B8; // type:function size:0x14C +GWGameStatReset = .text:0x80030A04; // type:function size:0x318 +GWMessDelayGet = .text:0x80030D1C; // type:function size:0x4C +GWMGRecordSet = .text:0x80030D68; // type:function size:0x54 +GWMGRecordGet = .text:0x80030DBC; // type:function size:0x18 +GWCharColorGet = .text:0x80030DD4; // type:function size:0x140 +GWBoardPlayCountSet = .text:0x80030F14; // type:function size:0x24 +GWBoardPlayCountAdd = .text:0x80030F38; // type:function size:0x38 +GWBoardPlayCountGet = .text:0x80030F70; // type:function size:0x14 +GWBoardMaxStarsSet = .text:0x80030F84; // type:function size:0x1C +GWBoardMaxStarsGet = .text:0x80030FA0; // type:function size:0x18 +GWBoardMaxCoinsSet = .text:0x80030FB8; // type:function size:0x1C +GWBoardMaxCoinsGet = .text:0x80030FD4; // type:function size:0x18 +GWBoardWinCountInc = .text:0x80030FEC; // type:function size:0x5C +GWBoardWinCountGet = .text:0x80031048; // type:function size:0x1C +GWBoardWinCountSet = .text:0x80031064; // type:function size:0x20 +GWMGAvailGet = .text:0x80031084; // type:function size:0x6C +GWMGAvailSet = .text:0x800310F0; // type:function size:0x5C +GWMGCustomGet = .text:0x8003114C; // type:function size:0x6C +GWMGCustomSet = .text:0x800311B8; // type:function size:0x5C +GWMGCustomReset = .text:0x80031214; // type:function size:0x60 +GWCoinsGet = .text:0x80031274; // type:function size:0x18 +GWCoinsSet = .text:0x8003128C; // type:function size:0xB0 +GWCoinsAdd = .text:0x8003133C; // type:function size:0xD0 +GWStarsSet = .text:0x8003140C; // type:function size:0x6C +GWStarsAdd = .text:0x80031478; // type:function size:0x94 +GWStarsGet = .text:0x8003150C; // type:function size:0x18 +GWTotalStarsSet = .text:0x80031524; // type:function size:0x34 +GWTotalStarsAdd = .text:0x80031558; // type:function size:0x54 +GWTotalStarsGet = .text:0x800315AC; // type:function size:0x10 +omOutView = .text:0x800315BC; // type:function size:0x238 +omOutViewMulti = .text:0x800317F4; // type:function size:0x2C4 +omSystemKeyCheckSetup = .text:0x80031AB8; // type:function size:0x74 +omSystemKeyCheck = .text:0x80031B2C; // type:function size:0x230 +omSysPauseEnable = .text:0x80031D5C; // type:function size:0x8 +omSysPauseCtrl = .text:0x80031D64; // type:function size:0x50 +omDLLDBGOut = .text:0x80031DB4; // type:function size:0x2C +omDLLInit = .text:0x80031DE0; // type:function size:0x6C +omDLLStart = .text:0x80031E4C; // type:function size:0x154 +omDLLNumEnd = .text:0x80031FA0; // type:function size:0xB4 +omDLLEnd = .text:0x80032054; // type:function size:0x13C +omDLLLink = .text:0x80032190; // type:function size:0x138 +omDLLUnlink = .text:0x800322C8; // type:function size:0xB4 +omDLLSearch = .text:0x8003237C; // type:function size:0xC8 +omDLLInfoDump = .text:0x80032444; // type:function size:0xD0 +omDLLHeaderDump = .text:0x80032514; // type:function size:0xE0 +frand = .text:0x800325F4; // type:function size:0xAC +frandf = .text:0x800326A0; // type:function size:0xD8 +frandmod = .text:0x80032778; // type:function size:0xB8 +HuAudInit = .text:0x80032830; // type:function size:0x170 +HuAudStreamPlay = .text:0x800329A0; // type:function size:0x8 +HuAudStreamVolSet = .text:0x800329A8; // type:function size:0x3C +HuAudStreamPauseOn = .text:0x800329E4; // type:function size:0x24 +HuAudStreamPauseOff = .text:0x80032A08; // type:function size:0x24 +HuAudStreamFadeOut = .text:0x80032A2C; // type:function size:0x4 +HuAudAllStop = .text:0x80032A30; // type:function size:0x28 +HuAudFadeOut = .text:0x80032A58; // type:function size:0x3C +HuAudFXPlay = .text:0x80032A94; // type:function size:0x80 +HuAudFXPlayVol = .text:0x80032B14; // type:function size:0x48 +HuAudFXPlayVolPan = .text:0x80032B5C; // type:function size:0x68 +HuAudFXStop = .text:0x80032BC4; // type:function size:0x2C +HuAudFXAllStop = .text:0x80032BF0; // type:function size:0x28 +HuAudFXFadeOut = .text:0x80032C18; // type:function size:0x30 +HuAudFXPanning = .text:0x80032C48; // type:function size:0x50 +HuAudFXListnerSet = .text:0x80032C98; // type:function size:0xA4 +HuAudFXListnerSetEX = .text:0x80032D3C; // type:function size:0x134 +HuAudFXListnerUpdate = .text:0x80032E70; // type:function size:0x3C +HuAudFXEmiterPlay = .text:0x80032EAC; // type:function size:0x6C +HuAudFXEmiterUpDate = .text:0x80032F18; // type:function size:0x64 +HuAudFXListnerKill = .text:0x80032F7C; // type:function size:0x20 +HuAudFXPauseAll = .text:0x80032F9C; // type:function size:0x2C +HuAudFXStatusGet = .text:0x80032FC8; // type:function size:0x28 +HuAudFXPitchSet = .text:0x80032FF0; // type:function size:0x54 +HuAudFXVolSet = .text:0x80033044; // type:function size:0x58 +HuAudSeqPlay = .text:0x8003309C; // type:function size:0x5C +HuAudSeqStop = .text:0x800330F8; // type:function size:0x48 +HuAudSeqFadeOut = .text:0x80033140; // type:function size:0x3C +HuAudSeqAllFadeOut = .text:0x8003317C; // type:function size:0x5C +HuAudSeqAllStop = .text:0x800331D8; // type:function size:0x28 +HuAudSeqPauseAll = .text:0x80033200; // type:function size:0x2C +HuAudSeqPause = .text:0x8003322C; // type:function size:0x54 +HuAudSeqMidiCtrlGet = .text:0x80033280; // type:function size:0x60 +HuAudSStreamPlay = .text:0x800332E0; // type:function size:0x64 +HuAudSStreamStop = .text:0x80033344; // type:function size:0x38 +HuAudSStreamFadeOut = .text:0x8003337C; // type:function size:0x3C +HuAudSStreamAllFadeOut = .text:0x800333B8; // type:function size:0x28 +HuAudSStreamAllStop = .text:0x800333E0; // type:function size:0x24 +HuAudSStreamStatGet = .text:0x80033404; // type:function size:0x28 +HuAudDllSndGrpSet = .text:0x8003342C; // type:function size:0x104 +HuAudSndGrpSetSet = .text:0x80033530; // type:function size:0x1A4 +HuAudSndGrpSet = .text:0x800336D4; // type:function size:0x60 +HuAudSndCommonGrpSet = .text:0x80033734; // type:function size:0x154 +HuAudAUXSet = .text:0x80033888; // type:function size:0x58 +HuAudAUXVolSet = .text:0x800338E0; // type:function size:0xC +HuAudVoiceInit = .text:0x800338EC; // type:function size:0x294 +HuAudPlayerVoicePlay = .text:0x80033B80; // type:function size:0x50 +HuAudPlayerVoicePlayPos = .text:0x80033BD0; // type:function size:0x58 +HuAudPlayerVoicePlayEntry = .text:0x80033C28; // type:function size:0x50 +HuAudCharVoicePlay = .text:0x80033C78; // type:function size:0xAC +HuAudCharVoicePlayPos = .text:0x80033D24; // type:function size:0xD0 +HuAudCharVoicePlayEntry = .text:0x80033DF4; // type:function size:0x90 +HuSePlay = .text:0x80033E84; // type:function size:0x68 scope:local +InitEnvelope = .text:0x80033EEC; // type:function size:0x1A4 +SetEnvelopMtx = .text:0x80034090; // type:function size:0x23C scope:local +EnvelopeProc = .text:0x800342CC; // type:function size:0x80 +InitVtxParm = .text:0x8003434C; // type:function size:0x50 +SetEnvelopMain = .text:0x8003439C; // type:function size:0x158 scope:local +SetEnvelop = .text:0x800344F4; // type:function size:0x9F0 scope:local +SetMtx = .text:0x80034EE4; // type:function size:0x334 scope:local +SetRevMtx = .text:0x80035218; // type:function size:0x11C scope:local +SearchSklenton = .text:0x80035334; // type:function size:0x78 scope:local +MGSeqInit = .text:0x800353AC; // type:function size:0xBC +MGSeqMain = .text:0x80035468; // type:function size:0x188 +CreateSeq = .text:0x800355F0; // type:function size:0x1A4 scope:local +MGSeqCreate = .text:0x80035794; // type:function size:0x100 +MGSeqStatGet = .text:0x80035894; // type:function size:0x88 +MGSeqPosSet = .text:0x8003591C; // type:function size:0x4C +MGSeqParamSet = .text:0x80035968; // type:function size:0x4C +MGSeqKill = .text:0x800359B4; // type:function size:0x58 +MGSeqKillAll = .text:0x80035A0C; // type:function size:0x3C +MGSeqDoneCheck = .text:0x80035A48; // type:function size:0xA4 +MGSeqStub = .text:0x80035AEC; // type:function size:0x4 +MGSeqSprKill = .text:0x80035AF0; // type:function size:0x8C +SeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 scope:local +SeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C scope:local +SeqInitType2 = .text:0x800364F8; // type:function size:0x3D8 scope:local +SeqUpdateType2 = .text:0x800368D0; // type:function size:0x2F8 scope:local fn_80036BC8 = .text:0x80036BC8; // type:function size:0x188 -fn_80036D50 = .text:0x80036D50; // type:function size:0x1E4 -fn_80036F34 = .text:0x80036F34; // type:function size:0x23C -fn_80037170 = .text:0x80037170; // type:function size:0x194 -fn_80037304 = .text:0x80037304; // type:function size:0x9D0 -fn_80037CD4 = .text:0x80037CD4; // type:function size:0x2A4 -fn_80037F78 = .text:0x80037F78; // type:function size:0xDA4 -fn_80038D1C = .text:0x80038D1C; // type:function size:0xDA4 -fn_80039AC0 = .text:0x80039AC0; // type:function size:0xBB8 -fn_8003A678 = .text:0x8003A678; // type:function size:0xAB4 -fn_8003B12C = .text:0x8003B12C; // type:function size:0x3C4 -fn_8003B4F0 = .text:0x8003B4F0; // type:function size:0x91C -fn_8003BE0C = .text:0x8003BE0C; // type:function size:0xC84 -fn_8003CA90 = .text:0x8003CA90; // type:function size:0xDC -fn_8003CB6C = .text:0x8003CB6C; // type:function size:0x3DC -fn_8003CF48 = .text:0x8003CF48; // type:function size:0x6B8 -fn_8003D600 = .text:0x8003D600; // type:function size:0x708 -fn_8003DD08 = .text:0x8003DD08; // type:function size:0x774 -fn_8003E47C = .text:0x8003E47C; // type:function size:0x304 -fn_8003E780 = .text:0x8003E780; // type:function size:0x6C -fn_8003E7EC = .text:0x8003E7EC; // type:function size:0x94C -fn_8003F138 = .text:0x8003F138; // type:function size:0xC -fn_8003F144 = .text:0x8003F144; // type:function size:0x40 -fn_8003F184 = .text:0x8003F184; // type:function size:0xDC -fn_8003F260 = .text:0x8003F260; // type:function size:0x234 -fn_8003F494 = .text:0x8003F494; // type:function size:0xD4 -fn_8003F568 = .text:0x8003F568; // type:function size:0x128 -fn_8003F690 = .text:0x8003F690; // type:function size:0xA0 -fn_8003F730 = .text:0x8003F730; // type:function size:0x1B0 -fn_8003F8E0 = .text:0x8003F8E0; // type:function size:0x98 -fn_8003F978 = .text:0x8003F978; // type:function size:0x8 -fn_8003F980 = .text:0x8003F980; // type:function size:0x44 -fn_8003F9C4 = .text:0x8003F9C4; // type:function size:0x44 -fn_8003FA08 = .text:0x8003FA08; // type:function size:0x48 -fn_8003FA50 = .text:0x8003FA50; // type:function size:0x48 -fn_8003FA98 = .text:0x8003FA98; // type:function size:0x50 -fn_8003FAE8 = .text:0x8003FAE8; // type:function size:0x50 -fn_8003FB38 = .text:0x8003FB38; // type:function size:0x48 -fn_8003FB80 = .text:0x8003FB80; // type:function size:0x48 -fn_8003FBC8 = .text:0x8003FBC8; // type:function size:0x58 -fn_8003FC20 = .text:0x8003FC20; // type:function size:0x48 -fn_8003FC68 = .text:0x8003FC68; // type:function size:0x48 -fn_8003FCB0 = .text:0x8003FCB0; // type:function size:0x48 -fn_8003FCF8 = .text:0x8003FCF8; // type:function size:0x48 -fn_8003FD40 = .text:0x8003FD40; // type:function size:0x268 -fn_8003FFA8 = .text:0x8003FFA8; // type:function size:0x12C -fn_800400D4 = .text:0x800400D4; // type:function size:0x78 -fn_8004014C = .text:0x8004014C; // type:function size:0x98 -fn_800401E4 = .text:0x800401E4; // type:function size:0xF4 -fn_800402D8 = .text:0x800402D8; // type:function size:0xA8 -fn_80040380 = .text:0x80040380; // type:function size:0xA8 -fn_80040428 = .text:0x80040428; // type:function size:0x3A0 -fn_800407C8 = .text:0x800407C8; // type:function size:0x160 -fn_80040928 = .text:0x80040928; // type:function size:0x210 -fn_80040B38 = .text:0x80040B38; // type:function size:0x36C -fn_80040EA4 = .text:0x80040EA4; // type:function size:0xA4 -fn_80040F48 = .text:0x80040F48; // type:function size:0xB4 -fn_80040FFC = .text:0x80040FFC; // type:function size:0x288 -fn_80041284 = .text:0x80041284; // type:function size:0x12C -fn_800413B0 = .text:0x800413B0; // type:function size:0x28 -fn_800413D8 = .text:0x800413D8; // type:function size:0x10 -fn_800413E8 = .text:0x800413E8; // type:function size:0x8 -fn_800413F0 = .text:0x800413F0; // type:function size:0xFC -fn_800414EC = .text:0x800414EC; // type:function size:0x31C -fn_80041808 = .text:0x80041808; // type:function size:0x184 -fn_8004198C = .text:0x8004198C; // type:function size:0x4C8 -fn_80041E54 = .text:0x80041E54; // type:function size:0x74 -fn_80041EC8 = .text:0x80041EC8; // type:function size:0x214 -fn_800420DC = .text:0x800420DC; // type:function size:0x54C -fn_80042628 = .text:0x80042628; // type:function size:0xA4 -fn_800426CC = .text:0x800426CC; // type:function size:0x1AC -fn_80042878 = .text:0x80042878; // type:function size:0x7D0 -fn_80043048 = .text:0x80043048; // type:function size:0x480 -fn_800434C8 = .text:0x800434C8; // type:function size:0xF4 -fn_800435BC = .text:0x800435BC; // type:function size:0x1044 -fn_80044600 = .text:0x80044600; // type:function size:0x54 -fn_80044654 = .text:0x80044654; // type:function size:0x90 -fn_800446E4 = .text:0x800446E4; // type:function size:0xA4 -fn_80044788 = .text:0x80044788; // type:function size:0x88 -fn_80044810 = .text:0x80044810; // type:function size:0x10C -fn_8004491C = .text:0x8004491C; // type:function size:0x1A4 -fn_80044AC0 = .text:0x80044AC0; // type:function size:0x80 -fn_80044B40 = .text:0x80044B40; // type:function size:0xA90 -fn_800455D0 = .text:0x800455D0; // type:function size:0x68 -fn_80045638 = .text:0x80045638; // type:function size:0xE8 -fn_80045720 = .text:0x80045720; // type:function size:0x6C -fn_8004578C = .text:0x8004578C; // type:function size:0x6C -fn_800457F8 = .text:0x800457F8; // type:function size:0x58 -fn_80045850 = .text:0x80045850; // type:function size:0xAC -fn_800458FC = .text:0x800458FC; // type:function size:0x4C -fn_80045948 = .text:0x80045948; // type:function size:0x64 -fn_800459AC = .text:0x800459AC; // type:function size:0xB8 -fn_80045A64 = .text:0x80045A64; // type:function size:0x34 -fn_80045A98 = .text:0x80045A98; // type:function size:0x34 -fn_80045ACC = .text:0x80045ACC; // type:function size:0x2C -fn_80045AF8 = .text:0x80045AF8; // type:function size:0x3C -fn_80045B34 = .text:0x80045B34; // type:function size:0x58 -fn_80045B8C = .text:0x80045B8C; // type:function size:0x50 -fn_80045BDC = .text:0x80045BDC; // type:function size:0x60 -fn_80045C3C = .text:0x80045C3C; // type:function size:0x2C -fn_80045C68 = .text:0x80045C68; // type:function size:0xC4 -fn_80045D2C = .text:0x80045D2C; // type:function size:0xC8 -fn_80045DF4 = .text:0x80045DF4; // type:function size:0xD8 -fn_80045ECC = .text:0x80045ECC; // type:function size:0x27C -fn_80046148 = .text:0x80046148; // type:function size:0x2C -fn_80046174 = .text:0x80046174; // type:function size:0x38 -fn_800461AC = .text:0x800461AC; // type:function size:0x40 -fn_800461EC = .text:0x800461EC; // type:function size:0x50 -fn_8004623C = .text:0x8004623C; // type:function size:0x8C -fn_800462C8 = .text:0x800462C8; // type:function size:0xF0 -fn_800463B8 = .text:0x800463B8; // type:function size:0x88 -fn_80046440 = .text:0x80046440; // type:function size:0x6C -fn_800464AC = .text:0x800464AC; // type:function size:0x38 -fn_800464E4 = .text:0x800464E4; // type:function size:0x68 -fn_8004654C = .text:0x8004654C; // type:function size:0x90 -fn_800465DC = .text:0x800465DC; // type:function size:0x90 -fn_8004666C = .text:0x8004666C; // type:function size:0xC0 -fn_8004672C = .text:0x8004672C; // type:function size:0x44 -fn_80046770 = .text:0x80046770; // type:function size:0x98 -fn_80046808 = .text:0x80046808; // type:function size:0x1D4 -fn_800469DC = .text:0x800469DC; // type:function size:0x10 -fn_800469EC = .text:0x800469EC; // type:function size:0x170 -fn_80046B5C = .text:0x80046B5C; // type:function size:0x54 -fn_80046BB0 = .text:0x80046BB0; // type:function size:0x8 -fn_80046BB8 = .text:0x80046BB8; // type:function size:0x114 -fn_80046CCC = .text:0x80046CCC; // type:function size:0x2A0 -fn_80046F6C = .text:0x80046F6C; // type:function size:0x1CC -fn_80047138 = .text:0x80047138; // type:function size:0x88 -fn_800471C0 = .text:0x800471C0; // type:function size:0x2C -fn_800471EC = .text:0x800471EC; // type:function size:0x34 -fn_80047220 = .text:0x80047220; // type:function size:0x38 -fn_80047258 = .text:0x80047258; // type:function size:0x4C -fn_800472A4 = .text:0x800472A4; // type:function size:0x228 -fn_800474CC = .text:0x800474CC; // type:function size:0x3B0 -fn_8004787C = .text:0x8004787C; // type:function size:0x304 -fn_80047B80 = .text:0x80047B80; // type:function size:0xA4 -fn_80047C24 = .text:0x80047C24; // type:function size:0x264 -fn_80047E88 = .text:0x80047E88; // type:function size:0xE8 -fn_80047F70 = .text:0x80047F70; // type:function size:0x34 -fn_80047FA4 = .text:0x80047FA4; // type:function size:0xC4 -fn_80048068 = .text:0x80048068; // type:function size:0x58 -fn_800480C0 = .text:0x800480C0; // type:function size:0xEC -fn_800481AC = .text:0x800481AC; // type:function size:0x28 -fn_800481D4 = .text:0x800481D4; // type:function size:0x50 -fn_80048224 = .text:0x80048224; // type:function size:0x1C -fn_80048240 = .text:0x80048240; // type:function size:0x70 -fn_800482B0 = .text:0x800482B0; // type:function size:0x68 -fn_80048318 = .text:0x80048318; // type:function size:0x100 -fn_80048418 = .text:0x80048418; // type:function size:0x38 -fn_80048450 = .text:0x80048450; // type:function size:0x50 -fn_800484A0 = .text:0x800484A0; // type:function size:0x40 -fn_800484E0 = .text:0x800484E0; // type:function size:0x4C -fn_8004852C = .text:0x8004852C; // type:function size:0x48 -fn_80048574 = .text:0x80048574; // type:function size:0x148 -fn_800486BC = .text:0x800486BC; // type:function size:0x16C -fn_80048828 = .text:0x80048828; // type:function size:0x16C -fn_80048994 = .text:0x80048994; // type:function size:0xA8 -fn_80048A3C = .text:0x80048A3C; // type:function size:0x160 -fn_80048B9C = .text:0x80048B9C; // type:function size:0x10 -fn_80048BAC = .text:0x80048BAC; // type:function size:0x2C -fn_80048BD8 = .text:0x80048BD8; // type:function size:0x140 -fn_80048D18 = .text:0x80048D18; // type:function size:0x2C -fn_80048D44 = .text:0x80048D44; // type:function size:0x1F0 -fn_80048F34 = .text:0x80048F34; // type:function size:0x44 -fn_80048F78 = .text:0x80048F78; // type:function size:0x8 -fn_80048F80 = .text:0x80048F80; // type:function size:0x58 -fn_80048FD8 = .text:0x80048FD8; // type:function size:0x68 -fn_80049040 = .text:0x80049040; // type:function size:0x390 -fn_800493D0 = .text:0x800493D0; // type:function size:0x10 -fn_800493E0 = .text:0x800493E0; // type:function size:0x134 -fn_80049514 = .text:0x80049514; // type:function size:0x1C -fn_80049530 = .text:0x80049530; // type:function size:0x98 -fn_800495C8 = .text:0x800495C8; // type:function size:0x58 -fn_80049620 = .text:0x80049620; // type:function size:0x428 -fn_80049A48 = .text:0x80049A48; // type:function size:0x3C -fn_80049A84 = .text:0x80049A84; // type:function size:0x180 -fn_80049C04 = .text:0x80049C04; // type:function size:0x20C -fn_80049E10 = .text:0x80049E10; // type:function size:0x173C -fn_8004B54C = .text:0x8004B54C; // type:function size:0xB0 -fn_8004B5FC = .text:0x8004B5FC; // type:function size:0x254 -fn_8004B850 = .text:0x8004B850; // type:function size:0xB0 -fn_8004B900 = .text:0x8004B900; // type:function size:0xB0 -fn_8004B9B0 = .text:0x8004B9B0; // type:function size:0xB0 -fn_8004BA60 = .text:0x8004BA60; // type:function size:0xB0 -fn_8004BB10 = .text:0x8004BB10; // type:function size:0xB0 -fn_8004BBC0 = .text:0x8004BBC0; // type:function size:0xB0 -fn_8004BC70 = .text:0x8004BC70; // type:function size:0x1CC -fn_8004BE3C = .text:0x8004BE3C; // type:function size:0x4A0 -fn_8004C2DC = .text:0x8004C2DC; // type:function size:0x1E8 -fn_8004C4C4 = .text:0x8004C4C4; // type:function size:0x344 -fn_8004C808 = .text:0x8004C808; // type:function size:0x1D0 -fn_8004C9D8 = .text:0x8004C9D8; // type:function size:0x88 -fn_8004CA60 = .text:0x8004CA60; // type:function size:0x9C -fn_8004CAFC = .text:0x8004CAFC; // type:function size:0x2B8 -fn_8004CDB4 = .text:0x8004CDB4; // type:function size:0x430 -fn_8004D1E4 = .text:0x8004D1E4; // type:function size:0x244 -fn_8004D428 = .text:0x8004D428; // type:function size:0x7C -fn_8004D4A4 = .text:0x8004D4A4; // type:function size:0x17C -fn_8004D620 = .text:0x8004D620; // type:function size:0x7C -fn_8004D69C = .text:0x8004D69C; // type:function size:0x7C -fn_8004D718 = .text:0x8004D718; // type:function size:0x4C -fn_8004D764 = .text:0x8004D764; // type:function size:0x44 -fn_8004D7A8 = .text:0x8004D7A8; // type:function size:0x44 -fn_8004D7EC = .text:0x8004D7EC; // type:function size:0x44 -fn_8004D830 = .text:0x8004D830; // type:function size:0x44 -fn_8004D874 = .text:0x8004D874; // type:function size:0x84 -fn_8004D8F8 = .text:0x8004D8F8; // type:function size:0x44 -fn_8004D93C = .text:0x8004D93C; // type:function size:0x4C -fn_8004D988 = .text:0x8004D988; // type:function size:0x80 -fn_8004DA08 = .text:0x8004DA08; // type:function size:0x1D4 -fn_8004DBDC = .text:0x8004DBDC; // type:function size:0x484 -fn_8004E060 = .text:0x8004E060; // type:function size:0x3FC -fn_8004E45C = .text:0x8004E45C; // type:function size:0x168 -fn_8004E5C4 = .text:0x8004E5C4; // type:function size:0x1A0 -fn_8004E764 = .text:0x8004E764; // type:function size:0x130 -fn_8004E894 = .text:0x8004E894; // type:function size:0x2B4 -fn_8004EB48 = .text:0x8004EB48; // type:function size:0xE4 -fn_8004EC2C = .text:0x8004EC2C; // type:function size:0x2B4 -fn_8004EEE0 = .text:0x8004EEE0; // type:function size:0x80 -fn_8004EF60 = .text:0x8004EF60; // type:function size:0xBC -fn_8004F01C = .text:0x8004F01C; // type:function size:0x4C -fn_8004F068 = .text:0x8004F068; // type:function size:0xB0 -fn_8004F118 = .text:0x8004F118; // type:function size:0x2CC -fn_8004F3E4 = .text:0x8004F3E4; // type:function size:0x2CC -fn_8004F6B0 = .text:0x8004F6B0; // type:function size:0xF80 -fn_80050630 = .text:0x80050630; // type:function size:0x30 -fn_80050660 = .text:0x80050660; // type:function size:0xEC -fn_8005074C = .text:0x8005074C; // type:function size:0x1B8 -fn_80050904 = .text:0x80050904; // type:function size:0x110 -fn_80050A14 = .text:0x80050A14; // type:function size:0x2A8 -fn_80050CBC = .text:0x80050CBC; // type:function size:0x38C -fn_80051048 = .text:0x80051048; // type:function size:0x470 -fn_800514B8 = .text:0x800514B8; // type:function size:0x5D4 -fn_80051A8C = .text:0x80051A8C; // type:function size:0xF4 -fn_80051B80 = .text:0x80051B80; // type:function size:0x388 -fn_80051F08 = .text:0x80051F08; // type:function size:0x148 -fn_80052050 = .text:0x80052050; // type:function size:0x518 -fn_80052568 = .text:0x80052568; // type:function size:0x994 -fn_80052EFC = .text:0x80052EFC; // type:function size:0xC28 -fn_80053B24 = .text:0x80053B24; // type:function size:0x43C -fn_80053F60 = .text:0x80053F60; // type:function size:0x100 -fn_80054060 = .text:0x80054060; // type:function size:0x19C -fn_800541FC = .text:0x800541FC; // type:function size:0x4C -fn_80054248 = .text:0x80054248; // type:function size:0x184 -fn_800543CC = .text:0x800543CC; // type:function size:0x124 -fn_800544F0 = .text:0x800544F0; // type:function size:0x124 -fn_80054614 = .text:0x80054614; // type:function size:0x54 -fn_80054668 = .text:0x80054668; // type:function size:0x408 -fn_80054A70 = .text:0x80054A70; // type:function size:0xC0 -fn_80054B30 = .text:0x80054B30; // type:function size:0x184 -fn_80054CB4 = .text:0x80054CB4; // type:function size:0x240 -fn_80054EF4 = .text:0x80054EF4; // type:function size:0x2A4 -fn_80055198 = .text:0x80055198; // type:function size:0x2A4 -fn_8005543C = .text:0x8005543C; // type:function size:0x14 -fn_80055450 = .text:0x80055450; // type:function size:0x14 -fn_80055464 = .text:0x80055464; // type:function size:0x1B8 -fn_8005561C = .text:0x8005561C; // type:function size:0x47C -fn_80055A98 = .text:0x80055A98; // type:function size:0xD8 -fn_80055B70 = .text:0x80055B70; // type:function size:0x104 -fn_80055C74 = .text:0x80055C74; // type:function size:0x5F8 -fn_8005626C = .text:0x8005626C; // type:function size:0x58 -fn_800562C4 = .text:0x800562C4; // type:function size:0x2C -fn_800562F0 = .text:0x800562F0; // type:function size:0x188 -fn_80056478 = .text:0x80056478; // type:function size:0x17C -fn_800565F4 = .text:0x800565F4; // type:function size:0x130 -fn_80056724 = .text:0x80056724; // type:function size:0x5A0 -fn_80056CC4 = .text:0x80056CC4; // type:function size:0x288 -fn_80056F4C = .text:0x80056F4C; // type:function size:0x108 -fn_80057054 = .text:0x80057054; // type:function size:0x110 -fn_80057164 = .text:0x80057164; // type:function size:0xF8 -fn_8005725C = .text:0x8005725C; // type:function size:0x100 -fn_8005735C = .text:0x8005735C; // type:function size:0xC -fn_80057368 = .text:0x80057368; // type:function size:0xC -fn_80057374 = .text:0x80057374; // type:function size:0xC -fn_80057380 = .text:0x80057380; // type:function size:0x54 -fn_800573D4 = .text:0x800573D4; // type:function size:0x8 -fn_800573DC = .text:0x800573DC; // type:function size:0x20 -fn_800573FC = .text:0x800573FC; // type:function size:0x30 -fn_8005742C = .text:0x8005742C; // type:function size:0x27C -fn_800576A8 = .text:0x800576A8; // type:function size:0xA4 -fn_8005774C = .text:0x8005774C; // type:function size:0x17C -fn_800578C8 = .text:0x800578C8; // type:function size:0x4C -fn_80057914 = .text:0x80057914; // type:function size:0x5C -fn_80057970 = .text:0x80057970; // type:function size:0xF4 -fn_80057A64 = .text:0x80057A64; // type:function size:0x9C -fn_80057B00 = .text:0x80057B00; // type:function size:0xA0 -fn_80057BA0 = .text:0x80057BA0; // type:function size:0xA4 -fn_80057C44 = .text:0x80057C44; // type:function size:0xA4 -fn_80057CE8 = .text:0x80057CE8; // type:function size:0x30 -fn_80057D18 = .text:0x80057D18; // type:function size:0x140 -fn_80057E58 = .text:0x80057E58; // type:function size:0x280 -fn_800580D8 = .text:0x800580D8; // type:function size:0x10C -fn_800581E4 = .text:0x800581E4; // type:function size:0x84 -fn_80058268 = .text:0x80058268; // type:function size:0x4C -fn_800582B4 = .text:0x800582B4; // type:function size:0x8 -fn_800582BC = .text:0x800582BC; // type:function size:0xC -fn_800582C8 = .text:0x800582C8; // type:function size:0x40 -fn_80058308 = .text:0x80058308; // type:function size:0x8 -fn_80058310 = .text:0x80058310; // type:function size:0x154 -fn_80058464 = .text:0x80058464; // type:function size:0x2A0 -fn_80058704 = .text:0x80058704; // type:function size:0x2DC -fn_800589E0 = .text:0x800589E0; // type:function size:0x8C -fn_80058A6C = .text:0x80058A6C; // type:function size:0x8C -fn_80058AF8 = .text:0x80058AF8; // type:function size:0x370 -fn_80058E68 = .text:0x80058E68; // type:function size:0xDC -fn_80058F44 = .text:0x80058F44; // type:function size:0x48 -fn_80058F8C = .text:0x80058F8C; // type:function size:0x110 -fn_8005909C = .text:0x8005909C; // type:function size:0x38 -fn_800590D4 = .text:0x800590D4; // type:function size:0x1A0 -fn_80059274 = .text:0x80059274; // type:function size:0x184 -fn_800593F8 = .text:0x800593F8; // type:function size:0x28 -fn_80059420 = .text:0x80059420; // type:function size:0xA0 -fn_800594C0 = .text:0x800594C0; // type:function size:0x60 -fn_80059520 = .text:0x80059520; // type:function size:0x54 -fn_80059574 = .text:0x80059574; // type:function size:0x90 -fn_80059604 = .text:0x80059604; // type:function size:0x1D4 -fn_800597D8 = .text:0x800597D8; // type:function size:0x12C -fn_80059904 = .text:0x80059904; // type:function size:0x624 -fn_80059F28 = .text:0x80059F28; // type:function size:0x3FC -fn_8005A324 = .text:0x8005A324; // type:function size:0x50 -fn_8005A374 = .text:0x8005A374; // type:function size:0x28 -fn_8005A39C = .text:0x8005A39C; // type:function size:0x1F4 -fn_8005A590 = .text:0x8005A590; // type:function size:0xD8 -fn_8005A668 = .text:0x8005A668; // type:function size:0x128 -fn_8005A790 = .text:0x8005A790; // type:function size:0x2D0 -fn_8005AA60 = .text:0x8005AA60; // type:function size:0xDC -fn_8005AB3C = .text:0x8005AB3C; // type:function size:0xFC -fn_8005AC38 = .text:0x8005AC38; // type:function size:0xCC -fn_8005AD04 = .text:0x8005AD04; // type:function size:0x78 -fn_8005AD7C = .text:0x8005AD7C; // type:function size:0x2E0 -fn_8005B05C = .text:0x8005B05C; // type:function size:0x64 -fn_8005B0C0 = .text:0x8005B0C0; // type:function size:0x9C -fn_8005B15C = .text:0x8005B15C; // type:function size:0xCC -fn_8005B228 = .text:0x8005B228; // type:function size:0xAC -fn_8005B2D4 = .text:0x8005B2D4; // type:function size:0x48 -fn_8005B31C = .text:0x8005B31C; // type:function size:0x74 -fn_8005B390 = .text:0x8005B390; // type:function size:0x48 -fn_8005B3D8 = .text:0x8005B3D8; // type:function size:0x524 -fn_8005B8FC = .text:0x8005B8FC; // type:function size:0x160 -fn_8005BA5C = .text:0x8005BA5C; // type:function size:0x160 -fn_8005BBBC = .text:0x8005BBBC; // type:function size:0xC -fn_8005BBC8 = .text:0x8005BBC8; // type:function size:0x7D0 -fn_8005C398 = .text:0x8005C398; // type:function size:0x8C -fn_8005C424 = .text:0x8005C424; // type:function size:0x28C -fn_8005C6B0 = .text:0x8005C6B0; // type:function size:0xC4 -fn_8005C774 = .text:0x8005C774; // type:function size:0x8C -fn_8005C800 = .text:0x8005C800; // type:function size:0x410 -fn_8005CC10 = .text:0x8005CC10; // type:function size:0x128 -fn_8005CD38 = .text:0x8005CD38; // type:function size:0xC -fn_8005CD44 = .text:0x8005CD44; // type:function size:0x44 -fn_8005CD88 = .text:0x8005CD88; // type:function size:0x50 -fn_8005CDD8 = .text:0x8005CDD8; // type:function size:0x3C -fn_8005CE14 = .text:0x8005CE14; // type:function size:0x48 -fn_8005CE5C = .text:0x8005CE5C; // type:function size:0x54 -fn_8005CEB0 = .text:0x8005CEB0; // type:function size:0x2AC -fn_8005D15C = .text:0x8005D15C; // type:function size:0x48 -fn_8005D1A4 = .text:0x8005D1A4; // type:function size:0x48 -fn_8005D1EC = .text:0x8005D1EC; // type:function size:0x48 -fn_8005D234 = .text:0x8005D234; // type:function size:0x20 -fn_8005D254 = .text:0x8005D254; // type:function size:0xA8 -fn_8005D2FC = .text:0x8005D2FC; // type:function size:0xBC -fn_8005D3B8 = .text:0x8005D3B8; // type:function size:0x28 -fn_8005D3E0 = .text:0x8005D3E0; // type:function size:0x50 -fn_8005D430 = .text:0x8005D430; // type:function size:0x30 -fn_8005D460 = .text:0x8005D460; // type:function size:0xB4 -fn_8005D514 = .text:0x8005D514; // type:function size:0x40 -fn_8005D554 = .text:0x8005D554; // type:function size:0x44 -fn_8005D598 = .text:0x8005D598; // type:function size:0x28 -fn_8005D5C0 = .text:0x8005D5C0; // type:function size:0x3C -fn_8005D5FC = .text:0x8005D5FC; // type:function size:0x3C -fn_8005D638 = .text:0x8005D638; // type:function size:0x28 -fn_8005D660 = .text:0x8005D660; // type:function size:0x28 -fn_8005D688 = .text:0x8005D688; // type:function size:0x24 -fn_8005D6AC = .text:0x8005D6AC; // type:function size:0x20 -fn_8005D6CC = .text:0x8005D6CC; // type:function size:0x24 -fn_8005D6F0 = .text:0x8005D6F0; // type:function size:0x24 -fn_8005D714 = .text:0x8005D714; // type:function size:0x3C -fn_8005D750 = .text:0x8005D750; // type:function size:0x48 -fn_8005D798 = .text:0x8005D798; // type:function size:0x230 -fn_8005D9C8 = .text:0x8005D9C8; // type:function size:0x20 -fn_8005D9E8 = .text:0x8005D9E8; // type:function size:0x2BC -fn_8005DCA4 = .text:0x8005DCA4; // type:function size:0x48 -fn_8005DCEC = .text:0x8005DCEC; // type:function size:0x58 -fn_8005DD44 = .text:0x8005DD44; // type:function size:0x24C -fn_8005DF90 = .text:0x8005DF90; // type:function size:0x350 -fn_8005E2E0 = .text:0x8005E2E0; // type:function size:0xE4 -fn_8005E3C4 = .text:0x8005E3C4; // type:function size:0x764 -fn_8005EB28 = .text:0x8005EB28; // type:function size:0x48 -fn_8005EB70 = .text:0x8005EB70; // type:function size:0x48 -fn_8005EBB8 = .text:0x8005EBB8; // type:function size:0x170 -fn_8005ED28 = .text:0x8005ED28; // type:function size:0x60 -fn_8005ED88 = .text:0x8005ED88; // type:function size:0xC4 -fn_8005EE4C = .text:0x8005EE4C; // type:function size:0x74 -fn_8005EEC0 = .text:0x8005EEC0; // type:function size:0x28 -fn_8005EEE8 = .text:0x8005EEE8; // type:function size:0x28 -fn_8005EF10 = .text:0x8005EF10; // type:function size:0x48 -fn_8005EF58 = .text:0x8005EF58; // type:function size:0x10C -fn_8005F064 = .text:0x8005F064; // type:function size:0x330 -fn_8005F394 = .text:0x8005F394; // type:function size:0x390 -fn_8005F724 = .text:0x8005F724; // type:function size:0x24 -fn_8005F748 = .text:0x8005F748; // type:function size:0x24 -fn_8005F76C = .text:0x8005F76C; // type:function size:0x50 -fn_8005F7BC = .text:0x8005F7BC; // type:function size:0x58 -fn_8005F814 = .text:0x8005F814; // type:function size:0x134 -fn_8005F948 = .text:0x8005F948; // type:function size:0x15C -fn_8005FAA4 = .text:0x8005FAA4; // type:function size:0x7C -fn_8005FB20 = .text:0x8005FB20; // type:function size:0x34 -fn_8005FB54 = .text:0x8005FB54; // type:function size:0x1C0 -fn_8005FD14 = .text:0x8005FD14; // type:function size:0x6C -fn_8005FD80 = .text:0x8005FD80; // type:function size:0xD4 -fn_8005FE54 = .text:0x8005FE54; // type:function size:0x174 -fn_8005FFC8 = .text:0x8005FFC8; // type:function size:0x5C -fn_80060024 = .text:0x80060024; // type:function size:0x34 -fn_80060058 = .text:0x80060058; // type:function size:0x178 -fn_800601D0 = .text:0x800601D0; // type:function size:0x350 -fn_80060520 = .text:0x80060520; // type:function size:0x164 -fn_80060684 = .text:0x80060684; // type:function size:0x24 -fn_800606A8 = .text:0x800606A8; // type:function size:0x88 -fn_80060730 = .text:0x80060730; // type:function size:0xB8 -fn_800607E8 = .text:0x800607E8; // type:function size:0x564 -fn_80060D4C = .text:0x80060D4C; // type:function size:0x14C -fn_80060E98 = .text:0x80060E98; // type:function size:0x254 -fn_800610EC = .text:0x800610EC; // type:function size:0x278 -fn_80061364 = .text:0x80061364; // type:function size:0x2AC -fn_80061610 = .text:0x80061610; // type:function size:0xAC -fn_800616BC = .text:0x800616BC; // type:function size:0x80 -fn_8006173C = .text:0x8006173C; // type:function size:0x54 -fn_80061790 = .text:0x80061790; // type:function size:0x3A4 -fn_80061B34 = .text:0x80061B34; // type:function size:0x38 -fn_80061B6C = .text:0x80061B6C; // type:function size:0x48 -fn_80061BB4 = .text:0x80061BB4; // type:function size:0xC -fn_80061BC0 = .text:0x80061BC0; // type:function size:0xC -fn_80061BCC = .text:0x80061BCC; // type:function size:0x78 -fn_80061C44 = .text:0x80061C44; // type:function size:0x78 -fn_80061CBC = .text:0x80061CBC; // type:function size:0x80 -fn_80061D3C = .text:0x80061D3C; // type:function size:0x16C -fn_80061EA8 = .text:0x80061EA8; // type:function size:0x588 -fn_80062430 = .text:0x80062430; // type:function size:0xFC -fn_8006252C = .text:0x8006252C; // type:function size:0x84 -fn_800625B0 = .text:0x800625B0; // type:function size:0x80 -fn_80062630 = .text:0x80062630; // type:function size:0x80 -fn_800626B0 = .text:0x800626B0; // type:function size:0xB4 -fn_80062764 = .text:0x80062764; // type:function size:0xB0 -fn_80062814 = .text:0x80062814; // type:function size:0xB4 -fn_800628C8 = .text:0x800628C8; // type:function size:0x58 -fn_80062920 = .text:0x80062920; // type:function size:0x60 -fn_80062980 = .text:0x80062980; // type:function size:0x40 -fn_800629C0 = .text:0x800629C0; // type:function size:0xC4 -fn_80062A84 = .text:0x80062A84; // type:function size:0x90 -fn_80062B14 = .text:0x80062B14; // type:function size:0x80 -fn_80062B94 = .text:0x80062B94; // type:function size:0x9C -fn_80062C30 = .text:0x80062C30; // type:function size:0xCC -fn_80062CFC = .text:0x80062CFC; // type:function size:0x80 -fn_80062D7C = .text:0x80062D7C; // type:function size:0x9C -fn_80062E18 = .text:0x80062E18; // type:function size:0xCC -fn_80062EE4 = .text:0x80062EE4; // type:function size:0x80 -fn_80062F64 = .text:0x80062F64; // type:function size:0xD4 -fn_80063038 = .text:0x80063038; // type:function size:0xA8 -fn_800630E0 = .text:0x800630E0; // type:function size:0x80 -fn_80063160 = .text:0x80063160; // type:function size:0x90 -fn_800631F0 = .text:0x800631F0; // type:function size:0x80 -fn_80063270 = .text:0x80063270; // type:function size:0x44 -fn_800632B4 = .text:0x800632B4; // type:function size:0x88 -fn_8006333C = .text:0x8006333C; // type:function size:0x80 -fn_800633BC = .text:0x800633BC; // type:function size:0x80 -fn_8006343C = .text:0x8006343C; // type:function size:0x78 -fn_800634B4 = .text:0x800634B4; // type:function size:0x88 -fn_8006353C = .text:0x8006353C; // type:function size:0xD0 -fn_8006360C = .text:0x8006360C; // type:function size:0xE0 -fn_800636EC = .text:0x800636EC; // type:function size:0x80 -fn_8006376C = .text:0x8006376C; // type:function size:0x80 -fn_800637EC = .text:0x800637EC; // type:function size:0x78 -fn_80063864 = .text:0x80063864; // type:function size:0x78 -fn_800638DC = .text:0x800638DC; // type:function size:0xA0 -fn_8006397C = .text:0x8006397C; // type:function size:0x80 -fn_800639FC = .text:0x800639FC; // type:function size:0x80 -fn_80063A7C = .text:0x80063A7C; // type:function size:0x34 -fn_80063AB0 = .text:0x80063AB0; // type:function size:0x2C -fn_80063ADC = .text:0x80063ADC; // type:function size:0x9C -fn_80063B78 = .text:0x80063B78; // type:function size:0x48 -fn_80063BC0 = .text:0x80063BC0; // type:function size:0x16C -fn_80063D2C = .text:0x80063D2C; // type:function size:0x40 -fn_80063D6C = .text:0x80063D6C; // type:function size:0x7C -fn_80063DE8 = .text:0x80063DE8; // type:function size:0x7C -fn_80063E64 = .text:0x80063E64; // type:function size:0xC4 -fn_80063F28 = .text:0x80063F28; // type:function size:0x18 -fn_80063F40 = .text:0x80063F40; // type:function size:0x18 -fn_80063F58 = .text:0x80063F58; // type:function size:0x15C -fn_800640B4 = .text:0x800640B4; // type:function size:0x160 -fn_80064214 = .text:0x80064214; // type:function size:0x420 -fn_80064634 = .text:0x80064634; // type:function size:0x80 -fn_800646B4 = .text:0x800646B4; // type:function size:0x18C -fn_80064840 = .text:0x80064840; // type:function size:0x134 -fn_80064974 = .text:0x80064974; // type:function size:0x10 -fn_80064984 = .text:0x80064984; // type:function size:0x10 -fn_80064994 = .text:0x80064994; // type:function size:0xC -fn_800649A0 = .text:0x800649A0; // type:function size:0x634 -fn_80064FD4 = .text:0x80064FD4; // type:function size:0x1A0 -fn_80065174 = .text:0x80065174; // type:function size:0x70 -fn_800651E4 = .text:0x800651E4; // type:function size:0x180 -fn_80065364 = .text:0x80065364; // type:function size:0x114 -fn_80065478 = .text:0x80065478; // type:function size:0x8E8 -fn_80065D60 = .text:0x80065D60; // type:function size:0xBF8 -fn_80066958 = .text:0x80066958; // type:function size:0xBC -fn_80066A14 = .text:0x80066A14; // type:function size:0x90 -fn_80066AA4 = .text:0x80066AA4; // type:function size:0x90 -fn_80066B34 = .text:0x80066B34; // type:function size:0x430 -fn_80066F64 = .text:0x80066F64; // type:function size:0x218 -fn_8006717C = .text:0x8006717C; // type:function size:0x1D4 -fn_80067350 = .text:0x80067350; // type:function size:0x54 -fn_800673A4 = .text:0x800673A4; // type:function size:0x3E4 -fn_80067788 = .text:0x80067788; // type:function size:0xF8 -fn_80067880 = .text:0x80067880; // type:function size:0x5A0 -fn_80067E20 = .text:0x80067E20; // type:function size:0x51C -fn_8006833C = .text:0x8006833C; // type:function size:0x2C -fn_80068368 = .text:0x80068368; // type:function size:0x138 -fn_800684A0 = .text:0x800684A0; // type:function size:0x38 -fn_800684D8 = .text:0x800684D8; // type:function size:0x10C -fn_800685E4 = .text:0x800685E4; // type:function size:0x194 -fn_80068778 = .text:0x80068778; // type:function size:0x278 -fn_800689F0 = .text:0x800689F0; // type:function size:0x6C -fn_80068A5C = .text:0x80068A5C; // type:function size:0x9C -fn_80068AF8 = .text:0x80068AF8; // type:function size:0x40 -fn_80068B38 = .text:0x80068B38; // type:function size:0x1C -fn_80068B54 = .text:0x80068B54; // type:function size:0x224 -fn_80068D78 = .text:0x80068D78; // type:function size:0x40 -fn_80068DB8 = .text:0x80068DB8; // type:function size:0x100 -fn_80068EB8 = .text:0x80068EB8; // type:function size:0x1A4 -fn_8006905C = .text:0x8006905C; // type:function size:0x128 -fn_80069184 = .text:0x80069184; // type:function size:0x8 -fn_8006918C = .text:0x8006918C; // type:function size:0x8 -fn_80069194 = .text:0x80069194; // type:function size:0x74 -fn_80069208 = .text:0x80069208; // type:function size:0x54 -fn_8006925C = .text:0x8006925C; // type:function size:0x4C -fn_800692A8 = .text:0x800692A8; // type:function size:0x44 -fn_800692EC = .text:0x800692EC; // type:function size:0x44 -fn_80069330 = .text:0x80069330; // type:function size:0x44 -fn_80069374 = .text:0x80069374; // type:function size:0x1F0 -fn_80069564 = .text:0x80069564; // type:function size:0x5C -fn_800695C0 = .text:0x800695C0; // type:function size:0x1294 -fn_8006A854 = .text:0x8006A854; // type:function size:0xA0 -fn_8006A8F4 = .text:0x8006A8F4; // type:function size:0x24C -fn_8006AB40 = .text:0x8006AB40; // type:function size:0x8 -fn_8006AB48 = .text:0x8006AB48; // type:function size:0x38C -fn_8006AED4 = .text:0x8006AED4; // type:function size:0x950 -fn_8006B824 = .text:0x8006B824; // type:function size:0x980 -fn_8006C1A4 = .text:0x8006C1A4; // type:function size:0xA48 -fn_8006CBEC = .text:0x8006CBEC; // type:function size:0x24C -fn_8006CE38 = .text:0x8006CE38; // type:function size:0xC0 -fn_8006CEF8 = .text:0x8006CEF8; // type:function size:0xF0 -fn_8006CFE8 = .text:0x8006CFE8; // type:function size:0xA0 -fn_8006D088 = .text:0x8006D088; // type:function size:0x70 -fn_8006D0F8 = .text:0x8006D0F8; // type:function size:0x4 -fn_8006D0FC = .text:0x8006D0FC; // type:function size:0xCC -fn_8006D1C8 = .text:0x8006D1C8; // type:function size:0x90 -fn_8006D258 = .text:0x8006D258; // type:function size:0x70 -fn_8006D2C8 = .text:0x8006D2C8; // type:function size:0x7C -fn_8006D344 = .text:0x8006D344; // type:function size:0x250 -fn_8006D594 = .text:0x8006D594; // type:function size:0x40 -fn_8006D5D4 = .text:0x8006D5D4; // type:function size:0x44 -fn_8006D618 = .text:0x8006D618; // type:function size:0x168 -fn_8006D780 = .text:0x8006D780; // type:function size:0x44 -fn_8006D7C4 = .text:0x8006D7C4; // type:function size:0x48 -fn_8006D80C = .text:0x8006D80C; // type:function size:0x60 -fn_8006D86C = .text:0x8006D86C; // type:function size:0x74 -fn_8006D8E0 = .text:0x8006D8E0; // type:function size:0x68 -fn_8006D948 = .text:0x8006D948; // type:function size:0x48 -fn_8006D990 = .text:0x8006D990; // type:function size:0x48 -fn_8006D9D8 = .text:0x8006D9D8; // type:function size:0x70 -fn_8006DA48 = .text:0x8006DA48; // type:function size:0x140 -fn_8006DB88 = .text:0x8006DB88; // type:function size:0x118 -fn_8006DCA0 = .text:0x8006DCA0; // type:function size:0xE8 -fn_8006DD88 = .text:0x8006DD88; // type:function size:0x7C -fn_8006DE04 = .text:0x8006DE04; // type:function size:0xA4 -fn_8006DEA8 = .text:0x8006DEA8; // type:function size:0x174 -fn_8006E01C = .text:0x8006E01C; // type:function size:0x50 -fn_8006E06C = .text:0x8006E06C; // type:function size:0x148 -fn_8006E1B4 = .text:0x8006E1B4; // type:function size:0x58 -fn_8006E20C = .text:0x8006E20C; // type:function size:0x58 -fn_8006E264 = .text:0x8006E264; // type:function size:0x84 -fn_8006E2E8 = .text:0x8006E2E8; // type:function size:0x94 -fn_8006E37C = .text:0x8006E37C; // type:function size:0x88 -fn_8006E404 = .text:0x8006E404; // type:function size:0x64 -fn_8006E468 = .text:0x8006E468; // type:function size:0xA4 -fn_8006E50C = .text:0x8006E50C; // type:function size:0x80 -fn_8006E58C = .text:0x8006E58C; // type:function size:0x100 -fn_8006E68C = .text:0x8006E68C; // type:function size:0x7C -fn_8006E708 = .text:0x8006E708; // type:function size:0xBC -fn_8006E7C4 = .text:0x8006E7C4; // type:function size:0x88 -fn_8006E84C = .text:0x8006E84C; // type:function size:0x64 -fn_8006E8B0 = .text:0x8006E8B0; // type:function size:0x14C -fn_8006E9FC = .text:0x8006E9FC; // type:function size:0x100 -fn_8006EAFC = .text:0x8006EAFC; // type:function size:0xB0 -fn_8006EBAC = .text:0x8006EBAC; // type:function size:0x8C -fn_8006EC38 = .text:0x8006EC38; // type:function size:0x8C -fn_8006ECC4 = .text:0x8006ECC4; // type:function size:0x54 -fn_8006ED18 = .text:0x8006ED18; // type:function size:0x30 -fn_8006ED48 = .text:0x8006ED48; // type:function size:0x50 -fn_8006ED98 = .text:0x8006ED98; // type:function size:0x78 -fn_8006EE10 = .text:0x8006EE10; // type:function size:0x50 -fn_8006EE60 = .text:0x8006EE60; // type:function size:0x78 -fn_8006EED8 = .text:0x8006EED8; // type:function size:0x50 -fn_8006EF28 = .text:0x8006EF28; // type:function size:0x78 -fn_8006EFA0 = .text:0x8006EFA0; // type:function size:0x74 -fn_8006F014 = .text:0x8006F014; // type:function size:0x74 -fn_8006F088 = .text:0x8006F088; // type:function size:0x74 -fn_8006F0FC = .text:0x8006F0FC; // type:function size:0x60 -fn_8006F15C = .text:0x8006F15C; // type:function size:0x4C -fn_8006F1A8 = .text:0x8006F1A8; // type:function size:0x64 -fn_8006F20C = .text:0x8006F20C; // type:function size:0x64 -fn_8006F270 = .text:0x8006F270; // type:function size:0x48 -fn_8006F2B8 = .text:0x8006F2B8; // type:function size:0x74 -fn_8006F32C = .text:0x8006F32C; // type:function size:0xC4 -fn_8006F3F0 = .text:0x8006F3F0; // type:function size:0x50 -fn_8006F440 = .text:0x8006F440; // type:function size:0x58 -fn_8006F498 = .text:0x8006F498; // type:function size:0x9C -fn_8006F534 = .text:0x8006F534; // type:function size:0x178 -fn_8006F6AC = .text:0x8006F6AC; // type:function size:0x194 -fn_8006F840 = .text:0x8006F840; // type:function size:0x12C -fn_8006F96C = .text:0x8006F96C; // type:function size:0x24 -fn_8006F990 = .text:0x8006F990; // type:function size:0x34 -fn_8006F9C4 = .text:0x8006F9C4; // type:function size:0x24 -fn_8006F9E8 = .text:0x8006F9E8; // type:function size:0x6C -fn_8006FA54 = .text:0x8006FA54; // type:function size:0x514 -fn_8006FF68 = .text:0x8006FF68; // type:function size:0xC -fn_8006FF74 = .text:0x8006FF74; // type:function size:0xC -fn_8006FF80 = .text:0x8006FF80; // type:function size:0x1A0 -fn_80070120 = .text:0x80070120; // type:function size:0x1A0 -fn_800702C0 = .text:0x800702C0; // type:function size:0x18 -fn_800702D8 = .text:0x800702D8; // type:function size:0x50 -fn_80070328 = .text:0x80070328; // type:function size:0x38 -fn_80070360 = .text:0x80070360; // type:function size:0x48 -fn_800703A8 = .text:0x800703A8; // type:function size:0x48 -fn_800703F0 = .text:0x800703F0; // type:function size:0x1C -fn_8007040C = .text:0x8007040C; // type:function size:0xC -fn_80070418 = .text:0x80070418; // type:function size:0x64 -fn_8007047C = .text:0x8007047C; // type:function size:0x50 -fn_800704CC = .text:0x800704CC; // type:function size:0x38 -fn_80070504 = .text:0x80070504; // type:function size:0x44 -fn_80070548 = .text:0x80070548; // type:function size:0x38 -fn_80070580 = .text:0x80070580; // type:function size:0x38 -fn_800705B8 = .text:0x800705B8; // type:function size:0x38 -fn_800705F0 = .text:0x800705F0; // type:function size:0x168 -fn_80070758 = .text:0x80070758; // type:function size:0x214 -fn_8007096C = .text:0x8007096C; // type:function size:0x8 -fn_80070974 = .text:0x80070974; // type:function size:0x68 -fn_800709DC = .text:0x800709DC; // type:function size:0xD0 -fn_80070AAC = .text:0x80070AAC; // type:function size:0x2C -fn_80070AD8 = .text:0x80070AD8; // type:function size:0x60 -fn_80070B38 = .text:0x80070B38; // type:function size:0x5C -fn_80070B94 = .text:0x80070B94; // type:function size:0x90 -fn_80070C24 = .text:0x80070C24; // type:function size:0x94 -fn_80070CB8 = .text:0x80070CB8; // type:function size:0x54 -fn_80070D0C = .text:0x80070D0C; // type:function size:0x50 -fn_80070D5C = .text:0x80070D5C; // type:function size:0x74 -fn_80070DD0 = .text:0x80070DD0; // type:function size:0x78 -fn_80070E48 = .text:0x80070E48; // type:function size:0x38 -fn_80070E80 = .text:0x80070E80; // type:function size:0x38 -fn_80070EB8 = .text:0x80070EB8; // type:function size:0x28 -fn_80070EE0 = .text:0x80070EE0; // type:function size:0x38 -fn_80070F18 = .text:0x80070F18; // type:function size:0x28 -fn_80070F40 = .text:0x80070F40; // type:function size:0x38 -fn_80070F78 = .text:0x80070F78; // type:function size:0x28 -fn_80070FA0 = .text:0x80070FA0; // type:function size:0x38 -fn_80070FD8 = .text:0x80070FD8; // type:function size:0x28 -fn_80071000 = .text:0x80071000; // type:function size:0xE8 -fn_800710E8 = .text:0x800710E8; // type:function size:0x100 -fn_800711E8 = .text:0x800711E8; // type:function size:0x120 -fn_80071308 = .text:0x80071308; // type:function size:0x74 -fn_8007137C = .text:0x8007137C; // type:function size:0xD0 -fn_8007144C = .text:0x8007144C; // type:function size:0x6C -fn_800714B8 = .text:0x800714B8; // type:function size:0x68 -fn_80071520 = .text:0x80071520; // type:function size:0x16C -fn_8007168C = .text:0x8007168C; // type:function size:0x220 -fn_800718AC = .text:0x800718AC; // type:function size:0x248 -fn_80071AF4 = .text:0x80071AF4; // type:function size:0x158 -fn_80071C4C = .text:0x80071C4C; // type:function size:0x314 -fn_80071F60 = .text:0x80071F60; // type:function size:0x198 -fn_800720F8 = .text:0x800720F8; // type:function size:0x7C -fn_80072174 = .text:0x80072174; // type:function size:0x74 -fn_800721E8 = .text:0x800721E8; // type:function size:0x304 -fn_800724EC = .text:0x800724EC; // type:function size:0xA8 -fn_80072594 = .text:0x80072594; // type:function size:0x134 -fn_800726C8 = .text:0x800726C8; // type:function size:0x3C -fn_80072704 = .text:0x80072704; // type:function size:0xF0 -fn_800727F4 = .text:0x800727F4; // type:function size:0x128 -fn_8007291C = .text:0x8007291C; // type:function size:0x34 -fn_80072950 = .text:0x80072950; // type:function size:0xC -fn_8007295C = .text:0x8007295C; // type:function size:0x3C -fn_80072998 = .text:0x80072998; // type:function size:0xC8 -fn_80072A60 = .text:0x80072A60; // type:function size:0x398 -fn_80072DF8 = .text:0x80072DF8; // type:function size:0x170 -fn_80072F68 = .text:0x80072F68; // type:function size:0x158 -fn_800730C0 = .text:0x800730C0; // type:function size:0x80 -fn_80073140 = .text:0x80073140; // type:function size:0x178 -fn_800732B8 = .text:0x800732B8; // type:function size:0x4C -fn_80073304 = .text:0x80073304; // type:function size:0xE0 -fn_800733E4 = .text:0x800733E4; // type:function size:0x38 -fn_8007341C = .text:0x8007341C; // type:function size:0x374 -fn_80073790 = .text:0x80073790; // type:function size:0x24 -fn_800737B4 = .text:0x800737B4; // type:function size:0x400 -fn_80073BB4 = .text:0x80073BB4; // type:function size:0x30 -fn_80073BE4 = .text:0x80073BE4; // type:function size:0x8 -fn_80073BEC = .text:0x80073BEC; // type:function size:0x8 -fn_80073BF4 = .text:0x80073BF4; // type:function size:0x8 -fn_80073BFC = .text:0x80073BFC; // type:function size:0x48 -fn_80073C44 = .text:0x80073C44; // type:function size:0x60 -fn_80073CA4 = .text:0x80073CA4; // type:function size:0x10 -fn_80073CB4 = .text:0x80073CB4; // type:function size:0x44 -fn_80073CF8 = .text:0x80073CF8; // type:function size:0x18 -fn_80073D10 = .text:0x80073D10; // type:function size:0x18 -fn_80073D28 = .text:0x80073D28; // type:function size:0x48 -fn_80073D70 = .text:0x80073D70; // type:function size:0x48 -fn_80073DB8 = .text:0x80073DB8; // type:function size:0x48 -fn_80073E00 = .text:0x80073E00; // type:function size:0x8C -fn_80073E8C = .text:0x80073E8C; // type:function size:0x2C8 -fn_80074154 = .text:0x80074154; // type:function size:0x8C -fn_800741E0 = .text:0x800741E0; // type:function size:0xA0 -fn_80074280 = .text:0x80074280; // type:function size:0x134 -fn_800743B4 = .text:0x800743B4; // type:function size:0x134 -fn_800744E8 = .text:0x800744E8; // type:function size:0x148 -fn_80074630 = .text:0x80074630; // type:function size:0x104 -fn_80074734 = .text:0x80074734; // type:function size:0x110 -fn_80074844 = .text:0x80074844; // type:function size:0x1FC -fn_80074A40 = .text:0x80074A40; // type:function size:0x1BC -fn_80074BFC = .text:0x80074BFC; // type:function size:0x4AC -fn_800750A8 = .text:0x800750A8; // type:function size:0x344 -fn_800753EC = .text:0x800753EC; // type:function size:0x9C -fn_80075488 = .text:0x80075488; // type:function size:0xF0 -fn_80075578 = .text:0x80075578; // type:function size:0x1C -fn_80075594 = .text:0x80075594; // type:function size:0x3C -fn_800755D0 = .text:0x800755D0; // type:function size:0x110 -fn_800756E0 = .text:0x800756E0; // type:function size:0x474 -fn_80075B54 = .text:0x80075B54; // type:function size:0x2A4 -fn_80075DF8 = .text:0x80075DF8; // type:function size:0x180 -fn_80075F78 = .text:0x80075F78; // type:function size:0x268 -fn_800761E0 = .text:0x800761E0; // type:function size:0x5C -fn_8007623C = .text:0x8007623C; // type:function size:0x48 -fn_80076284 = .text:0x80076284; // type:function size:0x9E8 -fn_80076C6C = .text:0x80076C6C; // type:function size:0x174 -fn_80076DE0 = .text:0x80076DE0; // type:function size:0x2C -fn_80076E0C = .text:0x80076E0C; // type:function size:0xD0 -fn_80076EDC = .text:0x80076EDC; // type:function size:0x750 -fn_8007762C = .text:0x8007762C; // type:function size:0x70 -fn_8007769C = .text:0x8007769C; // type:function size:0x8 -fn_800776A4 = .text:0x800776A4; // type:function size:0x8 -fn_800776AC = .text:0x800776AC; // type:function size:0xD4 -fn_80077780 = .text:0x80077780; // type:function size:0xA0 -fn_80077820 = .text:0x80077820; // type:function size:0x9C -fn_800778BC = .text:0x800778BC; // type:function size:0x800 -fn_800780BC = .text:0x800780BC; // type:function size:0xD4 -fn_80078190 = .text:0x80078190; // type:function size:0x1B4 -fn_80078344 = .text:0x80078344; // type:function size:0xBC -fn_80078400 = .text:0x80078400; // type:function size:0x13C -fn_8007853C = .text:0x8007853C; // type:function size:0x314 -fn_80078850 = .text:0x80078850; // type:function size:0x168 -fn_800789B8 = .text:0x800789B8; // type:function size:0x2C -fn_800789E4 = .text:0x800789E4; // type:function size:0x18C -fn_80078B70 = .text:0x80078B70; // type:function size:0x168 -fn_80078CD8 = .text:0x80078CD8; // type:function size:0x34C -fn_80079024 = .text:0x80079024; // type:function size:0x144 -fn_80079168 = .text:0x80079168; // type:function size:0x6C -fn_800791D4 = .text:0x800791D4; // type:function size:0x280 -fn_80079454 = .text:0x80079454; // type:function size:0xA0 -fn_800794F4 = .text:0x800794F4; // type:function size:0x14C -fn_80079640 = .text:0x80079640; // type:function size:0x1C8 -fn_80079808 = .text:0x80079808; // type:function size:0x60 -fn_80079868 = .text:0x80079868; // type:function size:0x158 -fn_800799C0 = .text:0x800799C0; // type:function size:0x30 -fn_800799F0 = .text:0x800799F0; // type:function size:0x188 -fn_80079B78 = .text:0x80079B78; // type:function size:0xC -fn_80079B84 = .text:0x80079B84; // type:function size:0x38 -fn_80079BBC = .text:0x80079BBC; // type:function size:0x260 -fn_80079E1C = .text:0x80079E1C; // type:function size:0x104 -fn_80079F20 = .text:0x80079F20; // type:function size:0x30 -fn_80079F50 = .text:0x80079F50; // type:function size:0x4DC -fn_8007A42C = .text:0x8007A42C; // type:function size:0x8 -fn_8007A434 = .text:0x8007A434; // type:function size:0x8 -fn_8007A43C = .text:0x8007A43C; // type:function size:0x8C -fn_8007A4C8 = .text:0x8007A4C8; // type:function size:0x16C -fn_8007A634 = .text:0x8007A634; // type:function size:0x3B4 -fn_8007A9E8 = .text:0x8007A9E8; // type:function size:0x1FC -fn_8007ABE4 = .text:0x8007ABE4; // type:function size:0x64 -fn_8007AC48 = .text:0x8007AC48; // type:function size:0xB0 -fn_8007ACF8 = .text:0x8007ACF8; // type:function size:0x798 -fn_8007B490 = .text:0x8007B490; // type:function size:0x20C -fn_8007B69C = .text:0x8007B69C; // type:function size:0x1BC -fn_8007B858 = .text:0x8007B858; // type:function size:0xF0 -fn_8007B948 = .text:0x8007B948; // type:function size:0x3C8 -fn_8007BD10 = .text:0x8007BD10; // type:function size:0x140 -fn_8007BE50 = .text:0x8007BE50; // type:function size:0x914 -fn_8007C764 = .text:0x8007C764; // type:function size:0xC8 -fn_8007C82C = .text:0x8007C82C; // type:function size:0x27C -fn_8007CAA8 = .text:0x8007CAA8; // type:function size:0x30C -fn_8007CDB4 = .text:0x8007CDB4; // type:function size:0x3AC -fn_8007D160 = .text:0x8007D160; // type:function size:0x6C -fn_8007D1CC = .text:0x8007D1CC; // type:function size:0x21C -fn_8007D3E8 = .text:0x8007D3E8; // type:function size:0x68 -fn_8007D450 = .text:0x8007D450; // type:function size:0x288 -fn_8007D6D8 = .text:0x8007D6D8; // type:function size:0x3DC -fn_8007DAB4 = .text:0x8007DAB4; // type:function size:0x14C -fn_8007DC00 = .text:0x8007DC00; // type:function size:0xD0 -fn_8007DCD0 = .text:0x8007DCD0; // type:function size:0x160 -fn_8007DE30 = .text:0x8007DE30; // type:function size:0xA8 -fn_8007DED8 = .text:0x8007DED8; // type:function size:0x84 -fn_8007DF5C = .text:0x8007DF5C; // type:function size:0x6B0 -fn_8007E60C = .text:0x8007E60C; // type:function size:0x440 -fn_8007EA4C = .text:0x8007EA4C; // type:function size:0x338 -fn_8007ED84 = .text:0x8007ED84; // type:function size:0x68 -fn_8007EDEC = .text:0x8007EDEC; // type:function size:0x4C0 -fn_8007F2AC = .text:0x8007F2AC; // type:function size:0xA4 -fn_8007F350 = .text:0x8007F350; // type:function size:0xFC -fn_8007F44C = .text:0x8007F44C; // type:function size:0x38 -fn_8007F484 = .text:0x8007F484; // type:function size:0x2BC -fn_8007F740 = .text:0x8007F740; // type:function size:0x184 -fn_8007F8C4 = .text:0x8007F8C4; // type:function size:0x19C -fn_8007FA60 = .text:0x8007FA60; // type:function size:0x1E8 -fn_8007FC48 = .text:0x8007FC48; // type:function size:0x6C -fn_8007FCB4 = .text:0x8007FCB4; // type:function size:0x60 -fn_8007FD14 = .text:0x8007FD14; // type:function size:0x23C -fn_8007FF50 = .text:0x8007FF50; // type:function size:0x198 -fn_800800E8 = .text:0x800800E8; // type:function size:0x1B8 -fn_800802A0 = .text:0x800802A0; // type:function size:0x29C -fn_8008053C = .text:0x8008053C; // type:function size:0x1A8 -fn_800806E4 = .text:0x800806E4; // type:function size:0x260 -fn_80080944 = .text:0x80080944; // type:function size:0xA4 -fn_800809E8 = .text:0x800809E8; // type:function size:0x250 -fn_80080C38 = .text:0x80080C38; // type:function size:0x5C -fn_80080C94 = .text:0x80080C94; // type:function size:0x118 -fn_80080DAC = .text:0x80080DAC; // type:function size:0xBC -fn_80080E68 = .text:0x80080E68; // type:function size:0x1B0 -fn_80081018 = .text:0x80081018; // type:function size:0xA4 -fn_800810BC = .text:0x800810BC; // type:function size:0x200 -fn_800812BC = .text:0x800812BC; // type:function size:0x11C -fn_800813D8 = .text:0x800813D8; // type:function size:0x34 -fn_8008140C = .text:0x8008140C; // type:function size:0x50 -fn_8008145C = .text:0x8008145C; // type:function size:0x18 -fn_80081474 = .text:0x80081474; // type:function size:0x1C -fn_80081490 = .text:0x80081490; // type:function size:0xFC -fn_8008158C = .text:0x8008158C; // type:function size:0x754 -fn_80081CE0 = .text:0x80081CE0; // type:function size:0x314 -fn_80081FF4 = .text:0x80081FF4; // type:function size:0x164 -fn_80082158 = .text:0x80082158; // type:function size:0x120 -fn_80082278 = .text:0x80082278; // type:function size:0x10C -fn_80082384 = .text:0x80082384; // type:function size:0x38 -fn_800823BC = .text:0x800823BC; // type:function size:0xBC -fn_80082478 = .text:0x80082478; // type:function size:0x224 -fn_8008269C = .text:0x8008269C; // type:function size:0x10 -fn_800826AC = .text:0x800826AC; // type:function size:0x148 -fn_800827F4 = .text:0x800827F4; // type:function size:0x8C -fn_80082880 = .text:0x80082880; // type:function size:0xA4 -fn_80082924 = .text:0x80082924; // type:function size:0x38C -fn_80082CB0 = .text:0x80082CB0; // type:function size:0x58 -fn_80082D08 = .text:0x80082D08; // type:function size:0x118 -fn_80082E20 = .text:0x80082E20; // type:function size:0x114 -fn_80082F34 = .text:0x80082F34; // type:function size:0x160 -fn_80083094 = .text:0x80083094; // type:function size:0x68 -fn_800830FC = .text:0x800830FC; // type:function size:0xD4 -fn_800831D0 = .text:0x800831D0; // type:function size:0x2EC -fn_800834BC = .text:0x800834BC; // type:function size:0x64 -fn_80083520 = .text:0x80083520; // type:function size:0x34 -fn_80083554 = .text:0x80083554; // type:function size:0x54 -fn_800835A8 = .text:0x800835A8; // type:function size:0x34 -fn_800835DC = .text:0x800835DC; // type:function size:0x5C -fn_80083638 = .text:0x80083638; // type:function size:0x58 -fn_80083690 = .text:0x80083690; // type:function size:0x60 -fn_800836F0 = .text:0x800836F0; // type:function size:0x240 -fn_80083930 = .text:0x80083930; // type:function size:0xD4 -fn_80083A04 = .text:0x80083A04; // type:function size:0x38 -fn_80083A3C = .text:0x80083A3C; // type:function size:0x48 -fn_80083A84 = .text:0x80083A84; // type:function size:0x48 -fn_80083ACC = .text:0x80083ACC; // type:function size:0xA8 -fn_80083B74 = .text:0x80083B74; // type:function size:0x8 -fn_80083B7C = .text:0x80083B7C; // type:function size:0xCC -fn_80083C48 = .text:0x80083C48; // type:function size:0x8F4 -fn_8008453C = .text:0x8008453C; // type:function size:0x84 -fn_800845C0 = .text:0x800845C0; // type:function size:0x160 -fn_80084720 = .text:0x80084720; // type:function size:0x144 -fn_80084864 = .text:0x80084864; // type:function size:0x10C -fn_80084970 = .text:0x80084970; // type:function size:0x180 -fn_80084AF0 = .text:0x80084AF0; // type:function size:0x204 -fn_80084CF4 = .text:0x80084CF4; // type:function size:0x38 -fn_80084D2C = .text:0x80084D2C; // type:function size:0xB4 -fn_80084DE0 = .text:0x80084DE0; // type:function size:0x40 -fn_80084E20 = .text:0x80084E20; // type:function size:0x31C -fn_8008513C = .text:0x8008513C; // type:function size:0x628 -fn_80085764 = .text:0x80085764; // type:function size:0x130 -fn_80085894 = .text:0x80085894; // type:function size:0x24 -fn_800858B8 = .text:0x800858B8; // type:function size:0x1EC -fn_80085AA4 = .text:0x80085AA4; // type:function size:0x38 -fn_80085ADC = .text:0x80085ADC; // type:function size:0x84 -fn_80085B60 = .text:0x80085B60; // type:function size:0x4C -fn_80085BAC = .text:0x80085BAC; // type:function size:0x490 -fn_8008603C = .text:0x8008603C; // type:function size:0x280 -fn_800862BC = .text:0x800862BC; // type:function size:0x1C8 -fn_80086484 = .text:0x80086484; // type:function size:0x60 -fn_800864E4 = .text:0x800864E4; // type:function size:0x130 -fn_80086614 = .text:0x80086614; // type:function size:0x60 -fn_80086674 = .text:0x80086674; // type:function size:0x7E4 -fn_80086E58 = .text:0x80086E58; // type:function size:0x40 -fn_80086E98 = .text:0x80086E98; // type:function size:0x90 -fn_80086F28 = .text:0x80086F28; // type:function size:0xE0 -fn_80087008 = .text:0x80087008; // type:function size:0x84 -fn_8008708C = .text:0x8008708C; // type:function size:0x94 -fn_80087120 = .text:0x80087120; // type:function size:0x8C -fn_800871AC = .text:0x800871AC; // type:function size:0x58 -fn_80087204 = .text:0x80087204; // type:function size:0xC0 -fn_800872C4 = .text:0x800872C4; // type:function size:0x200 -fn_800874C4 = .text:0x800874C4; // type:function size:0xAC -fn_80087570 = .text:0x80087570; // type:function size:0x68 -fn_800875D8 = .text:0x800875D8; // type:function size:0xB4 -fn_8008768C = .text:0x8008768C; // type:function size:0x390 -fn_80087A1C = .text:0x80087A1C; // type:function size:0x110 -fn_80087B2C = .text:0x80087B2C; // type:function size:0x248 -fn_80087D74 = .text:0x80087D74; // type:function size:0x110 -fn_80087E84 = .text:0x80087E84; // type:function size:0x88 -fn_80087F0C = .text:0x80087F0C; // type:function size:0x4C -fn_80087F58 = .text:0x80087F58; // type:function size:0x90 -fn_80087FE8 = .text:0x80087FE8; // type:function size:0x98 -fn_80088080 = .text:0x80088080; // type:function size:0x48 -fn_800880C8 = .text:0x800880C8; // type:function size:0x1C -fn_800880E4 = .text:0x800880E4; // type:function size:0x48 -fn_8008812C = .text:0x8008812C; // type:function size:0xFC -fn_80088228 = .text:0x80088228; // type:function size:0x24 -fn_8008824C = .text:0x8008824C; // type:function size:0x134 -fn_80088380 = .text:0x80088380; // type:function size:0x138 -fn_800884B8 = .text:0x800884B8; // type:function size:0x50 -fn_80088508 = .text:0x80088508; // type:function size:0x44 -fn_8008854C = .text:0x8008854C; // type:function size:0x34 -fn_80088580 = .text:0x80088580; // type:function size:0x6C -fn_800885EC = .text:0x800885EC; // type:function size:0x158 -fn_80088744 = .text:0x80088744; // type:function size:0x94 -fn_800887D8 = .text:0x800887D8; // type:function size:0x6C -fn_80088844 = .text:0x80088844; // type:function size:0x90 -fn_800888D4 = .text:0x800888D4; // type:function size:0x20C -fn_80088AE0 = .text:0x80088AE0; // type:function size:0x98 -fn_80088B78 = .text:0x80088B78; // type:function size:0x36C -fn_80088EE4 = .text:0x80088EE4; // type:function size:0x8C -fn_80088F70 = .text:0x80088F70; // type:function size:0x210 -fn_80089180 = .text:0x80089180; // type:function size:0x40 -fn_800891C0 = .text:0x800891C0; // type:function size:0x180 -fn_80089340 = .text:0x80089340; // type:function size:0x140 -fn_80089480 = .text:0x80089480; // type:function size:0xB8 -fn_80089538 = .text:0x80089538; // type:function size:0x29C -fn_800897D4 = .text:0x800897D4; // type:function size:0x74 -fn_80089848 = .text:0x80089848; // type:function size:0x1C -fn_80089864 = .text:0x80089864; // type:function size:0x48 -fn_800898AC = .text:0x800898AC; // type:function size:0xC -fn_800898B8 = .text:0x800898B8; // type:function size:0xFC -fn_800899B4 = .text:0x800899B4; // type:function size:0x15C -fn_80089B10 = .text:0x80089B10; // type:function size:0x110 -fn_80089C20 = .text:0x80089C20; // type:function size:0x30 -fn_80089C50 = .text:0x80089C50; // type:function size:0x19C -fn_80089DEC = .text:0x80089DEC; // type:function size:0x1E4 -fn_80089FD0 = .text:0x80089FD0; // type:function size:0xD4 -fn_8008A0A4 = .text:0x8008A0A4; // type:function size:0xD8 -fn_8008A17C = .text:0x8008A17C; // type:function size:0xEC -fn_8008A268 = .text:0x8008A268; // type:function size:0xC8 -fn_8008A330 = .text:0x8008A330; // type:function size:0x80 -fn_8008A3B0 = .text:0x8008A3B0; // type:function size:0x4A8 -fn_8008A858 = .text:0x8008A858; // type:function size:0x370 -fn_8008ABC8 = .text:0x8008ABC8; // type:function size:0x174 -fn_8008AD3C = .text:0x8008AD3C; // type:function size:0x78 -fn_8008ADB4 = .text:0x8008ADB4; // type:function size:0x74 -fn_8008AE28 = .text:0x8008AE28; // type:function size:0xE8 -fn_8008AF10 = .text:0x8008AF10; // type:function size:0x650 -fn_8008B560 = .text:0x8008B560; // type:function size:0x3AC -fn_8008B90C = .text:0x8008B90C; // type:function size:0x420 -fn_8008BD2C = .text:0x8008BD2C; // type:function size:0x248 -fn_8008BF74 = .text:0x8008BF74; // type:function size:0xA8 -fn_8008C01C = .text:0x8008C01C; // type:function size:0x104 -fn_8008C120 = .text:0x8008C120; // type:function size:0x400 -fn_8008C520 = .text:0x8008C520; // type:function size:0x388 -fn_8008C8A8 = .text:0x8008C8A8; // type:function size:0x674 -fn_8008CF1C = .text:0x8008CF1C; // type:function size:0x50 -fn_8008CF6C = .text:0x8008CF6C; // type:function size:0x38 -fn_8008CFA4 = .text:0x8008CFA4; // type:function size:0x5A4 -fn_8008D548 = .text:0x8008D548; // type:function size:0x58 -fn_8008D5A0 = .text:0x8008D5A0; // type:function size:0x38 -fn_8008D5D8 = .text:0x8008D5D8; // type:function size:0xA4 -fn_8008D67C = .text:0x8008D67C; // type:function size:0x350 -fn_8008D9CC = .text:0x8008D9CC; // type:function size:0x148 -fn_8008DB14 = .text:0x8008DB14; // type:function size:0x44 -fn_8008DB58 = .text:0x8008DB58; // type:function size:0x84 -fn_8008DBDC = .text:0x8008DBDC; // type:function size:0x358 -fn_8008DF34 = .text:0x8008DF34; // type:function size:0x54 -fn_8008DF88 = .text:0x8008DF88; // type:function size:0x1F4 -fn_8008E17C = .text:0x8008E17C; // type:function size:0x12C -fn_8008E2A8 = .text:0x8008E2A8; // type:function size:0x38 -fn_8008E2E0 = .text:0x8008E2E0; // type:function size:0x120 -fn_8008E400 = .text:0x8008E400; // type:function size:0xCC -fn_8008E4CC = .text:0x8008E4CC; // type:function size:0x140 -fn_8008E60C = .text:0x8008E60C; // type:function size:0x2C -fn_8008E638 = .text:0x8008E638; // type:function size:0x2C -fn_8008E664 = .text:0x8008E664; // type:function size:0x48 -fn_8008E6AC = .text:0x8008E6AC; // type:function size:0x94 -fn_8008E740 = .text:0x8008E740; // type:function size:0x9C -fn_8008E7DC = .text:0x8008E7DC; // type:function size:0x10C -fn_8008E8E8 = .text:0x8008E8E8; // type:function size:0x130 -fn_8008EA18 = .text:0x8008EA18; // type:function size:0x74 -fn_8008EA8C = .text:0x8008EA8C; // type:function size:0x1C -fn_8008EAA8 = .text:0x8008EAA8; // type:function size:0x6C -fn_8008EB14 = .text:0x8008EB14; // type:function size:0x64 -fn_8008EB78 = .text:0x8008EB78; // type:function size:0x64 -fn_8008EBDC = .text:0x8008EBDC; // type:function size:0xC -fn_8008EBE8 = .text:0x8008EBE8; // type:function size:0xC -fn_8008EBF4 = .text:0x8008EBF4; // type:function size:0x180 -fn_8008ED74 = .text:0x8008ED74; // type:function size:0x1BC -fn_8008EF30 = .text:0x8008EF30; // type:function size:0x220 -fn_8008F150 = .text:0x8008F150; // type:function size:0x374 -fn_8008F4C4 = .text:0x8008F4C4; // type:function size:0x204 -fn_8008F6C8 = .text:0x8008F6C8; // type:function size:0xA4 -fn_8008F76C = .text:0x8008F76C; // type:function size:0xA4 -fn_8008F810 = .text:0x8008F810; // type:function size:0xA4 -fn_8008F8B4 = .text:0x8008F8B4; // type:function size:0xA4 -fn_8008F958 = .text:0x8008F958; // type:function size:0x584 -fn_8008FEDC = .text:0x8008FEDC; // type:function size:0xD34 -fn_80090C10 = .text:0x80090C10; // type:function size:0xEBC -fn_80091ACC = .text:0x80091ACC; // type:function size:0x4FC -fn_80091FC8 = .text:0x80091FC8; // type:function size:0xC8 -fn_80092090 = .text:0x80092090; // type:function size:0xE3C -fn_80092ECC = .text:0x80092ECC; // type:function size:0x3D4 -fn_800932A0 = .text:0x800932A0; // type:function size:0x1370 -fn_80094610 = .text:0x80094610; // type:function size:0x488 -fn_80094A98 = .text:0x80094A98; // type:function size:0x388 -fn_80094E20 = .text:0x80094E20; // type:function size:0xB0 -fn_80094ED0 = .text:0x80094ED0; // type:function size:0x7A4 -fn_80095674 = .text:0x80095674; // type:function size:0x9D8 -fn_8009604C = .text:0x8009604C; // type:function size:0x628 -fn_80096674 = .text:0x80096674; // type:function size:0x3C -fn_800966B0 = .text:0x800966B0; // type:function size:0x13C -fn_800967EC = .text:0x800967EC; // type:function size:0xDC -fn_800968C8 = .text:0x800968C8; // type:function size:0x584 -fn_80096E4C = .text:0x80096E4C; // type:function size:0x1C -fn_80096E68 = .text:0x80096E68; // type:function size:0x2C -fn_80096E94 = .text:0x80096E94; // type:function size:0x2C -fn_80096EC0 = .text:0x80096EC0; // type:function size:0x2C -fn_80096EEC = .text:0x80096EEC; // type:function size:0x2C -fn_80096F18 = .text:0x80096F18; // type:function size:0x284 -fn_8009719C = .text:0x8009719C; // type:function size:0x144 -fn_800972E0 = .text:0x800972E0; // type:function size:0x28C -fn_8009756C = .text:0x8009756C; // type:function size:0x208 -fn_80097774 = .text:0x80097774; // type:function size:0x1DC -fn_80097950 = .text:0x80097950; // type:function size:0x30 -fn_80097980 = .text:0x80097980; // type:function size:0x148 -fn_80097AC8 = .text:0x80097AC8; // type:function size:0x1B4 -fn_80097C7C = .text:0x80097C7C; // type:function size:0x250 -fn_80097ECC = .text:0x80097ECC; // type:function size:0x220 -fn_800980EC = .text:0x800980EC; // type:function size:0x2B0 -fn_8009839C = .text:0x8009839C; // type:function size:0x160 -fn_800984FC = .text:0x800984FC; // type:function size:0xB8 -fn_800985B4 = .text:0x800985B4; // type:function size:0x1C -fn_800985D0 = .text:0x800985D0; // type:function size:0x148 -fn_80098718 = .text:0x80098718; // type:function size:0x210 -fn_80098928 = .text:0x80098928; // type:function size:0x228 -fn_80098B50 = .text:0x80098B50; // type:function size:0x230 -fn_80098D80 = .text:0x80098D80; // type:function size:0x270 -fn_80098FF0 = .text:0x80098FF0; // type:function size:0x58 -fn_80099048 = .text:0x80099048; // type:function size:0x44 -fn_8009908C = .text:0x8009908C; // type:function size:0x150 -fn_800991DC = .text:0x800991DC; // type:function size:0x128 -fn_80099304 = .text:0x80099304; // type:function size:0x34 -fn_80099338 = .text:0x80099338; // type:function size:0x5C -fn_80099394 = .text:0x80099394; // type:function size:0xD4 -fn_80099468 = .text:0x80099468; // type:function size:0x1C -fn_80099484 = .text:0x80099484; // type:function size:0x18C -fn_80099610 = .text:0x80099610; // type:function size:0x1E8 -fn_800997F8 = .text:0x800997F8; // type:function size:0x38 -fn_80099830 = .text:0x80099830; // type:function size:0x24 -fn_80099854 = .text:0x80099854; // type:function size:0xEC -fn_80099940 = .text:0x80099940; // type:function size:0x1C8 -fn_80099B08 = .text:0x80099B08; // type:function size:0x108 -fn_80099C10 = .text:0x80099C10; // type:function size:0x160 -fn_80099D70 = .text:0x80099D70; // type:function size:0x1AC -fn_80099F1C = .text:0x80099F1C; // type:function size:0xB8 -fn_80099FD4 = .text:0x80099FD4; // type:function size:0x90 -fn_8009A064 = .text:0x8009A064; // type:function size:0x160 -fn_8009A1C4 = .text:0x8009A1C4; // type:function size:0xE4 -fn_8009A2A8 = .text:0x8009A2A8; // type:function size:0xCC -fn_8009A374 = .text:0x8009A374; // type:function size:0x40 -fn_8009A3B4 = .text:0x8009A3B4; // type:function size:0x188 -fn_8009A53C = .text:0x8009A53C; // type:function size:0x2C4 -fn_8009A800 = .text:0x8009A800; // type:function size:0x2B8 -fn_8009AAB8 = .text:0x8009AAB8; // type:function size:0x24 -fn_8009AADC = .text:0x8009AADC; // type:function size:0xC -fn_8009AAE8 = .text:0x8009AAE8; // type:function size:0x10 -fn_8009AAF8 = .text:0x8009AAF8; // type:function size:0x14C -fn_8009AC44 = .text:0x8009AC44; // type:function size:0x120 -fn_8009AD64 = .text:0x8009AD64; // type:function size:0xB4 -fn_8009AE18 = .text:0x8009AE18; // type:function size:0x88 -fn_8009AEA0 = .text:0x8009AEA0; // type:function size:0x80 -fn_8009AF20 = .text:0x8009AF20; // type:function size:0xD8 -fn_8009AFF8 = .text:0x8009AFF8; // type:function size:0x6C -fn_8009B064 = .text:0x8009B064; // type:function size:0x60 -fn_8009B0C4 = .text:0x8009B0C4; // type:function size:0x124 -fn_8009B1E8 = .text:0x8009B1E8; // type:function size:0x2C -fn_8009B214 = .text:0x8009B214; // type:function size:0x708 -fn_8009B91C = .text:0x8009B91C; // type:function size:0x1D4 -fn_8009BAF0 = .text:0x8009BAF0; // type:function size:0x1FC -fn_8009BCEC = .text:0x8009BCEC; // type:function size:0x24 -fn_8009BD10 = .text:0x8009BD10; // type:function size:0x2D0 -fn_8009BFE0 = .text:0x8009BFE0; // type:function size:0x1E8 -fn_8009C1C8 = .text:0x8009C1C8; // type:function size:0x1A0 -fn_8009C368 = .text:0x8009C368; // type:function size:0x64 -fn_8009C3CC = .text:0x8009C3CC; // type:function size:0x88 -fn_8009C454 = .text:0x8009C454; // type:function size:0x124 -fn_8009C578 = .text:0x8009C578; // type:function size:0x8C -fn_8009C604 = .text:0x8009C604; // type:function size:0x260 -fn_8009C864 = .text:0x8009C864; // type:function size:0x128 -fn_8009C98C = .text:0x8009C98C; // type:function size:0x12C -fn_8009CAB8 = .text:0x8009CAB8; // type:function size:0x58 -fn_8009CB10 = .text:0x8009CB10; // type:function size:0x64 -fn_8009CB74 = .text:0x8009CB74; // type:function size:0x24 -fn_8009CB98 = .text:0x8009CB98; // type:function size:0x10 -fn_8009CBA8 = .text:0x8009CBA8; // type:function size:0x34 -fn_8009CBDC = .text:0x8009CBDC; // type:function size:0x15C -fn_8009CD38 = .text:0x8009CD38; // type:function size:0x124 -fn_8009CE5C = .text:0x8009CE5C; // type:function size:0x74 -fn_8009CED0 = .text:0x8009CED0; // type:function size:0xC -fn_8009CEDC = .text:0x8009CEDC; // type:function size:0x340 -fn_8009D21C = .text:0x8009D21C; // type:function size:0xF8 -fn_8009D314 = .text:0x8009D314; // type:function size:0x160 -fn_8009D474 = .text:0x8009D474; // type:function size:0x5C -fn_8009D4D0 = .text:0x8009D4D0; // type:function size:0x198 -fn_8009D668 = .text:0x8009D668; // type:function size:0x18C -fn_8009D7F4 = .text:0x8009D7F4; // type:function size:0x20C -fn_8009DA00 = .text:0x8009DA00; // type:function size:0x78 -fn_8009DA78 = .text:0x8009DA78; // type:function size:0x78 -fn_8009DAF0 = .text:0x8009DAF0; // type:function size:0x68 -fn_8009DB58 = .text:0x8009DB58; // type:function size:0x68 -fn_8009DBC0 = .text:0x8009DBC0; // type:function size:0x11C -fn_8009DCDC = .text:0x8009DCDC; // type:function size:0x2C -fn_8009DD08 = .text:0x8009DD08; // type:function size:0x2A8 -fn_8009DFB0 = .text:0x8009DFB0; // type:function size:0x1D4 -fn_8009E184 = .text:0x8009E184; // type:function size:0xE8 -fn_8009E26C = .text:0x8009E26C; // type:function size:0x280 -fn_8009E4EC = .text:0x8009E4EC; // type:function size:0xC0 -fn_8009E5AC = .text:0x8009E5AC; // type:function size:0xA8 -fn_8009E654 = .text:0x8009E654; // type:function size:0x94 -fn_8009E6E8 = .text:0x8009E6E8; // type:function size:0x10 -fn_8009E6F8 = .text:0x8009E6F8; // type:function size:0xBC -fn_8009E7B4 = .text:0x8009E7B4; // type:function size:0x1D4 -fn_8009E988 = .text:0x8009E988; // type:function size:0xAC -fn_8009EA34 = .text:0x8009EA34; // type:function size:0x28 -fn_8009EA5C = .text:0x8009EA5C; // type:function size:0x4C -fn_8009EAA8 = .text:0x8009EAA8; // type:function size:0x300 -fn_8009EDA8 = .text:0x8009EDA8; // type:function size:0x4A0 -fn_8009F248 = .text:0x8009F248; // type:function size:0x9C -fn_8009F2E4 = .text:0x8009F2E4; // type:function size:0x1DC -fn_8009F4C0 = .text:0x8009F4C0; // type:function size:0x358 -fn_8009F818 = .text:0x8009F818; // type:function size:0x24 -fn_8009F83C = .text:0x8009F83C; // type:function size:0x2C -fn_8009F868 = .text:0x8009F868; // type:function size:0x214 -fn_8009FA7C = .text:0x8009FA7C; // type:function size:0x15C -fn_8009FBD8 = .text:0x8009FBD8; // type:function size:0x110 -fn_8009FCE8 = .text:0x8009FCE8; // type:function size:0x68 -fn_8009FD50 = .text:0x8009FD50; // type:function size:0x1E0 -fn_8009FF30 = .text:0x8009FF30; // type:function size:0x10C -fn_800A003C = .text:0x800A003C; // type:function size:0x190 -fn_800A01CC = .text:0x800A01CC; // type:function size:0x328 -fn_800A04F4 = .text:0x800A04F4; // type:function size:0x170 -fn_800A0664 = .text:0x800A0664; // type:function size:0x24 -fn_800A0688 = .text:0x800A0688; // type:function size:0x128 -fn_800A07B0 = .text:0x800A07B0; // type:function size:0x54 -fn_800A0804 = .text:0x800A0804; // type:function size:0x104 -fn_800A0908 = .text:0x800A0908; // type:function size:0x218 -fn_800A0B20 = .text:0x800A0B20; // type:function size:0xF4 -fn_800A0C14 = .text:0x800A0C14; // type:function size:0x178 -fn_800A0D8C = .text:0x800A0D8C; // type:function size:0x1B0 -fn_800A0F3C = .text:0x800A0F3C; // type:function size:0xDC -fn_800A1018 = .text:0x800A1018; // type:function size:0x9C -fn_800A10B4 = .text:0x800A10B4; // type:function size:0x68 -fn_800A111C = .text:0x800A111C; // type:function size:0x168 -fn_800A1284 = .text:0x800A1284; // type:function size:0x184 -fn_800A1408 = .text:0x800A1408; // type:function size:0x1C -fn_800A1424 = .text:0x800A1424; // type:function size:0x30 -fn_800A1454 = .text:0x800A1454; // type:function size:0x20 -fn_800A1474 = .text:0x800A1474; // type:function size:0x1B0 -fn_800A1624 = .text:0x800A1624; // type:function size:0x60 -fn_800A1684 = .text:0x800A1684; // type:function size:0x1C -fn_800A16A0 = .text:0x800A16A0; // type:function size:0x6FC -fn_800A1D9C = .text:0x800A1D9C; // type:function size:0x3B0 -fn_800A214C = .text:0x800A214C; // type:function size:0x3A8 -fn_800A24F4 = .text:0x800A24F4; // type:function size:0x388 -fn_800A287C = .text:0x800A287C; // type:function size:0x3A4 -fn_800A2C20 = .text:0x800A2C20; // type:function size:0x194 -fn_800A2DB4 = .text:0x800A2DB4; // type:function size:0x198 -fn_800A2F4C = .text:0x800A2F4C; // type:function size:0x174 -fn_800A30C0 = .text:0x800A30C0; // type:function size:0x200 -fn_800A32C0 = .text:0x800A32C0; // type:function size:0x20C -fn_800A34CC = .text:0x800A34CC; // type:function size:0x1C8 -fn_800A3694 = .text:0x800A3694; // type:function size:0x204 -fn_800A3898 = .text:0x800A3898; // type:function size:0xA8 -fn_800A3940 = .text:0x800A3940; // type:function size:0x430 -fn_800A3D70 = .text:0x800A3D70; // type:function size:0x8FC -fn_800A466C = .text:0x800A466C; // type:function size:0x74 -fn_800A46E0 = .text:0x800A46E0; // type:function size:0xC8 -fn_800A47A8 = .text:0x800A47A8; // type:function size:0xD0 -fn_800A4878 = .text:0x800A4878; // type:function size:0x2E4 -fn_800A4B5C = .text:0x800A4B5C; // type:function size:0x8 -fn_800A4B64 = .text:0x800A4B64; // type:function size:0x8 -fn_800A4B6C = .text:0x800A4B6C; // type:function size:0xB4 -fn_800A4C20 = .text:0x800A4C20; // type:function size:0x50 -fn_800A4C70 = .text:0x800A4C70; // type:function size:0x94 -fn_800A4D04 = .text:0x800A4D04; // type:function size:0x538 -fn_800A523C = .text:0x800A523C; // type:function size:0xF0 -fn_800A532C = .text:0x800A532C; // type:function size:0xFC -fn_800A5428 = .text:0x800A5428; // type:function size:0x3A0 -fn_800A57C8 = .text:0x800A57C8; // type:function size:0x124 -fn_800A58EC = .text:0x800A58EC; // type:function size:0xB0 -fn_800A599C = .text:0x800A599C; // type:function size:0xD4 -fn_800A5A70 = .text:0x800A5A70; // type:function size:0x68 -fn_800A5AD8 = .text:0x800A5AD8; // type:function size:0x2AC -fn_800A5D84 = .text:0x800A5D84; // type:function size:0x2AC -fn_800A6030 = .text:0x800A6030; // type:function size:0x188 -fn_800A61B8 = .text:0x800A61B8; // type:function size:0x16C -fn_800A6324 = .text:0x800A6324; // type:function size:0x164 -fn_800A6488 = .text:0x800A6488; // type:function size:0x70 -fn_800A64F8 = .text:0x800A64F8; // type:function size:0x60 -fn_800A6558 = .text:0x800A6558; // type:function size:0x1A8 -fn_800A6700 = .text:0x800A6700; // type:function size:0x3D4 -fn_800A6AD4 = .text:0x800A6AD4; // type:function size:0x64 -fn_800A6B38 = .text:0x800A6B38; // type:function size:0x84 -fn_800A6BBC = .text:0x800A6BBC; // type:function size:0x400 -fn_800A6FBC = .text:0x800A6FBC; // type:function size:0x2FC -fn_800A72B8 = .text:0x800A72B8; // type:function size:0x17C -fn_800A7434 = .text:0x800A7434; // type:function size:0x2D8 -fn_800A770C = .text:0x800A770C; // type:function size:0x188 -fn_800A7894 = .text:0x800A7894; // type:function size:0x1C8 -fn_800A7A5C = .text:0x800A7A5C; // type:function size:0xEC -fn_800A7B48 = .text:0x800A7B48; // type:function size:0x1A8 -fn_800A7CF0 = .text:0x800A7CF0; // type:function size:0x454 -fn_800A8144 = .text:0x800A8144; // type:function size:0xD8 -fn_800A821C = .text:0x800A821C; // type:function size:0x250 -fn_800A846C = .text:0x800A846C; // type:function size:0xC8 -fn_800A8534 = .text:0x800A8534; // type:function size:0x3C -fn_800A8570 = .text:0x800A8570; // type:function size:0x6D4 -fn_800A8C44 = .text:0x800A8C44; // type:function size:0x318 -fn_800A8F5C = .text:0x800A8F5C; // type:function size:0xA4 -fn_800A9000 = .text:0x800A9000; // type:function size:0xDC -fn_800A90DC = .text:0x800A90DC; // type:function size:0x21C -fn_800A92F8 = .text:0x800A92F8; // type:function size:0x84 -fn_800A937C = .text:0x800A937C; // type:function size:0x30 -fn_800A93AC = .text:0x800A93AC; // type:function size:0x1D4 -fn_800A9580 = .text:0x800A9580; // type:function size:0x184 -fn_800A9704 = .text:0x800A9704; // type:function size:0x48 -fn_800A974C = .text:0x800A974C; // type:function size:0x10C -fn_800A9858 = .text:0x800A9858; // type:function size:0xA4 -fn_800A98FC = .text:0x800A98FC; // type:function size:0xCC0 -fn_800AA5BC = .text:0x800AA5BC; // type:function size:0xA4 -fn_800AA660 = .text:0x800AA660; // type:function size:0x1FC -fn_800AA85C = .text:0x800AA85C; // type:function size:0xD4 -fn_800AA930 = .text:0x800AA930; // type:function size:0x170 -fn_800AAAA0 = .text:0x800AAAA0; // type:function size:0x88 -fn_800AAB28 = .text:0x800AAB28; // type:function size:0x20 -fn_800AAB48 = .text:0x800AAB48; // type:function size:0x24 -fn_800AAB6C = .text:0x800AAB6C; // type:function size:0x2D0 -fn_800AAE3C = .text:0x800AAE3C; // type:function size:0x1D8 -fn_800AB014 = .text:0x800AB014; // type:function size:0x950 -fn_800AB964 = .text:0x800AB964; // type:function size:0x4C -fn_800AB9B0 = .text:0x800AB9B0; // type:function size:0x488 -fn_800ABE38 = .text:0x800ABE38; // type:function size:0x2A4 -fn_800AC0DC = .text:0x800AC0DC; // type:function size:0x1C0 -fn_800AC29C = .text:0x800AC29C; // type:function size:0x7C -fn_800AC318 = .text:0x800AC318; // type:function size:0x78 -fn_800AC390 = .text:0x800AC390; // type:function size:0xB0 -fn_800AC440 = .text:0x800AC440; // type:function size:0x1CC -fn_800AC60C = .text:0x800AC60C; // type:function size:0x228 -fn_800AC834 = .text:0x800AC834; // type:function size:0x1C -fn_800AC850 = .text:0x800AC850; // type:function size:0xC0 -fn_800AC910 = .text:0x800AC910; // type:function size:0x180 -fn_800ACA90 = .text:0x800ACA90; // type:function size:0x2B0 -fn_800ACD40 = .text:0x800ACD40; // type:function size:0x44 -fn_800ACD84 = .text:0x800ACD84; // type:function size:0x38 -fn_800ACDBC = .text:0x800ACDBC; // type:function size:0x38 -fn_800ACDF4 = .text:0x800ACDF4; // type:function size:0x44 -fn_800ACE38 = .text:0x800ACE38; // type:function size:0x2B4 -fn_800AD0EC = .text:0x800AD0EC; // type:function size:0x340 -fn_800AD42C = .text:0x800AD42C; // type:function size:0x58 -fn_800AD484 = .text:0x800AD484; // type:function size:0x58 -fn_800AD4DC = .text:0x800AD4DC; // type:function size:0x38 -fn_800AD514 = .text:0x800AD514; // type:function size:0x260 -fn_800AD774 = .text:0x800AD774; // type:function size:0x88 -fn_800AD7FC = .text:0x800AD7FC; // type:function size:0x3C0 -fn_800ADBBC = .text:0x800ADBBC; // type:function size:0x108 -fn_800ADCC4 = .text:0x800ADCC4; // type:function size:0xABC -fn_800AE780 = .text:0x800AE780; // type:function size:0x168 -fn_800AE8E8 = .text:0x800AE8E8; // type:function size:0x58 -fn_800AE940 = .text:0x800AE940; // type:function size:0x4F4 -fn_800AEE34 = .text:0x800AEE34; // type:function size:0x310 -fn_800AF144 = .text:0x800AF144; // type:function size:0x264 -fn_800AF3A8 = .text:0x800AF3A8; // type:function size:0x110 -fn_800AF4B8 = .text:0x800AF4B8; // type:function size:0x48 -fn_800AF500 = .text:0x800AF500; // type:function size:0xD4 -fn_800AF5D4 = .text:0x800AF5D4; // type:function size:0x1CC -fn_800AF7A0 = .text:0x800AF7A0; // type:function size:0x178 -fn_800AF918 = .text:0x800AF918; // type:function size:0x238 -fn_800AFB50 = .text:0x800AFB50; // type:function size:0x3B0 -fn_800AFF00 = .text:0x800AFF00; // type:function size:0x154 -fn_800B0054 = .text:0x800B0054; // type:function size:0x390 -fn_800B03E4 = .text:0x800B03E4; // type:function size:0x3E4 -fn_800B07C8 = .text:0x800B07C8; // type:function size:0x240 -fn_800B0A08 = .text:0x800B0A08; // type:function size:0x210 -fn_800B0C18 = .text:0x800B0C18; // type:function size:0x70 -fn_800B0C88 = .text:0x800B0C88; // type:function size:0x1B8 -fn_800B0E40 = .text:0x800B0E40; // type:function size:0x12C -fn_800B0F6C = .text:0x800B0F6C; // type:function size:0x1A4 -fn_800B1110 = .text:0x800B1110; // type:function size:0x10C -fn_800B121C = .text:0x800B121C; // type:function size:0xDC -fn_800B12F8 = .text:0x800B12F8; // type:function size:0x34 -fn_800B132C = .text:0x800B132C; // type:function size:0x12C -fn_800B1458 = .text:0x800B1458; // type:function size:0x4C -fn_800B14A4 = .text:0x800B14A4; // type:function size:0xC0 -fn_800B1564 = .text:0x800B1564; // type:function size:0x60 -fn_800B15C4 = .text:0x800B15C4; // type:function size:0x180 -fn_800B1744 = .text:0x800B1744; // type:function size:0xE4 -fn_800B1828 = .text:0x800B1828; // type:function size:0xB4 -fn_800B18DC = .text:0x800B18DC; // type:function size:0xD0 -fn_800B19AC = .text:0x800B19AC; // type:function size:0x30 -fn_800B19DC = .text:0x800B19DC; // type:function size:0xAC -fn_800B1A88 = .text:0x800B1A88; // type:function size:0xF0 -fn_800B1B78 = .text:0x800B1B78; // type:function size:0x74C -fn_800B22C4 = .text:0x800B22C4; // type:function size:0x3E4 -fn_800B26A8 = .text:0x800B26A8; // type:function size:0x65C -fn_800B2D04 = .text:0x800B2D04; // type:function size:0x488 -fn_800B318C = .text:0x800B318C; // type:function size:0x45C -fn_800B35E8 = .text:0x800B35E8; // type:function size:0x4E0 -fn_800B3AC8 = .text:0x800B3AC8; // type:function size:0x34 -fn_800B3AFC = .text:0x800B3AFC; // type:function size:0x80 -fn_800B3B7C = .text:0x800B3B7C; // type:function size:0x4C -fn_800B3BC8 = .text:0x800B3BC8; // type:function size:0x8 -fn_800B3BD0 = .text:0x800B3BD0; // type:function size:0x44 -fn_800B3C14 = .text:0x800B3C14; // type:function size:0x78 -fn_800B3C8C = .text:0x800B3C8C; // type:function size:0x10C -fn_800B3D98 = .text:0x800B3D98; // type:function size:0xBC -fn_800B3E54 = .text:0x800B3E54; // type:function size:0x10 -fn_800B3E64 = .text:0x800B3E64; // type:function size:0x40 -fn_800B3EA4 = .text:0x800B3EA4; // type:function size:0x8 -fn_800B3EAC = .text:0x800B3EAC; // type:function size:0x8 -fn_800B3EB4 = .text:0x800B3EB4; // type:function size:0x30 +SeqMakeWord = .text:0x80036D50; // type:function size:0x1E4 scope:local +SeqLoadFontChar = .text:0x80036F34; // type:function size:0x23C scope:local +SeqInitMGBasic = .text:0x80037170; // type:function size:0x194 scope:local +SeqUpdateMGBasic = .text:0x80037304; // type:function size:0x9D0 scope:local +SeqInitMGCommon = .text:0x80037CD4; // type:function size:0x2A4 scope:local +SeqUpdateMGBattle = .text:0x80037F78; // type:function size:0xDA4 scope:local +SeqUpdateMG1vs3 = .text:0x80038D1C; // type:function size:0xDA4 scope:local +SeqUpdateMGStory = .text:0x80039AC0; // type:function size:0xBB8 scope:local +SeqUpdateMG2vs2 = .text:0x8003A678; // type:function size:0xAB4 scope:local +SeqInitFlip = .text:0x8003B12C; // type:function size:0x3C4 scope:local +SeqUpdateFlip = .text:0x8003B4F0; // type:function size:0x91C scope:local +SeqUpdateMGBowser = .text:0x8003BE0C; // type:function size:0xC84 scope:local +SeqInitDraw = .text:0x8003CA90; // type:function size:0xDC scope:local +SeqUpdateDraw = .text:0x8003CB6C; // type:function size:0x3DC scope:local +SeqInitWin = .text:0x8003CF48; // type:function size:0x6B8 scope:local +SeqUpdateWin = .text:0x8003D600; // type:function size:0x708 scope:local +SeqInitRecord = .text:0x8003DD08; // type:function size:0x774 scope:local +SeqUpdateRecord = .text:0x8003E47C; // type:function size:0x304 scope:local +MGSeqPauseInit = .text:0x8003E780; // type:function size:0x6C +PauseProc = .text:0x8003E7EC; // type:function size:0x94C scope:local +MGSeqPauseKill = .text:0x8003F138; // type:function size:0xC +MGSeqPauseEnableCtrl = .text:0x8003F144; // type:function size:0x40 +MGSeqPracticeInit = .text:0x8003F184; // type:function size:0xDC +PracticeProc = .text:0x8003F260; // type:function size:0x234 scope:local +SeqPlayStartFX = .text:0x8003F494; // type:function size:0xD4 scope:local +MGSeqPracticeExitCheck = .text:0x8003F568; // type:function size:0x128 +espInit = .text:0x8003F690; // type:function size:0xA0 +espEntry = .text:0x8003F730; // type:function size:0x1B0 +espKill = .text:0x8003F8E0; // type:function size:0x98 +espGrpIDGet = .text:0x8003F978; // type:function size:0x8 +espDispOn = .text:0x8003F980; // type:function size:0x44 +espDispOff = .text:0x8003F9C4; // type:function size:0x44 +espAttrSet = .text:0x8003FA08; // type:function size:0x48 +espAttrReset = .text:0x8003FA50; // type:function size:0x48 +espPosSet = .text:0x8003FA98; // type:function size:0x50 +espScaleSet = .text:0x8003FAE8; // type:function size:0x50 +espZRotSet = .text:0x8003FB38; // type:function size:0x48 +espTPLvlSet = .text:0x8003FB80; // type:function size:0x48 +espColorSet = .text:0x8003FBC8; // type:function size:0x58 +espSpeedSet = .text:0x8003FC20; // type:function size:0x48 +espBankSet = .text:0x8003FC68; // type:function size:0x48 +espDrawNoSet = .text:0x8003FCB0; // type:function size:0x48 +espPriSet = .text:0x8003FCF8; // type:function size:0x48 +fn_8003FF68 = .text:0x8003FD40; // type:function size:0x268 +fn_800401D0 = .text:0x8003FFA8; // type:function size:0x12C +fn_800402FC = .text:0x800400D4; // type:function size:0x78 +fn_80040374 = .text:0x8004014C; // type:function size:0x98 +fn_8004040C = .text:0x800401E4; // type:function size:0xF4 +GetClusterCurve = .text:0x800402D8; // type:function size:0xA8 +GetClusterWeightCurve = .text:0x80040380; // type:function size:0xA8 +SetClusterMain = .text:0x80040428; // type:function size:0x3A0 +ClusterProc = .text:0x800407C8; // type:function size:0x160 +ClusterMotionExec = .text:0x80040928; // type:function size:0x210 +SetShapeMain = .text:0x80040B38; // type:function size:0x36C scope:local +ShapeProc = .text:0x80040EA4; // type:function size:0xA4 +WipeInit = .text:0x80040F48; // type:function size:0xB4 +WipeExecAlways = .text:0x80040FFC; // type:function size:0x288 +WipeCreate = .text:0x80041284; // type:function size:0x12C +WipeColorSet = .text:0x800413B0; // type:function size:0x28 +WipeStatGet = .text:0x800413D8; // type:function size:0x10 +WipeDummyFade = .text:0x800413E8; // type:function size:0x8 scope:local +WipeNormalFade = .text:0x800413F0; // type:function size:0xFC scope:local +WipeColorFill = .text:0x800414EC; // type:function size:0x31C scope:local +WipeCrossFade = .text:0x80041808; // type:function size:0x184 scope:local +WipeFrameStill = .text:0x8004198C; // type:function size:0x4C8 scope:local +HuWindowInit = .text:0x80041E54; // type:function size:0x74 +HuWinInit = .text:0x80041EC8; // type:function size:0x214 +HuWinCreate = .text:0x800420DC; // type:function size:0x54C +HuWinKill = .text:0x80042628; // type:function size:0xA4 +HuWinAllKill = .text:0x800426CC; // type:function size:0x1AC +MesDispFunc = .text:0x80042878; // type:function size:0x7D0 scope:local +winBGMake = .text:0x80043048; // type:function size:0x480 scope:local +HuWinProc = .text:0x800434C8; // type:function size:0xF4 scope:local +HuWinDrawMes = .text:0x800435BC; // type:function size:0x1044 scope:local +HuWinCR = .text:0x80044600; // type:function size:0x54 scope:local +_HuWinHomeClear = .text:0x80044654; // type:function size:0x90 scope:local +HuWinHomeClear = .text:0x800446E4; // type:function size:0xA4 +HuWinKeyWaitEntry = .text:0x80044788; // type:function size:0x88 +HuWinKeyWait = .text:0x80044810; // type:function size:0x10C scope:local +HuWinSpcFontEntry = .text:0x8004491C; // type:function size:0x1A4 scope:local +HuWinSpcFontClear = .text:0x80044AC0; // type:function size:0x80 scope:local +HuWinChoice = .text:0x80044B40; // type:function size:0xA90 scope:local +HuWinActivePadGet = .text:0x800455D0; // type:function size:0x68 +HuWinActiveKeyGetX = .text:0x80045638; // type:function size:0xE8 +HuWinPosSet = .text:0x80045720; // type:function size:0x6C +HuWinScaleSet = .text:0x8004578C; // type:function size:0x6C +HuWinZRotSet = .text:0x800457F8; // type:function size:0x58 +HuWinCenterPosSet = .text:0x80045850; // type:function size:0xAC +HuWinDrawNoSet = .text:0x800458FC; // type:function size:0x4C +HuWinScissorSet = .text:0x80045948; // type:function size:0x64 +HuWinPriSet = .text:0x800459AC; // type:function size:0xB8 +HuWinAttrSet = .text:0x80045A64; // type:function size:0x34 +HuWinAttrReset = .text:0x80045A98; // type:function size:0x34 +HuWinStatGet = .text:0x80045ACC; // type:function size:0x2C +HuWinMesColSet = .text:0x80045AF8; // type:function size:0x3C +HuWinMesPalSet = .text:0x80045B34; // type:function size:0x58 +HuWinBGTPLvlSet = .text:0x80045B8C; // type:function size:0x50 +HuWinBGColSet = .text:0x80045BDC; // type:function size:0x60 +HuWinMesSpeedSet = .text:0x80045C3C; // type:function size:0x2C +HuWinMesRead = .text:0x80045C68; // type:function size:0xC4 +HuWinMesSet = .text:0x80045D2C; // type:function size:0xC8 +HuWinInsertMesSet = .text:0x80045DF4; // type:function size:0xD8 +HuWinChoiceGet = .text:0x80045ECC; // type:function size:0x27C +HuWinChoiceNumGet = .text:0x80046148; // type:function size:0x2C +HuWinChoiceDisable = .text:0x80046174; // type:function size:0x38 +HuWinChoiceNowGet = .text:0x800461AC; // type:function size:0x40 +HuWinMesWait = .text:0x800461EC; // type:function size:0x50 +HuWinAnimSet = .text:0x8004623C; // type:function size:0x8C +HuWinSprSet = .text:0x800462C8; // type:function size:0xF0 +HuWinSprPosSet = .text:0x800463B8; // type:function size:0x88 +HuWinSprPriSet = .text:0x80046440; // type:function size:0x6C +HuWinSprIDGet = .text:0x800464AC; // type:function size:0x38 +HuWinSprKill = .text:0x800464E4; // type:function size:0x68 +HuWinDispOff = .text:0x8004654C; // type:function size:0x90 +HuWinDispOn = .text:0x800465DC; // type:function size:0x90 +HuWinComKeyWait = .text:0x8004666C; // type:function size:0xC0 +HuWinComKeySet = .text:0x8004672C; // type:function size:0x44 +_HuWinComKeySet = .text:0x80046770; // type:function size:0x98 +HuWinComKeyGet = .text:0x80046808; // type:function size:0x1D4 +HuWinComKeyReset = .text:0x800469DC; // type:function size:0x10 +HuWinMesMaxSizeGet = .text:0x800469EC; // type:function size:0x170 +HuWinInsertMesSizeGet = .text:0x80046B5C; // type:function size:0x54 +HuWinMesSizeCancelCRSet = .text:0x80046BB0; // type:function size:0x8 +HuWinMesMaxSizeBetGet = .text:0x80046BB8; // type:function size:0x114 +GetMesMaxSizeSub = .text:0x80046CCC; // type:function size:0x2A0 scope:local +GetMesMaxSizeSub2 = .text:0x80046F6C; // type:function size:0x1CC scope:local +HuWinKeyWaitNumGet = .text:0x80047138; // type:function size:0x88 +HuWinPushKeySet = .text:0x800471C0; // type:function size:0x2C +HuWinDisablePlayerSet = .text:0x800471EC; // type:function size:0x34 +HuWinDisablePlayerReset = .text:0x80047220; // type:function size:0x38 +HuWinExCreate = .text:0x80047258; // type:function size:0x4C +HuWinExCreateStyled = .text:0x800472A4; // type:function size:0x228 +HuWinExAnimIn = .text:0x800474CC; // type:function size:0x3B0 +HuWinExAnimOut = .text:0x8004787C; // type:function size:0x304 +HuWinExCleanup = .text:0x80047B80; // type:function size:0xA4 +HuWinExAnimPopIn = .text:0x80047C24; // type:function size:0x264 +MessData_MesPtrGet = .text:0x80047E88; // type:function size:0xE8 +HuCardInit = .text:0x80047F70; // type:function size:0x34 +HuCardCheck = .text:0x80047FA4; // type:function size:0xC4 +HuCardSlotCheck = .text:0x80048068; // type:function size:0x58 +HuCardMount = .text:0x800480C0; // type:function size:0xEC +HuCardUnMount = .text:0x800481AC; // type:function size:0x28 +HuCardFormat = .text:0x800481D4; // type:function size:0x50 +MountCallBack = .text:0x80048224; // type:function size:0x1C scope:local +HuCardOpen = .text:0x80048240; // type:function size:0x70 +HuCardRead = .text:0x800482B0; // type:function size:0x68 +HuCardCreate = .text:0x80048318; // type:function size:0x100 +HuCardClose = .text:0x80048418; // type:function size:0x38 +HuCardWrite = .text:0x80048450; // type:function size:0x50 +HuCardDelete = .text:0x800484A0; // type:function size:0x40 +HuCardSectorSizeGet = .text:0x800484E0; // type:function size:0x4C +HuCardFreeSpaceGet = .text:0x8004852C; // type:function size:0x48 +HuARInit = .text:0x80048574; // type:function size:0x148 +HuARMalloc = .text:0x800486BC; // type:function size:0x16C +HuARFree = .text:0x80048828; // type:function size:0x16C +HuAMemDump = .text:0x80048994; // type:function size:0xA8 +HuAR_DVDtoARAM = .text:0x80048A3C; // type:function size:0x160 +ArqCallBack = .text:0x80048B9C; // type:function size:0x10 scope:local +HuAR_MRAMtoARAM = .text:0x80048BAC; // type:function size:0x2C +HuAR_MRAMtoARAM2 = .text:0x80048BD8; // type:function size:0x140 +HuAR_ARAMtoMRAM = .text:0x80048D18; // type:function size:0x2C +HuAR_ARAMtoMRAMNum = .text:0x80048D44; // type:function size:0x1F0 +ArqCallBackAM = .text:0x80048F34; // type:function size:0x44 scope:local +HuARDMACheck = .text:0x80048F78; // type:function size:0x8 +HuARDirCheck = .text:0x80048F80; // type:function size:0x58 +HuARDirFree = .text:0x80048FD8; // type:function size:0x68 +HuAR_ARAMtoMRAMFileRead = .text:0x80049040; // type:function size:0x390 +ArqCallBackAMFileRead = .text:0x800493D0; // type:function size:0x10 scope:local +CharManInit = .text:0x800493E0; // type:function size:0x134 +CharAMemPtrGet = .text:0x80049514; // type:function size:0x1C +CharARAMOpen = .text:0x80049530; // type:function size:0x98 +CharARAMClose = .text:0x800495C8; // type:function size:0x58 +CharKill = .text:0x80049620; // type:function size:0x428 +CharKillAll = .text:0x80049A48; // type:function size:0x3C +CharModelCreate = .text:0x80049A84; // type:function size:0x180 +UpdateChar = .text:0x80049C04; // type:function size:0x20C scope:local +UpdateCharAnim = .text:0x80049E10; // type:function size:0x173C scope:local +PlayCharVoice = .text:0x8004B54C; // type:function size:0xB0 scope:local +InitEffect = .text:0x8004B5FC; // type:function size:0x254 scope:local +CreateEffectDust = .text:0x8004B850; // type:function size:0xB0 scope:local +CreateEffectSmoke = .text:0x8004B900; // type:function size:0xB0 scope:local +CreateEffectDot = .text:0x8004B9B0; // type:function size:0xB0 scope:local +CreateEffectStar = .text:0x8004BA60; // type:function size:0xB0 scope:local +CreateEffectWarn = .text:0x8004BB10; // type:function size:0xB0 scope:local +CreateEffectBird = .text:0x8004BBC0; // type:function size:0xB0 scope:local +CreateEffect = .text:0x8004BC70; // type:function size:0x1CC scope:local +UpdateEffect = .text:0x8004BE3C; // type:function size:0x4A0 scope:local +RotateEffect = .text:0x8004C2DC; // type:function size:0x1E8 scope:local +PlayEffectSound = .text:0x8004C4C4; // type:function size:0x344 scope:local +CharModelMotionCreate = .text:0x8004C808; // type:function size:0x1D0 +CharModelMotionIndexSet = .text:0x8004C9D8; // type:function size:0x88 +CharModelMotionKill = .text:0x8004CA60; // type:function size:0x9C +CharModelMotionDataClose = .text:0x8004CAFC; // type:function size:0x2B8 +CharModelDataClose = .text:0x8004CDB4; // type:function size:0x430 +CharModelKill = .text:0x8004D1E4; // type:function size:0x244 +CharModelMotionSet = .text:0x8004D428; // type:function size:0x7C +CharModelTexAnimSet = .text:0x8004D4A4; // type:function size:0x17C +CharModelTexNameGet = .text:0x8004D620; // type:function size:0x7C +CharModelHookNameGet = .text:0x8004D69C; // type:function size:0x7C +CharModelMotionTimeSet = .text:0x8004D718; // type:function size:0x4C +CharModelMotionTimeGet = .text:0x8004D764; // type:function size:0x44 +CharModelMotionMaxTimeGet = .text:0x8004D7A8; // type:function size:0x44 +CharModelMotionEndCheck = .text:0x8004D7EC; // type:function size:0x44 +CharModelMotionShiftIDGet = .text:0x8004D830; // type:function size:0x44 +CharModelMotionShiftSet = .text:0x8004D874; // type:function size:0x84 +CharModelMotionShiftTimeGet = .text:0x8004D8F8; // type:function size:0x44 +CharModelMotionSpeedSet = .text:0x8004D93C; // type:function size:0x4C +CharModelLayerSetAll = .text:0x8004D988; // type:function size:0x80 +CharModelItemHookCreate = .text:0x8004DA08; // type:function size:0x1D4 +UpdateItemHook = .text:0x8004DBDC; // type:function size:0x484 scope:local +CharModelEffectCreate = .text:0x8004E060; // type:function size:0x3FC +OrbitEffect = .text:0x8004E45C; // type:function size:0x168 scope:local +CharModelCoinEffectCreate = .text:0x8004E5C4; // type:function size:0x1A0 +fn_8004EC74 = .text:0x8004E764; // type:function size:0x130 +fn_8004EDA4 = .text:0x8004E894; // type:function size:0x2B4 +fn_8004F058 = .text:0x8004EB48; // type:function size:0xE4 +fn_8004F13C = .text:0x8004EC2C; // type:function size:0x2B4 +CharModelLayerSetAll2 = .text:0x8004EEE0; // type:function size:0x80 +CharModelVoiceEnableSet = .text:0x8004EF60; // type:function size:0xBC +fn_8004F52C = .text:0x8004F01C; // type:function size:0x4C +CharModelEffectEnableSet = .text:0x8004F068; // type:function size:0xB0 +CharModelEffectNpcInit = .text:0x8004F118; // type:function size:0x2CC +CharModelEffectNpcInitSilent = .text:0x8004F3E4; // type:function size:0x2CC +UpdateNpcEffect = .text:0x8004F6B0; // type:function size:0xF80 scope:local +CharModelStepTypeSet = .text:0x80050630; // type:function size:0x30 +PlayStepFX = .text:0x80050660; // type:function size:0xEC scope:local +MapWall = .text:0x8005074C; // type:function size:0x1B8 +MapWallCheck = .text:0x80050904; // type:function size:0x110 +MapPos = .text:0x80050A14; // type:function size:0x2A8 +PolygonRangeCheck = .text:0x80050CBC; // type:function size:0x38C scope:local +DefIfnnerMapCircle = .text:0x80051048; // type:function size:0x470 scope:local +CalcPPLength = .text:0x800514B8; // type:function size:0x5D4 scope:local +MapIflnnerCalc = .text:0x80051A8C; // type:function size:0xF4 scope:local +MapCalcPoint = .text:0x80051B80; // type:function size:0x388 scope:local +AreaCheck = .text:0x80051F08; // type:function size:0x148 scope:local +MapIflnnerTriangle = .text:0x80052050; // type:function size:0x518 scope:local +MapIflnnerQuadrangle = .text:0x80052568; // type:function size:0x994 scope:local +GetPolygonCircleMtx = .text:0x80052EFC; // type:function size:0xC28 scope:local +PrecalcPntToTriangle = .text:0x80053B24; // type:function size:0x43C scope:local +Hitcheck_Triangle_with_Sphere = .text:0x80053F60; // type:function size:0x100 +Hitcheck_Quadrangle_with_Sphere = .text:0x80054060; // type:function size:0x19C +DefSetHitFace = .text:0x800541FC; // type:function size:0x4C scope:local +AppendAddXZ = .text:0x80054248; // type:function size:0x184 +CharRotInv = .text:0x800543CC; // type:function size:0x124 +THPSimpleInit = .text:0x800544F0; // type:function size:0x124 +THPSimpleQuit = .text:0x80054614; // type:function size:0x54 +THPSimpleOpen = .text:0x80054668; // type:function size:0x408 +THPSimpleClose = .text:0x80054A70; // type:function size:0xC0 +THPSimpleCalcNeedMemory = .text:0x80054B30; // type:function size:0x184 +THPSimpleSetBuffer = .text:0x80054CB4; // type:function size:0x240 +__THPSimpleDVDCallback = .text:0x80054EF4; // type:function size:0x2A4 scope:local +THPSimplePreLoad = .text:0x80055198; // type:function size:0x2A4 +THPSimpleAudioStart = .text:0x8005543C; // type:function size:0x14 +THPSimpleAudioStop = .text:0x80055450; // type:function size:0x14 +THPSimpleLoadStop = .text:0x80055464; // type:function size:0x1B8 +THPSimpleDecode = .text:0x8005561C; // type:function size:0x47C +VideoDecode = .text:0x80055A98; // type:function size:0xD8 scope:local +THPSimpleDrawCurrentFrame = .text:0x80055B70; // type:function size:0x104 +MixAudio = .text:0x80055C74; // type:function size:0x5F8 scope:local +THPSimpleGetVideoInfo = .text:0x8005626C; // type:function size:0x58 +THPSimpleGetTotalFrame = .text:0x800562C4; // type:function size:0x2C +THPAudioMixCallback = .text:0x800562F0; // type:function size:0x188 scope:local +THPSimpleSetVolume = .text:0x80056478; // type:function size:0x17C +THPGXRestore = .text:0x800565F4; // type:function size:0x130 +THPGXYuv2RgbSetup = .text:0x80056724; // type:function size:0x5A0 +THPGXYuv2RgbDraw = .text:0x80056CC4; // type:function size:0x288 +HuTHPSprCreateVol = .text:0x80056F4C; // type:function size:0x108 +HuTHPSprCreate = .text:0x80057054; // type:function size:0x110 +HuTHP3DCreateVol = .text:0x80057164; // type:function size:0xF8 +HuTHP3DCreate = .text:0x8005725C; // type:function size:0x100 +HuTHPStop = .text:0x8005735C; // type:function size:0xC +HuTHPClose = .text:0x80057368; // type:function size:0xC +HuTHPRestart = .text:0x80057374; // type:function size:0xC +HuTHPEndCheck = .text:0x80057380; // type:function size:0x54 +HuTHPFrameGet = .text:0x800573D4; // type:function size:0x8 +HuTHPTotalFrameGet = .text:0x800573DC; // type:function size:0x20 +HuTHPSetVolume = .text:0x800573FC; // type:function size:0x30 +THPTestProc = .text:0x8005742C; // type:function size:0x27C scope:local +THPViewFunc = .text:0x800576A8; // type:function size:0xA4 scope:local +THPViewSprFunc = .text:0x8005774C; // type:function size:0x17C scope:local +THPDecodeFunc = .text:0x800578C8; // type:function size:0x4C scope:local +omMgIndexGet = .text:0x80057914; // type:function size:0x5C +omGameSysInit = .text:0x80057970; // type:function size:0xF4 +omVibrate = .text:0x80057A64; // type:function size:0x9C +_CheckFlag = .text:0x80057B00; // type:function size:0xA0 +_SetFlag = .text:0x80057BA0; // type:function size:0xA4 +_ClearFlag = .text:0x80057C44; // type:function size:0xA4 +_InitFlag = .text:0x80057CE8; // type:function size:0x30 +SLFileOpen = .text:0x80057D18; // type:function size:0x140 +SLFileCreate = .text:0x80057E58; // type:function size:0x280 +SLFileWrite = .text:0x800580D8; // type:function size:0x10C +SLFileRead = .text:0x800581E4; // type:function size:0x84 +SLFileClose = .text:0x80058268; // type:function size:0x4C +SLCurSlotNoSet = .text:0x800582B4; // type:function size:0x8 +SLCurBoxNoSet = .text:0x800582BC; // type:function size:0xC +SLSaveFlagSet = .text:0x800582C8; // type:function size:0x40 +SLSaveFlagGet = .text:0x80058308; // type:function size:0x8 +SLSaveDataMake = .text:0x80058310; // type:function size:0x154 +SLSaveDataInfoSet = .text:0x80058464; // type:function size:0x2A0 +SLCommonSet = .text:0x80058704; // type:function size:0x2DC +SLSaveBoard = .text:0x800589E0; // type:function size:0x8C +SLSaveBoardStory = .text:0x80058A6C; // type:function size:0x8C +SLSave = .text:0x80058AF8; // type:function size:0x370 +SLCreateSaveWin = .text:0x80058E68; // type:function size:0xDC scope:local +SLKillSaveWin = .text:0x80058F44; // type:function size:0x48 scope:local +SLLoad = .text:0x80058F8C; // type:function size:0x110 +SLLoadGameStat = .text:0x8005909C; // type:function size:0x38 +SLLoadBoard = .text:0x800590D4; // type:function size:0x1A0 +SLLoadBoardStory = .text:0x80059274; // type:function size:0x184 +SLSerialNoGet = .text:0x800593F8; // type:function size:0x28 +SLSerialNoCheck = .text:0x80059420; // type:function size:0xA0 +SLCheckSumCheck = .text:0x800594C0; // type:function size:0x60 +SLCheckSumGet = .text:0x80059520; // type:function size:0x54 +SLCheckSumSet = .text:0x80059574; // type:function size:0x90 +SLStatSet = .text:0x80059604; // type:function size:0x1D4 +SLCardMount = .text:0x800597D8; // type:function size:0x12C +SLFormat = .text:0x80059904; // type:function size:0x624 +SLMessOut = .text:0x80059F28; // type:function size:0x3FC +HuSoftResetButtonCheck = .text:0x8005A324; // type:function size:0x50 +HuDvdErrDispIntFunc = .text:0x8005A374; // type:function size:0x28 +HuDvdErrDispInit = .text:0x8005A39C; // type:function size:0x1F4 +ToeThreadFunc = .text:0x8005A590; // type:function size:0xD8 scope:local +ToeDispCheck = .text:0x8005A668; // type:function size:0x128 scope:local +_HuDvdErrDispXFB = .text:0x8005A790; // type:function size:0x2D0 scope:local +HuRestartSystem = .text:0x8005AA60; // type:function size:0xDC +HuSoftResetCheck = .text:0x8005AB3C; // type:function size:0xFC scope:local +HuSoftResetCountCheck = .text:0x8005AC38; // type:function size:0xCC scope:local +HuSoftResetPostProc = .text:0x8005AD04; // type:function size:0x78 scope:local +BoardObjectSetup = .text:0x8005AD7C; // type:function size:0x2E0 +InitBoardFunc = .text:0x8005B05C; // type:function size:0x64 scope:local +ExecBoardFunc = .text:0x8005B0C0; // type:function size:0x9C scope:local +KillBoardFunc = .text:0x8005B15C; // type:function size:0xCC scope:local +BoardKill = .text:0x8005B228; // type:function size:0xAC +BoardIsKill = .text:0x8005B2D4; // type:function size:0x48 +BoardPauseDisableSet = .text:0x8005B31C; // type:function size:0x74 +BoardPauseDisableGet = .text:0x8005B390; // type:function size:0x48 +BoardSaveInit = .text:0x8005B3D8; // type:function size:0x524 +BoardStoryConfigSet = .text:0x8005B8FC; // type:function size:0x160 +BoardPartyConfigSet = .text:0x8005BA5C; // type:function size:0x160 +DestroyMainFunc = .text:0x8005BBBC; // type:function size:0xC scope:local +MainFunc = .text:0x8005BBC8; // type:function size:0x7D0 scope:local +BoardTurnNext = .text:0x8005C398; // type:function size:0x8C +ExecTurnStart = .text:0x8005C424; // type:function size:0x28C scope:local +BoardNextOvlSet = .text:0x8005C6B0; // type:function size:0xC4 +BoardStartCheck = .text:0x8005C774; // type:function size:0x8C +CreateBoard = .text:0x8005C800; // type:function size:0x410 scope:local +DestroyBoard = .text:0x8005CC10; // type:function size:0x128 scope:local +BoardLightHookSet = .text:0x8005CD38; // type:function size:0xC +BoardLightSetExec = .text:0x8005CD44; // type:function size:0x44 +BoardLightResetExec = .text:0x8005CD88; // type:function size:0x50 +BoardCameraBackup = .text:0x8005CDD8; // type:function size:0x3C +BoardCameraRestore = .text:0x8005CE14; // type:function size:0x48 +BoardCameraScissorSet = .text:0x8005CE5C; // type:function size:0x54 +BoardCameraViewSet = .text:0x8005CEB0; // type:function size:0x2AC +BoardCameraPosGet = .text:0x8005D15C; // type:function size:0x48 +BoardCameraTargetGet = .text:0x8005D1A4; // type:function size:0x48 +BoardCameraRotGet = .text:0x8005D1EC; // type:function size:0x48 +BoardCameraZoomGet = .text:0x8005D234; // type:function size:0x20 +BoardCameraDirGet = .text:0x8005D254; // type:function size:0xA8 +BoardCameraPointDirGet = .text:0x8005D2FC; // type:function size:0xBC +BoardCameraMaskSet = .text:0x8005D3B8; // type:function size:0x28 +BoardCameraMoveSet = .text:0x8005D3E0; // type:function size:0x50 +BoardCameraOffsetSet = .text:0x8005D430; // type:function size:0x30 +BoardCameraTargetPlayerSet = .text:0x8005D460; // type:function size:0xB4 +BoardCameraTargetModelSet = .text:0x8005D514; // type:function size:0x40 +BoardCameraTargetSpaceSet = .text:0x8005D554; // type:function size:0x44 +BoardCameraPosCalcFuncSet = .text:0x8005D598; // type:function size:0x28 +BoardCameraQuakeSet = .text:0x8005D5C0; // type:function size:0x3C +BoardCameraQuakeReset = .text:0x8005D5FC; // type:function size:0x3C +BoardCameraTargetSet = .text:0x8005D638; // type:function size:0x28 +BoardCameraPosSet = .text:0x8005D660; // type:function size:0x28 +BoardCameraXRotZoomSet = .text:0x8005D688; // type:function size:0x24 +BoardCameraZoomSet = .text:0x8005D6AC; // type:function size:0x20 +BoardCameraRotSet = .text:0x8005D6CC; // type:function size:0x24 +BoardCameraNearFarSet = .text:0x8005D6F0; // type:function size:0x24 +BoardCameraNearFarGet = .text:0x8005D714; // type:function size:0x3C +BoardCameraMotionStart = .text:0x8005D750; // type:function size:0x48 +BoardCameraMotionStartEx = .text:0x8005D798; // type:function size:0x230 +BoardCameraFovSet = .text:0x8005D9C8; // type:function size:0x20 +BoardCameraCullCheck = .text:0x8005D9E8; // type:function size:0x2BC +BoardCameraMotionIsDone = .text:0x8005DCA4; // type:function size:0x48 +BoardCameraMotionWait = .text:0x8005DCEC; // type:function size:0x58 +BoardCameraInit = .text:0x8005DD44; // type:function size:0x24C +UpdateCamera = .text:0x8005DF90; // type:function size:0x350 scope:local +CalcCameraTarget = .text:0x8005E2E0; // type:function size:0xE4 scope:local +CalcCameraPos = .text:0x8005E3C4; // type:function size:0x764 scope:local +BoardMGDoneFlagSet = .text:0x8005EB28; // type:function size:0x48 +BoardMGDoneFlagGet = .text:0x8005EB70; // type:function size:0x48 +BoardMGExit = .text:0x8005EBB8; // type:function size:0x170 +KillBoardMG = .text:0x8005ED28; // type:function size:0x60 scope:local +ExecBoardMG = .text:0x8005ED88; // type:function size:0xC4 scope:local +BoardMGCreate = .text:0x8005EE4C; // type:function size:0x74 +BoardEventFlagSet = .text:0x8005EEC0; // type:function size:0x28 +BoardEventFlagReset = .text:0x8005EEE8; // type:function size:0x28 +BoardEventFlagGet = .text:0x8005EF10; // type:function size:0x48 +BoardMTXCalcLookAt = .text:0x8005EF58; // type:function size:0x10C +BoardArcSin = .text:0x8005F064; // type:function size:0x330 +BoardArcCos = .text:0x8005F394; // type:function size:0x390 +BoardRandInit = .text:0x8005F724; // type:function size:0x24 +BoardRand = .text:0x8005F748; // type:function size:0x24 +BoardRandMod = .text:0x8005F76C; // type:function size:0x50 +BoardRandFloat = .text:0x8005F7BC; // type:function size:0x58 +BoardVecDistXZCalc = .text:0x8005F814; // type:function size:0x134 +BoardVecMaxDistXZCheck = .text:0x8005F948; // type:function size:0x15C +BoardDAngleCalcVec = .text:0x8005FAA4; // type:function size:0x7C +BoardDAngleCalc = .text:0x8005FB20; // type:function size:0x34 +BoardDAngleCalcRange = .text:0x8005FB54; // type:function size:0x1C0 +BoardVecMinDistCheck = .text:0x8005FD14; // type:function size:0x6C +BoardFilterFadeOut = .text:0x8005FD80; // type:function size:0xD4 +BoardFilterFadeInit = .text:0x8005FE54; // type:function size:0x174 +BoardFilterFadePauseCheck = .text:0x8005FFC8; // type:function size:0x5C +BoardFilterFadeCheck = .text:0x80060024; // type:function size:0x34 +UpdateFilter = .text:0x80060058; // type:function size:0x178 scope:local +DrawFilter = .text:0x800601D0; // type:function size:0x350 scope:local +BoardConfettiCreate = .text:0x80060520; // type:function size:0x164 +BoardConfettiKill = .text:0x80060684; // type:function size:0x24 +BoardConfettiStop = .text:0x800606A8; // type:function size:0x88 +UpdateConfetti = .text:0x80060730; // type:function size:0xB8 scope:local +SpawnConfetti = .text:0x800607E8; // type:function size:0x564 scope:local +MoveConfetti = .text:0x80060D4C; // type:function size:0x14C scope:local +DrawConfetti = .text:0x80060E98; // type:function size:0x254 scope:local +BoardLast5GfxInit = .text:0x800610EC; // type:function size:0x278 +UpdateLast5Gfx = .text:0x80061364; // type:function size:0x2AC scope:local +BoardLast5GfxShowSet = .text:0x80061610; // type:function size:0xAC +BoardTauntInit = .text:0x800616BC; // type:function size:0x80 +BoardTauntKill = .text:0x8006173C; // type:function size:0x54 +TauntUpdate = .text:0x80061790; // type:function size:0x3A4 scope:local +BoardDataDirReadAsync = .text:0x80061B34; // type:function size:0x38 +BoardDataAsyncWait = .text:0x80061B6C; // type:function size:0x48 +BoardItemPrevGet = .text:0x80061BB4; // type:function size:0xC +BoardItemPrevSet = .text:0x80061BC0; // type:function size:0xC +BoardPlayerGetCharMess = .text:0x80061BCC; // type:function size:0x78 +BoardPlayerGetCharName = .text:0x80061C44; // type:function size:0x78 +BoardPlayerIsAllCom = .text:0x80061CBC; // type:function size:0x80 +BoardPlayerInit = .text:0x80061D3C; // type:function size:0x16C +BoardPlayerModelInit = .text:0x80061EA8; // type:function size:0x588 +BoardPlayerModelKill = .text:0x80062430; // type:function size:0xFC +BoardPlayerLayerSet = .text:0x8006252C; // type:function size:0x84 +BoardPlayerCameraSet = .text:0x800625B0; // type:function size:0x80 +fn_80062A40 = .text:0x80062630; // type:function size:0x80 +BoardPlayerExistCheck = .text:0x800626B0; // type:function size:0xB4 +BoardPlayerItemAdd = .text:0x80062764; // type:function size:0xB0 +BoardPlayerItemRemove = .text:0x80062814; // type:function size:0xB4 +BoardPlayerItemFind = .text:0x800628C8; // type:function size:0x58 +BoardPlayerItemCount = .text:0x80062920; // type:function size:0x60 +BoardPlayerCornerPosSet = .text:0x80062980; // type:function size:0x40 +BoardPlayerCornerPosGet = .text:0x800629C0; // type:function size:0xC4 +BoardPlayerAmbSet = .text:0x80062A84; // type:function size:0x90 +BoardPlayerMtxSet = .text:0x80062B14; // type:function size:0x80 +BoardPlayerPosSetV = .text:0x80062B94; // type:function size:0x9C +BoardPlayerPosSet = .text:0x80062C30; // type:function size:0xCC +BoardPlayerPosGet = .text:0x80062CFC; // type:function size:0x80 +BoardPlayerRotSetV = .text:0x80062D7C; // type:function size:0x9C +BoardPlayerRotSet = .text:0x80062E18; // type:function size:0xCC +BoardPlayerRotGet = .text:0x80062EE4; // type:function size:0x80 +BoardPlayerRotYSet = .text:0x80062F64; // type:function size:0xD4 +BoardPlayerRotYGet = .text:0x80063038; // type:function size:0xA8 +BoardPlayerScaleSetV = .text:0x800630E0; // type:function size:0x80 +BoardPlayerScaleSet = .text:0x80063160; // type:function size:0x90 +BoardPlayerScaleGet = .text:0x800631F0; // type:function size:0x80 +BoardPlayerCurrMotionGet = .text:0x80063270; // type:function size:0x44 +BoardPlayerVoiceEnableSet = .text:0x800632B4; // type:function size:0x88 +BoardPlayerMotionCreate = .text:0x8006333C; // type:function size:0x80 +BoardPlayerMotionKill = .text:0x800633BC; // type:function size:0x80 +BoardPlayerMotionEndCheck = .text:0x8006343C; // type:function size:0x78 +BoardPlayerMotionEndWait = .text:0x800634B4; // type:function size:0x88 +BoardPlayerMotionStart = .text:0x8006353C; // type:function size:0xD0 +BoardPlayerMotionShiftSet = .text:0x8006360C; // type:function size:0xE0 +BoardPlayerMotionSpeedSet = .text:0x800636EC; // type:function size:0x80 +BoardPlayerMotionTimeSet = .text:0x8006376C; // type:function size:0x80 +BoardPlayerMotionTimeGet = .text:0x800637EC; // type:function size:0x78 +BoardPlayerMotionMaxTimeGet = .text:0x80063864; // type:function size:0x78 +BoardPlayerMotionStartEndSet = .text:0x800638DC; // type:function size:0xA0 +BoardPlayerModelAttrSet = .text:0x8006397C; // type:function size:0x80 +BoardPlayerModelAttrReset = .text:0x800639FC; // type:function size:0x80 +BoardPlayerCoinsSet = .text:0x80063A7C; // type:function size:0x34 +BoardPlayerCoinsGet = .text:0x80063AB0; // type:function size:0x2C +BoardPlayerCoinsAdd = .text:0x80063ADC; // type:function size:0x9C +BoardPlayerStarsAdd = .text:0x80063B78; // type:function size:0x48 +BoardPlayerSizeSet = .text:0x80063BC0; // type:function size:0x16C +BoardPlayerSizeGet = .text:0x80063D2C; // type:function size:0x40 +BoardPlayerSameTeamFind = .text:0x80063D6C; // type:function size:0x7C +BoardPlayerTeamFind = .text:0x80063DE8; // type:function size:0x7C +BoardPlayerRankCalc = .text:0x80063E64; // type:function size:0xC4 +BoardPlayerPreTurnHookSet = .text:0x80063F28; // type:function size:0x18 +BoardPlayerPostTurnHookSet = .text:0x80063F40; // type:function size:0x18 +BoardPlayerTurnExec = .text:0x80063F58; // type:function size:0x15C +BoardPlayerTurnRollExec = .text:0x800640B4; // type:function size:0x160 +BoardPlayerTurnMoveExec = .text:0x80064214; // type:function size:0x420 +BoardPlayerPostTurnHookExec = .text:0x80064634; // type:function size:0x80 +BoardPlayerSizeRestore = .text:0x800646B4; // type:function size:0x18C +BoardPlayerZoomRestore = .text:0x80064840; // type:function size:0x134 +BoardJunctionMaskSet = .text:0x80064974; // type:function size:0x10 +BoardJunctionMaskReset = .text:0x80064984; // type:function size:0x10 +BoardJunctionMaskZero = .text:0x80064994; // type:function size:0xC +InitJunction = .text:0x800649A0; // type:function size:0x634 scope:local +UpdateJunctionGfx = .text:0x80064FD4; // type:function size:0x1A0 scope:local +StopJunctionPlayer = .text:0x80065174; // type:function size:0x70 scope:local +RestoreJunction = .text:0x800651E4; // type:function size:0x180 scope:local +GetDefaultDirection = .text:0x80065364; // type:function size:0x114 scope:local +DoDebugMove = .text:0x80065478; // type:function size:0x8E8 scope:local +ExecJunction = .text:0x80065D60; // type:function size:0xBF8 scope:local +BoardPlayerMoveTo = .text:0x80066958; // type:function size:0xBC +BoardPlayerMoveBetween = .text:0x80066A14; // type:function size:0x90 +BoardPlayerMoveToAsync = .text:0x80066AA4; // type:function size:0x90 +BoardPlayerPosLerpStart = .text:0x80066B34; // type:function size:0x430 +PlayerPosLerpFunc = .text:0x80066F64; // type:function size:0x218 scope:local +BoardPlayerDiceJumpStart = .text:0x8006717C; // type:function size:0x1D4 +BoardPlayerDiceJumpCheck = .text:0x80067350; // type:function size:0x54 +DiceJumpFunc = .text:0x800673A4; // type:function size:0x3E4 scope:local +BoardPlayerIdleSet = .text:0x80067788; // type:function size:0xF8 +BoardPlayerMotBlendSet = .text:0x80067880; // type:function size:0x5A0 +ExecMotBlend = .text:0x80067E20; // type:function size:0x51C scope:local +BoardPlayerMotBlendCheck = .text:0x8006833C; // type:function size:0x2C +BoardRollCreate = .text:0x80068368; // type:function size:0x138 +BoardRollUpdateSet = .text:0x800684A0; // type:function size:0x38 +BoardRollDispSet = .text:0x800684D8; // type:function size:0x10C +UpdateRollSprite = .text:0x800685E4; // type:function size:0x194 scope:local +UpdateRoll = .text:0x80068778; // type:function size:0x278 scope:local +BoardPlayerBtnDownWait = .text:0x800689F0; // type:function size:0x6C +BoardPlayerAutoSizeSet = .text:0x80068A5C; // type:function size:0x9C +BoardPlayerAutoSizeGet = .text:0x80068AF8; // type:function size:0x40 +BoardPlayerMoveAwayIsDone = .text:0x80068B38; // type:function size:0x1C +BoardPlayerMoveAwayStart = .text:0x80068B54; // type:function size:0x224 +BoardPlayerMoveAwayStartCurr = .text:0x80068D78; // type:function size:0x40 +MoveAwayObjFunc = .text:0x80068DB8; // type:function size:0x100 scope:local +BoardBowserSuitInit = .text:0x80068EB8; // type:function size:0x1A4 +BoardBowserSuitKill = .text:0x8006905C; // type:function size:0x128 +BoardBowserSuitModelGet = .text:0x80069184; // type:function size:0x8 +BoardBowserSuitPlayerModelGet = .text:0x8006918C; // type:function size:0x8 +BoardBowserSuitMotionCreate = .text:0x80069194; // type:function size:0x74 +BoardBowserSuitMotionSetWait = .text:0x80069208; // type:function size:0x54 +BoardBowserSuitMotionSetWalk = .text:0x8006925C; // type:function size:0x4C +BoardBowserSuitMotionSetWin = .text:0x800692A8; // type:function size:0x44 +BoardBowserSuitMotionSetJump = .text:0x800692EC; // type:function size:0x44 +BoardBowserSuitPlayerModelKill = .text:0x80069330; // type:function size:0x44 +UpdateBowserSuit = .text:0x80069374; // type:function size:0x1F0 scope:local +BoardPlayerSparkSet = .text:0x80069564; // type:function size:0x5C +DoSparkSpace = .text:0x800695C0; // type:function size:0x1294 scope:local +RemoveSparkSpace = .text:0x8006A854; // type:function size:0xA0 scope:local +SetPlayerSizeAuto = .text:0x8006A8F4; // type:function size:0x24C scope:local +BoardMegaDoubleDiceCheck = .text:0x8006AB40; // type:function size:0x8 +BoardPlayerResizeAnimExec = .text:0x8006AB48; // type:function size:0x38C +MegaSquishFunc = .text:0x8006AED4; // type:function size:0x950 scope:local +MegaPlayerPassFunc = .text:0x8006B824; // type:function size:0x980 scope:local +MegaExecJump = .text:0x8006C1A4; // type:function size:0xA48 scope:local +BoardPlayerCopyEyeMat = .text:0x8006CBEC; // type:function size:0x24C +BoardPlayerCopyMat = .text:0x8006CE38; // type:function size:0xC0 +BoardModelInit = .text:0x8006CEF8; // type:function size:0xF0 +BoardModelKillAll = .text:0x8006CFE8; // type:function size:0xA0 +ModelMgrFunc = .text:0x8006D088; // type:function size:0x70 scope:local +BoardModelDummyUpdate = .text:0x8006D0F8; // type:function size:0x4 +BoardModelVisibilityUpdate = .text:0x8006D0FC; // type:function size:0xCC +BoardModelHideSetAll = .text:0x8006D1C8; // type:function size:0x90 +BoardModelAmbSetAll = .text:0x8006D258; // type:function size:0x70 +BoardModelCameraSetAll = .text:0x8006D2C8; // type:function size:0x7C +CreateInstance = .text:0x8006D344; // type:function size:0x250 scope:local +BoardModelCreate = .text:0x8006D594; // type:function size:0x40 +BoardModelCreateCharacter = .text:0x8006D5D4; // type:function size:0x44 +BoardModelCreateParam = .text:0x8006D618; // type:function size:0x168 +BoardModelKill = .text:0x8006D780; // type:function size:0x44 +BoardModelIDGet = .text:0x8006D7C4; // type:function size:0x48 +fn_8006DC1C = .text:0x8006D80C; // type:function size:0x60 +BoardModelPassSet = .text:0x8006D86C; // type:function size:0x74 +BoardModelAmbSet = .text:0x8006D8E0; // type:function size:0x68 +BoardModelExistCheck = .text:0x8006D948; // type:function size:0x48 +BoardModelExistDupe = .text:0x8006D990; // type:function size:0x48 +fn_8006DDE8 = .text:0x8006D9D8; // type:function size:0x70 +BoardModelMotionCreate = .text:0x8006DA48; // type:function size:0x140 +BoardModelMotionKill = .text:0x8006DB88; // type:function size:0x118 +BoardModelMotionStartEndSet = .text:0x8006DCA0; // type:function size:0xE8 +BoardModelMotionUpdateSet = .text:0x8006DD88; // type:function size:0x7C +BoardModelVoiceEnableSet = .text:0x8006DE04; // type:function size:0xA4 +BoardModelMotionStart = .text:0x8006DEA8; // type:function size:0x174 +BoardModelMotionShiftIDGet = .text:0x8006E01C; // type:function size:0x50 +BoardModelMotionShiftSet = .text:0x8006E06C; // type:function size:0x148 +BoardModelAttrSet = .text:0x8006E1B4; // type:function size:0x58 +BoardModelAttrReset = .text:0x8006E20C; // type:function size:0x58 +BoardModelMotionTimeSet = .text:0x8006E264; // type:function size:0x84 +BoardModelMotionTimeGet = .text:0x8006E2E8; // type:function size:0x94 +BoardModelMotionMaxTimeGet = .text:0x8006E37C; // type:function size:0x88 +BoardModelMotionSpeedGet = .text:0x8006E404; // type:function size:0x64 +BoardModelMotionSpeedSet = .text:0x8006E468; // type:function size:0xA4 +BoardModelMotionEndCheck = .text:0x8006E50C; // type:function size:0x80 +BoardModelMotionShapeSet = .text:0x8006E58C; // type:function size:0x100 +BoardModelMotionShapeTimeGet = .text:0x8006E68C; // type:function size:0x7C +BoardModelMotionShapeMaxTimeGet = .text:0x8006E708; // type:function size:0xBC +BoardModelMotionShapeSpeedSet = .text:0x8006E7C4; // type:function size:0x88 +BoardModelMotionShapeSpeedGet = .text:0x8006E84C; // type:function size:0x64 +BoardModelMotionShapeEndCheck = .text:0x8006E8B0; // type:function size:0x14C +BoardModelMotionShapeStartEndSet = .text:0x8006E9FC; // type:function size:0x100 +BoardModelAlphaSet = .text:0x8006EAFC; // type:function size:0xB0 +BoardModelMtxSet = .text:0x8006EBAC; // type:function size:0x8C +BoardModelMtxGet = .text:0x8006EC38; // type:function size:0x8C +BoardModelRotYSet = .text:0x8006ECC4; // type:function size:0x54 +BoardModelRotYGet = .text:0x8006ED18; // type:function size:0x30 +BoardModelPosSetV = .text:0x8006ED48; // type:function size:0x50 +BoardModelPosSet = .text:0x8006ED98; // type:function size:0x78 +BoardModelRotSetV = .text:0x8006EE10; // type:function size:0x50 +BoardModelRotSet = .text:0x8006EE60; // type:function size:0x78 +BoardModelScaleSetV = .text:0x8006EED8; // type:function size:0x50 +BoardModelScaleSet = .text:0x8006EF28; // type:function size:0x78 +BoardModelPosGet = .text:0x8006EFA0; // type:function size:0x74 +BoardModelRotGet = .text:0x8006F014; // type:function size:0x74 +BoardModelScaleGet = .text:0x8006F088; // type:function size:0x74 +BoardModelVisibilitySet = .text:0x8006F0FC; // type:function size:0x60 +BoardModelVisibilityGet = .text:0x8006F15C; // type:function size:0x4C +BoardModelCameraSet = .text:0x8006F1A8; // type:function size:0x64 +BoardModelLayerSet = .text:0x8006F20C; // type:function size:0x64 +BoardModelLayerGet = .text:0x8006F270; // type:function size:0x48 +BoardModelLayerSetAll = .text:0x8006F2B8; // type:function size:0x74 +BoardModelHookSet = .text:0x8006F32C; // type:function size:0xC4 +BoardModelHookReset = .text:0x8006F3F0; // type:function size:0x50 +BoardModelHookObjReset = .text:0x8006F440; // type:function size:0x58 +SearchBoardModel = .text:0x8006F498; // type:function size:0x9C scope:local +KillBoardModel = .text:0x8006F534; // type:function size:0x178 scope:local +CreateBoardModel = .text:0x8006F6AC; // type:function size:0x194 scope:local +CreateBoardModelMotion = .text:0x8006F840; // type:function size:0x12C scope:local +BoardWinInit = .text:0x8006F96C; // type:function size:0x24 +BoardWinUnusedArraySet = .text:0x8006F990; // type:function size:0x34 +BoardWinKillAll = .text:0x8006F9C4; // type:function size:0x24 +BoardWinDestroy = .text:0x8006F9E8; // type:function size:0x6C +ExecBoardWindow = .text:0x8006FA54; // type:function size:0x514 scope:local +BoardWinChoiceGet = .text:0x8006FF68; // type:function size:0xC +BoardWinPause = .text:0x8006FF74; // type:function size:0xC +BoardWinCreateChoice = .text:0x8006FF80; // type:function size:0x1A0 +BoardWinCreate = .text:0x80070120; // type:function size:0x1A0 +BoardWinInsertMesSet = .text:0x800702C0; // type:function size:0x18 +BoardWinWait = .text:0x800702D8; // type:function size:0x50 +BoardWinKill = .text:0x80070328; // type:function size:0x38 +BoardWinAttrSet = .text:0x80070360; // type:function size:0x48 +BoardWinAttrReset = .text:0x800703A8; // type:function size:0x48 +BoardWinChoiceDisable = .text:0x800703F0; // type:function size:0x1C +BoardWinKeyWait = .text:0x8007040C; // type:function size:0xC +BoardWinSpeedGet = .text:0x80070418; // type:function size:0x64 +BoardWinSpeedSet = .text:0x8007047C; // type:function size:0x50 +BoardWinChoiceNowGet = .text:0x800704CC; // type:function size:0x38 +BoardWinPriSet = .text:0x80070504; // type:function size:0x44 +BoardWinChoiceNowGet2 = .text:0x80070548; // type:function size:0x38 +BoardWinPortraitGet = .text:0x80070580; // type:function size:0x38 +BoardWinPortraitGetStar = .text:0x800705B8; // type:function size:0x38 +BoardWinPlayerSet = .text:0x800705F0; // type:function size:0x168 +BoardWinStartComKeySet = .text:0x80070758; // type:function size:0x214 +BoardWinComKeyFuncSet = .text:0x8007096C; // type:function size:0x8 +BoardMusStartBoard = .text:0x80070974; // type:function size:0x68 +BoardMusStart = .text:0x800709DC; // type:function size:0xD0 +BoardAudSeqFadeOutFast = .text:0x80070AAC; // type:function size:0x2C +BoardAudSeqFadeOut = .text:0x80070AD8; // type:function size:0x60 +BoardMusLoudSet = .text:0x80070B38; // type:function size:0x5C +BoardMusVolPanSet = .text:0x80070B94; // type:function size:0x90 +BoardAudSeqPause = .text:0x80070C24; // type:function size:0x94 +BoardMusStatusGet = .text:0x80070CB8; // type:function size:0x54 +BoardAudSeqClear = .text:0x80070D0C; // type:function size:0x50 +BoardAudSeqFadeOutAll = .text:0x80070D5C; // type:function size:0x74 +BoardAudFXPlay = .text:0x80070DD0; // type:function size:0x78 +BoardAudFXStop = .text:0x80070E48; // type:function size:0x38 +ExecComKeyLeft = .text:0x80070E80; // type:function size:0x38 scope:local +BoardComKeySetLeft = .text:0x80070EB8; // type:function size:0x28 +ExecComKeyRight = .text:0x80070EE0; // type:function size:0x38 scope:local +BoardComKeySetRight = .text:0x80070F18; // type:function size:0x28 +ExecComKeyUp = .text:0x80070F40; // type:function size:0x38 scope:local +BoardComKeySetUp = .text:0x80070F78; // type:function size:0x28 +ExecComKeyDown = .text:0x80070FA0; // type:function size:0x38 scope:local +BoardComKeySetDown = .text:0x80070FD8; // type:function size:0x28 +ExecComKey = .text:0x80071000; // type:function size:0xE8 +BoardComPreferItemGet = .text:0x800710E8; // type:function size:0x100 +BoardComPreferItemCheck = .text:0x800711E8; // type:function size:0x120 +BoardComItemWeightGet = .text:0x80071308; // type:function size:0x74 +BoardComUseItemSlotGet = .text:0x8007137C; // type:function size:0xD0 +BoardComUseItemSet = .text:0x8007144C; // type:function size:0x6C +BoardComUseItemCheck = .text:0x800714B8; // type:function size:0x68 +ChooseUseItem = .text:0x80071520; // type:function size:0x16C scope:local +CheckMiniUse = .text:0x8007168C; // type:function size:0x220 scope:local +CheckMegaUse = .text:0x800718AC; // type:function size:0x248 scope:local +CheckSparkUse = .text:0x80071AF4; // type:function size:0x158 scope:local +CheckBoardChangeUse = .text:0x80071C4C; // type:function size:0x314 scope:local +CheckSwapUse = .text:0x80071F60; // type:function size:0x198 scope:local +CheckBooUse = .text:0x800720F8; // type:function size:0x7C scope:local +CheckLampUse = .text:0x80072174; // type:function size:0x74 scope:local +BoardComJunctionInputGet = .text:0x800721E8; // type:function size:0x304 +BoardComFarPlayerFind = .text:0x800724EC; // type:function size:0xA8 +BoardViewOverheadExec = .text:0x80072594; // type:function size:0x134 +BoardViewFocusGetPos = .text:0x800726C8; // type:function size:0x3C +BoardViewFocusSet = .text:0x80072704; // type:function size:0xF0 +BoardViewMoveStart = .text:0x800727F4; // type:function size:0x128 +BoardViewMoveCheck = .text:0x8007291C; // type:function size:0x34 +BoardViewMoveEnd = .text:0x80072950; // type:function size:0xC +BoardViewWait = .text:0x8007295C; // type:function size:0x3C +BoardViewMapExec = .text:0x80072998; // type:function size:0xC8 +ExecMapView = .text:0x80072A60; // type:function size:0x398 scope:local +ExecStarView = .text:0x80072DF8; // type:function size:0x170 scope:local +ExecOverheadView = .text:0x80072F68; // type:function size:0x158 scope:local +DestroyView = .text:0x800730C0; // type:function size:0x80 scope:local +SetTargetView = .text:0x80073140; // type:function size:0x178 scope:local +DestroyFocus = .text:0x800732B8; // type:function size:0x4C scope:local +CreateButtonWin = .text:0x80073304; // type:function size:0xE0 scope:local +DestroyButtonWin = .text:0x800733E4; // type:function size:0x38 scope:local +InitOverheadView = .text:0x8007341C; // type:function size:0x374 scope:local +DestroyOverheadView = .text:0x80073790; // type:function size:0x24 scope:local +UpdateOverheadView = .text:0x800737B4; // type:function size:0x400 scope:local +WaitOverheadView = .text:0x80073BB4; // type:function size:0x30 scope:local +BoardSpaceWalkEventFuncSet = .text:0x80073BE4; // type:function size:0x8 +BoardSpaceWalkMiniEventFuncSet = .text:0x80073BEC; // type:function size:0x8 +BoardSpaceLandEventFuncSet = .text:0x80073BF4; // type:function size:0x8 +BoardSpaceWalkEventExec = .text:0x80073BFC; // type:function size:0x48 +BoardSpaceWalkMiniEventExec = .text:0x80073C44; // type:function size:0x60 +BoardSpaceCountGet = .text:0x80073CA4; // type:function size:0x10 +BoardSpaceGet = .text:0x80073CB4; // type:function size:0x44 +BoardSpaceAttrSet = .text:0x80073CF8; // type:function size:0x18 +BoardSpaceAttrReset = .text:0x80073D10; // type:function size:0x18 +BoardSpaceFlagGet = .text:0x80073D28; // type:function size:0x48 +BoardSpaceTypeGet = .text:0x80073D70; // type:function size:0x48 +BoardSpaceTypeSet = .text:0x80073DB8; // type:function size:0x48 +BoardSpacePosGet = .text:0x80073E00; // type:function size:0x8C +BoardSpaceCornerPosGet = .text:0x80073E8C; // type:function size:0x2C8 +BoardSpaceRotGet = .text:0x80074154; // type:function size:0x8C +BoardSpaceFlagSearch = .text:0x800741E0; // type:function size:0xA0 +BoardSpaceFlagPosGet = .text:0x80074280; // type:function size:0x134 +BoardSpaceLinkFlagSearch = .text:0x800743B4; // type:function size:0x134 +BoardSpaceLinkTypeListGet = .text:0x800744E8; // type:function size:0x148 +BoardSpaceLinkTargetListGet = .text:0x80074630; // type:function size:0x104 +BoardSpaceLinkTypeSearch = .text:0x80074734; // type:function size:0x110 +BoardSpaceLinkTransformGet = .text:0x80074844; // type:function size:0x1FC +BoardSpaceHostSet = .text:0x80074A40; // type:function size:0x1BC +BoardSpaceStarSetIndex = .text:0x80074BFC; // type:function size:0x4AC +BoardSpaceStarGetNext = .text:0x800750A8; // type:function size:0x344 +BoardSpaceStarGetRandom = .text:0x800753EC; // type:function size:0x9C +BoardSpaceStarMove = .text:0x80075488; // type:function size:0xF0 +BoardSpaceStarGet = .text:0x80075578; // type:function size:0x1C +BoardSpaceStarGetCurr = .text:0x80075594; // type:function size:0x3C +BoardSpaceStarCheck = .text:0x800755D0; // type:function size:0x110 +BoardSpaceLandExec = .text:0x800756E0; // type:function size:0x474 +BoardSpaceWalkExec = .text:0x80075B54; // type:function size:0x2A4 +BoardSpaceBlockExec = .text:0x80075DF8; // type:function size:0x180 +ExecPipeSpace = .text:0x80075F78; // type:function size:0x268 scope:local +BoardSpaceTypeForce = .text:0x800761E0; // type:function size:0x5C +BoardSpaceHide = .text:0x8007623C; // type:function size:0x48 +DrawSpaces = .text:0x80076284; // type:function size:0x9E8 scope:local +BoardSpaceRead = .text:0x80076C6C; // type:function size:0x174 +BoardSpaceCameraSet = .text:0x80076DE0; // type:function size:0x2C +BoardSpaceBlockPosSet = .text:0x80076E0C; // type:function size:0xD0 +BoardSpaceInit = .text:0x80076EDC; // type:function size:0x750 +BoardSpaceDestroy = .text:0x8007762C; // type:function size:0x70 +BoardShopHostSet = .text:0x8007769C; // type:function size:0x8 +BoardShopHostGet = .text:0x800776A4; // type:function size:0x8 +BoardShopInit = .text:0x800776AC; // type:function size:0xD4 +BoardShopKill = .text:0x80077780; // type:function size:0xA0 +BoardShopExec = .text:0x80077820; // type:function size:0x9C +ExecShop = .text:0x800778BC; // type:function size:0x800 scope:local +DestroyShop = .text:0x800780BC; // type:function size:0xD4 scope:local +PopupShop = .text:0x80078190; // type:function size:0x1B4 scope:local +CloseShop = .text:0x80078344; // type:function size:0xBC scope:local +CreateShopWin = .text:0x80078400; // type:function size:0x13C scope:local +UpdateShopWin = .text:0x8007853C; // type:function size:0x314 scope:local +SetShopWinItem = .text:0x80078850; // type:function size:0x168 scope:local +PauseShopWin = .text:0x800789B8; // type:function size:0x2C scope:local +fn_800789E4 = .text:0x800789E4; // type:function size:0x18C scope:local +ExecItemGive = .text:0x80078B70; // type:function size:0x168 scope:local +MoveItemGive = .text:0x80078CD8; // type:function size:0x34C scope:local +ShrinkItemGive = .text:0x80079024; // type:function size:0x144 scope:local +fn_80079168 = .text:0x80079168; // type:function size:0x6C scope:local +GetShopItems = .text:0x800791D4; // type:function size:0x280 scope:local +GetDefaultShopItems = .text:0x80079454; // type:function size:0xA0 scope:local +SortShopItems = .text:0x800794F4; // type:function size:0x14C scope:local +DecideComEnter = .text:0x80079640; // type:function size:0x1C8 scope:local +DecideComBuy = .text:0x80079808; // type:function size:0x60 scope:local +GetComItemChoice = .text:0x80079868; // type:function size:0x158 scope:local +WaitItemChoice = .text:0x800799C0; // type:function size:0x30 scope:local +CreateShopItemChoice = .text:0x800799F0; // type:function size:0x188 scope:local +GetShopItemChoice = .text:0x80079B78; // type:function size:0xC scope:local +GetShopItemWinChoice = .text:0x80079B84; // type:function size:0x38 scope:local +MoveShopItemChoice = .text:0x80079BBC; // type:function size:0x260 scope:local +UpdateShopItemChoice = .text:0x80079E1C; // type:function size:0x104 scope:local +GetShopItemChoiceInput = .text:0x80079F20; // type:function size:0x30 scope:local +BoardShopTutorialExec = .text:0x80079F50; // type:function size:0x4DC +BoardLotteryHostSet = .text:0x8007A42C; // type:function size:0x8 +BoardLotteryHostGet = .text:0x8007A434; // type:function size:0x8 +BoardLotteryExec = .text:0x8007A43C; // type:function size:0x8C +BoardLotteryInit = .text:0x8007A4C8; // type:function size:0x16C +CreateModel = .text:0x8007A634; // type:function size:0x3B4 scope:local +KillModel = .text:0x8007A9E8; // type:function size:0x1FC scope:local +BoardLotteryKill = .text:0x8007ABE4; // type:function size:0x64 +DestroyLottery = .text:0x8007AC48; // type:function size:0xB0 scope:local +ExecLottery = .text:0x8007ACF8; // type:function size:0x798 scope:local +DoMiniJumpUp = .text:0x8007B490; // type:function size:0x20C scope:local +DoMiniJumpDown = .text:0x8007B69C; // type:function size:0x1BC scope:local +PayEnterFee = .text:0x8007B858; // type:function size:0xF0 scope:local +ShowTicket = .text:0x8007B948; // type:function size:0x3C8 scope:local +SetupTicket = .text:0x8007BD10; // type:function size:0x140 scope:local +ExecBallGame = .text:0x8007BE50; // type:function size:0x914 scope:local +SetBallPrize = .text:0x8007C764; // type:function size:0xC8 scope:local +ExecBallPrize = .text:0x8007C82C; // type:function size:0x27C scope:local +ExecScratchTicket = .text:0x8007CAA8; // type:function size:0x30C scope:local +ExecScratch = .text:0x8007CDB4; // type:function size:0x3AC scope:local +KillScratch = .text:0x8007D160; // type:function size:0x6C scope:local +ExecScratchSpr = .text:0x8007D1CC; // type:function size:0x21C scope:local +HideScratchSpr = .text:0x8007D3E8; // type:function size:0x68 scope:local +InitScratchSpr = .text:0x8007D450; // type:function size:0x288 scope:local +ExecScratchPick = .text:0x8007D6D8; // type:function size:0x3DC scope:local +InitScratchPick = .text:0x8007DAB4; // type:function size:0x14C scope:local +InitTicketPrizes = .text:0x8007DC00; // type:function size:0xD0 scope:local +ExecTicketFocus = .text:0x8007DCD0; // type:function size:0x160 scope:local +ScratchTicketCheckDone = .text:0x8007DE30; // type:function size:0xA8 scope:local +TicketGetPixel = .text:0x8007DED8; // type:function size:0x84 scope:local +TicketUpdate = .text:0x8007DF5C; // type:function size:0x6B0 scope:local +ExecCoinPrize = .text:0x8007E60C; // type:function size:0x440 scope:local +ExecItemPrize = .text:0x8007EA4C; // type:function size:0x338 scope:local +KillCoin = .text:0x8007ED84; // type:function size:0x68 scope:local +ExecPrize = .text:0x8007EDEC; // type:function size:0x4C0 scope:local +ExecLose = .text:0x8007F2AC; // type:function size:0xA4 scope:local +CreateLotteryWin = .text:0x8007F350; // type:function size:0xFC scope:local +KillLotteryWin = .text:0x8007F44C; // type:function size:0x38 scope:local +BoardLotteryTutorialExec = .text:0x8007F484; // type:function size:0x2BC +BoardLandBlueExec = .text:0x8007F740; // type:function size:0x184 +BoardLandRedExec = .text:0x8007F8C4; // type:function size:0x19C +BoardCoinChgCreate = .text:0x8007FA60; // type:function size:0x1E8 +BoardCoinChgExist = .text:0x8007FC48; // type:function size:0x6C +BoardCoinChgHide = .text:0x8007FCB4; // type:function size:0x60 +CreateCoinChg = .text:0x8007FD14; // type:function size:0x23C scope:local +UpdateCoinChg = .text:0x8007FF50; // type:function size:0x198 scope:local +CoinChgAppear = .text:0x800800E8; // type:function size:0x1B8 scope:local +CoinChgSeparate = .text:0x800802A0; // type:function size:0x29C scope:local +CoinChgShow = .text:0x8008053C; // type:function size:0x1A8 scope:local +CoinChgDisappear = .text:0x800806E4; // type:function size:0x260 scope:local +BoardWarpExec = .text:0x80080944; // type:function size:0xA4 +WarpProcess = .text:0x800809E8; // type:function size:0x250 scope:local +WarpKill = .text:0x80080C38; // type:function size:0x5C scope:local +WarpInit = .text:0x80080C94; // type:function size:0x118 scope:local +WarpLaunch = .text:0x80080DAC; // type:function size:0xBC scope:local +WarpStartImpact = .text:0x80080E68; // type:function size:0x1B0 scope:local +WarpFall = .text:0x80081018; // type:function size:0xA4 scope:local +WarpImpact = .text:0x800810BC; // type:function size:0x200 scope:local +BoardCharWheelInit = .text:0x800812BC; // type:function size:0x11C +BoardCharWheelCheck = .text:0x800813D8; // type:function size:0x34 +BoardCharWheelWait = .text:0x8008140C; // type:function size:0x50 +BoardCharWheelResultGet = .text:0x8008145C; // type:function size:0x18 +BoardCharWheelSpeedSet = .text:0x80081474; // type:function size:0x1C +ExecCharWheel = .text:0x80081490; // type:function size:0xFC scope:local +InitCharWheel = .text:0x8008158C; // type:function size:0x754 scope:local +UpdateCharWheel = .text:0x80081CE0; // type:function size:0x314 scope:local +StopCharWheel = .text:0x80081FF4; // type:function size:0x164 scope:local +GrowCharWheel = .text:0x80082158; // type:function size:0x120 scope:local +ShrinkCharWheel = .text:0x80082278; // type:function size:0x10C scope:local +KillCharWheelSpr = .text:0x80082384; // type:function size:0x38 scope:local +SetCharWheelChars = .text:0x800823BC; // type:function size:0xBC scope:local +GetInput = .text:0x80082478; // type:function size:0x224 scope:local +BoardCharWheelTargetSet = .text:0x8008269C; // type:function size:0x10 +GetComDelay = .text:0x800826AC; // type:function size:0x148 scope:local +GetComInput = .text:0x800827F4; // type:function size:0x8C scope:local +BoardMushroomExec = .text:0x80082880; // type:function size:0xA4 +MushroomMain = .text:0x80082924; // type:function size:0x38C scope:local +KillMushroom = .text:0x80082CB0; // type:function size:0x58 scope:local +BoxMain = .text:0x80082D08; // type:function size:0x118 scope:local +ShowBox = .text:0x80082E20; // type:function size:0x114 scope:local +ExitBox = .text:0x80082F34; // type:function size:0x160 scope:local +HideBox = .text:0x80083094; // type:function size:0x68 scope:local +CenterBox = .text:0x800830FC; // type:function size:0xD4 scope:local +InitBox = .text:0x800831D0; // type:function size:0x2EC scope:local +MarkKillBox = .text:0x800834BC; // type:function size:0x64 scope:local +SetBoxHide = .text:0x80083520; // type:function size:0x34 scope:local +SetBoxCenter = .text:0x80083554; // type:function size:0x54 scope:local +SetBoxShow = .text:0x800835A8; // type:function size:0x34 scope:local +WaitBoxOpen = .text:0x800835DC; // type:function size:0x5C scope:local +WaitBoxCenter = .text:0x80083638; // type:function size:0x58 scope:local +CheckBox = .text:0x80083690; // type:function size:0x60 scope:local +DoItemGive = .text:0x800836F0; // type:function size:0x240 scope:local +StartItemGive = .text:0x80083930; // type:function size:0xD4 scope:local +KillItemMdl = .text:0x80083A04; // type:function size:0x38 scope:local +ShowItemMdl = .text:0x80083A3C; // type:function size:0x48 scope:local +WaitItemGive = .text:0x80083A84; // type:function size:0x48 scope:local +BoardStarHostSet = .text:0x80083ACC; // type:function size:0xA8 +BoardStarHostMdlGet = .text:0x80083B74; // type:function size:0x8 +BoardStarExec = .text:0x80083B7C; // type:function size:0xCC +ExecStar = .text:0x80083C48; // type:function size:0x8F4 scope:local +DestroyStar = .text:0x8008453C; // type:function size:0x84 scope:local +GiveStarMain = .text:0x800845C0; // type:function size:0x160 scope:local +UpdateStarAngle = .text:0x80084720; // type:function size:0x144 scope:local +InitGiveStar = .text:0x80084864; // type:function size:0x10C scope:local +MoveGiveStar = .text:0x80084970; // type:function size:0x180 scope:local +ShrinkGiveStar = .text:0x80084AF0; // type:function size:0x204 scope:local +StopGiveStar = .text:0x80084CF4; // type:function size:0x38 scope:local +InitGiveStarEffect = .text:0x80084D2C; // type:function size:0xB4 scope:local +KillGiveStarEffect = .text:0x80084DE0; // type:function size:0x40 scope:local +BoardStarGive = .text:0x80084E20; // type:function size:0x31C +BoardStarShowNext = .text:0x8008513C; // type:function size:0x628 +ShowNextUpdate = .text:0x80085764; // type:function size:0x130 scope:local +HideNextHost = .text:0x80085894; // type:function size:0x24 scope:local +BoardRollExec = .text:0x800858B8; // type:function size:0x1EC +BoardRollKill = .text:0x80085AA4; // type:function size:0x38 +BoardRollUPauseSet = .text:0x80085ADC; // type:function size:0x84 +BoardRollWinDispSet = .text:0x80085B60; // type:function size:0x4C +RollMain = .text:0x80085BAC; // type:function size:0x490 scope:local +DiceCreate = .text:0x8008603C; // type:function size:0x280 scope:local +DoInput = .text:0x800862BC; // type:function size:0x1C8 scope:local +DiceWaitFull = .text:0x80086484; // type:function size:0x60 scope:local +DiceSetHit = .text:0x800864E4; // type:function size:0x130 scope:local +RollDestroy = .text:0x80086614; // type:function size:0x60 scope:local +DiceMain = .text:0x80086674; // type:function size:0x7E4 scope:local +DicePause = .text:0x80086E58; // type:function size:0x40 scope:local +DicePauseAll = .text:0x80086E98; // type:function size:0x90 scope:local +BoardDiceEffectCreate = .text:0x80086F28; // type:function size:0xE0 +DiceHideEffect = .text:0x80087008; // type:function size:0x84 scope:local +BoardDicePauseAll = .text:0x8008708C; // type:function size:0x94 +BoardDiceDoneCheck = .text:0x80087120; // type:function size:0x8C +BoardDiceStop = .text:0x800871AC; // type:function size:0x58 +BoardDiceVisibleSet = .text:0x80087204; // type:function size:0xC0 +BoardDiceValueSet = .text:0x800872C4; // type:function size:0x200 +DiceDigitMain = .text:0x800874C4; // type:function size:0xAC scope:local +DiceDigitKill = .text:0x80087570; // type:function size:0x68 scope:local +DiceKill = .text:0x800875D8; // type:function size:0xB4 scope:local +DiceDigitMove = .text:0x8008768C; // type:function size:0x390 scope:local +DiceDigitRotate = .text:0x80087A1C; // type:function size:0x110 scope:local +SameRollExec = .text:0x80087B2C; // type:function size:0x248 scope:local +GetBtnRoll = .text:0x80087D74; // type:function size:0x110 scope:local +GetComBtnRoll = .text:0x80087E84; // type:function size:0x88 scope:local +BoardRollTutorialSet = .text:0x80087F0C; // type:function size:0x4C +BoardItemModelGet = .text:0x80087F58; // type:function size:0x90 +BoardItemNameGet = .text:0x80087FE8; // type:function size:0x98 +BoardStatusStopCheck = .text:0x80088080; // type:function size:0x48 +BoardStatusVisibleGet = .text:0x800880C8; // type:function size:0x1C +BoardStatusShowSetAll = .text:0x800880E4; // type:function size:0x48 +BoardStatusItemSet = .text:0x8008812C; // type:function size:0xFC +BoardStatusShowSetForce = .text:0x80088228; // type:function size:0x24 +BoardStatusGraySet = .text:0x8008824C; // type:function size:0x134 +BoardStatusShowSet = .text:0x80088380; // type:function size:0x138 +BoardStatusItemHideSet = .text:0x800884B8; // type:function size:0x50 +BoardStatusTargetPosSet = .text:0x80088508; // type:function size:0x44 +BoardStatusPosGet = .text:0x8008854C; // type:function size:0x34 +BoardStatusPosSet = .text:0x80088580; // type:function size:0x6C +BoardStatusHammerCreate = .text:0x800885EC; // type:function size:0x158 +BoardStatusHammerShowSet = .text:0x80088744; // type:function size:0x94 +BoardStatusHammerKill = .text:0x800887D8; // type:function size:0x6C +BoardStatusKill = .text:0x80088844; // type:function size:0x90 +BoardStatusCreate = .text:0x800888D4; // type:function size:0x20C +KillAllBoardStatus = .text:0x80088AE0; // type:function size:0x98 scope:local +CreateBoardStatusSprite = .text:0x80088B78; // type:function size:0x36C scope:local +BoardSpriteCreate = .text:0x80088EE4; // type:function size:0x8C +UpdateBoardStatus = .text:0x80088F70; // type:function size:0x210 scope:local +BoardStatusProc = .text:0x80089180; // type:function size:0x40 scope:local +MoveBoardStatus = .text:0x800891C0; // type:function size:0x180 scope:local +BoardSpriteDigitUpdate = .text:0x80089340; // type:function size:0x140 +UpdateStatusItem = .text:0x80089480; // type:function size:0xB8 scope:local +BoardPickerCreate = .text:0x80089538; // type:function size:0x29C +BoardPickerBackFlagSet = .text:0x800897D4; // type:function size:0x74 +BoardPickerDoneCheck = .text:0x80089848; // type:function size:0x1C +BoardPickerPosGet = .text:0x80089864; // type:function size:0x48 +BoardPickerChoiceGet = .text:0x800898AC; // type:function size:0xC +UpdatePicker = .text:0x800898B8; // type:function size:0xFC scope:local +UpdatePickerInput = .text:0x800899B4; // type:function size:0x15C scope:local +MovePicker = .text:0x80089B10; // type:function size:0x110 scope:local +UpdateComPickerButton = .text:0x80089C20; // type:function size:0x30 scope:local +CheckPickerButton = .text:0x80089C50; // type:function size:0x19C scope:local +BoardYourTurnExec = .text:0x80089DEC; // type:function size:0x1E4 +UpdateYourTurn = .text:0x80089FD0; // type:function size:0xD4 scope:local +GrowYourTurn = .text:0x8008A0A4; // type:function size:0xD8 scope:local +WaitYourTurn = .text:0x8008A17C; // type:function size:0xEC scope:local +ShrinkYourTurn = .text:0x8008A268; // type:function size:0xC8 scope:local +BoardItemUseExec = .text:0x8008A330; // type:function size:0x80 +ItemUseTeamProc = .text:0x8008A3B0; // type:function size:0x4A8 scope:local +ItemUseProc = .text:0x8008A858; // type:function size:0x370 scope:local +FinishItemUse = .text:0x8008ABC8; // type:function size:0x174 scope:local +DestroyItemUse = .text:0x8008AD3C; // type:function size:0x78 scope:local +BoardMakeRandomItem = .text:0x8008ADB4; // type:function size:0x74 +TeamItemPosSet = .text:0x8008AE28; // type:function size:0xE8 scope:local +ExecItemPick = .text:0x8008AF10; // type:function size:0x650 scope:local +UpdateItemPick = .text:0x8008B560; // type:function size:0x3AC scope:local +MakeItemPickSpace = .text:0x8008B90C; // type:function size:0x420 scope:local +SetItemUIStatus = .text:0x8008BD2C; // type:function size:0x248 scope:local +BoardItemGetDestPos = .text:0x8008BF74; // type:function size:0xA8 +ItemGetPos = .text:0x8008C01C; // type:function size:0x104 scope:local +BoardItemStatusKill = .text:0x8008C120; // type:function size:0x400 +UpdateItemPickGfx = .text:0x8008C520; // type:function size:0x388 scope:local +UpdateItemPickup = .text:0x8008C8A8; // type:function size:0x674 scope:local +CheckItemWindow = .text:0x8008CF1C; // type:function size:0x50 scope:local +HideItemWindow = .text:0x8008CF6C; // type:function size:0x38 scope:local +CreateItemWindow = .text:0x8008CFA4; // type:function size:0x5A4 scope:local +CheckItemWindowSlide = .text:0x8008D548; // type:function size:0x58 scope:local +KillItemWindow = .text:0x8008D5A0; // type:function size:0x38 scope:local +SetItemWindowCurr = .text:0x8008D5D8; // type:function size:0xA4 scope:local +UpdateItemWindow = .text:0x8008D67C; // type:function size:0x350 scope:local +CreatePickerWindow = .text:0x8008D9CC; // type:function size:0x148 scope:local +KillPickerWindow = .text:0x8008DB14; // type:function size:0x44 scope:local +BoardBlockExec = .text:0x8008DB58; // type:function size:0x84 +BlockProc = .text:0x8008DBDC; // type:function size:0x358 scope:local +DestroyBlock = .text:0x8008DF34; // type:function size:0x54 scope:local +CreateBlockObj = .text:0x8008DF88; // type:function size:0x1F4 scope:local +ExecBlockObj = .text:0x8008E17C; // type:function size:0x12C scope:local +DestroyBlockObj = .text:0x8008E2A8; // type:function size:0x38 scope:local +SpawnBlock = .text:0x8008E2E0; // type:function size:0x120 scope:local +HitBlock = .text:0x8008E400; // type:function size:0xCC scope:local +OpenBlock = .text:0x8008E4CC; // type:function size:0x140 scope:local +SetBlockOpen = .text:0x8008E60C; // type:function size:0x2C scope:local +SetBlockStop = .text:0x8008E638; // type:function size:0x2C scope:local +WaitBlockHit = .text:0x8008E664; // type:function size:0x48 scope:local +CreateCoinMdl = .text:0x8008E6AC; // type:function size:0x94 scope:local +KillCoinMdl = .text:0x8008E740; // type:function size:0x9C scope:local +PopupCoin = .text:0x8008E7DC; // type:function size:0x10C scope:local +PopupCoinExec = .text:0x8008E8E8; // type:function size:0x130 scope:local +BoardItemStart = .text:0x8008EA18; // type:function size:0x74 +BoardItemDoneCheck = .text:0x8008EA8C; // type:function size:0x1C +BoardItemPlayerRestore = .text:0x8008EAA8; // type:function size:0x6C scope:local +ItemProcess = .text:0x8008EB14; // type:function size:0x64 scope:local +RestoreProcess = .text:0x8008EB78; // type:function size:0x64 scope:local +ItemDestroy = .text:0x8008EBDC; // type:function size:0xC scope:local +RestoreDestroy = .text:0x8008EBE8; // type:function size:0xC scope:local +ItemSizeShowAnim = .text:0x8008EBF4; // type:function size:0x180 scope:local +ItemRotProc = .text:0x8008ED74; // type:function size:0x1BC scope:local +ItemShowProc = .text:0x8008EF30; // type:function size:0x220 scope:local +ItemGetTarget = .text:0x8008F150; // type:function size:0x374 scope:local +ItemSizeSet = .text:0x8008F4C4; // type:function size:0x204 scope:local +ExecItemMini = .text:0x8008F6C8; // type:function size:0xA4 scope:local +ExecItemMega = .text:0x8008F76C; // type:function size:0xA4 scope:local +ExecItemMiniSuper = .text:0x8008F810; // type:function size:0xA4 scope:local +ExecItemMegaSuper = .text:0x8008F8B4; // type:function size:0xA4 scope:local +ExecItemHammer = .text:0x8008F958; // type:function size:0x584 scope:local +ExecItemPipe = .text:0x8008FEDC; // type:function size:0xD34 scope:local +ExecItemSwap = .text:0x80090C10; // type:function size:0xEBC scope:local +ExecItemSpark = .text:0x80091ACC; // type:function size:0x4FC scope:local +ExecItemLight = .text:0x80091FC8; // type:function size:0xC8 scope:local +ExecItemWhistle = .text:0x80092090; // type:function size:0xE3C scope:local +ExecItemBowser = .text:0x80092ECC; // type:function size:0x3D4 scope:local +ExecItemBooBall = .text:0x800932A0; // type:function size:0x1370 scope:local +LampParticleUpdate = .text:0x80094610; // type:function size:0x488 scope:local +GenieParticleUpdate = .text:0x80094A98; // type:function size:0x388 scope:local +GenieCameraProc = .text:0x80094E20; // type:function size:0xB0 scope:local +GenieCameraCalc = .text:0x80094ED0; // type:function size:0x7A4 scope:local +GenieSceneExec = .text:0x80095674; // type:function size:0x9D8 scope:local +ExecItemGenie = .text:0x8009604C; // type:function size:0x628 scope:local +BoardItemBagItemSet = .text:0x80096674; // type:function size:0x3C +ExecItemBagJump = .text:0x800966B0; // type:function size:0x13C scope:local +ExecItemBagShow = .text:0x800967EC; // type:function size:0xDC scope:local +ExecItemBag = .text:0x800968C8; // type:function size:0x584 scope:local +RestoreItemNull = .text:0x80096E4C; // type:function size:0x1C scope:local +RestoreItemMini = .text:0x80096E68; // type:function size:0x2C scope:local +RestoreItemMega = .text:0x80096E94; // type:function size:0x2C scope:local +RestoreItemMiniSuper = .text:0x80096EC0; // type:function size:0x2C scope:local +RestoreItemMegaSuper = .text:0x80096EEC; // type:function size:0x2C scope:local +RestoreItemBowser = .text:0x80096F18; // type:function size:0x284 scope:local +BoardBowserExec = .text:0x8009719C; // type:function size:0x144 +ExecBowser = .text:0x800972E0; // type:function size:0x28C scope:local +ExecBowserMain = .text:0x8009756C; // type:function size:0x208 scope:local +ExecMGReturn = .text:0x80097774; // type:function size:0x1DC scope:local +DestroyBowser = .text:0x80097950; // type:function size:0x30 scope:local +SquishPlayers = .text:0x80097980; // type:function size:0x148 scope:local +ExecBowserSpecial = .text:0x80097AC8; // type:function size:0x1B4 scope:local +ExecBowserGame = .text:0x80097C7C; // type:function size:0x250 scope:local +DoMGReturnEffect = .text:0x80097ECC; // type:function size:0x220 scope:local +ExecBowserShuffle = .text:0x800980EC; // type:function size:0x2B0 scope:local +ExecBowserRevo = .text:0x8009839C; // type:function size:0x160 scope:local +ExecBowserSuit = .text:0x800984FC; // type:function size:0xB8 scope:local +CheckSuitGive = .text:0x800985B4; // type:function size:0x1C scope:local +StartSuitGive = .text:0x800985D0; // type:function size:0x148 scope:local +SuitGiveMain = .text:0x80098718; // type:function size:0x210 scope:local +CreateBowserObj = .text:0x80098928; // type:function size:0x228 scope:local +ExecBowserObj = .text:0x80098B50; // type:function size:0x230 scope:local +ExecBowserFall = .text:0x80098D80; // type:function size:0x270 scope:local +ExecBowserLaugh = .text:0x80098FF0; // type:function size:0x58 scope:local +ExecBowserFire = .text:0x80099048; // type:function size:0x44 scope:local +ExecBowserJump = .text:0x8009908C; // type:function size:0x150 scope:local +ExecBowserPowerUp = .text:0x800991DC; // type:function size:0x128 scope:local +SetBowserState = .text:0x80099304; // type:function size:0x34 scope:local +CheckBowserIdle = .text:0x80099338; // type:function size:0x5C scope:local +CreateMiniBowser = .text:0x80099394; // type:function size:0xD4 scope:local +CheckMiniBowser = .text:0x80099468; // type:function size:0x1C scope:local +ExecMiniBowser = .text:0x80099484; // type:function size:0x18C scope:local +CreateBowserEvent = .text:0x80099610; // type:function size:0x1E8 scope:local +CheckBowserEvent = .text:0x800997F8; // type:function size:0x38 scope:local +StopBowserEvent = .text:0x80099830; // type:function size:0x24 scope:local +ExecBowserEvent = .text:0x80099854; // type:function size:0xEC scope:local +ShowBowserEvent = .text:0x80099940; // type:function size:0x1C8 scope:local +HideBowserEvent = .text:0x80099B08; // type:function size:0x108 scope:local +ConfigBowserEvent = .text:0x80099C10; // type:function size:0x160 scope:local +CreatePlayerMot = .text:0x80099D70; // type:function size:0x1AC scope:local +KillPlayerMot = .text:0x80099F1C; // type:function size:0xB8 scope:local +InitBowserFire = .text:0x80099FD4; // type:function size:0x90 scope:local +BowserFireHook = .text:0x8009A064; // type:function size:0x160 scope:local +SpawnBowserFire = .text:0x8009A1C4; // type:function size:0xE4 scope:local +CheckBowserFire = .text:0x8009A2A8; // type:function size:0xCC scope:local +KillBowserFire = .text:0x8009A374; // type:function size:0x40 scope:local +ExecMiniBowserEvent = .text:0x8009A3B4; // type:function size:0x188 scope:local +MiniBowserTake = .text:0x8009A53C; // type:function size:0x2C4 scope:local +MiniBowserTakeAll = .text:0x8009A800; // type:function size:0x2B8 scope:local +MiniBowserBalloonStop = .text:0x8009AAB8; // type:function size:0x24 scope:local +GetMiniBowserBalloonState = .text:0x8009AADC; // type:function size:0xC scope:local +SetMiniBowserBalloonState = .text:0x8009AAE8; // type:function size:0x10 scope:local +CreateMiniBowserBalloon = .text:0x8009AAF8; // type:function size:0x14C scope:local +ExecMiniBowserBalloon = .text:0x8009AC44; // type:function size:0x120 scope:local +MiniBowserBalloonHover = .text:0x8009AD64; // type:function size:0xB4 scope:local +MiniBowserBalloonFall = .text:0x8009AE18; // type:function size:0x88 scope:local +MiniBowserBalloonRaise = .text:0x8009AEA0; // type:function size:0x80 scope:local +SetMiniBowserMotion = .text:0x8009AF20; // type:function size:0xD8 scope:local +SetMiniBowserMotionPause = .text:0x8009AFF8; // type:function size:0x6C scope:local +WaitMiniBowserMotion = .text:0x8009B064; // type:function size:0x60 scope:local +BoardBattleExec = .text:0x8009B0C4; // type:function size:0x124 +DestroyBattle = .text:0x8009B1E8; // type:function size:0x2C scope:local +ExecBattle = .text:0x8009B214; // type:function size:0x708 scope:local +TakeCoins = .text:0x8009B91C; // type:function size:0x1D4 scope:local +InitExplode = .text:0x8009BAF0; // type:function size:0x1FC scope:local +CheckExplode = .text:0x8009BCEC; // type:function size:0x24 scope:local +UpdateExplode = .text:0x8009BD10; // type:function size:0x2D0 scope:local +CreateBattleMain = .text:0x8009BFE0; // type:function size:0x1E8 scope:local +UpdateBattleMain = .text:0x8009C1C8; // type:function size:0x1A0 scope:local +DescendBattleBomb = .text:0x8009C368; // type:function size:0x64 scope:local +EndBattle = .text:0x8009C3CC; // type:function size:0x88 scope:local +ShowBattleGame = .text:0x8009C454; // type:function size:0x124 scope:local +RaiseBattleGame = .text:0x8009C578; // type:function size:0x8C scope:local +UpdateBattleCoin = .text:0x8009C604; // type:function size:0x260 scope:local +ShowBattleCoin = .text:0x8009C864; // type:function size:0x128 scope:local +InitBattleGameSpr = .text:0x8009C98C; // type:function size:0x12C scope:local +HideBattleSpr = .text:0x8009CAB8; // type:function size:0x58 scope:local +VibratePad = .text:0x8009CB10; // type:function size:0x64 scope:local +StopBattleBomb = .text:0x8009CB74; // type:function size:0x24 scope:local +GetBattleBombState = .text:0x8009CB98; // type:function size:0x10 scope:local +SetBattleBombState = .text:0x8009CBA8; // type:function size:0x34 scope:local +SetBattleCoinValue = .text:0x8009CBDC; // type:function size:0x15C scope:local +BoardFortuneExec = .text:0x8009CD38; // type:function size:0x124 +FortuneExec = .text:0x8009CE5C; // type:function size:0x74 scope:local +DestroyFortune = .text:0x8009CED0; // type:function size:0xC scope:local +FortuneMain = .text:0x8009CEDC; // type:function size:0x340 scope:local +FortunePostMG = .text:0x8009D21C; // type:function size:0xF8 scope:local +CreateFortunePlatform = .text:0x8009D314; // type:function size:0x160 scope:local +CameraCalcFortune = .text:0x8009D474; // type:function size:0x5C scope:local +ExecFortunePlatform = .text:0x8009D4D0; // type:function size:0x198 scope:local +ExecComFortuneWin = .text:0x8009D668; // type:function size:0x18C scope:local +ConfigComFortune = .text:0x8009D7F4; // type:function size:0x20C scope:local +ComFortuneAddStar = .text:0x8009DA00; // type:function size:0x78 scope:local +ComFortuneAddCoin = .text:0x8009DA78; // type:function size:0x78 scope:local +ComFortuneSwapCoin = .text:0x8009DAF0; // type:function size:0x68 scope:local +ComFortuneSwapStar = .text:0x8009DB58; // type:function size:0x68 scope:local +BoardBooCreate = .text:0x8009DBC0; // type:function size:0x11C +BoardBooKill = .text:0x8009DCDC; // type:function size:0x2C +BoardBooStealTypeSet = .text:0x8009DD08; // type:function size:0x2A8 +ComSetupStealPlayer = .text:0x8009DFB0; // type:function size:0x1D4 scope:local +ComSetStealPlayerInput = .text:0x8009E184; // type:function size:0xE8 scope:local +BoardBooStealMain = .text:0x8009E26C; // type:function size:0x280 +fn_8009E4EC = .text:0x8009E4EC; // type:function size:0xC0 scope:local +fn_8009E5AC = .text:0x8009E5AC; // type:function size:0xA8 scope:local +ExecLightSteal = .text:0x8009E654; // type:function size:0x94 scope:local +SetBooMode = .text:0x8009E6E8; // type:function size:0x10 scope:local +CreateBallMdl = .text:0x8009E6F8; // type:function size:0xBC scope:local +CreateBallView = .text:0x8009E7B4; // type:function size:0x1D4 scope:local +SetBallView = .text:0x8009E988; // type:function size:0xAC scope:local +SetBallActive = .text:0x8009EA34; // type:function size:0x28 scope:local +CheckBallKill = .text:0x8009EA5C; // type:function size:0x4C scope:local +BallMain = .text:0x8009EAA8; // type:function size:0x300 scope:local +BallRenderHook = .text:0x8009EDA8; // type:function size:0x4A0 scope:local +ExecBoo = .text:0x8009F248; // type:function size:0x9C scope:local +UpdateBallCamera = .text:0x8009F2E4; // type:function size:0x1DC scope:local +CreateBallPlayer = .text:0x8009F4C0; // type:function size:0x358 scope:local +GetBallPlayerState = .text:0x8009F818; // type:function size:0x24 scope:local +SetBallPlayerState = .text:0x8009F83C; // type:function size:0x2C scope:local +ExecBallPlayer = .text:0x8009F868; // type:function size:0x214 scope:local +BallPlayerZoomOut = .text:0x8009FA7C; // type:function size:0x15C scope:local +BallPlayerScare = .text:0x8009FBD8; // type:function size:0x110 scope:local +BallPlayerTurn = .text:0x8009FCE8; // type:function size:0x68 scope:local +BallPlayerPunch = .text:0x8009FD50; // type:function size:0x1E0 scope:local +BallPlayerUseLight = .text:0x8009FF30; // type:function size:0x10C scope:local +BallPlayerCatch = .text:0x800A003C; // type:function size:0x190 scope:local +BallBooCreate = .text:0x800A01CC; // type:function size:0x328 scope:local +SetBallBooState = .text:0x800A04F4; // type:function size:0x170 scope:local +GetBallBooState = .text:0x800A0664; // type:function size:0x24 scope:local +ExecBallBoo = .text:0x800A0688; // type:function size:0x128 scope:local +BallBooSpawn = .text:0x800A07B0; // type:function size:0x54 scope:local +BallBooChase = .text:0x800A0804; // type:function size:0x104 scope:local +BallBooBattle = .text:0x800A0908; // type:function size:0x218 scope:local +BallBooAttack = .text:0x800A0B20; // type:function size:0xF4 scope:local +BallBooFlash = .text:0x800A0C14; // type:function size:0x178 scope:local +TakeBallCoin = .text:0x800A0D8C; // type:function size:0x1B0 scope:local +ExecTakeBallCoin = .text:0x800A0F3C; // type:function size:0xDC scope:local +TakeBallCoinPosSet = .text:0x800A1018; // type:function size:0x9C scope:local +CheckBallCoinDone = .text:0x800A10B4; // type:function size:0x68 +TakeBallStar = .text:0x800A111C; // type:function size:0x168 +ExecTakeBallStar = .text:0x800A1284; // type:function size:0x184 +CheckTakeBallStarDone = .text:0x800A1408; // type:function size:0x1C +BoardBooStealValueGet = .text:0x800A1424; // type:function size:0x30 +BoardBooStealLightCheck = .text:0x800A1454; // type:function size:0x20 +UpdatePlayerCoins = .text:0x800A1474; // type:function size:0x1B0 scope:local +BoardMGSetupExec = .text:0x800A1624; // type:function size:0x60 +DestroyMGSetup = .text:0x800A1684; // type:function size:0x1C scope:local +ExecMGSetup = .text:0x800A16A0; // type:function size:0x6FC scope:local +DetermineMGList = .text:0x800A1D9C; // type:function size:0x3B0 scope:local +SetupStatusLayout = .text:0x800A214C; // type:function size:0x3A8 scope:local +GetMGType = .text:0x800A24F4; // type:function size:0x388 scope:local +GetMGTypeTeam = .text:0x800A287C; // type:function size:0x3A4 scope:local +CreateMGSetup = .text:0x800A2C20; // type:function size:0x194 scope:local +UpdateMGSetup = .text:0x800A2DB4; // type:function size:0x198 scope:local +CenterStatus = .text:0x800A2F4C; // type:function size:0x174 scope:local +SeparateStatus = .text:0x800A30C0; // type:function size:0x200 scope:local +PopupVS = .text:0x800A32C0; // type:function size:0x20C scope:local +FallMGType = .text:0x800A34CC; // type:function size:0x1C8 scope:local +LuckyMGFall = .text:0x800A3694; // type:function size:0x204 scope:local +HideLuckyValue = .text:0x800A3898; // type:function size:0xA8 scope:local +UpdateLuckyValue = .text:0x800A3940; // type:function size:0x430 scope:local +UpdateMGList = .text:0x800A3D70; // type:function size:0x8FC scope:local +BoardMGSetupPlayClear = .text:0x800A466C; // type:function size:0x74 +BoardMGSetupPlaySearch = .text:0x800A46E0; // type:function size:0xC8 +BoardMGSetupPlayPush = .text:0x800A47A8; // type:function size:0xD0 +BoardMGSetupTutorialExec = .text:0x800A4878; // type:function size:0x2E4 +BoardBooHouseHostSet = .text:0x800A4B5C; // type:function size:0x8 +BoardBooHouseHostGet = .text:0x800A4B64; // type:function size:0x8 +BoardBooHouseCreate = .text:0x800A4B6C; // type:function size:0xB4 +BoardBooHouseKill = .text:0x800A4C20; // type:function size:0x50 +BoardBooHouseExec = .text:0x800A4C70; // type:function size:0x94 +ExecBooHouse = .text:0x800A4D04; // type:function size:0x538 scope:local +DestroyBooHouse = .text:0x800A523C; // type:function size:0xF0 scope:local +PickComStealType = .text:0x800A532C; // type:function size:0xFC scope:local +OpenBooHouse = .text:0x800A5428; // type:function size:0x3A0 scope:local +CloseBooHouse = .text:0x800A57C8; // type:function size:0x124 scope:local +CreateBooHouseModel = .text:0x800A58EC; // type:function size:0xB0 scope:local +KillBooHouseModel = .text:0x800A599C; // type:function size:0xD4 scope:local +ExecNullSteal = .text:0x800A5A70; // type:function size:0x68 scope:local +ExecStarSteal = .text:0x800A5AD8; // type:function size:0x2AC scope:local +ExecCoinSteal = .text:0x800A5D84; // type:function size:0x2AC scope:local +ApplySteal = .text:0x800A6030; // type:function size:0x188 scope:local +ApplyCoinSteal = .text:0x800A61B8; // type:function size:0x16C scope:local +ApplyStarSteal = .text:0x800A6324; // type:function size:0x164 scope:local +ApplyBooLight = .text:0x800A6488; // type:function size:0x70 scope:local +SetBooBallPos = .text:0x800A64F8; // type:function size:0x60 scope:local +BoardBooComUseCheck = .text:0x800A6558; // type:function size:0x1A8 +BoardBooHouseTutorialExec = .text:0x800A6700; // type:function size:0x3D4 +BoardStartExec = .text:0x800A6AD4; // type:function size:0x64 +DestroyStart = .text:0x800A6B38; // type:function size:0x84 scope:local +ExecStart = .text:0x800A6BBC; // type:function size:0x400 scope:local +ShowLogo = .text:0x800A6FBC; // type:function size:0x2FC scope:local +FocusStart = .text:0x800A72B8; // type:function size:0x17C scope:local +CreatePlayerStart = .text:0x800A7434; // type:function size:0x2D8 scope:local +ExecPlayerStart = .text:0x800A770C; // type:function size:0x188 scope:local +PlayerFall = .text:0x800A7894; // type:function size:0x1C8 scope:local +PlayerWaitSpeak = .text:0x800A7A5C; // type:function size:0xEC scope:local +PlayerDiceFall = .text:0x800A7B48; // type:function size:0x1A8 scope:local +PlayerDiceRoll = .text:0x800A7CF0; // type:function size:0x454 scope:local +PlayerDiceNumShow = .text:0x800A8144; // type:function size:0xD8 scope:local +PlayerDiceNumHide = .text:0x800A821C; // type:function size:0x250 scope:local +SetPlayerStartState = .text:0x800A846C; // type:function size:0xC8 scope:local +GetPlayerStartState = .text:0x800A8534; // type:function size:0x3C scope:local +ExecStartRoll = .text:0x800A8570; // type:function size:0x6D4 scope:local +InitCamera = .text:0x800A8C44; // type:function size:0x318 scope:local +fn_800A8F5C = .text:0x800A8F5C; // type:function size:0xA4 scope:local +CreateTapWin = .text:0x800A9000; // type:function size:0xDC scope:local +OrderPlayers = .text:0x800A90DC; // type:function size:0x21C scope:local +BoardLast5Exec = .text:0x800A92F8; // type:function size:0x84 +DestroyLast5 = .text:0x800A937C; // type:function size:0x30 scope:local +ExecLast5 = .text:0x800A93AC; // type:function size:0x1D4 scope:local +CreateLast5 = .text:0x800A9580; // type:function size:0x184 scope:local +KillLast5 = .text:0x800A9704; // type:function size:0x48 scope:local +InitHost = .text:0x800A974C; // type:function size:0x10C scope:local +KillHost = .text:0x800A9858; // type:function size:0xA4 scope:local +Last5Main = .text:0x800A98FC; // type:function size:0xCC0 scope:local +CheckJump = .text:0x800AA5BC; // type:function size:0xA4 scope:local +CreateLotteryDrawWheel = .text:0x800AA660; // type:function size:0x1FC scope:local +CreateLotteryDraw = .text:0x800AA85C; // type:function size:0xD4 scope:local +UpdateLotteryDraw = .text:0x800AA930; // type:function size:0x170 scope:local +SetLotteryDrawState = .text:0x800AAAA0; // type:function size:0x88 scope:local +GetLotteryDrawState = .text:0x800AAB28; // type:function size:0x20 scope:local +KillLotteryDrawWheel = .text:0x800AAB48; // type:function size:0x24 scope:local +UpdateLotteryDrawWheel = .text:0x800AAB6C; // type:function size:0x2D0 scope:local +SetLotteryDrawWheelState = .text:0x800AAE3C; // type:function size:0x1D8 scope:local +ExecLotteryDraw = .text:0x800AB014; // type:function size:0x950 scope:local +KillLotteryTicket = .text:0x800AB964; // type:function size:0x4C scope:local +InitLotteryTicket = .text:0x800AB9B0; // type:function size:0x488 scope:local +UpdateLotteryTicket = .text:0x800ABE38; // type:function size:0x2A4 scope:local +SetLotteryTicketState = .text:0x800AC0DC; // type:function size:0x1C0 scope:local +GetLotteryTicketPlayer = .text:0x800AC29C; // type:function size:0x7C scope:local +CheckLotteryTicket = .text:0x800AC318; // type:function size:0x78 scope:local +UpdateLotteryTicketMatch = .text:0x800AC390; // type:function size:0xB0 scope:local +StartHostMove = .text:0x800AC440; // type:function size:0x1CC scope:local +ExecHostMove = .text:0x800AC60C; // type:function size:0x228 scope:local +CheckHostMove = .text:0x800AC834; // type:function size:0x1C scope:local +CreateStopWin = .text:0x800AC850; // type:function size:0xC0 scope:local +CreateLast5Roulette = .text:0x800AC910; // type:function size:0x180 scope:local +UpdateLast5Roulette = .text:0x800ACA90; // type:function size:0x2B0 scope:local +SetLast5RouletteFade = .text:0x800ACD40; // type:function size:0x44 scope:local +SetLast5RouletteState = .text:0x800ACD84; // type:function size:0x38 scope:local +GetLast5RouletteState = .text:0x800ACDBC; // type:function size:0x38 scope:local +GetLast5RouletteResult = .text:0x800ACDF4; // type:function size:0x44 scope:local +CreateTeamResult = .text:0x800ACE38; // type:function size:0x2B4 scope:local +CreateTeamResultWork = .text:0x800AD0EC; // type:function size:0x340 scope:local +SetTeamResultTarget = .text:0x800AD42C; // type:function size:0x58 scope:local +GetTeamResultTarget = .text:0x800AD484; // type:function size:0x58 scope:local +KillTeamResult = .text:0x800AD4DC; // type:function size:0x38 scope:local +UpdateTeamResult = .text:0x800AD514; // type:function size:0x260 scope:local +BoardPauseStart = .text:0x800AD774; // type:function size:0x88 +PauseExit = .text:0x800AD7FC; // type:function size:0x3C0 scope:local +PauseProcess = .text:0x800ADBBC; // type:function size:0x108 scope:local +CreatePauseScreen = .text:0x800ADCC4; // type:function size:0xABC scope:local +DeletePauseScreen = .text:0x800AE780; // type:function size:0x168 scope:local +SetBoxVisible = .text:0x800AE8E8; // type:function size:0x58 scope:local +PauseConfigObjFunc = .text:0x800AE940; // type:function size:0x4F4 scope:local +UpdatePauseText = .text:0x800AEE34; // type:function size:0x310 scope:local +InitPauseQuit = .text:0x800AF144; // type:function size:0x264 scope:local +PauseQuitProcess = .text:0x800AF3A8; // type:function size:0x110 scope:local +DeletePauseQuit = .text:0x800AF4B8; // type:function size:0x48 scope:local +UpdatePadConfig = .text:0x800AF500; // type:function size:0xD4 scope:local +CreatePadConfig = .text:0x800AF5D4; // type:function size:0x1CC scope:local +ScrollInPadConfig = .text:0x800AF7A0; // type:function size:0x178 scope:local +CursorMovePadConfig = .text:0x800AF918; // type:function size:0x238 scope:local +ChangeDiffPadConfig = .text:0x800AFB50; // type:function size:0x3B0 scope:local +ScrollOutPadConfig = .text:0x800AFF00; // type:function size:0x154 scope:local +UpdatePauseBox = .text:0x800B0054; // type:function size:0x390 scope:local +UpdatePauseBoxExt = .text:0x800B03E4; // type:function size:0x3E4 scope:local +ExecPauseConfig = .text:0x800B07C8; // type:function size:0x240 scope:local +CreatePauseControlWin = .text:0x800B0A08; // type:function size:0x210 scope:local +DeletePauseControlWin = .text:0x800B0C18; // type:function size:0x70 scope:local +WaitPauseInput = .text:0x800B0C88; // type:function size:0x1B8 scope:local +ShowPauseConfig = .text:0x800B0E40; // type:function size:0x12C scope:local +CreatePadConfigSprite = .text:0x800B0F6C; // type:function size:0x1A4 scope:local +ShowPadConfigSprite = .text:0x800B1110; // type:function size:0x10C scope:local +PauseCreateNumber = .text:0x800B121C; // type:function size:0xDC scope:local +BoardPauseActiveCheck = .text:0x800B12F8; // type:function size:0x34 +BoardPauseReqCheck = .text:0x800B132C; // type:function size:0x12C +CheckPort = .text:0x800B1458; // type:function size:0x4C scope:local +RotateBox = .text:0x800B14A4; // type:function size:0xC0 scope:local +SearchPathNodeSpace = .text:0x800B1564; // type:function size:0x60 scope:local +InitPathNode = .text:0x800B15C4; // type:function size:0x180 scope:local +FindChildNode = .text:0x800B1744; // type:function size:0xE4 scope:local +GetNumValidLinks = .text:0x800B1828; // type:function size:0xB4 scope:local +AddValidLinks = .text:0x800B18DC; // type:function size:0xD0 scope:local +CheckPathSpace = .text:0x800B19AC; // type:function size:0x30 scope:local +FindValidLink = .text:0x800B19DC; // type:function size:0xAC scope:local +CheckEndSpace = .text:0x800B1A88; // type:function size:0xF0 scope:local +BoardComPathShortcutLenGet = .text:0x800B1B78; // type:function size:0x74C +BoardComPathBestGet = .text:0x800B22C4; // type:function size:0x3E4 +BoardComPathLenGet = .text:0x800B26A8; // type:function size:0x65C +CheckPath = .text:0x800B2D04; // type:function size:0x488 scope:local +BoardComPathBestGetFlag = .text:0x800B318C; // type:function size:0x45C +CheckPathFlag = .text:0x800B35E8; // type:function size:0x4E0 scope:local +TutorialProcFunc = .text:0x800B3AC8; // type:function size:0x34 scope:local +BoardTutorialInit = .text:0x800B3AFC; // type:function size:0x80 +BoardTutorialKill = .text:0x800B3B7C; // type:function size:0x4C +BoardTutorialHookSet = .text:0x800B3BC8; // type:function size:0x8 +BoardTutorialHookExec = .text:0x800B3BD0; // type:function size:0x44 +BoardTutorialPlayerInit = .text:0x800B3C14; // type:function size:0x78 +BoardTutorialWorkSave = .text:0x800B3C8C; // type:function size:0x10C +BoardTutorialWorkRestore = .text:0x800B3D98; // type:function size:0xBC +BoardTutorialDirInputSet = .text:0x800B3E54; // type:function size:0x10 +BoardTutorialBlockSetPos = .text:0x800B3E64; // type:function size:0x40 +BoardTutorialItemSet = .text:0x800B3EA4; // type:function size:0x8 +BoardTutorialHostSet = .text:0x800B3EAC; // type:function size:0x8 +BoardTutorialHostHide = .text:0x800B3EB4; // type:function size:0x30 PPCMfmsr = .text:0x800B3EE4; // type:function size:0x8 scope:global PPCMtmsr = .text:0x800B3EEC; // type:function size:0x8 scope:global PPCMfhid0 = .text:0x800B3EF4; // type:function size:0x8 scope:global @@ -2053,7 +2053,7 @@ OSSetAlarm = .text:0x800B4B90; // type:function size:0x68 scope:global OSCancelAlarm = .text:0x800B4BF8; // type:function size:0x11C DecrementerExceptionCallback = .text:0x800B4D14; // type:function size:0x230 scope:local DecrementerExceptionHandler = .text:0x800B4F44; // type:function size:0x50 scope:local -DLInsert = .text:0x800B4F94; // type:function size:0xAC +DLInsert = .text:0x800B4F94; // type:function size:0xAC scope:local OSAllocFromHeap = .text:0x800B5040; // type:function size:0xFC OSAllocFixed = .text:0x800B513C; // type:function size:0x284 OSFreeToHeap = .text:0x800B53C0; // type:function size:0x7C @@ -2110,7 +2110,7 @@ OSRestoreInterrupts = .text:0x800B6E54; // type:function size:0x24 scope:global __OSSetInterruptHandler = .text:0x800B6E78; // type:function size:0x1C scope:global __OSGetInterruptHandler = .text:0x800B6E94; // type:function size:0x14 __OSInterruptInit = .text:0x800B6EA8; // type:function size:0x74 scope:global -SetInterruptMask = .text:0x800B6F1C; // type:function size:0x2D8 +SetInterruptMask = .text:0x800B6F1C; // type:function size:0x2D8 scope:local __OSMaskInterrupts = .text:0x800B71F4; // type:function size:0x88 scope:global __OSUnmaskInterrupts = .text:0x800B727C; // type:function size:0x88 scope:global __OSDispatchInterrupt = .text:0x800B7304; // type:function size:0x344 @@ -2119,21 +2119,21 @@ OSNotifyLink = .text:0x800B7698; // type:function size:0x4 scope:weak OSNotifyUnlink = .text:0x800B769C; // type:function size:0x4 scope:weak Relocate = .text:0x800B76A0; // type:function size:0x274 scope:local OSLink = .text:0x800B7914; // type:function size:0x250 -Undo = .text:0x800B7B64; // type:function size:0x20C +Undo = .text:0x800B7B64; // type:function size:0x20C scope:local OSUnlink = .text:0x800B7D70; // type:function size:0x94 __OSModuleInit = .text:0x800B7E04; // type:function size:0x18 scope:global OSInitMessageQueue = .text:0x800B7E1C; // type:function size:0x60 OSGetPhysicalMemSize = .text:0x800B7E7C; // type:function size:0xC OSGetConsoleSimulatedMemSize = .text:0x800B7E88; // type:function size:0xC -OnReset = .text:0x800B7E94; // type:function size:0x3C +OnReset = .text:0x800B7E94; // type:function size:0x3C scope:local MEMIntrruptHandler = .text:0x800B7ED0; // type:function size:0x6C scope:local Config24MB = .text:0x800B7F3C; // type:function size:0x80 scope:local Config48MB = .text:0x800B7FBC; // type:function size:0x80 scope:local RealMode = .text:0x800B803C; // type:function size:0x18 scope:local __OSInitMemoryProtection = .text:0x800B8054; // type:function size:0x120 scope:global __OSUnlockAllMutex = .text:0x800B8174; // type:function size:0x70 -Run = .text:0x800B81E4; // type:function size:0x40 -Callback = .text:0x800B8224; // type:function size:0xC +Run = .text:0x800B81E4; // type:function size:0x40 scope:local +Callback = .text:0x800B8224; // type:function size:0xC scope:local __OSReboot = .text:0x800B8230; // type:function size:0x1C0 scope:global OSRegisterResetFunction = .text:0x800B83F0; // type:function size:0x84 scope:global Reset = .text:0x800B8474; // type:function size:0x70 scope:local @@ -2142,12 +2142,12 @@ OSResetSystem = .text:0x800B852C; // type:function size:0x278 scope:global OSGetResetCode = .text:0x800B87A4; // type:function size:0x30 scope:global __OSResetSWInterruptHandler = .text:0x800B87D4; // type:function size:0xF4 scope:global OSGetResetButtonState = .text:0x800B88C8; // type:function size:0x298 -WriteSramCallback = .text:0x800B8B60; // type:function size:0x60 -WriteSram = .text:0x800B8BC0; // type:function size:0x118 +WriteSramCallback = .text:0x800B8B60; // type:function size:0x60 scope:local +WriteSram = .text:0x800B8BC0; // type:function size:0x118 scope:local __OSInitSram = .text:0x800B8CD8; // type:function size:0x134 scope:global __OSLockSram = .text:0x800B8E0C; // type:function size:0x5C scope:global __OSLockSramEx = .text:0x800B8E68; // type:function size:0x5C scope:global -UnlockSram = .text:0x800B8EC4; // type:function size:0x308 +UnlockSram = .text:0x800B8EC4; // type:function size:0x308 scope:local __OSUnlockSram = .text:0x800B91CC; // type:function size:0x24 scope:global __OSUnlockSramEx = .text:0x800B91F0; // type:function size:0x24 scope:global __OSSyncSram = .text:0x800B9214; // type:function size:0x10 scope:global @@ -2164,39 +2164,39 @@ OSCheckStopwatch = .text:0x800B96C0; // type:function size:0x70 OSResetStopwatch = .text:0x800B9730; // type:function size:0x28 OSDumpStopwatch = .text:0x800B9758; // type:function size:0x1A4 __OSSystemCallVectorStart = .text:0x800B98FC; // type:label scope:global -SystemCallVector = .text:0x800B98FC; // type:function size:0x20 +SystemCallVector = .text:0x800B98FC; // type:function size:0x20 scope:local __OSSystemCallVectorEnd = .text:0x800B9918; // type:label scope:global __OSInitSystemCall = .text:0x800B991C; // type:function size:0x64 scope:global __OSThreadInit = .text:0x800B9980; // type:function size:0x128 scope:global OSInitThreadQueue = .text:0x800B9AA8; // type:function size:0x10 scope:global -fn_800B9AB8 = .text:0x800B9AB8; // type:function size:0xC +OSGetCurrentThread = .text:0x800B9AB8; // type:function size:0xC OSDisableScheduler = .text:0x800B9AC4; // type:function size:0x40 scope:global OSEnableScheduler = .text:0x800B9B04; // type:function size:0x40 scope:global -fn_800B9B44 = .text:0x800B9B44; // type:function size:0x68 -fn_800B9BAC = .text:0x800B9BAC; // type:function size:0x3C -fn_800B9BE8 = .text:0x800B9BE8; // type:function size:0x1C0 +UnsetRun = .text:0x800B9B44; // type:function size:0x68 scope:local +__OSGetEffectivePriority = .text:0x800B9BAC; // type:function size:0x3C +SetEffectivePriority = .text:0x800B9BE8; // type:function size:0x1C0 scope:local SelectThread = .text:0x800B9DA8; // type:function size:0x200 scope:local __OSReschedule = .text:0x800B9FA8; // type:function size:0x30 scope:global -fn_800B9FD8 = .text:0x800B9FD8; // type:function size:0x3C -fn_800BA014 = .text:0x800BA014; // type:function size:0x120 -fn_800BA134 = .text:0x800BA134; // type:function size:0xE4 +OSYieldThread = .text:0x800B9FD8; // type:function size:0x3C +OSCreateThread = .text:0x800BA014; // type:function size:0x120 +OSExitThread = .text:0x800BA134; // type:function size:0xE4 OSCancelThread = .text:0x800BA218; // type:function size:0x1BC scope:global -fn_800BA3D4 = .text:0x800BA3D4; // type:function size:0x288 -fn_800BA65C = .text:0x800BA65C; // type:function size:0x170 -fn_800BA7CC = .text:0x800BA7CC; // type:function size:0xEC -fn_800BA8B8 = .text:0x800BA8B8; // type:function size:0x104 -fn_800BA9BC = .text:0x800BA9BC; // type:function size:0x90 +OSResumeThread = .text:0x800BA3D4; // type:function size:0x288 +OSSuspendThread = .text:0x800BA65C; // type:function size:0x170 +OSSleepThread = .text:0x800BA7CC; // type:function size:0xEC +OSWakeupThread = .text:0x800BA8B8; // type:function size:0x104 +OSSetIdleFunction = .text:0x800BA9BC; // type:function size:0x90 OSGetTime = .text:0x800BAA4C; // type:function size:0x18 scope:global OSGetTick = .text:0x800BAA64; // type:function size:0x8 scope:global __OSGetSystemTime = .text:0x800BAA6C; // type:function size:0x64 scope:global -fn_800BAAD0 = .text:0x800BAAD0; // type:function size:0x19C -fn_800BAC6C = .text:0x800BAC6C; // type:function size:0x204 +GetDates = .text:0x800BAAD0; // type:function size:0x19C scope:local +OSTicksToCalendarTime = .text:0x800BAC6C; // type:function size:0x204 __init_user = .text:0x800BAE70; // type:function size:0x20 scope:global __init_cpp = .text:0x800BAE90; // type:function size:0x54 scope:local _ExitProcess = .text:0x800BAEE4; // type:function size:0x20 scope:global DBInit = .text:0x800BAF04; // type:function size:0x28 scope:global -fn_800BAF2C = .text:0x800BAF2C; // type:function size:0x48 -__DBExceptionDestination = .text:0x800BAF74; // type:function size:0x10 scope:global +__DBExceptionDestinationAux = .text:0x800BAF2C; // type:function size:0x48 +__DBExceptionDestination = .text:0x800BAF74; // type:function size:0x10 scope:local __DBIsExceptionMarked = .text:0x800BAF84; // type:function size:0x1C scope:global DBPrintf = .text:0x800BAFA0; // type:function size:0x50 scope:global PSMTXIdentity = .text:0x800BAFF0; // type:function size:0x2C @@ -2209,497 +2209,497 @@ PSMTXRotRad = .text:0x800BB32C; // type:function size:0x70 PSMTXRotTrig = .text:0x800BB39C; // type:function size:0xA8 PSMTXRotAxisRad = .text:0x800BB444; // type:function size:0x104 PSMTXTrans = .text:0x800BB548; // type:function size:0x34 -fn_800BB57C = .text:0x800BB57C; // type:function size:0x28 -fn_800BB5A4 = .text:0x800BB5A4; // type:function size:0xA4 -fn_800BB648 = .text:0x800BB648; // type:function size:0x18C -fn_800BB7D4 = .text:0x800BB7D4; // type:function size:0xCC -fn_800BB8A0 = .text:0x800BB8A0; // type:function size:0x54 -fn_800BB8F4 = .text:0x800BB8F4; // type:function size:0x8C -fn_800BB980 = .text:0x800BB980; // type:function size:0x54 -fn_800BB9D4 = .text:0x800BB9D4; // type:function size:0xD0 -fn_800BBAA4 = .text:0x800BBAA4; // type:function size:0x98 -fn_800BBB3C = .text:0x800BBB3C; // type:function size:0x24 -fn_800BBB60 = .text:0x800BBB60; // type:function size:0x24 -fn_800BBB84 = .text:0x800BBB84; // type:function size:0x1C -fn_800BBBA0 = .text:0x800BBBA0; // type:function size:0x44 -fn_800BBBE4 = .text:0x800BBBE4; // type:function size:0x18 -fn_800BBBFC = .text:0x800BBBFC; // type:function size:0x3C -fn_800BBC38 = .text:0x800BBC38; // type:function size:0x20 -fn_800BBC58 = .text:0x800BBC58; // type:function size:0x3C -fn_800BBC94 = .text:0x800BBC94; // type:function size:0xD8 -fn_800BBD6C = .text:0x800BBD6C; // type:function size:0xD4 -fn_800BBE40 = .text:0x800BBE40; // type:function size:0x28 -fn_800BBE68 = .text:0x800BBE68; // type:function size:0x4C -fn_800BBEB4 = .text:0x800BBEB4; // type:function size:0x44 -fn_800BBEF8 = .text:0x800BBEF8; // type:function size:0x24 -fn_800BBF1C = .text:0x800BBF1C; // type:function size:0x5C -fn_800BBF78 = .text:0x800BBF78; // type:function size:0x54 -fn_800BBFCC = .text:0x800BBFCC; // type:function size:0x50 -fn_800BC01C = .text:0x800BC01C; // type:function size:0x8C -fn_800BC0A8 = .text:0x800BC0A8; // type:function size:0x258 -fn_800BC300 = .text:0x800BC300; // type:function size:0x174 -fn_800BC474 = .text:0x800BC474; // type:function size:0x4C -fn_800BC4C0 = .text:0x800BC4C0; // type:function size:0x118 +PSMTXScale = .text:0x800BB57C; // type:function size:0x28 +PSMTXQuat = .text:0x800BB5A4; // type:function size:0xA4 +C_MTXLookAt = .text:0x800BB648; // type:function size:0x18C +C_MTXLightPerspective = .text:0x800BB7D4; // type:function size:0xCC +PSMTXMultVec = .text:0x800BB8A0; // type:function size:0x54 +PSMTXMultVecArray = .text:0x800BB8F4; // type:function size:0x8C +PSMTXMultVecSR = .text:0x800BB980; // type:function size:0x54 +C_MTXPerspective = .text:0x800BB9D4; // type:function size:0xD0 +C_MTXOrtho = .text:0x800BBAA4; // type:function size:0x98 +PSVECAdd = .text:0x800BBB3C; // type:function size:0x24 +PSVECSubtract = .text:0x800BBB60; // type:function size:0x24 +PSVECScale = .text:0x800BBB84; // type:function size:0x1C +PSVECNormalize = .text:0x800BBBA0; // type:function size:0x44 +PSVECSquareMag = .text:0x800BBBE4; // type:function size:0x18 +PSVECMag = .text:0x800BBBFC; // type:function size:0x3C +PSVECDotProduct = .text:0x800BBC38; // type:function size:0x20 +PSVECCrossProduct = .text:0x800BBC58; // type:function size:0x3C +C_VECHalfAngle = .text:0x800BBC94; // type:function size:0xD8 +C_VECReflect = .text:0x800BBD6C; // type:function size:0xD4 +PSVECSquareDistance = .text:0x800BBE40; // type:function size:0x28 +PSVECDistance = .text:0x800BBE68; // type:function size:0x4C +C_QUATAdd = .text:0x800BBEB4; // type:function size:0x44 +PSQUATAdd = .text:0x800BBEF8; // type:function size:0x24 +PSQUATMultiply = .text:0x800BBF1C; // type:function size:0x5C +PSQUATNormalize = .text:0x800BBF78; // type:function size:0x54 +PSQUATInverse = .text:0x800BBFCC; // type:function size:0x50 +C_QUATRotAxisRad = .text:0x800BC01C; // type:function size:0x8C +C_QUATMtx = .text:0x800BC0A8; // type:function size:0x258 +C_QUATSlerp = .text:0x800BC300; // type:function size:0x174 +PSMTXReorder = .text:0x800BC474; // type:function size:0x4C +PSMTXROMultVecArray = .text:0x800BC4C0; // type:function size:0x118 __DVDInitWA = .text:0x800BC5D8; // type:function size:0x40 scope:global __DVDInterruptHandler = .text:0x800BC618; // type:function size:0x2F4 scope:global fn_800BC90C = .text:0x800BC90C; // type:function size:0x84 AlarmHandlerForTimeout = .text:0x800BC990; // type:function size:0x70 scope:local -fn_800BCA00 = .text:0x800BCA00; // type:function size:0x110 -fn_800BCB10 = .text:0x800BCB10; // type:function size:0x80 -fn_800BCB90 = .text:0x800BCB90; // type:function size:0x298 -fn_800BCE28 = .text:0x800BCE28; // type:function size:0x94 +Read = .text:0x800BCA00; // type:function size:0x110 scope:local +SeekTwiceBeforeRead = .text:0x800BCB10; // type:function size:0x80 scope:local +DVDLowRead = .text:0x800BCB90; // type:function size:0x298 +DVDLowSeek = .text:0x800BCE28; // type:function size:0x94 DVDLowWaitCoverClose = .text:0x800BCEBC; // type:function size:0x2C scope:global -fn_800BCEE8 = .text:0x800BCEE8; // type:function size:0xA4 +DVDLowReadDiskID = .text:0x800BCEE8; // type:function size:0xA4 DVDLowStopMotor = .text:0x800BCF8C; // type:function size:0x8C scope:global -fn_800BD018 = .text:0x800BD018; // type:function size:0x8C -fn_800BD0A4 = .text:0x800BD0A4; // type:function size:0x9C -fn_800BD140 = .text:0x800BD140; // type:function size:0x98 -fn_800BD1D8 = .text:0x800BD1D8; // type:function size:0x8C -fn_800BD264 = .text:0x800BD264; // type:function size:0x9C +DVDLowRequestError = .text:0x800BD018; // type:function size:0x8C +DVDLowInquiry = .text:0x800BD0A4; // type:function size:0x9C +DVDLowAudioStream = .text:0x800BD140; // type:function size:0x98 +DVDLowRequestAudioStatus = .text:0x800BD1D8; // type:function size:0x8C +DVDLowAudioBufferConfig = .text:0x800BD264; // type:function size:0x9C DVDLowReset = .text:0x800BD300; // type:function size:0xBC scope:global -fn_800BD3BC = .text:0x800BD3BC; // type:function size:0x14 -fn_800BD3D0 = .text:0x800BD3D0; // type:function size:0x18 +DVDLowBreak = .text:0x800BD3BC; // type:function size:0x14 +DVDLowClearCallback = .text:0x800BD3D0; // type:function size:0x18 __DVDLowSetWAType = .text:0x800BD3E8; // type:function size:0x44 scope:global __DVDFSInit = .text:0x800BD42C; // type:function size:0x38 scope:global -fn_800BD464 = .text:0x800BD464; // type:function size:0x2F4 -fn_800BD758 = .text:0x800BD758; // type:function size:0x74 -fn_800BD7CC = .text:0x800BD7CC; // type:function size:0xC8 -fn_800BD894 = .text:0x800BD894; // type:function size:0x24 -fn_800BD8B8 = .text:0x800BD8B8; // type:function size:0x160 -fn_800BDA18 = .text:0x800BDA18; // type:function size:0xC4 -fn_800BDADC = .text:0x800BDADC; // type:function size:0xC0 -fn_800BDB9C = .text:0x800BDB9C; // type:function size:0x30 -fn_800BDBCC = .text:0x800BDBCC; // type:function size:0x118 -fn_800BDCE4 = .text:0x800BDCE4; // type:function size:0x24 +DVDConvertPathToEntrynum = .text:0x800BD464; // type:function size:0x2F4 +DVDFastOpen = .text:0x800BD758; // type:function size:0x74 +DVDOpen = .text:0x800BD7CC; // type:function size:0xC8 +DVDClose = .text:0x800BD894; // type:function size:0x24 +entryToPath = .text:0x800BD8B8; // type:function size:0x160 scope:local +DVDGetCurrentDir = .text:0x800BDA18; // type:function size:0xC4 +DVDReadAsyncPrio = .text:0x800BDADC; // type:function size:0xC0 +cbForReadAsync = .text:0x800BDB9C; // type:function size:0x30 scope:local +DVDReadPrio = .text:0x800BDBCC; // type:function size:0x118 +cbForReadSync = .text:0x800BDCE4; // type:function size:0x24 scope:local DVDInit = .text:0x800BDD08; // type:function size:0xFC scope:global -fn_800BDE04 = .text:0x800BDE04; // type:function size:0x54 -fn_800BDE58 = .text:0x800BDE58; // type:function size:0x80 +stateReadingFST = .text:0x800BDE04; // type:function size:0x54 scope:local +cbForStateReadingFST = .text:0x800BDE58; // type:function size:0x80 scope:local cbForStateError = .text:0x800BDED8; // type:function size:0xA8 scope:local -fn_800BDF80 = .text:0x800BDF80; // type:function size:0x9C -fn_800BE01C = .text:0x800BE01C; // type:function size:0x28 -fn_800BE044 = .text:0x800BE044; // type:function size:0xB4 -fn_800BE0F8 = .text:0x800BE0F8; // type:function size:0x294 -fn_800BE38C = .text:0x800BE38C; // type:function size:0x68 -fn_800BE3F4 = .text:0x800BE3F4; // type:function size:0x98 -fn_800BE48C = .text:0x800BE48C; // type:function size:0x28 -fn_800BE4B4 = .text:0x800BE4B4; // type:function size:0x158 -fn_800BE60C = .text:0x800BE60C; // type:function size:0xE4 -fn_800BE6F0 = .text:0x800BE6F0; // type:function size:0x34 -fn_800BE724 = .text:0x800BE724; // type:function size:0x38 -fn_800BE75C = .text:0x800BE75C; // type:function size:0x114 -fn_800BE870 = .text:0x800BE870; // type:function size:0xA4 -fn_800BE914 = .text:0x800BE914; // type:function size:0xFC +stateTimeout = .text:0x800BDF80; // type:function size:0x9C scope:local +stateGettingError = .text:0x800BE01C; // type:function size:0x28 scope:local +CategorizeError = .text:0x800BE044; // type:function size:0xB4 scope:local +cbForStateGettingError = .text:0x800BE0F8; // type:function size:0x294 scope:local +cbForUnrecoveredError = .text:0x800BE38C; // type:function size:0x68 scope:local +cbForUnrecoveredErrorRetry = .text:0x800BE3F4; // type:function size:0x98 scope:local +stateGoToRetry = .text:0x800BE48C; // type:function size:0x28 scope:local +cbForStateGoToRetry = .text:0x800BE4B4; // type:function size:0x158 scope:local +stateCheckID = .text:0x800BE60C; // type:function size:0xE4 scope:local +stateCheckID3 = .text:0x800BE6F0; // type:function size:0x34 scope:local +stateCheckID2 = .text:0x800BE724; // type:function size:0x38 scope:local +cbForStateCheckID1 = .text:0x800BE75C; // type:function size:0x114 scope:local +cbForStateCheckID2 = .text:0x800BE870; // type:function size:0xA4 scope:local +cbForStateCheckID3 = .text:0x800BE914; // type:function size:0xFC scope:local AlarmHandler = .text:0x800BEA10; // type:function size:0x44 scope:local -fn_800BEA54 = .text:0x800BEA54; // type:function size:0xCC -fn_800BEB20 = .text:0x800BEB20; // type:function size:0x30 -fn_800BEB50 = .text:0x800BEB50; // type:function size:0x70 -fn_800BEBC0 = .text:0x800BEBC0; // type:function size:0x28 +stateCoverClosed = .text:0x800BEA54; // type:function size:0xCC scope:local +stateCoverClosed_CMD = .text:0x800BEB20; // type:function size:0x30 scope:local +cbForStateCoverClosed = .text:0x800BEB50; // type:function size:0x70 scope:local +stateMotorStopped = .text:0x800BEBC0; // type:function size:0x28 scope:local cbForStateMotorStopped = .text:0x800BEBE8; // type:function size:0xE4 scope:local stateReady = .text:0x800BECCC; // type:function size:0x248 scope:local stateBusy = .text:0x800BEF14; // type:function size:0x2C0 scope:local -fn_800BF1D4 = .text:0x800BF1D4; // type:function size:0x5D4 -fn_800BF7A8 = .text:0x800BF7A8; // type:function size:0xDC -fn_800BF884 = .text:0x800BF884; // type:function size:0xD0 +cbForStateBusy = .text:0x800BF1D4; // type:function size:0x5D4 +DVDReadAbsAsyncPrio = .text:0x800BF7A8; // type:function size:0xDC +DVDReadAbsAsyncForBS = .text:0x800BF884; // type:function size:0xD0 DVDReadDiskID = .text:0x800BF954; // type:function size:0xD4 scope:global DVDInquiryAsync = .text:0x800BFA28; // type:function size:0xD0 scope:global DVDReset = .text:0x800BFAF8; // type:function size:0x44 scope:global -fn_800BFB3C = .text:0x800BFB3C; // type:function size:0x4C +DVDGetCommandBlockStatus = .text:0x800BFB3C; // type:function size:0x4C DVDGetDriveStatus = .text:0x800BFB88; // type:function size:0xAC scope:global -fn_800BFC34 = .text:0x800BFC34; // type:function size:0x10 -fn_800BFC44 = .text:0x800BFC44; // type:function size:0x270 -fn_800BFEB4 = .text:0x800BFEB4; // type:function size:0xAC -fn_800BFF60 = .text:0x800BFF60; // type:function size:0x24 -fn_800BFF84 = .text:0x800BFF84; // type:function size:0x8 -fn_800BFF8C = .text:0x800BFF8C; // type:function size:0xE4 -fn_800C0070 = .text:0x800C0070; // type:function size:0x11C +DVDSetAutoInvalidation = .text:0x800BFC34; // type:function size:0x10 +DVDCancelAsync = .text:0x800BFC44; // type:function size:0x270 +DVDCancel = .text:0x800BFEB4; // type:function size:0xAC +cbForCancelSync = .text:0x800BFF60; // type:function size:0x24 scope:local +DVDGetCurrentDiskID = .text:0x800BFF84; // type:function size:0x8 +DVDCheckDisk = .text:0x800BFF8C; // type:function size:0xE4 +__DVDPrepareResetAsync = .text:0x800C0070; // type:function size:0x11C __DVDClearWaitingQueue = .text:0x800C018C; // type:function size:0x38 scope:global __DVDPushWaitingQueue = .text:0x800C01C4; // type:function size:0x68 scope:global __DVDPopWaitingQueue = .text:0x800C022C; // type:function size:0xA0 scope:global __DVDCheckWaitingQueue = .text:0x800C02CC; // type:function size:0x58 scope:global -fn_800C0324 = .text:0x800C0324; // type:function size:0x60 +__DVDDequeueWaitingQueue = .text:0x800C0324; // type:function size:0x60 ErrorCode2Num = .text:0x800C0384; // type:function size:0x11C scope:local __DVDStoreErrorCode = .text:0x800C04A0; // type:function size:0x7C scope:global cb = .text:0x800C051C; // type:function size:0xD8 scope:local __fstLoad = .text:0x800C05F4; // type:function size:0x168 scope:global -fn_800C075C = .text:0x800C075C; // type:function size:0x228 -fn_800C0984 = .text:0x800C0984; // type:function size:0x44 -fn_800C09C8 = .text:0x800C09C8; // type:function size:0x44 -fn_800C0A0C = .text:0x800C0A0C; // type:function size:0x90 -fn_800C0A9C = .text:0x800C0A9C; // type:function size:0x1F8 -fn_800C0C94 = .text:0x800C0C94; // type:function size:0x478 -fn_800C110C = .text:0x800C110C; // type:function size:0x54 -fn_800C1160 = .text:0x800C1160; // type:function size:0x2D4 -fn_800C1434 = .text:0x800C1434; // type:function size:0x1A0 -fn_800C15D4 = .text:0x800C15D4; // type:function size:0x79C -fn_800C1D70 = .text:0x800C1D70; // type:function size:0x394 -fn_800C2104 = .text:0x800C2104; // type:function size:0x11C -fn_800C2220 = .text:0x800C2220; // type:function size:0x6C -fn_800C228C = .text:0x800C228C; // type:function size:0x7C -fn_800C2308 = .text:0x800C2308; // type:function size:0x8 -fn_800C2310 = .text:0x800C2310; // type:function size:0x68 -fn_800C2378 = .text:0x800C2378; // type:function size:0xA8 -fn_800C2420 = .text:0x800C2420; // type:function size:0x98 +__VIRetraceHandler = .text:0x800C075C; // type:function size:0x228 scope:local +VISetPreRetraceCallback = .text:0x800C0984; // type:function size:0x44 +VISetPostRetraceCallback = .text:0x800C09C8; // type:function size:0x44 +getTiming = .text:0x800C0A0C; // type:function size:0x90 scope:local +__VIInit = .text:0x800C0A9C; // type:function size:0x1F8 +VIInit = .text:0x800C0C94; // type:function size:0x478 +VIWaitForRetrace = .text:0x800C110C; // type:function size:0x54 +setFbbRegs = .text:0x800C1160; // type:function size:0x2D4 scope:local +setVerticalRegs = .text:0x800C1434; // type:function size:0x1A0 scope:local +VIConfigure = .text:0x800C15D4; // type:function size:0x79C +VIConfigurePan = .text:0x800C1D70; // type:function size:0x394 +VIFlush = .text:0x800C2104; // type:function size:0x11C +VISetNextFrameBuffer = .text:0x800C2220; // type:function size:0x6C +VISetBlack = .text:0x800C228C; // type:function size:0x7C +VIGetRetraceCount = .text:0x800C2308; // type:function size:0x8 +getCurrentFieldEvenOdd = .text:0x800C2310; // type:function size:0x68 scope:local +VIGetNextField = .text:0x800C2378; // type:function size:0xA8 +VIGetCurrentLine = .text:0x800C2420; // type:function size:0x98 VIGetTvFormat = .text:0x800C24B8; // type:function size:0x7C scope:global -fn_800C2534 = .text:0x800C2534; // type:function size:0x3C -fn_800C2570 = .text:0x800C2570; // type:function size:0x8 -fn_800C2578 = .text:0x800C2578; // type:function size:0x228 -fn_800C27A0 = .text:0x800C27A0; // type:function size:0x310 -fn_800C2AB0 = .text:0x800C2AB0; // type:function size:0xC4 -fn_800C2B74 = .text:0x800C2B74; // type:function size:0x394 -fn_800C2F08 = .text:0x800C2F08; // type:function size:0x58 -fn_800C2F60 = .text:0x800C2F60; // type:function size:0x96C -fn_800C38CC = .text:0x800C38CC; // type:function size:0x130 -fn_800C39FC = .text:0x800C39FC; // type:function size:0x108 -fn_800C3B04 = .text:0x800C3B04; // type:function size:0x1A4 -fn_800C3CA8 = .text:0x800C3CA8; // type:function size:0xC4 -fn_800C3D6C = .text:0x800C3D6C; // type:function size:0xC0 -fn_800C3E2C = .text:0x800C3E2C; // type:function size:0xD8 -fn_800C3F04 = .text:0x800C3F04; // type:function size:0x32C -fn_800C4230 = .text:0x800C4230; // type:function size:0x134 -fn_800C4364 = .text:0x800C4364; // type:function size:0x100 -fn_800C4464 = .text:0x800C4464; // type:function size:0x104 -fn_800C4568 = .text:0x800C4568; // type:function size:0x210 -fn_800C4778 = .text:0x800C4778; // type:function size:0x3AC -fn_800C4B24 = .text:0x800C4B24; // type:function size:0xA4 -fn_800C4BC8 = .text:0x800C4BC8; // type:function size:0x60 -fn_800C4C28 = .text:0x800C4C28; // type:function size:0x174 -fn_800C4D9C = .text:0x800C4D9C; // type:function size:0x174 -fn_800C4F10 = .text:0x800C4F10; // type:function size:0x3F8 -fn_800C5308 = .text:0x800C5308; // type:function size:0x194 -fn_800C549C = .text:0x800C549C; // type:function size:0x60 -fn_800C54FC = .text:0x800C54FC; // type:function size:0x54 +VIGetDTVStatus = .text:0x800C2534; // type:function size:0x3C +DEMOGetRenderModeObj = .text:0x800C2570; // type:function size:0x8 +DEMOInitCaption = .text:0x800C2578; // type:function size:0x228 +DEMOPuts = .text:0x800C27A0; // type:function size:0x310 +DEMOPrintf = .text:0x800C2AB0; // type:function size:0xC4 +DEMOWriteStats = .text:0x800C2B74; // type:function size:0x394 +DEMOUpdateStats = .text:0x800C2F08; // type:function size:0x58 +DEMOPrintStats = .text:0x800C2F60; // type:function size:0x96C +ClampStick = .text:0x800C38CC; // type:function size:0x130 scope:local +PADClamp = .text:0x800C39FC; // type:function size:0x108 +UpdateOrigin = .text:0x800C3B04; // type:function size:0x1A4 scope:local +PADOriginCallback = .text:0x800C3CA8; // type:function size:0xC4 scope:local +PADOriginUpdateCallback = .text:0x800C3D6C; // type:function size:0xC0 scope:local +PADProbeCallback = .text:0x800C3E2C; // type:function size:0xD8 scope:local +PADTypeAndStatusCallback = .text:0x800C3F04; // type:function size:0x32C scope:local +PADReceiveCheckCallback = .text:0x800C4230; // type:function size:0x134 scope:local +PADReset = .text:0x800C4364; // type:function size:0x100 +PADRecalibrate = .text:0x800C4464; // type:function size:0x104 +PADInit = .text:0x800C4568; // type:function size:0x210 +PADRead = .text:0x800C4778; // type:function size:0x3AC +PADControlMotor = .text:0x800C4B24; // type:function size:0xA4 +PADSetSpec = .text:0x800C4BC8; // type:function size:0x60 +SPEC0_MakeStatus = .text:0x800C4C28; // type:function size:0x174 scope:local +SPEC1_MakeStatus = .text:0x800C4D9C; // type:function size:0x174 scope:local +SPEC2_MakeStatus = .text:0x800C4F10; // type:function size:0x3F8 scope:local +fn_800C5308 = .text:0x800C5308; // type:function size:0x194 scope:local +SamplingHandler = .text:0x800C549C; // type:function size:0x60 scope:local +PADSetSamplingCallback = .text:0x800C54FC; // type:function size:0x54 __PADDisableRecalibration = .text:0x800C5550; // type:function size:0x7C scope:global -fn_800C55CC = .text:0x800C55CC; // type:function size:0x44 -fn_800C5610 = .text:0x800C5610; // type:function size:0x88 -fn_800C5698 = .text:0x800C5698; // type:function size:0x18 -fn_800C56B0 = .text:0x800C56B0; // type:function size:0x18 -fn_800C56C8 = .text:0x800C56C8; // type:function size:0x1C -fn_800C56E4 = .text:0x800C56E4; // type:function size:0xD8 -fn_800C57BC = .text:0x800C57BC; // type:function size:0x10 -fn_800C57CC = .text:0x800C57CC; // type:function size:0xE0 -fn_800C58AC = .text:0x800C58AC; // type:function size:0x14 -fn_800C58C0 = .text:0x800C58C0; // type:function size:0xD4 -fn_800C5994 = .text:0x800C5994; // type:function size:0x10 -fn_800C59A4 = .text:0x800C59A4; // type:function size:0x1C -fn_800C59C0 = .text:0x800C59C0; // type:function size:0x10 -fn_800C59D0 = .text:0x800C59D0; // type:function size:0x1C -fn_800C59EC = .text:0x800C59EC; // type:function size:0x10 -fn_800C59FC = .text:0x800C59FC; // type:function size:0x164 -fn_800C5B60 = .text:0x800C5B60; // type:function size:0x7C -fn_800C5BDC = .text:0x800C5BDC; // type:function size:0x90 -fn_800C5C6C = .text:0x800C5C6C; // type:function size:0x58 -fn_800C5CC4 = .text:0x800C5CC4; // type:function size:0x1E4 -fn_800C5EA8 = .text:0x800C5EA8; // type:function size:0x44 -fn_800C5EEC = .text:0x800C5EEC; // type:function size:0x3C -fn_800C5F28 = .text:0x800C5F28; // type:function size:0xF0 -fn_800C6018 = .text:0x800C6018; // type:function size:0x68 -fn_800C6080 = .text:0x800C6080; // type:function size:0x74 -fn_800C60F4 = .text:0x800C60F4; // type:function size:0x8 -fn_800C60FC = .text:0x800C60FC; // type:function size:0xBC -fn_800C61B8 = .text:0x800C61B8; // type:function size:0x4 -fn_800C61BC = .text:0x800C61BC; // type:function size:0x8 -fn_800C61C4 = .text:0x800C61C4; // type:function size:0x8 -fn_800C61CC = .text:0x800C61CC; // type:function size:0x78 -fn_800C6244 = .text:0x800C6244; // type:function size:0x914 -fn_800C6B58 = .text:0x800C6B58; // type:function size:0x100 -fn_800C6C58 = .text:0x800C6C58; // type:function size:0x4 -fn_800C6C5C = .text:0x800C6C5C; // type:function size:0xCC -fn_800C6D28 = .text:0x800C6D28; // type:function size:0x68 -fn_800C6D90 = .text:0x800C6D90; // type:function size:0x15C -fn_800C6EEC = .text:0x800C6EEC; // type:function size:0x10 -fn_800C6EFC = .text:0x800C6EFC; // type:function size:0x10 -fn_800C6F0C = .text:0x800C6F0C; // type:function size:0x18 -fn_800C6F24 = .text:0x800C6F24; // type:function size:0x14 -fn_800C6F38 = .text:0x800C6F38; // type:function size:0xB8 -fn_800C6FF0 = .text:0x800C6FF0; // type:function size:0x48 -fn_800C7038 = .text:0x800C7038; // type:function size:0x40 -fn_800C7078 = .text:0x800C7078; // type:function size:0x10 -fn_800C7088 = .text:0x800C7088; // type:function size:0x70 -fn_800C70F8 = .text:0x800C70F8; // type:function size:0x50 -fn_800C7148 = .text:0x800C7148; // type:function size:0x424 -fn_800C756C = .text:0x800C756C; // type:function size:0x1A0 -fn_800C770C = .text:0x800C770C; // type:function size:0x18C -fn_800C7898 = .text:0x800C7898; // type:function size:0xA0 -fn_800C7938 = .text:0x800C7938; // type:function size:0x94 -fn_800C79CC = .text:0x800C79CC; // type:function size:0x7C -fn_800C7A48 = .text:0x800C7A48; // type:function size:0x24 +AIRegisterDMACallback = .text:0x800C55CC; // type:function size:0x44 +AIInitDMA = .text:0x800C5610; // type:function size:0x88 +AIStartDMA = .text:0x800C5698; // type:function size:0x18 +AIStopDMA = .text:0x800C56B0; // type:function size:0x18 +AIGetDMAStartAddr = .text:0x800C56C8; // type:function size:0x1C +AISetStreamPlayState = .text:0x800C56E4; // type:function size:0xD8 +AIGetStreamPlayState = .text:0x800C57BC; // type:function size:0x10 +AISetDSPSampleRate = .text:0x800C57CC; // type:function size:0xE0 +AIGetDSPSampleRate = .text:0x800C58AC; // type:function size:0x14 +__AI_set_stream_sample_rate = .text:0x800C58C0; // type:function size:0xD4 scope:local +AIGetStreamSampleRate = .text:0x800C5994; // type:function size:0x10 +AISetStreamVolLeft = .text:0x800C59A4; // type:function size:0x1C +AIGetStreamVolLeft = .text:0x800C59C0; // type:function size:0x10 +AISetStreamVolRight = .text:0x800C59D0; // type:function size:0x1C +AIGetStreamVolRight = .text:0x800C59EC; // type:function size:0x10 +AIInit = .text:0x800C59FC; // type:function size:0x164 +__AISHandler = .text:0x800C5B60; // type:function size:0x7C +__AIDHandler = .text:0x800C5BDC; // type:function size:0x90 +__AICallbackStackSwitch = .text:0x800C5C6C; // type:function size:0x58 +__AI_SRC_INIT = .text:0x800C5CC4; // type:function size:0x1E4 +ARRegisterDMACallback = .text:0x800C5EA8; // type:function size:0x44 +ARGetDMAStatus = .text:0x800C5EEC; // type:function size:0x3C +ARStartDMA = .text:0x800C5F28; // type:function size:0xF0 +ARAlloc = .text:0x800C6018; // type:function size:0x68 +ARFree = .text:0x800C6080; // type:function size:0x74 +ARCheckInit = .text:0x800C60F4; // type:function size:0x8 +ARInit = .text:0x800C60FC; // type:function size:0xBC +ARSetSize = .text:0x800C61B8; // type:function size:0x4 +ARGetBaseAddress = .text:0x800C61BC; // type:function size:0x8 +ARGetSize = .text:0x800C61C4; // type:function size:0x8 +__ARHandler = .text:0x800C61CC; // type:function size:0x78 scope:local +__ARChecksize = .text:0x800C6244; // type:function size:0x914 scope:local +__ARQServiceQueueLo = .text:0x800C6B58; // type:function size:0x100 +__ARQCallbackHack = .text:0x800C6C58; // type:function size:0x4 +__ARQInterruptServiceRoutine = .text:0x800C6C5C; // type:function size:0xCC +ARQInit = .text:0x800C6D28; // type:function size:0x68 +ARQPostRequest = .text:0x800C6D90; // type:function size:0x15C +DSPCheckMailToDSP = .text:0x800C6EEC; // type:function size:0x10 +DSPCheckMailFromDSP = .text:0x800C6EFC; // type:function size:0x10 +DSPReadMailFromDSP = .text:0x800C6F0C; // type:function size:0x18 +DSPSendMailToDSP = .text:0x800C6F24; // type:function size:0x14 +DSPInit = .text:0x800C6F38; // type:function size:0xB8 +DSPReset = .text:0x800C6FF0; // type:function size:0x48 +DSPHalt = .text:0x800C7038; // type:function size:0x40 +DSPGetDMAStatus = .text:0x800C7078; // type:function size:0x10 +DSPAddTask = .text:0x800C7088; // type:function size:0x70 +__DSP_debug_printf = .text:0x800C70F8; // type:function size:0x50 +__DSPHandler = .text:0x800C7148; // type:function size:0x424 +__DSP_exec_task = .text:0x800C756C; // type:function size:0x1A0 +__DSP_boot_task = .text:0x800C770C; // type:function size:0x18C +__DSP_insert_task = .text:0x800C7898; // type:function size:0xA0 +__DSP_remove_task = .text:0x800C7938; // type:function size:0x94 +__GXDefaultTexRegionCallback = .text:0x800C79CC; // type:function size:0x7C +__GXDefaultTlutRegionCallback = .text:0x800C7A48; // type:function size:0x24 GXInit = .text:0x800C7A6C; // type:function size:0x7CC scope:global __GXInitGX = .text:0x800C8238; // type:function size:0x884 scope:global -fn_800C8ABC = .text:0x800C8ABC; // type:function size:0x13C +GXCPInterruptHandler = .text:0x800C8ABC; // type:function size:0x13C scope:local GXInitFifoBase = .text:0x800C8BF8; // type:function size:0x6C scope:global -fn_800C8C64 = .text:0x800C8C64; // type:function size:0x70 -fn_800C8CD4 = .text:0x800C8CD4; // type:function size:0xC +GXInitFifoPtrs = .text:0x800C8C64; // type:function size:0x70 +GXInitFifoLimits = .text:0x800C8CD4; // type:function size:0xC GXSetCPUFifo = .text:0x800C8CE0; // type:function size:0x110 scope:global GXSetGPFifo = .text:0x800C8DF0; // type:function size:0x178 scope:global -fn_800C8F68 = .text:0x800C8F68; // type:function size:0x20 -fn_800C8F88 = .text:0x800C8F88; // type:function size:0xDC +GXSaveCPUFifo = .text:0x800C8F68; // type:function size:0x20 +__GXSaveCPUFifoAux = .text:0x800C8F88; // type:function size:0xDC __GXFifoInit = .text:0x800C9064; // type:function size:0x4C scope:global -fn_800C90B0 = .text:0x800C90B0; // type:function size:0x28 -fn_800C90D8 = .text:0x800C90D8; // type:function size:0x24 -fn_800C90FC = .text:0x800C90FC; // type:function size:0x44 -fn_800C9140 = .text:0x800C9140; // type:function size:0x4C -fn_800C918C = .text:0x800C918C; // type:function size:0x4C -fn_800C91D8 = .text:0x800C91D8; // type:function size:0xFC -fn_800C92D4 = .text:0x800C92D4; // type:function size:0x8 -fn_800C92DC = .text:0x800C92DC; // type:function size:0x8 -fn_800C92E4 = .text:0x800C92E4; // type:function size:0x158 -fn_800C943C = .text:0x800C943C; // type:function size:0x360 -fn_800C979C = .text:0x800C979C; // type:function size:0x54 -fn_800C97F0 = .text:0x800C97F0; // type:function size:0x124 -fn_800C9914 = .text:0x800C9914; // type:function size:0x4C -fn_800C9960 = .text:0x800C9960; // type:function size:0x35C -fn_800C9CBC = .text:0x800C9CBC; // type:function size:0x9C -fn_800C9D58 = .text:0x800C9D58; // type:function size:0x8C -fn_800C9DE4 = .text:0x800C9DE4; // type:function size:0x10 -fn_800C9DF4 = .text:0x800C9DF4; // type:function size:0x2D0 -fn_800CA0C4 = .text:0x800CA0C4; // type:function size:0x48 +__GXFifoReadEnable = .text:0x800C90B0; // type:function size:0x28 +__GXFifoReadDisable = .text:0x800C90D8; // type:function size:0x24 +__GXFifoLink = .text:0x800C90FC; // type:function size:0x44 +__GXWriteFifoIntEnable = .text:0x800C9140; // type:function size:0x4C +__GXWriteFifoIntReset = .text:0x800C918C; // type:function size:0x4C +__GXCleanGPFifo = .text:0x800C91D8; // type:function size:0xFC +GXGetCPUFifo = .text:0x800C92D4; // type:function size:0x8 +GXGetGPFifo = .text:0x800C92DC; // type:function size:0x8 +__GXXfVtxSpecs = .text:0x800C92E4; // type:function size:0x158 +GXSetVtxDesc = .text:0x800C943C; // type:function size:0x360 +__GXSetVCD = .text:0x800C979C; // type:function size:0x54 +__GXCalculateVLim = .text:0x800C97F0; // type:function size:0x124 +GXClearVtxDesc = .text:0x800C9914; // type:function size:0x4C +GXSetVtxAttrFmt = .text:0x800C9960; // type:function size:0x35C +__GXSetVAT = .text:0x800C9CBC; // type:function size:0x9C +GXSetArray = .text:0x800C9D58; // type:function size:0x8C +GXInvalidateVtxCache = .text:0x800C9DE4; // type:function size:0x10 +GXSetTexCoordGen2 = .text:0x800C9DF4; // type:function size:0x2D0 +GXSetNumTexGens = .text:0x800CA0C4; // type:function size:0x48 GXSetMisc = .text:0x800CA10C; // type:function size:0x78 scope:global -fn_800CA184 = .text:0x800CA184; // type:function size:0x5C -fn_800CA1E0 = .text:0x800CA1E0; // type:function size:0x34 -fn_800CA214 = .text:0x800CA214; // type:function size:0xCC -fn_800CA2E0 = .text:0x800CA2E0; // type:function size:0xB8 -fn_800CA398 = .text:0x800CA398; // type:function size:0x98 -fn_800CA430 = .text:0x800CA430; // type:function size:0x4C -fn_800CA47C = .text:0x800CA47C; // type:function size:0x80 -fn_800CA4FC = .text:0x800CA4FC; // type:function size:0x24 -fn_800CA520 = .text:0x800CA520; // type:function size:0x14 -fn_800CA534 = .text:0x800CA534; // type:function size:0x14 -fn_800CA548 = .text:0x800CA548; // type:function size:0x1C -fn_800CA564 = .text:0x800CA564; // type:function size:0x88 -fn_800CA5EC = .text:0x800CA5EC; // type:function size:0x1C -fn_800CA608 = .text:0x800CA608; // type:function size:0x14 -fn_800CA61C = .text:0x800CA61C; // type:function size:0x1C -fn_800CA638 = .text:0x800CA638; // type:function size:0x28 -fn_800CA660 = .text:0x800CA660; // type:function size:0x44 -fn_800CA6A4 = .text:0x800CA6A4; // type:function size:0x88 -fn_800CA72C = .text:0x800CA72C; // type:function size:0x84 +GXFlush = .text:0x800CA184; // type:function size:0x5C +GXResetWriteGatherPipe = .text:0x800CA1E0; // type:function size:0x34 +__GXAbortWaitPECopyDone = .text:0x800CA214; // type:function size:0xCC +GXSetDrawSync = .text:0x800CA2E0; // type:function size:0xB8 +GXSetDrawDone = .text:0x800CA398; // type:function size:0x98 +GXWaitDrawDone = .text:0x800CA430; // type:function size:0x4C +GXDrawDone = .text:0x800CA47C; // type:function size:0x80 +GXPixModeSync = .text:0x800CA4FC; // type:function size:0x24 +GXPokeAlphaMode = .text:0x800CA520; // type:function size:0x14 +GXPokeAlphaRead = .text:0x800CA534; // type:function size:0x14 +GXPokeAlphaUpdate = .text:0x800CA548; // type:function size:0x1C +GXPokeBlendMode = .text:0x800CA564; // type:function size:0x88 +GXPokeColorUpdate = .text:0x800CA5EC; // type:function size:0x1C +GXPokeDstAlpha = .text:0x800CA608; // type:function size:0x14 +GXPokeDither = .text:0x800CA61C; // type:function size:0x1C +GXPokeZMode = .text:0x800CA638; // type:function size:0x28 +GXSetDrawSyncCallback = .text:0x800CA660; // type:function size:0x44 +GXTokenInterruptHandler = .text:0x800CA6A4; // type:function size:0x88 +GXFinishInterruptHandler = .text:0x800CA72C; // type:function size:0x84 __GXPEInit = .text:0x800CA7B0; // type:function size:0x80 scope:global -fn_800CA830 = .text:0x800CA830; // type:function size:0xA0 -fn_800CA8D0 = .text:0x800CA8D0; // type:function size:0xF0 -fn_800CA9C0 = .text:0x800CA9C0; // type:function size:0x88 -fn_800CAA48 = .text:0x800CAA48; // type:function size:0x58 -fn_800CAAA0 = .text:0x800CAAA0; // type:function size:0x54 -fn_800CAAF4 = .text:0x800CAAF4; // type:function size:0x64 -fn_800CAB58 = .text:0x800CAB58; // type:function size:0x50 -fn_800CABA8 = .text:0x800CABA8; // type:function size:0x44 -fn_800CABEC = .text:0x800CABEC; // type:function size:0x24 -fn_800CAC10 = .text:0x800CAC10; // type:function size:0x120 -fn_800CAD30 = .text:0x800CAD30; // type:function size:0xC0 -fn_800CADF0 = .text:0x800CADF0; // type:function size:0xC0 -fn_800CAEB0 = .text:0x800CAEB0; // type:function size:0x44 -fn_800CAEF4 = .text:0x800CAEF4; // type:function size:0x170 -fn_800CB064 = .text:0x800CB064; // type:function size:0x2C -fn_800CB090 = .text:0x800CB090; // type:function size:0x7C -fn_800CB10C = .text:0x800CB10C; // type:function size:0xD4 -fn_800CB1E0 = .text:0x800CB1E0; // type:function size:0x68 -fn_800CB248 = .text:0x800CB248; // type:function size:0x228 -fn_800CB470 = .text:0x800CB470; // type:function size:0x1C -fn_800CB48C = .text:0x800CB48C; // type:function size:0x170 -fn_800CB5FC = .text:0x800CB5FC; // type:function size:0x190 -fn_800CB78C = .text:0x800CB78C; // type:function size:0x38 -fn_800CB7C4 = .text:0x800CB7C4; // type:function size:0x1C -fn_800CB7E0 = .text:0x800CB7E0; // type:function size:0x10 -fn_800CB7F0 = .text:0x800CB7F0; // type:function size:0x180 -fn_800CB970 = .text:0x800CB970; // type:function size:0xD0 -fn_800CBA40 = .text:0x800CBA40; // type:function size:0x10 -fn_800CBA50 = .text:0x800CBA50; // type:function size:0x1C -fn_800CBA6C = .text:0x800CBA6C; // type:function size:0xD4 -fn_800CBB40 = .text:0x800CBB40; // type:function size:0x28 -fn_800CBB68 = .text:0x800CBB68; // type:function size:0x148 -fn_800CBCB0 = .text:0x800CBCB0; // type:function size:0x168 -fn_800CBE18 = .text:0x800CBE18; // type:function size:0x168 -fn_800CBF80 = .text:0x800CBF80; // type:function size:0x4C -fn_800CBFCC = .text:0x800CBFCC; // type:function size:0x1E4 -fn_800CC1B0 = .text:0x800CC1B0; // type:function size:0x15C -fn_800CC30C = .text:0x800CC30C; // type:function size:0xC8 -fn_800CC3D4 = .text:0x800CC3D4; // type:function size:0x274 -fn_800CC648 = .text:0x800CC648; // type:function size:0x48 -fn_800CC690 = .text:0x800CC690; // type:function size:0x194 -fn_800CC824 = .text:0x800CC824; // type:function size:0x8 -fn_800CC82C = .text:0x800CC82C; // type:function size:0x1A8 -fn_800CC9D4 = .text:0x800CC9D4; // type:function size:0x54 -fn_800CCA28 = .text:0x800CCA28; // type:function size:0x48 -fn_800CCA70 = .text:0x800CCA70; // type:function size:0x9C +__GXSetDirtyState = .text:0x800CA830; // type:function size:0xA0 +GXBegin = .text:0x800CA8D0; // type:function size:0xF0 +__GXSendFlushPrim = .text:0x800CA9C0; // type:function size:0x88 +GXSetLineWidth = .text:0x800CAA48; // type:function size:0x58 +GXSetPointSize = .text:0x800CAAA0; // type:function size:0x54 +GXEnableTexOffsets = .text:0x800CAAF4; // type:function size:0x64 +GXSetCullMode = .text:0x800CAB58; // type:function size:0x50 +GXSetCoPlanar = .text:0x800CABA8; // type:function size:0x44 +__GXSetGenMode = .text:0x800CABEC; // type:function size:0x24 +GXAdjustForOverscan = .text:0x800CAC10; // type:function size:0x120 +GXSetDispCopySrc = .text:0x800CAD30; // type:function size:0xC0 +GXSetTexCopySrc = .text:0x800CADF0; // type:function size:0xC0 +GXSetDispCopyDst = .text:0x800CAEB0; // type:function size:0x44 +GXSetTexCopyDst = .text:0x800CAEF4; // type:function size:0x170 +GXSetDispCopyFrame2Field = .text:0x800CB064; // type:function size:0x2C +GXSetCopyClamp = .text:0x800CB090; // type:function size:0x7C +GXSetDispCopyYScale = .text:0x800CB10C; // type:function size:0xD4 +GXSetCopyClear = .text:0x800CB1E0; // type:function size:0x68 +GXSetCopyFilter = .text:0x800CB248; // type:function size:0x228 +GXSetDispCopyGamma = .text:0x800CB470; // type:function size:0x1C +GXCopyDisp = .text:0x800CB48C; // type:function size:0x170 +GXCopyTex = .text:0x800CB5FC; // type:function size:0x190 +GXClearBoundingBox = .text:0x800CB78C; // type:function size:0x38 +GXInitLightAttn = .text:0x800CB7C4; // type:function size:0x1C +GXInitLightAttnK = .text:0x800CB7E0; // type:function size:0x10 +GXInitLightSpot = .text:0x800CB7F0; // type:function size:0x180 +GXInitLightDistAttn = .text:0x800CB970; // type:function size:0xD0 +GXInitLightPos = .text:0x800CBA40; // type:function size:0x10 +GXInitLightDir = .text:0x800CBA50; // type:function size:0x1C +GXInitSpecularDir = .text:0x800CBA6C; // type:function size:0xD4 +GXInitLightColor = .text:0x800CBB40; // type:function size:0x28 +GXLoadLightObjImm = .text:0x800CBB68; // type:function size:0x148 +GXSetChanAmbColor = .text:0x800CBCB0; // type:function size:0x168 +GXSetChanMatColor = .text:0x800CBE18; // type:function size:0x168 +GXSetNumChans = .text:0x800CBF80; // type:function size:0x4C +GXSetChanCtrl = .text:0x800CBFCC; // type:function size:0x1E4 +GXGetTexBufferSize = .text:0x800CC1B0; // type:function size:0x15C +__GetImageTileCount = .text:0x800CC30C; // type:function size:0xC8 +GXInitTexObj = .text:0x800CC3D4; // type:function size:0x274 +GXInitTexObjCI = .text:0x800CC648; // type:function size:0x48 +GXInitTexObjLOD = .text:0x800CC690; // type:function size:0x194 +GXGetTexObjFmt = .text:0x800CC824; // type:function size:0x8 +GXLoadTexObjPreLoaded = .text:0x800CC82C; // type:function size:0x1A8 +GXLoadTexObj = .text:0x800CC9D4; // type:function size:0x54 +GXInitTlutObj = .text:0x800CCA28; // type:function size:0x48 +GXLoadTlut = .text:0x800CCA70; // type:function size:0x9C GXInitTexCacheRegion = .text:0x800CCB0C; // type:function size:0x120 scope:global GXInitTlutRegion = .text:0x800CCC2C; // type:function size:0x48 scope:global -fn_800CCC74 = .text:0x800CCC74; // type:function size:0x48 -fn_800CCCBC = .text:0x800CCCBC; // type:function size:0x14 -fn_800CCCD0 = .text:0x800CCCD0; // type:function size:0x14 -fn_800CCCE4 = .text:0x800CCCE4; // type:function size:0x9C -fn_800CCD80 = .text:0x800CCD80; // type:function size:0xCC -fn_800CCE4C = .text:0x800CCE4C; // type:function size:0x17C +GXInvalidateTexAll = .text:0x800CCC74; // type:function size:0x48 +GXSetTexRegionCallback = .text:0x800CCCBC; // type:function size:0x14 +GXSetTlutRegionCallback = .text:0x800CCCD0; // type:function size:0x14 +GXSetTexCoordScaleManually = .text:0x800CCCE4; // type:function size:0x9C +__SetSURegs = .text:0x800CCD80; // type:function size:0xCC scope:local +__GXSetSUTexRegs = .text:0x800CCE4C; // type:function size:0x17C __GXSetTmemConfig = .text:0x800CCFC8; // type:function size:0x240 scope:global -fn_800CD208 = .text:0x800CD208; // type:function size:0x9C -fn_800CD2A4 = .text:0x800CD2A4; // type:function size:0x160 -fn_800CD404 = .text:0x800CD404; // type:function size:0x1D4 -fn_800CD5D8 = .text:0x800CD5D8; // type:function size:0x138 -fn_800CD710 = .text:0x800CD710; // type:function size:0x2C -fn_800CD73C = .text:0x800CD73C; // type:function size:0x48 -fn_800CD784 = .text:0x800CD784; // type:function size:0x64 -fn_800CD7E8 = .text:0x800CD7E8; // type:function size:0x1AC -fn_800CD994 = .text:0x800CD994; // type:function size:0xCC +GXSetTevIndirect = .text:0x800CD208; // type:function size:0x9C +GXSetIndTexMtx = .text:0x800CD2A4; // type:function size:0x160 +GXSetIndTexCoordScale = .text:0x800CD404; // type:function size:0x1D4 +GXSetIndTexOrder = .text:0x800CD5D8; // type:function size:0x138 +GXSetNumIndStages = .text:0x800CD710; // type:function size:0x2C +GXSetTevDirect = .text:0x800CD73C; // type:function size:0x48 +GXSetTevIndWarp = .text:0x800CD784; // type:function size:0x64 +GXSetTevIndTile = .text:0x800CD7E8; // type:function size:0x1AC +__GXUpdateBPMask = .text:0x800CD994; // type:function size:0xCC __GXFlushTextureState = .text:0x800CDA60; // type:function size:0x24 scope:global -fn_800CDA84 = .text:0x800CDA84; // type:function size:0x1A4 -fn_800CDC28 = .text:0x800CDC28; // type:function size:0x80 -fn_800CDCA8 = .text:0x800CDCA8; // type:function size:0x84 -fn_800CDD2C = .text:0x800CDD2C; // type:function size:0xC0 -fn_800CDDEC = .text:0x800CDDEC; // type:function size:0xC0 -fn_800CDEAC = .text:0x800CDEAC; // type:function size:0x74 -fn_800CDF20 = .text:0x800CDF20; // type:function size:0x74 -fn_800CDF94 = .text:0x800CDF94; // type:function size:0x74 -fn_800CE008 = .text:0x800CE008; // type:function size:0x6C -fn_800CE074 = .text:0x800CE074; // type:function size:0x6C -fn_800CE0E0 = .text:0x800CE0E0; // type:function size:0x58 -fn_800CE138 = .text:0x800CE138; // type:function size:0xA0 -fn_800CE1D8 = .text:0x800CE1D8; // type:function size:0x50 -fn_800CE228 = .text:0x800CE228; // type:function size:0x84 -fn_800CE2AC = .text:0x800CE2AC; // type:function size:0x1DC -fn_800CE488 = .text:0x800CE488; // type:function size:0x34 -fn_800CE4BC = .text:0x800CE4BC; // type:function size:0x1B0 -fn_800CE66C = .text:0x800CE66C; // type:function size:0x100 -fn_800CE76C = .text:0x800CE76C; // type:function size:0x104 -fn_800CE870 = .text:0x800CE870; // type:function size:0x40 -fn_800CE8B0 = .text:0x800CE8B0; // type:function size:0x40 -fn_800CE8F0 = .text:0x800CE8F0; // type:function size:0x78 -fn_800CE968 = .text:0x800CE968; // type:function size:0x40 -fn_800CE9A8 = .text:0x800CE9A8; // type:function size:0x110 -fn_800CEAB8 = .text:0x800CEAB8; // type:function size:0x40 -fn_800CEAF8 = .text:0x800CEAF8; // type:function size:0x54 -fn_800CEB4C = .text:0x800CEB4C; // type:function size:0x38 -fn_800CEB84 = .text:0x800CEB84; // type:function size:0x80 -fn_800CEC04 = .text:0x800CEC04; // type:function size:0x4 -fn_800CEC08 = .text:0x800CEC08; // type:function size:0xC8 -fn_800CECD0 = .text:0x800CECD0; // type:function size:0xD4 -fn_800CEDA4 = .text:0x800CEDA4; // type:function size:0x70 -fn_800CEE14 = .text:0x800CEE14; // type:function size:0x174 -fn_800CEF88 = .text:0x800CEF88; // type:function size:0xD4 -fn_800CF05C = .text:0x800CF05C; // type:function size:0x78 -fn_800CF0D4 = .text:0x800CF0D4; // type:function size:0x34 -fn_800CF108 = .text:0x800CF108; // type:function size:0x34 -fn_800CF13C = .text:0x800CF13C; // type:function size:0x24 -fn_800CF160 = .text:0x800CF160; // type:function size:0x3C -fn_800CF19C = .text:0x800CF19C; // type:function size:0x40 -fn_800CF1DC = .text:0x800CF1DC; // type:function size:0x3C -fn_800CF218 = .text:0x800CF218; // type:function size:0x84 -fn_800CF29C = .text:0x800CF29C; // type:function size:0x11C -fn_800CF3B8 = .text:0x800CF3B8; // type:function size:0x24 -fn_800CF3DC = .text:0x800CF3DC; // type:function size:0x4C -fn_800CF428 = .text:0x800CF428; // type:function size:0xB0 -fn_800CF4D8 = .text:0x800CF4D8; // type:function size:0x44 -fn_800CF51C = .text:0x800CF51C; // type:function size:0x28 -fn_800CF544 = .text:0x800CF544; // type:function size:0x84 -fn_800CF5C8 = .text:0x800CF5C8; // type:function size:0x898 -fn_800CFE60 = .text:0x800CFE60; // type:function size:0x1A8 -fn_800D0008 = .text:0x800D0008; // type:function size:0x10 -fn_800D0018 = .text:0x800D0018; // type:function size:0x2C -fn_800D0044 = .text:0x800D0044; // type:function size:0x2C -fn_800D0070 = .text:0x800D0070; // type:function size:0x214 -fn_800D0284 = .text:0x800D0284; // type:function size:0xA8 -fn_800D032C = .text:0x800D032C; // type:function size:0x138 -fn_800D0464 = .text:0x800D0464; // type:function size:0x30 -fn_800D0494 = .text:0x800D0494; // type:function size:0x50 -fn_800D04E4 = .text:0x800D04E4; // type:function size:0x94 -fn_800D0578 = .text:0x800D0578; // type:function size:0x1C -fn_800D0594 = .text:0x800D0594; // type:function size:0x4 -fn_800D0598 = .text:0x800D0598; // type:function size:0x34 -fn_800D05CC = .text:0x800D05CC; // type:function size:0xD8 -fn_800D06A4 = .text:0x800D06A4; // type:function size:0x118 -fn_800D07BC = .text:0x800D07BC; // type:function size:0xA8 -fn_800D0864 = .text:0x800D0864; // type:function size:0x84 -fn_800D08E8 = .text:0x800D08E8; // type:function size:0xC0 -fn_800D09A8 = .text:0x800D09A8; // type:function size:0xF0 -fn_800D0A98 = .text:0x800D0A98; // type:function size:0xAC -fn_800D0B44 = .text:0x800D0B44; // type:function size:0xA4 -fn_800D0BE8 = .text:0x800D0BE8; // type:function size:0x22C -fn_800D0E14 = .text:0x800D0E14; // type:function size:0x110 -fn_800D0F24 = .text:0x800D0F24; // type:function size:0x1B4 -fn_800D10D8 = .text:0x800D10D8; // type:function size:0x134 -fn_800D120C = .text:0x800D120C; // type:function size:0x11C -fn_800D1328 = .text:0x800D1328; // type:function size:0xE0 -fn_800D1408 = .text:0x800D1408; // type:function size:0x9C -fn_800D14A4 = .text:0x800D14A4; // type:function size:0x38 -fn_800D14DC = .text:0x800D14DC; // type:function size:0xB8 -fn_800D1594 = .text:0x800D1594; // type:function size:0x64 -fn_800D15F8 = .text:0x800D15F8; // type:function size:0x150 -fn_800D1748 = .text:0x800D1748; // type:function size:0x84 -fn_800D17CC = .text:0x800D17CC; // type:function size:0x98 -fn_800D1864 = .text:0x800D1864; // type:function size:0x50 -fn_800D18B4 = .text:0x800D18B4; // type:function size:0x16C -fn_800D1A20 = .text:0x800D1A20; // type:function size:0x144 -fn_800D1B64 = .text:0x800D1B64; // type:function size:0xC4 -fn_800D1C28 = .text:0x800D1C28; // type:function size:0xB58 -fn_800D2780 = .text:0x800D2780; // type:function size:0x70 -fn_800D27F0 = .text:0x800D27F0; // type:function size:0x324 -fn_800D2B14 = .text:0x800D2B14; // type:function size:0xDC -fn_800D2BF0 = .text:0x800D2BF0; // type:function size:0x64 -fn_800D2C54 = .text:0x800D2C54; // type:function size:0xDC -fn_800D2D30 = .text:0x800D2D30; // type:function size:0x64 -fn_800D2D94 = .text:0x800D2D94; // type:function size:0x8 -fn_800D2D9C = .text:0x800D2D9C; // type:function size:0xD4 -fn_800D2E70 = .text:0x800D2E70; // type:function size:0xC8 -fn_800D2F38 = .text:0x800D2F38; // type:function size:0x118 -fn_800D3050 = .text:0x800D3050; // type:function size:0x9C -fn_800D30EC = .text:0x800D30EC; // type:function size:0xAC -fn_800D3198 = .text:0x800D3198; // type:function size:0x8 -fn_800D31A0 = .text:0x800D31A0; // type:function size:0xD0 -fn_800D3270 = .text:0x800D3270; // type:function size:0xC8 -fn_800D3338 = .text:0x800D3338; // type:function size:0xC4 -fn_800D33FC = .text:0x800D33FC; // type:function size:0x1B0 -fn_800D35AC = .text:0x800D35AC; // type:function size:0x284 -fn_800D3830 = .text:0x800D3830; // type:function size:0x240 -fn_800D3A70 = .text:0x800D3A70; // type:function size:0x284 -fn_800D3CF4 = .text:0x800D3CF4; // type:function size:0x8C -fn_800D3D80 = .text:0x800D3D80; // type:function size:0x590 -fn_800D4310 = .text:0x800D4310; // type:function size:0x54 -fn_800D4364 = .text:0x800D4364; // type:function size:0xCC -fn_800D4430 = .text:0x800D4430; // type:function size:0x17C -fn_800D45AC = .text:0x800D45AC; // type:function size:0x410 -fn_800D49BC = .text:0x800D49BC; // type:function size:0x138 -fn_800D4AF4 = .text:0x800D4AF4; // type:function size:0x1A0 -fn_800D4C94 = .text:0x800D4C94; // type:function size:0x48 -fn_800D4CDC = .text:0x800D4CDC; // type:function size:0x9C -fn_800D4D78 = .text:0x800D4D78; // type:function size:0xAC -fn_800D4E24 = .text:0x800D4E24; // type:function size:0x144 -fn_800D4F68 = .text:0x800D4F68; // type:function size:0x658 -fn_800D55C0 = .text:0x800D55C0; // type:function size:0x54 -fn_800D5614 = .text:0x800D5614; // type:function size:0x68 -fn_800D567C = .text:0x800D567C; // type:function size:0x98 -fn_800D5714 = .text:0x800D5714; // type:function size:0x30 -fn_800D5744 = .text:0x800D5744; // type:function size:0x150 -fn_800D5894 = .text:0x800D5894; // type:function size:0x178 -fn_800D5A0C = .text:0x800D5A0C; // type:function size:0x54 -fn_800D5A60 = .text:0x800D5A60; // type:function size:0x8 -fn_800D5A68 = .text:0x800D5A68; // type:function size:0x130 -fn_800D5B98 = .text:0x800D5B98; // type:function size:0x220 -fn_800D5DB8 = .text:0x800D5DB8; // type:function size:0x48 -fn_800D5E00 = .text:0x800D5E00; // type:function size:0x1B8 -fn_800D5FB8 = .text:0x800D5FB8; // type:function size:0x130 -fn_800D60E8 = .text:0x800D60E8; // type:function size:0x148 -fn_800D6230 = .text:0x800D6230; // type:function size:0x48 -fn_800D6278 = .text:0x800D6278; // type:function size:0x170 -fn_800D63E8 = .text:0x800D63E8; // type:function size:0xB0 -fn_800D6498 = .text:0x800D6498; // type:function size:0x114 -fn_800D65AC = .text:0x800D65AC; // type:function size:0x48 -fn_800D65F4 = .text:0x800D65F4; // type:function size:0xA4 -fn_800D6698 = .text:0x800D6698; // type:function size:0x110 -fn_800D67A8 = .text:0x800D67A8; // type:function size:0x48 -fn_800D67F0 = .text:0x800D67F0; // type:function size:0x1F8 -fn_800D69E8 = .text:0x800D69E8; // type:function size:0x12C -fn_800D6B14 = .text:0x800D6B14; // type:function size:0x174 -fn_800D6C88 = .text:0x800D6C88; // type:function size:0x48 -fn_800D6CD0 = .text:0x800D6CD0; // type:function size:0xC4 -fn_800D6D94 = .text:0x800D6D94; // type:function size:0xF4 +GXSetTevOp = .text:0x800CDA84; // type:function size:0x1A4 +GXSetTevColorIn = .text:0x800CDC28; // type:function size:0x80 +GXSetTevAlphaIn = .text:0x800CDCA8; // type:function size:0x84 +GXSetTevColorOp = .text:0x800CDD2C; // type:function size:0xC0 +GXSetTevAlphaOp = .text:0x800CDDEC; // type:function size:0xC0 +GXSetTevColor = .text:0x800CDEAC; // type:function size:0x74 +GXSetTevColorS10 = .text:0x800CDF20; // type:function size:0x74 +GXSetTevKColor = .text:0x800CDF94; // type:function size:0x74 +GXSetTevKColorSel = .text:0x800CE008; // type:function size:0x6C +GXSetTevKAlphaSel = .text:0x800CE074; // type:function size:0x6C +GXSetTevSwapMode = .text:0x800CE0E0; // type:function size:0x58 +GXSetTevSwapModeTable = .text:0x800CE138; // type:function size:0xA0 +GXSetAlphaCompare = .text:0x800CE1D8; // type:function size:0x50 +GXSetZTexture = .text:0x800CE228; // type:function size:0x84 +GXSetTevOrder = .text:0x800CE2AC; // type:function size:0x1DC +GXSetNumTevStages = .text:0x800CE488; // type:function size:0x34 +GXSetFog = .text:0x800CE4BC; // type:function size:0x1B0 +GXSetFogRangeAdj = .text:0x800CE66C; // type:function size:0x100 +GXSetBlendMode = .text:0x800CE76C; // type:function size:0x104 +GXSetColorUpdate = .text:0x800CE870; // type:function size:0x40 +GXSetAlphaUpdate = .text:0x800CE8B0; // type:function size:0x40 +GXSetZMode = .text:0x800CE8F0; // type:function size:0x78 +GXSetZCompLoc = .text:0x800CE968; // type:function size:0x40 +GXSetPixelFmt = .text:0x800CE9A8; // type:function size:0x110 +GXSetDither = .text:0x800CEAB8; // type:function size:0x40 +GXSetDstAlpha = .text:0x800CEAF8; // type:function size:0x54 +GXSetFieldMask = .text:0x800CEB4C; // type:function size:0x38 +GXSetFieldMode = .text:0x800CEB84; // type:function size:0x80 +__GXSetRange = .text:0x800CEC04; // type:function size:0x4 +GXBeginDisplayList = .text:0x800CEC08; // type:function size:0xC8 +GXEndDisplayList = .text:0x800CECD0; // type:function size:0xD4 +GXCallDisplayList = .text:0x800CEDA4; // type:function size:0x70 +GXProject = .text:0x800CEE14; // type:function size:0x174 +GXSetProjection = .text:0x800CEF88; // type:function size:0xD4 +GXSetProjectionv = .text:0x800CF05C; // type:function size:0x78 +WriteMTXPS4x3 = .text:0x800CF0D4; // type:function size:0x34 scope:local +WriteMTXPS3x3from3x4 = .text:0x800CF108; // type:function size:0x34 scope:local +WriteMTXPS4x2 = .text:0x800CF13C; // type:function size:0x24 scope:local +GXLoadPosMtxImm = .text:0x800CF160; // type:function size:0x3C +GXLoadNrmMtxImm = .text:0x800CF19C; // type:function size:0x40 +GXSetCurrentMtx = .text:0x800CF1DC; // type:function size:0x3C +GXLoadTexMtxImm = .text:0x800CF218; // type:function size:0x84 +GXSetViewportJitter = .text:0x800CF29C; // type:function size:0x11C +GXSetViewport = .text:0x800CF3B8; // type:function size:0x24 +GXGetViewportv = .text:0x800CF3DC; // type:function size:0x4C +GXSetScissor = .text:0x800CF428; // type:function size:0xB0 +GXSetScissorBoxOffset = .text:0x800CF4D8; // type:function size:0x44 +GXSetClipMode = .text:0x800CF51C; // type:function size:0x28 +__GXSetMatrixIndex = .text:0x800CF544; // type:function size:0x84 +GXSetGPMetric = .text:0x800CF5C8; // type:function size:0x898 +GXReadGPMetric = .text:0x800CFE60; // type:function size:0x1A8 +GXClearGPMetric = .text:0x800D0008; // type:function size:0x10 +GXReadGP0Metric = .text:0x800D0018; // type:function size:0x2C +GXReadGP1Metric = .text:0x800D0044; // type:function size:0x2C +GXReadMemMetric = .text:0x800D0070; // type:function size:0x214 +GXClearMemMetric = .text:0x800D0284; // type:function size:0xA8 +GXReadPixMetric = .text:0x800D032C; // type:function size:0x138 +GXClearPixMetric = .text:0x800D0464; // type:function size:0x30 +GXSetVCacheMetric = .text:0x800D0494; // type:function size:0x50 +GXReadVCacheMetric = .text:0x800D04E4; // type:function size:0x94 +GXClearVCacheMetric = .text:0x800D0578; // type:function size:0x1C +__CARDDefaultApiCallback = .text:0x800D0594; // type:function size:0x4 +__CARDSyncCallback = .text:0x800D0598; // type:function size:0x34 +__CARDExtHandler = .text:0x800D05CC; // type:function size:0xD8 +__CARDExiHandler = .text:0x800D06A4; // type:function size:0x118 +__CARDTxHandler = .text:0x800D07BC; // type:function size:0xA8 +__CARDUnlockedHandler = .text:0x800D0864; // type:function size:0x84 +__CARDEnableInterrupt = .text:0x800D08E8; // type:function size:0xC0 +__CARDReadStatus = .text:0x800D09A8; // type:function size:0xF0 +__CARDClearStatus = .text:0x800D0A98; // type:function size:0xAC +TimeoutHandler = .text:0x800D0B44; // type:function size:0xA4 +Retry = .text:0x800D0BE8; // type:function size:0x22C scope:local +UnlockedCallback = .text:0x800D0E14; // type:function size:0x110 scope:local +__CARDStart = .text:0x800D0F24; // type:function size:0x1B4 scope:local +__CARDReadSegment = .text:0x800D10D8; // type:function size:0x134 +__CARDWritePage = .text:0x800D120C; // type:function size:0x11C +__CARDEraseSector = .text:0x800D1328; // type:function size:0xE0 +CARDInit = .text:0x800D1408; // type:function size:0x9C +__CARDSetDiskID = .text:0x800D14A4; // type:function size:0x38 +__CARDGetControlBlock = .text:0x800D14DC; // type:function size:0xB8 +__CARDPutControlBlock = .text:0x800D1594; // type:function size:0x64 +CARDFreeBlocks = .text:0x800D15F8; // type:function size:0x150 +CARDGetSectorSize = .text:0x800D1748; // type:function size:0x84 +__CARDSync = .text:0x800D17CC; // type:function size:0x98 +OnReset = .text:0x800D1864; // type:function size:0x50 scope:local +bitrev = .text:0x800D18B4; // type:function size:0x16C scope:local +ReadArrayUnlock = .text:0x800D1A20; // type:function size:0x144 scope:local +DummyLen = .text:0x800D1B64; // type:function size:0xC4 scope:local +__CARDUnlock = .text:0x800D1C28; // type:function size:0xB58 +InitCallback = .text:0x800D2780; // type:function size:0x70 scope:local +DoneCallback = .text:0x800D27F0; // type:function size:0x324 scope:local +BlockReadCallback = .text:0x800D2B14; // type:function size:0xDC scope:local +__CARDRead = .text:0x800D2BF0; // type:function size:0x64 +BlockWriteCallback = .text:0x800D2C54; // type:function size:0xDC scope:local +__CARDWrite = .text:0x800D2D30; // type:function size:0x64 +__CARDGetFatBlock = .text:0x800D2D94; // type:function size:0x8 +fn_800D2D9C = .text:0x800D2D9C; // type:function size:0xD4 scope:local +fn_800D2E70 = .text:0x800D2E70; // type:function size:0xC8 scope:local +__CARDAllocBlock = .text:0x800D2F38; // type:function size:0x118 +__CARDFreeBlock = .text:0x800D3050; // type:function size:0x9C +__CARDUpdateFatBlock = .text:0x800D30EC; // type:function size:0xAC +__CARDGetDirBlock = .text:0x800D3198; // type:function size:0x8 +fn_800D31A0 = .text:0x800D31A0; // type:function size:0xD0 scope:local +fn_800D3270 = .text:0x800D3270; // type:function size:0xC8 scope:local +__CARDUpdateDir = .text:0x800D3338; // type:function size:0xC4 +__CARDCheckSum = .text:0x800D33FC; // type:function size:0x1B0 +VerifyID = .text:0x800D35AC; // type:function size:0x284 scope:local +VerifyDir = .text:0x800D3830; // type:function size:0x240 scope:local +VerifyFAT = .text:0x800D3A70; // type:function size:0x284 scope:local +__CARDVerify = .text:0x800D3CF4; // type:function size:0x8C +CARDCheckExAsync = .text:0x800D3D80; // type:function size:0x590 +CARDCheck = .text:0x800D4310; // type:function size:0x54 +IsCard = .text:0x800D4364; // type:function size:0xCC scope:local +CARDProbeEx = .text:0x800D4430; // type:function size:0x17C +DoMount = .text:0x800D45AC; // type:function size:0x410 scope:local +__CARDMountCallback = .text:0x800D49BC; // type:function size:0x138 +CARDMountAsync = .text:0x800D4AF4; // type:function size:0x1A0 +CARDMount = .text:0x800D4C94; // type:function size:0x48 +DoUnmount = .text:0x800D4CDC; // type:function size:0x9C scope:local +CARDUnmount = .text:0x800D4D78; // type:function size:0xAC +FormatCallback = .text:0x800D4E24; // type:function size:0x144 scope:local +__CARDFormatRegionAsync = .text:0x800D4F68; // type:function size:0x658 +CARDFormat = .text:0x800D55C0; // type:function size:0x54 +__CARDCompareFileName = .text:0x800D5614; // type:function size:0x68 +__CARDAccess = .text:0x800D567C; // type:function size:0x98 +__CARDIsPublic = .text:0x800D5714; // type:function size:0x30 +__CARDGetFileNo = .text:0x800D5744; // type:function size:0x150 +CARDOpen = .text:0x800D5894; // type:function size:0x178 +CARDClose = .text:0x800D5A0C; // type:function size:0x54 +__CARDIsOpened = .text:0x800D5A60; // type:function size:0x8 +CreateCallbackFat = .text:0x800D5A68; // type:function size:0x130 scope:local +CARDCreateAsync = .text:0x800D5B98; // type:function size:0x220 +CARDCreate = .text:0x800D5DB8; // type:function size:0x48 +__CARDSeek = .text:0x800D5E00; // type:function size:0x1B8 +ReadCallback = .text:0x800D5FB8; // type:function size:0x130 scope:local +CARDReadAsync = .text:0x800D60E8; // type:function size:0x148 +CARDRead = .text:0x800D6230; // type:function size:0x48 +WriteCallback = .text:0x800D6278; // type:function size:0x170 scope:local +EraseCallback = .text:0x800D63E8; // type:function size:0xB0 scope:local +CARDWriteAsync = .text:0x800D6498; // type:function size:0x114 +CARDWrite = .text:0x800D65AC; // type:function size:0x48 +DeleteCallback = .text:0x800D65F4; // type:function size:0xA4 scope:local +CARDDeleteAsync = .text:0x800D6698; // type:function size:0x110 +CARDDelete = .text:0x800D67A8; // type:function size:0x48 +UpdateIconOffsets = .text:0x800D67F0; // type:function size:0x1F8 scope:local +CARDGetStatus = .text:0x800D69E8; // type:function size:0x12C +CARDSetStatusAsync = .text:0x800D6B14; // type:function size:0x174 +CARDSetStatus = .text:0x800D6C88; // type:function size:0x48 +CARDGetSerialNo = .text:0x800D6CD0; // type:function size:0xC4 +SetExiInterruptMask = .text:0x800D6D94; // type:function size:0xF4 scope:local EXIImm = .text:0x800D6E88; // type:function size:0x25C scope:global -fn_800D70E4 = .text:0x800D70E4; // type:function size:0xA0 +EXIImmEx = .text:0x800D70E4; // type:function size:0xA0 EXIDma = .text:0x800D7184; // type:function size:0xEC scope:global EXISync = .text:0x800D7270; // type:function size:0x238 scope:global -fn_800D74A8 = .text:0x800D74A8; // type:function size:0x48 -fn_800D74F0 = .text:0x800D74F0; // type:function size:0x7C +EXIClearInterrupts = .text:0x800D74A8; // type:function size:0x48 +EXISetExiCallback = .text:0x800D74F0; // type:function size:0x7C __EXIProbe = .text:0x800D756C; // type:function size:0x174 scope:local -fn_800D76E0 = .text:0x800D76E0; // type:function size:0x80 -fn_800D7760 = .text:0x800D7760; // type:function size:0xB4 -fn_800D7814 = .text:0x800D7814; // type:function size:0x10C -fn_800D7920 = .text:0x800D7920; // type:function size:0xBC +EXIProbe = .text:0x800D76E0; // type:function size:0x80 +EXIProbeEx = .text:0x800D7760; // type:function size:0xB4 +EXIAttach = .text:0x800D7814; // type:function size:0x10C +EXIDetach = .text:0x800D7920; // type:function size:0xBC EXISelect = .text:0x800D79DC; // type:function size:0x12C scope:global EXIDeselect = .text:0x800D7B08; // type:function size:0x110 scope:global EXIIntrruptHandler = .text:0x800D7C18; // type:function size:0xC8 scope:local @@ -2708,69 +2708,69 @@ EXTIntrruptHandler = .text:0x800D7EF8; // type:function size:0xD0 scope:local EXIInit = .text:0x800D7FC8; // type:function size:0x114 scope:global EXILock = .text:0x800D80DC; // type:function size:0xF4 scope:global EXIUnlock = .text:0x800D81D0; // type:function size:0xDC scope:global -fn_800D82AC = .text:0x800D82AC; // type:function size:0x18 -fn_800D82C4 = .text:0x800D82C4; // type:function size:0x28 -fn_800D82EC = .text:0x800D82EC; // type:function size:0x37C -fn_800D8668 = .text:0x800D8668; // type:function size:0x70 -fn_800D86D8 = .text:0x800D86D8; // type:function size:0x200 -fn_800D88D8 = .text:0x800D88D8; // type:function size:0x20 -fn_800D88F8 = .text:0x800D88F8; // type:function size:0x3C -fn_800D8934 = .text:0x800D8934; // type:function size:0x2FC +EXIGetState = .text:0x800D82AC; // type:function size:0x18 +UnlockedHandler = .text:0x800D82C4; // type:function size:0x28 scope:local +EXIGetID = .text:0x800D82EC; // type:function size:0x37C +InitializeUART = .text:0x800D8668; // type:function size:0x70 +WriteUARTN = .text:0x800D86D8; // type:function size:0x200 +SIBusy = .text:0x800D88D8; // type:function size:0x20 +SIIsChanBusy = .text:0x800D88F8; // type:function size:0x3C +CompleteTransfer = .text:0x800D8934; // type:function size:0x2FC SIInterruptHandler = .text:0x800D8C30; // type:function size:0x344 scope:local -fn_800D8F74 = .text:0x800D8F74; // type:function size:0x98 -fn_800D900C = .text:0x800D900C; // type:function size:0xCC -fn_800D90D8 = .text:0x800D90D8; // type:function size:0xF4 +SIEnablePollingInterrupt = .text:0x800D8F74; // type:function size:0x98 +SIRegisterPollingHandler = .text:0x800D900C; // type:function size:0xCC +SIUnregisterPollingHandler = .text:0x800D90D8; // type:function size:0xF4 SIInit = .text:0x800D91CC; // type:function size:0xA4 scope:global -fn_800D9270 = .text:0x800D9270; // type:function size:0x20C -fn_800D947C = .text:0x800D947C; // type:function size:0x7C -fn_800D94F8 = .text:0x800D94F8; // type:function size:0x14 -fn_800D950C = .text:0x800D950C; // type:function size:0x10 +__SITransfer = .text:0x800D9270; // type:function size:0x20C +SIGetStatus = .text:0x800D947C; // type:function size:0x7C +SISetCommand = .text:0x800D94F8; // type:function size:0x14 +SITransferCommands = .text:0x800D950C; // type:function size:0x10 SISetXY = .text:0x800D951C; // type:function size:0x6C scope:global -fn_800D9588 = .text:0x800D9588; // type:function size:0x9C -fn_800D9624 = .text:0x800D9624; // type:function size:0x6C -fn_800D9690 = .text:0x800D9690; // type:function size:0xD4 -fn_800D9764 = .text:0x800D9764; // type:function size:0xC4 -fn_800D9828 = .text:0x800D9828; // type:function size:0x8C +SIEnablePolling = .text:0x800D9588; // type:function size:0x9C +SIDisablePolling = .text:0x800D9624; // type:function size:0x6C +SIGetResponseRaw = .text:0x800D9690; // type:function size:0xD4 +SIGetResponse = .text:0x800D9764; // type:function size:0xC4 +AlarmHandler = .text:0x800D9828; // type:function size:0x8C scope:local SITransfer = .text:0x800D98B4; // type:function size:0x16C scope:global GetTypeCallback = .text:0x800D9A20; // type:function size:0x298 scope:local SIGetType = .text:0x800D9CB8; // type:function size:0x1C4 scope:global -fn_800D9E7C = .text:0x800D9E7C; // type:function size:0x13C +SIGetTypeAsync = .text:0x800D9E7C; // type:function size:0x13C SISetSamplingRate = .text:0x800D9FB8; // type:function size:0xE4 scope:global -fn_800DA09C = .text:0x800DA09C; // type:function size:0x24 -fn_800DA0C0 = .text:0x800DA0C0; // type:function size:0x244 -fn_800DA304 = .text:0x800DA304; // type:function size:0x44 -fn_800DA348 = .text:0x800DA348; // type:function size:0x13C -fn_800DA484 = .text:0x800DA484; // type:function size:0x11C -fn_800DA5A0 = .text:0x800DA5A0; // type:function size:0x3BC -fn_800DA95C = .text:0x800DA95C; // type:function size:0x1E0 -fn_800DAB3C = .text:0x800DAB3C; // type:function size:0xF0 -fn_800DAC2C = .text:0x800DAC2C; // type:function size:0x68 -fn_800DAC94 = .text:0x800DAC94; // type:function size:0x1BC -fn_800DAE50 = .text:0x800DAE50; // type:function size:0x54 -fn_800DAEA4 = .text:0x800DAEA4; // type:function size:0x24C -fn_800DB0F0 = .text:0x800DB0F0; // type:function size:0x10C -fn_800DB1FC = .text:0x800DB1FC; // type:function size:0x1A88 -fn_800DCC84 = .text:0x800DCC84; // type:function size:0x1A8C -fn_800DE710 = .text:0x800DE710; // type:function size:0x1AAC -fn_800E01BC = .text:0x800E01BC; // type:function size:0x67C -fn_800E0838 = .text:0x800E0838; // type:function size:0x6A8 -fn_800E0EE0 = .text:0x800E0EE0; // type:function size:0x6A8 -fn_800E1588 = .text:0x800E1588; // type:function size:0x78 -fn_800E1600 = .text:0x800E1600; // type:function size:0x464 -fn_800E1A64 = .text:0x800E1A64; // type:function size:0x90 -fn_800E1AF4 = .text:0x800E1AF4; // type:function size:0x3C +SIRefreshSamplingRate = .text:0x800DA09C; // type:function size:0x24 +THPVideoDecode = .text:0x800DA0C0; // type:function size:0x244 +__THPSetupBuffers = .text:0x800DA304; // type:function size:0x44 scope:local +__THPReadFrameHeader = .text:0x800DA348; // type:function size:0x13C scope:local +__THPReadScaneHeader = .text:0x800DA484; // type:function size:0x11C scope:local +__THPReadQuantizationTable = .text:0x800DA5A0; // type:function size:0x3BC scope:local +__THPReadHuffmanTableSpecification = .text:0x800DA95C; // type:function size:0x1E0 scope:local +__THPHuffGenerateSizeTable = .text:0x800DAB3C; // type:function size:0xF0 scope:local +__THPHuffGenerateCodeTable = .text:0x800DAC2C; // type:function size:0x68 scope:local +__THPHuffGenerateDecoderTables = .text:0x800DAC94; // type:function size:0x1BC scope:local +__THPRestartDefinition = .text:0x800DAE50; // type:function size:0x54 scope:local +__THPPrepBitStream = .text:0x800DAEA4; // type:function size:0x24C scope:local +__THPDecompressYUV = .text:0x800DB0F0; // type:function size:0x10C scope:local +__THPDecompressiMCURow512x448 = .text:0x800DB1FC; // type:function size:0x1A88 scope:local +__THPDecompressiMCURow640x480 = .text:0x800DCC84; // type:function size:0x1A8C scope:local +__THPDecompressiMCURowNxN = .text:0x800DE710; // type:function size:0x1AAC scope:local +__THPHuffDecodeDCTCompY = .text:0x800E01BC; // type:function size:0x67C scope:local +__THPHuffDecodeDCTCompU = .text:0x800E0838; // type:function size:0x6A8 scope:local +__THPHuffDecodeDCTCompV = .text:0x800E0EE0; // type:function size:0x6A8 scope:local +THPInit = .text:0x800E1588; // type:function size:0x78 +THPAudioDecode = .text:0x800E1600; // type:function size:0x464 +__THPAudioGetNewSample = .text:0x800E1A64; // type:function size:0x90 +__THPAudioInitialize = .text:0x800E1AF4; // type:function size:0x3C __va_arg = .text:0x800E1B30; // type:function size:0xC8 scope:global __destroy_global_chain = .text:0x800E1BF8; // type:function size:0x48 scope:global __register_global_object = .text:0x800E1C40; // type:function size:0x18 scope:global -fn_800E1C58 = .text:0x800E1C58; // type:function size:0x4C -fn_800E1CA4 = .text:0x800E1CA4; // type:function size:0x48 -fn_800E1CEC = .text:0x800E1CEC; // type:function size:0xC -fn_800E1CF8 = .text:0x800E1CF8; // type:function size:0x22C -fn_800E1F24 = .text:0x800E1F24; // type:function size:0x28 -fn_800E1F4C = .text:0x800E1F4C; // type:function size:0x28 -fn_800E1F74 = .text:0x800E1F74; // type:function size:0x28 -fn_800E1F9C = .text:0x800E1F9C; // type:function size:0x20 -fn_800E1FBC = .text:0x800E1FBC; // type:function size:0x5C +__dl__FPv = .text:0x800E1C58; // type:function size:0x4C +__dt__Q23std9exceptionFv = .text:0x800E1CA4; // type:function size:0x48 +what__Q23std9exceptionCFv = .text:0x800E1CEC; // type:function size:0xC +__throw_catch_compare = .text:0x800E1CF8; // type:function size:0x22C +unexpected__3stdFv = .text:0x800E1F24; // type:function size:0x28 +terminate__3stdFv = .text:0x800E1F4C; // type:function size:0x28 +duhandler__3stdFv = .text:0x800E1F74; // type:function size:0x28 +dthandler__3stdFv = .text:0x800E1F9C; // type:function size:0x20 +__cvt_fp2unsigned = .text:0x800E1FBC; // type:function size:0x5C __save_fpr = .text:0x800E2018; // type:function size:0x4C scope:global _savefpr_14 = .text:0x800E2018; // type:label scope:global _savefpr_15 = .text:0x800E201C; // type:label scope:global @@ -2848,629 +2848,629 @@ _restgpr_29 = .text:0x800E2138; // type:label scope:global _restgpr_30 = .text:0x800E213C; // type:label scope:global _restgpr_31 = .text:0x800E2140; // type:label scope:global __div2u = .text:0x800E2148; // type:function size:0xEC scope:global -fn_800E2234 = .text:0x800E2234; // type:function size:0x138 +__div2i = .text:0x800E2234; // type:function size:0x138 __mod2u = .text:0x800E236C; // type:function size:0xE4 scope:global -fn_800E2450 = .text:0x800E2450; // type:function size:0x10C -fn_800E255C = .text:0x800E255C; // type:function size:0x24 -fn_800E2580 = .text:0x800E2580; // type:function size:0x24 -fn_800E25A4 = .text:0x800E25A4; // type:function size:0x28 -fn_800E25CC = .text:0x800E25CC; // type:function size:0xCC +__mod2i = .text:0x800E2450; // type:function size:0x10C +__shl2i = .text:0x800E255C; // type:function size:0x24 +__shr2u = .text:0x800E2580; // type:function size:0x24 +__shr2i = .text:0x800E25A4; // type:function size:0x28 +__cvt_dbl_usll = .text:0x800E25CC; // type:function size:0xCC GetR2__Fv = .text:0x800E2698; // type:function size:0x8 scope:local __fini_cpp_exceptions = .text:0x800E26A0; // type:function size:0x34 scope:global __init_cpp_exceptions = .text:0x800E26D4; // type:function size:0x40 scope:global -fn_800E2714 = .text:0x800E2714; // type:function size:0x104 -fn_800E2818 = .text:0x800E2818; // type:function size:0x144 -fn_800E295C = .text:0x800E295C; // type:function size:0x44 -fn_800E29A0 = .text:0x800E29A0; // type:function size:0x410 -fn_800E2DB0 = .text:0x800E2DB0; // type:function size:0x1B4 -fn_800E2F64 = .text:0x800E2F64; // type:function size:0x5C -fn_800E2FC0 = .text:0x800E2FC0; // type:function size:0x50C -fn_800E34CC = .text:0x800E34CC; // type:function size:0x248 -fn_800E3714 = .text:0x800E3714; // type:function size:0x1C0 -fn_800E38D4 = .text:0x800E38D4; // type:function size:0x204 +ExPPC_LongJump__FP12ThrowContextPvPv = .text:0x800E2714; // type:function size:0x104 +__throw = .text:0x800E2818; // type:function size:0x144 +__end__catch = .text:0x800E295C; // type:function size:0x44 +ExPPC_ThrowHandler__FP12ThrowContext = .text:0x800E29A0; // type:function size:0x410 +__unexpected = .text:0x800E2DB0; // type:function size:0x1B4 +__dt__Q23std13bad_exceptionFv = .text:0x800E2F64; // type:function size:0x5C +ExPPC_UnwindStack__FP12ThrowContextP15MWExceptionInfoPv = .text:0x800E2FC0; // type:function size:0x50C +ExPPC_PopStackFrame__FP12ThrowContextP15MWExceptionInfo = .text:0x800E34CC; // type:function size:0x248 +ExPPC_NextAction__FP14ActionIterator = .text:0x800E3714; // type:function size:0x1C0 +ExPPC_FindExceptionRecord__FPcP15MWExceptionInfo = .text:0x800E38D4; // type:function size:0x204 __unregister_fragment = .text:0x800E3AD8; // type:function size:0x34 scope:global __register_fragment = .text:0x800E3B0C; // type:function size:0x34 scope:global -fn_800E3B40 = .text:0x800E3B40; // type:function size:0xC -fn_800E3B4C = .text:0x800E3B4C; // type:function size:0xB8 +what__Q23std13bad_exceptionCFv = .text:0x800E3B40; // type:function size:0xC +__sys_free = .text:0x800E3B4C; // type:function size:0xB8 exit = .text:0x800E3C04; // type:function size:0xCC scope:global -fn_800E3CD0 = .text:0x800E3CD0; // type:function size:0x88 -fn_800E3D58 = .text:0x800E3D58; // type:function size:0x134 -fn_800E3E8C = .text:0x800E3E8C; // type:function size:0x1FC -fn_800E4088 = .text:0x800E4088; // type:function size:0xBC -fn_800E4144 = .text:0x800E4144; // type:function size:0x17C -fn_800E42C0 = .text:0x800E42C0; // type:function size:0x70 +abort = .text:0x800E3CD0; // type:function size:0x88 +free = .text:0x800E3D58; // type:function size:0x134 +deallocate_from_fixed_pools = .text:0x800E3E8C; // type:function size:0x1FC +SubBlock_merge_next = .text:0x800E4088; // type:function size:0xBC scope:local +Block_link = .text:0x800E4144; // type:function size:0x17C scope:local +__flush_all = .text:0x800E42C0; // type:function size:0x70 __close_all = .text:0x800E4330; // type:function size:0x98 scope:global -fn_800E43C8 = .text:0x800E43C8; // type:function size:0x1A4 -fn_800E456C = .text:0x800E456C; // type:function size:0x23C -fn_800E47A8 = .text:0x800E47A8; // type:function size:0x340 -fn_800E4AE8 = .text:0x800E4AE8; // type:function size:0xEC -fn_800E4BD4 = .text:0x800E4BD4; // type:function size:0x28C -fn_800E4E60 = .text:0x800E4E60; // type:function size:0x110 -fn_800E4F70 = .text:0x800E4F70; // type:function size:0x70 -fn_800E4FE0 = .text:0x800E4FE0; // type:function size:0x10 +__num2dec = .text:0x800E43C8; // type:function size:0x1A4 +__num2dec_internal = .text:0x800E456C; // type:function size:0x23C scope:local +__two_exp = .text:0x800E47A8; // type:function size:0x340 scope:local +__str2dec = .text:0x800E4AE8; // type:function size:0xEC scope:local +__timesdec = .text:0x800E4BD4; // type:function size:0x28C scope:local +__ull2dec = .text:0x800E4E60; // type:function size:0x110 scope:local +__count_trailing_zerol = .text:0x800E4F70; // type:function size:0x70 scope:local +abs = .text:0x800E4FE0; // type:function size:0x10 __flush_buffer = .text:0x800E4FF0; // type:function size:0xC4 scope:global __prep_buffer = .text:0x800E50B4; // type:function size:0x34 scope:global -fn_800E50E8 = .text:0x800E50E8; // type:function size:0x24 -fn_800E510C = .text:0x800E510C; // type:function size:0x18 +tolower = .text:0x800E50E8; // type:function size:0x24 +isalpha = .text:0x800E510C; // type:function size:0x18 __fwrite = .text:0x800E5124; // type:function size:0x30C scope:global fwrite = .text:0x800E5430; // type:function size:0x20 scope:global -fn_800E5450 = .text:0x800E5450; // type:function size:0x138 -fn_800E5588 = .text:0x800E5588; // type:function size:0xC0 +fflush = .text:0x800E5450; // type:function size:0x138 +fclose = .text:0x800E5588; // type:function size:0xC0 fseek = .text:0x800E5648; // type:function size:0x20 scope:global -fn_800E5668 = .text:0x800E5668; // type:function size:0x23C -fn_800E58A4 = .text:0x800E58A4; // type:function size:0x70 +_fseek = .text:0x800E5668; // type:function size:0x23C +ftell = .text:0x800E58A4; // type:function size:0x70 wcstombs = .text:0x800E5914; // type:function size:0xA0 scope:global -fn_800E59B4 = .text:0x800E59B4; // type:function size:0xA4 -fn_800E5A58 = .text:0x800E5A58; // type:function size:0x4C +unicode_to_UTF8 = .text:0x800E59B4; // type:function size:0xA4 scope:local +memcmp = .text:0x800E5A58; // type:function size:0x4C __memrchr = .text:0x800E5AA4; // type:function size:0x2C scope:global memchr = .text:0x800E5AD0; // type:function size:0x2C scope:global -fn_800E5AFC = .text:0x800E5AFC; // type:function size:0xCC -fn_800E5BC8 = .text:0x800E5BC8; // type:function size:0xB0 -fn_800E5C78 = .text:0x800E5C78; // type:function size:0xC4 -fn_800E5D3C = .text:0x800E5D3C; // type:function size:0xAC -fn_800E5DE8 = .text:0x800E5DE8; // type:function size:0xC0 +memmove = .text:0x800E5AFC; // type:function size:0xCC +__copy_longs_rev_unaligned = .text:0x800E5BC8; // type:function size:0xB0 +__copy_longs_unaligned = .text:0x800E5C78; // type:function size:0xC4 +__copy_longs_rev_aligned = .text:0x800E5D3C; // type:function size:0xAC +__copy_longs_aligned = .text:0x800E5DE8; // type:function size:0xC0 __stdio_atexit = .text:0x800E5EA8; // type:function size:0x10 scope:global -fn_800E5EB8 = .text:0x800E5EB8; // type:function size:0xE0 -fn_800E5F98 = .text:0x800E5F98; // type:function size:0x78 -fn_800E6010 = .text:0x800E6010; // type:function size:0x74 +sprintf = .text:0x800E5EB8; // type:function size:0xE0 +vsprintf = .text:0x800E5F98; // type:function size:0x78 +vsnprintf = .text:0x800E6010; // type:function size:0x74 vprintf = .text:0x800E6084; // type:function size:0x7C scope:global -fn_800E6100 = .text:0x800E6100; // type:function size:0xCC -fn_800E61CC = .text:0x800E61CC; // type:function size:0x6C +printf = .text:0x800E6100; // type:function size:0xCC +__StringWrite = .text:0x800E61CC; // type:function size:0x6C __FileWrite = .text:0x800E6238; // type:function size:0x58 scope:global __pformatter = .text:0x800E6290; // type:function size:0x774 scope:local float2str = .text:0x800E6A04; // type:function size:0x6EC scope:local -fn_800E70F0 = .text:0x800E70F0; // type:function size:0x12C +round_decimal = .text:0x800E70F0; // type:function size:0x12C double2hex = .text:0x800E721C; // type:function size:0x338 scope:local longlong2str = .text:0x800E7554; // type:function size:0x2DC scope:local long2str = .text:0x800E7830; // type:function size:0x220 scope:local parse_format = .text:0x800E7A50; // type:function size:0x504 scope:local -fn_800E7F54 = .text:0x800E7F54; // type:function size:0xB0 +raise = .text:0x800E7F54; // type:function size:0xB0 strchr = .text:0x800E8004; // type:function size:0x30 scope:global -fn_800E8034 = .text:0x800E8034; // type:function size:0x40 -fn_800E8074 = .text:0x800E8074; // type:function size:0x128 -fn_800E819C = .text:0x800E819C; // type:function size:0x44 -fn_800E81E0 = .text:0x800E81E0; // type:function size:0xB8 +strncmp = .text:0x800E8034; // type:function size:0x40 +strcmp = .text:0x800E8074; // type:function size:0x128 +strcat = .text:0x800E819C; // type:function size:0x44 +strcpy = .text:0x800E81E0; // type:function size:0xB8 strlen = .text:0x800E8298; // type:function size:0x1C scope:global -fn_800E82B4 = .text:0x800E82B4; // type:function size:0x8 -fn_800E82BC = .text:0x800E82BC; // type:function size:0xC4 +__close_console = .text:0x800E82B4; // type:function size:0x8 +__write_console = .text:0x800E82BC; // type:function size:0xC4 fwide = .text:0x800E8380; // type:function size:0x88 scope:global -fn_800E8408 = .text:0x800E8408; // type:function size:0x310 -fn_800E8718 = .text:0x800E8718; // type:function size:0x264 -fn_800E897C = .text:0x800E897C; // type:function size:0x290 -fn_800E8C0C = .text:0x800E8C0C; // type:function size:0x33C -fn_800E8F48 = .text:0x800E8F48; // type:function size:0x88C -fn_800E97D4 = .text:0x800E97D4; // type:function size:0x3A0 -fn_800E9B74 = .text:0x800E9B74; // type:function size:0xF4 -fn_800E9C68 = .text:0x800E9C68; // type:function size:0xE54 -fn_800EAABC = .text:0x800EAABC; // type:function size:0xA0 -fn_800EAB5C = .text:0x800EAB5C; // type:function size:0x214 -fn_800EAD70 = .text:0x800EAD70; // type:function size:0x200 -fn_800EAF70 = .text:0x800EAF70; // type:function size:0x28 -fn_800EAF98 = .text:0x800EAF98; // type:function size:0xD4 -fn_800EB06C = .text:0x800EB06C; // type:function size:0x148 -fn_800EB1B4 = .text:0x800EB1B4; // type:function size:0x8C -fn_800EB240 = .text:0x800EB240; // type:function size:0x1C4 -fn_800EB404 = .text:0x800EB404; // type:function size:0xFC -fn_800EB500 = .text:0x800EB500; // type:function size:0xD8 -fn_800EB5D8 = .text:0x800EB5D8; // type:function size:0x78 -fn_800EB650 = .text:0x800EB650; // type:function size:0x20 -fn_800EB670 = .text:0x800EB670; // type:function size:0x20 -fn_800EB690 = .text:0x800EB690; // type:function size:0x20 -fn_800EB6B0 = .text:0x800EB6B0; // type:function size:0x20 -fn_800EB6D0 = .text:0x800EB6D0; // type:function size:0x20 -fn_800EB6F0 = .text:0x800EB6F0; // type:function size:0x24 -fn_800EB714 = .text:0x800EB714; // type:function size:0x24 -fn_800EB738 = .text:0x800EB738; // type:function size:0x24 -fn_800EB75C = .text:0x800EB75C; // type:function size:0x24 -fn_800EB780 = .text:0x800EB780; // type:function size:0x24 +__ieee754_acos = .text:0x800E8408; // type:function size:0x310 +__ieee754_asin = .text:0x800E8718; // type:function size:0x264 +__ieee754_atan2 = .text:0x800E897C; // type:function size:0x290 +__ieee754_fmod = .text:0x800E8C0C; // type:function size:0x33C +__ieee754_pow = .text:0x800E8F48; // type:function size:0x88C +__ieee754_rem_pio2 = .text:0x800E97D4; // type:function size:0x3A0 +__kernel_cos = .text:0x800E9B74; // type:function size:0xF4 +__kernel_rem_pio2 = .text:0x800E9C68; // type:function size:0xE54 +__kernel_sin = .text:0x800EAABC; // type:function size:0xA0 +__kernel_tan = .text:0x800EAB5C; // type:function size:0x214 +atan = .text:0x800EAD70; // type:function size:0x200 +copysign = .text:0x800EAF70; // type:function size:0x28 +cos = .text:0x800EAF98; // type:function size:0xD4 +floor = .text:0x800EB06C; // type:function size:0x148 +frexp = .text:0x800EB1B4; // type:function size:0x8C +ldexp = .text:0x800EB240; // type:function size:0x1C4 +modf = .text:0x800EB404; // type:function size:0xFC +sin = .text:0x800EB500; // type:function size:0xD8 +tan = .text:0x800EB5D8; // type:function size:0x78 +acos = .text:0x800EB650; // type:function size:0x20 +asin = .text:0x800EB670; // type:function size:0x20 +atan2 = .text:0x800EB690; // type:function size:0x20 +fmod = .text:0x800EB6B0; // type:function size:0x20 +pow = .text:0x800EB6D0; // type:function size:0x20 +tanf = .text:0x800EB6F0; // type:function size:0x24 +sinf = .text:0x800EB714; // type:function size:0x24 +cosf = .text:0x800EB738; // type:function size:0x24 +atan2f = .text:0x800EB75C; // type:function size:0x24 +acosf = .text:0x800EB780; // type:function size:0x24 TRKNubMainLoop = .text:0x800EB7A4; // type:function size:0xF8 scope:global TRKDestructEvent = .text:0x800EB89C; // type:function size:0x24 scope:global -fn_800EB8C0 = .text:0x800EB8C0; // type:function size:0x18 -fn_800EB8D8 = .text:0x800EB8D8; // type:function size:0xE0 +TRKConstructEvent = .text:0x800EB8C0; // type:function size:0x18 +TRKPostEvent = .text:0x800EB8D8; // type:function size:0xE0 TRKGetNextEvent = .text:0x800EB9B8; // type:function size:0xB4 scope:global TRKInitializeEventQueue = .text:0x800EBA6C; // type:function size:0x58 scope:global TRKNubWelcome = .text:0x800EBAC4; // type:function size:0x28 scope:global TRKTerminateNub = .text:0x800EBAEC; // type:function size:0x24 scope:global TRKInitializeNub = .text:0x800EBB10; // type:function size:0x134 scope:global -fn_800EBC44 = .text:0x800EBC44; // type:function size:0x1DC -fn_800EBE20 = .text:0x800EBE20; // type:function size:0xF0 -fn_800EBF10 = .text:0x800EBF10; // type:function size:0x98 -fn_800EBFA8 = .text:0x800EBFA8; // type:function size:0xE8 -fn_800EC090 = .text:0x800EC090; // type:function size:0xC8 -fn_800EC158 = .text:0x800EC158; // type:function size:0xB8 -fn_800EC210 = .text:0x800EC210; // type:function size:0x80 -fn_800EC290 = .text:0x800EC290; // type:function size:0xA8 -fn_800EC338 = .text:0x800EC338; // type:function size:0x68 -fn_800EC3A0 = .text:0x800EC3A0; // type:function size:0x88 -fn_800EC428 = .text:0x800EC428; // type:function size:0x64 -fn_800EC48C = .text:0x800EC48C; // type:function size:0x54 -fn_800EC4E0 = .text:0x800EC4E0; // type:function size:0x8C -fn_800EC56C = .text:0x800EC56C; // type:function size:0xA4 -fn_800EC610 = .text:0x800EC610; // type:function size:0x30 -fn_800EC640 = .text:0x800EC640; // type:function size:0x40 -fn_800EC680 = .text:0x800EC680; // type:function size:0x64 +TRKMessageSend = .text:0x800EBC44; // type:function size:0x1DC +TRKReadBuffer_ui32 = .text:0x800EBE20; // type:function size:0xF0 +TRKReadBuffer_ui8 = .text:0x800EBF10; // type:function size:0x98 +TRKReadBuffer1_ui64 = .text:0x800EBFA8; // type:function size:0xE8 +TRKReadBuffer1_ui32 = .text:0x800EC090; // type:function size:0xC8 +TRKReadBuffer1_ui16 = .text:0x800EC158; // type:function size:0xB8 +TRKReadBuffer1_ui8 = .text:0x800EC210; // type:function size:0x80 +TRKAppendBuffer_ui32 = .text:0x800EC290; // type:function size:0xA8 +TRKAppendBuffer_ui8 = .text:0x800EC338; // type:function size:0x68 +TRKAppendBuffer1_ui64 = .text:0x800EC3A0; // type:function size:0x88 +TRKAppendBuffer1_ui32 = .text:0x800EC428; // type:function size:0x64 +TRKAppendBuffer1_ui16 = .text:0x800EC48C; // type:function size:0x54 +TRKReadBuffer = .text:0x800EC4E0; // type:function size:0x8C +TRKAppendBuffer = .text:0x800EC56C; // type:function size:0xA4 +TRKSetBufferPosition = .text:0x800EC610; // type:function size:0x30 +TRKResetBuffer = .text:0x800EC640; // type:function size:0x40 +TRKReleaseBuffer = .text:0x800EC680; // type:function size:0x64 TRKGetBuffer = .text:0x800EC6E4; // type:function size:0x2C scope:global -fn_800EC710 = .text:0x800EC710; // type:function size:0xC8 +TRKGetFreeBuffer = .text:0x800EC710; // type:function size:0xC8 TRKInitializeMessageBuffers = .text:0x800EC7D8; // type:function size:0x74 scope:global -fn_800EC84C = .text:0x800EC84C; // type:function size:0x8 +TRKTerminateSerialHandler = .text:0x800EC84C; // type:function size:0x8 TRKInitializeSerialHandler = .text:0x800EC854; // type:function size:0x24 scope:global -fn_800EC878 = .text:0x800EC878; // type:function size:0x50 +TRKProcessInput = .text:0x800EC878; // type:function size:0x50 TRKGetInput = .text:0x800EC8C8; // type:function size:0x98 scope:global -fn_800EC960 = .text:0x800EC960; // type:function size:0x2B8 +TRKTestForPacket = .text:0x800EC960; // type:function size:0x2B8 usr_put_initialize = .text:0x800ECC18; // type:function size:0x4 scope:global -fn_800ECC1C = .text:0x800ECC1C; // type:function size:0x88 +usr_puts_serial = .text:0x800ECC1C; // type:function size:0x88 TRKDispatchMessage = .text:0x800ECCA4; // type:function size:0x84 scope:global TRKInitializeDispatcher = .text:0x800ECD28; // type:function size:0x18 scope:global -fn_800ECD40 = .text:0x800ECD40; // type:function size:0x1A4 -fn_800ECEE4 = .text:0x800ECEE4; // type:function size:0x100 -fn_800ECFE4 = .text:0x800ECFE4; // type:function size:0x530 -fn_800ED514 = .text:0x800ED514; // type:function size:0x154 -fn_800ED668 = .text:0x800ED668; // type:function size:0x2F8 -fn_800ED960 = .text:0x800ED960; // type:function size:0x3C8 -fn_800EDD28 = .text:0x800EDD28; // type:function size:0x3CC -fn_800EE0F4 = .text:0x800EE0F4; // type:function size:0x420 -fn_800EE514 = .text:0x800EE514; // type:function size:0x410 -fn_800EE924 = .text:0x800EE924; // type:function size:0x398 -fn_800EECBC = .text:0x800EECBC; // type:function size:0x230 -fn_800EEEEC = .text:0x800EEEEC; // type:function size:0x2D8 -fn_800EF1C4 = .text:0x800EF1C4; // type:function size:0xB8 -fn_800EF27C = .text:0x800EF27C; // type:function size:0xE4 -fn_800EF360 = .text:0x800EF360; // type:function size:0xBC -fn_800EF41C = .text:0x800EF41C; // type:function size:0xB0 -fn_800EF4CC = .text:0x800EF4CC; // type:function size:0xB8 -fn_800EF584 = .text:0x800EF584; // type:function size:0xC -fn_800EF590 = .text:0x800EF590; // type:function size:0x10 -fn_800EF5A0 = .text:0x800EF5A0; // type:function size:0x190 -fn_800EF730 = .text:0x800EF730; // type:function size:0x120 -fn_800EF850 = .text:0x800EF850; // type:function size:0x1A8 -fn_800EF9F8 = .text:0x800EF9F8; // type:function size:0x1A4 -fn_800EFB9C = .text:0x800EFB9C; // type:function size:0x2C4 -fn_800EFE60 = .text:0x800EFE60; // type:function size:0x8 -fn_800EFE68 = .text:0x800EFE68; // type:function size:0x8 -fn_800EFE70 = .text:0x800EFE70; // type:function size:0x8 -fn_800EFE78 = .text:0x800EFE78; // type:function size:0xD8 -fn_800EFF50 = .text:0x800EFF50; // type:function size:0x38 -fn_800EFF88 = .text:0x800EFF88; // type:function size:0xBC -fn_800F0044 = .text:0x800F0044; // type:function size:0x8 -fn_800F004C = .text:0x800F004C; // type:function size:0x8 -fn_800F0054 = .text:0x800F0054; // type:function size:0x3C +TRKDoSetOption = .text:0x800ECD40; // type:function size:0x1A4 +TRKDoStop = .text:0x800ECEE4; // type:function size:0x100 +TRKDoStep = .text:0x800ECFE4; // type:function size:0x530 +TRKDoContinue = .text:0x800ED514; // type:function size:0x154 +TRKDoFlushCache = .text:0x800ED668; // type:function size:0x2F8 +TRKDoWriteRegisters = .text:0x800ED960; // type:function size:0x3C8 +TRKDoReadRegisters = .text:0x800EDD28; // type:function size:0x3CC +TRKDoWriteMemory = .text:0x800EE0F4; // type:function size:0x420 +TRKDoReadMemory = .text:0x800EE514; // type:function size:0x410 +TRKDoCPUType = .text:0x800EE924; // type:function size:0x398 +TRKDoSupportMask = .text:0x800EECBC; // type:function size:0x230 +TRKDoVersions = .text:0x800EEEEC; // type:function size:0x2D8 +TRKDoReset = .text:0x800EF1C4; // type:function size:0xB8 +TRKDoDisconnect = .text:0x800EF27C; // type:function size:0xE4 +TRKDoConnect = .text:0x800EF360; // type:function size:0xBC +TRKDoUnsupported = .text:0x800EF41C; // type:function size:0xB0 +TRKStandardACK = .text:0x800EF4CC; // type:function size:0xB8 +SetTRKConnected = .text:0x800EF584; // type:function size:0xC +GetTRKConnected = .text:0x800EF590; // type:function size:0x10 +HandlePositionFileSupportRequest = .text:0x800EF5A0; // type:function size:0x190 +HandleCloseFileSupportRequest = .text:0x800EF730; // type:function size:0x120 +HandleOpenFileSupportRequest = .text:0x800EF850; // type:function size:0x1A8 +TRKRequestSend = .text:0x800EF9F8; // type:function size:0x1A4 +TRKSuppAccessFile = .text:0x800EFB9C; // type:function size:0x2C4 +TRKReleaseMutex = .text:0x800EFE60; // type:function size:0x8 +TRKAcquireMutex = .text:0x800EFE68; // type:function size:0x8 +TRKInitializeMutex = .text:0x800EFE70; // type:function size:0x8 +TRKDoNotifyStopped = .text:0x800EFE78; // type:function size:0xD8 +TRK_flush_cache = .text:0x800EFF50; // type:function size:0x38 +TRK_fill_mem = .text:0x800EFF88; // type:function size:0xBC +__TRK_get_MSR = .text:0x800F0044; // type:function size:0x8 +__TRK_set_MSR = .text:0x800F004C; // type:function size:0x8 +TRK_ppc_memcpy = .text:0x800F0054; // type:function size:0x3C TRKInterruptHandler = .text:0x800F0090; // type:function size:0x194 scope:global TRKExceptionHandler = .text:0x800F0224; // type:function size:0x9C scope:global TRKSwapAndGo = .text:0x800F02C0; // type:function size:0xC4 scope:global TRKInterruptHandlerEnableInterrupts = .text:0x800F0384; // type:function size:0x54 scope:global TRKTargetSetInputPendingPtr = .text:0x800F03D8; // type:function size:0x10 scope:global -fn_800F03E8 = .text:0x800F03E8; // type:function size:0x21C -fn_800F0604 = .text:0x800F0604; // type:function size:0x18 +TRKPPCAccessFPRegister = .text:0x800F03E8; // type:function size:0x21C +TRKTargetStop = .text:0x800F0604; // type:function size:0x18 TRKTargetSetStopped = .text:0x800F061C; // type:function size:0x10 scope:global TRKTargetStopped = .text:0x800F062C; // type:function size:0x10 scope:global -fn_800F063C = .text:0x800F063C; // type:function size:0x3C +TRKTargetFlushCache = .text:0x800F063C; // type:function size:0x3C TRKTargetSupportRequest = .text:0x800F0678; // type:function size:0x208 scope:global -fn_800F0880 = .text:0x800F0880; // type:function size:0x10 -fn_800F0890 = .text:0x800F0890; // type:function size:0x7C -fn_800F090C = .text:0x800F090C; // type:function size:0x6C -fn_800F0978 = .text:0x800F0978; // type:function size:0xAC -fn_800F0A24 = .text:0x800F0A24; // type:function size:0x124 +TRKTargetGetPC = .text:0x800F0880; // type:function size:0x10 +TRKTargetStepOutOfRange = .text:0x800F0890; // type:function size:0x7C +TRKTargetSingleStep = .text:0x800F090C; // type:function size:0x6C +TRKTargetAddExceptionInfo = .text:0x800F0978; // type:function size:0xAC +TRKTargetAddStopInfo = .text:0x800F0A24; // type:function size:0x124 TRKTargetInterrupt = .text:0x800F0B48; // type:function size:0x15C scope:global TRKPostInterruptEvent = .text:0x800F0CA4; // type:function size:0xC0 scope:global -fn_800F0D64 = .text:0x800F0D64; // type:function size:0x60 -fn_800F0DC4 = .text:0x800F0DC4; // type:function size:0xA4 -fn_800F0E68 = .text:0x800F0E68; // type:function size:0x24 -fn_800F0E8C = .text:0x800F0E8C; // type:function size:0x438 -fn_800F12C4 = .text:0x800F12C4; // type:function size:0x170 -fn_800F1434 = .text:0x800F1434; // type:function size:0x13C -fn_800F1570 = .text:0x800F1570; // type:function size:0xF4 -fn_800F1664 = .text:0x800F1664; // type:function size:0x14C -fn_800F17B0 = .text:0x800F17B0; // type:function size:0x124 -fn_800F18E0 = .text:0x800F18E0; // type:function size:0x8 -fn_800F18E8 = .text:0x800F18E8; // type:function size:0x8 -fn_800F18F0 = .text:0x800F18F0; // type:function size:0x8 -fn_800F18F8 = .text:0x800F18F8; // type:function size:0x8 +TRKTargetCPUType = .text:0x800F0D64; // type:function size:0x60 +TRKTargetSupportMask = .text:0x800F0DC4; // type:function size:0xA4 +TRKTargetVersions = .text:0x800F0E68; // type:function size:0x24 +TRKTargetAccessExtended2 = .text:0x800F0E8C; // type:function size:0x438 +TRKTargetAccessExtended1 = .text:0x800F12C4; // type:function size:0x170 +TRKTargetAccessFP = .text:0x800F1434; // type:function size:0x13C +TRKTargetAccessDefault = .text:0x800F1570; // type:function size:0xF4 +TRKTargetAccessMemory = .text:0x800F1664; // type:function size:0x14C +TRKValidMemory32 = .text:0x800F17B0; // type:function size:0x124 +TRKAccessFile = .text:0x800F18E0; // type:function size:0x8 +TRKOpenFile = .text:0x800F18E8; // type:function size:0x8 +TRKCloseFile = .text:0x800F18F0; // type:function size:0x8 +TRKPositionFile = .text:0x800F18F8; // type:function size:0x8 InitMetroTRK = .text:0x800F1900; // type:function size:0x94 scope:global TRKInitializeTarget = .text:0x800F1994; // type:function size:0x4C scope:global -fn_800F19E0 = .text:0x800F19E0; // type:function size:0x40 +TRKTargetTranslate = .text:0x800F19E0; // type:function size:0x40 EnableMetroTRKInterrupts = .text:0x800F1A20; // type:function size:0x20 scope:global TRKSaveExtended1Block = .text:0x800F1A40; // type:function size:0x1B8 scope:global TRKRestoreExtended1Block = .text:0x800F1BF8; // type:function size:0x1B8 scope:global -fn_800F1DB0 = .text:0x800F1DB0; // type:function size:0x8 +TRKTargetCPUMinorType = .text:0x800F1DB0; // type:function size:0x8 TRK_main = .text:0x800F1DB8; // type:function size:0x44 scope:global TRKLoadContext = .text:0x800F1DFC; // type:function size:0x88 scope:global TRKUARTInterruptHandler = .text:0x800F1E84; // type:function size:0x4 scope:global TRK_board_display = .text:0x800F1E88; // type:function size:0x24 scope:global UnreserveEXI2Port = .text:0x800F1EAC; // type:function size:0x30 scope:global ReserveEXI2Port = .text:0x800F1EDC; // type:function size:0x30 scope:global -fn_800F1F0C = .text:0x800F1F0C; // type:function size:0xF0 -fn_800F1FFC = .text:0x800F1FFC; // type:function size:0x28 -fn_800F2024 = .text:0x800F2024; // type:function size:0xE0 -fn_800F2104 = .text:0x800F2104; // type:function size:0x30 +TRKReadUARTPoll = .text:0x800F1F0C; // type:function size:0xF0 +WriteUART1 = .text:0x800F1FFC; // type:function size:0x28 +WriteUARTFlush = .text:0x800F2024; // type:function size:0xE0 +EnableEXI2Interrupts = .text:0x800F2104; // type:function size:0x30 TRKInitializeIntDrivenUART = .text:0x800F2134; // type:function size:0x3C scope:global InitMetroTRKCommTable = .text:0x800F2170; // type:function size:0x100 scope:global TRKEXICallBack = .text:0x800F2270; // type:function size:0x38 scope:global TRKTargetContinue = .text:0x800F22A8; // type:function size:0x34 scope:global -fn_800F22DC = .text:0x800F22DC; // type:function size:0x10 -fn_800F22EC = .text:0x800F22EC; // type:function size:0xC -fn_800F22F8 = .text:0x800F22F8; // type:function size:0xBC -fn_800F23B4 = .text:0x800F23B4; // type:function size:0xBC -fn_800F2470 = .text:0x800F2470; // type:function size:0x68 -fn_800F24D8 = .text:0x800F24D8; // type:function size:0xAC4 -fn_800F2F9C = .text:0x800F2F9C; // type:function size:0x64 -fn_800F3000 = .text:0x800F3000; // type:function size:0x27C -fn_800F327C = .text:0x800F327C; // type:function size:0x2B0 -fn_800F352C = .text:0x800F352C; // type:function size:0x90 -fn_800F35BC = .text:0x800F35BC; // type:function size:0xE4 -fn_800F36A0 = .text:0x800F36A0; // type:function size:0x108 -fn_800F37A8 = .text:0x800F37A8; // type:function size:0xBC -fn_800F3864 = .text:0x800F3864; // type:function size:0x1CC -fn_800F3A30 = .text:0x800F3A30; // type:function size:0xB58 -fn_800F4588 = .text:0x800F4588; // type:function size:0x218 -fn_800F47A0 = .text:0x800F47A0; // type:function size:0xA94 -fn_800F5234 = .text:0x800F5234; // type:function size:0x174 -fn_800F53A8 = .text:0x800F53A8; // type:function size:0x49C -fn_800F5844 = .text:0x800F5844; // type:function size:0x9F4 -fn_800F6238 = .text:0x800F6238; // type:function size:0x1A8 -fn_800F63E0 = .text:0x800F63E0; // type:function size:0x44 -fn_800F6424 = .text:0x800F6424; // type:function size:0x34 -fn_800F6458 = .text:0x800F6458; // type:function size:0x78 -fn_800F64D0 = .text:0x800F64D0; // type:function size:0x2A0 -fn_800F6770 = .text:0x800F6770; // type:function size:0x3C0 -fn_800F6B30 = .text:0x800F6B30; // type:function size:0x25C -fn_800F6D8C = .text:0x800F6D8C; // type:function size:0x45C -fn_800F71E8 = .text:0x800F71E8; // type:function size:0x744 -fn_800F792C = .text:0x800F792C; // type:function size:0x6FC -fn_800F8028 = .text:0x800F8028; // type:function size:0x150 -fn_800F8178 = .text:0x800F8178; // type:function size:0x64 -fn_800F81DC = .text:0x800F81DC; // type:function size:0x44 -fn_800F8220 = .text:0x800F8220; // type:function size:0x28 -fn_800F8248 = .text:0x800F8248; // type:function size:0x510 -fn_800F8758 = .text:0x800F8758; // type:function size:0x34 -fn_800F878C = .text:0x800F878C; // type:function size:0xC8 -fn_800F8854 = .text:0x800F8854; // type:function size:0xE4 -fn_800F8938 = .text:0x800F8938; // type:function size:0xE4 -fn_800F8A1C = .text:0x800F8A1C; // type:function size:0x84 -fn_800F8AA0 = .text:0x800F8AA0; // type:function size:0x88 -fn_800F8B28 = .text:0x800F8B28; // type:function size:0x530 -fn_800F9058 = .text:0x800F9058; // type:function size:0x54 -fn_800F90AC = .text:0x800F90AC; // type:function size:0x28 -fn_800F90D4 = .text:0x800F90D4; // type:function size:0xD0 -fn_800F91A4 = .text:0x800F91A4; // type:function size:0x574 -fn_800F9718 = .text:0x800F9718; // type:function size:0x24 -fn_800F973C = .text:0x800F973C; // type:function size:0x30 -fn_800F976C = .text:0x800F976C; // type:function size:0x38 -fn_800F97A4 = .text:0x800F97A4; // type:function size:0x38 -fn_800F97DC = .text:0x800F97DC; // type:function size:0x48 -fn_800F9824 = .text:0x800F9824; // type:function size:0x38 -fn_800F985C = .text:0x800F985C; // type:function size:0x58 -fn_800F98B4 = .text:0x800F98B4; // type:function size:0x68 -fn_800F991C = .text:0x800F991C; // type:function size:0x84 -fn_800F99A0 = .text:0x800F99A0; // type:function size:0x1C -fn_800F99BC = .text:0x800F99BC; // type:function size:0x60 -fn_800F9A1C = .text:0x800F9A1C; // type:function size:0x60 -fn_800F9A7C = .text:0x800F9A7C; // type:function size:0x40 -fn_800F9ABC = .text:0x800F9ABC; // type:function size:0xE0 -fn_800F9B9C = .text:0x800F9B9C; // type:function size:0x40 -fn_800F9BDC = .text:0x800F9BDC; // type:function size:0x50 -fn_800F9C2C = .text:0x800F9C2C; // type:function size:0x60 -fn_800F9C8C = .text:0x800F9C8C; // type:function size:0x94 -fn_800F9D20 = .text:0x800F9D20; // type:function size:0xEC -fn_800F9E0C = .text:0x800F9E0C; // type:function size:0x158 -fn_800F9F64 = .text:0x800F9F64; // type:function size:0xA8 -fn_800FA00C = .text:0x800FA00C; // type:function size:0xF0 -fn_800FA0FC = .text:0x800FA0FC; // type:function size:0x20 -fn_800FA11C = .text:0x800FA11C; // type:function size:0x20 -fn_800FA13C = .text:0x800FA13C; // type:function size:0xBC -fn_800FA1F8 = .text:0x800FA1F8; // type:function size:0x8C -fn_800FA284 = .text:0x800FA284; // type:function size:0x8AC -fn_800FAB30 = .text:0x800FAB30; // type:function size:0x4 -fn_800FAB34 = .text:0x800FAB34; // type:function size:0x84 -fn_800FABB8 = .text:0x800FABB8; // type:function size:0x160 -fn_800FAD18 = .text:0x800FAD18; // type:function size:0x2C4 -fn_800FAFDC = .text:0x800FAFDC; // type:function size:0x34 -fn_800FB010 = .text:0x800FB010; // type:function size:0x44 -fn_800FB054 = .text:0x800FB054; // type:function size:0x130 -fn_800FB184 = .text:0x800FB184; // type:function size:0x458 -fn_800FB5DC = .text:0x800FB5DC; // type:function size:0x44 -fn_800FB620 = .text:0x800FB620; // type:function size:0x6E8 -fn_800FBD08 = .text:0x800FBD08; // type:function size:0x560 -fn_800FC268 = .text:0x800FC268; // type:function size:0x654 -fn_800FC8BC = .text:0x800FC8BC; // type:function size:0x6B8 -fn_800FCF74 = .text:0x800FCF74; // type:function size:0x634 -fn_800FD5A8 = .text:0x800FD5A8; // type:function size:0x700 -fn_800FDCA8 = .text:0x800FDCA8; // type:function size:0x1F0 -fn_800FDE98 = .text:0x800FDE98; // type:function size:0x17C -fn_800FE014 = .text:0x800FE014; // type:function size:0x248 -fn_800FE25C = .text:0x800FE25C; // type:function size:0x1C4 -fn_800FE420 = .text:0x800FE420; // type:function size:0x204 -fn_800FE624 = .text:0x800FE624; // type:function size:0x17C -fn_800FE7A0 = .text:0x800FE7A0; // type:function size:0x188 -fn_800FE928 = .text:0x800FE928; // type:function size:0x2C8 -fn_800FEBF0 = .text:0x800FEBF0; // type:function size:0xD8 -fn_800FECC8 = .text:0x800FECC8; // type:function size:0x98 -fn_800FED60 = .text:0x800FED60; // type:function size:0x11C -fn_800FEE7C = .text:0x800FEE7C; // type:function size:0x15C -fn_800FEFD8 = .text:0x800FEFD8; // type:function size:0x304 -fn_800FF2DC = .text:0x800FF2DC; // type:function size:0x284 -fn_800FF560 = .text:0x800FF560; // type:function size:0x10 -fn_800FF570 = .text:0x800FF570; // type:function size:0x8C -fn_800FF5FC = .text:0x800FF5FC; // type:function size:0x10 -fn_800FF60C = .text:0x800FF60C; // type:function size:0x128 -fn_800FF734 = .text:0x800FF734; // type:function size:0x10 -fn_800FF744 = .text:0x800FF744; // type:function size:0x5C -fn_800FF7A0 = .text:0x800FF7A0; // type:function size:0x5C -fn_800FF7FC = .text:0x800FF7FC; // type:function size:0x10 -fn_800FF80C = .text:0x800FF80C; // type:function size:0x7C -fn_800FF888 = .text:0x800FF888; // type:function size:0x10 -fn_800FF898 = .text:0x800FF898; // type:function size:0x9C -fn_800FF934 = .text:0x800FF934; // type:function size:0xE4 -fn_800FFA18 = .text:0x800FFA18; // type:function size:0x20 -fn_800FFA38 = .text:0x800FFA38; // type:function size:0x2F0 -fn_800FFD28 = .text:0x800FFD28; // type:function size:0xD0 -fn_800FFDF8 = .text:0x800FFDF8; // type:function size:0x154 -fn_800FFF4C = .text:0x800FFF4C; // type:function size:0x18C -fn_801000D8 = .text:0x801000D8; // type:function size:0xD8 -fn_801001B0 = .text:0x801001B0; // type:function size:0x1FC -fn_801003AC = .text:0x801003AC; // type:function size:0x17C -fn_80100528 = .text:0x80100528; // type:function size:0x1A0 -fn_801006C8 = .text:0x801006C8; // type:function size:0x258 -fn_80100920 = .text:0x80100920; // type:function size:0x12C -fn_80100A4C = .text:0x80100A4C; // type:function size:0x27C -fn_80100CC8 = .text:0x80100CC8; // type:function size:0x9C -fn_80100D64 = .text:0x80100D64; // type:function size:0x9C -fn_80100E00 = .text:0x80100E00; // type:function size:0x134 -fn_80100F34 = .text:0x80100F34; // type:function size:0x130 -fn_80101064 = .text:0x80101064; // type:function size:0x13C -fn_801011A0 = .text:0x801011A0; // type:function size:0x19C -fn_8010133C = .text:0x8010133C; // type:function size:0x104 -fn_80101440 = .text:0x80101440; // type:function size:0x104 -fn_80101544 = .text:0x80101544; // type:function size:0x104 -fn_80101648 = .text:0x80101648; // type:function size:0x104 -fn_8010174C = .text:0x8010174C; // type:function size:0x104 -fn_80101850 = .text:0x80101850; // type:function size:0x104 -fn_80101954 = .text:0x80101954; // type:function size:0x104 -fn_80101A58 = .text:0x80101A58; // type:function size:0x104 -fn_80101B5C = .text:0x80101B5C; // type:function size:0x104 -fn_80101C60 = .text:0x80101C60; // type:function size:0x104 -fn_80101D64 = .text:0x80101D64; // type:function size:0x104 -fn_80101E68 = .text:0x80101E68; // type:function size:0x104 -fn_80101F6C = .text:0x80101F6C; // type:function size:0x104 -fn_80102070 = .text:0x80102070; // type:function size:0x17C -fn_801021EC = .text:0x801021EC; // type:function size:0x17C -fn_80102368 = .text:0x80102368; // type:function size:0x164 -fn_801024CC = .text:0x801024CC; // type:function size:0x68 -fn_80102534 = .text:0x80102534; // type:function size:0x220 -fn_80102754 = .text:0x80102754; // type:function size:0x14C -fn_801028A0 = .text:0x801028A0; // type:function size:0xBC -fn_8010295C = .text:0x8010295C; // type:function size:0x244 -fn_80102BA0 = .text:0x80102BA0; // type:function size:0x80 -fn_80102C20 = .text:0x80102C20; // type:function size:0xDC -fn_80102CFC = .text:0x80102CFC; // type:function size:0xF58 -fn_80103C54 = .text:0x80103C54; // type:function size:0x150 -fn_80103DA4 = .text:0x80103DA4; // type:function size:0xAC -fn_80103E50 = .text:0x80103E50; // type:function size:0xF0 -fn_80103F40 = .text:0x80103F40; // type:function size:0x108 -fn_80104048 = .text:0x80104048; // type:function size:0xA4 -fn_801040EC = .text:0x801040EC; // type:function size:0x108 -fn_801041F4 = .text:0x801041F4; // type:function size:0xFC -fn_801042F0 = .text:0x801042F0; // type:function size:0x438 -fn_80104728 = .text:0x80104728; // type:function size:0x68 -fn_80104790 = .text:0x80104790; // type:function size:0xE0 -fn_80104870 = .text:0x80104870; // type:function size:0x350 -fn_80104BC0 = .text:0x80104BC0; // type:function size:0x14 -fn_80104BD4 = .text:0x80104BD4; // type:function size:0x104 -fn_80104CD8 = .text:0x80104CD8; // type:function size:0x50 -fn_80104D28 = .text:0x80104D28; // type:function size:0x24C -fn_80104F74 = .text:0x80104F74; // type:function size:0x460 -fn_801053D4 = .text:0x801053D4; // type:function size:0x1C4 -fn_80105598 = .text:0x80105598; // type:function size:0x2A0 -fn_80105838 = .text:0x80105838; // type:function size:0xFC -fn_80105934 = .text:0x80105934; // type:function size:0x218 -fn_80105B4C = .text:0x80105B4C; // type:function size:0x234 -fn_80105D80 = .text:0x80105D80; // type:function size:0xC4 -fn_80105E44 = .text:0x80105E44; // type:function size:0x15C -fn_80105FA0 = .text:0x80105FA0; // type:function size:0x74 -fn_80106014 = .text:0x80106014; // type:function size:0x54 -fn_80106068 = .text:0x80106068; // type:function size:0x74 -fn_801060DC = .text:0x801060DC; // type:function size:0x144 -fn_80106220 = .text:0x80106220; // type:function size:0x3C -fn_8010625C = .text:0x8010625C; // type:function size:0xE4 -fn_80106340 = .text:0x80106340; // type:function size:0x58 -fn_80106398 = .text:0x80106398; // type:function size:0x26C -fn_80106604 = .text:0x80106604; // type:function size:0x28 -fn_8010662C = .text:0x8010662C; // type:function size:0x150 -fn_8010677C = .text:0x8010677C; // type:function size:0x168 -fn_801068E4 = .text:0x801068E4; // type:function size:0x198 -fn_80106A7C = .text:0x80106A7C; // type:function size:0x84 -fn_80106B00 = .text:0x80106B00; // type:function size:0xBC -fn_80106BBC = .text:0x80106BBC; // type:function size:0x248 -fn_80106E04 = .text:0x80106E04; // type:function size:0xA8 -fn_80106EAC = .text:0x80106EAC; // type:function size:0x1F8 -fn_801070A4 = .text:0x801070A4; // type:function size:0x1E4 -fn_80107288 = .text:0x80107288; // type:function size:0xC -fn_80107294 = .text:0x80107294; // type:function size:0x27C -fn_80107510 = .text:0x80107510; // type:function size:0x32C -fn_8010783C = .text:0x8010783C; // type:function size:0x33C -fn_80107B78 = .text:0x80107B78; // type:function size:0x14C -fn_80107CC4 = .text:0x80107CC4; // type:function size:0x11C -fn_80107DE0 = .text:0x80107DE0; // type:function size:0x3B4 -fn_80108194 = .text:0x80108194; // type:function size:0x38 -fn_801081CC = .text:0x801081CC; // type:function size:0xE0 -fn_801082AC = .text:0x801082AC; // type:function size:0x150 -fn_801083FC = .text:0x801083FC; // type:function size:0x20 -fn_8010841C = .text:0x8010841C; // type:function size:0xF4 -fn_80108510 = .text:0x80108510; // type:function size:0x48 -fn_80108558 = .text:0x80108558; // type:function size:0x74 -fn_801085CC = .text:0x801085CC; // type:function size:0xAC -fn_80108678 = .text:0x80108678; // type:function size:0x2DC -fn_80108954 = .text:0x80108954; // type:function size:0x258 -fn_80108BAC = .text:0x80108BAC; // type:function size:0x21B8 -fn_8010AD64 = .text:0x8010AD64; // type:function size:0x44 -fn_8010ADA8 = .text:0x8010ADA8; // type:function size:0xA0 -fn_8010AE48 = .text:0x8010AE48; // type:function size:0x60 -fn_8010AEA8 = .text:0x8010AEA8; // type:function size:0xC8 -fn_8010AF70 = .text:0x8010AF70; // type:function size:0xA8 -fn_8010B018 = .text:0x8010B018; // type:function size:0x84 -fn_8010B09C = .text:0x8010B09C; // type:function size:0x158 -fn_8010B1F4 = .text:0x8010B1F4; // type:function size:0x6F0 -fn_8010B8E4 = .text:0x8010B8E4; // type:function size:0x4B4 -fn_8010BD98 = .text:0x8010BD98; // type:function size:0x51C -fn_8010C2B4 = .text:0x8010C2B4; // type:function size:0x130 -fn_8010C3E4 = .text:0x8010C3E4; // type:function size:0x20 -fn_8010C404 = .text:0x8010C404; // type:function size:0x3F8 -fn_8010C7FC = .text:0x8010C7FC; // type:function size:0x50 -fn_8010C84C = .text:0x8010C84C; // type:function size:0xA8 -fn_8010C8F4 = .text:0x8010C8F4; // type:function size:0x5C -fn_8010C950 = .text:0x8010C950; // type:function size:0xFC -fn_8010CA4C = .text:0x8010CA4C; // type:function size:0x204 -fn_8010CC50 = .text:0x8010CC50; // type:function size:0x230 -fn_8010CE80 = .text:0x8010CE80; // type:function size:0xD0 -fn_8010CF50 = .text:0x8010CF50; // type:function size:0x14C -fn_8010D09C = .text:0x8010D09C; // type:function size:0x3B0 -fn_8010D44C = .text:0x8010D44C; // type:function size:0x82C -fn_8010DC78 = .text:0x8010DC78; // type:function size:0x38 -fn_8010DCB0 = .text:0x8010DCB0; // type:function size:0x4 -fn_8010DCB4 = .text:0x8010DCB4; // type:function size:0x118 -fn_8010DDCC = .text:0x8010DDCC; // type:function size:0x34 -fn_8010DE00 = .text:0x8010DE00; // type:function size:0x8 -fn_8010DE08 = .text:0x8010DE08; // type:function size:0xAC -fn_8010DEB4 = .text:0x8010DEB4; // type:function size:0xB4 -fn_8010DF68 = .text:0x8010DF68; // type:function size:0x64 -fn_8010DFCC = .text:0x8010DFCC; // type:function size:0x1FC -fn_8010E1C8 = .text:0x8010E1C8; // type:function size:0x24 -fn_8010E1EC = .text:0x8010E1EC; // type:function size:0x608 -fn_8010E7F4 = .text:0x8010E7F4; // type:function size:0x124 -fn_8010E918 = .text:0x8010E918; // type:function size:0xF0 -fn_8010EA08 = .text:0x8010EA08; // type:function size:0x2C4 -fn_8010ECCC = .text:0x8010ECCC; // type:function size:0x34 -fn_8010ED00 = .text:0x8010ED00; // type:function size:0x3C -fn_8010ED3C = .text:0x8010ED3C; // type:function size:0x98 -fn_8010EDD4 = .text:0x8010EDD4; // type:function size:0x114 -fn_8010EEE8 = .text:0x8010EEE8; // type:function size:0x3C -fn_8010EF24 = .text:0x8010EF24; // type:function size:0x3C -fn_8010EF60 = .text:0x8010EF60; // type:function size:0x4A0 -fn_8010F400 = .text:0x8010F400; // type:function size:0x48 -fn_8010F448 = .text:0x8010F448; // type:function size:0x48 -fn_8010F490 = .text:0x8010F490; // type:function size:0x48 -fn_8010F4D8 = .text:0x8010F4D8; // type:function size:0x48 -fn_8010F520 = .text:0x8010F520; // type:function size:0x48 -fn_8010F568 = .text:0x8010F568; // type:function size:0x48 -fn_8010F5B0 = .text:0x8010F5B0; // type:function size:0x48 -fn_8010F5F8 = .text:0x8010F5F8; // type:function size:0x48 -fn_8010F640 = .text:0x8010F640; // type:function size:0x48 -fn_8010F688 = .text:0x8010F688; // type:function size:0x48 -fn_8010F6D0 = .text:0x8010F6D0; // type:function size:0x48 -fn_8010F718 = .text:0x8010F718; // type:function size:0x48 -fn_8010F760 = .text:0x8010F760; // type:function size:0xB4 -fn_8010F814 = .text:0x8010F814; // type:function size:0xB4 -fn_8010F8C8 = .text:0x8010F8C8; // type:function size:0x284 -fn_8010FB4C = .text:0x8010FB4C; // type:function size:0x70 -fn_8010FBBC = .text:0x8010FBBC; // type:function size:0xFC -fn_8010FCB8 = .text:0x8010FCB8; // type:function size:0x1E4 -fn_8010FE9C = .text:0x8010FE9C; // type:function size:0x1C -fn_8010FEB8 = .text:0x8010FEB8; // type:function size:0x8C -fn_8010FF44 = .text:0x8010FF44; // type:function size:0xA4 -fn_8010FFE8 = .text:0x8010FFE8; // type:function size:0x10 -fn_8010FFF8 = .text:0x8010FFF8; // type:function size:0x48 -fn_80110040 = .text:0x80110040; // type:function size:0x8 -fn_80110048 = .text:0x80110048; // type:function size:0x154 -fn_8011019C = .text:0x8011019C; // type:function size:0xB8 -fn_80110254 = .text:0x80110254; // type:function size:0x34 -fn_80110288 = .text:0x80110288; // type:function size:0x8 -fn_80110290 = .text:0x80110290; // type:function size:0x8 -fn_80110298 = .text:0x80110298; // type:function size:0x20 -fn_801102B8 = .text:0x801102B8; // type:function size:0x8 -fn_801102C0 = .text:0x801102C0; // type:function size:0x14 -fn_801102D4 = .text:0x801102D4; // type:function size:0x1B4 -fn_80110488 = .text:0x80110488; // type:function size:0x50 -fn_801104D8 = .text:0x801104D8; // type:function size:0x1AC -fn_80110684 = .text:0x80110684; // type:function size:0x20 -fn_801106A4 = .text:0x801106A4; // type:function size:0x14 -fn_801106B8 = .text:0x801106B8; // type:function size:0x14 -fn_801106CC = .text:0x801106CC; // type:function size:0x14 -fn_801106E0 = .text:0x801106E0; // type:function size:0x14 -fn_801106F4 = .text:0x801106F4; // type:function size:0x3C -fn_80110730 = .text:0x80110730; // type:function size:0x28 -fn_80110758 = .text:0x80110758; // type:function size:0x78 -fn_801107D0 = .text:0x801107D0; // type:function size:0x2C -fn_801107FC = .text:0x801107FC; // type:function size:0x2C -fn_80110828 = .text:0x80110828; // type:function size:0x5C -fn_80110884 = .text:0x80110884; // type:function size:0x2C0 -fn_80110B44 = .text:0x80110B44; // type:function size:0x2C -fn_80110B70 = .text:0x80110B70; // type:function size:0x28 -fn_80110B98 = .text:0x80110B98; // type:function size:0x20 -fn_80110BB8 = .text:0x80110BB8; // type:function size:0x20 -fn_80110BD8 = .text:0x80110BD8; // type:function size:0x34 -fn_80110C0C = .text:0x80110C0C; // type:function size:0x34 -fn_80110C40 = .text:0x80110C40; // type:function size:0x2C -fn_80110C6C = .text:0x80110C6C; // type:function size:0xA4 -fn_80110D10 = .text:0x80110D10; // type:function size:0x90 -fn_80110DA0 = .text:0x80110DA0; // type:function size:0x20 -fn_80110DC0 = .text:0x80110DC0; // type:function size:0x20 -fn_80110DE0 = .text:0x80110DE0; // type:function size:0x24 -fn_80110E04 = .text:0x80110E04; // type:function size:0x4 -fn_80110E08 = .text:0x80110E08; // type:function size:0x5C -fn_80110E64 = .text:0x80110E64; // type:function size:0x24 -fn_80110E88 = .text:0x80110E88; // type:function size:0x20 -fn_80110EA8 = .text:0x80110EA8; // type:function size:0x94 -fn_80110F3C = .text:0x80110F3C; // type:function size:0x84 -fn_80110FC0 = .text:0x80110FC0; // type:function size:0x20 -fn_80110FE0 = .text:0x80110FE0; // type:function size:0x4 -fn_80110FE4 = .text:0x80110FE4; // type:function size:0x14 -fn_80110FF8 = .text:0x80110FF8; // type:function size:0xC -fn_80111004 = .text:0x80111004; // type:function size:0x28 -fn_8011102C = .text:0x8011102C; // type:function size:0x20 -fn_8011104C = .text:0x8011104C; // type:function size:0xA0 -fn_801110EC = .text:0x801110EC; // type:function size:0x1DC -fn_801112C8 = .text:0x801112C8; // type:function size:0x18 -fn_801112E0 = .text:0x801112E0; // type:function size:0x2EC -fn_801115CC = .text:0x801115CC; // type:function size:0x4 -fn_801115D0 = .text:0x801115D0; // type:function size:0x20 -fn_801115F0 = .text:0x801115F0; // type:function size:0x3BC -fn_801119AC = .text:0x801119AC; // type:function size:0x18 -fn_801119C4 = .text:0x801119C4; // type:function size:0xC4 -fn_80111A88 = .text:0x80111A88; // type:function size:0x108 -fn_80111B90 = .text:0x80111B90; // type:function size:0x38 -fn_80111BC8 = .text:0x80111BC8; // type:function size:0xF8 -fn_80111CC0 = .text:0x80111CC0; // type:function size:0xA8 -fn_80111D68 = .text:0x80111D68; // type:function size:0x10 -fn_80111D78 = .text:0x80111D78; // type:function size:0x64 -fn_80111DDC = .text:0x80111DDC; // type:function size:0xC8 -fn_80111EA4 = .text:0x80111EA4; // type:function size:0x20 -fn_80111EC4 = .text:0x80111EC4; // type:function size:0x34 -fn_80111EF8 = .text:0x80111EF8; // type:function size:0x30 -fn_80111F28 = .text:0x80111F28; // type:function size:0xBC -fn_80111FE4 = .text:0x80111FE4; // type:function size:0x34 -fn_80112018 = .text:0x80112018; // type:function size:0x74 -fn_8011208C = .text:0x8011208C; // type:function size:0x4C -fn_801120D8 = .text:0x801120D8; // type:function size:0x2C -fn_80112104 = .text:0x80112104; // type:function size:0x4 -fn_80112108 = .text:0x80112108; // type:function size:0x38 -fn_80112140 = .text:0x80112140; // type:function size:0x38 -fn_80112178 = .text:0x80112178; // type:function size:0x20 -fn_80112198 = .text:0x80112198; // type:function size:0x20 -fn_801121B8 = .text:0x801121B8; // type:function size:0x28 -fn_801121E0 = .text:0x801121E0; // type:function size:0x2C -fn_8011220C = .text:0x8011220C; // type:function size:0x5C -fn_80112268 = .text:0x80112268; // type:function size:0x3C -fn_801122A4 = .text:0x801122A4; // type:function size:0x24 -fn_801122C8 = .text:0x801122C8; // type:function size:0x428 -fn_801126F0 = .text:0x801126F0; // type:function size:0x3B4 -fn_80112AA4 = .text:0x80112AA4; // type:function size:0x24 -fn_80112AC8 = .text:0x80112AC8; // type:function size:0xBC -fn_80112B84 = .text:0x80112B84; // type:function size:0x5C -fn_80112BE0 = .text:0x80112BE0; // type:function size:0x40 -fn_80112C20 = .text:0x80112C20; // type:function size:0x24 -fn_80112C44 = .text:0x80112C44; // type:function size:0x50C -fn_80113150 = .text:0x80113150; // type:function size:0x190 -fn_801132E0 = .text:0x801132E0; // type:function size:0x50C -fn_801137EC = .text:0x801137EC; // type:function size:0xE0 -fn_801138CC = .text:0x801138CC; // type:function size:0xBC -fn_80113988 = .text:0x80113988; // type:function size:0x168 -fn_80113AF0 = .text:0x80113AF0; // type:function size:0x1D0 -fn_80113CC0 = .text:0x80113CC0; // type:function size:0x28 -fn_80113CE8 = .text:0x80113CE8; // type:function size:0x4C -fn_80113D34 = .text:0x80113D34; // type:function size:0x198 -fn_80113ECC = .text:0x80113ECC; // type:function size:0x1EC -fn_801140B8 = .text:0x801140B8; // type:function size:0x2BC -fn_80114374 = .text:0x80114374; // type:function size:0x200 -fn_80114574 = .text:0x80114574; // type:function size:0x28 +GetUseSerialIO = .text:0x800F22DC; // type:function size:0x10 +SetUseSerialIO = .text:0x800F22EC; // type:function size:0xC +__TRK_write_console = .text:0x800F22F8; // type:function size:0xBC +__read_console = .text:0x800F23B4; // type:function size:0xBC +seqGetPrivateId = .text:0x800F2470; // type:function size:0x68 +seqStartPlay = .text:0x800F24D8; // type:function size:0xAC4 +StartPause = .text:0x800F2F9C; // type:function size:0x64 +seqPause = .text:0x800F3000; // type:function size:0x27C +seqStop = .text:0x800F327C; // type:function size:0x2B0 +seqKillInstancesByGroupID = .text:0x800F352C; // type:function size:0x90 +seqSpeed = .text:0x800F35BC; // type:function size:0xE4 +seqContinue = .text:0x800F36A0; // type:function size:0x108 +seqMute = .text:0x800F37A8; // type:function size:0xBC +seqVolume = .text:0x800F3864; // type:function size:0x1CC +seqCrossFade = .text:0x800F3A30; // type:function size:0xB58 +GenerateNextTrackEvent = .text:0x800F4588; // type:function size:0x218 scope:local +HandleEvent = .text:0x800F47A0; // type:function size:0xA94 scope:local +InitTrackEvents = .text:0x800F5234; // type:function size:0x174 scope:local +HandleTrackEvents = .text:0x800F53A8; // type:function size:0x49C scope:local +seqHandle = .text:0x800F5844; // type:function size:0x9F4 +seqInit = .text:0x800F6238; // type:function size:0x1A8 +synthSetBpm = .text:0x800F63E0; // type:function size:0x44 +synthGetTicksPerSecond = .text:0x800F6424; // type:function size:0x34 +synthInitPortamento = .text:0x800F6458; // type:function size:0x78 +do_voice_portamento = .text:0x800F64D0; // type:function size:0x2A0 scope:local +StartLayer = .text:0x800F6770; // type:function size:0x3C0 scope:local +StartKeymap = .text:0x800F6B30; // type:function size:0x25C scope:local +synthStartSound = .text:0x800F6D8C; // type:function size:0x45C +LowPrecisionHandler = .text:0x800F71E8; // type:function size:0x744 scope:local +ZeroOffsetHandler = .text:0x800F792C; // type:function size:0x6FC scope:local +synthAddJob = .text:0x800F8028; // type:function size:0x150 scope:local +synthStartSynthJobHandling = .text:0x800F8178; // type:function size:0x64 +synthForceLowPrecisionUpdate = .text:0x800F81DC; // type:function size:0x44 +synthKeyStateUpdate = .text:0x800F8220; // type:function size:0x28 +synthHandle = .text:0x800F8248; // type:function size:0x510 +synthFXGetMaxVoices = .text:0x800F8758; // type:function size:0x34 +synthFXStart = .text:0x800F878C; // type:function size:0xC8 +synthFXSetCtrl = .text:0x800F8854; // type:function size:0xE4 +synthFXSetCtrl14 = .text:0x800F8938; // type:function size:0xE4 +synthFXCloneMidiSetup = .text:0x800F8A1C; // type:function size:0x84 +synthSendKeyOff = .text:0x800F8AA0; // type:function size:0x88 +synthVolume = .text:0x800F8B28; // type:function size:0x530 +synthIsFadeOutActive = .text:0x800F9058; // type:function size:0x54 +synthSetMusicVolumeType = .text:0x800F90AC; // type:function size:0x28 +synthHWMessageHandler = .text:0x800F90D4; // type:function size:0xD0 +synthInit = .text:0x800F91A4; // type:function size:0x574 +synthExit = .text:0x800F9718; // type:function size:0x24 +sndSeqGetValid = .text:0x800F973C; // type:function size:0x30 +sndSeqPause = .text:0x800F976C; // type:function size:0x38 +sndSeqStop = .text:0x800F97A4; // type:function size:0x38 +sndSeqSpeed = .text:0x800F97DC; // type:function size:0x48 +sndSeqContinue = .text:0x800F9824; // type:function size:0x38 +sndSeqMute = .text:0x800F985C; // type:function size:0x58 +sndSeqVolume = .text:0x800F98B4; // type:function size:0x68 +sndSeqGetMidiCtrl = .text:0x800F991C; // type:function size:0x84 +seqGetMIDIPriority = .text:0x800F99A0; // type:function size:0x1C +sndFXCtrl = .text:0x800F99BC; // type:function size:0x60 +sndFXCtrl14 = .text:0x800F9A1C; // type:function size:0x60 +sndFXKeyOff = .text:0x800F9A7C; // type:function size:0x40 +sndFXStartParaInfo = .text:0x800F9ABC; // type:function size:0xE0 +sndFXCheck = .text:0x800F9B9C; // type:function size:0x40 +sndSendMessage = .text:0x800F9BDC; // type:function size:0x50 +sndVolume = .text:0x800F9C2C; // type:function size:0x60 +sndMasterVolume = .text:0x800F9C8C; // type:function size:0x94 +sndOutputMode = .text:0x800F9D20; // type:function size:0xEC +sndSetAuxProcessingCallbacks = .text:0x800F9E0C; // type:function size:0x158 +synthActivateStudio = .text:0x800F9F64; // type:function size:0xA8 +synthDeactivateStudio = .text:0x800FA00C; // type:function size:0xF0 +synthAddStudioInput = .text:0x800FA0FC; // type:function size:0x20 +synthRemoveStudioInput = .text:0x800FA11C; // type:function size:0x20 +streamInit = .text:0x800FA13C; // type:function size:0xBC +SetHWMix = .text:0x800FA1F8; // type:function size:0x8C scope:local +streamHandle = .text:0x800FA284; // type:function size:0x8AC +streamCorrectLoops = .text:0x800FAB30; // type:function size:0x4 +streamKill = .text:0x800FAB34; // type:function size:0x84 +GetPrivateIndex = .text:0x800FABB8; // type:function size:0x160 +sndStreamARAMUpdate = .text:0x800FAD18; // type:function size:0x2C4 +CheckOutputMode = .text:0x800FAFDC; // type:function size:0x34 +SetupVolumeAndPan = .text:0x800FB010; // type:function size:0x44 +streamOutputModeChanged = .text:0x800FB054; // type:function size:0x130 +sndStreamAllocEx = .text:0x800FB184; // type:function size:0x458 +sndStreamAllocLength = .text:0x800FB5DC; // type:function size:0x44 +sndStreamADPCMParameter = .text:0x800FB620; // type:function size:0x6E8 +sndStreamMixParameterEx = .text:0x800FBD08; // type:function size:0x560 +sndStreamFrq = .text:0x800FC268; // type:function size:0x654 +sndStreamFree = .text:0x800FC8BC; // type:function size:0x6B8 +sndStreamActivate = .text:0x800FCF74; // type:function size:0x634 +sndStreamDeactivate = .text:0x800FD5A8; // type:function size:0x700 +dataInsertKeymap = .text:0x800FDCA8; // type:function size:0x1F0 +dataRemoveKeymap = .text:0x800FDE98; // type:function size:0x17C +dataInsertLayer = .text:0x800FE014; // type:function size:0x248 +dataRemoveLayer = .text:0x800FE25C; // type:function size:0x1C4 +dataInsertCurve = .text:0x800FE420; // type:function size:0x204 +dataRemoveCurve = .text:0x800FE624; // type:function size:0x17C +dataInsertSDir = .text:0x800FE7A0; // type:function size:0x188 +dataRemoveSDir = .text:0x800FE928; // type:function size:0x2C8 +dataAddSampleReference = .text:0x800FEBF0; // type:function size:0xD8 +dataRemoveSampleReference = .text:0x800FECC8; // type:function size:0x98 +dataInsertFX = .text:0x800FED60; // type:function size:0x11C +dataRemoveFX = .text:0x800FEE7C; // type:function size:0x15C +dataInsertMacro = .text:0x800FEFD8; // type:function size:0x304 +dataRemoveMacro = .text:0x800FF2DC; // type:function size:0x284 +maccmp = .text:0x800FF560; // type:function size:0x10 scope:local +dataGetMacro = .text:0x800FF570; // type:function size:0x8C +smpcmp = .text:0x800FF5FC; // type:function size:0x10 scope:local +dataGetSample = .text:0x800FF60C; // type:function size:0x128 +curvecmp = .text:0x800FF734; // type:function size:0x10 scope:local +dataGetCurve = .text:0x800FF744; // type:function size:0x5C +dataGetKeymap = .text:0x800FF7A0; // type:function size:0x5C +layercmp = .text:0x800FF7FC; // type:function size:0x10 scope:local +dataGetLayer = .text:0x800FF80C; // type:function size:0x7C +fxcmp = .text:0x800FF888; // type:function size:0x10 scope:local +dataGetFX = .text:0x800FF898; // type:function size:0x9C +dataInit = .text:0x800FF934; // type:function size:0xE4 +dataExit = .text:0x800FFA18; // type:function size:0x20 +mcmdWait = .text:0x800FFA38; // type:function size:0x2F0 scope:local +mcmdGosub = .text:0x800FFD28; // type:function size:0xD0 scope:local +mcmdLoop = .text:0x800FFDF8; // type:function size:0x154 scope:local +mcmdPlayMacro = .text:0x800FFF4C; // type:function size:0x18C scope:local +mcmdAddKey = .text:0x801000D8; // type:function size:0xD8 scope:local +mcmdStartSample = .text:0x801001B0; // type:function size:0x1FC scope:local +mcmdVibrato = .text:0x801003AC; // type:function size:0x17C scope:local +DoSetPitch = .text:0x80100528; // type:function size:0x1A0 scope:local +mcmdSetADSR = .text:0x801006C8; // type:function size:0x258 scope:local +mcmdSetADSRFromCtrl = .text:0x80100920; // type:function size:0x12C scope:local +mcmdSetPitchADSR = .text:0x80100A4C; // type:function size:0x27C scope:local +mcmdSetPanning = .text:0x80100CC8; // type:function size:0x9C scope:local +mcmdSetSurroundPanning = .text:0x80100D64; // type:function size:0x9C scope:local +mcmdScaleVolume = .text:0x80100E00; // type:function size:0x134 scope:local +mcmdEnvelope = .text:0x80100F34; // type:function size:0x130 scope:local +mcmdFadeIn = .text:0x80101064; // type:function size:0x13C scope:local +mcmdRandomKey = .text:0x801011A0; // type:function size:0x19C scope:local +mcmdVolumeSelect = .text:0x8010133C; // type:function size:0x104 scope:local +mcmdPanningSelect = .text:0x80101440; // type:function size:0x104 scope:local +mcmdPitchWheelSelect = .text:0x80101544; // type:function size:0x104 scope:local +mcmdModWheelSelect = .text:0x80101648; // type:function size:0x104 scope:local +mcmdPedalSelect = .text:0x8010174C; // type:function size:0x104 scope:local +mcmdPortamentoSelect = .text:0x80101850; // type:function size:0x104 scope:local +mcmdReverbSelect = .text:0x80101954; // type:function size:0x104 scope:local +mcmdPreAuxASelect = .text:0x80101A58; // type:function size:0x104 scope:local +mcmdPreAuxBSelect = .text:0x80101B5C; // type:function size:0x104 scope:local +mcmdPostAuxBSelect = .text:0x80101C60; // type:function size:0x104 scope:local +mcmdSurroundPanningSelect = .text:0x80101D64; // type:function size:0x104 scope:local +mcmdDopplerSelect = .text:0x80101E68; // type:function size:0x104 scope:local +mcmdTremoloSelect = .text:0x80101F6C; // type:function size:0x104 scope:local +mcmdAuxAFXSelect = .text:0x80102070; // type:function size:0x17C scope:local +mcmdAuxBFXSelect = .text:0x801021EC; // type:function size:0x17C scope:local +mcmdPortamento = .text:0x80102368; // type:function size:0x164 scope:local +varGet = .text:0x801024CC; // type:function size:0x68 +mcmdVarCalculation = .text:0x80102534; // type:function size:0x220 scope:local +mcmdIfVarCompare = .text:0x80102754; // type:function size:0x14C scope:local +macPostMessage = .text:0x801028A0; // type:function size:0xBC +mcmdSendMessage = .text:0x8010295C; // type:function size:0x244 scope:local +mcmdGetVID = .text:0x80102BA0; // type:function size:0x80 scope:local +mcmdSetKeyGroup = .text:0x80102C20; // type:function size:0xDC scope:local +macHandleActive = .text:0x80102CFC; // type:function size:0xF58 scope:local +macHandle = .text:0x80103C54; // type:function size:0x150 +macSampleEndNotify = .text:0x80103DA4; // type:function size:0xAC +macSetExternalKeyoff = .text:0x80103E50; // type:function size:0xF0 +macSetPedalState = .text:0x80103F40; // type:function size:0x108 +TimeQueueAdd = .text:0x80104048; // type:function size:0xA4 scope:local +macMakeActive = .text:0x801040EC; // type:function size:0x108 +macMakeInactive = .text:0x801041F4; // type:function size:0xFC +macStart = .text:0x801042F0; // type:function size:0x438 +macInit = .text:0x80104728; // type:function size:0x68 +vidInit = .text:0x80104790; // type:function size:0xE0 +vidRemoveVoiceReferences = .text:0x80104870; // type:function size:0x350 +vidMakeRoot = .text:0x80104BC0; // type:function size:0x14 +vidMakeNew = .text:0x80104BD4; // type:function size:0x104 +vidGetInternalId = .text:0x80104CD8; // type:function size:0x50 +voiceSetPriority = .text:0x80104D28; // type:function size:0x24C +voiceAllocate = .text:0x80104F74; // type:function size:0x460 +voiceFree = .text:0x801053D4; // type:function size:0x1C4 +synthInitAllocationAids = .text:0x80105598; // type:function size:0x2A0 +voiceBlock = .text:0x80105838; // type:function size:0xFC +voiceUnblock = .text:0x80105934; // type:function size:0x218 +voiceKill = .text:0x80105B4C; // type:function size:0x234 +voiceKillSound = .text:0x80105D80; // type:function size:0xC4 +synthKillVoicesByMacroReferences = .text:0x80105E44; // type:function size:0x15C +voiceIsLastStarted = .text:0x80105FA0; // type:function size:0x74 +voiceSetLastStarted = .text:0x80106014; // type:function size:0x54 +voiceResetLastStarted = .text:0x80106068; // type:function size:0x74 +voiceInitLastStarted = .text:0x801060DC; // type:function size:0x144 +sndPitchUpOne = .text:0x80106220; // type:function size:0x3C +sndGetPitch = .text:0x8010625C; // type:function size:0xE4 +adsrConvertTimeCents = .text:0x80106340; // type:function size:0x58 +salChangeADSRState = .text:0x80106398; // type:function size:0x26C +adsrSetup = .text:0x80106604; // type:function size:0x28 +adsrStartRelease = .text:0x8010662C; // type:function size:0x150 +adsrRelease = .text:0x8010677C; // type:function size:0x168 +adsrHandle = .text:0x801068E4; // type:function size:0x198 +adsrHandleLowPrecision = .text:0x80106A7C; // type:function size:0x84 +vsInit = .text:0x80106B00; // type:function size:0xBC +vsSampleStartNotify = .text:0x80106BBC; // type:function size:0x248 +vsSampleEndNotify = .text:0x80106E04; // type:function size:0xA8 +vsUpdateBuffer = .text:0x80106EAC; // type:function size:0x1F8 +vsSampleUpdates = .text:0x801070A4; // type:function size:0x1E4 +dataInitStack = .text:0x80107288; // type:function size:0xC +InsertData = .text:0x80107294; // type:function size:0x27C scope:local +sndPushGroup = .text:0x80107510; // type:function size:0x32C +sndPopGroup = .text:0x8010783C; // type:function size:0x33C +seqPlaySong = .text:0x80107B78; // type:function size:0x14C +sndSeqPlayEx = .text:0x80107CC4; // type:function size:0x11C +salInitDspCtrl = .text:0x80107DE0; // type:function size:0x3B4 +salInitHRTFBuffer = .text:0x80108194; // type:function size:0x38 +salExitDspCtrl = .text:0x801081CC; // type:function size:0xE0 +salActivateStudio = .text:0x801082AC; // type:function size:0x150 +salDeactivateStudio = .text:0x801083FC; // type:function size:0x20 +salCheckVolErrorAndResetDelta = .text:0x8010841C; // type:function size:0xF4 +sal_setup_dspvol = .text:0x80108510; // type:function size:0x48 scope:local +sal_update_hostplayinfo = .text:0x80108558; // type:function size:0x74 scope:local +DoDepopFade = .text:0x801085CC; // type:function size:0xAC scope:local +HandleDepopVoice = .text:0x80108678; // type:function size:0x2DC scope:local +SortVoices = .text:0x80108954; // type:function size:0x258 scope:local +salBuildCommandList = .text:0x80108BAC; // type:function size:0x21B8 +salSynthSendMessage = .text:0x8010AD64; // type:function size:0x44 +salActivateVoice = .text:0x8010ADA8; // type:function size:0xA0 +salDeactivateVoice = .text:0x8010AE48; // type:function size:0x60 +salReconnectVoice = .text:0x8010AEA8; // type:function size:0xC8 +salAddStudioInput = .text:0x8010AF70; // type:function size:0xA8 +salRemoveStudioInput = .text:0x8010B018; // type:function size:0x84 +salHandleAuxProcessing = .text:0x8010B09C; // type:function size:0x158 +salCalcVolume = .text:0x8010B1F4; // type:function size:0x6F0 +CheckRoomStatus = .text:0x8010B8E4; // type:function size:0x4B4 scope:local +CalcEmitter = .text:0x8010BD98; // type:function size:0x51C scope:local +sndUpdateEmitter = .text:0x8010C2B4; // type:function size:0x130 +sndCheckEmitter = .text:0x8010C3E4; // type:function size:0x20 +AddEmitter = .text:0x8010C404; // type:function size:0x3F8 scope:local +sndAddEmitterParaEx = .text:0x8010C7FC; // type:function size:0x50 +sndRemoveEmitter = .text:0x8010C84C; // type:function size:0xA8 +sndEmitterVoiceID = .text:0x8010C8F4; // type:function size:0x5C +s3dKillEmitterByFXID = .text:0x8010C950; // type:function size:0xFC +sndUpdateListener = .text:0x8010CA4C; // type:function size:0x204 +sndAddListenerEx = .text:0x8010CC50; // type:function size:0x230 +sndRemoveListener = .text:0x8010CE80; // type:function size:0xD0 +AddStartingEmitter = .text:0x8010CF50; // type:function size:0x14C scope:local +StartContinousEmitters = .text:0x8010D09C; // type:function size:0x3B0 scope:local +s3dHandle = .text:0x8010D44C; // type:function size:0x82C +s3dInit = .text:0x8010DC78; // type:function size:0x38 +s3dExit = .text:0x8010DCB0; // type:function size:0x4 +sndInit = .text:0x8010DCB4; // type:function size:0x118 +sndQuit = .text:0x8010DDCC; // type:function size:0x34 +sndIsInstalled = .text:0x8010DE00; // type:function size:0x8 +salApplyMatrix = .text:0x8010DE08; // type:function size:0xAC +salNormalizeVector = .text:0x8010DEB4; // type:function size:0xB4 +salCrossProduct = .text:0x8010DF68; // type:function size:0x64 +salInvertMatrix = .text:0x8010DFCC; // type:function size:0x1FC +inpSetGlobalMIDIDirtyFlag = .text:0x8010E1C8; // type:function size:0x24 +inpSetMidiCtrl = .text:0x8010E1EC; // type:function size:0x608 +inpSetMidiCtrl14 = .text:0x8010E7F4; // type:function size:0x124 +inpResetMidiCtrl = .text:0x8010E918; // type:function size:0xF0 +inpGetMidiCtrl = .text:0x8010EA08; // type:function size:0x2C4 +inpGetChannelDefaults = .text:0x8010ECCC; // type:function size:0x34 +inpResetChannelDefaults = .text:0x8010ED00; // type:function size:0x3C +inpAddCtrl = .text:0x8010ED3C; // type:function size:0x98 +inpFXCopyCtrl = .text:0x8010EDD4; // type:function size:0x114 +inpSetMidiLastNote = .text:0x8010EEE8; // type:function size:0x3C +inpGetMidiLastNote = .text:0x8010EF24; // type:function size:0x3C +_GetInputValue = .text:0x8010EF60; // type:function size:0x4A0 scope:local +inpGetVolume = .text:0x8010F400; // type:function size:0x48 +inpGetPanning = .text:0x8010F448; // type:function size:0x48 +inpGetSurPanning = .text:0x8010F490; // type:function size:0x48 +inpGetPitchBend = .text:0x8010F4D8; // type:function size:0x48 +inpGetDoppler = .text:0x8010F520; // type:function size:0x48 +inpGetModulation = .text:0x8010F568; // type:function size:0x48 +inpGetPedal = .text:0x8010F5B0; // type:function size:0x48 +inpGetPreAuxA = .text:0x8010F5F8; // type:function size:0x48 +inpGetReverb = .text:0x8010F640; // type:function size:0x48 +inpGetPreAuxB = .text:0x8010F688; // type:function size:0x48 +inpGetPostAuxB = .text:0x8010F6D0; // type:function size:0x48 +inpGetTremolo = .text:0x8010F718; // type:function size:0x48 +inpGetAuxA = .text:0x8010F760; // type:function size:0xB4 +inpGetAuxB = .text:0x8010F814; // type:function size:0xB4 +inpInit = .text:0x8010F8C8; // type:function size:0x284 +inpTranslateExCtrl = .text:0x8010FB4C; // type:function size:0x70 +inpGetExCtrl = .text:0x8010FBBC; // type:function size:0xFC +inpSetExCtrl = .text:0x8010FCB8; // type:function size:0x1E4 +sndRand = .text:0x8010FE9C; // type:function size:0x1C +sndSin = .text:0x8010FEB8; // type:function size:0x8C +sndBSearch = .text:0x8010FF44; // type:function size:0xA4 +sndConvertMs = .text:0x8010FFE8; // type:function size:0x10 +sndConvertTicks = .text:0x8010FFF8; // type:function size:0x48 +sndConvert2Ms = .text:0x80110040; // type:function size:0x8 +snd_handle_irq = .text:0x80110048; // type:function size:0x154 scope:local +hwInit = .text:0x8011019C; // type:function size:0xB8 +hwExit = .text:0x80110254; // type:function size:0x34 +hwSetTimeOffset = .text:0x80110288; // type:function size:0x8 +hwGetTimeOffset = .text:0x80110290; // type:function size:0x8 +hwIsActive = .text:0x80110298; // type:function size:0x20 +hwSetMesgCallback = .text:0x801102B8; // type:function size:0x8 +hwSetPriority = .text:0x801102C0; // type:function size:0x14 +hwInitSamplePlayback = .text:0x801102D4; // type:function size:0x1B4 +hwBreak = .text:0x80110488; // type:function size:0x50 +hwSetADSR = .text:0x801104D8; // type:function size:0x1AC +hwSetVirtualSampleLoopBuffer = .text:0x80110684; // type:function size:0x20 +hwGetVirtualSampleState = .text:0x801106A4; // type:function size:0x14 +hwGetSampleType = .text:0x801106B8; // type:function size:0x14 +hwGetSampleID = .text:0x801106CC; // type:function size:0x14 +hwSetStreamLoopPS = .text:0x801106E0; // type:function size:0x14 +hwStart = .text:0x801106F4; // type:function size:0x3C +hwKeyOff = .text:0x80110730; // type:function size:0x28 +hwSetPitch = .text:0x80110758; // type:function size:0x78 +hwSetSRCType = .text:0x801107D0; // type:function size:0x2C +hwSetPolyPhaseFilter = .text:0x801107FC; // type:function size:0x2C +hwSetITDMode = .text:0x80110828; // type:function size:0x5C +hwSetVolume = .text:0x80110884; // type:function size:0x2C0 +hwOff = .text:0x80110B44; // type:function size:0x2C +hwSetAUXProcessingCallbacks = .text:0x80110B70; // type:function size:0x28 +hwActivateStudio = .text:0x80110B98; // type:function size:0x20 +hwDeactivateStudio = .text:0x80110BB8; // type:function size:0x20 +hwAddInput = .text:0x80110BD8; // type:function size:0x34 +hwRemoveInput = .text:0x80110C0C; // type:function size:0x34 +hwChangeStudio = .text:0x80110C40; // type:function size:0x2C +hwGetPos = .text:0x80110C6C; // type:function size:0xA4 +hwFlushStream = .text:0x80110D10; // type:function size:0x90 +hwInitStream = .text:0x80110DA0; // type:function size:0x20 +hwExitStream = .text:0x80110DC0; // type:function size:0x20 +hwGetStreamPlayBuffer = .text:0x80110DE0; // type:function size:0x24 +hwTransAddr = .text:0x80110E04; // type:function size:0x4 +hwFrq2Pitch = .text:0x80110E08; // type:function size:0x5C +hwInitSampleMem = .text:0x80110E64; // type:function size:0x24 +hwExitSampleMem = .text:0x80110E88; // type:function size:0x20 +hwSaveSample = .text:0x80110EA8; // type:function size:0x94 +hwRemoveSample = .text:0x80110F3C; // type:function size:0x84 +hwSyncSampleMem = .text:0x80110FC0; // type:function size:0x20 +hwFrameDone = .text:0x80110FE0; // type:function size:0x4 +sndSetHooks = .text:0x80110FE4; // type:function size:0x14 +hwDisableHRTF = .text:0x80110FF8; // type:function size:0xC +hwGetVirtualSampleID = .text:0x80111004; // type:function size:0x28 +hwVoiceInStartup = .text:0x8011102C; // type:function size:0x20 +aramQueueCallback = .text:0x8011104C; // type:function size:0xA0 +aramUploadData = .text:0x801110EC; // type:function size:0x1DC +aramSyncTransferQueue = .text:0x801112C8; // type:function size:0x18 +aramInit = .text:0x801112E0; // type:function size:0x2EC +aramExit = .text:0x801115CC; // type:function size:0x4 +aramGetZeroBuffer = .text:0x801115D0; // type:function size:0x20 +aramStoreData = .text:0x801115F0; // type:function size:0x3BC +aramRemoveData = .text:0x801119AC; // type:function size:0x18 +InitStreamBuffers = .text:0x801119C4; // type:function size:0xC4 scope:local +aramAllocateStreamBuffer = .text:0x80111A88; // type:function size:0x108 +aramGetStreamBufferAddress = .text:0x80111B90; // type:function size:0x38 +aramFreeStreamBuffer = .text:0x80111BC8; // type:function size:0xF8 +salCallback = .text:0x80111CC0; // type:function size:0xA8 scope:local +dspInitCallback = .text:0x80111D68; // type:function size:0x10 scope:local +dspResumeCallback = .text:0x80111D78; // type:function size:0x64 scope:local +salInitAi = .text:0x80111DDC; // type:function size:0xC8 +salStartAi = .text:0x80111EA4; // type:function size:0x20 +salExitAi = .text:0x80111EC4; // type:function size:0x34 +salAiGetDest = .text:0x80111EF8; // type:function size:0x30 +salInitDsp = .text:0x80111F28; // type:function size:0xBC +salExitDsp = .text:0x80111FE4; // type:function size:0x34 +salCtrlDsp = .text:0x80112018; // type:function size:0x74 +salGetStartDelay = .text:0x8011208C; // type:function size:0x4C +hwInitIrq = .text:0x801120D8; // type:function size:0x2C +hwExitIrq = .text:0x80112104; // type:function size:0x4 +hwEnableIrq = .text:0x80112108; // type:function size:0x38 +hwDisableIrq = .text:0x80112140; // type:function size:0x38 +hwIRQEnterCritical = .text:0x80112178; // type:function size:0x20 +hwIRQLeaveCritical = .text:0x80112198; // type:function size:0x20 +salMalloc = .text:0x801121B8; // type:function size:0x28 +salFree = .text:0x801121E0; // type:function size:0x2C +sndAuxCallbackReverbSTD = .text:0x8011220C; // type:function size:0x5C +sndAuxCallbackPrepareReverbSTD = .text:0x80112268; // type:function size:0x3C +sndAuxCallbackShutdownReverbSTD = .text:0x801122A4; // type:function size:0x24 +ReverbSTDCreate = .text:0x801122C8; // type:function size:0x428 +fn_801126F0 = .text:0x801126F0; // type:function size:0x3B4 scope:local +ReverbSTDCallback = .text:0x80112AA4; // type:function size:0x24 +ReverbSTDFree = .text:0x80112AC8; // type:function size:0xBC +sndAuxCallbackReverbHI = .text:0x80112B84; // type:function size:0x5C +sndAuxCallbackPrepareReverbHI = .text:0x80112BE0; // type:function size:0x40 +sndAuxCallbackShutdownReverbHI = .text:0x80112C20; // type:function size:0x24 +ReverbHICreate = .text:0x80112C44; // type:function size:0x50C +DoCrossTalk = .text:0x80113150; // type:function size:0x190 scope:local +HandleReverb = .text:0x801132E0; // type:function size:0x50C +ReverbHICallback = .text:0x801137EC; // type:function size:0xE0 +ReverbHIFree = .text:0x801138CC; // type:function size:0xBC +sndAuxCallbackDelay = .text:0x80113988; // type:function size:0x168 +sndAuxCallbackUpdateSettingsDelay = .text:0x80113AF0; // type:function size:0x1D0 +sndAuxCallbackPrepareDelay = .text:0x80113CC0; // type:function size:0x28 +sndAuxCallbackShutdownDelay = .text:0x80113CE8; // type:function size:0x4C +do_src1 = .text:0x80113D34; // type:function size:0x198 scope:local +do_src2 = .text:0x80113ECC; // type:function size:0x1EC scope:local +sndAuxCallbackChorus = .text:0x801140B8; // type:function size:0x2BC +sndAuxCallbackPrepareChorus = .text:0x80114374; // type:function size:0x200 +sndAuxCallbackShutdownChorus = .text:0x80114574; // type:function size:0x28 DBClose = .text:0x8011459C; // type:function size:0x4 scope:global DBOpen = .text:0x801145A0; // type:function size:0x4 scope:global DBWrite = .text:0x801145A4; // type:function size:0x260 scope:global @@ -3478,13 +3478,13 @@ DBRead = .text:0x80114804; // type:function size:0x8C scope:global DBQueryData = .text:0x80114890; // type:function size:0x9C scope:global DBInitInterrupts = .text:0x8011492C; // type:function size:0x54 scope:global DBInitComm = .text:0x80114980; // type:function size:0x78 scope:global -fn_801149F8 = .text:0x801149F8; // type:function size:0x40 -fn_80114A38 = .text:0x80114A38; // type:function size:0x3C -fn_80114A74 = .text:0x80114A74; // type:function size:0xAC -fn_80114B20 = .text:0x80114B20; // type:function size:0xDC -fn_80114BFC = .text:0x80114BFC; // type:function size:0xDC -fn_80114CD8 = .text:0x80114CD8; // type:function size:0xAC -fn_80114D84 = .text:0x80114D84; // type:function size:0x298 +DBGHandler = .text:0x801149F8; // type:function size:0x40 +MWCallback = .text:0x80114A38; // type:function size:0x3C +DBGReadStatus = .text:0x80114A74; // type:function size:0xAC +DBGWrite = .text:0x80114B20; // type:function size:0xDC +DBGRead = .text:0x80114BFC; // type:function size:0xDC +DBGReadMailbox = .text:0x80114CD8; // type:function size:0xAC +DBGEXIImm = .text:0x80114D84; // type:function size:0x298 EXI2_Init = .text:0x8011501C; // type:function size:0x4 scope:global EXI2_EnableInterrupts = .text:0x80115020; // type:function size:0x4 scope:global EXI2_Poll = .text:0x80115024; // type:function size:0x8 scope:global @@ -3494,95 +3494,95 @@ EXI2_Reserve = .text:0x8011503C; // type:function size:0x4 scope:global EXI2_Unreserve = .text:0x80115040; // type:function size:0x4 scope:global AMC_IsStub = .text:0x80115044; // type:function size:0x8 scope:global Hu_IsStub = .text:0x8011504C; // type:function size:0x8 scope:weak -fn_80115054 = .text:0x80115054; // type:function size:0x10 -fn_80115064 = .text:0x80115064; // type:function size:0x34 -fn_80115098 = .text:0x80115098; // type:function size:0x6C -fn_80115104 = .text:0x80115104; // type:function size:0x27C -fn_80115380 = .text:0x80115380; // type:function size:0x15C -fn_801154DC = .text:0x801154DC; // type:function size:0xB4 -fn_80115590 = .text:0x80115590; // type:function size:0x31C -fn_801158AC = .text:0x801158AC; // type:function size:0x48 -fn_801158F4 = .text:0x801158F4; // type:function size:0x48 -fn_8011593C = .text:0x8011593C; // type:function size:0x68 -fn_801159A4 = .text:0x801159A4; // type:function size:0xD8 -fn_80115A7C = .text:0x80115A7C; // type:function size:0xFC -fn_80115B78 = .text:0x80115B78; // type:function size:0x4 -fn_80115B7C = .text:0x80115B7C; // type:function size:0x14 -fn_80115B90 = .text:0x80115B90; // type:function size:0xD8 -fn_80115C68 = .text:0x80115C68; // type:function size:0x114 -fn_80115D7C = .text:0x80115D7C; // type:function size:0x28 -fn_80115DA4 = .text:0x80115DA4; // type:function size:0x140 -fn_80115EE4 = .text:0x80115EE4; // type:function size:0x28C -fn_80116170 = .text:0x80116170; // type:function size:0x298 -fn_80116408 = .text:0x80116408; // type:function size:0x3F0 -fn_801167F8 = .text:0x801167F8; // type:function size:0x3B4 -fn_80116BAC = .text:0x80116BAC; // type:function size:0x278 -fn_80116E24 = .text:0x80116E24; // type:function size:0x20 -fn_80116E44 = .text:0x80116E44; // type:function size:0x474 -fn_801172B8 = .text:0x801172B8; // type:function size:0xC8 -fn_80117380 = .text:0x80117380; // type:function size:0x104 -fn_80117484 = .text:0x80117484; // type:function size:0x64 -fn_801174E8 = .text:0x801174E8; // type:function size:0x30 -fn_80117518 = .text:0x80117518; // type:function size:0x34 -fn_8011754C = .text:0x8011754C; // type:function size:0x2C -fn_80117578 = .text:0x80117578; // type:function size:0x60 -fn_801175D8 = .text:0x801175D8; // type:function size:0x154 -fn_8011772C = .text:0x8011772C; // type:function size:0x174 -fn_801178A0 = .text:0x801178A0; // type:function size:0x1BC -fn_80117A5C = .text:0x80117A5C; // type:function size:0x4 -fn_80117A60 = .text:0x80117A60; // type:function size:0x1CC -fn_80117C2C = .text:0x80117C2C; // type:function size:0x9C -fn_80117CC8 = .text:0x80117CC8; // type:function size:0x38 -fn_80117D00 = .text:0x80117D00; // type:function size:0x3C -fn_80117D3C = .text:0x80117D3C; // type:function size:0x30 -fn_80117D6C = .text:0x80117D6C; // type:function size:0x16C -fn_80117ED8 = .text:0x80117ED8; // type:function size:0x88 -fn_80117F60 = .text:0x80117F60; // type:function size:0x74 -fn_80117FD4 = .text:0x80117FD4; // type:function size:0x134 -fn_80118108 = .text:0x80118108; // type:function size:0xCC -fn_801181D4 = .text:0x801181D4; // type:function size:0x328 -fn_801184FC = .text:0x801184FC; // type:function size:0x174 -fn_80118670 = .text:0x80118670; // type:function size:0x250 -fn_801188C0 = .text:0x801188C0; // type:function size:0x184 -fn_80118A44 = .text:0x80118A44; // type:function size:0x270 -fn_80118CB4 = .text:0x80118CB4; // type:function size:0x30 -fn_80118CE4 = .text:0x80118CE4; // type:function size:0x4C -fn_80118D30 = .text:0x80118D30; // type:function size:0xD8 -fn_80118E08 = .text:0x80118E08; // type:function size:0x13C -fn_80118F44 = .text:0x80118F44; // type:function size:0x74 -fn_80118FB8 = .text:0x80118FB8; // type:function size:0x38 -fn_80118FF0 = .text:0x80118FF0; // type:function size:0x60 -fn_80119050 = .text:0x80119050; // type:function size:0x30 -fn_80119080 = .text:0x80119080; // type:function size:0x320 -fn_801193A0 = .text:0x801193A0; // type:function size:0x80 -fn_80119420 = .text:0x80119420; // type:function size:0x168 -fn_80119588 = .text:0x80119588; // type:function size:0xFC -fn_80119684 = .text:0x80119684; // type:function size:0x480 -fn_80119B04 = .text:0x80119B04; // type:function size:0x130 -fn_80119C34 = .text:0x80119C34; // type:function size:0xC8 -fn_80119CFC = .text:0x80119CFC; // type:function size:0x118 -fn_80119E14 = .text:0x80119E14; // type:function size:0xE0 -fn_80119EF4 = .text:0x80119EF4; // type:function size:0x204 -fn_8011A0F8 = .text:0x8011A0F8; // type:function size:0x88 -fn_8011A180 = .text:0x8011A180; // type:function size:0x8C -fn_8011A20C = .text:0x8011A20C; // type:function size:0x114 -fn_8011A320 = .text:0x8011A320; // type:function size:0x68 -fn_8011A388 = .text:0x8011A388; // type:function size:0x10C -fn_8011A494 = .text:0x8011A494; // type:function size:0x2A8 -fn_8011A73C = .text:0x8011A73C; // type:function size:0x2B8 -fn_8011A9F4 = .text:0x8011A9F4; // type:function size:0x1AC -fn_8011ABA0 = .text:0x8011ABA0; // type:function size:0x2E8 -fn_8011AE88 = .text:0x8011AE88; // type:function size:0x33C -fn_8011B1C4 = .text:0x8011B1C4; // type:function size:0x13C -fn_8011B300 = .text:0x8011B300; // type:function size:0xE0 -fn_8011B3E0 = .text:0x8011B3E0; // type:function size:0x448 -fn_8011B828 = .text:0x8011B828; // type:function size:0x2DC -fn_8011BB04 = .text:0x8011BB04; // type:function size:0xD0 -fn_8011BBD4 = .text:0x8011BBD4; // type:function size:0x320 -fn_8011BEF4 = .text:0x8011BEF4; // type:function size:0x4A8 -fn_8011C39C = .text:0x8011C39C; // type:function size:0x188 -fn_8011C524 = .text:0x8011C524; // type:function size:0x17C -fn_8011C6A0 = .text:0x8011C6A0; // type:function size:0x214 +HuSetVecF = .text:0x80115054; // type:function size:0x10 +HuSubVecF = .text:0x80115064; // type:function size:0x34 +msmSysServer = .text:0x80115098; // type:function size:0x6C scope:local +msmSysSetAuxParam = .text:0x80115104; // type:function size:0x27C scope:local +msmSysLoadBaseGroup = .text:0x80115380; // type:function size:0x15C scope:local +msmSysSearchGroupStack = .text:0x801154DC; // type:function size:0xB4 scope:local +msmSysGroupInit = .text:0x80115590; // type:function size:0x31C scope:local +msmSysIrqDisable = .text:0x801158AC; // type:function size:0x48 +msmSysIrqEnable = .text:0x801158F4; // type:function size:0x48 +msmSysCheckBaseGroup = .text:0x8011593C; // type:function size:0x68 +msmSysGetGroupDataPtr = .text:0x801159A4; // type:function size:0xD8 +msmSysCheckLoadGroupID = .text:0x80115A7C; // type:function size:0xFC +msmSysRegularProc = .text:0x80115B78; // type:function size:0x4 +msmSysGetOutputMode = .text:0x80115B7C; // type:function size:0x14 +msmSysSetOutputMode = .text:0x80115B90; // type:function size:0xD8 +msmSysSetAux = .text:0x80115C68; // type:function size:0x114 +msmSysGetSampSize = .text:0x80115D7C; // type:function size:0x28 +msmSysDelGroupAll = .text:0x80115DA4; // type:function size:0x140 +msmSysDelGroupBase = .text:0x80115EE4; // type:function size:0x28C +msmSysLoadGroupBase = .text:0x80116170; // type:function size:0x298 +msmSysLoadGroupSet = .text:0x80116408; // type:function size:0x3F0 +msmSysLoadGroupSub = .text:0x801167F8; // type:function size:0x3B4 +msmSysLoadGroup = .text:0x80116BAC; // type:function size:0x278 +msmSysCheckInit = .text:0x80116E24; // type:function size:0x20 +msmSysInit = .text:0x80116E44; // type:function size:0x474 +msmMemFree = .text:0x801172B8; // type:function size:0xC8 +msmMemAlloc = .text:0x80117380; // type:function size:0x104 +msmMemInit = .text:0x80117484; // type:function size:0x64 +msmFioClose = .text:0x801174E8; // type:function size:0x30 +msmFioRead = .text:0x80117518; // type:function size:0x34 +msmFioOpen = .text:0x8011754C; // type:function size:0x2C +msmFioInit = .text:0x80117578; // type:function size:0x60 +msmMusPauseSub = .text:0x801175D8; // type:function size:0x154 scope:local +msmMusPauseFade = .text:0x8011772C; // type:function size:0x174 scope:local +msmMusFade = .text:0x801178A0; // type:function size:0x1BC scope:local +msmMusFdoutEnd = .text:0x80117A5C; // type:function size:0x4 +msmMusPeriodicProc = .text:0x80117A60; // type:function size:0x1CC +msmMusGetMidiCtrl = .text:0x80117C2C; // type:function size:0x9C +msmMusGetNumPlay = .text:0x80117CC8; // type:function size:0x38 +msmMusGetStatus = .text:0x80117D00; // type:function size:0x3C +msmMusSetMasterVolume = .text:0x80117D3C; // type:function size:0x30 +msmMusSetParam = .text:0x80117D6C; // type:function size:0x16C +msmMusPauseAll = .text:0x80117ED8; // type:function size:0x88 +msmMusPause = .text:0x80117F60; // type:function size:0x74 +msmMusStopAll = .text:0x80117FD4; // type:function size:0x134 +msmMusStop = .text:0x80118108; // type:function size:0xCC +msmMusPlay = .text:0x801181D4; // type:function size:0x328 +msmMusInit = .text:0x801184FC; // type:function size:0x174 +msmSeFade = .text:0x80118670; // type:function size:0x250 scope:local +msmSePauseSub = .text:0x801188C0; // type:function size:0x184 scope:local +msmSePeriodicProc = .text:0x80118A44; // type:function size:0x270 +msmSeGetIndexPtr = .text:0x80118CB4; // type:function size:0x30 +msmSeDelListener = .text:0x80118CE4; // type:function size:0x4C +msmSeUpdataListener = .text:0x80118D30; // type:function size:0xD8 +msmSeSetListener = .text:0x80118E08; // type:function size:0x13C +msmSeGetEntryID = .text:0x80118F44; // type:function size:0x74 +msmSeGetNumPlay = .text:0x80118FB8; // type:function size:0x38 +msmSeGetStatus = .text:0x80118FF0; // type:function size:0x60 +msmSeSetMasterVolume = .text:0x80119050; // type:function size:0x30 +msmSeSetParam = .text:0x80119080; // type:function size:0x320 +msmSePauseAll = .text:0x801193A0; // type:function size:0x80 +msmSeStopAll = .text:0x80119420; // type:function size:0x168 +msmSeStop = .text:0x80119588; // type:function size:0xFC +msmSePlay = .text:0x80119684; // type:function size:0x480 +msmSeInit = .text:0x80119B04; // type:function size:0x130 +msmStreamGetStatus = .text:0x80119C34; // type:function size:0xC8 +msmStreamSetMasterVolume = .text:0x80119CFC; // type:function size:0x118 +msmStreamStopAll = .text:0x80119E14; // type:function size:0xE0 +msmStreamStop = .text:0x80119EF4; // type:function size:0x204 +msmStreamPlay = .text:0x8011A0F8; // type:function size:0x88 +msmStreamPeriodicProc = .text:0x8011A180; // type:function size:0x8C +msmStreamSetOutputMode = .text:0x8011A20C; // type:function size:0x114 +msmStreamAmemFree = .text:0x8011A320; // type:function size:0x68 +msmStreamAmemAlloc = .text:0x8011A388; // type:function size:0x10C +msmStreamInit = .text:0x8011A494; // type:function size:0x2A8 +msmStreamPauseOff = .text:0x8011A73C; // type:function size:0x2B8 +msmStreamPauseOn = .text:0x8011A9F4; // type:function size:0x1AC +msmStreamPauseFade = .text:0x8011ABA0; // type:function size:0x2E8 +msmStreamFade = .text:0x8011AE88; // type:function size:0x33C +msmStreamStopSub = .text:0x8011B1C4; // type:function size:0x13C scope:local +msmStreamSetParamSub = .text:0x8011B300; // type:function size:0xE0 scope:local +msmStreamPackStartStereo = .text:0x8011B3E0; // type:function size:0x448 +msmStreamPackStartMono = .text:0x8011B828; // type:function size:0x2DC +msmStreamSlotOff = .text:0x8011BB04; // type:function size:0xD0 +msmStreamData = .text:0x8011BBD4; // type:function size:0x320 scope:local +msmStreamDvdCallback = .text:0x8011BEF4; // type:function size:0x4A8 scope:local +msmStreamDvdCallback2 = .text:0x8011C39C; // type:function size:0x188 scope:local +msmStreamUpdateFunc = .text:0x8011C524; // type:function size:0x17C scope:local +msmStreamSlotInit = .text:0x8011C6A0; // type:function size:0x214 scope:local _kerent = .text:0x8011C8B4; // type:function size:0xFE4 _ctors = .ctors:0x8011D8A0; // type:label scope:global data:4byte __init_cpp_exceptions_reference = .ctors:0x8011D8A0; // type:object size:0x4 scope:global From 5cdbb462cd4d7e3150d8d742f22b8f39b7dfbed1 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Fri, 15 Nov 2024 20:26:30 +0100 Subject: [PATCH 040/178] Did Japanese DOL splits till game/data.c --- config/GMPE01_00/symbols.txt | 12 +- config/GMPE01_01/symbols.txt | 12 +- config/GMPJ01_00/config.yml | 990 +++++++++++++++++------------------ config/GMPJ01_00/splits.txt | 26 + config/GMPJ01_00/symbols.txt | 662 +++++++++++------------ 5 files changed, 864 insertions(+), 838 deletions(-) diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index ff55eea2..2f4b3fe1 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -3680,7 +3680,7 @@ pbOffsets$890 = .rodata:0x8011EBA0; // type:object size:0x18 scope:local inpColdMIDIDefaults = .rodata:0x8011EBB8; // type:object size:0x88 scope:local inpWarmMIDIDefaults = .rodata:0x8011EC40; // type:object size:0x88 scope:local data:byte itdOffTab = .rodata:0x8011ECC8; // type:object size:0x100 scope:local -lbl_8011EDE0 = .data:0x8011EDE0; // type:object size:0x10 data:string +lbl_8011EDE0 = .data:0x8011EDE0; // type:object size:0x10 scope:local data:string chanTbl = .data:0x8011EDF0; // type:object size:0x10 scope:local correctDiskID = .data:0x8011EE00; // type:object size:0x124 scope:local jumptable_8011EF24 = .data:0x8011EF24; // type:object size:0x34 scope:local @@ -4848,11 +4848,11 @@ fio = .bss:0x801D3150; // type:object size:0xC scope:local data:4byte mus = .bss:0x801D3160; // type:object size:0x178 scope:local data:2byte se = .bss:0x801D32D8; // type:object size:0xDC scope:local data:4byte StreamInfo = .bss:0x801D33C0; // type:object size:0x60 scope:local align:32 data:4byte -lbl_801D3420 = .sdata:0x801D3420; // type:object size:0x5 data:string -lbl_801D3425 = .sdata:0x801D3425; // type:object size:0x7 +lbl_801D3420 = .sdata:0x801D3420; // type:object size:0x5 scope:local data:string +lbl_801D3425 = .sdata:0x801D3425; // type:object size:0x7 scope:local rnd_seed = .sdata:0x801D342C; // type:object size:0x4 data:4byte -lbl_801D3430 = .sdata:0x801D3430; // type:object size:0x6 data:string -lbl_801D3436 = .sdata:0x801D3436; // type:object size:0x2 data:string +lbl_801D3430 = .sdata:0x801D3430; // type:object size:0x6 scope:local data:string +lbl_801D3436 = .sdata:0x801D3436; // type:object size:0x2 scope:local data:string lbl_801D3438 = .sdata:0x801D3438; // type:object size:0x7 data:string lbl_801D343F = .sdata:0x801D343F; // type:object size:0x9 FirstFrame = .sdata:0x801D3448; // type:object size:0x4 scope:local data:4byte @@ -6021,7 +6021,7 @@ SendMailData = .sbss:0x801D4940; // type:object size:0x4 scope:local data:4byte RecvDataLeng = .sbss:0x801D4944; // type:object size:0x4 scope:local data:4byte pEXIInputFlag = .sbss:0x801D4948; // type:object size:0x4 scope:local data:4byte EXIInputFlag = .sbss:0x801D494C; // type:object size:0x1 scope:local data:byte -lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 data:double +lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 scope:local data:double lbl_801D4968 = .sdata2:0x801D4968; // type:object size:0x4 data:float lbl_801D496C = .sdata2:0x801D496C; // type:object size:0x4 data:float lbl_801D4970 = .sdata2:0x801D4970; // type:object size:0x8 data:double diff --git a/config/GMPE01_01/symbols.txt b/config/GMPE01_01/symbols.txt index c85ba835..090ccf56 100644 --- a/config/GMPE01_01/symbols.txt +++ b/config/GMPE01_01/symbols.txt @@ -3680,7 +3680,7 @@ pbOffsets$890 = .rodata:0x8011EBA0; // type:object size:0x18 scope:local inpColdMIDIDefaults = .rodata:0x8011EBB8; // type:object size:0x88 scope:local inpWarmMIDIDefaults = .rodata:0x8011EC40; // type:object size:0x88 scope:local data:byte itdOffTab = .rodata:0x8011ECC8; // type:object size:0x100 scope:local -lbl_8011EDE0 = .data:0x8011EDE0; // type:object size:0x10 data:string +lbl_8011EDE0 = .data:0x8011EDE0; // type:object size:0x10 data:string scope:local chanTbl = .data:0x8011EDF0; // type:object size:0x10 scope:local correctDiskID = .data:0x8011EE00; // type:object size:0x124 scope:local jumptable_8011EF24 = .data:0x8011EF24; // type:object size:0x34 scope:local @@ -4847,11 +4847,11 @@ fio = .bss:0x801D3150; // type:object size:0xC scope:local data:4byte mus = .bss:0x801D3160; // type:object size:0x178 scope:local data:2byte se = .bss:0x801D32D8; // type:object size:0xDC scope:local data:4byte StreamInfo = .bss:0x801D33C0; // type:object size:0x60 scope:local align:32 data:4byte -lbl_801D3420 = .sdata:0x801D3420; // type:object size:0x5 data:string -lbl_801D3425 = .sdata:0x801D3425; // type:object size:0x7 +lbl_801D3420 = .sdata:0x801D3420; // type:object size:0x5 data:string scope:local +lbl_801D3425 = .sdata:0x801D3425; // type:object size:0x7 scope:local rnd_seed = .sdata:0x801D342C; // type:object size:0x4 data:4byte -lbl_801D3430 = .sdata:0x801D3430; // type:object size:0x6 data:string -lbl_801D3436 = .sdata:0x801D3436; // type:object size:0x2 data:string +lbl_801D3430 = .sdata:0x801D3430; // type:object size:0x6 data:string scope:local +lbl_801D3436 = .sdata:0x801D3436; // type:object size:0x2 data:string scope:local lbl_801D3438 = .sdata:0x801D3438; // type:object size:0x7 data:string lbl_801D343F = .sdata:0x801D343F; // type:object size:0x9 FirstFrame = .sdata:0x801D3448; // type:object size:0x4 scope:local data:4byte @@ -6020,7 +6020,7 @@ SendMailData = .sbss:0x801D4940; // type:object size:0x4 scope:local data:4byte RecvDataLeng = .sbss:0x801D4944; // type:object size:0x4 scope:local data:4byte pEXIInputFlag = .sbss:0x801D4948; // type:object size:0x4 scope:local data:4byte EXIInputFlag = .sbss:0x801D494C; // type:object size:0x1 scope:local data:byte -lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 data:double +lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 data:double scope:local lbl_801D4968 = .sdata2:0x801D4968; // type:object size:0x4 data:float lbl_801D496C = .sdata2:0x801D496C; // type:object size:0x4 data:float lbl_801D4970 = .sdata2:0x801D4970; // type:object size:0x8 data:double diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index 8da30f63..a8559c88 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -12,498 +12,498 @@ detect_strings: true fill_gaps: true # TODO add hashes modules: -- object: files/dll/_minigameDll.rel - - symbols: config/GMPJ01_00/rels/_minigameDll/symbols.txt - splits: config/GMPJ01_00/rels/_minigameDll/splits.txt - links: [] -- object: files/dll/bootDll.rel - - symbols: config/GMPJ01_00/rels/bootDll/symbols.txt - splits: config/GMPJ01_00/rels/bootDll/splits.txt - links: [] -- object: files/dll/instDll.rel - - symbols: config/GMPJ01_00/rels/instDll/symbols.txt - splits: config/GMPJ01_00/rels/instDll/splits.txt - links: [] -- object: files/dll/m302Dll.rel - - symbols: config/GMPJ01_00/rels/m302Dll/symbols.txt - splits: config/GMPJ01_00/rels/m302Dll/splits.txt - links: [] -- object: files/dll/m303Dll.rel - - symbols: config/GMPJ01_00/rels/m303Dll/symbols.txt - splits: config/GMPJ01_00/rels/m303Dll/splits.txt - links: [] -- object: files/dll/m330Dll.rel - - symbols: config/GMPJ01_00/rels/m330Dll/symbols.txt - splits: config/GMPJ01_00/rels/m330Dll/splits.txt - links: [] -- object: files/dll/m333Dll.rel - - symbols: config/GMPJ01_00/rels/m333Dll/symbols.txt - splits: config/GMPJ01_00/rels/m333Dll/splits.txt - links: [] -- object: files/dll/m402Dll.rel - - symbols: config/GMPJ01_00/rels/m402Dll/symbols.txt - splits: config/GMPJ01_00/rels/m402Dll/splits.txt - links: [] -- object: files/dll/m403Dll.rel - - symbols: config/GMPJ01_00/rels/m403Dll/symbols.txt - splits: config/GMPJ01_00/rels/m403Dll/splits.txt - links: [] -- object: files/dll/m404Dll.rel - - symbols: config/GMPJ01_00/rels/m404Dll/symbols.txt - splits: config/GMPJ01_00/rels/m404Dll/splits.txt - links: [] -- object: files/dll/m405Dll.rel - - symbols: config/GMPJ01_00/rels/m405Dll/symbols.txt - splits: config/GMPJ01_00/rels/m405Dll/splits.txt - links: [] -- object: files/dll/m406Dll.rel - - symbols: config/GMPJ01_00/rels/m406Dll/symbols.txt - splits: config/GMPJ01_00/rels/m406Dll/splits.txt - links: [] -- object: files/dll/m407dll.rel - - symbols: config/GMPJ01_00/rels/m407dll/symbols.txt - splits: config/GMPJ01_00/rels/m407dll/splits.txt - links: [] -- object: files/dll/m408Dll.rel - - symbols: config/GMPJ01_00/rels/m408Dll/symbols.txt - splits: config/GMPJ01_00/rels/m408Dll/splits.txt - links: [] -- object: files/dll/m409Dll.rel - - symbols: config/GMPJ01_00/rels/m409Dll/symbols.txt - splits: config/GMPJ01_00/rels/m409Dll/splits.txt - links: [] -- object: files/dll/m410Dll.rel - - symbols: config/GMPJ01_00/rels/m410Dll/symbols.txt - splits: config/GMPJ01_00/rels/m410Dll/splits.txt - links: [] -- object: files/dll/m411Dll.rel - - symbols: config/GMPJ01_00/rels/m411Dll/symbols.txt - splits: config/GMPJ01_00/rels/m411Dll/splits.txt - links: [] -- object: files/dll/m412Dll.rel - - symbols: config/GMPJ01_00/rels/m412Dll/symbols.txt - splits: config/GMPJ01_00/rels/m412Dll/splits.txt - links: [] -- object: files/dll/m413Dll.rel - - symbols: config/GMPJ01_00/rels/m413Dll/symbols.txt - splits: config/GMPJ01_00/rels/m413Dll/splits.txt - links: [] -- object: files/dll/m414Dll.rel - - symbols: config/GMPJ01_00/rels/m414Dll/symbols.txt - splits: config/GMPJ01_00/rels/m414Dll/splits.txt - links: [] -- object: files/dll/m415Dll.rel - - symbols: config/GMPJ01_00/rels/m415Dll/symbols.txt - splits: config/GMPJ01_00/rels/m415Dll/splits.txt - links: [] -- object: files/dll/m416Dll.rel - - symbols: config/GMPJ01_00/rels/m416Dll/symbols.txt - splits: config/GMPJ01_00/rels/m416Dll/splits.txt - links: [] -- object: files/dll/m417Dll.rel - - symbols: config/GMPJ01_00/rels/m417Dll/symbols.txt - splits: config/GMPJ01_00/rels/m417Dll/splits.txt - links: [] -- object: files/dll/m418Dll.rel - - symbols: config/GMPJ01_00/rels/m418Dll/symbols.txt - splits: config/GMPJ01_00/rels/m418Dll/splits.txt - links: [] -- object: files/dll/m419Dll.rel - - symbols: config/GMPJ01_00/rels/m419Dll/symbols.txt - splits: config/GMPJ01_00/rels/m419Dll/splits.txt - links: [] -- object: files/dll/m420dll.rel - - symbols: config/GMPJ01_00/rels/m420dll/symbols.txt - splits: config/GMPJ01_00/rels/m420dll/splits.txt - links: [] -- object: files/dll/m421Dll.rel - - symbols: config/GMPJ01_00/rels/m421Dll/symbols.txt - splits: config/GMPJ01_00/rels/m421Dll/splits.txt - links: [] -- object: files/dll/m422Dll.rel - - symbols: config/GMPJ01_00/rels/m422Dll/symbols.txt - splits: config/GMPJ01_00/rels/m422Dll/splits.txt - links: [] -- object: files/dll/m423Dll.rel - - symbols: config/GMPJ01_00/rels/m423Dll/symbols.txt - splits: config/GMPJ01_00/rels/m423Dll/splits.txt - links: [] -- object: files/dll/m424Dll.rel - - symbols: config/GMPJ01_00/rels/m424Dll/symbols.txt - splits: config/GMPJ01_00/rels/m424Dll/splits.txt - links: [] -- object: files/dll/m425Dll.rel - - symbols: config/GMPJ01_00/rels/m425Dll/symbols.txt - splits: config/GMPJ01_00/rels/m425Dll/splits.txt - links: [] -- object: files/dll/m426Dll.rel - - symbols: config/GMPJ01_00/rels/m426Dll/symbols.txt - splits: config/GMPJ01_00/rels/m426Dll/splits.txt - links: [] -- object: files/dll/m427Dll.rel - - symbols: config/GMPJ01_00/rels/m427Dll/symbols.txt - splits: config/GMPJ01_00/rels/m427Dll/splits.txt - links: [] -- object: files/dll/m428Dll.rel - - symbols: config/GMPJ01_00/rels/m428Dll/symbols.txt - splits: config/GMPJ01_00/rels/m428Dll/splits.txt - links: [] -- object: files/dll/m429Dll.rel - - symbols: config/GMPJ01_00/rels/m429Dll/symbols.txt - splits: config/GMPJ01_00/rels/m429Dll/splits.txt - links: [] -- object: files/dll/m430Dll.rel - - symbols: config/GMPJ01_00/rels/m430Dll/symbols.txt - splits: config/GMPJ01_00/rels/m430Dll/splits.txt - links: [] -- object: files/dll/m431Dll.rel - - symbols: config/GMPJ01_00/rels/m431Dll/symbols.txt - splits: config/GMPJ01_00/rels/m431Dll/splits.txt - links: [] -- object: files/dll/m432Dll.rel - - symbols: config/GMPJ01_00/rels/m432Dll/symbols.txt - splits: config/GMPJ01_00/rels/m432Dll/splits.txt - links: [] -- object: files/dll/m433Dll.rel - - symbols: config/GMPJ01_00/rels/m433Dll/symbols.txt - splits: config/GMPJ01_00/rels/m433Dll/splits.txt - links: [] -- object: files/dll/m434Dll.rel - - symbols: config/GMPJ01_00/rels/m434Dll/symbols.txt - splits: config/GMPJ01_00/rels/m434Dll/splits.txt - links: [] -- object: files/dll/m435Dll.rel - - symbols: config/GMPJ01_00/rels/m435Dll/symbols.txt - splits: config/GMPJ01_00/rels/m435Dll/splits.txt - links: [] -- object: files/dll/m436Dll.rel - - symbols: config/GMPJ01_00/rels/m436Dll/symbols.txt - splits: config/GMPJ01_00/rels/m436Dll/splits.txt - links: [] -- object: files/dll/m437Dll.rel - - symbols: config/GMPJ01_00/rels/m437Dll/symbols.txt - splits: config/GMPJ01_00/rels/m437Dll/splits.txt - links: [] -- object: files/dll/m438Dll.rel - - symbols: config/GMPJ01_00/rels/m438Dll/symbols.txt - splits: config/GMPJ01_00/rels/m438Dll/splits.txt - links: [] -- object: files/dll/m439Dll.rel - - symbols: config/GMPJ01_00/rels/m439Dll/symbols.txt - splits: config/GMPJ01_00/rels/m439Dll/splits.txt - links: [] -- object: files/dll/m440Dll.rel - - symbols: config/GMPJ01_00/rels/m440Dll/symbols.txt - splits: config/GMPJ01_00/rels/m440Dll/splits.txt - links: [] -- object: files/dll/m441Dll.rel - - symbols: config/GMPJ01_00/rels/m441Dll/symbols.txt - splits: config/GMPJ01_00/rels/m441Dll/splits.txt - links: [] -- object: files/dll/m442Dll.rel - - symbols: config/GMPJ01_00/rels/m442Dll/symbols.txt - splits: config/GMPJ01_00/rels/m442Dll/splits.txt - links: [] -- object: files/dll/m443Dll.rel - - symbols: config/GMPJ01_00/rels/m443Dll/symbols.txt - splits: config/GMPJ01_00/rels/m443Dll/splits.txt - links: [] -- object: files/dll/m444dll.rel - - symbols: config/GMPJ01_00/rels/m444dll/symbols.txt - splits: config/GMPJ01_00/rels/m444dll/splits.txt - links: [] -- object: files/dll/m445Dll.rel - - symbols: config/GMPJ01_00/rels/m445Dll/symbols.txt - splits: config/GMPJ01_00/rels/m445Dll/splits.txt - links: [] -- object: files/dll/m446dll.rel - - symbols: config/GMPJ01_00/rels/m446dll/symbols.txt - splits: config/GMPJ01_00/rels/m446dll/splits.txt - links: [] -- object: files/dll/m447dll.rel - - symbols: config/GMPJ01_00/rels/m447dll/symbols.txt - splits: config/GMPJ01_00/rels/m447dll/splits.txt - links: [] -- object: files/dll/m448Dll.rel - - symbols: config/GMPJ01_00/rels/m448Dll/symbols.txt - splits: config/GMPJ01_00/rels/m448Dll/splits.txt - links: [] -- object: files/dll/m449Dll.rel - - symbols: config/GMPJ01_00/rels/m449Dll/symbols.txt - splits: config/GMPJ01_00/rels/m449Dll/splits.txt - links: [] -- object: files/dll/m450Dll.rel - - symbols: config/GMPJ01_00/rels/m450Dll/symbols.txt - splits: config/GMPJ01_00/rels/m450Dll/splits.txt - links: [] -- object: files/dll/m451Dll.rel - - symbols: config/GMPJ01_00/rels/m451Dll/symbols.txt - splits: config/GMPJ01_00/rels/m451Dll/splits.txt - links: [] -- object: files/dll/m453Dll.rel - - symbols: config/GMPJ01_00/rels/m453Dll/symbols.txt - splits: config/GMPJ01_00/rels/m453Dll/splits.txt - links: [] -- object: files/dll/m455Dll.rel - - symbols: config/GMPJ01_00/rels/m455Dll/symbols.txt - splits: config/GMPJ01_00/rels/m455Dll/splits.txt - links: [] -- object: files/dll/m456Dll.rel - - symbols: config/GMPJ01_00/rels/m456Dll/symbols.txt - splits: config/GMPJ01_00/rels/m456Dll/splits.txt - links: [] -- object: files/dll/m457Dll.rel - - symbols: config/GMPJ01_00/rels/m457Dll/symbols.txt - splits: config/GMPJ01_00/rels/m457Dll/splits.txt - links: [] -- object: files/dll/m458Dll.rel - - symbols: config/GMPJ01_00/rels/m458Dll/symbols.txt - splits: config/GMPJ01_00/rels/m458Dll/splits.txt - links: [] -- object: files/dll/m459dll.rel - - symbols: config/GMPJ01_00/rels/m459dll/symbols.txt - splits: config/GMPJ01_00/rels/m459dll/splits.txt - links: [] -- object: files/dll/m460Dll.rel - - symbols: config/GMPJ01_00/rels/m460Dll/symbols.txt - splits: config/GMPJ01_00/rels/m460Dll/splits.txt - links: [] -- object: files/dll/m461Dll.rel - - symbols: config/GMPJ01_00/rels/m461Dll/symbols.txt - splits: config/GMPJ01_00/rels/m461Dll/splits.txt - links: [] -- object: files/dll/m462Dll.rel - - symbols: config/GMPJ01_00/rels/m462Dll/symbols.txt - splits: config/GMPJ01_00/rels/m462Dll/splits.txt - links: [] -- object: files/dll/m463Dll.rel - - symbols: config/GMPJ01_00/rels/m463Dll/symbols.txt - splits: config/GMPJ01_00/rels/m463Dll/splits.txt - links: [] -- object: files/dll/mentDll.rel - - symbols: config/GMPJ01_00/rels/mentDll/symbols.txt - splits: config/GMPJ01_00/rels/mentDll/splits.txt - links: [] -- object: files/dll/movieDll.rel - - symbols: config/GMPJ01_00/rels/movieDll/symbols.txt - splits: config/GMPJ01_00/rels/movieDll/splits.txt - links: [] -- object: files/dll/mgmodedll.rel - - symbols: config/GMPJ01_00/rels/mgmodedll/symbols.txt - splits: config/GMPJ01_00/rels/mgmodedll/splits.txt - links: [] -- object: files/dll/modeltestDll.rel - - symbols: config/GMPJ01_00/rels/modeltestDll/symbols.txt - splits: config/GMPJ01_00/rels/modeltestDll/splits.txt - links: [] -- object: files/dll/modeseldll.rel - - symbols: config/GMPJ01_00/rels/modeseldll/symbols.txt - splits: config/GMPJ01_00/rels/modeseldll/splits.txt - links: [] -- object: files/dll/mpexDll.rel - - symbols: config/GMPJ01_00/rels/mpexDll/symbols.txt - splits: config/GMPJ01_00/rels/mpexDll/splits.txt - links: [] -- object: files/dll/msetupDll.rel - - symbols: config/GMPJ01_00/rels/msetupDll/symbols.txt - splits: config/GMPJ01_00/rels/msetupDll/splits.txt - links: [] -- object: files/dll/mstory2Dll.rel - - symbols: config/GMPJ01_00/rels/mstory2Dll/symbols.txt - splits: config/GMPJ01_00/rels/mstory2Dll/splits.txt - links: [] -- object: files/dll/mstory3Dll.rel - - symbols: config/GMPJ01_00/rels/mstory3Dll/symbols.txt - splits: config/GMPJ01_00/rels/mstory3Dll/splits.txt - links: [] -- object: files/dll/mstory4Dll.rel - - symbols: config/GMPJ01_00/rels/mstory4Dll/symbols.txt - splits: config/GMPJ01_00/rels/mstory4Dll/splits.txt - links: [] -- object: files/dll/mstoryDll.rel - - symbols: config/GMPJ01_00/rels/mstoryDll/symbols.txt - splits: config/GMPJ01_00/rels/mstoryDll/splits.txt - links: [] -- object: files/dll/nisDll.rel - - symbols: config/GMPJ01_00/rels/nisDll/symbols.txt - splits: config/GMPJ01_00/rels/nisDll/splits.txt - links: [] -- object: files/dll/option.rel - - symbols: config/GMPJ01_00/rels/option/symbols.txt - splits: config/GMPJ01_00/rels/option/splits.txt - links: [] -- object: files/dll/present.rel - - symbols: config/GMPJ01_00/rels/present/symbols.txt - splits: config/GMPJ01_00/rels/present/splits.txt - links: [] -- object: files/dll/resultDll.rel - - symbols: config/GMPJ01_00/rels/resultDll/symbols.txt - splits: config/GMPJ01_00/rels/resultDll/splits.txt - links: [] -- object: files/dll/safDll.rel - - symbols: config/GMPJ01_00/rels/safDll/symbols.txt - splits: config/GMPJ01_00/rels/safDll/splits.txt - links: [] -- object: files/dll/selmenuDll.rel - - symbols: config/GMPJ01_00/rels/selmenuDll/symbols.txt - splits: config/GMPJ01_00/rels/selmenuDll/splits.txt - links: [] -- object: files/dll/staffDll.rel - - symbols: config/GMPJ01_00/rels/staffDll/symbols.txt - splits: config/GMPJ01_00/rels/staffDll/splits.txt - links: [] -- object: files/dll/subchrselDll.rel - - symbols: config/GMPJ01_00/rels/subchrselDll/symbols.txt - splits: config/GMPJ01_00/rels/subchrselDll/splits.txt - links: [] -- object: files/dll/w01Dll.rel - - symbols: config/GMPJ01_00/rels/w01Dll/symbols.txt - splits: config/GMPJ01_00/rels/w01Dll/splits.txt - links: [] -- object: files/dll/w02Dll.rel - - symbols: config/GMPJ01_00/rels/w02Dll/symbols.txt - splits: config/GMPJ01_00/rels/w02Dll/splits.txt - links: [] -- object: files/dll/w03Dll.rel - - symbols: config/GMPJ01_00/rels/w03Dll/symbols.txt - splits: config/GMPJ01_00/rels/w03Dll/splits.txt - links: [] -- object: files/dll/w04Dll.rel - - symbols: config/GMPJ01_00/rels/w04Dll/symbols.txt - splits: config/GMPJ01_00/rels/w04Dll/splits.txt - links: [] -- object: files/dll/w05Dll.rel - - symbols: config/GMPJ01_00/rels/w05Dll/symbols.txt - splits: config/GMPJ01_00/rels/w05Dll/splits.txt - links: [] -- object: files/dll/w06Dll.rel - - symbols: config/GMPJ01_00/rels/w06Dll/symbols.txt - splits: config/GMPJ01_00/rels/w06Dll/splits.txt - links: [] -- object: files/dll/w10Dll.rel - - symbols: config/GMPJ01_00/rels/w10Dll/symbols.txt - splits: config/GMPJ01_00/rels/w10Dll/splits.txt - links: [] -- object: files/dll/w20Dll.rel - - symbols: config/GMPJ01_00/rels/w20Dll/symbols.txt - splits: config/GMPJ01_00/rels/w20Dll/splits.txt - links: [] -- object: files/dll/w21Dll.rel - - symbols: config/GMPJ01_00/rels/w21Dll/symbols.txt - splits: config/GMPJ01_00/rels/w21Dll/splits.txt - links: [] -- object: files/dll/ztardll.rel - - symbols: config/GMPJ01_00/rels/ztardll/symbols.txt - splits: config/GMPJ01_00/rels/ztardll/splits.txt - links: [] -- object: files/dll/E3setupDLL.rel - - symbols: config/GMPJ01_00/rels/E3setupDLL/symbols.txt - splits: config/GMPJ01_00/rels/E3setupDLL/splits.txt - links: [_minigameDll] -- object: files/dll/m300Dll.rel - - symbols: config/GMPJ01_00/rels/m300Dll/symbols.txt - splits: config/GMPJ01_00/rels/m300Dll/splits.txt - links: [_minigameDll] -- object: files/dll/m401Dll.rel - - symbols: config/GMPJ01_00/rels/m401Dll/symbols.txt - splits: config/GMPJ01_00/rels/m401Dll/splits.txt - links: [_minigameDll] + - object: files/dll/_minigameDll.rel + + symbols: config/GMPJ01_00/rels/_minigameDll/symbols.txt + splits: config/GMPJ01_00/rels/_minigameDll/splits.txt + links: [] + - object: files/dll/bootDll.rel + + symbols: config/GMPJ01_00/rels/bootDll/symbols.txt + splits: config/GMPJ01_00/rels/bootDll/splits.txt + links: [] + - object: files/dll/instDll.rel + + symbols: config/GMPJ01_00/rels/instDll/symbols.txt + splits: config/GMPJ01_00/rels/instDll/splits.txt + links: [] + - object: files/dll/m302Dll.rel + + symbols: config/GMPJ01_00/rels/m302Dll/symbols.txt + splits: config/GMPJ01_00/rels/m302Dll/splits.txt + links: [] + - object: files/dll/m303Dll.rel + + symbols: config/GMPJ01_00/rels/m303Dll/symbols.txt + splits: config/GMPJ01_00/rels/m303Dll/splits.txt + links: [] + - object: files/dll/m330Dll.rel + + symbols: config/GMPJ01_00/rels/m330Dll/symbols.txt + splits: config/GMPJ01_00/rels/m330Dll/splits.txt + links: [] + - object: files/dll/m333Dll.rel + + symbols: config/GMPJ01_00/rels/m333Dll/symbols.txt + splits: config/GMPJ01_00/rels/m333Dll/splits.txt + links: [] + - object: files/dll/m402Dll.rel + + symbols: config/GMPJ01_00/rels/m402Dll/symbols.txt + splits: config/GMPJ01_00/rels/m402Dll/splits.txt + links: [] + - object: files/dll/m403Dll.rel + + symbols: config/GMPJ01_00/rels/m403Dll/symbols.txt + splits: config/GMPJ01_00/rels/m403Dll/splits.txt + links: [] + - object: files/dll/m404Dll.rel + + symbols: config/GMPJ01_00/rels/m404Dll/symbols.txt + splits: config/GMPJ01_00/rels/m404Dll/splits.txt + links: [] + - object: files/dll/m405Dll.rel + + symbols: config/GMPJ01_00/rels/m405Dll/symbols.txt + splits: config/GMPJ01_00/rels/m405Dll/splits.txt + links: [] + - object: files/dll/m406Dll.rel + + symbols: config/GMPJ01_00/rels/m406Dll/symbols.txt + splits: config/GMPJ01_00/rels/m406Dll/splits.txt + links: [] + - object: files/dll/m407dll.rel + + symbols: config/GMPJ01_00/rels/m407dll/symbols.txt + splits: config/GMPJ01_00/rels/m407dll/splits.txt + links: [] + - object: files/dll/m408Dll.rel + + symbols: config/GMPJ01_00/rels/m408Dll/symbols.txt + splits: config/GMPJ01_00/rels/m408Dll/splits.txt + links: [] + - object: files/dll/m409Dll.rel + + symbols: config/GMPJ01_00/rels/m409Dll/symbols.txt + splits: config/GMPJ01_00/rels/m409Dll/splits.txt + links: [] + - object: files/dll/m410Dll.rel + + symbols: config/GMPJ01_00/rels/m410Dll/symbols.txt + splits: config/GMPJ01_00/rels/m410Dll/splits.txt + links: [] + - object: files/dll/m411Dll.rel + + symbols: config/GMPJ01_00/rels/m411Dll/symbols.txt + splits: config/GMPJ01_00/rels/m411Dll/splits.txt + links: [] + - object: files/dll/m412Dll.rel + + symbols: config/GMPJ01_00/rels/m412Dll/symbols.txt + splits: config/GMPJ01_00/rels/m412Dll/splits.txt + links: [] + - object: files/dll/m413Dll.rel + + symbols: config/GMPJ01_00/rels/m413Dll/symbols.txt + splits: config/GMPJ01_00/rels/m413Dll/splits.txt + links: [] + - object: files/dll/m414Dll.rel + + symbols: config/GMPJ01_00/rels/m414Dll/symbols.txt + splits: config/GMPJ01_00/rels/m414Dll/splits.txt + links: [] + - object: files/dll/m415Dll.rel + + symbols: config/GMPJ01_00/rels/m415Dll/symbols.txt + splits: config/GMPJ01_00/rels/m415Dll/splits.txt + links: [] + - object: files/dll/m416Dll.rel + + symbols: config/GMPJ01_00/rels/m416Dll/symbols.txt + splits: config/GMPJ01_00/rels/m416Dll/splits.txt + links: [] + - object: files/dll/m417Dll.rel + + symbols: config/GMPJ01_00/rels/m417Dll/symbols.txt + splits: config/GMPJ01_00/rels/m417Dll/splits.txt + links: [] + - object: files/dll/m418Dll.rel + + symbols: config/GMPJ01_00/rels/m418Dll/symbols.txt + splits: config/GMPJ01_00/rels/m418Dll/splits.txt + links: [] + - object: files/dll/m419Dll.rel + + symbols: config/GMPJ01_00/rels/m419Dll/symbols.txt + splits: config/GMPJ01_00/rels/m419Dll/splits.txt + links: [] + - object: files/dll/m420dll.rel + + symbols: config/GMPJ01_00/rels/m420dll/symbols.txt + splits: config/GMPJ01_00/rels/m420dll/splits.txt + links: [] + - object: files/dll/m421Dll.rel + + symbols: config/GMPJ01_00/rels/m421Dll/symbols.txt + splits: config/GMPJ01_00/rels/m421Dll/splits.txt + links: [] + - object: files/dll/m422Dll.rel + + symbols: config/GMPJ01_00/rels/m422Dll/symbols.txt + splits: config/GMPJ01_00/rels/m422Dll/splits.txt + links: [] + - object: files/dll/m423Dll.rel + + symbols: config/GMPJ01_00/rels/m423Dll/symbols.txt + splits: config/GMPJ01_00/rels/m423Dll/splits.txt + links: [] + - object: files/dll/m424Dll.rel + + symbols: config/GMPJ01_00/rels/m424Dll/symbols.txt + splits: config/GMPJ01_00/rels/m424Dll/splits.txt + links: [] + - object: files/dll/m425Dll.rel + + symbols: config/GMPJ01_00/rels/m425Dll/symbols.txt + splits: config/GMPJ01_00/rels/m425Dll/splits.txt + links: [] + - object: files/dll/m426Dll.rel + + symbols: config/GMPJ01_00/rels/m426Dll/symbols.txt + splits: config/GMPJ01_00/rels/m426Dll/splits.txt + links: [] + - object: files/dll/m427Dll.rel + + symbols: config/GMPJ01_00/rels/m427Dll/symbols.txt + splits: config/GMPJ01_00/rels/m427Dll/splits.txt + links: [] + - object: files/dll/m428Dll.rel + + symbols: config/GMPJ01_00/rels/m428Dll/symbols.txt + splits: config/GMPJ01_00/rels/m428Dll/splits.txt + links: [] + - object: files/dll/m429Dll.rel + + symbols: config/GMPJ01_00/rels/m429Dll/symbols.txt + splits: config/GMPJ01_00/rels/m429Dll/splits.txt + links: [] + - object: files/dll/m430Dll.rel + + symbols: config/GMPJ01_00/rels/m430Dll/symbols.txt + splits: config/GMPJ01_00/rels/m430Dll/splits.txt + links: [] + - object: files/dll/m431Dll.rel + + symbols: config/GMPJ01_00/rels/m431Dll/symbols.txt + splits: config/GMPJ01_00/rels/m431Dll/splits.txt + links: [] + - object: files/dll/m432Dll.rel + + symbols: config/GMPJ01_00/rels/m432Dll/symbols.txt + splits: config/GMPJ01_00/rels/m432Dll/splits.txt + links: [] + - object: files/dll/m433Dll.rel + + symbols: config/GMPJ01_00/rels/m433Dll/symbols.txt + splits: config/GMPJ01_00/rels/m433Dll/splits.txt + links: [] + - object: files/dll/m434Dll.rel + + symbols: config/GMPJ01_00/rels/m434Dll/symbols.txt + splits: config/GMPJ01_00/rels/m434Dll/splits.txt + links: [] + - object: files/dll/m435Dll.rel + + symbols: config/GMPJ01_00/rels/m435Dll/symbols.txt + splits: config/GMPJ01_00/rels/m435Dll/splits.txt + links: [] + - object: files/dll/m436Dll.rel + + symbols: config/GMPJ01_00/rels/m436Dll/symbols.txt + splits: config/GMPJ01_00/rels/m436Dll/splits.txt + links: [] + - object: files/dll/m437Dll.rel + + symbols: config/GMPJ01_00/rels/m437Dll/symbols.txt + splits: config/GMPJ01_00/rels/m437Dll/splits.txt + links: [] + - object: files/dll/m438Dll.rel + + symbols: config/GMPJ01_00/rels/m438Dll/symbols.txt + splits: config/GMPJ01_00/rels/m438Dll/splits.txt + links: [] + - object: files/dll/m439Dll.rel + + symbols: config/GMPJ01_00/rels/m439Dll/symbols.txt + splits: config/GMPJ01_00/rels/m439Dll/splits.txt + links: [] + - object: files/dll/m440Dll.rel + + symbols: config/GMPJ01_00/rels/m440Dll/symbols.txt + splits: config/GMPJ01_00/rels/m440Dll/splits.txt + links: [] + - object: files/dll/m441Dll.rel + + symbols: config/GMPJ01_00/rels/m441Dll/symbols.txt + splits: config/GMPJ01_00/rels/m441Dll/splits.txt + links: [] + - object: files/dll/m442Dll.rel + + symbols: config/GMPJ01_00/rels/m442Dll/symbols.txt + splits: config/GMPJ01_00/rels/m442Dll/splits.txt + links: [] + - object: files/dll/m443Dll.rel + + symbols: config/GMPJ01_00/rels/m443Dll/symbols.txt + splits: config/GMPJ01_00/rels/m443Dll/splits.txt + links: [] + - object: files/dll/m444dll.rel + + symbols: config/GMPJ01_00/rels/m444dll/symbols.txt + splits: config/GMPJ01_00/rels/m444dll/splits.txt + links: [] + - object: files/dll/m445Dll.rel + + symbols: config/GMPJ01_00/rels/m445Dll/symbols.txt + splits: config/GMPJ01_00/rels/m445Dll/splits.txt + links: [] + - object: files/dll/m446dll.rel + + symbols: config/GMPJ01_00/rels/m446dll/symbols.txt + splits: config/GMPJ01_00/rels/m446dll/splits.txt + links: [] + - object: files/dll/m447dll.rel + + symbols: config/GMPJ01_00/rels/m447dll/symbols.txt + splits: config/GMPJ01_00/rels/m447dll/splits.txt + links: [] + - object: files/dll/m448Dll.rel + + symbols: config/GMPJ01_00/rels/m448Dll/symbols.txt + splits: config/GMPJ01_00/rels/m448Dll/splits.txt + links: [] + - object: files/dll/m449Dll.rel + + symbols: config/GMPJ01_00/rels/m449Dll/symbols.txt + splits: config/GMPJ01_00/rels/m449Dll/splits.txt + links: [] + - object: files/dll/m450Dll.rel + + symbols: config/GMPJ01_00/rels/m450Dll/symbols.txt + splits: config/GMPJ01_00/rels/m450Dll/splits.txt + links: [] + - object: files/dll/m451Dll.rel + + symbols: config/GMPJ01_00/rels/m451Dll/symbols.txt + splits: config/GMPJ01_00/rels/m451Dll/splits.txt + links: [] + - object: files/dll/m453Dll.rel + + symbols: config/GMPJ01_00/rels/m453Dll/symbols.txt + splits: config/GMPJ01_00/rels/m453Dll/splits.txt + links: [] + - object: files/dll/m455Dll.rel + + symbols: config/GMPJ01_00/rels/m455Dll/symbols.txt + splits: config/GMPJ01_00/rels/m455Dll/splits.txt + links: [] + - object: files/dll/m456Dll.rel + + symbols: config/GMPJ01_00/rels/m456Dll/symbols.txt + splits: config/GMPJ01_00/rels/m456Dll/splits.txt + links: [] + - object: files/dll/m457Dll.rel + + symbols: config/GMPJ01_00/rels/m457Dll/symbols.txt + splits: config/GMPJ01_00/rels/m457Dll/splits.txt + links: [] + - object: files/dll/m458Dll.rel + + symbols: config/GMPJ01_00/rels/m458Dll/symbols.txt + splits: config/GMPJ01_00/rels/m458Dll/splits.txt + links: [] + - object: files/dll/m459dll.rel + + symbols: config/GMPJ01_00/rels/m459dll/symbols.txt + splits: config/GMPJ01_00/rels/m459dll/splits.txt + links: [] + - object: files/dll/m460Dll.rel + + symbols: config/GMPJ01_00/rels/m460Dll/symbols.txt + splits: config/GMPJ01_00/rels/m460Dll/splits.txt + links: [] + - object: files/dll/m461Dll.rel + + symbols: config/GMPJ01_00/rels/m461Dll/symbols.txt + splits: config/GMPJ01_00/rels/m461Dll/splits.txt + links: [] + - object: files/dll/m462Dll.rel + + symbols: config/GMPJ01_00/rels/m462Dll/symbols.txt + splits: config/GMPJ01_00/rels/m462Dll/splits.txt + links: [] + - object: files/dll/m463Dll.rel + + symbols: config/GMPJ01_00/rels/m463Dll/symbols.txt + splits: config/GMPJ01_00/rels/m463Dll/splits.txt + links: [] + - object: files/dll/mentDll.rel + + symbols: config/GMPJ01_00/rels/mentDll/symbols.txt + splits: config/GMPJ01_00/rels/mentDll/splits.txt + links: [] + - object: files/dll/movieDll.rel + + symbols: config/GMPJ01_00/rels/movieDll/symbols.txt + splits: config/GMPJ01_00/rels/movieDll/splits.txt + links: [] + - object: files/dll/mgmodedll.rel + + symbols: config/GMPJ01_00/rels/mgmodedll/symbols.txt + splits: config/GMPJ01_00/rels/mgmodedll/splits.txt + links: [] + - object: files/dll/modeltestDll.rel + + symbols: config/GMPJ01_00/rels/modeltestDll/symbols.txt + splits: config/GMPJ01_00/rels/modeltestDll/splits.txt + links: [] + - object: files/dll/modeseldll.rel + + symbols: config/GMPJ01_00/rels/modeseldll/symbols.txt + splits: config/GMPJ01_00/rels/modeseldll/splits.txt + links: [] + - object: files/dll/mpexDll.rel + + symbols: config/GMPJ01_00/rels/mpexDll/symbols.txt + splits: config/GMPJ01_00/rels/mpexDll/splits.txt + links: [] + - object: files/dll/msetupDll.rel + + symbols: config/GMPJ01_00/rels/msetupDll/symbols.txt + splits: config/GMPJ01_00/rels/msetupDll/splits.txt + links: [] + - object: files/dll/mstory2Dll.rel + + symbols: config/GMPJ01_00/rels/mstory2Dll/symbols.txt + splits: config/GMPJ01_00/rels/mstory2Dll/splits.txt + links: [] + - object: files/dll/mstory3Dll.rel + + symbols: config/GMPJ01_00/rels/mstory3Dll/symbols.txt + splits: config/GMPJ01_00/rels/mstory3Dll/splits.txt + links: [] + - object: files/dll/mstory4Dll.rel + + symbols: config/GMPJ01_00/rels/mstory4Dll/symbols.txt + splits: config/GMPJ01_00/rels/mstory4Dll/splits.txt + links: [] + - object: files/dll/mstoryDll.rel + + symbols: config/GMPJ01_00/rels/mstoryDll/symbols.txt + splits: config/GMPJ01_00/rels/mstoryDll/splits.txt + links: [] + - object: files/dll/nisDll.rel + + symbols: config/GMPJ01_00/rels/nisDll/symbols.txt + splits: config/GMPJ01_00/rels/nisDll/splits.txt + links: [] + - object: files/dll/option.rel + + symbols: config/GMPJ01_00/rels/option/symbols.txt + splits: config/GMPJ01_00/rels/option/splits.txt + links: [] + - object: files/dll/present.rel + + symbols: config/GMPJ01_00/rels/present/symbols.txt + splits: config/GMPJ01_00/rels/present/splits.txt + links: [] + - object: files/dll/resultDll.rel + + symbols: config/GMPJ01_00/rels/resultDll/symbols.txt + splits: config/GMPJ01_00/rels/resultDll/splits.txt + links: [] + - object: files/dll/safDll.rel + + symbols: config/GMPJ01_00/rels/safDll/symbols.txt + splits: config/GMPJ01_00/rels/safDll/splits.txt + links: [] + - object: files/dll/selmenuDll.rel + + symbols: config/GMPJ01_00/rels/selmenuDll/symbols.txt + splits: config/GMPJ01_00/rels/selmenuDll/splits.txt + links: [] + - object: files/dll/staffDll.rel + + symbols: config/GMPJ01_00/rels/staffDll/symbols.txt + splits: config/GMPJ01_00/rels/staffDll/splits.txt + links: [] + - object: files/dll/subchrselDll.rel + + symbols: config/GMPJ01_00/rels/subchrselDll/symbols.txt + splits: config/GMPJ01_00/rels/subchrselDll/splits.txt + links: [] + - object: files/dll/w01Dll.rel + + symbols: config/GMPJ01_00/rels/w01Dll/symbols.txt + splits: config/GMPJ01_00/rels/w01Dll/splits.txt + links: [] + - object: files/dll/w02Dll.rel + + symbols: config/GMPJ01_00/rels/w02Dll/symbols.txt + splits: config/GMPJ01_00/rels/w02Dll/splits.txt + links: [] + - object: files/dll/w03Dll.rel + + symbols: config/GMPJ01_00/rels/w03Dll/symbols.txt + splits: config/GMPJ01_00/rels/w03Dll/splits.txt + links: [] + - object: files/dll/w04Dll.rel + + symbols: config/GMPJ01_00/rels/w04Dll/symbols.txt + splits: config/GMPJ01_00/rels/w04Dll/splits.txt + links: [] + - object: files/dll/w05Dll.rel + + symbols: config/GMPJ01_00/rels/w05Dll/symbols.txt + splits: config/GMPJ01_00/rels/w05Dll/splits.txt + links: [] + - object: files/dll/w06Dll.rel + + symbols: config/GMPJ01_00/rels/w06Dll/symbols.txt + splits: config/GMPJ01_00/rels/w06Dll/splits.txt + links: [] + - object: files/dll/w10Dll.rel + + symbols: config/GMPJ01_00/rels/w10Dll/symbols.txt + splits: config/GMPJ01_00/rels/w10Dll/splits.txt + links: [] + - object: files/dll/w20Dll.rel + + symbols: config/GMPJ01_00/rels/w20Dll/symbols.txt + splits: config/GMPJ01_00/rels/w20Dll/splits.txt + links: [] + - object: files/dll/w21Dll.rel + + symbols: config/GMPJ01_00/rels/w21Dll/symbols.txt + splits: config/GMPJ01_00/rels/w21Dll/splits.txt + links: [] + - object: files/dll/ztardll.rel + + symbols: config/GMPJ01_00/rels/ztardll/symbols.txt + splits: config/GMPJ01_00/rels/ztardll/splits.txt + links: [] + - object: files/dll/E3setupDLL.rel + + symbols: config/GMPJ01_00/rels/E3setupDLL/symbols.txt + splits: config/GMPJ01_00/rels/E3setupDLL/splits.txt + links: [_minigameDll] + - object: files/dll/m300Dll.rel + + symbols: config/GMPJ01_00/rels/m300Dll/symbols.txt + splits: config/GMPJ01_00/rels/m300Dll/splits.txt + links: [_minigameDll] + - object: files/dll/m401Dll.rel + + symbols: config/GMPJ01_00/rels/m401Dll/symbols.txt + splits: config/GMPJ01_00/rels/m401Dll/splits.txt + links: [_minigameDll] diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index f8a58b51..f7c399a1 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -12,3 +12,29 @@ Sections: .sbss type:bss align:32 .sdata2 type:rodata align:32 .sbss2 type:bss align:4 + +game/main.c: + .text start:0x800057C0 end:0x80005A5C + .data start:0x8011E9C0 end:0x8011E9D0 + .sdata start:0x801D30C0 end:0x801D30D0 + .sbss start:0x801D36C0 end:0x801D3718 + .sdata2 start:0x801D4620 end:0x801D4628 + +game/pad.c: + .text start:0x80005A5C end:0x80006478 + .data start:0x8011E9D0 end:0x8011E9E0 + .bss start:0x801424A0 end:0x801424E0 + .sbss start:0x801D3718 end:0x801D37A0 + +game/dvd.c: + .text start:0x80006478 end:0x80006E38 + .data start:0x8011E9E0 end:0x8011EB38 + .sdata start:0x801D30D0 end:0x801D30D8 + .sbss start:0x801D37A0 end:0x801D37A8 + +game/data.c: + .text start:0x80006E38 end:0x80009400 + .data start:0x8011EB38 end:0x8011F9C0 + .bss start:0x801424E0 end:0x801452E0 + .sdata start:0x801D30D8 end:0x801D30E8 + .sbss start:0x801D37A8 end:0x801D37B8 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index 21fb23bc..77f9a6b2 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -3673,154 +3673,154 @@ lbl_8011E780 = .rodata:0x8011E780; // type:object size:0x18 lbl_8011E798 = .rodata:0x8011E798; // type:object size:0x88 lbl_8011E820 = .rodata:0x8011E820; // type:object size:0x88 data:byte lbl_8011E8A8 = .rodata:0x8011E8A8; // type:object size:0x100 -lbl_8011E9C0 = .data:0x8011E9C0; // type:object size:0x10 data:string -lbl_8011E9D0 = .data:0x8011E9D0; // type:object size:0x10 -lbl_8011E9E0 = .data:0x8011E9E0; // type:object size:0x124 +lbl_8011E9C0 = .data:0x8011E9C0; // type:object size:0x10 scope:local data:string +chanTbl = .data:0x8011E9D0; // type:object size:0x10 scope:local +correctDiskID = .data:0x8011E9E0; // type:object size:0x124 scope:local jumptable_8011EB04 = .data:0x8011EB04; // type:object size:0x34 scope:local -lbl_8011EB38 = .data:0x8011EB38; // type:object size:0x11 data:string -lbl_8011EB49 = .data:0x8011EB49; // type:object size:0x11 data:string -lbl_8011EB5A = .data:0x8011EB5A; // type:object size:0x10 data:string -lbl_8011EB6A = .data:0x8011EB6A; // type:object size:0x10 data:string -lbl_8011EB7A = .data:0x8011EB7A; // type:object size:0x14 data:string -lbl_8011EB8E = .data:0x8011EB8E; // type:object size:0x11 data:string -lbl_8011EB9F = .data:0x8011EB9F; // type:object size:0x10 data:string -lbl_8011EBAF = .data:0x8011EBAF; // type:object size:0xF data:string -lbl_8011EBBE = .data:0x8011EBBE; // type:object size:0x10 data:string -lbl_8011EBCE = .data:0x8011EBCE; // type:object size:0x13 data:string -lbl_8011EBE1 = .data:0x8011EBE1; // type:object size:0xF data:string -lbl_8011EBF0 = .data:0x8011EBF0; // type:object size:0x13 data:string -lbl_8011EC03 = .data:0x8011EC03; // type:object size:0x13 data:string -lbl_8011EC16 = .data:0x8011EC16; // type:object size:0x12 data:string -lbl_8011EC28 = .data:0x8011EC28; // type:object size:0x10 data:string -lbl_8011EC38 = .data:0x8011EC38; // type:object size:0x14 data:string -lbl_8011EC4C = .data:0x8011EC4C; // type:object size:0x14 data:string -lbl_8011EC60 = .data:0x8011EC60; // type:object size:0x13 data:string -lbl_8011EC73 = .data:0x8011EC73; // type:object size:0x10 data:string -lbl_8011EC83 = .data:0x8011EC83; // type:object size:0x11 data:string -lbl_8011EC94 = .data:0x8011EC94; // type:object size:0xE data:string -lbl_8011ECA2 = .data:0x8011ECA2; // type:object size:0x12 data:string -lbl_8011ECB4 = .data:0x8011ECB4; // type:object size:0x11 data:string -lbl_8011ECC5 = .data:0x8011ECC5; // type:object size:0xF data:string -lbl_8011ECD4 = .data:0x8011ECD4; // type:object size:0x13 data:string -lbl_8011ECE7 = .data:0x8011ECE7; // type:object size:0x13 data:string -lbl_8011ECFA = .data:0x8011ECFA; // type:object size:0x12 data:string -lbl_8011ED0C = .data:0x8011ED0C; // type:object size:0xE data:string -lbl_8011ED1A = .data:0x8011ED1A; // type:object size:0xE data:string -lbl_8011ED28 = .data:0x8011ED28; // type:object size:0xE data:string -lbl_8011ED36 = .data:0x8011ED36; // type:object size:0xE data:string -lbl_8011ED44 = .data:0x8011ED44; // type:object size:0xE data:string -lbl_8011ED52 = .data:0x8011ED52; // type:object size:0xE data:string -lbl_8011ED60 = .data:0x8011ED60; // type:object size:0xE data:string -lbl_8011ED6E = .data:0x8011ED6E; // type:object size:0xE data:string -lbl_8011ED7C = .data:0x8011ED7C; // type:object size:0xE data:string -lbl_8011ED8A = .data:0x8011ED8A; // type:object size:0xE data:string -lbl_8011ED98 = .data:0x8011ED98; // type:object size:0xE data:string -lbl_8011EDA6 = .data:0x8011EDA6; // type:object size:0xE data:string -lbl_8011EDB4 = .data:0x8011EDB4; // type:object size:0xE data:string -lbl_8011EDC2 = .data:0x8011EDC2; // type:object size:0xE data:string -lbl_8011EDD0 = .data:0x8011EDD0; // type:object size:0xE data:string -lbl_8011EDDE = .data:0x8011EDDE; // type:object size:0xE data:string -lbl_8011EDEC = .data:0x8011EDEC; // type:object size:0xE data:string -lbl_8011EDFA = .data:0x8011EDFA; // type:object size:0xE data:string -lbl_8011EE08 = .data:0x8011EE08; // type:object size:0xE data:string -lbl_8011EE16 = .data:0x8011EE16; // type:object size:0xE data:string -lbl_8011EE24 = .data:0x8011EE24; // type:object size:0xE data:string -lbl_8011EE32 = .data:0x8011EE32; // type:object size:0xE data:string -lbl_8011EE40 = .data:0x8011EE40; // type:object size:0xE data:string -lbl_8011EE4E = .data:0x8011EE4E; // type:object size:0xE data:string -lbl_8011EE5C = .data:0x8011EE5C; // type:object size:0xE data:string -lbl_8011EE6A = .data:0x8011EE6A; // type:object size:0xE data:string -lbl_8011EE78 = .data:0x8011EE78; // type:object size:0xE data:string -lbl_8011EE86 = .data:0x8011EE86; // type:object size:0xE data:string -lbl_8011EE94 = .data:0x8011EE94; // type:object size:0xE data:string -lbl_8011EEA2 = .data:0x8011EEA2; // type:object size:0xE data:string -lbl_8011EEB0 = .data:0x8011EEB0; // type:object size:0xE data:string -lbl_8011EEBE = .data:0x8011EEBE; // type:object size:0xE data:string -lbl_8011EECC = .data:0x8011EECC; // type:object size:0xE data:string -lbl_8011EEDA = .data:0x8011EEDA; // type:object size:0xE data:string -lbl_8011EEE8 = .data:0x8011EEE8; // type:object size:0xE data:string -lbl_8011EEF6 = .data:0x8011EEF6; // type:object size:0xE data:string -lbl_8011EF04 = .data:0x8011EF04; // type:object size:0xE data:string -lbl_8011EF12 = .data:0x8011EF12; // type:object size:0xE data:string -lbl_8011EF20 = .data:0x8011EF20; // type:object size:0xE data:string -lbl_8011EF2E = .data:0x8011EF2E; // type:object size:0xE data:string -lbl_8011EF3C = .data:0x8011EF3C; // type:object size:0xE data:string -lbl_8011EF4A = .data:0x8011EF4A; // type:object size:0xE data:string -lbl_8011EF58 = .data:0x8011EF58; // type:object size:0xE data:string -lbl_8011EF66 = .data:0x8011EF66; // type:object size:0xE data:string -lbl_8011EF74 = .data:0x8011EF74; // type:object size:0xE data:string -lbl_8011EF82 = .data:0x8011EF82; // type:object size:0xE data:string -lbl_8011EF90 = .data:0x8011EF90; // type:object size:0xE data:string -lbl_8011EF9E = .data:0x8011EF9E; // type:object size:0xE data:string -lbl_8011EFAC = .data:0x8011EFAC; // type:object size:0xE data:string -lbl_8011EFBA = .data:0x8011EFBA; // type:object size:0xE data:string -lbl_8011EFC8 = .data:0x8011EFC8; // type:object size:0xE data:string -lbl_8011EFD6 = .data:0x8011EFD6; // type:object size:0xE data:string -lbl_8011EFE4 = .data:0x8011EFE4; // type:object size:0xE data:string -lbl_8011EFF2 = .data:0x8011EFF2; // type:object size:0xE data:string -lbl_8011F000 = .data:0x8011F000; // type:object size:0xE data:string -lbl_8011F00E = .data:0x8011F00E; // type:object size:0xE data:string -lbl_8011F01C = .data:0x8011F01C; // type:object size:0xE data:string -lbl_8011F02A = .data:0x8011F02A; // type:object size:0xE data:string -lbl_8011F038 = .data:0x8011F038; // type:object size:0xE data:string -lbl_8011F046 = .data:0x8011F046; // type:object size:0xE data:string -lbl_8011F054 = .data:0x8011F054; // type:object size:0xE data:string -lbl_8011F062 = .data:0x8011F062; // type:object size:0xE data:string -lbl_8011F070 = .data:0x8011F070; // type:object size:0xE data:string -lbl_8011F07E = .data:0x8011F07E; // type:object size:0xE data:string -lbl_8011F08C = .data:0x8011F08C; // type:object size:0xE data:string -lbl_8011F09A = .data:0x8011F09A; // type:object size:0xF data:string -lbl_8011F0A9 = .data:0x8011F0A9; // type:object size:0x13 data:string -lbl_8011F0BC = .data:0x8011F0BC; // type:object size:0x13 data:string -lbl_8011F0CF = .data:0x8011F0CF; // type:object size:0x12 data:string -lbl_8011F0E1 = .data:0x8011F0E1; // type:object size:0xE data:string -lbl_8011F0EF = .data:0x8011F0EF; // type:object size:0x11 data:string -lbl_8011F100 = .data:0x8011F100; // type:object size:0x10 data:string -lbl_8011F110 = .data:0x8011F110; // type:object size:0x11 data:string -lbl_8011F121 = .data:0x8011F121; // type:object size:0xE data:string -lbl_8011F12F = .data:0x8011F12F; // type:object size:0x10 data:string -lbl_8011F13F = .data:0x8011F13F; // type:object size:0x11 data:string -lbl_8011F150 = .data:0x8011F150; // type:object size:0x11 data:string -lbl_8011F161 = .data:0x8011F161; // type:object size:0x11 data:string -lbl_8011F172 = .data:0x8011F172; // type:object size:0x10 data:string -lbl_8011F182 = .data:0x8011F182; // type:object size:0xF data:string -lbl_8011F191 = .data:0x8011F191; // type:object size:0x13 data:string -lbl_8011F1A4 = .data:0x8011F1A4; // type:object size:0x13 data:string -lbl_8011F1B7 = .data:0x8011F1B7; // type:object size:0x12 data:string -lbl_8011F1C9 = .data:0x8011F1C9; // type:object size:0x11 data:string -lbl_8011F1DA = .data:0x8011F1DA; // type:object size:0x10 data:string -lbl_8011F1EA = .data:0x8011F1EA; // type:object size:0xD data:string -lbl_8011F1F7 = .data:0x8011F1F7; // type:object size:0x11 data:string -lbl_8011F208 = .data:0x8011F208; // type:object size:0xF data:string -lbl_8011F217 = .data:0x8011F217; // type:object size:0xF data:string -lbl_8011F226 = .data:0x8011F226; // type:object size:0xF data:string -lbl_8011F235 = .data:0x8011F235; // type:object size:0xD data:string -lbl_8011F242 = .data:0x8011F242; // type:object size:0xD data:string -lbl_8011F24F = .data:0x8011F24F; // type:object size:0xD data:string -lbl_8011F25C = .data:0x8011F25C; // type:object size:0xD data:string -lbl_8011F269 = .data:0x8011F269; // type:object size:0xD data:string -lbl_8011F276 = .data:0x8011F276; // type:object size:0xD data:string -lbl_8011F283 = .data:0x8011F283; // type:object size:0xD data:string -lbl_8011F290 = .data:0x8011F290; // type:object size:0xD data:string -lbl_8011F29D = .data:0x8011F29D; // type:object size:0xD data:string -lbl_8011F2AA = .data:0x8011F2AA; // type:object size:0x11 data:string -lbl_8011F2BB = .data:0x8011F2BB; // type:object size:0x15 data:string -lbl_8011F2D0 = .data:0x8011F2D0; // type:object size:0x15 data:string -lbl_8011F2E5 = .data:0x8011F2E5; // type:object size:0x14 data:string -lbl_8011F2F9 = .data:0x8011F2F9; // type:object size:0xF data:string -lbl_8011F308 = .data:0x8011F308; // type:object size:0x13 data:string -lbl_8011F31B = .data:0x8011F31B; // type:object size:0x13 data:string -lbl_8011F32E = .data:0x8011F32E; // type:object size:0x12 data:string -lbl_8011F340 = .data:0x8011F340; // type:object size:0xD data:string -lbl_8011F34D = .data:0x8011F34D; // type:object size:0xF data:string -lbl_8011F35C = .data:0x8011F35C; // type:object size:0x13 data:string -lbl_8011F36F = .data:0x8011F36F; // type:object size:0x13 data:string -lbl_8011F382 = .data:0x8011F382; // type:object size:0x12 data:string -lbl_8011F394 = .data:0x8011F394; // type:object size:0x10 -lbl_8011F3A4 = .data:0x8011F3A4; // type:object size:0x468 data:4byte -lbl_8011F80C = .data:0x8011F80C; // type:object size:0x1D data:string -lbl_8011F829 = .data:0x8011F829; // type:object size:0x1F data:string -lbl_8011F848 = .data:0x8011F848; // type:object size:0x3C +lbl_8011EB38 = .data:0x8011EB38; // type:object size:0x11 scope:local data:string +lbl_8011EB49 = .data:0x8011EB49; // type:object size:0x11 scope:local data:string +lbl_8011EB5A = .data:0x8011EB5A; // type:object size:0x10 scope:local data:string +lbl_8011EB6A = .data:0x8011EB6A; // type:object size:0x10 scope:local data:string +lbl_8011EB7A = .data:0x8011EB7A; // type:object size:0x14 scope:local data:string +lbl_8011EB8E = .data:0x8011EB8E; // type:object size:0x11 scope:local data:string +lbl_8011EB9F = .data:0x8011EB9F; // type:object size:0x10 scope:local data:string +lbl_8011EBAF = .data:0x8011EBAF; // type:object size:0xF scope:local data:string +lbl_8011EBBE = .data:0x8011EBBE; // type:object size:0x10 scope:local data:string +lbl_8011EBCE = .data:0x8011EBCE; // type:object size:0x13 scope:local data:string +lbl_8011EBE1 = .data:0x8011EBE1; // type:object size:0xF scope:local data:string +lbl_8011EBF0 = .data:0x8011EBF0; // type:object size:0x13 scope:local data:string +lbl_8011EC03 = .data:0x8011EC03; // type:object size:0x13 scope:local data:string +lbl_8011EC16 = .data:0x8011EC16; // type:object size:0x12 scope:local data:string +lbl_8011EC28 = .data:0x8011EC28; // type:object size:0x10 scope:local data:string +lbl_8011EC38 = .data:0x8011EC38; // type:object size:0x14 scope:local data:string +lbl_8011EC4C = .data:0x8011EC4C; // type:object size:0x14 scope:local data:string +lbl_8011EC60 = .data:0x8011EC60; // type:object size:0x13 scope:local data:string +lbl_8011EC73 = .data:0x8011EC73; // type:object size:0x10 scope:local data:string +lbl_8011EC83 = .data:0x8011EC83; // type:object size:0x11 scope:local data:string +lbl_8011EC94 = .data:0x8011EC94; // type:object size:0xE scope:local data:string +lbl_8011ECA2 = .data:0x8011ECA2; // type:object size:0x12 scope:local data:string +lbl_8011ECB4 = .data:0x8011ECB4; // type:object size:0x11 scope:local data:string +lbl_8011ECC5 = .data:0x8011ECC5; // type:object size:0xF scope:local data:string +lbl_8011ECD4 = .data:0x8011ECD4; // type:object size:0x13 scope:local data:string +lbl_8011ECE7 = .data:0x8011ECE7; // type:object size:0x13 scope:local data:string +lbl_8011ECFA = .data:0x8011ECFA; // type:object size:0x12 scope:local data:string +lbl_8011ED0C = .data:0x8011ED0C; // type:object size:0xE scope:local data:string +lbl_8011ED1A = .data:0x8011ED1A; // type:object size:0xE scope:local data:string +lbl_8011ED28 = .data:0x8011ED28; // type:object size:0xE scope:local data:string +lbl_8011ED36 = .data:0x8011ED36; // type:object size:0xE scope:local data:string +lbl_8011ED44 = .data:0x8011ED44; // type:object size:0xE scope:local data:string +lbl_8011ED52 = .data:0x8011ED52; // type:object size:0xE scope:local data:string +lbl_8011ED60 = .data:0x8011ED60; // type:object size:0xE scope:local data:string +lbl_8011ED6E = .data:0x8011ED6E; // type:object size:0xE scope:local data:string +lbl_8011ED7C = .data:0x8011ED7C; // type:object size:0xE scope:local data:string +lbl_8011ED8A = .data:0x8011ED8A; // type:object size:0xE scope:local data:string +lbl_8011ED98 = .data:0x8011ED98; // type:object size:0xE scope:local data:string +lbl_8011EDA6 = .data:0x8011EDA6; // type:object size:0xE scope:local data:string +lbl_8011EDB4 = .data:0x8011EDB4; // type:object size:0xE scope:local data:string +lbl_8011EDC2 = .data:0x8011EDC2; // type:object size:0xE scope:local data:string +lbl_8011EDD0 = .data:0x8011EDD0; // type:object size:0xE scope:local data:string +lbl_8011EDDE = .data:0x8011EDDE; // type:object size:0xE scope:local data:string +lbl_8011EDEC = .data:0x8011EDEC; // type:object size:0xE scope:local data:string +lbl_8011EDFA = .data:0x8011EDFA; // type:object size:0xE scope:local data:string +lbl_8011EE08 = .data:0x8011EE08; // type:object size:0xE scope:local data:string +lbl_8011EE16 = .data:0x8011EE16; // type:object size:0xE scope:local data:string +lbl_8011EE24 = .data:0x8011EE24; // type:object size:0xE scope:local data:string +lbl_8011EE32 = .data:0x8011EE32; // type:object size:0xE scope:local data:string +lbl_8011EE40 = .data:0x8011EE40; // type:object size:0xE scope:local data:string +lbl_8011EE4E = .data:0x8011EE4E; // type:object size:0xE scope:local data:string +lbl_8011EE5C = .data:0x8011EE5C; // type:object size:0xE scope:local data:string +lbl_8011EE6A = .data:0x8011EE6A; // type:object size:0xE scope:local data:string +lbl_8011EE78 = .data:0x8011EE78; // type:object size:0xE scope:local data:string +lbl_8011EE86 = .data:0x8011EE86; // type:object size:0xE scope:local data:string +lbl_8011EE94 = .data:0x8011EE94; // type:object size:0xE scope:local data:string +lbl_8011EEA2 = .data:0x8011EEA2; // type:object size:0xE scope:local data:string +lbl_8011EEB0 = .data:0x8011EEB0; // type:object size:0xE scope:local data:string +lbl_8011EEBE = .data:0x8011EEBE; // type:object size:0xE scope:local data:string +lbl_8011EECC = .data:0x8011EECC; // type:object size:0xE scope:local data:string +lbl_8011EEDA = .data:0x8011EEDA; // type:object size:0xE scope:local data:string +lbl_8011EEE8 = .data:0x8011EEE8; // type:object size:0xE scope:local data:string +lbl_8011EEF6 = .data:0x8011EEF6; // type:object size:0xE scope:local data:string +lbl_8011EF04 = .data:0x8011EF04; // type:object size:0xE scope:local data:string +lbl_8011EF12 = .data:0x8011EF12; // type:object size:0xE scope:local data:string +lbl_8011EF20 = .data:0x8011EF20; // type:object size:0xE scope:local data:string +lbl_8011EF2E = .data:0x8011EF2E; // type:object size:0xE scope:local data:string +lbl_8011EF3C = .data:0x8011EF3C; // type:object size:0xE scope:local data:string +lbl_8011EF4A = .data:0x8011EF4A; // type:object size:0xE scope:local data:string +lbl_8011EF58 = .data:0x8011EF58; // type:object size:0xE scope:local data:string +lbl_8011EF66 = .data:0x8011EF66; // type:object size:0xE scope:local data:string +lbl_8011EF74 = .data:0x8011EF74; // type:object size:0xE scope:local data:string +lbl_8011EF82 = .data:0x8011EF82; // type:object size:0xE scope:local data:string +lbl_8011EF90 = .data:0x8011EF90; // type:object size:0xE scope:local data:string +lbl_8011EF9E = .data:0x8011EF9E; // type:object size:0xE scope:local data:string +lbl_8011EFAC = .data:0x8011EFAC; // type:object size:0xE scope:local data:string +lbl_8011EFBA = .data:0x8011EFBA; // type:object size:0xE scope:local data:string +lbl_8011EFC8 = .data:0x8011EFC8; // type:object size:0xE scope:local data:string +lbl_8011EFD6 = .data:0x8011EFD6; // type:object size:0xE scope:local data:string +lbl_8011EFE4 = .data:0x8011EFE4; // type:object size:0xE scope:local data:string +lbl_8011EFF2 = .data:0x8011EFF2; // type:object size:0xE scope:local data:string +lbl_8011F000 = .data:0x8011F000; // type:object size:0xE scope:local data:string +lbl_8011F00E = .data:0x8011F00E; // type:object size:0xE scope:local data:string +lbl_8011F01C = .data:0x8011F01C; // type:object size:0xE scope:local data:string +lbl_8011F02A = .data:0x8011F02A; // type:object size:0xE scope:local data:string +lbl_8011F038 = .data:0x8011F038; // type:object size:0xE scope:local data:string +lbl_8011F046 = .data:0x8011F046; // type:object size:0xE scope:local data:string +lbl_8011F054 = .data:0x8011F054; // type:object size:0xE scope:local data:string +lbl_8011F062 = .data:0x8011F062; // type:object size:0xE scope:local data:string +lbl_8011F070 = .data:0x8011F070; // type:object size:0xE scope:local data:string +lbl_8011F07E = .data:0x8011F07E; // type:object size:0xE scope:local data:string +lbl_8011F08C = .data:0x8011F08C; // type:object size:0xE scope:local data:string +lbl_8011F09A = .data:0x8011F09A; // type:object size:0xF scope:local data:string +lbl_8011F0A9 = .data:0x8011F0A9; // type:object size:0x13 scope:local data:string +lbl_8011F0BC = .data:0x8011F0BC; // type:object size:0x13 scope:local data:string +lbl_8011F0CF = .data:0x8011F0CF; // type:object size:0x12 scope:local data:string +lbl_8011F0E1 = .data:0x8011F0E1; // type:object size:0xE scope:local data:string +lbl_8011F0EF = .data:0x8011F0EF; // type:object size:0x11 scope:local data:string +lbl_8011F100 = .data:0x8011F100; // type:object size:0x10 scope:local data:string +lbl_8011F110 = .data:0x8011F110; // type:object size:0x11 scope:local data:string +lbl_8011F121 = .data:0x8011F121; // type:object size:0xE scope:local data:string +lbl_8011F12F = .data:0x8011F12F; // type:object size:0x10 scope:local data:string +lbl_8011F13F = .data:0x8011F13F; // type:object size:0x11 scope:local data:string +lbl_8011F150 = .data:0x8011F150; // type:object size:0x11 scope:local data:string +lbl_8011F161 = .data:0x8011F161; // type:object size:0x11 scope:local data:string +lbl_8011F172 = .data:0x8011F172; // type:object size:0x10 scope:local data:string +lbl_8011F182 = .data:0x8011F182; // type:object size:0xF scope:local data:string +lbl_8011F191 = .data:0x8011F191; // type:object size:0x13 scope:local data:string +lbl_8011F1A4 = .data:0x8011F1A4; // type:object size:0x13 scope:local data:string +lbl_8011F1B7 = .data:0x8011F1B7; // type:object size:0x12 scope:local data:string +lbl_8011F1C9 = .data:0x8011F1C9; // type:object size:0x11 scope:local data:string +lbl_8011F1DA = .data:0x8011F1DA; // type:object size:0x10 scope:local data:string +lbl_8011F1EA = .data:0x8011F1EA; // type:object size:0xD scope:local data:string +lbl_8011F1F7 = .data:0x8011F1F7; // type:object size:0x11 scope:local data:string +lbl_8011F208 = .data:0x8011F208; // type:object size:0xF scope:local data:string +lbl_8011F217 = .data:0x8011F217; // type:object size:0xF scope:local data:string +lbl_8011F226 = .data:0x8011F226; // type:object size:0xF scope:local data:string +lbl_8011F235 = .data:0x8011F235; // type:object size:0xD scope:local data:string +lbl_8011F242 = .data:0x8011F242; // type:object size:0xD scope:local data:string +lbl_8011F24F = .data:0x8011F24F; // type:object size:0xD scope:local data:string +lbl_8011F25C = .data:0x8011F25C; // type:object size:0xD scope:local data:string +lbl_8011F269 = .data:0x8011F269; // type:object size:0xD scope:local data:string +lbl_8011F276 = .data:0x8011F276; // type:object size:0xD scope:local data:string +lbl_8011F283 = .data:0x8011F283; // type:object size:0xD scope:local data:string +lbl_8011F290 = .data:0x8011F290; // type:object size:0xD scope:local data:string +lbl_8011F29D = .data:0x8011F29D; // type:object size:0xD scope:local data:string +lbl_8011F2AA = .data:0x8011F2AA; // type:object size:0x11 scope:local data:string +lbl_8011F2BB = .data:0x8011F2BB; // type:object size:0x15 scope:local data:string +lbl_8011F2D0 = .data:0x8011F2D0; // type:object size:0x15 scope:local data:string +lbl_8011F2E5 = .data:0x8011F2E5; // type:object size:0x14 scope:local data:string +lbl_8011F2F9 = .data:0x8011F2F9; // type:object size:0xF scope:local data:string +lbl_8011F308 = .data:0x8011F308; // type:object size:0x13 scope:local data:string +lbl_8011F31B = .data:0x8011F31B; // type:object size:0x13 scope:local data:string +lbl_8011F32E = .data:0x8011F32E; // type:object size:0x12 scope:local data:string +lbl_8011F340 = .data:0x8011F340; // type:object size:0xD scope:local data:string +lbl_8011F34D = .data:0x8011F34D; // type:object size:0xF scope:local data:string +lbl_8011F35C = .data:0x8011F35C; // type:object size:0x13 scope:local data:string +lbl_8011F36F = .data:0x8011F36F; // type:object size:0x13 scope:local data:string +lbl_8011F382 = .data:0x8011F382; // type:object size:0x12 scope:local data:string +lbl_8011F394 = .data:0x8011F394; // type:object size:0x10 scope:local +DataDirStat = .data:0x8011F3A4; // type:object size:0x468 scope:local data:4byte +lbl_8011F80C = .data:0x8011F80C; // type:object size:0x1D scope:local data:string +lbl_8011F829 = .data:0x8011F829; // type:object size:0x1F scope:local data:string +lbl_8011F848 = .data:0x8011F848; // type:object size:0x3C scope:local lbl_8011F884 = .data:0x8011F884; // type:object size:0x1A data:string lbl_8011F89E = .data:0x8011F89E; // type:object size:0x122 lbl_8011F9C0 = .data:0x8011F9C0; // type:object size:0x20 @@ -4340,9 +4340,9 @@ lbl_80140280 = .data:0x80140280; // type:object size:0x19E0 lbl_80141C60 = .data:0x80141C60; // type:object size:0x10 lbl_80141C70 = .data:0x80141C70; // type:object size:0x20 lbl_80141C90 = .data:0x80141C90; // type:object size:0x800 -lbl_801424A0 = .bss:0x801424A0; // type:object size:0x10 -lbl_801424B0 = .bss:0x801424B0; // type:object size:0x30 -lbl_801424E0 = .bss:0x801424E0; // type:object size:0x2E00 data:4byte +padStatErrOld = .bss:0x801424A0; // type:object size:0x10 scope:local +rumbleData = .bss:0x801424B0; // type:object size:0x20 scope:local +ReadDataStat = .bss:0x801424E0; // type:object size:0x2E00 scope:local data:4byte lbl_801452E0 = .bss:0x801452E0; // type:object size:0x400 lbl_801456E0 = .bss:0x801456E0; // type:object size:0x40 lbl_80145720 = .bss:0x80145720; // type:object size:0x18 @@ -4603,13 +4603,13 @@ lbl_801D2DF0 = .bss:0x801D2DF0; // type:object size:0x10 data:4byte lbl_801D2E00 = .bss:0x801D2E00; // type:object size:0x178 data:2byte lbl_801D2F78 = .bss:0x801D2F78; // type:object size:0xE8 data:4byte lbl_801D3060 = .bss:0x801D3060; // type:object size:0x60 data:4byte -lbl_801D30C0 = .sdata:0x801D30C0; // type:object size:0x5 data:string -lbl_801D30C5 = .sdata:0x801D30C5; // type:object size:0x7 -lbl_801D30CC = .sdata:0x801D30CC; // type:object size:0x4 data:4byte -lbl_801D30D0 = .sdata:0x801D30D0; // type:object size:0x6 data:string -lbl_801D30D6 = .sdata:0x801D30D6; // type:object size:0x2 data:string -lbl_801D30D8 = .sdata:0x801D30D8; // type:object size:0x7 data:string -lbl_801D30DF = .sdata:0x801D30DF; // type:object size:0x9 +lbl_801D30C0 = .sdata:0x801D30C0; // type:object size:0x5 scope:local data:string +lbl_801D30C5 = .sdata:0x801D30C5; // type:object size:0x7 scope:local +rnd_seed = .sdata:0x801D30CC; // type:object size:0x4 data:4byte +lbl_801D30D0 = .sdata:0x801D30D0; // type:object size:0x6 scope:local data:string +lbl_801D30D6 = .sdata:0x801D30D6; // type:object size:0x2 scope:local data:string +lbl_801D30D8 = .sdata:0x801D30D8; // type:object size:0x7 scope:local data:string +lbl_801D30DF = .sdata:0x801D30DF; // type:object size:0x9 scope:local lbl_801D30E8 = .sdata:0x801D30E8; // type:object size:0x4 data:4byte lbl_801D30EC = .sdata:0x801D30EC; // type:object size:0x7 data:string lbl_801D30F3 = .sdata:0x801D30F3; // type:object size:0xD @@ -4882,179 +4882,179 @@ lbl_801D3688 = .sdata:0x801D3688; // type:object size:0x8 lbl_801D3690 = .sdata:0x801D3690; // type:object size:0x8 lbl_801D3698 = .sdata:0x801D3698; // type:object size:0x8 data:2byte lbl_801D36A0 = .sdata:0x801D36A0; // type:object size:0x1 data:byte -lbl_801D36C0 = .sbss:0x801D36C0; // type:object size:0x4 data:4byte -lbl_801D36C4 = .sbss:0x801D36C4; // type:object size:0x4 data:4byte -lbl_801D36C8 = .sbss:0x801D36C8; // type:object size:0x4 -lbl_801D36CC = .sbss:0x801D36CC; // type:object size:0x4 -lbl_801D36D0 = .sbss:0x801D36D0; // type:object size:0x4 -lbl_801D36D4 = .sbss:0x801D36D4; // type:object size:0x4 -lbl_801D36D8 = .sbss:0x801D36D8; // type:object size:0x4 -lbl_801D36DC = .sbss:0x801D36DC; // type:object size:0x4 -lbl_801D36E0 = .sbss:0x801D36E0; // type:object size:0x4 -lbl_801D36E4 = .sbss:0x801D36E4; // type:object size:0x4 -lbl_801D36E8 = .sbss:0x801D36E8; // type:object size:0x4 -lbl_801D36EC = .sbss:0x801D36EC; // type:object size:0x4 -lbl_801D36F0 = .sbss:0x801D36F0; // type:object size:0x4 -lbl_801D36F4 = .sbss:0x801D36F4; // type:object size:0x4 -lbl_801D36F8 = .sbss:0x801D36F8; // type:object size:0x4 -lbl_801D36FC = .sbss:0x801D36FC; // type:object size:0x4 -lbl_801D3700 = .sbss:0x801D3700; // type:object size:0x4 -lbl_801D3704 = .sbss:0x801D3704; // type:object size:0x4 -lbl_801D3708 = .sbss:0x801D3708; // type:object size:0x4 -lbl_801D370C = .sbss:0x801D370C; // type:object size:0x4 -lbl_801D3710 = .sbss:0x801D3710; // type:object size:0x4 -lbl_801D3714 = .sbss:0x801D3714; // type:object size:0x4 data:4byte -lbl_801D3718 = .sbss:0x801D3718; // type:object size:0x4 data:4byte -lbl_801D371C = .sbss:0x801D371C; // type:object size:0x4 data:4byte -lbl_801D3720 = .sbss:0x801D3720; // type:object size:0x4 -lbl_801D3724 = .sbss:0x801D3724; // type:object size:0x4 -lbl_801D3728 = .sbss:0x801D3728; // type:object size:0x4 -lbl_801D372C = .sbss:0x801D372C; // type:object size:0x4 -lbl_801D3730 = .sbss:0x801D3730; // type:object size:0x4 -lbl_801D3734 = .sbss:0x801D3734; // type:object size:0x4 -lbl_801D3738 = .sbss:0x801D3738; // type:object size:0x4 -lbl_801D373C = .sbss:0x801D373C; // type:object size:0x4 -lbl_801D3740 = .sbss:0x801D3740; // type:object size:0x4 -lbl_801D3744 = .sbss:0x801D3744; // type:object size:0x4 -lbl_801D3748 = .sbss:0x801D3748; // type:object size:0x4 -lbl_801D374C = .sbss:0x801D374C; // type:object size:0x8 -lbl_801D3754 = .sbss:0x801D3754; // type:object size:0x8 -lbl_801D375C = .sbss:0x801D375C; // type:object size:0x8 -lbl_801D3764 = .sbss:0x801D3764; // type:object size:0x4 -lbl_801D3768 = .sbss:0x801D3768; // type:object size:0x4 -lbl_801D376C = .sbss:0x801D376C; // type:object size:0x4 -lbl_801D3770 = .sbss:0x801D3770; // type:object size:0x4 -lbl_801D3774 = .sbss:0x801D3774; // type:object size:0x4 -lbl_801D3778 = .sbss:0x801D3778; // type:object size:0x4 -lbl_801D377C = .sbss:0x801D377C; // type:object size:0x4 -lbl_801D3780 = .sbss:0x801D3780; // type:object size:0x4 -lbl_801D3784 = .sbss:0x801D3784; // type:object size:0x4 -lbl_801D3788 = .sbss:0x801D3788; // type:object size:0x8 -lbl_801D3790 = .sbss:0x801D3790; // type:object size:0x8 data:2byte -lbl_801D3798 = .sbss:0x801D3798; // type:object size:0x8 -lbl_801D37A0 = .sbss:0x801D37A0; // type:object size:0x4 data:4byte -lbl_801D37A4 = .sbss:0x801D37A4; // type:object size:0x4 data:4byte -lbl_801D37A8 = .sbss:0x801D37A8; // type:object size:0x4 data:4byte -lbl_801D37AC = .sbss:0x801D37AC; // type:object size:0x4 data:4byte -lbl_801D37B0 = .sbss:0x801D37B0; // type:object size:0x8 data:4byte -lbl_801D37B8 = .sbss:0x801D37B8; // type:object size:0x4 data:4byte -lbl_801D37BC = .sbss:0x801D37BC; // type:object size:0x4 data:4byte -lbl_801D37C0 = .sbss:0x801D37C0; // type:object size:0x4 data:float -lbl_801D37C4 = .sbss:0x801D37C4; // type:object size:0x4 data:4byte -lbl_801D37C8 = .sbss:0x801D37C8; // type:object size:0x4 data:4byte -lbl_801D37CC = .sbss:0x801D37CC; // type:object size:0x4 data:4byte -lbl_801D37D0 = .sbss:0x801D37D0; // type:object size:0x4 data:4byte -lbl_801D37D4 = .sbss:0x801D37D4; // type:object size:0x4 data:4byte -lbl_801D37D8 = .sbss:0x801D37D8; // type:object size:0x4 data:4byte -lbl_801D37DC = .sbss:0x801D37DC; // type:object size:0x4 data:4byte -lbl_801D37E0 = .sbss:0x801D37E0; // type:object size:0x8 data:4byte -lbl_801D37E8 = .sbss:0x801D37E8; // type:object size:0x4 data:4byte -lbl_801D37EC = .sbss:0x801D37EC; // type:object size:0x2 data:2byte -lbl_801D37EE = .sbss:0x801D37EE; // type:object size:0x2 data:2byte -lbl_801D37F0 = .sbss:0x801D37F0; // type:object size:0x8 data:4byte -lbl_801D37F8 = .sbss:0x801D37F8; // type:object size:0x4 data:4byte -lbl_801D37FC = .sbss:0x801D37FC; // type:object size:0x2 data:2byte -lbl_801D3800 = .sbss:0x801D3800; // type:object size:0x4 data:4byte -lbl_801D3804 = .sbss:0x801D3804; // type:object size:0x4 data:4byte -lbl_801D3808 = .sbss:0x801D3808; // type:object size:0x4 data:4byte -lbl_801D380C = .sbss:0x801D380C; // type:object size:0x2 data:2byte -lbl_801D380E = .sbss:0x801D380E; // type:object size:0x2 data:2byte -lbl_801D3810 = .sbss:0x801D3810; // type:object size:0x8 data:2byte -lbl_801D3818 = .sbss:0x801D3818; // type:object size:0x4 data:4byte -lbl_801D381C = .sbss:0x801D381C; // type:object size:0x4 data:4byte -lbl_801D3820 = .sbss:0x801D3820; // type:object size:0x4 data:4byte -lbl_801D3824 = .sbss:0x801D3824; // type:object size:0x4 data:4byte -lbl_801D3828 = .sbss:0x801D3828; // type:object size:0x4 data:4byte -lbl_801D382C = .sbss:0x801D382C; // type:object size:0x4 data:4byte -lbl_801D3830 = .sbss:0x801D3830; // type:object size:0x4 data:4byte -lbl_801D3834 = .sbss:0x801D3834; // type:object size:0x4 data:4byte -lbl_801D3838 = .sbss:0x801D3838; // type:object size:0x4 data:4byte -lbl_801D383C = .sbss:0x801D383C; // type:object size:0x4 data:4byte -lbl_801D3840 = .sbss:0x801D3840; // type:object size:0x4 data:4byte -lbl_801D3844 = .sbss:0x801D3844; // type:object size:0x4 data:4byte -lbl_801D3848 = .sbss:0x801D3848; // type:object size:0x8 data:4byte -lbl_801D3850 = .sbss:0x801D3850; // type:object size:0x4 data:4byte -lbl_801D3854 = .sbss:0x801D3854; // type:object size:0x4 data:4byte -lbl_801D3858 = .sbss:0x801D3858; // type:object size:0x4 data:4byte -lbl_801D385C = .sbss:0x801D385C; // type:object size:0x4 data:4byte -lbl_801D3860 = .sbss:0x801D3860; // type:object size:0x2 data:2byte -lbl_801D3864 = .sbss:0x801D3864; // type:object size:0x4 data:4byte -lbl_801D3868 = .sbss:0x801D3868; // type:object size:0x4 data:4byte -lbl_801D386C = .sbss:0x801D386C; // type:object size:0x4 data:4byte -lbl_801D3870 = .sbss:0x801D3870; // type:object size:0x4 data:4byte -lbl_801D3874 = .sbss:0x801D3874; // type:object size:0x4 data:4byte -lbl_801D3878 = .sbss:0x801D3878; // type:object size:0x2 data:2byte -lbl_801D387A = .sbss:0x801D387A; // type:object size:0x2 data:2byte -lbl_801D387C = .sbss:0x801D387C; // type:object size:0x2 data:2byte -lbl_801D387E = .sbss:0x801D387E; // type:object size:0x2 data:2byte -lbl_801D3880 = .sbss:0x801D3880; // type:object size:0x4 data:4byte -lbl_801D3884 = .sbss:0x801D3884; // type:object size:0x2 data:2byte -lbl_801D3886 = .sbss:0x801D3886; // type:object size:0x2 data:2byte -lbl_801D3888 = .sbss:0x801D3888; // type:object size:0x4 data:4byte -lbl_801D388C = .sbss:0x801D388C; // type:object size:0x4 data:4byte -lbl_801D3890 = .sbss:0x801D3890; // type:object size:0x4 data:4byte -lbl_801D3894 = .sbss:0x801D3894; // type:object size:0x4 data:4byte -lbl_801D3898 = .sbss:0x801D3898; // type:object size:0x4 data:4byte -lbl_801D389C = .sbss:0x801D389C; // type:object size:0x4 data:4byte -lbl_801D38A0 = .sbss:0x801D38A0; // type:object size:0x4 data:4byte -lbl_801D38A4 = .sbss:0x801D38A4; // type:object size:0x4 data:4byte -lbl_801D38A8 = .sbss:0x801D38A8; // type:object size:0x2 data:2byte -lbl_801D38AC = .sbss:0x801D38AC; // type:object size:0x4 data:4byte -lbl_801D38B0 = .sbss:0x801D38B0; // type:object size:0x1 data:byte -lbl_801D38B1 = .sbss:0x801D38B1; // type:object size:0x1 data:byte -lbl_801D38B2 = .sbss:0x801D38B2; // type:object size:0x1 data:byte -lbl_801D38B3 = .sbss:0x801D38B3; // type:object size:0x1 data:byte -lbl_801D38B4 = .sbss:0x801D38B4; // type:object size:0x2 data:2byte -lbl_801D38B6 = .sbss:0x801D38B6; // type:object size:0x2 data:2byte -lbl_801D38B8 = .sbss:0x801D38B8; // type:object size:0x2 data:2byte -lbl_801D38BC = .sbss:0x801D38BC; // type:object size:0x4 data:4byte -lbl_801D38C0 = .sbss:0x801D38C0; // type:object size:0x2 data:2byte -lbl_801D38C2 = .sbss:0x801D38C2; // type:object size:0x2 data:2byte -lbl_801D38C4 = .sbss:0x801D38C4; // type:object size:0x2 data:2byte -lbl_801D38C8 = .sbss:0x801D38C8; // type:object size:0x4 data:4byte -lbl_801D38CC = .sbss:0x801D38CC; // type:object size:0x2 data:2byte -lbl_801D38CE = .sbss:0x801D38CE; // type:object size:0x2 data:2byte -lbl_801D38D0 = .sbss:0x801D38D0; // type:object size:0x4 data:4byte -lbl_801D38D4 = .sbss:0x801D38D4; // type:object size:0x4 data:4byte -lbl_801D38D8 = .sbss:0x801D38D8; // type:object size:0x4 data:4byte -lbl_801D38DC = .sbss:0x801D38DC; // type:object size:0x4 data:4byte -lbl_801D38E0 = .sbss:0x801D38E0; // type:object size:0x4 data:4byte -lbl_801D38E4 = .sbss:0x801D38E4; // type:object size:0x1 data:byte -lbl_801D38E8 = .sbss:0x801D38E8; // type:object size:0x4 data:4byte -lbl_801D38EC = .sbss:0x801D38EC; // type:object size:0x2 data:2byte -lbl_801D38F0 = .sbss:0x801D38F0; // type:object size:0x4 data:4byte -lbl_801D38F4 = .sbss:0x801D38F4; // type:object size:0x2 data:2byte -lbl_801D38F6 = .sbss:0x801D38F6; // type:object size:0x2 data:2byte -lbl_801D38F8 = .sbss:0x801D38F8; // type:object size:0x2 data:2byte -lbl_801D38FC = .sbss:0x801D38FC; // type:object size:0x4 data:4byte -lbl_801D3900 = .sbss:0x801D3900; // type:object size:0x2 data:2byte -lbl_801D3902 = .sbss:0x801D3902; // type:object size:0x2 data:2byte -lbl_801D3904 = .sbss:0x801D3904; // type:object size:0x2 data:2byte -lbl_801D3908 = .sbss:0x801D3908; // type:object size:0x4 data:4byte -lbl_801D390C = .sbss:0x801D390C; // type:object size:0x4 data:4byte -lbl_801D3910 = .sbss:0x801D3910; // type:object size:0x2 data:2byte -lbl_801D3914 = .sbss:0x801D3914; // type:object size:0x4 data:4byte -lbl_801D3918 = .sbss:0x801D3918; // type:object size:0x2 data:2byte -lbl_801D391A = .sbss:0x801D391A; // type:object size:0x1 data:byte -lbl_801D391B = .sbss:0x801D391B; // type:object size:0x1 data:byte -lbl_801D391C = .sbss:0x801D391C; // type:object size:0x1 data:byte -lbl_801D391D = .sbss:0x801D391D; // type:object size:0x1 data:byte -lbl_801D3920 = .sbss:0x801D3920; // type:object size:0x8 data:4byte -lbl_801D3928 = .sbss:0x801D3928; // type:object size:0x1 data:byte -lbl_801D392A = .sbss:0x801D392A; // type:object size:0x2 data:2byte -lbl_801D392C = .sbss:0x801D392C; // type:object size:0x4 data:4byte -lbl_801D3930 = .sbss:0x801D3930; // type:object size:0x4 -lbl_801D3934 = .sbss:0x801D3934; // type:object size:0x4 -lbl_801D3938 = .sbss:0x801D3938; // type:object size:0x4 -lbl_801D393C = .sbss:0x801D393C; // type:object size:0x4 -lbl_801D3940 = .sbss:0x801D3940; // type:object size:0x4 -lbl_801D3944 = .sbss:0x801D3944; // type:object size:0x4 -lbl_801D3948 = .sbss:0x801D3948; // type:object size:0x4 -lbl_801D394C = .sbss:0x801D394C; // type:object size:0x4 -lbl_801D3950 = .sbss:0x801D3950; // type:object size:0x4 -lbl_801D3954 = .sbss:0x801D3954; // type:object size:0x4 -lbl_801D3958 = .sbss:0x801D3958; // type:object size:0x4 -lbl_801D395C = .sbss:0x801D395C; // type:object size:0x4 +SystemInitF = .sbss:0x801D36C0; // type:object size:0x4 data:4byte +HuDvdErrWait = .sbss:0x801D36C4; // type:object size:0x4 data:4byte +fi_req = .sbss:0x801D36C8; // type:object size:0x4 scope:local +rf_req = .sbss:0x801D36CC; // type:object size:0x4 scope:local +pe_req = .sbss:0x801D36D0; // type:object size:0x4 scope:local +vi_req = .sbss:0x801D36D4; // type:object size:0x4 scope:local +io_req = .sbss:0x801D36D8; // type:object size:0x4 scope:local +dsp_req = .sbss:0x801D36DC; // type:object size:0x4 scope:local +cpu_wr_req = .sbss:0x801D36E0; // type:object size:0x4 scope:local +cpu_rd_req = .sbss:0x801D36E4; // type:object size:0x4 scope:local +tc_req = .sbss:0x801D36E8; // type:object size:0x4 scope:local +cp_req = .sbss:0x801D36EC; // type:object size:0x4 scope:local +total_copy_clks = .sbss:0x801D36F0; // type:object size:0x4 scope:local +clr_pixels_in = .sbss:0x801D36F4; // type:object size:0x4 scope:local +bot_pixels_out = .sbss:0x801D36F8; // type:object size:0x4 scope:local +bot_pixels_in = .sbss:0x801D36FC; // type:object size:0x4 scope:local +top_pixels_out = .sbss:0x801D3700; // type:object size:0x4 scope:local +top_pixels_in = .sbss:0x801D3704; // type:object size:0x4 scope:local +vstall = .sbss:0x801D3708; // type:object size:0x4 scope:local +vmiss = .sbss:0x801D370C; // type:object size:0x4 scope:local +vcheck = .sbss:0x801D3710; // type:object size:0x4 scope:local +GlobalCounter = .sbss:0x801D3714; // type:object size:0x4 data:4byte +VCounter = .sbss:0x801D3718; // type:object size:0x4 data:4byte +RumbleBit = .sbss:0x801D371C; // type:object size:0x4 scope:local data:4byte +_PadErr = .sbss:0x801D3720; // type:object size:0x4 scope:local +_PadDStkRepOld = .sbss:0x801D3724; // type:object size:0x4 scope:local +_PadDStkRepCnt = .sbss:0x801D3728; // type:object size:0x4 scope:local +_PadDStkRep = .sbss:0x801D372C; // type:object size:0x4 scope:local +_PadDStk = .sbss:0x801D3730; // type:object size:0x4 scope:local +_PadTrigR = .sbss:0x801D3734; // type:object size:0x4 scope:local +_PadTrigL = .sbss:0x801D3738; // type:object size:0x4 scope:local +_PadSubStkY = .sbss:0x801D373C; // type:object size:0x4 scope:local +_PadSubStkX = .sbss:0x801D3740; // type:object size:0x4 scope:local +_PadStkY = .sbss:0x801D3744; // type:object size:0x4 scope:local +_PadStkX = .sbss:0x801D3748; // type:object size:0x4 scope:local +_PadRepCnt = .sbss:0x801D374C; // type:object size:0x8 scope:local +_PadBtnDown = .sbss:0x801D3754; // type:object size:0x8 +_PadBtn = .sbss:0x801D375C; // type:object size:0x8 +HuPadErr = .sbss:0x801D3764; // type:object size:0x4 +HuPadDStkRep = .sbss:0x801D3768; // type:object size:0x4 +HuPadDStk = .sbss:0x801D376C; // type:object size:0x4 +HuPadTrigR = .sbss:0x801D3770; // type:object size:0x4 +HuPadTrigL = .sbss:0x801D3774; // type:object size:0x4 +HuPadSubStkY = .sbss:0x801D3778; // type:object size:0x4 +HuPadSubStkX = .sbss:0x801D377C; // type:object size:0x4 +HuPadStkY = .sbss:0x801D3780; // type:object size:0x4 +HuPadStkX = .sbss:0x801D3784; // type:object size:0x4 +HuPadBtnRep = .sbss:0x801D3788; // type:object size:0x8 +HuPadBtnDown = .sbss:0x801D3790; // type:object size:0x8 data:2byte +HuPadBtn = .sbss:0x801D3798; // type:object size:0x8 +beforeDvdStatus = .sbss:0x801D37A0; // type:object size:0x4 scope:local data:4byte +CallBackStatus = .sbss:0x801D37A4; // type:object size:0x4 scope:local data:4byte +shortAccessSleep = .sbss:0x801D37A8; // type:object size:0x4 scope:local data:4byte +DataDirMax = .sbss:0x801D37AC; // type:object size:0x4 scope:local data:4byte +DirDataSize = .sbss:0x801D37B0; // type:object size:0x4 data:4byte +DemoStatEnable = .sbss:0x801D37B8; // type:object size:0x4 scope:local data:4byte +worstVcount = .sbss:0x801D37BC; // type:object size:0x4 data:4byte +minimumVcountf = .sbss:0x801D37C0; // type:object size:0x4 data:float +DemoCurrentBuffer = .sbss:0x801D37C4; // type:object size:0x4 data:4byte +DemoFrameBuffer2 = .sbss:0x801D37C8; // type:object size:0x4 data:4byte +DemoFrameBuffer1 = .sbss:0x801D37CC; // type:object size:0x4 data:4byte +DefaultFifoObj = .sbss:0x801D37D0; // type:object size:0x4 scope:local data:4byte +DefaultFifo = .sbss:0x801D37D4; // type:object size:0x4 scope:local data:4byte +currentHeapHandle = .sbss:0x801D37D8; // type:object size:0x4 data:4byte +RenderMode = .sbss:0x801D37DC; // type:object size:0x4 data:4byte +saftyFrameF = .sbss:0x801D37E0; // type:object size:0x8 data:4byte +strlinecnt = .sbss:0x801D37E8; // type:object size:0x4 data:4byte +empstrline = .sbss:0x801D37EC; // type:object size:0x2 data:2byte +fontcolor = .sbss:0x801D37EE; // type:object size:0x2 data:2byte +procfunc = .sbss:0x801D37F0; // type:object size:0x8 data:4byte +processcnt = .sbss:0x801D37F8; // type:object size:0x4 scope:local data:4byte +processcur = .sbss:0x801D37FC; // type:object size:0x2 scope:local data:2byte +processtop = .sbss:0x801D3800; // type:object size:0x4 scope:local data:4byte +HuSprPauseF = .sbss:0x801D3804; // type:object size:0x4 scope:local data:4byte +HuSprOrderNo = .sbss:0x801D3808; // type:object size:0x4 scope:local data:4byte +HuSprOrderNum = .sbss:0x801D380C; // type:object size:0x2 scope:local data:2byte +bmpCCIdx = .sbss:0x801D380E; // type:object size:0x2 scope:local data:2byte +MaterialTop = .sbss:0x801D3810; // type:object size:0x8 data:2byte +AttributeTop = .sbss:0x801D3818; // type:object size:0x4 data:4byte +ClusterTop = .sbss:0x801D381C; // type:object size:0x4 data:4byte +vtxtop = .sbss:0x801D3820; // type:object size:0x4 data:4byte +objtop = .sbss:0x801D3824; // type:object size:0x4 data:4byte +NSymIndex = .sbss:0x801D3828; // type:object size:0x4 data:4byte +DicStringTable = .sbss:0x801D382C; // type:object size:0x4 data:4byte +StringTable = .sbss:0x801D3830; // type:object size:0x4 data:4byte +fileptr = .sbss:0x801D3834; // type:object size:0x4 data:4byte +NormalDataTop = .sbss:0x801D3838; // type:object size:0x4 scope:local data:4byte +VertexDataTop = .sbss:0x801D383C; // type:object size:0x4 scope:local data:4byte +MotionModel = .sbss:0x801D3840; // type:object size:0x4 scope:local data:4byte +MotionOnly = .sbss:0x801D3844; // type:object size:0x4 scope:local data:4byte +CancelTRXF = .sbss:0x801D3848; // type:object size:0x8 scope:local data:4byte +TL32F = .sbss:0x801D3850; // type:object size:0x4 scope:local data:4byte +PGName = .sbss:0x801D3854; // type:object size:0x4 scope:local data:4byte +PGFinishF = .sbss:0x801D3858; // type:object size:0x4 scope:local data:4byte +polySize = .sbss:0x801D385C; // type:object size:0x4 scope:local data:4byte +curModelID = .sbss:0x801D3860; // type:object size:0x2 scope:local data:2byte +mallocNo = .sbss:0x801D3864; // type:object size:0x4 scope:local data:4byte +totalSize = .sbss:0x801D3868; // type:object size:0x4 scope:local data:4byte +DLTotalNum = .sbss:0x801D386C; // type:object size:0x4 scope:local data:4byte +faceNumBuf = .sbss:0x801D3870; // type:object size:0x4 scope:local data:4byte +faceCnt = .sbss:0x801D3874; // type:object size:0x4 scope:local data:4byte +quadCnt = .sbss:0x801D3878; // type:object size:0x2 scope:local data:2byte +triCnt = .sbss:0x801D387A; // type:object size:0x2 scope:local data:2byte +matChgCnt = .sbss:0x801D387C; // type:object size:0x2 scope:local data:2byte +DLFirstF = .sbss:0x801D387E; // type:object size:0x2 scope:local data:2byte +modelObjNum = .sbss:0x801D3880; // type:object size:0x4 data:4byte +modelMeshNum = .sbss:0x801D3884; // type:object size:0x2 data:2byte +totalTexCacheCnted = .sbss:0x801D3886; // type:object size:0x2 data:2byte +totalTexCacheCnt = .sbss:0x801D3888; // type:object size:0x4 data:4byte +totalTexCnted = .sbss:0x801D388C; // type:object size:0x4 data:4byte +totalTexCnt = .sbss:0x801D3890; // type:object size:0x4 data:4byte +totalMatCnted = .sbss:0x801D3894; // type:object size:0x4 data:4byte +totalMatCnt = .sbss:0x801D3898; // type:object size:0x4 data:4byte +totalPolyCnted = .sbss:0x801D389C; // type:object size:0x4 data:4byte +totalPolyCnt = .sbss:0x801D38A0; // type:object size:0x4 data:4byte +hookIdx = .sbss:0x801D38A4; // type:object size:0x4 scope:local data:4byte +kColorIdx = .sbss:0x801D38A8; // type:object size:0x2 scope:local data:2byte +kColor = .sbss:0x801D38AC; // type:object size:0x4 scope:local data:4byte +projectionMapNo = .sbss:0x801D38B0; // type:object size:0x1 scope:local data:byte +toonMapNo = .sbss:0x801D38B1; // type:object size:0x1 scope:local data:byte +shadowMapNo = .sbss:0x801D38B2; // type:object size:0x1 scope:local data:byte +attachMotionF = .sbss:0x801D38B3; // type:object size:0x1 scope:local data:byte +vtxModeBak = .sbss:0x801D38B4; // type:object size:0x2 scope:local data:2byte +hiliteMapNo = .sbss:0x801D38B6; // type:object size:0x2 scope:local data:2byte +reflectionMapNo = .sbss:0x801D38B8; // type:object size:0x2 scope:local data:2byte +Hu3DObjInfoP = .sbss:0x801D38BC; // type:object size:0x4 scope:local data:4byte +DrawObjIdx = .sbss:0x801D38C0; // type:object size:0x2 scope:local data:2byte +lightBit = .sbss:0x801D38C2; // type:object size:0x2 scope:local data:2byte +drawCnt = .sbss:0x801D38C4; // type:object size:0x2 scope:local data:2byte +DrawData = .sbss:0x801D38C8; // type:object size:0x4 scope:local data:4byte +DLBufStartP = .sbss:0x801D38CC; // type:object size:0x2 scope:local data:2byte +DLBufP = .sbss:0x801D38CE; // type:object size:0x2 scope:local data:2byte +shadingBak = .sbss:0x801D38D0; // type:object size:0x4 scope:local data:4byte +polyTypeBak = .sbss:0x801D38D4; // type:object size:0x4 scope:local data:4byte +materialBak = .sbss:0x801D38D8; // type:object size:0x4 scope:local data:4byte +MTXIdx = .sbss:0x801D38DC; // type:object size:0x4 data:4byte +modelKillAllF = .sbss:0x801D38E0; // type:object size:0x4 data:4byte +NoSyncF = .sbss:0x801D38E4; // type:object size:0x1 scope:local data:byte +Hu3DCameraExistF = .sbss:0x801D38E8; // type:object size:0x4 data:4byte +Hu3DPauseF = .sbss:0x801D38EC; // type:object size:0x2 data:2byte +Hu3DMallocNo = .sbss:0x801D38F0; // type:object size:0x4 data:4byte +Hu3DCameraBit = .sbss:0x801D38F4; // type:object size:0x2 data:2byte +Hu3DCameraNo = .sbss:0x801D38F6; // type:object size:0x2 data:2byte +Hu3DProjectionNum = .sbss:0x801D38F8; // type:object size:0x2 data:2byte +shadowModelDrawF = .sbss:0x801D38FC; // type:object size:0x4 data:4byte +Hu3DShadowF = .sbss:0x801D3900; // type:object size:0x2 data:2byte +Hu3DShadowCamBit = .sbss:0x801D3902; // type:object size:0x2 data:2byte +toonAnim = .sbss:0x801D3904; // type:object size:0x2 data:2byte +BGColor = .sbss:0x801D3908; // type:object size:0x4 data:4byte +bitMapPtr = .sbss:0x801D390C; // type:object size:0x4 scope:local data:4byte +metf = .sbss:0x801D3910; // type:object size:0x2 scope:local data:2byte +tokenEndF = .sbss:0x801D3914; // type:object size:0x4 scope:local data:4byte +total_copy_clks = .sbss:0x801D3918; // type:object size:0x2 scope:local data:2byte +clr_pixels_in = .sbss:0x801D391A; // type:object size:0x1 scope:local data:byte +bot_pixels_out = .sbss:0x801D391B; // type:object size:0x1 scope:local data:byte +bot_pixels_in = .sbss:0x801D391C; // type:object size:0x1 scope:local data:byte +top_pixels_out = .sbss:0x801D391D; // type:object size:0x1 scope:local data:byte +top_pixels_in = .sbss:0x801D3920; // type:object size:0x8 scope:local data:4byte +fi_req = .sbss:0x801D3928; // type:object size:0x1 scope:local data:byte +rf_req = .sbss:0x801D392A; // type:object size:0x2 scope:local data:2byte +pe_req = .sbss:0x801D392C; // type:object size:0x4 scope:local data:4byte +vi_req = .sbss:0x801D3930; // type:object size:0x4 scope:local +io_req = .sbss:0x801D3934; // type:object size:0x4 scope:local +dsp_req = .sbss:0x801D3938; // type:object size:0x4 scope:local +cpu_wr_req = .sbss:0x801D393C; // type:object size:0x4 scope:local +cpu_rd_req = .sbss:0x801D3940; // type:object size:0x4 scope:local +tc_req = .sbss:0x801D3944; // type:object size:0x4 scope:local +cp_req = .sbss:0x801D3948; // type:object size:0x4 scope:local +vstall = .sbss:0x801D394C; // type:object size:0x4 scope:local +vmiss = .sbss:0x801D3950; // type:object size:0x4 scope:local +vcheck = .sbss:0x801D3954; // type:object size:0x4 scope:local +met1 = .sbss:0x801D3958; // type:object size:0x4 scope:local +met0 = .sbss:0x801D395C; // type:object size:0x4 scope:local lbl_801D3960 = .sbss:0x801D3960; // type:object size:0x4 lbl_801D3964 = .sbss:0x801D3964; // type:object size:0x4 lbl_801D3968 = .sbss:0x801D3968; // type:object size:0x4 @@ -5810,7 +5810,7 @@ lbl_801D4600 = .sbss:0x801D4600; // type:object size:0x4 data:4byte lbl_801D4604 = .sbss:0x801D4604; // type:object size:0x4 data:4byte lbl_801D4608 = .sbss:0x801D4608; // type:object size:0x4 data:4byte lbl_801D460C = .sbss:0x801D460C; // type:object size:0x1 data:byte -lbl_801D4620 = .sdata2:0x801D4620; // type:object size:0x8 data:double +lbl_801D4620 = .sdata2:0x801D4620; // type:object size:0x8 scope:local data:double lbl_801D4628 = .sdata2:0x801D4628; // type:object size:0x4 data:float lbl_801D462C = .sdata2:0x801D462C; // type:object size:0x4 data:float lbl_801D4630 = .sdata2:0x801D4630; // type:object size:0x8 data:double From 5b0b46bb6d5700851691696ede1cc951941c4776 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 25 Nov 2024 20:02:02 +0100 Subject: [PATCH 041/178] Did Japanese DOL till hsfmotion.c --- config/GMPE01_00/symbols.txt | 12 +- config/GMPE01_01/symbols.txt | 20 +- config/GMPJ01_00/config.yml | 40 ++- config/GMPJ01_00/splits.txt | 88 +++++ config/GMPJ01_00/symbols.txt | 622 ++++++++++++++++++----------------- include/game/hsfdraw.h | 9 + src/game/hsfdraw.c | 9 - 7 files changed, 458 insertions(+), 342 deletions(-) diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 2f4b3fe1..a6e13c9b 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -244,7 +244,7 @@ Hu3DDraw = .text:0x80014024; // type:function size:0x1A0 objCall = .text:0x800141C4; // type:function size:0xEC scope:local objMesh = .text:0x800142B0; // type:function size:0x86C scope:local ObjCullCheck = .text:0x80014B1C; // type:function size:0x4C0 -FaceDraw = .text:0x80014FDC; // type:function size:0x10DC scope:local +FaceDraw = .text:0x80014FDC; // type:function size:0x10DC SetTevStageNoTex = .text:0x800160B8; // type:function size:0x8E8 scope:local SetTevStageTex = .text:0x800169A0; // type:function size:0x2588 scope:local SetKColor = .text:0x80018F28; // type:function size:0x164 scope:local @@ -7711,11 +7711,5 @@ lbl_801D6BC4 = .sdata2:0x801D6BC4; // type:object size:0x4 data:float lbl_801D6BC8 = .sdata2:0x801D6BC8; // type:object size:0x4 data:float lbl_801D6BCC = .sdata2:0x801D6BCC; // type:object size:0x4 data:float lbl_801D6BD0 = .sdata2:0x801D6BD0; // type:object size:0x8 data:double -lbl_801D6BE0 = .sbss2:0x801D6BE0; // type:object size:0x1 data:byte -lbl_801D6BE1 = .sbss2:0x801D6BE1; // type:object size:0x1 data:byte -lbl_801D6BE2 = .sbss2:0x801D6BE2; // type:object size:0x1 data:byte -lbl_801D6BE3 = .sbss2:0x801D6BE3; // type:object size:0x1 data:byte -lbl_801D6BE4 = .sbss2:0x801D6BE4; // type:object size:0x1 data:byte -lbl_801D6BE5 = .sbss2:0x801D6BE5; // type:object size:0x1 data:byte -lbl_801D6BE6 = .sbss2:0x801D6BE6; // type:object size:0x1 data:byte -lbl_801D6BE7 = .sbss2:0x801D6BE7; // type:object size:0x1 data:byte +lbl_801D6BE0 = .sbss2:0x801D6BE0; // type:object size:0x4 scope:local data:byte +lbl_801D6BE4 = .sbss2:0x801D6BE4; // type:object size:0x4 scope:local data:byte diff --git a/config/GMPE01_01/symbols.txt b/config/GMPE01_01/symbols.txt index 090ccf56..b85b7174 100644 --- a/config/GMPE01_01/symbols.txt +++ b/config/GMPE01_01/symbols.txt @@ -244,7 +244,7 @@ Hu3DDraw = .text:0x80014024; // type:function size:0x1A0 objCall = .text:0x800141C4; // type:function size:0xEC scope:local objMesh = .text:0x800142B0; // type:function size:0x86C scope:local ObjCullCheck = .text:0x80014B1C; // type:function size:0x4C0 -FaceDraw = .text:0x80014FDC; // type:function size:0x10DC scope:local +FaceDraw = .text:0x80014FDC; // type:function size:0x10DC SetTevStageNoTex = .text:0x800160B8; // type:function size:0x8E8 scope:local SetTevStageTex = .text:0x800169A0; // type:function size:0x2588 scope:local SetKColor = .text:0x80018F28; // type:function size:0x164 scope:local @@ -3588,7 +3588,7 @@ __init_cpp_exceptions_reference = .ctors:0x8011DCC0; // type:object size:0x4 sco _dtors = .dtors:0x8011DCE0; // type:label scope:global data:4byte __destroy_global_chain_reference = .dtors:0x8011DCE0; // type:object size:0x4 scope:global __fini_cpp_exceptions_reference = .dtors:0x8011DCE4; // type:object size:0x4 scope:global -lbl_8011DD00 = .rodata:0x8011DD00; // type:object size:0x10 data:4byte +lbl_8011DD00 = .rodata:0x8011DD00; // type:object size:0x10 data:4byte scope:local lbl_8011DD10 = .rodata:0x8011DD10; // type:object size:0x10 data:4byte lbl_8011DD20 = .rodata:0x8011DD20; // type:object size:0xC data:4byte lbl_8011DD30 = .rodata:0x8011DD30; // type:object size:0x20 data:byte @@ -3834,10 +3834,10 @@ lbl_8011FCA4 = .data:0x8011FCA4; // type:object size:0x1A data:string lbl_8011FCBE = .data:0x8011FCBE; // type:object size:0x122 lbl_8011FDE0 = .data:0x8011FDE0; // type:object size:0x20 ank8x8_4b = .data:0x8011FE00; // type:object size:0x2000 align:32 -lbl_80121E00 = .data:0x80121E00; // type:object size:0x150 +lbl_80121E00 = .data:0x80121E00; // type:object size:0x150 scope:local HeapSizeTbl = .data:0x80121F50; // type:object size:0x78 scope:local -lbl_80121FC8 = .data:0x80121FC8; // type:object size:0x50 -lbl_80122018 = .data:0x80122018; // type:object size:0x128 +lbl_80121FC8 = .data:0x80121FC8; // type:object size:0x50 scope:local +lbl_80122018 = .data:0x80122018; // type:object size:0x128 scope:local fcoltbl = .data:0x80122140; // type:object size:0x40 scope:local align:32 lbl_80122180 = .data:0x80122180; // type:object size:0x1F data:string lbl_8012219F = .data:0x8012219F; // type:object size:0x31 @@ -7710,11 +7710,5 @@ lbl_801D6BC4 = .sdata2:0x801D6BC4; // type:object size:0x4 data:float lbl_801D6BC8 = .sdata2:0x801D6BC8; // type:object size:0x4 data:float lbl_801D6BCC = .sdata2:0x801D6BCC; // type:object size:0x4 data:float lbl_801D6BD0 = .sdata2:0x801D6BD0; // type:object size:0x8 data:double -lbl_801D6BE0 = .sbss2:0x801D6BE0; // type:object size:0x1 data:byte -lbl_801D6BE1 = .sbss2:0x801D6BE1; // type:object size:0x1 data:byte -lbl_801D6BE2 = .sbss2:0x801D6BE2; // type:object size:0x1 data:byte -lbl_801D6BE3 = .sbss2:0x801D6BE3; // type:object size:0x1 data:byte -lbl_801D6BE4 = .sbss2:0x801D6BE4; // type:object size:0x1 data:byte -lbl_801D6BE5 = .sbss2:0x801D6BE5; // type:object size:0x1 data:byte -lbl_801D6BE6 = .sbss2:0x801D6BE6; // type:object size:0x1 data:byte -lbl_801D6BE7 = .sbss2:0x801D6BE7; // type:object size:0x1 data:byte +lbl_801D6BE0 = .sbss2:0x801D6BE0; // type:object size:0x4 scope:local data:byte +lbl_801D6BE4 = .sbss2:0x801D6BE4; // type:object size:0x4 scope:local data:byte diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index a8559c88..e484b407 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -3,7 +3,7 @@ object: sys/main.dol hash: abe951fa239e7cb5de67e1ac091cfbc14010d6e0 symbols: config/GMPJ01_00/symbols.txt splits: config/GMPJ01_00/splits.txt -quick_analysis: false # Faster re-runs after initial analysis +quick_analysis: true # Faster re-runs after initial analysis mw_comment_version: 10 # GC 2.6 linker force_active: [__register_global_object, _kerent] @@ -507,3 +507,41 @@ modules: symbols: config/GMPJ01_00/rels/m401Dll/symbols.txt splits: config/GMPJ01_00/rels/m401Dll/splits.txt links: [_minigameDll] + +extract: +- symbol: ank8x8_4b + binary: ank8x8_4b.bin + header: ank8x8_4b.inc +- symbol: refMapData0 + binary: refMapData0.anm + header: refMapData0.inc +- symbol: refMapData1 + binary: refMapData1.anm + header: refMapData1.inc +- symbol: refMapData2 + binary: refMapData2.anm + header: refMapData2.inc +- symbol: refMapData3 + binary: refMapData3.anm + header: refMapData3.inc +- symbol: refMapData4 + binary: refMapData4.anm + header: refMapData4.inc +- symbol: toonMapData + binary: toonMapData.anm + header: toonMapData.inc +- symbol: toonMapData2 + binary: toonMapData2.anm + header: toonMapData2.inc +- symbol: hiliteData + binary: hiliteData.anm + header: hiliteData.inc +- symbol: hiliteData2 + binary: hiliteData2.anm + header: hiliteData2.inc +- symbol: hiliteData3 + binary: hiliteData3.anm + header: hiliteData3.inc +- symbol: hiliteData4 + binary: hiliteData4.anm + header: hiliteData4.inc diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index f7c399a1..7e02c8f8 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -38,3 +38,91 @@ game/data.c: .bss start:0x801424E0 end:0x801452E0 .sdata start:0x801D30D8 end:0x801D30E8 .sbss start:0x801D37A8 end:0x801D37B8 + +game/decode.c: + .text start:0x80009400 end:0x80009AFC + .data start:0x8011F9C0 end:0x8011F9E0 + .bss start:0x801452E0 end:0x801456E0 + +game/font.c: + .data start:0x8011F9E0 end:0x801219E0 + +game/init.c: + .text start:0x80009AFC end:0x8000A464 + .data start:0x801219E0 end:0x80121B30 + .bss start:0x801456E0 end:0x80145720 + .sdata start:0x801D30E8 end:0x801D3100 + .sbss start:0x801D37B8 end:0x801D37E8 + .sdata2 start:0x801D4628 end:0x801D4638 + +game/jmp.c: + .text start:0x8000A464 end:0x8000A558 + +game/malloc.c: + .text start:0x8000A558 end:0x8000A938 + .data start:0x80121B30 end:0x80121BA8 + .bss start:0x80145720 end:0x80145738 + +game/memory.c: + .text start:0x8000A938 end:0x8000AEF0 + .data start:0x80121BA8 end:0x80121D20 + +game/printfunc.c: + .text start:0x8000AEF0 end:0x8000C4A4 + .data start:0x80121D20 end:0x80121D60 + .bss start:0x80145738 end:0x8014C038 + .sbss start:0x801D37E8 end:0x801D37F8 + .sdata2 start:0x801D4638 end:0x801D4688 + +game/process.c: + .text start:0x8000C4A4 end:0x8000D348 + .data start:0x80121D60 end:0x80121DB0 + .bss start:0x8014C038 end:0x8014C130 + .sbss start:0x801D37F8 end:0x801D3808 + +game/sprman.c: + .text start:0x8000D348 end:0x8000F6A0 + .rodata start:0x8011D8E0 end:0x8011D8F0 + .data start:0x80121DB0 end:0x80121ED0 + .bss start:0x8014C130 end:0x8015C330 + .sdata start:0x801D3100 end:0x801D3110 + .sbss start:0x801D3808 end:0x801D3810 + .sdata2 start:0x801D4688 end:0x801D46B0 + +game/sprput.c: + .text start:0x8000F6A0 end:0x80010B30 + .rodata start:0x8011D8F0 end:0x8011D900 + .data start:0x80121ED0 end:0x80121F00 + .bss start:0x8015C330 end:0x8015C360 + .sbss start:0x801D3810 end:0x801D3818 + .sdata2 start:0x801D46B0 end:0x801D46E8 + +game/hsfload.c: + .text start:0x80010B30 end:0x80014018 + .data start:0x80121F00 end:0x80121F70 + .bss start:0x8015C360 end:0x8015C920 + .sbss start:0x801D3818 end:0x801D3850 + +game/hsfdraw.c: + .text start:0x80014018 end:0x8001F9AC + .rodata start:0x8011D900 end:0x8011D910 + .data start:0x80121F70 end:0x80122180 + .bss start:0x8015C920 end:0x80167460 + .sdata start:0x801D3110 end:0x801D3128 + .sbss start:0x801D3850 end:0x801D38F0 + .sdata2 start:0x801D46E8 end:0x801D4770 + +game/hsfman.c: + .text start:0x8001F9AC end:0x800250E8 + .data start:0x80122180 end:0x8012D238 + .bss start:0x80167460 end:0x8018D070 + .sbss start:0x801D38F0 end:0x801D3920 + .sdata2 start:0x801D4770 end:0x801D47D0 + .sbss2 start:0x801D68A0 end:0x801D68A8 + +game/hsfmotion.c: + .text start:0x800250E8 end:0x80028B04 + .data start:0x8012D238 end:0x8012D418 + .bss start:0x8018D070 end:0x8018D870 + .sbss start:0x801D3920 end:0x801D3928 + .sdata2 start:0x801D47D0 end:0x801D4820 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index 77f9a6b2..cb430d79 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -245,7 +245,7 @@ Hu3DDraw = .text:0x80014024; // type:function size:0x1A0 objCall = .text:0x800141C4; // type:function size:0xEC scope:local objMesh = .text:0x800142B0; // type:function size:0x86C scope:local ObjCullCheck = .text:0x80014B1C; // type:function size:0x4C0 -FaceDraw = .text:0x80014FDC; // type:function size:0x10DC scope:local +FaceDraw = .text:0x80014FDC; // type:function size:0x10DC SetTevStageNoTex = .text:0x800160B8; // type:function size:0x8E8 scope:local SetTevStageTex = .text:0x800169A0; // type:function size:0x2588 scope:local SetKColor = .text:0x80018F28; // type:function size:0x164 scope:local @@ -3589,9 +3589,9 @@ __init_cpp_exceptions_reference = .ctors:0x8011D8A0; // type:object size:0x4 sco _dtors = .dtors:0x8011D8C0; // type:label scope:global data:4byte __destroy_global_chain_reference = .dtors:0x8011D8C0; // type:object size:0x4 scope:global __fini_cpp_exceptions_reference = .dtors:0x8011D8C4; // type:object size:0x4 scope:global -lbl_8011D8E0 = .rodata:0x8011D8E0; // type:object size:0x10 data:4byte -lbl_8011D8F0 = .rodata:0x8011D8F0; // type:object size:0x10 data:4byte -lbl_8011D900 = .rodata:0x8011D900; // type:object size:0x10 data:4byte +lbl_8011D8E0 = .rodata:0x8011D8E0; // type:object size:0x10 scope:local data:4byte +lbl_8011D8F0 = .rodata:0x8011D8F0; // type:object size:0x10 scope:local data:4byte +lbl_8011D900 = .rodata:0x8011D900; // type:object size:0x10 scope:local data:4byte lbl_8011D910 = .rodata:0x8011D910; // type:object size:0x20 data:byte lbl_8011D930 = .rodata:0x8011D930; // type:object size:0x10 data:4byte lbl_8011D940 = .rodata:0x8011D940; // type:object size:0x24 data:4byte @@ -3823,44 +3823,57 @@ lbl_8011F829 = .data:0x8011F829; // type:object size:0x1F scope:local data:strin lbl_8011F848 = .data:0x8011F848; // type:object size:0x3C scope:local lbl_8011F884 = .data:0x8011F884; // type:object size:0x1A data:string lbl_8011F89E = .data:0x8011F89E; // type:object size:0x122 -lbl_8011F9C0 = .data:0x8011F9C0; // type:object size:0x20 -lbl_8011F9E0 = .data:0x8011F9E0; // type:object size:0x2000 -lbl_801219E0 = .data:0x801219E0; // type:object size:0x150 -lbl_80121B30 = .data:0x80121B30; // type:object size:0x78 -lbl_80121BA8 = .data:0x80121BA8; // type:object size:0x50 -lbl_80121BF8 = .data:0x80121BF8; // type:object size:0x128 -lbl_80121D20 = .data:0x80121D20; // type:object size:0x40 -lbl_80121D60 = .data:0x80121D60; // type:object size:0x1F data:string -lbl_80121D7F = .data:0x80121D7F; // type:object size:0x31 -lbl_80121DB0 = .data:0x80121DB0; // type:object size:0x12 -lbl_80121DC2 = .data:0x80121DC2; // type:object size:0x10E +lbl_8011F9C0 = .data:0x8011F9C0; // type:object size:0x20 scope:local +ank8x8_4b = .data:0x8011F9E0; // type:object size:0x2000 align:32 +lbl_801219E0 = .data:0x801219E0; // type:object size:0x150 scope:local +HeapSizeTbl = .data:0x80121B30; // type:object size:0x78 scope:local +lbl_80121BA8 = .data:0x80121BA8; // type:object size:0x50 scope:local +lbl_80121BF8 = .data:0x80121BF8; // type:object size:0x128 scope:local +fcoltbl = .data:0x80121D20; // type:object size:0x40 scope:local align:32 +lbl_80121D60 = .data:0x80121D60; // type:object size:0x1F scope:local data:string +lbl_80121D7F = .data:0x80121D7F; // type:object size:0x31 scope:local +lbl_80121DB0 = .data:0x80121DB0; // type:object size:0x12 scope:local +lbl_80121DC2 = .data:0x80121DC2; // type:object size:0x10E scope:local jumptable_80121ED0 = .data:0x80121ED0; // type:object size:0x2C scope:local jumptable_80121F00 = .data:0x80121F00; // type:object size:0x28 scope:local jumptable_80121F28 = .data:0x80121F28; // type:object size:0x2C scope:local -lbl_80121F54 = .data:0x80121F54; // type:object size:0x1C -lbl_80121F70 = .data:0x80121F70; // type:object size:0xC data:byte +lbl_80121F54 = .data:0x80121F54; // type:object size:0x1C scope:local +texMtxTbl = .data:0x80121F70; // type:object size:0xC data:byte jumptable_80121F7C = .data:0x80121F7C; // type:object size:0x28 scope:local -lbl_80121FA4 = .data:0x80121FA4; // type:object size:0x18 data:string +lbl_80121FA4 = .data:0x80121FA4; // type:object size:0x18 scope:local data:string jumptable_80121FBC = .data:0x80121FBC; // type:object size:0x28 scope:local jumptable_80121FE4 = .data:0x80121FE4; // type:object size:0x28 scope:local -lbl_8012200C = .data:0x8012200C; // type:object size:0x60 -lbl_8012206C = .data:0x8012206C; // type:object size:0x30 -lbl_8012209C = .data:0x8012209C; // type:object size:0x14 +refMtx = .data:0x8012200C; // type:object size:0x30 scope:local +kColorSelTbl = .data:0x8012203C; // type:object size:0x30 scope:local +kColorTbl = .data:0x8012206C; // type:object size:0x10 scope:local +kColorSelTbl2 = .data:0x8012207C; // type:object size:0x10 scope:local +kColorSelATbl = .data:0x8012208C; // type:object size:0x10 scope:local +lbl_8012209C = .data:0x8012209C; // type:object size:0x14 scope:local jumptable_801220B0 = .data:0x801220B0; // type:object size:0x30 scope:local jumptable_801220E0 = .data:0x801220E0; // type:object size:0x28 scope:local jumptable_80122108 = .data:0x80122108; // type:object size:0x28 scope:local -lbl_80122130 = .data:0x80122130; // type:object size:0x19 data:string -lbl_80122149 = .data:0x80122149; // type:object size:0xA data:string -lbl_80122153 = .data:0x80122153; // type:object size:0x2D -lbl_80122180 = .data:0x80122180; // type:object size:0xAFC0 -lbl_8012D140 = .data:0x8012D140; // type:object size:0x1B data:string -lbl_8012D15B = .data:0x8012D15B; // type:object size:0x16 data:string -lbl_8012D171 = .data:0x8012D171; // type:object size:0x21 data:string -lbl_8012D192 = .data:0x8012D192; // type:object size:0x26 -lbl_8012D1B8 = .data:0x8012D1B8; // type:object size:0x58 data:4byte -lbl_8012D210 = .data:0x8012D210; // type:object size:0x28 -lbl_8012D238 = .data:0x8012D238; // type:object size:0x1C data:string -lbl_8012D254 = .data:0x8012D254; // type:object size:0x1C +lbl_80122130 = .data:0x80122130; // type:object size:0x19 scope:local data:string +lbl_80122149 = .data:0x80122149; // type:object size:0xA scope:local data:string +lbl_80122153 = .data:0x80122153; // type:object size:0x2D scope:local +refMapData0 = .data:0x80122180; // type:object size:0x1240 align:32 noreloc +refMapData1 = .data:0x801233C0; // type:object size:0x1100 align:32 noreloc +refMapData2 = .data:0x801244C0; // type:object size:0x2080 align:32 noreloc +refMapData3 = .data:0x80126540; // type:object size:0x2080 align:32 noreloc +refMapData4 = .data:0x801285C0; // type:object size:0x2080 align:32 noreloc +toonMapData = .data:0x8012A640; // type:object size:0x880 align:32 noreloc +toonMapData2 = .data:0x8012AEC0; // type:object size:0x1080 align:32 noreloc +hiliteData = .data:0x8012BF40; // type:object size:0x480 align:32 noreloc +hiliteData2 = .data:0x8012C3C0; // type:object size:0x480 align:32 noreloc +hiliteData3 = .data:0x8012C840; // type:object size:0x480 align:32 noreloc +hiliteData4 = .data:0x8012CCC0; // type:object size:0x480 align:32 noreloc +lbl_8012D140 = .data:0x8012D140; // type:object size:0x1B scope:local data:string +lbl_8012D15B = .data:0x8012D15B; // type:object size:0x16 scope:local data:string +lbl_8012D171 = .data:0x8012D171; // type:object size:0x21 scope:local data:string +lbl_8012D192 = .data:0x8012D192; // type:object size:0x26 scope:local +defCamera = .data:0x8012D1B8; // type:object size:0x58 data:4byte +lbl_8012D210 = .data:0x8012D210; // type:object size:0x28 scope:local +lbl_8012D238 = .data:0x8012D238; // type:object size:0x1C scope:local data:string +lbl_8012D254 = .data:0x8012D254; // type:object size:0x1C scope:local jumptable_8012D270 = .data:0x8012D270; // type:object size:0x2C scope:local jumptable_8012D29C = .data:0x8012D29C; // type:object size:0x68 scope:local jumptable_8012D304 = .data:0x8012D304; // type:object size:0xF0 scope:local @@ -4008,7 +4021,7 @@ lbl_8012F98A = .data:0x8012F98A; // type:object size:0xF data:string lbl_8012F999 = .data:0x8012F999; // type:object size:0xF data:string lbl_8012F9A8 = .data:0x8012F9A8; // type:object size:0xF data:string lbl_8012F9B7 = .data:0x8012F9B7; // type:object size:0x11 -lbl_8012F9C8 = .data:0x8012F9C8; // type:object size:0x320 +_ovltbl = .data:0x8012F9C8; // type:object size:0x320 lbl_8012FCE8 = .data:0x8012FCE8; // type:object size:0x20 lbl_8012FD08 = .data:0x8012FD08; // type:object size:0xC lbl_8012FD14 = .data:0x8012FD14; // type:object size:0xC @@ -4272,11 +4285,11 @@ jumptable_8013D560 = .data:0x8013D560; // type:object size:0x68 scope:local jumptable_8013D5C8 = .data:0x8013D5C8; // type:object size:0x44 scope:local jumptable_8013D60C = .data:0x8013D60C; // type:object size:0x1C scope:local jumptable_8013D628 = .data:0x8013D628; // type:object size:0x54 scope:local -lbl_8013D680 = .data:0x8013D680; // type:object size:0x3C -lbl_8013D6BC = .data:0x8013D6BC; // type:object size:0x3C -lbl_8013D6F8 = .data:0x8013D6F8; // type:object size:0x3C -lbl_8013D734 = .data:0x8013D734; // type:object size:0x3C -lbl_8013D770 = .data:0x8013D770; // type:object size:0x40 +GXNtsc480IntDf = .data:0x8013D680; // type:object size:0x3C +GXNtsc480Prog = .data:0x8013D6BC; // type:object size:0x3C +GXMpal480IntDf = .data:0x8013D6F8; // type:object size:0x3C +GXPal528IntDf = .data:0x8013D734; // type:object size:0x3C +GXEurgb60Hz480IntDf = .data:0x8013D770; // type:object size:0x40 jumptable_8013D7B0 = .data:0x8013D7B0; // type:object size:0x1C scope:local jumptable_8013D7D0 = .data:0x8013D7D0; // type:object size:0xF4 scope:local jumptable_8013D8C4 = .data:0x8013D8C4; // type:object size:0xF4 scope:local @@ -4342,46 +4355,47 @@ lbl_80141C70 = .data:0x80141C70; // type:object size:0x20 lbl_80141C90 = .data:0x80141C90; // type:object size:0x800 padStatErrOld = .bss:0x801424A0; // type:object size:0x10 scope:local rumbleData = .bss:0x801424B0; // type:object size:0x20 scope:local -ReadDataStat = .bss:0x801424E0; // type:object size:0x2E00 scope:local data:4byte -lbl_801452E0 = .bss:0x801452E0; // type:object size:0x400 -lbl_801456E0 = .bss:0x801456E0; // type:object size:0x40 -lbl_80145720 = .bss:0x80145720; // type:object size:0x18 -lbl_80145738 = .bss:0x80145738; // type:object size:0x6800 -lbl_8014BF38 = .bss:0x8014BF38; // type:object size:0x100 data:byte -lbl_8014C038 = .bss:0x8014C038; // type:object size:0xF8 -lbl_8014C130 = .bss:0x8014C130; // type:object size:0x9600 -lbl_80155730 = .bss:0x80155730; // type:object size:0x5400 data:2byte -lbl_8015AB30 = .bss:0x8015AB30; // type:object size:0x1800 -lbl_8015C330 = .bss:0x8015C330; // type:object size:0x20 -lbl_8015C350 = .bss:0x8015C350; // type:object size:0x10 -lbl_8015C360 = .bss:0x8015C360; // type:object size:0x80 -lbl_8015C3E0 = .bss:0x8015C3E0; // type:object size:0x240 -lbl_8015C620 = .bss:0x8015C620; // type:object size:0x300 data:byte -lbl_8015C920 = .bss:0x8015C920; // type:object size:0x9000 -lbl_80165920 = .bss:0x80165920; // type:object size:0x20 data:4byte -lbl_80165940 = .bss:0x80165940; // type:object size:0x1200 -lbl_80166B40 = .bss:0x80166B40; // type:object size:0x480 data:4byte -lbl_80166FC0 = .bss:0x80166FC0; // type:object size:0x40 data:byte -lbl_80167000 = .bss:0x80167000; // type:object size:0x30 -lbl_80167030 = .bss:0x80167030; // type:object size:0x400 -lbl_80167430 = .bss:0x80167430; // type:object size:0xC data:float -lbl_8016743C = .bss:0x8016743C; // type:object size:0xC data:float -lbl_80167448 = .bss:0x80167448; // type:object size:0xC data:float -lbl_80167454 = .bss:0x80167454; // type:object size:0xC data:float -lbl_80167460 = .bss:0x80167460; // type:object size:0x24800 data:byte -lbl_8018BC60 = .bss:0x8018BC60; // type:object size:0x580 data:float -lbl_8018C1E0 = .bss:0x8018C1E0; // type:object size:0x10 data:2byte -lbl_8018C1F0 = .bss:0x8018C1F0; // type:object size:0x20 -lbl_8018C210 = .bss:0x8018C210; // type:object size:0x14 data:4byte -lbl_8018C224 = .bss:0x8018C224; // type:object size:0x10 data:4byte -lbl_8018C234 = .bss:0x8018C234; // type:object size:0x260 data:byte -lbl_8018C494 = .bss:0x8018C494; // type:object size:0x98 data:byte -lbl_8018C52C = .bss:0x8018C52C; // type:object size:0x10 data:4byte -lbl_8018C53C = .bss:0x8018C53C; // type:object size:0x30 -lbl_8018C56C = .bss:0x8018C56C; // type:object size:0x30 -lbl_8018C59C = .bss:0x8018C59C; // type:object size:0x220 data:2byte -lbl_8018C7BC = .bss:0x8018C7BC; // type:object size:0x8B4 data:2byte -lbl_8018D070 = .bss:0x8018D070; // type:object size:0x800 data:2byte +ReadDataStat = .bss:0x801424E0; // type:object size:0x2E00 scope:local align:32 data:4byte +TextBuffer = .bss:0x801452E0; // type:object size:0x400 +rmodeobj = .bss:0x801456E0; // type:object size:0x40 scope:local +HeapTbl = .bss:0x80145720; // type:object size:0x18 scope:local +strline = .bss:0x80145738; // type:object size:0x6800 scope:local +pfStrBuf = .bss:0x8014BF38; // type:object size:0x100 scope:local data:byte +processjmpbuf = .bss:0x8014C038; // type:object size:0xF8 scope:local align:8 +HuSprData = .bss:0x8014C130; // type:object size:0x9600 +HuSprGrpData = .bss:0x80155730; // type:object size:0x5400 data:2byte +HuSprOrder = .bss:0x8015AB30; // type:object size:0x1800 scope:local +bmpNoCC = .bss:0x8015C330; // type:object size:0x20 scope:local +HuSprLayerDrawNo = .bss:0x8015C350; // type:object size:0x10 scope:local +Model = .bss:0x8015C360; // type:object size:0x80 +head = .bss:0x8015C3E0; // type:object size:0xB0 +rgba = .bss:0x8015C490; // type:object size:0x190 +lbl_8015C620 = .bss:0x8015C620; // type:object size:0x300 scope:local data:byte +DrawObjData = .bss:0x8015C920; // type:object size:0x9000 scope:local +BmpPtrBak = .bss:0x80165920; // type:object size:0x20 scope:local data:4byte +MTXBuf = .bss:0x80165940; // type:object size:0x1200 scope:local +scaleBuf = .bss:0x80166B40; // type:object size:0x480 scope:local data:4byte +texCol = .bss:0x80166FC0; // type:object size:0x40 scope:local data:byte +hiliteMtx = .bss:0x80167000; // type:object size:0x30 scope:local +DrawObjNum = .bss:0x80167030; // type:object size:0x400 scope:local +NBTB = .bss:0x80167430; // type:object size:0xC scope:local data:float +NBTT = .bss:0x8016743C; // type:object size:0xC scope:local data:float +PGMaxPos = .bss:0x80167448; // type:object size:0xC data:float +PGMinPos = .bss:0x80167454; // type:object size:0xC data:float +Hu3DData = .bss:0x80167460; // type:object size:0x24800 data:byte +Hu3DCamera = .bss:0x8018BC60; // type:object size:0x580 data:float +layerNum = .bss:0x8018C1E0; // type:object size:0x10 scope:local data:2byte +layerHook = .bss:0x8018C1F0; // type:object size:0x20 scope:local +reflectAnim = .bss:0x8018C210; // type:object size:0x14 data:4byte +hiliteAnim = .bss:0x8018C224; // type:object size:0x10 data:4byte +Hu3DProjection = .bss:0x8018C234; // type:object size:0x260 data:byte +Hu3DShadowData = .bss:0x8018C494; // type:object size:0x98 data:byte +FogData = .bss:0x8018C52C; // type:object size:0x10 data:4byte +Hu3DCameraMtx = .bss:0x8018C53C; // type:object size:0x30 +Hu3DCameraMtxXPose = .bss:0x8018C56C; // type:object size:0x30 +Hu3DGlobalLight = .bss:0x8018C59C; // type:object size:0x220 data:2byte +Hu3DLocalLight = .bss:0x8018C7BC; // type:object size:0x880 data:2byte +Hu3DMotion = .bss:0x8018D070; // type:object size:0x800 data:2byte lbl_8018D870 = .bss:0x8018D870; // type:object size:0x1400 data:2byte lbl_8018EC70 = .bss:0x8018EC70; // type:object size:0x6C0 data:2byte lbl_8018F330 = .bss:0x8018F330; // type:object size:0x100 @@ -4389,7 +4403,7 @@ lbl_8018F430 = .bss:0x8018F430; // type:object size:0x370 lbl_8018F7A0 = .bss:0x8018F7A0; // type:object size:0x38 lbl_8018F7D8 = .bss:0x8018F7D8; // type:object size:0xC0 lbl_8018F898 = .bss:0x8018F898; // type:object size:0x18 -lbl_8018F8B0 = .bss:0x8018F8B0; // type:object size:0x28 +GWPlayerCfg = .bss:0x8018F8B0; // type:object size:0x28 lbl_8018F8D8 = .bss:0x8018F8D8; // type:object size:0xC0 data:byte lbl_8018F998 = .bss:0x8018F998; // type:object size:0xE0 data:byte lbl_8018FA78 = .bss:0x8018FA78; // type:object size:0x230 @@ -4610,15 +4624,15 @@ lbl_801D30D0 = .sdata:0x801D30D0; // type:object size:0x6 scope:local data:strin lbl_801D30D6 = .sdata:0x801D30D6; // type:object size:0x2 scope:local data:string lbl_801D30D8 = .sdata:0x801D30D8; // type:object size:0x7 scope:local data:string lbl_801D30DF = .sdata:0x801D30DF; // type:object size:0x9 scope:local -lbl_801D30E8 = .sdata:0x801D30E8; // type:object size:0x4 data:4byte -lbl_801D30EC = .sdata:0x801D30EC; // type:object size:0x7 data:string -lbl_801D30F3 = .sdata:0x801D30F3; // type:object size:0xD -lbl_801D3100 = .sdata:0x801D3100; // type:object size:0x2 data:string -lbl_801D3102 = .sdata:0x801D3102; // type:object size:0xE -lbl_801D3110 = .sdata:0x801D3110; // type:object size:0x2 data:2byte -lbl_801D3112 = .sdata:0x801D3112; // type:object size:0x4 -lbl_801D3116 = .sdata:0x801D3116; // type:object size:0x4 -lbl_801D311A = .sdata:0x801D311A; // type:object size:0xE +FirstFrame = .sdata:0x801D30E8; // type:object size:0x4 data:4byte +lbl_801D30EC = .sdata:0x801D30EC; // type:object size:0x7 scope:local data:string +lbl_801D30F3 = .sdata:0x801D30F3; // type:object size:0xD scope:local +lbl_801D3100 = .sdata:0x801D3100; // type:object size:0x2 scope:local data:string +lbl_801D3102 = .sdata:0x801D3102; // type:object size:0xE scope:local +oneceF = .sdata:0x801D3110; // type:object size:0x2 scope:local data:2byte +firstTev = .sdata:0x801D3112; // type:object size:0x4 scope:local +secondTev = .sdata:0x801D3116; // type:object size:0x4 scope:local +lbl_801D311A = .sdata:0x801D311A; // type:object size:0xE scope:local lbl_801D3128 = .sdata:0x801D3128; // type:object size:0x4 data:string lbl_801D312C = .sdata:0x801D312C; // type:object size:0xC lbl_801D3138 = .sdata:0x801D3138; // type:object size:0x1 data:byte @@ -4826,15 +4840,15 @@ lbl_801D3536 = .sdata:0x801D3536; // type:object size:0x4 data:string lbl_801D353A = .sdata:0x801D353A; // type:object size:0x5 data:string lbl_801D353F = .sdata:0x801D353F; // type:object size:0x5 data:string lbl_801D3544 = .sdata:0x801D3544; // type:object size:0xC -lbl_801D3550 = .sdata:0x801D3550; // type:object size:0x1 data:byte -lbl_801D3552 = .sdata:0x801D3552; // type:object size:0x2 data:2byte -lbl_801D3554 = .sdata:0x801D3554; // type:object size:0x2 data:2byte -lbl_801D3556 = .sdata:0x801D3556; // type:object size:0x2 data:2byte -lbl_801D3558 = .sdata:0x801D3558; // type:object size:0x2 data:2byte -lbl_801D355A = .sdata:0x801D355A; // type:object size:0x2 data:2byte -lbl_801D355C = .sdata:0x801D355C; // type:object size:0x2 data:2byte -lbl_801D355E = .sdata:0x801D355E; // type:object size:0x2 data:2byte -lbl_801D3560 = .sdata:0x801D3560; // type:object size:0x8 data:4byte +pausePad = .sdata:0x801D3550; // type:object size:0x1 scope:local data:byte +pauseSprGrp = .sdata:0x801D3552; // type:object size:0x2 scope:local data:2byte +padConfigSprGrp = .sdata:0x801D3554; // type:object size:0x2 scope:local data:2byte +pauseCursorPos = .sdata:0x801D3556; // type:object size:0x2 scope:local data:2byte +settingsControlWin = .sdata:0x801D3558; // type:object size:0x2 scope:local data:2byte +controlWin = .sdata:0x801D355A; // type:object size:0x2 scope:local data:2byte +quitWin = .sdata:0x801D355C; // type:object size:0x2 scope:local data:2byte +settingsWin = .sdata:0x801D355E; // type:object size:0x2 scope:local data:2byte +__OSCurrHeap = .sdata:0x801D3560; // type:object size:0x8 data:4byte __OSArenaLo = .sdata:0x801D3568; // type:object size:0x4 scope:local data:4byte @32 = .sdata:0x801D3570; // type:object size:0x2 scope:local data:string lbl_801D3578 = .sdata:0x801D3578; // type:object size:0x8 data:2byte @@ -4940,121 +4954,115 @@ DirDataSize = .sbss:0x801D37B0; // type:object size:0x4 data:4byte DemoStatEnable = .sbss:0x801D37B8; // type:object size:0x4 scope:local data:4byte worstVcount = .sbss:0x801D37BC; // type:object size:0x4 data:4byte minimumVcountf = .sbss:0x801D37C0; // type:object size:0x4 data:float -DemoCurrentBuffer = .sbss:0x801D37C4; // type:object size:0x4 data:4byte -DemoFrameBuffer2 = .sbss:0x801D37C8; // type:object size:0x4 data:4byte -DemoFrameBuffer1 = .sbss:0x801D37CC; // type:object size:0x4 data:4byte -DefaultFifoObj = .sbss:0x801D37D0; // type:object size:0x4 scope:local data:4byte -DefaultFifo = .sbss:0x801D37D4; // type:object size:0x4 scope:local data:4byte -currentHeapHandle = .sbss:0x801D37D8; // type:object size:0x4 data:4byte -RenderMode = .sbss:0x801D37DC; // type:object size:0x4 data:4byte -saftyFrameF = .sbss:0x801D37E0; // type:object size:0x8 data:4byte -strlinecnt = .sbss:0x801D37E8; // type:object size:0x4 data:4byte -empstrline = .sbss:0x801D37EC; // type:object size:0x2 data:2byte -fontcolor = .sbss:0x801D37EE; // type:object size:0x2 data:2byte -procfunc = .sbss:0x801D37F0; // type:object size:0x8 data:4byte -processcnt = .sbss:0x801D37F8; // type:object size:0x4 scope:local data:4byte -processcur = .sbss:0x801D37FC; // type:object size:0x2 scope:local data:2byte -processtop = .sbss:0x801D3800; // type:object size:0x4 scope:local data:4byte -HuSprPauseF = .sbss:0x801D3804; // type:object size:0x4 scope:local data:4byte -HuSprOrderNo = .sbss:0x801D3808; // type:object size:0x4 scope:local data:4byte -HuSprOrderNum = .sbss:0x801D380C; // type:object size:0x2 scope:local data:2byte -bmpCCIdx = .sbss:0x801D380E; // type:object size:0x2 scope:local data:2byte -MaterialTop = .sbss:0x801D3810; // type:object size:0x8 data:2byte -AttributeTop = .sbss:0x801D3818; // type:object size:0x4 data:4byte -ClusterTop = .sbss:0x801D381C; // type:object size:0x4 data:4byte -vtxtop = .sbss:0x801D3820; // type:object size:0x4 data:4byte -objtop = .sbss:0x801D3824; // type:object size:0x4 data:4byte -NSymIndex = .sbss:0x801D3828; // type:object size:0x4 data:4byte -DicStringTable = .sbss:0x801D382C; // type:object size:0x4 data:4byte -StringTable = .sbss:0x801D3830; // type:object size:0x4 data:4byte -fileptr = .sbss:0x801D3834; // type:object size:0x4 data:4byte -NormalDataTop = .sbss:0x801D3838; // type:object size:0x4 scope:local data:4byte -VertexDataTop = .sbss:0x801D383C; // type:object size:0x4 scope:local data:4byte -MotionModel = .sbss:0x801D3840; // type:object size:0x4 scope:local data:4byte -MotionOnly = .sbss:0x801D3844; // type:object size:0x4 scope:local data:4byte -CancelTRXF = .sbss:0x801D3848; // type:object size:0x8 scope:local data:4byte -TL32F = .sbss:0x801D3850; // type:object size:0x4 scope:local data:4byte -PGName = .sbss:0x801D3854; // type:object size:0x4 scope:local data:4byte -PGFinishF = .sbss:0x801D3858; // type:object size:0x4 scope:local data:4byte -polySize = .sbss:0x801D385C; // type:object size:0x4 scope:local data:4byte -curModelID = .sbss:0x801D3860; // type:object size:0x2 scope:local data:2byte -mallocNo = .sbss:0x801D3864; // type:object size:0x4 scope:local data:4byte -totalSize = .sbss:0x801D3868; // type:object size:0x4 scope:local data:4byte -DLTotalNum = .sbss:0x801D386C; // type:object size:0x4 scope:local data:4byte -faceNumBuf = .sbss:0x801D3870; // type:object size:0x4 scope:local data:4byte -faceCnt = .sbss:0x801D3874; // type:object size:0x4 scope:local data:4byte -quadCnt = .sbss:0x801D3878; // type:object size:0x2 scope:local data:2byte -triCnt = .sbss:0x801D387A; // type:object size:0x2 scope:local data:2byte -matChgCnt = .sbss:0x801D387C; // type:object size:0x2 scope:local data:2byte -DLFirstF = .sbss:0x801D387E; // type:object size:0x2 scope:local data:2byte -modelObjNum = .sbss:0x801D3880; // type:object size:0x4 data:4byte -modelMeshNum = .sbss:0x801D3884; // type:object size:0x2 data:2byte -totalTexCacheCnted = .sbss:0x801D3886; // type:object size:0x2 data:2byte -totalTexCacheCnt = .sbss:0x801D3888; // type:object size:0x4 data:4byte -totalTexCnted = .sbss:0x801D388C; // type:object size:0x4 data:4byte -totalTexCnt = .sbss:0x801D3890; // type:object size:0x4 data:4byte -totalMatCnted = .sbss:0x801D3894; // type:object size:0x4 data:4byte -totalMatCnt = .sbss:0x801D3898; // type:object size:0x4 data:4byte -totalPolyCnted = .sbss:0x801D389C; // type:object size:0x4 data:4byte -totalPolyCnt = .sbss:0x801D38A0; // type:object size:0x4 data:4byte -hookIdx = .sbss:0x801D38A4; // type:object size:0x4 scope:local data:4byte -kColorIdx = .sbss:0x801D38A8; // type:object size:0x2 scope:local data:2byte -kColor = .sbss:0x801D38AC; // type:object size:0x4 scope:local data:4byte -projectionMapNo = .sbss:0x801D38B0; // type:object size:0x1 scope:local data:byte -toonMapNo = .sbss:0x801D38B1; // type:object size:0x1 scope:local data:byte -shadowMapNo = .sbss:0x801D38B2; // type:object size:0x1 scope:local data:byte -attachMotionF = .sbss:0x801D38B3; // type:object size:0x1 scope:local data:byte -vtxModeBak = .sbss:0x801D38B4; // type:object size:0x2 scope:local data:2byte -hiliteMapNo = .sbss:0x801D38B6; // type:object size:0x2 scope:local data:2byte -reflectionMapNo = .sbss:0x801D38B8; // type:object size:0x2 scope:local data:2byte -Hu3DObjInfoP = .sbss:0x801D38BC; // type:object size:0x4 scope:local data:4byte -DrawObjIdx = .sbss:0x801D38C0; // type:object size:0x2 scope:local data:2byte -lightBit = .sbss:0x801D38C2; // type:object size:0x2 scope:local data:2byte -drawCnt = .sbss:0x801D38C4; // type:object size:0x2 scope:local data:2byte -DrawData = .sbss:0x801D38C8; // type:object size:0x4 scope:local data:4byte -DLBufStartP = .sbss:0x801D38CC; // type:object size:0x2 scope:local data:2byte -DLBufP = .sbss:0x801D38CE; // type:object size:0x2 scope:local data:2byte -shadingBak = .sbss:0x801D38D0; // type:object size:0x4 scope:local data:4byte -polyTypeBak = .sbss:0x801D38D4; // type:object size:0x4 scope:local data:4byte -materialBak = .sbss:0x801D38D8; // type:object size:0x4 scope:local data:4byte -MTXIdx = .sbss:0x801D38DC; // type:object size:0x4 data:4byte -modelKillAllF = .sbss:0x801D38E0; // type:object size:0x4 data:4byte -NoSyncF = .sbss:0x801D38E4; // type:object size:0x1 scope:local data:byte -Hu3DCameraExistF = .sbss:0x801D38E8; // type:object size:0x4 data:4byte -Hu3DPauseF = .sbss:0x801D38EC; // type:object size:0x2 data:2byte -Hu3DMallocNo = .sbss:0x801D38F0; // type:object size:0x4 data:4byte -Hu3DCameraBit = .sbss:0x801D38F4; // type:object size:0x2 data:2byte -Hu3DCameraNo = .sbss:0x801D38F6; // type:object size:0x2 data:2byte -Hu3DProjectionNum = .sbss:0x801D38F8; // type:object size:0x2 data:2byte -shadowModelDrawF = .sbss:0x801D38FC; // type:object size:0x4 data:4byte -Hu3DShadowF = .sbss:0x801D3900; // type:object size:0x2 data:2byte -Hu3DShadowCamBit = .sbss:0x801D3902; // type:object size:0x2 data:2byte -toonAnim = .sbss:0x801D3904; // type:object size:0x2 data:2byte -BGColor = .sbss:0x801D3908; // type:object size:0x4 data:4byte -bitMapPtr = .sbss:0x801D390C; // type:object size:0x4 scope:local data:4byte -metf = .sbss:0x801D3910; // type:object size:0x2 scope:local data:2byte -tokenEndF = .sbss:0x801D3914; // type:object size:0x4 scope:local data:4byte -total_copy_clks = .sbss:0x801D3918; // type:object size:0x2 scope:local data:2byte -clr_pixels_in = .sbss:0x801D391A; // type:object size:0x1 scope:local data:byte -bot_pixels_out = .sbss:0x801D391B; // type:object size:0x1 scope:local data:byte -bot_pixels_in = .sbss:0x801D391C; // type:object size:0x1 scope:local data:byte -top_pixels_out = .sbss:0x801D391D; // type:object size:0x1 scope:local data:byte -top_pixels_in = .sbss:0x801D3920; // type:object size:0x8 scope:local data:4byte -fi_req = .sbss:0x801D3928; // type:object size:0x1 scope:local data:byte -rf_req = .sbss:0x801D392A; // type:object size:0x2 scope:local data:2byte -pe_req = .sbss:0x801D392C; // type:object size:0x4 scope:local data:4byte -vi_req = .sbss:0x801D3930; // type:object size:0x4 scope:local -io_req = .sbss:0x801D3934; // type:object size:0x4 scope:local -dsp_req = .sbss:0x801D3938; // type:object size:0x4 scope:local -cpu_wr_req = .sbss:0x801D393C; // type:object size:0x4 scope:local -cpu_rd_req = .sbss:0x801D3940; // type:object size:0x4 scope:local -tc_req = .sbss:0x801D3944; // type:object size:0x4 scope:local -cp_req = .sbss:0x801D3948; // type:object size:0x4 scope:local -vstall = .sbss:0x801D394C; // type:object size:0x4 scope:local -vmiss = .sbss:0x801D3950; // type:object size:0x4 scope:local -vcheck = .sbss:0x801D3954; // type:object size:0x4 scope:local -met1 = .sbss:0x801D3958; // type:object size:0x4 scope:local -met0 = .sbss:0x801D395C; // type:object size:0x4 scope:local +minimumVcount = .sbss:0x801D37C4; // type:object size:0x4 data:4byte +DemoCurrentBuffer = .sbss:0x801D37C8; // type:object size:0x4 data:4byte +DemoFrameBuffer2 = .sbss:0x801D37CC; // type:object size:0x4 data:4byte +DemoFrameBuffer1 = .sbss:0x801D37D0; // type:object size:0x4 scope:local data:4byte +DefaultFifoObj = .sbss:0x801D37D4; // type:object size:0x4 scope:local data:4byte +DefaultFifo = .sbss:0x801D37D8; // type:object size:0x4 data:4byte +currentHeapHandle = .sbss:0x801D37DC; // type:object size:0x4 data:4byte +RenderMode = .sbss:0x801D37E0; // type:object size:0x8 data:4byte +saftyFrameF = .sbss:0x801D37E8; // type:object size:0x4 data:4byte +strlinecnt = .sbss:0x801D37EC; // type:object size:0x2 data:2byte +empstrline = .sbss:0x801D37EE; // type:object size:0x2 data:2byte +fontcolor = .sbss:0x801D37F0; // type:object size:0x8 data:4byte +procfunc = .sbss:0x801D37F8; // type:object size:0x4 data:4byte +processcnt = .sbss:0x801D37FC; // type:object size:0x2 scope:local data:2byte +processcur = .sbss:0x801D3800; // type:object size:0x4 scope:local data:4byte +processtop = .sbss:0x801D3804; // type:object size:0x4 scope:local data:4byte +HuSprPauseF = .sbss:0x801D3808; // type:object size:0x4 scope:local data:4byte +HuSprOrderNo = .sbss:0x801D380C; // type:object size:0x2 scope:local data:2byte +HuSprOrderNum = .sbss:0x801D380E; // type:object size:0x2 scope:local data:2byte +bmpCCIdx = .sbss:0x801D3810; // type:object size:0x8 scope:local data:2byte +MaterialTop = .sbss:0x801D3818; // type:object size:0x4 data:4byte +AttributeTop = .sbss:0x801D381C; // type:object size:0x4 data:4byte +ClusterTop = .sbss:0x801D3820; // type:object size:0x4 data:4byte +vtxtop = .sbss:0x801D3824; // type:object size:0x4 data:4byte +objtop = .sbss:0x801D3828; // type:object size:0x4 data:4byte +NSymIndex = .sbss:0x801D382C; // type:object size:0x4 data:4byte +DicStringTable = .sbss:0x801D3830; // type:object size:0x4 data:4byte +StringTable = .sbss:0x801D3834; // type:object size:0x4 data:4byte +fileptr = .sbss:0x801D3838; // type:object size:0x4 data:4byte +NormalDataTop = .sbss:0x801D383C; // type:object size:0x4 scope:local data:4byte +VertexDataTop = .sbss:0x801D3840; // type:object size:0x4 scope:local data:4byte +MotionModel = .sbss:0x801D3844; // type:object size:0x4 scope:local data:4byte +MotionOnly = .sbss:0x801D3848; // type:object size:0x8 scope:local data:4byte +CancelTRXF = .sbss:0x801D3850; // type:object size:0x4 scope:local data:4byte +TL32F = .sbss:0x801D3854; // type:object size:0x4 scope:local data:4byte +PGName = .sbss:0x801D3858; // type:object size:0x4 scope:local data:4byte +PGFinishF = .sbss:0x801D385C; // type:object size:0x4 scope:local data:4byte +polySize = .sbss:0x801D3860; // type:object size:0x2 scope:local data:2byte +curModelID = .sbss:0x801D3864; // type:object size:0x4 scope:local data:4byte +mallocNo = .sbss:0x801D3868; // type:object size:0x4 scope:local data:4byte +totalSize = .sbss:0x801D386C; // type:object size:0x4 scope:local data:4byte +DLTotalNum = .sbss:0x801D3870; // type:object size:0x4 scope:local data:4byte +faceNumBuf = .sbss:0x801D3874; // type:object size:0x4 scope:local data:4byte +faceCnt = .sbss:0x801D3878; // type:object size:0x2 scope:local data:2byte +quadCnt = .sbss:0x801D387A; // type:object size:0x2 scope:local data:2byte +triCnt = .sbss:0x801D387C; // type:object size:0x2 scope:local data:2byte +matChgCnt = .sbss:0x801D387E; // type:object size:0x2 scope:local data:2byte +DLFirstF = .sbss:0x801D3880; // type:object size:0x4 scope:local data:4byte +modelObjNum = .sbss:0x801D3884; // type:object size:0x2 data:2byte +modelMeshNum = .sbss:0x801D3886; // type:object size:0x2 data:2byte +totalTexCacheCnted = .sbss:0x801D3888; // type:object size:0x4 data:4byte +totalTexCacheCnt = .sbss:0x801D388C; // type:object size:0x4 data:4byte +totalTexCnted = .sbss:0x801D3890; // type:object size:0x4 data:4byte +totalTexCnt = .sbss:0x801D3894; // type:object size:0x4 data:4byte +totalMatCnted = .sbss:0x801D3898; // type:object size:0x4 data:4byte +totalMatCnt = .sbss:0x801D389C; // type:object size:0x4 data:4byte +totalPolyCnted = .sbss:0x801D38A0; // type:object size:0x4 data:4byte +totalPolyCnt = .sbss:0x801D38A4; // type:object size:0x4 data:4byte +hookIdx = .sbss:0x801D38A8; // type:object size:0x2 scope:local data:2byte +kColorIdx = .sbss:0x801D38AC; // type:object size:0x4 scope:local data:4byte +kColor = .sbss:0x801D38B0; // type:object size:0x4 scope:local data:byte +projectionMapNo = .sbss:0x801D38B4; // type:object size:0x2 scope:local data:2byte +toonMapNo = .sbss:0x801D38B6; // type:object size:0x2 scope:local data:2byte +shadowMapNo = .sbss:0x801D38B8; // type:object size:0x2 scope:local data:2byte +attachMotionF = .sbss:0x801D38BC; // type:object size:0x4 scope:local data:4byte +vtxModeBak = .sbss:0x801D38C0; // type:object size:0x2 scope:local data:2byte +hiliteMapNo = .sbss:0x801D38C2; // type:object size:0x2 scope:local data:2byte +reflectionMapNo = .sbss:0x801D38C4; // type:object size:0x2 scope:local data:2byte +Hu3DObjInfoP = .sbss:0x801D38C8; // type:object size:0x4 scope:local data:4byte +DrawObjIdx = .sbss:0x801D38CC; // type:object size:0x2 scope:local data:2byte +lightBit = .sbss:0x801D38CE; // type:object size:0x2 scope:local data:2byte +drawCnt = .sbss:0x801D38D0; // type:object size:0x4 scope:local data:4byte +DrawData = .sbss:0x801D38D4; // type:object size:0x4 scope:local data:4byte +DLBufStartP = .sbss:0x801D38D8; // type:object size:0x4 scope:local data:4byte +DLBufP = .sbss:0x801D38DC; // type:object size:0x4 scope:local data:4byte +shadingBak = .sbss:0x801D38E0; // type:object size:0x4 scope:local data:4byte +polyTypeBak = .sbss:0x801D38E4; // type:object size:0x1 scope:local data:byte +materialBak = .sbss:0x801D38E8; // type:object size:0x4 scope:local data:4byte +MTXIdx = .sbss:0x801D38EC; // type:object size:0x2 data:2byte +modelKillAllF = .sbss:0x801D38F0; // type:object size:0x4 data:4byte +NoSyncF = .sbss:0x801D38F4; // type:object size:0x2 scope:local data:2byte +Hu3DCameraExistF = .sbss:0x801D38F6; // type:object size:0x2 data:2byte +Hu3DPauseF = .sbss:0x801D38F8; // type:object size:0x2 data:2byte +Hu3DMallocNo = .sbss:0x801D38FC; // type:object size:0x4 data:4byte +Hu3DCameraBit = .sbss:0x801D3900; // type:object size:0x2 data:2byte +Hu3DCameraNo = .sbss:0x801D3902; // type:object size:0x2 data:2byte +Hu3DProjectionNum = .sbss:0x801D3904; // type:object size:0x2 data:2byte +shadowModelDrawF = .sbss:0x801D3908; // type:object size:0x4 data:4byte +Hu3DShadowF = .sbss:0x801D390C; // type:object size:0x4 data:4byte +Hu3DShadowCamBit = .sbss:0x801D3910; // type:object size:0x2 data:2byte +toonAnim = .sbss:0x801D3914; // type:object size:0x4 data:4byte +reflectMapNo = .sbss:0x801D3918; // type:object size:0x2 data:2byte +BGColor = .sbss:0x801D391A; // type:object size:0x4 data:byte +bitMapPtr = .sbss:0x801D3920; // type:object size:0x4 scope:local data:4byte +metf = .sbss:0x801D3928; // type:object size:0x1 data:byte +tokenEndF = .sbss:0x801D392A; // type:object size:0x2 data:2byte +total_copy_clks = .sbss:0x801D392C; // type:object size:0x4 data:4byte +clr_pixels_in = .sbss:0x801D3930; // type:object size:0x4 +lbl_801D3934 = .sbss:0x801D3934; // type:object size:0x4 +lbl_801D3938 = .sbss:0x801D3938; // type:object size:0x4 +lbl_801D393C = .sbss:0x801D393C; // type:object size:0x4 +lbl_801D3940 = .sbss:0x801D3940; // type:object size:0x4 +lbl_801D3944 = .sbss:0x801D3944; // type:object size:0x4 +lbl_801D3948 = .sbss:0x801D3948; // type:object size:0x4 +lbl_801D394C = .sbss:0x801D394C; // type:object size:0x4 +lbl_801D3950 = .sbss:0x801D3950; // type:object size:0x4 +lbl_801D3954 = .sbss:0x801D3954; // type:object size:0x4 +lbl_801D3958 = .sbss:0x801D3958; // type:object size:0x4 +lbl_801D395C = .sbss:0x801D395C; // type:object size:0x4 lbl_801D3960 = .sbss:0x801D3960; // type:object size:0x4 lbl_801D3964 = .sbss:0x801D3964; // type:object size:0x4 lbl_801D3968 = .sbss:0x801D3968; // type:object size:0x4 @@ -5811,95 +5819,95 @@ lbl_801D4604 = .sbss:0x801D4604; // type:object size:0x4 data:4byte lbl_801D4608 = .sbss:0x801D4608; // type:object size:0x4 data:4byte lbl_801D460C = .sbss:0x801D460C; // type:object size:0x1 data:byte lbl_801D4620 = .sdata2:0x801D4620; // type:object size:0x8 scope:local data:double -lbl_801D4628 = .sdata2:0x801D4628; // type:object size:0x4 data:float -lbl_801D462C = .sdata2:0x801D462C; // type:object size:0x4 data:float -lbl_801D4630 = .sdata2:0x801D4630; // type:object size:0x8 data:double -lbl_801D4638 = .sdata2:0x801D4638; // type:object size:0x4 data:float -lbl_801D463C = .sdata2:0x801D463C; // type:object size:0x4 data:float -lbl_801D4640 = .sdata2:0x801D4640; // type:object size:0x4 data:float -lbl_801D4644 = .sdata2:0x801D4644; // type:object size:0x4 data:float -lbl_801D4648 = .sdata2:0x801D4648; // type:object size:0x4 data:float -lbl_801D464C = .sdata2:0x801D464C; // type:object size:0x4 data:float -lbl_801D4650 = .sdata2:0x801D4650; // type:object size:0x4 data:float -lbl_801D4654 = .sdata2:0x801D4654; // type:object size:0x4 data:float -lbl_801D4658 = .sdata2:0x801D4658; // type:object size:0x4 data:float -lbl_801D4660 = .sdata2:0x801D4660; // type:object size:0x8 data:double -lbl_801D4668 = .sdata2:0x801D4668; // type:object size:0x8 data:double -lbl_801D4670 = .sdata2:0x801D4670; // type:object size:0x4 data:float -lbl_801D4674 = .sdata2:0x801D4674; // type:object size:0x4 data:float -lbl_801D4678 = .sdata2:0x801D4678; // type:object size:0x4 data:float -lbl_801D467C = .sdata2:0x801D467C; // type:object size:0x4 data:float -lbl_801D4680 = .sdata2:0x801D4680; // type:object size:0x8 data:float -lbl_801D4688 = .sdata2:0x801D4688; // type:object size:0x4 data:float -lbl_801D468C = .sdata2:0x801D468C; // type:object size:0x4 data:float -lbl_801D4690 = .sdata2:0x801D4690; // type:object size:0x4 data:float -lbl_801D4698 = .sdata2:0x801D4698; // type:object size:0x8 data:double -lbl_801D46A0 = .sdata2:0x801D46A0; // type:object size:0x8 data:double -lbl_801D46A8 = .sdata2:0x801D46A8; // type:object size:0x8 data:float -lbl_801D46B0 = .sdata2:0x801D46B0; // type:object size:0x4 data:float -lbl_801D46B4 = .sdata2:0x801D46B4; // type:object size:0x4 data:float -lbl_801D46B8 = .sdata2:0x801D46B8; // type:object size:0x4 data:float -lbl_801D46BC = .sdata2:0x801D46BC; // type:object size:0x4 data:float -lbl_801D46C0 = .sdata2:0x801D46C0; // type:object size:0x4 data:float -lbl_801D46C4 = .sdata2:0x801D46C4; // type:object size:0x4 data:float -lbl_801D46C8 = .sdata2:0x801D46C8; // type:object size:0x4 data:float -lbl_801D46D0 = .sdata2:0x801D46D0; // type:object size:0x8 data:double -lbl_801D46D8 = .sdata2:0x801D46D8; // type:object size:0x8 data:double -lbl_801D46E0 = .sdata2:0x801D46E0; // type:object size:0x8 data:double -lbl_801D46E8 = .sdata2:0x801D46E8; // type:object size:0x4 data:float -lbl_801D46EC = .sdata2:0x801D46EC; // type:object size:0x4 data:float -lbl_801D46F0 = .sdata2:0x801D46F0; // type:object size:0x4 data:float -lbl_801D46F4 = .sdata2:0x801D46F4; // type:object size:0x4 data:float -lbl_801D46F8 = .sdata2:0x801D46F8; // type:object size:0x8 data:double -lbl_801D4700 = .sdata2:0x801D4700; // type:object size:0x8 data:double -lbl_801D4708 = .sdata2:0x801D4708; // type:object size:0x8 data:double -lbl_801D4710 = .sdata2:0x801D4710; // type:object size:0x8 data:double -lbl_801D4718 = .sdata2:0x801D4718; // type:object size:0x4 data:float -lbl_801D4720 = .sdata2:0x801D4720; // type:object size:0x8 data:double -lbl_801D4728 = .sdata2:0x801D4728; // type:object size:0x4 data:float -lbl_801D472C = .sdata2:0x801D472C; // type:object size:0x4 data:float -lbl_801D4730 = .sdata2:0x801D4730; // type:object size:0x4 data:float -lbl_801D4734 = .sdata2:0x801D4734; // type:object size:0x4 data:float -lbl_801D4738 = .sdata2:0x801D4738; // type:object size:0x8 data:double -lbl_801D4740 = .sdata2:0x801D4740; // type:object size:0x4 data:float -lbl_801D4744 = .sdata2:0x801D4744; // type:object size:0x4 data:float -lbl_801D4748 = .sdata2:0x801D4748; // type:object size:0x4 data:float -lbl_801D474C = .sdata2:0x801D474C; // type:object size:0x4 data:float -lbl_801D4750 = .sdata2:0x801D4750; // type:object size:0x8 data:double -lbl_801D4758 = .sdata2:0x801D4758; // type:object size:0x4 data:float -lbl_801D4760 = .sdata2:0x801D4760; // type:object size:0x8 data:double -lbl_801D4768 = .sdata2:0x801D4768; // type:object size:0x4 data:float -lbl_801D476C = .sdata2:0x801D476C; // type:object size:0x4 data:float -lbl_801D4770 = .sdata2:0x801D4770; // type:object size:0x4 data:float -lbl_801D4774 = .sdata2:0x801D4774; // type:object size:0x4 data:float -lbl_801D4778 = .sdata2:0x801D4778; // type:object size:0x4 data:float -lbl_801D4780 = .sdata2:0x801D4780; // type:object size:0x8 data:double -lbl_801D4788 = .sdata2:0x801D4788; // type:object size:0x8 data:double -lbl_801D4790 = .sdata2:0x801D4790; // type:object size:0x8 data:double -lbl_801D4798 = .sdata2:0x801D4798; // type:object size:0x8 data:double -lbl_801D47A0 = .sdata2:0x801D47A0; // type:object size:0x4 data:float -lbl_801D47A4 = .sdata2:0x801D47A4; // type:object size:0x4 data:float -lbl_801D47A8 = .sdata2:0x801D47A8; // type:object size:0x4 data:float -lbl_801D47AC = .sdata2:0x801D47AC; // type:object size:0x4 data:float -lbl_801D47B0 = .sdata2:0x801D47B0; // type:object size:0x4 data:float -lbl_801D47B4 = .sdata2:0x801D47B4; // type:object size:0x4 data:float -lbl_801D47B8 = .sdata2:0x801D47B8; // type:object size:0x4 data:float -lbl_801D47BC = .sdata2:0x801D47BC; // type:object size:0x4 data:float -lbl_801D47C0 = .sdata2:0x801D47C0; // type:object size:0x8 data:double -lbl_801D47C8 = .sdata2:0x801D47C8; // type:object size:0x8 data:float -lbl_801D47D0 = .sdata2:0x801D47D0; // type:object size:0x4 data:float -lbl_801D47D4 = .sdata2:0x801D47D4; // type:object size:0x4 data:float -lbl_801D47D8 = .sdata2:0x801D47D8; // type:object size:0x8 data:double -lbl_801D47E0 = .sdata2:0x801D47E0; // type:object size:0x8 data:double -lbl_801D47E8 = .sdata2:0x801D47E8; // type:object size:0x4 data:float -lbl_801D47EC = .sdata2:0x801D47EC; // type:object size:0x4 data:float -lbl_801D47F0 = .sdata2:0x801D47F0; // type:object size:0x4 data:float -lbl_801D47F8 = .sdata2:0x801D47F8; // type:object size:0x8 data:double -lbl_801D4800 = .sdata2:0x801D4800; // type:object size:0x8 data:double -lbl_801D4808 = .sdata2:0x801D4808; // type:object size:0x8 data:double -lbl_801D4810 = .sdata2:0x801D4810; // type:object size:0x4 data:float -lbl_801D4814 = .sdata2:0x801D4814; // type:object size:0x4 data:float -lbl_801D4818 = .sdata2:0x801D4818; // type:object size:0x8 data:float +lbl_801D4628 = .sdata2:0x801D4628; // type:object size:0x4 scope:local data:float +lbl_801D462C = .sdata2:0x801D462C; // type:object size:0x4 scope:local data:float +lbl_801D4630 = .sdata2:0x801D4630; // type:object size:0x8 scope:local data:double +lbl_801D4638 = .sdata2:0x801D4638; // type:object size:0x4 scope:local data:float +lbl_801D463C = .sdata2:0x801D463C; // type:object size:0x4 scope:local data:float +lbl_801D4640 = .sdata2:0x801D4640; // type:object size:0x4 scope:local data:float +lbl_801D4644 = .sdata2:0x801D4644; // type:object size:0x4 scope:local data:float +lbl_801D4648 = .sdata2:0x801D4648; // type:object size:0x4 scope:local data:float +lbl_801D464C = .sdata2:0x801D464C; // type:object size:0x4 scope:local data:float +lbl_801D4650 = .sdata2:0x801D4650; // type:object size:0x4 scope:local data:float +lbl_801D4654 = .sdata2:0x801D4654; // type:object size:0x4 scope:local data:float +lbl_801D4658 = .sdata2:0x801D4658; // type:object size:0x4 scope:local data:float +lbl_801D4660 = .sdata2:0x801D4660; // type:object size:0x8 scope:local data:double +lbl_801D4668 = .sdata2:0x801D4668; // type:object size:0x8 scope:local data:double +lbl_801D4670 = .sdata2:0x801D4670; // type:object size:0x4 scope:local data:float +lbl_801D4674 = .sdata2:0x801D4674; // type:object size:0x4 scope:local data:float +lbl_801D4678 = .sdata2:0x801D4678; // type:object size:0x4 scope:local data:float +lbl_801D467C = .sdata2:0x801D467C; // type:object size:0x4 scope:local data:float +lbl_801D4680 = .sdata2:0x801D4680; // type:object size:0x8 scope:local data:float +lbl_801D4688 = .sdata2:0x801D4688; // type:object size:0x4 scope:local data:float +lbl_801D468C = .sdata2:0x801D468C; // type:object size:0x4 scope:local data:float +lbl_801D4690 = .sdata2:0x801D4690; // type:object size:0x4 scope:local data:float +lbl_801D4698 = .sdata2:0x801D4698; // type:object size:0x8 scope:local data:double +lbl_801D46A0 = .sdata2:0x801D46A0; // type:object size:0x8 scope:local data:double +lbl_801D46A8 = .sdata2:0x801D46A8; // type:object size:0x8 scope:local data:float +lbl_801D46B0 = .sdata2:0x801D46B0; // type:object size:0x4 scope:local data:float +lbl_801D46B4 = .sdata2:0x801D46B4; // type:object size:0x4 scope:local data:float +lbl_801D46B8 = .sdata2:0x801D46B8; // type:object size:0x4 scope:local data:float +lbl_801D46BC = .sdata2:0x801D46BC; // type:object size:0x4 scope:local data:float +lbl_801D46C0 = .sdata2:0x801D46C0; // type:object size:0x4 scope:local data:float +lbl_801D46C4 = .sdata2:0x801D46C4; // type:object size:0x4 scope:local data:float +lbl_801D46C8 = .sdata2:0x801D46C8; // type:object size:0x4 scope:local data:float +lbl_801D46D0 = .sdata2:0x801D46D0; // type:object size:0x8 scope:local data:double +lbl_801D46D8 = .sdata2:0x801D46D8; // type:object size:0x8 scope:local data:double +lbl_801D46E0 = .sdata2:0x801D46E0; // type:object size:0x8 scope:local data:double +lbl_801D46E8 = .sdata2:0x801D46E8; // type:object size:0x4 scope:local data:float +lbl_801D46EC = .sdata2:0x801D46EC; // type:object size:0x4 scope:local data:float +lbl_801D46F0 = .sdata2:0x801D46F0; // type:object size:0x4 scope:local data:float +lbl_801D46F4 = .sdata2:0x801D46F4; // type:object size:0x4 scope:local data:float +lbl_801D46F8 = .sdata2:0x801D46F8; // type:object size:0x8 scope:local data:double +lbl_801D4700 = .sdata2:0x801D4700; // type:object size:0x8 scope:local data:double +lbl_801D4708 = .sdata2:0x801D4708; // type:object size:0x8 scope:local data:double +lbl_801D4710 = .sdata2:0x801D4710; // type:object size:0x8 scope:local data:double +lbl_801D4718 = .sdata2:0x801D4718; // type:object size:0x4 scope:local data:float +lbl_801D4720 = .sdata2:0x801D4720; // type:object size:0x8 scope:local data:double +lbl_801D4728 = .sdata2:0x801D4728; // type:object size:0x4 scope:local data:float +lbl_801D472C = .sdata2:0x801D472C; // type:object size:0x4 scope:local data:float +lbl_801D4730 = .sdata2:0x801D4730; // type:object size:0x4 scope:local data:float +lbl_801D4734 = .sdata2:0x801D4734; // type:object size:0x4 scope:local data:float +lbl_801D4738 = .sdata2:0x801D4738; // type:object size:0x8 scope:local data:double +lbl_801D4740 = .sdata2:0x801D4740; // type:object size:0x4 scope:local data:float +lbl_801D4744 = .sdata2:0x801D4744; // type:object size:0x4 scope:local data:float +lbl_801D4748 = .sdata2:0x801D4748; // type:object size:0x4 scope:local data:float +lbl_801D474C = .sdata2:0x801D474C; // type:object size:0x4 scope:local data:float +lbl_801D4750 = .sdata2:0x801D4750; // type:object size:0x8 scope:local data:double +lbl_801D4758 = .sdata2:0x801D4758; // type:object size:0x4 scope:local data:float +lbl_801D4760 = .sdata2:0x801D4760; // type:object size:0x8 scope:local data:double +lbl_801D4768 = .sdata2:0x801D4768; // type:object size:0x4 scope:local data:float +lbl_801D476C = .sdata2:0x801D476C; // type:object size:0x4 scope:local data:float +lbl_801D4770 = .sdata2:0x801D4770; // type:object size:0x4 scope:local data:float +lbl_801D4774 = .sdata2:0x801D4774; // type:object size:0x4 scope:local data:float +lbl_801D4778 = .sdata2:0x801D4778; // type:object size:0x4 scope:local data:float +lbl_801D4780 = .sdata2:0x801D4780; // type:object size:0x8 scope:local data:double +lbl_801D4788 = .sdata2:0x801D4788; // type:object size:0x8 scope:local data:double +lbl_801D4790 = .sdata2:0x801D4790; // type:object size:0x8 scope:local data:double +lbl_801D4798 = .sdata2:0x801D4798; // type:object size:0x8 scope:local data:double +lbl_801D47A0 = .sdata2:0x801D47A0; // type:object size:0x4 scope:local data:float +lbl_801D47A4 = .sdata2:0x801D47A4; // type:object size:0x4 scope:local data:float +lbl_801D47A8 = .sdata2:0x801D47A8; // type:object size:0x4 scope:local data:float +lbl_801D47AC = .sdata2:0x801D47AC; // type:object size:0x4 scope:local data:float +lbl_801D47B0 = .sdata2:0x801D47B0; // type:object size:0x4 scope:local data:float +lbl_801D47B4 = .sdata2:0x801D47B4; // type:object size:0x4 scope:local data:float +lbl_801D47B8 = .sdata2:0x801D47B8; // type:object size:0x4 scope:local data:float +lbl_801D47BC = .sdata2:0x801D47BC; // type:object size:0x4 scope:local data:float +lbl_801D47C0 = .sdata2:0x801D47C0; // type:object size:0x8 scope:local data:double +lbl_801D47C8 = .sdata2:0x801D47C8; // type:object size:0x8 scope:local data:float +lbl_801D47D0 = .sdata2:0x801D47D0; // type:object size:0x4 scope:local data:float +lbl_801D47D4 = .sdata2:0x801D47D4; // type:object size:0x4 scope:local data:float +lbl_801D47D8 = .sdata2:0x801D47D8; // type:object size:0x8 scope:local data:double +lbl_801D47E0 = .sdata2:0x801D47E0; // type:object size:0x8 scope:local data:double +lbl_801D47E8 = .sdata2:0x801D47E8; // type:object size:0x4 scope:local data:float +lbl_801D47EC = .sdata2:0x801D47EC; // type:object size:0x4 scope:local data:float +lbl_801D47F0 = .sdata2:0x801D47F0; // type:object size:0x4 scope:local data:float +lbl_801D47F8 = .sdata2:0x801D47F8; // type:object size:0x8 scope:local data:double +lbl_801D4800 = .sdata2:0x801D4800; // type:object size:0x8 scope:local data:double +lbl_801D4808 = .sdata2:0x801D4808; // type:object size:0x8 scope:local data:double +lbl_801D4810 = .sdata2:0x801D4810; // type:object size:0x4 scope:local data:float +lbl_801D4814 = .sdata2:0x801D4814; // type:object size:0x4 scope:local data:float +lbl_801D4818 = .sdata2:0x801D4818; // type:object size:0x8 scope:local data:float lbl_801D4820 = .sdata2:0x801D4820; // type:object size:0x4 data:float lbl_801D4824 = .sdata2:0x801D4824; // type:object size:0x4 data:float lbl_801D4828 = .sdata2:0x801D4828; // type:object size:0x8 data:double @@ -7504,11 +7512,5 @@ lbl_801D688C = .sdata2:0x801D688C; // type:object size:0x4 data:float lbl_801D6890 = .sdata2:0x801D6890; // type:object size:0x4 data:float lbl_801D6894 = .sdata2:0x801D6894; // type:object size:0x4 data:float lbl_801D6898 = .sdata2:0x801D6898; // type:object size:0x8 data:double -lbl_801D68A0 = .sbss2:0x801D68A0; // type:object size:0x1 data:byte -lbl_801D68A1 = .sbss2:0x801D68A1; // type:object size:0x1 data:byte -lbl_801D68A2 = .sbss2:0x801D68A2; // type:object size:0x1 data:byte -lbl_801D68A3 = .sbss2:0x801D68A3; // type:object size:0x1 data:byte -lbl_801D68A4 = .sbss2:0x801D68A4; // type:object size:0x1 data:byte -lbl_801D68A5 = .sbss2:0x801D68A5; // type:object size:0x1 data:byte -lbl_801D68A6 = .sbss2:0x801D68A6; // type:object size:0x1 data:byte -lbl_801D68A7 = .sbss2:0x801D68A7; // type:object size:0x1 data:byte +lbl_801D68A0 = .sbss2:0x801D68A0; // type:object size:0x4 scope:local data:byte +lbl_801D68A4 = .sbss2:0x801D68A4; // type:object size:0x4 scope:local data:byte diff --git a/include/game/hsfdraw.h b/include/game/hsfdraw.h index 12d6e179..94b16a6b 100755 --- a/include/game/hsfdraw.h +++ b/include/game/hsfdraw.h @@ -44,10 +44,19 @@ typedef struct hsf_const_data { AnimData *hiliteMap; } HsfConstData; +typedef struct hsf_draw_object { + /* 0x00 */ ModelData *model; + /* 0x04 */ HsfObject *object; + /* 0x08 */ float z; + /* 0x0C */ Mtx matrix; + /* 0x3C */ Vec scale; +} HsfDrawObject; + void Hu3DDrawPreInit(void); void Hu3DDraw(ModelData *arg0, Mtx arg1, Vec *arg2); s32 ObjCullCheck(HsfData *arg0, HsfObject *arg1, Mtx arg2); +void FaceDraw(HsfDrawObject *arg0, HsfFace *arg1); void Hu3DDrawPost(void); void MakeDisplayList(s16 arg0, u32 arg1); HsfConstData *ObjConstantMake(HsfObject *arg0, u32 arg1); diff --git a/src/game/hsfdraw.c b/src/game/hsfdraw.c index 37e7aa16..5320607c 100755 --- a/src/game/hsfdraw.c +++ b/src/game/hsfdraw.c @@ -8,17 +8,8 @@ #include "ext_math.h" #include "string.h" -typedef struct hsf_draw_object { - /* 0x00 */ ModelData *model; - /* 0x04 */ HsfObject *object; - /* 0x08 */ float z; - /* 0x0C */ Mtx matrix; - /* 0x3C */ Vec scale; -} HsfDrawObject; - static void objCall(ModelData *arg0, HsfObject *arg1); static void objMesh(ModelData *arg0, HsfObject *arg1); -static void FaceDraw(HsfDrawObject *arg0, HsfFace *arg1); static s32 SetTevStageNoTex(HsfDrawObject *arg0, HsfMaterial *arg1); static void SetTevStageTex(HsfDrawObject *arg0, HsfMaterial *arg1); static GXTevKColorSel SetKColor(GXTevStageID arg0, u8 arg1); From de4be8b36814c41c98230c0ef7789a50ca022300 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 25 Nov 2024 20:37:29 +0100 Subject: [PATCH 042/178] Correct configure.py matchings --- configure.py | 358 +++++++++++++++++++++++++-------------------------- 1 file changed, 179 insertions(+), 179 deletions(-) diff --git a/configure.py b/configure.py index ea943200..c9980073 100644 --- a/configure.py +++ b/configure.py @@ -374,85 +374,85 @@ config.libs = [ "cflags": cflags_game, "host": False, "objects": [ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/pad.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/dvd.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/data.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/decode.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/font.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/init.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/jmp.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/malloc.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/memory.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/printfunc.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/process.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/sprman.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/sprput.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfload.c"), + Object(Matching, "game/main.c"), + Object(Matching, "game/pad.c"), + Object(Matching, "game/dvd.c"), + Object(Matching, "game/data.c"), + Object(Matching, "game/decode.c"), + Object(Matching, "game/font.c"), + Object(Matching, "game/init.c"), + Object(Matching, "game/jmp.c"), + Object(Matching, "game/malloc.c"), + Object(Matching, "game/memory.c"), + Object(Matching, "game/printfunc.c"), + Object(Matching, "game/process.c"), + Object(Matching, "game/sprman.c"), + Object(Matching, "game/sprput.c"), + Object(Matching, "game/hsfload.c"), Object(NonMatching, "game/hsfdraw.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfman.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfmotion.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfanim.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/hsfex.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/perf.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objmain.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/fault.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/gamework.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objsysobj.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objdll.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/frand.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/audio.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/EnvelopeExec.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/minigame_seq.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/ovllist.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/esprite.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/code_8003FF68.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/ClusterExec.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/ShapeExec.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/wipe.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/window.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/messdata.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/card.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/armem.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/chrman.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/mapspace.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/THPSimple.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/THPDraw.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/thpmain.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objsub.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/flag.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/saveload.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/sreset.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/model.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/window.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/audio.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/com.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/view.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/space.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/shop.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/lottery.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/basic_space.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/warp.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/char_wheel.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/mushroom.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/star.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/roll.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/ui.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/block.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/bowser.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/battle.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/fortune.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/boo.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/mg_setup.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/boo_house.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/start.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/last5.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/pause.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/com_path.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/tutorial.c"), + Object(Matching, "game/hsfman.c"), + Object(Matching, "game/hsfmotion.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/hsfanim.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/hsfex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/perf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objmain.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/fault.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/gamework.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objsysobj.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objdll.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/frand.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/audio.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/EnvelopeExec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/minigame_seq.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ovllist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/esprite.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/code_8003FF68.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ClusterExec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ShapeExec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/wipe.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/messdata.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/card.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/armem.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/chrman.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/mapspace.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/THPSimple.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/THPDraw.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/thpmain.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objsub.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/flag.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/saveload.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/sreset.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/model.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/audio.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/com.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/view.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/space.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/shop.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/lottery.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/basic_space.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/warp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/char_wheel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/mushroom.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/star.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/roll.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/ui.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/block.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/bowser.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/battle.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/fortune.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/boo.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/mg_setup.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/boo_house.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/start.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/last5.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/pause.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/com_path.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/tutorial.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/kerent.c"), ], }, @@ -822,43 +822,43 @@ config.libs = [ "cflags": cflags_rel, "host": False, "objects": [ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/executor.c"), + Object(Matching, "REL/executor.c"), Object(Matching, "REL/empty.c"), # Must be marked as matching - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/board_executor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/board_executor.c"), ], }, Rel( "_minigameDLL", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/_minigameDLL/_minigameDLL.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/_minigameDLL/_minigameDLL.c"), }, ), Rel( "bootDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/bootDll/nintendo_data.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/bootDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/bootDll/nintendo_data.c"), }, ), Rel( "E3setupDLL", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/mgselect.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/E3setupDLL/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/E3setupDLL/mgselect.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/E3setupDLL/main.c"), }, ), Rel( "instDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/instDll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/instDll/font.c"), }, ), Rel( "m401Dll", # Manta Rings objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m401Dll/main_ex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m401Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m401Dll/main_ex.c"), }, ), Rel( @@ -996,19 +996,19 @@ config.libs = [ Rel( "m420dll", # Fish n' Drips objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m420dll/rand.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/rand.c"), }, ), Rel( "m421Dll", # Hop or Pop objects={ - Object(Matching, "REL/m421Dll/main.c"), - Object(Matching, "REL/m421Dll/player.c"), - Object(Matching, "REL/m421Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m421Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m421Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m421Dll/map.c"), }, ), Rel( @@ -1064,7 +1064,7 @@ config.libs = [ Rel( "m429Dll", # Team Treasure Trek objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m429Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m429Dll/main.c"), }, ), Rel( @@ -1078,14 +1078,14 @@ config.libs = [ Rel( "m431Dll", # Order Up objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m431Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m431Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m431Dll/object.c"), }, ), Rel( "m432Dll", # Dungeon Duos objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m432Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m432Dll/main.c"), }, ), Rel( @@ -1099,10 +1099,10 @@ config.libs = [ Rel( "m434Dll", # Cheep Cheep Sweep objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m434Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m434Dll/map.c"), Object(NonMatching, "REL/m434Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m434Dll/fish.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m434Dll/fish.c"), }, ), Rel( @@ -1115,15 +1115,15 @@ config.libs = [ Rel( "m436Dll", # Fruits of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m436Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m436Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m436Dll/sequence.c"), }, ), Rel( "m437Dll", # Balloon of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m437Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m437Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m437Dll/sequence.c"), }, ), Rel( @@ -1137,26 +1137,26 @@ config.libs = [ Rel( "m439Dll", # Paths of Peril objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m439Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m439Dll/main.c"), }, ), Rel( "m440Dll", # Bowser's Bigger Blast objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m440Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m440Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m440Dll/object.c"), }, ), Rel( "m441Dll", # Butterfly Blitz objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m441Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m441Dll/main.c"), }, ), Rel( "m442Dll", # Barrel Baron objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m442Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/score.c"), }, ), @@ -1222,7 +1222,7 @@ config.libs = [ Rel( "m450Dll", # The Final Battle! objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m450Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m450Dll/main.c"), }, ), Rel( @@ -1301,8 +1301,8 @@ config.libs = [ Rel( "mentDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/common.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mentDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/mentDll/common.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/mentDll/main.c"), }, ), Rel( @@ -1327,9 +1327,9 @@ config.libs = [ Rel( "modeltestDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest00.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeltestDll/modeltest01.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeltestDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeltestDll/modeltest00.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeltestDll/modeltest01.c"), }, ), Rel( @@ -1344,9 +1344,9 @@ config.libs = [ Rel( "mpexDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mpex.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/charsel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/mpexDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/mpexDll/mpex.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/mpexDll/charsel.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mpexDll/mgname.c"), }, ), @@ -1398,25 +1398,25 @@ config.libs = [ Rel( "option", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/scene.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/room.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/guide.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/state.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/rumble.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/sound.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/record.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/option/window.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/scene.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/room.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/guide.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/state.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/rumble.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/sound.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/record.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/option/window.c"), }, ), Rel( "present", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/init.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/present.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/present/common.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/init.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/present.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/common.c"), }, ), Rel( @@ -1430,19 +1430,19 @@ config.libs = [ Rel( "safDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/safDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/safDll/main.c"), }, ), Rel( "selmenuDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/selmenuDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/selmenuDll/main.c"), }, ), Rel( "staffDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/staffDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/staffDll/main.c"), }, ), Rel( @@ -1454,87 +1454,87 @@ config.libs = [ Rel( "w01Dll", # Toad's Midway Madness objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w01Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w01Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w01Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w01Dll/mg_item.c"), }, ), Rel( "w02Dll", # Goomba's Greedy Gala objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/gendice.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/gamble.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/shuffleboard.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w02Dll/roulette.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/gendice.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/gamble.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/shuffleboard.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/roulette.c"), }, ), Rel( "w03Dll", # Shy Guy's Jungle Jam objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/statue.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/condor.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/river.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/smoke.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w03Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/statue.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/condor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/river.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/smoke.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/mg_item.c"), }, ), Rel( "w04Dll", # Boo's Haunted Bash objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/bridge.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/boo_event.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/big_boo.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w04Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/bridge.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/boo_event.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/big_boo.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/mg_coin.c"), }, ), Rel( "w05Dll", # Koopa's Seaside Soiree objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/hotel.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/monkey.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/dolphin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w05Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/hotel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/monkey.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/dolphin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/mg_coin.c"), }, ), Rel( "w06Dll", # Bowser's Gnarly Party objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/fire.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/bridge.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w06Dll/bowser.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/mg_item.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/mg_coin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/fire.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/bridge.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/bowser.c"), }, ), Rel( "w10Dll", # Tutorial board objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/host.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/scene.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w10Dll/tutorial.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/host.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/scene.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/tutorial.c"), }, ), Rel( "w20Dll", # Mega Board Mayhem objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w20Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w20Dll/main.c"), }, ), Rel( "w21Dll", # Mini Board Mad Dash objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/w21Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w21Dll/main.c"), }, ), Rel( From 88c09b8f5f9a06256b946e27a03e5e44d032cb8c Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 25 Nov 2024 22:37:02 +0100 Subject: [PATCH 043/178] Split Japanese DOL till audio.c --- config/GMPE01_01/symbols.txt | 2 +- config/GMPJ01_00/config.yml | 3 + config/GMPJ01_00/splits.txt | 62 ++++++ config/GMPJ01_00/symbols.txt | 352 +++++++++++++++++------------------ configure.py | 20 +- include/ovl_table.h | 11 +- 6 files changed, 262 insertions(+), 188 deletions(-) diff --git a/config/GMPE01_01/symbols.txt b/config/GMPE01_01/symbols.txt index b85b7174..a14c4673 100644 --- a/config/GMPE01_01/symbols.txt +++ b/config/GMPE01_01/symbols.txt @@ -475,7 +475,7 @@ Hu3DParticleAttrSet = .text:0x8002A544; // type:function size:0x40 Hu3DParticleAttrReset = .text:0x8002A584; // type:function size:0x44 Hu3DParticleCntSet = .text:0x8002A5C8; // type:function size:0x3C Hu3DParticleAnimModeSet = .text:0x8002A604; // type:function size:0x60 -_Hu3DParticleAttrReset = .text:0x8002A664; // type:function size:0xAD4 scope:local +particleFunc = .text:0x8002A664; // type:function size:0xAD4 scope:local Hu3DParManInit = .text:0x8002B138; // type:function size:0x48 Hu3DParManCreate = .text:0x8002B180; // type:function size:0x1D4 Hu3DParManLink = .text:0x8002B354; // type:function size:0x17C diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index e484b407..92defe35 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -545,3 +545,6 @@ extract: - symbol: hiliteData4 binary: hiliteData4.anm header: hiliteData4.inc +- symbol: Ascii8x8_1bpp + binary: Ascii8x8_1bpp.bin + header: Ascii8x8_1bpp.inc diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index 7e02c8f8..e3b4c039 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -126,3 +126,65 @@ game/hsfmotion.c: .bss start:0x8018D070 end:0x8018D870 .sbss start:0x801D3920 end:0x801D3928 .sdata2 start:0x801D47D0 end:0x801D4820 + +game/hsfanim.c: + .text start:0x80028B04 end:0x8002CB74 + .data start:0x8012D418 end:0x8012D4D8 + .bss start:0x8018D870 end:0x8018F430 + .sdata2 start:0x801D4820 end:0x801D48A8 + +game/hsfex.c: + .text start:0x8002CB74 end:0x8002E74C + .data start:0x8012D4D8 end:0x8012D4F8 + .sdata2 start:0x801D48A8 end:0x801D4938 + +game/perf.c: + .text start:0x8002E74C end:0x8002EBD8 + .bss start:0x8018F430 end:0x8018F7D8 + .sdata start:0x801D3128 end:0x801D3138 + .sbss start:0x801D3928 end:0x801D3980 + +game/objmain.c: + .text start:0x8002EBD8 end:0x8002FF4C + .data start:0x8012D4F8 end:0x8012D8A8 + .bss start:0x8018F7D8 end:0x8018F898 + .sdata start:0x801D3138 end:0x801D3140 + .sbss start:0x801D3980 end:0x801D39B0 + .sdata2 start:0x801D4938 end:0x801D4960 + +game/fault.c: + .text start:0x8002FF4C end:0x800308B8 + .data start:0x8012D8A8 end:0x8012E0D0 + .bss start:0x8018F898 end:0x8018F8B0 + .sdata start:0x801D3140 end:0x801D3150 + .sbss start:0x801D39B0 end:0x801D39C0 + +game/gamework.c: + .text start:0x800308B8 end:0x800315BC + .rodata start:0x8011D910 end:0x8011D930 + .bss start:0x8018F8B0 end:0x8018FCA8 + +game/objsysobj.c: + .text start:0x800315BC end:0x80031DB4 + .bss start:0x8018FCA8 end:0x8018FE80 + .sbss start:0x801D39C0 end:0x801D39C8 + .sdata2 start:0x801D4960 end:0x801D4970 + +game/objdll.c: + .text start:0x80031DB4 end:0x800325F4 + .data start:0x8012E0D0 end:0x8012E568 + .bss start:0x8018FE80 end:0x8018FED0 + .sbss start:0x801D39C8 end:0x801D39D0 + +game/frand.c: + .text start:0x800325F4 end:0x80032830 + .sbss start:0x801D39D0 end:0x801D39D8 + .sdata2 start:0x801D4970 end:0x801D4980 + +game/audio.c: + .text start:0x80032830 end:0x80033EEC + .data start:0x8012E568 end:0x8012ED10 + .bss start:0x8018FED0 end:0x801900F0 + .sdata start:0x801D3150 end:0x801D3158 + .sbss start:0x801D39D8 end:0x801D3A08 + .sdata2 start:0x801D4980 end:0x801D4990 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index cb430d79..65e081fc 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -476,7 +476,7 @@ Hu3DParticleAttrSet = .text:0x8002A544; // type:function size:0x40 Hu3DParticleAttrReset = .text:0x8002A584; // type:function size:0x44 Hu3DParticleCntSet = .text:0x8002A5C8; // type:function size:0x3C Hu3DParticleAnimModeSet = .text:0x8002A604; // type:function size:0x60 -_Hu3DParticleAttrReset = .text:0x8002A664; // type:function size:0xAD4 scope:local +particleFunc = .text:0x8002A664; // type:function size:0xAD4 scope:local Hu3DParManInit = .text:0x8002B138; // type:function size:0x48 Hu3DParManCreate = .text:0x8002B180; // type:function size:0x1D4 Hu3DParManLink = .text:0x8002B354; // type:function size:0x17C @@ -3592,7 +3592,7 @@ __fini_cpp_exceptions_reference = .dtors:0x8011D8C4; // type:object size:0x4 sco lbl_8011D8E0 = .rodata:0x8011D8E0; // type:object size:0x10 scope:local data:4byte lbl_8011D8F0 = .rodata:0x8011D8F0; // type:object size:0x10 scope:local data:4byte lbl_8011D900 = .rodata:0x8011D900; // type:object size:0x10 scope:local data:4byte -lbl_8011D910 = .rodata:0x8011D910; // type:object size:0x20 data:byte +lbl_8011D910 = .rodata:0x8011D910; // type:object size:0x20 scope:local data:byte lbl_8011D930 = .rodata:0x8011D930; // type:object size:0x10 data:4byte lbl_8011D940 = .rodata:0x8011D940; // type:object size:0x24 data:4byte lbl_8011D964 = .rodata:0x8011D964; // type:object size:0xC data:4byte @@ -3878,36 +3878,37 @@ jumptable_8012D270 = .data:0x8012D270; // type:object size:0x2C scope:local jumptable_8012D29C = .data:0x8012D29C; // type:object size:0x68 scope:local jumptable_8012D304 = .data:0x8012D304; // type:object size:0xF0 scope:local jumptable_8012D3F4 = .data:0x8012D3F4; // type:object size:0x20 scope:local -lbl_8012D418 = .data:0x8012D418; // type:object size:0x15 data:string -lbl_8012D42D = .data:0x8012D42D; // type:object size:0x1F data:string -lbl_8012D44C = .data:0x8012D44C; // type:object size:0x18 -lbl_8012D464 = .data:0x8012D464; // type:object size:0x30 -lbl_8012D494 = .data:0x8012D494; // type:object size:0x20 -lbl_8012D4B4 = .data:0x8012D4B4; // type:object size:0x24 +lbl_8012D418 = .data:0x8012D418; // type:object size:0x15 scope:local data:string +lbl_8012D42D = .data:0x8012D42D; // type:object size:0x1F scope:local data:string +lbl_8012D44C = .data:0x8012D44C; // type:object size:0x18 scope:local +basePos = .data:0x8012D464; // type:object size:0x30 scope:local +baseST = .data:0x8012D494; // type:object size:0x20 scope:local +jitterTbl = .data:0x8012D4B4; // type:object size:0x24 scope:local jumptable_8012D4D8 = .data:0x8012D4D8; // type:object size:0x1C scope:local -lbl_8012D4F8 = .data:0x8012D4F8; // type:object size:0xCA -lbl_8012D5C2 = .data:0x8012D5C2; // type:object size:0x1C data:string -lbl_8012D5DE = .data:0x8012D5DE; // type:object size:0x1C data:string -lbl_8012D5FA = .data:0x8012D5FA; // type:object size:0x1D data:string -lbl_8012D617 = .data:0x8012D617; // type:object size:0x18 data:string -lbl_8012D62F = .data:0x8012D62F; // type:object size:0xC data:string -lbl_8012D63B = .data:0x8012D63B; // type:object size:0x45 -lbl_8012D680 = .data:0x8012D680; // type:object size:0x45 -lbl_8012D6C5 = .data:0x8012D6C5; // type:object size:0x19 data:string -lbl_8012D6DE = .data:0x8012D6DE; // type:object size:0x17 data:string -lbl_8012D6F5 = .data:0x8012D6F5; // type:object size:0x1B3 -lbl_8012D8A8 = .data:0x8012D8A8; // type:object size:0xF data:byte -lbl_8012D8B7 = .data:0x8012D8B7; // type:object size:0x800 -lbl_8012E0B7 = .data:0x8012E0B7; // type:object size:0x19 -lbl_8012E0D0 = .data:0x8012E0D0; // type:object size:0x21A -lbl_8012E2EA = .data:0x8012E2EA; // type:object size:0xB data:string -lbl_8012E2F5 = .data:0x8012E2F5; // type:object size:0x273 -lbl_8012E568 = .data:0x8012E568; // type:object size:0x12 data:string -lbl_8012E57A = .data:0x8012E57A; // type:object size:0xD6 -lbl_8012E650 = .data:0x8012E650; // type:object size:0x644 -lbl_8012EC94 = .data:0x8012EC94; // type:object size:0x11 data:string -lbl_8012ECA5 = .data:0x8012ECA5; // type:object size:0x3A -lbl_8012ECDF = .data:0x8012ECDF; // type:object size:0x31 +lbl_8012D4F8 = .data:0x8012D4F8; // type:object size:0xCA scope:local +lbl_8012D5C2 = .data:0x8012D5C2; // type:object size:0x1C scope:local data:string +lbl_8012D5DE = .data:0x8012D5DE; // type:object size:0x1C scope:local data:string +lbl_8012D5FA = .data:0x8012D5FA; // type:object size:0x1D scope:local data:string +lbl_8012D617 = .data:0x8012D617; // type:object size:0x18 scope:local data:string +lbl_8012D62F = .data:0x8012D62F; // type:object size:0xC scope:local data:string +lbl_8012D63B = .data:0x8012D63B; // type:object size:0x45 scope:local +lbl_8012D680 = .data:0x8012D680; // type:object size:0x45 scope:local +lbl_8012D6C5 = .data:0x8012D6C5; // type:object size:0x19 scope:local data:string +lbl_8012D6DE = .data:0x8012D6DE; // type:object size:0x17 scope:local data:string +lbl_8012D6F5 = .data:0x8012D6F5; // type:object size:0x1B3 scope:local +XFB_Colors = .data:0x8012D8A8; // type:object size:0xF scope:local data:byte +Ascii8x8_1bpp = .data:0x8012D8B7; // type:object size:0x800 scope:local align:1 +lbl_8012E0B7 = .data:0x8012E0B7; // type:object size:0x19 scope:local +lbl_8012E0D0 = .data:0x8012E0D0; // type:object size:0x21A scope:local +lbl_8012E2EA = .data:0x8012E2EA; // type:object size:0xB scope:local data:string +lbl_8012E2F5 = .data:0x8012E2F5; // type:object size:0x273 scope:local +lbl_8012E568 = .data:0x8012E568; // type:object size:0x12 scope:local data:string +lbl_8012E57A = .data:0x8012E57A; // type:object size:0xD6 scope:local +sndGrpTable = .data:0x8012E650; // type:object size:0x5B0 +lbl_8012ec00 = .data:0x8012EC00; // type:object size:0x94 scope:local +lbl_8012EC94 = .data:0x8012EC94; // type:object size:0x11 scope:local data:string +lbl_8012ECA5 = .data:0x8012ECA5; // type:object size:0x3A scope:local +lbl_8012ECDF = .data:0x8012ECDF; // type:object size:0x31 scope:local lbl_8012ED10 = .data:0x8012ED10; // type:object size:0x1DC lbl_8012EEEC = .data:0x8012EEEC; // type:object size:0x18 lbl_8012EF04 = .data:0x8012EF04; // type:object size:0x120 @@ -4396,25 +4397,26 @@ Hu3DCameraMtxXPose = .bss:0x8018C56C; // type:object size:0x30 Hu3DGlobalLight = .bss:0x8018C59C; // type:object size:0x220 data:2byte Hu3DLocalLight = .bss:0x8018C7BC; // type:object size:0x880 data:2byte Hu3DMotion = .bss:0x8018D070; // type:object size:0x800 data:2byte -lbl_8018D870 = .bss:0x8018D870; // type:object size:0x1400 data:2byte -lbl_8018EC70 = .bss:0x8018EC70; // type:object size:0x6C0 data:2byte -lbl_8018F330 = .bss:0x8018F330; // type:object size:0x100 -lbl_8018F430 = .bss:0x8018F430; // type:object size:0x370 -lbl_8018F7A0 = .bss:0x8018F7A0; // type:object size:0x38 -lbl_8018F7D8 = .bss:0x8018F7D8; // type:object size:0xC0 -lbl_8018F898 = .bss:0x8018F898; // type:object size:0x18 +Hu3DTexAnimData = .bss:0x8018D870; // type:object size:0x1400 data:2byte +Hu3DTexScrData = .bss:0x8018EC70; // type:object size:0x6C0 data:2byte +parManProc = .bss:0x8018F330; // type:object size:0x100 scope:local +perf = .bss:0x8018F430; // type:object size:0x370 scope:local +Ssw = .bss:0x8018F7A0; // type:object size:0x38 scope:local +omovlhis = .bss:0x8018F7D8; // type:object size:0xC0 scope:local +XFB_Geometry = .bss:0x8018F898; // type:object size:0x18 scope:local GWPlayerCfg = .bss:0x8018F8B0; // type:object size:0x28 -lbl_8018F8D8 = .bss:0x8018F8D8; // type:object size:0xC0 data:byte -lbl_8018F998 = .bss:0x8018F998; // type:object size:0xE0 data:byte -lbl_8018FA78 = .bss:0x8018FA78; // type:object size:0x230 -lbl_8018FCA8 = .bss:0x8018FCA8; // type:object size:0xC data:float -lbl_8018FCB4 = .bss:0x8018FCB4; // type:object size:0xC data:float -lbl_8018FCC0 = .bss:0x8018FCC0; // type:object size:0xC0 -lbl_8018FD80 = .bss:0x8018FD80; // type:object size:0xC0 -lbl_8018FE40 = .bss:0x8018FE40; // type:object size:0x40 -lbl_8018FE80 = .bss:0x8018FE80; // type:object size:0x50 -lbl_8018FED0 = .bss:0x8018FED0; // type:object size:0x200 -lbl_801900D0 = .bss:0x801900D0; // type:object size:0x20 +GWPlayer = .bss:0x8018F8D8; // type:object size:0xC0 data:byte +GWSystem = .bss:0x8018F998; // type:object size:0xDC data:byte +GWGameStat = .bss:0x8018FA78; // type:object size:0x118 +GWGameStatDefault = .bss:0x8018FB90; // type:object size:0x118 +CRot = .bss:0x8018FCA8; // type:object size:0xC data:float +Center = .bss:0x8018FCB4; // type:object size:0xC data:float +CRotM = .bss:0x8018FCC0; // type:object size:0xC0 +CenterM = .bss:0x8018FD80; // type:object size:0xC0 +CZoomM = .bss:0x8018FE40; // type:object size:0x40 +omDLLinfoTbl = .bss:0x8018FE80; // type:object size:0x50 +sndFXBuf = .bss:0x8018FED0; // type:object size:0x200 scope:local +charVoiceGroupStat = .bss:0x801900D0; // type:object size:0x20 lbl_801900F0 = .bss:0x801900F0; // type:object size:0x400 data:4byte lbl_801904F0 = .bss:0x801904F0; // type:object size:0x10 data:2byte lbl_80190500 = .bss:0x80190500; // type:object size:0x600 data:2byte @@ -4422,7 +4424,7 @@ lbl_80190B00 = .bss:0x80190B00; // type:object size:0x1200 data:4byte lbl_80191D00 = .bss:0x80191D00; // type:object size:0x100 lbl_80191E00 = .bss:0x80191E00; // type:object size:0x100 lbl_80191F00 = .bss:0x80191F00; // type:object size:0x100 -lbl_80192000 = .bss:0x80192000; // type:object size:0x60 data:4byte +wipeData = .bss:0x80192000; // type:object size:0x60 data:4byte lbl_80192060 = .bss:0x80192060; // type:object size:0x3000 data:byte lbl_80195060 = .bss:0x80195060; // type:object size:0x10 lbl_80195070 = .bss:0x80195070; // type:object size:0x1410 @@ -4633,14 +4635,14 @@ oneceF = .sdata:0x801D3110; // type:object size:0x2 scope:local data:2byte firstTev = .sdata:0x801D3112; // type:object size:0x4 scope:local secondTev = .sdata:0x801D3116; // type:object size:0x4 scope:local lbl_801D311A = .sdata:0x801D311A; // type:object size:0xE scope:local -lbl_801D3128 = .sdata:0x801D3128; // type:object size:0x4 data:string -lbl_801D312C = .sdata:0x801D312C; // type:object size:0xC -lbl_801D3138 = .sdata:0x801D3138; // type:object size:0x1 data:byte -lbl_801D313C = .sdata:0x801D313C; // type:object size:0x4 data:4byte -lbl_801D3140 = .sdata:0x801D3140; // type:object size:0x4 data:4byte -lbl_801D3144 = .sdata:0x801D3144; // type:object size:0xC -lbl_801D3150 = .sdata:0x801D3150; // type:object size:0x1 -lbl_801D3151 = .sdata:0x801D3151; // type:object size:0x7 +lbl_801D3128 = .sdata:0x801D3128; // type:object size:0x4 scope:local data:string +lbl_801D312C = .sdata:0x801D312C; // type:object size:0xC scope:local +omSysPauseEnableFlag = .sdata:0x801D3138; // type:object size:0x1 data:byte +omprevovl = .sdata:0x801D313C; // type:object size:0x4 data:4byte +titleMes = .sdata:0x801D3140; // type:object size:0x4 scope:local data:4byte +lbl_801D3144 = .sdata:0x801D3144; // type:object size:0xC scope:local +lbl_801D3150 = .sdata:0x801D3150; // type:object size:0x1 scope:local +lbl_801D3151 = .sdata:0x801D3151; // type:object size:0x7 scope:local lbl_801D3158 = .sdata:0x801D3158; // type:object size:0x4 data:4byte lbl_801D315C = .sdata:0x801D315C; // type:object size:0x7 data:string lbl_801D3163 = .sdata:0x801D3163; // type:object size:0x1 data:byte @@ -5048,66 +5050,64 @@ toonAnim = .sbss:0x801D3914; // type:object size:0x4 data:4byte reflectMapNo = .sbss:0x801D3918; // type:object size:0x2 data:2byte BGColor = .sbss:0x801D391A; // type:object size:0x4 data:byte bitMapPtr = .sbss:0x801D3920; // type:object size:0x4 scope:local data:4byte -metf = .sbss:0x801D3928; // type:object size:0x1 data:byte -tokenEndF = .sbss:0x801D392A; // type:object size:0x2 data:2byte -total_copy_clks = .sbss:0x801D392C; // type:object size:0x4 data:4byte -clr_pixels_in = .sbss:0x801D3930; // type:object size:0x4 -lbl_801D3934 = .sbss:0x801D3934; // type:object size:0x4 -lbl_801D3938 = .sbss:0x801D3938; // type:object size:0x4 -lbl_801D393C = .sbss:0x801D393C; // type:object size:0x4 -lbl_801D3940 = .sbss:0x801D3940; // type:object size:0x4 -lbl_801D3944 = .sbss:0x801D3944; // type:object size:0x4 -lbl_801D3948 = .sbss:0x801D3948; // type:object size:0x4 -lbl_801D394C = .sbss:0x801D394C; // type:object size:0x4 -lbl_801D3950 = .sbss:0x801D3950; // type:object size:0x4 -lbl_801D3954 = .sbss:0x801D3954; // type:object size:0x4 -lbl_801D3958 = .sbss:0x801D3958; // type:object size:0x4 -lbl_801D395C = .sbss:0x801D395C; // type:object size:0x4 -lbl_801D3960 = .sbss:0x801D3960; // type:object size:0x4 -lbl_801D3964 = .sbss:0x801D3964; // type:object size:0x4 -lbl_801D3968 = .sbss:0x801D3968; // type:object size:0x4 -lbl_801D396C = .sbss:0x801D396C; // type:object size:0x4 -lbl_801D3970 = .sbss:0x801D3970; // type:object size:0x4 -lbl_801D3974 = .sbss:0x801D3974; // type:object size:0x4 -lbl_801D3978 = .sbss:0x801D3978; // type:object size:0x4 -lbl_801D397C = .sbss:0x801D397C; // type:object size:0x4 -lbl_801D3980 = .sbss:0x801D3980; // type:object size:0x2 data:2byte -lbl_801D3982 = .sbss:0x801D3982; // type:object size:0x2 data:2byte -lbl_801D3984 = .sbss:0x801D3984; // type:object size:0x1 data:byte -lbl_801D3988 = .sbss:0x801D3988; // type:object size:0x4 data:4byte -lbl_801D398C = .sbss:0x801D398C; // type:object size:0x4 data:4byte -lbl_801D3990 = .sbss:0x801D3990; // type:object size:0x4 data:4byte -lbl_801D3994 = .sbss:0x801D3994; // type:object size:0x4 data:4byte -lbl_801D3998 = .sbss:0x801D3998; // type:object size:0x4 data:4byte -lbl_801D399C = .sbss:0x801D399C; // type:object size:0x4 data:4byte -lbl_801D39A0 = .sbss:0x801D39A0; // type:object size:0x4 data:4byte -lbl_801D39A4 = .sbss:0x801D39A4; // type:object size:0x4 data:4byte -lbl_801D39A8 = .sbss:0x801D39A8; // type:object size:0x4 data:4byte -lbl_801D39AC = .sbss:0x801D39AC; // type:object size:0x4 data:4byte -lbl_801D39B0 = .sbss:0x801D39B0; // type:object size:0x4 data:4byte -lbl_801D39B4 = .sbss:0x801D39B4; // type:object size:0x4 data:4byte -lbl_801D39B8 = .sbss:0x801D39B8; // type:object size:0x1 data:byte -lbl_801D39B9 = .sbss:0x801D39B9; // type:object size:0x1 data:byte -lbl_801D39BA = .sbss:0x801D39BA; // type:object size:0x1 data:byte -lbl_801D39BC = .sbss:0x801D39BC; // type:object size:0x4 data:4byte -lbl_801D39C0 = .sbss:0x801D39C0; // type:object size:0x4 -lbl_801D39C4 = .sbss:0x801D39C4; // type:object size:0x4 data:float -lbl_801D39C8 = .sbss:0x801D39C8; // type:object size:0x8 data:4byte -lbl_801D39D0 = .sbss:0x801D39D0; // type:object size:0x8 data:4byte -lbl_801D39D8 = .sbss:0x801D39D8; // type:object size:0x1 data:byte -lbl_801D39DC = .sbss:0x801D39DC; // type:object size:0x4 data:4byte -lbl_801D39E0 = .sbss:0x801D39E0; // type:object size:0x4 data:float -lbl_801D39E4 = .sbss:0x801D39E4; // type:object size:0x4 data:float -lbl_801D39E8 = .sbss:0x801D39E8; // type:object size:0x4 data:float -lbl_801D39EC = .sbss:0x801D39EC; // type:object size:0x4 data:float -lbl_801D39F0 = .sbss:0x801D39F0; // type:object size:0x4 data:float -lbl_801D39F4 = .sbss:0x801D39F4; // type:object size:0x1 data:byte -lbl_801D39F5 = .sbss:0x801D39F5; // type:object size:0x1 data:byte -lbl_801D39F8 = .sbss:0x801D39F8; // type:object size:0x4 data:4byte -lbl_801D39FC = .sbss:0x801D39FC; // type:object size:0x4 data:4byte -lbl_801D3A00 = .sbss:0x801D3A00; // type:object size:0x2 data:2byte -lbl_801D3A02 = .sbss:0x801D3A02; // type:object size:0x6 data:2byte -lbl_801D3A08 = .sbss:0x801D3A08; // type:object size:0x4 data:4byte +metf = .sbss:0x801D3928; // type:object size:0x1 scope:local data:byte +tokenEndF = .sbss:0x801D392A; // type:object size:0x2 scope:local data:2byte +total_copy_clks = .sbss:0x801D392C; // type:object size:0x4 scope:local data:4byte +clr_pixels_in = .sbss:0x801D3930; // type:object size:0x4 scope:local +bot_pixels_out = .sbss:0x801D3934; // type:object size:0x4 +bot_pixels_in = .sbss:0x801D3938; // type:object size:0x4 +top_pixels_out = .sbss:0x801D393C; // type:object size:0x4 +top_pixels_in = .sbss:0x801D3940; // type:object size:0x4 +fi_req = .sbss:0x801D3944; // type:object size:0x4 +rf_req = .sbss:0x801D3948; // type:object size:0x4 +pe_req = .sbss:0x801D394C; // type:object size:0x4 +vi_req = .sbss:0x801D3950; // type:object size:0x4 +io_req = .sbss:0x801D3954; // type:object size:0x4 +dsp_req = .sbss:0x801D3958; // type:object size:0x4 +cpu_wr_req = .sbss:0x801D395C; // type:object size:0x4 +cpu_rd_req = .sbss:0x801D3960; // type:object size:0x4 +tc_req = .sbss:0x801D3964; // type:object size:0x4 +cp_req = .sbss:0x801D3968; // type:object size:0x4 +vstall = .sbss:0x801D396C; // type:object size:0x4 +vmiss = .sbss:0x801D3970; // type:object size:0x4 +vcheck = .sbss:0x801D3974; // type:object size:0x4 +met1 = .sbss:0x801D3978; // type:object size:0x4 +met0 = .sbss:0x801D397C; // type:object size:0x4 +omdispinfo = .sbss:0x801D3980; // type:object size:0x2 data:2byte +omSysExitReq = .sbss:0x801D3982; // type:object size:0x2 data:2byte +omUPauseFlag = .sbss:0x801D3984; // type:object size:0x1 data:byte +omnextovlstat = .sbss:0x801D3988; // type:object size:0x4 scope:local data:4byte +omovlstat = .sbss:0x801D398C; // type:object size:0x4 data:4byte +omnextovlevtno = .sbss:0x801D3990; // type:object size:0x4 data:4byte +omovlevtno = .sbss:0x801D3994; // type:object size:0x4 data:4byte +omovlhisidx = .sbss:0x801D3998; // type:object size:0x4 data:4byte +omcurdll = .sbss:0x801D399C; // type:object size:0x4 data:4byte +omcurovl = .sbss:0x801D39A0; // type:object size:0x4 data:4byte +omnextovl = .sbss:0x801D39A4; // type:object size:0x4 data:4byte +omwatchproc = .sbss:0x801D39A8; // type:object size:0x4 data:4byte +omDBGSysKeyObj = .sbss:0x801D39AC; // type:object size:0x4 data:4byte +y_start = .sbss:0x801D39B0; // type:object size:0x4 scope:local data:4byte +x_start = .sbss:0x801D39B4; // type:object size:0x4 scope:local data:4byte +Draw_Color = .sbss:0x801D39B8; // type:object size:0x3 scope:local data:byte +XFB_putc = .sbss:0x801D39BC; // type:object size:0x4 scope:local data:4byte +omDBGMenuButton = .sbss:0x801D39C0; // type:object size:0x2 +CZoom = .sbss:0x801D39C4; // type:object size:0x4 data:float +omDLLFileList = .sbss:0x801D39C8; // type:object size:0x8 data:4byte +frand_seed = .sbss:0x801D39D0; // type:object size:0x8 scope:local data:4byte +fadeStat = .sbss:0x801D39D8; // type:object size:0x1 data:byte +musicOffF = .sbss:0x801D39DC; // type:object size:0x4 data:4byte +Snd3DDistOffset = .sbss:0x801D39E0; // type:object size:0x4 data:float +Snd3DSpeedOffset = .sbss:0x801D39E4; // type:object size:0x4 data:float +Snd3DStartDisOffset = .sbss:0x801D39E8; // type:object size:0x4 data:float +Snd3DFrontSurDisOffset = .sbss:0x801D39EC; // type:object size:0x4 data:float +Snd3DBackSurDisOffset = .sbss:0x801D39F0; // type:object size:0x4 data:float +HuAuxBVol = .sbss:0x801D39F4; // type:object size:0x1 scope:local data:byte +HuAuxAVol = .sbss:0x801D39F5; // type:object size:0x1 scope:local data:byte +auxBNoBak = .sbss:0x801D39F8; // type:object size:0x4 scope:local data:4byte +auxANoBak = .sbss:0x801D39FC; // type:object size:0x4 scope:local data:4byte +sndGroupBak = .sbss:0x801D3A00; // type:object size:0x2 scope:local data:2byte +Hu3DAudVol = .sbss:0x801D3A02; // type:object size:0x6 scope:local data:2byte +Meshno = .sbss:0x801D3A08; // type:object size:0x4 data:4byte lbl_801D3A0C = .sbss:0x801D3A0C; // type:object size:0x4 data:4byte lbl_801D3A10 = .sbss:0x801D3A10; // type:object size:0x4 data:4byte lbl_801D3A14 = .sbss:0x801D3A14; // type:object size:0x4 data:4byte @@ -5908,66 +5908,66 @@ lbl_801D4808 = .sdata2:0x801D4808; // type:object size:0x8 scope:local data:doub lbl_801D4810 = .sdata2:0x801D4810; // type:object size:0x4 scope:local data:float lbl_801D4814 = .sdata2:0x801D4814; // type:object size:0x4 scope:local data:float lbl_801D4818 = .sdata2:0x801D4818; // type:object size:0x8 scope:local data:float -lbl_801D4820 = .sdata2:0x801D4820; // type:object size:0x4 data:float -lbl_801D4824 = .sdata2:0x801D4824; // type:object size:0x4 data:float -lbl_801D4828 = .sdata2:0x801D4828; // type:object size:0x8 data:double -lbl_801D4830 = .sdata2:0x801D4830; // type:object size:0x4 data:float -lbl_801D4834 = .sdata2:0x801D4834; // type:object size:0x4 data:float -lbl_801D4838 = .sdata2:0x801D4838; // type:object size:0x4 data:float -lbl_801D483C = .sdata2:0x801D483C; // type:object size:0x4 data:float -lbl_801D4840 = .sdata2:0x801D4840; // type:object size:0x8 data:double -lbl_801D4848 = .sdata2:0x801D4848; // type:object size:0x4 data:float -lbl_801D4850 = .sdata2:0x801D4850; // type:object size:0x8 data:double -lbl_801D4858 = .sdata2:0x801D4858; // type:object size:0x8 data:double -lbl_801D4860 = .sdata2:0x801D4860; // type:object size:0x8 data:double -lbl_801D4868 = .sdata2:0x801D4868; // type:object size:0x4 data:float -lbl_801D4870 = .sdata2:0x801D4870; // type:object size:0x8 data:double -lbl_801D4878 = .sdata2:0x801D4878; // type:object size:0x8 data:double -lbl_801D4880 = .sdata2:0x801D4880; // type:object size:0x4 data:float -lbl_801D4888 = .sdata2:0x801D4888; // type:object size:0x8 data:double -lbl_801D4890 = .sdata2:0x801D4890; // type:object size:0x8 data:double -lbl_801D4898 = .sdata2:0x801D4898; // type:object size:0x8 data:double -lbl_801D48A0 = .sdata2:0x801D48A0; // type:object size:0x8 data:double -lbl_801D48A8 = .sdata2:0x801D48A8; // type:object size:0x4 data:float -lbl_801D48AC = .sdata2:0x801D48AC; // type:object size:0x4 data:float -lbl_801D48B0 = .sdata2:0x801D48B0; // type:object size:0x4 data:float -lbl_801D48B4 = .sdata2:0x801D48B4; // type:object size:0x4 data:float -lbl_801D48B8 = .sdata2:0x801D48B8; // type:object size:0x8 data:double -lbl_801D48C0 = .sdata2:0x801D48C0; // type:object size:0x4 data:float -lbl_801D48C8 = .sdata2:0x801D48C8; // type:object size:0x8 data:double -lbl_801D48D0 = .sdata2:0x801D48D0; // type:object size:0x8 data:double -lbl_801D48D8 = .sdata2:0x801D48D8; // type:object size:0x4 data:float -lbl_801D48E0 = .sdata2:0x801D48E0; // type:object size:0x8 data:double -lbl_801D48E8 = .sdata2:0x801D48E8; // type:object size:0x4 data:float -lbl_801D48EC = .sdata2:0x801D48EC; // type:object size:0x4 data:float -lbl_801D48F0 = .sdata2:0x801D48F0; // type:object size:0x4 data:float -lbl_801D48F4 = .sdata2:0x801D48F4; // type:object size:0x4 data:float -lbl_801D48F8 = .sdata2:0x801D48F8; // type:object size:0x8 data:double -lbl_801D4900 = .sdata2:0x801D4900; // type:object size:0x8 data:double -lbl_801D4908 = .sdata2:0x801D4908; // type:object size:0x4 data:float -lbl_801D490C = .sdata2:0x801D490C; // type:object size:0x4 data:float -lbl_801D4910 = .sdata2:0x801D4910; // type:object size:0x8 data:double -lbl_801D4918 = .sdata2:0x801D4918; // type:object size:0x4 data:float -lbl_801D491C = .sdata2:0x801D491C; // type:object size:0x4 data:float -lbl_801D4920 = .sdata2:0x801D4920; // type:object size:0x4 data:float -lbl_801D4924 = .sdata2:0x801D4924; // type:object size:0x4 data:float -lbl_801D4928 = .sdata2:0x801D4928; // type:object size:0x8 data:double -lbl_801D4930 = .sdata2:0x801D4930; // type:object size:0x8 data:double -lbl_801D4938 = .sdata2:0x801D4938; // type:object size:0x4 data:float -lbl_801D493C = .sdata2:0x801D493C; // type:object size:0x4 data:float -lbl_801D4940 = .sdata2:0x801D4940; // type:object size:0x4 data:float -lbl_801D4944 = .sdata2:0x801D4944; // type:object size:0x4 data:float -lbl_801D4948 = .sdata2:0x801D4948; // type:object size:0x4 data:float -lbl_801D494C = .sdata2:0x801D494C; // type:object size:0x4 data:float -lbl_801D4950 = .sdata2:0x801D4950; // type:object size:0x4 data:float -lbl_801D4954 = .sdata2:0x801D4954; // type:object size:0x4 data:float -lbl_801D4958 = .sdata2:0x801D4958; // type:object size:0x4 data:float +lbl_801D4820 = .sdata2:0x801D4820; // type:object size:0x4 scope:local data:float +lbl_801D4824 = .sdata2:0x801D4824; // type:object size:0x4 scope:local data:float +lbl_801D4828 = .sdata2:0x801D4828; // type:object size:0x8 scope:local data:double +lbl_801D4830 = .sdata2:0x801D4830; // type:object size:0x4 scope:local data:float +lbl_801D4834 = .sdata2:0x801D4834; // type:object size:0x4 scope:local data:float +lbl_801D4838 = .sdata2:0x801D4838; // type:object size:0x4 scope:local data:float +lbl_801D483C = .sdata2:0x801D483C; // type:object size:0x4 scope:local data:float +lbl_801D4840 = .sdata2:0x801D4840; // type:object size:0x8 scope:local data:double +lbl_801D4848 = .sdata2:0x801D4848; // type:object size:0x4 scope:local data:float +lbl_801D4850 = .sdata2:0x801D4850; // type:object size:0x8 scope:local data:double +lbl_801D4858 = .sdata2:0x801D4858; // type:object size:0x8 scope:local data:double +lbl_801D4860 = .sdata2:0x801D4860; // type:object size:0x8 scope:local data:double +lbl_801D4868 = .sdata2:0x801D4868; // type:object size:0x4 scope:local data:float +lbl_801D4870 = .sdata2:0x801D4870; // type:object size:0x8 scope:local data:double +lbl_801D4878 = .sdata2:0x801D4878; // type:object size:0x8 scope:local data:double +lbl_801D4880 = .sdata2:0x801D4880; // type:object size:0x4 scope:local data:float +lbl_801D4888 = .sdata2:0x801D4888; // type:object size:0x8 scope:local data:double +lbl_801D4890 = .sdata2:0x801D4890; // type:object size:0x8 scope:local data:double +lbl_801D4898 = .sdata2:0x801D4898; // type:object size:0x8 scope:local data:double +lbl_801D48A0 = .sdata2:0x801D48A0; // type:object size:0x8 scope:local data:double +lbl_801D48A8 = .sdata2:0x801D48A8; // type:object size:0x4 scope:local data:float +lbl_801D48AC = .sdata2:0x801D48AC; // type:object size:0x4 scope:local data:float +lbl_801D48B0 = .sdata2:0x801D48B0; // type:object size:0x4 scope:local data:float +lbl_801D48B4 = .sdata2:0x801D48B4; // type:object size:0x4 scope:local data:float +lbl_801D48B8 = .sdata2:0x801D48B8; // type:object size:0x8 scope:local data:double +lbl_801D48C0 = .sdata2:0x801D48C0; // type:object size:0x4 scope:local data:float +lbl_801D48C8 = .sdata2:0x801D48C8; // type:object size:0x8 scope:local data:double +lbl_801D48D0 = .sdata2:0x801D48D0; // type:object size:0x8 scope:local data:double +lbl_801D48D8 = .sdata2:0x801D48D8; // type:object size:0x4 scope:local data:float +lbl_801D48E0 = .sdata2:0x801D48E0; // type:object size:0x8 scope:local data:double +lbl_801D48E8 = .sdata2:0x801D48E8; // type:object size:0x4 scope:local data:float +lbl_801D48EC = .sdata2:0x801D48EC; // type:object size:0x4 scope:local data:float +lbl_801D48F0 = .sdata2:0x801D48F0; // type:object size:0x4 scope:local data:float +lbl_801D48F4 = .sdata2:0x801D48F4; // type:object size:0x4 scope:local data:float +lbl_801D48F8 = .sdata2:0x801D48F8; // type:object size:0x8 scope:local data:double +lbl_801D4900 = .sdata2:0x801D4900; // type:object size:0x8 scope:local data:double +lbl_801D4908 = .sdata2:0x801D4908; // type:object size:0x4 scope:local data:float +lbl_801D490C = .sdata2:0x801D490C; // type:object size:0x4 scope:local data:float +lbl_801D4910 = .sdata2:0x801D4910; // type:object size:0x8 scope:local data:double +lbl_801D4918 = .sdata2:0x801D4918; // type:object size:0x4 scope:local data:float +lbl_801D491C = .sdata2:0x801D491C; // type:object size:0x4 scope:local data:float +lbl_801D4920 = .sdata2:0x801D4920; // type:object size:0x4 scope:local data:float +lbl_801D4924 = .sdata2:0x801D4924; // type:object size:0x4 scope:local data:float +lbl_801D4928 = .sdata2:0x801D4928; // type:object size:0x8 scope:local data:double +lbl_801D4930 = .sdata2:0x801D4930; // type:object size:0x8 scope:local data:double +lbl_801D4938 = .sdata2:0x801D4938; // type:object size:0x4 scope:local data:float +lbl_801D493C = .sdata2:0x801D493C; // type:object size:0x4 scope:local data:float +lbl_801D4940 = .sdata2:0x801D4940; // type:object size:0x4 scope:local data:float +lbl_801D4944 = .sdata2:0x801D4944; // type:object size:0x4 scope:local data:float +lbl_801D4948 = .sdata2:0x801D4948; // type:object size:0x4 scope:local data:float +lbl_801D494C = .sdata2:0x801D494C; // type:object size:0x4 scope:local data:float +lbl_801D4950 = .sdata2:0x801D4950; // type:object size:0x4 scope:local data:float +lbl_801D4954 = .sdata2:0x801D4954; // type:object size:0x4 scope:local data:float +lbl_801D4958 = .sdata2:0x801D4958; // type:object size:0x4 scope:local data:float lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 data:double lbl_801D4968 = .sdata2:0x801D4968; // type:object size:0x8 data:double -lbl_801D4970 = .sdata2:0x801D4970; // type:object size:0x4 data:float -lbl_801D4978 = .sdata2:0x801D4978; // type:object size:0x8 data:double -lbl_801D4980 = .sdata2:0x801D4980; // type:object size:0x8 data:double -lbl_801D4988 = .sdata2:0x801D4988; // type:object size:0x8 data:double +lbl_801D4970 = .sdata2:0x801D4970; // type:object size:0x4 scope:local data:float +lbl_801D4978 = .sdata2:0x801D4978; // type:object size:0x8 scope:local data:double +lbl_801D4980 = .sdata2:0x801D4980; // type:object size:0x8 scope:local data:double +lbl_801D4988 = .sdata2:0x801D4988; // type:object size:0x8 scope:local data:double lbl_801D4990 = .sdata2:0x801D4990; // type:object size:0x4 data:float lbl_801D4994 = .sdata2:0x801D4994; // type:object size:0x4 data:float lbl_801D4998 = .sdata2:0x801D4998; // type:object size:0x4 data:float diff --git a/configure.py b/configure.py index c9980073..c4097c0a 100644 --- a/configure.py +++ b/configure.py @@ -392,16 +392,16 @@ config.libs = [ Object(NonMatching, "game/hsfdraw.c"), Object(Matching, "game/hsfman.c"), Object(Matching, "game/hsfmotion.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/hsfanim.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/hsfex.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/perf.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objmain.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/fault.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/gamework.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objsysobj.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objdll.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/frand.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/audio.c"), + Object(Matching, "game/hsfanim.c"), + Object(Matching, "game/hsfex.c"), + Object(Matching, "game/perf.c"), + Object(Matching, "game/objmain.c"), + Object(Matching, "game/fault.c"), + Object(Matching, "game/gamework.c"), + Object(Matching, "game/objsysobj.c"), + Object(Matching, "game/objdll.c"), + Object(Matching, "game/frand.c"), + Object(Matching, "game/audio.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/EnvelopeExec.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/minigame_seq.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ovllist.c"), diff --git a/include/ovl_table.h b/include/ovl_table.h index 4f66a2d2..bdd01ccd 100644 --- a/include/ovl_table.h +++ b/include/ovl_table.h @@ -1,3 +1,5 @@ +#include "version.h" + OVL_DEFINE(OVL__MINI, "dll/_minigameDLL.rel") OVL_DEFINE(OVL_BOOT, "dll/bootdll.rel") OVL_DEFINE(OVL_E3SETUP, "dll/e3setupDLL.rel") @@ -69,10 +71,17 @@ OVL_DEFINE(OVL_M461, "dll/m461dll.rel") OVL_DEFINE(OVL_M462, "dll/m462dll.rel") OVL_DEFINE(OVL_M463, "dll/m463dll.rel") OVL_DEFINE(OVL_MENT, "dll/mentdll.rel") +#if VERSION_JAP +OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel") +OVL_DEFINE(OVL_MODELTEST, "dll/modeltestdll.rel") +OVL_DEFINE(OVL_MODESEL, "dll/modeseldll.rel") +OVL_DEFINE(OVL_MOVIE, "dll/movieDll.rel") +#else OVL_DEFINE(OVL_MESS, "dll/messdll.rel") OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel") OVL_DEFINE(OVL_MODELTEST, "dll/modeltestdll.rel") OVL_DEFINE(OVL_MODESEL, "dll/modeseldll.rel") +#endif OVL_DEFINE(OVL_MPEX, "dll/mpexdll.rel") OVL_DEFINE(OVL_MSETUP, "dll/msetupdll.rel") OVL_DEFINE(OVL_MSTORY2, "dll/mstory2dll.rel") @@ -96,4 +105,4 @@ OVL_DEFINE(OVL_W06, "dll/w06dll.rel") OVL_DEFINE(OVL_W10, "dll/w10dll.rel") OVL_DEFINE(OVL_W20, "dll/w20dll.rel") OVL_DEFINE(OVL_W21, "dll/w21dll.rel") -OVL_DEFINE(OVL_ZTAR, "dll/ztardll.rel") \ No newline at end of file +OVL_DEFINE(OVL_ZTAR, "dll/ztardll.rel") From 586ceb55fdfd8e752aa22ab9e27a66dd175c37bd Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 02:15:44 +0100 Subject: [PATCH 044/178] Split Japanese DOL till minigame_seq.c --- config/GMPE01_00/symbols.txt | 44 ++-- config/GMPE01_01/symbols.txt | 54 ++-- config/GMPJ01_00/splits.txt | 13 + config/GMPJ01_00/symbols.txt | 469 ++++++++++++++++++----------------- config/GMPP01_00/symbols.txt | 42 ++-- configure.py | 4 +- include/game/minigame_seq.h | 26 ++ src/game/minigame_seq.c | 303 +++++++++++++--------- 8 files changed, 540 insertions(+), 415 deletions(-) diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index a6e13c9b..25979f04 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -666,29 +666,29 @@ MGSeqKillAll = .text:0x80035A0C; // type:function size:0x3C MGSeqDoneCheck = .text:0x80035A48; // type:function size:0xA4 MGSeqStub = .text:0x80035AEC; // type:function size:0x4 MGSeqSprKill = .text:0x80035AF0; // type:function size:0x8C -SeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 scope:local -SeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C scope:local -SeqInitType2 = .text:0x800364F8; // type:function size:0x3D8 scope:local -SeqUpdateType2 = .text:0x800368D0; // type:function size:0x2F8 scope:local +MGSeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 +MGSeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C +MGSeqInitType2 = .text:0x800364F8; // type:function size:0x3D8 +MGSeqUpdateType2 = .text:0x800368D0; // type:function size:0x2F8 fn_80036BC8 = .text:0x80036BC8; // type:function size:0x188 SeqMakeWord = .text:0x80036D50; // type:function size:0x1D0 scope:local SeqLoadFontChar = .text:0x80036F20; // type:function size:0x26C scope:local -SeqInitMGBasic = .text:0x8003718C; // type:function size:0x194 scope:local -SeqUpdateMGBasic = .text:0x80037320; // type:function size:0x9D0 scope:local -SeqInitMGCommon = .text:0x80037CF0; // type:function size:0x2A4 scope:local -SeqUpdateMGBattle = .text:0x80037F94; // type:function size:0xDA4 scope:local -SeqUpdateMG1vs3 = .text:0x80038D38; // type:function size:0xDA4 scope:local -SeqUpdateMGStory = .text:0x80039ADC; // type:function size:0xBB8 scope:local -SeqUpdateMG2vs2 = .text:0x8003A694; // type:function size:0xAB4 scope:local -SeqInitFlip = .text:0x8003B148; // type:function size:0x3C4 scope:local -SeqUpdateFlip = .text:0x8003B50C; // type:function size:0x91C scope:local -SeqUpdateMGBowser = .text:0x8003BE28; // type:function size:0xC84 scope:local -SeqInitDraw = .text:0x8003CAAC; // type:function size:0xDC scope:local -SeqUpdateDraw = .text:0x8003CB88; // type:function size:0x3DC scope:local -SeqInitWin = .text:0x8003CF64; // type:function size:0x8A0 scope:local -SeqUpdateWin = .text:0x8003D804; // type:function size:0x72C scope:local -SeqInitRecord = .text:0x8003DF30; // type:function size:0x774 scope:local -SeqUpdateRecord = .text:0x8003E6A4; // type:function size:0x304 scope:local +MGSeqInitMGBasic = .text:0x8003718C; // type:function size:0x194 +MGSeqUpdateMGBasic = .text:0x80037320; // type:function size:0x9D0 +MGSeqInitMGCommon = .text:0x80037CF0; // type:function size:0x2A4 +MGSeqUpdateMGBattle = .text:0x80037F94; // type:function size:0xDA4 +MGSeqUpdateMG1vs3 = .text:0x80038D38; // type:function size:0xDA4 +MGSeqUpdateMGStory = .text:0x80039ADC; // type:function size:0xBB8 +MGSeqUpdateMG2vs2 = .text:0x8003A694; // type:function size:0xAB4 +MGSeqInitFlip = .text:0x8003B148; // type:function size:0x3C4 +MGSeqUpdateFlip = .text:0x8003B50C; // type:function size:0x91C +MGSeqUpdateMGBowser = .text:0x8003BE28; // type:function size:0xC84 +MGSeqInitDraw = .text:0x8003CAAC; // type:function size:0xDC +MGSeqUpdateDraw = .text:0x8003CB88; // type:function size:0x3DC +MGSeqInitWin = .text:0x8003CF64; // type:function size:0x8A0 +MGSeqUpdateWin = .text:0x8003D804; // type:function size:0x72C +MGSeqInitRecord = .text:0x8003DF30; // type:function size:0x774 +MGSeqUpdateRecord = .text:0x8003E6A4; // type:function size:0x304 MGSeqPauseInit = .text:0x8003E9A8; // type:function size:0x6C PauseProc = .text:0x8003EA14; // type:function size:0x94C scope:local MGSeqPauseKill = .text:0x8003F360; // type:function size:0xC @@ -3921,7 +3921,7 @@ lbl_8012F0C5 = .data:0x8012F0C5; // type:object size:0x3A lbl_8012F0FF = .data:0x8012F0FF; // type:object size:0x31 seqInfoTbl = .data:0x8012F130; // type:object size:0x1DC scope:local seqType2SprTbl = .data:0x8012F30C; // type:object size:0x18 scope:local -mgSeqTypeTbl = .data:0x8012F324; // type:object size:0x12 scope:local +mgSeqTypeTbl = .data:0x8012F324; // type:object size:0x12 scope:local data:2byte lbl_8012F336 = .data:0x8012F336; // type:object size:0x53 scope:local data:string lbl_8012F389 = .data:0x8012F389; // type:object size:0x9 scope:local data:string lbl_8012F392 = .data:0x8012F392; // type:object size:0x9 scope:local data:string @@ -4916,7 +4916,7 @@ lbl_801D359E = .sdata:0x801D359E; // type:object size:0x5 scope:local data:strin lbl_801D35A3 = .sdata:0x801D35A3; // type:object size:0x7 scope:local lbl_801D35AA = .sdata:0x801D35AA; // type:object size:0x6 scope:local lbl_801D35B0 = .sdata:0x801D35B0; // type:object size:0x6 scope:local data:string -pauseStr$2216 = .sdata:0x801D35B8; // type:object size:0x8 scope:local +pauseStr = .sdata:0x801D35B8; // type:object size:0x8 scope:local lbl_801D35C0 = .sdata:0x801D35C0; // type:object size:0x8 lbl_801D35C8 = .sdata:0x801D35C8; // type:object size:0x8 lbl_801D35D0 = .sdata:0x801D35D0; // type:object size:0x8 diff --git a/config/GMPE01_01/symbols.txt b/config/GMPE01_01/symbols.txt index a14c4673..4a3aaa79 100644 --- a/config/GMPE01_01/symbols.txt +++ b/config/GMPE01_01/symbols.txt @@ -666,29 +666,29 @@ MGSeqKillAll = .text:0x80035A0C; // type:function size:0x3C MGSeqDoneCheck = .text:0x80035A48; // type:function size:0xA4 MGSeqStub = .text:0x80035AEC; // type:function size:0x4 MGSeqSprKill = .text:0x80035AF0; // type:function size:0x8C -SeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 scope:local -SeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C scope:local -SeqInitType2 = .text:0x800364F8; // type:function size:0x3D8 scope:local -SeqUpdateType2 = .text:0x800368D0; // type:function size:0x2F8 scope:local +MGSeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 +MGSeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C +MGSeqInitType2 = .text:0x800364F8; // type:function size:0x3D8 +MGSeqUpdateType2 = .text:0x800368D0; // type:function size:0x2F8 fn_80036BC8 = .text:0x80036BC8; // type:function size:0x188 SeqMakeWord = .text:0x80036D50; // type:function size:0x1D0 scope:local SeqLoadFontChar = .text:0x80036F20; // type:function size:0x26C scope:local -SeqInitMGBasic = .text:0x8003718C; // type:function size:0x194 scope:local -SeqUpdateMGBasic = .text:0x80037320; // type:function size:0x9D0 scope:local -SeqInitMGCommon = .text:0x80037CF0; // type:function size:0x2A4 scope:local -SeqUpdateMGBattle = .text:0x80037F94; // type:function size:0xDA4 scope:local -SeqUpdateMG1vs3 = .text:0x80038D38; // type:function size:0xDA4 scope:local -SeqUpdateMGStory = .text:0x80039ADC; // type:function size:0xBB8 scope:local -SeqUpdateMG2vs2 = .text:0x8003A694; // type:function size:0xAB4 scope:local -SeqInitFlip = .text:0x8003B148; // type:function size:0x3C4 scope:local -SeqUpdateFlip = .text:0x8003B50C; // type:function size:0x91C scope:local -SeqUpdateMGBowser = .text:0x8003BE28; // type:function size:0xC84 scope:local -SeqInitDraw = .text:0x8003CAAC; // type:function size:0xDC scope:local -SeqUpdateDraw = .text:0x8003CB88; // type:function size:0x3DC scope:local -SeqInitWin = .text:0x8003CF64; // type:function size:0x8A0 scope:local -SeqUpdateWin = .text:0x8003D804; // type:function size:0x72C scope:local -SeqInitRecord = .text:0x8003DF30; // type:function size:0x774 scope:local -SeqUpdateRecord = .text:0x8003E6A4; // type:function size:0x304 scope:local +MGSeqInitMGBasic = .text:0x8003718C; // type:function size:0x194 +MGSeqUpdateMGBasic = .text:0x80037320; // type:function size:0x9D0 +MGSeqInitMGCommon = .text:0x80037CF0; // type:function size:0x2A4 +MGSeqUpdateMGBattle = .text:0x80037F94; // type:function size:0xDA4 +MGSeqUpdateMG1vs3 = .text:0x80038D38; // type:function size:0xDA4 +MGSeqUpdateMGStory = .text:0x80039ADC; // type:function size:0xBB8 +MGSeqUpdateMG2vs2 = .text:0x8003A694; // type:function size:0xAB4 +MGSeqInitFlip = .text:0x8003B148; // type:function size:0x3C4 +MGSeqUpdateFlip = .text:0x8003B50C; // type:function size:0x91C +MGSeqUpdateMGBowser = .text:0x8003BE28; // type:function size:0xC84 +MGSeqInitDraw = .text:0x8003CAAC; // type:function size:0xDC +MGSeqUpdateDraw = .text:0x8003CB88; // type:function size:0x3DC +MGSeqInitWin = .text:0x8003CF64; // type:function size:0x8A0 +MGSeqUpdateWin = .text:0x8003D804; // type:function size:0x72C +MGSeqInitRecord = .text:0x8003DF30; // type:function size:0x774 +MGSeqUpdateRecord = .text:0x8003E6A4; // type:function size:0x304 MGSeqPauseInit = .text:0x8003E9A8; // type:function size:0x6C PauseProc = .text:0x8003EA14; // type:function size:0x94C scope:local MGSeqPauseKill = .text:0x8003F360; // type:function size:0xC @@ -3588,7 +3588,7 @@ __init_cpp_exceptions_reference = .ctors:0x8011DCC0; // type:object size:0x4 sco _dtors = .dtors:0x8011DCE0; // type:label scope:global data:4byte __destroy_global_chain_reference = .dtors:0x8011DCE0; // type:object size:0x4 scope:global __fini_cpp_exceptions_reference = .dtors:0x8011DCE4; // type:object size:0x4 scope:global -lbl_8011DD00 = .rodata:0x8011DD00; // type:object size:0x10 data:4byte scope:local +lbl_8011DD00 = .rodata:0x8011DD00; // type:object size:0x10 scope:local data:4byte lbl_8011DD10 = .rodata:0x8011DD10; // type:object size:0x10 data:4byte lbl_8011DD20 = .rodata:0x8011DD20; // type:object size:0xC data:4byte lbl_8011DD30 = .rodata:0x8011DD30; // type:object size:0x20 data:byte @@ -3680,7 +3680,7 @@ pbOffsets$890 = .rodata:0x8011EBA0; // type:object size:0x18 scope:local inpColdMIDIDefaults = .rodata:0x8011EBB8; // type:object size:0x88 scope:local inpWarmMIDIDefaults = .rodata:0x8011EC40; // type:object size:0x88 scope:local data:byte itdOffTab = .rodata:0x8011ECC8; // type:object size:0x100 scope:local -lbl_8011EDE0 = .data:0x8011EDE0; // type:object size:0x10 data:string scope:local +lbl_8011EDE0 = .data:0x8011EDE0; // type:object size:0x10 scope:local data:string chanTbl = .data:0x8011EDF0; // type:object size:0x10 scope:local correctDiskID = .data:0x8011EE00; // type:object size:0x124 scope:local jumptable_8011EF24 = .data:0x8011EF24; // type:object size:0x34 scope:local @@ -4847,11 +4847,11 @@ fio = .bss:0x801D3150; // type:object size:0xC scope:local data:4byte mus = .bss:0x801D3160; // type:object size:0x178 scope:local data:2byte se = .bss:0x801D32D8; // type:object size:0xDC scope:local data:4byte StreamInfo = .bss:0x801D33C0; // type:object size:0x60 scope:local align:32 data:4byte -lbl_801D3420 = .sdata:0x801D3420; // type:object size:0x5 data:string scope:local +lbl_801D3420 = .sdata:0x801D3420; // type:object size:0x5 scope:local data:string lbl_801D3425 = .sdata:0x801D3425; // type:object size:0x7 scope:local rnd_seed = .sdata:0x801D342C; // type:object size:0x4 data:4byte -lbl_801D3430 = .sdata:0x801D3430; // type:object size:0x6 data:string scope:local -lbl_801D3436 = .sdata:0x801D3436; // type:object size:0x2 data:string scope:local +lbl_801D3430 = .sdata:0x801D3430; // type:object size:0x6 scope:local data:string +lbl_801D3436 = .sdata:0x801D3436; // type:object size:0x2 scope:local data:string lbl_801D3438 = .sdata:0x801D3438; // type:object size:0x7 data:string lbl_801D343F = .sdata:0x801D343F; // type:object size:0x9 FirstFrame = .sdata:0x801D3448; // type:object size:0x4 scope:local data:4byte @@ -4915,7 +4915,7 @@ lbl_801D359E = .sdata:0x801D359E; // type:object size:0x5 scope:local data:strin lbl_801D35A3 = .sdata:0x801D35A3; // type:object size:0x7 scope:local lbl_801D35AA = .sdata:0x801D35AA; // type:object size:0x6 scope:local lbl_801D35B0 = .sdata:0x801D35B0; // type:object size:0x6 scope:local data:string -pauseStr$2216 = .sdata:0x801D35B8; // type:object size:0x8 scope:local +pauseStr = .sdata:0x801D35B8; // type:object size:0x8 scope:local lbl_801D35C0 = .sdata:0x801D35C0; // type:object size:0x8 lbl_801D35C8 = .sdata:0x801D35C8; // type:object size:0x8 lbl_801D35D0 = .sdata:0x801D35D0; // type:object size:0x8 @@ -6020,7 +6020,7 @@ SendMailData = .sbss:0x801D4940; // type:object size:0x4 scope:local data:4byte RecvDataLeng = .sbss:0x801D4944; // type:object size:0x4 scope:local data:4byte pEXIInputFlag = .sbss:0x801D4948; // type:object size:0x4 scope:local data:4byte EXIInputFlag = .sbss:0x801D494C; // type:object size:0x1 scope:local data:byte -lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 data:double scope:local +lbl_801D4960 = .sdata2:0x801D4960; // type:object size:0x8 scope:local data:double lbl_801D4968 = .sdata2:0x801D4968; // type:object size:0x4 data:float lbl_801D496C = .sdata2:0x801D496C; // type:object size:0x4 data:float lbl_801D4970 = .sdata2:0x801D4970; // type:object size:0x8 data:double diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index e3b4c039..0cecdb13 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -188,3 +188,16 @@ game/audio.c: .sdata start:0x801D3150 end:0x801D3158 .sbss start:0x801D39D8 end:0x801D3A08 .sdata2 start:0x801D4980 end:0x801D4990 + +game/EnvelopeExec.c: + .text start:0x80033EEC end:0x800353AC + .sbss start:0x801D3A08 end:0x801D3A38 + .sdata2 start:0x801D4990 end:0x801D49A8 + +game/minigame_seq.c: + .text start:0x800353AC end:0x8003F690 + .data start:0x8012ED10 end:0x8012F378 + .bss start:0x801900F0 end:0x80190500 + .sdata start:0x801D3158 end:0x801D3258 + .sbss start:0x801D3A38 end:0x801D3A58 + .sdata2 start:0x801D49A8 end:0x801D4B60 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index 65e081fc..b21e9dc2 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -667,29 +667,29 @@ MGSeqKillAll = .text:0x80035A0C; // type:function size:0x3C MGSeqDoneCheck = .text:0x80035A48; // type:function size:0xA4 MGSeqStub = .text:0x80035AEC; // type:function size:0x4 MGSeqSprKill = .text:0x80035AF0; // type:function size:0x8C -SeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 scope:local -SeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C scope:local -SeqInitType2 = .text:0x800364F8; // type:function size:0x3D8 scope:local -SeqUpdateType2 = .text:0x800368D0; // type:function size:0x2F8 scope:local +MGSeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 +MGSeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C +MGSeqInitType2 = .text:0x800364F8; // type:function size:0x3D8 +MGSeqUpdateType2 = .text:0x800368D0; // type:function size:0x2F8 fn_80036BC8 = .text:0x80036BC8; // type:function size:0x188 SeqMakeWord = .text:0x80036D50; // type:function size:0x1E4 scope:local SeqLoadFontChar = .text:0x80036F34; // type:function size:0x23C scope:local -SeqInitMGBasic = .text:0x80037170; // type:function size:0x194 scope:local -SeqUpdateMGBasic = .text:0x80037304; // type:function size:0x9D0 scope:local -SeqInitMGCommon = .text:0x80037CD4; // type:function size:0x2A4 scope:local -SeqUpdateMGBattle = .text:0x80037F78; // type:function size:0xDA4 scope:local -SeqUpdateMG1vs3 = .text:0x80038D1C; // type:function size:0xDA4 scope:local -SeqUpdateMGStory = .text:0x80039AC0; // type:function size:0xBB8 scope:local -SeqUpdateMG2vs2 = .text:0x8003A678; // type:function size:0xAB4 scope:local -SeqInitFlip = .text:0x8003B12C; // type:function size:0x3C4 scope:local -SeqUpdateFlip = .text:0x8003B4F0; // type:function size:0x91C scope:local -SeqUpdateMGBowser = .text:0x8003BE0C; // type:function size:0xC84 scope:local -SeqInitDraw = .text:0x8003CA90; // type:function size:0xDC scope:local -SeqUpdateDraw = .text:0x8003CB6C; // type:function size:0x3DC scope:local -SeqInitWin = .text:0x8003CF48; // type:function size:0x6B8 scope:local -SeqUpdateWin = .text:0x8003D600; // type:function size:0x708 scope:local -SeqInitRecord = .text:0x8003DD08; // type:function size:0x774 scope:local -SeqUpdateRecord = .text:0x8003E47C; // type:function size:0x304 scope:local +MGSeqInitMGBasic = .text:0x80037170; // type:function size:0x194 +MGSeqUpdateMGBasic = .text:0x80037304; // type:function size:0x9D0 +MGSeqInitMGCommon = .text:0x80037CD4; // type:function size:0x2A4 +MGSeqUpdateMGBattle = .text:0x80037F78; // type:function size:0xDA4 +MGSeqUpdateMG1vs3 = .text:0x80038D1C; // type:function size:0xDA4 +MGSeqUpdateMGStory = .text:0x80039AC0; // type:function size:0xBB8 +MGSeqUpdateMG2vs2 = .text:0x8003A678; // type:function size:0xAB4 +MGSeqInitFlip = .text:0x8003B12C; // type:function size:0x3C4 +MGSeqUpdateFlip = .text:0x8003B4F0; // type:function size:0x91C +MGSeqUpdateMGBowser = .text:0x8003BE0C; // type:function size:0xC84 +MGSeqInitDraw = .text:0x8003CA90; // type:function size:0xDC +MGSeqUpdateDraw = .text:0x8003CB6C; // type:function size:0x3DC +MGSeqInitWin = .text:0x8003CF48; // type:function size:0x6B8 +MGSeqUpdateWin = .text:0x8003D600; // type:function size:0x708 +MGSeqInitRecord = .text:0x8003DD08; // type:function size:0x774 +MGSeqUpdateRecord = .text:0x8003E47C; // type:function size:0x304 MGSeqPauseInit = .text:0x8003E780; // type:function size:0x6C PauseProc = .text:0x8003E7EC; // type:function size:0x94C scope:local MGSeqPauseKill = .text:0x8003F138; // type:function size:0xC @@ -3905,24 +3905,33 @@ lbl_8012E2F5 = .data:0x8012E2F5; // type:object size:0x273 scope:local lbl_8012E568 = .data:0x8012E568; // type:object size:0x12 scope:local data:string lbl_8012E57A = .data:0x8012E57A; // type:object size:0xD6 scope:local sndGrpTable = .data:0x8012E650; // type:object size:0x5B0 -lbl_8012ec00 = .data:0x8012EC00; // type:object size:0x94 scope:local +lbl_8012EC00 = .data:0x8012EC00; // type:object size:0x94 scope:local lbl_8012EC94 = .data:0x8012EC94; // type:object size:0x11 scope:local data:string lbl_8012ECA5 = .data:0x8012ECA5; // type:object size:0x3A scope:local lbl_8012ECDF = .data:0x8012ECDF; // type:object size:0x31 scope:local -lbl_8012ED10 = .data:0x8012ED10; // type:object size:0x1DC -lbl_8012EEEC = .data:0x8012EEEC; // type:object size:0x18 -lbl_8012EF04 = .data:0x8012EF04; // type:object size:0x120 -lbl_8012F024 = .data:0x8012F024; // type:object size:0x18 -lbl_8012F03C = .data:0x8012F03C; // type:object size:0x40 -lbl_8012F07C = .data:0x8012F07C; // type:object size:0x1C -lbl_8012F098 = .data:0x8012F098; // type:object size:0x38 -lbl_8012F0D0 = .data:0x8012F0D0; // type:object size:0x9 data:string -lbl_8012F0D9 = .data:0x8012F0D9; // type:object size:0x83 -lbl_8012F15C = .data:0x8012F15C; // type:object size:0x24 -lbl_8012F180 = .data:0x8012F180; // type:object size:0x50 -lbl_8012F1D0 = .data:0x8012F1D0; // type:object size:0xAC -lbl_8012F27C = .data:0x8012F27C; // type:object size:0xC -lbl_8012F288 = .data:0x8012F288; // type:object size:0xF0 +seqInfoTbl = .data:0x8012ED10; // type:object size:0x1DC scope:local +seqType2SprTbl = .data:0x8012EEEC; // type:object size:0x18 scope:local +mgSeqTypeTbl = .data:0x8012EF04; // type:object size:0x12 scope:local data:2byte +lbl_8012F336 = .data:0x8012EF16; // type:object size:0x53 scope:local data:string +lbl_8012F389 = .data:0x8012EF69; // type:object size:0x9 scope:local data:string +lbl_8012F392 = .data:0x8012EF72; // type:object size:0x9 scope:local data:string +seqFontAlphaTbl = .data:0x8012EF7B; // type:object size:0x35 scope:local data:string +seqFontKanaTbl = .data:0x8012EFB0; // type:object size:0x52 scope:local data:string +seqFontNumTbl = .data:0x8012F002; // type:object size:0xB scope:local data:string +letterBufTbl = .data:0x8012F010; // type:object size:0x14 scope:local +wordMgTbl = .data:0x8012F024; // type:object size:0x18 scope:local +letterOfs$1005 = .data:0x8012F03C; // type:object size:0x40 scope:local data:float +letterOfs$1482 = .data:0x8012F07C; // type:object size:0x1C scope:local data:2byte +letterOfs$1856 = .data:0x8012F098; // type:object size:0x38 scope:local data:float +@1986 = .data:0x8012F0D0; // type:object size:0x9 scope:local data:string +@1988 = .data:0x8012F0D9; // type:object size:0xB scope:local data:string +winCharNameTbl = .data:0x8012F0E4; // type:object size:0x78 scope:local data:string_table +@1996 = .data:0x8012F15C; // type:object size:0xA scope:local data:string +winWordTbl = .data:0x8012F168; // type:object size:0x18 scope:local +winPosOfs = .data:0x8012F180; // type:object size:0x50 scope:local +practiceTbl = .data:0x8012F1D0; // type:object size:0xAC scope:local +yPosTbl$2429 = .data:0x8012F27C; // type:object size:0xC scope:local +seqStartFXTbl = .data:0x8012F288; // type:object size:0xEC scope:local lbl_8012F378 = .data:0x8012F378; // type:object size:0x15 data:string lbl_8012F38D = .data:0x8012F38D; // type:object size:0x10 data:string lbl_8012F39D = .data:0x8012F39D; // type:object size:0x13 data:string @@ -4097,7 +4106,7 @@ lbl_80130D0C = .data:0x80130D0C; // type:object size:0xBC lbl_80130DC8 = .data:0x80130DC8; // type:object size:0x100 lbl_80130EC8 = .data:0x80130EC8; // type:object size:0x4D lbl_80130F15 = .data:0x80130F15; // type:object size:0x1B -lbl_80130F30 = .data:0x80130F30; // type:object size:0xE00 data:2byte +mgInfoTbl = .data:0x80130F30; // type:object size:0xE00 data:2byte lbl_80131D30 = .data:0x80131D30; // type:object size:0x40 lbl_80131D70 = .data:0x80131D70; // type:object size:0x14 lbl_80131D84 = .data:0x80131D84; // type:object size:0xC data:string @@ -4417,8 +4426,8 @@ CZoomM = .bss:0x8018FE40; // type:object size:0x40 omDLLinfoTbl = .bss:0x8018FE80; // type:object size:0x50 sndFXBuf = .bss:0x8018FED0; // type:object size:0x200 scope:local charVoiceGroupStat = .bss:0x801900D0; // type:object size:0x20 -lbl_801900F0 = .bss:0x801900F0; // type:object size:0x400 data:4byte -lbl_801904F0 = .bss:0x801904F0; // type:object size:0x10 data:2byte +seqWorkData = .bss:0x801900F0; // type:object size:0x400 scope:local data:4byte +winnerNameW = .bss:0x801904F0; // type:object size:0x10 scope:local data:2byte lbl_80190500 = .bss:0x80190500; // type:object size:0x600 data:2byte lbl_80190B00 = .bss:0x80190B00; // type:object size:0x1200 data:4byte lbl_80191D00 = .bss:0x80191D00; // type:object size:0x100 @@ -4643,50 +4652,50 @@ titleMes = .sdata:0x801D3140; // type:object size:0x4 scope:local data:4byte lbl_801D3144 = .sdata:0x801D3144; // type:object size:0xC scope:local lbl_801D3150 = .sdata:0x801D3150; // type:object size:0x1 scope:local lbl_801D3151 = .sdata:0x801D3151; // type:object size:0x7 scope:local -lbl_801D3158 = .sdata:0x801D3158; // type:object size:0x4 data:4byte -lbl_801D315C = .sdata:0x801D315C; // type:object size:0x7 data:string -lbl_801D3163 = .sdata:0x801D3163; // type:object size:0x1 data:byte -lbl_801D3166 = .sdata:0x801D3166; // type:object size:0x6 -lbl_801D316C = .sdata:0x801D316C; // type:object size:0x8 -lbl_801D3174 = .sdata:0x801D3174; // type:object size:0x6 -lbl_801D317A = .sdata:0x801D317A; // type:object size:0x8 data:string -lbl_801D3182 = .sdata:0x801D3182; // type:object size:0x6 data:string -lbl_801D3188 = .sdata:0x801D3188; // type:object size:0x4 -lbl_801D318C = .sdata:0x801D318C; // type:object size:0x6 data:string -lbl_801D3192 = .sdata:0x801D3192; // type:object size:0x6 -lbl_801D3198 = .sdata:0x801D3198; // type:object size:0x6 data:string -lbl_801D319E = .sdata:0x801D319E; // type:object size:0x5 -lbl_801D31A3 = .sdata:0x801D31A3; // type:object size:0x6 data:string -lbl_801D31A9 = .sdata:0x801D31A9; // type:object size:0x5 -lbl_801D31AE = .sdata:0x801D31AE; // type:object size:0x6 data:string -lbl_801D31B4 = .sdata:0x801D31B4; // type:object size:0x4 -lbl_801D31B8 = .sdata:0x801D31B8; // type:object size:0x6 data:string -lbl_801D31BE = .sdata:0x801D31BE; // type:object size:0x6 -lbl_801D31C4 = .sdata:0x801D31C4; // type:object size:0x3 data:string -lbl_801D31C7 = .sdata:0x801D31C7; // type:object size:0x7 -lbl_801D31CE = .sdata:0x801D31CE; // type:object size:0x6 data:string -lbl_801D31D4 = .sdata:0x801D31D4; // type:object size:0x7 -lbl_801D31DB = .sdata:0x801D31DB; // type:object size:0x8 data:string -lbl_801D31E3 = .sdata:0x801D31E3; // type:object size:0x5 -lbl_801D31E8 = .sdata:0x801D31E8; // type:object size:0x7 data:string -lbl_801D31EF = .sdata:0x801D31EF; // type:object size:0x6 -lbl_801D31F5 = .sdata:0x801D31F5; // type:object size:0x5 data:string -lbl_801D31FA = .sdata:0x801D31FA; // type:object size:0x5 -lbl_801D31FF = .sdata:0x801D31FF; // type:object size:0x6 data:string -lbl_801D3205 = .sdata:0x801D3205; // type:object size:0x4 -lbl_801D3209 = .sdata:0x801D3209; // type:object size:0x8 data:string -lbl_801D3211 = .sdata:0x801D3211; // type:object size:0x5 -lbl_801D3216 = .sdata:0x801D3216; // type:object size:0x7 -lbl_801D321D = .sdata:0x801D321D; // type:object size:0x6 -lbl_801D3223 = .sdata:0x801D3223; // type:object size:0x7 data:string -lbl_801D322A = .sdata:0x801D322A; // type:object size:0x3 -lbl_801D322D = .sdata:0x801D322D; // type:object size:0x5 data:string -lbl_801D3232 = .sdata:0x801D3232; // type:object size:0x6 -lbl_801D3238 = .sdata:0x801D3238; // type:object size:0x5 data:string -lbl_801D323D = .sdata:0x801D323D; // type:object size:0x7 -lbl_801D3244 = .sdata:0x801D3244; // type:object size:0x6 -lbl_801D324A = .sdata:0x801D324A; // type:object size:0x6 data:string -lbl_801D3250 = .sdata:0x801D3250; // type:object size:0x8 +mgSeqOvlPrev = .sdata:0x801D3158; // type:object size:0x4 data:4byte +wordStartE = .sdata:0x801D315C; // type:object size:0x7 scope:local data:string +seqPunctTbl = .sdata:0x801D3163; // type:object size:0x3 scope:local data:byte +wordStartJ = .sdata:0x801D3166; // type:object size:0x6 scope:local +wordFinishJ = .sdata:0x801D316C; // type:object size:0x8 scope:local +wordDrawJ = .sdata:0x801D3174; // type:object size:0x6 scope:local +wordFinishE = .sdata:0x801D317A; // type:object size:0x8 scope:local data:string +wordDrawE = .sdata:0x801D3182; // type:object size:0x6 scope:local data:string +@1961 = .sdata:0x801D3188; // type:object size:0x4 scope:local data:string +@1962 = .sdata:0x801D318C; // type:object size:0x6 scope:local data:string +@1963 = .sdata:0x801D3192; // type:object size:0x6 scope:local +@1964 = .sdata:0x801D3198; // type:object size:0x6 scope:local data:string +@1965 = .sdata:0x801D319E; // type:object size:0x5 scope:local +@1966 = .sdata:0x801D31A3; // type:object size:0x6 scope:local data:string +@1967 = .sdata:0x801D31A9; // type:object size:0x5 scope:local +@1968 = .sdata:0x801D31AE; // type:object size:0x6 scope:local data:string +@1969 = .sdata:0x801D31B4; // type:object size:0x4 scope:local +@1970 = .sdata:0x801D31B8; // type:object size:0x6 scope:local data:string +@1971 = .sdata:0x801D31BE; // type:object size:0x6 scope:local +@1972 = .sdata:0x801D31C4; // type:object size:0x3 scope:local data:string +@1973 = .sdata:0x801D31C7; // type:object size:0x7 scope:local +@1974 = .sdata:0x801D31CE; // type:object size:0x6 scope:local data:string +@1975 = .sdata:0x801D31D4; // type:object size:0x7 scope:local +@1976 = .sdata:0x801D31DB; // type:object size:0x8 scope:local data:string +@1977 = .sdata:0x801D31E3; // type:object size:0x5 scope:local +@1978 = .sdata:0x801D31E8; // type:object size:0x7 scope:local data:string +@1979 = .sdata:0x801D31EF; // type:object size:0x6 scope:local +@1980 = .sdata:0x801D31F5; // type:object size:0x5 scope:local data:string +@1981 = .sdata:0x801D31FA; // type:object size:0x5 scope:local +@1982 = .sdata:0x801D31FF; // type:object size:0x6 scope:local data:string +@1983 = .sdata:0x801D3205; // type:object size:0x4 scope:local +@1984 = .sdata:0x801D3209; // type:object size:0x8 scope:local data:string +@1985 = .sdata:0x801D3211; // type:object size:0x5 scope:local +@1986 = .sdata:0x801D3216; // type:object size:0x7 scope:local +@1987 = .sdata:0x801D321D; // type:object size:0x6 scope:local +@1988 = .sdata:0x801D3223; // type:object size:0x7 scope:local data:string +@1989 = .sdata:0x801D322A; // type:object size:0x3 scope:local +@1990 = .sdata:0x801D322D; // type:object size:0x5 scope:local data:string +@1991 = .sdata:0x801D3232; // type:object size:0x6 scope:local +@1992 = .sdata:0x801D3238; // type:object size:0x5 scope:local data:string +@1993 = .sdata:0x801D323D; // type:object size:0x7 scope:local +@1994 = .sdata:0x801D3244; // type:object size:0x6 scope:local +@1995 = .sdata:0x801D324A; // type:object size:0x6 scope:local data:string +pauseStr$2283 = .sdata:0x801D3250; // type:object size:0x8 scope:local lbl_801D3258 = .sdata:0x801D3258; // type:object size:0x8 lbl_801D3260 = .sdata:0x801D3260; // type:object size:0x8 lbl_801D3268 = .sdata:0x801D3268; // type:object size:0x8 @@ -5107,31 +5116,31 @@ auxBNoBak = .sbss:0x801D39F8; // type:object size:0x4 scope:local data:4byte auxANoBak = .sbss:0x801D39FC; // type:object size:0x4 scope:local data:4byte sndGroupBak = .sbss:0x801D3A00; // type:object size:0x2 scope:local data:2byte Hu3DAudVol = .sbss:0x801D3A02; // type:object size:0x6 scope:local data:2byte -Meshno = .sbss:0x801D3A08; // type:object size:0x4 data:4byte -lbl_801D3A0C = .sbss:0x801D3A0C; // type:object size:0x4 data:4byte -lbl_801D3A10 = .sbss:0x801D3A10; // type:object size:0x4 data:4byte -lbl_801D3A14 = .sbss:0x801D3A14; // type:object size:0x4 data:4byte -lbl_801D3A18 = .sbss:0x801D3A18; // type:object size:0x4 data:4byte -lbl_801D3A1C = .sbss:0x801D3A1C; // type:object size:0x4 data:4byte -lbl_801D3A20 = .sbss:0x801D3A20; // type:object size:0x4 data:4byte -lbl_801D3A24 = .sbss:0x801D3A24; // type:object size:0x4 data:4byte -lbl_801D3A28 = .sbss:0x801D3A28; // type:object size:0x4 data:4byte -lbl_801D3A2C = .sbss:0x801D3A2C; // type:object size:0x4 data:4byte -lbl_801D3A30 = .sbss:0x801D3A30; // type:object size:0x8 data:4byte -lbl_801D3A38 = .sbss:0x801D3A38; // type:object size:0x4 data:4byte -lbl_801D3A3C = .sbss:0x801D3A3C; // type:object size:0x4 data:4byte -lbl_801D3A40 = .sbss:0x801D3A40; // type:object size:0x4 data:4byte -lbl_801D3A44 = .sbss:0x801D3A44; // type:object size:0x4 data:4byte -lbl_801D3A48 = .sbss:0x801D3A48; // type:object size:0x4 data:4byte -lbl_801D3A4C = .sbss:0x801D3A4C; // type:object size:0x4 data:4byte -lbl_801D3A50 = .sbss:0x801D3A50; // type:object size:0x2 data:2byte -lbl_801D3A52 = .sbss:0x801D3A52; // type:object size:0x2 data:2byte +Meshno = .sbss:0x801D3A08; // type:object size:0x4 scope:local data:4byte +Meshcnt = .sbss:0x801D3A0C; // type:object size:0x4 scope:local data:4byte +normtop = .sbss:0x801D3A10; // type:object size:0x4 scope:local data:4byte +normenv = .sbss:0x801D3A14; // type:object size:0x4 scope:local data:4byte +vtxenv = .sbss:0x801D3A18; // type:object size:0x4 scope:local data:4byte +CurHsf = .sbss:0x801D3A1C; // type:object size:0x4 scope:local data:4byte +objtop = .sbss:0x801D3A20; // type:object size:0x4 scope:local data:4byte +nMesh = .sbss:0x801D3A24; // type:object size:0x4 scope:local data:4byte +nObj = .sbss:0x801D3A28; // type:object size:0x4 scope:local data:4byte +MtxTop = .sbss:0x801D3A2C; // type:object size:0x4 data:4byte +Vertextop = .sbss:0x801D3A30; // type:object size:0x4 data:4byte +seqLanguage = .sbss:0x801D3A38; // type:object size:0x4 scope:local data:4byte +pauseProcess = .sbss:0x801D3A3C; // type:object size:0x4 scope:local data:4byte +pauseActiveF = .sbss:0x801D3A40; // type:object size:0x4 scope:local data:4byte +pauseExitF = .sbss:0x801D3A44; // type:object size:0x4 scope:local data:4byte +pauseWaitF = .sbss:0x801D3A48; // type:object size:0x4 scope:local data:4byte +seqRecordVal = .sbss:0x801D3A4C; // type:object size:0x4 scope:local data:4byte +seqPauseF = .sbss:0x801D3A50; // type:object size:0x2 scope:local data:2byte +seqSpeed = .sbss:0x801D3A52; // type:object size:0x2 scope:local data:2byte lbl_801D3A54 = .sbss:0x801D3A54; // type:object size:0x1 data:byte -lbl_801D3A55 = .sbss:0x801D3A55; // type:object size:0x1 data:byte -lbl_801D3A56 = .sbss:0x801D3A56; // type:object size:0x2 data:2byte +seqDoneF = .sbss:0x801D3A55; // type:object size:0x1 scope:local data:byte +seqTimer = .sbss:0x801D3A56; // type:object size:0x2 scope:local data:2byte lbl_801D3A58 = .sbss:0x801D3A58; // type:object size:0x8 data:2byte lbl_801D3A60 = .sbss:0x801D3A60; // type:object size:0x8 -lbl_801D3A68 = .sbss:0x801D3A68; // type:object size:0x8 data:4byte +wipeFadeInF = .sbss:0x801D3A68; // type:object size:0x8 data:4byte lbl_801D3A70 = .sbss:0x801D3A70; // type:object size:0x4 data:4byte lbl_801D3A74 = .sbss:0x801D3A74; // type:object size:0x1 data:byte lbl_801D3A76 = .sbss:0x801D3A76; // type:object size:0x2 data:2byte @@ -5185,8 +5194,8 @@ lbl_801D3B30 = .sbss:0x801D3B30; // type:object size:0x4 data:4byte lbl_801D3B34 = .sbss:0x801D3B34; // type:object size:0xC data:4byte lbl_801D3B40 = .sbss:0x801D3B40; // type:object size:0x4 lbl_801D3B44 = .sbss:0x801D3B44; // type:object size:0x4 -lbl_801D3B48 = .sbss:0x801D3B48; // type:object size:0x4 data:4byte -lbl_801D3B4C = .sbss:0x801D3B4C; // type:object size:0x4 data:4byte +mgPracticeEnableF = .sbss:0x801D3B48; // type:object size:0x4 data:4byte +mgQuitExtraF = .sbss:0x801D3B4C; // type:object size:0x4 data:4byte lbl_801D3B50 = .sbss:0x801D3B50; // type:object size:0x4 lbl_801D3B54 = .sbss:0x801D3B54; // type:object size:0x2 lbl_801D3B56 = .sbss:0x801D3B56; // type:object size:0x2 @@ -5341,7 +5350,7 @@ lbl_801D3D8A = .sbss:0x801D3D8A; // type:object size:0x1 data:byte lbl_801D3D8B = .sbss:0x801D3D8B; // type:object size:0x1 data:byte lbl_801D3D8C = .sbss:0x801D3D8C; // type:object size:0x1 data:byte lbl_801D3D8E = .sbss:0x801D3D8E; // type:object size:0x6 data:2byte -lbl_801D3D94 = .sbss:0x801D3D94; // type:object size:0x4 data:4byte +lbl_801D3D94_2 = .sbss:0x801D3D94; // type:object size:0x4 data:4byte lbl_801D3D98 = .sbss:0x801D3D98; // type:object size:0x1 data:byte lbl_801D3D99 = .sbss:0x801D3D99; // type:object size:0x1 data:byte lbl_801D3D9A = .sbss:0x801D3D9A; // type:object size:0x1 data:byte @@ -5968,129 +5977,129 @@ lbl_801D4970 = .sdata2:0x801D4970; // type:object size:0x4 scope:local data:floa lbl_801D4978 = .sdata2:0x801D4978; // type:object size:0x8 scope:local data:double lbl_801D4980 = .sdata2:0x801D4980; // type:object size:0x8 scope:local data:double lbl_801D4988 = .sdata2:0x801D4988; // type:object size:0x8 scope:local data:double -lbl_801D4990 = .sdata2:0x801D4990; // type:object size:0x4 data:float -lbl_801D4994 = .sdata2:0x801D4994; // type:object size:0x4 data:float -lbl_801D4998 = .sdata2:0x801D4998; // type:object size:0x4 data:float -lbl_801D49A0 = .sdata2:0x801D49A0; // type:object size:0x8 data:double -lbl_801D49A8 = .sdata2:0x801D49A8; // type:object size:0x4 data:float -lbl_801D49AC = .sdata2:0x801D49AC; // type:object size:0x4 data:float -lbl_801D49B0 = .sdata2:0x801D49B0; // type:object size:0x8 data:double -lbl_801D49B8 = .sdata2:0x801D49B8; // type:object size:0x8 data:double -lbl_801D49C0 = .sdata2:0x801D49C0; // type:object size:0x8 data:double -lbl_801D49C8 = .sdata2:0x801D49C8; // type:object size:0x8 data:double -lbl_801D49D0 = .sdata2:0x801D49D0; // type:object size:0x8 data:double -lbl_801D49D8 = .sdata2:0x801D49D8; // type:object size:0x8 data:double -lbl_801D49E0 = .sdata2:0x801D49E0; // type:object size:0x4 data:float -lbl_801D49E4 = .sdata2:0x801D49E4; // type:object size:0x4 data:float -lbl_801D49E8 = .sdata2:0x801D49E8; // type:object size:0x8 data:double -lbl_801D49F0 = .sdata2:0x801D49F0; // type:object size:0x4 data:float -lbl_801D49F4 = .sdata2:0x801D49F4; // type:object size:0x4 data:float -lbl_801D49F8 = .sdata2:0x801D49F8; // type:object size:0x4 data:float -lbl_801D49FC = .sdata2:0x801D49FC; // type:object size:0x4 data:float -lbl_801D4A00 = .sdata2:0x801D4A00; // type:object size:0x4 data:float -lbl_801D4A04 = .sdata2:0x801D4A04; // type:object size:0x4 data:float -lbl_801D4A08 = .sdata2:0x801D4A08; // type:object size:0x4 data:float -lbl_801D4A0C = .sdata2:0x801D4A0C; // type:object size:0x4 data:float -lbl_801D4A10 = .sdata2:0x801D4A10; // type:object size:0x4 data:float -lbl_801D4A14 = .sdata2:0x801D4A14; // type:object size:0x4 data:float -lbl_801D4A18 = .sdata2:0x801D4A18; // type:object size:0x4 data:float -lbl_801D4A1C = .sdata2:0x801D4A1C; // type:object size:0x4 data:float -lbl_801D4A20 = .sdata2:0x801D4A20; // type:object size:0x4 data:float -lbl_801D4A24 = .sdata2:0x801D4A24; // type:object size:0x4 data:float -lbl_801D4A28 = .sdata2:0x801D4A28; // type:object size:0x4 data:float -lbl_801D4A2C = .sdata2:0x801D4A2C; // type:object size:0x4 data:float -lbl_801D4A30 = .sdata2:0x801D4A30; // type:object size:0x4 data:float -lbl_801D4A34 = .sdata2:0x801D4A34; // type:object size:0x4 data:float -lbl_801D4A38 = .sdata2:0x801D4A38; // type:object size:0x8 data:double -lbl_801D4A40 = .sdata2:0x801D4A40; // type:object size:0x4 data:float -lbl_801D4A44 = .sdata2:0x801D4A44; // type:object size:0x4 data:float -lbl_801D4A48 = .sdata2:0x801D4A48; // type:object size:0x8 data:double -lbl_801D4A50 = .sdata2:0x801D4A50; // type:object size:0x8 data:double -lbl_801D4A58 = .sdata2:0x801D4A58; // type:object size:0x4 data:float -lbl_801D4A5C = .sdata2:0x801D4A5C; // type:object size:0x4 data:float -lbl_801D4A60 = .sdata2:0x801D4A60; // type:object size:0x8 data:double -lbl_801D4A68 = .sdata2:0x801D4A68; // type:object size:0x4 data:float -lbl_801D4A6C = .sdata2:0x801D4A6C; // type:object size:0x4 data:float -lbl_801D4A70 = .sdata2:0x801D4A70; // type:object size:0x4 data:float -lbl_801D4A74 = .sdata2:0x801D4A74; // type:object size:0x4 data:float -lbl_801D4A78 = .sdata2:0x801D4A78; // type:object size:0x4 data:float -lbl_801D4A80 = .sdata2:0x801D4A80; // type:object size:0x8 data:double -lbl_801D4A88 = .sdata2:0x801D4A88; // type:object size:0x4 data:float -lbl_801D4A90 = .sdata2:0x801D4A90; // type:object size:0x8 data:double -lbl_801D4A98 = .sdata2:0x801D4A98; // type:object size:0x4 data:float -lbl_801D4A9C = .sdata2:0x801D4A9C; // type:object size:0x4 data:float -lbl_801D4AA0 = .sdata2:0x801D4AA0; // type:object size:0x4 data:float -lbl_801D4AA4 = .sdata2:0x801D4AA4; // type:object size:0x4 data:float -lbl_801D4AA8 = .sdata2:0x801D4AA8; // type:object size:0x8 data:double -lbl_801D4AB0 = .sdata2:0x801D4AB0; // type:object size:0x4 data:float -lbl_801D4AB8 = .sdata2:0x801D4AB8; // type:object size:0x8 data:double -lbl_801D4AC0 = .sdata2:0x801D4AC0; // type:object size:0x8 data:double -lbl_801D4AC8 = .sdata2:0x801D4AC8; // type:object size:0x8 data:double -lbl_801D4AD0 = .sdata2:0x801D4AD0; // type:object size:0x4 data:float -lbl_801D4AD8 = .sdata2:0x801D4AD8; // type:object size:0x8 data:double -lbl_801D4AE0 = .sdata2:0x801D4AE0; // type:object size:0x4 data:float -lbl_801D4AE4 = .sdata2:0x801D4AE4; // type:object size:0x4 data:float -lbl_801D4AE8 = .sdata2:0x801D4AE8; // type:object size:0x4 data:float -lbl_801D4AEC = .sdata2:0x801D4AEC; // type:object size:0x4 data:float -lbl_801D4AF0 = .sdata2:0x801D4AF0; // type:object size:0x4 data:float -lbl_801D4AF4 = .sdata2:0x801D4AF4; // type:object size:0x4 data:float -lbl_801D4AF8 = .sdata2:0x801D4AF8; // type:object size:0x4 data:float -lbl_801D4AFC = .sdata2:0x801D4AFC; // type:object size:0x4 data:float -lbl_801D4B00 = .sdata2:0x801D4B00; // type:object size:0x8 data:double -lbl_801D4B08 = .sdata2:0x801D4B08; // type:object size:0x8 data:double -lbl_801D4B10 = .sdata2:0x801D4B10; // type:object size:0x8 data:double -lbl_801D4B18 = .sdata2:0x801D4B18; // type:object size:0x2 data:2byte -lbl_801D4B1A = .sdata2:0x801D4B1A; // type:object size:0x2 data:2byte -lbl_801D4B1C = .sdata2:0x801D4B1C; // type:object size:0x2 data:2byte -lbl_801D4B20 = .sdata2:0x801D4B20; // type:object size:0x4 data:float -lbl_801D4B24 = .sdata2:0x801D4B24; // type:object size:0x4 data:float -lbl_801D4B28 = .sdata2:0x801D4B28; // type:object size:0x4 data:float -lbl_801D4B2C = .sdata2:0x801D4B2C; // type:object size:0x4 data:float -lbl_801D4B30 = .sdata2:0x801D4B30; // type:object size:0x4 data:float -lbl_801D4B34 = .sdata2:0x801D4B34; // type:object size:0x4 data:float -lbl_801D4B38 = .sdata2:0x801D4B38; // type:object size:0x4 data:float -lbl_801D4B3C = .sdata2:0x801D4B3C; // type:object size:0x4 data:float -lbl_801D4B40 = .sdata2:0x801D4B40; // type:object size:0x4 data:float -lbl_801D4B44 = .sdata2:0x801D4B44; // type:object size:0x4 data:float -lbl_801D4B48 = .sdata2:0x801D4B48; // type:object size:0x8 data:double -lbl_801D4B50 = .sdata2:0x801D4B50; // type:object size:0x8 data:double -lbl_801D4B58 = .sdata2:0x801D4B58; // type:object size:0x4 data:float -lbl_801D4B5C = .sdata2:0x801D4B5C; // type:object size:0x4 data:float -lbl_801D4B60 = .sdata2:0x801D4B60; // type:object size:0x4 data:float -lbl_801D4B68 = .sdata2:0x801D4B68; // type:object size:0x8 data:double -lbl_801D4B70 = .sdata2:0x801D4B70; // type:object size:0x8 data:double -lbl_801D4B78 = .sdata2:0x801D4B78; // type:object size:0x4 data:float -lbl_801D4B7C = .sdata2:0x801D4B7C; // type:object size:0x4 data:float -lbl_801D4B80 = .sdata2:0x801D4B80; // type:object size:0x8 data:double -lbl_801D4B88 = .sdata2:0x801D4B88; // type:object size:0x4 data:float -lbl_801D4B8C = .sdata2:0x801D4B8C; // type:object size:0x4 data:float -lbl_801D4B90 = .sdata2:0x801D4B90; // type:object size:0x8 data:double -lbl_801D4B98 = .sdata2:0x801D4B98; // type:object size:0x4 data:float -lbl_801D4BA0 = .sdata2:0x801D4BA0; // type:object size:0x8 data:double -lbl_801D4BA8 = .sdata2:0x801D4BA8; // type:object size:0x4 data:float -lbl_801D4BAC = .sdata2:0x801D4BAC; // type:object size:0x4 data:float -lbl_801D4BB0 = .sdata2:0x801D4BB0; // type:object size:0x4 data:float -lbl_801D4BB4 = .sdata2:0x801D4BB4; // type:object size:0x4 data:float -lbl_801D4BB8 = .sdata2:0x801D4BB8; // type:object size:0x8 data:double -lbl_801D4BC0 = .sdata2:0x801D4BC0; // type:object size:0x4 data:float -lbl_801D4BC4 = .sdata2:0x801D4BC4; // type:object size:0x4 data:float -lbl_801D4BC8 = .sdata2:0x801D4BC8; // type:object size:0x4 data:float -lbl_801D4BCC = .sdata2:0x801D4BCC; // type:object size:0x4 data:float -lbl_801D4BD0 = .sdata2:0x801D4BD0; // type:object size:0x4 data:float -lbl_801D4BD8 = .sdata2:0x801D4BD8; // type:object size:0x8 data:double -lbl_801D4BE0 = .sdata2:0x801D4BE0; // type:object size:0x4 data:float -lbl_801D4BE4 = .sdata2:0x801D4BE4; // type:object size:0x4 data:float -lbl_801D4BE8 = .sdata2:0x801D4BE8; // type:object size:0x4 data:float -lbl_801D4BEC = .sdata2:0x801D4BEC; // type:object size:0x4 data:float -lbl_801D4BF0 = .sdata2:0x801D4BF0; // type:object size:0x4 data:float -lbl_801D4BF4 = .sdata2:0x801D4BF4; // type:object size:0x4 data:float -lbl_801D4BF8 = .sdata2:0x801D4BF8; // type:object size:0x8 data:double -lbl_801D4C00 = .sdata2:0x801D4C00; // type:object size:0x4 data:float -lbl_801D4C08 = .sdata2:0x801D4C08; // type:object size:0x8 data:double -lbl_801D4C10 = .sdata2:0x801D4C10; // type:object size:0x4 data:float -lbl_801D4C18 = .sdata2:0x801D4C18; // type:object size:0x8 data:double -lbl_801D4C20 = .sdata2:0x801D4C20; // type:object size:0x4 data:float -lbl_801D4C24 = .sdata2:0x801D4C24; // type:object size:0x4 data:float +lbl_801D4990 = .sdata2:0x801D4990; // type:object size:0x4 scope:local data:float +lbl_801D4994 = .sdata2:0x801D4994; // type:object size:0x4 scope:local data:float +lbl_801D4998 = .sdata2:0x801D4998; // type:object size:0x4 scope:local data:float +lbl_801D49A0 = .sdata2:0x801D49A0; // type:object size:0x8 scope:local data:double +lbl_801D49A8 = .sdata2:0x801D49A8; // type:object size:0x4 scope:local data:float +lbl_801D49AC = .sdata2:0x801D49AC; // type:object size:0x4 scope:local data:float +lbl_801D49B0 = .sdata2:0x801D49B0; // type:object size:0x8 scope:local data:double +lbl_801D49B8 = .sdata2:0x801D49B8; // type:object size:0x8 scope:local data:double +lbl_801D49C0 = .sdata2:0x801D49C0; // type:object size:0x8 scope:local data:double +lbl_801D49C8 = .sdata2:0x801D49C8; // type:object size:0x8 scope:local data:double +lbl_801D49D0 = .sdata2:0x801D49D0; // type:object size:0x8 scope:local data:double +lbl_801D49D8 = .sdata2:0x801D49D8; // type:object size:0x8 scope:local data:double +lbl_801D49E0 = .sdata2:0x801D49E0; // type:object size:0x4 scope:local data:float +lbl_801D49E4 = .sdata2:0x801D49E4; // type:object size:0x4 scope:local data:float +lbl_801D49E8 = .sdata2:0x801D49E8; // type:object size:0x8 scope:local data:double +lbl_801D49F0 = .sdata2:0x801D49F0; // type:object size:0x4 scope:local data:float +lbl_801D49F4 = .sdata2:0x801D49F4; // type:object size:0x4 scope:local data:float +lbl_801D49F8 = .sdata2:0x801D49F8; // type:object size:0x4 scope:local data:float +lbl_801D49FC = .sdata2:0x801D49FC; // type:object size:0x4 scope:local data:float +lbl_801D4A00 = .sdata2:0x801D4A00; // type:object size:0x4 scope:local data:float +lbl_801D4A04 = .sdata2:0x801D4A04; // type:object size:0x4 scope:local data:float +lbl_801D4A08 = .sdata2:0x801D4A08; // type:object size:0x4 scope:local data:float +lbl_801D4A0C = .sdata2:0x801D4A0C; // type:object size:0x4 scope:local data:float +lbl_801D4A10 = .sdata2:0x801D4A10; // type:object size:0x4 scope:local data:float +lbl_801D4A14 = .sdata2:0x801D4A14; // type:object size:0x4 scope:local data:float +lbl_801D4A18 = .sdata2:0x801D4A18; // type:object size:0x4 scope:local data:float +lbl_801D4A1C = .sdata2:0x801D4A1C; // type:object size:0x4 scope:local data:float +lbl_801D4A20 = .sdata2:0x801D4A20; // type:object size:0x4 scope:local data:float +lbl_801D4A24 = .sdata2:0x801D4A24; // type:object size:0x4 scope:local data:float +lbl_801D4A28 = .sdata2:0x801D4A28; // type:object size:0x4 scope:local data:float +lbl_801D4A2C = .sdata2:0x801D4A2C; // type:object size:0x4 scope:local data:float +lbl_801D4A30 = .sdata2:0x801D4A30; // type:object size:0x4 scope:local data:float +lbl_801D4A34 = .sdata2:0x801D4A34; // type:object size:0x4 scope:local data:float +lbl_801D4A38 = .sdata2:0x801D4A38; // type:object size:0x8 scope:local data:double +lbl_801D4A40 = .sdata2:0x801D4A40; // type:object size:0x4 scope:local data:float +lbl_801D4A44 = .sdata2:0x801D4A44; // type:object size:0x4 scope:local data:float +lbl_801D4A48 = .sdata2:0x801D4A48; // type:object size:0x8 scope:local data:double +lbl_801D4A50 = .sdata2:0x801D4A50; // type:object size:0x8 scope:local data:double +lbl_801D4A58 = .sdata2:0x801D4A58; // type:object size:0x4 scope:local data:float +lbl_801D4A5C = .sdata2:0x801D4A5C; // type:object size:0x4 scope:local data:float +lbl_801D4A60 = .sdata2:0x801D4A60; // type:object size:0x8 scope:local data:double +lbl_801D4A68 = .sdata2:0x801D4A68; // type:object size:0x4 scope:local data:float +lbl_801D4A6C = .sdata2:0x801D4A6C; // type:object size:0x4 scope:local data:float +lbl_801D4A70 = .sdata2:0x801D4A70; // type:object size:0x4 scope:local data:float +lbl_801D4A74 = .sdata2:0x801D4A74; // type:object size:0x4 scope:local data:float +lbl_801D4A78 = .sdata2:0x801D4A78; // type:object size:0x4 scope:local data:float +lbl_801D4A80 = .sdata2:0x801D4A80; // type:object size:0x8 scope:local data:double +lbl_801D4A88 = .sdata2:0x801D4A88; // type:object size:0x4 scope:local data:float +lbl_801D4A90 = .sdata2:0x801D4A90; // type:object size:0x8 scope:local data:double +lbl_801D4A98 = .sdata2:0x801D4A98; // type:object size:0x4 scope:local data:float +lbl_801D4A9C = .sdata2:0x801D4A9C; // type:object size:0x4 scope:local data:float +lbl_801D4AA0 = .sdata2:0x801D4AA0; // type:object size:0x4 scope:local data:float +lbl_801D4AA4 = .sdata2:0x801D4AA4; // type:object size:0x4 scope:local data:float +lbl_801D4AA8 = .sdata2:0x801D4AA8; // type:object size:0x8 scope:local data:double +lbl_801D4AB0 = .sdata2:0x801D4AB0; // type:object size:0x4 scope:local data:float +lbl_801D4AB8 = .sdata2:0x801D4AB8; // type:object size:0x8 scope:local data:double +lbl_801D4AC0 = .sdata2:0x801D4AC0; // type:object size:0x8 scope:local data:double +lbl_801D4AC8 = .sdata2:0x801D4AC8; // type:object size:0x8 scope:local data:double +lbl_801D4AD0 = .sdata2:0x801D4AD0; // type:object size:0x4 scope:local data:float +lbl_801D4AD8 = .sdata2:0x801D4AD8; // type:object size:0x8 scope:local data:double +lbl_801D4AE0 = .sdata2:0x801D4AE0; // type:object size:0x4 scope:local data:float +lbl_801D4AE4 = .sdata2:0x801D4AE4; // type:object size:0x4 scope:local data:float +lbl_801D4AE8 = .sdata2:0x801D4AE8; // type:object size:0x4 scope:local data:float +lbl_801D4AEC = .sdata2:0x801D4AEC; // type:object size:0x4 scope:local data:float +lbl_801D4AF0 = .sdata2:0x801D4AF0; // type:object size:0x4 scope:local data:float +lbl_801D4AF4 = .sdata2:0x801D4AF4; // type:object size:0x4 scope:local data:float +lbl_801D4AF8 = .sdata2:0x801D4AF8; // type:object size:0x4 scope:local data:float +lbl_801D4AFC = .sdata2:0x801D4AFC; // type:object size:0x4 scope:local data:float +lbl_801D4B00 = .sdata2:0x801D4B00; // type:object size:0x8 scope:local data:double +lbl_801D4B08 = .sdata2:0x801D4B08; // type:object size:0x8 scope:local data:double +lbl_801D4B10 = .sdata2:0x801D4B10; // type:object size:0x8 scope:local data:double +lbl_801D4B18 = .sdata2:0x801D4B18; // type:object size:0x2 scope:local data:2byte +lbl_801D4B1A = .sdata2:0x801D4B1A; // type:object size:0x2 scope:local data:2byte +lbl_801D4B1C = .sdata2:0x801D4B1C; // type:object size:0x2 scope:local data:2byte +lbl_801D4B20 = .sdata2:0x801D4B20; // type:object size:0x4 scope:local data:float +lbl_801D4B24 = .sdata2:0x801D4B24; // type:object size:0x4 scope:local data:float +lbl_801D4B28 = .sdata2:0x801D4B28; // type:object size:0x4 scope:local data:float +lbl_801D4B2C = .sdata2:0x801D4B2C; // type:object size:0x4 scope:local data:float +lbl_801D4B30 = .sdata2:0x801D4B30; // type:object size:0x4 scope:local data:float +lbl_801D4B34 = .sdata2:0x801D4B34; // type:object size:0x4 scope:local data:float +lbl_801D4B38 = .sdata2:0x801D4B38; // type:object size:0x4 scope:local data:float +lbl_801D4B3C = .sdata2:0x801D4B3C; // type:object size:0x4 scope:local data:float +lbl_801D4B40 = .sdata2:0x801D4B40; // type:object size:0x4 scope:local data:float +lbl_801D4B44 = .sdata2:0x801D4B44; // type:object size:0x4 scope:local data:float +lbl_801D4B48 = .sdata2:0x801D4B48; // type:object size:0x8 scope:local data:double +lbl_801D4B50 = .sdata2:0x801D4B50; // type:object size:0x8 scope:local data:double +lbl_801D4B58 = .sdata2:0x801D4B58; // type:object size:0x4 scope:local data:float +lbl_801D4B5C = .sdata2:0x801D4B5C; // type:object size:0x4 scope:local data:float +lbl_801D4B60 = .sdata2:0x801D4B60; // type:object size:0x4 scope:local data:float +lbl_801D4B68 = .sdata2:0x801D4B68; // type:object size:0x8 scope:local data:double +lbl_801D4B70 = .sdata2:0x801D4B70; // type:object size:0x8 scope:local data:double +lbl_801D4B78 = .sdata2:0x801D4B78; // type:object size:0x4 scope:local data:float +lbl_801D4B7C = .sdata2:0x801D4B7C; // type:object size:0x4 scope:local data:float +lbl_801D4B80 = .sdata2:0x801D4B80; // type:object size:0x8 scope:local data:double +lbl_801D4B88 = .sdata2:0x801D4B88; // type:object size:0x4 scope:local data:float +lbl_801D4B8C = .sdata2:0x801D4B8C; // type:object size:0x4 scope:local data:float +lbl_801D4B90 = .sdata2:0x801D4B90; // type:object size:0x8 scope:local data:double +lbl_801D4B98 = .sdata2:0x801D4B98; // type:object size:0x4 scope:local data:float +lbl_801D4BA0 = .sdata2:0x801D4BA0; // type:object size:0x8 scope:local data:double +lbl_801D4BA8 = .sdata2:0x801D4BA8; // type:object size:0x4 scope:local data:float +lbl_801D4BAC = .sdata2:0x801D4BAC; // type:object size:0x4 scope:local data:float +lbl_801D4BB0 = .sdata2:0x801D4BB0; // type:object size:0x4 scope:local data:float +lbl_801D4BB4 = .sdata2:0x801D4BB4; // type:object size:0x4 scope:local data:float +lbl_801D4BB8 = .sdata2:0x801D4BB8; // type:object size:0x8 scope:local data:double +lbl_801D4BC0 = .sdata2:0x801D4BC0; // type:object size:0x4 scope:local data:float +lbl_801D4BC4 = .sdata2:0x801D4BC4; // type:object size:0x4 scope:local data:float +lbl_801D4BC8 = .sdata2:0x801D4BC8; // type:object size:0x4 scope:local data:float +lbl_801D4BCC = .sdata2:0x801D4BCC; // type:object size:0x4 scope:local data:float +lbl_801D4BD0 = .sdata2:0x801D4BD0; // type:object size:0x4 scope:local data:float +lbl_801D4BD8 = .sdata2:0x801D4BD8; // type:object size:0x8 scope:local data:double +lbl_801D4BE0 = .sdata2:0x801D4BE0; // type:object size:0x4 scope:local data:float +lbl_801D4BE4 = .sdata2:0x801D4BE4; // type:object size:0x4 scope:local data:float +lbl_801D4BE8 = .sdata2:0x801D4BE8; // type:object size:0x4 scope:local data:float +lbl_801D4BEC = .sdata2:0x801D4BEC; // type:object size:0x4 scope:local data:float +lbl_801D4BF0 = .sdata2:0x801D4BF0; // type:object size:0x4 scope:local data:float +lbl_801D4BF4 = .sdata2:0x801D4BF4; // type:object size:0x4 scope:local data:float +lbl_801D4BF8 = .sdata2:0x801D4BF8; // type:object size:0x8 scope:local data:double +lbl_801D4C00 = .sdata2:0x801D4C00; // type:object size:0x4 scope:local data:float +lbl_801D4C08 = .sdata2:0x801D4C08; // type:object size:0x8 scope:local data:double +lbl_801D4C10 = .sdata2:0x801D4C10; // type:object size:0x4 scope:local data:float +lbl_801D4C18 = .sdata2:0x801D4C18; // type:object size:0x8 scope:local data:double +lbl_801D4C20 = .sdata2:0x801D4C20; // type:object size:0x4 scope:local data:float +lbl_801D4C24 = .sdata2:0x801D4C24; // type:object size:0x4 scope:local data:float lbl_801D4C28 = .sdata2:0x801D4C28; // type:object size:0x4 data:float lbl_801D4C30 = .sdata2:0x801D4C30; // type:object size:0x8 data:double lbl_801D4C38 = .sdata2:0x801D4C38; // type:object size:0x8 data:double diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index 03c4876c..a679c466 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -666,29 +666,29 @@ MGSeqKillAll = .text:0x80035A28; // type:function size:0x3C MGSeqDoneCheck = .text:0x80035A64; // type:function size:0xA4 MGSeqStub = .text:0x80035B08; // type:function size:0x4 MGSeqSprKill = .text:0x80035B0C; // type:function size:0x8C -SeqInitTimer = .text:0x80035B98; // type:function size:0x2F0 scope:local -SeqUpdateTimer = .text:0x80035E88; // type:function size:0x69C scope:local -SeqInitType2 = .text:0x80036524; // type:function size:0x3D8 -SeqUpdateType2 = .text:0x800368FC; // type:function size:0x2F8 +MGSeqInitTimer = .text:0x80035B98; // type:function size:0x2F0 +MGSeqUpdateTimer = .text:0x80035E88; // type:function size:0x69C +MGSeqInitType2 = .text:0x80036524; // type:function size:0x3D8 +MGSeqUpdateType2 = .text:0x800368FC; // type:function size:0x2F8 fn_80036BC8 = .text:0x80036BF4; // type:function size:0x188 SeqMakeWord = .text:0x80036D7C; // type:function size:0x1D0 scope:local SeqLoadFontChar = .text:0x80036F4C; // type:function size:0x26C scope:local -SeqInitMGBasic = .text:0x800371B8; // type:function size:0x194 scope:local -SeqUpdateMGBasic = .text:0x8003734C; // type:function size:0x9D0 scope:local -SeqInitMGCommon = .text:0x80037D1C; // type:function size:0x2A4 scope:local -SeqUpdateMGBattle = .text:0x80037FC0; // type:function size:0xDA4 scope:local -SeqUpdateMG1vs3 = .text:0x80038D64; // type:function size:0xDA4 scope:local -SeqUpdateMGStory = .text:0x80039B08; // type:function size:0xBB8 scope:local -SeqUpdateMG2vs2 = .text:0x8003A6C0; // type:function size:0xAB4 scope:local -SeqInitFlip = .text:0x8003B174; // type:function size:0x3C4 scope:local -SeqUpdateFlip = .text:0x8003B538; // type:function size:0x91C scope:local -SeqUpdateMGBowser = .text:0x8003BE54; // type:function size:0xC84 scope:local -SeqInitDraw = .text:0x8003CAD8; // type:function size:0xDC scope:local -SeqUpdateDraw = .text:0x8003CBB4; // type:function size:0x3DC scope:local -SeqInitWin = .text:0x8003CF90; // type:function size:0x6D0 scope:local -SeqUpdateWin = .text:0x8003D660; // type:function size:0x708 scope:local -SeqInitRecord = .text:0x8003DD68; // type:function size:0x764 scope:local -SeqUpdateRecord = .text:0x8003E4CC; // type:function size:0x304 scope:local +MGSeqInitMGBasic = .text:0x800371B8; // type:function size:0x194 +MGSeqUpdateMGBasic = .text:0x8003734C; // type:function size:0x9D0 +MGSeqInitMGCommon = .text:0x80037D1C; // type:function size:0x2A4 +MGSeqUpdateMGBattle = .text:0x80037FC0; // type:function size:0xDA4 +MGSeqUpdateMG1vs3 = .text:0x80038D64; // type:function size:0xDA4 +MGSeqUpdateMGStory = .text:0x80039B08; // type:function size:0xBB8 +MGSeqUpdateMG2vs2 = .text:0x8003A6C0; // type:function size:0xAB4 +MGSeqInitFlip = .text:0x8003B174; // type:function size:0x3C4 +MGSeqUpdateFlip = .text:0x8003B538; // type:function size:0x91C +MGSeqUpdateMGBowser = .text:0x8003BE54; // type:function size:0xC84 +MGSeqInitDraw = .text:0x8003CAD8; // type:function size:0xDC +MGSeqUpdateDraw = .text:0x8003CBB4; // type:function size:0x3DC +MGSeqInitWin = .text:0x8003CF90; // type:function size:0x6D0 +MGSeqUpdateWin = .text:0x8003D660; // type:function size:0x708 +MGSeqInitRecord = .text:0x8003DD68; // type:function size:0x764 +MGSeqUpdateRecord = .text:0x8003E4CC; // type:function size:0x304 MGSeqPauseInit = .text:0x8003E7D0; // type:function size:0x6C PauseProc = .text:0x8003E83C; // type:function size:0x94C scope:local MGSeqPauseKill = .text:0x8003F188; // type:function size:0xC @@ -5842,7 +5842,7 @@ lbl_801F0946 = .sdata:0x801F0946; // type:object size:0x5 scope:local data:strin lbl_801F094B = .sdata:0x801F094B; // type:object size:0x7 scope:local lbl_801F0952 = .sdata:0x801F0952; // type:object size:0x6 scope:local lbl_801F0958 = .sdata:0x801F0958; // type:object size:0x8 scope:local -pauseStr$2309 = .sdata:0x801F0960; // type:object size:0x8 scope:local +pauseStr = .sdata:0x801F0960; // type:object size:0x8 scope:local lbl_801F0968 = .sdata:0x801F0968; // type:object size:0x8 scope:local lbl_801F0970 = .sdata:0x801F0970; // type:object size:0x8 lbl_801F0978 = .sdata:0x801F0978; // type:object size:0x8 diff --git a/configure.py b/configure.py index c4097c0a..bad7edb8 100644 --- a/configure.py +++ b/configure.py @@ -402,8 +402,8 @@ config.libs = [ Object(Matching, "game/objdll.c"), Object(Matching, "game/frand.c"), Object(Matching, "game/audio.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/EnvelopeExec.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/minigame_seq.c"), + Object(Matching, "game/EnvelopeExec.c"), + Object(Matching, "game/minigame_seq.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ovllist.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/esprite.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/code_8003FF68.c"), diff --git a/include/game/minigame_seq.h b/include/game/minigame_seq.h index 8e443630..a345b0fe 100644 --- a/include/game/minigame_seq.h +++ b/include/game/minigame_seq.h @@ -91,6 +91,32 @@ void MGSeqPauseEnableCtrl(s32 flag); void MGSeqPracticeInit(void); void MGSeqPracticeExitCheck(omObjData *object); +s32 MGSeqInitTimer(SeqWork *work, va_list params); +s32 MGSeqUpdateTimer(SeqWork *work); + +s32 MGSeqInitType2(SeqWork *work, va_list params); +s32 MGSeqUpdateType2(SeqWork *work); + +s32 MGSeqUpdateMGBattle(SeqWork *work); + +s32 MGSeqInitMGBasic(SeqWork *work, va_list params); +s32 MGSeqUpdateMGBasic(SeqWork *work); +s32 MGSeqInitMGCommon(SeqWork *work, va_list params); +s32 MGSeqUpdateMG1vs3(SeqWork *work); +s32 MGSeqUpdateMGStory(SeqWork *work); +s32 MGSeqUpdateMG2vs2(SeqWork *work); +s32 MGSeqUpdateMGBowser(SeqWork *work); + +s32 MGSeqInitWin(SeqWork *work, va_list params); +s32 MGSeqUpdateWin(SeqWork *work); +s32 MGSeqInitDraw(SeqWork *work, va_list params); +s32 MGSeqUpdateDraw(SeqWork *work); +s32 MGSeqInitRecord(SeqWork *work, va_list params); +s32 MGSeqUpdateRecord(SeqWork *work); + +s32 MGSeqInitFlip(SeqWork *work, va_list params); +s32 MGSeqUpdateFlip(SeqWork *work); + extern OverlayID mgSeqOvlPrev; #endif diff --git a/src/game/minigame_seq.c b/src/game/minigame_seq.c index b163d790..886a1adc 100644 --- a/src/game/minigame_seq.c +++ b/src/game/minigame_seq.c @@ -33,69 +33,55 @@ typedef struct seq_info { s32 time_max; } SeqInfo; -static s32 SeqInitTimer(SeqWork *work, va_list params); -static s32 SeqUpdateTimer(SeqWork *work); - -static s32 SeqInitType2(SeqWork *work, va_list params); -static s32 SeqUpdateType2(SeqWork *work); - -static s32 SeqInitMGBasic(SeqWork *work, va_list params); -static s32 SeqUpdateMGBasic(SeqWork *work); -static s32 SeqInitMGCommon(SeqWork *work, va_list params); -static s32 SeqUpdateMG1vs3(SeqWork *work); -static s32 SeqUpdateMGBattle(SeqWork *work); -static s32 SeqUpdateMGStory(SeqWork *work); -static s32 SeqUpdateMG2vs2(SeqWork *work); -static s32 SeqUpdateMGBowser(SeqWork *work); - -static s32 SeqInitWin(SeqWork *work, va_list params); -static s32 SeqUpdateWin(SeqWork *work); -static s32 SeqInitDraw(SeqWork *work, va_list params); -static s32 SeqUpdateDraw(SeqWork *work); -static s32 SeqInitRecord(SeqWork *work, va_list params); -static s32 SeqUpdateRecord(SeqWork *work); - -static s32 SeqInitFlip(SeqWork *work, va_list params); -static s32 SeqUpdateFlip(SeqWork *work); - OverlayID mgSeqOvlPrev = OVL_INVALID; static SeqInfo seqInfoTbl[] = { { NULL, NULL, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, - { SeqInitTimer, SeqUpdateTimer, HU_DISP_CENTERX + 4, 64.0f, 1.0f, 1.0f, 60 }, - { SeqInitType2, SeqUpdateType2, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 0.5f, 0.5f, 60 }, - { SeqInitMGBasic, SeqUpdateMGBasic, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMG1vs3, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitWin, SeqUpdateWin, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMGBattle, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMGStory, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGBasic, SeqUpdateMGBasic, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMG2vs2, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitFlip, SeqUpdateFlip, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitMGCommon, SeqUpdateMGBowser, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitWin, SeqUpdateWin, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, - { SeqInitDraw, SeqUpdateDraw, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, - { SeqInitRecord, SeqUpdateRecord, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitTimer, MGSeqUpdateTimer, HU_DISP_CENTERX + 4, 64.0f, 1.0f, 1.0f, 60 }, + { MGSeqInitType2, MGSeqUpdateType2, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 0.5f, 0.5f, 60 }, + { MGSeqInitMGBasic, MGSeqUpdateMGBasic, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitMGCommon, MGSeqUpdateMG1vs3, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitWin, MGSeqUpdateWin, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitMGCommon, MGSeqUpdateMGBattle, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitMGCommon, MGSeqUpdateMGStory, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitMGBasic, MGSeqUpdateMGBasic, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitMGCommon, MGSeqUpdateMG2vs2, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitFlip, MGSeqUpdateFlip, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitMGCommon, MGSeqUpdateMGBowser, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitWin, MGSeqUpdateWin, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, + { MGSeqInitDraw, MGSeqUpdateDraw, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, + { MGSeqInitRecord, MGSeqUpdateRecord, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 180 }, { NULL, NULL, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, { NULL, NULL, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, }; static s32 seqType2SprTbl[6] = { 0, 0, 0, 0, 0, 0 }; -static s16 mgSeqTypeTbl[9] = { MG_SEQ_TYPE_4P, MG_SEQ_TYPE_1VS3, MG_SEQ_TYPE_2VS2, MG_SEQ_TYPE_BOWSER, MG_SEQ_TYPE_BATTLE, MG_SEQ_TYPE_PINBALL, - MG_SEQ_TYPE_STORY, MG_SEQ_TYPE_BOWSER, MG_SEQ_TYPE_STORY }; +static s16 mgSeqTypeTbl[9] = { + MG_SEQ_TYPE_4P, + MG_SEQ_TYPE_1VS3, + MG_SEQ_TYPE_2VS2, + MG_SEQ_TYPE_BOWSER, + MG_SEQ_TYPE_BATTLE, + MG_SEQ_TYPE_PINBALL, + MG_SEQ_TYPE_STORY, + MG_SEQ_TYPE_BOWSER, + MG_SEQ_TYPE_STORY, +}; -static char lbl_8012F336[] = { "アイウエオカキク" - "ケコサシスセソタ" - "チツテトナニヌネ" - "ノハヒフヘホマミ" - "ムメモヤユヨラリ" - "ルレロワヲンァィ" - "ゥェォャュョッカ" - "キクコサシスセソ" - "タチツテトハヒフ" - "ヘホハヒフヘホ" - "!?ー" }; +static char lbl_8012F336[] = { + "アイウエオカキク" + "ケコサシスセソタ" + "チツテトナニヌネ" + "ノハヒフヘホマミ" + "ムメモヤユヨラリ" + "ルレロワヲンァィ" + "ゥェォャュョッカ" + "キクコサシスセソ" + "タチツテトハヒフ" + "ヘホハヒフヘホ" + "!?ー", +}; static char lbl_8012F389[] = "x first\n"; static char lbl_8012F392[] = "y first\n"; @@ -339,7 +325,7 @@ static void *SeqReadFile(s32 file) return HuAR_ARAMtoMRAMFileRead(file, MEMORY_DEFAULT_NUM, HEAP_DATA); } -static s32 SeqInitTimer(SeqWork *work, va_list params) +s32 MGSeqInitTimer(SeqWork *work, va_list params) { AnimData *spr_anim; s16 sprite; @@ -401,7 +387,7 @@ static s32 SeqInitTimer(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateTimer(SeqWork *work) +s32 MGSeqUpdateTimer(SeqWork *work) { float scale; float tp_lvl; @@ -558,7 +544,7 @@ static s32 SeqUpdateTimer(SeqWork *work) } } -static s32 SeqInitType2(SeqWork *work, va_list params) +s32 MGSeqInitType2(SeqWork *work, va_list params) { s16 spr_idx; s16 spr_grp; @@ -667,7 +653,7 @@ static s32 SeqInitType2(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateType2(SeqWork *work) +s32 MGSeqUpdateType2(SeqWork *work) { float tp_lvl; s16 spr_grp; @@ -818,14 +804,20 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags); static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags) { + s16 len; + s16 x; + s16 i; + s16 grp_idx; +#if VERSION_JAP + char *str_ptr; + AnimData **char_anim; + s16 *char_pos; +#else + AnimData **char_anim; s16 *char_pos; char *str_ptr; +#endif s16 spr_grp; - s16 i; - s16 x; - s16 grp_idx; - s16 len; - AnimData **char_anim; for (grp_idx = 0; grp_idx < 16; grp_idx++) { if (work->spr_grp[grp_idx] == -1) { break; @@ -839,13 +831,27 @@ static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags) str_ptr = str; x = 0; len = 0; - while (*str_ptr != 0) { + while (*str_ptr != '\0') { +#if VERSION_JAP + if (*str_ptr == ' ') { + x += 56; + } + else { + char_anim[len] = SeqLoadFontChar(str_ptr, flags); + if (char_anim[len]) { + char_pos[len] = x; + x += 56; + len++; + } + } +#else char_anim[len] = SeqLoadFontChar(str_ptr, flags); if (char_anim[len]) { char_pos[len] = x; x += 56; len++; } +#endif str_ptr++; } work->spr_grp[grp_idx] = spr_grp = HuSprGrpCreate(len); @@ -870,24 +876,26 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags) if (c == 222 || c == 223) { return NULL; } +#if !VERSION_JAP if (c == 32) { return HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 10))); } +#endif for (id = 0, list = seqFontAlphaTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 21); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 20 : 21)); return HuSprAnimRead(SeqReadFile(data_num)); } } for (id = 0, list = seqFontNumTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 11); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 10 : 11)); return HuSprAnimRead(SeqReadFile(data_num)); } } for (id = 0, list = seqPunctTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 154); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 153 : 154)); return HuSprAnimRead(SeqReadFile(data_num)); } } @@ -908,10 +916,10 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags) while (*list != 0) { if (*list == c) { if (flags & 0x1) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 156); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 155 : 156)); } else { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + 73); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 72 : 73)); } return HuSprAnimRead(SeqReadFile(data_num)); } @@ -928,14 +936,14 @@ static float ForceDefine480() static void SeqPlayStartFX(void); -static s32 SeqInitMGBasic(SeqWork *work, va_list params) +s32 MGSeqInitMGBasic(SeqWork *work, va_list params) { s16 i; s16 word_grp; work->state = va_arg(params, int); if (work->state == 2) { - return SeqInitDraw(work, params); + return MGSeqInitDraw(work, params); } work->type = 0; work->angle = 0; @@ -978,7 +986,7 @@ static s32 SeqInitMGBasic(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateMGBasic(SeqWork *work) +s32 MGSeqUpdateMGBasic(SeqWork *work) { s16 idx; float scale; @@ -1147,7 +1155,7 @@ static s32 SeqUpdateMGBasic(SeqWork *work) return 1; } -static s32 SeqInitMGCommon(SeqWork *work, va_list params) +s32 MGSeqInitMGCommon(SeqWork *work, va_list params) { s16 i; float tp_lvl; @@ -1156,7 +1164,7 @@ static s32 SeqInitMGCommon(SeqWork *work, va_list params) work->state = va_arg(params, int); if (work->state == 2) { - return SeqInitDraw(work, params); + return MGSeqInitDraw(work, params); } work->type = 0; work->angle = 0; @@ -1226,7 +1234,7 @@ static s32 SeqInitMGCommon(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateMGBattle(SeqWork *work) +s32 MGSeqUpdateMGBattle(SeqWork *work) { s16 idx; float scale; @@ -1465,7 +1473,7 @@ static s32 SeqUpdateMGBattle(SeqWork *work) return 1; } -static s32 SeqUpdateMG1vs3(SeqWork *work) +s32 MGSeqUpdateMG1vs3(SeqWork *work) { s16 idx; float scale; @@ -1678,7 +1686,7 @@ static s32 SeqUpdateMG1vs3(SeqWork *work) return 1; } -static s32 SeqUpdateMGStory(SeqWork *work) +s32 MGSeqUpdateMGStory(SeqWork *work) { s16 idx; float scale; @@ -1889,7 +1897,7 @@ static s32 SeqUpdateMGStory(SeqWork *work) return 1; } -static s32 SeqUpdateMG2vs2(SeqWork *work) +s32 MGSeqUpdateMG2vs2(SeqWork *work) { s16 idx; float scale; @@ -2062,14 +2070,14 @@ static s32 SeqUpdateMG2vs2(SeqWork *work) return 1; } -static s32 SeqInitFlip(SeqWork *work, va_list params) +s32 MGSeqInitFlip(SeqWork *work, va_list params) { s16 i; s16 word_grp; s16 word_ofs; work->state = va_arg(params, int); if (work->state == 2) { - return SeqInitDraw(work, params); + return MGSeqInitDraw(work, params); } work->type = 0; work->angle = 0; @@ -2148,7 +2156,7 @@ static s32 SeqInitFlip(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateFlip(SeqWork *work) +s32 MGSeqUpdateFlip(SeqWork *work) { s16 idx; float scale; @@ -2321,7 +2329,7 @@ static s32 SeqUpdateFlip(SeqWork *work) return 1; } -static s32 SeqUpdateMGBowser(SeqWork *work) +s32 MGSeqUpdateMGBowser(SeqWork *work) { s16 idx; float scale; @@ -2545,7 +2553,7 @@ static s32 SeqUpdateMGBowser(SeqWork *work) return 1; } -static s32 SeqInitDraw(SeqWork *work, va_list params) +s32 MGSeqInitDraw(SeqWork *work, va_list params) { s16 word_grp; work->state = 2; @@ -2576,7 +2584,7 @@ static s32 SeqInitDraw(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateDraw(SeqWork *work) +s32 MGSeqUpdateDraw(SeqWork *work) { s16 idx; float scale; @@ -2665,22 +2673,54 @@ static s32 SeqUpdateDraw(SeqWork *work) return 1; } -static char *winCharNameTbl[] - = { "マリオ", "MARIO", "ルイージ", "LUIGI", "ピーチ", "PEACH", "ヨッシー", "YOSHI", "ワリオ", "WARIO", "ドンキー", " DK ", "デイジー", "DAISY", "ワルイージ", "WALUIGI", - "クッパ", "BOWSER", "キノピオ", "TOAD", "ヘイホー", "SHY GUY", "テレサ", "BOO", "ノコノコ", "KOOPA", "ミニクッパ", VERSION_NTSC ? "KOOPA KID" : "MINI BOWSER", "クリボー", "GOOMBA" }; +static char *winCharNameTbl[] = { + "マリオ", + "MARIO", + "ルイージ", + "LUIGI", + "ピーチ", + "PEACH", + "ヨッシー", + "YOSHI", + "ワリオ", + "WARIO", + "ドンキー", + VERSION_JAP ? "DK" : " DK ", + "デイジー", + "DAISY", + "ワルイージ", + "WALUIGI", + "クッパ", + "BOWSER", + "キノピオ", + "TOAD", + "ヘイホー", + VERSION_JAP ? "HEHOH" : "SHY GUY", + "テレサ", + VERSION_JAP ? "TERETHA" : "BOO", + "ノコノコ", + VERSION_JAP ? "NOKONOKO" : "KOOPA", + "ミニクッパ", + VERSION_NTSC ? (VERSION_ENG ? "KOOPA KID" : "BABYBOWSER") : "MINI BOWSER", + "クリボー", + VERSION_JAP ? "KURIBO" : "GOOMBA", +}; static char *winWordTbl[] = { "カチ", "WON!", "ハイボク", "LOSE", "ユウショウ!", "CHAMPION!" }; -static s16 winPosOfs[][5][2] - = { { { 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, { { 0, 35 }, { -144, -35 }, { 144, -35 }, { 0, 0 }, { 0, 0 } }, - { { 0, 105 }, { 0, -105 }, { -144, 0 }, { 144, 0 }, { 0, 0 } }, { { 0, 105 }, { -144, -105 }, { 144, -105 }, { -144, 0 }, { 144, 0 } } }; +static s16 winPosOfs[][5][2] = { + { { VERSION_JAP ? 144 : 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, + { { 0, 35 }, { -144, -35 }, { 144, -35 }, { 0, 0 }, { 0, 0 } }, + { { 0, 105 }, { 0, -105 }, { -144, 0 }, { 144, 0 }, { 0, 0 } }, + { { 0, 105 }, { -144, -105 }, { 144, -105 }, { -144, 0 }, { 144, 0 } }, +}; static s16 winnerNameW[8]; #define GET_LANG_IDX() ((seqLanguage == 0) ? 0 : 1) #define GET_WIN_KANAF() ((seqLanguage == 0) ? 1 : 0) -static s32 SeqInitWin(SeqWork *work, va_list params) +s32 MGSeqInitWin(SeqWork *work, va_list params) { int win_type = va_arg(params, int); s16 word_idx; @@ -2705,13 +2745,17 @@ static s32 SeqInitWin(SeqWork *work, va_list params) } } word_grp = SeqMakeWord(work, winWordTbl[word_idx], GET_WIN_KANAF()); - winnerNameW[0] = work->word_len * 50; + winnerNameW[0] = work->word_len * (VERSION_JAP ? 56 : 50); +#if !VERSION_JAP for (i = 0; i < work->word_len; i++) { HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f); HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); } +#endif num_winners = 0; +#if !VERSION_JAP work->win_scale = 1.0f; +#endif for (j = 0; j < 4; j++) { int winner = va_arg(params, int); (void)winner; // to match PAL @@ -2719,7 +2763,7 @@ static s32 SeqInitWin(SeqWork *work, va_list params) continue; } word_grp = SeqMakeWord(work, winCharNameTbl[(winner * 2) + GET_LANG_IDX()], 0); -#if VERSION_NTSC +#if VERSION_ENG if (seqLanguage != 0) { char *name = winCharNameTbl[(winner * 2) + GET_LANG_IDX()]; word_w = 0.0f; @@ -2751,21 +2795,19 @@ static s32 SeqInitWin(SeqWork *work, va_list params) } winnerNameW[num_winners + 1] = word_w; } - else { - if (winner == 7 || winner == 13) { - for (i = 0; i < work->word_len; i++) { - HuSprPosSet(work->spr_grp[word_grp], i, 26.0f + ((i * 52) - (0.5f * (work->word_len * 52))), 0.0f); - HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); - } - work->win_scale = 0.8f; - winnerNameW[num_winners + 1] = work->word_len * 52; - } - else { - work->win_scale = 1.0f; - winnerNameW[num_winners + 1] = work->word_len * 56; + else if (winner == 7 || winner == 13) { + for (i = 0; i < work->word_len; i++) { + HuSprPosSet(work->spr_grp[word_grp], i, 26.0f + ((i * 52) - (0.5f * (work->word_len * 52))), 0.0f); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); } + work->win_scale = 0.8f; + winnerNameW[num_winners + 1] = work->word_len * 52; } -#else + else { + work->win_scale = 1.0f; + winnerNameW[num_winners + 1] = work->word_len * 56; + } +#elif VERSION_PAL for (i = 0; i < work->word_len; i++) { HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f); HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); @@ -2780,6 +2822,27 @@ static s32 SeqInitWin(SeqWork *work, va_list params) work->win_scale = 0.75f; } winnerNameW[num_winners + 1] = work->word_len * 50; +#else + if (seqLanguage != 0) { + for (i = 0; i < work->word_len; i++) { + HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + (i * 50 - (0.5f * (work->word_len * 50))), 0.0f); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + } + work->win_scale = 0.75f; + winnerNameW[num_winners + 1] = work->word_len * 50; + } + else if (winner == 7 || winner == 13) { + for (i = 0; i < work->word_len; i++) { + HuSprPosSet(work->spr_grp[word_grp], i, 26.0f + ((i * 52) - (0.5f * (work->word_len * 52))), 0.0f); + HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); + } + work->win_scale = 0.8f; + winnerNameW[num_winners + 1] = work->word_len * 52; + } + else { + work->win_scale = 1.0f; + winnerNameW[num_winners + 1] = work->word_len * 56; + } #endif num_winners++; } @@ -2792,7 +2855,11 @@ static s32 SeqInitWin(SeqWork *work, va_list params) work->type = 0; for (j = 0; j < num_winners + 1; j++) { if (num_winners == 1) { +#if VERSION_JAP + word_x = 32 + (winnerNameW[1] + winnerNameW[0]); +#else word_x = 32.0f + ((float)winnerNameW[0] + (winnerNameW[1] * work->win_scale)); +#endif if (j == 0) { word_x = (((HU_DISP_WIDTH - word_x) / 2.0f) + (word_x - (winnerNameW[0] / 2))) - HU_DISP_CENTERX; } @@ -2802,7 +2869,7 @@ static s32 SeqInitWin(SeqWork *work, va_list params) } else { if (abs(winPosOfs[num_winners - 1][j][0]) == 144.0f) { -#if VERSION_NTSC +#if VERSION_ENG if (winnerNameW[j] + 32 < HU_DISP_CENTERX) { word_x = 176.0f; } @@ -2815,7 +2882,7 @@ static s32 SeqInitWin(SeqWork *work, va_list params) else { word_x = (HU_DISP_WIDTH - word_x) - HU_DISP_CENTERX; } -#else +#elif VERSION_PAL if (32.0f + (work->win_scale * winnerNameW[j]) < HU_DISP_CENTERX) { word_x = 32.0f + ((winnerNameW[j] * work->win_scale) / 2.0f); } @@ -2825,6 +2892,16 @@ static s32 SeqInitWin(SeqWork *work, va_list params) if (winPosOfs[num_winners - 1][j][0] < 0) { word_x = -word_x; } +#else + if (32 + winnerNameW[j] < HU_DISP_CENTERX) { + word_x = 32 + winnerNameW[j] / 2; + } + else { + word_x = 120.0f; + } + if (winPosOfs[num_winners - 1][j][0] < 0) { + word_x = -word_x; + } #endif } else { @@ -2846,7 +2923,7 @@ static s32 SeqInitWin(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateWin(SeqWork *work) +s32 MGSeqUpdateWin(SeqWork *work) { s32 idx; float tp_lvl; @@ -2923,15 +3000,15 @@ static s32 SeqUpdateWin(SeqWork *work) else { if (abs(winPosOfs[work->word_len - 2][idx][0]) == 144.0f) { if (winnerNameW[idx] + 32 < HU_DISP_CENTERX) { - pos_x = VERSION_NTSC ? 176.0f : winnerNameW[idx] / 2 + 32; + pos_x = VERSION_ENG ? 176.0f : winnerNameW[idx] / 2 + 32; } else { - pos_x = VERSION_NTSC ? 32.0f + ((winnerNameW[idx] * work->win_scale) / 2.0f) : 128.0f; + pos_x = VERSION_ENG ? 32.0f + ((winnerNameW[idx] * work->win_scale) / 2.0f) : 128.0f; } if (winPosOfs[work->word_len - 2][idx][0] < 0) { - pos_x = VERSION_NTSC ? -(HU_DISP_CENTERX - pos_x) : -pos_x; + pos_x = VERSION_ENG ? -(HU_DISP_CENTERX - pos_x) : -pos_x; } -#if VERSION_NTSC +#if VERSION_ENG else { pos_x = (HU_DISP_WIDTH - pos_x) - HU_DISP_CENTERX; } @@ -2974,7 +3051,7 @@ static s32 SeqUpdateWin(SeqWork *work) return 1; } -static s32 SeqInitRecord(SeqWork *work, va_list params) +s32 MGSeqInitRecord(SeqWork *work, va_list params) { AnimData *spr_data; s16 spr_grp; @@ -3093,7 +3170,7 @@ static s32 SeqInitRecord(SeqWork *work, va_list params) return 1; } -static s32 SeqUpdateRecord(SeqWork *work) +s32 MGSeqUpdateRecord(SeqWork *work) { s16 group; if (_CheckFlag(FLAG_ID_MAKE(1, 12))) { From 6259d3f03a63a594de625401cf969a8e0371030c Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 02:18:50 +0100 Subject: [PATCH 045/178] Fix the spelling of moviedll --- config/GMPJ01_00/splits.txt | 3 + config/GMPJ01_00/symbols.txt | 198 +++++++++++++++++------------------ configure.py | 2 +- include/ovl_table.h | 2 +- 4 files changed, 104 insertions(+), 101 deletions(-) diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index 0cecdb13..70955da0 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -201,3 +201,6 @@ game/minigame_seq.c: .sdata start:0x801D3158 end:0x801D3258 .sbss start:0x801D3A38 end:0x801D3A58 .sdata2 start:0x801D49A8 end:0x801D4B60 + +game/ovllist.c: + .data start:0x8012F378 end:0x8012FCE8 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index b21e9dc2..8b43250a 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -3932,105 +3932,105 @@ winPosOfs = .data:0x8012F180; // type:object size:0x50 scope:local practiceTbl = .data:0x8012F1D0; // type:object size:0xAC scope:local yPosTbl$2429 = .data:0x8012F27C; // type:object size:0xC scope:local seqStartFXTbl = .data:0x8012F288; // type:object size:0xEC scope:local -lbl_8012F378 = .data:0x8012F378; // type:object size:0x15 data:string -lbl_8012F38D = .data:0x8012F38D; // type:object size:0x10 data:string -lbl_8012F39D = .data:0x8012F39D; // type:object size:0x13 data:string -lbl_8012F3B0 = .data:0x8012F3B0; // type:object size:0x10 data:string -lbl_8012F3C0 = .data:0x8012F3C0; // type:object size:0x10 data:string -lbl_8012F3D0 = .data:0x8012F3D0; // type:object size:0x10 data:string -lbl_8012F3E0 = .data:0x8012F3E0; // type:object size:0x10 data:string -lbl_8012F3F0 = .data:0x8012F3F0; // type:object size:0x10 data:string -lbl_8012F400 = .data:0x8012F400; // type:object size:0x10 data:string -lbl_8012F410 = .data:0x8012F410; // type:object size:0x10 data:string -lbl_8012F420 = .data:0x8012F420; // type:object size:0x10 data:string -lbl_8012F430 = .data:0x8012F430; // type:object size:0x10 data:string -lbl_8012F440 = .data:0x8012F440; // type:object size:0x10 data:string -lbl_8012F450 = .data:0x8012F450; // type:object size:0x10 data:string -lbl_8012F460 = .data:0x8012F460; // type:object size:0x10 data:string -lbl_8012F470 = .data:0x8012F470; // type:object size:0x10 data:string -lbl_8012F480 = .data:0x8012F480; // type:object size:0x10 data:string -lbl_8012F490 = .data:0x8012F490; // type:object size:0x10 data:string -lbl_8012F4A0 = .data:0x8012F4A0; // type:object size:0x10 data:string -lbl_8012F4B0 = .data:0x8012F4B0; // type:object size:0x10 data:string -lbl_8012F4C0 = .data:0x8012F4C0; // type:object size:0x10 data:string -lbl_8012F4D0 = .data:0x8012F4D0; // type:object size:0x10 data:string -lbl_8012F4E0 = .data:0x8012F4E0; // type:object size:0x10 data:string -lbl_8012F4F0 = .data:0x8012F4F0; // type:object size:0x10 data:string -lbl_8012F500 = .data:0x8012F500; // type:object size:0x10 data:string -lbl_8012F510 = .data:0x8012F510; // type:object size:0x10 data:string -lbl_8012F520 = .data:0x8012F520; // type:object size:0x10 data:string -lbl_8012F530 = .data:0x8012F530; // type:object size:0x10 data:string -lbl_8012F540 = .data:0x8012F540; // type:object size:0x10 data:string -lbl_8012F550 = .data:0x8012F550; // type:object size:0x10 data:string -lbl_8012F560 = .data:0x8012F560; // type:object size:0x10 data:string -lbl_8012F570 = .data:0x8012F570; // type:object size:0x10 data:string -lbl_8012F580 = .data:0x8012F580; // type:object size:0x10 data:string -lbl_8012F590 = .data:0x8012F590; // type:object size:0x10 data:string -lbl_8012F5A0 = .data:0x8012F5A0; // type:object size:0x10 data:string -lbl_8012F5B0 = .data:0x8012F5B0; // type:object size:0x10 data:string -lbl_8012F5C0 = .data:0x8012F5C0; // type:object size:0x10 data:string -lbl_8012F5D0 = .data:0x8012F5D0; // type:object size:0x10 data:string -lbl_8012F5E0 = .data:0x8012F5E0; // type:object size:0x10 data:string -lbl_8012F5F0 = .data:0x8012F5F0; // type:object size:0x10 data:string -lbl_8012F600 = .data:0x8012F600; // type:object size:0x10 data:string -lbl_8012F610 = .data:0x8012F610; // type:object size:0x10 data:string -lbl_8012F620 = .data:0x8012F620; // type:object size:0x10 data:string -lbl_8012F630 = .data:0x8012F630; // type:object size:0x10 data:string -lbl_8012F640 = .data:0x8012F640; // type:object size:0x10 data:string -lbl_8012F650 = .data:0x8012F650; // type:object size:0x10 data:string -lbl_8012F660 = .data:0x8012F660; // type:object size:0x10 data:string -lbl_8012F670 = .data:0x8012F670; // type:object size:0x10 data:string -lbl_8012F680 = .data:0x8012F680; // type:object size:0x10 data:string -lbl_8012F690 = .data:0x8012F690; // type:object size:0x10 data:string -lbl_8012F6A0 = .data:0x8012F6A0; // type:object size:0x10 data:string -lbl_8012F6B0 = .data:0x8012F6B0; // type:object size:0x10 data:string -lbl_8012F6C0 = .data:0x8012F6C0; // type:object size:0x10 data:string -lbl_8012F6D0 = .data:0x8012F6D0; // type:object size:0x10 data:string -lbl_8012F6E0 = .data:0x8012F6E0; // type:object size:0x10 data:string -lbl_8012F6F0 = .data:0x8012F6F0; // type:object size:0x10 data:string -lbl_8012F700 = .data:0x8012F700; // type:object size:0x10 data:string -lbl_8012F710 = .data:0x8012F710; // type:object size:0x10 data:string -lbl_8012F720 = .data:0x8012F720; // type:object size:0x10 data:string -lbl_8012F730 = .data:0x8012F730; // type:object size:0x10 data:string -lbl_8012F740 = .data:0x8012F740; // type:object size:0x10 data:string -lbl_8012F750 = .data:0x8012F750; // type:object size:0x10 data:string -lbl_8012F760 = .data:0x8012F760; // type:object size:0x10 data:string -lbl_8012F770 = .data:0x8012F770; // type:object size:0x10 data:string -lbl_8012F780 = .data:0x8012F780; // type:object size:0x10 data:string -lbl_8012F790 = .data:0x8012F790; // type:object size:0x10 data:string -lbl_8012F7A0 = .data:0x8012F7A0; // type:object size:0x10 data:string -lbl_8012F7B0 = .data:0x8012F7B0; // type:object size:0x10 data:string -lbl_8012F7C0 = .data:0x8012F7C0; // type:object size:0x10 data:string -lbl_8012F7D0 = .data:0x8012F7D0; // type:object size:0x10 data:string -lbl_8012F7E0 = .data:0x8012F7E0; // type:object size:0x10 data:string -lbl_8012F7F0 = .data:0x8012F7F0; // type:object size:0x12 data:string -lbl_8012F802 = .data:0x8012F802; // type:object size:0x15 data:string -lbl_8012F817 = .data:0x8012F817; // type:object size:0x13 data:string -lbl_8012F82A = .data:0x8012F82A; // type:object size:0x11 data:string -lbl_8012F83B = .data:0x8012F83B; // type:object size:0x10 data:string -lbl_8012F84B = .data:0x8012F84B; // type:object size:0x12 data:string -lbl_8012F85D = .data:0x8012F85D; // type:object size:0x13 data:string -lbl_8012F870 = .data:0x8012F870; // type:object size:0x13 data:string -lbl_8012F883 = .data:0x8012F883; // type:object size:0x13 data:string -lbl_8012F896 = .data:0x8012F896; // type:object size:0x12 data:string -lbl_8012F8A8 = .data:0x8012F8A8; // type:object size:0xF data:string -lbl_8012F8B7 = .data:0x8012F8B7; // type:object size:0xF data:string -lbl_8012F8C6 = .data:0x8012F8C6; // type:object size:0x10 data:string -lbl_8012F8D6 = .data:0x8012F8D6; // type:object size:0x12 data:string -lbl_8012F8E8 = .data:0x8012F8E8; // type:object size:0xF data:string -lbl_8012F8F7 = .data:0x8012F8F7; // type:object size:0x13 data:string -lbl_8012F90A = .data:0x8012F90A; // type:object size:0x11 data:string -lbl_8012F91B = .data:0x8012F91B; // type:object size:0x15 data:string -lbl_8012F930 = .data:0x8012F930; // type:object size:0xF data:string -lbl_8012F93F = .data:0x8012F93F; // type:object size:0xF data:string -lbl_8012F94E = .data:0x8012F94E; // type:object size:0xF data:string -lbl_8012F95D = .data:0x8012F95D; // type:object size:0xF data:string -lbl_8012F96C = .data:0x8012F96C; // type:object size:0xF data:string -lbl_8012F97B = .data:0x8012F97B; // type:object size:0xF data:string -lbl_8012F98A = .data:0x8012F98A; // type:object size:0xF data:string -lbl_8012F999 = .data:0x8012F999; // type:object size:0xF data:string -lbl_8012F9A8 = .data:0x8012F9A8; // type:object size:0xF data:string -lbl_8012F9B7 = .data:0x8012F9B7; // type:object size:0x11 +lbl_8012F378 = .data:0x8012F378; // type:object size:0x15 scope:local data:string +lbl_8012F38D = .data:0x8012F38D; // type:object size:0x10 scope:local data:string +lbl_8012F39D = .data:0x8012F39D; // type:object size:0x13 scope:local data:string +lbl_8012F3B0 = .data:0x8012F3B0; // type:object size:0x10 scope:local data:string +lbl_8012F3C0 = .data:0x8012F3C0; // type:object size:0x10 scope:local data:string +lbl_8012F3D0 = .data:0x8012F3D0; // type:object size:0x10 scope:local data:string +lbl_8012F3E0 = .data:0x8012F3E0; // type:object size:0x10 scope:local data:string +lbl_8012F3F0 = .data:0x8012F3F0; // type:object size:0x10 scope:local data:string +lbl_8012F400 = .data:0x8012F400; // type:object size:0x10 scope:local data:string +lbl_8012F410 = .data:0x8012F410; // type:object size:0x10 scope:local data:string +lbl_8012F420 = .data:0x8012F420; // type:object size:0x10 scope:local data:string +lbl_8012F430 = .data:0x8012F430; // type:object size:0x10 scope:local data:string +lbl_8012F440 = .data:0x8012F440; // type:object size:0x10 scope:local data:string +lbl_8012F450 = .data:0x8012F450; // type:object size:0x10 scope:local data:string +lbl_8012F460 = .data:0x8012F460; // type:object size:0x10 scope:local data:string +lbl_8012F470 = .data:0x8012F470; // type:object size:0x10 scope:local data:string +lbl_8012F480 = .data:0x8012F480; // type:object size:0x10 scope:local data:string +lbl_8012F490 = .data:0x8012F490; // type:object size:0x10 scope:local data:string +lbl_8012F4A0 = .data:0x8012F4A0; // type:object size:0x10 scope:local data:string +lbl_8012F4B0 = .data:0x8012F4B0; // type:object size:0x10 scope:local data:string +lbl_8012F4C0 = .data:0x8012F4C0; // type:object size:0x10 scope:local data:string +lbl_8012F4D0 = .data:0x8012F4D0; // type:object size:0x10 scope:local data:string +lbl_8012F4E0 = .data:0x8012F4E0; // type:object size:0x10 scope:local data:string +lbl_8012F4F0 = .data:0x8012F4F0; // type:object size:0x10 scope:local data:string +lbl_8012F500 = .data:0x8012F500; // type:object size:0x10 scope:local data:string +lbl_8012F510 = .data:0x8012F510; // type:object size:0x10 scope:local data:string +lbl_8012F520 = .data:0x8012F520; // type:object size:0x10 scope:local data:string +lbl_8012F530 = .data:0x8012F530; // type:object size:0x10 scope:local data:string +lbl_8012F540 = .data:0x8012F540; // type:object size:0x10 scope:local data:string +lbl_8012F550 = .data:0x8012F550; // type:object size:0x10 scope:local data:string +lbl_8012F560 = .data:0x8012F560; // type:object size:0x10 scope:local data:string +lbl_8012F570 = .data:0x8012F570; // type:object size:0x10 scope:local data:string +lbl_8012F580 = .data:0x8012F580; // type:object size:0x10 scope:local data:string +lbl_8012F590 = .data:0x8012F590; // type:object size:0x10 scope:local data:string +lbl_8012F5A0 = .data:0x8012F5A0; // type:object size:0x10 scope:local data:string +lbl_8012F5B0 = .data:0x8012F5B0; // type:object size:0x10 scope:local data:string +lbl_8012F5C0 = .data:0x8012F5C0; // type:object size:0x10 scope:local data:string +lbl_8012F5D0 = .data:0x8012F5D0; // type:object size:0x10 scope:local data:string +lbl_8012F5E0 = .data:0x8012F5E0; // type:object size:0x10 scope:local data:string +lbl_8012F5F0 = .data:0x8012F5F0; // type:object size:0x10 scope:local data:string +lbl_8012F600 = .data:0x8012F600; // type:object size:0x10 scope:local data:string +lbl_8012F610 = .data:0x8012F610; // type:object size:0x10 scope:local data:string +lbl_8012F620 = .data:0x8012F620; // type:object size:0x10 scope:local data:string +lbl_8012F630 = .data:0x8012F630; // type:object size:0x10 scope:local data:string +lbl_8012F640 = .data:0x8012F640; // type:object size:0x10 scope:local data:string +lbl_8012F650 = .data:0x8012F650; // type:object size:0x10 scope:local data:string +lbl_8012F660 = .data:0x8012F660; // type:object size:0x10 scope:local data:string +lbl_8012F670 = .data:0x8012F670; // type:object size:0x10 scope:local data:string +lbl_8012F680 = .data:0x8012F680; // type:object size:0x10 scope:local data:string +lbl_8012F690 = .data:0x8012F690; // type:object size:0x10 scope:local data:string +lbl_8012F6A0 = .data:0x8012F6A0; // type:object size:0x10 scope:local data:string +lbl_8012F6B0 = .data:0x8012F6B0; // type:object size:0x10 scope:local data:string +lbl_8012F6C0 = .data:0x8012F6C0; // type:object size:0x10 scope:local data:string +lbl_8012F6D0 = .data:0x8012F6D0; // type:object size:0x10 scope:local data:string +lbl_8012F6E0 = .data:0x8012F6E0; // type:object size:0x10 scope:local data:string +lbl_8012F6F0 = .data:0x8012F6F0; // type:object size:0x10 scope:local data:string +lbl_8012F700 = .data:0x8012F700; // type:object size:0x10 scope:local data:string +lbl_8012F710 = .data:0x8012F710; // type:object size:0x10 scope:local data:string +lbl_8012F720 = .data:0x8012F720; // type:object size:0x10 scope:local data:string +lbl_8012F730 = .data:0x8012F730; // type:object size:0x10 scope:local data:string +lbl_8012F740 = .data:0x8012F740; // type:object size:0x10 scope:local data:string +lbl_8012F750 = .data:0x8012F750; // type:object size:0x10 scope:local data:string +lbl_8012F760 = .data:0x8012F760; // type:object size:0x10 scope:local data:string +lbl_8012F770 = .data:0x8012F770; // type:object size:0x10 scope:local data:string +lbl_8012F780 = .data:0x8012F780; // type:object size:0x10 scope:local data:string +lbl_8012F790 = .data:0x8012F790; // type:object size:0x10 scope:local data:string +lbl_8012F7A0 = .data:0x8012F7A0; // type:object size:0x10 scope:local data:string +lbl_8012F7B0 = .data:0x8012F7B0; // type:object size:0x10 scope:local data:string +lbl_8012F7C0 = .data:0x8012F7C0; // type:object size:0x10 scope:local data:string +lbl_8012F7D0 = .data:0x8012F7D0; // type:object size:0x10 scope:local data:string +lbl_8012F7E0 = .data:0x8012F7E0; // type:object size:0x10 scope:local data:string +lbl_8012F7F0 = .data:0x8012F7F0; // type:object size:0x12 scope:local data:string +lbl_8012F802 = .data:0x8012F802; // type:object size:0x15 scope:local data:string +lbl_8012F817 = .data:0x8012F817; // type:object size:0x13 scope:local data:string +lbl_8012F82A = .data:0x8012F82A; // type:object size:0x11 scope:local data:string +lbl_8012F83B = .data:0x8012F83B; // type:object size:0x10 scope:local data:string +lbl_8012F84B = .data:0x8012F84B; // type:object size:0x12 scope:local data:string +lbl_8012F85D = .data:0x8012F85D; // type:object size:0x13 scope:local data:string +lbl_8012F870 = .data:0x8012F870; // type:object size:0x13 scope:local data:string +lbl_8012F883 = .data:0x8012F883; // type:object size:0x13 scope:local data:string +lbl_8012F896 = .data:0x8012F896; // type:object size:0x12 scope:local data:string +lbl_8012F8A8 = .data:0x8012F8A8; // type:object size:0xF scope:local data:string +lbl_8012F8B7 = .data:0x8012F8B7; // type:object size:0xF scope:local data:string +lbl_8012F8C6 = .data:0x8012F8C6; // type:object size:0x10 scope:local data:string +lbl_8012F8D6 = .data:0x8012F8D6; // type:object size:0x12 scope:local data:string +lbl_8012F8E8 = .data:0x8012F8E8; // type:object size:0xF scope:local data:string +lbl_8012F8F7 = .data:0x8012F8F7; // type:object size:0x13 scope:local data:string +lbl_8012F90A = .data:0x8012F90A; // type:object size:0x11 scope:local data:string +lbl_8012F91B = .data:0x8012F91B; // type:object size:0x15 scope:local data:string +lbl_8012F930 = .data:0x8012F930; // type:object size:0xF scope:local data:string +lbl_8012F93F = .data:0x8012F93F; // type:object size:0xF scope:local data:string +lbl_8012F94E = .data:0x8012F94E; // type:object size:0xF scope:local data:string +lbl_8012F95D = .data:0x8012F95D; // type:object size:0xF scope:local data:string +lbl_8012F96C = .data:0x8012F96C; // type:object size:0xF scope:local data:string +lbl_8012F97B = .data:0x8012F97B; // type:object size:0xF scope:local data:string +lbl_8012F98A = .data:0x8012F98A; // type:object size:0xF scope:local data:string +lbl_8012F999 = .data:0x8012F999; // type:object size:0xF scope:local data:string +lbl_8012F9A8 = .data:0x8012F9A8; // type:object size:0xF scope:local data:string +lbl_8012F9B7 = .data:0x8012F9B7; // type:object size:0x11 scope:local _ovltbl = .data:0x8012F9C8; // type:object size:0x320 lbl_8012FCE8 = .data:0x8012FCE8; // type:object size:0x20 lbl_8012FD08 = .data:0x8012FD08; // type:object size:0xC diff --git a/configure.py b/configure.py index bad7edb8..4d0f9cc6 100644 --- a/configure.py +++ b/configure.py @@ -404,7 +404,7 @@ config.libs = [ Object(Matching, "game/audio.c"), Object(Matching, "game/EnvelopeExec.c"), Object(Matching, "game/minigame_seq.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ovllist.c"), + Object(Matching, "game/ovllist.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/esprite.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/code_8003FF68.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ClusterExec.c"), diff --git a/include/ovl_table.h b/include/ovl_table.h index bdd01ccd..5f61425c 100644 --- a/include/ovl_table.h +++ b/include/ovl_table.h @@ -75,7 +75,7 @@ OVL_DEFINE(OVL_MENT, "dll/mentdll.rel") OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel") OVL_DEFINE(OVL_MODELTEST, "dll/modeltestdll.rel") OVL_DEFINE(OVL_MODESEL, "dll/modeseldll.rel") -OVL_DEFINE(OVL_MOVIE, "dll/movieDll.rel") +OVL_DEFINE(OVL_MOVIE, "dll/moviedll.rel") #else OVL_DEFINE(OVL_MESS, "dll/messdll.rel") OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel") From 5bcfdd1d6bb66c2f895d6a0cb6d5266133258c65 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 04:08:04 +0100 Subject: [PATCH 046/178] Split Japanese DOL till card.c --- config/GMPJ01_00/splits.txt | 45 ++ config/GMPJ01_00/symbols.txt | 150 ++++--- configure.py | 16 +- src/game/window.c | 807 ++++++++++++++++++----------------- 4 files changed, 547 insertions(+), 471 deletions(-) diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index 70955da0..feb125b5 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -204,3 +204,48 @@ game/minigame_seq.c: game/ovllist.c: .data start:0x8012F378 end:0x8012FCE8 + +game/esprite.c: + .text start:0x8003F690 end:0x8003FD40 + .bss start:0x80190500 end:0x80191D00 + .sbss start:0x801D3A58 end:0x801D3A60 + +game/code_8003FF68.c: + .text start:0x8003FD40 end:0x800402D8 + .data start:0x8012FCE8 end:0x8012FD08 + .bss start:0x80191D00 end:0x80192000 + .sdata start:0x801D3258 end:0x801D3278 + .sbss start:0x801D3A60 end:0x801D3A68 + .sdata2 start:0x801D4B60 end:0x801D4B78 + +game/ClusterExec.c: + .text start:0x800402D8 end:0x80040B38 + .sdata2 start:0x801D4B78 end:0x801D4B88 + +game/ShapeExec.c: + .text start:0x80040B38 end:0x80040F48 + .sdata2 start:0x801D4B88 end:0x801D4B98 + +game/wipe.c: + .text start:0x80040F48 end:0x80041E54 + .data start:0x8012FD08 end:0x8012FD20 + .bss start:0x80192000 end:0x8019204C + .sdata start:0x801D3278 end:0x801D3280 + .sbss start:0x801D3A68 end:0x801D3A70 + .sdata2 start:0x801D4B98 end:0x801D4BC0 + +game/window.c: + .text start:0x80041E54 end:0x80047E88 + .data start:0x8012FD20 end:0x80130268 + .bss start:0x80192060 end:0x80196470 + .sdata start:0x801D3280 end:0x801D3288 + .sbss start:0x801D3A70 end:0x801D3AB8 + .sdata2 start:0x801D4BC0 end:0x801D4C58 + +game/messdata.c: + .text start:0x80047E88 end:0x80047F70 + +game/card.c: + .text start:0x80047F70 end:0x80048574 + .data start:0x80130268 end:0x801302B8 + .sbss start:0x801D3AB8 end:0x801D3AC0 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index 8b43250a..8bc3e8c0 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -4032,25 +4032,25 @@ lbl_8012F999 = .data:0x8012F999; // type:object size:0xF scope:local data:string lbl_8012F9A8 = .data:0x8012F9A8; // type:object size:0xF scope:local data:string lbl_8012F9B7 = .data:0x8012F9B7; // type:object size:0x11 scope:local _ovltbl = .data:0x8012F9C8; // type:object size:0x320 -lbl_8012FCE8 = .data:0x8012FCE8; // type:object size:0x20 -lbl_8012FD08 = .data:0x8012FD08; // type:object size:0xC -lbl_8012FD14 = .data:0x8012FD14; // type:object size:0xC -lbl_8012FD20 = .data:0x8012FD20; // type:object size:0x170 -lbl_8012FE90 = .data:0x8012FE90; // type:object size:0x130 -lbl_8012FFC0 = .data:0x8012FFC0; // type:object size:0x140 -lbl_80130100 = .data:0x80130100; // type:object size:0x3C -lbl_8013013C = .data:0x8013013C; // type:object size:0x10 -lbl_8013014C = .data:0x8013014C; // type:object size:0xE data:string -lbl_8013015A = .data:0x8013015A; // type:object size:0xF data:string -lbl_80130169 = .data:0x80130169; // type:object size:0x10 data:string -lbl_80130179 = .data:0x80130179; // type:object size:0x13 -lbl_8013018C = .data:0x8013018C; // type:object size:0x10 -lbl_8013019C = .data:0x8013019C; // type:object size:0x54 -lbl_801301F0 = .data:0x801301F0; // type:object size:0x13 data:string -lbl_80130203 = .data:0x80130203; // type:object size:0x19 -lbl_8013021C = .data:0x8013021C; // type:object size:0x4C -lbl_80130268 = .data:0x80130268; // type:object size:0x26 data:string -lbl_8013028E = .data:0x8013028E; // type:object size:0x2A +lbl_80130100 = .data:0x8012FCE8; // type:object size:0x20 +fadeInFunc = .data:0x8012FD08; // type:object size:0xC +fadeOutFunc = .data:0x8012FD14; // type:object size:0xC +spcFontTbl = .data:0x8012FD20; // type:object size:0x170 scope:local +charWETbl = .data:0x8012FE90; // type:object size:0x130 +charWJTbl = .data:0x8012FFC0; // type:object size:0x140 +charColPal = .data:0x80130100; // type:object size:0x3C scope:local +frameFileTbl = .data:0x8013013C; // type:object size:0x10 scope:local +@257 = .data:0x8013014C; // type:object size:0xE scope:local data:string +@258 = .data:0x8013015A; // type:object size:0xF scope:local data:string +@259 = .data:0x80130169; // type:object size:0x10 scope:local data:string +@260 = .data:0x80130179; // type:object size:0x11 scope:local data:string +mesDataTbl = .data:0x8013018C; // type:object size:0x10 scope:local +winVoiceTbl = .data:0x8013019C; // type:object size:0x54 scope:local +@1076 = .data:0x801301F0; // type:object size:0x13 scope:local data:string +@1077 = .data:0x80130203; // type:object size:0x18 scope:local data:string +winPortraitTbl = .data:0x8013021C; // type:object size:0x4C scope:local +lbl_80130268 = .data:0x80130268; // type:object size:0x26 scope:local data:string +lbl_8013028E = .data:0x8013028E; // type:object size:0x2A scope:local lbl_801302B8 = .data:0x801302B8; // type:object size:0x19 data:string lbl_801302D1 = .data:0x801302D1; // type:object size:0x14 data:string lbl_801302E5 = .data:0x801302E5; // type:object size:0x93 @@ -4428,15 +4428,15 @@ sndFXBuf = .bss:0x8018FED0; // type:object size:0x200 scope:local charVoiceGroupStat = .bss:0x801900D0; // type:object size:0x20 seqWorkData = .bss:0x801900F0; // type:object size:0x400 scope:local data:4byte winnerNameW = .bss:0x801904F0; // type:object size:0x10 scope:local data:2byte -lbl_80190500 = .bss:0x80190500; // type:object size:0x600 data:2byte -lbl_80190B00 = .bss:0x80190B00; // type:object size:0x1200 data:4byte -lbl_80191D00 = .bss:0x80191D00; // type:object size:0x100 -lbl_80191E00 = .bss:0x80191E00; // type:object size:0x100 -lbl_80191F00 = .bss:0x80191F00; // type:object size:0x100 -wipeData = .bss:0x80192000; // type:object size:0x60 data:4byte -lbl_80192060 = .bss:0x80192060; // type:object size:0x3000 data:byte -lbl_80195060 = .bss:0x80195060; // type:object size:0x10 -lbl_80195070 = .bss:0x80195070; // type:object size:0x1410 +esprite = .bss:0x80190500; // type:object size:0x600 data:2byte +espanim = .bss:0x80190B00; // type:object size:0x1200 data:4byte +lbl_80192060 = .bss:0x80191D00; // type:object size:0x100 +lbl_80192160 = .bss:0x80191E00; // type:object size:0x100 +lbl_80192260 = .bss:0x80191F00; // type:object size:0x100 +wipeData = .bss:0x80192000; // type:object size:0x4C data:4byte +winData = .bss:0x80192060; // type:object size:0x3000 data:byte +winKey = .bss:0x80195060; // type:object size:0x10 +winComKeyBuf = .bss:0x80195070; // type:object size:0x1400 lbl_80196480 = .bss:0x80196480; // type:object size:0x400 data:byte lbl_80196880 = .bss:0x80196880; // type:object size:0x20 lbl_801968A0 = .bss:0x801968A0; // type:object size:0x2C0 @@ -4696,19 +4696,13 @@ wordDrawE = .sdata:0x801D3182; // type:object size:0x6 scope:local data:string @1994 = .sdata:0x801D3244; // type:object size:0x6 scope:local @1995 = .sdata:0x801D324A; // type:object size:0x6 scope:local data:string pauseStr$2283 = .sdata:0x801D3250; // type:object size:0x8 scope:local -lbl_801D3258 = .sdata:0x801D3258; // type:object size:0x8 -lbl_801D3260 = .sdata:0x801D3260; // type:object size:0x8 -lbl_801D3268 = .sdata:0x801D3268; // type:object size:0x8 -lbl_801D3270 = .sdata:0x801D3270; // type:object size:0x8 -lbl_801D3278 = .sdata:0x801D3278; // type:object size:0x1 data:byte -lbl_801D3279 = .sdata:0x801D3279; // type:object size:0x1 data:byte -lbl_801D327A = .sdata:0x801D327A; // type:object size:0x1 data:byte -lbl_801D327B = .sdata:0x801D327B; // type:object size:0x1 data:byte -lbl_801D327C = .sdata:0x801D327C; // type:object size:0x1 data:byte -lbl_801D327D = .sdata:0x801D327D; // type:object size:0x1 data:byte -lbl_801D327E = .sdata:0x801D327E; // type:object size:0x1 data:byte -lbl_801D327F = .sdata:0x801D327F; // type:object size:0x1 data:byte -lbl_801D3280 = .sdata:0x801D3280; // type:object size:0x8 data:2byte +lbl_801D35C0 = .sdata:0x801D3258; // type:object size:0x8 +lbl_801D35C8 = .sdata:0x801D3260; // type:object size:0x8 +lbl_801D35D0 = .sdata:0x801D3268; // type:object size:0x8 +lbl_801D35D8 = .sdata:0x801D3270; // type:object size:0x8 +colorN$226 = .sdata:0x801D3278; // type:object size:0x4 scope:local data:byte +colorN$271 = .sdata:0x801D327C; // type:object size:0x4 scope:local data:byte +winPrio = .sdata:0x801D3280; // type:object size:0x2 scope:local data:2byte lbl_801D3288 = .sdata:0x801D3288; // type:object size:0x8 lbl_801D3290 = .sdata:0x801D3290; // type:object size:0x8 lbl_801D3298 = .sdata:0x801D3298; // type:object size:0x8 @@ -4872,13 +4866,13 @@ autoInvalidation = .sdata:0x801D3598; // type:object size:0x4 scope:local data:4 @41 = .sdata:0x801D35A8; // type:object size:0x3 scope:local data:string lbl_801D35B0 = .sdata:0x801D35B0; // type:object size:0x8 data:string lbl_801D35B8 = .sdata:0x801D35B8; // type:object size:0x8 data:byte -lbl_801D35C0 = .sdata:0x801D35C0; // type:object size:0x4 data:4byte +lbl_801D35C0_2 = .sdata:0x801D35C0; // type:object size:0x4 data:4byte lbl_801D35C4 = .sdata:0x801D35C4; // type:object size:0x4 data:4byte -lbl_801D35C8 = .sdata:0x801D35C8; // type:object size:0x4 data:4byte +lbl_801D35C8_2 = .sdata:0x801D35C8; // type:object size:0x4 data:4byte lbl_801D35CC = .sdata:0x801D35CC; // type:object size:0x4 data:4byte -lbl_801D35D0 = .sdata:0x801D35D0; // type:object size:0x4 data:4byte +lbl_801D35D0_2 = .sdata:0x801D35D0; // type:object size:0x4 data:4byte lbl_801D35D4 = .sdata:0x801D35D4; // type:object size:0x4 -lbl_801D35D8 = .sdata:0x801D35D8; // type:object size:0x8 +lbl_801D35D8_2 = .sdata:0x801D35D8; // type:object size:0x8 gx = .sdata:0x801D35E0; // type:object size:0x4 scope:global data:4byte lbl_801D35E8 = .sdata:0x801D35E8; // type:object size:0x4 lbl_801D35EC = .sdata:0x801D35EC; // type:object size:0x4 @@ -5138,31 +5132,31 @@ seqSpeed = .sbss:0x801D3A52; // type:object size:0x2 scope:local data:2byte lbl_801D3A54 = .sbss:0x801D3A54; // type:object size:0x1 data:byte seqDoneF = .sbss:0x801D3A55; // type:object size:0x1 scope:local data:byte seqTimer = .sbss:0x801D3A56; // type:object size:0x2 scope:local data:2byte -lbl_801D3A58 = .sbss:0x801D3A58; // type:object size:0x8 data:2byte -lbl_801D3A60 = .sbss:0x801D3A60; // type:object size:0x8 -wipeFadeInF = .sbss:0x801D3A68; // type:object size:0x8 data:4byte -lbl_801D3A70 = .sbss:0x801D3A70; // type:object size:0x4 data:4byte -lbl_801D3A74 = .sbss:0x801D3A74; // type:object size:0x1 data:byte -lbl_801D3A76 = .sbss:0x801D3A76; // type:object size:0x2 data:2byte -lbl_801D3A78 = .sbss:0x801D3A78; // type:object size:0x2 data:2byte -lbl_801D3A7A = .sbss:0x801D3A7A; // type:object size:0x2 data:2byte -lbl_801D3A7C = .sbss:0x801D3A7C; // type:object size:0x4 data:4byte -lbl_801D3A80 = .sbss:0x801D3A80; // type:object size:0x4 data:4byte -lbl_801D3A84 = .sbss:0x801D3A84; // type:object size:0x4 data:4byte -lbl_801D3A88 = .sbss:0x801D3A88; // type:object size:0x1 data:byte -lbl_801D3A89 = .sbss:0x801D3A89; // type:object size:0x1 data:byte -lbl_801D3A8A = .sbss:0x801D3A8A; // type:object size:0x8 -lbl_801D3A92 = .sbss:0x801D3A92; // type:object size:0x2 data:2byte -lbl_801D3A94 = .sbss:0x801D3A94; // type:object size:0x2 data:2byte -lbl_801D3A98 = .sbss:0x801D3A98; // type:object size:0x4 data:4byte -lbl_801D3A9C = .sbss:0x801D3A9C; // type:object size:0x4 data:4byte -lbl_801D3AA0 = .sbss:0x801D3AA0; // type:object size:0x4 data:4byte -lbl_801D3AA4 = .sbss:0x801D3AA4; // type:object size:0x4 data:4byte -lbl_801D3AA8 = .sbss:0x801D3AA8; // type:object size:0x4 data:4byte -lbl_801D3AAC = .sbss:0x801D3AAC; // type:object size:0x4 data:4byte -lbl_801D3AB0 = .sbss:0x801D3AB0; // type:object size:0x8 data:4byte -lbl_801D3AB8 = .sbss:0x801D3AB8; // type:object size:0x1 data:byte -lbl_801D3ABC = .sbss:0x801D3ABC; // type:object size:0x4 data:4byte +gid = .sbss:0x801D3A58; // type:object size:0x2 scope:local data:2byte +lbl_801D3DA0 = .sbss:0x801D3A60; // type:object size:0x8 +wipeFadeInF = .sbss:0x801D3A68; // type:object size:0x4 data:4byte +fontAnim = .sbss:0x801D3A70; // type:object size:0x4 data:4byte +LanguageNo = .sbss:0x801D3A74; // type:object size:0x1 scope:local data:byte +comKeyIdx = .sbss:0x801D3A76; // type:object size:0x2 scope:local data:2byte +comKeyIdxNow = .sbss:0x801D3A78; // type:object size:0x2 scope:local data:2byte +mesCharCnt = .sbss:0x801D3A7A; // type:object size:0x2 scope:local data:2byte +cancelCRF = .sbss:0x801D3A7C; // type:object size:0x4 scope:local data:4byte +fontWidthP = .sbss:0x801D3A80; // type:object size:0x4 scope:local data:4byte +winAMemP = .sbss:0x801D3A84; // type:object size:0x4 scope:local data:4byte +winInsertF = .sbss:0x801D3A88; // type:object size:0x1 scope:local data:byte +winTabSize = .sbss:0x801D3A89; // type:object size:0x1 scope:local data:byte +mesWInsert = .sbss:0x801D3A8A; // type:object size:0x8 scope:local +winMaxHeight = .sbss:0x801D3A92; // type:object size:0x2 scope:local data:2byte +winMaxWidth = .sbss:0x801D3A94; // type:object size:0x2 scope:local data:2byte +messDataNo = .sbss:0x801D3A98; // type:object size:0x4 scope:local data:4byte +messDataPtr = .sbss:0x801D3A9C; // type:object size:0x4 data:4byte +winProc = .sbss:0x801D3AA0; // type:object size:0x4 scope:local data:4byte +cardAnimB = .sbss:0x801D3AA4; // type:object size:0x4 scope:local data:4byte +cardAnimA = .sbss:0x801D3AA8; // type:object size:0x4 scope:local data:4byte +cursorAnim = .sbss:0x801D3AAC; // type:object size:0x4 scope:local data:4byte +iconAnim = .sbss:0x801D3AB0; // type:object size:0x4 scope:local data:4byte +UnMountCnt = .sbss:0x801D3AB8; // type:object size:0x1 data:byte +cardWork = .sbss:0x801D3ABC; // type:object size:0x4 scope:local data:4byte lbl_801D3AC0 = .sbss:0x801D3AC0; // type:object size:0x2 data:2byte lbl_801D3AC4 = .sbss:0x801D3AC4; // type:object size:0x4 data:4byte lbl_801D3AC8 = .sbss:0x801D3AC8; // type:object size:0x8 data:4byte @@ -5356,7 +5350,7 @@ lbl_801D3D99 = .sbss:0x801D3D99; // type:object size:0x1 data:byte lbl_801D3D9A = .sbss:0x801D3D9A; // type:object size:0x1 data:byte lbl_801D3D9B = .sbss:0x801D3D9B; // type:object size:0x1 data:byte lbl_801D3D9C = .sbss:0x801D3D9C; // type:object size:0x1 data:byte -lbl_801D3DA0 = .sbss:0x801D3DA0; // type:object size:0x4 data:4byte +lbl_801D3DA0_2 = .sbss:0x801D3DA0; // type:object size:0x4 data:4byte lbl_801D3DA4 = .sbss:0x801D3DA4; // type:object size:0x4 data:4byte lbl_801D3DA8 = .sbss:0x801D3DA8; // type:object size:0x4 data:float lbl_801D3DAC = .sbss:0x801D3DAC; // type:object size:0x4 data:float @@ -5479,7 +5473,7 @@ lbl_801D3F4C = .sbss:0x801D3F4C; // type:object size:0x4 data:4byte lbl_801D3F50 = .sbss:0x801D3F50; // type:object size:0x4 data:4byte lbl_801D3F54 = .sbss:0x801D3F54; // type:object size:0x4 data:4byte lbl_801D3F58 = .sbss:0x801D3F58; // type:object size:0x4 data:4byte -lbl_801D3F5C = .sbss:0x801D3F5C; // type:object size:0x1 data:byte +boardTutorialF = .sbss:0x801D3F5C; // type:object size:0x1 data:byte lbl_801D3F5E = .sbss:0x801D3F5E; // type:object size:0x2 data:2byte lbl_801D3F60 = .sbss:0x801D3F60; // type:object size:0x1 data:byte lbl_801D3F61 = .sbss:0x801D3F61; // type:object size:0x1 data:byte @@ -6100,12 +6094,12 @@ lbl_801D4C10 = .sdata2:0x801D4C10; // type:object size:0x4 scope:local data:floa lbl_801D4C18 = .sdata2:0x801D4C18; // type:object size:0x8 scope:local data:double lbl_801D4C20 = .sdata2:0x801D4C20; // type:object size:0x4 scope:local data:float lbl_801D4C24 = .sdata2:0x801D4C24; // type:object size:0x4 scope:local data:float -lbl_801D4C28 = .sdata2:0x801D4C28; // type:object size:0x4 data:float -lbl_801D4C30 = .sdata2:0x801D4C30; // type:object size:0x8 data:double -lbl_801D4C38 = .sdata2:0x801D4C38; // type:object size:0x8 data:double -lbl_801D4C40 = .sdata2:0x801D4C40; // type:object size:0x8 data:double -lbl_801D4C48 = .sdata2:0x801D4C48; // type:object size:0x4 data:float -lbl_801D4C50 = .sdata2:0x801D4C50; // type:object size:0x8 data:double +lbl_801D4C28 = .sdata2:0x801D4C28; // type:object size:0x4 scope:local data:float +lbl_801D4C30 = .sdata2:0x801D4C30; // type:object size:0x8 scope:local data:double +lbl_801D4C38 = .sdata2:0x801D4C38; // type:object size:0x8 scope:local data:double +lbl_801D4C40 = .sdata2:0x801D4C40; // type:object size:0x8 scope:local data:double +lbl_801D4C48 = .sdata2:0x801D4C48; // type:object size:0x4 scope:local data:float +lbl_801D4C50 = .sdata2:0x801D4C50; // type:object size:0x8 scope:local data:double lbl_801D4C58 = .sdata2:0x801D4C58; // type:object size:0x8 data:double lbl_801D4C60 = .sdata2:0x801D4C60; // type:object size:0x8 data:double lbl_801D4C68 = .sdata2:0x801D4C68; // type:object size:0x8 data:double diff --git a/configure.py b/configure.py index 4d0f9cc6..14f66e9a 100644 --- a/configure.py +++ b/configure.py @@ -405,14 +405,14 @@ config.libs = [ Object(Matching, "game/EnvelopeExec.c"), Object(Matching, "game/minigame_seq.c"), Object(Matching, "game/ovllist.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/esprite.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/code_8003FF68.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ClusterExec.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/ShapeExec.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/wipe.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/window.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/messdata.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/card.c"), + Object(Matching, "game/esprite.c"), + Object(Matching, "game/code_8003FF68.c"), + Object(Matching, "game/ClusterExec.c"), + Object(Matching, "game/ShapeExec.c"), + Object(Matching, "game/wipe.c"), + Object(Matching, "game/window.c"), + Object(Matching, "game/messdata.c"), + Object(Matching, "game/card.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/armem.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/chrman.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/mapspace.c"), diff --git a/src/game/window.c b/src/game/window.c index 816514f3..5b26d4fd 100644 --- a/src/game/window.c +++ b/src/game/window.c @@ -1,15 +1,15 @@ #include "game/gamework_data.h" -#include "game/window.h" -#include "game/sprite.h" -#include "game/data.h" -#include "game/dvd.h" -#include "game/memory.h" -#include "game/process.h" -#include "game/pad.h" #include "game/armem.h" #include "game/audio.h" +#include "game/data.h" #include "game/disp.h" +#include "game/dvd.h" +#include "game/memory.h" +#include "game/pad.h" +#include "game/process.h" +#include "game/sprite.h" +#include "game/window.h" #include "ext_math.h" #include "stdarg.h" @@ -75,169 +75,74 @@ static s16 comKeyIdx; static u8 LanguageNo; AnimData *fontAnim; -static spcFontTblData spcFontTbl[] = { - { &iconAnim, 0, 20, 24, 10, 12 }, - { &iconAnim, 1, 20, 24, 10, 12 }, - { &iconAnim, 2, 20, 24, 10, 12 }, - { &iconAnim, 3, 20, 24, 10, 12 }, - { &iconAnim, 4, 20, 24, 10, 12 }, - { &iconAnim, 5, 20, 24, 10, 12 }, - { &iconAnim, 6, 20, 24, 10, 12 }, - { &iconAnim, 7, 20, 24, 10, 12 }, - { &iconAnim, 8, 20, 24, 10, 12 }, - { &iconAnim, 9, 20, 24, 10, 12 }, - { &iconAnim, 10, 20, 24, 10, 12 }, - { &iconAnim, 11, 30, 24, 15, 12 }, - { &iconAnim, 12, 20, 24, 10, 12 }, - { &iconAnim, 13, 20, 24, 10, 12 }, - { &iconAnim, 14, 20, 24, 10, 12 }, - { &iconAnim, 15, 20, 24, 10, 12 }, - { &iconAnim, 16, 20, 24, 10, 12 }, - { &iconAnim, 17, 20, 24, 10, 12 }, - { &iconAnim, 18, 20, 24, 10, 12 }, - { &iconAnim, 19, 24, 24, 12, 12 }, - { &cursorAnim, 0, 40, 32, -15, 18 }, - { &cardAnimA, 0, 32, 32, 16, 16 }, - { &cardAnimB, 0, 32, 32, 16, 16 } -}; +static spcFontTblData spcFontTbl[] = { { &iconAnim, 0, 20, 24, 10, 12 }, { &iconAnim, 1, 20, 24, 10, 12 }, { &iconAnim, 2, 20, 24, 10, 12 }, + { &iconAnim, 3, 20, 24, 10, 12 }, { &iconAnim, 4, 20, 24, 10, 12 }, { &iconAnim, 5, 20, 24, 10, 12 }, { &iconAnim, 6, 20, 24, 10, 12 }, + { &iconAnim, 7, 20, 24, 10, 12 }, { &iconAnim, 8, 20, 24, 10, 12 }, { &iconAnim, 9, 20, 24, 10, 12 }, { &iconAnim, 10, 20, 24, 10, 12 }, + { &iconAnim, 11, 30, 24, 15, 12 }, { &iconAnim, 12, 20, 24, 10, 12 }, { &iconAnim, 13, 20, 24, 10, 12 }, { &iconAnim, 14, 20, 24, 10, 12 }, + { &iconAnim, 15, 20, 24, 10, 12 }, { &iconAnim, 16, 20, 24, 10, 12 }, { &iconAnim, 17, 20, 24, 10, 12 }, { &iconAnim, 18, 20, 24, 10, 12 }, + { &iconAnim, 19, 24, 24, 12, 12 }, { &cursorAnim, 0, 40, 32, -15, 18 }, { &cardAnimA, 0, 32, 32, 16, 16 }, { &cardAnimB, 0, 32, 32, 16, 16 } }; -#if VERSION_NTSC -u8 charWETbl[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 18, 20, 12, 12, 11, 14, - 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, - 12, 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, - 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, - 11, 12, 9, 11, 9, 11, 11, 15, 11, 11, 11, 4, 13, 8, 14, 12, - 9, 8, 8, 8, 20, 4, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 12, 12, 12, 12, 12, 12, 12, 12, 8, 8, 12, 12, 12, 12, 16, - 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 12, 12, 7, 14, 17, 13, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 -}; +#if VERSION_ENG +u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 18, 20, 12, 12, 11, 14, 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, 12, + 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, 11, 12, 9, 11, 9, 11, 11, 15, + 11, 11, 11, 4, 13, 8, 14, 12, 9, 8, 8, 8, 20, 4, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 12, 12, 12, 12, 12, 12, 12, 12, 8, 8, 12, 12, 12, 12, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 12, 12, 7, 14, + 17, 13, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }; +#elif VERSION_JAP +u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 13, 8, 11, 12, 13, 12, 11, 11, 12, 11, 18, 20, 12, 12, 11, 14, 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, 12, + 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, 11, 12, 9, 11, 9, 11, 11, 15, + 11, 11, 11, 4, 13, 8, 14, 12, 9, 8, 8, 8, 20, 4, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 12, 12, 12, 12, 12, 12, 12, 12, 8, 8, 12, 12, 12, 12, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 12, 12, 7, 14, + 17, 13, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }; #else -u8 charWETbl[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 18, 20, 12, 12, 11, 14, - 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, - 12, 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, - 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, - 11, 12, 9, 11, 9, 11, 11, 15, 11, 11, 11, 4, 13, 8, 14, 12, - 9, 8, 8, 8, 20, 4, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 12, 12, 12, 12, 12, 12, 12, 12, 8, 8, 12, 12, 12, 12, 12, - 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 13, 13, 6, 12, 18, 14, 14, 8, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 10, 10, 10, 12, 12, 12, 12, 12, 10, 10, 12, 12, 10, 10, 10, - 10, 7, 7, 12, 12, 10, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 -}; +u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 18, 20, 12, 12, 11, 14, 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, 12, + 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, 11, 12, 9, 11, 9, 11, 11, 15, + 11, 11, 11, 4, 13, 8, 14, 12, 9, 8, 8, 8, 20, 4, 12, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 12, 12, 12, 12, 12, 12, 12, 12, 8, 8, 12, 12, 12, 12, + 12, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 13, 13, 6, 12, + 18, 14, 14, 8, 20, 20, 20, 20, 20, 20, 20, 20, 20, 10, 10, 10, 12, 12, 12, 12, 12, 10, 10, 12, 12, 10, 10, 10, 10, 7, 7, 12, 12, 10, 12, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }; #endif -u8 charWJTbl[] = { - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 0, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 0, 0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 -}; +u8 charWJTbl[] = { 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 0, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 0, 0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }; -static u8 ATTRIBUTE_ALIGN(32) charColPal[2*3*10] = { - 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, - 0xFF, 0x00, 0x00, - 0xFF, 0x00, 0xFF, - 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0xFF, - 0xFF, 0xA0, 0x00, - 0xFF, 0xFF, 0xFF, - 0x60, 0x60, 0x60, - 0x90, 0x90, 0x90, - 0x00, 0x00, 0x00, - 0x60, 0xB0, 0xFF, - 0xFF, 0x40, 0x80, - 0xFF, 0x00, 0xFF, - 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, - 0xFF, 0xFF, 0xFF, - 0x60, 0x60, 0x60, - 0x90, 0x90, 0x90 -}; +static u8 ATTRIBUTE_ALIGN(32) charColPal[2 * 3 * 10] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, + 0x00, 0xFF, 0xFF, 0xFF, 0xA0, 0x00, 0xFF, 0xFF, 0xFF, 0x60, 0x60, 0x60, 0x90, 0x90, 0x90, 0x00, 0x00, 0x00, 0x60, 0xB0, 0xFF, 0xFF, 0x40, 0x80, + 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x60, 0x60, 0x60, 0x90, 0x90, 0x90 }; -static s32 frameFileTbl[] = { - WIN_FRAME1_ANM, - WIN_FRAME2_ANM, - WIN_FRAME3_ANM, - WIN_FRAME1_ANM -}; +static s32 frameFileTbl[] = { WIN_FRAME1_ANM, WIN_FRAME2_ANM, WIN_FRAME3_ANM, WIN_FRAME1_ANM }; #if VERSION_NTSC -static char *mesDataTbl[] = { - "mess/mini.dat", - "mess/board.dat", - "mess/mini_e.dat", - "mess/board_e.dat" -}; +static char *mesDataTbl[] = { "mess/mini.dat", "mess/board.dat", "mess/mini_e.dat", "mess/board_e.dat" }; #else -static char *mesDataTbl[] = { - "mess/mini.dat", - "mess/board.dat", - "mess/mini_e.dat", - "mess/board_e.dat", - "mess/mini_g.dat", - "mess/board_g.dat", - "mess/mini_f.dat", - "mess/board_f.dat", - "mess/mini_i.dat", - "mess/board_i.dat", - "mess/mini_s.dat", - "mess/board_s.dat" -}; +static char *mesDataTbl[] = { "mess/mini.dat", "mess/board.dat", "mess/mini_e.dat", "mess/board_e.dat", "mess/mini_g.dat", "mess/board_g.dat", + "mess/mini_f.dat", "mess/board_f.dat", "mess/mini_i.dat", "mess/board_i.dat", "mess/mini_s.dat", "mess/board_s.dat" }; #endif -static s32 winVoiceTbl[] = { - 0x37, 0x36, 0x38, 0x44, - 0x43, 0x45, 0x41, 0x40, - 0x42, 0x4C, 0x4B, 0x4D, - 0x47, 0x46, 0x48, 0x3E, - 0x3E, 0x3F, 0x49, 0x49, - 0x49 -}; +static s32 winVoiceTbl[] + = { 0x37, 0x36, 0x38, 0x44, 0x43, 0x45, 0x41, 0x40, 0x42, 0x4C, 0x4B, 0x4D, 0x47, 0x46, 0x48, 0x3E, 0x3E, 0x3F, 0x49, 0x49, 0x49 }; static s16 winPrio = 1000; -void HuWindowInit(void) { +void HuWindowInit(void) +{ s16 i; winAMemP = HuAR_DVDtoARAM(DATADIR_WIN); @@ -248,7 +153,8 @@ void HuWindowInit(void) { winPrio = 1000; } -void HuWinInit(s32 mess_data_no) { +void HuWinInit(s32 mess_data_no) +{ s16 i; void *anim_data; @@ -266,7 +172,8 @@ void HuWinInit(s32 mess_data_no) { if (!fontAnim) { if (LanguageNo == 0) { anim_data = HuDataReadNum(WIN_FONTJ_ANM, MEMORY_DEFAULT_NUM); - } else { + } + else { anim_data = HuDataReadNum(WIN_FONTE_ANM, MEMORY_DEFAULT_NUM); } fontAnim = HuSprAnimRead(anim_data); @@ -297,7 +204,8 @@ void HuWinInit(s32 mess_data_no) { } } -s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) { +s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) +{ AnimData *bg_anim; WindowData *window; HuSprite *sprite_ptr; @@ -324,12 +232,14 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) { h = (h + 15) & 0xFFF0; if (x == -10000.0f) { window->pos_x = (HU_DISP_WIDTHF - w) / 2; - } else { + } + else { window->pos_x = x; } if (y == -10000.0f) { window->pos_y = (HU_DISP_HEIGHTF - h) / 2; - } else { + } + else { window->pos_y = y; } HuSprGrpCenterSet(group, w / 2, h / 2); @@ -347,7 +257,11 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) { sprite_ptr->work[0] = window_id; HuSprGrpMemberSet(group, 1, sprite); window->num_chars = 0; +#if VERSION_JAP + window->max_chars = (w / 20) * (h / 24) * 3; +#else window->max_chars = (w / 8) * (h / 24) * 4; +#endif window->char_data = HuMemDirectMalloc(HEAP_SYSTEM, window->max_chars * sizeof(WinChar)); window->attr = 0; window->stat = 0; @@ -376,10 +290,13 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) { window->scissor_h = 0x1E0; window->tab_w = 24; window->push_key = 0x300; +#if !VERSION_JAP window->key_auto = 0; +#endif if (frame == 0 || frame == 2) { memcpy(&window->mess_pal, &charColPal[30], 30); - } else { + } + else { memcpy(&window->mess_pal, charColPal, 30); window->mess_shadow_color = 9; } @@ -400,7 +317,8 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) { return window_id; } -void HuWinKill(s16 window) { +void HuWinKill(s16 window) +{ WindowData *window_ptr = &winData[window]; s16 i; @@ -416,7 +334,8 @@ void HuWinKill(s16 window) { } } -void HuWinAllKill(void) { +void HuWinAllKill(void) +{ s16 i; for (i = 0; i < 32; i++) { @@ -455,7 +374,8 @@ void HuWinAllKill(void) { HuDataDirClose(DATADIR_WIN); } -static void MesDispFunc(HuSprite *sprite) { +static void MesDispFunc(HuSprite *sprite) +{ WindowData *window = &winData[sprite->work[0]]; HuSprGrp *group; float uv_maxx; @@ -505,12 +425,16 @@ static void MesDispFunc(HuSprite *sprite) { MTXConcat(*sprite->group_mtx, modelview, modelview); GXLoadPosMtxImm(modelview, 0); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); - HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, GX_LINEAR); + HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, VERSION_JAP ? GX_NEAR : GX_LINEAR); GXBegin(GX_QUADS, GX_VTXFMT0, window->num_chars * 4); - char_uv_h = (LanguageNo == 0) ? (24.0f/408.0f) : (24.0f/312.0f); + char_uv_h = (LanguageNo == 0) ? (24.0f / 408.0f) : (24.0f / 312.0f); for (i = 0; i < window->num_chars; i++) { char_w = fontWidthP[window->char_data[i].character + 48]; - uv_minx = (20.0f/320.0f) * (window->char_data[i].character % 16); +#if VERSION_JAP + uv_minx = 0.003125 + (20.0f / 320.0f) * (window->char_data[i].character % 16); +#else + uv_minx = (20.0f / 320.0f) * (window->char_data[i].character % 16); +#endif uv_miny = char_uv_h * (window->char_data[i].character / 16); uv_maxx = uv_minx + (char_w / 320.0); uv_maxy = uv_miny + char_uv_h; @@ -519,7 +443,8 @@ static void MesDispFunc(HuSprite *sprite) { color = window->char_data[i].color; if (window->speed != 0) { alpha = window->char_data[i].fade * 8; - } else { + } + else { alpha = 255; } alpha = 255; @@ -544,7 +469,8 @@ static void MesDispFunc(HuSprite *sprite) { } } -static u8 winBGMake(AnimData *bg, AnimData *frame) { +static u8 winBGMake(AnimData *bg, AnimData *frame) +{ AnimBmpData *bmp; s16 block_h; s16 h; @@ -565,29 +491,37 @@ static u8 winBGMake(AnimData *bg, AnimData *frame) { for (j = 0; j < w; j++) { if (j == 0) { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0; - } else if (j == w-1) { + } + else if (j == w - 1) { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x10; - } else { + } + else { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x70; } } - } else if (i == h-1) { + } + else if (i == h - 1) { for (j = 0; j < w; j++) { if (j == 0) { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x20; - } else if (j == w - 1) { + } + else if (j == w - 1) { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x30; - } else { + } + else { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x60; } } - } else { + } + else { for (j = 0; j < w; j++) { if (j == 0) { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x40; - } else if (j == w-1) { + } + else if (j == w - 1) { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x50; - } else { + } + else { bmp_data[(j & 7) + ((j >> 3) << 5) + (i >> 2) * (block_w * 4) + (i & 3) * 8] = 0x80; } } @@ -606,7 +540,8 @@ static u8 winBGMake(AnimData *bg, AnimData *frame) { return w; } -static void HuWinProc(void) { +static void HuWinProc(void) +{ WindowData *window; s16 i; @@ -638,23 +573,25 @@ static void HuWinProc(void) { } } -static inline void charEntry(s16 window, s16 x, s16 y, s16 char_idx, s16 color) { +static inline void charEntry(s16 window, s16 x, s16 y, s16 char_idx, s16 color) +{ WindowData *window_ptr = &winData[window]; WinChar *win_char = window_ptr->char_data; win_char = &window_ptr->char_data[window_ptr->num_chars]; win_char->x = x - window_ptr->w / 2; win_char->y = y - window_ptr->h / 2; - win_char->character = char_idx-48; + win_char->character = char_idx - 48; win_char->color = color; win_char->fade = 0; window_ptr->num_chars++; if (window_ptr->num_chars >= window_ptr->max_chars) { - window_ptr->num_chars = window_ptr->max_chars-1; + window_ptr->num_chars = window_ptr->max_chars - 1; } } -static void HuWinDrawMes(s16 window) { +static void HuWinDrawMes(s16 window) +{ WindowData *window_ptr = &winData[window]; HuSprGrp *group = &HuSprGrpData[window_ptr->group]; s16 i; @@ -668,12 +605,16 @@ static void HuWinDrawMes(s16 window) { s16 color; s16 mess_w; - window_ptr->mess_time += 3; + window_ptr->mess_time += VERSION_JAP ? 1 : 3; while (window_ptr->mess_time >= window_ptr->speed || (window_ptr->attr & 0x2000)) { +#if VERSION_JAP + window_ptr->mess_time = 0; +#else window_ptr->mess_time -= window_ptr->speed; - if(window_ptr->mess_time < 0) { + if (window_ptr->mess_time < 0) { window_ptr->mess_time = 0; } +#endif char_w = window_ptr->spacing_x + fontWidthP[window_ptr->mess[0]]; mess_end = 0; if (window_ptr->mess[0] != 0 && (window_ptr->attr & 4)) { @@ -684,7 +625,7 @@ static void HuWinDrawMes(s16 window) { switch (window_ptr->mess[0]) { case 0: if (window_ptr->mess_stackptr == 0) { - for (i=0; i<16; i++) { + for (i = 0; i < 16; i++) { window_ptr->choice_disable[i] = 0; } window_ptr->stat = 0; @@ -693,9 +634,11 @@ static void HuWinDrawMes(s16 window) { } window_ptr->mess_stackptr--; window_ptr->mess = window_ptr->mess_stack[window_ptr->mess_stackptr]; +#if !VERSION_JAP window_ptr->mess_time = 0; +#endif break; - + case 31: window_ptr->mess++; insert_mess = window_ptr->mess[0] - 1; @@ -708,30 +651,31 @@ static void HuWinDrawMes(s16 window) { } } break; - + case 11: window_ptr->attr &= ~0x2200; _HuWinHomeClear(window_ptr); if (window_ptr->attr & 0x800) { mess_w = GetMesMaxSizeSub2(window_ptr, window_ptr->mess + 1); window_ptr->mess_x = (window_ptr->mess_rect_w - mess_w) / 2; - } else if (window_ptr->attr & 0x1000) { + } + else if (window_ptr->attr & 0x1000) { mess_w = GetMesMaxSizeSub2(window_ptr, window_ptr->mess + 1); window_ptr->mess_x = window_ptr->mess_rect_w - mess_w; } break; - + case 30: window_ptr->mess++; if (!(window_ptr->attr & 0x80)) { window_ptr->mess_color = window_ptr->mess[0] - 1; } break; - + case 29: window_ptr->attr ^= 1; break; - + case 10: window_ptr->attr &= ~0x2020; if (window_ptr->attr & 0x200) { @@ -745,30 +689,31 @@ static void HuWinDrawMes(s16 window) { if (window_ptr->attr & 0x800) { mess_w = GetMesMaxSizeSub2(window_ptr, window_ptr->mess + 1); window_ptr->mess_x = (window_ptr->mess_rect_w - mess_w) / 2; - } else if (window_ptr->attr & 0x1000) { + } + else if (window_ptr->attr & 0x1000) { mess_w = GetMesMaxSizeSub2(window_ptr, window_ptr->mess + 1); window_ptr->mess_x = window_ptr->mess_rect_w - mess_w; } break; } char_w = fontWidthP[16] + window_ptr->spacing_x; - /* fallthrough */ - case 16: - case 32: - window_ptr->attr |= 0x200; - if (window_ptr->mess_x + char_w > window_ptr->mess_rect_w) { - if (HuWinCR(window_ptr) != 0) { - window_ptr->mess++; - HuWinKeyWaitEntry(window); - window_ptr->attr |= 2; - return; + /* fallthrough */ + case 16: + case 32: + window_ptr->attr |= 0x200; + if (window_ptr->mess_x + char_w > window_ptr->mess_rect_w) { + if (HuWinCR(window_ptr) != 0) { + window_ptr->mess++; + HuWinKeyWaitEntry(window); + window_ptr->attr |= 2; + return; + } + break; } - break; - } - window_ptr->mess_x += char_w; + window_ptr->mess_x += char_w; } break; - + case 14: window_ptr->attr |= 0x200; window_ptr->mess++; @@ -779,29 +724,31 @@ static void HuWinDrawMes(s16 window) { window_ptr->attr |= 2; return; } - HuWinSpcFontEntry(window_ptr, window_ptr->mess[0] - 1, window_ptr->mess_rect_x + window_ptr->mess_x, window_ptr->mess_rect_y + window_ptr->mess_y); + HuWinSpcFontEntry(window_ptr, window_ptr->mess[0] - 1, window_ptr->mess_rect_x + window_ptr->mess_x, + window_ptr->mess_rect_y + window_ptr->mess_y); window_ptr->mess_x += tab_w; mess_end = 1; break; - + case 28: window_ptr->mess++; HuAudFXPlay(winVoiceTbl[window_ptr->mess[0] - 1]); break; - + case 255: window_ptr->mess++; HuWinKeyWaitEntry(window); window_ptr->attr |= 4; window_ptr->attr &= ~0x200; return; - + case 15: window_ptr->attr |= 0x2000; if (window_ptr->choice_disable[window_ptr->num_choices] != 0) { window_ptr->attr |= 0x20; window_ptr->choice_data[window_ptr->num_choices].stat |= 1; - } else { + } + else { window_ptr->choice_data[window_ptr->num_choices].stat &= ~1; } @@ -809,7 +756,7 @@ static void HuWinDrawMes(s16 window) { window_ptr->choice_data[window_ptr->num_choices].y = window_ptr->mess_y + window_ptr->mess_rect_x; window_ptr->num_choices++; break; - + case 12: window_ptr->attr |= 0x200; tab_w = window_ptr->tab_w * ((window_ptr->mess_x + window_ptr->tab_w) / window_ptr->tab_w) - window_ptr->mess_x; @@ -820,7 +767,8 @@ static void HuWinDrawMes(s16 window) { window_ptr->attr |= 2; return; } - } else { + } + else { window_ptr->mess_x += tab_w; } break; @@ -839,41 +787,48 @@ static void HuWinDrawMes(s16 window) { } c = window_ptr->mess[0]; window_ptr->attr |= 0x200; - #if VERSION_NTSC +#if VERSION_NTSC if (window_ptr->mess[1] == 128) { if (c >= 150 && c <= 164) { - c = c+106; - } else if (c >= 170 && c <= 174) { - c = c+101; - } else if (c >= 214 && c <= 228) { - c = c+67; - } else if (c >= 234 && c <= 238) { - c = c+62; + c = c + 106; } - window_ptr->mess++; - } else if (window_ptr->mess[1] == 129) { - if (c >= 170 && c <= 174) { - c = c+106; - } else if (c >= 234 && c <= 238) { - c = c+67; + else if (c >= 170 && c <= 174) { + c = c + 101; + } + else if (c >= 214 && c <= 228) { + c = c + 67; + } + else if (c >= 234 && c <= 238) { + c = c + 62; } window_ptr->mess++; } - #endif + else if (window_ptr->mess[1] == 129) { + if (c >= 170 && c <= 174) { + c = c + 106; + } + else if (c >= 234 && c <= 238) { + c = c + 67; + } + window_ptr->mess++; + } +#endif color = (window_ptr->attr & 0x20) ? 8 : window_ptr->mess_color; if (window_ptr->attr & 1) { shadow_color = 0; if (window_ptr->mess_color == 0 || window_ptr->mess_color == 1) { shadow_color = 8; } - charEntry(window, window_ptr->mess_rect_x+window_ptr->mess_x+2, window_ptr->mess_rect_y+window_ptr->mess_y, c, shadow_color); - charEntry(window, window_ptr->mess_rect_x+window_ptr->mess_x-2, window_ptr->mess_rect_y+window_ptr->mess_y, c, shadow_color); - charEntry(window, window_ptr->mess_rect_x+window_ptr->mess_x, window_ptr->mess_rect_y+window_ptr->mess_y+2, c, shadow_color); - charEntry(window, window_ptr->mess_rect_x+window_ptr->mess_x, window_ptr->mess_rect_y+window_ptr->mess_y-2, c, shadow_color); - charEntry(window, window_ptr->mess_rect_x+window_ptr->mess_x, window_ptr->mess_rect_y+window_ptr->mess_y, c, color); - } else { - charEntry(window, window_ptr->mess_rect_x+window_ptr->mess_x+2, window_ptr->mess_rect_y+window_ptr->mess_y+2, c, window_ptr->mess_shadow_color); - charEntry(window, window_ptr->mess_rect_x+window_ptr->mess_x, window_ptr->mess_rect_y+window_ptr->mess_y, c, color); + charEntry(window, window_ptr->mess_rect_x + window_ptr->mess_x + 2, window_ptr->mess_rect_y + window_ptr->mess_y, c, shadow_color); + charEntry(window, window_ptr->mess_rect_x + window_ptr->mess_x - 2, window_ptr->mess_rect_y + window_ptr->mess_y, c, shadow_color); + charEntry(window, window_ptr->mess_rect_x + window_ptr->mess_x, window_ptr->mess_rect_y + window_ptr->mess_y + 2, c, shadow_color); + charEntry(window, window_ptr->mess_rect_x + window_ptr->mess_x, window_ptr->mess_rect_y + window_ptr->mess_y - 2, c, shadow_color); + charEntry(window, window_ptr->mess_rect_x + window_ptr->mess_x, window_ptr->mess_rect_y + window_ptr->mess_y, c, color); + } + else { + charEntry(window, window_ptr->mess_rect_x + window_ptr->mess_x + 2, window_ptr->mess_rect_y + window_ptr->mess_y + 2, c, + window_ptr->mess_shadow_color); + charEntry(window, window_ptr->mess_rect_x + window_ptr->mess_x, window_ptr->mess_rect_y + window_ptr->mess_y, c, color); } window_ptr->mess_x += char_w; window_ptr->mess++; @@ -881,19 +836,22 @@ static void HuWinDrawMes(s16 window) { } } -static s32 HuWinCR(WindowData *window) { +static s32 HuWinCR(WindowData *window) +{ if (window->mess_y + 48 > window->mess_rect_h) { window->mess_y = 0; window->mess_x = 0; return 1; - } else { + } + else { window->mess_y += window->spacing_y + 24; window->mess_x = 0; return 0; } } -static void _HuWinHomeClear(WindowData *window) { +static void _HuWinHomeClear(WindowData *window) +{ s16 i; window->num_chars = 0; @@ -901,29 +859,33 @@ static void _HuWinHomeClear(WindowData *window) { window->num_choices = 0; HuWinSpcFontClear(window); window->attr &= ~0x2020; - for (i=0; i<16; i++) { + for (i = 0; i < 16; i++) { window->choice_data[i].stat = 0; } } -void HuWinHomeClear(s16 window) { +void HuWinHomeClear(s16 window) +{ WindowData *window_ptr = &winData[window]; _HuWinHomeClear(window_ptr); } -void HuWinKeyWaitEntry(s16 window) { +void HuWinKeyWaitEntry(s16 window) +{ WindowData *window_ptr = &winData[window]; if (window_ptr->attr & 0x400) { window_ptr->stat = 0; - } else { + } + else { window_ptr->stat = 2; window_ptr->advance_sprite = HuWinSpcFontEntry(window_ptr, 19, window_ptr->mess_rect_w - 20, window_ptr->mess_rect_h - 24); } } -static void HuWinKeyWait(s16 window) { +static void HuWinKeyWait(s16 window) +{ WindowData *window_ptr = &winData[window]; if (window_ptr->push_key & HuWinActivePadGet(window_ptr)) { @@ -938,16 +900,17 @@ static void HuWinKeyWait(s16 window) { } } -static s16 HuWinSpcFontEntry(WindowData *window, s16 entry, s16 x, s16 y) { +static s16 HuWinSpcFontEntry(WindowData *window, s16 entry, s16 x, s16 y) +{ HuSprGrp *group = &HuSprGrpData[window->group]; s16 sprite; s16 i; AnimData *anim; - for (i=10; i<30; i++) { + for (i = 10; i < 30; i++) { if (window->sprite_id[i] == -1) { anim = *spcFontTbl[entry].anim; - window->sprite_id[i] = sprite = HuSprCreate(anim, window->prio-1, spcFontTbl[entry].bank); + window->sprite_id[i] = sprite = HuSprCreate(anim, window->prio - 1, spcFontTbl[entry].bank); HuSprGrpMemberSet(window->group, i, sprite); HuSprPosSet(window->group, i, x + spcFontTbl[entry].center_x - window->w / 2, y + spcFontTbl[entry].center_y - window->h / 2); break; @@ -956,16 +919,18 @@ static s16 HuWinSpcFontEntry(WindowData *window, s16 entry, s16 x, s16 y) { return i; } -static void HuWinSpcFontPosSet(WindowData *window, s16 index, s16 x, s16 y) { +static void HuWinSpcFontPosSet(WindowData *window, s16 index, s16 x, s16 y) +{ HuSprGrp *group = &HuSprGrpData[window->group]; HuSprPosSet(window->group, index, x - window->w / 2, y - window->h / 2); } -static void HuWinSpcFontClear(WindowData *window) { +static void HuWinSpcFontClear(WindowData *window) +{ s16 i; - for (i=10; i<30; i++) { + for (i = 10; i < 30; i++) { if (window->sprite_id[i] != -1) { HuSprGrpMemberKill(window->group, i); window->sprite_id[i] = -1; @@ -973,7 +938,8 @@ static void HuWinSpcFontClear(WindowData *window) { } } -static void HuWinChoice(WindowData *window) { +static void HuWinChoice(WindowData *window) +{ WinChoice *choice; float choice_dist; float min_choice_dist_x; @@ -1019,7 +985,8 @@ static void HuWinChoice(WindowData *window) { } if (i != choice_max) { for (i = 0, choice = window->choice_data; i < choice_max; i++, choice++) { - if (i != choice_curr && !(choice->stat & 1) && choice->y == choice_curr_y && choice->x < choice_curr_x && choice_dist > choice_curr_x - choice->x) { + if (i != choice_curr && !(choice->stat & 1) && choice->y == choice_curr_y && choice->x < choice_curr_x + && choice_dist > choice_curr_x - choice->x) { choice_dist = choice_curr_x - choice->x; choice_next = i; } @@ -1050,7 +1017,8 @@ static void HuWinChoice(WindowData *window) { } } } - } else { + } + else { choice_y = -1000; for (i = 0, choice = window->choice_data; i < choice_max; i++, choice++) { if (i != choice_curr && !(choice->stat & 1) && choice->y > choice_y) { @@ -1080,7 +1048,8 @@ static void HuWinChoice(WindowData *window) { } if (i != choice_max) { for (i = 0, choice = window->choice_data; i < choice_max; i++, choice++) { - if (i != choice_curr && !(choice->stat & 1) && choice->y == choice_curr_y && choice->x > choice_curr_x && choice_dist > choice->x - choice_curr_x) { + if (i != choice_curr && !(choice->stat & 1) && choice->y == choice_curr_y && choice->x > choice_curr_x + && choice_dist > choice->x - choice_curr_x) { choice_dist = choice->x - choice_curr_x; choice_next = i; } @@ -1111,7 +1080,8 @@ static void HuWinChoice(WindowData *window) { } } } - } else { + } + else { choice_y = 1000; for (i = 0, choice = window->choice_data; i < choice_max; i++, choice++) { if (i != choice_curr && !(choice->stat & 1) && choice->y < choice_y) { @@ -1137,25 +1107,33 @@ static void HuWinChoice(WindowData *window) { if (window->choice != choice_next) { window->choice = choice_next; HuAudFXPlay(0); - } else if (key & (window->key_auto | PAD_BUTTON_A)) { + } + else if (key & (VERSION_JAP ? PAD_BUTTON_A : (window->key_auto | PAD_BUTTON_A))) { HuAudFXPlay(2); window->key_down = key; window->stat = 0; - } else if ((key & PAD_BUTTON_B) && !(window->attr & 0x10)) { + } + else if ((key & PAD_BUTTON_B) && !(window->attr & 0x10)) { HuAudFXPlay(3); +#if !VERSION_JAP window->key_down = key; +#else + (void)key; // hack to match Japanese version +#endif window->choice = -1; window->stat = 0; } - HuWinSpcFontPosSet(window, window->cursor_sprite, window->choice_data[choice_next].x + spcFontTbl[20].center_x, window->choice_data[choice_next].y + spcFontTbl[20].center_y); + HuWinSpcFontPosSet(window, window->cursor_sprite, window->choice_data[choice_next].x + spcFontTbl[20].center_x, + window->choice_data[choice_next].y + spcFontTbl[20].center_y); } -u32 HuWinActivePadGet(WindowData *window) { +u32 HuWinActivePadGet(WindowData *window) +{ s32 win_key; u32 i; win_key = 0; - for (i=0; i<4; i++) { + for (i = 0; i < 4; i++) { if (window->active_pad & (1 << i)) { win_key |= winKey[i]; } @@ -1163,7 +1141,8 @@ u32 HuWinActivePadGet(WindowData *window) { return win_key; } -u32 HuWinActiveKeyGetX(WindowData *window) { +u32 HuWinActiveKeyGetX(WindowData *window) +{ u32 button; u32 i; u32 j; @@ -1173,7 +1152,7 @@ u32 HuWinActiveKeyGetX(WindowData *window) { active_pad = (window->active_pad & ~window->player_disable); for (i = 0; i < 4; i++) { if (active_pad & (1 << i)) { - for (j=0; j<4; j++) { + for (j = 0; j < 4; j++) { if (i == GWPlayerCfg[j].pad_idx) { break; } @@ -1186,7 +1165,8 @@ u32 HuWinActiveKeyGetX(WindowData *window) { return button; } -void HuWinPosSet(s16 window, float x, float y) { +void HuWinPosSet(s16 window, float x, float y) +{ WindowData *window_ptr = &winData[window]; window_ptr->pos_x = x; @@ -1194,7 +1174,8 @@ void HuWinPosSet(s16 window, float x, float y) { HuSprGrpPosSet(window_ptr->group, x, y); } -void HuWinScaleSet(s16 window, float x, float y) { +void HuWinScaleSet(s16 window, float x, float y) +{ WindowData *window_ptr = &winData[window]; window_ptr->scale_x = x; @@ -1202,38 +1183,43 @@ void HuWinScaleSet(s16 window, float x, float y) { HuSprGrpScaleSet(window_ptr->group, x, y); } -void HuWinZRotSet(s16 window, float z_rot) { +void HuWinZRotSet(s16 window, float z_rot) +{ WindowData *window_ptr = &winData[window]; window_ptr->z_rot = z_rot; HuSprGrpZRotSet(window_ptr->group, z_rot); } -void HuWinCenterPosSet(s16 window, float x, float y) { +void HuWinCenterPosSet(s16 window, float x, float y) +{ WindowData *window_ptr = &winData[window]; HuSprGrpCenterSet(window_ptr->group, window_ptr->w / 2.0f - x, window_ptr->h / 2.0f - y); } -void HuWinDrawNoSet(s16 window, s16 draw_no) { +void HuWinDrawNoSet(s16 window, s16 draw_no) +{ WindowData *window_ptr = &winData[window]; HuSprGrpDrawNoSet(window_ptr->group, draw_no); } -void HuWinScissorSet(s16 window, s16 x, s16 y, s16 w, s16 h) { +void HuWinScissorSet(s16 window, s16 x, s16 y, s16 w, s16 h) +{ WindowData *window_ptr = &winData[window]; HuSprGrpScissorSet(window_ptr->group, x, y, w, h); } -void HuWinPriSet(s16 window, s16 prio) { +void HuWinPriSet(s16 window, s16 prio) +{ WindowData *window_ptr = &winData[window]; s16 i; HuSprPriSet(window_ptr->group, 0, prio); HuSprPriSet(window_ptr->group, 1, prio); - for (i=2; i<30; i++) { + for (i = 2; i < 30; i++) { if (window_ptr->sprite_id[i] != -1) { HuSprPriSet(window_ptr->group, i, prio - 1); } @@ -1241,32 +1227,37 @@ void HuWinPriSet(s16 window, s16 prio) { window_ptr->prio = prio; } -void HuWinAttrSet(s16 window, u32 attr) { +void HuWinAttrSet(s16 window, u32 attr) +{ WindowData *window_ptr = &winData[window]; window_ptr->attr |= attr; } -void HuWinAttrReset(s16 window, u32 attr) { +void HuWinAttrReset(s16 window, u32 attr) +{ WindowData *window_ptr = &winData[window]; window_ptr->attr &= ~attr; } -s16 HuWinStatGet(s16 window) { +s16 HuWinStatGet(s16 window) +{ WindowData *window_ptr = &winData[window]; return window_ptr->stat; } -void HuWinMesColSet(s16 window, u8 color) { +void HuWinMesColSet(s16 window, u8 color) +{ WindowData *window_ptr = &winData[window]; window_ptr->mess_color = color; window_ptr->attr |= 0x80; } -void HuWinMesPalSet(s16 window, u8 index, u8 r, u8 g, u8 b) { +void HuWinMesPalSet(s16 window, u8 index, u8 r, u8 g, u8 b) +{ WindowData *window_ptr = &winData[window]; window_ptr->mess_pal[index][0] = r; @@ -1274,48 +1265,54 @@ void HuWinMesPalSet(s16 window, u8 index, u8 r, u8 g, u8 b) { window_ptr->mess_pal[index][2] = b; } -void HuWinBGTPLvlSet(s16 window, float tp_level) { +void HuWinBGTPLvlSet(s16 window, float tp_level) +{ WindowData *window_ptr = &winData[window]; HuSprTPLvlSet(window_ptr->group, 0, tp_level); } -void HuWinBGColSet(s16 window, GXColor *bg_color) { +void HuWinBGColSet(s16 window, GXColor *bg_color) +{ WindowData *window_ptr = &winData[window]; HuSprColorSet(window_ptr->group, 0, bg_color->r, bg_color->g, bg_color->b); } -void HuWinMesSpeedSet(s16 window, s16 speed) { +void HuWinMesSpeedSet(s16 window, s16 speed) +{ WindowData *window_ptr = &winData[window]; window_ptr->speed = speed; } -void HuWinMesRead(s32 mess_data_no) { +void HuWinMesRead(s32 mess_data_no) +{ void *dvd_mess; char *mess_path; - if(messDataPtr) { + if (messDataPtr) { HuMemDirectFree(messDataPtr); } messDataNo = mess_data_no; - #if VERSION_NTSC +#if VERSION_NTSC if (LanguageNo == 0) { mess_path = mesDataTbl[messDataNo]; - } else { + } + else { mess_path = mesDataTbl[messDataNo + 2]; } - #else - mess_path = mesDataTbl[messDataNo+(LanguageNo*2)]; - #endif +#else + mess_path = mesDataTbl[messDataNo + (LanguageNo * 2)]; +#endif dvd_mess = HuDvdDataRead(mess_path); messDataPtr = HuMemDirectMalloc(HEAP_SYSTEM, DirDataSize); memcpy(messDataPtr, dvd_mess, DirDataSize); HuMemDirectFree(dvd_mess); } -void HuWinMesSet(s16 window, u32 mess) { +void HuWinMesSet(s16 window, u32 mess) +{ WindowData *window_ptr = &winData[window]; window_ptr->stat = 1; @@ -1327,19 +1324,25 @@ void HuWinMesSet(s16 window, u32 mess) { window_ptr->mess = MessData_MesPtrGet(messDataPtr, mess); if (window_ptr->mess == 0) { OSReport("Error: No Message data\n"); +#if !VERSION_JAP HuWinMesSet(window, 0); return; +#endif } - } else { + } + else { window_ptr->mess = (u8 *)mess; } if (!(window_ptr->attr & 0x80)) { window_ptr->mess_color = 7; +#if !VERSION_JAP window_ptr->mess_time = 0; +#endif } } -void HuWinInsertMesSet(s16 window, u32 mess, s16 index) { +void HuWinInsertMesSet(s16 window, u32 mess, s16 index) +{ WindowData *window_ptr = &winData[window]; if (!(mess & 0x80000000)) { @@ -1351,12 +1354,14 @@ void HuWinInsertMesSet(s16 window, u32 mess, s16 index) { if (window_ptr->insert_mess[index] == 0) { OSReport("Error: No Message data\n"); } - } else { + } + else { window_ptr->insert_mess[index] = (u8 *)mess; } } -s16 HuWinChoiceGet(s16 window, s16 start_choice) { +s16 HuWinChoiceGet(s16 window, s16 start_choice) +{ WindowData *window_ptr = &winData[window]; window_ptr->attr |= 0x40; @@ -1387,50 +1392,57 @@ s16 HuWinChoiceGet(s16 window, s16 start_choice) { return window_ptr->choice; } -s16 HuWinChoiceNumGet(s16 window) { +s16 HuWinChoiceNumGet(s16 window) +{ WindowData *window_ptr = &winData[window]; return window_ptr->num_choices; } -void HuWinChoiceDisable(s16 window, s16 choice) { +void HuWinChoiceDisable(s16 window, s16 choice) +{ WindowData *window_ptr = &winData[window]; window_ptr->choice_disable[choice] = 1; } -s16 HuWinChoiceNowGet(s16 window) { +s16 HuWinChoiceNowGet(s16 window) +{ WindowData *window_ptr = &winData[window]; if (window_ptr->stat == 3) { return window_ptr->choice; - } else { + } + else { return -1; } } -void HuWinMesWait(s16 window) { +void HuWinMesWait(s16 window) +{ WindowData *window_ptr = &winData[window]; - while(window_ptr->stat != 0) { + while (window_ptr->stat != 0) { HuPrcVSleep(); } } -s16 HuWinAnimSet(s16 window, AnimData *anim, s16 bank, float x, float y) { +s16 HuWinAnimSet(s16 window, AnimData *anim, s16 bank, float x, float y) +{ WindowData *window_ptr = &winData[window]; s16 sprite; - sprite = HuSprCreate(anim, window_ptr->prio-1, bank); + sprite = HuSprCreate(anim, window_ptr->prio - 1, bank); return HuWinSprSet(window, sprite, x, y); } -s16 HuWinSprSet(s16 window, s16 sprite, float x, float y) { +s16 HuWinSprSet(s16 window, s16 sprite, float x, float y) +{ WindowData *window_ptr = &winData[window]; HuSprGrp *group = &HuSprGrpData[window_ptr->group]; s16 i; - for (i=2; i<=9; i++) { + for (i = 2; i <= 9; i++) { if (window_ptr->sprite_id[i] == -1) { window_ptr->sprite_id[i] = sprite; HuSprGrpMemberSet(window_ptr->group, i, sprite); @@ -1441,38 +1453,43 @@ s16 HuWinSprSet(s16 window, s16 sprite, float x, float y) { return i; } -void HuWinSprPosSet(s16 window, s16 index, float x, float y) { +void HuWinSprPosSet(s16 window, s16 index, float x, float y) +{ WindowData *window_ptr = &winData[window]; HuSprGrp *group = &HuSprGrpData[window_ptr->group]; HuSprPosSet(window_ptr->group, index, x - group->center_x, y - group->center_y); } -void HuWinSprPriSet(s16 window, s16 index, s16 prio) { +void HuWinSprPriSet(s16 window, s16 index, s16 prio) +{ WindowData *window_ptr = &winData[window]; HuSprGrp *group = &HuSprGrpData[window_ptr->group]; HuSprPriSet(window_ptr->group, index, prio); } -s16 HuWinSprIDGet(s16 window, s16 index) { +s16 HuWinSprIDGet(s16 window, s16 index) +{ WindowData *window_ptr = &winData[window]; return window_ptr->sprite_id[index]; } -void HuWinSprKill(s16 window, s16 index) { +void HuWinSprKill(s16 window, s16 index) +{ WindowData *window_ptr = &winData[window]; HuSprGrpMemberKill(window_ptr->group, index); window_ptr->sprite_id[index] = -1; } -void HuWinDispOff(s16 window) { +void HuWinDispOff(s16 window) +{ WindowData *window_ptr = &winData[window]; s16 i; - for(i=0; i<30; i++) { + for (i = 0; i < 30; i++) { if (window_ptr->sprite_id[i] != -1) { HuSprAttrSet(window_ptr->group, i, HUSPR_ATTR_DISPOFF); } @@ -1480,11 +1497,12 @@ void HuWinDispOff(s16 window) { window_ptr->attr |= 8; } -void HuWinDispOn(s16 window) { +void HuWinDispOn(s16 window) +{ WindowData *window_ptr = &winData[window]; s16 i; - for (i=0; i<30; i++) { + for (i = 0; i < 30; i++) { if (window_ptr->sprite_id[i] != -1) { HuSprAttrReset(window_ptr->group, i, HUSPR_ATTR_DISPOFF); } @@ -1492,7 +1510,8 @@ void HuWinDispOn(s16 window) { window_ptr->attr = window_ptr->attr & ~8; } -void HuWinComKeyWait(s32 player_1, s32 player_2, s32 player_3, s32 player_4, s16 delay) { +void HuWinComKeyWait(s32 player_1, s32 player_2, s32 player_3, s32 player_4, s16 delay) +{ s32 wait_input_p4; s32 wait_input_p3; s32 wait_input_p2; @@ -1500,33 +1519,39 @@ void HuWinComKeyWait(s32 player_1, s32 player_2, s32 player_3, s32 player_4, s16 if (player_4 == -1) { wait_input_p4 = -1; - } else { + } + else { wait_input_p4 = 0; } if (player_3 == -1) { wait_input_p3 = -1; - } else { + } + else { wait_input_p3 = 0; } if (player_2 == -1) { wait_input_p2 = -1; - } else { + } + else { wait_input_p2 = 0; } if (player_1 == -1) { wait_input_p1 = -1; - } else { + } + else { wait_input_p1 = 0; } _HuWinComKeySet(wait_input_p1, wait_input_p2, wait_input_p3, wait_input_p4, delay); _HuWinComKeySet(player_1, player_2, player_3, player_4, 1); } -void HuWinComKeySet(s32 player_1, s32 player_2, s32 player_3, s32 player_4) { +void HuWinComKeySet(s32 player_1, s32 player_2, s32 player_3, s32 player_4) +{ _HuWinComKeySet(player_1, player_2, player_3, player_4, 1); } -void _HuWinComKeySet(s32 player_1, s32 player_2, s32 player_3, s32 player_4, s16 delay) { +void _HuWinComKeySet(s32 player_1, s32 player_2, s32 player_3, s32 player_4, s16 delay) +{ winComKeyBuf[comKeyIdx].player[0] = player_1; winComKeyBuf[comKeyIdx].player[1] = player_2; winComKeyBuf[comKeyIdx].player[2] = player_3; @@ -1536,25 +1561,29 @@ void _HuWinComKeySet(s32 player_1, s32 player_2, s32 player_3, s32 player_4, s16 comKeyIdx &= 0xFF; } -void HuWinComKeyGet(s16 window, u32 *data) { +void HuWinComKeyGet(s16 window, u32 *data) +{ WindowData *window_ptr = &winData[window]; s16 i; if (comKeyIdx == comKeyIdxNow) { - for (i=0; i<4; i++) { + for (i = 0; i < 4; i++) { if (!(window_ptr->player_disable & (1 << i))) { data[i] = HuPadDStkRep[i] | HuPadBtnDown[i]; - } else { + } + else { data[i] = 0; } } - } else { - for (i=0; i<4; i++) { + } + else { + for (i = 0; i < 4; i++) { data[i] = winComKeyBuf[comKeyIdxNow].player[i]; if (data[i] == 0xFFFFFFFF) { if (!(window_ptr->player_disable & (1 << i))) { data[i] = HuPadDStkRep[i] | HuPadBtnDown[i]; - } else { + } + else { data[i] = 0; } } @@ -1567,11 +1596,13 @@ void HuWinComKeyGet(s16 window, u32 *data) { } } -void HuWinComKeyReset(void) { +void HuWinComKeyReset(void) +{ comKeyIdx = comKeyIdxNow = 0; } -void HuWinMesMaxSizeGet(s16 mess_num, float *size, ...) { +void HuWinMesMaxSizeGet(s16 mess_num, float *size, ...) +{ s16 i; u32 mess; va_list list; @@ -1579,11 +1610,11 @@ void HuWinMesMaxSizeGet(s16 mess_num, float *size, ...) { winInsertF = 0; va_start(list, size); winMaxWidth = winMaxHeight = 0; - for(i=0; i 0x80000000) { from_messdata = 0; mess_data = (u8 *)mess; - } else { + } + else { from_messdata = 1; mess_data = mess_start = MessData_MesPtrGet(messDataPtr, mess); } @@ -1667,7 +1704,8 @@ static void GetMesMaxSizeSub(u32 mess) { if (mess_data[1] != 0) { char_h = 26; } - } else { + } + else { char_w = fontWidthP[16] + 1; } } @@ -1708,15 +1746,15 @@ static void GetMesMaxSizeSub(u32 mess) { char_w = mesWInsert[*mess_data - 1]; break; } - #if VERSION_NTSC +#if VERSION_NTSC if ((*mess_data != 255 && *mess_data >= 32) || *mess_data == 16) { cr_flag = 1; } - #else +#else if ((*mess_data != 255 && *mess_data >= 32) || *mess_data == 16 || mess_data[-1] == 31) { cr_flag = 1; } - #endif +#endif line_w += char_w; line_h += char_h; mess_data++; @@ -1729,7 +1767,8 @@ static void GetMesMaxSizeSub(u32 mess) { } } -static s32 GetMesMaxSizeSub2(WindowData *window, u8 *mess_data) { +static s32 GetMesMaxSizeSub2(WindowData *window, u8 *mess_data) +{ s32 sp8; u8 mess_finish; s16 mess_h; @@ -1752,14 +1791,14 @@ static s32 GetMesMaxSizeSub2(WindowData *window, u8 *mess_data) { case 16: case 32: break; - + case 10: if (mess_end != 0 && !(window->attr & 0x100)) { char_w = 0; mess_finish = 1; } break; - + case 255: mess_w += char_w; /* fallthrough */ @@ -1769,7 +1808,7 @@ static s32 GetMesMaxSizeSub2(WindowData *window, u8 *mess_data) { char_h = 0; mess_w = char_w = 0; break; - + case 28: case 30: mess++; @@ -1778,16 +1817,16 @@ static s32 GetMesMaxSizeSub2(WindowData *window, u8 *mess_data) { case 29: char_w = 0; break; - + case 12: char_w = winTabSize * ((mess_w + winTabSize) / winTabSize) - mess_w; break; - + case 14: mess++; char_w = spcFontTbl[*mess - 1].w + 1; break; - + case 31: mess++; break; @@ -1802,13 +1841,15 @@ static s32 GetMesMaxSizeSub2(WindowData *window, u8 *mess_data) { return mess_w; } -s16 HuWinKeyWaitNumGet(u32 mess) { +s16 HuWinKeyWaitNumGet(u32 mess) +{ s16 wait_num; u8 *mess_data; if (mess > 0x80000000) { mess_data = (u8 *)mess; - } else { + } + else { mess_data = MessData_MesPtrGet(messDataPtr, mess); } for (wait_num = 0; *mess_data != 0; mess_data++) { @@ -1819,51 +1860,39 @@ s16 HuWinKeyWaitNumGet(u32 mess) { return wait_num; } -void HuWinPushKeySet(s16 window, s16 push_key) { +void HuWinPushKeySet(s16 window, s16 push_key) +{ WindowData *window_ptr = &winData[window]; window_ptr->push_key = push_key; } -void HuWinDisablePlayerSet(s16 window, u8 player) { +void HuWinDisablePlayerSet(s16 window, u8 player) +{ WindowData *window_ptr = &winData[window]; window_ptr->player_disable |= player; } -void HuWinDisablePlayerReset(s16 window, u8 player) { +void HuWinDisablePlayerReset(s16 window, u8 player) +{ WindowData *window_ptr = &winData[window]; window_ptr->player_disable &= ~(int)player; } -static s32 winPortraitTbl[] = { - WIN_TOAD_TALK_ANM, - WIN_BOBOMB_TALK_ANM, - WIN_SHYGUY_TALK_ANM, - WIN_BOO_TALK_ANM, - WIN_GOOMBA_TALK_ANM, - WIN_BOWSER_TALK_ANM, - WIN_KKID_TALK_ANM, - WIN_KOOPA_TALK_ANM, - WIN_CONDOR_TALK_ANM, - WIN_BOO_BLUE_TALK_ANM, - WIN_DOLPHIN_TALK_ANM, - WIN_BOO_RED_TALK_ANM, - WIN_THWOMP_TALK_ANM, - WIN_W01_HOST_TALK_ANM, - WIN_W02_HOST_TALK_ANM, - WIN_W03_HOST_TALK_ANM, - WIN_W04_HOST_TALK_ANM, - WIN_W05_HOST_TALK_ANM, - WIN_W06_HOST_TALK_ANM -}; +static s32 winPortraitTbl[] + = { WIN_TOAD_TALK_ANM, WIN_BOBOMB_TALK_ANM, WIN_SHYGUY_TALK_ANM, WIN_BOO_TALK_ANM, WIN_GOOMBA_TALK_ANM, WIN_BOWSER_TALK_ANM, WIN_KKID_TALK_ANM, + WIN_KOOPA_TALK_ANM, WIN_CONDOR_TALK_ANM, WIN_BOO_BLUE_TALK_ANM, WIN_DOLPHIN_TALK_ANM, WIN_BOO_RED_TALK_ANM, WIN_THWOMP_TALK_ANM, + WIN_W01_HOST_TALK_ANM, WIN_W02_HOST_TALK_ANM, WIN_W03_HOST_TALK_ANM, WIN_W04_HOST_TALK_ANM, WIN_W05_HOST_TALK_ANM, WIN_W06_HOST_TALK_ANM }; -s16 HuWinExCreate(float x, float y, s16 w, s16 h, s16 portrait) { +s16 HuWinExCreate(float x, float y, s16 w, s16 h, s16 portrait) +{ return HuWinExCreateStyled(x, y, w, h, portrait, 0); } -static void HuWinExCreatePortrait(s16 window, s16 portrait, float x, float y) { +static void HuWinExCreatePortrait(s16 window, s16 portrait, float x, float y) +{ s16 sprite; AnimData *anim; WindowData *window_ptr; @@ -1876,7 +1905,8 @@ static void HuWinExCreatePortrait(s16 window, s16 portrait, float x, float y) { HuWinSprSet(window, sprite, x, y); } -s16 HuWinExCreateStyled(float x, float y, s16 w, s16 h, s16 portrait, s16 frame) { +s16 HuWinExCreateStyled(float x, float y, s16 w, s16 h, s16 portrait, s16 frame) +{ WindowData *window_ptr; s16 window; @@ -1895,7 +1925,8 @@ s16 HuWinExCreateStyled(float x, float y, s16 w, s16 h, s16 portrait, s16 frame) return window; } -void HuWinExAnimIn(s16 window) { +void HuWinExAnimIn(s16 window) +{ WindowData *window_ptr = &winData[window]; s16 i; @@ -1903,19 +1934,21 @@ void HuWinExAnimIn(s16 window) { if (window_ptr->sprite_id[2] == -1) { HuSprScaleSet(window_ptr->group, 0, 1.0f, 0.0f); HuWinDispOn(window); - for (i=0; i<=10; i++) { + for (i = 0; i <= 10; i++) { HuSprScaleSet(window_ptr->group, 0, 1.0f, 1.0 - 1.1 * cosd(9.0f * i)); HuPrcVSleep(); } HuSprScaleSet(window_ptr->group, 0, 1.0f, 1.0f); - } else { + } + else { HuSprScaleSet(window_ptr->group, 0, 1.0f, 0.0f); HuSprScaleSet(window_ptr->group, 2, 1.0f, 0.0f); HuWinDispOn(window); - for (i=0; i<=20; i++) { + for (i = 0; i <= 20; i++) { if (i <= 10) { HuSprScaleSet(window_ptr->group, 0, 1.0f, 1.1 * (1.0 - cosd(9.0f * i))); - } else { + } + else { HuSprScaleSet(window_ptr->group, 0, 1.0f, 1.0f); } if (i > 10) { @@ -1928,19 +1961,21 @@ void HuWinExAnimIn(s16 window) { } } -void HuWinExAnimOut(s16 window) { +void HuWinExAnimOut(s16 window) +{ WindowData *window_ptr = &winData[window]; s16 i; _HuWinHomeClear(window_ptr); if (window_ptr->sprite_id[2] == -1) { - for (i=0; i<=10; i++) { + for (i = 0; i <= 10; i++) { HuSprScaleSet(window_ptr->group, 0, 1.0f, cosd(9.0f * i)); HuPrcVSleep(); } HuWinDispOff(window); - } else { - for (i=0; i<=15; i++) { + } + else { + for (i = 0; i <= 15; i++) { if (i <= 10) { HuSprScaleSet(window_ptr->group, 2, 1.0f, cosd(9.0f * i)); } @@ -1954,21 +1989,23 @@ void HuWinExAnimOut(s16 window) { } } -void HuWinExCleanup(s16 window) { +void HuWinExCleanup(s16 window) +{ HuWinKill(window); } -void HuWinExAnimPopIn(s16 window, s16 portrait) { +void HuWinExAnimPopIn(s16 window, s16 portrait) +{ WindowData *window_ptr = &winData[window]; s16 i; - for (i=0; i<=10; i++) { + for (i = 0; i <= 10; i++) { HuSprScaleSet(window_ptr->group, 2, 1.0f, cosd(9.0f * i)); HuPrcVSleep(); } HuWinSprKill(window, 2); HuWinExCreatePortrait(window, portrait, 48.0f, 48.0f); - for (i=0; i<=10; i++) { + for (i = 0; i <= 10; i++) { HuSprScaleSet(window_ptr->group, 2, 1.0f, sind(9.0f * i)); HuPrcVSleep(); } From b47cadcf21181b9c3931ed6968640c2e4181472b Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 15:10:26 +0100 Subject: [PATCH 047/178] Split Japanese DOL till flag.c --- config/GMPE01_00/symbols.txt | 4 +- config/GMPJ01_00/splits.txt | 60 +++- config/GMPJ01_00/symbols.txt | 519 ++++++++++++++++++----------------- configure.py | 16 +- src/game/saveload.c | 260 +++++++++++------- 5 files changed, 497 insertions(+), 362 deletions(-) diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 25979f04..60b719ff 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -4133,7 +4133,7 @@ VolumeTable = .data:0x801311E8; // type:object size:0x100 scope:local lbl_801312E8 = .data:0x801312E8; // type:object size:0x4D lbl_80131335 = .data:0x80131335; // type:object size:0x1B mgInfoTbl = .data:0x80131350; // type:object size:0xE00 data:2byte -commentTbl = .data:0x80132150; // type:object size:0x40 scope:local +commentTbl = .data:0x80132150; // type:object size:0x40 scope:local data:string lbl_80132190 = .data:0x80132190; // type:object size:0xC data:string lbl_8013219C = .data:0x8013219C; // type:object size:0xC data:string lbl_801321A8 = .data:0x801321A8; // type:object size:0xC data:string @@ -4622,7 +4622,7 @@ wipeData = .bss:0x80192360; // type:object size:0x4C data:4byte winData = .bss:0x801923C0; // type:object size:0x3000 align:32 data:byte winKey = .bss:0x801953C0; // type:object size:0x10 winComKeyBuf = .bss:0x801953D0; // type:object size:0x1400 -ARInfo = .bss:0x801967E0; // type:object size:0x400 data:byte +ARInfo = .bss:0x801967E0; // type:object size:0x400 scope:local data:byte arqReq = .bss:0x80196BE0; // type:object size:0x20 scope:local ARQueBuf = .bss:0x80196C00; // type:object size:0x280 scope:local preLoadBuf = .bss:0x80196E80; // type:object size:0x40 scope:local align:32 diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index feb125b5..f9827915 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -237,7 +237,7 @@ game/wipe.c: game/window.c: .text start:0x80041E54 end:0x80047E88 .data start:0x8012FD20 end:0x80130268 - .bss start:0x80192060 end:0x80196470 + .bss start:0x80192060 end:0x80196480 .sdata start:0x801D3280 end:0x801D3288 .sbss start:0x801D3A70 end:0x801D3AB8 .sdata2 start:0x801D4BC0 end:0x801D4C58 @@ -249,3 +249,61 @@ game/card.c: .text start:0x80047F70 end:0x80048574 .data start:0x80130268 end:0x801302B8 .sbss start:0x801D3AB8 end:0x801D3AC0 + +game/armem.c: + .text start:0x80048574 end:0x800493E0 + .data start:0x801302B8 end:0x801303A8 + .bss start:0x80196480 end:0x80196B60 + .sbss start:0x801D3AC0 end:0x801D3AD0 + +game/chrman.c: + .text start:0x800493E0 end:0x8005074C + .data start:0x801303A8 end:0x80130DC8 + .bss start:0x80196B60 end:0x801972F0 + .sdata start:0x801D3288 end:0x801D32D0 + .sbss start:0x801D3AD0 end:0x801D3AD8 + .sdata2 start:0x801D4C58 end:0x801D4D90 + +game/mapspace.c: + .text start:0x8005074C end:0x800544F0 + .bss start:0x801972F0 end:0x80197760 + .sbss start:0x801D3AD8 end:0x801D3AF8 + .sdata2 start:0x801D4D90 end:0x801D4DC0 + +game/THPSimple.c: + .text start:0x800544F0 end:0x800565F4 + .data start:0x80130DC8 end:0x80130EC8 + .bss start:0x80197760 end:0x80197E40 + .sdata start:0x801D32D0 end:0x801D32D8 + .sbss start:0x801D3AF8 end:0x801D3B18 + .sdata2 start:0x801D4DC0 end:0x801D4DC8 + +game/THPDraw.c: + .text start:0x800565F4 end:0x80056F4C + .sdata2 start:0x801D4DC8 end:0x801D4DE0 + +game/thpmain.c: + .text start:0x80056F4C end:0x80057914 + .rodata start:0x8011D930 end:0x8011D940 + .data start:0x80130EC8 end:0x80130F30 + .bss start:0x80197E40 end:0x80197E80 + .sbss start:0x801D3B18 end:0x801D3B40 + .sdata2 start:0x801D4DE0 end:0x801D4DF8 + +game/objsub.c: + .text start:0x80057914 end:0x80057B00 + .data start:0x80130F30 end:0x80131D30 + .bss start:0x80197E80 end:0x801980B0 + .sbss start:0x801D3B40 end:0x801D3B68 + +game/flag.c: + .text start:0x80057B00 end:0x80057D18 + .bss start:0x801980B0 end:0x801980C0 + +game/saveload.c: + .text start:0x80057D18 end:0x8005A324 + .data start:0x80131D30 end:0x80131DE8 + .bss start:0x801980C0 end:0x8019C0E0 + .sdata start:0x801D32D8 end:0x801D32F0 + .sbss start:0x801D3B68 end:0x801D3B78 + .sdata2 start:0x801D4DF8 end:0x801D4E08 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index 8bc3e8c0..2c706c69 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -4051,68 +4051,77 @@ winVoiceTbl = .data:0x8013019C; // type:object size:0x54 scope:local winPortraitTbl = .data:0x8013021C; // type:object size:0x4C scope:local lbl_80130268 = .data:0x80130268; // type:object size:0x26 scope:local data:string lbl_8013028E = .data:0x8013028E; // type:object size:0x2A scope:local -lbl_801302B8 = .data:0x801302B8; // type:object size:0x19 data:string -lbl_801302D1 = .data:0x801302D1; // type:object size:0x14 data:string -lbl_801302E5 = .data:0x801302E5; // type:object size:0x93 -lbl_80130378 = .data:0x80130378; // type:object size:0x30 -lbl_801303A8 = .data:0x801303A8; // type:object size:0x60 -lbl_80130408 = .data:0x80130408; // type:object size:0x60 -lbl_80130468 = .data:0x80130468; // type:object size:0x168 +lbl_801302B8 = .data:0x801302B8; // type:object size:0x19 scope:local data:string +lbl_801302D1 = .data:0x801302D1; // type:object size:0x14 scope:local data:string +lbl_801302E5 = .data:0x801302E5; // type:object size:0x93 scope:local +lbl_80130378 = .data:0x80130378; // type:object size:0x30 scope:local +effectDataTbl = .data:0x801303A8; // type:object size:0x60 scope:local +charDirTbl = .data:0x80130408; // type:object size:0x60 scope:local +effectDustParam = .data:0x80130468; // type:object size:0x38 scope:local +effectDotParam = .data:0x801304A0; // type:object size:0x38 scope:local +effectStarParam = .data:0x801304D8; // type:object size:0x38 scope:local +effectWarnParam = .data:0x80130510; // type:object size:0x38 scope:local +effectSmokeParam = .data:0x80130548; // type:object size:0x38 scope:local +lbl_801309A0 = .data:0x80130580; // type:object size:0x20 scope:local +lbl_801309C0 = .data:0x801305A0; // type:object size:0x20 scope:local +lbl_801309E0 = .data:0x801305C0; // type:object size:0x10 scope:local jumptable_801305D0 = .data:0x801305D0; // type:object size:0x1E8 scope:local -lbl_801307B8 = .data:0x801307B8; // type:object size:0x40 -lbl_801307F8 = .data:0x801307F8; // type:object size:0xE data:string -lbl_80130806 = .data:0x80130806; // type:object size:0xE data:string -lbl_80130814 = .data:0x80130814; // type:object size:0xE data:string -lbl_80130822 = .data:0x80130822; // type:object size:0xD data:string -lbl_8013082F = .data:0x8013082F; // type:object size:0xD data:string -lbl_8013083C = .data:0x8013083C; // type:object size:0xB data:string -lbl_80130847 = .data:0x80130847; // type:object size:0xF data:string -lbl_80130856 = .data:0x80130856; // type:object size:0xF data:string -lbl_80130865 = .data:0x80130865; // type:object size:0xF data:string -lbl_80130874 = .data:0x80130874; // type:object size:0xF data:string -lbl_80130883 = .data:0x80130883; // type:object size:0xF data:string -lbl_80130892 = .data:0x80130892; // type:object size:0xF data:string -lbl_801308A1 = .data:0x801308A1; // type:object size:0x9 data:string -lbl_801308AA = .data:0x801308AA; // type:object size:0xD data:string -lbl_801308B7 = .data:0x801308B7; // type:object size:0x17 data:string -lbl_801308CE = .data:0x801308CE; // type:object size:0x17 data:string -lbl_801308E5 = .data:0x801308E5; // type:object size:0xE data:string -lbl_801308F3 = .data:0x801308F3; // type:object size:0xE data:string -lbl_80130901 = .data:0x80130901; // type:object size:0xD data:string -lbl_8013090E = .data:0x8013090E; // type:object size:0xE data:string -lbl_8013091C = .data:0x8013091C; // type:object size:0xE data:string -lbl_8013092A = .data:0x8013092A; // type:object size:0xF data:string -lbl_80130939 = .data:0x80130939; // type:object size:0xF data:string -lbl_80130948 = .data:0x80130948; // type:object size:0x18 data:string -lbl_80130960 = .data:0x80130960; // type:object size:0x18 data:string -lbl_80130978 = .data:0x80130978; // type:object size:0xE data:string -lbl_80130986 = .data:0x80130986; // type:object size:0x18 data:string -lbl_8013099E = .data:0x8013099E; // type:object size:0x1A -lbl_801309B8 = .data:0x801309B8; // type:object size:0x100 -lbl_80130AB8 = .data:0x80130AB8; // type:object size:0xD data:string -lbl_80130AC5 = .data:0x80130AC5; // type:object size:0xD data:string -lbl_80130AD2 = .data:0x80130AD2; // type:object size:0xE data:string -lbl_80130AE0 = .data:0x80130AE0; // type:object size:0xE data:string -lbl_80130AEE = .data:0x80130AEE; // type:object size:0x12 -lbl_80130B00 = .data:0x80130B00; // type:object size:0xA0 -lbl_80130BA0 = .data:0x80130BA0; // type:object size:0x38 -lbl_80130BD8 = .data:0x80130BD8; // type:object size:0x38 -lbl_80130C10 = .data:0x80130C10; // type:object size:0x38 -lbl_80130C48 = .data:0x80130C48; // type:object size:0x38 -lbl_80130C80 = .data:0x80130C80; // type:object size:0x1C -lbl_80130C9C = .data:0x80130C9C; // type:object size:0x38 -lbl_80130CD4 = .data:0x80130CD4; // type:object size:0x38 -lbl_80130D0C = .data:0x80130D0C; // type:object size:0xBC -lbl_80130DC8 = .data:0x80130DC8; // type:object size:0x100 -lbl_80130EC8 = .data:0x80130EC8; // type:object size:0x4D -lbl_80130F15 = .data:0x80130F15; // type:object size:0x1B +voiceParam = .data:0x801307B8; // type:object size:0x40 scope:local +lbl_801307F8 = .data:0x801307F8; // type:object size:0xE scope:local data:string +lbl_80130806 = .data:0x80130806; // type:object size:0xE scope:local data:string +lbl_80130814 = .data:0x80130814; // type:object size:0xE scope:local data:string +lbl_80130822 = .data:0x80130822; // type:object size:0xD scope:local data:string +lbl_8013082F = .data:0x8013082F; // type:object size:0xD scope:local data:string +lbl_8013083C = .data:0x8013083C; // type:object size:0xB scope:local data:string +lbl_80130847 = .data:0x80130847; // type:object size:0xF scope:local data:string +lbl_80130856 = .data:0x80130856; // type:object size:0xF scope:local data:string +lbl_80130865 = .data:0x80130865; // type:object size:0xF scope:local data:string +lbl_80130874 = .data:0x80130874; // type:object size:0xF scope:local data:string +lbl_80130883 = .data:0x80130883; // type:object size:0xF scope:local data:string +lbl_80130892 = .data:0x80130892; // type:object size:0xF scope:local data:string +lbl_801308A1 = .data:0x801308A1; // type:object size:0x9 scope:local data:string +lbl_801308AA = .data:0x801308AA; // type:object size:0xD scope:local data:string +lbl_801308B7 = .data:0x801308B7; // type:object size:0x17 scope:local data:string +lbl_801308CE = .data:0x801308CE; // type:object size:0x17 scope:local data:string +lbl_801308E5 = .data:0x801308E5; // type:object size:0xE scope:local data:string +lbl_801308F3 = .data:0x801308F3; // type:object size:0xE scope:local data:string +lbl_80130901 = .data:0x80130901; // type:object size:0xD scope:local data:string +lbl_8013090E = .data:0x8013090E; // type:object size:0xE scope:local data:string +lbl_8013091C = .data:0x8013091C; // type:object size:0xE scope:local data:string +lbl_8013092A = .data:0x8013092A; // type:object size:0xF scope:local data:string +lbl_80130939 = .data:0x80130939; // type:object size:0xF scope:local data:string +lbl_80130948 = .data:0x80130948; // type:object size:0x18 scope:local data:string +lbl_80130960 = .data:0x80130960; // type:object size:0x18 scope:local data:string +lbl_80130978 = .data:0x80130978; // type:object size:0xE scope:local data:string +lbl_80130986 = .data:0x80130986; // type:object size:0x18 scope:local data:string +lbl_8013099E = .data:0x8013099E; // type:object size:0x1A scope:local +charTexNameTbl = .data:0x801309B8; // type:object size:0x100 +lbl_80130AB8 = .data:0x80130AB8; // type:object size:0xD scope:local data:string +lbl_80130AC5 = .data:0x80130AC5; // type:object size:0xD scope:local data:string +lbl_80130AD2 = .data:0x80130AD2; // type:object size:0xE scope:local data:string +lbl_80130AE0 = .data:0x80130AE0; // type:object size:0xE scope:local data:string +lbl_80130AEE = .data:0x80130AEE; // type:object size:0x10 scope:local data:string +hookNameTbl = .data:0x80130B00; // type:object size:0xA0 scope:local +modelParticleParam = .data:0x80130BA0; // type:object size:0x38 scope:local +coinParticleParam = .data:0x80130BD8; // type:object size:0x38 scope:local +lbl_80131030 = .data:0x80130C10; // type:object size:0x38 scope:local +lbl_80131068 = .data:0x80130C48; // type:object size:0x38 scope:local +@1294 = .data:0x80130C80; // type:object size:0x19 scope:local data:string +lbl_801310BC = .data:0x80130C9C; // type:object size:0x38 scope:local +lbl_801310F4 = .data:0x80130CD4; // type:object size:0x38 scope:local +@1315 = .data:0x80130D0C; // type:object size:0x1A scope:local data:string +lbl_80130D26 = .data:0x80130D26; // type:object size:0x12 scope:local data:string +lbl_80130D38 = .data:0x80130D38; // type:object size:0x12 scope:local data:string +VolumeTable = .data:0x80130DC8; // type:object size:0x100 scope:local +lbl_80130EC8 = .data:0x80130EC8; // type:object size:0x4D scope:local +lbl_80130F15 = .data:0x80130F15; // type:object size:0x1B scope:local mgInfoTbl = .data:0x80130F30; // type:object size:0xE00 data:2byte -lbl_80131D30 = .data:0x80131D30; // type:object size:0x40 -lbl_80131D70 = .data:0x80131D70; // type:object size:0x14 -lbl_80131D84 = .data:0x80131D84; // type:object size:0xC data:string -lbl_80131D90 = .data:0x80131D90; // type:object size:0xC data:string -lbl_80131D9C = .data:0x80131D9C; // type:object size:0xC data:string -lbl_80131DA8 = .data:0x80131DA8; // type:object size:0xC +commentTbl = .data:0x80131D30; // type:object size:0x40 scope:local data:byte +lbl_80131D70 = .data:0x80131D70; // type:object size:0x14 scope:local data:byte +lbl_80131D84 = .data:0x80131D84; // type:object size:0xC scope:local data:string +lbl_80131D90 = .data:0x80131D90; // type:object size:0xC scope:local data:string +lbl_80131D9C = .data:0x80131D9C; // type:object size:0xC scope:local data:string +SaveFileNameTbl = .data:0x80131DA8; // type:object size:0xC jumptable_80131DB4 = .data:0x80131DB4; // type:object size:0x34 scope:local lbl_80131E00 = .data:0x80131E00; // type:object size:0x20 lbl_80131E20 = .data:0x80131E20; // type:object size:0x13A0 @@ -4437,32 +4446,36 @@ wipeData = .bss:0x80192000; // type:object size:0x4C data:4byte winData = .bss:0x80192060; // type:object size:0x3000 data:byte winKey = .bss:0x80195060; // type:object size:0x10 winComKeyBuf = .bss:0x80195070; // type:object size:0x1400 -lbl_80196480 = .bss:0x80196480; // type:object size:0x400 data:byte -lbl_80196880 = .bss:0x80196880; // type:object size:0x20 -lbl_801968A0 = .bss:0x801968A0; // type:object size:0x2C0 -lbl_80196B60 = .bss:0x80196B60; // type:object size:0x640 -lbl_801971A0 = .bss:0x801971A0; // type:object size:0x10 data:2byte -lbl_801971B0 = .bss:0x801971B0; // type:object size:0x20 -lbl_801971D0 = .bss:0x801971D0; // type:object size:0x80 -lbl_80197250 = .bss:0x80197250; // type:object size:0xA0 -lbl_801972F0 = .bss:0x801972F0; // type:object size:0x40 -lbl_80197330 = .bss:0x80197330; // type:object size:0x60 -lbl_80197390 = .bss:0x80197390; // type:object size:0xC data:float -lbl_8019739C = .bss:0x8019739C; // type:object size:0xC data:float -lbl_801973A8 = .bss:0x801973A8; // type:object size:0x78 -lbl_80197420 = .bss:0x80197420; // type:object size:0x18C -lbl_801975AC = .bss:0x801975AC; // type:object size:0x180 -lbl_8019772C = .bss:0x8019772C; // type:object size:0x34 -lbl_80197760 = .bss:0x80197760; // type:object size:0x1A0 -lbl_80197900 = .bss:0x80197900; // type:object size:0x500 -lbl_80197E00 = .bss:0x80197E00; // type:object size:0x40 -lbl_80197E40 = .bss:0x80197E40; // type:object size:0x40 -lbl_80197E80 = .bss:0x80197E80; // type:object size:0x118 -lbl_80197F98 = .bss:0x80197F98; // type:object size:0x100 -lbl_80198098 = .bss:0x80198098; // type:object size:0x18 -lbl_801980B0 = .bss:0x801980B0; // type:object size:0x10 -lbl_801980C0 = .bss:0x801980C0; // type:object size:0x20 -lbl_801980E0 = .bss:0x801980E0; // type:object size:0x4000 +ARInfo = .bss:0x80196480; // type:object size:0x400 scope:local data:byte +arqReq = .bss:0x80196880; // type:object size:0x20 scope:local +ARQueBuf = .bss:0x801968A0; // type:object size:0x280 scope:local +preLoadBuf = .bss:0x80196B20; // type:object size:0x40 scope:local align:32 +charInstance = .bss:0x80196B60; // type:object size:0x640 scope:local +effectMdl = .bss:0x801971A0; // type:object size:0x10 scope:local data:2byte +particleData = .bss:0x801971B0; // type:object size:0x20 scope:local +itemHookProcess = .bss:0x801971D0; // type:object size:0x80 scope:local +lbl_801975B0 = .bss:0x80197250; // type:object size:0x10 scope:local +lbl_801975C0 = .bss:0x80197260; // type:object size:0x90 scope:local +MapObject = .bss:0x801972F0; // type:object size:0x40 +MapMT = .bss:0x80197330; // type:object size:0x30 +MapMTR = .bss:0x80197360; // type:object size:0x30 +MTRAdd = .bss:0x80197390; // type:object size:0xC scope:local data:float +FieldVec = .bss:0x8019739C; // type:object size:0xC scope:local data:float +ColisionIdx = .bss:0x801973A8; // type:object size:0x78 +HitFaceVec = .bss:0x80197420; // type:object size:0x180 +OldXYZ = .bss:0x801975A0; // type:object size:0xC scope:local +HitFace = .bss:0x801975AC; // type:object size:0x180 +CharObject = .bss:0x8019772C; // type:object size:0x30 +SimpleControl = .bss:0x80197760; // type:object size:0x1A0 +SoundBuffer = .bss:0x80197900; // type:object size:0x500 scope:local +WorkBuffer = .bss:0x80197E00; // type:object size:0x40 scope:local +THPFileName = .bss:0x80197E40; // type:object size:0x40 scope:local +mgGameStatBackup = .bss:0x80197E80; // type:object size:0x118 +mgIndexList = .bss:0x80197F98; // type:object size:0x100 +mgTicTacToeGrid = .bss:0x80198098; // type:object size:0x12 +_Sys_Flag = .bss:0x801980B0; // type:object size:0x10 scope:local +curFileInfo = .bss:0x801980C0; // type:object size:0x14 +saveBuf = .bss:0x801980E0; // type:object size:0x4000 lbl_8019C0E0 = .bss:0x8019C0E0; // type:object size:0x13A0 lbl_8019D480 = .bss:0x8019D480; // type:object size:0xC4 data:byte lbl_8019D544 = .bss:0x8019D544; // type:object size:0xC4 @@ -4703,22 +4716,22 @@ lbl_801D35D8 = .sdata:0x801D3270; // type:object size:0x8 colorN$226 = .sdata:0x801D3278; // type:object size:0x4 scope:local data:byte colorN$271 = .sdata:0x801D327C; // type:object size:0x4 scope:local data:byte winPrio = .sdata:0x801D3280; // type:object size:0x2 scope:local data:2byte -lbl_801D3288 = .sdata:0x801D3288; // type:object size:0x8 -lbl_801D3290 = .sdata:0x801D3290; // type:object size:0x8 -lbl_801D3298 = .sdata:0x801D3298; // type:object size:0x8 -lbl_801D32A0 = .sdata:0x801D32A0; // type:object size:0x8 -lbl_801D32A8 = .sdata:0x801D32A8; // type:object size:0x8 -lbl_801D32B0 = .sdata:0x801D32B0; // type:object size:0x1 -lbl_801D32B1 = .sdata:0x801D32B1; // type:object size:0x5 data:string -lbl_801D32B6 = .sdata:0x801D32B6; // type:object size:0x5 data:string -lbl_801D32BB = .sdata:0x801D32BB; // type:object size:0x8 data:string -lbl_801D32C3 = .sdata:0x801D32C3; // type:object size:0x6 data:string -lbl_801D32C9 = .sdata:0x801D32C9; // type:object size:0x7 -lbl_801D32D0 = .sdata:0x801D32D0; // type:object size:0x8 -lbl_801D32D8 = .sdata:0x801D32D8; // type:object size:0x4 data:4byte -lbl_801D32DC = .sdata:0x801D32DC; // type:object size:0x2 data:string -lbl_801D32DE = .sdata:0x801D32DE; // type:object size:0x2 data:string -lbl_801D32E0 = .sdata:0x801D32E0; // type:object size:0x8 +lbl_801D3288 = .sdata:0x801D3288; // type:object size:0x8 scope:local +lbl_801D3290 = .sdata:0x801D3290; // type:object size:0x8 scope:local +lbl_801D3298 = .sdata:0x801D3298; // type:object size:0x8 scope:local +lbl_801D32A0 = .sdata:0x801D32A0; // type:object size:0x8 scope:local +lbl_801D32A8 = .sdata:0x801D32A8; // type:object size:0x8 scope:local +lbl_801D32B0 = .sdata:0x801D32B0; // type:object size:0x1 scope:local +lbl_801D32B1 = .sdata:0x801D32B1; // type:object size:0x5 scope:local data:string +lbl_801D32B6 = .sdata:0x801D32B6; // type:object size:0x5 scope:local data:string +lbl_801D32BB = .sdata:0x801D32BB; // type:object size:0x8 scope:local data:string +lbl_801D32C3 = .sdata:0x801D32C3; // type:object size:0x6 scope:local data:string +lbl_801D32C9 = .sdata:0x801D32C9; // type:object size:0x7 scope:local +lbl_801D32D0 = .sdata:0x801D32D0; // type:object size:0x8 scope:local +saveEnableF = .sdata:0x801D32D8; // type:object size:0x4 data:4byte +@228 = .sdata:0x801D32DC; // type:object size:0x2 scope:local data:string +@229 = .sdata:0x801D32DE; // type:object size:0x2 scope:local data:string +SlotNameTbl = .sdata:0x801D32E0; // type:object size:0x8 scope:local lbl_801D32E8 = .sdata:0x801D32E8; // type:object size:0x3 lbl_801D32EB = .sdata:0x801D32EB; // type:object size:0x5 lbl_801D32F0 = .sdata:0x801D32F0; // type:object size:0x8 @@ -5157,48 +5170,48 @@ cursorAnim = .sbss:0x801D3AAC; // type:object size:0x4 scope:local data:4byte iconAnim = .sbss:0x801D3AB0; // type:object size:0x4 scope:local data:4byte UnMountCnt = .sbss:0x801D3AB8; // type:object size:0x1 data:byte cardWork = .sbss:0x801D3ABC; // type:object size:0x4 scope:local data:4byte -lbl_801D3AC0 = .sbss:0x801D3AC0; // type:object size:0x2 data:2byte -lbl_801D3AC4 = .sbss:0x801D3AC4; // type:object size:0x4 data:4byte -lbl_801D3AC8 = .sbss:0x801D3AC8; // type:object size:0x8 data:4byte -lbl_801D3AD0 = .sbss:0x801D3AD0; // type:object size:0x4 data:4byte -lbl_801D3AD4 = .sbss:0x801D3AD4; // type:object size:0x4 data:4byte -lbl_801D3AD8 = .sbss:0x801D3AD8; // type:object size:0x4 data:4byte -lbl_801D3ADC = .sbss:0x801D3ADC; // type:object size:0x4 data:4byte -lbl_801D3AE0 = .sbss:0x801D3AE0; // type:object size:0x4 data:4byte -lbl_801D3AE4 = .sbss:0x801D3AE4; // type:object size:0x4 data:4byte -lbl_801D3AE8 = .sbss:0x801D3AE8; // type:object size:0x4 -lbl_801D3AEC = .sbss:0x801D3AEC; // type:object size:0x4 data:4byte -lbl_801D3AF0 = .sbss:0x801D3AF0; // type:object size:0x4 data:float -lbl_801D3AF4 = .sbss:0x801D3AF4; // type:object size:0x4 data:float -lbl_801D3AF8 = .sbss:0x801D3AF8; // type:object size:0x4 data:4byte -lbl_801D3AFC = .sbss:0x801D3AFC; // type:object size:0x4 data:4byte -lbl_801D3B00 = .sbss:0x801D3B00; // type:object size:0x4 data:4byte -lbl_801D3B04 = .sbss:0x801D3B04; // type:object size:0x4 data:4byte -lbl_801D3B08 = .sbss:0x801D3B08; // type:object size:0x4 data:4byte -lbl_801D3B0C = .sbss:0x801D3B0C; // type:object size:0x4 data:4byte -lbl_801D3B10 = .sbss:0x801D3B10; // type:object size:0x8 data:4byte -lbl_801D3B18 = .sbss:0x801D3B18; // type:object size:0x4 data:4byte -lbl_801D3B1C = .sbss:0x801D3B1C; // type:object size:0x2 data:2byte -lbl_801D3B20 = .sbss:0x801D3B20; // type:object size:0x4 data:4byte -lbl_801D3B24 = .sbss:0x801D3B24; // type:object size:0x2 data:2byte -lbl_801D3B26 = .sbss:0x801D3B26; // type:object size:0x2 data:2byte -lbl_801D3B28 = .sbss:0x801D3B28; // type:object size:0x4 data:4byte -lbl_801D3B2C = .sbss:0x801D3B2C; // type:object size:0x4 data:4byte -lbl_801D3B30 = .sbss:0x801D3B30; // type:object size:0x4 data:4byte -lbl_801D3B34 = .sbss:0x801D3B34; // type:object size:0xC data:4byte -lbl_801D3B40 = .sbss:0x801D3B40; // type:object size:0x4 -lbl_801D3B44 = .sbss:0x801D3B44; // type:object size:0x4 +arqIdx = .sbss:0x801D3AC0; // type:object size:0x2 scope:local data:2byte +arqCnt = .sbss:0x801D3AC4; // type:object size:0x4 scope:local data:4byte +ARBase = .sbss:0x801D3AC8; // type:object size:0x4 scope:local data:4byte +effectAMemP = .sbss:0x801D3AD0; // type:object size:0x4 scope:local data:4byte +skipAnimUpdate = .sbss:0x801D3AD4; // type:object size:0x4 scope:local data:4byte +ColisionCount = .sbss:0x801D3AD8; // type:object size:0x4 data:4byte +topvtx = .sbss:0x801D3ADC; // type:object size:0x4 scope:local data:4byte +AttrHsf = .sbss:0x801D3AE0; // type:object size:0x4 scope:local data:4byte +HitFaceCount = .sbss:0x801D3AE4; // type:object size:0x4 data:4byte +nChar = .sbss:0x801D3AE8; // type:object size:0x4 +nMap = .sbss:0x801D3AEC; // type:object size:0x4 data:4byte +AddZ = .sbss:0x801D3AF0; // type:object size:0x4 data:float +AddX = .sbss:0x801D3AF4; // type:object size:0x4 data:float +Initialized = .sbss:0x801D3AF8; // type:object size:0x4 scope:local data:4byte +OldAIDCallback = .sbss:0x801D3AFC; // type:object size:0x4 scope:local data:4byte +AudioSystem = .sbss:0x801D3B00; // type:object size:0x4 scope:local data:4byte +bufIdx = .sbss:0x801D3B04; // type:object size:0x4 scope:local data:4byte +CurAudioBuffer = .sbss:0x801D3B08; // type:object size:0x4 scope:local data:4byte +LastAudioBuffer = .sbss:0x801D3B0C; // type:object size:0x4 scope:local data:4byte +SoundBufferIndex = .sbss:0x801D3B10; // type:object size:0x4 scope:local data:4byte +THPProc = .sbss:0x801D3B18; // type:object size:0x4 data:4byte +THPStart = .sbss:0x801D3B1C; // type:object size:0x2 scope:local data:2byte +THPFrame = .sbss:0x801D3B20; // type:object size:0x4 scope:local data:4byte +THPStat = .sbss:0x801D3B24; // type:object size:0x2 scope:local data:2byte +THPLoopF = .sbss:0x801D3B26; // type:object size:0x2 scope:local data:2byte +decodeThread = .sbss:0x801D3B28; // type:object size:0x4 scope:local data:4byte +decodeStackP = .sbss:0x801D3B2C; // type:object size:0x4 scope:local data:4byte +decodeRate = .sbss:0x801D3B30; // type:object size:0x4 scope:local data:4byte +audioTrack = .sbss:0x801D3B34; // type:object size:0x8 scope:local data:4byte +mgBoardHostEnableF = .sbss:0x801D3B40; // type:object size:0x1 +mgInstExitEnableF = .sbss:0x801D3B44; // type:object size:0x4 mgPracticeEnableF = .sbss:0x801D3B48; // type:object size:0x4 data:4byte mgQuitExtraF = .sbss:0x801D3B4C; // type:object size:0x4 data:4byte -lbl_801D3B50 = .sbss:0x801D3B50; // type:object size:0x4 -lbl_801D3B54 = .sbss:0x801D3B54; // type:object size:0x2 -lbl_801D3B56 = .sbss:0x801D3B56; // type:object size:0x2 -lbl_801D3B58 = .sbss:0x801D3B58; // type:object size:0x8 -lbl_801D3B60 = .sbss:0x801D3B60; // type:object size:0x8 -lbl_801D3B68 = .sbss:0x801D3B68; // type:object size:0x2 data:2byte -lbl_801D3B6A = .sbss:0x801D3B6A; // type:object size:0x1 data:byte -lbl_801D3B6C = .sbss:0x801D3B6C; // type:object size:0x4 -lbl_801D3B70 = .sbss:0x801D3B70; // type:object size:0x4 data:4byte +mgRecordExtra = .sbss:0x801D3B50; // type:object size:0x4 +lbl_801D3E94 = .sbss:0x801D3B54; // type:object size:0x1 +mgBattleStarMax = .sbss:0x801D3B56; // type:object size:0x2 +mgBattleStar = .sbss:0x801D3B58; // type:object size:0x8 +mgTypeCurr = .sbss:0x801D3B60; // type:object size:0x2 +curSlotNo = .sbss:0x801D3B68; // type:object size:0x2 data:2byte +curBoxNo = .sbss:0x801D3B6A; // type:object size:0x1 data:byte +saveExecF = .sbss:0x801D3B6C; // type:object size:0x4 +SLSerialNo = .sbss:0x801D3B70; // type:object size:0x4 data:4byte lbl_801D3B74 = .sbss:0x801D3B74; // type:object size:0x4 data:4byte lbl_801D3B78 = .sbss:0x801D3B78; // type:object size:0x4 data:4byte lbl_801D3B7C = .sbss:0x801D3B7C; // type:object size:0x4 data:4byte @@ -6100,117 +6113,117 @@ lbl_801D4C38 = .sdata2:0x801D4C38; // type:object size:0x8 scope:local data:doub lbl_801D4C40 = .sdata2:0x801D4C40; // type:object size:0x8 scope:local data:double lbl_801D4C48 = .sdata2:0x801D4C48; // type:object size:0x4 scope:local data:float lbl_801D4C50 = .sdata2:0x801D4C50; // type:object size:0x8 scope:local data:double -lbl_801D4C58 = .sdata2:0x801D4C58; // type:object size:0x8 data:double -lbl_801D4C60 = .sdata2:0x801D4C60; // type:object size:0x8 data:double -lbl_801D4C68 = .sdata2:0x801D4C68; // type:object size:0x8 data:double -lbl_801D4C70 = .sdata2:0x801D4C70; // type:object size:0x8 data:double -lbl_801D4C78 = .sdata2:0x801D4C78; // type:object size:0x8 data:double -lbl_801D4C80 = .sdata2:0x801D4C80; // type:object size:0x8 data:double -lbl_801D4C88 = .sdata2:0x801D4C88; // type:object size:0x8 data:double -lbl_801D4C90 = .sdata2:0x801D4C90; // type:object size:0x8 data:double -lbl_801D4C98 = .sdata2:0x801D4C98; // type:object size:0x4 data:float -lbl_801D4C9C = .sdata2:0x801D4C9C; // type:object size:0x4 data:float -lbl_801D4CA0 = .sdata2:0x801D4CA0; // type:object size:0x4 data:float -lbl_801D4CA4 = .sdata2:0x801D4CA4; // type:object size:0x4 data:float -lbl_801D4CA8 = .sdata2:0x801D4CA8; // type:object size:0x8 data:double -lbl_801D4CB0 = .sdata2:0x801D4CB0; // type:object size:0x4 data:float -lbl_801D4CB8 = .sdata2:0x801D4CB8; // type:object size:0x8 data:double -lbl_801D4CC0 = .sdata2:0x801D4CC0; // type:object size:0x8 data:double -lbl_801D4CC8 = .sdata2:0x801D4CC8; // type:object size:0x4 data:float -lbl_801D4CCC = .sdata2:0x801D4CCC; // type:object size:0x4 data:float -lbl_801D4CD0 = .sdata2:0x801D4CD0; // type:object size:0x8 data:double -lbl_801D4CD8 = .sdata2:0x801D4CD8; // type:object size:0x4 data:float -lbl_801D4CDC = .sdata2:0x801D4CDC; // type:object size:0x4 data:float -lbl_801D4CE0 = .sdata2:0x801D4CE0; // type:object size:0x4 data:float -lbl_801D4CE4 = .sdata2:0x801D4CE4; // type:object size:0x4 data:float -lbl_801D4CE8 = .sdata2:0x801D4CE8; // type:object size:0x4 data:float -lbl_801D4CEC = .sdata2:0x801D4CEC; // type:object size:0x4 data:float -lbl_801D4CF0 = .sdata2:0x801D4CF0; // type:object size:0x8 data:double -lbl_801D4CF8 = .sdata2:0x801D4CF8; // type:object size:0x4 data:float -lbl_801D4D00 = .sdata2:0x801D4D00; // type:object size:0x8 data:double -lbl_801D4D08 = .sdata2:0x801D4D08; // type:object size:0x8 data:double -lbl_801D4D10 = .sdata2:0x801D4D10; // type:object size:0x4 data:float -lbl_801D4D18 = .sdata2:0x801D4D18; // type:object size:0x8 data:double -lbl_801D4D20 = .sdata2:0x801D4D20; // type:object size:0x4 data:float -lbl_801D4D24 = .sdata2:0x801D4D24; // type:object size:0x4 data:float -lbl_801D4D28 = .sdata2:0x801D4D28; // type:object size:0x8 data:double -lbl_801D4D30 = .sdata2:0x801D4D30; // type:object size:0x8 data:double -lbl_801D4D38 = .sdata2:0x801D4D38; // type:object size:0x4 data:float -lbl_801D4D3C = .sdata2:0x801D4D3C; // type:object size:0x4 data:float -lbl_801D4D40 = .sdata2:0x801D4D40; // type:object size:0x4 data:float -lbl_801D4D48 = .sdata2:0x801D4D48; // type:object size:0x8 data:double -lbl_801D4D50 = .sdata2:0x801D4D50; // type:object size:0x4 data:float -lbl_801D4D54 = .sdata2:0x801D4D54; // type:object size:0x4 data:float -lbl_801D4D58 = .sdata2:0x801D4D58; // type:object size:0x4 data:float -lbl_801D4D5C = .sdata2:0x801D4D5C; // type:object size:0x4 data:float -lbl_801D4D60 = .sdata2:0x801D4D60; // type:object size:0x8 data:double -lbl_801D4D68 = .sdata2:0x801D4D68; // type:object size:0x4 data:float -lbl_801D4D70 = .sdata2:0x801D4D70; // type:object size:0x8 data:double -lbl_801D4D78 = .sdata2:0x801D4D78; // type:object size:0x4 data:float -lbl_801D4D80 = .sdata2:0x801D4D80; // type:object size:0x8 data:double -lbl_801D4D88 = .sdata2:0x801D4D88; // type:object size:0x8 data:float -lbl_801D4D90 = .sdata2:0x801D4D90; // type:object size:0x4 data:float -lbl_801D4D94 = .sdata2:0x801D4D94; // type:object size:0x4 data:float -lbl_801D4D98 = .sdata2:0x801D4D98; // type:object size:0x4 data:float -lbl_801D4D9C = .sdata2:0x801D4D9C; // type:object size:0x4 data:float -lbl_801D4DA0 = .sdata2:0x801D4DA0; // type:object size:0x8 data:double -lbl_801D4DA8 = .sdata2:0x801D4DA8; // type:object size:0x8 data:double -lbl_801D4DB0 = .sdata2:0x801D4DB0; // type:object size:0x8 data:double -lbl_801D4DB8 = .sdata2:0x801D4DB8; // type:object size:0x4 data:float -lbl_801D4DC0 = .sdata2:0x801D4DC0; // type:object size:0x8 data:double -lbl_801D4DC8 = .sdata2:0x801D4DC8; // type:object size:0x2 data:2byte -lbl_801D4DCA = .sdata2:0x801D4DCA; // type:object size:0x2 data:2byte -lbl_801D4DCC = .sdata2:0x801D4DCC; // type:object size:0x2 data:2byte -lbl_801D4DCE = .sdata2:0x801D4DCE; // type:object size:0x2 data:2byte -lbl_801D4DD0 = .sdata2:0x801D4DD0; // type:object size:0x1 data:byte -lbl_801D4DD1 = .sdata2:0x801D4DD1; // type:object size:0x1 data:byte -lbl_801D4DD2 = .sdata2:0x801D4DD2; // type:object size:0x1 data:byte -lbl_801D4DD3 = .sdata2:0x801D4DD3; // type:object size:0x1 data:byte -lbl_801D4DD4 = .sdata2:0x801D4DD4; // type:object size:0x1 data:byte -lbl_801D4DD5 = .sdata2:0x801D4DD5; // type:object size:0x1 data:byte -lbl_801D4DD6 = .sdata2:0x801D4DD6; // type:object size:0x1 data:byte -lbl_801D4DD7 = .sdata2:0x801D4DD7; // type:object size:0x1 data:byte -lbl_801D4DD8 = .sdata2:0x801D4DD8; // type:object size:0x1 data:byte -lbl_801D4DD9 = .sdata2:0x801D4DD9; // type:object size:0x1 data:byte -lbl_801D4DDA = .sdata2:0x801D4DDA; // type:object size:0x1 data:byte -lbl_801D4DDB = .sdata2:0x801D4DDB; // type:object size:0x1 data:byte -lbl_801D4DDC = .sdata2:0x801D4DDC; // type:object size:0x4 data:float -lbl_801D4DE0 = .sdata2:0x801D4DE0; // type:object size:0x4 data:float -lbl_801D4DE4 = .sdata2:0x801D4DE4; // type:object size:0x1 data:byte -lbl_801D4DE5 = .sdata2:0x801D4DE5; // type:object size:0x1 data:byte -lbl_801D4DE6 = .sdata2:0x801D4DE6; // type:object size:0x1 data:byte -lbl_801D4DE7 = .sdata2:0x801D4DE7; // type:object size:0x1 data:byte -lbl_801D4DE8 = .sdata2:0x801D4DE8; // type:object size:0x4 data:float -lbl_801D4DEC = .sdata2:0x801D4DEC; // type:object size:0x4 data:float -lbl_801D4DF0 = .sdata2:0x801D4DF0; // type:object size:0x8 data:float -lbl_801D4DF8 = .sdata2:0x801D4DF8; // type:object size:0x4 data:float -lbl_801D4DFC = .sdata2:0x801D4DFC; // type:object size:0x4 data:float -lbl_801D4E00 = .sdata2:0x801D4E00; // type:object size:0x8 data:float -lbl_801D4E08 = .sdata2:0x801D4E08; // type:object size:0x4 data:float -lbl_801D4E0C = .sdata2:0x801D4E0C; // type:object size:0x4 data:float -lbl_801D4E10 = .sdata2:0x801D4E10; // type:object size:0x4 data:float -lbl_801D4E14 = .sdata2:0x801D4E14; // type:object size:0x4 data:float -lbl_801D4E18 = .sdata2:0x801D4E18; // type:object size:0x4 data:float -lbl_801D4E1C = .sdata2:0x801D4E1C; // type:object size:0x4 data:float -lbl_801D4E20 = .sdata2:0x801D4E20; // type:object size:0x8 data:double -lbl_801D4E28 = .sdata2:0x801D4E28; // type:object size:0x8 data:double -lbl_801D4E30 = .sdata2:0x801D4E30; // type:object size:0x4 data:float -lbl_801D4E34 = .sdata2:0x801D4E34; // type:object size:0x4 data:float -lbl_801D4E38 = .sdata2:0x801D4E38; // type:object size:0x8 data:double -lbl_801D4E40 = .sdata2:0x801D4E40; // type:object size:0x8 data:double -lbl_801D4E48 = .sdata2:0x801D4E48; // type:object size:0x4 data:float -lbl_801D4E4C = .sdata2:0x801D4E4C; // type:object size:0x4 data:float -lbl_801D4E50 = .sdata2:0x801D4E50; // type:object size:0x4 data:float -lbl_801D4E54 = .sdata2:0x801D4E54; // type:object size:0x4 data:float -lbl_801D4E58 = .sdata2:0x801D4E58; // type:object size:0x4 data:float -lbl_801D4E5C = .sdata2:0x801D4E5C; // type:object size:0x4 data:float -lbl_801D4E60 = .sdata2:0x801D4E60; // type:object size:0x8 data:double -lbl_801D4E68 = .sdata2:0x801D4E68; // type:object size:0x4 data:float -lbl_801D4E6C = .sdata2:0x801D4E6C; // type:object size:0x4 data:float -lbl_801D4E70 = .sdata2:0x801D4E70; // type:object size:0x8 data:double -lbl_801D4E78 = .sdata2:0x801D4E78; // type:object size:0x4 data:float -lbl_801D4E7C = .sdata2:0x801D4E7C; // type:object size:0x4 data:float -lbl_801D4E80 = .sdata2:0x801D4E80; // type:object size:0x4 data:float +lbl_801D4C58 = .sdata2:0x801D4C58; // type:object size:0x8 scope:local data:double +lbl_801D4C60 = .sdata2:0x801D4C60; // type:object size:0x8 scope:local data:double +lbl_801D4C68 = .sdata2:0x801D4C68; // type:object size:0x8 scope:local data:double +lbl_801D4C70 = .sdata2:0x801D4C70; // type:object size:0x8 scope:local data:double +lbl_801D4C78 = .sdata2:0x801D4C78; // type:object size:0x8 scope:local data:double +lbl_801D4C80 = .sdata2:0x801D4C80; // type:object size:0x8 scope:local data:double +lbl_801D4C88 = .sdata2:0x801D4C88; // type:object size:0x8 scope:local data:double +lbl_801D4C90 = .sdata2:0x801D4C90; // type:object size:0x8 scope:local data:double +lbl_801D4C98 = .sdata2:0x801D4C98; // type:object size:0x4 scope:local data:float +lbl_801D4C9C = .sdata2:0x801D4C9C; // type:object size:0x4 scope:local data:float +lbl_801D4CA0 = .sdata2:0x801D4CA0; // type:object size:0x4 scope:local data:float +lbl_801D4CA4 = .sdata2:0x801D4CA4; // type:object size:0x4 scope:local data:float +lbl_801D4CA8 = .sdata2:0x801D4CA8; // type:object size:0x8 scope:local data:double +lbl_801D4CB0 = .sdata2:0x801D4CB0; // type:object size:0x4 scope:local data:float +lbl_801D4CB8 = .sdata2:0x801D4CB8; // type:object size:0x8 scope:local data:double +lbl_801D4CC0 = .sdata2:0x801D4CC0; // type:object size:0x8 scope:local data:double +lbl_801D4CC8 = .sdata2:0x801D4CC8; // type:object size:0x4 scope:local data:float +lbl_801D4CCC = .sdata2:0x801D4CCC; // type:object size:0x4 scope:local data:float +lbl_801D4CD0 = .sdata2:0x801D4CD0; // type:object size:0x8 scope:local data:double +lbl_801D4CD8 = .sdata2:0x801D4CD8; // type:object size:0x4 scope:local data:float +lbl_801D4CDC = .sdata2:0x801D4CDC; // type:object size:0x4 scope:local data:float +lbl_801D4CE0 = .sdata2:0x801D4CE0; // type:object size:0x4 scope:local data:float +lbl_801D4CE4 = .sdata2:0x801D4CE4; // type:object size:0x4 scope:local data:float +lbl_801D4CE8 = .sdata2:0x801D4CE8; // type:object size:0x4 scope:local data:float +lbl_801D4CEC = .sdata2:0x801D4CEC; // type:object size:0x4 scope:local data:float +lbl_801D4CF0 = .sdata2:0x801D4CF0; // type:object size:0x8 scope:local data:double +lbl_801D4CF8 = .sdata2:0x801D4CF8; // type:object size:0x4 scope:local data:float +lbl_801D4D00 = .sdata2:0x801D4D00; // type:object size:0x8 scope:local data:double +lbl_801D4D08 = .sdata2:0x801D4D08; // type:object size:0x8 scope:local data:double +lbl_801D4D10 = .sdata2:0x801D4D10; // type:object size:0x4 scope:local data:float +lbl_801D4D18 = .sdata2:0x801D4D18; // type:object size:0x8 scope:local data:double +lbl_801D4D20 = .sdata2:0x801D4D20; // type:object size:0x4 scope:local data:float +lbl_801D4D24 = .sdata2:0x801D4D24; // type:object size:0x4 scope:local data:float +lbl_801D4D28 = .sdata2:0x801D4D28; // type:object size:0x8 scope:local data:double +lbl_801D4D30 = .sdata2:0x801D4D30; // type:object size:0x8 scope:local data:double +lbl_801D4D38 = .sdata2:0x801D4D38; // type:object size:0x4 scope:local data:float +lbl_801D4D3C = .sdata2:0x801D4D3C; // type:object size:0x4 scope:local data:float +lbl_801D4D40 = .sdata2:0x801D4D40; // type:object size:0x4 scope:local data:float +lbl_801D4D48 = .sdata2:0x801D4D48; // type:object size:0x8 scope:local data:double +lbl_801D4D50 = .sdata2:0x801D4D50; // type:object size:0x4 scope:local data:float +lbl_801D4D54 = .sdata2:0x801D4D54; // type:object size:0x4 scope:local data:float +lbl_801D4D58 = .sdata2:0x801D4D58; // type:object size:0x4 scope:local data:float +lbl_801D4D5C = .sdata2:0x801D4D5C; // type:object size:0x4 scope:local data:float +lbl_801D4D60 = .sdata2:0x801D4D60; // type:object size:0x8 scope:local data:double +lbl_801D4D68 = .sdata2:0x801D4D68; // type:object size:0x4 scope:local data:float +lbl_801D4D70 = .sdata2:0x801D4D70; // type:object size:0x8 scope:local data:double +lbl_801D4D78 = .sdata2:0x801D4D78; // type:object size:0x4 scope:local data:float +lbl_801D4D80 = .sdata2:0x801D4D80; // type:object size:0x8 scope:local data:double +lbl_801D4D88 = .sdata2:0x801D4D88; // type:object size:0x8 scope:local data:float +lbl_801D4D90 = .sdata2:0x801D4D90; // type:object size:0x4 scope:local data:float +lbl_801D4D94 = .sdata2:0x801D4D94; // type:object size:0x4 scope:local data:float +lbl_801D4D98 = .sdata2:0x801D4D98; // type:object size:0x4 scope:local data:float +lbl_801D4D9C = .sdata2:0x801D4D9C; // type:object size:0x4 scope:local data:float +lbl_801D4DA0 = .sdata2:0x801D4DA0; // type:object size:0x8 scope:local data:double +lbl_801D4DA8 = .sdata2:0x801D4DA8; // type:object size:0x8 scope:local data:double +lbl_801D4DB0 = .sdata2:0x801D4DB0; // type:object size:0x8 scope:local data:double +lbl_801D4DB8 = .sdata2:0x801D4DB8; // type:object size:0x4 scope:local data:float +lbl_801D4DC0 = .sdata2:0x801D4DC0; // type:object size:0x8 scope:local data:double +lbl_801D4DC8 = .sdata2:0x801D4DC8; // type:object size:0x2 scope:local data:2byte +lbl_801D4DCA = .sdata2:0x801D4DCA; // type:object size:0x2 scope:local data:2byte +lbl_801D4DCC = .sdata2:0x801D4DCC; // type:object size:0x2 scope:local data:2byte +lbl_801D4DCE = .sdata2:0x801D4DCE; // type:object size:0x2 scope:local data:2byte +lbl_801D4DD0 = .sdata2:0x801D4DD0; // type:object size:0x1 scope:local data:byte +lbl_801D4DD1 = .sdata2:0x801D4DD1; // type:object size:0x1 scope:local data:byte +lbl_801D4DD2 = .sdata2:0x801D4DD2; // type:object size:0x1 scope:local data:byte +lbl_801D4DD3 = .sdata2:0x801D4DD3; // type:object size:0x1 scope:local data:byte +lbl_801D4DD4 = .sdata2:0x801D4DD4; // type:object size:0x1 scope:local data:byte +lbl_801D4DD5 = .sdata2:0x801D4DD5; // type:object size:0x1 scope:local data:byte +lbl_801D4DD6 = .sdata2:0x801D4DD6; // type:object size:0x1 scope:local data:byte +lbl_801D4DD7 = .sdata2:0x801D4DD7; // type:object size:0x1 scope:local data:byte +lbl_801D4DD8 = .sdata2:0x801D4DD8; // type:object size:0x1 scope:local data:byte +lbl_801D4DD9 = .sdata2:0x801D4DD9; // type:object size:0x1 scope:local data:byte +lbl_801D4DDA = .sdata2:0x801D4DDA; // type:object size:0x1 scope:local data:byte +lbl_801D4DDB = .sdata2:0x801D4DDB; // type:object size:0x1 scope:local data:byte +lbl_801D4DDC = .sdata2:0x801D4DDC; // type:object size:0x4 scope:local data:float +lbl_801D4DE0 = .sdata2:0x801D4DE0; // type:object size:0x4 scope:local data:float +lbl_801D4DE4 = .sdata2:0x801D4DE4; // type:object size:0x1 scope:local data:byte +lbl_801D4DE5 = .sdata2:0x801D4DE5; // type:object size:0x1 scope:local data:byte +lbl_801D4DE6 = .sdata2:0x801D4DE6; // type:object size:0x1 scope:local data:byte +lbl_801D4DE7 = .sdata2:0x801D4DE7; // type:object size:0x1 scope:local data:byte +lbl_801D4DE8 = .sdata2:0x801D4DE8; // type:object size:0x4 scope:local data:float +lbl_801D4DEC = .sdata2:0x801D4DEC; // type:object size:0x4 scope:local data:float +lbl_801D4DF0 = .sdata2:0x801D4DF0; // type:object size:0x8 scope:local data:float +lbl_801D4DF8 = .sdata2:0x801D4DF8; // type:object size:0x4 scope:local data:float +lbl_801D4DFC = .sdata2:0x801D4DFC; // type:object size:0x4 scope:local data:float +lbl_801D4E00 = .sdata2:0x801D4E00; // type:object size:0x8 scope:local data:float +lbl_801D4E08 = .sdata2:0x801D4E08; // type:object size:0x4 scope:local data:float +lbl_801D4E0C = .sdata2:0x801D4E0C; // type:object size:0x4 scope:local data:float +lbl_801D4E10 = .sdata2:0x801D4E10; // type:object size:0x4 scope:local data:float +lbl_801D4E14 = .sdata2:0x801D4E14; // type:object size:0x4 scope:local data:float +lbl_801D4E18 = .sdata2:0x801D4E18; // type:object size:0x4 scope:local data:float +lbl_801D4E1C = .sdata2:0x801D4E1C; // type:object size:0x4 scope:local data:float +lbl_801D4E20 = .sdata2:0x801D4E20; // type:object size:0x8 scope:local data:double +lbl_801D4E28 = .sdata2:0x801D4E28; // type:object size:0x8 scope:local data:double +lbl_801D4E30 = .sdata2:0x801D4E30; // type:object size:0x4 scope:local data:float +lbl_801D4E34 = .sdata2:0x801D4E34; // type:object size:0x4 scope:local data:float +lbl_801D4E38 = .sdata2:0x801D4E38; // type:object size:0x8 scope:local data:double +lbl_801D4E40 = .sdata2:0x801D4E40; // type:object size:0x8 scope:local data:double +lbl_801D4E48 = .sdata2:0x801D4E48; // type:object size:0x4 scope:local data:float +lbl_801D4E4C = .sdata2:0x801D4E4C; // type:object size:0x4 scope:local data:float +lbl_801D4E50 = .sdata2:0x801D4E50; // type:object size:0x4 scope:local data:float +lbl_801D4E54 = .sdata2:0x801D4E54; // type:object size:0x4 scope:local data:float +lbl_801D4E58 = .sdata2:0x801D4E58; // type:object size:0x4 scope:local data:float +lbl_801D4E5C = .sdata2:0x801D4E5C; // type:object size:0x4 scope:local data:float +lbl_801D4E60 = .sdata2:0x801D4E60; // type:object size:0x8 scope:local data:double +lbl_801D4E68 = .sdata2:0x801D4E68; // type:object size:0x4 scope:local data:float +lbl_801D4E6C = .sdata2:0x801D4E6C; // type:object size:0x4 scope:local data:float +lbl_801D4E70 = .sdata2:0x801D4E70; // type:object size:0x8 scope:local data:double +lbl_801D4E78 = .sdata2:0x801D4E78; // type:object size:0x4 scope:local data:float +lbl_801D4E7C = .sdata2:0x801D4E7C; // type:object size:0x4 scope:local data:float +lbl_801D4E80 = .sdata2:0x801D4E80; // type:object size:0x4 scope:local data:float lbl_801D4E84 = .sdata2:0x801D4E84; // type:object size:0x4 data:float lbl_801D4E88 = .sdata2:0x801D4E88; // type:object size:0x4 data:float lbl_801D4E8C = .sdata2:0x801D4E8C; // type:object size:0x4 data:float diff --git a/configure.py b/configure.py index 14f66e9a..eff08432 100644 --- a/configure.py +++ b/configure.py @@ -413,14 +413,14 @@ config.libs = [ Object(Matching, "game/window.c"), Object(Matching, "game/messdata.c"), Object(Matching, "game/card.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/armem.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/chrman.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/mapspace.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/THPSimple.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/THPDraw.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/thpmain.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/objsub.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/flag.c"), + Object(Matching, "game/armem.c"), + Object(Matching, "game/chrman.c"), + Object(Matching, "game/mapspace.c"), + Object(Matching, "game/THPSimple.c"), + Object(Matching, "game/THPDraw.c"), + Object(Matching, "game/thpmain.c"), + Object(Matching, "game/objsub.c"), + Object(Matching, "game/flag.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/saveload.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/sreset.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/main.c"), diff --git a/src/game/saveload.c b/src/game/saveload.c index 0c5d627e..a00db99a 100644 --- a/src/game/saveload.c +++ b/src/game/saveload.c @@ -1,15 +1,15 @@ #include "game/saveload.h" -#include "game/data.h" -#include "game/pad.h" -#include "game/window.h" -#include "game/flag.h" -#include "game/card.h" -#include "game/sprite.h" -#include "game/gamework_data.h" #include "data_num/win.h" +#include "game/card.h" +#include "game/data.h" +#include "game/flag.h" +#include "game/gamework_data.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/window.h" -#include "string.h" #include "stddef.h" +#include "string.h" #if VERSION_ENG #define SAVE_WRITE_BEGIN _SetFlag(FLAG_ID_MAKE(3, 0)); @@ -19,13 +19,12 @@ #define SAVE_WRITE_END #endif -#define SAVE_GET_PLAYER(player_idx) &saveBuf.buf[((player_idx)*sizeof(PlayerState))+offsetof(SaveBufData, player)] -#define SAVE_GET_PLAYER_STORY(player_idx) &saveBuf.buf[((player_idx)*sizeof(PlayerState))+offsetof(SaveBufData, playerStory)] +#define SAVE_GET_PLAYER(player_idx) &saveBuf.buf[((player_idx) * sizeof(PlayerState)) + offsetof(SaveBufData, player)] +#define SAVE_GET_PLAYER_STORY(player_idx) &saveBuf.buf[((player_idx) * sizeof(PlayerState)) + offsetof(SaveBufData, playerStory)] static s16 SLCreateSaveWin(void); static void SLKillSaveWin(void); - extern u8 UnMountCnt; CARDFileInfo curFileInfo; @@ -36,27 +35,23 @@ s32 saveExecF; u8 curBoxNo; s16 curSlotNo; -static u8 commentTbl[2][32] = { - "Mario Party 4", - "File 0 00/00/0000" -}; +#if VERSION_JAP +static u8 commentTbl[2][32] = { "マリオパーティ4", "??月??日 データ?です。" }; +static char *lbl_80131D70 = { "0123456789" }; +#else +static u8 commentTbl[2][32] = { "Mario Party 4", "File 0 00/00/0000" }; +#endif -char *SaveFileNameTbl[] = { - "MARIPA4BOX0", - "MARIPA4BOX1", - "MARIPA4BOX2" -}; +char *SaveFileNameTbl[] = { "MARIPA4BOX0", "MARIPA4BOX1", "MARIPA4BOX2" }; s32 SaveEnableF = 1; -static char *SlotNameTbl[] = { - "A", - "B" -}; +static char *SlotNameTbl[] = { "A", "B" }; static s32 saveMessWin = -1; -s32 SLFileOpen(char *fileName) { +s32 SLFileOpen(char *fileName) +{ s32 result; if (SaveEnableF == 0) { @@ -64,7 +59,7 @@ s32 SLFileOpen(char *fileName) { } while (1) { result = SLCardMount(curSlotNo); - if(result < 0) { + if (result < 0) { return result; } result = HuCardOpen(curSlotNo, fileName, &curFileInfo); @@ -96,16 +91,19 @@ s32 SLFileOpen(char *fileName) { if (result != 0) { return result; } - } else { + } + else { return CARD_RESULT_NOFILE; } - } else { + } + else { return CARD_RESULT_READY; } } } -s32 SLFileCreate(char *fileName, u32 size, void *addr) { +s32 SLFileCreate(char *fileName, u32 size, void *addr) +{ float winSize[2]; u32 byteNotUsed; u32 filesNotUsed; @@ -184,7 +182,8 @@ s32 SLFileCreate(char *fileName, u32 size, void *addr) { return 0; } -s32 SLFileWrite(s32 length, void *addr) { +s32 SLFileWrite(s32 length, void *addr) +{ float winSize[2]; s32 window; s32 result; @@ -210,7 +209,8 @@ s32 SLFileWrite(s32 length, void *addr) { return result; } -s32 SLFileRead(s32 length, void *addr) { +s32 SLFileRead(s32 length, void *addr) +{ s32 result; if (SaveEnableF == 0) { @@ -219,13 +219,15 @@ s32 SLFileRead(s32 length, void *addr) { result = HuCardRead(&curFileInfo, addr, length, 0); if (result == CARD_RESULT_NOCARD) { SLMessOut(0); - } else if (result < 0) { + } + else if (result < 0) { SLMessOut(1); } return result; } -s32 SLFileClose(void) { +s32 SLFileClose(void) +{ s32 result; if (SaveEnableF == 0) { @@ -235,15 +237,18 @@ s32 SLFileClose(void) { return result; } -void SLCurSlotNoSet(s16 slotno) { +void SLCurSlotNoSet(s16 slotno) +{ curSlotNo = slotno; } -void SLCurBoxNoSet(s16 boxno) { +void SLCurBoxNoSet(s16 boxno) +{ curBoxNo = boxno; } -void SLSaveFlagSet(s32 flag) { +void SLSaveFlagSet(s32 flag) +{ if (flag == 0) { GWGameStat.party_continue = 0; GWGameStat.story_continue = 0; @@ -251,11 +256,13 @@ void SLSaveFlagSet(s32 flag) { SaveEnableF = flag; } -s32 SLSaveFlagGet(void) { +s32 SLSaveFlagGet(void) +{ return SaveEnableF; } -void SLSaveDataMake(s32 erase, OSTime *time) { +void SLSaveDataMake(s32 erase, OSTime *time) +{ AnimData *anim_data; u8 *buf; s32 i; @@ -270,24 +277,25 @@ void SLSaveDataMake(s32 erase, OSTime *time) { buf[i] = (&commentTbl[0][0])[i]; } for (i = 0; i < 0x20; i++) { - (&buf[0x20])[i] = (&commentTbl[0][0])[i+32]; + (&buf[0x20])[i] = (&commentTbl[0][0])[i + 32]; } anim_data = HuSprAnimReadFile(WIN_CARD_BANNER_ANM); - memcpy(buf + offsetof(SaveBufData, banner), anim_data->bmp->data, CARD_BANNER_WIDTH*CARD_BANNER_HEIGHT); + memcpy(buf + offsetof(SaveBufData, banner), anim_data->bmp->data, CARD_BANNER_WIDTH * CARD_BANNER_HEIGHT); memcpy(buf + offsetof(SaveBufData, bannerTlut), anim_data->bmp->palData, 512); anim_data = HuSprAnimReadFile(curBoxNo + WIN_CARD_BOX1_ICON_ANM); - memcpy(buf + offsetof(SaveBufData, icon), anim_data->bmp->data, CARD_ICON_WIDTH*CARD_ICON_HEIGHT*4); + memcpy(buf + offsetof(SaveBufData, icon), anim_data->bmp->data, CARD_ICON_WIDTH * CARD_ICON_HEIGHT * 4); memcpy(buf + offsetof(SaveBufData, iconTlut), anim_data->bmp->palData, 512); SLSaveDataInfoSet(time); } -void SLSaveDataInfoSet(OSTime *time) { +void SLSaveDataInfoSet(OSTime *time) +{ s16 year; s16 digit; OSCalendarTime sp8; - - #if VERSION_ENG + OSTicksToCalendarTime(*time, &sp8); +#if VERSION_ENG saveBuf.data.comment[37] = curBoxNo + '1'; digit = (sp8.mon + 1) / 10; saveBuf.data.comment[40] = digit + '0'; @@ -308,8 +316,7 @@ void SLSaveDataInfoSet(OSTime *time) { saveBuf.data.comment[48] = digit + '0'; year -= digit * 10; saveBuf.data.comment[49] = year + '0'; - #elif VERSION_PAL - OSTicksToCalendarTime(*time, &sp8); +#elif VERSION_PAL saveBuf.data.comment[37] = curBoxNo + '1'; digit = sp8.mday / 10; saveBuf.data.comment[40] = digit + '0'; @@ -330,17 +337,15 @@ void SLSaveDataInfoSet(OSTime *time) { saveBuf.data.comment[48] = digit + '0'; year -= digit * 10; saveBuf.data.comment[49] = year + '0'; - #else - //TODO: Japanese Version - OSTicksToCalendarTime(*time, &sp8); +#else saveBuf.data.comment[37] = curBoxNo + '1'; - digit = sp8.mday / 10; - saveBuf.data.comment[40] = digit + '0'; - digit = sp8.mday % 10; - saveBuf.data.comment[41] = digit + '0'; digit = (sp8.mon + 1) / 10; - saveBuf.data.comment[43] = digit + '0'; + saveBuf.data.comment[40] = digit + '0'; digit = (sp8.mon + 1) % 10; + saveBuf.data.comment[41] = digit + '0'; + digit = sp8.mday / 10; + saveBuf.data.comment[43] = digit + '0'; + digit = sp8.mday % 10; saveBuf.data.comment[44] = digit + '0'; year = sp8.year; digit = year / 1000; @@ -353,10 +358,36 @@ void SLSaveDataInfoSet(OSTime *time) { saveBuf.data.comment[48] = digit + '0'; year -= digit * 10; saveBuf.data.comment[49] = year + '0'; - #endif + + saveBuf.data.comment[52] = lbl_80131D70[curBoxNo + 1]; + saveBuf.data.comment[53] = lbl_80131D70[curBoxNo + 1]; + digit = (sp8.mon + 1) / 10; + // if (digit == 0) { + // saveBuf.data.comment[32] = lbl_801D32F8.unk_00; + // saveBuf.data.comment[33] = lbl_801D32F8.unk_01; + // } else { + // saveBuf.data.comment[32] = *(&@lbl_80131D70 + (var_r31 * 2)); + // saveBuf.data.comment[33] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; + // } + digit = (sp8.mon + 1) % 10; + // saveBuf.data.comment[34] = *(&@lbl_80131D70 + (var_r31 * 2)); + // saveBuf.data.comment[35] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; + digit = sp8.mday / 10; + // if (digit == 0) { + // saveBuf.data.comment[38] = lbl_801D32F8.unk_00; + // saveBuf.data.comment[39] = lbl_801D32F8.unk_01; + // } else { + // saveBuf.data.comment[38] = *(&@lbl_80131D70 + (var_r31 * 2)); + // saveBuf.data.comment[39] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; + // } + digit = sp8.mday % 10; + // saveBuf.data.comment[40] = *(&@lbl_80131D70 + (var_r31 * 2)); + // saveBuf.data.comment[41] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; +#endif } -void SLCommonSet(void) { +void SLCommonSet(void) +{ OSTime create_time; create_time = OSGetTime(); @@ -365,7 +396,8 @@ void SLCommonSet(void) { SLSaveDataInfoSet(&create_time); } -void SLSaveBoard(void) { +void SLSaveBoard(void) +{ s16 i; memcpy(&saveBuf.data.system, &GWSystem, sizeof(SystemState)); @@ -374,7 +406,8 @@ void SLSaveBoard(void) { } } -void SLSaveBoardStory(void) { +void SLSaveBoardStory(void) +{ s16 i; memcpy(&saveBuf.data.systemStory, &GWSystem, sizeof(SystemState)); @@ -383,7 +416,8 @@ void SLSaveBoardStory(void) { } } -s32 SLSave(void) { +s32 SLSave(void) +{ s32 result; while (1) { @@ -392,7 +426,8 @@ s32 SLSave(void) { if (result == CARD_RESULT_NOFILE) { if (!SLSerialNoCheck()) { SLMessOut(9); - } else { + } + else { SLCreateSaveWin(); result = SLFileCreate(SaveFileNameTbl[curBoxNo], 16384, &saveBuf); SLKillSaveWin(); @@ -401,7 +436,8 @@ s32 SLSave(void) { goto block_32; } } - } else { + } + else { if (result == CARD_RESULT_NOCARD) { result = SLMessOut(10); if (result != 0) { @@ -414,15 +450,18 @@ s32 SLSave(void) { if (result >= 0) { if (!SLSerialNoCheck()) { SLMessOut(9); - } else { + } + else { SLCreateSaveWin(); result = SLFileWrite(16384, &saveBuf); SLKillSaveWin(); if (result == CARD_RESULT_NOCARD) { SLMessOut(0); - } else if (result == CARD_RESULT_WRONGDEVICE) { + } + else if (result == CARD_RESULT_WRONGDEVICE) { SLMessOut(7); - } else if (result == CARD_RESULT_BROKEN) { + } + else if (result == CARD_RESULT_BROKEN) { result = HuCardSectorSizeGet(curSlotNo); if (result > 0 && result != 8192) { SLMessOut(8); @@ -436,13 +475,15 @@ s32 SLSave(void) { return result; } continue; - } else { + } + else { result = CARD_RESULT_BROKEN; } - } else if (result < 0) { + } + else if (result < 0) { SLMessOut(1); } -block_32: + block_32: SLFileClose(); if (result >= 0) { HuCardUnMount(curSlotNo); @@ -451,11 +492,12 @@ block_32: } } } -block_36: + block_36: result = SLMessOut(10); if (result != 0) { SLMessOut(11); - } else { + } + else { SLSaveFlagSet(0); break; } @@ -470,7 +512,8 @@ block_36: #define SAVEWIN_POS 120 #endif -static s16 SLCreateSaveWin(void) { +static s16 SLCreateSaveWin(void) +{ float size[2]; s16 window; @@ -486,7 +529,8 @@ static s16 SLCreateSaveWin(void) { return window; } -static void SLKillSaveWin(void) { +static void SLKillSaveWin(void) +{ if (saveMessWin != -1) { HuWinExAnimOut(saveMessWin); HuWinExCleanup(saveMessWin); @@ -494,7 +538,8 @@ static void SLKillSaveWin(void) { } } -s32 SLLoad(void) { +s32 SLLoad(void) +{ s32 result; u16 *save_checksum; u16 checksum; @@ -513,11 +558,13 @@ s32 SLLoad(void) { return 0; } -void SLLoadGameStat(void) { +void SLLoadGameStat(void) +{ memcpy(&GWGameStat, &saveBuf.data.stat, sizeof(GameStat)); } -void SLLoadBoard(void) { +void SLLoadBoard(void) +{ s16 i; memcpy(&GWSystem, &saveBuf.data.system, sizeof(SystemState)); @@ -531,7 +578,8 @@ void SLLoadBoard(void) { } } -void SLLoadBoardStory(void) { +void SLLoadBoardStory(void) +{ s16 i; memcpy(&GWSystem, &saveBuf.data.systemStory, 0xDC); @@ -545,11 +593,13 @@ void SLLoadBoardStory(void) { } } -s32 SLSerialNoGet(void) { +s32 SLSerialNoGet(void) +{ return CARDGetSerialNo(curSlotNo, &SLSerialNo); } -BOOL SLSerialNoCheck(void) { +BOOL SLSerialNoCheck(void) +{ s32 result; u64 serialNo; @@ -566,7 +616,8 @@ BOOL SLSerialNoCheck(void) { return TRUE; } -BOOL SLCheckSumCheck(void) { +BOOL SLCheckSumCheck(void) +{ u16 *save_checksum = (u16 *)&saveBuf.buf[sizeof(SaveBufData)]; u16 checksum = SLCheckSumGet(); @@ -576,7 +627,8 @@ BOOL SLCheckSumCheck(void) { return FALSE; } -u16 SLCheckSumGet(void) { +u16 SLCheckSumGet(void) +{ u32 i; u32 checksum; @@ -584,17 +636,19 @@ u16 SLCheckSumGet(void) { checksum += saveBuf.buf[i]; } checksum = ~checksum; - return (u16) checksum & 0xFFFF; + return (u16)checksum & 0xFFFF; } -void SLCheckSumSet(void) { +void SLCheckSumSet(void) +{ u16 checksum = SLCheckSumGet(); saveBuf.buf[sizeof(SaveBufData)] = (checksum >> 8) & 0xFF; - saveBuf.buf[sizeof(SaveBufData)+1] = checksum; + saveBuf.buf[sizeof(SaveBufData) + 1] = checksum; } -s32 SLStatSet(s32 reportF) { +s32 SLStatSet(s32 reportF) +{ CARDStat stat; s32 fileNo; s32 result; @@ -643,7 +697,8 @@ s32 SLStatSet(s32 reportF) { return result; } -s32 SLCardMount(s16 slotNo) { +s32 SLCardMount(s16 slotNo) +{ s32 result; while (1) { @@ -673,10 +728,12 @@ s32 SLCardMount(s16 slotNo) { if (result != 0) { return result; } - } else { + } + else { return CARD_RESULT_FATAL_ERROR; } - } else { + } + else { break; } } @@ -692,7 +749,8 @@ s32 SLCardMount(s16 slotNo) { return 0; } -s32 SLFormat(s16 slotNo) { +s32 SLFormat(s16 slotNo) +{ float winSize[2]; s16 result; s16 window1; @@ -754,7 +812,8 @@ s32 SLFormat(s16 slotNo) { return result; } -s16 SLMessOut(s16 mess) { +s16 SLMessOut(s16 mess) +{ WindowData *var_r26; float size[2]; u32 slot_mess; @@ -782,19 +841,23 @@ s16 SLMessOut(s16 mess) { case 2: HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0); slot_mess = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]); - #if VERSION_NTSC +#if VERSION_ENG save_mess = MAKE_MESSID(16, 74); - #else +#elif VERSION_PAL save_mess = MAKE_MESSID(16, 72); - #endif +#else + save_mess = MAKE_MESSID(16, 5); +#endif break; case 3: - #if VERSION_NTSC +#if VERSION_ENG save_mess = MAKE_MESSID(16, 74); - #else +#elif VERSION_PAL save_mess = MAKE_MESSID(16, 72); - #endif +#else + save_mess = MAKE_MESSID(16, 6); +#endif HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0); slot_mess = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]); break; @@ -841,11 +904,11 @@ s16 SLMessOut(s16 mess) { case 11: HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0); slot_mess = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]); - #if VERSION_NTSC +#if VERSION_ENG save_mess = MAKE_MESSID(16, 72); - #else +#else save_mess = MAKE_MESSID(16, 76); - #endif +#endif break; case 12: @@ -854,7 +917,8 @@ s16 SLMessOut(s16 mess) { } if (save_mess == MAKE_MESSID(16, 4)) { HuWinMesMaxSizeGet(1, size, MAKE_MESSID(16, 78)); - } else { + } + else { HuWinMesMaxSizeGet(1, size, save_mess); } window = HuWinExCreateStyled(-10000.0f, 200.0f, size[0], size[1], -1, 2); From a34f38d2bdab9b3582380de44f1f845149e6edf8 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Tue, 26 Nov 2024 10:22:31 -0500 Subject: [PATCH 048/178] start work on m438 --- .vscode/settings.json | 3 +- config/GMPE01_00/rels/m438Dll/symbols.txt | 2 +- src/REL/m438Dll/main.c | 425 +++++++++++++++++----- 3 files changed, 328 insertions(+), 102 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 0e3a6ba5..7c43f1a7 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -21,7 +21,8 @@ ".clangd": "yaml", "m443dll.h": "c", "object.h": "c", - "executor.h": "c" + "executor.h": "c", + "m438dll.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/config/GMPE01_00/rels/m438Dll/symbols.txt b/config/GMPE01_00/rels/m438Dll/symbols.txt index dfbd3109..42b61291 100644 --- a/config/GMPE01_00/rels/m438Dll/symbols.txt +++ b/config/GMPE01_00/rels/m438Dll/symbols.txt @@ -383,7 +383,7 @@ 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:0x23 data:string lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte -lbl_1_data_68 = .data:0x00000068; // type:object size:0x420 +lbl_1_data_68 = .data:0x00000068; // type:object size:0x420 data:float lbl_1_data_488 = .data:0x00000488; // type:object size:0x2C lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x30 jumptable_1_data_4E4 = .data:0x000004E4; // type:object size:0x2C scope:local diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index 26583249..64c73098 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -230,106 +230,6 @@ Vec lbl_1_data_1C = { 500.0f, 3000.0f, 500.0f }; Vec lbl_1_data_28 = { 0.0f, 1.0f, 0.0f }; Vec lbl_1_data_34 = { 0.0f, 0.0f, 0.0f }; -s32 lbl_1_data_64 = -1; -Vec lbl_1_data_68[10][8]; // TODO not right -s32 lbl_1_data_488[0xB] = { 0, 2, 3, 8, 0xA, 9, 0x13, 0xD, 0x10, 0x17, 0x18 }; - -Vec lbl_1_data_4B4[4] = { - { -400.0f, 1600.0f, -400.0f }, - { 400.0f, 1600.0f, -400.0f }, - { -400.0f, 1600.0f, 400.0f }, - { 400.0f, 1600.0f, 400.0f }, -}; - -Vec lbl_1_data_514 = { -850.0f, 0.0f, -850.0f }; - -s32 lbl_1_data_520[0x19] = { - 0xFFFFFF9E, - 0xFFFFFF9F, - 0xFFFFFFA0, - 0xFFFFFFA1, - 0xFFFFFFA2, - 0xFFFFFFCE, - 0xFFFFFFCF, - 0xFFFFFFD0, - 0xFFFFFFD1, - 0xFFFFFFD2, - 0xFFFFFFFE, - 0xFFFFFFFF, - 0, - 1, - 2, - 0x2E, - 0x2F, - 0x30, - 0x31, - 0x32, - 0x5E, - 0x5F, - 0x60, - 0x61, - 0x62, -}; - -u32 lbl_1_data_584[0x19] = { - 0x50, - 0x64, - 0x78, - 0x64, - 0x50, - 0x64, - 0x8C, - 0xA0, - 0x8C, - 0x64, - 0x78, - 0xA0, - 0xB4, - 0xA0, - 0x78, - 0x64, - 0x8C, - 0xA0, - 0x8C, - 0x64, - 0x50, - 0x64, - 0x78, - 0x64, - 0x50, -}; - -s32 lbl_1_data_5E8[9] = { 0, 0xFFFFFFCF, 0xFFFFFFD0, 0xFFFFFFD1, 0xFFFFFFFF, 1, 0x2F, 0x30, 0x31 }; - -Vec lbl_1_data_60C[9] = { - { 0.0f, 0.0f, 0.0f }, - { -35.416668f, 0.0f, -35.416668f }, - { 0.0f, 0.0f, -35.416668f }, - { 35.416668f, 0.0f, -35.416668f }, - { -35.416668f, 0.0f, 0.0f }, - { 35.416668f, 0.0f, 0.0f }, - { -35.416668f, 0.0f, 35.416668f }, - { 0.0f, 0.0f, 35.416668f }, - { 35.416668f, 0.0f, 35.416668f }, -}; - -s32 lbl_1_data_678[9] = { 0, 0xFFFFFF9E, 0xFFFFFF70, 0xFFFFFFA2, 0xFFFFFFFD, 3, 0x5E, 0x90, 0x62 }; - -Vec lbl_1_data_69C[9] = { - { 0.0f, 0.0f, 0.0f }, - { -70.833336f, 0.0f, -70.833336f }, - { 0.0f, 0.0f, -106.25f }, - { 70.833336f, 0.0f, -70.833336f }, - { -106.25f, 0.0f, 0.0f }, - { 106.25f, 0.0f, 0.0f }, - { -70.833336f, 0.0f, 70.833336f }, - { 0.0f, 0.0f, 106.25f }, - { 70.833336f, 0.0f, 70.833336f }, -}; - -s32 lbl_1_data_708[9] = { 0, 0xFFFFFFED, 0xFFFFFFEE, 0xFFFFFFEF, 0xFFFFFFFF, 1, 0x11, 0x12, 0x13 }; -s32 lbl_1_data_72C[9] = { 0, 0xFFFFFFDA, 0xFFFFFFCA, 0xFFFFFFDE, 0xFFFFFFFD, 3, 0x22, 0x36, 0x26 }; - M438StructBssDE4 lbl_1_bss_DE4; omObjData *lbl_1_bss_DE0; omObjData *lbl_1_bss_DDC; @@ -482,6 +382,7 @@ void fn_1_4FC(omObjData *object) } } +s32 lbl_1_data_64 = -1; void fn_1_974(omObjData *object) { s32 var_r31; @@ -648,6 +549,254 @@ void fn_1_1174(omObjData *object) } } +Vec lbl_1_data_68[11][8] = { + { + { -528.6f, 0.0f, 350.7f }, + { -375.7f, 0.0f, 243.0f }, + { -214.2f, 0.0f, 331.4f }, + { -173.3f, 0.0f, 523.7f }, + { 15.000001f, 0.0f, 505.7f }, + { 148.59999f, 0.0f, 393.0f }, + { 0.0f, 1.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f }, + }, + { + { -198.7f, 0.0f, -122.899994f }, + { -11.599999f, 0.0f, -177.1f } + } +// 63.4, 0, -349.7 +// 277.09998 +// 0 +// -296.4 +// 397.5 +// 0 +// -470.2 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// -421 +// 0 +// -471.3 +// -270.1 +// 0 +// -460 +// -153.1 +// 0 +// -356.5 +// 12.4 +// 0 +// -473.99997 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// -545.10004 +// 0 +// -318.9 +// -469 +// 0 +// -154.1 +// -313.4 +// 0 +// -170.09999 +// -250 +// 0 +// -32.8 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// -155.6 +// 0 +// 19.5 +// -34.3 +// 0 +// 96.6 +// -63.9 +// 0 +// 240.00002 +// 37.5 +// 0 +// 402.8 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 207.5 +// 0 +// -163.2 +// 270.1 +// 0 +// -104.799995 +// 402.19998 +// 0 +// -102.4 +// 511.49997 +// 0 +// -25.099998 +// 627.3 +// 0 +// -142 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// -601 +// 0 +// 97.799995 +// -516.80005 +// 0 +// 60.000004 +// -417.7 +// 0 +// 92.9 +// -309.40002 +// 0 +// 76.1 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 82.8 +// 0 +// 164.2 +// 179.40001 +// 0 +// 179.8 +// 241.00002 +// 0 +// 87.1 +// 323 +// 0 +// 38.800003 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 243.4 +// 0 +// 573.5 +// 227.7 +// 0 +// 461.2 +// 319.30002 +// 0 +// 400.6 +// 342.30002 +// 0 +// 310 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 357.69998 +// 0 +// 146.8 +// 418.80002 +// 0 +// 225 +// 503.2 +// 0 +// 234.69998 +// 548.1 +// 0 +// 321.19998 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// -100 +// 0 +// 0 +// 0 +// 0 +// -100 +// 100 +// 0 +// 0 +// 0 +// 1 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +// 0 +}; void fn_1_1204(omObjData *object) { M438StructBss298 *var_r31; @@ -1078,6 +1227,13 @@ void fn_1_28E4(u8 arg0, u16 arg1, float arg9, float argA, float arg4) var_r31->unk_164[arg0] = 90.0f; } +s32 lbl_1_data_488[11] = { 0, 2, 3, 8, 0xA, 9, 0x13, 0xD, 0x10, 0x17, 0x18 }; +Vec lbl_1_data_4B4[4] = { + { -400.0f, 1600.0f, -400.0f }, + { 400.0f, 1600.0f, -400.0f }, + { -400.0f, 1600.0f, 400.0f }, + { 400.0f, 1600.0f, 400.0f }, +}; void fn_1_2964(omObjData *object) { M438MainWork *var_r31; @@ -3349,6 +3505,43 @@ void fn_1_A60C(omObjData *object) void fn_1_A688(omObjData *object) { } +Vec lbl_1_data_514 = { -850.0f, 0.0f, -850.0f }; +s32 lbl_1_data_520[25] = { + -98, -97, -96, -95, -94, + -50, -49, -48, -47, -46, + -2, -1, 0, 1, 2, + 0x2E, 0x2F, 0x30, 0x31, 0x32, + 0x5E, 0x5F, 0x60, 0x61, 0x62, +}; + +u32 lbl_1_data_584[25] = { + 0x50, + 0x64, + 0x78, + 0x64, + 0x50, + 0x64, + 0x8C, + 0xA0, + 0x8C, + 0x64, + 0x78, + 0xA0, + 0xB4, + 0xA0, + 0x78, + 0x64, + 0x8C, + 0xA0, + 0x8C, + 0x64, + 0x50, + 0x64, + 0x78, + 0x64, + 0x50, +}; + // void fn_1_A68C(ModelData *model, Mtx matrix) // { // Vec sp14; @@ -3502,6 +3695,38 @@ void fn_1_A688(omObjData *object) { } // return var_r30; // } +s32 lbl_1_data_5E8[9] = { 0, -49, -48, -47, -1, 1, 0x2F, 0x30, 0x31 }; + +Vec lbl_1_data_60C[9] = { + { 0.0f, 0.0f, 0.0f }, + { -35.416668f, 0.0f, -35.416668f }, + { 0.0f, 0.0f, -35.416668f }, + { 35.416668f, 0.0f, -35.416668f }, + { -35.416668f, 0.0f, 0.0f }, + { 35.416668f, 0.0f, 0.0f }, + { -35.416668f, 0.0f, 35.416668f }, + { 0.0f, 0.0f, 35.416668f }, + { 35.416668f, 0.0f, 35.416668f }, +}; + +s32 lbl_1_data_678[9] = { 0, -98, -144, -94, -3, 3, 0x5E, 0x90, 0x62 }; + +Vec lbl_1_data_69C[9] = { + { 0.0f, 0.0f, 0.0f }, + { -70.833336f, 0.0f, -70.833336f }, + { 0.0f, 0.0f, -106.25f }, + { 70.833336f, 0.0f, -70.833336f }, + { -106.25f, 0.0f, 0.0f }, + { 106.25f, 0.0f, 0.0f }, + { -70.833336f, 0.0f, 70.833336f }, + { 0.0f, 0.0f, 106.25f }, + { 70.833336f, 0.0f, 70.833336f }, +}; + +s32 lbl_1_data_708[9] = { 0, -19, -18, -17, -1, 1, 0x11, 0x12, 0x13 }; +s32 lbl_1_data_72C[9] = { 0, -38, -54, -34, -3, 3, 0x22, 0x36, 0x26 }; + + // s32 fn_1_AE18(u32 arg0, Vec *arg1, Vec *arg2) // { // Vec sp4C; From 3b50a4bdb7f61e3a5f22dd7e0485775f9993912e Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 16:48:31 +0100 Subject: [PATCH 049/178] Split Japanese DOL till saveload.c Renamed VERSION_JAP to VERSION_JPN because it might be offensive for some --- config/GMPJ01_00/splits.txt | 2 +- config/GMPJ01_00/symbols.txt | 23 +++++----- configure.py | 2 +- include/ovl_table.h | 2 +- include/version.h | 2 +- src/game/gamework.c | 7 ++- src/game/minigame_seq.c | 36 +++++++-------- src/game/saveload.c | 86 ++++++++++++++++-------------------- src/game/window.c | 24 +++++----- 9 files changed, 87 insertions(+), 97 deletions(-) diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index f9827915..76144e31 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -304,6 +304,6 @@ game/saveload.c: .text start:0x80057D18 end:0x8005A324 .data start:0x80131D30 end:0x80131DE8 .bss start:0x801980C0 end:0x8019C0E0 - .sdata start:0x801D32D8 end:0x801D32F0 + .sdata start:0x801D32D8 end:0x801D3300 .sbss start:0x801D3B68 end:0x801D3B78 .sdata2 start:0x801D4DF8 end:0x801D4E08 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index 2c706c69..dceced17 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -4117,7 +4117,7 @@ lbl_80130EC8 = .data:0x80130EC8; // type:object size:0x4D scope:local lbl_80130F15 = .data:0x80130F15; // type:object size:0x1B scope:local mgInfoTbl = .data:0x80130F30; // type:object size:0xE00 data:2byte commentTbl = .data:0x80131D30; // type:object size:0x40 scope:local data:byte -lbl_80131D70 = .data:0x80131D70; // type:object size:0x14 scope:local data:byte +sjisNumTbl = .data:0x80131D70; // type:object size:0x14 scope:local data:byte lbl_80131D84 = .data:0x80131D84; // type:object size:0xC scope:local data:string lbl_80131D90 = .data:0x80131D90; // type:object size:0xC scope:local data:string lbl_80131D9C = .data:0x80131D9C; // type:object size:0xC scope:local data:string @@ -4728,15 +4728,15 @@ lbl_801D32BB = .sdata:0x801D32BB; // type:object size:0x8 scope:local data:strin lbl_801D32C3 = .sdata:0x801D32C3; // type:object size:0x6 scope:local data:string lbl_801D32C9 = .sdata:0x801D32C9; // type:object size:0x7 scope:local lbl_801D32D0 = .sdata:0x801D32D0; // type:object size:0x8 scope:local -saveEnableF = .sdata:0x801D32D8; // type:object size:0x4 data:4byte +SaveEnableF = .sdata:0x801D32D8; // type:object size:0x4 data:4byte @228 = .sdata:0x801D32DC; // type:object size:0x2 scope:local data:string @229 = .sdata:0x801D32DE; // type:object size:0x2 scope:local data:string SlotNameTbl = .sdata:0x801D32E0; // type:object size:0x8 scope:local -lbl_801D32E8 = .sdata:0x801D32E8; // type:object size:0x3 -lbl_801D32EB = .sdata:0x801D32EB; // type:object size:0x5 -lbl_801D32F0 = .sdata:0x801D32F0; // type:object size:0x8 -lbl_801D32F8 = .sdata:0x801D32F8; // type:object size:0x1 data:byte -lbl_801D32FC = .sdata:0x801D32FC; // type:object size:0x4 data:4byte +lbl_801D32E8 = .sdata:0x801D32E8; // type:object size:0x3 scope:local +lbl_801D32EB = .sdata:0x801D32EB; // type:object size:0x4 scope:local +slotIconMesTbl = .sdata:0x801D32F0; // type:object size:0x8 scope:local +sjisSpace = .sdata:0x801D32F8; // type:object size:0x3 scope:local data:byte +saveMessWin = .sdata:0x801D32FC; // type:object size:0x4 scope:local data:4byte lbl_801D3300 = .sdata:0x801D3300; // type:object size:0x8 data:2byte lbl_801D3308 = .sdata:0x801D3308; // type:object size:0x1 data:byte lbl_801D330C = .sdata:0x801D330C; // type:object size:0xC data:4byte @@ -5211,8 +5211,7 @@ mgTypeCurr = .sbss:0x801D3B60; // type:object size:0x2 curSlotNo = .sbss:0x801D3B68; // type:object size:0x2 data:2byte curBoxNo = .sbss:0x801D3B6A; // type:object size:0x1 data:byte saveExecF = .sbss:0x801D3B6C; // type:object size:0x4 -SLSerialNo = .sbss:0x801D3B70; // type:object size:0x4 data:4byte -lbl_801D3B74 = .sbss:0x801D3B74; // type:object size:0x4 data:4byte +SLSerialNo = .sbss:0x801D3B70; // type:object size:0x8 data:4byte lbl_801D3B78 = .sbss:0x801D3B78; // type:object size:0x4 data:4byte lbl_801D3B7C = .sbss:0x801D3B7C; // type:object size:0x4 data:4byte lbl_801D3B80 = .sbss:0x801D3B80; // type:object size:0x4 data:4byte @@ -6196,9 +6195,9 @@ lbl_801D4DE7 = .sdata2:0x801D4DE7; // type:object size:0x1 scope:local data:byte lbl_801D4DE8 = .sdata2:0x801D4DE8; // type:object size:0x4 scope:local data:float lbl_801D4DEC = .sdata2:0x801D4DEC; // type:object size:0x4 scope:local data:float lbl_801D4DF0 = .sdata2:0x801D4DF0; // type:object size:0x8 scope:local data:float -lbl_801D4DF8 = .sdata2:0x801D4DF8; // type:object size:0x4 scope:local data:float -lbl_801D4DFC = .sdata2:0x801D4DFC; // type:object size:0x4 scope:local data:float -lbl_801D4E00 = .sdata2:0x801D4E00; // type:object size:0x8 scope:local data:float +@293 = .sdata2:0x801D4DF8; // type:object size:0x4 scope:local data:float +@294 = .sdata2:0x801D4DFC; // type:object size:0x4 scope:local data:float +@295 = .sdata2:0x801D4E00; // type:object size:0x4 scope:local data:float lbl_801D4E08 = .sdata2:0x801D4E08; // type:object size:0x4 scope:local data:float lbl_801D4E0C = .sdata2:0x801D4E0C; // type:object size:0x4 scope:local data:float lbl_801D4E10 = .sdata2:0x801D4E10; // type:object size:0x4 scope:local data:float diff --git a/configure.py b/configure.py index eff08432..675c7809 100644 --- a/configure.py +++ b/configure.py @@ -421,7 +421,7 @@ config.libs = [ Object(Matching, "game/thpmain.c"), Object(Matching, "game/objsub.c"), Object(Matching, "game/flag.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/saveload.c"), + Object(Matching, "game/saveload.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/sreset.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/player.c"), diff --git a/include/ovl_table.h b/include/ovl_table.h index 5f61425c..fcf4747c 100644 --- a/include/ovl_table.h +++ b/include/ovl_table.h @@ -71,7 +71,7 @@ OVL_DEFINE(OVL_M461, "dll/m461dll.rel") OVL_DEFINE(OVL_M462, "dll/m462dll.rel") OVL_DEFINE(OVL_M463, "dll/m463dll.rel") OVL_DEFINE(OVL_MENT, "dll/mentdll.rel") -#if VERSION_JAP +#if VERSION_JPN OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel") OVL_DEFINE(OVL_MODELTEST, "dll/modeltestdll.rel") OVL_DEFINE(OVL_MODESEL, "dll/modeseldll.rel") diff --git a/include/version.h b/include/version.h index 8cac62af..379389bb 100644 --- a/include/version.h +++ b/include/version.h @@ -9,7 +9,7 @@ #define VERSION_ENG (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_ENG1) #define VERSION_PAL (VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_PAL2) -#define VERSION_JAP (VERSION == VERSION_NO_JAP) +#define VERSION_JPN (VERSION == VERSION_NO_JAP) #define VERSION_NTSC (!VERSION_PAL) #define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JAP) diff --git a/src/game/gamework.c b/src/game/gamework.c index dd8e2c70..2a074800 100644 --- a/src/game/gamework.c +++ b/src/game/gamework.c @@ -4,7 +4,6 @@ #include "string.h" #include "version.h" - s16 GwLanguage = 1; s16 GwLanguageSave = -1; @@ -55,7 +54,7 @@ void GWInit(void) _InitFlag(); GWErase(); InitPlayerConfig(); -#if VERSION_JAP +#if VERSION_JPN GWGameStat.language = 0; #elif VERSION_ENG GWGameStat.language = 1; @@ -132,7 +131,7 @@ void GWGameStatReset(void) GameStat *game_stat = &GWGameStatDefault; memset(game_stat, 0, sizeof(GameStat)); game_stat->unk_00 = 0; -#if VERSION_JAP +#if VERSION_JPN game_stat->language = 0; #elif VERSION_ENG game_stat->language = 1; @@ -163,7 +162,7 @@ s32 GWMessDelayGet(void) GWSystem.mess_speed = 1; GWSystem.mess_delay = 32; } -#else +#else if (GWSystem.mess_delay > 64) { GWSystem.mess_speed = 1; GWSystem.mess_delay = 48; diff --git a/src/game/minigame_seq.c b/src/game/minigame_seq.c index 886a1adc..ee3d52df 100644 --- a/src/game/minigame_seq.c +++ b/src/game/minigame_seq.c @@ -808,7 +808,7 @@ static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags) s16 x; s16 i; s16 grp_idx; -#if VERSION_JAP +#if VERSION_JPN char *str_ptr; AnimData **char_anim; s16 *char_pos; @@ -832,7 +832,7 @@ static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags) x = 0; len = 0; while (*str_ptr != '\0') { -#if VERSION_JAP +#if VERSION_JPN if (*str_ptr == ' ') { x += 56; } @@ -876,26 +876,26 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags) if (c == 222 || c == 223) { return NULL; } -#if !VERSION_JAP +#if !VERSION_JPN if (c == 32) { return HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 10))); } #endif for (id = 0, list = seqFontAlphaTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 20 : 21)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 20 : 21)); return HuSprAnimRead(SeqReadFile(data_num)); } } for (id = 0, list = seqFontNumTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 10 : 11)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 10 : 11)); return HuSprAnimRead(SeqReadFile(data_num)); } } for (id = 0, list = seqPunctTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 153 : 154)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 153 : 154)); return HuSprAnimRead(SeqReadFile(data_num)); } } @@ -916,10 +916,10 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags) while (*list != 0) { if (*list == c) { if (flags & 0x1) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 155 : 156)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 155 : 156)); } else { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JAP ? 72 : 73)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 72 : 73)); } return HuSprAnimRead(SeqReadFile(data_num)); } @@ -2685,7 +2685,7 @@ static char *winCharNameTbl[] = { "ワリオ", "WARIO", "ドンキー", - VERSION_JAP ? "DK" : " DK ", + VERSION_JPN ? "DK" : " DK ", "デイジー", "DAISY", "ワルイージ", @@ -2695,21 +2695,21 @@ static char *winCharNameTbl[] = { "キノピオ", "TOAD", "ヘイホー", - VERSION_JAP ? "HEHOH" : "SHY GUY", + VERSION_JPN ? "HEHOH" : "SHY GUY", "テレサ", - VERSION_JAP ? "TERETHA" : "BOO", + VERSION_JPN ? "TERETHA" : "BOO", "ノコノコ", - VERSION_JAP ? "NOKONOKO" : "KOOPA", + VERSION_JPN ? "NOKONOKO" : "KOOPA", "ミニクッパ", VERSION_NTSC ? (VERSION_ENG ? "KOOPA KID" : "BABYBOWSER") : "MINI BOWSER", "クリボー", - VERSION_JAP ? "KURIBO" : "GOOMBA", + VERSION_JPN ? "KURIBO" : "GOOMBA", }; static char *winWordTbl[] = { "カチ", "WON!", "ハイボク", "LOSE", "ユウショウ!", "CHAMPION!" }; static s16 winPosOfs[][5][2] = { - { { VERSION_JAP ? 144 : 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, + { { VERSION_JPN ? 144 : 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, { { 0, 35 }, { -144, -35 }, { 144, -35 }, { 0, 0 }, { 0, 0 } }, { { 0, 105 }, { 0, -105 }, { -144, 0 }, { 144, 0 }, { 0, 0 } }, { { 0, 105 }, { -144, -105 }, { 144, -105 }, { -144, 0 }, { 144, 0 } }, @@ -2745,15 +2745,15 @@ s32 MGSeqInitWin(SeqWork *work, va_list params) } } word_grp = SeqMakeWord(work, winWordTbl[word_idx], GET_WIN_KANAF()); - winnerNameW[0] = work->word_len * (VERSION_JAP ? 56 : 50); -#if !VERSION_JAP + winnerNameW[0] = work->word_len * (VERSION_JPN ? 56 : 50); +#if !VERSION_JPN for (i = 0; i < work->word_len; i++) { HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f); HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); } #endif num_winners = 0; -#if !VERSION_JAP +#if !VERSION_JPN work->win_scale = 1.0f; #endif for (j = 0; j < 4; j++) { @@ -2855,7 +2855,7 @@ s32 MGSeqInitWin(SeqWork *work, va_list params) work->type = 0; for (j = 0; j < num_winners + 1; j++) { if (num_winners == 1) { -#if VERSION_JAP +#if VERSION_JPN word_x = 32 + (winnerNameW[1] + winnerNameW[0]); #else word_x = 32.0f + ((float)winnerNameW[0] + (winnerNameW[1] * work->win_scale)); diff --git a/src/game/saveload.c b/src/game/saveload.c index a00db99a..f756d77e 100644 --- a/src/game/saveload.c +++ b/src/game/saveload.c @@ -35,9 +35,9 @@ s32 saveExecF; u8 curBoxNo; s16 curSlotNo; -#if VERSION_JAP +#if VERSION_JPN static u8 commentTbl[2][32] = { "マリオパーティ4", "??月??日 データ?です。" }; -static char *lbl_80131D70 = { "0123456789" }; +static u8 sjisNumTbl[20] = "0123456789"; #else static u8 commentTbl[2][32] = { "Mario Party 4", "File 0 00/00/0000" }; #endif @@ -48,6 +48,11 @@ s32 SaveEnableF = 1; static char *SlotNameTbl[] = { "A", "B" }; +#if VERSION_JPN +static char *slotIconMesTbl[] = { "\x0E\x16", "\x0E\x17" }; +static u8 sjisSpace[] = " "; +#endif + static s32 saveMessWin = -1; s32 SLFileOpen(char *fileName) @@ -338,51 +343,32 @@ void SLSaveDataInfoSet(OSTime *time) year -= digit * 10; saveBuf.data.comment[49] = year + '0'; #else - saveBuf.data.comment[37] = curBoxNo + '1'; + saveBuf.data.comment[52] = sjisNumTbl[(curBoxNo + 1) * 2]; + saveBuf.data.comment[53] = sjisNumTbl[(curBoxNo + 1) * 2 + 1]; digit = (sp8.mon + 1) / 10; - saveBuf.data.comment[40] = digit + '0'; + if (digit == 0) { + saveBuf.data.comment[32] = sjisSpace[0]; + saveBuf.data.comment[33] = sjisSpace[1]; + } + else { + saveBuf.data.comment[32] = sjisNumTbl[digit * 2]; + saveBuf.data.comment[33] = sjisNumTbl[digit * 2 + 1]; + } digit = (sp8.mon + 1) % 10; - saveBuf.data.comment[41] = digit + '0'; + saveBuf.data.comment[34] = sjisNumTbl[digit * 2]; + saveBuf.data.comment[35] = sjisNumTbl[digit * 2 + 1]; digit = sp8.mday / 10; - saveBuf.data.comment[43] = digit + '0'; + if (digit == 0) { + saveBuf.data.comment[38] = sjisSpace[0]; + saveBuf.data.comment[39] = sjisSpace[1]; + } + else { + saveBuf.data.comment[38] = sjisNumTbl[digit * 2]; + saveBuf.data.comment[39] = sjisNumTbl[digit * 2 + 1]; + } digit = sp8.mday % 10; - saveBuf.data.comment[44] = digit + '0'; - year = sp8.year; - digit = year / 1000; - saveBuf.data.comment[46] = digit + '0'; - year -= digit * 1000; - digit = year / 100; - saveBuf.data.comment[47] = digit + '0'; - year -= digit * 100; - digit = year / 10; - saveBuf.data.comment[48] = digit + '0'; - year -= digit * 10; - saveBuf.data.comment[49] = year + '0'; - - saveBuf.data.comment[52] = lbl_80131D70[curBoxNo + 1]; - saveBuf.data.comment[53] = lbl_80131D70[curBoxNo + 1]; - digit = (sp8.mon + 1) / 10; - // if (digit == 0) { - // saveBuf.data.comment[32] = lbl_801D32F8.unk_00; - // saveBuf.data.comment[33] = lbl_801D32F8.unk_01; - // } else { - // saveBuf.data.comment[32] = *(&@lbl_80131D70 + (var_r31 * 2)); - // saveBuf.data.comment[33] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; - // } - digit = (sp8.mon + 1) % 10; - // saveBuf.data.comment[34] = *(&@lbl_80131D70 + (var_r31 * 2)); - // saveBuf.data.comment[35] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; - digit = sp8.mday / 10; - // if (digit == 0) { - // saveBuf.data.comment[38] = lbl_801D32F8.unk_00; - // saveBuf.data.comment[39] = lbl_801D32F8.unk_01; - // } else { - // saveBuf.data.comment[38] = *(&@lbl_80131D70 + (var_r31 * 2)); - // saveBuf.data.comment[39] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; - // } - digit = sp8.mday % 10; - // saveBuf.data.comment[40] = *(&@lbl_80131D70 + (var_r31 * 2)); - // saveBuf.data.comment[41] = ((var_r31 * 2) + &@lbl_80131D70)->unk_01; + saveBuf.data.comment[40] = sjisNumTbl[digit * 2]; + saveBuf.data.comment[41] = sjisNumTbl[digit * 2 + 1]; #endif } @@ -512,18 +498,24 @@ s32 SLSave(void) #define SAVEWIN_POS 120 #endif +#if VERSION_JPN +#define SAVEWIN_MESS slotIconMesTbl +#else +#define SAVEWIN_MESS SlotNameTbl +#endif + static s16 SLCreateSaveWin(void) { float size[2]; s16 window; HuWinInit(1); - HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0); + HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SAVEWIN_MESS[curSlotNo]), 0); HuWinMesMaxSizeGet(1, size, MAKE_MESSID(16, 68)); window = HuWinExCreateStyled(-10000.0f, SAVEWIN_POS, size[0], size[1], -1, 2); saveMessWin = window; HuWinExAnimIn(window); - HuWinInsertMesSet(window, MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0); + HuWinInsertMesSet(window, MAKE_MESSID_PTR(SAVEWIN_MESS[curSlotNo]), 0); HuWinMesSet(window, MAKE_MESSID(16, 68)); HuWinMesWait(window); return window; @@ -758,11 +750,11 @@ s32 SLFormat(s16 slotNo) OSTime time; HuWinInit(1); - HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0); + HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SAVEWIN_MESS[curSlotNo]), 0); HuWinMesMaxSizeGet(1, winSize, MAKE_MESSID(16, 56)); window1 = HuWinExCreateStyled(-10000.0f, SAVEWIN_POS, winSize[0], winSize[1], -1, 2); HuWinExAnimIn(window1); - HuWinInsertMesSet(window1, MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0); + HuWinInsertMesSet(window1, MAKE_MESSID_PTR(SAVEWIN_MESS[curSlotNo]), 0); HuWinMesSet(window1, MAKE_MESSID(16, 56)); HuWinMesMaxSizeGet(1, winSize, MAKE_MESSID(16, 11)); window2 = HuWinExCreateStyled(-10000.0f, 200.0f, winSize[0], winSize[1], -1, 2); diff --git a/src/game/window.c b/src/game/window.c index 5b26d4fd..c4806b31 100644 --- a/src/game/window.c +++ b/src/game/window.c @@ -91,7 +91,7 @@ u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0 17, 13, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }; -#elif VERSION_JAP +#elif VERSION_JPN u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 8, 11, 12, 13, 12, 11, 11, 12, 11, 18, 20, 12, 12, 11, 14, 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, 12, 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, 11, 12, 9, 11, 9, 11, 11, 15, @@ -257,7 +257,7 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) sprite_ptr->work[0] = window_id; HuSprGrpMemberSet(group, 1, sprite); window->num_chars = 0; -#if VERSION_JAP +#if VERSION_JPN window->max_chars = (w / 20) * (h / 24) * 3; #else window->max_chars = (w / 8) * (h / 24) * 4; @@ -290,7 +290,7 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) window->scissor_h = 0x1E0; window->tab_w = 24; window->push_key = 0x300; -#if !VERSION_JAP +#if !VERSION_JPN window->key_auto = 0; #endif if (frame == 0 || frame == 2) { @@ -425,12 +425,12 @@ static void MesDispFunc(HuSprite *sprite) MTXConcat(*sprite->group_mtx, modelview, modelview); GXLoadPosMtxImm(modelview, 0); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); - HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, VERSION_JAP ? GX_NEAR : GX_LINEAR); + HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, VERSION_JPN ? GX_NEAR : GX_LINEAR); GXBegin(GX_QUADS, GX_VTXFMT0, window->num_chars * 4); char_uv_h = (LanguageNo == 0) ? (24.0f / 408.0f) : (24.0f / 312.0f); for (i = 0; i < window->num_chars; i++) { char_w = fontWidthP[window->char_data[i].character + 48]; -#if VERSION_JAP +#if VERSION_JPN uv_minx = 0.003125 + (20.0f / 320.0f) * (window->char_data[i].character % 16); #else uv_minx = (20.0f / 320.0f) * (window->char_data[i].character % 16); @@ -605,9 +605,9 @@ static void HuWinDrawMes(s16 window) s16 color; s16 mess_w; - window_ptr->mess_time += VERSION_JAP ? 1 : 3; + window_ptr->mess_time += VERSION_JPN ? 1 : 3; while (window_ptr->mess_time >= window_ptr->speed || (window_ptr->attr & 0x2000)) { -#if VERSION_JAP +#if VERSION_JPN window_ptr->mess_time = 0; #else window_ptr->mess_time -= window_ptr->speed; @@ -634,7 +634,7 @@ static void HuWinDrawMes(s16 window) } window_ptr->mess_stackptr--; window_ptr->mess = window_ptr->mess_stack[window_ptr->mess_stackptr]; -#if !VERSION_JAP +#if !VERSION_JPN window_ptr->mess_time = 0; #endif break; @@ -1108,14 +1108,14 @@ static void HuWinChoice(WindowData *window) window->choice = choice_next; HuAudFXPlay(0); } - else if (key & (VERSION_JAP ? PAD_BUTTON_A : (window->key_auto | PAD_BUTTON_A))) { + else if (key & (VERSION_JPN ? PAD_BUTTON_A : (window->key_auto | PAD_BUTTON_A))) { HuAudFXPlay(2); window->key_down = key; window->stat = 0; } else if ((key & PAD_BUTTON_B) && !(window->attr & 0x10)) { HuAudFXPlay(3); -#if !VERSION_JAP +#if !VERSION_JPN window->key_down = key; #else (void)key; // hack to match Japanese version @@ -1324,7 +1324,7 @@ void HuWinMesSet(s16 window, u32 mess) window_ptr->mess = MessData_MesPtrGet(messDataPtr, mess); if (window_ptr->mess == 0) { OSReport("Error: No Message data\n"); -#if !VERSION_JAP +#if !VERSION_JPN HuWinMesSet(window, 0); return; #endif @@ -1335,7 +1335,7 @@ void HuWinMesSet(s16 window, u32 mess) } if (!(window_ptr->attr & 0x80)) { window_ptr->mess_color = 7; -#if !VERSION_JAP +#if !VERSION_JPN window_ptr->mess_time = 0; #endif } From 17020537fc3f52f0c78cee96ca4a1c6f27d6d608 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 19:12:16 +0100 Subject: [PATCH 050/178] Split Japanese DOL till board/player.c --- config/GMPJ01_00/config.yml | 18 ++ config/GMPJ01_00/splits.txt | 25 +++ config/GMPJ01_00/symbols.txt | 341 ++++++++++++++++++----------------- configure.py | 4 +- src/game/board/main.c | 6 +- src/game/board/player.c | 17 +- src/game/sreset.c | 29 ++- 7 files changed, 263 insertions(+), 177 deletions(-) diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index 92defe35..b7b70d66 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -548,3 +548,21 @@ extract: - symbol: Ascii8x8_1bpp binary: Ascii8x8_1bpp.bin header: Ascii8x8_1bpp.inc +- symbol: coveropen_jp + binary: coveropen_jp.bin + header: coveropen_jp.inc +- symbol: fatalerror_jp + binary: fatalerror_jp.bin + header: fatalerror_jp.inc +- symbol: loading_jp + binary: loading_jp.bin + header: loading_jp.inc +- symbol: nodisc_jp + binary: nodisc_jp.bin + header: nodisc_jp.inc +- symbol: retryerror_jp + binary: retryerror_jp.bin + header: retryerror_jp.inc +- symbol: wrongdisc_jp + binary: wrongdisc_jp.bin + header: wrongdisc_jp.inc diff --git a/config/GMPJ01_00/splits.txt b/config/GMPJ01_00/splits.txt index 76144e31..787212a6 100644 --- a/config/GMPJ01_00/splits.txt +++ b/config/GMPJ01_00/splits.txt @@ -307,3 +307,28 @@ game/saveload.c: .sdata start:0x801D32D8 end:0x801D3300 .sbss start:0x801D3B68 end:0x801D3B78 .sdata2 start:0x801D4DF8 end:0x801D4E08 + +game/sreset.c: + .text start:0x8005A324 end:0x8005AD7C + .data start:0x80131E00 end:0x80139438 + .bss start:0x8019C0E0 end:0x8019D480 + .sdata start:0x801D3300 end:0x801D3318 + .sbss start:0x801D3B78 end:0x801D3B90 + +game/board/main.c: + .text start:0x8005AD7C end:0x80061BB4 + .rodata start:0x8011D940 end:0x8011D970 + .data start:0x80139438 end:0x80139538 + .bss start:0x8019D480 end:0x8019D608 + .sdata start:0x801D3318 end:0x801D3328 + .sbss start:0x801D3B90 end:0x801D3BE0 + .sdata2 start:0x801D4E08 end:0x801D4EB8 + +game/board/player.c: + .text start:0x80061BB4 end:0x8006CEF8 + .rodata start:0x8011D970 end:0x8011DA40 + .data start:0x80139538 end:0x80139740 + .bss start:0x8019D608 end:0x8019D638 + .sdata start:0x801D3328 end:0x801D3388 + .sbss start:0x801D3BE0 end:0x801D3C18 + .sdata2 start:0x801D4EB8 end:0x801D4FC0 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index dceced17..f2e3abc5 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -1672,7 +1672,7 @@ PopupCoin = .text:0x8008E7DC; // type:function size:0x10C scope:local PopupCoinExec = .text:0x8008E8E8; // type:function size:0x130 scope:local BoardItemStart = .text:0x8008EA18; // type:function size:0x74 BoardItemDoneCheck = .text:0x8008EA8C; // type:function size:0x1C -BoardItemPlayerRestore = .text:0x8008EAA8; // type:function size:0x6C scope:local +BoardItemPlayerRestore = .text:0x8008EAA8; // type:function size:0x6C ItemProcess = .text:0x8008EB14; // type:function size:0x64 scope:local RestoreProcess = .text:0x8008EB78; // type:function size:0x64 scope:local ItemDestroy = .text:0x8008EBDC; // type:function size:0xC scope:local @@ -3594,12 +3594,12 @@ lbl_8011D8F0 = .rodata:0x8011D8F0; // type:object size:0x10 scope:local data:4by lbl_8011D900 = .rodata:0x8011D900; // type:object size:0x10 scope:local data:4byte lbl_8011D910 = .rodata:0x8011D910; // type:object size:0x20 scope:local data:byte lbl_8011D930 = .rodata:0x8011D930; // type:object size:0x10 data:4byte -lbl_8011D940 = .rodata:0x8011D940; // type:object size:0x24 data:4byte -lbl_8011D964 = .rodata:0x8011D964; // type:object size:0xC data:4byte -lbl_8011D970 = .rodata:0x8011D970; // type:object size:0x20 data:4byte -lbl_8011D990 = .rodata:0x8011D990; // type:object size:0x7C data:4byte -lbl_8011DA0C = .rodata:0x8011DA0C; // type:object size:0x24 data:4byte -lbl_8011DA30 = .rodata:0x8011DA30; // type:object size:0x10 data:4byte +lbl_8011D940 = .rodata:0x8011D940; // type:object size:0x24 scope:local data:4byte +lbl_8011D964 = .rodata:0x8011D964; // type:object size:0xC scope:local data:4byte +lbl_8011D970 = .rodata:0x8011D970; // type:object size:0x20 scope:local data:4byte +lbl_8011D990 = .rodata:0x8011D990; // type:object size:0x7C scope:local data:4byte +lbl_8011DA0C = .rodata:0x8011DA0C; // type:object size:0x24 scope:local data:4byte +lbl_8011DA30 = .rodata:0x8011DA30; // type:object size:0x10 scope:local data:4byte lbl_8011DA40 = .rodata:0x8011DA40; // type:object size:0x38 data:4byte lbl_8011DA78 = .rodata:0x8011DA78; // type:object size:0x38 data:4byte lbl_8011DAB0 = .rodata:0x8011DAB0; // type:object size:0x20 data:4byte @@ -4123,37 +4123,45 @@ lbl_80131D90 = .data:0x80131D90; // type:object size:0xC scope:local data:string lbl_80131D9C = .data:0x80131D9C; // type:object size:0xC scope:local data:string SaveFileNameTbl = .data:0x80131DA8; // type:object size:0xC jumptable_80131DB4 = .data:0x80131DB4; // type:object size:0x34 scope:local -lbl_80131E00 = .data:0x80131E00; // type:object size:0x20 -lbl_80131E20 = .data:0x80131E20; // type:object size:0x13A0 -lbl_801331C0 = .data:0x801331C0; // type:object size:0x13A0 -lbl_80134560 = .data:0x80134560; // type:object size:0x13A0 -lbl_80135900 = .data:0x80135900; // type:object size:0x13A0 -lbl_80136CA0 = .data:0x80136CA0; // type:object size:0x13A0 -lbl_80138040 = .data:0x80138040; // type:object size:0x1384 +SR_PreRstChk = .data:0x80131E00; // type:object size:0x10 scope:local +padding = .data:0x80131E10; // type:object size:0x10 scope:local +coveropen_jp = .data:0x80131E20; // type:object size:0x13A0 noreloc +fatalerror_jp = .data:0x801331C0; // type:object size:0x13A0 noreloc +loading_jp = .data:0x80134560; // type:object size:0x13A0 noreloc +nodisc_jp = .data:0x80135900; // type:object size:0x13A0 noreloc +retryerror_jp = .data:0x80136CA0; // type:object size:0x13A0 noreloc +wrongdisc_jp = .data:0x80138040; // type:object size:0x1384 noreloc jumptable_801393C4 = .data:0x801393C4; // type:object size:0x34 scope:local -lbl_801393F8 = .data:0x801393F8; // type:object size:0x18 -lbl_80139410 = .data:0x80139410; // type:object size:0x13 data:string -lbl_80139423 = .data:0x80139423; // type:object size:0x15 -lbl_80139438 = .data:0x80139438; // type:object size:0x24 +bmpMes$327 = .data:0x801393F8; // type:object size:0x18 scope:local +@391 = .data:0x80139410; // type:object size:0x13 scope:local data:string +@392 = .data:0x80139423; // type:object size:0x12 scope:local data:string +camViewTbl = .data:0x80139438; // type:object size:0x24 scope:local jumptable_8013945C = .data:0x8013945C; // type:object size:0x24 scope:local -lbl_80139480 = .data:0x80139480; // type:object size:0x48 -lbl_801394C8 = .data:0x801394C8; // type:object size:0xC -lbl_801394D4 = .data:0x801394D4; // type:object size:0x30 -lbl_80139504 = .data:0x80139504; // type:object size:0x10 -lbl_80139514 = .data:0x80139514; // type:object size:0x24 -lbl_80139538 = .data:0x80139538; // type:object size:0x10 -lbl_80139548 = .data:0x80139548; // type:object size:0x10 -lbl_80139558 = .data:0x80139558; // type:object size:0xA data:2byte -lbl_80139562 = .data:0x80139562; // type:object size:0x17 data:string -lbl_80139579 = .data:0x80139579; // type:object size:0x17 data:string -lbl_80139590 = .data:0x80139590; // type:object size:0xE data:string -lbl_8013959E = .data:0x8013959E; // type:object size:0xE data:string -lbl_801395AC = .data:0x801395AC; // type:object size:0x18 data:string -lbl_801395C4 = .data:0x801395C4; // type:object size:0x18 data:string -lbl_801395DC = .data:0x801395DC; // type:object size:0xA0 -lbl_8013967C = .data:0x8013967C; // type:object size:0x20 -lbl_8013969C = .data:0x8013969C; // type:object size:0x74 -lbl_80139710 = .data:0x80139710; // type:object size:0x30 +confettiLightTbl = .data:0x80139480; // type:object size:0x48 scope:local +last5GfxSprTbl = .data:0x801394C8; // type:object size:0xC scope:local +last5GfxPosTbl = .data:0x801394D4; // type:object size:0x30 scope:local +tauntActiveFXTbl = .data:0x80139504; // type:object size:0x10 scope:local +tauntFXTbl = .data:0x80139514; // type:object size:0x20 scope:local +diceJumpObj = .data:0x80139538; // type:object size:0x10 scope:local +motDoneF = .data:0x80139548; // type:object size:0x10 scope:local +bowserSuitMot = .data:0x80139558; // type:object size:0xA scope:local data:2byte +lbl_80139562 = .data:0x80139562; // type:object size:0x17 scope:local data:string +lbl_80139579 = .data:0x80139579; // type:object size:0x17 scope:local data:string +lbl_80139590 = .data:0x80139590; // type:object size:0xE scope:local data:string +lbl_8013959E = .data:0x8013959E; // type:object size:0xE scope:local data:string +lbl_801395AC = .data:0x801395AC; // type:object size:0x18 scope:local data:string +lbl_801395C4 = .data:0x801395C4; // type:object size:0x18 scope:local data:string +eyeMatTbl = .data:0x801395DC; // type:object size:0x40 scope:local +lbl_8013997C = .data:0x8013961C; // type:object size:0x20 +boardMotTbl = .data:0x8013963C; // type:object size:0x20 scope:local +boardMotRevTbl = .data:0x8013965C; // type:object size:0x20 scope:local +bowserSuitCharMdlTbl = .data:0x8013967C; // type:object size:0x20 scope:local +bowserSuitMotTbl = .data:0x8013969C; // type:object size:0x14 scope:local +sparkMotTbl = .data:0x801396B0; // type:object size:0x20 scope:local +boardSparkSfxTbl = .data:0x801396D0; // type:object size:0x20 scope:local +boardSparkSfxTblAlt = .data:0x801396F0; // type:object size:0x20 scope:local +megaSquishObj = .data:0x80139710; // type:object size:0x10 scope:local +megaSquishSfxTbl = .data:0x80139720; // type:object size:0x20 scope:local lbl_80139740 = .data:0x80139740; // type:object size:0x24 lbl_80139764 = .data:0x80139764; // type:object size:0x24 lbl_80139788 = .data:0x80139788; // type:object size:0x18 @@ -4476,12 +4484,16 @@ mgTicTacToeGrid = .bss:0x80198098; // type:object size:0x12 _Sys_Flag = .bss:0x801980B0; // type:object size:0x10 scope:local curFileInfo = .bss:0x801980C0; // type:object size:0x14 saveBuf = .bss:0x801980E0; // type:object size:0x4000 -lbl_8019C0E0 = .bss:0x8019C0E0; // type:object size:0x13A0 -lbl_8019D480 = .bss:0x8019D480; // type:object size:0xC4 data:byte -lbl_8019D544 = .bss:0x8019D544; // type:object size:0xC4 -lbl_8019D608 = .bss:0x8019D608; // type:object size:0x10 -lbl_8019D618 = .bss:0x8019D618; // type:object size:0x10 -lbl_8019D628 = .bss:0x8019D628; // type:object size:0x10 +ToeMessageQueue = .bss:0x8019C0E0; // type:object size:0x20 scope:local +padStat$238 = .bss:0x8019C100; // type:object size:0x30 scope:local +ToeMessageArray = .bss:0x8019C130; // type:object size:0x40 scope:local +ToeThread = .bss:0x8019C170; // type:object size:0x310 scope:local +ToeThreadStack = .bss:0x8019C480; // type:object size:0x1000 scope:local +boardCamera = .bss:0x8019D480; // type:object size:0xC4 data:byte +cameraBackup = .bss:0x8019D544; // type:object size:0xC4 scope:local +preTurnHook = .bss:0x8019D608; // type:object size:0x10 scope:local +postTurnHook = .bss:0x8019D618; // type:object size:0x10 scope:local +playerMatCopy = .bss:0x8019D628; // type:object size:0x10 scope:local lbl_8019D638 = .bss:0x8019D638; // type:object size:0x20 lbl_8019D658 = .bss:0x8019D658; // type:object size:0x40 lbl_8019D698 = .bss:0x8019D698; // type:object size:0xC data:float @@ -4737,32 +4749,29 @@ lbl_801D32EB = .sdata:0x801D32EB; // type:object size:0x4 scope:local slotIconMesTbl = .sdata:0x801D32F0; // type:object size:0x8 scope:local sjisSpace = .sdata:0x801D32F8; // type:object size:0x3 scope:local data:byte saveMessWin = .sdata:0x801D32FC; // type:object size:0x4 scope:local data:4byte -lbl_801D3300 = .sdata:0x801D3300; // type:object size:0x8 data:2byte -lbl_801D3308 = .sdata:0x801D3308; // type:object size:0x1 data:byte -lbl_801D330C = .sdata:0x801D330C; // type:object size:0xC data:4byte -lbl_801D3318 = .sdata:0x801D3318; // type:object size:0x4 data:4byte -lbl_801D331C = .sdata:0x801D331C; // type:object size:0x1 data:byte -lbl_801D331D = .sdata:0x801D331D; // type:object size:0x1 data:byte -lbl_801D331E = .sdata:0x801D331E; // type:object size:0x1 data:byte -lbl_801D331F = .sdata:0x801D331F; // type:object size:0x1 data:byte -lbl_801D3320 = .sdata:0x801D3320; // type:object size:0x8 -lbl_801D3328 = .sdata:0x801D3328; // type:object size:0x2 data:2byte -lbl_801D332A = .sdata:0x801D332A; // type:object size:0x2 data:2byte -lbl_801D332C = .sdata:0x801D332C; // type:object size:0x2 data:2byte -lbl_801D332E = .sdata:0x801D332E; // type:object size:0x5 data:string -lbl_801D3333 = .sdata:0x801D3333; // type:object size:0x5 data:string -lbl_801D3338 = .sdata:0x801D3338; // type:object size:0x6 data:string -lbl_801D333E = .sdata:0x801D333E; // type:object size:0x6 data:string -lbl_801D3344 = .sdata:0x801D3344; // type:object size:0x6 data:string -lbl_801D334A = .sdata:0x801D334A; // type:object size:0x6 data:string -lbl_801D3350 = .sdata:0x801D3350; // type:object size:0x6 data:string -lbl_801D3356 = .sdata:0x801D3356; // type:object size:0x6 data:string -lbl_801D335C = .sdata:0x801D335C; // type:object size:0x6 data:string -lbl_801D3362 = .sdata:0x801D3362; // type:object size:0x6 data:string -lbl_801D3368 = .sdata:0x801D3368; // type:object size:0x6 data:string -lbl_801D336E = .sdata:0x801D336E; // type:object size:0x6 data:string -lbl_801D3374 = .sdata:0x801D3374; // type:object size:0x6 data:string -lbl_801D337A = .sdata:0x801D337A; // type:object size:0xE +SR_PushTime = .sdata:0x801D3300; // type:object size:0x8 scope:local data:2byte +SR_ResetPad = .sdata:0x801D3308; // type:object size:0x1 scope:local data:byte +Xfb = .sdata:0x801D330C; // type:object size:0x8 scope:local data:4byte +nextOvl = .sdata:0x801D3318; // type:object size:0x4 scope:local data:4byte +lbl_801D331C = .sdata:0x801D331C; // type:object size:0x4 scope:local data:byte +lbl_801D3320 = .sdata:0x801D3320; // type:object size:0x6 scope:local data:string +suitMdl = .sdata:0x801D3328; // type:object size:0x2 scope:local data:2byte +suitPlayerMdl = .sdata:0x801D332A; // type:object size:0x2 scope:local data:2byte +suitCurrMot = .sdata:0x801D332C; // type:object size:0x2 scope:local data:2byte +lbl_801D332E = .sdata:0x801D332E; // type:object size:0x5 scope:local data:string +lbl_801D3333 = .sdata:0x801D3333; // type:object size:0x5 scope:local data:string +lbl_801D3338 = .sdata:0x801D3338; // type:object size:0x6 scope:local data:string +lbl_801D333E = .sdata:0x801D333E; // type:object size:0x6 scope:local data:string +lbl_801D3344 = .sdata:0x801D3344; // type:object size:0x6 scope:local data:string +lbl_801D334A = .sdata:0x801D334A; // type:object size:0x6 scope:local data:string +lbl_801D3350 = .sdata:0x801D3350; // type:object size:0x6 scope:local data:string +lbl_801D3356 = .sdata:0x801D3356; // type:object size:0x6 scope:local data:string +lbl_801D335C = .sdata:0x801D335C; // type:object size:0x6 scope:local data:string +lbl_801D3362 = .sdata:0x801D3362; // type:object size:0x6 scope:local data:string +lbl_801D3368 = .sdata:0x801D3368; // type:object size:0x6 scope:local data:string +lbl_801D336E = .sdata:0x801D336E; // type:object size:0x6 scope:local data:string +lbl_801D3374 = .sdata:0x801D3374; // type:object size:0x6 scope:local data:string +lbl_801D337A = .sdata:0x801D337A; // type:object size:0xE scope:local lbl_801D3388 = .sdata:0x801D3388; // type:object size:0x8 data:2byte lbl_801D3390 = .sdata:0x801D3390; // type:object size:0x8 data:4byte lbl_801D3398 = .sdata:0x801D3398; // type:object size:0x8 data:byte @@ -5212,43 +5221,43 @@ curSlotNo = .sbss:0x801D3B68; // type:object size:0x2 data:2byte curBoxNo = .sbss:0x801D3B6A; // type:object size:0x1 data:byte saveExecF = .sbss:0x801D3B6C; // type:object size:0x4 SLSerialNo = .sbss:0x801D3B70; // type:object size:0x8 data:4byte -lbl_801D3B78 = .sbss:0x801D3B78; // type:object size:0x4 data:4byte -lbl_801D3B7C = .sbss:0x801D3B7C; // type:object size:0x4 data:4byte -lbl_801D3B80 = .sbss:0x801D3B80; // type:object size:0x4 data:4byte -lbl_801D3B84 = .sbss:0x801D3B84; // type:object size:0x4 data:4byte -lbl_801D3B88 = .sbss:0x801D3B88; // type:object size:0x4 data:4byte -lbl_801D3B8C = .sbss:0x801D3B8C; // type:object size:0x2 data:2byte -lbl_801D3B8E = .sbss:0x801D3B8E; // type:object size:0x2 data:2byte -lbl_801D3B90 = .sbss:0x801D3B90; // type:object size:0x4 data:4byte -lbl_801D3B94 = .sbss:0x801D3B94; // type:object size:0x4 data:4byte -lbl_801D3B98 = .sbss:0x801D3B98; // type:object size:0x4 data:4byte -lbl_801D3B9C = .sbss:0x801D3B9C; // type:object size:0x4 data:4byte -lbl_801D3BA0 = .sbss:0x801D3BA0; // type:object size:0x4 data:4byte -lbl_801D3BA4 = .sbss:0x801D3BA4; // type:object size:0x4 data:4byte -lbl_801D3BA8 = .sbss:0x801D3BA8; // type:object size:0x4 data:4byte -lbl_801D3BAC = .sbss:0x801D3BAC; // type:object size:0x4 data:4byte -lbl_801D3BB0 = .sbss:0x801D3BB0; // type:object size:0x4 data:4byte -lbl_801D3BB4 = .sbss:0x801D3BB4; // type:object size:0x4 data:4byte -lbl_801D3BB8 = .sbss:0x801D3BB8; // type:object size:0x4 data:4byte -lbl_801D3BBC = .sbss:0x801D3BBC; // type:object size:0x4 data:4byte -lbl_801D3BC0 = .sbss:0x801D3BC0; // type:object size:0x4 data:4byte -lbl_801D3BC4 = .sbss:0x801D3BC4; // type:object size:0x4 data:4byte -lbl_801D3BC8 = .sbss:0x801D3BC8; // type:object size:0x4 data:4byte -lbl_801D3BCC = .sbss:0x801D3BCC; // type:object size:0x4 data:4byte -lbl_801D3BD0 = .sbss:0x801D3BD0; // type:object size:0x4 data:4byte -lbl_801D3BD4 = .sbss:0x801D3BD4; // type:object size:0x4 data:4byte -lbl_801D3BD8 = .sbss:0x801D3BD8; // type:object size:0x8 data:4byte -lbl_801D3BE0 = .sbss:0x801D3BE0; // type:object size:0x4 data:4byte -lbl_801D3BE4 = .sbss:0x801D3BE4; // type:object size:0x4 data:4byte -lbl_801D3BE8 = .sbss:0x801D3BE8; // type:object size:0x4 data:4byte -lbl_801D3BEC = .sbss:0x801D3BEC; // type:object size:0x4 data:4byte -lbl_801D3BF0 = .sbss:0x801D3BF0; // type:object size:0x4 data:4byte -lbl_801D3BF4 = .sbss:0x801D3BF4; // type:object size:0x4 data:4byte -lbl_801D3BF8 = .sbss:0x801D3BF8; // type:object size:0x8 -lbl_801D3C00 = .sbss:0x801D3C00; // type:object size:0x1 data:byte -lbl_801D3C04 = .sbss:0x801D3C04; // type:object size:0x1 data:byte -lbl_801D3C06 = .sbss:0x801D3C06; // type:object size:0x8 -lbl_801D3C0E = .sbss:0x801D3C0E; // type:object size:0xA +H_ResetReady = .sbss:0x801D3B78; // type:object size:0x4 scope:local data:4byte +SR_RestartChk = .sbss:0x801D3B7C; // type:object size:0x4 scope:local data:4byte +SR_ExecReset = .sbss:0x801D3B80; // type:object size:0x4 data:4byte +trychkBusyWait = .sbss:0x801D3B84; // type:object size:0x4 scope:local data:4byte +XfbProg = .sbss:0x801D3B88; // type:object size:0x4 scope:local data:4byte +XfbH = .sbss:0x801D3B8C; // type:object size:0x2 scope:local data:2byte +XfbW = .sbss:0x801D3B8E; // type:object size:0x2 scope:local data:2byte +boardMainProc = .sbss:0x801D3B90; // type:object size:0x4 data:4byte +boardObjMan = .sbss:0x801D3B94; // type:object size:0x4 data:4byte +cameraObj = .sbss:0x801D3B98; // type:object size:0x4 scope:local data:4byte +tauntObj = .sbss:0x801D3B9C; // type:object size:0x4 scope:local data:4byte +cameraUseBackup = .sbss:0x801D3BA0; // type:object size:0x4 scope:local data:4byte +createFunc = .sbss:0x801D3BA4; // type:object size:0x4 scope:local data:4byte +destroyFunc = .sbss:0x801D3BA8; // type:object size:0x4 scope:local data:4byte +boardLightSetHook = .sbss:0x801D3BAC; // type:object size:0x4 data:4byte +boardLightResetHook = .sbss:0x801D3BB0; // type:object size:0x4 data:4byte +boardTurnFunc = .sbss:0x801D3BB4; // type:object size:0x4 data:4byte +boardStarGiveHook = .sbss:0x801D3BB8; // type:object size:0x4 data:4byte +boardStarShowNextHook = .sbss:0x801D3BBC; // type:object size:0x4 data:4byte +boardBowserHook = .sbss:0x801D3BC0; // type:object size:0x4 data:4byte +boardTurnStartFunc = .sbss:0x801D3BC4; // type:object size:0x4 data:4byte +filterObj = .sbss:0x801D3BC8; // type:object size:0x4 scope:local data:4byte +confettiObj = .sbss:0x801D3BCC; // type:object size:0x4 scope:local data:4byte +last5GfxObj = .sbss:0x801D3BD0; // type:object size:0x4 scope:local data:4byte +boardRandSeed = .sbss:0x801D3BD4; // type:object size:0x4 data:4byte +boardMainObj = .sbss:0x801D3BD8; // type:object size:0x4 data:4byte +megaDoubleDiceF = .sbss:0x801D3BE0; // type:object size:0x4 scope:local data:4byte +bowserSuitObj = .sbss:0x801D3BE4; // type:object size:0x4 scope:local data:4byte +junctionMask = .sbss:0x801D3BE8; // type:object size:0x4 scope:local data:4byte +junctionObj = .sbss:0x801D3BEC; // type:object size:0x4 scope:local data:4byte +rollObj = .sbss:0x801D3BF0; // type:object size:0x4 scope:local data:4byte +moveAwayObj = .sbss:0x801D3BF4; // type:object size:0x4 scope:local data:4byte +junctionArrowRot = .sbss:0x801D3BF8; // type:object size:0x8 scope:local +moveAwayPlayer = .sbss:0x801D3C00; // type:object size:0x4 scope:local data:byte +itemPrev = .sbss:0x801D3C04; // type:object size:0x1 scope:local data:byte +playerMot = .sbss:0x801D3C06; // type:object size:0x8 scope:local +boardPlayerMdl = .sbss:0x801D3C0E; // type:object size:0xA lbl_801D3C18 = .sbss:0x801D3C18; // type:object size:0x4 data:4byte lbl_801D3C1C = .sbss:0x801D3C1C; // type:object size:0x4 data:4byte lbl_801D3C20 = .sbss:0x801D3C20; // type:object size:0x8 data:2byte @@ -5491,9 +5500,9 @@ lbl_801D3F60 = .sbss:0x801D3F60; // type:object size:0x1 data:byte lbl_801D3F61 = .sbss:0x801D3F61; // type:object size:0x1 data:byte lbl_801D3F62 = .sbss:0x801D3F62; // type:object size:0x1 data:byte lbl_801D3F64 = .sbss:0x801D3F64; // type:object size:0x4 data:4byte -lbl_801D3F68 = .sbss:0x801D3F68; // type:object size:0x2 data:2byte -lbl_801D3F6A = .sbss:0x801D3F6A; // type:object size:0x1 data:byte -lbl_801D3F6B = .sbss:0x801D3F6B; // type:object size:0x1 data:byte +boardTutorialDirInputTime = .sbss:0x801D3F68; // type:object size:0x2 data:2byte +boardTutorialDirInputY = .sbss:0x801D3F6A; // type:object size:0x1 data:byte +boardTutorialDirInputX = .sbss:0x801D3F6B; // type:object size:0x1 data:byte lbl_801D3F6C = .sbss:0x801D3F6C; // type:object size:0x4 data:4byte BootInfo = .sbss:0x801D3F70; // type:object size:0x4 scope:local data:4byte BI2DebugFlag = .sbss:0x801D3F74; // type:object size:0x4 scope:local data:4byte @@ -6223,64 +6232,64 @@ lbl_801D4E70 = .sdata2:0x801D4E70; // type:object size:0x8 scope:local data:doub lbl_801D4E78 = .sdata2:0x801D4E78; // type:object size:0x4 scope:local data:float lbl_801D4E7C = .sdata2:0x801D4E7C; // type:object size:0x4 scope:local data:float lbl_801D4E80 = .sdata2:0x801D4E80; // type:object size:0x4 scope:local data:float -lbl_801D4E84 = .sdata2:0x801D4E84; // type:object size:0x4 data:float -lbl_801D4E88 = .sdata2:0x801D4E88; // type:object size:0x4 data:float -lbl_801D4E8C = .sdata2:0x801D4E8C; // type:object size:0x4 data:float -lbl_801D4E90 = .sdata2:0x801D4E90; // type:object size:0x4 data:float -lbl_801D4E94 = .sdata2:0x801D4E94; // type:object size:0x4 data:float -lbl_801D4E98 = .sdata2:0x801D4E98; // type:object size:0x4 data:float -lbl_801D4E9C = .sdata2:0x801D4E9C; // type:object size:0x4 data:float -lbl_801D4EA0 = .sdata2:0x801D4EA0; // type:object size:0x4 data:float -lbl_801D4EA4 = .sdata2:0x801D4EA4; // type:object size:0x4 data:float -lbl_801D4EA8 = .sdata2:0x801D4EA8; // type:object size:0x4 data:float -lbl_801D4EAC = .sdata2:0x801D4EAC; // type:object size:0x4 data:float -lbl_801D4EB0 = .sdata2:0x801D4EB0; // type:object size:0x4 data:float -lbl_801D4EB4 = .sdata2:0x801D4EB4; // type:object size:0x4 data:float -lbl_801D4EB8 = .sdata2:0x801D4EB8; // type:object size:0x4 data:float -lbl_801D4EBC = .sdata2:0x801D4EBC; // type:object size:0x4 data:float -lbl_801D4EC0 = .sdata2:0x801D4EC0; // type:object size:0x4 data:float -lbl_801D4EC4 = .sdata2:0x801D4EC4; // type:object size:0x4 data:float -lbl_801D4EC8 = .sdata2:0x801D4EC8; // type:object size:0x4 data:float -lbl_801D4ECC = .sdata2:0x801D4ECC; // type:object size:0x4 data:float -lbl_801D4ED0 = .sdata2:0x801D4ED0; // type:object size:0x4 data:float -lbl_801D4ED8 = .sdata2:0x801D4ED8; // type:object size:0x8 data:double -lbl_801D4EE0 = .sdata2:0x801D4EE0; // type:object size:0x8 data:double -lbl_801D4EE8 = .sdata2:0x801D4EE8; // type:object size:0x4 data:float -lbl_801D4EF0 = .sdata2:0x801D4EF0; // type:object size:0x8 data:double -lbl_801D4EF8 = .sdata2:0x801D4EF8; // type:object size:0x4 data:float -lbl_801D4F00 = .sdata2:0x801D4F00; // type:object size:0x8 data:double -lbl_801D4F08 = .sdata2:0x801D4F08; // type:object size:0x4 data:float -lbl_801D4F0C = .sdata2:0x801D4F0C; // type:object size:0x4 data:float -lbl_801D4F10 = .sdata2:0x801D4F10; // type:object size:0x4 data:float -lbl_801D4F14 = .sdata2:0x801D4F14; // type:object size:0x4 data:float -lbl_801D4F18 = .sdata2:0x801D4F18; // type:object size:0x8 data:double -lbl_801D4F20 = .sdata2:0x801D4F20; // type:object size:0x8 data:double -lbl_801D4F28 = .sdata2:0x801D4F28; // type:object size:0x4 data:float -lbl_801D4F2C = .sdata2:0x801D4F2C; // type:object size:0x4 data:float -lbl_801D4F30 = .sdata2:0x801D4F30; // type:object size:0x4 data:float -lbl_801D4F34 = .sdata2:0x801D4F34; // type:object size:0x4 data:float -lbl_801D4F38 = .sdata2:0x801D4F38; // type:object size:0x4 data:float -lbl_801D4F3C = .sdata2:0x801D4F3C; // type:object size:0x4 data:float -lbl_801D4F40 = .sdata2:0x801D4F40; // type:object size:0x4 data:float -lbl_801D4F44 = .sdata2:0x801D4F44; // type:object size:0x4 data:float -lbl_801D4F48 = .sdata2:0x801D4F48; // type:object size:0x4 data:float -lbl_801D4F4C = .sdata2:0x801D4F4C; // type:object size:0x4 data:float -lbl_801D4F50 = .sdata2:0x801D4F50; // type:object size:0x4 data:float -lbl_801D4F54 = .sdata2:0x801D4F54; // type:object size:0x4 data:float -lbl_801D4F58 = .sdata2:0x801D4F58; // type:object size:0x4 data:float -lbl_801D4F5C = .sdata2:0x801D4F5C; // type:object size:0x4 data:float -lbl_801D4F60 = .sdata2:0x801D4F60; // type:object size:0x4 data:4byte -lbl_801D4F64 = .sdata2:0x801D4F64; // type:object size:0x4 data:4byte -lbl_801D4F68 = .sdata2:0x801D4F68; // type:object size:0x4 data:float -lbl_801D4F6C = .sdata2:0x801D4F6C; // type:object size:0x4 data:float -lbl_801D4F70 = .sdata2:0x801D4F70; // type:object size:0x4 data:float -lbl_801D4F74 = .sdata2:0x801D4F74; // type:object size:0x4 data:float -lbl_801D4F78 = .sdata2:0x801D4F78; // type:object size:0x4 data:float -lbl_801D4F7C = .sdata2:0x801D4F7C; // type:object size:0x4 data:float -lbl_801D4F80 = .sdata2:0x801D4F80; // type:object size:0x4 data:float -lbl_801D4F84 = .sdata2:0x801D4F84; // type:object size:0x4 data:float -lbl_801D4F88 = .sdata2:0x801D4F88; // type:object size:0x4 data:float -lbl_801D4F8C = .sdata2:0x801D4F8C; // type:object size:0x2 data:2byte +lbl_801D4E84 = .sdata2:0x801D4E84; // type:object size:0x4 scope:local data:float +lbl_801D4E88 = .sdata2:0x801D4E88; // type:object size:0x4 scope:local data:float +lbl_801D4E8C = .sdata2:0x801D4E8C; // type:object size:0x4 scope:local data:float +lbl_801D4E90 = .sdata2:0x801D4E90; // type:object size:0x4 scope:local data:float +lbl_801D4E94 = .sdata2:0x801D4E94; // type:object size:0x4 scope:local data:float +lbl_801D4E98 = .sdata2:0x801D4E98; // type:object size:0x4 scope:local data:float +lbl_801D4E9C = .sdata2:0x801D4E9C; // type:object size:0x4 scope:local data:float +lbl_801D4EA0 = .sdata2:0x801D4EA0; // type:object size:0x4 scope:local data:float +lbl_801D4EA4 = .sdata2:0x801D4EA4; // type:object size:0x4 scope:local data:float +lbl_801D4EA8 = .sdata2:0x801D4EA8; // type:object size:0x4 scope:local data:float +lbl_801D4EAC = .sdata2:0x801D4EAC; // type:object size:0x4 scope:local data:float +lbl_801D4EB0 = .sdata2:0x801D4EB0; // type:object size:0x4 scope:local data:float +lbl_801D4EB4 = .sdata2:0x801D4EB4; // type:object size:0x4 scope:local data:float +lbl_801D4EB8 = .sdata2:0x801D4EB8; // type:object size:0x4 scope:local data:float +lbl_801D4EBC = .sdata2:0x801D4EBC; // type:object size:0x4 scope:local data:float +lbl_801D4EC0 = .sdata2:0x801D4EC0; // type:object size:0x4 scope:local data:float +lbl_801D4EC4 = .sdata2:0x801D4EC4; // type:object size:0x4 scope:local data:float +lbl_801D4EC8 = .sdata2:0x801D4EC8; // type:object size:0x4 scope:local data:float +lbl_801D4ECC = .sdata2:0x801D4ECC; // type:object size:0x4 scope:local data:float +lbl_801D4ED0 = .sdata2:0x801D4ED0; // type:object size:0x4 scope:local data:float +lbl_801D4ED8 = .sdata2:0x801D4ED8; // type:object size:0x8 scope:local data:double +lbl_801D4EE0 = .sdata2:0x801D4EE0; // type:object size:0x8 scope:local data:double +lbl_801D4EE8 = .sdata2:0x801D4EE8; // type:object size:0x4 scope:local data:float +lbl_801D4EF0 = .sdata2:0x801D4EF0; // type:object size:0x8 scope:local data:double +lbl_801D4EF8 = .sdata2:0x801D4EF8; // type:object size:0x4 scope:local data:float +lbl_801D4F00 = .sdata2:0x801D4F00; // type:object size:0x8 scope:local data:double +lbl_801D4F08 = .sdata2:0x801D4F08; // type:object size:0x4 scope:local data:float +lbl_801D4F0C = .sdata2:0x801D4F0C; // type:object size:0x4 scope:local data:float +lbl_801D4F10 = .sdata2:0x801D4F10; // type:object size:0x4 scope:local data:float +lbl_801D4F14 = .sdata2:0x801D4F14; // type:object size:0x4 scope:local data:float +lbl_801D4F18 = .sdata2:0x801D4F18; // type:object size:0x8 scope:local data:double +lbl_801D4F20 = .sdata2:0x801D4F20; // type:object size:0x8 scope:local data:double +lbl_801D4F28 = .sdata2:0x801D4F28; // type:object size:0x4 scope:local data:float +lbl_801D4F2C = .sdata2:0x801D4F2C; // type:object size:0x4 scope:local data:float +lbl_801D4F30 = .sdata2:0x801D4F30; // type:object size:0x4 scope:local data:float +lbl_801D4F34 = .sdata2:0x801D4F34; // type:object size:0x4 scope:local data:float +lbl_801D4F38 = .sdata2:0x801D4F38; // type:object size:0x4 scope:local data:float +lbl_801D4F3C = .sdata2:0x801D4F3C; // type:object size:0x4 scope:local data:float +lbl_801D4F40 = .sdata2:0x801D4F40; // type:object size:0x4 scope:local data:float +lbl_801D4F44 = .sdata2:0x801D4F44; // type:object size:0x4 scope:local data:float +lbl_801D4F48 = .sdata2:0x801D4F48; // type:object size:0x4 scope:local data:float +lbl_801D4F4C = .sdata2:0x801D4F4C; // type:object size:0x4 scope:local data:float +lbl_801D4F50 = .sdata2:0x801D4F50; // type:object size:0x4 scope:local data:float +lbl_801D4F54 = .sdata2:0x801D4F54; // type:object size:0x4 scope:local data:float +lbl_801D4F58 = .sdata2:0x801D4F58; // type:object size:0x4 scope:local data:float +lbl_801D4F5C = .sdata2:0x801D4F5C; // type:object size:0x4 scope:local data:float +lbl_801D4F60 = .sdata2:0x801D4F60; // type:object size:0x4 scope:local data:4byte +lbl_801D4F64 = .sdata2:0x801D4F64; // type:object size:0x4 scope:local data:4byte +lbl_801D4F68 = .sdata2:0x801D4F68; // type:object size:0x4 scope:local data:float +lbl_801D4F6C = .sdata2:0x801D4F6C; // type:object size:0x4 scope:local data:float +lbl_801D4F70 = .sdata2:0x801D4F70; // type:object size:0x4 scope:local data:float +lbl_801D4F74 = .sdata2:0x801D4F74; // type:object size:0x4 scope:local data:float +lbl_801D4F78 = .sdata2:0x801D4F78; // type:object size:0x4 scope:local data:float +lbl_801D4F7C = .sdata2:0x801D4F7C; // type:object size:0x4 scope:local data:float +lbl_801D4F80 = .sdata2:0x801D4F80; // type:object size:0x4 scope:local data:float +lbl_801D4F84 = .sdata2:0x801D4F84; // type:object size:0x4 scope:local data:float +lbl_801D4F88 = .sdata2:0x801D4F88; // type:object size:0x4 scope:local data:float +lbl_801D4F8C = .sdata2:0x801D4F8C; // type:object size:0x2 scope:local data:2byte lbl_801D4F8E = .sdata2:0x801D4F8E; // type:object size:0x2 data:2byte lbl_801D4F90 = .sdata2:0x801D4F90; // type:object size:0x2 data:2byte lbl_801D4F92 = .sdata2:0x801D4F92; // type:object size:0x2 data:2byte diff --git a/configure.py b/configure.py index 675c7809..aa1b0b54 100644 --- a/configure.py +++ b/configure.py @@ -423,8 +423,8 @@ config.libs = [ Object(Matching, "game/flag.c"), Object(Matching, "game/saveload.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/sreset.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/player.c"), + Object(Matching, "game/board/main.c"), + Object(Matching, "game/board/player.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/model.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/window.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "game/board/audio.c"), diff --git a/src/game/board/main.c b/src/game/board/main.c index eaa31aa0..a1a904e3 100644 --- a/src/game/board/main.c +++ b/src/game/board/main.c @@ -1988,11 +1988,15 @@ void BoardLast5GfxInit(void) } else { prio = 1400; } +#if !VERSION_JPN spr_file = last5GfxSprTbl[i]; if(i == 2 && work->is_last && GWLanguageGet() != 0) { spr_file = DATA_MAKE_NUM(DATADIR_BOARD, 98); } BoardSpriteCreate(spr_file, prio, NULL, &work->sprites[i]); +#else + BoardSpriteCreate(last5GfxSprTbl[i], prio, NULL, &work->sprites[i]); +#endif HuSprGrpMemberSet(work->group, i, work->sprites[i]); HuSprAttrSet(work->group, i, HUSPR_ATTR_LINEAR); HuSprPosSet(work->group, i, last5GfxPosTbl[lastF][i][0], last5GfxPosTbl[lastF][i][1]); @@ -2203,4 +2207,4 @@ void BoardDataAsyncWait(s32 status) while(!HuDataGetAsyncStat(status)) { HuPrcVSleep(); } -} \ No newline at end of file +} diff --git a/src/game/board/player.c b/src/game/board/player.c index 6f57f1ea..c73efa85 100644 --- a/src/game/board/player.c +++ b/src/game/board/player.c @@ -137,6 +137,18 @@ static s32 bowserSuitCharMdlTbl[] = { static s32 bowserSuitMotTbl[] = { DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x19), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1A), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1B), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1E), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1F) }; +#if VERSION_JPN +static s32 sparkMotTbl[] = { + DATA_MAKE_NUM(DATADIR_BOARD, 0x94), + DATA_MAKE_NUM(DATADIR_BOARD, 0x95), + DATA_MAKE_NUM(DATADIR_BOARD, 0x96), + DATA_MAKE_NUM(DATADIR_BOARD, 0x97), + DATA_MAKE_NUM(DATADIR_BOARD, 0x98), + DATA_MAKE_NUM(DATADIR_BOARD, 0x99), + DATA_MAKE_NUM(DATADIR_BOARD, 0x9A), + DATA_MAKE_NUM(DATADIR_BOARD, 0x9B), +}; +#else static s32 sparkMotTbl[] = { DATA_MAKE_NUM(DATADIR_BOARD, 0x95), DATA_MAKE_NUM(DATADIR_BOARD, 0x96), @@ -147,6 +159,7 @@ static s32 sparkMotTbl[] = { DATA_MAKE_NUM(DATADIR_BOARD, 0x9B), DATA_MAKE_NUM(DATADIR_BOARD, 0x9C), }; +#endif static s32 boardSparkSfxTbl[] = { 0x128, @@ -2499,7 +2512,7 @@ static s32 DoSparkSpace(s32 player, s32 pause_cam) BoardCameraMotionWait(); BoardCameraTargetPlayerSet(player); BoardPlayerIdleSet(player); - temp_r28 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x74), NULL, 0); + temp_r28 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JPN ? 0x73 : 0x74), NULL, 0); BoardModelMotionStart(temp_r28, 0, 0x40000002); BoardModelMotionTimeSet(temp_r28, 30.0f); BoardModelAttrSet(temp_r28, 0x40000002); @@ -2507,7 +2520,7 @@ static s32 DoSparkSpace(s32 player, s32 pause_cam) BoardModelScaleSet(temp_r28, 2.0f, 2.0f, 2.0f); BoardModelVisibilitySet(temp_r28, 0); BoardModelLayerSet(temp_r28, 1); - sp2E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x67), NULL, 0); + sp2E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JPN ? 0x66 : 0x67), NULL, 0); BoardModelLayerSet(sp2E, 1); BoardModelMotionStart(sp2E, 0, 0); HuAudFXPlay(796); diff --git a/src/game/sreset.c b/src/game/sreset.c index 2ddadd51..44679b73 100644 --- a/src/game/sreset.c +++ b/src/game/sreset.c @@ -22,7 +22,11 @@ extern s32 HuDvdErrWait; static s32 SR_PreRstChk[4] = {}; -#if VERSION_NTSC +#if VERSION_JPN +static s32 padding[4] = {}; +#endif + +#if VERSION_ENG #include "coveropen_en.inc" #include "fatalerror_en.inc" @@ -31,7 +35,7 @@ static s32 SR_PreRstChk[4] = {}; #include "retryerror_en.inc" #include "wrongdisc_en.inc" -#else +#elif VERSION_PAL #include "coveropen_en.inc" #include "fatalerror_en.inc" @@ -68,6 +72,15 @@ static s32 SR_PreRstChk[4] = {}; #include "retryerror_sp.inc" #include "wrongdisc_sp.inc" +#else + +#include "coveropen_jp.inc" +#include "fatalerror_jp.inc" +#include "loading_jp.inc" +#include "nodisc_jp.inc" +#include "retryerror_jp.inc" +#include "wrongdisc_jp.inc" + #endif static s16 SR_PushTime[4] = {}; @@ -287,11 +300,11 @@ static void ToeDispCheck(void) static void _HuDvdErrDispXFB(s32 error) { - #if VERSION_NTSC + #if VERSION_ENG static void *bmpMes[][6] = { - loading_en, coveropen_en, nodisc_en, wrongdisc_en, retryerror_en, fatalerror_en + loading_en, coveropen_en, nodisc_en, wrongdisc_en, retryerror_en, fatalerror_en }; - #else + #elif VERSION_PAL static void *bmpMes[][6] = { loading_en, coveropen_en, nodisc_en, wrongdisc_en, retryerror_en, fatalerror_en, loading_fr, coveropen_fr, nodisc_fr, wrongdisc_fr, retryerror_fr, fatalerror_fr, @@ -299,6 +312,10 @@ static void _HuDvdErrDispXFB(s32 error) loading_it, coveropen_it, nodisc_it, wrongdisc_it, retryerror_it, fatalerror_it, loading_sp, coveropen_sp, nodisc_sp, wrongdisc_sp, retryerror_sp, fatalerror_sp }; + #else + static void *bmpMes[][6] = { + loading_jp, coveropen_jp, nodisc_jp, wrongdisc_jp, retryerror_jp, fatalerror_jp + }; #endif s16 *bmpData; @@ -524,4 +541,4 @@ static void HuSoftResetPostProc(void) HuPadRumbleAllStop(); SR_ExecReset = TRUE; } -} \ No newline at end of file +} From 9303f273870fc0d881ea3f02aaba453d6ee29a35 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 20:05:08 +0100 Subject: [PATCH 051/178] Set a lot of RELs to matching in the Japanese version Deleted unnecessary corresponding splits --- config/GMPJ01_00/config.yml | 176 +++--- config/GMPJ01_00/rels/_minigameDll/splits.txt | 6 - .../GMPJ01_00/rels/_minigameDll/symbols.txt | 7 - config/GMPJ01_00/rels/m401Dll/splits.txt | 7 - config/GMPJ01_00/rels/m401Dll/symbols.txt | 522 ---------------- config/GMPJ01_00/rels/m402Dll/splits.txt | 7 - config/GMPJ01_00/rels/m402Dll/symbols.txt | 204 ------ config/GMPJ01_00/rels/m403Dll/splits.txt | 7 - config/GMPJ01_00/rels/m403Dll/symbols.txt | 256 -------- config/GMPJ01_00/rels/m404Dll/splits.txt | 7 - config/GMPJ01_00/rels/m404Dll/symbols.txt | 154 ----- config/GMPJ01_00/rels/m405Dll/splits.txt | 7 - config/GMPJ01_00/rels/m405Dll/symbols.txt | 254 -------- config/GMPJ01_00/rels/m406Dll/splits.txt | 7 - config/GMPJ01_00/rels/m406Dll/symbols.txt | 434 ------------- config/GMPJ01_00/rels/m407dll/splits.txt | 7 - config/GMPJ01_00/rels/m407dll/symbols.txt | 271 -------- config/GMPJ01_00/rels/m408Dll/splits.txt | 7 - config/GMPJ01_00/rels/m408Dll/symbols.txt | 549 ----------------- config/GMPJ01_00/rels/m409Dll/splits.txt | 7 - config/GMPJ01_00/rels/m409Dll/symbols.txt | 332 ---------- config/GMPJ01_00/rels/m410Dll/splits.txt | 7 - config/GMPJ01_00/rels/m410Dll/symbols.txt | 317 ---------- config/GMPJ01_00/rels/m411Dll/splits.txt | 7 - config/GMPJ01_00/rels/m411Dll/symbols.txt | 278 --------- config/GMPJ01_00/rels/m412Dll/splits.txt | 7 - config/GMPJ01_00/rels/m412Dll/symbols.txt | 190 ------ config/GMPJ01_00/rels/m414Dll/splits.txt | 7 - config/GMPJ01_00/rels/m414Dll/symbols.txt | 183 ------ config/GMPJ01_00/rels/m415Dll/splits.txt | 7 - config/GMPJ01_00/rels/m415Dll/symbols.txt | 234 ------- config/GMPJ01_00/rels/m416Dll/splits.txt | 7 - config/GMPJ01_00/rels/m416Dll/symbols.txt | 209 ------- config/GMPJ01_00/rels/m417Dll/splits.txt | 7 - config/GMPJ01_00/rels/m417Dll/symbols.txt | 366 ----------- config/GMPJ01_00/rels/m420dll/splits.txt | 7 - config/GMPJ01_00/rels/m420dll/symbols.txt | 249 -------- config/GMPJ01_00/rels/m421Dll/splits.txt | 7 - config/GMPJ01_00/rels/m421Dll/symbols.txt | 277 --------- config/GMPJ01_00/rels/m431Dll/splits.txt | 7 - config/GMPJ01_00/rels/m431Dll/symbols.txt | 252 -------- config/GMPJ01_00/rels/m432Dll/splits.txt | 7 - config/GMPJ01_00/rels/m432Dll/symbols.txt | 359 ----------- config/GMPJ01_00/rels/m434Dll/splits.txt | 7 - config/GMPJ01_00/rels/m434Dll/symbols.txt | 337 ---------- config/GMPJ01_00/rels/m436Dll/splits.txt | 7 - config/GMPJ01_00/rels/m436Dll/symbols.txt | 352 ----------- config/GMPJ01_00/rels/m437Dll/splits.txt | 7 - config/GMPJ01_00/rels/m437Dll/symbols.txt | 411 ------------ config/GMPJ01_00/rels/m439Dll/splits.txt | 7 - config/GMPJ01_00/rels/m439Dll/symbols.txt | 325 ---------- config/GMPJ01_00/rels/m440Dll/splits.txt | 7 - config/GMPJ01_00/rels/m440Dll/symbols.txt | 288 --------- config/GMPJ01_00/rels/m441Dll/splits.txt | 7 - config/GMPJ01_00/rels/m441Dll/symbols.txt | 224 ------- config/GMPJ01_00/rels/m442Dll/splits.txt | 7 - config/GMPJ01_00/rels/m442Dll/symbols.txt | 225 ------- config/GMPJ01_00/rels/m443Dll/splits.txt | 7 - config/GMPJ01_00/rels/m443Dll/symbols.txt | 330 ---------- config/GMPJ01_00/rels/m445Dll/splits.txt | 7 - config/GMPJ01_00/rels/m445Dll/symbols.txt | 173 ------ config/GMPJ01_00/rels/m446dll/splits.txt | 7 - config/GMPJ01_00/rels/m446dll/symbols.txt | 305 --------- config/GMPJ01_00/rels/m447dll/splits.txt | 7 - config/GMPJ01_00/rels/m447dll/symbols.txt | 309 ---------- config/GMPJ01_00/rels/m448Dll/splits.txt | 7 - config/GMPJ01_00/rels/m448Dll/symbols.txt | 200 ------ config/GMPJ01_00/rels/m450Dll/splits.txt | 7 - config/GMPJ01_00/rels/m450Dll/symbols.txt | 558 ----------------- config/GMPJ01_00/rels/m451Dll/splits.txt | 7 - config/GMPJ01_00/rels/m451Dll/symbols.txt | 217 ------- config/GMPJ01_00/rels/m453Dll/splits.txt | 7 - config/GMPJ01_00/rels/m453Dll/symbols.txt | 279 --------- config/GMPJ01_00/rels/m455Dll/splits.txt | 7 - config/GMPJ01_00/rels/m455Dll/symbols.txt | 290 --------- config/GMPJ01_00/rels/m460Dll/splits.txt | 7 - config/GMPJ01_00/rels/m460Dll/symbols.txt | 301 --------- config/GMPJ01_00/rels/m461Dll/splits.txt | 7 - config/GMPJ01_00/rels/m461Dll/symbols.txt | 224 ------- config/GMPJ01_00/rels/mgmodedll/splits.txt | 7 - config/GMPJ01_00/rels/mgmodedll/symbols.txt | 583 ------------------ config/GMPJ01_00/rels/modeltestDll/splits.txt | 7 - .../GMPJ01_00/rels/modeltestDll/symbols.txt | 230 ------- config/GMPJ01_00/rels/present/splits.txt | 7 - config/GMPJ01_00/rels/present/symbols.txt | 189 ------ config/GMPJ01_00/rels/resultDll/splits.txt | 7 - config/GMPJ01_00/rels/resultDll/symbols.txt | 203 ------ configure.py | 238 +++---- 88 files changed, 207 insertions(+), 12957 deletions(-) delete mode 100644 config/GMPJ01_00/rels/_minigameDll/splits.txt delete mode 100644 config/GMPJ01_00/rels/_minigameDll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m401Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m401Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m402Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m402Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m403Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m403Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m404Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m404Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m405Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m405Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m406Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m406Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m407dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m407dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m408Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m408Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m409Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m409Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m410Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m410Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m411Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m411Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m412Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m412Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m414Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m414Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m415Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m415Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m416Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m416Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m417Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m417Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m420dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m420dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m421Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m421Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m431Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m431Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m432Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m432Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m434Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m434Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m436Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m436Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m437Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m437Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m439Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m439Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m440Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m440Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m441Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m441Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m442Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m442Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m443Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m443Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m445Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m445Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m446dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m446dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m447dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m447dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m448Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m448Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m450Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m450Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m451Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m451Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m453Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m453Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m455Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m455Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m460Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m460Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/m461Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m461Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/mgmodedll/splits.txt delete mode 100644 config/GMPJ01_00/rels/mgmodedll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/modeltestDll/splits.txt delete mode 100644 config/GMPJ01_00/rels/modeltestDll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/present/splits.txt delete mode 100644 config/GMPJ01_00/rels/present/symbols.txt delete mode 100644 config/GMPJ01_00/rels/resultDll/splits.txt delete mode 100644 config/GMPJ01_00/rels/resultDll/symbols.txt diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index b7b70d66..3d774ecc 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -14,8 +14,8 @@ fill_gaps: true modules: - object: files/dll/_minigameDll.rel - symbols: config/GMPJ01_00/rels/_minigameDll/symbols.txt - splits: config/GMPJ01_00/rels/_minigameDll/splits.txt + symbols: config/GMPE01_00/rels/_minigameDll/symbols.txt + splits: config/GMPE01_00/rels/_minigameDll/splits.txt links: [] - object: files/dll/bootDll.rel @@ -49,58 +49,58 @@ modules: links: [] - object: files/dll/m402Dll.rel - symbols: config/GMPJ01_00/rels/m402Dll/symbols.txt - splits: config/GMPJ01_00/rels/m402Dll/splits.txt + symbols: config/GMPE01_00/rels/m402Dll/symbols.txt + splits: config/GMPE01_00/rels/m402Dll/splits.txt links: [] - object: files/dll/m403Dll.rel - symbols: config/GMPJ01_00/rels/m403Dll/symbols.txt - splits: config/GMPJ01_00/rels/m403Dll/splits.txt + symbols: config/GMPE01_00/rels/m403Dll/symbols.txt + splits: config/GMPE01_00/rels/m403Dll/splits.txt links: [] - object: files/dll/m404Dll.rel - symbols: config/GMPJ01_00/rels/m404Dll/symbols.txt - splits: config/GMPJ01_00/rels/m404Dll/splits.txt + symbols: config/GMPE01_00/rels/m404Dll/symbols.txt + splits: config/GMPE01_00/rels/m404Dll/splits.txt links: [] - object: files/dll/m405Dll.rel - symbols: config/GMPJ01_00/rels/m405Dll/symbols.txt - splits: config/GMPJ01_00/rels/m405Dll/splits.txt + symbols: config/GMPE01_00/rels/m405Dll/symbols.txt + splits: config/GMPE01_00/rels/m405Dll/splits.txt links: [] - object: files/dll/m406Dll.rel - symbols: config/GMPJ01_00/rels/m406Dll/symbols.txt - splits: config/GMPJ01_00/rels/m406Dll/splits.txt + symbols: config/GMPE01_00/rels/m406Dll/symbols.txt + splits: config/GMPE01_00/rels/m406Dll/splits.txt links: [] - object: files/dll/m407dll.rel - symbols: config/GMPJ01_00/rels/m407dll/symbols.txt - splits: config/GMPJ01_00/rels/m407dll/splits.txt + symbols: config/GMPE01_00/rels/m407dll/symbols.txt + splits: config/GMPE01_00/rels/m407dll/splits.txt links: [] - object: files/dll/m408Dll.rel - symbols: config/GMPJ01_00/rels/m408Dll/symbols.txt - splits: config/GMPJ01_00/rels/m408Dll/splits.txt + symbols: config/GMPE01_00/rels/m408Dll/symbols.txt + splits: config/GMPE01_00/rels/m408Dll/splits.txt links: [] - object: files/dll/m409Dll.rel - symbols: config/GMPJ01_00/rels/m409Dll/symbols.txt - splits: config/GMPJ01_00/rels/m409Dll/splits.txt + symbols: config/GMPE01_00/rels/m409Dll/symbols.txt + splits: config/GMPE01_00/rels/m409Dll/splits.txt links: [] - object: files/dll/m410Dll.rel - symbols: config/GMPJ01_00/rels/m410Dll/symbols.txt - splits: config/GMPJ01_00/rels/m410Dll/splits.txt + symbols: config/GMPE01_00/rels/m410Dll/symbols.txt + splits: config/GMPE01_00/rels/m410Dll/splits.txt links: [] - object: files/dll/m411Dll.rel - symbols: config/GMPJ01_00/rels/m411Dll/symbols.txt - splits: config/GMPJ01_00/rels/m411Dll/splits.txt + symbols: config/GMPE01_00/rels/m411Dll/symbols.txt + splits: config/GMPE01_00/rels/m411Dll/splits.txt links: [] - object: files/dll/m412Dll.rel - symbols: config/GMPJ01_00/rels/m412Dll/symbols.txt - splits: config/GMPJ01_00/rels/m412Dll/splits.txt + symbols: config/GMPE01_00/rels/m412Dll/symbols.txt + splits: config/GMPE01_00/rels/m412Dll/splits.txt links: [] - object: files/dll/m413Dll.rel @@ -109,23 +109,23 @@ modules: links: [] - object: files/dll/m414Dll.rel - symbols: config/GMPJ01_00/rels/m414Dll/symbols.txt - splits: config/GMPJ01_00/rels/m414Dll/splits.txt + symbols: config/GMPE01_00/rels/m414Dll/symbols.txt + splits: config/GMPE01_00/rels/m414Dll/splits.txt links: [] - object: files/dll/m415Dll.rel - symbols: config/GMPJ01_00/rels/m415Dll/symbols.txt - splits: config/GMPJ01_00/rels/m415Dll/splits.txt + symbols: config/GMPE01_00/rels/m415Dll/symbols.txt + splits: config/GMPE01_00/rels/m415Dll/splits.txt links: [] - object: files/dll/m416Dll.rel - symbols: config/GMPJ01_00/rels/m416Dll/symbols.txt - splits: config/GMPJ01_00/rels/m416Dll/splits.txt + symbols: config/GMPE01_00/rels/m416Dll/symbols.txt + splits: config/GMPE01_00/rels/m416Dll/splits.txt links: [] - object: files/dll/m417Dll.rel - symbols: config/GMPJ01_00/rels/m417Dll/symbols.txt - splits: config/GMPJ01_00/rels/m417Dll/splits.txt + symbols: config/GMPE01_00/rels/m417Dll/symbols.txt + splits: config/GMPE01_00/rels/m417Dll/splits.txt links: [] - object: files/dll/m418Dll.rel @@ -139,13 +139,13 @@ modules: links: [] - object: files/dll/m420dll.rel - symbols: config/GMPJ01_00/rels/m420dll/symbols.txt - splits: config/GMPJ01_00/rels/m420dll/splits.txt + symbols: config/GMPE01_00/rels/m420dll/symbols.txt + splits: config/GMPE01_00/rels/m420dll/splits.txt links: [] - object: files/dll/m421Dll.rel - symbols: config/GMPJ01_00/rels/m421Dll/symbols.txt - splits: config/GMPJ01_00/rels/m421Dll/splits.txt + symbols: config/GMPE01_00/rels/m421Dll/symbols.txt + splits: config/GMPE01_00/rels/m421Dll/splits.txt links: [] - object: files/dll/m422Dll.rel @@ -194,13 +194,13 @@ modules: links: [] - object: files/dll/m431Dll.rel - symbols: config/GMPJ01_00/rels/m431Dll/symbols.txt - splits: config/GMPJ01_00/rels/m431Dll/splits.txt + symbols: config/GMPE01_00/rels/m431Dll/symbols.txt + splits: config/GMPE01_00/rels/m431Dll/splits.txt links: [] - object: files/dll/m432Dll.rel - symbols: config/GMPJ01_00/rels/m432Dll/symbols.txt - splits: config/GMPJ01_00/rels/m432Dll/splits.txt + symbols: config/GMPE01_00/rels/m432Dll/symbols.txt + splits: config/GMPE01_00/rels/m432Dll/splits.txt links: [] - object: files/dll/m433Dll.rel @@ -209,8 +209,8 @@ modules: links: [] - object: files/dll/m434Dll.rel - symbols: config/GMPJ01_00/rels/m434Dll/symbols.txt - splits: config/GMPJ01_00/rels/m434Dll/splits.txt + symbols: config/GMPE01_00/rels/m434Dll/symbols.txt + splits: config/GMPE01_00/rels/m434Dll/splits.txt links: [] - object: files/dll/m435Dll.rel @@ -219,13 +219,13 @@ modules: links: [] - object: files/dll/m436Dll.rel - symbols: config/GMPJ01_00/rels/m436Dll/symbols.txt - splits: config/GMPJ01_00/rels/m436Dll/splits.txt + symbols: config/GMPE01_00/rels/m436Dll/symbols.txt + splits: config/GMPE01_00/rels/m436Dll/splits.txt links: [] - object: files/dll/m437Dll.rel - symbols: config/GMPJ01_00/rels/m437Dll/symbols.txt - splits: config/GMPJ01_00/rels/m437Dll/splits.txt + symbols: config/GMPE01_00/rels/m437Dll/symbols.txt + splits: config/GMPE01_00/rels/m437Dll/splits.txt links: [] - object: files/dll/m438Dll.rel @@ -234,28 +234,28 @@ modules: links: [] - object: files/dll/m439Dll.rel - symbols: config/GMPJ01_00/rels/m439Dll/symbols.txt - splits: config/GMPJ01_00/rels/m439Dll/splits.txt + symbols: config/GMPE01_00/rels/m439Dll/symbols.txt + splits: config/GMPE01_00/rels/m439Dll/splits.txt links: [] - object: files/dll/m440Dll.rel - symbols: config/GMPJ01_00/rels/m440Dll/symbols.txt - splits: config/GMPJ01_00/rels/m440Dll/splits.txt + symbols: config/GMPE01_00/rels/m440Dll/symbols.txt + splits: config/GMPE01_00/rels/m440Dll/splits.txt links: [] - object: files/dll/m441Dll.rel - symbols: config/GMPJ01_00/rels/m441Dll/symbols.txt - splits: config/GMPJ01_00/rels/m441Dll/splits.txt + symbols: config/GMPE01_00/rels/m441Dll/symbols.txt + splits: config/GMPE01_00/rels/m441Dll/splits.txt links: [] - object: files/dll/m442Dll.rel - symbols: config/GMPJ01_00/rels/m442Dll/symbols.txt - splits: config/GMPJ01_00/rels/m442Dll/splits.txt + symbols: config/GMPE01_00/rels/m442Dll/symbols.txt + splits: config/GMPE01_00/rels/m442Dll/splits.txt links: [] - object: files/dll/m443Dll.rel - symbols: config/GMPJ01_00/rels/m443Dll/symbols.txt - splits: config/GMPJ01_00/rels/m443Dll/splits.txt + symbols: config/GMPE01_00/rels/m443Dll/symbols.txt + splits: config/GMPE01_00/rels/m443Dll/splits.txt links: [] - object: files/dll/m444dll.rel @@ -264,23 +264,23 @@ modules: links: [] - object: files/dll/m445Dll.rel - symbols: config/GMPJ01_00/rels/m445Dll/symbols.txt - splits: config/GMPJ01_00/rels/m445Dll/splits.txt + symbols: config/GMPE01_00/rels/m445Dll/symbols.txt + splits: config/GMPE01_00/rels/m445Dll/splits.txt links: [] - object: files/dll/m446dll.rel - symbols: config/GMPJ01_00/rels/m446dll/symbols.txt - splits: config/GMPJ01_00/rels/m446dll/splits.txt + symbols: config/GMPE01_00/rels/m446dll/symbols.txt + splits: config/GMPE01_00/rels/m446dll/splits.txt links: [] - object: files/dll/m447dll.rel - symbols: config/GMPJ01_00/rels/m447dll/symbols.txt - splits: config/GMPJ01_00/rels/m447dll/splits.txt + symbols: config/GMPE01_00/rels/m447dll/symbols.txt + splits: config/GMPE01_00/rels/m447dll/splits.txt links: [] - object: files/dll/m448Dll.rel - symbols: config/GMPJ01_00/rels/m448Dll/symbols.txt - splits: config/GMPJ01_00/rels/m448Dll/splits.txt + symbols: config/GMPE01_00/rels/m448Dll/symbols.txt + splits: config/GMPE01_00/rels/m448Dll/splits.txt links: [] - object: files/dll/m449Dll.rel @@ -289,23 +289,23 @@ modules: links: [] - object: files/dll/m450Dll.rel - symbols: config/GMPJ01_00/rels/m450Dll/symbols.txt - splits: config/GMPJ01_00/rels/m450Dll/splits.txt + symbols: config/GMPE01_00/rels/m450Dll/symbols.txt + splits: config/GMPE01_00/rels/m450Dll/splits.txt links: [] - object: files/dll/m451Dll.rel - symbols: config/GMPJ01_00/rels/m451Dll/symbols.txt - splits: config/GMPJ01_00/rels/m451Dll/splits.txt + symbols: config/GMPE01_00/rels/m451Dll/symbols.txt + splits: config/GMPE01_00/rels/m451Dll/splits.txt links: [] - object: files/dll/m453Dll.rel - symbols: config/GMPJ01_00/rels/m453Dll/symbols.txt - splits: config/GMPJ01_00/rels/m453Dll/splits.txt + symbols: config/GMPE01_00/rels/m453Dll/symbols.txt + splits: config/GMPE01_00/rels/m453Dll/splits.txt links: [] - object: files/dll/m455Dll.rel - symbols: config/GMPJ01_00/rels/m455Dll/symbols.txt - splits: config/GMPJ01_00/rels/m455Dll/splits.txt + symbols: config/GMPE01_00/rels/m455Dll/symbols.txt + splits: config/GMPE01_00/rels/m455Dll/splits.txt links: [] - object: files/dll/m456Dll.rel @@ -329,13 +329,13 @@ modules: links: [] - object: files/dll/m460Dll.rel - symbols: config/GMPJ01_00/rels/m460Dll/symbols.txt - splits: config/GMPJ01_00/rels/m460Dll/splits.txt + symbols: config/GMPE01_00/rels/m460Dll/symbols.txt + splits: config/GMPE01_00/rels/m460Dll/splits.txt links: [] - object: files/dll/m461Dll.rel - symbols: config/GMPJ01_00/rels/m461Dll/symbols.txt - splits: config/GMPJ01_00/rels/m461Dll/splits.txt + symbols: config/GMPE01_00/rels/m461Dll/symbols.txt + splits: config/GMPE01_00/rels/m461Dll/splits.txt links: [] - object: files/dll/m462Dll.rel @@ -359,13 +359,13 @@ modules: links: [] - object: files/dll/mgmodedll.rel - symbols: config/GMPJ01_00/rels/mgmodedll/symbols.txt - splits: config/GMPJ01_00/rels/mgmodedll/splits.txt + symbols: config/GMPE01_00/rels/mgmodedll/symbols.txt + splits: config/GMPE01_00/rels/mgmodedll/splits.txt links: [] - object: files/dll/modeltestDll.rel - symbols: config/GMPJ01_00/rels/modeltestDll/symbols.txt - splits: config/GMPJ01_00/rels/modeltestDll/splits.txt + symbols: config/GMPE01_00/rels/modeltestDll/symbols.txt + splits: config/GMPE01_00/rels/modeltestDll/splits.txt links: [] - object: files/dll/modeseldll.rel @@ -404,8 +404,8 @@ modules: links: [] - object: files/dll/nisDll.rel - symbols: config/GMPJ01_00/rels/nisDll/symbols.txt - splits: config/GMPJ01_00/rels/nisDll/splits.txt + symbols: config/GMPE01_00/rels/nisDll/symbols.txt + splits: config/GMPE01_00/rels/nisDll/splits.txt links: [] - object: files/dll/option.rel @@ -414,13 +414,13 @@ modules: links: [] - object: files/dll/present.rel - symbols: config/GMPJ01_00/rels/present/symbols.txt - splits: config/GMPJ01_00/rels/present/splits.txt + symbols: config/GMPE01_00/rels/present/symbols.txt + splits: config/GMPE01_00/rels/present/splits.txt links: [] - object: files/dll/resultDll.rel - symbols: config/GMPJ01_00/rels/resultDll/symbols.txt - splits: config/GMPJ01_00/rels/resultDll/splits.txt + symbols: config/GMPE01_00/rels/resultDll/symbols.txt + splits: config/GMPE01_00/rels/resultDll/splits.txt links: [] - object: files/dll/safDll.rel @@ -504,8 +504,8 @@ modules: links: [_minigameDll] - object: files/dll/m401Dll.rel - symbols: config/GMPJ01_00/rels/m401Dll/symbols.txt - splits: config/GMPJ01_00/rels/m401Dll/splits.txt + symbols: config/GMPE01_00/rels/m401Dll/symbols.txt + splits: config/GMPE01_00/rels/m401Dll/splits.txt links: [_minigameDll] extract: diff --git a/config/GMPJ01_00/rels/_minigameDll/splits.txt b/config/GMPJ01_00/rels/_minigameDll/splits.txt deleted file mode 100644 index be323846..00000000 --- a/config/GMPJ01_00/rels/_minigameDll/splits.txt +++ /dev/null @@ -1,6 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 diff --git a/config/GMPJ01_00/rels/_minigameDll/symbols.txt b/config/GMPJ01_00/rels/_minigameDll/symbols.txt deleted file mode 100644 index 5c4a5ab3..00000000 --- a/config/GMPJ01_00/rels/_minigameDll/symbols.txt +++ /dev/null @@ -1,7 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2C -fn_1_CC = .text:0x000000CC; // type:function size:0x24 -_ctors = .ctors:0x00000000; // type:label scope:global data:4byte -_dtors = .dtors:0x00000000; // type:label scope:global data:4byte -lbl_1_data_0 = .data:0x00000000; // type:object size:0x14 data:string diff --git a/config/GMPJ01_00/rels/m401Dll/splits.txt b/config/GMPJ01_00/rels/m401Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m401Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m401Dll/symbols.txt b/config/GMPJ01_00/rels/m401Dll/symbols.txt deleted file mode 100644 index 6a0cc8b9..00000000 --- a/config/GMPJ01_00/rels/m401Dll/symbols.txt +++ /dev/null @@ -1,522 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_2_A0 = .text:0x000000A0; // type:function size:0x66C -fn_2_70C = .text:0x0000070C; // type:function size:0x304 -fn_2_A10 = .text:0x00000A10; // type:function size:0x88 -fn_2_A98 = .text:0x00000A98; // type:function size:0x54 -fn_2_AEC = .text:0x00000AEC; // type:function size:0x130 -fn_2_C1C = .text:0x00000C1C; // type:function size:0x5B4 -fn_2_11D0 = .text:0x000011D0; // type:function size:0x3F4 -fn_2_15C4 = .text:0x000015C4; // type:function size:0xD8 -fn_2_169C = .text:0x0000169C; // type:function size:0x1BC -fn_2_1858 = .text:0x00001858; // type:function size:0x1E0 -fn_2_1A38 = .text:0x00001A38; // type:function size:0x148 -fn_2_1B80 = .text:0x00001B80; // type:function size:0x170 -fn_2_1CF0 = .text:0x00001CF0; // type:function size:0xF8 -fn_2_1DE8 = .text:0x00001DE8; // type:function size:0x2C8 -fn_2_20B0 = .text:0x000020B0; // type:function size:0x148 -fn_2_21F8 = .text:0x000021F8; // type:function size:0x4E8 -fn_2_26E0 = .text:0x000026E0; // type:function size:0x5DC -fn_2_2CBC = .text:0x00002CBC; // type:function size:0xA8 -fn_2_2D64 = .text:0x00002D64; // type:function size:0x68 -fn_2_2DCC = .text:0x00002DCC; // type:function size:0x54 -fn_2_2E20 = .text:0x00002E20; // type:function size:0xB0 -fn_2_2ED0 = .text:0x00002ED0; // type:function size:0xCC -fn_2_2F9C = .text:0x00002F9C; // type:function size:0x4 -fn_2_2FA0 = .text:0x00002FA0; // type:function size:0x4 -fn_2_2FA4 = .text:0x00002FA4; // type:function size:0x410 -fn_2_33B4 = .text:0x000033B4; // type:function size:0x104 -fn_2_34B8 = .text:0x000034B8; // type:function size:0x380 -fn_2_3838 = .text:0x00003838; // type:function size:0x2EC -fn_2_3B24 = .text:0x00003B24; // type:function size:0x404 -fn_2_3F28 = .text:0x00003F28; // type:function size:0x978 -fn_2_48A0 = .text:0x000048A0; // type:function size:0x1420 -fn_2_5CC0 = .text:0x00005CC0; // type:function size:0x93C -fn_2_65FC = .text:0x000065FC; // type:function size:0x4F8 -fn_2_6AF4 = .text:0x00006AF4; // type:function size:0x50 -fn_2_6B44 = .text:0x00006B44; // type:function size:0x150 -fn_2_6C94 = .text:0x00006C94; // type:function size:0x9AC -fn_2_7640 = .text:0x00007640; // type:function size:0x6C -fn_2_76AC = .text:0x000076AC; // type:function size:0x280 -fn_2_792C = .text:0x0000792C; // type:function size:0x310 -fn_2_7C3C = .text:0x00007C3C; // type:function size:0x78 -fn_2_7CB4 = .text:0x00007CB4; // type:function size:0x1B8 -fn_2_7E6C = .text:0x00007E6C; // type:function size:0x70 -fn_2_7EDC = .text:0x00007EDC; // type:function size:0x574 -fn_2_8450 = .text:0x00008450; // type:function size:0x2EC -fn_2_873C = .text:0x0000873C; // type:function size:0x12C -fn_2_8868 = .text:0x00008868; // type:function size:0x100 -fn_2_8968 = .text:0x00008968; // type:function size:0x1F0 -fn_2_8B58 = .text:0x00008B58; // type:function size:0x100 -fn_2_8C58 = .text:0x00008C58; // type:function size:0x21C -fn_2_8E74 = .text:0x00008E74; // type:function size:0x338 -fn_2_91AC = .text:0x000091AC; // type:function size:0xEC -fn_2_9298 = .text:0x00009298; // type:function size:0x34C -fn_2_95E4 = .text:0x000095E4; // type:function size:0x150 -fn_2_9734 = .text:0x00009734; // type:function size:0x68 -fn_2_979C = .text:0x0000979C; // type:function size:0xF0 -fn_2_988C = .text:0x0000988C; // type:function size:0x118 -fn_2_99A4 = .text:0x000099A4; // type:function size:0x1EC -fn_2_9B90 = .text:0x00009B90; // type:function size:0x170 -fn_2_9D00 = .text:0x00009D00; // type:function size:0x128 -fn_2_9E28 = .text:0x00009E28; // type:function size:0x288 -fn_2_A0B0 = .text:0x0000A0B0; // type:function size:0x268 -fn_2_A318 = .text:0x0000A318; // type:function size:0x58C -fn_2_A8A4 = .text:0x0000A8A4; // type:function size:0x70 -fn_2_A914 = .text:0x0000A914; // type:function size:0x2C -fn_2_A940 = .text:0x0000A940; // type:function size:0x2EC -fn_2_AC2C = .text:0x0000AC2C; // type:function size:0x1164 -fn_2_BD90 = .text:0x0000BD90; // type:function size:0x3A0 -fn_2_C130 = .text:0x0000C130; // type:function size:0x5AC -fn_2_C6DC = .text:0x0000C6DC; // type:function size:0x164 -fn_2_C840 = .text:0x0000C840; // type:function size:0x270 -fn_2_CAB0 = .text:0x0000CAB0; // type:function size:0x5D8 -fn_2_D088 = .text:0x0000D088; // type:function size:0xF8 -fn_2_D180 = .text:0x0000D180; // type:function size:0x268 -fn_2_D3E8 = .text:0x0000D3E8; // type:function size:0x4E4 -fn_2_D8CC = .text:0x0000D8CC; // type:function size:0x300 -fn_2_DBCC = .text:0x0000DBCC; // type:function size:0x250 -fn_2_DE1C = .text:0x0000DE1C; // type:function size:0xA0 -fn_2_DEBC = .text:0x0000DEBC; // type:function size:0x390 -fn_2_E24C = .text:0x0000E24C; // type:function size:0x118 -fn_2_E364 = .text:0x0000E364; // type:function size:0xBC -fn_2_E420 = .text:0x0000E420; // type:function size:0x24C -fn_2_E66C = .text:0x0000E66C; // type:function size:0x30 -fn_2_E69C = .text:0x0000E69C; // type:function size:0x20 -fn_2_E6BC = .text:0x0000E6BC; // type:function size:0x2C -fn_2_E6E8 = .text:0x0000E6E8; // type:function size:0x1090 -fn_2_F778 = .text:0x0000F778; // type:function size:0x4C8 -fn_2_FC40 = .text:0x0000FC40; // type:function size:0x358 -fn_2_FF98 = .text:0x0000FF98; // type:function size:0x2A8 -fn_2_10240 = .text:0x00010240; // type:function size:0x1DC -fn_2_1041C = .text:0x0001041C; // type:function size:0x2F4 -fn_2_10710 = .text:0x00010710; // type:function size:0x8C -fn_2_1079C = .text:0x0001079C; // type:function size:0x12C -fn_2_108C8 = .text:0x000108C8; // type:function size:0xB8 -fn_2_10980 = .text:0x00010980; // type:function size:0x88 -fn_2_10A08 = .text:0x00010A08; // type:function size:0x80 -fn_2_10A88 = .text:0x00010A88; // type:function size:0x924 -fn_2_113AC = .text:0x000113AC; // type:function size:0x504 -fn_2_118B0 = .text:0x000118B0; // type:function size:0x1B8 -fn_2_11A68 = .text:0x00011A68; // type:function size:0x110 -fn_2_11B78 = .text:0x00011B78; // type:function size:0xB8 -fn_2_11C30 = .text:0x00011C30; // type:function size:0x110 -fn_2_11D40 = .text:0x00011D40; // type:function size:0x104 -fn_2_11E44 = .text:0x00011E44; // type:function size:0xB8 -fn_2_11EFC = .text:0x00011EFC; // type:function size:0xB8 -fn_2_11FB4 = .text:0x00011FB4; // type:function size:0x444 -fn_2_123F8 = .text:0x000123F8; // type:function size:0x2D0 -fn_2_126C8 = .text:0x000126C8; // type:function size:0x2C -fn_2_126F4 = .text:0x000126F4; // type:function size:0x43C -fn_2_12B30 = .text:0x00012B30; // type:function size:0x4EC -fn_2_1301C = .text:0x0001301C; // type:function size:0x4F0 -fn_2_1350C = .text:0x0001350C; // type:function size:0x670 -fn_2_13B7C = .text:0x00013B7C; // type:function size:0x634 -fn_2_141B0 = .text:0x000141B0; // type:function size:0x120 -fn_2_142D0 = .text:0x000142D0; // type:function size:0x4 -fn_2_142D4 = .text:0x000142D4; // type:function size:0x36C -fn_2_14640 = .text:0x00014640; // type:function size:0xF8 -fn_2_14738 = .text:0x00014738; // type:function size:0x7C -fn_2_147B4 = .text:0x000147B4; // type:function size:0x660 -_ctors = .ctors:0x00000000; // type:label scope:global data:4byte -_dtors = .dtors:0x00000000; // type:label scope:global data:4byte -lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float -lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float -lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float -lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float -lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float -lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float -lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float -lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float -lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float -lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float -lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float -lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float -lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float -lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float -lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float -lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float -lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float -lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float -lbl_2_rodata_84 = .rodata:0x00000084; // type:object size:0x4 data:float -lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float -lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float -lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float -lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float -lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float -lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_2_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 data:float -lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float -lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float -lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float -lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float -lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float -lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float -lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float -lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float -lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float -lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_2_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_2_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float -lbl_2_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float -lbl_2_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 data:float -lbl_2_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float -lbl_2_rodata_144 = .rodata:0x00000144; // type:object size:0x4 data:float -lbl_2_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float -lbl_2_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 data:float -lbl_2_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_2_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_2_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_2_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_2_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_2_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_2_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_2_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double -lbl_2_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_2_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_2_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_2_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_2_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 data:float -lbl_2_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float -lbl_2_rodata_194 = .rodata:0x00000194; // type:object size:0x4 data:float -lbl_2_rodata_198 = .rodata:0x00000198; // type:object size:0x4 data:float -lbl_2_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 data:float -lbl_2_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_2_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_2_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_2_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_2_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_2_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_2_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_2_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_2_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_2_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_2_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double -lbl_2_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_2_rodata_1DC = .rodata:0x000001DC; // type:object size:0x10 data:4byte -lbl_2_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 data:float -lbl_2_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float -lbl_2_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 data:float -lbl_2_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float -lbl_2_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 data:float -lbl_2_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float -lbl_2_rodata_204 = .rodata:0x00000204; // type:object size:0x4 data:float -lbl_2_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_2_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_2_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_2_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_2_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_2_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_2_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_2_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_2_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_2_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_2_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_2_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_2_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_2_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_2_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_2_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_2_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_2_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_2_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_2_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_2_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_2_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_2_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_2_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_2_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_2_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_2_rodata_290 = .rodata:0x00000290; // type:object size:0x40 data:2byte -lbl_2_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:2byte -lbl_2_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:2byte -lbl_2_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:2byte -lbl_2_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_2_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_2_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_2_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_2_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_2_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_2_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_2_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_2_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_2_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_2_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_2_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_2_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_2_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_2_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_2_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_2_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_2_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_2_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_2_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double -lbl_2_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_2_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_2_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_2_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_2_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_2_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_2_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_2_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_2_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_2_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_2_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_2_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_2_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_2_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_2_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_2_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_2_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_2_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_2_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_2_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_2_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_2_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_2_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_2_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_2_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_2_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_2_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_2_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_2_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_2_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_2_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_2_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_2_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_2_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_2_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_2_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_2_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_2_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_2_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_2_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_2_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_2_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_2_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_2_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_2_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_2_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_2_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_2_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_2_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_2_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_2_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double -lbl_2_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_2_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_2_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_2_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_2_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_2_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_2_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_2_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_2_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_2_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_2_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_2_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_2_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_2_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -lbl_2_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_2_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_2_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_2_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_2_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_2_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_2_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_2_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_2_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_2_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double -lbl_2_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double -lbl_2_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_2_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_2_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_2_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_2_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_2_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_2_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_2_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_2_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_2_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_2_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_2_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_2_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_2_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_2_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_2_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double -lbl_2_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_2_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_2_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_2_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_2_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_2_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_2_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_2_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_2_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_2_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_2_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_2_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_2_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_2_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_2_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_2_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_2_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double -lbl_2_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_2_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_2_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double -lbl_2_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_2_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_2_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_2_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_2_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_2_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_2_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_2_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_2_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_2_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:double -lbl_2_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_2_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_2_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float -lbl_2_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float -lbl_2_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_2_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_2_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_2_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_2_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double -lbl_2_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_2_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_2_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_2_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_2_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_2_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_2_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_2_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_2_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_2_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_2_data_0 = .data:0x00000000; // type:object size:0x4 data:float -lbl_2_data_4 = .data:0x00000004; // type:object size:0x10 -lbl_2_data_14 = .data:0x00000014; // type:object size:0xC -lbl_2_data_20 = .data:0x00000020; // type:object size:0xC -lbl_2_data_2C = .data:0x0000002C; // type:object size:0x4 -lbl_2_data_30 = .data:0x00000030; // type:object size:0xC data:float -lbl_2_data_3C = .data:0x0000003C; // type:object size:0xC -lbl_2_data_48 = .data:0x00000048; // type:object size:0xC data:float -lbl_2_data_54 = .data:0x00000054; // type:object size:0x1B data:string -lbl_2_data_6F = .data:0x0000006F; // type:object size:0x11 -lbl_2_data_80 = .data:0x00000080; // type:object size:0x20 -lbl_2_data_A0 = .data:0x000000A0; // type:object size:0x14 -lbl_2_data_B4 = .data:0x000000B4; // type:object size:0x18 -lbl_2_data_CC = .data:0x000000CC; // type:object size:0x28 -lbl_2_data_F4 = .data:0x000000F4; // type:object size:0x9 data:string -lbl_2_data_FD = .data:0x000000FD; // type:object size:0x9 data:string -lbl_2_data_106 = .data:0x00000106; // type:object size:0x9 data:string -lbl_2_data_10F = .data:0x0000010F; // type:object size:0x9 data:string -lbl_2_data_118 = .data:0x00000118; // type:object size:0xC -lbl_2_data_124 = .data:0x00000124; // type:object size:0x34 data:4byte -lbl_2_data_158 = .data:0x00000158; // type:object size:0x140 -lbl_2_data_298 = .data:0x00000298; // type:object size:0x30 -lbl_2_data_2C8 = .data:0x000002C8; // type:object size:0x30 -jumptable_2_data_2F8 = .data:0x000002F8; // type:object size:0x30 scope:local -lbl_2_data_32C = .data:0x0000032C; // type:object size:0x8 -lbl_2_data_334 = .data:0x00000334; // type:object size:0xF0 -lbl_2_data_424 = .data:0x00000424; // type:object size:0x8 -lbl_2_data_42C = .data:0x0000042C; // type:object size:0x28 -lbl_2_data_454 = .data:0x00000454; // type:object size:0xC data:string -lbl_2_data_460 = .data:0x00000460; // type:object size:0xC -lbl_2_data_46C = .data:0x0000046C; // type:object size:0x5 data:string -lbl_2_data_471 = .data:0x00000471; // type:object size:0x7 -jumptable_2_data_478 = .data:0x00000478; // type:object size:0x20 scope:local -lbl_2_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_2_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_2_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte -lbl_2_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte -lbl_2_bss_10 = .bss:0x00000010; // type:object size:0x4 data:float -lbl_2_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_2_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte -lbl_2_bss_1A = .bss:0x0000001A; // type:object size:0x2 data:2byte -lbl_2_bss_1C = .bss:0x0000001C; // type:object size:0x10 data:4byte -lbl_2_bss_2C = .bss:0x0000002C; // type:object size:0xC data:float -lbl_2_bss_38 = .bss:0x00000038; // type:object size:0xC data:float -lbl_2_bss_44 = .bss:0x00000044; // type:object size:0xC data:float -lbl_2_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float -lbl_2_bss_54 = .bss:0x00000054; // type:object size:0xC data:4byte -lbl_2_bss_60 = .bss:0x00000060; // type:object size:0xC data:float -lbl_2_bss_6C = .bss:0x0000006C; // type:object size:0xC data:float -lbl_2_bss_78 = .bss:0x00000078; // type:object size:0xC data:float -lbl_2_bss_84 = .bss:0x00000084; // type:object size:0x4 data:float -lbl_2_bss_88 = .bss:0x00000088; // type:object size:0x4 data:float -lbl_2_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_2_bss_90 = .bss:0x00000090; // type:object size:0x14 data:4byte -lbl_2_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte -lbl_2_bss_A8 = .bss:0x000000A8; // type:object size:0x2 data:2byte -lbl_2_bss_AA = .bss:0x000000AA; // type:object size:0x8 data:2byte -lbl_2_bss_B2 = .bss:0x000000B2; // type:object size:0x8 data:2byte -lbl_2_bss_BA = .bss:0x000000BA; // type:object size:0x2 data:2byte -lbl_2_bss_BE = .bss:0x000000BE; // type:object size:0x2 data:2byte -lbl_2_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte -lbl_2_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte -lbl_2_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte -lbl_2_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte -lbl_2_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte -lbl_2_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte -lbl_2_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte -lbl_2_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte -lbl_2_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte -lbl_2_bss_E4 = .bss:0x000000E4; // type:object size:0x10 -lbl_2_bss_F4 = .bss:0x000000F4; // type:object size:0x4 data:4byte -lbl_2_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte -lbl_2_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte -lbl_2_bss_100 = .bss:0x00000100; // type:object size:0x8 data:4byte -lbl_2_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte -lbl_2_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte -lbl_2_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte -lbl_2_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte -lbl_2_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte -lbl_2_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte -lbl_2_bss_120 = .bss:0x00000120; // type:object size:0x2 data:2byte -lbl_2_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float -lbl_2_bss_128 = .bss:0x00000128; // type:object size:0x4 data:float -lbl_2_bss_12C = .bss:0x0000012C; // type:object size:0x8 data:float -lbl_2_bss_134 = .bss:0x00000134; // type:object size:0x2 data:2byte -lbl_2_bss_136 = .bss:0x00000136; // type:object size:0x8 -lbl_2_bss_13E = .bss:0x0000013E; // type:object size:0xE2 -lbl_2_bss_220 = .bss:0x00000220; // type:object size:0x18 data:4byte -lbl_2_bss_238 = .bss:0x00000238; // type:object size:0x4 data:4byte -lbl_2_bss_23C = .bss:0x0000023C; // type:object size:0x4 data:4byte -lbl_2_bss_240 = .bss:0x00000240; // type:object size:0x4 data:4byte -lbl_2_bss_244 = .bss:0x00000244; // type:object size:0x4 data:4byte -lbl_2_bss_248 = .bss:0x00000248; // type:object size:0x4 data:4byte -lbl_2_bss_24C = .bss:0x0000024C; // type:object size:0x4 data:4byte -lbl_2_bss_250 = .bss:0x00000250; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m402Dll/splits.txt b/config/GMPJ01_00/rels/m402Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m402Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m402Dll/symbols.txt b/config/GMPJ01_00/rels/m402Dll/symbols.txt deleted file mode 100644 index 5fa3679a..00000000 --- a/config/GMPJ01_00/rels/m402Dll/symbols.txt +++ /dev/null @@ -1,204 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x24 -fn_1_24 = .text:0x00000024; // type:function size:0x88 -fn_1_AC = .text:0x000000AC; // type:function size:0xA4 -fn_1_150 = .text:0x00000150; // type:function size:0x24 -fn_1_174 = .text:0x00000174; // type:function size:0x164 -fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C -fn_1_414 = .text:0x00000414; // type:function size:0x58 -fn_1_46C = .text:0x0000046C; // type:function size:0x114 -fn_1_580 = .text:0x00000580; // type:function size:0x218 -fn_1_798 = .text:0x00000798; // type:function size:0x254 -fn_1_9EC = .text:0x000009EC; // type:function size:0x54 -fn_1_A40 = .text:0x00000A40; // type:function size:0x10C -fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 -fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C -fn_1_1350 = .text:0x00001350; // type:function size:0x8C -fn_1_13DC = .text:0x000013DC; // type:function size:0x334 -fn_1_1710 = .text:0x00001710; // type:function size:0x350 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 -fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 -fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 -fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 -fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 -fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C -fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 -_prolog = .text:0x000023B4; // type:function size:0x54 scope:global -_epilog = .text:0x00002408; // type:function size:0x4C scope:global -fn_1_2454 = .text:0x00002454; // type:function size:0x2F0 -fn_1_2744 = .text:0x00002744; // type:function size:0x64 -fn_1_27A8 = .text:0x000027A8; // type:function size:0xD8 -fn_1_2880 = .text:0x00002880; // type:function size:0xF0 -fn_1_2970 = .text:0x00002970; // type:function size:0x1C0 -fn_1_2B30 = .text:0x00002B30; // type:function size:0x28C -fn_1_2DBC = .text:0x00002DBC; // type:function size:0x380 -fn_1_313C = .text:0x0000313C; // type:function size:0xC8 -fn_1_3204 = .text:0x00003204; // type:function size:0xF8C -fn_1_4190 = .text:0x00004190; // type:function size:0xF4 -fn_1_4284 = .text:0x00004284; // type:function size:0x154 -fn_1_43D8 = .text:0x000043D8; // type:function size:0x1FF0 -fn_1_63C8 = .text:0x000063C8; // type:function size:0x490 -fn_1_6858 = .text:0x00006858; // type:function size:0x4 -fn_1_685C = .text:0x0000685C; // type:function size:0x258 -fn_1_6AB4 = .text:0x00006AB4; // type:function size:0x3B0 -fn_1_6E64 = .text:0x00006E64; // type:function size:0x1BC -fn_1_7020 = .text:0x00007020; // type:function size:0xC4 -fn_1_70E4 = .text:0x000070E4; // type:function size:0x86C -fn_1_7950 = .text:0x00007950; // type:function size:0x19C -fn_1_7AEC = .text:0x00007AEC; // type:function size:0x25C -fn_1_7D48 = .text:0x00007D48; // type:function size:0x4 -fn_1_7D4C = .text:0x00007D4C; // type:function size:0x134 -fn_1_7E80 = .text:0x00007E80; // type:function size:0x4 -fn_1_7E84 = .text:0x00007E84; // type:function size:0x1C4 -fn_1_8048 = .text:0x00008048; // type:function size:0x1D0 -fn_1_8218 = .text:0x00008218; // type:function size:0xE40 -fn_1_9058 = .text:0x00009058; // type:function size:0x1EC -fn_1_9244 = .text:0x00009244; // type:function size:0x8B0 -fn_1_9AF4 = .text:0x00009AF4; // type:function size:0xD0 -_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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte -lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC -lbl_1_data_78 = .data:0x00000078; // type:object size:0x160 -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x10 -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC -lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x4 data:4byte -lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x8 -lbl_1_data_200 = .data:0x00000200; // type:object size:0x18 -lbl_1_data_218 = .data:0x00000218; // type:object size:0x1C -lbl_1_data_234 = .data:0x00000234; // type:object size:0x190 -lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x14 -lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x1A data:string -lbl_1_data_3F2 = .data:0x000003F2; // type:object size:0x9 data:string -lbl_1_data_3FB = .data:0x000003FB; // type:object size:0x6 data:string -lbl_1_data_401 = .data:0x00000401; // type:object size:0x10 data:string -lbl_1_data_411 = .data:0x00000411; // type:object size:0x1F -jumptable_1_data_430 = .data:0x00000430; // type:object size:0x40 scope:local -lbl_1_data_470 = .data:0x00000470; // type:object size:0x17 data:string -lbl_1_data_487 = .data:0x00000487; // type:object size:0x1B data:string -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x24 data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xE -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x100 -lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x40 data:4byte -lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 data:float -lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte -lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte -lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x2 data:2byte -lbl_1_bss_1AA = .bss:0x000001AA; // type:object size:0x2 data:2byte -lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte -lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x4 data:4byte -lbl_1_bss_1B4 = .bss:0x000001B4; // type:object size:0x4 data:4byte -lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC data:4byte -lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC data:4byte -lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC data:4byte -lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC data:4byte -lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0x4 data:4byte -lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x18 data:4byte -lbl_1_bss_204 = .bss:0x00000204; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m403Dll/splits.txt b/config/GMPJ01_00/rels/m403Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m403Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m403Dll/symbols.txt b/config/GMPJ01_00/rels/m403Dll/symbols.txt deleted file mode 100644 index f3ebacb7..00000000 --- a/config/GMPJ01_00/rels/m403Dll/symbols.txt +++ /dev/null @@ -1,256 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x384 -fn_1_424 = .text:0x00000424; // type:function size:0x20 -fn_1_444 = .text:0x00000444; // type:function size:0x3E8 -fn_1_82C = .text:0x0000082C; // type:function size:0x9E8 -fn_1_1214 = .text:0x00001214; // type:function size:0x60 -fn_1_1274 = .text:0x00001274; // type:function size:0x1EC -fn_1_1460 = .text:0x00001460; // type:function size:0x278 -fn_1_16D8 = .text:0x000016D8; // type:function size:0x104 -fn_1_17DC = .text:0x000017DC; // type:function size:0x274 -fn_1_1A50 = .text:0x00001A50; // type:function size:0xA0 -fn_1_1AF0 = .text:0x00001AF0; // type:function size:0x2B8 -fn_1_1DA8 = .text:0x00001DA8; // type:function size:0x28 -fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x388 -fn_1_2158 = .text:0x00002158; // type:function size:0x14C -fn_1_22A4 = .text:0x000022A4; // type:function size:0x2F4 -fn_1_2598 = .text:0x00002598; // type:function size:0xA44 -fn_1_2FDC = .text:0x00002FDC; // type:function size:0x824 -fn_1_3800 = .text:0x00003800; // type:function size:0x94 -fn_1_3894 = .text:0x00003894; // type:function size:0x2EC -fn_1_3B80 = .text:0x00003B80; // type:function size:0x1EC -fn_1_3D6C = .text:0x00003D6C; // type:function size:0xE0 -fn_1_3E4C = .text:0x00003E4C; // type:function size:0x1C0 -fn_1_400C = .text:0x0000400C; // type:function size:0x9C -fn_1_40A8 = .text:0x000040A8; // type:function size:0x480 -fn_1_4528 = .text:0x00004528; // type:function size:0x54 -fn_1_457C = .text:0x0000457C; // type:function size:0x168 -fn_1_46E4 = .text:0x000046E4; // type:function size:0x120 -fn_1_4804 = .text:0x00004804; // type:function size:0x30C -fn_1_4B10 = .text:0x00004B10; // type:function size:0x78 -fn_1_4B88 = .text:0x00004B88; // type:function size:0x11C -fn_1_4CA4 = .text:0x00004CA4; // type:function size:0x78 -fn_1_4D1C = .text:0x00004D1C; // type:function size:0x2D8 -fn_1_4FF4 = .text:0x00004FF4; // type:function size:0x2B8 -fn_1_52AC = .text:0x000052AC; // type:function size:0x154 -fn_1_5400 = .text:0x00005400; // type:function size:0x3E0 -fn_1_57E0 = .text:0x000057E0; // type:function size:0x214 -fn_1_59F4 = .text:0x000059F4; // type:function size:0x198 -fn_1_5B8C = .text:0x00005B8C; // type:function size:0xD8 -fn_1_5C64 = .text:0x00005C64; // type:function size:0xBC -fn_1_5D20 = .text:0x00005D20; // type:function size:0x33C -fn_1_605C = .text:0x0000605C; // type:function size:0x4B0 -fn_1_650C = .text:0x0000650C; // type:function size:0x260 -fn_1_676C = .text:0x0000676C; // type:function size:0x20 -fn_1_678C = .text:0x0000678C; // type:function size:0x84 -fn_1_6810 = .text:0x00006810; // type:function size:0x4 -fn_1_6814 = .text:0x00006814; // type:function size:0x16C -fn_1_6980 = .text:0x00006980; // type:function size:0x318 -fn_1_6C98 = .text:0x00006C98; // type:function size:0x240 -fn_1_6ED8 = .text:0x00006ED8; // type:function size:0x110 -fn_1_6FE8 = .text:0x00006FE8; // type:function size:0x400 -fn_1_73E8 = .text:0x000073E8; // type:function size:0x5B4 -fn_1_799C = .text:0x0000799C; // type:function size:0xFC -fn_1_7A98 = .text:0x00007A98; // type:function size:0x88 -fn_1_7B20 = .text:0x00007B20; // type:function size:0xB4 -fn_1_7BD4 = .text:0x00007BD4; // type:function size:0x4C -fn_1_7C20 = .text:0x00007C20; // type:function size:0x10 -fn_1_7C30 = .text:0x00007C30; // type:function size:0x20 -fn_1_7C50 = .text:0x00007C50; // type:function size:0x10 -fn_1_7C60 = .text:0x00007C60; // type:function size:0xA4 -fn_1_7D04 = .text:0x00007D04; // type:function size:0x274 -fn_1_7F78 = .text:0x00007F78; // type:function size:0x15C -fn_1_80D4 = .text:0x000080D4; // type:function size:0x180 -fn_1_8254 = .text:0x00008254; // type:function size:0x10 -fn_1_8264 = .text:0x00008264; // type:function size:0x10 -fn_1_8274 = .text:0x00008274; // type:function size:0x5C -fn_1_82D0 = .text:0x000082D0; // type:function size:0x1A0 -fn_1_8470 = .text:0x00008470; // type:function size:0x200 -fn_1_8670 = .text:0x00008670; // type:function size:0x30 -fn_1_86A0 = .text:0x000086A0; // type:function size:0x8CC -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x9 data:byte -lbl_1_rodata_A9 = .rodata:0x000000A9; // type:object size:0xB data:byte -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte -lbl_1_data_4 = .data:0x00000004; // type:object size:0xC -lbl_1_data_10 = .data:0x00000010; // type:object size:0xC -lbl_1_data_1C = .data:0x0000001C; // type:object size:0x28 -lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 -lbl_1_data_68 = .data:0x00000068; // type:object size:0x4 data:4byte -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x20 -jumptable_1_data_8C = .data:0x0000008C; // type:object size:0x1C scope:local -jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x20 -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x30 -lbl_1_data_114 = .data:0x00000114; // type:object size:0x20 -lbl_1_data_134 = .data:0x00000134; // type:object size:0x20 -lbl_1_data_154 = .data:0x00000154; // type:object size:0x4 data:4byte -lbl_1_data_158 = .data:0x00000158; // type:object size:0xC0 -lbl_1_data_218 = .data:0x00000218; // type:object size:0xC0 -lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x78 -lbl_1_data_350 = .data:0x00000350; // type:object size:0x78 -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xC0 -lbl_1_data_488 = .data:0x00000488; // type:object size:0xC0 -lbl_1_data_548 = .data:0x00000548; // type:object size:0x78 -lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x78 -lbl_1_data_638 = .data:0x00000638; // type:object size:0x108 -lbl_1_data_740 = .data:0x00000740; // type:object size:0x108 -lbl_1_data_848 = .data:0x00000848; // type:object size:0x108 -lbl_1_data_950 = .data:0x00000950; // type:object size:0x108 -lbl_1_data_A58 = .data:0x00000A58; // type:object size:0x30 -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x48 -lbl_1_data_AD0 = .data:0x00000AD0; // type:object size:0xC data:4byte -lbl_1_data_ADC = .data:0x00000ADC; // type:object size:0xC data:4byte -lbl_1_data_AE8 = .data:0x00000AE8; // type:object size:0x14 data:4byte -lbl_1_data_AFC = .data:0x00000AFC; // type:object size:0x18 -lbl_1_data_B14 = .data:0x00000B14; // type:object size:0x18 -lbl_1_data_B2C = .data:0x00000B2C; // type:object size:0x48 -lbl_1_data_B74 = .data:0x00000B74; // type:object size:0x30 -lbl_1_data_BA4 = .data:0x00000BA4; // type:object size:0x18 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte -lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:2byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0xC data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte -lbl_1_bss_2A = .bss:0x0000002A; // type:object size:0x2 data:2byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte -lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x2 data:2byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x8 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x18 -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:float -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte -lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x14 -lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte -lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m404Dll/splits.txt b/config/GMPJ01_00/rels/m404Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m404Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m404Dll/symbols.txt b/config/GMPJ01_00/rels/m404Dll/symbols.txt deleted file mode 100644 index b3dd1045..00000000 --- a/config/GMPJ01_00/rels/m404Dll/symbols.txt +++ /dev/null @@ -1,154 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2DC -fn_1_37C = .text:0x0000037C; // type:function size:0x10 -fn_1_38C = .text:0x0000038C; // type:function size:0x10 -fn_1_39C = .text:0x0000039C; // type:function size:0x64 -fn_1_400 = .text:0x00000400; // type:function size:0x384 -fn_1_784 = .text:0x00000784; // type:function size:0x5C -fn_1_7E0 = .text:0x000007E0; // type:function size:0x2BC -fn_1_A9C = .text:0x00000A9C; // type:function size:0x234 -fn_1_CD0 = .text:0x00000CD0; // type:function size:0x30 -fn_1_D00 = .text:0x00000D00; // type:function size:0xEC -fn_1_DEC = .text:0x00000DEC; // type:function size:0x5C -fn_1_E48 = .text:0x00000E48; // type:function size:0x8C -fn_1_ED4 = .text:0x00000ED4; // type:function size:0x9C -fn_1_F70 = .text:0x00000F70; // type:function size:0x1F0 -fn_1_1160 = .text:0x00001160; // type:function size:0x1E4 -fn_1_1344 = .text:0x00001344; // type:function size:0x7B8 -fn_1_1AFC = .text:0x00001AFC; // type:function size:0x184 -fn_1_1C80 = .text:0x00001C80; // type:function size:0xA8 -fn_1_1D28 = .text:0x00001D28; // type:function size:0xD0 -fn_1_1DF8 = .text:0x00001DF8; // type:function size:0x38C -fn_1_2184 = .text:0x00002184; // type:function size:0xD38 -fn_1_2EBC = .text:0x00002EBC; // type:function size:0xB7C -fn_1_3A38 = .text:0x00003A38; // type:function size:0x3F4 -fn_1_3E2C = .text:0x00003E2C; // type:function size:0x104 -fn_1_3F30 = .text:0x00003F30; // type:function size:0x52C -fn_1_445C = .text:0x0000445C; // type:function size:0x44 -fn_1_44A0 = .text:0x000044A0; // type:function size:0x7DC -fn_1_4C7C = .text:0x00004C7C; // type:function size:0x2D0 -fn_1_4F4C = .text:0x00004F4C; // type:function size:0x32C -fn_1_5278 = .text:0x00005278; // type:function size:0x2C4 -fn_1_553C = .text:0x0000553C; // type:function size:0x5C -fn_1_5598 = .text:0x00005598; // type:function size:0x58 -fn_1_55F0 = .text:0x000055F0; // type:function size:0x4 -fn_1_55F4 = .text:0x000055F4; // type:function size:0x1AC -fn_1_57A0 = .text:0x000057A0; // type:function size:0x4 -fn_1_57A4 = .text:0x000057A4; // type:function size:0x140 -fn_1_58E4 = .text:0x000058E4; // type:function size:0x480 -fn_1_5D64 = .text:0x00005D64; // type:function size:0x110 -fn_1_5E74 = .text:0x00005E74; // type:function size:0x208 -fn_1_607C = .text:0x0000607C; // type:function size:0x1CC -fn_1_6248 = .text:0x00006248; // type:function size:0x1F8 -fn_1_6440 = .text:0x00006440; // type:function size:0x4C -fn_1_648C = .text:0x0000648C; // type:function size:0x250 -fn_1_66DC = .text:0x000066DC; // type:function size:0x5AC -_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:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:2byte -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x20 data:byte -lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x1 data:byte -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x1 data:byte -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:0x4 data:float -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_data_0 = .data:0x00000000; // type:object size:0x248 -lbl_1_data_248 = .data:0x00000248; // type:object size:0x260 -lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0x290 -lbl_1_data_738 = .data:0x00000738; // type:object size:0x38 data:float -lbl_1_data_770 = .data:0x00000770; // type:object size:0xC data:float -lbl_1_data_77C = .data:0x0000077C; // type:object size:0xC data:float -lbl_1_data_788 = .data:0x00000788; // type:object size:0x4 -lbl_1_data_78C = .data:0x0000078C; // type:object size:0xC -lbl_1_data_798 = .data:0x00000798; // type:object size:0xC -lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x24 -lbl_1_data_7C8 = .data:0x000007C8; // type:object size:0x4 data:4byte -jumptable_1_data_7CC = .data:0x000007CC; // type:object size:0x28 scope:local -lbl_1_data_7F4 = .data:0x000007F4; // type:object size:0x1C data:string -lbl_1_data_810 = .data:0x00000810; // type:object size:0xC -lbl_1_data_81C = .data:0x0000081C; // type:object size:0x30 -lbl_1_data_84C = .data:0x0000084C; // type:object size:0x20 -lbl_1_data_86C = .data:0x0000086C; // type:object size:0x20 -lbl_1_data_88C = .data:0x0000088C; // type:object size:0x4 data:4byte -lbl_1_data_890 = .data:0x00000890; // type:object size:0x28 -lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x20 -lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x10 -lbl_1_data_8E8 = .data:0x000008E8; // type:object size:0xC -lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x8 data:wstring -lbl_1_data_8FC = .data:0x000008FC; // type:object size:0x18 -lbl_1_data_914 = .data:0x00000914; // type:object size:0x1C -lbl_1_data_930 = .data:0x00000930; // type:object size:0x20 -lbl_1_data_950 = .data:0x00000950; // type:object size:0x20 -lbl_1_data_970 = .data:0x00000970; // type:object size:0x7 data:string -lbl_1_data_977 = .data:0x00000977; // type:object size:0x7 data:string -lbl_1_data_97E = .data:0x0000097E; // type:object size:0x7 data:string -lbl_1_data_985 = .data:0x00000985; // type:object size:0x7 data:string -lbl_1_data_98C = .data:0x0000098C; // type:object size:0x10 -lbl_1_data_99C = .data:0x0000099C; // type:object size:0x10 -lbl_1_data_9AC = .data:0x000009AC; // type:object size:0x30 -lbl_1_data_9DC = .data:0x000009DC; // type:object size:0x18 data:4byte -lbl_1_data_9F4 = .data:0x000009F4; // type:object size:0x18 data:4byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0xC data:float -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x10 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x10 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m405Dll/splits.txt b/config/GMPJ01_00/rels/m405Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m405Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m405Dll/symbols.txt b/config/GMPJ01_00/rels/m405Dll/symbols.txt deleted file mode 100644 index d64b7049..00000000 --- a/config/GMPJ01_00/rels/m405Dll/symbols.txt +++ /dev/null @@ -1,254 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x24 -fn_1_24 = .text:0x00000024; // type:function size:0x88 -fn_1_AC = .text:0x000000AC; // type:function size:0xA4 -fn_1_150 = .text:0x00000150; // type:function size:0x24 -fn_1_174 = .text:0x00000174; // type:function size:0x164 -fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C -fn_1_414 = .text:0x00000414; // type:function size:0x58 -fn_1_46C = .text:0x0000046C; // type:function size:0x114 -fn_1_580 = .text:0x00000580; // type:function size:0x218 -fn_1_798 = .text:0x00000798; // type:function size:0x254 -fn_1_9EC = .text:0x000009EC; // type:function size:0x54 -fn_1_A40 = .text:0x00000A40; // type:function size:0x10C -fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 -fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C -fn_1_1350 = .text:0x00001350; // type:function size:0x8C -fn_1_13DC = .text:0x000013DC; // type:function size:0x334 -fn_1_1710 = .text:0x00001710; // type:function size:0x350 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 -fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 -fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 -fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 -fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 -fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C -fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 -fn_1_23B4 = .text:0x000023B4; // type:function size:0xCC -fn_1_2480 = .text:0x00002480; // type:function size:0x88 -fn_1_2508 = .text:0x00002508; // type:function size:0x20C -fn_1_2714 = .text:0x00002714; // type:function size:0xF8 -fn_1_280C = .text:0x0000280C; // type:function size:0x2A0 -fn_1_2AAC = .text:0x00002AAC; // type:function size:0xCF8 -fn_1_37A4 = .text:0x000037A4; // type:function size:0x778 -fn_1_3F1C = .text:0x00003F1C; // type:function size:0x24 -fn_1_3F40 = .text:0x00003F40; // type:function size:0xE4 -fn_1_4024 = .text:0x00004024; // type:function size:0x6DC -fn_1_4700 = .text:0x00004700; // type:function size:0x828 -fn_1_4F28 = .text:0x00004F28; // type:function size:0x4DC -fn_1_5404 = .text:0x00005404; // type:function size:0x12C -fn_1_5530 = .text:0x00005530; // type:function size:0x4C -fn_1_557C = .text:0x0000557C; // type:function size:0xE8 -fn_1_5664 = .text:0x00005664; // type:function size:0xF8 -_prolog = .text:0x0000575C; // type:function size:0x54 scope:global -_epilog = .text:0x000057B0; // type:function size:0x4C scope:global -fn_1_57FC = .text:0x000057FC; // type:function size:0xA4 -fn_1_58A0 = .text:0x000058A0; // type:function size:0x288 -fn_1_5B28 = .text:0x00005B28; // type:function size:0x214 -fn_1_5D3C = .text:0x00005D3C; // type:function size:0x90 -fn_1_5DCC = .text:0x00005DCC; // type:function size:0x274 -fn_1_6040 = .text:0x00006040; // type:function size:0x57C -fn_1_65BC = .text:0x000065BC; // type:function size:0x26C -fn_1_6828 = .text:0x00006828; // type:function size:0xA4 -fn_1_68CC = .text:0x000068CC; // type:function size:0x330 -fn_1_6BFC = .text:0x00006BFC; // type:function size:0xD90 -fn_1_798C = .text:0x0000798C; // type:function size:0x828 -fn_1_81B4 = .text:0x000081B4; // type:function size:0x93C -fn_1_8AF0 = .text:0x00008AF0; // type:function size:0x798 -fn_1_9288 = .text:0x00009288; // type:function size:0x1A88 -fn_1_AD10 = .text:0x0000AD10; // type:function size:0x3CC -fn_1_B0DC = .text:0x0000B0DC; // type:function size:0x4EC -fn_1_B5C8 = .text:0x0000B5C8; // type:function size:0x16C -_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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x1 data:byte -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0x30 data:2byte -lbl_1_data_40 = .data:0x00000040; // type:object size:0x60 -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x48 -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x1 data:byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x14 -lbl_1_data_100 = .data:0x00000100; // type:object size:0xC -lbl_1_data_10C = .data:0x0000010C; // type:object size:0xC data:4byte -lbl_1_data_118 = .data:0x00000118; // type:object size:0xC data:4byte -lbl_1_data_124 = .data:0x00000124; // type:object size:0xC data:4byte -lbl_1_data_130 = .data:0x00000130; // type:object size:0xC data:4byte -lbl_1_data_13C = .data:0x0000013C; // type:object size:0xC data:4byte -lbl_1_data_148 = .data:0x00000148; // type:object size:0xC data:4byte -lbl_1_data_154 = .data:0x00000154; // type:object size:0xC -lbl_1_data_160 = .data:0x00000160; // type:object size:0xC -lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 -lbl_1_data_170 = .data:0x00000170; // type:object size:0xC -lbl_1_data_17C = .data:0x0000017C; // type:object size:0xC -lbl_1_data_188 = .data:0x00000188; // type:object size:0x100 -lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 -lbl_1_data_290 = .data:0x00000290; // type:object size:0x20 -lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x10 -lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x50 -lbl_1_data_310 = .data:0x00000310; // type:object size:0x18 data:4byte -lbl_1_data_328 = .data:0x00000328; // type:object size:0x14 -lbl_1_data_33C = .data:0x0000033C; // type:object size:0xA -lbl_1_data_346 = .data:0x00000346; // type:object size:0xA -lbl_1_data_350 = .data:0x00000350; // type:object size:0x8 -lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 -lbl_1_data_360 = .data:0x00000360; // type:object size:0x8 -lbl_1_data_368 = .data:0x00000368; // type:object size:0x8 -lbl_1_data_370 = .data:0x00000370; // type:object size:0x50 -lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x50 -lbl_1_data_410 = .data:0x00000410; // type:object size:0xC data:string -lbl_1_data_41C = .data:0x0000041C; // type:object size:0x16 data:string -lbl_1_data_432 = .data:0x00000432; // type:object size:0x1D data:string -lbl_1_data_44F = .data:0x0000044F; // type:object size:0x1D -jumptable_1_data_46C = .data:0x0000046C; // type:object size:0x24 scope:local -lbl_1_data_490 = .data:0x00000490; // type:object size:0x24 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x18 data:float -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x18 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x18 data:float -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x18 data:float -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:float -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:float -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:float -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x2 data:2byte -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x2 data:2byte -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x1 data:byte -lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x500 data:float -lbl_1_bss_5AC = .bss:0x000005AC; // type:object size:0x2C data:4byte -lbl_1_bss_5D8 = .bss:0x000005D8; // type:object size:0x4 data:4byte -lbl_1_bss_5DC = .bss:0x000005DC; // type:object size:0x4 data:4byte -lbl_1_bss_5E0 = .bss:0x000005E0; // type:object size:0x4 data:4byte -lbl_1_bss_5E4 = .bss:0x000005E4; // type:object size:0x4 data:4byte -lbl_1_bss_5E8 = .bss:0x000005E8; // type:object size:0x100 -lbl_1_bss_6E8 = .bss:0x000006E8; // type:object size:0x40 data:4byte -lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x4 data:float -lbl_1_bss_72C = .bss:0x0000072C; // type:object size:0x4 data:4byte -lbl_1_bss_730 = .bss:0x00000730; // type:object size:0x4 data:4byte -lbl_1_bss_734 = .bss:0x00000734; // type:object size:0x2 data:2byte -lbl_1_bss_736 = .bss:0x00000736; // type:object size:0x2 data:2byte -lbl_1_bss_738 = .bss:0x00000738; // type:object size:0x4 data:4byte -lbl_1_bss_73C = .bss:0x0000073C; // type:object size:0x4 data:4byte -lbl_1_bss_740 = .bss:0x00000740; // type:object size:0x4 data:4byte -lbl_1_bss_744 = .bss:0x00000744; // type:object size:0xC data:float -lbl_1_bss_750 = .bss:0x00000750; // type:object size:0xC data:4byte -lbl_1_bss_75C = .bss:0x0000075C; // type:object size:0xC data:float -lbl_1_bss_768 = .bss:0x00000768; // type:object size:0xC data:4byte -lbl_1_bss_774 = .bss:0x00000774; // type:object size:0x4 data:4byte -lbl_1_bss_778 = .bss:0x00000778; // type:object size:0x18 data:4byte -lbl_1_bss_790 = .bss:0x00000790; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m406Dll/splits.txt b/config/GMPJ01_00/rels/m406Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m406Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m406Dll/symbols.txt b/config/GMPJ01_00/rels/m406Dll/symbols.txt deleted file mode 100644 index 67393891..00000000 --- a/config/GMPJ01_00/rels/m406Dll/symbols.txt +++ /dev/null @@ -1,434 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x318 -fn_1_3B8 = .text:0x000003B8; // type:function size:0x54 -fn_1_40C = .text:0x0000040C; // type:function size:0xD00 -fn_1_110C = .text:0x0000110C; // type:function size:0x5C -fn_1_1168 = .text:0x00001168; // type:function size:0xC4 -fn_1_122C = .text:0x0000122C; // type:function size:0x10 -fn_1_123C = .text:0x0000123C; // type:function size:0x38 -fn_1_1274 = .text:0x00001274; // type:function size:0x10 -fn_1_1284 = .text:0x00001284; // type:function size:0x38 -fn_1_12BC = .text:0x000012BC; // type:function size:0x84 -fn_1_1340 = .text:0x00001340; // type:function size:0x1DC -fn_1_151C = .text:0x0000151C; // type:function size:0x4 -fn_1_1520 = .text:0x00001520; // type:function size:0x4 -fn_1_1524 = .text:0x00001524; // type:function size:0xAC -fn_1_15D0 = .text:0x000015D0; // type:function size:0x26C -fn_1_183C = .text:0x0000183C; // type:function size:0x35C -fn_1_1B98 = .text:0x00001B98; // type:function size:0x10 -fn_1_1BA8 = .text:0x00001BA8; // type:function size:0x118 -fn_1_1CC0 = .text:0x00001CC0; // type:function size:0x250 -fn_1_1F10 = .text:0x00001F10; // type:function size:0x3F8 -fn_1_2308 = .text:0x00002308; // type:function size:0x624 -fn_1_292C = .text:0x0000292C; // type:function size:0x2C0 -fn_1_2BEC = .text:0x00002BEC; // type:function size:0x38 -fn_1_2C24 = .text:0x00002C24; // type:function size:0x440 -fn_1_3064 = .text:0x00003064; // type:function size:0xF4 -fn_1_3158 = .text:0x00003158; // type:function size:0xF2C -fn_1_4084 = .text:0x00004084; // type:function size:0x4E4 -fn_1_4568 = .text:0x00004568; // type:function size:0x54 -fn_1_45BC = .text:0x000045BC; // type:function size:0x3A8 -fn_1_4964 = .text:0x00004964; // type:function size:0x1810 -fn_1_6174 = .text:0x00006174; // type:function size:0x190 -fn_1_6304 = .text:0x00006304; // type:function size:0x1F4 -fn_1_64F8 = .text:0x000064F8; // type:function size:0x1FC -fn_1_66F4 = .text:0x000066F4; // type:function size:0xD8 -fn_1_67CC = .text:0x000067CC; // type:function size:0x1A0 -fn_1_696C = .text:0x0000696C; // type:function size:0x54 -fn_1_69C0 = .text:0x000069C0; // type:function size:0x84 -fn_1_6A44 = .text:0x00006A44; // type:function size:0x118 -fn_1_6B5C = .text:0x00006B5C; // type:function size:0x58 -fn_1_6BB4 = .text:0x00006BB4; // type:function size:0x370 -fn_1_6F24 = .text:0x00006F24; // type:function size:0xD8 -fn_1_6FFC = .text:0x00006FFC; // type:function size:0x180 -fn_1_717C = .text:0x0000717C; // type:function size:0x48 -fn_1_71C4 = .text:0x000071C4; // type:function size:0x134 -fn_1_72F8 = .text:0x000072F8; // type:function size:0x3B0 -fn_1_76A8 = .text:0x000076A8; // type:function size:0x70 -fn_1_7718 = .text:0x00007718; // type:function size:0xD8 -fn_1_77F0 = .text:0x000077F0; // type:function size:0x1C0 -fn_1_79B0 = .text:0x000079B0; // type:function size:0x48 -fn_1_79F8 = .text:0x000079F8; // type:function size:0x134 -fn_1_7B2C = .text:0x00007B2C; // type:function size:0x70 -fn_1_7B9C = .text:0x00007B9C; // type:function size:0xB0 -fn_1_7C4C = .text:0x00007C4C; // type:function size:0x160 -fn_1_7DAC = .text:0x00007DAC; // type:function size:0x4 -fn_1_7DB0 = .text:0x00007DB0; // type:function size:0x120 -fn_1_7ED0 = .text:0x00007ED0; // type:function size:0xB0 -fn_1_7F80 = .text:0x00007F80; // type:function size:0x180 -fn_1_8100 = .text:0x00008100; // type:function size:0x4 -fn_1_8104 = .text:0x00008104; // type:function size:0x140 -fn_1_8244 = .text:0x00008244; // type:function size:0x84 -fn_1_82C8 = .text:0x000082C8; // type:function size:0xCD0 -fn_1_8F98 = .text:0x00008F98; // type:function size:0x248 -fn_1_91E0 = .text:0x000091E0; // type:function size:0x2DC -fn_1_94BC = .text:0x000094BC; // type:function size:0x4 -fn_1_94C0 = .text:0x000094C0; // type:function size:0xAB8 -fn_1_9F78 = .text:0x00009F78; // type:function size:0x300 -fn_1_A278 = .text:0x0000A278; // type:function size:0x50 -fn_1_A2C8 = .text:0x0000A2C8; // type:function size:0xAEC -fn_1_ADB4 = .text:0x0000ADB4; // type:function size:0x350 -fn_1_B104 = .text:0x0000B104; // type:function size:0xDC -fn_1_B1E0 = .text:0x0000B1E0; // type:function size:0x7C -fn_1_B25C = .text:0x0000B25C; // type:function size:0x1C0 -fn_1_B41C = .text:0x0000B41C; // type:function size:0x54 -fn_1_B470 = .text:0x0000B470; // type:function size:0x4 -fn_1_B474 = .text:0x0000B474; // type:function size:0x488 -fn_1_B8FC = .text:0x0000B8FC; // type:function size:0x31C -fn_1_BC18 = .text:0x0000BC18; // type:function size:0x8DC -fn_1_C4F4 = .text:0x0000C4F4; // type:function size:0x378 -fn_1_C86C = .text:0x0000C86C; // type:function size:0x4C8 -fn_1_CD34 = .text:0x0000CD34; // type:function size:0xA4 -fn_1_CDD8 = .text:0x0000CDD8; // type:function size:0x14C -fn_1_CF24 = .text:0x0000CF24; // type:function size:0x74 -fn_1_CF98 = .text:0x0000CF98; // type:function size:0xD4 -fn_1_D06C = .text:0x0000D06C; // type:function size:0xD0 -fn_1_D13C = .text:0x0000D13C; // type:function size:0x34C -fn_1_D488 = .text:0x0000D488; // type:function size:0x90 -fn_1_D518 = .text:0x0000D518; // type:function size:0xB4 -fn_1_D5CC = .text:0x0000D5CC; // type:function size:0x90 -fn_1_D65C = .text:0x0000D65C; // type:function size:0x254 -fn_1_D8B0 = .text:0x0000D8B0; // type:function size:0x5C -fn_1_D90C = .text:0x0000D90C; // type:function size:0x470 -fn_1_DD7C = .text:0x0000DD7C; // type:function size:0xE4 -fn_1_DE60 = .text:0x0000DE60; // type:function size:0x3B4 -fn_1_E214 = .text:0x0000E214; // type:function size:0xF80 -fn_1_F194 = .text:0x0000F194; // type:function size:0x500 -fn_1_F694 = .text:0x0000F694; // type:function size:0x3BC -fn_1_FA50 = .text:0x0000FA50; // type:function size:0xC0C -fn_1_1065C = .text:0x0001065C; // type:function size:0xE8 -fn_1_10744 = .text:0x00010744; // type:function size:0x914 -fn_1_11058 = .text:0x00011058; // type:function size:0x448 -fn_1_114A0 = .text:0x000114A0; // type:function size:0x31C -fn_1_117BC = .text:0x000117BC; // type:function size:0x228 -fn_1_119E4 = .text:0x000119E4; // type:function size:0x5E0 -fn_1_11FC4 = .text:0x00011FC4; // type:function size:0x1D0 -fn_1_12194 = .text:0x00012194; // type:function size:0xDC -fn_1_12270 = .text:0x00012270; // type:function size:0x4EC -fn_1_1275C = .text:0x0001275C; // type:function size:0x5C -fn_1_127B8 = .text:0x000127B8; // type:function size:0x22C -fn_1_129E4 = .text:0x000129E4; // type:function size:0xD4 -fn_1_12AB8 = .text:0x00012AB8; // type:function size:0x48 -fn_1_12B00 = .text:0x00012B00; // type:function size:0x38 -fn_1_12B38 = .text:0x00012B38; // type:function size:0x8C -fn_1_12BC4 = .text:0x00012BC4; // type:function size:0xAE4 -fn_1_136A8 = .text:0x000136A8; // type:function size:0x4 -fn_1_136AC = .text:0x000136AC; // type:function size:0x3DC -fn_1_13A88 = .text:0x00013A88; // type:function size:0x6C -fn_1_13AF4 = .text:0x00013AF4; // type:function size:0x11C -fn_1_13C10 = .text:0x00013C10; // type:function size:0x7E4 -fn_1_143F4 = .text:0x000143F4; // type:function size:0x330 -_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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -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_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // 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:double -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:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -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_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x1 data:byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x8C data:float -lbl_1_data_8C = .data:0x0000008C; // type:object size:0x24 -jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x40 scope:local -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x348 -lbl_1_data_438 = .data:0x00000438; // type:object size:0x348 -lbl_1_data_780 = .data:0x00000780; // type:object size:0x24 data:float -lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x2 data:2byte -lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0x1C -lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x1C -lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x18 -lbl_1_data_7F8 = .data:0x000007F8; // type:object size:0xC -lbl_1_data_804 = .data:0x00000804; // type:object size:0xC -lbl_1_data_810 = .data:0x00000810; // type:object size:0x4 -lbl_1_data_814 = .data:0x00000814; // type:object size:0xC -lbl_1_data_820 = .data:0x00000820; // type:object size:0xC -lbl_1_data_82C = .data:0x0000082C; // type:object size:0xC -lbl_1_data_838 = .data:0x00000838; // type:object size:0xC -lbl_1_data_844 = .data:0x00000844; // type:object size:0xC -lbl_1_data_850 = .data:0x00000850; // type:object size:0x20 -lbl_1_data_870 = .data:0x00000870; // type:object size:0x1F data:string -lbl_1_data_88F = .data:0x0000088F; // type:object size:0x1 data:byte -lbl_1_data_893 = .data:0x00000893; // type:object size:0x1 data:byte -lbl_1_data_897 = .data:0x00000897; // type:object size:0x1 data:byte -lbl_1_data_89B = .data:0x0000089B; // type:object size:0x1 data:byte -lbl_1_data_89F = .data:0x0000089F; // type:object size:0x5 data:byte -lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x10 -lbl_1_data_8B4 = .data:0x000008B4; // type:object size:0x10 -lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0xC -lbl_1_data_8D0 = .data:0x000008D0; // type:object size:0xC -lbl_1_data_8DC = .data:0x000008DC; // type:object size:0x4 -lbl_1_data_8E0 = .data:0x000008E0; // type:object size:0x30 -lbl_1_data_910 = .data:0x00000910; // type:object size:0x20 -lbl_1_data_930 = .data:0x00000930; // type:object size:0x30 -lbl_1_data_960 = .data:0x00000960; // type:object size:0x348 -lbl_1_data_CA8 = .data:0x00000CA8; // type:object size:0x348 -lbl_1_data_FF0 = .data:0x00000FF0; // type:object size:0x10 -lbl_1_data_1000 = .data:0x00001000; // type:object size:0x19 data:string -lbl_1_data_1019 = .data:0x00001019; // type:object size:0x19 data:string -lbl_1_data_1032 = .data:0x00001032; // type:object size:0x1A data:string -lbl_1_data_104C = .data:0x0000104C; // type:object size:0x1C -lbl_1_data_1068 = .data:0x00001068; // type:object size:0x10 -lbl_1_data_1078 = .data:0x00001078; // type:object size:0x28 -lbl_1_data_10A0 = .data:0x000010A0; // type:object size:0x80 -lbl_1_data_1120 = .data:0x00001120; // type:object size:0x20 -lbl_1_data_1140 = .data:0x00001140; // type:object size:0x8 -lbl_1_data_1148 = .data:0x00001148; // type:object size:0x1C data:string -lbl_1_data_1164 = .data:0x00001164; // type:object size:0x90 -lbl_1_data_11F4 = .data:0x000011F4; // type:object size:0x4 data:4byte -lbl_1_data_11F8 = .data:0x000011F8; // type:object size:0x20 -lbl_1_data_1218 = .data:0x00001218; // type:object size:0x18 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0xC data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x50 -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte -lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte -lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte -lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte -lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte -lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte -lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte -lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte -lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x4 data:4byte -lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x8 data:4byte -lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x18 data:float -lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x8 data:4byte -lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:float -lbl_1_bss_104 = .bss:0x00000104; // type:object size:0xC0 -lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x4 data:4byte -lbl_1_bss_1C8 = .bss:0x000001C8; // type:object size:0x4 data:4byte -lbl_1_bss_1CC = .bss:0x000001CC; // type:object size:0x4 data:4byte -lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC -lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC -lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0xC -lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x2 data:2byte -lbl_1_bss_1F6 = .bss:0x000001F6; // type:object size:0x2 data:2byte -lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m407dll/splits.txt b/config/GMPJ01_00/rels/m407dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m407dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m407dll/symbols.txt b/config/GMPJ01_00/rels/m407dll/symbols.txt deleted file mode 100644 index 4fb3dbd8..00000000 --- a/config/GMPJ01_00/rels/m407dll/symbols.txt +++ /dev/null @@ -1,271 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x54 -fn_1_F4 = .text:0x000000F4; // type:function size:0xA0 -fn_1_194 = .text:0x00000194; // type:function size:0x50 -fn_1_1E4 = .text:0x000001E4; // type:function size:0x54 -fn_1_238 = .text:0x00000238; // type:function size:0x54 -fn_1_28C = .text:0x0000028C; // type:function size:0x54 -fn_1_2E0 = .text:0x000002E0; // type:function size:0x54 -fn_1_334 = .text:0x00000334; // type:function size:0x54 -fn_1_388 = .text:0x00000388; // type:function size:0x3C -fn_1_3C4 = .text:0x000003C4; // type:function size:0x40 -fn_1_404 = .text:0x00000404; // type:function size:0xBC -fn_1_4C0 = .text:0x000004C0; // type:function size:0x48 -fn_1_508 = .text:0x00000508; // type:function size:0x34 -fn_1_53C = .text:0x0000053C; // type:function size:0x2C -fn_1_568 = .text:0x00000568; // type:function size:0xC0 -fn_1_628 = .text:0x00000628; // type:function size:0x24 -fn_1_64C = .text:0x0000064C; // type:function size:0x350 -fn_1_99C = .text:0x0000099C; // type:function size:0x80 -fn_1_A1C = .text:0x00000A1C; // type:function size:0x6C -fn_1_A88 = .text:0x00000A88; // type:function size:0x4 -fn_1_A8C = .text:0x00000A8C; // type:function size:0x1CC -fn_1_C58 = .text:0x00000C58; // type:function size:0x9C -fn_1_CF4 = .text:0x00000CF4; // type:function size:0xC0 -fn_1_DB4 = .text:0x00000DB4; // type:function size:0x1D8 -fn_1_F8C = .text:0x00000F8C; // type:function size:0xE8 -fn_1_1074 = .text:0x00001074; // type:function size:0x158 -fn_1_11CC = .text:0x000011CC; // type:function size:0x218 -fn_1_13E4 = .text:0x000013E4; // type:function size:0x7C -fn_1_1460 = .text:0x00001460; // type:function size:0x90 -fn_1_14F0 = .text:0x000014F0; // type:function size:0xE8 -fn_1_15D8 = .text:0x000015D8; // type:function size:0x54 -fn_1_162C = .text:0x0000162C; // type:function size:0x460 -fn_1_1A8C = .text:0x00001A8C; // type:function size:0x90 -fn_1_1B1C = .text:0x00001B1C; // type:function size:0x18C -fn_1_1CA8 = .text:0x00001CA8; // type:function size:0x4 -fn_1_1CAC = .text:0x00001CAC; // type:function size:0x28 -fn_1_1CD4 = .text:0x00001CD4; // type:function size:0x34 -fn_1_1D08 = .text:0x00001D08; // type:function size:0x28 -fn_1_1D30 = .text:0x00001D30; // type:function size:0x34 -fn_1_1D64 = .text:0x00001D64; // type:function size:0x10 -fn_1_1D74 = .text:0x00001D74; // type:function size:0x14 -fn_1_1D88 = .text:0x00001D88; // type:function size:0x28 -fn_1_1DB0 = .text:0x00001DB0; // type:function size:0x16C -fn_1_1F1C = .text:0x00001F1C; // type:function size:0x108 -fn_1_2024 = .text:0x00002024; // type:function size:0x330 -fn_1_2354 = .text:0x00002354; // type:function size:0x19C -fn_1_24F0 = .text:0x000024F0; // type:function size:0x74 -fn_1_2564 = .text:0x00002564; // type:function size:0x5C -fn_1_25C0 = .text:0x000025C0; // type:function size:0x10C -fn_1_26CC = .text:0x000026CC; // type:function size:0xA4 -fn_1_2770 = .text:0x00002770; // type:function size:0x110 -fn_1_2880 = .text:0x00002880; // type:function size:0x38 -fn_1_28B8 = .text:0x000028B8; // type:function size:0x1C -fn_1_28D4 = .text:0x000028D4; // type:function size:0x10 -fn_1_28E4 = .text:0x000028E4; // type:function size:0x28 -fn_1_290C = .text:0x0000290C; // type:function size:0x24 -fn_1_2930 = .text:0x00002930; // type:function size:0x24C -fn_1_2B7C = .text:0x00002B7C; // type:function size:0x67C -fn_1_31F8 = .text:0x000031F8; // type:function size:0x168 -fn_1_3360 = .text:0x00003360; // type:function size:0x4 -fn_1_3364 = .text:0x00003364; // type:function size:0x140 -fn_1_34A4 = .text:0x000034A4; // type:function size:0x22C -fn_1_36D0 = .text:0x000036D0; // type:function size:0xE0 -fn_1_37B0 = .text:0x000037B0; // type:function size:0x318 -fn_1_3AC8 = .text:0x00003AC8; // type:function size:0xA0 -fn_1_3B68 = .text:0x00003B68; // type:function size:0x50 -fn_1_3BB8 = .text:0x00003BB8; // type:function size:0x170 -fn_1_3D28 = .text:0x00003D28; // type:function size:0x24 -fn_1_3D4C = .text:0x00003D4C; // type:function size:0xE8 -fn_1_3E34 = .text:0x00003E34; // type:function size:0x148 -fn_1_3F7C = .text:0x00003F7C; // type:function size:0x74 -fn_1_3FF0 = .text:0x00003FF0; // type:function size:0x4 -fn_1_3FF4 = .text:0x00003FF4; // type:function size:0x100 -fn_1_40F4 = .text:0x000040F4; // type:function size:0xD8 -fn_1_41CC = .text:0x000041CC; // type:function size:0x328 -fn_1_44F4 = .text:0x000044F4; // type:function size:0x50 -fn_1_4544 = .text:0x00004544; // type:function size:0x118 -fn_1_465C = .text:0x0000465C; // type:function size:0x24 -fn_1_4680 = .text:0x00004680; // type:function size:0x6C -fn_1_46EC = .text:0x000046EC; // type:function size:0x11C -fn_1_4808 = .text:0x00004808; // type:function size:0x50 -fn_1_4858 = .text:0x00004858; // type:function size:0x4 -fn_1_485C = .text:0x0000485C; // type:function size:0x124 -fn_1_4980 = .text:0x00004980; // type:function size:0x1FC -fn_1_4B7C = .text:0x00004B7C; // type:function size:0xC0 -fn_1_4C3C = .text:0x00004C3C; // type:function size:0x30 -fn_1_4C6C = .text:0x00004C6C; // type:function size:0xA0 -fn_1_4D0C = .text:0x00004D0C; // type:function size:0x48 -fn_1_4D54 = .text:0x00004D54; // type:function size:0x138 -fn_1_4E8C = .text:0x00004E8C; // type:function size:0x120 -fn_1_4FAC = .text:0x00004FAC; // type:function size:0x13C -fn_1_50E8 = .text:0x000050E8; // type:function size:0xFC -fn_1_51E4 = .text:0x000051E4; // type:function size:0xC8 -fn_1_52AC = .text:0x000052AC; // type:function size:0x10C -fn_1_53B8 = .text:0x000053B8; // type:function size:0x1BC -fn_1_5574 = .text:0x00005574; // type:function size:0xBC -fn_1_5630 = .text:0x00005630; // type:function size:0x1D4 -fn_1_5804 = .text:0x00005804; // type:function size:0x27C -fn_1_5A80 = .text:0x00005A80; // type:function size:0x130 -fn_1_5BB0 = .text:0x00005BB0; // type:function size:0xAC -fn_1_5C5C = .text:0x00005C5C; // type:function size:0x270 -fn_1_5ECC = .text:0x00005ECC; // type:function size:0x74 -fn_1_5F40 = .text:0x00005F40; // type:function size:0x50 -fn_1_5F90 = .text:0x00005F90; // type:function size:0x24 -fn_1_5FB4 = .text:0x00005FB4; // type:function size:0x30 -fn_1_5FE4 = .text:0x00005FE4; // type:function size:0x1BC -fn_1_61A0 = .text:0x000061A0; // type:function size:0x78 -fn_1_6218 = .text:0x00006218; // type:function size:0x88 -fn_1_62A0 = .text:0x000062A0; // type:function size:0x164 -_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_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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:0x20 -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // 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:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:double -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:4byte -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0xC data:4byte -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x100 -lbl_1_data_100 = .data:0x00000100; // type:object size:0x20 -lbl_1_data_120 = .data:0x00000120; // type:object size:0x1C -lbl_1_data_13C = .data:0x0000013C; // type:object size:0x20 -lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 -lbl_1_data_184 = .data:0x00000184; // type:object size:0x8 -lbl_1_data_18C = .data:0x0000018C; // type:object size:0xC -lbl_1_data_198 = .data:0x00000198; // type:object size:0x34 data:4byte -lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x30 -lbl_1_data_1FC = .data:0x000001FC; // type:object size:0xC data:float -lbl_1_data_208 = .data:0x00000208; // type:object size:0xC -lbl_1_data_214 = .data:0x00000214; // type:object size:0x4 -lbl_1_data_218 = .data:0x00000218; // type:object size:0x10 -lbl_1_data_228 = .data:0x00000228; // type:object size:0x10 data:4byte -lbl_1_data_238 = .data:0x00000238; // type:object size:0x20 data:4byte -lbl_1_data_258 = .data:0x00000258; // type:object size:0x14 -lbl_1_data_26C = .data:0x0000026C; // type:object size:0xC -lbl_1_data_278 = .data:0x00000278; // type:object size:0x10 -lbl_1_data_288 = .data:0x00000288; // type:object size:0x14 -lbl_1_data_29C = .data:0x0000029C; // type:object size:0xC -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x34 -lbl_1_data_2DC = .data:0x000002DC; // type:object size:0x10 -lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xC -lbl_1_data_2F8 = .data:0x000002F8; // type:object size:0xC -lbl_1_data_304 = .data:0x00000304; // type:object size:0x4 -lbl_1_data_308 = .data:0x00000308; // type:object size:0xC -lbl_1_data_314 = .data:0x00000314; // type:object size:0xC -lbl_1_data_320 = .data:0x00000320; // type:object size:0x4 -lbl_1_data_324 = .data:0x00000324; // type:object size:0xC -lbl_1_data_330 = .data:0x00000330; // type:object size:0xC -lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 -lbl_1_data_340 = .data:0x00000340; // type:object size:0xC -lbl_1_data_34C = .data:0x0000034C; // type:object size:0xC -lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 -lbl_1_data_360 = .data:0x00000360; // type:object size:0xC -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x8 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x10 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x2 data:2byte -lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x2A -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte -lbl_1_bss_66 = .bss:0x00000066; // type:object size:0x2 data:2byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x1E30 data:2byte -lbl_1_bss_1E98 = .bss:0x00001E98; // type:object size:0xF18 -lbl_1_bss_2DB0 = .bss:0x00002DB0; // type:object size:0xA10 -lbl_1_bss_37C0 = .bss:0x000037C0; // type:object size:0x8 data:4byte -lbl_1_bss_37C8 = .bss:0x000037C8; // type:object size:0x10 -lbl_1_bss_37D8 = .bss:0x000037D8; // type:object size:0x8 data:4byte -lbl_1_bss_37E0 = .bss:0x000037E0; // type:object size:0x190 -lbl_1_bss_3970 = .bss:0x00003970; // type:object size:0x8 data:4byte -lbl_1_bss_3978 = .bss:0x00003978; // type:object size:0x2 data:2byte -lbl_1_bss_397C = .bss:0x0000397C; // type:object size:0x4 data:4byte -lbl_1_bss_3980 = .bss:0x00003980; // type:object size:0x8 data:4byte -lbl_1_bss_3988 = .bss:0x00003988; // type:object size:0x4 data:4byte -lbl_1_bss_398C = .bss:0x0000398C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m408Dll/splits.txt b/config/GMPJ01_00/rels/m408Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m408Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m408Dll/symbols.txt b/config/GMPJ01_00/rels/m408Dll/symbols.txt deleted file mode 100644 index 0553b57b..00000000 --- a/config/GMPJ01_00/rels/m408Dll/symbols.txt +++ /dev/null @@ -1,549 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x47C -fn_1_51C = .text:0x0000051C; // type:function size:0x50 -fn_1_56C = .text:0x0000056C; // type:function size:0x438 -fn_1_9A4 = .text:0x000009A4; // type:function size:0x4C -fn_1_9F0 = .text:0x000009F0; // type:function size:0x50 -fn_1_A40 = .text:0x00000A40; // type:function size:0x298 -fn_1_CD8 = .text:0x00000CD8; // type:function size:0x220 -fn_1_EF8 = .text:0x00000EF8; // type:function size:0x3A8 -fn_1_12A0 = .text:0x000012A0; // type:function size:0x1EC -fn_1_148C = .text:0x0000148C; // type:function size:0x434 -fn_1_18C0 = .text:0x000018C0; // type:function size:0x80 -fn_1_1940 = .text:0x00001940; // type:function size:0x120 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x98 -fn_1_1AF8 = .text:0x00001AF8; // type:function size:0xF0 -fn_1_1BE8 = .text:0x00001BE8; // type:function size:0x26C -fn_1_1E54 = .text:0x00001E54; // type:function size:0x68 -fn_1_1EBC = .text:0x00001EBC; // type:function size:0x718 -fn_1_25D4 = .text:0x000025D4; // type:function size:0x110 -fn_1_26E4 = .text:0x000026E4; // type:function size:0x8C8 -fn_1_2FAC = .text:0x00002FAC; // type:function size:0x924 -fn_1_38D0 = .text:0x000038D0; // type:function size:0x5B0 -fn_1_3E80 = .text:0x00003E80; // type:function size:0xBD8 -fn_1_4A58 = .text:0x00004A58; // type:function size:0x640 -fn_1_5098 = .text:0x00005098; // type:function size:0x44C -fn_1_54E4 = .text:0x000054E4; // type:function size:0x1A0 -fn_1_5684 = .text:0x00005684; // type:function size:0x41C -fn_1_5AA0 = .text:0x00005AA0; // type:function size:0x14 -fn_1_5AB4 = .text:0x00005AB4; // type:function size:0x318 -fn_1_5DCC = .text:0x00005DCC; // type:function size:0x430 -fn_1_61FC = .text:0x000061FC; // type:function size:0x344 -fn_1_6540 = .text:0x00006540; // type:function size:0x284 -fn_1_67C4 = .text:0x000067C4; // type:function size:0xA4 -fn_1_6868 = .text:0x00006868; // type:function size:0x10 -fn_1_6878 = .text:0x00006878; // type:function size:0x10 -fn_1_6888 = .text:0x00006888; // type:function size:0x10 -fn_1_6898 = .text:0x00006898; // type:function size:0x4 -fn_1_689C = .text:0x0000689C; // type:function size:0x8 -fn_1_68A4 = .text:0x000068A4; // type:function size:0x4 -fn_1_68A8 = .text:0x000068A8; // type:function size:0x1C -fn_1_68C4 = .text:0x000068C4; // type:function size:0x364 -fn_1_6C28 = .text:0x00006C28; // type:function size:0x324 -fn_1_6F4C = .text:0x00006F4C; // type:function size:0x66C -fn_1_75B8 = .text:0x000075B8; // type:function size:0x260 -fn_1_7818 = .text:0x00007818; // type:function size:0xC0 -fn_1_78D8 = .text:0x000078D8; // type:function size:0x748 -fn_1_8020 = .text:0x00008020; // type:function size:0x15C -fn_1_817C = .text:0x0000817C; // type:function size:0x348 -fn_1_84C4 = .text:0x000084C4; // type:function size:0x378 -fn_1_883C = .text:0x0000883C; // type:function size:0x11C -fn_1_8958 = .text:0x00008958; // type:function size:0xC8 -fn_1_8A20 = .text:0x00008A20; // type:function size:0x58C -fn_1_8FAC = .text:0x00008FAC; // type:function size:0x568 -fn_1_9514 = .text:0x00009514; // type:function size:0x25C -fn_1_9770 = .text:0x00009770; // type:function size:0x258 -fn_1_99C8 = .text:0x000099C8; // type:function size:0x96C -fn_1_A334 = .text:0x0000A334; // type:function size:0x48 -fn_1_A37C = .text:0x0000A37C; // type:function size:0x16C -fn_1_A4E8 = .text:0x0000A4E8; // type:function size:0x3AC -fn_1_A894 = .text:0x0000A894; // type:function size:0x760 -fn_1_AFF4 = .text:0x0000AFF4; // type:function size:0x70C -fn_1_B700 = .text:0x0000B700; // type:function size:0x494 -fn_1_BB94 = .text:0x0000BB94; // type:function size:0x24C -fn_1_BDE0 = .text:0x0000BDE0; // type:function size:0x5E0 -fn_1_C3C0 = .text:0x0000C3C0; // type:function size:0x7C -fn_1_C43C = .text:0x0000C43C; // type:function size:0x10 -fn_1_C44C = .text:0x0000C44C; // type:function size:0x98 -fn_1_C4E4 = .text:0x0000C4E4; // type:function size:0x4C -fn_1_C530 = .text:0x0000C530; // type:function size:0x7E4 -fn_1_CD14 = .text:0x0000CD14; // type:function size:0x154 -fn_1_CE68 = .text:0x0000CE68; // type:function size:0x84 -fn_1_CEEC = .text:0x0000CEEC; // type:function size:0x118 -fn_1_D004 = .text:0x0000D004; // type:function size:0x6EC -fn_1_D6F0 = .text:0x0000D6F0; // type:function size:0x288 -fn_1_D978 = .text:0x0000D978; // type:function size:0xF4 -fn_1_DA6C = .text:0x0000DA6C; // type:function size:0x564 -fn_1_DFD0 = .text:0x0000DFD0; // type:function size:0x340 -fn_1_E310 = .text:0x0000E310; // type:function size:0x6A4 -fn_1_E9B4 = .text:0x0000E9B4; // type:function size:0x544 -fn_1_EEF8 = .text:0x0000EEF8; // type:function size:0x174 -fn_1_F06C = .text:0x0000F06C; // type:function size:0x444 -fn_1_F4B0 = .text:0x0000F4B0; // type:function size:0xB4 -fn_1_F564 = .text:0x0000F564; // type:function size:0x33C -fn_1_F8A0 = .text:0x0000F8A0; // type:function size:0x2F8 -fn_1_FB98 = .text:0x0000FB98; // type:function size:0x8EC -fn_1_10484 = .text:0x00010484; // type:function size:0x3AC -fn_1_10830 = .text:0x00010830; // type:function size:0x330 -fn_1_10B60 = .text:0x00010B60; // type:function size:0xB10 -fn_1_11670 = .text:0x00011670; // type:function size:0x54 -fn_1_116C4 = .text:0x000116C4; // type:function size:0xBC -fn_1_11780 = .text:0x00011780; // type:function size:0x150 -fn_1_118D0 = .text:0x000118D0; // type:function size:0x90 -fn_1_11960 = .text:0x00011960; // type:function size:0x4DC -fn_1_11E3C = .text:0x00011E3C; // type:function size:0x518 -fn_1_12354 = .text:0x00012354; // type:function size:0x74 -fn_1_123C8 = .text:0x000123C8; // type:function size:0x2A8 -fn_1_12670 = .text:0x00012670; // type:function size:0x4 -fn_1_12674 = .text:0x00012674; // type:function size:0x12C -fn_1_127A0 = .text:0x000127A0; // type:function size:0x4CC -fn_1_12C6C = .text:0x00012C6C; // type:function size:0x3F0 -fn_1_1305C = .text:0x0001305C; // type:function size:0x47C -fn_1_134D8 = .text:0x000134D8; // type:function size:0x348 -fn_1_13820 = .text:0x00013820; // type:function size:0x568 -fn_1_13D88 = .text:0x00013D88; // type:function size:0x2E4 -fn_1_1406C = .text:0x0001406C; // type:function size:0x464 -fn_1_144D0 = .text:0x000144D0; // type:function size:0x8E4 -fn_1_14DB4 = .text:0x00014DB4; // type:function size:0x3F0 -fn_1_151A4 = .text:0x000151A4; // type:function size:0x43C -fn_1_155E0 = .text:0x000155E0; // type:function size:0x38 -fn_1_15618 = .text:0x00015618; // type:function size:0x40 -fn_1_15658 = .text:0x00015658; // type:function size:0x4F8 -fn_1_15B50 = .text:0x00015B50; // type:function size:0x7C -fn_1_15BCC = .text:0x00015BCC; // type:function size:0xD8 -fn_1_15CA4 = .text:0x00015CA4; // type:function size:0xC0 -fn_1_15D64 = .text:0x00015D64; // type:function size:0x568 -fn_1_162CC = .text:0x000162CC; // type:function size:0xFC -_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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x10 data:4byte -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x30 data:4byte -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x10 data:4byte -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:0x4 data:float -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:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x20 data:4byte -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x38 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x48 -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x10 data:4byte -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x10 data:4byte -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x28 data:2byte -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x10 data:4byte -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x10 data:4byte -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x8 data:double -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 data:double -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:double -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x8 data:double -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x8 data:double -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x8 data:double -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 data:double -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float -lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x8 data:double -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float -lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x8 data:double -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x8 data:double -lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double -lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x8 data:double -lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float -lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float -lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x4 data:float -lbl_1_rodata_694 = .rodata:0x00000694; // type:object size:0x4 data:float -lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float -lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float -lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float -lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float -lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float -lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:double -lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:double -lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x4 data:float -lbl_1_rodata_6C4 = .rodata:0x000006C4; // type:object size:0x4 data:float -lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x4 data:float -lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0x4 data:float -lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x4 data:float -lbl_1_rodata_6D4 = .rodata:0x000006D4; // type:object size:0x4 data:float -lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float -lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float -lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x8 data:double -lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float -lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float -lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x4 data:float -lbl_1_rodata_6F4 = .rodata:0x000006F4; // type:object size:0x4 data:float -lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float -lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0x4 data:float -lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x8 data:double -lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 data:double -lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x4 data:float -lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x8 data:double -lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double -lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float -lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float -lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float -lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float -lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float -lbl_1_rodata_73C = .rodata:0x0000073C; // type:object size:0x4 data:float -lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x4 data:float -lbl_1_rodata_744 = .rodata:0x00000744; // type:object size:0x4 data:float -lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 data:double -lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float -lbl_1_rodata_754 = .rodata:0x00000754; // type:object size:0x4 data:float -lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x8 data:double -lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 data:float -lbl_1_rodata_764 = .rodata:0x00000764; // type:object size:0x4 data:float -lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x4 data:float -lbl_1_rodata_76C = .rodata:0x0000076C; // type:object size:0x4 data:float -lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x4 data:float -lbl_1_rodata_774 = .rodata:0x00000774; // type:object size:0x4 data:float -lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x4 data:float -lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0x4 data:float -lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x4 data:float -lbl_1_rodata_784 = .rodata:0x00000784; // type:object size:0x4 data:float -lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x8 data:double -lbl_1_rodata_790 = .rodata:0x00000790; // type:object size:0x4 data:float -lbl_1_rodata_794 = .rodata:0x00000794; // type:object size:0x4 data:float -lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x4 data:float -lbl_1_rodata_79C = .rodata:0x0000079C; // type:object size:0x4 data:float -lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x4 data:float -lbl_1_rodata_7A4 = .rodata:0x000007A4; // type:object size:0x4 data:float -lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float -lbl_1_rodata_7AC = .rodata:0x000007AC; // type:object size:0x4 data:float -lbl_1_rodata_7B0 = .rodata:0x000007B0; // type:object size:0x4 data:float -lbl_1_rodata_7B4 = .rodata:0x000007B4; // type:object size:0x4 data:float -lbl_1_rodata_7B8 = .rodata:0x000007B8; // type:object size:0x4 data:float -lbl_1_rodata_7BC = .rodata:0x000007BC; // type:object size:0x4 data:float -lbl_1_rodata_7C0 = .rodata:0x000007C0; // type:object size:0x8 data:double -lbl_1_rodata_7C8 = .rodata:0x000007C8; // type:object size:0x4 data:float -lbl_1_rodata_7CC = .rodata:0x000007CC; // type:object size:0x4 data:float -lbl_1_rodata_7D0 = .rodata:0x000007D0; // type:object size:0x4 data:float -lbl_1_rodata_7D8 = .rodata:0x000007D8; // type:object size:0x8 data:double -lbl_1_rodata_7E0 = .rodata:0x000007E0; // type:object size:0x8 data:double -lbl_1_rodata_7E8 = .rodata:0x000007E8; // type:object size:0x4 data:float -lbl_1_rodata_7EC = .rodata:0x000007EC; // type:object size:0x4 data:float -lbl_1_rodata_7F0 = .rodata:0x000007F0; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 -lbl_1_data_20 = .data:0x00000020; // type:object size:0xC -lbl_1_data_2C = .data:0x0000002C; // type:object size:0xC -lbl_1_data_38 = .data:0x00000038; // type:object size:0x20 -lbl_1_data_58 = .data:0x00000058; // type:object size:0xC -lbl_1_data_64 = .data:0x00000064; // type:object size:0xC -lbl_1_data_70 = .data:0x00000070; // type:object size:0xC -lbl_1_data_7C = .data:0x0000007C; // type:object size:0x7 data:string -lbl_1_data_83 = .data:0x00000083; // type:object size:0x7 data:string -lbl_1_data_8A = .data:0x0000008A; // type:object size:0x7 data:string -lbl_1_data_91 = .data:0x00000091; // type:object size:0x7 data:string -lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x28 -lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x20 -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x1C -lbl_1_data_104 = .data:0x00000104; // type:object size:0x40 -lbl_1_data_144 = .data:0x00000144; // type:object size:0x58 -lbl_1_data_19C = .data:0x0000019C; // type:object size:0x4 data:4byte -lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x24 -lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x24 -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x24 -lbl_1_data_20C = .data:0x0000020C; // type:object size:0x2E8 -lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x10 -lbl_1_data_504 = .data:0x00000504; // type:object size:0x4 -lbl_1_data_508 = .data:0x00000508; // type:object size:0xC -lbl_1_data_514 = .data:0x00000514; // type:object size:0xC -lbl_1_data_520 = .data:0x00000520; // type:object size:0x30 -jumptable_1_data_550 = .data:0x00000550; // type:object size:0x24 scope:local -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x14 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:float -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte -lbl_1_bss_62 = .bss:0x00000062; // type:object size:0x2 data:2byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte -lbl_1_bss_66 = .bss:0x00000066; // type:object size:0x6 data:2byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x8 data:4byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0xC -lbl_1_bss_94 = .bss:0x00000094; // type:object size:0xC -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x50 data:4byte -lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0xC data:float -lbl_1_bss_100 = .bss:0x00000100; // type:object size:0xC data:float -lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte -lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x8 data:4byte -lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x2 data:2byte -lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte -lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x8 data:4byte -lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x8 data:4byte -lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte -lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte -lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte -lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x4 data:4byte -lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte -lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x2 data:2byte -lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x1C data:4byte -lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte -lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0xC00 -lbl_1_bss_D6C = .bss:0x00000D6C; // type:object size:0x30 -lbl_1_bss_D9C = .bss:0x00000D9C; // type:object size:0x4 data:4byte -lbl_1_bss_DA0 = .bss:0x00000DA0; // type:object size:0x4 data:4byte -lbl_1_bss_DA4 = .bss:0x00000DA4; // type:object size:0x6800 data:float -lbl_1_bss_75A4 = .bss:0x000075A4; // type:object size:0x4 data:4byte -lbl_1_bss_75A8 = .bss:0x000075A8; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m409Dll/splits.txt b/config/GMPJ01_00/rels/m409Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m409Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m409Dll/symbols.txt b/config/GMPJ01_00/rels/m409Dll/symbols.txt deleted file mode 100644 index 40e875cb..00000000 --- a/config/GMPJ01_00/rels/m409Dll/symbols.txt +++ /dev/null @@ -1,332 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x394 -fn_1_434 = .text:0x00000434; // type:function size:0xA8 -fn_1_4DC = .text:0x000004DC; // type:function size:0x48 -fn_1_524 = .text:0x00000524; // type:function size:0x65C -fn_1_B80 = .text:0x00000B80; // type:function size:0x25C -fn_1_DDC = .text:0x00000DDC; // type:function size:0x194 -fn_1_F70 = .text:0x00000F70; // type:function size:0x178 -fn_1_10E8 = .text:0x000010E8; // type:function size:0xA8C -fn_1_1B74 = .text:0x00001B74; // type:function size:0x524 -fn_1_2098 = .text:0x00002098; // type:function size:0x354 -fn_1_23EC = .text:0x000023EC; // type:function size:0x28 -fn_1_2414 = .text:0x00002414; // type:function size:0x40 -fn_1_2454 = .text:0x00002454; // type:function size:0x30 -fn_1_2484 = .text:0x00002484; // type:function size:0x948 -fn_1_2DCC = .text:0x00002DCC; // type:function size:0xA74 -fn_1_3840 = .text:0x00003840; // type:function size:0x148 -fn_1_3988 = .text:0x00003988; // type:function size:0x150 -fn_1_3AD8 = .text:0x00003AD8; // type:function size:0x5CC -fn_1_40A4 = .text:0x000040A4; // type:function size:0x7C -fn_1_4120 = .text:0x00004120; // type:function size:0x5C -fn_1_417C = .text:0x0000417C; // type:function size:0x374 -fn_1_44F0 = .text:0x000044F0; // type:function size:0xB0C -fn_1_4FFC = .text:0x00004FFC; // type:function size:0x40C -fn_1_5408 = .text:0x00005408; // type:function size:0x1D8 -fn_1_55E0 = .text:0x000055E0; // type:function size:0x1FC -fn_1_57DC = .text:0x000057DC; // type:function size:0x104 -fn_1_58E0 = .text:0x000058E0; // type:function size:0x138 -fn_1_5A18 = .text:0x00005A18; // type:function size:0x544 -fn_1_5F5C = .text:0x00005F5C; // type:function size:0x60 -fn_1_5FBC = .text:0x00005FBC; // type:function size:0x38 -fn_1_5FF4 = .text:0x00005FF4; // type:function size:0x38 -fn_1_602C = .text:0x0000602C; // type:function size:0x5DC -fn_1_6608 = .text:0x00006608; // type:function size:0xCC -fn_1_66D4 = .text:0x000066D4; // type:function size:0xA4 -fn_1_6778 = .text:0x00006778; // type:function size:0x68 -fn_1_67E0 = .text:0x000067E0; // type:function size:0x120 -fn_1_6900 = .text:0x00006900; // type:function size:0x28 -fn_1_6928 = .text:0x00006928; // type:function size:0xA1C -fn_1_7344 = .text:0x00007344; // type:function size:0xCA4 -fn_1_7FE8 = .text:0x00007FE8; // type:function size:0x850 -fn_1_8838 = .text:0x00008838; // type:function size:0x4D0 -fn_1_8D08 = .text:0x00008D08; // type:function size:0x64 -fn_1_8D6C = .text:0x00008D6C; // type:function size:0x454 -fn_1_91C0 = .text:0x000091C0; // type:function size:0x46C -fn_1_962C = .text:0x0000962C; // type:function size:0xF58 -fn_1_A584 = .text:0x0000A584; // type:function size:0x43C -fn_1_A9C0 = .text:0x0000A9C0; // type:function size:0x1F4 -fn_1_ABB4 = .text:0x0000ABB4; // type:function size:0x54 -fn_1_AC08 = .text:0x0000AC08; // type:function size:0x138 -fn_1_AD40 = .text:0x0000AD40; // type:function size:0x154 -fn_1_AE94 = .text:0x0000AE94; // type:function size:0x78 -fn_1_AF0C = .text:0x0000AF0C; // type:function size:0x11C -fn_1_B028 = .text:0x0000B028; // type:function size:0x78 -fn_1_B0A0 = .text:0x0000B0A0; // type:function size:0x2D8 -fn_1_B378 = .text:0x0000B378; // type:function size:0x198 -fn_1_B510 = .text:0x0000B510; // type:function size:0xD8 -fn_1_B5E8 = .text:0x0000B5E8; // type:function size:0xBC -fn_1_B6A4 = .text:0x0000B6A4; // type:function size:0x33C -fn_1_B9E0 = .text:0x0000B9E0; // type:function size:0x4B0 -fn_1_BE90 = .text:0x0000BE90; // type:function size:0xA8 -fn_1_BF38 = .text:0x0000BF38; // type:function size:0x50 -fn_1_BF88 = .text:0x0000BF88; // type:function size:0x138 -fn_1_C0C0 = .text:0x0000C0C0; // type:function size:0xA4 -fn_1_C164 = .text:0x0000C164; // type:function size:0xA34 -fn_1_CB98 = .text:0x0000CB98; // type:function size:0x118 -fn_1_CCB0 = .text:0x0000CCB0; // type:function size:0x1C -fn_1_CCCC = .text:0x0000CCCC; // type:function size:0x2C -fn_1_CCF8 = .text:0x0000CCF8; // type:function size:0x184 -fn_1_CE7C = .text:0x0000CE7C; // type:function size:0xA0 -fn_1_CF1C = .text:0x0000CF1C; // type:function size:0xA8 -fn_1_CFC4 = .text:0x0000CFC4; // type:function size:0x8C -fn_1_D050 = .text:0x0000D050; // type:function size:0x98 -fn_1_D0E8 = .text:0x0000D0E8; // type:function size:0x348 -fn_1_D430 = .text:0x0000D430; // type:function size:0x618 -fn_1_DA48 = .text:0x0000DA48; // type:function size:0x370 -fn_1_DDB8 = .text:0x0000DDB8; // type:function size:0x13C -fn_1_DEF4 = .text:0x0000DEF4; // type:function size:0x2C -fn_1_DF20 = .text:0x0000DF20; // type:function size:0x308 -fn_1_E228 = .text:0x0000E228; // type:function size:0x80 -fn_1_E2A8 = .text:0x0000E2A8; // type:function size:0x520 -fn_1_E7C8 = .text:0x0000E7C8; // type:function size:0x50 -fn_1_E818 = .text:0x0000E818; // type:function size:0x44 -fn_1_E85C = .text:0x0000E85C; // type:function size:0x70 -fn_1_E8CC = .text:0x0000E8CC; // type:function size:0x74 -fn_1_E940 = .text:0x0000E940; // type:function size:0x5C -fn_1_E99C = .text:0x0000E99C; // type:function size:0x88 -fn_1_EA24 = .text:0x0000EA24; // type:function size:0x8C -fn_1_EAB0 = .text:0x0000EAB0; // type:function size:0x44 -fn_1_EAF4 = .text:0x0000EAF4; // type:function size:0x70 -fn_1_EB64 = .text:0x0000EB64; // type:function size:0x74 -fn_1_EBD8 = .text:0x0000EBD8; // type:function size:0x44 -fn_1_EC1C = .text:0x0000EC1C; // type:function size:0x70 -fn_1_EC8C = .text:0x0000EC8C; // type:function size:0x74 -fn_1_ED00 = .text:0x0000ED00; // type:function size:0x44 -fn_1_ED44 = .text:0x0000ED44; // type:function size:0x70 -fn_1_EDB4 = .text:0x0000EDB4; // type:function size:0x70 -fn_1_EE24 = .text:0x0000EE24; // type:function size:0x44 -fn_1_EE68 = .text:0x0000EE68; // type:function size:0x70 -fn_1_EED8 = .text:0x0000EED8; // type:function size:0x70 -fn_1_EF48 = .text:0x0000EF48; // type:function size:0x5C -fn_1_EFA4 = .text:0x0000EFA4; // type:function size:0x80 -fn_1_F024 = .text:0x0000F024; // type:function size:0x74 -fn_1_F098 = .text:0x0000F098; // type:function size:0x78 -fn_1_F110 = .text:0x0000F110; // type:function size:0x6C -fn_1_F17C = .text:0x0000F17C; // type:function size:0x78 -fn_1_F1F4 = .text:0x0000F1F4; // type:function size:0x98 -fn_1_F28C = .text:0x0000F28C; // type:function size:0x6C -fn_1_F2F8 = .text:0x0000F2F8; // type:function size:0x78 -fn_1_F370 = .text:0x0000F370; // type:function size:0x98 -fn_1_F408 = .text:0x0000F408; // type:function size:0x70 -fn_1_F478 = .text:0x0000F478; // type:function size:0x78 -fn_1_F4F0 = .text:0x0000F4F0; // type:function size:0x98 -_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:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x4 data:float -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_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:0x30 data:4byte -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x100 -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x30 data:4byte -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x10 data:byte -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -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_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 -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x70 data:float -lbl_1_data_BC = .data:0x000000BC; // type:object size:0x4 data:4byte -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x4 data:4byte -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x9 data:string -lbl_1_data_CD = .data:0x000000CD; // type:object size:0x9 data:string -lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x3 data:string -lbl_1_data_D9 = .data:0x000000D9; // type:object size:0x10 data:string -lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x26 data:string -lbl_1_data_10F = .data:0x0000010F; // type:object size:0x2D -lbl_1_data_13C = .data:0x0000013C; // type:object size:0x1C -lbl_1_data_158 = .data:0x00000158; // type:object size:0x20 -lbl_1_data_178 = .data:0x00000178; // type:object size:0x40 -lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x14 -jumptable_1_data_1CC = .data:0x000001CC; // type:object size:0x20 scope:local -lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x4 data:4byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte -lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x2 data:2byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte -lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x1 data:byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x1 data:byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:float -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x1 data:byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x1 data:byte -lbl_1_bss_21 = .bss:0x00000021; // type:object size:0x1 data:byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x9C data:2byte -lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte -lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 data:2byte -lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x8 data:4byte -lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x14 data:4byte -lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x2 data:2byte -lbl_1_bss_106 = .bss:0x00000106; // type:object size:0x2 data:2byte -lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x2 data:2byte -lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x280 data:float -lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x10 -lbl_1_bss_39C = .bss:0x0000039C; // type:object size:0x4 data:4byte -lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x10 diff --git a/config/GMPJ01_00/rels/m410Dll/splits.txt b/config/GMPJ01_00/rels/m410Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m410Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m410Dll/symbols.txt b/config/GMPJ01_00/rels/m410Dll/symbols.txt deleted file mode 100644 index 64fb64e4..00000000 --- a/config/GMPJ01_00/rels/m410Dll/symbols.txt +++ /dev/null @@ -1,317 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x444 -fn_1_4E4 = .text:0x000004E4; // type:function size:0xC4 -fn_1_5A8 = .text:0x000005A8; // type:function size:0x94 -fn_1_63C = .text:0x0000063C; // type:function size:0x16C -fn_1_7A8 = .text:0x000007A8; // type:function size:0x314 -fn_1_ABC = .text:0x00000ABC; // type:function size:0x330 -fn_1_DEC = .text:0x00000DEC; // type:function size:0x204 -fn_1_FF0 = .text:0x00000FF0; // type:function size:0x3AC -fn_1_139C = .text:0x0000139C; // type:function size:0x2AC -fn_1_1648 = .text:0x00001648; // type:function size:0x380 -fn_1_19C8 = .text:0x000019C8; // type:function size:0xB4 -fn_1_1A7C = .text:0x00001A7C; // type:function size:0x6F0 -fn_1_216C = .text:0x0000216C; // type:function size:0x1C -fn_1_2188 = .text:0x00002188; // type:function size:0x664 -fn_1_27EC = .text:0x000027EC; // type:function size:0x18 -fn_1_2804 = .text:0x00002804; // type:function size:0x18 -fn_1_281C = .text:0x0000281C; // type:function size:0x18 -fn_1_2834 = .text:0x00002834; // type:function size:0x18 -fn_1_284C = .text:0x0000284C; // type:function size:0x18 -fn_1_2864 = .text:0x00002864; // type:function size:0x18 -fn_1_287C = .text:0x0000287C; // type:function size:0x30 -fn_1_28AC = .text:0x000028AC; // type:function size:0x30 -fn_1_28DC = .text:0x000028DC; // type:function size:0x38 -fn_1_2914 = .text:0x00002914; // type:function size:0x348 -fn_1_2C5C = .text:0x00002C5C; // type:function size:0x378 -fn_1_2FD4 = .text:0x00002FD4; // type:function size:0x11C -fn_1_30F0 = .text:0x000030F0; // type:function size:0xB4 -fn_1_31A4 = .text:0x000031A4; // type:function size:0x54 -fn_1_31F8 = .text:0x000031F8; // type:function size:0x4 -fn_1_31FC = .text:0x000031FC; // type:function size:0x154 -fn_1_3350 = .text:0x00003350; // type:function size:0x58 -fn_1_33A8 = .text:0x000033A8; // type:function size:0xDC -fn_1_3484 = .text:0x00003484; // type:function size:0x3C -fn_1_34C0 = .text:0x000034C0; // type:function size:0x154 -fn_1_3614 = .text:0x00003614; // type:function size:0x5CC -fn_1_3BE0 = .text:0x00003BE0; // type:function size:0xCF8 -fn_1_48D8 = .text:0x000048D8; // type:function size:0x32C -fn_1_4C04 = .text:0x00004C04; // type:function size:0x3E8 -fn_1_4FEC = .text:0x00004FEC; // type:function size:0x5DC -fn_1_55C8 = .text:0x000055C8; // type:function size:0x3C4 -fn_1_598C = .text:0x0000598C; // type:function size:0x168 -fn_1_5AF4 = .text:0x00005AF4; // type:function size:0x1AC -fn_1_5CA0 = .text:0x00005CA0; // type:function size:0x23C -fn_1_5EDC = .text:0x00005EDC; // type:function size:0x300 -fn_1_61DC = .text:0x000061DC; // type:function size:0x188 -fn_1_6364 = .text:0x00006364; // type:function size:0x354 -fn_1_66B8 = .text:0x000066B8; // type:function size:0x11C -fn_1_67D4 = .text:0x000067D4; // type:function size:0x194 -fn_1_6968 = .text:0x00006968; // type:function size:0x41C -fn_1_6D84 = .text:0x00006D84; // type:function size:0x30 -fn_1_6DB4 = .text:0x00006DB4; // type:function size:0x384 -fn_1_7138 = .text:0x00007138; // type:function size:0x32C -fn_1_7464 = .text:0x00007464; // type:function size:0x30 -fn_1_7494 = .text:0x00007494; // type:function size:0x8C -fn_1_7520 = .text:0x00007520; // type:function size:0x80 -fn_1_75A0 = .text:0x000075A0; // type:function size:0x118 -fn_1_76B8 = .text:0x000076B8; // type:function size:0xEC -fn_1_77A4 = .text:0x000077A4; // type:function size:0x44 -fn_1_77E8 = .text:0x000077E8; // type:function size:0x10 -fn_1_77F8 = .text:0x000077F8; // type:function size:0x48 -fn_1_7840 = .text:0x00007840; // type:function size:0x48 -fn_1_7888 = .text:0x00007888; // type:function size:0x170 -fn_1_79F8 = .text:0x000079F8; // type:function size:0xCC -fn_1_7AC4 = .text:0x00007AC4; // type:function size:0x36C -fn_1_7E30 = .text:0x00007E30; // type:function size:0x23C -fn_1_806C = .text:0x0000806C; // type:function size:0x34 -fn_1_80A0 = .text:0x000080A0; // type:function size:0x374 -fn_1_8414 = .text:0x00008414; // type:function size:0x264 -fn_1_8678 = .text:0x00008678; // type:function size:0x260 -fn_1_88D8 = .text:0x000088D8; // type:function size:0x138 -fn_1_8A10 = .text:0x00008A10; // type:function size:0xAC -fn_1_8ABC = .text:0x00008ABC; // type:function size:0x584 -fn_1_9040 = .text:0x00009040; // type:function size:0x6B4 -fn_1_96F4 = .text:0x000096F4; // type:function size:0x39C -fn_1_9A90 = .text:0x00009A90; // type:function size:0x1F4 -fn_1_9C84 = .text:0x00009C84; // type:function size:0x188 -fn_1_9E0C = .text:0x00009E0C; // type:function size:0xF0 -fn_1_9EFC = .text:0x00009EFC; // type:function size:0x74 -fn_1_9F70 = .text:0x00009F70; // type:function size:0x134 -fn_1_A0A4 = .text:0x0000A0A4; // type:function size:0x31C -fn_1_A3C0 = .text:0x0000A3C0; // type:function size:0x468 -fn_1_A828 = .text:0x0000A828; // type:function size:0x17C -fn_1_A9A4 = .text:0x0000A9A4; // type:function size:0x79C -fn_1_B140 = .text:0x0000B140; // type:function size:0x644 -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float -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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x10 data:4byte -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:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x10 data:4byte -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x20 data:4byte -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x1 data:byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // 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:0xC data:float -lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x3C -lbl_1_data_88 = .data:0x00000088; // type:object size:0x3C -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x14 -lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x2 data:2byte -lbl_1_data_DC = .data:0x000000DC; // type:object size:0x20 -lbl_1_data_FC = .data:0x000000FC; // type:object size:0x8 -lbl_1_data_104 = .data:0x00000104; // type:object size:0xC -lbl_1_data_110 = .data:0x00000110; // type:object size:0x4 data:4byte -lbl_1_data_114 = .data:0x00000114; // type:object size:0x1C -lbl_1_data_130 = .data:0x00000130; // type:object size:0x10 -lbl_1_data_140 = .data:0x00000140; // type:object size:0x20 -lbl_1_data_160 = .data:0x00000160; // type:object size:0xC -lbl_1_data_16C = .data:0x0000016C; // type:object size:0x20 -lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x28 -lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xA0 -lbl_1_data_274 = .data:0x00000274; // type:object size:0x20 -lbl_1_data_294 = .data:0x00000294; // type:object size:0x20 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x6 data:2byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:float -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:float -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:float -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x10 -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m411Dll/splits.txt b/config/GMPJ01_00/rels/m411Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m411Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m411Dll/symbols.txt b/config/GMPJ01_00/rels/m411Dll/symbols.txt deleted file mode 100644 index 38a4c8cd..00000000 --- a/config/GMPJ01_00/rels/m411Dll/symbols.txt +++ /dev/null @@ -1,278 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0xDE0 -fn_1_E80 = .text:0x00000E80; // type:function size:0x10C -fn_1_F8C = .text:0x00000F8C; // type:function size:0xE8 -fn_1_1074 = .text:0x00001074; // type:function size:0x424 -fn_1_1498 = .text:0x00001498; // type:function size:0x88 -fn_1_1520 = .text:0x00001520; // type:function size:0x72C -fn_1_1C4C = .text:0x00001C4C; // type:function size:0x47C -fn_1_20C8 = .text:0x000020C8; // type:function size:0x508 -fn_1_25D0 = .text:0x000025D0; // type:function size:0xEE0 -fn_1_34B0 = .text:0x000034B0; // type:function size:0x5B0 -fn_1_3A60 = .text:0x00003A60; // type:function size:0x3C -fn_1_3A9C = .text:0x00003A9C; // type:function size:0x3C -fn_1_3AD8 = .text:0x00003AD8; // type:function size:0x3C -fn_1_3B14 = .text:0x00003B14; // type:function size:0x3C -fn_1_3B50 = .text:0x00003B50; // type:function size:0x3E4 -fn_1_3F34 = .text:0x00003F34; // type:function size:0x2E4 -fn_1_4218 = .text:0x00004218; // type:function size:0x23C -fn_1_4454 = .text:0x00004454; // type:function size:0x514 -fn_1_4968 = .text:0x00004968; // type:function size:0x248 -fn_1_4BB0 = .text:0x00004BB0; // type:function size:0x2DC -fn_1_4E8C = .text:0x00004E8C; // type:function size:0x1F0 -fn_1_507C = .text:0x0000507C; // type:function size:0x308 -fn_1_5384 = .text:0x00005384; // type:function size:0xC8 -fn_1_544C = .text:0x0000544C; // type:function size:0x108 -fn_1_5554 = .text:0x00005554; // type:function size:0x368 -fn_1_58BC = .text:0x000058BC; // type:function size:0x54 -fn_1_5910 = .text:0x00005910; // type:function size:0x448 -fn_1_5D58 = .text:0x00005D58; // type:function size:0xB8 -fn_1_5E10 = .text:0x00005E10; // type:function size:0xC0 -fn_1_5ED0 = .text:0x00005ED0; // type:function size:0x6C -fn_1_5F3C = .text:0x00005F3C; // type:function size:0x4EC -fn_1_6428 = .text:0x00006428; // type:function size:0x3F8 -fn_1_6820 = .text:0x00006820; // type:function size:0x21C -fn_1_6A3C = .text:0x00006A3C; // type:function size:0x2B8 -fn_1_6CF4 = .text:0x00006CF4; // type:function size:0xE4 -fn_1_6DD8 = .text:0x00006DD8; // type:function size:0xC4 -fn_1_6E9C = .text:0x00006E9C; // type:function size:0xAC -fn_1_6F48 = .text:0x00006F48; // type:function size:0x680 -fn_1_75C8 = .text:0x000075C8; // type:function size:0xB8 -fn_1_7680 = .text:0x00007680; // type:function size:0xB8 -fn_1_7738 = .text:0x00007738; // type:function size:0x1348 -fn_1_8A80 = .text:0x00008A80; // type:function size:0x33C -fn_1_8DBC = .text:0x00008DBC; // type:function size:0x6D4 -fn_1_9490 = .text:0x00009490; // type:function size:0x730 -fn_1_9BC0 = .text:0x00009BC0; // type:function size:0x444 -fn_1_A004 = .text:0x0000A004; // type:function size:0x78 -fn_1_A07C = .text:0x0000A07C; // type:function size:0xA4 -fn_1_A120 = .text:0x0000A120; // type:function size:0x394 -fn_1_A4B4 = .text:0x0000A4B4; // type:function size:0x2D4 -fn_1_A788 = .text:0x0000A788; // type:function size:0x528 -fn_1_ACB0 = .text:0x0000ACB0; // type:function size:0xA8 -fn_1_AD58 = .text:0x0000AD58; // type:function size:0xB50 -_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 -lbl_1_data_54 = .data:0x00000054; // type:object size:0xC -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC -lbl_1_data_78 = .data:0x00000078; // type:object size:0xE data:string -lbl_1_data_86 = .data:0x00000086; // type:object size:0xE data:string -lbl_1_data_94 = .data:0x00000094; // type:object size:0xE data:string -lbl_1_data_A2 = .data:0x000000A2; // type:object size:0xE data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xE data:string -lbl_1_data_BE = .data:0x000000BE; // type:object size:0xE data:string -lbl_1_data_CC = .data:0x000000CC; // type:object size:0xE data:string -lbl_1_data_DA = .data:0x000000DA; // type:object size:0xE data:string -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0xE data:string -lbl_1_data_F6 = .data:0x000000F6; // type:object size:0xE data:string -lbl_1_data_104 = .data:0x00000104; // type:object size:0xE data:string -lbl_1_data_112 = .data:0x00000112; // type:object size:0xE data:string -lbl_1_data_120 = .data:0x00000120; // type:object size:0xE data:string -lbl_1_data_12E = .data:0x0000012E; // type:object size:0xE data:string -lbl_1_data_13C = .data:0x0000013C; // type:object size:0xE data:string -lbl_1_data_14A = .data:0x0000014A; // type:object size:0xE data:string -lbl_1_data_158 = .data:0x00000158; // type:object size:0xE data:string -lbl_1_data_166 = .data:0x00000166; // type:object size:0xE data:string -lbl_1_data_174 = .data:0x00000174; // type:object size:0xE data:string -lbl_1_data_182 = .data:0x00000182; // type:object size:0xE data:string -lbl_1_data_190 = .data:0x00000190; // type:object size:0xE data:string -lbl_1_data_19E = .data:0x0000019E; // type:object size:0xE data:string -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xE data:string -lbl_1_data_1BA = .data:0x000001BA; // type:object size:0xE data:string -lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x78 -lbl_1_data_240 = .data:0x00000240; // type:object size:0x20 -lbl_1_data_260 = .data:0x00000260; // type:object size:0x20 -lbl_1_data_280 = .data:0x00000280; // type:object size:0x24 -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x20 -lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0xC -lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x14 -lbl_1_data_2E4 = .data:0x000002E4; // type:object size:0xB data:string -lbl_1_data_2EF = .data:0x000002EF; // type:object size:0xB data:string -lbl_1_data_2FA = .data:0x000002FA; // type:object size:0x8 data:string -lbl_1_data_302 = .data:0x00000302; // type:object size:0xA -lbl_1_data_30C = .data:0x0000030C; // type:object size:0x10 -lbl_1_data_31C = .data:0x0000031C; // type:object size:0xC data:string -lbl_1_data_328 = .data:0x00000328; // type:object size:0x7 data:string -lbl_1_data_32F = .data:0x0000032F; // type:object size:0x7 data:string -lbl_1_data_336 = .data:0x00000336; // type:object size:0x7 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x60 data:float -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x60 data:float -lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x60 data:float -lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x10 -lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte -lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x33C data:float -lbl_1_bss_474 = .bss:0x00000474; // type:object size:0x9B0 -lbl_1_bss_E24 = .bss:0x00000E24; // type:object size:0x4 data:float -lbl_1_bss_E28 = .bss:0x00000E28; // type:object size:0x4 data:4byte -lbl_1_bss_E2C = .bss:0x00000E2C; // type:object size:0xC data:4byte -lbl_1_bss_E38 = .bss:0x00000E38; // type:object size:0x4 data:4byte -lbl_1_bss_E3C = .bss:0x00000E3C; // type:object size:0x4 data:4byte -lbl_1_bss_E40 = .bss:0x00000E40; // type:object size:0x4 data:4byte -lbl_1_bss_E44 = .bss:0x00000E44; // type:object size:0x28 data:4byte -lbl_1_bss_E6C = .bss:0x00000E6C; // type:object size:0x28 data:4byte -lbl_1_bss_E94 = .bss:0x00000E94; // type:object size:0x4 data:4byte -lbl_1_bss_E98 = .bss:0x00000E98; // type:object size:0x4 data:4byte -lbl_1_bss_E9C = .bss:0x00000E9C; // type:object size:0x2 data:2byte -lbl_1_bss_E9E = .bss:0x00000E9E; // type:object size:0x2 data:2byte -lbl_1_bss_EA0 = .bss:0x00000EA0; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m412Dll/splits.txt b/config/GMPJ01_00/rels/m412Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m412Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m412Dll/symbols.txt b/config/GMPJ01_00/rels/m412Dll/symbols.txt deleted file mode 100644 index 4212d668..00000000 --- a/config/GMPJ01_00/rels/m412Dll/symbols.txt +++ /dev/null @@ -1,190 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x64C -fn_1_6EC = .text:0x000006EC; // type:function size:0x50 -fn_1_73C = .text:0x0000073C; // type:function size:0x80 -fn_1_7BC = .text:0x000007BC; // type:function size:0xD8 -fn_1_894 = .text:0x00000894; // type:function size:0x4 -fn_1_898 = .text:0x00000898; // type:function size:0x24 -fn_1_8BC = .text:0x000008BC; // type:function size:0x144C -fn_1_1D08 = .text:0x00001D08; // type:function size:0x80 -fn_1_1D88 = .text:0x00001D88; // type:function size:0x34 -fn_1_1DBC = .text:0x00001DBC; // type:function size:0x258 -fn_1_2014 = .text:0x00002014; // type:function size:0x50 -fn_1_2064 = .text:0x00002064; // type:function size:0x6A4 -fn_1_2708 = .text:0x00002708; // type:function size:0xBC -fn_1_27C4 = .text:0x000027C4; // type:function size:0x258 -fn_1_2A1C = .text:0x00002A1C; // type:function size:0xF34 -fn_1_3950 = .text:0x00003950; // type:function size:0x1294 -fn_1_4BE4 = .text:0x00004BE4; // type:function size:0xB8 -fn_1_4C9C = .text:0x00004C9C; // type:function size:0x1BC -fn_1_4E58 = .text:0x00004E58; // type:function size:0x404 -fn_1_525C = .text:0x0000525C; // type:function size:0xC0 -fn_1_531C = .text:0x0000531C; // type:function size:0x6C -fn_1_5388 = .text:0x00005388; // type:function size:0x6C -fn_1_53F4 = .text:0x000053F4; // type:function size:0x228 -fn_1_561C = .text:0x0000561C; // type:function size:0x21C -fn_1_5838 = .text:0x00005838; // type:function size:0xD5C -fn_1_6594 = .text:0x00006594; // type:function size:0x104 -fn_1_6698 = .text:0x00006698; // type:function size:0x17C -fn_1_6814 = .text:0x00006814; // type:function size:0x144C -fn_1_7C60 = .text:0x00007C60; // type:function size:0x23BC -fn_1_A01C = .text:0x0000A01C; // type:function size:0x5FC -fn_1_A618 = .text:0x0000A618; // type:function size:0x470 -fn_1_AA88 = .text:0x0000AA88; // type:function size:0x340 -fn_1_ADC8 = .text:0x0000ADC8; // type:function size:0x374 -fn_1_B13C = .text:0x0000B13C; // type:function size:0x24 -fn_1_B160 = .text:0x0000B160; // type:function size:0x60 -fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x4A0 -_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:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -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_1B4 = .rodata:0x000001B4; // 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:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 -lbl_1_data_20 = .data:0x00000020; // type:object size:0x20 -lbl_1_data_40 = .data:0x00000040; // type:object size:0x20 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x18 -lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float -lbl_1_data_CC = .data:0x000000CC; // type:object size:0x14 data:string -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x14 data:string -lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x14 data:string -lbl_1_data_108 = .data:0x00000108; // type:object size:0x14 data:string -lbl_1_data_11C = .data:0x0000011C; // type:object size:0x14 data:string -lbl_1_data_130 = .data:0x00000130; // type:object size:0x14 data:string -lbl_1_data_144 = .data:0x00000144; // type:object size:0x14 data:string -lbl_1_data_158 = .data:0x00000158; // type:object size:0x14 data:string -lbl_1_data_16C = .data:0x0000016C; // type:object size:0x14 data:string -lbl_1_data_180 = .data:0x00000180; // type:object size:0x14 data:string -lbl_1_data_194 = .data:0x00000194; // type:object size:0x14 data:string -lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x14 data:string -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x14 data:string -lbl_1_data_1D0 = .data:0x000001D0; // type:object size:0x14 data:string -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x14 data:string -lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x14 data:string -lbl_1_data_20C = .data:0x0000020C; // type:object size:0x14 data:string -lbl_1_data_220 = .data:0x00000220; // type:object size:0x14 data:string -lbl_1_data_234 = .data:0x00000234; // type:object size:0x14 data:string -lbl_1_data_248 = .data:0x00000248; // type:object size:0x14 data:string -lbl_1_data_25C = .data:0x0000025C; // type:object size:0x14 data:string -lbl_1_data_270 = .data:0x00000270; // type:object size:0x14 data:string -lbl_1_data_284 = .data:0x00000284; // type:object size:0x14 data:string -lbl_1_data_298 = .data:0x00000298; // type:object size:0x5C -lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0xC data:string -lbl_1_data_300 = .data:0x00000300; // type:object size:0x7 data:string -lbl_1_data_307 = .data:0x00000307; // type:object size:0x9 -lbl_1_data_310 = .data:0x00000310; // type:object size:0x30 -lbl_1_data_340 = .data:0x00000340; // type:object size:0x8 -lbl_1_data_348 = .data:0x00000348; // type:object size:0x18 -lbl_1_data_360 = .data:0x00000360; // type:object size:0x9 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x10 data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x114 -lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x114 -lbl_1_bss_250 = .bss:0x00000250; // type:object size:0xC data:float -lbl_1_bss_25C = .bss:0x0000025C; // type:object size:0xC data:float -lbl_1_bss_268 = .bss:0x00000268; // type:object size:0xC data:float -lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x4 data:4byte -lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x80 -lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x44 data:2byte -lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x198 -lbl_1_bss_4D4 = .bss:0x000004D4; // type:object size:0x2A0 -lbl_1_bss_774 = .bss:0x00000774; // type:object size:0x4 data:float -lbl_1_bss_778 = .bss:0x00000778; // type:object size:0x4 data:float -lbl_1_bss_77C = .bss:0x0000077C; // type:object size:0x4 data:float -lbl_1_bss_780 = .bss:0x00000780; // type:object size:0x10 data:4byte -lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x4 data:4byte -lbl_1_bss_794 = .bss:0x00000794; // type:object size:0x4 data:4byte -lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x2 data:2byte -lbl_1_bss_79C = .bss:0x0000079C; // type:object size:0x2 data:2byte -lbl_1_bss_79E = .bss:0x0000079E; // type:object size:0x2 data:2byte -lbl_1_bss_7A0 = .bss:0x000007A0; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m414Dll/splits.txt b/config/GMPJ01_00/rels/m414Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m414Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m414Dll/symbols.txt b/config/GMPJ01_00/rels/m414Dll/symbols.txt deleted file mode 100644 index 79f1669a..00000000 --- a/config/GMPJ01_00/rels/m414Dll/symbols.txt +++ /dev/null @@ -1,183 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x87C -fn_1_91C = .text:0x0000091C; // type:function size:0x268 -fn_1_B84 = .text:0x00000B84; // type:function size:0x154 -fn_1_CD8 = .text:0x00000CD8; // type:function size:0x7C -fn_1_D54 = .text:0x00000D54; // type:function size:0x634 -fn_1_1388 = .text:0x00001388; // type:function size:0x3C -fn_1_13C4 = .text:0x000013C4; // type:function size:0x3C -fn_1_1400 = .text:0x00001400; // type:function size:0x3C -fn_1_143C = .text:0x0000143C; // type:function size:0x3C -fn_1_1478 = .text:0x00001478; // type:function size:0x214 -fn_1_168C = .text:0x0000168C; // type:function size:0x3C -fn_1_16C8 = .text:0x000016C8; // type:function size:0x3C -fn_1_1704 = .text:0x00001704; // type:function size:0x3C -fn_1_1740 = .text:0x00001740; // type:function size:0x3C -fn_1_177C = .text:0x0000177C; // type:function size:0x3DC -fn_1_1B58 = .text:0x00001B58; // type:function size:0x3C -fn_1_1B94 = .text:0x00001B94; // type:function size:0x3C -fn_1_1BD0 = .text:0x00001BD0; // type:function size:0x3C -fn_1_1C0C = .text:0x00001C0C; // type:function size:0x3C -fn_1_1C48 = .text:0x00001C48; // type:function size:0x1BC -fn_1_1E04 = .text:0x00001E04; // type:function size:0x1B78 -fn_1_397C = .text:0x0000397C; // type:function size:0xDC -fn_1_3A58 = .text:0x00003A58; // type:function size:0xDC -fn_1_3B34 = .text:0x00003B34; // type:function size:0x214 -fn_1_3D48 = .text:0x00003D48; // type:function size:0x184 -fn_1_3ECC = .text:0x00003ECC; // type:function size:0x3E0 -fn_1_42AC = .text:0x000042AC; // type:function size:0x958 -fn_1_4C04 = .text:0x00004C04; // type:function size:0x70 -fn_1_4C74 = .text:0x00004C74; // type:function size:0x19C -fn_1_4E10 = .text:0x00004E10; // type:function size:0x744 -fn_1_5554 = .text:0x00005554; // type:function size:0xD0 -fn_1_5624 = .text:0x00005624; // type:function size:0xD8 -fn_1_56FC = .text:0x000056FC; // type:function size:0x84 -fn_1_5780 = .text:0x00005780; // type:function size:0x2BC -fn_1_5A3C = .text:0x00005A3C; // type:function size:0x4AC -fn_1_5EE8 = .text:0x00005EE8; // type:function size:0x24C -fn_1_6134 = .text:0x00006134; // type:function size:0x418 -fn_1_654C = .text:0x0000654C; // type:function size:0x90 -fn_1_65DC = .text:0x000065DC; // type:function size:0x68 -fn_1_6644 = .text:0x00006644; // type:function size:0x10B0 -fn_1_76F4 = .text:0x000076F4; // type:function size:0x2B4 -fn_1_79A8 = .text:0x000079A8; // type:function size:0x620 -fn_1_7FC8 = .text:0x00007FC8; // type:function size:0x90C -fn_1_88D4 = .text:0x000088D4; // type:function size:0x78 -fn_1_894C = .text:0x0000894C; // type:function size:0xC4 -fn_1_8A10 = .text:0x00008A10; // type:function size:0x60 -fn_1_8A70 = .text:0x00008A70; // type:function size:0x458 -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -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_124 = .rodata:0x00000124; // 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:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -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_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0x10 -lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 -lbl_1_data_30 = .data:0x00000030; // type:object size:0x20 -lbl_1_data_50 = .data:0x00000050; // type:object size:0x18 -lbl_1_data_68 = .data:0x00000068; // type:object size:0x24 -lbl_1_data_8C = .data:0x0000008C; // type:object size:0x18 -lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x10 -lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x10 -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x60 -lbl_1_data_124 = .data:0x00000124; // type:object size:0x10 data:string -lbl_1_data_134 = .data:0x00000134; // type:object size:0x7 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0xC data:float -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x3C -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x3C -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x3C -lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x4 data:4byte -lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x10 -lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x820 data:2byte -lbl_1_bss_910 = .bss:0x00000910; // type:object size:0x10 data:float -lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x10 data:float -lbl_1_bss_930 = .bss:0x00000930; // type:object size:0x8 data:4byte -lbl_1_bss_938 = .bss:0x00000938; // type:object size:0x40 -lbl_1_bss_978 = .bss:0x00000978; // type:object size:0x4 data:4byte -lbl_1_bss_97C = .bss:0x0000097C; // type:object size:0x10 -lbl_1_bss_98C = .bss:0x0000098C; // type:object size:0x4 data:4byte -lbl_1_bss_990 = .bss:0x00000990; // type:object size:0x80 -lbl_1_bss_A10 = .bss:0x00000A10; // type:object size:0x2 data:2byte -lbl_1_bss_A12 = .bss:0x00000A12; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m415Dll/splits.txt b/config/GMPJ01_00/rels/m415Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m415Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m415Dll/symbols.txt b/config/GMPJ01_00/rels/m415Dll/symbols.txt deleted file mode 100644 index e1777beb..00000000 --- a/config/GMPJ01_00/rels/m415Dll/symbols.txt +++ /dev/null @@ -1,234 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x39C -fn_1_43C = .text:0x0000043C; // type:function size:0x74 -fn_1_4B0 = .text:0x000004B0; // type:function size:0x328 -fn_1_7D8 = .text:0x000007D8; // type:function size:0xCE8 -fn_1_14C0 = .text:0x000014C0; // type:function size:0x64 -fn_1_1524 = .text:0x00001524; // type:function size:0xAC -fn_1_15D0 = .text:0x000015D0; // type:function size:0x390 -fn_1_1960 = .text:0x00001960; // type:function size:0x100 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x10B8 -fn_1_2B18 = .text:0x00002B18; // type:function size:0xFC -fn_1_2C14 = .text:0x00002C14; // type:function size:0x274 -fn_1_2E88 = .text:0x00002E88; // type:function size:0xA0 -fn_1_2F28 = .text:0x00002F28; // type:function size:0x2B8 -fn_1_31E0 = .text:0x000031E0; // type:function size:0x28 -fn_1_3208 = .text:0x00003208; // type:function size:0x438 -fn_1_3640 = .text:0x00003640; // type:function size:0x124 -fn_1_3764 = .text:0x00003764; // type:function size:0x3E0 -fn_1_3B44 = .text:0x00003B44; // type:function size:0xB1C -fn_1_4660 = .text:0x00004660; // type:function size:0x14C0 -fn_1_5B20 = .text:0x00005B20; // type:function size:0x490 -fn_1_5FB0 = .text:0x00005FB0; // type:function size:0x354 -fn_1_6304 = .text:0x00006304; // type:function size:0x64 -fn_1_6368 = .text:0x00006368; // type:function size:0x40 -fn_1_63A8 = .text:0x000063A8; // type:function size:0xA0 -fn_1_6448 = .text:0x00006448; // type:function size:0x94 -fn_1_64DC = .text:0x000064DC; // type:function size:0xA8 -fn_1_6584 = .text:0x00006584; // type:function size:0x108 -fn_1_668C = .text:0x0000668C; // type:function size:0x20 -fn_1_66AC = .text:0x000066AC; // type:function size:0xF0 -fn_1_679C = .text:0x0000679C; // type:function size:0x54 -fn_1_67F0 = .text:0x000067F0; // type:function size:0x168 -fn_1_6958 = .text:0x00006958; // type:function size:0x120 -fn_1_6A78 = .text:0x00006A78; // type:function size:0x30C -fn_1_6D84 = .text:0x00006D84; // type:function size:0x78 -fn_1_6DFC = .text:0x00006DFC; // type:function size:0x11C -fn_1_6F18 = .text:0x00006F18; // type:function size:0x78 -fn_1_6F90 = .text:0x00006F90; // type:function size:0x2D8 -fn_1_7268 = .text:0x00007268; // type:function size:0x2B8 -fn_1_7520 = .text:0x00007520; // type:function size:0x154 -fn_1_7674 = .text:0x00007674; // type:function size:0x3E0 -fn_1_7A54 = .text:0x00007A54; // type:function size:0x214 -fn_1_7C68 = .text:0x00007C68; // type:function size:0x198 -fn_1_7E00 = .text:0x00007E00; // type:function size:0xD8 -fn_1_7ED8 = .text:0x00007ED8; // type:function size:0xBC -fn_1_7F94 = .text:0x00007F94; // type:function size:0x33C -fn_1_82D0 = .text:0x000082D0; // type:function size:0x4B0 -fn_1_8780 = .text:0x00008780; // type:function size:0x138 -fn_1_88B8 = .text:0x000088B8; // type:function size:0xD08 -fn_1_95C0 = .text:0x000095C0; // type:function size:0x12C -fn_1_96EC = .text:0x000096EC; // type:function size:0x1C -fn_1_9708 = .text:0x00009708; // type:function size:0x2C -fn_1_9734 = .text:0x00009734; // type:function size:0x1C -fn_1_9750 = .text:0x00009750; // type:function size:0x184 -fn_1_98D4 = .text:0x000098D4; // type:function size:0xA0 -fn_1_9974 = .text:0x00009974; // type:function size:0xA8 -fn_1_9A1C = .text:0x00009A1C; // type:function size:0x8C -fn_1_9AA8 = .text:0x00009AA8; // type:function size:0x98 -fn_1_9B40 = .text:0x00009B40; // type:function size:0x288 -fn_1_9DC8 = .text:0x00009DC8; // type:function size:0x508 -fn_1_A2D0 = .text:0x0000A2D0; // type:function size:0x530 -fn_1_A800 = .text:0x0000A800; // type:function size:0x120 -fn_1_A920 = .text:0x0000A920; // type:function size:0x2C -fn_1_A94C = .text:0x0000A94C; // type:function size:0x3A8 -fn_1_ACF4 = .text:0x0000ACF4; // type:function size:0x254 -fn_1_AF48 = .text:0x0000AF48; // type:function size:0x80 -fn_1_AFC8 = .text:0x0000AFC8; // type:function size:0x70 -fn_1_B038 = .text:0x0000B038; // type:function size:0x80 -fn_1_B0B8 = .text:0x0000B0B8; // type:function size:0x57C -fn_1_B634 = .text:0x0000B634; // type:function size:0x230 -fn_1_B864 = .text:0x0000B864; // type:function size:0x6C -fn_1_B8D0 = .text:0x0000B8D0; // type:function size:0x70 -fn_1_B940 = .text:0x0000B940; // type:function size:0x74 -fn_1_B9B4 = .text:0x0000B9B4; // type:function size:0x84 -fn_1_BA38 = .text:0x0000BA38; // type:function size:0x88 -fn_1_BAC0 = .text:0x0000BAC0; // type:function size:0x8C -fn_1_BB4C = .text:0x0000BB4C; // type:function size:0x6C -fn_1_BBB8 = .text:0x0000BBB8; // type:function size:0x70 -fn_1_BC28 = .text:0x0000BC28; // type:function size:0x74 -fn_1_BC9C = .text:0x0000BC9C; // type:function size:0x6C -fn_1_BD08 = .text:0x0000BD08; // type:function size:0x70 -fn_1_BD78 = .text:0x0000BD78; // type:function size:0x74 -fn_1_BDEC = .text:0x0000BDEC; // type:function size:0x44 -fn_1_BE30 = .text:0x0000BE30; // type:function size:0x70 -fn_1_BEA0 = .text:0x0000BEA0; // type:function size:0x70 -fn_1_BF10 = .text:0x0000BF10; // type:function size:0x44 -fn_1_BF54 = .text:0x0000BF54; // type:function size:0x70 -fn_1_BFC4 = .text:0x0000BFC4; // type:function size:0x70 -fn_1_C034 = .text:0x0000C034; // type:function size:0x5C -fn_1_C090 = .text:0x0000C090; // type:function size:0x80 -fn_1_C110 = .text:0x0000C110; // type:function size:0x74 -fn_1_C184 = .text:0x0000C184; // type:function size:0x78 -fn_1_C1FC = .text:0x0000C1FC; // type:function size:0x68 -fn_1_C264 = .text:0x0000C264; // type:function size:0x6C -fn_1_C2D0 = .text:0x0000C2D0; // type:function size:0x68 -fn_1_C338 = .text:0x0000C338; // type:function size:0x6C -fn_1_C3A4 = .text:0x0000C3A4; // type:function size:0x6C -fn_1_C410 = .text:0x0000C410; // type:function size:0x78 -fn_1_C488 = .text:0x0000C488; // type:function size:0x98 -fn_1_C520 = .text:0x0000C520; // type:function size:0x6C -fn_1_C58C = .text:0x0000C58C; // type:function size:0x78 -fn_1_C604 = .text:0x0000C604; // type:function size:0x98 -fn_1_C69C = .text:0x0000C69C; // type:function size:0x70 -fn_1_C70C = .text:0x0000C70C; // type:function size:0x78 -fn_1_C784 = .text:0x0000C784; // type:function size:0x98 -fn_1_C81C = .text:0x0000C81C; // type:function size:0x40 -_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:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x10 data:byte -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x20 data:byte -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x20 data:byte -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x10 data:byte -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x10 data:byte -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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // 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:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x10 data:byte -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -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 -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:0x24 -lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte -lbl_1_data_68 = .data:0x00000068; // type:object size:0x7 data:string -lbl_1_data_6F = .data:0x0000006F; // type:object size:0x6 data:string -lbl_1_data_75 = .data:0x00000075; // type:object size:0xB -lbl_1_data_80 = .data:0x00000080; // type:object size:0x28 -lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x30 -lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x8 data:string -jumptable_1_data_E0 = .data:0x000000E0; // type:object size:0x28 scope:local -lbl_1_data_108 = .data:0x00000108; // type:object size:0x8 data:string -lbl_1_data_110 = .data:0x00000110; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x30 -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x200 -lbl_1_bss_234 = .bss:0x00000234; // type:object size:0x100 -lbl_1_bss_334 = .bss:0x00000334; // type:object size:0x4 data:4byte -lbl_1_bss_338 = .bss:0x00000338; // type:object size:0x2 data:2byte -lbl_1_bss_33A = .bss:0x0000033A; // type:object size:0x8 data:2byte -lbl_1_bss_342 = .bss:0x00000342; // type:object size:0x2 data:2byte -lbl_1_bss_344 = .bss:0x00000344; // type:object size:0x2 data:2byte -lbl_1_bss_346 = .bss:0x00000346; // type:object size:0x2 data:2byte -lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte -lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x2 data:2byte -lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x10 -lbl_1_bss_35C = .bss:0x0000035C; // type:object size:0x4 data:4byte -lbl_1_bss_360 = .bss:0x00000360; // type:object size:0x4 data:4byte -lbl_1_bss_364 = .bss:0x00000364; // type:object size:0x4 data:4byte -lbl_1_bss_368 = .bss:0x00000368; // type:object size:0x4 data:4byte -lbl_1_bss_36C = .bss:0x0000036C; // type:object size:0x44 data:4byte diff --git a/config/GMPJ01_00/rels/m416Dll/splits.txt b/config/GMPJ01_00/rels/m416Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m416Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m416Dll/symbols.txt b/config/GMPJ01_00/rels/m416Dll/symbols.txt deleted file mode 100644 index 6b6bdfe8..00000000 --- a/config/GMPJ01_00/rels/m416Dll/symbols.txt +++ /dev/null @@ -1,209 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x3B8 -fn_1_458 = .text:0x00000458; // type:function size:0xA4 -fn_1_4FC = .text:0x000004FC; // type:function size:0xCEC -fn_1_11E8 = .text:0x000011E8; // type:function size:0x58 -fn_1_1240 = .text:0x00001240; // type:function size:0x10 -fn_1_1250 = .text:0x00001250; // type:function size:0x10 -fn_1_1260 = .text:0x00001260; // type:function size:0x220 -fn_1_1480 = .text:0x00001480; // type:function size:0x68 -fn_1_14E8 = .text:0x000014E8; // type:function size:0x84 -fn_1_156C = .text:0x0000156C; // type:function size:0x3F8 -fn_1_1964 = .text:0x00001964; // type:function size:0x178 -fn_1_1ADC = .text:0x00001ADC; // type:function size:0x1A4 -fn_1_1C80 = .text:0x00001C80; // type:function size:0x104 -fn_1_1D84 = .text:0x00001D84; // type:function size:0xBAC -fn_1_2930 = .text:0x00002930; // type:function size:0xAC -fn_1_29DC = .text:0x000029DC; // type:function size:0x4C8 -fn_1_2EA4 = .text:0x00002EA4; // type:function size:0x778 -fn_1_361C = .text:0x0000361C; // type:function size:0x280 -fn_1_389C = .text:0x0000389C; // type:function size:0x54 -fn_1_38F0 = .text:0x000038F0; // type:function size:0x10D4 -fn_1_49C4 = .text:0x000049C4; // type:function size:0x640 -fn_1_5004 = .text:0x00005004; // type:function size:0x54 -fn_1_5058 = .text:0x00005058; // type:function size:0x264 -fn_1_52BC = .text:0x000052BC; // type:function size:0x274 -fn_1_5530 = .text:0x00005530; // type:function size:0x704 -fn_1_5C34 = .text:0x00005C34; // type:function size:0xE4 -fn_1_5D18 = .text:0x00005D18; // type:function size:0x60 -fn_1_5D78 = .text:0x00005D78; // type:function size:0x3C4 -fn_1_613C = .text:0x0000613C; // type:function size:0x504 -fn_1_6640 = .text:0x00006640; // type:function size:0x4A8 -fn_1_6AE8 = .text:0x00006AE8; // type:function size:0x304 -fn_1_6DEC = .text:0x00006DEC; // type:function size:0x70 -fn_1_6E5C = .text:0x00006E5C; // type:function size:0x240 -fn_1_709C = .text:0x0000709C; // type:function size:0x250 -fn_1_72EC = .text:0x000072EC; // type:function size:0x6E4 -fn_1_79D0 = .text:0x000079D0; // type:function size:0x84 -fn_1_7A54 = .text:0x00007A54; // type:function size:0x20 -fn_1_7A74 = .text:0x00007A74; // type:function size:0x300 -fn_1_7D74 = .text:0x00007D74; // type:function size:0x1BC -fn_1_7F30 = .text:0x00007F30; // type:function size:0x484 -fn_1_83B4 = .text:0x000083B4; // type:function size:0x550 -fn_1_8904 = .text:0x00008904; // type:function size:0xB8 -fn_1_89BC = .text:0x000089BC; // type:function size:0x4E4 -fn_1_8EA0 = .text:0x00008EA0; // type:function size:0x14 -fn_1_8EB4 = .text:0x00008EB4; // type:function size:0xAC -fn_1_8F60 = .text:0x00008F60; // type:function size:0x90 -fn_1_8FF0 = .text:0x00008FF0; // type:function size:0x4 -fn_1_8FF4 = .text:0x00008FF4; // type:function size:0x34 -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0x1 data:byte -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -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:0x8 data:double -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:0x8 data:double -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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float -lbl_1_data_38 = .data:0x00000038; // type:object size:0x1 data:byte -lbl_1_data_3C = .data:0x0000003C; // type:object size:0x1 data:byte -lbl_1_data_40 = .data:0x00000040; // type:object size:0x24 -lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte -jumptable_1_data_68 = .data:0x00000068; // type:object size:0x2C scope:local -lbl_1_data_94 = .data:0x00000094; // type:object size:0x1C data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x40 -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x1C -lbl_1_data_10C = .data:0x0000010C; // type:object size:0x48 -lbl_1_data_154 = .data:0x00000154; // type:object size:0x24 -lbl_1_data_178 = .data:0x00000178; // type:object size:0x8 -lbl_1_data_180 = .data:0x00000180; // type:object size:0x18 -lbl_1_data_198 = .data:0x00000198; // type:object size:0x30 -lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0x20 -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC data:4byte -lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 -lbl_1_data_218 = .data:0x00000218; // type:object size:0x48 -lbl_1_data_260 = .data:0x00000260; // type:object size:0x8 data:float -lbl_1_data_268 = .data:0x00000268; // type:object size:0x1 data:byte -lbl_1_data_26C = .data:0x0000026C; // type:object size:0x60 data:float -lbl_1_data_2CC = .data:0x000002CC; // type:object size:0x18 -lbl_1_data_2E4 = .data:0x000002E4; // type:object size:0x8 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x10 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x900 -lbl_1_bss_914 = .bss:0x00000914; // type:object size:0x4 data:4byte -lbl_1_bss_918 = .bss:0x00000918; // type:object size:0x2 data:2byte -lbl_1_bss_91A = .bss:0x0000091A; // type:object size:0x6 data:2byte -lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x4 data:float -lbl_1_bss_924 = .bss:0x00000924; // type:object size:0x2 data:2byte -lbl_1_bss_926 = .bss:0x00000926; // type:object size:0x2 data:2byte -lbl_1_bss_928 = .bss:0x00000928; // type:object size:0x2 data:2byte -lbl_1_bss_92A = .bss:0x0000092A; // type:object size:0x2 data:2byte -lbl_1_bss_92E = .bss:0x0000092E; // type:object size:0x2 data:2byte -lbl_1_bss_930 = .bss:0x00000930; // type:object size:0x20 data:4byte -lbl_1_bss_950 = .bss:0x00000950; // type:object size:0x4 data:4byte -lbl_1_bss_954 = .bss:0x00000954; // type:object size:0x4 data:4byte -lbl_1_bss_958 = .bss:0x00000958; // type:object size:0x4 data:4byte -lbl_1_bss_95C = .bss:0x0000095C; // type:object size:0x2 data:2byte -lbl_1_bss_960 = .bss:0x00000960; // type:object size:0x8 data:4byte -lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x800 data:2byte -lbl_1_bss_1168 = .bss:0x00001168; // type:object size:0x2 data:2byte -lbl_1_bss_116C = .bss:0x0000116C; // type:object size:0x8 data:float -lbl_1_bss_1174 = .bss:0x00001174; // type:object size:0x8 -lbl_1_bss_117C = .bss:0x0000117C; // type:object size:0x4 data:float -lbl_1_bss_1180 = .bss:0x00001180; // type:object size:0x4 data:4byte -lbl_1_bss_1184 = .bss:0x00001184; // type:object size:0x4 data:4byte -lbl_1_bss_1188 = .bss:0x00001188; // type:object size:0x4 data:4byte -lbl_1_bss_118C = .bss:0x0000118C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m417Dll/splits.txt b/config/GMPJ01_00/rels/m417Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m417Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m417Dll/symbols.txt b/config/GMPJ01_00/rels/m417Dll/symbols.txt deleted file mode 100644 index 944d6d8e..00000000 --- a/config/GMPJ01_00/rels/m417Dll/symbols.txt +++ /dev/null @@ -1,366 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x438 -fn_1_4D8 = .text:0x000004D8; // type:function size:0xD8 -fn_1_5B0 = .text:0x000005B0; // type:function size:0x250 -fn_1_800 = .text:0x00000800; // type:function size:0x190 -fn_1_990 = .text:0x00000990; // type:function size:0x518 -fn_1_EA8 = .text:0x00000EA8; // type:function size:0x534 -fn_1_13DC = .text:0x000013DC; // type:function size:0x3E4 -fn_1_17C0 = .text:0x000017C0; // type:function size:0x4E8 -fn_1_1CA8 = .text:0x00001CA8; // type:function size:0x4B0 -fn_1_2158 = .text:0x00002158; // type:function size:0x570 -fn_1_26C8 = .text:0x000026C8; // type:function size:0x18 -fn_1_26E0 = .text:0x000026E0; // type:function size:0x18 -fn_1_26F8 = .text:0x000026F8; // type:function size:0x18 -fn_1_2710 = .text:0x00002710; // type:function size:0x18 -fn_1_2728 = .text:0x00002728; // type:function size:0x18 -fn_1_2740 = .text:0x00002740; // type:function size:0x30 -fn_1_2770 = .text:0x00002770; // type:function size:0x30 -fn_1_27A0 = .text:0x000027A0; // type:function size:0x30 -fn_1_27D0 = .text:0x000027D0; // type:function size:0x38 -fn_1_2808 = .text:0x00002808; // type:function size:0x40 -fn_1_2848 = .text:0x00002848; // type:function size:0x348 -fn_1_2B90 = .text:0x00002B90; // type:function size:0x378 -fn_1_2F08 = .text:0x00002F08; // type:function size:0x11C -fn_1_3024 = .text:0x00003024; // type:function size:0xB4 -fn_1_30D8 = .text:0x000030D8; // type:function size:0x34 -fn_1_310C = .text:0x0000310C; // type:function size:0x168 -fn_1_3274 = .text:0x00003274; // type:function size:0x140 -fn_1_33B4 = .text:0x000033B4; // type:function size:0x4C -fn_1_3400 = .text:0x00003400; // type:function size:0x134 -fn_1_3534 = .text:0x00003534; // type:function size:0x40 -fn_1_3574 = .text:0x00003574; // type:function size:0x22C -fn_1_37A0 = .text:0x000037A0; // type:function size:0x37C -fn_1_3B1C = .text:0x00003B1C; // type:function size:0xA8 -fn_1_3BC4 = .text:0x00003BC4; // type:function size:0x190 -fn_1_3D54 = .text:0x00003D54; // type:function size:0x4 -fn_1_3D58 = .text:0x00003D58; // type:function size:0xE70 -fn_1_4BC8 = .text:0x00004BC8; // type:function size:0x29C -fn_1_4E64 = .text:0x00004E64; // type:function size:0x94C -fn_1_57B0 = .text:0x000057B0; // type:function size:0x68C -fn_1_5E3C = .text:0x00005E3C; // type:function size:0x210 -fn_1_604C = .text:0x0000604C; // type:function size:0xAB8 -fn_1_6B04 = .text:0x00006B04; // type:function size:0x5C -fn_1_6B60 = .text:0x00006B60; // type:function size:0x34 -fn_1_6B94 = .text:0x00006B94; // type:function size:0x1D0 -fn_1_6D64 = .text:0x00006D64; // type:function size:0x7AC -fn_1_7510 = .text:0x00007510; // type:function size:0xAC -fn_1_75BC = .text:0x000075BC; // type:function size:0x34 -fn_1_75F0 = .text:0x000075F0; // type:function size:0x10 -fn_1_7600 = .text:0x00007600; // type:function size:0x24 -fn_1_7624 = .text:0x00007624; // type:function size:0x298 -fn_1_78BC = .text:0x000078BC; // type:function size:0xAC -fn_1_7968 = .text:0x00007968; // type:function size:0xC0 -fn_1_7A28 = .text:0x00007A28; // type:function size:0xC -fn_1_7A34 = .text:0x00007A34; // type:function size:0x234 -fn_1_7C68 = .text:0x00007C68; // type:function size:0x24 -fn_1_7C8C = .text:0x00007C8C; // type:function size:0x670 -fn_1_82FC = .text:0x000082FC; // type:function size:0x3EC -fn_1_86E8 = .text:0x000086E8; // type:function size:0x424 -fn_1_8B0C = .text:0x00008B0C; // type:function size:0x224 -fn_1_8D30 = .text:0x00008D30; // type:function size:0x114 -fn_1_8E44 = .text:0x00008E44; // type:function size:0x39C -fn_1_91E0 = .text:0x000091E0; // type:function size:0xB8 -fn_1_9298 = .text:0x00009298; // type:function size:0x784 -fn_1_9A1C = .text:0x00009A1C; // type:function size:0x1F8 -fn_1_9C14 = .text:0x00009C14; // type:function size:0x3DC -fn_1_9FF0 = .text:0x00009FF0; // type:function size:0xD34 -fn_1_AD24 = .text:0x0000AD24; // type:function size:0xA0 -fn_1_ADC4 = .text:0x0000ADC4; // type:function size:0x4FC -fn_1_B2C0 = .text:0x0000B2C0; // type:function size:0x5E0 -fn_1_B8A0 = .text:0x0000B8A0; // type:function size:0x18C -fn_1_BA2C = .text:0x0000BA2C; // type:function size:0x74 -fn_1_BAA0 = .text:0x0000BAA0; // type:function size:0x1D0 -fn_1_BC70 = .text:0x0000BC70; // type:function size:0x3C -fn_1_BCAC = .text:0x0000BCAC; // type:function size:0xF0 -fn_1_BD9C = .text:0x0000BD9C; // type:function size:0x214 -fn_1_BFB0 = .text:0x0000BFB0; // type:function size:0xA0 -fn_1_C050 = .text:0x0000C050; // type:function size:0x3E4 -fn_1_C434 = .text:0x0000C434; // type:function size:0x224 -fn_1_C658 = .text:0x0000C658; // type:function size:0x134 -fn_1_C78C = .text:0x0000C78C; // type:function size:0xF0 -_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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -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:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x24 data:4byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x24 data:4byte -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x8 data:double -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:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0xC data:4byte -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -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:0x1 data:byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x1 data:byte -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 data:4byte -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x10 data:4byte -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x10 data:4byte -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0xC data:4byte -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC data:4byte -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0xC data:4byte -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x10 data:4byte -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0xC data:4byte -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:4byte -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x18 data:4byte -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x18 data:4byte -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x8 data:double -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // 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:0xC data:float -lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float -lbl_1_data_40 = .data:0x00000040; // type:object size:0x10 data:float -lbl_1_data_50 = .data:0x00000050; // type:object size:0x40 -lbl_1_data_90 = .data:0x00000090; // type:object size:0x84 -lbl_1_data_114 = .data:0x00000114; // type:object size:0xDC -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x38 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x110 data:float -lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x700 data:4byte -lbl_1_bss_878 = .bss:0x00000878; // type:object size:0x8 data:4byte -lbl_1_bss_880 = .bss:0x00000880; // type:object size:0x4 data:4byte -lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x4 data:4byte -lbl_1_bss_888 = .bss:0x00000888; // type:object size:0x10 -lbl_1_bss_898 = .bss:0x00000898; // type:object size:0x10 data:4byte -lbl_1_bss_8A8 = .bss:0x000008A8; // type:object size:0x4 data:4byte -lbl_1_bss_8AC = .bss:0x000008AC; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m420dll/splits.txt b/config/GMPJ01_00/rels/m420dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m420dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m420dll/symbols.txt b/config/GMPJ01_00/rels/m420dll/symbols.txt deleted file mode 100644 index dcca974e..00000000 --- a/config/GMPJ01_00/rels/m420dll/symbols.txt +++ /dev/null @@ -1,249 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x78 -fn_1_118 = .text:0x00000118; // type:function size:0x80 -fn_1_198 = .text:0x00000198; // type:function size:0x23C -fn_1_3D4 = .text:0x000003D4; // type:function size:0x68 -fn_1_43C = .text:0x0000043C; // type:function size:0x8D8 -fn_1_D14 = .text:0x00000D14; // type:function size:0x84 -fn_1_D98 = .text:0x00000D98; // type:function size:0x1B0 -fn_1_F48 = .text:0x00000F48; // type:function size:0x2C -fn_1_F74 = .text:0x00000F74; // type:function size:0xBC -fn_1_1030 = .text:0x00001030; // type:function size:0xBC -fn_1_10EC = .text:0x000010EC; // type:function size:0x98 -fn_1_1184 = .text:0x00001184; // type:function size:0x718 -fn_1_189C = .text:0x0000189C; // type:function size:0x214 -fn_1_1AB0 = .text:0x00001AB0; // type:function size:0xDC -fn_1_1B8C = .text:0x00001B8C; // type:function size:0x288 -fn_1_1E14 = .text:0x00001E14; // type:function size:0x50 -fn_1_1E64 = .text:0x00001E64; // type:function size:0xB0 -fn_1_1F14 = .text:0x00001F14; // type:function size:0x40 -fn_1_1F54 = .text:0x00001F54; // type:function size:0x40 -fn_1_1F94 = .text:0x00001F94; // type:function size:0x78 -fn_1_200C = .text:0x0000200C; // type:function size:0xE0 -fn_1_20EC = .text:0x000020EC; // type:function size:0x30 -fn_1_211C = .text:0x0000211C; // type:function size:0x58 -fn_1_2174 = .text:0x00002174; // type:function size:0x54 -fn_1_21C8 = .text:0x000021C8; // type:function size:0x98 -fn_1_2260 = .text:0x00002260; // type:function size:0x6C -fn_1_22CC = .text:0x000022CC; // type:function size:0x4A0 -fn_1_276C = .text:0x0000276C; // type:function size:0x574 -fn_1_2CE0 = .text:0x00002CE0; // type:function size:0x9C -fn_1_2D7C = .text:0x00002D7C; // type:function size:0x12C -fn_1_2EA8 = .text:0x00002EA8; // type:function size:0x1F0 -fn_1_3098 = .text:0x00003098; // type:function size:0x1D4 -fn_1_326C = .text:0x0000326C; // type:function size:0x1E4 -fn_1_3450 = .text:0x00003450; // type:function size:0x5C -fn_1_34AC = .text:0x000034AC; // type:function size:0xB0 -fn_1_355C = .text:0x0000355C; // type:function size:0x188 -fn_1_36E4 = .text:0x000036E4; // type:function size:0x68 -fn_1_374C = .text:0x0000374C; // type:function size:0x40 -fn_1_378C = .text:0x0000378C; // type:function size:0xC8 -fn_1_3854 = .text:0x00003854; // type:function size:0x11C -fn_1_3970 = .text:0x00003970; // type:function size:0x624 -fn_1_3F94 = .text:0x00003F94; // type:function size:0x300 -fn_1_4294 = .text:0x00004294; // type:function size:0x2E0 -fn_1_4574 = .text:0x00004574; // type:function size:0x1F8 -fn_1_476C = .text:0x0000476C; // type:function size:0x1F8 -fn_1_4964 = .text:0x00004964; // type:function size:0x1008 -fn_1_596C = .text:0x0000596C; // type:function size:0x88 -fn_1_59F4 = .text:0x000059F4; // type:function size:0x88 -fn_1_5A7C = .text:0x00005A7C; // type:function size:0x2C -fn_1_5AA8 = .text:0x00005AA8; // type:function size:0x1E4 -fn_1_5C8C = .text:0x00005C8C; // type:function size:0x464 -fn_1_60F0 = .text:0x000060F0; // type:function size:0x178 -fn_1_6268 = .text:0x00006268; // type:function size:0x104 -fn_1_636C = .text:0x0000636C; // type:function size:0x80 -fn_1_63EC = .text:0x000063EC; // type:function size:0x120 -fn_1_650C = .text:0x0000650C; // type:function size:0x48 -fn_1_6554 = .text:0x00006554; // type:function size:0x10C -fn_1_6660 = .text:0x00006660; // type:function size:0x10 -fn_1_6670 = .text:0x00006670; // type:function size:0x2C -fn_1_669C = .text:0x0000669C; // type:function size:0x8C -fn_1_6728 = .text:0x00006728; // type:function size:0x7C -fn_1_67A4 = .text:0x000067A4; // type:function size:0x44 -fn_1_67E8 = .text:0x000067E8; // type:function size:0x28 -fn_1_6810 = .text:0x00006810; // type:function size:0x10 -fn_1_6820 = .text:0x00006820; // type:function size:0x64 -fn_1_6884 = .text:0x00006884; // type:function size:0xCC -fn_1_6950 = .text:0x00006950; // type:function size:0x3BC -fn_1_6D0C = .text:0x00006D0C; // type:function size:0x50 -fn_1_6D5C = .text:0x00006D5C; // type:function size:0x94 -fn_1_6DF0 = .text:0x00006DF0; // type:function size:0x440 -fn_1_7230 = .text:0x00007230; // type:function size:0x98 -fn_1_72C8 = .text:0x000072C8; // type:function size:0x98 -fn_1_7360 = .text:0x00007360; // type:function size:0x98 -fn_1_73F8 = .text:0x000073F8; // type:function size:0x100 -fn_1_74F8 = .text:0x000074F8; // type:function size:0x20C -fn_1_7704 = .text:0x00007704; // type:function size:0x720 -fn_1_7E24 = .text:0x00007E24; // type:function size:0x41C -fn_1_8240 = .text:0x00008240; // type:function size:0x1D4 -fn_1_8414 = .text:0x00008414; // type:function size:0x520 -fn_1_8934 = .text:0x00008934; // type:function size:0x10 -fn_1_8944 = .text:0x00008944; // type:function size:0x34 -_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:0x54 -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x160 -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x60 -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x10 -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x1C -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x6C -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0xC data:4byte -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0xC data:4byte -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x30 data:4byte -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x30 data:4byte -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0xC data:4byte -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E data:string -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x1E data:string -lbl_1_data_3C = .data:0x0000003C; // type:object size:0x14 -lbl_1_data_50 = .data:0x00000050; // type:object size:0x80 -lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x1C -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x30 -lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0x3 -lbl_1_data_138 = .data:0x00000138; // type:object size:0x1C -lbl_1_data_154 = .data:0x00000154; // type:object size:0x10 data:4byte -lbl_1_data_164 = .data:0x00000164; // type:object size:0xD data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x10 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:float -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:float -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x1C data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x1C data:float -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x1C data:float -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x8 data:4byte -lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte -lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x80 data:float -lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x8AC data:4byte -lbl_1_bss_9EC = .bss:0x000009EC; // type:object size:0x2 data:2byte -lbl_1_bss_9F0 = .bss:0x000009F0; // type:object size:0x38 data:2byte -lbl_1_bss_A28 = .bss:0x00000A28; // type:object size:0x4 data:4byte -lbl_1_bss_A2C = .bss:0x00000A2C; // type:object size:0x10 data:4byte -lbl_1_bss_A3C = .bss:0x00000A3C; // type:object size:0x4 data:4byte -lbl_1_bss_A40 = .bss:0x00000A40; // type:object size:0x8 data:4byte -lbl_1_bss_A48 = .bss:0x00000A48; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m421Dll/splits.txt b/config/GMPJ01_00/rels/m421Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m421Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m421Dll/symbols.txt b/config/GMPJ01_00/rels/m421Dll/symbols.txt deleted file mode 100644 index c704e2c9..00000000 --- a/config/GMPJ01_00/rels/m421Dll/symbols.txt +++ /dev/null @@ -1,277 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x400 -fn_1_4A0 = .text:0x000004A0; // type:function size:0xD8 -fn_1_578 = .text:0x00000578; // type:function size:0x20C -fn_1_784 = .text:0x00000784; // type:function size:0x134 -fn_1_8B8 = .text:0x000008B8; // type:function size:0x404 -fn_1_CBC = .text:0x00000CBC; // type:function size:0x430 -fn_1_10EC = .text:0x000010EC; // type:function size:0x340 -fn_1_142C = .text:0x0000142C; // type:function size:0x424 -fn_1_1850 = .text:0x00001850; // type:function size:0x440 -fn_1_1C90 = .text:0x00001C90; // type:function size:0x4AC -fn_1_213C = .text:0x0000213C; // type:function size:0x70 -fn_1_21AC = .text:0x000021AC; // type:function size:0x87C -fn_1_2A28 = .text:0x00002A28; // type:function size:0x190 -fn_1_2BB8 = .text:0x00002BB8; // type:function size:0x468 -fn_1_3020 = .text:0x00003020; // type:function size:0xB0 -fn_1_30D0 = .text:0x000030D0; // type:function size:0x264 -fn_1_3334 = .text:0x00003334; // type:function size:0x28 -fn_1_335C = .text:0x0000335C; // type:function size:0x5A0 -fn_1_38FC = .text:0x000038FC; // type:function size:0x254 -fn_1_3B50 = .text:0x00003B50; // type:function size:0x14 -fn_1_3B64 = .text:0x00003B64; // type:function size:0x14 -fn_1_3B78 = .text:0x00003B78; // type:function size:0x9C -fn_1_3C14 = .text:0x00003C14; // type:function size:0x9C -fn_1_3CB0 = .text:0x00003CB0; // type:function size:0x68 -fn_1_3D18 = .text:0x00003D18; // type:function size:0x6C -fn_1_3D84 = .text:0x00003D84; // type:function size:0x98 -fn_1_3E1C = .text:0x00003E1C; // type:function size:0x18 -fn_1_3E34 = .text:0x00003E34; // type:function size:0x18 -fn_1_3E4C = .text:0x00003E4C; // type:function size:0x18 -fn_1_3E64 = .text:0x00003E64; // type:function size:0x18 -fn_1_3E7C = .text:0x00003E7C; // type:function size:0x7C -fn_1_3EF8 = .text:0x00003EF8; // type:function size:0x30 -fn_1_3F28 = .text:0x00003F28; // type:function size:0x40 -fn_1_3F68 = .text:0x00003F68; // type:function size:0x30 -fn_1_3F98 = .text:0x00003F98; // type:function size:0x30 -fn_1_3FC8 = .text:0x00003FC8; // type:function size:0x30 -fn_1_3FF8 = .text:0x00003FF8; // type:function size:0x38 -fn_1_4030 = .text:0x00004030; // type:function size:0x208 -fn_1_4238 = .text:0x00004238; // type:function size:0x240 -fn_1_4478 = .text:0x00004478; // type:function size:0x11C -fn_1_4594 = .text:0x00004594; // type:function size:0xB4 -fn_1_4648 = .text:0x00004648; // type:function size:0x268 -fn_1_48B0 = .text:0x000048B0; // type:function size:0x24 -fn_1_48D4 = .text:0x000048D4; // type:function size:0x62C -fn_1_4F00 = .text:0x00004F00; // type:function size:0x160 -fn_1_5060 = .text:0x00005060; // type:function size:0x368 -fn_1_53C8 = .text:0x000053C8; // type:function size:0x3C4 -fn_1_578C = .text:0x0000578C; // type:function size:0x410 -fn_1_5B9C = .text:0x00005B9C; // type:function size:0x5E8 -fn_1_6184 = .text:0x00006184; // type:function size:0x27C -fn_1_6400 = .text:0x00006400; // type:function size:0x2B4 -fn_1_66B4 = .text:0x000066B4; // type:function size:0xB8 -fn_1_676C = .text:0x0000676C; // type:function size:0x5DC -fn_1_6D48 = .text:0x00006D48; // type:function size:0x730 -fn_1_7478 = .text:0x00007478; // type:function size:0x1F8 -fn_1_7670 = .text:0x00007670; // type:function size:0x430 -fn_1_7AA0 = .text:0x00007AA0; // type:function size:0x418 -fn_1_7EB8 = .text:0x00007EB8; // type:function size:0x208 -fn_1_80C0 = .text:0x000080C0; // type:function size:0x87C -fn_1_893C = .text:0x0000893C; // type:function size:0xB38 -fn_1_9474 = .text:0x00009474; // type:function size:0xF8 -fn_1_956C = .text:0x0000956C; // type:function size:0x2C0 -fn_1_982C = .text:0x0000982C; // type:function size:0x18C -fn_1_99B8 = .text:0x000099B8; // type:function size:0x74 -fn_1_9A2C = .text:0x00009A2C; // type:function size:0x1D0 -fn_1_9BFC = .text:0x00009BFC; // type:function size:0x3C -fn_1_9C38 = .text:0x00009C38; // type:function size:0x198 -fn_1_9DD0 = .text:0x00009DD0; // type:function size:0x758 -fn_1_A528 = .text:0x0000A528; // type:function size:0x640 -fn_1_AB68 = .text:0x0000AB68; // type:function size:0x4 -fn_1_AB6C = .text:0x0000AB6C; // type:function size:0x70 -fn_1_ABDC = .text:0x0000ABDC; // type:function size:0x580 -fn_1_B15C = .text:0x0000B15C; // type:function size:0x60 -fn_1_B1BC = .text:0x0000B1BC; // type:function size:0x4 -fn_1_B1C0 = .text:0x0000B1C0; // type:function size:0x1D8 -fn_1_B398 = .text:0x0000B398; // type:function size:0x4 -fn_1_B39C = .text:0x0000B39C; // type:function size:0x40 -_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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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:0x8 data:double -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:4byte -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x50 -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x14 data:4byte -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_124 = .rodata:0x00000124; // type:object size:0x10 data:4byte -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:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x10 data:4byte -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 data:4byte -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x30 data:4byte -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x30 data:4byte -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // 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_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // 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:0xC data:float -lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 -lbl_1_data_94 = .data:0x00000094; // type:object size:0xC -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x1 data:byte -lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x1A data:string -lbl_1_data_BE = .data:0x000000BE; // type:object size:0x1A -lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x2C -lbl_1_data_104 = .data:0x00000104; // type:object size:0x60 -lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 -lbl_1_data_184 = .data:0x00000184; // type:object size:0x20 -lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x18 -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x78 -lbl_1_data_234 = .data:0x00000234; // type:object size:0x30 -lbl_1_data_264 = .data:0x00000264; // type:object size:0x30 -lbl_1_data_294 = .data:0x00000294; // type:object size:0x18 -lbl_1_data_2AC = .data:0x000002AC; // type:object size:0xC -lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0xC -lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0xC -lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0xC -lbl_1_data_2DC = .data:0x000002DC; // type:object size:0xC -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0xC -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte -lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x6 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x10 -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m431Dll/splits.txt b/config/GMPJ01_00/rels/m431Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m431Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m431Dll/symbols.txt b/config/GMPJ01_00/rels/m431Dll/symbols.txt deleted file mode 100644 index 49cbc1e1..00000000 --- a/config/GMPJ01_00/rels/m431Dll/symbols.txt +++ /dev/null @@ -1,252 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x384 -fn_1_424 = .text:0x00000424; // type:function size:0x78 -fn_1_49C = .text:0x0000049C; // type:function size:0xE0 -fn_1_57C = .text:0x0000057C; // type:function size:0x234 -fn_1_7B0 = .text:0x000007B0; // type:function size:0x294 -fn_1_A44 = .text:0x00000A44; // type:function size:0x660 -fn_1_10A4 = .text:0x000010A4; // type:function size:0x368 -fn_1_140C = .text:0x0000140C; // type:function size:0x228 -fn_1_1634 = .text:0x00001634; // type:function size:0x40C -fn_1_1A40 = .text:0x00001A40; // type:function size:0x5C0 -fn_1_2000 = .text:0x00002000; // type:function size:0x50 -fn_1_2050 = .text:0x00002050; // type:function size:0x40 -fn_1_2090 = .text:0x00002090; // type:function size:0x40 -fn_1_20D0 = .text:0x000020D0; // type:function size:0x40 -fn_1_2110 = .text:0x00002110; // type:function size:0x9A0 -fn_1_2AB0 = .text:0x00002AB0; // type:function size:0x10 -fn_1_2AC0 = .text:0x00002AC0; // type:function size:0x1D4 -fn_1_2C94 = .text:0x00002C94; // type:function size:0x44C -fn_1_30E0 = .text:0x000030E0; // type:function size:0x460 -fn_1_3540 = .text:0x00003540; // type:function size:0x83C -fn_1_3D7C = .text:0x00003D7C; // type:function size:0x254 -fn_1_3FD0 = .text:0x00003FD0; // type:function size:0x58 -fn_1_4028 = .text:0x00004028; // type:function size:0x6FC -fn_1_4724 = .text:0x00004724; // type:function size:0x14 -fn_1_4738 = .text:0x00004738; // type:function size:0x60 -fn_1_4798 = .text:0x00004798; // type:function size:0x138 -fn_1_48D0 = .text:0x000048D0; // type:function size:0xBC -fn_1_498C = .text:0x0000498C; // type:function size:0x188 -fn_1_4B14 = .text:0x00004B14; // type:function size:0x1C8 -fn_1_4CDC = .text:0x00004CDC; // type:function size:0x70 -fn_1_4D4C = .text:0x00004D4C; // type:function size:0xE4 -fn_1_4E30 = .text:0x00004E30; // type:function size:0x4A8 -fn_1_52D8 = .text:0x000052D8; // type:function size:0x1A8 -fn_1_5480 = .text:0x00005480; // type:function size:0xA4 -fn_1_5524 = .text:0x00005524; // type:function size:0x148 -fn_1_566C = .text:0x0000566C; // type:function size:0x9C -fn_1_5708 = .text:0x00005708; // type:function size:0x468 -fn_1_5B70 = .text:0x00005B70; // type:function size:0x4C0 -fn_1_6030 = .text:0x00006030; // type:function size:0x154 -fn_1_6184 = .text:0x00006184; // type:function size:0x380 -fn_1_6504 = .text:0x00006504; // type:function size:0xC8 -fn_1_65CC = .text:0x000065CC; // type:function size:0x10 -fn_1_65DC = .text:0x000065DC; // type:function size:0x5C -fn_1_6638 = .text:0x00006638; // type:function size:0xA4 -fn_1_66DC = .text:0x000066DC; // type:function size:0xE4 -fn_1_67C0 = .text:0x000067C0; // type:function size:0x374 -fn_1_6B34 = .text:0x00006B34; // type:function size:0x140 -fn_1_6C74 = .text:0x00006C74; // type:function size:0x544 -fn_1_71B8 = .text:0x000071B8; // type:function size:0x60 -fn_1_7218 = .text:0x00007218; // type:function size:0x2C -fn_1_7244 = .text:0x00007244; // type:function size:0x38 -fn_1_727C = .text:0x0000727C; // type:function size:0x38 -fn_1_72B4 = .text:0x000072B4; // type:function size:0x570 -fn_1_7824 = .text:0x00007824; // type:function size:0xCC -fn_1_78F0 = .text:0x000078F0; // type:function size:0xA4 -fn_1_7994 = .text:0x00007994; // type:function size:0x68 -fn_1_79FC = .text:0x000079FC; // type:function size:0x7C -fn_1_7A78 = .text:0x00007A78; // type:function size:0x44 -fn_1_7ABC = .text:0x00007ABC; // type:function size:0x4FC -fn_1_7FB8 = .text:0x00007FB8; // type:function size:0x4BC -fn_1_8474 = .text:0x00008474; // type:function size:0x118 -fn_1_858C = .text:0x0000858C; // type:function size:0x204 -fn_1_8790 = .text:0x00008790; // type:function size:0x344 -fn_1_8AD4 = .text:0x00008AD4; // type:function size:0x1EC -fn_1_8CC0 = .text:0x00008CC0; // type:function size:0x6CC -fn_1_938C = .text:0x0000938C; // type:function size:0xB4 -fn_1_9440 = .text:0x00009440; // type:function size:0x494 -fn_1_98D4 = .text:0x000098D4; // type:function size:0x130 -fn_1_9A04 = .text:0x00009A04; // type:function size:0x258 -fn_1_9C5C = .text:0x00009C5C; // type:function size:0x49C -fn_1_A0F8 = .text:0x0000A0F8; // type:function size:0x358 -fn_1_A450 = .text:0x0000A450; // type:function size:0x380 -fn_1_A7D0 = .text:0x0000A7D0; // type:function size:0x134 -fn_1_A904 = .text:0x0000A904; // type:function size:0x13C -fn_1_AA40 = .text:0x0000AA40; // type:function size:0xB0 -fn_1_AAF0 = .text:0x0000AAF0; // type:function size:0xB0 -fn_1_ABA0 = .text:0x0000ABA0; // type:function size:0x20 -fn_1_ABC0 = .text:0x0000ABC0; // type:function size:0x30 -fn_1_ABF0 = .text:0x0000ABF0; // type:function size:0x90 -fn_1_AC80 = .text:0x0000AC80; // type:function size:0x108 -fn_1_AD88 = .text:0x0000AD88; // type:function size:0x7C -fn_1_AE04 = .text:0x0000AE04; // type:function size:0x2E4 -fn_1_B0E8 = .text:0x0000B0E8; // type:function size:0x48 -fn_1_B130 = .text:0x0000B130; // type:function size:0x20 -fn_1_B150 = .text:0x0000B150; // type:function size:0x1C -fn_1_B16C = .text:0x0000B16C; // type:function size:0x20 -fn_1_B18C = .text:0x0000B18C; // type:function size:0x1F8 -fn_1_B384 = .text:0x0000B384; // type:function size:0x80 -fn_1_B404 = .text:0x0000B404; // type:function size:0x90 -fn_1_B494 = .text:0x0000B494; // type:function size:0x64 -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_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_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_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 -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x70 data:float -lbl_1_data_BC = .data:0x000000BC; // type:object size:0xC -lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x8 data:4byte -jumptable_1_data_D0 = .data:0x000000D0; // type:object size:0x44 scope:local -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_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:0x26 -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 -lbl_1_data_214 = .data:0x00000214; // type:object size:0x1C -lbl_1_data_230 = .data:0x00000230; // type:object size:0x20 -lbl_1_data_250 = .data:0x00000250; // type:object size:0x10 -lbl_1_data_260 = .data:0x00000260; // type:object size:0x8 -lbl_1_data_268 = .data:0x00000268; // type:object size:0x2 data:2byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x2 data:2byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte -lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x1 data:byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x1 data:byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:float -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x2 data:2byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x28 -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x3C data:2byte -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x1 data:byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x10 -lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x80 data:4byte -lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4F0 data:2byte -lbl_1_bss_61C = .bss:0x0000061C; // type:object size:0x10 -lbl_1_bss_62C = .bss:0x0000062C; // type:object size:0x50 data:float diff --git a/config/GMPJ01_00/rels/m432Dll/splits.txt b/config/GMPJ01_00/rels/m432Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m432Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m432Dll/symbols.txt b/config/GMPJ01_00/rels/m432Dll/symbols.txt deleted file mode 100644 index 7d4201a9..00000000 --- a/config/GMPJ01_00/rels/m432Dll/symbols.txt +++ /dev/null @@ -1,359 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x24 -fn_1_24 = .text:0x00000024; // type:function size:0x88 -fn_1_AC = .text:0x000000AC; // type:function size:0xA4 -fn_1_150 = .text:0x00000150; // type:function size:0x24 -fn_1_174 = .text:0x00000174; // type:function size:0x164 -fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C -fn_1_414 = .text:0x00000414; // type:function size:0x58 -fn_1_46C = .text:0x0000046C; // type:function size:0x114 -fn_1_580 = .text:0x00000580; // type:function size:0x218 -fn_1_798 = .text:0x00000798; // type:function size:0x254 -fn_1_9EC = .text:0x000009EC; // type:function size:0x54 -fn_1_A40 = .text:0x00000A40; // type:function size:0x10C -fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 -fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C -fn_1_1350 = .text:0x00001350; // type:function size:0x8C -fn_1_13DC = .text:0x000013DC; // type:function size:0x334 -fn_1_1710 = .text:0x00001710; // type:function size:0x350 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 -fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 -fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 -fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 -fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 -fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C -fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 -fn_1_23B4 = .text:0x000023B4; // type:function size:0x64 -fn_1_2418 = .text:0x00002418; // type:function size:0xE0 -fn_1_24F8 = .text:0x000024F8; // type:function size:0x32C -fn_1_2824 = .text:0x00002824; // type:function size:0x3AC -fn_1_2BD0 = .text:0x00002BD0; // type:function size:0x30 -fn_1_2C00 = .text:0x00002C00; // type:function size:0x1C -fn_1_2C1C = .text:0x00002C1C; // type:function size:0x18C -fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x8 -fn_1_2DB0 = .text:0x00002DB0; // type:function size:0x8 -fn_1_2DB8 = .text:0x00002DB8; // type:function size:0x8 -fn_1_2DC0 = .text:0x00002DC0; // type:function size:0x8 -fn_1_2DC8 = .text:0x00002DC8; // type:function size:0xC -fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x60 -fn_1_2E34 = .text:0x00002E34; // type:function size:0xB90 -fn_1_39C4 = .text:0x000039C4; // type:function size:0x31C -fn_1_3CE0 = .text:0x00003CE0; // type:function size:0xD8 -fn_1_3DB8 = .text:0x00003DB8; // type:function size:0x114 -fn_1_3ECC = .text:0x00003ECC; // type:function size:0xB8 -fn_1_3F84 = .text:0x00003F84; // type:function size:0xA0 -fn_1_4024 = .text:0x00004024; // type:function size:0x9C -fn_1_40C0 = .text:0x000040C0; // type:function size:0xE18 -fn_1_4ED8 = .text:0x00004ED8; // type:function size:0x250 -fn_1_5128 = .text:0x00005128; // type:function size:0x10 -fn_1_5138 = .text:0x00005138; // type:function size:0x10 -fn_1_5148 = .text:0x00005148; // type:function size:0x60 -fn_1_51A8 = .text:0x000051A8; // type:function size:0x60 -fn_1_5208 = .text:0x00005208; // type:function size:0xB0 -fn_1_52B8 = .text:0x000052B8; // type:function size:0xAC -fn_1_5364 = .text:0x00005364; // type:function size:0x408 -fn_1_576C = .text:0x0000576C; // type:function size:0xDC -fn_1_5848 = .text:0x00005848; // type:function size:0x364 -fn_1_5BAC = .text:0x00005BAC; // type:function size:0x380 -fn_1_5F2C = .text:0x00005F2C; // type:function size:0x310 -fn_1_623C = .text:0x0000623C; // type:function size:0xAF8 -fn_1_6D34 = .text:0x00006D34; // type:function size:0x1F4 -fn_1_6F28 = .text:0x00006F28; // type:function size:0xCF4 -fn_1_7C1C = .text:0x00007C1C; // type:function size:0x924 -fn_1_8540 = .text:0x00008540; // type:function size:0x6C -fn_1_85AC = .text:0x000085AC; // type:function size:0x70 -fn_1_861C = .text:0x0000861C; // type:function size:0x1F8 -fn_1_8814 = .text:0x00008814; // type:function size:0x200 -fn_1_8A14 = .text:0x00008A14; // type:function size:0x2A0 -fn_1_8CB4 = .text:0x00008CB4; // type:function size:0x288 -fn_1_8F3C = .text:0x00008F3C; // type:function size:0x130 -fn_1_906C = .text:0x0000906C; // type:function size:0x350 -fn_1_93BC = .text:0x000093BC; // type:function size:0x15B8 -fn_1_A974 = .text:0x0000A974; // type:function size:0x8C -fn_1_AA00 = .text:0x0000AA00; // type:function size:0x1C -fn_1_AA1C = .text:0x0000AA1C; // type:function size:0x2AC -fn_1_ACC8 = .text:0x0000ACC8; // type:function size:0x260 -fn_1_AF28 = .text:0x0000AF28; // type:function size:0x26C -_prolog = .text:0x0000B194; // type:function size:0x54 scope:global -_epilog = .text:0x0000B1E8; // type:function size:0x4C scope:global -fn_1_B234 = .text:0x0000B234; // type:function size:0x224 -fn_1_B458 = .text:0x0000B458; // type:function size:0xC0 -fn_1_B518 = .text:0x0000B518; // type:function size:0x2CC -fn_1_B7E4 = .text:0x0000B7E4; // type:function size:0x190 -fn_1_B974 = .text:0x0000B974; // type:function size:0x134 -fn_1_BAA8 = .text:0x0000BAA8; // type:function size:0x460 -fn_1_BF08 = .text:0x0000BF08; // type:function size:0x94 -fn_1_BF9C = .text:0x0000BF9C; // type:function size:0x3A0 -fn_1_C33C = .text:0x0000C33C; // type:function size:0x3E8 -fn_1_C724 = .text:0x0000C724; // type:function size:0x9BC -fn_1_D0E0 = .text:0x0000D0E0; // type:function size:0x90C -fn_1_D9EC = .text:0x0000D9EC; // type:function size:0x9C8 -fn_1_E3B4 = .text:0x0000E3B4; // type:function size:0x630 -fn_1_E9E4 = .text:0x0000E9E4; // type:function size:0x298 -fn_1_EC7C = .text:0x0000EC7C; // type:function size:0x90 -fn_1_ED0C = .text:0x0000ED0C; // type:function size:0x1544 -fn_1_10250 = .text:0x00010250; // type:function size:0xA7C -fn_1_10CCC = .text:0x00010CCC; // type:function size:0x724 -fn_1_113F0 = .text:0x000113F0; // type:function size:0x4 -fn_1_113F4 = .text:0x000113F4; // type:function size:0x140C -fn_1_12800 = .text:0x00012800; // type:function size:0x4 -fn_1_12804 = .text:0x00012804; // type:function size:0xC4 -fn_1_128C8 = .text:0x000128C8; // type:function size:0x5E0 -fn_1_12EA8 = .text:0x00012EA8; // type:function size:0x300 -fn_1_131A8 = .text:0x000131A8; // type:function size:0x2178 -fn_1_15320 = .text:0x00015320; // type:function size:0x9C -fn_1_153BC = .text:0x000153BC; // type:function size:0xDA0 -fn_1_1615C = .text:0x0001615C; // type:function size:0x104 -_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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // 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:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 -lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 -lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 -lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 -lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x20 data:float -lbl_1_data_C8 = .data:0x000000C8; // type:object size:0xC -lbl_1_data_D4 = .data:0x000000D4; // type:object size:0xC -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x4 -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0xC -lbl_1_data_FC = .data:0x000000FC; // type:object size:0xC -lbl_1_data_108 = .data:0x00000108; // type:object size:0x160 -lbl_1_data_268 = .data:0x00000268; // type:object size:0x20 -lbl_1_data_288 = .data:0x00000288; // type:object size:0x24 -lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x24 -lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x24 -lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x24 -lbl_1_data_318 = .data:0x00000318; // type:object size:0x3C -lbl_1_data_354 = .data:0x00000354; // type:object size:0x18 -lbl_1_data_36C = .data:0x0000036C; // type:object size:0x18 -lbl_1_data_384 = .data:0x00000384; // type:object size:0xB data:string -lbl_1_data_38F = .data:0x0000038F; // type:object size:0xB data:string -lbl_1_data_39A = .data:0x0000039A; // type:object size:0xB data:string -lbl_1_data_3A5 = .data:0x000003A5; // type:object size:0xB data:string -lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0xB data:string -lbl_1_data_3BB = .data:0x000003BB; // type:object size:0xB data:string -lbl_1_data_3C6 = .data:0x000003C6; // type:object size:0xB data:string -lbl_1_data_3D1 = .data:0x000003D1; // type:object size:0xB data:string -lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x20 -lbl_1_data_3FC = .data:0x000003FC; // type:object size:0xB data:string -lbl_1_data_407 = .data:0x00000407; // type:object size:0xB data:string -lbl_1_data_412 = .data:0x00000412; // type:object size:0xB data:string -lbl_1_data_41D = .data:0x0000041D; // type:object size:0xB data:string -lbl_1_data_428 = .data:0x00000428; // type:object size:0xB data:string -lbl_1_data_433 = .data:0x00000433; // type:object size:0xD -lbl_1_data_440 = .data:0x00000440; // type:object size:0x18 data:4byte -lbl_1_data_458 = .data:0x00000458; // type:object size:0xB data:string -lbl_1_data_463 = .data:0x00000463; // type:object size:0xB data:string -lbl_1_data_46E = .data:0x0000046E; // type:object size:0xB data:string -lbl_1_data_479 = .data:0x00000479; // type:object size:0xB data:string -lbl_1_data_484 = .data:0x00000484; // type:object size:0xB data:string -lbl_1_data_48F = .data:0x0000048F; // type:object size:0xB data:string -lbl_1_data_49A = .data:0x0000049A; // type:object size:0xB data:string -lbl_1_data_4A5 = .data:0x000004A5; // type:object size:0xB data:string -lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0xB data:string -lbl_1_data_4BB = .data:0x000004BB; // type:object size:0xD -lbl_1_data_4C8 = .data:0x000004C8; // type:object size:0x28 data:4byte -lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x14 -lbl_1_data_504 = .data:0x00000504; // type:object size:0x24 -lbl_1_data_528 = .data:0x00000528; // type:object size:0x8 -lbl_1_data_530 = .data:0x00000530; // type:object size:0xB data:string -lbl_1_data_53B = .data:0x0000053B; // type:object size:0xB data:string -lbl_1_data_546 = .data:0x00000546; // type:object size:0xB data:string -lbl_1_data_551 = .data:0x00000551; // type:object size:0xB data:string -lbl_1_data_55C = .data:0x0000055C; // type:object size:0xB data:string -lbl_1_data_567 = .data:0x00000567; // type:object size:0xB data:string -lbl_1_data_572 = .data:0x00000572; // type:object size:0xB data:string -lbl_1_data_57D = .data:0x0000057D; // type:object size:0xB data:string -lbl_1_data_588 = .data:0x00000588; // type:object size:0xB data:string -lbl_1_data_593 = .data:0x00000593; // type:object size:0xB data:string -lbl_1_data_59E = .data:0x0000059E; // type:object size:0xB data:string -lbl_1_data_5A9 = .data:0x000005A9; // type:object size:0xB data:string -lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0xB data:string -lbl_1_data_5BF = .data:0x000005BF; // type:object size:0xB data:string -lbl_1_data_5CA = .data:0x000005CA; // type:object size:0xB data:string -lbl_1_data_5D5 = .data:0x000005D5; // type:object size:0xB data:string -lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0xC -lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x8B8 -lbl_1_data_EA4 = .data:0x00000EA4; // type:object size:0xB data:string -lbl_1_data_EAF = .data:0x00000EAF; // type:object size:0xB data:string -lbl_1_data_EBA = .data:0x00000EBA; // type:object size:0xB data:string -lbl_1_data_EC5 = .data:0x00000EC5; // type:object size:0xB data:string -lbl_1_data_ED0 = .data:0x00000ED0; // type:object size:0xC -lbl_1_data_EDC = .data:0x00000EDC; // type:object size:0x8B8 -lbl_1_data_1794 = .data:0x00001794; // type:object size:0x20 -lbl_1_data_17B4 = .data:0x000017B4; // type:object size:0x20 -lbl_1_data_17D4 = .data:0x000017D4; // type:object size:0x20 data:float -lbl_1_data_17F4 = .data:0x000017F4; // type:object size:0x20 -lbl_1_data_1814 = .data:0x00001814; // type:object size:0x50 -lbl_1_data_1864 = .data:0x00001864; // type:object size:0x11 data:string -lbl_1_data_1875 = .data:0x00001875; // type:object size:0x11 data:string -lbl_1_data_1886 = .data:0x00001886; // type:object size:0x11 data:string -lbl_1_data_1897 = .data:0x00001897; // type:object size:0x18 data:string -lbl_1_data_18AF = .data:0x000018AF; // type:object size:0xB data:string -lbl_1_data_18BA = .data:0x000018BA; // type:object size:0x18 data:string -lbl_1_data_18D2 = .data:0x000018D2; // type:object size:0xC data:string -lbl_1_data_18DE = .data:0x000018DE; // type:object size:0x6 data:string -lbl_1_data_18E4 = .data:0x000018E4; // type:object size:0x21 data:string -lbl_1_data_1905 = .data:0x00001905; // type:object size:0x1F -jumptable_1_data_1924 = .data:0x00001924; // type:object size:0x1C scope:local -jumptable_1_data_1940 = .data:0x00001940; // type:object size:0x44 scope:local -lbl_1_data_1984 = .data:0x00001984; // type:object size:0xB data:string -lbl_1_data_198F = .data:0x0000198F; // type:object size:0x1D -jumptable_1_data_19AC = .data:0x000019AC; // type:object size:0x28 scope:local -lbl_1_data_19D4 = .data:0x000019D4; // type:object size:0x24 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x3F0 data:float -lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x4 data:float -lbl_1_bss_3F4 = .bss:0x000003F4; // type:object size:0x4 data:4byte -lbl_1_bss_3F8 = .bss:0x000003F8; // type:object size:0x4 data:4byte -lbl_1_bss_3FC = .bss:0x000003FC; // type:object size:0x4 data:4byte -lbl_1_bss_400 = .bss:0x00000400; // type:object size:0x2 data:2byte -lbl_1_bss_402 = .bss:0x00000402; // type:object size:0x2 data:2byte -lbl_1_bss_404 = .bss:0x00000404; // type:object size:0x2 data:2byte -lbl_1_bss_408 = .bss:0x00000408; // type:object size:0x8 data:4byte -lbl_1_bss_410 = .bss:0x00000410; // type:object size:0x4 data:4byte -lbl_1_bss_414 = .bss:0x00000414; // type:object size:0x4 data:4byte -lbl_1_bss_418 = .bss:0x00000418; // type:object size:0x4 data:4byte -lbl_1_bss_41C = .bss:0x0000041C; // type:object size:0x4 data:4byte -lbl_1_bss_420 = .bss:0x00000420; // type:object size:0x4 data:float -lbl_1_bss_424 = .bss:0x00000424; // type:object size:0x4 data:4byte -lbl_1_bss_428 = .bss:0x00000428; // type:object size:0x100 -lbl_1_bss_528 = .bss:0x00000528; // type:object size:0x40 data:4byte -lbl_1_bss_568 = .bss:0x00000568; // type:object size:0x4 data:float -lbl_1_bss_56C = .bss:0x0000056C; // type:object size:0x4 data:4byte -lbl_1_bss_570 = .bss:0x00000570; // type:object size:0x4 data:4byte -lbl_1_bss_574 = .bss:0x00000574; // type:object size:0x2 data:2byte -lbl_1_bss_576 = .bss:0x00000576; // type:object size:0x2 data:2byte -lbl_1_bss_578 = .bss:0x00000578; // type:object size:0x4 data:4byte -lbl_1_bss_57C = .bss:0x0000057C; // type:object size:0x4 data:4byte -lbl_1_bss_580 = .bss:0x00000580; // type:object size:0x4 data:4byte -lbl_1_bss_584 = .bss:0x00000584; // type:object size:0xC data:float -lbl_1_bss_590 = .bss:0x00000590; // type:object size:0xC data:4byte -lbl_1_bss_59C = .bss:0x0000059C; // type:object size:0xC data:float -lbl_1_bss_5A8 = .bss:0x000005A8; // type:object size:0xC data:4byte -lbl_1_bss_5B4 = .bss:0x000005B4; // type:object size:0x4 data:4byte -lbl_1_bss_5B8 = .bss:0x000005B8; // type:object size:0x18 data:4byte -lbl_1_bss_5D0 = .bss:0x000005D0; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m434Dll/splits.txt b/config/GMPJ01_00/rels/m434Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m434Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m434Dll/symbols.txt b/config/GMPJ01_00/rels/m434Dll/symbols.txt deleted file mode 100644 index 6e8050dc..00000000 --- a/config/GMPJ01_00/rels/m434Dll/symbols.txt +++ /dev/null @@ -1,337 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x45C -fn_1_4FC = .text:0x000004FC; // type:function size:0x5C -fn_1_558 = .text:0x00000558; // type:function size:0x70C -fn_1_C64 = .text:0x00000C64; // type:function size:0x64 -fn_1_CC8 = .text:0x00000CC8; // type:function size:0x17C -fn_1_E44 = .text:0x00000E44; // type:function size:0x278 -fn_1_10BC = .text:0x000010BC; // type:function size:0x38 -fn_1_10F4 = .text:0x000010F4; // type:function size:0x10 -fn_1_1104 = .text:0x00001104; // type:function size:0x4C -fn_1_1150 = .text:0x00001150; // type:function size:0x320 -fn_1_1470 = .text:0x00001470; // type:function size:0x1C8 -fn_1_1638 = .text:0x00001638; // type:function size:0x4C -fn_1_1684 = .text:0x00001684; // type:function size:0x30 -fn_1_16B4 = .text:0x000016B4; // type:function size:0x24 -fn_1_16D8 = .text:0x000016D8; // type:function size:0xB0 -fn_1_1788 = .text:0x00001788; // type:function size:0xB0 -fn_1_1838 = .text:0x00001838; // type:function size:0x118 -fn_1_1950 = .text:0x00001950; // type:function size:0xB0 -fn_1_1A00 = .text:0x00001A00; // type:function size:0x10 -fn_1_1A10 = .text:0x00001A10; // type:function size:0x234 -fn_1_1C44 = .text:0x00001C44; // type:function size:0x44 -fn_1_1C88 = .text:0x00001C88; // type:function size:0x30 -fn_1_1CB8 = .text:0x00001CB8; // type:function size:0x8C -fn_1_1D44 = .text:0x00001D44; // type:function size:0x10 -fn_1_1D54 = .text:0x00001D54; // type:function size:0x10 -fn_1_1D64 = .text:0x00001D64; // type:function size:0x10 -fn_1_1D74 = .text:0x00001D74; // type:function size:0x18 -fn_1_1D8C = .text:0x00001D8C; // type:function size:0x10 -fn_1_1D9C = .text:0x00001D9C; // type:function size:0x14 -fn_1_1DB0 = .text:0x00001DB0; // type:function size:0x94 -fn_1_1E44 = .text:0x00001E44; // type:function size:0x20 -fn_1_1E64 = .text:0x00001E64; // type:function size:0x7A4 -fn_1_2608 = .text:0x00002608; // type:function size:0x9C -fn_1_26A4 = .text:0x000026A4; // type:function size:0x24C -fn_1_28F0 = .text:0x000028F0; // type:function size:0x88 -fn_1_2978 = .text:0x00002978; // type:function size:0x68C -fn_1_3004 = .text:0x00003004; // type:function size:0x124 -fn_1_3128 = .text:0x00003128; // type:function size:0x1B4 -fn_1_32DC = .text:0x000032DC; // type:function size:0xC8 -fn_1_33A4 = .text:0x000033A4; // type:function size:0xF8 -fn_1_349C = .text:0x0000349C; // type:function size:0xF8 -fn_1_3594 = .text:0x00003594; // type:function size:0x734 -fn_1_3CC8 = .text:0x00003CC8; // type:function size:0x6E4 -fn_1_43AC = .text:0x000043AC; // type:function size:0x90 -fn_1_443C = .text:0x0000443C; // type:function size:0x3B0 -fn_1_47EC = .text:0x000047EC; // type:function size:0x68 -fn_1_4854 = .text:0x00004854; // type:function size:0x110 -fn_1_4964 = .text:0x00004964; // type:function size:0x24 -fn_1_4988 = .text:0x00004988; // type:function size:0x46C -fn_1_4DF4 = .text:0x00004DF4; // type:function size:0x5C -fn_1_4E50 = .text:0x00004E50; // type:function size:0xC60 -fn_1_5AB0 = .text:0x00005AB0; // type:function size:0x13C -fn_1_5BEC = .text:0x00005BEC; // type:function size:0xAC -fn_1_5C98 = .text:0x00005C98; // type:function size:0x414 -fn_1_60AC = .text:0x000060AC; // type:function size:0x19C -fn_1_6248 = .text:0x00006248; // type:function size:0x74 -fn_1_62BC = .text:0x000062BC; // type:function size:0x1E0 -fn_1_649C = .text:0x0000649C; // type:function size:0x24 -fn_1_64C0 = .text:0x000064C0; // type:function size:0x1D0 -fn_1_6690 = .text:0x00006690; // type:function size:0x11C -fn_1_67AC = .text:0x000067AC; // type:function size:0xB4 -fn_1_6860 = .text:0x00006860; // type:function size:0x224 -fn_1_6A84 = .text:0x00006A84; // type:function size:0x4 -fn_1_6A88 = .text:0x00006A88; // type:function size:0x2F4 -fn_1_6D7C = .text:0x00006D7C; // type:function size:0x3C -fn_1_6DB8 = .text:0x00006DB8; // type:function size:0x4 -fn_1_6DBC = .text:0x00006DBC; // type:function size:0x1034 -fn_1_7DF0 = .text:0x00007DF0; // type:function size:0x464 -fn_1_8254 = .text:0x00008254; // type:function size:0x174 -fn_1_83C8 = .text:0x000083C8; // type:function size:0x108 -fn_1_84D0 = .text:0x000084D0; // type:function size:0xF4 -fn_1_85C4 = .text:0x000085C4; // type:function size:0x2C0 -fn_1_8884 = .text:0x00008884; // type:function size:0x268 -fn_1_8AEC = .text:0x00008AEC; // type:function size:0x6C -fn_1_8B58 = .text:0x00008B58; // type:function size:0xBC -fn_1_8C14 = .text:0x00008C14; // type:function size:0x164 -fn_1_8D78 = .text:0x00008D78; // type:function size:0xB4 -fn_1_8E2C = .text:0x00008E2C; // type:function size:0x110 -fn_1_8F3C = .text:0x00008F3C; // type:function size:0x64 -fn_1_8FA0 = .text:0x00008FA0; // type:function size:0x1EC -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // 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:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -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:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:4byte -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x10 data:4byte -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0xC data:4byte -lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC data:4byte -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -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_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:4byte -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x48 -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x48 -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:4byte -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x48 -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x48 -lbl_1_data_0 = .data:0x00000000; // type:object size:0xC data:float -lbl_1_data_C = .data:0x0000000C; // type:object size:0x18 data:float -lbl_1_data_24 = .data:0x00000024; // type:object size:0x28 -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x4 data:4byte -lbl_1_data_74 = .data:0x00000074; // type:object size:0x12 data:string -lbl_1_data_86 = .data:0x00000086; // type:object size:0x1E -lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 -lbl_1_data_B4 = .data:0x000000B4; // type:object size:0xC -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x30 -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x10 -lbl_1_data_100 = .data:0x00000100; // type:object size:0x34 -lbl_1_data_134 = .data:0x00000134; // type:object size:0x5 data:string -lbl_1_data_139 = .data:0x00000139; // type:object size:0x7 data:byte -lbl_1_data_140 = .data:0x00000140; // type:object size:0x18 -lbl_1_data_158 = .data:0x00000158; // type:object size:0x1C -lbl_1_data_174 = .data:0x00000174; // type:object size:0x1 data:byte -lbl_1_data_178 = .data:0x00000178; // type:object size:0x8 data:byte -lbl_1_data_180 = .data:0x00000180; // type:object size:0x10 -lbl_1_data_190 = .data:0x00000190; // type:object size:0x20 -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2C -lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x18 -lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x28 -lbl_1_data_224 = .data:0x00000224; // type:object size:0x90 -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 data:string -lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 data:string -lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x6 -lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x8 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x380 -lbl_1_bss_39C = .bss:0x0000039C; // type:object size:0x4 data:4byte -lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x8 -lbl_1_bss_3A8 = .bss:0x000003A8; // type:object size:0x2 data:2byte -lbl_1_bss_3AA = .bss:0x000003AA; // type:object size:0x2 data:2byte -lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x2 data:2byte -lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x8 data:2byte -lbl_1_bss_3B8 = .bss:0x000003B8; // type:object size:0x4 data:4byte -lbl_1_bss_3BC = .bss:0x000003BC; // type:object size:0x4 data:4byte -lbl_1_bss_3C0 = .bss:0x000003C0; // type:object size:0x2 data:2byte -lbl_1_bss_3C2 = .bss:0x000003C2; // type:object size:0x2 data:2byte -lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x8 data:4byte -lbl_1_bss_3CC = .bss:0x000003CC; // type:object size:0x4 data:4byte -lbl_1_bss_3D0 = .bss:0x000003D0; // type:object size:0x4 data:4byte -lbl_1_bss_3D4 = .bss:0x000003D4; // type:object size:0x1C data:4byte -lbl_1_bss_3F0 = .bss:0x000003F0; // type:object size:0x50 data:4byte -lbl_1_bss_440 = .bss:0x00000440; // type:object size:0x10 data:4byte -lbl_1_bss_450 = .bss:0x00000450; // type:object size:0x8 data:4byte -lbl_1_bss_458 = .bss:0x00000458; // type:object size:0x4 data:4byte -lbl_1_bss_45C = .bss:0x0000045C; // type:object size:0x8 data:4byte -lbl_1_bss_464 = .bss:0x00000464; // type:object size:0x2000 data:float -lbl_1_bss_2464 = .bss:0x00002464; // type:object size:0x4 data:4byte -lbl_1_bss_2468 = .bss:0x00002468; // type:object size:0x400 data:2byte -lbl_1_bss_2868 = .bss:0x00002868; // type:object size:0x3000 data:float -lbl_1_bss_5868 = .bss:0x00005868; // type:object size:0x8 data:4byte -lbl_1_bss_5870 = .bss:0x00005870; // type:object size:0x10 -lbl_1_bss_5880 = .bss:0x00005880; // type:object size:0x800 -lbl_1_bss_6080 = .bss:0x00006080; // type:object size:0x400 -lbl_1_bss_6480 = .bss:0x00006480; // type:object size:0x1000 -lbl_1_bss_7480 = .bss:0x00007480; // type:object size:0x400 data:4byte -lbl_1_bss_7880 = .bss:0x00007880; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m436Dll/splits.txt b/config/GMPJ01_00/rels/m436Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m436Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m436Dll/symbols.txt b/config/GMPJ01_00/rels/m436Dll/symbols.txt deleted file mode 100644 index 03264278..00000000 --- a/config/GMPJ01_00/rels/m436Dll/symbols.txt +++ /dev/null @@ -1,352 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x1A8 -fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 -fn_1_230 = .text:0x00000230; // type:function size:0x3E4 -fn_1_614 = .text:0x00000614; // type:function size:0x68 -fn_1_67C = .text:0x0000067C; // type:function size:0x6C -fn_1_6E8 = .text:0x000006E8; // type:function size:0x130 -fn_1_818 = .text:0x00000818; // type:function size:0x8C -fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 -fn_1_8C4 = .text:0x000008C4; // type:function size:0x6A8 -fn_1_F6C = .text:0x00000F6C; // type:function size:0x118 -fn_1_1084 = .text:0x00001084; // type:function size:0xC4 -fn_1_1148 = .text:0x00001148; // type:function size:0x644 -fn_1_178C = .text:0x0000178C; // type:function size:0x24 -fn_1_17B0 = .text:0x000017B0; // type:function size:0x458 -fn_1_1C08 = .text:0x00001C08; // type:function size:0x458 -fn_1_2060 = .text:0x00002060; // type:function size:0x1D0 -fn_1_2230 = .text:0x00002230; // type:function size:0x1D0 -fn_1_2400 = .text:0x00002400; // type:function size:0x68 -fn_1_2468 = .text:0x00002468; // type:function size:0x68 -fn_1_24D0 = .text:0x000024D0; // type:function size:0xE8 -fn_1_25B8 = .text:0x000025B8; // type:function size:0x11C -fn_1_26D4 = .text:0x000026D4; // type:function size:0x70 -fn_1_2744 = .text:0x00002744; // type:function size:0x84 -fn_1_27C8 = .text:0x000027C8; // type:function size:0x38 -fn_1_2800 = .text:0x00002800; // type:function size:0x24 -fn_1_2824 = .text:0x00002824; // type:function size:0x38 -fn_1_285C = .text:0x0000285C; // type:function size:0x1D0 -fn_1_2A2C = .text:0x00002A2C; // type:function size:0x64 -fn_1_2A90 = .text:0x00002A90; // type:function size:0x304 -fn_1_2D94 = .text:0x00002D94; // type:function size:0x28C -fn_1_3020 = .text:0x00003020; // type:function size:0x68 -fn_1_3088 = .text:0x00003088; // type:function size:0x174 -fn_1_31FC = .text:0x000031FC; // type:function size:0x7B8 -fn_1_39B4 = .text:0x000039B4; // type:function size:0x23C -fn_1_3BF0 = .text:0x00003BF0; // type:function size:0x61C -fn_1_420C = .text:0x0000420C; // type:function size:0xF8 -fn_1_4304 = .text:0x00004304; // type:function size:0x290 -fn_1_4594 = .text:0x00004594; // type:function size:0x318 -fn_1_48AC = .text:0x000048AC; // type:function size:0x150 -fn_1_49FC = .text:0x000049FC; // type:function size:0xB8 -fn_1_4AB4 = .text:0x00004AB4; // type:function size:0x68 -fn_1_4B1C = .text:0x00004B1C; // type:function size:0x38C -fn_1_4EA8 = .text:0x00004EA8; // type:function size:0x108 -fn_1_4FB0 = .text:0x00004FB0; // type:function size:0x3DC -fn_1_538C = .text:0x0000538C; // type:function size:0x28 -fn_1_53B4 = .text:0x000053B4; // type:function size:0x60 -fn_1_5414 = .text:0x00005414; // type:function size:0x3C -fn_1_5450 = .text:0x00005450; // type:function size:0x50 -fn_1_54A0 = .text:0x000054A0; // type:function size:0x168 -fn_1_5608 = .text:0x00005608; // type:function size:0x6C8 -fn_1_5CD0 = .text:0x00005CD0; // type:function size:0x390 -fn_1_6060 = .text:0x00006060; // type:function size:0x264 -fn_1_62C4 = .text:0x000062C4; // type:function size:0x624 -fn_1_68E8 = .text:0x000068E8; // type:function size:0x5C -fn_1_6944 = .text:0x00006944; // type:function size:0x298 -fn_1_6BDC = .text:0x00006BDC; // type:function size:0xB0 -fn_1_6C8C = .text:0x00006C8C; // type:function size:0xD8 -fn_1_6D64 = .text:0x00006D64; // type:function size:0xB0 -fn_1_6E14 = .text:0x00006E14; // type:function size:0xB0 -fn_1_6EC4 = .text:0x00006EC4; // type:function size:0xB0 -fn_1_6F74 = .text:0x00006F74; // type:function size:0xD8 -fn_1_704C = .text:0x0000704C; // type:function size:0xB0 -fn_1_70FC = .text:0x000070FC; // type:function size:0xB0 -fn_1_71AC = .text:0x000071AC; // type:function size:0x120 -fn_1_72CC = .text:0x000072CC; // type:function size:0x524 -fn_1_77F0 = .text:0x000077F0; // type:function size:0x368 -fn_1_7B58 = .text:0x00007B58; // type:function size:0x3C4 -fn_1_7F1C = .text:0x00007F1C; // type:function size:0x268C -fn_1_A5A8 = .text:0x0000A5A8; // type:function size:0xE2C -fn_1_B3D4 = .text:0x0000B3D4; // type:function size:0x40C -fn_1_B7E0 = .text:0x0000B7E0; // type:function size:0x4 -fn_1_B7E4 = .text:0x0000B7E4; // type:function size:0x184 -fn_1_B968 = .text:0x0000B968; // type:function size:0x4C -fn_1_B9B4 = .text:0x0000B9B4; // type:function size:0x5C -fn_1_BA10 = .text:0x0000BA10; // type:function size:0x94 -fn_1_BAA4 = .text:0x0000BAA4; // type:function size:0x100 -fn_1_BBA4 = .text:0x0000BBA4; // type:function size:0x50 -fn_1_BBF4 = .text:0x0000BBF4; // type:function size:0x48 -fn_1_BC3C = .text:0x0000BC3C; // type:function size:0x3C -fn_1_BC78 = .text:0x0000BC78; // type:function size:0x80 -fn_1_BCF8 = .text:0x0000BCF8; // type:function size:0x74 -fn_1_BD6C = .text:0x0000BD6C; // type:function size:0xB0 -fn_1_BE1C = .text:0x0000BE1C; // type:function size:0x50 -fn_1_BE6C = .text:0x0000BE6C; // type:function size:0x48 -fn_1_BEB4 = .text:0x0000BEB4; // type:function size:0x4C -fn_1_BF00 = .text:0x0000BF00; // type:function size:0xC8 -fn_1_BFC8 = .text:0x0000BFC8; // type:function size:0x30 -fn_1_BFF8 = .text:0x0000BFF8; // type:function size:0x98 -fn_1_C090 = .text:0x0000C090; // type:function size:0x458 -fn_1_C4E8 = .text:0x0000C4E8; // type:function size:0xFC -fn_1_C5E4 = .text:0x0000C5E4; // type:function size:0xB0 -fn_1_C694 = .text:0x0000C694; // type:function size:0xD8 -fn_1_C76C = .text:0x0000C76C; // type:function size:0xD8 -fn_1_C844 = .text:0x0000C844; // type:function size:0xC8 -fn_1_C90C = .text:0x0000C90C; // type:function size:0x398 -fn_1_CCA4 = .text:0x0000CCA4; // type:function size:0x374 -fn_1_D018 = .text:0x0000D018; // type:function size:0x32C -fn_1_D344 = .text:0x0000D344; // type:function size:0xD4 -fn_1_D418 = .text:0x0000D418; // type:function size:0x2A8 -fn_1_D6C0 = .text:0x0000D6C0; // type:function size:0x24 -fn_1_D6E4 = .text:0x0000D6E4; // type:function size:0x37C -fn_1_DA60 = .text:0x0000DA60; // type:function size:0xA0 -fn_1_DB00 = .text:0x0000DB00; // type:function size:0x2BC -fn_1_DDBC = .text:0x0000DDBC; // type:function size:0xF4 -fn_1_DEB0 = .text:0x0000DEB0; // type:function size:0x200 -fn_1_E0B0 = .text:0x0000E0B0; // type:function size:0x94 -fn_1_E144 = .text:0x0000E144; // type:function size:0x248 -fn_1_E38C = .text:0x0000E38C; // type:function size:0x140 -fn_1_E4CC = .text:0x0000E4CC; // type:function size:0xA0 -fn_1_E56C = .text:0x0000E56C; // type:function size:0xBC -fn_1_E628 = .text:0x0000E628; // type:function size:0x58 -fn_1_E680 = .text:0x0000E680; // type:function size:0x90 -fn_1_E710 = .text:0x0000E710; // type:function size:0x220 -fn_1_E930 = .text:0x0000E930; // type:function size:0xD4 -fn_1_EA04 = .text:0x0000EA04; // type:function size:0x348 -fn_1_ED4C = .text:0x0000ED4C; // type:function size:0xC4 -fn_1_EE10 = .text:0x0000EE10; // type:function size:0x5F4 -fn_1_F404 = .text:0x0000F404; // type:function size:0xEC -fn_1_F4F0 = .text:0x0000F4F0; // type:function size:0x48 -fn_1_F538 = .text:0x0000F538; // type:function size:0x30 -fn_1_F568 = .text:0x0000F568; // type:function size:0x98 -fn_1_F600 = .text:0x0000F600; // type:function size:0xB0 -fn_1_F6B0 = .text:0x0000F6B0; // type:function size:0xAC -fn_1_F75C = .text:0x0000F75C; // type:function size:0x30 -fn_1_F78C = .text:0x0000F78C; // type:function size:0x98 -fn_1_F824 = .text:0x0000F824; // type:function size:0x100 -fn_1_F924 = .text:0x0000F924; // type:function size:0x60 -fn_1_F984 = .text:0x0000F984; // type:function size:0x8E8 -fn_1_1026C = .text:0x0001026C; // type:function size:0x404 -fn_1_10670 = .text:0x00010670; // type:function size:0x1CC -_prolog = .text:0x0001083C; // type:function size:0x54 scope:global -_epilog = .text:0x00010890; // type:function size:0x4C scope:global -fn_1_108DC = .text:0x000108DC; // type:function size:0x410 -fn_1_10CEC = .text:0x00010CEC; // type:function size:0x410 -fn_1_110FC = .text:0x000110FC; // type:function size:0x40 -fn_1_1113C = .text:0x0001113C; // type:function size:0x28 -fn_1_11164 = .text:0x00011164; // type:function size:0xC8 -fn_1_1122C = .text:0x0001122C; // type:function size:0xC8 -fn_1_112F4 = .text:0x000112F4; // type:function size:0xD8 -fn_1_113CC = .text:0x000113CC; // type:function size:0x33C -fn_1_11708 = .text:0x00011708; // type:function size:0x110 -fn_1_11818 = .text:0x00011818; // type:function size:0x178 -fn_1_11990 = .text:0x00011990; // type:function size:0x188 -fn_1_11B18 = .text:0x00011B18; // type:function size:0x1B0 -fn_1_11CC8 = .text:0x00011CC8; // type:function size:0x50 -fn_1_11D18 = .text:0x00011D18; // type:function size:0x5C -fn_1_11D74 = .text:0x00011D74; // type:function size:0x88 -fn_1_11DFC = .text:0x00011DFC; // type:function size:0x74 -fn_1_11E70 = .text:0x00011E70; // type:function size:0x94 -fn_1_11F04 = .text:0x00011F04; // type:function size:0x3C -fn_1_11F40 = .text:0x00011F40; // type:function size:0x318 -fn_1_12258 = .text:0x00012258; // type:function size:0x3C -fn_1_12294 = .text:0x00012294; // type:function size:0x4C -fn_1_122E0 = .text:0x000122E0; // type:function size:0x314 -fn_1_125F4 = .text:0x000125F4; // type:function size:0x314 -fn_1_12908 = .text:0x00012908; // type:function size:0x27C -fn_1_12B84 = .text:0x00012B84; // type:function size:0x2B4 -fn_1_12E38 = .text:0x00012E38; // type:function size:0x530 -fn_1_13368 = .text:0x00013368; // type:function size:0x454 -fn_1_137BC = .text:0x000137BC; // type:function size:0x48C -fn_1_13C48 = .text:0x00013C48; // type:function size:0x71C -fn_1_14364 = .text:0x00014364; // type:function size:0x4C4 -fn_1_14828 = .text:0x00014828; // type:function size:0x4FC -fn_1_14D24 = .text:0x00014D24; // type:function size:0x78C -_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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte -lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x3C data:4byte -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x30 data:4byte -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:4byte -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x18 data:4byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:4byte -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:4byte -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:4byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x8 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0xC data:4byte -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:4byte -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:4byte -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x30 data:4byte -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x34 data:4byte -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 -lbl_1_data_20 = .data:0x00000020; // type:object size:0x20 -lbl_1_data_40 = .data:0x00000040; // type:object size:0xA0 -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x4 data:4byte -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x4 data:4byte -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:4byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x1B data:string -lbl_1_data_107 = .data:0x00000107; // type:object size:0x22 data:string -lbl_1_data_129 = .data:0x00000129; // type:object size:0x1A data:string -lbl_1_data_143 = .data:0x00000143; // type:object size:0x1A data:string -lbl_1_data_15D = .data:0x0000015D; // type:object size:0xF -lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 data:4byte -lbl_1_data_170 = .data:0x00000170; // type:object size:0x34 -lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x14 -jumptable_1_data_1B8 = .data:0x000001B8; // type:object size:0x30 scope:local -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x6C -lbl_1_data_254 = .data:0x00000254; // type:object size:0x18 data:float -lbl_1_data_26C = .data:0x0000026C; // type:object size:0x12 data:string -lbl_1_data_27E = .data:0x0000027E; // type:object size:0x12 data:string -lbl_1_data_290 = .data:0x00000290; // type:object size:0x9C -lbl_1_data_32C = .data:0x0000032C; // type:object size:0x18 -jumptable_1_data_344 = .data:0x00000344; // type:object size:0x28 scope:local -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:float -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x30 data:float -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x30 data:float -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x18 data:4byte -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x18 data:4byte -lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0xA8 data:4byte -lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x28 data:4byte -lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x14 data:4byte -lbl_1_bss_1BC = .bss:0x000001BC; // type:object size:0x64 data:4byte -lbl_1_bss_220 = .bss:0x00000220; // type:object size:0x14 data:4byte -lbl_1_bss_234 = .bss:0x00000234; // type:object size:0xF8 data:4byte -lbl_1_bss_32C = .bss:0x0000032C; // type:object size:0x78 data:4byte -lbl_1_bss_3A4 = .bss:0x000003A4; // type:object size:0x8 data:4byte -lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x38 data:4byte -lbl_1_bss_3E4 = .bss:0x000003E4; // type:object size:0xC0 -lbl_1_bss_4A4 = .bss:0x000004A4; // type:object size:0x10 data:4byte diff --git a/config/GMPJ01_00/rels/m437Dll/splits.txt b/config/GMPJ01_00/rels/m437Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m437Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m437Dll/symbols.txt b/config/GMPJ01_00/rels/m437Dll/symbols.txt deleted file mode 100644 index 8cd64fd3..00000000 --- a/config/GMPJ01_00/rels/m437Dll/symbols.txt +++ /dev/null @@ -1,411 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x1A8 -fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 -fn_1_230 = .text:0x00000230; // type:function size:0x68 -fn_1_298 = .text:0x00000298; // type:function size:0x6C -fn_1_304 = .text:0x00000304; // type:function size:0x130 -fn_1_434 = .text:0x00000434; // type:function size:0x8C -fn_1_4C0 = .text:0x000004C0; // type:function size:0x3E4 -fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 -fn_1_8C4 = .text:0x000008C4; // type:function size:0x20 -fn_1_8E4 = .text:0x000008E4; // type:function size:0x6A8 -fn_1_F8C = .text:0x00000F8C; // type:function size:0x134 -fn_1_10C0 = .text:0x000010C0; // type:function size:0xC4 -fn_1_1184 = .text:0x00001184; // type:function size:0x38 -fn_1_11BC = .text:0x000011BC; // type:function size:0x24 -fn_1_11E0 = .text:0x000011E0; // type:function size:0x38 -fn_1_1218 = .text:0x00001218; // type:function size:0x1D0 -fn_1_13E8 = .text:0x000013E8; // type:function size:0x64 -fn_1_144C = .text:0x0000144C; // type:function size:0x644 -fn_1_1A90 = .text:0x00001A90; // type:function size:0x24 -fn_1_1AB4 = .text:0x00001AB4; // type:function size:0x458 -fn_1_1F0C = .text:0x00001F0C; // type:function size:0x1EC -fn_1_20F8 = .text:0x000020F8; // type:function size:0x1EC -fn_1_22E4 = .text:0x000022E4; // type:function size:0x458 -fn_1_273C = .text:0x0000273C; // type:function size:0x68 -fn_1_27A4 = .text:0x000027A4; // type:function size:0x68 -fn_1_280C = .text:0x0000280C; // type:function size:0xE8 -fn_1_28F4 = .text:0x000028F4; // type:function size:0x11C -fn_1_2A10 = .text:0x00002A10; // type:function size:0x84 -fn_1_2A94 = .text:0x00002A94; // type:function size:0x70 -fn_1_2B04 = .text:0x00002B04; // type:function size:0xA8 -fn_1_2BAC = .text:0x00002BAC; // type:function size:0x10 -fn_1_2BBC = .text:0x00002BBC; // type:function size:0x5D8 -fn_1_3194 = .text:0x00003194; // type:function size:0xCC -fn_1_3260 = .text:0x00003260; // type:function size:0x1B0 -fn_1_3410 = .text:0x00003410; // type:function size:0x284 -fn_1_3694 = .text:0x00003694; // type:function size:0x20 -fn_1_36B4 = .text:0x000036B4; // type:function size:0x120 -fn_1_37D4 = .text:0x000037D4; // type:function size:0x14 -fn_1_37E8 = .text:0x000037E8; // type:function size:0x1A8 -fn_1_3990 = .text:0x00003990; // type:function size:0x34 -fn_1_39C4 = .text:0x000039C4; // type:function size:0x20 -fn_1_39E4 = .text:0x000039E4; // type:function size:0x16C -fn_1_3B50 = .text:0x00003B50; // type:function size:0x14 -fn_1_3B64 = .text:0x00003B64; // type:function size:0x154 -fn_1_3CB8 = .text:0x00003CB8; // type:function size:0x88 -fn_1_3D40 = .text:0x00003D40; // type:function size:0x204 -fn_1_3F44 = .text:0x00003F44; // type:function size:0x5F4 -fn_1_4538 = .text:0x00004538; // type:function size:0x188 -fn_1_46C0 = .text:0x000046C0; // type:function size:0x268 -fn_1_4928 = .text:0x00004928; // type:function size:0x10 -fn_1_4938 = .text:0x00004938; // type:function size:0x1C0 -fn_1_4AF8 = .text:0x00004AF8; // type:function size:0xB4 -fn_1_4BAC = .text:0x00004BAC; // type:function size:0x94 -fn_1_4C40 = .text:0x00004C40; // type:function size:0x1C0 -fn_1_4E00 = .text:0x00004E00; // type:function size:0xE0 -fn_1_4EE0 = .text:0x00004EE0; // type:function size:0x268 -fn_1_5148 = .text:0x00005148; // type:function size:0x94 -fn_1_51DC = .text:0x000051DC; // type:function size:0x94 -fn_1_5270 = .text:0x00005270; // type:function size:0x94 -fn_1_5304 = .text:0x00005304; // type:function size:0x28 -fn_1_532C = .text:0x0000532C; // type:function size:0x32C -fn_1_5658 = .text:0x00005658; // type:function size:0x32C -fn_1_5984 = .text:0x00005984; // type:function size:0x154 -fn_1_5AD8 = .text:0x00005AD8; // type:function size:0x4E4 -fn_1_5FBC = .text:0x00005FBC; // type:function size:0x150 -fn_1_610C = .text:0x0000610C; // type:function size:0x28 -fn_1_6134 = .text:0x00006134; // type:function size:0x64 -fn_1_6198 = .text:0x00006198; // type:function size:0x68 -fn_1_6200 = .text:0x00006200; // type:function size:0x380 -fn_1_6580 = .text:0x00006580; // type:function size:0x60 -fn_1_65E0 = .text:0x000065E0; // type:function size:0xB18 -fn_1_70F8 = .text:0x000070F8; // type:function size:0x3C -fn_1_7134 = .text:0x00007134; // type:function size:0x198 -fn_1_72CC = .text:0x000072CC; // type:function size:0x1E4 -fn_1_74B0 = .text:0x000074B0; // type:function size:0x1C8 -fn_1_7678 = .text:0x00007678; // type:function size:0x368 -fn_1_79E0 = .text:0x000079E0; // type:function size:0x34 -fn_1_7A14 = .text:0x00007A14; // type:function size:0x8CC -fn_1_82E0 = .text:0x000082E0; // type:function size:0x28 -fn_1_8308 = .text:0x00008308; // type:function size:0x1BC -fn_1_84C4 = .text:0x000084C4; // type:function size:0x1C0 -fn_1_8684 = .text:0x00008684; // type:function size:0xB0 -fn_1_8734 = .text:0x00008734; // type:function size:0xF0 -fn_1_8824 = .text:0x00008824; // type:function size:0xB0 -fn_1_88D4 = .text:0x000088D4; // type:function size:0xB0 -fn_1_8984 = .text:0x00008984; // type:function size:0xB0 -fn_1_8A34 = .text:0x00008A34; // type:function size:0xF0 -fn_1_8B24 = .text:0x00008B24; // type:function size:0xB0 -fn_1_8BD4 = .text:0x00008BD4; // type:function size:0xB0 -fn_1_8C84 = .text:0x00008C84; // type:function size:0x120 -fn_1_8DA4 = .text:0x00008DA4; // type:function size:0x57C -fn_1_9320 = .text:0x00009320; // type:function size:0x3B8 -fn_1_96D8 = .text:0x000096D8; // type:function size:0x454 -fn_1_9B2C = .text:0x00009B2C; // type:function size:0x474 -fn_1_9FA0 = .text:0x00009FA0; // type:function size:0x4A0 -fn_1_A440 = .text:0x0000A440; // type:function size:0x420 -fn_1_A860 = .text:0x0000A860; // type:function size:0x4 -fn_1_A864 = .text:0x0000A864; // type:function size:0x184 -fn_1_A9E8 = .text:0x0000A9E8; // type:function size:0x3C -fn_1_AA24 = .text:0x0000AA24; // type:function size:0x5C -fn_1_AA80 = .text:0x0000AA80; // type:function size:0x3C -fn_1_AABC = .text:0x0000AABC; // type:function size:0x5C -fn_1_AB18 = .text:0x0000AB18; // type:function size:0x50 -fn_1_AB68 = .text:0x0000AB68; // type:function size:0x48 -fn_1_ABB0 = .text:0x0000ABB0; // type:function size:0x3C -fn_1_ABEC = .text:0x0000ABEC; // type:function size:0x84 -fn_1_AC70 = .text:0x0000AC70; // type:function size:0x5C -fn_1_ACCC = .text:0x0000ACCC; // type:function size:0x5C -fn_1_AD28 = .text:0x0000AD28; // type:function size:0x70 -fn_1_AD98 = .text:0x0000AD98; // type:function size:0x48 -fn_1_ADE0 = .text:0x0000ADE0; // type:function size:0x3C -fn_1_AE1C = .text:0x0000AE1C; // type:function size:0x5C -fn_1_AE78 = .text:0x0000AE78; // type:function size:0xD4 -fn_1_AF4C = .text:0x0000AF4C; // type:function size:0x248 -fn_1_B194 = .text:0x0000B194; // type:function size:0x30 -fn_1_B1C4 = .text:0x0000B1C4; // type:function size:0x8C -fn_1_B250 = .text:0x0000B250; // type:function size:0x20 -fn_1_B270 = .text:0x0000B270; // type:function size:0x180 -fn_1_B3F0 = .text:0x0000B3F0; // type:function size:0x104 -fn_1_B4F4 = .text:0x0000B4F4; // type:function size:0x2EC -fn_1_B7E0 = .text:0x0000B7E0; // type:function size:0xF0 -fn_1_B8D0 = .text:0x0000B8D0; // type:function size:0x348 -fn_1_BC18 = .text:0x0000BC18; // type:function size:0xB0 -fn_1_BCC8 = .text:0x0000BCC8; // type:function size:0xF0 -fn_1_BDB8 = .text:0x0000BDB8; // type:function size:0xC8 -fn_1_BE80 = .text:0x0000BE80; // type:function size:0x3C8 -fn_1_C248 = .text:0x0000C248; // type:function size:0x3C8 -fn_1_C610 = .text:0x0000C610; // type:function size:0x3B4 -fn_1_C9C4 = .text:0x0000C9C4; // type:function size:0x35C -fn_1_CD20 = .text:0x0000CD20; // type:function size:0x31C -fn_1_D03C = .text:0x0000D03C; // type:function size:0x384 -fn_1_D3C0 = .text:0x0000D3C0; // type:function size:0x394 -fn_1_D754 = .text:0x0000D754; // type:function size:0x1DC -fn_1_D930 = .text:0x0000D930; // type:function size:0x3BC -fn_1_DCEC = .text:0x0000DCEC; // type:function size:0x1D8 -fn_1_DEC4 = .text:0x0000DEC4; // type:function size:0x3E4 -fn_1_E2A8 = .text:0x0000E2A8; // type:function size:0x2F0 -fn_1_E598 = .text:0x0000E598; // type:function size:0x9C -fn_1_E634 = .text:0x0000E634; // type:function size:0x310 -fn_1_E944 = .text:0x0000E944; // type:function size:0x5C -fn_1_E9A0 = .text:0x0000E9A0; // type:function size:0x104 -fn_1_EAA4 = .text:0x0000EAA4; // type:function size:0x94 -fn_1_EB38 = .text:0x0000EB38; // type:function size:0xD8 -fn_1_EC10 = .text:0x0000EC10; // type:function size:0x1C4 -fn_1_EDD4 = .text:0x0000EDD4; // type:function size:0xCC -fn_1_EEA0 = .text:0x0000EEA0; // type:function size:0x12C -fn_1_EFCC = .text:0x0000EFCC; // type:function size:0xEC -fn_1_F0B8 = .text:0x0000F0B8; // type:function size:0x40 -fn_1_F0F8 = .text:0x0000F0F8; // type:function size:0x4C -fn_1_F144 = .text:0x0000F144; // type:function size:0x48 -fn_1_F18C = .text:0x0000F18C; // type:function size:0x108 -fn_1_F294 = .text:0x0000F294; // type:function size:0x144 -fn_1_F3D8 = .text:0x0000F3D8; // type:function size:0xBC -fn_1_F494 = .text:0x0000F494; // type:function size:0x40 -fn_1_F4D4 = .text:0x0000F4D4; // type:function size:0x30 -fn_1_F504 = .text:0x0000F504; // type:function size:0x8C -fn_1_F590 = .text:0x0000F590; // type:function size:0xB0 -fn_1_F640 = .text:0x0000F640; // type:function size:0xAC -fn_1_F6EC = .text:0x0000F6EC; // type:function size:0x30 -fn_1_F71C = .text:0x0000F71C; // type:function size:0x8C -fn_1_F7A8 = .text:0x0000F7A8; // type:function size:0xF4 -fn_1_F89C = .text:0x0000F89C; // type:function size:0x10 -fn_1_F8AC = .text:0x0000F8AC; // type:function size:0xB90 -fn_1_1043C = .text:0x0001043C; // type:function size:0x468 -fn_1_108A4 = .text:0x000108A4; // type:function size:0x1EC -_prolog = .text:0x00010A90; // type:function size:0x54 scope:global -_epilog = .text:0x00010AE4; // type:function size:0x4C scope:global -fn_1_10B30 = .text:0x00010B30; // type:function size:0x40C -fn_1_10F3C = .text:0x00010F3C; // type:function size:0x40C -fn_1_11348 = .text:0x00011348; // type:function size:0x28 -fn_1_11370 = .text:0x00011370; // type:function size:0x40 -fn_1_113B0 = .text:0x000113B0; // type:function size:0xC8 -fn_1_11478 = .text:0x00011478; // type:function size:0xC8 -fn_1_11540 = .text:0x00011540; // type:function size:0xD8 -fn_1_11618 = .text:0x00011618; // type:function size:0x50 -fn_1_11668 = .text:0x00011668; // type:function size:0x5C -fn_1_116C4 = .text:0x000116C4; // type:function size:0x88 -fn_1_1174C = .text:0x0001174C; // type:function size:0x74 -fn_1_117C0 = .text:0x000117C0; // type:function size:0x94 -fn_1_11854 = .text:0x00011854; // type:function size:0x3C -fn_1_11890 = .text:0x00011890; // type:function size:0x110 -fn_1_119A0 = .text:0x000119A0; // type:function size:0x178 -fn_1_11B18 = .text:0x00011B18; // type:function size:0x1C8 -fn_1_11CE0 = .text:0x00011CE0; // type:function size:0x7B4 -fn_1_12494 = .text:0x00012494; // type:function size:0x4C4 -fn_1_12958 = .text:0x00012958; // type:function size:0x60 -fn_1_129B8 = .text:0x000129B8; // type:function size:0x64 -fn_1_12A1C = .text:0x00012A1C; // type:function size:0x64 -fn_1_12A80 = .text:0x00012A80; // type:function size:0x3C -fn_1_12ABC = .text:0x00012ABC; // type:function size:0x44 -fn_1_12B00 = .text:0x00012B00; // type:function size:0x314 -fn_1_12E14 = .text:0x00012E14; // type:function size:0x314 -fn_1_13128 = .text:0x00013128; // type:function size:0x27C -fn_1_133A4 = .text:0x000133A4; // type:function size:0x2B4 -fn_1_13658 = .text:0x00013658; // type:function size:0x530 -fn_1_13B88 = .text:0x00013B88; // type:function size:0x454 -fn_1_13FDC = .text:0x00013FDC; // type:function size:0x48C -fn_1_14468 = .text:0x00014468; // type:function size:0x71C -fn_1_14B84 = .text:0x00014B84; // type:function size:0x4C4 -fn_1_15048 = .text:0x00015048; // type:function size:0x4FC -fn_1_15544 = .text:0x00015544; // type:function size:0x78C -fn_1_15CD0 = .text:0x00015CD0; // type:function size:0x6C -fn_1_15D3C = .text:0x00015D3C; // type:function size:0x68 -fn_1_15DA4 = .text:0x00015DA4; // type:function size:0x10 -fn_1_15DB4 = .text:0x00015DB4; // type:function size:0xC -fn_1_15DC0 = .text:0x00015DC0; // type:function size:0x8 -fn_1_15DC8 = .text:0x00015DC8; // type:function size:0x48 -fn_1_15E10 = .text:0x00015E10; // type:function size:0x344 -fn_1_16154 = .text:0x00016154; // type:function size:0x190 -fn_1_162E4 = .text:0x000162E4; // type:function size:0x64 -fn_1_16348 = .text:0x00016348; // type:function size:0x4 -fn_1_1634C = .text:0x0001634C; // type:function size:0x164 -fn_1_164B0 = .text:0x000164B0; // type:function size:0x15C -fn_1_1660C = .text:0x0001660C; // type:function size:0x190 -_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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte -lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x48 -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:4byte -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x78 -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x78 -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC8 -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x78 -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x14 data:4byte -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x30 data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x30 data:4byte -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:4byte -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:4byte -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:4byte -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:4byte -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x20 data:4byte -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:4byte -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x20 data:4byte -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:4byte -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x30 data:4byte -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x10 data:4byte -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x8 data:4byte -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0xC data:4byte -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:4byte -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:4byte -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0xC data:4byte -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x8 data:4byte -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 data:4byte -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x30 data:4byte -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x18 data:4byte -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0xA0 -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x4 data:4byte -lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x4 data:4byte -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x1B data:string -lbl_1_data_C7 = .data:0x000000C7; // type:object size:0x22 data:string -lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x1A data:string -lbl_1_data_103 = .data:0x00000103; // type:object size:0x1A data:string -lbl_1_data_11D = .data:0x0000011D; // type:object size:0xF -lbl_1_data_12C = .data:0x0000012C; // type:object size:0x4 data:4byte -lbl_1_data_130 = .data:0x00000130; // type:object size:0x16 data:string -lbl_1_data_146 = .data:0x00000146; // type:object size:0x13 data:string -lbl_1_data_159 = .data:0x00000159; // type:object size:0xE data:string -lbl_1_data_167 = .data:0x00000167; // type:object size:0xE data:string -lbl_1_data_175 = .data:0x00000175; // type:object size:0x13 -lbl_1_data_188 = .data:0x00000188; // type:object size:0x4 data:float -lbl_1_data_18C = .data:0x0000018C; // type:object size:0x14 data:string -jumptable_1_data_1A0 = .data:0x000001A0; // type:object size:0x20 scope:local -lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x14 -jumptable_1_data_1D4 = .data:0x000001D4; // type:object size:0x30 scope:local -lbl_1_data_204 = .data:0x00000204; // type:object size:0x78 -lbl_1_data_27C = .data:0x0000027C; // type:object size:0x90 -lbl_1_data_30C = .data:0x0000030C; // type:object size:0x18 -jumptable_1_data_324 = .data:0x00000324; // type:object size:0x2C scope:local -lbl_1_data_350 = .data:0x00000350; // type:object size:0x10 data:string -lbl_1_data_360 = .data:0x00000360; // type:object size:0x10 data:string -lbl_1_data_370 = .data:0x00000370; // type:object size:0x10 data:string -lbl_1_data_380 = .data:0x00000380; // type:object size:0x10 data:string -lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 data:string -lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x10 data:string -lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x10 data:string -lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x10 data:string -lbl_1_data_3D0 = .data:0x000003D0; // type:object size:0x20 -lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x40 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:float -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x18 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x18 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x18 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0xE4 data:4byte -lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:float -lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x4 data:float -lbl_1_bss_154 = .bss:0x00000154; // type:object size:0x4 data:float -lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x4 data:float -lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x4 data:float -lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x7C data:4byte -lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0x4E0 data:4byte -lbl_1_bss_6BC = .bss:0x000006BC; // type:object size:0x218 data:4byte -lbl_1_bss_8D4 = .bss:0x000008D4; // type:object size:0x28 data:4byte -lbl_1_bss_8FC = .bss:0x000008FC; // type:object size:0x24 data:4byte -lbl_1_bss_920 = .bss:0x00000920; // type:object size:0x24 data:4byte -lbl_1_bss_944 = .bss:0x00000944; // type:object size:0x24 data:4byte -lbl_1_bss_968 = .bss:0x00000968; // type:object size:0x40 data:4byte diff --git a/config/GMPJ01_00/rels/m439Dll/splits.txt b/config/GMPJ01_00/rels/m439Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m439Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m439Dll/symbols.txt b/config/GMPJ01_00/rels/m439Dll/symbols.txt deleted file mode 100644 index 37fa3fca..00000000 --- a/config/GMPJ01_00/rels/m439Dll/symbols.txt +++ /dev/null @@ -1,325 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2C4 -fn_1_364 = .text:0x00000364; // type:function size:0x10 -fn_1_374 = .text:0x00000374; // type:function size:0x10 -fn_1_384 = .text:0x00000384; // type:function size:0x84 -fn_1_408 = .text:0x00000408; // type:function size:0x5B4 -fn_1_9BC = .text:0x000009BC; // type:function size:0x5C -fn_1_A18 = .text:0x00000A18; // type:function size:0x108 -fn_1_B20 = .text:0x00000B20; // type:function size:0x5C -fn_1_B7C = .text:0x00000B7C; // type:function size:0x84 -fn_1_C00 = .text:0x00000C00; // type:function size:0x10C -fn_1_D0C = .text:0x00000D0C; // type:function size:0x318 -fn_1_1024 = .text:0x00001024; // type:function size:0x104 -fn_1_1128 = .text:0x00001128; // type:function size:0x588 -fn_1_16B0 = .text:0x000016B0; // type:function size:0x5A4 -fn_1_1C54 = .text:0x00001C54; // type:function size:0x2E8 -fn_1_1F3C = .text:0x00001F3C; // type:function size:0x248 -fn_1_2184 = .text:0x00002184; // type:function size:0xB8 -fn_1_223C = .text:0x0000223C; // type:function size:0x978 -fn_1_2BB4 = .text:0x00002BB4; // type:function size:0xD0 -fn_1_2C84 = .text:0x00002C84; // type:function size:0xF98 -fn_1_3C1C = .text:0x00003C1C; // type:function size:0x90C -fn_1_4528 = .text:0x00004528; // type:function size:0x450 -fn_1_4978 = .text:0x00004978; // type:function size:0x50 -fn_1_49C8 = .text:0x000049C8; // type:function size:0x84 -fn_1_4A4C = .text:0x00004A4C; // type:function size:0x5C -fn_1_4AA8 = .text:0x00004AA8; // type:function size:0x218 -fn_1_4CC0 = .text:0x00004CC0; // type:function size:0x294 -fn_1_4F54 = .text:0x00004F54; // type:function size:0xC48 -fn_1_5B9C = .text:0x00005B9C; // type:function size:0x4 -fn_1_5BA0 = .text:0x00005BA0; // type:function size:0x10C -fn_1_5CAC = .text:0x00005CAC; // type:function size:0x4 -fn_1_5CB0 = .text:0x00005CB0; // type:function size:0x3B8 -fn_1_6068 = .text:0x00006068; // type:function size:0xB8 -fn_1_6120 = .text:0x00006120; // type:function size:0x1C0 -fn_1_62E0 = .text:0x000062E0; // type:function size:0x48 -fn_1_6328 = .text:0x00006328; // type:function size:0x1F8 -fn_1_6520 = .text:0x00006520; // type:function size:0xFC -fn_1_661C = .text:0x0000661C; // type:function size:0xA0 -fn_1_66BC = .text:0x000066BC; // type:function size:0xF8 -fn_1_67B4 = .text:0x000067B4; // type:function size:0x454 -fn_1_6C08 = .text:0x00006C08; // type:function size:0xC8 -fn_1_6CD0 = .text:0x00006CD0; // type:function size:0x11C -fn_1_6DEC = .text:0x00006DEC; // type:function size:0x3A4 -fn_1_7190 = .text:0x00007190; // type:function size:0x5C -fn_1_71EC = .text:0x000071EC; // type:function size:0x208 -fn_1_73F4 = .text:0x000073F4; // type:function size:0x184 -fn_1_7578 = .text:0x00007578; // type:function size:0x26C -fn_1_77E4 = .text:0x000077E4; // type:function size:0x9A8 -_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_50 = .rodata:0x00000050; // type:object size:0x8 data:double -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC data:2byte -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x50 -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x18 -lbl_1_data_18 = .data:0x00000018; // type:object size:0x18 -lbl_1_data_30 = .data:0x00000030; // type:object size:0x8 -lbl_1_data_38 = .data:0x00000038; // type:object size:0x84 -lbl_1_data_BC = .data:0x000000BC; // type:object size:0x84 -lbl_1_data_140 = .data:0x00000140; // type:object size:0x2C -lbl_1_data_16C = .data:0x0000016C; // type:object size:0x90 -lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x90 -lbl_1_data_28C = .data:0x0000028C; // type:object size:0x30 -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0xA8 -lbl_1_data_364 = .data:0x00000364; // type:object size:0xA8 -lbl_1_data_40C = .data:0x0000040C; // type:object size:0x38 -lbl_1_data_444 = .data:0x00000444; // type:object size:0xB4 -lbl_1_data_4F8 = .data:0x000004F8; // type:object size:0xB4 -lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x3C -lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x18 -lbl_1_data_600 = .data:0x00000600; // type:object size:0x18 -lbl_1_data_618 = .data:0x00000618; // type:object size:0x8 -lbl_1_data_620 = .data:0x00000620; // type:object size:0xA8 -lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0xA8 -lbl_1_data_770 = .data:0x00000770; // type:object size:0x38 -lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0xD8 -lbl_1_data_880 = .data:0x00000880; // type:object size:0xD8 -lbl_1_data_958 = .data:0x00000958; // type:object size:0x48 -lbl_1_data_9A0 = .data:0x000009A0; // type:object size:0xC0 -lbl_1_data_A60 = .data:0x00000A60; // type:object size:0xC0 -lbl_1_data_B20 = .data:0x00000B20; // type:object size:0x40 -lbl_1_data_B60 = .data:0x00000B60; // type:object size:0xC0 -lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xC0 -lbl_1_data_CE0 = .data:0x00000CE0; // type:object size:0x40 -lbl_1_data_D20 = .data:0x00000D20; // type:object size:0xA8 -lbl_1_data_DC8 = .data:0x00000DC8; // type:object size:0xA8 -lbl_1_data_E70 = .data:0x00000E70; // type:object size:0x38 -lbl_1_data_EA8 = .data:0x00000EA8; // type:object size:0x9C -lbl_1_data_F44 = .data:0x00000F44; // type:object size:0x9C -lbl_1_data_FE0 = .data:0x00000FE0; // type:object size:0x34 -lbl_1_data_1014 = .data:0x00001014; // type:object size:0x60 -lbl_1_data_1074 = .data:0x00001074; // type:object size:0x18 -lbl_1_data_108C = .data:0x0000108C; // type:object size:0x30 -lbl_1_data_10BC = .data:0x000010BC; // type:object size:0x204 -lbl_1_data_12C0 = .data:0x000012C0; // type:object size:0x204 -lbl_1_data_14C4 = .data:0x000014C4; // type:object size:0x204 -lbl_1_data_16C8 = .data:0x000016C8; // type:object size:0xC -lbl_1_data_16D4 = .data:0x000016D4; // type:object size:0x4 -lbl_1_data_16D8 = .data:0x000016D8; // type:object size:0x1D4 -lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x1D4 -lbl_1_data_1A80 = .data:0x00001A80; // type:object size:0x1D4 -lbl_1_data_1C54 = .data:0x00001C54; // type:object size:0x120 -lbl_1_data_1D74 = .data:0x00001D74; // type:object size:0x120 -lbl_1_data_1E94 = .data:0x00001E94; // type:object size:0x120 -lbl_1_data_1FB4 = .data:0x00001FB4; // type:object size:0xF0 -lbl_1_data_20A4 = .data:0x000020A4; // type:object size:0xF0 -lbl_1_data_2194 = .data:0x00002194; // type:object size:0xF0 -lbl_1_data_2284 = .data:0x00002284; // type:object size:0x24 -lbl_1_data_22A8 = .data:0x000022A8; // type:object size:0xC -lbl_1_data_22B4 = .data:0x000022B4; // type:object size:0x174 -lbl_1_data_2428 = .data:0x00002428; // type:object size:0x174 -lbl_1_data_259C = .data:0x0000259C; // type:object size:0x174 -lbl_1_data_2710 = .data:0x00002710; // type:object size:0x144 -lbl_1_data_2854 = .data:0x00002854; // type:object size:0x144 -lbl_1_data_2998 = .data:0x00002998; // type:object size:0x144 -lbl_1_data_2ADC = .data:0x00002ADC; // type:object size:0x1A4 -lbl_1_data_2C80 = .data:0x00002C80; // type:object size:0x1A4 -lbl_1_data_2E24 = .data:0x00002E24; // type:object size:0x1A4 -lbl_1_data_2FC8 = .data:0x00002FC8; // type:object size:0x24 -lbl_1_data_2FEC = .data:0x00002FEC; // type:object size:0xC -lbl_1_data_2FF8 = .data:0x00002FF8; // type:object size:0x294 -lbl_1_data_328C = .data:0x0000328C; // type:object size:0x294 -lbl_1_data_3520 = .data:0x00003520; // type:object size:0x294 -lbl_1_data_37B4 = .data:0x000037B4; // type:object size:0xC -lbl_1_data_37C0 = .data:0x000037C0; // type:object size:0x4 -lbl_1_data_37C4 = .data:0x000037C4; // type:object size:0x198 -lbl_1_data_395C = .data:0x0000395C; // type:object size:0x198 -lbl_1_data_3AF4 = .data:0x00003AF4; // type:object size:0x198 -lbl_1_data_3C8C = .data:0x00003C8C; // type:object size:0x198 -lbl_1_data_3E24 = .data:0x00003E24; // type:object size:0x198 -lbl_1_data_3FBC = .data:0x00003FBC; // type:object size:0x198 -lbl_1_data_4154 = .data:0x00004154; // type:object size:0x18 -lbl_1_data_416C = .data:0x0000416C; // type:object size:0x8 -lbl_1_data_4174 = .data:0x00004174; // type:object size:0x210 -lbl_1_data_4384 = .data:0x00004384; // type:object size:0x210 -lbl_1_data_4594 = .data:0x00004594; // type:object size:0x210 -lbl_1_data_47A4 = .data:0x000047A4; // type:object size:0x210 -lbl_1_data_49B4 = .data:0x000049B4; // type:object size:0x210 -lbl_1_data_4BC4 = .data:0x00004BC4; // type:object size:0x210 -lbl_1_data_4DD4 = .data:0x00004DD4; // type:object size:0x18 -lbl_1_data_4DEC = .data:0x00004DEC; // type:object size:0x8 -lbl_1_data_4DF4 = .data:0x00004DF4; // type:object size:0x1D4 -lbl_1_data_4FC8 = .data:0x00004FC8; // type:object size:0x1D4 -lbl_1_data_519C = .data:0x0000519C; // type:object size:0x1D4 -lbl_1_data_5370 = .data:0x00005370; // type:object size:0x1D4 -lbl_1_data_5544 = .data:0x00005544; // type:object size:0x1D4 -lbl_1_data_5718 = .data:0x00005718; // type:object size:0x1D4 -lbl_1_data_58EC = .data:0x000058EC; // type:object size:0x18 -lbl_1_data_5904 = .data:0x00005904; // type:object size:0x8 -lbl_1_data_590C = .data:0x0000590C; // type:object size:0x18C -lbl_1_data_5A98 = .data:0x00005A98; // type:object size:0x18C -lbl_1_data_5C24 = .data:0x00005C24; // type:object size:0x18C -lbl_1_data_5DB0 = .data:0x00005DB0; // type:object size:0x168 -lbl_1_data_5F18 = .data:0x00005F18; // type:object size:0x168 -lbl_1_data_6080 = .data:0x00006080; // type:object size:0x168 -lbl_1_data_61E8 = .data:0x000061E8; // type:object size:0x18 -lbl_1_data_6200 = .data:0x00006200; // type:object size:0x8 -lbl_1_data_6208 = .data:0x00006208; // type:object size:0x174 -lbl_1_data_637C = .data:0x0000637C; // type:object size:0x174 -lbl_1_data_64F0 = .data:0x000064F0; // type:object size:0x174 -lbl_1_data_6664 = .data:0x00006664; // type:object size:0x15C -lbl_1_data_67C0 = .data:0x000067C0; // type:object size:0x15C -lbl_1_data_691C = .data:0x0000691C; // type:object size:0x15C -lbl_1_data_6A78 = .data:0x00006A78; // type:object size:0x18 -lbl_1_data_6A90 = .data:0x00006A90; // type:object size:0x8 -lbl_1_data_6A98 = .data:0x00006A98; // type:object size:0x18C -lbl_1_data_6C24 = .data:0x00006C24; // type:object size:0x18C -lbl_1_data_6DB0 = .data:0x00006DB0; // type:object size:0x18C -lbl_1_data_6F3C = .data:0x00006F3C; // type:object size:0x174 -lbl_1_data_70B0 = .data:0x000070B0; // type:object size:0x174 -lbl_1_data_7224 = .data:0x00007224; // type:object size:0x174 -lbl_1_data_7398 = .data:0x00007398; // type:object size:0x18 -lbl_1_data_73B0 = .data:0x000073B0; // type:object size:0x8 -lbl_1_data_73B8 = .data:0x000073B8; // type:object size:0x14 -lbl_1_data_73CC = .data:0x000073CC; // type:object size:0x28 -lbl_1_data_73F4 = .data:0x000073F4; // type:object size:0x28 -lbl_1_data_741C = .data:0x0000741C; // type:object size:0x70 data:float -lbl_1_data_748C = .data:0x0000748C; // type:object size:0x140 -lbl_1_data_75CC = .data:0x000075CC; // type:object size:0x14 -lbl_1_data_75E0 = .data:0x000075E0; // type:object size:0x10 data:4byte -lbl_1_data_75F0 = .data:0x000075F0; // type:object size:0xC data:float -lbl_1_data_75FC = .data:0x000075FC; // type:object size:0xC data:float -lbl_1_data_7608 = .data:0x00007608; // type:object size:0x4 -lbl_1_data_760C = .data:0x0000760C; // type:object size:0xC -lbl_1_data_7618 = .data:0x00007618; // type:object size:0xC -lbl_1_data_7624 = .data:0x00007624; // type:object size:0x24 -lbl_1_data_7648 = .data:0x00007648; // type:object size:0x4 data:4byte -lbl_1_data_764C = .data:0x0000764C; // type:object size:0x4 data:4byte -jumptable_1_data_7650 = .data:0x00007650; // type:object size:0x28 scope:local -lbl_1_data_7678 = .data:0x00007678; // type:object size:0x1C data:string -lbl_1_data_7694 = .data:0x00007694; // type:object size:0x1C -lbl_1_data_76B0 = .data:0x000076B0; // type:object size:0x58 -lbl_1_data_7708 = .data:0x00007708; // type:object size:0x30 -lbl_1_data_7738 = .data:0x00007738; // type:object size:0x5C -lbl_1_data_7794 = .data:0x00007794; // type:object size:0x4 -lbl_1_data_7798 = .data:0x00007798; // type:object size:0x4 data:4byte -lbl_1_data_779C = .data:0x0000779C; // type:object size:0x4 data:4byte -lbl_1_data_77A0 = .data:0x000077A0; // type:object size:0x28 -lbl_1_data_77C8 = .data:0x000077C8; // type:object size:0x70 -lbl_1_data_7838 = .data:0x00007838; // type:object size:0x1C -lbl_1_data_7854 = .data:0x00007854; // type:object size:0x6 data:string -lbl_1_data_785A = .data:0x0000785A; // type:object size:0x6 data:string -lbl_1_data_7860 = .data:0x00007860; // type:object size:0x8 data:string -lbl_1_data_7868 = .data:0x00007868; // type:object size:0x6 data:string -lbl_1_data_786E = .data:0x0000786E; // type:object size:0x8 data:string -lbl_1_data_7876 = .data:0x00007876; // type:object size:0x6 data:string -lbl_1_data_787C = .data:0x0000787C; // type:object size:0x6 data:string -lbl_1_data_7882 = .data:0x00007882; // type:object size:0x6 data:string -lbl_1_data_7888 = .data:0x00007888; // type:object size:0x6 data:string -lbl_1_data_788E = .data:0x0000788E; // type:object size:0x6 data:string -lbl_1_data_7894 = .data:0x00007894; // type:object size:0x6 data:string -lbl_1_data_789A = .data:0x0000789A; // type:object size:0x6 data:string -lbl_1_data_78A0 = .data:0x000078A0; // type:object size:0x20 -lbl_1_data_78C0 = .data:0x000078C0; // type:object size:0x30 -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x20 -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x2 data:2byte -lbl_1_bss_32 = .bss:0x00000032; // type:object size:0x2 data:2byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0xC data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x90 -lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x24 -lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x24 -lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0xC -lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x4 data:4byte -lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x2 data:2byte -lbl_1_bss_12E = .bss:0x0000012E; // type:object size:0x2 data:2byte -lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x2 data:2byte -lbl_1_bss_132 = .bss:0x00000132; // type:object size:0x8 data:2byte -lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 data:2byte -lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x2 data:2byte -lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte -lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte -lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:4byte -lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x10 data:4byte -lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x8 data:4byte -lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x4 data:4byte -lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x4 data:4byte -lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m440Dll/splits.txt b/config/GMPJ01_00/rels/m440Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m440Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m440Dll/symbols.txt b/config/GMPJ01_00/rels/m440Dll/symbols.txt deleted file mode 100644 index 562ed3d5..00000000 --- a/config/GMPJ01_00/rels/m440Dll/symbols.txt +++ /dev/null @@ -1,288 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x324 -fn_1_3C4 = .text:0x000003C4; // type:function size:0x70 -fn_1_434 = .text:0x00000434; // type:function size:0x70 -fn_1_4A4 = .text:0x000004A4; // type:function size:0x224 -fn_1_6C8 = .text:0x000006C8; // type:function size:0x228 -fn_1_8F0 = .text:0x000008F0; // type:function size:0x1F0 -fn_1_AE0 = .text:0x00000AE0; // type:function size:0x334 -fn_1_E14 = .text:0x00000E14; // type:function size:0x324 -fn_1_1138 = .text:0x00001138; // type:function size:0x5A0 -fn_1_16D8 = .text:0x000016D8; // type:function size:0x30 -fn_1_1708 = .text:0x00001708; // type:function size:0x60 -fn_1_1768 = .text:0x00001768; // type:function size:0x64 -fn_1_17CC = .text:0x000017CC; // type:function size:0x28 -fn_1_17F4 = .text:0x000017F4; // type:function size:0x28 -fn_1_181C = .text:0x0000181C; // type:function size:0x74 -fn_1_1890 = .text:0x00001890; // type:function size:0x50 -fn_1_18E0 = .text:0x000018E0; // type:function size:0x74 -fn_1_1954 = .text:0x00001954; // type:function size:0x5C -fn_1_19B0 = .text:0x000019B0; // type:function size:0x2FC -fn_1_1CAC = .text:0x00001CAC; // type:function size:0xA8 -fn_1_1D54 = .text:0x00001D54; // type:function size:0x4EC -fn_1_2240 = .text:0x00002240; // type:function size:0x1A4 -fn_1_23E4 = .text:0x000023E4; // type:function size:0x44 -fn_1_2428 = .text:0x00002428; // type:function size:0x48 -fn_1_2470 = .text:0x00002470; // type:function size:0x604 -fn_1_2A74 = .text:0x00002A74; // type:function size:0x40 -fn_1_2AB4 = .text:0x00002AB4; // type:function size:0x50 -fn_1_2B04 = .text:0x00002B04; // type:function size:0x1A4 -fn_1_2CA8 = .text:0x00002CA8; // type:function size:0x80 -fn_1_2D28 = .text:0x00002D28; // type:function size:0x6AC -fn_1_33D4 = .text:0x000033D4; // type:function size:0xA04 -fn_1_3DD8 = .text:0x00003DD8; // type:function size:0x780 -fn_1_4558 = .text:0x00004558; // type:function size:0x64 -fn_1_45BC = .text:0x000045BC; // type:function size:0xA4 -fn_1_4660 = .text:0x00004660; // type:function size:0x80 -fn_1_46E0 = .text:0x000046E0; // type:function size:0x340 -fn_1_4A20 = .text:0x00004A20; // type:function size:0x124 -fn_1_4B44 = .text:0x00004B44; // type:function size:0x2BC -fn_1_4E00 = .text:0x00004E00; // type:function size:0x2C -fn_1_4E2C = .text:0x00004E2C; // type:function size:0x28 -fn_1_4E54 = .text:0x00004E54; // type:function size:0x54 -fn_1_4EA8 = .text:0x00004EA8; // type:function size:0x44 -fn_1_4EEC = .text:0x00004EEC; // type:function size:0x48 -fn_1_4F34 = .text:0x00004F34; // type:function size:0xDC -fn_1_5010 = .text:0x00005010; // type:function size:0x7A4 -fn_1_57B4 = .text:0x000057B4; // type:function size:0x478 -fn_1_5C2C = .text:0x00005C2C; // type:function size:0x928 -fn_1_6554 = .text:0x00006554; // type:function size:0x604 -fn_1_6B58 = .text:0x00006B58; // type:function size:0x6A4 -fn_1_71FC = .text:0x000071FC; // type:function size:0x738 -fn_1_7934 = .text:0x00007934; // type:function size:0x42C -fn_1_7D60 = .text:0x00007D60; // type:function size:0x30C -fn_1_806C = .text:0x0000806C; // type:function size:0x404 -fn_1_8470 = .text:0x00008470; // type:function size:0x654 -fn_1_8AC4 = .text:0x00008AC4; // type:function size:0x258 -fn_1_8D1C = .text:0x00008D1C; // type:function size:0x488 -fn_1_91A4 = .text:0x000091A4; // type:function size:0xD8 -fn_1_927C = .text:0x0000927C; // type:function size:0xC8 -fn_1_9344 = .text:0x00009344; // type:function size:0x7C -fn_1_93C0 = .text:0x000093C0; // type:function size:0x10 -fn_1_93D0 = .text:0x000093D0; // type:function size:0x5C -fn_1_942C = .text:0x0000942C; // type:function size:0x140 -fn_1_956C = .text:0x0000956C; // type:function size:0x544 -fn_1_9AB0 = .text:0x00009AB0; // type:function size:0x60 -fn_1_9B10 = .text:0x00009B10; // type:function size:0x2C -fn_1_9B3C = .text:0x00009B3C; // type:function size:0x58 -fn_1_9B94 = .text:0x00009B94; // type:function size:0x38 -fn_1_9BCC = .text:0x00009BCC; // type:function size:0x38 -fn_1_9C04 = .text:0x00009C04; // type:function size:0x5B4 -fn_1_A1B8 = .text:0x0000A1B8; // type:function size:0xCC -fn_1_A284 = .text:0x0000A284; // type:function size:0xA4 -fn_1_A328 = .text:0x0000A328; // type:function size:0x68 -fn_1_A390 = .text:0x0000A390; // type:function size:0x704 -fn_1_AA94 = .text:0x0000AA94; // type:function size:0x374 -fn_1_AE08 = .text:0x0000AE08; // type:function size:0xDC -fn_1_AEE4 = .text:0x0000AEE4; // type:function size:0x298 -fn_1_B17C = .text:0x0000B17C; // type:function size:0x4 -fn_1_B180 = .text:0x0000B180; // type:function size:0x224 -fn_1_B3A4 = .text:0x0000B3A4; // type:function size:0x4E0 -fn_1_B884 = .text:0x0000B884; // type:function size:0x950 -fn_1_C1D4 = .text:0x0000C1D4; // type:function size:0x770 -fn_1_C944 = .text:0x0000C944; // type:function size:0x668 -fn_1_CFAC = .text:0x0000CFAC; // type:function size:0x2A0 -fn_1_D24C = .text:0x0000D24C; // type:function size:0x100 -fn_1_D34C = .text:0x0000D34C; // type:function size:0x4AC -fn_1_D7F8 = .text:0x0000D7F8; // type:function size:0x83C -fn_1_E034 = .text:0x0000E034; // type:function size:0x878 -fn_1_E8AC = .text:0x0000E8AC; // type:function size:0x4DC -fn_1_ED88 = .text:0x0000ED88; // type:function size:0xF0 -fn_1_EE78 = .text:0x0000EE78; // type:function size:0xD8 -fn_1_EF50 = .text:0x0000EF50; // type:function size:0x1AC -fn_1_F0FC = .text:0x0000F0FC; // type:function size:0x6C -fn_1_F168 = .text:0x0000F168; // type:function size:0xC0 -fn_1_F228 = .text:0x0000F228; // type:function size:0x298 -fn_1_F4C0 = .text:0x0000F4C0; // type:function size:0x14 -fn_1_F4D4 = .text:0x0000F4D4; // type:function size:0x28 -fn_1_F4FC = .text:0x0000F4FC; // type:function size:0x18 -_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -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:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0xC data:2byte -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0xC data:2byte -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x14 -lbl_1_data_14 = .data:0x00000014; // type:object size:0xC -lbl_1_data_20 = .data:0x00000020; // type:object size:0xC data:float -lbl_1_data_2C = .data:0x0000002C; // type:object size:0xC data:float -lbl_1_data_38 = .data:0x00000038; // type:object size:0xC -lbl_1_data_44 = .data:0x00000044; // type:object size:0x10 -lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC data:float -lbl_1_data_78 = .data:0x00000078; // type:object size:0x54 data:float -lbl_1_data_CC = .data:0x000000CC; // type:object size:0x18 -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x2 data:2byte -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x2 data:2byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2 data:2byte -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte -lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x10 -lbl_1_data_104 = .data:0x00000104; // type:object size:0x2 data:2byte -lbl_1_data_108 = .data:0x00000108; // type:object size:0x2 data:2byte -lbl_1_data_10C = .data:0x0000010C; // type:object size:0x12 -lbl_1_data_11E = .data:0x0000011E; // type:object size:0x13 data:string -lbl_1_data_131 = .data:0x00000131; // type:object size:0x18 -lbl_1_data_149 = .data:0x00000149; // type:object size:0x19 data:string -lbl_1_data_162 = .data:0x00000162; // type:object size:0x1C data:string -lbl_1_data_17E = .data:0x0000017E; // type:object size:0x10 data:string -lbl_1_data_18E = .data:0x0000018E; // type:object size:0x26 data:string -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte -lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte -lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x40 -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 -jumptable_1_data_22C = .data:0x0000022C; // type:object size:0x24 scope:local -lbl_1_data_250 = .data:0x00000250; // type:object size:0x4 data:float -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte -lbl_1_bss_1 = .bss:0x00000001; // type:object size:0x1 data:byte -lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x1 data:byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte -lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x1 data:byte -lbl_1_bss_B = .bss:0x0000000B; // type:object size:0x1 data:byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x1 data:byte -lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x14 data:2byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x30 -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2 data:2byte -lbl_1_bss_72 = .bss:0x00000072; // type:object size:0x1 data:byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x2 data:2byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0xC data:4byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:float -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x30 data:float -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x8 -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x10 diff --git a/config/GMPJ01_00/rels/m441Dll/splits.txt b/config/GMPJ01_00/rels/m441Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m441Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m441Dll/symbols.txt b/config/GMPJ01_00/rels/m441Dll/symbols.txt deleted file mode 100644 index 08b35ee9..00000000 --- a/config/GMPJ01_00/rels/m441Dll/symbols.txt +++ /dev/null @@ -1,224 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x24 -fn_1_24 = .text:0x00000024; // type:function size:0x88 -fn_1_AC = .text:0x000000AC; // type:function size:0xA4 -fn_1_150 = .text:0x00000150; // type:function size:0x24 -fn_1_174 = .text:0x00000174; // type:function size:0x164 -fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C -fn_1_414 = .text:0x00000414; // type:function size:0x58 -fn_1_46C = .text:0x0000046C; // type:function size:0x114 -fn_1_580 = .text:0x00000580; // type:function size:0x218 -fn_1_798 = .text:0x00000798; // type:function size:0x254 -fn_1_9EC = .text:0x000009EC; // type:function size:0x54 -fn_1_A40 = .text:0x00000A40; // type:function size:0x10C -fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 -fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C -fn_1_1350 = .text:0x00001350; // type:function size:0x8C -fn_1_13DC = .text:0x000013DC; // type:function size:0x334 -fn_1_1710 = .text:0x00001710; // type:function size:0x350 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 -fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 -fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 -fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 -fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 -fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C -fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 -_prolog = .text:0x000023B4; // type:function size:0x54 scope:global -_epilog = .text:0x00002408; // type:function size:0x4C scope:global -fn_1_2454 = .text:0x00002454; // type:function size:0x2E8 -fn_1_273C = .text:0x0000273C; // type:function size:0x1C8 -fn_1_2904 = .text:0x00002904; // type:function size:0x2D0 -fn_1_2BD4 = .text:0x00002BD4; // type:function size:0x830 -fn_1_3404 = .text:0x00003404; // type:function size:0x700 -fn_1_3B04 = .text:0x00003B04; // type:function size:0xFC -fn_1_3C00 = .text:0x00003C00; // type:function size:0x4A8 -fn_1_40A8 = .text:0x000040A8; // type:function size:0x1340 -fn_1_53E8 = .text:0x000053E8; // type:function size:0x744 -fn_1_5B2C = .text:0x00005B2C; // type:function size:0xD8 -fn_1_5C04 = .text:0x00005C04; // type:function size:0x1538 -fn_1_713C = .text:0x0000713C; // type:function size:0x3B8 -fn_1_74F4 = .text:0x000074F4; // type:function size:0x464 -fn_1_7958 = .text:0x00007958; // type:function size:0xD4 -fn_1_7A2C = .text:0x00007A2C; // type:function size:0x610 -fn_1_803C = .text:0x0000803C; // type:function size:0x4DC -fn_1_8518 = .text:0x00008518; // type:function size:0x414 -fn_1_892C = .text:0x0000892C; // type:function size:0x174 -fn_1_8AA0 = .text:0x00008AA0; // type:function size:0x2B8 -fn_1_8D58 = .text:0x00008D58; // type:function size:0x11E8 -fn_1_9F40 = .text:0x00009F40; // type:function size:0x570 -fn_1_A4B0 = .text:0x0000A4B0; // type:function size:0x59C -fn_1_AA4C = .text:0x0000AA4C; // type:function size:0xD0 -_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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // 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:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte -lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:4byte -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC -lbl_1_data_4C = .data:0x0000004C; // type:object size:0xC data:4byte -lbl_1_data_58 = .data:0x00000058; // type:object size:0xC data:4byte -lbl_1_data_64 = .data:0x00000064; // type:object size:0xC -lbl_1_data_70 = .data:0x00000070; // type:object size:0xC data:4byte -lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC -lbl_1_data_88 = .data:0x00000088; // type:object size:0xC -lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 -lbl_1_data_98 = .data:0x00000098; // type:object size:0xC -lbl_1_data_A4 = .data:0x000000A4; // type:object size:0xC -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x200 -lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x8 -lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0xC -lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x10 -lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x40 -lbl_1_data_314 = .data:0x00000314; // type:object size:0xC -lbl_1_data_320 = .data:0x00000320; // type:object size:0x6 -lbl_1_data_326 = .data:0x00000326; // type:object size:0x6 -lbl_1_data_32C = .data:0x0000032C; // type:object size:0x24 -lbl_1_data_350 = .data:0x00000350; // type:object size:0x18 -lbl_1_data_368 = .data:0x00000368; // type:object size:0x4 -lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0xC -lbl_1_data_384 = .data:0x00000384; // type:object size:0xC -lbl_1_data_390 = .data:0x00000390; // type:object size:0xC -lbl_1_data_39C = .data:0x0000039C; // type:object size:0x50 -lbl_1_data_3EC = .data:0x000003EC; // type:object size:0x50 -lbl_1_data_43C = .data:0x0000043C; // type:object size:0x50 -lbl_1_data_48C = .data:0x0000048C; // type:object size:0x50 -lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x18 data:string -lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x9 data:string -lbl_1_data_4FD = .data:0x000004FD; // type:object size:0x6 data:string -lbl_1_data_503 = .data:0x00000503; // type:object size:0x1D data:string -jumptable_1_data_520 = .data:0x00000520; // type:object size:0x40 scope:local -lbl_1_data_560 = .data:0x00000560; // type:object size:0x8 data:string -lbl_1_data_568 = .data:0x00000568; // type:object size:0x1C -jumptable_1_data_584 = .data:0x00000584; // type:object size:0x24 scope:local -lbl_1_data_5A8 = .data:0x000005A8; // type:object size:0x24 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x6 -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x6 -lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x2 data:2byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x100 -lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x40 data:4byte -lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:float -lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x4 data:4byte -lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x4 data:4byte -lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x2 data:2byte -lbl_1_bss_19E = .bss:0x0000019E; // type:object size:0x2 data:2byte -lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte -lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte -lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:4byte -lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0xC data:4byte -lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC data:4byte -lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC data:4byte -lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC data:4byte -lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0x4 data:4byte -lbl_1_bss_1E0 = .bss:0x000001E0; // type:object size:0x18 data:4byte -lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m442Dll/splits.txt b/config/GMPJ01_00/rels/m442Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m442Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m442Dll/symbols.txt b/config/GMPJ01_00/rels/m442Dll/symbols.txt deleted file mode 100644 index 2e955733..00000000 --- a/config/GMPJ01_00/rels/m442Dll/symbols.txt +++ /dev/null @@ -1,225 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2D4 -fn_1_374 = .text:0x00000374; // type:function size:0x10 -fn_1_384 = .text:0x00000384; // type:function size:0x10 -fn_1_394 = .text:0x00000394; // type:function size:0xB4 -fn_1_448 = .text:0x00000448; // type:function size:0x5E8 -fn_1_A30 = .text:0x00000A30; // type:function size:0x60 -fn_1_A90 = .text:0x00000A90; // type:function size:0x30C -fn_1_D9C = .text:0x00000D9C; // type:function size:0x68 -fn_1_E04 = .text:0x00000E04; // type:function size:0x84 -fn_1_E88 = .text:0x00000E88; // type:function size:0x378 -fn_1_1200 = .text:0x00001200; // type:function size:0x30 -fn_1_1230 = .text:0x00001230; // type:function size:0xDE0 -fn_1_2010 = .text:0x00002010; // type:function size:0x244 -fn_1_2254 = .text:0x00002254; // type:function size:0xFA8 -fn_1_31FC = .text:0x000031FC; // type:function size:0x3B0 -fn_1_35AC = .text:0x000035AC; // type:function size:0xAC -fn_1_3658 = .text:0x00003658; // type:function size:0x160 -fn_1_37B8 = .text:0x000037B8; // type:function size:0x150 -fn_1_3908 = .text:0x00003908; // type:function size:0x1DC -fn_1_3AE4 = .text:0x00003AE4; // type:function size:0x13C -fn_1_3C20 = .text:0x00003C20; // type:function size:0x74 -fn_1_3C94 = .text:0x00003C94; // type:function size:0x180 -fn_1_3E14 = .text:0x00003E14; // type:function size:0x50 -fn_1_3E64 = .text:0x00003E64; // type:function size:0x58 -fn_1_3EBC = .text:0x00003EBC; // type:function size:0x4 -fn_1_3EC0 = .text:0x00003EC0; // type:function size:0x4A4 -fn_1_4364 = .text:0x00004364; // type:function size:0x4 -fn_1_4368 = .text:0x00004368; // type:function size:0xDC -fn_1_4444 = .text:0x00004444; // type:function size:0x418 -fn_1_485C = .text:0x0000485C; // type:function size:0xC6C -fn_1_54C8 = .text:0x000054C8; // type:function size:0x450 -fn_1_5918 = .text:0x00005918; // type:function size:0xA8 -fn_1_59C0 = .text:0x000059C0; // type:function size:0x88 -fn_1_5A48 = .text:0x00005A48; // type:function size:0x494 -fn_1_5EDC = .text:0x00005EDC; // type:function size:0x5D8 -fn_1_64B4 = .text:0x000064B4; // type:function size:0x700 -fn_1_6BB4 = .text:0x00006BB4; // type:function size:0x114 -fn_1_6CC8 = .text:0x00006CC8; // type:function size:0x5C -fn_1_6D24 = .text:0x00006D24; // type:function size:0x5A0 -fn_1_72C4 = .text:0x000072C4; // type:function size:0x318 -fn_1_75DC = .text:0x000075DC; // type:function size:0x158 -fn_1_7734 = .text:0x00007734; // type:function size:0x114 -fn_1_7848 = .text:0x00007848; // type:function size:0x48 -fn_1_7890 = .text:0x00007890; // type:function size:0x3FC -fn_1_7C8C = .text:0x00007C8C; // type:function size:0x230 -fn_1_7EBC = .text:0x00007EBC; // type:function size:0x664 -fn_1_8520 = .text:0x00008520; // type:function size:0xC8 -fn_1_85E8 = .text:0x000085E8; // type:function size:0x104 -fn_1_86EC = .text:0x000086EC; // type:function size:0x4C -fn_1_8738 = .text:0x00008738; // type:function size:0x250 -fn_1_8988 = .text:0x00008988; // type:function size:0x764 -fn_1_90EC = .text:0x000090EC; // type:function size:0x10 -fn_1_90FC = .text:0x000090FC; // type:function size:0xB0 -fn_1_91AC = .text:0x000091AC; // type:function size:0x28C -fn_1_9438 = .text:0x00009438; // type:function size:0x74 -fn_1_94AC = .text:0x000094AC; // type:function size:0x50 -fn_1_94FC = .text:0x000094FC; // type:function size:0x24 -fn_1_9520 = .text:0x00009520; // type:function size:0x30 -fn_1_9550 = .text:0x00009550; // type:function size:0x1BC -fn_1_970C = .text:0x0000970C; // type:function size:0x78 -fn_1_9784 = .text:0x00009784; // type:function size:0x88 -fn_1_980C = .text:0x0000980C; // type:function size:0x164 -_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:0x10 data:4byte -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:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0xC data:4byte -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:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -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:0x8 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:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float -lbl_1_data_54 = .data:0x00000054; // type:object size:0xC data:float -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC data:float -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x4 -lbl_1_data_70 = .data:0x00000070; // type:object size:0xC -lbl_1_data_7C = .data:0x0000007C; // type:object size:0xC -lbl_1_data_88 = .data:0x00000088; // type:object size:0x24 -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x4 data:4byte -jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x30 scope:local -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x1C data:string -lbl_1_data_FC = .data:0x000000FC; // type:object size:0x1C -lbl_1_data_118 = .data:0x00000118; // type:object size:0x8 -lbl_1_data_120 = .data:0x00000120; // type:object size:0x30 -lbl_1_data_150 = .data:0x00000150; // type:object size:0x1A -lbl_1_data_16A = .data:0x0000016A; // type:object size:0x20 -lbl_1_data_18A = .data:0x0000018A; // type:object size:0x16 -lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0xC data:string -lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0x1 data:byte -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x1 data:byte -lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x30 -lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x1 data:byte -lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x24 -lbl_1_data_218 = .data:0x00000218; // type:object size:0x1 data:byte -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x20 -lbl_1_data_23C = .data:0x0000023C; // type:object size:0xC -lbl_1_data_248 = .data:0x00000248; // type:object size:0x8 -lbl_1_data_250 = .data:0x00000250; // type:object size:0x8 data:float -lbl_1_data_258 = .data:0x00000258; // type:object size:0x10 -lbl_1_data_268 = .data:0x00000268; // type:object size:0xC -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC data:float -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x3C -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0xC000 data:2byte -lbl_1_bss_C05C = .bss:0x0000C05C; // type:object size:0x28 data:2byte -lbl_1_bss_C084 = .bss:0x0000C084; // type:object size:0x974 -lbl_1_bss_C9F8 = .bss:0x0000C9F8; // type:object size:0x5000 data:4byte -lbl_1_bss_119F8 = .bss:0x000119F8; // type:object size:0x4 data:4byte -lbl_1_bss_119FC = .bss:0x000119FC; // type:object size:0x271 -lbl_1_bss_11C6D = .bss:0x00011C6D; // type:object size:0x273 -lbl_1_bss_11EE0 = .bss:0x00011EE0; // type:object size:0x4 data:4byte -lbl_1_bss_11EE4 = .bss:0x00011EE4; // type:object size:0x4 data:4byte -lbl_1_bss_11EE8 = .bss:0x00011EE8; // type:object size:0x2 data:2byte -lbl_1_bss_11EEC = .bss:0x00011EEC; // type:object size:0x10 -lbl_1_bss_11EFC = .bss:0x00011EFC; // type:object size:0x4 data:4byte -lbl_1_bss_11F00 = .bss:0x00011F00; // type:object size:0x4 data:4byte -lbl_1_bss_11F04 = .bss:0x00011F04; // type:object size:0xC -lbl_1_bss_11F10 = .bss:0x00011F10; // type:object size:0x4 data:4byte -lbl_1_bss_11F14 = .bss:0x00011F14; // type:object size:0x2 data:2byte -lbl_1_bss_11F16 = .bss:0x00011F16; // type:object size:0x2 data:2byte -lbl_1_bss_11F18 = .bss:0x00011F18; // type:object size:0x2 data:2byte -lbl_1_bss_11F1A = .bss:0x00011F1A; // type:object size:0x2 data:2byte -lbl_1_bss_11F1C = .bss:0x00011F1C; // type:object size:0x2 data:2byte -lbl_1_bss_11F20 = .bss:0x00011F20; // type:object size:0x4 data:4byte -lbl_1_bss_11F24 = .bss:0x00011F24; // type:object size:0x4 data:4byte -lbl_1_bss_11F28 = .bss:0x00011F28; // type:object size:0x4 data:4byte -lbl_1_bss_11F2C = .bss:0x00011F2C; // type:object size:0x4 data:4byte -lbl_1_bss_11F30 = .bss:0x00011F30; // type:object size:0x8 data:4byte -lbl_1_bss_11F38 = .bss:0x00011F38; // type:object size:0x4 data:4byte -lbl_1_bss_11F3C = .bss:0x00011F3C; // type:object size:0x4 data:4byte -lbl_1_bss_11F40 = .bss:0x00011F40; // type:object size:0x8 data:4byte -lbl_1_bss_11F48 = .bss:0x00011F48; // type:object size:0x4 data:4byte -lbl_1_bss_11F4C = .bss:0x00011F4C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m443Dll/splits.txt b/config/GMPJ01_00/rels/m443Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m443Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m443Dll/symbols.txt b/config/GMPJ01_00/rels/m443Dll/symbols.txt deleted file mode 100644 index b5924ac6..00000000 --- a/config/GMPJ01_00/rels/m443Dll/symbols.txt +++ /dev/null @@ -1,330 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x380 -fn_1_420 = .text:0x00000420; // type:function size:0xC4 -fn_1_4E4 = .text:0x000004E4; // type:function size:0xA0 -fn_1_584 = .text:0x00000584; // type:function size:0x14C -fn_1_6D0 = .text:0x000006D0; // type:function size:0x2E0 -fn_1_9B0 = .text:0x000009B0; // type:function size:0x330 -fn_1_CE0 = .text:0x00000CE0; // type:function size:0x1EC -fn_1_ECC = .text:0x00000ECC; // type:function size:0x3C8 -fn_1_1294 = .text:0x00001294; // type:function size:0x544 -fn_1_17D8 = .text:0x000017D8; // type:function size:0x4C0 -fn_1_1C98 = .text:0x00001C98; // type:function size:0xF4 -fn_1_1D8C = .text:0x00001D8C; // type:function size:0x704 -fn_1_2490 = .text:0x00002490; // type:function size:0x114 -fn_1_25A4 = .text:0x000025A4; // type:function size:0x834 -fn_1_2DD8 = .text:0x00002DD8; // type:function size:0x17C -fn_1_2F54 = .text:0x00002F54; // type:function size:0x36C -fn_1_32C0 = .text:0x000032C0; // type:function size:0xB0 -fn_1_3370 = .text:0x00003370; // type:function size:0x3A0 -fn_1_3710 = .text:0x00003710; // type:function size:0x60 -fn_1_3770 = .text:0x00003770; // type:function size:0x608 -fn_1_3D78 = .text:0x00003D78; // type:function size:0x270 -fn_1_3FE8 = .text:0x00003FE8; // type:function size:0x14 -fn_1_3FFC = .text:0x00003FFC; // type:function size:0x14 -fn_1_4010 = .text:0x00004010; // type:function size:0x9C -fn_1_40AC = .text:0x000040AC; // type:function size:0x9C -fn_1_4148 = .text:0x00004148; // type:function size:0x68 -fn_1_41B0 = .text:0x000041B0; // type:function size:0x6C -fn_1_421C = .text:0x0000421C; // type:function size:0x98 -fn_1_42B4 = .text:0x000042B4; // type:function size:0x18 -fn_1_42CC = .text:0x000042CC; // type:function size:0x18 -fn_1_42E4 = .text:0x000042E4; // type:function size:0x18 -fn_1_42FC = .text:0x000042FC; // type:function size:0x18 -fn_1_4314 = .text:0x00004314; // type:function size:0x54 -fn_1_4368 = .text:0x00004368; // type:function size:0x44 -fn_1_43AC = .text:0x000043AC; // type:function size:0x30 -fn_1_43DC = .text:0x000043DC; // type:function size:0x30 -fn_1_440C = .text:0x0000440C; // type:function size:0x38 -fn_1_4444 = .text:0x00004444; // type:function size:0x208 -fn_1_464C = .text:0x0000464C; // type:function size:0x240 -fn_1_488C = .text:0x0000488C; // type:function size:0x11C -fn_1_49A8 = .text:0x000049A8; // type:function size:0xB4 -fn_1_4A5C = .text:0x00004A5C; // type:function size:0x54 -fn_1_4AB0 = .text:0x00004AB0; // type:function size:0x4 -fn_1_4AB4 = .text:0x00004AB4; // type:function size:0x260 -fn_1_4D14 = .text:0x00004D14; // type:function size:0x730 -fn_1_5444 = .text:0x00005444; // type:function size:0x218 -fn_1_565C = .text:0x0000565C; // type:function size:0x24 -fn_1_5680 = .text:0x00005680; // type:function size:0x554 -fn_1_5BD4 = .text:0x00005BD4; // type:function size:0x884 -fn_1_6458 = .text:0x00006458; // type:function size:0x21C -fn_1_6674 = .text:0x00006674; // type:function size:0xDC -fn_1_6750 = .text:0x00006750; // type:function size:0x264 -fn_1_69B4 = .text:0x000069B4; // type:function size:0x1DC -fn_1_6B90 = .text:0x00006B90; // type:function size:0x218 -fn_1_6DA8 = .text:0x00006DA8; // type:function size:0x388 -fn_1_7130 = .text:0x00007130; // type:function size:0x210 -fn_1_7340 = .text:0x00007340; // type:function size:0xDF8 -fn_1_8138 = .text:0x00008138; // type:function size:0x18C -fn_1_82C4 = .text:0x000082C4; // type:function size:0x74 -fn_1_8338 = .text:0x00008338; // type:function size:0x1D0 -fn_1_8508 = .text:0x00008508; // type:function size:0x178 -fn_1_8680 = .text:0x00008680; // type:function size:0x2D8 -fn_1_8958 = .text:0x00008958; // type:function size:0x38 -fn_1_8990 = .text:0x00008990; // type:function size:0x138 -fn_1_8AC8 = .text:0x00008AC8; // type:function size:0x1A0 -fn_1_8C68 = .text:0x00008C68; // type:function size:0x24 -fn_1_8C8C = .text:0x00008C8C; // type:function size:0x74 -fn_1_8D00 = .text:0x00008D00; // type:function size:0x74 -fn_1_8D74 = .text:0x00008D74; // type:function size:0x18 -fn_1_8D8C = .text:0x00008D8C; // type:function size:0x54 -fn_1_8DE0 = .text:0x00008DE0; // type:function size:0x54 -fn_1_8E34 = .text:0x00008E34; // type:function size:0x1C8 -fn_1_8FFC = .text:0x00008FFC; // type:function size:0x5A8 -fn_1_95A4 = .text:0x000095A4; // type:function size:0x94 -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x50 -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x14 data:4byte -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:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 data:4byte -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x10 data:4byte -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x8 data:double -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:0xC data:4byte -lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x34 data:4byte -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x10 data:4byte -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x40 data:4byte -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x10 data:4byte -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x10 data:4byte -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x20 data:4byte -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // 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:0xC data:float -lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 data:string -lbl_1_data_60 = .data:0x00000060; // type:object size:0x48 -lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x48 -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x18 -lbl_1_data_108 = .data:0x00000108; // type:object size:0x80 -lbl_1_data_188 = .data:0x00000188; // type:object size:0x80 -lbl_1_data_208 = .data:0x00000208; // type:object size:0x1 data:byte -lbl_1_data_20C = .data:0x0000020C; // type:object size:0x1A data:string -lbl_1_data_226 = .data:0x00000226; // type:object size:0x1A -lbl_1_data_240 = .data:0x00000240; // type:object size:0x18 -lbl_1_data_258 = .data:0x00000258; // type:object size:0x2C -lbl_1_data_284 = .data:0x00000284; // type:object size:0x40 -lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x10 -lbl_1_data_2D4 = .data:0x000002D4; // type:object size:0x50 -lbl_1_data_324 = .data:0x00000324; // type:object size:0x10 -lbl_1_data_334 = .data:0x00000334; // type:object size:0x10 -lbl_1_data_344 = .data:0x00000344; // type:object size:0x10 -lbl_1_data_354 = .data:0x00000354; // type:object size:0x10 -lbl_1_data_364 = .data:0x00000364; // type:object size:0x30 -lbl_1_data_394 = .data:0x00000394; // type:object size:0x30 -lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x30 -lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x5 data:string -lbl_1_data_3F9 = .data:0x000003F9; // type:object size:0x7 data:string -lbl_1_data_400 = .data:0x00000400; // type:object size:0x7 data:string -lbl_1_data_407 = .data:0x00000407; // type:object size:0x9 -lbl_1_data_410 = .data:0x00000410; // type:object size:0x58 -lbl_1_data_468 = .data:0x00000468; // type:object size:0x20 -lbl_1_data_488 = .data:0x00000488; // type:object size:0x58 -lbl_1_data_4E0 = .data:0x000004E0; // type:object size:0x10 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x3C data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x2 data:2byte -lbl_1_bss_56 = .bss:0x00000056; // type:object size:0x2 data:2byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x2 data:2byte -lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x2 data:2byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x8 data:2byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x18 -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x10 diff --git a/config/GMPJ01_00/rels/m445Dll/splits.txt b/config/GMPJ01_00/rels/m445Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m445Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m445Dll/symbols.txt b/config/GMPJ01_00/rels/m445Dll/symbols.txt deleted file mode 100644 index 1f0a49de..00000000 --- a/config/GMPJ01_00/rels/m445Dll/symbols.txt +++ /dev/null @@ -1,173 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x418 -fn_1_4B8 = .text:0x000004B8; // type:function size:0x54 -fn_1_50C = .text:0x0000050C; // type:function size:0x4 -fn_1_510 = .text:0x00000510; // type:function size:0x10 -fn_1_520 = .text:0x00000520; // type:function size:0x30 -fn_1_550 = .text:0x00000550; // type:function size:0x1308 -fn_1_1858 = .text:0x00001858; // type:function size:0x80 -fn_1_18D8 = .text:0x000018D8; // type:function size:0x5C -fn_1_1934 = .text:0x00001934; // type:function size:0x34 -fn_1_1968 = .text:0x00001968; // type:function size:0x168 -fn_1_1AD0 = .text:0x00001AD0; // type:function size:0x3C -fn_1_1B0C = .text:0x00001B0C; // type:function size:0x158 -fn_1_1C64 = .text:0x00001C64; // type:function size:0xF90 -fn_1_2BF4 = .text:0x00002BF4; // type:function size:0xB8 -fn_1_2CAC = .text:0x00002CAC; // type:function size:0x1BC -fn_1_2E68 = .text:0x00002E68; // type:function size:0xD0 -fn_1_2F38 = .text:0x00002F38; // type:function size:0xD8 -fn_1_3010 = .text:0x00003010; // type:function size:0x84 -fn_1_3094 = .text:0x00003094; // type:function size:0x80 -fn_1_3114 = .text:0x00003114; // type:function size:0x220 -fn_1_3334 = .text:0x00003334; // type:function size:0x214 -fn_1_3548 = .text:0x00003548; // type:function size:0xD58 -fn_1_42A0 = .text:0x000042A0; // type:function size:0x104 -fn_1_43A4 = .text:0x000043A4; // type:function size:0x22C -fn_1_45D0 = .text:0x000045D0; // type:function size:0xFAC -fn_1_557C = .text:0x0000557C; // type:function size:0x74 -fn_1_55F0 = .text:0x000055F0; // type:function size:0x74 -fn_1_5664 = .text:0x00005664; // type:function size:0x9C -fn_1_5700 = .text:0x00005700; // type:function size:0xB68 -fn_1_6268 = .text:0x00006268; // type:function size:0x1D58 -fn_1_7FC0 = .text:0x00007FC0; // type:function size:0x360 -fn_1_8320 = .text:0x00008320; // type:function size:0x618 -fn_1_8938 = .text:0x00008938; // type:function size:0x80 -fn_1_89B8 = .text:0x000089B8; // type:function size:0x60 -fn_1_8A18 = .text:0x00008A18; // type:function size:0x33C -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x40 -lbl_1_data_40 = .data:0x00000040; // type:object size:0x20 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x18 -lbl_1_data_78 = .data:0x00000078; // type:object size:0x18 -lbl_1_data_90 = .data:0x00000090; // type:object size:0x40 -lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x40 -lbl_1_data_110 = .data:0x00000110; // type:object size:0x40 -lbl_1_data_150 = .data:0x00000150; // type:object size:0x12 data:string -lbl_1_data_162 = .data:0x00000162; // type:object size:0x12 data:string -lbl_1_data_174 = .data:0x00000174; // type:object size:0x13 data:string -lbl_1_data_187 = .data:0x00000187; // type:object size:0x13 data:string -lbl_1_data_19A = .data:0x0000019A; // type:object size:0x14 data:string -lbl_1_data_1AE = .data:0x000001AE; // type:object size:0x14 data:string -lbl_1_data_1C2 = .data:0x000001C2; // type:object size:0x10 data:string -lbl_1_data_1D2 = .data:0x000001D2; // type:object size:0x10 data:string -lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0x13 data:string -lbl_1_data_1F5 = .data:0x000001F5; // type:object size:0xF data:string -lbl_1_data_204 = .data:0x00000204; // type:object size:0xE data:string -lbl_1_data_212 = .data:0x00000212; // type:object size:0xE -lbl_1_data_220 = .data:0x00000220; // type:object size:0x40 -lbl_1_data_260 = .data:0x00000260; // type:object size:0x20 -lbl_1_data_280 = .data:0x00000280; // type:object size:0xF data:string -lbl_1_data_28F = .data:0x0000028F; // type:object size:0xB data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC data:float -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0xC data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x28 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x230 -lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x300 data:2byte -lbl_1_bss_588 = .bss:0x00000588; // type:object size:0x13C data:4byte -lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x4 data:4byte -lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x4 data:4byte -lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0xC data:4byte -lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte -lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte -lbl_1_bss_6E0 = .bss:0x000006E0; // type:object size:0x2 data:2byte -lbl_1_bss_6E2 = .bss:0x000006E2; // type:object size:0x2 data:2byte -lbl_1_bss_6E6 = .bss:0x000006E6; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m446dll/splits.txt b/config/GMPJ01_00/rels/m446dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m446dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m446dll/symbols.txt b/config/GMPJ01_00/rels/m446dll/symbols.txt deleted file mode 100644 index ad45d2b5..00000000 --- a/config/GMPJ01_00/rels/m446dll/symbols.txt +++ /dev/null @@ -1,305 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x9C -fn_1_13C = .text:0x0000013C; // type:function size:0x168 -fn_1_2A4 = .text:0x000002A4; // type:function size:0x158 -fn_1_3FC = .text:0x000003FC; // type:function size:0xB8 -fn_1_4B4 = .text:0x000004B4; // type:function size:0x88 -fn_1_53C = .text:0x0000053C; // type:function size:0x41C -fn_1_958 = .text:0x00000958; // type:function size:0x220 -fn_1_B78 = .text:0x00000B78; // type:function size:0x94 -fn_1_C0C = .text:0x00000C0C; // type:function size:0x94 -fn_1_CA0 = .text:0x00000CA0; // type:function size:0xB5C -fn_1_17FC = .text:0x000017FC; // type:function size:0x40 -fn_1_183C = .text:0x0000183C; // type:function size:0x38 -fn_1_1874 = .text:0x00001874; // type:function size:0x3C -fn_1_18B0 = .text:0x000018B0; // type:function size:0x3C -fn_1_18EC = .text:0x000018EC; // type:function size:0x84 -fn_1_1970 = .text:0x00001970; // type:function size:0x64 -fn_1_19D4 = .text:0x000019D4; // type:function size:0x290 -fn_1_1C64 = .text:0x00001C64; // type:function size:0x94 -fn_1_1CF8 = .text:0x00001CF8; // type:function size:0x38 -fn_1_1D30 = .text:0x00001D30; // type:function size:0x3C -fn_1_1D6C = .text:0x00001D6C; // type:function size:0x3C -fn_1_1DA8 = .text:0x00001DA8; // type:function size:0x34 -fn_1_1DDC = .text:0x00001DDC; // type:function size:0x10 -fn_1_1DEC = .text:0x00001DEC; // type:function size:0x8 -fn_1_1DF4 = .text:0x00001DF4; // type:function size:0x68 -fn_1_1E5C = .text:0x00001E5C; // type:function size:0x28 -fn_1_1E84 = .text:0x00001E84; // type:function size:0x44 -fn_1_1EC8 = .text:0x00001EC8; // type:function size:0x3C -fn_1_1F04 = .text:0x00001F04; // type:function size:0x34 -fn_1_1F38 = .text:0x00001F38; // type:function size:0x4C -fn_1_1F84 = .text:0x00001F84; // type:function size:0x3C -fn_1_1FC0 = .text:0x00001FC0; // type:function size:0x3C -fn_1_1FFC = .text:0x00001FFC; // type:function size:0x68 -fn_1_2064 = .text:0x00002064; // type:function size:0x18 -fn_1_207C = .text:0x0000207C; // type:function size:0x58 -fn_1_20D4 = .text:0x000020D4; // type:function size:0x338 -fn_1_240C = .text:0x0000240C; // type:function size:0x27C -fn_1_2688 = .text:0x00002688; // type:function size:0xA4 -fn_1_272C = .text:0x0000272C; // type:function size:0x68 -fn_1_2794 = .text:0x00002794; // type:function size:0x68 -fn_1_27FC = .text:0x000027FC; // type:function size:0x94 -fn_1_2890 = .text:0x00002890; // type:function size:0x98 -fn_1_2928 = .text:0x00002928; // type:function size:0x8C -fn_1_29B4 = .text:0x000029B4; // type:function size:0x68 -fn_1_2A1C = .text:0x00002A1C; // type:function size:0x3C -fn_1_2A58 = .text:0x00002A58; // type:function size:0x3C -fn_1_2A94 = .text:0x00002A94; // type:function size:0x14 -fn_1_2AA8 = .text:0x00002AA8; // type:function size:0x2EC -fn_1_2D94 = .text:0x00002D94; // type:function size:0x14 -fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x118 -fn_1_2EC0 = .text:0x00002EC0; // type:function size:0xA4 -fn_1_2F64 = .text:0x00002F64; // type:function size:0x100 -fn_1_3064 = .text:0x00003064; // type:function size:0x11C -fn_1_3180 = .text:0x00003180; // type:function size:0x58 -fn_1_31D8 = .text:0x000031D8; // type:function size:0x2C8 -fn_1_34A0 = .text:0x000034A0; // type:function size:0x260 -fn_1_3700 = .text:0x00003700; // type:function size:0x154 -fn_1_3854 = .text:0x00003854; // type:function size:0x5C -fn_1_38B0 = .text:0x000038B0; // type:function size:0x30 -fn_1_38E0 = .text:0x000038E0; // type:function size:0x10 -fn_1_38F0 = .text:0x000038F0; // type:function size:0x34 -fn_1_3924 = .text:0x00003924; // type:function size:0x18 -fn_1_393C = .text:0x0000393C; // type:function size:0x58 -fn_1_3994 = .text:0x00003994; // type:function size:0x3C -fn_1_39D0 = .text:0x000039D0; // type:function size:0x17C -fn_1_3B4C = .text:0x00003B4C; // type:function size:0xA4 -fn_1_3BF0 = .text:0x00003BF0; // type:function size:0x2C4 -fn_1_3EB4 = .text:0x00003EB4; // type:function size:0x11C -fn_1_3FD0 = .text:0x00003FD0; // type:function size:0x30 -fn_1_4000 = .text:0x00004000; // type:function size:0x88 -fn_1_4088 = .text:0x00004088; // type:function size:0x624 -fn_1_46AC = .text:0x000046AC; // type:function size:0x24 -fn_1_46D0 = .text:0x000046D0; // type:function size:0x50 -fn_1_4720 = .text:0x00004720; // type:function size:0x78 -fn_1_4798 = .text:0x00004798; // type:function size:0x74 -fn_1_480C = .text:0x0000480C; // type:function size:0x18 -fn_1_4824 = .text:0x00004824; // type:function size:0x58 -fn_1_487C = .text:0x0000487C; // type:function size:0x284 -fn_1_4B00 = .text:0x00004B00; // type:function size:0x59C -fn_1_509C = .text:0x0000509C; // type:function size:0x11C -fn_1_51B8 = .text:0x000051B8; // type:function size:0x34C -fn_1_5504 = .text:0x00005504; // type:function size:0x144 -fn_1_5648 = .text:0x00005648; // type:function size:0x30 -fn_1_5678 = .text:0x00005678; // type:function size:0x4BC -fn_1_5B34 = .text:0x00005B34; // type:function size:0x14 -fn_1_5B48 = .text:0x00005B48; // type:function size:0xC8 -fn_1_5C10 = .text:0x00005C10; // type:function size:0x14 -fn_1_5C24 = .text:0x00005C24; // type:function size:0xC8 -fn_1_5CEC = .text:0x00005CEC; // type:function size:0x14 -fn_1_5D00 = .text:0x00005D00; // type:function size:0x154 -fn_1_5E54 = .text:0x00005E54; // type:function size:0x220 -fn_1_6074 = .text:0x00006074; // type:function size:0x1F0 -fn_1_6264 = .text:0x00006264; // type:function size:0x8C -fn_1_62F0 = .text:0x000062F0; // type:function size:0x8C -fn_1_637C = .text:0x0000637C; // type:function size:0x140 -fn_1_64BC = .text:0x000064BC; // type:function size:0xBC -fn_1_6578 = .text:0x00006578; // type:function size:0xA8 -fn_1_6620 = .text:0x00006620; // type:function size:0x158 -fn_1_6778 = .text:0x00006778; // type:function size:0x160 -fn_1_68D8 = .text:0x000068D8; // type:function size:0x4 -fn_1_68DC = .text:0x000068DC; // type:function size:0x5C4 -fn_1_6EA0 = .text:0x00006EA0; // type:function size:0x24 -fn_1_6EC4 = .text:0x00006EC4; // type:function size:0x24 -fn_1_6EE8 = .text:0x00006EE8; // type:function size:0x10 -fn_1_6EF8 = .text:0x00006EF8; // type:function size:0x194 -fn_1_708C = .text:0x0000708C; // type:function size:0x10 -fn_1_709C = .text:0x0000709C; // type:function size:0x244 -fn_1_72E0 = .text:0x000072E0; // type:function size:0x18 -fn_1_72F8 = .text:0x000072F8; // type:function size:0x58 -fn_1_7350 = .text:0x00007350; // type:function size:0x1A4 -fn_1_74F4 = .text:0x000074F4; // type:function size:0x1F4 -fn_1_76E8 = .text:0x000076E8; // type:function size:0xE0 -fn_1_77C8 = .text:0x000077C8; // type:function size:0xBC -fn_1_7884 = .text:0x00007884; // type:function size:0x84 -fn_1_7908 = .text:0x00007908; // type:function size:0x94 -fn_1_799C = .text:0x0000799C; // type:function size:0x9C -fn_1_7A38 = .text:0x00007A38; // type:function size:0x7C -fn_1_7AB4 = .text:0x00007AB4; // type:function size:0x13C -fn_1_7BF0 = .text:0x00007BF0; // type:function size:0x18 -fn_1_7C08 = .text:0x00007C08; // type:function size:0x58 -fn_1_7C60 = .text:0x00007C60; // type:function size:0x460 -fn_1_80C0 = .text:0x000080C0; // type:function size:0x330 -fn_1_83F0 = .text:0x000083F0; // type:function size:0xBC -fn_1_84AC = .text:0x000084AC; // type:function size:0x80 -fn_1_852C = .text:0x0000852C; // type:function size:0xE0 -fn_1_860C = .text:0x0000860C; // type:function size:0xC -_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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x30 data:4byte -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:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x14 -lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0x14 -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x28 -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x8 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_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -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_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:double -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // 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:0x4 data:float -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:0x4 -lbl_1_data_38 = .data:0x00000038; // type:object size:0x18 -lbl_1_data_50 = .data:0x00000050; // type:object size:0x18 -lbl_1_data_68 = .data:0x00000068; // type:object size:0x8 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 -lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x14 -jumptable_1_data_B4 = .data:0x000000B4; // type:object size:0x30 scope:local -jumptable_1_data_E4 = .data:0x000000E4; // type:object size:0x68 scope:local -lbl_1_data_150 = .data:0x00000150; // type:object size:0xC -lbl_1_data_15C = .data:0x0000015C; // type:object size:0x20 -jumptable_1_data_17C = .data:0x0000017C; // type:object size:0x2C scope:local -lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x1F data:string -lbl_1_data_1C7 = .data:0x000001C7; // type:object size:0x21 -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x1E data:string -lbl_1_data_206 = .data:0x00000206; // type:object size:0x22 -lbl_1_data_228 = .data:0x00000228; // type:object size:0x24 -lbl_1_data_24C = .data:0x0000024C; // type:object size:0x90 -lbl_1_data_2DC = .data:0x000002DC; // type:object size:0x14 -lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x1F data:string -lbl_1_data_30F = .data:0x0000030F; // type:object size:0x1F data:string -lbl_1_data_32E = .data:0x0000032E; // type:object size:0x22 -jumptable_1_data_350 = .data:0x00000350; // type:object size:0x1C scope:local -lbl_1_data_37C = .data:0x0000037C; // type:object size:0x1E data:string -lbl_1_data_39A = .data:0x0000039A; // type:object size:0x1E data:string -lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x10 -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x24 -lbl_1_data_3EC = .data:0x000003EC; // type:object size:0x24 -lbl_1_data_410 = .data:0x00000410; // type:object size:0x14 -lbl_1_data_424 = .data:0x00000424; // type:object size:0x3C -lbl_1_data_460 = .data:0x00000460; // type:object size:0x54 data:byte -lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x24 -lbl_1_data_4D8 = .data:0x000004D8; // type:object size:0x1E data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:float -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:float -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0xC data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0xC data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:float -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0xC data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0xC data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:float -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0xC data:float -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0xC data:float -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m447dll/splits.txt b/config/GMPJ01_00/rels/m447dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m447dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m447dll/symbols.txt b/config/GMPJ01_00/rels/m447dll/symbols.txt deleted file mode 100644 index 2b4f2427..00000000 --- a/config/GMPJ01_00/rels/m447dll/symbols.txt +++ /dev/null @@ -1,309 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x8C -fn_1_12C = .text:0x0000012C; // type:function size:0x8C -fn_1_1B8 = .text:0x000001B8; // type:function size:0x284 -fn_1_43C = .text:0x0000043C; // type:function size:0x54 -fn_1_490 = .text:0x00000490; // type:function size:0x10 -fn_1_4A0 = .text:0x000004A0; // type:function size:0x10 -fn_1_4B0 = .text:0x000004B0; // type:function size:0x94 -fn_1_544 = .text:0x00000544; // type:function size:0x264 -fn_1_7A8 = .text:0x000007A8; // type:function size:0x3B4 -fn_1_B5C = .text:0x00000B5C; // type:function size:0x3D8 -fn_1_F34 = .text:0x00000F34; // type:function size:0x134 -fn_1_1068 = .text:0x00001068; // type:function size:0x32C -fn_1_1394 = .text:0x00001394; // type:function size:0x88 -fn_1_141C = .text:0x0000141C; // type:function size:0x68 -fn_1_1484 = .text:0x00001484; // type:function size:0x2D0 -fn_1_1754 = .text:0x00001754; // type:function size:0xDC -fn_1_1830 = .text:0x00001830; // type:function size:0x54 -fn_1_1884 = .text:0x00001884; // type:function size:0x278 -fn_1_1AFC = .text:0x00001AFC; // type:function size:0xFC -fn_1_1BF8 = .text:0x00001BF8; // type:function size:0xE8 -fn_1_1CE0 = .text:0x00001CE0; // type:function size:0x54 -fn_1_1D34 = .text:0x00001D34; // type:function size:0x5C -fn_1_1D90 = .text:0x00001D90; // type:function size:0xE0 -fn_1_1E70 = .text:0x00001E70; // type:function size:0x40 -fn_1_1EB0 = .text:0x00001EB0; // type:function size:0x10 -fn_1_1EC0 = .text:0x00001EC0; // type:function size:0x14 -fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x2C -fn_1_1F00 = .text:0x00001F00; // type:function size:0x9C -fn_1_1F9C = .text:0x00001F9C; // type:function size:0x50 -fn_1_1FEC = .text:0x00001FEC; // type:function size:0x8 -fn_1_1FF4 = .text:0x00001FF4; // type:function size:0x170 -fn_1_2164 = .text:0x00002164; // type:function size:0x1B8 -fn_1_231C = .text:0x0000231C; // type:function size:0x50 -fn_1_236C = .text:0x0000236C; // type:function size:0x124 -fn_1_2490 = .text:0x00002490; // type:function size:0x4 -fn_1_2494 = .text:0x00002494; // type:function size:0x150 -fn_1_25E4 = .text:0x000025E4; // type:function size:0x11C -fn_1_2700 = .text:0x00002700; // type:function size:0x33C -fn_1_2A3C = .text:0x00002A3C; // type:function size:0x2CC -fn_1_2D08 = .text:0x00002D08; // type:function size:0xA4 -fn_1_2DAC = .text:0x00002DAC; // type:function size:0x384 -fn_1_3130 = .text:0x00003130; // type:function size:0x1B0 -fn_1_32E0 = .text:0x000032E0; // type:function size:0x2C -fn_1_330C = .text:0x0000330C; // type:function size:0xBC -fn_1_33C8 = .text:0x000033C8; // type:function size:0xBC -fn_1_3484 = .text:0x00003484; // type:function size:0x98 -fn_1_351C = .text:0x0000351C; // type:function size:0x24 -fn_1_3540 = .text:0x00003540; // type:function size:0x24 -fn_1_3564 = .text:0x00003564; // type:function size:0x718 -fn_1_3C7C = .text:0x00003C7C; // type:function size:0x22C -fn_1_3EA8 = .text:0x00003EA8; // type:function size:0xDC -fn_1_3F84 = .text:0x00003F84; // type:function size:0x40 -fn_1_3FC4 = .text:0x00003FC4; // type:function size:0x33C -fn_1_4300 = .text:0x00004300; // type:function size:0xCC -fn_1_43CC = .text:0x000043CC; // type:function size:0x10 -fn_1_43DC = .text:0x000043DC; // type:function size:0x1C -fn_1_43F8 = .text:0x000043F8; // type:function size:0x4C -fn_1_4444 = .text:0x00004444; // type:function size:0x6C -fn_1_44B0 = .text:0x000044B0; // type:function size:0xE0 -fn_1_4590 = .text:0x00004590; // type:function size:0xA8 -fn_1_4638 = .text:0x00004638; // type:function size:0x48 -fn_1_4680 = .text:0x00004680; // type:function size:0x8C -fn_1_470C = .text:0x0000470C; // type:function size:0x54 -fn_1_4760 = .text:0x00004760; // type:function size:0x4 -fn_1_4764 = .text:0x00004764; // type:function size:0x520 -fn_1_4C84 = .text:0x00004C84; // type:function size:0x2F8 -fn_1_4F7C = .text:0x00004F7C; // type:function size:0x104 -fn_1_5080 = .text:0x00005080; // type:function size:0x218 -fn_1_5298 = .text:0x00005298; // type:function size:0x288 -fn_1_5520 = .text:0x00005520; // type:function size:0x240 -fn_1_5760 = .text:0x00005760; // type:function size:0x278 -fn_1_59D8 = .text:0x000059D8; // type:function size:0x118 -fn_1_5AF0 = .text:0x00005AF0; // type:function size:0xE0 -fn_1_5BD0 = .text:0x00005BD0; // type:function size:0xA8 -fn_1_5C78 = .text:0x00005C78; // type:function size:0xAA4 -fn_1_671C = .text:0x0000671C; // type:function size:0x9A0 -fn_1_70BC = .text:0x000070BC; // type:function size:0xC0 -fn_1_717C = .text:0x0000717C; // type:function size:0x80 -fn_1_71FC = .text:0x000071FC; // type:function size:0xAC -fn_1_72A8 = .text:0x000072A8; // type:function size:0x3E0 -fn_1_7688 = .text:0x00007688; // type:function size:0x220 -fn_1_78A8 = .text:0x000078A8; // type:function size:0xDC -fn_1_7984 = .text:0x00007984; // type:function size:0xB0 -fn_1_7A34 = .text:0x00007A34; // type:function size:0x38 -fn_1_7A6C = .text:0x00007A6C; // type:function size:0x38 -fn_1_7AA4 = .text:0x00007AA4; // type:function size:0xB0 -fn_1_7B54 = .text:0x00007B54; // type:function size:0x240 -fn_1_7D94 = .text:0x00007D94; // type:function size:0x1D0 -fn_1_7F64 = .text:0x00007F64; // type:function size:0x158 -fn_1_80BC = .text:0x000080BC; // type:function size:0x6E0 -fn_1_879C = .text:0x0000879C; // type:function size:0x220 -fn_1_89BC = .text:0x000089BC; // type:function size:0x43C -fn_1_8DF8 = .text:0x00008DF8; // type:function size:0x184 -fn_1_8F7C = .text:0x00008F7C; // type:function size:0x78 -fn_1_8FF4 = .text:0x00008FF4; // type:function size:0x10 -fn_1_9004 = .text:0x00009004; // type:function size:0xF8 -fn_1_90FC = .text:0x000090FC; // type:function size:0x10 -fn_1_910C = .text:0x0000910C; // type:function size:0x4C -fn_1_9158 = .text:0x00009158; // type:function size:0x1C8 -fn_1_9320 = .text:0x00009320; // type:function size:0x54 -fn_1_9374 = .text:0x00009374; // type:function size:0x1C4 -fn_1_9538 = .text:0x00009538; // type:function size:0x4 -fn_1_953C = .text:0x0000953C; // type:function size:0x21C -fn_1_9758 = .text:0x00009758; // type:function size:0x1C4 -fn_1_991C = .text:0x0000991C; // type:function size:0x2B0 -fn_1_9BCC = .text:0x00009BCC; // type:function size:0x120 -fn_1_9CEC = .text:0x00009CEC; // type:function size:0x200 -fn_1_9EEC = .text:0x00009EEC; // type:function size:0x54 -fn_1_9F40 = .text:0x00009F40; // type:function size:0x2F0 -fn_1_A230 = .text:0x0000A230; // type:function size:0x10 -fn_1_A240 = .text:0x0000A240; // type:function size:0x34 -_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:0x64 -lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC data:4byte -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:0x18 -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // 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:0xC -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x18 data:4byte -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x58 -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x3C -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -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:0x1 data:byte -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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x144 -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x24 -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x60 -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x14 -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x20 -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x60 -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float -lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x8 data:double -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x50 -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x50 -lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float -lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float -lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float -lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float -lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float -lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float -lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float -lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0x4 data:float -lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:double -lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x4 data:float -lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x8 data:double -lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x4 data:float -lbl_1_rodata_6D4 = .rodata:0x000006D4; // type:object size:0x4 data:float -lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float -lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float -lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float -lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float -lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float -lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float -lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x8 data:double -lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float -lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x8 data:double -lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x4 data:float -lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 data:double -lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float -lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double -lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float -lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float -lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float -lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x1 data:byte -lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float -lbl_1_rodata_73C = .rodata:0x0000073C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1C -lbl_1_data_1C = .data:0x0000001C; // type:object size:0x14 -jumptable_1_data_30 = .data:0x00000030; // type:object size:0x28 scope:local -jumptable_1_data_58 = .data:0x00000058; // type:object size:0x28 scope:local -jumptable_1_data_80 = .data:0x00000080; // type:object size:0x20 scope:local -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA8 -lbl_1_data_148 = .data:0x00000148; // type:object size:0x18 -lbl_1_data_160 = .data:0x00000160; // type:object size:0x1E data:string -lbl_1_data_17E = .data:0x0000017E; // type:object size:0x1E data:string -lbl_1_data_19C = .data:0x0000019C; // type:object size:0x14 -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x1C -lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x2C -jumptable_1_data_1F8 = .data:0x000001F8; // type:object size:0x24 scope:local -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x40 -lbl_1_data_25C = .data:0x0000025C; // type:object size:0x1C -lbl_1_data_278 = .data:0x00000278; // type:object size:0x1C -lbl_1_data_294 = .data:0x00000294; // type:object size:0x18 -lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x37 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x1C data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1C data:float -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x1C data:float -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x8 data:4byte -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x8 data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x14 -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m448Dll/splits.txt b/config/GMPJ01_00/rels/m448Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m448Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m448Dll/symbols.txt b/config/GMPJ01_00/rels/m448Dll/symbols.txt deleted file mode 100644 index 68a679da..00000000 --- a/config/GMPJ01_00/rels/m448Dll/symbols.txt +++ /dev/null @@ -1,200 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2EC -fn_1_38C = .text:0x0000038C; // type:function size:0xEC -fn_1_478 = .text:0x00000478; // type:function size:0x84 -fn_1_4FC = .text:0x000004FC; // type:function size:0xE3C -fn_1_1338 = .text:0x00001338; // type:function size:0x2FD8 -fn_1_4310 = .text:0x00004310; // type:function size:0x2A9C -fn_1_6DAC = .text:0x00006DAC; // type:function size:0x39C -fn_1_7148 = .text:0x00007148; // type:function size:0xC7C -fn_1_7DC4 = .text:0x00007DC4; // type:function size:0x3FC -fn_1_81C0 = .text:0x000081C0; // type:function size:0xC10 -fn_1_8DD0 = .text:0x00008DD0; // type:function size:0x738 -fn_1_9508 = .text:0x00009508; // type:function size:0x154 -fn_1_965C = .text:0x0000965C; // type:function size:0x4A4 -fn_1_9B00 = .text:0x00009B00; // type:function size:0x120 -_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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x14 data:4byte -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x14 data:4byte -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x14 data:4byte -lbl_1_rodata_84 = .rodata:0x00000084; // type:object size:0x14 data:4byte -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x14 data:4byte -lbl_1_rodata_AC = .rodata:0x000000AC; // type:object size:0x10 data:4byte -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x10 data:4byte -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0xC data:4byte -lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x54 -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:4byte -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x50 -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x50 -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x50 -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x24 data:4byte -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x34 data:4byte -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x24 data:4byte -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x50 -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x50 -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x18 data:4byte -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x18 data:4byte -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x8 data:4byte -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x28 data:4byte -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x28 data:4byte -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0xC data:4byte -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0xC data:4byte -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x1 data:byte -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5EC = .rodata:0x000005EC; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x28 -lbl_1_data_28 = .data:0x00000028; // type:object size:0x28 -lbl_1_data_50 = .data:0x00000050; // type:object size:0x2C -lbl_1_data_7C = .data:0x0000007C; // type:object size:0x2C -lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xB data:byte -lbl_1_data_B3 = .data:0x000000B3; // type:object size:0xD -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x2C -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x2C data:4byte -lbl_1_data_118 = .data:0x00000118; // type:object size:0x58 -lbl_1_data_170 = .data:0x00000170; // type:object size:0x8 data:4byte -lbl_1_data_178 = .data:0x00000178; // type:object size:0x20 -lbl_1_data_198 = .data:0x00000198; // type:object size:0x2 data:2byte -lbl_1_data_19A = .data:0x0000019A; // type:object size:0x2 data:2byte -lbl_1_data_19C = .data:0x0000019C; // type:object size:0x2 data:2byte -lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x4 data:4byte -lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x8 data:4byte -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x8 -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x8 -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x20 -lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x10 data:float -lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x9 data:string -lbl_1_data_1F5 = .data:0x000001F5; // type:object size:0x1B -jumptable_1_data_210 = .data:0x00000210; // type:object size:0x2C scope:local -jumptable_1_data_23C = .data:0x0000023C; // type:object size:0x20 scope:local -lbl_1_data_25C = .data:0x0000025C; // type:object size:0x4 data:4byte -lbl_1_data_260 = .data:0x00000260; // type:object size:0x4 data:float -lbl_1_data_264 = .data:0x00000264; // type:object size:0x4 data:float -lbl_1_data_268 = .data:0x00000268; // type:object size:0x4 data:float -lbl_1_data_26C = .data:0x0000026C; // type:object size:0x4 data:float -jumptable_1_data_270 = .data:0x00000270; // type:object size:0x24 scope:local -jumptable_1_data_294 = .data:0x00000294; // type:object size:0x20 scope:local -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x19 data:string -lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x24 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x20 -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x8 data:4byte -lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0xD0 data:4byte -lbl_1_bss_16C = .bss:0x0000016C; // type:object size:0x2D0 data:4byte diff --git a/config/GMPJ01_00/rels/m450Dll/splits.txt b/config/GMPJ01_00/rels/m450Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m450Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m450Dll/symbols.txt b/config/GMPJ01_00/rels/m450Dll/symbols.txt deleted file mode 100644 index 8f6a0e14..00000000 --- a/config/GMPJ01_00/rels/m450Dll/symbols.txt +++ /dev/null @@ -1,558 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x24 -fn_1_24 = .text:0x00000024; // type:function size:0x88 -fn_1_AC = .text:0x000000AC; // type:function size:0xA4 -fn_1_150 = .text:0x00000150; // type:function size:0x24 -fn_1_174 = .text:0x00000174; // type:function size:0x164 -fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C -fn_1_414 = .text:0x00000414; // type:function size:0x58 -fn_1_46C = .text:0x0000046C; // type:function size:0x114 -fn_1_580 = .text:0x00000580; // type:function size:0x218 -fn_1_798 = .text:0x00000798; // type:function size:0x254 -fn_1_9EC = .text:0x000009EC; // type:function size:0x54 -fn_1_A40 = .text:0x00000A40; // type:function size:0x10C -fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 -fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C -fn_1_1350 = .text:0x00001350; // type:function size:0x8C -fn_1_13DC = .text:0x000013DC; // type:function size:0x334 -fn_1_1710 = .text:0x00001710; // type:function size:0x350 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 -fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 -fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 -fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 -fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 -fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C -fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 -fn_1_23B4 = .text:0x000023B4; // type:function size:0x64 -fn_1_2418 = .text:0x00002418; // type:function size:0xE0 -fn_1_24F8 = .text:0x000024F8; // type:function size:0x32C -fn_1_2824 = .text:0x00002824; // type:function size:0x3AC -fn_1_2BD0 = .text:0x00002BD0; // type:function size:0x30 -fn_1_2C00 = .text:0x00002C00; // type:function size:0x1C -fn_1_2C1C = .text:0x00002C1C; // type:function size:0x18C -fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x8 -fn_1_2DB0 = .text:0x00002DB0; // type:function size:0x8 -fn_1_2DB8 = .text:0x00002DB8; // type:function size:0x8 -fn_1_2DC0 = .text:0x00002DC0; // type:function size:0x8 -fn_1_2DC8 = .text:0x00002DC8; // type:function size:0xC -fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x60 -fn_1_2E34 = .text:0x00002E34; // type:function size:0xB90 -fn_1_39C4 = .text:0x000039C4; // type:function size:0x31C -fn_1_3CE0 = .text:0x00003CE0; // type:function size:0xD8 -fn_1_3DB8 = .text:0x00003DB8; // type:function size:0x114 -fn_1_3ECC = .text:0x00003ECC; // type:function size:0xB8 -fn_1_3F84 = .text:0x00003F84; // type:function size:0xA0 -fn_1_4024 = .text:0x00004024; // type:function size:0x9C -fn_1_40C0 = .text:0x000040C0; // type:function size:0xE18 -fn_1_4ED8 = .text:0x00004ED8; // type:function size:0x250 -fn_1_5128 = .text:0x00005128; // type:function size:0x10 -fn_1_5138 = .text:0x00005138; // type:function size:0x10 -fn_1_5148 = .text:0x00005148; // type:function size:0x400 -fn_1_5548 = .text:0x00005548; // type:function size:0x7C -fn_1_55C4 = .text:0x000055C4; // type:function size:0x5C -fn_1_5620 = .text:0x00005620; // type:function size:0xA4 -fn_1_56C4 = .text:0x000056C4; // type:function size:0x748 -fn_1_5E0C = .text:0x00005E0C; // type:function size:0xCC -fn_1_5ED8 = .text:0x00005ED8; // type:function size:0x658 -fn_1_6530 = .text:0x00006530; // type:function size:0x108 -fn_1_6638 = .text:0x00006638; // type:function size:0x38 -fn_1_6670 = .text:0x00006670; // type:function size:0x30 -fn_1_66A0 = .text:0x000066A0; // type:function size:0x3C -fn_1_66DC = .text:0x000066DC; // type:function size:0xBC -fn_1_6798 = .text:0x00006798; // type:function size:0x260 -fn_1_69F8 = .text:0x000069F8; // type:function size:0xD0 -fn_1_6AC8 = .text:0x00006AC8; // type:function size:0xC8 -fn_1_6B90 = .text:0x00006B90; // type:function size:0xD8 -fn_1_6C68 = .text:0x00006C68; // type:function size:0x48 -fn_1_6CB0 = .text:0x00006CB0; // type:function size:0x7C -fn_1_6D2C = .text:0x00006D2C; // type:function size:0x3C -fn_1_6D68 = .text:0x00006D68; // type:function size:0x70 -fn_1_6DD8 = .text:0x00006DD8; // type:function size:0x714 -fn_1_74EC = .text:0x000074EC; // type:function size:0x6A4 -fn_1_7B90 = .text:0x00007B90; // type:function size:0x84 -fn_1_7C14 = .text:0x00007C14; // type:function size:0x84 -fn_1_7C98 = .text:0x00007C98; // type:function size:0xA8 -fn_1_7D40 = .text:0x00007D40; // type:function size:0x3E0 -fn_1_8120 = .text:0x00008120; // type:function size:0x3E0 -fn_1_8500 = .text:0x00008500; // type:function size:0x6DC -fn_1_8BDC = .text:0x00008BDC; // type:function size:0x498 -fn_1_9074 = .text:0x00009074; // type:function size:0x64C -fn_1_96C0 = .text:0x000096C0; // type:function size:0x164 -fn_1_9824 = .text:0x00009824; // type:function size:0x380 -fn_1_9BA4 = .text:0x00009BA4; // type:function size:0x3A8 -fn_1_9F4C = .text:0x00009F4C; // type:function size:0x478 -fn_1_A3C4 = .text:0x0000A3C4; // type:function size:0xAC -fn_1_A470 = .text:0x0000A470; // type:function size:0x190 -fn_1_A600 = .text:0x0000A600; // type:function size:0x1CC -fn_1_A7CC = .text:0x0000A7CC; // type:function size:0x5C -fn_1_A828 = .text:0x0000A828; // type:function size:0x140 -fn_1_A968 = .text:0x0000A968; // type:function size:0x148 -fn_1_AAB0 = .text:0x0000AAB0; // type:function size:0xD8 -fn_1_AB88 = .text:0x0000AB88; // type:function size:0x48 -fn_1_ABD0 = .text:0x0000ABD0; // type:function size:0x188 -fn_1_AD58 = .text:0x0000AD58; // type:function size:0x2E98 -fn_1_DBF0 = .text:0x0000DBF0; // type:function size:0x4F8 -fn_1_E0E8 = .text:0x0000E0E8; // type:function size:0x90 -fn_1_E178 = .text:0x0000E178; // type:function size:0x30 -fn_1_E1A8 = .text:0x0000E1A8; // type:function size:0x114 -fn_1_E2BC = .text:0x0000E2BC; // type:function size:0x10C -fn_1_E3C8 = .text:0x0000E3C8; // type:function size:0xB0 -fn_1_E478 = .text:0x0000E478; // type:function size:0x18C -fn_1_E604 = .text:0x0000E604; // type:function size:0x314 -fn_1_E918 = .text:0x0000E918; // type:function size:0x138 -fn_1_EA50 = .text:0x0000EA50; // type:function size:0x11C -fn_1_EB6C = .text:0x0000EB6C; // type:function size:0x1E0 -fn_1_ED4C = .text:0x0000ED4C; // type:function size:0x3010 -fn_1_11D5C = .text:0x00011D5C; // type:function size:0x4D8 -fn_1_12234 = .text:0x00012234; // type:function size:0x30C -fn_1_12540 = .text:0x00012540; // type:function size:0x80 -fn_1_125C0 = .text:0x000125C0; // type:function size:0xC8 -fn_1_12688 = .text:0x00012688; // type:function size:0x294 -fn_1_1291C = .text:0x0001291C; // type:function size:0x100 -fn_1_12A1C = .text:0x00012A1C; // type:function size:0x164 -fn_1_12B80 = .text:0x00012B80; // type:function size:0x1F8 -fn_1_12D78 = .text:0x00012D78; // type:function size:0x4 -fn_1_12D7C = .text:0x00012D7C; // type:function size:0xE0 -fn_1_12E5C = .text:0x00012E5C; // type:function size:0x248 -fn_1_130A4 = .text:0x000130A4; // type:function size:0xD0 -fn_1_13174 = .text:0x00013174; // type:function size:0x3EC -fn_1_13560 = .text:0x00013560; // type:function size:0x1B4 -fn_1_13714 = .text:0x00013714; // type:function size:0x29C -fn_1_139B0 = .text:0x000139B0; // type:function size:0x19C -fn_1_13B4C = .text:0x00013B4C; // type:function size:0xC -fn_1_13B58 = .text:0x00013B58; // type:function size:0x38 -fn_1_13B90 = .text:0x00013B90; // type:function size:0x34 -fn_1_13BC4 = .text:0x00013BC4; // type:function size:0x364 -fn_1_13F28 = .text:0x00013F28; // type:function size:0x988 -fn_1_148B0 = .text:0x000148B0; // type:function size:0x110 -fn_1_149C0 = .text:0x000149C0; // type:function size:0xF8 -fn_1_14AB8 = .text:0x00014AB8; // type:function size:0x110 -fn_1_14BC8 = .text:0x00014BC8; // type:function size:0x60 -fn_1_14C28 = .text:0x00014C28; // type:function size:0xC0 -fn_1_14CE8 = .text:0x00014CE8; // type:function size:0x620 -fn_1_15308 = .text:0x00015308; // type:function size:0x840 -fn_1_15B48 = .text:0x00015B48; // type:function size:0x64 -fn_1_15BAC = .text:0x00015BAC; // type:function size:0x500 -fn_1_160AC = .text:0x000160AC; // type:function size:0x1D4 -fn_1_16280 = .text:0x00016280; // type:function size:0x94 -fn_1_16314 = .text:0x00016314; // type:function size:0x64 -fn_1_16378 = .text:0x00016378; // type:function size:0x598 -fn_1_16910 = .text:0x00016910; // type:function size:0x2B4 -fn_1_16BC4 = .text:0x00016BC4; // type:function size:0x130 -fn_1_16CF4 = .text:0x00016CF4; // type:function size:0x4D0 -fn_1_171C4 = .text:0x000171C4; // type:function size:0x19C -fn_1_17360 = .text:0x00017360; // type:function size:0x114 -fn_1_17474 = .text:0x00017474; // type:function size:0x4FC -fn_1_17970 = .text:0x00017970; // type:function size:0x24C -fn_1_17BBC = .text:0x00017BBC; // type:function size:0x868 -fn_1_18424 = .text:0x00018424; // type:function size:0x284 -fn_1_186A8 = .text:0x000186A8; // type:function size:0x888 -fn_1_18F30 = .text:0x00018F30; // type:function size:0x37C -fn_1_192AC = .text:0x000192AC; // type:function size:0xE4 -fn_1_19390 = .text:0x00019390; // type:function size:0xC0 -fn_1_19450 = .text:0x00019450; // type:function size:0x1FC -fn_1_1964C = .text:0x0001964C; // type:function size:0x14C -fn_1_19798 = .text:0x00019798; // type:function size:0x278 -fn_1_19A10 = .text:0x00019A10; // type:function size:0x208 -fn_1_19C18 = .text:0x00019C18; // type:function size:0xC8 -fn_1_19CE0 = .text:0x00019CE0; // type:function size:0x334 -fn_1_1A014 = .text:0x0001A014; // type:function size:0x4C -fn_1_1A060 = .text:0x0001A060; // type:function size:0x1BC -fn_1_1A21C = .text:0x0001A21C; // type:function size:0x1D4 -fn_1_1A3F0 = .text:0x0001A3F0; // type:function size:0x284 -_prolog = .text:0x0001A674; // type:function size:0x54 scope:global -_epilog = .text:0x0001A6C8; // type:function size:0x4C scope:global -fn_1_1A714 = .text:0x0001A714; // type:function size:0x22C -fn_1_1A940 = .text:0x0001A940; // type:function size:0x784 -fn_1_1B0C4 = .text:0x0001B0C4; // type:function size:0x94 -fn_1_1B158 = .text:0x0001B158; // type:function size:0x154 -fn_1_1B2AC = .text:0x0001B2AC; // type:function size:0x21C -fn_1_1B4C8 = .text:0x0001B4C8; // type:function size:0x48 -fn_1_1B510 = .text:0x0001B510; // type:function size:0x134 -fn_1_1B644 = .text:0x0001B644; // type:function size:0x1EC -fn_1_1B830 = .text:0x0001B830; // type:function size:0x830 -fn_1_1C060 = .text:0x0001C060; // type:function size:0x274 -fn_1_1C2D4 = .text:0x0001C2D4; // type:function size:0xC8 -fn_1_1C39C = .text:0x0001C39C; // type:function size:0x98 -fn_1_1C434 = .text:0x0001C434; // type:function size:0x2B0 -fn_1_1C6E4 = .text:0x0001C6E4; // type:function size:0x98 -fn_1_1C77C = .text:0x0001C77C; // type:function size:0x11C -fn_1_1C898 = .text:0x0001C898; // type:function size:0x18B8 -fn_1_1E150 = .text:0x0001E150; // type:function size:0x1F6C -fn_1_200BC = .text:0x000200BC; // type:function size:0xB4 -fn_1_20170 = .text:0x00020170; // type:function size:0x31C0 -fn_1_23330 = .text:0x00023330; // type:function size:0x440 -fn_1_23770 = .text:0x00023770; // type:function size:0x530 -fn_1_23CA0 = .text:0x00023CA0; // type:function size:0x980 -fn_1_24620 = .text:0x00024620; // type:function size:0x4A0C -fn_1_2902C = .text:0x0002902C; // type:function size:0x8C0 -fn_1_298EC = .text:0x000298EC; // type:function size:0xD0 -_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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x1 data:byte -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_FC = .rodata:0x000000FC; // 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:0x8 data:4byte -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x58 -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:4byte -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x58 -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:4byte -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 data:float -lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x8 data:4byte -lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 data:float -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:4byte -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 -lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 -lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 -lbl_1_data_80 = .data:0x00000080; // type:object size:0x1F data:string -lbl_1_data_9F = .data:0x0000009F; // type:object size:0xD -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x8 -lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4C -lbl_1_data_100 = .data:0x00000100; // type:object size:0x14 -lbl_1_data_114 = .data:0x00000114; // type:object size:0x3C -lbl_1_data_150 = .data:0x00000150; // type:object size:0x3C -lbl_1_data_18C = .data:0x0000018C; // type:object size:0x20 -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x20 -lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x10 -lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x28 -lbl_1_data_204 = .data:0x00000204; // type:object size:0x30 -lbl_1_data_234 = .data:0x00000234; // type:object size:0x20 -lbl_1_data_254 = .data:0x00000254; // type:object size:0x14 -lbl_1_data_268 = .data:0x00000268; // type:object size:0x14 -lbl_1_data_27C = .data:0x0000027C; // type:object size:0x14 -lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x12 data:string -lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x13 data:string -lbl_1_data_2C9 = .data:0x000002C9; // type:object size:0x14 data:string -lbl_1_data_2DD = .data:0x000002DD; // type:object size:0x1C data:string -lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0x12 data:string -lbl_1_data_30B = .data:0x0000030B; // type:object size:0x11 -jumptable_1_data_31C = .data:0x0000031C; // type:object size:0x60 scope:local -lbl_1_data_37C = .data:0x0000037C; // type:object size:0x12 data:string -lbl_1_data_38E = .data:0x0000038E; // type:object size:0x12 data:string -lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x13 data:string -lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x14 data:string -lbl_1_data_3C7 = .data:0x000003C7; // type:object size:0x14 data:string -lbl_1_data_3DB = .data:0x000003DB; // type:object size:0x13 data:string -lbl_1_data_3EE = .data:0x000003EE; // type:object size:0x1E -jumptable_1_data_40C = .data:0x0000040C; // type:object size:0x44 scope:local -lbl_1_data_450 = .data:0x00000450; // type:object size:0x14 -lbl_1_data_464 = .data:0x00000464; // type:object size:0xC data:4byte -lbl_1_data_470 = .data:0x00000470; // type:object size:0xC -lbl_1_data_47C = .data:0x0000047C; // type:object size:0xC data:4byte -lbl_1_data_488 = .data:0x00000488; // type:object size:0xC data:4byte -lbl_1_data_494 = .data:0x00000494; // type:object size:0xC data:4byte -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xC data:4byte -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0xC data:4byte -lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0xC data:4byte -lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0xC data:4byte -lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0xC data:4byte -lbl_1_data_4DC = .data:0x000004DC; // type:object size:0xC data:4byte -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0xC -lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0xC -lbl_1_data_500 = .data:0x00000500; // type:object size:0x4 -lbl_1_data_504 = .data:0x00000504; // type:object size:0xC -lbl_1_data_510 = .data:0x00000510; // type:object size:0xC -lbl_1_data_51C = .data:0x0000051C; // type:object size:0x30 -lbl_1_data_54C = .data:0x0000054C; // type:object size:0x10 data:string -lbl_1_data_55C = .data:0x0000055C; // type:object size:0x10 data:string -lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 data:string -lbl_1_data_57C = .data:0x0000057C; // type:object size:0x10 data:string -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x10 data:string -lbl_1_data_59C = .data:0x0000059C; // type:object size:0x10 data:string -lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x10 data:string -lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x10 data:string -lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x80 -lbl_1_data_64C = .data:0x0000064C; // type:object size:0x2E0 -lbl_1_data_92C = .data:0x0000092C; // type:object size:0x20 -lbl_1_data_94C = .data:0x0000094C; // type:object size:0xA0 -lbl_1_data_9EC = .data:0x000009EC; // type:object size:0x20 -lbl_1_data_A0C = .data:0x00000A0C; // type:object size:0x38 data:4byte -lbl_1_data_A44 = .data:0x00000A44; // type:object size:0x13 data:string -lbl_1_data_A57 = .data:0x00000A57; // type:object size:0x13 data:string -lbl_1_data_A6A = .data:0x00000A6A; // type:object size:0x16 -lbl_1_data_A80 = .data:0x00000A80; // type:object size:0x18C -lbl_1_data_C0C = .data:0x00000C0C; // type:object size:0x13 data:string -lbl_1_data_C1F = .data:0x00000C1F; // type:object size:0x13 data:string -lbl_1_data_C32 = .data:0x00000C32; // type:object size:0x13 data:string -lbl_1_data_C45 = .data:0x00000C45; // type:object size:0x13 data:string -lbl_1_data_C58 = .data:0x00000C58; // type:object size:0x1B8 -lbl_1_data_E10 = .data:0x00000E10; // type:object size:0x11 data:string -lbl_1_data_E21 = .data:0x00000E21; // type:object size:0x11 data:string -lbl_1_data_E32 = .data:0x00000E32; // type:object size:0x11 data:string -lbl_1_data_E43 = .data:0x00000E43; // type:object size:0x11 data:string -lbl_1_data_E54 = .data:0x00000E54; // type:object size:0x14 -lbl_1_data_E68 = .data:0x00000E68; // type:object size:0x14 -lbl_1_data_E7C = .data:0x00000E7C; // type:object size:0x84 -lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x5C -lbl_1_data_F5C = .data:0x00000F5C; // type:object size:0x10 -lbl_1_data_F6C = .data:0x00000F6C; // type:object size:0x18 -lbl_1_data_F84 = .data:0x00000F84; // type:object size:0x14 -lbl_1_data_F98 = .data:0x00000F98; // type:object size:0x14 -lbl_1_data_FAC = .data:0x00000FAC; // type:object size:0x18 -lbl_1_data_FC4 = .data:0x00000FC4; // type:object size:0x14 -lbl_1_data_FD8 = .data:0x00000FD8; // type:object size:0x14 -lbl_1_data_FEC = .data:0x00000FEC; // type:object size:0x14 -lbl_1_data_1000 = .data:0x00001000; // type:object size:0x14 -lbl_1_data_1014 = .data:0x00001014; // type:object size:0x28 -lbl_1_data_103C = .data:0x0000103C; // type:object size:0x28 -lbl_1_data_1064 = .data:0x00001064; // type:object size:0x28 -lbl_1_data_108C = .data:0x0000108C; // type:object size:0x28 -lbl_1_data_10B4 = .data:0x000010B4; // type:object size:0x28 -lbl_1_data_10DC = .data:0x000010DC; // type:object size:0x28 -lbl_1_data_1104 = .data:0x00001104; // type:object size:0x28 -lbl_1_data_112C = .data:0x0000112C; // type:object size:0x28 -lbl_1_data_1154 = .data:0x00001154; // type:object size:0x28 -lbl_1_data_117C = .data:0x0000117C; // type:object size:0x28 -lbl_1_data_11A4 = .data:0x000011A4; // type:object size:0x28 -lbl_1_data_11CC = .data:0x000011CC; // type:object size:0x28 -lbl_1_data_11F4 = .data:0x000011F4; // type:object size:0x10 -lbl_1_data_1204 = .data:0x00001204; // type:object size:0xC -lbl_1_data_1210 = .data:0x00001210; // type:object size:0xC -lbl_1_data_121C = .data:0x0000121C; // type:object size:0xC -lbl_1_data_1228 = .data:0x00001228; // type:object size:0xC -lbl_1_data_1234 = .data:0x00001234; // type:object size:0x20 -lbl_1_data_1254 = .data:0x00001254; // type:object size:0x13 data:string -lbl_1_data_1267 = .data:0x00001267; // type:object size:0x13 data:string -lbl_1_data_127A = .data:0x0000127A; // type:object size:0x13 data:string -lbl_1_data_128D = .data:0x0000128D; // type:object size:0x13 data:string -lbl_1_data_12A0 = .data:0x000012A0; // type:object size:0x10 -lbl_1_data_12B0 = .data:0x000012B0; // type:object size:0x13 data:string -lbl_1_data_12C3 = .data:0x000012C3; // type:object size:0x13 data:string -lbl_1_data_12D6 = .data:0x000012D6; // type:object size:0x13 data:string -lbl_1_data_12E9 = .data:0x000012E9; // type:object size:0x13 data:string -lbl_1_data_12FC = .data:0x000012FC; // type:object size:0x13 data:string -lbl_1_data_130F = .data:0x0000130F; // type:object size:0x13 data:string -lbl_1_data_1322 = .data:0x00001322; // type:object size:0x13 data:string -lbl_1_data_1335 = .data:0x00001335; // type:object size:0x13 data:string -lbl_1_data_1348 = .data:0x00001348; // type:object size:0x14 -lbl_1_data_135C = .data:0x0000135C; // type:object size:0x24 -lbl_1_data_1380 = .data:0x00001380; // type:object size:0x38 data:4byte -lbl_1_data_13B8 = .data:0x000013B8; // type:object size:0x38 data:4byte -lbl_1_data_13F0 = .data:0x000013F0; // type:object size:0x13 data:string -lbl_1_data_1403 = .data:0x00001403; // type:object size:0x13 data:string -lbl_1_data_1416 = .data:0x00001416; // type:object size:0x13 data:string -lbl_1_data_1429 = .data:0x00001429; // type:object size:0x13 data:string -lbl_1_data_143C = .data:0x0000143C; // type:object size:0x14 -lbl_1_data_1450 = .data:0x00001450; // type:object size:0xB4 -lbl_1_data_1504 = .data:0x00001504; // type:object size:0x50 -lbl_1_data_1554 = .data:0x00001554; // type:object size:0x13 data:string -lbl_1_data_1567 = .data:0x00001567; // type:object size:0x13 data:string -lbl_1_data_157A = .data:0x0000157A; // type:object size:0x13 data:string -lbl_1_data_158D = .data:0x0000158D; // type:object size:0x13 data:string -lbl_1_data_15A0 = .data:0x000015A0; // type:object size:0x13 data:string -lbl_1_data_15B3 = .data:0x000015B3; // type:object size:0x12 data:string -lbl_1_data_15C5 = .data:0x000015C5; // type:object size:0x25 data:string -lbl_1_data_15EA = .data:0x000015EA; // type:object size:0x22 data:string -lbl_1_data_160C = .data:0x0000160C; // type:object size:0x9 data:string -lbl_1_data_1615 = .data:0x00001615; // type:object size:0xA data:string -lbl_1_data_161F = .data:0x0000161F; // type:object size:0xE data:string -lbl_1_data_162D = .data:0x0000162D; // type:object size:0x6 data:string -lbl_1_data_1633 = .data:0x00001633; // type:object size:0x1D data:string -jumptable_1_data_1650 = .data:0x00001650; // type:object size:0x70 scope:local -lbl_1_data_16C0 = .data:0x000016C0; // type:object size:0x1C -jumptable_1_data_16DC = .data:0x000016DC; // type:object size:0xC4 scope:local -lbl_1_data_17A0 = .data:0x000017A0; // type:object size:0x24 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:2byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x18 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x3C data:float -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x30 -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0xC data:4byte -lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte -lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:float -lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0xC data:float -lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte -lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x8 -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x4 -lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 -lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0xC data:4byte -lbl_1_bss_F8 = .bss:0x000000F8; // type:object size:0x4 data:4byte -lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte -lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte -lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte -lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte -lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte -lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte -lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte -lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte -lbl_1_bss_11C = .bss:0x0000011C; // type:object size:0x4 data:4byte -lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte -lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:float -lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x8 data:float -lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x4 data:4byte -lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x4 data:4byte -lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x4 data:4byte -lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x4 data:4byte -lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x5C data:4byte -lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte -lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte -lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x4 data:float -lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte -lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x100 -lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x40 data:4byte -lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x4 data:float -lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x4 data:4byte -lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x4 data:4byte -lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0x2 data:2byte -lbl_1_bss_2FE = .bss:0x000002FE; // type:object size:0x2 data:2byte -lbl_1_bss_300 = .bss:0x00000300; // type:object size:0x4 data:4byte -lbl_1_bss_304 = .bss:0x00000304; // type:object size:0x4 data:4byte -lbl_1_bss_308 = .bss:0x00000308; // type:object size:0x4 data:4byte -lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0xC data:4byte -lbl_1_bss_318 = .bss:0x00000318; // type:object size:0xC data:4byte -lbl_1_bss_324 = .bss:0x00000324; // type:object size:0xC data:4byte -lbl_1_bss_330 = .bss:0x00000330; // type:object size:0xC data:4byte -lbl_1_bss_33C = .bss:0x0000033C; // type:object size:0x4 data:4byte -lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x18 data:4byte -lbl_1_bss_358 = .bss:0x00000358; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/m451Dll/splits.txt b/config/GMPJ01_00/rels/m451Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m451Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m451Dll/symbols.txt b/config/GMPJ01_00/rels/m451Dll/symbols.txt deleted file mode 100644 index 2bbf42af..00000000 --- a/config/GMPJ01_00/rels/m451Dll/symbols.txt +++ /dev/null @@ -1,217 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x71C -fn_1_7BC = .text:0x000007BC; // type:function size:0x9C -fn_1_858 = .text:0x00000858; // type:function size:0xC0 -fn_1_918 = .text:0x00000918; // type:function size:0x214 -fn_1_B2C = .text:0x00000B2C; // type:function size:0x1038 -fn_1_1B64 = .text:0x00001B64; // type:function size:0x598 -fn_1_20FC = .text:0x000020FC; // type:function size:0xB8 -fn_1_21B4 = .text:0x000021B4; // type:function size:0xC0 -fn_1_2274 = .text:0x00002274; // type:function size:0x6C -fn_1_22E0 = .text:0x000022E0; // type:function size:0x35C -fn_1_263C = .text:0x0000263C; // type:function size:0x3F8 -fn_1_2A34 = .text:0x00002A34; // type:function size:0x21C -fn_1_2C50 = .text:0x00002C50; // type:function size:0x2B8 -fn_1_2F08 = .text:0x00002F08; // type:function size:0xE4 -fn_1_2FEC = .text:0x00002FEC; // type:function size:0xC4 -fn_1_30B0 = .text:0x000030B0; // type:function size:0xA4 -fn_1_3154 = .text:0x00003154; // type:function size:0x670 -fn_1_37C4 = .text:0x000037C4; // type:function size:0xFA4 -fn_1_4768 = .text:0x00004768; // type:function size:0xFC -fn_1_4864 = .text:0x00004864; // type:function size:0x60 -fn_1_48C4 = .text:0x000048C4; // type:function size:0x8F4 -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // 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:0x8 data:double -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:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 -lbl_1_data_54 = .data:0x00000054; // type:object size:0xC -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC -lbl_1_data_78 = .data:0x00000078; // type:object size:0xC -lbl_1_data_84 = .data:0x00000084; // type:object size:0xB data:string -lbl_1_data_8F = .data:0x0000008F; // type:object size:0xB data:string -lbl_1_data_9A = .data:0x0000009A; // type:object size:0xB data:string -lbl_1_data_A5 = .data:0x000000A5; // type:object size:0xB data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0xB data:string -lbl_1_data_BB = .data:0x000000BB; // type:object size:0xB data:string -lbl_1_data_C6 = .data:0x000000C6; // type:object size:0xB data:string -lbl_1_data_D1 = .data:0x000000D1; // type:object size:0xB data:string -lbl_1_data_DC = .data:0x000000DC; // type:object size:0xB data:string -lbl_1_data_E7 = .data:0x000000E7; // type:object size:0xB data:string -lbl_1_data_F2 = .data:0x000000F2; // type:object size:0xB data:string -lbl_1_data_FD = .data:0x000000FD; // type:object size:0xB data:string -lbl_1_data_108 = .data:0x00000108; // type:object size:0xB data:string -lbl_1_data_113 = .data:0x00000113; // type:object size:0xB data:string -lbl_1_data_11E = .data:0x0000011E; // type:object size:0xB data:string -lbl_1_data_129 = .data:0x00000129; // type:object size:0xB data:string -lbl_1_data_134 = .data:0x00000134; // type:object size:0xB data:string -lbl_1_data_13F = .data:0x0000013F; // type:object size:0xB data:string -lbl_1_data_14A = .data:0x0000014A; // type:object size:0xB data:string -lbl_1_data_155 = .data:0x00000155; // type:object size:0xB data:string -lbl_1_data_160 = .data:0x00000160; // type:object size:0xB data:string -lbl_1_data_16B = .data:0x0000016B; // type:object size:0xB data:string -lbl_1_data_176 = .data:0x00000176; // type:object size:0xB data:string -lbl_1_data_181 = .data:0x00000181; // type:object size:0xB data:string -lbl_1_data_18C = .data:0x0000018C; // type:object size:0xB data:string -lbl_1_data_197 = .data:0x00000197; // type:object size:0xB data:string -lbl_1_data_1A2 = .data:0x000001A2; // type:object size:0xB data:string -lbl_1_data_1AD = .data:0x000001AD; // type:object size:0xB data:string -lbl_1_data_1B8 = .data:0x000001B8; // type:object size:0xB data:string -lbl_1_data_1C3 = .data:0x000001C3; // type:object size:0xB data:string -lbl_1_data_1CE = .data:0x000001CE; // type:object size:0xB data:string -lbl_1_data_1D9 = .data:0x000001D9; // type:object size:0xB data:string -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xB data:string -lbl_1_data_1EF = .data:0x000001EF; // type:object size:0xB data:string -lbl_1_data_1FA = .data:0x000001FA; // type:object size:0xB data:string -lbl_1_data_205 = .data:0x00000205; // type:object size:0xB data:string -lbl_1_data_210 = .data:0x00000210; // type:object size:0xB data:string -lbl_1_data_21B = .data:0x0000021B; // type:object size:0xB data:string -lbl_1_data_226 = .data:0x00000226; // type:object size:0xB data:string -lbl_1_data_231 = .data:0x00000231; // type:object size:0xB data:string -lbl_1_data_23C = .data:0x0000023C; // type:object size:0xB data:string -lbl_1_data_247 = .data:0x00000247; // type:object size:0xB data:string -lbl_1_data_252 = .data:0x00000252; // type:object size:0xB data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0xB data:string -lbl_1_data_268 = .data:0x00000268; // type:object size:0xB data:string -lbl_1_data_273 = .data:0x00000273; // type:object size:0xB data:string -lbl_1_data_27E = .data:0x0000027E; // type:object size:0xB data:string -lbl_1_data_289 = .data:0x00000289; // type:object size:0xB data:string -lbl_1_data_294 = .data:0x00000294; // type:object size:0xB data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0xB data:string -lbl_1_data_2AA = .data:0x000002AA; // type:object size:0xB data:string -lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0xB data:string -lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0xB data:string -lbl_1_data_2CB = .data:0x000002CB; // type:object size:0xB data:string -lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0xB data:string -lbl_1_data_2E1 = .data:0x000002E1; // type:object size:0xB data:string -lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xB data:string -lbl_1_data_2F7 = .data:0x000002F7; // type:object size:0xB data:string -lbl_1_data_302 = .data:0x00000302; // type:object size:0xB data:string -lbl_1_data_30D = .data:0x0000030D; // type:object size:0xB data:string -lbl_1_data_318 = .data:0x00000318; // type:object size:0xB data:string -lbl_1_data_323 = .data:0x00000323; // type:object size:0xB data:string -lbl_1_data_32E = .data:0x0000032E; // type:object size:0xB data:string -lbl_1_data_339 = .data:0x00000339; // type:object size:0xB data:string -lbl_1_data_344 = .data:0x00000344; // type:object size:0xB data:string -lbl_1_data_34F = .data:0x0000034F; // type:object size:0xB data:string -lbl_1_data_35A = .data:0x0000035A; // type:object size:0xB data:string -lbl_1_data_365 = .data:0x00000365; // type:object size:0xB data:string -lbl_1_data_370 = .data:0x00000370; // type:object size:0xB data:string -lbl_1_data_37B = .data:0x0000037B; // type:object size:0xB data:string -lbl_1_data_386 = .data:0x00000386; // type:object size:0xB data:string -lbl_1_data_391 = .data:0x00000391; // type:object size:0xB data:string -lbl_1_data_39C = .data:0x0000039C; // type:object size:0xB data:string -lbl_1_data_3A7 = .data:0x000003A7; // type:object size:0xB data:string -lbl_1_data_3B2 = .data:0x000003B2; // type:object size:0xB data:string -lbl_1_data_3BD = .data:0x000003BD; // type:object size:0xB data:string -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xB data:string -lbl_1_data_3D3 = .data:0x000003D3; // type:object size:0xB data:string -lbl_1_data_3DE = .data:0x000003DE; // type:object size:0xB data:string -lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0xB data:string -lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0xB data:string -lbl_1_data_3FF = .data:0x000003FF; // type:object size:0xB data:string -lbl_1_data_40A = .data:0x0000040A; // type:object size:0xB data:string -lbl_1_data_415 = .data:0x00000415; // type:object size:0xB data:string -lbl_1_data_420 = .data:0x00000420; // type:object size:0xB data:string -lbl_1_data_42B = .data:0x0000042B; // type:object size:0xB data:string -lbl_1_data_436 = .data:0x00000436; // type:object size:0xB data:string -lbl_1_data_441 = .data:0x00000441; // type:object size:0xB data:string -lbl_1_data_44C = .data:0x0000044C; // type:object size:0xB data:string -lbl_1_data_457 = .data:0x00000457; // type:object size:0xD -lbl_1_data_464 = .data:0x00000464; // type:object size:0x264 -lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0xC -lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x78 data:float -lbl_1_data_74C = .data:0x0000074C; // type:object size:0xC -lbl_1_data_758 = .data:0x00000758; // type:object size:0xC -lbl_1_data_764 = .data:0x00000764; // type:object size:0xC data:string -lbl_1_data_770 = .data:0x00000770; // type:object size:0xC data:string -lbl_1_data_77C = .data:0x0000077C; // type:object size:0x7 data:string -lbl_1_data_783 = .data:0x00000783; // type:object size:0x8 data:string -lbl_1_data_78B = .data:0x0000078B; // type:object size:0x8 data:string -lbl_1_data_793 = .data:0x00000793; // type:object size:0x8 data:string -lbl_1_data_79B = .data:0x0000079B; // type:object size:0xB data:string -lbl_1_data_7A6 = .data:0x000007A6; // type:object size:0xF data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x340 data:4byte -lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x810 data:float -lbl_1_bss_B58 = .bss:0x00000B58; // type:object size:0x4 data:4byte -lbl_1_bss_B5C = .bss:0x00000B5C; // type:object size:0x4 data:4byte -lbl_1_bss_B60 = .bss:0x00000B60; // type:object size:0x4 data:4byte -lbl_1_bss_B64 = .bss:0x00000B64; // type:object size:0xA0 data:4byte -lbl_1_bss_C04 = .bss:0x00000C04; // type:object size:0xA0 data:4byte -lbl_1_bss_CA4 = .bss:0x00000CA4; // type:object size:0x4 data:4byte -lbl_1_bss_CA8 = .bss:0x00000CA8; // type:object size:0x6 -lbl_1_bss_CAE = .bss:0x00000CAE; // type:object size:0x6 data:2byte -lbl_1_bss_CB4 = .bss:0x00000CB4; // type:object size:0x2 data:2byte diff --git a/config/GMPJ01_00/rels/m453Dll/splits.txt b/config/GMPJ01_00/rels/m453Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m453Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m453Dll/symbols.txt b/config/GMPJ01_00/rels/m453Dll/symbols.txt deleted file mode 100644 index fcb400ae..00000000 --- a/config/GMPJ01_00/rels/m453Dll/symbols.txt +++ /dev/null @@ -1,279 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x3A0 -fn_1_440 = .text:0x00000440; // type:function size:0x20 -fn_1_460 = .text:0x00000460; // type:function size:0x3E8 -fn_1_848 = .text:0x00000848; // type:function size:0x7B4 -fn_1_FFC = .text:0x00000FFC; // type:function size:0x60 -fn_1_105C = .text:0x0000105C; // type:function size:0x1EC -fn_1_1248 = .text:0x00001248; // type:function size:0x2B0 -fn_1_14F8 = .text:0x000014F8; // type:function size:0x104 -fn_1_15FC = .text:0x000015FC; // type:function size:0x274 -fn_1_1870 = .text:0x00001870; // type:function size:0xA0 -fn_1_1910 = .text:0x00001910; // type:function size:0x2B8 -fn_1_1BC8 = .text:0x00001BC8; // type:function size:0x28 -fn_1_1BF0 = .text:0x00001BF0; // type:function size:0x3B0 -fn_1_1FA0 = .text:0x00001FA0; // type:function size:0x14C -fn_1_20EC = .text:0x000020EC; // type:function size:0x2F4 -fn_1_23E0 = .text:0x000023E0; // type:function size:0xA44 -fn_1_2E24 = .text:0x00002E24; // type:function size:0x824 -fn_1_3648 = .text:0x00003648; // type:function size:0x94 -fn_1_36DC = .text:0x000036DC; // type:function size:0x2EC -fn_1_39C8 = .text:0x000039C8; // type:function size:0x1EC -fn_1_3BB4 = .text:0x00003BB4; // type:function size:0xE0 -fn_1_3C94 = .text:0x00003C94; // type:function size:0x208 -fn_1_3E9C = .text:0x00003E9C; // type:function size:0x9C -fn_1_3F38 = .text:0x00003F38; // type:function size:0x480 -fn_1_43B8 = .text:0x000043B8; // type:function size:0x54 -fn_1_440C = .text:0x0000440C; // type:function size:0x168 -fn_1_4574 = .text:0x00004574; // type:function size:0x120 -fn_1_4694 = .text:0x00004694; // type:function size:0x30C -fn_1_49A0 = .text:0x000049A0; // type:function size:0x78 -fn_1_4A18 = .text:0x00004A18; // type:function size:0x11C -fn_1_4B34 = .text:0x00004B34; // type:function size:0x78 -fn_1_4BAC = .text:0x00004BAC; // type:function size:0x2D8 -fn_1_4E84 = .text:0x00004E84; // type:function size:0x2B8 -fn_1_513C = .text:0x0000513C; // type:function size:0x154 -fn_1_5290 = .text:0x00005290; // type:function size:0x3E0 -fn_1_5670 = .text:0x00005670; // type:function size:0x214 -fn_1_5884 = .text:0x00005884; // type:function size:0x198 -fn_1_5A1C = .text:0x00005A1C; // type:function size:0xD8 -fn_1_5AF4 = .text:0x00005AF4; // type:function size:0xBC -fn_1_5BB0 = .text:0x00005BB0; // type:function size:0x33C -fn_1_5EEC = .text:0x00005EEC; // type:function size:0x4B0 -fn_1_639C = .text:0x0000639C; // type:function size:0x10 -fn_1_63AC = .text:0x000063AC; // type:function size:0x9C -fn_1_6448 = .text:0x00006448; // type:function size:0xA0 -fn_1_64E8 = .text:0x000064E8; // type:function size:0x260 -fn_1_6748 = .text:0x00006748; // type:function size:0x20 -fn_1_6768 = .text:0x00006768; // type:function size:0x84 -fn_1_67EC = .text:0x000067EC; // type:function size:0x4 -fn_1_67F0 = .text:0x000067F0; // type:function size:0x16C -fn_1_695C = .text:0x0000695C; // type:function size:0x318 -fn_1_6C74 = .text:0x00006C74; // type:function size:0x240 -fn_1_6EB4 = .text:0x00006EB4; // type:function size:0x110 -fn_1_6FC4 = .text:0x00006FC4; // type:function size:0x400 -fn_1_73C4 = .text:0x000073C4; // type:function size:0x5B4 -fn_1_7978 = .text:0x00007978; // type:function size:0xFC -fn_1_7A74 = .text:0x00007A74; // type:function size:0x88 -fn_1_7AFC = .text:0x00007AFC; // type:function size:0xB4 -fn_1_7BB0 = .text:0x00007BB0; // type:function size:0x4C -fn_1_7BFC = .text:0x00007BFC; // type:function size:0x10 -fn_1_7C0C = .text:0x00007C0C; // type:function size:0x20 -fn_1_7C2C = .text:0x00007C2C; // type:function size:0x10 -fn_1_7C3C = .text:0x00007C3C; // type:function size:0xA4 -fn_1_7CE0 = .text:0x00007CE0; // type:function size:0x274 -fn_1_7F54 = .text:0x00007F54; // type:function size:0x15C -fn_1_80B0 = .text:0x000080B0; // type:function size:0x180 -fn_1_8230 = .text:0x00008230; // type:function size:0x10 -fn_1_8240 = .text:0x00008240; // type:function size:0x10 -fn_1_8250 = .text:0x00008250; // type:function size:0x5C -fn_1_82AC = .text:0x000082AC; // type:function size:0x1A0 -fn_1_844C = .text:0x0000844C; // type:function size:0x200 -fn_1_864C = .text:0x0000864C; // type:function size:0x30 -fn_1_867C = .text:0x0000867C; // type:function size:0x8CC -fn_1_8F48 = .text:0x00008F48; // type:function size:0x290 -fn_1_91D8 = .text:0x000091D8; // type:function size:0x74 -fn_1_924C = .text:0x0000924C; // type:function size:0x50 -fn_1_929C = .text:0x0000929C; // type:function size:0x24 -fn_1_92C0 = .text:0x000092C0; // type:function size:0x30 -fn_1_92F0 = .text:0x000092F0; // type:function size:0x11C -fn_1_940C = .text:0x0000940C; // type:function size:0x78 -fn_1_9484 = .text:0x00009484; // type:function size:0x8C -fn_1_9510 = .text:0x00009510; // type:function size:0x164 -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x9 data:byte -lbl_1_rodata_8D = .rodata:0x0000008D; // type:object size:0xB data:byte -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -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_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte -lbl_1_data_4 = .data:0x00000004; // type:object size:0xC -lbl_1_data_10 = .data:0x00000010; // type:object size:0xC -lbl_1_data_1C = .data:0x0000001C; // type:object size:0x28 -lbl_1_data_44 = .data:0x00000044; // type:object size:0x24 -lbl_1_data_68 = .data:0x00000068; // type:object size:0x24 data:4byte -jumptable_1_data_8C = .data:0x0000008C; // type:object size:0x1C scope:local -jumptable_1_data_A8 = .data:0x000000A8; // type:object size:0x1C scope:local -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x20 -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x30 -lbl_1_data_114 = .data:0x00000114; // type:object size:0x20 -lbl_1_data_134 = .data:0x00000134; // type:object size:0x20 -lbl_1_data_154 = .data:0x00000154; // type:object size:0x4 data:4byte -lbl_1_data_158 = .data:0x00000158; // type:object size:0xC0 -lbl_1_data_218 = .data:0x00000218; // type:object size:0xC0 -lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x78 -lbl_1_data_350 = .data:0x00000350; // type:object size:0x78 -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0xC0 -lbl_1_data_488 = .data:0x00000488; // type:object size:0xC0 -lbl_1_data_548 = .data:0x00000548; // type:object size:0x78 -lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x78 -lbl_1_data_638 = .data:0x00000638; // type:object size:0x108 -lbl_1_data_740 = .data:0x00000740; // type:object size:0x108 -lbl_1_data_848 = .data:0x00000848; // type:object size:0x108 -lbl_1_data_950 = .data:0x00000950; // type:object size:0x108 -lbl_1_data_A58 = .data:0x00000A58; // type:object size:0x30 -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x48 -lbl_1_data_AD0 = .data:0x00000AD0; // type:object size:0xC data:4byte -lbl_1_data_ADC = .data:0x00000ADC; // type:object size:0xC data:4byte -lbl_1_data_AE8 = .data:0x00000AE8; // type:object size:0x14 data:4byte -lbl_1_data_AFC = .data:0x00000AFC; // type:object size:0x18 -lbl_1_data_B14 = .data:0x00000B14; // type:object size:0x18 -lbl_1_data_B2C = .data:0x00000B2C; // type:object size:0x48 -lbl_1_data_B74 = .data:0x00000B74; // type:object size:0x30 -lbl_1_data_BA4 = .data:0x00000BA4; // type:object size:0x1C -lbl_1_data_BC0 = .data:0x00000BC0; // type:object size:0xC -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte -lbl_1_bss_2 = .bss:0x00000002; // type:object size:0x6 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte -lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x14 data:2byte -lbl_1_bss_32 = .bss:0x00000032; // type:object size:0x2 data:2byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte -lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x2 data:2byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x2 data:2byte -lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x2 data:2byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x8 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x18 -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:float -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte -lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x14 -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte -lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m455Dll/splits.txt b/config/GMPJ01_00/rels/m455Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m455Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m455Dll/symbols.txt b/config/GMPJ01_00/rels/m455Dll/symbols.txt deleted file mode 100644 index cd750911..00000000 --- a/config/GMPJ01_00/rels/m455Dll/symbols.txt +++ /dev/null @@ -1,290 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x270 -fn_1_310 = .text:0x00000310; // type:function size:0x10 -fn_1_320 = .text:0x00000320; // type:function size:0x10 -fn_1_330 = .text:0x00000330; // type:function size:0x148 -fn_1_478 = .text:0x00000478; // type:function size:0x6C0 -fn_1_B38 = .text:0x00000B38; // type:function size:0x5C -fn_1_B94 = .text:0x00000B94; // type:function size:0x94 -fn_1_C28 = .text:0x00000C28; // type:function size:0x68 -fn_1_C90 = .text:0x00000C90; // type:function size:0x84 -fn_1_D14 = .text:0x00000D14; // type:function size:0x6EC -fn_1_1400 = .text:0x00001400; // type:function size:0x44 -fn_1_1444 = .text:0x00001444; // type:function size:0xBCC -fn_1_2010 = .text:0x00002010; // type:function size:0x50 -fn_1_2060 = .text:0x00002060; // type:function size:0x330 -fn_1_2390 = .text:0x00002390; // type:function size:0x104 -fn_1_2494 = .text:0x00002494; // type:function size:0x5C -fn_1_24F0 = .text:0x000024F0; // type:function size:0x208 -fn_1_26F8 = .text:0x000026F8; // type:function size:0xA8 -fn_1_27A0 = .text:0x000027A0; // type:function size:0x2F0 -fn_1_2A90 = .text:0x00002A90; // type:function size:0x64 -fn_1_2AF4 = .text:0x00002AF4; // type:function size:0x250 -fn_1_2D44 = .text:0x00002D44; // type:function size:0x4D0 -fn_1_3214 = .text:0x00003214; // type:function size:0xB0 -fn_1_32C4 = .text:0x000032C4; // type:function size:0x148 -fn_1_340C = .text:0x0000340C; // type:function size:0x70 -fn_1_347C = .text:0x0000347C; // type:function size:0x960 -fn_1_3DDC = .text:0x00003DDC; // type:function size:0x328 -fn_1_4104 = .text:0x00004104; // type:function size:0x7C -fn_1_4180 = .text:0x00004180; // type:function size:0x82C -fn_1_49AC = .text:0x000049AC; // type:function size:0x68 -fn_1_4A14 = .text:0x00004A14; // type:function size:0x108 -fn_1_4B1C = .text:0x00004B1C; // type:function size:0x348 -fn_1_4E64 = .text:0x00004E64; // type:function size:0xB3C -fn_1_59A0 = .text:0x000059A0; // type:function size:0x6E8 -fn_1_6088 = .text:0x00006088; // type:function size:0xBC -fn_1_6144 = .text:0x00006144; // type:function size:0x450 -fn_1_6594 = .text:0x00006594; // type:function size:0x104 -fn_1_6698 = .text:0x00006698; // type:function size:0x1E4 -fn_1_687C = .text:0x0000687C; // type:function size:0x4C -fn_1_68C8 = .text:0x000068C8; // type:function size:0x4C -fn_1_6914 = .text:0x00006914; // type:function size:0x158 -fn_1_6A6C = .text:0x00006A6C; // type:function size:0x1F4 -fn_1_6C60 = .text:0x00006C60; // type:function size:0x50 -fn_1_6CB0 = .text:0x00006CB0; // type:function size:0x5D0 -fn_1_7280 = .text:0x00007280; // type:function size:0xE8 -fn_1_7368 = .text:0x00007368; // type:function size:0xC8 -fn_1_7430 = .text:0x00007430; // type:function size:0x4 -fn_1_7434 = .text:0x00007434; // type:function size:0x18C -fn_1_75C0 = .text:0x000075C0; // type:function size:0xF0 -fn_1_76B0 = .text:0x000076B0; // type:function size:0x2C4 -fn_1_7974 = .text:0x00007974; // type:function size:0x54 -fn_1_79C8 = .text:0x000079C8; // type:function size:0x280 -fn_1_7C48 = .text:0x00007C48; // type:function size:0x408 -fn_1_8050 = .text:0x00008050; // type:function size:0x424 -fn_1_8474 = .text:0x00008474; // type:function size:0x4 -fn_1_8478 = .text:0x00008478; // type:function size:0x100 -fn_1_8578 = .text:0x00008578; // type:function size:0x104 -fn_1_867C = .text:0x0000867C; // type:function size:0x2A0 -fn_1_891C = .text:0x0000891C; // type:function size:0x474 -fn_1_8D90 = .text:0x00008D90; // type:function size:0x11C -fn_1_8EAC = .text:0x00008EAC; // type:function size:0x2BC -fn_1_9168 = .text:0x00009168; // type:function size:0x50 -fn_1_91B8 = .text:0x000091B8; // type:function size:0xB44 -fn_1_9CFC = .text:0x00009CFC; // type:function size:0x104 -fn_1_9E00 = .text:0x00009E00; // type:function size:0x118 -fn_1_9F18 = .text:0x00009F18; // type:function size:0x250 -_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // 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:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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:0x8 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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -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:0x4 data:float -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_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float -lbl_1_data_38 = .data:0x00000038; // type:object size:0xC data:float -lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float -lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 -lbl_1_data_54 = .data:0x00000054; // type:object size:0xC -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 -lbl_1_data_90 = .data:0x00000090; // type:object size:0x2 data:2byte -lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte -lbl_1_data_98 = .data:0x00000098; // type:object size:0x4 data:4byte -jumptable_1_data_9C = .data:0x0000009C; // type:object size:0x28 scope:local -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x1C data:string -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x28 -lbl_1_data_108 = .data:0x00000108; // type:object size:0x30 -lbl_1_data_138 = .data:0x00000138; // type:object size:0x1C -lbl_1_data_154 = .data:0x00000154; // type:object size:0x10 -lbl_1_data_164 = .data:0x00000164; // type:object size:0xC -lbl_1_data_170 = .data:0x00000170; // type:object size:0x1 data:byte -lbl_1_data_174 = .data:0x00000174; // type:object size:0x5 data:string -lbl_1_data_179 = .data:0x00000179; // type:object size:0xB data:string -lbl_1_data_184 = .data:0x00000184; // type:object size:0x8 data:float -lbl_1_data_18C = .data:0x0000018C; // type:object size:0x4C -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x30 -lbl_1_data_208 = .data:0x00000208; // type:object size:0x1 data:byte -lbl_1_data_20C = .data:0x0000020C; // type:object size:0x50 -lbl_1_data_25C = .data:0x0000025C; // type:object size:0x7 data:string -lbl_1_data_263 = .data:0x00000263; // type:object size:0x7 data:string -lbl_1_data_26A = .data:0x0000026A; // type:object size:0x1 data:byte -lbl_1_data_26E = .data:0x0000026E; // type:object size:0x1 data:byte -lbl_1_data_272 = .data:0x00000272; // type:object size:0x6 data:byte -lbl_1_data_278 = .data:0x00000278; // type:object size:0x30 -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x138 -lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x68 -lbl_1_data_448 = .data:0x00000448; // type:object size:0xD0 -lbl_1_data_518 = .data:0x00000518; // type:object size:0xD0 -lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0x18 -lbl_1_data_600 = .data:0x00000600; // type:object size:0x1 data:byte -lbl_1_data_604 = .data:0x00000604; // type:object size:0x6C -lbl_1_data_670 = .data:0x00000670; // type:object size:0x24 -lbl_1_data_694 = .data:0x00000694; // type:object size:0x8 data:byte -lbl_1_data_69C = .data:0x0000069C; // type:object size:0x1 data:byte -lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x10 -lbl_1_data_6B0 = .data:0x000006B0; // type:object size:0x10 -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:2byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte -lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x2 data:2byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x8 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m460Dll/splits.txt b/config/GMPJ01_00/rels/m460Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m460Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m460Dll/symbols.txt b/config/GMPJ01_00/rels/m460Dll/symbols.txt deleted file mode 100644 index 9864f9d8..00000000 --- a/config/GMPJ01_00/rels/m460Dll/symbols.txt +++ /dev/null @@ -1,301 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x428 -fn_1_4C8 = .text:0x000004C8; // type:function size:0x128 -fn_1_5F0 = .text:0x000005F0; // type:function size:0x20C -fn_1_7FC = .text:0x000007FC; // type:function size:0x14C -fn_1_948 = .text:0x00000948; // type:function size:0x434 -fn_1_D7C = .text:0x00000D7C; // type:function size:0x470 -fn_1_11EC = .text:0x000011EC; // type:function size:0x35C -fn_1_1548 = .text:0x00001548; // type:function size:0x434 -fn_1_197C = .text:0x0000197C; // type:function size:0x6A0 -fn_1_201C = .text:0x0000201C; // type:function size:0x4D8 -fn_1_24F4 = .text:0x000024F4; // type:function size:0x70 -fn_1_2564 = .text:0x00002564; // type:function size:0x800 -fn_1_2D64 = .text:0x00002D64; // type:function size:0xC -fn_1_2D70 = .text:0x00002D70; // type:function size:0x55C -fn_1_32CC = .text:0x000032CC; // type:function size:0xB0 -fn_1_337C = .text:0x0000337C; // type:function size:0x274 -fn_1_35F0 = .text:0x000035F0; // type:function size:0x28 -fn_1_3618 = .text:0x00003618; // type:function size:0x5A8 -fn_1_3BC0 = .text:0x00003BC0; // type:function size:0x2A8 -fn_1_3E68 = .text:0x00003E68; // type:function size:0x14 -fn_1_3E7C = .text:0x00003E7C; // type:function size:0x14 -fn_1_3E90 = .text:0x00003E90; // type:function size:0x9C -fn_1_3F2C = .text:0x00003F2C; // type:function size:0x9C -fn_1_3FC8 = .text:0x00003FC8; // type:function size:0x68 -fn_1_4030 = .text:0x00004030; // type:function size:0x6C -fn_1_409C = .text:0x0000409C; // type:function size:0x98 -fn_1_4134 = .text:0x00004134; // type:function size:0x18 -fn_1_414C = .text:0x0000414C; // type:function size:0x18 -fn_1_4164 = .text:0x00004164; // type:function size:0x18 -fn_1_417C = .text:0x0000417C; // type:function size:0x18 -fn_1_4194 = .text:0x00004194; // type:function size:0x8 -fn_1_419C = .text:0x0000419C; // type:function size:0x18 -fn_1_41B4 = .text:0x000041B4; // type:function size:0x40 -fn_1_41F4 = .text:0x000041F4; // type:function size:0x30 -fn_1_4224 = .text:0x00004224; // type:function size:0x30 -fn_1_4254 = .text:0x00004254; // type:function size:0x30 -fn_1_4284 = .text:0x00004284; // type:function size:0x38 -fn_1_42BC = .text:0x000042BC; // type:function size:0x34 -fn_1_42F0 = .text:0x000042F0; // type:function size:0x18 -fn_1_4308 = .text:0x00004308; // type:function size:0x1C -fn_1_4324 = .text:0x00004324; // type:function size:0x18 -fn_1_433C = .text:0x0000433C; // type:function size:0x1C -fn_1_4358 = .text:0x00004358; // type:function size:0x18 -fn_1_4370 = .text:0x00004370; // type:function size:0x18 -fn_1_4388 = .text:0x00004388; // type:function size:0x208 -fn_1_4590 = .text:0x00004590; // type:function size:0x240 -fn_1_47D0 = .text:0x000047D0; // type:function size:0x11C -fn_1_48EC = .text:0x000048EC; // type:function size:0xB4 -fn_1_49A0 = .text:0x000049A0; // type:function size:0x244 -fn_1_4BE4 = .text:0x00004BE4; // type:function size:0x24 -fn_1_4C08 = .text:0x00004C08; // type:function size:0x364 -fn_1_4F6C = .text:0x00004F6C; // type:function size:0x1FC -fn_1_5168 = .text:0x00005168; // type:function size:0x484 -fn_1_55EC = .text:0x000055EC; // type:function size:0x1EC -fn_1_57D8 = .text:0x000057D8; // type:function size:0xF0 -fn_1_58C8 = .text:0x000058C8; // type:function size:0x14C -fn_1_5A14 = .text:0x00005A14; // type:function size:0x274 -fn_1_5C88 = .text:0x00005C88; // type:function size:0x58 -fn_1_5CE0 = .text:0x00005CE0; // type:function size:0x18C -fn_1_5E6C = .text:0x00005E6C; // type:function size:0x74 -fn_1_5EE0 = .text:0x00005EE0; // type:function size:0x1D0 -fn_1_60B0 = .text:0x000060B0; // type:function size:0x144 -fn_1_61F4 = .text:0x000061F4; // type:function size:0x5C0 -fn_1_67B4 = .text:0x000067B4; // type:function size:0x60 -fn_1_6814 = .text:0x00006814; // type:function size:0x4 -fn_1_6818 = .text:0x00006818; // type:function size:0x3E8 -fn_1_6C00 = .text:0x00006C00; // type:function size:0x7F8 -fn_1_73F8 = .text:0x000073F8; // type:function size:0x2CC -fn_1_76C4 = .text:0x000076C4; // type:function size:0x60 -fn_1_7724 = .text:0x00007724; // type:function size:0x6C -fn_1_7790 = .text:0x00007790; // type:function size:0x404 -fn_1_7B94 = .text:0x00007B94; // type:function size:0x214 -fn_1_7DA8 = .text:0x00007DA8; // type:function size:0xDF8 -fn_1_8BA0 = .text:0x00008BA0; // type:function size:0xD8 -fn_1_8C78 = .text:0x00008C78; // type:function size:0x34 -fn_1_8CAC = .text:0x00008CAC; // type:function size:0x28C -fn_1_8F38 = .text:0x00008F38; // type:function size:0x74 -fn_1_8FAC = .text:0x00008FAC; // type:function size:0x50 -fn_1_8FFC = .text:0x00008FFC; // type:function size:0x24 -fn_1_9020 = .text:0x00009020; // type:function size:0x30 -fn_1_9050 = .text:0x00009050; // type:function size:0x11C -fn_1_916C = .text:0x0000916C; // type:function size:0x78 -fn_1_91E4 = .text:0x000091E4; // type:function size:0x8C -fn_1_9270 = .text:0x00009270; // type:function size:0x164 -_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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -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:4byte -lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x50 -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x14 data:4byte -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x10 data:4byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x30 data:4byte -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:4byte -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x18 data:4byte -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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x18 data:4byte -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:4byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x1 data:byte -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x1 data:byte -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0xC data:4byte -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // 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:0xC data:float -lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x24 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 -lbl_1_data_94 = .data:0x00000094; // type:object size:0xC -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC -lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC -lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x1 data:byte -lbl_1_data_BC = .data:0x000000BC; // type:object size:0x1A data:string -lbl_1_data_D6 = .data:0x000000D6; // type:object size:0x1A -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x20 -lbl_1_data_110 = .data:0x00000110; // type:object size:0xA0 -jumptable_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 scope:local -lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x14 -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x100 -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x40 -lbl_1_data_328 = .data:0x00000328; // type:object size:0xC -lbl_1_data_334 = .data:0x00000334; // type:object size:0xC -lbl_1_data_340 = .data:0x00000340; // type:object size:0xC -lbl_1_data_34C = .data:0x0000034C; // type:object size:0x8 -lbl_1_data_354 = .data:0x00000354; // type:object size:0x8 -lbl_1_data_35C = .data:0x0000035C; // type:object size:0x7 data:string -lbl_1_data_363 = .data:0x00000363; // type:object size:0x9 -lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0x8 data:byte -lbl_1_data_380 = .data:0x00000380; // type:object size:0xC -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x2 data:2byte -lbl_1_bss_1A = .bss:0x0000001A; // type:object size:0x6 data:2byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x8 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/m461Dll/splits.txt b/config/GMPJ01_00/rels/m461Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m461Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m461Dll/symbols.txt b/config/GMPJ01_00/rels/m461Dll/symbols.txt deleted file mode 100644 index 02cf6c76..00000000 --- a/config/GMPJ01_00/rels/m461Dll/symbols.txt +++ /dev/null @@ -1,224 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x24 -fn_1_24 = .text:0x00000024; // type:function size:0x88 -fn_1_AC = .text:0x000000AC; // type:function size:0xA4 -fn_1_150 = .text:0x00000150; // type:function size:0x24 -fn_1_174 = .text:0x00000174; // type:function size:0x164 -fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C -fn_1_414 = .text:0x00000414; // type:function size:0x58 -fn_1_46C = .text:0x0000046C; // type:function size:0x114 -fn_1_580 = .text:0x00000580; // type:function size:0x218 -fn_1_798 = .text:0x00000798; // type:function size:0x254 -fn_1_9EC = .text:0x000009EC; // type:function size:0x54 -fn_1_A40 = .text:0x00000A40; // type:function size:0x10C -fn_1_B4C = .text:0x00000B4C; // type:function size:0x6A8 -fn_1_11F4 = .text:0x000011F4; // type:function size:0x15C -fn_1_1350 = .text:0x00001350; // type:function size:0x8C -fn_1_13DC = .text:0x000013DC; // type:function size:0x334 -fn_1_1710 = .text:0x00001710; // type:function size:0x350 -fn_1_1A60 = .text:0x00001A60; // type:function size:0x2B8 -fn_1_1D18 = .text:0x00001D18; // type:function size:0x58 -fn_1_1D70 = .text:0x00001D70; // type:function size:0xB0 -fn_1_1E20 = .text:0x00001E20; // type:function size:0x104 -fn_1_1F24 = .text:0x00001F24; // type:function size:0x34 -fn_1_1F58 = .text:0x00001F58; // type:function size:0x6C -fn_1_1FC4 = .text:0x00001FC4; // type:function size:0x3F0 -fn_1_23B4 = .text:0x000023B4; // type:function size:0x64 -fn_1_2418 = .text:0x00002418; // type:function size:0xE0 -fn_1_24F8 = .text:0x000024F8; // type:function size:0x32C -fn_1_2824 = .text:0x00002824; // type:function size:0x3AC -fn_1_2BD0 = .text:0x00002BD0; // type:function size:0x30 -fn_1_2C00 = .text:0x00002C00; // type:function size:0x1C -fn_1_2C1C = .text:0x00002C1C; // type:function size:0x18C -fn_1_2DA8 = .text:0x00002DA8; // type:function size:0x8 -fn_1_2DB0 = .text:0x00002DB0; // type:function size:0x8 -fn_1_2DB8 = .text:0x00002DB8; // type:function size:0x8 -fn_1_2DC0 = .text:0x00002DC0; // type:function size:0x8 -fn_1_2DC8 = .text:0x00002DC8; // type:function size:0xC -fn_1_2DD4 = .text:0x00002DD4; // type:function size:0x60 -fn_1_2E34 = .text:0x00002E34; // type:function size:0xB90 -fn_1_39C4 = .text:0x000039C4; // type:function size:0x2B0 -fn_1_3C74 = .text:0x00003C74; // type:function size:0xD8 -fn_1_3D4C = .text:0x00003D4C; // type:function size:0x114 -fn_1_3E60 = .text:0x00003E60; // type:function size:0xB8 -fn_1_3F18 = .text:0x00003F18; // type:function size:0xA0 -fn_1_3FB8 = .text:0x00003FB8; // type:function size:0x9C -fn_1_4054 = .text:0x00004054; // type:function size:0xDC8 -fn_1_4E1C = .text:0x00004E1C; // type:function size:0x250 -fn_1_506C = .text:0x0000506C; // type:function size:0x10 -fn_1_507C = .text:0x0000507C; // type:function size:0x10 -_prolog = .text:0x0000508C; // type:function size:0x54 scope:global -_epilog = .text:0x000050E0; // type:function size:0x4C scope:global -fn_1_512C = .text:0x0000512C; // type:function size:0x30C -fn_1_5438 = .text:0x00005438; // type:function size:0xF0 -fn_1_5528 = .text:0x00005528; // type:function size:0x36C -fn_1_5894 = .text:0x00005894; // type:function size:0x1E8 -fn_1_5A7C = .text:0x00005A7C; // type:function size:0x178 -fn_1_5BF4 = .text:0x00005BF4; // type:function size:0xE0C -fn_1_6A00 = .text:0x00006A00; // type:function size:0x928 -fn_1_7328 = .text:0x00007328; // type:function size:0x288 -fn_1_75B0 = .text:0x000075B0; // type:function size:0x11C -fn_1_76CC = .text:0x000076CC; // type:function size:0x40C -fn_1_7AD8 = .text:0x00007AD8; // type:function size:0x1230 -fn_1_8D08 = .text:0x00008D08; // type:function size:0x45C -fn_1_9164 = .text:0x00009164; // type:function size:0x408 -fn_1_956C = .text:0x0000956C; // type:function size:0x1B8 -fn_1_9724 = .text:0x00009724; // type:function size:0x130 -fn_1_9854 = .text:0x00009854; // type:function size:0x458 -fn_1_9CAC = .text:0x00009CAC; // type:function size:0x248 -fn_1_9EF4 = .text:0x00009EF4; // type:function size:0xEE8 -fn_1_ADDC = .text:0x0000ADDC; // type:function size:0x458 -fn_1_B234 = .text:0x0000B234; // type:function size:0x7F8 -fn_1_BA2C = .text:0x0000BA2C; // type:function size:0xF44 -fn_1_C970 = .text:0x0000C970; // type:function size:0x240 -fn_1_CBB0 = .text:0x0000CBB0; // type:function size:0xB5C -fn_1_D70C = .text:0x0000D70C; // type:function size:0xD0 -_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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0x20 -lbl_1_data_30 = .data:0x00000030; // type:object size:0x28 -lbl_1_data_58 = .data:0x00000058; // type:object size:0x28 -lbl_1_data_80 = .data:0x00000080; // type:object size:0x20 -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC data:4byte -lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC -lbl_1_data_B8 = .data:0x000000B8; // type:object size:0xC data:4byte -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0xC data:4byte -lbl_1_data_D0 = .data:0x000000D0; // type:object size:0xC -lbl_1_data_DC = .data:0x000000DC; // type:object size:0xC data:4byte -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0xC -lbl_1_data_F4 = .data:0x000000F4; // type:object size:0xC -lbl_1_data_100 = .data:0x00000100; // type:object size:0x4 -lbl_1_data_104 = .data:0x00000104; // type:object size:0xC -lbl_1_data_110 = .data:0x00000110; // type:object size:0xC -lbl_1_data_11C = .data:0x0000011C; // type:object size:0xC -lbl_1_data_128 = .data:0x00000128; // type:object size:0xA0 -lbl_1_data_1C8 = .data:0x000001C8; // type:object size:0xC -lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x10 -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0xC -lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x50 data:float -lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 -lbl_1_data_264 = .data:0x00000264; // type:object size:0xC data:4byte -lbl_1_data_270 = .data:0x00000270; // type:object size:0x80 -lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x30 -lbl_1_data_320 = .data:0x00000320; // type:object size:0x23 data:string -lbl_1_data_343 = .data:0x00000343; // type:object size:0x9 data:string -lbl_1_data_34C = .data:0x0000034C; // type:object size:0x6 data:string -lbl_1_data_352 = .data:0x00000352; // type:object size:0x1D data:string -lbl_1_data_36F = .data:0x0000036F; // type:object size:0x1D data:string -lbl_1_data_38C = .data:0x0000038C; // type:object size:0x1C -jumptable_1_data_3A8 = .data:0x000003A8; // type:object size:0x20 scope:local -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x24 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:float -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x10 -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x10 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x50 -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:float -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte -lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x100 -lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x40 data:4byte -lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x4 data:float -lbl_1_bss_1F0 = .bss:0x000001F0; // type:object size:0x4 data:4byte -lbl_1_bss_1F4 = .bss:0x000001F4; // type:object size:0x4 data:4byte -lbl_1_bss_1F8 = .bss:0x000001F8; // type:object size:0x2 data:2byte -lbl_1_bss_1FA = .bss:0x000001FA; // type:object size:0x2 data:2byte -lbl_1_bss_1FC = .bss:0x000001FC; // type:object size:0x4 data:4byte -lbl_1_bss_200 = .bss:0x00000200; // type:object size:0x4 data:4byte -lbl_1_bss_204 = .bss:0x00000204; // type:object size:0x4 data:4byte -lbl_1_bss_208 = .bss:0x00000208; // type:object size:0xC data:4byte -lbl_1_bss_214 = .bss:0x00000214; // type:object size:0xC data:4byte -lbl_1_bss_220 = .bss:0x00000220; // type:object size:0xC data:4byte -lbl_1_bss_22C = .bss:0x0000022C; // type:object size:0xC data:4byte -lbl_1_bss_238 = .bss:0x00000238; // type:object size:0x4 data:4byte -lbl_1_bss_23C = .bss:0x0000023C; // type:object size:0x18 data:4byte -lbl_1_bss_254 = .bss:0x00000254; // type:object size:0xC data:4byte diff --git a/config/GMPJ01_00/rels/mgmodedll/splits.txt b/config/GMPJ01_00/rels/mgmodedll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/mgmodedll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/mgmodedll/symbols.txt b/config/GMPJ01_00/rels/mgmodedll/symbols.txt deleted file mode 100644 index 506d2aa6..00000000 --- a/config/GMPJ01_00/rels/mgmodedll/symbols.txt +++ /dev/null @@ -1,583 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x3C4 -fn_1_464 = .text:0x00000464; // type:function size:0x294 -fn_1_6F8 = .text:0x000006F8; // type:function size:0x6F8 -fn_1_DF0 = .text:0x00000DF0; // type:function size:0xD1C -fn_1_1B0C = .text:0x00001B0C; // type:function size:0x6B8 -fn_1_21C4 = .text:0x000021C4; // type:function size:0x77C -fn_1_2940 = .text:0x00002940; // type:function size:0x810 -fn_1_3150 = .text:0x00003150; // type:function size:0x788 -fn_1_38D8 = .text:0x000038D8; // type:function size:0x738 -fn_1_4010 = .text:0x00004010; // type:function size:0x86C -fn_1_487C = .text:0x0000487C; // type:function size:0x260 -fn_1_4ADC = .text:0x00004ADC; // type:function size:0x800 -fn_1_52DC = .text:0x000052DC; // type:function size:0x218 -fn_1_54F4 = .text:0x000054F4; // type:function size:0xCC -fn_1_55C0 = .text:0x000055C0; // type:function size:0x3B4 -fn_1_5974 = .text:0x00005974; // type:function size:0xC78 -fn_1_65EC = .text:0x000065EC; // type:function size:0xC4 -fn_1_66B0 = .text:0x000066B0; // type:function size:0x2C4 -fn_1_6974 = .text:0x00006974; // type:function size:0x90 -fn_1_6A04 = .text:0x00006A04; // type:function size:0xEC -fn_1_6AF0 = .text:0x00006AF0; // type:function size:0x128 -fn_1_6C18 = .text:0x00006C18; // type:function size:0x110 -fn_1_6D28 = .text:0x00006D28; // type:function size:0x311C -fn_1_9E44 = .text:0x00009E44; // type:function size:0x120 -fn_1_9F64 = .text:0x00009F64; // type:function size:0x400 -fn_1_A364 = .text:0x0000A364; // type:function size:0x2C0 -fn_1_A624 = .text:0x0000A624; // type:function size:0x84 -fn_1_A6A8 = .text:0x0000A6A8; // type:function size:0x604 -fn_1_ACAC = .text:0x0000ACAC; // type:function size:0xF4 -fn_1_ADA0 = .text:0x0000ADA0; // type:function size:0x80 -fn_1_AE20 = .text:0x0000AE20; // type:function size:0xB0 -fn_1_AED0 = .text:0x0000AED0; // type:function size:0x6D8 -fn_1_B5A8 = .text:0x0000B5A8; // type:function size:0x1C8 -fn_1_B770 = .text:0x0000B770; // type:function size:0x248 -fn_1_B9B8 = .text:0x0000B9B8; // type:function size:0x16C -fn_1_BB24 = .text:0x0000BB24; // type:function size:0x47C -fn_1_BFA0 = .text:0x0000BFA0; // type:function size:0x128 -fn_1_C0C8 = .text:0x0000C0C8; // type:function size:0x1808 -fn_1_D8D0 = .text:0x0000D8D0; // type:function size:0x56C -fn_1_DE3C = .text:0x0000DE3C; // type:function size:0x17C -fn_1_DFB8 = .text:0x0000DFB8; // type:function size:0x74 -fn_1_E02C = .text:0x0000E02C; // type:function size:0x700 -fn_1_E72C = .text:0x0000E72C; // type:function size:0x1830 -fn_1_FF5C = .text:0x0000FF5C; // type:function size:0x608 -fn_1_10564 = .text:0x00010564; // type:function size:0xD38 -fn_1_1129C = .text:0x0001129C; // type:function size:0xBCC -fn_1_11E68 = .text:0x00011E68; // type:function size:0x3C4 -fn_1_1222C = .text:0x0001222C; // type:function size:0x938 -fn_1_12B64 = .text:0x00012B64; // type:function size:0x88 -fn_1_12BEC = .text:0x00012BEC; // type:function size:0x82C -fn_1_13418 = .text:0x00013418; // type:function size:0x18E4 -fn_1_14CFC = .text:0x00014CFC; // type:function size:0x119C -fn_1_15E98 = .text:0x00015E98; // type:function size:0x5A0 -fn_1_16438 = .text:0x00016438; // type:function size:0x6F8 -fn_1_16B30 = .text:0x00016B30; // type:function size:0xF2C -fn_1_17A5C = .text:0x00017A5C; // type:function size:0x184 -fn_1_17BE0 = .text:0x00017BE0; // type:function size:0x1218 -fn_1_18DF8 = .text:0x00018DF8; // type:function size:0x220 -fn_1_19018 = .text:0x00019018; // type:function size:0x4B0 -fn_1_194C8 = .text:0x000194C8; // type:function size:0x568 -fn_1_19A30 = .text:0x00019A30; // type:function size:0x15C -fn_1_19B8C = .text:0x00019B8C; // type:function size:0x174 -fn_1_19D00 = .text:0x00019D00; // type:function size:0x194 -fn_1_19E94 = .text:0x00019E94; // type:function size:0xC8 -fn_1_19F5C = .text:0x00019F5C; // type:function size:0x608 -fn_1_1A564 = .text:0x0001A564; // type:function size:0x13C -fn_1_1A6A0 = .text:0x0001A6A0; // type:function size:0x248 -fn_1_1A8E8 = .text:0x0001A8E8; // type:function size:0x140 -fn_1_1AA28 = .text:0x0001AA28; // type:function size:0x130 -fn_1_1AB58 = .text:0x0001AB58; // type:function size:0x130 -fn_1_1AC88 = .text:0x0001AC88; // type:function size:0x5D8 -fn_1_1B260 = .text:0x0001B260; // type:function size:0xA8C -fn_1_1BCEC = .text:0x0001BCEC; // type:function size:0x1E0 -fn_1_1BECC = .text:0x0001BECC; // type:function size:0x1D0 -fn_1_1C09C = .text:0x0001C09C; // type:function size:0xAB0 -fn_1_1CB4C = .text:0x0001CB4C; // type:function size:0x364 -fn_1_1CEB0 = .text:0x0001CEB0; // type:function size:0x5EC -fn_1_1D49C = .text:0x0001D49C; // type:function size:0x1EC -fn_1_1D688 = .text:0x0001D688; // type:function size:0x6EC -fn_1_1DD74 = .text:0x0001DD74; // type:function size:0x894 -fn_1_1E608 = .text:0x0001E608; // type:function size:0x518 -fn_1_1EB20 = .text:0x0001EB20; // type:function size:0xC8 -fn_1_1EBE8 = .text:0x0001EBE8; // type:function size:0x138 -fn_1_1ED20 = .text:0x0001ED20; // type:function size:0x138 -fn_1_1EE58 = .text:0x0001EE58; // type:function size:0x4D4 -fn_1_1F32C = .text:0x0001F32C; // type:function size:0x790 -fn_1_1FABC = .text:0x0001FABC; // type:function size:0x188 -fn_1_1FC44 = .text:0x0001FC44; // type:function size:0xAE4 -fn_1_20728 = .text:0x00020728; // type:function size:0x248 -fn_1_20970 = .text:0x00020970; // type:function size:0x514 -fn_1_20E84 = .text:0x00020E84; // type:function size:0x150 -fn_1_20FD4 = .text:0x00020FD4; // type:function size:0x1E0 -fn_1_211B4 = .text:0x000211B4; // type:function size:0x2F0 -fn_1_214A4 = .text:0x000214A4; // type:function size:0x800 -fn_1_21CA4 = .text:0x00021CA4; // type:function size:0x5E8 -fn_1_2228C = .text:0x0002228C; // type:function size:0x49C -fn_1_22728 = .text:0x00022728; // type:function size:0x4E0 -fn_1_22C08 = .text:0x00022C08; // type:function size:0x5E8 -fn_1_231F0 = .text:0x000231F0; // type:function size:0xEF4 -fn_1_240E4 = .text:0x000240E4; // type:function size:0x28 -fn_1_2410C = .text:0x0002410C; // type:function size:0x20 -fn_1_2412C = .text:0x0002412C; // type:function size:0xD8 -fn_1_24204 = .text:0x00024204; // type:function size:0xC8 -fn_1_242CC = .text:0x000242CC; // type:function size:0xBC -fn_1_24388 = .text:0x00024388; // type:function size:0x28 -fn_1_243B0 = .text:0x000243B0; // type:function size:0x20 -fn_1_243D0 = .text:0x000243D0; // type:function size:0x14 -fn_1_243E4 = .text:0x000243E4; // type:function size:0xDC -fn_1_244C0 = .text:0x000244C0; // type:function size:0xE8 -fn_1_245A8 = .text:0x000245A8; // type:function size:0x24 -fn_1_245CC = .text:0x000245CC; // type:function size:0xA48 -fn_1_25014 = .text:0x00025014; // type:function size:0x2F8 -fn_1_2530C = .text:0x0002530C; // type:function size:0x218 -fn_1_25524 = .text:0x00025524; // type:function size:0x60 -fn_1_25584 = .text:0x00025584; // type:function size:0x68 -fn_1_255EC = .text:0x000255EC; // type:function size:0x90 -fn_1_2567C = .text:0x0002567C; // type:function size:0x134 -fn_1_257B0 = .text:0x000257B0; // type:function size:0x48 -fn_1_257F8 = .text:0x000257F8; // type:function size:0x40 -fn_1_25838 = .text:0x00025838; // type:function size:0xF4 -fn_1_2592C = .text:0x0002592C; // type:function size:0x37C -fn_1_25CA8 = .text:0x00025CA8; // type:function size:0x1CC -fn_1_25E74 = .text:0x00025E74; // type:function size:0x54 -fn_1_25EC8 = .text:0x00025EC8; // type:function size:0x13C -fn_1_26004 = .text:0x00026004; // type:function size:0x78C -fn_1_26790 = .text:0x00026790; // type:function size:0x58 -fn_1_267E8 = .text:0x000267E8; // type:function size:0x290 -fn_1_26A78 = .text:0x00026A78; // type:function size:0x138 -fn_1_26BB0 = .text:0x00026BB0; // type:function size:0x78 -fn_1_26C28 = .text:0x00026C28; // type:function size:0x2C -fn_1_26C54 = .text:0x00026C54; // type:function size:0x42C -fn_1_27080 = .text:0x00027080; // type:function size:0x134 -fn_1_271B4 = .text:0x000271B4; // type:function size:0x264 -fn_1_27418 = .text:0x00027418; // type:function size:0x424 -fn_1_2783C = .text:0x0002783C; // type:function size:0x1C0 -fn_1_279FC = .text:0x000279FC; // type:function size:0x210 -fn_1_27C0C = .text:0x00027C0C; // type:function size:0xE4 -_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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0xC data:4byte -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0xC data:4byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0xC data:4byte -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -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:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0xC data:4byte -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float -lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float -lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float -lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float -lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float -lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float -lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float -lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float -lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float -lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float -lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double -lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x8 data:double -lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float -lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float -lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double -lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float -lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double -lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float -lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float -lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float -lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0xC data:4byte -lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0xC data:4byte -lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0xC data:4byte -lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float -lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float -lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float -lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float -lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float -lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float -lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x4 data:float -lbl_1_rodata_6F4 = .rodata:0x000006F4; // type:object size:0x4 data:float -lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float -lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0x4 data:float -lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x4 data:float -lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 data:double -lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 data:float -lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float -lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double -lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float -lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float -lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float -lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float -lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float -lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x8 data:double -lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 data:double -lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float -lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x8 data:double -lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 data:float -lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x8 data:double -lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x8 data:double -lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x4 data:float -lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x8 data:double -lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x4 data:float -lbl_1_rodata_78C = .rodata:0x0000078C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1C -lbl_1_data_1C = .data:0x0000001C; // type:object size:0x24 -lbl_1_data_40 = .data:0x00000040; // type:object size:0x30 data:4byte -lbl_1_data_70 = .data:0x00000070; // type:object size:0x16 data:string -lbl_1_data_86 = .data:0x00000086; // type:object size:0x6 -lbl_1_data_8C = .data:0x0000008C; // type:object size:0x4 -lbl_1_data_90 = .data:0x00000090; // type:object size:0xA data:string -lbl_1_data_9A = .data:0x0000009A; // type:object size:0x6 -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x2 data:2byte -lbl_1_data_A2 = .data:0x000000A2; // type:object size:0xE -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 -lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x6 -lbl_1_data_D6 = .data:0x000000D6; // type:object size:0xA -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 -lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 -lbl_1_data_110 = .data:0x00000110; // type:object size:0x10 -lbl_1_data_120 = .data:0x00000120; // type:object size:0x28 -lbl_1_data_148 = .data:0x00000148; // type:object size:0x2 data:2byte -lbl_1_data_14A = .data:0x0000014A; // type:object size:0x8 -lbl_1_data_152 = .data:0x00000152; // type:object size:0x16 -lbl_1_data_168 = .data:0x00000168; // type:object size:0x2 data:2byte -lbl_1_data_16A = .data:0x0000016A; // type:object size:0x32 -lbl_1_data_19C = .data:0x0000019C; // type:object size:0x10 -lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x10 -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0xA data:string -lbl_1_data_1C6 = .data:0x000001C6; // type:object size:0xE data:string -lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x10 -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 data:string -lbl_1_data_208 = .data:0x00000208; // type:object size:0x26 data:string -lbl_1_data_22E = .data:0x0000022E; // type:object size:0x27 data:string -lbl_1_data_255 = .data:0x00000255; // type:object size:0x1C data:string -lbl_1_data_271 = .data:0x00000271; // type:object size:0x1B data:string -lbl_1_data_28C = .data:0x0000028C; // type:object size:0x1C data:string -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x1D data:string -lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0xC data:string -lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x1A data:string -lbl_1_data_2EB = .data:0x000002EB; // type:object size:0x1A data:string -lbl_1_data_305 = .data:0x00000305; // type:object size:0x27 -lbl_1_data_32C = .data:0x0000032C; // type:object size:0x40 data:4byte -lbl_1_data_36C = .data:0x0000036C; // type:object size:0x60 -lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x18 data:4byte -lbl_1_data_3E4 = .data:0x000003E4; // type:object size:0x64 -lbl_1_data_448 = .data:0x00000448; // type:object size:0x40 -lbl_1_data_488 = .data:0x00000488; // type:object size:0x8 data:4byte -lbl_1_data_490 = .data:0x00000490; // type:object size:0x2D8 -lbl_1_data_768 = .data:0x00000768; // type:object size:0x258 -lbl_1_data_9C0 = .data:0x000009C0; // type:object size:0x20 -lbl_1_data_9E0 = .data:0x000009E0; // type:object size:0x20 -lbl_1_data_A00 = .data:0x00000A00; // type:object size:0x2 data:2byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x264 data:4byte -lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x8 data:float -lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x18 data:4byte -lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x18 data:4byte -lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x2 data:2byte -lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0xA data:2byte -lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:float -lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xC data:4byte -lbl_1_bss_2C0 = .bss:0x000002C0; // type:object size:0xC data:4byte -lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x2 data:2byte -lbl_1_bss_2CE = .bss:0x000002CE; // type:object size:0x2 data:2byte -lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x8 data:4byte -lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x4 data:4byte -lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x6 -lbl_1_bss_2E2 = .bss:0x000002E2; // type:object size:0x2 data:2byte -lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0x2 data:2byte -lbl_1_bss_2E6 = .bss:0x000002E6; // type:object size:0x2 data:2byte -lbl_1_bss_2E8 = .bss:0x000002E8; // type:object size:0x4 data:float -lbl_1_bss_2EC = .bss:0x000002EC; // type:object size:0x2 data:2byte -lbl_1_bss_2EE = .bss:0x000002EE; // type:object size:0x2 data:2byte -lbl_1_bss_2F0 = .bss:0x000002F0; // type:object size:0x2 data:2byte -lbl_1_bss_2F4 = .bss:0x000002F4; // type:object size:0x18 -lbl_1_bss_30C = .bss:0x0000030C; // type:object size:0x2 data:2byte -lbl_1_bss_30E = .bss:0x0000030E; // type:object size:0x8 -lbl_1_bss_316 = .bss:0x00000316; // type:object size:0x2 data:2byte -lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x28 data:2byte -lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x8 -lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte -lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x8 data:2byte -lbl_1_bss_352 = .bss:0x00000352; // type:object size:0x1E -lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC -lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC -lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte -lbl_1_bss_38A = .bss:0x0000038A; // type:object size:0x2 data:2byte -lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x8 -lbl_1_bss_394 = .bss:0x00000394; // type:object size:0x2 data:2byte -lbl_1_bss_396 = .bss:0x00000396; // type:object size:0xA -lbl_1_bss_3A0 = .bss:0x000003A0; // type:object size:0x4 data:4byte -lbl_1_bss_3A4 = .bss:0x000003A4; // type:object size:0x2 data:2byte -lbl_1_bss_3A8 = .bss:0x000003A8; // type:object size:0x2 data:2byte -lbl_1_bss_3AA = .bss:0x000003AA; // type:object size:0x2 data:2byte -lbl_1_bss_3AC = .bss:0x000003AC; // type:object size:0x2 data:2byte -lbl_1_bss_3B0 = .bss:0x000003B0; // type:object size:0x2 data:2byte -lbl_1_bss_3B4 = .bss:0x000003B4; // type:object size:0x2 data:2byte -lbl_1_bss_3B8 = .bss:0x000003B8; // type:object size:0x8 data:2byte -lbl_1_bss_3C0 = .bss:0x000003C0; // type:object size:0x4 data:4byte -lbl_1_bss_3C4 = .bss:0x000003C4; // type:object size:0x4 data:4byte -lbl_1_bss_3C8 = .bss:0x000003C8; // type:object size:0x4 data:4byte -lbl_1_bss_3CC = .bss:0x000003CC; // type:object size:0x1A40 -lbl_1_bss_1E0C = .bss:0x00001E0C; // type:object size:0x4 data:4byte -lbl_1_bss_1E10 = .bss:0x00001E10; // type:object size:0x240 data:4byte -lbl_1_bss_2050 = .bss:0x00002050; // type:object size:0x5A -lbl_1_bss_20AA = .bss:0x000020AA; // type:object size:0x2 data:2byte -lbl_1_bss_20AC = .bss:0x000020AC; // type:object size:0x14 data:2byte -lbl_1_bss_20C0 = .bss:0x000020C0; // type:object size:0x578 -lbl_1_bss_2638 = .bss:0x00002638; // type:object size:0x14 data:2byte -lbl_1_bss_264C = .bss:0x0000264C; // type:object size:0x578 -lbl_1_bss_2BC4 = .bss:0x00002BC4; // type:object size:0x50 -lbl_1_bss_2C14 = .bss:0x00002C14; // type:object size:0x8 -lbl_1_bss_2C1C = .bss:0x00002C1C; // type:object size:0x8 -lbl_1_bss_2C24 = .bss:0x00002C24; // type:object size:0x8 -lbl_1_bss_2C2C = .bss:0x00002C2C; // type:object size:0x3A data:2byte -lbl_1_bss_2C66 = .bss:0x00002C66; // type:object size:0x1A data:2byte -lbl_1_bss_2C80 = .bss:0x00002C80; // type:object size:0x1A data:2byte diff --git a/config/GMPJ01_00/rels/modeltestDll/splits.txt b/config/GMPJ01_00/rels/modeltestDll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/modeltestDll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/modeltestDll/symbols.txt b/config/GMPJ01_00/rels/modeltestDll/symbols.txt deleted file mode 100644 index 3c87f506..00000000 --- a/config/GMPJ01_00/rels/modeltestDll/symbols.txt +++ /dev/null @@ -1,230 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x1FC -fn_1_29C = .text:0x0000029C; // type:function size:0xC9C -fn_1_F38 = .text:0x00000F38; // type:function size:0x64 -fn_1_F9C = .text:0x00000F9C; // type:function size:0x1158 -fn_1_20F4 = .text:0x000020F4; // type:function size:0x804 -fn_1_28F8 = .text:0x000028F8; // type:function size:0x204 -fn_1_2AFC = .text:0x00002AFC; // type:function size:0x6C -fn_1_2B68 = .text:0x00002B68; // type:function size:0x948 -fn_1_34B0 = .text:0x000034B0; // type:function size:0x32C -fn_1_37DC = .text:0x000037DC; // type:function size:0xBC0 -fn_1_439C = .text:0x0000439C; // type:function size:0x354 -fn_1_46F0 = .text:0x000046F0; // type:function size:0x3D8 -fn_1_4AC8 = .text:0x00004AC8; // type:function size:0x330 -fn_1_4DF8 = .text:0x00004DF8; // type:function size:0xC68 -fn_1_5A60 = .text:0x00005A60; // type:function size:0x348 -fn_1_5DA8 = .text:0x00005DA8; // type:function size:0xC20 -fn_1_69C8 = .text:0x000069C8; // type:function size:0x118 -fn_1_6AE0 = .text:0x00006AE0; // type:function size:0x166C -fn_1_814C = .text:0x0000814C; // type:function size:0x17C -fn_1_82C8 = .text:0x000082C8; // type:function size:0xEC -fn_1_83B4 = .text:0x000083B4; // type:function size:0x304 -_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:0xC data:4byte -lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0xC data:4byte -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x10 data:2byte -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -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_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0xC data:4byte -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0xC data:4byte -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0xC data:4byte -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0xC data:4byte -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_214 = .rodata:0x00000214; // 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:0x8 data:double -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_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0xC data:4byte -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0xC data:4byte -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 data:4byte -lbl_1_data_20 = .data:0x00000020; // type:object size:0x28 data:string -lbl_1_data_48 = .data:0x00000048; // type:object size:0x9 data:string -lbl_1_data_51 = .data:0x00000051; // type:object size:0x9 data:string -lbl_1_data_5A = .data:0x0000005A; // type:object size:0x9 data:string -lbl_1_data_63 = .data:0x00000063; // type:object size:0x9 data:string -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x9 data:string -lbl_1_data_75 = .data:0x00000075; // type:object size:0x9 data:string -lbl_1_data_7E = .data:0x0000007E; // type:object size:0x9 data:string -lbl_1_data_87 = .data:0x00000087; // type:object size:0x9 data:string -lbl_1_data_90 = .data:0x00000090; // type:object size:0x9 data:string -lbl_1_data_99 = .data:0x00000099; // type:object size:0x9 data:string -lbl_1_data_A2 = .data:0x000000A2; // type:object size:0x9 data:string -lbl_1_data_AB = .data:0x000000AB; // type:object size:0x9 data:string -lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x9 data:string -lbl_1_data_BD = .data:0x000000BD; // type:object size:0x9 data:string -lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x9 data:string -lbl_1_data_CF = .data:0x000000CF; // type:object size:0x9 data:string -lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x40 -lbl_1_data_118 = .data:0x00000118; // type:object size:0x50 data:float -lbl_1_data_168 = .data:0x00000168; // type:object size:0xA0 -lbl_1_data_208 = .data:0x00000208; // type:object size:0x50 -lbl_1_data_258 = .data:0x00000258; // type:object size:0x50 -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x1A data:string -lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x16 -lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x10 data:string -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x4 data:string -lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x2C data:string -lbl_1_data_318 = .data:0x00000318; // type:object size:0x40 -lbl_1_data_358 = .data:0x00000358; // type:object size:0x8 -lbl_1_data_360 = .data:0x00000360; // type:object size:0x28 data:string -lbl_1_data_388 = .data:0x00000388; // type:object size:0x28 data:string -lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x58 -lbl_1_data_408 = .data:0x00000408; // type:object size:0x58 -lbl_1_data_460 = .data:0x00000460; // type:object size:0x58 -lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x58 -lbl_1_data_510 = .data:0x00000510; // type:object size:0x58 -lbl_1_data_568 = .data:0x00000568; // type:object size:0x58 -lbl_1_data_5C0 = .data:0x000005C0; // type:object size:0x58 -lbl_1_data_618 = .data:0x00000618; // type:object size:0x58 -lbl_1_data_670 = .data:0x00000670; // type:object size:0x20 -lbl_1_data_690 = .data:0x00000690; // type:object size:0x10 data:string -lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0xD data:string -lbl_1_data_6AD = .data:0x000006AD; // type:object size:0xD data:string -lbl_1_data_6BA = .data:0x000006BA; // type:object size:0xD data:string -lbl_1_data_6C7 = .data:0x000006C7; // type:object size:0xB data:string -lbl_1_data_6D2 = .data:0x000006D2; // type:object size:0x8 data:string -lbl_1_data_6DA = .data:0x000006DA; // type:object size:0xF data:string -lbl_1_data_6E9 = .data:0x000006E9; // type:object size:0xB -lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x60 -lbl_1_data_754 = .data:0x00000754; // type:object size:0x4 data:4byte -lbl_1_data_758 = .data:0x00000758; // type:object size:0x12 -lbl_1_data_76A = .data:0x0000076A; // type:object size:0x2E -lbl_1_data_798 = .data:0x00000798; // type:object size:0x14 -lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x2 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x1 data:byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x10 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x414 -lbl_1_bss_454 = .bss:0x00000454; // type:object size:0x4 data:4byte -lbl_1_bss_458 = .bss:0x00000458; // type:object size:0x2 data:2byte -lbl_1_bss_45A = .bss:0x0000045A; // type:object size:0x6 data:2byte -lbl_1_bss_460 = .bss:0x00000460; // type:object size:0x204 data:2byte -lbl_1_bss_664 = .bss:0x00000664; // type:object size:0x200 data:2byte -lbl_1_bss_864 = .bss:0x00000864; // type:object size:0x20 -lbl_1_bss_884 = .bss:0x00000884; // type:object size:0x2 data:2byte -lbl_1_bss_888 = .bss:0x00000888; // type:object size:0x2 data:2byte -lbl_1_bss_88A = .bss:0x0000088A; // type:object size:0x100 -lbl_1_bss_98A = .bss:0x0000098A; // type:object size:0x10 data:2byte -lbl_1_bss_99A = .bss:0x0000099A; // type:object size:0x2 data:2byte -lbl_1_bss_99C = .bss:0x0000099C; // type:object size:0x2 data:2byte -lbl_1_bss_9A0 = .bss:0x000009A0; // type:object size:0x4 data:4byte -lbl_1_bss_9A4 = .bss:0x000009A4; // type:object size:0x4 data:4byte -lbl_1_bss_9A8 = .bss:0x000009A8; // type:object size:0x4 data:4byte -lbl_1_bss_9AC = .bss:0x000009AC; // type:object size:0x40 -lbl_1_bss_9EC = .bss:0x000009EC; // type:object size:0x8 -lbl_1_bss_9F4 = .bss:0x000009F4; // type:object size:0x4 data:4byte -lbl_1_bss_9F8 = .bss:0x000009F8; // type:object size:0x8 data:4byte -lbl_1_bss_A00 = .bss:0x00000A00; // type:object size:0x4 data:4byte -lbl_1_bss_A04 = .bss:0x00000A04; // type:object size:0x4 data:4byte -lbl_1_bss_A08 = .bss:0x00000A08; // type:object size:0x2 data:2byte -lbl_1_bss_A0C = .bss:0x00000A0C; // type:object size:0x8 data:float -lbl_1_bss_A14 = .bss:0x00000A14; // type:object size:0x4 data:4byte -lbl_1_bss_A18 = .bss:0x00000A18; // type:object size:0xA4 data:float -lbl_1_bss_ABC = .bss:0x00000ABC; // type:object size:0x4 data:4byte -lbl_1_bss_AC0 = .bss:0x00000AC0; // type:object size:0x8 data:4byte diff --git a/config/GMPJ01_00/rels/present/splits.txt b/config/GMPJ01_00/rels/present/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/present/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/present/symbols.txt b/config/GMPJ01_00/rels/present/symbols.txt deleted file mode 100644 index e6b4d8f0..00000000 --- a/config/GMPJ01_00/rels/present/symbols.txt +++ /dev/null @@ -1,189 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0xA4 -fn_1_144 = .text:0x00000144; // type:function size:0x110 -fn_1_254 = .text:0x00000254; // type:function size:0xE0 -fn_1_334 = .text:0x00000334; // type:function size:0x128 -fn_1_45C = .text:0x0000045C; // type:function size:0xF4 -fn_1_550 = .text:0x00000550; // type:function size:0x34 -fn_1_584 = .text:0x00000584; // type:function size:0x34 -fn_1_5B8 = .text:0x000005B8; // type:function size:0x34 -fn_1_5EC = .text:0x000005EC; // type:function size:0xC8 -fn_1_6B4 = .text:0x000006B4; // type:function size:0x23C -fn_1_8F0 = .text:0x000008F0; // type:function size:0x30 -fn_1_920 = .text:0x00000920; // type:function size:0x84 -fn_1_9A4 = .text:0x000009A4; // type:function size:0x84 -fn_1_A28 = .text:0x00000A28; // type:function size:0x84 -fn_1_AAC = .text:0x00000AAC; // type:function size:0x30 -fn_1_ADC = .text:0x00000ADC; // type:function size:0x30 -fn_1_B0C = .text:0x00000B0C; // type:function size:0x30 -fn_1_B3C = .text:0x00000B3C; // type:function size:0x30 -fn_1_B6C = .text:0x00000B6C; // type:function size:0x8C -fn_1_BF8 = .text:0x00000BF8; // type:function size:0x28 -fn_1_C20 = .text:0x00000C20; // type:function size:0x578 -fn_1_1198 = .text:0x00001198; // type:function size:0x200 -fn_1_1398 = .text:0x00001398; // type:function size:0xC0 -fn_1_1458 = .text:0x00001458; // type:function size:0x32C -fn_1_1784 = .text:0x00001784; // type:function size:0x88 -fn_1_180C = .text:0x0000180C; // type:function size:0x44 -fn_1_1850 = .text:0x00001850; // type:function size:0x1C -fn_1_186C = .text:0x0000186C; // type:function size:0xBC -fn_1_1928 = .text:0x00001928; // type:function size:0x680 -fn_1_1FA8 = .text:0x00001FA8; // type:function size:0x140 -fn_1_20E8 = .text:0x000020E8; // type:function size:0x5A4 -fn_1_268C = .text:0x0000268C; // type:function size:0x7C -fn_1_2708 = .text:0x00002708; // type:function size:0x6C -fn_1_2774 = .text:0x00002774; // type:function size:0x17C -fn_1_28F0 = .text:0x000028F0; // type:function size:0x34 -fn_1_2924 = .text:0x00002924; // type:function size:0x260 -fn_1_2B84 = .text:0x00002B84; // type:function size:0x48 -fn_1_2BCC = .text:0x00002BCC; // type:function size:0x90 -fn_1_2C5C = .text:0x00002C5C; // type:function size:0x738 -fn_1_3394 = .text:0x00003394; // type:function size:0x18 -fn_1_33AC = .text:0x000033AC; // type:function size:0x590 -fn_1_393C = .text:0x0000393C; // type:function size:0x6C -fn_1_39A8 = .text:0x000039A8; // type:function size:0x170 -fn_1_3B18 = .text:0x00003B18; // type:function size:0x74 -fn_1_3B8C = .text:0x00003B8C; // type:function size:0x22C -fn_1_3DB8 = .text:0x00003DB8; // type:function size:0xEC -fn_1_3EA4 = .text:0x00003EA4; // type:function size:0x19C -fn_1_4040 = .text:0x00004040; // type:function size:0x40 -fn_1_4080 = .text:0x00004080; // type:function size:0x18 -fn_1_4098 = .text:0x00004098; // type:function size:0x18 -fn_1_40B0 = .text:0x000040B0; // type:function size:0x54 -fn_1_4104 = .text:0x00004104; // type:function size:0x40 -fn_1_4144 = .text:0x00004144; // type:function size:0x40 -fn_1_4184 = .text:0x00004184; // type:function size:0xC -fn_1_4190 = .text:0x00004190; // type:function size:0xC -fn_1_419C = .text:0x0000419C; // type:function size:0x20 -fn_1_41BC = .text:0x000041BC; // type:function size:0x24 -fn_1_41E0 = .text:0x000041E0; // type:function size:0x114 -fn_1_42F4 = .text:0x000042F4; // type:function size:0x240 -fn_1_4534 = .text:0x00004534; // type:function size:0x8C -fn_1_45C0 = .text:0x000045C0; // type:function size:0x44 -fn_1_4604 = .text:0x00004604; // type:function size:0x1C -fn_1_4620 = .text:0x00004620; // type:function size:0x260 -fn_1_4880 = .text:0x00004880; // type:function size:0x184 -fn_1_4A04 = .text:0x00004A04; // type:function size:0x2E8 -fn_1_4CEC = .text:0x00004CEC; // type:function size:0x104 -_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:0x8 data:double -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_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:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x8 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x218 -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x708 -lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 data:float -lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 data:float -lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 data:float -lbl_1_rodata_9D0 = .rodata:0x000009D0; // type:object size:0x8 data:double -lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0x20 -lbl_1_rodata_9F8 = .rodata:0x000009F8; // type:object size:0x28 -lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x4 data:float -lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 data:float -lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 data:float -lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 data:float -lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 data:float -lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 data:float -lbl_1_rodata_A38 = .rodata:0x00000A38; // type:object size:0x4 data:float -lbl_1_rodata_A3C = .rodata:0x00000A3C; // type:object size:0x4 data:float -lbl_1_rodata_A40 = .rodata:0x00000A40; // type:object size:0x4 data:float -lbl_1_rodata_A44 = .rodata:0x00000A44; // type:object size:0x4 data:float -lbl_1_rodata_A48 = .rodata:0x00000A48; // type:object size:0x4 data:float -lbl_1_rodata_A50 = .rodata:0x00000A50; // type:object size:0x8 data:double -lbl_1_rodata_A58 = .rodata:0x00000A58; // type:object size:0x4 data:float -lbl_1_rodata_A60 = .rodata:0x00000A60; // type:object size:0x8 data:double -lbl_1_rodata_A68 = .rodata:0x00000A68; // type:object size:0x8 data:double -lbl_1_rodata_A70 = .rodata:0x00000A70; // type:object size:0x4 data:float -lbl_1_rodata_A74 = .rodata:0x00000A74; // type:object size:0x28 -lbl_1_rodata_A9C = .rodata:0x00000A9C; // type:object size:0x4 data:float -lbl_1_rodata_AA0 = .rodata:0x00000AA0; // type:object size:0x4 data:float -lbl_1_rodata_AA4 = .rodata:0x00000AA4; // type:object size:0x4 data:float -lbl_1_rodata_AA8 = .rodata:0x00000AA8; // type:object size:0x4 data:float -lbl_1_rodata_AAC = .rodata:0x00000AAC; // type:object size:0x4 data:float -lbl_1_rodata_AB0 = .rodata:0x00000AB0; // type:object size:0x4 data:float -lbl_1_rodata_AB8 = .rodata:0x00000AB8; // type:object size:0x8 data:double -lbl_1_rodata_AC0 = .rodata:0x00000AC0; // type:object size:0x8 data:double -lbl_1_rodata_AC8 = .rodata:0x00000AC8; // type:object size:0x28 -lbl_1_rodata_AF0 = .rodata:0x00000AF0; // type:object size:0x28 -lbl_1_rodata_B18 = .rodata:0x00000B18; // type:object size:0x28 -lbl_1_rodata_B40 = .rodata:0x00000B40; // type:object size:0x28 -lbl_1_rodata_B68 = .rodata:0x00000B68; // type:object size:0x28 -lbl_1_rodata_B90 = .rodata:0x00000B90; // type:object size:0x4 data:float -lbl_1_rodata_B94 = .rodata:0x00000B94; // type:object size:0x4 data:float -lbl_1_rodata_B98 = .rodata:0x00000B98; // type:object size:0x4 data:float -lbl_1_rodata_B9C = .rodata:0x00000B9C; // type:object size:0x4 data:float -lbl_1_rodata_BA0 = .rodata:0x00000BA0; // type:object size:0x4 data:float -lbl_1_rodata_BA4 = .rodata:0x00000BA4; // type:object size:0xC -lbl_1_rodata_BB0 = .rodata:0x00000BB0; // type:object size:0x4 data:float -lbl_1_rodata_BB4 = .rodata:0x00000BB4; // type:object size:0x4 data:float -lbl_1_rodata_BB8 = .rodata:0x00000BB8; // type:object size:0x4 data:float -lbl_1_rodata_BBC = .rodata:0x00000BBC; // type:object size:0x4 data:float -lbl_1_rodata_BC0 = .rodata:0x00000BC0; // type:object size:0x4 data:float -lbl_1_rodata_BC4 = .rodata:0x00000BC4; // type:object size:0x4 data:float -lbl_1_rodata_BC8 = .rodata:0x00000BC8; // type:object size:0x4 data:float -lbl_1_rodata_BCC = .rodata:0x00000BCC; // type:object size:0x4 data:float -lbl_1_rodata_BD0 = .rodata:0x00000BD0; // type:object size:0x8 data:float -lbl_1_rodata_BD8 = .rodata:0x00000BD8; // type:object size:0xC -lbl_1_rodata_BE4 = .rodata:0x00000BE4; // type:object size:0x4 data:float -lbl_1_rodata_BE8 = .rodata:0x00000BE8; // type:object size:0x4 data:float -lbl_1_rodata_BEC = .rodata:0x00000BEC; // type:object size:0x4 data:float -lbl_1_rodata_BF0 = .rodata:0x00000BF0; // type:object size:0x4 data:float -lbl_1_rodata_BF4 = .rodata:0x00000BF4; // type:object size:0x4 data:float -lbl_1_rodata_BF8 = .rodata:0x00000BF8; // type:object size:0x8 data:double -lbl_1_rodata_C00 = .rodata:0x00000C00; // type:object size:0x4 data:float -lbl_1_rodata_C08 = .rodata:0x00000C08; // type:object size:0x8 data:double -lbl_1_rodata_C10 = .rodata:0x00000C10; // type:object size:0x4 data:float -lbl_1_rodata_C14 = .rodata:0x00000C14; // type:object size:0x4 data:float -lbl_1_rodata_C18 = .rodata:0x00000C18; // type:object size:0x4 data:float -lbl_1_rodata_C1C = .rodata:0x00000C1C; // type:object size:0x4 data:float -lbl_1_rodata_C20 = .rodata:0x00000C20; // type:object size:0x8 data:double -lbl_1_rodata_C28 = .rodata:0x00000C28; // type:object size:0x8 data:double -lbl_1_rodata_C30 = .rodata:0x00000C30; // type:object size:0x4 data:float -lbl_1_rodata_C34 = .rodata:0x00000C34; // type:object size:0x4 data:float -lbl_1_rodata_C38 = .rodata:0x00000C38; // type:object size:0x4 data:float -lbl_1_rodata_C40 = .rodata:0x00000C40; // type:object size:0x8 data:double -lbl_1_rodata_C48 = .rodata:0x00000C48; // type:object size:0x4 data:float -lbl_1_rodata_C4C = .rodata:0x00000C4C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string -lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1B data:string -lbl_1_data_36 = .data:0x00000036; // type:object size:0x1A -lbl_1_data_50 = .data:0x00000050; // type:object size:0x1C -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x10 data:4byte -lbl_1_data_7C = .data:0x0000007C; // type:object size:0x8 -lbl_1_data_84 = .data:0x00000084; // type:object size:0x20 -jumptable_1_data_A4 = .data:0x000000A4; // type:object size:0x2C scope:local -jumptable_1_data_D0 = .data:0x000000D0; // type:object size:0x1C scope:local -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x24 -lbl_1_data_114 = .data:0x00000114; // type:object size:0x2A data:string -lbl_1_data_13E = .data:0x0000013E; // type:object size:0x2E -jumptable_1_data_16C = .data:0x0000016C; // type:object size:0x34 scope:local -lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0xC data:4byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/resultDll/splits.txt b/config/GMPJ01_00/rels/resultDll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/resultDll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/resultDll/symbols.txt b/config/GMPJ01_00/rels/resultDll/symbols.txt deleted file mode 100644 index 07d67720..00000000 --- a/config/GMPJ01_00/rels/resultDll/symbols.txt +++ /dev/null @@ -1,203 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x438 -fn_1_4D8 = .text:0x000004D8; // type:function size:0x3B0 -fn_1_888 = .text:0x00000888; // type:function size:0x2F0 -fn_1_B78 = .text:0x00000B78; // type:function size:0x13D4 -fn_1_1F4C = .text:0x00001F4C; // type:function size:0xB90 -fn_1_2ADC = .text:0x00002ADC; // type:function size:0x1074 -fn_1_3B50 = .text:0x00003B50; // type:function size:0x15C -fn_1_3CAC = .text:0x00003CAC; // type:function size:0x15C -fn_1_3E08 = .text:0x00003E08; // type:function size:0x1D0 -fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x104 -fn_1_40DC = .text:0x000040DC; // type:function size:0x160 -fn_1_423C = .text:0x0000423C; // type:function size:0x3E0 -fn_1_461C = .text:0x0000461C; // type:function size:0x1E0 -fn_1_47FC = .text:0x000047FC; // type:function size:0x1084 -fn_1_5880 = .text:0x00005880; // type:function size:0xC10 -fn_1_6490 = .text:0x00006490; // type:function size:0x2D0 -fn_1_6760 = .text:0x00006760; // type:function size:0xC4 -fn_1_6824 = .text:0x00006824; // type:function size:0xD20 -fn_1_7544 = .text:0x00007544; // type:function size:0xA54 -fn_1_7F98 = .text:0x00007F98; // type:function size:0x3A0 -fn_1_8338 = .text:0x00008338; // type:function size:0x14C -fn_1_8484 = .text:0x00008484; // type:function size:0x1D4 -fn_1_8658 = .text:0x00008658; // type:function size:0x84 -fn_1_86DC = .text:0x000086DC; // type:function size:0x2BC -fn_1_8998 = .text:0x00008998; // type:function size:0x320 -fn_1_8CB8 = .text:0x00008CB8; // type:function size:0x340 -fn_1_8FF8 = .text:0x00008FF8; // type:function size:0x284 -fn_1_927C = .text:0x0000927C; // type:function size:0x138 -fn_1_93B4 = .text:0x000093B4; // type:function size:0x78 -_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:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x10 data:4byte -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 data:float -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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_data_0 = .data:0x00000000; // type:object size:0x2A4 -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0xDC data:4byte -lbl_1_data_380 = .data:0x00000380; // type:object size:0x2 data:2byte -lbl_1_data_382 = .data:0x00000382; // type:object size:0x26 data:string -lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x18 -lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x18 -lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x20 -lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x10 -lbl_1_data_408 = .data:0x00000408; // type:object size:0x30 -lbl_1_data_438 = .data:0x00000438; // type:object size:0x10 -lbl_1_data_448 = .data:0x00000448; // type:object size:0x8 -lbl_1_data_450 = .data:0x00000450; // type:object size:0x38 -lbl_1_data_488 = .data:0x00000488; // type:object size:0x30 -lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x11 data:string -lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0x11 data:string -lbl_1_data_4DA = .data:0x000004DA; // type:object size:0xE -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x270 -lbl_1_data_758 = .data:0x00000758; // type:object size:0x28 -lbl_1_data_780 = .data:0x00000780; // type:object size:0x70 -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x40 -lbl_1_data_830 = .data:0x00000830; // type:object size:0x10 -lbl_1_data_840 = .data:0x00000840; // type:object size:0x20 -lbl_1_data_860 = .data:0x00000860; // type:object size:0x20 -lbl_1_data_880 = .data:0x00000880; // type:object size:0x20 -lbl_1_data_8A0 = .data:0x000008A0; // type:object size:0x6 data:2byte -lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 data:string -lbl_1_data_8AE = .data:0x000008AE; // type:object size:0xA -lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x60 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x8 -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x28 -lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x8 -lbl_1_bss_42 = .bss:0x00000042; // type:object size:0x8 -lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x8 -lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x40 -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte -lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x30 -lbl_1_bss_CE = .bss:0x000000CE; // type:object size:0x12 -lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x60 -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x14 -lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x10 -lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x8 -lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x2 data:2byte -lbl_1_bss_172 = .bss:0x00000172; // type:object size:0x2 data:2byte -lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte -lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte -lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x2 data:2byte -lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte -lbl_1_bss_184 = .bss:0x00000184; // type:object size:0xC data:4byte -lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte -lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x1680 -lbl_1_bss_1814 = .bss:0x00001814; // type:object size:0x14 -lbl_1_bss_1828 = .bss:0x00001828; // type:object size:0x168 data:2byte -lbl_1_bss_1990 = .bss:0x00001990; // type:object size:0x20 -lbl_1_bss_19B0 = .bss:0x000019B0; // type:object size:0x8 -lbl_1_bss_19B8 = .bss:0x000019B8; // type:object size:0x28 -lbl_1_bss_19E0 = .bss:0x000019E0; // type:object size:0x8 -lbl_1_bss_19E8 = .bss:0x000019E8; // type:object size:0x8 -lbl_1_bss_19F0 = .bss:0x000019F0; // type:object size:0x2A -lbl_1_bss_1A1A = .bss:0x00001A1A; // type:object size:0x42 data:2byte -lbl_1_bss_1A5C = .bss:0x00001A5C; // type:object size:0x40 data:2byte -lbl_1_bss_1A9C = .bss:0x00001A9C; // type:object size:0x40 data:2byte diff --git a/configure.py b/configure.py index aa1b0b54..7ef9db2f 100644 --- a/configure.py +++ b/configure.py @@ -824,13 +824,13 @@ config.libs = [ "objects": [ Object(Matching, "REL/executor.c"), Object(Matching, "REL/empty.c"), # Must be marked as matching - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/board_executor.c"), + Object(Matching, "REL/board_executor.c"), ], }, Rel( "_minigameDLL", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/_minigameDLL/_minigameDLL.c"), + Object(Matching, "REL/_minigameDLL/_minigameDLL.c"), }, ), Rel( @@ -843,8 +843,8 @@ config.libs = [ Rel( "E3setupDLL", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/E3setupDLL/mgselect.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/E3setupDLL/main.c"), + Object(Matching, "REL/E3setupDLL/mgselect.c"), + Object(Matching, "REL/E3setupDLL/main.c"), }, ), Rel( @@ -857,92 +857,92 @@ config.libs = [ Rel( "m401Dll", # Manta Rings objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m401Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m401Dll/main_ex.c"), + Object(Matching, "REL/m401Dll/main.c"), + Object(Matching, "REL/m401Dll/main_ex.c"), }, ), Rel( "m402Dll", # Slime Time objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m402Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m402Dll/main.c"), }, ), Rel( "m403Dll", # Booksquirm objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m403Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m403Dll/scene.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m403Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m403Dll/scene.c"), }, ), Rel( "m404Dll", # Trace Race objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m404Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m404Dll/main.c"), }, ), Rel( "m405Dll", # Mario Medley objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m405Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m405Dll/main.c"), }, ), Rel( "m406Dll", # Avalanche! objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m406Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m406Dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m406Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m406Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m406Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m406Dll/player.c"), }, ), Rel( "m407dll", # Domination objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/whomp.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/whomp_score.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/effect.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m407dll/score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/whomp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/whomp_score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/effect.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m407dll/score.c"), }, ), Rel( "m408Dll", # Paratrooper Plunge objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/stage.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m408Dll/object.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m408Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m408Dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m408Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m408Dll/object.c"), }, ), Rel( "m409Dll", # Toad's Quick Draw objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m409Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m409Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m409Dll/cursor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m409Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m409Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m409Dll/cursor.c"), }, ), Rel( "m410Dll", # Three Throw objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/stage.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/game.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m410Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m410Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m410Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m410Dll/game.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m410Dll/player.c"), }, ), Rel( "m411Dll", # Photo Finish objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m411Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m411Dll/main.c"), }, ), Rel( "m412Dll", # Mr. Blizzard's Brigade objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m412Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m412Dll/main.c"), }, ), Rel( @@ -954,30 +954,30 @@ config.libs = [ Rel( "m414Dll", # Long Claw of the Law objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m414Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m414Dll/main.c"), }, ), Rel( "m415Dll", # Stamp Out! objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m415Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m415Dll/main.c"), Object(NonMatching, "REL/m415Dll/map.c"), }, ), Rel( "m416Dll", # Candlelight Flight objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m416Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m416Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m416Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m416Dll/map.c"), }, ), Rel( "m417Dll", # Makin' Waves objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/water.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m417Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m417Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m417Dll/water.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m417Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m417Dll/sequence.c"), }, ), Rel( @@ -996,19 +996,19 @@ config.libs = [ Rel( "m420dll", # Fish n' Drips objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m420dll/rand.c"), + Object(Matching, "REL/m420dll/main.c"), + Object(Matching, "REL/m420dll/camera.c"), + Object(Matching, "REL/m420dll/player.c"), + Object(Matching, "REL/m420dll/map.c"), + Object(Matching, "REL/m420dll/rand.c"), }, ), Rel( "m421Dll", # Hop or Pop objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m421Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m421Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m421Dll/map.c"), + Object(Matching, "REL/m421Dll/main.c"), + Object(Matching, "REL/m421Dll/player.c"), + Object(Matching, "REL/m421Dll/map.c"), }, ), Rel( @@ -1078,14 +1078,14 @@ config.libs = [ Rel( "m431Dll", # Order Up objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m431Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m431Dll/object.c"), + Object(Matching, "REL/m431Dll/main.c"), + Object(Matching, "REL/m431Dll/object.c"), }, ), Rel( "m432Dll", # Dungeon Duos objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m432Dll/main.c"), + Object(Matching, "REL/m432Dll/main.c"), }, ), Rel( @@ -1099,10 +1099,10 @@ config.libs = [ Rel( "m434Dll", # Cheep Cheep Sweep objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m434Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m434Dll/map.c"), + Object(Matching, "REL/m434Dll/main.c"), + Object(Matching, "REL/m434Dll/map.c"), Object(NonMatching, "REL/m434Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m434Dll/fish.c"), + Object(Matching, "REL/m434Dll/fish.c"), }, ), Rel( @@ -1115,15 +1115,15 @@ config.libs = [ Rel( "m436Dll", # Fruits of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m436Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m436Dll/sequence.c"), + Object(Matching, "REL/m436Dll/main.c"), + Object(Matching, "REL/m436Dll/sequence.c"), }, ), Rel( "m437Dll", # Balloon of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m437Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m437Dll/sequence.c"), + Object(Matching, "REL/m437Dll/main.c"), + Object(Matching, "REL/m437Dll/sequence.c"), }, ), Rel( @@ -1137,35 +1137,35 @@ config.libs = [ Rel( "m439Dll", # Paths of Peril objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m439Dll/main.c"), + Object(Matching, "REL/m439Dll/main.c"), }, ), Rel( "m440Dll", # Bowser's Bigger Blast objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m440Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m440Dll/object.c"), + Object(Matching, "REL/m440Dll/main.c"), + Object(Matching, "REL/m440Dll/object.c"), }, ), Rel( "m441Dll", # Butterfly Blitz objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m441Dll/main.c"), + Object(Matching, "REL/m441Dll/main.c"), }, ), Rel( "m442Dll", # Barrel Baron objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m442Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m442Dll/score.c"), + Object(Matching, "REL/m442Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m442Dll/score.c"), }, ), Rel( "m443Dll", # Mario Speedwagons objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m443Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m443Dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m443Dll/player.c"), + Object(Matching, "REL/m443Dll/main.c"), + Object(Matching, "REL/m443Dll/map.c"), + Object(Matching, "REL/m443Dll/player.c"), }, ), Rel( @@ -1180,37 +1180,37 @@ config.libs = [ Rel( "m445Dll", # Bowser Bop objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m445Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m445Dll/main.c"), }, ), Rel( "m446dll", # Mystic Match 'Em objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/card.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/deck.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/table.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/cursor.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m446Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/card.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/deck.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/table.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/cursor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m446Dll/stage.c"), }, ), Rel( "m447dll", # Archaeologuess objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/stage.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/player_col.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m447dll/block.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m447dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m447dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m447dll/camera.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m447dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m447dll/player_col.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m447dll/block.c"), }, ), Rel( "m448Dll", # Goomba's Chip Flip objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m448Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m448Dll/main.c"), }, ), Rel( @@ -1222,28 +1222,28 @@ config.libs = [ Rel( "m450Dll", # The Final Battle! objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m450Dll/main.c"), + Object(Matching, "REL/m450Dll/main.c"), }, ), Rel( "m451Dll", # Jigsaw Jitters objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m451Dll/m451.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m451Dll/m451.c"), }, ), Rel( "m453Dll", # Challenge Booksquirm objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m453Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m453Dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m453Dll/score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m453Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m453Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m453Dll/score.c"), }, ), Rel( "m455Dll", # Rumble Fishing objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m455Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m455Dll/stage.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m455Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m455Dll/stage.c"), }, ), Rel( @@ -1274,16 +1274,16 @@ config.libs = [ Rel( "m460Dll", # Doors of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/player.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/map.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m460Dll/score.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m460Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m460Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m460Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m460Dll/score.c"), }, ), Rel( "m461Dll", # Bob-omb X-ing objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m461Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m461Dll/main.c"), }, ), Rel( @@ -1308,28 +1308,28 @@ config.libs = [ Rel( "messDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/messDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/messDll/main.c"), }, ), Rel( "mgmodedll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/mgmode.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/free_play.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/record.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/battle.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/mgmode.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/free_play.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/record.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/battle.c"), Object(NonMatching, "REL/mgmodedll/tictactoe.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/datalist.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/mgmodedll/minigame.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/minigame.c"), }, ), Rel( "modeltestDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeltestDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeltestDll/modeltest00.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeltestDll/modeltest01.c"), + Object(Matching, "REL/modeltestDll/main.c"), + Object(Matching, "REL/modeltestDll/modeltest00.c"), + Object(Matching, "REL/modeltestDll/modeltest01.c"), }, ), Rel( @@ -1392,7 +1392,7 @@ config.libs = [ Rel( "nisDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/nisDll/main.c") + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/nisDll/main.c") }, ), Rel( @@ -1412,19 +1412,19 @@ config.libs = [ Rel( "present", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/init.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/camera.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/present.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/present/common.c"), + Object(Matching, "REL/present/init.c"), + Object(Matching, "REL/present/camera.c"), + Object(Matching, "REL/present/present.c"), + Object(Matching, "REL/present/main.c"), + Object(Matching, "REL/present/common.c"), }, ), Rel( "resultDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/battle.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/resultDll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/resultDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/resultDll/battle.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/resultDll/datalist.c"), }, ), Rel( @@ -1448,7 +1448,7 @@ config.libs = [ Rel( "subchrselDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/subchrselDll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/subchrselDll/main.c"), }, ), Rel( From 74e3749b5a2ab91867856015ca6381c360408d1f Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 26 Nov 2024 20:18:02 +0100 Subject: [PATCH 052/178] configure.py fixes --- configure.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/configure.py b/configure.py index 7ef9db2f..4db092f9 100644 --- a/configure.py +++ b/configure.py @@ -465,7 +465,7 @@ config.libs = [ DolphinLib( "os", [ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OS.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "dolphin/os/OS.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSAlarm.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSAlloc.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSArena.c"), @@ -487,7 +487,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSSync.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSThread.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSTime.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/__start.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "dolphin/os/__start.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/__ppc_eabi_init.c"), ], ), @@ -837,7 +837,7 @@ config.libs = [ "bootDll", objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/bootDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/bootDll/nintendo_data.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/bootDll/language.c"), }, ), Rel( @@ -1163,9 +1163,9 @@ config.libs = [ Rel( "m443Dll", # Mario Speedwagons objects={ - Object(Matching, "REL/m443Dll/main.c"), - Object(Matching, "REL/m443Dll/map.c"), - Object(Matching, "REL/m443Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m443Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m443Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m443Dll/player.c"), }, ), Rel( From cb0cd12ab05ba725f5dcab0ba9771f2536959cda Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Tue, 26 Nov 2024 21:12:39 -0500 Subject: [PATCH 053/178] halfway done --- .vscode/settings.json | 80 ++++- config/GMPE01_00/rels/m438Dll/symbols.txt | 1 + src/REL/m438Dll/main.c | 344 ++++++---------------- 3 files changed, 162 insertions(+), 263 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 7c43f1a7..233a6160 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -22,20 +22,78 @@ "m443dll.h": "c", "object.h": "c", "executor.h": "c", - "m438dll.h": "c" + "m438dll.h": "c", + "audio.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { - "build/*/config.json": true, - "build/**/*.MAP": true, - "build.ninja": true, - ".ninja_*": true, - "objdiff.json": true, - "progress.json": true, - "report.json": true, - "compile_commands.json": true, + "build/*/config.json": true, + "build/**/*.MAP": true, + "build.ninja": true, + ".ninja_*": true, + "objdiff.json": true, + "progress.json": true, + "report.json": true, + "compile_commands.json": true }, "cmake.ignoreCMakeListsMissing": true, "editor.fontFamily": "Fira Code", - "editor.fontLigatures": true -} + "editor.fontLigatures": true, + "C_Cpp_Runner.cCompilerPath": "gcc", + "C_Cpp_Runner.cppCompilerPath": "g++", + "C_Cpp_Runner.debuggerPath": "gdb", + "C_Cpp_Runner.cStandard": "", + "C_Cpp_Runner.cppStandard": "", + "C_Cpp_Runner.msvcBatchPath": "C:/Program Files/Microsoft Visual Studio/VR_NR/Community/VC/Auxiliary/Build/vcvarsall.bat", + "C_Cpp_Runner.useMsvc": false, + "C_Cpp_Runner.warnings": [ + "-Wall", + "-Wextra", + "-Wpedantic", + "-Wshadow", + "-Wformat=2", + "-Wcast-align", + "-Wconversion", + "-Wsign-conversion", + "-Wnull-dereference" + ], + "C_Cpp_Runner.msvcWarnings": [ + "/W4", + "/permissive-", + "/w14242", + "/w14287", + "/w14296", + "/w14311", + "/w14826", + "/w44062", + "/w44242", + "/w14905", + "/w14906", + "/w14263", + "/w44265", + "/w14928" + ], + "C_Cpp_Runner.enableWarnings": true, + "C_Cpp_Runner.warningsAsError": false, + "C_Cpp_Runner.compilerArgs": [], + "C_Cpp_Runner.linkerArgs": [], + "C_Cpp_Runner.includePaths": [], + "C_Cpp_Runner.includeSearch": [ + "*", + "**/*" + ], + "C_Cpp_Runner.excludeSearch": [ + "**/build", + "**/build/**", + "**/.*", + "**/.*/**", + "**/.vscode", + "**/.vscode/**" + ], + "C_Cpp_Runner.useAddressSanitizer": false, + "C_Cpp_Runner.useUndefinedSanitizer": false, + "C_Cpp_Runner.useLeakSanitizer": false, + "C_Cpp_Runner.showCompilationTime": false, + "C_Cpp_Runner.useLinkTimeOptimization": false, + "C_Cpp_Runner.msvcSecureNoWarnings": false +} \ No newline at end of file diff --git a/config/GMPE01_00/rels/m438Dll/symbols.txt b/config/GMPE01_00/rels/m438Dll/symbols.txt index 42b61291..13ca3c7d 100644 --- a/config/GMPE01_00/rels/m438Dll/symbols.txt +++ b/config/GMPE01_00/rels/m438Dll/symbols.txt @@ -387,6 +387,7 @@ lbl_1_data_68 = .data:0x00000068; // type:object size:0x420 data:float lbl_1_data_488 = .data:0x00000488; // type:object size:0x2C lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x30 jumptable_1_data_4E4 = .data:0x000004E4; // type:object size:0x2C scope:local +lbl_1_data_510 = .data:0x00000510; // type:object size:0x4 lbl_1_data_514 = .data:0x00000514; // type:object size:0xC lbl_1_data_520 = .data:0x00000520; // type:object size:0x64 lbl_1_data_584 = .data:0x00000584; // type:object size:0x64 diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index 64c73098..3bdd8fbd 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -210,9 +210,9 @@ void fn_1_7DD8(s32 arg0, s32 *arg1); float fn_1_7EDC(float arg8, float arg9, float argA); void fn_1_8164(float *arg0, Vec *arg1); void fn_1_8C34(float *arg0, float *arg1, float *arg2, s32 arg3); -float fn_1_8EEC(float *arg0, float *arg1, float *arg2, float arg8); +float fn_1_8EEC(float arg8, float *arg0, float *arg1, float *arg2, s32 arg3); void fn_1_9040(float *arg0, Vec *arg1, float arg2[3][3], s32 arg3); -void fn_1_9420(float *arg0, float *arg1, float arg2[3][3], float arg3[3][3], s32 arg4, float arg8); +void fn_1_9420(float arg8, float *arg0, float *arg1, float arg2[3][3], float arg3[3][3], s32 arg4); float fn_1_9634(Vec *arg0); void fn_1_974(omObjData *object); float fn_1_9960(Vec *arg0, Vec *arg1, Vec *arg2); @@ -558,244 +558,78 @@ Vec lbl_1_data_68[11][8] = { { 15.000001f, 0.0f, 505.7f }, { 148.59999f, 0.0f, 393.0f }, { 0.0f, 1.0f, 0.0f }, - { 0.0f, 0.0f, 0.0f }, }, { { -198.7f, 0.0f, -122.899994f }, - { -11.599999f, 0.0f, -177.1f } + { -11.599999f, 0.0f, -177.1f }, + { 63.4f, 0.0f, -349.7f }, + { 277.09999f, 0.0f, -296.4f }, + { 397.5f, 0.0f, -470.2f }, + { 0.0f, 1.0f, 0.0f }, + }, + { + { -421.0f, 0.0f, -471.3f }, + { -270.1f, 0.0f, -460.0f }, + { -153.1f, 0.0f, -356.5f }, + { 12.4f, 0.0f, -473.99997f }, + { 0.0f, 1.0f, 0.0f }, + }, + { + { -545.10004f, 0.0f, -318.9f }, + { -469.0f, 0.0f, -154.1f }, + { -313.4, 0.0f, -170.09999f }, + { -250.0f, 0.0f, -32.8f }, + { 0.0f, 1.0f, 0.0f }, + }, + { + { -155.6f, 0.0f, 19.5f }, + { -34.3f, 0.0f, 96.6f }, + { -63.9f, 0.0f, 240.00002f }, + { 37.5f, 0.0f, 402.8f }, + { 0.0f, 1.0f, 0.0f } + }, + { + { 207.5f, 0.0f, -163.2f }, + { 270.1f, 0.0f, -104.799995f }, + { 402.19998f, 0.0f, -102.4f }, + { 511.49997f, 0.0f, -25.099998f }, + { 627.3f, 0.0f, -142.0f }, + { 0.0f, 1.0f, 0.0f } + }, + { + { -601.0f, 0.0f, 97.799995f }, + { -516.80005f, 0.0f, 60.000004f }, + { -417.7f, 0.0f, 92.9f }, + { -309.40002f, 0.0f, 76.1f }, + { 0.0f, 1.0f, 0.0f }, + }, + { + { 82.8f, 0.0f, 164.2f }, + { 179.40001f, 0.0f, 179.8f }, + { 241.00002f, 0.0f, 87.1f }, + { 323.0f, 0.0f, 38.800003f }, + { 0.0f, 1.0f, 0.0f } + }, + { + { 243.4f, 0.0f, 573.5f }, + { 227.7f, 0.0f, 461.2f }, + { 319.30002f, 0.0f, 400.6f }, + { 342.30002f, 0.0f, 310.0f }, + { 0.0f, 1.0f, 0.0f } + }, + { + { 357.69998f, 0.0f, 146.8f }, + { 418.80002f, 0.0f, 225.0f }, + { 503.2f, 0.0f, 234.69998f }, + { 548.1f, 0.0f, 321.19998f }, + { 0.0f, 1.0f, 0.0f } + }, + { + { -100.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, -100.0f }, + { 100.0f, 0.0f, 0.0f }, + { 0.0f, 1.0f, 0.0f } } -// 63.4, 0, -349.7 -// 277.09998 -// 0 -// -296.4 -// 397.5 -// 0 -// -470.2 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// -421 -// 0 -// -471.3 -// -270.1 -// 0 -// -460 -// -153.1 -// 0 -// -356.5 -// 12.4 -// 0 -// -473.99997 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// -545.10004 -// 0 -// -318.9 -// -469 -// 0 -// -154.1 -// -313.4 -// 0 -// -170.09999 -// -250 -// 0 -// -32.8 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// -155.6 -// 0 -// 19.5 -// -34.3 -// 0 -// 96.6 -// -63.9 -// 0 -// 240.00002 -// 37.5 -// 0 -// 402.8 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 207.5 -// 0 -// -163.2 -// 270.1 -// 0 -// -104.799995 -// 402.19998 -// 0 -// -102.4 -// 511.49997 -// 0 -// -25.099998 -// 627.3 -// 0 -// -142 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// -601 -// 0 -// 97.799995 -// -516.80005 -// 0 -// 60.000004 -// -417.7 -// 0 -// 92.9 -// -309.40002 -// 0 -// 76.1 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 82.8 -// 0 -// 164.2 -// 179.40001 -// 0 -// 179.8 -// 241.00002 -// 0 -// 87.1 -// 323 -// 0 -// 38.800003 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 243.4 -// 0 -// 573.5 -// 227.7 -// 0 -// 461.2 -// 319.30002 -// 0 -// 400.6 -// 342.30002 -// 0 -// 310 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 357.69998 -// 0 -// 146.8 -// 418.80002 -// 0 -// 225 -// 503.2 -// 0 -// 234.69998 -// 548.1 -// 0 -// 321.19998 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// -100 -// 0 -// 0 -// 0 -// 0 -// -100 -// 100 -// 0 -// 0 -// 0 -// 1 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 -// 0 }; void fn_1_1204(omObjData *object) { @@ -849,9 +683,8 @@ void fn_1_13A0(omObjData *object) switch (lbl_1_bss_DBA) { case 0: case 1: - case 2: - case 3: case 4: + case 5: break; case 6: lbl_1_bss_294 = 0x1E; @@ -1092,11 +925,10 @@ void fn_1_2070(omObjData *object) var_r31->unk_10.y = var_r31->unk_28.y + (var_f31 * (var_r31->unk_40.y - var_r31->unk_28.y)); var_r31->unk_10.z = var_r31->unk_28.z + (var_f31 * (var_r31->unk_40.z - var_r31->unk_28.z)); var_r31->unk_130 = var_r31->unk_134 + (var_f31 * (var_r31->unk_138 - var_r31->unk_134)); - } - else { - fn_1_9420((float *)&var_r31->unk_04, var_r31->unk_F4, (float(*)[3]) & var_r31->unk_64, var_r31->unk_88, 3, 2.0f * var_f31); - fn_1_9420((float *)&var_r31->unk_10, var_r31->unk_100, (float(*)[3]) & var_r31->unk_AC, var_r31->unk_D0, 3, 2.0f * var_f31); - var_r31->unk_130 = fn_1_8EEC(var_r31->unk_124, var_r31->unk_10C, var_r31->unk_118, 2.0f * var_f31); + } else { + fn_1_9420(2.0f * var_f31, (float *)&var_r31->unk_04, var_r31->unk_F4, (float(*)[3]) & var_r31->unk_64, var_r31->unk_88, 3); + fn_1_9420(2.0f * var_f31, (float *)&var_r31->unk_10, var_r31->unk_100, (float(*)[3]) & var_r31->unk_AC, var_r31->unk_D0, 3); + var_r31->unk_130 = fn_1_8EEC(2.0f * var_f31, var_r31->unk_124, var_r31->unk_10C, var_r31->unk_118, 3); } } CRot.x = var_r31->unk_10.x; @@ -1615,12 +1447,16 @@ void fn_1_35C0(omObjData *object) var_r31->unk_22 = var_r28; var_r31->unk_20 = var_r28; CharModelMotionShiftSet(var_r31->unk_01, object->motion[8], 0.0f, 8.0f, var_r27); - } - else if (var_r28 < 3) { - if (var_r28 < 0 || var_r31->unk_20 == 0 || CharModelMotionShiftIDGet(var_r31->unk_01) < 0) { - var_r31->unk_22 = var_r28; - var_r31->unk_20 = var_r28; - CharModelMotionShiftSet(var_r31->unk_01, object->motion[var_r31->unk_20], 0.0f, 8.0f, var_r27); + } else { + switch (var_r28) { + case 0: + case 1: + case 2: + if (var_r31->unk_20 != 0 && CharModelMotionShiftIDGet(var_r31->unk_01) >= 0) break; + default: + var_r31->unk_22 = var_r28; + var_r31->unk_20 = var_r28; + CharModelMotionShiftSet(var_r31->unk_01, object->motion[var_r31->unk_20], 0.0f, 8.0f, var_r27); } } var_r31->unk_30 = CharModelMotionMaxTimeGet(var_r31->unk_01); @@ -1728,6 +1564,7 @@ void fn_1_4724(omObjData *object) object->func = fn_1_4984; } + // void fn_1_4984(omObjData *object) // { // float sp10; @@ -3046,7 +2883,7 @@ void fn_1_8C34(float *arg0, float *arg1, float *arg2, s32 arg3) } } -float fn_1_8EEC(float *arg0, float *arg1, float *arg2, float arg8) +float fn_1_8EEC(float arg8, float *arg0, float *arg1, float *arg2, s32 arg3) { float var_f31; float var_f30; @@ -3123,7 +2960,8 @@ void fn_1_9040(float *arg0, Vec *arg1, float arg2[3][3], s32 arg3) } } -void fn_1_9420(float *arg0, float *arg1, float arg2[3][3], float arg3[3][3], s32 arg4, float arg8) + +void fn_1_9420(float arg8, float *arg0, float *arg1, float arg2[3][3], float arg3[3][3], s32 arg4) { float sp48[16]; float sp8[16]; @@ -3138,7 +2976,7 @@ void fn_1_9420(float *arg0, float *arg1, float arg2[3][3], float arg3[3][3], s32 sp48[var_r30] = arg2[var_r30][var_r29]; sp8[var_r30] = arg3[var_r30][var_r29]; } - arg0[var_r29] = fn_1_8EEC(arg1, sp48, sp8, arg8); + arg0[var_r29] = fn_1_8EEC(arg8, arg1, sp48, sp8, arg4); } } @@ -3503,6 +3341,8 @@ void fn_1_A60C(omObjData *object) object->func = fn_1_A688; } +u32 lbl_1_data_510 = 0x41C64E6D; + void fn_1_A688(omObjData *object) { } Vec lbl_1_data_514 = { -850.0f, 0.0f, -850.0f }; From fa773dcfbdd309313a3eedb3550d44062e216e0f Mon Sep 17 00:00:00 2001 From: CreateSource Date: Wed, 27 Nov 2024 10:49:58 -0500 Subject: [PATCH 054/178] complete fn_1_4984 --- src/REL/m438Dll/main.c | 209 +++++++++++++++++++---------------------- 1 file changed, 97 insertions(+), 112 deletions(-) diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index 3bdd8fbd..13c88ac0 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -178,6 +178,9 @@ typedef struct M438StructBssDE4 { M438UnkStruct2 *unk_40; } M438StructBssDE4; /* size = */ +void fn_1_4DC(omObjData *object); +void fn_1_4FC(omObjData *object); +void fn_1_974(omObjData *object); void fn_1_1174(omObjData *object); void fn_1_1204(omObjData *object); void fn_1_13A0(omObjData *object); @@ -193,9 +196,7 @@ void fn_1_35C0(omObjData *object); void fn_1_4374(omObjData *object); void fn_1_4724(omObjData *object); void fn_1_4984(omObjData *object); -void fn_1_4DC(omObjData *object); void fn_1_4F50(omObjData *object); -void fn_1_4FC(omObjData *object); void fn_1_5D4C(void *arg0); void fn_1_62BC(void *arg0); void fn_1_63B0(void *arg0); @@ -208,13 +209,12 @@ void fn_1_7D30(void); s32 fn_1_7DB4(void); void fn_1_7DD8(s32 arg0, s32 *arg1); float fn_1_7EDC(float arg8, float arg9, float argA); -void fn_1_8164(float *arg0, Vec *arg1); +void fn_1_8164(Mtx arg0, Vec *arg1); void fn_1_8C34(float *arg0, float *arg1, float *arg2, s32 arg3); float fn_1_8EEC(float arg8, float *arg0, float *arg1, float *arg2, s32 arg3); void fn_1_9040(float *arg0, Vec *arg1, float arg2[3][3], s32 arg3); void fn_1_9420(float arg8, float *arg0, float *arg1, float arg2[3][3], float arg3[3][3], s32 arg4); float fn_1_9634(Vec *arg0); -void fn_1_974(omObjData *object); float fn_1_9960(Vec *arg0, Vec *arg1, Vec *arg2); float fn_1_A14C(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3); void fn_1_A60C(omObjData *object); @@ -1565,115 +1565,100 @@ void fn_1_4724(omObjData *object) } -// void fn_1_4984(omObjData *object) -// { -// float sp10; -// float spC; -// float sp8; -// float temp_f0; -// float temp_f0_2; -// float var_f31; -// omObjData *var_r29; -// s16 var_r27; -// void *var_r28; -// void *var_r30; -// void *var_r31; +void fn_1_4984(omObjData *object) +{ + Vec sp8; + float var_f31; + s32 var_r27; + M438MainWork3 *var_r28; + M438MainWork3 *var_r30; + M438MainWork3 *var_r31; -// var_r29 = object; -// var_r31 = var_r29->data; -// switch (lbl_1_bss_DBA) { -// case 1: -// if (lbl_1_bss_4 == 0) { -// lbl_1_bss_4 = fn_1_10258(0x90, 1); -// fn_1_11018(lbl_1_bss_4, 0, 0x45000A); -// *(lbl_1_bss_DE4.unk_40 + ((lbl_1_bss_4 * 0xBC) + 0x30)) = fn_1_6A3C; -// fn_1_11890(lbl_1_bss_4, var_r31->unk_10, -80.0f, var_r31->unk_18); -// fn_1_12100(lbl_1_bss_4, 4); -// fn_1_124CC(lbl_1_bss_4, 1); -// *(lbl_1_bss_DE4.unk_40 + ((lbl_1_bss_4 * 0xBC) + 0x7C)) = 0; -// } -// break; -// case 2: -// var_r31->unk_14 = var_r31->unk_14 + var_r31->unk_2C; -// var_r31->unk_2C = var_r31->unk_2C - -2.0416667f; -// if (var_r31->unk_14 >= -350.0f) { -// HuAudFXPlay(0x6FA); -// *(lbl_1_bss_DE4.unk_40 + ((lbl_1_bss_4 * 0xBC) + 0x7C)) = 1; -// } -// if (var_r31->unk_14 > 0.0f) { -// HuAudFXEmiterPlay(0x700, var_r31 + 0x10); -// lbl_1_bss_DB2 = 0x78; -// lbl_1_bss_DBA += 1; -// var_r31->unk_30 = 20.0f; -// } -// break; -// case 3: -// var_r31->unk_14 = var_r31->unk_14 + var_r31->unk_2C; -// var_r31->unk_18 = var_r31->unk_18 + var_r31->unk_30; -// var_r31->unk_2C = var_r31->unk_2C + -2.0416667f; -// if (var_r31->unk_14 < 0.0f) { -// var_r31->unk_30 = var_r31->unk_30 - 0.5f; -// if (var_r31->unk_30 < 0.0f) { -// var_r31->unk_30 = 0.0f; -// } -// var_r31->unk_14 = 0.0f; -// if (lbl_1_bss_8 == 0) { -// HuAudFXPlay(0x6FE); -// var_r28 = lbl_1_bss_DD8->data; -// var_r28->unk_18A = 0x3C; -// var_r28->unk_150 = 25.0f; -// var_r28->unk_15C = 0.95f; -// var_r28->unk_174 = 90.0f; -// var_r28->unk_168 = 90.0f; -// for (var_r27 = 0; var_r27 < 4; var_r27++) { -// omVibrate(var_r27, 0x36, 0xC, 0); -// } -// lbl_1_bss_4 = fn_1_10258(0x3C, 1); -// fn_1_11018(lbl_1_bss_4, 0, 0x45000F); -// *(lbl_1_bss_DE4.unk_40 + ((lbl_1_bss_4 * 0xBC) + 0x30)) = fn_1_5D4C; -// fn_1_11890(lbl_1_bss_4, var_r31->unk_10, 50.0f + var_r31->unk_14, var_r31->unk_18); -// fn_1_124CC(lbl_1_bss_4, 1); -// lbl_1_bss_8++; -// } -// } -// sp8 = var_r31->unk_10; -// spC = var_r31->unk_14; -// sp10 = var_r31->unk_18; -// temp_f0 = spC + 120.00001f; -// spC = temp_f0; -// temp_f0_2 = sp10 - 300.0f; -// sp10 = temp_f0_2; -// var_f31 = CZoom; -// var_r30 = lbl_1_bss_DD8->data; -// var_r30->unk_00 = 0; -// var_r30->unk_144 = 1.0f; -// var_r30->unk_148 = 1.0f; -// var_r30->unk_1C = var_r30->unk_04; -// var_r30->unk_20 = var_r30->unk_08; -// var_r30->unk_24 = var_r30->unk_0C; -// var_r30->unk_34 = sp8; -// var_r30->unk_38 = temp_f0; -// var_r30->unk_3C = temp_f0_2; -// var_r30->unk_28 = var_r30->unk_10; -// var_r30->unk_2C = var_r30->unk_14; -// var_r30->unk_30 = var_r30->unk_18; -// var_r30->unk_40 = CRot.x; -// var_r30->unk_44 = CRot.y; -// var_r30->unk_48 = CRot.z; -// var_r30->unk_134 = var_r30->unk_130; -// var_r30->unk_138 = var_f31; -// break; -// case 5: -// Hu3DModelAttrReset(*var_r29->model, HU3D_MOTATTR_LOOP); -// Hu3DModelAttrSet(*var_r29->model, HU3D_MOTATTR_REV); -// var_r29->func = fn_1_4F50; -// var_r29->work[0] = 0xA; -// var_r29->work[1] = 0; -// break; -// } -// omSetTra(var_r29, var_r31->unk_10, var_r31->unk_14, var_r31->unk_18); -// omSetRot(var_r29, var_r31->unk_1C, var_r31->unk_20, var_r31->unk_24); -// } + var_r31 = object->data; + switch (lbl_1_bss_DBA) { + case 1: + if (lbl_1_bss_4 == 0) { + lbl_1_bss_4 = fn_1_10258(0x90, 1); + fn_1_11018(lbl_1_bss_4, 0, 0x45000A); + lbl_1_bss_DE4.unk_40[lbl_1_bss_4].unk_30 = fn_1_6A3C; + fn_1_11890(lbl_1_bss_4, var_r31->unk_10.x, -80.0f, var_r31->unk_10.z); + fn_1_12100(lbl_1_bss_4, 4); + fn_1_124CC(lbl_1_bss_4, 1); + lbl_1_bss_DE4.unk_40[lbl_1_bss_4].unk_7C = 0; + } + break; + case 2: + var_r31->unk_10.y += var_r31->unk_28.y; + var_r31->unk_28.y -= -2.0416667f; + if (var_r31->unk_10.y >= -350.0f) { + HuAudFXPlay(0x6FA); + lbl_1_bss_DE4.unk_40[lbl_1_bss_4].unk_7C = 1; + } + if (var_r31->unk_10.y > 0.0f) { + HuAudFXEmiterPlay(0x700, &var_r31->unk_10); + lbl_1_bss_DB2 = 0x78; + lbl_1_bss_DBA += 1; + var_r31->unk_28.z = 20.0f; + } + break; + case 3: + var_r31->unk_10.y += var_r31->unk_28.y; + var_r31->unk_10.z += var_r31->unk_28.z; + var_r31->unk_28.y += -2.0416667f; + if (var_r31->unk_10.y < 0.0f) { + var_r31->unk_28.z -= 0.5f; + if (var_r31->unk_28.z < 0.0f) { + var_r31->unk_28.z = 0.0f; + } + var_r31->unk_10.y = 0.0f; + if (lbl_1_bss_8 == 0) { + HuAudFXPlay(0x6FE); + var_r28 = lbl_1_bss_DD8->data; + var_r28->unk_188[1] = 0x3C; + var_r28->unk_14C[1] = 25.0f; + var_r28->unk_158[1] = 0.95f; + var_r28->unk_170[1] = 90.0f; + var_r28->unk_164[1] = 90.0f; + for (var_r27 = 0; var_r27 < 4; var_r27++) { + omVibrate(var_r27, 0x36, 0xC, 0); + } + lbl_1_bss_4 = fn_1_10258(0x3C, 1); + fn_1_11018(lbl_1_bss_4, 0, 0x45000F); + lbl_1_bss_DE4.unk_40[lbl_1_bss_4].unk_30 = fn_1_5D4C; + fn_1_11890(lbl_1_bss_4, var_r31->unk_10.x, 50.0f + var_r31->unk_10.y, var_r31->unk_10.z); + fn_1_124CC(lbl_1_bss_4, 1); + lbl_1_bss_8++; + } + } + sp8 = var_r31->unk_10; + sp8.y += 120.00001f; + sp8.z -= 300.0f; + var_f31 = CZoom; + var_r30 = lbl_1_bss_DD8->data; + var_r30->unk_00 = 0; + var_r30->unk_148 = var_r30->unk_144 = 1.0f; + var_r30->unk_1C = var_r30->unk_04; + var_r30->unk_34.x = sp8.x; + var_r30->unk_34.y = sp8.y; + var_r30->unk_34.z = sp8.z; + var_r30->unk_28 = var_r30->unk_10; + var_r30->unk_40.x = CRot.x; + var_r30->unk_40.y = CRot.y; + var_r30->unk_40.z = CRot.z; + var_r30->unk_134 = var_r30->unk_130; + var_r30->unk_138 = var_f31; + break; + case 5: + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_REV); + object->func = fn_1_4F50; + object->work[0] = 10; + object->work[1] = 0; + break; + } + omSetTra(object, var_r31->unk_10.x, var_r31->unk_10.y, var_r31->unk_10.z); + omSetRot(object, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); +} // void fn_1_4F50(omObjData *object) // { From f826ddd8fe12fb9ef397a5d3b380df8f823c7367 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sat, 30 Nov 2024 19:59:13 -0500 Subject: [PATCH 055/178] up to 7EDC --- src/REL/m438Dll/main.c | 1388 ++++++++++++++++++---------------------- 1 file changed, 634 insertions(+), 754 deletions(-) diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index 13c88ac0..77956add 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -82,7 +82,11 @@ typedef struct M438MainWork2 { typedef struct M438MainWork3 { u8 unk_00; - Vec unk_04; + s16 unk_02; + union { + Vec unk_04; + s32 unk_04s; + }; Vec unk_10; Vec unk_1C; Vec unk_28; @@ -147,18 +151,51 @@ typedef struct M438StructBss298 { Vec unk_24; } M438StructBss298; /* size = 0x30 */ +typedef struct M438UnkSubStruct { + u8 unk_00; + char unk01[0x23]; + u8 unk_24; + float unk_28; + float unk_2C; +} M438UnkSubStruct; + typedef struct M438UnkStruct { - char unk00[0x5C]; - s8 unk_5C; - char unk5D[0x3B]; + Vec unk_00; + char unk0C[0xC]; + Vec unk_18; + char unk24[0xF]; + s8 unk_33; + char unk34[0x4]; + s32 unk_38; + char unk_3C[0x18]; + s8 unk_54; + s8 unk_55; + s8 unk_56; + u8 unk_57; + M438UnkSubStruct* unk_58; + u8 unk_5C; + char unk5D[0x3]; + Vec unk_60; + Vec unk_6C; + s16 unk_78; + s16 unk_7A; + char unk7C[0x1C]; } M438UnkStruct; /* size = 0x98 */ typedef struct M438UnkStruct2 { - char unk00[0x30]; - void *unk_30; // TODO type + s16 unk_00; + s16 unk_02; + char unk04[0x8]; + Vec unk_0C; + char unk18[0xC]; + Vec unk_24; + void (*unk_30)(struct M438UnkStruct2*); char unk34[8]; M438UnkStruct *unk_3C; - char unk40[0x3C]; + char unk40[0x20]; + u8 unk_60; + char unk61[0x3]; + char unk64[0x18]; s16 unk_7C; s16 unk_7E; float unk_80; @@ -197,11 +234,11 @@ void fn_1_4374(omObjData *object); void fn_1_4724(omObjData *object); void fn_1_4984(omObjData *object); void fn_1_4F50(omObjData *object); -void fn_1_5D4C(void *arg0); -void fn_1_62BC(void *arg0); -void fn_1_63B0(void *arg0); -void fn_1_6A3C(void *arg0); -void fn_1_7300(void *arg0); +void fn_1_5D4C(M438UnkStruct2 *arg0); +void fn_1_62BC(M438UnkStruct2 *arg0); +void fn_1_63B0(M438UnkStruct2 *arg0); +void fn_1_6A3C(M438UnkStruct2 *arg0); +void fn_1_7300(M438UnkStruct2 *arg0); void fn_1_7B58(omObjData *object); void fn_1_7BBC(void); void *fn_1_7BFC(s32 arg0); @@ -711,7 +748,7 @@ void fn_1_13A0(omObjData *object) } for (var_r28 = 0, var_r26 = 0; var_r26 < var_r27; var_r28++) { var_r25 = sp8[var_r28]; - var_r24 = (s32)(80.0f * (0.000015258789f * fn_1_7DB4())) + 0x3C; + var_r24 = (s32)(80.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 0x3C; for (var_r31 = lbl_1_bss_298, var_r30 = 0; var_r30 < 0x30; var_r30++, var_r31++) { if (var_r31->unk_02 == var_r25) { if (var_r31->unk_00 != 0) { @@ -1101,7 +1138,7 @@ void fn_1_2964(omObjData *object) var_r31->unk_0A = 0; var_r28 = object->work[1]; var_r31->unk_6C.x = lbl_1_data_4B4[var_r28].x; - var_r31->unk_6C.y = lbl_1_data_4B4[var_r28].y + 100.0f * (0.000030517578f * (fn_1_7DB4() - 0x8000)); + var_r31->unk_6C.y = lbl_1_data_4B4[var_r28].y + 100.0f * ((1.0f / 32768.0f) * (fn_1_7DB4() - 0x8000)); var_r31->unk_6C.z = lbl_1_data_4B4[var_r28].z; var_r31->unk_84 = var_r31->unk_88 = var_r31->unk_8C = 0.0f; var_r31->unk_78 = var_r31->unk_7C = var_r31->unk_80 = 0.0f; @@ -1613,12 +1650,7 @@ void fn_1_4984(omObjData *object) var_r31->unk_10.y = 0.0f; if (lbl_1_bss_8 == 0) { HuAudFXPlay(0x6FE); - var_r28 = lbl_1_bss_DD8->data; - var_r28->unk_188[1] = 0x3C; - var_r28->unk_14C[1] = 25.0f; - var_r28->unk_158[1] = 0.95f; - var_r28->unk_170[1] = 90.0f; - var_r28->unk_164[1] = 90.0f; + fn_1_28E4(1, 0x3C, 25.0f, 0.95f, 90.0f); for (var_r27 = 0; var_r27 < 4; var_r27++) { omVibrate(var_r27, 0x36, 0xC, 0); } @@ -1660,743 +1692,593 @@ void fn_1_4984(omObjData *object) omSetRot(object, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); } -// void fn_1_4F50(omObjData *object) -// { -// Vec sp18; -// float var_f24; -// float var_f25; -// float var_f26; -// float var_f27; -// float var_f28; -// float var_f29; -// float var_f30; -// float var_f31; -// omObjData *var_r30; -// s16 temp_r0; -// s16 temp_r3_3; -// s16 temp_r6; -// s16 var_r28; -// s32 temp_r3_2; -// s32 var_r26; -// u8 temp_r3; -// void *var_r27; -// void *var_r29; -// void *var_r31; - -// var_r30 = object; -// var_r31 = var_r30->data; -// switch (lbl_1_bss_DBA) { -// case 7: -// temp_r3 = var_r31->unk_00; -// switch (temp_r3) { -// case 0: -// var_r31->unk_34 = var_r31->unk_10; -// var_r31->unk_38 = var_r31->unk_14; -// var_r31->unk_3C = var_r31->unk_18; -// Hu3DMotionShiftSet(*var_r30->model, var_r30->motion->unk_06, 0.0f, 8.0f, 0); -// var_r31->unk_00 = var_r31->unk_00 + 1; - -// case 1: -// var_r31->unk_34 = var_r31->unk_10; -// var_r31->unk_38 = var_r31->unk_14; -// var_r31->unk_3C = var_r31->unk_18; -// var_r28 = 0; -// var_r26 = 0; -// loop_21: -// if (var_r28 < 4) { -// var_r29 = lbl_1_bss_DC4[var_r28]->data; -// if ((var_r29->unk_07 != 0) && ((var_r29->unk_07 & 2) == 0)) { -// VECSubtract(var_r29 + 0x6C, var_r31 + 0x10, &sp18); -// temp_r3_2 = var_r26; -// var_r26++; -// (&sp8[0])[temp_r3_2] = atan2d(sp18, sp18.z); -// } -// var_r28++; -// goto loop_21; -// } -// var_r31->unk_20 = var_r31->unk_20 + (18.0f + var_r30->work[1]); -// if (var_r31->unk_20 > 180.0f) { -// var_r31->unk_20 = var_r31->unk_20 - 360.0f; -// } -// if (var_r31->unk_20 <= -180.0f) { -// var_r31->unk_20 = var_r31->unk_20 + 360.0f; -// } -// var_r28 = 0; -// loop_35: -// if (var_r28 >= var_r26) { } -// else { -// var_f31 = fn_1_E5A4((&sp8[0])[var_r28], var_r30->rot.y); -// if (var_f31 < 0.0f) { -// var_f27 = -var_f31; -// } -// else { -// var_f27 = var_f31; -// } -// if (!(var_f27 > (20.0f + var_r30->work[1])) -// && ((var_r30->work[0] -= 1, ((var_r30->work[0] == 0) != 0)) || ((fn_1_7DB4() & 0xF) == 0))) { -// var_r31->unk_08 = (&sp8[0])[var_r28]; -// var_r31->unk_20 = (&sp8[0])[var_r28]; -// var_r31->unk_2C = 16.333334f; -// var_r31->unk_0C = 6.0 + (0.5 * var_r30->work[1]); -// var_r31->unk_34 = var_r31->unk_10; -// var_r31->unk_38 = var_r31->unk_14; -// var_r31->unk_3C = var_r31->unk_18; -// var_r31->unk_40 = 20.0f; -// var_r31->unk_44 = 0.0f; -// var_r31->unk_02 = 0x1E; -// Hu3DMotionShiftSet(*var_r30->model, var_r30->motion->unk_00, 0.0f, 8.0f, 0x40000002); -// var_r31->unk_00 = var_r31->unk_00 + 1; -// } -// else { -// var_r28++; -// goto loop_35; -// } -// } -// break; -// case 2: -// var_r31->unk_44 = var_r31->unk_44 + 10.0f; -// if (var_r31->unk_44 > 90.0f) { -// var_r31->unk_44 = 0.0f; -// } -// var_f29 = cosd(var_r31->unk_44); -// var_r31->unk_1C = var_r31->unk_40 * var_f29; -// var_r31->unk_10 = var_r31->unk_34 + ((50.0f * var_f29) * sind(var_r31->unk_20)); -// var_r31->unk_18 = var_r31->unk_3C + ((50.0f * var_f29) * cosd(var_r31->unk_20)); -// temp_r0 = var_r31->unk_02 - 1; -// var_r31->unk_02 = temp_r0; -// if (temp_r0 == 0) { -// HuAudFXEmiterPlay(0x700, var_r31 + 0x10); -// Hu3DModelAttrReset(*var_r30->model, HU3D_MOTATTR_PAUSE); -// Hu3DModelAttrSet(*var_r30->model, HU3D_MOTATTR_LOOP); -// var_r31->unk_1C = 0.0f; -// var_r31->unk_00 = var_r31->unk_00 + 1; -// } -// break; -// case 3: -// var_r31->unk_0C = var_r31->unk_0C + 0.5; -// var_r31->unk_2C = var_r31->unk_2C + -3.0625f; -// var_f28 = var_r31->unk_0C + (0.8f * var_r31->unk_2C); -// var_r31->unk_28 = var_f28 * sind(var_r31->unk_08); -// var_r31->unk_30 = var_f28 * cosd(var_r31->unk_08); -// var_r31->unk_10 = var_r31->unk_10 + var_r31->unk_28; -// var_r31->unk_14 = var_r31->unk_14 + var_r31->unk_2C; -// var_r31->unk_18 = var_r31->unk_18 + var_r31->unk_30; -// var_r31->unk_34 = var_r31->unk_10; -// var_r31->unk_38 = var_r31->unk_14; -// var_r31->unk_3C = var_r31->unk_18; -// if (var_r31->unk_14 < 0.0f) { -// var_r31->unk_14 = 0.0f; -// var_r31->unk_2C = 16.333334f; -// } -// sp18 = var_r31->unk_10; -// sp18.y = var_r31->unk_14; -// sp18.z = var_r31->unk_18; -// sp18.y = 0.0f; -// var_f30 = VECMag(&sp18); -// if (!(var_f30 <= 700.0f)) { -// var_r31->unk_02 = 1; -// if (fn_1_DA64(atan2d(sp18, sp18.z)) != 0) { -// var_r31->unk_02 = 0x78; -// for (var_r28 = 0; var_r28 < 4; var_r28++) { -// var_r29 = lbl_1_bss_DC4[var_r28]->data; -// if ((var_r29->unk_07 != 0) && ((var_r29->unk_07 & 2) == 0)) { -// omVibrate(var_r28, 0xC, 4, 2); -// } -// } -// var_r27 = lbl_1_bss_DD8->data; -// var_r27->unk_188 = 0x3C; -// var_r27->unk_14C = 25.0f; -// var_r27->unk_158 = 0.95f; -// var_r27->unk_170 = 90.0f; -// var_r27->unk_164 = 90.0f; -// HuAudFXEmiterPlay(0x6FC, var_r31 + 0x10); -// HuAudFXPlay(0x6FE); -// } -// fn_1_9634(&sp18); -// var_r31->unk_10 = 700.0f * sp18; -// var_r31->unk_18 = 700.0f * sp18.z; -// var_r31->unk_40 = var_r31->unk_1C; -// var_r31->unk_44 = var_r31->unk_20; -// var_r31->unk_48 = var_r31->unk_24; -// var_r31->unk_00 = var_r31->unk_00 + 1; -// } -// break; -// case 4: -// var_r31->unk_2C = var_r31->unk_2C + -3.0625f; -// var_r31->unk_14 = var_r31->unk_14 + var_r31->unk_2C; -// if (!(var_r31->unk_14 > 0.0f)) { -// var_r31->unk_14 = 0.0f; -// var_r31->unk_34 = var_r31->unk_10; -// var_r31->unk_38 = var_r31->unk_14; -// var_r31->unk_3C = var_r31->unk_18; -// Hu3DModelAttrReset(*var_r30->model, HU3D_MOTATTR_LOOP); -// Hu3DModelAttrSet(*var_r30->model, HU3D_MOTATTR_REV); -// var_r31->unk_44 = var_r31->unk_44 + 8.0f; -// var_r31->unk_40 = 10.0 * sind(var_r31->unk_44); -// var_r31->unk_48 = 10.0 * cosd(var_r31->unk_44); -// mtxRot(&sp24[0], 0.0f, 360.0f - var_r31->unk_08, var_r31->unk_48); -// mtxRotCat(&sp24[0], var_r31->unk_40, 0.0f, 0.0f); -// fn_1_8164(&sp24[0], var_r31 + 0x1C); -// temp_r3_3 = var_r31->unk_02 - 1; -// var_r31->unk_02 = temp_r3_3; -// if (temp_r3_3 == 0) { -// var_r31->unk_24 = 0.0f; -// var_r31->unk_1C = 0.0f; -// var_r31->unk_20 = var_r31->unk_08; -// var_r30->work[0] = 0.5f * (lbl_1_bss_DB4 / 60.0f); -// var_r30->work[1] += 1; -// var_r31->unk_00 = 0; -// } -// } -// break; -// } -// break; -// case 8: -// var_r31->unk_24 = 0.0f; -// var_r31->unk_1C = 0.0f; -// Hu3DModelAttrReset(*var_r30->model, HU3D_MOTATTR_LOOP); -// Hu3DModelAttrSet(*var_r30->model, HU3D_MOTATTR_REV); -// break; -// case 9: -// var_r31->unk_20 = fn_1_7EDC(var_r31->unk_20, 0.0f, 0.9f); -// break; -// case 10: -// if (var_r31->unk_04 == 0) { -// Hu3DModelAttrReset(*var_r30->model, HU3D_MOTATTR_PAUSE | HU3D_MOTATTR_REV); -// Hu3DMotionSet(*var_r30->model, var_r30->motion->unk_02); -// Hu3DMotionSpeedSet(*var_r30->model, 1.0f); -// Hu3DModelAttrSet(*var_r30->model, HU3D_MOTATTR_LOOP); -// var_r31->unk_04 = 1; -// } -// break; -// } -// if (lbl_1_bss_DBA == 7) { -// var_r28 = 0; -// var_r26 = 0; -// loop_72: -// if (var_r28 < 4) { -// var_r29 = lbl_1_bss_DC4[var_r28]->data; -// VECSubtract(var_r29 + 0x6C, var_r31 + 0x10, &sp18); -// var_f30 = VECMag(&sp18); -// if (!(var_f30 >= 200.0f) && (var_r29->unk_20 != 7)) { -// omVibrate(var_r29->unk_00, 0xC, 4, 2); -// var_r29->unk_07 = var_r29->unk_07 | 2; -// var_r29->unk_0D = 0; -// var_r29->unk_20 = 7; -// var_r29->unk_28 = atan2d(sp18, sp18.z); -// if (var_r29->unk_28 >= 360.0f) { -// var_r29->unk_28 = var_r29->unk_28 - 360.0f; -// } -// var_f26 = fn_1_E5A4(var_r29->unk_28, var_r29->unk_7C); -// var_f25 = fabs(var_f26); -// var_f24 = var_f25; -// if (var_f24 > 90.0) { -// var_r29->unk_7C = 180.0f + var_r29->unk_28; -// var_r29->unk_14 = 0; -// } -// else { -// var_r29->unk_7C = var_r29->unk_28; -// var_r29->unk_14 = 1; -// } -// var_r29->unk_24 = 10.0f; -// var_r29->unk_88 = 53.083336f; -// if (lbl_1_bss_DAA[var_r28] == 0) { -// temp_r6 = lbl_1_bss_DA8; -// lbl_1_bss_DA8 = temp_r6 - 1; -// lbl_1_bss_DAA[var_r28] = temp_r6; -// } -// } -// var_r28++; -// goto loop_72; -// } -// } -// omSetTra(var_r30, var_r31->unk_10, var_r31->unk_14, var_r31->unk_18); -// omSetRot(var_r30, var_r31->unk_1C, var_r31->unk_20, var_r31->unk_24); -// } - -// void fn_1_5D4C(void *arg0) -// { -// s16 sp8; -// float var_f26; -// float var_f27; -// float var_f28; -// float var_f29; -// float var_f30; -// float var_f31; -// s32 var_r29; -// u8 temp_r0; -// void *var_r30; -// void *var_r31; - -// var_r30 = arg0; -// sp8 = 0; -// temp_r0 = var_r30->unk_60; -// switch (temp_r0) { -// case 0: -// var_f27 = 360.0f / var_r30->unk_02; -// for (var_r31 = var_r30->unk_3C; var_r29 = 0; var_r31 < var_r30->unk_02; var_r29++; var_r31 += 0x98) { -// var_f26 = 0.8f + (0.1f * (2.0f * (0.000030517578f * (fn_1_7DB4() - 0x8000)))); -// var_r31->unk_6C = sind((var_f27 * var_r29)) * var_f26; -// var_r31->unk_70 = 0.0f; -// var_f26 = 0.8f + (0.1f * (2.0f * (0.000030517578f * (fn_1_7DB4() - 0x8000)))); -// var_r31->unk_74 = cosd((var_f27 * var_r29)) * var_f26; -// var_r31->unk_00 = 40.0f * var_r31->unk_6C; -// var_r31->unk_04 = 6.0f; -// var_r31->unk_08 = 40.0f * var_r31->unk_74; -// var_f29 = 0.01f * (100.0f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_54 = 80.0f + (60.0f * var_f29); -// var_r31->unk_55 = 64.0f + (60.0f * var_f29); -// var_r31->unk_56 = 56.0f + (60.0f * var_f29); -// } -// var_r30->unk_7C = 0x30; -// var_r30->unk_60 = var_r30->unk_60 + 1; - -// case 1: -// var_r30->unk_7C = var_r30->unk_7C - 1; -// var_f31 = (48.0f - var_r30->unk_7C) / 48.0f; -// var_f28 = var_r30->unk_7C / 48.0f; -// for (var_r31 = var_r30->unk_3C; var_r29 = 0; var_r31 < var_r30->unk_02; var_r29++; var_r31 += 0x98) { -// var_r31->unk_00 = var_r31->unk_00 + (12.5f * var_f28 * var_r31->unk_6C); -// var_r31->unk_08 = var_r31->unk_08 + (12.5f * var_f28 * var_r31->unk_74); -// var_f30 = 2.4f + (6.0f * var_f31); -// var_r31->unk_18 = var_f30; -// var_r31->unk_1C = var_f30; -// var_r31->unk_20 = var_f30; -// var_r31->unk_57 = 96.0f * (1.0f - (var_f31 * var_f31)); -// } -// if (var_r30->unk_7C == 0) { -// var_r30->unk_60 = var_r30->unk_60 + 1; -// return; -// } -// return; -// case 2: -// fn_1_107BC(var_r30->unk_00); -// break; -// } -// } - -void fn_1_62BC(void *arg0) +void fn_1_4F50(omObjData *object) { - // s16 sp8; + Mtx sp24; + Vec sp18; + float sp8[4]; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f25; + s32 var_r26; + M438MainWork3 *var_r27; + s32 var_r28; + M438MainWork *var_r29; + M438MainWork3 *var_r31; - // void *var_r31; - // void *var_r30; - - // var_r30 = arg0; - // sp8 = 0; - // switch (var_r30->unk_60) { - // case 0: - // var_r31 = var_r30->unk_3C; - // var_r31->unk_70 = 5.0f; - // var_r31->unk_6C *= -2.0f; - // var_r31->unk_74 *= -2.0f; - // var_r30->unk_60++; - - // case 1: - // var_r31 = var_r30->unk_3C; - // var_r31->unk_00 += var_r31->unk_6C; - // var_r31->unk_04 += var_r31->unk_70; - // var_r31->unk_08 += var_r31->unk_74; - // return; - // case 2: - // fn_1_107BC(var_r30->unk_00); - // return; - // } + var_r31 = object->data; + switch (lbl_1_bss_DBA) { + case 7: + switch (var_r31->unk_00) { + case 0: + var_r31->unk_34 = var_r31->unk_10; + Hu3DMotionShiftSet(object->model[0], object->motion[3], 0.0f, 8.0f, 0); + var_r31->unk_00++; + case 1: + var_r31->unk_34 = var_r31->unk_10; + + for (var_r28 = 0, var_r26 = 0; var_r28 < 4; var_r28++) { + var_r29 = lbl_1_bss_DC4[var_r28]->data; + if ((var_r29->unk_07 != 0) && ((var_r29->unk_07 & 2) == 0)) { + VECSubtract(&var_r29->unk_6C, &var_r31->unk_10, &sp18); + sp8[var_r26++] = atan2d(sp18.x, sp18.z); + } + } + var_r31->unk_1C.y += 18.0f + object->work[1]; + if (var_r31->unk_1C.y > 180.0f) { + var_r31->unk_1C.y -= 360.0f; + } + if (var_r31->unk_1C.y <= -180.0f) { + var_r31->unk_1C.y += 360.0f; + } + + for (var_r28 = 0; var_r28 < var_r26; var_r28++) { + var_f31 = fn_1_E5A4(sp8[var_r28], object->rot.y); + if (var_f31 < 0.0f) { + var_f27 = -var_f31; + } else { + var_f27 = var_f31; + } + if (var_f27 > (20.0f + object->work[1])) continue; + object->work[0]--; + if (object->work[0] != 0 && ((fn_1_7DB4() & 0xF) != 0)) continue; + var_r31->unk_04.y = sp8[var_r28]; + var_r31->unk_1C.y = sp8[var_r28]; + var_r31->unk_28.y = 16.333334f; + var_r31->unk_04.z = 6.0 + (0.5 * object->work[1]); + var_r31->unk_34 = var_r31->unk_10; + var_r31->unk_40.x = 20.0f; + var_r31->unk_40.y = 0.0f; + var_r31->unk_02 = 30; + Hu3DMotionShiftSet(object->model[0], object->motion[0], 0.0f, 8.0f, 0x40000002); + var_r31->unk_00++; + break; + } + break; + case 2: + var_r31->unk_40.y += 10.0f; + if (var_r31->unk_40.y > 90.0f) { + var_r31->unk_40.y = 0.0f; + } + var_f29 = cosd(var_r31->unk_40.y); + var_r31->unk_1C.x = var_r31->unk_40.x * var_f29; + var_r31->unk_10.x = var_r31->unk_34.x + ((50.0f * var_f29) * sind(var_r31->unk_1C.y)); + var_r31->unk_10.z = var_r31->unk_34.z + ((50.0f * var_f29) * cosd(var_r31->unk_1C.y)); + if (--var_r31->unk_02 == 0) { + HuAudFXEmiterPlay(0x700, &var_r31->unk_10); + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + var_r31->unk_1C.x = 0.0f; + var_r31->unk_00++; + } + break; + case 3: + var_r31->unk_04.z += 0.5; + var_r31->unk_28.y += -3.0625f; + var_f28 = var_r31->unk_04.z + (0.8f * var_r31->unk_28.y); + var_r31->unk_28.x = var_f28 * sind(var_r31->unk_04.y); + var_r31->unk_28.z = var_f28 * cosd(var_r31->unk_04.y); + var_r31->unk_10.x += var_r31->unk_28.x; + var_r31->unk_10.y += var_r31->unk_28.y; + var_r31->unk_10.z += var_r31->unk_28.z; + var_r31->unk_34 = var_r31->unk_10; + if (var_r31->unk_10.y < 0.0f) { + var_r31->unk_10.y = 0.0f; + var_r31->unk_28.y = 16.333334f; + } + sp18 = var_r31->unk_10; + sp18.y = 0.0f; + var_f30 = VECMag(&sp18); + if (var_f30 <= 700.0f) break; + var_r31->unk_02 = 1; + if (fn_1_DA64(atan2d(sp18.x, sp18.z)) != 0) { + var_r31->unk_02 = 0x78; + for (var_r28 = 0; var_r28 < 4; var_r28++) { + var_r29 = lbl_1_bss_DC4[var_r28]->data; + if ((var_r29->unk_07 != 0) && ((var_r29->unk_07 & 2) == 0)) { + omVibrate(var_r28, 0xC, 4, 2); + } + } + fn_1_28E4(0, 0x3C, 25.0f, 0.95f, 90.0f); + HuAudFXEmiterPlay(0x6FC, &var_r31->unk_10); + HuAudFXPlay(0x6FE); + } + fn_1_9634(&sp18); + var_r31->unk_10.x = 700.0f * sp18.x; + var_r31->unk_10.z = 700.0f * sp18.z; + var_r31->unk_40 = var_r31->unk_1C; + var_r31->unk_00++; + break; + case 4: + var_r31->unk_28.y += -3.0625f; + var_r31->unk_10.y += var_r31->unk_28.y; + if (var_r31->unk_10.y > 0.0f) break; + var_r31->unk_10.y = 0.0f; + var_r31->unk_34 = var_r31->unk_10; + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_REV); + var_r31->unk_40.y += 8.0f; + var_r31->unk_40.x = 10.0 * sind(var_r31->unk_40.y); + var_r31->unk_40.z = 10.0 * cosd(var_r31->unk_40.y); + mtxRot(sp24, 0.0f, 360.0f - var_r31->unk_04.y, var_r31->unk_40.z); + mtxRotCat(sp24, var_r31->unk_40.x, 0.0f, 0.0f); + fn_1_8164(sp24, &var_r31->unk_1C); + if (--var_r31->unk_02 == 0) { + var_r31->unk_1C.x = var_r31->unk_1C.z = 0.0f; + var_r31->unk_1C.y = var_r31->unk_04.y; + object->work[0] = 0.5f * (lbl_1_bss_DB4 / 60.0f); + object->work[1]++; + var_r31->unk_00 = 0; + } + break; + } + break; + case 8: + var_r31->unk_1C.x = var_r31->unk_1C.z = 0.0f; + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_REV); + break; + case 9: + var_r31->unk_1C.y = fn_1_7EDC(var_r31->unk_1C.y, 0.0f, 0.9f); + break; + case 10: + if (var_r31->unk_04s == 0) { + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_PAUSE | HU3D_MOTATTR_REV); + Hu3DMotionSet(object->model[0], object->motion[1]); + Hu3DMotionSpeedSet(object->model[0], 1.0f); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + var_r31->unk_04s = 1; + } + break; + } + if (lbl_1_bss_DBA == 7) { + for (var_r28 = 0, var_r26 = 0; var_r28 < 4; var_r28++) { + var_r29 = lbl_1_bss_DC4[var_r28]->data; + VECSubtract(&var_r29->unk_6C, &var_r31->unk_10, &sp18); + var_f30 = VECMag(&sp18); + if (var_f30 >= 200.0f || var_r29->unk_20 == 7) continue; + omVibrate(var_r29->unk_00, 0xC, 4, 2); + var_r29->unk_07 |= 2; + var_r29->unk_0D = 0; + var_r29->unk_20 = 7; + var_r29->unk_28 = atan2d(sp18.x, sp18.z); + if (var_r29->unk_28 >= 360.0f) { + var_r29->unk_28 -= 360.0f; + } + if (fabs(fn_1_E5A4(var_r29->unk_28, var_r29->unk_7C)) > 90.0) { + var_r29->unk_7C = 180.0f + var_r29->unk_28; + var_r29->unk_14 = 0; + } else { + var_r29->unk_7C = var_r29->unk_28; + var_r29->unk_14 = 1; + } + var_r29->unk_24 = 10.0f; + var_r29->unk_88 = 53.083336f; + if (lbl_1_bss_DAA[var_r28] == 0) { + lbl_1_bss_DAA[var_r28] = lbl_1_bss_DA8--; + } + } + } + omSetTra(object, var_r31->unk_10.x, var_r31->unk_10.y, var_r31->unk_10.z); + omSetRot(object, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); } -// void fn_1_63B0(void *arg0) -// { -// float sp10; -// float spC; -// float sp8; -// float temp_f0; -// float temp_f0_2; -// float temp_f0_3; -// float var_f28; -// float var_f29; -// float var_f30; -// float var_f31; -// double var_f27; -// s16 temp_r0_2; -// s32 var_r29; -// u8 temp_r0; -// void *var_r30; -// void *var_r31; +void fn_1_5D4C(M438UnkStruct2 *arg0) { + s16 sp8; + f32 temp_f31; + f32 temp_f30; + f32 temp_f29; + f32 temp_f28; + f32 temp_f27; + s32 var_r29; + M438UnkStruct* var_r31; -// var_r30 = arg0; -// for (var_r31 = var_r30->unk_3C; var_r29 = 0; var_r31 < var_r30->unk_02; var_r29++; var_r31 += 0x98) { -// temp_r0 = var_r31->unk_5C; -// switch (temp_r0) { -// case 0: -// if ((atan2d(var_r30->unk_80, var_r30->unk_84)) < 0.0) { -// var_f27 = -(atan2d(var_r30->unk_80, var_r30->unk_84)); -// } -// else { -// var_f27 = atan2d(var_r30->unk_80, var_r30->unk_84); -// } -// var_f29 = var_f27; -// if (var_f29 > 90.0f) { -// var_f29 = 180.0f - var_f29; -// } -// var_f28 = 40.0f * (0.1f + ((0.9f * var_f29) / 90.0f)); -// var_f31 = (0.5f * var_f28) + ((var_r30->unk_88 - var_f28) * (0.000015258789f * fn_1_7DB4())); -// temp_f0 = var_f31 * var_r30->unk_80; -// sp8 = temp_f0; -// temp_f0_2 = var_f31 * var_r30->unk_84; -// sp10 = temp_f0_2; -// var_r31->unk_00 = temp_f0; -// var_r31->unk_04 = 0.0f; -// var_r31->unk_08 = temp_f0_2; -// var_f31 = 0.0f; -// spC = 0.0f; -// loop_14: -// if (var_f31 < (var_r30->unk_8C - 40.0f)) { -// temp_f0_3 = spC + 0.8f; -// spC = temp_f0_3; -// var_f31 += temp_f0_3; -// goto loop_14; -// } -// var_r31->unk_6C = 0.0f; -// var_r31->unk_70 = spC + (1.5f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_74 = 0.0f; -// if ((fn_1_7DB4() & 7) != 0) { -// var_r31->unk_33 = 1; -// var_r31->unk_54 = 0x40; -// var_r31->unk_55 = 0x10; -// var_r31->unk_56 = 4; -// var_r31->unk_57 = 0xFF; -// var_f30 = 3.75f + (1.75f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_60 = var_f30 * (0.1f + ((0.9f * var_f29) / 90.0f)); -// var_r31->unk_68 = var_f30; -// var_r31->unk_64 = var_f30; -// } -// else { -// var_r31->unk_33 = 0; -// var_r31->unk_54 = 0; -// var_r31->unk_55 = 0; -// var_r31->unk_56 = 0; -// var_r31->unk_57 = 0xFF; -// var_f30 = 0.25f + (0.25f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_64 = 1.5f * var_f30; -// var_r31->unk_68 = var_f30; -// var_r31->unk_60 = var_f30; -// } -// var_r31->unk_58->unk_24 = 0; -// var_r31->unk_78 = (60.0f * (0.000015258789f * fn_1_7DB4())) + 1; -// var_r31->unk_5C = var_r31->unk_5C + 1; + sp8 = 0; + switch (arg0->unk_60) { /* irregular */ + case 0: + temp_f27 = 360.0f / arg0->unk_02; + + var_r31 = &arg0->unk_3C[0]; + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { + var_r31->unk_6C.x = sind(temp_f27 * var_r29) * (0.8f + (0.1f * (2.0f * ((1.0f / 32768.0f) * (fn_1_7DB4() - 0x8000))))); + var_r31->unk_6C.y = 0.0f; + var_r31->unk_6C.z = cosd(temp_f27 * var_r29) * (0.8f + (0.1f * (2.0f * ((1.0f / 32768.0f) * (fn_1_7DB4() - 0x8000))))); + var_r31->unk_00.x = (40.0f * var_r31->unk_6C.x); + var_r31->unk_00.y = 6.0f; + var_r31->unk_00.z = (40.0f * var_r31->unk_6C.z); + temp_f29 = 0.01f * (100.0f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_54 = (80.0f + 60.0f * temp_f29); + var_r31->unk_55 = (64.0f + 60.0f * temp_f29); + var_r31->unk_56 = (56.0f + 60.0f * temp_f29); + } + arg0->unk_7C = 0x30; + arg0->unk_60++; + case 1: + arg0->unk_7C--; + temp_f31 = (48.0f - arg0->unk_7C) / 48.0f; + temp_f28 = arg0->unk_7C / 48.0f; + + var_r31 = arg0->unk_3C; + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { + var_r31->unk_00.x += 12.5f * temp_f28 * var_r31->unk_6C.x; + var_r31->unk_00.z += 12.5f * temp_f28 * var_r31->unk_6C.z; + temp_f30 = 2.4f + (6.0f * temp_f31); + var_r31->unk_18.x = temp_f30; + var_r31->unk_18.y = temp_f30; + var_r31->unk_18.z = temp_f30; + var_r31->unk_57 = (96.0f * (1.0f - (temp_f31 * temp_f31))); + } + if (arg0->unk_7C == 0) { + arg0->unk_60++; + } + break; + case 2: + fn_1_107BC(arg0->unk_00); + return; + } +} -// case 1: -// temp_r0_2 = var_r31->unk_78 - 1; -// var_r31->unk_78 = temp_r0_2; -// if (temp_r0_2 == 0) { -// var_r31->unk_58->unk_24 = 0x11; -// var_r31->unk_58->unk_28 = 0.5f; -// var_r31->unk_58->unk_2C = 0.0f; -// var_r31->unk_58->unk_00 = 0; -// var_r31->unk_5C = var_r31->unk_5C + 1; -// } -// break; -// case 2: -// var_r31->unk_00 = var_r31->unk_00 + var_r31->unk_6C; -// var_r31->unk_04 = var_r31->unk_04 + var_r31->unk_70; -// var_r31->unk_08 = var_r31->unk_08 + var_r31->unk_74; -// if (var_r31->unk_04 < 0.0f) { -// var_r31->unk_04 = 0.0f; -// } -// var_r31->unk_60 = var_r31->unk_60 * 0.95f; -// var_r31->unk_64 = var_r31->unk_64 * 0.95f; -// var_r31->unk_68 = var_r31->unk_68 * 0.95f; -// var_r31->unk_70 = var_r31->unk_70 - 0.8f; -// if ((var_r31->unk_58->unk_24 & 8) != 0) { -// var_r31->unk_5C = 0; -// } -// break; -// } -// var_r31->unk_18 = var_r31->unk_60 * var_r30->unk_90; -// var_r31->unk_1C = var_r31->unk_64 * var_r30->unk_90; -// var_r31->unk_20 = var_r31->unk_68 * var_r30->unk_90; -// } -// } +void fn_1_62BC(M438UnkStruct2 *arg0) +{ + s16 sp8; -// void fn_1_6A3C(void *arg0) -// { -// float sp10; -// float spC; -// float sp8; -// float temp_f0; -// float temp_f0_2; -// float temp_f0_3; -// float temp_f0_4; -// float var_f29; -// float var_f30; -// float var_f31; -// s16 temp_r0_2; -// s16 var_r29; -// s32 var_r27; -// s32 var_r28; -// u8 temp_r0; -// void *var_r30; -// void *var_r31; + M438UnkStruct *var_r31; + + sp8 = 0; + switch (arg0->unk_60) { + case 0: + var_r31 = arg0->unk_3C; + var_r31->unk_6C.y = 5.0f; + var_r31->unk_6C.x *= -2.0f; + var_r31->unk_6C.z *= -2.0f; + arg0->unk_60++; -// var_r30 = arg0; -// var_r31 = var_r30->unk_3C; -// var_r28 = 0; -// var_r27 = 0; -// loop_35: -// if (var_r27 < var_r30->unk_02) { -// if ((var_r30->unk_7C != 0) && (var_r31->unk_7A == 0)) { -// var_r31->unk_5C = 0; -// } -// temp_r0 = var_r31->unk_5C; -// switch (temp_r0) { -// case 0: -// if (var_r30->unk_7C != 0) { -// var_f30 = (180.0f * (0.000015258789f * fn_1_7DB4())) - 90.0f; -// var_f29 = 125.0f; -// temp_f0 = sind(var_f30); -// sp8 = temp_f0; -// temp_f0_2 = cosd(var_f30); -// sp10 = temp_f0_2; -// var_r31->unk_00 = 125.0f * temp_f0; -// var_r31->unk_04 = 0.0f; -// var_r31->unk_08 = 125.0f * temp_f0_2; -// spC = 25.0f; -// var_r31->unk_6C = 100.0f * (0.1f * temp_f0); -// var_r31->unk_70 = 25.0f + (2.5f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_74 = 100.0f * (0.1f * temp_f0_2); -// var_r31->unk_78 = (24.0f * (0.000015258789f * fn_1_7DB4())) + 1; -// var_r31->unk_7A = 1; -// } -// else { -// var_f30 = (180.0f * (0.000015258789f * fn_1_7DB4())) - 90.0f; -// var_f29 = 125.0f * (0.000015258789f * fn_1_7DB4()); -// temp_f0_3 = sind(var_f30); -// sp8 = temp_f0_3; -// temp_f0_4 = cosd(var_f30); -// sp10 = temp_f0_4; -// var_r31->unk_00 = var_f29 * temp_f0_3; -// var_r31->unk_04 = 0.0f; -// var_r31->unk_08 = var_f29 * temp_f0_4; -// spC = 5.0f; -// var_r31->unk_6C = 100.0 * (0.015 * temp_f0_3); -// var_r31->unk_70 = 5.0f + (0.000015258789f * fn_1_7DB4()); -// var_r31->unk_74 = 100.0f * (0.015f * temp_f0_4); -// var_r31->unk_78 = (60.0f * (0.000015258789f * fn_1_7DB4())) + 1; -// var_r31->unk_7A = 0; -// } -// var_r31->unk_38 = var_r31->unk_38 & 0xFFFFFFFB; -// if ((fn_1_7DB4() & 0xF) != 0) { -// var_r31->unk_33 = 1; -// var_r31->unk_54 = 0x40; -// var_r31->unk_55 = 0x10; -// var_r31->unk_56 = 4; -// var_r31->unk_57 = 0xFF; -// var_f31 = 1.8f + (0.000015258789f * fn_1_7DB4()); -// var_r31->unk_18 = var_f31; -// var_r31->unk_1C = var_f31; -// var_r31->unk_20 = var_f31; -// goto block_19; -// } -// if (var_r30->unk_7C != 0) { -// var_r31->unk_33 = 0; -// var_r31->unk_54 = 0; -// var_r31->unk_55 = 0; -// var_r31->unk_56 = 0; -// var_r31->unk_57 = 0xFF; -// var_f31 = 0.25f + (0.25f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_18 = var_f31; -// var_r31->unk_1C = 1.5f * var_f31; -// var_r31->unk_20 = var_f31; -// block_19: -// var_r31->unk_58->unk_24 = 0; -// var_r31->unk_5C = var_r31->unk_5C + 1; -// } -// else { -// var_r29 = fn_1_10258(8, 1); -// fn_1_11018(var_r29, 0, 0x45000A); -// *(lbl_1_bss_DE4.unk_40 + ((var_r29 * 0xBC) + 0x30)) = fn_1_7300; -// fn_1_11890(var_r29, var_r30->unk_0C + var_r31->unk_00, var_r30->unk_10 + var_r31->unk_04, var_r30->unk_14 + var_r31->unk_08); -// fn_1_12100(var_r29, 4); -// fn_1_124CC(var_r29, 1); -// var_r31->unk_38 = var_r31->unk_38 | 4; -// } -// break; -// case 1: -// if (var_r31->unk_7A != 0) { -// var_r31->unk_70 = var_r31->unk_70 - 0.5f; -// } -// temp_r0_2 = var_r31->unk_78 - 1; -// var_r31->unk_78 = temp_r0_2; -// if (temp_r0_2 == 0) { -// var_r31->unk_58->unk_24 = 0x11; -// if (var_r31->unk_7A != 0) { -// var_r31->unk_58->unk_28 = 0.5f; -// } -// else { -// var_r31->unk_58->unk_28 = 0.5f; -// } -// var_r31->unk_58->unk_2C = 0.0f; -// var_r31->unk_58->unk_00 = 0; -// var_r31->unk_5C = var_r31->unk_5C + 1; -// } -// break; -// case 2: -// var_r31->unk_00 = var_r31->unk_00 + var_r31->unk_6C; -// var_r31->unk_04 = var_r31->unk_04 + var_r31->unk_70; -// var_r31->unk_08 = var_r31->unk_08 + var_r31->unk_74; -// if (var_r31->unk_04 < 0.0f) { -// var_r31->unk_04 = 0.0f; -// } -// var_r31->unk_18 = var_r31->unk_18 * 0.95f; -// var_r31->unk_1C = var_r31->unk_1C * 0.95f; -// var_r31->unk_20 = var_r31->unk_20 * 0.95f; -// var_r31->unk_70 = var_r31->unk_70 - 1.5f; -// if ((var_r31->unk_58->unk_24 & 8) != 0) { -// if (var_r31->unk_7A != 0) { -// var_r31->unk_5C = 3; -// } -// else { -// var_r31->unk_5C = 0; -// } -// } -// break; -// case 3: -// var_r28++; -// break; -// } -// var_r27++; -// var_r31 += 0x98; -// goto loop_35; -// } -// if (var_r28 >= var_r30->unk_02) { -// fn_1_107BC(var_r30->unk_00); -// } -// } + case 1: + var_r31 = arg0->unk_3C; + var_r31->unk_00.x += var_r31->unk_6C.x; + var_r31->unk_00.y += var_r31->unk_6C.y; + var_r31->unk_00.z += var_r31->unk_6C.z; + return; + case 2: + fn_1_107BC(arg0->unk_00); + return; + } +} -// void fn_1_7300(void *arg0) -// { -// float sp10; -// float spC; -// float sp8; -// float temp_f0; -// float temp_f0_2; -// float temp_f0_3; -// float var_f29; -// float var_f30; -// float var_f31; -// s16 temp_r0_2; -// s32 var_r28; -// s32 var_r29; -// u8 temp_r0; -// u8 temp_r0_3; -// void *var_r30; -// void *var_r31; +void fn_1_63B0(M438UnkStruct2* arg0) { + Vec sp8; + M438UnkStruct* var_r31; + f32 var_f31; + f32 temp_f30; + f32 var_f29; + f32 temp_f28; + s32 var_r29; -// var_r30 = arg0; -// var_r31 = var_r30->unk_3C; -// temp_r0 = var_r30->unk_60; -// switch (temp_r0) { -// case 0: -// var_f31 = 0.01f; -// var_r30->unk_2C = 0.01f; -// var_r30->unk_28 = 0.01f; -// var_r30->unk_24 = 0.01f; -// var_r30->unk_7C = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M438, 0x0B)); -// var_r30->unk_7E = (30.0f * (0.000015258789f * fn_1_7DB4())) + 0x1E; -// var_r29 = 0; -// loop_6: -// if (var_r29 < var_r30->unk_02) { -// var_r31->unk_38 = var_r31->unk_38 | 4; -// var_r29++; -// var_r31 += 0x98; -// goto loop_6; -// } -// var_r30->unk_60 = var_r30->unk_60 + 1; + var_r31 = arg0->unk_3C; + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { + switch (var_r31->unk_5C) { + case 0: + var_f29 = atan2d(arg0->unk_80, arg0->unk_84) < 0 + ? -atan2d(arg0->unk_80, arg0->unk_84) + : atan2d(arg0->unk_80, arg0->unk_84); + + if (var_f29 > 90.0f) { + var_f29 = 180.0f - var_f29; + } + temp_f28 = 40.0f * (0.1f + ((0.9f * var_f29) / 90.0f)); + var_f31 = (0.5f * temp_f28) + ((arg0->unk_88 - temp_f28) * ((1.0f / 65536.0f) * fn_1_7DB4())); + sp8.x = var_f31 * arg0->unk_80; + sp8.z = var_f31 * arg0->unk_84; + var_r31->unk_00.x = sp8.x; + var_r31->unk_00.y = 0.0f; + var_r31->unk_00.z = sp8.z; + + for (var_f31 = 0.0f, sp8.y = 0.0f; var_f31 < (arg0->unk_8C - 40.0f); var_f31 += sp8.y) { + sp8.y += 0.8f; + } + var_r31->unk_6C.x = 0.0f; + var_r31->unk_6C.y = sp8.y + (1.5f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_6C.z = 0.0f; + if ((fn_1_7DB4() & 7) != 0) { + var_r31->unk_33 = 1; + var_r31->unk_54 = 0x40; + var_r31->unk_55 = 0x10; + var_r31->unk_56 = 4; + var_r31->unk_57 = 0xFF; + temp_f30 = 3.75f + (1.75f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_60.x = (temp_f30 * (0.1f + ((0.9f * var_f29) / 90.0f))); + var_r31->unk_60.y = var_r31->unk_60.z = temp_f30; + } else { + var_r31->unk_33 = 0; + var_r31->unk_54 = 0; + var_r31->unk_55 = 0; + var_r31->unk_56 = 0; + var_r31->unk_57 = 0xFF; + temp_f30 = 0.25f + (0.25f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_60.y = (1.5f * temp_f30); + var_r31->unk_60.x = var_r31->unk_60.z = temp_f30; + } + var_r31->unk_58->unk_24 = 0; + var_r31->unk_78 = (s32)((60.0f * ((1.0f / 65536.0f) * fn_1_7DB4()))) + 1; + var_r31->unk_5C++; + case 1: + if (--var_r31->unk_78 == 0) { + var_r31->unk_58->unk_24 = 0x11U; + var_r31->unk_58->unk_28 = 0.5f; + var_r31->unk_58->unk_2C = 0.0f; + var_r31->unk_58->unk_00 = 0; + var_r31->unk_5C++; + } + break; + case 2: + var_r31->unk_00.x += var_r31->unk_6C.x; + var_r31->unk_00.y += var_r31->unk_6C.y; + var_r31->unk_00.z += var_r31->unk_6C.z; + if (var_r31->unk_00.y < 0.0f) { + var_r31->unk_00.y = 0.0f; + } + var_r31->unk_60.x *= 0.95f; + var_r31->unk_60.y *= 0.95f; + var_r31->unk_60.z *= 0.95f; + var_r31->unk_6C.y -= 0.8f; + if ((var_r31->unk_58->unk_24 & 8) != 0) { + var_r31->unk_5C = 0; + } + break; + } + var_r31->unk_18.x = var_r31->unk_60.x * arg0->unk_90; + var_r31->unk_18.y = var_r31->unk_60.y * arg0->unk_90; + var_r31->unk_18.z = var_r31->unk_60.z * arg0->unk_90; + } +} -// case 1: -// var_r30->unk_2C = var_r30->unk_2C + 0.008f; -// temp_f0 = var_r30->unk_2C; -// var_r30->unk_28 = temp_f0; -// var_r30->unk_24 = temp_f0; -// Hu3DModelPosSetV(var_r30->unk_7C, var_r30 + 0xC); -// Hu3DModelScaleSetV(var_r30->unk_7C, var_r30 + 0x24); -// temp_r0_2 = var_r30->unk_7E - 1; -// var_r30->unk_7E = temp_r0_2; -// if (temp_r0_2 == 0) { -// Hu3DModelKill(var_r30->unk_7C); -// var_r30->unk_7C = 0; -// var_r29 = 0; -// loop_11: -// if (var_r29 < var_r30->unk_02) { -// var_r31->unk_5C = 1; -// var_r29++; -// var_r31 += 0x98; -// goto loop_11; -// } -// var_r30->unk_80 = var_r30->unk_24; -// var_r30->unk_2C = 1.0f; -// var_r30->unk_28 = 1.0f; -// var_r30->unk_24 = 1.0f; -// var_r30->unk_60 = var_r30->unk_60 + 1; -// } -// break; -// } -// var_r28 = 0; -// for (var_r31 = var_r30->unk_3C; var_r29 = 0; var_r31 < var_r30->unk_02; var_r29++; var_r31 += 0x98) { -// temp_r0_3 = var_r31->unk_5C; -// switch (temp_r0_3) { -// case 1: -// var_r31->unk_38 = var_r31->unk_38 & 0xFFFFFFFB; -// var_r31->unk_33 = 1; -// var_r31->unk_54 = 0x60; -// var_r31->unk_55 = 0x20; -// var_r31->unk_56 = 0x10; -// var_r31->unk_57 = 0xFF; -// var_f31 = 0.4f + (0.15f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_18 = var_f31; -// var_r31->unk_1C = var_f31; -// var_r31->unk_20 = var_f31; -// var_f29 = 360.0f * (0.000015258789f * fn_1_7DB4()); -// var_f30 = 50.0f * var_r30->unk_80; -// temp_f0_2 = sind(var_f29); -// sp8 = temp_f0_2; -// temp_f0_3 = cosd(var_f29); -// sp10 = temp_f0_3; -// var_r31->unk_00 = var_f30 * temp_f0_2; -// var_r31->unk_04 = var_f30; -// var_r31->unk_08 = var_f30 * temp_f0_3; -// spC = 6.0f; -// var_r31->unk_6C = 100.0f * (0.015f * temp_f0_2); -// var_r31->unk_70 = 6.0f + (1.5f * (0.000015258789f * fn_1_7DB4())); -// var_r31->unk_74 = 100.0f * (0.015f * temp_f0_3); -// var_r31->unk_58->unk_24 = 0x11; -// var_r31->unk_58->unk_28 = 0.75f; -// var_r31->unk_5C = var_r31->unk_5C + 1; -// break; -// case 2: -// var_r31->unk_00 = var_r31->unk_00 + var_r31->unk_6C; -// var_r31->unk_04 = var_r31->unk_04 + var_r31->unk_70; -// var_r31->unk_08 = var_r31->unk_08 + var_r31->unk_74; -// var_r31->unk_70 = var_r31->unk_70 - 0.75f; -// if ((var_r31->unk_58->unk_24 & 8) != 0) { -// var_r31->unk_5C = var_r31->unk_5C + 1; -// } -// break; -// case 3: -// var_r28++; -// break; -// } -// } -// if (var_r28 >= var_r30->unk_02) { -// fn_1_107BC(var_r30->unk_00); -// } -// if (lbl_1_bss_DBA == 2) { -// if (var_r30->unk_7C != 0) { -// Hu3DModelKill(var_r30->unk_7C); -// } -// fn_1_107BC(var_r30->unk_00); -// } -// } +void fn_1_6A3C(M438UnkStruct2* arg0) { + Vec sp8; + M438UnkStruct* var_r31; + f32 temp_f31; + f32 temp_f30; + f32 temp_f29; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + var_r31 = arg0->unk_3C; + var_r28 = 0; + + for (var_r27 = 0; var_r27 < arg0->unk_02; var_r27++, var_r31++) { + if ((arg0->unk_7C != 0) && (var_r31->unk_7A == 0)) { + var_r31->unk_5C = 0; + } + switch (var_r31->unk_5C) { + case 0: + if (arg0->unk_7C != 0) { + temp_f30 = (180.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) - 90.0f; + temp_f29 = 125.0f; + sp8.x = sind(temp_f30); + sp8.z = cosd(temp_f30); + var_r31->unk_00.x = temp_f29 * sp8.x; + var_r31->unk_00.y = 0.0f; + var_r31->unk_00.z = temp_f29 * sp8.z; + sp8.y = 25.0f; + var_r31->unk_6C.x = 100.0f * (0.1f * sp8.x); + var_r31->unk_6C.y = sp8.y + (2.5f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_6C.z = 100.0f * (0.1f * sp8.z); + var_r31->unk_78 = (s32)(24.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 1; + var_r31->unk_7A = 1; + } else { + temp_f30 = (180.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) - 90.0f; + temp_f29 = 125.0f * ((1.0f / 65536.0f) * fn_1_7DB4()); + sp8.x = sind(temp_f30); + sp8.z = cosd(temp_f30); + var_r31->unk_00.x = temp_f29 * sp8.x; + var_r31->unk_00.y = 0.0f; + var_r31->unk_00.z = temp_f29 * sp8.z; + sp8.y = 5.0f; + var_r31->unk_6C.x = (100.0 * (0.015 * sp8.x)); + var_r31->unk_6C.y = sp8.y + ((1.0f / 65536.0f) * fn_1_7DB4()); + var_r31->unk_6C.z = 100.0f * (0.015f * sp8.z); + var_r31->unk_78 = (s32)(60.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 1; + var_r31->unk_7A = 0; + } + var_r31->unk_38 &= ~4; + if ((fn_1_7DB4() & 0xF) != 0) { + var_r31->unk_33 = 1; + var_r31->unk_54 = 0x40; + var_r31->unk_55 = 0x10; + var_r31->unk_56 = 4; + var_r31->unk_57 = 0xFF; + temp_f31 = 1.8f + ((1.0f / 65536.0f) * fn_1_7DB4()); + var_r31->unk_18.x = temp_f31; + var_r31->unk_18.y = temp_f31; + var_r31->unk_18.z = temp_f31; + } else if (arg0->unk_7C != 0) { + var_r31->unk_33 = 0; + var_r31->unk_54 = 0; + var_r31->unk_55 = 0; + var_r31->unk_56 = 0; + var_r31->unk_57 = 0xFF; + temp_f31 = 0.25f + (0.25f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_18.x = temp_f31; + var_r31->unk_18.y = 1.5f * temp_f31; + var_r31->unk_18.z = temp_f31; + } else { + var_r29 = fn_1_10258(8, 1); + fn_1_11018(var_r29, 0, 0x45000A); + lbl_1_bss_DE4.unk_40[var_r29].unk_30 = (void (*)(M438UnkStruct2*)) fn_1_7300; + fn_1_11890(var_r29, arg0->unk_0C.x + var_r31->unk_00.x, arg0->unk_0C.y + var_r31->unk_00.y, arg0->unk_0C.z + var_r31->unk_00.z); + fn_1_12100(var_r29, 4); + fn_1_124CC(var_r29, 1); + var_r31->unk_38 |= 4; + break; + } + var_r31->unk_58->unk_24 = 0; + var_r31->unk_5C++; + break; + case 1: + if (var_r31->unk_7A != 0) { + var_r31->unk_6C.y -= 0.5f; + } + if (--var_r31->unk_78 == 0) { + var_r31->unk_58->unk_24 = 0x11; + if (var_r31->unk_7A != 0) { + var_r31->unk_58->unk_28 = 0.5f; + } else { + var_r31->unk_58->unk_28 = 0.5f; + } + var_r31->unk_58->unk_2C = 0.0f; + var_r31->unk_58->unk_00 = 0; + var_r31->unk_5C++; + } + break; + case 2: + var_r31->unk_00.x += var_r31->unk_6C.x; + var_r31->unk_00.y += var_r31->unk_6C.y; + var_r31->unk_00.z += var_r31->unk_6C.z; + if (var_r31->unk_00.y < 0.0f) { + var_r31->unk_00.y = 0.0f; + } + var_r31->unk_18.x *= 0.95f; + var_r31->unk_18.y *= 0.95f; + var_r31->unk_18.z *= 0.95f; + var_r31->unk_6C.y -= 1.5f; + if ((var_r31->unk_58->unk_24 & 8) != 0) { + if (var_r31->unk_7A != 0) { + var_r31->unk_5C = 3; + } else { + var_r31->unk_5C = 0; + } + } + break; + case 3: + var_r28++; + break; + } + } + if (var_r28 >= arg0->unk_02) { + fn_1_107BC(arg0->unk_00); + } +} + +void fn_1_7300(M438UnkStruct2* arg0) { + Vec sp8; + M438UnkStruct* var_r31; + f32 temp_f29; + f32 temp_f30; + f32 temp_f31; + s32 var_r28; + s32 var_r29; + + var_r31 = arg0->unk_3C; + + switch (arg0->unk_60) { + case 0: + arg0->unk_24.x = arg0->unk_24.y = arg0->unk_24.z = temp_f31 = 0.01f; + arg0->unk_7C = Hu3DModelCreateFile(0x45000B); + arg0->unk_7E = (s32)(30.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 30; + + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { + var_r31->unk_38 |= 4; + } + arg0->unk_60++; + case 1: + arg0->unk_24.z += 0.008f; + + arg0->unk_24.x = arg0->unk_24.y = arg0->unk_24.z; + Hu3DModelPosSetV(arg0->unk_7C, &arg0->unk_0C); + Hu3DModelScaleSetV(arg0->unk_7C, &arg0->unk_24); + if (--arg0->unk_7E == 0) { + Hu3DModelKill(arg0->unk_7C); + arg0->unk_7C = 0; + + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { + var_r31->unk_5C = 1; + } + arg0->unk_80 = arg0->unk_24.x; + + + arg0->unk_24.x = arg0->unk_24.y = arg0->unk_24.z = 1.0f; + arg0->unk_60++; + } + break; + } + var_r28 = 0; + var_r31 = arg0->unk_3C; + + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { + switch (var_r31->unk_5C) { + case 1: + var_r31->unk_38 &= ~4; + var_r31->unk_33 = 1; + var_r31->unk_54 = 0x60; + var_r31->unk_55 = 0x20; + var_r31->unk_56 = 0x10; + var_r31->unk_57 = 0xFF; + temp_f31 = 0.4f + (0.15f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_18.x = temp_f31; + var_r31->unk_18.y = temp_f31; + var_r31->unk_18.z = temp_f31; + temp_f29 = 360.0f * ((1.0f / 65536.0f) * fn_1_7DB4()); + temp_f30 = 50.0f * arg0->unk_80; + sp8.x = sind(temp_f29); + sp8.z = cosd(temp_f29); + var_r31->unk_00.x = temp_f30 * sp8.x; + var_r31->unk_00.y = temp_f30; + var_r31->unk_00.z = temp_f30 * sp8.z; + sp8.y = 6.0f; + var_r31->unk_6C.x = 100.0f * (0.015f * sp8.x); + var_r31->unk_6C.y = sp8.y + (1.5f * ((1.0f / 65536.0f) * fn_1_7DB4())); + var_r31->unk_6C.z = 100.0f * (0.015f * sp8.z); + var_r31->unk_58->unk_24 = 0x11; + var_r31->unk_58->unk_28 = 0.75f; + var_r31->unk_5C++; + break; + case 2: + var_r31->unk_00.x += var_r31->unk_6C.x; + var_r31->unk_00.y += var_r31->unk_6C.y; + var_r31->unk_00.z += var_r31->unk_6C.z; + var_r31->unk_6C.y -= 0.75f; + if ((var_r31->unk_58->unk_24 & 8) != 0) { + var_r31->unk_5C++; + } + break; + case 3: + var_r28++; + break; + } + } + if (var_r28 >= arg0->unk_02) { + fn_1_107BC(arg0->unk_00); + } + if (lbl_1_bss_DBA == 2) { + if (arg0->unk_7C != 0) { + Hu3DModelKill(arg0->unk_7C); + } + fn_1_107BC(arg0->unk_00); + } +} void fn_1_7858(omObjData *object) { @@ -2555,7 +2437,6 @@ void fn_1_7DD8(s32 arg0, s32 *arg1) float fn_1_7EDC(float arg8, float arg9, float argA) { - float var_f1; float var_f31; if (arg8 > 180.0f) { @@ -2577,14 +2458,13 @@ float fn_1_7EDC(float arg8, float arg9, float argA) else if (var_f31 <= -180.0f) { var_f31 += 360.0f; } - var_f1 = arg9 + (var_f31 * argA); - if (var_f1 > 180.0f) { - return var_f1 - 360.0f; + arg8 = arg9 + (var_f31 * argA); + if (arg8 > 180.0f) { + arg8 -= 360.0f; + } else if (arg8 <= -180.0f) { + arg8 += 360.0f; } - if (var_f1 <= -180.0f) { - var_f1 += 360.0f; - } - return var_f1; + return arg8; } // void fn_1_8044(Mtx arg0, float arg8, float arg9, float argA) From 5d834eb36dcd755972c253b0bbfc88c244189e71 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Tue, 3 Dec 2024 20:59:55 -0500 Subject: [PATCH 056/178] up to 9420 --- include/dolphin/mtx.h | 2 +- src/REL/m438Dll/main.c | 320 ++++++++++++----------------------------- 2 files changed, 91 insertions(+), 231 deletions(-) diff --git a/include/dolphin/mtx.h b/include/dolphin/mtx.h index fd975968..9aba8f15 100644 --- a/include/dolphin/mtx.h +++ b/include/dolphin/mtx.h @@ -31,7 +31,7 @@ typedef struct { } MtxStack, *MtxStackPtr; -#define MTXDegToRad(a) ((a)*0.01745329252f) +#define MTXDegToRad(a) ((a)*0.017453292f) #define MTXRadToDeg(a) ((a)*57.29577951f) #define MTXRowCol(m, r, c) ((m)[(r)][(c)]) diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index 77956add..d3bf4e10 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -12,6 +12,8 @@ #include "REL/m438Dll.h" +#define BOARD_FABS(value) ((value < 0.0f) ? -(value) : (value)) + typedef struct M438MainWork { u8 unk_00; u8 unk_01; @@ -2467,247 +2469,105 @@ float fn_1_7EDC(float arg8, float arg9, float argA) return arg8; } -// void fn_1_8044(Mtx arg0, float arg8, float arg9, float argA) -// { -// Mtx var_r31; -// float var_f29; -// float var_f30; -// float var_f31; +void fn_1_8044(Mtx arg0, f32 arg8, f32 arg9, f32 argA) { + Mtx sp38; + Mtx sp8; + + if (0.0f != argA) { + PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + } else { + PSMTXIdentity(arg0); + } + if (0.0f != arg8) { + PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + PSMTXConcat(sp38, arg0, arg0); + } + if (0.0f != arg9) { + PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + PSMTXConcat(sp8, arg0, arg0); + } +} -// var_r31 = arg0; -// var_f29 = arg8; -// var_f30 = arg9; -// var_f31 = argA; -// if (var_f31 != 0.0f) { -// PSMTXRotRad(var_r31, 0x5A, 0.017453292f * var_f31); -// } -// else { -// PSMTXIdentity(var_r31); -// } -// if (var_f29 != 0.0f) { -// PSMTXRotRad(&sp38[0], 0x58, 0.017453292f * var_f29); -// PSMTXConcat(&sp38[0], var_r31, var_r31); -// } -// if (var_f30 != 0.0f) { -// PSMTXRotRad(&sp8[0], 0x59, 0.017453292f * var_f30); -// PSMTXConcat(&sp8[0], var_r31, var_r31); -// } -// } +void fn_1_8164(Mtx arg0, Vec* arg1) { + f32 temp_f29; + f32 var_f28; -// void fn_1_8164(float *arg0, Vec *arg1) -// { -// float sp8; -// Vec *var_r31; -// float *var_r30; -// float var_f27; -// float var_f28; -// float var_f29; -// double var_f30; -// double var_f31; + arg1->x = atan2d(arg0[1][2], arg0[2][2]); + if (arg1->x < 0.0f) { + arg1->x += 360.0f; + } + arg1->z = atan2d(arg0[0][1], arg0[0][0]); + if (arg1->z < 0.0f) { + arg1->z += 360.0f; + } + temp_f29 = -arg0[0][2]; + var_f28 = sqrtf(BOARD_FABS(1.0 - temp_f29 * temp_f29)); + if ((arg1->x > 90.0f) && (arg1->x < 270.0f) && (arg1->z > 90.0f) && (arg1->z < 270.0f)) { + arg1->x = fmod((180.0f + arg1->x), 360.0); + arg1->z = fmod((180.0f + arg1->z), 360.0); + var_f28 = -var_f28; + } + arg1->y = atan2d(temp_f29, var_f28); + if (arg1->y < 0.0f) { + arg1->y += 360.0f; + } +} -// var_r30 = arg0; -// var_r31 = arg1; -// var_r31->x = atan2d(var_r30->unk_18, var_r30->unk_28); -// if (var_r31->x < 0.0f) { -// var_r31->x += 360.0f; -// } -// var_r31->z = atan2d(var_r30->unk_04, var_r30->unk_00); -// if (var_r31->z < 0.0f) { -// var_r31->z += 360.0f; -// } -// var_f29 = -var_r30->unk_08; -// if ((1.0 - (var_f29 * var_f29)) < 0.0) { -// var_f30 = -(1.0 - (var_f29 * var_f29)); -// } -// else { -// var_f30 = 1.0 - (var_f29 * var_f29); -// } -// if (var_f30 > 0.0f) { -// var_f31 = __frsqrte(var_f30); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// sp8 = var_f30 * var_f31; -// var_f27 = sp8; -// } -// else { -// var_f27 = var_f30; -// } -// var_f28 = var_f27; -// if ((var_r31->x > 90.0f) && (var_r31->x < 270.0f) && (var_r31->z > 90.0f) && (var_r31->z < 270.0f)) { -// var_r31->x = fmod(180.0f + var_r31->x, 360.0); -// var_r31->z = fmod(180.0f + var_r31->z, 360.0); -// var_f28 = -var_f28; -// } -// var_r31->y = atan2d(var_f29, var_f28); -// if (var_r31->y < 0.0f) { -// var_r31->y += 360.0f; -// } -// } +void fn_1_8500(Mtx arg0, Vec* arg1) { + f32 temp_f29; + f32 var_f28; -// void fn_1_8500(void *arg0, void *arg1) -// { -// float sp8; -// float var_f27; -// float var_f28; -// float var_f29; -// double var_f30; -// double var_f31; -// void *var_r30; -// void *var_r31; + arg1->z = atan2d(arg0[0][1], arg0[1][1]); + arg1->y = atan2d(arg0[2][0], arg0[2][2]); + temp_f29 = -arg0[2][1]; + var_f28 = sqrtf(BOARD_FABS(1.0 - temp_f29 * temp_f29)); + arg1->x = atan2d(temp_f29, var_f28); +} -// var_r31 = arg0; -// var_r30 = arg1; -// var_r30->unk_08 = atan2d(var_r31->unk_04, var_r31->unk_14); -// var_r30->unk_04 = atan2d(var_r31->unk_20, var_r31->unk_28); -// var_f29 = -var_r31->unk_24; -// if ((1.0 - (var_f29 * var_f29)) < 0.0) { -// var_f30 = -(1.0 - (var_f29 * var_f29)); -// } -// else { -// var_f30 = 1.0 - (var_f29 * var_f29); -// } -// if (var_f30 > 0.0f) { -// var_f31 = __frsqrte(var_f30); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// sp8 = var_f30 * var_f31; -// var_f28 = sp8; -// } -// else { -// var_f28 = var_f30; -// } -// var_f27 = var_f28; -// var_r30->unk_00 = atan2d(var_f29, var_f27); -// } +f32 fn_1_8750(f32 arg8, f32 arg9, f32 argA, f32 argB) { + f32 temp_f31; + f32 var_f30; -// double fn_1_8750(double arg8, float arg9, float argA, float argB) -// { -// double var_f30; -// double var_f31; + temp_f31 = (1.0 - arg8); + var_f30 = ((temp_f31 * temp_f31) * arg9) + (temp_f31 * arg8 * argA * 2.0) + ((arg8 * arg8) * argB); + return var_f30; +} -// var_f31 = 1.0 - arg8; -// var_f31 = var_f31; -// var_f30 = (argB * (arg8 * arg8)) + ((arg9 * (var_f31 * var_f31)) + (2.0 * (argA * (var_f31 * arg8)))); -// var_f30 = var_f30; -// return var_f30; -// } +void fn_1_87C8(f32* arg0, f32* arg1, f32* arg2, f32* arg3, f32 arg8) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + *arg3++ = fn_1_8750(arg8, *arg0++, *arg1++, *arg2++); + } +} -// void fn_1_87C8(float *arg0, float *arg1, float *arg2, float *arg3, double arg8) -// { -// float *var_r3; -// float *var_r4; -// float *var_r5; -// float *var_r6; -// float var_f26; -// float var_f27; -// float var_f28; -// float var_f29; -// double var_f24; -// double var_f25; -// double var_f30; -// double var_f31; -// s32 var_r31; +f32 fn_1_88E4(f32 arg8, f32 arg9, f32 argA, f32 argB) { + f32 var_f31; -// var_r3 = arg0; -// var_r4 = arg1; -// var_r5 = arg2; -// var_r6 = arg3; -// for (var_r31 = 0; var_r31 < 3; var_r31++) { -// var_f27 = *var_r5; -// var_r5 += 4; -// var_f28 = *var_r4; -// var_r4 += 4; -// var_f29 = *var_r3; -// var_r3 += 4; -// var_f26 = var_f29; -// var_f31 = 1.0 - arg8; -// var_f31 = var_f31; -// var_f30 = (var_f27 * (arg8 * arg8)) + ((var_f29 * (var_f31 * var_f31)) + (2.0 * (var_f28 * (var_f31 * arg8)))); -// var_f30 = var_f30; -// var_f25 = var_f30; -// var_f24 = var_f25; -// *var_r6 = var_f24; -// var_r6 += 4; -// } -// } + var_f31 = 2.0 * ((arg8 - 1.0) * arg9 + (1.0 - (2.0 * arg8)) * argA + (arg8 * argB)); + return var_f31; +} -// double fn_1_88E4(float arg8, double arg9, double argA, float argB) -// { -// double var_f31; +void fn_1_895C(f32* arg0, f32* arg1, f32* arg2, f32* arg3, f32 arg8) { + f32 spC[3]; + f32 var_f29; + s32 var_r31; -// var_f31 = 2.0 * ((arg8 * argB) + (((arg8 - 1.0) * arg9) + ((1.0 - (2.0 * arg8)) * argA))); -// var_f31 = var_f31; -// return var_f31; -// } - -// void fn_1_895C(float *arg0, float *arg1, float *arg2, float *arg3, float arg8) -// { -// float sp8; -// float *temp_r6; -// float *var_r3; -// float *var_r4; -// float *var_r5; -// float *var_r6; -// float var_f23; -// float var_f24; -// float var_f25; -// float var_f26; -// float var_f28; -// float var_f29; -// float var_f30; -// double var_f21; -// double var_f22; -// double var_f27; -// double var_f31; -// s32 var_r31; - -// var_r3 = arg0; -// var_r4 = arg1; -// var_r5 = arg2; -// var_r6 = arg3; -// for (var_r31 = 0; var_r31 < 3; var_r31++) { -// var_f24 = *var_r5; -// var_r5 += 4; -// var_f25 = *var_r4; -// var_r4 += 4; -// var_f26 = *var_r3; -// var_r3 += 4; -// var_f23 = var_f26; -// var_f27 = 2.0 * ((arg8 * var_f24) + (((arg8 - 1.0) * var_f26) + ((1.0 - (2.0 * arg8)) * var_f25))); -// var_f27 = var_f27; -// var_f22 = var_f27; -// var_f21 = var_f22; -// (&spC[0])[var_r31] = var_f21; -// } -// var_f30 = (sp14 * sp14) + ((spC[0] * spC[0]) + (sp10 * sp10)); -// if (var_f30 > 0.0f) { -// var_f31 = __frsqrte(var_f30); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// sp8 = var_f30 * var_f31; -// var_f28 = sp8; -// } -// else { -// var_f28 = var_f30; -// } -// var_f29 = var_f28; -// if (var_f29 != 0.0f) { -// var_f29 = 1.0 / var_f29; -// var_f29 = var_f29; -// for (var_r31 = 0; var_r31 < 3; var_r31++) { -// *var_r6 = var_f29 * (&spC[0])[var_r31]; -// var_r6 += 4; -// } -// return; -// } -// *var_r6 = 0.0f; -// temp_r6 = var_r6 + 4; -// *temp_r6 = 0.0f; -// *(temp_r6 + 4) = 1.0f; -// } + for (var_r31 = 0; var_r31 < 3; var_r31++) { + spC[var_r31] = fn_1_88E4(arg8, *arg0++, *arg1++, *arg2++); + } + var_f29 = sqrtf((spC[0] * spC[0]) + (spC[1] * spC[1]) + (spC[2] * spC[2])); + if (var_f29) { + var_f29 = (1.0 / var_f29); + for (var_r31 = 0; var_r31 < 3; var_r31++) { + *arg3++ = var_f29 * spC[var_r31]; + } + return; + } + *arg3++ = 0.0f; + *arg3++ = 0.0f; + *arg3++ = 1.0f; +} void fn_1_8C34(float *arg0, float *arg1, float *arg2, s32 arg3) { From 105e296095ae57cfa614eeb53482563dc965ee9a Mon Sep 17 00:00:00 2001 From: mrshigure Date: Wed, 4 Dec 2024 12:48:40 -0800 Subject: [PATCH 057/178] Matched most of REL m435: missing 3 funcs --- config/GMPE01_00/rels/m435Dll/symbols.txt | 354 +- include/REL/m435Dll.h | 18 +- src/REL/m435Dll/main.c | 4179 +++++++++++++++++++++ src/REL/m435Dll/sequence.c | 10 +- 4 files changed, 4371 insertions(+), 190 deletions(-) create mode 100755 src/REL/m435Dll/main.c diff --git a/config/GMPE01_00/rels/m435Dll/symbols.txt b/config/GMPE01_00/rels/m435Dll/symbols.txt index 42eb3002..9c0524b6 100644 --- a/config/GMPE01_00/rels/m435Dll/symbols.txt +++ b/config/GMPE01_00/rels/m435Dll/symbols.txt @@ -194,7 +194,7 @@ fn_1_14760 = .text:0x00014760; // type:function size:0x254 _prolog = .text:0x000149B4; // type:function size:0x54 scope:global _epilog = .text:0x00014A08; // type:function size:0x4C scope:global fn_1_14A54 = .text:0x00014A54; // type:function size:0x40C -fn_1_14E60 = .text:0x00014E60; // type:function size:0x40C +ObjectSetup = .text:0x00014E60; // type:function size:0x40C fn_1_1526C = .text:0x0001526C; // type:function size:0x28 fn_1_15294 = .text:0x00015294; // type:function size:0x40 fn_1_152D4 = .text:0x000152D4; // type:function size:0xC8 @@ -238,161 +238,161 @@ fn_1_19E50 = .text:0x00019E50; // type:function size:0x4EC fn_1_1A33C = .text:0x0001A33C; // type:function size:0x110 _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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte -lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:4byte -lbl_1_rodata_A4 = .rodata:0x000000A4; // type:object size:0x48 -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // 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:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x20 data:4byte -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x30 data:4byte -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x30 data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x30 data:4byte -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x8 data:4byte -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x8 data:4byte -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x8 data:4byte -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x8 data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x24 data:4byte -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:4byte -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x24 data:4byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x8 data:4byte -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x8 data:4byte -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:4byte -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:4byte -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x8 data:4byte -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x8 data:4byte -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x10 data:4byte -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x8 data:4byte -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x8 data:4byte -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x8 data:4byte -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x8 data:4byte -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x30 data:4byte -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x30 data:4byte -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x30 data:4byte +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x48 scope:local +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_124 = .rodata:0x00000124; // 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:0x8 scope:local data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 scope:local data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x20 scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x30 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x30 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x30 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x30 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x30 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x30 scope:local data:float lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 scope:local data:double lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float @@ -411,39 +411,39 @@ lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data: lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x10 data:string -lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 data:string -lbl_1_data_80 = .data:0x00000080; // type:object size:0x10 data:string -lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 data:string -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 data:string -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 data:string -lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x10 data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x10 scope:local data:string +lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 scope:local data:string +lbl_1_data_80 = .data:0x00000080; // type:object size:0x10 scope:local data:string +lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 scope:local data:string +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 scope:local data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 scope:local data:string +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 scope:local data:string +lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x10 scope:local data:string lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 lbl_1_data_100 = .data:0x00000100; // type:object size:0x40 lbl_1_data_140 = .data:0x00000140; // type:object size:0xA0 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x4 data:4byte lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x4 data:4byte lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x4 data:4byte -lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x1B data:string -lbl_1_data_207 = .data:0x00000207; // type:object size:0x22 data:string -lbl_1_data_229 = .data:0x00000229; // type:object size:0x1A data:string -lbl_1_data_243 = .data:0x00000243; // type:object size:0x1A data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0xF +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x1B scope:local data:string +lbl_1_data_207 = .data:0x00000207; // type:object size:0x22 scope:local data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x1A scope:local data:string +lbl_1_data_243 = .data:0x00000243; // type:object size:0x1A scope:local data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0xF scope:local lbl_1_data_26C = .data:0x0000026C; // type:object size:0x4 data:4byte jumptable_1_data_270 = .data:0x00000270; // type:object size:0x54 scope:local lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x4 data:float -lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x13 data:string -lbl_1_data_2DB = .data:0x000002DB; // type:object size:0x11 +lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x13 scope:local data:string +lbl_1_data_2DB = .data:0x000002DB; // type:object size:0xF scope:local data:string jumptable_1_data_2EC = .data:0x000002EC; // type:object size:0x24 scope:local jumptable_1_data_310 = .data:0x00000310; // type:object size:0x2C scope:local -lbl_1_data_33C = .data:0x0000033C; // type:object size:0xE data:string -lbl_1_data_34A = .data:0x0000034A; // type:object size:0x12 data:string -lbl_1_data_35C = .data:0x0000035C; // type:object size:0x14 +lbl_1_data_33C = .data:0x0000033C; // type:object size:0xE scope:local data:string +lbl_1_data_34A = .data:0x0000034A; // type:object size:0x12 scope:local data:string +lbl_1_data_35C = .data:0x0000035C; // type:object size:0x12 scope:local data:string jumptable_1_data_370 = .data:0x00000370; // type:object size:0x30 scope:local lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0xA8 jumptable_1_data_448 = .data:0x00000448; // type:object size:0x1C scope:local -lbl_1_data_464 = .data:0x00000464; // type:object size:0x4 +lbl_1_data_464 = .data:0x00000464; // type:object size:0x3 scope:local data:string lbl_1_data_468 = .data:0x00000468; // type:object size:0xB4 lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 jumptable_1_data_534 = .data:0x00000534; // type:object size:0x28 scope:local @@ -452,7 +452,7 @@ lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x8 data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte @@ -466,7 +466,7 @@ lbl_1_bss_C1C = .bss:0x00000C1C; // type:object size:0x14 data:4byte lbl_1_bss_C30 = .bss:0x00000C30; // type:object size:0x1B4 data:4byte lbl_1_bss_DE4 = .bss:0x00000DE4; // type:object size:0x24 data:4byte lbl_1_bss_E08 = .bss:0x00000E08; // type:object size:0x80 data:4byte -lbl_1_bss_E88 = .bss:0x00000E88; // type:object size:0x4060 data:4byte +lbl_1_bss_E88 = .bss:0x00000E88; // type:object size:0x1360 data:4byte lbl_1_bss_4EE8 = .bss:0x00004EE8; // type:object size:0x20 data:4byte lbl_1_bss_4F08 = .bss:0x00004F08; // type:object size:0x8 data:4byte lbl_1_bss_4F10 = .bss:0x00004F10; // type:object size:0x38 data:4byte diff --git a/include/REL/m435Dll.h b/include/REL/m435Dll.h index d4a7464c..36ee1baa 100755 --- a/include/REL/m435Dll.h +++ b/include/REL/m435Dll.h @@ -17,12 +17,12 @@ typedef struct { /* 0x0C */ StructData3A0* unk0C; /* 0x10 */ void (*unk10)(void); /* 0x14 */ s32 (*unk14)(void); -} StructBss84; // Size unknown +} StructBss84; // Size 0x18 typedef struct { - /* 0x00 */ void (*unk00)(void); // inferred - /* 0x04 */ void (*unk04)(void); // inferred - /* 0x08 */ char unk08[4]; + /* 0x00 */ void (*unk00)(void); // inferred (unsure) + /* 0x04 */ void (*unk04)(void); + /* 0x08 */ void (*unk08)(void); /* 0x0C */ float unk0C; /* 0x10 */ float unk10; /* 0x14 */ float unk14; @@ -38,7 +38,9 @@ typedef struct { /* 0x3C */ float unk3C; /* 0x40 */ float unk40; /* 0x44 */ float unk44; -} StructBssE08; // Size unknown + /* 0x48 */ s32 unk48[7]; + /* 0x64 */ float unk64[7]; +} StructBssE08; // Size 0x80 typedef struct { /* 0x000 */ omObjData* unk00; @@ -55,7 +57,7 @@ typedef struct { /* 0x474 */ float unk474; /* 0x478 */ float unk478; /* 0x47C */ float unk47C; -} StructFn19894; // Size unknown +} StructFn19894; // Size 0x480 float fn_1_1526C(float arg0, float arg1, float arg2, float arg3); float fn_1_15294(float arg0, float arg1, float arg2); @@ -75,10 +77,10 @@ void fn_1_17804(StructBssE08* arg0, StructBssE08* arg1, float arg2, float arg3, void fn_1_188E0(StructBssE08* arg0, StructBssE08* arg1, float arg2, float arg3, float arg4); void fn_1_19530(omObjData* arg0, s32 arg1, Vec* arg2, Vec* arg3, s32 arg4, s32 arg5, s32 arg6); void fn_1_195F4(omObjData* arg0, s32 arg1, Vec* arg2, Vec* arg3, s32 arg4, s32 arg5, s32 arg6); -void fn_1_19658(omObjData* arg0, s32 arg1, s32 arg2, float arg3); +void fn_1_19658(omObjData* arg0, s32 arg1, float arg2, s32 arg3); void fn_1_19894(StructFn19894* arg0, s32 arg1); void fn_1_198F8(StructFn19894* arg0, s32 arg1); void fn_1_19960(StructFn19894* arg0, s32 arg1); -void fn_1_19968(StructFn19894* arg0); +void fn_1_19968(StructFn19894* arg0, s32 arg1); void fn_1_19974(StructFn19894* arg0, s32 arg1); void fn_1_1A33C(Process* arg0, StructFn19894* arg1, s32 arg2, char* arg3, s32 arg4, s32 arg5); diff --git a/src/REL/m435Dll/main.c b/src/REL/m435Dll/main.c new file mode 100755 index 00000000..1972c585 --- /dev/null +++ b/src/REL/m435Dll/main.c @@ -0,0 +1,4179 @@ +#include "REL/m435Dll.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/process.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" + +#include "ext_math.h" + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ s32 unk20; + /* 0x24 */ s32 unk24; + /* 0x28 */ s32 unk28; + /* 0x2C */ s32 unk2C; + /* 0x30 */ s32 unk30; + /* 0x34 */ s32 unk34; + /* 0x38 */ s32 unk38; + /* 0x3C */ float unk3C; + /* 0x40 */ float unk40; + /* 0x44 */ float unk44; + /* 0x48 */ float unk48; + /* 0x4C */ float unk4C; + /* 0x50 */ float unk50; + /* 0x54 */ float unk54; + /* 0x58 */ StructFn19894 unk58; +} StructBssE88; // Size 0x4D8 + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ s32 unk20; +} StructBssDE4; // Size 0x24 + +typedef struct { + /* 0x000 */ omObjData* unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14[3]; + /* 0x020 */ s32 unk20; + /* 0x024 */ s32 unk24; + /* 0x028 */ s32 unk28; + /* 0x02C */ s32 unk2C[3]; + /* 0x038 */ s32 unk38[3]; + /* 0x044 */ s32 unk44[3]; + /* 0x050 */ s32 unk50[3]; + /* 0x05C */ s32 unk5C[3]; + /* 0x068 */ s32 unk68[3]; + /* 0x074 */ float unk74; + /* 0x078 */ float unk78; + /* 0x07C */ float unk7C[3]; + /* 0x088 */ float unk88[3]; + /* 0x094 */ float unk94[3]; + /* 0x0A0 */ float unkA0[3]; + /* 0x0AC */ Vec unkAC[3]; + /* 0x0D0 */ Vec unkD0[3]; + /* 0x0F4 */ Vec unkF4[3]; + /* 0x118 */ Vec unk118[3]; + /* 0x13C */ Vec unk13C[3]; + /* 0x160 */ Vec unk160[3]; + /* 0x184 */ Vec unk184[3]; + /* 0x1A8 */ float unk1A8[3]; +} StructBssC30; // Size 0x1B4 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ char unk08[0xC]; + /* 0x14 */ s32 unk14; + /* 0x18 */ char unk18[0x20]; +} StructBss4F10; // Size 0x38 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; +} StructBss4EE8; // Size 0x20 + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; +} StructBssC1C; // Size 0x14 + +typedef struct { + /* 0x000 */ omObjData* unk00; + /* 0x004 */ Vec unk04; + /* 0x010 */ Vec unk10; + /* 0x01C */ s32 unk1C; + /* 0x020 */ s32 unk20; + /* 0x024 */ s32 unk24; + /* 0x028 */ s32 unk28; + /* 0x02C */ s32 unk2C; + /* 0x030 */ s32 unk30; + /* 0x034 */ s32 unk34; + /* 0x038 */ s32 unk38; + /* 0x03C */ StructFn19894 unk3C; +} StructBss2A4; // Size 0x4BC + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ s32 unk04[6]; + /* 0x1C */ char unk1C[0x10]; + /* 0x2C */ s32 unk2C; + /* 0x30 */ s32 unk30; + /* 0x34 */ s32 unk34; + /* 0x38 */ s32 unk38; + /* 0x3C */ s32 unk3C; + /* 0x40 */ s32 unk40; + /* 0x44 */ s32 unk44; + /* 0x48 */ s32 unk48; + /* 0x4C */ float unk4C; + /* 0x50 */ s32 unk50; + /* 0x54 */ s32 unk54; +} StructBss144; // Size 0x58 + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ float unk08[6]; + /* 0x20 */ char unk20[8]; + /* 0x28 */ float unk28[6]; + /* 0x40 */ char unk40[8]; + /* 0x48 */ float unk48[6]; + /* 0x60 */ char unk60[8]; + /* 0x68 */ float unk68[6]; + /* 0x80 */ char unk80[8]; + /* 0x88 */ float unk88[6]; + /* 0xA0 */ char unkA0[8]; +} StructBss9C; // Size 0xA8 + +void fn_1_3AF4(s32 arg0); +void fn_1_4104(s32 arg0); +void fn_1_7D50(s32 arg0); +void fn_1_8544(s32 arg0); +s32 fn_1_8E48(s32 arg0); +s32 fn_1_8F34(s32 arg0); + +StructBss4F10 lbl_1_bss_4F10; +s32 lbl_1_bss_4F08[2]; +StructBss4EE8 lbl_1_bss_4EE8; +char lbl_1_bss_21E8_pad[0x2D00]; // unused +StructBssE88 lbl_1_bss_E88[4]; +StructBssE08 lbl_1_bss_E08; +StructBssDE4 lbl_1_bss_DE4; +StructBssC30 lbl_1_bss_C30; +StructBssC1C lbl_1_bss_C1C; +StructBss2A4 lbl_1_bss_2A4[2]; +StructBss144 lbl_1_bss_144[4]; +StructBss9C lbl_1_bss_9C; +StructBss84 lbl_1_bss_84; +StructBss84 lbl_1_bss_6C; +Vec lbl_1_bss_3C[4]; +StructBss84 lbl_1_bss_24; +s32 lbl_1_bss_20; +s32 lbl_1_bss_1C; +s32 lbl_1_bss_18; // unused +s32 lbl_1_bss_14; +s32 lbl_1_bss_10; +s32 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +Process* lbl_1_bss_0; + +s32 lbl_1_data_0[][3] = { + { DATA_MAKE_NUM(DATADIR_M435, 27), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 0) }, + { DATA_MAKE_NUM(DATADIR_M435, 28), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 1) }, + { DATA_MAKE_NUM(DATADIR_M435, 30), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 2) }, + { DATA_MAKE_NUM(DATADIR_M435, 29), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 3) }, + { DATA_MAKE_NUM(DATADIR_M435, 32), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 4) }, + { DATA_MAKE_NUM(DATADIR_M435, 31), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 5) }, + { DATA_MAKE_NUM(DATADIR_M435, 33), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 6) }, + { DATA_MAKE_NUM(DATADIR_M435, 34), DATA_MAKE_NUM(DATADIR_M435, 26), DATA_MAKE_NUM(DATADIR_MGCONST, 7) } +}; + +char* lbl_1_data_E0[] = { + "c000m1-ske_head", + "c001m1-ske_head", + "c002m1-ske_head", + "c003m1-ske_head", + "c004m1-ske_head", + "c005m1-ske_head", + "c006m1-ske_head", + "c007m1-ske_head" +}; + +s32 lbl_1_data_100[][2] = { + { 0x00000100, 0x00000001 }, + { 0x00000100, 0x00000001 }, + { 0x00000080, 0x00000000 }, + { 0x00000080, 0x00000000 }, + { 0x00000080, 0x00000000 }, + { 0x00000100, 0x00000001 }, + { 0x00000080, 0x00000000 }, + { 0x00000080, 0x00000000 } +}; + +s32 lbl_1_data_140[][5] = { + { 91, 105, 126, 141, -1 }, + { 91, 105, 126, 141, -1 }, + { 124, 137, -1, -1, -1 }, + { 85, 100, 127, -1, -1 }, + { 124, 139, -1, -1, -1 }, + { 85, 97, 127, 139, -1 }, + { 127, 137, -1, -1, -1 }, + { 79, 95, 109, 127, -1 } +}; + +s32 lbl_1_data_1E0 = -1; +s32 lbl_1_data_1E4 = -1; +s32 lbl_1_data_1E8 = -1; + +void fn_1_0(void) { + s32 i; + + while (TRUE) { + HuPrcVSleep(); + if (lbl_1_data_1E0 == -1 || lbl_1_data_1E4 == -1 || lbl_1_data_1E8 == -1 || lbl_1_data_1E4 != Hu3DMotionIDGet(lbl_1_data_1E0)) { + continue; + } + for (i = 0; i < 5; i++) { + if (lbl_1_data_140[lbl_1_data_1E8][i] != -1 && Hu3DMotionTimeGet(lbl_1_data_1E0) >= lbl_1_data_140[lbl_1_data_1E8][i]) { + OSReport("KE-System CHR:%d TIME:%d\n", lbl_1_data_1E8, lbl_1_data_140[lbl_1_data_1E8][i]); + HuAudFXPlay(0x6D8); + lbl_1_data_140[lbl_1_data_1E8][i] = -1; + } + } + } +} + +void fn_1_1A8(void) { + s32 var_r31; + + var_r31 = Hu3DGLightCreate(0.0f, 1000.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0xFF, 0xFF, 0xFF); + Hu3DGLightInfinitytSet(var_r31); +} + +void fn_1_230(s32 arg0, s32 arg1, float arg2) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk48[arg0] = arg1; + if (var_r31->unk64[arg0] < 0.0f) { + var_r31->unk64[arg0] = -arg2; + } + else { + var_r31->unk64[arg0] = arg2; + } +} + +void fn_1_298(s32 arg0, float arg1) { + fn_1_230(arg0, -1, arg1); +} + +float fn_1_304(s32 arg0) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + if (var_r31->unk64[arg0] != 0.0f) { + var_r31->unk64[arg0] *= -0.9f; + if (var_r31->unk48[arg0] == -1) { + if (var_r31->unk64[arg0] >= -0.5f && var_r31->unk64[arg0] <= 0.5f) { + var_r31->unk64[arg0] = 0.0f; + } + } + else { + var_r31->unk48[arg0]--; + if (var_r31->unk48[arg0] <= 0) { + var_r31->unk48[arg0] = 0; + var_r31->unk64[arg0] = 0.0f; + } + } + } + return var_r31->unk64[arg0]; +} + +void fn_1_434(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + if (HuPadBtn[0] & 0x200) { + if (HuPadBtn[0] & 0x100) { + var_r31->unk14 -= HuPadStkY[0] / 10.0f; + } + else { + var_r31->unk0C += HuPadStkX[0] / 10.0f; + var_r31->unk10 += HuPadStkY[0] / 10.0f; + } + } + if (HuPadBtn[0] & 0x800) { + var_r31->unk24 -= HuPadStkY[0] / 100.0f; + var_r31->unk28 += HuPadStkX[0] / 100.0f; + if (var_r31->unk24 < 0.0f) { + var_r31->unk24 += 360.0f; + } + if (var_r31->unk24 >= 360.0f) { + var_r31->unk24 -= 360.0f; + } + if (var_r31->unk28 < 0.0f) { + var_r31->unk28 += 360.0f; + } + if (var_r31->unk28 >= 360.0f) { + var_r31->unk28 -= 360.0f; + } + } + if (HuPadBtn[0] & 0x400) { + var_r31->unk3C -= HuPadStkY[0] / 10.0f; + } + print8(16, 100, 1.0f, ">>>>>>>>>> CAMERA TEST <<<<<<<<<<"); + print8(16, 110, 1.0f, "CENTER : %.2f, %.2f, %.2f", var_r31->unk0C, var_r31->unk10, var_r31->unk14); + print8(16, 120, 1.0f, "ROT : %.2f, %.2f, %.2f", var_r31->unk24, var_r31->unk28, var_r31->unk2C); + print8(16, 130, 1.0f, "ZOOM : %.2f", var_r31->unk3C); +} + +void fn_1_818(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk0C = 0.0f; + var_r31->unk10 = 225.0f; + var_r31->unk14 = 1740.0f; + var_r31->unk24 = -10.0f; + var_r31->unk28 = 0.0f; + var_r31->unk2C = 0.0f; + var_r31->unk3C = 300.0f; +} + +void fn_1_8A4(void (*arg0)(void)) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk04 = arg0; +} + +void fn_1_8C4(void (*arg0)(void)) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk08 = arg0; +} + +void fn_1_8E4(omObjData* arg0) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + if (var_r31->unk04 != NULL) { + var_r31->unk04(); + } +} + +void fn_1_92C(omObjData* arg0) { + StructBssE08* var_r23; + + var_r23 = &lbl_1_bss_E08; + fn_1_8E4(arg0); + Center.x = var_r23->unk0C + fn_1_304(0); + Center.y = var_r23->unk10 + fn_1_304(1); + Center.z = var_r23->unk14 + fn_1_304(2); + CRot.x = var_r23->unk24 + fn_1_304(3); + CRot.y = var_r23->unk28 + fn_1_304(4); + CRot.z = var_r23->unk2C + fn_1_304(5); + CZoom = var_r23->unk3C + fn_1_304(6); +} + +void fn_1_FDC(void) { + Hu3DCameraCreate(1); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraPerspectiveSet(1, 45.0f, 0.1f, 10000.0f, 1.2f); + fn_1_8A4(fn_1_818); + fn_1_8C4(fn_1_434); + omAddObjEx(lbl_1_bss_0, 0x7FDA, 0, 0, -1, omOutView); + omAddObjEx(lbl_1_bss_0, 0x7FD9, 0, 0, -1, fn_1_92C); +} + +void fn_1_1110(void) { + Vec sp20 = { 0.0f, 2500.0f, 1.0f }; + Vec sp14 = { 0.0f, 0.0f, 0.0f }; + Vec sp8 = { 0.0f, 1.0f, 0.0f }; + + Hu3DShadowCreate(45.0f, 2000.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.8f); + Hu3DShadowPosSet(&sp20, &sp8, &sp14); +} + +void fn_1_11D4(s32 arg0, float arg1, float arg2, s32 arg3) { + WindowData* temp_r29; + float temp_f29; + float temp_f28; + float temp_f25; + float temp_f24; + float temp_f27; + float temp_f26; + float var_f31; + float var_f30; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + s32 i; + + temp_r29 = &winData[arg0]; + temp_f29 = temp_r29->pos_x; + temp_f28 = temp_r29->pos_y; + temp_f25 = temp_r29->w; + temp_f24 = temp_r29->h; + var_f31 = temp_f29 + temp_f25 * arg1; + temp_f27 = 4.0f / temp_f25; + if (var_f31 + 4.0f - (temp_f29 + temp_f25) >= 0.0f) { + var_f31 = temp_f29 + temp_f25 - 4.0f; + } + else { + if (temp_f29 - (var_f31 - 2.0f) >= 0.0f) { + var_f31 = temp_f29; + } + else { + var_f31 -= 2.0f; + } + } + var_f30 = temp_f28 + temp_f24 * arg2; + temp_f26 = 4.0f / temp_f24; + if (var_f30 + 4.0f - (temp_f28 + temp_f24) >= 0.0f) { + var_f30 = temp_f28 + temp_f24 - 4.0f; + } + else { + if (temp_f28 - (var_f30 - 2.0f) >= 0.0f) { + var_f30 = temp_f28; + } + else { + var_f30 -= 2.0f; + } + } + if (arg3 != 0) { + HuWinPosSet(arg0, var_f31, var_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + var_f23 = var_f31; + var_f21 = temp_f27; + var_f22 = var_f30; + var_f20 = temp_f26; + } + else { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + var_f23 = temp_f29; + var_f21 = 1.0f; + var_f22 = temp_f28; + var_f20 = 1.0f; + } + HuWinDispOn(arg0); + for (i = 0; i <= 15; i++) { + HuPrcVSleep(); + if (arg3 != 0) { + if (i <= 10) { + var_f23 = fn_1_152D4(var_f31, temp_f29, i, 10.0f); + var_f21 = fn_1_152D4(temp_f27, 1.0f, i, 10.0f); + } + else { + var_f22 = fn_1_152D4(var_f30, temp_f28, i - 10, 5.0f); + var_f20 = fn_1_152D4(temp_f26, 1.0f, i - 10, 5.0f); + } + } + else { + if (i <= 10) { + var_f22 = fn_1_152D4(temp_f28, var_f30, i, 10.0f); + var_f20 = fn_1_152D4(1.0f, temp_f26, i, 10.0f); + } + else { + var_f23 = fn_1_152D4(temp_f29, var_f31, i - 10, 5.0f); + var_f21 = fn_1_152D4(1.0f, temp_f27, i - 10, 5.0f); + } + } + HuWinPosSet(arg0, var_f23, var_f22); + HuWinScaleSet(arg0, var_f21, var_f20); + } + if (arg3 != 0) { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + } + else { + HuWinPosSet(arg0, var_f31, var_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + } + HuPrcVSleep(); +} + +void fn_1_1818(void) { + HuWinInit(1); +} + +void fn_1_183C(s32 arg0, float arg1, float arg2) { + WindowData* temp_r31; + float temp_f29; + float temp_f28; + float temp_f27; + float temp_f26; + float temp_f25; + float temp_f24; + float var_f31; + float var_f30; + float temp_f23; + float temp_f22; + float temp_f21; + float temp_f20; + s32 i; + + temp_r31 = &winData[arg0]; + temp_f29 = temp_r31->pos_x; + temp_f28 = temp_r31->pos_y; + temp_f27 = temp_r31->w; + temp_f26 = temp_r31->h; + var_f31 = temp_f29 + temp_f27 * arg1; + temp_f25 = 4.0f / temp_f27; + if (var_f31 + 4.0f - (temp_f29 + temp_f27) >= 0.0f) { + var_f31 = temp_f29 + temp_f27 - 4.0f; + } + else { + if (temp_f29 - (var_f31 - 2.0f) >= 0.0f) { + var_f31 = temp_f29; + } + else { + var_f31 -= 2.0f; + } + } + var_f30 = temp_f28 + temp_f26 * arg2; + temp_f24 = 4.0f / temp_f26; + if (var_f30 + 4.0f - (temp_f28 + temp_f26) >= 0.0f) { + var_f30 = temp_f28 + temp_f26 - 4.0f; + } + else { + if (temp_f28 - (var_f30 - 2.0f) >= 0.0f) { + var_f30 = temp_f28; + } + else { + var_f30 -= 2.0f; + } + } + HuWinPosSet(arg0, var_f31, var_f30); + HuWinScaleSet(arg0, temp_f25, temp_f24); + HuPrcVSleep(); + for (i = 0; i < 10; i++) { + temp_f23 = fn_1_152D4(var_f31, temp_f29, i, 10.0f); + temp_f21 = fn_1_152D4(temp_f25, 1.0f, i, 10.0f); + temp_f22 = fn_1_152D4(var_f30, temp_f28, i, 10.0f); + temp_f20 = fn_1_152D4(temp_f24, 1.0f, i, 10.0f); + HuWinPosSet(arg0, temp_f23, temp_f22); + HuWinScaleSet(arg0, temp_f21, temp_f20); + HuPrcVSleep(); + } + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + HuPrcVSleep(); +} + +s32 fn_1_1C94(float arg0, float arg1, float arg2, float arg3, s32 arg4) { + s32 var_r31; + s32 sp18[][6] = { + { 0xFF, 0xFF, 0xCC, 0x00, 0x09, 0x09 }, + { 0xCC, 0xFF, 0xFF, 0x00, 0x09, 0x09 }, + { 0xFF, 0xCC, 0xFF, 0x00, 0x09, 0x09 } + }; + + var_r31 = HuWinCreate(arg0, arg1, arg2, arg3, 1); + HuSprColorSet(winData[var_r31].group, 0, sp18[arg4][0], sp18[arg4][1], sp18[arg4][2]); + winData[var_r31].mess_color = sp18[arg4][3]; + winData[var_r31].mess_shadow_color = sp18[arg4][4]; + winData[var_r31].attr |= 0x80; + HuWinBGTPLvlSet(var_r31, sp18[arg4][5] / 10.0f); + winData[var_r31].active_pad = 0; + fn_1_11D4(var_r31, 0.5f, 0.5f, 1); + return var_r31; +} + +s32 fn_1_1E80(float arg0, float arg1, float arg2, float arg3, s32 arg4) { + return fn_1_1C94(arg0, arg1, arg2, arg3, arg4); +} + +void fn_1_206C(s32 arg0, float arg1, float arg2) { + WindowData* temp_r31; + float temp_f29; + float temp_f28; + float temp_f27; + float temp_f26; + float temp_f25; + float temp_f24; + float var_f31; + float var_f30; + float temp_f23; + float temp_f22; + float temp_f21; + float temp_f20; + s32 i; + + temp_r31 = &winData[arg0]; + temp_f29 = temp_r31->pos_x; + temp_f28 = temp_r31->pos_y; + temp_f27 = temp_r31->w; + temp_f26 = temp_r31->h; + var_f31 = temp_f29 + temp_f27 * arg1; + temp_f25 = 4.0f / temp_f27; + if (var_f31 + 4.0f - (temp_f29 + temp_f27) >= 0.0f) { + var_f31 = temp_f29 + temp_f27 - 4.0f; + } + else { + if (temp_f29 - (var_f31 - 2.0f) >= 0.0f) { + var_f31 = temp_f29; + } + else { + var_f31 = var_f31 - 2.0f; + } + } + var_f30 = temp_f28 + temp_f26 * arg2; + temp_f24 = 4.0f / temp_f26; + if (var_f30 + 4.0f - (temp_f28 + temp_f26) >= 0.0f) { + var_f30 = temp_f28 + temp_f26 - 4.0f; + } + else { + if (temp_f28 - (var_f30 - 2.0f) >= 0.0f) { + var_f30 = temp_f28; + } + else { + var_f30 = var_f30 - 2.0f; + } + } + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + HuPrcVSleep(); + for (i = 0; i < 10; i++) { + temp_f23 = fn_1_1539C(temp_f29, var_f31, i, 10.0f); + temp_f21 = fn_1_1539C(1.0f, temp_f25, i, 10.0f); + temp_f22 = fn_1_1539C(temp_f28, var_f30, i, 10.0f); + temp_f20 = fn_1_1539C(1.0f, temp_f24, i, 10.0f); + HuWinPosSet(arg0, temp_f23, temp_f22); + HuWinScaleSet(arg0, temp_f21, temp_f20); + HuPrcVSleep(); + } + HuWinPosSet(arg0, var_f31, var_f30); + HuWinScaleSet(arg0, temp_f25, temp_f24); + HuPrcVSleep(); +} + +void fn_1_24C4(s32 arg0) { + HuWinMesSet(arg0, MAKE_MESSID(29, 22)); + HuPrcVSleep(); + fn_1_11D4(arg0, 0.5f, 0.5f, 0); + HuWinKill(arg0); +} + +void fn_1_252C(s32 arg0) { + fn_1_24C4(arg0); +} + +void fn_1_2594(s32 arg0, s32 arg1) { + s32 i; + s32 var_r30; + s32 temp_r28; + + var_r30 = 0; + temp_r28 = GWMessDelayGet(); + if (arg1 > 0) { + HuPrcSleep(arg1); + return; + } + HuWinComKeyReset(); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_E88[i].unk2C == 0) { + var_r30 = 1; + winData[arg0].active_pad = 0xF; + } + } + if (var_r30 == 0) { + winData[arg0].active_pad = 0xF; + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, temp_r28); + } + HuWinMesWait(arg0); + HuWinComKeyReset(); +} + +void fn_1_267C(s32 arg0) { + s32 var_r31; + s32 temp_r28; + s32 i; + + var_r31 = 0; + temp_r28 = GWMessDelayGet(); + HuWinComKeyReset(); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_E88[i].unk2C == 0) { + var_r31 = 1; + winData[arg0].active_pad = 0xF; + } + } + if (var_r31 == 0) { + winData[arg0].active_pad = 0xF; + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, temp_r28); + } + var_r31 = HuWinChoiceGet(arg0, 1); + if (var_r31 == -1 || var_r31 == 1) { + lbl_1_bss_8 = 0; + } + else { + lbl_1_bss_8 = 1; + } + HuWinComKeyReset(); +} + +void fn_1_2798(s32 arg0, s32 arg1) { + winData[arg0].mess_color = 0; + winData[arg0].mess_shadow_color = 9; + winData[arg0].attr |= 0x80; + HuWinMesSet(arg0, arg1); +} + +void fn_1_281C(float* arg0, s32 arg1) { + float spC[2]; + + HuWinMesMaxSizeGet(1, spC, arg1); + if (spC[0] > arg0[0]) { + arg0[0] = spC[0]; + } + if (spC[1] > arg0[1]) { + arg0[1] = spC[1]; + } +} + +void fn_1_288C(s32 arg0) { + if (lbl_1_bss_10 == 0) { + lbl_1_bss_10 = 1; + lbl_1_bss_C = arg0 * 60; + } +} + +s32 fn_1_28C4(void) { + if (lbl_1_bss_10 == 3) { + return 1; + } else { + return 0; + } +} + +s32 fn_1_28E8(void) { + if (lbl_1_bss_10 == 2) { + lbl_1_bss_10 = 3; + lbl_1_bss_C = 30; + } +} + +s32 lbl_1_data_26C = -1; + +void fn_1_2920(omObjData* arg0) { + switch (lbl_1_bss_10) { + case 1: + if (lbl_1_data_26C == -1) { + lbl_1_data_26C = MGSeqCreate(1, lbl_1_bss_C / 60, -1, -1); + } + lbl_1_bss_10 = 2; + break; + case 2: + lbl_1_bss_C--; + if (lbl_1_data_26C != -1) { + MGSeqParamSet(lbl_1_data_26C, 1, (lbl_1_bss_C + 59) / 60); + } + if (lbl_1_bss_C <= 0) { + lbl_1_bss_C = 30; + lbl_1_bss_10 = 3; + } + break; + case 3: + if (lbl_1_data_26C != -1) { + MGSeqParamSet(lbl_1_data_26C, 2, -1); + lbl_1_data_26C = -1; + } + lbl_1_bss_C = 0; + lbl_1_bss_10 = 0; + break; + } +} + +void fn_1_2AF0(void) { + lbl_1_bss_C = 0; + lbl_1_bss_10 = 0; + omAddObjEx(lbl_1_bss_0, 0x2000, 0, 0, -1, fn_1_2920); +} + +void fn_1_2B54(omObjData* arg0) { + s32 i; + + for (i = 0; i < 3; i++) { + Hu3DData[arg0->model[i + 5]].rot.y += 360.0f / (2500.0f + 2500.0f * i); + } +} + +void fn_1_2BFC(s32 arg0) { + StructBssDE4* var_r31; + + var_r31 = &lbl_1_bss_DE4; + var_r31->unk04 = arg0; +} + +void fn_1_2C1C(omObjData* arg0) { + StructBssDE4* var_r30; + + var_r30 = &lbl_1_bss_DE4; + switch (var_r30->unk04) { + case 2: + fn_1_157BC(arg0, 9, 9, 1, 0); + Hu3DModelAttrReset(arg0->model[9], 1); + var_r30->unk1C = 0; + fn_1_230(1, 10, 4.0f); + HuAudFXPlay(0x6CF); + /* fallthrough */ + case 1: + fn_1_157BC(arg0, 0, 0, 1, 0); + fn_1_157BC(arg0, 3, 3, 1, 0); + fn_1_157BC(arg0, 4, 4, 1, 0); + fn_1_157BC(arg0, 5, 5, 1, 0); + fn_1_157BC(arg0, 6, 6, 1, 0); + fn_1_157BC(arg0, 7, 7, 1, 0); + if (var_r30->unk04 == 1) { + HuAudFXPlay(0x6CE); + } + var_r30->unk04 = 20; + break; + case 3: + var_r30->unk04 = 10; + fn_1_157BC(arg0, 0, 0, 1, 0); + fn_1_157BC(arg0, 1, 1, 1, 0); + fn_1_157BC(arg0, 2, 2, 1, 0); + fn_1_157BC(arg0, 3, 3, 1, 0); + fn_1_157BC(arg0, 4, 4, 1, 0); + fn_1_157BC(arg0, 5, 5, 1, 0); + fn_1_157BC(arg0, 6, 6, 1, 0); + fn_1_157BC(arg0, 7, 7, 1, 0); + fn_1_157BC(arg0, 8, 8, 0, 0); + HuAudFXPlay(0x6D0); + Hu3DModelAttrReset(arg0->model[8], 1); + break; + case 10: + fn_1_230(6, -1, 8.0f); + if (Hu3DMotionTimeGet(arg0->model[3]) >= 30.0f) { + var_r30->unk04 = 20; + fn_1_3AF4(1); + fn_1_230(6, -1, 128.0f); + HuAudFXPlay(0x6DA); + omVibrate(fn_1_8E48(0), 12, 12, 0); + omVibrate(fn_1_8E48(1), 12, 12, 0); + omVibrate(fn_1_8E48(2), 12, 12, 0); + omVibrate(fn_1_8E48(3), 12, 12, 0); + } + break; + case 20: + if (Hu3DMotionEndCheck(arg0->model[3])) { + var_r30->unk04 = 0; + fn_1_157BC(arg0, 3, 10, 1, 1); + fn_1_157BC(arg0, 4, 11, 1, 1); + Hu3DModelAttrSet(arg0->model[8], 1); + Hu3DModelAttrSet(arg0->model[9], 1); + } + break; + } + if (Hu3DMotionTimeGet(arg0->model[9]) >= 25.0f && var_r30->unk1C == 0) { + var_r30->unk1C = 1; + fn_1_230(1, 10, 4.0f); + } else if (Hu3DMotionTimeGet(arg0->model[9]) >= 40.0f && var_r30->unk1C == 1) { + var_r30->unk1C = 2; + fn_1_230(1, 10, 4.0f); + } + if (var_r30->unk04 == 0) { + if (var_r30->unk14++ >= 300) { + var_r30->unk14 = 0; + if (rand8() % 2 != 0) { + fn_1_2BFC(1); + } + } + } +} + +void fn_1_31BC(omObjData* arg0) { + fn_1_2B54(arg0); + fn_1_2C1C(arg0); +} + +void fn_1_3288(StructBssDE4* arg0) { + omObjData* temp_r31; + + temp_r31 = arg0->unk00; + fn_1_157BC(temp_r31, 0, 0, 1, 2); + Hu3DModelPosSet(temp_r31->model[1], 0.0f, 0.0f, -680.0f); + fn_1_157BC(temp_r31, 1, 1, 1, 2); + Hu3DModelPosSet(temp_r31->model[2], 0.0f, 0.0f, -680.0f); + fn_1_157BC(temp_r31, 2, 2, 1, 2); + Hu3DModelPosSet(temp_r31->model[3], 525.0f, 0.0f, -1150.0f); + fn_1_157BC(temp_r31, 3, 10, 1, 1); + Hu3DModelPosSet(temp_r31->model[4], -525.0f, 0.0f, -1150.0f); + fn_1_157BC(temp_r31, 4, 11, 1, 1); + Hu3DModelPosSet(temp_r31->model[5], 50.0f, 150.0f, 50.0f); + fn_1_157BC(temp_r31, 5, 5, 1, 2); + Hu3DModelPosSet(temp_r31->model[6], 0.0f, 150.0f, 0.0f); + fn_1_157BC(temp_r31, 6, 6, 1, 2); + Hu3DModelPosSet(temp_r31->model[7], 0.0f, 150.0f, 0.0f); + fn_1_157BC(temp_r31, 7, 7, 1, 2); + Hu3DModelAttrSet(temp_r31->model[8], 1); + fn_1_157BC(temp_r31, 8, 8, 1, 2); + Hu3DModelAttrSet(temp_r31->model[9], 1); + fn_1_157BC(temp_r31, 9, 9, 1, 2); + temp_r31->work[0] = temp_r31->work[1] = temp_r31->work[2] = temp_r31->work[3] = 0; + arg0->unk04 = arg0->unk08 = arg0->unk0C = arg0->unk10 = 0; + arg0->unk14 = arg0->unk18 = arg0->unk1C = arg0->unk20 = 0; +} + +void fn_1_3558(omObjData* arg0) { + StructBssDE4* var_r30; + + var_r30 = &lbl_1_bss_DE4; + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 39)); + arg0->motion[0] = Hu3DMotionIDGet(arg0->model[0]); + Hu3DModelShadowMapSet(arg0->model[0]); + fn_1_157BC(arg0, 0, 0, 1, 2); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 40)); + arg0->motion[1] = Hu3DMotionIDGet(arg0->model[1]); + Hu3DModelPosSet(arg0->model[1], 0.0f, 0.0f, -680.0f); + Hu3DModelShadowMapSet(arg0->model[1]); + fn_1_157BC(arg0, 1, 1, 1, 2); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 41)); + arg0->motion[2] = Hu3DMotionIDGet(arg0->model[2]); + Hu3DModelPosSet(arg0->model[2], 0.0f, 0.0f, -680.0f); + Hu3DModelShadowSet(arg0->model[2]); + fn_1_157BC(arg0, 2, 2, 1, 2); + arg0->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 42)); + arg0->motion[3] = Hu3DMotionIDGet(arg0->model[3]); + arg0->motion[10] = Hu3DJointMotionFile(arg0->model[3], DATA_MAKE_NUM(DATADIR_M435, 44)); + Hu3DModelPosSet(arg0->model[3], 525.0f, 0.0f, -1150.0f); + Hu3DModelShadowSet(arg0->model[3]); + fn_1_157BC(arg0, 3, 10, 1, 1); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 43)); + arg0->motion[4] = Hu3DMotionIDGet(arg0->model[4]); + arg0->motion[11] = Hu3DJointMotionFile(arg0->model[4], DATA_MAKE_NUM(DATADIR_M435, 45)); + Hu3DModelPosSet(arg0->model[4], -525.0f, 0.0f, -1150.0f); + Hu3DModelShadowSet(arg0->model[4]); + fn_1_157BC(arg0, 4, 11, 1, 1); + arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 36)); + arg0->motion[5] = Hu3DMotionIDGet(arg0->model[5]); + Hu3DModelPosSet(arg0->model[5], 50.0f, 150.0f, 50.0f); + fn_1_157BC(arg0, 5, 5, 1, 2); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 37)); + arg0->motion[6] = Hu3DMotionIDGet(arg0->model[6]); + Hu3DModelPosSet(arg0->model[6], 0.0f, 150.0f, 0.0f); + fn_1_157BC(arg0, 6, 6, 1, 2); + arg0->model[7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 38)); + arg0->motion[7] = Hu3DMotionIDGet(arg0->model[7]); + Hu3DModelPosSet(arg0->model[7], 0.0f, 150.0f, 0.0f); + fn_1_157BC(arg0, 7, 7, 1, 2); + arg0->model[8] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 46)); + arg0->motion[8] = Hu3DMotionIDGet(arg0->model[8]); + Hu3DModelAttrSet(arg0->model[8], 1); + Hu3DModelLayerSet(arg0->model[8], 1); + fn_1_157BC(arg0, 8, 8, 1, 2); + arg0->model[9] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 47)); + arg0->motion[9] = Hu3DMotionIDGet(arg0->model[9]); + Hu3DModelAttrSet(arg0->model[9], 1); + Hu3DModelLayerSet(arg0->model[9], 1); + fn_1_157BC(arg0, 9, 9, 1, 2); + arg0->work[0] = arg0->work[1] = arg0->work[2] = arg0->work[3] = 0; + var_r30->unk04 = var_r30->unk08 = var_r30->unk0C = var_r30->unk10 = 0; + var_r30->unk14 = var_r30->unk18 = var_r30->unk1C = var_r30->unk20 = 0; + arg0->func = fn_1_31BC; +} + +void fn_1_3AF4(s32 arg0) { + StructBssC30* var_r31; + + var_r31 = &lbl_1_bss_C30; + var_r31->unk04 = arg0; +} + +float lbl_1_data_2C4 = 270.0f; + +void fn_1_3B14(omObjData* arg0) { + Vec sp14; + Vec sp8; + ModelData* temp_r30; + StructBssC30* var_r29; + s32 var_r28; + + temp_r30 = &Hu3DData[arg0->model[1]]; + var_r29 = &lbl_1_bss_C30; + if (var_r29->unk04 == 1) { + var_r29->unk04 = 0; + fn_1_157BC(arg0, 0, 0, 1, 0); + fn_1_157BC(arg0, 1, 2, 1, 0); + Hu3DModelAttrReset(arg0->model[0], 1); + Hu3DModelAttrReset(arg0->model[1], 1); + } else if (var_r29->unk04 >= 2) { + temp_r30->pos.x = 750.0 * cosd(lbl_1_data_2C4); + temp_r30->pos.z = 500.0 + 750.0 * sind(lbl_1_data_2C4); + temp_r30->rot.y += 0.2f; + if (var_r29->unk04 == 2) { + var_r29->unk04 = 3; + lbl_1_bss_4F10.unk00 = HuAudFXPlay(0x6DB); + fn_1_157BC(arg0, 1, 1, 1, 1); + } + lbl_1_data_2C4 -= 0.2f; + if (lbl_1_data_2C4 < 180.0f) { + var_r29->unk04 = 0; + HuAudFXStop(lbl_1_bss_4F10.unk00); + lbl_1_bss_4F10.unk00 = -1; + lbl_1_data_2C4 = 270.0f; + Hu3DModelPosSet(arg0->model[1], -750.0f, 0.0f, 500.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 90.0f, 0.0f); + fn_1_157BC(arg0, 1, 1, 1, 2); + fn_1_7D50(6); + } + } + sp14.x = temp_r30->pos.x; + sp14.y = temp_r30->pos.y; + sp14.z = temp_r30->pos.z; + Hu3D3Dto2D(&sp14, 1, &sp8); + var_r28 = 32.0f + sp8.x * 0.1f; + if (var_r28 <= 32) { + var_r28 = 32; + } else if (var_r28 >= 96) { + var_r28 = 96; + } + if (lbl_1_bss_4F10.unk00 != -1) { + HuAudFXPanning(lbl_1_bss_4F10.unk00, var_r28); + } +} + +void fn_1_3E84(s32 arg0) { + StructBssC30* var_r31; + + var_r31 = &lbl_1_bss_C30; + var_r31->unk08 = arg0; +} + +void fn_1_3EA4(omObjData* arg0) { + StructBssC30* var_r31; + s32 i; + + var_r31 = &lbl_1_bss_C30; + switch (var_r31->unk08) { + case 0: + var_r31->unk10 = 0; + var_r31->unk78 = 7.5f; + var_r31->unk74 = var_r31->unk74; + break; + case 1: + if (lbl_1_bss_4F10.unk14 == 0) { + lbl_1_bss_4F10.unk14 = 1; + lbl_1_bss_4F10.unk04 = HuAudFXPlay(0x6DE); + } + fn_1_4104(1); + var_r31->unk74 -= var_r31->unk78; + if (var_r31->unk74 < 0.0f) { + var_r31->unk74 += 360.0f; + } + break; + case 2: + if (lbl_1_bss_4F10.unk14 == 1) { + lbl_1_bss_4F10.unk14 = 0; + HuAudFXStop(lbl_1_bss_4F10.unk04); + } + for (i = 0; i < 3; i++) { + if (var_r31->unk2C[i] != 7) { + break; + } + } + var_r31->unk74 -= var_r31->unk78; + if (var_r31->unk74 < 0.0f) { + var_r31->unk74 += 360.0f; + } + if (i == 3) { + var_r31->unk08 = 3; + } + break; + case 3: + var_r31->unk74 -= var_r31->unk78; + if (var_r31->unk74 < 0.0f) { + var_r31->unk74 += 360.0f; + } + var_r31->unk78 -= 0.025f; + if (var_r31->unk78 < 0.0f) { + var_r31->unk78 = 0.0f; + } + break; + } + omSetRot(arg0, 0.0f, 0.0f, var_r31->unk74); +} + +void fn_1_4104(s32 arg0) { + StructBssC30* var_r31; + + var_r31 = &lbl_1_bss_C30; + if (var_r31->unk10 == 0) { + var_r31->unk10 = arg0; + } +} + +void fn_1_4130(omObjData* arg0) { + Vec spC; + StructBss4EE8* sp8; + StructBssC30* var_r31; + ModelData* temp_r28; + ModelData* temp_r29; + s32 temp_r26; + s32 i; + + sp8 = &lbl_1_bss_4EE8; + var_r31 = &lbl_1_bss_C30; + temp_r26 = lbl_1_bss_4EE8.unk10 - 1; + switch (var_r31->unk10) { + case 1: + var_r31->unk10 = 2; + if (temp_r26 < 0) { + var_r31->unk10 = 0; + break; + } + for (i = 0; i < 3; i++) { + temp_r28 = &Hu3DData[arg0->model[i + temp_r26 * 3 + 2]]; + var_r31->unk13C[i].x = temp_r28->pos.x; + var_r31->unk13C[i].y = temp_r28->pos.y; + var_r31->unk13C[i].z = temp_r28->pos.z; + var_r31->unk160[i].x = var_r31->unk13C[i].x + rand8() % 50; + var_r31->unk160[i].y = 7.5f; + var_r31->unk160[i].z = var_r31->unk13C[i].z + (rand8() % 150 - 75); + var_r31->unk184[i].x = 0.0f; + var_r31->unk184[i].y = rand8() % 120; + if (rand8() % 2 == 0) { + var_r31->unk184[i].y *= -1.0f; + } + var_r31->unk184[i].z = 5.0f + rand8() % 5; + var_r31->unk14[i] = rand8() % 10 + 15; + } + var_r31->unk20 = 0; + break; + case 2: + for (i = 0; i < 3; i++) { + temp_r29 = &Hu3DData[arg0->model[i + temp_r26 * 3 + 2]]; + spC.x = fn_1_1539C(var_r31->unk13C[i].x, var_r31->unk160[i].x, var_r31->unk20, var_r31->unk14[i]); + spC.y = fn_1_1539C(var_r31->unk13C[i].y, var_r31->unk160[i].y, var_r31->unk20, var_r31->unk14[i]); + spC.z = fn_1_1539C(var_r31->unk13C[i].z, var_r31->unk160[i].z, var_r31->unk20, var_r31->unk14[i]); + Hu3DModelPosSet(arg0->model[i + temp_r26 * 3 + 2], spC.x, spC.y, spC.z); + if (var_r31->unk20 <= var_r31->unk14[i]) { + temp_r29->rot.y = fn_1_15294(temp_r29->rot.y, var_r31->unk184[i].y, 15.0f); + temp_r29->rot.z = fn_1_15294(temp_r29->rot.z, 90.0f, 15.0f); + } else { + temp_r29->rot.z = fn_1_15294(temp_r29->rot.z, 0.0f, 3.0f); + } + } + var_r31->unk20++; + if (var_r31->unk20 >= 60) { + var_r31->unk20 = 0; + var_r31->unk10 = 3; + } + break; + } +} + +s32 fn_1_46D8(float arg0, float arg1) { + s32 sp8[] = { 90, 5, 70, 30, 50, 1, 100, 10 }; + s32 var_r31; + + if (arg0 >= 0.0f && arg0 < 45.0f) { + var_r31 = sp8[0]; + } else if (arg0 >= 45.0f && arg0 < 90.0f) { + var_r31 = sp8[1]; + } else if (arg0 >= 90.0f && arg0 < 135.0f) { + var_r31 = sp8[2]; + } else if (arg0 >= 135.0f && arg0 < 180.0f) { + var_r31 = sp8[3]; + } else if (arg0 >= 180.0f && arg0 < 225.0f) { + var_r31 = sp8[4]; + } else if (arg0 >= 225.0f && arg0 < 270.0f) { + var_r31 = sp8[5]; + } else if (arg0 >= 270.0f && arg0 < 315.0f) { + var_r31 = sp8[6]; + } else if (arg0 >= 315.0f && arg0 < 360.0f) { + var_r31 = sp8[7]; + } + if (arg1 > 75.0f) { + var_r31 = 0; + } + if (arg1 < 25.0f) { + var_r31 = -999; + } + return var_r31; +} + +void fn_1_4904(s32 arg0) { + Vec spC; + StructBssC30* var_r31; + + var_r31 = &lbl_1_bss_C30; + spC.x = -675.0f; + spC.y = var_r31->unkD0[arg0].y - 175.0f; + spC.z = var_r31->unkD0[arg0].z - 500.0f; + var_r31->unk7C[arg0] = var_r31->unk1A8[arg0] + sqrtf(spC.y * spC.y + spC.z * spC.z); + var_r31->unk94[arg0] = var_r31->unk74 - var_r31->unk78 * (var_r31->unk50[arg0] + 2) + atan2d(spC.y, spC.z); + if (var_r31->unk94[arg0] >= 360.0f) { + var_r31->unk94[arg0] -= 360.0f; + } else if (var_r31->unk94[arg0] < 0.0f) { + var_r31->unk94[arg0] += 360.0f; + } + if (var_r31->unk94[arg0] >= 360.0f) { + var_r31->unk94[arg0] -= 360.0f; + } else if (var_r31->unk94[arg0] < 0.0f) { + var_r31->unk94[arg0] += 360.0f; + } + if (var_r31->unk94[arg0] >= 360.0f) { + var_r31->unk94[arg0] -= 360.0f; + } else if (var_r31->unk94[arg0] < 0.0f) { + var_r31->unk94[arg0] += 360.0f; + } + var_r31->unk5C[arg0] = fn_1_46D8(var_r31->unk94[arg0], var_r31->unk7C[arg0]); +} + +void fn_1_4CEC(s32 arg0) { + StructBssC30* var_r31; + + var_r31 = &lbl_1_bss_C30; + if ((var_r31->unk7C[arg0] >= 23.0f && var_r31->unk7C[arg0] <= 27.0f) + || (var_r31->unk7C[arg0] >= 73.0f && var_r31->unk7C[arg0] <= 77.0f)) + { + var_r31->unk1A8[arg0] = 5.0f; + if (rand8() % 2 == 0) { + var_r31->unk1A8[arg0] *= -1.0f; + } + } +} + +void fn_1_4E08(s32 arg0) { + StructBssC30* var_r31; + float temp_f31; + + var_r31 = &lbl_1_bss_C30; + temp_f31 = var_r31->unk94[arg0]; + if ((temp_f31 >= -2.0f && temp_f31 < 2.0f) + || (temp_f31 >= 43.0f && temp_f31 < 47.0f) + || (temp_f31 >= 88.0f && temp_f31 < 92.0f) + || (temp_f31 >= 133.0f && temp_f31 < 137.0f) + || (temp_f31 >= 178.0f && temp_f31 < 182.0f) + || (temp_f31 >= 223.0f && temp_f31 < 227.0f) + || (temp_f31 >= 268.0f && temp_f31 < 272.0f) + || (temp_f31 >= 313.0f && temp_f31 < 317.0f)) + { + var_r31->unk50[arg0]++; + } +} + +s32 fn_1_4FB4(void) { + StructBssC30* var_r29; + s32 var_r28; + s32 i; + + var_r28 = 0; + var_r29 = &lbl_1_bss_C30; + for (i = 0; i < 3; i++) { + var_r28 += var_r29->unk5C[i]; + } + if (var_r28 < 0) { + return 1; + } + if (var_r29->unk24 == var_r28) { + for (i = 0; i < 3; i++) { + var_r29->unk50[i] += 3; + fn_1_4904(i); + } + return 0; + } + if (var_r29->unk24 > var_r28) { + var_r29->unk24 = var_r28; + } + return 1; +} + +s32 fn_1_5438(void) { + Vec spC; + float var_f28; + StructBssC30* var_r30; + s32 var_r29; + s32 i; + + var_r29 = 1; + var_r30 = &lbl_1_bss_C30; + for (i = 0; i < 3; i++) { + spC.x = -675.0f; + spC.y = var_r30->unkD0[i].y - 175.0f; + spC.z = var_r30->unkD0[i].z - 500.0f; + var_f28 = sqrtf(spC.y * spC.y + spC.z * spC.z); + if (var_f28 <= 30.0f) { + var_r29 = 0; + } + } + return var_r29; +} + +void fn_1_5600(s32 arg0) { + StructBssC30* var_r30; + s32 i; + + var_r30 = &lbl_1_bss_C30; + for (i = 0; i < 3; i++) { + var_r30->unk2C[i] = arg0; + } +} + +void fn_1_5644(omObjData* arg0) { + Vec sp2C; + float temp_f27; + float temp_f23; + StructBssC30* var_r31; + s32 temp_r26; + s32 i; + + var_r31 = &lbl_1_bss_C30; + temp_r26 = lbl_1_bss_4EE8.unk14; + for (i = 0; i < 3; i++) { + switch (var_r31->unk2C[i]) { + case 1: + var_r31->unkAC[i].x = var_r31->unkD0[i].x = -675.0f; + var_r31->unkAC[i].y = var_r31->unkD0[i].y = 175.0f; + var_r31->unkAC[i].z = var_r31->unkD0[i].z = 500.0f; + var_r31->unk38[i] = 0; + var_r31->unkF4[i].x = 0.0f; + var_r31->unkF4[i].y = -325.0f; + var_r31->unkF4[i].z = 500.0f; + var_r31->unk118[i].x = var_r31->unk118[i].y = var_r31->unk118[i].z = 0.0f; + var_r31->unk44[i] = 0; + var_r31->unk50[i] = i + 15; + var_r31->unk7C[i] = var_r31->unk88[i] = 0.0f; + var_r31->unk94[i] = var_r31->unkA0[i] = 0.0f; + var_r31->unk5C[i] = var_r31->unk68[i] = 0; + var_r31->unk1A8[i] = 0.0f; + Hu3DModelPosSet(arg0->model[i + temp_r26 * 3 + 2], var_r31->unkF4[i].x, var_r31->unkF4[i].y, var_r31->unkF4[i].z); + Hu3DModelRotSet(arg0->model[i + temp_r26 * 3 + 2], 0.0f, 0.0f, 0.0f); + /* fallthrough */ + case 2: + var_r31->unk2C[i] = 2; + temp_f27 = fn_1_152D4(1.5f, 0.5f, var_r31->unk38[i], 15.0f); + temp_f23 = fn_1_152D4(0.0f, 1.0f, var_r31->unk38[i], 10.0f); + Hu3DModelAttrReset(arg0->model[i + temp_r26 * 3 + 14], 1); + Hu3DModelScaleSet(arg0->model[i + temp_r26 * 3 + 14], temp_f27, temp_f27, temp_f27); + Hu3DModelTPLvlSet(arg0->model[i + temp_r26 * 3 + 14], temp_f23); + Hu3DModelPosSet(arg0->model[i + temp_r26 * 3 + 14], var_r31->unkD0[i].x, var_r31->unkD0[i].y, var_r31->unkD0[i].z); + if (var_r31->unk38[i]++ >= 20) { + var_r31->unk38[i] = 0; + var_r31->unk2C[i] = 3; + } + break; + case 3: + if (var_r31->unk38[i]++ >= 30) { + var_r31->unk38[i] = 0; + temp_f23 = 100.0f - i * 15; + temp_f27 = 2.0f * (rand8() % 180); + var_r31->unkAC[i].x = -675.0f; + var_r31->unkAC[i].y = 175.0 + temp_f23 * sind(temp_f27); + var_r31->unkAC[i].z = 500.0 + temp_f23 * cosd(temp_f27); + } + var_r31->unkD0[i].x = var_r31->unkAC[i].x; + var_r31->unkD0[i].y = fn_1_15294(var_r31->unkD0[i].y, var_r31->unkAC[i].y, 30.0f); + var_r31->unkD0[i].z = fn_1_15294(var_r31->unkD0[i].z, var_r31->unkAC[i].z, 30.0f); + Hu3DModelPosSet(arg0->model[i + temp_r26 * 3 + 14], var_r31->unkD0[i].x, var_r31->unkD0[i].y, var_r31->unkD0[i].z); + break; + case 4: + var_r31->unk2C[i] = 100; + fn_1_4904(i); + fn_1_4CEC(i); + fn_1_4E08(i); + fn_1_4904(i); + var_r31->unk28 = 0; + HuAudFXPlay(0x6DC); + /* fallthrough */ + case 100: + var_r31->unk2C[i] = 5; + if (var_r31->unk28 == 1) { + var_r31->unk2C[i] = 5; + } + if (i == 2) { + while (fn_1_4FB4() == 0) { + } + var_r31->unk28 = 1; + } + Hu3DModelAttrReset(arg0->model[i + temp_r26 * 3 + 2], 1); + break; + case 5: + var_r31->unkF4[i].x = fn_1_1526C(0.0f, -675.0f, var_r31->unk44[i], var_r31->unk50[i]); + var_r31->unkF4[i].y = fn_1_1526C(175.0f, var_r31->unkD0[i].y, var_r31->unk44[i], var_r31->unk50[i]); + var_r31->unkF4[i].z = fn_1_1526C(500.0f, var_r31->unkD0[i].z, var_r31->unk44[i], var_r31->unk50[i]); + var_r31->unk118[i].x -= 360.0f / var_r31->unk50[i]; + if (var_r31->unk118[i].x >= 360.0f) { + var_r31->unk118[i].x -= 360.0f; + } else if (var_r31->unk118[i].x < 0.0f) { + var_r31->unk118[i].x += 360.0f; + } + Hu3DModelPosSet(arg0->model[i + temp_r26 * 3 + 2], var_r31->unkF4[i].x, var_r31->unkF4[i].y, var_r31->unkF4[i].z); + Hu3DModelRotSet(arg0->model[i + temp_r26 * 3 + 2], var_r31->unk118[i].x, 0.0f, 0.0f); + if (var_r31->unk44[i]++ >= var_r31->unk50[i]) { + var_r31->unk2C[i] = 6; + var_r31->unk38[i] = 0; + } + break; + case 6: + var_r31->unk2C[i] = 7; + sp2C.x = -675.0f; + sp2C.y = var_r31->unkF4[i].y - 175.0f; + sp2C.z = var_r31->unkF4[i].z - 500.0f; + var_r31->unk88[i] = var_r31->unk1A8[i] + sqrtf(sp2C.y * sp2C.y + sp2C.z * sp2C.z); + var_r31->unkA0[i] = var_r31->unk74 + atan2d(sp2C.y, sp2C.z); + if (var_r31->unkA0[i] >= 360.0f) { + var_r31->unkA0[i] -= 360.0f; + } else if (var_r31->unkA0[i] < 0.0f) { + var_r31->unkA0[i] += 360.0f; + } + var_r31->unk118[i].y = atan2d(sp2C.y, sp2C.z); + var_r31->unk68[i] = fn_1_46D8(var_r31->unkA0[i], var_r31->unk88[i]); + if (var_r31->unk68[i] >= 0) { + HuAudFXPlay(0x6DD); + } else { + HuAudFXPlay(0x6DF); + } + fn_1_8544(7); + fn_1_3E84(2); + omVibrate(fn_1_8E48(lbl_1_bss_4EE8.unk14), 12, 6, 6); + /* fallthrough */ + case 7: + temp_f27 = fn_1_152D4(0.5f, 1.5f, var_r31->unk38[i], 15.0f); + temp_f23 = fn_1_152D4(1.0f, 0.0f, var_r31->unk38[i], 10.0f); + Hu3DModelScaleSet(arg0->model[i + temp_r26 * 3 + 14], temp_f27, temp_f27, temp_f27); + Hu3DModelTPLvlSet(arg0->model[i + temp_r26 * 3 + 14], temp_f23); + if (var_r31->unk38[i]++ >= 20) { + Hu3DModelAttrSet(arg0->model[i + temp_r26 * 3 + 14], 1); + } + var_r31->unkF4[i].x = -675.0f; + var_r31->unkF4[i].y = 175.0 + var_r31->unk88[i] * sind(var_r31->unk118[i].y); + var_r31->unkF4[i].z = 500.0 + var_r31->unk88[i] * cosd(var_r31->unk118[i].y); + Hu3DModelPosSet(arg0->model[i + temp_r26 * 3 + 2], var_r31->unkF4[i].x, var_r31->unkF4[i].y, var_r31->unkF4[i].z); + Hu3DModelRotSet(arg0->model[i + temp_r26 * 3 + 2], var_r31->unk118[i].x, 0.0f, 0.0f); + var_r31->unk118[i].z = var_r31->unk118[i].y + var_r31->unk74; + if (var_r31->unk118[i].z >= 360.0f) { + var_r31->unk118[i].z -= 360.0f; + } else if (var_r31->unk118[i].z < 0.0f) { + var_r31->unk118[i].z += 360.0f; + } + var_r31->unk118[i].x -= var_r31->unk78; + if (var_r31->unk118[i].x >= 360.0f) { + var_r31->unk118[i].x -= 360.0f; + } else if (var_r31->unk118[i].x < 0.0f) { + var_r31->unk118[i].x += 360.0f; + } + var_r31->unk118[i].y += var_r31->unk78; + if (var_r31->unk118[i].y >= 360.0f) { + var_r31->unk118[i].y -= 360.0f; + } else if (var_r31->unk118[i].y < 0.0f) { + var_r31->unk118[i].y += 360.0f; + } + break; + } + } +} + +void fn_1_725C(omObjData* arg0) { + fn_1_3B14(arg0); + fn_1_3EA4(arg0); + fn_1_5644(arg0); + fn_1_4130(arg0); +} + +void fn_1_72A4(StructBssC30* arg0) { + omObjData* temp_r29; + s32 i; + s32 j; + + temp_r29 = arg0->unk00; + Hu3DModelRotSet(temp_r29->model[0], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(temp_r29->model[0], 1); + Hu3DModelPosSet(temp_r29->model[1], 0.0f, 0.0f, -250.0f); + Hu3DModelRotSet(temp_r29->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(temp_r29->model[1], 1); + for (i = 0; i < 4; i++) { + for (j = 0; j < 3; j++) { + Hu3DModelPosSet(temp_r29->model[i + 2], 0.0f, -325.0f, 500.0f); + Hu3DModelAttrSet(temp_r29->model[j + i * 3 + 2], 1); + Hu3DModelAttrSet(temp_r29->model[j + i * 3 + 14], 1); + } + } + arg0->unk74 = 0.0f; + for (i = 0; i < 3; i++) { + arg0->unk2C[i] = 0; + arg0->unkAC[i].x = arg0->unkD0[i].x = -675.0f; + arg0->unkAC[i].y = arg0->unkD0[i].y = 175.0f; + arg0->unkAC[i].z = arg0->unkD0[i].z = 500.0f; + arg0->unk38[i] = 0; + arg0->unkF4[i].x = 0.0f; + arg0->unkF4[i].y = -325.0f; + arg0->unkF4[i].z = 500.0f; + arg0->unk118[i].x = arg0->unk118[i].y = arg0->unk118[i].z = 0.0f; + arg0->unk44[i] = 0; + arg0->unk50[i] = 0; + arg0->unk7C[i] = arg0->unk88[i] = 0.0f; + arg0->unk94[i] = arg0->unkA0[i] = 0.0f; + arg0->unk5C[i] = arg0->unk68[i] = 0; + } + arg0->unk24 = 9999; + temp_r29->work[0] = temp_r29->work[1] = temp_r29->work[2] = temp_r29->work[3] = 0; + arg0->unk04 = arg0->unk08 = arg0->unk0C = arg0->unk10 = 0; + arg0->unk14[0] = arg0->unk14[1] = arg0->unk14[2] = arg0->unk20 = 0; +} + +void fn_1_7628(omObjData* arg0) { + StructBssC30* var_r30; + s32 i; + s32 j; + + var_r30 = &lbl_1_bss_C30; + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 24)); + arg0->motion[0] = Hu3DMotionIDGet(arg0->model[0]); + Hu3DModelRotSet(arg0->model[0], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[0], 1U); + Hu3DModelLayerSet(arg0->model[0], 1); + Hu3DModelShadowSet(arg0->model[0]); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 25)); + arg0->motion[1] = Hu3DMotionIDGet(arg0->model[1]); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[1], DATA_MAKE_NUM(DATADIR_M435, 35)); + Hu3DModelPosSet(arg0->model[1], 0.0f, 0.0f, -250.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[1], 1); + Hu3DModelLayerSet(arg0->model[1], 1); + Hu3DModelShadowSet(arg0->model[1]); + Hu3DModelHookSet(arg0->model[1], "m435a02-itemfook_d", arg0->model[0]); + for (i = 0; i < 4; i++) { + for (j = 0; j < 3; j++) { + arg0->model[j + i * 3 + 2] = Hu3DModelCreateFile(lbl_1_data_0[fn_1_8F34(i)][0]); + Hu3DModelAttrSet(arg0->model[j + i * 3 + 2], 1); + Hu3DModelShadowSet(arg0->model[j + i * 3 + 2]); + arg0->model[j + i * 3 + 14] = Hu3DModelCreateFile(lbl_1_data_0[fn_1_8F34(i)][1]); + Hu3DModelRotSet(arg0->model[j + i * 3 + 14], 0.0f, 90.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[j + i * 3 + 14], 1); + } + } + arg0->work[0] = arg0->work[1] = arg0->work[2] = arg0->work[3] = 0; + var_r30->unk04 = var_r30->unk08 = var_r30->unk0C = var_r30->unk10 = 0; + var_r30->unk14[0] = var_r30->unk14[1] = var_r30->unk14[2] = var_r30->unk20 = 0; + arg0->func = fn_1_725C; +} + +void fn_1_799C(s32 arg0) { + StructBssC1C* var_r31; + + var_r31 = &lbl_1_bss_C1C; + var_r31->unk00->work[0] = arg0; +} + +void fn_1_79C0(omObjData* arg0) { + switch (arg0->work[0]) { + case 1: + arg0->work[0] = 0; + fn_1_157BC(arg0, 0, 1, 30, 1); + break; + case 2: + arg0->work[0] = 0; + fn_1_157BC(arg0, 0, 2, 10, 0); + break; + case 3: + arg0->work[0] = 0; + fn_1_157BC(arg0, 0, 3, 10, 0); + break; + } +} + +void fn_1_7A78(StructBssC1C* arg0) { + omObjData* temp_r31; + + temp_r31 = arg0->unk00; + omSetTra(temp_r31, 0.0f, 37.0f, -565.0f); + omSetSca(temp_r31, 1.5f, 1.5f, 1.5f); + fn_1_157BC(temp_r31, 0, 1, 1, 1); + temp_r31->work[0] = temp_r31->work[1] = temp_r31->work[2] = temp_r31->work[3] = 0; + arg0->unk04 = arg0->unk08 = arg0->unk0C = arg0->unk10 = 0; +} + +void fn_1_7B44(omObjData* arg0) { + StructBssC1C* var_r30; + + var_r30 = &lbl_1_bss_C1C; + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 48)); + arg0->motion[0] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 53)); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 49)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 50)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 51)); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 52)); + omSetTra(arg0, 0.0f, 37.0f, -565.0f); + omSetSca(arg0, 1.5f, 1.5f, 1.5f); + Hu3DModelShadowSet(arg0->model[0]); + fn_1_157BC(arg0, 0, 1, 1, 1); + arg0->work[0] = arg0->work[1] = arg0->work[2] = arg0->work[3] = 0; + var_r30->unk04 = var_r30->unk08 = var_r30->unk0C = var_r30->unk10 = 0; + arg0->func = fn_1_79C0; +} + +void fn_1_7D28(s32 arg0, s32 arg1) { + StructBss2A4* temp_r31; + + temp_r31 = &lbl_1_bss_2A4[arg0]; + temp_r31->unk1C = arg1; +} + +void fn_1_7D50(s32 arg0) { + StructBss2A4* temp_r31; + + temp_r31 = &lbl_1_bss_2A4[1]; + temp_r31->unk20 = arg0; +} + +void fn_1_7D74(omObjData* arg0) { + StructBss2A4* temp_r30; + + temp_r30 = &lbl_1_bss_2A4[arg0->work[0]]; + switch (temp_r30->unk1C) { + case 1: + temp_r30->unk1C = 0; + if (arg0->work[0] != 0) { + fn_1_157BC(arg0, 0, 0, 30, 1); + } else { + fn_1_157BC(arg0, 0, 0, 30, 1); + fn_1_157BC(arg0, 1, 5, 30, 1); + } + break; + case 2: + temp_r30->unk1C = 0; + if (arg0->work[0] != 0) { + fn_1_157BC(arg0, 0, 4, 10, 0); + } else { + fn_1_157BC(arg0, 0, 2, 10, 0); + fn_1_157BC(arg0, 1, 5, 10, 2); + } + break; + case 3: + temp_r30->unk1C = 0; + if (arg0->work[0] != 0) { + fn_1_157BC(arg0, 0, 9, 5, 0); + } + break; + } +} + +void fn_1_7ED4(omObjData* arg0) { + StructBss2A4* temp_r31; + Mtx sp38; + Mtx sp8; + + temp_r31 = &lbl_1_bss_2A4[arg0->work[0]]; + switch (temp_r31->unk20) { + case 1: + case 3: + case 6: + temp_r31->unk04.x = arg0->trans.x; + temp_r31->unk04.y = arg0->trans.y; + temp_r31->unk04.z = arg0->trans.z; + Hu3DModelObjMtxGet(lbl_1_bss_C30.unk00->model[1], "435a02-point00", sp38); + temp_r31->unk10.x = sp38[0][3]; + temp_r31->unk10.y = sp38[1][3]; + temp_r31->unk10.z = sp38[2][3]; + if (temp_r31->unk20 == 1) { + temp_r31->unk10.x = temp_r31->unk04.x - 30.0f; + } else if (temp_r31->unk20 == 6) { + temp_r31->unk10.x = (120.0f + sp38[0][3]); + temp_r31->unk10.z = (sp38[2][3] - 50.0f); + } + temp_r31->unk2C = 0; + temp_r31->unk20++; + break; + case 2: + fn_1_15934(arg0, 0, 1, 10, 1); + fn_1_195F4(arg0, 0, &temp_r31->unk04, &temp_r31->unk10, 5, temp_r31->unk2C++, 0xF); + if (temp_r31->unk2C > 15) { + temp_r31->unk20++; + } + break; + case 4: + if (temp_r31->unk2C == 25) { + fn_1_15934(arg0, 0, 0, 5, 1); + } else if (temp_r31->unk2C == 40) { + fn_1_15934(arg0, 0, 5, 30, 1); + } + fn_1_195F4(arg0, 0, &temp_r31->unk04, &temp_r31->unk10, 10, temp_r31->unk2C++, 25); + if (temp_r31->unk2C > 60) { + fn_1_3AF4(2); + temp_r31->unk20++; + } + break; + case 5: + Hu3DModelObjMtxGet(lbl_1_bss_C30.unk00->model[1], "435a02-point00", sp8); + omSetTra(arg0, sp8[0][3], sp8[1][3], sp8[2][3]); + omSetRot(arg0, 0.0f, Hu3DData[lbl_1_bss_C30.unk00->model[1]].rot.y - 90.0f, 0.0f); + break; + case 7: + fn_1_15934(arg0, 0, 1, 10, 1); + fn_1_19530(arg0, 0, &temp_r31->unk04, &temp_r31->unk10, 5, temp_r31->unk2C++, 15); + fn_1_19658(arg0, 0, 90.0f, 5); + if (temp_r31->unk2C > 15) { + temp_r31->unk20++; + } + break; + case 8: + fn_1_15934(arg0, 0, 0, 5, 1); + lbl_1_bss_14 = 1; + temp_r31->unk20 = temp_r31->unk2C = 0; + break; + } +} + +void fn_1_8250(s32 arg0) { + StructBss2A4* temp_r31; + + temp_r31 = &lbl_1_bss_2A4[1]; + temp_r31->unk24 = arg0; +} + +void fn_1_8274(omObjData* arg0) { + StructBss2A4* temp_r31; + Mtx sp8; + + temp_r31 = &lbl_1_bss_2A4[arg0->work[0]]; + switch (temp_r31->unk24) { + case 1: + case 3: + case 5: + fn_1_15934(temp_r31->unk00, 0, 1, 10, 1); + temp_r31->unk04.x = arg0->trans.x; + temp_r31->unk04.y = arg0->trans.y; + temp_r31->unk04.z = arg0->trans.z; + if (temp_r31->unk24 == 1) { + temp_r31->unk10.x = -400.0f; + temp_r31->unk10.y = arg0->trans.y; + temp_r31->unk10.z = -310.0f; + } else if (temp_r31->unk24 == 3) { + temp_r31->unk10.x = 400.0f; + temp_r31->unk10.y = arg0->trans.y; + temp_r31->unk10.z = arg0->trans.z; + } else if (temp_r31->unk24 == 5) { + temp_r31->unk10.x = 400.0f; + temp_r31->unk10.y = 37.0f; + temp_r31->unk10.z = -425.0f; + } + temp_r31->unk2C = 0; + temp_r31->unk24++; + break; + case 2: + fn_1_195F4(arg0, 0, &temp_r31->unk04, &temp_r31->unk10, 10, temp_r31->unk2C++, 90); + if (temp_r31->unk2C > 90) { + temp_r31->unk24++; + } + break; + case 4: + fn_1_195F4(arg0, 0, &temp_r31->unk04, &temp_r31->unk10, 10, temp_r31->unk2C++, 90); + if (temp_r31->unk2C > 90) { + temp_r31->unk24++; + } + break; + case 6: + fn_1_195F4(arg0, 0, &temp_r31->unk04, &temp_r31->unk10, 10, temp_r31->unk2C++, 15); + if (temp_r31->unk2C > 15) { + temp_r31->unk24++; + temp_r31->unk2C = 0; + } + break; + case 7: + fn_1_19658(arg0, 0, -15.0f, 5); + if (temp_r31->unk2C++ > 15) { + temp_r31->unk24++; + } + break; + case 8: + fn_1_15934(temp_r31->unk00, 0, 0, 10, 1); + temp_r31->unk24 = 0; + break; + case 10: + temp_r31->unk24 = 0; + Hu3DModelObjMtxGet(lbl_1_bss_C30.unk00->model[1], "435a02-point00", sp8); + arg0->trans.x = sp8[0][3]; + arg0->trans.y = sp8[1][3]; + arg0->trans.z = sp8[2][3]; + break; + } +} + +void fn_1_8544(s32 arg0) { + StructBss2A4* temp_r31; + + temp_r31 = &lbl_1_bss_2A4[1]; + fn_1_15934(temp_r31->unk00, 0, arg0, 1, 0); +} + +void fn_1_8590(omObjData* arg0) { + StructBss2A4* temp_r29; + + temp_r29 = &lbl_1_bss_2A4[arg0->work[0]]; + if (temp_r29->unk1C != 0) { + fn_1_7D74(arg0); + } + if (temp_r29->unk20 != 0) { + fn_1_7ED4(arg0); + } + fn_1_8274(arg0); +} + +void fn_1_8734(StructBss2A4* arg0) { + omObjData* temp_r30; + + temp_r30 = arg0->unk00; + if (temp_r30->work[0] != 0) { + omSetTra(temp_r30, 400.0f, 37.0f, -425.0f); + omSetRot(temp_r30, 0.0f, -15.0f, 0.0f); + fn_1_157BC(temp_r30, 0, 0, 1, 1); + fn_1_19974(&arg0->unk3C, 0); + fn_1_198F8(&arg0->unk3C, -1); + fn_1_19968(&arg0->unk3C, -1); + } else { + omSetTra(temp_r30, -400.0f, 37.0f, -425.0f); + fn_1_157BC(temp_r30, 0, 0, 1, 1); + fn_1_157BC(temp_r30, 1, 5, 1, 1); + } + temp_r30->work[1] = temp_r30->work[2] = temp_r30->work[3] = 0; + arg0->unk1C = arg0->unk20 = arg0->unk24 = arg0->unk28 = 0; + arg0->unk2C = arg0->unk30 = arg0->unk34 = arg0->unk38 = 0; + lbl_1_bss_14 = 0; +} + +void fn_1_88B0(omObjData* arg0) { + StructBss2A4* temp_r30; + s32 var_r29; + + var_r29 = arg0->work[0]; + temp_r30 = &lbl_1_bss_2A4[var_r29]; + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 56)); + if (arg0->work[0] != 0) { + arg0->motion[0] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 57)); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 58)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 62)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 63)); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 64)); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 65)); + arg0->motion[6] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 66)); + arg0->motion[7] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 67)); + arg0->motion[8] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 68)); + arg0->motion[9] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 69)); + arg0->motion[10] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 70)); + arg0->motion[11] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 71)); + arg0->motion[12] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 72)); + omSetTra(arg0, 400.0f, 37.0f, -425.0f); + omSetRot(arg0, 0.0f, -15.0f, 0.0f); + fn_1_157BC(arg0, 0, 0, 1, 1); + fn_1_1A33C(lbl_1_bss_0, &temp_r30->unk3C, arg0->model[0], "g007m0-skl_at", 0x100, 0); + fn_1_19974(&temp_r30->unk3C, 0); + fn_1_198F8(&temp_r30->unk3C, -1); + fn_1_19968(&temp_r30->unk3C, -1); + } else { + arg0->motion[0] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 59)); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 60)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 61)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 73)); + omSetTra(arg0, -400.0f, 37.0f, -425.0f); + fn_1_157BC(arg0, 0, 0, 1, 1); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 74)); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[1], DATA_MAKE_NUM(DATADIR_M435, 75)); + arg0->motion[6] = Hu3DJointMotionFile(arg0->model[1], DATA_MAKE_NUM(DATADIR_M435, 76)); + Hu3DModelHookSet(arg0->model[0], "g007m0-itemhook_r", arg0->model[1]); + Hu3DModelLayerSet(arg0->model[0], 2); + Hu3DModelLayerSet(arg0->model[1], 2); + fn_1_157BC(arg0, 1, 5, 1, 1); + } + Hu3DModelShadowSet(arg0->model[0]); + arg0->work[1] = arg0->work[2] = arg0->work[3] = 0; + temp_r30->unk1C = temp_r30->unk20 = temp_r30->unk24 = temp_r30->unk28 = 0; + temp_r30->unk2C = temp_r30->unk30 = temp_r30->unk34 = temp_r30->unk38 = 0; + lbl_1_bss_14 = 0; + arg0->func = fn_1_8590; +} + +s32 fn_1_8E48(s32 arg0) { + StructBssE88* temp_r31; + + temp_r31 = &lbl_1_bss_E88[arg0]; + return temp_r31->unk24; +} + +s32 fn_1_8E70(void) { + s32 var_r30; + s32 i; + + var_r30 = 0; + for (i = 0; i < 4; i++) { + if (lbl_1_bss_E88[i].unk2C != 0) { + var_r30++; + } + } + return var_r30; +} + +s32 fn_1_8EC8(s32 arg0) { + if (lbl_1_bss_E88[arg0].unk2C != 0) { + return 1; + } else { + return 0; + } +} + +s32 fn_1_8EF4(s32 arg0) { + if (HuPadBtnDown[lbl_1_bss_E88[arg0].unk38] == 0x100) { + return 1; + } else { + return 0; + } +} + +s32 fn_1_8F34(s32 arg0) { + return lbl_1_bss_E88[arg0].unk34; +} + +void fn_1_8F4C(void) { + StructBssE88* temp_r31; + s32 sp8[4]; + s32 i; + + sp8[0] = GWPlayerCurrGet(); + for (i = 1; i < 4; i++) { + sp8[i] = sp8[i - 1] + 1; + if (sp8[i] >= 4) { + sp8[i] = 0; + } + } + for (i = 0; i < 4; i++) { + temp_r31 = &lbl_1_bss_E88[i]; + temp_r31->unk24 = sp8[i]; + temp_r31->unk28 = GWPlayerCfg[temp_r31->unk24].group; + temp_r31->unk2C = GWPlayerCfg[temp_r31->unk24].iscom; + temp_r31->unk30 = GWPlayerCfg[temp_r31->unk24].diff; + temp_r31->unk34 = GWPlayerCfg[temp_r31->unk24].character; + temp_r31->unk38 = GWPlayerCfg[temp_r31->unk24].pad_idx; + } +} + +void fn_1_909C(omObjData* arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5, s32 arg6) { + StructBssE88* sp18; + float temp_f31; + float temp_f30; + float var_f26; + float var_f27; + + sp18 = &lbl_1_bss_E88[arg0->work[0]]; + temp_f31 = arg1.x - arg0->trans.x; + temp_f30 = arg0->trans.z - arg1.z; + var_f26 = 90.0 + atan2d(temp_f30, temp_f31); + var_f27 = sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30); + if (var_f27 <= arg4) { + temp_f31 = temp_f30 = 0.0f; + } else { + temp_f31 = 72.0f * (temp_f31 / var_f27); + temp_f30 = 72.0f * (temp_f30 / var_f27); + } + var_f27 = arg3 * (sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30) / 72.0f); + if (var_f27 >= arg3) { + var_f27 = arg3; + } else if (var_f27 <= 1.0f) { + temp_f31 = temp_f30 = var_f27 = 0.0f; + } + if (temp_f31 != 0.0f || temp_f30 != 0.0f || arg2 >= 0.0f) { + if (arg2 >= 0.0f && temp_f31 == 0.0f && temp_f30 == 0.0f) { + var_f26 = arg2; + } + if (var_f26 >= 180.0f) { + if (arg0->rot.y - var_f26 >= 180.0f) { + arg0->rot.y -= 360.0f; + } + if (arg0->rot.y - var_f26 < -180.0f) { + arg0->rot.y += 360.0f; + } + } else { + if (arg0->rot.y - var_f26 > 180.0f) { + arg0->rot.y -= 360.0f; + } + if (arg0->rot.y - var_f26 <= -180.0f) { + arg0->rot.y += 360.0f; + } + } + arg0->rot.y = (var_f26 + arg0->rot.y * (arg5 - 1.0f)) / arg5; + } + arg0->trans.x += var_f27 * sind(arg0->rot.y); + arg0->trans.z += var_f27 * cosd(arg0->rot.y); + if (var_f27 >= 6.75f) { + if (arg6 != 0) { + fn_1_15934(arg0, 0, 5, 10, 1); + } else { + fn_1_15934(arg0, 0, 2, 10, 1); + } + } else { + if (var_f27 > 0.0f) { + fn_1_15934(arg0, 0, 2, 10, 1); + } else { + fn_1_15934(arg0, 0, 0, 10, 1); + } + } +} + +void fn_1_9768(s32 arg0, s32 arg1) { + StructBssE88* temp_r31; + + temp_r31 = &lbl_1_bss_E88[arg0]; + temp_r31->unk04 = arg1; +} + +void fn_1_9790(omObjData* arg0) { + StructBssE88* temp_r31; + + temp_r31 = &lbl_1_bss_E88[arg0->work[0]]; + switch (temp_r31->unk04) { + case 0: + temp_r31->unk04 = 99; + Hu3DModelAttrSet(arg0->model[0], 1); + break; + case 1: + temp_r31->unk04 = 99; + Hu3DModelAttrReset(arg0->model[0], 1); + break; + } +} + +void fn_1_9824(s32 arg0, s32 arg1) { + StructBssE88* temp_r31; + + temp_r31 = &lbl_1_bss_E88[arg0]; + temp_r31->unk08 = arg1; +} + +void fn_1_984C(omObjData* arg0) { + StructBssE88* temp_r30; + HsfMaterial* var_r31; + HsfData* temp_r28; + char** temp_r27; + s32 var_r23; + s32 i, j; + ModelData* temp_r25; + HsfAttribute* temp_r24; + + temp_r30 = &lbl_1_bss_E88[arg0->work[0]]; + if (temp_r30->unk08 != 1) { + return; + } + var_r23 = 1; + temp_r25 = &Hu3DData[arg0->model[0]]; + temp_r28 = temp_r25->hsfData; + var_r31 = temp_r28->material; + if (temp_r30->unk34 == 3) { + for (i = 0; i < temp_r25->hsfData->materialCnt; i++, var_r31++) { + if (i == 1 || i == 2) { + continue; + } + var_r31->color[0] *= temp_r30->unk3C; + if (var_r31->color[0] == 0) { + var_r31->color[0] = 0; + } + var_r31->color[1] *= temp_r30->unk3C; + if (var_r31->color[1] == 0) { + var_r31->color[1] = 0; + } + var_r31->color[2] *= temp_r30->unk3C; + if (var_r31->color[2] == 0) { + var_r31->color[2] = 0; + } + } + } else { + temp_r27 = CharModelTexNameGet(temp_r30->unk34, 2); + for (i = 0; i < temp_r28->materialCnt; i++, var_r31++) { + var_r23 = 1; + for (j = 0; j < var_r31->numAttrs; j++) { + temp_r24 = &temp_r28->attribute[var_r31->attrs[j]]; + if (strcmp(temp_r27[0], temp_r24->bitmap->name) == 0 || strcmp(temp_r27[1], temp_r24->bitmap->name) == 0) { + var_r23 = 0; + } + } + if (var_r23 == 0) { + continue; + } + var_r31->color[0] *= temp_r30->unk3C; + if (var_r31->color[0] == 0) { + var_r31->color[0] = 0; + } + var_r31->color[1] *= temp_r30->unk3C; + if (var_r31->color[1] == 0) { + var_r31->color[1] = 0; + } + var_r31->color[2] *= temp_r30->unk3C; + if (var_r31->color[2] == 0) { + var_r31->color[2] = 0; + } + } + } + temp_r30->unk3C -= 0.01; + if (temp_r30->unk3C < 0.0f) { + temp_r30->unk08 = 99; + temp_r30->unk3C = 0.0f; + } +} + +void fn_1_9BCC(s32 arg0, s32 arg1) { + StructBssE88* temp_r31; + + temp_r31 = &lbl_1_bss_E88[arg0]; + temp_r31->unk0C = arg1; + temp_r31->unk1C = 15 - arg1 * 5; + temp_r31->unk20 = 0; +} + +void fn_1_9C08(omObjData* arg0) { + StructBssE88* temp_r31 = &lbl_1_bss_E88[arg0->work[0]]; + Vec sp14[] = { + { 0.0f, 0.0f, 0.0f }, + { 600.0f, 0.0f, 800.0f }, + { -200.0f, 0.0f, 800.0f }, + { -1000.0f, 0.0f, 400.0f } + }; + + if (temp_r31->unk0C >= 1) { + if (temp_r31->unk1C-- <= 0) { + temp_r31->unk20 = 1; + } + if (temp_r31->unk20 != 0) { + fn_1_909C(arg0, sp14[temp_r31->unk0C], -1.0f, 7.0f + temp_r31->unk0C, 30.0f, 5.0f, 1); + } + } +} + +void fn_1_9D88(omObjData* arg0) { + fn_1_9790(arg0); + fn_1_984C(arg0); + fn_1_9C08(arg0); +} + +void fn_1_9F7C(StructBssE88* arg0) { + omObjData* temp_r30 = arg0->unk00; + Vec sp8[] = { + { 0.0f, 0.0f, 500.0f }, + { 200.0f, 0.0f, 300.0f }, + { 200.0f, 0.0f, 450.0f }, + { 200.0f, 0.0f, 600.0f } + }; + s32 temp_r29; + + temp_r29 = temp_r30->work[0]; + omSetTra(temp_r30, sp8[temp_r29].x, sp8[temp_r29].y, sp8[temp_r29].z); + omSetRot(temp_r30, 0.0f, -90.0f, 0.0f); + Hu3DModelAttrSet(temp_r30->model[0], 1); + fn_1_15934(temp_r30, 0, 0, 0, 1); + fn_1_19974(&arg0->unk58, 0); + fn_1_198F8(&arg0->unk58, -1); + fn_1_19968(&arg0->unk58, -1); + temp_r30->work[1] = temp_r30->work[2] = temp_r30->work[3] = 0; + arg0->unk04 = arg0->unk08 = arg0->unk0C = arg0->unk10 = 0; + arg0->unk14 = arg0->unk18 = arg0->unk1C = arg0->unk20 = 0; + arg0->unk40 = arg0->unk44 = arg0->unk48 = 0.0f; + arg0->unk4C = arg0->unk50 = arg0->unk54 = 0.0f; + arg0->unk3C = 1.0f; +} + +void fn_1_A148(omObjData* arg0) { + s32 temp_r29 = arg0->work[0]; + StructBssE88* temp_r31 = &lbl_1_bss_E88[temp_r29]; + Vec sp8[] = { + { 0.0f, 0.0f, 500.0f }, + { 200.0f, 0.0f, 300.0f }, + { 200.0f, 0.0f, 450.0f }, + { 200.0f, 0.0f, 600.0f } + }; + + arg0->model[0] = CharModelCreate(temp_r31->unk34, 2); + arg0->motion[0] = CharModelMotionCreate(temp_r31->unk34, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); + arg0->motion[1] = CharModelMotionCreate(temp_r31->unk34, DATA_MAKE_NUM(DATADIR_MARIOMOT, 2)); + arg0->motion[2] = CharModelMotionCreate(temp_r31->unk34, DATA_MAKE_NUM(DATADIR_MARIOMOT, 3)); + arg0->motion[6] = CharModelMotionCreate(temp_r31->unk34, DATA_MAKE_NUM(DATADIR_MARIOMOT, 28)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, temp_r31->unk34)); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 8 + temp_r31->unk34)); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[0], DATA_MAKE_NUM(DATADIR_M435, 16 + temp_r31->unk34)); + omSetTra(arg0, sp8[temp_r29].x, sp8[temp_r29].y, sp8[temp_r29].z); + omSetRot(arg0, 0.0f, -90.0f, 0.0f); + Hu3DModelShadowSet(arg0->model[0]); + Hu3DModelAttrSet(arg0->model[0], 1); + fn_1_15934(arg0, 0, 0, 0, 1); + fn_1_1A33C(lbl_1_bss_0, &temp_r31->unk58, arg0->model[0], lbl_1_data_E0[temp_r31->unk34], lbl_1_data_100[temp_r31->unk34][0], lbl_1_data_100[temp_r31->unk34][1]); + fn_1_19974(&temp_r31->unk58, 0); + fn_1_198F8(&temp_r31->unk58, -1); + fn_1_19968(&temp_r31->unk58, -1); + arg0->work[1] = arg0->work[2] = arg0->work[3] = 0; + temp_r31->unk04 = temp_r31->unk08 = temp_r31->unk0C = temp_r31->unk10 = 0; + temp_r31->unk14 = temp_r31->unk18 = temp_r31->unk1C = temp_r31->unk20 = 0; + temp_r31->unk40 = temp_r31->unk44 = temp_r31->unk48 = 0.0f; + temp_r31->unk4C = temp_r31->unk50 = temp_r31->unk54 = 0.0f; + temp_r31->unk3C = 1.0f; + CharModelMotionDataClose(temp_r31->unk34); + arg0->func = fn_1_9D88; +} + +void fn_1_A4B8(s32 arg0, s32 arg1) { + StructBss144* var_r31; + + var_r31 = &lbl_1_bss_144[arg0]; + var_r31->unk2C = arg1; +} + +void fn_1_A4E0(omObjData* arg0) { + StructBss144* temp_r31; + s32 i; + + temp_r31 = &lbl_1_bss_144[arg0->work[0]]; + switch (temp_r31->unk2C) { + case 0: + temp_r31->unk4C -= 0.1f; + if (temp_r31->unk4C < 0.0f) { + temp_r31->unk4C = 0.0f; + } + break; + case 1: + temp_r31->unk4C += 0.1f; + if (temp_r31->unk4C > 1.0f) { + temp_r31->unk4C = 1.0f; + } + break; + } + for (i = 0; i < 6; i++) { + if (temp_r31->unk4C > 0.0f) { + espDispOn(temp_r31->unk04[i]); + } else { + espDispOff(temp_r31->unk04[i]); + } + if (i == 5) { + espTPLvlSet(temp_r31->unk04[i], 0.5f * temp_r31->unk4C); + } else { + espTPLvlSet(temp_r31->unk04[i], temp_r31->unk4C); + } + } +} + +void fn_1_A670(s32 arg0, s32 arg1) { + StructBss144* temp_r31; + + temp_r31 = &lbl_1_bss_144[arg0]; + temp_r31->unk54 = temp_r31->unk50; + temp_r31->unk50 = arg1; + if (temp_r31->unk50 < 0) { + temp_r31->unk50 = 0; + } else if (temp_r31->unk50 > 999) { + temp_r31->unk50 = 999; + } + temp_r31->unk3C = 0; +} + +void fn_1_A6D4(omObjData* arg0) { + StructBss144* temp_r31; + s32 temp_r30; + s32 var_r29; + + temp_r31 = &lbl_1_bss_144[arg0->work[0]]; + if (temp_r31->unk3C <= 60) { + var_r29 = fn_1_152D4(temp_r31->unk54, temp_r31->unk50, temp_r31->unk3C++, 60.0f); + } else { + var_r29 = temp_r31->unk54 = temp_r31->unk50; + } + if ((temp_r30 = var_r29 / 100) == 0) { + espDispOff(temp_r31->unk04[0]); + } + espBankSet(temp_r31->unk04[0], temp_r30); + if ((temp_r30 = (var_r29 % 100) / 10) == 0 && var_r29 / 100 == 0) { + espDispOff(temp_r31->unk04[1]); + } + espBankSet(temp_r31->unk04[1], temp_r30); + temp_r30 = var_r29 % 10; + espBankSet(temp_r31->unk04[2], temp_r30); +} + +void fn_1_A8C4(omObjData* arg0) { + fn_1_A4E0(arg0); + fn_1_A6D4(arg0); +} + +void fn_1_ABFC(StructBss144* arg0) { + omObjData* temp_r30; + + temp_r30 = arg0->unk00; + espTPLvlSet(arg0->unk04[5], 0.0f); + espDispOff(arg0->unk04[5]); + espTPLvlSet(arg0->unk04[4], 0.0f); + espDispOff(arg0->unk04[4]); + espTPLvlSet(arg0->unk04[3], 0.0f); + espDispOff(arg0->unk04[3]); + espTPLvlSet(arg0->unk04[2], 0.0f); + espDispOff(arg0->unk04[2]); + espTPLvlSet(arg0->unk04[1], 0.0f); + espDispOff(arg0->unk04[1]); + espTPLvlSet(arg0->unk04[0], 0.0f); + espDispOff(arg0->unk04[0]); + temp_r30->work[1] = temp_r30->work[2] = temp_r30->work[3] = 0; + arg0->unk4C = 0.0f; + arg0->unk50 = arg0->unk54 = 0; + arg0->unk2C = arg0->unk30 = arg0->unk34 = arg0->unk38 = 0; + arg0->unk3C = arg0->unk40 = arg0->unk44 = arg0->unk48 = 0; +} + +void fn_1_AD5C(omObjData* arg0) { + StructBss144* temp_r31; + StructBssE88* var_r26; + s32 temp_r27; + s32 var_r28; + s32 var_r29; + + temp_r27 = arg0->work[0]; + var_r28 = 62; + temp_r31 = &lbl_1_bss_144[temp_r27]; + var_r26 = &lbl_1_bss_E88[temp_r27]; + if (temp_r27 < 2) { + var_r29 = temp_r27 * 118 + 84; + } else { + var_r29 = (temp_r27 - 2) * 118 + 390; + } + temp_r31->unk04[5] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 21), 100, 0); + espPosSet(temp_r31->unk04[5], var_r29, var_r28); + espColorSet(temp_r31->unk04[5], 1, 1, 1); + espTPLvlSet(temp_r31->unk04[5], 0.0f); + espDispOff(temp_r31->unk04[5]); + temp_r31->unk04[4] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 20), 100, 0); + espPosSet(temp_r31->unk04[4], var_r29, var_r28); + espTPLvlSet(temp_r31->unk04[4], 0.0f); + espDispOff(temp_r31->unk04[4]); + temp_r31->unk04[3] = espEntry(lbl_1_data_0[var_r26->unk34][2], 100, 0); + espPosSet(temp_r31->unk04[3], var_r29 - 46, var_r28 - 2); + espTPLvlSet(temp_r31->unk04[3], 0.0f); + espDispOff(temp_r31->unk04[3]); + temp_r31->unk04[0] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 51), 100, 0); + espPosSet(temp_r31->unk04[0], var_r29 - 14, var_r28 + 2); + espTPLvlSet(temp_r31->unk04[2], 0.0f); + espDispOff(temp_r31->unk04[2]); + temp_r31->unk04[1] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 51), 100, 0); + espPosSet(temp_r31->unk04[1], var_r29 + 6, var_r28 + 2); + espTPLvlSet(temp_r31->unk04[1], 0.0f); + espDispOff(temp_r31->unk04[1]); + temp_r31->unk04[2] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 51), 100, 0); + espPosSet(temp_r31->unk04[2], var_r29 + 26, var_r28 + 2); + espTPLvlSet(temp_r31->unk04[0], 0.0f); + espDispOff(temp_r31->unk04[0]); + arg0->work[1] = arg0->work[2] = arg0->work[3] = 0; + temp_r31->unk4C = 0.0f; + temp_r31->unk50 = temp_r31->unk54 = 0; + temp_r31->unk2C = temp_r31->unk30 = temp_r31->unk34 = temp_r31->unk38 = 0; + temp_r31->unk3C = temp_r31->unk40 = temp_r31->unk44 = temp_r31->unk48 = 0; + arg0->func = fn_1_A8C4; +} + +s32 fn_1_B1F4(omObjData* arg0) { + StructBss4EE8* var_r25; + StructBss9C* var_r31; + StructBssC1C* var_r28; + StructBssE88* temp_r26; + Mtx sp8; + s32 i; + + var_r25 = &lbl_1_bss_4EE8; + var_r31 = &lbl_1_bss_9C; + var_r28 = &lbl_1_bss_C1C; + temp_r26 = &lbl_1_bss_E88[var_r25->unk10]; + if (arg0->work[3] == 1) { + arg0->work[3] = 0; + arg0->work[1] = 1; + arg0->work[2] = 0; + var_r31->unk04 = 1; + for (i = 0; i < 6; i++) { + var_r31->unk08[i] = -(50.0f * i); + } + } + switch (arg0->work[1]) { + case 1: + arg0->work[1] = 2; + fn_1_19974(&temp_r26->unk58, 0); + fn_1_157BC(var_r28->unk00, 0, 4, 5, 0); + break; + case 2: + if (Hu3DMotionTimeGet(var_r28->unk00->model[0]) == 90.0f) { + arg0->work[1] = 3; + fn_1_157BC(temp_r26->unk00, 0, 6, 5, 0); + Hu3DMotionTimeSet(var_r28->unk00->model[0], 90.0f); + Hu3DMotionSpeedSet(var_r28->unk00->model[0], 0.0f); + HuAudCharVoicePlay(temp_r26->unk34, 0x123); + HuAudFXPlay(0x6D5); + omVibrate(temp_r26->unk24, 120, 12, 0); + } + break; + case 3: + Hu3DModelObjMtxGet(var_r28->unk00->model[0], "g000m0-itemhook_M", sp8); + fn_1_9824(var_r25->unk10, 1); + for (i = 0; i < 6; i++) { + if (var_r31->unk04 == 1 || (var_r31->unk04 == 0 && var_r31->unk08[i] > 0.0f)) { + var_r31->unk08[i] += 10.0f; + } + if (var_r31->unk08[i] > 0.0f) { + var_r31->unk48[i] += 0.1f; + var_r31->unk28[i] -= 5.0f; + if (var_r31->unk88[i] == 0.0f) { + fn_1_157BC(arg0, i + 1, i + 1, 1, 1); + } + if (var_r31->unk88[i] < 8.0f) { + var_r31->unk68[i] += 0.025f; + } else if (var_r31->unk88[i] < 23.0f) { + var_r31->unk68[i] = 0.7f; + } else if (var_r31->unk88[i] < 31.0f) { + var_r31->unk68[i] -= 0.1f; + if (var_r31->unk68[i] < 0.0f) { + var_r31->unk68[i] = 0.0f; + } + } + var_r31->unk88[i] += 1.0f; + } + Hu3DModelPosSet(arg0->model[i + 1], sp8[0][3], sp8[1][3] + var_r31->unk28[i], sp8[2][3] + var_r31->unk08[i]); + Hu3DModelScaleSet(arg0->model[i + 1], 1.5f * var_r31->unk48[i], 1.5f * var_r31->unk48[i], 1.5f * var_r31->unk48[i]); + Hu3DModelTPLvlSet(arg0->model[i + 1], var_r31->unk68[i]); + if (var_r31->unk88[i] == 31.0f) { + var_r31->unk08[i] = 0.0f; + var_r31->unk28[i] = 0.0f; + var_r31->unk48[i] = 0.0f; + var_r31->unk68[i] = 0.5f; + var_r31->unk88[i] = 0.0f; + } + } + if (arg0->work[2]++ >= 120) { + var_r31->unk04 = 0; + Hu3DMotionSpeedSet(var_r28->unk00->model[0], 1.0f); + } + if (arg0->work[2] >= 10 && arg0->work[2] <= 120) { + fn_1_230(6, -1, 8.0f); + } + break; + } +} + +void fn_1_B828(StructBss9C* arg0) { + omObjData* temp_r29; + s32 i; + + temp_r29 = arg0->unk00; + for (i = 0; i < 6; i++) { + fn_1_157BC(temp_r29, i + 1, i + 1, 5, 1); + arg0->unk08[i] = -(50.0f * i); + arg0->unk28[i] = 0.0f; + arg0->unk48[i] = 0.0f; + arg0->unk68[i] = 0.5f; + arg0->unk88[i] = 0.0f; + } + arg0->unk04 = 1; + temp_r29->work[0] = temp_r29->work[1] = temp_r29->work[2] = temp_r29->work[3] = 0; +} + +void fn_1_B950(omObjData *arg0) { + StructBss9C* var_r29; + s32 i; + + var_r29 = &lbl_1_bss_9C; + for (i = 0; i < 6; i++) { + if (i % 2 == 0) { + arg0->model[i + 1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 54)); + arg0->motion[i + 1] = Hu3DMotionIDGet(arg0->model[i + 1]); + } + else { + arg0->model[i + 1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M435, 55)); + arg0->motion[i + 1] = Hu3DMotionIDGet(arg0->model[i + 1]); + } + fn_1_157BC(arg0, i + 1, i + 1, 5, 1); + Hu3DModelPosSet(arg0->model[i + 1], 0.0f, 0.0f, 0.0f); + Hu3DModelRotSet(arg0->model[i + 1], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[i + 1], 0.0f, 0.0f, 0.0f); + Hu3DModelLayerSet(arg0->model[i + 1], 2); + var_r29->unk08[i] = -(50.0f * i); + var_r29->unk28[i] = 0.0f; + var_r29->unk48[i] = 0.0f; + var_r29->unk68[i] = 0.5f; + var_r29->unk88[i] = 0.0f; + } + var_r29->unk04 = 1; + arg0->func = (void*) fn_1_B1F4; // fn_1_B1F4 must return s32 to match +} + +void fn_1_BBE8(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk18 = 0.0f; + var_r31->unk1C = 300.0f; + var_r31->unk20 = 1740.0f; + var_r31->unk30 = -10.0f; + var_r31->unk34 = 0.0f; + var_r31->unk38 = 0.0f; + var_r31->unk40 = 300.0f; + fn_1_161B0(var_r31, 200.0f); +} + +void fn_1_BC98(void) { + StructBssE08* var_r31; + StructBssE08 sp8; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = 0.0f; + sp8.unk10 = 200.0f; + sp8.unk14 = -50.0f; + sp8.unk24 = 5.0f; + sp8.unk28 = 0.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 200.0f; + fn_1_188E0(var_r31, &sp8, var_r31->unk44++, 30.0f, 5.0f); +} + +void fn_1_BD70(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk18 = 0.0f; + var_r31->unk1C = 200.0f; + var_r31->unk20 = -50.0f; + var_r31->unk30 = 5.0f; + var_r31->unk34 = 0.0f; + var_r31->unk38 = 0.0f; + var_r31->unk40 = 200.0f; + fn_1_161B0(var_r31, 200.0f); +} + +void fn_1_BE20(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk18 = 0.0f; + var_r31->unk1C = 300.0f; + var_r31->unk20 = -550.0f; + var_r31->unk30 = -15.0f; + var_r31->unk34 = 0.0f; + var_r31->unk38 = 0.0f; + var_r31->unk40 = 1200.0f; + fn_1_161B0(var_r31, 45.0f); +} + +void fn_1_BED0(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk18 = 0.0f; + var_r31->unk1C = 150.0f; + var_r31->unk20 = -550.0f; + var_r31->unk30 = -15.0f; + var_r31->unk34 = 0.0f; + var_r31->unk38 = 0.0f; + var_r31->unk40 = 1200.0f; + fn_1_161B0(var_r31, 30.0f); +} + +void fn_1_BF80(void) { + StructBssC30* var_r29; + StructBss2A4* sp8; + StructBssE08* var_r31; + ModelData* temp_r30; + + var_r29 = &lbl_1_bss_C30; + sp8 = &lbl_1_bss_2A4[1]; + var_r31 = &lbl_1_bss_E08; + temp_r30 = &Hu3DData[var_r29->unk00->model[1]]; + var_r31->unk18 = temp_r30->pos.x; + var_r31->unk1C = temp_r30->pos.y + 175.0f; + var_r31->unk20 = temp_r30->pos.z; + var_r31->unk30 = -5.0f; + var_r31->unk34 = temp_r30->rot.y; + var_r31->unk38 = 0.0f; + var_r31->unk40 = 600.0f; + fn_1_161B0(var_r31, 15.0f); +} + +void fn_1_C064(void) { + StructBssE08* var_r31; + StructBssE08 sp8; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = 0.0f; + sp8.unk10 = 175.0f; + sp8.unk14 = -250.0f; + sp8.unk24 = -5.0f; + sp8.unk28 = 0.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 600.0f; + fn_1_17804(var_r31, &sp8, var_r31->unk44++, 10.0f, 5.0f); +} + +void fn_1_C13C(void) { + StructBssE08* var_r31; + StructBssE08 sp8; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = 0.0f; + sp8.unk10 = 145.0f; + sp8.unk14 = 500.0f; + sp8.unk24 = -15.0f; + sp8.unk28 = 90.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 800.0f; + fn_1_17804(var_r31, &sp8, var_r31->unk44++, 60.0f, 5.0f); +} + +void fn_1_C214(void) { + StructBssE08* var_r31; + StructBssE08 sp8; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = -1000.0f; + sp8.unk10 = 150.0f; + sp8.unk14 = 435.0f; + sp8.unk24 = 0.0f; + sp8.unk28 = 90.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 800.0f; + fn_1_188E0(var_r31, &sp8, var_r31->unk44++, 30.0f, 15.0f); +} + +void fn_1_C2EC(void) { + StructBssE08* var_r31; + StructBssE08 sp8; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = -1000.0f; + sp8.unk10 = 200.0f; + sp8.unk14 = 500.0f; + sp8.unk24 = 10.0f; + sp8.unk28 = 105.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 800.0f; + fn_1_17804(var_r31, &sp8, var_r31->unk44++, 30.0f, 15.0f); +} + +void fn_1_C3C4(void) { + StructBssE08* var_r31; + StructBssE08 sp8; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = -1000.0f; + sp8.unk10 = 200.0f; + sp8.unk14 = 500.0f; + sp8.unk24 = 10.0f; + sp8.unk28 = 105.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 800.0f; + fn_1_188E0(var_r31, &sp8, var_r31->unk44++, 10.0f, 5.0f); +} + +void fn_1_C49C(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk18 = 0.0f; + var_r31->unk1C = 150.0f; + var_r31->unk20 = -550.0f; + var_r31->unk30 = -15.0f; + var_r31->unk34 = 0.0f; + var_r31->unk38 = 0.0f; + var_r31->unk40 = 1200.0f; + fn_1_161B0(var_r31, 20.0f); +} + +void fn_1_C54C(void) { + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + var_r31->unk18 = 0.0f; + var_r31->unk1C = 300.0f; + var_r31->unk20 = -550.0f; + var_r31->unk30 = -15.0f; + var_r31->unk34 = 0.0f; + var_r31->unk38 = 0.0f; + var_r31->unk40 = 1200.0f; + fn_1_161B0(var_r31, 20.0f); +} + +void fn_1_C5FC(s32 arg0) { + StructBssE08* var_r20; + + var_r20 = &lbl_1_bss_E08; + fn_1_15E50(var_r20); + switch (arg0) { + case 0: + fn_1_8A4(fn_1_BBE8); + break; + case 1: + fn_1_8A4(fn_1_BC98); + break; + case 2: + fn_1_8A4(fn_1_BD70); + break; + case 3: + fn_1_8A4(fn_1_BE20); + break; + case 4: + fn_1_8A4(fn_1_BED0); + break; + case 5: + fn_1_8A4(fn_1_BF80); + break; + case 6: + fn_1_8A4(fn_1_C064); + break; + case 7: + fn_1_8A4(fn_1_C13C); + break; + case 8: + fn_1_8A4(fn_1_C214); + break; + case 10: + fn_1_8A4(fn_1_C49C); + break; + case 11: + fn_1_8A4(fn_1_C54C); + break; + } +} + +void fn_1_C764(void) { + float sp1C[] = { 0.0f, 0.0f }; + s32 sp8; + + lbl_1_bss_4 = 0; + fn_1_281C(sp1C, MAKE_MESSID(29, 0)); + fn_1_281C(sp1C, MAKE_MESSID(29, 1)); + sp8 = fn_1_1E80((580.0f - sp1C[0]) / 2, 80.0f, sp1C[0], sp1C[1], 2); + HuAudFXPlay(0x6D1); + fn_1_799C(2); + fn_1_2798(sp8, MAKE_MESSID(29, 0)); + fn_1_2594(sp8, 0); + fn_1_799C(2); + fn_1_2798(sp8, MAKE_MESSID(29, 1)); + fn_1_2594(sp8, 0); + fn_1_799C(1); + fn_1_24C4(sp8); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_CCBC(void) { + float sp1C[] = { 0.0f, 0.0f }; + s32 sp8; + + lbl_1_bss_4 = 0; + fn_1_281C(sp1C, MAKE_MESSID(29, 2)); + sp8 = fn_1_1E80((580.0f - sp1C[0]) / 2, 100.0f, sp1C[0], sp1C[1], 2); + HuAudFXPlay(0x6D2); + fn_1_799C(3); + fn_1_2798(sp8, MAKE_MESSID(29, 2)); + fn_1_2594(sp8, 60); + fn_1_2BFC(3); + fn_1_2594(sp8, 60); + fn_1_799C(1); + fn_1_24C4(sp8); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_D05C(void) { + float sp1C[] = { 0.0f, 0.0f }; + s32 sp8; + + lbl_1_bss_4 = 0; + fn_1_281C(sp1C, MAKE_MESSID(29, 64)); + sp8 = fn_1_1E80(550.0f - sp1C[0], 340.0f, sp1C[0], sp1C[1], 1); + fn_1_7D28(1, 2); + HuAudFXPlayVolPan(0x65, 0x7F, 0x60); + fn_1_2798(sp8, MAKE_MESSID(29, 64)); + fn_1_267C(sp8); + fn_1_7D28(1, 1); + fn_1_24C4(sp8); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_D498(s32 arg0) { + float sp1C[] = { 0.0f, 0.0f }; + s32 sp10[] = { + MAKE_MESSID(29, 6), + MAKE_MESSID(29, 39), + MAKE_MESSID(29, 41), + MAKE_MESSID(29, 43), + MAKE_MESSID(29, 45), + MAKE_MESSID(29, 47), + MAKE_MESSID(29, 49), + MAKE_MESSID(29, 51), + -1 + }; + s32 sp8; + + if (sp10[arg0] == -1) { + return; + } + fn_1_7D28(0, 2); + HuPrcSleep(15); + fn_1_281C(sp1C, sp10[arg0]); + sp8 = fn_1_1E80(20.0f, 360.0f, sp1C[0], sp1C[1], 0); + HuAudFXPlayVolPan(0x3E, 0x7F, 0x20); + fn_1_2798(sp8, sp10[arg0]); + fn_1_2594(sp8, 0); + fn_1_7D28(0, 1); + fn_1_24C4(sp8); +} + +void fn_1_D8BC(void) { + float sp64[] = { 0.0f, 0.0f }; + s32 sp10[] = { + MAKE_MESSID(29, 5), + MAKE_MESSID(29, 38), + MAKE_MESSID(29, 40), + MAKE_MESSID(29, 42), + MAKE_MESSID(29, 44), + MAKE_MESSID(29, 46), + MAKE_MESSID(29, 48), + MAKE_MESSID(29, 50), + MAKE_MESSID(29, 52) + }; + s32 var_r30; + s32 i; + + lbl_1_bss_4 = 0; + for (i = 0; i < 9; i++) { + fn_1_281C(sp64, sp10[i]); + } + var_r30 = fn_1_1E80(550.0f - sp64[0], 340.0f, sp64[0], sp64[1], 1); + HuAudFXPlayVolPan(0x65, 0x7F, 0x60); + for (i = 0; i < 9; i++) { + fn_1_7D28(1, 2); + fn_1_2798(var_r30, sp10[i]); + fn_1_2594(var_r30, 0); + fn_1_D498(i); + } + fn_1_7D28(1, 1); + fn_1_24C4(var_r30); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_E190(void) { + float sp1C[] = { 0.0f, 0.0f }; + s32 sp8; + + lbl_1_bss_4 = 0; + fn_1_281C(sp1C, MAKE_MESSID(29, 53)); + sp8 = fn_1_1E80((580.0f - sp1C[0]) / 2, 80.0f, sp1C[0], sp1C[1], 2); + omVibrate(fn_1_8E48(0), 12, 4, 2); + omVibrate(fn_1_8E48(1), 12, 4, 2); + omVibrate(fn_1_8E48(2), 12, 4, 2); + omVibrate(fn_1_8E48(3), 12, 4, 2); + HuAudFXPlay(0x6D2); + fn_1_799C(2); + fn_1_2798(sp8, MAKE_MESSID(29, 53)); + fn_1_2594(sp8, 0); + fn_1_799C(1); + fn_1_24C4(sp8); + lbl_1_bss_4++; + HuPrcEnd(); +} + +void fn_1_E670(void) { + float sp1C[] = { 0.0f, 0.0f }; + StructBss2A4* var_r27; + s32 sp8; + + lbl_1_bss_4 = 0; + fn_1_281C(sp1C, MAKE_MESSID(29, 54)); + sp8 = fn_1_1E80(580.0f - sp1C[0] - 40.0f, 260.0f, sp1C[0], sp1C[1], 1); + var_r27 = &lbl_1_bss_2A4[1]; + fn_1_157BC(var_r27->unk00, 0, 12, 1, 0); + HuAudFXPlayVolPan(0x3E, 0x7F, 0x20); + fn_1_2798(sp8, MAKE_MESSID(29, 54)); + fn_1_2594(sp8, 15); + fn_1_7D50(1); + fn_1_2594(sp8, 15); + fn_1_24C4(sp8); + fn_1_C5FC(5); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_EA54(void) { + float sp1C[] = { 0.0f, 0.0f }; + StructBss2A4* var_r27; + s32 sp8; + + fn_1_281C(sp1C, MAKE_MESSID(29, 55)); + sp8 = fn_1_1E80(40.0f, 260.0f, sp1C[0], sp1C[1], 0); + var_r27 = &lbl_1_bss_2A4[0]; + fn_1_157BC(var_r27->unk00, 0, 3, 1, 0); + HuAudFXPlayVolPan(0x65, 0x7F, 0x60); + fn_1_2798(sp8, MAKE_MESSID(29, 55)); + fn_1_2594(sp8, 15); + fn_1_7D28(0, 1); + fn_1_2594(sp8, 15); + fn_1_24C4(sp8); + HuPrcEnd(); +} + +void fn_1_ED94(void) { + float sp1C[] = { 0.0f, 0.0f }; + s32 sp8; + + lbl_1_bss_4 = 0; + fn_1_281C(sp1C, MAKE_MESSID(29, 56)); + fn_1_C5FC(6); + sp8 = fn_1_1E80((580.0f - sp1C[0]) / 2, 320.0f, sp1C[0], sp1C[1], 2); + HuAudFXPlay(0x6D2); + fn_1_799C(2); + fn_1_2798(sp8, MAKE_MESSID(29, 56)); + fn_1_2594(sp8, 0); + fn_1_799C(1); + fn_1_24C4(sp8); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_F1DC(void) { +} + +s32 fn_1_F1E0(void) { + if (fn_1_15670(&lbl_1_bss_84, 0) == 80) { + fn_1_C5FC(1); + lbl_1_bss_4F08[0] = HuAudSeqPlay(6); + } + if (fn_1_15670(&lbl_1_bss_84, 0) == 115) { + fn_1_C5FC(2); + } + if (fn_1_15670(&lbl_1_bss_84, 0) == 180) { + fn_1_C5FC(3); + } + if (fn_1_15670(&lbl_1_bss_84, 0) == 0) { + fn_1_2BFC(2); + } + if (fn_1_15670(&lbl_1_bss_84, 0) == 150) { + fn_1_2BFC(1); + } + if (fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F36C(void) { + HuPrcChildCreate(fn_1_C764, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_F3A8(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F404(void) { + s32 i; + + HuPrcChildCreate(fn_1_CCBC, 100, 0x2000, 0, HuPrcCurrentGet()); + for (i = 0; i < 4; i++) { + fn_1_9768(i, 1); + } +} + +s32 fn_1_F47C(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F4D8(void) { + StructBssC1C* sp8; + + sp8 = &lbl_1_bss_C1C; + fn_1_C5FC(10); +} + +s32 fn_1_F534(void) { + if (fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F57C(void) { + HuPrcChildCreate(fn_1_D05C, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_F5B8(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_84, 1) != 0) { + if (lbl_1_bss_8 != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + fn_1_1561C(&lbl_1_bss_84, 6); + } + return 0; +} + +void fn_1_F638(void) { + StructBssC1C* var_r31; + + var_r31 = &lbl_1_bss_C1C; + fn_1_157BC(var_r31->unk00, 0, 0, 60, 1); + HuPrcChildCreate(fn_1_D8BC, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_F69C(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F6F8(void) { + StructBssC1C* var_r31; + + var_r31 = &lbl_1_bss_C1C; + fn_1_C5FC(11); + fn_1_157BC(var_r31->unk00, 0, 1, 60, 1); +} + +s32 fn_1_F768(void) { + if (fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F7B0(void) { + StructBssC1C* var_r30; + StructBss2A4* var_r31; + + lbl_1_bss_4 = 0; + HuPrcChildCreate(fn_1_E190, 100, 0x2000, 0, HuPrcCurrentGet()); + var_r31 = &lbl_1_bss_2A4[1]; + var_r30 = &lbl_1_bss_C1C; + fn_1_19974(&var_r31->unk3C, 1); + fn_1_198F8(&var_r31->unk3C, -1); + fn_1_19968(&var_r31->unk3C, -1); + fn_1_19960(&var_r31->unk3C, var_r30->unk00->model[0]); +} + +s32 fn_1_F858(void) { + if (lbl_1_bss_4 != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F89C(void) { + HuPrcChildCreate(fn_1_E670, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_EA54, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_F8F8(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F954(void) { +} + +s32 fn_1_F958(void) { + if (fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_F9A0(void) { + lbl_1_bss_4 = 0; + HuPrcChildCreate(fn_1_ED94, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_F9EC(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_84, 1) != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_FA48(void) { + s32 i; + StructBssC30* var_r28; + StructBssC1C* var_r27; + StructBssE88* temp_r30; + StructBss2A4* var_r29; + + var_r28 = &lbl_1_bss_C30; + var_r27 = &lbl_1_bss_C1C; + fn_1_157BC(var_r27->unk00, 0, 0, 60, 1); + fn_1_C5FC(7); + for (i = 0; i < 4; i++) { + temp_r30 = &lbl_1_bss_E88[i]; + fn_1_19974(&temp_r30->unk58, 1); + fn_1_198F8(&temp_r30->unk58, -1); + fn_1_19968(&temp_r30->unk58, -1); + fn_1_19960(&temp_r30->unk58, var_r28->unk00->model[1]); + } + var_r29 = &lbl_1_bss_2A4[1]; + fn_1_19974(&var_r29->unk3C, 0); + fn_1_198F8(&var_r29->unk3C, -1); + fn_1_19968(&var_r29->unk3C, -1); +} + +s32 fn_1_FB50(void) { + if (fn_1_15670(&lbl_1_bss_84, 1) != 0 && lbl_1_bss_14 != 0) { + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +void fn_1_FBAC(void) { + StructBss4EE8* var_r31; + StructBss2A4* var_r30; + StructBssE88* temp_r29; + + var_r31 = &lbl_1_bss_4EE8; + var_r30 = &lbl_1_bss_2A4[1]; + temp_r29 = &lbl_1_bss_E88[var_r31->unk10]; + var_r31->unk0C = 0; + fn_1_157BC(var_r30->unk00, 0, 6, 10, 0); + fn_1_157BC(temp_r29->unk00, 0, 4, 60, 1); + var_r31->unk14 = var_r31->unk10; + HuAudSeqFadeOut(lbl_1_bss_4F08[0], 1000); +} + +s32 fn_1_FC5C(void) { + StructBss4EE8* var_r29; + StructBss2A4* var_r30; + StructBssC30* var_r26; + StructBss2A4* var_r28; + s32 i; + + var_r29 = &lbl_1_bss_4EE8; + var_r30 = &lbl_1_bss_2A4[1]; + if (fn_1_156AC(var_r30->unk00, 0, 6, 50, 0) != 0) { + fn_1_19658(var_r30->unk00, 0, 0.0f, 10); + } else if (fn_1_156AC(var_r30->unk00, 0, 6, 50, 1) != 0) { + fn_1_19658(var_r30->unk00, 0, 90.0f, 10); + if (var_r29->unk0C == 0) { + var_r29->unk0C = 1; + for (i = 0; i < 4; i++) { + fn_1_A4B8(i, 1); + } + fn_1_3E84(1); + fn_1_5600(1); + } + } + if (fn_1_15670(&lbl_1_bss_84, 1) != 0) { + var_r26 = &lbl_1_bss_C30; + var_r28 = &lbl_1_bss_2A4[1]; + fn_1_19974(&var_r28->unk3C, 1); + fn_1_198F8(&var_r28->unk3C, -1); + fn_1_19968(&var_r28->unk3C, -1); + for (i = 0; i < 3; i++) { + fn_1_19894(&var_r28->unk3C, var_r26->unk00->model[i + var_r29->unk10 * 3 + 2]); + } + fn_1_C5FC(8); + return fn_1_15520(&lbl_1_bss_84); + } + return 0; +} + +StructData3A0 lbl_1_data_3A0[] = { + { fn_1_F1DC, fn_1_F1E0, 300 }, + { fn_1_F36C, fn_1_F3A8, 60 }, + { fn_1_F404, fn_1_F47C, 60 }, + { fn_1_F4D8, fn_1_F534, 45 }, + { fn_1_F57C, fn_1_F5B8, 60 }, + { fn_1_F638, fn_1_F69C, 60 }, + { fn_1_F6F8, fn_1_F768, 45 }, + { fn_1_F7B0, fn_1_F858, 60 }, + { fn_1_F89C, fn_1_F8F8, 60 }, + { fn_1_F954, fn_1_F958, 90 }, + { fn_1_F9A0, fn_1_F9EC, 60 }, + { fn_1_FA48, fn_1_FB50, 180 }, + { fn_1_FBAC, fn_1_FC5C, 180 }, + { NULL, NULL, -1 } +}; + +void fn_1_FE64(void) { + fn_1_154C4(&lbl_1_bss_84, lbl_1_data_3A0); +} + +s32 fn_1_FE94(void) { + s32 var_r31; + + var_r31 = 0; + if (lbl_1_bss_84.unk10 != NULL) { + lbl_1_bss_84.unk10(); + lbl_1_bss_84.unk10 = NULL; + } + if (lbl_1_bss_84.unk14 != NULL) { + var_r31 = lbl_1_bss_84.unk14(); + } + return var_r31; +} + +s32 fn_1_FF2C(s32 arg0, s32 arg1) { + s32 var_r31; + StructBssE88* temp_r30; + + var_r31 = 0; + temp_r30 = &lbl_1_bss_E88[arg0]; + if (temp_r30->unk2C != 0) { + switch (temp_r30->unk30) { + case 0: + if (arg1 % 60 == 1 && fn_1_5438()) { + var_r31 = 1; + } + break; + case 1: + if (arg1 % 45 == 1 && fn_1_5438()) { + var_r31 = 1; + } + break; + case 2: + if (arg1 % 30 == 1 && fn_1_5438()) { + var_r31 = 1; + } + break; + case 3: + if (arg1 % 15 == 1 && fn_1_5438()) { + var_r31 = 1; + } + break; + } + } else if (HuPadBtnDown[temp_r30->unk38] & 0x100) { + var_r31 = 1; + } + return var_r31; +} + +void fn_1_10734(void) { + StructBss2A4* spC; + StructBssE08* sp8; + + spC = &lbl_1_bss_2A4[1]; + sp8 = &lbl_1_bss_E08; +} + +void fn_1_1075C(void) { + StructBssE08 sp8; + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = 0.0f; + sp8.unk10 = 200.0f; + sp8.unk14 = -550.0f; + sp8.unk24 = 5.0f; + sp8.unk28 = 0.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 1300.0f; + fn_1_169F4(var_r31, &sp8, var_r31->unk44++, 90.0f, 10.0f); +} + +void fn_1_10834(void) { + StructBssE08 sp8; + StructBssE08* var_r31; + + var_r31 = &lbl_1_bss_E08; + sp8.unk0C = 0.0f; + sp8.unk10 = 200.0f; + sp8.unk14 = -850.0f; + sp8.unk24 = 5.0f; + sp8.unk28 = 0.0f; + sp8.unk2C = 0.0f; + sp8.unk3C = 1300.0f; + fn_1_169F4(var_r31, &sp8, var_r31->unk44++, 120.0f, 10.0f); +} + +void fn_1_1090C(s32 arg0) { + StructBssE08* var_r24; + + var_r24 = &lbl_1_bss_E08; + fn_1_15E50(var_r24); + switch (arg0) { + case 0: + fn_1_8A4(fn_1_C13C); + break; + case 1: + fn_1_8A4(fn_1_C214); + break; + case 2: + fn_1_8A4(fn_1_C2EC); + break; + case 3: + fn_1_8A4(fn_1_C3C4); + break; + case 4: + fn_1_8A4(fn_1_10734); + break; + case 5: + fn_1_8A4(fn_1_1075C); + break; + case 6: + fn_1_8A4(fn_1_10834); + break; + } +} + +void fn_1_10A14(void) { + char sp18[8]; + float sp10[] = { 0.0f, 0.0f }; + StructBss4EE8* var_r29; + StructBssE88* temp_r27; + s32 sp8; + + var_r29 = &lbl_1_bss_4EE8; + temp_r27 = &lbl_1_bss_E88[var_r29->unk10]; + lbl_1_bss_4 = 0; + sprintf(sp18, "%d", var_r29->unk04); + HuWinInsertMesSizeGet(temp_r27->unk34, 0); + HuWinInsertMesSizeGet(MAKE_MESSID_PTR(sp18), 1); + HuWinMesMaxSizeGet(1, sp10, MAKE_MESSID(29, 63)); + sp8 = fn_1_1E80(550.0f - sp10[0], 180.0f, sp10[0], sp10[1], 1); + HuAudFXPlayVolPan(0x65, 0x7F, 0x60); + fn_1_A670(var_r29->unk10, var_r29->unk04); + HuWinInsertMesSet(sp8, MAKE_MESSID_PTR(temp_r27->unk34), 0); + HuWinInsertMesSet(sp8, MAKE_MESSID_PTR(sp18), 1); + fn_1_7D28(1, 2); + fn_1_2798(sp8, MAKE_MESSID(29, 63)); + fn_1_2594(sp8, 120); + fn_1_7D28(1, 1); + fn_1_24C4(sp8); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_10E1C(void) { + float sp14[] = { 0.0f, 0.0f }; + s32 sp1C[][2] = { + { MAKE_MESSID(29, 60), 9 }, + { MAKE_MESSID(29, 61), 11 } + }; + StructBss2A4* var_r27; + s32 sp8; + s32 i; + + lbl_1_bss_4 = 0; + for (i = 0; i < 2; i++) { + if (i == 1) { + var_r27 = &lbl_1_bss_2A4[1]; + fn_1_19974(&var_r27->unk3C, 0); + fn_1_198F8(&var_r27->unk3C, -1); + fn_1_19968(&var_r27->unk3C, -1); + } + fn_1_281C(sp14, sp1C[i][0]); + sp8 = fn_1_1E80(550.0f - sp14[0], 180.0f, sp14[0], sp14[1], 1); + HuAudFXPlayVolPan(0x65, 0x7F, 0x60); + fn_1_8544(sp1C[i][1]); + fn_1_2798(sp8, sp1C[i][0]); + fn_1_2594(sp8, 120); + fn_1_24C4(sp8); + } + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_11220(void) { + float sp10[] = { 0.0f, 0.0f }; + float temp_f31; + float temp_f30; + s32 var_r22; + s32 sp8; + s32 i; + StructBssC1C* var_r27; + StructBss2A4* var_r28; + + lbl_1_bss_4 = 0; + fn_1_281C(sp10, MAKE_MESSID(29, 62)); + temp_f31 = 640.0f; + temp_f30 = (580.0f - sp10[0]) / 2 - 1.0f; + sp8 = fn_1_1E80(temp_f31, 100.0f, sp10[0], sp10[1], 2); + fn_1_8544(9); + var_r27 = &lbl_1_bss_C1C; + var_r28 = &lbl_1_bss_2A4[1]; + fn_1_19974(&var_r28->unk3C, 1); + fn_1_198F8(&var_r28->unk3C, -1); + fn_1_19968(&var_r28->unk3C, -1); + fn_1_19960(&var_r28->unk3C, var_r27->unk00->model[0]); + var_r22 = HuAudFXPlay(0x6D6); + HuAudFXPanning(var_r22, 0x60); + fn_1_799C(2); + fn_1_2798(sp8, MAKE_MESSID(29, 62)); + HuPrcSleep(5); + for (i = 0; i < 120; i++) { + temp_f31 = fn_1_1539C(640.0f, temp_f30, i, 30.0f); + HuWinPosSet(sp8, temp_f31, 100.0f); + HuPrcVSleep(); + } + HuPrcSleep(60); + fn_1_799C(1); + fn_1_24C4(sp8); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_116A8(void) { + float sp10[] = { 0.0f, 0.0f }; + float temp_f31; + float temp_f30; + s32 var_r22; + s32 sp8; + s32 i; + StructBssC1C* var_r27; + StructBss2A4* var_r28; + + lbl_1_bss_4 = 0; + fn_1_281C(sp10, MAKE_MESSID(29, 57)); + temp_f31 = 640.0f; + temp_f30 = (580.0f - sp10[0]) / 2 - 1.0f; + sp8 = fn_1_1E80(temp_f31, 100.0f, sp10[0], sp10[1], 2); + var_r27 = &lbl_1_bss_C1C; + var_r28 = &lbl_1_bss_2A4[1]; + fn_1_19974(&var_r28->unk3C, 1); + fn_1_198F8(&var_r28->unk3C, -1); + fn_1_19968(&var_r28->unk3C, -1); + fn_1_19960(&var_r28->unk3C, var_r27->unk00->model[0]); + var_r22 = HuAudFXPlay(0x6D2); + HuAudFXPanning(var_r22, 0x60); + fn_1_799C(2); + fn_1_2798(sp8, MAKE_MESSID(29, 57)); + HuPrcSleep(5); + for (i = 0; i < 120; i++) { + temp_f31 = fn_1_1539C(640.0f, temp_f30, i, 30.0f); + HuWinPosSet(sp8, temp_f31, 100.0f); + HuPrcVSleep(); + } + fn_1_799C(1); + fn_1_24C4(sp8); + lbl_1_bss_4 = 1; + HuPrcEnd(); +} + +void fn_1_11B04(void) { + float sp14[] = { 0.0f, 0.0f }; + s32 sp1C[] = { + MAKE_MESSID(29, 58), + MAKE_MESSID(29, 59) + }; + StructBss2A4* var_r25; + StructBss2A4* var_r28; + StructBss9C* var_r24; + s32 sp8; + s32 i; + + lbl_1_bss_4 = 0; + for (i = 0; i < 2; i++) { + if (i == 1) { + var_r25 = &lbl_1_bss_2A4[1]; + var_r28 = &lbl_1_bss_2A4[0]; + var_r24 = &lbl_1_bss_9C; + var_r24->unk00->work[3] = 1; + fn_1_157BC(var_r28->unk00, 0, 1, 30, 1); + fn_1_157BC(var_r28->unk00, 1, 6, 30, 1); + fn_1_157BC(var_r25->unk00, 0, 10, 60, 0); + lbl_1_bss_4 = 1; + } + fn_1_281C(sp14, sp1C[i]); + sp8 = fn_1_1E80((580.0f - sp14[0]) / 2 - 1.0f, 75.0f, sp14[0], sp14[1], 2); + HuAudFXPlay(0x6D6); + if (i == 0) { + fn_1_799C(2); + } + fn_1_2798(sp8, sp1C[i]); + fn_1_2594(sp8, 60); + if (i == 0) { + fn_1_799C(1); + } + if (i == 1) { + fn_1_2594(sp8, 60); + } + fn_1_24C4(sp8); + } + HuPrcEnd(); +} + +void fn_1_11F7C(void) { +} + +s32 fn_1_11F80(void) { + if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_11FC8(void) { + StructBss4EE8* var_r31; + StructBss2A4* var_r30; + StructBssE88* temp_r29; + + var_r31 = &lbl_1_bss_4EE8; + var_r30 = &lbl_1_bss_2A4[1]; + temp_r29 = &lbl_1_bss_E88[var_r31->unk10]; + var_r31->unk0C = 0; + fn_1_157BC(var_r30->unk00, 0, 6, 10, 0); + fn_1_157BC(temp_r29->unk00, 0, 4, 60, 1); + var_r31->unk14 = var_r31->unk10; +} + +s32 fn_1_12064(void) { + s32 i; + StructBss4EE8* var_r29; + StructBss2A4* var_r30; + StructBssC30* var_r26; + StructBss2A4* var_r28; + + var_r29 = &lbl_1_bss_4EE8; + var_r30 = &lbl_1_bss_2A4[1]; + if (fn_1_156AC(var_r30->unk00, 0, 6, 50, 0) != 0) { + fn_1_19658(var_r30->unk00, 0, 0.0f, 10); + } else if (fn_1_156AC(var_r30->unk00, 0, 6, 50, 1) != 0) { + fn_1_19658(var_r30->unk00, 0, 90.0f, 10); + if (var_r29->unk0C == 0) { + var_r29->unk0C = 1; + fn_1_3E84(1); + fn_1_5600(1); + } + } + if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + var_r26 = &lbl_1_bss_C30; + var_r28 = &lbl_1_bss_2A4[1]; + fn_1_19974(&var_r28->unk3C, 1); + fn_1_198F8(&var_r28->unk3C, -1); + fn_1_19968(&var_r28->unk3C, -1); + for (i = 0; i < 3; i++) { + fn_1_19960(&var_r28->unk3C, var_r26->unk00->model[i + var_r29->unk10 * 3 + 2]); + } + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_12210(void) { + fn_1_1090C(1); +} + +s32 fn_1_12260(void) { + if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_122A8(void) { + if (lbl_1_bss_10 == 0) { + lbl_1_bss_10 = 1; + lbl_1_bss_C = 300; + } +} + +s32 fn_1_122E0(void) { + s32 var_r30; + StructBss4EE8* var_r29; + + var_r30 = 0; + var_r29 = &lbl_1_bss_4EE8; + fn_1_15670(&lbl_1_bss_6C, 1); + if (fn_1_15670(&lbl_1_bss_6C, 0) <= 10) { + return 0; + } + if (fn_1_FF2C(var_r29->unk10, fn_1_15670(&lbl_1_bss_6C, 0)) != 0) { + var_r30 = 1; + fn_1_28E8(); + } + if (var_r30 != 0 || fn_1_28C4() != 0) { + fn_1_5600(4); + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_12414(void) { + StructBss4EE8* var_r31; + + var_r31 = &lbl_1_bss_4EE8; + var_r31->unk00 = var_r31->unk04 = var_r31->unk08 = 0; +} + +s32 fn_1_12440(void) { + s32 i; + s32 j; + StructBss4EE8* var_r31; + StructBssC30* var_r28; + + var_r31 = &lbl_1_bss_4EE8; + var_r28 = &lbl_1_bss_C30; + if (var_r31->unk00 == 0) { + for (i = 0; i < 3; i++) { + if (var_r28->unk2C[i] != 7) { + break; + } + } + if (i == 3) { + var_r31->unk00 = 1; + for (j = 0; j < 3; j++) { + var_r31->unk04 += var_r28->unk68[j]; + } + } + } else if (var_r31->unk00 == 1) { + if (var_r31->unk04 < 0) { + var_r31->unk08 = 1; + fn_1_1561C(&lbl_1_bss_6C, 9); + fn_1_1090C(3); + } else if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + } + return 0; +} + +void fn_1_12574(void) { + StructBss2A4* temp_r31; + + temp_r31 = &lbl_1_bss_2A4[1]; + fn_1_157BC(temp_r31->unk00, 0, 8, 10, 1); +} + +s32 fn_1_125BC(void) { + if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_12604(void) { + StructBss4EE8* var_r30; + StructBssE88* spC; + StructBss2A4* var_r29; + StructBssC30* sp8; + StructBss2A4* var_r31; + + var_r30 = &lbl_1_bss_4EE8; + spC = &lbl_1_bss_E88[var_r30->unk10]; + var_r29 = &lbl_1_bss_2A4[1]; + fn_1_157BC(var_r29->unk00, 0, 0, 10, 1); + HuPrcChildCreate(fn_1_10A14, 100, 0x2000, 0, HuPrcCurrentGet()); + fn_1_1090C(3); + sp8 = &lbl_1_bss_C30; + var_r31 = &lbl_1_bss_2A4[1]; + fn_1_19974(&var_r31->unk3C, 0); + fn_1_198F8(&var_r31->unk3C, -1); + fn_1_19968(&var_r31->unk3C, -1); +} + +s32 fn_1_126F4(void) { + StructBss4EE8* var_r31; + StructBssE88* var_r30; + + var_r31 = &lbl_1_bss_4EE8; + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + var_r30 = &lbl_1_bss_E88[var_r31->unk10]; + fn_1_157BC(var_r30->unk00, 0, 0, 1, 1); + if (var_r31->unk10 == 3) { + fn_1_1561C(&lbl_1_bss_6C, 11); + } else { + return fn_1_15520(&lbl_1_bss_6C); + } + } + return 0; +} + +void fn_1_127B4(void) { + StructBss4EE8* sp8; + + sp8 = &lbl_1_bss_4EE8; + fn_1_1090C(0); +} + +s32 fn_1_12810(void) { + if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_12858(void) { + StructBss4EE8* var_r28; + StructBssE88* temp_r31; + s32 var_r30; + s32 i; + + var_r28 = &lbl_1_bss_4EE8; + var_r30 = var_r28->unk10 + 1; + if (var_r30 >= 4) { + var_r30 = 0; + } + for (i = 0; i < 4; i++) { + temp_r31 = &lbl_1_bss_E88[var_r30]; + lbl_1_bss_3C[i].x = temp_r31->unk00->trans.x; + lbl_1_bss_3C[i].y = temp_r31->unk00->trans.y; + lbl_1_bss_3C[i].z = temp_r31->unk00->trans.z; + temp_r31->unk14 = 0; + fn_1_15934(temp_r31->unk00, 0, 2, 10, 1); + var_r30++; + if (var_r30 >= 4) { + var_r30 = 0; + } + } +} + +s32 fn_1_12958(void) { + StructBss4EE8* var_r30 = &lbl_1_bss_4EE8; + StructBssE88* temp_r31; + s32 var_r28; + s32 var_r29; + Vec sp8[] = { + { 0.0f, 0.0f, 500.0f }, + { 200.0f, 0.0f, 300.0f }, + { 200.0f, 0.0f, 450.0f }, + { 200.0f, 0.0f, 600.0f } + }; + + var_r29 = var_r30->unk10 + 1; + if (var_r29 >= 4) { + var_r29 = 0; + } + for (var_r28 = 0; var_r28 < 4; var_r28++) { + temp_r31 = &lbl_1_bss_E88[var_r29]; + if (temp_r31->unk14++ <= 30) { + fn_1_195F4(temp_r31->unk00, 0, &lbl_1_bss_3C[var_r28], &sp8[var_r28], 5, temp_r31->unk14, 30); + } else { + fn_1_19658(temp_r31->unk00, 0, -90.0f, 10); + if (temp_r31->unk14 >= 40) { + fn_1_15934(temp_r31->unk00, 0, 0, 10, 1); + } + } + var_r29++; + if (var_r29 == 4) { + var_r29 = 0; + } + } + if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + var_r30->unk10++; + if (var_r30->unk10 >= 4) { + var_r30->unk10 = 0; + } + fn_1_3E84(0); + fn_1_5600(0); + fn_1_1561C(&lbl_1_bss_6C, 0); + } + return 0; +} + +void fn_1_12B50(void) { + HuPrcChildCreate(fn_1_10E1C, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_12B8C(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_12BE8(void) { + HuPrcChildCreate(fn_1_11220, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_12C24(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + fn_1_1561C(&lbl_1_bss_6C, 12); + } + return 0; +} + +void fn_1_12C80(void) { + HuPrcChildCreate(fn_1_116A8, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_12CBC(void) { + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_12D18(void) { + StructBss4EE8* var_r28; + StructBssC1C* sp10; + StructBss144* temp_r27; + s32 var_r30; + s32 var_r31; + + var_r30 = 999; + var_r28 = &lbl_1_bss_4EE8; + sp10 = &lbl_1_bss_C1C; + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_A4B8(var_r31, 0); + } + fn_1_8250(1); + if (var_r28->unk08 != 1) { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + temp_r27 = &lbl_1_bss_144[var_r31]; + if (var_r30 > temp_r27->unk50) { + var_r30 = temp_r27->unk50; + var_r28->unk10 = var_r31; + } + } + } + { + StructBssE88* temp_r29; + StructBss2A4* var_r24; + Vec sp14[] = { + { 0.0f, 0.0f, -225.0f }, + { -200.0f, 0.0f, -225.0f }, + { 200.0f, 0.0f, -225.0f }, + { 400.0f, 0.0f, -225.0f } + }; + + var_r30 = var_r28->unk10; + for (var_r31 = 0; var_r31 < 4; var_r31++) { + temp_r29 = &lbl_1_bss_E88[var_r30]; + omSetTra(temp_r29->unk00, sp14[var_r31].x, sp14[var_r31].y, sp14[var_r31].z); + omSetRot(temp_r29->unk00, 0.0f, 180.0f, 0.0f); + fn_1_157BC(temp_r29->unk00, 0, 0, 10, 1); + var_r30++; + if (var_r30 >= 4) { + var_r30 = 0; + } + var_r24 = &lbl_1_bss_2A4[1]; + fn_1_19960(&temp_r29->unk58, var_r24->unk00->model[0]); + } + } + fn_1_1090C(5); +} + +// Unused. Mirrors the Vec array defined in fn_1_12D18. +const Vec lbl_1_rodata_48C[] = { + { 0.0f, 0.0f, -225.0f }, + { -200.0f, 0.0f, -225.0f }, + { 200.0f, 0.0f, -225.0f }, + { 400.0f, 0.0f, -225.0f } +}; + +s32 fn_1_12F48(void) { + StructBss4EE8* var_r27; + StructBssC1C* var_r25; + StructBssC30* var_r24; + StructBssE88* sp8; + s32 var_r29; + s32 var_r28; + + var_r27 = &lbl_1_bss_4EE8; + if (fn_1_15670(&lbl_1_bss_6C, 0) == 180) { + var_r25 = &lbl_1_bss_C1C; + for (var_r29 = 0; var_r29 < 4; var_r29++) { + sp8 = &lbl_1_bss_E88[var_r29]; + fn_1_19960(&sp8->unk58, var_r25->unk00->model[0]); + } + } + if (fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + var_r24 = &lbl_1_bss_C30; + for (var_r28 = 0; var_r28 < 14; var_r28++) { + Hu3DModelAttrSet(var_r24->unk00->model[var_r28], 1); + } + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +void fn_1_1303C(void) { + lbl_1_bss_4 = 0; + HuPrcChildCreate(fn_1_11B04, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_13088(void) { + s32 var_r31; + s32 i; + StructBss4EE8* var_r28; + StructBssE88* temp_r29; + + var_r28 = &lbl_1_bss_4EE8; + var_r31 = var_r28->unk10; + if (var_r31 == 4) { + var_r31 = 0; + } + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_6C, 0) == 20) { + fn_1_1090C(6); + for (i = 0; i < 4; i++) { + if (i != 0) { + temp_r29 = &lbl_1_bss_E88[var_r31]; + temp_r29->unk0C = i; + temp_r29->unk1C = 15 - i * 5; + temp_r29->unk20 = 0; + } + var_r31++; + if (var_r31 >= 4) { + var_r31 = 0; + } + } + } + if (lbl_1_bss_4 != 0 && fn_1_15670(&lbl_1_bss_6C, 1) != 0) { + return fn_1_15520(&lbl_1_bss_6C); + } + return 0; +} + +StructData3A0 lbl_1_data_468[] = { + { fn_1_11F7C, fn_1_11F80, 1 }, + { fn_1_11FC8, fn_1_12064, 120 }, + { fn_1_12210, fn_1_12260, 90 }, + { fn_1_122A8, fn_1_122E0, 120 }, + { fn_1_12414, fn_1_12440, -1 }, + { fn_1_12574, fn_1_125BC, 120 }, + { fn_1_12604, fn_1_126F4, 60 }, + { fn_1_127B4, fn_1_12810, 30 }, + { fn_1_12858, fn_1_12958, 120 }, + { fn_1_12B50, fn_1_12B8C, 60 }, + { fn_1_12BE8, fn_1_12C24, 60 }, + { fn_1_12C80, fn_1_12CBC, 60 }, + { fn_1_12D18, fn_1_12F48, 300 }, + { fn_1_1303C, fn_1_13088, 60 }, + { NULL, NULL, -1 } +}; + +void fn_1_131B0(void) { + fn_1_154C4(&lbl_1_bss_6C, lbl_1_data_468); + fn_1_1561C(&lbl_1_bss_6C, 3); +} + +s32 fn_1_131F0(void) { + s32 var_r31; + + var_r31 = 0; + if (lbl_1_bss_6C.unk10 != NULL) { + lbl_1_bss_6C.unk10(); + lbl_1_bss_6C.unk10 = NULL; + } + if (lbl_1_bss_6C.unk14 != NULL) { + var_r31 = lbl_1_bss_6C.unk14(); + } + return var_r31; +} + +void fn_1_13288(void) { + StructBss4EE8* var_r30; + StructBssE88* temp_r31; + + var_r30 = &lbl_1_bss_4EE8; + temp_r31 = &lbl_1_bss_E88[var_r30->unk10]; + var_r30->unk1C = 0; + lbl_1_data_1E0 = temp_r31->unk00->model[0]; + lbl_1_data_1E4 = temp_r31->unk00->motion[3]; + lbl_1_data_1E8 = temp_r31->unk34; + HuPrcChildCreate(fn_1_0, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +s32 fn_1_13338(void) { + StructBss4EE8* var_r31; + StructBssE88* temp_r30; + + var_r31 = &lbl_1_bss_4EE8; + temp_r30 = &lbl_1_bss_E88[var_r31->unk10]; + if (fn_1_15670(&lbl_1_bss_24, 0) == 120) { + fn_1_157BC(temp_r30->unk00, 0, 3, 30, 0); + HuAudSStreamPlay(3); + } + if (fn_1_15670(&lbl_1_bss_24, 1) != 0) { + return fn_1_15520(&lbl_1_bss_24); + } + return 0; +} + +StructData3A0 lbl_1_data_51C[] = { + { fn_1_13288, fn_1_13338, 360 }, + { NULL, NULL, -1 } +}; + +void fn_1_133E4(void) { + fn_1_154C4(&lbl_1_bss_24, lbl_1_data_51C); +} + +s32 fn_1_13414(void) { + s32 var_r31; + + var_r31 = 0; + if (lbl_1_bss_24.unk10 != NULL) { + lbl_1_bss_24.unk10(); + lbl_1_bss_24.unk10 = NULL; + } + if (lbl_1_bss_24.unk14 != NULL) { + var_r31 = lbl_1_bss_24.unk14(); + } + return var_r31; +} + +void fn_1_134AC(omObjData* arg0) { + StructBss4EE8* var_r30; + StructBssE88* temp_r29; + s32 i; + + if (WipeStatGet() == 0) { + CharModelKill(-1); + MGSeqKillAll(); + HuAudFadeOut(1); + var_r30 = &lbl_1_bss_4EE8; + temp_r29 = &lbl_1_bss_E88[var_r30->unk10]; + for (i = 0; i < 4; i++) { + GWPlayerCoinWinSet(i, 0); + } + GWPlayerCoinWinSet(temp_r29->unk24, 1); + omOvlReturnEx(1, 1); + arg0->func = NULL; + } +} + +void fn_1_135A0(omObjData* arg0) { + if (omSysExitReq == 1) { + HuAudSeqAllFadeOut(250); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + arg0->func = fn_1_134AC; + } +} + +void fn_1_13600(void) { + StructBss4EE8* var_r29; + s32 i; + + fn_1_3288(&lbl_1_bss_DE4); + fn_1_72A4(&lbl_1_bss_C30); + fn_1_7A78(&lbl_1_bss_C1C); + for (i = 0; i < 2; i++) { + fn_1_8734(&lbl_1_bss_2A4[i]); + } + for (i = 0; i < 4; i++) { + fn_1_9F7C(&lbl_1_bss_E88[i]); + } + for (i = 0; i < 4; i++) { + fn_1_ABFC(&lbl_1_bss_144[i]); + } + fn_1_B828(&lbl_1_bss_9C); + var_r29 = &lbl_1_bss_4EE8; + var_r29->unk00 = var_r29->unk04 = var_r29->unk08 = var_r29->unk0C = 0; + var_r29->unk10 = var_r29->unk14 = var_r29->unk18 = var_r29->unk1C = 0; + fn_1_FE64(); + fn_1_131B0(); + fn_1_133E4(); + fn_1_C5FC(0); + HuAudFXPlay(0x6D7); +} + +void fn_1_14384(omObjData* arg0) { + switch (lbl_1_bss_1C) { + case 0: + fn_1_13600(); + lbl_1_bss_1C = 1; + break; + case 1: + if (WipeStatGet() == 0) { + lbl_1_bss_1C = 2; + } + break; + case 2: + if (fn_1_FE94()) { + lbl_1_bss_1C = 3; + } + break; + case 3: + lbl_1_bss_20 = MGSeqStartCreate(); + lbl_1_bss_1C = 4; + lbl_1_bss_4F08[1] = -1; + break; + case 4: + if ((MGSeqStatGet(lbl_1_bss_20) & 0x10) && lbl_1_bss_4F08[1] == -1) { + lbl_1_bss_4F08[1] = HuAudSeqPlay(0x4D); + } + if (MGSeqStatGet(lbl_1_bss_20) == 0) { + lbl_1_bss_1C = 5; + } + break; + case 5: + if (fn_1_131F0()) { + lbl_1_bss_1C = 6; + } + break; + case 6: + lbl_1_bss_20 = MGSeqFinishCreate(); + lbl_1_bss_1C = 7; + HuAudSeqPauseAll(0); + HuAudSeqAllFadeOut(250); + break; + case 7: + if (MGSeqStatGet(lbl_1_bss_20) == 0) { + lbl_1_bss_1C = 8; + } + break; + case 8: + fn_1_2BFC(999); + if (fn_1_13414()) { + lbl_1_bss_1C = 9; + } + break; + case 9: + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + arg0->func = fn_1_134AC; + break; + } + fn_1_135A0(arg0); +} + +void fn_1_14760(omObjData* arg0) { + s32 i; + + lbl_1_bss_DE4.unk00 = omAddObjEx(lbl_1_bss_0, 0x200, 16, 16, -1, fn_1_3558); + lbl_1_bss_C30.unk00 = omAddObjEx(lbl_1_bss_0, 0x300, 32, 32, -1, fn_1_7628); + lbl_1_bss_C1C.unk00 = omAddObjEx(lbl_1_bss_0, 0x400, 16, 16, -1, fn_1_7B44); + for (i = 0; i < 2; i++) { + lbl_1_bss_2A4[i].unk00 = omAddObjEx(lbl_1_bss_0, 0x500, 16, 16, -1, fn_1_88B0); + lbl_1_bss_2A4[i].unk00->work[0] = i; + } + for (i = 0; i < 4; i++) { + lbl_1_bss_E88[i].unk00 = omAddObjEx(lbl_1_bss_0, 0x50, 16, 16, -1, fn_1_A148); + lbl_1_bss_E88[i].unk00->work[0] = i; + } + for (i = 0; i < 4; i++) { + lbl_1_bss_144[i].unk00 = omAddObjEx(lbl_1_bss_0, 0x800, 16, 16, -1, fn_1_AD5C); + lbl_1_bss_144[i].unk00->work[0] = i; + } + lbl_1_bss_9C.unk00 = omAddObjEx(lbl_1_bss_0, 0x700, 16, 16, -1, fn_1_B950); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + arg0->func = fn_1_14384; +} + +#include "src/REL/executor.c" + +void fn_1_14A54(void) { + lbl_1_bss_0 = omInitObjMan(62, 0x2000); + omGameSysInit(lbl_1_bss_0); + fn_1_1A8(); + fn_1_FDC(); + fn_1_1110(); + fn_1_1818(); + fn_1_2AF0(); + fn_1_8F4C(); + omAddObjEx(lbl_1_bss_0, 0x1000, 0, 0, -1, fn_1_14760); +} + +void ObjectSetup(void) { + fn_1_14A54(); +} diff --git a/src/REL/m435Dll/sequence.c b/src/REL/m435Dll/sequence.c index 57b3db46..704c4c34 100755 --- a/src/REL/m435Dll/sequence.c +++ b/src/REL/m435Dll/sequence.c @@ -322,7 +322,7 @@ void fn_1_195F4(omObjData* arg0, s32 arg1, Vec* arg2, Vec* arg3, s32 arg4, s32 a fn_1_1906C(arg0, arg1, arg2, arg3, arg4, arg5, arg6, 1, 1); } -void fn_1_19658(omObjData* arg0, s32 arg1, s32 arg2, float arg3) { +void fn_1_19658(omObjData* arg0, s32 arg1, float arg2, s32 arg3) { float var_f31; float var_f30; @@ -332,7 +332,7 @@ void fn_1_19658(omObjData* arg0, s32 arg1, s32 arg2, float arg3) { } else if (var_f31 >= 360.0f) { var_f31 -= 360.0f; } - var_f30 = arg3; + var_f30 = arg2; if (var_f30 < 0.0f) { var_f30 += 360.0f; } else if (var_f30 >= 360.0f) { @@ -353,7 +353,7 @@ void fn_1_19658(omObjData* arg0, s32 arg1, s32 arg2, float arg3) { var_f31 += 360.0f; } } - var_f31 = (var_f30 + var_f31 * (arg2 - 1)) / arg2; + var_f31 = (var_f30 + var_f31 * (arg3 - 1)) / arg3; if (arg1 == 0) { arg0->rot.y = var_f31; } else { @@ -393,7 +393,7 @@ void fn_1_19960(StructFn19894* arg0, s32 arg1) { arg0->unk464 = arg1; } -void fn_1_19968(StructFn19894* arg0) { +void fn_1_19968(StructFn19894* arg0, s32 arg1) { arg0->unk464 = -1; } @@ -526,7 +526,7 @@ void fn_1_1A33C(Process* arg0, StructFn19894* arg1, s32 arg2, char* arg3, s32 ar fn_1_19974(arg1, 1); arg1->unk08 = arg2; strcpy(arg1->unk10, arg3); - fn_1_19968(arg1); + fn_1_19968(arg1, -1); fn_1_198F8(arg1, -1); arg1->unk470 = 5.0f; arg1->unk474 = 10000.0f; From e8f986b61ef7894a5bff186669f7ce3b8e5ec902 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sat, 7 Dec 2024 15:51:08 -0800 Subject: [PATCH 058/178] Fully matched REL m435 --- configure.py | 4 +- include/REL/m435Dll.h | 2 +- src/REL/m435Dll/main.c | 114 +++++++++++++++++++++++++++++++++++++---- 3 files changed, 106 insertions(+), 14 deletions(-) diff --git a/configure.py b/configure.py index 4db092f9..c748d7c4 100644 --- a/configure.py +++ b/configure.py @@ -1108,8 +1108,8 @@ config.libs = [ Rel( "m435Dll", # Darts of Doom objects={ - Object(NonMatching, "REL/m435Dll/main.c"), - Object(NonMatching, "REL/m435Dll/sequence.c"), + Object(Matching, "REL/m435Dll/main.c"), + Object(Matching, "REL/m435Dll/sequence.c"), }, ), Rel( diff --git a/include/REL/m435Dll.h b/include/REL/m435Dll.h index 36ee1baa..102610b2 100755 --- a/include/REL/m435Dll.h +++ b/include/REL/m435Dll.h @@ -20,7 +20,7 @@ typedef struct { } StructBss84; // Size 0x18 typedef struct { - /* 0x00 */ void (*unk00)(void); // inferred (unsure) + /* 0x00 */ char unk00[4]; /* 0x04 */ void (*unk04)(void); /* 0x08 */ void (*unk08)(void); /* 0x0C */ float unk0C; diff --git a/src/REL/m435Dll/main.c b/src/REL/m435Dll/main.c index 1972c585..df551b13 100755 --- a/src/REL/m435Dll/main.c +++ b/src/REL/m435Dll/main.c @@ -3818,21 +3818,21 @@ void fn_1_12D18(void) { StructBssC1C* sp10; StructBss144* temp_r27; s32 var_r30; - s32 var_r31; + s32 i; var_r30 = 999; var_r28 = &lbl_1_bss_4EE8; sp10 = &lbl_1_bss_C1C; - for (var_r31 = 0; var_r31 < 4; var_r31++) { - fn_1_A4B8(var_r31, 0); + for (i = 0; i < 4; i++) { + fn_1_A4B8(i, 0); } fn_1_8250(1); if (var_r28->unk08 != 1) { - for (var_r31 = 0; var_r31 < 4; var_r31++) { - temp_r27 = &lbl_1_bss_144[var_r31]; + for (i = 0; i < 4; i++) { + temp_r27 = &lbl_1_bss_144[i]; if (var_r30 > temp_r27->unk50) { var_r30 = temp_r27->unk50; - var_r28->unk10 = var_r31; + var_r28->unk10 = i; } } } @@ -3847,9 +3847,9 @@ void fn_1_12D18(void) { }; var_r30 = var_r28->unk10; - for (var_r31 = 0; var_r31 < 4; var_r31++) { + for (i = 0; i < 4; i++) { temp_r29 = &lbl_1_bss_E88[var_r30]; - omSetTra(temp_r29->unk00, sp14[var_r31].x, sp14[var_r31].y, sp14[var_r31].z); + omSetTra(temp_r29->unk00, sp14[i].x, sp14[i].y, sp14[i].z); omSetRot(temp_r29->unk00, 0.0f, 180.0f, 0.0f); fn_1_157BC(temp_r29->unk00, 0, 0, 10, 1); var_r30++; @@ -3861,6 +3861,21 @@ void fn_1_12D18(void) { } } fn_1_1090C(5); + + // Hack required to match. + if (0) { + s32 var_r25; + s32 var_r26; + + (void) var_r26; + (void) var_r26; + (void) var_r26; + (void) var_r26; + (void) var_r25; + (void) var_r25; + (void) var_r25; + (void) var_r25; + } } // Unused. Mirrors the Vec array defined in fn_1_12D18. @@ -3871,15 +3886,75 @@ const Vec lbl_1_rodata_48C[] = { { 400.0f, 0.0f, -225.0f } }; -s32 fn_1_12F48(void) { +static inline void fn_1_12F48_inline_hack(s32 arg0) { StructBss4EE8* var_r27; + + var_r27 = &lbl_1_bss_4EE8; + (void) var_r27; + (void) var_r27; + (void) var_r27; + (void) var_r27; + + if (arg0) { + s32 var_r31; + s32 var_r30; + s32 var_r26; + s32 var_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + s32 var_r19; + s32 var_r18; + s32 var_r17; + + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r26; + (void) var_r26; + (void) var_r26; + (void) var_r26; + (void) var_r23; + (void) var_r23; + (void) var_r23; + (void) var_r22; + (void) var_r22; + (void) var_r22; + (void) var_r21; + (void) var_r21; + (void) var_r21; + (void) var_r20; + (void) var_r20; + (void) var_r20; + (void) var_r19; + (void) var_r19; + (void) var_r19; + (void) var_r18; + (void) var_r18; + (void) var_r18; + (void) var_r17; + (void) var_r17; + (void) var_r17; + } +} + +s32 fn_1_12F48(void) { StructBssC1C* var_r25; StructBssC30* var_r24; StructBssE88* sp8; s32 var_r29; s32 var_r28; - var_r27 = &lbl_1_bss_4EE8; + fn_1_12F48_inline_hack(0); // Required to match. if (fn_1_15670(&lbl_1_bss_6C, 0) == 180) { var_r25 = &lbl_1_bss_C1C; for (var_r29 = 0; var_r29 < 4; var_r29++) { @@ -4079,6 +4154,8 @@ void fn_1_13600(void) { } void fn_1_14384(omObjData* arg0) { + StructBssDE4* var_r25; + switch (lbl_1_bss_1C) { case 0: fn_1_13600(); @@ -4124,7 +4201,8 @@ void fn_1_14384(omObjData* arg0) { } break; case 8: - fn_1_2BFC(999); + var_r25 = &lbl_1_bss_DE4; + var_r25->unk04 = 999; if (fn_1_13414()) { lbl_1_bss_1C = 9; } @@ -4135,6 +4213,20 @@ void fn_1_14384(omObjData* arg0) { break; } fn_1_135A0(arg0); + + // Hack required to match. + if (0) { + s32 var_r31; + s32 var_r28; + + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r28; + (void) var_r28; + (void) var_r28; + } } void fn_1_14760(omObjData* arg0) { From 0c3008d2e372c85fec043e9a6675711b41dc969f Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Wed, 11 Dec 2024 01:48:05 +0100 Subject: [PATCH 059/178] Almost fully matched m459dll --- config/GMPE01_00/rels/m459dll/symbols.txt | 170 +- src/REL/m459dll/main.c | 2132 +++++++++++++++++++++ 2 files changed, 2217 insertions(+), 85 deletions(-) create mode 100644 src/REL/m459dll/main.c diff --git a/config/GMPE01_00/rels/m459dll/symbols.txt b/config/GMPE01_00/rels/m459dll/symbols.txt index 5520ff1e..7e0f8085 100644 --- a/config/GMPE01_00/rels/m459dll/symbols.txt +++ b/config/GMPE01_00/rels/m459dll/symbols.txt @@ -64,91 +64,91 @@ fn_1_6198 = .text:0x00006198; // type:function size:0x2C0 fn_1_6458 = .text:0x00006458; // type:function size:0x128 _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:0x30 -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x78 -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x18 -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:4byte -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x20 -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x20 -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x18C -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x10 -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x8 -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x14 -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x14 -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x14 -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x14 -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0xC data:4byte -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0xC data:4byte -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0xC data:4byte -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x48 -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string -lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1B data:string +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x30 scope:local +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x78 scope:local +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x18 scope:local +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x20 scope:local +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x20 scope:local +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x18C scope:local +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x10 scope:local +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x8 scope:local +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x14 scope:local +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x14 scope:local +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x14 scope:local +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x14 scope:local +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0xC scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0xC scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0xC scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x48 scope:local +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B scope:local data:string +lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1B scope:local data:string jumptable_1_data_38 = .data:0x00000038; // type:object size:0x38 scope:local lbl_1_data_70 = .data:0x00000070; // type:object size:0x1C lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x2 data:2byte diff --git a/src/REL/m459dll/main.c b/src/REL/m459dll/main.c new file mode 100644 index 00000000..b9ecf9b3 --- /dev/null +++ b/src/REL/m459dll/main.c @@ -0,0 +1,2132 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/esprite.h" +#include "game/gamework.h" +#include "game/hsfex.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/wipe.h" + +// #ifndef __MWERKS__ +#include "game/frand.h" +// #endif + +typedef struct M459DllBss18Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s16 unk_04[8]; + /* 0x14 */ s16 unk_14[8]; + /* 0x24 */ u8 unk_24[2]; + /* 0x28 */ s32 unk_28; + /* 0x2C */ s32 unk_2C; +} M459DllBss18Struct; /* size = 0x30 */ + +typedef struct M459DllBss4CStruct { + /* 0x00 */ s16 unk_00[6]; + /* 0x0C */ s32 unk_0C; + /* 0x10 */ s32 unk_10; + /* 0x14 */ s32 unk_14; +} M459DllBss4CStruct; /* size = 0x18 */ + +typedef struct M459DllBss64Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ s16 unk_08; +} M459DllBss64Struct; /* size = 0xC */ + +typedef struct M459DllBss70Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s16 unk_04; + /* 0x08 */ s32 unk_08; +} M459DllBss70Struct; /* size = 0xC */ + +typedef struct M459DllBss7CStruct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ u32 unk_08; + /* 0x0C */ s16 unk_0C[2]; +} M459DllBss7CStruct; /* size = 0x10 */ + +typedef struct M459DllBssCCStruct { + /* 0x000 */ s32 unk_00; + /* 0x004 */ s32 unk_04; + /* 0x008 */ s32 unk_08; + /* 0x00C */ Vec unk_0C; + /* 0x018 */ float unk_18; + /* 0x01C */ float unk_1C; + /* 0x020 */ float unk_20; + /* 0x024 */ char pad_24[0x4]; + /* 0x028 */ s32 unk_28[5]; + /* 0x03C */ s32 unk_3C[5]; + /* 0x050 */ float unk_50; + /* 0x054 */ float unk_54; + /* 0x058 */ float unk_58; + /* 0x05C */ float unk_5C; + /* 0x060 */ s16 unk_60; + /* 0x062 */ s16 unk_62[0xC]; + /* 0x07A */ s16 unk_7A[0xC][6]; + /* 0x10A */ s16 unk_10A[2]; + /* 0x10E */ char pad_10E[2]; +} M459DllBssCCStruct; /* size = 0x110 */ + +typedef struct M459DllBss61CStruct { + /* 0x00 */ Vec unk_00; + /* 0x0C */ Vec unk_0C; + /* 0x18 */ float unk_18; + /* 0x1C */ float unk_1C; + /* 0x20 */ float unk_20; + /* 0x24 */ float unk_24; + /* 0x24 */ float unk_28; + /* 0x2C */ float unk_2C; + /* 0x30 */ float unk_30; + /* 0x34 */ float unk_34; + /* 0x38 */ float unk_38; + /* 0x3C */ char unk3C[0xC]; + /* 0x48 */ Vec unk_48; + /* 0x54 */ Vec unk_54; + /* 0x60 */ char unk60[0xC]; + /* 0x6C */ float unk_6C; + /* 0x70 */ float unk_70; + /* 0x74 */ float unk_74; + /* 0x78 */ float unk_78; +} M459DllBss61CStruct; /* size = 0x7C */ + +typedef struct M459DllData70Struct { + /* 0x00 */ Vec unk_00; + /* 0x0C */ Vec unk_0C; + /* 0x18 */ GXColor unk_18; +} M459DllData70Struct; /* size = 0x1C */ + +void fn_1_11DC(float arg8, float arg9, float argA); +void fn_1_1204(float arg8, float arg9, float argA); +void fn_1_122C(void); +void fn_1_14B8(void); +void fn_1_19B4(M459DllBssCCStruct *arg0); +void fn_1_1A00(M459DllBssCCStruct *arg0); +void fn_1_1D8(void); +void fn_1_1FDC(M459DllBssCCStruct *arg0); +void fn_1_2044(M459DllBssCCStruct *arg0); +void fn_1_21AC(M459DllBssCCStruct *arg0); +void fn_1_23AC(M459DllBssCCStruct *arg0); +void fn_1_25C8(M459DllBssCCStruct *arg0); +void fn_1_27C8(M459DllBssCCStruct *arg0); +void fn_1_2930(M459DllBssCCStruct *arg0); +void fn_1_2B24(M459DllBssCCStruct *arg0); +void fn_1_2F18(M459DllBssCCStruct *arg0); +void fn_1_3004(M459DllBssCCStruct *arg0); +void fn_1_338C(M459DllBssCCStruct *arg0, float arg8); +void fn_1_3700(M459DllBssCCStruct *arg0); +void fn_1_4160(M459DllBssCCStruct *arg0); +float fn_1_4210(float arg8, float arg9, float argA); +void fn_1_4314(s32 arg0, u32 arg1); +void fn_1_4530(void); +void fn_1_45EC(void); +void fn_1_4764(void); +void fn_1_47E4(void); +void fn_1_4850(void); +void fn_1_48E4(void); +void fn_1_4A74(void); +void fn_1_4B68(void); +void fn_1_4C1C(void); +void fn_1_4CD0(void); +s32 fn_1_4E54(void); +void fn_1_4E64(s32 arg0); +void fn_1_4E98(void); +void fn_1_4EAC(void); +void fn_1_4F8C(s32 arg0); +s32 fn_1_4FAC(void); +void fn_1_4FC8(void); +void fn_1_52D8(s32 arg0); +s32 fn_1_52F0(void); +s32 fn_1_5300(void); +void fn_1_5310(void); +void fn_1_535C(void); +void fn_1_5490(void); +void fn_1_556C(M459DllBss18Struct *arg0); +void fn_1_55B0(M459DllBss18Struct *arg0); +void fn_1_5A78(M459DllBss18Struct *arg0); +void fn_1_5E3C(M459DllBss18Struct *arg0); +void fn_1_5EAC(void); +void fn_1_5F40(M459DllBss7CStruct *arg0); +void fn_1_5F84(M459DllBss7CStruct *arg0); +void fn_1_6198(M459DllBss7CStruct *arg0); +void fn_1_640(void); +void fn_1_6458(M459DllBss7CStruct *arg0); +void fn_1_73C(void); +void fn_1_E78(void); + +Process *lbl_1_bss_6E4; +Process *lbl_1_bss_698[0x13]; +M459DllBss61CStruct lbl_1_bss_61C; +M459DllBssCCStruct lbl_1_bss_CC[5]; +M459DllBss7CStruct lbl_1_bss_7C[5]; +M459DllBss70Struct lbl_1_bss_70; +M459DllBss64Struct lbl_1_bss_64; +M459DllBss4CStruct lbl_1_bss_4C; +s16 lbl_1_bss_48[1]; +M459DllBss18Struct lbl_1_bss_18; +s32 lbl_1_bss_14; +s32 lbl_1_bss_10; +s32 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +u8 lbl_1_bss_2; +s16 lbl_1_bss_0; + +static const s32 lbl_1_rodata_10[0xC] = { + DATA_MAKE_NUM(DATADIR_M459, 0x05), + DATA_MAKE_NUM(DATADIR_M459, 0x03), + DATA_MAKE_NUM(DATADIR_M459, 0x04), + DATA_MAKE_NUM(DATADIR_M459, 0x01), + DATA_MAKE_NUM(DATADIR_M459, 0x02), + DATA_MAKE_NUM(DATADIR_M459, 0x05), + DATA_MAKE_NUM(DATADIR_M459, 0x03), + DATA_MAKE_NUM(DATADIR_M459, 0x04), + DATA_MAKE_NUM(DATADIR_M459, 0x01), + DATA_MAKE_NUM(DATADIR_M459, 0x02), + DATA_MAKE_NUM(DATADIR_M459, 0x0E), + DATA_MAKE_NUM(DATADIR_M459, 0x0F), +}; +static const s32 lbl_1_rodata_40[5][6] = { + { + DATA_MAKE_NUM(DATADIR_M459, 0x28), + DATA_MAKE_NUM(DATADIR_M459, 0x29), + DATA_MAKE_NUM(DATADIR_M459, 0x2A), + DATA_MAKE_NUM(DATADIR_M459, 0x2C), + DATA_MAKE_NUM(DATADIR_M459, 0x2B), + DATA_MAKE_NUM(DATADIR_M459, 0x2D), + }, + { + DATA_MAKE_NUM(DATADIR_M459, 0x1C), + DATA_MAKE_NUM(DATADIR_M459, 0x1D), + DATA_MAKE_NUM(DATADIR_M459, 0x1E), + DATA_MAKE_NUM(DATADIR_M459, 0x20), + DATA_MAKE_NUM(DATADIR_M459, 0x1F), + DATA_MAKE_NUM(DATADIR_M459, 0x21), + }, + { + DATA_MAKE_NUM(DATADIR_M459, 0x22), + DATA_MAKE_NUM(DATADIR_M459, 0x23), + DATA_MAKE_NUM(DATADIR_M459, 0x24), + DATA_MAKE_NUM(DATADIR_M459, 0x26), + DATA_MAKE_NUM(DATADIR_M459, 0x25), + DATA_MAKE_NUM(DATADIR_M459, 0x27), + }, + { + DATA_MAKE_NUM(DATADIR_M459, 0x10), + DATA_MAKE_NUM(DATADIR_M459, 0x11), + DATA_MAKE_NUM(DATADIR_M459, 0x12), + DATA_MAKE_NUM(DATADIR_M459, 0x14), + DATA_MAKE_NUM(DATADIR_M459, 0x13), + DATA_MAKE_NUM(DATADIR_M459, 0x15), + }, + { + DATA_MAKE_NUM(DATADIR_M459, 0x16), + DATA_MAKE_NUM(DATADIR_M459, 0x17), + DATA_MAKE_NUM(DATADIR_M459, 0x18), + DATA_MAKE_NUM(DATADIR_M459, 0x1A), + DATA_MAKE_NUM(DATADIR_M459, 0x19), + DATA_MAKE_NUM(DATADIR_M459, 0x1B), + }, +}; +static const s32 lbl_1_rodata_B8[2] = { DATA_MAKE_NUM(DATADIR_M459, 0x3C), DATA_MAKE_NUM(DATADIR_M459, 0x3D) }; +static const s32 lbl_1_rodata_C0[2] = { DATA_MAKE_NUM(DATADIR_M459, 0x3A), DATA_MAKE_NUM(DATADIR_M459, 0x3B) }; +static const s32 lbl_1_rodata_C8[6] = { + DATA_MAKE_NUM(DATADIR_M459, 0x30), + DATA_MAKE_NUM(DATADIR_M459, 0x30), + DATA_MAKE_NUM(DATADIR_M459, 0x2F), + DATA_MAKE_NUM(DATADIR_M459, 0x2F), + DATA_MAKE_NUM(DATADIR_M459, 0x31), + DATA_MAKE_NUM(DATADIR_M459, 0x2E), +}; +static const s32 lbl_1_rodata_E0[1] = { DATA_MAKE_NUM(DATADIR_M459, 0x00) }; +static const s32 lbl_1_rodata_E4[8] = { + DATA_MAKE_NUM(DATADIR_M459, 0x06), + DATA_MAKE_NUM(DATADIR_M459, 0x07), + DATA_MAKE_NUM(DATADIR_M459, 0x08), + DATA_MAKE_NUM(DATADIR_M459, 0x09), + DATA_MAKE_NUM(DATADIR_M459, 0x0A), + DATA_MAKE_NUM(DATADIR_M459, 0x0B), + DATA_MAKE_NUM(DATADIR_M459, 0x0C), + DATA_MAKE_NUM(DATADIR_M459, 0x0D), +}; +static const s32 lbl_1_rodata_104[8] = { + DATA_MAKE_NUM(DATADIR_M459, 0x32), + DATA_MAKE_NUM(DATADIR_M459, 0x33), + DATA_MAKE_NUM(DATADIR_M459, 0x34), + DATA_MAKE_NUM(DATADIR_M459, 0x35), + DATA_MAKE_NUM(DATADIR_M459, 0x36), + DATA_MAKE_NUM(DATADIR_M459, 0x37), + DATA_MAKE_NUM(DATADIR_M459, 0x38), + DATA_MAKE_NUM(DATADIR_M459, 0x39), +}; +static const s32 lbl_1_rodata_124[0x63] = { 0x14, 0x13, 0x12, 0x11, 0x10, 0xF, 0xE, 0xD, 0xC, 0xB, 0xA, 9, 8, 7, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 }; + +static const s32 lbl_1_rodata_2B0[4] = {0x80000000, 0x40000000, 0x20000000, 0x10000000}; + +void ObjectSetup(void) +{ + s32 var_r31; + u32 var_r30; + + lbl_1_bss_6E4 = omInitObjMan(1, 0x2000); + omGameSysInit(lbl_1_bss_6E4); + fn_1_1D8(); + var_r30 = HuPadRumbleGet(); + if ((var_r30 & 0x80000000) != 0) { + lbl_1_bss_8 = GWGameStat.rumble; + } + else { + lbl_1_bss_8 = 0; + } + lbl_1_bss_4 = 0; + for (var_r31 = 0; var_r31 < 0x13; var_r31++) { + lbl_1_bss_698[var_r31] = NULL; + } + lbl_1_bss_698[0] = HuPrcChildCreate(fn_1_640, 0x100, 0x1000, 0, lbl_1_bss_6E4); + lbl_1_bss_698[1] = HuPrcChildCreate(fn_1_73C, 0x101, 0x3000, 0, lbl_1_bss_6E4); +} + +void fn_1_1D8(void) +{ + M459DllBssCCStruct *var_r29; + s32 var_r31; + s32 var_r30; + M459DllBss18Struct *var_r28; + s16 *var_r27; + s32 var_r26; + s16 *var_r25; + M459DllBss7CStruct *var_r24; + + for (var_r30 = 0; var_r30 < 5; var_r30++) { + var_r29 = &lbl_1_bss_CC[var_r30]; + for (var_r31 = 0; var_r31 < 0xC; var_r31++) { + if ((var_r31 >= 5) && (var_r31 <= 9)) { + var_r29->unk_62[var_r31] = Hu3DModelLink(var_r29->unk_62[var_r31 - 5]); + } + else { + var_r29->unk_62[var_r31] = Hu3DModelCreateFile(lbl_1_rodata_10[var_r31]); + } + if ((var_r31 >= 0) && (var_r31 <= 4)) { + Hu3DModelLayerSet(var_r29->unk_62[var_r31], 2); + } + else if ((var_r31 >= 5) && (var_r31 <= 9)) { + Hu3DModelLayerSet(var_r29->unk_62[var_r31], 0); + Hu3DModelAttrSet(var_r29->unk_62[var_r31], HU3D_ATTR_CULL_FRONT); + } + else { + Hu3DModelLayerSet(var_r29->unk_62[var_r31], 3); + } + if (var_r31 == 0xA) { + Hu3DModelAttrSet(var_r29->unk_62[var_r31], HU3D_ATTR_ZWRITE_OFF); + } + if ((var_r31 >= 0) && (var_r31 <= 4)) { + Hu3DModelShadowSet(var_r29->unk_62[var_r31]); + } + Hu3DModelAttrSet(var_r29->unk_62[var_r31], HU3D_ATTR_DISPOFF); + } + for (var_r26 = 0; var_r26 < 5; var_r26++) { + for (var_r31 = 0; var_r31 < 6; var_r31++) { + var_r29->unk_7A[var_r26][var_r31] = Hu3DJointMotionFile(var_r29->unk_62[var_r26], lbl_1_rodata_40[var_r26][var_r31]); + } + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r29->unk_10A[var_r31] = espEntry(lbl_1_rodata_B8[var_r31], 0, 0); + espDispOff(var_r29->unk_10A[var_r31]); + } + } + CharModelLayerSetAll(3); + for (var_r30 = 0; var_r30 < 5; var_r30++) { + var_r24 = &lbl_1_bss_7C[var_r30]; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r24->unk_0C[var_r31] = espEntry(lbl_1_rodata_C0[var_r31], 0, 0); + espDispOff(var_r24->unk_0C[var_r31]); + } + } + var_r25 = lbl_1_bss_4C.unk_00; + for (var_r30 = 0; var_r30 < 6; var_r30++) { + var_r25[var_r30] = espEntry(lbl_1_rodata_C8[var_r30], 0, 0); + } + espColorSet(var_r25[5], 0, 0, 0); + var_r27 = lbl_1_bss_48; + for (var_r30 = 0; var_r30 < 1; var_r30++) { + var_r27[var_r30] = Hu3DModelCreateFile(lbl_1_rodata_E0[var_r30]); + Hu3DModelLayerSet(var_r27[var_r30], 1); + Hu3DModelShadowMapSet(var_r27[var_r30]); + } + var_r28 = &lbl_1_bss_18; + for (var_r30 = 0; var_r30 < 8; var_r30++) { + var_r28->unk_14[var_r30] = Hu3DModelCreateFile(lbl_1_rodata_E4[var_r30]); + Hu3DModelLayerSet(var_r28->unk_14[var_r30], 2); + Hu3DModelAttrSet(var_r28->unk_14[var_r30], HU3D_ATTR_ZWRITE_OFF); + Hu3DModelAttrSet(var_r28->unk_14[var_r30], HU3D_ATTR_DISPOFF); + } + for (var_r30 = 0; var_r30 < 8; var_r30++) { + var_r28->unk_04[var_r30] = espEntry(lbl_1_rodata_104[var_r30], 0, 0); + espDispOff(var_r28->unk_04[var_r30]); + } +} + +void fn_1_640(void) +{ + s32 var_r31; + + while (omSysExitReq == 0) { + HuPrcVSleep(); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + HuAudFadeOut(0x3E8); + for (var_r31 = 0; var_r31 < 0x13; var_r31++) { + if ((var_r31 != 0) && lbl_1_bss_698[var_r31]) { + HuPrcKill(lbl_1_bss_698[var_r31]); + lbl_1_bss_698[var_r31] = NULL; + } + } + HuPrcVSleep(); + omOvlReturnEx(1, 1); + HuPrcEnd(); + lbl_1_bss_698[0] = NULL; +} + +void fn_1_73C(void) +{ + s32 var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + lbl_1_bss_698[2] = HuPrcChildCreate(fn_1_E78, 0xFF, 0x1000, 0, HuPrcCurrentGet()); + for (var_r31 = 0; var_r31 < 5; var_r31++) { + lbl_1_bss_698[var_r31 + 3] = HuPrcChildCreate(fn_1_14B8, 0x102, 0x3000, 0, HuPrcCurrentGet()); + *((s32 *)&lbl_1_bss_698[var_r31 + 3]->user_data) = var_r31; + } + for (var_r31 = 0; var_r31 < 5; var_r31++) { + lbl_1_bss_698[var_r31 + 8] = HuPrcChildCreate(fn_1_5EAC, 0x105, 0x1000, 0, HuPrcCurrentGet()); + *((s32 *)&lbl_1_bss_698[var_r31 + 8]->user_data) = var_r31; + } + lbl_1_bss_698[0x11] = HuPrcChildCreate(fn_1_5490, 0x103, 0x2000, 0, HuPrcCurrentGet()); + for (var_r31 = 0; var_r31 < 5; var_r31++) { + fn_1_4314(var_r31, frandmod(5)); + } + lbl_1_bss_698[0xD] = HuPrcChildCreate(fn_1_4CD0, 0x200, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_698[0xE] = HuPrcChildCreate(fn_1_4EAC, 0x103, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_698[0xF] = HuPrcChildCreate(fn_1_4FC8, 0x104, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_698[0x10] = HuPrcChildCreate(fn_1_535C, 0x110, 0x2000, 0, HuPrcCurrentGet()); + HuPrcVSleep(); + fn_1_1204(0.0f, 90.0f, -400.0f); + fn_1_11DC(0.0f, 300.0f, 1100.0f); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4530, 0x100, 0x4000, 0, HuPrcCurrentGet()); + + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + while (TRUE) { + lbl_1_bss_10 = frandmod(5); + var_r29 = frandmod(5); + var_r30 = frandmod(5); + if (var_r29 == var_r30) { + var_r30 = (var_r30 + 1) % 5; + } + for (var_r31 = 0; var_r31 < 5; var_r31++) { + if (var_r31 != lbl_1_bss_10) { + lbl_1_bss_7C[var_r31].unk_08 = var_r29; + } + } + lbl_1_bss_7C[lbl_1_bss_10].unk_08 = var_r30; + if (fn_1_52F0() > 0) { + for (var_r31 = 0; var_r31 < 5; var_r31++) { + fn_1_4314(var_r31, frandmod(5)); + } + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4C1C, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + HuPrcSleep(0x3C); + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4764, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + } + var_r28 = lbl_1_rodata_124[fn_1_52F0()] * 0x3C; + fn_1_4E64(var_r28); + lbl_1_bss_18.unk_00 = 1; + while (TRUE) { + if ((lbl_1_bss_18.unk_00 == 0) || (fn_1_4E54() <= 0)) { + break; + } + HuPrcVSleep(); + } + fn_1_4E98(); + if (lbl_1_bss_18.unk_00 != 0) { + lbl_1_bss_18.unk_00 = 2; + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4A74, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + } + else { + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_47E4, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + if (lbl_1_bss_14 == lbl_1_bss_10) { + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4850, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + fn_1_52D8(1); + if (fn_1_52F0() != 0x63) { + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4B68, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + continue; + } + } + else { + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_48E4, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + } + } + break; + } + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_45EC, 0x100, 0x4000, 0, HuPrcCurrentGet()); + + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + mgRecordExtra = fn_1_52F0(); + omSysExitReq = 1; + HuPrcEnd(); + lbl_1_bss_698[1] = NULL; + lbl_1_bss_698[1] = NULL; +} + +void fn_1_E78(void) +{ + float sp8; + float var_f31; + M459DllBss61CStruct *var_r31; + + var_r31 = &lbl_1_bss_61C; + var_r31->unk_00.x = 0.0f; + var_r31->unk_00.y = 300.0f; + var_r31->unk_00.z = 1100.0f; + var_r31->unk_0C.x = 90.0f; + var_r31->unk_0C.y = -400.0f; + var_r31->unk_0C.z = 0.0f; + var_r31->unk_18 = 0.0f; + var_r31->unk_1C = 1.0f; + var_r31->unk_20 = 0.0f; + var_r31->unk_74 = 1.0f; + var_r31->unk_6C = 1.0f; + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraPerspectiveSet(1, 30.0f, 10.0f, 8000.0f, 1.2f); + while (TRUE) { + fn_1_122C(); + if (var_r31->unk_6C < 1.0f) { + var_f31 = sind((90.0f * var_r31->unk_6C)); + var_r31->unk_00.x = var_r31->unk_24 + (var_f31 * (var_r31->unk_48.x - var_r31->unk_24)); + var_r31->unk_00.y = var_r31->unk_28 + (var_f31 * (var_r31->unk_48.y - var_r31->unk_28)); + var_r31->unk_00.z = var_r31->unk_2C + (var_f31 * (var_r31->unk_48.z - var_r31->unk_2C)); + if ((var_r31->unk_6C += var_r31->unk_70) >= 1.0f) { + var_r31->unk_00 = var_r31->unk_48; + } + } + if (var_r31->unk_74 < 1.0f) { + var_f31 = sind((90.0f * var_r31->unk_74)); + var_r31->unk_0C.x = var_r31->unk_30 + (var_f31 * (var_r31->unk_54.x - var_r31->unk_30)); + var_r31->unk_0C.y = var_r31->unk_34 + (var_f31 * (var_r31->unk_54.y - var_r31->unk_34)); + var_r31->unk_0C.z = var_r31->unk_38 + (var_f31 * (var_r31->unk_54.z - var_r31->unk_38)); + if ((var_r31->unk_74 += var_r31->unk_78) >= 1.0f) { + var_r31->unk_0C = var_r31->unk_54; + } + } + Hu3DCameraPosSet(1, var_r31->unk_00.x, var_r31->unk_00.y, var_r31->unk_00.z, var_r31->unk_18, var_r31->unk_1C, var_r31->unk_20, + var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + HuPrcVSleep(); + } +} + +void fn_1_11DC(float arg8, float arg9, float argA) +{ + M459DllBss61CStruct *var_r31 = &lbl_1_bss_61C; + var_r31->unk_00.x = arg8; + var_r31->unk_00.y = arg9; + var_r31->unk_00.z = argA; +} + +void fn_1_1204(float arg8, float arg9, float argA) +{ + M459DllBss61CStruct *var_r31 = &lbl_1_bss_61C; + var_r31->unk_0C.x = arg8; + var_r31->unk_0C.y = arg9; + var_r31->unk_0C.z = argA; +} + +void fn_1_122C(void) +{ + M459DllBss61CStruct *var_r31; + + if (lbl_1_bss_4 != 0) { + var_r31 = &lbl_1_bss_61C; + var_r31->unk_0C.x += (0.25f * HuPadStkX[0]); + var_r31->unk_0C.y += (0.25f * HuPadStkY[0]); + var_r31->unk_00.z += (0.25f * HuPadTrigL[0]); + var_r31->unk_00.z -= (0.25f * HuPadTrigR[0]); + var_r31->unk_00.x += (0.25f * HuPadSubStkX[0]); + var_r31->unk_00.y += (0.25f * HuPadSubStkY[0]); + } +} + +void fn_1_142C(void) +{ + M459DllBss61CStruct *var_r31 = &lbl_1_bss_61C; + print8(0x20, 0x40, 1.5f, "AT : x=%.2f y=%.2f z=%.2f", var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + print8(0x20, 0x50, 1.5f, "EYE : x=%.2f y=%.2f z=%.2f", var_r31->unk_00.x, var_r31->unk_00.y, var_r31->unk_00.z); +} + +static const u8 lbl_1_rodata_31C[8] = { 9, 0xE, 0xC, 0xA, 0xB }; + +void fn_1_14B8(void) +{ + M459DllBssCCStruct *var_r31; + s32 var_r30; + s32 var_r29; + + var_r29 = (s32)HuPrcCurrentGet()->user_data; + var_r31 = &lbl_1_bss_CC[var_r29]; + var_r31->unk_00 = var_r29; + var_r31->unk_04 = 0; + var_r31->unk_0C.x = -260.0f + (130.0f * var_r29); + var_r31->unk_0C.y = 0.0f; + var_r31->unk_0C.z = 0.0f; + var_r31->unk_18 = 0.0f; + var_r31->unk_1C = 0.0f; + var_r31->unk_20 = 0.0f; + var_r31->unk_50 = 0.0f; + var_r31->unk_54 = 0.0f; + var_r31->unk_58 = 0.0f; + Hu3DMotionSet(var_r31->unk_62[var_r31->unk_08], var_r31->unk_7A[var_r31->unk_08][var_r31->unk_60 = 0]); + Hu3DModelAttrSet(var_r31->unk_62[var_r31->unk_08], HU3D_MOTATTR_LOOP); + for (var_r30 = 0; var_r30 < 5; var_r30++) { + var_r31->unk_28[var_r30] = CharModelEffectNpcInit(var_r31->unk_62[var_r30], var_r31->unk_7A[var_r30][2], 1, lbl_1_rodata_31C[var_r30]); + var_r31->unk_3C[var_r30] = CharModelEffectNpcInit(var_r31->unk_62[var_r30], var_r31->unk_7A[var_r30][1], 0, lbl_1_rodata_31C[var_r30]); + } + while (TRUE) { + switch (var_r31->unk_04) { + case 0: + fn_1_19B4(var_r31); + break; + case 1: + fn_1_1A00(var_r31); + break; + case 3: + fn_1_1FDC(var_r31); + lbl_1_bss_7C[var_r31->unk_00].unk_04 = 3; + break; + case 4: + fn_1_2044(var_r31); + break; + case 5: + fn_1_21AC(var_r31); + break; + case 6: + fn_1_23AC(var_r31); + break; + case 7: + fn_1_27C8(var_r31); + break; + case 8: + fn_1_2930(var_r31); + break; + case 9: + fn_1_2B24(var_r31); + break; + case 10: + fn_1_3004(var_r31); + break; + case 11: + fn_1_2F18(var_r31); + break; + case 12: + fn_1_25C8(var_r31); + break; + case 13: + fn_1_3700(var_r31); + break; + } + } +} + +void fn_1_1778(M459DllBssCCStruct *arg0, s16 arg1, float arg8, float arg9, u32 arg2) +{ + Hu3DMotionShiftSet(arg0->unk_62[arg0->unk_08], arg0->unk_7A[arg0->unk_08][arg0->unk_60 = arg1], arg8, arg9, arg2); + Hu3DMotionShiftSet(arg0->unk_62[arg0->unk_08 + 5], arg0->unk_7A[arg0->unk_08][arg1], arg8, arg9, arg2); + Hu3DModelScaleSet(arg0->unk_62[arg0->unk_08 + 5], 1.0f, -1.0f, 1.0f); +} + +void fn_1_189C(M459DllBssCCStruct *arg0, s16 arg1, u32 arg2) +{ + Hu3DMotionSet(arg0->unk_62[arg0->unk_08], arg0->unk_7A[arg0->unk_08][arg0->unk_60 = arg1]); + Hu3DMotionSet(arg0->unk_62[arg0->unk_08 + 5], arg0->unk_7A[arg0->unk_08][arg1]); + Hu3DModelScaleSet(arg0->unk_62[arg0->unk_08 + 5], 1.0f, -1.0f, 1.0f); + Hu3DModelAttrSet(arg0->unk_62[arg0->unk_08], arg2); + Hu3DModelAttrSet(arg0->unk_62[arg0->unk_08 + 5], arg2); +} + +void fn_1_19B4(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + do { + var_r30 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + } while (arg0->unk_04 == var_r30); +} + +static const s32 lbl_1_rodata_330[5] = { 0x36, 0x44, 0x47, 0x41, 0x4C }; + +void fn_1_1A00(M459DllBssCCStruct *var_r31) +{ + Vec sp8; + float var_f31; + + s32 var_r30; + s16 var_r29; + s16 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + + if (var_r31->unk_00 == 0) { + HuAudFXPlay(0x30D); + } + var_r29 = var_r31->unk_62[10]; + Hu3DModelAttrReset(var_r29, HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(var_r29, 1.0f, 1.0f, 1.0f); + Hu3DModelTPLvlSet(var_r29, 1.0f); + sp8 = var_r31->unk_0C; + for (var_r30 = 0; var_r30 < 0x28; var_r30++) { + var_f31 = sind((2.25f * var_r30)); + sp8.y = 170.0f + (350.0f - (350.0f * var_f31)); + Hu3DModelPosSet(var_r29, sp8.x, sp8.y, sp8.z); + var_r27 = var_r31->unk_04; + fn_1_4160(var_r31); + HuPrcVSleep(); + if (var_r31->unk_04 != var_r27) { + return; + } + } + if (var_r31->unk_00 == 0) { + HuAudFXPlay(0x312); + HuAudFXPlay(0x314); + } + for (var_r30 = 0; var_r30 < 0x14; var_r30++) { + var_f31 = sind((4.5f * var_r30)); + var_f31 = 1.0f - var_f31; + Hu3DModelScaleSet(var_r29, var_f31, var_f31, var_f31); + Hu3DModelTPLvlSet(var_r29, var_f31); + sp8.y = 170.0f - (2.0f * var_r30); + Hu3DModelPosSet(var_r29, sp8.x, sp8.y, sp8.z); + var_r26 = var_r31->unk_04; + fn_1_4160(var_r31); + HuPrcVSleep(); + if (var_r31->unk_04 != var_r26) { + return; + } + } + Hu3DModelAttrSet(var_r29, HU3D_ATTR_DISPOFF); + HuAudFXPlay(lbl_1_rodata_330[var_r31->unk_08]); + var_r28 = var_r31->unk_10A[0]; + sp8 = var_r31->unk_0C; + sp8.y = 200.0f; + Hu3D3Dto2D(&sp8, 1, &sp8); + espPosSet(var_r28, sp8.x, sp8.y); + espTPLvlSet(var_r28, 1.0f); + espDispOn(var_r28); + fn_1_1778(var_r31, 3, 0.0f, 8.0f, HU3D_ATTR_NONE); + for (var_r30 = 0; var_r30 < 0x3C; var_r30++) { + var_r25 = var_r31->unk_04; + fn_1_4160(var_r31); + HuPrcVSleep(); + if (var_r31->unk_04 != var_r25) { + return; + } + } + fn_1_1778(var_r31, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + for (var_r30 = 0; var_r30 <= 0xA; var_r30++) { + espTPLvlSet(var_r28, 1.0f - (0.1f * var_r30)); + var_r24 = var_r31->unk_04; + fn_1_4160(var_r31); + HuPrcVSleep(); + if (var_r31->unk_04 != var_r24) { + return; + } + } + espDispOff(var_r28); + lbl_1_bss_CC[var_r31->unk_00].unk_04 = 0; +} + +void fn_1_1FDC(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + + lbl_1_bss_7C[arg0->unk_00].unk_04 = 1; + do { + var_r30 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + } while (arg0->unk_04 == var_r30); +} + +void fn_1_2044(M459DllBssCCStruct *var_r31) +{ + Vec sp8; + + s32 var_r30; + s16 var_r29; + s32 var_r28; + s32 var_r27; + + var_r29 = var_r31->unk_10A[0]; + sp8 = var_r31->unk_0C; + sp8.y = 200.0f; + Hu3D3Dto2D(&sp8, 1, &sp8); + espPosSet(var_r29, sp8.x, sp8.y); + espTPLvlSet(var_r29, 1.0f); + espDispOn(var_r29); + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + var_r28 = var_r31->unk_04; + fn_1_4160(var_r31); + HuPrcVSleep(); + if (var_r31->unk_04 != var_r28) { + return; + } + } + for (var_r30 = 0; var_r30 <= 0xA; var_r30++) { + espTPLvlSet(var_r29, 1.0f - (0.1f * var_r30)); + var_r27 = var_r31->unk_04; + fn_1_4160(var_r31); + HuPrcVSleep(); + if (var_r31->unk_04 != var_r27) { + return; + } + } + espDispOff(var_r29); + lbl_1_bss_CC[var_r31->unk_00].unk_04 = 0; +} + +void fn_1_21AC(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + s32 var_r29; + s32 var_r28; + + if (lbl_1_bss_C > arg0->unk_00) { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_50 = 0.0001f; + fn_1_338C(arg0, 0.1f); + var_r29 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r29) { + return; + } + } + } + else { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_50 = -0.0001f; + fn_1_338C(arg0, 0.1f); + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r28) { + return; + } + } + } + fn_1_1778(arg0, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +static const s32 lbl_1_rodata_36C[5] = { 0x38, 0x44, 0x47, 0x41, 0x4C }; + +void fn_1_23AC(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + s32 var_r29; + s32 var_r28; + + if (lbl_1_bss_C > arg0->unk_00) { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_50 = 0.0001f; + fn_1_338C(arg0, 0.1f); + var_r29 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r29) { + return; + } + } + } + else { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_50 = -0.0001f; + fn_1_338C(arg0, 0.1f); + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r28) { + return; + } + } + } + HuAudFXPlay(lbl_1_rodata_36C[arg0->unk_08]); + fn_1_1778(arg0, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +void fn_1_25C8(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + s32 var_r29; + s32 var_r28; + + if (lbl_1_bss_C > arg0->unk_00) { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_58 = 0.0001f; + fn_1_338C(arg0, 0.1f); + var_r29 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r29) { + return; + } + } + } + else { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_58 = 0.0001f; + fn_1_338C(arg0, 0.1f); + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r28) { + return; + } + } + } + fn_1_1778(arg0, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +void fn_1_27C8(M459DllBssCCStruct *arg0) +{ + Vec sp8; + + s32 var_r30; + s16 var_r29; + s32 var_r28; + s32 var_r27; + + var_r29 = arg0->unk_10A[1]; + sp8 = arg0->unk_0C; + sp8.y = 200.0f; + Hu3D3Dto2D(&sp8, 1, &sp8); + espPosSet(var_r29, sp8.x, sp8.y); + espTPLvlSet(var_r29, 1.0f); + espDispOn(var_r29); + for (var_r30 = 0; var_r30 < 0x3C; var_r30++) { + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r28) { + return; + } + } + for (var_r30 = 0; var_r30 <= 0xA; var_r30++) { + espTPLvlSet(var_r29, 1.0f - (0.1f * var_r30)); + var_r27 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r27) { + return; + } + } + espDispOff(var_r29); + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +static const s32 lbl_1_rodata_380[5] = { 0x38, 0x44, 0x47, 0x41, 0x4C }; + +void fn_1_2930(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + var_r29 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r29) { + return; + } + } + for (var_r30 = 0; var_r30 < 0xF; var_r30++) { + arg0->unk_58 = 0.0001f; + fn_1_338C(arg0, 0.2f); + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r28) { + return; + } + } + HuAudFXPlay(lbl_1_rodata_380[arg0->unk_08]); + fn_1_1778(arg0, 5, 0.0f, 8.0f, HU3D_ATTR_NONE); + for (var_r30 = 0; var_r30 < 0x8C; var_r30++) { + var_r27 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r27) { + return; + } + } + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +static const s32 lbl_1_rodata_398[5] = { 0x39, 0x43, 0x46, 0x40, 0x4B }; + +void fn_1_2B24(M459DllBssCCStruct *arg0) +{ + Vec sp8; + + s16 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + var_r30 = arg0->unk_62[11]; + sp8 = arg0->unk_0C; + sp8.y = 80.0f; + sp8.z = -50.0f; + Hu3DModelPosSet(var_r30, sp8.x, sp8.y, sp8.z); + Hu3DMotionTimeSet(var_r30, 0.0f); + Hu3DModelAttrReset(var_r30, HU3D_ATTR_DISPOFF); + for (var_r29 = 0; var_r29 < 0x1E; var_r29++) { + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r28) { + return; + } + } + Hu3DModelAttrSet(var_r30, HU3D_ATTR_DISPOFF); + HuAudFXPlay(lbl_1_rodata_398[arg0->unk_08]); + fn_1_1778(arg0, 4, 0.0f, 8.0f, HU3D_ATTR_NONE); + while (Hu3DMotionEndCheck(arg0->unk_62[arg0->unk_08]) == 0) { + var_r27 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r27) { + return; + } + } + + if (arg0->unk_08 == 4) { + fn_1_189C(arg0, 0, HU3D_MOTATTR_LOOP); + } + else { + fn_1_1778(arg0, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +void fn_1_2F18(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + s32 var_r29; + s32 var_r28; + + for (var_r30 = 0; var_r30 < (arg0->unk_00 * 8); var_r30++) { + var_r29 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r29) { + return; + } + } + while (TRUE) { + arg0->unk_50 = -8.0f; + fn_1_338C(arg0, 0.2f); + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 == var_r28) { + if (arg0->unk_0C.x < -600.0f) { + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; + break; + } + } + else { + break; + } + } +} + +void fn_1_3004(M459DllBssCCStruct *arg0) +{ + float var_f31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + arg0->unk_0C.x = 600.0f; + arg0->unk_0C.z = 0.0f; + arg0->unk_0C.y = 0.0f; + var_f31 = -260.0f + (130.0f * arg0->unk_00); + for (var_r30 = 0; var_r30 < (arg0->unk_00 * 0x1E); var_r30++) { + var_r29 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r29) { + return; + } + } +loop_1: + arg0->unk_50 = -8.0f; + fn_1_338C(arg0, 0.2f); + if (arg0->unk_0C.x < var_f31) { + arg0->unk_0C.x = var_f31; + } + else { + var_r28 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r28) { + return; + } + goto loop_1; + } + fn_1_1778(arg0, 1, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + for (var_r30 = 0; var_r30 < 0xF; var_r30++) { + arg0->unk_58 = 0.0001f; + fn_1_338C(arg0, 0.2f); + var_r27 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r27) { + return; + } + } + arg0->unk_1C = 0.0f; + fn_1_1778(arg0, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +void fn_1_338C(M459DllBssCCStruct *arg0, float arg8) +{ + float spC; + float var_f31; + float var_f30; + float var_f29; + s16 var_r30; + + var_r30 = 0; + arg0->unk_5C = sqrtf((arg0->unk_50 * arg0->unk_50) + (arg0->unk_58 * arg0->unk_58)); + if (0.0001f <= arg0->unk_5C) { + if (10.0f <= arg0->unk_5C) { + arg0->unk_50 /= arg0->unk_5C; + arg0->unk_58 /= arg0->unk_5C; + arg0->unk_5C = 10.0f; + arg0->unk_50 = 10.0f * arg0->unk_50; + arg0->unk_58 = 10.0f * arg0->unk_58; + } + arg0->unk_1C = fn_1_4210(arg0->unk_1C, atan2d(arg0->unk_50, arg0->unk_58), arg8); + if (8.0f <= arg0->unk_5C) { + var_r30 = 2; + } + else { + var_r30 = 1; + } + } + arg0->unk_0C.x += arg0->unk_50; + arg0->unk_0C.z += arg0->unk_58; + if (arg0->unk_60 != var_r30) { + fn_1_1778(arg0, var_r30, 0.0f, 4.0f, HU3D_MOTATTR_LOOP); + } + arg0->unk_50 = 0.0f; + arg0->unk_58 = 0.0f; +} + +void fn_1_3700(M459DllBssCCStruct *arg0) +{ + s32 var_r30; + s32 var_r25; + s32 var_r24; + s32 var_r23; + + if (lbl_1_bss_C > arg0->unk_00) { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_58 = 0.0001f; + fn_1_338C(arg0, 0.4f); + var_r25 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r25) { + return; + } + } + } + else { + for (var_r30 = 0; var_r30 < 0x1E; var_r30++) { + arg0->unk_58 = 0.0001f; + fn_1_338C(arg0, 0.4f); + var_r24 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r24) { + return; + } + } + } + fn_1_1778(arg0, 4, 0.0f, 8.0f, HU3D_ATTR_NONE); + while (Hu3DMotionEndCheck(arg0->unk_62[arg0->unk_08]) == 0) { + var_r23 = arg0->unk_04; + fn_1_4160(arg0); + HuPrcVSleep(); + if (arg0->unk_04 != var_r23) { + return; + } + } + if (arg0->unk_08 == 4) { + fn_1_189C(arg0, 0, HU3D_MOTATTR_LOOP); + } + else { + fn_1_1778(arg0, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + lbl_1_bss_CC[arg0->unk_00].unk_04 = 0; +} + +void fn_1_4160(M459DllBssCCStruct *arg0) +{ + Hu3DModelPosSet(arg0->unk_62[arg0->unk_08], arg0->unk_0C.x, arg0->unk_0C.y, arg0->unk_0C.z); + Hu3DModelPosSet(arg0->unk_62[arg0->unk_08 + 5], arg0->unk_0C.x, arg0->unk_0C.y, arg0->unk_0C.z); + Hu3DModelRotSet(arg0->unk_62[arg0->unk_08], arg0->unk_18, arg0->unk_1C, arg0->unk_20); + Hu3DModelRotSet(arg0->unk_62[arg0->unk_08 + 5], arg0->unk_18, arg0->unk_1C, arg0->unk_20); +} + +float fn_1_4210(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + + var_f31 = fmod(arg9 - arg8, 360.0); + if (0.0f > var_f31) { + var_f31 += 360.0f; + } + if (180.0f < var_f31) { + var_f31 -= 360.0f; + } + var_f30 = fmod(arg8 + (var_f31 * argA), 360.0); + if (0.0f > var_f30) { + var_f30 += 360.0f; + } + return var_f30; +} + +void fn_1_4314(s32 arg0, u32 arg1) +{ + M459DllBssCCStruct *var_r31; + s32 var_r30; + + var_r31 = &lbl_1_bss_CC[arg0]; + var_r31->unk_08 = arg1; + for (var_r30 = 0; var_r30 < 5; var_r30++) { + if (var_r30 != var_r31->unk_08) { + Hu3DModelAttrSet(var_r31->unk_62[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r31->unk_62[var_r30 + 5], HU3D_ATTR_DISPOFF); + } + Hu3DModelPosSet(var_r31->unk_62[var_r30], 0.0f, 0.0f, -1000.0f); + Hu3DModelPosSet(var_r31->unk_62[var_r30 + 5], 0.0f, 0.0f, -1000.0f); + } + Hu3DModelAttrReset(var_r31->unk_62[var_r31->unk_08], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(var_r31->unk_62[var_r31->unk_08 + 5], HU3D_ATTR_DISPOFF); + fn_1_1778(var_r31, 0, 0.0f, 8.0f, HU3D_MOTATTR_LOOP); +} + +void fn_1_4530(void) +{ + s32 var_r31; + + HuPrcSleep(0x3C); + for (var_r31 = 0; var_r31 < 5; var_r31++) { + lbl_1_bss_CC[var_r31].unk_04 = 1; + } + while (lbl_1_bss_CC->unk_04 != 0) { + HuPrcVSleep(); + } + lbl_1_bss_0 = HuAudSeqPlay(0x43); + fn_1_4F8C(0); + while (fn_1_4FAC() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_45EC(void) +{ + s32 var_r31; + s32 var_r30; + s16 var_r29; + s32 var_r28; + + HuAudSeqFadeOut(lbl_1_bss_0, 0x64); + HuAudFXPlay(0x814); + var_r28 = fn_1_5300(); + if (fn_1_52F0() > var_r28) { + fn_1_4F8C(1); + while (fn_1_4FAC() != 0) { + HuPrcVSleep(); + } + var_r30 = fn_1_52F0(); + GWMGRecordSet(0xB, var_r30); + var_r29 = MGSeqCreate(0xE, var_r30); + HuAudFXPlay(0x26); + fn_1_5310(); + while (MGSeqStatGet(var_r29) != 0) { + HuPrcVSleep(); + } + } + else { + fn_1_4F8C(1); + while (fn_1_4FAC() != 0) { + HuPrcVSleep(); + } + } + HuAudSStreamPlay(3); + if (fn_1_52F0() >= 0x63) { + for (var_r31 = 0; var_r31 < 5; var_r31++) { + lbl_1_bss_CC[var_r31].unk_04 = 0xD; + } + while (lbl_1_bss_CC[var_r31].unk_04 == 0xD) { + HuPrcVSleep(); + } + } + HuPrcSleep(0xD2); + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_4764(void) +{ + s32 var_r31; + + for (var_r31 = 0; var_r31 < 5; var_r31++) { + lbl_1_bss_CC[var_r31].unk_04 = 1; + } + while (lbl_1_bss_CC->unk_04 != 0) { + HuPrcVSleep(); + } + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_47E4(void) +{ + HuPrcSleep(0x1E); + HuAudFXPlay(0x30D); + lbl_1_bss_18.unk_00 = 3; + while (lbl_1_bss_18.unk_00 != 0) { + HuPrcVSleep(); + } + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_4850(void) +{ + HuAudFXPlay(9); + lbl_1_bss_CC[lbl_1_bss_14].unk_04 = 9; + while (lbl_1_bss_CC[lbl_1_bss_14].unk_04 == 9) { + HuPrcVSleep(); + } + HuPrcSleep(8); + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_48E4(void) +{ + s32 var_r31; + + lbl_1_bss_CC[lbl_1_bss_14].unk_04 = 7; + HuPrcSleep(0x1E); + lbl_1_bss_CC[lbl_1_bss_10].unk_04 = 8; + HuPrcSleep(0x50); + lbl_1_bss_C = lbl_1_bss_10; + for (var_r31 = 0; var_r31 < 5; var_r31++) { + if ((var_r31 != lbl_1_bss_10) && (var_r31 != lbl_1_bss_14)) { + lbl_1_bss_CC[var_r31].unk_04 = 6; + } + } + while (lbl_1_bss_CC[lbl_1_bss_14].unk_04 == 7) { + HuPrcVSleep(); + } + HuPrcSleep(0x1E); + lbl_1_bss_CC[lbl_1_bss_14].unk_04 = 5; + while (lbl_1_bss_CC[lbl_1_bss_14].unk_04 == 5) { + HuPrcVSleep(); + } + HuPrcSleep(0x3C); + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_4A74(void) +{ + s32 var_r31; + + lbl_1_bss_CC[lbl_1_bss_10].unk_04 = 8; + HuPrcSleep(0x6E); + lbl_1_bss_C = lbl_1_bss_10; + for (var_r31 = 0; var_r31 < 5; var_r31++) { + if (var_r31 != lbl_1_bss_10) { + lbl_1_bss_CC[var_r31].unk_04 = 5; + } + } + while (lbl_1_bss_CC[lbl_1_bss_10].unk_04 != 8) { + HuPrcVSleep(); + } + HuPrcSleep(0x3C); + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_4B68(void) +{ + s32 var_r31; + s32 var_r30; + + for (var_r31 = 0; var_r31 < 5; var_r31++) { + lbl_1_bss_CC[var_r31].unk_04 = 0xB; + } + while (TRUE) { + var_r30 = 0; + for (var_r31 = 0; var_r31 < 5; var_r31++) { + if (lbl_1_bss_CC[var_r31].unk_04 != 0) { + var_r30++; + } + } + if (var_r30 != 0) { + HuPrcVSleep(); + } + else { + break; + } + } + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_4C1C(void) +{ + s32 var_r31; + s32 var_r30; + + for (var_r31 = 0; var_r31 < 5; var_r31++) { + lbl_1_bss_CC[var_r31].unk_04 = 0xA; + } + while (TRUE) { + var_r30 = 0; + for (var_r31 = 0; var_r31 < 5; var_r31++) { + if (lbl_1_bss_CC[var_r31].unk_04 != 0) { + var_r30++; + } + } + if (var_r30 != 0) { + HuPrcVSleep(); + } + else { + break; + } + } + lbl_1_bss_698[0x12] = NULL; + HuPrcEnd(); +} + +void fn_1_4CD0(void) +{ + M459DllBss70Struct *var_r31; + + var_r31 = &lbl_1_bss_70; + var_r31->unk_00 = 0; + var_r31->unk_08 = 0; + var_r31->unk_04 = -1; + while (TRUE) { + switch (var_r31->unk_00) { + case 4: + case 0: + break; + case 1: + if (var_r31->unk_04 == -1) { + var_r31->unk_04 = MGSeqCreate(1, var_r31->unk_08 / 60, -1, -1); + } + var_r31->unk_00 = 2; + break; + case 3: + if (var_r31->unk_04 != -1) { + MGSeqParamSet(var_r31->unk_04, 2, -1); + var_r31->unk_04 = -1; + } + var_r31->unk_00 = 0; + break; + case 2: + if ((var_r31->unk_04 != -1) && (var_r31->unk_08 > 0)) { + if (--var_r31->unk_08 <= 0) { + var_r31->unk_08 = 0; + var_r31->unk_00 = 3; + } + if ((var_r31->unk_08 % 60) == 0) { + MGSeqParamSet(var_r31->unk_04, 1, var_r31->unk_08 / 60); + } + } + break; + } + HuPrcVSleep(); + } +} + +s32 fn_1_4E54(void) +{ + return lbl_1_bss_70.unk_08; +} + +void fn_1_4E64(s32 arg0) +{ + lbl_1_bss_70.unk_08 = arg0; + lbl_1_bss_70.unk_00 = 1; +} + +void fn_1_4E84(void) +{ + lbl_1_bss_70.unk_00 = 4; +} + +void fn_1_4E98(void) +{ + lbl_1_bss_70.unk_00 = 3; +} + +void fn_1_4EAC(void) +{ + M459DllBss64Struct *var_r31; + + var_r31 = &lbl_1_bss_64; + var_r31->unk_00 = 0; + var_r31->unk_08 = -1; + while (TRUE) { + switch (var_r31->unk_00) { + case 0: + break; + case 2: + if (var_r31->unk_08 == -1) { + switch (var_r31->unk_04) { + case 0: + var_r31->unk_08 = MGSeqCreate(3, 0); + break; + case 1: + var_r31->unk_08 = MGSeqCreate(3, 1); + break; + } + } + var_r31->unk_00 = 1; + break; + case 1: + if (MGSeqStatGet(var_r31->unk_08) == 0) { + MGSeqKill(var_r31->unk_08); + var_r31->unk_08 = -1; + var_r31->unk_00 = 0; + } + break; + } + HuPrcVSleep(); + } +} + +void fn_1_4F8C(s32 arg0) +{ + lbl_1_bss_64.unk_00 = 2; + lbl_1_bss_64.unk_04 = arg0; +} + +s32 fn_1_4FAC(void) +{ + return lbl_1_bss_64.unk_00 != 0; +} + +void fn_1_4FC8(void) +{ + float var_f31; + M459DllBss4CStruct *var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + var_r31 = &lbl_1_bss_4C; + var_r31->unk_0C = 0; + var_r31->unk_10 = (s16)GWMGRecordGet(0xB); + var_r31->unk_14 = 0; + espPosSet(var_r31->unk_00[5], 508.0f, 64.0f); + espPosSet(var_r31->unk_00[4], 488.0f, 56.0f); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + espPosSet(var_r31->unk_00[var_r30 + 2], (var_r30 * 0x10) + 0x1FC, 57.0f); + espPosSet(var_r31->unk_00[var_r30], (var_r30 * 0x10) + 0x1FC, 75.0f); + } + espTPLvlSet(var_r31->unk_00[5], 0.5f); + espPriSet(var_r31->unk_00[5], 0x65); + espPriSet(var_r31->unk_00[4], 0x64); + espPriSet(var_r31->unk_00[2], 0x64); + espPriSet(var_r31->unk_00[3], 0x64); + espPriSet(var_r31->unk_00[0], 0x64); + espPriSet(var_r31->unk_00[1], 0x64); + var_f31 = 1.0f; + while (TRUE) { + if (var_r31->unk_14 != 0) { + if (var_r28 != 0) { + var_f31 += 0.02; + var_f31 = var_f31; + if (var_f31 >= 1.2f) { + var_f31 = 1.2f; + var_r28 = 0; + } + } + else { + var_f31 -= 0.02; + var_f31 = var_f31; + if (var_f31 <= 1.0f) { + var_f31 = 1.0f; + var_r28 = 1; + } + } + espScaleSet(var_r31->unk_00[4], var_f31, var_f31); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + espScaleSet(var_r31->unk_00[var_r30 + 2], var_f31, var_f31); + } + } + var_r29 = var_r31->unk_0C; + espBankSet(var_r31->unk_00[0], var_r29 / 10); + var_r29 = var_r29 % 10; + espBankSet(var_r31->unk_00[1], var_r29); + var_r29 = var_r31->unk_10; + espBankSet(var_r31->unk_00[2], var_r29 / 10); + var_r29 = var_r29 % 10; + espBankSet(var_r31->unk_00[3], var_r29); + HuPrcVSleep(); + } +} + +void fn_1_52D8(s32 arg0) +{ + lbl_1_bss_4C.unk_0C += arg0; +} + +s32 fn_1_52F0(void) +{ + return lbl_1_bss_4C.unk_0C; +} + +s32 fn_1_5300(void) +{ + return lbl_1_bss_4C.unk_10; +} + +void fn_1_5310(void) +{ + if (lbl_1_bss_4C.unk_10 < lbl_1_bss_4C.unk_0C) { + lbl_1_bss_4C.unk_10 = lbl_1_bss_4C.unk_0C; + lbl_1_bss_4C.unk_14 = 1; + } +} + +M459DllData70Struct lbl_1_data_70 = { { 0.0f, 300.0f, 0.0f }, { 0.0f, -300.0f, -600.0f }, { 0xFF, 0xFF, 0xFF, 0xFF } }; + +void fn_1_535C(void) +{ + LightData *sp8; + s16 *var_r31; + + var_r31 = lbl_1_bss_48; + Hu3DLighInit(); + var_r31[1] = Hu3DGLightCreateV(&lbl_1_data_70.unk_00, &lbl_1_data_70.unk_0C, &lbl_1_data_70.unk_18); + Hu3DGLightInfinitytSet(var_r31[1]); + sp8 = &Hu3DGlobalLight[var_r31[1]]; + { + Vec sp24 = { 0.0f, 3000.0f, 1.0f }; + Vec sp18 = { 0.0f, 1.0f, 0.0f }; + Vec spC = { 0.0f, 0.0f, 0.0f }; + Hu3DShadowCreate(30.0f, 20.0f, 5000.0f); + Hu3DShadowTPLvlSet(0.45f); + Hu3DShadowPosSet(&sp24, &sp18, &spC); + } + Hu3DShadowTPLvlSet(0.3f); + Hu3DModelAttrSet(var_r31[0], HU3D_MOTATTR_LOOP); + while (TRUE) { + HuPrcVSleep(); + } +} + +static const s32 lbl_1_rodata_458[6][3]; + +void fn_1_5490(void) +{ + M459DllBss18Struct *var_r31; + + var_r31 = &lbl_1_bss_18; + var_r31->unk_00 = 0; + var_r31->unk_24[0] = GWPlayerCfg->pad_idx; + var_r31->unk_24[1] = GWPlayerCfg->character; + var_r31->unk_28 = GWPlayerCfg->iscom; + var_r31->unk_2C = 0x14; + lbl_1_bss_14 = 0; + lbl_1_bss_2 = var_r31->unk_24[0]; + while (TRUE) { + switch (var_r31->unk_00) { + case 0: + fn_1_556C(var_r31); + continue; + case 1: + fn_1_55B0(var_r31); + continue; + case 2: + break; + case 3: + fn_1_5A78(var_r31); + continue; + default: + continue; + } + fn_1_5E3C(var_r31); + } +} + +void fn_1_556C(M459DllBss18Struct *arg0) +{ + s32 var_r30; + + do { + var_r30 = arg0->unk_00; + HuPrcVSleep(); + } while (arg0->unk_00 == var_r30); +} + +void fn_1_55B0(M459DllBss18Struct *var_r31) +{ + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + + u8 var_r30; + s16 var_r29; + s32 var_r28; + u16 var_r27; + s32 var_r26; + M459DllBssCCStruct *var_r25; + s32 var_r24; + s32 var_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + + lbl_1_bss_14 = 0; + var_r28 = -1; + var_r29 = var_r31->unk_04[var_r31->unk_24[1]]; + espDispOn(var_r29); + var_r23 = 0; +loop_1: + var_r30 = 0; + var_r27 = 0; + if (var_r31->unk_28 != 0) { + if (var_r31->unk_2C <= 0) { + var_r20 = lbl_1_bss_70.unk_08; + if ((var_r20 > 0xB4) && (var_r23 == 0)) { + var_r24 = frandmod(0xA); + if (var_r24 >= 5) { + var_r30 |= 1; + } + else if (var_r24 > 1) { + var_r30 |= 2; + } + else { + var_r23 = 1; + } + } + else { + if (lbl_1_bss_14 > lbl_1_bss_10) { + var_r30 |= 1; + } + else if (lbl_1_bss_14 < lbl_1_bss_10) { + var_r30 |= 2; + } + if (lbl_1_bss_14 == lbl_1_bss_10) { + var_r27 |= 0x100; + } + } + var_r31->unk_2C = 0x1E; + } + else { + var_r31->unk_2C--; + } + } + else { + var_r30 = HuPadDStkRep[var_r31->unk_24[0]]; + var_r27 = HuPadBtnDown[var_r31->unk_24[0]]; + } + if (var_r28 != -1) { + if ((var_r27 & 0x100) != 0) { + HuAudFXPlay(2); + // lbl_1_bss_7C[lbl_1_bss_14].unk_04 = 3; + // espDispOff(var_r29); + // lbl_1_bss_18.unk_00 = 0; + } + else { + if ((var_r30 & 1) != 0) { + if (--lbl_1_bss_14 < 0) { + lbl_1_bss_14 = 4; + } + HuAudFXPlay(0); + } + else if ((var_r30 & 2) != 0) { + if (++lbl_1_bss_14 >= 5) { + lbl_1_bss_14 = 0; + } + HuAudFXPlay(0); + } + goto block_30; + } + } + else { + block_30: + if (var_r28 != lbl_1_bss_14) { + var_r25 = &lbl_1_bss_CC[lbl_1_bss_14]; + sp14 = sp20; + sp20 = var_r25->unk_0C; + sp20.y = 40.0f; + espPriSet(var_r29, 0x32); + if (var_r28 == -1) { + sp14 = sp20; + } + else { + lbl_1_bss_7C[var_r28].unk_04 = 3; + } + for (var_r26 = 0; var_r26 < 4; var_r26++) { + // espPosSet(var_r29, sp8.x, sp8.y); + // lbl_1_bss_7C[lbl_1_bss_14].unk_04 = 1; + goto block_39; + } + var_f31 = sind((90.0f * (0.25f * var_r26))); + var_f31 *= var_f31 * var_f31; + sp8.x = sp14.x + (var_f31 * (sp20.x - sp14.x)); + sp8.y = sp14.y + (var_f31 * (sp20.y - sp14.y)); + sp8.z = sp14.z + (var_f31 * (sp20.z - sp14.z)); + Hu3D3Dto2D(&sp8, 1, &sp8); + espPosSet(var_r29, sp8.x, sp8.y); + var_r22 = var_r31->unk_00; + HuPrcVSleep(); + if (var_r31->unk_00 == var_r22) { } + } + else { + block_39: + var_r28 = lbl_1_bss_14; + var_r21 = var_r31->unk_00; + HuPrcVSleep(&lbl_1_bss_14); + if (var_r31->unk_00 == var_r21) { + goto loop_1; + } + } + } +} + +void fn_1_5A78(M459DllBss18Struct *arg0) +{ + Vec sp8; + float var_f31; + + s32 var_r31; + s16 var_r29; + M459DllBssCCStruct *var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + + var_r28 = &lbl_1_bss_CC[lbl_1_bss_14]; + lbl_1_bss_CC[lbl_1_bss_14].unk_04 = 4; + for (var_r31 = 0; var_r31 < 0x3C; var_r31++) { + var_r27 = arg0->unk_00; + HuPrcVSleep(); + if (arg0->unk_00 != var_r27) { + return; + } + } + var_r29 = arg0->unk_14[arg0->unk_24[1]]; + Hu3DModelAttrReset(var_r29, HU3D_ATTR_DISPOFF); + Hu3DModelTPLvlSet(var_r29, 1.0f); + Hu3DModelScaleSet(var_r29, 1.0f, 1.0f, 1.0f); + sp8 = var_r28->unk_0C; + for (var_r31 = 0; var_r31 < 0x3C; var_r31++) { + var_f31 = sind((1.5000001f * var_r31)); + sp8.y = 170.0f + (350.0f - (350.0f * var_f31)); + Hu3DModelPosSet(var_r29, sp8.x, sp8.y, sp8.z); + var_r26 = arg0->unk_00; + HuPrcVSleep(); + if (arg0->unk_00 != var_r26) { + return; + } + } + for (var_r31 = 0; var_r31 < 0x14; var_r31++) { + var_f31 = sind((4.5f * var_r31)); + var_f31 = 1.0f - var_f31; + Hu3DModelScaleSet(var_r29, var_f31, var_f31, var_f31); + Hu3DModelTPLvlSet(var_r29, var_f31); + Hu3DModelRotSet(var_r29, 0.0f, 540.0f * var_f31, 0.0f); + sp8.y = 170.0f - (2.0f * var_r31); + Hu3DModelPosSet(var_r29, sp8.x, sp8.y, sp8.z); + var_r25 = arg0->unk_00; + HuPrcVSleep(); + if (arg0->unk_00 != var_r25) { + return; + } + } + Hu3DModelAttrSet(var_r29, HU3D_ATTR_DISPOFF); + lbl_1_bss_C = lbl_1_bss_14; + for (var_r31 = 0; var_r31 < 5; var_r31++) { + if (var_r31 != lbl_1_bss_14) { + lbl_1_bss_CC[var_r31].unk_04 = 5; + } + } + for (var_r31 = 0; var_r31 < 0x78; var_r31++) { + var_r24 = arg0->unk_00; + HuPrcVSleep(); + if (arg0->unk_00 != var_r24) { + return; + } + } + lbl_1_bss_18.unk_00 = 0; +} + +void fn_1_5E3C(M459DllBss18Struct *arg0) +{ + lbl_1_bss_7C[lbl_1_bss_14].unk_04 = 3; + espDispOff(arg0->unk_04[arg0->unk_24[1]]); + lbl_1_bss_18.unk_00 = 0; +} + +void fn_1_5EAC(void) +{ + M459DllBss7CStruct *var_r31; + s32 var_r30; + + var_r30 = (s32)HuPrcCurrentGet()->user_data; + var_r31 = &lbl_1_bss_7C[var_r30]; + var_r31->unk_00 = var_r30; + var_r31->unk_04 = 0; + while (TRUE) { + switch (var_r31->unk_04) { + case 0: + fn_1_5F40(var_r31); + continue; + case 1: + fn_1_5F84(var_r31); + continue; + case 2: + fn_1_6198(var_r31); + continue; + case 3: + continue; + } + fn_1_6458(var_r31); + } +} + +void fn_1_5F40(M459DllBss7CStruct *arg0) +{ + s32 var_r30; + + do { + var_r30 = arg0->unk_04; + HuPrcVSleep(); + } while (arg0->unk_04 == var_r30); +} + +void fn_1_5F84(M459DllBss7CStruct *arg0) +{ + Vec sp8; + float var_f31; + + M459DllBssCCStruct *var_r27; + s16 var_r30; + s16 var_r29; + s32 var_r28; + s32 var_r26; + + var_r29 = arg0->unk_0C[1]; + var_r30 = arg0->unk_0C[0]; + var_r27 = &lbl_1_bss_CC[arg0->unk_00]; + sp8 = var_r27->unk_0C; + sp8.y = 200.0f; + Hu3D3Dto2D(&sp8, 1, &sp8); + espPosSet(var_r29, sp8.x, sp8.y); + espPosSet(var_r30, sp8.x, sp8.y); + espScaleSet(var_r30, 0.0f, 0.0f); + espPriSet(var_r29, 0x32); + espPriSet(var_r30, 0x31); + if (lbl_1_bss_8 == 0) { + espScaleSet(var_r29, 1.0f, 1.0f); + espScaleSet(var_r30, 0.5f, 0.5f); + espDispOn(var_r29); + espDispOn(var_r30); + } + var_f31 = 0.0f; + for (var_r28 = 0; var_r28 < 0xA; var_r28++) { + espTPLvlSet(var_r29, var_f31); + espTPLvlSet(var_r30, var_f31); + var_f31 = 0.08f * var_r28; + var_r26 = arg0->unk_04; + HuPrcVSleep(); + if (arg0->unk_04 != var_r26) { + return; + } + } + espTPLvlSet(var_r29, 0.8f); + espTPLvlSet(var_r30, 0.8f); + lbl_1_bss_7C[arg0->unk_00].unk_04 = 2; +} + +static const s32 lbl_1_rodata_458[6][3] = { + { 0, 0xF, 0xF }, + { 1, 0xA, 0xA }, + { 1, 0x14, 5 }, + { 2, 0x14, 0xA }, + { 2, 5, 0xA }, + { 0x3F000000, 0x3F000000, 0x3F000000 }, +}; + +void fn_1_6198(M459DllBss7CStruct *var_r31) +{ + float var_f31; + float var_f30; + s32 var_r30; + s32 var_r29; + s16 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + + var_r28 = var_r31->unk_0C[0]; + var_r27 = lbl_1_rodata_458[var_r31->unk_08][0]; + var_r29 = lbl_1_rodata_458[var_r31->unk_08][1]; + var_r26 = lbl_1_rodata_458[var_r31->unk_08][2]; + while (TRUE) { + if (lbl_1_bss_8 != 0) { + switch (var_r27) { + case 0: + omVibrate(0, var_r29, 6, 6); + break; + case 1: + omVibrate(0, var_r29, 4, 2); + break; + case 2: + omVibrate(0, var_r29, 0xC, 0); + break; + } + } + switch (var_r27) { + case 0: + var_f30 = 0.4f; + break; + case 1: + var_f30 = 0.55f; + break; + case 2: + var_f30 = 0.7f; + break; + } + for (var_r30 = 0; var_r30 < var_r29; var_r30++) { + var_f31 = var_r30 * (var_f30 * (1.0f / var_r29)); + var_f31 += 0.5f; + espScaleSet(var_r28, var_f31, var_f31); + var_r25 = var_r31->unk_04; + HuPrcVSleep(); + if (var_r31->unk_04 != var_r25) { + return; + } + } + + for (var_r30 = 0; var_r30 < var_r26; var_r30++) { + var_f31 = var_f30 - (var_r30 * (var_f30 * (1.0f / var_r26))); + var_f31 += 0.5f; + espScaleSet(var_r28, var_f31, var_f31); + var_r24 = var_r31->unk_04; + HuPrcVSleep(); + if (var_r31->unk_04 != var_r24) { + return; + } + } + } +} + +void fn_1_6458(M459DllBss7CStruct *arg0) +{ + float var_f31; + s32 var_r30; + s16 var_r29; + s16 var_r28; + s32 var_r27; + + var_r29 = arg0->unk_0C[1]; + var_r28 = arg0->unk_0C[0]; + if (lbl_1_bss_8 != 0) { + HuPadRumbleStop(lbl_1_bss_2); + } + var_f31 = 0.8f; + for (var_r30 = 0; var_r30 < 0xA; var_r30++) { + espTPLvlSet(var_r29, var_f31); + espTPLvlSet(var_r28, var_f31); + var_f31 = 0.8f - (0.08f * var_r30); + var_r27 = arg0->unk_04; + HuPrcVSleep(); + if (arg0->unk_04 != var_r27) { + return; + } + } + espDispOff(var_r29); + espDispOff(var_r28); + lbl_1_bss_7C[arg0->unk_00].unk_04 = 0; +} From 9f21fff0bd5b4ca8cf3de116a7f68f3ff051c4ca Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Wed, 11 Dec 2024 01:50:31 +0100 Subject: [PATCH 060/178] Renamed VERSION_JPN to VERSION_JP Added the new game versions to the readme --- README.md | 3 +++ include/ovl_table.h | 2 +- include/version.h | 6 +++--- src/game/board/main.c | 2 +- src/game/board/player.c | 6 +++--- src/game/gamework.c | 4 ++-- src/game/minigame_seq.c | 36 ++++++++++++++++++------------------ src/game/saveload.c | 6 +++--- src/game/sreset.c | 2 +- src/game/window.c | 24 ++++++++++++------------ 10 files changed, 47 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index 26c49ce7..3415a3d7 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,9 @@ Supported versions: - `GMPE01_00`: Rev 0 (USA) - `GMPE01_01`: Rev 1 (USA) +- `GMPP01_00`, Rev 0 (PAL) +- `GMPP01_02`, REV 2 (PAL) +- `GMPJ01_00`, REV 0 (JP) Dependencies ============ diff --git a/include/ovl_table.h b/include/ovl_table.h index fcf4747c..fe695ea9 100644 --- a/include/ovl_table.h +++ b/include/ovl_table.h @@ -71,7 +71,7 @@ OVL_DEFINE(OVL_M461, "dll/m461dll.rel") OVL_DEFINE(OVL_M462, "dll/m462dll.rel") OVL_DEFINE(OVL_M463, "dll/m463dll.rel") OVL_DEFINE(OVL_MENT, "dll/mentdll.rel") -#if VERSION_JPN +#if VERSION_JP OVL_DEFINE(OVL_MGMODE, "dll/mgmodedll.rel") OVL_DEFINE(OVL_MODELTEST, "dll/modeltestdll.rel") OVL_DEFINE(OVL_MODESEL, "dll/modeseldll.rel") diff --git a/include/version.h b/include/version.h index 379389bb..209a7d53 100644 --- a/include/version.h +++ b/include/version.h @@ -5,14 +5,14 @@ #define VERSION_NO_ENG1 1 #define VERSION_NO_PAL0 2 #define VERSION_NO_PAL2 3 -#define VERSION_NO_JAP 4 +#define VERSION_NO_JP 4 #define VERSION_ENG (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_ENG1) #define VERSION_PAL (VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_PAL2) -#define VERSION_JPN (VERSION == VERSION_NO_JAP) +#define VERSION_JP (VERSION == VERSION_NO_JP) #define VERSION_NTSC (!VERSION_PAL) -#define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JAP) +#define VERSION_REV0 (VERSION == VERSION_NO_ENG0 || VERSION == VERSION_NO_PAL0 || VERSION == VERSION_NO_JP) #define VERSION_REV1 (!VERSION_REV0) #if VERSION_PAL diff --git a/src/game/board/main.c b/src/game/board/main.c index a1a904e3..119780c2 100644 --- a/src/game/board/main.c +++ b/src/game/board/main.c @@ -1988,7 +1988,7 @@ void BoardLast5GfxInit(void) } else { prio = 1400; } -#if !VERSION_JPN +#if !VERSION_JP spr_file = last5GfxSprTbl[i]; if(i == 2 && work->is_last && GWLanguageGet() != 0) { spr_file = DATA_MAKE_NUM(DATADIR_BOARD, 98); diff --git a/src/game/board/player.c b/src/game/board/player.c index c73efa85..c54b318e 100644 --- a/src/game/board/player.c +++ b/src/game/board/player.c @@ -137,7 +137,7 @@ static s32 bowserSuitCharMdlTbl[] = { static s32 bowserSuitMotTbl[] = { DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x19), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1A), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1B), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1E), DATA_MAKE_NUM(DATADIR_BKOOPASUIT, 0x1F) }; -#if VERSION_JPN +#if VERSION_JP static s32 sparkMotTbl[] = { DATA_MAKE_NUM(DATADIR_BOARD, 0x94), DATA_MAKE_NUM(DATADIR_BOARD, 0x95), @@ -2512,7 +2512,7 @@ static s32 DoSparkSpace(s32 player, s32 pause_cam) BoardCameraMotionWait(); BoardCameraTargetPlayerSet(player); BoardPlayerIdleSet(player); - temp_r28 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JPN ? 0x73 : 0x74), NULL, 0); + temp_r28 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JP ? 0x73 : 0x74), NULL, 0); BoardModelMotionStart(temp_r28, 0, 0x40000002); BoardModelMotionTimeSet(temp_r28, 30.0f); BoardModelAttrSet(temp_r28, 0x40000002); @@ -2520,7 +2520,7 @@ static s32 DoSparkSpace(s32 player, s32 pause_cam) BoardModelScaleSet(temp_r28, 2.0f, 2.0f, 2.0f); BoardModelVisibilitySet(temp_r28, 0); BoardModelLayerSet(temp_r28, 1); - sp2E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JPN ? 0x66 : 0x67), NULL, 0); + sp2E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, VERSION_JP ? 0x66 : 0x67), NULL, 0); BoardModelLayerSet(sp2E, 1); BoardModelMotionStart(sp2E, 0, 0); HuAudFXPlay(796); diff --git a/src/game/gamework.c b/src/game/gamework.c index 2a074800..68c1783c 100644 --- a/src/game/gamework.c +++ b/src/game/gamework.c @@ -54,7 +54,7 @@ void GWInit(void) _InitFlag(); GWErase(); InitPlayerConfig(); -#if VERSION_JPN +#if VERSION_JP GWGameStat.language = 0; #elif VERSION_ENG GWGameStat.language = 1; @@ -131,7 +131,7 @@ void GWGameStatReset(void) GameStat *game_stat = &GWGameStatDefault; memset(game_stat, 0, sizeof(GameStat)); game_stat->unk_00 = 0; -#if VERSION_JPN +#if VERSION_JP game_stat->language = 0; #elif VERSION_ENG game_stat->language = 1; diff --git a/src/game/minigame_seq.c b/src/game/minigame_seq.c index ee3d52df..1bdf7b50 100644 --- a/src/game/minigame_seq.c +++ b/src/game/minigame_seq.c @@ -808,7 +808,7 @@ static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags) s16 x; s16 i; s16 grp_idx; -#if VERSION_JPN +#if VERSION_JP char *str_ptr; AnimData **char_anim; s16 *char_pos; @@ -832,7 +832,7 @@ static s32 SeqMakeWord(SeqWork *work, char *str, s16 flags) x = 0; len = 0; while (*str_ptr != '\0') { -#if VERSION_JPN +#if VERSION_JP if (*str_ptr == ' ') { x += 56; } @@ -876,26 +876,26 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags) if (c == 222 || c == 223) { return NULL; } -#if !VERSION_JPN +#if !VERSION_JP if (c == 32) { return HuSprAnimRead(SeqReadFile(DATA_MAKE_NUM(DATADIR_GAMEMES, 10))); } #endif for (id = 0, list = seqFontAlphaTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 20 : 21)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 20 : 21)); return HuSprAnimRead(SeqReadFile(data_num)); } } for (id = 0, list = seqFontNumTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 10 : 11)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 10 : 11)); return HuSprAnimRead(SeqReadFile(data_num)); } } for (id = 0, list = seqPunctTbl; *list != 0; id++, list++) { if (*list == c) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 153 : 154)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 153 : 154)); return HuSprAnimRead(SeqReadFile(data_num)); } } @@ -916,10 +916,10 @@ static AnimData *SeqLoadFontChar(char *str, s16 flags) while (*list != 0) { if (*list == c) { if (flags & 0x1) { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 155 : 156)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 155 : 156)); } else { - data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JPN ? 72 : 73)); + data_num = DATA_MAKE_NUM(DATADIR_GAMEMES, id + (VERSION_JP ? 72 : 73)); } return HuSprAnimRead(SeqReadFile(data_num)); } @@ -2685,7 +2685,7 @@ static char *winCharNameTbl[] = { "ワリオ", "WARIO", "ドンキー", - VERSION_JPN ? "DK" : " DK ", + VERSION_JP ? "DK" : " DK ", "デイジー", "DAISY", "ワルイージ", @@ -2695,21 +2695,21 @@ static char *winCharNameTbl[] = { "キノピオ", "TOAD", "ヘイホー", - VERSION_JPN ? "HEHOH" : "SHY GUY", + VERSION_JP ? "HEHOH" : "SHY GUY", "テレサ", - VERSION_JPN ? "TERETHA" : "BOO", + VERSION_JP ? "TERETHA" : "BOO", "ノコノコ", - VERSION_JPN ? "NOKONOKO" : "KOOPA", + VERSION_JP ? "NOKONOKO" : "KOOPA", "ミニクッパ", VERSION_NTSC ? (VERSION_ENG ? "KOOPA KID" : "BABYBOWSER") : "MINI BOWSER", "クリボー", - VERSION_JPN ? "KURIBO" : "GOOMBA", + VERSION_JP ? "KURIBO" : "GOOMBA", }; static char *winWordTbl[] = { "カチ", "WON!", "ハイボク", "LOSE", "ユウショウ!", "CHAMPION!" }; static s16 winPosOfs[][5][2] = { - { { VERSION_JPN ? 144 : 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, + { { VERSION_JP ? 144 : 114, 0 }, { -144, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, { { 0, 35 }, { -144, -35 }, { 144, -35 }, { 0, 0 }, { 0, 0 } }, { { 0, 105 }, { 0, -105 }, { -144, 0 }, { 144, 0 }, { 0, 0 } }, { { 0, 105 }, { -144, -105 }, { 144, -105 }, { -144, 0 }, { 144, 0 } }, @@ -2745,15 +2745,15 @@ s32 MGSeqInitWin(SeqWork *work, va_list params) } } word_grp = SeqMakeWord(work, winWordTbl[word_idx], GET_WIN_KANAF()); - winnerNameW[0] = work->word_len * (VERSION_JPN ? 56 : 50); -#if !VERSION_JPN + winnerNameW[0] = work->word_len * (VERSION_JP ? 56 : 50); +#if !VERSION_JP for (i = 0; i < work->word_len; i++) { HuSprPosSet(work->spr_grp[word_grp], i, 25.0f + ((i * 50) - (0.5f * (work->word_len * 50))), 0.0f); HuSprAttrSet(work->spr_grp[word_grp], i, HUSPR_ATTR_LINEAR); } #endif num_winners = 0; -#if !VERSION_JPN +#if !VERSION_JP work->win_scale = 1.0f; #endif for (j = 0; j < 4; j++) { @@ -2855,7 +2855,7 @@ s32 MGSeqInitWin(SeqWork *work, va_list params) work->type = 0; for (j = 0; j < num_winners + 1; j++) { if (num_winners == 1) { -#if VERSION_JPN +#if VERSION_JP word_x = 32 + (winnerNameW[1] + winnerNameW[0]); #else word_x = 32.0f + ((float)winnerNameW[0] + (winnerNameW[1] * work->win_scale)); diff --git a/src/game/saveload.c b/src/game/saveload.c index f756d77e..df1e5d6e 100644 --- a/src/game/saveload.c +++ b/src/game/saveload.c @@ -35,7 +35,7 @@ s32 saveExecF; u8 curBoxNo; s16 curSlotNo; -#if VERSION_JPN +#if VERSION_JP static u8 commentTbl[2][32] = { "マリオパーティ4", "??月??日 データ?です。" }; static u8 sjisNumTbl[20] = "0123456789"; #else @@ -48,7 +48,7 @@ s32 SaveEnableF = 1; static char *SlotNameTbl[] = { "A", "B" }; -#if VERSION_JPN +#if VERSION_JP static char *slotIconMesTbl[] = { "\x0E\x16", "\x0E\x17" }; static u8 sjisSpace[] = " "; #endif @@ -498,7 +498,7 @@ s32 SLSave(void) #define SAVEWIN_POS 120 #endif -#if VERSION_JPN +#if VERSION_JP #define SAVEWIN_MESS slotIconMesTbl #else #define SAVEWIN_MESS SlotNameTbl diff --git a/src/game/sreset.c b/src/game/sreset.c index 44679b73..10d49ef4 100644 --- a/src/game/sreset.c +++ b/src/game/sreset.c @@ -22,7 +22,7 @@ extern s32 HuDvdErrWait; static s32 SR_PreRstChk[4] = {}; -#if VERSION_JPN +#if VERSION_JP static s32 padding[4] = {}; #endif diff --git a/src/game/window.c b/src/game/window.c index c4806b31..ac3be92e 100644 --- a/src/game/window.c +++ b/src/game/window.c @@ -91,7 +91,7 @@ u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0 17, 13, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 16, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }; -#elif VERSION_JPN +#elif VERSION_JP u8 charWETbl[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 8, 11, 12, 13, 12, 11, 11, 12, 11, 18, 20, 12, 12, 11, 14, 8, 13, 12, 12, 12, 12, 12, 12, 12, 9, 11, 12, 11, 15, 12, 13, 12, 13, 12, 12, 11, 12, 11, 15, 12, 13, 11, 12, 6, 8, 8, 12, 20, 12, 11, 12, 11, 11, 9, 12, 11, 4, 8, 11, 4, 14, 11, 12, 11, 12, 9, 11, 9, 11, 11, 15, @@ -257,7 +257,7 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) sprite_ptr->work[0] = window_id; HuSprGrpMemberSet(group, 1, sprite); window->num_chars = 0; -#if VERSION_JPN +#if VERSION_JP window->max_chars = (w / 20) * (h / 24) * 3; #else window->max_chars = (w / 8) * (h / 24) * 4; @@ -290,7 +290,7 @@ s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame) window->scissor_h = 0x1E0; window->tab_w = 24; window->push_key = 0x300; -#if !VERSION_JPN +#if !VERSION_JP window->key_auto = 0; #endif if (frame == 0 || frame == 2) { @@ -425,12 +425,12 @@ static void MesDispFunc(HuSprite *sprite) MTXConcat(*sprite->group_mtx, modelview, modelview); GXLoadPosMtxImm(modelview, 0); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); - HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, VERSION_JPN ? GX_NEAR : GX_LINEAR); + HuSprTexLoad(fontAnim, 0, 0, GX_CLAMP, GX_CLAMP, VERSION_JP ? GX_NEAR : GX_LINEAR); GXBegin(GX_QUADS, GX_VTXFMT0, window->num_chars * 4); char_uv_h = (LanguageNo == 0) ? (24.0f / 408.0f) : (24.0f / 312.0f); for (i = 0; i < window->num_chars; i++) { char_w = fontWidthP[window->char_data[i].character + 48]; -#if VERSION_JPN +#if VERSION_JP uv_minx = 0.003125 + (20.0f / 320.0f) * (window->char_data[i].character % 16); #else uv_minx = (20.0f / 320.0f) * (window->char_data[i].character % 16); @@ -605,9 +605,9 @@ static void HuWinDrawMes(s16 window) s16 color; s16 mess_w; - window_ptr->mess_time += VERSION_JPN ? 1 : 3; + window_ptr->mess_time += VERSION_JP ? 1 : 3; while (window_ptr->mess_time >= window_ptr->speed || (window_ptr->attr & 0x2000)) { -#if VERSION_JPN +#if VERSION_JP window_ptr->mess_time = 0; #else window_ptr->mess_time -= window_ptr->speed; @@ -634,7 +634,7 @@ static void HuWinDrawMes(s16 window) } window_ptr->mess_stackptr--; window_ptr->mess = window_ptr->mess_stack[window_ptr->mess_stackptr]; -#if !VERSION_JPN +#if !VERSION_JP window_ptr->mess_time = 0; #endif break; @@ -1108,14 +1108,14 @@ static void HuWinChoice(WindowData *window) window->choice = choice_next; HuAudFXPlay(0); } - else if (key & (VERSION_JPN ? PAD_BUTTON_A : (window->key_auto | PAD_BUTTON_A))) { + else if (key & (VERSION_JP ? PAD_BUTTON_A : (window->key_auto | PAD_BUTTON_A))) { HuAudFXPlay(2); window->key_down = key; window->stat = 0; } else if ((key & PAD_BUTTON_B) && !(window->attr & 0x10)) { HuAudFXPlay(3); -#if !VERSION_JPN +#if !VERSION_JP window->key_down = key; #else (void)key; // hack to match Japanese version @@ -1324,7 +1324,7 @@ void HuWinMesSet(s16 window, u32 mess) window_ptr->mess = MessData_MesPtrGet(messDataPtr, mess); if (window_ptr->mess == 0) { OSReport("Error: No Message data\n"); -#if !VERSION_JPN +#if !VERSION_JP HuWinMesSet(window, 0); return; #endif @@ -1335,7 +1335,7 @@ void HuWinMesSet(s16 window, u32 mess) } if (!(window_ptr->attr & 0x80)) { window_ptr->mess_color = 7; -#if !VERSION_JPN +#if !VERSION_JP window_ptr->mess_time = 0; #endif } From b5c05240c0e8d08dd5598980413a790202726b75 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Wed, 11 Dec 2024 01:52:44 +0100 Subject: [PATCH 061/178] Set m435Dll matching only for US --- configure.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure.py b/configure.py index c748d7c4..e1abca70 100644 --- a/configure.py +++ b/configure.py @@ -1108,8 +1108,8 @@ config.libs = [ Rel( "m435Dll", # Darts of Doom objects={ - Object(Matching, "REL/m435Dll/main.c"), - Object(Matching, "REL/m435Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m435Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m435Dll/sequence.c"), }, ), Rel( From 9ddf82f14ed8cdd8d54f0b601d50bcae2ba4654d Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sat, 14 Dec 2024 22:42:43 +0100 Subject: [PATCH 062/178] Port boards to JP --- config/GMPJ01_00/config.yml | 36 +- config/GMPJ01_00/rels/m435Dll/splits.txt | 7 - config/GMPJ01_00/rels/m435Dll/symbols.txt | 471 ------------ config/GMPJ01_00/rels/safDll/splits.txt | 6 + config/GMPJ01_00/rels/w01Dll/splits.txt | 7 - config/GMPJ01_00/rels/w01Dll/symbols.txt | 469 ------------ config/GMPJ01_00/rels/w02Dll/splits.txt | 7 - config/GMPJ01_00/rels/w02Dll/symbols.txt | 456 ----------- config/GMPJ01_00/rels/w03Dll/splits.txt | 7 - config/GMPJ01_00/rels/w03Dll/symbols.txt | 443 ----------- config/GMPJ01_00/rels/w04Dll/splits.txt | 40 + config/GMPJ01_00/rels/w04Dll/symbols.txt | 872 +++++++++++----------- config/GMPJ01_00/rels/w05Dll/splits.txt | 7 - config/GMPJ01_00/rels/w05Dll/symbols.txt | 356 --------- config/GMPJ01_00/rels/w06Dll/splits.txt | 7 - config/GMPJ01_00/rels/w06Dll/symbols.txt | 373 --------- config/GMPJ01_00/rels/w10Dll/splits.txt | 7 - config/GMPJ01_00/rels/w10Dll/symbols.txt | 114 --- config/GMPJ01_00/rels/w20Dll/splits.txt | 7 - config/GMPJ01_00/rels/w20Dll/symbols.txt | 27 - config/GMPJ01_00/rels/w21Dll/splits.txt | 6 - config/GMPJ01_00/rels/w21Dll/symbols.txt | 18 - config/GMPJ01_00/symbols.txt | 2 +- config/GMPP01_02/rels/w04Dll/splits.txt | 7 + config/GMPP01_02/rels/w04Dll/symbols.txt | 399 ++++++++++ configure.py | 86 +-- src/REL/w01Dll/mg_item.c | 26 +- src/REL/w02Dll/mg_item.c | 34 +- src/REL/w03Dll/mg_item.c | 34 +- src/REL/w04Dll/big_boo.c | 2 +- src/REL/w04Dll/mg_item.c | 34 +- src/REL/w05Dll/mg_item.c | 34 +- src/REL/w06Dll/bowser.c | 8 +- 33 files changed, 1060 insertions(+), 3349 deletions(-) delete mode 100644 config/GMPJ01_00/rels/m435Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m435Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w01Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w01Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w02Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w02Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w03Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w03Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w05Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w05Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w06Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w06Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w10Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w10Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w20Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w20Dll/symbols.txt delete mode 100644 config/GMPJ01_00/rels/w21Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/w21Dll/symbols.txt create mode 100644 config/GMPP01_02/rels/w04Dll/splits.txt create mode 100644 config/GMPP01_02/rels/w04Dll/symbols.txt diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index 3d774ecc..f074a33e 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -214,8 +214,8 @@ modules: links: [] - object: files/dll/m435Dll.rel - symbols: config/GMPJ01_00/rels/m435Dll/symbols.txt - splits: config/GMPJ01_00/rels/m435Dll/splits.txt + symbols: config/GMPE01_00/rels/m435Dll/symbols.txt + splits: config/GMPE01_00/rels/m435Dll/splits.txt links: [] - object: files/dll/m436Dll.rel @@ -444,18 +444,18 @@ modules: links: [] - object: files/dll/w01Dll.rel - symbols: config/GMPJ01_00/rels/w01Dll/symbols.txt - splits: config/GMPJ01_00/rels/w01Dll/splits.txt + symbols: config/GMPE01_00/rels/w01Dll/symbols.txt + splits: config/GMPE01_00/rels/w01Dll/splits.txt links: [] - object: files/dll/w02Dll.rel - symbols: config/GMPJ01_00/rels/w02Dll/symbols.txt - splits: config/GMPJ01_00/rels/w02Dll/splits.txt + symbols: config/GMPE01_00/rels/w02Dll/symbols.txt + splits: config/GMPE01_00/rels/w02Dll/splits.txt links: [] - object: files/dll/w03Dll.rel - symbols: config/GMPJ01_00/rels/w03Dll/symbols.txt - splits: config/GMPJ01_00/rels/w03Dll/splits.txt + symbols: config/GMPE01_00/rels/w03Dll/symbols.txt + splits: config/GMPE01_00/rels/w03Dll/splits.txt links: [] - object: files/dll/w04Dll.rel @@ -464,28 +464,28 @@ modules: links: [] - object: files/dll/w05Dll.rel - symbols: config/GMPJ01_00/rels/w05Dll/symbols.txt - splits: config/GMPJ01_00/rels/w05Dll/splits.txt + symbols: config/GMPE01_00/rels/w05Dll/symbols.txt + splits: config/GMPE01_00/rels/w05Dll/splits.txt links: [] - object: files/dll/w06Dll.rel - symbols: config/GMPJ01_00/rels/w06Dll/symbols.txt - splits: config/GMPJ01_00/rels/w06Dll/splits.txt + symbols: config/GMPE01_00/rels/w06Dll/symbols.txt + splits: config/GMPE01_00/rels/w06Dll/splits.txt links: [] - object: files/dll/w10Dll.rel - symbols: config/GMPJ01_00/rels/w10Dll/symbols.txt - splits: config/GMPJ01_00/rels/w10Dll/splits.txt + symbols: config/GMPE01_00/rels/w10Dll/symbols.txt + splits: config/GMPE01_00/rels/w10Dll/splits.txt links: [] - object: files/dll/w20Dll.rel - symbols: config/GMPJ01_00/rels/w20Dll/symbols.txt - splits: config/GMPJ01_00/rels/w20Dll/splits.txt + symbols: config/GMPE01_00/rels/w20Dll/symbols.txt + splits: config/GMPE01_00/rels/w20Dll/splits.txt links: [] - object: files/dll/w21Dll.rel - symbols: config/GMPJ01_00/rels/w21Dll/symbols.txt - splits: config/GMPJ01_00/rels/w21Dll/splits.txt + symbols: config/GMPE01_00/rels/w21Dll/symbols.txt + splits: config/GMPE01_00/rels/w21Dll/splits.txt links: [] - object: files/dll/ztardll.rel diff --git a/config/GMPJ01_00/rels/m435Dll/splits.txt b/config/GMPJ01_00/rels/m435Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m435Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m435Dll/symbols.txt b/config/GMPJ01_00/rels/m435Dll/symbols.txt deleted file mode 100644 index f12299da..00000000 --- a/config/GMPJ01_00/rels/m435Dll/symbols.txt +++ /dev/null @@ -1,471 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x1A8 -fn_1_1A8 = .text:0x000001A8; // type:function size:0x88 -fn_1_230 = .text:0x00000230; // type:function size:0x68 -fn_1_298 = .text:0x00000298; // type:function size:0x6C -fn_1_304 = .text:0x00000304; // type:function size:0x130 -fn_1_434 = .text:0x00000434; // type:function size:0x3E4 -fn_1_818 = .text:0x00000818; // type:function size:0x8C -fn_1_8A4 = .text:0x000008A4; // type:function size:0x20 -fn_1_8C4 = .text:0x000008C4; // type:function size:0x20 -fn_1_8E4 = .text:0x000008E4; // type:function size:0x48 -fn_1_92C = .text:0x0000092C; // type:function size:0x6B0 -fn_1_FDC = .text:0x00000FDC; // type:function size:0x134 -fn_1_1110 = .text:0x00001110; // type:function size:0xC4 -fn_1_11D4 = .text:0x000011D4; // type:function size:0x644 -fn_1_1818 = .text:0x00001818; // type:function size:0x24 -fn_1_183C = .text:0x0000183C; // type:function size:0x458 -fn_1_1C94 = .text:0x00001C94; // type:function size:0x1EC -fn_1_1E80 = .text:0x00001E80; // type:function size:0x1EC -fn_1_206C = .text:0x0000206C; // type:function size:0x458 -fn_1_24C4 = .text:0x000024C4; // type:function size:0x68 -fn_1_252C = .text:0x0000252C; // type:function size:0x68 -fn_1_2594 = .text:0x00002594; // type:function size:0xE8 -fn_1_267C = .text:0x0000267C; // type:function size:0x11C -fn_1_2798 = .text:0x00002798; // type:function size:0x84 -fn_1_281C = .text:0x0000281C; // type:function size:0x70 -fn_1_288C = .text:0x0000288C; // type:function size:0x38 -fn_1_28C4 = .text:0x000028C4; // type:function size:0x24 -fn_1_28E8 = .text:0x000028E8; // type:function size:0x38 -fn_1_2920 = .text:0x00002920; // type:function size:0x1D0 -fn_1_2AF0 = .text:0x00002AF0; // type:function size:0x64 -fn_1_2B54 = .text:0x00002B54; // type:function size:0xA8 -fn_1_2BFC = .text:0x00002BFC; // type:function size:0x20 -fn_1_2C1C = .text:0x00002C1C; // type:function size:0x5A0 -fn_1_31BC = .text:0x000031BC; // type:function size:0xCC -fn_1_3288 = .text:0x00003288; // type:function size:0x2D0 -fn_1_3558 = .text:0x00003558; // type:function size:0x59C -fn_1_3AF4 = .text:0x00003AF4; // type:function size:0x20 -fn_1_3B14 = .text:0x00003B14; // type:function size:0x370 -fn_1_3E84 = .text:0x00003E84; // type:function size:0x20 -fn_1_3EA4 = .text:0x00003EA4; // type:function size:0x260 -fn_1_4104 = .text:0x00004104; // type:function size:0x2C -fn_1_4130 = .text:0x00004130; // type:function size:0x5A8 -fn_1_46D8 = .text:0x000046D8; // type:function size:0x22C -fn_1_4904 = .text:0x00004904; // type:function size:0x3E8 -fn_1_4CEC = .text:0x00004CEC; // type:function size:0x11C -fn_1_4E08 = .text:0x00004E08; // type:function size:0x1AC -fn_1_4FB4 = .text:0x00004FB4; // type:function size:0x484 -fn_1_5438 = .text:0x00005438; // type:function size:0x1C8 -fn_1_5600 = .text:0x00005600; // type:function size:0x44 -fn_1_5644 = .text:0x00005644; // type:function size:0x1C18 -fn_1_725C = .text:0x0000725C; // type:function size:0x48 -fn_1_72A4 = .text:0x000072A4; // type:function size:0x384 -fn_1_7628 = .text:0x00007628; // type:function size:0x374 -fn_1_799C = .text:0x0000799C; // type:function size:0x24 -fn_1_79C0 = .text:0x000079C0; // type:function size:0xB8 -fn_1_7A78 = .text:0x00007A78; // type:function size:0xCC -fn_1_7B44 = .text:0x00007B44; // type:function size:0x1E4 -fn_1_7D28 = .text:0x00007D28; // type:function size:0x28 -fn_1_7D50 = .text:0x00007D50; // type:function size:0x24 -fn_1_7D74 = .text:0x00007D74; // type:function size:0x160 -fn_1_7ED4 = .text:0x00007ED4; // type:function size:0x37C -fn_1_8250 = .text:0x00008250; // type:function size:0x24 -fn_1_8274 = .text:0x00008274; // type:function size:0x2D0 -fn_1_8544 = .text:0x00008544; // type:function size:0x4C -fn_1_8590 = .text:0x00008590; // type:function size:0x1A4 -fn_1_8734 = .text:0x00008734; // type:function size:0x17C -fn_1_88B0 = .text:0x000088B0; // type:function size:0x598 -fn_1_8E48 = .text:0x00008E48; // type:function size:0x28 -fn_1_8E70 = .text:0x00008E70; // type:function size:0x58 -fn_1_8EC8 = .text:0x00008EC8; // type:function size:0x2C -fn_1_8EF4 = .text:0x00008EF4; // type:function size:0x40 -fn_1_8F34 = .text:0x00008F34; // type:function size:0x18 -fn_1_8F4C = .text:0x00008F4C; // type:function size:0x150 -fn_1_909C = .text:0x0000909C; // type:function size:0x6CC -fn_1_9768 = .text:0x00009768; // type:function size:0x28 -fn_1_9790 = .text:0x00009790; // type:function size:0x94 -fn_1_9824 = .text:0x00009824; // type:function size:0x28 -fn_1_984C = .text:0x0000984C; // type:function size:0x380 -fn_1_9BCC = .text:0x00009BCC; // type:function size:0x3C -fn_1_9C08 = .text:0x00009C08; // type:function size:0x180 -fn_1_9D88 = .text:0x00009D88; // type:function size:0x1F4 -fn_1_9F7C = .text:0x00009F7C; // type:function size:0x1CC -fn_1_A148 = .text:0x0000A148; // type:function size:0x370 -fn_1_A4B8 = .text:0x0000A4B8; // type:function size:0x28 -fn_1_A4E0 = .text:0x0000A4E0; // type:function size:0x190 -fn_1_A670 = .text:0x0000A670; // type:function size:0x64 -fn_1_A6D4 = .text:0x0000A6D4; // type:function size:0x1F0 -fn_1_A8C4 = .text:0x0000A8C4; // type:function size:0x338 -fn_1_ABFC = .text:0x0000ABFC; // type:function size:0x160 -fn_1_AD5C = .text:0x0000AD5C; // type:function size:0x498 -fn_1_B1F4 = .text:0x0000B1F4; // type:function size:0x634 -fn_1_B828 = .text:0x0000B828; // type:function size:0x128 -fn_1_B950 = .text:0x0000B950; // type:function size:0x298 -fn_1_BBE8 = .text:0x0000BBE8; // type:function size:0xB0 -fn_1_BC98 = .text:0x0000BC98; // type:function size:0xD8 -fn_1_BD70 = .text:0x0000BD70; // type:function size:0xB0 -fn_1_BE20 = .text:0x0000BE20; // type:function size:0xB0 -fn_1_BED0 = .text:0x0000BED0; // type:function size:0xB0 -fn_1_BF80 = .text:0x0000BF80; // type:function size:0xE4 -fn_1_C064 = .text:0x0000C064; // type:function size:0xD8 -fn_1_C13C = .text:0x0000C13C; // type:function size:0xD8 -fn_1_C214 = .text:0x0000C214; // type:function size:0xD8 -fn_1_C2EC = .text:0x0000C2EC; // type:function size:0xD8 -fn_1_C3C4 = .text:0x0000C3C4; // type:function size:0xD8 -fn_1_C49C = .text:0x0000C49C; // type:function size:0xB0 -fn_1_C54C = .text:0x0000C54C; // type:function size:0xB0 -fn_1_C5FC = .text:0x0000C5FC; // type:function size:0x168 -fn_1_C764 = .text:0x0000C764; // type:function size:0x558 -fn_1_CCBC = .text:0x0000CCBC; // type:function size:0x3A0 -fn_1_D05C = .text:0x0000D05C; // type:function size:0x43C -fn_1_D498 = .text:0x0000D498; // type:function size:0x424 -fn_1_D8BC = .text:0x0000D8BC; // type:function size:0x8D4 -fn_1_E190 = .text:0x0000E190; // type:function size:0x4E0 -fn_1_E670 = .text:0x0000E670; // type:function size:0x3E4 -fn_1_EA54 = .text:0x0000EA54; // type:function size:0x340 -fn_1_ED94 = .text:0x0000ED94; // type:function size:0x448 -fn_1_F1DC = .text:0x0000F1DC; // type:function size:0x4 -fn_1_F1E0 = .text:0x0000F1E0; // type:function size:0x18C -fn_1_F36C = .text:0x0000F36C; // type:function size:0x3C -fn_1_F3A8 = .text:0x0000F3A8; // type:function size:0x5C -fn_1_F404 = .text:0x0000F404; // type:function size:0x78 -fn_1_F47C = .text:0x0000F47C; // type:function size:0x5C -fn_1_F4D8 = .text:0x0000F4D8; // type:function size:0x5C -fn_1_F534 = .text:0x0000F534; // type:function size:0x48 -fn_1_F57C = .text:0x0000F57C; // type:function size:0x3C -fn_1_F5B8 = .text:0x0000F5B8; // type:function size:0x80 -fn_1_F638 = .text:0x0000F638; // type:function size:0x64 -fn_1_F69C = .text:0x0000F69C; // type:function size:0x5C -fn_1_F6F8 = .text:0x0000F6F8; // type:function size:0x70 -fn_1_F768 = .text:0x0000F768; // type:function size:0x48 -fn_1_F7B0 = .text:0x0000F7B0; // type:function size:0xA8 -fn_1_F858 = .text:0x0000F858; // type:function size:0x44 -fn_1_F89C = .text:0x0000F89C; // type:function size:0x5C -fn_1_F8F8 = .text:0x0000F8F8; // type:function size:0x5C -fn_1_F954 = .text:0x0000F954; // type:function size:0x4 -fn_1_F958 = .text:0x0000F958; // type:function size:0x48 -fn_1_F9A0 = .text:0x0000F9A0; // type:function size:0x4C -fn_1_F9EC = .text:0x0000F9EC; // type:function size:0x5C -fn_1_FA48 = .text:0x0000FA48; // type:function size:0x108 -fn_1_FB50 = .text:0x0000FB50; // type:function size:0x5C -fn_1_FBAC = .text:0x0000FBAC; // type:function size:0xB0 -fn_1_FC5C = .text:0x0000FC5C; // type:function size:0x208 -fn_1_FE64 = .text:0x0000FE64; // type:function size:0x30 -fn_1_FE94 = .text:0x0000FE94; // type:function size:0x98 -fn_1_FF2C = .text:0x0000FF2C; // type:function size:0x808 -fn_1_10734 = .text:0x00010734; // type:function size:0x28 -fn_1_1075C = .text:0x0001075C; // type:function size:0xD8 -fn_1_10834 = .text:0x00010834; // type:function size:0xD8 -fn_1_1090C = .text:0x0001090C; // type:function size:0x108 -fn_1_10A14 = .text:0x00010A14; // type:function size:0x408 -fn_1_10E1C = .text:0x00010E1C; // type:function size:0x404 -fn_1_11220 = .text:0x00011220; // type:function size:0x488 -fn_1_116A8 = .text:0x000116A8; // type:function size:0x45C -fn_1_11B04 = .text:0x00011B04; // type:function size:0x478 -fn_1_11F7C = .text:0x00011F7C; // type:function size:0x4 -fn_1_11F80 = .text:0x00011F80; // type:function size:0x48 -fn_1_11FC8 = .text:0x00011FC8; // type:function size:0x9C -fn_1_12064 = .text:0x00012064; // type:function size:0x1AC -fn_1_12210 = .text:0x00012210; // type:function size:0x50 -fn_1_12260 = .text:0x00012260; // type:function size:0x48 -fn_1_122A8 = .text:0x000122A8; // type:function size:0x38 -fn_1_122E0 = .text:0x000122E0; // type:function size:0x134 -fn_1_12414 = .text:0x00012414; // type:function size:0x2C -fn_1_12440 = .text:0x00012440; // type:function size:0x134 -fn_1_12574 = .text:0x00012574; // type:function size:0x48 -fn_1_125BC = .text:0x000125BC; // type:function size:0x48 -fn_1_12604 = .text:0x00012604; // type:function size:0xF0 -fn_1_126F4 = .text:0x000126F4; // type:function size:0xC0 -fn_1_127B4 = .text:0x000127B4; // type:function size:0x5C -fn_1_12810 = .text:0x00012810; // type:function size:0x48 -fn_1_12858 = .text:0x00012858; // type:function size:0x100 -fn_1_12958 = .text:0x00012958; // type:function size:0x1F8 -fn_1_12B50 = .text:0x00012B50; // type:function size:0x3C -fn_1_12B8C = .text:0x00012B8C; // type:function size:0x5C -fn_1_12BE8 = .text:0x00012BE8; // type:function size:0x3C -fn_1_12C24 = .text:0x00012C24; // type:function size:0x5C -fn_1_12C80 = .text:0x00012C80; // type:function size:0x3C -fn_1_12CBC = .text:0x00012CBC; // type:function size:0x5C -fn_1_12D18 = .text:0x00012D18; // type:function size:0x230 -fn_1_12F48 = .text:0x00012F48; // type:function size:0xF4 -fn_1_1303C = .text:0x0001303C; // type:function size:0x4C -fn_1_13088 = .text:0x00013088; // type:function size:0x128 -fn_1_131B0 = .text:0x000131B0; // type:function size:0x40 -fn_1_131F0 = .text:0x000131F0; // type:function size:0x98 -fn_1_13288 = .text:0x00013288; // type:function size:0xB0 -fn_1_13338 = .text:0x00013338; // type:function size:0xAC -fn_1_133E4 = .text:0x000133E4; // type:function size:0x30 -fn_1_13414 = .text:0x00013414; // type:function size:0x98 -fn_1_134AC = .text:0x000134AC; // type:function size:0xF4 -fn_1_135A0 = .text:0x000135A0; // type:function size:0x60 -fn_1_13600 = .text:0x00013600; // type:function size:0xD84 -fn_1_14384 = .text:0x00014384; // type:function size:0x3DC -fn_1_14760 = .text:0x00014760; // type:function size:0x254 -_prolog = .text:0x000149B4; // type:function size:0x54 scope:global -_epilog = .text:0x00014A08; // type:function size:0x4C scope:global -fn_1_14A54 = .text:0x00014A54; // type:function size:0x40C -fn_1_14E60 = .text:0x00014E60; // type:function size:0x40C -fn_1_1526C = .text:0x0001526C; // type:function size:0x28 -fn_1_15294 = .text:0x00015294; // type:function size:0x40 -fn_1_152D4 = .text:0x000152D4; // type:function size:0xC8 -fn_1_1539C = .text:0x0001539C; // type:function size:0xD8 -fn_1_15474 = .text:0x00015474; // type:function size:0x50 -fn_1_154C4 = .text:0x000154C4; // type:function size:0x5C -fn_1_15520 = .text:0x00015520; // type:function size:0x88 -fn_1_155A8 = .text:0x000155A8; // type:function size:0x74 -fn_1_1561C = .text:0x0001561C; // type:function size:0x54 -fn_1_15670 = .text:0x00015670; // type:function size:0x3C -fn_1_156AC = .text:0x000156AC; // type:function size:0x110 -fn_1_157BC = .text:0x000157BC; // type:function size:0x178 -fn_1_15934 = .text:0x00015934; // type:function size:0x1C8 -fn_1_15AFC = .text:0x00015AFC; // type:function size:0x318 -fn_1_15E14 = .text:0x00015E14; // type:function size:0x3C -fn_1_15E50 = .text:0x00015E50; // type:function size:0x4C -fn_1_15E9C = .text:0x00015E9C; // type:function size:0x314 -fn_1_161B0 = .text:0x000161B0; // type:function size:0x314 -fn_1_164C4 = .text:0x000164C4; // type:function size:0x27C -fn_1_16740 = .text:0x00016740; // type:function size:0x2B4 -fn_1_169F4 = .text:0x000169F4; // type:function size:0x530 -fn_1_16F24 = .text:0x00016F24; // type:function size:0x454 -fn_1_17378 = .text:0x00017378; // type:function size:0x48C -fn_1_17804 = .text:0x00017804; // type:function size:0x71C -fn_1_17F20 = .text:0x00017F20; // type:function size:0x4C4 -fn_1_183E4 = .text:0x000183E4; // type:function size:0x4FC -fn_1_188E0 = .text:0x000188E0; // type:function size:0x78C -fn_1_1906C = .text:0x0001906C; // type:function size:0x4C4 -fn_1_19530 = .text:0x00019530; // type:function size:0x60 -fn_1_19590 = .text:0x00019590; // type:function size:0x64 -fn_1_195F4 = .text:0x000195F4; // type:function size:0x64 -fn_1_19658 = .text:0x00019658; // type:function size:0x23C -fn_1_19894 = .text:0x00019894; // type:function size:0x64 -fn_1_198F8 = .text:0x000198F8; // type:function size:0x68 -fn_1_19960 = .text:0x00019960; // type:function size:0x8 -fn_1_19968 = .text:0x00019968; // type:function size:0xC -fn_1_19974 = .text:0x00019974; // type:function size:0x8 -fn_1_1997C = .text:0x0001997C; // type:function size:0x344 -fn_1_19CC0 = .text:0x00019CC0; // type:function size:0x190 -fn_1_19E50 = .text:0x00019E50; // type:function size:0x4EC -fn_1_1A33C = .text:0x0001A33C; // type:function size:0x110 -_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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte -lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0xC data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:4byte -lbl_1_rodata_A4 = .rodata:0x000000A4; // type:object size:0x48 -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // 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:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x20 data:4byte -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x30 data:4byte -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x30 data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x30 data:4byte -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x8 data:4byte -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x8 data:4byte -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x8 data:4byte -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x8 data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x24 data:4byte -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:4byte -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x24 data:4byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x8 data:4byte -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x8 data:4byte -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:4byte -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:4byte -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x8 data:4byte -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x8 data:4byte -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x10 data:4byte -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x8 data:4byte -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x8 data:4byte -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x8 data:4byte -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x8 data:4byte -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x30 data:4byte -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x64 data:4byte -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x10 data:string -lbl_1_data_70 = .data:0x00000070; // type:object size:0x10 data:string -lbl_1_data_80 = .data:0x00000080; // type:object size:0x10 data:string -lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 data:string -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 data:string -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x10 data:string -lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x10 data:string -lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 -lbl_1_data_100 = .data:0x00000100; // type:object size:0x40 -lbl_1_data_140 = .data:0x00000140; // type:object size:0xA0 -lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x4 data:4byte -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x4 data:4byte -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x4 data:4byte -lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x1B data:string -lbl_1_data_207 = .data:0x00000207; // type:object size:0x22 data:string -lbl_1_data_229 = .data:0x00000229; // type:object size:0x1A data:string -lbl_1_data_243 = .data:0x00000243; // type:object size:0x1A data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0xF -lbl_1_data_26C = .data:0x0000026C; // type:object size:0x4 data:4byte -jumptable_1_data_270 = .data:0x00000270; // type:object size:0x54 scope:local -lbl_1_data_2C4 = .data:0x000002C4; // type:object size:0x4 data:float -lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x13 data:string -lbl_1_data_2DB = .data:0x000002DB; // type:object size:0x11 -jumptable_1_data_2EC = .data:0x000002EC; // type:object size:0x24 scope:local -jumptable_1_data_310 = .data:0x00000310; // type:object size:0x2C scope:local -lbl_1_data_33C = .data:0x0000033C; // type:object size:0xE data:string -lbl_1_data_34A = .data:0x0000034A; // type:object size:0x12 data:string -lbl_1_data_35C = .data:0x0000035C; // type:object size:0x14 -jumptable_1_data_370 = .data:0x00000370; // type:object size:0x30 scope:local -lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0xA8 -jumptable_1_data_448 = .data:0x00000448; // type:object size:0x1C scope:local -lbl_1_data_464 = .data:0x00000464; // type:object size:0x4 -lbl_1_data_468 = .data:0x00000468; // type:object size:0xB4 -lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 -jumptable_1_data_534 = .data:0x00000534; // type:object size:0x28 scope:local -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x8 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x18 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x30 -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x18 data:4byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x18 data:4byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0xA8 data:4byte -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x160 -lbl_1_bss_2A4 = .bss:0x000002A4; // type:object size:0x978 data:4byte -lbl_1_bss_C1C = .bss:0x00000C1C; // type:object size:0x14 data:4byte -lbl_1_bss_C30 = .bss:0x00000C30; // type:object size:0x1B4 data:4byte -lbl_1_bss_DE4 = .bss:0x00000DE4; // type:object size:0x24 data:4byte -lbl_1_bss_E08 = .bss:0x00000E08; // type:object size:0x80 data:4byte -lbl_1_bss_E88 = .bss:0x00000E88; // type:object size:0x4060 data:4byte -lbl_1_bss_4EE8 = .bss:0x00004EE8; // type:object size:0x20 data:4byte -lbl_1_bss_4F08 = .bss:0x00004F08; // type:object size:0x8 data:4byte -lbl_1_bss_4F10 = .bss:0x00004F10; // type:object size:0x38 data:4byte diff --git a/config/GMPJ01_00/rels/safDll/splits.txt b/config/GMPJ01_00/rels/safDll/splits.txt index 531cd645..e4b1b5df 100644 --- a/config/GMPJ01_00/rels/safDll/splits.txt +++ b/config/GMPJ01_00/rels/safDll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/safDll/main.c: + .text start:0x00000000 end:0x0000052C + .rodata start:0x00000000 end:0x00000024 + .data start:0x00000000 end:0x00000070 + .bss start:0x00000000 end:0x0000030C diff --git a/config/GMPJ01_00/rels/w01Dll/splits.txt b/config/GMPJ01_00/rels/w01Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/w01Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w01Dll/symbols.txt b/config/GMPJ01_00/rels/w01Dll/symbols.txt deleted file mode 100644 index 90f53307..00000000 --- a/config/GMPJ01_00/rels/w01Dll/symbols.txt +++ /dev/null @@ -1,469 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x4BC -fn_1_59C = .text:0x0000059C; // type:function size:0x194 -fn_1_730 = .text:0x00000730; // type:function size:0x44 -fn_1_774 = .text:0x00000774; // type:function size:0x4 -fn_1_778 = .text:0x00000778; // type:function size:0x9C -fn_1_814 = .text:0x00000814; // type:function size:0x1D4 -fn_1_9E8 = .text:0x000009E8; // type:function size:0x318 -fn_1_D00 = .text:0x00000D00; // type:function size:0x4 -fn_1_D04 = .text:0x00000D04; // type:function size:0x550 -fn_1_1254 = .text:0x00001254; // type:function size:0x38 -fn_1_128C = .text:0x0000128C; // type:function size:0x80 -fn_1_130C = .text:0x0000130C; // type:function size:0x270 -fn_1_157C = .text:0x0000157C; // type:function size:0xF4 -fn_1_1670 = .text:0x00001670; // type:function size:0x90 -fn_1_1700 = .text:0x00001700; // type:function size:0x290 -fn_1_1990 = .text:0x00001990; // type:function size:0x148 -fn_1_1AD8 = .text:0x00001AD8; // type:function size:0x64 -fn_1_1B3C = .text:0x00001B3C; // type:function size:0x3A8 -fn_1_1EE4 = .text:0x00001EE4; // type:function size:0x48 -fn_1_1F2C = .text:0x00001F2C; // type:function size:0x78 -fn_1_1FA4 = .text:0x00001FA4; // type:function size:0x580 -fn_1_2524 = .text:0x00002524; // type:function size:0x248 -fn_1_276C = .text:0x0000276C; // type:function size:0x7AC -fn_1_2F18 = .text:0x00002F18; // type:function size:0x438 -fn_1_3350 = .text:0x00003350; // type:function size:0x1C4 -fn_1_3514 = .text:0x00003514; // type:function size:0xA0 -fn_1_35B4 = .text:0x000035B4; // type:function size:0x70 -fn_1_3624 = .text:0x00003624; // type:function size:0xFD0 -fn_1_45F4 = .text:0x000045F4; // type:function size:0x180 -fn_1_4774 = .text:0x00004774; // type:function size:0xF0 -fn_1_4864 = .text:0x00004864; // type:function size:0x50 -fn_1_48B4 = .text:0x000048B4; // type:function size:0x560 -fn_1_4E14 = .text:0x00004E14; // type:function size:0x194 -fn_1_4FA8 = .text:0x00004FA8; // type:function size:0x30 -fn_1_4FD8 = .text:0x00004FD8; // type:function size:0xFC -fn_1_50D4 = .text:0x000050D4; // type:function size:0x2E4 -fn_1_53B8 = .text:0x000053B8; // type:function size:0x84 -fn_1_543C = .text:0x0000543C; // type:function size:0x258 -fn_1_5694 = .text:0x00005694; // type:function size:0x1D8 -fn_1_586C = .text:0x0000586C; // type:function size:0xC0 -fn_1_592C = .text:0x0000592C; // type:function size:0x200 -fn_1_5B2C = .text:0x00005B2C; // type:function size:0x14 -fn_1_5B40 = .text:0x00005B40; // type:function size:0x190 -fn_1_5CD0 = .text:0x00005CD0; // type:function size:0x38 -fn_1_5D08 = .text:0x00005D08; // type:function size:0x390 -fn_1_6098 = .text:0x00006098; // type:function size:0xFC -fn_1_6194 = .text:0x00006194; // type:function size:0x25C -fn_1_63F0 = .text:0x000063F0; // type:function size:0x624 -fn_1_6A14 = .text:0x00006A14; // type:function size:0x1AC -fn_1_6BC0 = .text:0x00006BC0; // type:function size:0x3F4 -fn_1_6FB4 = .text:0x00006FB4; // type:function size:0x574 -fn_1_7528 = .text:0x00007528; // type:function size:0x2C4 -fn_1_77EC = .text:0x000077EC; // type:function size:0xA8 -fn_1_7894 = .text:0x00007894; // type:function size:0x1D0 -fn_1_7A64 = .text:0x00007A64; // type:function size:0xAC8 -fn_1_852C = .text:0x0000852C; // type:function size:0x280 -fn_1_87AC = .text:0x000087AC; // type:function size:0x34 -fn_1_87E0 = .text:0x000087E0; // type:function size:0x1A8 -fn_1_8988 = .text:0x00008988; // type:function size:0xC8 -fn_1_8A50 = .text:0x00008A50; // type:function size:0x11C -fn_1_8B6C = .text:0x00008B6C; // type:function size:0x270 -fn_1_8DDC = .text:0x00008DDC; // type:function size:0x3B0 -fn_1_918C = .text:0x0000918C; // type:function size:0xF0 -fn_1_927C = .text:0x0000927C; // type:function size:0xB0 -fn_1_932C = .text:0x0000932C; // type:function size:0x17C -fn_1_94A8 = .text:0x000094A8; // type:function size:0x14C -fn_1_95F4 = .text:0x000095F4; // type:function size:0x200 -fn_1_97F4 = .text:0x000097F4; // type:function size:0xF8 -fn_1_98EC = .text:0x000098EC; // type:function size:0x34 -fn_1_9920 = .text:0x00009920; // type:function size:0x104 -fn_1_9A24 = .text:0x00009A24; // type:function size:0x198 -fn_1_9BBC = .text:0x00009BBC; // type:function size:0x144 -fn_1_9D00 = .text:0x00009D00; // type:function size:0xD8 -fn_1_9DD8 = .text:0x00009DD8; // type:function size:0x6E0 -fn_1_A4B8 = .text:0x0000A4B8; // type:function size:0x9C -fn_1_A554 = .text:0x0000A554; // type:function size:0xA8 -fn_1_A5FC = .text:0x0000A5FC; // type:function size:0xE4 -fn_1_A6E0 = .text:0x0000A6E0; // type:function size:0x938 -fn_1_B018 = .text:0x0000B018; // type:function size:0x70 -fn_1_B088 = .text:0x0000B088; // type:function size:0x144 -fn_1_B1CC = .text:0x0000B1CC; // type:function size:0x1EC -fn_1_B3B8 = .text:0x0000B3B8; // type:function size:0xC0 -fn_1_B478 = .text:0x0000B478; // type:function size:0x680 -fn_1_BAF8 = .text:0x0000BAF8; // type:function size:0x1E4 -fn_1_BCDC = .text:0x0000BCDC; // type:function size:0x224 -fn_1_BF00 = .text:0x0000BF00; // type:function size:0x68 -fn_1_BF68 = .text:0x0000BF68; // type:function size:0x98 -fn_1_C000 = .text:0x0000C000; // type:function size:0xFC -fn_1_C0FC = .text:0x0000C0FC; // type:function size:0x160 -fn_1_C25C = .text:0x0000C25C; // type:function size:0x5E8 -fn_1_C844 = .text:0x0000C844; // type:function size:0x50 -fn_1_C894 = .text:0x0000C894; // type:function size:0xB8 -fn_1_C94C = .text:0x0000C94C; // type:function size:0x4C -fn_1_C998 = .text:0x0000C998; // type:function size:0x1AC -fn_1_CB44 = .text:0x0000CB44; // type:function size:0x380 -fn_1_CEC4 = .text:0x0000CEC4; // type:function size:0x170 -fn_1_D034 = .text:0x0000D034; // type:function size:0x48 -fn_1_D07C = .text:0x0000D07C; // type:function size:0x98 -fn_1_D114 = .text:0x0000D114; // type:function size:0x62C -fn_1_D740 = .text:0x0000D740; // type:function size:0x644 -fn_1_DD84 = .text:0x0000DD84; // type:function size:0x110 -fn_1_DE94 = .text:0x0000DE94; // type:function size:0x26C -fn_1_E100 = .text:0x0000E100; // type:function size:0x54 -fn_1_E154 = .text:0x0000E154; // type:function size:0x164 -fn_1_E2B8 = .text:0x0000E2B8; // type:function size:0x194 -fn_1_E44C = .text:0x0000E44C; // type:function size:0x4C8 -fn_1_E914 = .text:0x0000E914; // type:function size:0x3C0 -fn_1_ECD4 = .text:0x0000ECD4; // type:function size:0x1CC -fn_1_EEA0 = .text:0x0000EEA0; // type:function size:0x38 -fn_1_EED8 = .text:0x0000EED8; // type:function size:0x1C4 -fn_1_F09C = .text:0x0000F09C; // type:function size:0x2AC -fn_1_F348 = .text:0x0000F348; // type:function size:0xB0 -fn_1_F3F8 = .text:0x0000F3F8; // type:function size:0x2F0 -fn_1_F6E8 = .text:0x0000F6E8; // type:function size:0x1A8 -fn_1_F890 = .text:0x0000F890; // type:function size:0x18C -fn_1_FA1C = .text:0x0000FA1C; // type:function size:0xA0 -fn_1_FABC = .text:0x0000FABC; // type:function size:0x9C -fn_1_FB58 = .text:0x0000FB58; // type:function size:0xE4 -fn_1_FC3C = .text:0x0000FC3C; // type:function size:0xB0 -fn_1_FCEC = .text:0x0000FCEC; // type:function size:0x50 -fn_1_FD3C = .text:0x0000FD3C; // type:function size:0x108 -fn_1_FE44 = .text:0x0000FE44; // type:function size:0x8C -fn_1_FED0 = .text:0x0000FED0; // type:function size:0x14C -fn_1_1001C = .text:0x0001001C; // type:function size:0x19C -fn_1_101B8 = .text:0x000101B8; // type:function size:0x4AC -fn_1_10664 = .text:0x00010664; // type:function size:0x1BC -fn_1_10820 = .text:0x00010820; // type:function size:0x2C8 -fn_1_10AE8 = .text:0x00010AE8; // type:function size:0xC8 -fn_1_10BB0 = .text:0x00010BB0; // type:function size:0x140 -fn_1_10CF0 = .text:0x00010CF0; // type:function size:0x1C8 -fn_1_10EB8 = .text:0x00010EB8; // type:function size:0x1AC -fn_1_11064 = .text:0x00011064; // type:function size:0x420 -fn_1_11484 = .text:0x00011484; // type:function size:0x56C -_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:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // 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:0x10 data:4byte -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x8 data:4byte -lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x8 data:4byte -lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x2 data:2byte -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x2 data:2byte -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0xC data:2byte -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x528 -lbl_1_data_528 = .data:0x00000528; // type:object size:0x2 data:2byte -lbl_1_data_52A = .data:0x0000052A; // type:object size:0x2 data:2byte -lbl_1_data_52C = .data:0x0000052C; // type:object size:0x2 data:2byte -lbl_1_data_52E = .data:0x0000052E; // type:object size:0x2 data:2byte -lbl_1_data_530 = .data:0x00000530; // type:object size:0x2 data:2byte -lbl_1_data_534 = .data:0x00000534; // type:object size:0x8 -lbl_1_data_53C = .data:0x0000053C; // type:object size:0x8 -lbl_1_data_544 = .data:0x00000544; // type:object size:0x14 data:string -lbl_1_data_558 = .data:0x00000558; // type:object size:0x14 data:string -lbl_1_data_56C = .data:0x0000056C; // type:object size:0x14 -lbl_1_data_580 = .data:0x00000580; // type:object size:0x2 data:2byte -lbl_1_data_582 = .data:0x00000582; // type:object size:0x12 -lbl_1_data_594 = .data:0x00000594; // type:object size:0x40 -lbl_1_data_5D4 = .data:0x000005D4; // type:object size:0x4 data:4byte -lbl_1_data_5D8 = .data:0x000005D8; // type:object size:0x4 data:4byte -lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x10 -lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x7 data:string -lbl_1_data_5F3 = .data:0x000005F3; // type:object size:0x7 data:string -lbl_1_data_5FA = .data:0x000005FA; // type:object size:0xA -lbl_1_data_604 = .data:0x00000604; // type:object size:0xC -lbl_1_data_610 = .data:0x00000610; // type:object size:0x10 -lbl_1_data_620 = .data:0x00000620; // type:object size:0x5 data:string -lbl_1_data_625 = .data:0x00000625; // type:object size:0x5 data:string -lbl_1_data_62A = .data:0x0000062A; // type:object size:0x5 data:string -lbl_1_data_62F = .data:0x0000062F; // type:object size:0x4 data:string -lbl_1_data_633 = .data:0x00000633; // type:object size:0x1 data:byte -lbl_1_data_634 = .data:0x00000634; // type:object size:0x24 -lbl_1_data_658 = .data:0x00000658; // type:object size:0x24 -lbl_1_data_67C = .data:0x0000067C; // type:object size:0x14 -lbl_1_data_690 = .data:0x00000690; // type:object size:0x2D0 -lbl_1_data_960 = .data:0x00000960; // type:object size:0x2D0 -lbl_1_data_C30 = .data:0x00000C30; // type:object size:0x2D0 -lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x8 -lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x38 -lbl_1_data_F40 = .data:0x00000F40; // type:object size:0x20 -lbl_1_data_F60 = .data:0x00000F60; // type:object size:0x20 -lbl_1_data_F80 = .data:0x00000F80; // type:object size:0x7 data:string -lbl_1_data_F87 = .data:0x00000F87; // type:object size:0x5 data:string -lbl_1_data_F8C = .data:0x00000F8C; // type:object size:0x5 data:string -lbl_1_data_F91 = .data:0x00000F91; // type:object size:0x5 data:string -lbl_1_data_F96 = .data:0x00000F96; // type:object size:0x6 -lbl_1_data_F9C = .data:0x00000F9C; // type:object size:0x10 data:4byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x1 data:byte -lbl_1_bss_29 = .bss:0x00000029; // type:object size:0x1 data:byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x5A0 -lbl_1_bss_5CC = .bss:0x000005CC; // type:object size:0x2 data:2byte -lbl_1_bss_5D0 = .bss:0x000005D0; // type:object size:0x30 -lbl_1_bss_600 = .bss:0x00000600; // type:object size:0x18 -lbl_1_bss_618 = .bss:0x00000618; // type:object size:0xC data:4byte -lbl_1_bss_624 = .bss:0x00000624; // type:object size:0xC data:float -lbl_1_bss_630 = .bss:0x00000630; // type:object size:0xC data:4byte -lbl_1_bss_63C = .bss:0x0000063C; // type:object size:0x4 data:float -lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x4 data:float -lbl_1_bss_644 = .bss:0x00000644; // type:object size:0x4 data:float -lbl_1_bss_648 = .bss:0x00000648; // type:object size:0xC data:4byte -lbl_1_bss_654 = .bss:0x00000654; // type:object size:0xC data:float -lbl_1_bss_660 = .bss:0x00000660; // type:object size:0xC data:float -lbl_1_bss_66C = .bss:0x0000066C; // type:object size:0x4 data:float -lbl_1_bss_670 = .bss:0x00000670; // type:object size:0x4 data:float -lbl_1_bss_674 = .bss:0x00000674; // type:object size:0x4 data:float -lbl_1_bss_678 = .bss:0x00000678; // type:object size:0x30 -lbl_1_bss_6A8 = .bss:0x000006A8; // type:object size:0x4 data:float -lbl_1_bss_6AC = .bss:0x000006AC; // type:object size:0x2 data:2byte -lbl_1_bss_6AE = .bss:0x000006AE; // type:object size:0x2 data:2byte -lbl_1_bss_6B0 = .bss:0x000006B0; // type:object size:0x1 data:byte -lbl_1_bss_6B1 = .bss:0x000006B1; // type:object size:0x1 data:byte -lbl_1_bss_6B2 = .bss:0x000006B2; // type:object size:0x1 data:byte -lbl_1_bss_6B3 = .bss:0x000006B3; // type:object size:0x1 data:byte -lbl_1_bss_6B4 = .bss:0x000006B4; // type:object size:0x1 data:byte -lbl_1_bss_6B6 = .bss:0x000006B6; // type:object size:0xA data:2byte -lbl_1_bss_6C0 = .bss:0x000006C0; // type:object size:0x4 data:4byte -lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x44 data:2byte -lbl_1_bss_708 = .bss:0x00000708; // type:object size:0x2 data:2byte -lbl_1_bss_70C = .bss:0x0000070C; // type:object size:0x4 data:4byte -lbl_1_bss_710 = .bss:0x00000710; // type:object size:0x4 data:4byte -lbl_1_bss_714 = .bss:0x00000714; // type:object size:0xC -lbl_1_bss_720 = .bss:0x00000720; // type:object size:0x4 data:4byte -lbl_1_bss_724 = .bss:0x00000724; // type:object size:0x4 data:4byte -lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x2 data:2byte -lbl_1_bss_72A = .bss:0x0000072A; // type:object size:0x2 data:2byte -lbl_1_bss_72C = .bss:0x0000072C; // type:object size:0x4 data:4byte -lbl_1_bss_730 = .bss:0x00000730; // type:object size:0x4 data:4byte -lbl_1_bss_734 = .bss:0x00000734; // type:object size:0x4 data:4byte -lbl_1_bss_738 = .bss:0x00000738; // type:object size:0xC data:float -lbl_1_bss_744 = .bss:0x00000744; // type:object size:0x2 data:2byte -lbl_1_bss_748 = .bss:0x00000748; // type:object size:0x4 data:4byte -lbl_1_bss_74C = .bss:0x0000074C; // type:object size:0x4 data:4byte -lbl_1_bss_750 = .bss:0x00000750; // type:object size:0x2 data:2byte -lbl_1_bss_754 = .bss:0x00000754; // type:object size:0x4 data:float -lbl_1_bss_758 = .bss:0x00000758; // type:object size:0x4 data:4byte -lbl_1_bss_75C = .bss:0x0000075C; // type:object size:0x4 data:4byte -lbl_1_bss_760 = .bss:0x00000760; // type:object size:0x28 -lbl_1_bss_788 = .bss:0x00000788; // type:object size:0x2 data:2byte -lbl_1_bss_78A = .bss:0x0000078A; // type:object size:0x6 data:2byte -lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x6 data:2byte -lbl_1_bss_796 = .bss:0x00000796; // type:object size:0x2 data:2byte -lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x4 data:4byte -lbl_1_bss_79C = .bss:0x0000079C; // type:object size:0x4 data:4byte -lbl_1_bss_7A0 = .bss:0x000007A0; // type:object size:0x4 data:4byte -lbl_1_bss_7A4 = .bss:0x000007A4; // type:object size:0x4 data:4byte -lbl_1_bss_7A8 = .bss:0x000007A8; // type:object size:0x2 data:2byte -lbl_1_bss_7AA = .bss:0x000007AA; // type:object size:0x2 data:2byte -lbl_1_bss_7AC = .bss:0x000007AC; // type:object size:0x8 data:4byte -lbl_1_bss_7B4 = .bss:0x000007B4; // type:object size:0x2 data:2byte -lbl_1_bss_7B8 = .bss:0x000007B8; // type:object size:0x4 data:4byte -lbl_1_bss_7BC = .bss:0x000007BC; // type:object size:0x8 data:4byte -lbl_1_bss_7C4 = .bss:0x000007C4; // type:object size:0xC data:float -lbl_1_bss_7D0 = .bss:0x000007D0; // type:object size:0x2 data:2byte -lbl_1_bss_7D2 = .bss:0x000007D2; // type:object size:0x2 data:2byte -lbl_1_bss_7D4 = .bss:0x000007D4; // type:object size:0x2 data:2byte -lbl_1_bss_7D6 = .bss:0x000007D6; // type:object size:0x2 data:2byte -lbl_1_bss_7D8 = .bss:0x000007D8; // type:object size:0xC data:4byte -lbl_1_bss_7E4 = .bss:0x000007E4; // type:object size:0x4 data:4byte -lbl_1_bss_7E8 = .bss:0x000007E8; // type:object size:0x4 data:float -lbl_1_bss_7EC = .bss:0x000007EC; // type:object size:0x4 data:float -lbl_1_bss_7F0 = .bss:0x000007F0; // type:object size:0x4 data:4byte -lbl_1_bss_7F4 = .bss:0x000007F4; // type:object size:0x4 data:4byte -lbl_1_bss_7F8 = .bss:0x000007F8; // type:object size:0x4 data:4byte -lbl_1_bss_7FC = .bss:0x000007FC; // type:object size:0x10 data:4byte -lbl_1_bss_80C = .bss:0x0000080C; // type:object size:0xC data:float -lbl_1_bss_818 = .bss:0x00000818; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/w02Dll/splits.txt b/config/GMPJ01_00/rels/w02Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/w02Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w02Dll/symbols.txt b/config/GMPJ01_00/rels/w02Dll/symbols.txt deleted file mode 100644 index 2969cbd4..00000000 --- a/config/GMPJ01_00/rels/w02Dll/symbols.txt +++ /dev/null @@ -1,456 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x4F4 -fn_1_5D4 = .text:0x000005D4; // type:function size:0x158 -fn_1_72C = .text:0x0000072C; // type:function size:0x44 -fn_1_770 = .text:0x00000770; // type:function size:0x4 -fn_1_774 = .text:0x00000774; // type:function size:0x8C -fn_1_800 = .text:0x00000800; // type:function size:0x12C -fn_1_92C = .text:0x0000092C; // type:function size:0x24 -fn_1_950 = .text:0x00000950; // type:function size:0x4 -fn_1_954 = .text:0x00000954; // type:function size:0x3C -fn_1_990 = .text:0x00000990; // type:function size:0x2C0 -fn_1_C50 = .text:0x00000C50; // type:function size:0x420 -fn_1_1070 = .text:0x00001070; // type:function size:0x38 -fn_1_10A8 = .text:0x000010A8; // type:function size:0x80 -fn_1_1128 = .text:0x00001128; // type:function size:0xF4 -fn_1_121C = .text:0x0000121C; // type:function size:0x38 -fn_1_1254 = .text:0x00001254; // type:function size:0x17C -fn_1_13D0 = .text:0x000013D0; // type:function size:0x148 -fn_1_1518 = .text:0x00001518; // type:function size:0x5C -fn_1_1574 = .text:0x00001574; // type:function size:0x220 -fn_1_1794 = .text:0x00001794; // type:function size:0x60 -fn_1_17F4 = .text:0x000017F4; // type:function size:0x5C -fn_1_1850 = .text:0x00001850; // type:function size:0x744 -fn_1_1F94 = .text:0x00001F94; // type:function size:0x9C -fn_1_2030 = .text:0x00002030; // type:function size:0xD0 -fn_1_2100 = .text:0x00002100; // type:function size:0x120 -fn_1_2220 = .text:0x00002220; // type:function size:0x9C -fn_1_22BC = .text:0x000022BC; // type:function size:0x80 -fn_1_233C = .text:0x0000233C; // type:function size:0x78 -fn_1_23B4 = .text:0x000023B4; // type:function size:0x48 -fn_1_23FC = .text:0x000023FC; // type:function size:0x1D4 -fn_1_25D0 = .text:0x000025D0; // type:function size:0xC4 -fn_1_2694 = .text:0x00002694; // type:function size:0x98 -fn_1_272C = .text:0x0000272C; // type:function size:0x104 -fn_1_2830 = .text:0x00002830; // type:function size:0x3B4 -fn_1_2BE4 = .text:0x00002BE4; // type:function size:0x120 -fn_1_2D04 = .text:0x00002D04; // type:function size:0xC34 -fn_1_3938 = .text:0x00003938; // type:function size:0x14 -fn_1_394C = .text:0x0000394C; // type:function size:0xA8 -fn_1_39F4 = .text:0x000039F4; // type:function size:0x200 -fn_1_3BF4 = .text:0x00003BF4; // type:function size:0x318 -fn_1_3F0C = .text:0x00003F0C; // type:function size:0x58 -fn_1_3F64 = .text:0x00003F64; // type:function size:0x30 -fn_1_3F94 = .text:0x00003F94; // type:function size:0xBC -fn_1_4050 = .text:0x00004050; // type:function size:0xB0 -fn_1_4100 = .text:0x00004100; // type:function size:0xB8 -fn_1_41B8 = .text:0x000041B8; // type:function size:0x1C0 -fn_1_4378 = .text:0x00004378; // type:function size:0x320 -fn_1_4698 = .text:0x00004698; // type:function size:0x50 -fn_1_46E8 = .text:0x000046E8; // type:function size:0xA34 -fn_1_511C = .text:0x0000511C; // type:function size:0x98 -fn_1_51B4 = .text:0x000051B4; // type:function size:0xDC -fn_1_5290 = .text:0x00005290; // type:function size:0x128 -fn_1_53B8 = .text:0x000053B8; // type:function size:0x27C -fn_1_5634 = .text:0x00005634; // type:function size:0x234 -fn_1_5868 = .text:0x00005868; // type:function size:0x258 -fn_1_5AC0 = .text:0x00005AC0; // type:function size:0x1C4 -fn_1_5C84 = .text:0x00005C84; // type:function size:0x74 -fn_1_5CF8 = .text:0x00005CF8; // type:function size:0x30 -fn_1_5D28 = .text:0x00005D28; // type:function size:0x1E0 -fn_1_5F08 = .text:0x00005F08; // type:function size:0x58 -fn_1_5F60 = .text:0x00005F60; // type:function size:0x30 -fn_1_5F90 = .text:0x00005F90; // type:function size:0x9C -fn_1_602C = .text:0x0000602C; // type:function size:0x40 -fn_1_606C = .text:0x0000606C; // type:function size:0x100 -fn_1_616C = .text:0x0000616C; // type:function size:0xDC -fn_1_6248 = .text:0x00006248; // type:function size:0x868 -fn_1_6AB0 = .text:0x00006AB0; // type:function size:0x1F4 -fn_1_6CA4 = .text:0x00006CA4; // type:function size:0x60 -fn_1_6D04 = .text:0x00006D04; // type:function size:0x130 -fn_1_6E34 = .text:0x00006E34; // type:function size:0x74 -fn_1_6EA8 = .text:0x00006EA8; // type:function size:0x43C -fn_1_72E4 = .text:0x000072E4; // type:function size:0x48 -fn_1_732C = .text:0x0000732C; // type:function size:0x2C -fn_1_7358 = .text:0x00007358; // type:function size:0x70 -fn_1_73C8 = .text:0x000073C8; // type:function size:0x11C -fn_1_74E4 = .text:0x000074E4; // type:function size:0x26C -fn_1_7750 = .text:0x00007750; // type:function size:0xC8 -fn_1_7818 = .text:0x00007818; // type:function size:0x80 -fn_1_7898 = .text:0x00007898; // type:function size:0x124 -fn_1_79BC = .text:0x000079BC; // type:function size:0x888 -fn_1_8244 = .text:0x00008244; // type:function size:0x32C -fn_1_8570 = .text:0x00008570; // type:function size:0x8C -fn_1_85FC = .text:0x000085FC; // type:function size:0x7B0 -fn_1_8DAC = .text:0x00008DAC; // type:function size:0x8C -fn_1_8E38 = .text:0x00008E38; // type:function size:0x418 -fn_1_9250 = .text:0x00009250; // type:function size:0x178 -fn_1_93C8 = .text:0x000093C8; // type:function size:0xE4 -fn_1_94AC = .text:0x000094AC; // type:function size:0x14 -fn_1_94C0 = .text:0x000094C0; // type:function size:0x418 -fn_1_98D8 = .text:0x000098D8; // type:function size:0x5EC -fn_1_9EC4 = .text:0x00009EC4; // type:function size:0x694 -fn_1_A558 = .text:0x0000A558; // type:function size:0x390 -fn_1_A8E8 = .text:0x0000A8E8; // type:function size:0xB68 -fn_1_B450 = .text:0x0000B450; // type:function size:0x458 -fn_1_B8A8 = .text:0x0000B8A8; // type:function size:0x288 -fn_1_BB30 = .text:0x0000BB30; // type:function size:0xEC -fn_1_BC1C = .text:0x0000BC1C; // type:function size:0xE0 -fn_1_BCFC = .text:0x0000BCFC; // type:function size:0x178 -fn_1_BE74 = .text:0x0000BE74; // type:function size:0x14 -fn_1_BE88 = .text:0x0000BE88; // type:function size:0x280 -fn_1_C108 = .text:0x0000C108; // type:function size:0xBFC -fn_1_CD04 = .text:0x0000CD04; // type:function size:0x6A8 -fn_1_D3AC = .text:0x0000D3AC; // type:function size:0x518 -fn_1_D8C4 = .text:0x0000D8C4; // type:function size:0x684 -fn_1_DF48 = .text:0x0000DF48; // type:function size:0x364 -fn_1_E2AC = .text:0x0000E2AC; // type:function size:0x64 -fn_1_E310 = .text:0x0000E310; // type:function size:0x10C -fn_1_E41C = .text:0x0000E41C; // type:function size:0xB8 -_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:0x8 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:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0xC data:4byte -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x18 data:4byte -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x24 data:4byte -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x28 data:4byte -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -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:double -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_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:byte -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0xC data:4byte -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 -lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte -lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte -lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte -lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte -lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 -lbl_1_data_290 = .data:0x00000290; // type:object size:0x18 -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x12 data:string -lbl_1_data_2BA = .data:0x000002BA; // type:object size:0xE data:string -lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0x10 data:string -lbl_1_data_2D8 = .data:0x000002D8; // type:object size:0x50 -lbl_1_data_328 = .data:0x00000328; // type:object size:0x1D data:string -lbl_1_data_345 = .data:0x00000345; // type:object size:0x1B data:string -lbl_1_data_360 = .data:0x00000360; // type:object size:0x11 data:string -lbl_1_data_371 = .data:0x00000371; // type:object size:0x7 -lbl_1_data_378 = .data:0x00000378; // type:object size:0x24 -lbl_1_data_39C = .data:0x0000039C; // type:object size:0x24 -lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x24 -lbl_1_data_3E4 = .data:0x000003E4; // type:object size:0x20 -lbl_1_data_404 = .data:0x00000404; // type:object size:0x20 -lbl_1_data_424 = .data:0x00000424; // type:object size:0x4 -lbl_1_data_428 = .data:0x00000428; // type:object size:0x38 -lbl_1_data_460 = .data:0x00000460; // type:object size:0x5 data:string -lbl_1_data_465 = .data:0x00000465; // type:object size:0x6 data:string -lbl_1_data_46B = .data:0x0000046B; // type:object size:0x9 -lbl_1_data_474 = .data:0x00000474; // type:object size:0xC -lbl_1_data_480 = .data:0x00000480; // type:object size:0x10 -lbl_1_data_490 = .data:0x00000490; // type:object size:0x20 -lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x20 -lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0x40 -lbl_1_data_510 = .data:0x00000510; // type:object size:0x14 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0xC -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0xC -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte -lbl_1_bss_2E = .bss:0x0000002E; // type:object size:0x2 data:2byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x20 data:2byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x28 data:2byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x2 data:2byte -lbl_1_bss_86 = .bss:0x00000086; // type:object size:0xE data:2byte -lbl_1_bss_94 = .bss:0x00000094; // type:object size:0xC data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x2 data:2byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte -lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte -lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0xC -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x6 -lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x6 -lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte -lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0xC -lbl_1_bss_D8 = .bss:0x000000D8; // type:object size:0x4 data:4byte -lbl_1_bss_DC = .bss:0x000000DC; // type:object size:0x24 -lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte -lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte -lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte -lbl_1_bss_10C = .bss:0x0000010C; // type:object size:0x4 data:4byte -lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:float -lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:float -lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x24 -lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0x24 -lbl_1_bss_160 = .bss:0x00000160; // type:object size:0x24 data:float -lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x6 data:2byte -lbl_1_bss_18A = .bss:0x0000018A; // type:object size:0x6 data:2byte -lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x6 data:2byte -lbl_1_bss_196 = .bss:0x00000196; // type:object size:0x2 data:2byte -lbl_1_bss_198 = .bss:0x00000198; // type:object size:0x8 data:2byte -lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0xC data:float -lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x2 data:2byte -lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0xC data:float -lbl_1_bss_1BC = .bss:0x000001BC; // type:object size:0x4 data:float -lbl_1_bss_1C0 = .bss:0x000001C0; // type:object size:0x2 data:2byte -lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0x20 -lbl_1_bss_1E4 = .bss:0x000001E4; // type:object size:0xB4 -lbl_1_bss_298 = .bss:0x00000298; // type:object size:0xB4 data:float -lbl_1_bss_34C = .bss:0x0000034C; // type:object size:0x1E -lbl_1_bss_36A = .bss:0x0000036A; // type:object size:0x2 data:2byte -lbl_1_bss_36C = .bss:0x0000036C; // type:object size:0x2 data:2byte -lbl_1_bss_36E = .bss:0x0000036E; // type:object size:0x2 data:2byte -lbl_1_bss_370 = .bss:0x00000370; // type:object size:0x2 data:2byte -lbl_1_bss_374 = .bss:0x00000374; // type:object size:0x4 data:4byte -lbl_1_bss_378 = .bss:0x00000378; // type:object size:0x8 data:4byte -lbl_1_bss_380 = .bss:0x00000380; // type:object size:0x4 data:float -lbl_1_bss_384 = .bss:0x00000384; // type:object size:0x4 data:4byte -lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte -lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x4 data:4byte diff --git a/config/GMPJ01_00/rels/w03Dll/splits.txt b/config/GMPJ01_00/rels/w03Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/w03Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w03Dll/symbols.txt b/config/GMPJ01_00/rels/w03Dll/symbols.txt deleted file mode 100644 index d0fda24e..00000000 --- a/config/GMPJ01_00/rels/w03Dll/symbols.txt +++ /dev/null @@ -1,443 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x660 -fn_1_740 = .text:0x00000740; // type:function size:0x144 -fn_1_884 = .text:0x00000884; // type:function size:0x6C -fn_1_8F0 = .text:0x000008F0; // type:function size:0x20 -fn_1_910 = .text:0x00000910; // type:function size:0x164 -fn_1_A74 = .text:0x00000A74; // type:function size:0x84 -fn_1_AF8 = .text:0x00000AF8; // type:function size:0x64 -fn_1_B5C = .text:0x00000B5C; // type:function size:0x198 -fn_1_CF4 = .text:0x00000CF4; // type:function size:0xF8 -fn_1_DEC = .text:0x00000DEC; // type:function size:0x2C4 -fn_1_10B0 = .text:0x000010B0; // type:function size:0x34 -fn_1_10E4 = .text:0x000010E4; // type:function size:0x1E4 -fn_1_12C8 = .text:0x000012C8; // type:function size:0x90 -fn_1_1358 = .text:0x00001358; // type:function size:0x1D4 -fn_1_152C = .text:0x0000152C; // type:function size:0xBC -fn_1_15E8 = .text:0x000015E8; // type:function size:0x68 -fn_1_1650 = .text:0x00001650; // type:function size:0x38C -fn_1_19DC = .text:0x000019DC; // type:function size:0x340 -fn_1_1D1C = .text:0x00001D1C; // type:function size:0x1B8 -fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x20C -fn_1_20E0 = .text:0x000020E0; // type:function size:0x600 -fn_1_26E0 = .text:0x000026E0; // type:function size:0x138 -fn_1_2818 = .text:0x00002818; // type:function size:0x118 -fn_1_2930 = .text:0x00002930; // type:function size:0x110 -fn_1_2A40 = .text:0x00002A40; // type:function size:0x80 -fn_1_2AC0 = .text:0x00002AC0; // type:function size:0x84 -fn_1_2B44 = .text:0x00002B44; // type:function size:0x514 -fn_1_3058 = .text:0x00003058; // type:function size:0x44 -fn_1_309C = .text:0x0000309C; // type:function size:0xA0 -fn_1_313C = .text:0x0000313C; // type:function size:0xDC -fn_1_3218 = .text:0x00003218; // type:function size:0xEC -fn_1_3304 = .text:0x00003304; // type:function size:0x174 -fn_1_3478 = .text:0x00003478; // type:function size:0x39C -fn_1_3814 = .text:0x00003814; // type:function size:0x154 -fn_1_3968 = .text:0x00003968; // type:function size:0x520 -fn_1_3E88 = .text:0x00003E88; // type:function size:0xD4 -fn_1_3F5C = .text:0x00003F5C; // type:function size:0x3F8 -fn_1_4354 = .text:0x00004354; // type:function size:0xD0 -fn_1_4424 = .text:0x00004424; // type:function size:0x4C8 -fn_1_48EC = .text:0x000048EC; // type:function size:0x1B0 -fn_1_4A9C = .text:0x00004A9C; // type:function size:0x20 -fn_1_4ABC = .text:0x00004ABC; // type:function size:0x250 -fn_1_4D0C = .text:0x00004D0C; // type:function size:0x54 -fn_1_4D60 = .text:0x00004D60; // type:function size:0x1C4 -fn_1_4F24 = .text:0x00004F24; // type:function size:0x1B0 -fn_1_50D4 = .text:0x000050D4; // type:function size:0x764 -fn_1_5838 = .text:0x00005838; // type:function size:0x290 -fn_1_5AC8 = .text:0x00005AC8; // type:function size:0x194 -fn_1_5C5C = .text:0x00005C5C; // type:function size:0x3D0 -fn_1_602C = .text:0x0000602C; // type:function size:0x178 -fn_1_61A4 = .text:0x000061A4; // type:function size:0xF8 -fn_1_629C = .text:0x0000629C; // type:function size:0x34 -fn_1_62D0 = .text:0x000062D0; // type:function size:0x2C -fn_1_62FC = .text:0x000062FC; // type:function size:0xF8 -fn_1_63F4 = .text:0x000063F4; // type:function size:0xA0 -fn_1_6494 = .text:0x00006494; // type:function size:0x204 -fn_1_6698 = .text:0x00006698; // type:function size:0xC4 -fn_1_675C = .text:0x0000675C; // type:function size:0x9C -fn_1_67F8 = .text:0x000067F8; // type:function size:0x8C -fn_1_6884 = .text:0x00006884; // type:function size:0x14 -fn_1_6898 = .text:0x00006898; // type:function size:0x300 -fn_1_6B98 = .text:0x00006B98; // type:function size:0x404 -fn_1_6F9C = .text:0x00006F9C; // type:function size:0x3C0 -fn_1_735C = .text:0x0000735C; // type:function size:0x320 -fn_1_767C = .text:0x0000767C; // type:function size:0x168 -fn_1_77E4 = .text:0x000077E4; // type:function size:0x78 -fn_1_785C = .text:0x0000785C; // type:function size:0x184 -fn_1_79E0 = .text:0x000079E0; // type:function size:0xDC -fn_1_7ABC = .text:0x00007ABC; // type:function size:0x9C -fn_1_7B58 = .text:0x00007B58; // type:function size:0x50 -fn_1_7BA8 = .text:0x00007BA8; // type:function size:0x90 -fn_1_7C38 = .text:0x00007C38; // type:function size:0x60 -fn_1_7C98 = .text:0x00007C98; // type:function size:0x80 -fn_1_7D18 = .text:0x00007D18; // type:function size:0x428 -fn_1_8140 = .text:0x00008140; // type:function size:0xA0 -fn_1_81E0 = .text:0x000081E0; // type:function size:0x254 -fn_1_8434 = .text:0x00008434; // type:function size:0x74 -fn_1_84A8 = .text:0x000084A8; // type:function size:0x88 -fn_1_8530 = .text:0x00008530; // type:function size:0x168 -fn_1_8698 = .text:0x00008698; // type:function size:0x570 -fn_1_8C08 = .text:0x00008C08; // type:function size:0x23C -fn_1_8E44 = .text:0x00008E44; // type:function size:0x200 -fn_1_9044 = .text:0x00009044; // type:function size:0x174 -fn_1_91B8 = .text:0x000091B8; // type:function size:0x78 -fn_1_9230 = .text:0x00009230; // type:function size:0x154 -fn_1_9384 = .text:0x00009384; // type:function size:0xF0 -fn_1_9474 = .text:0x00009474; // type:function size:0x144 -fn_1_95B8 = .text:0x000095B8; // type:function size:0x240 -fn_1_97F8 = .text:0x000097F8; // type:function size:0x224 -fn_1_9A1C = .text:0x00009A1C; // type:function size:0x60 -fn_1_9A7C = .text:0x00009A7C; // type:function size:0x20 -fn_1_9A9C = .text:0x00009A9C; // type:function size:0x4 -fn_1_9AA0 = .text:0x00009AA0; // type:function size:0x90 -fn_1_9B30 = .text:0x00009B30; // type:function size:0x15C -fn_1_9C8C = .text:0x00009C8C; // type:function size:0x68 -fn_1_9CF4 = .text:0x00009CF4; // type:function size:0x284 -fn_1_9F78 = .text:0x00009F78; // type:function size:0x6C -fn_1_9FE4 = .text:0x00009FE4; // type:function size:0x468 -fn_1_A44C = .text:0x0000A44C; // type:function size:0x194 -fn_1_A5E0 = .text:0x0000A5E0; // type:function size:0xD0 -fn_1_A6B0 = .text:0x0000A6B0; // type:function size:0xF0 -fn_1_A7A0 = .text:0x0000A7A0; // type:function size:0x10C -fn_1_A8AC = .text:0x0000A8AC; // type:function size:0xE8 -fn_1_A994 = .text:0x0000A994; // type:function size:0x184 -fn_1_AB18 = .text:0x0000AB18; // type:function size:0xB8 -fn_1_ABD0 = .text:0x0000ABD0; // type:function size:0x108 -fn_1_ACD8 = .text:0x0000ACD8; // type:function size:0x148 -fn_1_AE20 = .text:0x0000AE20; // type:function size:0x2C -fn_1_AE4C = .text:0x0000AE4C; // type:function size:0xD8 -fn_1_AF24 = .text:0x0000AF24; // type:function size:0x180 -fn_1_B0A4 = .text:0x0000B0A4; // type:function size:0x2AC -fn_1_B350 = .text:0x0000B350; // type:function size:0x15C -fn_1_B4AC = .text:0x0000B4AC; // type:function size:0x1DC -fn_1_B688 = .text:0x0000B688; // type:function size:0xC0 -fn_1_B748 = .text:0x0000B748; // type:function size:0x1A0 -fn_1_B8E8 = .text:0x0000B8E8; // type:function size:0x260 -fn_1_BB48 = .text:0x0000BB48; // type:function size:0x2C -fn_1_BB74 = .text:0x0000BB74; // type:function size:0x50 -fn_1_BBC4 = .text:0x0000BBC4; // type:function size:0x34 -fn_1_BBF8 = .text:0x0000BBF8; // type:function size:0x84 -fn_1_BC7C = .text:0x0000BC7C; // type:function size:0x130 -fn_1_BDAC = .text:0x0000BDAC; // type:function size:0x84 -fn_1_BE30 = .text:0x0000BE30; // type:function size:0x418 -_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_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC data:4byte -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x24 data:4byte -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x6 data:2byte -lbl_1_rodata_BE = .rodata:0x000000BE; // type:object size:0x1 data:byte -lbl_1_rodata_C2 = .rodata:0x000000C2; // type:object size:0x6 data:byte -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x20 data:4byte -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:4byte -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x10 data:4byte -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -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_200 = .rodata:0x00000200; // type:object size:0x8 data:double -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:0x8 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E0 -lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x2 data:2byte -lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0x2 data:2byte -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x2 data:2byte -lbl_1_data_1E6 = .data:0x000001E6; // type:object size:0x2 data:2byte -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x2 data:2byte -lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x20 data:float -lbl_1_data_20C = .data:0x0000020C; // type:object size:0x8 -lbl_1_data_214 = .data:0x00000214; // type:object size:0x8 -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x10 -lbl_1_data_22C = .data:0x0000022C; // type:object size:0x30 -lbl_1_data_25C = .data:0x0000025C; // type:object size:0x10 -lbl_1_data_26C = .data:0x0000026C; // type:object size:0x14 -lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte -lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte -lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte -lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte -lbl_1_data_288 = .data:0x00000288; // type:object size:0x4 data:4byte -lbl_1_data_28C = .data:0x0000028C; // type:object size:0x4 -lbl_1_data_290 = .data:0x00000290; // type:object size:0x20 -lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x20 -lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x20 -lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x20 -lbl_1_data_310 = .data:0x00000310; // type:object size:0x2 data:2byte -lbl_1_data_312 = .data:0x00000312; // type:object size:0x2 data:2byte -lbl_1_data_314 = .data:0x00000314; // type:object size:0x2 data:2byte -lbl_1_data_316 = .data:0x00000316; // type:object size:0x2 data:2byte -lbl_1_data_318 = .data:0x00000318; // type:object size:0x18 -lbl_1_data_330 = .data:0x00000330; // type:object size:0xD data:string -lbl_1_data_33D = .data:0x0000033D; // type:object size:0x6 data:string -lbl_1_data_343 = .data:0x00000343; // type:object size:0x9 -lbl_1_data_34C = .data:0x0000034C; // type:object size:0x8 -lbl_1_data_354 = .data:0x00000354; // type:object size:0x8 -lbl_1_data_35C = .data:0x0000035C; // type:object size:0xC -lbl_1_data_368 = .data:0x00000368; // type:object size:0x20 -lbl_1_data_388 = .data:0x00000388; // type:object size:0x2 data:2byte -lbl_1_data_38A = .data:0x0000038A; // type:object size:0x2 data:2byte -lbl_1_data_38C = .data:0x0000038C; // type:object size:0x2 data:2byte -lbl_1_data_390 = .data:0x00000390; // type:object size:0x10 -lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0xB data:string -lbl_1_data_3AB = .data:0x000003AB; // type:object size:0x6 data:string -lbl_1_data_3B1 = .data:0x000003B1; // type:object size:0x7 -lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x48 -lbl_1_data_400 = .data:0x00000400; // type:object size:0x3 data:string -lbl_1_data_403 = .data:0x00000403; // type:object size:0xD -lbl_1_data_410 = .data:0x00000410; // type:object size:0x8 data:string -lbl_1_data_418 = .data:0x00000418; // type:object size:0x8 data:string -lbl_1_data_420 = .data:0x00000420; // type:object size:0x8 data:string -lbl_1_data_428 = .data:0x00000428; // type:object size:0x8 data:string -lbl_1_data_430 = .data:0x00000430; // type:object size:0x8 data:string -lbl_1_data_438 = .data:0x00000438; // type:object size:0x18 -lbl_1_data_450 = .data:0x00000450; // type:object size:0x4 data:4byte -lbl_1_data_454 = .data:0x00000454; // type:object size:0x2 data:2byte -lbl_1_data_456 = .data:0x00000456; // type:object size:0x2 data:2byte -lbl_1_data_458 = .data:0x00000458; // type:object size:0x2 data:2byte -lbl_1_data_45C = .data:0x0000045C; // type:object size:0xC -lbl_1_data_468 = .data:0x00000468; // type:object size:0x8 -lbl_1_data_470 = .data:0x00000470; // type:object size:0x20 -lbl_1_data_490 = .data:0x00000490; // type:object size:0x20 -lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x1 data:byte -lbl_1_data_4B4 = .data:0x000004B4; // type:object size:0x14 -lbl_1_data_4C8 = .data:0x000004C8; // type:object size:0x6 -lbl_1_data_4CE = .data:0x000004CE; // type:object size:0xA -lbl_1_data_4D8 = .data:0x000004D8; // type:object size:0x2 data:2byte -lbl_1_data_4DA = .data:0x000004DA; // type:object size:0x2 data:2byte -lbl_1_data_4DC = .data:0x000004DC; // type:object size:0x2 data:2byte -lbl_1_data_4E0 = .data:0x000004E0; // type:object size:0x4 data:4byte -lbl_1_data_4E4 = .data:0x000004E4; // type:object size:0x2 data:2byte -lbl_1_data_4E6 = .data:0x000004E6; // type:object size:0xE -lbl_1_data_4F4 = .data:0x000004F4; // type:object size:0x5 data:string -lbl_1_data_4F9 = .data:0x000004F9; // type:object size:0x6 data:string -lbl_1_data_4FF = .data:0x000004FF; // type:object size:0x9 -lbl_1_data_508 = .data:0x00000508; // type:object size:0xC -lbl_1_data_514 = .data:0x00000514; // type:object size:0x38 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x1C data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x1 data:byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0xC -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x20 -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x2 data:2byte -lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 data:2byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x2 data:2byte -lbl_1_bss_6E = .bss:0x0000006E; // type:object size:0x1 data:byte -lbl_1_bss_6F = .bss:0x0000006F; // type:object size:0x1 data:byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x1 data:byte -lbl_1_bss_7D = .bss:0x0000007D; // type:object size:0x1 data:byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0xA0 -lbl_1_bss_120 = .bss:0x00000120; // type:object size:0x4 data:4byte -lbl_1_bss_124 = .bss:0x00000124; // type:object size:0x4 data:4byte -lbl_1_bss_128 = .bss:0x00000128; // type:object size:0x2 data:2byte -lbl_1_bss_12C = .bss:0x0000012C; // type:object size:0x4 data:4byte -lbl_1_bss_130 = .bss:0x00000130; // type:object size:0x8 -lbl_1_bss_138 = .bss:0x00000138; // type:object size:0x8 data:4byte -lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x4 data:4byte -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x4 data:4byte -lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x4 data:4byte -lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x1 data:byte -lbl_1_bss_14E = .bss:0x0000014E; // type:object size:0x2 data:2byte -lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x30 -lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte -lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x4 data:4byte -lbl_1_bss_188 = .bss:0x00000188; // type:object size:0x4 data:4byte -lbl_1_bss_18C = .bss:0x0000018C; // type:object size:0x1 data:byte -lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte -lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x3 diff --git a/config/GMPJ01_00/rels/w04Dll/splits.txt b/config/GMPJ01_00/rels/w04Dll/splits.txt index 531cd645..d977e9ab 100644 --- a/config/GMPJ01_00/rels/w04Dll/splits.txt +++ b/config/GMPJ01_00/rels/w04Dll/splits.txt @@ -5,3 +5,43 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/board_executor.c: + .text start:0x00000000 end:0x000000E0 + .rodata start:0x00000000 end:0x00000010 + +REL/w04Dll/main.c: + .text start:0x000000E0 end:0x000012FC + .rodata start:0x00000010 end:0x00000040 + .data start:0x00000000 end:0x00000298 + .bss start:0x00000000 end:0x00000038 + +REL/w04Dll/bridge.c: + .text start:0x000012FC end:0x000020EC + .rodata start:0x00000040 end:0x00000098 + .data start:0x00000298 end:0x000002D0 + .bss start:0x00000038 end:0x00000048 + +REL/w04Dll/boo_event.c: + .text start:0x000020EC end:0x00006024 + .rodata start:0x00000098 end:0x00000180 + .data start:0x000002D0 end:0x000003A8 + .bss start:0x00000048 end:0x00000100 + +REL/w04Dll/big_boo.c: + .text start:0x00006024 end:0x0000A0DC + .rodata start:0x00000180 end:0x000002C0 + .data start:0x000003A8 end:0x000004F0 + .bss start:0x00000100 end:0x00000288 + +REL/w04Dll/mg_item.c: + .text start:0x0000A0DC end:0x0000C784 + .rodata start:0x000002C0 end:0x000003A0 + .data start:0x000004F0 end:0x00000588 + .bss start:0x00000288 end:0x000002B0 + +REL/w04Dll/mg_coin.c: + .text start:0x0000C784 end:0x0000E9F0 + .rodata start:0x000003A0 end:0x00000428 + .data start:0x00000588 end:0x0000063F + .bss start:0x000002B0 end:0x00000328 diff --git a/config/GMPJ01_00/rels/w04Dll/symbols.txt b/config/GMPJ01_00/rels/w04Dll/symbols.txt index 662a89da..de97498a 100644 --- a/config/GMPJ01_00/rels/w04Dll/symbols.txt +++ b/config/GMPJ01_00/rels/w04Dll/symbols.txt @@ -1,451 +1,451 @@ fn_1_0 = .text:0x00000000; // type:function size:0x30 _prolog = .text:0x00000030; // type:function size:0x64 scope:global _epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x514 -fn_1_5F4 = .text:0x000005F4; // type:function size:0x15C -fn_1_750 = .text:0x00000750; // type:function size:0x44 -fn_1_794 = .text:0x00000794; // type:function size:0x4 -fn_1_798 = .text:0x00000798; // type:function size:0x64 -fn_1_7FC = .text:0x000007FC; // type:function size:0x134 -fn_1_930 = .text:0x00000930; // type:function size:0x24 -fn_1_954 = .text:0x00000954; // type:function size:0x4 -fn_1_958 = .text:0x00000958; // type:function size:0x3A0 -fn_1_CF8 = .text:0x00000CF8; // type:function size:0x38 -fn_1_D30 = .text:0x00000D30; // type:function size:0x80 -fn_1_DB0 = .text:0x00000DB0; // type:function size:0x28C -fn_1_103C = .text:0x0000103C; // type:function size:0xF4 +BoardCreate = .text:0x000000E0; // type:function size:0x514 +BoardDestroy = .text:0x000005F4; // type:function size:0x15C +fn_1_750 = .text:0x00000750; // type:function size:0x44 scope:local +fn_1_794 = .text:0x00000794; // type:function size:0x4 scope:local +fn_1_798 = .text:0x00000798; // type:function size:0x64 scope:local +fn_1_7FC = .text:0x000007FC; // type:function size:0x134 scope:local +fn_1_930 = .text:0x00000930; // type:function size:0x24 scope:local +fn_1_954 = .text:0x00000954; // type:function size:0x4 scope:local +fn_1_958 = .text:0x00000958; // type:function size:0x3A0 scope:local +fn_1_CF8 = .text:0x00000CF8; // type:function size:0x38 scope:local +fn_1_D30 = .text:0x00000D30; // type:function size:0x80 scope:local +fn_1_DB0 = .text:0x00000DB0; // type:function size:0x28C scope:local +fn_1_103C = .text:0x0000103C; // type:function size:0xF4 scope:local fn_1_1130 = .text:0x00001130; // type:function size:0x1CC fn_1_12FC = .text:0x000012FC; // type:function size:0x2CC fn_1_15C8 = .text:0x000015C8; // type:function size:0x50 -fn_1_1618 = .text:0x00001618; // type:function size:0x19C -fn_1_17B4 = .text:0x000017B4; // type:function size:0x168 -fn_1_191C = .text:0x0000191C; // type:function size:0x27C -fn_1_1B98 = .text:0x00001B98; // type:function size:0x94 -fn_1_1C2C = .text:0x00001C2C; // type:function size:0x234 -fn_1_1E60 = .text:0x00001E60; // type:function size:0x1A8 -fn_1_2008 = .text:0x00002008; // type:function size:0x3C -fn_1_2044 = .text:0x00002044; // type:function size:0x14 +fn_1_1618 = .text:0x00001618; // type:function size:0x19C scope:local +fn_1_17B4 = .text:0x000017B4; // type:function size:0x168 scope:local +fn_1_191C = .text:0x0000191C; // type:function size:0x27C scope:local +fn_1_1B98 = .text:0x00001B98; // type:function size:0x94 scope:local +fn_1_1C2C = .text:0x00001C2C; // type:function size:0x234 scope:local +fn_1_1E60 = .text:0x00001E60; // type:function size:0x1A8 scope:local +fn_1_2008 = .text:0x00002008; // type:function size:0x3C scope:local +fn_1_2044 = .text:0x00002044; // type:function size:0x14 scope:local fn_1_2058 = .text:0x00002058; // type:function size:0x94 -fn_1_20EC = .text:0x000020EC; // type:function size:0x7D0 -fn_1_28BC = .text:0x000028BC; // type:function size:0x2D0 -fn_1_2B8C = .text:0x00002B8C; // type:function size:0x84 -fn_1_2C10 = .text:0x00002C10; // type:function size:0x250 -fn_1_2E60 = .text:0x00002E60; // type:function size:0x88 -fn_1_2EE8 = .text:0x00002EE8; // type:function size:0x6C -fn_1_2F54 = .text:0x00002F54; // type:function size:0x68 -fn_1_2FBC = .text:0x00002FBC; // type:function size:0x20 -fn_1_2FDC = .text:0x00002FDC; // type:function size:0xC8 -fn_1_30A4 = .text:0x000030A4; // type:function size:0x834 -fn_1_38D8 = .text:0x000038D8; // type:function size:0x3C4 -fn_1_3C9C = .text:0x00003C9C; // type:function size:0x90C -fn_1_45A8 = .text:0x000045A8; // type:function size:0x88 -fn_1_4630 = .text:0x00004630; // type:function size:0x50 -fn_1_4680 = .text:0x00004680; // type:function size:0x1C8 -fn_1_4848 = .text:0x00004848; // type:function size:0x7D0 -fn_1_5018 = .text:0x00005018; // type:function size:0x288 -fn_1_52A0 = .text:0x000052A0; // type:function size:0x300 -fn_1_55A0 = .text:0x000055A0; // type:function size:0x14 +fn_1_20EC = .text:0x000020EC; // type:function size:0x7D0 scope:local +fn_1_28BC = .text:0x000028BC; // type:function size:0x2D0 scope:local +fn_1_2B8C = .text:0x00002B8C; // type:function size:0x84 scope:local +fn_1_2C10 = .text:0x00002C10; // type:function size:0x250 scope:local +fn_1_2E60 = .text:0x00002E60; // type:function size:0x88 scope:local +fn_1_2EE8 = .text:0x00002EE8; // type:function size:0x6C scope:local +fn_1_2F54 = .text:0x00002F54; // type:function size:0x68 scope:local +fn_1_2FBC = .text:0x00002FBC; // type:function size:0x20 scope:local +fn_1_2FDC = .text:0x00002FDC; // type:function size:0xC8 scope:local +fn_1_30A4 = .text:0x000030A4; // type:function size:0x834 scope:local +fn_1_38D8 = .text:0x000038D8; // type:function size:0x3C4 scope:local +fn_1_3C9C = .text:0x00003C9C; // type:function size:0x90C scope:local +fn_1_45A8 = .text:0x000045A8; // type:function size:0x88 scope:local +fn_1_4630 = .text:0x00004630; // type:function size:0x50 scope:local +fn_1_4680 = .text:0x00004680; // type:function size:0x1C8 scope:local +fn_1_4848 = .text:0x00004848; // type:function size:0x7D0 scope:local +fn_1_5018 = .text:0x00005018; // type:function size:0x288 scope:local +fn_1_52A0 = .text:0x000052A0; // type:function size:0x300 scope:local +fn_1_55A0 = .text:0x000055A0; // type:function size:0x14 scope:local fn_1_55B4 = .text:0x000055B4; // type:function size:0x94 -fn_1_5648 = .text:0x00005648; // type:function size:0x1E0 -fn_1_5828 = .text:0x00005828; // type:function size:0x7C -fn_1_58A4 = .text:0x000058A4; // type:function size:0xDC -fn_1_5980 = .text:0x00005980; // type:function size:0x44 -fn_1_59C4 = .text:0x000059C4; // type:function size:0x68 -fn_1_5A2C = .text:0x00005A2C; // type:function size:0x5F8 +fn_1_5648 = .text:0x00005648; // type:function size:0x1E0 scope:local +fn_1_5828 = .text:0x00005828; // type:function size:0x7C scope:local +fn_1_58A4 = .text:0x000058A4; // type:function size:0xDC scope:local +fn_1_5980 = .text:0x00005980; // type:function size:0x44 scope:local +fn_1_59C4 = .text:0x000059C4; // type:function size:0x68 scope:local +fn_1_5A2C = .text:0x00005A2C; // type:function size:0x5F8 scope:local fn_1_6024 = .text:0x00006024; // type:function size:0x28C -fn_1_62B0 = .text:0x000062B0; // type:function size:0x628 -fn_1_68D8 = .text:0x000068D8; // type:function size:0x420 -fn_1_6CF8 = .text:0x00006CF8; // type:function size:0x608 -fn_1_7300 = .text:0x00007300; // type:function size:0x27C -fn_1_757C = .text:0x0000757C; // type:function size:0x5C -fn_1_75D8 = .text:0x000075D8; // type:function size:0x2B0 -fn_1_7888 = .text:0x00007888; // type:function size:0x11D8 -fn_1_8A60 = .text:0x00008A60; // type:function size:0xE24 -fn_1_9884 = .text:0x00009884; // type:function size:0x294 -fn_1_9B18 = .text:0x00009B18; // type:function size:0xA8 -fn_1_9BC0 = .text:0x00009BC0; // type:function size:0x3C -fn_1_9BFC = .text:0x00009BFC; // type:function size:0x290 -fn_1_9E8C = .text:0x00009E8C; // type:function size:0x14 -fn_1_9EA0 = .text:0x00009EA0; // type:function size:0x94 -fn_1_9F34 = .text:0x00009F34; // type:function size:0x124 -fn_1_A058 = .text:0x0000A058; // type:function size:0x84 -fn_1_A0DC = .text:0x0000A0DC; // type:function size:0xF8 -fn_1_A1D4 = .text:0x0000A1D4; // type:function size:0x52C -fn_1_A700 = .text:0x0000A700; // type:function size:0xCC -fn_1_A7CC = .text:0x0000A7CC; // type:function size:0x1294 -fn_1_BA60 = .text:0x0000BA60; // type:function size:0x84 -fn_1_BAE4 = .text:0x0000BAE4; // type:function size:0x7BC -fn_1_C2A0 = .text:0x0000C2A0; // type:function size:0xCC -fn_1_C36C = .text:0x0000C36C; // type:function size:0x418 -fn_1_C784 = .text:0x0000C784; // type:function size:0x34 -fn_1_C7B8 = .text:0x0000C7B8; // type:function size:0x7B8 -fn_1_CF70 = .text:0x0000CF70; // type:function size:0x120 -fn_1_D090 = .text:0x0000D090; // type:function size:0x30 -fn_1_D0C0 = .text:0x0000D0C0; // type:function size:0x98 -fn_1_D158 = .text:0x0000D158; // type:function size:0xBC -fn_1_D214 = .text:0x0000D214; // type:function size:0x74 -fn_1_D288 = .text:0x0000D288; // type:function size:0x2B0 -fn_1_D538 = .text:0x0000D538; // type:function size:0x154 -fn_1_D68C = .text:0x0000D68C; // type:function size:0x64 -fn_1_D6F0 = .text:0x0000D6F0; // type:function size:0x64 -fn_1_D754 = .text:0x0000D754; // type:function size:0x894 -fn_1_DFE8 = .text:0x0000DFE8; // type:function size:0x140 -fn_1_E128 = .text:0x0000E128; // type:function size:0x48 -fn_1_E170 = .text:0x0000E170; // type:function size:0x1E8 -fn_1_E358 = .text:0x0000E358; // type:function size:0x14C -fn_1_E4A4 = .text:0x0000E4A4; // type:function size:0x1EC -fn_1_E690 = .text:0x0000E690; // type:function size:0x1D4 -fn_1_E864 = .text:0x0000E864; // type:function size:0x18C +fn_1_62B0 = .text:0x000062B0; // type:function size:0x628 scope:local +fn_1_68D8 = .text:0x000068D8; // type:function size:0x420 scope:local +fn_1_6CF8 = .text:0x00006CF8; // type:function size:0x608 scope:local +fn_1_7300 = .text:0x00007300; // type:function size:0x27C scope:local +fn_1_757C = .text:0x0000757C; // type:function size:0x5C scope:local +fn_1_75D8 = .text:0x000075D8; // type:function size:0x2B0 scope:local +fn_1_7888 = .text:0x00007888; // type:function size:0x11D8 scope:local +fn_1_8A60 = .text:0x00008A60; // type:function size:0xE24 scope:local +fn_1_98A0 = .text:0x00009884; // type:function size:0x294 scope:local +fn_1_9B34 = .text:0x00009B18; // type:function size:0xA8 scope:local +fn_1_9BDC = .text:0x00009BC0; // type:function size:0x3C scope:local +fn_1_9C18 = .text:0x00009BFC; // type:function size:0x290 scope:local +fn_1_9EA8 = .text:0x00009E8C; // type:function size:0x14 scope:local +fn_1_9EBC = .text:0x00009EA0; // type:function size:0x94 +fn_1_9F50 = .text:0x00009F34; // type:function size:0x124 scope:local +fn_1_A074 = .text:0x0000A058; // type:function size:0x84 scope:local +fn_1_A0F8 = .text:0x0000A0DC; // type:function size:0xF8 +fn_1_A1F0 = .text:0x0000A1D4; // type:function size:0x52C +fn_1_A71C = .text:0x0000A700; // type:function size:0xCC scope:local +fn_1_A7E8 = .text:0x0000A7CC; // type:function size:0x1294 scope:local +fn_1_BA7C = .text:0x0000BA60; // type:function size:0x84 +fn_1_BB00 = .text:0x0000BAE4; // type:function size:0x7BC +fn_1_C2BC = .text:0x0000C2A0; // type:function size:0xCC +fn_1_C388 = .text:0x0000C36C; // type:function size:0x418 scope:local +fn_1_C7A0 = .text:0x0000C784; // type:function size:0x34 +fn_1_C7D4 = .text:0x0000C7B8; // type:function size:0x7B8 +fn_1_CF8C = .text:0x0000CF70; // type:function size:0x120 scope:local +fn_1_D0AC = .text:0x0000D090; // type:function size:0x30 scope:local +fn_1_D0DC = .text:0x0000D0C0; // type:function size:0x98 scope:local +fn_1_D174 = .text:0x0000D158; // type:function size:0xBC scope:local +fn_1_D230 = .text:0x0000D214; // type:function size:0x74 scope:local +fn_1_D2A4 = .text:0x0000D288; // type:function size:0x2B0 scope:local +fn_1_D554 = .text:0x0000D538; // type:function size:0x154 scope:local +fn_1_D6A8 = .text:0x0000D68C; // type:function size:0x64 scope:local +fn_1_D70C = .text:0x0000D6F0; // type:function size:0x64 scope:local +fn_1_D770 = .text:0x0000D754; // type:function size:0x894 scope:local +fn_1_E004 = .text:0x0000DFE8; // type:function size:0x140 scope:local +fn_1_E144 = .text:0x0000E128; // type:function size:0x48 scope:local +fn_1_E18C = .text:0x0000E170; // type:function size:0x1E8 scope:local +fn_1_E374 = .text:0x0000E358; // type:function size:0x14C scope:local +fn_1_E4C0 = .text:0x0000E4A4; // type:function size:0x1EC scope:local +fn_1_E6AC = .text:0x0000E690; // type:function size:0x1D4 scope:local +fn_1_E880 = .text:0x0000E864; // type:function size:0x18C scope:local _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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0xC data:4byte -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC data:4byte -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 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:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 -lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte -lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte -lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 data:2byte -lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 data:2byte -lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 -lbl_1_data_290 = .data:0x00000290; // type:object size:0x8 -lbl_1_data_298 = .data:0x00000298; // type:object size:0x8 -lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0xC -lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x24 -lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x20 -lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x4 data:4byte -lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 -lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 -lbl_1_data_334 = .data:0x00000334; // type:object size:0x5 data:string -lbl_1_data_339 = .data:0x00000339; // type:object size:0x5 data:string -lbl_1_data_33E = .data:0x0000033E; // type:object size:0x5 data:string -lbl_1_data_343 = .data:0x00000343; // type:object size:0x5 data:string -lbl_1_data_348 = .data:0x00000348; // type:object size:0x10 -lbl_1_data_358 = .data:0x00000358; // type:object size:0x10 -lbl_1_data_368 = .data:0x00000368; // type:object size:0x8 data:string -lbl_1_data_370 = .data:0x00000370; // type:object size:0x12 data:string -lbl_1_data_382 = .data:0x00000382; // type:object size:0x11 data:string -lbl_1_data_393 = .data:0x00000393; // type:object size:0x15 -lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x8 data:string -lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x9 data:string -lbl_1_data_3B9 = .data:0x000003B9; // type:object size:0x6 data:string -lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x5 data:string -lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x8 -lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x14 data:4byte -lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x14 -lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x20 -lbl_1_data_414 = .data:0x00000414; // type:object size:0x10 -lbl_1_data_424 = .data:0x00000424; // type:object size:0x30 data:2byte -lbl_1_data_454 = .data:0x00000454; // type:object size:0xB data:string -lbl_1_data_45F = .data:0x0000045F; // type:object size:0x2 data:string -lbl_1_data_461 = .data:0x00000461; // type:object size:0xC data:string -lbl_1_data_46D = .data:0x0000046D; // type:object size:0x1B -lbl_1_data_488 = .data:0x00000488; // type:object size:0x3 data:string -lbl_1_data_48B = .data:0x0000048B; // type:object size:0x11 -lbl_1_data_49C = .data:0x0000049C; // type:object size:0x54 -lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x6 data:string -lbl_1_data_4F6 = .data:0x000004F6; // type:object size:0x6 data:string -lbl_1_data_4FC = .data:0x000004FC; // type:object size:0x6 data:string -lbl_1_data_502 = .data:0x00000502; // type:object size:0x8 data:string -lbl_1_data_50A = .data:0x0000050A; // type:object size:0x8 data:string -lbl_1_data_512 = .data:0x00000512; // type:object size:0xA -lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 data:4byte -lbl_1_data_534 = .data:0x00000534; // type:object size:0xC -lbl_1_data_540 = .data:0x00000540; // type:object size:0x48 -lbl_1_data_588 = .data:0x00000588; // type:object size:0x4 data:4byte -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x5 data:string -lbl_1_data_591 = .data:0x00000591; // type:object size:0x5 data:string -lbl_1_data_596 = .data:0x00000596; // type:object size:0x5 data:string -lbl_1_data_59B = .data:0x0000059B; // type:object size:0x5 data:string -lbl_1_data_5A0 = .data:0x000005A0; // type:object size:0x5 data:string -lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x5 data:string -lbl_1_data_5AA = .data:0x000005AA; // type:object size:0x5 data:string -lbl_1_data_5AF = .data:0x000005AF; // type:object size:0x5 data:string -lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0x8 -lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x24 data:4byte -lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0x10 -lbl_1_data_5F0 = .data:0x000005F0; // type:object size:0x20 -lbl_1_data_610 = .data:0x00000610; // type:object size:0xE data:string -lbl_1_data_61E = .data:0x0000061E; // type:object size:0xE data:string +lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 scope:local data:2byte +lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 scope:local data:2byte +lbl_1_data_284 = .data:0x00000284; // type:object size:0x2 scope:local data:2byte +lbl_1_data_286 = .data:0x00000286; // type:object size:0x2 scope:local data:2byte +lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 scope:local +lbl_1_data_290 = .data:0x00000290; // type:object size:0x8 scope:local +lbl_1_data_298 = .data:0x00000298; // type:object size:0x8 scope:local +lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0xC scope:local +lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x24 scope:local +lbl_1_data_2D0 = .data:0x000002D0; // type:object size:0x20 scope:local +lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x4 scope:local data:4byte +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 scope:local +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 scope:local +lbl_1_data_334 = .data:0x00000334; // type:object size:0x5 scope:local data:string +lbl_1_data_339 = .data:0x00000339; // type:object size:0x5 scope:local data:string +lbl_1_data_33E = .data:0x0000033E; // type:object size:0x5 scope:local data:string +lbl_1_data_343 = .data:0x00000343; // type:object size:0x5 scope:local data:string +lbl_1_data_348 = .data:0x00000348; // type:object size:0x10 scope:local +lbl_1_data_358 = .data:0x00000358; // type:object size:0x10 scope:local +lbl_1_data_368 = .data:0x00000368; // type:object size:0x8 scope:local data:string +lbl_1_data_370 = .data:0x00000370; // type:object size:0x12 scope:local data:string +lbl_1_data_382 = .data:0x00000382; // type:object size:0x11 scope:local data:string +lbl_1_data_393 = .data:0x00000393; // type:object size:0x15 scope:local +lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x8 scope:local data:string +lbl_1_data_3B0 = .data:0x000003B0; // type:object size:0x9 scope:local data:string +lbl_1_data_3B9 = .data:0x000003B9; // type:object size:0x6 scope:local data:string +lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x5 scope:local data:string +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x8 scope:local +lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x14 scope:local data:4byte +lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x14 scope:local +lbl_1_data_3F4 = .data:0x000003F4; // type:object size:0x20 scope:local +lbl_1_data_414 = .data:0x00000414; // type:object size:0x10 scope:local +lbl_1_data_424 = .data:0x00000424; // type:object size:0x30 scope:local data:2byte +lbl_1_data_454 = .data:0x00000454; // type:object size:0xB scope:local data:string +lbl_1_data_45F = .data:0x0000045F; // type:object size:0x2 scope:local data:string +lbl_1_data_461 = .data:0x00000461; // type:object size:0xC scope:local data:string +lbl_1_data_46D = .data:0x0000046D; // type:object size:0x1B scope:local +lbl_1_data_488 = .data:0x00000488; // type:object size:0x3 scope:local data:string +lbl_1_data_48B = .data:0x0000048B; // type:object size:0x11 scope:local +lbl_1_data_49C = .data:0x0000049C; // type:object size:0x54 scope:local +lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x6 scope:local data:string +lbl_1_data_4F6 = .data:0x000004F6; // type:object size:0x6 scope:local data:string +lbl_1_data_4FC = .data:0x000004FC; // type:object size:0x6 scope:local data:string +lbl_1_data_502 = .data:0x00000502; // type:object size:0x8 scope:local data:string +lbl_1_data_50A = .data:0x0000050A; // type:object size:0x8 scope:local data:string +lbl_1_data_512 = .data:0x00000512; // type:object size:0xA scope:local +lbl_1_data_51C = .data:0x0000051C; // type:object size:0x18 scope:local data:4byte +lbl_1_data_534 = .data:0x00000534; // type:object size:0xC scope:local +lbl_1_data_540 = .data:0x00000540; // type:object size:0x48 scope:local +lbl_1_data_588 = .data:0x00000588; // type:object size:0x4 scope:local data:4byte +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x5 scope:local data:string +lbl_1_data_591 = .data:0x00000591; // type:object size:0x5 scope:local data:string +lbl_1_data_596 = .data:0x00000596; // type:object size:0x5 scope:local data:string +lbl_1_data_59B = .data:0x0000059B; // type:object size:0x5 scope:local data:string +lbl_1_data_5A0 = .data:0x000005A0; // type:object size:0x5 scope:local data:string +lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x5 scope:local data:string +lbl_1_data_5AA = .data:0x000005AA; // type:object size:0x5 scope:local data:string +lbl_1_data_5AF = .data:0x000005AF; // type:object size:0x5 scope:local data:string +lbl_1_data_5B4 = .data:0x000005B4; // type:object size:0x8 scope:local +lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x24 scope:local data:4byte +lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0x10 scope:local +lbl_1_data_5F0 = .data:0x000005F0; // type:object size:0x20 scope:local +lbl_1_data_610 = .data:0x00000610; // type:object size:0xE scope:local data:string +lbl_1_data_61E = .data:0x0000061E; // type:object size:0xE scope:local data:string lbl_1_data_62C = .data:0x0000062C; // type:object size:0x10 -lbl_1_data_63C = .data:0x0000063C; // type:object size:0x3 data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x3 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 scope:local data:2byte +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 scope:local data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x24 data:2byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 data:2byte -lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x18 -lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 data:2byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2 data:2byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x2 data:2byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x30 -lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x2 data:2byte -lbl_1_bss_B2 = .bss:0x000000B2; // type:object size:0x8 -lbl_1_bss_BA = .bss:0x000000BA; // type:object size:0x8 data:2byte -lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 data:2byte -lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x10 -lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x10 -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x10 -lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x6 data:2byte -lbl_1_bss_FA = .bss:0x000000FA; // type:object size:0x6 data:2byte -lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte -lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte -lbl_1_bss_108 = .bss:0x00000108; // type:object size:0xC -lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x20 -lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x6 -lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 data:2byte -lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0xD4 data:2byte -lbl_1_bss_210 = .bss:0x00000210; // type:object size:0x30 -lbl_1_bss_240 = .bss:0x00000240; // type:object size:0x30 -lbl_1_bss_270 = .bss:0x00000270; // type:object size:0x2 data:2byte -lbl_1_bss_272 = .bss:0x00000272; // type:object size:0x2 data:2byte -lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x2 data:2byte -lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x4 data:4byte -lbl_1_bss_27C = .bss:0x0000027C; // type:object size:0x2 data:2byte -lbl_1_bss_27E = .bss:0x0000027E; // type:object size:0x2 data:2byte -lbl_1_bss_280 = .bss:0x00000280; // type:object size:0x2 data:2byte -lbl_1_bss_282 = .bss:0x00000282; // type:object size:0x6 data:2byte -lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x4 data:4byte -lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x8 data:4byte -lbl_1_bss_294 = .bss:0x00000294; // type:object size:0x4 data:float -lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x6 -lbl_1_bss_29E = .bss:0x0000029E; // type:object size:0x8 -lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0x6 -lbl_1_bss_2AC = .bss:0x000002AC; // type:object size:0x2 data:2byte -lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 data:4byte -lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xE -lbl_1_bss_2C2 = .bss:0x000002C2; // type:object size:0xE -lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x28 data:2byte -lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x2 data:2byte -lbl_1_bss_2FA = .bss:0x000002FA; // type:object size:0x2 data:2byte -lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC -lbl_1_bss_308 = .bss:0x00000308; // type:object size:0xC data:float -lbl_1_bss_314 = .bss:0x00000314; // type:object size:0x2 data:2byte -lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x4 data:4byte -lbl_1_bss_31C = .bss:0x0000031C; // type:object size:0x4 data:4byte -lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x4 data:4byte -lbl_1_bss_324 = .bss:0x00000324; // type:object size:0x2 data:2byte -lbl_1_bss_326 = .bss:0x00000326; // type:object size:0x2 data:2byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC scope:local +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x18 scope:local +lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x30 scope:local +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_B2 = .bss:0x000000B2; // type:object size:0x8 scope:local +lbl_1_bss_BA = .bss:0x000000BA; // type:object size:0x8 scope:local data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x10 scope:local +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x10 scope:local +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x10 scope:local +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x6 scope:local data:2byte +lbl_1_bss_FA = .bss:0x000000FA; // type:object size:0x6 scope:local data:2byte +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0xC scope:local +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x20 scope:local +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x6 scope:local +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0xD4 scope:local data:2byte +lbl_1_bss_210 = .bss:0x00000210; // type:object size:0x30 scope:local +lbl_1_bss_240 = .bss:0x00000240; // type:object size:0x30 scope:local +lbl_1_bss_270 = .bss:0x00000270; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_272 = .bss:0x00000272; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_27C = .bss:0x0000027C; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_27E = .bss:0x0000027E; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_280 = .bss:0x00000280; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_282 = .bss:0x00000282; // type:object size:0x6 scope:local data:2byte +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x8 scope:local data:4byte +lbl_1_bss_294 = .bss:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x6 scope:local +lbl_1_bss_29E = .bss:0x0000029E; // type:object size:0x8 scope:local +lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0x6 scope:local +lbl_1_bss_2AC = .bss:0x000002AC; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xE scope:local +lbl_1_bss_2C2 = .bss:0x000002C2; // type:object size:0xE scope:local +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x28 scope:local data:2byte +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_2FA = .bss:0x000002FA; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC scope:local +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0xC scope:local data:float +lbl_1_bss_314 = .bss:0x00000314; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_31C = .bss:0x0000031C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_326 = .bss:0x00000326; // type:object size:0x2 scope:local data:2byte diff --git a/config/GMPJ01_00/rels/w05Dll/splits.txt b/config/GMPJ01_00/rels/w05Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/w05Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w05Dll/symbols.txt b/config/GMPJ01_00/rels/w05Dll/symbols.txt deleted file mode 100644 index 03b04aa2..00000000 --- a/config/GMPJ01_00/rels/w05Dll/symbols.txt +++ /dev/null @@ -1,356 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x4D8 -fn_1_5B8 = .text:0x000005B8; // type:function size:0x18C -fn_1_744 = .text:0x00000744; // type:function size:0x44 -fn_1_788 = .text:0x00000788; // type:function size:0x4 -fn_1_78C = .text:0x0000078C; // type:function size:0xA0 -fn_1_82C = .text:0x0000082C; // type:function size:0x100 -fn_1_92C = .text:0x0000092C; // type:function size:0x24 -fn_1_950 = .text:0x00000950; // type:function size:0x4 -fn_1_954 = .text:0x00000954; // type:function size:0x3F8 -fn_1_D4C = .text:0x00000D4C; // type:function size:0x38 -fn_1_D84 = .text:0x00000D84; // type:function size:0x80 -fn_1_E04 = .text:0x00000E04; // type:function size:0x3C -fn_1_E40 = .text:0x00000E40; // type:function size:0x2D4 -fn_1_1114 = .text:0x00001114; // type:function size:0xF4 -fn_1_1208 = .text:0x00001208; // type:function size:0x1CC -fn_1_13D4 = .text:0x000013D4; // type:function size:0xFC -fn_1_14D0 = .text:0x000014D0; // type:function size:0x2C -fn_1_14FC = .text:0x000014FC; // type:function size:0x60 -fn_1_155C = .text:0x0000155C; // type:function size:0x8E8 -fn_1_1E44 = .text:0x00001E44; // type:function size:0xCFC -fn_1_2B40 = .text:0x00002B40; // type:function size:0x13C -fn_1_2C7C = .text:0x00002C7C; // type:function size:0x3C8 -fn_1_3044 = .text:0x00003044; // type:function size:0x3EC -fn_1_3430 = .text:0x00003430; // type:function size:0xE4 -fn_1_3514 = .text:0x00003514; // type:function size:0x874 -fn_1_3D88 = .text:0x00003D88; // type:function size:0x104 -fn_1_3E8C = .text:0x00003E8C; // type:function size:0xE8 -fn_1_3F74 = .text:0x00003F74; // type:function size:0x64 -fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x5C -fn_1_4034 = .text:0x00004034; // type:function size:0xE80 -fn_1_4EB4 = .text:0x00004EB4; // type:function size:0x794 -fn_1_5648 = .text:0x00005648; // type:function size:0x14C -fn_1_5794 = .text:0x00005794; // type:function size:0xB18 -fn_1_62AC = .text:0x000062AC; // type:function size:0x210 -fn_1_64BC = .text:0x000064BC; // type:function size:0x12C -fn_1_65E8 = .text:0x000065E8; // type:function size:0x88 -fn_1_6670 = .text:0x00006670; // type:function size:0x50 -fn_1_66C0 = .text:0x000066C0; // type:function size:0x254 -fn_1_6914 = .text:0x00006914; // type:function size:0x214 -fn_1_6B28 = .text:0x00006B28; // type:function size:0x54 -fn_1_6B7C = .text:0x00006B7C; // type:function size:0x708 -fn_1_7284 = .text:0x00007284; // type:function size:0x60 -fn_1_72E4 = .text:0x000072E4; // type:function size:0x30 -fn_1_7314 = .text:0x00007314; // type:function size:0xAC -fn_1_73C0 = .text:0x000073C0; // type:function size:0x40 -fn_1_7400 = .text:0x00007400; // type:function size:0xD0 -fn_1_74D0 = .text:0x000074D0; // type:function size:0x2E0 -fn_1_77B0 = .text:0x000077B0; // type:function size:0xF0 -fn_1_78A0 = .text:0x000078A0; // type:function size:0x88 -fn_1_7928 = .text:0x00007928; // type:function size:0x74 -fn_1_799C = .text:0x0000799C; // type:function size:0x4B0 -fn_1_7E4C = .text:0x00007E4C; // type:function size:0x48 -fn_1_7E94 = .text:0x00007E94; // type:function size:0x70 -fn_1_7F04 = .text:0x00007F04; // type:function size:0x1D4 -fn_1_80D8 = .text:0x000080D8; // type:function size:0x338 -fn_1_8410 = .text:0x00008410; // type:function size:0xFC -fn_1_850C = .text:0x0000850C; // type:function size:0x15C -fn_1_8668 = .text:0x00008668; // type:function size:0x130 -fn_1_8798 = .text:0x00008798; // type:function size:0xEC -fn_1_8884 = .text:0x00008884; // type:function size:0x34 -fn_1_88B8 = .text:0x000088B8; // type:function size:0xB4 -fn_1_896C = .text:0x0000896C; // type:function size:0x870 -fn_1_91DC = .text:0x000091DC; // type:function size:0x8C -fn_1_9268 = .text:0x00009268; // type:function size:0x418 -fn_1_9680 = .text:0x00009680; // type:function size:0x34 -fn_1_96B4 = .text:0x000096B4; // type:function size:0xAC -fn_1_9760 = .text:0x00009760; // type:function size:0x4C -fn_1_97AC = .text:0x000097AC; // type:function size:0x2BC -fn_1_9A68 = .text:0x00009A68; // type:function size:0x58 -fn_1_9AC0 = .text:0x00009AC0; // type:function size:0x30 -fn_1_9AF0 = .text:0x00009AF0; // type:function size:0x84 -fn_1_9B74 = .text:0x00009B74; // type:function size:0xB0 -fn_1_9C24 = .text:0x00009C24; // type:function size:0x74 -fn_1_9C98 = .text:0x00009C98; // type:function size:0x74 -fn_1_9D0C = .text:0x00009D0C; // type:function size:0x218 -fn_1_9F24 = .text:0x00009F24; // type:function size:0x300 -fn_1_A224 = .text:0x0000A224; // type:function size:0x2D4 -fn_1_A4F8 = .text:0x0000A4F8; // type:function size:0xB8 -fn_1_A5B0 = .text:0x0000A5B0; // type:function size:0x3E0 -fn_1_A990 = .text:0x0000A990; // type:function size:0x194 -fn_1_AB24 = .text:0x0000AB24; // type:function size:0x6F0 -fn_1_B214 = .text:0x0000B214; // type:function size:0x9C -fn_1_B2B0 = .text:0x0000B2B0; // type:function size:0x114 -fn_1_B3C4 = .text:0x0000B3C4; // type:function size:0x280 -_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_38 = .rodata:0x00000038; // type:object size:0x8 data:double -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_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:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x8 data:double -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:0x8 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_1_rodata_124 = .rodata:0x00000124; // 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:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:4byte -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 -lbl_1_data_118 = .data:0x00000118; // type:object size:0x2 data:2byte -lbl_1_data_11A = .data:0x0000011A; // type:object size:0x2 data:2byte -lbl_1_data_11C = .data:0x0000011C; // type:object size:0x2 data:2byte -lbl_1_data_11E = .data:0x0000011E; // type:object size:0x2 data:2byte -lbl_1_data_120 = .data:0x00000120; // type:object size:0x2 data:2byte -lbl_1_data_124 = .data:0x00000124; // type:object size:0x20 -lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 -lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 -lbl_1_data_150 = .data:0x00000150; // type:object size:0x14 -lbl_1_data_164 = .data:0x00000164; // type:object size:0x2 data:2byte -lbl_1_data_166 = .data:0x00000166; // type:object size:0xA -lbl_1_data_170 = .data:0x00000170; // type:object size:0x10 -lbl_1_data_180 = .data:0x00000180; // type:object size:0x4 data:4byte -lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 -lbl_1_data_188 = .data:0x00000188; // type:object size:0x10 -lbl_1_data_198 = .data:0x00000198; // type:object size:0x8 -lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x8 data:string -lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0xC -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x7 data:string -lbl_1_data_1BB = .data:0x000001BB; // type:object size:0x9 -lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x8 data:4byte -lbl_1_data_1CC = .data:0x000001CC; // type:object size:0xC -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x8 data:string -lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x8 data:string -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xA data:string -lbl_1_data_1F2 = .data:0x000001F2; // type:object size:0xE -lbl_1_data_200 = .data:0x00000200; // type:object size:0x8 data:string -lbl_1_data_208 = .data:0x00000208; // type:object size:0x8 data:string -lbl_1_data_210 = .data:0x00000210; // type:object size:0x6 data:string -lbl_1_data_216 = .data:0x00000216; // type:object size:0x6 data:string -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x7 data:string -lbl_1_data_223 = .data:0x00000223; // type:object size:0x9 -lbl_1_data_22C = .data:0x0000022C; // type:object size:0x18 -lbl_1_data_244 = .data:0x00000244; // type:object size:0x18 -lbl_1_data_25C = .data:0x0000025C; // type:object size:0x48 -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x48 -lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x8 -lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x1C -lbl_1_data_310 = .data:0x00000310; // type:object size:0x8 -lbl_1_data_318 = .data:0x00000318; // type:object size:0x7 data:string -lbl_1_data_31F = .data:0x0000031F; // type:object size:0x7 data:string -lbl_1_data_326 = .data:0x00000326; // type:object size:0xA -lbl_1_data_330 = .data:0x00000330; // type:object size:0xC -lbl_1_data_33C = .data:0x0000033C; // type:object size:0x7 data:string -lbl_1_data_343 = .data:0x00000343; // type:object size:0xD data:string -lbl_1_data_350 = .data:0x00000350; // type:object size:0xF0 -lbl_1_data_440 = .data:0x00000440; // type:object size:0x10 -lbl_1_data_450 = .data:0x00000450; // type:object size:0x6 data:string -lbl_1_data_456 = .data:0x00000456; // type:object size:0x7 data:string -lbl_1_data_45D = .data:0x0000045D; // type:object size:0x7 data:string -lbl_1_data_464 = .data:0x00000464; // type:object size:0xC -lbl_1_data_470 = .data:0x00000470; // type:object size:0xC -lbl_1_data_47C = .data:0x0000047C; // type:object size:0xC -lbl_1_data_488 = .data:0x00000488; // type:object size:0x3 data:string -lbl_1_data_48B = .data:0x0000048B; // type:object size:0x4 data:string -lbl_1_data_48F = .data:0x0000048F; // type:object size:0x5 -lbl_1_data_494 = .data:0x00000494; // type:object size:0xC -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0xD data:string -lbl_1_data_4AD = .data:0x000004AD; // type:object size:0x5 data:string -lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x6 -lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0xC -lbl_1_data_4C4 = .data:0x000004C4; // type:object size:0x3 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x14 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:2byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x8 data:2byte -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0xC data:float -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x2 data:2byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x2 data:2byte -lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x2 data:2byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x2 data:2byte -lbl_1_bss_4E = .bss:0x0000004E; // type:object size:0xA data:2byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0xC -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x2 data:2byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x6 -lbl_1_bss_72 = .bss:0x00000072; // type:object size:0x6 data:2byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte -lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0xC -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte -lbl_1_bss_94 = .bss:0x00000094; // type:object size:0x4 data:4byte -lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte -lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x2 data:2byte -lbl_1_bss_A2 = .bss:0x000000A2; // type:object size:0x2 data:2byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x6 -lbl_1_bss_AA = .bss:0x000000AA; // type:object size:0x6 -lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x6 -lbl_1_bss_B6 = .bss:0x000000B6; // type:object size:0x2 data:2byte -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte -lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 data:2byte -lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x2 data:2byte -lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x2 data:2byte -lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte -lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte -lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x4 data:4byte -lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x2 data:2byte -lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0x28 data:2byte -lbl_1_bss_FE = .bss:0x000000FE; // type:object size:0x2 data:2byte -lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x2 data:2byte -lbl_1_bss_102 = .bss:0x00000102; // type:object size:0x6 data:2byte diff --git a/config/GMPJ01_00/rels/w06Dll/splits.txt b/config/GMPJ01_00/rels/w06Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/w06Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w06Dll/symbols.txt b/config/GMPJ01_00/rels/w06Dll/symbols.txt deleted file mode 100644 index 51c6c855..00000000 --- a/config/GMPJ01_00/rels/w06Dll/symbols.txt +++ /dev/null @@ -1,373 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x4C4 -fn_1_5A4 = .text:0x000005A4; // type:function size:0x18C -fn_1_730 = .text:0x00000730; // type:function size:0x6C -fn_1_79C = .text:0x0000079C; // type:function size:0x20 -fn_1_7BC = .text:0x000007BC; // type:function size:0x144 -fn_1_900 = .text:0x00000900; // type:function size:0x84 -fn_1_984 = .text:0x00000984; // type:function size:0x3C -fn_1_9C0 = .text:0x000009C0; // type:function size:0x168 -fn_1_B28 = .text:0x00000B28; // type:function size:0x34 -fn_1_B5C = .text:0x00000B5C; // type:function size:0x214 -fn_1_D70 = .text:0x00000D70; // type:function size:0x1FC -fn_1_F6C = .text:0x00000F6C; // type:function size:0xE8 -fn_1_1054 = .text:0x00001054; // type:function size:0x90 -fn_1_10E4 = .text:0x000010E4; // type:function size:0x64 -fn_1_1148 = .text:0x00001148; // type:function size:0x68 -fn_1_11B0 = .text:0x000011B0; // type:function size:0xF0 -fn_1_12A0 = .text:0x000012A0; // type:function size:0x32C -fn_1_15CC = .text:0x000015CC; // type:function size:0x614 -fn_1_1BE0 = .text:0x00001BE0; // type:function size:0xD0 -fn_1_1CB0 = .text:0x00001CB0; // type:function size:0xAC -fn_1_1D5C = .text:0x00001D5C; // type:function size:0xD4 -fn_1_1E30 = .text:0x00001E30; // type:function size:0xD8 -fn_1_1F08 = .text:0x00001F08; // type:function size:0x140 -fn_1_2048 = .text:0x00002048; // type:function size:0x84 -fn_1_20CC = .text:0x000020CC; // type:function size:0xA8 -fn_1_2174 = .text:0x00002174; // type:function size:0x58 -fn_1_21CC = .text:0x000021CC; // type:function size:0x54 -fn_1_2220 = .text:0x00002220; // type:function size:0x21C -fn_1_243C = .text:0x0000243C; // type:function size:0x5E0 -fn_1_2A1C = .text:0x00002A1C; // type:function size:0x144 -fn_1_2B60 = .text:0x00002B60; // type:function size:0xB8 -fn_1_2C18 = .text:0x00002C18; // type:function size:0x178 -fn_1_2D90 = .text:0x00002D90; // type:function size:0x40 -fn_1_2DD0 = .text:0x00002DD0; // type:function size:0x48 -fn_1_2E18 = .text:0x00002E18; // type:function size:0xDC -fn_1_2EF4 = .text:0x00002EF4; // type:function size:0x57C -fn_1_3470 = .text:0x00003470; // type:function size:0xF0 -fn_1_3560 = .text:0x00003560; // type:function size:0x5C -fn_1_35BC = .text:0x000035BC; // type:function size:0x48 -fn_1_3604 = .text:0x00003604; // type:function size:0x94 -fn_1_3698 = .text:0x00003698; // type:function size:0x2DC -fn_1_3974 = .text:0x00003974; // type:function size:0x6FC -fn_1_4070 = .text:0x00004070; // type:function size:0xB4 -fn_1_4124 = .text:0x00004124; // type:function size:0x70 -fn_1_4194 = .text:0x00004194; // type:function size:0x118 -fn_1_42AC = .text:0x000042AC; // type:function size:0x130 -fn_1_43DC = .text:0x000043DC; // type:function size:0x84 -fn_1_4460 = .text:0x00004460; // type:function size:0x418 -fn_1_4878 = .text:0x00004878; // type:function size:0x198 -fn_1_4A10 = .text:0x00004A10; // type:function size:0x50 -fn_1_4A60 = .text:0x00004A60; // type:function size:0xA0 -fn_1_4B00 = .text:0x00004B00; // type:function size:0xA0 -fn_1_4BA0 = .text:0x00004BA0; // type:function size:0x58 -fn_1_4BF8 = .text:0x00004BF8; // type:function size:0x3C0 -fn_1_4FB8 = .text:0x00004FB8; // type:function size:0x1E4 -fn_1_519C = .text:0x0000519C; // type:function size:0x204 -fn_1_53A0 = .text:0x000053A0; // type:function size:0xF0 -fn_1_5490 = .text:0x00005490; // type:function size:0x23C -fn_1_56CC = .text:0x000056CC; // type:function size:0x110 -fn_1_57DC = .text:0x000057DC; // type:function size:0xA0 -fn_1_587C = .text:0x0000587C; // type:function size:0x80 -fn_1_58FC = .text:0x000058FC; // type:function size:0x6C -fn_1_5968 = .text:0x00005968; // type:function size:0x68 -fn_1_59D0 = .text:0x000059D0; // type:function size:0x13C -fn_1_5B0C = .text:0x00005B0C; // type:function size:0x48 -fn_1_5B54 = .text:0x00005B54; // type:function size:0x190 -fn_1_5CE4 = .text:0x00005CE4; // type:function size:0x1D8 -fn_1_5EBC = .text:0x00005EBC; // type:function size:0x40 -fn_1_5EFC = .text:0x00005EFC; // type:function size:0x5C -fn_1_5F58 = .text:0x00005F58; // type:function size:0x114 -fn_1_606C = .text:0x0000606C; // type:function size:0x9A0 -fn_1_6A0C = .text:0x00006A0C; // type:function size:0x240 -fn_1_6C4C = .text:0x00006C4C; // type:function size:0x244 -fn_1_6E90 = .text:0x00006E90; // type:function size:0x60 -fn_1_6EF0 = .text:0x00006EF0; // type:function size:0x90 -fn_1_6F80 = .text:0x00006F80; // type:function size:0x290 -fn_1_7210 = .text:0x00007210; // type:function size:0x94 -fn_1_72A4 = .text:0x000072A4; // type:function size:0x28 -fn_1_72CC = .text:0x000072CC; // type:function size:0x120 -fn_1_73EC = .text:0x000073EC; // type:function size:0xD0 -fn_1_74BC = .text:0x000074BC; // type:function size:0xB8 -fn_1_7574 = .text:0x00007574; // type:function size:0x100 -fn_1_7674 = .text:0x00007674; // type:function size:0xEC -fn_1_7760 = .text:0x00007760; // type:function size:0x1E4 -fn_1_7944 = .text:0x00007944; // type:function size:0x26C -fn_1_7BB0 = .text:0x00007BB0; // type:function size:0x38C -fn_1_7F3C = .text:0x00007F3C; // type:function size:0x68 -fn_1_7FA4 = .text:0x00007FA4; // type:function size:0x2C0 -fn_1_8264 = .text:0x00008264; // type:function size:0xBC -fn_1_8320 = .text:0x00008320; // type:function size:0x100 -fn_1_8420 = .text:0x00008420; // type:function size:0x70 -fn_1_8490 = .text:0x00008490; // type:function size:0x5C8 -fn_1_8A58 = .text:0x00008A58; // type:function size:0x4C8 -fn_1_8F20 = .text:0x00008F20; // type:function size:0x2B8 -fn_1_91D8 = .text:0x000091D8; // type:function size:0xBC -fn_1_9294 = .text:0x00009294; // type:function size:0x44 -fn_1_92D8 = .text:0x000092D8; // type:function size:0xF0 -fn_1_93C8 = .text:0x000093C8; // type:function size:0x10C -fn_1_94D4 = .text:0x000094D4; // type:function size:0xD8 -fn_1_95AC = .text:0x000095AC; // type:function size:0x8B0 -fn_1_9E5C = .text:0x00009E5C; // type:function size:0x5AC -fn_1_A408 = .text:0x0000A408; // type:function size:0x744 -fn_1_AB4C = .text:0x0000AB4C; // type:function size:0x730 -fn_1_B27C = .text:0x0000B27C; // type:function size:0x424 -fn_1_B6A0 = .text:0x0000B6A0; // type:function size:0x240 -fn_1_B8E0 = .text:0x0000B8E0; // type:function size:0x230 -fn_1_BB10 = .text:0x0000BB10; // type:function size:0x1F8 -fn_1_BD08 = .text:0x0000BD08; // type:function size:0x3C -fn_1_BD44 = .text:0x0000BD44; // type:function size:0x48 -fn_1_BD8C = .text:0x0000BD8C; // type:function size:0x37C -fn_1_C108 = .text:0x0000C108; // type:function size:0x1AC -fn_1_C2B4 = .text:0x0000C2B4; // type:function size:0x158 -fn_1_C40C = .text:0x0000C40C; // type:function size:0x5B0 -fn_1_C9BC = .text:0x0000C9BC; // type:function size:0xD0 -fn_1_CA8C = .text:0x0000CA8C; // type:function size:0x40 -fn_1_CACC = .text:0x0000CACC; // type:function size:0x1C4 -fn_1_CC90 = .text:0x0000CC90; // type:function size:0x7C -fn_1_CD0C = .text:0x0000CD0C; // type:function size:0x398 -_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:0x8 data:4byte -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x1 data:byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x1 data:byte -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x6 data:2byte -lbl_1_rodata_9A = .rodata:0x0000009A; // type:object size:0x1 data:byte -lbl_1_rodata_9E = .rodata:0x0000009E; // type:object size:0x6 data:2byte -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x5 -lbl_1_rodata_F5 = .rodata:0x000000F5; // type:object size:0x7 -lbl_1_rodata_FC = .rodata:0x000000FC; // 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:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0xC data:4byte -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0xF0 -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte -lbl_1_data_F2 = .data:0x000000F2; // type:object size:0x2 data:2byte -lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x2 data:2byte -lbl_1_data_F6 = .data:0x000000F6; // type:object size:0x2 data:2byte -lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x8 -lbl_1_data_100 = .data:0x00000100; // type:object size:0x8 -lbl_1_data_108 = .data:0x00000108; // type:object size:0xA0 -lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x2 data:2byte -lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x1 data:byte -lbl_1_data_1AD = .data:0x000001AD; // type:object size:0x3 -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2 data:2byte -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0xC -lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x5 data:string -lbl_1_data_1C5 = .data:0x000001C5; // type:object size:0x13 -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte -lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte -lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x2 data:2byte -lbl_1_data_1DE = .data:0x000001DE; // type:object size:0x6 -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 -lbl_1_data_208 = .data:0x00000208; // type:object size:0x20 -lbl_1_data_228 = .data:0x00000228; // type:object size:0x1 data:byte -lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte -lbl_1_data_22C = .data:0x0000022C; // type:object size:0x2 data:2byte -lbl_1_data_230 = .data:0x00000230; // type:object size:0x38 -lbl_1_data_268 = .data:0x00000268; // type:object size:0x5 data:string -lbl_1_data_26D = .data:0x0000026D; // type:object size:0xE -lbl_1_data_27B = .data:0x0000027B; // type:object size:0x4 -lbl_1_data_27F = .data:0x0000027F; // type:object size:0x8 -lbl_1_data_287 = .data:0x00000287; // type:object size:0x12 data:string -lbl_1_data_299 = .data:0x00000299; // type:object size:0x11 data:string -lbl_1_data_2AA = .data:0x000002AA; // type:object size:0x18 data:string -lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x17 data:string -lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x16 data:string -lbl_1_data_2EF = .data:0x000002EF; // type:object size:0x10 data:string -lbl_1_data_2FF = .data:0x000002FF; // type:object size:0x10 data:string -lbl_1_data_30F = .data:0x0000030F; // type:object size:0x11 data:string -lbl_1_data_320 = .data:0x00000320; // type:object size:0x15 data:string -lbl_1_data_335 = .data:0x00000335; // type:object size:0x15 data:string -lbl_1_data_34A = .data:0x0000034A; // type:object size:0x10 data:string -lbl_1_data_35A = .data:0x0000035A; // type:object size:0x13 data:string -lbl_1_data_36D = .data:0x0000036D; // type:object size:0x13 data:string -lbl_1_data_380 = .data:0x00000380; // type:object size:0x98 -lbl_1_data_418 = .data:0x00000418; // type:object size:0x2 data:2byte -lbl_1_data_41C = .data:0x0000041C; // type:object size:0x18 -lbl_1_data_434 = .data:0x00000434; // type:object size:0x18 -lbl_1_data_44C = .data:0x0000044C; // type:object size:0xC -lbl_1_data_458 = .data:0x00000458; // type:object size:0x20 -lbl_1_data_478 = .data:0x00000478; // type:object size:0x20 -lbl_1_data_498 = .data:0x00000498; // type:object size:0x2 data:2byte -lbl_1_data_49A = .data:0x0000049A; // type:object size:0x2 data:2byte -lbl_1_data_49C = .data:0x0000049C; // type:object size:0x2 data:2byte -lbl_1_data_49E = .data:0x0000049E; // type:object size:0x2 data:2byte -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x2 data:2byte -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x2 data:2byte -lbl_1_data_4A4 = .data:0x000004A4; // type:object size:0x8 -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x20 -lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x20 -lbl_1_data_4EC = .data:0x000004EC; // type:object size:0x24 -lbl_1_data_510 = .data:0x00000510; // type:object size:0x20 -lbl_1_data_530 = .data:0x00000530; // type:object size:0x6 data:string -lbl_1_data_536 = .data:0x00000536; // type:object size:0xB data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x1 data:byte -lbl_1_bss_33 = .bss:0x00000033; // type:object size:0x1 data:byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte -lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x6 -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:2byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1 data:byte -lbl_1_bss_59 = .bss:0x00000059; // type:object size:0x1 data:byte -lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x1 data:byte -lbl_1_bss_5B = .bss:0x0000005B; // type:object size:0x31 -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x28 data:4byte -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte -lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x4 -lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x1 data:byte -lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte -lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte -lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x6 -lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0xC -lbl_1_bss_E2 = .bss:0x000000E2; // type:object size:0x2 data:2byte -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 data:2byte -lbl_1_bss_E6 = .bss:0x000000E6; // type:object size:0x1 data:byte -lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 data:4byte -lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x4 data:4byte -lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x4 data:4byte -lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x1 data:byte diff --git a/config/GMPJ01_00/rels/w10Dll/splits.txt b/config/GMPJ01_00/rels/w10Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/w10Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w10Dll/symbols.txt b/config/GMPJ01_00/rels/w10Dll/symbols.txt deleted file mode 100644 index c99d83da..00000000 --- a/config/GMPJ01_00/rels/w10Dll/symbols.txt +++ /dev/null @@ -1,114 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x5F8 -fn_1_6D8 = .text:0x000006D8; // type:function size:0x1E8 -fn_1_8C0 = .text:0x000008C0; // type:function size:0x44 -fn_1_904 = .text:0x00000904; // type:function size:0x4 -fn_1_908 = .text:0x00000908; // type:function size:0x4 -fn_1_90C = .text:0x0000090C; // type:function size:0x8 -fn_1_914 = .text:0x00000914; // type:function size:0x4 -fn_1_918 = .text:0x00000918; // type:function size:0x4 -fn_1_91C = .text:0x0000091C; // type:function size:0x4 -fn_1_920 = .text:0x00000920; // type:function size:0x1CC -fn_1_AEC = .text:0x00000AEC; // type:function size:0xB4 -fn_1_BA0 = .text:0x00000BA0; // type:function size:0x70 -fn_1_C10 = .text:0x00000C10; // type:function size:0x10 -fn_1_C20 = .text:0x00000C20; // type:function size:0x10C -fn_1_D2C = .text:0x00000D2C; // type:function size:0x28 -fn_1_D54 = .text:0x00000D54; // type:function size:0x28 -fn_1_D7C = .text:0x00000D7C; // type:function size:0x28 -fn_1_DA4 = .text:0x00000DA4; // type:function size:0x28 -fn_1_DCC = .text:0x00000DCC; // type:function size:0x28 -fn_1_DF4 = .text:0x00000DF4; // type:function size:0x28 -fn_1_E1C = .text:0x00000E1C; // type:function size:0x28 -fn_1_E44 = .text:0x00000E44; // type:function size:0x50 -fn_1_E94 = .text:0x00000E94; // type:function size:0x28 -fn_1_EBC = .text:0x00000EBC; // type:function size:0x28 -fn_1_EE4 = .text:0x00000EE4; // type:function size:0x4 -fn_1_EE8 = .text:0x00000EE8; // type:function size:0x48 -fn_1_F30 = .text:0x00000F30; // type:function size:0x3C -fn_1_F6C = .text:0x00000F6C; // type:function size:0x4C -fn_1_FB8 = .text:0x00000FB8; // type:function size:0x58 -fn_1_1010 = .text:0x00001010; // type:function size:0x4C -fn_1_105C = .text:0x0000105C; // type:function size:0x3C -fn_1_1098 = .text:0x00001098; // type:function size:0x28 -fn_1_10C0 = .text:0x000010C0; // type:function size:0x38 -fn_1_10F8 = .text:0x000010F8; // type:function size:0x3C -fn_1_1134 = .text:0x00001134; // type:function size:0x44 -fn_1_1178 = .text:0x00001178; // type:function size:0x28 -fn_1_11A0 = .text:0x000011A0; // type:function size:0x4C -fn_1_11EC = .text:0x000011EC; // type:function size:0x54 -fn_1_1240 = .text:0x00001240; // type:function size:0x38 -fn_1_1278 = .text:0x00001278; // type:function size:0x28 -fn_1_12A0 = .text:0x000012A0; // type:function size:0x3C -fn_1_12DC = .text:0x000012DC; // type:function size:0x28 -fn_1_1304 = .text:0x00001304; // type:function size:0x28 -fn_1_132C = .text:0x0000132C; // type:function size:0x28 -fn_1_1354 = .text:0x00001354; // type:function size:0x28 -fn_1_137C = .text:0x0000137C; // type:function size:0x28 -fn_1_13A4 = .text:0x000013A4; // type:function size:0x3C8 -fn_1_176C = .text:0x0000176C; // type:function size:0x30 -fn_1_179C = .text:0x0000179C; // type:function size:0x58 -fn_1_17F4 = .text:0x000017F4; // type:function size:0x40 -fn_1_1834 = .text:0x00001834; // type:function size:0x88 -fn_1_18BC = .text:0x000018BC; // type:function size:0x4C -fn_1_1908 = .text:0x00001908; // type:function size:0x28 -fn_1_1930 = .text:0x00001930; // type:function size:0x28 -fn_1_1958 = .text:0x00001958; // type:function size:0x28 -fn_1_1980 = .text:0x00001980; // type:function size:0x4 -fn_1_1984 = .text:0x00001984; // type:function size:0x128 -fn_1_1AAC = .text:0x00001AAC; // type:function size:0x2BC -fn_1_1D68 = .text:0x00001D68; // type:function size:0x84 -fn_1_1DEC = .text:0x00001DEC; // type:function size:0x50 -fn_1_1E3C = .text:0x00001E3C; // type:function size:0x174 -fn_1_1FB0 = .text:0x00001FB0; // type:function size:0xBC -_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_28 = .rodata:0x00000028; // type:object size:0x8 data:double -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:0x8 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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x28 -lbl_1_data_28 = .data:0x00000028; // type:object size:0x2 data:2byte -lbl_1_data_2A = .data:0x0000002A; // type:object size:0x2 data:2byte -lbl_1_data_2C = .data:0x0000002C; // type:object size:0x2 data:2byte -lbl_1_data_2E = .data:0x0000002E; // type:object size:0x2 data:2byte -lbl_1_data_30 = .data:0x00000030; // type:object size:0x2 data:2byte -lbl_1_data_32 = .data:0x00000032; // type:object size:0x22 data:2byte -lbl_1_data_54 = .data:0x00000054; // type:object size:0x8 -lbl_1_data_5C = .data:0x0000005C; // type:object size:0x8 -lbl_1_data_64 = .data:0x00000064; // type:object size:0x8 -lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC -lbl_1_data_78 = .data:0x00000078; // type:object size:0x8 -lbl_1_data_80 = .data:0x00000080; // type:object size:0x18 -lbl_1_data_98 = .data:0x00000098; // type:object size:0x2E -lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x42 -lbl_1_data_108 = .data:0x00000108; // type:object size:0x150 -lbl_1_data_258 = .data:0x00000258; // type:object size:0x50 data:string -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x2C -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x8 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte -lbl_1_bss_E = .bss:0x0000000E; // type:object size:0x2 data:2byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x8 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x2 data:2byte -lbl_1_bss_1E = .bss:0x0000001E; // type:object size:0x2 data:2byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte -lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x16 diff --git a/config/GMPJ01_00/rels/w20Dll/splits.txt b/config/GMPJ01_00/rels/w20Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/w20Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/w20Dll/symbols.txt b/config/GMPJ01_00/rels/w20Dll/symbols.txt deleted file mode 100644 index 709c60ad..00000000 --- a/config/GMPJ01_00/rels/w20Dll/symbols.txt +++ /dev/null @@ -1,27 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x2B0 -fn_1_390 = .text:0x00000390; // type:function size:0xBC -fn_1_44C = .text:0x0000044C; // type:function size:0x44 -fn_1_490 = .text:0x00000490; // type:function size:0x4 -fn_1_494 = .text:0x00000494; // type:function size:0x4 -fn_1_498 = .text:0x00000498; // type:function size:0x8 -fn_1_4A0 = .text:0x000004A0; // type:function size:0x4 -fn_1_4A4 = .text:0x000004A4; // type:function size:0x4 -fn_1_4A8 = .text:0x000004A8; // type:function size:0x4 -fn_1_4AC = .text:0x000004AC; // type:function size:0x1CC -_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_20 = .rodata:0x00000020; // type:object size:0x8 data:double -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_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte -lbl_1_data_2 = .data:0x00000002; // type:object size:0x2 data:2byte -lbl_1_data_6 = .data:0x00000006; // type:object size:0x2 data:2byte -lbl_1_data_8 = .data:0x00000008; // type:object size:0x24 data:2byte -lbl_1_data_2C = .data:0x0000002C; // type:object size:0x8 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xE diff --git a/config/GMPJ01_00/rels/w21Dll/splits.txt b/config/GMPJ01_00/rels/w21Dll/splits.txt deleted file mode 100644 index be323846..00000000 --- a/config/GMPJ01_00/rels/w21Dll/splits.txt +++ /dev/null @@ -1,6 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 diff --git a/config/GMPJ01_00/rels/w21Dll/symbols.txt b/config/GMPJ01_00/rels/w21Dll/symbols.txt deleted file mode 100644 index 1e9f2fcb..00000000 --- a/config/GMPJ01_00/rels/w21Dll/symbols.txt +++ /dev/null @@ -1,18 +0,0 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x30 -_prolog = .text:0x00000030; // type:function size:0x64 scope:global -_epilog = .text:0x00000094; // type:function size:0x4C scope:global -fn_1_E0 = .text:0x000000E0; // type:function size:0x1D4 -fn_1_2B4 = .text:0x000002B4; // type:function size:0xB8 -fn_1_36C = .text:0x0000036C; // type:function size:0x44 -fn_1_3B0 = .text:0x000003B0; // type:function size:0x20 -fn_1_3D0 = .text:0x000003D0; // type:function size:0x8 -fn_1_3D8 = .text:0x000003D8; // type:function size:0x4 -fn_1_3DC = .text:0x000003DC; // type:function size:0x4 -_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_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte -lbl_1_data_2 = .data:0x00000002; // type:object size:0x2 data:2byte -lbl_1_data_4 = .data:0x00000004; // type:object size:0x2 data:2byte -lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index f2e3abc5..8701d170 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -4534,7 +4534,7 @@ lbl_801A49D8 = .bss:0x801A49D8; // type:object size:0x20 lbl_801A49F8 = .bss:0x801A49F8; // type:object size:0x10 data:float lbl_801A4A08 = .bss:0x801A4A08; // type:object size:0x500 data:byte lbl_801A4F08 = .bss:0x801A4F08; // type:object size:0x80 -lbl_801A4F88 = .bss:0x801A4F88; // type:object size:0x18 data:4byte +boardTutorialData = .bss:0x801A4F88; // type:object size:0x18 data:4byte DriveInfo = .bss:0x801A4FA0; // type:object size:0x20 scope:local __OSErrorTable = .bss:0x801A4FF0; // type:object size:0x40 scope:global lbl_801A5040 = .bss:0x801A5040; // type:object size:0x20 diff --git a/config/GMPP01_02/rels/w04Dll/splits.txt b/config/GMPP01_02/rels/w04Dll/splits.txt new file mode 100644 index 00000000..c1698acd --- /dev/null +++ b/config/GMPP01_02/rels/w04Dll/splits.txt @@ -0,0 +1,7 @@ +Sections: + .text type:code align:4 + .section2 type:data align:8 + .section3 type:data align:4 + .section4 type:data align:8 + .section5 type:data align:8 + .bss type:bss align:8 diff --git a/config/GMPP01_02/rels/w04Dll/symbols.txt b/config/GMPP01_02/rels/w04Dll/symbols.txt new file mode 100644 index 00000000..cc5cf0ab --- /dev/null +++ b/config/GMPP01_02/rels/w04Dll/symbols.txt @@ -0,0 +1,399 @@ +_prolog = .text:0x00000030; // type:function scope:global +_epilog = .text:0x00000094; // type:function scope:global +lbl_1_text_E0 = .text:0x000000E0; // type:label +lbl_1_text_5F4 = .text:0x000005F4; // type:label +lbl_1_text_750 = .text:0x00000750; // type:label +lbl_1_text_794 = .text:0x00000794; // type:label +lbl_1_text_798 = .text:0x00000798; // type:label +lbl_1_text_7FC = .text:0x000007FC; // type:label +lbl_1_text_958 = .text:0x00000958; // type:label +lbl_1_text_CF8 = .text:0x00000CF8; // type:label +lbl_1_text_103C = .text:0x0000103C; // type:label +lbl_1_text_1618 = .text:0x00001618; // type:label +lbl_1_text_1E60 = .text:0x00001E60; // type:label +lbl_1_text_2008 = .text:0x00002008; // type:label +lbl_1_text_2044 = .text:0x00002044; // type:label +lbl_1_text_20EC = .text:0x000020EC; // type:label +lbl_1_text_2FDC = .text:0x00002FDC; // type:label +lbl_1_text_30A4 = .text:0x000030A4; // type:label +lbl_1_text_38D8 = .text:0x000038D8; // type:label +lbl_1_text_45A8 = .text:0x000045A8; // type:label +lbl_1_text_4630 = .text:0x00004630; // type:label +lbl_1_text_4848 = .text:0x00004848; // type:label +lbl_1_text_55A0 = .text:0x000055A0; // type:label +lbl_1_text_59C4 = .text:0x000059C4; // type:label +lbl_1_text_5A2C = .text:0x00005A2C; // type:label +lbl_1_text_62B0 = .text:0x000062B0; // type:label +lbl_1_text_757C = .text:0x0000757C; // type:label +lbl_1_text_75D8 = .text:0x000075D8; // type:label +lbl_1_text_9BC0 = .text:0x00009BC0; // type:label +lbl_1_text_9E8C = .text:0x00009E8C; // type:label +lbl_1_text_A700 = .text:0x0000A700; // type:label +lbl_1_text_C36C = .text:0x0000C36C; // type:label +lbl_1_text_CF70 = .text:0x0000CF70; // type:label +lbl_1_text_D158 = .text:0x0000D158; // type:label +lbl_1_text_D214 = .text:0x0000D214; // type:label +lbl_1_text_D288 = .text:0x0000D288; // type:label +lbl_1_text_D538 = .text:0x0000D538; // type:label +lbl_1_text_D68C = .text:0x0000D68C; // type:label +lbl_1_text_D6F0 = .text:0x0000D6F0; // type:label +lbl_1_text_D754 = .text:0x0000D754; // type:label +lbl_1_text_DFE8 = .text:0x0000DFE8; // type:label +lbl_1_text_E128 = .text:0x0000E128; // type:label +lbl_1_text_E170 = .text:0x0000E170; // type:label +lbl_1_text_E358 = .text:0x0000E358; // type:label +lbl_1_text_E4A4 = .text:0x0000E4A4; // type:label +lbl_1_text_E690 = .text:0x0000E690; // type:label +lbl_1_section2_0 = .section2:0x00000000; // type:object size:0x4 +lbl_1_section3_0 = .section3:0x00000000; // type:object size:0x4 +lbl_1_section4_10 = .section4:0x00000010; // type:object size:0x4 +lbl_1_section4_14 = .section4:0x00000014; // type:object size:0x4 +lbl_1_section4_18 = .section4:0x00000018; // type:object size:0x4 +lbl_1_section4_1C = .section4:0x0000001C; // type:object size:0x4 +lbl_1_section4_20 = .section4:0x00000020; // type:object size:0x4 +lbl_1_section4_24 = .section4:0x00000024; // type:object size:0x4 +lbl_1_section4_28 = .section4:0x00000028; // type:object size:0x4 +lbl_1_section4_2C = .section4:0x0000002C; // type:object size:0x4 +lbl_1_section4_30 = .section4:0x00000030; // type:object size:0x8 +lbl_1_section4_38 = .section4:0x00000038; // type:object size:0x4 +lbl_1_section4_3C = .section4:0x0000003C; // type:object size:0x4 +lbl_1_section4_40 = .section4:0x00000040; // type:object size:0x4 +lbl_1_section4_44 = .section4:0x00000044; // type:object size:0x4 +lbl_1_section4_48 = .section4:0x00000048; // type:object size:0x4 +lbl_1_section4_4C = .section4:0x0000004C; // type:object size:0x4 +lbl_1_section4_50 = .section4:0x00000050; // type:object size:0x4 +lbl_1_section4_54 = .section4:0x00000054; // type:object size:0x4 +lbl_1_section4_58 = .section4:0x00000058; // type:object size:0x8 +lbl_1_section4_60 = .section4:0x00000060; // type:object size:0x8 +lbl_1_section4_68 = .section4:0x00000068; // type:object size:0x4 +lbl_1_section4_6C = .section4:0x0000006C; // type:object size:0x4 +lbl_1_section4_70 = .section4:0x00000070; // type:object size:0x4 +lbl_1_section4_74 = .section4:0x00000074; // type:object size:0x4 +lbl_1_section4_78 = .section4:0x00000078; // type:object size:0x4 +lbl_1_section4_7C = .section4:0x0000007C; // type:object size:0x4 +lbl_1_section4_80 = .section4:0x00000080; // type:object size:0x8 +lbl_1_section4_88 = .section4:0x00000088; // type:object size:0x8 +lbl_1_section4_90 = .section4:0x00000090; // type:object size:0x8 +lbl_1_section4_98 = .section4:0x00000098; // type:object size:0x4 +lbl_1_section4_9C = .section4:0x0000009C; // type:object size:0x4 +lbl_1_section4_A0 = .section4:0x000000A0; // type:object size:0x8 +lbl_1_section4_A8 = .section4:0x000000A8; // type:object size:0x8 +lbl_1_section4_B0 = .section4:0x000000B0; // type:object size:0x8 +lbl_1_section4_B8 = .section4:0x000000B8; // type:object size:0x4 +lbl_1_section4_BC = .section4:0x000000BC; // type:object size:0x4 +lbl_1_section4_C0 = .section4:0x000000C0; // type:object size:0x4 +lbl_1_section4_C4 = .section4:0x000000C4; // type:object size:0x4 +lbl_1_section4_C8 = .section4:0x000000C8; // type:object size:0x4 +lbl_1_section4_CC = .section4:0x000000CC; // type:object size:0x4 +lbl_1_section4_D0 = .section4:0x000000D0; // type:object size:0x4 +lbl_1_section4_D4 = .section4:0x000000D4; // type:object size:0x4 +lbl_1_section4_D8 = .section4:0x000000D8; // type:object size:0x8 +lbl_1_section4_E0 = .section4:0x000000E0; // type:object size:0x8 +lbl_1_section4_E8 = .section4:0x000000E8; // type:object size:0x8 +lbl_1_section4_F0 = .section4:0x000000F0; // type:object size:0x4 +lbl_1_section4_F4 = .section4:0x000000F4; // type:object size:0x4 +lbl_1_section4_F8 = .section4:0x000000F8; // type:object size:0x4 +lbl_1_section4_FC = .section4:0x000000FC; // type:object size:0x4 +lbl_1_section4_100 = .section4:0x00000100; // type:object size:0x4 +lbl_1_section4_104 = .section4:0x00000104; // type:object size:0x4 +lbl_1_section4_108 = .section4:0x00000108; // type:object size:0x4 +lbl_1_section4_10C = .section4:0x0000010C; // type:object size:0x4 +lbl_1_section4_110 = .section4:0x00000110; // type:object size:0x4 +lbl_1_section4_114 = .section4:0x00000114; // type:object size:0x4 +lbl_1_section4_118 = .section4:0x00000118; // type:object size:0x4 +lbl_1_section4_11C = .section4:0x0000011C; // type:object size:0x4 +lbl_1_section4_120 = .section4:0x00000120; // type:object size:0x8 +lbl_1_section4_128 = .section4:0x00000128; // type:object size:0x8 +lbl_1_section4_130 = .section4:0x00000130; // type:object size:0x4 +lbl_1_section4_134 = .section4:0x00000134; // type:object size:0x4 +lbl_1_section4_138 = .section4:0x00000138; // type:object size:0x4 +lbl_1_section4_13C = .section4:0x0000013C; // type:object size:0x4 +lbl_1_section4_140 = .section4:0x00000140; // type:object size:0x8 +lbl_1_section4_148 = .section4:0x00000148; // type:object size:0x8 +lbl_1_section4_150 = .section4:0x00000150; // type:object size:0x4 +lbl_1_section4_154 = .section4:0x00000154; // type:object size:0x4 +lbl_1_section4_158 = .section4:0x00000158; // type:object size:0x4 +lbl_1_section4_15C = .section4:0x0000015C; // type:object size:0x4 +lbl_1_section4_160 = .section4:0x00000160; // type:object size:0x4 +lbl_1_section4_164 = .section4:0x00000164; // type:object size:0x4 +lbl_1_section4_168 = .section4:0x00000168; // type:object size:0x4 +lbl_1_section4_16C = .section4:0x0000016C; // type:object size:0x4 +lbl_1_section4_170 = .section4:0x00000170; // type:object size:0x4 +lbl_1_section4_174 = .section4:0x00000174; // type:object size:0x4 +lbl_1_section4_178 = .section4:0x00000178; // type:object size:0x4 +lbl_1_section4_17C = .section4:0x0000017C; // type:object size:0x4 +lbl_1_section4_180 = .section4:0x00000180; // type:object size:0x4 +lbl_1_section4_184 = .section4:0x00000184; // type:object size:0x4 +lbl_1_section4_188 = .section4:0x00000188; // type:object size:0x4 +lbl_1_section4_18C = .section4:0x0000018C; // type:object size:0x4 +lbl_1_section4_190 = .section4:0x00000190; // type:object size:0x4 +lbl_1_section4_194 = .section4:0x00000194; // type:object size:0x4 +lbl_1_section4_198 = .section4:0x00000198; // type:object size:0x8 +lbl_1_section4_1A0 = .section4:0x000001A0; // type:object size:0x4 +lbl_1_section4_1A4 = .section4:0x000001A4; // type:object size:0x4 +lbl_1_section4_1A8 = .section4:0x000001A8; // type:object size:0x4 +lbl_1_section4_1AC = .section4:0x000001AC; // type:object size:0x4 +lbl_1_section4_1B0 = .section4:0x000001B0; // type:object size:0x4 +lbl_1_section4_1B4 = .section4:0x000001B4; // type:object size:0x4 +lbl_1_section4_1B8 = .section4:0x000001B8; // type:object size:0x4 +lbl_1_section4_1BC = .section4:0x000001BC; // type:object size:0x4 +lbl_1_section4_1C0 = .section4:0x000001C0; // type:object size:0x4 +lbl_1_section4_1C4 = .section4:0x000001C4; // type:object size:0x4 +lbl_1_section4_1C8 = .section4:0x000001C8; // type:object size:0x4 +lbl_1_section4_1CC = .section4:0x000001CC; // type:object size:0x4 +lbl_1_section4_1D0 = .section4:0x000001D0; // type:object size:0x4 +lbl_1_section4_1D4 = .section4:0x000001D4; // type:object size:0x4 +lbl_1_section4_1D8 = .section4:0x000001D8; // type:object size:0x4 +lbl_1_section4_1DC = .section4:0x000001DC; // type:object size:0x4 +lbl_1_section4_1E0 = .section4:0x000001E0; // type:object size:0x4 +lbl_1_section4_1E4 = .section4:0x000001E4; // type:object size:0x4 +lbl_1_section4_1E8 = .section4:0x000001E8; // type:object size:0x4 +lbl_1_section4_1EC = .section4:0x000001EC; // type:object size:0x4 +lbl_1_section4_1F0 = .section4:0x000001F0; // type:object size:0x8 +lbl_1_section4_1F8 = .section4:0x000001F8; // type:object size:0x8 +lbl_1_section4_200 = .section4:0x00000200; // type:object size:0x4 +lbl_1_section4_204 = .section4:0x00000204; // type:object size:0x4 data:string +lbl_1_section4_208 = .section4:0x00000208; // type:object size:0x8 +lbl_1_section4_210 = .section4:0x00000210; // type:object size:0x8 +lbl_1_section4_218 = .section4:0x00000218; // type:object size:0x8 +lbl_1_section4_220 = .section4:0x00000220; // type:object size:0x4 +lbl_1_section4_224 = .section4:0x00000224; // type:object size:0x4 +lbl_1_section4_228 = .section4:0x00000228; // type:object size:0x4 +lbl_1_section4_22C = .section4:0x0000022C; // type:object size:0xC +lbl_1_section4_238 = .section4:0x00000238; // type:object size:0x4 +lbl_1_section4_23C = .section4:0x0000023C; // type:object size:0x4 +lbl_1_section4_240 = .section4:0x00000240; // type:object size:0x8 +lbl_1_section4_248 = .section4:0x00000248; // type:object size:0x8 +lbl_1_section4_250 = .section4:0x00000250; // type:object size:0x4 +lbl_1_section4_254 = .section4:0x00000254; // type:object size:0x4 +lbl_1_section4_258 = .section4:0x00000258; // type:object size:0x4 +lbl_1_section4_25C = .section4:0x0000025C; // type:object size:0x4 +lbl_1_section4_260 = .section4:0x00000260; // type:object size:0x4 +lbl_1_section4_264 = .section4:0x00000264; // type:object size:0x4 +lbl_1_section4_268 = .section4:0x00000268; // type:object size:0x4 +lbl_1_section4_26C = .section4:0x0000026C; // type:object size:0x4 +lbl_1_section4_270 = .section4:0x00000270; // type:object size:0x4 +lbl_1_section4_274 = .section4:0x00000274; // type:object size:0x4 +lbl_1_section4_278 = .section4:0x00000278; // type:object size:0x4 +lbl_1_section4_27C = .section4:0x0000027C; // type:object size:0x4 +lbl_1_section4_280 = .section4:0x00000280; // type:object size:0x4 +lbl_1_section4_284 = .section4:0x00000284; // type:object size:0xC +lbl_1_section4_290 = .section4:0x00000290; // type:object size:0x4 +lbl_1_section4_294 = .section4:0x00000294; // type:object size:0x4 +lbl_1_section4_298 = .section4:0x00000298; // type:object size:0x4 +lbl_1_section4_29C = .section4:0x0000029C; // type:object size:0x4 +lbl_1_section4_2A0 = .section4:0x000002A0; // type:object size:0x4 +lbl_1_section4_2A4 = .section4:0x000002A4; // type:object size:0x4 +lbl_1_section4_2A8 = .section4:0x000002A8; // type:object size:0x4 +lbl_1_section4_2AC = .section4:0x000002AC; // type:object size:0x4 +lbl_1_section4_2B0 = .section4:0x000002B0; // type:object size:0x4 +lbl_1_section4_2B4 = .section4:0x000002B4; // type:object size:0x4 +lbl_1_section4_2B8 = .section4:0x000002B8; // type:object size:0x8 +lbl_1_section4_2C0 = .section4:0x000002C0; // type:object size:0x4 +lbl_1_section4_2C4 = .section4:0x000002C4; // type:object size:0x4 +lbl_1_section4_2C8 = .section4:0x000002C8; // type:object size:0x4 +lbl_1_section4_2CC = .section4:0x000002CC; // type:object size:0x4 +lbl_1_section4_2D0 = .section4:0x000002D0; // type:object size:0x4 +lbl_1_section4_2D4 = .section4:0x000002D4; // type:object size:0x4 +lbl_1_section4_2D8 = .section4:0x000002D8; // type:object size:0x4 +lbl_1_section4_2DC = .section4:0x000002DC; // type:object size:0x4 +lbl_1_section4_2E0 = .section4:0x000002E0; // type:object size:0x4 +lbl_1_section4_2E4 = .section4:0x000002E4; // type:object size:0x4 +lbl_1_section4_2E8 = .section4:0x000002E8; // type:object size:0x8 +lbl_1_section4_2F0 = .section4:0x000002F0; // type:object size:0x8 +lbl_1_section4_2F8 = .section4:0x000002F8; // type:object size:0x8 +lbl_1_section4_300 = .section4:0x00000300; // type:object size:0x4 +lbl_1_section4_304 = .section4:0x00000304; // type:object size:0x4 +lbl_1_section4_308 = .section4:0x00000308; // type:object size:0x8 +lbl_1_section4_310 = .section4:0x00000310; // type:object size:0x8 +lbl_1_section4_318 = .section4:0x00000318; // type:object size:0x8 +lbl_1_section4_320 = .section4:0x00000320; // type:object size:0x4 +lbl_1_section4_324 = .section4:0x00000324; // type:object size:0x4 +lbl_1_section4_328 = .section4:0x00000328; // type:object size:0x4 +lbl_1_section4_32C = .section4:0x0000032C; // type:object size:0x4 +lbl_1_section4_330 = .section4:0x00000330; // type:object size:0x4 +lbl_1_section4_334 = .section4:0x00000334; // type:object size:0x4 +lbl_1_section4_338 = .section4:0x00000338; // type:object size:0x4 +lbl_1_section4_33C = .section4:0x0000033C; // type:object size:0x4 +lbl_1_section4_340 = .section4:0x00000340; // type:object size:0x4 +lbl_1_section4_344 = .section4:0x00000344; // type:object size:0x4 +lbl_1_section4_348 = .section4:0x00000348; // type:object size:0x4 +lbl_1_section4_34C = .section4:0x0000034C; // type:object size:0x4 +lbl_1_section4_350 = .section4:0x00000350; // type:object size:0x8 +lbl_1_section4_358 = .section4:0x00000358; // type:object size:0x8 +lbl_1_section4_360 = .section4:0x00000360; // type:object size:0x4 +lbl_1_section4_364 = .section4:0x00000364; // type:object size:0x4 +lbl_1_section4_368 = .section4:0x00000368; // type:object size:0x4 +lbl_1_section4_36C = .section4:0x0000036C; // type:object size:0x4 +lbl_1_section4_370 = .section4:0x00000370; // type:object size:0x8 +lbl_1_section4_378 = .section4:0x00000378; // type:object size:0x8 +lbl_1_section4_380 = .section4:0x00000380; // type:object size:0x4 +lbl_1_section4_384 = .section4:0x00000384; // type:object size:0x4 +lbl_1_section4_388 = .section4:0x00000388; // type:object size:0x4 +lbl_1_section4_38C = .section4:0x0000038C; // type:object size:0x4 +lbl_1_section4_390 = .section4:0x00000390; // type:object size:0x4 +lbl_1_section4_394 = .section4:0x00000394; // type:object size:0x4 +lbl_1_section4_398 = .section4:0x00000398; // type:object size:0x8 +lbl_1_section4_3A0 = .section4:0x000003A0; // type:object size:0x4 +lbl_1_section4_3A4 = .section4:0x000003A4; // type:object size:0x4 +lbl_1_section4_3A8 = .section4:0x000003A8; // type:object size:0x4 +lbl_1_section4_3AC = .section4:0x000003AC; // type:object size:0x4 +lbl_1_section4_3B0 = .section4:0x000003B0; // type:object size:0x4 +lbl_1_section4_3B4 = .section4:0x000003B4; // type:object size:0x4 +lbl_1_section4_3B8 = .section4:0x000003B8; // type:object size:0x4 +lbl_1_section4_3BC = .section4:0x000003BC; // type:object size:0x4 +lbl_1_section4_3C0 = .section4:0x000003C0; // type:object size:0x4 +lbl_1_section4_3C4 = .section4:0x000003C4; // type:object size:0x4 +lbl_1_section4_3C8 = .section4:0x000003C8; // type:object size:0x4 +lbl_1_section4_3CC = .section4:0x000003CC; // type:object size:0x4 +lbl_1_section4_3D0 = .section4:0x000003D0; // type:object size:0x8 +lbl_1_section4_3D8 = .section4:0x000003D8; // type:object size:0x4 +lbl_1_section4_3DC = .section4:0x000003DC; // type:object size:0x4 +lbl_1_section4_3E0 = .section4:0x000003E0; // type:object size:0x4 +lbl_1_section4_3E4 = .section4:0x000003E4; // type:object size:0x4 +lbl_1_section4_3E8 = .section4:0x000003E8; // type:object size:0x4 +lbl_1_section4_3EC = .section4:0x000003EC; // type:object size:0x4 +lbl_1_section4_3F0 = .section4:0x000003F0; // type:object size:0x4 +lbl_1_section4_3F4 = .section4:0x000003F4; // type:object size:0x4 +lbl_1_section4_3F8 = .section4:0x000003F8; // type:object size:0x4 +lbl_1_section4_3FC = .section4:0x000003FC; // type:object size:0x4 +lbl_1_section4_400 = .section4:0x00000400; // type:object size:0x4 +lbl_1_section4_404 = .section4:0x00000404; // type:object size:0x4 +lbl_1_section4_408 = .section4:0x00000408; // type:object size:0x8 +lbl_1_section4_410 = .section4:0x00000410; // type:object size:0x8 +lbl_1_section4_418 = .section4:0x00000418; // type:object size:0x4 +lbl_1_section4_41C = .section4:0x0000041C; // type:object size:0x4 +lbl_1_section4_420 = .section4:0x00000420; // type:object size:0x4 +lbl_1_section4_424 = .section4:0x00000424; // type:object size:0x4 +lbl_1_section5_0 = .section5:0x00000000; // type:object size:0x280 +lbl_1_section5_280 = .section5:0x00000280; // type:object size:0x2 +lbl_1_section5_282 = .section5:0x00000282; // type:object size:0x2 +lbl_1_section5_284 = .section5:0x00000284; // type:object size:0x2 +lbl_1_section5_286 = .section5:0x00000286; // type:object size:0x2 +lbl_1_section5_288 = .section5:0x00000288; // type:object size:0x8 +lbl_1_section5_290 = .section5:0x00000290; // type:object size:0x8 +lbl_1_section5_298 = .section5:0x00000298; // type:object size:0x8 +lbl_1_section5_2A0 = .section5:0x000002A0; // type:object size:0xC +lbl_1_section5_2AC = .section5:0x000002AC; // type:object size:0x24 +lbl_1_section5_2D0 = .section5:0x000002D0; // type:object size:0x20 +lbl_1_section5_2F0 = .section5:0x000002F0; // type:object size:0x4 +lbl_1_section5_2F4 = .section5:0x000002F4; // type:object size:0x20 +lbl_1_section5_314 = .section5:0x00000314; // type:object size:0x20 +lbl_1_section5_334 = .section5:0x00000334; // type:object size:0x5 data:string +lbl_1_section5_339 = .section5:0x00000339; // type:object size:0x5 data:string +lbl_1_section5_33E = .section5:0x0000033E; // type:object size:0x5 data:string +lbl_1_section5_343 = .section5:0x00000343; // type:object size:0x5 data:string +lbl_1_section5_348 = .section5:0x00000348; // type:object size:0x10 +lbl_1_section5_358 = .section5:0x00000358; // type:object size:0x10 +lbl_1_section5_368 = .section5:0x00000368; // type:object size:0x8 data:string +lbl_1_section5_370 = .section5:0x00000370; // type:object size:0x12 data:string +lbl_1_section5_382 = .section5:0x00000382; // type:object size:0x11 data:string +lbl_1_section5_393 = .section5:0x00000393; // type:object size:0x15 +lbl_1_section5_3A8 = .section5:0x000003A8; // type:object size:0x8 data:string +lbl_1_section5_3B0 = .section5:0x000003B0; // type:object size:0x9 data:string +lbl_1_section5_3B9 = .section5:0x000003B9; // type:object size:0x6 data:string +lbl_1_section5_3BF = .section5:0x000003BF; // type:object size:0x5 data:string +lbl_1_section5_3C4 = .section5:0x000003C4; // type:object size:0x8 +lbl_1_section5_3CC = .section5:0x000003CC; // type:object size:0x14 +lbl_1_section5_3E0 = .section5:0x000003E0; // type:object size:0x14 +lbl_1_section5_3F4 = .section5:0x000003F4; // type:object size:0x20 +lbl_1_section5_414 = .section5:0x00000414; // type:object size:0x10 +lbl_1_section5_424 = .section5:0x00000424; // type:object size:0x30 +lbl_1_section5_454 = .section5:0x00000454; // type:object size:0xB data:string +lbl_1_section5_45F = .section5:0x0000045F; // type:object size:0x2 data:string +lbl_1_section5_461 = .section5:0x00000461; // type:object size:0xC data:string +lbl_1_section5_46D = .section5:0x0000046D; // type:object size:0x1B +lbl_1_section5_488 = .section5:0x00000488; // type:object size:0x3 data:string +lbl_1_section5_48B = .section5:0x0000048B; // type:object size:0x11 +lbl_1_section5_49C = .section5:0x0000049C; // type:object size:0x54 +lbl_1_section5_4F0 = .section5:0x000004F0; // type:object size:0x6 data:string +lbl_1_section5_4F6 = .section5:0x000004F6; // type:object size:0x6 data:string +lbl_1_section5_4FC = .section5:0x000004FC; // type:object size:0x6 data:string +lbl_1_section5_502 = .section5:0x00000502; // type:object size:0x8 data:string +lbl_1_section5_50A = .section5:0x0000050A; // type:object size:0x8 data:string +lbl_1_section5_512 = .section5:0x00000512; // type:object size:0xA +lbl_1_section5_51C = .section5:0x0000051C; // type:object size:0x18 +lbl_1_section5_534 = .section5:0x00000534; // type:object size:0xC +lbl_1_section5_540 = .section5:0x00000540; // type:object size:0x48 +lbl_1_section5_588 = .section5:0x00000588; // type:object size:0x4 +lbl_1_section5_58C = .section5:0x0000058C; // type:object size:0x5 data:string +lbl_1_section5_591 = .section5:0x00000591; // type:object size:0x5 data:string +lbl_1_section5_596 = .section5:0x00000596; // type:object size:0x5 data:string +lbl_1_section5_59B = .section5:0x0000059B; // type:object size:0x5 data:string +lbl_1_section5_5A0 = .section5:0x000005A0; // type:object size:0x5 data:string +lbl_1_section5_5A5 = .section5:0x000005A5; // type:object size:0x5 data:string +lbl_1_section5_5AA = .section5:0x000005AA; // type:object size:0x5 data:string +lbl_1_section5_5AF = .section5:0x000005AF; // type:object size:0x5 data:string +lbl_1_section5_5B4 = .section5:0x000005B4; // type:object size:0x8 +lbl_1_section5_5BC = .section5:0x000005BC; // type:object size:0x24 +lbl_1_section5_5E0 = .section5:0x000005E0; // type:object size:0x10 +lbl_1_section5_5F0 = .section5:0x000005F0; // type:object size:0x20 +lbl_1_section5_610 = .section5:0x00000610; // type:object size:0xE data:string +lbl_1_section5_61E = .section5:0x0000061E; // type:object size:0xE data:string +lbl_1_section5_62C = .section5:0x0000062C; // type:object size:0x10 +lbl_1_section5_63C = .section5:0x0000063C; // type:object size:0x3 data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x24 +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x2 +lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x18 +lbl_1_bss_6A = .bss:0x0000006A; // type:object size:0x2 +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 +lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 +lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 +lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 +lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x30 +lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x2 +lbl_1_bss_B2 = .bss:0x000000B2; // type:object size:0x8 +lbl_1_bss_BA = .bss:0x000000BA; // type:object size:0x8 +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x2 +lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x10 +lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0x10 +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x10 +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x6 +lbl_1_bss_FA = .bss:0x000000FA; // type:object size:0x6 +lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 +lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0xC +lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x20 +lbl_1_bss_134 = .bss:0x00000134; // type:object size:0x6 +lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x2 +lbl_1_bss_13C = .bss:0x0000013C; // type:object size:0xD4 +lbl_1_bss_210 = .bss:0x00000210; // type:object size:0x30 +lbl_1_bss_240 = .bss:0x00000240; // type:object size:0x30 +lbl_1_bss_270 = .bss:0x00000270; // type:object size:0x2 +lbl_1_bss_272 = .bss:0x00000272; // type:object size:0x2 +lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x4 +lbl_1_bss_278 = .bss:0x00000278; // type:object size:0x4 +lbl_1_bss_27C = .bss:0x0000027C; // type:object size:0x2 +lbl_1_bss_27E = .bss:0x0000027E; // type:object size:0x2 +lbl_1_bss_280 = .bss:0x00000280; // type:object size:0x2 +lbl_1_bss_282 = .bss:0x00000282; // type:object size:0x6 +lbl_1_bss_288 = .bss:0x00000288; // type:object size:0x4 +lbl_1_bss_28C = .bss:0x0000028C; // type:object size:0x8 +lbl_1_bss_294 = .bss:0x00000294; // type:object size:0x4 +lbl_1_bss_298 = .bss:0x00000298; // type:object size:0x6 +lbl_1_bss_29E = .bss:0x0000029E; // type:object size:0x8 +lbl_1_bss_2A6 = .bss:0x000002A6; // type:object size:0x6 +lbl_1_bss_2AC = .bss:0x000002AC; // type:object size:0x4 +lbl_1_bss_2B0 = .bss:0x000002B0; // type:object size:0x4 +lbl_1_bss_2B4 = .bss:0x000002B4; // type:object size:0xE +lbl_1_bss_2C2 = .bss:0x000002C2; // type:object size:0xE +lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x28 +lbl_1_bss_2F8 = .bss:0x000002F8; // type:object size:0x2 +lbl_1_bss_2FA = .bss:0x000002FA; // type:object size:0x2 +lbl_1_bss_2FC = .bss:0x000002FC; // type:object size:0xC +lbl_1_bss_308 = .bss:0x00000308; // type:object size:0xC +lbl_1_bss_314 = .bss:0x00000314; // type:object size:0x4 +lbl_1_bss_318 = .bss:0x00000318; // type:object size:0x4 +lbl_1_bss_31C = .bss:0x0000031C; // type:object size:0x4 +lbl_1_bss_320 = .bss:0x00000320; // type:object size:0x4 +lbl_1_bss_324 = .bss:0x00000324; // type:object size:0x2 +lbl_1_bss_326 = .bss:0x00000326; // type:object size:0x2 diff --git a/configure.py b/configure.py index e1abca70..8f551ad4 100644 --- a/configure.py +++ b/configure.py @@ -1108,8 +1108,8 @@ config.libs = [ Rel( "m435Dll", # Darts of Doom objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m435Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m435Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m435Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01" "GMPJ01_00"), "REL/m435Dll/sequence.c"), }, ), Rel( @@ -1454,87 +1454,87 @@ config.libs = [ Rel( "w01Dll", # Toad's Midway Madness objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w01Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w01Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w01Dll/mg_item.c"), + Object(Matching, "REL/w01Dll/main.c"), + Object(Matching, "REL/w01Dll/mg_coin.c"), + Object(Matching, "REL/w01Dll/mg_item.c"), }, ), Rel( "w02Dll", # Goomba's Greedy Gala objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/gendice.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/gamble.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/shuffleboard.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w02Dll/roulette.c"), + Object(Matching, "REL/w02Dll/main.c"), + Object(Matching, "REL/w02Dll/gendice.c"), + Object(Matching, "REL/w02Dll/gamble.c"), + Object(Matching, "REL/w02Dll/mg_coin.c"), + Object(Matching, "REL/w02Dll/mg_item.c"), + Object(Matching, "REL/w02Dll/shuffleboard.c"), + Object(Matching, "REL/w02Dll/roulette.c"), }, ), Rel( "w03Dll", # Shy Guy's Jungle Jam objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/statue.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/condor.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/river.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/smoke.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w03Dll/mg_item.c"), + Object(Matching, "REL/w03Dll/main.c"), + Object(Matching, "REL/w03Dll/statue.c"), + Object(Matching, "REL/w03Dll/condor.c"), + Object(Matching, "REL/w03Dll/river.c"), + Object(Matching, "REL/w03Dll/smoke.c"), + Object(Matching, "REL/w03Dll/mg_coin.c"), + Object(Matching, "REL/w03Dll/mg_item.c"), }, ), Rel( "w04Dll", # Boo's Haunted Bash objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/bridge.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/boo_event.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/big_boo.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w04Dll/mg_coin.c"), + Object(Matching, "REL/w04Dll/main.c"), + Object(Matching, "REL/w04Dll/bridge.c"), + Object(Matching, "REL/w04Dll/boo_event.c"), + Object(Matching, "REL/w04Dll/big_boo.c"), + Object(Matching, "REL/w04Dll/mg_item.c"), + Object(Matching, "REL/w04Dll/mg_coin.c"), }, ), Rel( "w05Dll", # Koopa's Seaside Soiree objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/hotel.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/monkey.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/dolphin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w05Dll/mg_coin.c"), + Object(Matching, "REL/w05Dll/main.c"), + Object(Matching, "REL/w05Dll/hotel.c"), + Object(Matching, "REL/w05Dll/monkey.c"), + Object(Matching, "REL/w05Dll/dolphin.c"), + Object(Matching, "REL/w05Dll/mg_item.c"), + Object(Matching, "REL/w05Dll/mg_coin.c"), }, ), Rel( "w06Dll", # Bowser's Gnarly Party objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/mg_item.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/mg_coin.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/fire.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/bridge.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w06Dll/bowser.c"), + Object(Matching, "REL/w06Dll/main.c"), + Object(Matching, "REL/w06Dll/mg_item.c"), + Object(Matching, "REL/w06Dll/mg_coin.c"), + Object(Matching, "REL/w06Dll/fire.c"), + Object(Matching, "REL/w06Dll/bridge.c"), + Object(Matching, "REL/w06Dll/bowser.c"), }, ), Rel( "w10Dll", # Tutorial board objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/host.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/scene.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w10Dll/tutorial.c"), + Object(Matching, "REL/w10Dll/main.c"), + Object(Matching, "REL/w10Dll/host.c"), + Object(Matching, "REL/w10Dll/scene.c"), + Object(Matching, "REL/w10Dll/tutorial.c"), }, ), Rel( "w20Dll", # Mega Board Mayhem objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w20Dll/main.c"), + Object(Matching, "REL/w20Dll/main.c"), }, ), Rel( "w21Dll", # Mini Board Mad Dash objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/w21Dll/main.c"), + Object(Matching, "REL/w21Dll/main.c"), }, ), Rel( diff --git a/src/REL/w01Dll/mg_item.c b/src/REL/w01Dll/mg_item.c index 99d31a68..6830c410 100755 --- a/src/REL/w01Dll/mg_item.c +++ b/src/REL/w01Dll/mg_item.c @@ -83,10 +83,28 @@ static s16 lbl_1_bss_7A8; static s32 lbl_1_bss_7A4; static AnimData *lbl_1_bss_7A0; -static s32 lbl_1_data_F08[] = { DATA_MAKE_NUM(DATADIR_BOARD, 109), DATA_MAKE_NUM(DATADIR_BOARD, 110), DATA_MAKE_NUM(DATADIR_BOARD, 111), - DATA_MAKE_NUM(DATADIR_BOARD, 112), DATA_MAKE_NUM(DATADIR_BOARD, 113), DATA_MAKE_NUM(DATADIR_BOARD, 114), DATA_MAKE_NUM(DATADIR_BOARD, 115), - DATA_MAKE_NUM(DATADIR_BOARD, 116), DATA_MAKE_NUM(DATADIR_BOARD, 118), DATA_MAKE_NUM(DATADIR_BOARD, 119), DATA_MAKE_NUM(DATADIR_BOARD, 120), - DATA_MAKE_NUM(DATADIR_BOARD, 121), DATA_MAKE_NUM(DATADIR_BOARD, 122), DATA_MAKE_NUM(DATADIR_BOARD, 123) }; +#if VERSION_JP +#define MDL_ID_SHIFT 0 +#else +#define MDL_ID_SHIFT 1 +#endif + +static s32 lbl_1_data_F08[] = { + DATA_MAKE_NUM(DATADIR_BOARD, 108 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 109 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 110 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 111 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 112 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 113 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 114 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 115 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 117 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 118 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 119 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 120 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 121 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 122 + MDL_ID_SHIFT), +}; static s32 lbl_1_data_F40[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 23), DATA_MAKE_NUM(DATADIR_PEACHMOT, 23), DATA_MAKE_NUM(DATADIR_YOSHIMOT, 23), DATA_MAKE_NUM(DATADIR_WARIOMOT, 23), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 23), diff --git a/src/REL/w02Dll/mg_item.c b/src/REL/w02Dll/mg_item.c index e7b041b5..fd0f4073 100644 --- a/src/REL/w02Dll/mg_item.c +++ b/src/REL/w02Dll/mg_item.c @@ -10,21 +10,27 @@ #include "game/minigame_seq.h" +#if VERSION_JP +#define MDL_ID_SHIFT 0 +#else +#define MDL_ID_SHIFT 1 +#endif + s32 lbl_1_data_428[14] = { - DATA_MAKE_NUM(DATADIR_BOARD, 0x6D), - DATA_MAKE_NUM(DATADIR_BOARD, 0x6E), - DATA_MAKE_NUM(DATADIR_BOARD, 0x6F), - DATA_MAKE_NUM(DATADIR_BOARD, 0x70), - DATA_MAKE_NUM(DATADIR_BOARD, 0x71), - DATA_MAKE_NUM(DATADIR_BOARD, 0x72), - DATA_MAKE_NUM(DATADIR_BOARD, 0x73), - DATA_MAKE_NUM(DATADIR_BOARD, 0x74), - DATA_MAKE_NUM(DATADIR_BOARD, 0x76), - DATA_MAKE_NUM(DATADIR_BOARD, 0x77), - DATA_MAKE_NUM(DATADIR_BOARD, 0x78), - DATA_MAKE_NUM(DATADIR_BOARD, 0x79), - DATA_MAKE_NUM(DATADIR_BOARD, 0x7A), - DATA_MAKE_NUM(DATADIR_BOARD, 0x7B), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6C + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6D + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6E + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6F + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x70 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x71 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x72 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x73 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x75 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x76 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x77 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x78 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x79 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x7A + MDL_ID_SHIFT), }; char *lbl_1_data_474[3] = { "item", "item1", "item2" }; diff --git a/src/REL/w03Dll/mg_item.c b/src/REL/w03Dll/mg_item.c index 349a7176..24d08ad3 100644 --- a/src/REL/w03Dll/mg_item.c +++ b/src/REL/w03Dll/mg_item.c @@ -106,21 +106,27 @@ s8 lbl_1_data_4E6[] = { 1, 1, 3, 3, 2, 2, 2, 1, 2, 3, 0, 4, 5, 0 }; char *lbl_1_data_508[] = { "item", "item1", "item2" }; +#if VERSION_JP +#define MDL_ID_SHIFT 0 +#else +#define MDL_ID_SHIFT 1 +#endif + s32 lbl_1_data_514[] = { - DATA_MAKE_NUM(DATADIR_BOARD, 0x6D), - DATA_MAKE_NUM(DATADIR_BOARD, 0x6E), - DATA_MAKE_NUM(DATADIR_BOARD, 0x6F), - DATA_MAKE_NUM(DATADIR_BOARD, 0x70), - DATA_MAKE_NUM(DATADIR_BOARD, 0x71), - DATA_MAKE_NUM(DATADIR_BOARD, 0x72), - DATA_MAKE_NUM(DATADIR_BOARD, 0x73), - DATA_MAKE_NUM(DATADIR_BOARD, 0x74), - DATA_MAKE_NUM(DATADIR_BOARD, 0x76), - DATA_MAKE_NUM(DATADIR_BOARD, 0x77), - DATA_MAKE_NUM(DATADIR_BOARD, 0x78), - DATA_MAKE_NUM(DATADIR_BOARD, 0x79), - DATA_MAKE_NUM(DATADIR_BOARD, 0x7A), - DATA_MAKE_NUM(DATADIR_BOARD, 0x7B), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6C + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6D + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6E + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6F + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x70 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x71 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x72 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x73 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x75 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x76 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x77 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x78 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x79 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x7A + MDL_ID_SHIFT), }; // BSS diff --git a/src/REL/w04Dll/big_boo.c b/src/REL/w04Dll/big_boo.c index b5f6b3cf..16df9492 100755 --- a/src/REL/w04Dll/big_boo.c +++ b/src/REL/w04Dll/big_boo.c @@ -913,7 +913,7 @@ static void fn_1_8A60(void) { HuPrcVSleep(); } fn_1_7300(); - #if VERSION_NTSC + #if VERSION_ENG sprintf(sp10, "%d", var_r29); BoardWinCreate(2, MAKE_MESSID(32, 11), 9); BoardWinInsertMesSet(MAKE_MESSID_PTR(sp10), 0); diff --git a/src/REL/w04Dll/mg_item.c b/src/REL/w04Dll/mg_item.c index fe8464a2..cbda9008 100755 --- a/src/REL/w04Dll/mg_item.c +++ b/src/REL/w04Dll/mg_item.c @@ -45,21 +45,27 @@ static s32 lbl_1_data_534[] = { 0x00000468 }; +#if VERSION_JP +#define MDL_ID_SHIFT 0 +#else +#define MDL_ID_SHIFT 1 +#endif + static s32 lbl_1_data_540[] = { - DATA_MAKE_NUM(DATADIR_BOARD, 109), - DATA_MAKE_NUM(DATADIR_BOARD, 110), - DATA_MAKE_NUM(DATADIR_BOARD, 111), - DATA_MAKE_NUM(DATADIR_BOARD, 112), - DATA_MAKE_NUM(DATADIR_BOARD, 113), - DATA_MAKE_NUM(DATADIR_BOARD, 114), - DATA_MAKE_NUM(DATADIR_BOARD, 115), - DATA_MAKE_NUM(DATADIR_BOARD, 116), - DATA_MAKE_NUM(DATADIR_BOARD, 118), - DATA_MAKE_NUM(DATADIR_BOARD, 119), - DATA_MAKE_NUM(DATADIR_BOARD, 120), - DATA_MAKE_NUM(DATADIR_BOARD, 121), - DATA_MAKE_NUM(DATADIR_BOARD, 122), - DATA_MAKE_NUM(DATADIR_BOARD, 123), + DATA_MAKE_NUM(DATADIR_BOARD, 108 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 109 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 110 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 111 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 112 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 113 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 114 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 115 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 117 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 118 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 119 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 120 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 121 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 122 + MDL_ID_SHIFT), DATA_MAKE_NUM(DATADIR_W02, 24), DATA_MAKE_NUM(DATADIR_W02, 25), DATA_MAKE_NUM(DATADIR_W02, 26), diff --git a/src/REL/w05Dll/mg_item.c b/src/REL/w05Dll/mg_item.c index f0f6c031..0a596430 100644 --- a/src/REL/w05Dll/mg_item.c +++ b/src/REL/w05Dll/mg_item.c @@ -172,21 +172,27 @@ void fn_1_7400(void) HuPrcEnd(); } +#if VERSION_JP +#define MDL_ID_SHIFT 0 +#else +#define MDL_ID_SHIFT 1 +#endif + s32 lbl_1_data_350[14] = { - DATA_MAKE_NUM(DATADIR_BOARD, 0x6D), - DATA_MAKE_NUM(DATADIR_BOARD, 0x6E), - DATA_MAKE_NUM(DATADIR_BOARD, 0x6F), - DATA_MAKE_NUM(DATADIR_BOARD, 0x70), - DATA_MAKE_NUM(DATADIR_BOARD, 0x71), - DATA_MAKE_NUM(DATADIR_BOARD, 0x72), - DATA_MAKE_NUM(DATADIR_BOARD, 0x73), - DATA_MAKE_NUM(DATADIR_BOARD, 0x74), - DATA_MAKE_NUM(DATADIR_BOARD, 0x76), - DATA_MAKE_NUM(DATADIR_BOARD, 0x77), - DATA_MAKE_NUM(DATADIR_BOARD, 0x78), - DATA_MAKE_NUM(DATADIR_BOARD, 0x79), - DATA_MAKE_NUM(DATADIR_BOARD, 0x7A), - DATA_MAKE_NUM(DATADIR_BOARD, 0x7B), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6C + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6D + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6E + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x6F + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x70 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x71 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x72 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x73 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x75 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x76 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x77 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x78 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x79 + MDL_ID_SHIFT), + DATA_MAKE_NUM(DATADIR_BOARD, 0x7A + MDL_ID_SHIFT), }; s16 lbl_1_data_388[92] = { 0, 1, -1, 2, 0, -1, 1, 2, 0, -1, 2, 1, 0, 2, -1, 1, 0, 2, 1, -1, 1, 2, -1, 0, 1, 2, 0, -1, 1, -1, 0, 2, 1, -1, 2, 0, 1, 0, diff --git a/src/REL/w06Dll/bowser.c b/src/REL/w06Dll/bowser.c index c2590736..bce6d422 100755 --- a/src/REL/w06Dll/bowser.c +++ b/src/REL/w06Dll/bowser.c @@ -89,6 +89,12 @@ static s32 lbl_1_data_4CC[8] = { 0x000002E3 }; +#if VERSION_JP +#define MDL_ID_SHIFT 0 +#else +#define MDL_ID_SHIFT 1 +#endif + static s32 lbl_1_data_4EC[] = { DATA_MAKE_NUM(DATADIR_BKOOPA, 8), DATA_MAKE_NUM(DATADIR_BKOOPA, 10), @@ -1036,7 +1042,7 @@ static void fn_1_C40C(void) { BoardCameraMotionWait(); BoardCameraTargetModelSet(-1); BoardModelRotYSet(lbl_1_data_498, var_f30); - lbl_1_data_4A0 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 99), NULL, 0); + lbl_1_data_4A0 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 98 + MDL_ID_SHIFT), NULL, 0); BoardModelVisibilitySet(lbl_1_data_4A0, 0); BoardModelLayerSet(lbl_1_data_4A0, 2); var_r29 = BoardSpaceStarGet(lbl_1_bss_0->unk04 - 1); From f8378e169a2f5c8824314bce77bccb339ba0162c Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sat, 14 Dec 2024 15:28:58 -0800 Subject: [PATCH 063/178] Matched m419Dll (US) --- config/GMPE01_00/rels/m419Dll/symbols.txt | 216 +- configure.py | 2 +- include/ext_math.h | 1 + src/REL/m419Dll/main.c | 2987 +++++++++++++++++++++ 4 files changed, 3097 insertions(+), 109 deletions(-) create mode 100755 src/REL/m419Dll/main.c diff --git a/config/GMPE01_00/rels/m419Dll/symbols.txt b/config/GMPE01_00/rels/m419Dll/symbols.txt index 1a40f379..a3696d5f 100644 --- a/config/GMPE01_00/rels/m419Dll/symbols.txt +++ b/config/GMPE01_00/rels/m419Dll/symbols.txt @@ -46,117 +46,117 @@ fn_1_104A0 = .text:0x000104A0; // type:function size:0x60 fn_1_10500 = .text:0x00010500; // type:function size:0x3E0 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_88 = .rodata:0x00000088; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -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_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -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_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x8 data:double -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:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -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_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 scope:local data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 scope:local data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +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_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:0x4 scope:local data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:double +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_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 lbl_1_data_20 = .data:0x00000020; // type:object size:0x2C lbl_1_data_4C = .data:0x0000004C; // type:object size:0x10 -lbl_1_data_5C = .data:0x0000005C; // type:object size:0x60 -lbl_1_data_BC = .data:0x000000BC; // type:object size:0xB data:string +lbl_1_data_5C = .data:0x0000005C; // type:object size:0x60 data:float +lbl_1_data_BC = .data:0x000000BC; // type:object size:0xB scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x60 lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x1 data:byte lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x20 diff --git a/configure.py b/configure.py index 8f551ad4..ac7d5cd7 100644 --- a/configure.py +++ b/configure.py @@ -990,7 +990,7 @@ config.libs = [ Rel( "m419Dll", # Tree Stomp objects={ - Object(NonMatching, "REL/m419Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m419Dll/main.c"), }, ), Rel( diff --git a/include/ext_math.h b/include/ext_math.h index 4651c2c4..e9a608a6 100644 --- a/include/ext_math.h +++ b/include/ext_math.h @@ -19,6 +19,7 @@ typedef struct vec2f { #define VECDistanceZY(a, b) sqrtf((((a)->z-(b)->z)*((a)->z-(b)->z))+(((a)->y-(b)->y)*((a)->y-(b)->y))) #define VECSumXZ(a, b) sqrtf((((a)->x+(b)->x)*((a)->x+(b)->x))+(((a)->z+(b)->z)*((a)->z+(b)->z))) +#define VECMagXYZ(a) sqrtf(((a)->x*(a)->x)+((a)->y*(a)->y)+((a)->z*(a)->z)) #define VECMagXZ(a) sqrtf(((a)->x*(a)->x)+((a)->z*(a)->z)) #define VECMagXY(a) sqrtf(((a)->x*(a)->x)+((a)->y*(a)->y)) diff --git a/src/REL/m419Dll/main.c b/src/REL/m419Dll/main.c new file mode 100755 index 00000000..e0dfba50 --- /dev/null +++ b/src/REL/m419Dll/main.c @@ -0,0 +1,2987 @@ +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/process.h" +#include "game/sprite.h" +#include "game/wipe.h" + +#include "dolphin.h" +#include "ext_math.h" + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ char unk04[0xB4]; +} StructBssC8; // Size 0xB8 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02[5]; +} StructBss1E8; // Size 0xC + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ s16 unk06[8]; + /* 0x16 */ s16 unk16; + /* 0x18 */ s16 unk18; + /* 0x1A */ s16 unk1A; + /* 0x1C */ s16 unk1C[4]; + /* 0x24 */ s16 unk24; + /* 0x26 */ char unk26[2]; + /* 0x28 */ s32 unk28; + /* 0x2C */ s32 unk2C; + /* 0x30 */ s32 unk30; + /* 0x34 */ s32 unk34; + /* 0x38 */ s32 unk38; + /* 0x3C */ s32 unk3C; + /* 0x40 */ s32 unk40; + /* 0x44 */ s32 unk44; + /* 0x48 */ s32 unk48; + /* 0x4C */ s32 unk4C; + /* 0x50 */ s32 unk50; + /* 0x54 */ float unk54; + /* 0x58 */ float unk58; + /* 0x5C */ float unk5C; + /* 0x60 */ float unk60; + /* 0x64 */ float unk64; + /* 0x68 */ float unk68; + /* 0x6C */ float unk6C; + /* 0x70 */ float unk70; + /* 0x74 */ float unk74; + /* 0x78 */ float unk78; + /* 0x7C */ float unk7C; + /* 0x80 */ float unk80; + /* 0x84 */ float unk84; + /* 0x88 */ float unk88; + /* 0x8C */ float unk8C; + /* 0x90 */ float unk90; + /* 0x94 */ float unk94; + /* 0x98 */ float unk98; + /* 0x9C */ float unk9C; + /* 0xA0 */ s8 unkA0; + /* 0xA1 */ s8 unkA1; + /* 0xA2 */ s8 unkA2; + /* 0xA3 */ s8 unkA3; + /* 0xA4 */ u16 unkA4; + /* 0xA6 */ u16 unkA6; + /* 0xA8 */ s32 unkA8; + /* 0xAC */ s32 unkAC; + /* 0xB0 */ s32 unkB0; + /* 0xB4 */ s32 unkB4; + /* 0xB8 */ s32 unkB8; + /* 0xBC */ s32 unkBC; + /* 0xC0 */ s32 unkC0; + /* 0xC4 */ float unkC4; + /* 0xC8 */ char unkC8[4]; + /* 0xCC */ float unkCC; + /* 0xD0 */ s32 unkD0; + /* 0xD4 */ s32 unkD4; + /* 0xD8 */ float unkD8; + /* 0xDC */ float unkDC; +} StructBss200; // Size 0xE0 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ s16 unk06; + /* 0x08 */ s16 unk08; + /* 0x0A */ s16 unk0A; + /* 0x0C */ float unk0C; + /* 0x10 */ float unk10; + /* 0x14 */ float unk14; + /* 0x18 */ float unk18; + /* 0x1C */ float unk1C; + /* 0x20 */ float unk20; + /* 0x24 */ float unk24; + /* 0x28 */ float unk28; +} StructBss190; // Size 0x2C + +void fn_1_57C(s16 arg0); +void fn_1_AD0(s16 arg0); +void fn_1_F58(void); +void fn_1_2254(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_2744(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_47E4(void); +void fn_1_4B20(void); +void fn_1_9AF0(void); +void fn_1_DF98(void); +void fn_1_104A0(void); +void fn_1_10500(void); + +s16 lbl_1_bss_5C2; +s16 lbl_1_bss_5C0; // unused +s16 lbl_1_bss_5BE; +s16 lbl_1_bss_5BC; +s16 lbl_1_bss_5BA; +s16 lbl_1_bss_5B8; +s32 lbl_1_bss_5B4; +s32 lbl_1_bss_5B0; +s32 lbl_1_bss_5AC; +s32 lbl_1_bss_5A8; +s32 lbl_1_bss_5A4; +s32 lbl_1_bss_594[4]; +s32 lbl_1_bss_584[4]; +s32 lbl_1_bss_580; +StructBss200 lbl_1_bss_200[4]; +StructBss1E8 lbl_1_bss_1E8[2]; +StructBss190 lbl_1_bss_190[2]; +Process* lbl_1_bss_180[4]; +StructBssC8 lbl_1_bss_C8; +Vec lbl_1_bss_BC; +Vec lbl_1_bss_B0; +Vec lbl_1_bss_A4; +void* lbl_1_bss_84[8]; +void* lbl_1_bss_64[8]; +u8 lbl_1_bss_60; +Vec lbl_1_bss_0[8]; + +s32 lbl_1_data_0[] = { 0, 1, 2, 3, 4, 5, 6, 7 }; + +s32 lbl_1_data_20[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 21), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 26), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), + DATA_MAKE_NUM(DATADIR_M419, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 25), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 13), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 16) +}; + +s32 lbl_1_data_4C[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 79), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 22) +}; + +Vec lbl_1_data_5C[] = { + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f } +}; + +void ObjectSetup(void) { + Process* temp_r3; + + temp_r3 = omInitObjMan(50, 0x2000); + omGameSysInit(temp_r3); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 20.0f, 20.0f, 10000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 640, 480); + lbl_1_bss_C8.unk00 = omAddObjEx(temp_r3, 0x7FDA, 0, 0, -1, omOutViewMulti); + lbl_1_bss_C8.unk00->work[0] = 1; + CRotM->x = -40.0f; + CRotM->y = 0.0f; + CRotM->z = 0.0f; + CenterM->x = 0.0f; + CenterM->y = 0.0f; + CenterM->z = 3000.0f; + CZoomM[0] = 1500.0f; + Hu3DLighInit(); + lbl_1_bss_5C2 = Hu3DGLightCreate(10000.0f, 0.0f, 10000.0f, -1.0f, 0.0f, -1.0f, 0xFF, 0xFF, 0xFF); + Hu3DGLightPosAimSet(lbl_1_bss_5C2, 0.0f, 4330.13f, 2500.0f, 0.0f, 0.0f, 0.0f); + Hu3DGLightInfinitytSet(lbl_1_bss_5C2); + lbl_1_bss_BC.x = -500.0f; + lbl_1_bss_BC.y = 4000.0f; + lbl_1_bss_BC.z = 0.0f; + lbl_1_bss_B0.x = lbl_1_bss_B0.z = 0.0f; + lbl_1_bss_B0.y = 1.0f; + lbl_1_bss_A4.x = 0.0f; + lbl_1_bss_A4.y = 0.0f; + lbl_1_bss_A4.z = 0.0f; + Hu3DShadowCreate(30.0f, 20.0f, 10000.0f); + Hu3DShadowTPLvlSet(0.5f); + Hu3DShadowPosSet(&lbl_1_bss_BC, &lbl_1_bss_B0, &lbl_1_bss_A4); + Hu3DBGColorSet(0, 0, 0); + fn_1_F58(); + HuPrcChildCreate(fn_1_10500, 0x1000, 0x2000, 0, HuPrcCurrentGet()); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); +} + +void fn_1_4A0(void) { + s16 i; + + Hu3DLayerHookSet(1, fn_1_57C); + for (i = 0; i < 8; i++) { + lbl_1_bss_84[i] = HuMemDirectMallocNum(HEAP_DATA, 0x4800, MEMORY_DEFAULT_NUM); + lbl_1_bss_64[i] = HuMemDirectMallocNum(HEAP_DATA, 0x9000, MEMORY_DEFAULT_NUM); + lbl_1_bss_0[i].x = lbl_1_bss_0[i].y = 0.0f; + } +} + +void fn_1_57C(s16 arg0) { + Vec sp14; + Vec sp8; + ModelData* temp_r30; + s16 var_r31; + + temp_r30 = &Hu3DData[lbl_1_bss_5BE]; + sp14 = temp_r30->pos; + sp14.y += 50.0f; + Hu3D3Dto2D(&sp14, 1, &sp8.x); + var_r31 = sp8.x - 96.0f; + var_r31 &= 0xFFF8; + sp8.x = var_r31; + if (sp8.x < 0.0f) { + sp8.x = 0.0f; + } + if (sp8.x > 448.0f) { + sp8.x = 448.0f; + } + var_r31 = sp8.y - 96.0f; + var_r31 &= 0xFFF8; + sp8.y = var_r31; + if (sp8.y < 0.0f) { + sp8.y = 0.0f; + } + if (sp8.y > 288.0f) { + sp8.y = 288.0f; + } + lbl_1_bss_0[lbl_1_bss_60] = sp8; + GXSetTexCopySrc(sp8.x, sp8.y, 192, 192); + GXSetTexCopyDst(96, 96, GX_TF_RGB5A3, 1); + GXCopyTex(lbl_1_bss_84[lbl_1_bss_60], 0); + GXSetTexCopySrc(sp8.x, sp8.y, 192, 192); + GXSetTexCopyDst(96, 96, GX_TF_Z24X8, 1); + GXCopyTex(lbl_1_bss_64[lbl_1_bss_60], 0); +} + +void fn_1_848(ModelData* arg0, Mtx arg1) { + Mtx44 sp10; + GXColor spC; + s16 i; + + C_MTXOrtho(sp10, 0.0f, 480.0f, 0.0f, 640.0f, 0.0f, 8000.0f); + GXSetProjection(sp10, GX_ORTHOGRAPHIC); + PSMTXIdentity(arg1); + GXLoadPosMtxImm(arg1, GX_PNMTX0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_RGBA6, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_TEXC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_A0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevOp(GX_TEVSTAGE1, GX_PASSCLR); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR_NULL); + GXSetZTexture(GX_ZT_REPLACE, GX_TF_Z24X8, 0); + GXSetNumTexGens(1); + GXSetNumTevStages(2); + if (lbl_1_bss_5BC != 0) { + for (i = 1; i < 8; i++) { + spC.a = i * 24; + GXSetTevColor(GX_TEVREG0, spC); + fn_1_AD0((lbl_1_bss_60 - 8 + i) & 7); + } + } + lbl_1_bss_60 = (lbl_1_bss_60 + 1) & 7; + GXSetZTexture(GX_ZT_DISABLE, GX_TF_Z8, 0); +} + +void fn_1_AD0(s16 arg0) { + GXTexObj sp58; + GXTexObj sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + + GXInitTexObj(&sp58, lbl_1_bss_84[arg0], 96, 96, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, GX_FALSE); + GXInitTexObjLOD(&sp58, GX_NEAR, GX_NEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); + GXLoadTexObj(&sp58, GX_TEXMAP0); + GXInitTexObj(&sp38, lbl_1_bss_64[arg0], 96, 96, GX_TF_Z24X8, GX_CLAMP, GX_CLAMP, GX_FALSE); + GXLoadTexObj(&sp38, GX_TEXMAP1); + sp2C.x = 0.0f; + sp2C.y = 0.0f; + sp2C.z = 0.0f; + sp20.x = 640.0f; + sp20.y = 0.0f; + sp20.z = 0.0f; + sp14.x = 640.0f; + sp14.y = 480.0f; + sp14.z = 0.0f; + sp8.x = 0.0f; + sp8.y = 480.0f; + sp8.z = 0.0f; + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + GXSetZCompLoc(GX_FALSE); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(lbl_1_bss_0[arg0].x, lbl_1_bss_0[arg0].y, 0.0f); + GXTexCoord2f32(0.0f, 0.0f); + GXPosition3f32(lbl_1_bss_0[arg0].x + 192.0f, lbl_1_bss_0[arg0].y, 0.0f); + GXTexCoord2f32(1.0f, 0.0f); + GXPosition3f32(lbl_1_bss_0[arg0].x + 192.0f, lbl_1_bss_0[arg0].y + 192.0f, 0.0f); + GXTexCoord2f32(1.0f, 1.0f); + GXPosition3f32(lbl_1_bss_0[arg0].x, lbl_1_bss_0[arg0].y + 192.0f, 0.0f); + GXTexCoord2f32(0.0f, 1.0f); + GXEnd(); +} + +void fn_1_F58(void) { + void* var_r29; + StructBss1E8* temp_r26; + StructBss200* temp_r31; + Process* var_r25; + float temp_f31; + s16 var_r30; + s32 var_r22; + s32 var_r23; + AnimData* var_r21; + s32 i; + s32 j; + + lbl_1_bss_5BC = 0; + lbl_1_bss_5BA = 0; + lbl_1_bss_5B0 = 0; + HuAudSndGrpSet(0x2C); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 8), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowMapSet(var_r30); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 9), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowMapSet(var_r30); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 10), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowSet(var_r30); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 11), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowSet(var_r30); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 12), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + lbl_1_bss_5B8 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + temp_r26 = &lbl_1_bss_1E8[0]; + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 13), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + temp_r26->unk00 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + for (j = 0; j < 5; j++) { + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 14 + j), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r26->unk02[j] = Hu3DJointMotion(var_r30, var_r29); + } + Hu3DMotionSet(var_r30, temp_r26->unk02[0]); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + HuPrcChildCreate(fn_1_47E4, 0x2000, 0x2000, 0, HuPrcCurrentGet()); + temp_r26 = &lbl_1_bss_1E8[1]; + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 19), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + temp_r26->unk00 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + for (j = 0; j < 5; j++) { + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 20 + j), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r26->unk02[j] = Hu3DJointMotion(var_r30, var_r29); + } + Hu3DMotionSet(var_r30, temp_r26->unk02[0]); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + HuPrcChildCreate(fn_1_4B20, 0x2000, 0x2000, 0, HuPrcCurrentGet()); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 25), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + lbl_1_bss_190[0].unk00 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, 1); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 26), MEMORY_DEFAULT_NUM, HEAP_DATA); + lbl_1_bss_190[0].unk04 = Hu3DJointMotion(var_r30, var_r29); + Hu3DMotionSet(var_r30, lbl_1_bss_190[0].unk04); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 27), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + lbl_1_bss_190[0].unk02 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, 1); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 28), MEMORY_DEFAULT_NUM, HEAP_DATA); + lbl_1_bss_190[0].unk06 = Hu3DJointMotion(var_r30, var_r29); + Hu3DMotionSet(var_r30, lbl_1_bss_190[0].unk04); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + lbl_1_bss_190[0].unk08 = 0; + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 29), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + lbl_1_bss_190[1].unk00 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + lbl_1_bss_190[1].unk08 = 1; + Hu3DModelShadowSet(var_r30); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 30), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r29); + lbl_1_bss_190[1].unk02 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, 1); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + for (i = 0, var_r22 = 0; i < 4; i++) { + temp_r31 = &lbl_1_bss_200[i]; + temp_r31->unk28 = i; + temp_r31->unk2C = i; + temp_r31->unk30 = GWPlayerCfg[i].pad_idx; + if (GWPlayerCfg[temp_r31->unk28].group == 0) { + lbl_1_bss_5AC = temp_r31->unk28; + lbl_1_bss_5BE = temp_r31->unk00 = CharModelCreate(lbl_1_data_0[GWPlayerCfg[i].character], 2); + Hu3DModelLayerSet(temp_r31->unk00, 0); + CharModelLayerSetAll(2); + fn_1_4A0(); + temp_r31->unk68 = temp_r31->unk70 = temp_r31->unk6C = 0.0f; + temp_r31->unk9C = temp_r31->unk6C; + temp_r31->unk54 = temp_r31->unk58 = temp_r31->unk5C = 0.0f; + temp_r31->unk8C = 50.0f; + temp_r31->unk90 = 0.0f; + temp_r31->unk94 = 1.0f; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk54, temp_r31->unk58, temp_r31->unk5C); + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, temp_r31->unk6C, temp_r31->unk70); + Hu3DModelShadowSet(temp_r31->unk00); + for (j = 0; j < 11; j++) { + var_r23 = lbl_1_data_20[j]; + if ((var_r23 & 0xFFFF0000) == DATADIR_M419) { + var_r23 += GWPlayerCfg[i].character; + } + temp_r31->unk06[j] = CharModelMotionCreate(lbl_1_data_0[GWPlayerCfg[i].character], var_r23); + } + CharModelMotionSet(lbl_1_data_0[GWPlayerCfg[i].character], temp_r31->unk06[0]); + Hu3DModelAttrSet(temp_r31->unk00, HU3D_MOTATTR_LOOP); + CharModelMotionDataClose(lbl_1_data_0[GWPlayerCfg[i].character]); + var_r25 = HuPrcChildCreate(fn_1_9AF0, 0x2000, 0x3000, 0, HuPrcCurrentGet()); + var_r25->user_data = temp_r31; + lbl_1_bss_180[i] = var_r25; + } else { + temp_r31->unk02 = CharModelCreate(lbl_1_data_0[GWPlayerCfg[i].character], 2); + Hu3DModelLayerSet(temp_r31->unk00, 1); + CharModelLayerSetAll(2); + temp_r31->unk80 = lbl_1_data_5C[GWPlayerCfg[i].character].x; + temp_r31->unk84 = lbl_1_data_5C[GWPlayerCfg[i].character].y; + temp_r31->unk88 = lbl_1_data_5C[GWPlayerCfg[i].character].z; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk80, temp_r31->unk84, temp_r31->unk88); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 31), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r31->unk00 = Hu3DModelCreate(var_r29); + Hu3DModelLayerSet(temp_r31->unk00, 1); + temp_r31->unk68 = temp_r31->unk70 = 0.0f; + temp_r31->unk6C = 120.0f * var_r22; + var_r22++; + if (temp_r31->unk6C > 360.0f) { + temp_r31->unk6C -= 360.0f; + } + Hu3DModelAttrSet(temp_r31->unk00, 1); + temp_f31 = 1000.0f; + temp_r31->unk54 = temp_f31 * sind(temp_r31->unk6C); + temp_r31->unk58 = 0.0f; + temp_r31->unk5C = temp_f31 * cosd(temp_r31->unk6C); + temp_r31->unk6C += 180.0f; + if (temp_r31->unk6C > 360.0f) { + temp_r31->unk6C -= 360.0f; + } + temp_r31->unk9C = temp_r31->unk6C; + temp_r31->unk8C = 200.0f; + temp_r31->unk90 = 2.25f; + temp_r31->unk94 = 1.0f; + temp_r31->unk98 = 0.66f; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk54, temp_r31->unk58, temp_r31->unk5C); + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, temp_r31->unk6C, temp_r31->unk70); + Hu3DModelShadowSet(temp_r31->unk00); + Hu3DModelHookSet(temp_r31->unk00, "itemhook_c", temp_r31->unk02); + for (j = 0; j < 4; j++) { + temp_r31->unk1C[j] = CharModelMotionCreate(lbl_1_data_0[GWPlayerCfg[i].character], lbl_1_data_4C[j]); + } + CharModelMotionSet(lbl_1_data_0[GWPlayerCfg[i].character], temp_r31->unk1C[0]); + CharModelMotionTimeSet(lbl_1_data_0[GWPlayerCfg[i].character], 60.0f); + CharModelVoiceEnableSet(lbl_1_data_0[GWPlayerCfg[i].character], temp_r31->unk1C[3], 0); + for (j = 0; j < 8; j++) { + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 32 + j), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r31->unk06[j] = Hu3DJointMotion(temp_r31->unk00, var_r29); + } + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[1]); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 1.0f); + Hu3DMotionSpeedSet(temp_r31->unk00, 1.0f); + Hu3DModelAttrSet(temp_r31->unk00, HU3D_MOTATTR_LOOP); + var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M419, 40), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r31->unk04 = Hu3DModelCreate(var_r29); + Hu3DModelLayerSet(temp_r31->unk04, 1); + Hu3DModelAttrSet(temp_r31->unk04, 1); + Hu3DModelAttrSet(temp_r31->unk04, HU3D_MOTATTR_PAUSE); + CharModelMotionDataClose(lbl_1_data_0[GWPlayerCfg[i].character]); + var_r25 = HuPrcChildCreate(fn_1_DF98, 0x2000, 0x3000, 0, HuPrcCurrentGet()); + var_r25->user_data = temp_r31; + lbl_1_bss_180[i] = var_r25; + } + } + var_r21 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 2), MEMORY_DEFAULT_NUM)); + var_r30 = Hu3DParticleCreate(var_r21, 50); + Hu3DModelPosSet(var_r30, 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(var_r30, 1.0f, 1.0f, 1.0f); + Hu3DModelLayerSet(var_r30, 3); + Hu3DParticleColSet(var_r30, 0xFF, 0xFF, 0xFF); + Hu3DParticleScaleSet(var_r30, 0.0f); + Hu3DParticleHookSet(var_r30, fn_1_2254); + var_r21 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 2), MEMORY_DEFAULT_NUM)); + var_r30 = Hu3DParticleCreate(var_r21, 50); + Hu3DModelPosSet(var_r30, 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(var_r30, 1.0f, 1.0f, 1.0f); + Hu3DModelLayerSet(var_r30, 3); + Hu3DParticleColSet(var_r30, 0xFF, 0xFF, 0xFF); + Hu3DParticleScaleSet(var_r30, 0.0f); + Hu3DParticleHookSet(var_r30, fn_1_2744); + HuDataDirClose(DATADIR_EFFECT); + lbl_1_bss_580 = 0; + lbl_1_bss_584[0] = frandmod(5) * 60 + 600; + lbl_1_bss_584[1] = frandmod(5) * 60 + 1380; + lbl_1_bss_584[2] = 2760; + Hu3DModelLayerSet(Hu3DHookFuncCreate(fn_1_848), 1); + HuPrcChildCreate(fn_1_104A0, 0x1000, 0x1000, 0, HuPrcCurrentGet()); +} + +float fn_1_1F84(float arg0, float arg1) { + float var_f31; + float var_f30; + + if (arg0 > 600.0f - arg1) { + var_f31 = 600.0f + 200.0f * ((800.0f - (arg0 + arg1)) / 200.0f); + } else if (arg0 < -(600.0f - arg1)) { + var_f31 = 600.0f + 200.0f * ((800.0f - ABS_INV(arg0 - arg1)) / 200.0f); + } else { + var_f31 = 800.0f; + } + return var_f31; +} + +float fn_1_20AC(float arg0, float arg1) { + return fn_1_1F84(arg0, arg1); +} + +float fn_1_21D4(float arg0) { + while (arg0 >= 360.0f || arg0 < 0.0f) { + if (arg0 >= 360.0f) { + arg0 -= 360.0f; + } + if (arg0 < 0.0f) { + arg0 += 360.0f; + } + } + return arg0; +} + +void fn_1_2254(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + StructBss200* temp_r28; + float var_f31; + float temp_f29; + float var_f30; + s32 var_r27; + s16 i; + s16 j; + s16 k; + + if (particle->unk_34 == 0) { + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + var_r31->unk14.x = var_r31->unk2C = 0.0f; + } + } + var_r31 = particle->unk_48; + for (i = 0; i < 4; i++) { + temp_r28 = &lbl_1_bss_200[i]; + if (temp_r28->unk38 & 1) { + for (j = 0, var_f30 = 0.0f; j < 16; j++, var_f30 += 22.5f) { + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk14.x == 0.0f) { + break; + } + } + if (k == particle->unk_30) { + break; + } + var_f31 = var_f30; + temp_f29 = 125.0f + 70.0f * frandf(); + var_r31->unk34.x = temp_r28->unk74 + temp_f29 * sind(var_f31); + var_r31->unk34.y = temp_r28->unk78 + 50.0f * frandf(); + var_r31->unk34.z = temp_r28->unk7C + temp_f29 * cosd(var_f31); + var_r31->unk08.x = 5.0 * sind(var_f31); + var_r31->unk08.y = 9.0f + 2.0f * frandf(); + var_r31->unk08.z = 5.0 * cosd(var_f31); + var_r31->unk14.x = 30.0f; + var_r31->unk2C = 80.0f + 20.0f * frandf(); + var_r31->unk14.y = 15.0f; + var_r31->unk40.a = 0xC8; + var_r31->unk14.z = 17.0f; + } + temp_r28->unk38 &= ~1; + } + } + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk14.x != 0.0f) { + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + var_r31->unk08.x *= 0.95f; + var_r31->unk08.z *= 0.95f; + if (var_r31->unk08.y > 0.1f) { + var_r31->unk08.y -= 0.2f; + } + if (var_r31->unk08.y < 0.0f) { + var_r31->unk08.y = 0.0f; + } + var_r31->unk2C += var_r31->unk14.y; + if (var_r31->unk14.y > 2.0f) { + var_r31->unk14.y -= 1.5f; + } + var_r27 = var_r31->unk40.a; + var_r27 -= var_r31->unk14.z; + if (var_r31->unk14.z > 3.0f) { + var_r31->unk14.z -= 1.0f; + } + if (var_r27 < 0) { + var_r27 = 0; + var_r31->unk14.x = 0.0f; + } + var_r31->unk40.a = var_r27; + if (var_r31->unk14.x == 0.0f) { + var_r31->unk2C = 0.0f; + } + } + } +} + +void fn_1_2744(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + StructBss200* temp_r28; + float temp_f31; + float temp_f30; + s32 var_r27; + s16 i; + s16 j; + s16 k; + + if (particle->unk_34 == 0) { + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + var_r31->unk14.x = var_r31->unk2C = 0.0f; + var_r31->unk20 = -1.0f; + } + } + var_r31 = particle->unk_48; + for (i = 0; i < 4; i++) { + temp_r28 = &lbl_1_bss_200[i]; + if (temp_r28->unk38 & 2) { + for (j = 0; j < 10; j++) { + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk14.x == 0.0f) { + break; + } + } + if (k == particle->unk_30) { + break; + } + temp_f31 = 400.0f * frandf() - 200.0f; + temp_f30 = 400.0f * frandf() - 200.0f; + var_r31->unk34.x = temp_r28->unk74 + temp_f31; + var_r31->unk34.y = temp_r28->unk78 + 50.0f; + var_r31->unk34.z = temp_r28->unk7C + temp_f30; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 7.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20 = frandmod(10); + var_r31->unk24 = 0.0f; + var_r31->unk14.x = 100.0f; + var_r31->unk2C = 0.0f; + var_r31->unk14.y = 7.0f; + var_r31->unk40.a = 0xFF; + var_r31->unk14.z = 10.0f; + } + temp_r28->unk38 &= ~2; + } + } + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk20 > 0.0f) { + var_r31->unk20 -= 1.0f; + } + if (var_r31->unk20 == 0.0f) { + var_r31->unk24 = 1.0f; + var_r31->unk2C = 100.0f + 100.0f * frandf(); + var_r31->unk20 = -1.0f; + } + if (var_r31->unk14.x != 0.0f && var_r31->unk24 != 0.0f) { + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + if (var_r31->unk08.y > 1.0f) { + var_r31->unk08.y -= 0.3f; + } + var_r31->unk2C += var_r31->unk14.y; + if (var_r31->unk14.y > 2.0f) { + var_r31->unk14.y -= 0.4f; + } + var_r27 = var_r31->unk40.a; + var_r27 -= var_r31->unk14.z; + if (var_r31->unk14.z > 3.0f) { + var_r31->unk14.z -= 1.0f; + } + if (var_r27 < 0) { + var_r27 = 0; + var_r31->unk14.x = 0.0f; + } + var_r31->unk40.a = var_r27; + if (var_r31->unk14.x == 0.0f) { + var_r31->unk2C = 0.0f; + } + } + } +} + +s32 fn_1_2BDC(StructBss190* arg0) { + StructBss200* temp_r31; + Vec sp24; + Vec sp18; + Vec spC; + float var_f29; + float var_f28; + s32 var_r28; + s32 i; + + for (i = 0, var_f29 = 10000.0f, var_r28 = -1; i < 4; i++) { + temp_r31 = &lbl_1_bss_200[i]; + HuSetVecF(&sp24, arg0->unk14, 0.0, arg0->unk1C); + HuSetVecF(&sp18, temp_r31->unk54, 0.0, temp_r31->unk5C); + HuSubVecF(&spC, &sp24, &sp18); + if ((var_f28 = VECMagXYZ(&spC)) < 50.0f + temp_r31->unk8C && var_f28 < var_f29) { + var_f29 = var_f28; + var_r28 = i; + } + } + return var_r28; +} + +void fn_1_2DFC(StructBss190* arg0) { + float temp_f31; + float var_f26; + float var_f25; + + temp_f31 = 50.0f; + var_f26 = fn_1_1F84(arg0->unk1C, 50.0f); + var_f25 = fn_1_1F84(arg0->unk14, 50.0f); + if (arg0->unk14 > var_f26 - temp_f31) { + arg0->unk14 = var_f26 - temp_f31; + } + if (arg0->unk14 < -(var_f26 - temp_f31)) { + arg0->unk14 = -(var_f26 - temp_f31); + } + if (arg0->unk1C > var_f25 - temp_f31) { + arg0->unk1C = var_f25 - temp_f31; + } + if (arg0->unk1C < -(var_f25 - temp_f31)) { + arg0->unk1C = -(var_f25 - temp_f31); + } + if (arg0->unk1C > var_f25 - temp_f31 || arg0->unk1C < -(var_f25 - temp_f31)) { + arg0->unk14 += arg0->unk10 * sind(arg0->unk0C) * 0.8f; + } + if (arg0->unk14 > var_f26 - temp_f31 || arg0->unk14 < -(var_f26 - temp_f31)) { + arg0->unk1C += arg0->unk10 * cosd(arg0->unk0C) * 0.8f; + } + if (arg0->unk14 > var_f26 - temp_f31) { + arg0->unk14 = var_f26 - temp_f31; + } + if (arg0->unk14 < -(var_f26 - temp_f31)) { + arg0->unk14 = -(var_f26 - temp_f31); + } + if (arg0->unk1C > var_f25 - temp_f31) { + arg0->unk1C = var_f25 - temp_f31; + } + if (arg0->unk1C < -(var_f25 - temp_f31)) { + arg0->unk1C = -(var_f25 - temp_f31); + } +} + +void fn_1_32F8(void) { + StructBss200* temp_r31; + float var_f31; + s32 var_r29; + s32 i; + + var_r29 = (s32) HuPrcCurrentGet()->user_data; + temp_r31 = &lbl_1_bss_200[var_r29]; + for (i = 0, var_f31 = 1.0f; i < 30; i++, var_f31 -= 0.033333335f) { + Hu3DModelAmbSet(temp_r31->unk00, 1.0f, var_f31, var_f31); + HuPrcVSleep(); + } + Hu3DModelAmbSet(temp_r31->unk00, 1.0f, 0.0f, 0.0f); + while (temp_r31->unk48 > 30) { + HuPrcVSleep(); + } + for (i = 0, var_f31 = 0.0f; i < 30; i++, var_f31 += 0.033333335f) { + Hu3DModelAmbSet(temp_r31->unk00, 1.0f, var_f31, var_f31); + HuPrcVSleep(); + } + Hu3DModelAmbSet(temp_r31->unk00, 1.0f, 1.0f, 1.0f); + HuPrcKill(HuPrcCurrentGet()); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_344C(void) { + StructBss190* temp_r31; + StructBss200* temp_r30; + Vec spAC; + Vec spA0; + Vec sp94; + float sp6C; + float sp68; + float sp64; + float sp60; + float sp5C; + float sp58; + float sp54; + float sp50; + float sp4C; + float sp48; + float sp44; + float var_f24; + float var_f23; + s32 var_r24; + s32 var_r23; + s16 var_r22; + s32 var_r25; + s32 var_r28; + s32 i; + + temp_r31 = HuPrcCurrentGet()->user_data; + HuPrcSleep(25); + var_r23 = 0; + temp_r31->unk0A = 0; + var_r28 = 0; + var_f24 = temp_r31->unk18; + var_f23 = 15.0f; + sp58 = 0.9f; + while (var_f24 > 50.0f) { + var_f23 -= sp58; + var_f24 += var_f23; + var_r28++; + } + if (temp_r31->unk08 == 0) { + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04); + Hu3DModelAttrSet(temp_r31->unk00, HU3D_MOTATTR_LOOP); + Hu3DModelTPLvlSet(temp_r31->unk00, 1.0f); + } else { + Hu3DModelAttrReset(temp_r31->unk02, 1); + } + Hu3DModelAttrReset(temp_r31->unk00, 1); + temp_r31->unk0C = atan2d(temp_r31->unk24 - temp_r31->unk14, temp_r31->unk28 - temp_r31->unk1C); + HuSetVecF(&spAC, temp_r31->unk24, 0.0, temp_r31->unk28); + HuSetVecF(&spA0, temp_r31->unk14, 0.0, temp_r31->unk1C); + HuSubVecF(&sp94, &spAC, &spA0); + temp_r31->unk10 = VECMagXYZ(&sp94) / var_r28; + var_f24 = temp_r31->unk18; + var_f23 = 15.0f; + sp58 = 0.9f; + while (var_f24 > 50.0f) { + sp68 = temp_r31->unk14; + sp64 = temp_r31->unk18; + sp60 = temp_r31->unk1C; + temp_r31->unk14 += temp_r31->unk10 * sind(temp_r31->unk0C); + temp_r31->unk18 = var_f24; + temp_r31->unk1C += temp_r31->unk10 * cosd(temp_r31->unk0C); + if ((var_r25 = fn_1_2BDC(temp_r31)) != -1) { + temp_r30 = &lbl_1_bss_200[var_r25]; + if (GWPlayerCfg[temp_r30->unk28].group == 0) { + sp5C = 150.0f; + } else { + sp5C = 400.0f; + } + if (temp_r31->unk18 < sp5C) { + if (temp_r31->unk18 < sp5C && temp_r31->unk18 > sp5C - 50.0f) { + var_f23 = 15.0f; + sp58 = 0.9f; + } else { + sp6C = atan2d(temp_r31->unk14 - temp_r30->unk54, temp_r31->unk1C - temp_r30->unk5C); + temp_r31->unk0C = fn_1_21D4(180.0f + temp_r31->unk0C); + temp_r31->unk0C = sp6C - (temp_r31->unk0C - sp6C); + } + temp_r31->unk14 = sp68; + temp_r31->unk18 = sp64; + temp_r31->unk1C = sp60; + } + } + fn_1_2DFC(temp_r31); + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14, temp_r31->unk18, temp_r31->unk1C); + if (temp_r31->unk08 != 0) { + temp_r31->unk20 += 10.0f; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk14, temp_r31->unk18, temp_r31->unk1C); + Hu3DModelRotSet(temp_r31->unk02, 0.0f, 0.0f, temp_r31->unk20); + } + Hu3DModelRotSet(temp_r31->unk00, 0.0f, 0.0f, temp_r31->unk20); + if (lbl_1_bss_5B4 >= 4) { + var_r23 = 1; + goto fn_1_344C_label; + } + HuPrcVSleep(); + var_f23 -= sp58; + var_f24 += var_f23; + } + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14, 50.0f, temp_r31->unk1C); + if (temp_r31->unk08 != 0) { + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk14, 50.0f, temp_r31->unk1C); + } + if (temp_r31->unk08 == 0) { + Hu3DModelAttrSet(temp_r31->unk00, 1); + Hu3DModelAttrReset(temp_r31->unk02, 1); + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk14, 0.0f, temp_r31->unk1C); + Hu3DModelRotSet(temp_r31->unk02, 0.0f, 0.0f, 0.0f); + Hu3DMotionSet(temp_r31->unk02, temp_r31->unk06); + Hu3DModelAttrReset(temp_r31->unk02, HU3D_MOTATTR_LOOP); + Hu3DModelTPLvlSet(temp_r31->unk02, 1.0f); + } + for (var_r28 = 300, var_r24 = 0; var_r28 != 0; var_r28--) { + if (temp_r31->unk08 != 0 && 0.0f != temp_r31->unk20) { + temp_r31->unk20 += 10.0f; + if (temp_r31->unk20 > 360.0f) { + temp_r31->unk20 = 0.0f; + } + Hu3DModelRotSet(temp_r31->unk00, 0.0f, 0.0f, temp_r31->unk20); + Hu3DModelRotSet(temp_r31->unk02, 0.0f, 0.0f, temp_r31->unk20); + } + for (i = 0, sp50 = 10000.0f; i < 4; i++) { + temp_r30 = &lbl_1_bss_200[i]; + HuSetVecF(&spAC, temp_r31->unk14, 0.0, temp_r31->unk1C); + HuSetVecF(&spA0, temp_r30->unk54, 0.0, temp_r30->unk5C); + HuSubVecF(&sp94, &spAC, &spA0); + if ((sp54 = VECMagXYZ(&sp94)) < 50.0f + temp_r30->unk8C && sp54 < sp50) { + sp50 = sp54; + var_r25 = i; + } + } + if (sp50 < 10000.0f) { + temp_r30 = &lbl_1_bss_200[var_r25]; + temp_r31->unk0A = 1; + if (temp_r31->unk08 != 0) { + temp_r30->unk3C = 1; + temp_r30->unk48 = 300; + if (GWPlayerCfg[temp_r30->unk28].group == 0) { + temp_r30->unk94 = 3.0f; + lbl_1_bss_5BC = 1; + HuAudFXPlay(0x5E6); + } else { + temp_r30->unk90 = 6.75f; + temp_r30->unk98 = 0.99f; + HuAudFXPlay(0x5E2); + } + } else if (temp_r30->unk24 == 0) { + temp_r30->unk34 = 4; + HuAudPlayerVoicePlay(temp_r30->unk28, 0x128); + HuAudFXPlay(0x5E9); + } + break; + } + if (var_r28 < 60) { + var_r22 = temp_r31->unk00; + if (temp_r31->unk08 == 0) { + var_r22 = temp_r31->unk02; + } + if (var_r24 & 1) { + Hu3DModelAttrReset(var_r22, 1); + } else { + Hu3DModelAttrSet(var_r22, 1); + } + var_r24++; + } + HuPrcVSleep(); + if (lbl_1_bss_5B4 >= 4) { + var_r23 = 1; + break; + } + } +fn_1_344C_label: + if (var_r23 != 0) { + for (i = 0, sp4C = 1.0f; i < 30; i++) { + sp4C -= 0.033333335f; + Hu3DModelScaleSet(temp_r31->unk00, sp4C, sp4C, sp4C); + HuPrcVSleep(); + } + Hu3DModelAttrSet(temp_r31->unk00, 1); + Hu3DModelAttrSet(temp_r31->unk02, 1); + } else { + if (temp_r31->unk08 == 0) { + temp_r30 = &lbl_1_bss_200[var_r25]; + sp6C = atan2d(temp_r31->unk14 - temp_r30->unk54, temp_r31->unk1C - temp_r30->unk5C); + sp44 = 1.0f; + temp_r31->unk20 = 0.0f; + for (i = 0, sp48 = 0.0f; i < 10; i++, sp48 += 9.0f, sp44 -= 0.1f) { + temp_r31->unk14 += 2.0 * sind(sp6C); + temp_r31->unk18 += 10.0f; + temp_r31->unk1C += 2.0 * cosd(sp6C); + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk14, temp_r31->unk18, temp_r31->unk1C); + temp_r31->unk20 += 10.0f; + Hu3DModelRotSet(temp_r31->unk02, 0.0f, 0.0f, temp_r31->unk20); + Hu3DModelTPLvlSet(temp_r31->unk02, sp44); + HuPrcVSleep(); + } + } + Hu3DModelAttrSet(temp_r31->unk00, 1); + if (temp_r31->unk08 != 0) { + Hu3DModelAttrSet(temp_r31->unk02, 1); + } + temp_r31->unk20 = 0.0f; + HuPrcCurrentGet()->user_data = NULL; + HuPrcKill(HuPrcCurrentGet()); + } + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_47E4(void) { + StructBss1E8* var_r31; + StructBss190* var_r30; + ModelData* temp_r29; + Process* temp_r3; + s32 var_r27; + + var_r31 = &lbl_1_bss_1E8[0]; + while (lbl_1_bss_5B4 != 3) { + HuPrcVSleep(); + } + while (TRUE) { + while (lbl_1_bss_5BA != 0) { + HuPrcVSleep(); + } + if (lbl_1_bss_5B4 >= 4) { + break; + } + var_r30 = &lbl_1_bss_190[0]; + if (lbl_1_bss_5B0 > lbl_1_bss_584[lbl_1_bss_580]) { + lbl_1_bss_580++; + var_r30 = &lbl_1_bss_190[1]; + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[4], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } else { + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[3], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } + HuPrcVSleep(); + var_r27 = Hu3DMotionMaxTimeGet(var_r31->unk00); + while (var_r27 != 0) { + HuPrcVSleep(); + var_r27--; + } + HuAudFXPlay(0x5E4); + temp_r3 = HuPrcChildCreate(fn_1_344C, 0x2010, 0x3000, 0, HuPrcCurrentGet()); + temp_r3->user_data = var_r30; + temp_r29 = &Hu3DData[lbl_1_bss_1E8[0].unk00]; + var_r30->unk14 = temp_r29->pos.x + 640.0f; + var_r30->unk18 = temp_r29->pos.y + 620.0f; + var_r30->unk1C = temp_r29->pos.y - 200.0f; + var_r30->unk20 = 0.0f; + var_r30->unk24 = 1000.0f * frandf() - 500.0f; + var_r30->unk28 = 1000.0f * frandf() - 500.0f; + while (!Hu3DMotionEndCheck(var_r31->unk00)) { + HuPrcVSleep(); + } + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + while (temp_r3->user_data) { + HuPrcVSleep(); + } + lbl_1_bss_5BA = 1; + if (var_r30->unk0A != 0) { + HuAudFXPlay(0x5E8); + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[2], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + HuPrcSleep(6); + while (!Hu3DMotionEndCheck(var_r31->unk00)) { + HuPrcVSleep(); + } + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + } + } + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_4B20(void) { + StructBss1E8* var_r31; + StructBss190* var_r30; + Process* temp_r3; + ModelData* temp_r29; + s32 var_r27; + + var_r31 = &lbl_1_bss_1E8[1]; + while (lbl_1_bss_5B4 != 3) { + HuPrcVSleep(); + } + while (TRUE) { + while (lbl_1_bss_5BA == 0) { + HuPrcVSleep(); + } + if (lbl_1_bss_5B4 >= 4) { + break; + } + var_r30 = lbl_1_bss_190; + if (lbl_1_bss_5B0 > lbl_1_bss_584[lbl_1_bss_580]) { + lbl_1_bss_580++; + var_r30 = &lbl_1_bss_190[1]; + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[4], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } else { + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[3], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } + HuPrcVSleep(); + var_r27 = Hu3DMotionMaxTimeGet(var_r31->unk00); + while (var_r27 != 0) { + HuPrcVSleep(); + var_r27--; + } + HuAudFXPlay(0x5E4); + temp_r3 = HuPrcChildCreate(fn_1_344C, 0x2010, 0x3000, 0, HuPrcCurrentGet()); + temp_r3->user_data = var_r30; + temp_r29 = &Hu3DData[lbl_1_bss_1E8->unk00]; + var_r30->unk14 = -(temp_r29->pos.x + 640.0f); + var_r30->unk18 = temp_r29->pos.y + 620.0f; + var_r30->unk1C = temp_r29->pos.y - 200.0f; + var_r30->unk24 = 1000.0f * frandf() - 500.0f; + var_r30->unk28 = 1000.0f * frandf() - 500.0f; + while (!Hu3DMotionEndCheck(var_r31->unk00)) { + HuPrcVSleep(); + } + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + while (temp_r3->user_data) { + HuPrcVSleep(); + } + lbl_1_bss_5BA = 0; + if (var_r30->unk0A != 0) { + HuAudFXPlay(0x5E8); + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[2], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + HuPrcSleep(6); + while (!Hu3DMotionEndCheck(var_r31->unk00)) { + HuPrcVSleep(); + } + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + } + } + while (TRUE) { + HuPrcVSleep(); + } +} + +s8 fn_1_4E54(s32 arg0, s32 arg1) { + StructBss200* temp_r31; + s8 var_r30; + + temp_r31 = &lbl_1_bss_200[arg0]; + if (GWPlayerCfg[arg0].iscom == 0) { + (arg1 != 0) ? (var_r30 = HuPadStkY[temp_r31->unk30]) : (var_r30 = HuPadStkX[temp_r31->unk30]); + } else { + (arg1 != 0) ? (var_r30 = temp_r31->unkA1) : (var_r30 = temp_r31->unkA0); + } + return var_r30; +} + +u8 fn_1_4F0C(s32 arg0, s32 arg1) { + StructBss200* temp_r31; + s8 var_r30; + + temp_r31 = &lbl_1_bss_200[arg0]; + if (GWPlayerCfg[arg0].iscom == 0) { + (arg1 != 0) ? (var_r30 = HuPadTrigR[temp_r31->unk30]) : (var_r30 = HuPadTrigL[temp_r31->unk30]); + } else { + (arg1 != 0) ? (var_r30 = temp_r31->unkA2) : (var_r30 = temp_r31->unkA3); + } + return var_r30; +} + +u16 fn_1_4FCC(s32 arg0) { + StructBss200* temp_r31; + u16 var_r30; + + temp_r31 = &lbl_1_bss_200[arg0]; + if (GWPlayerCfg[arg0].iscom == 0) { + var_r30 = HuPadBtnDown[temp_r31->unk30]; + } else { + var_r30 = temp_r31->unkA6; + } + return var_r30; +} + +u16 fn_1_5038(s32 arg0) { + StructBss200* temp_r31; + u16 var_r30; + + temp_r31 = &lbl_1_bss_200[arg0]; + if (GWPlayerCfg[arg0].iscom == 0) { + var_r30 = HuPadBtn[temp_r31->unk30]; + } else { + var_r30 = temp_r31->unkA4; + } + return var_r30; +} + +s32 fn_1_50A4(StructBss200* arg0, float arg1, s32 arg2) { + Vec sp2C; + Vec sp20; + Vec sp14; + StructBss200* temp_r30; + s32 var_r28; + float var_f27; + float var_f28; + s32 i; + + var_r28 = -1; + for (i = 0, var_f28 = 10000.0f; i < 4; i++) { + if (i != arg0->unk28 && (arg2 == 0 || i != lbl_1_bss_5AC)) { + temp_r30 = &lbl_1_bss_200[i]; + HuSetVecF(&sp2C, arg0->unk54, arg0->unk58, arg0->unk5C); + HuSetVecF(&sp20, temp_r30->unk54, temp_r30->unk58, temp_r30->unk5C); + HuSubVecF(&sp14, &sp2C, &sp20); + if ((var_f27 = VECMagXYZ(&sp14)) < arg0->unk8C + temp_r30->unk8C + arg1 && var_f27 < var_f28) { + var_f28 = var_f27; + var_r28 = i; + } + } + } + return var_r28; +} + +s32 fn_1_52E8(StructBss200* arg0) { + float var_f25; + float var_f24; + s32 var_r28; + + var_f25 = fn_1_1F84(arg0->unk5C, arg0->unk8C); + var_f24 = fn_1_1F84(arg0->unk54, arg0->unk8C); + if (arg0->unk54 > var_f25 - arg0->unk8C) { + arg0->unk54 = var_f25 - arg0->unk8C; + } + if (arg0->unk54 < -(var_f25 - arg0->unk8C)) { + arg0->unk54 = -(var_f25 - arg0->unk8C); + } + if (arg0->unk5C > var_f24 - arg0->unk8C) { + arg0->unk5C = var_f24 - arg0->unk8C; + } + if (arg0->unk5C < -(var_f24 - arg0->unk8C)) { + arg0->unk5C = -(var_f24 - arg0->unk8C); + } + if ((var_r28 = fn_1_50A4(arg0, 0.0f, 0)) != -1) { + arg0->unk54 = arg0->unk60; + arg0->unk5C = arg0->unk64; + } + return var_r28; +} + +float fn_1_5858(float arg0, float arg1, float arg2) { + float var_f31; + float var_f30; + + var_f31 = fmod(arg1 - arg0, 360.0); + if (0.0f > var_f31) { + var_f31 += 360.0f; + } + if (180.0f < var_f31) { + var_f31 -= 360.0f; + } + var_f30 = fmod(arg0 + var_f31 * arg2, 360.0); + if (0.0f > var_f30) { + var_f30 += 360.0f; + } + return var_f30; +} + +float fn_1_595C(float arg0, float arg1, StructBss200* arg2) { + Vec sp2C; + Vec sp20; + Vec sp14; + + HuSetVecF(&sp2C, arg0, 0.0, arg1); + HuSetVecF(&sp20, arg2->unk54, 0.0, arg2->unk5C); + HuSubVecF(&sp14, &sp2C, &sp20); + return VECMagXZ(&sp14); +} + +float fn_1_5AD8(float arg0, float arg1) { + float var_f31; + + if (arg0 > arg1) { + var_f31 = fn_1_21D4(arg0 - arg1); + if (var_f31 < 180.0f) { + var_f31 = fn_1_21D4(arg1 + var_f31 + 180.0f); + } else { + var_f31 = fn_1_21D4(arg1 - var_f31); + } + } else { + var_f31 = fn_1_21D4(arg1 - arg0); + if (var_f31 < 180.0f) { + var_f31 = fn_1_21D4(arg0 + var_f31 + 180.0f); + } else { + var_f31 = fn_1_21D4(arg0 - var_f31); + } + } + return var_f31; +} + +s32 fn_1_5F34(StructBss200* arg0, float arg1) { + s32 var_r31; + float var_f25; + float var_f24; + + var_f25 = fn_1_1F84(arg0->unk5C, arg0->unk8C); + var_f24 = fn_1_1F84(arg0->unk54, arg0->unk8C); + var_r31 = 0; + if (arg0->unk54 > var_f25 - arg0->unk8C - arg1 + || arg0->unk54 < -(var_f25 - arg0->unk8C - arg1) + || arg0->unk5C > var_f24 - arg0->unk8C - arg1 + || arg0->unk5C < -(var_f24 - arg0->unk8C - arg1)) + { + var_r31 = 1; + } + return var_r31; +} + +void fn_1_628C(StructBss200* arg0) { + Vec spC; + + HuSetVecF(&spC, fn_1_4E54(arg0->unk28, 0) / 4.0f, 0.0, -fn_1_4E54(arg0->unk28, 1) / 4.0f); + arg0->unk90 = VECMagXYZ(&spC); + if (arg0->unk90 >= 0.5f) { + if (arg0->unk90 >= 10.0f) { + spC.x /= arg0->unk90; + spC.z /= arg0->unk90; + arg0->unk90 = 10.0f; + spC.x = 10.0f * spC.x; + spC.z = 10.0f * spC.z; + } + arg0->unk54 += spC.x * arg0->unk94; + arg0->unk5C += spC.z * arg0->unk94; + } +} + +void fn_1_65C0(Vec* arg0, StructBss200** arg1) { + float temp_f31; + StructBss200* temp_r31; + StructBss200* temp_r30; + s32 var_r28; + s32 i; + + for (i = 0; i < 3; i++) { + temp_r31 = arg1[i]; + (i >= 2) ? (var_r28 = 0) : (var_r28 = i + 1); + temp_r30 = arg1[var_r28]; + temp_f31 = ABS_INV(temp_r31->unk54 - temp_r30->unk54) / 2.0f; + if (temp_r31->unk54 > temp_r30->unk54) { + arg0[i].x = temp_r31->unk54 - temp_f31; + } else { + arg0[i].x = temp_r30->unk54 - temp_f31; + } + temp_r31 = arg1[i]; + (i >= 2) ? (var_r28 = 0) : (var_r28 = i + 1); + temp_r30 = arg1[var_r28]; + temp_f31 = ABS_INV(temp_r31->unk5C - temp_r30->unk5C) / 2.0f; + if (temp_r31->unk5C > temp_r30->unk5C) { + arg0[i].z = temp_r31->unk5C - temp_f31; + } else { + arg0[i].z = temp_r30->unk5C - temp_f31; + } + } +} + +s32 fn_1_67A0(float arg0, float arg1, StructBss200* arg2, StructBss200** arg3) { + StructBss200* var_r31; + StructBss200 sp5C; + float var_f29; + s32 var_r27; + s32 i; + + var_r31 = &sp5C; + var_r31->unk28 = arg2->unk28; + var_r31->unk54 = arg2->unk54; + var_r31->unk58 = arg2->unk58; + var_r31->unk5C = arg2->unk5C; + var_r31->unk8C = arg2->unk8C; + var_r31->unk90 = arg2->unk90; + var_r31->unk94 = arg2->unk94; + var_f29 = fn_1_21D4(atan2d(arg0 - arg2->unk54, arg1 - arg2->unk5C)); + var_r27 = 1; + while (fn_1_595C(arg0, arg1, var_r31) >= 10.0f) { + var_r31->unk54 += 10.0 * sind(var_f29); + var_r31->unk5C += 10.0 * cosd(var_f29); + for (i = 0; i < 3; i++) { + if (fn_1_595C(arg3[i]->unk54, arg3[i]->unk5C, var_r31) < var_r31->unk8C + arg3[i]->unk8C + 10.0f) { + break; + } + } + if (i < 3) { + var_r27 = 0; + break; + } + } + return var_r27; +} + +s32 fn_1_6D04(void) { + StructBss200* sp8[3]; + StructBss200* var_r29; + s32 var_r30; + s32 var_r28; + s32 i; + + for (i = 0, var_r30 = 0; i < 4; i++) { + if (i == lbl_1_bss_5AC) { + var_r29 = &lbl_1_bss_200[i]; + } else { + sp8[var_r30++] = &lbl_1_bss_200[i]; + } + } + var_r30 = 0; + for (i = 0; i < 3; i++) { + if (sp8[i]->unk54 > var_r29->unk54) { + break; + } + } + if (i < 3) { + var_r30++; + for (i = 0; i < 3; i++) { + if (sp8[i]->unk54 < var_r29->unk54) { + break; + } + } + if (i < 3) { + var_r30++; + for (i = 0; i < 3; i++) { + if (sp8[i]->unk5C > var_r29->unk5C) { + break; + } + } + if (i < 3) { + var_r30++; + for (i = 0; i < 3; i++) { + if (sp8[i]->unk5C < var_r29->unk5C) { + break; + } + } + if (i < 3) { + var_r30++; + } + } + } + } + var_r28 = 0; + if (var_r30 >= 4) { + var_r28 = 1; + } + return var_r28; +} + +float fn_1_6E9C(StructBss200* arg0) { + s32 sp88[3]; + s32 sp50[2]; + float sp44; + float var_f20; + float sp48[2]; + StructBss200* sp7C[3]; + s32 var_r29; + s32 var_r28; + s32 i; + + for (i = 0, var_r29 = 0; i < 4; i++) { + if (i != arg0->unk28) { + sp7C[var_r29++] = &lbl_1_bss_200[i]; + } + } + for (i = 0, var_r28 = 0; i < 3; i++) { + sp44 = fn_1_595C(sp7C[i]->unk54, sp7C[i]->unk5C, arg0); + if (sp44 < arg0->unk8C + sp7C[i]->unk8C + 100.0f) { + sp88[i] = 1; + var_r28++; + } else { + sp88[i] = -1; + } + } + var_f20 = -1.0f; + switch (var_r28) { + case 1: + for (i = 0; i < 3; i++) { + if (sp88[i] != 0) { + break; + } + } + var_f20 = fn_1_21D4(atan2d(arg0->unk54 - sp7C[i]->unk54, arg0->unk5C - sp7C[i]->unk5C)); + break; + case 2: + for (i = 0, var_r29 = 0; i < 3; i++) { + if (sp88[i] == 0) { + sp50[var_r29++] = i; + } + } + for (i = 0; i < 2; i++) { + sp48[i] = fn_1_21D4(atan2d(arg0->unk54 - sp7C[sp50[i]]->unk54, arg0->unk5C - sp7C[sp50[i]]->unk5C)); + } + var_f20 = fn_1_5AD8(sp48[0], sp48[1]); + break; + } + if (var_f20 != -1.0f); + if (var_f20 != -1.0f) { + var_f20 = fn_1_21D4(var_f20); + } + return var_f20; +} + +void fn_1_78B4(StructBss200* arg0) { + StructBss200* temp_r18; + StructBss200* var_r17; + StructBss200* sp224[3]; + Vec sp254[3]; + Vec sp230[3]; + s32 sp218[3]; + s32 sp138[2]; + s32 sp130[2]; + s32 sp12C; + float sp128; + float sp124; + s32 sp120; + float sp11C; + float sp118; + float sp114; + float sp110; + float var_f27; + float var_f29; + float var_f28; + float var_f30; + float var_f31; + float var_f26; + s32 var_r21; + s32 var_r22; + s32 var_r29; + s32 var_r30; + s32 sp10C; + + arg0->unkA0 = arg0->unkA1 = 0; + arg0->unkA3 = arg0->unkA2 = 0; + arg0->unkA4 = arg0->unkA6 = 0; + switch (GWPlayerCfg[arg0->unk28].diff) { + case 0: + sp12C = 60; + break; + case 1: + sp12C = 80; + break; + case 2: + sp12C = 90; + break; + default: + sp12C = 95; + break; + } + for (var_r30 = 0, var_r29 = 0; var_r30 < 4; var_r30++) { + if (var_r30 != arg0->unk28) { + sp224[var_r29++] = &lbl_1_bss_200[var_r30]; + } + } + for (var_r30 = 0, var_f31 = 10000.0f; var_r30 < 3; var_r30++) { + if (sp224[var_r30]->unk54 < var_f31) { + var_f31 = sp224[var_r30]->unk54; + } + } + for (var_r30 = 0, var_f30 = -10000.0f; var_r30 < 3; var_r30++) { + if (sp224[var_r30]->unk54 > var_f30) { + var_f30 = sp224[var_r30]->unk54; + } + } + sp124 = ABS_INV(var_f30 - var_f31) / 2.0f; + var_f29 = var_f30 - sp124; + for (var_r30 = 0, var_f31 = 10000.0f; var_r30 < 3; var_r30++) { + if (sp224[var_r30]->unk5C < var_f31) { + var_f31 = sp224[var_r30]->unk5C; + } + } + for (var_r30 = 0, var_f30 = -10000.0f; var_r30 < 3; var_r30++) { + if (sp224[var_r30]->unk5C > var_f30) { + var_f30 = sp224[var_r30]->unk5C; + } + } + sp124 = ABS_INV(var_f30 - var_f31) / 2.0f; + var_f28 = var_f30 - sp124; + for (var_r30 = 0, var_f31 = 10000.0f; var_r30 < 3; var_r30++) { + var_f26 = fn_1_595C(var_f29, var_f28, sp224[var_r30]); + if (var_f26 < var_f31) { + var_f31 = var_f26; + } + } + if (fn_1_6D04() != 0) { + arg0->unkB0 = 0; + if (var_f31 < 400.0f || (arg0->unkB4 & 2)) { + arg0->unkB4 |= 2; + fn_1_65C0(sp254, sp224); + if (arg0->unkBC == -1) { + for (var_r30 = 0, sp120 = 0, var_f30 = 0.0f; var_r30 < 3; var_r30++) { + temp_r18 = sp224[var_r30]; + (var_r30 >= 2) ? (var_r29 = 0) : (var_r29 = var_r30 + 1); + var_r17 = sp224[var_r29]; + var_f26 = fn_1_595C(temp_r18->unk54, temp_r18->unk5C, var_r17); + if (var_f26 > 700.0f) { + sp218[var_r30] = 1; + sp120++; + } else { + sp218[var_r30] = 0; + } + if (var_f26 > var_f30) { + var_f30 = var_f26; + var_r21 = var_r30; + var_f27 = fn_1_21D4(atan2d(sp254[var_r30].x - arg0->unk54, sp254[var_r30].z - arg0->unk5C)); + } + } + if (sp120 > 0) { + var_r29 = frandmod(sp120); + for (var_r30 = 0; var_r30 < 3; var_r30++) { + if (sp218[var_r30] != 0 && var_r29-- == 0) { + break; + } + } + var_r21 = var_r30; + var_f27 = fn_1_21D4(atan2d(sp254[var_r30].x - arg0->unk54, sp254[var_r30].z - arg0->unk5C)); + } + arg0->unkBC = var_r21; + arg0->unkCC = var_f27; + } else { + var_r21 = arg0->unkBC; + var_f27 = arg0->unkCC; + } + sp11C = var_f29; + sp118 = var_f28; + var_f29 = sp254[var_r21].x; + var_f28 = sp254[var_r21].z; + if (fn_1_595C(var_f29, var_f28, arg0) <= 30.0f && !(arg0->unkB4 & 1)) { + arg0->unkC4 = fn_1_21D4(atan2d(var_f29, var_f28)); + arg0->unkB4 |= 1; + } + if (arg0->unkB4 & 1) { + var_f29 = 800.0 * sind(arg0->unkC4); + var_f28 = 800.0 * cosd(arg0->unkC4); + } + } + } else { + arg0->unkAC = 0; + arg0->unkB4 = 0; + arg0->unkBC = -1; + if ((var_f31 >= 600.0f && fn_1_67A0(var_f29, var_f28, arg0, &sp224[0]) != 0) || (arg0->unkB0 & 0x10)) { + arg0->unkB0 |= 0x10; + fn_1_65C0(sp230, sp224); + for (var_r30 = 0, var_r21 = 0, var_f31 = 10000.0f; var_r30 < 3; var_r30++) { + var_f26 = fn_1_595C(sp230[var_r30].x, sp230[var_r30].z, arg0); + if (var_f26 < var_f31) { + var_f31 = var_f26; + var_r21 = var_r30; + } + } + sp114 = var_f29; + sp110 = var_f28; + var_f29 = sp230[var_r21].x; + var_f28 = sp230[var_r21].z; + if (fn_1_595C(var_f29, var_f28, arg0) <= 30.0f && !(arg0->unkB0 & 0x20)) { + arg0->unkC4 = fn_1_21D4(var_f27 - 90.0f); + arg0->unkB0 |= 0x20; + } + if (arg0->unkB0 & 0x20) { + var_f29 = 800.0 * sind(arg0->unkC4); + var_f28 = 800.0 * cosd(arg0->unkC4); + if (fn_1_5F34(arg0, 10.0f)) { + arg0->unkB0 &= ~0x20; + } else { + arg0->unkB0 |= 0x20; + } + } + } else { + if (arg0->unk54 >= 0.0f && arg0->unk5C < 0.0f) { + sp138[0] = 0; + sp138[1] = 1; + } + if (arg0->unk54 < 0.0f && arg0->unk5C < 0.0f) { + sp138[0] = 3; + sp138[1] = 0; + } + if (arg0->unk54 >= 0.0f && arg0->unk5C >= 0.0f) { + sp138[0] = 1; + sp138[1] = 2; + } + if (arg0->unk54 < 0.0f && arg0->unk5C >= 0.0f) { + sp138[0] = 2; + sp138[1] = 3; + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r22 = 0; + sp10C = sp138[var_r30]; + switch (sp10C) { + case 0: + for (var_r29 = 0; var_r29 < 3; var_r29++) { + if (sp224[var_r29]->unk5C < -800.0f + sp224[var_r29]->unk8C + 150.0f) { + break; + } + } + if (var_r29 >= 3) { + var_r22 = 1; + } + break; + case 1: + for (var_r29 = 0; var_r29 < 3; var_r29++) { + if (sp224[var_r29]->unk54 > 800.0f - sp224[var_r29]->unk8C - 150.0f) { + break; + } + } + if (var_r29 >= 3) { + var_r22 = 1; + } + break; + case 2: + for (var_r29 = 0; var_r29 < 3; var_r29++) { + if (sp224[var_r29]->unk5C > 800.0f - sp224[var_r29]->unk8C - 150.0f) { + break; + } + } + if (var_r29 >= 3) { + var_r22 = 1; + } + break; + case 3: + for (var_r29 = 0; var_r29 < 3; var_r29++) { + if (sp224[var_r29]->unk54 < -800.0f + sp224[var_r29]->unk8C + 150.0f) { + break; + } + } + if (var_r29 >= 3) { + var_r22 = 1; + } + break; + } + sp130[var_r30] = var_r22; + } + var_r22 = 0; + if ((arg0->unkB0 & 4) || (arg0->unkB0 & 8)) { + if ((arg0->unkB0 & 4) && sp130[0] != 0) { + var_r22 = 1; + } + if ((arg0->unkB0 & 8) && sp130[1] != 0) { + var_r22 = 1; + } + } + if (arg0->unkC0 > 0) { + var_r22 = 1; + arg0->unkC0--; + } + if (var_r22 == 0) { + arg0->unkB0 &= ~0xC; + if (sp130[0] != 0 && sp130[1] != 0) { + if (frandmod(2) != 0) { + arg0->unkB0 |= 4; + arg0->unkC0 = 30; + } else { + arg0->unkB0 |= 8; + arg0->unkC0 = 30; + } + } else if (sp130[0] != 0) { + arg0->unkB0 |= 4; + arg0->unkC0 = 30; + } else if (sp130[1] != 0) { + arg0->unkB0 |= 8; + arg0->unkC0 = 30; + } else { + arg0->unkB0 |= 0x10; + } + } + if ((arg0->unkB0 & 4) || (arg0->unkB0 & 8)) { + var_f27 = fn_1_21D4(atan2d(arg0->unk54, arg0->unk5C)); + if (arg0->unkB0 & 4) { + var_f27 += 10.0f; + } else { + var_f27 -= 10.0f; + } + var_f29 = 800.0 * sind(var_f27); + var_f28 = 800.0 * cosd(var_f27); + } else { + var_f29 = arg0->unk54; + var_f28 = arg0->unk5C; + } + } + } + var_f26 = fn_1_595C(var_f29, var_f28, arg0); + if (var_f26 > 100.0f || arg0->unkAC == 1) { + if (arg0->unkAC != 1) { + arg0->unkAC = 1; + } + if (var_f26 < 20.0f) { + arg0->unkAC = 0; + return; + } + if (var_f26 < 30.0f) { + sp128 = 10.0f; + } else { + sp128 = 50.0f; + } + var_f27 = fn_1_21D4(atan2d(var_f29 - arg0->unk54, var_f28 - arg0->unk5C)); + arg0->unkA0 = sp128 * sind(var_f27); + arg0->unkA1 = sp128 * -cosd(var_f27); + } +} + +void fn_1_9AF0(void) { + StructBss200* temp_r31; + StructBss200* temp_r29; + Vec sp6C; + float sp44; + float sp40; + float var_f23; + float var_f22; + float var_f21; + float var_f28; + float var_f19; + s32 var_r24; + s32 var_r30; + + temp_r31 = HuPrcCurrentGet()->user_data; + temp_r31->unk34 = 0; + temp_r31->unk24 = 0; + temp_r31->unkA8 = 0; + temp_r31->unk38 = 0; + temp_r31->unkBC = -1; + while (lbl_1_bss_5B4 == 0) { + HuPrcVSleep(); + } + lbl_1_bss_5B4 = 2; + while (lbl_1_bss_5B4 == 2) { + HuPrcVSleep(); + } + while (TRUE) { + temp_r31->unk60 = temp_r31->unk54; + temp_r31->unk64 = temp_r31->unk5C; + if (GWPlayerCfg[temp_r31->unk28].iscom == 1) { + fn_1_78B4(temp_r31); + } + if (temp_r31->unk3C != 0 && temp_r31->unk48-- == 0) { + temp_r31->unk3C = 0; + temp_r31->unk94 = 1.0f; + lbl_1_bss_5BC = 0; + } + if (temp_r31->unk24 != 0) { + break; + } + switch (temp_r31->unk34) { + case 4: + omVibrate(temp_r31->unk28, 12, 6, 6); + CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 1.0f); + CharModelMotionSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[6]); + Hu3DModelAttrReset(temp_r31->unk00, HU3D_MOTATTR_LOOP); + temp_r31->unk44 = 60; + temp_r31->unk34 = 5; + break; + case 5: + if (temp_r31->unk44 != 0) { + if (temp_r31->unk44 == 20) { + HuAudPlayerVoicePlay(temp_r31->unk28, 0x119); + } + temp_r31->unk44--; + } else { + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[7], 0.0f, 10.0f, HU3D_MOTATTR_NONE); + temp_r31->unk44 = 20; + temp_r31->unk34 = 6; + } + break; + case 6: + if (temp_r31->unk44 != 0) { + Hu3DModelAttrReset(temp_r31->unk00, HU3D_MOTATTR_LOOP); + temp_r31->unk44--; + } else if (Hu3DMotionEndCheck(temp_r31->unk00) == 1) { + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[4], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk44 = 10; + temp_r31->unk34 = 7; + } + break; + case 7: + if (temp_r31->unk44 != 0) { + temp_r31->unk44--; + } else { + CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 2.0f); + temp_r31->unk34 = 0; + } + break; + default: + HuSetVecF(&sp6C, fn_1_4E54(temp_r31->unk28, 0) / 4.0f, 0.0, -fn_1_4E54(temp_r31->unk28, 1) / 4.0f); + temp_r31->unk90 = VECMagXYZ(&sp6C); + if (temp_r31->unk90 >= 0.5f) { + CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 1.0f); + if (temp_r31->unk90 >= 10.0f) { + sp6C.x /= temp_r31->unk90; + sp6C.z /= temp_r31->unk90; + temp_r31->unk90 = 10.0f; + sp6C.x = 10.0f * sp6C.x; + sp6C.z = 10.0f * sp6C.z; + } + temp_r31->unk6C = fn_1_5858(temp_r31->unk6C, atan2d(sp6C.x, sp6C.z), 0.4f); + if (temp_r31->unk90 >= 8.0f) { + if (temp_r31->unk34 != 3) { + temp_r31->unk34 = 3; + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + } else if (temp_r31->unk34 != 2) { + temp_r31->unk34 = 2; + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + temp_r31->unk54 += sp6C.x * temp_r31->unk94; + temp_r31->unk5C += sp6C.z * temp_r31->unk94; + } else if (temp_r31->unk34 != 0) { + temp_r31->unk34 = 0; + CharModelMotionSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[4]); + CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 2.0f); + Hu3DModelAttrSet(temp_r31->unk00, HU3D_MOTATTR_LOOP); + } + break; + } + if ((temp_r31->unk40 = fn_1_50A4(temp_r31, 0.0f, 0)) != -1) { + temp_r31->unk24 = 1; + break; + } + if ((temp_r31->unk40 = fn_1_52E8(temp_r31)) != -1) { + temp_r31->unk24 = 1; + break; + } + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk54, temp_r31->unk58, temp_r31->unk5C); + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, temp_r31->unk6C, temp_r31->unk70); + HuPrcVSleep(); + } + lbl_1_bss_5BC = 0; + if (lbl_1_bss_5A8 == lbl_1_bss_5AC) { + var_f23 = 10.0f; + CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 1.0f); + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + var_r30 = (360.0f - fn_1_21D4(temp_r31->unk6C)) / var_f23; + if (temp_r31->unk6C < 180.0f) { + var_r30 = temp_r31->unk6C / var_f23; + var_f23 = -var_f23; + } + for (; var_r30 != 0; var_r30--) { + temp_r31->unk6C += var_f23; + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, temp_r31->unk6C, temp_r31->unk70); + HuPrcVSleep(); + } + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, 0.0f, temp_r31->unk70); + } else { + omVibrate(temp_r31->unk28, 12, 4, 2); + HuAudPlayerVoicePlay(temp_r31->unk28, 0x123); + HuAudFXPlay(0x5EC); + temp_r29 = &lbl_1_bss_200[temp_r31->unk40]; + temp_r31->unk9C = atan2d(temp_r31->unk54 - temp_r29->unk54, temp_r31->unk5C - temp_r29->unk5C); + var_r30 = 0; + var_f22 = temp_r31->unk54; + var_f21 = temp_r31->unk5C; + while (TRUE) { + var_f22 += 20.0 * sind(temp_r31->unk9C); + var_f21 += 20.0 * cosd(temp_r31->unk9C); + if (ABS_INV(var_f22) > 1200.0f || var_f21 > 1200.0f || var_f21 < -2000.0f) { + break; + } + var_r30++; + } + var_f28 = fn_1_21D4(atan2d(temp_r31->unk54 - temp_r29->unk54, temp_r31->unk5C - temp_r29->unk5C)); + if (ABS_INV(var_f28 - temp_r31->unk6C) > 90.0f && ABS_INV(var_f28 - temp_r31->unk6C) < 270.0f) { + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk18, 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } else { + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk1A, 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } + sp44 = temp_r31->unk58; + var_f19 = 0.0f; + sp40 = 180.0f / var_r30; + var_r24 = 0; + for (; var_r30 != 0; var_r30--) { + temp_r31->unk54 += 20.0 * sind(temp_r31->unk9C); + temp_r31->unk58 = 700.0 * sind(var_f19); + temp_r31->unk5C += 20.0 * cosd(temp_r31->unk9C); + var_f19 += sp40; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk54, temp_r31->unk58, temp_r31->unk5C); + if (Hu3DMotionTimeGet(temp_r31->unk00) == 20.0f && var_r24 == 0) { + var_r24 = 1; + Hu3DModelAttrSet(temp_r31->unk00, HU3D_MOTATTR_PAUSE); + } + HuPrcVSleep(); + } + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk54, -1000.0f, temp_r31->unk5C); + Hu3DModelAttrSet(temp_r31->unk00, 1); + } + while (TRUE) { + HuPrcVSleep(); + } +} + +float fn_1_ADFC(s32 arg0, float arg1, float arg2) { + float temp_f31; + float var_f29; + + temp_f31 = arg1 - fn_1_21D4(arg2); + if (temp_f31 < 0.0f || ABS_INV(temp_f31) > 180.0f) { + if (ABS_INV(temp_f31) > 180.0f) { + var_f29 = (360.0f - ABS_INV(temp_f31)) / arg0; + if (temp_f31 > 0.0f) { + var_f29 = -var_f29; + } + } else { + var_f29 = temp_f31 / arg0; + } + } else { + var_f29 = temp_f31 / arg0; + } + return var_f29; +} + +void fn_1_B054(StructBss200* arg0) { + StructBss200 sp23C; + float sp230[3]; + float sp198[2]; + Vec sp224; + Vec sp218; + Vec sp20C; + float sp194; + float sp190; + float sp18C; + float sp188; + float sp184; + float sp180; + s32 sp17C; + float sp178; + float sp174; + float var_f30; + float var_f29; + float var_f31; + s32 var_r21; + s32 var_r20; + StructBss200* temp_r30; + StructBss200* var_r29; + StructBss200* temp_r28; + s32 var_r19; + s32 var_r18; + s32 var_r17; + s32 var_r26; + s32 i; + + arg0->unkA0 = arg0->unkA1 = 0; + arg0->unkA3 = arg0->unkA2 = 0; + arg0->unkA4 = arg0->unkA6 = 0; + switch(GWPlayerCfg[arg0->unk28].diff) { + case 0: + var_r19 = 60; + break; + case 1: + var_r19 = 80; + break; + case 2: + var_r19 = 90; + break; + default: + var_r19 = 95; + break; + } + temp_r30 = &lbl_1_bss_200[lbl_1_bss_5AC]; + var_r29 = &sp23C; + for (i = 0, var_r26 = 0; i < 4; i++) { + if (i != lbl_1_bss_5AC && i != arg0->unk28) { + temp_r28 = &lbl_1_bss_200[i]; + sp230[var_r26] = fn_1_21D4(atan2d(temp_r28->unk54 - temp_r30->unk54, temp_r28->unk5C - temp_r30->unk5C)); + var_r26++; + } + } + if (sp230[0] > sp230[1]) { + sp230[2] = fn_1_21D4(sp230[0] - sp230[1]); + if (sp230[2] < 180.0f) { + sp230[2] = fn_1_21D4(sp230[1] + sp230[2] + 180.0f); + } else { + sp230[2] = fn_1_21D4(sp230[1] - sp230[2]); + } + } else { + sp230[2] = fn_1_21D4(sp230[1] - sp230[0]); + if (sp230[2] < 180.0f) { + sp230[2] = fn_1_21D4(sp230[0] + sp230[2] + 180.0f); + } else { + sp230[2] = fn_1_21D4(sp230[0] - sp230[2]); + } + } + temp_r28 = &lbl_1_bss_200[arg0->unk28]; + HuSetVecF(&sp224, temp_r28->unk54, temp_r28->unk58, temp_r28->unk5C); + HuSetVecF(&sp218, temp_r30->unk54, temp_r30->unk58, temp_r30->unk5C); + HuSubVecF(&sp20C, &sp224, &sp218); + sp184 = VECMagXYZ(&sp20C); + for (i = 0, var_r21 = 0; i < 4; i++) { + if (i != lbl_1_bss_5AC && i != arg0->unk28 && GWPlayerCfg[i].iscom) { + temp_r28 = &lbl_1_bss_200[i]; + HuSetVecF(&sp224, temp_r28->unk54, temp_r28->unk58, temp_r28->unk5C); + HuSetVecF(&sp218, temp_r30->unk54, temp_r30->unk58, temp_r30->unk5C); + HuSubVecF(&sp20C, &sp224, &sp218); + sp194 = VECMagXYZ(&sp20C); + if (sp194 < sp184) { + var_r21++; + } + } + } + if (arg0->unkAC != 2) { + if (fn_1_6D04() != 0) { + arg0->unkAC = 0; + } else { + if (ABS_INV(temp_r30->unk54) > 600.0f && ABS_INV(temp_r30->unk5C) > 600.0f) { + if (var_r21 <= 0) { + arg0->unkAC = 0; + } else { + arg0->unkAC = 2; + } + } else { + if (var_r21 <= 0) { + arg0->unkAC = 0; + } else { + arg0->unkAC = 1; + } + } + } + } + if (arg0->unkAC != 3 && arg0->unkD0 > 180) { + arg0->unkAC = 3; + arg0->unkD4 = frandmod(120) + 120; + } + switch (arg0->unkAC) { + case 0: + var_f30 = temp_r30->unk54; + var_f29 = temp_r30->unk5C; + var_f31 = fn_1_21D4(atan2d(var_f30 - arg0->unk54, var_f29 - arg0->unk5C)); + break; + case 1: + var_f30 = var_f29 = sp18C = sp188 = 0.0f; + if (temp_r30->unk54 >= 300.0f && temp_r30->unk5C < -300.0f) { + var_f30 = 550.0f; + var_f29 = -100.0f; + sp18C = 100.0f; + sp188 = 550.0f; + } + if (temp_r30->unk54 < -300.0f && temp_r30->unk5C < -300.0f) { + var_f30 = -550.0f; + var_f29 = -100.0f; + sp18C = -100.0f; + sp188 = 550.0f; + } + if (temp_r30->unk54 >= 300.0f && temp_r30->unk5C >= 300.0f) { + var_f30 = 550.0f; + var_f29 = -100.0f; + sp18C = 100.0f; + sp188 = -550.0f; + } + if (temp_r30->unk54 < -300.0f && temp_r30->unk5C >= -300.0f) { + var_f30 = -550.0f; + var_f29 = -100.0f; + sp18C = -100.0f; + sp188 = -550.0f; + } + if (temp_r30->unk54 > 300.0f && temp_r30->unk5C > -300.0f && temp_r30->unk5C < 300.0f) { + var_f30 = 200.0f; + var_f29 = 550.0f; + sp18C = 200.0f; + sp188 = -550.0f; + } + if (temp_r30->unk54 < -300.0f && temp_r30->unk5C > -300.0f && temp_r30->unk5C < 300.0f) { + var_f30 = -200.0f; + var_f29 = 550.0f; + sp18C = -200.0f; + sp188 = -550.0f; + } + if (temp_r30->unk54 < 300.0f && temp_r30->unk54 > -300.0f && temp_r30->unk5C < -300.0f) { + var_f30 = 550.0f; + var_f29 = -200.0f; + sp18C = -550.0f; + sp188 = -200.0f; + } + if (temp_r30->unk54 < 300.0f && temp_r30->unk54 > -300.0f && temp_r30->unk5C > 300.0f) { + var_f30 = 550.0f; + var_f29 = 200.0f; + sp18C = -550.0f; + sp188 = 200.0f; + } + for (i = 0, var_r17 = -1, sp190 = 10000.0f; i < 4; i++) { + if (i != lbl_1_bss_5AC) { + temp_r28 = &lbl_1_bss_200[i]; + HuSetVecF(&sp224, temp_r30->unk54, 0.0, temp_r30->unk5C); + HuSetVecF(&sp218, temp_r28->unk54, 0.0, temp_r28->unk5C); + HuSubVecF(&sp20C, &sp224, &sp218); + sp194 = VECMagXZ(&sp20C); + if (sp194 < sp190) { + sp190 = sp194; + var_r17 = i; + } + } + } + for (i = 0, var_r26 = -1, sp190 = 10000.0f; i < 4; i++) { + if (i != lbl_1_bss_5AC && i != var_r17) { + temp_r28 = &lbl_1_bss_200[i]; + HuSetVecF(&sp224, temp_r30->unk54, 0.0, temp_r30->unk5C); + HuSetVecF(&sp218, temp_r28->unk54, 0.0, temp_r28->unk5C); + HuSubVecF(&sp20C, &sp224, &sp218); + sp194 = VECMagXZ(&sp20C); + if (sp194 < sp190) { + sp190 = sp194; + var_r26 = i; + } + } + } + if (arg0->unk28 != var_r26) { + var_f30 = sp18C; + var_f29 = sp188; + } + var_f31 = fn_1_21D4(atan2d(var_f30 - arg0->unk54, var_f29 - arg0->unk5C)); + break; + case 2: + for (i = 0, var_r26 = 0; i < 4; i++) { + if (i != lbl_1_bss_5AC && i != arg0->unk28) { + temp_r28 = &lbl_1_bss_200[i]; + sp198[var_r26++] = fn_1_21D4(atan2d(temp_r28->unk54 - arg0->unk54, temp_r28->unk5C - arg0->unk5C)); + } + } + sp180 = fn_1_21D4(ABS_INV(sp198[0] - sp198[1]) / 2.0f); + if (sp180 < 90.0f) { + sp180 += 180.0f; + } + if (sp198[0] < sp198[1]) { + sp180 += sp198[0]; + } else { + sp180 += sp198[1]; + } + sp180 = fn_1_21D4(sp180); + if (sqrtf(arg0->unk54 * arg0->unk54 + arg0->unk5C * arg0->unk5C) < 500.0f) { + sp194 = 600.0f; + var_f30 = arg0->unk54 + sp194 * sind(sp180); + var_f29 = arg0->unk5C + sp194 * cosd(sp180); + var_f31 = fn_1_21D4(atan2d(var_f30 - arg0->unk54, var_f29 - arg0->unk5C)); + } else { + arg0->unkAC = 1; + } + break; + case 3: + for (i = 0, sp174 = 10000.0f; i < 4; i++) { + if (i != lbl_1_bss_5AC && i != arg0->unk28) { + temp_r28 = &lbl_1_bss_200[i]; + sp178 = fn_1_595C(temp_r28->unk54, temp_r28->unk5C, arg0); + if (sp178 < sp174) { + sp174 = sp178; + sp17C = i; + } + } + } + temp_r28 = &lbl_1_bss_200[sp17C]; + var_f31 = fn_1_21D4(180.0 + atan2d(temp_r28->unk54 - arg0->unk54, temp_r28->unk5C - arg0->unk5C)); + var_f30 = arg0->unk54 + 100.0 * sind(var_f31); + var_f29 = arg0->unk5C + 100.0 * cosd(var_f31); + if (arg0->unkD4-- == 0) { + arg0->unkD0 = 0; + arg0->unkAC = 1; + } + break; + } + var_r29->unk9C = 0.0f; + if (ABS_INV(arg0->unk6C - var_f31) > 30.0f && ABS_INV(arg0->unk6C - var_f31) < 330.0f) { + if (ABS_INV(fn_1_21D4(arg0->unk6C - var_f31)) > 180.0f) { + arg0->unkA0 = -30; + var_r29->unk9C = arg0->unk98; + } else { + arg0->unkA0 = 30; + var_r29->unk9C = -arg0->unk98; + } + } + if (arg0->unkB8 == 0) { + HuSetVecF(&sp224, var_f30, 0.0, var_f29); + HuSetVecF(&sp218, arg0->unk54, 0.0, arg0->unk5C); + HuSubVecF(&sp20C, &sp224, &sp218); + if (VECMagXZ(&sp20C) > 10.0f) { + if (ABS_INV(arg0->unk6C - var_f31) < 90.0f || ABS_INV(arg0->unk6C - var_f31) > 270.0f) { + arg0->unkA4 |= 0x100; + } else { + arg0->unkA4 |= 0x200; + var_r29->unk9C = -var_r29->unk9C; + } + } + } + var_r29->unk28 = arg0->unk28; + var_r29->unk54 = arg0->unk54; + var_r29->unk58 = arg0->unk58; + var_r29->unk5C = arg0->unk5C; + var_r29->unk90 = arg0->unk90; + var_r29->unk9C = fn_1_21D4(arg0->unk9C + var_r29->unk9C); + var_r29->unk8C = lbl_1_bss_200[lbl_1_bss_5AC].unk8C + arg0->unk8C + arg0->unk90; + var_r20 = fn_1_50A4(var_r29, arg0->unk90, 0); + if (var_r20 != -1 && var_r20 != lbl_1_bss_5AC) { + if (arg0->unkA4 & 0x100) { + var_r29->unk54 += var_r29->unk90 * sind(var_r29->unk9C); + var_r29->unk5C += var_r29->unk90 * cosd(var_r29->unk9C); + } + if (arg0->unkA4 & 0x200) { + var_r29->unk54 -= var_r29->unk90 * sind(var_r29->unk9C); + var_r29->unk5C -= var_r29->unk90 * cosd(var_r29->unk9C); + } + temp_r28 = &lbl_1_bss_200[var_r20]; + HuSetVecF(&sp224, arg0->unk54, 0.0, arg0->unk5C); + HuSetVecF(&sp218, temp_r28->unk54, 0.0, temp_r28->unk5C); + HuSubVecF(&sp20C, &sp224, &sp218); + sp194 = VECMagXYZ(&sp20C); + HuSetVecF(&sp224, var_r29->unk54, 0.0, var_r29->unk5C); + HuSetVecF(&sp218, temp_r28->unk54, 0.0, temp_r28->unk5C); + HuSubVecF(&sp20C, &sp224, &sp218); + sp190 = VECMagXYZ(&sp20C); + var_r18 = fn_1_50A4(var_r29, 0.0f, 0); + if (sp194 > sp190 || (var_r20 != var_r18 && var_r18 != -1)) { + arg0->unkA0 = 30; + arg0->unkA4 = 0; + arg0->unkAC = 2; + arg0->unkA8 = 300; + if (arg0->unkB8 == 0) { + arg0->unkB8 = 60; + } + } else if (var_r18 == -1) { + arg0->unkAC = 2; + if (ABS_INV(arg0->unk6C - var_f31) < 90.0f || ABS_INV(arg0->unk6C - var_f31) > 270.0f) { + arg0->unkA4 |= 0x100; + } else { + arg0->unkA4 |= 0x200; + var_r29->unk9C = -var_r29->unk9C; + } + } else { + arg0->unkA0 = 30; + } + } + if (arg0->unkB8 != 0) { + arg0->unkB8--; + } +} + +void fn_1_DECC(void) { + StructBss200* temp_r31; + s32 i; + + temp_r31 = HuPrcCurrentGet()->user_data; + for (i = 0; i < 20; i++) { + temp_r31->unk88 -= 4.0f; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk80, temp_r31->unk84, temp_r31->unk88); + HuPrcVSleep(); + } + HuPrcKill(HuPrcCurrentGet()); + while (TRUE) { + HuPrcVSleep(); + } +} + +s32 fn_1_DF3C(StructBss200* arg0) { + s32 var_r31; + s32 var_r30; + + var_r31 = 1; + var_r30 = 1; + if (arg0->unk34 != 4 && arg0->unk34 != 5) { + var_r30 = 0; + } + if (var_r30 == 0 && arg0->unk34 != 6) { + var_r31 = 0; + } + return var_r31; +} + +void fn_1_DF98(void) { + float var_f27; + float var_f25; + float var_f26; + StructBss200* temp_r31; + StructBss200* temp_r30; + s32 var_r25; + s32 var_r29; + s32 var_r28; + s32 sp90; + Process* sp8C; + s32 sp88; + s32 sp84; + s32 sp80; + s32 sp7C; + Process* sp78; + + temp_r31 = HuPrcCurrentGet()->user_data; + temp_r31->unk34 = 0; + temp_r31->unkA8 = temp_r31->unkAC = temp_r31->unkB0 + = temp_r31->unkB4 = temp_r31->unkB8 = temp_r31->unk50 = 0; + temp_r31->unkC0 = 0; + temp_r31->unk38 = 0; + temp_r31->unkD0 = 0; + while (lbl_1_bss_5B4 == 0) { + HuPrcVSleep(); + } + lbl_1_bss_5B4 = 2; + while (lbl_1_bss_5B4 == 2) { + HuPrcVSleep(); + } + temp_r31->unkD8 = temp_r31->unk54; + temp_r31->unkDC = temp_r31->unk5C; + var_r29 = 0; + while (TRUE) { + temp_r31->unk60 = temp_r31->unk54; + temp_r31->unk64 = temp_r31->unk5C; + if (GWPlayerCfg[temp_r31->unk28].iscom == 1) { + fn_1_B054(temp_r31); + } + if (temp_r31->unk3C != 0) { + if (temp_r31->unk48 == 300) { + sp8C = HuPrcChildCreate(fn_1_32F8, 0x2000, 0x1000, 0, HuPrcCurrentGet()); + sp8C->user_data = (void*) temp_r31->unk28; + } + if (temp_r31->unk48-- == 0) { + temp_r31->unk3C = 0; + temp_r31->unk90 = 2.25f; + temp_r31->unk98 = 0.66f; + } + } + if (temp_r31->unk24 != 0) { + break; + } + switch (temp_r31->unk34) { + case 8: + if (temp_r31->unk44 != 0) { + temp_r31->unk44--; + } else { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk34 = 0; + } + break; + case 4: + omVibrate(temp_r31->unk28, 12, 4, 2); + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[4], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + temp_r31->unk44 = 90; + temp_r31->unk4C = 30; + temp_r31->unk34 = 5; + break; + case 5: + if (temp_r31->unk4C-- == 0) { + HuAudFXPlay(0x5E7); + temp_r31->unk74 = temp_r31->unk54; + temp_r31->unk78 = temp_r31->unk58; + temp_r31->unk7C = temp_r31->unk5C; + temp_r31->unk38 |= 1; + } + if (temp_r31->unk44 != 0) { + temp_r31->unk44--; + } else { + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[5]); + Hu3DModelAttrReset(temp_r31->unk00, HU3D_MOTATTR_LOOP); + temp_r31->unk34 = 6; + } + break; + case 6: + if (Hu3DMotionEndCheck(temp_r31->unk00) == 1) { + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[0]); + temp_r31->unk34 = 0; + } + break; + default: + if (fn_1_4E54(temp_r31->unk28, 0) > 20) { + temp_r31->unk9C -= temp_r31->unk98; + if (temp_r31->unk9C < 0.0f) { + temp_r31->unk9C += 360.0f; + } + temp_r31->unk6C = temp_r31->unk9C; + } + if (fn_1_4E54(temp_r31->unk28, 0) < -20) { + temp_r31->unk9C += temp_r31->unk98; + if (temp_r31->unk9C > 360.0f) { + temp_r31->unk9C -= 360.0f; + } + temp_r31->unk6C = temp_r31->unk9C; + } + if (fn_1_5038(temp_r31->unk28) & 0x100) { + temp_r31->unk54 += temp_r31->unk90 * sind(temp_r31->unk9C); + temp_r31->unk5C += temp_r31->unk90 * cosd(temp_r31->unk9C); + } + if (fn_1_5038(temp_r31->unk28) & 0x200) { + temp_r31->unk54 -= temp_r31->unk90 * sind(temp_r31->unk9C); + temp_r31->unk5C -= temp_r31->unk90 * cosd(temp_r31->unk9C); + } + if (fn_1_5038(temp_r31->unk28) & 0x300) { + if (temp_r31->unk3C != 1) { + if (temp_r31->unk34 != 2) { + temp_r31->unk34 = 2; + if (fn_1_5038(temp_r31->unk28) & 0x100) { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } else { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } + if (var_r29 != 0) { + var_r29 = 0; + HuAudFXStop(var_r25); + } + } + } else { + if (temp_r31->unk34 != 3) { + temp_r31->unk34 = 3; + temp_r31->unk50 = 0; + if (fn_1_5038(temp_r31->unk28) & 0x100) { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } else { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } + if (var_r29 != 0) { + var_r29 = 0; + HuAudFXStop(var_r25); + } + } + } + if (temp_r31->unk3C != 1) { + sp88 = 8; + sp84 = 32; + } else { + sp88 = 7; + sp84 = 22; + } + if (temp_r31->unk50 == sp88) { + HuAudFXPlay(0x5E0); + } + if (temp_r31->unk50 == sp84) { + HuAudFXPlay(0x5E0); + } + temp_r31->unk50++; + if (temp_r31->unk3C != 1) { + if (temp_r31->unk50 >= 50) { + temp_r31->unk50 -= 50; + } + } else { + if (temp_r31->unk50 >= 30) { + temp_r31->unk50 -= 30; + } + } + } else { + if (ABS_INV(fn_1_4E54(temp_r31->unk28, 0)) <= 20) { + if (temp_r31->unk34 != 0) { + temp_r31->unk34 = 0; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + if (var_r29 != 0) { + var_r29 = 0; + HuAudFXStop(var_r25); + } + } + } else { + if (temp_r31->unk34 != 1) { + temp_r31->unk34 = 1; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 1.5f); + var_r25 = HuAudFXPlay(0x5EB); + var_r29 = 1; + } + } + } + if ((sp90 = fn_1_50A4(temp_r31, 0.0f, 0)) != -1) { + temp_r30 = &lbl_1_bss_200[sp90]; + if (GWPlayerCfg[temp_r30->unk28].group != 0) { + HuAudFXPlay(0x5ED); + temp_r31->unk34 = 8; + temp_r31->unk44 = 90; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[6], 0.0f, 5.0f, 0U); + if ((temp_r30->unk34 == 4 || temp_r30->unk34 == 5 || temp_r30->unk34 == 6) == FALSE) { + temp_r30->unk34 = 8; + temp_r30->unk44 = 90; + Hu3DMotionShiftSet(temp_r30->unk00, temp_r30->unk06[6], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } + temp_r31->unk54 = temp_r31->unk60; + temp_r31->unk5C = temp_r31->unk64; + } else { + temp_r30->unk24 = 1; + temp_r30->unk40 = temp_r31->unk28; + } + } + if ((sp90 = fn_1_52E8(temp_r31)) != -1) { + temp_r30 = &lbl_1_bss_200[sp90]; + if (GWPlayerCfg[temp_r30->unk28].group != 0) { + HuAudFXPlay(0x5ED); + temp_r31->unk34 = 8; + temp_r31->unk44 = 90; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[6], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + if ((temp_r30->unk34 == 4 || temp_r30->unk34 == 5 || temp_r30->unk34 == 6) == FALSE) { + temp_r30->unk34 = 8; + temp_r30->unk44 = 90; + Hu3DMotionShiftSet(temp_r30->unk00, temp_r30->unk06[6], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } + temp_r31->unk54 = temp_r31->unk60; + temp_r31->unk5C = temp_r31->unk64; + } else { + temp_r30->unk24 = 1; + temp_r30->unk40 = temp_r31->unk28; + } + } + break; + } + if (temp_r31->unkD8 == temp_r31->unk54 && temp_r31->unkDC == temp_r31->unk5C) { + temp_r31->unkD0++; + } else { + temp_r31->unkD8 = temp_r31->unk54; + temp_r31->unkDC = temp_r31->unk5C; + temp_r31->unkD0 = 0; + } + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk54, temp_r31->unk58, temp_r31->unk5C); + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, temp_r31->unk6C, temp_r31->unk70); + HuPrcVSleep(); + } + if (var_r29 != 0) { + HuAudFXStop(var_r25); + } + if (lbl_1_bss_5A8 == lbl_1_bss_5AC) { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); + HuPrcSleep(90); + if (lbl_1_bss_5AC == 0) { + if (temp_r31->unk28 != 0) { + HuAudFXPlay(0x5EA); + } + } else { + if (temp_r31->unk28 == 0) { + HuAudFXPlay(0x5EA); + } + } + Hu3DModelAttrReset(temp_r31->unk04, 1); + Hu3DModelAttrReset(temp_r31->unk04, HU3D_MOTATTR_PAUSE); + Hu3DModelPosSet(temp_r31->unk04, temp_r31->unk54, temp_r31->unk58, temp_r31->unk5C); + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[7], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + if (lbl_1_bss_5AC == 0) { + if (temp_r31->unk28 != 0) { + HuAudFXPlay(0x5E3); + } + } else { + if (temp_r31->unk28 == 0) { + HuAudFXPlay(0x5E3); + } + } + HuPrcSleep(15); + HuPrcSleep(30); + temp_r31->unk74 = temp_r31->unk54; + temp_r31->unk78 = temp_r31->unk58; + temp_r31->unk7C = temp_r31->unk5C; + temp_r31->unk38 |= 2; + while (!Hu3DMotionEndCheck(temp_r31->unk00)) { + HuPrcVSleep(); + } + lbl_1_bss_594[temp_r31->unk28] = HuAudPlayerVoicePlay(temp_r31->unk28, 0x11A); + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk1C[3], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + Hu3DModelHookReset(temp_r31->unk00); + Hu3DModelShadowSet(temp_r31->unk02); + var_f27 = 50.0f; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk54, temp_r31->unk58 + var_f27, temp_r31->unk5C); + HuPrcSleep(60); + for (sp80 = 0, sp7C = 0; sp80 < 90; sp80++) { + if (sp7C & 1) { + Hu3DModelAttrReset(temp_r31->unk00, 1); + Hu3DModelAttrReset(temp_r31->unk04, 1); + } else { + Hu3DModelAttrSet(temp_r31->unk00, 1); + Hu3DModelAttrSet(temp_r31->unk04, 1); + } + sp7C++; + HuPrcVSleep(); + } + Hu3DModelAttrSet(temp_r31->unk04, 1); + for (var_r28 = 0, var_f25 = 1.0f; var_r28 < 30; var_r28++) { + var_f25 -= 0.033333335f; + Hu3DModelTPLvlSet(temp_r31->unk00, var_f25); + if (var_f27 > 0.0f) { + var_f27 -= 5.0f; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk54, temp_r31->unk58 + var_f27, temp_r31->unk5C); + } + HuPrcVSleep(); + } + Hu3DModelAttrSet(temp_r31->unk00, 1); + } else { + var_f26 = temp_r31->unk98; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); + if (fn_1_21D4(temp_r31->unk6C) != 0.0f) { + var_r28 = (360.0f - fn_1_21D4(temp_r31->unk6C)) / var_f26; + if (temp_r31->unk6C < 180.0f) { + var_r28 = temp_r31->unk6C / var_f26; + var_f26 = -var_f26; + } + while (var_r28 != 0) { + temp_r31->unk6C += var_f26; + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, temp_r31->unk6C, temp_r31->unk70); + HuPrcVSleep(); + var_r28--; + } + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, 0.0f, temp_r31->unk70); + } + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); + while (lbl_1_bss_5A4 < 60) { + HuPrcVSleep(); + } + sp78 = HuPrcChildCreate(fn_1_DECC, 0x2000, 0x1000, 0, HuPrcCurrentGet()); + sp78->user_data = temp_r31; + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk1C[2], 0.0f, 2.0f, HU3D_MOTATTR_NONE); + temp_r31->unk34 = 10; + } + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_F73C(void) { + StructBss200* var_r31; + float var_f31; + s32 var_r30; + s32 var_r29; + + for (var_r30 = 0; var_r30 < 4; var_r30++) { + Hu3DModelAttrReset(lbl_1_bss_200[var_r30].unk00, 1); + } + for (var_r29 = 0, var_f31 = 1000.0f; var_r29 < 60; var_r29++, var_f31 -= 7.5f) { + for (var_r30 = 0; var_r30 < 4; var_r30++) { + if (var_r30 != lbl_1_bss_5AC) { + var_r31 = &lbl_1_bss_200[var_r30]; + var_r31->unk54 = var_f31 * sind(var_r31->unk6C - 180.0f); + var_r31->unk5C = var_f31 * cosd(var_r31->unk6C - 180.0f); + Hu3DModelPosSet(var_r31->unk00, var_r31->unk54, var_r31->unk58, var_r31->unk5C); + } + } + HuPrcVSleep(); + } + var_r31->unk54 = 550.0 * sind(var_r31->unk6C - 180.0f); + var_r31->unk5C = 550.0 * cosd(var_r31->unk6C - 180.0f); + Hu3DModelPosSet(var_r31->unk00, var_r31->unk54, var_r31->unk58, var_r31->unk5C); + for (var_r30 = 0; var_r30 < 4; var_r30++) { + if (var_r30 != lbl_1_bss_5AC) { + var_r31 = &lbl_1_bss_200[var_r30]; + Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk06[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + } + } + HuPrcKill(HuPrcCurrentGet()); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_F9BC(void) { + StructBss200* temp_r31; + float temp_f26; + float temp_f28; + float temp_f27; + float temp_f29; + float temp_f30; + float var_f31; + s32 var_r28; + s32 var_r30; + s32 var_r29; + s32 var_r27; + + HuAudFXPlay(0x5E5); + temp_r31 = &lbl_1_bss_200[lbl_1_bss_5AC]; + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[4], 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + var_r27 = 180; + temp_f29 = ((CenterM->z - 687.0f) / var_r27) * 40.0f / 60.0f; + temp_f26 = ((CenterM->z - 687.0f) / var_r27) * 20.0f / 60.0f; + temp_f30 = CenterM->y; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + for (var_r29 = 30, var_f31 = 0.0f; var_r29 != 0; var_r29--, var_f31 += 3.0f) { + CenterM->y = temp_f30 + 50.0 * sind(var_f31); + CenterM->z -= 2.0f * temp_f29; + HuPrcVSleep(); + } + for (var_r29 = 20, var_f31 = 90.0f; var_r29 != 0; var_r29--, var_f31 += 4.5f) { + CenterM->y = temp_f30 + 50.0 * sind(var_f31); + CenterM->z -= 2.0f * temp_f26 * 1.5f; + HuPrcVSleep(); + } + HuAudFXPlay(0x5DF); + for (var_r28 = 0; var_r28 < 4; var_r28++) { + omVibrate(var_r28, 12, 12, 0); + } + HuPrcSleep(5); + for (var_r29 = 10, var_f31 = 180.0f; var_r29 != 0; var_r29--, var_f31 += 18.0f) { + CenterM->y = temp_f30 + 10.0 * sind(var_f31); + HuPrcVSleep(); + } + HuPrcSleep(10); + } + HuPrcChildCreate(fn_1_F73C, 0x2000, 0x1000, 0, HuPrcCurrentGet()); + temp_f28 = CRotM->x; + temp_f30 = CenterM->y; + temp_f29 = CenterM->z; + temp_f27 = CZoomM[0]; + for (var_r30 = 0; var_r30 < 60; var_r30++) { + CRotM->x += (-45.0f - temp_f28) / 60.0f; + CenterM->y += (100.0f - temp_f30) / 60.0f; + CenterM->z += (70.0f - temp_f29) / 60.0f; + CZoomM[0] += (2130.0f - temp_f27) / 60.0f; + HuPrcVSleep(); + } + HuAudFXPlay(0x5DF); + for (var_r28 = 0; var_r28 < 4; var_r28++) { + omVibrate(var_r28, 12, 12, 0); + } + Hu3DModelAttrSet(lbl_1_bss_5B8, 1); + HuAudPlayerVoicePlay(temp_r31->unk28, 0x128); + temp_r31 = &lbl_1_bss_200[lbl_1_bss_5AC]; + while (Hu3DMotionEndCheck(temp_r31->unk00)) { + HuPrcVSleep(); + } + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[5], 0.0f, 10.0f, HU3D_MOTATTR_NONE); + HuPrcSleep(15); + while (Hu3DMotionEndCheck(temp_r31->unk00)) { + HuPrcVSleep(); + } + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[0], 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + HuPrcSleep(60); + temp_f28 = CRotM->x; + temp_f30 = CenterM->y; + temp_f29 = CenterM->z; + temp_f27 = CZoomM[0]; + for (var_r30 = 0; var_r30 < 60; var_r30++) { + CRotM->x += (-35.0f - temp_f28) / 60.0f; + CenterM->y += -temp_f30 / 60.0f; + CenterM->z += (-250.0f - temp_f29) / 60.0f; + CZoomM[0] += (4820.0f - temp_f27) / 60.0f; + HuPrcVSleep(); + } + HuPrcSleep(30); + temp_r31 = &lbl_1_bss_200[lbl_1_bss_5AC]; + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[4], 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + HuPrcSleep(15); + while (Hu3DMotionEndCheck(temp_r31->unk00)) { + HuPrcVSleep(); + } + CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 2.0f); +} + +void fn_1_10258(s32 arg0) { + StructBss200* var_r30; + float temp_f31; + float temp_f30; + float temp_f29; + s32 i; + + if (arg0 == lbl_1_bss_5AC) { + HuPrcSleep(120); + temp_f31 = CenterM->x; + temp_f30 = CenterM->z; + temp_f29 = CZoomM[0]; + for (i = 0; i < 60; i++) { + var_r30 = &lbl_1_bss_200[lbl_1_bss_5AC]; + CenterM->x += (var_r30->unk54 - temp_f31) / 60.0f; + CenterM->z += (var_r30->unk5C - 100.0f - temp_f30) / 60.0f; + CZoomM[0] += (1000.0f - temp_f29) / 60.0f; + HuPrcVSleep(); + } + for (i = 0; i < 4; i++) { + if (i == lbl_1_bss_5AC) { + continue; + } + HuAudFXStop(lbl_1_bss_594[i]); + } + HuAudSStreamPlay(1); + Hu3DMotionShiftSet(var_r30->unk00, var_r30->unk16, 0.0f, 5.0f, HU3D_MOTATTR_NONE); + } else { + for (lbl_1_bss_5A4 = 0; lbl_1_bss_5A4 < 60; lbl_1_bss_5A4++) { + HuPrcVSleep(); + } + HuAudSStreamPlay(1); + } +} + +void fn_1_104A0(void) { + while (TRUE) { + if (omSysExitReq == 1) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + HuAudFadeOut(1000); + HuPrcSleep(60); + MGSeqKillAll(); + omOvlReturnEx(1, 1); + while (TRUE) { + HuPrcVSleep(); + } + } + HuPrcVSleep(); + } +} + +void fn_1_10500(void) { + s16 temp_r28; + s16 temp_r30; + s16 var_r29; + s32 var_r26; + s32 var_r27; + s32 sp8[3]; + s32 i; + + lbl_1_bss_5B4 = 0; + lbl_1_bss_5A8 = -1; + fn_1_F9BC(); + HuPrcSleep(30); + lbl_1_bss_5B4 = 1; + while (lbl_1_bss_5B4 == 1) { + HuPrcVSleep(); + } + var_r26 = HuAudSeqPlay(0x49); + temp_r30 = MGSeqStartCreate(); + while (MGSeqStatGet(temp_r30) != 0) { + HuPrcVSleep(); + } + var_r29 = 0xAC7; + temp_r28 = MGSeqTimerCreate(var_r29 / 60); + lbl_1_bss_5B4 = 3; + while (TRUE) { + if (lbl_1_bss_200[lbl_1_bss_5AC].unk24 == 1) { + break; + } + if (var_r29 < 59) { + lbl_1_bss_5A8 = lbl_1_bss_5AC; + break; + } + MGSeqParamSet(temp_r28, 1, var_r29-- / 60); + lbl_1_bss_5B0++; + HuPrcVSleep(); + } + for (i = 0; i < 4; i++) { + lbl_1_bss_200[i].unk24 = 1; + } + lbl_1_bss_5B4 = 4; + HuAudSeqFadeOut(var_r26, 100); + MGSeqParamSet(temp_r28, 2, -1); + temp_r30 = MGSeqFinishCreate(); + while (MGSeqStatGet(temp_r30) != 0) { + HuPrcVSleep(); + } + fn_1_10258(lbl_1_bss_5A8); + if (lbl_1_bss_5A8 == lbl_1_bss_5AC) { + GWPlayerCoinWinSet(lbl_1_bss_5A8, 10); + temp_r30 = MGSeqWinCreate(GWPlayerCfg[lbl_1_bss_5A8].character, -1, -1, -1); + } else { + for (i = 0, var_r27 = 0; i < 4; i++) { + if (i != lbl_1_bss_5AC) { + sp8[var_r27++] = i; + GWPlayerCoinWinSet(i, 10); + } + } + temp_r30 = MGSeqWinCreate(GWPlayerCfg[sp8[0]].character, GWPlayerCfg[sp8[1]].character, GWPlayerCfg[sp8[2]].character, -1); + } + HuPrcSleep(210); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + HuPrcSleep(60); + HuAudFadeOut(1); + MGSeqKillAll(); + omOvlReturnEx(1, 1); + while (TRUE) { + HuPrcVSleep(); + } +} From 76c597f352e6583a7e66caf55c28de62d3d02df6 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 15 Dec 2024 20:23:30 +0100 Subject: [PATCH 064/178] Match m456Dll for every TU --- config/GMPE01_00/rels/m456Dll/symbols.txt | 96 +-- config/GMPJ01_00/config.yml | 4 +- config/GMPJ01_00/rels/m456Dll/splits.txt | 7 - config/GMPJ01_00/rels/m456Dll/symbols.txt | 282 ------- config/GMPP01_00/rels/m456Dll/splits.txt | 15 + config/GMPP01_00/rels/m456Dll/symbols.txt | 424 +++++----- configure.py | 4 +- include/REL/m456Dll.h | 2 + src/REL/m456Dll/main.c | 969 ++++++++++++++++++++++ src/REL/m456Dll/stage.c | 816 ++++++++---------- 10 files changed, 1614 insertions(+), 1005 deletions(-) delete mode 100644 config/GMPJ01_00/rels/m456Dll/splits.txt delete mode 100644 config/GMPJ01_00/rels/m456Dll/symbols.txt create mode 100644 src/REL/m456Dll/main.c diff --git a/config/GMPE01_00/rels/m456Dll/symbols.txt b/config/GMPE01_00/rels/m456Dll/symbols.txt index 4321bb34..68d90044 100644 --- a/config/GMPE01_00/rels/m456Dll/symbols.txt +++ b/config/GMPE01_00/rels/m456Dll/symbols.txt @@ -65,51 +65,52 @@ fn_1_9900 = .text:0x00009900; // type:function size:0x118 fn_1_9A18 = .text:0x00009A18; // type:function size:0x250 _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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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: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_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +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:0x8 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 @@ -221,11 +222,11 @@ lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 lbl_1_data_54 = .data:0x00000054; // type:object size:0xC lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x23 scope:local data:string lbl_1_data_90 = .data:0x00000090; // type:object size:0x4 data:4byte lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte jumptable_1_data_98 = .data:0x00000098; // type:object size:0x30 scope:local -lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x1C data:string +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x1C scope:local data:string lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x50 lbl_1_data_134 = .data:0x00000134; // type:object size:0x30 lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 @@ -255,6 +256,7 @@ lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x8 data:byte lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x1 data:byte lbl_1_data_7B0 = .data:0x000007B0; // type:object size:0x10 lbl_1_data_7C0 = .data:0x000007C0; // type:object size:0x10 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index f074a33e..253a517d 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -309,8 +309,8 @@ modules: links: [] - object: files/dll/m456Dll.rel - symbols: config/GMPJ01_00/rels/m456Dll/symbols.txt - splits: config/GMPJ01_00/rels/m456Dll/splits.txt + symbols: config/GMPE01_00/rels/m456Dll/symbols.txt + splits: config/GMPE01_00/rels/m456Dll/splits.txt links: [] - object: files/dll/m457Dll.rel diff --git a/config/GMPJ01_00/rels/m456Dll/splits.txt b/config/GMPJ01_00/rels/m456Dll/splits.txt deleted file mode 100644 index 531cd645..00000000 --- a/config/GMPJ01_00/rels/m456Dll/splits.txt +++ /dev/null @@ -1,7 +0,0 @@ -Sections: - .text type:code align:4 - .ctors type:rodata align:4 - .dtors type:rodata align:4 - .rodata type:rodata align:8 - .data type:data align:8 - .bss type:bss align:8 diff --git a/config/GMPJ01_00/rels/m456Dll/symbols.txt b/config/GMPJ01_00/rels/m456Dll/symbols.txt deleted file mode 100644 index fbdbf93f..00000000 --- a/config/GMPJ01_00/rels/m456Dll/symbols.txt +++ /dev/null @@ -1,282 +0,0 @@ -_prolog = .text:0x00000000; // type:function size:0x54 scope:global -_epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x300 -fn_1_3A0 = .text:0x000003A0; // type:function size:0x10 -fn_1_3B0 = .text:0x000003B0; // type:function size:0x10 -fn_1_3C0 = .text:0x000003C0; // type:function size:0xD8 -fn_1_498 = .text:0x00000498; // type:function size:0x74C -fn_1_BE4 = .text:0x00000BE4; // type:function size:0x5C -fn_1_C40 = .text:0x00000C40; // type:function size:0x84 -fn_1_CC4 = .text:0x00000CC4; // type:function size:0x68 -fn_1_D2C = .text:0x00000D2C; // type:function size:0x220 -fn_1_F4C = .text:0x00000F4C; // type:function size:0x84 -fn_1_FD0 = .text:0x00000FD0; // type:function size:0x2B8 -fn_1_1288 = .text:0x00001288; // type:function size:0x7C -fn_1_1304 = .text:0x00001304; // type:function size:0xD3C -fn_1_2040 = .text:0x00002040; // type:function size:0x50 -fn_1_2090 = .text:0x00002090; // type:function size:0x104 -fn_1_2194 = .text:0x00002194; // type:function size:0x64 -fn_1_21F8 = .text:0x000021F8; // type:function size:0x250 -fn_1_2448 = .text:0x00002448; // type:function size:0x4D0 -fn_1_2918 = .text:0x00002918; // type:function size:0x1AC -fn_1_2AC4 = .text:0x00002AC4; // type:function size:0x330 -fn_1_2DF4 = .text:0x00002DF4; // type:function size:0x148 -fn_1_2F3C = .text:0x00002F3C; // type:function size:0x70 -fn_1_2FAC = .text:0x00002FAC; // type:function size:0x960 -fn_1_390C = .text:0x0000390C; // type:function size:0x328 -fn_1_3C34 = .text:0x00003C34; // type:function size:0x7C -fn_1_3CB0 = .text:0x00003CB0; // type:function size:0x82C -fn_1_44DC = .text:0x000044DC; // type:function size:0x68 -fn_1_4544 = .text:0x00004544; // type:function size:0x108 -fn_1_464C = .text:0x0000464C; // type:function size:0x348 -fn_1_4994 = .text:0x00004994; // type:function size:0xB3C -fn_1_54D0 = .text:0x000054D0; // type:function size:0x6E8 -fn_1_5BB8 = .text:0x00005BB8; // type:function size:0xBC -fn_1_5C74 = .text:0x00005C74; // type:function size:0x450 -fn_1_60C4 = .text:0x000060C4; // type:function size:0x104 -fn_1_61C8 = .text:0x000061C8; // type:function size:0x1E4 -fn_1_63AC = .text:0x000063AC; // type:function size:0x4C -fn_1_63F8 = .text:0x000063F8; // type:function size:0x4C -fn_1_6444 = .text:0x00006444; // type:function size:0x158 -fn_1_659C = .text:0x0000659C; // type:function size:0x1F4 -fn_1_6790 = .text:0x00006790; // type:function size:0x50 -fn_1_67E0 = .text:0x000067E0; // type:function size:0x5D0 -fn_1_6DB0 = .text:0x00006DB0; // type:function size:0xE8 -fn_1_6E98 = .text:0x00006E98; // type:function size:0xC8 -fn_1_6F60 = .text:0x00006F60; // type:function size:0x4 -fn_1_6F64 = .text:0x00006F64; // type:function size:0x18C -fn_1_70F0 = .text:0x000070F0; // type:function size:0xF0 -fn_1_71E0 = .text:0x000071E0; // type:function size:0x2C4 -fn_1_74A4 = .text:0x000074A4; // type:function size:0x54 -fn_1_74F8 = .text:0x000074F8; // type:function size:0x280 -fn_1_7778 = .text:0x00007778; // type:function size:0x3D8 -fn_1_7B50 = .text:0x00007B50; // type:function size:0x424 -fn_1_7F74 = .text:0x00007F74; // type:function size:0x4 -fn_1_7F78 = .text:0x00007F78; // type:function size:0x100 -fn_1_8078 = .text:0x00008078; // type:function size:0x104 -fn_1_817C = .text:0x0000817C; // type:function size:0x2A0 -fn_1_841C = .text:0x0000841C; // type:function size:0x474 -fn_1_8890 = .text:0x00008890; // type:function size:0x11C -fn_1_89AC = .text:0x000089AC; // type:function size:0x2BC -fn_1_8C68 = .text:0x00008C68; // type:function size:0x50 -fn_1_8CB8 = .text:0x00008CB8; // type:function size:0xB44 -fn_1_97FC = .text:0x000097FC; // type:function size:0x104 -fn_1_9900 = .text:0x00009900; // type:function size:0x118 -fn_1_9A18 = .text:0x00009A18; // type:function size:0x250 -_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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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:0x8 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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -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:0x4 data:float -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_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float -lbl_1_data_38 = .data:0x00000038; // type:object size:0xC data:float -lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float -lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 -lbl_1_data_54 = .data:0x00000054; // type:object size:0xC -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 -lbl_1_data_90 = .data:0x00000090; // type:object size:0x4 data:4byte -lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte -jumptable_1_data_98 = .data:0x00000098; // type:object size:0x30 scope:local -lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x1C data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x50 -lbl_1_data_134 = .data:0x00000134; // type:object size:0x30 -lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 -lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 -jumptable_1_data_188 = .data:0x00000188; // type:object size:0x20 scope:local -lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x8 data:float -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x80 -lbl_1_data_230 = .data:0x00000230; // type:object size:0xB8 -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x30 -lbl_1_data_318 = .data:0x00000318; // type:object size:0x1 data:byte -lbl_1_data_31C = .data:0x0000031C; // type:object size:0x50 -lbl_1_data_36C = .data:0x0000036C; // type:object size:0x7 data:string -lbl_1_data_373 = .data:0x00000373; // type:object size:0x7 data:string -lbl_1_data_37A = .data:0x0000037A; // type:object size:0x1 data:byte -lbl_1_data_37E = .data:0x0000037E; // type:object size:0x1 data:byte -lbl_1_data_382 = .data:0x00000382; // type:object size:0x6 data:byte -lbl_1_data_388 = .data:0x00000388; // type:object size:0x30 -lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x138 -lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x68 -lbl_1_data_558 = .data:0x00000558; // type:object size:0xD0 -lbl_1_data_628 = .data:0x00000628; // type:object size:0xD0 -lbl_1_data_6F8 = .data:0x000006F8; // type:object size:0x18 -lbl_1_data_710 = .data:0x00000710; // type:object size:0x1 data:byte -lbl_1_data_714 = .data:0x00000714; // type:object size:0x6C -lbl_1_data_780 = .data:0x00000780; // type:object size:0x24 -lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x8 data:byte -lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x1 data:byte -lbl_1_data_7B0 = .data:0x000007B0; // type:object size:0x10 -lbl_1_data_7C0 = .data:0x000007C0; // type:object size:0x10 -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte -lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x40 data:2byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x2 data:2byte -lbl_1_bss_62 = .bss:0x00000062; // type:object size:0x2 data:2byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte -lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x4 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x10 data:4byte -lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x4 data:4byte -lbl_1_bss_84 = .bss:0x00000084; // type:object size:0x4 data:4byte -lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x4 data:4byte -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x10 data:4byte -lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte -lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte -lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte -lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte -lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m456Dll/splits.txt b/config/GMPP01_00/rels/m456Dll/splits.txt index 531cd645..ba1c0109 100644 --- a/config/GMPP01_00/rels/m456Dll/splits.txt +++ b/config/GMPP01_00/rels/m456Dll/splits.txt @@ -5,3 +5,18 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m456Dll/main.c: + .text start:0x000000A0 end:0x00002EB0 + .rodata start:0x00000000 end:0x000000F0 + .data start:0x00000000 end:0x000002E8 + .bss start:0x00000000 end:0x00000090 + +REL/m456Dll/stage.c: + .text start:0x00002EB0 end:0x00009D74 + .rodata start:0x000000F0 end:0x00000330 + .data start:0x000002E8 end:0x000007D0 + .bss start:0x00000090 end:0x000000BC diff --git a/config/GMPP01_00/rels/m456Dll/symbols.txt b/config/GMPP01_00/rels/m456Dll/symbols.txt index 3dfe3a85..b5353f63 100644 --- a/config/GMPP01_00/rels/m456Dll/symbols.txt +++ b/config/GMPP01_00/rels/m456Dll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x300 +ObjectSetup = .text:0x000000A0; // type:function size:0x300 fn_1_3A0 = .text:0x000003A0; // type:function size:0x10 fn_1_3B0 = .text:0x000003B0; // type:function size:0x10 fn_1_3C0 = .text:0x000003C0; // type:function size:0xD8 @@ -12,207 +12,207 @@ fn_1_D2C = .text:0x00000D2C; // type:function size:0x220 fn_1_F4C = .text:0x00000F4C; // type:function size:0x84 fn_1_FD0 = .text:0x00000FD0; // type:function size:0x2B8 fn_1_1288 = .text:0x00001288; // type:function size:0xD8 -fn_1_1360 = .text:0x00001360; // type:function size:0xD9C -fn_1_20FC = .text:0x000020FC; // type:function size:0x50 -fn_1_214C = .text:0x0000214C; // type:function size:0x104 -fn_1_2250 = .text:0x00002250; // type:function size:0x64 -fn_1_22B4 = .text:0x000022B4; // type:function size:0x250 -fn_1_2504 = .text:0x00002504; // type:function size:0x4D0 -fn_1_29D4 = .text:0x000029D4; // type:function size:0x1AC -fn_1_2B80 = .text:0x00002B80; // type:function size:0x330 -fn_1_2EB0 = .text:0x00002EB0; // type:function size:0x148 -fn_1_2FF8 = .text:0x00002FF8; // type:function size:0x70 -fn_1_3068 = .text:0x00003068; // type:function size:0x960 -fn_1_39C8 = .text:0x000039C8; // type:function size:0x328 -fn_1_3CF0 = .text:0x00003CF0; // type:function size:0x7C -fn_1_3D6C = .text:0x00003D6C; // type:function size:0x82C -fn_1_4598 = .text:0x00004598; // type:function size:0x68 -fn_1_4600 = .text:0x00004600; // type:function size:0x108 -fn_1_4708 = .text:0x00004708; // type:function size:0x348 -fn_1_4A50 = .text:0x00004A50; // type:function size:0xB3C -fn_1_558C = .text:0x0000558C; // type:function size:0x6E8 -fn_1_5C74 = .text:0x00005C74; // type:function size:0xBC -fn_1_5D30 = .text:0x00005D30; // type:function size:0x450 -fn_1_6180 = .text:0x00006180; // type:function size:0x104 -fn_1_6284 = .text:0x00006284; // type:function size:0x1E4 -fn_1_6468 = .text:0x00006468; // type:function size:0x4C -fn_1_64B4 = .text:0x000064B4; // type:function size:0x4C -fn_1_6500 = .text:0x00006500; // type:function size:0x158 -fn_1_6658 = .text:0x00006658; // type:function size:0x1F4 -fn_1_684C = .text:0x0000684C; // type:function size:0x50 -fn_1_689C = .text:0x0000689C; // type:function size:0x5D0 -fn_1_6E6C = .text:0x00006E6C; // type:function size:0xE8 -fn_1_6F54 = .text:0x00006F54; // type:function size:0xC8 -fn_1_701C = .text:0x0000701C; // type:function size:0x4 -fn_1_7020 = .text:0x00007020; // type:function size:0x18C -fn_1_71AC = .text:0x000071AC; // type:function size:0xF0 -fn_1_729C = .text:0x0000729C; // type:function size:0x2C4 -fn_1_7560 = .text:0x00007560; // type:function size:0x54 -fn_1_75B4 = .text:0x000075B4; // type:function size:0x2B0 -fn_1_7864 = .text:0x00007864; // type:function size:0x3D8 -fn_1_7C3C = .text:0x00007C3C; // type:function size:0x444 -fn_1_8080 = .text:0x00008080; // type:function size:0x4 -fn_1_8084 = .text:0x00008084; // type:function size:0x100 -fn_1_8184 = .text:0x00008184; // type:function size:0x104 -fn_1_8288 = .text:0x00008288; // type:function size:0x2A0 -fn_1_8528 = .text:0x00008528; // type:function size:0x474 -fn_1_899C = .text:0x0000899C; // type:function size:0x11C -fn_1_8AB8 = .text:0x00008AB8; // type:function size:0x2BC -fn_1_8D74 = .text:0x00008D74; // type:function size:0x50 -fn_1_8DC4 = .text:0x00008DC4; // type:function size:0xB44 -fn_1_9908 = .text:0x00009908; // type:function size:0x104 -fn_1_9A0C = .text:0x00009A0C; // type:function size:0x118 -fn_1_9B24 = .text:0x00009B24; // type:function size:0x250 +fn_1_1304 = .text:0x00001360; // type:function size:0xD9C +fn_1_2040 = .text:0x000020FC; // type:function size:0x50 +fn_1_2090 = .text:0x0000214C; // type:function size:0x104 +fn_1_2194 = .text:0x00002250; // type:function size:0x64 +fn_1_21F8 = .text:0x000022B4; // type:function size:0x250 +fn_1_2448 = .text:0x00002504; // type:function size:0x4D0 +fn_1_2918 = .text:0x000029D4; // type:function size:0x1AC +fn_1_2AC4 = .text:0x00002B80; // type:function size:0x330 +fn_1_2DF4 = .text:0x00002EB0; // type:function size:0x148 +fn_1_2F3C = .text:0x00002FF8; // type:function size:0x70 +fn_1_2FAC = .text:0x00003068; // type:function size:0x960 +fn_1_390C = .text:0x000039C8; // type:function size:0x328 +fn_1_3C34 = .text:0x00003CF0; // type:function size:0x7C +fn_1_3CB0 = .text:0x00003D6C; // type:function size:0x82C +fn_1_44DC = .text:0x00004598; // type:function size:0x68 +fn_1_4544 = .text:0x00004600; // type:function size:0x108 +fn_1_464C = .text:0x00004708; // type:function size:0x348 +fn_1_4994 = .text:0x00004A50; // type:function size:0xB3C +fn_1_54D0 = .text:0x0000558C; // type:function size:0x6E8 +fn_1_5BB8 = .text:0x00005C74; // type:function size:0xBC +fn_1_5C74 = .text:0x00005D30; // type:function size:0x450 +fn_1_60C4 = .text:0x00006180; // type:function size:0x104 +fn_1_61C8 = .text:0x00006284; // type:function size:0x1E4 +fn_1_63AC = .text:0x00006468; // type:function size:0x4C +fn_1_63F8 = .text:0x000064B4; // type:function size:0x4C +fn_1_6444 = .text:0x00006500; // type:function size:0x158 +fn_1_659C = .text:0x00006658; // type:function size:0x1F4 +fn_1_6790 = .text:0x0000684C; // type:function size:0x50 +fn_1_67E0 = .text:0x0000689C; // type:function size:0x5D0 +fn_1_6DB0 = .text:0x00006E6C; // type:function size:0xE8 +fn_1_6E98 = .text:0x00006F54; // type:function size:0xC8 +fn_1_6F60 = .text:0x0000701C; // type:function size:0x4 +fn_1_6F64 = .text:0x00007020; // type:function size:0x18C +fn_1_70F0 = .text:0x000071AC; // type:function size:0xF0 +fn_1_71E0 = .text:0x0000729C; // type:function size:0x2C4 +fn_1_74A4 = .text:0x00007560; // type:function size:0x54 +fn_1_74F8 = .text:0x000075B4; // type:function size:0x2B0 +fn_1_7778 = .text:0x00007864; // type:function size:0x3D8 +fn_1_7B50 = .text:0x00007C3C; // type:function size:0x444 +fn_1_7F74 = .text:0x00008080; // type:function size:0x4 +fn_1_7F78 = .text:0x00008084; // type:function size:0x100 +fn_1_8078 = .text:0x00008184; // type:function size:0x104 +fn_1_817C = .text:0x00008288; // type:function size:0x2A0 +fn_1_841C = .text:0x00008528; // type:function size:0x474 +fn_1_8890 = .text:0x0000899C; // type:function size:0x11C +fn_1_89AC = .text:0x00008AB8; // type:function size:0x2BC +fn_1_8C68 = .text:0x00008D74; // type:function size:0x50 +fn_1_8CB8 = .text:0x00008DC4; // type:function size:0xB44 +fn_1_97FC = .text:0x00009908; // type:function size:0x104 +fn_1_9900 = .text:0x00009A0C; // type:function size:0x118 +fn_1_9A18 = .text:0x00009B24; // type:function size:0x250 _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_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -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:0x4 data:float -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_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 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_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x4 scope:local data:float +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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:0x4 scope:local data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 scope:local data:float +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double @@ -222,11 +222,11 @@ lbl_1_data_44 = .data:0x00000044; // type:object size:0xC data:float lbl_1_data_50 = .data:0x00000050; // type:object size:0x4 lbl_1_data_54 = .data:0x00000054; // type:object size:0xC lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 +lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 scope:local lbl_1_data_90 = .data:0x00000090; // type:object size:0x4 data:4byte lbl_1_data_94 = .data:0x00000094; // type:object size:0x4 data:4byte jumptable_1_data_98 = .data:0x00000098; // type:object size:0x30 scope:local -lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x1C data:string +lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x1C scope:local data:string lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x50 lbl_1_data_134 = .data:0x00000134; // type:object size:0x30 lbl_1_data_164 = .data:0x00000164; // type:object size:0x20 @@ -236,26 +236,28 @@ lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x8 data:float lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x80 lbl_1_data_230 = .data:0x00000230; // type:object size:0xB8 lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x30 -lbl_1_data_318 = .data:0x00000318; // type:object size:0x1 data:byte +lbl_1_data_318 = .data:0x00000318; // type:object size:0x4 data:byte lbl_1_data_31C = .data:0x0000031C; // type:object size:0x50 -lbl_1_data_36C = .data:0x0000036C; // type:object size:0x7 data:string -lbl_1_data_373 = .data:0x00000373; // type:object size:0x7 data:string -lbl_1_data_37A = .data:0x0000037A; // type:object size:0x1 data:byte -lbl_1_data_37E = .data:0x0000037E; // type:object size:0x1 data:byte -lbl_1_data_382 = .data:0x00000382; // type:object size:0x6 data:byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0x7 scope:local data:string +lbl_1_data_373 = .data:0x00000373; // type:object size:0x7 scope:local data:string +lbl_1_data_37A = .data:0x0000037A; // type:object size:0x4 data:byte +lbl_1_data_37E = .data:0x0000037E; // type:object size:0x4 data:byte +lbl_1_data_382 = .data:0x00000382; // type:object size:0x4 data:byte lbl_1_data_388 = .data:0x00000388; // type:object size:0x30 lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0x138 lbl_1_data_4F0 = .data:0x000004F0; // type:object size:0x68 lbl_1_data_558 = .data:0x00000558; // type:object size:0xD0 lbl_1_data_628 = .data:0x00000628; // type:object size:0xD0 lbl_1_data_6F8 = .data:0x000006F8; // type:object size:0x18 -lbl_1_data_710 = .data:0x00000710; // type:object size:0x1 data:byte +lbl_1_data_710 = .data:0x00000710; // type:object size:0x4 data:byte lbl_1_data_714 = .data:0x00000714; // type:object size:0x6C lbl_1_data_780 = .data:0x00000780; // type:object size:0x24 -lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x8 data:byte -lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x1 data:byte +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x4 data:byte +lbl_1_data_7A8 = .data:0x000007A8; // type:object size:0x4 data:byte +lbl_1_data_7AC = .data:0x000007AC; // type:object size:0x4 data:byte lbl_1_data_7B0 = .data:0x000007B0; // type:object size:0x10 lbl_1_data_7C0 = .data:0x000007C0; // type:object size:0x10 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0xC data:float diff --git a/configure.py b/configure.py index ac7d5cd7..c9d90084 100644 --- a/configure.py +++ b/configure.py @@ -1249,8 +1249,8 @@ config.libs = [ Rel( "m456Dll", # Take a Breather objects={ - Object(NonMatching, "REL/m456Dll/main.c"), - Object(NonMatching, "REL/m456Dll/stage.c"), + Object(Matching, "REL/m456Dll/main.c"), + Object(Matching, "REL/m456Dll/stage.c"), }, ), Rel( diff --git a/include/REL/m456Dll.h b/include/REL/m456Dll.h index 749d8bd1..3b566223 100644 --- a/include/REL/m456Dll.h +++ b/include/REL/m456Dll.h @@ -8,5 +8,7 @@ void fn_1_2F3C(void); s32 fn_1_61C8(Vec *arg0, float arg1, float arg2, s32 arg3); float fn_1_63AC(void); s32 fn_1_67E0(Vec *arg0, float arg1); +s32 fn_1_74F8(Vec *pos, float scale); +void fn_1_7F78(void); #endif diff --git a/src/REL/m456Dll/main.c b/src/REL/m456Dll/main.c new file mode 100644 index 00000000..8604098f --- /dev/null +++ b/src/REL/m456Dll/main.c @@ -0,0 +1,969 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m456Dll.h" +#include "version.h" + +#ifndef __MWERKS__ +#include "game/esprite.h" +#include "game/frand.h" +#endif + +typedef struct M456DllMainWork { + struct { + u8 unk_00_field0 : 1; + u8 unk_00_field1 : 1; + u8 unk_00_field2 : 1; + u8 unk_00_field3 : 1; + }; + s16 unk_02; + s16 unk_04; + s8 unk_06; + s8 unk_07; + u16 unk_08; + u16 unk_0A; + s32 unk_0C; + s32 unk_10; + s16 unk_14; + s16 unk_16; + s16 unk_18; + s16 unk_1A; + char unk1C[4]; + s32 unk_20; + s32 unk_24; + s16 unk_28; + s16 unk_2A; + s16 unk_2C; + s16 unk_2E; + s16 unk_30; +} M456DllMainWork; /* size = 0x34 */ + +typedef struct M456DllData0Struct { + /* 0x00 */ float unk_00; + /* 0x04 */ float unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ float unk_10; + /* 0x14 */ float unk_14; + /* 0x18 */ float unk_18; +} M456DllData0Struct; /* size = 0x1C */ + +typedef struct M456DllData1B0Struct { + /* 0x00 */ u32 unk_00; + /* 0x04 */ s32 unk_04; +} M456DllData1B0Struct; /* size = 0x08 */ + +typedef struct M456DllDataE4Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ u32 unk_04; +} M456DllDataE4Struct; /* size = 0x08 */ + +typedef struct M456DllBss18Struct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + float unk_0C; + float unk_10; + s32 unk_14; + s32 unk_18; + float unk_1C; + s16 unk_20[0x10]; +} M456DllBss18Struct; /* size 0x40 */ + +void fn_1_1304(omObjData *object); +void fn_1_2040(omObjData *object); +float fn_1_2090(float arg8, float arg9, float argA); +void fn_1_2194(Process *process); +void fn_1_21F8(s32 arg0, s32 arg1, float arg8); +void fn_1_2448(omObjData *object); +void fn_1_2918(Process *process); +void fn_1_2AC4(omObjData *object); +void fn_1_3C0(omObjData *object); +void fn_1_498(omObjData *); +void fn_1_BE4(omObjData *); +void fn_1_C40(Process *process); +void fn_1_CC4(void); +s32 fn_1_D2C(void); +s32 fn_1_F4C(void); +void fn_1_FD0(omObjData *object); + +M456DllData0Struct lbl_1_data_0[2] = { + { 500.0f, 0.0f, 1000.0f, 0.0f, 40.0f, 0.0f, 0.0f }, + { 1985.0f, 0.0f, 100.0f, 100.0f, -13.0f, 0.0f, 0.0f }, +}; +Vec lbl_1_data_38 = { 700.0f, 2500.0f, -700.0f }; +Vec lbl_1_data_44 = { 0.0f, 0.0f, 0.0f }; +GXColor lbl_1_data_50 = { 0xFF, 0xFF, 0xFF, 0xFF }; +Vec lbl_1_data_54 = { 200.0f, 15000.0f, -200.0f }; +Vec lbl_1_data_60 = { 0.0f, 1.0f, 0.0f }; + +omObjData *lbl_1_bss_8C; +omObjData *lbl_1_bss_88; +omObjData *lbl_1_bss_84; +s32 lbl_1_bss_80; +s32 lbl_1_bss_70[4]; +s32 lbl_1_bss_6C; +s32 lbl_1_bss_68; +s32 lbl_1_bss_64; +s16 lbl_1_bss_62; +s16 lbl_1_bss_60; +u32 lbl_1_bss_5C; +u32 lbl_1_bss_58; +M456DllBss18Struct lbl_1_bss_18; +u32 lbl_1_bss_14; +Vec lbl_1_bss_8; +s16 lbl_1_bss_6; +s16 lbl_1_bss_4; +s32 lbl_1_bss_0; + +void ObjectSetup(void) +{ + Process *var_r31; + CameraData *var_r30; + s16 var_r29; + + var_r30 = Hu3DCamera; + OSReport("******* M456ObjectSetup *********\n"); + var_r31 = omInitObjMan(0x32, 0x2000); + omGameSysInit(var_r31); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, -1.0f, 20.0f, 25000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + lbl_1_bss_88 = omAddObjEx(var_r31, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_8.x = lbl_1_data_44.x - lbl_1_data_38.x; + lbl_1_bss_8.y = lbl_1_data_44.y - lbl_1_data_38.y; + lbl_1_bss_8.z = lbl_1_data_44.z - lbl_1_data_38.z; + PSVECNormalize(&lbl_1_bss_8, &lbl_1_bss_8); + var_r29 = Hu3DGLightCreateV(&lbl_1_data_38, &lbl_1_bss_8, &lbl_1_data_50); + Hu3DGLightInfinitytSet(var_r29); + Hu3DGLightStaticSet(var_r29, 1); + Hu3DShadowCreate(10.0f, var_r30->near, var_r30->far); + Hu3DShadowTPLvlSet(0.7f); + Hu3DShadowPosSet(&lbl_1_data_54, &lbl_1_data_60, &lbl_1_data_44); + HuAudSndGrpSet(0x4E); + lbl_1_bss_84 = omAddObjEx(var_r31, 0, 0, 0, -1, fn_1_3C0); + fn_1_2194(var_r31); + fn_1_C40(var_r31); + fn_1_2DF4(var_r31); + lbl_1_bss_5C = GWMGRecordGet(0xA); + if (lbl_1_bss_5C == 0) { + lbl_1_bss_5C = 5 * REFRESH_RATE; + } + lbl_1_bss_58 = 0; + fn_1_2918(var_r31); + lbl_1_bss_18.unk_14 = lbl_1_bss_5C; + lbl_1_bss_18.unk_00 = 1; + lbl_1_bss_18.unk_0C = 536.0f; +} + +s32 lbl_1_data_90 = -1; +s32 lbl_1_data_94 = -1; + +void fn_1_3A0(u32 arg0) +{ + lbl_1_bss_80 = arg0; +} + +s32 fn_1_3B0(void) +{ + return lbl_1_bss_80; +} + +void fn_1_3C0(omObjData *object) +{ + CameraData *var_r31 = Hu3DCamera; + fn_1_3A0(0); + lbl_1_bss_6C = REFRESH_RATE; + lbl_1_bss_70[0] = lbl_1_bss_70[1] = lbl_1_bss_70[2] = lbl_1_bss_70[3] = -1; + lbl_1_bss_62 = 5; + lbl_1_bss_60 = REFRESH_RATE; + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 0x3C); + var_r31->fov = 30.0f; + object->func = fn_1_498; +} + +void fn_1_498(omObjData *object) +{ + s16 sp8[4]; + + s32 var_r31; + omObjData **var_r29; + M456DllMainWork *var_r28; + + switch (fn_1_3B0()) { + case 0: + if (lbl_1_data_94 < 0) { + lbl_1_data_94 = HuAudFXPlay(0x7D1); + } + if (--lbl_1_bss_6C == 0) { + fn_1_3A0(1); + lbl_1_bss_6C = 2 * REFRESH_RATE; + } + break; + case 1: + if (--lbl_1_bss_6C == 0) { + fn_1_3A0(2); + lbl_1_bss_6 = MGSeqCreate(3, 0); + } + break; + case 2: + if (MGSeqStatGet(lbl_1_bss_6) == 0) { + fn_1_3A0(3); + lbl_1_bss_4 = MGSeqCreate(1, 5, -1, -1); + } + if ((lbl_1_data_90 < 0) && ((MGSeqStatGet(lbl_1_bss_6) & 0x10) != 0)) { + lbl_1_data_90 = HuAudSeqPlay(0x43); + } + break; + case 3: + if (--lbl_1_bss_60 == 0) { + lbl_1_bss_62--; + MGSeqParamSet(lbl_1_bss_4, 1, lbl_1_bss_62); + lbl_1_bss_60 = REFRESH_RATE; + } + if (lbl_1_bss_62 == 0) { + lbl_1_bss_64 = fn_1_D2C(); + if (lbl_1_bss_64 == 0) { + fn_1_3A0(5); + lbl_1_bss_6 = MGSeqCreate(3, 1); + HuAudSeqFadeOut(lbl_1_data_90, 0x64); + } + else { + fn_1_3A0(4); + HuAudFXPlay(0x11); + lbl_1_bss_6C = 2 * REFRESH_RATE; + } + } + break; + case 4: + if (lbl_1_bss_4 >= 0) { + MGSeqParamSet(lbl_1_bss_4, 2, -1); + lbl_1_bss_4 = -1; + } + if (lbl_1_bss_6C != 0) { + lbl_1_bss_6C--; + } + else if (lbl_1_bss_18.unk_18 < lbl_1_bss_14) { + lbl_1_bss_18.unk_18++; + } + if (fn_1_F4C() != 0) { + fn_1_3A0(5); + lbl_1_bss_6 = MGSeqCreate(3, 1); + HuAudSeqFadeOut(lbl_1_data_90, 0x64); + } + break; + case 5: + if (lbl_1_bss_4 >= 0) { + MGSeqParamSet(lbl_1_bss_4, 2, -1); + lbl_1_bss_4 = -1; + } + if (MGSeqStatGet(lbl_1_bss_6) == 0) { + if (lbl_1_bss_58 == 0) { + fn_1_3A0(9); + lbl_1_bss_6C = 2 * REFRESH_RATE; + } + else { + fn_1_3A0(6); + lbl_1_bss_6 = MGSeqCreate(0xE, lbl_1_bss_58); + GWMGRecordSet(0xA, lbl_1_bss_58); + lbl_1_bss_18.unk_04 = 1; + lbl_1_bss_18.unk_14 = lbl_1_bss_18.unk_18; + } + } + break; + case 6: + if (MGSeqStatGet(lbl_1_bss_6) == 0) { + fn_1_3A0(9); + lbl_1_bss_6C = 2 * REFRESH_RATE; + } + break; + case 9: + if (lbl_1_bss_6C != 0) { + lbl_1_bss_6C--; + } + if (lbl_1_bss_6C == 0) { + if (fn_1_F4C() != 0) { + fn_1_3A0(0xB); + if (lbl_1_bss_64 != 0) { + var_r29 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); + for (var_r31 = 0; var_r31 < lbl_1_bss_64; var_r31++) { + var_r28 = var_r29[lbl_1_bss_70[var_r31]]->data; + sp8[var_r31] = var_r28->unk_14; + GWPlayerCoinWinSet(lbl_1_bss_70[var_r31], 10); + } + for (; var_r31 < 4; var_r31++) { + sp8[var_r31] = -1; + } + lbl_1_bss_6 = MGSeqCreate(5, 3, sp8[0], sp8[1], sp8[2], sp8[3]); + HuAudSStreamPlay(1); + } + else { + lbl_1_bss_6 = MGSeqCreate(3, 2); + HuAudSStreamPlay(4); + } + lbl_1_bss_6C = 3.5 * REFRESH_RATE; + } + } + break; + case 11: + if (--lbl_1_bss_6C == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); + HuAudFXStop(lbl_1_data_94); + object->func = fn_1_BE4; + } + break; + } + if ((omSysExitReq != 0) && (WipeStatGet() == 0)) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); + object->func = fn_1_BE4; + } +} + +void fn_1_BE4(omObjData *object) +{ + if (WipeStatGet() == 0) { + fn_1_CC4(); + fn_1_2F3C(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + OSReport("******* M456Exit *********\n"); + } +} + +void fn_1_C40(Process *process) +{ + s32 var_r31; + + lbl_1_bss_68 = 0; + omMakeGroupEx(process, 0, 4); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + omAddObjEx(process, 5, 0xA, 0x32, 0, fn_1_FD0); + } +} + +void fn_1_CC4(void) +{ + s32 var_r31; + omObjData **var_r30; + + var_r30 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); + if (var_r30 != NULL) { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_2040(var_r30[var_r31]); + } + } +} + +s32 fn_1_D2C(void) +{ + s32 sp8[4]; + + s32 var_r31; + M456DllMainWork *var_r30; + s32 var_r29; + u32 var_r28; + omObjData **var_r27; + + var_r29 = 0; + var_r28 = 0; + var_r27 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + var_r30 = var_r27[var_r31]->data; + if ((var_r30->unk_30 != 0) && (var_r30->unk_30 < 5)) { + var_r30->unk_30 = 5; + } + if (var_r30->unk_30 > var_r28) { + var_r28 = var_r30->unk_30; + var_r29 = 0; + sp8[var_r29++] = var_r31; + } + else if (var_r30->unk_30 == var_r28) { + sp8[var_r29++] = var_r31; + } + } + if (var_r28 == 0) { + lbl_1_bss_70[var_r31] = -1; + return 0; + } + lbl_1_bss_14 = (var_r28 * REFRESH_RATE) / 5; + for (var_r31 = 0; var_r31 < var_r29; var_r31++) { + if (GWPlayerCfg[sp8[var_r31]].iscom == 0) { + break; + } + } + if (var_r31 < var_r29) { + if (lbl_1_bss_14 > lbl_1_bss_5C) { + lbl_1_bss_58 = lbl_1_bss_14; + } + if (lbl_1_bss_14 >= 7.5f * REFRESH_RATE) { + GWGameStat.present[0x33] = 1; + } + } + for (var_r31 = 0; var_r31 < var_r29; var_r31++) { + lbl_1_bss_70[var_r31] = sp8[var_r31]; + } + return var_r29; +} + +s32 fn_1_F4C(void) +{ + s32 var_r31; + omObjData **var_r30; + M456DllMainWork *var_r29; + + var_r30 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + var_r29 = var_r30[var_r31]->data; + if (var_r29->unk_00_field2 == 0) { + return 0; + } + } + return 1; +} + +M456DllDataE4Struct lbl_1_data_E4[0xA] = { + { 0x5F0000, 0 }, + { 0x55001C, 1 }, + { 0x550024, 1 }, + { 0x55002C, 1 }, + { 0x550034, 1 }, + { 0x5F002A, 0 }, + { 0x5F0005, 0 }, + { 0x5F0017, 0 }, + { 0x5F0018, 0 }, + { 0x55003C, 1 }, +}; +Vec lbl_1_data_134[4] = { + { -300.0f, 0.0f, 0.0f }, + { -100.0f, 0.0f, 0.0f }, + { 100.0f, 0.0f, 0.0f }, + { 300.0f, 0.0f, 0.0f }, +}; +float lbl_1_data_164[8] = { -50.0f, -50.0f, -50.0f, -50.0f, -50.0f, -50.0f, -50.0f, -50.0f }; +u16 lbl_1_data_184[2] = { 0x40, 0x20 }; + +void fn_1_FD0(omObjData *object) +{ + M456DllMainWork *var_r31; + u32 var_r29; + s32 var_r28; + s32 var_r27; + + var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M456DllMainWork), MEMORY_DEFAULT_NUM); + object->data = var_r31; + memset(var_r31, 0, sizeof(M456DllMainWork)); + var_r31->unk_02 = lbl_1_bss_68++; + var_r31->unk_04 = GWPlayerCfg[var_r31->unk_02].pad_idx; + var_r27 = GWGameStat.rumble; + var_r31->unk_10 = var_r27; + var_r28 = GWPlayerCfg[var_r31->unk_02].character; + var_r31->unk_14 = var_r28; + var_r31->unk_16 = GWPlayerCfg[var_r31->unk_02].diff; + var_r31->unk_18 = GWPlayerCfg[var_r31->unk_02].group; + var_r31->unk_0C = -1; + object->model[0] = CharModelCreate(var_r28, 8); + Hu3DModelShadowSet(object->model[0]); + Hu3DModelLayerSet(object->model[0], 3); + Hu3DModelCameraSet(object->model[0], 1); + var_r31->unk_20 = 0; + for (var_r29 = 0; var_r29 < 0xA; var_r29++) { + if (lbl_1_data_E4[var_r29].unk_04 == 0) { + object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_14, lbl_1_data_E4[var_r29].unk_00); + } + else { + object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_14, var_r31->unk_14 + lbl_1_data_E4[var_r29].unk_00); + } + } + Hu3DMotionSet(object->model[0], object->motion[var_r31->unk_20]); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + CharModelVoiceEnableSet(var_r31->unk_14, object->motion[5], 0); + CharModelVoiceEnableSet(var_r31->unk_14, object->motion[6], 0); + var_r31->unk_2E = REFRESH_RATE; + object->trans.x = lbl_1_data_134[var_r31->unk_02].x; + object->trans.y = lbl_1_data_134[var_r31->unk_02].y; + object->trans.z = lbl_1_data_134[var_r31->unk_02].z; + object->rot.y = 0.0f; + CharModelDataClose(var_r31->unk_14); + object->func = fn_1_1304; +} + +#if VERSION_PAL +#define fn_1_1288_COND (((var_r31->unk_16 + 4) * 60) / 50.0f) +#else +#define fn_1_1288_COND (var_r31->unk_16 + 4) +#endif + +void fn_1_1288(omObjData *object) +{ + M456DllMainWork *var_r31 = object->data; + + if ((frand() & 0x3F) < fn_1_1288_COND) { + if (var_r31->unk_0C <= 0) { + var_r31->unk_0A |= 0x40; + return; + } + var_r31->unk_0A |= 0x20; + } +} + +void fn_1_1304(omObjData *var_r30) +{ + Vec sp14; + Vec sp8; + float var_f31; + + M456DllMainWork *var_r31; + s32 var_r29; + u32 var_r28; + void *var_r27; + s32 var_r26; + omObjData **var_r25; + s32 var_r24; + + var_r31 = var_r30->data; + var_r29 = var_r31->unk_20; + var_r28 = var_r31->unk_24; + if (var_r31->unk_00_field0 == 0) { + var_r30->trans.y = fn_1_63AC(); + } + if (fn_1_3B0() < 3) { + return; + } + switch (var_r31->unk_1A) { + case 0: + if (fn_1_3B0() == 5) { + var_r31->unk_00_field2 = 1; + var_r31->unk_1A = 6; + return; + } + if (fn_1_3B0() == 4) { + if (var_r31->unk_30 != 0) { + var_r31->unk_1A = 1; + var_r31->unk_28 = REFRESH_RATE; + } + else { + var_r31->unk_1A = 6; + var_r31->unk_00_field2 = 1; + } + return; + } + if (GWPlayerCfg[var_r31->unk_02].iscom == 0) { + var_r31->unk_06 = HuPadStkX[var_r31->unk_04]; + var_r31->unk_07 = HuPadStkY[var_r31->unk_04]; + var_r31->unk_08 = HuPadBtn[var_r31->unk_04]; + var_r31->unk_0A = HuPadBtnDown[var_r31->unk_04] & 0xFFFF9FFF; + } + else { + var_r31->unk_08 = var_r31->unk_0A = 0; + var_r31->unk_06 = var_r31->unk_07 = 0; + fn_1_1288(var_r30); + } + if (var_r31->unk_2C != 0) { + if (--var_r31->unk_2C == 0) { + var_r29 = 0; + var_r28 = 0x40000001; + } + } + if ((var_r31->unk_0A & 0x60) != 0) { + if (var_r31->unk_0C < 0) { + var_r31->unk_0C = (var_r31->unk_0A & 0x40) ? 0 : 1; + } + if (((var_r31->unk_0A & lbl_1_data_184[var_r31->unk_0C]) != 0) && ((var_r31->unk_0A & ~lbl_1_data_184[var_r31->unk_0C]) == 0)) { + var_r31->unk_30++; + var_r31->unk_2C = var_r31->unk_2E; + var_r29 = 1; + var_r28 = 0x40000001; + var_r31->unk_0C ^= 1; + } + } + break; + case 1: + if (--var_r31->unk_28 == 0) { + var_r31->unk_00_field0 = 1; + var_r31->unk_1A = 2; + var_r31->unk_28 = var_r31->unk_2A = REFRESH_RATE; + } + var_r29 = 2; + var_r28 = 0; + break; + case 2: + var_r29 = 3; + var_r28 = 0; + if (var_r31->unk_28 < (var_r31->unk_2A - 0xF)) { + var_f31 = (float)var_r31->unk_28 / (var_r31->unk_2A - 0xF); + var_r30->trans.y = -300.0 * cosd((270.0f * var_f31)); + var_r30->trans.z = 400.0f + (-400.0f * var_f31); + if ((var_r31->unk_00_field1 == 0) && (var_f31 < 0.35f)) { + var_r31->unk_00_field1 = 1; + fn_1_67E0(&var_r30->trans, -1.0f); + fn_1_61C8(&var_r30->trans, -1.0f, -1.0f, -1); + fn_1_7F78(); + HuAudFXPlay(0x7D2); + } + } + if (--var_r31->unk_28 == 0) { + var_r30->trans.y = -300.0f; + var_r30->trans.z = 400.0f; + var_r31->unk_1A = 3; + var_r31->unk_28 = (var_r31->unk_30 * REFRESH_RATE) / 5; + for (var_r26 = 0; var_r26 < lbl_1_bss_64; var_r26++) { + if (var_r31->unk_02 == lbl_1_bss_70[var_r26]) { + break; + } + } + if (var_r26 < lbl_1_bss_64) { + var_r31->unk_00_field3 = 1; + var_r31->unk_28 -= VERSION_PAL ? 16.5f : 19.800001f; + } + else { + var_r31->unk_28 -= 0.8f * REFRESH_RATE; + } + var_r31->unk_2A = var_r31->unk_28; + } + break; + case 3: + var_r29 = 5; + var_r28 = 0x40000001; + if (var_r31->unk_28 < 1.0f * REFRESH_RATE) { + if ((frand() & 3) == 0) { + sp14.x = var_r30->trans.x; + sp14.y = 100.0f + var_r30->trans.y; + sp14.z = var_r30->trans.z; + fn_1_74F8(&sp14, -1.0f); + } + } + else if ((frand() & 0xF) == 0) { + sp14.x = var_r30->trans.x; + sp14.y = 100.0f + var_r30->trans.y; + sp14.z = var_r30->trans.z; + fn_1_74F8(&sp14, -1.0f); + } + if (--var_r31->unk_28 == 0) { + var_r31->unk_00_field1 = 0; + if (var_r31->unk_00_field3 == 0) { + var_r31->unk_1A = 4; + var_r31->unk_28 = var_r31->unk_2A = REFRESH_RATE / 1.25; + } + else { + var_r31->unk_1A = 5; + var_r31->unk_28 = var_r31->unk_2A = REFRESH_RATE; + } + } + break; + case 4: + var_r29 = 4; + var_r28 = 0x40000001; + var_f31 = (float)var_r31->unk_28 / var_r31->unk_2A; + var_r30->trans.y = -300.0 * sind((90.0f * var_f31)); + if ((frand() & 3) == 0) { + fn_1_74F8(&var_r30->trans, -1.0f); + } + if ((var_r31->unk_00_field1 == 0) && (var_f31 < 0.2f)) { + var_r31->unk_00_field1 = 1; + fn_1_67E0(&var_r30->trans, -1.0f); + fn_1_61C8(&var_r30->trans, -1.0f, -1.0f, -1); + HuAudFXPlay(0x7D3); + } + if (--var_r31->unk_28 == 0) { + var_r31->unk_00_field2 = 1; + var_r31->unk_1A = 6; + var_r30->trans.y = lbl_1_data_164[var_r31->unk_14]; + } + break; + case 5: + var_r29 = 6; + var_r28 = 0; + var_f31 = (float)var_r31->unk_28 / var_r31->unk_2A; + var_r30->trans.y = -300.0 * -sind((270.0f * var_f31)); + if ((var_r31->unk_00_field1 == 0) && (var_f31 < 0.7f)) { + var_r31->unk_00_field1 = 1; + fn_1_67E0(&var_r30->trans, 5.0f); + fn_1_61C8(&var_r30->trans, -1.0f, -1.0f, -1); + HuAudFXPlay(0x7D3); + HuAudCharVoicePlay(var_r31->unk_14, 0x125); + } + if (--var_r31->unk_28 == 0) { + var_r31->unk_00_field2 = 1; + var_r31->unk_1A = 6; + var_r30->trans.y = lbl_1_data_164[var_r31->unk_14]; + fn_1_67E0(&var_r30->trans, -1.0f); + fn_1_61C8(&var_r30->trans, -1.0f, -1.0f, -1); + } + break; + case 6: + if (var_r31->unk_00_field0 == 0) { + var_r29 = 0; + } + else { + var_r29 = 5; + } + var_r28 = 0x40000001; + if ((fn_1_3B0() == 5) && (var_r31->unk_00_field3 == 0) && (lbl_1_bss_64 == 1)) { + var_r25 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); + PSVECSubtract(&var_r25[*lbl_1_bss_70]->trans, &var_r30->trans, &sp8); + var_r30->rot.y = fn_1_2090(var_r30->rot.y, atan2d(sp8.x, sp8.z), 0.1f); + } + if (fn_1_3B0() == 0xB) { + var_r31->unk_1A = 7; + if (var_r31->unk_00_field3 != 0) { + Hu3DMotionOverlaySet(var_r30->model[0], var_r30->motion[9]); + HuAudCharVoicePlay(var_r31->unk_14, 0x124); + } + } + break; + case 7: + if (var_r31->unk_00_field3 != 0) { + var_r29 = 5; + var_r28 = 0x40000001; + if (73.0f <= Hu3DMotionOverlayTimeGet(var_r30->model[0])) { + Hu3DMotionOverlayTimeSet(var_r30->model[0], 35.0f); + Hu3DModelAttrReset(var_r30->model[0], HU3D_MOTATTR_OVL_PAUSE); + } + } + else if (var_r31->unk_00_field0 == 0) { + var_r29 = 8; + var_r28 = 0; + } + break; + } + if ((var_r31->unk_00_field0 != 0) && (var_r31->unk_1A >= 6) && (var_r31->unk_1A <= 7) && ((frand() & 0x3F) == 0)) { + fn_1_61C8(&var_r30->trans, 0.3f, -1.0f, -1); + } + if ((var_r29 != var_r31->unk_20) || (var_r28 != var_r31->unk_24)) { + var_r31->unk_20 = var_r29; + var_r31->unk_24 = var_r28; + CharModelMotionShiftSet(var_r31->unk_14, var_r30->motion[var_r31->unk_20], 0.0f, 8.0f, var_r28); + } +} + +void fn_1_2040(omObjData *object) +{ + M456DllMainWork *sp8 = object->data; + if (object->data != NULL) { + HuMemDirectFree(object->data); + object->data = NULL; + } +} + +float fn_1_2090(float var_f29, float sp8, float spC) +{ + float var_f31; + float var_f30; + + var_f31 = fmod(sp8 - var_f29, 360.0); + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + var_f30 = fmod(var_f29 + (spC * var_f31), 360.0); + if (var_f30 < 0.0f) { + var_f30 += 360.0f; + } + return var_f30; +} + +void fn_1_2194(Process *process) +{ + fn_1_21F8(0, 0, 0.0f); + lbl_1_bss_8C = omAddObjEx(process, 0xA, 0, 0, -1, fn_1_2448); +} + +void fn_1_21F8(s32 arg0, s32 arg1, float arg8) +{ + CZoom = lbl_1_data_0[arg0].unk_00 + (arg8 * (lbl_1_data_0[arg1].unk_00 - lbl_1_data_0[arg0].unk_00)); + Center.x = lbl_1_data_0[arg0].unk_04 + (arg8 * (lbl_1_data_0[arg1].unk_04 - lbl_1_data_0[arg0].unk_04)); + Center.y = lbl_1_data_0[arg0].unk_08 + (arg8 * (lbl_1_data_0[arg1].unk_08 - lbl_1_data_0[arg0].unk_08)); + Center.z = lbl_1_data_0[arg0].unk_0C + (arg8 * (lbl_1_data_0[arg1].unk_0C - lbl_1_data_0[arg0].unk_0C)); + CRot.x = lbl_1_data_0[arg0].unk_10 + (arg8 * (lbl_1_data_0[arg1].unk_10 - lbl_1_data_0[arg0].unk_10)); + CRot.y = lbl_1_data_0[arg0].unk_14 + (arg8 * (lbl_1_data_0[arg1].unk_14 - lbl_1_data_0[arg0].unk_14)); + CRot.z = lbl_1_data_0[arg0].unk_18 + (arg8 * (lbl_1_data_0[arg1].unk_18 - lbl_1_data_0[arg0].unk_18)); +} + +float lbl_1_data_1A8[2] = { 0.0f, 0.0f }; + +void fn_1_2448(omObjData *object) +{ + CameraData *sp8 = Hu3DCamera; + + switch (fn_1_3B0()) { + case 1: + fn_1_21F8(0, 1, sind((90.0f * lbl_1_data_1A8[0]))); + if (lbl_1_data_1A8[0] < 1.0f) { + lbl_1_data_1A8[0] += 1.0f / REFRESH_RATE; + if (lbl_1_data_1A8[0] > 1.0f) { + lbl_1_data_1A8[0] = 1.0f; + break; + } + } + break; + case 4: + case 5: + case 6: + case 7: + break; + case 8: + fn_1_21F8(1, 1, 0.0f); + break; + case 9: + break; + } +} + +M456DllData1B0Struct lbl_1_data_1B0[0x10] = { + { 0x550044, 0x10E }, + { 0x610037, 0xFA }, + { 0x610030, 0xFA }, + { 0x610030, 0xFA }, + { 0x610030, 0xFA }, + { 0x610030, 0xFA }, + { 0x610030, 0xFA }, + { 0x610030, 0xFA }, + { 0x610030, 0xFA }, + { 0x610031, 0xFA }, + { 0x610031, 0xFA }, + { 0x610031, 0xFA }, + { 0x610031, 0xFA }, + { 0x610031, 0xFA }, + { 0x610031, 0xFA }, + { 0x610031, 0xFA }, +}; + +Vec2f lbl_1_data_230[0x17] = { + { 0.0f, 0.0f }, + { -52.0f, -9.0f }, + { 53.0f, -8.0f }, + { 35.0f, -8.0f }, + { 9.0f, -8.0f }, + { -9.0f, -8.0f }, + { -31.0f, -8.0f }, + { 23.0f, -8.0f }, + { -17.0f, -8.0f }, + { 53.0f, 8.0f }, + { 35.0f, 8.0f }, + { 9.0f, 8.0f }, + { -9.0f, 8.0f }, + { -31.0f, 8.0f }, + { 23.0f, 8.0f }, + { -17.0f, 8.0f }, + { 355.0f, 0.0f }, + { 0.0f, 0.0f }, + { 275.0f, 128.0f }, + { 950.0f, 6.0f }, + { 0.0f, 0.0f }, + { 0.0f, 190.0f }, + { 0.0f, 550.0f }, +}; + +void fn_1_2918(Process *sp8) +{ + M456DllBss18Struct *var_r31; + s32 var_r30; + omObjData *var_r29; + + var_r29 = omAddObjEx(sp8, 0x7FD9, 0, 0, -1, fn_1_2AC4); + var_r31 = &lbl_1_bss_18; + var_r29->data = var_r31; + memset(var_r31, 0, sizeof(M456DllBss18Struct)); + var_r31->unk_14 = 60 * REFRESH_RATE; + var_r31->unk_0C = 320.0f; + var_r31->unk_10 = 64.0f; + var_r31->unk_1C = 1.0f; + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + var_r31->unk_20[var_r30] = -1; + if (lbl_1_data_1B0[var_r30].unk_00 != 0) { + var_r31->unk_20[var_r30] = espEntry(lbl_1_data_1B0[var_r30].unk_00, lbl_1_data_1B0[var_r30].unk_04, 0); + espAttrSet(var_r31->unk_20[var_r30], HUSPR_ATTR_LINEAR); + espDispOff(var_r31->unk_20[var_r30]); + } + } + espColorSet(var_r31->unk_20[0], 0, 0, 0); + espTPLvlSet(var_r31->unk_20[0], 0.699999988079071); + espBankSet(var_r31->unk_20[7], 0xB); + espBankSet(var_r31->unk_20[8], 0xA); + espBankSet(var_r31->unk_20[14], 0xB); + espBankSet(var_r31->unk_20[15], 0xA); +} + +void fn_1_2AC4(omObjData *var_r26) +{ + u32 sp8[3]; + + M456DllBss18Struct *var_r31; + s32 var_r30; + u32 var_r29; + s32 var_r28; + s32 var_r27; + + var_r31 = var_r26->data; + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + if (var_r31->unk_20[var_r30] >= 0) { + if (var_r31->unk_00 == 0) { + espDispOff(var_r31->unk_20[var_r30]); + } + else { + espDispOn(var_r31->unk_20[var_r30]); + espPosSet( + var_r31->unk_20[var_r30], 0.9f * (var_r31->unk_0C + lbl_1_data_230[var_r30].x), var_r31->unk_10 + lbl_1_data_230[var_r30].y); + } + } + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + if (var_r30 != 0) { + var_r29 = var_r31->unk_18; + var_r27 = 9; + } + else { + var_r29 = var_r31->unk_14; + var_r27 = 2; + } + sp8[0] = var_r29 % REFRESH_RATE; + var_r29 = (var_r29 - sp8[0]) / REFRESH_RATE; +#if VERSION_PAL + sp8[0] = 100.0f * (sp8[0] / (float)REFRESH_RATE); +#else + sp8[0] = 100.0f * (1.0f / REFRESH_RATE * sp8[0]); +#endif + sp8[1] = var_r29 % 60; + var_r29 = (var_r29 - sp8[1]) / 60; + sp8[2] = var_r29; + for (var_r28 = 0; var_r28 < 3; var_r28++) { + espBankSet(var_r31->unk_20[var_r27++], sp8[var_r28] % 10); + if (var_r28 < 2) { + espBankSet(var_r31->unk_20[var_r27++], sp8[var_r28] / 10); + } + } + } + if (var_r31->unk_04 != 0) { + if (var_r31->unk_08 == 0) { + if ((var_r31->unk_1C += 0.02f) >= 1.2f) { + var_r31->unk_1C = 1.2f; + var_r31->unk_08 = 1; + } + } + else { + if ((var_r31->unk_1C -= 0.04f) <= 1.0f) { + var_r31->unk_1C = 1.0f; + var_r31->unk_08 = 0; + } + } + for (var_r30 = 1; var_r30 < 9; var_r30++) { + espScaleSet(var_r31->unk_20[var_r30], var_r31->unk_1C, var_r31->unk_1C); + } + } +} diff --git a/src/REL/m456Dll/stage.c b/src/REL/m456Dll/stage.c index a90d1b95..072377d8 100644 --- a/src/REL/m456Dll/stage.c +++ b/src/REL/m456Dll/stage.c @@ -1,24 +1,28 @@ +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" #include "game/object.h" #include "game/objsub.h" -#include "game/hsfman.h" -#include "game/hsfdraw.h" -#include "game/hsfanim.h" #include "game/hsfmotion.h" #include "game/pad.h" -#include "game/wipe.h" -#include "game/frand.h" #include "game/audio.h" -#include "game/minigame_seq.h" -#include "game/gamework_data.h" #include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/minigame_seq.h" #include "game/sprite.h" +#include "game/wipe.h" #include "REL/m456Dll.h" #include "ext_math.h" #include "math.h" +#include "version.h" + +#if !VERSION_PAL +#include "game/frand.h" +#endif Process *lbl_1_bss_B8; omObjData *lbl_1_bss_B4; @@ -154,7 +158,7 @@ omObjData *fn_1_2FAC(void) s32 id; ModelData *modelP; s32 i; - + work->unkA40 = 0; work->unkA44 = 0; work->unkA48 = 0; @@ -162,7 +166,7 @@ omObjData *fn_1_2FAC(void) work->unkA50 = 0; work->unkA54 = 0; work->unkA58 = 0; - + object->model[0] = id = Hu3DHookFuncCreate(fn_1_4994); Hu3DModelCameraSet(id, HU3D_CAM0); Hu3DModelLayerSet(id, 5); @@ -196,52 +200,52 @@ omObjData *fn_1_2FAC(void) GXPosition2f32(-0.5f, 0.5f); GXTexCoord2f32(0, 1); work2->unkA18 = GXEndDisplayList(); - for(i=0; i<26; i++) { + for (i = 0; i < 26; i++) { work2->unk874[i][0] = 0; work2->unk874[i][1] = 0; work2->unk944[i][0] = 0; work2->unk944[i][1] = 0; } - + object->model[3] = id = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 5)); Hu3DModelPosSet(id, 0, 0, -5000); Hu3DModelScaleSet(id, 2, 2, 2); Hu3DModelCameraSet(id, HU3D_CAM0); Hu3DModelLayerSet(id, 1); id = Hu3DTexScrollCreate(object->model[3], "S3TCsk"); - Hu3DTexScrollPosMoveSet(id, -0.00009166667f, 0, 0); + Hu3DTexScrollPosMoveSet(id, VERSION_PAL ? -0.00010999999f : -0.00009166667f, 0, 0); id = Hu3DTexScrollCreate(object->model[3], "pa_sk3"); - Hu3DTexScrollPosMoveSet(id, -0.00020833335f, 0, 0); - + Hu3DTexScrollPosMoveSet(id, VERSION_PAL ? -0.00025f : -0.00020833335f, 0, 0); + object->model[4] = id = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 6)); Hu3DModelPosSet(id, 0, 0, -3000); Hu3DModelScaleSet(id, 1.2f, 1.2f, 1.2f); Hu3DModelCameraSet(id, HU3D_CAM0); Hu3DModelLayerSet(id, 1); - + object->model[8] = id = Hu3DHookFuncCreate(fn_1_44DC); Hu3DModelCameraSet(id, HU3D_CAM0); Hu3DModelLayerSet(id, 2); modelP = &Hu3DData[id]; modelP->unk_120 = work; - + object->model[10] = id = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 0)); Hu3DModelPosSet(id, 0, 0, 0); Hu3DModelCameraSet(id, HU3D_CAM0); Hu3DModelLayerSet(id, 3); Hu3DModelShadowMapSet(object->model[10]); - for(i=0; i<4; i++) { - - object->model[i+11] = id = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 1)); - Hu3DModelCameraSet(object->model[i+11], HU3D_CAM0); - Hu3DModelLayerSet(object->model[i+11], 3); - Hu3DModelPosSet(object->model[i+11], lbl_1_data_2E8[i].x, lbl_1_data_2E8[i].y, lbl_1_data_2E8[i].z); - Hu3DModelAttrSet(object->model[i+11], HU3D_MOTATTR_SHAPE_LOOP); - Hu3DMotionShapeTimeSet(object->model[i+11], (0.25*i)*Hu3DMotionShapeMaxTimeGet(object->model[i+11])); + for (i = 0; i < 4; i++) { + + object->model[i + 11] = id = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 1)); + Hu3DModelCameraSet(object->model[i + 11], HU3D_CAM0); + Hu3DModelLayerSet(object->model[i + 11], 3); + Hu3DModelPosSet(object->model[i + 11], lbl_1_data_2E8[i].x, lbl_1_data_2E8[i].y, lbl_1_data_2E8[i].z); + Hu3DModelAttrSet(object->model[i + 11], HU3D_MOTATTR_SHAPE_LOOP); + Hu3DMotionShapeTimeSet(object->model[i + 11], (0.25 * i) * Hu3DMotionShapeMaxTimeGet(object->model[i + 11])); } modelP = &Hu3DData[object->model[0]]; workUnk4 = &work2->unk4[0]; - for(i=0; i<4; i++, workUnk4++) { + for (i = 0; i < 4; i++, workUnk4++) { workUnk4->unkC = lbl_1_data_31C[i].unk0; workUnk4->unk10 = lbl_1_data_31C[i].unk4; workUnk4->unk14 = lbl_1_data_31C[i].unk8; @@ -252,13 +256,13 @@ omObjData *fn_1_2FAC(void) memset(workUnk4->unk0, 0, workUnk4->unk4); DCFlushRange(workUnk4->unk0, workUnk4->unk4); } - for(i=0; i<64; i++, workUnk74++) { + for (i = 0; i < 64; i++, workUnk74++) { workUnk74->unk0.x = workUnk74->unk0.y = workUnk74->unk0.z = 0; workUnk74->unkC.x = 0; workUnk74->unkC.y = 0; workUnk74->unkC.z = 1; - workUnk74->unk18 = 0.016666668f; - workUnk74->unk1C = 60; + workUnk74->unk18 = 1.0f / REFRESH_RATE; + workUnk74->unk1C = REFRESH_RATE; workUnk74->unk1E = 0; } return object; @@ -271,21 +275,21 @@ void fn_1_390C(omObjData *object) Work2FAC *work = object->data; Work2FAC *work2 = work; s32 i; - if((work->unkA50 = work->unkA50+(0.007874016f*((s32)frand() & 0x7F)*3.0f)) > 360) { + if ((work->unkA50 = work->unkA50 + (0.007874016f * ((s32)frand() & 0x7F) * 3.0f)) > 360) { work->unkA50 -= 360; } - work->unkA44 = (25+work->unkA40)+(5.0*sind(work->unkA50)); + work->unkA44 = (25 + work->unkA40) + (5.0 * sind(work->unkA50)); Hu3DModelPosSet(object->model[10], 0, work->unkA44, 0); - for(i=0; i<4; i++) { - Hu3DModelPosSet(object->model[i+11], lbl_1_data_2E8[i].x, work->unkA44+lbl_1_data_2E8[i].y, lbl_1_data_2E8[i].z); + for (i = 0; i < 4; i++) { + Hu3DModelPosSet(object->model[i + 11], lbl_1_data_2E8[i].x, work->unkA44 + lbl_1_data_2E8[i].y, lbl_1_data_2E8[i].z); } - work->unkA54 += 0.001f; - work->unkA58 += 0.001f; + work->unkA54 += VERSION_PAL ? 0.0012f : 0.001f; // 0.06f / REFRESH_RATE + work->unkA58 += VERSION_PAL ? 0.0012f : 0.001f; work->unkA48++; work->unkA4C++; - if(work->unkA4C >= 60.0f && work->unkA4C <= 81.0f) { - float time = 1-((work->unkA4C-60.0f)/21.0f); - if(time < 0.0f) { + if (work->unkA4C >= (float)REFRESH_RATE && work->unkA4C <= (VERSION_PAL ? 67.5f : 81.0f)) { + float time = 1 - ((work->unkA4C - (float)REFRESH_RATE) / (VERSION_PAL ? 17.5f : 21.0f)); + if (time < 0.0f) { time = 0.0f; } fn_1_97FC(time); @@ -309,147 +313,31 @@ void fn_1_3C34(omObjData *object) GXColor lbl_1_data_37A = { 255, 255, 255, 32 }; GXColor lbl_1_data_37E = { 255, 255, 255, 10 }; GXColor lbl_1_data_382 = { 0, 126, 126, 255 }; -Vec lbl_1_data_388[4] = { - -1000, 50, 1000, - -1000, 50, -1000, - 1000, 50, -1000, - 1000, 50, 1000 -}; +Vec lbl_1_data_388[4] = { -1000, 50, 1000, -1000, 50, -1000, 1000, 50, -1000, 1000, 50, 1000 }; -Vec lbl_1_data_3B8[26] = { - -1500, 0, 1000, - -1400, 0, 1000, - 0, 0, 1000, - 1400, 0, 1000, - 1500, 0, 1000, - -1500, 0, -500, - -1400, 0, -500, - 0, 0, -500, - 1400, 0, -500, - 1500, 0, -500, - -1500, 0, -2000, - -1400, 0, -2000, - 0, 0, -2000, - 1400, 0, -2000, - 1500, 0, -2000, - -1500, 0, -5000, - -1400, 0, -5000, - 0, 0, -5000, - 1400, 0, -5000, - 1500, 0, -5000, - -2000, 0, -500, - -2500, 0, -2000, - -3000, 0, -5000, - 2000, 0, -500, - 2500, 0, -2000, - 3000, 0, -5000 -}; +Vec lbl_1_data_3B8[26] = { -1500, 0, 1000, -1400, 0, 1000, 0, 0, 1000, 1400, 0, 1000, 1500, 0, 1000, -1500, 0, -500, -1400, 0, -500, 0, 0, -500, 1400, + 0, -500, 1500, 0, -500, -1500, 0, -2000, -1400, 0, -2000, 0, 0, -2000, 1400, 0, -2000, 1500, 0, -2000, -1500, 0, -5000, -1400, 0, -5000, 0, 0, + -5000, 1400, 0, -5000, 1500, 0, -5000, -2000, 0, -500, -2500, 0, -2000, -3000, 0, -5000, 2000, 0, -500, 2500, 0, -2000, 3000, 0, -5000 }; -GXColor lbl_1_data_4F0[26] = { - { 96, 128, 255, 255 }, - { 128, 160, 255, 32 }, - { 128, 160, 255, 32 }, - { 128, 160, 255, 32 }, - { 96, 128, 255, 255 }, - { 24, 48, 255, 255 }, - { 96, 128, 255, 32 }, - { 128, 160, 255, 32 }, - { 96, 128, 255, 32 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 }, - { 96, 128, 255, 255 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 }, - { 8, 24, 143, 255 }, - { 8, 24, 143, 255 }, - { 8, 24, 143, 255 }, - { 8, 24, 143, 255 }, - { 8, 24, 143, 255 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 }, - { 24, 48, 255, 255 } -}; +GXColor lbl_1_data_4F0[26] = { { 96, 128, 255, 255 }, { 128, 160, 255, 32 }, { 128, 160, 255, 32 }, { 128, 160, 255, 32 }, { 96, 128, 255, 255 }, + { 24, 48, 255, 255 }, { 96, 128, 255, 32 }, { 128, 160, 255, 32 }, { 96, 128, 255, 32 }, { 24, 48, 255, 255 }, { 24, 48, 255, 255 }, + { 24, 48, 255, 255 }, { 96, 128, 255, 255 }, { 24, 48, 255, 255 }, { 24, 48, 255, 255 }, { 8, 24, 143, 255 }, { 8, 24, 143, 255 }, + { 8, 24, 143, 255 }, { 8, 24, 143, 255 }, { 8, 24, 143, 255 }, { 24, 48, 255, 255 }, { 24, 48, 255, 255 }, { 24, 48, 255, 255 }, + { 24, 48, 255, 255 }, { 24, 48, 255, 255 }, { 24, 48, 255, 255 } }; -float lbl_1_data_558[26][2] = { - 0, 1, - 0.033333335, 1, - 0.5, 1, - 0.96666664, 1, - 1, 1, - 0, 0.5, - 0.033333335, 0.5, - 0.5, 0.5, - 0.96666664, 0.5, - 1, 0.5, - 0, 0, - 0.033333335, 0, - 0.5, 0, - 0.96666664, 0, - 1, 0, - 0, 0, - 0.033333335, 0, - 0.5, 0, - 0.96666664, 0, - 1, 0, - -0.15, 0.5, - -0.33, 0, - -0.49, 0, - 1.15, 0.5, - 1.33, 0, - 1.49, 0 -}; +float lbl_1_data_558[26][2] + = { 0, 1, 0.033333335, 1, 0.5, 1, 0.96666664, 1, 1, 1, 0, 0.5, 0.033333335, 0.5, 0.5, 0.5, 0.96666664, 0.5, 1, 0.5, 0, 0, 0.033333335, 0, 0.5, 0, + 0.96666664, 0, 1, 0, 0, 0, 0.033333335, 0, 0.5, 0, 0.96666664, 0, 1, 0, -0.15, 0.5, -0.33, 0, -0.49, 0, 1.15, 0.5, 1.33, 0, 1.49, 0 }; -float lbl_1_data_628[26][2] = { - 0, 30, - 0.5, 30, - 7.5, 30, - 14.5, 30, - 15, 30, - 0, 15, - 0.5, 15, - 7.5, 15, - 14.5, 15, - 15, 15, - 0, 7.5, - 0.5, 7.5, - 7.5, 7.5, - 14.5, 7.5, - 15, 7.5, - 0, 0, - 0.5, 0, - 7.5, 0, - 14.5, 0, - 15, 0, - -2.25, 15, - -4.9500003, 7.5, - -7.3500004, 0, - 17.25, 15, - 19.95, 7.5, - 22.35, 0 -}; +float lbl_1_data_628[26][2] = { 0, 30, 0.5, 30, 7.5, 30, 14.5, 30, 15, 30, 0, 15, 0.5, 15, 7.5, 15, 14.5, 15, 15, 15, 0, 7.5, 0.5, 7.5, 7.5, 7.5, + 14.5, 7.5, 15, 7.5, 0, 0, 0.5, 0, 7.5, 0, 14.5, 0, 15, 0, -2.25, 15, -4.9500003, 7.5, -7.3500004, 0, 17.25, 15, 19.95, 7.5, 22.35, 0 }; -float lbl_1_data_6F8[2][3] = { - 0, 0, 0.5, - 0, 0.5, 0 -}; +float lbl_1_data_6F8[2][3] = { 0, 0, 0.5, 0, 0.5, 0 }; GXColor lbl_1_data_710 = { 80, 80, 80, 80 }; -Vec lbl_1_data_714[9] = { - -1500, 0, -5000, - 0, 0, -5000, - 1500, 0, -5000, - -1500, 0, -3000, - 0, 0, -3000, - 1500, 0, -3000, - -1500, 0, 1000, - 0, 0, 1000, - 1500, 0, 1000 -}; +Vec lbl_1_data_714[9] + = { -1500, 0, -5000, 0, 0, -5000, 1500, 0, -5000, -1500, 0, -3000, 0, 0, -3000, 1500, 0, -3000, -1500, 0, 1000, 0, 0, 1000, 1500, 0, 1000 }; GXColor lbl_1_data_780[9] = { { 255, 255, 255, 0 }, @@ -509,11 +397,11 @@ void fn_1_3CB0(ModelData *model, Mtx matrix) GXPosition2u16(0, 0); GXTexCoord2f32(work->unkA54, work->unkA58); GXPosition2u16(400, 0); - GXTexCoord2f32(work->unkA54+7, work->unkA58); + GXTexCoord2f32(work->unkA54 + 7, work->unkA58); GXPosition2u16(400, 400); - GXTexCoord2f32(work->unkA54+7, work->unkA58+7); + GXTexCoord2f32(work->unkA54 + 7, work->unkA58 + 7); GXPosition2u16(0, 400); - GXTexCoord2f32(work->unkA54, work->unkA58+7); + GXTexCoord2f32(work->unkA54, work->unkA58 + 7); GXEnd(); GXSetNumTexGens(1); GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY); @@ -532,22 +420,22 @@ void fn_1_3CB0(ModelData *model, Mtx matrix) GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); workUnk74 = &work2->unk74[0]; - for(i=0; i<64; i++, workUnk74++) { + for (i = 0; i < 64; i++, workUnk74++) { float scale; float accel; - if(workUnk74->unk1E == 0) { + if (workUnk74->unk1E == 0) { continue; } - scale = 128*(workUnk74->unkC.x*(0.2f+cosd(workUnk74->unk1E*workUnk74->unk18*90.0f))); - accel = workUnk74->unk1E*workUnk74->unk18; - lbl_1_data_37A.a = workUnk74->unkC.z*sind((accel*accel)*90.0f)*255.0; + scale = 128 * (workUnk74->unkC.x * (0.2f + cosd(workUnk74->unk1E * workUnk74->unk18 * 90.0f))); + accel = workUnk74->unk1E * workUnk74->unk18; + lbl_1_data_37A.a = workUnk74->unkC.z * sind((accel * accel) * 90.0f) * 255.0; GXSetChanMatColor(GX_COLOR0A0, lbl_1_data_37A); - MTXScale(modelview, 0.5f*scale, 0.5f*scale, 1.0f); + MTXScale(modelview, 0.5f * scale, 0.5f * scale, 1.0f); mtxRotCat(modelview, 0, 0, workUnk74->unkC.y); - mtxTransCat(modelview, 400*(workUnk74->unk0.x+1500)/3000, 400*(workUnk74->unk0.z - -2000)/3000, 0); + mtxTransCat(modelview, 400 * (workUnk74->unk0.x + 1500) / 3000, 400 * (workUnk74->unk0.z - -2000) / 3000, 0); GXLoadPosMtxImm(modelview, GX_PNMTX0); GXCallDisplayList(work2->unkA14, work2->unkA18); - if(!omPauseChk()) { + if (!omPauseChk()) { workUnk74->unk1E--; } } @@ -600,11 +488,11 @@ void fn_1_464C(ModelData *model, Mtx matrix) Mtx projCamera; s16 lightMask; s16 i; - + fn_1_5BB8(workUnk4, 0); GXLoadPosMtxImm(matrix, GX_PNMTX0); fov = cameraP->fov; - if(fov <= 0.0f) { + if (fov <= 0.0f) { fov = 45; } MTXLightPerspective(proj, fov, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); @@ -632,7 +520,7 @@ void fn_1_464C(ModelData *model, Mtx matrix) GXSetVtxDesc(GX_VA_POS, GX_INDEX16); GXSetArray(GX_VA_POS, lbl_1_data_388, sizeof(Vec)); GXBegin(GX_QUADS, GX_VTXFMT0, 4); - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { GXPosition1x16(i); } GXEnd(); @@ -641,7 +529,7 @@ void fn_1_464C(ModelData *model, Mtx matrix) workUnk4 = &work2->unk4[2]; fn_1_60C4(0, workUnk4, 0, 0, 0); GXBegin(GX_QUADS, GX_VTXFMT0, 4); - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { GXPosition1x16(i); } GXEnd(); @@ -668,7 +556,7 @@ void fn_1_4994(ModelData *model, Mtx matrix) MTXInvXpose(matrix, invXPose); GXLoadNrmMtxImm(invXPose, GX_PNMTX0); fov = cameraP->fov; - if(fov <= 0.0f) { + if (fov <= 0.0f) { fov = 45; } MTXLightPerspective(proj, fov, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); @@ -710,53 +598,55 @@ void fn_1_4994(ModelData *model, Mtx matrix) GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, GX_TRUE, GX_FALSE, GX_ITM_1); GXSetIndTexMtx(GX_ITM_1, lbl_1_data_6F8, -1); - for(i=0; i<26; i++) { - work2->unk944[i][0] -= 0.007874016f*((s32)frand() & 0x7F)*0.005f; - work2->unk944[i][1] += 0.007874016f*((s32)frand() & 0x7F)*0.005f; - work2->unk874[i][0] = work2->unk944[i][0]+lbl_1_data_628[i][0]; - work2->unk874[i][1] = work2->unk944[i][1]+lbl_1_data_628[i][1]; + for (i = 0; i < 26; i++) { + work2->unk944[i][0] -= 0.007874016f * ((s32)frand() & 0x7F) * 0.005f; + work2->unk944[i][1] += 0.007874016f * ((s32)frand() & 0x7F) * 0.005f; + work2->unk874[i][0] = work2->unk944[i][0] + lbl_1_data_628[i][0]; + work2->unk874[i][1] = work2->unk944[i][1] + lbl_1_data_628[i][1]; } DCFlushRange(&work2->unk874[0][0], sizeof(work2->unk874)); GXClearVtxDesc(); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - + GXSetArray(GX_VA_POS, lbl_1_data_3B8, sizeof(Vec)); GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetArray(GX_VA_CLR0, lbl_1_data_4F0, sizeof(GXColor)); GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); - GXSetArray(GX_VA_TEX0, lbl_1_data_558, sizeof(float)*2); + GXSetArray(GX_VA_TEX0, lbl_1_data_558, sizeof(float) * 2); GXSetVtxDesc(GX_VA_TEX1, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX1, GX_TEX_ST, GX_F32, 0); - GXSetArray(GX_VA_TEX1, &work2->unk874[0][0], sizeof(float)*2); + GXSetArray(GX_VA_TEX1, &work2->unk874[0][0], sizeof(float) * 2); GXBegin(GX_QUADS, GX_VTXFMT0, 48); - for(i=0; i<12; i++) { + for (i = 0; i < 12; i++) { s16 index; - if(i == 4) { + if (i == 4) { index = 12; - } else if(i == 9) { + } + else if (i == 9) { index = 13; - } else { + } + else { index = i; } - GXPosition1x16(index+0); - GXColor1x16(index+0); - GXTexCoord1x16(index+0); - GXTexCoord1x16(index+0); - GXPosition1x16(index+5); - GXColor1x16(index+5); - GXTexCoord1x16(index+5); - GXTexCoord1x16(index+5); - GXPosition1x16(index+6); - GXColor1x16(index+6); - GXTexCoord1x16(index+6); - GXTexCoord1x16(index+6); - GXPosition1x16(index+1); - GXColor1x16(index+1); - GXTexCoord1x16(index+1); - GXTexCoord1x16(index+1); + GXPosition1x16(index + 0); + GXColor1x16(index + 0); + GXTexCoord1x16(index + 0); + GXTexCoord1x16(index + 0); + GXPosition1x16(index + 5); + GXColor1x16(index + 5); + GXTexCoord1x16(index + 5); + GXTexCoord1x16(index + 5); + GXPosition1x16(index + 6); + GXColor1x16(index + 6); + GXTexCoord1x16(index + 6); + GXTexCoord1x16(index + 6); + GXPosition1x16(index + 1); + GXColor1x16(index + 1); + GXTexCoord1x16(index + 1); + GXTexCoord1x16(index + 1); } GXEnd(); GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, 8); @@ -853,18 +743,18 @@ void fn_1_54D0(ModelData *model, Mtx matrix) HuSprTexLoad(work->unkA1C[1], 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); GXSetNumTexGens(2); MTXRotDeg(final, 'X', 90.0f); - x = 0.004f*scale; + x = 0.004f * scale; MTXScale(temp, x, -0.004f, 0.004f); MTXConcat(final, temp, final); - MTXTrans(temp, (work->unkA48%1024)/(512.0f*x), 0, 1.2499999f*(work->unkA48%400)); + MTXTrans(temp, (work->unkA48 % 1024) / (512.0f * x), 0, 1.2499999f * (work->unkA48 % 400)); MTXConcat(final, temp, final); GXLoadTexMtxImm(final, GX_TEXMTX0, GX_MTX2x4); GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, GX_TEXMTX0); MTXRotDeg(final, 'X', 90.0f); - x = 0.004f*scale; + x = 0.004f * scale; MTXScale(temp, x, -0.004f, 0.004f); MTXConcat(final, temp, final); - MTXTrans(temp, (work->unkA48%300)/(150.0f*x), 0, 0); + MTXTrans(temp, (work->unkA48 % 300) / (150.0f * x), 0, 0); MTXConcat(final, temp, final); GXLoadTexMtxImm(final, GX_TEXMTX1, GX_MTX2x4); GXSetTexCoordGen(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, GX_TEXMTX1); @@ -928,8 +818,8 @@ void fn_1_5BB8(Work2FACUnk4 *arg0, s32 arg1) void fn_1_5C74(Work2FACUnk4 *fbWork, float x1, float y1, float scale) { - float x2 = x1+(fbWork->unk14*scale); - float y2 = y1+(fbWork->unk18*scale); + float x2 = x1 + (fbWork->unk14 * scale); + float y2 = y1 + (fbWork->unk18 * scale); Mtx44 proj; Mtx modelview; GXTexObj texObj; @@ -973,9 +863,10 @@ void fn_1_60C4(s16 arg0, Work2FACUnk4 *arg1, GXTexWrapMode arg2, s32 arg3, BOOL { GXTexObj texObj; GXInitTexObj(&texObj, arg1->unk0, arg1->unk14, arg1->unk18, GX_TF_RGB565, arg2, arg2, FALSE); - if(arg4) { + if (arg4) { GXInitTexObjLOD(&texObj, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); - } else { + } + else { GXInitTexObjLOD(&texObj, GX_NEAR, GX_NEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); } GXLoadTexObj(&texObj, arg0); @@ -987,47 +878,51 @@ s32 fn_1_61C8(Vec *arg0, float arg1, float arg2, s32 arg3) Work2FAC *work2; Work2FACUnk74 *workUnk74; s32 i; - if(!lbl_1_bss_B4) { + if (!lbl_1_bss_B4) { return -1; } work = lbl_1_bss_B4->data; work2 = work; workUnk74 = &work->unk74[0]; - for(i=0; i<64; i++, workUnk74++) { - if(workUnk74->unk1E == 0) { + for (i = 0; i < 64; i++, workUnk74++) { + if (workUnk74->unk1E == 0) { break; } } - if(i >= 64) { + if (i >= 64) { return -1; } workUnk74->unk0 = *arg0; - if(arg1 < 0.0f) { + if (arg1 < 0.0f) { workUnk74->unkC.x = 1; - } else { + } + else { workUnk74->unkC.x = arg1; } - if(arg2 < 0.0f) { + if (arg2 < 0.0f) { workUnk74->unkC.z = 1; - } else { + } + else { workUnk74->unkC.z = arg2; } - if(arg3 < 0) { - workUnk74->unk1C = 60; - } else { + if (arg3 < 0) { + workUnk74->unk1C = REFRESH_RATE; + } + else { workUnk74->unk1C = arg3; } - workUnk74->unkC.y = (s32)frand()%360; + workUnk74->unkC.y = (s32)frand() % 360; workUnk74->unk1E = workUnk74->unk1C; - workUnk74->unk18 = 1.0f/workUnk74->unk1C; + workUnk74->unk18 = 1.0f / workUnk74->unk1C; return i; } float fn_1_63AC(void) { - if(!lbl_1_bss_B4) { + if (!lbl_1_bss_B4) { return 0; - } else { + } + else { Work2FAC *work = lbl_1_bss_B4->data; return work->unkA44; } @@ -1035,9 +930,10 @@ float fn_1_63AC(void) float fn_1_63F8(void) { - if(!lbl_1_bss_B4) { + if (!lbl_1_bss_B4) { return 0; - } else { + } + else { Work2FAC *work = lbl_1_bss_B4->data; return work->unkA40; } @@ -1061,10 +957,10 @@ void fn_1_6444(omObjData *object) Work6914 *work; s32 i; AnimData *anim; - work = object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Work6914)*8, MEMORY_DEFAULT_NUM); - memset(work, 0, sizeof(Work6914)*8); + work = object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Work6914) * 8, MEMORY_DEFAULT_NUM); + memset(work, 0, sizeof(Work6914) * 8); anim = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M456, 26), MEMORY_DEFAULT_NUM)); - for(i=0; i<8; i++, work++) { + for (i = 0; i < 8; i++, work++) { work->unk10 = anim; work->unk0 = i; work->unk4 = Hu3DParticleCreate(work->unk10, 32); @@ -1085,21 +981,22 @@ void fn_1_659C(omObjData *object) { Work6914 *work = object->data; s32 i; - for(i=0; i<8; i++, work++) { - if(work->unk8 == 0) { + for (i = 0; i < 8; i++, work++) { + if (work->unk8 == 0) { continue; } - if(work->unkC > 1) { + if (work->unkC > 1) { ModelData *modelP = &Hu3DData[work->unk4]; ParticleData *particleP = modelP->unk_120; HsfanimStruct01 *data = particleP->unk_48; s32 j; - for(j=0; junk_30; j++, data++) { - if(++data->unk00_s16 > data->unk02) { - s32 alpha = data->unk40.a-1; - if(alpha < 0) { + for (j = 0; j < particleP->unk_30; j++, data++) { + if (++data->unk00_s16 > data->unk02) { + s32 alpha = data->unk40.a - 1; + if (alpha < 0) { data->unk2C = 0; - } else { + } + else { data->unk40.a = alpha; } } @@ -1110,10 +1007,11 @@ void fn_1_659C(omObjData *object) data->unk08.y -= 0.3103333379576603; } } - if(++work->unkC > 90.0f) { + if (++work->unkC > (1.5f * REFRESH_RATE)) { Hu3DModelAttrSet(work->unk4, HU3D_ATTR_DISPOFF); work->unk8 = 0; - } else { + } + else { Hu3DModelPosSet(work->unk4, work->unk14.x, work->unk14.y, work->unk14.z); Hu3DModelRotSet(work->unk4, work->unk20.x, work->unk20.y, work->unk20.z); Hu3DModelScaleSet(work->unk4, work->unk2C.x, work->unk2C.y, work->unk2C.z); @@ -1136,13 +1034,13 @@ s32 fn_1_67E0(Vec *arg0, float arg1) ModelData *temp_r27; ParticleData *temp_r28; HsfanimStruct01 *temp_r30; - - for(i=0; i<8; i++, work++) { - if(work->unk8 == 0) { + + for (i = 0; i < 8; i++, work++) { + if (work->unk8 == 0) { break; } } - if(i >= 8) { + if (i >= 8) { return -1; } Hu3DModelAttrReset(work->unk4, HU3D_ATTR_DISPOFF); @@ -1152,29 +1050,29 @@ s32 fn_1_67E0(Vec *arg0, float arg1) temp_r28 = temp_r27->unk_120; temp_r28->unk_2C = 1; temp_r30 = temp_r28->unk_48; - for(i=0; iunk_30; i++, temp_r30++) { - float temp_f30 = ((s32)frand()%20)+90; - float temp_f29 = (s32)frand()%360; + for (i = 0; i < temp_r28->unk_30; i++, temp_r30++) { + float temp_f30 = ((s32)frand() % 20) + 90; + float temp_f29 = (s32)frand() % 360; float temp_f26 = sind(temp_f30); float temp_f28 = cosd(temp_f30); - float temp_f25 = 0.75f+0.15f*(0.007874016f*((s32)frand() & 0x7F)); + float temp_f25 = 0.75f + 0.15f * (0.007874016f * ((s32)frand() & 0x7F)); float temp_f31 = 0.15f; - temp_r30->unk08.x = temp_f31*(0.65f*(50.0*(temp_f28*sind(temp_f29)))); - temp_r30->unk08.z = temp_f31*(0.65f*(50.0*(temp_f28*cosd(temp_f29)))); - temp_r30->unk08.y = temp_f31*(50*temp_f26*temp_f25); + temp_r30->unk08.x = temp_f31 * (0.65f * (50.0 * (temp_f28 * sind(temp_f29)))); + temp_r30->unk08.z = temp_f31 * (0.65f * (50.0 * (temp_f28 * cosd(temp_f29)))); + temp_r30->unk08.y = temp_f31 * (50 * temp_f26 * temp_f25); temp_r30->unk00_s16 = 0; - temp_r30->unk02 = ((s32)frand()%16)+45; - temp_r30->unk30 = (s32)frand()%360; - temp_r30->unk2C = 145; - temp_r30->unk34.x = 0.05f*(((s32)frand() & 0x7F)-64); - temp_r30->unk34.y = 0.65f*(((s32)frand() & 0x7F)-64); - temp_r30->unk34.z = 0.05f*(((s32)frand() & 0x7F)-64); - temp_r30->unk40.r = ((s32)frand()%64)+192; - temp_r30->unk40.g = ((s32)frand()%64)+192; - temp_r30->unk40.b = ((s32)frand()%64)+192; + temp_r30->unk02 = ((s32)frand() % 16) + 45; + temp_r30->unk30 = (s32)frand() % 360; + temp_r30->unk2C = 145.0f; + temp_r30->unk34.x = 0.05f * (((s32)frand() & 0x7F) - 64); + temp_r30->unk34.y = 0.65f * (((s32)frand() & 0x7F) - 64); + temp_r30->unk34.z = 0.05f * (((s32)frand() & 0x7F) - 64); + temp_r30->unk40.r = ((s32)frand() % 64) + 192; + temp_r30->unk40.g = ((s32)frand() % 64) + 192; + temp_r30->unk40.b = ((s32)frand() % 64) + 192; temp_r30->unk40.a = 64; } - if(arg1 < 0.0f) { + if (arg1 < 0.0f) { arg1 = 1.0f; } work->unk14 = *arg0; @@ -1191,16 +1089,16 @@ void fn_1_6E98(omObjData *object); void fn_1_6DB0(omObjData *object) { s32 i; - for(i=0; imdlcnt; i++) { - if(i == 0) { + for (i = 0; i < object->mdlcnt; i++) { + if (i == 0) { object->model[i] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 9)); - } else { + } + else { object->model[i] = Hu3DModelLink(object->model[0]); } Hu3DModelCameraSet(object->model[i], HU3D_CAM0); Hu3DModelLayerSet(object->model[i], 6); Hu3DModelAttrSet(object->model[i], HU3D_ATTR_DISPOFF); - } object->stat |= 0x100; object->func = fn_1_6E98; @@ -1209,31 +1107,28 @@ void fn_1_6DB0(omObjData *object) void fn_1_6E98(omObjData *object) { s32 i; - for(i=0; imdlcnt; i++) { + for (i = 0; i < object->mdlcnt; i++) { ModelData *modelP = &Hu3DData[object->model[i]]; - if(!(modelP->attr & HU3D_ATTR_DISPOFF)) { - if(Hu3DMotionTimeGet(object->model[i]) >= Hu3DMotionMaxTimeGet(object->model[i])) { - Hu3DModelAttrSet(object->model[i], HU3D_ATTR_DISPOFF); - } + if (!(modelP->attr & HU3D_ATTR_DISPOFF)) { + if (Hu3DMotionTimeGet(object->model[i]) >= Hu3DMotionMaxTimeGet(object->model[i])) { + Hu3DModelAttrSet(object->model[i], HU3D_ATTR_DISPOFF); + } } } } -void fn_1_6F60(omObjData *object) -{ - -} +void fn_1_6F60(omObjData *object) { } s32 fn_1_6F64(Vec *pos, float scale) { s32 i; - for(i=0; imdlcnt; i++) { + for (i = 0; i < lbl_1_bss_AC->mdlcnt; i++) { ModelData *modelP = &Hu3DData[lbl_1_bss_AC->model[i]]; - if(modelP->attr & HU3D_ATTR_DISPOFF) { + if (modelP->attr & HU3D_ATTR_DISPOFF) { break; } } - if(i >= lbl_1_bss_AC->mdlcnt) { + if (i >= lbl_1_bss_AC->mdlcnt) { return -1; } Hu3DMotionTimeSet(lbl_1_bss_AC->model[i], 0); @@ -1253,7 +1148,7 @@ void fn_1_70F0(omObjData *object) s32 i; ModelData *modelP; AnimData *anim = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M456, 26), MEMORY_DEFAULT_NUM)); - + object->data = anim; object->model[0] = Hu3DParticleCreate(anim, 64); Hu3DModelCameraSet(object->model[0], HU3D_CAM0); @@ -1263,7 +1158,7 @@ void fn_1_70F0(omObjData *object) temp_r30 = modelP->unk_120; temp_r29 = temp_r30->unk_48; temp_r30->unk_2C = 1; - for(i=0; iunk_30; i++, temp_r29++) { + for (i = 0; i < temp_r30->unk_30; i++, temp_r29++) { temp_r29->unk2C = 0; } object->func = fn_1_71E0; @@ -1275,20 +1170,19 @@ void fn_1_71E0(omObjData *object) ParticleData *temp_r29 = modelP->unk_120; HsfanimStruct01 *temp_r30 = temp_r29->unk_48; s32 i; - for(i=0; iunk_30; i++, temp_r30++) { - if(temp_r30->unk2C <= 0.0f) { + for (i = 0; i < temp_r29->unk_30; i++, temp_r30++) { + if (temp_r30->unk2C <= 0.0f) { continue; } - if(++temp_r30->unk00_s16 > 360) { + if (++temp_r30->unk00_s16 > 360) { temp_r30->unk00_s16 -= 360; } - temp_r30->unk34.x += temp_r30->unk08.x*sind(2.0f*temp_r30->unk00_s16); + temp_r30->unk34.x += temp_r30->unk08.x * sind(2.0f * temp_r30->unk00_s16); temp_r30->unk34.y += temp_r30->unk08.y; - if(temp_r30->unk34.y >= 0.0f) { - fn_1_61C8(&temp_r30->unk34, 0.00625f*temp_r30->unk2C, 1, 15); + if (temp_r30->unk34.y >= 0.0f) { + fn_1_61C8(&temp_r30->unk34, 0.00625f * temp_r30->unk2C, 1, REFRESH_RATE / 4); temp_r30->unk2C = 0; } - } } @@ -1306,27 +1200,32 @@ s32 fn_1_74F8(Vec *pos, float scale) ModelData *modelP = &Hu3DData[lbl_1_bss_A8->model[0]]; ParticleData *temp_r30 = modelP->unk_120; HsfanimStruct01 *temp_r31 = temp_r30->unk_48; - for(i=0; iunk_30; i++, temp_r31++) { - if(temp_r31->unk2C <= 0.0f) { + for (i = 0; i < temp_r30->unk_30; i++, temp_r31++) { + if (temp_r31->unk2C <= 0.0f) { break; } } - if(i >= temp_r30->unk_30) { + if (i >= temp_r30->unk_30) { return -1; } - if(scale <= 0.0f) { + if (scale <= 0.0f) { scale = 1.0f; } temp_r31->unk34 = *pos; - temp_r31->unk08.x = (1.5f+(0.2f*(0.007874016f*((s32)frand() & 0x7F))))*0.5f; - temp_r31->unk08.z = (1.5f+(0.2f*(0.007874016f*((s32)frand() & 0x7F)))); - temp_r31->unk08.y = (1.5f+(0.2f*(0.007874016f*((s32)frand() & 0x7F))))*2.0f; - temp_r31->unk00_s16 = (s32)frand()%360; - temp_r31->unk2C = 20*scale; +#if VERSION_PAL + temp_r31->unk08.x = (1.2f * (1.5f + (0.2f * (0.007874016f * (frand() & 0x7F))))) * 0.5f; + temp_r31->unk08.z = (1.5f + (0.2f * (0.007874016f * (frand() & 0x7F)))) * 1.2f; + temp_r31->unk08.y = (1.2f * (1.5f + (0.2f * (0.007874016f * (frand() & 0x7F))))) * 2.0f; +#else + temp_r31->unk08.x = (1.5f + (0.2f * (0.007874016f * ((s32)frand() & 0x7F)))) * 0.5f; + temp_r31->unk08.z = (1.5f + (0.2f * (0.007874016f * ((s32)frand() & 0x7F)))); + temp_r31->unk08.y = (1.5f + (0.2f * (0.007874016f * ((s32)frand() & 0x7F)))) * 2.0f; +#endif + temp_r31->unk00_s16 = (s32)frand() % 360; + temp_r31->unk2C = 20 * scale; return i; } - typedef struct work7C48 { s32 unk0; s32 unk4; @@ -1341,24 +1240,25 @@ void fn_1_7B50(omObjData *object); void fn_1_7778(omObjData *object) { - Work7C48 *workBase = object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Work7C48)*8, MEMORY_DEFAULT_NUM); + Work7C48 *workBase = object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Work7C48) * 8, MEMORY_DEFAULT_NUM); Work7C48 *workP = workBase; s32 i; - memset(workP, 0, 8*sizeof(Work7C48)); - for(i=0; i<8; i++, workP++) { - switch(i) { + memset(workP, 0, 8 * sizeof(Work7C48)); + for (i = 0; i < 8; i++, workP++) { + switch (i) { case 0: workP->unk0 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 3)); break; - + case 1: workP->unk0 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 4)); break; - + default: - if(i & 0x1) { + if (i & 0x1) { workP->unk0 = Hu3DModelLink(workBase[0].unk0); - } else { + } + else { workP->unk0 = Hu3DModelLink(workBase[1].unk0); } break; @@ -1369,11 +1269,11 @@ void fn_1_7778(omObjData *object) workP->unk8 = 0; workP->unkC = 2; workP->unk10 = (s32)frand() % 360; - workP->unk14.x = 1500*((0.007874016f*((s32)frand() & 0x7F))-0.5f); - workP->unk14.z = 500*((0.007874016f*((s32)frand() & 0x7F))-0.5f); - workP->unk14.y = -250+(100*(0.3f*i)); - workP->unk20.x = 1500*((0.007874016f*((s32)frand() & 0x7F))-0.5f); - workP->unk20.z = 500*((0.007874016f*((s32)frand() & 0x7F))-0.5f); + workP->unk14.x = 1500 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); + workP->unk14.z = 500 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); + workP->unk14.y = -250 + (100 * (0.3f * i)); + workP->unk20.x = 1500 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); + workP->unk20.z = 500 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); workP->unk20.y = workP->unk14.y; Hu3DModelPosSet(workP->unk0, workP->unk14.x, workP->unk14.y, workP->unk14.z); Hu3DModelRotSet(workP->unk0, 0, workP->unk10, 0); @@ -1387,60 +1287,67 @@ void fn_1_7B50(omObjData *object) { Work7C48 *workP = object->data; s32 i; - for(i=0; i<8; i++, workP++) { + for (i = 0; i < 8; i++, workP++) { float dx; float dz; float vel; float angle; - if(workP->unk4 == 0) { - vel = 1+(0.5*sind((workP->unk8*5)%180)); - } else { + if (workP->unk4 == 0) { + vel = 1 + (0.5 * sind((workP->unk8 * 5) % 180)); + } + else { vel = 3; } - workP->unk14.x += vel*(workP->unkC*sind(workP->unk10)); - workP->unk14.z += vel*(workP->unkC*cosd(workP->unk10)); - dx = workP->unk20.x-workP->unk14.x; - dz = workP->unk20.z-workP->unk14.z; + // TODO replace with 60.0 / REFRESH_RATE +#if VERSION_PAL + workP->unk14.x += (1.2000000476837158 * (vel * (workP->unkC * sind(workP->unk10)))); + workP->unk14.z += (1.2000000476837158 * (vel * (workP->unkC * cosd(workP->unk10)))); +#else + workP->unk14.x += vel * (workP->unkC * sind(workP->unk10)); + workP->unk14.z += vel * (workP->unkC * cosd(workP->unk10)); +#endif + dx = workP->unk20.x - workP->unk14.x; + dz = workP->unk20.z - workP->unk14.z; angle = atan2d(dx, dz); workP->unk10 = fn_1_9A18(angle, workP->unk10, 3.5f); - if((dx*dx)+(dz*dz) < 10000.0f) { - if(workP->unk4 == 0) { - workP->unk20.x = 2000*((0.007874016f*((s32)frand() & 0x7F))-0.5f); - workP->unk20.z = 700*((0.007874016f*((s32)frand() & 0x7F))-0.5f); + if ((dx * dx) + (dz * dz) < 10000.0f) { + if (workP->unk4 == 0) { + workP->unk20.x = 2000 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); + workP->unk20.z = 700 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); workP->unk20.y = workP->unk14.y; - } else { - if(workP->unk14.x < 0.0f) { + } + else { + if (workP->unk14.x < 0.0f) { workP->unk20.x = -2500; - } else { + } + else { workP->unk20.x = 2500; } - workP->unk20.z = 500*((0.007874016f*((s32)frand() & 0x7F))-0.5f); + workP->unk20.z = 500 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); workP->unk20.y = workP->unk14.y; } } Hu3DModelPosSet(workP->unk0, workP->unk14.x, workP->unk14.y, workP->unk14.z); Hu3DModelRotSet(workP->unk0, 0, workP->unk10, 0); - workP->unk8 += frand()&0x3; + workP->unk8 += frand() & 0x3; } } -void fn_1_7F74(omObjData *object) -{ - -} +void fn_1_7F74(omObjData *object) { } void fn_1_7F78(void) { Work7C48 *workP = lbl_1_bss_A4->data; s32 i; - for(i=0; i<8; i++, workP++) { + for (i = 0; i < 8; i++, workP++) { workP->unk4 = 1; - if(workP->unk14.x < 0.0f) { + if (workP->unk14.x < 0.0f) { workP->unk20.x = -2500; - } else { + } + else { workP->unk20.x = 2500; } - workP->unk20.z = 500*((0.007874016f*((s32)frand() & 0x7F))-0.5f); + workP->unk20.z = 500 * ((0.007874016f * ((s32)frand() & 0x7F)) - 0.5f); workP->unk20.y = workP->unk14.y; } } @@ -1466,10 +1373,10 @@ void fn_1_8078(omObjData *object, Work891C *workP) s32 num = workP[0].unk6; float ofsZ = -2000; s32 i; - for(i=0; iunk0, workP->unk8.x, workP->unk8.y, workP->unk8.z+ofsZ); + Hu3DModelPosSet(workP->unk0, workP->unk8.x, workP->unk8.y, workP->unk8.z + ofsZ); modelMtx = &Hu3DData[workP->unk0].unk_F0; MTXRotDeg(*modelMtx, 'Y', workP->unk28); MTXRotDeg(rotZ, 'Z', workP->unk38); @@ -1485,20 +1392,19 @@ void fn_1_817C(omObjData *object) Work891C *workP = object->data; s32 num = workP[0].unk6; s32 i; - for(i=0; iunk14, &workP->unk8, &diff); workP->unk2C = atan2d(diff.x, diff.z); - workP->unk28 = fn_1_8890(workP->unk28, workP->unk2C+workP->unk3C, 0.08f); - workP->unk24 += 0.05f*(600.0f-workP->unk24); - workP->unk20 += 0.2f*(workP->unk24-workP->unk20); - workP->unk8.x += (workP->unk20*0.016666668f)*sind(workP->unk28); - workP->unk8.z += (workP->unk20*0.016666668f)*cosd(workP->unk28); - workP->unk30 += workP->unk20*0.016666668f; + workP->unk28 = fn_1_8890(workP->unk28, workP->unk2C + workP->unk3C, 0.08f); + workP->unk24 += 0.05f * (600.0f - workP->unk24); + workP->unk20 += 0.2f * (workP->unk24 - workP->unk20); + workP->unk8.x += (workP->unk20 * (1.0f / REFRESH_RATE)) * sind(workP->unk28); + workP->unk8.z += (workP->unk20 * (1.0f / REFRESH_RATE)) * cosd(workP->unk28); + workP->unk30 += workP->unk20 * (1.0f / REFRESH_RATE); } fn_1_8078(object, object->data); - } void fn_1_841C(omObjData *object) @@ -1511,31 +1417,31 @@ void fn_1_841C(omObjData *object) float angle; float ofsZ; s32 i; - object->data = workBase = HuMemDirectMallocNum(HEAP_SYSTEM, num*sizeof(Work891C), MEMORY_DEFAULT_NUM); - memset(workBase, 0, num*sizeof(Work891C)); + object->data = workBase = HuMemDirectMallocNum(HEAP_SYSTEM, num * sizeof(Work891C), MEMORY_DEFAULT_NUM); + memset(workBase, 0, num * sizeof(Work891C)); modelId = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M456, 8)); ofsZ = 1500; work = workBase; - for(i=0; iunk0 = Hu3DModelLink(modelId); Hu3DModelLayerSet(work->unk0, 6); Hu3DModelCameraSet(work->unk0, 1); Hu3DModelScaleSet(work->unk0, 7, 7, 7); - work->unk14.x = ((s32)frandmod(1000)*4.0f)-2000; - work->unk14.z = ((s32)frandmod(1000))-500.0f; - work->unk14.y = ((s32)frandmod(1000)*0.8f)+300; + work->unk14.x = ((s32)frandmod(1000) * 4.0f) - 2000; + work->unk14.z = ((s32)frandmod(1000)) - 500.0f; + work->unk14.y = ((s32)frandmod(1000) * 0.8f) + 300; angle = (s32)frandmod(360); - radius = ((s32)frandmod(250))+200.0f; - work->unk8.x = radius*sind(angle); + radius = ((s32)frandmod(250)) + 200.0f; + work->unk8.x = radius * sind(angle); work->unk8.y = 0; - work->unk8.z = radius*cosd(angle); + work->unk8.z = radius * cosd(angle); VECAdd(&work->unk14, &work->unk8, &work->unk8); - work->unk38 = 60-((6.0f/55.0f)*radius); + work->unk38 = 60 - ((6.0f / 55.0f) * radius); work->unk28 = (s32)frandmod(360); - work->unk3C = ((s32)frandmod(1000) < 500) ? (-70.0f+((s32)frandmod(50)*0.1f)) : (70.0f-((s32)frandmod(50)*0.1f)); - if(work->unk3C < 0.0f) { + work->unk3C = ((s32)frandmod(1000) < 500) ? (-70.0f + ((s32)frandmod(50) * 0.1f)) : (70.0f - ((s32)frandmod(50) * 0.1f)); + if (work->unk3C < 0.0f) { work->unk38 = -work->unk38; } work->unk30 = 1; @@ -1549,15 +1455,15 @@ void fn_1_841C(omObjData *object) float fn_1_8890(float start, float end, float weight) { - float angle = fmodf(end-start, 360); - if(angle < 0.0f) { + float angle = fmodf(end - start, 360); + if (angle < 0.0f) { angle += 360.0f; } - if(angle > 180.0f) { + if (angle > 180.0f) { angle -= 360.0f; } - angle = fmodf(start+(weight*angle), 360); - if(angle < 0.0f) { + angle = fmodf(start + (weight * angle), 360); + if (angle < 0.0f) { angle += 360.0f; } return angle; @@ -1585,8 +1491,8 @@ void fn_1_89AC(void) particle = modelP->unk_120; particle->unk_2C = 1; particle->unk_54 = fn_1_8CB8; - newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16)*4, modelP->unk_48); - memset(newWork, 0, 4*sizeof(s16)); + newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16) * 4, modelP->unk_48); + memset(newWork, 0, 4 * sizeof(s16)); newWork[1] = 0; workP->unk10[1] = modelId = Hu3DParticleCreate(workP->unk0[3], 10); Hu3DModelLayerSet(modelId, 6); @@ -1594,8 +1500,8 @@ void fn_1_89AC(void) particle = modelP->unk_120; particle->unk_2C = 1; particle->unk_54 = fn_1_8CB8; - newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16)*4, modelP->unk_48); - memset(newWork, 0, 4*sizeof(s16)); + newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16) * 4, modelP->unk_48); + memset(newWork, 0, 4 * sizeof(s16)); newWork[1] = 1; workP->unk10[2] = modelId = Hu3DParticleCreate(workP->unk0[2], 4); Hu3DModelLayerSet(modelId, 6); @@ -1603,8 +1509,8 @@ void fn_1_89AC(void) particle = modelP->unk_120; particle->unk_2C = 1; particle->unk_54 = fn_1_8CB8; - newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16)*4, modelP->unk_48); - memset(newWork, 0, 4*sizeof(s16)); + newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16) * 4, modelP->unk_48); + memset(newWork, 0, 4 * sizeof(s16)); newWork[1] = 2; workP->unk10[3] = modelId = Hu3DParticleCreate(workP->unk0[1], 6); Hu3DModelLayerSet(modelId, 6); @@ -1612,8 +1518,8 @@ void fn_1_89AC(void) particle = modelP->unk_120; particle->unk_2C = 1; particle->unk_54 = fn_1_8CB8; - newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16)*4, modelP->unk_48); - memset(newWork, 0, 4*sizeof(s16)); + newWork = particle->unk_1C = HuMemDirectMallocNum(HEAP_DATA, sizeof(s16) * 4, modelP->unk_48); + memset(newWork, 0, 4 * sizeof(s16)); newWork[1] = 3; } @@ -1626,19 +1532,9 @@ void fn_1_8C68(void) HuSprAnimKill(workP->unk0[3]); } -float lbl_1_data_7B0[4] = { - 1000, - 200, - 600, - 1200 -}; +float lbl_1_data_7B0[4] = { 1000, 200, 600, 1200 }; -float lbl_1_data_7C0[4] = { - 1, - 0.6, - 0.3, - 0.425 -}; +float lbl_1_data_7C0[4] = { 1, 0.6, 0.3, 0.425 }; void fn_1_8CB8(ModelData *model, ParticleData *particle, Mtx matrix) { @@ -1659,34 +1555,37 @@ void fn_1_8CB8(ModelData *model, ParticleData *particle, Mtx matrix) float temp_f29; float temp_f23; s32 i; - switch(newWorkP[2]) { + switch (newWorkP[2]) { case 0: temp_r31 = particle->unk_48; - if(newWorkP[1]) { + if (newWorkP[1]) { sp18.x = 2000; sp18.y = -300; sp18.z = 500; - temp_f29 = 1/VECMagPoint(sp18.x, sp18.y, sp18.z); + temp_f29 = 1 / VECMagPoint(sp18.x, sp18.y, sp18.z); sp18.x *= temp_f29; sp18.y *= temp_f29; sp18.z *= temp_f29; - temp_f23 = 3200.0f/particle->unk_30; - for(i=0; iunk_30; i++, temp_r31++) { - temp_f26 = 500.0+((temp_f23*i)+((0.25f*temp_f23)*((float)((s32)frand() & 0xFFFF)*0.0000152587890625))); - temp_f25 = temp_f26/3200; + temp_f23 = 3200.0f / particle->unk_30; + for (i = 0; i < particle->unk_30; i++, temp_r31++) { + temp_f26 = 500.0 + ((temp_f23 * i) + ((0.25f * temp_f23) * ((float)((s32)frand() & 0xFFFF) * 0.0000152587890625))); + temp_f25 = temp_f26 / 3200; temp_r31->unk14.x = temp_f26; - temp_r31->unk34.x = 1000+(temp_f26*sp18.x); - temp_r31->unk34.y = 4800+(temp_f26*sp18.y); - temp_r31->unk34.z = -3500+(temp_f26*sp18.z); - temp_r31->unk2C = ((0.7f*(temp_f25*temp_f25))+0.3f)*(lbl_1_data_7B0[newWorkP[1]]*(0.7f+(0.3f*((float)((s32)frand() & 0xFFFF)*0.0000152587890625)))); - temp_r31->unk40.r = (s32)(((float)((s32)frand() & 0xFFFF)*0.0000152587890625)*160.0)+32; - temp_r31->unk40.g = (s32)(((float)((s32)frand() & 0xFFFF)*0.0000152587890625)*96.0)+32; - temp_r31->unk40.b = (s32)(((float)((s32)frand() & 0xFFFF)*0.0000152587890625)*128.0)+32; - temp_r31->unk40.a = (255*lbl_1_data_7C0[newWorkP[1]]*(1.0-(0.4*temp_f25)))-(s32)(((float)((s32)frand() & 0xFFFF)*0.0000152587890625)*16.0); + temp_r31->unk34.x = 1000 + (temp_f26 * sp18.x); + temp_r31->unk34.y = 4800 + (temp_f26 * sp18.y); + temp_r31->unk34.z = -3500 + (temp_f26 * sp18.z); + temp_r31->unk2C = ((0.7f * (temp_f25 * temp_f25)) + 0.3f) + * (lbl_1_data_7B0[newWorkP[1]] * (0.7f + (0.3f * ((float)((s32)frand() & 0xFFFF) * 0.0000152587890625)))); + temp_r31->unk40.r = (s32)(((float)((s32)frand() & 0xFFFF) * 0.0000152587890625) * 160.0) + 32; + temp_r31->unk40.g = (s32)(((float)((s32)frand() & 0xFFFF) * 0.0000152587890625) * 96.0) + 32; + temp_r31->unk40.b = (s32)(((float)((s32)frand() & 0xFFFF) * 0.0000152587890625) * 128.0) + 32; + temp_r31->unk40.a = (255 * lbl_1_data_7C0[newWorkP[1]] * (1.0 - (0.4 * temp_f25))) + - (s32)(((float)((s32)frand() & 0xFFFF) * 0.0000152587890625) * 16.0); temp_r31->unk14.z = temp_r31->unk40.a; } newWorkP[2]++; - } else { + } + else { temp_r31->unk34.x = 1000; temp_r31->unk34.y = 4800; temp_r31->unk34.z = -3500; @@ -1695,46 +1594,46 @@ void fn_1_8CB8(ModelData *model, ParticleData *particle, Mtx matrix) break; case 1: - sp3C.x = sind(rot.y)*cosd(rot.x); + sp3C.x = sind(rot.y) * cosd(rot.x); sp3C.y = -sind(rot.x); - sp3C.z = cosd(rot.y)*cosd(rot.x); - sp30.x = 1000-(pos.x+(1.25f*(sp3C.x*zoom))); - sp30.y = 4800-(pos.y+(sp3C.y*zoom)); - sp30.z = -3500-(pos.z+(1.25f*(sp3C.z*zoom))); - temp_f29 = 1/VECMagPoint(sp30.x, sp30.y, sp30.z); + sp3C.z = cosd(rot.y) * cosd(rot.x); + sp30.x = 1000 - (pos.x + (1.25f * (sp3C.x * zoom))); + sp30.y = 4800 - (pos.y + (sp3C.y * zoom)); + sp30.z = -3500 - (pos.z + (1.25f * (sp3C.z * zoom))); + temp_f29 = 1 / VECMagPoint(sp30.x, sp30.y, sp30.z); sp30.x *= temp_f29; sp30.y *= temp_f29; sp30.z *= temp_f29; - temp_f29 = -((-sp30.x*-sp3C.x)+(-sp30.y*-sp3C.y)+(-sp30.z*-sp3C.z)); - sp24.x = -sp3C.x+((-2.0f*sp30.x)*temp_f29); - sp24.y = -sp3C.y+((-2.0f*sp30.y)*temp_f29); - sp24.z = -sp3C.z+((-2.0f*sp30.z)*temp_f29); + temp_f29 = -((-sp30.x * -sp3C.x) + (-sp30.y * -sp3C.y) + (-sp30.z * -sp3C.z)); + sp24.x = -sp3C.x + ((-2.0f * sp30.x) * temp_f29); + sp24.y = -sp3C.y + ((-2.0f * sp30.y) * temp_f29); + sp24.z = -sp3C.z + ((-2.0f * sp30.z) * temp_f29); temp_r31 = particle->unk_48; - for(i=0; iunk_30; i++, temp_r31++) { - temp_r31->unk34.x = 1000+(sp24.x*temp_r31->unk14.x); - temp_r31->unk34.y = 4800+(sp24.y*temp_r31->unk14.x); - temp_r31->unk34.z = -3500+(sp24.z*temp_r31->unk14.x); - temp_r31->unk40.a = temp_r31->unk14.z*workP->unk20.y; + for (i = 0; i < particle->unk_30; i++, temp_r31++) { + temp_r31->unk34.x = 1000 + (sp24.x * temp_r31->unk14.x); + temp_r31->unk34.y = 4800 + (sp24.y * temp_r31->unk14.x); + temp_r31->unk34.z = -3500 + (sp24.z * temp_r31->unk14.x); + temp_r31->unk40.a = temp_r31->unk14.z * workP->unk20.y; } break; } - DCFlushRange(particle->unk_48, particle->unk_30*sizeof(HsfanimStruct01)); - + DCFlushRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); } void fn_1_97FC(float arg0) { StructBss90 *workP = lbl_1_bss_90; workP->unk20.y = arg0; - if(workP->unk20.y > 1.0f) { + if (workP->unk20.y > 1.0f) { workP->unk20.y = 1.0f; } - if(workP->unk20.y <= 0.0f) { + if (workP->unk20.y <= 0.0f) { Hu3DModelAttrSet(workP->unk10[0], HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(workP->unk10[1], HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(workP->unk10[2], HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(workP->unk10[3], HU3D_ATTR_DISPOFF); - } else { + } + else { Hu3DModelAttrReset(workP->unk10[0], HU3D_ATTR_DISPOFF); Hu3DModelAttrReset(workP->unk10[1], HU3D_ATTR_DISPOFF); Hu3DModelAttrReset(workP->unk10[2], HU3D_ATTR_DISPOFF); @@ -1745,20 +1644,23 @@ void fn_1_97FC(float arg0) float fn_1_9900(float start, float end) { float angleDiff; - if(start >= 360.0f) { + if (start >= 360.0f) { start -= 360.0f; - } else if(start < 0.0f) { + } + else if (start < 0.0f) { start += 360.0f; } - if(end >= 360.0f) { + if (end >= 360.0f) { end -= 360.0f; - } else if(end < 0.0f) { + } + else if (end < 0.0f) { end += 360.0f; } - angleDiff = start-end; - if(angleDiff <= -180.0f) { + angleDiff = start - end; + if (angleDiff <= -180.0f) { angleDiff += 360.0f; - } else if(angleDiff >= 180.0f) { + } + else if (angleDiff >= 180.0f) { angleDiff -= 360.0f; } return angleDiff; @@ -1768,38 +1670,44 @@ float fn_1_9A18(float start, float end, float max) { float angle; float diff; - - if(start >= 360.0) { + + if (start >= 360.0) { start -= 360.0; - } else if(start < 0.0) { + } + else if (start < 0.0) { start += 360.0; } - if(end >= 360.0) { + if (end >= 360.0) { end -= 360.0; - } else if(end < 0.0) { + } + else if (end < 0.0) { end += 360.0; } - diff = 360.0+(start-end); - if(fabs(diff) >= 360.0) { + diff = 360.0 + (start - end); + if (fabs(diff) >= 360.0) { diff = fmod(diff, 360.0); } - if(diff < 180.0) { - if(diff <= max) { + if (diff < 180.0) { + if (diff <= max) { angle = diff; - } else { + } + else { angle = max; } - } else if(360.0-diff <= max) { - angle = -(360.0-diff); - } else { + } + else if (360.0 - diff <= max) { + angle = -(360.0 - diff); + } + else { angle = -max; } angle += end; - if(angle >= 360.0) { + if (angle >= 360.0) { angle -= 360.0; - } else if(angle < 0.0) { + } + else if (angle < 0.0) { angle += 360.0; } - + return angle; -} \ No newline at end of file +} From 6527d715162a484fbd7f408e452f7c08d9cafffc Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 15 Dec 2024 21:14:10 +0100 Subject: [PATCH 065/178] Ported m444dll to JP --- config/GMPJ01_00/rels/m444dll/splits.txt | 25 +++++ config/GMPJ01_00/rels/m444dll/symbols.txt | 128 +++++++++++----------- configure.py | 8 +- src/REL/m444dll/main.c | 3 + 4 files changed, 96 insertions(+), 68 deletions(-) diff --git a/config/GMPJ01_00/rels/m444dll/splits.txt b/config/GMPJ01_00/rels/m444dll/splits.txt index 531cd645..d8c548ff 100644 --- a/config/GMPJ01_00/rels/m444dll/splits.txt +++ b/config/GMPJ01_00/rels/m444dll/splits.txt @@ -5,3 +5,28 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m444dll/main.c: + .text start:0x000000A0 end:0x00008434 + .rodata start:0x00000000 end:0x00000278 + .data start:0x00000000 end:0x00000258 + .bss start:0x00000000 end:0x00000310 + +REL/m444dll/pinball.c: + .text start:0x00008434 end:0x0000D598 + .rodata start:0x00000278 end:0x00000428 + .data start:0x00000258 end:0x00000470 + .bss start:0x00000310 end:0x00019904 + +REL/m444dll/datalist.c: + .text start:0x0000D598 end:0x0000D9D8 + .rodata start:0x00000428 end:0x00000438 + .data start:0x00000470 end:0x000016EC + .bss start:0x00019908 end:0x00019A76 + +REL/m444dll/shadow.c: + .text start:0x0000D9D8 end:0x0000DE30 + .rodata start:0x00000438 end:0x00000474 diff --git a/config/GMPJ01_00/rels/m444dll/symbols.txt b/config/GMPJ01_00/rels/m444dll/symbols.txt index 5cf095ae..88d2d388 100644 --- a/config/GMPJ01_00/rels/m444dll/symbols.txt +++ b/config/GMPJ01_00/rels/m444dll/symbols.txt @@ -1,41 +1,41 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x3E0 -fn_1_480 = .text:0x00000480; // type:function size:0x370C -fn_1_3B8C = .text:0x00003B8C; // type:function size:0x1270 -fn_1_4DFC = .text:0x00004DFC; // type:function size:0x7C4 -fn_1_55C0 = .text:0x000055C0; // type:function size:0x1C4 -fn_1_5784 = .text:0x00005784; // type:function size:0x6F4 -fn_1_5E78 = .text:0x00005E78; // type:function size:0x6F4 -fn_1_656C = .text:0x0000656C; // type:function size:0x824 -fn_1_6D90 = .text:0x00006D90; // type:function size:0xBC -fn_1_6E4C = .text:0x00006E4C; // type:function size:0xA0 -fn_1_6EEC = .text:0x00006EEC; // type:function size:0x3B4 -fn_1_72A0 = .text:0x000072A0; // type:function size:0xC2C -fn_1_7ECC = .text:0x00007ECC; // type:function size:0x2C4 -fn_1_8190 = .text:0x00008190; // type:function size:0x90 -fn_1_8220 = .text:0x00008220; // type:function size:0xEC -fn_1_830C = .text:0x0000830C; // type:function size:0x128 -fn_1_8434 = .text:0x00008434; // type:function size:0x1F8 -fn_1_862C = .text:0x0000862C; // type:function size:0x7B4 -fn_1_8DE0 = .text:0x00008DE0; // type:function size:0x648 -fn_1_9428 = .text:0x00009428; // type:function size:0x894 -fn_1_9CBC = .text:0x00009CBC; // type:function size:0x3B4 -fn_1_A070 = .text:0x0000A070; // type:function size:0xB70 -fn_1_ABE0 = .text:0x0000ABE0; // type:function size:0x618 -fn_1_B1F8 = .text:0x0000B1F8; // type:function size:0x102C -fn_1_C224 = .text:0x0000C224; // type:function size:0x528 -fn_1_C74C = .text:0x0000C74C; // type:function size:0x2F4 -fn_1_CA40 = .text:0x0000CA40; // type:function size:0x140 -fn_1_CB80 = .text:0x0000CB80; // type:function size:0x298 -fn_1_CE18 = .text:0x0000CE18; // type:function size:0x194 -fn_1_CFAC = .text:0x0000CFAC; // type:function size:0x244 -fn_1_D1F0 = .text:0x0000D1F0; // type:function size:0x3A8 -fn_1_D598 = .text:0x0000D598; // type:function size:0x290 -fn_1_D828 = .text:0x0000D828; // type:function size:0x138 -fn_1_D960 = .text:0x0000D960; // type:function size:0x78 -fn_1_D9D8 = .text:0x0000D9D8; // type:function size:0x2C -fn_1_DA04 = .text:0x0000DA04; // type:function size:0x42C +ObjectSetup = .text:0x000000A0; // type:function size:0x3E0 +fn_1_470 = .text:0x00000480; // type:function size:0x370C +fn_1_3B7C = .text:0x00003B8C; // type:function size:0x1270 +fn_1_4DEC = .text:0x00004DFC; // type:function size:0x7C4 +fn_1_55B0 = .text:0x000055C0; // type:function size:0x1C4 +fn_1_5774 = .text:0x00005784; // type:function size:0x6F4 +fn_1_5E68 = .text:0x00005E78; // type:function size:0x6F4 +fn_1_655C = .text:0x0000656C; // type:function size:0x824 +fn_1_6D80 = .text:0x00006D90; // type:function size:0xBC +fn_1_6E3C = .text:0x00006E4C; // type:function size:0xA0 +fn_1_6EDC = .text:0x00006EEC; // type:function size:0x3B4 +fn_1_7290 = .text:0x000072A0; // type:function size:0xC2C +fn_1_7EBC = .text:0x00007ECC; // type:function size:0x2C4 +fn_1_8180 = .text:0x00008190; // type:function size:0x90 +fn_1_8210 = .text:0x00008220; // type:function size:0xEC +fn_1_82FC = .text:0x0000830C; // type:function size:0x128 +fn_1_8424 = .text:0x00008434; // type:function size:0x1F8 +fn_1_861C = .text:0x0000862C; // type:function size:0x7B4 +fn_1_8DD0 = .text:0x00008DE0; // type:function size:0x648 +fn_1_9418 = .text:0x00009428; // type:function size:0x894 +fn_1_9CAC = .text:0x00009CBC; // type:function size:0x3B4 +fn_1_A060 = .text:0x0000A070; // type:function size:0xB70 +fn_1_ABD0 = .text:0x0000ABE0; // type:function size:0x618 +fn_1_B1E8 = .text:0x0000B1F8; // type:function size:0x102C +fn_1_C214 = .text:0x0000C224; // type:function size:0x528 +fn_1_C73C = .text:0x0000C74C; // type:function size:0x2F4 +fn_1_CA30 = .text:0x0000CA40; // type:function size:0x140 +fn_1_CB70 = .text:0x0000CB80; // type:function size:0x298 +fn_1_CE08 = .text:0x0000CE18; // type:function size:0x194 +fn_1_CF9C = .text:0x0000CFAC; // type:function size:0x244 +fn_1_D1E0 = .text:0x0000D1F0; // type:function size:0x3A8 +fn_1_D588 = .text:0x0000D598; // type:function size:0x290 +fn_1_D818 = .text:0x0000D828; // type:function size:0x138 +fn_1_D950 = .text:0x0000D960; // type:function size:0x78 +fn_1_D9C8 = .text:0x0000D9D8; // type:function size:0x2C +fn_1_D9F4 = .text:0x0000DA04; // type:function size:0x42C _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 @@ -233,44 +233,44 @@ lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 lbl_1_data_118 = .data:0x00000118; // type:object size:0x28 lbl_1_data_140 = .data:0x00000140; // type:object size:0x54 data:float lbl_1_data_194 = .data:0x00000194; // type:object size:0x20 -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 data:string -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0xA data:string -lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0xA data:string -lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xA data:string -lbl_1_data_1F6 = .data:0x000001F6; // type:object size:0xD data:string -lbl_1_data_203 = .data:0x00000203; // type:object size:0xD data:string -lbl_1_data_210 = .data:0x00000210; // type:object size:0xD data:string -lbl_1_data_21D = .data:0x0000021D; // type:object size:0xD data:string -lbl_1_data_22A = .data:0x0000022A; // type:object size:0xB data:string -lbl_1_data_235 = .data:0x00000235; // type:object size:0xB data:string +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x24 scope:local data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0xA scope:local data:string +lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0xA scope:local data:string +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xA scope:local data:string +lbl_1_data_1F6 = .data:0x000001F6; // type:object size:0xD scope:local data:string +lbl_1_data_203 = .data:0x00000203; // type:object size:0xD scope:local data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0xD scope:local data:string +lbl_1_data_21D = .data:0x0000021D; // type:object size:0xD scope:local data:string +lbl_1_data_22A = .data:0x0000022A; // type:object size:0xB scope:local data:string +lbl_1_data_235 = .data:0x00000235; // type:object size:0xB scope:local data:string lbl_1_data_240 = .data:0x00000240; // type:object size:0x4 -lbl_1_data_244 = .data:0x00000244; // type:object size:0xA data:string -lbl_1_data_24E = .data:0x0000024E; // type:object size:0xA +lbl_1_data_244 = .data:0x00000244; // type:object size:0xA scope:local data:string +lbl_1_data_24E = .data:0x0000024E; // type:object size:0xA scope:local lbl_1_data_258 = .data:0x00000258; // type:object size:0xC lbl_1_data_264 = .data:0x00000264; // type:object size:0x3C lbl_1_data_2A0 = .data:0x000002A0; // type:object size:0x28 lbl_1_data_2C8 = .data:0x000002C8; // type:object size:0xA -lbl_1_data_2D2 = .data:0x000002D2; // type:object size:0xD data:string -lbl_1_data_2DF = .data:0x000002DF; // type:object size:0xD data:string -lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xD data:string -lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0xD data:string -lbl_1_data_306 = .data:0x00000306; // type:object size:0xD data:string -lbl_1_data_313 = .data:0x00000313; // type:object size:0xD data:string -lbl_1_data_320 = .data:0x00000320; // type:object size:0xD data:string -lbl_1_data_32D = .data:0x0000032D; // type:object size:0xD data:string -lbl_1_data_33A = .data:0x0000033A; // type:object size:0xD data:string -lbl_1_data_347 = .data:0x00000347; // type:object size:0xD data:string -lbl_1_data_354 = .data:0x00000354; // type:object size:0xD data:string -lbl_1_data_361 = .data:0x00000361; // type:object size:0xD data:string -lbl_1_data_36E = .data:0x0000036E; // type:object size:0xD data:string -lbl_1_data_37B = .data:0x0000037B; // type:object size:0xD data:string +lbl_1_data_2D2 = .data:0x000002D2; // type:object size:0xD scope:local data:string +lbl_1_data_2DF = .data:0x000002DF; // type:object size:0xD scope:local data:string +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0xD scope:local data:string +lbl_1_data_2F9 = .data:0x000002F9; // type:object size:0xD scope:local data:string +lbl_1_data_306 = .data:0x00000306; // type:object size:0xD scope:local data:string +lbl_1_data_313 = .data:0x00000313; // type:object size:0xD scope:local data:string +lbl_1_data_320 = .data:0x00000320; // type:object size:0xD scope:local data:string +lbl_1_data_32D = .data:0x0000032D; // type:object size:0xD scope:local data:string +lbl_1_data_33A = .data:0x0000033A; // type:object size:0xD scope:local data:string +lbl_1_data_347 = .data:0x00000347; // type:object size:0xD scope:local data:string +lbl_1_data_354 = .data:0x00000354; // type:object size:0xD scope:local data:string +lbl_1_data_361 = .data:0x00000361; // type:object size:0xD scope:local data:string +lbl_1_data_36E = .data:0x0000036E; // type:object size:0xD scope:local data:string +lbl_1_data_37B = .data:0x0000037B; // type:object size:0xD scope:local data:string jumptable_1_data_388 = .data:0x00000388; // type:object size:0x1C scope:local lbl_1_data_3A4 = .data:0x000003A4; // type:object size:0x8 lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x30 lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x24 lbl_1_data_400 = .data:0x00000400; // type:object size:0x54 lbl_1_data_454 = .data:0x00000454; // type:object size:0xC -lbl_1_data_460 = .data:0x00000460; // type:object size:0x10 data:string +lbl_1_data_460 = .data:0x00000460; // type:object size:0x10 scope:local data:string lbl_1_data_470 = .data:0x00000470; // type:object size:0x127C lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte @@ -314,7 +314,7 @@ lbl_1_bss_18A0 = .bss:0x000018A0; // type:object size:0x14 lbl_1_bss_18B4 = .bss:0x000018B4; // type:object size:0x3C lbl_1_bss_18F0 = .bss:0x000018F0; // type:object size:0xC000 lbl_1_bss_D8F0 = .bss:0x0000D8F0; // type:object size:0xC000 -lbl_1_bss_198F0 = .bss:0x000198F0; // type:object size:0x1A +lbl_1_bss_198F0 = .bss:0x000198F0; // type:object size:0x14 lbl_1_bss_1990A = .bss:0x0001990A; // type:object size:0x2 data:2byte lbl_1_bss_1990E = .bss:0x0001990E; // type:object size:0xB4 data:2byte lbl_1_bss_199C2 = .bss:0x000199C2; // type:object size:0xB4 data:2byte diff --git a/configure.py b/configure.py index c9d90084..0a9f3eba 100644 --- a/configure.py +++ b/configure.py @@ -1171,10 +1171,10 @@ config.libs = [ Rel( "m444dll", # Reversal of Fortune objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/pinball.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/datalist.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m444dll/shadow.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m444dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m444dll/pinball.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m444dll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m444dll/shadow.c"), }, ), Rel( diff --git a/src/REL/m444dll/main.c b/src/REL/m444dll/main.c index 12db5f84..27ef0821 100644 --- a/src/REL/m444dll/main.c +++ b/src/REL/m444dll/main.c @@ -128,6 +128,9 @@ void ObjectSetup(void) lbl_1_bss_30C = omAddObjEx(lbl_1_bss_308, 32730, 0, 0, -1, fn_1_6EDC); omAddObjEx(lbl_1_bss_308, 0, 32, 32, -1, fn_1_7290); Hu3DBGColorSet(0, 0, 0); +#if VERSION_JP + GWGameStat.language = 0; +#endif HuWinInit(1); BoardStatusCreate(); } From 306ba21ebb5abb88e0bf23895dc8e66519201831 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 15 Dec 2024 21:19:39 +0100 Subject: [PATCH 066/178] Port m429 to JP --- config/GMPJ01_00/config.yml | 4 ++-- configure.py | 2 +- src/REL/m429Dll/main.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/config/GMPJ01_00/config.yml b/config/GMPJ01_00/config.yml index 253a517d..441f226f 100644 --- a/config/GMPJ01_00/config.yml +++ b/config/GMPJ01_00/config.yml @@ -184,8 +184,8 @@ modules: links: [] - object: files/dll/m429Dll.rel - symbols: config/GMPJ01_00/rels/m429Dll/symbols.txt - splits: config/GMPJ01_00/rels/m429Dll/splits.txt + symbols: config/GMPE01_00/rels/m429Dll/symbols.txt + splits: config/GMPE01_00/rels/m429Dll/splits.txt links: [] - object: files/dll/m430Dll.rel diff --git a/configure.py b/configure.py index 0a9f3eba..7cc762cb 100644 --- a/configure.py +++ b/configure.py @@ -1064,7 +1064,7 @@ config.libs = [ Rel( "m429Dll", # Team Treasure Trek objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m429Dll/main.c"), + Object(Matching, "REL/m429Dll/main.c"), }, ), Rel( diff --git a/src/REL/m429Dll/main.c b/src/REL/m429Dll/main.c index f48c989e..e37af222 100644 --- a/src/REL/m429Dll/main.c +++ b/src/REL/m429Dll/main.c @@ -2396,8 +2396,8 @@ void fn_1_B01C(void) temp_f31 = lbl_1_bss_98[lbl_1_bss_28].x - temp_r30->unk4.x; temp_f30 = lbl_1_bss_98[lbl_1_bss_28].z - temp_r30->unk4.z; temp_r30->unk64 = atan2d(temp_f31, temp_f30); - omVibrate(temp_r31->unk114, 2 * REFRESH_RATE, 6, 6); - omVibrate(temp_r30->unk114, 2 * REFRESH_RATE, 6, 6); + omVibrate(temp_r31->unk114, (VERSION_JP ? 3 : 2) * REFRESH_RATE, 6, 6); + omVibrate(temp_r30->unk114, (VERSION_JP ? 3 : 2) * REFRESH_RATE, 6, 6); } void fn_1_B754(float *arg0, float arg1, float arg2, s32 arg3) From 9c915a08fd2f76d10c4941877cbb0986281660ac Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 15 Dec 2024 22:35:14 +0100 Subject: [PATCH 067/178] Port ztardll to JP --- config/GMPJ01_00/rels/ztardll/splits.txt | 20 ++ config/GMPJ01_00/rels/ztardll/symbols.txt | 416 +++++++++++----------- configure.py | 6 +- src/REL/ztardll/font.c | 34 +- src/REL/ztardll/main.c | 31 +- src/REL/ztardll/select.c | 21 ++ 6 files changed, 309 insertions(+), 219 deletions(-) diff --git a/config/GMPJ01_00/rels/ztardll/splits.txt b/config/GMPJ01_00/rels/ztardll/splits.txt index 531cd645..9d81d15d 100644 --- a/config/GMPJ01_00/rels/ztardll/splits.txt +++ b/config/GMPJ01_00/rels/ztardll/splits.txt @@ -5,3 +5,23 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/ztardll/main.c: + .text start:0x000000A0 end:0x00007820 + .rodata start:0x00000000 end:0x000001B8 + .data start:0x00000000 end:0x000000B0 + .bss start:0x00000000 end:0x00000070 + +REL/ztardll/font.c: + .text start:0x00007820 end:0x00007C9C + .rodata start:0x000001B8 end:0x000001C0 + .data start:0x000000B0 end:0x00000578 + +REL/ztardll/select.c: + .text start:0x00007C9C end:0x00012358 + .rodata start:0x000001C0 end:0x00000298 + .data start:0x00000578 end:0x00000824 + .bss start:0x00000070 end:0x000002D8 diff --git a/config/GMPJ01_00/rels/ztardll/symbols.txt b/config/GMPJ01_00/rels/ztardll/symbols.txt index 7e87352c..f9516f21 100644 --- a/config/GMPJ01_00/rels/ztardll/symbols.txt +++ b/config/GMPJ01_00/rels/ztardll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x384 +ObjectSetup = .text:0x000000A0; // type:function size:0x384 fn_1_424 = .text:0x00000424; // type:function size:0x1350 fn_1_1774 = .text:0x00001774; // type:function size:0x57C fn_1_1CF0 = .text:0x00001CF0; // type:function size:0xB0 @@ -11,197 +11,197 @@ fn_1_40E4 = .text:0x000040E4; // type:function size:0x290 fn_1_4374 = .text:0x00004374; // type:function size:0x5D4 fn_1_4948 = .text:0x00004948; // type:function size:0x874 fn_1_51BC = .text:0x000051BC; // type:function size:0x15C -fn_1_5318 = .text:0x00005318; // type:function size:0x14AC -fn_1_67C4 = .text:0x000067C4; // type:function size:0x10C -fn_1_68D0 = .text:0x000068D0; // type:function size:0xC10 -fn_1_74E0 = .text:0x000074E0; // type:function size:0x340 -fn_1_7820 = .text:0x00007820; // type:function size:0x47C -fn_1_7C9C = .text:0x00007C9C; // type:function size:0x16C -fn_1_7E08 = .text:0x00007E08; // type:function size:0xA0 -fn_1_7EA8 = .text:0x00007EA8; // type:function size:0x224 -fn_1_80CC = .text:0x000080CC; // type:function size:0x2DC -fn_1_83A8 = .text:0x000083A8; // type:function size:0x2C -fn_1_83D4 = .text:0x000083D4; // type:function size:0x518 -fn_1_88EC = .text:0x000088EC; // type:function size:0x2C -fn_1_8918 = .text:0x00008918; // type:function size:0x28 -fn_1_8940 = .text:0x00008940; // type:function size:0x274 -fn_1_8BB4 = .text:0x00008BB4; // type:function size:0x2C -fn_1_8BE0 = .text:0x00008BE0; // type:function size:0x2C -fn_1_8C0C = .text:0x00008C0C; // type:function size:0x24 -fn_1_8C30 = .text:0x00008C30; // type:function size:0x2BC -fn_1_8EEC = .text:0x00008EEC; // type:function size:0x500 -fn_1_93EC = .text:0x000093EC; // type:function size:0x480 -fn_1_986C = .text:0x0000986C; // type:function size:0x80C -fn_1_A078 = .text:0x0000A078; // type:function size:0x28 -fn_1_A0A0 = .text:0x0000A0A0; // type:function size:0x28 -fn_1_A0C8 = .text:0x0000A0C8; // type:function size:0x21C -fn_1_A2E4 = .text:0x0000A2E4; // type:function size:0x194 -fn_1_A478 = .text:0x0000A478; // type:function size:0x198 -fn_1_A610 = .text:0x0000A610; // type:function size:0x9C -fn_1_A6AC = .text:0x0000A6AC; // type:function size:0x2D8 -fn_1_A984 = .text:0x0000A984; // type:function size:0x2DC -fn_1_AC60 = .text:0x0000AC60; // type:function size:0x1E0 -fn_1_AE40 = .text:0x0000AE40; // type:function size:0xF0 -fn_1_AF30 = .text:0x0000AF30; // type:function size:0x50 -fn_1_AF80 = .text:0x0000AF80; // type:function size:0x584 -fn_1_B504 = .text:0x0000B504; // type:function size:0x5D8 -fn_1_BADC = .text:0x0000BADC; // type:function size:0x33C -fn_1_BE18 = .text:0x0000BE18; // type:function size:0x274 -fn_1_C08C = .text:0x0000C08C; // type:function size:0x7C -fn_1_C108 = .text:0x0000C108; // type:function size:0x44C -fn_1_C554 = .text:0x0000C554; // type:function size:0x434 -fn_1_C988 = .text:0x0000C988; // type:function size:0x204 -fn_1_CB8C = .text:0x0000CB8C; // type:function size:0x790 -fn_1_D31C = .text:0x0000D31C; // type:function size:0xB0C -fn_1_DE28 = .text:0x0000DE28; // type:function size:0x720 -fn_1_E548 = .text:0x0000E548; // type:function size:0x9C -fn_1_E5E4 = .text:0x0000E5E4; // type:function size:0xCCC -fn_1_F2B0 = .text:0x0000F2B0; // type:function size:0x924 -fn_1_FBD4 = .text:0x0000FBD4; // type:function size:0x258 -fn_1_FE2C = .text:0x0000FE2C; // type:function size:0x958 -fn_1_10784 = .text:0x00010784; // type:function size:0x7C -fn_1_10800 = .text:0x00010800; // type:function size:0x164 -fn_1_10964 = .text:0x00010964; // type:function size:0x1B8 -fn_1_10B1C = .text:0x00010B1C; // type:function size:0xA4 -fn_1_10BC0 = .text:0x00010BC0; // type:function size:0xF4 -fn_1_10CB4 = .text:0x00010CB4; // type:function size:0x80 -fn_1_10D34 = .text:0x00010D34; // type:function size:0x80 -fn_1_10DB4 = .text:0x00010DB4; // type:function size:0x28 -fn_1_10DDC = .text:0x00010DDC; // type:function size:0x20 -fn_1_10DFC = .text:0x00010DFC; // type:function size:0xD8 -fn_1_10ED4 = .text:0x00010ED4; // type:function size:0xC8 -fn_1_10F9C = .text:0x00010F9C; // type:function size:0xBC -fn_1_11058 = .text:0x00011058; // type:function size:0x40 -fn_1_11098 = .text:0x00011098; // type:function size:0x24 -fn_1_110BC = .text:0x000110BC; // type:function size:0x1C0 -fn_1_1127C = .text:0x0001127C; // type:function size:0x84 -fn_1_11300 = .text:0x00011300; // type:function size:0xD4 -fn_1_113D4 = .text:0x000113D4; // type:function size:0x58 -fn_1_1142C = .text:0x0001142C; // type:function size:0x15C -fn_1_11588 = .text:0x00011588; // type:function size:0x1C4 -fn_1_1174C = .text:0x0001174C; // type:function size:0x1AC -fn_1_118F8 = .text:0x000118F8; // type:function size:0x54 -fn_1_1194C = .text:0x0001194C; // type:function size:0x304 -fn_1_11C50 = .text:0x00011C50; // type:function size:0x304 -fn_1_11F54 = .text:0x00011F54; // type:function size:0x340 -fn_1_12294 = .text:0x00012294; // type:function size:0xC4 +fn_1_524C = .text:0x00005318; // type:function size:0x14AC +fn_1_66F8 = .text:0x000067C4; // type:function size:0x10C +fn_1_6804 = .text:0x000068D0; // type:function size:0xC10 +fn_1_7414 = .text:0x000074E0; // type:function size:0x340 +fn_1_7754 = .text:0x00007820; // type:function size:0x47C +fn_1_7C00 = .text:0x00007C9C; // type:function size:0x16C +fn_1_7D6C = .text:0x00007E08; // type:function size:0xA0 +fn_1_7E0C = .text:0x00007EA8; // type:function size:0x224 +fn_1_8030 = .text:0x000080CC; // type:function size:0x2DC +fn_1_830C = .text:0x000083A8; // type:function size:0x2C +fn_1_8338 = .text:0x000083D4; // type:function size:0x518 +fn_1_8850 = .text:0x000088EC; // type:function size:0x2C +fn_1_887C = .text:0x00008918; // type:function size:0x28 +fn_1_88A4 = .text:0x00008940; // type:function size:0x274 +fn_1_8B18 = .text:0x00008BB4; // type:function size:0x2C +fn_1_8B44 = .text:0x00008BE0; // type:function size:0x2C +fn_1_8B70 = .text:0x00008C0C; // type:function size:0x24 +fn_1_8B94 = .text:0x00008C30; // type:function size:0x2BC +fn_1_8E50 = .text:0x00008EEC; // type:function size:0x500 +fn_1_9350 = .text:0x000093EC; // type:function size:0x480 +fn_1_97D0 = .text:0x0000986C; // type:function size:0x80C +fn_1_9FDC = .text:0x0000A078; // type:function size:0x28 +fn_1_A004 = .text:0x0000A0A0; // type:function size:0x28 +fn_1_A02C = .text:0x0000A0C8; // type:function size:0x21C +fn_1_A248 = .text:0x0000A2E4; // type:function size:0x194 +fn_1_A3DC = .text:0x0000A478; // type:function size:0x198 +fn_1_A574 = .text:0x0000A610; // type:function size:0x9C +fn_1_A610 = .text:0x0000A6AC; // type:function size:0x2D8 +fn_1_A8E8 = .text:0x0000A984; // type:function size:0x2DC +fn_1_ABC4 = .text:0x0000AC60; // type:function size:0x1E0 +fn_1_ADA4 = .text:0x0000AE40; // type:function size:0xF0 +fn_1_AE94 = .text:0x0000AF30; // type:function size:0x50 +fn_1_AEE4 = .text:0x0000AF80; // type:function size:0x584 +fn_1_B468 = .text:0x0000B504; // type:function size:0x5D8 +fn_1_BA40 = .text:0x0000BADC; // type:function size:0x33C +fn_1_BD7C = .text:0x0000BE18; // type:function size:0x274 +fn_1_BFF0 = .text:0x0000C08C; // type:function size:0x7C +fn_1_C06C = .text:0x0000C108; // type:function size:0x44C +fn_1_C4B8 = .text:0x0000C554; // type:function size:0x434 +fn_1_C8EC = .text:0x0000C988; // type:function size:0x204 +fn_1_CAF0 = .text:0x0000CB8C; // type:function size:0x790 +fn_1_D280 = .text:0x0000D31C; // type:function size:0xB0C +fn_1_DD8C = .text:0x0000DE28; // type:function size:0x720 +fn_1_E4AC = .text:0x0000E548; // type:function size:0x9C +fn_1_E548 = .text:0x0000E5E4; // type:function size:0xCCC +fn_1_F214 = .text:0x0000F2B0; // type:function size:0x924 +fn_1_FB38 = .text:0x0000FBD4; // type:function size:0x258 +fn_1_FD90 = .text:0x0000FE2C; // type:function size:0x958 +fn_1_106E8 = .text:0x00010784; // type:function size:0x7C +fn_1_10764 = .text:0x00010800; // type:function size:0x164 +fn_1_108C8 = .text:0x00010964; // type:function size:0x1B8 +fn_1_10A80 = .text:0x00010B1C; // type:function size:0xA4 +fn_1_10B24 = .text:0x00010BC0; // type:function size:0xF4 +fn_1_10C18 = .text:0x00010CB4; // type:function size:0x80 +fn_1_10C98 = .text:0x00010D34; // type:function size:0x80 +fn_1_10D18 = .text:0x00010DB4; // type:function size:0x28 +fn_1_10D40 = .text:0x00010DDC; // type:function size:0x20 +fn_1_10D60 = .text:0x00010DFC; // type:function size:0xD8 +fn_1_10E38 = .text:0x00010ED4; // type:function size:0xC8 +fn_1_10F00 = .text:0x00010F9C; // type:function size:0xBC +fn_1_10FBC = .text:0x00011058; // type:function size:0x40 +fn_1_10FFC = .text:0x00011098; // type:function size:0x24 +fn_1_11020 = .text:0x000110BC; // type:function size:0x1C0 +fn_1_111E0 = .text:0x0001127C; // type:function size:0x84 +fn_1_11264 = .text:0x00011300; // type:function size:0xD4 +fn_1_11338 = .text:0x000113D4; // type:function size:0x58 +fn_1_11390 = .text:0x0001142C; // type:function size:0x15C +fn_1_114EC = .text:0x00011588; // type:function size:0x1C4 +fn_1_11708 = .text:0x0001174C; // type:function size:0x1AC +fn_1_1190C = .text:0x000118F8; // type:function size:0x54 +fn_1_11960 = .text:0x0001194C; // type:function size:0x304 +fn_1_11C64 = .text:0x00011C50; // type:function size:0x304 +fn_1_11F68 = .text:0x00011F54; // type:function size:0x340 +fn_1_122A8 = .text:0x00012294; // type:function size:0xC4 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -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_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0x8 data:double -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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x38 data:4byte -lbl_1_data_0 = .data:0x00000000; // type:object size:0x22 data:string -lbl_1_data_22 = .data:0x00000022; // type:object size:0xA +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +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_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x38 scope:local data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x22 scope:local data:string +lbl_1_data_22 = .data:0x00000022; // type:object size:0x8 lbl_1_data_2C = .data:0x0000002C; // type:object size:0x18 lbl_1_data_44 = .data:0x00000044; // type:object size:0x6 lbl_1_data_4A = .data:0x0000004A; // type:object size:0xC @@ -209,25 +209,25 @@ lbl_1_data_56 = .data:0x00000056; // type:object size:0xE data:wstring lbl_1_data_64 = .data:0x00000064; // type:object size:0x20 lbl_1_data_84 = .data:0x00000084; // type:object size:0x10 lbl_1_data_94 = .data:0x00000094; // type:object size:0xC -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA data:string -lbl_1_data_AA = .data:0x000000AA; // type:object size:0x6 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA scope:local data:string +lbl_1_data_AA = .data:0x000000AA; // type:object size:0x6 scope:local lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x4C8 -lbl_1_data_578 = .data:0x00000578; // type:object size:0x20 -lbl_1_data_598 = .data:0x00000598; // type:object size:0x20 -lbl_1_data_5B8 = .data:0x000005B8; // type:object size:0x3C data:string -lbl_1_data_5F4 = .data:0x000005F4; // type:object size:0x19 data:string -lbl_1_data_60D = .data:0x0000060D; // type:object size:0x1A data:string -lbl_1_data_627 = .data:0x00000627; // type:object size:0x3D -lbl_1_data_664 = .data:0x00000664; // type:object size:0x20 data:4byte -lbl_1_data_684 = .data:0x00000684; // type:object size:0x40 data:4byte -lbl_1_data_6C4 = .data:0x000006C4; // type:object size:0x70 -lbl_1_data_734 = .data:0x00000734; // type:object size:0x90 data:4byte -lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x20 -lbl_1_data_7E4 = .data:0x000007E4; // type:object size:0x8 data:4byte -lbl_1_data_7EC = .data:0x000007EC; // type:object size:0x10 -lbl_1_data_7FC = .data:0x000007FC; // type:object size:0x20 -lbl_1_data_81C = .data:0x0000081C; // type:object size:0x4 data:4byte -lbl_1_data_820 = .data:0x00000820; // type:object size:0x4 data:4byte +lbl_1_data_3C8 = .data:0x00000578; // type:object size:0x20 +lbl_1_data_3E8 = .data:0x00000598; // type:object size:0x20 +lbl_1_data_5B8 = .data:0x000005B8; // type:object size:0x3C scope:local data:string +lbl_1_data_5F4 = .data:0x000005F4; // type:object size:0x19 scope:local data:string +lbl_1_data_60D = .data:0x0000060D; // type:object size:0x1A scope:local data:string +lbl_1_data_627 = .data:0x00000627; // type:object size:0x3A scope:local data:string +lbl_1_data_4B4 = .data:0x00000664; // type:object size:0x20 data:4byte +lbl_1_data_4D4 = .data:0x00000684; // type:object size:0x40 data:4byte +lbl_1_data_514 = .data:0x000006C4; // type:object size:0x70 +lbl_1_data_584 = .data:0x00000734; // type:object size:0x90 data:4byte +lbl_1_data_614 = .data:0x000007C4; // type:object size:0x20 +lbl_1_data_634 = .data:0x000007E4; // type:object size:0x8 data:4byte +lbl_1_data_63C = .data:0x000007EC; // type:object size:0x10 +lbl_1_data_64C = .data:0x000007FC; // type:object size:0x20 +lbl_1_data_66C = .data:0x0000081C; // type:object size:0x4 data:4byte +lbl_1_data_670 = .data:0x00000820; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte diff --git a/configure.py b/configure.py index 7cc762cb..2cde7dff 100644 --- a/configure.py +++ b/configure.py @@ -1540,9 +1540,9 @@ config.libs = [ Rel( "ztardll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/ztardll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/ztardll/font.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/ztardll/select.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/ztardll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/ztardll/font.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/ztardll/select.c"), }, ), ] diff --git a/src/REL/ztardll/font.c b/src/REL/ztardll/font.c index fe081d17..9ee3d56c 100644 --- a/src/REL/ztardll/font.c +++ b/src/REL/ztardll/font.c @@ -1,8 +1,9 @@ -#include "game/sprite.h" #include "game/minigame_seq.h" +#include "game/sprite.h" #include "REL/ztardll.h" +#if VERSION_ENG s32 lbl_1_data_B0[0xC6] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x01), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x02), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x03), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x04), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x05), @@ -54,6 +55,33 @@ s32 lbl_1_data_B0[0xC6] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0B), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0C), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00) }; +#elif VERSION_PAL + +#else +s32 lbl_1_data_B0[0x132] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x00150000, 0x00150001, 0x00150002, 0x00150003, 0x00150004, 0x00150005, 0x00150006, 0x00150007, 0x00150008, 0x00150009, + 0x0013000A, 0x0013000A, 0x0013000A, 0x0015000A, 0x0013000A, 0x0013000A, 0x0013000A, 0x00130014, 0x00130015, 0x00130016, 0x00130017, 0x00130018, + 0x00130019, 0x001500AE, 0x0013001B, 0x0013001C, 0x0013001D, 0x0013001E, 0x0013001F, 0x00130020, 0x00130021, 0x001500AF, 0x00130023, 0x00130024, + 0x00130025, 0x00130026, 0x00130027, 0x00130028, 0x00130029, 0x0013002A, 0x0013002B, 0x0013002C, 0x0013002D, 0x00130022, 0x00130022, 0x00130022, + 0x00130022, 0x00130022, 0x00130022, 0x0013002E, 0x0013002F, 0x00130030, 0x00130031, 0x00130032, 0x00130033, 0x00130034, 0x00130035, 0x00130036, + 0x00130037, 0x00130038, 0x00130039, 0x0013003A, 0x0013003B, 0x0013003C, 0x0013003D, 0x0013003E, 0x0013003F, 0x00130040, 0x00130041, 0x00130042, + 0x00130043, 0x00130044, 0x00130045, 0x00130046, 0x00130047, 0x0013000A, 0x0013000A, 0x0013000A, 0x0013000A, 0x0013000A, 0x0013000A, 0x0013000A, + 0x0013000A, 0x0013000A, 0x0015000A, 0x0013000A, 0x0015008A, 0x0015008C, 0x0015008D, 0x0015008E, 0x0015008F, 0x00150090, 0x00150091, 0x00150092, + 0x00150093, 0x00150094, 0x0013000A, 0x0015005E, 0x0015005F, 0x00150060, 0x00150061, 0x00150062, 0x00150063, 0x00150064, 0x00150065, 0x00150066, + 0x00150067, 0x00150068, 0x00150069, 0x0015006A, 0x0015006B, 0x0015006C, 0x0015006D, 0x0015006E, 0x0015006F, 0x00150070, 0x00150071, 0x00150072, + 0x00150073, 0x00150074, 0x00150075, 0x00150076, 0x00150077, 0x00150078, 0x00150079, 0x0015007A, 0x0015007B, 0x0015007C, 0x0015007D, 0x0015007E, + 0x0015007F, 0x00150080, 0x00150081, 0x00150082, 0x00150083, 0x00150084, 0x00150085, 0x00150086, 0x00150087, 0x00150088, 0x00150089, 0x0015008B, + 0x0013000A, 0x0013000A, 0x0013000A, 0x0013000A, 0x0015000B, 0x0015000C, 0x0013000A, 0x0013000A, 0x0015003A, 0x0015003C, 0x0015003D, 0x0015003E, + 0x0015003F, 0x00150040, 0x00150041, 0x00150042, 0x00150043, 0x00150044, 0x0013000A, 0x0015000E, 0x0015000F, 0x00150010, 0x00150011, 0x00150012, + 0x00150013, 0x00150014, 0x00150015, 0x00150016, 0x00150017, 0x00150018, 0x00150019, 0x0015001A, 0x0015001B, 0x0015001C, 0x0015001D, 0x0015001E, + 0x0015001F, 0x00150020, 0x00150021, 0x00150022, 0x00150023, 0x00150024, 0x00150025, 0x00150026, 0x00150027, 0x00150028, 0x00150029, 0x0015002A, + 0x0015002B, 0x0015002C, 0x0015002D, 0x0015002E, 0x0015002F, 0x00150030, 0x00150031, 0x00150032, 0x00150033, 0x00150034, 0x00150035, 0x00150036, + 0x00150037, 0x00150038, 0x00150039, 0x0015003B, 0x0013000A, 0x0013000A, 0x00150095, 0x00150096, 0x00150097, 0x00150098, 0x00150099, 0x0015009A, + 0x0015009B, 0x0015009C, 0x0015009D, 0x0015009E, 0x0015009F, 0x001500A0, 0x001500A1, 0x001500A2, 0x001500A3, 0x001500A4, 0x001500A5, 0x001500A6, + 0x001500A7, 0x001500A8, 0x001500A9, 0x001500AA, 0x001500AB, 0x001500AC, 0x001500AD, 0x00150045, 0x00150046, 0x00150047, 0x00150048, 0x00150049, + 0x0015004A, 0x0015004B, 0x0015004C, 0x0015004D, 0x0015004E, 0x0015004F, 0x00150050, 0x00150051, 0x00150052, 0x00150053, 0x00150054, 0x00150055, + 0x00150056, 0x00150057, 0x00150058, 0x00150059, 0x0015005A, 0x0015005B, 0x0015005C, 0x0015005D }; +#endif s32 fn_1_7754(SeqWork *work, char *mess) { @@ -84,7 +112,7 @@ s32 fn_1_7754(SeqWork *work, char *mess) var_r29 = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); for (var_r31 = mess, var_r30 = 0, var_r28 = 0; var_r31[0] != 0; var_r31++) { if (var_r31[0] == 0x20 || var_r31[0] == 0x10) { - var_r30 += 0xE; + var_r30 += VERSION_JP ? 0x1C : 0xE; } else if (var_r31[0] < 0x30) { } @@ -140,10 +168,12 @@ s32 fn_1_7754(SeqWork *work, char *mess) var_r29[var_r28] = 4; var_r30 += 0x18; } +#if !VERSION_JP else if ((var_r31[0] == 0x3D) || (var_r31[0] == 0x84)) { var_r29[var_r28] = 0; var_r30 += 0x14; } +#endif else { var_r29[var_r28] = 0; var_r30 += 0x1C; diff --git a/src/REL/ztardll/main.c b/src/REL/ztardll/main.c index 0c0b8ce0..462a3d62 100644 --- a/src/REL/ztardll/main.c +++ b/src/REL/ztardll/main.c @@ -763,7 +763,7 @@ void fn_1_33B0(void) var_r30 = HuSprCreate(var_r29, 0x64, mgBattleStarMax + 1); } HuSprGrpMemberSet(lbl_1_bss_50, 1, var_r30); - HuSprPosSet(lbl_1_bss_50, 1, 342.0f, 80.0f); + HuSprPosSet(lbl_1_bss_50, 1, VERSION_JP ? 234.0f : 342.0f, 80.0f); HuSprScaleSet(lbl_1_bss_50, 1, 0.0f, 0.0f); HuSprGrpDrawNoSet(lbl_1_bss_50, 0x7F); var_r29 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_ZTAR, 9)); @@ -1096,17 +1096,36 @@ void fn_1_4948(void) void fn_1_51BC(s16 arg0) { - omOvlHisData *var_r31; + s16 var_r31; + omOvlHisData *var_r30; + u32 var_r29; WipeColorSet(0xFF, 0xFF, 0xFF); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); HuAudSeqAllFadeOut(0x3E8); - while (WipeStatGet() != 0) { HuPrcVSleep(); } - var_r31 = omOvlHisGet(0); - omOvlHisChg(0, OVL_ZTAR, arg0, var_r31->stat); +#if VERSION_JP + if ((GWPlayerCfg->character >= 8) && (GWPlayerCfg->character >= 8) && (GWPlayerCfg->character >= 8) && (GWPlayerCfg->character >= 8)) { + msmMusStopAll(1, 0); + msmSeStopAll(1, 0); + var_r29 = OSGetTick(); + while (TRUE) { + if ((msmMusGetNumPlay(1) != 0) || (msmSeGetNumPlay(1) != 0)) { + if (((OSGetTick() - var_r29) / (*((u32 *)0x800000F8) / 4 / 1000)) >= 0x1F4) { + break; + } + } + else { + break; + } + } + msmSysDelGroupBase(0); + } +#endif + var_r30 = omOvlHisGet(0); + omOvlHisChg(0, OVL_ZTAR, arg0, var_r30->stat); omOvlCallEx(OVL_M433, 1, 0, 0); while (TRUE) { HuPrcVSleep(); diff --git a/src/REL/ztardll/select.c b/src/REL/ztardll/select.c index b092f9b5..e8de9216 100644 --- a/src/REL/ztardll/select.c +++ b/src/REL/ztardll/select.c @@ -3028,6 +3028,12 @@ void fn_1_114EC(u32 arg0, s32 arg1) s32 var_r29; s32 var_r28; +#if VERSION_JP + if (lbl_1_data_670 != -1) { + HuWinMesSet(lbl_1_data_670, arg0); + return; + } +#endif HuWinMesMaxSizeGet(1, spC, arg0); var_r29 = spC[0]; var_r31 = spC[1]; @@ -3038,6 +3044,9 @@ void fn_1_114EC(u32 arg0, s32 arg1) else { var_r30 = 0x181 - var_r31; } +#if VERSION_JP + lbl_1_data_670 = HuWinExCreateStyled(var_r28, var_r30, var_r29, var_r31, -1, 1); +#else if (lbl_1_data_670 != -1) { fn_1_1190C(); lbl_1_data_670 = HuWinExCreateStyled(var_r28, var_r30, var_r29, var_r31, -1, 1); @@ -3045,6 +3054,7 @@ void fn_1_114EC(u32 arg0, s32 arg1) else { lbl_1_data_670 = HuWinExCreateStyled(var_r28, var_r30, var_r29, var_r31, -1, 1); } +#endif HuWinBGTPLvlSet(lbl_1_data_670, 0.0f); HuWinDispOn(lbl_1_data_670); HuWinMesSet(lbl_1_data_670, arg0); @@ -3059,11 +3069,21 @@ void fn_1_11708(u32 arg0) s32 var_r29; s32 var_r28; +#if VERSION_JP + if (lbl_1_data_670 != -1) { + HuWinMesSet(lbl_1_data_670, arg0); + return; + } +#endif HuWinMesMaxSizeGet(1, sp8, arg0); var_r30 = sp8[0]; var_r31 = sp8[1]; var_r28 = (0x240 - var_r30) / 2.0f; var_r29 = 0x181 - var_r31; +#if VERSION_JP + lbl_1_data_670 = HuWinExCreateStyled(var_r28, var_r29, var_r30, var_r31, -1, 1); + (void)var_r29; +#else if (lbl_1_data_670 != -1) { fn_1_1190C(); lbl_1_data_670 = HuWinExCreateStyled(var_r28, var_r29, var_r30, var_r31, -1, 1); @@ -3071,6 +3091,7 @@ void fn_1_11708(u32 arg0) else { lbl_1_data_670 = HuWinExCreateStyled(var_r28, var_r29, var_r30, var_r31, -1, 1); } +#endif HuWinBGTPLvlSet(lbl_1_data_670, 0.0f); HuWinDispOn(lbl_1_data_670); HuWinMesSet(lbl_1_data_670, arg0); From 55901c10203725994ff5e9bfc17229aea16abb78 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 15 Dec 2024 23:14:45 +0100 Subject: [PATCH 068/178] Port ztardll to PAL --- config/GMPP01_00/rels/ztardll/symbols.txt | 415 +++++++++++----------- configure.py | 6 +- src/REL/ztardll/font.c | 70 +++- src/REL/ztardll/main.c | 17 +- 4 files changed, 294 insertions(+), 214 deletions(-) diff --git a/config/GMPP01_00/rels/ztardll/symbols.txt b/config/GMPP01_00/rels/ztardll/symbols.txt index acceedbe..3ccb8483 100644 --- a/config/GMPP01_00/rels/ztardll/symbols.txt +++ b/config/GMPP01_00/rels/ztardll/symbols.txt @@ -11,197 +11,197 @@ fn_1_40E4 = .text:0x000040E4; // type:function size:0x290 fn_1_4374 = .text:0x00004374; // type:function size:0x5D4 fn_1_4948 = .text:0x00004948; // type:function size:0x874 fn_1_51BC = .text:0x000051BC; // type:function size:0x194 -fn_1_5350 = .text:0x00005350; // type:function size:0x14BC -fn_1_680C = .text:0x0000680C; // type:function size:0x140 -fn_1_694C = .text:0x0000694C; // type:function size:0xC10 -fn_1_755C = .text:0x0000755C; // type:function size:0x340 -fn_1_789C = .text:0x0000789C; // type:function size:0x3A4 -fn_1_7C40 = .text:0x00007C40; // type:function size:0x16C -fn_1_7DAC = .text:0x00007DAC; // type:function size:0xA0 -fn_1_7E4C = .text:0x00007E4C; // type:function size:0x224 -fn_1_8070 = .text:0x00008070; // type:function size:0x2DC -fn_1_834C = .text:0x0000834C; // type:function size:0x2C -fn_1_8378 = .text:0x00008378; // type:function size:0x518 -fn_1_8890 = .text:0x00008890; // type:function size:0x2C -fn_1_88BC = .text:0x000088BC; // type:function size:0x28 -fn_1_88E4 = .text:0x000088E4; // type:function size:0x274 -fn_1_8B58 = .text:0x00008B58; // type:function size:0x2C -fn_1_8B84 = .text:0x00008B84; // type:function size:0x2C -fn_1_8BB0 = .text:0x00008BB0; // type:function size:0x24 -fn_1_8BD4 = .text:0x00008BD4; // type:function size:0x2BC -fn_1_8E90 = .text:0x00008E90; // type:function size:0x500 -fn_1_9390 = .text:0x00009390; // type:function size:0x480 -fn_1_9810 = .text:0x00009810; // type:function size:0x80C -fn_1_A01C = .text:0x0000A01C; // type:function size:0x28 -fn_1_A044 = .text:0x0000A044; // type:function size:0x28 -fn_1_A06C = .text:0x0000A06C; // type:function size:0x21C -fn_1_A288 = .text:0x0000A288; // type:function size:0x194 -fn_1_A41C = .text:0x0000A41C; // type:function size:0x198 -fn_1_A5B4 = .text:0x0000A5B4; // type:function size:0x9C -fn_1_A650 = .text:0x0000A650; // type:function size:0x2D8 -fn_1_A928 = .text:0x0000A928; // type:function size:0x2DC -fn_1_AC04 = .text:0x0000AC04; // type:function size:0x1E0 -fn_1_ADE4 = .text:0x0000ADE4; // type:function size:0xF0 -fn_1_AED4 = .text:0x0000AED4; // type:function size:0x50 -fn_1_AF24 = .text:0x0000AF24; // type:function size:0x584 -fn_1_B4A8 = .text:0x0000B4A8; // type:function size:0x5D8 -fn_1_BA80 = .text:0x0000BA80; // type:function size:0x33C -fn_1_BDBC = .text:0x0000BDBC; // type:function size:0x274 -fn_1_C030 = .text:0x0000C030; // type:function size:0x7C -fn_1_C0AC = .text:0x0000C0AC; // type:function size:0x44C -fn_1_C4F8 = .text:0x0000C4F8; // type:function size:0x434 -fn_1_C92C = .text:0x0000C92C; // type:function size:0x204 -fn_1_CB30 = .text:0x0000CB30; // type:function size:0x790 -fn_1_D2C0 = .text:0x0000D2C0; // type:function size:0xB0C -fn_1_DDCC = .text:0x0000DDCC; // type:function size:0x720 -fn_1_E4EC = .text:0x0000E4EC; // type:function size:0x9C -fn_1_E588 = .text:0x0000E588; // type:function size:0xCCC -fn_1_F254 = .text:0x0000F254; // type:function size:0x924 -fn_1_FB78 = .text:0x0000FB78; // type:function size:0x258 -fn_1_FDD0 = .text:0x0000FDD0; // type:function size:0x958 -fn_1_10728 = .text:0x00010728; // type:function size:0x7C -fn_1_107A4 = .text:0x000107A4; // type:function size:0x164 -fn_1_10908 = .text:0x00010908; // type:function size:0x1B8 -fn_1_10AC0 = .text:0x00010AC0; // type:function size:0xA4 -fn_1_10B64 = .text:0x00010B64; // type:function size:0xF4 -fn_1_10C58 = .text:0x00010C58; // type:function size:0x80 -fn_1_10CD8 = .text:0x00010CD8; // type:function size:0x80 -fn_1_10D58 = .text:0x00010D58; // type:function size:0x28 -fn_1_10D80 = .text:0x00010D80; // type:function size:0x20 -fn_1_10DA0 = .text:0x00010DA0; // type:function size:0xD8 -fn_1_10E78 = .text:0x00010E78; // type:function size:0xC8 -fn_1_10F40 = .text:0x00010F40; // type:function size:0xBC -fn_1_10FFC = .text:0x00010FFC; // type:function size:0x40 -fn_1_1103C = .text:0x0001103C; // type:function size:0x24 -fn_1_11060 = .text:0x00011060; // type:function size:0x1C0 -fn_1_11220 = .text:0x00011220; // type:function size:0x84 -fn_1_112A4 = .text:0x000112A4; // type:function size:0xD4 -fn_1_11378 = .text:0x00011378; // type:function size:0x58 -fn_1_113D0 = .text:0x000113D0; // type:function size:0x15C -fn_1_1152C = .text:0x0001152C; // type:function size:0x21C -fn_1_11748 = .text:0x00011748; // type:function size:0x204 -fn_1_1194C = .text:0x0001194C; // type:function size:0x54 -fn_1_119A0 = .text:0x000119A0; // type:function size:0x304 -fn_1_11CA4 = .text:0x00011CA4; // type:function size:0x304 -fn_1_11FA8 = .text:0x00011FA8; // type:function size:0x340 -fn_1_122E8 = .text:0x000122E8; // type:function size:0xC4 +fn_1_524C = .text:0x00005350; // type:function size:0x14BC +fn_1_66F8 = .text:0x0000680C; // type:function size:0x140 +fn_1_6804 = .text:0x0000694C; // type:function size:0xC10 +fn_1_7414 = .text:0x0000755C; // type:function size:0x340 +fn_1_7754 = .text:0x0000789C; // type:function size:0x3A4 +fn_1_7C00 = .text:0x00007C40; // type:function size:0x16C +fn_1_7D6C = .text:0x00007DAC; // type:function size:0xA0 +fn_1_7E0C = .text:0x00007E4C; // type:function size:0x224 +fn_1_8030 = .text:0x00008070; // type:function size:0x2DC +fn_1_830C = .text:0x0000834C; // type:function size:0x2C +fn_1_8338 = .text:0x00008378; // type:function size:0x518 +fn_1_8850 = .text:0x00008890; // type:function size:0x2C +fn_1_887C = .text:0x000088BC; // type:function size:0x28 +fn_1_88A4 = .text:0x000088E4; // type:function size:0x274 +fn_1_8B18 = .text:0x00008B58; // type:function size:0x2C +fn_1_8B44 = .text:0x00008B84; // type:function size:0x2C +fn_1_8B70 = .text:0x00008BB0; // type:function size:0x24 +fn_1_8B94 = .text:0x00008BD4; // type:function size:0x2BC +fn_1_8E50 = .text:0x00008E90; // type:function size:0x500 +fn_1_9350 = .text:0x00009390; // type:function size:0x480 +fn_1_97D0 = .text:0x00009810; // type:function size:0x80C +fn_1_9FDC = .text:0x0000A01C; // type:function size:0x28 +fn_1_A004 = .text:0x0000A044; // type:function size:0x28 +fn_1_A02C = .text:0x0000A06C; // type:function size:0x21C +fn_1_A248 = .text:0x0000A288; // type:function size:0x194 +fn_1_A3DC = .text:0x0000A41C; // type:function size:0x198 +fn_1_A574 = .text:0x0000A5B4; // type:function size:0x9C +fn_1_A610 = .text:0x0000A650; // type:function size:0x2D8 +fn_1_A8E8 = .text:0x0000A928; // type:function size:0x2DC +fn_1_ABC4 = .text:0x0000AC04; // type:function size:0x1E0 +fn_1_ADA4 = .text:0x0000ADE4; // type:function size:0xF0 +fn_1_AE94 = .text:0x0000AED4; // type:function size:0x50 +fn_1_AEE4 = .text:0x0000AF24; // type:function size:0x584 +fn_1_B468 = .text:0x0000B4A8; // type:function size:0x5D8 +fn_1_BA40 = .text:0x0000BA80; // type:function size:0x33C +fn_1_BD7C = .text:0x0000BDBC; // type:function size:0x274 +fn_1_BFF0 = .text:0x0000C030; // type:function size:0x7C +fn_1_C06C = .text:0x0000C0AC; // type:function size:0x44C +fn_1_C4B8 = .text:0x0000C4F8; // type:function size:0x434 +fn_1_C8EC = .text:0x0000C92C; // type:function size:0x204 +fn_1_CAF0 = .text:0x0000CB30; // type:function size:0x790 +fn_1_D280 = .text:0x0000D2C0; // type:function size:0xB0C +fn_1_DD8C = .text:0x0000DDCC; // type:function size:0x720 +fn_1_E4AC = .text:0x0000E4EC; // type:function size:0x9C +fn_1_E548 = .text:0x0000E588; // type:function size:0xCCC +fn_1_F214 = .text:0x0000F254; // type:function size:0x924 +fn_1_FB38 = .text:0x0000FB78; // type:function size:0x258 +fn_1_FD90 = .text:0x0000FDD0; // type:function size:0x958 +fn_1_106E8 = .text:0x00010728; // type:function size:0x7C +fn_1_10764 = .text:0x000107A4; // type:function size:0x164 +fn_1_108C8 = .text:0x00010908; // type:function size:0x1B8 +fn_1_10A80 = .text:0x00010AC0; // type:function size:0xA4 +fn_1_10B24 = .text:0x00010B64; // type:function size:0xF4 +fn_1_10C18 = .text:0x00010C58; // type:function size:0x80 +fn_1_10C98 = .text:0x00010CD8; // type:function size:0x80 +fn_1_10D18 = .text:0x00010D58; // type:function size:0x28 +fn_1_10D40 = .text:0x00010D80; // type:function size:0x20 +fn_1_10D60 = .text:0x00010DA0; // type:function size:0xD8 +fn_1_10E38 = .text:0x00010E78; // type:function size:0xC8 +fn_1_10F00 = .text:0x00010F40; // type:function size:0xBC +fn_1_10FBC = .text:0x00010FFC; // type:function size:0x40 +fn_1_10FFC = .text:0x0001103C; // type:function size:0x24 +fn_1_11020 = .text:0x00011060; // type:function size:0x1C0 +fn_1_111E0 = .text:0x00011220; // type:function size:0x84 +fn_1_11264 = .text:0x000112A4; // type:function size:0xD4 +fn_1_11338 = .text:0x00011378; // type:function size:0x58 +fn_1_11390 = .text:0x000113D0; // type:function size:0x15C +fn_1_114EC = .text:0x0001152C; // type:function size:0x21C +fn_1_11708 = .text:0x00011748; // type:function size:0x204 +fn_1_1190C = .text:0x0001194C; // type:function size:0x54 +fn_1_11960 = .text:0x000119A0; // type:function size:0x304 +fn_1_11C64 = .text:0x00011CA4; // type:function size:0x304 +fn_1_11F68 = .text:0x00011FA8; // type:function size:0x340 +fn_1_122A8 = .text:0x000122E8; // type:function size:0xC4 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -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_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0x8 data:double -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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x38 data:4byte -lbl_1_data_0 = .data:0x00000000; // type:object size:0x22 data:string +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +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_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x38 scope:local data:4byte +lbl_1_data_0 = .data:0x00000000; // type:object size:0x22 scope:local data:string lbl_1_data_22 = .data:0x00000022; // type:object size:0xA lbl_1_data_2C = .data:0x0000002C; // type:object size:0x18 lbl_1_data_44 = .data:0x00000044; // type:object size:0x6 @@ -210,25 +210,26 @@ lbl_1_data_56 = .data:0x00000056; // type:object size:0xE data:wstring lbl_1_data_64 = .data:0x00000064; // type:object size:0x20 lbl_1_data_84 = .data:0x00000084; // type:object size:0x10 lbl_1_data_94 = .data:0x00000094; // type:object size:0xC -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA data:string -lbl_1_data_AA = .data:0x000000AA; // type:object size:0x6 +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xA scope:local data:string +lbl_1_data_AA = .data:0x000000AA; // type:object size:0x6 scope:local lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x4C0 -lbl_1_data_570 = .data:0x00000570; // type:object size:0x20 -lbl_1_data_590 = .data:0x00000590; // type:object size:0x20 -lbl_1_data_5B0 = .data:0x000005B0; // type:object size:0x3C data:string -lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x19 data:string -lbl_1_data_605 = .data:0x00000605; // type:object size:0x1A data:string -lbl_1_data_61F = .data:0x0000061F; // type:object size:0x3D -lbl_1_data_65C = .data:0x0000065C; // type:object size:0x20 data:4byte -lbl_1_data_67C = .data:0x0000067C; // type:object size:0x40 data:4byte -lbl_1_data_6BC = .data:0x000006BC; // type:object size:0x70 -lbl_1_data_72C = .data:0x0000072C; // type:object size:0x90 data:4byte -lbl_1_data_7BC = .data:0x000007BC; // type:object size:0x20 -lbl_1_data_7DC = .data:0x000007DC; // type:object size:0x8 data:4byte -lbl_1_data_7E4 = .data:0x000007E4; // type:object size:0x10 -lbl_1_data_7F4 = .data:0x000007F4; // type:object size:0x20 -lbl_1_data_814 = .data:0x00000814; // type:object size:0x4 data:4byte -lbl_1_data_818 = .data:0x00000818; // type:object size:0x4 data:4byte +lbl_1_data_3C8 = .data:0x00000570; // type:object size:0x20 +lbl_1_data_3E8 = .data:0x00000590; // type:object size:0x20 +lbl_1_data_5B0 = .data:0x000005B0; // type:object size:0x3C scope:local data:string +lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x19 scope:local data:string +lbl_1_data_605 = .data:0x00000605; // type:object size:0x1A scope:local data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x3D scope:local +lbl_1_data_4B4 = .data:0x0000065C; // type:object size:0x20 data:4byte +lbl_1_data_4D4 = .data:0x0000067C; // type:object size:0x40 data:4byte +lbl_1_data_514 = .data:0x000006BC; // type:object size:0x70 +lbl_1_data_584 = .data:0x0000072C; // type:object size:0x90 data:4byte +lbl_1_data_614 = .data:0x000007BC; // type:object size:0x20 +lbl_1_data_634 = .data:0x000007DC; // type:object size:0x8 data:4byte +lbl_1_data_63C = .data:0x000007E4; // type:object size:0x10 +lbl_1_data_64C = .data:0x000007F4; // type:object size:0x20 +lbl_1_data_66C = .data:0x00000814; // type:object size:0x4 data:4byte +lbl_1_data_670 = .data:0x00000818; // type:object size:0x4 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte diff --git a/configure.py b/configure.py index 2cde7dff..4e80312b 100644 --- a/configure.py +++ b/configure.py @@ -1540,9 +1540,9 @@ config.libs = [ Rel( "ztardll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/ztardll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/ztardll/font.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/ztardll/select.c"), + Object(Matching, "REL/ztardll/main.c"), + Object(Matching, "REL/ztardll/font.c"), + Object(Matching, "REL/ztardll/select.c"), }, ), ] diff --git a/src/REL/ztardll/font.c b/src/REL/ztardll/font.c index 9ee3d56c..8dbfe634 100644 --- a/src/REL/ztardll/font.c +++ b/src/REL/ztardll/font.c @@ -56,10 +56,32 @@ s32 lbl_1_data_B0[0xC6] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0B), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0C), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00) }; #elif VERSION_PAL - +s32 lbl_1_data_B0[0x130] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0x00140025, 0x00140026, 0x00140027, 0x00140028, 0x00140029, 0x0014002A, 0x0014002B, 0x0014002C, 0x0014002D, 0x0014002E, + 0x00140025, 0x00140025, 0x00140025, 0x0014002F, 0x00140025, 0x00140025, 0x00140025, 0x00140035, 0x00140036, 0x00140037, 0x00140038, 0x00140039, + 0x0014003A, 0x0014003B, 0x0014003C, 0x0014003D, 0x0014003E, 0x0014003F, 0x00140040, 0x00140041, 0x00140042, 0x00140043, 0x00140044, 0x00140045, + 0x00140046, 0x00140047, 0x00140048, 0x00140049, 0x0014004A, 0x0014004B, 0x0014004C, 0x0014004D, 0x0014004E, 0x00140043, 0x00140032, 0x00140043, + 0x00140043, 0x00140043, 0x00140043, 0x0014004F, 0x00140050, 0x00140051, 0x00140052, 0x00140053, 0x00140054, 0x00140055, 0x00140056, 0x00140057, + 0x00140058, 0x00140059, 0x0014005A, 0x0014005B, 0x0014005C, 0x0014005D, 0x0014005E, 0x0014005F, 0x00140060, 0x00140061, 0x00140062, 0x00140063, + 0x00140064, 0x00140065, 0x00140066, 0x00140067, 0x00140068, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x0014002F, 0x00140033, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140069, 0x0014006A, 0x0014006B, 0x0014006C, 0x0014006D, 0x0014006E, 0x0014006F, 0x00140070, 0x00140071, + 0x00140072, 0x00140073, 0x00140074, 0x00140075, 0x00140076, 0x00140077, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140030, 0x00140031, 0x00140025, 0x00140025, 0x0014008F, 0x0014008E, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140078, 0x00140079, 0x0014007A, 0x0014007B, 0x0014007C, + 0x0014007D, 0x0014007E, 0x0014007F, 0x00140080, 0x00140081, 0x00140082, 0x00140083, 0x00140084, 0x00140085, 0x00140086, 0x00140087, 0x00140088, + 0x00140089, 0x0014008A, 0x0014008B, 0x0014008C, 0x0014008D, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, + 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025, 0x00140025 }; #else -s32 lbl_1_data_B0[0x132] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x00150000, 0x00150001, 0x00150002, 0x00150003, 0x00150004, 0x00150005, 0x00150006, 0x00150007, 0x00150008, 0x00150009, +s32 lbl_1_data_B0[0x132] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0x00150000, 0x00150001, 0x00150002, 0x00150003, 0x00150004, 0x00150005, 0x00150006, 0x00150007, 0x00150008, 0x00150009, 0x0013000A, 0x0013000A, 0x0013000A, 0x0015000A, 0x0013000A, 0x0013000A, 0x0013000A, 0x00130014, 0x00130015, 0x00130016, 0x00130017, 0x00130018, 0x00130019, 0x001500AE, 0x0013001B, 0x0013001C, 0x0013001D, 0x0013001E, 0x0013001F, 0x00130020, 0x00130021, 0x001500AF, 0x00130023, 0x00130024, 0x00130025, 0x00130026, 0x00130027, 0x00130028, 0x00130029, 0x0013002A, 0x0013002B, 0x0013002C, 0x0013002D, 0x00130022, 0x00130022, 0x00130022, @@ -97,6 +119,7 @@ s32 fn_1_7754(SeqWork *work, char *mess) AnimData **var_r21; s16 var_r20; s16 var_r19; + s32 var_r19_2; var_r27 = lbl_1_data_B0; for (var_r25 = 0; var_r25 < 0x10; var_r25++) { @@ -114,6 +137,46 @@ s32 fn_1_7754(SeqWork *work, char *mess) if (var_r31[0] == 0x20 || var_r31[0] == 0x10) { var_r30 += VERSION_JP ? 0x1C : 0xE; } +#if VERSION_PAL + else if (*var_r31 >= 0x30) { + var_r19_2 = var_r27[*var_r31]; + var_r21[var_r28] = HuSprAnimReadFile(var_r19_2); + var_r22[var_r28] = var_r30; + if ((*var_r31 >= 0x61) && (*var_r31 <= 0x7A)) { + var_r29[var_r28] = 2; + var_r30 += 0x12; + } + else if ((*var_r31 == 0xC2) || (*var_r31 == 0xC3) || (*var_r31 == 0xC7)) { + var_r29[var_r28] = 0; + var_r30 += 0x12; + } + else if (*var_r31 == 0xC6) { + var_r29[var_r28] = 0; + var_r30 += 0x18; + } + else if (*var_r31 == 0x5C) { + var_r29[var_r28] = 0; + var_r30 += 8; + } + else if ((*var_r31 >= 0x90) && (*var_r31 <= 0x9F)) { + var_r29[var_r28] = -2; + var_r30 += 0x18; + } + else if ((*var_r31 >= 0xD0) && (*var_r31 <= 0xEF)) { + var_r29[var_r28] = -2; + var_r30 += 0x12; + } + else if ((*var_r31 == 0x3D) || (*var_r31 == 0x84)) { + var_r29[var_r28] = 0; + var_r30 += 0x14; + } + else { + var_r29[var_r28] = 0; + var_r30 += 0x1C; + } + var_r28++; + } +#else else if (var_r31[0] < 0x30) { } else if (var_r31[0] == 0x80) { @@ -180,6 +243,7 @@ s32 fn_1_7754(SeqWork *work, char *mess) } var_r28++; } +#endif } var_r20 = HuSprGrpCreate(var_r28); work->spr_grp[var_r25] = var_r20; diff --git a/src/REL/ztardll/main.c b/src/REL/ztardll/main.c index 462a3d62..e1e91168 100644 --- a/src/REL/ztardll/main.c +++ b/src/REL/ztardll/main.c @@ -13,6 +13,8 @@ #include "REL/ztardll.h" +extern s32 charVoiceGroupStat[8]; + void fn_1_1774(void); void fn_1_1CF0(void); void fn_1_1DA0(void); @@ -1106,7 +1108,7 @@ void fn_1_51BC(s16 arg0) while (WipeStatGet() != 0) { HuPrcVSleep(); } -#if VERSION_JP +#if !VERSION_ENG if ((GWPlayerCfg->character >= 8) && (GWPlayerCfg->character >= 8) && (GWPlayerCfg->character >= 8) && (GWPlayerCfg->character >= 8)) { msmMusStopAll(1, 0); msmSeStopAll(1, 0); @@ -1122,6 +1124,11 @@ void fn_1_51BC(s16 arg0) } } msmSysDelGroupBase(0); +#if VERSION_PAL + for (var_r31 = 0; var_r31 < 8; var_r31++) { + charVoiceGroupStat[var_r31] = 0; + } +#endif } #endif var_r30 = omOvlHisGet(0); @@ -1258,6 +1265,9 @@ s32 fn_1_524C(s32 arg0) var_r22 = &winData[var_r24]; HuWinPriSet(var_r24, 5); HuWinPosSet(var_r24, (576.0f - var_r22->w) / 2, 300.0f); +#if VERSION_PAL + HuWinScaleSet(var_r24, 0.95f, 1.0f); +#endif HuWinAttrSet(var_r24, 0x800); var_r30 = 0; var_r23 = 0; @@ -1419,6 +1429,11 @@ void fn_1_66F8(void) for (var_r31 = 0; var_r31 < 4; var_r31++) { GWPlayerCfg[var_r31].character = -1; } +#if VERSION_PAL + for (var_r31 = 0; var_r31 < 8; var_r31++) { + charVoiceGroupStat[var_r31] = 0; + } +#endif mgPracticeEnableF = 0; omOvlReturnEx(1, 1); HuPrcEnd(); From 56f44900f051e3bc4315f2d5749b7ec6f250e68c Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 16 Dec 2024 02:52:42 +0100 Subject: [PATCH 069/178] Fix readme --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3415a3d7..88de0b1a 100644 --- a/README.md +++ b/README.md @@ -19,9 +19,9 @@ Supported versions: - `GMPE01_00`: Rev 0 (USA) - `GMPE01_01`: Rev 1 (USA) -- `GMPP01_00`, Rev 0 (PAL) -- `GMPP01_02`, REV 2 (PAL) -- `GMPJ01_00`, REV 0 (JP) +- `GMPP01_00`: Rev 0 (PAL) +- `GMPP01_02`: REV 2 (PAL) +- `GMPJ01_00`: REV 0 (JP) Dependencies ============ From 177c1957ccac923443ef3ac0c7f50cf8dbf6dbc9 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 16 Dec 2024 03:21:05 +0100 Subject: [PATCH 070/178] Split musyx function in PAL --- config/GMPP01_00/splits.txt | 87 ++++++++++++++++++++++++++++++++++++ config/GMPP01_00/symbols.txt | 54 +++++++++++----------- 2 files changed, 114 insertions(+), 27 deletions(-) diff --git a/config/GMPP01_00/splits.txt b/config/GMPP01_00/splits.txt index 3706997a..e1da1fa4 100644 --- a/config/GMPP01_00/splits.txt +++ b/config/GMPP01_00/splits.txt @@ -565,3 +565,90 @@ dolphin/os/OS.c: .data start:0x801588E8 end:0x80158AA8 .bss start:0x801C26A0 end:0x801C26F0 .sbss start:0x801F1668 end:0x801F1698 + +musyx/runtime/seq.c: + .text start:0x800F26B0 end:0x800F6620 + +musyx/runtime/synth.c: + .text start:0x800F6620 end:0x800F997C + +musyx/runtime/seq_api.c: + .text start:0x800F997C end:0x800F9BFC + +musyx/runtime/snd_synthapi.c: + .text start:0x800F9BFC end:0x800FA37C + +musyx/runtime/stream.c: + .text start:0x800FA37C end:0x800FDEE8 + +musyx/runtime/synthdata.c: + .text start:0x800FDEE8 end:0x800FFC78 + +musyx/runtime/synthmacros.c: + .text start:0x800FFC78 end:0x801049D0 + +musyx/runtime/synthvoice.c: + .text start:0x801049D0 end:0x80106460 + +musyx/runtime/synth_ac.c: + .text start:0x80106460 end:0x80106580 + +musyx/runtime/synth_adsr.c: + .text start:0x80106580 end:0x80106D40 + +musyx/runtime/synth_vsamples.c: + .text start:0x80106D40 end:0x801074C8 + +musyx/runtime/s_data.c: + .text start:0x801074C8 end:0x80108020 + +musyx/runtime/hw_dspctrl.c: + .text start:0x80108020 end:0x8010B434 + +musyx/runtime/hw_volconv.c: + .text start:0x8010B434 end:0x8010BB24 + +musyx/runtime/snd3d.c: + .text start:0x8010BB24 end:0x8010DEF4 + +musyx/runtime/snd_init.c: + .text start:0x8010DEF4 end:0x8010E048 + +musyx/runtime/snd_math.c: + .text start:0x8010E048 end:0x8010E408 + +musyx/runtime/snd_midictrl.c: + .text start:0x8010E408 end:0x801100DC + +musyx/runtime/snd_service.c: + .text start:0x801100DC end:0x80110288 + +musyx/runtime/hardware.c: + .text start:0x80110288 end:0x8011128C + +musyx/runtime/hw_aramdma.c: + .text start:0x8011128C end:0x80111F00 + +musyx/runtime/hw_dolphin.c: + .text start:0x80111F00 end:0x801123F8 + +musyx/runtime/hw_memory.c: + .text start:0x801123F8 end:0x8011244C + +musyx/runtime/CheapReverb/creverb_fx.c: + .text start:0x8011244C end:0x80112508 + +musyx/runtime/CheapReverb/creverb.c: + .text start:0x80112508 end:0x80112DC4 + +musyx/runtime/StdReverb/reverb_fx.c: + .text start:0x80112DC4 end:0x80112E84 + +musyx/runtime/StdReverb/reverb.c: + .text start:0x80112E84 end:0x80113BC8 + +musyx/runtime/Delay/delay_fx.c: + .text start:0x80113BC8 end:0x80113F74 + +musyx/runtime/Chorus/chorus_fx.c: + .text start:0x80113F74 end:0x801147DC diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index a679c466..b75f1161 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -3091,33 +3091,33 @@ fn_800F251C = .text:0x800F251C; // type:function size:0x10 fn_800F252C = .text:0x800F252C; // type:function size:0xC fn_800F2538 = .text:0x800F2538; // type:function size:0xBC fn_800F25F4 = .text:0x800F25F4; // type:function size:0xBC -fn_800F26B0 = .text:0x800F26B0; // type:function size:0x68 -fn_800F2718 = .text:0x800F2718; // type:function size:0xAC4 -fn_800F31DC = .text:0x800F31DC; // type:function size:0x64 -fn_800F3240 = .text:0x800F3240; // type:function size:0x27C -fn_800F34BC = .text:0x800F34BC; // type:function size:0x2B0 -fn_800F376C = .text:0x800F376C; // type:function size:0x90 -fn_800F37FC = .text:0x800F37FC; // type:function size:0xE4 -fn_800F38E0 = .text:0x800F38E0; // type:function size:0x108 -fn_800F39E8 = .text:0x800F39E8; // type:function size:0xBC -fn_800F3AA4 = .text:0x800F3AA4; // type:function size:0x1CC -fn_800F3C70 = .text:0x800F3C70; // type:function size:0xB58 -fn_800F47C8 = .text:0x800F47C8; // type:function size:0x218 -fn_800F49E0 = .text:0x800F49E0; // type:function size:0xA94 -fn_800F5474 = .text:0x800F5474; // type:function size:0x174 -fn_800F55E8 = .text:0x800F55E8; // type:function size:0x49C -fn_800F5A84 = .text:0x800F5A84; // type:function size:0x9F4 -fn_800F6478 = .text:0x800F6478; // type:function size:0x1A8 -fn_800F6620 = .text:0x800F6620; // type:function size:0x44 -fn_800F6664 = .text:0x800F6664; // type:function size:0x34 -fn_800F6698 = .text:0x800F6698; // type:function size:0x78 -fn_800F6710 = .text:0x800F6710; // type:function size:0x2A0 -fn_800F69B0 = .text:0x800F69B0; // type:function size:0x3C0 -fn_800F6D70 = .text:0x800F6D70; // type:function size:0x25C -fn_800F6FCC = .text:0x800F6FCC; // type:function size:0x45C -fn_800F7428 = .text:0x800F7428; // type:function size:0x744 -fn_800F7B6C = .text:0x800F7B6C; // type:function size:0x6FC -fn_800F8268 = .text:0x800F8268; // type:function size:0x150 +seqGetPrivateId = .text:0x800F26B0; // type:function size:0x68 +seqStartPlay = .text:0x800F2718; // type:function size:0xAC4 +StartPause = .text:0x800F31DC; // type:function size:0x64 +seqPause = .text:0x800F3240; // type:function size:0x27C +seqStop = .text:0x800F34BC; // type:function size:0x2B0 +seqKillInstancesByGroupID = .text:0x800F376C; // type:function size:0x90 +seqSpeed = .text:0x800F37FC; // type:function size:0xE4 +seqContinue = .text:0x800F38E0; // type:function size:0x108 +seqMute = .text:0x800F39E8; // type:function size:0xBC +seqVolume = .text:0x800F3AA4; // type:function size:0x1CC +seqCrossFade = .text:0x800F3C70; // type:function size:0xB58 +GenerateNextTrackEvent = .text:0x800F47C8; // type:function size:0x218 +HandleEvent = .text:0x800F49E0; // type:function size:0xA94 +InitTrackEvents = .text:0x800F5474; // type:function size:0x174 +HandleTrackEvents = .text:0x800F55E8; // type:function size:0x49C +seqHandle = .text:0x800F5A84; // type:function size:0x9F4 +seqInit = .text:0x800F6478; // type:function size:0x1A8 +synthSetBpm = .text:0x800F6620; // type:function size:0x44 +synthGetTicksPerSecond = .text:0x800F6664; // type:function size:0x34 +synthInitPortamento = .text:0x800F6698; // type:function size:0x78 +do_voice_portamento = .text:0x800F6710; // type:function size:0x2A0 +StartLayer = .text:0x800F69B0; // type:function size:0x3C0 +StartKeymap = .text:0x800F6D70; // type:function size:0x25C +synthStartSound = .text:0x800F6FCC; // type:function size:0x45C +LowPrecisionHandler = .text:0x800F7428; // type:function size:0x744 +ZeroOffsetHandler = .text:0x800F7B6C; // type:function size:0x6FC +synthAddJob = .text:0x800F8268; // type:function size:0x150 fn_800F83B8 = .text:0x800F83B8; // type:function size:0x64 fn_800F841C = .text:0x800F841C; // type:function size:0x44 fn_800F8460 = .text:0x800F8460; // type:function size:0x28 From c9e1ed75990a03a1eb74d9aeacfe895f27f17298 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 16 Dec 2024 03:24:17 +0100 Subject: [PATCH 071/178] Properly name musyx functions in PAL splits --- config/GMPP01_00/symbols.txt | 706 +++++++++++++++++------------------ 1 file changed, 353 insertions(+), 353 deletions(-) diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index b75f1161..83524e64 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -3118,360 +3118,360 @@ synthStartSound = .text:0x800F6FCC; // type:function size:0x45C LowPrecisionHandler = .text:0x800F7428; // type:function size:0x744 ZeroOffsetHandler = .text:0x800F7B6C; // type:function size:0x6FC synthAddJob = .text:0x800F8268; // type:function size:0x150 -fn_800F83B8 = .text:0x800F83B8; // type:function size:0x64 -fn_800F841C = .text:0x800F841C; // type:function size:0x44 -fn_800F8460 = .text:0x800F8460; // type:function size:0x28 -fn_800F8488 = .text:0x800F8488; // type:function size:0x510 -fn_800F8998 = .text:0x800F8998; // type:function size:0x34 -fn_800F89CC = .text:0x800F89CC; // type:function size:0xC8 -fn_800F8A94 = .text:0x800F8A94; // type:function size:0xE4 -fn_800F8B78 = .text:0x800F8B78; // type:function size:0xE4 -fn_800F8C5C = .text:0x800F8C5C; // type:function size:0x84 -fn_800F8CE0 = .text:0x800F8CE0; // type:function size:0x88 -fn_800F8D68 = .text:0x800F8D68; // type:function size:0x530 -fn_800F9298 = .text:0x800F9298; // type:function size:0x54 -fn_800F92EC = .text:0x800F92EC; // type:function size:0x28 -fn_800F9314 = .text:0x800F9314; // type:function size:0xD0 -fn_800F93E4 = .text:0x800F93E4; // type:function size:0x574 -fn_800F9958 = .text:0x800F9958; // type:function size:0x24 -fn_800F997C = .text:0x800F997C; // type:function size:0x30 -fn_800F99AC = .text:0x800F99AC; // type:function size:0x38 -fn_800F99E4 = .text:0x800F99E4; // type:function size:0x38 -fn_800F9A1C = .text:0x800F9A1C; // type:function size:0x48 -fn_800F9A64 = .text:0x800F9A64; // type:function size:0x38 -fn_800F9A9C = .text:0x800F9A9C; // type:function size:0x58 -fn_800F9AF4 = .text:0x800F9AF4; // type:function size:0x68 -fn_800F9B5C = .text:0x800F9B5C; // type:function size:0x84 -fn_800F9BE0 = .text:0x800F9BE0; // type:function size:0x1C -fn_800F9BFC = .text:0x800F9BFC; // type:function size:0x60 -fn_800F9C5C = .text:0x800F9C5C; // type:function size:0x60 -fn_800F9CBC = .text:0x800F9CBC; // type:function size:0x40 -fn_800F9CFC = .text:0x800F9CFC; // type:function size:0xE0 -fn_800F9DDC = .text:0x800F9DDC; // type:function size:0x40 -fn_800F9E1C = .text:0x800F9E1C; // type:function size:0x50 -fn_800F9E6C = .text:0x800F9E6C; // type:function size:0x60 -fn_800F9ECC = .text:0x800F9ECC; // type:function size:0x94 -fn_800F9F60 = .text:0x800F9F60; // type:function size:0xEC -fn_800FA04C = .text:0x800FA04C; // type:function size:0x158 -fn_800FA1A4 = .text:0x800FA1A4; // type:function size:0xA8 -fn_800FA24C = .text:0x800FA24C; // type:function size:0xF0 -fn_800FA33C = .text:0x800FA33C; // type:function size:0x20 -fn_800FA35C = .text:0x800FA35C; // type:function size:0x20 -fn_800FA37C = .text:0x800FA37C; // type:function size:0xBC -fn_800FA438 = .text:0x800FA438; // type:function size:0x8C -fn_800FA4C4 = .text:0x800FA4C4; // type:function size:0x8AC -fn_800FAD70 = .text:0x800FAD70; // type:function size:0x4 -fn_800FAD74 = .text:0x800FAD74; // type:function size:0x84 -fn_800FADF8 = .text:0x800FADF8; // type:function size:0x160 -fn_800FAF58 = .text:0x800FAF58; // type:function size:0x2C4 -fn_800FB21C = .text:0x800FB21C; // type:function size:0x34 -fn_800FB250 = .text:0x800FB250; // type:function size:0x44 -fn_800FB294 = .text:0x800FB294; // type:function size:0x130 -fn_800FB3C4 = .text:0x800FB3C4; // type:function size:0x458 -fn_800FB81C = .text:0x800FB81C; // type:function size:0x44 -fn_800FB860 = .text:0x800FB860; // type:function size:0x6E8 -fn_800FBF48 = .text:0x800FBF48; // type:function size:0x560 -fn_800FC4A8 = .text:0x800FC4A8; // type:function size:0x654 -fn_800FCAFC = .text:0x800FCAFC; // type:function size:0x6B8 -fn_800FD1B4 = .text:0x800FD1B4; // type:function size:0x634 -fn_800FD7E8 = .text:0x800FD7E8; // type:function size:0x700 -fn_800FDEE8 = .text:0x800FDEE8; // type:function size:0x1F0 -fn_800FE0D8 = .text:0x800FE0D8; // type:function size:0x17C -fn_800FE254 = .text:0x800FE254; // type:function size:0x248 -fn_800FE49C = .text:0x800FE49C; // type:function size:0x1C4 -fn_800FE660 = .text:0x800FE660; // type:function size:0x204 -fn_800FE864 = .text:0x800FE864; // type:function size:0x17C -fn_800FE9E0 = .text:0x800FE9E0; // type:function size:0x188 -fn_800FEB68 = .text:0x800FEB68; // type:function size:0x2C8 -fn_800FEE30 = .text:0x800FEE30; // type:function size:0xD8 -fn_800FEF08 = .text:0x800FEF08; // type:function size:0x98 -fn_800FEFA0 = .text:0x800FEFA0; // type:function size:0x11C -fn_800FF0BC = .text:0x800FF0BC; // type:function size:0x15C -fn_800FF218 = .text:0x800FF218; // type:function size:0x304 -fn_800FF51C = .text:0x800FF51C; // type:function size:0x284 -fn_800FF7A0 = .text:0x800FF7A0; // type:function size:0x10 -fn_800FF7B0 = .text:0x800FF7B0; // type:function size:0x8C -fn_800FF83C = .text:0x800FF83C; // type:function size:0x10 -fn_800FF84C = .text:0x800FF84C; // type:function size:0x128 -fn_800FF974 = .text:0x800FF974; // type:function size:0x10 -fn_800FF984 = .text:0x800FF984; // type:function size:0x5C -fn_800FF9E0 = .text:0x800FF9E0; // type:function size:0x5C -fn_800FFA3C = .text:0x800FFA3C; // type:function size:0x10 -fn_800FFA4C = .text:0x800FFA4C; // type:function size:0x7C -fn_800FFAC8 = .text:0x800FFAC8; // type:function size:0x10 -fn_800FFAD8 = .text:0x800FFAD8; // type:function size:0x9C -fn_800FFB74 = .text:0x800FFB74; // type:function size:0xE4 -fn_800FFC58 = .text:0x800FFC58; // type:function size:0x20 -fn_800FFC78 = .text:0x800FFC78; // type:function size:0x2F0 -fn_800FFF68 = .text:0x800FFF68; // type:function size:0xD0 -fn_80100038 = .text:0x80100038; // type:function size:0x154 -fn_8010018C = .text:0x8010018C; // type:function size:0x18C -fn_80100318 = .text:0x80100318; // type:function size:0xD8 -fn_801003F0 = .text:0x801003F0; // type:function size:0x1FC -fn_801005EC = .text:0x801005EC; // type:function size:0x17C -fn_80100768 = .text:0x80100768; // type:function size:0x1A0 -fn_80100908 = .text:0x80100908; // type:function size:0x258 -fn_80100B60 = .text:0x80100B60; // type:function size:0x12C -fn_80100C8C = .text:0x80100C8C; // type:function size:0x27C -fn_80100F08 = .text:0x80100F08; // type:function size:0x9C -fn_80100FA4 = .text:0x80100FA4; // type:function size:0x9C -fn_80101040 = .text:0x80101040; // type:function size:0x134 -fn_80101174 = .text:0x80101174; // type:function size:0x130 -fn_801012A4 = .text:0x801012A4; // type:function size:0x13C -fn_801013E0 = .text:0x801013E0; // type:function size:0x19C -fn_8010157C = .text:0x8010157C; // type:function size:0x104 -fn_80101680 = .text:0x80101680; // type:function size:0x104 -fn_80101784 = .text:0x80101784; // type:function size:0x104 -fn_80101888 = .text:0x80101888; // type:function size:0x104 -fn_8010198C = .text:0x8010198C; // type:function size:0x104 -fn_80101A90 = .text:0x80101A90; // type:function size:0x104 -fn_80101B94 = .text:0x80101B94; // type:function size:0x104 -fn_80101C98 = .text:0x80101C98; // type:function size:0x104 -fn_80101D9C = .text:0x80101D9C; // type:function size:0x104 -fn_80101EA0 = .text:0x80101EA0; // type:function size:0x104 -fn_80101FA4 = .text:0x80101FA4; // type:function size:0x104 -fn_801020A8 = .text:0x801020A8; // type:function size:0x104 -fn_801021AC = .text:0x801021AC; // type:function size:0x104 -fn_801022B0 = .text:0x801022B0; // type:function size:0x17C -fn_8010242C = .text:0x8010242C; // type:function size:0x17C -fn_801025A8 = .text:0x801025A8; // type:function size:0x164 -fn_8010270C = .text:0x8010270C; // type:function size:0x68 -fn_80102774 = .text:0x80102774; // type:function size:0x220 -fn_80102994 = .text:0x80102994; // type:function size:0x14C -fn_80102AE0 = .text:0x80102AE0; // type:function size:0xBC -fn_80102B9C = .text:0x80102B9C; // type:function size:0x244 -fn_80102DE0 = .text:0x80102DE0; // type:function size:0x80 -fn_80102E60 = .text:0x80102E60; // type:function size:0xDC -fn_80102F3C = .text:0x80102F3C; // type:function size:0xF58 -fn_80103E94 = .text:0x80103E94; // type:function size:0x150 -fn_80103FE4 = .text:0x80103FE4; // type:function size:0xAC -fn_80104090 = .text:0x80104090; // type:function size:0xF0 -fn_80104180 = .text:0x80104180; // type:function size:0x108 -fn_80104288 = .text:0x80104288; // type:function size:0xA4 -fn_8010432C = .text:0x8010432C; // type:function size:0x108 -fn_80104434 = .text:0x80104434; // type:function size:0xFC -fn_80104530 = .text:0x80104530; // type:function size:0x438 -fn_80104968 = .text:0x80104968; // type:function size:0x68 -fn_801049D0 = .text:0x801049D0; // type:function size:0xE0 -fn_80104AB0 = .text:0x80104AB0; // type:function size:0x350 -fn_80104E00 = .text:0x80104E00; // type:function size:0x14 -fn_80104E14 = .text:0x80104E14; // type:function size:0x104 -fn_80104F18 = .text:0x80104F18; // type:function size:0x50 -fn_80104F68 = .text:0x80104F68; // type:function size:0x24C -fn_801051B4 = .text:0x801051B4; // type:function size:0x460 -fn_80105614 = .text:0x80105614; // type:function size:0x1C4 -fn_801057D8 = .text:0x801057D8; // type:function size:0x2A0 -fn_80105A78 = .text:0x80105A78; // type:function size:0xFC -fn_80105B74 = .text:0x80105B74; // type:function size:0x218 -fn_80105D8C = .text:0x80105D8C; // type:function size:0x234 -fn_80105FC0 = .text:0x80105FC0; // type:function size:0xC4 -fn_80106084 = .text:0x80106084; // type:function size:0x15C -fn_801061E0 = .text:0x801061E0; // type:function size:0x74 -fn_80106254 = .text:0x80106254; // type:function size:0x54 -fn_801062A8 = .text:0x801062A8; // type:function size:0x74 -fn_8010631C = .text:0x8010631C; // type:function size:0x144 -fn_80106460 = .text:0x80106460; // type:function size:0x3C -fn_8010649C = .text:0x8010649C; // type:function size:0xE4 -fn_80106580 = .text:0x80106580; // type:function size:0x58 -fn_801065D8 = .text:0x801065D8; // type:function size:0x26C -fn_80106844 = .text:0x80106844; // type:function size:0x28 -fn_8010686C = .text:0x8010686C; // type:function size:0x150 -fn_801069BC = .text:0x801069BC; // type:function size:0x168 -fn_80106B24 = .text:0x80106B24; // type:function size:0x198 -fn_80106CBC = .text:0x80106CBC; // type:function size:0x84 -fn_80106D40 = .text:0x80106D40; // type:function size:0xBC -fn_80106DFC = .text:0x80106DFC; // type:function size:0x248 -fn_80107044 = .text:0x80107044; // type:function size:0xA8 -fn_801070EC = .text:0x801070EC; // type:function size:0x1F8 -fn_801072E4 = .text:0x801072E4; // type:function size:0x1E4 -fn_801074C8 = .text:0x801074C8; // type:function size:0xC -fn_801074D4 = .text:0x801074D4; // type:function size:0x27C -fn_80107750 = .text:0x80107750; // type:function size:0x32C -fn_80107A7C = .text:0x80107A7C; // type:function size:0x33C -fn_80107DB8 = .text:0x80107DB8; // type:function size:0x14C -fn_80107F04 = .text:0x80107F04; // type:function size:0x11C -fn_80108020 = .text:0x80108020; // type:function size:0x3B4 -fn_801083D4 = .text:0x801083D4; // type:function size:0x38 -fn_8010840C = .text:0x8010840C; // type:function size:0xE0 -fn_801084EC = .text:0x801084EC; // type:function size:0x150 -fn_8010863C = .text:0x8010863C; // type:function size:0x20 -fn_8010865C = .text:0x8010865C; // type:function size:0xF4 -fn_80108750 = .text:0x80108750; // type:function size:0x48 -fn_80108798 = .text:0x80108798; // type:function size:0x74 -fn_8010880C = .text:0x8010880C; // type:function size:0xAC -fn_801088B8 = .text:0x801088B8; // type:function size:0x2DC -fn_80108B94 = .text:0x80108B94; // type:function size:0x258 -fn_80108DEC = .text:0x80108DEC; // type:function size:0x21B8 -fn_8010AFA4 = .text:0x8010AFA4; // type:function size:0x44 -fn_8010AFE8 = .text:0x8010AFE8; // type:function size:0xA0 -fn_8010B088 = .text:0x8010B088; // type:function size:0x60 -fn_8010B0E8 = .text:0x8010B0E8; // type:function size:0xC8 -fn_8010B1B0 = .text:0x8010B1B0; // type:function size:0xA8 -fn_8010B258 = .text:0x8010B258; // type:function size:0x84 -fn_8010B2DC = .text:0x8010B2DC; // type:function size:0x158 -fn_8010B434 = .text:0x8010B434; // type:function size:0x6F0 -fn_8010BB24 = .text:0x8010BB24; // type:function size:0x4B4 -fn_8010BFD8 = .text:0x8010BFD8; // type:function size:0x51C -fn_8010C4F4 = .text:0x8010C4F4; // type:function size:0x130 -fn_8010C624 = .text:0x8010C624; // type:function size:0x20 -fn_8010C644 = .text:0x8010C644; // type:function size:0x3F8 -fn_8010CA3C = .text:0x8010CA3C; // type:function size:0x50 -fn_8010CA8C = .text:0x8010CA8C; // type:function size:0xA8 -fn_8010CB34 = .text:0x8010CB34; // type:function size:0x5C -fn_8010CB90 = .text:0x8010CB90; // type:function size:0xFC -fn_8010CC8C = .text:0x8010CC8C; // type:function size:0x204 -fn_8010CE90 = .text:0x8010CE90; // type:function size:0x230 -fn_8010D0C0 = .text:0x8010D0C0; // type:function size:0xD0 -fn_8010D190 = .text:0x8010D190; // type:function size:0x14C -fn_8010D2DC = .text:0x8010D2DC; // type:function size:0x3B0 -fn_8010D68C = .text:0x8010D68C; // type:function size:0x82C -fn_8010DEB8 = .text:0x8010DEB8; // type:function size:0x38 -fn_8010DEF0 = .text:0x8010DEF0; // type:function size:0x4 -fn_8010DEF4 = .text:0x8010DEF4; // type:function size:0x118 -fn_8010E00C = .text:0x8010E00C; // type:function size:0x34 -fn_8010E040 = .text:0x8010E040; // type:function size:0x8 -fn_8010E048 = .text:0x8010E048; // type:function size:0xAC -fn_8010E0F4 = .text:0x8010E0F4; // type:function size:0xB4 -fn_8010E1A8 = .text:0x8010E1A8; // type:function size:0x64 -fn_8010E20C = .text:0x8010E20C; // type:function size:0x1FC -fn_8010E408 = .text:0x8010E408; // type:function size:0x24 -fn_8010E42C = .text:0x8010E42C; // type:function size:0x608 -fn_8010EA34 = .text:0x8010EA34; // type:function size:0x124 -fn_8010EB58 = .text:0x8010EB58; // type:function size:0xF0 -fn_8010EC48 = .text:0x8010EC48; // type:function size:0x2C4 -fn_8010EF0C = .text:0x8010EF0C; // type:function size:0x34 -fn_8010EF40 = .text:0x8010EF40; // type:function size:0x3C -fn_8010EF7C = .text:0x8010EF7C; // type:function size:0x98 -fn_8010F014 = .text:0x8010F014; // type:function size:0x114 -fn_8010F128 = .text:0x8010F128; // type:function size:0x3C -fn_8010F164 = .text:0x8010F164; // type:function size:0x3C -fn_8010F1A0 = .text:0x8010F1A0; // type:function size:0x4A0 -fn_8010F640 = .text:0x8010F640; // type:function size:0x48 -fn_8010F688 = .text:0x8010F688; // type:function size:0x48 -fn_8010F6D0 = .text:0x8010F6D0; // type:function size:0x48 -fn_8010F718 = .text:0x8010F718; // type:function size:0x48 -fn_8010F760 = .text:0x8010F760; // type:function size:0x48 -fn_8010F7A8 = .text:0x8010F7A8; // type:function size:0x48 -fn_8010F7F0 = .text:0x8010F7F0; // type:function size:0x48 -fn_8010F838 = .text:0x8010F838; // type:function size:0x48 -fn_8010F880 = .text:0x8010F880; // type:function size:0x48 -fn_8010F8C8 = .text:0x8010F8C8; // type:function size:0x48 -fn_8010F910 = .text:0x8010F910; // type:function size:0x48 -fn_8010F958 = .text:0x8010F958; // type:function size:0x48 -fn_8010F9A0 = .text:0x8010F9A0; // type:function size:0xB4 -fn_8010FA54 = .text:0x8010FA54; // type:function size:0xB4 -fn_8010FB08 = .text:0x8010FB08; // type:function size:0x284 -fn_8010FD8C = .text:0x8010FD8C; // type:function size:0x70 -fn_8010FDFC = .text:0x8010FDFC; // type:function size:0xFC -fn_8010FEF8 = .text:0x8010FEF8; // type:function size:0x1E4 -fn_801100DC = .text:0x801100DC; // type:function size:0x1C -fn_801100F8 = .text:0x801100F8; // type:function size:0x8C -fn_80110184 = .text:0x80110184; // type:function size:0xA4 -fn_80110228 = .text:0x80110228; // type:function size:0x10 -fn_80110238 = .text:0x80110238; // type:function size:0x48 -fn_80110280 = .text:0x80110280; // type:function size:0x8 -fn_80110288 = .text:0x80110288; // type:function size:0x154 -fn_801103DC = .text:0x801103DC; // type:function size:0xB8 -fn_80110494 = .text:0x80110494; // type:function size:0x34 -fn_801104C8 = .text:0x801104C8; // type:function size:0x8 -fn_801104D0 = .text:0x801104D0; // type:function size:0x8 -fn_801104D8 = .text:0x801104D8; // type:function size:0x20 -fn_801104F8 = .text:0x801104F8; // type:function size:0x8 -fn_80110500 = .text:0x80110500; // type:function size:0x14 -fn_80110514 = .text:0x80110514; // type:function size:0x1B4 -fn_801106C8 = .text:0x801106C8; // type:function size:0x50 -fn_80110718 = .text:0x80110718; // type:function size:0x1AC -fn_801108C4 = .text:0x801108C4; // type:function size:0x20 -fn_801108E4 = .text:0x801108E4; // type:function size:0x14 -fn_801108F8 = .text:0x801108F8; // type:function size:0x14 -fn_8011090C = .text:0x8011090C; // type:function size:0x14 -fn_80110920 = .text:0x80110920; // type:function size:0x14 -fn_80110934 = .text:0x80110934; // type:function size:0x3C -fn_80110970 = .text:0x80110970; // type:function size:0x28 -fn_80110998 = .text:0x80110998; // type:function size:0x78 -fn_80110A10 = .text:0x80110A10; // type:function size:0x2C -fn_80110A3C = .text:0x80110A3C; // type:function size:0x2C -fn_80110A68 = .text:0x80110A68; // type:function size:0x5C -fn_80110AC4 = .text:0x80110AC4; // type:function size:0x2C0 -fn_80110D84 = .text:0x80110D84; // type:function size:0x2C -fn_80110DB0 = .text:0x80110DB0; // type:function size:0x28 -fn_80110DD8 = .text:0x80110DD8; // type:function size:0x20 -fn_80110DF8 = .text:0x80110DF8; // type:function size:0x20 -fn_80110E18 = .text:0x80110E18; // type:function size:0x34 -fn_80110E4C = .text:0x80110E4C; // type:function size:0x34 -fn_80110E80 = .text:0x80110E80; // type:function size:0x2C -fn_80110EAC = .text:0x80110EAC; // type:function size:0xA4 -fn_80110F50 = .text:0x80110F50; // type:function size:0x90 -fn_80110FE0 = .text:0x80110FE0; // type:function size:0x20 -fn_80111000 = .text:0x80111000; // type:function size:0x20 -fn_80111020 = .text:0x80111020; // type:function size:0x24 -fn_80111044 = .text:0x80111044; // type:function size:0x4 -fn_80111048 = .text:0x80111048; // type:function size:0x5C -fn_801110A4 = .text:0x801110A4; // type:function size:0x24 -fn_801110C8 = .text:0x801110C8; // type:function size:0x20 -fn_801110E8 = .text:0x801110E8; // type:function size:0x94 -fn_8011117C = .text:0x8011117C; // type:function size:0x84 -fn_80111200 = .text:0x80111200; // type:function size:0x20 -fn_80111220 = .text:0x80111220; // type:function size:0x4 -fn_80111224 = .text:0x80111224; // type:function size:0x14 -fn_80111238 = .text:0x80111238; // type:function size:0xC -fn_80111244 = .text:0x80111244; // type:function size:0x28 -fn_8011126C = .text:0x8011126C; // type:function size:0x20 -fn_8011128C = .text:0x8011128C; // type:function size:0xA0 -fn_8011132C = .text:0x8011132C; // type:function size:0x1DC -fn_80111508 = .text:0x80111508; // type:function size:0x18 -fn_80111520 = .text:0x80111520; // type:function size:0x2EC -fn_8011180C = .text:0x8011180C; // type:function size:0x4 -fn_80111810 = .text:0x80111810; // type:function size:0x20 -fn_80111830 = .text:0x80111830; // type:function size:0x3BC -fn_80111BEC = .text:0x80111BEC; // type:function size:0x18 -fn_80111C04 = .text:0x80111C04; // type:function size:0xC4 -fn_80111CC8 = .text:0x80111CC8; // type:function size:0x108 -fn_80111DD0 = .text:0x80111DD0; // type:function size:0x38 -fn_80111E08 = .text:0x80111E08; // type:function size:0xF8 -fn_80111F00 = .text:0x80111F00; // type:function size:0xA8 -fn_80111FA8 = .text:0x80111FA8; // type:function size:0x10 -fn_80111FB8 = .text:0x80111FB8; // type:function size:0x64 -fn_8011201C = .text:0x8011201C; // type:function size:0xC8 -fn_801120E4 = .text:0x801120E4; // type:function size:0x20 -fn_80112104 = .text:0x80112104; // type:function size:0x34 -fn_80112138 = .text:0x80112138; // type:function size:0x30 -fn_80112168 = .text:0x80112168; // type:function size:0xBC -fn_80112224 = .text:0x80112224; // type:function size:0x34 -fn_80112258 = .text:0x80112258; // type:function size:0x74 -fn_801122CC = .text:0x801122CC; // type:function size:0x4C -fn_80112318 = .text:0x80112318; // type:function size:0x2C -fn_80112344 = .text:0x80112344; // type:function size:0x4 -fn_80112348 = .text:0x80112348; // type:function size:0x38 -fn_80112380 = .text:0x80112380; // type:function size:0x38 -fn_801123B8 = .text:0x801123B8; // type:function size:0x20 -fn_801123D8 = .text:0x801123D8; // type:function size:0x20 -fn_801123F8 = .text:0x801123F8; // type:function size:0x28 -fn_80112420 = .text:0x80112420; // type:function size:0x2C -fn_8011244C = .text:0x8011244C; // type:function size:0x5C -fn_801124A8 = .text:0x801124A8; // type:function size:0x3C -fn_801124E4 = .text:0x801124E4; // type:function size:0x24 -fn_80112508 = .text:0x80112508; // type:function size:0x428 +synthStartSynthJobHandling = .text:0x800F83B8; // type:function size:0x64 +synthForceLowPrecisionUpdate = .text:0x800F841C; // type:function size:0x44 +synthKeyStateUpdate = .text:0x800F8460; // type:function size:0x28 +synthHandle = .text:0x800F8488; // type:function size:0x510 +synthFXGetMaxVoices = .text:0x800F8998; // type:function size:0x34 +synthFXStart = .text:0x800F89CC; // type:function size:0xC8 +synthFXSetCtrl = .text:0x800F8A94; // type:function size:0xE4 +synthFXSetCtrl14 = .text:0x800F8B78; // type:function size:0xE4 +synthFXCloneMidiSetup = .text:0x800F8C5C; // type:function size:0x84 +synthSendKeyOff = .text:0x800F8CE0; // type:function size:0x88 +synthVolume = .text:0x800F8D68; // type:function size:0x530 +synthIsFadeOutActive = .text:0x800F9298; // type:function size:0x54 +synthSetMusicVolumeType = .text:0x800F92EC; // type:function size:0x28 +synthHWMessageHandler = .text:0x800F9314; // type:function size:0xD0 +synthInit = .text:0x800F93E4; // type:function size:0x574 +synthExit = .text:0x800F9958; // type:function size:0x24 +sndSeqGetValid = .text:0x800F997C; // type:function size:0x30 +sndSeqPause = .text:0x800F99AC; // type:function size:0x38 +sndSeqStop = .text:0x800F99E4; // type:function size:0x38 +sndSeqSpeed = .text:0x800F9A1C; // type:function size:0x48 +sndSeqContinue = .text:0x800F9A64; // type:function size:0x38 +sndSeqMute = .text:0x800F9A9C; // type:function size:0x58 +sndSeqVolume = .text:0x800F9AF4; // type:function size:0x68 +sndSeqGetMidiCtrl = .text:0x800F9B5C; // type:function size:0x84 +seqGetMIDIPriority = .text:0x800F9BE0; // type:function size:0x1C +sndFXCtrl = .text:0x800F9BFC; // type:function size:0x60 +sndFXCtrl14 = .text:0x800F9C5C; // type:function size:0x60 +sndFXKeyOff = .text:0x800F9CBC; // type:function size:0x40 +sndFXStartParaInfo = .text:0x800F9CFC; // type:function size:0xE0 +sndFXCheck = .text:0x800F9DDC; // type:function size:0x40 +sndSendMessage = .text:0x800F9E1C; // type:function size:0x50 +sndVolume = .text:0x800F9E6C; // type:function size:0x60 +sndMasterVolume = .text:0x800F9ECC; // type:function size:0x94 +sndOutputMode = .text:0x800F9F60; // type:function size:0xEC +sndSetAuxProcessingCallbacks = .text:0x800FA04C; // type:function size:0x158 +synthActivateStudio = .text:0x800FA1A4; // type:function size:0xA8 +synthDeactivateStudio = .text:0x800FA24C; // type:function size:0xF0 +synthAddStudioInput = .text:0x800FA33C; // type:function size:0x20 +synthRemoveStudioInput = .text:0x800FA35C; // type:function size:0x20 +streamInit = .text:0x800FA37C; // type:function size:0xBC +SetHWMix = .text:0x800FA438; // type:function size:0x8C +streamHandle = .text:0x800FA4C4; // type:function size:0x8AC +streamCorrectLoops = .text:0x800FAD70; // type:function size:0x4 +streamKill = .text:0x800FAD74; // type:function size:0x84 +GetPrivateIndex = .text:0x800FADF8; // type:function size:0x160 +sndStreamARAMUpdate = .text:0x800FAF58; // type:function size:0x2C4 +CheckOutputMode = .text:0x800FB21C; // type:function size:0x34 +SetupVolumeAndPan = .text:0x800FB250; // type:function size:0x44 +streamOutputModeChanged = .text:0x800FB294; // type:function size:0x130 +sndStreamAllocEx = .text:0x800FB3C4; // type:function size:0x458 +sndStreamAllocLength = .text:0x800FB81C; // type:function size:0x44 +sndStreamADPCMParameter = .text:0x800FB860; // type:function size:0x6E8 +sndStreamMixParameterEx = .text:0x800FBF48; // type:function size:0x560 +sndStreamFrq = .text:0x800FC4A8; // type:function size:0x654 +sndStreamFree = .text:0x800FCAFC; // type:function size:0x6B8 +sndStreamActivate = .text:0x800FD1B4; // type:function size:0x634 +sndStreamDeactivate = .text:0x800FD7E8; // type:function size:0x700 +dataInsertKeymap = .text:0x800FDEE8; // type:function size:0x1F0 +dataRemoveKeymap = .text:0x800FE0D8; // type:function size:0x17C +dataInsertLayer = .text:0x800FE254; // type:function size:0x248 +dataRemoveLayer = .text:0x800FE49C; // type:function size:0x1C4 +dataInsertCurve = .text:0x800FE660; // type:function size:0x204 +dataRemoveCurve = .text:0x800FE864; // type:function size:0x17C +dataInsertSDir = .text:0x800FE9E0; // type:function size:0x188 +dataRemoveSDir = .text:0x800FEB68; // type:function size:0x2C8 +dataAddSampleReference = .text:0x800FEE30; // type:function size:0xD8 +dataRemoveSampleReference = .text:0x800FEF08; // type:function size:0x98 +dataInsertFX = .text:0x800FEFA0; // type:function size:0x11C +dataRemoveFX = .text:0x800FF0BC; // type:function size:0x15C +dataInsertMacro = .text:0x800FF218; // type:function size:0x304 +dataRemoveMacro = .text:0x800FF51C; // type:function size:0x284 +maccmp = .text:0x800FF7A0; // type:function size:0x10 +dataGetMacro = .text:0x800FF7B0; // type:function size:0x8C +smpcmp = .text:0x800FF83C; // type:function size:0x10 +dataGetSample = .text:0x800FF84C; // type:function size:0x128 +curvecmp = .text:0x800FF974; // type:function size:0x10 +dataGetCurve = .text:0x800FF984; // type:function size:0x5C +dataGetKeymap = .text:0x800FF9E0; // type:function size:0x5C +layercmp = .text:0x800FFA3C; // type:function size:0x10 +dataGetLayer = .text:0x800FFA4C; // type:function size:0x7C +fxcmp = .text:0x800FFAC8; // type:function size:0x10 +dataGetFX = .text:0x800FFAD8; // type:function size:0x9C +dataInit = .text:0x800FFB74; // type:function size:0xE4 +dataExit = .text:0x800FFC58; // type:function size:0x20 +mcmdWait = .text:0x800FFC78; // type:function size:0x2F0 +mcmdGosub = .text:0x800FFF68; // type:function size:0xD0 +mcmdLoop = .text:0x80100038; // type:function size:0x154 +mcmdPlayMacro = .text:0x8010018C; // type:function size:0x18C +mcmdAddKey = .text:0x80100318; // type:function size:0xD8 +mcmdStartSample = .text:0x801003F0; // type:function size:0x1FC +mcmdVibrato = .text:0x801005EC; // type:function size:0x17C +DoSetPitch = .text:0x80100768; // type:function size:0x1A0 +mcmdSetADSR = .text:0x80100908; // type:function size:0x258 +mcmdSetADSRFromCtrl = .text:0x80100B60; // type:function size:0x12C +mcmdSetPitchADSR = .text:0x80100C8C; // type:function size:0x27C +mcmdSetPanning = .text:0x80100F08; // type:function size:0x9C +mcmdSetSurroundPanning = .text:0x80100FA4; // type:function size:0x9C +mcmdScaleVolume = .text:0x80101040; // type:function size:0x134 +mcmdEnvelope = .text:0x80101174; // type:function size:0x130 +mcmdFadeIn = .text:0x801012A4; // type:function size:0x13C +mcmdRandomKey = .text:0x801013E0; // type:function size:0x19C +mcmdVolumeSelect = .text:0x8010157C; // type:function size:0x104 +mcmdPanningSelect = .text:0x80101680; // type:function size:0x104 +mcmdPitchWheelSelect = .text:0x80101784; // type:function size:0x104 +mcmdModWheelSelect = .text:0x80101888; // type:function size:0x104 +mcmdPedalSelect = .text:0x8010198C; // type:function size:0x104 +mcmdPortamentoSelect = .text:0x80101A90; // type:function size:0x104 +mcmdReverbSelect = .text:0x80101B94; // type:function size:0x104 +mcmdPreAuxASelect = .text:0x80101C98; // type:function size:0x104 +mcmdPreAuxBSelect = .text:0x80101D9C; // type:function size:0x104 +mcmdPostAuxBSelect = .text:0x80101EA0; // type:function size:0x104 +mcmdSurroundPanningSelect = .text:0x80101FA4; // type:function size:0x104 +mcmdDopplerSelect = .text:0x801020A8; // type:function size:0x104 +mcmdTremoloSelect = .text:0x801021AC; // type:function size:0x104 +mcmdAuxAFXSelect = .text:0x801022B0; // type:function size:0x17C +mcmdAuxBFXSelect = .text:0x8010242C; // type:function size:0x17C +mcmdPortamento = .text:0x801025A8; // type:function size:0x164 +varGet = .text:0x8010270C; // type:function size:0x68 +mcmdVarCalculation = .text:0x80102774; // type:function size:0x220 +mcmdIfVarCompare = .text:0x80102994; // type:function size:0x14C +macPostMessage = .text:0x80102AE0; // type:function size:0xBC +mcmdSendMessage = .text:0x80102B9C; // type:function size:0x244 +mcmdGetVID = .text:0x80102DE0; // type:function size:0x80 +mcmdSetKeyGroup = .text:0x80102E60; // type:function size:0xDC +macHandleActive = .text:0x80102F3C; // type:function size:0xF58 +macHandle = .text:0x80103E94; // type:function size:0x150 +macSampleEndNotify = .text:0x80103FE4; // type:function size:0xAC +macSetExternalKeyoff = .text:0x80104090; // type:function size:0xF0 +macSetPedalState = .text:0x80104180; // type:function size:0x108 +TimeQueueAdd = .text:0x80104288; // type:function size:0xA4 +macMakeActive = .text:0x8010432C; // type:function size:0x108 +macMakeInactive = .text:0x80104434; // type:function size:0xFC +macStart = .text:0x80104530; // type:function size:0x438 +macInit = .text:0x80104968; // type:function size:0x68 +vidInit = .text:0x801049D0; // type:function size:0xE0 +vidRemoveVoiceReferences = .text:0x80104AB0; // type:function size:0x350 +vidMakeRoot = .text:0x80104E00; // type:function size:0x14 +vidMakeNew = .text:0x80104E14; // type:function size:0x104 +vidGetInternalId = .text:0x80104F18; // type:function size:0x50 +voiceSetPriority = .text:0x80104F68; // type:function size:0x24C +voiceAllocate = .text:0x801051B4; // type:function size:0x460 +voiceFree = .text:0x80105614; // type:function size:0x1C4 +synthInitAllocationAids = .text:0x801057D8; // type:function size:0x2A0 +voiceBlock = .text:0x80105A78; // type:function size:0xFC +voiceUnblock = .text:0x80105B74; // type:function size:0x218 +voiceKill = .text:0x80105D8C; // type:function size:0x234 +voiceKillSound = .text:0x80105FC0; // type:function size:0xC4 +synthKillVoicesByMacroReferences = .text:0x80106084; // type:function size:0x15C +voiceIsLastStarted = .text:0x801061E0; // type:function size:0x74 +voiceSetLastStarted = .text:0x80106254; // type:function size:0x54 +voiceResetLastStarted = .text:0x801062A8; // type:function size:0x74 +voiceInitLastStarted = .text:0x8010631C; // type:function size:0x144 +sndPitchUpOne = .text:0x80106460; // type:function size:0x3C +sndGetPitch = .text:0x8010649C; // type:function size:0xE4 +adsrConvertTimeCents = .text:0x80106580; // type:function size:0x58 +salChangeADSRState = .text:0x801065D8; // type:function size:0x26C +adsrSetup = .text:0x80106844; // type:function size:0x28 +adsrStartRelease = .text:0x8010686C; // type:function size:0x150 +adsrRelease = .text:0x801069BC; // type:function size:0x168 +adsrHandle = .text:0x80106B24; // type:function size:0x198 +adsrHandleLowPrecision = .text:0x80106CBC; // type:function size:0x84 +vsInit = .text:0x80106D40; // type:function size:0xBC +vsSampleStartNotify = .text:0x80106DFC; // type:function size:0x248 +vsSampleEndNotify = .text:0x80107044; // type:function size:0xA8 +vsUpdateBuffer = .text:0x801070EC; // type:function size:0x1F8 +vsSampleUpdates = .text:0x801072E4; // type:function size:0x1E4 +dataInitStack = .text:0x801074C8; // type:function size:0xC +InsertData = .text:0x801074D4; // type:function size:0x27C +sndPushGroup = .text:0x80107750; // type:function size:0x32C +sndPopGroup = .text:0x80107A7C; // type:function size:0x33C +seqPlaySong = .text:0x80107DB8; // type:function size:0x14C +sndSeqPlayEx = .text:0x80107F04; // type:function size:0x11C +salInitDspCtrl = .text:0x80108020; // type:function size:0x3B4 +salInitHRTFBuffer = .text:0x801083D4; // type:function size:0x38 +salExitDspCtrl = .text:0x8010840C; // type:function size:0xE0 +salActivateStudio = .text:0x801084EC; // type:function size:0x150 +salDeactivateStudio = .text:0x8010863C; // type:function size:0x20 +salCheckVolErrorAndResetDelta = .text:0x8010865C; // type:function size:0xF4 +sal_setup_dspvol = .text:0x80108750; // type:function size:0x48 +sal_update_hostplayinfo = .text:0x80108798; // type:function size:0x74 +DoDepopFade = .text:0x8010880C; // type:function size:0xAC +HandleDepopVoice = .text:0x801088B8; // type:function size:0x2DC +SortVoices = .text:0x80108B94; // type:function size:0x258 +salBuildCommandList = .text:0x80108DEC; // type:function size:0x21B8 +salSynthSendMessage = .text:0x8010AFA4; // type:function size:0x44 +salActivateVoice = .text:0x8010AFE8; // type:function size:0xA0 +salDeactivateVoice = .text:0x8010B088; // type:function size:0x60 +salReconnectVoice = .text:0x8010B0E8; // type:function size:0xC8 +salAddStudioInput = .text:0x8010B1B0; // type:function size:0xA8 +salRemoveStudioInput = .text:0x8010B258; // type:function size:0x84 +salHandleAuxProcessing = .text:0x8010B2DC; // type:function size:0x158 +salCalcVolume = .text:0x8010B434; // type:function size:0x6F0 +CheckRoomStatus = .text:0x8010BB24; // type:function size:0x4B4 +CalcEmitter = .text:0x8010BFD8; // type:function size:0x51C +sndUpdateEmitter = .text:0x8010C4F4; // type:function size:0x130 +sndCheckEmitter = .text:0x8010C624; // type:function size:0x20 +AddEmitter = .text:0x8010C644; // type:function size:0x3F8 +sndAddEmitterParaEx = .text:0x8010CA3C; // type:function size:0x50 +sndRemoveEmitter = .text:0x8010CA8C; // type:function size:0xA8 +sndEmitterVoiceID = .text:0x8010CB34; // type:function size:0x5C +s3dKillEmitterByFXID = .text:0x8010CB90; // type:function size:0xFC +sndUpdateListener = .text:0x8010CC8C; // type:function size:0x204 +sndAddListenerEx = .text:0x8010CE90; // type:function size:0x230 +sndRemoveListener = .text:0x8010D0C0; // type:function size:0xD0 +AddStartingEmitter = .text:0x8010D190; // type:function size:0x14C +StartContinousEmitters = .text:0x8010D2DC; // type:function size:0x3B0 +s3dHandle = .text:0x8010D68C; // type:function size:0x82C +s3dInit = .text:0x8010DEB8; // type:function size:0x38 +s3dExit = .text:0x8010DEF0; // type:function size:0x4 +sndInit = .text:0x8010DEF4; // type:function size:0x118 +sndQuit = .text:0x8010E00C; // type:function size:0x34 +sndIsInstalled = .text:0x8010E040; // type:function size:0x8 +salApplyMatrix = .text:0x8010E048; // type:function size:0xAC +salNormalizeVector = .text:0x8010E0F4; // type:function size:0xB4 +salCrossProduct = .text:0x8010E1A8; // type:function size:0x64 +salInvertMatrix = .text:0x8010E20C; // type:function size:0x1FC +inpSetGlobalMIDIDirtyFlag = .text:0x8010E408; // type:function size:0x24 +inpSetMidiCtrl = .text:0x8010E42C; // type:function size:0x608 +inpSetMidiCtrl14 = .text:0x8010EA34; // type:function size:0x124 +inpResetMidiCtrl = .text:0x8010EB58; // type:function size:0xF0 +inpGetMidiCtrl = .text:0x8010EC48; // type:function size:0x2C4 +inpGetChannelDefaults = .text:0x8010EF0C; // type:function size:0x34 +inpResetChannelDefaults = .text:0x8010EF40; // type:function size:0x3C +inpAddCtrl = .text:0x8010EF7C; // type:function size:0x98 +inpFXCopyCtrl = .text:0x8010F014; // type:function size:0x114 +inpSetMidiLastNote = .text:0x8010F128; // type:function size:0x3C +inpGetMidiLastNote = .text:0x8010F164; // type:function size:0x3C +_GetInputValue = .text:0x8010F1A0; // type:function size:0x4A0 +inpGetVolume = .text:0x8010F640; // type:function size:0x48 +inpGetPanning = .text:0x8010F688; // type:function size:0x48 +inpGetSurPanning = .text:0x8010F6D0; // type:function size:0x48 +inpGetPitchBend = .text:0x8010F718; // type:function size:0x48 +inpGetDoppler = .text:0x8010F760; // type:function size:0x48 +inpGetModulation = .text:0x8010F7A8; // type:function size:0x48 +inpGetPedal = .text:0x8010F7F0; // type:function size:0x48 +inpGetPreAuxA = .text:0x8010F838; // type:function size:0x48 +inpGetReverb = .text:0x8010F880; // type:function size:0x48 +inpGetPreAuxB = .text:0x8010F8C8; // type:function size:0x48 +inpGetPostAuxB = .text:0x8010F910; // type:function size:0x48 +inpGetTremolo = .text:0x8010F958; // type:function size:0x48 +inpGetAuxA = .text:0x8010F9A0; // type:function size:0xB4 +inpGetAuxB = .text:0x8010FA54; // type:function size:0xB4 +inpInit = .text:0x8010FB08; // type:function size:0x284 +inpTranslateExCtrl = .text:0x8010FD8C; // type:function size:0x70 +inpGetExCtrl = .text:0x8010FDFC; // type:function size:0xFC +inpSetExCtrl = .text:0x8010FEF8; // type:function size:0x1E4 +sndRand = .text:0x801100DC; // type:function size:0x1C +sndSin = .text:0x801100F8; // type:function size:0x8C +sndBSearch = .text:0x80110184; // type:function size:0xA4 +sndConvertMs = .text:0x80110228; // type:function size:0x10 +sndConvertTicks = .text:0x80110238; // type:function size:0x48 +sndConvert2Ms = .text:0x80110280; // type:function size:0x8 +snd_handle_irq = .text:0x80110288; // type:function size:0x154 +hwInit = .text:0x801103DC; // type:function size:0xB8 +hwExit = .text:0x80110494; // type:function size:0x34 +hwSetTimeOffset = .text:0x801104C8; // type:function size:0x8 +hwGetTimeOffset = .text:0x801104D0; // type:function size:0x8 +hwIsActive = .text:0x801104D8; // type:function size:0x20 +hwSetMesgCallback = .text:0x801104F8; // type:function size:0x8 +hwSetPriority = .text:0x80110500; // type:function size:0x14 +hwInitSamplePlayback = .text:0x80110514; // type:function size:0x1B4 +hwBreak = .text:0x801106C8; // type:function size:0x50 +hwSetADSR = .text:0x80110718; // type:function size:0x1AC +hwSetVirtualSampleLoopBuffer = .text:0x801108C4; // type:function size:0x20 +hwGetVirtualSampleState = .text:0x801108E4; // type:function size:0x14 +hwGetSampleType = .text:0x801108F8; // type:function size:0x14 +hwGetSampleID = .text:0x8011090C; // type:function size:0x14 +hwSetStreamLoopPS = .text:0x80110920; // type:function size:0x14 +hwStart = .text:0x80110934; // type:function size:0x3C +hwKeyOff = .text:0x80110970; // type:function size:0x28 +hwSetPitch = .text:0x80110998; // type:function size:0x78 +hwSetSRCType = .text:0x80110A10; // type:function size:0x2C +hwSetPolyPhaseFilter = .text:0x80110A3C; // type:function size:0x2C +hwSetITDMode = .text:0x80110A68; // type:function size:0x5C +hwSetVolume = .text:0x80110AC4; // type:function size:0x2C0 +hwOff = .text:0x80110D84; // type:function size:0x2C +hwSetAUXProcessingCallbacks = .text:0x80110DB0; // type:function size:0x28 +hwActivateStudio = .text:0x80110DD8; // type:function size:0x20 +hwDeactivateStudio = .text:0x80110DF8; // type:function size:0x20 +hwAddInput = .text:0x80110E18; // type:function size:0x34 +hwRemoveInput = .text:0x80110E4C; // type:function size:0x34 +hwChangeStudio = .text:0x80110E80; // type:function size:0x2C +hwGetPos = .text:0x80110EAC; // type:function size:0xA4 +hwFlushStream = .text:0x80110F50; // type:function size:0x90 +hwInitStream = .text:0x80110FE0; // type:function size:0x20 +hwExitStream = .text:0x80111000; // type:function size:0x20 +hwGetStreamPlayBuffer = .text:0x80111020; // type:function size:0x24 +hwTransAddr = .text:0x80111044; // type:function size:0x4 +hwFrq2Pitch = .text:0x80111048; // type:function size:0x5C +hwInitSampleMem = .text:0x801110A4; // type:function size:0x24 +hwExitSampleMem = .text:0x801110C8; // type:function size:0x20 +hwSaveSample = .text:0x801110E8; // type:function size:0x94 +hwRemoveSample = .text:0x8011117C; // type:function size:0x84 +hwSyncSampleMem = .text:0x80111200; // type:function size:0x20 +hwFrameDone = .text:0x80111220; // type:function size:0x4 +sndSetHooks = .text:0x80111224; // type:function size:0x14 +hwDisableHRTF = .text:0x80111238; // type:function size:0xC +hwGetVirtualSampleID = .text:0x80111244; // type:function size:0x28 +hwVoiceInStartup = .text:0x8011126C; // type:function size:0x20 +aramQueueCallback = .text:0x8011128C; // type:function size:0xA0 +aramUploadData = .text:0x8011132C; // type:function size:0x1DC +aramSyncTransferQueue = .text:0x80111508; // type:function size:0x18 +aramInit = .text:0x80111520; // type:function size:0x2EC +aramExit = .text:0x8011180C; // type:function size:0x4 +aramGetZeroBuffer = .text:0x80111810; // type:function size:0x20 +aramStoreData = .text:0x80111830; // type:function size:0x3BC +aramRemoveData = .text:0x80111BEC; // type:function size:0x18 +InitStreamBuffers = .text:0x80111C04; // type:function size:0xC4 +aramAllocateStreamBuffer = .text:0x80111CC8; // type:function size:0x108 +aramGetStreamBufferAddress = .text:0x80111DD0; // type:function size:0x38 +aramFreeStreamBuffer = .text:0x80111E08; // type:function size:0xF8 +salCallback = .text:0x80111F00; // type:function size:0xA8 +dspInitCallback = .text:0x80111FA8; // type:function size:0x10 +dspResumeCallback = .text:0x80111FB8; // type:function size:0x64 +salInitAi = .text:0x8011201C; // type:function size:0xC8 +salStartAi = .text:0x801120E4; // type:function size:0x20 +salExitAi = .text:0x80112104; // type:function size:0x34 +salAiGetDest = .text:0x80112138; // type:function size:0x30 +salInitDsp = .text:0x80112168; // type:function size:0xBC +salExitDsp = .text:0x80112224; // type:function size:0x34 +salCtrlDsp = .text:0x80112258; // type:function size:0x74 +salGetStartDelay = .text:0x801122CC; // type:function size:0x4C +hwInitIrq = .text:0x80112318; // type:function size:0x2C +hwExitIrq = .text:0x80112344; // type:function size:0x4 +hwEnableIrq = .text:0x80112348; // type:function size:0x38 +hwDisableIrq = .text:0x80112380; // type:function size:0x38 +hwIRQEnterCritical = .text:0x801123B8; // type:function size:0x20 +hwIRQLeaveCritical = .text:0x801123D8; // type:function size:0x20 +salMalloc = .text:0x801123F8; // type:function size:0x28 +salFree = .text:0x80112420; // type:function size:0x2C +sndAuxCallbackReverbSTD = .text:0x8011244C; // type:function size:0x5C +sndAuxCallbackPrepareReverbSTD = .text:0x801124A8; // type:function size:0x3C +sndAuxCallbackShutdownReverbSTD = .text:0x801124E4; // type:function size:0x24 +ReverbSTDCreate = .text:0x80112508; // type:function size:0x428 fn_80112930 = .text:0x80112930; // type:function size:0x3B4 -fn_80112CE4 = .text:0x80112CE4; // type:function size:0x24 -fn_80112D08 = .text:0x80112D08; // type:function size:0xBC -fn_80112DC4 = .text:0x80112DC4; // type:function size:0x5C -fn_80112E20 = .text:0x80112E20; // type:function size:0x40 -fn_80112E60 = .text:0x80112E60; // type:function size:0x24 -fn_80112E84 = .text:0x80112E84; // type:function size:0x50C -fn_80113390 = .text:0x80113390; // type:function size:0x190 -fn_80113520 = .text:0x80113520; // type:function size:0x50C -fn_80113A2C = .text:0x80113A2C; // type:function size:0xE0 -fn_80113B0C = .text:0x80113B0C; // type:function size:0xBC -fn_80113BC8 = .text:0x80113BC8; // type:function size:0x168 -fn_80113D30 = .text:0x80113D30; // type:function size:0x1D0 -fn_80113F00 = .text:0x80113F00; // type:function size:0x28 -fn_80113F28 = .text:0x80113F28; // type:function size:0x4C -fn_80113F74 = .text:0x80113F74; // type:function size:0x198 -fn_8011410C = .text:0x8011410C; // type:function size:0x1EC -fn_801142F8 = .text:0x801142F8; // type:function size:0x2BC -fn_801145B4 = .text:0x801145B4; // type:function size:0x200 -fn_801147B4 = .text:0x801147B4; // type:function size:0x28 +ReverbSTDCallback = .text:0x80112CE4; // type:function size:0x24 +ReverbSTDFree = .text:0x80112D08; // type:function size:0xBC +sndAuxCallbackReverbHI = .text:0x80112DC4; // type:function size:0x5C +sndAuxCallbackPrepareReverbHI = .text:0x80112E20; // type:function size:0x40 +sndAuxCallbackShutdownReverbHI = .text:0x80112E60; // type:function size:0x24 +ReverbHICreate = .text:0x80112E84; // type:function size:0x50C +DoCrossTalk = .text:0x80113390; // type:function size:0x190 +HandleReverb = .text:0x80113520; // type:function size:0x50C +ReverbHICallback = .text:0x80113A2C; // type:function size:0xE0 +ReverbHIFree = .text:0x80113B0C; // type:function size:0xBC +sndAuxCallbackDelay = .text:0x80113BC8; // type:function size:0x168 +sndAuxCallbackUpdateSettingsDelay = .text:0x80113D30; // type:function size:0x1D0 +sndAuxCallbackPrepareDelay = .text:0x80113F00; // type:function size:0x28 +sndAuxCallbackShutdownDelay = .text:0x80113F28; // type:function size:0x4C +do_src1 = .text:0x80113F74; // type:function size:0x198 +do_src2 = .text:0x8011410C; // type:function size:0x1EC +sndAuxCallbackChorus = .text:0x801142F8; // type:function size:0x2BC +sndAuxCallbackPrepareChorus = .text:0x801145B4; // type:function size:0x200 +sndAuxCallbackShutdownChorus = .text:0x801147B4; // type:function size:0x28 DBClose = .text:0x801147DC; // type:function size:0x4 scope:global DBOpen = .text:0x801147E0; // type:function size:0x4 scope:global DBWrite = .text:0x801147E4; // type:function size:0x260 scope:global From 116db5fe812b3d4b343c513272bf4b9bdc38a989 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 17 Dec 2024 04:48:47 +0100 Subject: [PATCH 072/178] Update musyx and set it to matching --- configure.py | 27 ++++++++++++++++++++++----- extern/musyx | 2 +- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/configure.py b/configure.py index 4e80312b..eae7d004 100644 --- a/configure.py +++ b/configure.py @@ -278,6 +278,23 @@ cflags_musyx = [ "-DMUSY_TARGET=MUSY_TARGET_DOLPHIN", ] +cflags_musyx_debug = [ + "-proc gecko", + "-fp hard", + "-nodefaults", + "-nosyspath", + "-i include", + "-i extern/musyx/include", + "-i libc", + "-g", + "-sym on", + "-D_DEBUG=1", + "-fp hard", + "-enum int", + "-Cpp_exceptions off", + "-DMUSY_TARGET=MUSY_TARGET_DOLPHIN", +] + # REL flags cflags_rel = [ *cflags_base, @@ -736,21 +753,21 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/seq_api.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_synthapi.c"), - Object(NonMatching, "musyx/runtime/stream.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/stream.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synthdata.c"), - Object(NonMatching, "musyx/runtime/synthmacros.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synthmacros.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synthvoice.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth_ac.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth_dbtab.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth_adsr.c"), - Object(NonMatching, "musyx/runtime/synth_vsamples.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/synth_vsamples.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/s_data.c"), - Object(NonMatching, "musyx/runtime/hw_dspctrl.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hw_dspctrl.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hw_volconv.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd3d.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_init.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_math.c"), - Object(NonMatching, "musyx/runtime/snd_midictrl.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_midictrl.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/snd_service.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/hardware.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "musyx/runtime/dsp_import.c"), diff --git a/extern/musyx b/extern/musyx index ddfad60c..a170f2ef 160000 --- a/extern/musyx +++ b/extern/musyx @@ -1 +1 @@ -Subproject commit ddfad60c3e4fede55479c744a1c70081e0d6cd12 +Subproject commit a170f2ef4a3f51edb89bc792dff79d55b2c42a89 From 4dd8a0ba10e2b68f9c9bf0cd1f449f49088083ed Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 17 Dec 2024 19:31:42 -0800 Subject: [PATCH 073/178] US: matched m422Dll --- config/GMPE01_00/rels/m422Dll/symbols.txt | 404 ++--- configure.py | 2 +- src/REL/m422Dll/main.c | 1887 +++++++++++++++++++++ 3 files changed, 2090 insertions(+), 203 deletions(-) create mode 100755 src/REL/m422Dll/main.c diff --git a/config/GMPE01_00/rels/m422Dll/symbols.txt b/config/GMPE01_00/rels/m422Dll/symbols.txt index f4f38637..db300891 100644 --- a/config/GMPE01_00/rels/m422Dll/symbols.txt +++ b/config/GMPE01_00/rels/m422Dll/symbols.txt @@ -13,191 +13,191 @@ ObjectSetup = .text:0x0000B058; // type:function size:0x428 fn_1_B480 = .text:0x0000B480; // type:function size:0xAC _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:0x30 -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x30 -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x30 -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x30 -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x30 -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x30 -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x30 -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x1C data:4byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x1C data:4byte -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 data:4byte -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 data:4byte -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0xC data:4byte -lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0xC data:4byte -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC data:4byte -lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0xC data:4byte -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0xC data:4byte -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x20 data:4byte -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x60 -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:4byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x60 -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x30 data:4byte -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x34 data:4byte -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x8 data:double -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 data:double -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 data:double -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 data:double -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5EC = .rodata:0x000005EC; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x2C data:4byte -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 data:double -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x8 data:double -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x8 data:double -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float -lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x28 data:4byte -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x20 data:4byte -lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:4byte -lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 data:4byte -lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 data:4byte -lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x40 data:4byte -lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x40 data:4byte -lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x4 data:float -lbl_1_rodata_74C = .rodata:0x0000074C; // type:object size:0x4 data:float -lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float -lbl_1_rodata_754 = .rodata:0x00000754; // type:object size:0x4 data:float -lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x4 data:float -lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x8 data:double -lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x4 data:float -lbl_1_rodata_76C = .rodata:0x0000076C; // type:object size:0x10 data:4byte -lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0xC data:4byte -lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0xC data:4byte -lbl_1_rodata_794 = .rodata:0x00000794; // type:object size:0x4 data:byte -lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x4 data:float -lbl_1_rodata_79C = .rodata:0x0000079C; // type:object size:0x4 data:float -lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x4 data:float -lbl_1_rodata_7A4 = .rodata:0x000007A4; // type:object size:0x4 data:float -lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x30 data:float +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x30 data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x30 data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x30 data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x30 data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x30 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x30 data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x1C scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x1C scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0xC scope:local data:float +lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0xC scope:local data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC scope:local data:float +lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0xC scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x60 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x60 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x30 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 scope:local data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 scope:local data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x8 scope:local data:double +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 scope:local data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 scope:local data:double +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 scope:local data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 scope:local data:double +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 scope:local data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 scope:local data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 scope:local data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 scope:local data:double +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5EC = .rodata:0x000005EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x2C scope:local data:4byte +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 scope:local data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 scope:local data:double +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x8 scope:local data:double +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x8 scope:local data:double +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 scope:local data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 scope:local data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x28 scope:local data:4byte +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x4 scope:local data:float +lbl_1_rodata_74C = .rodata:0x0000074C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 scope:local data:float +lbl_1_rodata_754 = .rodata:0x00000754; // type:object size:0x4 scope:local data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x4 scope:local data:float +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x8 scope:local data:double +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x4 scope:local data:float +lbl_1_rodata_76C = .rodata:0x0000076C; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0xC scope:local data:float +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0xC scope:local data:float +lbl_1_rodata_794 = .rodata:0x00000794; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x4 scope:local data:float +lbl_1_rodata_79C = .rodata:0x0000079C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_7A4 = .rodata:0x000007A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x40 lbl_1_data_40 = .data:0x00000040; // type:object size:0x60 lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x20 @@ -205,29 +205,29 @@ lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x20 lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x7 lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x9 lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x1680 data:float -lbl_1_data_1770 = .data:0x00001770; // type:object size:0xF data:string -lbl_1_data_177F = .data:0x0000177F; // type:object size:0x10 data:string -lbl_1_data_178F = .data:0x0000178F; // type:object size:0x10 data:string -lbl_1_data_179F = .data:0x0000179F; // type:object size:0xF data:string -lbl_1_data_17AE = .data:0x000017AE; // type:object size:0x10 data:string -lbl_1_data_17BE = .data:0x000017BE; // type:object size:0x10 data:string -lbl_1_data_17CE = .data:0x000017CE; // type:object size:0xF data:string -lbl_1_data_17DD = .data:0x000017DD; // type:object size:0x11 data:string -lbl_1_data_17EE = .data:0x000017EE; // type:object size:0x11 data:string -lbl_1_data_17FF = .data:0x000017FF; // type:object size:0x12 data:string -lbl_1_data_1811 = .data:0x00001811; // type:object size:0x5 data:string -lbl_1_data_1816 = .data:0x00001816; // type:object size:0x12 +lbl_1_data_1770 = .data:0x00001770; // type:object size:0xF scope:local data:string +lbl_1_data_177F = .data:0x0000177F; // type:object size:0x10 scope:local data:string +lbl_1_data_178F = .data:0x0000178F; // type:object size:0x10 scope:local data:string +lbl_1_data_179F = .data:0x0000179F; // type:object size:0xF scope:local data:string +lbl_1_data_17AE = .data:0x000017AE; // type:object size:0x10 scope:local data:string +lbl_1_data_17BE = .data:0x000017BE; // type:object size:0x10 scope:local data:string +lbl_1_data_17CE = .data:0x000017CE; // type:object size:0xF scope:local data:string +lbl_1_data_17DD = .data:0x000017DD; // type:object size:0x11 scope:local data:string +lbl_1_data_17EE = .data:0x000017EE; // type:object size:0x11 scope:local data:string +lbl_1_data_17FF = .data:0x000017FF; // type:object size:0x12 scope:local data:string +lbl_1_data_1811 = .data:0x00001811; // type:object size:0x5 scope:local data:string +lbl_1_data_1816 = .data:0x00001816; // type:object size:0x10 scope:local data:string lbl_1_data_1828 = .data:0x00001828; // type:object size:0x50 lbl_1_data_1878 = .data:0x00001878; // type:object size:0x2C lbl_1_data_18A4 = .data:0x000018A4; // type:object size:0x8 data:4byte lbl_1_data_18AC = .data:0x000018AC; // type:object size:0x4 data:4byte lbl_1_data_18B0 = .data:0x000018B0; // type:object size:0x4 data:4byte -lbl_1_data_18B4 = .data:0x000018B4; // type:object size:0x40 -lbl_1_data_18F4 = .data:0x000018F4; // type:object size:0xC data:4byte +lbl_1_data_18B4 = .data:0x000018B4; // type:object size:0x40 data:float +lbl_1_data_18F4 = .data:0x000018F4; // type:object size:0x8 data:4byte lbl_1_data_1900 = .data:0x00001900; // type:object size:0x4 data:4byte -lbl_1_data_1904 = .data:0x00001904; // type:object size:0x1B data:string -lbl_1_data_191F = .data:0x0000191F; // type:object size:0x19 data:string -lbl_1_data_1938 = .data:0x00001938; // type:object size:0x24 data:string +lbl_1_data_1904 = .data:0x00001904; // type:object size:0x1B scope:local data:string +lbl_1_data_191F = .data:0x0000191F; // type:object size:0x19 scope:local data:string +lbl_1_data_1938 = .data:0x00001938; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float diff --git a/configure.py b/configure.py index eae7d004..87bace0d 100644 --- a/configure.py +++ b/configure.py @@ -1031,7 +1031,7 @@ config.libs = [ Rel( "m422Dll", # Money Belts objects={ - Object(NonMatching, "REL/m422Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m422Dll/main.c"), }, ), Rel( diff --git a/src/REL/m422Dll/main.c b/src/REL/m422Dll/main.c new file mode 100755 index 00000000..15c1186f --- /dev/null +++ b/src/REL/m422Dll/main.c @@ -0,0 +1,1887 @@ +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/wipe.h" + +#include "ext_math.h" +#include "dolphin.h" + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ u32 unk04; +} StructBss104; // Size 4 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ float unk04[3]; +} StructBss54; // Size 0x10 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ s32 unk20; + /* 0x24 */ s32 unk24; + /* 0x28 */ float unk28; + /* 0x2C */ float unk2C; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; + /* 0x38 */ float unk38; + /* 0x3C */ float unk3C; + /* 0x40 */ s32 unk40; +} StructBss3CData; // Size 0x44 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ u32 unk08; + /* 0x0C */ float unk0C; + /* 0x10 */ float unk10; + /* 0x14 */ float unk14; + /* 0x18 */ float unk18; + /* 0x1C */ float unk1C; + /* 0x20 */ float unk20; + /* 0x24 */ float unk24; + /* 0x28 */ char unk28[4]; + /* 0x2C */ s32 unk2C; +} StructDataF0; // Size 0x30 + +void fn_1_B480(omObjData* arg0); + +StructBss104 lbl_1_bss_104[3][8]; +StructBss54 lbl_1_bss_54[11]; +omObjData* lbl_1_bss_50; +omObjData* lbl_1_bss_4C; +omObjData* lbl_1_bss_3C[4]; +omObjData* lbl_1_bss_38; +s32 lbl_1_bss_34; +Process* lbl_1_bss_30; +s16 lbl_1_bss_2E; +s16 lbl_1_bss_2C; +s32 lbl_1_bss_28; +s32 lbl_1_bss_24; +s32 lbl_1_bss_20; +s32 lbl_1_bss_1C; // unused +s32 lbl_1_bss_18; +s32 lbl_1_bss_14; +s32 lbl_1_bss_10; // unused +s32 lbl_1_bss_C; +float lbl_1_bss_8; +float lbl_1_bss_4; +float lbl_1_bss_0; + +const float lbl_1_rodata_10[12] = { + 25.0f, 95.0f, 25.0f, + 75.0f, 75.0f, 75.0f, + 35.0f, 35.0f, 35.0f, + 25.0f, 50.0f, 50.0f +}; + +const float lbl_1_rodata_40[12] = { + 75.0f, 0.0f, 75.0f, + 0.0f, 0.0f, 0.0f, + 20.0f, 20.0f, 20.0f, + 50.0f, 0.0f, 0.0f +}; + +const float lbl_1_rodata_70[12] = { + 75.0f, 0.0f, 37.0f, + 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, + 70.0f, 0.0f, 0.0f +}; + +const float lbl_1_rodata_A0[12] = { + 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, + 75.0f, 50.0f, 0.0f +}; + +const float lbl_1_rodata_D0[12] = { + 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f +}; + +const float lbl_1_rodata_100[12] = { + 30.0f, 30.0f, 30.0f, + 30.0f, 30.0f, 30.0f, + 40.0f, 40.0f, 40.0f, + 0.0f, 0.0f, 0.0f +}; + +const float lbl_1_rodata_130[12] = { + 290.0f, 290.0f, 290.0f, + 370.0f, 370.0f, 370.0f, + 450.0f, 450.0f, 450.0f, + 0.0f, 0.0f, 0.0f +}; + +s32 lbl_1_data_0[] = { + DATA_MAKE_NUM(DATADIR_MGCONST, 41), + DATA_MAKE_NUM(DATADIR_MGCONST, 40), + DATA_MAKE_NUM(DATADIR_MGCONST, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 8), + DATA_MAKE_NUM(DATADIR_M422, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 0), + DATA_MAKE_NUM(DATADIR_MGCONST, 37), + DATA_MAKE_NUM(DATADIR_MGCONST, 36), + DATA_MAKE_NUM(DATADIR_MGCONST, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 8), + DATA_MAKE_NUM(DATADIR_M422, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 12), + DATA_MAKE_NUM(DATADIR_MGCONST, 12), + DATA_MAKE_NUM(DATADIR_MGCONST, 12) +}; + +s32 lbl_1_data_40[] = { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x005E0000, 0x00190000, 0x006C0000, 0x00890000, + 0x00840000, 0x00100000, 0x000C0000, 0x00800000 +}; + +s32 lbl_1_data_A0[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), + DATA_MAKE_NUM(DATADIR_M422, 0), + DATA_MAKE_NUM(DATADIR_M422, 8), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 24) +}; + +u32 lbl_1_data_C0[] = { 0, 0, 0, 1, 1, 0, 0, 0 }; +u8 lbl_1_data_E0[] = { 0, 0, 0, 1, 0, 1, 1 }; +u8 lbl_1_data_E7[] = { 8, 8, 8, 0, 12, 0, 8, 8, 0 }; +StructDataF0 lbl_1_data_F0[12][10] = { 0 }; + +char* lbl_1_data_1828[] = { + "m422al01-cube8", + "m422al02-cyl143", + "m422al03-cube11", + "m422am01-cyl76", + "m422am02-cube13", + "m422am03-cube12", + "m422as01-cube9", + "m422test11-cube9", + "m422test12-cube9", + "m422m09m-m422m09m", + "coin", + "m422a04-sphere2", + "m422m09m-m422m09m", + "m422m09m-m422m09m", + "m422m09m-m422m09m", + "m422m09m-m422m09m", + "m422m09m-m422m09m", + "m422m09m-m422m09m", + "m422m09m-m422m09m", + "m422m09m-m422m09m" +}; + +s32 lbl_1_data_1878[11] = { 0 }; +s32 lbl_1_data_18A4[2] = { 0 }; +s32 lbl_1_data_18AC = -1; +s32 lbl_1_data_18B0 = -1; + +float lbl_1_data_18B4[][4] = { + { 0.0f, 300.0f, 450.0f, 180.0f }, + { -200.0f, 0.0f, 1050.0f, 180.0f }, + { 0.0f, 0.0f, 1050.0f, 180.0f }, + { 200.0f, 0.0f, 1050.0f, 180.0f } +}; + +s32 lbl_1_data_18F4[] = { 0, 0 }; + +float lbl_1_data_18FC = 1.0f; // unused +s32 lbl_1_data_1900 = -1; + +void fn_1_A0(void) { + Center.x += 10.0 * (((HuPadBtn[0] & 2) != 0) - ((HuPadBtn[0] & 1) != 0)); + Center.z -= 10.0 * (((HuPadBtn[0] & 8) != 0) - ((HuPadBtn[0] & 4) != 0)); + Center.y += ((HuPadTrigL[0] - HuPadTrigR[0]) / 128.0) * 30.0; + CRot.y += HuPadSubStkX[0] / 16.0; + CRot.x += HuPadSubStkY[0] / -16.0; +} + +void fn_1_2FC(omObjData* arg0) { + Mtx sp254; + s32 sp1CC; + s32 sp1C8; + s32 sp1A4; + float sp1A0; + float sp158; + float sp154; + float sp150; + float sp14C; + float sp148; + s32 sp144; + float sp140; + float sp13C; + float sp138; + float sp134; + float sp130; + float sp12C; + float sp128; + s32 sp124; + float sp120; + float sp11C; + float sp118; + s32 var_r17; + s32 sp114; + float temp_f23; + float temp_f22; + float temp_f25; + float temp_f24; + float temp_f27; + float temp_f26; + float phi_f29; + float phi_f28; + StructDataF0* temp_r28; + StructDataF0* temp_r29; + StructBss3CData* temp_r31; + s32 var_r19; + s32 phi_r23; + s32 phi_r26; + s32 phi_r22; + s32 phi_r21; + s16 phi_r25; + s32 phi_r24; + s32 phi_r20; + s32 var_r18; + s32 i; + + temp_r31 = arg0->data; + sp158 = 0.0f; + sp154 = 0.0f; + sp150 = 0.0f; + phi_r25 = -1; + if (temp_r31->unk20 == 0 || temp_r31->unk20 == 1) { + arg0->trans.z += lbl_1_bss_0; + } + temp_r31->unk2C = temp_r31->unk34 = 0.0f; + if (lbl_1_bss_34 != 1004 || !(lbl_1_bss_8 < 45.0f)) { + if (lbl_1_bss_34 >= 1004 && temp_r31->unk20 != 0) { + temp_f25 = lbl_1_data_18B4[temp_r31->unk00][0] - arg0->trans.x; + temp_f24 = lbl_1_data_18B4[temp_r31->unk00][2] - arg0->trans.z; + sp14C = 270.0 + atan2d(temp_f25, temp_f24) - CRot.y; + sp148 = sqrtf(temp_f25 * temp_f25 + temp_f24 * temp_f24); + sp148 = (sp148 > 100.0f) ? 72.0f + : (sp148 < 12.0f) ? 0.0f + : (72.0f * (sp148 / 100.0f)); + sp154 = sp148 * cosd(sp14C); + sp150 = sp148 * sind(sp14C); + if (sp148 == 0.0f) { + temp_r31->unk20 = 0; + } + } else if (temp_r31->unk20 == 1) { + if (temp_r31->unk0C != -1) { + sp154 = HuPadStkX[temp_r31->unk0C]; + sp150 = HuPadStkY[temp_r31->unk0C]; + } else { + float sp238[7] = { 0 }; + float sp21C[7] = { 0 }; + float sp1EC[] = { -400.0f, -550.0f, -700.0f, -800.0f }; + float sp1DC[] = { -800.0f, -900.0f, -1100.0f, -2100.0f }; + Vec sp1D0; + + sp154 = sp150 = 0.0f; + for (i = 0; i < 7; i++) { + sp238[i] = (temp_r31->unk00 == 0 ? 600.0f : 1400.0f) + sp1EC[temp_r31->unk10]; + sp21C[i] = (temp_r31->unk00 == 0 ? 600.0f : 1400.0f) + sp1EC[temp_r31->unk10]; + } + for (i = 0; i < 12; i++) { + for (phi_r23 = 0; phi_r23 < (i < 10 ? 4 : 10); phi_r23++) { + temp_r28 = &lbl_1_data_F0[i][phi_r23]; + sp144 = (i < 10) ? (i * 4 + 43 + phi_r23) : ((i - 10) * 10 + 83 + phi_r23); + if (temp_r28->unk04 != 0 && !(temp_r28->unk14 < 0.0f)) { + Hu3DModelObjPosGet(lbl_1_bss_38->model[sp144], lbl_1_data_1828[temp_r28->unk00], &sp1D0); + phi_r26 = (s32) (300.0f + sp1D0.x + 2000.0f) / 100 - 20; + phi_r26--; + for (phi_r22 = 0; phi_r22 < 3; phi_r26++, phi_r22++) { + if (phi_r26 >= 0 && phi_r26 < 7 + && arg0->trans.z + 50.0f >= sp1D0.z - lbl_1_rodata_10[temp_r28->unk00] - lbl_1_rodata_70[temp_r28->unk00] + && sp1D0.x - lbl_1_rodata_10[temp_r28->unk00] - lbl_1_rodata_70[temp_r28->unk00] - 50.0f < (phi_r26 - 3) * 100 && sp1D0.x + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00] + 50.0f > (phi_r26 - 3) * 100) + { + if (temp_r28->unk00 < 10) { + if (sp238[phi_r26] < sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00]) { + sp238[phi_r26] = sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00]; + } + } else { + if (sp21C[phi_r26] < sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00]) { + sp21C[phi_r26] = sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00] + (temp_r28->unk00 < 11); + } + } + } + } + } + } + } + phi_r26 = (s32) (300.0f + arg0->trans.x + 2000.0f) / 100 - 20; + phi_r26 = (phi_r26 < 0) ? 0 + : (phi_r26 >= 7) ? 6 + : phi_r26; + for (i = 0, phi_r22 = phi_r26; i < 7; i++) { + var_r19 = ((temp_r31->unk00 / 2) % 2 == 0) ? i : (6 - i); + if (sp21C[phi_r22] - 60.0 * fabs(phi_r22 - phi_r26) < sp21C[var_r19] - 60.0 * fabs(var_r19 - phi_r26) && sp238[var_r19] < sp21C[var_r19]) { + phi_r22 = var_r19; + } + } + sp238[phi_r22] -= 1.0f; + for (i = 0, phi_r23 = phi_r26; i < 7; i++) { + var_r17 = ((temp_r31->unk00 / 2) % 2 == 0) ? i : (6 - i); + if (sp238[phi_r23] > sp238[var_r17]) { + phi_r23 = var_r17; + } + } + sp140 = arg0->trans.z - (temp_r31->unk00 == 0 ? -100.0f : 700.0f); + sp13C = (((sp238[phi_r22] > sp140 - 400.0f || sp140 > 550.0f) ? phi_r23 + : (sp140 > 500.0f) ? ((sp140 - 500.0f) / 50.0f) * phi_r23 + (1.0f - (sp140 - 500.0f) / 50.0f) * phi_r22 + : phi_r22) - 3.0f) * 100.0f - arg0->trans.x; + { + float sp1C4[] = { -21.0f, 0.0f, 15.0f }; + float sp1B8[] = { 60.0f, 65.0f, 53.0f }; + float sp1AC[] = { 54.0f, 72.0f, 59.0f }; + float sp1A0[] = { -15.0f, 7.0f, 22.0f }; + + var_r18 = (temp_r31->unk14 / 5) % 3; + var_r18 = (temp_r31->unk00 == 0) ? (arg0->trans.z < 200.0f ? 0 : 1) : 2; + sp13C /= 20.0f; + sp13C = (sp13C < -1.0f) ? sp13C + : (sp13C > 1.0f) ? 1.0f + : sp13C; + sp138 = (sp13C < 0.0f) ? -sp13C : sp13C; + sp134 = 1.0f - sp138; + sp154 = (sp13C < 0.0f) + ? (36.0f * sp134 + sp138 * sp1C4[var_r18]) + : (36.0f * sp134 + sp138 * sp1B8[var_r18]); + sp150 = (sp13C < 0.0f) + ? (42.0f * sp134 + sp138 * sp1AC[var_r18]) + : (42.0f * sp134 + sp138 * sp1A0[var_r18]); + } + temp_f23 = temp_r31->unk38 - sp154; + temp_f22 = temp_r31->unk3C - sp150; + if (sqrtf(temp_f23 * temp_f23 + temp_f22 * temp_f22) > 50.0f) { + temp_r31->unk40++; + } else { + temp_r31->unk40 = 0; + } + if (temp_r31->unk40 >= 2) { + sp154 = temp_r31->unk38; + sp150 = temp_r31->unk3C; + temp_r31->unk40 = 0; + } + temp_r31->unk38 = sp154; + temp_r31->unk3C = sp150; + } + } + } + if (temp_r31->unk20 == 2) { + sp130 = arg0->trans.y; + sp12C = arg0->trans.z; + phi_r25 = 4; + arg0->trans.z += 9.375; + if (temp_r31->unk00 == 0 + && lbl_1_data_1900 != -1 + && arg0->trans.z > (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) + 50.0f + && sp12C <= (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) + 50.0f) + { + HuAudFXStop(lbl_1_data_1900); + lbl_1_data_1900 = -1; + } + temp_r31->unk30 -= 1.0f; + arg0->trans.y += (arg0->trans.z > (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) - 50.0f) + ? temp_r31->unk30 : 0.0f; + if (temp_r31->unk00 == 0 && lbl_1_data_1900 == -1 && arg0->trans.z > 670.0f && arg0->trans.z < 1450.0f && arg0->trans.y == 0.0f && sp130 > 0.0f) { + lbl_1_data_1900 = HuAudFXPlay(0x612); + } + if (arg0->trans.z < 1400.0f && arg0->trans.y <= 0.0f) { + arg0->trans.y = 0.0f; + temp_r31->unk30 = 0.0f; + } + arg0->rot.y += (arg0->rot.y < 0.0f) ? 360 + : (arg0->rot.y > 360.0f) ? -360 : 0; + arg0->rot.y = (arg0->rot.y > 140.0f && arg0->rot.y < 220.0f) ? 180.0f + : (arg0->rot.y < 180.0f) ? (40.0f + arg0->rot.y) + : (arg0->rot.y > 180.0f) ? (arg0->rot.y - 40.0f) + : arg0->trans.y;; + if (lbl_1_bss_C % 4 < 3) { + Hu3DModelAttrReset(arg0->model[0], 1); + } else { + Hu3DModelAttrSet(arg0->model[0], 1); + } + if (arg0->trans.y < -500.0f) { + temp_r31->unk20 = 3; + Hu3DModelAttrSet(arg0->model[0], 1); + } + } else if (temp_r31->unk20 != 3 && temp_r31->unk20 != 4) { + if (temp_r31->unk20 == 5) { + if (temp_r31->unk24 == 0) { + phi_r25 = 3; + Hu3DMotionSpeedSet(arg0->model[0], 1.0f); + Hu3DModelAttrReset(arg0->model[0], 1); + } + temp_r31->unk24++; + if (temp_r31->unk24 == 30) { + temp_r31->unk1C = -1; + temp_r31->unk18 = phi_r25 = 0; + Hu3DMotionShiftSet(arg0->model[0], arg0->motion[0], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + if (temp_r31->unk24 >= 31 && temp_r31->unk24 <= 38) { + arg0->trans.x -= 150.0 * -sind(arg0->rot.y) / 7.0; + arg0->trans.z -= 150.0 * -cosd(arg0->rot.y) / 7.0; + } else { + arg0->trans.x = lbl_1_data_F0[9][temp_r31->unk00].unk0C; + arg0->trans.y = (temp_r31->unk00 == 0) ? 300 : 0; + arg0->trans.z = lbl_1_data_F0[9][temp_r31->unk00].unk14; + } + if (temp_r31->unk24 == 34 && temp_r31->unk00 == 0) { + Hu3DMotionTimeSet(lbl_1_bss_38->model[temp_r31->unk00 + 79], 15.0f + Hu3DMotionTimeGet(lbl_1_bss_38->model[temp_r31->unk00 + 79])); + } + if (temp_r31->unk24 == 38) { + temp_r31->unk20 = 1; + } + } else { + float temp_f31 = 0.25 * sp154; + float temp_f30 = 0.25 * -sp150; + Vec sp194 = { 0.0f, 0.0f, 0.0f }; + + sp194.x = temp_f31; + sp194.z = temp_f30; + PSMTXRotRad(sp254, 'y', MTXDegToRad(CRot.y)); + PSMTXMultVec(sp254, &sp194, &sp194); + temp_f31 = sp194.x; + temp_f30 = sp194.z; + sp158 = sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30); + if (sp158 >= 0.5f) { + if (sp158 < 10.0f) { + temp_r31->unk2C = temp_f31; + temp_r31->unk34 += temp_f30; + } else { + temp_f31 /= sp158; + temp_f30 /= sp158; + sp158 = 10.0f; + temp_r31->unk2C = temp_f31 * sp158; + temp_r31->unk34 = temp_f30 * sp158; + } + temp_r31->unk28 = sp158; + arg0->rot.y = atan2d(temp_r31->unk2C, temp_r31->unk34); + if (temp_r31->unk20 == 1) { + if (temp_r31->unk28 >= 8.0f) { + phi_r25 = 2; + } else { + phi_r25 = 1; + } + } + } else if (temp_r31->unk20 == 1) { + phi_r25 = 0; + } + if (lbl_1_bss_34 == 1005 && (temp_r31->unk20 == 1 || temp_r31->unk20 == 0)) { + temp_r31->unk1C = (lbl_1_data_18F4[temp_r31->unk00 == 0 ? 0 : 1] > 0) ? 6 : 7; + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + temp_r31->unk20 = 0; + if (lbl_1_bss_8 == 1.0f && lbl_1_data_18F4[temp_r31->unk00 == 0 ? 0 : 1] > 0) { + s32 sp1FC[] = { + 0x122, 0x162, 0x1A2, 0x1E2, + 0x222, 0x262, 0x2A2, 0x2E2 + }; + + HuAudFXPlay(sp1FC[temp_r31->unk08]); + } + } + if (lbl_1_bss_34 >= 1004 && temp_r31->unk20 == 0) { + arg0->rot.y = 2.4f + 0.8f * arg0->rot.y; + if (temp_r31->unk18 != 6 && temp_r31->unk18 != 7) { + phi_r25 = 0; + } + } + arg0->trans.x += temp_r31->unk2C; + arg0->trans.z += temp_r31->unk34; + if (temp_r31->unk00 != 0) { + for (phi_r21 = 1; phi_r21 < 4; phi_r21++) { + temp_f27 = lbl_1_bss_3C[phi_r21]->trans.x - arg0->trans.x; + phi_f29 = lbl_1_bss_3C[phi_r21]->trans.z - arg0->trans.z; + if (phi_r21 != temp_r31->unk00) { + if (temp_f27 == 0.0f && phi_f29 == 0.0f) { + phi_f29 = -1.0f; + } + sp128 = sqrtf(temp_f27 * temp_f27 + phi_f29 * phi_f29); + if (sp128 < 100.0f) { + temp_f27 *= (100.0f / sp128); + phi_f29 *= (100.0f / sp128); + arg0->trans.x = lbl_1_bss_3C[phi_r21]->trans.x - temp_f27; + arg0->trans.z = lbl_1_bss_3C[phi_r21]->trans.z - phi_f29; + } + } + } + } + if (lbl_1_bss_34 > 1001) { + for (phi_r24 = 0; phi_r24 < 12; phi_r24++) { + if (phi_r24 == 9 && lbl_1_bss_34 <= 1001) { + } + for (phi_r20 = 0; phi_r20 < (phi_r24 < 10 ? 4 : 10); phi_r20++) { + temp_r29 = &lbl_1_data_F0[phi_r24][phi_r20]; + sp124 = (phi_r24 < 10) ? (phi_r24 * 4 + 43 + phi_r20) + : ((phi_r24 - 10) * 10 + 83 + phi_r20); + if (temp_r29->unk04 != 0 && temp_r29->unk2C <= 0) { + Vec sp188; + + Hu3DModelObjPosGet(lbl_1_bss_38->model[sp124], lbl_1_data_1828[temp_r29->unk00], &sp188); + if (((temp_r29->unk04 == 3 || (temp_r29->unk04 == 4 && sp188.y >= 250.0f)) && temp_r31->unk00 == 0) + || (((temp_r29->unk04 == 4 && sp188.y < 250.0f) || temp_r29->unk04 == 5 || temp_r29->unk04 == 6) && temp_r31->unk00 != 0)) + { + sp11C = sp188.x; + sp118 = sp188.z; + if (lbl_1_rodata_40[temp_r29->unk00] > 0.0f || lbl_1_rodata_70[temp_r29->unk00] > 0.0f) { + sp11C = (arg0->trans.x < sp11C - lbl_1_rodata_40[temp_r29->unk00]) ? (sp11C - lbl_1_rodata_40[temp_r29->unk00]) + : (arg0->trans.x > sp11C + lbl_1_rodata_40[temp_r29->unk00]) ? (sp11C + lbl_1_rodata_40[temp_r29->unk00]) + : arg0->trans.x; + sp118 = (arg0->trans.z < sp118 - lbl_1_rodata_70[temp_r29->unk00]) ? (sp118 - lbl_1_rodata_70[temp_r29->unk00]) + : (arg0->trans.z > sp118 + lbl_1_rodata_70[temp_r29->unk00]) ? (sp118 + lbl_1_rodata_70[temp_r29->unk00]) + : arg0->trans.z; + } + temp_f26 = sp11C - arg0->trans.x; + phi_f28 = sp118 - arg0->trans.z; + if (phi_r24 < 10 && temp_f26 == 0.0f && phi_f28 == 0.0f) { + phi_f28 = -1.0f; + } + sp120 = sqrtf(temp_f26 * temp_f26 + phi_f28 * phi_f28); + if (sp120 < 50.0f + lbl_1_rodata_10[temp_r29->unk00]) { + if (phi_r24 < 10) { + temp_f26 *= (50.0f + lbl_1_rodata_10[temp_r29->unk00]) / sp120; + phi_f28 *= (50.0f + lbl_1_rodata_10[temp_r29->unk00]) / sp120; + arg0->trans.x = sp11C - temp_f26; + arg0->trans.z = sp118 - phi_f28; + } else { + temp_r29->unk04 = 0; + lbl_1_data_18F4[temp_r31->unk00 == 0 ? 0 : 1] += (phi_r24 == 10 ? 1 : 5); + CharModelCoinEffectCreate(-1, &sp188); + if (lbl_1_bss_54[phi_r24 == 10 ? 8 : 9].unk00 < 3) { + lbl_1_bss_54[phi_r24 == 10 ? 8 : 9].unk04[lbl_1_bss_54[phi_r24 == 10 ? 8 : 9].unk00] = 0.0f; + lbl_1_bss_54[phi_r24 == 10 ? 8 : 9].unk00++; + } + } + } + } + } + } + } + } + if (arg0->trans.z > (temp_r31->unk00 == 0 ? 620.0f : 1400.0f) - 50.0f) { + temp_r31->unk20 = 2; + temp_r31->unk30 = 0.0f; + HuAudCharVoicePlay(temp_r31->unk08, 0x123); + } + if (temp_r31->unk20 != 2) { + if (arg0->trans.x > (temp_r31->unk00 == 0 ? 400 : 400) - 50.0f) { + arg0->trans.x = (temp_r31->unk00 == 0 ? 400 : 400) - 50.0f; + } + if (arg0->trans.x < -(temp_r31->unk00 == 0 ? 400 : 400) + 50.0f) { + arg0->trans.x = -(temp_r31->unk00 == 0 ? 400 : 400) + 50.0f; + } + if (arg0->trans.z < (temp_r31->unk00 == 0 ? 0.0f : 600.0f) + 50.0f) { + arg0->trans.z = (temp_r31->unk00 == 0 ? 0.0f : 600.0f) + 50.0f; + } + if (arg0->trans.z > (temp_r31->unk00 == 0 ? 620.0f : 1400.0f) - 50.0f) { + arg0->trans.z = (temp_r31->unk00 == 0 ? 620.0f : 1400.0f) - 50.0f; + } + } + } + } + if (lbl_1_bss_34 == 1001) { + sp114 = temp_r31->unk00; + if (lbl_1_bss_8 == 23.0f) { + Hu3DMotionSet(lbl_1_bss_38->model[temp_r31->unk00 + 79], lbl_1_bss_38->motion[temp_r31->unk00 + 22]); + Hu3DModelAttrReset(lbl_1_bss_38->model[temp_r31->unk00 + 79], HU3D_MOTATTR_PAUSE); + if (lbl_1_bss_54[4].unk00 < 3) { + lbl_1_bss_54[4].unk04[lbl_1_bss_54[4].unk00] = 0.0f; + lbl_1_bss_54[4].unk00++; + } + } + if (lbl_1_bss_8 == 43.0f) { + Hu3DModelAttrSet(lbl_1_bss_38->model[temp_r31->unk00 + 79], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_8 == 80.0f) { + Hu3DMotionTimeSet(lbl_1_bss_38->model[temp_r31->unk00 + 79], 20.0f); + Hu3DModelAttrReset(lbl_1_bss_38->model[temp_r31->unk00 + 79], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_8 == 100.0f && lbl_1_bss_54[0].unk00 < 3) { + lbl_1_bss_54[0].unk04[lbl_1_bss_54[0].unk00] = 0.0f; + lbl_1_bss_54[0].unk00++; + } + if (lbl_1_bss_8 == 106.0f) { + Hu3DModelAttrReset(lbl_1_bss_38->model[temp_r31->unk00 + 39], 1); + Hu3DParticleCntSet(lbl_1_bss_38->model[temp_r31->unk00 + 39], 0); + lbl_1_bss_18 = 1; + } + if (lbl_1_bss_8 == 60.0f) { + Hu3DModelAttrReset(arg0->model[0], 1); + Hu3DMotionSet(arg0->model[0], arg0->motion[3]); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_8 == 61.0f) { + Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_8 == 120.0f) { + phi_r25 = 3; + Hu3DModelAttrReset(arg0->model[0], 1); + } + if (lbl_1_bss_8 == 155.0f) { + phi_r25 = 0; + } + arg0->trans.x = lbl_1_data_F0[9][sp114].unk0C; + arg0->trans.z = (lbl_1_bss_8 > 163.0f) ? arg0->trans.z + : (lbl_1_bss_8 > 155.0f) ? (arg0->trans.z - 18.75) + : lbl_1_data_F0[9][sp114].unk14; + } + if (temp_r31->unk1C >= 0) { + phi_r25 = temp_r31->unk1C; + } + if (phi_r25 >= 0 && phi_r25 != temp_r31->unk18) { + Hu3DMotionShiftSet(arg0->model[0], arg0->motion[phi_r25], 0.0f, lbl_1_data_E7[phi_r25], (lbl_1_data_E0[phi_r25] != 0) ? HU3D_MOTATTR_NONE : HU3D_MOTATTR_LOOP); + temp_r31->unk18 = phi_r25; + } +} + +s32 fn_1_34BC(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { + Vec sp1C; + float var_f27; + float var_f28; + float var_f25; + float var_f26; + float temp_f30; + float var_f31; + float sp18; + StructDataF0* temp_r31; + s32 var_r24; + s32 i; + s32 j; + + for (i = 0; i < 12; i++) { + for (j = 0; j < (i < 10 ? 4 : 10); j++) { + temp_r31 = &lbl_1_data_F0[i][j]; + var_r24 = (i < 10) ? (i * 4 + 43 + j) : ((i - 10) * 10 + 83 + j); + if (temp_r31->unk04 != 0 && temp_r31->unk2C <= 0) { + Hu3DModelObjPosGet(lbl_1_bss_38->model[var_r24], lbl_1_data_1828[temp_r31->unk00], &sp1C); + if (temp_r31->unk04 == 3 || temp_r31->unk04 == 5) { + var_f27 = (temp_r31->unk08 == 0) ? temp_r31->unk0C : sp1C.x; + var_f28 = (temp_r31->unk08 == 0) ? temp_r31->unk14 : sp1C.z; + var_f25 = 50.0f + lbl_1_rodata_70[temp_r31->unk00]; + var_f26 = 50.0f + lbl_1_rodata_70[temp_r31->unk00]; + if (temp_r31->unk04 == 3) { + float sp28[][12] = { + { + -25.0f, -25.0f, -25.0f, + -6.6875f, -6.6875f, -6.6875f, + 62.765625f, 62.765625f, 62.765625f, + 51.99469f, 76.875f, 45.0f + }, + { + -27.647583f, -27.647583f, -27.647583f, + -9.64325f, -9.64325f, -9.64325f, + 60.49022f, 60.49022f, 60.49022f, + 51.99469f, 76.875f, 45.0f + } + }; + + var_f28 += sp28[temp_r31->unk08 == 0 ? 0 : 1][temp_r31->unk00]; + var_f25 += 50.0f; + var_f26 += 50.0f; + } else if (temp_r31->unk04 == 5 && temp_r31->unk08 == 0) { + var_f28 += lbl_1_rodata_130[temp_r31->unk00]; + } else if (temp_r31->unk04 == 1) { + var_f27 = (temp_r31->unk0C < 0.0f ? -1 : 1) * 321; + var_f28 = 880.0f - lbl_1_bss_0 * (100 - temp_r31->unk08); + } + if (temp_r31->unk00 == 9) { + var_f26 += 300.0f; + } + if (lbl_1_rodata_40[temp_r31->unk00] > 0.0f || var_f25 > 0.0f || var_f26 > 0.0f) { + var_f27 = (arg0 < var_f27 - lbl_1_rodata_40[temp_r31->unk00]) ? (var_f27 - lbl_1_rodata_40[temp_r31->unk00]) + : (arg0 > var_f27 + lbl_1_rodata_40[temp_r31->unk00]) ? (var_f27 + lbl_1_rodata_40[temp_r31->unk00]) + : arg0; + var_f28 = (arg1 < var_f28 - var_f25) ? (var_f28 - var_f25) + : (arg1 > var_f28 + var_f26) ? (var_f28 + var_f26) + : arg1; + } + temp_f30 = var_f27 - arg0; + var_f31 = var_f28 - arg1; + if (i < 10 && temp_f30 == 0.0f && var_f31 == 0.0f) { + var_f31 = -1.0f; + } + sp18 = sqrtf(temp_f30 * temp_f30 + var_f31 * var_f31); + if (sp18 < arg2 + lbl_1_rodata_10[temp_r31->unk00]) { + return 1; + } + } + } + } + } + return 0; +} + +void fn_1_3B74(omObjData* arg0) { + StructBss3CData* sp354[4]; + Vec sp348; + s32 var_r20; + s32 var_r19; + s32 var_r18; + s32 var_r17; + s32 sp230; + s32 sp22C; + s32 sp228; + s32 sp224; + s32 sp220; + s32 sp21C; + s32 sp218; + float sp214; + float sp210; + float sp20C; + s32 sp208; + float var_f25; + float var_f24; + float temp_f21; + float temp_f20; + float temp_f23; + float temp_f22; + float temp_f26; + float temp_f28; + float temp_f27; + float temp_f29; + float temp_f30; + float temp_f31; + StructDataF0* temp_r31; + s32 var_r21; + s32 var_r28; + s32 var_r27; + s32 var_r25; + s32 i; + s32 j; + + for (i = 0; i < 4; i++) { + sp354[i] = lbl_1_bss_3C[i]->data; + } + lbl_1_bss_C++; + lbl_1_bss_0 = (lbl_1_bss_34 <= 1002) ? 1.5 + : (lbl_1_bss_34 == 1003) ? (7.5 * (lbl_1_bss_8 > 120.0f ? 1.0 : (0.2 + 0.8 * (lbl_1_bss_8 / 120.0)))) + : 0.0; + lbl_1_bss_4 = (lbl_1_bss_34 < 1005 && sp354[0]->unk20 >= 2 && sp354[0]->unk20 <= 5 + && !(lbl_1_bss_34 == 1003 && lbl_1_bss_8 <= 120.0f)) ? 7.5 : lbl_1_bss_0; + Hu3DMotionSpeedSet(arg0->model[1], 1.5 * lbl_1_bss_4 / 7.5); + Hu3DMotionSpeedSet(arg0->model[3], 1.5 * lbl_1_bss_0 / 7.5); + if (lbl_1_data_18B0 != -1) { + temp_f21 = 1.5 * lbl_1_bss_4 / 7.5; + HuAudFXPitchSet(lbl_1_data_18B0, 8190.0f * temp_f21 - 8190.0f); + HuAudFXVolSet(lbl_1_data_18B0, temp_f21 <= 0.001 ? 0 : 127); + } + if (lbl_1_bss_34 <= 1001) { + temp_f31 = (lbl_1_bss_34 == 1000 || lbl_1_bss_8 < 60.0f) ? 0.0 + : (lbl_1_bss_8 < 120.0f) ? (lbl_1_bss_8 - 60.0f) / 60.0 + : 1.0; + temp_f31 = 1.0f - temp_f31; + temp_f31 *= temp_f31; + temp_f31 = 1.0f - temp_f31; + temp_f28 = 1.0f - temp_f31; + Center.x = 690.0f * temp_f31; + Center.y = 400.0f * temp_f28 + 1340.0f * temp_f31; + Center.z = 500.0f * temp_f28 + 1380.0f * temp_f31; + CRot.x = -10.0f * temp_f28 + -50.8125f * temp_f31; + CRot.y = 40.0f * temp_f31; + CZoom = 2126.6f * temp_f28 + 2126.6f * temp_f31; + Center.x = 700.0f * temp_f31; + Center.y = 400.0f * temp_f28 + 870.0f * temp_f31; + Center.z = 500.0f * temp_f28 + 1320.0f * temp_f31; + CRot.x = -10.0f * temp_f28 + -37.25f * temp_f31; + CRot.y = 40.0f * temp_f31; + } + if (lbl_1_bss_34 == 1005 && lbl_1_bss_8 < 100.0f) { + temp_f30 = (lbl_1_bss_8 < 90.0f) ? (lbl_1_bss_8 / 90.0) : 1.0; + temp_f30 = 1.0f - temp_f30; + temp_f30 *= temp_f30; + temp_f30 = 1.0f - temp_f30; + temp_f26 = 1.0f - temp_f30; + Center.x = 120.0f * temp_f30 + 700.0f * temp_f26; + Center.y = 292.5f * temp_f30 + 870.0f * temp_f26; + Center.z = 1200.0f * temp_f30 + 1320.0f * temp_f26; + CRot.x = -19.5f * temp_f30 + -37.25f * temp_f26; + CRot.y = 13.5f * temp_f30 + 40.0 * temp_f26; + CZoom = 2126.6f * temp_f30 + 2126.6f * temp_f26; + } + var_r20 = (sp354[0]->unk20 == 3 && (lbl_1_data_F0[9][0].unk04 == 0 || lbl_1_bss_34 != 1003)); + sp22C = (sp354[1]->unk20 == 3 && (lbl_1_data_F0[9][1].unk04 == 0 || lbl_1_bss_34 != 1003)) + + (sp354[2]->unk20 == 3 && (lbl_1_data_F0[9][2].unk04 == 0 || lbl_1_bss_34 != 1003)) + + (sp354[3]->unk20 == 3 && (lbl_1_data_F0[9][3].unk04 == 0 || lbl_1_bss_34 != 1003)); + var_r19 = (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 0) ? (rand8() % 2 + 1 + var_r20) : var_r20; + var_r18 = (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 120 == 0) ? (rand8() % 2 + 1) : 0; + var_r17 = sp22C + (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 0 && lbl_1_bss_28 > 120); + sp228 = (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 0) ? (rand8() % 2 + 2) : 0; + sp224 = 0; + var_r19 = (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 0) ? ((rand8() % 4 < 3) + 1 + var_r20) : var_r20; + var_r18 = (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 120 == 1) ? (rand8() % 2 + 1) : 0; + var_r17 = sp22C + (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 38 && lbl_1_bss_28 > 120); + sp228 = (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 0) ? (rand8() % 2 + 2) : 0; + while (var_r19 > 0 || var_r18 > 0 || var_r17 > 0 || sp228 > 0) { + var_r27 = (rand8() % 2 == 0) + ? ((var_r17 != 0) ? 3 + : (sp228 != 0) ? 4 + : (var_r19 != 0) ? 1 + : (var_r18 != 0) ? 2 : 0) + : ((var_r17 != 0) ? 3 + : (var_r19 != 0) ? 1 + : (sp228 != 0) ? 4 + : (var_r18 != 0) ? 2 : 0); + sp224++; + if (sp224 > 8) { + var_r19 -= (var_r27 == 1); + var_r18 -= (var_r27 == 2); + var_r17 -= (var_r27 == 3); + sp228 -= (var_r27 == 4); + sp224 = 0; + } else if (var_r27 == 1 || var_r27 == 2 || var_r27 == 3 || var_r27 == 4) { + var_r28 = (var_r27 != 4) ? (rand8() % 9) : 10; + if (var_r27 == 1 && var_r20 != 0) { + var_r28 = 9; + i = 0; + } else if (var_r27 == 3 && sp22C != 0) { + var_r28 = 9; + i = (sp354[(lbl_1_bss_C % 3) + 1]->unk20 == 3 && (lbl_1_data_F0[9][lbl_1_bss_C % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) ? (lbl_1_bss_C % 3 + 1) + : (sp354[(lbl_1_bss_C + 1) % 3 + 1]->unk20 == 3 && (lbl_1_data_F0[9][(lbl_1_bss_C + 1) % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) ? ((lbl_1_bss_C + 1) % 3 + 1) + : (sp354[(lbl_1_bss_C + 2) % 3 + 1]->unk20 == 3 && (lbl_1_data_F0[9][(lbl_1_bss_C + 2) % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) ? ((lbl_1_bss_C + 2) % 3 + 1) : 0; + } else { + if (var_r28 == 10 && (lbl_1_bss_28 / 60) / 15 + 1 <= 2 - lbl_1_bss_14 && rand8() % (((lbl_1_bss_28 / 60 - (1 - lbl_1_bss_14) * 15) * 3) + 1) == 0) { + var_r28 = 11; + } + for (i = 0; i < (var_r27 != 4 ? 4 : 10); i++) { + if (lbl_1_data_F0[var_r28][i].unk04 == 0) { + break; + } + } + if (i >= (var_r27 != 4 ? 4 : 10)) { + continue; + } + } + lbl_1_data_F0[var_r28][i].unk0C = (var_r27 != 3) + ? (rand8() % 7 - 3) * 100 + : ((rand8() % 2) * 2 - 1) * 1595; + if (i == 0 && lbl_1_bss_34 >= 1004 && var_r28 == 9) { + lbl_1_data_F0[var_r28][i].unk0C = 0.0f; + } + lbl_1_data_F0[var_r28][i].unk10 = (var_r27 == 1) ? 300 + : (var_r27 == 2) ? 0 + : (var_r27 == 3) ? 500 + : (var_r27 == 4) ? 300 : 0; + lbl_1_data_F0[var_r28][i].unk14 = (var_r27 == 1) ? -450 + : (var_r27 == 2) ? -450 + : (var_r27 == 3) ? 105 + : (var_r27 == 4) ? -150 : 0; + lbl_1_data_F0[var_r28][i].unk14 += (var_r27 == 1) ? -(var_r28 <= 8 ? 0 : 0) + : (var_r27 == 2) ? -(var_r28 <= 8 ? (var_r28 / 3) * 80 : 0) + : (var_r27 == 4) ? -50 : 0; + lbl_1_data_F0[var_r28][i].unk14 += (var_r27 == 1) + ? ((var_r28 <= 2) ? 315.0 + : (var_r28 <= 5) ? 296.6875 + : (var_r28 <= 8) ? 227.234375 + : (var_r28 == 9) ? 200 : 0) : 0.0; + if (var_r27 == 1 || var_r27 == 4) { + float sp3C4[] = { + -25.0f, -25.0f, -25.0f, + -6.6875f, -6.6875f, -6.6875f, + 62.765625f, 62.765625f, 62.765625f, + 51.99469f, 76.875f, 45.0f, + -27.647583f, -27.647583f, -27.647583f, + -9.64325f, -9.64325f, -9.64325f, + 60.49022f, 60.49022f, 60.49022f, + 51.99469f, 76.875f, 45.0f + }; + + var_f25 = lbl_1_data_F0[var_r28][i].unk0C; + var_f24 = sp3C4[var_r28] + lbl_1_data_F0[var_r28][i].unk14; + } else if (var_r27 == 2) { + var_f25 = lbl_1_data_F0[var_r28][i].unk0C; + var_f24 = lbl_1_rodata_130[var_r28] + lbl_1_data_F0[var_r28][i].unk14; + } else if (var_r27 == 3) { + var_f25 = (lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? -335 : 335; + var_f24 = 830.0f - 94.0f * lbl_1_bss_0; + } else { + var_f25 = lbl_1_data_F0[var_r28][i].unk0C; + var_f24 = lbl_1_data_F0[var_r28][i].unk14; + } + if (fn_1_34BC(var_f25, var_f24, lbl_1_rodata_10[lbl_1_data_F0[var_r28][i].unk00] + lbl_1_rodata_40[lbl_1_data_F0[var_r28][i].unk00], var_r28, 0) != 0) { + continue; + } + if (var_r27 == 3 && lbl_1_data_18A4[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 0 : 1] > 0) { + continue; + } + if (var_r27 == 4) { + for (var_r21 = 0; var_r21 < 10; var_r21++) { + if (lbl_1_data_F0[10][var_r21].unk04 != 0 + && fabs(lbl_1_data_F0[var_r28][i].unk14 - lbl_1_data_F0[10][var_r21].unk14) <= 100.0 + && fabs(lbl_1_data_F0[var_r28][i].unk0C - lbl_1_data_F0[10][var_r21].unk0C) <= 200.0) + { + break; + } + if (lbl_1_data_F0[11][var_r21].unk04 != 0 + && fabs(lbl_1_data_F0[var_r28][i].unk14 - lbl_1_data_F0[11][var_r21].unk14) <= 100.0 + && fabs(lbl_1_data_F0[var_r28][i].unk0C - lbl_1_data_F0[11][var_r21].unk0C) <= 200.0) + { + break; + } + } + if (var_r21 < 10 || (lbl_1_data_F0[var_r28][i].unk0C >= -100.0f && lbl_1_data_F0[var_r28][i].unk0C <= 100.0f)) { + continue; + } + } + if (var_r28 == 11) { + lbl_1_bss_14++; + } + if ((lbl_1_bss_28 / 60) / 15 == 0 && lbl_1_bss_14 == 0) { + lbl_1_bss_14++; + } + lbl_1_data_F0[var_r28][i].unk00 = var_r28; + lbl_1_data_F0[var_r28][i].unk04 = (var_r27 == 1) ? 3 + : (var_r27 == 2) ? 5 + : (var_r27 == 3) ? 1 + : (var_r27 == 4) ? 3 : 0; + lbl_1_data_F0[var_r28][i].unk08 = 0; + lbl_1_data_F0[var_r28][i].unk2C = 0; + lbl_1_data_F0[var_r28][i].unk18 = lbl_1_data_F0[var_r28][i].unk1C = lbl_1_data_F0[var_r28][i].unk20 = 0.0f; + if (var_r27 != 4) { + sp220 = var_r28 * 4 + 43 + i; + Hu3DMotionTimeSet(arg0->model[sp220], (var_r27 == 1 || var_r27 == 3) ? 1.0f : Hu3DMotionMaxTimeGet(arg0->model[sp220])); + Hu3DModelAttrSet(arg0->model[sp220], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(arg0->model[sp220], 1); + Hu3DModelRotSet(arg0->model[sp220], 0.0f, 0.0f, 0.0f); + } else { + Hu3DModelAttrReset(arg0->model[i + (var_r28 == 10 ? 83 : 93)], 1); + } + if (var_r27 == 1 && var_r20 != 0) { + var_r20--; + sp354[0]->unk20 = 4; + } else if (var_r27 == 3 && sp22C != 0) { + sp22C--; + sp354[i]->unk20 = 4; + } + if (var_r27 == 3) { + lbl_1_data_18A4[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 0 : 1] = 85; + Hu3DMotionTimeSet(arg0->model[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 6 : 5], 9.0f); + if (var_r28 == 9 && lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk00 < 3) { + lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk04[lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk00] = 0.0f; + lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk00++; + } + } + if (var_r28 == 9) { + sp21C = var_r28 * 4 + 43 + i; + Hu3DMotionSet(arg0->model[sp21C], arg0->motion[i + 22]); + Hu3DMotionTimeSet(arg0->model[sp21C], 0.0f); + Hu3DMotionSpeedSet(arg0->model[sp21C], 2.0f); + } + var_r19 -= (var_r27 == 1); + var_r18 -= (var_r27 == 2); + var_r17 -= (var_r27 == 3); + sp228 -= (var_r27 == 4); + sp224 = 0; + } + } + for (i = 0; i < 12; i++) { + for (j = 0; j < (i < 10 ? 4 : 10); j++) { + temp_r31 = &lbl_1_data_F0[i][j]; + var_r25 = (i < 10) + ? (i * 4 + 43 + j) + : ((i - 10) * 10 + 83 + j); + sp348.x = sp348.y = sp348.z = 0.0f; + if (temp_r31->unk04 == 0) { + Hu3DModelAttrSet(arg0->model[var_r25], 1); + } else { + temp_r31->unk08++; + temp_r31->unk24 += (temp_r31->unk00 == 10) ? 0 : 0; + temp_r31->unk24 += (temp_r31->unk24 < 0.0f) ? 360 + : (temp_r31->unk24 > 360.0f) ? -360 : 0; + Hu3DModelObjPosGet(arg0->model[var_r25], lbl_1_data_1828[temp_r31->unk00], &sp348); + switch (temp_r31->unk04) { + case 3: + case 5: + case 6: + if (temp_r31->unk00 >= 3 && temp_r31->unk00 >= 9 && temp_r31->unk04 == 3 + && temp_r31->unk14 < -120.0f && temp_r31->unk14 + lbl_1_bss_4 >= -120.0f) + { + sp218 = (500.0f + temp_r31->unk0C) / 100.0f; + sp218 = (sp218 < 0) ? 0 + : (sp218 >= 11) ? 10 + : sp218; + lbl_1_data_1878[sp218] = 15; + Hu3DMotionShiftSet(arg0->model[sp218 + 8], arg0->motion[11], 20.0f, 15.0f, HU3D_MOTATTR_NONE); + if (temp_r31->unk00 == 9 && lbl_1_bss_54[5].unk00 < 3) { + lbl_1_bss_54[5].unk04[lbl_1_bss_54[5].unk00] = 0.0f; + lbl_1_bss_54[5].unk00++; + } + } + temp_r31->unk14 += (temp_r31->unk04 == 3 ? lbl_1_bss_4 : lbl_1_bss_0); + if (lbl_1_bss_34 >= 1003 && lbl_1_bss_34 < 1005) { + if ((temp_r31->unk04 == 3 && temp_r31->unk00 == 9 && temp_r31->unk14 >= 150.0f && temp_r31->unk14 - lbl_1_bss_4 < 150.0f) + || (temp_r31->unk04 == 6 && temp_r31->unk00 == 9 && temp_r31->unk08 == 1)) + { + sp354[j]->unk20 = 5; + sp354[j]->unk24 = 0; + lbl_1_bss_3C[j]->trans.x = temp_r31->unk0C; + lbl_1_bss_3C[j]->trans.y = (j == 0 ? 300 : 0); + lbl_1_bss_3C[j]->trans.z = temp_r31->unk14; + lbl_1_bss_3C[j]->rot.y = 180 + ((lbl_1_bss_20 == 4 && temp_r31->unk04 == 6) + ? (temp_r31->unk0C < 0.0f ? -45 : 45) + : 0); + Hu3DMotionSpeedSet(arg0->model[j + 79], 1.0f); + Hu3DMotionShiftSet(arg0->model[j + 79], arg0->motion[j + 22], 44.0f, 2.0f, HU3D_MOTATTR_NONE); + Hu3DParticleCntSet(arg0->model[j + 39], j == 0 ? 15 : 0); + if (lbl_1_bss_54->unk00 < 3) { + lbl_1_bss_54->unk04[lbl_1_bss_54->unk00] = 0.0f; + lbl_1_bss_54->unk00++; + } + } + } + if (temp_r31->unk04 == 3 && temp_r31->unk14 > 510.0f) { + temp_r31->unk04 = 4; + temp_r31->unk08 = 0; + if (temp_r31->unk00 != 10) { + if (temp_r31->unk00 != 9) { + Hu3DMotionTimeSet(arg0->model[var_r25], 1.0f); + } else { + Hu3DMotionSet(arg0->model[var_r25], arg0->motion[j + 26]); + Hu3DMotionTimeSet(arg0->model[var_r25], 1.0f); + Hu3DMotionSpeedSet(arg0->model[var_r25], 1.0f); + } + Hu3DModelAttrReset(arg0->model[var_r25], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); + } + } + if ((temp_r31->unk04 == 5 || temp_r31->unk04 == 6) && sp348.z > 1400.0f && temp_r31->unk14 > 700.0f) { + temp_r31->unk08 = 0; + temp_r31->unk10 = sp348.y; + temp_r31->unk14 = sp348.z; + temp_r31->unk1C = 0.0f; + if (temp_r31->unk00 == 10) { + Hu3DModelAttrSet(arg0->model[var_r25], HU3D_MOTATTR_LOOP); + } else if (temp_r31->unk00 != 9) { + Hu3DMotionTimeSet(arg0->model[var_r25], 2.0f); + Hu3DModelAttrReset(arg0->model[var_r25], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); + } else { + Hu3DMotionSet(arg0->model[var_r25], arg0->motion[(temp_r31->unk04 == 6) ? (j + 26) : (j + 30)]); + Hu3DMotionTimeSet(arg0->model[var_r25], 1.0f); + Hu3DMotionSpeedSet(arg0->model[var_r25], 1.0f); + } + temp_r31->unk04 = 7; + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, temp_r31->unk10, temp_r31->unk14); + } else { + Hu3DModelPosSet(arg0->model[var_r25], + temp_r31->unk0C, + ((temp_r31->unk00 >= 0 && temp_r31->unk00 < 10) + ? ((temp_r31->unk04 != 6 ? 300 : 0) + lbl_1_rodata_100[temp_r31->unk00]) + : temp_r31->unk10) + lbl_1_rodata_A0[temp_r31->unk00], + temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); + } + if (temp_r31->unk00 >= 10) { + Hu3DModelRotSet(arg0->model[var_r25], 0.0f, temp_r31->unk24, 0.0f); + } + break; + case 4: + if (temp_r31->unk00 >= 0 && temp_r31->unk00 < 10) { + float sp394[] = { + 0.0f, 0.0f, 0.0f, 0.9f, 0.9f, 0.9f, + 1.75f, 1.75f, 1.75f, 0.0f, 0.0f, 0.0f + }; + s32 sp364[] = { + 42, 42, 42, 41, 41, 41, + 48, 48, 48, 27, 27, 27 + }; + + if (temp_r31->unk00 >= 6 && temp_r31->unk00 <= 8) { + temp_f29 = temp_r31->unk08; + temp_f27 = (temp_f29 <= 1.0f) ? 0.0 + : (temp_f29 >= 30.0f && temp_f29 < 40.0f) ? -1.0 * (1.0 - (temp_f29 - 30.0f) / 9.0) + : (temp_f29 >= 40.0f) ? 1.0 - (temp_f29 - 40.0f) / 8.0 + : 1.0; + temp_f27 = (temp_f29 >= 40.0f) + ? -1.0 + (temp_f27 * 0.5 + temp_f27 * temp_f27 * 0.5) + : temp_f27; + temp_f27 = (temp_f29 <= 1.0f) ? 0.0 + : (temp_f29 < 23.0f) ? 1.0 + : (temp_f29 < 32.0f) ? 0.5 + : (temp_f29 < 40.0f) ? -0.8 + : (-1.0 - 0.4 * (1.0 - (temp_f29 - 40.0f) / 8.0)); + temp_r31->unk14 -= (lbl_1_bss_4 * sp394[temp_r31->unk00] / 4.0) * temp_f27; + } else { + temp_r31->unk14 -= lbl_1_bss_4 * sp394[temp_r31->unk00] / 4.0; + } + if (temp_r31->unk08 >= sp364[temp_r31->unk00]) { + temp_r31->unk10 = 0.0f; + temp_r31->unk04 = 5; + temp_r31->unk08 = 0; + } + } else { + temp_r31->unk1C -= 1.0f; + temp_r31->unk10 += temp_r31->unk1C; + temp_r31->unk14 += 1.25 * lbl_1_bss_4; + if (temp_r31->unk10 <= 0.0f) { + if (temp_r31->unk1C < -10.0f && temp_r31->unk00 == 10) { + temp_r31->unk1C = 9.0f; + } else { + temp_r31->unk1C = 0.0f; + temp_r31->unk10 = 0.0f; + temp_r31->unk04 = 5; + temp_r31->unk08 = 0; + } + } + } + Hu3DModelPosSet(arg0->model[var_r25], + temp_r31->unk0C, + lbl_1_rodata_A0[temp_r31->unk00] + ((temp_r31->unk00 >= 0 && temp_r31->unk00 < 10) ? (300.0f + lbl_1_rodata_100[temp_r31->unk00]) : temp_r31->unk10), + temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); + if (temp_r31->unk00 >= 10) { + Hu3DModelRotSet(arg0->model[var_r25], 0.0f, temp_r31->unk24, 0.0f); + } + break; + case 1: + temp_f20 = temp_r31->unk08 / 90.0; + temp_f23 = 1.0f - temp_f20; + sp214 = temp_r31->unk0C; + sp210 = temp_r31->unk10; + sp20C = temp_r31->unk14; + temp_r31->unk0C = (460.0f + 1135.0f * temp_f23) * (temp_r31->unk0C < 0.0f ? -1 : 1); + temp_r31->unk10 = 100.0f * temp_f20 + 500.0f * temp_f23; + temp_r31->unk14 = 800.0f - 695.0f * temp_f23; + temp_r31->unk18 = temp_r31->unk0C - sp214; + temp_r31->unk1C = temp_r31->unk10 - sp210; + temp_r31->unk20 = temp_r31->unk14 - sp20C; + if (temp_r31->unk08 >= 90) { + temp_r31->unk04 = 2; + temp_r31->unk08 = 0; + } + Hu3DModelPosSet(arg0->model[var_r25], + temp_r31->unk0C, + temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00], + temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); + Hu3DModelRotSet(arg0->model[var_r25], + 9.0f, + (temp_r31->unk0C < 0.0f) ? -31 : 31, + (temp_r31->unk0C < 0.0f) ? -18 : 18); + break; + case 2: + temp_r31->unk1C -= (temp_r31->unk00 != 9) ? 0.625 : 0.9; + temp_r31->unk0C += temp_r31->unk18; + temp_r31->unk10 += temp_r31->unk1C; + temp_r31->unk14 += temp_r31->unk20; + if (temp_r31->unk10 <= lbl_1_rodata_100[temp_r31->unk00]) { + temp_r31->unk10 = -lbl_1_rodata_100[temp_r31->unk00]; + temp_r31->unk1C = 0.0f; + temp_r31->unk04 = 6; + temp_r31->unk08 = 0; + Hu3DModelPosSet(arg0->model[var_r25], + temp_r31->unk0C, + temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00] + lbl_1_rodata_100[temp_r31->unk00] + lbl_1_rodata_100[temp_r31->unk00], + temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); + Hu3DModelRotSet(arg0->model[var_r25], 0.0f, (temp_r31->unk0C < 0.0f) ? -31 : 31, 0.0f); + } else { + Hu3DModelPosSet(arg0->model[var_r25], + temp_r31->unk0C, + temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00], + temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); + } + break; + case 7: + temp_r31->unk1C -= 1.0f; + temp_r31->unk10 += temp_r31->unk1C; + temp_r31->unk14 += (temp_r31->unk00 >= 10) ? lbl_1_bss_0 : 0.0f; + if (temp_r31->unk10 <= -800.0f) { + Hu3DModelAttrSet(arg0->model[var_r25], 1); + if (temp_r31->unk00 == 9) { + Hu3DMotionSet(arg0->model[var_r25], arg0->motion[j + 22]); + Hu3DMotionTimeSet(arg0->model[var_r25], 0.0f); + Hu3DMotionSpeedSet(arg0->model[var_r25], 2.0f); + } + temp_r31->unk04 = 0; + } + Hu3DModelPosSet(arg0->model[var_r25], + temp_r31->unk0C, + (temp_r31->unk00 >= 0 && temp_r31->unk00 < 9) ? (300.0f + lbl_1_rodata_100[temp_r31->unk00]) : temp_r31->unk10, + temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, temp_r31->unk10, temp_r31->unk14); + if (temp_r31->unk00 >= 10) { + Hu3DModelRotSet(arg0->model[var_r25], 0.0f, temp_r31->unk24, 0.0f); + } + break; + } + if (temp_r31->unk00 >= 0 && temp_r31->unk00 <= 8 && (temp_r31->unk04 == 4 || temp_r31->unk04 == 5)) { + sp208 = Hu3DMotionTimeGet(arg0->model[var_r25]); + if (temp_r31->unk00 >= 0 && temp_r31->unk00 <= 2 && (sp208 == 26 || sp208 == -41) && lbl_1_bss_54[3].unk00 < 3) { + lbl_1_bss_54[3].unk04[lbl_1_bss_54[3].unk00] = 0.0f; + lbl_1_bss_54[3].unk00++; + } + if (temp_r31->unk00 >= 3 && temp_r31->unk00 <= 5 && (sp208 == 23 || sp208 == -39) && lbl_1_bss_54[2].unk00 < 3) { + lbl_1_bss_54[2].unk04[lbl_1_bss_54[2].unk00] = 0.0f; + lbl_1_bss_54[2].unk00++; + } + if (temp_r31->unk00 >= 6 && temp_r31->unk00 <= 8 && (sp208 == 20 || sp208 == -29) && lbl_1_bss_54[1].unk00 < 3) { + lbl_1_bss_54[1].unk04[lbl_1_bss_54[1].unk00] = 0.0f; + lbl_1_bss_54[1].unk00++; + } + } + if (i == 9 && lbl_1_bss_18 != 0) { + ModelData* sp204 = &Hu3DData[arg0->model[j + 39]]; + ParticleData* sp200 = sp204->unk_120; + + if (sp200->unk_34 == 63) { + ModelData* temp_r23 = &Hu3DData[arg0->model[var_r25]]; + ModelData* temp_r22 = &Hu3DData[arg0->model[j + 39]]; + + temp_r22->pos.x = temp_r23->pos.x; + temp_r22->pos.y = temp_r23->pos.y; + temp_r22->pos.z = temp_r23->pos.z; + temp_r22->rot.x = temp_r23->rot.x; + temp_r22->rot.y = temp_r23->rot.y; + temp_r22->rot.z = temp_r23->rot.z; + } + } + if (temp_r31->unk2C == 0 && (lbl_1_bss_34 == 1004 || lbl_1_bss_34 == 1005)) { + if (temp_r31->unk00 != 9 + || (temp_r31->unk04 != 1 && temp_r31->unk04 != 2 && ((temp_r31->unk04 != 3 && temp_r31->unk04 != 6) || sp354[j]->unk20 > 5 || sp354[j]->unk20 < 3))) + { + temp_r31->unk2C = 1; + } + } + temp_r31->unk2C += (temp_r31->unk2C > 0); + if (temp_r31->unk2C != 0 && (temp_r31->unk2C % 2 == 0 || temp_r31->unk2C > 25)) { + Hu3DModelAttrSet(arg0->model[var_r25], 1); + } else { + Hu3DModelAttrReset(arg0->model[var_r25], 1); + } + } + } + } + for (i = 0; i < 11; i++) { + if (lbl_1_data_1878[i] == 1) { + Hu3DMotionShiftSet(arg0->model[i + 8], arg0->motion[0], 0.0f, 60.0f, HU3D_MOTATTR_LOOP); + } + lbl_1_data_1878[i] -= (lbl_1_data_1878[i] > 0); + } + lbl_1_data_18A4[0] -= (lbl_1_data_18A4[0] > 0); + lbl_1_data_18A4[1] -= (lbl_1_data_18A4[1] > 0); + for (i = 0; i < 3; i++) { + for (j = 0; j < 8; j++) { + s32 sp1FC = lbl_1_bss_104[i][j].unk00 + 21; + + lbl_1_bss_104[i][j].unk04++; + if (lbl_1_bss_104[i][j].unk04 >= 520) { + if (lbl_1_bss_104[i][j].unk00 != -1) { + Hu3DModelAttrReset(arg0->model[lbl_1_bss_104[i][j].unk00 + 21], 1); + } + lbl_1_bss_104[i][j].unk04 = 0; + lbl_1_bss_104[i][j].unk00 = -1; + for (sp230 = 0; sp230 < 14; sp230++) { + s32 sp1F8; + s32 sp1F4 = rand8() % 18; + + for (sp1F8 = 0; sp1F8 < 24; sp1F8++) { + if (sp1F4 == lbl_1_bss_104[sp1F8 / 8][sp1F8 % 8].unk00) { + break; + } + } + if (sp1F8 == 24) { + lbl_1_bss_104[i][j].unk00 = sp1F4; + break; + } + } + if (lbl_1_bss_104[i][j].unk00 != -1) { + Hu3DModelAttrReset(arg0->model[lbl_1_bss_104[i][j].unk00 + 21], 1); + } + } + sp1FC = lbl_1_bss_104[i][j].unk00 + 21; + temp_f22 = lbl_1_bss_104[i][j].unk04 / 520.0f; + if (lbl_1_bss_104[i][j].unk00 != -1) { + switch (i) { + case 0: + Hu3DModelPosSet(arg0->model[sp1FC], 2000.0f - 4000.0f * temp_f22, -490.0f, 1000.0f); + break; + case 1: + Hu3DModelPosSet(arg0->model[sp1FC], -1200.0f, -290.0f, 2000.0f - 4000.0f * temp_f22); + break; + case 2: + Hu3DModelPosSet(arg0->model[sp1FC], 1200.0f, -290.0f, 2000.0f - 4000.0f * temp_f22); + break; + } + } + } + } + for (i = 0; i < 2; i++) { + espBankSet(lbl_1_data_40[i * 7 + 2], lbl_1_data_18F4[i] % 10); + espBankSet(lbl_1_data_40[i * 7 + 3], (lbl_1_data_18F4[i] / 10) % 10); + } + for (i = 0; i < 4; i++) { + ModelData* temp_r24 = &Hu3DData[lbl_1_bss_3C[i]->model[0]]; + float temp_f19 = 0.0f; + float sp1F0 = (temp_r24->unk_08 == lbl_1_bss_3C[i]->motion[3]) ? 0 : -1; + float sp1EC = (temp_r24->unk_0C == lbl_1_bss_3C[i]->motion[3]) ? 0 : -1; + float sp1E8 = (sp1F0 == -1.0f) ? 0.0f + : (temp_r24->unk_64 < 4.0f) ? 0.0f + : (temp_r24->unk_64 > 28.0f) ? 1.0f + : (temp_r24->unk_64 - 4.0f) / 24.0f; + float sp1E4 = (sp1EC == -1.0f) ? 0.0f + : (temp_r24->unk_84 < 4.0f) ? 0.0f + : (temp_r24->unk_84 > 28.0f) ? 1.0f + : (temp_r24->unk_84 - 4.0f) / 24.0f; + float temp_f18 = (temp_r24->unk_0C == -1) ? 0.0f + : (temp_r24->unk_80 == 0.0f) ? 1.0f + : (temp_r24->unk_7C / temp_r24->unk_80); + + temp_f19 = sp1E8 * (1.0f - temp_f18) + sp1E4 * temp_f18; + if (!(temp_r24->attr & 1) && sp354[i]->unk20 != 3 && sp354[i]->unk20 != 4 && lbl_1_bss_3C[i]->trans.z < 1400.0f) { + Hu3DModelAttrReset(lbl_1_bss_3C[i]->model[1], 1); + Hu3DModelPosSet(lbl_1_bss_3C[i]->model[1], + lbl_1_bss_3C[i]->trans.x, + (lbl_1_bss_3C[i]->trans.z < 620.0f) ? 5 : -295, + lbl_1_bss_3C[i]->trans.z - 165.0f * temp_f19); + Hu3DModelScaleSet(lbl_1_bss_3C[i]->model[1], + 0.75 * (sp354[i]->unk08 == 5 ? 1.25 : 1.0), + 1.0f, + 1.25 * (sp354[i]->unk08 == 5 ? 1.25 : 1.0)); + } else { + Hu3DModelAttrSet(lbl_1_bss_3C[i]->model[1], 1); + } + } +} + +void fn_1_89E0(omObjData* arg0) { + StructBss3CData* spC[4]; + s32 sp8; + s32 var_r29; + s32 var_r30; + s32 i; + + for (i = 0; i < 4; i++) { + spC[i] = lbl_1_bss_3C[i]->data; + } + for (i = 0; i < 11; i++) { + s32 sp1C[] = { + 0x60A, 0x60B, 0x60C, + 0x60D, 0x60E, 0x60F, + 0x611, 0x610, 0x007, + 0x013, 0x612 + }; + + if (lbl_1_bss_54[i].unk00 > 3) { + lbl_1_bss_54[i].unk00 = 3; + } + if (lbl_1_bss_54[i].unk00 > 0) { + sp8 = HuAudFXPlay(sp1C[i]); + lbl_1_bss_54[i].unk00--; + } + } + if (omSysExitReq != 0 && WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_B480; + } + switch (lbl_1_bss_34) { + case 1000: + lbl_1_bss_8 += 1.0f; + if (lbl_1_bss_8 == 5.0f) { + lbl_1_data_18B0 = HuAudFXPlay(0x609); + } + if (WipeStatGet() == 0) { + lbl_1_bss_34++; + lbl_1_bss_8 = 0.0f; + } + break; + case 1001: + lbl_1_bss_8 += 1.0f; + if (180.0f < lbl_1_bss_8) { + lbl_1_bss_34++; + lbl_1_bss_8 = 0.0f; + } + break; + case 1002: + lbl_1_bss_8 += 1.0f; + if (lbl_1_bss_8 == 5.0f && lbl_1_bss_2E < 0) { + lbl_1_bss_2E = MGSeqStartCreate(); + } + if (lbl_1_bss_8 >= 5.0f && lbl_1_data_18AC == -1 && (MGSeqStatGet(lbl_1_bss_2E) & 0x10)) { + lbl_1_data_18AC = HuAudSeqPlay(0x47); + } + if (lbl_1_bss_8 >= 5.0f && MGSeqStatGet(lbl_1_bss_2E) == 0 && lbl_1_bss_2E >= 0) { + lbl_1_bss_34++; + lbl_1_bss_28 = 1800; + lbl_1_bss_2C = MGSeqTimerCreate(lbl_1_bss_28 / 60); + lbl_1_bss_2E = -1; + lbl_1_bss_8 = 0.0f; + for (i = 0; i < 16; i++) { + espDispOn(lbl_1_data_40[i]); + } + for (i = 0; i < 4; i++) { + spC[i]->unk20 = 1; + } + } + break; + case 1003: + lbl_1_bss_8 += 1.0f; + MGSeqParamSet(lbl_1_bss_2C, 1, (lbl_1_bss_28 + 58) / 60); + lbl_1_bss_28--; + if (lbl_1_bss_28 <= 0) { + lbl_1_bss_34 = 1004; + lbl_1_bss_8 = 0.0f; + lbl_1_bss_20 = 4; + } + break; + case 1004: + if (lbl_1_bss_2E < 0 && lbl_1_bss_8 == 0.0f) { + MGSeqParamSet(lbl_1_bss_2C, 2, -1); + lbl_1_bss_2E = MGSeqFinishCreate(); + if (lbl_1_data_18AC != -1) { + HuAudSeqFadeOut(lbl_1_data_18AC, 100); + } + } else { + var_r29 = 0; + var_r30 = 0; + for (i = 0; i < 4; i++) { + if (spC[i]->unk20 == 1 || (spC[i]->unk20 >= 2 && spC[i]->unk20 <= 5)) { + var_r29++; + } + if (i == 0 && ((spC[0]->unk20 >= 2 && spC[0]->unk20 <= 4) || (spC[0]->unk20 == 4 && lbl_1_data_F0[9][0].unk14 < 70.0f))) { + var_r30++; + } else if (i != 0 && spC[i]->unk20 >= 2 && spC[i]->unk20 <= 4) { + var_r30++; + } + } + if (MGSeqStatGet(lbl_1_bss_2E) == 0 + && ((lbl_1_bss_8 >= 150.0f && var_r29 == 0 && var_r30 == 0) + || (lbl_1_bss_8 >= 240.0f && var_r30 == 0) + || lbl_1_bss_8 >= 360.0f)) + { + lbl_1_bss_34++; + lbl_1_bss_8 = 0.0f; + GWPlayerCoinCollectSet(spC[0]->unk04, lbl_1_data_18F4[0]); + GWPlayerCoinCollectSet(spC[1]->unk04, lbl_1_data_18F4[1]); + GWPlayerCoinCollectSet(spC[2]->unk04, lbl_1_data_18F4[1]); + GWPlayerCoinCollectSet(spC[3]->unk04, lbl_1_data_18F4[1]); + if (lbl_1_data_18F4[0] == 0 && lbl_1_data_18F4[1] == 0) { + HuAudSStreamPlay(4); + } else { + HuAudSStreamPlay(1); + } + } + } + lbl_1_bss_8 += 1.0f; + break; + case 1005: + lbl_1_bss_8 += 1.0f; + if (210.0f < lbl_1_bss_8) { + HuAudFXStop(lbl_1_data_18B0); + lbl_1_bss_2E = -1; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_B480; + } + break; + default: + OSReport("*** main mode error(%d)!!\n", lbl_1_bss_34); + break; + } +} + +void fn_1_9410(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + float temp_f31; + float temp_f30; + s16 i; + + if (particle->unk_34 < 50) { + var_r31 = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, var_r31++) { + var_r31->unk00_s16 = particle->unk_34 + 41; + var_r31->unk40.a = 0; + var_r31->unk2C = 0.0f; + } + } + if (particle->unk_34 >= 255) { + var_r31 = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, var_r31++) { + var_r31->unk00_s16 = 255; + var_r31->unk40.a = 0; + var_r31->unk2C = 0.0f; + } + } + var_r31 = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, var_r31++) { + if (!var_r31->unk2C) { + break; + } + } + var_r31 = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, var_r31++) { + if (var_r31->unk00_s16 == 104) { + var_r31->unk34.x = var_r31->unk34.z = 0.0f; + var_r31->unk34.y = 72.0f; + temp_f31 = frandu8() * 360 / 256; + temp_f30 = 0.5 + (rand8() / 256.0) * 1.5; + var_r31->unk34.x = 75.0 * sind(temp_f31); + var_r31->unk34.z = 75.0 * cosd(temp_f31); + var_r31->unk08.x = temp_f30 * sind(temp_f31) * 2.0; + var_r31->unk08.y = 3.0 + (rand8() / 256.0) * 1.5; + var_r31->unk08.z = temp_f30 * cosd(temp_f31) * 2.0; + var_r31->unk40.r = 0xFF; + var_r31->unk40.g = 0xFF; + var_r31->unk40.b = 0xFF; + var_r31->unk40.a = 0x60; + var_r31->unk2C = 50.0f; + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + } + if (var_r31->unk00_s16 < 240) { + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + var_r31->unk08.x *= 0.9f; + var_r31->unk08.z *= 0.9f; + var_r31->unk08.y *= 0.9f; + var_r31->unk40.a = var_r31->unk40.a * 16 / 17; + var_r31->unk08.z *= 0.99f; + var_r31->unk2C += 2.0f; + if (var_r31->unk2C <= 0.0f) { + var_r31->unk2C = 0.0f; + } + if (var_r31->unk40.a <= 3) { + var_r31->unk40.a = 0; + var_r31->unk2C = 0.0f; + } + } + var_r31->unk00_s16 += (var_r31->unk00_s16 < 0x8000); + } +} + +void fn_1_9900(omObjData* arg0) { + s32 temp_r28; + s32 i; + s32 j; + s32 k; + + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 18)); + omSetTra(arg0, 0.0f, 0.0f, 0.0f); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 17)); + Hu3DModelPosSet(arg0->model[1], 0.0f, 300.0f, -100.0f); + Hu3DModelAttrSet(arg0->model[1], HU3D_MOTATTR_LOOP); + Hu3DModelLayerSet(arg0->model[1], 0); + Hu3DMotionSpeedSet(arg0->model[1], 1.5f); + arg0->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 16)); + Hu3DModelPosSet(arg0->model[3], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[3], HU3D_MOTATTR_LOOP); + Hu3DModelLayerSet(arg0->model[3], 0); + Hu3DMotionSpeedSet(arg0->model[3], 1.5f); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 19)); + Hu3DModelAttrSet(arg0->model[4], HU3D_MOTATTR_LOOP); + arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 20)); + Hu3DModelPosSet(arg0->model[5], 460.0f, 0.0f, 800.0f); + Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_LOOP); + Hu3DMotionTimeSet(arg0->model[5], Hu3DMotionMaxTimeGet(arg0->model[5])); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 21)); + Hu3DModelPosSet(arg0->model[6], -460.0f, 0.0f, 800.0f); + Hu3DModelAttrReset(arg0->model[6], HU3D_MOTATTR_LOOP); + Hu3DMotionTimeSet(arg0->model[6], Hu3DMotionMaxTimeGet(arg0->model[6])); + arg0->model[7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 22)); + Hu3DModelAttrSet(arg0->model[7], HU3D_MOTATTR_LOOP); + arg0->model[8] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 23)); + arg0->motion[0] = Hu3DJointMotionFile(arg0->model[8], DATA_MAKE_NUM(DATADIR_M422, 24)); + arg0->motion[11] = Hu3DJointMotionFile(arg0->model[8], DATA_MAKE_NUM(DATADIR_M422, 25)); + for (i = 0; i < 11; i++) { + if (i != 0) { + arg0->model[i + 8] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 23)); + arg0->motion[i] = Hu3DJointMotionFile(arg0->model[i + 8], DATA_MAKE_NUM(DATADIR_M422, 24)); + arg0->motion[i + 11] = Hu3DJointMotionFile(arg0->model[i + 8], DATA_MAKE_NUM(DATADIR_M422, 25)); + } + Hu3DModelPosSet(arg0->model[i + 8], i * 100 - 500, 550.0f, 0.0f); + Hu3DMotionSet(arg0->model[i + 8], arg0->motion[0]); + Hu3DModelAttrSet(arg0->model[i + 8], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[i + 8], HU3D_MOTATTR_PAUSE); + Hu3DMotionTimeSet(arg0->model[i + 8], rand8() % (s32) Hu3DMotionMaxTimeGet(arg0->model[i + 8])); + } + arg0->model[19] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 26)); + Hu3DModelPosSet(arg0->model[19], 1800.0f, 0.0f, -22.0f); + Hu3DModelAttrSet(arg0->model[19], HU3D_MOTATTR_LOOP); + arg0->model[20] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 27)); + Hu3DModelPosSet(arg0->model[20], -1800.0f, 0.0f, -22.0f); + Hu3DModelAttrSet(arg0->model[20], HU3D_MOTATTR_LOOP); + for (i = 0; i < 10; i++) { + for (j = 0; j < 4; j++) { + s32 spD0[] = { + DATA_MAKE_NUM(DATADIR_M422, 41), + DATA_MAKE_NUM(DATADIR_M422, 42), + DATA_MAKE_NUM(DATADIR_M422, 43), + DATA_MAKE_NUM(DATADIR_M422, 44), + DATA_MAKE_NUM(DATADIR_M422, 45), + DATA_MAKE_NUM(DATADIR_M422, 46), + DATA_MAKE_NUM(DATADIR_M422, 47), + DATA_MAKE_NUM(DATADIR_M422, 48), + DATA_MAKE_NUM(DATADIR_M422, 49), + DATA_MAKE_NUM(DATADIR_M422, 30) + }; + s32 sp30[] = { + DATA_MAKE_NUM(DATADIR_M422, 30), + DATA_MAKE_NUM(DATADIR_M422, 31), + DATA_MAKE_NUM(DATADIR_M422, 32), + DATA_MAKE_NUM(DATADIR_M422, 33), + DATA_MAKE_NUM(DATADIR_M422, 34), + DATA_MAKE_NUM(DATADIR_M422, 35), + DATA_MAKE_NUM(DATADIR_M422, 37), + DATA_MAKE_NUM(DATADIR_M422, 36) + }; + + temp_r28 = i * 4 + 43 + j; + if (i == 9) { + StructBss3CData* var_r23 = lbl_1_bss_3C[j]->data; + + arg0->model[temp_r28] = Hu3DModelCreateFile(sp30[var_r23->unk08]); + } else if (j == 0) { + arg0->model[temp_r28] = Hu3DModelCreateFile(spD0[i]); + } else { + arg0->model[temp_r28] = Hu3DModelLink(arg0->model[temp_r28 - j]); + } + Hu3DModelAttrSet(arg0->model[temp_r28], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(arg0->model[temp_r28], HU3D_MOTATTR_LOOP); + Hu3DMotionTimeSet(arg0->model[temp_r28], 0.0f); + Hu3DMotionSpeedSet(arg0->model[temp_r28], (i != 9) ? 0.9375 : 1.0); + if (i == 9) { + arg0->motion[j + 22] = Hu3DJointMotionFile(arg0->model[temp_r28], DATA_MAKE_NUM(DATADIR_M422, 38)); + arg0->motion[j + 26] = Hu3DJointMotionFile(arg0->model[temp_r28], DATA_MAKE_NUM(DATADIR_M422, 39)); + arg0->motion[j + 30] = Hu3DJointMotionFile(arg0->model[temp_r28], DATA_MAKE_NUM(DATADIR_M422, 40)); + Hu3DMotionSet(arg0->model[temp_r28], arg0->motion[j + 22]); + Hu3DModelAttrSet(arg0->model[temp_r28], HU3D_MOTATTR_PAUSE); + } + } + if (i <= 8) { + for (k = 0; k < 2; k++) { + arg0->model[i * 2 + 21 + k] = Hu3DModelLink(arg0->model[i * 4 + 43]); + Hu3DModelAttrSet(arg0->model[i * 2 + 21 + k], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); + } + } + } + for (i = 0; i < 2; i++) { + for (j = 0; j < 10; j++) { + s32 sp28[] = { + DATA_MAKE_NUM(DATADIR_M422, 28), + DATA_MAKE_NUM(DATADIR_M422, 29) + }; + + temp_r28 = i * 10 + 83 + j; + if (j == 0) { + arg0->model[temp_r28] = Hu3DModelCreateFile(sp28[i]); + } else { + arg0->model[temp_r28] = Hu3DModelLink(arg0->model[temp_r28 - j]); + } + Hu3DModelAttrSet(arg0->model[temp_r28], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(arg0->model[temp_r28], 1); + } + } + for (i = 0; i < 3; i++) { + for (j = 0; j < 8; j++) { + lbl_1_bss_104[i][j].unk04 = j * 520 / 8; + lbl_1_bss_104[i][j].unk00 = -1; + } + } + for (i = 0; i < 16; i++) { + s32 sp20[] = { 88, 473 }; + s32 sp18[] = { 78, 70 }; + s32 sp90[] = { 0, 0, 42, 22, -20, 2, -54, 0, 0, 55, 35, -7, 15, -51, -65, -37 }; + s32 sp50[] = { 0, 0, 1, 1, 1, 1, -2, 0, 0, 9, 9, 9, 9, -14, 10, 10 }; + + if (lbl_1_data_0[i] == DATA_MAKE_NUM(DATADIR_MGCONST, 12) || lbl_1_data_0[i] == DATA_MAKE_NUM(DATADIR_MGCONST, 0)) { + StructBss3CData* var_r22 = lbl_1_bss_3C[ + (i == 6) ? 0 + : (i == 13) ? 1 + : (i == 14) ? 2 : 3 + ]->data; + + lbl_1_data_40[i] = espEntry(lbl_1_data_0[i] + var_r22->unk08, 0, 0); + } else { + lbl_1_data_40[i] = espEntry(lbl_1_data_0[i], 0, 0); + } + espDrawNoSet(lbl_1_data_40[i], 0); + espDispOff(lbl_1_data_40[i]); + espAttrSet(lbl_1_data_40[i], 1); + espBankSet(lbl_1_data_40[i], 0); + espPriSet(lbl_1_data_40[i], 128 - i); + espPosSet(lbl_1_data_40[i], sp90[i] + sp20[i < 7 ? 0 : 1], sp50[i] + sp18[i < 7 ? 0 : 1]); + switch (i >= 7 ? i - 7 : i) { + case 0: + espTPLvlSet(lbl_1_data_40[i], 0.5f); + espColorSet(lbl_1_data_40[i], 0, 0, 0); + break; + case 5: + espBankSet(lbl_1_data_40[i], 10); + break; + } + } + for (i = 0; i < 4; i++) { + s32 temp_r26 = i + 39; + + arg0->model[temp_r26] = Hu3DParticleCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 3), MEMORY_DEFAULT_NUM)), 40); + Hu3DModelPosSet(arg0->model[temp_r26], 2000.0f, -2000.0f, -2000.0f); + Hu3DModelScaleSet(arg0->model[temp_r26], 1.0f, 1.0f, 1.0f); + Hu3DModelLayerSet(arg0->model[temp_r26], 3); + Hu3DModelAttrReset(arg0->model[temp_r26], 1); + Hu3DParticleColSet(arg0->model[temp_r26], 0xFF, 0xFF, 0xFF); + Hu3DParticleScaleSet(arg0->model[temp_r26], 5.0f); + Hu3DParticleHookSet(arg0->model[temp_r26], fn_1_9410); + Hu3DParticleCntSet(arg0->model[temp_r26], 45); + } + for (i = 0; i < 4; i++) { + s32 var_r27 = 9; + s32 temp_r24 = 43 + var_r27 * 4 + i; + + lbl_1_data_F0[var_r27][i].unk0C = lbl_1_data_18B4[i][0]; + lbl_1_data_F0[var_r27][i].unk10 = (i == 0 ? 300 : 0); + lbl_1_data_F0[var_r27][i].unk14 = (i == 0 ? 50 : 800); + lbl_1_data_F0[var_r27][i].unk00 = 9; + lbl_1_data_F0[var_r27][i].unk04 = (i == 0 ? 3 : 6); + lbl_1_data_F0[var_r27][i].unk08 = 0; + lbl_1_data_F0[var_r27][i].unk18 = lbl_1_data_F0[var_r27][i].unk1C = lbl_1_data_F0[var_r27][i].unk20 = 0.0f; + Hu3DMotionTimeSet(arg0->model[temp_r24], 0.0f); + Hu3DModelAttrSet(arg0->model[temp_r24], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(arg0->model[temp_r24], 1); + Hu3DModelRotSet(arg0->model[temp_r24], 0.0f, 0.0f, 0.0f); + } + arg0->func = fn_1_3B74; +} + +void fn_1_AC4C(omObjData* arg0) { + s32 sp8[] = { 0, 1, 2, 3 }; + StructBss3CData* temp_r31; + s32 var_r27; + s32 j; + s32 i; + + var_r27 = 0; + temp_r31 = arg0->data; + memset(temp_r31, 0, sizeof(*temp_r31)); + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + if (i == GWPlayerCfg[j].group) { + sp8[var_r27] = j; + var_r27++; + } + } + } + temp_r31->unk00 = arg0->work[0]; + temp_r31->unk04 = sp8[temp_r31->unk00]; + if (temp_r31->unk04 == 4) { + OSReport("m422:wrong player group\n"); + temp_r31->unk04 = temp_r31->unk00; + } + temp_r31->unk08 = GWPlayerCfg[temp_r31->unk04].character; + temp_r31->unk0C = (GWPlayerCfg[temp_r31->unk04].iscom ? -1 : GWPlayerCfg[temp_r31->unk04].pad_idx); + temp_r31->unk10 = (temp_r31->unk0C != -1) ? 0 : GWPlayerCfg[temp_r31->unk04].diff; + temp_r31->unk14 = rand8(); + temp_r31->unk20 = 0; + arg0->model[0] = CharModelCreate(temp_r31->unk08, temp_r31->unk00 == 0 ? 2 : 2); + Hu3DModelLayerSet(arg0->model[0], 1); + Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrSet(arg0->model[0], 1); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 50)); + Hu3DModelPosSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelLayerSet(arg0->model[1], 0); + temp_r31->unk18 = 0; + temp_r31->unk1C = -1; + for (i = 0; i < 8; i++) { + arg0->motion[i] = CharModelMotionCreate(temp_r31->unk08, lbl_1_data_A0[i] + (lbl_1_data_C0[i] != 0 ? temp_r31->unk08 : 0)); + } + CharModelVoiceEnableSet(temp_r31->unk08, arg0->motion[6], 0); + Hu3DMotionSet(arg0->model[0], arg0->motion[3]); + arg0->trans.x = lbl_1_data_18B4[temp_r31->unk00][0]; + arg0->trans.y = lbl_1_data_18B4[temp_r31->unk00][1]; + arg0->trans.z = lbl_1_data_18B4[temp_r31->unk00][2]; + arg0->rot.y = lbl_1_data_18B4[temp_r31->unk00][3]; + arg0->scale.x = arg0->scale.y = arg0->scale.z = 1.0f; + arg0->rot.x = arg0->rot.z = 0.0f; + arg0->func = fn_1_2FC; +} + +void fn_1_B004(omObjData* arg0) { + lbl_1_bss_34 = 1000; + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_89E0; +} + +void ObjectSetup(void) { + omObjData* var_r30; + s32 i; + + OSReport("******* M422 ObjectSetup *********\n"); + HuAudSndGrpSet(47); + lbl_1_bss_30 = omInitObjMan(600, 0x2000); + omGameSysInit(lbl_1_bss_30); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 25000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + CZoom = 1676.6f; + Center.x = 690.0f; + Center.y = 1340.0f; + Center.z = 1380.0f; + CRot.x = -50.8125f; + CRot.y = 40.0f; + CRot.z = 0.0f; + CZoom = 2126.6f; + Center.x = 700.0f; + Center.y = 870.0f; + Center.z = 1320.0f; + CRot.x = -37.25f; + CRot.y = 40.0f; + CRot.z = 0.0f; + { + Vec sp18 = { -822.5f, 6743.0f, 4625.5f }; + Vec spC = { 0.1545085f, -0.788462f, -0.5850064f }; + GXColor sp8 = { 0xFF, 0xFF, 0xFF, 0xFF }; + + lbl_1_bss_24 = Hu3DGLightCreateV(&sp18, &spC, &sp8); + } + Hu3DGLightStaticSet(lbl_1_bss_24, 1); + Hu3DGLightInfinitytSet(lbl_1_bss_24); + lbl_1_bss_2E = -1; + lbl_1_bss_20 = -1; + lbl_1_bss_38 = omAddObjEx(lbl_1_bss_30, 101, 103, 34, 1, fn_1_9900); + for (i = 0; i < 4; i++) { + var_r30 = lbl_1_bss_3C[i] = omAddObjEx(lbl_1_bss_30, 100, 2, 8, 0, fn_1_AC4C); + var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(StructBss3CData), MEMORY_DEFAULT_NUM); + var_r30->work[0] = i; + } + lbl_1_bss_4C = omAddObjEx(lbl_1_bss_30, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_50 = omAddObjEx(lbl_1_bss_30, 102, 0, 0, -1, fn_1_B004); +} + +void fn_1_B480(omObjData* arg0) { + StructBss3CData* var_r30; + s32 i; + + if (WipeStatGet() == 0) { + for (i = 0; i < 4; i++) { + var_r30 = lbl_1_bss_3C[i]->data; + CharModelKill(var_r30->unk08); + } + if (lbl_1_bss_2E >= 0) { + MGSeqKill(lbl_1_bss_2E); + } + MGSeqKillAll(); + HuAudAllStop(); + omOvlReturnEx(1, 1); + } +} From d769720cc13679b117b5d69abf97841cce216cf0 Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Tue, 17 Dec 2024 21:47:09 -0600 Subject: [PATCH 074/178] Link m418dll in US --- configure.py | 2 +- src/REL/m418Dll/main.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/configure.py b/configure.py index 87bace0d..53f72b05 100644 --- a/configure.py +++ b/configure.py @@ -1000,7 +1000,7 @@ config.libs = [ Rel( "m418Dll", # Hide and Go BOOM! objects={ - Object(NonMatching, "REL/m418Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m418Dll/main.c"), Object(NonMatching, "REL/m418Dll/sequence.c"), }, ), diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index e4b50f24..4618d902 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -94,6 +94,7 @@ s32 lbl_1_bss_1C; u32 lbl_1_bss_18; s32 lbl_1_bss_14; s32 lbl_1_bss_10; +s32 lbl_1_bss_C; s32 lbl_1_bss_8; s32 lbl_1_bss_4; Process* lbl_1_bss_0; From 604f0397a3c625c582be5e179f420c6aef931001 Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Wed, 18 Dec 2024 12:59:46 -0600 Subject: [PATCH 075/178] Match m459dll in US --- configure.py | 2 +- src/REL/m459dll/main.c | 204 +++++++++++++++++++++-------------------- 2 files changed, 106 insertions(+), 100 deletions(-) diff --git a/configure.py b/configure.py index 53f72b05..a0831ccc 100644 --- a/configure.py +++ b/configure.py @@ -1285,7 +1285,7 @@ config.libs = [ Rel( "m459dll", # Mushroom Medic objects={ - Object(NonMatching, "REL/m459dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m459dll/main.c"), }, ), Rel( diff --git a/src/REL/m459dll/main.c b/src/REL/m459dll/main.c index b9ecf9b3..c8c96218 100644 --- a/src/REL/m459dll/main.c +++ b/src/REL/m459dll/main.c @@ -143,7 +143,7 @@ void fn_1_4FC8(void); void fn_1_52D8(s32 arg0); s32 fn_1_52F0(void); s32 fn_1_5300(void); -void fn_1_5310(void); +s32 fn_1_5310(void); void fn_1_535C(void); void fn_1_5490(void); void fn_1_556C(M459DllBss18Struct *arg0); @@ -489,20 +489,25 @@ void fn_1_73C(void) while (lbl_1_bss_698[0x12]) { HuPrcVSleep(); } - fn_1_52D8(1); - if (fn_1_52F0() != 0x63) { - lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4B68, 0x100, 0x4000, 0, HuPrcCurrentGet()); - while (lbl_1_bss_698[0x12]) { - HuPrcVSleep(); - } - continue; - } + goto label; } else { + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_48E4, 0x100, 0x4000, 0, HuPrcCurrentGet()); while (lbl_1_bss_698[0x12]) { HuPrcVSleep(); } + if(0) { + label: + fn_1_52D8(1); + if (fn_1_52F0() != 0x63) { + lbl_1_bss_698[0x12] = HuPrcChildCreate(fn_1_4B68, 0x100, 0x4000, 0, HuPrcCurrentGet()); + while (lbl_1_bss_698[0x12]) { + HuPrcVSleep(); + } + continue; + } + } } } break; @@ -1665,7 +1670,7 @@ s32 fn_1_5300(void) return lbl_1_bss_4C.unk_10; } -void fn_1_5310(void) +s32 fn_1_5310(void) { if (lbl_1_bss_4C.unk_10 < lbl_1_bss_4C.unk_0C) { lbl_1_bss_4C.unk_10 = lbl_1_bss_4C.unk_0C; @@ -1768,108 +1773,108 @@ void fn_1_55B0(M459DllBss18Struct *var_r31) var_r29 = var_r31->unk_04[var_r31->unk_24[1]]; espDispOn(var_r29); var_r23 = 0; -loop_1: - var_r30 = 0; - var_r27 = 0; - if (var_r31->unk_28 != 0) { - if (var_r31->unk_2C <= 0) { - var_r20 = lbl_1_bss_70.unk_08; - if ((var_r20 > 0xB4) && (var_r23 == 0)) { - var_r24 = frandmod(0xA); - if (var_r24 >= 5) { - var_r30 |= 1; - } - else if (var_r24 > 1) { - var_r30 |= 2; + while(1) { + var_r30 = 0; + var_r27 = 0; + if (var_r31->unk_28 != 0) { + if (var_r31->unk_2C <= 0) { + var_r20 = lbl_1_bss_70.unk_08; + if ((var_r20 > 0xB4) && (var_r23 == 0)) { + var_r24 = frandmod(0xA); + if (var_r24 >= 5) { + var_r30 |= 1; + } + else if (var_r24 > 1) { + var_r30 |= 2; + } + else { + var_r23 = 1; + } } else { - var_r23 = 1; + if (lbl_1_bss_14 > lbl_1_bss_10) { + var_r30 |= 1; + } + else if (lbl_1_bss_14 < lbl_1_bss_10) { + var_r30 |= 2; + } + if (lbl_1_bss_14 == lbl_1_bss_10) { + var_r27 |= 0x100; + } } + var_r31->unk_2C = 0x1E; } else { - if (lbl_1_bss_14 > lbl_1_bss_10) { - var_r30 |= 1; - } - else if (lbl_1_bss_14 < lbl_1_bss_10) { - var_r30 |= 2; - } - if (lbl_1_bss_14 == lbl_1_bss_10) { - var_r27 |= 0x100; - } + var_r31->unk_2C--; } - var_r31->unk_2C = 0x1E; } else { - var_r31->unk_2C--; + var_r30 = HuPadDStkRep[var_r31->unk_24[0]]; + var_r27 = HuPadBtnDown[var_r31->unk_24[0]]; } - } - else { - var_r30 = HuPadDStkRep[var_r31->unk_24[0]]; - var_r27 = HuPadBtnDown[var_r31->unk_24[0]]; - } - if (var_r28 != -1) { - if ((var_r27 & 0x100) != 0) { - HuAudFXPlay(2); - // lbl_1_bss_7C[lbl_1_bss_14].unk_04 = 3; - // espDispOff(var_r29); - // lbl_1_bss_18.unk_00 = 0; + if (var_r28 != -1) { + if ((var_r27 & 0x100) != 0) { + HuAudFXPlay(2); + break; + } + else { + if ((var_r30 & 1) != 0) { + if (--lbl_1_bss_14 < 0) { + lbl_1_bss_14 = 4; + } + HuAudFXPlay(0); + } + else if ((var_r30 & 2) != 0) { + if (++lbl_1_bss_14 >= 5) { + lbl_1_bss_14 = 0; + } + HuAudFXPlay(0); + } + goto block_30; + } } else { - if ((var_r30 & 1) != 0) { - if (--lbl_1_bss_14 < 0) { - lbl_1_bss_14 = 4; - } - HuAudFXPlay(0); - } - else if ((var_r30 & 2) != 0) { - if (++lbl_1_bss_14 >= 5) { - lbl_1_bss_14 = 0; - } - HuAudFXPlay(0); - } - goto block_30; - } - } - else { - block_30: - if (var_r28 != lbl_1_bss_14) { - var_r25 = &lbl_1_bss_CC[lbl_1_bss_14]; - sp14 = sp20; - sp20 = var_r25->unk_0C; - sp20.y = 40.0f; - espPriSet(var_r29, 0x32); - if (var_r28 == -1) { + block_30: + if (var_r28 != lbl_1_bss_14) { + var_r25 = &lbl_1_bss_CC[lbl_1_bss_14]; sp14 = sp20; + sp20 = var_r25->unk_0C; + sp20.y = 40.0f; + espPriSet(var_r29, 0x32); + if (var_r28 == -1) { + sp14 = sp20; + } + else { + lbl_1_bss_7C[var_r28].unk_04 = 3; + } + for (var_r26 = 0; var_r26 <= 4; var_r26++) { + var_f31 = sind((90.0f * (0.25f * var_r26))); + var_f31 *= var_f31 * var_f31; + sp8.x = sp14.x + (var_f31 * (sp20.x - sp14.x)); + sp8.y = sp14.y + (var_f31 * (sp20.y - sp14.y)); + sp8.z = sp14.z + (var_f31 * (sp20.z - sp14.z)); + Hu3D3Dto2D(&sp8, 1, &sp8); + espPosSet(var_r29, sp8.x, sp8.y); + var_r22 = var_r31->unk_00; + HuPrcVSleep(); + if (var_r31->unk_00 != var_r22) { + return; + } + } + espPosSet(var_r29, sp8.x, sp8.y); + lbl_1_bss_7C[lbl_1_bss_14].unk_04 = 1; } - else { - lbl_1_bss_7C[var_r28].unk_04 = 3; - } - for (var_r26 = 0; var_r26 < 4; var_r26++) { - // espPosSet(var_r29, sp8.x, sp8.y); - // lbl_1_bss_7C[lbl_1_bss_14].unk_04 = 1; - goto block_39; - } - var_f31 = sind((90.0f * (0.25f * var_r26))); - var_f31 *= var_f31 * var_f31; - sp8.x = sp14.x + (var_f31 * (sp20.x - sp14.x)); - sp8.y = sp14.y + (var_f31 * (sp20.y - sp14.y)); - sp8.z = sp14.z + (var_f31 * (sp20.z - sp14.z)); - Hu3D3Dto2D(&sp8, 1, &sp8); - espPosSet(var_r29, sp8.x, sp8.y); - var_r22 = var_r31->unk_00; - HuPrcVSleep(); - if (var_r31->unk_00 == var_r22) { } - } - else { - block_39: var_r28 = lbl_1_bss_14; var_r21 = var_r31->unk_00; - HuPrcVSleep(&lbl_1_bss_14); - if (var_r31->unk_00 == var_r21) { - goto loop_1; + HuPrcVSleep(); + if (var_r31->unk_00 != var_r21) { + return; } } } + lbl_1_bss_7C[lbl_1_bss_14].unk_04 = 3; + espDispOff(var_r29); + lbl_1_bss_18.unk_00 = 0; } void fn_1_5A78(M459DllBss18Struct *arg0) @@ -1960,17 +1965,18 @@ void fn_1_5EAC(void) switch (var_r31->unk_04) { case 0: fn_1_5F40(var_r31); - continue; + break; case 1: fn_1_5F84(var_r31); - continue; + break; case 2: fn_1_6198(var_r31); - continue; + break; case 3: - continue; + fn_1_6458(var_r31); + break; } - fn_1_6458(var_r31); + } } From 8f6ac67deee9b6c994212e79767635b01e1fee76 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Wed, 18 Dec 2024 21:18:24 +0100 Subject: [PATCH 076/178] Set m415Dll to matching --- config/GMPE01_00/rels/m415Dll/symbols.txt | 16 ++++++++-------- configure.py | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/config/GMPE01_00/rels/m415Dll/symbols.txt b/config/GMPE01_00/rels/m415Dll/symbols.txt index 3c3a6a5f..62f5cc6f 100644 --- a/config/GMPE01_00/rels/m415Dll/symbols.txt +++ b/config/GMPE01_00/rels/m415Dll/symbols.txt @@ -190,14 +190,14 @@ lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data: lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 scope:local data:float lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x10 data:byte -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x10 scope:local data:byte +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double 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 diff --git a/configure.py b/configure.py index a0831ccc..b761c7f8 100644 --- a/configure.py +++ b/configure.py @@ -978,7 +978,7 @@ config.libs = [ "m415Dll", # Stamp Out! objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m415Dll/main.c"), - Object(NonMatching, "REL/m415Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m415Dll/map.c"), }, ), Rel( From 4b5565bbdc7f1b3b0fa6072095ca1ec1ba4cd10e Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Wed, 18 Dec 2024 21:24:42 +0100 Subject: [PATCH 077/178] Fix some data locality --- config/GMPE01_00/rels/m413Dll/symbols.txt | 302 +++++++++++----------- config/GMPE01_00/rels/m418Dll/symbols.txt | 22 +- config/GMPJ01_00/rels/m418Dll/symbols.txt | 22 +- config/GMPP01_00/rels/m418Dll/symbols.txt | 24 +- 4 files changed, 185 insertions(+), 185 deletions(-) diff --git a/config/GMPE01_00/rels/m413Dll/symbols.txt b/config/GMPE01_00/rels/m413Dll/symbols.txt index 0da93366..69d55a26 100644 --- a/config/GMPE01_00/rels/m413Dll/symbols.txt +++ b/config/GMPE01_00/rels/m413Dll/symbols.txt @@ -22,157 +22,157 @@ ObjectSetup = .text:0x0000D3A0; // type:function size:0x360 fn_1_D700 = .text:0x0000D700; // type:function size:0x64 _ctors = .ctors:0x00000000; // type:label scope:global data:4byte _dtors = .dtors:0x00000000; // type:label scope:global data:4byte -lbl_1_rodata_0 = .rodata:0x00000000; // type:object size:0x10 data:double -lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x18 data:float -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0x18 data:float -lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xCC -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0xC data:byte -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:4byte -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:4byte -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:4byte -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 data:4byte -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 data:4byte -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x19 data:byte -lbl_1_rodata_201 = .rodata:0x00000201; // type:object size:0x1F data:byte -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC data:4byte -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x30 data:4byte -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x10 data:4byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC data:4byte -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x10 data:4byte -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0xC data:4byte -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0xC data:4byte -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:4byte -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x428 -lbl_1_rodata_764 = .rodata:0x00000764; // type:object size:0xC data:4byte -lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0xC data:4byte -lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0x4 data:float -lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x4 data:float -lbl_1_rodata_784 = .rodata:0x00000784; // type:object size:0x4 data:float -lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x8 data:double -lbl_1_rodata_790 = .rodata:0x00000790; // type:object size:0x8 data:double -lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x8 data:double -lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x8 data:double -lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 data:float -lbl_1_rodata_7AC = .rodata:0x000007AC; // type:object size:0x10 data:4byte -lbl_1_rodata_7BC = .rodata:0x000007BC; // type:object size:0x14 data:4byte -lbl_1_rodata_7D0 = .rodata:0x000007D0; // type:object size:0x60 -lbl_1_rodata_830 = .rodata:0x00000830; // type:object size:0x8 data:double -lbl_1_rodata_838 = .rodata:0x00000838; // type:object size:0x8 data:double -lbl_1_rodata_840 = .rodata:0x00000840; // type:object size:0x4 data:float -lbl_1_rodata_848 = .rodata:0x00000848; // type:object size:0x8 data:double -lbl_1_rodata_850 = .rodata:0x00000850; // type:object size:0x4 data:float -lbl_1_rodata_858 = .rodata:0x00000858; // type:object size:0x8 data:double -lbl_1_rodata_860 = .rodata:0x00000860; // type:object size:0x8 data:double -lbl_1_rodata_868 = .rodata:0x00000868; // type:object size:0x8 data:double -lbl_1_rodata_870 = .rodata:0x00000870; // type:object size:0x8 data:double -lbl_1_rodata_878 = .rodata:0x00000878; // type:object size:0x4 data:float -lbl_1_rodata_87C = .rodata:0x0000087C; // type:object size:0x4 data:float -lbl_1_rodata_880 = .rodata:0x00000880; // type:object size:0x4 data:float -lbl_1_rodata_884 = .rodata:0x00000884; // type:object size:0x4 data:float -lbl_1_rodata_888 = .rodata:0x00000888; // type:object size:0x4 data:float -lbl_1_rodata_88C = .rodata:0x0000088C; // type:object size:0x1C data:4byte -lbl_1_rodata_8A8 = .rodata:0x000008A8; // type:object size:0x8 data:double -lbl_1_rodata_8B0 = .rodata:0x000008B0; // type:object size:0x4 data:float -lbl_1_rodata_8B4 = .rodata:0x000008B4; // type:object size:0x4 data:float -lbl_1_rodata_8B8 = .rodata:0x000008B8; // type:object size:0x4 data:float -lbl_1_rodata_8BC = .rodata:0x000008BC; // type:object size:0x4 data:float -lbl_1_rodata_8C0 = .rodata:0x000008C0; // type:object size:0x8 data:double -lbl_1_rodata_8C8 = .rodata:0x000008C8; // type:object size:0x4 data:float -lbl_1_rodata_8D0 = .rodata:0x000008D0; // type:object size:0x8 data:double -lbl_1_rodata_8D8 = .rodata:0x000008D8; // type:object size:0x4 data:float -lbl_1_rodata_8DC = .rodata:0x000008DC; // type:object size:0x4 data:float -lbl_1_rodata_8E0 = .rodata:0x000008E0; // type:object size:0x4 data:float -lbl_1_rodata_8E4 = .rodata:0x000008E4; // type:object size:0x4 data:float -lbl_1_rodata_8E8 = .rodata:0x000008E8; // type:object size:0x4 data:float -lbl_1_rodata_8EC = .rodata:0x000008EC; // type:object size:0x4 data:float -lbl_1_rodata_8F0 = .rodata:0x000008F0; // type:object size:0x4 data:float -lbl_1_rodata_8F4 = .rodata:0x000008F4; // type:object size:0x4 data:float -lbl_1_rodata_8F8 = .rodata:0x000008F8; // type:object size:0x8 data:double -lbl_1_rodata_900 = .rodata:0x00000900; // type:object size:0x8 data:double -lbl_1_rodata_908 = .rodata:0x00000908; // type:object size:0x4 data:float -lbl_1_rodata_90C = .rodata:0x0000090C; // type:object size:0x4 data:float -lbl_1_rodata_910 = .rodata:0x00000910; // type:object size:0x4 data:float -lbl_1_rodata_914 = .rodata:0x00000914; // type:object size:0xC data:byte -lbl_1_rodata_920 = .rodata:0x00000920; // type:object size:0x18 data:4byte -lbl_1_rodata_938 = .rodata:0x00000938; // type:object size:0x8 data:byte -lbl_1_rodata_940 = .rodata:0x00000940; // type:object size:0x10 data:4byte -lbl_1_rodata_950 = .rodata:0x00000950; // type:object size:0x1 data:byte -lbl_1_rodata_954 = .rodata:0x00000954; // type:object size:0x10 data:4byte -lbl_1_rodata_964 = .rodata:0x00000964; // type:object size:0x14 data:4byte -lbl_1_rodata_978 = .rodata:0x00000978; // type:object size:0x8 data:double -lbl_1_rodata_980 = .rodata:0x00000980; // type:object size:0x4 data:float -lbl_1_rodata_984 = .rodata:0x00000984; // type:object size:0x4 data:float -lbl_1_rodata_988 = .rodata:0x00000988; // type:object size:0x4 data:float -lbl_1_rodata_98C = .rodata:0x0000098C; // type:object size:0x4 data:float -lbl_1_rodata_990 = .rodata:0x00000990; // type:object size:0x8 data:double -lbl_1_rodata_998 = .rodata:0x00000998; // type:object size:0x4 data:float -lbl_1_rodata_99C = .rodata:0x0000099C; // type:object size:0x4 data:float -lbl_1_rodata_9A0 = .rodata:0x000009A0; // type:object size:0x8 data:double -lbl_1_rodata_9A8 = .rodata:0x000009A8; // type:object size:0x8 data:double -lbl_1_rodata_9B0 = .rodata:0x000009B0; // type:object size:0x10 data:4byte -lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 data:float -lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 data:float -lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 data:float -lbl_1_rodata_9CC = .rodata:0x000009CC; // type:object size:0xC data:4byte -lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0xC data:4byte -lbl_1_rodata_9E4 = .rodata:0x000009E4; // type:object size:0xC data:4byte -lbl_1_rodata_9F0 = .rodata:0x000009F0; // type:object size:0xC data:4byte -lbl_1_rodata_9FC = .rodata:0x000009FC; // type:object size:0xC data:4byte -lbl_1_rodata_A08 = .rodata:0x00000A08; // type:object size:0xC data:4byte -lbl_1_rodata_A14 = .rodata:0x00000A14; // type:object size:0xC data:4byte -lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x1 data:byte -lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 data:float -lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 data:float -lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 data:float -lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 data:float -lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 data:float +lbl_1_rodata_0 = .rodata:0x00000000; // type:object size:0x10 scope:local data:double +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x18 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:0x18 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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xCC scope:local +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0xC scope:local data:byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x19 scope:local data:byte +lbl_1_rodata_201 = .rodata:0x00000201; // type:object size:0x1F scope:local data:byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 scope:local data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x428 scope:local +lbl_1_rodata_764 = .rodata:0x00000764; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_77C = .rodata:0x0000077C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x4 scope:local data:float +lbl_1_rodata_784 = .rodata:0x00000784; // type:object size:0x4 scope:local data:float +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x8 scope:local data:double +lbl_1_rodata_790 = .rodata:0x00000790; // type:object size:0x8 scope:local data:double +lbl_1_rodata_798 = .rodata:0x00000798; // type:object size:0x8 scope:local data:double +lbl_1_rodata_7A0 = .rodata:0x000007A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_7A8 = .rodata:0x000007A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_7AC = .rodata:0x000007AC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_7BC = .rodata:0x000007BC; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_7D0 = .rodata:0x000007D0; // type:object size:0x60 scope:local +lbl_1_rodata_830 = .rodata:0x00000830; // type:object size:0x8 scope:local data:double +lbl_1_rodata_838 = .rodata:0x00000838; // type:object size:0x8 scope:local data:double +lbl_1_rodata_840 = .rodata:0x00000840; // type:object size:0x4 scope:local data:float +lbl_1_rodata_848 = .rodata:0x00000848; // type:object size:0x8 scope:local data:double +lbl_1_rodata_850 = .rodata:0x00000850; // type:object size:0x4 scope:local data:float +lbl_1_rodata_858 = .rodata:0x00000858; // type:object size:0x8 scope:local data:double +lbl_1_rodata_860 = .rodata:0x00000860; // type:object size:0x8 scope:local data:double +lbl_1_rodata_868 = .rodata:0x00000868; // type:object size:0x8 scope:local data:double +lbl_1_rodata_870 = .rodata:0x00000870; // type:object size:0x8 scope:local data:double +lbl_1_rodata_878 = .rodata:0x00000878; // type:object size:0x4 scope:local data:float +lbl_1_rodata_87C = .rodata:0x0000087C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_880 = .rodata:0x00000880; // type:object size:0x4 scope:local data:float +lbl_1_rodata_884 = .rodata:0x00000884; // type:object size:0x4 scope:local data:float +lbl_1_rodata_888 = .rodata:0x00000888; // type:object size:0x4 scope:local data:float +lbl_1_rodata_88C = .rodata:0x0000088C; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_8A8 = .rodata:0x000008A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_8B0 = .rodata:0x000008B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8B4 = .rodata:0x000008B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8B8 = .rodata:0x000008B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8BC = .rodata:0x000008BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C0 = .rodata:0x000008C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_8C8 = .rodata:0x000008C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8D0 = .rodata:0x000008D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_8D8 = .rodata:0x000008D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8DC = .rodata:0x000008DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8E0 = .rodata:0x000008E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8E4 = .rodata:0x000008E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8E8 = .rodata:0x000008E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8EC = .rodata:0x000008EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8F0 = .rodata:0x000008F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8F4 = .rodata:0x000008F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8F8 = .rodata:0x000008F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_900 = .rodata:0x00000900; // type:object size:0x8 scope:local data:double +lbl_1_rodata_908 = .rodata:0x00000908; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90C = .rodata:0x0000090C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_910 = .rodata:0x00000910; // type:object size:0x4 scope:local data:float +lbl_1_rodata_914 = .rodata:0x00000914; // type:object size:0xC scope:local data:byte +lbl_1_rodata_920 = .rodata:0x00000920; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_938 = .rodata:0x00000938; // type:object size:0x8 scope:local data:byte +lbl_1_rodata_940 = .rodata:0x00000940; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_950 = .rodata:0x00000950; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_954 = .rodata:0x00000954; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_964 = .rodata:0x00000964; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_978 = .rodata:0x00000978; // type:object size:0x8 scope:local data:double +lbl_1_rodata_980 = .rodata:0x00000980; // type:object size:0x4 scope:local data:float +lbl_1_rodata_984 = .rodata:0x00000984; // type:object size:0x4 scope:local data:float +lbl_1_rodata_988 = .rodata:0x00000988; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98C = .rodata:0x0000098C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_990 = .rodata:0x00000990; // type:object size:0x8 scope:local data:double +lbl_1_rodata_998 = .rodata:0x00000998; // type:object size:0x4 scope:local data:float +lbl_1_rodata_99C = .rodata:0x0000099C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_9A0 = .rodata:0x000009A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_9A8 = .rodata:0x000009A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_9B0 = .rodata:0x000009B0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_9C0 = .rodata:0x000009C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_9C4 = .rodata:0x000009C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_9C8 = .rodata:0x000009C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_9CC = .rodata:0x000009CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_9D8 = .rodata:0x000009D8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_9E4 = .rodata:0x000009E4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_9F0 = .rodata:0x000009F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_9FC = .rodata:0x000009FC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_A08 = .rodata:0x00000A08; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_A14 = .rodata:0x00000A14; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_A20 = .rodata:0x00000A20; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_A24 = .rodata:0x00000A24; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A28 = .rodata:0x00000A28; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A2C = .rodata:0x00000A2C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A30 = .rodata:0x00000A30; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A34 = .rodata:0x00000A34; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x4 data:4byte lbl_1_data_4 = .data:0x00000004; // type:object size:0x8 data:4byte lbl_1_data_C = .data:0x0000000C; // type:object size:0x10 data:4byte diff --git a/config/GMPE01_00/rels/m418Dll/symbols.txt b/config/GMPE01_00/rels/m418Dll/symbols.txt index 480de9a9..f9b964c5 100644 --- a/config/GMPE01_00/rels/m418Dll/symbols.txt +++ b/config/GMPE01_00/rels/m418Dll/symbols.txt @@ -258,19 +258,19 @@ lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte -lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string -lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string -lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string -lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string -lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string -lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string -lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string +lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 scope:local data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 scope:local data:string +lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 scope:local data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 scope:local data:string +lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 scope:local data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 scope:local data:string +lbl_1_data_71 = .data:0x00000071; // type:object size:0xD scope:local data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE scope:local data:string lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte jumptable_1_data_F8 = .data:0x000000F8; // type:object size:0x88 scope:local -lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string -lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string -lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string +lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 scope:local data:string +lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 scope:local data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 scope:local data:string lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x20 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x20 lbl_1_data_200 = .data:0x00000200; // type:object size:0x40 diff --git a/config/GMPJ01_00/rels/m418Dll/symbols.txt b/config/GMPJ01_00/rels/m418Dll/symbols.txt index 964068e3..d87bb605 100644 --- a/config/GMPJ01_00/rels/m418Dll/symbols.txt +++ b/config/GMPJ01_00/rels/m418Dll/symbols.txt @@ -258,19 +258,19 @@ lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte -lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string -lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string -lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string -lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string -lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string -lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string -lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string +lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string scope:local +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string scope:local +lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string scope:local +lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string scope:local +lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string scope:local +lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string scope:local +lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string scope:local +lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string scope:local lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte jumptable_1_data_F8 = .data:0x000000F8; // type:object size:0x88 scope:local -lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string -lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string -lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string +lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string scope:local +lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string scope:local +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string scope:local lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x20 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x60 lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 diff --git a/config/GMPP01_00/rels/m418Dll/symbols.txt b/config/GMPP01_00/rels/m418Dll/symbols.txt index f4a0ef38..0236cc86 100644 --- a/config/GMPP01_00/rels/m418Dll/symbols.txt +++ b/config/GMPP01_00/rels/m418Dll/symbols.txt @@ -259,19 +259,19 @@ lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte -lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string -lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string -lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string -lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string -lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string -lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string -lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string -lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte +lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string scope:local +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string scope:local +lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string scope:local +lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string scope:local +lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string scope:local +lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string scope:local +lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string scope:local +lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string scope:local +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte scope:local jumptable_1_data_F8 = .data:0x000000F8; // type:object size:0x88 scope:local -lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string -lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string -lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string +lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string scope:local +lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string scope:local +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string scope:local lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x20 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x60 lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 From 213088dfbca640d7d7f2a1c2b55e738047f481cd Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sat, 28 Dec 2024 18:18:01 +0100 Subject: [PATCH 078/178] Add all game versions to the CI --- .github/workflows/build.yml | 2 +- config/GMPJ01_00/rels/m418Dll/symbols.txt | 22 ++++++++++----------- config/GMPP01_00/rels/m418Dll/symbols.txt | 24 +++++++++++------------ 3 files changed, 24 insertions(+), 24 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 91dcc72b..696586eb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -12,7 +12,7 @@ jobs: strategy: fail-fast: false matrix: - version: [GMPE01_00] + version: [GMPE01_00, GMPE01_01, GMPP01_00, GMPP01_02, GMPJ01_00] steps: # Checkout the repository diff --git a/config/GMPJ01_00/rels/m418Dll/symbols.txt b/config/GMPJ01_00/rels/m418Dll/symbols.txt index d87bb605..f4b66ec8 100644 --- a/config/GMPJ01_00/rels/m418Dll/symbols.txt +++ b/config/GMPJ01_00/rels/m418Dll/symbols.txt @@ -258,19 +258,19 @@ lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte -lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string scope:local -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string scope:local -lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string scope:local -lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string scope:local -lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string scope:local -lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string scope:local -lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string scope:local -lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string scope:local +lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 scope:local data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 scope:local data:string +lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 scope:local data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 scope:local data:string +lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 scope:local data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 scope:local data:string +lbl_1_data_71 = .data:0x00000071; // type:object size:0xD scope:local data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE scope:local data:string lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte jumptable_1_data_F8 = .data:0x000000F8; // type:object size:0x88 scope:local -lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string scope:local -lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string scope:local -lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string scope:local +lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 scope:local data:string +lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 scope:local data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 scope:local data:string lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x20 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x60 lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 diff --git a/config/GMPP01_00/rels/m418Dll/symbols.txt b/config/GMPP01_00/rels/m418Dll/symbols.txt index 0236cc86..e44b8b6a 100644 --- a/config/GMPP01_00/rels/m418Dll/symbols.txt +++ b/config/GMPP01_00/rels/m418Dll/symbols.txt @@ -259,19 +259,19 @@ lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte -lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 data:string scope:local -lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 data:string scope:local -lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 data:string scope:local -lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 data:string scope:local -lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 data:string scope:local -lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 data:string scope:local -lbl_1_data_71 = .data:0x00000071; // type:object size:0xD data:string scope:local -lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE data:string scope:local -lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C data:4byte scope:local +lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 scope:local data:string +lbl_1_data_1E = .data:0x0000001E; // type:object size:0x13 scope:local data:string +lbl_1_data_31 = .data:0x00000031; // type:object size:0x10 scope:local data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x10 scope:local data:string +lbl_1_data_51 = .data:0x00000051; // type:object size:0x10 scope:local data:string +lbl_1_data_61 = .data:0x00000061; // type:object size:0x10 scope:local data:string +lbl_1_data_71 = .data:0x00000071; // type:object size:0xD scope:local data:string +lbl_1_data_7E = .data:0x0000007E; // type:object size:0xE scope:local data:string +lbl_1_data_8C = .data:0x0000008C; // type:object size:0x6C scope:local data:4byte jumptable_1_data_F8 = .data:0x000000F8; // type:object size:0x88 scope:local -lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 data:string scope:local -lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 data:string scope:local -lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 data:string scope:local +lbl_1_data_180 = .data:0x00000180; // type:object size:0x12 scope:local data:string +lbl_1_data_192 = .data:0x00000192; // type:object size:0x15 scope:local data:string +lbl_1_data_1A7 = .data:0x000001A7; // type:object size:0x19 scope:local data:string lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x20 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x60 lbl_1_data_240 = .data:0x00000240; // type:object size:0x24 From c23ff7a0966873ede0982b0f5102beb7e8a3b465 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sun, 29 Dec 2024 14:34:04 -0500 Subject: [PATCH 079/178] continued work on m438 --- .vscode/settings.json | 6 +- src/REL/m438Dll/main.c | 795 +++++++++++++++-------------------------- 2 files changed, 301 insertions(+), 500 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 233a6160..f4d558fa 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -23,7 +23,9 @@ "object.h": "c", "executor.h": "c", "m438dll.h": "c", - "audio.h": "c" + "audio.h": "c", + "musyx.h": "c", + "math.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { @@ -96,4 +98,4 @@ "C_Cpp_Runner.showCompilationTime": false, "C_Cpp_Runner.useLinkTimeOptimization": false, "C_Cpp_Runner.msvcSecureNoWarnings": false -} \ No newline at end of file +} diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index d3bf4e10..2faac948 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -5,6 +5,7 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" +#include "game/object.h" #include "game/objsub.h" #include "game/pad.h" #include "game/sprite.h" @@ -121,8 +122,9 @@ typedef struct M438MainWork3 { } M438MainWork3; /* size = */ typedef struct M438MainWork4 { - s8 unk_00; - char unk04[11]; + u8 unk_00; + char unk01[0x7]; + float unk_08; float unk_0C; float unk_10; float unk_14; @@ -217,6 +219,8 @@ typedef struct M438StructBssDE4 { M438UnkStruct2 *unk_40; } M438StructBssDE4; /* size = */ +typedef u8 M438UnkType[0x30]; + void fn_1_4DC(omObjData *object); void fn_1_4FC(omObjData *object); void fn_1_974(omObjData *object); @@ -259,7 +263,7 @@ float fn_1_A14C(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3); void fn_1_A60C(omObjData *object); void fn_1_A688(omObjData *object); void fn_1_A68C(ModelData *model, Mtx matrix); -s32 fn_1_AE18(u32 arg0, Vec *arg1, Vec *arg2); +s32 fn_1_AE18(u32 arg0, float arg8, Vec *arg1, Vec *arg2); float fn_1_B440(Vec *arg0, Vec *arg1, Vec *arg2); Vec lbl_1_data_0 = { 1000.0f, 3000.0f, 1000.0f }; @@ -2705,357 +2709,169 @@ void fn_1_9420(float arg8, float *arg0, float *arg1, float arg2[3][3], float arg } } -// float fn_1_9634(Vec *arg0) -// { -// float sp8; -// float var_f28; -// float var_f29; -// float var_f30; -// double var_f31; +f32 fn_1_9634(Vec* arg0) { + f32 var_f30; + f32 var_f29; + var_f30 = (arg0->x * arg0->x) + (arg0->y * arg0->y) + (arg0->z * arg0->z); + var_f30 = sqrtf(var_f30); + if (var_f30 != 0.0f) { + var_f29 = 1.0f / var_f30; + arg0->x *= var_f29; + arg0->y *= var_f29; + arg0->z *= var_f29; + } else { + arg0->x = arg0->y = arg0->z = 0.0f; + } + return var_f30; +} -// var_f30 = (arg0->z * arg0->z) + ((arg0->x * arg0->x) + (arg0->y * arg0->y)); -// if (var_f30 > 0.0f) { -// var_f31 = __frsqrte(var_f30); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f30 * (var_f31 * var_f31))); -// sp8 = var_f30 * var_f31; -// var_f28 = sp8; -// } -// else { -// var_f28 = var_f30; -// } -// var_f30 = var_f28; -// if (var_f30 != 0.0f) { -// var_f29 = 1.0f / var_f30; -// arg0->x *= var_f29; -// arg0->y *= var_f29; -// arg0->z *= var_f29; -// } -// else { -// arg0->z = 0.0f; -// arg0->y = 0.0f; -// arg0->x = 0.0f; -// } -// return var_f30; -// } +f32 fn_1_97CC(Vec arg0, Vec arg1, Vec* arg2, f32 arg8) { + if (arg8 <= 0.0f) { + arg2->x = arg0.x; + arg2->y = arg0.y; + arg2->z = arg0.z; + arg8 = 0.0f; + } else if (arg8 >= 1.0f) { + arg2->x = (arg0.x + arg1.x); + arg2->y = (arg0.y + arg1.y); + arg2->z = (arg0.z + arg1.z); + arg8 = 1.0f; + } else { + arg2->x = (arg0.x + (arg8 * arg1.x)); + arg2->y = (arg0.y + (arg8 * arg1.y)); + arg2->z = (arg0.z + (arg8 * arg1.z)); + } + return arg8; +} -// float fn_1_97CC(void *arg0, void *arg1, void *arg2, float arg8) -// { -// if (arg8 <= 0.0f) { -// arg2->unk_00 = arg0->unk_00; -// arg2->unk_04 = arg0->unk_04; -// arg2->unk_08 = arg0->unk_08; -// return 0.0f; -// } -// if (arg8 >= 1.0f) { -// arg2->unk_00 = arg0->unk_00 + arg1->unk_00; -// arg2->unk_04 = arg0->unk_04 + arg1->unk_04; -// arg2->unk_08 = arg0->unk_08 + arg1->unk_08; -// return 1.0f; -// } -// arg2->unk_00 = arg0->unk_00 + (arg8 * arg1->unk_00); -// arg2->unk_04 = arg0->unk_04 + (arg8 * arg1->unk_04); -// arg2->unk_08 = arg0->unk_08 + (arg8 * arg1->unk_08); -// return arg8; -// } +f32 fn_1_98A4(Vec arg0, Vec arg1, Vec arg2) { + f32 temp_f30; + f32 var_f31; -// float fn_1_98A4(void *arg0, void *arg1, void *arg2) -// { -// float var_f30; -// float var_f31; + var_f31 = (arg2.z * (arg1.z - arg0.z)) + ((arg2.x * (arg1.x - arg0.x)) + (arg2.y * (arg1.y - arg0.y))); + temp_f30 = -((arg2.z * arg2.z) + ((arg2.x * arg2.x) + (arg2.y * arg2.y))); + if (0.0f != temp_f30) { + var_f31 /= temp_f30; + } + return var_f31; +} -// var_f31 = (arg2->unk_08 * (arg1->unk_08 - arg0->unk_08)) -// + ((arg2->unk_00 * (arg1->unk_00 - arg0->unk_00)) + (arg2->unk_04 * (arg1->unk_04 - arg0->unk_04))); -// var_f30 = -((arg2->unk_08 * arg2->unk_08) + ((arg2->unk_00 * arg2->unk_00) + (arg2->unk_04 * arg2->unk_04))); -// if (var_f30 != 0.0f) { -// var_f31 /= var_f30; -// } -// return var_f31; -// } +f32 fn_1_9960(Vec* arg0, Vec* arg1, Vec* arg2) { + Vec sp44; + f32 var_f31; + f32 var_f30; + f32 temp_f29; -// float fn_1_9960(Vec *arg0, Vec *arg1, Vec *arg2) -// { -// float sp4C; -// float sp48; -// float sp44; -// float sp40; -// float sp3C; -// float sp38; -// float sp34; -// float sp30; -// float sp2C; -// float sp28; -// float sp24; -// float sp20; -// float sp1C; -// float sp18; -// float sp14; -// float sp10; -// float spC; -// float sp8; -// float var_f27; -// float var_f28; -// float var_f29; -// float var_f30; -// float var_f31; + if (0.0f == ((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y)))) { + return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); + } + var_f31 = fn_1_98A4(*arg0, *arg1, *arg2); + fn_1_97CC(*arg1, *arg2, &sp44, var_f31); + return ((arg0->z - sp44.z) * (arg0->z - sp44.z)) + (((arg0->x - sp44.x) * (arg0->x - sp44.x)) + ((arg0->y - sp44.y) * (arg0->y - sp44.y))); +} -// if (((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y))) == 0.0f) { -// return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) -// + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); -// } -// sp38 = arg0->x; -// sp3C = arg0->y; -// sp40 = arg0->z; -// sp2C = arg1->x; -// sp30 = arg1->y; -// sp34 = arg1->z; -// sp20 = arg2->x; -// sp24 = arg2->y; -// sp28 = arg2->z; -// var_f30 = (sp28 * (sp34 - sp40)) + ((sp20 * (sp2C - sp38)) + (sp24 * (sp30 - sp3C))); -// var_f29 = -((sp28 * sp28) + ((sp20 * sp20) + (sp24 * sp24))); -// if (var_f29 != 0.0f) { -// var_f30 /= var_f29; -// } -// var_f27 = var_f30; -// var_f28 = var_f27; -// var_f31 = var_f28; -// sp8 = arg2->x; -// spC = arg2->y; -// sp10 = arg2->z; -// sp14 = arg1->x; -// sp18 = arg1->y; -// sp1C = arg1->z; -// if (var_f31 <= 0.0f) { -// sp44 = sp14; -// sp48 = sp18; -// sp4C = sp1C; -// var_f31 = 0.0f; -// } -// else if (var_f31 >= 1.0f) { -// sp44 = sp14 + sp8; -// sp48 = sp18 + spC; -// sp4C = sp1C + sp10; -// var_f31 = 1.0f; -// } -// else { -// sp44 = sp14 + (var_f31 * sp8); -// sp48 = sp18 + (var_f31 * spC); -// sp4C = sp1C + (var_f31 * sp10); -// } -// return ((arg0->z - sp4C) * (arg0->z - sp4C)) + (((arg0->x - sp44) * (arg0->x - sp44)) + ((arg0->y - sp48) * (arg0->y - sp48))); -// } +f32 fn_1_9C9C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { + f32 sp44; + f32 sp40; + f32 sp3C; + f32 sp38; + f32 sp34; + f32 sp30; + f32 sp2C; + f32 sp28; + f32 sp24; + Vec sp18; + f32 sp14; + f32 sp10; + f32 spC; + f32 sp8; + f32 temp_f25; + f32 temp_f26; + f32 temp_f28; + f32 var_f24; + f32 var_f27; + f64 temp_f31; + f64 temp_f31_2; + f64 temp_f31_3; -// float fn_1_9C9C(void *arg0, void *arg1, void *arg2, void *arg3, void *arg4) -// { -// float sp44; -// float sp40; -// float sp3C; -// float sp38; -// float sp34; -// float sp30; -// float sp2C; -// float sp28; -// float sp24; -// float sp20; -// float sp1C; -// float sp18; -// float sp14; -// float sp10; -// float spC; -// float sp8; -// float var_f22; -// float var_f23; -// float var_f24; -// float var_f25; -// float var_f26; -// float var_f27; -// float var_f28; -// float var_f29; -// float var_f30; -// double var_f31; + if (0.0f == ((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y)))) { + return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); + } + var_f27 = fn_1_98A4(*arg0, *arg1, *arg2); + fn_1_97CC(*arg1, *arg2, arg3, var_f27); + arg4->x = (arg0->x - arg3->x); + arg4->y = (arg0->y - arg3->y); + arg4->z = (arg0->z - arg3->z); -// if (((arg2->unk_08 * arg2->unk_08) + ((arg2->unk_00 * arg2->unk_00) + (arg2->unk_04 * arg2->unk_04))) == 0.0f) { -// return ((arg0->unk_08 - arg1->unk_08) * (arg0->unk_08 - arg1->unk_08)) -// + (((arg0->unk_00 - arg1->unk_00) * (arg0->unk_00 - arg1->unk_00)) + ((arg0->unk_04 - arg1->unk_04) * (arg0->unk_04 - -// arg1->unk_04))); -// } -// sp3C = arg0->unk_00; -// sp40 = arg0->unk_04; -// sp44 = arg0->unk_08; -// sp30 = arg1->unk_00; -// sp34 = arg1->unk_04; -// sp38 = arg1->unk_08; -// sp24 = arg2->unk_00; -// sp28 = arg2->unk_04; -// sp2C = arg2->unk_08; -// var_f27 = (sp2C * (sp38 - sp44)) + ((sp24 * (sp30 - sp3C)) + (sp28 * (sp34 - sp40))); -// var_f25 = -((sp2C * sp2C) + ((sp24 * sp24) + (sp28 * sp28))); -// if (var_f25 != 0.0f) { -// var_f27 /= var_f25; -// } -// var_f22 = var_f27; -// var_f23 = var_f22; -// var_f30 = var_f23; -// spC = arg2->unk_00; -// sp10 = arg2->unk_04; -// sp14 = arg2->unk_08; -// sp18 = arg1->unk_00; -// sp1C = arg1->unk_04; -// sp20 = arg1->unk_08; -// if (var_f30 <= 0.0f) { -// arg3->unk_00 = sp18; -// arg3->unk_04 = sp1C; -// arg3->unk_08 = sp20; -// var_f30 = 0.0f; -// } -// else if (var_f30 >= 1.0f) { -// arg3->unk_00 = sp18 + spC; -// arg3->unk_04 = sp1C + sp10; -// arg3->unk_08 = sp20 + sp14; -// var_f30 = 1.0f; -// } -// else { -// arg3->unk_00 = sp18 + (var_f30 * spC); -// arg3->unk_04 = sp1C + (var_f30 * sp10); -// arg3->unk_08 = sp20 + (var_f30 * sp14); -// } -// arg4->unk_00 = arg0->unk_00 - arg3->unk_00; -// arg4->unk_04 = arg0->unk_04 - arg3->unk_04; -// arg4->unk_08 = arg0->unk_08 - arg3->unk_08; -// var_f28 = (arg4->unk_08 * arg4->unk_08) + ((arg4->unk_00 * arg4->unk_00) + (arg4->unk_04 * arg4->unk_04)); -// var_f29 = var_f28; -// if (var_f29 > 0.0f) { -// var_f31 = __frsqrte(var_f29); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); -// sp8 = var_f29 * var_f31; -// var_f24 = sp8; -// } -// else { -// var_f24 = var_f29; -// } -// var_f28 = var_f24; -// if (var_f28 != 0.0f) { -// var_f26 = 1.0f / var_f28; -// arg4->unk_00 = arg4->unk_00 * var_f26; -// arg4->unk_04 = arg4->unk_04 * var_f26; -// arg4->unk_08 = arg4->unk_08 * var_f26; -// } -// else { -// arg4->unk_08 = 0.0f; -// arg4->unk_04 = 0.0f; -// arg4->unk_00 = 0.0f; -// } -// return var_f28; -// } + return fn_1_9634(arg4); +} -// float fn_1_A14C(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) -// { -// float var_f23; -// float var_f24; -// float var_f25; -// float var_f26; -// float var_f27; -// float var_f28; -// float var_f29; -// float var_f30; -// float var_f31; -// s32 var_r29; -// s32 var_r30; -// s32 var_r31; +f32 fn_1_A14C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3) { + f32 temp_f31; + f32 var_f30; + f32 var_f29; + f32 var_f28; + f32 var_f27; + f32 var_f26; + s32 var_r31; + s32 var_r30; + s32 var_r29; -// var_f30 = -1.0f; -// var_r31 = 0; -// if (arg3->unk_00 < 0.0f) { -// var_f25 = -arg3->unk_00; -// } -// else { -// var_f25 = arg3->unk_00; -// } -// var_f28 = var_f25; -// if (arg3->unk_04 < 0.0f) { -// var_f24 = -arg3->unk_04; -// } -// else { -// var_f24 = arg3->unk_04; -// } -// var_f27 = var_f24; -// if (arg3->unk_08 < 0.0f) { -// var_f23 = -arg3->unk_08; -// } -// else { -// var_f23 = arg3->unk_08; -// } -// var_f26 = var_f23; -// if (var_f28 >= var_f27) { -// if (var_f28 >= var_f26) { -// var_r30 = 1; -// } -// else { -// var_r30 = 0x100; -// } -// var_r31 = var_r30; -// } -// else { -// if (var_f27 >= var_f26) { -// var_r29 = 0x10; -// } -// else { -// var_r29 = 0x100; -// } -// var_r31 = var_r29; -// } -// if ((var_r31 & 3) != 0) { -// if ((arg1->x != 0.0f) || (arg1->z != 0.0f)) { -// var_f31 = (arg3->unk_00 * arg1->z) - (arg3->unk_08 * arg1->x); -// if (var_f31 == 0.0f) { -// return -1.0f; -// } -// var_f29 = ((arg3->unk_08 * (arg0->x - arg2->x)) - (arg3->unk_00 * (arg0->z - arg2->z))) / var_f31; -// goto block_44; -// } -// var_f31 = (arg3->unk_04 * arg1->x) - (arg3->unk_00 * arg1->y); -// if (var_f31 == 0.0f) { -// return -1.0f; -// } -// var_f29 = ((arg3->unk_00 * (arg0->y - arg2->y)) - (arg3->unk_04 * (arg0->x - arg2->x))) / var_f31; -// goto block_44; -// } -// if ((var_r31 & 0x30) != 0) { -// if ((arg1->x != 0.0f) || (arg1->y != 0.0f)) { -// var_f31 = (arg3->unk_04 * arg1->x) - (arg3->unk_00 * arg1->y); -// if (var_f31 == 0.0f) { -// return -1.0f; -// } -// var_f29 = ((arg3->unk_00 * (arg0->y - arg2->y)) - (arg3->unk_04 * (arg0->x - arg2->x))) / var_f31; -// goto block_44; -// } -// var_f31 = (arg3->unk_08 * arg1->y) - (arg3->unk_04 * arg1->z); -// if (var_f31 == 0.0f) { -// return -1.0f; -// } -// var_f29 = ((arg3->unk_04 * (arg0->z - arg2->z)) - (arg3->unk_08 * (arg0->y - arg2->y))) / var_f31; -// goto block_44; -// } -// if ((arg1->x != 0.0f) || (arg1->z != 0.0f)) { -// var_f31 = (arg3->unk_00 * arg1->z) - (arg3->unk_08 * arg1->x); -// if (var_f31 == 0.0f) { -// return -1.0f; -// } -// var_f29 = ((arg3->unk_08 * (arg0->x - arg2->x)) - (arg3->unk_00 * (arg0->z - arg2->z))) / var_f31; -// goto block_44; -// } -// var_f31 = (arg3->unk_08 * arg1->y) - (arg3->unk_04 * arg1->z); -// if (var_f31 == 0.0f) { -// return -1.0f; -// } -// var_f29 = ((arg3->unk_04 * (arg0->z - arg2->z)) - (arg3->unk_08 * (arg0->y - arg2->y))) / var_f31; -// block_44: -// return var_f29; -// } + var_f30 = -1.0f; + var_r31 = 0; + + var_f28 = BOARD_FABS(arg3->x); + var_f27 = BOARD_FABS(arg3->y); + var_f26 = BOARD_FABS(arg3->z); + if (var_f28 >= var_f27) { + if (var_f28 >= var_f26) { + var_r30 = 1; + } else { + var_r30 = 0x100; + } + var_r31 = var_r30; + } else { + if (var_f27 >= var_f26) { + var_r29 = 0x10; + } else { + var_r29 = 0x100; + } + var_r31 = var_r29; + } + if ((var_r31 & 3) != 0) { + if ((0.0f != arg1->x) || (0.0f != arg1->z)) { + if (0.0f == (temp_f31 = (arg3->x * arg1->z) - (arg3->z * arg1->x))) { + return var_f30; + } + var_f29 = ((arg3->z * (arg0->x - arg2->x)) - (arg3->x * (arg0->z - arg2->z))) / temp_f31; + } else if (0.0f == (temp_f31 = (arg3->y * arg1->x) - (arg3->x * arg1->y))) { + return var_f30; + } else { + var_f29 = ((arg3->x * (arg0->y - arg2->y)) - (arg3->y * (arg0->x - arg2->x))) / temp_f31; + } + } else if ((var_r31 & 0x30) != 0) { + if ((0.0f != arg1->x) || (0.0f != arg1->y)) { + if (0.0f == (temp_f31 = (arg3->y * arg1->x) - (arg3->x * arg1->y))) { + return var_f30; + } + var_f29 = ((arg3->x * (arg0->y - arg2->y)) - (arg3->y * (arg0->x - arg2->x))) / temp_f31; + } else if (0.0f == (temp_f31 = (arg3->z * arg1->y) - (arg3->y * arg1->z))) { + return var_f30; + } else { + var_f29 = ((arg3->y * (arg0->z - arg2->z)) - (arg3->z * (arg0->y - arg2->y))) / temp_f31; + } + } else if ((0.0f != arg1->x) || (0.0f != arg1->z)) { + if (0.0f == (temp_f31 = (arg3->x * arg1->z) - (arg3->z * arg1->x))) { + return var_f30; + } + var_f29 = ((arg3->z * (arg0->x - arg2->x)) - (arg3->x * (arg0->z - arg2->z))) / temp_f31; + } else if (0.0f == (temp_f31 = (arg3->z * arg1->y) - (arg3->y * arg1->z))) { + return var_f30; + } else { + var_f29 = ((arg3->y * (arg0->z - arg2->z)) - (arg3->z * (arg0->y - arg2->y))) / temp_f31; + } + return var_f29; +} void fn_1_A60C(omObjData *object) { @@ -3072,11 +2888,11 @@ void fn_1_A688(omObjData *object) { } Vec lbl_1_data_514 = { -850.0f, 0.0f, -850.0f }; s32 lbl_1_data_520[25] = { - -98, -97, -96, -95, -94, - -50, -49, -48, -47, -46, - -2, -1, 0, 1, 2, - 0x2E, 0x2F, 0x30, 0x31, 0x32, - 0x5E, 0x5F, 0x60, 0x61, 0x62, + -0x62, -0x61, -0x60, -0x5F, -0x5E, + -0x32, -0x31, -0x30, -0x2F, -0x2E, + -0x2, -0x1, 0x0, 0x1, 0x2, + 0x2E, 0x2F, 0x30, 0x31, 0x32, + 0x5E, 0x5F, 0x60, 0x61, 0x62, }; u32 lbl_1_data_584[25] = { @@ -3107,158 +2923,141 @@ u32 lbl_1_data_584[25] = { 0x50, }; -// void fn_1_A68C(ModelData *model, Mtx matrix) -// { -// Vec sp14; -// Vec sp8; -// ? *var_r30; -// float var_f31; -// omObjData *var_r27; -// s32 var_r24; -// s32 var_r28; -// s32 var_r29; -// u8 *var_r26; -// void *var_r25; -// void *var_r31; +#define getData(v, off) &( &( *OM_GET_DATA_PTR(lbl_1_bss_DBC, M438UnkType) )[ (u32)(0.028235294f * (v.x - off)) ] )[ (u32)(0.028235294f * (v.z - off)) * 0x30 ] -// if (omPauseChk() == 0) { -// memset(lbl_1_bss_DBC->data, 0, 0x900); -// if (lbl_1_bss_DBA == 7) { -// for (var_r30 = &lbl_1_bss_298; var_r29 = 0; var_r30 < 0x30; var_r29++; var_r30 += 0x30) { -// if ((var_r30->unk_00 > 1) && (var_r30->unk_00 < 5)) { -// var_f31 = 0.0f; -// for (var_f31 = 0.0f; var_f31 < (35.416668f + var_r30->unk_14); var_f31 += 35.416668f) { -// VECScale(var_r30 + 0x24, &sp8, var_f31); -// VECAdd(var_r30 + 0x18, &sp8, &sp14); -// VECSubtract(&sp14, &lbl_1_data_514, &sp14); -// var_r24 = (0.028235294f * sp14.z) * 0x30; -// var_r25 = (0.028235294f * sp14) + var_r24; -// var_r25 += lbl_1_bss_DBC->data; -// for (var_r28 = 0; var_r28 < 0x19; var_r28++) { -// var_r26 = var_r25 + lbl_1_data_520[var_r28]; -// if (*var_r26 < lbl_1_data_584[var_r28]) { -// *var_r26 = lbl_1_data_584[var_r28]; -// } -// } -// } -// } -// } -// for (var_r29 = 0; var_r29 < 4; var_r29++) { -// if (lbl_1_bss_DC4[var_r29] != NULL) { -// var_r27 = lbl_1_bss_DC4[var_r29]; -// var_r31 = var_r27->data; -// if ((var_r31 != NULL) && (var_r31->unk_68 != 0)) { -// var_r31->unk_68 = 0; -// VECAdd(var_r31 + 0x6C, var_r31 + 0x4C, &sp14); -// var_r31->unk_64 = fn_1_AE18(var_r27->work[0], &sp14, var_r31 + 0x58); -// } -// } -// } -// } -// } -// } +void fn_1_A68C(ModelData* model, Mtx matrix) { + Vec sp14; + Vec sp8; + M438StructBss298* var_r30; + f32 var_f31; + omObjData* temp_r27; + s32 var_r28; + s32 var_r29; + u8* temp_r26; + u8* var_r25; + M438MainWork *temp_r31; -// u16 fn_1_A8FC(Vec *arg0, float arg8) -// { -// s32 sp34; -// float sp30; -// s32 sp2C; -// Vec sp20; -// Vec sp14; -// float sp10; -// float spC; -// float sp8; -// Vec *var_r29; -// float var_f25; -// float var_f28; -// float var_f29; -// float var_f30; -// float var_f31; -// double var_f26; -// double var_f27; -// s32 var_r28; -// u16 var_r30; -// u8 temp_r0; -// void *var_r31; + if ((u8)omPauseChk() == 0) { + memset(lbl_1_bss_DBC->data, 0, 0x900); + if (lbl_1_bss_DBA == 7) { + var_r30 = lbl_1_bss_298; + for (var_r29 = 0; var_r29 < 0x30; var_r29++, var_r30++) { + if ((var_r30->unk_00 > 1U) && (var_r30->unk_00 < 5U)) { -// var_r29 = arg0; -// var_f25 = arg8; -// var_r30 = 0; -// var_r28 = 0; -// var_f28 = 100.0f * (4.5f - (2.0f * var_f25)); -// var_f31 = VECMag(var_r29); -// if (var_f31 > 280.0f) { -// if (var_f31 > 560.0f) { -// var_r28 = 1; -// VECNormalize(var_r29, &sp14); -// } -// var_f31 -= 280.0f; -// var_f31 *= 0.12987013f; -// if (var_f31 > 50.0f) { -// var_f31 = 500.0f; -// } -// var_r30 = var_f31; -// } -// if (lbl_1_bss_DBA == 7) { -// var_r31 = lbl_1_bss_DC0->data; -// sp2C = var_r31->unk_34; -// sp30 = var_r31->unk_38; -// sp34 = var_r31->unk_3C; -// sp30 = 0.0f; -// temp_r0 = var_r31->unk_00; -// if (temp_r0 < 4) { -// if (temp_r0 < 2) { -// goto block_18; -// } -// sp8 = sind(var_r31->unk_08); -// spC = 0.0f; -// sp10 = cosd(var_r31->unk_08); -// VECScale(&sp8, &sp20, 600.0f + (100.0f * (8.0f * var_f25))); -// var_f30 = fn_1_B440(var_r29, &sp2C, &sp20); -// if ((var_f30 > -0.2f) && (var_f30 < 1.0f)) { -// VECScale(&sp20, &sp20, var_f30); -// VECAdd(&sp2C, &sp20, &sp2C); -// VECSubtract(&sp2C, var_r29, &sp20); -// var_f31 = VECMag(&sp20); -// if (var_f31 < var_f28) { -// var_f29 = 0.0f; -// if (var_r28 != 0) { -// var_f29 = VECDotProduct(&sp14, &sp8); -// var_f27 = fabs(var_f29); -// var_f29 = 1.0 - var_f27; -// var_f29 = var_f29; -// } -// var_f31 = (1.0f / var_f28) * (var_f28 - var_f31); -// var_f31 = 0.5f * (var_f31 + (1.0f - ((1.0f - var_f31) * (1.0f - var_f31)))); -// var_f31 += (1.0f - var_f31) * var_f29; -// var_f31 = 100.0f + (50.0f * var_f31); -// var_f26 = fabs(var_f30); -// var_f30 = 0.5 + (0.5 * (1.0 - var_f26)); -// var_f30 = var_f30; -// var_f31 *= var_f30; -// if (var_f31 > 150.0f) { -// var_f31 = 150.0f; -// } -// var_r30 = var_r30 + var_f31; -// } -// } -// } -// else { -// block_18: -// VECSubtract(var_r29, &sp2C, &sp20); -// var_f31 = VECMag(&sp20); -// if (var_f31 < 600.0f) { -// var_f31 = 800.0f - var_f31; -// var_f31 = 20.0f + (0.1f * var_f31); -// if (var_f31 > 100.0f) { -// var_f31 = 100.0f; -// } -// var_r30 = var_r30 + var_f31; -// } -// } -// } -// return var_r30; -// } + var_f31 = 0.0f; + for (var_f31 = 0.0f; var_f31 < (35.416668f + var_r30->unk_14); var_f31 += 35.416668f) { + PSVECScale(&var_r30->unk_24, &sp8, var_f31); + PSVECAdd(&var_r30->unk_18, &sp8, &sp14); + PSVECSubtract(&sp14, &lbl_1_data_514, &sp14); + + // @todo make this look nicer + // var_r25 = getData(sp14, 0); + var_r25 = getData(sp14, 0); + for (var_r28 = 0; var_r28 < 0x19; var_r28++) { + temp_r26 = &var_r25[lbl_1_data_520[var_r28]]; + if (temp_r26[0] < lbl_1_data_584[var_r28]) { + temp_r26[0] = lbl_1_data_584[var_r28]; + } + } + } + } + } + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if ((omObjData* ) lbl_1_bss_DC4[var_r29]) { + temp_r27 = lbl_1_bss_DC4[var_r29]; + temp_r31 = temp_r27->data; + if ((temp_r31) && (temp_r31->unk_68 != 0)) { + temp_r31->unk_68 = 0; + PSVECAdd(&temp_r31->unk_6C, &temp_r31->unk_4C, &sp14); + temp_r31->unk_64 = fn_1_AE18(temp_r27->work[0], temp_r31->unk_7C, &sp14, &temp_r31->unk_58); + } + } + } + } + } +} + +u32 fn_1_A8FC(Vec* arg0, f32 arg8) { + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + f32 var_f31; + f32 var_f30; + f32 var_f29; + f32 temp_f28; + s32 var_r28; + u32 var_r30; + M438MainWork4 *temp_r31; + + var_r30 = 0; + var_r28 = 0; + temp_f28 = 100.0f * (4.5f - (2.0f * arg8)); + var_f31 = PSVECMag(arg0); + if (var_f31 > 280.0f) { + if (var_f31 > 560.0f) { + var_r28 = 1; + PSVECNormalize(arg0, &sp14); + } + var_f31 -= 280.0f; + var_f31 *= 0.12987013f; + if (var_f31 > 50.0f) { + var_f31 = 500.0f; + } + var_r30 = var_f31; + } + if (lbl_1_bss_DBA == 7) { + temp_r31 = lbl_1_bss_DC0->data; + sp2C = temp_r31->unk_34; + sp2C.y = 0.0f; + switch (temp_r31->unk_00) { + case 2: + case 3: + sp8.x = sind(temp_r31->unk_08); + sp8.y = 0.0f; + sp8.z = cosd(temp_r31->unk_08); + PSVECScale(&sp8, &sp20, 600.0f + (100.0f * (8.0f * arg8))); + var_f30 = fn_1_B440(arg0, &sp2C, &sp20); + if (var_f30 > -0.2f && var_f30 < 1.0f) { + PSVECScale(&sp20, &sp20, var_f30); + PSVECAdd(&sp2C, &sp20, &sp2C); + PSVECSubtract(&sp2C, arg0, &sp20); + var_f31 = PSVECMag(&sp20); + if (var_f31 < temp_f28) { + var_f29 = 0.0f; + if (var_r28 != 0) { + var_f29 = PSVECDotProduct(&sp14, &sp8); + var_f29 = 1.0 - fabs(var_f29); + } + var_f31 = (1.0f / temp_f28) * (temp_f28 - var_f31); + var_f31 = 0.5f * (var_f31 + (1.0f - ((1.0f - var_f31) * (1.0f - var_f31)))); + var_f31 += (1.0f - var_f31) * var_f29; + var_f31 = 100.0f + 50.0f * var_f31; + var_f30 = 0.5 + 0.5 * (1.0 - fabs(var_f30)); + var_f31 *= var_f30; + if (var_f31 > 150.0f) { + var_f31 = 150.0f; + } + var_r30 += var_f31; + } + } + break; + default: + PSVECSubtract(arg0, &sp2C, &sp20); + var_f31 = PSVECMag(&sp20); + if (var_f31 < 600.0f) { + var_f31 = 800.0f - var_f31; + var_f31 = 20.0f + (0.1f * var_f31); + if (var_f31 > 100.0f) { + var_f31 = 100.0f; + } + var_r30 += var_f31; + } + break; + } + } + return var_r30; +} s32 lbl_1_data_5E8[9] = { 0, -49, -48, -47, -1, 1, 0x2F, 0x30, 0x31 }; From 5886085302439c1613be719aaea52e138d132575 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sun, 29 Dec 2024 14:38:00 -0500 Subject: [PATCH 080/178] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 88de0b1a..f1594c57 100644 --- a/README.md +++ b/README.md @@ -20,8 +20,8 @@ Supported versions: - `GMPE01_00`: Rev 0 (USA) - `GMPE01_01`: Rev 1 (USA) - `GMPP01_00`: Rev 0 (PAL) -- `GMPP01_02`: REV 2 (PAL) -- `GMPJ01_00`: REV 0 (JP) +- `GMPP01_02`: Rev 2 (PAL) +- `GMPJ01_00`: Rev 0 (JP) Dependencies ============ From c914104198ca8604dc2a68f3e0d3ca59771e864a Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sun, 29 Dec 2024 16:19:06 -0500 Subject: [PATCH 081/178] match m438Dll/main --- config/GMPE01_00/rels/m438Dll/symbols.txt | 3 +- configure.py | 2 +- src/REL/m438Dll/main.c | 305 +++++++++------------- 3 files changed, 132 insertions(+), 178 deletions(-) diff --git a/config/GMPE01_00/rels/m438Dll/symbols.txt b/config/GMPE01_00/rels/m438Dll/symbols.txt index 13ca3c7d..e1febc85 100644 --- a/config/GMPE01_00/rels/m438Dll/symbols.txt +++ b/config/GMPE01_00/rels/m438Dll/symbols.txt @@ -381,7 +381,7 @@ 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:0x23 data:string +lbl_1_data_40 = .data:0x00000040; // type:object size:0x23 scope:local data:string lbl_1_data_64 = .data:0x00000064; // type:object size:0x4 data:4byte lbl_1_data_68 = .data:0x00000068; // type:object size:0x420 data:float lbl_1_data_488 = .data:0x00000488; // type:object size:0x2C @@ -434,6 +434,7 @@ lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x9 data:string lbl_1_data_8D1 = .data:0x000008D1; // type:object size:0x7 data:string lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x60 lbl_1_data_938 = .data:0x00000938; // type:object size:0xB data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x288 diff --git a/configure.py b/configure.py index b761c7f8..83619991 100644 --- a/configure.py +++ b/configure.py @@ -1146,7 +1146,7 @@ config.libs = [ Rel( "m438Dll", # Chain Chomp Fever objects={ - Object(NonMatching, "REL/m438Dll/main.c"), + Object(MatchingFor("GMPE01_00"), "REL/m438Dll/main.c"), Object(NonMatching, "REL/m438Dll/map.c"), Object(NonMatching, "REL/m438Dll/fire.c"), }, diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index 2faac948..c7409d36 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -290,12 +290,13 @@ s16 lbl_1_bss_DAA[4]; s16 lbl_1_bss_DA8; s32 lbl_1_bss_DA4; void *lbl_1_bss_BA4[0x80]; -u32 lbl_1_bss_B98; +u32 lbl_1_bss_B98[3]; M438StructBss298 lbl_1_bss_298[48]; s32 lbl_1_bss_294; u16 lbl_1_bss_C[0x144]; s32 lbl_1_bss_8; s32 lbl_1_bss_4; +static u32 lbl_1_bss_0; void ObjectSetup(void) { @@ -458,7 +459,7 @@ void fn_1_974(omObjData *object) if (lbl_1_data_64 == -1 && (MGSeqStatGet(lbl_1_bss_DB6) & 0x10) != 0) { lbl_1_data_64 = HuAudSeqPlay(0x49); } - lbl_1_bss_B98 = 0x12C; + lbl_1_bss_B98[0] = 0x12C; break; case 7: var_r29 = 0; @@ -481,8 +482,8 @@ void fn_1_974(omObjData *object) } break; case 8: - if (lbl_1_bss_B98 != 0) { - lbl_1_bss_B98--; + if (lbl_1_bss_B98[0] != 0) { + lbl_1_bss_B98[0]--; } var_r24 = 0; for (var_r31 = 0; var_r31 < 4; var_r31++) { @@ -502,7 +503,7 @@ void fn_1_974(omObjData *object) } HuAudSeqFadeOut(lbl_1_data_64, 0x3C); } - else if ((MGSeqStatGet(lbl_1_bss_DB6) == 0) && (var_r24 == 0 || lbl_1_bss_B98 == 0)) { + else if ((MGSeqStatGet(lbl_1_bss_DB6) == 0) && (var_r24 == 0 || lbl_1_bss_B98[0] == 0)) { lbl_1_bss_DB6 = -1; lbl_1_bss_DB2 = 0x3C; lbl_1_bss_DBA += 1; @@ -3090,176 +3091,128 @@ Vec lbl_1_data_69C[9] = { s32 lbl_1_data_708[9] = { 0, -19, -18, -17, -1, 1, 0x11, 0x12, 0x13 }; s32 lbl_1_data_72C[9] = { 0, -38, -54, -34, -3, 3, 0x22, 0x36, 0x26 }; +s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { + s32 sp58[9]; + Vec sp4C; + Vec sp40; + Vec sp34; + Vec sp28; + Vec sp1C; + u8* sp18; + u32 sp14; + u32 sp10; + f32 var_f31; + f32 var_f30; + f32 var_f29; + f32 temp_f28; + s32 var_r31; + s32 var_r30; + u32 var_r29; + s32 var_r28; + u16* temp_r27; + s32 var_r26; + M438MainWork *var_r25; + u8* temp_r24; + s32 var_r23; + u8* var_r22; + u16* var_r21; + u32 var_r19; + u32 var_r18; + u8* temp_r17; -// s32 fn_1_AE18(u32 arg0, Vec *arg1, Vec *arg2) -// { -// Vec sp4C; -// float sp48; -// float sp44; -// float sp40; -// Vec sp34; -// float sp30; -// float sp2C; -// s32 sp28; -// Vec sp1C; -// void *sp18; -// u32 sp14; -// u32 sp10; -// Vec *spC; -// u32 sp8; -// Vec *var_r20; -// float temp_r0; -// float temp_r3; -// float var_f22; -// float var_f23; -// float var_f24; -// float var_f25; -// float var_f26; -// float var_f27; -// float var_f28; -// float var_f29; -// float var_f30; -// float var_f31; -// s32 var_r18; -// s32 var_r23; -// s32 var_r26; -// s32 var_r28; -// s32 var_r30; -// u16 *var_r21; -// u16 *var_r27; -// u16 var_r31; -// u32 temp_r3_2; -// u32 var_r19; -// u32 var_r29; -// u8 *var_r24; -// void *var_r17; -// void *var_r22; -// void *var_r25; + memset(lbl_1_bss_C, 0, 0x288); + sp40 = *arg1; + sp10 = 0.028235294f * (sp40.x - -850.0f); + sp14 = 0.028235294f * (sp40.z - -850.0f); + temp_r17 = &(&(*OM_GET_DATA_PTR(lbl_1_bss_DBC, M438UnkType))[sp10])[sp14 * 0x30]; + sp40.y = 0.0f; + *arg2 = sp40; + var_r25 = lbl_1_bss_DC4[arg0]->data; + temp_f28 = var_r25->unk_3C; + var_r19 = 0x2710; + var_r18 = 0; + + for (var_r30 = 0; var_r30 < 9; var_r30++) { + PSVECAdd(&sp40, &lbl_1_data_60C[var_r30], &sp34); + sp18 = temp_r17 + lbl_1_data_5E8[var_r30]; + (void)temp_r17; + var_r21 = &(&lbl_1_bss_C[lbl_1_data_708[var_r30]])[0xAB]; + var_f31 = 0.0f; + var_r29 = 0; + var_r22 = sp18; + sp28 = sp34; + + for (var_r23 = 0; var_r23 < 3; var_r23++) { + for (var_r28 = 0; var_r28 < 9; var_r28++) { + temp_r24 = var_r22 + lbl_1_data_5E8[var_r28]; + PSVECAdd(&sp28, &lbl_1_data_60C[var_r28], &sp4C); + if ((lbl_1_bss_DBC->data <= temp_r24) && (((u8*)lbl_1_bss_DBC->data + 0x900 > temp_r24) && (fabs(sp4C.x) < 850.0) && (fabs(sp4C.z) < 850.0))) { + var_f31++; + temp_r27 = &var_r21[lbl_1_data_708[var_r28]]; + if (*temp_r27 == 0) { + var_r31 = fn_1_A8FC(&sp4C, temp_f28); + var_r31 += *temp_r24; + var_f29 = 0.0f; + if (var_r31 < 0x3C) { + var_f29 = (1.0f / 60.0f) * (0x3C - var_r31); + } + var_f29 = 80.0f + (100.0f * (2.5f * var_f29)); + for (var_r26 = 0; var_r26 < 4; var_r26++) { + if (var_r26 != arg0) { + var_r25 = lbl_1_bss_DC4[var_r26]->data; + PSVECSubtract(&sp4C, &var_r25->unk_6C, &sp1C); + sp1C.y = 0.0f; + var_f30 = PSVECMag(&sp1C); + if (var_f30 < var_f29) { + var_f30 = var_f29 - var_f30; + var_f30 *= (40.0f / var_f29); + var_r31 += var_f30; + } + } + } + *temp_r27 = ++var_r31; + } else { + var_r31 = *temp_r27; + } + var_r29 += var_r31; + if ((var_r28 == 0) && (var_r23 == 0)) { + var_r29 += var_r31 * 3; + var_f31 += 3.0f; + } + } + } + PSVECAdd(&sp28, &lbl_1_data_69C[var_r30], &sp28); + var_r22 += lbl_1_data_678[var_r30]; + var_r21 = &var_r21[lbl_1_data_72C[var_r30]]; + var_f31 *= 2.0f; + var_r29 *= 2.0f; + } + if (var_f31 > 1.0f) { + var_r29 /= var_f31; + } + if (var_r19 > var_r29) { + var_r18 = var_r30; + var_r19 = var_r29; + *arg2 = sp34; + } + sp58[var_r30] = var_r29; + } + if (var_r18 != 0) { + return 1; + } + return 0; +} -// sp8 = arg0; -// spC = arg1; -// var_r20 = arg2; -// memset(lbl_1_bss_C, 0, 0x288); -// temp_r3 = arg1->x; -// sp40 = temp_r3; -// sp44 = arg1->y; -// temp_r0 = arg1->z; -// sp48 = temp_r0; -// temp_r3_2 = 0.028235294f * (sp40 - -850.0f); -// sp10 = temp_r3_2; -// sp14 = 0.028235294f * (sp48 - -850.0f); -// var_r17 = temp_r3_2 + (sp14 * 0x30); -// var_r17 += lbl_1_bss_DBC->data; -// sp44 = 0.0f; -// var_r20->x = temp_r3; -// var_r20->y = sp44; -// var_r20->z = temp_r0; -// var_r25 = lbl_1_bss_DC4[sp8]->data; -// var_f28 = var_r25->unk_3C; -// var_r19 = 0x2710; -// var_r18 = 0; -// for (var_r30 = 0; var_r30 < 9; var_r30++) { -// VECAdd(&sp40, &lbl_1_data_60C[var_r30], &sp34); -// sp18 = var_r17 + lbl_1_data_5E8[var_r30]; -// var_r21 = &lbl_1_bss_C[lbl_1_data_708[var_r30]] + 0x156; -// var_f31 = 0.0f; -// var_r29 = 0; -// var_r22 = sp18; -// sp28 = sp34; -// sp2C = sp34.y; -// sp30 = sp34.z; -// for (var_r23 = 0; var_r23 < 3; var_r23++) { -// for (var_r28 = 0; var_r28 < 9; var_r28++) { -// var_r24 = var_r22 + lbl_1_data_5E8[var_r28]; -// VECAdd(&sp28, &lbl_1_data_60C[var_r28], &sp4C); -// if ((lbl_1_bss_DBC->data <= var_r24) && ((lbl_1_bss_DBC->data + 0x900) > var_r24)) { -// var_f27 = sp4C; -// var_f25 = fabs(var_f27); -// var_f24 = var_f25; -// if (var_f24 < 850.0) { -// var_f26 = sp4C.z; -// var_f23 = fabs(var_f26); -// var_f22 = var_f23; -// if (var_f22 < 850.0) { -// var_f31 += 1.0f; -// var_r27 = &var_r21[lbl_1_data_708[var_r28]]; -// if (*var_r27 == 0) { -// var_r31 = fn_1_A8FC(&sp4C, var_f28); -// var_r31 += *var_r24; -// var_f29 = 0.0f; -// if (var_r31 < 0x3C) { -// var_f29 = 0.016666668f * (0x3C - var_r31); -// } -// var_f29 = 80.0f + (100.0f * (2.5f * var_f29)); -// for (var_r26 = 0; var_r26 < 4; var_r26++) { -// if (var_r26 != sp8) { -// var_r25 = lbl_1_bss_DC4[var_r26]->data; -// VECSubtract(&sp4C, var_r25 + 0x6C, &sp1C); -// sp1C.y = 0.0f; -// var_f30 = VECMag(&sp1C); -// if (var_f30 < var_f29) { -// var_f30 = var_f29 - var_f30; -// var_f30 *= 40.0f / var_f29; -// var_r31 = var_r31 + var_f30; -// } -// } -// } -// var_r31++; -// *var_r27 = var_r31; -// } -// else { -// var_r31 = *var_r27; -// } -// var_r29 += var_r31; -// if ((var_r28 == 0) && (var_r23 == 0)) { -// var_r29 += var_r31 * 3; -// var_f31 += 3.0f; -// } -// } -// } -// } -// } -// VECAdd(&sp28, &lbl_1_data_69C[var_r30], &sp28); -// var_r22 += lbl_1_data_678[var_r30]; -// var_r21 = &var_r21[lbl_1_data_72C[var_r30]]; -// var_f31 *= 2.0f; -// var_r29 = var_r29 * 2.0f; -// } -// if (var_f31 > 1.0f) { -// var_r29 = var_r29 / var_f31; -// } -// if (var_r19 > var_r29) { -// var_r18 = var_r30; -// var_r19 = var_r29; -// var_r20->x = sp34; -// var_r20->y = sp34.y; -// var_r20->z = sp34.z; -// } -// (&sp58[0])[var_r30] = var_r29; -// } -// if (var_r18 != 0) { -// return 1; -// } -// return 0; -// } - -// float fn_1_B440(Vec *arg0, Vec *arg1, Vec *arg2) -// { -// Vec sp10; -// Vec *spC; -// Vec *sp8; -// Vec *var_r31; -// float var_f30; -// float var_f31; - -// sp8 = arg0; -// spC = arg1; -// var_r31 = arg2; -// VECSubtract(spC, sp8, &sp10); -// var_f31 = VECDotProduct(&sp10, var_r31); -// var_f30 = -VECSquareMag(var_r31); -// if (var_f30 != 0.0f) { -// var_f31 /= var_f30; -// } -// return var_f31; -// } +f32 fn_1_B440(Vec* arg0, Vec* arg1, Vec* arg2) { + Vec sp10; + f32 temp_f30; + f32 var_f31; + + PSVECSubtract(arg1, arg0, &sp10); + var_f31 = PSVECDotProduct(&sp10, arg2); + temp_f30 = -PSVECSquareMag(arg2); + if (temp_f30 != 0.0f) { + var_f31 /= temp_f30; + } + return var_f31; +} From 99e5615150d85de1af2c94e9858211fa92bc9cf2 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sun, 29 Dec 2024 19:07:19 -0500 Subject: [PATCH 082/178] match m418Dll --- .vscode/settings.json | 11 +- config/GMPE01_00/rels/m418Dll/symbols.txt | 256 +++++++++++----------- config/GMPE01_00/rels/m438Dll/symbols.txt | 2 +- configure.py | 2 +- include/REL/m418Dll.h | 27 ++- src/REL/m418Dll/main.c | 8 +- src/REL/m418Dll/sequence.c | 252 +++++++++++++++++++++ 7 files changed, 412 insertions(+), 146 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index f4d558fa..5343bec3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -17,6 +17,7 @@ "*.s": "plaintext", "*.json": "jsonc", "*.c": "c", + "*.asm": "masm", "*.inc": "c", ".clangd": "yaml", "m443dll.h": "c", @@ -25,7 +26,15 @@ "m438dll.h": "c", "audio.h": "c", "musyx.h": "c", - "math.h": "c" + "math.h": "c", + "m418dll.h": "c", + "ext_math.h": "c", + "mtx.h": "c", + "types.h": "c", + "corecrt_math.h": "c", + "corecrt.h": "c", + "vcruntime.h": "c", + "hsfmotion.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/config/GMPE01_00/rels/m418Dll/symbols.txt b/config/GMPE01_00/rels/m418Dll/symbols.txt index f9b964c5..ad0f568b 100644 --- a/config/GMPE01_00/rels/m418Dll/symbols.txt +++ b/config/GMPE01_00/rels/m418Dll/symbols.txt @@ -128,134 +128,134 @@ fn_1_D714 = .text:0x0000D714; // type:function size:0x4FC fn_1_DC10 = .text:0x0000DC10; // type:function size:0x6C8 _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:0xC data:4byte -lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0xC data:4byte -lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC data:4byte -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0xC data:4byte -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:4byte -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x10 data:4byte -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x10 data:4byte -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x10 data:4byte -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 data:4byte -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -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_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC data:4byte -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0xC data:4byte -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0xC data:4byte -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC data:4byte -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0xC data:4byte -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0xC data:4byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0xC data:4byte -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0xC data:4byte -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC data:4byte -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0xC data:4byte -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0xC data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double +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:0xC scope:local data:4byte +lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0xC scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0xC scope:local data:4byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0xC scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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:0x10 scope:local data:4byte +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 scope:local data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 scope:local data:double +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 scope:local data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte lbl_1_data_8 = .data:0x00000008; // type:object size:0x4 data:4byte lbl_1_data_C = .data:0x0000000C; // type:object size:0x12 scope:local data:string diff --git a/config/GMPE01_00/rels/m438Dll/symbols.txt b/config/GMPE01_00/rels/m438Dll/symbols.txt index e1febc85..94448680 100644 --- a/config/GMPE01_00/rels/m438Dll/symbols.txt +++ b/config/GMPE01_00/rels/m438Dll/symbols.txt @@ -434,7 +434,7 @@ lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x9 data:string lbl_1_data_8D1 = .data:0x000008D1; // type:object size:0x7 data:string lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x60 lbl_1_data_938 = .data:0x00000938; // type:object size:0xB data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x288 diff --git a/configure.py b/configure.py index 83619991..ee154540 100644 --- a/configure.py +++ b/configure.py @@ -1001,7 +1001,7 @@ config.libs = [ "m418Dll", # Hide and Go BOOM! objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m418Dll/main.c"), - Object(NonMatching, "REL/m418Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m418Dll/sequence.c"), }, ), Rel( diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h index cd283bde..f21c4256 100644 --- a/include/REL/m418Dll.h +++ b/include/REL/m418Dll.h @@ -3,6 +3,10 @@ #include "dolphin.h" +#include "ext_math.h" +#include "game/hsfmotion.h" +#include "game/object.h" + typedef void (*M418DllFunc)(void); typedef s32 (*M418DllRetFunc)(void); typedef void (*M418DllInFunc)(s32); @@ -11,33 +15,36 @@ typedef s32 (*M418DllInRetFunc)(s32); typedef struct M418DllUnkStruct { M418DllFunc unk0; Vec center; - char unk10[0xC]; + Vec unk10; // sequence center Vec rot; - char unk28[0xC]; + Vec unk28; // sequence rot f32 zoom; - char unk38[0x4]; + f32 unk38; // sequence zoom f32 unk3C[3]; f32 unk48; } M418DllUnkStruct; // sizeof 0x4C -typedef struct M418DllUnkStruct7 { - char unk[0x10]; - M418DllFunc unk10; - M418DllRetFunc unk14; -} M418DllUnkStruct7; // sizeof 0x18 - typedef struct M418DllUnkStruct8 { M418DllInFunc unk0; M418DllInRetFunc unk4; s32 unk8; } M418DllUnkStruct8; // sizeof 0x24 +typedef struct M418DllUnkStruct7 { + s32 unk0; + M418DllUnkStruct8* unk4; + s32 unk8; + s32 unkC; + M418DllFunc unk10; + M418DllRetFunc unk14; +} M418DllUnkStruct7; // sizeof 0x18 + f32 fn_1_A920(f32, f32, f32); f32 fn_1_A940(f32, f32, f32, f32); f32 fn_1_AA30(f32, f32, f32, f32); void fn_1_ABC4(omObjData*, s32, s32, s32, s32); void fn_1_AD14(omObjData*, s32, s32, s32, s32); -void fn_1_AEDC(M418DllUnkStruct7*, M418DllUnkStruct8**); +void fn_1_AEDC(M418DllUnkStruct7*, M418DllUnkStruct8*); s32 fn_1_AF38(M418DllUnkStruct7*); s32 fn_1_B034(M418DllUnkStruct7*, s32); s32 fn_1_B0C8(M418DllUnkStruct7*, s32); diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index 4618d902..c2794f39 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -2,9 +2,7 @@ #include "ext_math.h" #include "game/chrman.h" #include "game/hsfman.h" -#include "game/hsfmotion.h" #include "game/minigame_seq.h" -#include "game/object.h" #include "game/objsub.h" #include "game/pad.h" #include "game/wipe.h" @@ -1377,7 +1375,7 @@ M418DllUnkStruct8 lbl_1_data_294[3] = { }; void fn_1_5D28(void) { - fn_1_AEDC(&lbl_1_bss_50, (M418DllUnkStruct8**)&lbl_1_data_294); + fn_1_AEDC(&lbl_1_bss_50, &lbl_1_data_294[0]); } s32 fn_1_5D58(void) { @@ -2155,7 +2153,7 @@ M418DllUnkStruct8 lbl_1_data_348[11] = { }; void fn_1_8480(void) { - fn_1_AEDC(&lbl_1_bss_38, (M418DllUnkStruct8**)&lbl_1_data_348); + fn_1_AEDC(&lbl_1_bss_38, &lbl_1_data_348[0]); } s32 fn_1_84B0(void) { @@ -2527,7 +2525,7 @@ M418DllUnkStruct8 lbl_1_data_444[8] = { }; void fn_1_9334(void) { - fn_1_AEDC(&lbl_1_bss_20, (M418DllUnkStruct8**)&lbl_1_data_444); + fn_1_AEDC(&lbl_1_bss_20, &lbl_1_data_444[0]); } s32 fn_1_9364(void) { diff --git a/src/REL/m418Dll/sequence.c b/src/REL/m418Dll/sequence.c index e69de29b..9ccd5985 100644 --- a/src/REL/m418Dll/sequence.c +++ b/src/REL/m418Dll/sequence.c @@ -0,0 +1,252 @@ +#include "REL/m418Dll.h" + +f32 fn_1_A920(f32 arg0, f32 arg1, f32 arg2) { + return (arg1 + (arg0 * (arg2 - 1.0f))) / arg2; +} + +f32 fn_1_A940(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { + if (arg2 >= arg3) { + return arg1; + } + return arg0 + ((arg2 / arg3) * (arg1 - arg0)); +} + +f32 fn_1_A968(f32 arg8, f32 arg9, f32 argA, f32 argB) { + if (argA >= argB) { + return arg9; + } + return arg8 + (arg9 - arg8) * sind(((90.0f / argB) * argA)); +} + +f32 fn_1_AA30(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { + if (arg2 >= arg3) { + return arg0; + } + return arg0 + (arg1 - arg0) * sind((180.0f / arg3) * arg2); +} + +f32 fn_1_AAEC(f32 arg8, f32 arg9, f32 argA, f32 argB) { + if (argA >= argB) { + return arg9; + } + return (arg8 + (arg9 - arg8) * (1.0 - cosd((90.0f / argB) * argA))); +} + +void fn_1_ABC4(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + if (arg4 == 1) { + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, 0x40000001); + return; + } + if (arg4 == 2) { + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, 0x40000002); + return; + } + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, 0); +} + +void fn_1_AD14(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + if (arg0->work[3] != arg0->motion[arg2]) { + arg0->work[3] = arg0->motion[arg2]; + if (arg4 == 1) { + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, 0x40000001); + return; + } + if (arg4 == 2) { + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, 0x40000002); + return; + } + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, 0); + } +} + +void fn_1_AE8C(M418DllUnkStruct7* arg0) { + arg0->unk8 = 0; + arg0->unkC = arg0->unk4[arg0->unk0].unk8; + arg0->unk10 = (M418DllFunc)arg0->unk4[arg0->unk0].unk0; + arg0->unk14 = (M418DllRetFunc)arg0->unk4[arg0->unk0].unk4; +} + +void fn_1_AEDC(M418DllUnkStruct7* arg0, M418DllUnkStruct8* arg1) { + arg0->unk0 = 0; + arg0->unk4 = arg1; + fn_1_AE8C(arg0); +} + +s32 fn_1_AF38(M418DllUnkStruct7* arg0) { + arg0->unk0++; + fn_1_AE8C(arg0); + if ((arg0->unk10 == NULL) && (arg0->unk14 == NULL)) { + return 1; + } + return 0; +} + +s32 fn_1_AFC0(M418DllUnkStruct7* arg0) { + arg0->unk0--; + if (arg0->unk0 < 0) { + return 1; + } + fn_1_AE8C(arg0); + return 0; +} + +s32 fn_1_B034(M418DllUnkStruct7* arg0, s32 arg1) { + arg0->unk0 = arg1; + if (arg0->unk0 < 0) { + return 1; + } + fn_1_AE8C(arg0); + if ((arg0->unk10 == NULL) && (arg0->unk14 == NULL)) { + return 1; + } + return 0; +} + +s32 fn_1_B0C8(M418DllUnkStruct7* arg0, s32 arg1) { + if (arg1 == 0) { + return arg0->unk8; + } + arg0->unk8 += arg1; + if (arg0->unk8 >= arg0->unkC) { + return 1; + } + return 0; +} + +void fn_1_B104(M418DllUnkStruct* arg0, Vec arg1, Vec arg2) { + f32 temp_f31; + f32 temp_f30; + f32 temp_f29; + f32 temp_f27; + + temp_f31 = arg1.x - arg2.x; + temp_f29 = arg1.y - arg2.y; + temp_f30 = arg1.z - arg2.z; + arg0->unk10.x = arg2.x; + arg0->unk10.y = arg2.y; + arg0->unk10.z = arg2.z; + arg0->unk38 = sqrtf((temp_f30 * temp_f30) + ((temp_f31 * temp_f31) + (temp_f29 * temp_f29))); + temp_f27 = atan2d(temp_f30, temp_f31); + arg0->unk28.x = -atan2d(temp_f29, (temp_f31 * cosd(-temp_f27)) + (temp_f30 * -sind(-temp_f27))); + arg0->unk28.y = -(temp_f27 - 90.0f); + arg0->unk28.z = 0.0f; +} + +void fn_1_B41C(M418DllUnkStruct* arg0) { + arg0->center.x = arg0->unk10.x; + arg0->center.y = arg0->unk10.y; + arg0->center.z = arg0->unk10.z; + arg0->rot.x = arg0->unk28.x; + arg0->rot.y = arg0->unk28.y; + arg0->rot.z = arg0->unk28.z; + arg0->zoom = arg0->unk38; +} + +void fn_1_B458(M418DllUnkStruct* arg0) { + arg0->unk48 = 0.0f; + arg0->unk10.x = arg0->center.x; + arg0->unk10.y = arg0->center.y; + arg0->unk10.z = arg0->center.z; + arg0->unk28.x = arg0->rot.x; + arg0->unk28.y = arg0->rot.y; + arg0->unk28.z = arg0->rot.z; + arg0->unk38 = arg0->zoom; +} + +void fn_1_B4A4(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg8) { + arg0->center.x = fn_1_A920(arg0->center.x, arg1->unk10.x, arg8); + arg0->center.y = fn_1_A920(arg0->center.y, arg1->unk10.y, arg8); + arg0->center.z = fn_1_A920(arg0->center.z, arg1->unk10.z, arg8); + arg0->rot.x = fn_1_A920(arg0->rot.x, arg1->unk28.x, arg8); + arg0->rot.y = fn_1_A920(arg0->rot.y, arg1->unk28.y, arg8); + arg0->rot.z = fn_1_A920(arg0->rot.z, arg1->unk28.z, arg8); + arg0->zoom = fn_1_A920(arg0->zoom, arg1->unk38, arg8); +} + +void fn_1_B710(M418DllUnkStruct* arg0, f32 arg1) { + arg0->center.x = fn_1_A920(arg0->center.x, arg0->unk10.x, arg1); + arg0->center.y = fn_1_A920(arg0->center.y, arg0->unk10.y, arg1); + arg0->center.z = fn_1_A920(arg0->center.z, arg0->unk10.z, arg1); + arg0->rot.x = fn_1_A920(arg0->rot.x, arg0->unk28.x, arg1); + arg0->rot.y = fn_1_A920(arg0->rot.y, arg0->unk28.y, arg1); + arg0->rot.z = fn_1_A920(arg0->rot.z, arg0->unk28.z, arg1); + arg0->zoom = fn_1_A920(arg0->zoom, arg0->unk38, arg1); +} + +void fn_1_B97C(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg8, f32 arg9) { + arg1->unk10.x = fn_1_A940(arg0->unk10.x, arg1->center.x, arg8, arg9); + arg1->unk10.y = fn_1_A940(arg0->unk10.y, arg1->center.y, arg8, arg9); + arg1->unk10.z = fn_1_A940(arg0->unk10.z, arg1->center.z, arg8, arg9); + arg1->unk28.x = fn_1_A940(arg0->unk28.x, arg1->rot.x, arg8, arg9); + arg1->unk28.y = fn_1_A940(arg0->unk28.y, arg1->rot.y, arg8, arg9); + arg1->unk28.z = fn_1_A940(arg0->unk28.z, arg1->rot.z, arg8, arg9); + arg1->unk38 = fn_1_A940(arg0->unk38, arg1->zoom, arg8, arg9); +} + +void fn_1_BBF8(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg8, f32 arg9) { + fn_1_B97C(arg0, arg1, arg8, arg9); + arg0->center.x = arg1->unk10.x; + arg0->center.y = arg1->unk10.y; + arg0->center.z = arg1->unk10.z; + arg0->rot.x = arg1->unk28.x; + arg0->rot.y = arg1->unk28.y; + arg0->rot.z = arg1->unk28.z; + arg0->zoom = arg1->unk38; +} + +void fn_1_BEAC(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg2, f32 arg3, f32 arg4) { + fn_1_B97C(arg0, arg1, arg2, arg3); + fn_1_B4A4(arg0, arg1, arg4); +} + +void fn_1_C318(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg8, f32 arg9) { + arg1->unk10.x = fn_1_A968(arg0->unk10.x, arg1->center.x, arg8, arg9); + arg1->unk10.y = fn_1_A968(arg0->unk10.y, arg1->center.y, arg8, arg9); + arg1->unk10.z = fn_1_A968(arg0->unk10.z, arg1->center.z, arg8, arg9); + arg1->unk28.x = fn_1_A968(arg0->unk28.x, arg1->rot.x, arg8, arg9); + arg1->unk28.y = fn_1_A968(arg0->unk28.y, arg1->rot.y, arg8, arg9); + arg1->unk28.z = fn_1_A968(arg0->unk28.z, arg1->rot.z, arg8, arg9); + arg1->unk38 = fn_1_A968(arg0->unk38, arg1->zoom, arg8, arg9); +} + +void fn_1_C76C(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg8, f32 arg9) { + fn_1_C318(arg0, arg1, arg8, arg9); + arg0->center.x = arg1->unk10.x; + arg0->center.y = arg1->unk10.y; + arg0->center.z = arg1->unk10.z; + arg0->rot.x = arg1->unk28.x; + arg0->rot.y = arg1->unk28.y; + arg0->rot.z = arg1->unk28.z; + arg0->zoom = arg1->unk38; +} + +void fn_1_CBF8(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg2, f32 arg3, f32 arg4) { + fn_1_C318(arg0, arg1, arg2, arg3); + fn_1_B4A4(arg0, arg1, arg4); +} + +void fn_1_D250(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg8, f32 arg9) { + arg1->unk10.x = fn_1_AAEC(arg0->unk10.x, arg1->center.x, arg8, arg9); + arg1->unk10.y = fn_1_AAEC(arg0->unk10.y, arg1->center.y, arg8, arg9); + arg1->unk10.z = fn_1_AAEC(arg0->unk10.z, arg1->center.z, arg8, arg9); + arg1->unk28.x = fn_1_AAEC(arg0->unk28.x, arg1->rot.x, arg8, arg9); + arg1->unk28.y = fn_1_AAEC(arg0->unk28.y, arg1->rot.y, arg8, arg9); + arg1->unk28.z = fn_1_AAEC(arg0->unk28.z, arg1->rot.z, arg8, arg9); + arg1->unk38 = fn_1_AAEC(arg0->unk38, arg1->zoom, arg8, arg9); +} + +void fn_1_D714(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg8, f32 arg9) { + fn_1_D250(arg0, arg1, arg8, arg9); + arg0->center.x = arg1->unk10.x; + arg0->center.y = arg1->unk10.y; + arg0->center.z = arg1->unk10.z; + arg0->rot.x = arg1->unk28.x; + arg0->rot.y = arg1->unk28.y; + arg0->rot.z = arg1->unk28.z; + arg0->zoom = arg1->unk38; +} + +void fn_1_DC10(M418DllUnkStruct* arg0, M418DllUnkStruct* arg1, f32 arg2, f32 arg3, f32 arg4) { + fn_1_D250(arg0, arg1, arg2, arg3); + fn_1_B4A4(arg0, arg1, arg4); +} From 40b1a42e081fec4bed2bfbf363d5e27fe4698210 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 30 Dec 2024 02:53:32 +0100 Subject: [PATCH 083/178] Import THPAudio.c from MKDD --- configure.py | 2 +- src/dolphin/thp/THPAudio.c | 218 ++++++++++++++++++++----------------- 2 files changed, 118 insertions(+), 102 deletions(-) diff --git a/configure.py b/configure.py index ee154540..1dd001d7 100644 --- a/configure.py +++ b/configure.py @@ -640,7 +640,7 @@ config.libs = [ "host": False, "objects": [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/thp/THPDec.c"), - Object(NonMatching, "dolphin/thp/THPAudio.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/thp/THPAudio.c"), ], }, { diff --git a/src/dolphin/thp/THPAudio.c b/src/dolphin/thp/THPAudio.c index 11a29fe4..e782abcb 100644 --- a/src/dolphin/thp/THPAudio.c +++ b/src/dolphin/thp/THPAudio.c @@ -2,131 +2,147 @@ u32 THPAudioDecode(s16 *audioBuffer, u8 *audioFrame, s32 flag) { - // THPAudioRecordHeader *header; - // THPAudioDecodeInfo decInfo; - // u8 *left, *right; - // s16 *decLeftPtr, *decRightPtr; - // s16 yn1, yn2; - // s32 i; - // s32 step; - // s32 sample; - // s64 yn; + THPAudioRecordHeader *header; + THPAudioDecodeInfo decInfo; + u8 *left, *right; + s16 *decLeftPtr, *decRightPtr; + s16 yn1, yn2; + s32 i; + s32 step; + s32 sample; + s64 yn; - // if (audioBuffer == NULL || audioFrame == NULL) { - // return 0; - // } + if (audioBuffer == NULL || audioFrame == NULL) { + return 0; + } - // header = (THPAudioRecordHeader *)audioFrame; - // left = audioFrame + sizeof(THPAudioRecordHeader); - // right = left + header->offsetNextChannel; + header = (THPAudioRecordHeader *)audioFrame; + left = audioFrame + sizeof(THPAudioRecordHeader); + right = left + header->offsetNextChannel; - // if (flag == 1) { - // decRightPtr = audioBuffer; - // decLeftPtr = audioBuffer + header->sampleSize; - // step = 1; - // } - // else { - // decRightPtr = audioBuffer; - // decLeftPtr = audioBuffer + 1; - // step = 2; - // } + if (flag == 1) { + decRightPtr = audioBuffer; + decLeftPtr = audioBuffer + header->sampleSize; + step = 1; + } + else { + decRightPtr = audioBuffer; + decLeftPtr = audioBuffer + 1; + step = 2; + } - // if (header->offsetNextChannel == 0) { - // __THPAudioInitialize(&decInfo, left); + if (header->offsetNextChannel == 0) { + __THPAudioInitialize(&decInfo, left); - // yn1 = header->lYn1; - // yn2 = header->lYn2; + yn1 = header->lYn1; + yn2 = header->lYn2; - // for (i = 0; i < header->sampleSize; i++) { - // sample = __THPAudioGetNewSample(&decInfo); - // yn = header->lCoef[decInfo.predictor][1] * yn2; - // yn += header->lCoef[decInfo.predictor][0] * yn1; - // yn += (sample << decInfo.scale) << 11; - // yn <<= 5; + for (i = 0; i < header->sampleSize; i++) { + sample = __THPAudioGetNewSample(&decInfo); + yn = header->lCoef[decInfo.predictor][1] * yn2; + yn += header->lCoef[decInfo.predictor][0] * yn1; + yn += (sample << decInfo.scale) << 11; + yn <<= 5; - // if (sample > 0x8000) { - // yn += 0x10000; - // } - // else if ((sample == 0x8000) && ((yn & 0x10000) != 0)) { - // yn += 0x10000; - // } + if ((u16)(yn & 0xffff) > 0x8000) { + yn += 0x10000; + } + else if ((u16)(yn & 0xffff) == 0x8000) { + if ((yn & 0x10000)) + yn += 0x10000; + } - // yn += 0x8000; + if (yn > 2147483647LL) { + yn = 2147483647LL; + } - // if (yn > 2147483647LL) { - // yn = 2147483647LL; - // } + if (yn < -2147483648LL) { + yn = -2147483648LL; + } - // if (yn < -2147483648LL) { - // yn = -2147483648LL; - // } + *decLeftPtr = (s16)(yn >> 16); + decLeftPtr += step; + *decRightPtr = (s16)(yn >> 16); + decRightPtr += step; + yn2 = yn1; + yn1 = (s16)(yn >> 16); + } + } + else { + __THPAudioInitialize(&decInfo, left); - // *decLeftPtr = (s16)(yn >> 16); - // decLeftPtr += step; - // *decRightPtr = (s16)(yn >> 16); - // decRightPtr += step; - // yn2 = yn1; - // yn1 = (s16)(yn >> 16); - // } - // } - // else { - // __THPAudioInitialize(&decInfo, left); + yn1 = header->lYn1; + yn2 = header->lYn2; - // yn1 = header->lYn1; - // yn2 = header->lYn2; + for (i = 0; i < header->sampleSize; i++) { + sample = __THPAudioGetNewSample(&decInfo); + yn = header->lCoef[decInfo.predictor][1] * yn2; + yn += header->lCoef[decInfo.predictor][0] * yn1; + yn += (sample << decInfo.scale) << 11; + yn <<= 5; - // for (i = 0; i < header->sampleSize; i++) { - // sample = __THPAudioGetNewSample(&decInfo); - // yn = header->lCoef[decInfo.predictor][1] * yn2; - // yn += header->lCoef[decInfo.predictor][0] * yn1; - // yn += (sample << decInfo.scale) << 11; - // yn <<= 5; - // yn += 0x8000; + if ((u16)(yn & 0xffff) > 0x8000) { + yn += 0x10000; + } + else { + if ((u16)(yn & 0xffff) == 0x8000) { + if ((yn & 0x10000)) + yn += 0x10000; + } + } - // if (yn > 2147483647LL) { - // yn = 2147483647LL; - // } + if (yn > 2147483647LL) { + yn = 2147483647LL; + } - // if (yn < -2147483648LL) { - // yn = -2147483648LL; - // } + if (yn < -2147483648LL) { + yn = -2147483648LL; + } - // *decLeftPtr = (s16)(yn >> 16); - // decLeftPtr += step; - // yn2 = yn1; - // yn1 = (s16)(yn >> 16); - // } + *decLeftPtr = (s16)(yn >> 16); + decLeftPtr += step; + yn2 = yn1; + yn1 = (s16)(yn >> 16); + } - // __THPAudioInitialize(&decInfo, right); + __THPAudioInitialize(&decInfo, right); - // yn1 = header->rYn1; - // yn2 = header->rYn2; + yn1 = header->rYn1; + yn2 = header->rYn2; - // for (i = 0; i < header->sampleSize; i++) { - // sample = __THPAudioGetNewSample(&decInfo); - // yn = header->rCoef[decInfo.predictor][1] * yn2; - // yn += header->rCoef[decInfo.predictor][0] * yn1; - // yn += (sample << decInfo.scale) << 11; - // yn <<= 5; + for (i = 0; i < header->sampleSize; i++) { + sample = __THPAudioGetNewSample(&decInfo); + yn = header->rCoef[decInfo.predictor][1] * yn2; + yn += header->rCoef[decInfo.predictor][0] * yn1; + yn += (sample << decInfo.scale) << 11; + yn <<= 5; - // yn += 0x8000; + if ((u16)(yn & 0xffff) > 0x8000) { + yn += 0x10000; + } + else { + if ((u16)(yn & 0xffff) == 0x8000) { + if ((yn & 0x10000)) + yn += 0x10000; + } + } - // if (yn > 2147483647LL) { - // yn = 2147483647LL; - // } + if (yn > 2147483647LL) { + yn = 2147483647LL; + } - // if (yn < -2147483648LL) { - // yn = -2147483648LL; - // } + if (yn < -2147483648LL) { + yn = -2147483648LL; + } - // *decRightPtr = (s16)(yn >> 16); - // decRightPtr += step; - // yn2 = yn1; - // yn1 = (s16)(yn >> 16); - // } - // } + *decRightPtr = (s16)(yn >> 16); + decRightPtr += step; + yn2 = yn1; + yn1 = (s16)(yn >> 16); + } + } - // return header->sampleSize; + return header->sampleSize; } static s32 __THPAudioGetNewSample(THPAudioDecodeInfo *info) From e8a2a533153c8dd900d2b2fba5ad95cc4dde4ee5 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sun, 29 Dec 2024 21:00:14 -0500 Subject: [PATCH 084/178] start m424 --- include/REL/m424Dll.h | 1 + src/REL/m424Dll/main.c | 61 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 include/REL/m424Dll.h create mode 100644 src/REL/m424Dll/main.c diff --git a/include/REL/m424Dll.h b/include/REL/m424Dll.h new file mode 100644 index 00000000..2739a911 --- /dev/null +++ b/include/REL/m424Dll.h @@ -0,0 +1 @@ +#include "dolphin.h" diff --git a/src/REL/m424Dll/main.c b/src/REL/m424Dll/main.c new file mode 100644 index 00000000..3402c8e2 --- /dev/null +++ b/src/REL/m424Dll/main.c @@ -0,0 +1,61 @@ +#include "REL/m424Dll.h" + +#include "game/hsfman.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/audio.h" + +// BSS +Process* lbl_1_bss_4C; +s32 lbl_1_bss_48; +s32 lbl_1_bss_44; +s32 lbl_1_bss_40; +s32 lbl_1_bss_3C; +s32 lbl_1_bss_34; +s32 lbl_1_bss_2C; +s16 lbl_1_bss_24[4]; +s16 lbl_1_bss_1C[4]; +omObjData* lbl_1_bss_18; + +// data +Vec lbl_1_data_54 = { 1000.0f, 2000.0f, 1000.0f }; +Vec lbl_1_data_60 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_6C = { 0.0f, 0.0f, -450.0f }; + +// PROTO +void fn_1_264(omObjData* object); +void fn_1_FF0(void); + +/// FUNCTIONS /// + +void ObjectSetup(void) { + s32 var_r31; + Process* var_r30; + CameraData* var_r29; + + OSReport("******* M424ObjectSetup *********"); + var_r30 = omInitObjMan(0x32, 0x2000); + lbl_1_bss_4C = var_r30; + omGameSysInit(var_r30); + fn_1_FF0(); + var_r29 = &Hu3DCamera[0]; + var_r29->fov = -1.0f; + Hu3DLightAllKill(); + Hu3DLighInit(); + HuAudSndGrpSet(0x31); + lbl_1_bss_18 = omAddObjEx(var_r30, 0xFF, 2, 0, -1, fn_1_264); + lbl_1_bss_48 = lbl_1_bss_44 = -1; + lbl_1_bss_40 = 0; + lbl_1_bss_3C = 0; + lbl_1_bss_34 = 0; + lbl_1_bss_2C = -1; + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_24[var_r31] = -1; + lbl_1_bss_1C[var_r31] = -1; + } + Hu3DShadowCreate(30.0f, 1000.0f, 250000.0f); + Hu3DShadowTPLvlSet(0.5f); + Hu3DShadowPosSet(&lbl_1_data_54, &lbl_1_data_60, &lbl_1_data_6C); + Hu3DBGColorSet(0xFFU, 0xFFU, 0xFFU); +} From 129e419efefca984c2a763b597c618e6ae86f9df Mon Sep 17 00:00:00 2001 From: mrshigure Date: Mon, 30 Dec 2024 12:58:33 -0800 Subject: [PATCH 085/178] US: matched m423Dll --- config/GMPE01_00/rels/m423Dll/symbols.txt | 390 +- configure.py | 2 +- include/game/gamework_data.h | 99 +- src/REL/m409Dll/cursor.c | 12 +- src/REL/m409Dll/main.c | 8 +- src/REL/m415Dll/map.c | 14 +- src/REL/m423Dll/main.c | 5648 +++++++++++++++++++++ src/REL/m426Dll/main.c | 2 +- src/REL/m440Dll/main.c | 12 +- src/REL/m448Dll/main.c | 4 +- src/REL/modeltestDll/main.c | 8 +- 11 files changed, 5926 insertions(+), 273 deletions(-) create mode 100755 src/REL/m423Dll/main.c diff --git a/config/GMPE01_00/rels/m423Dll/symbols.txt b/config/GMPE01_00/rels/m423Dll/symbols.txt index bd1d1367..ddeb5a66 100644 --- a/config/GMPE01_00/rels/m423Dll/symbols.txt +++ b/config/GMPE01_00/rels/m423Dll/symbols.txt @@ -103,234 +103,234 @@ fn_1_1367C = .text:0x0001367C; // type:function size:0x148 fn_1_137C4 = .text:0x000137C4; // type:function size:0x78C _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_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // 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:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // 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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x1 data:byte -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double +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_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +lbl_1_rodata_48 = .rodata:0x00000048; // 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:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 scope:local data:float +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 scope:local data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 scope:local data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // 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:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x38 data:float -lbl_1_data_38 = .data:0x00000038; // type:object size:0x118 +lbl_1_data_38 = .data:0x00000038; // type:object size:0x118 data:float lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 data:float lbl_1_data_180 = .data:0x00000180; // type:object size:0x30 data:float -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 -lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xC -lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0xC -lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xC -lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x24 -lbl_1_data_21C = .data:0x0000021C; // type:object size:0xC -lbl_1_data_228 = .data:0x00000228; // type:object size:0xC +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x24 data:float +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xC data:float +lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0xC data:float +lbl_1_data_1EC = .data:0x000001EC; // type:object size:0xC data:float +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x23 scope:local data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0xC data:float +lbl_1_data_228 = .data:0x00000228; // type:object size:0xC data:float lbl_1_data_234 = .data:0x00000234; // type:object size:0x4 lbl_1_data_238 = .data:0x00000238; // type:object size:0x18 lbl_1_data_250 = .data:0x00000250; // type:object size:0x18 jumptable_1_data_268 = .data:0x00000268; // type:object size:0x30 scope:local -lbl_1_data_298 = .data:0x00000298; // type:object size:0x1 data:byte -lbl_1_data_29C = .data:0x0000029C; // type:object size:0x30 -lbl_1_data_2CC = .data:0x000002CC; // type:object size:0x20 -lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x20 -lbl_1_data_30C = .data:0x0000030C; // type:object size:0x4 -lbl_1_data_310 = .data:0x00000310; // type:object size:0x1 data:byte +lbl_1_data_298 = .data:0x00000298; // type:object size:0x4 data:byte +lbl_1_data_29C = .data:0x0000029C; // type:object size:0x30 data:float +lbl_1_data_2CC = .data:0x000002CC; // type:object size:0x20 data:float +lbl_1_data_2EC = .data:0x000002EC; // type:object size:0x20 data:float +lbl_1_data_30C = .data:0x0000030C; // type:object size:0x4 data:byte +lbl_1_data_310 = .data:0x00000310; // type:object size:0x4 data:byte lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 data:4byte -lbl_1_data_334 = .data:0x00000334; // type:object size:0x30 -lbl_1_data_364 = .data:0x00000364; // type:object size:0x24 +lbl_1_data_334 = .data:0x00000334; // type:object size:0x30 data:float +lbl_1_data_364 = .data:0x00000364; // type:object size:0x24 data:float lbl_1_data_388 = .data:0x00000388; // type:object size:0x4 data:byte -lbl_1_data_38C = .data:0x0000038C; // type:object size:0x1F data:string +lbl_1_data_38C = .data:0x0000038C; // type:object size:0x1F scope:local data:string lbl_1_data_3AB = .data:0x000003AB; // type:object size:0x4 data:byte lbl_1_data_3AF = .data:0x000003AF; // type:object size:0x4 data:byte lbl_1_data_3B3 = .data:0x000003B3; // type:object size:0x4 data:byte -lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0xF0 +lbl_1_data_3B8 = .data:0x000003B8; // type:object size:0xF0 data:float lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0x54 lbl_1_data_4FC = .data:0x000004FC; // type:object size:0xC lbl_1_data_508 = .data:0x00000508; // type:object size:0x18 -lbl_1_data_520 = .data:0x00000520; // type:object size:0x6 +lbl_1_data_520 = .data:0x00000520; // type:object size:0x6 data:2byte lbl_1_data_526 = .data:0x00000526; // type:object size:0x6 lbl_1_data_52C = .data:0x0000052C; // type:object size:0x8 lbl_1_data_534 = .data:0x00000534; // type:object size:0x40 lbl_1_data_574 = .data:0x00000574; // type:object size:0xC lbl_1_data_580 = .data:0x00000580; // type:object size:0x58 lbl_1_data_5D8 = .data:0x000005D8; // type:object size:0x10 -lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0xC data:4byte -lbl_1_data_5F4 = .data:0x000005F4; // type:object size:0x1 data:byte -lbl_1_data_5F8 = .data:0x000005F8; // type:object size:0x1 data:byte +lbl_1_data_5E8 = .data:0x000005E8; // type:object size:0xC data:float +lbl_1_data_5F4 = .data:0x000005F4; // type:object size:0x4 data:byte +lbl_1_data_5F8 = .data:0x000005F8; // type:object size:0x4 data:byte jumptable_1_data_5FC = .data:0x000005FC; // type:object size:0x34 scope:local -lbl_1_data_630 = .data:0x00000630; // type:object size:0x1 data:byte +lbl_1_data_630 = .data:0x00000630; // type:object size:0x4 data:byte jumptable_1_data_634 = .data:0x00000634; // type:object size:0x34 scope:local lbl_1_data_668 = .data:0x00000668; // type:object size:0x10 -lbl_1_data_678 = .data:0x00000678; // type:object size:0x10 +lbl_1_data_678 = .data:0x00000678; // type:object size:0x10 data:float lbl_1_data_688 = .data:0x00000688; // type:object size:0x20 lbl_1_data_6A8 = .data:0x000006A8; // type:object size:0x20 data:4byte lbl_1_data_6C8 = .data:0x000006C8; // type:object size:0x10 -lbl_1_data_6D8 = .data:0x000006D8; // type:object size:0x20 +lbl_1_data_6D8 = .data:0x000006D8; // type:object size:0x20 data:float lbl_1_data_6F8 = .data:0x000006F8; // type:object size:0x20 lbl_1_data_718 = .data:0x00000718; // type:object size:0x20 lbl_1_data_738 = .data:0x00000738; // type:object size:0x20 -lbl_1_data_758 = .data:0x00000758; // type:object size:0x1 data:byte -lbl_1_data_75C = .data:0x0000075C; // type:object size:0x48 +lbl_1_data_758 = .data:0x00000758; // type:object size:0x4 data:byte +lbl_1_data_75C = .data:0x0000075C; // type:object size:0x48 data:2byte jumptable_1_data_7A4 = .data:0x000007A4; // type:object size:0x20 scope:local lbl_1_data_7C4 = .data:0x000007C4; // type:object size:0x18 jumptable_1_data_7DC = .data:0x000007DC; // type:object size:0x20 scope:local -lbl_1_data_7FC = .data:0x000007FC; // type:object size:0x20 +lbl_1_data_7FC = .data:0x000007FC; // type:object size:0x20 data:byte lbl_1_data_81C = .data:0x0000081C; // type:object size:0x20 -lbl_1_data_83C = .data:0x0000083C; // type:object size:0x8 -lbl_1_data_844 = .data:0x00000844; // type:object size:0x60 -lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x20 -lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0x30 -lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x20 +lbl_1_data_83C = .data:0x0000083C; // type:object size:0x8 data:2byte +lbl_1_data_844 = .data:0x00000844; // type:object size:0x60 data:2byte +lbl_1_data_8A4 = .data:0x000008A4; // type:object size:0x20 data:float +lbl_1_data_8C4 = .data:0x000008C4; // type:object size:0x30 data:float +lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x20 data:float lbl_1_data_914 = .data:0x00000914; // type:object size:0x6 data:byte lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x3C data:4byte @@ -359,7 +359,7 @@ lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x10 data:4byte lbl_1_bss_FC = .bss:0x000000FC; // type:object size:0x4 data:4byte lbl_1_bss_100 = .bss:0x00000100; // type:object size:0x4 data:4byte lbl_1_bss_104 = .bss:0x00000104; // type:object size:0x4 data:4byte -lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x8 data:4byte +lbl_1_bss_108 = .bss:0x00000108; // type:object size:0x4 data:4byte lbl_1_bss_110 = .bss:0x00000110; // type:object size:0x4 data:4byte lbl_1_bss_114 = .bss:0x00000114; // type:object size:0x4 data:4byte lbl_1_bss_118 = .bss:0x00000118; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 1dd001d7..08fc269a 100644 --- a/configure.py +++ b/configure.py @@ -1037,7 +1037,7 @@ config.libs = [ Rel( "m423Dll", # GOOOOOOOAL!! objects={ - Object(NonMatching, "REL/m423Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m423Dll/main.c"), }, ), Rel( diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index 53500e51..08b3e075 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -110,11 +110,11 @@ typedef struct player_state { } PlayerState; //size of 0x30 typedef struct pause_backup_config { - u8 explain_mg : 1; - u8 show_com_mg : 1; - u8 mg_list : 2; - u8 mess_speed : 2; - u8 save_mode : 2; + u8 explain_mg : 1; + u8 show_com_mg : 1; + u8 mg_list : 2; + u8 mess_speed : 2; + u8 save_mode : 2; } PauseBackupConfig; typedef struct game_stat { @@ -152,6 +152,11 @@ extern PlayerState GWPlayer[4]; extern SystemState GWSystem; extern GameStat GWGameStat; +static inline s32 GWPlayerCfgGroupGet(s32 player) +{ + return GWPlayerCfg[player].group; +} + static inline s32 GWTeamGet(void) { return GWSystem.team; @@ -159,12 +164,12 @@ static inline s32 GWTeamGet(void) static inline s32 GWMGTypeGet(void) { - return GWSystem.mg_type; + return GWSystem.mg_type; } static inline void GWMGTypeSet(s32 type) { - GWSystem.mg_type = type; + GWSystem.mg_type = type; } static inline s32 GWPartyGet(void) @@ -190,9 +195,9 @@ static inline s32 GWRumbleGet(void) static inline void GWRumbleSet(s32 value) { GWGameStat.rumble = value; - if(value == 0) { - HuPadRumbleAllStop(); - } + if(value == 0) { + HuPadRumbleAllStop(); + } } static inline s32 GWBonusStarGet(void) @@ -245,39 +250,39 @@ static inline s32 GWMessSpeedGet(void) static inline void GWMessSpeedSet(s32 value) { #if VERSION_NTSC - GWSystem.mess_speed = value; - switch(value) { - case 0: - GWSystem.mess_delay = 16; - break; - - case 2: - GWSystem.mess_delay = 48; - break; - - default: - GWSystem.mess_delay = 32; - break; - } + GWSystem.mess_speed = value; + switch(value) { + case 0: + GWSystem.mess_delay = 16; + break; + + case 2: + GWSystem.mess_delay = 48; + break; + + default: + GWSystem.mess_delay = 32; + break; + } #else GWSystem.mess_speed = value; - switch(value) { - case 0: - GWSystem.mess_delay = 32; - break; - + switch(value) { + case 0: + GWSystem.mess_delay = 32; + break; + case 2: - GWSystem.mess_delay = 64; - break; + GWSystem.mess_delay = 64; + break; - case 1: - GWSystem.mess_delay = 48; - break; - - default: - GWSystem.mess_delay = 120; - break; - } + case 1: + GWSystem.mess_delay = 48; + break; + + default: + GWSystem.mess_delay = 120; + break; + } #endif } @@ -289,7 +294,7 @@ static inline void GWSaveModeSet(s32 value) static inline s32 GWSaveModeGet(void) { if (GWSystem.save_mode == 3) { - GWSaveModeSet(1); + GWSaveModeSet(1); } return GWSystem.save_mode; } @@ -326,29 +331,29 @@ static inline void GWLuckyValueSet(s32 value) static inline s16 GWPlayerCoinBattleGet(s32 player) { - return GWPlayer[player].coins_battle; + return GWPlayer[player].coins_battle; } static inline s16 GWPlayerCoinCollectGet(s32 player) { - return GWPlayer[player].coin_collect; + return GWPlayer[player].coin_collect; } static inline void GWPlayerCoinCollectSet(s32 player, s16 value) { - GWPlayer[player].coin_collect = value; + GWPlayer[player].coin_collect = value; } static inline s16 GWPlayerCoinWinGet(s32 player) { - return GWPlayer[player].coin_win; + return GWPlayer[player].coin_win; } static inline void GWPlayerCoinWinSet(s32 player, s16 value) { - if (_CheckFlag(FLAG_ID_MAKE(1, 12)) == 0) { - GWPlayer[player].coin_win = value; - } + if (_CheckFlag(FLAG_ID_MAKE(1, 12)) == 0) { + GWPlayer[player].coin_win = value; + } } #define GWPlayerCoinWinAdd(player, value) GWPlayerCoinWinSet((player), GWPlayerCoinWinGet((player))+(value)) diff --git a/src/REL/m409Dll/cursor.c b/src/REL/m409Dll/cursor.c index 021bc823..c007391c 100644 --- a/src/REL/m409Dll/cursor.c +++ b/src/REL/m409Dll/cursor.c @@ -206,19 +206,19 @@ void fn_1_C164(unkStruct8* arg0) { } GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, var_r31->unk40, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, var_r31->unk40, 12); GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetArray(GX_VA_CLR0, var_r31->unk44, 4); for (var_r26 = 0; var_r26 < var_r31->unk32; var_r26++) { GXSetVtxDesc(var_r26 + GX_VA_TEX0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, var_r26 + GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, var_r26 + GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); GXSetArray(var_r26 + GX_VA_TEX0, var_r31->unk54[var_r26].unk4, 8); } GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_TEX_S, GX_RGBA6, 0); - GXSetArray(GX_VA_NRM, var_r31->unk48, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, var_r31->unk48, 12); GXCallDisplayList(var_r31->unk3C, var_r31->unk38); } } diff --git a/src/REL/m409Dll/main.c b/src/REL/m409Dll/main.c index 5071127d..3e51e855 100644 --- a/src/REL/m409Dll/main.c +++ b/src/REL/m409Dll/main.c @@ -1376,13 +1376,13 @@ void fn_1_602C(ModelData *arg0, f32 (*arg1)[4]) } GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, temp_r30->unk1C, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r30->unk1C, 12); GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetArray(GX_VA_CLR0, temp_r30->unk24, 4); GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); GXSetArray(GX_VA_TEX0, temp_r30->unk20, 8); fn_1_40A4(arg1, sp128); PSMTXReorder(sp128, spF8); diff --git a/src/REL/m415Dll/map.c b/src/REL/m415Dll/map.c index 45a83c57..31636233 100644 --- a/src/REL/m415Dll/map.c +++ b/src/REL/m415Dll/map.c @@ -230,20 +230,20 @@ void fn_1_88B8(unkSubStruct2* arg0) { } GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, var_r31->unk40, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, var_r31->unk40, 12); GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetArray(GX_VA_CLR0, var_r31->unk44, 4); for (var_r27 = 0; var_r27 < var_r31->unk33; var_r27++) { GXSetVtxDesc(var_r27 + GX_VA_TEX0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, var_r27 + GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, var_r27 + GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); GXSetArray(var_r27 + GX_VA_TEX0, var_r31->unk54[var_r27].unk4, 8); } GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_NRM, var_r31->unk48, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, var_r31->unk48, 12); GXCallDisplayList(var_r31->unk3C, var_r31->unk38); } } @@ -1433,4 +1433,4 @@ void fn_1_C81C(s16 arg0, u8 arg1) { var_r31 = &lbl_1_bss_36C.unk3C[arg0]; var_r31->unk4 = arg1; } -} \ No newline at end of file +} diff --git a/src/REL/m423Dll/main.c b/src/REL/m423Dll/main.c new file mode 100755 index 00000000..c063e916 --- /dev/null +++ b/src/REL/m423Dll/main.c @@ -0,0 +1,5648 @@ +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/gamework_data.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/pad.h" +#include "game/process.h" +#include "game/sprite.h" +#include "game/wipe.h" + +#include "dolphin.h" +#include "ext_math.h" + +#define frand7() (frand() & 0x7F) + +extern u32 GlobalCounter; + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ void* unk10; +} StructBssD0Data; // Size 0x14 + +typedef struct { + /* 0x00 */ Vec unk00; + /* 0x0C */ Vec unk0C; + /* 0x18 */ float unk18; +} StructData0; // Size 0x1C + +typedef struct { + /* 0x00 */ StructBssD0Data* unk00; + /* 0x04 */ AnimData* unk04; +} StructM423_00; // Size 8 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ s16 unk06; + /* 0x08 */ Vec unk08; +} StructM423_01; // Size 0x14 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ char unk06[2]; + /* 0x08 */ Vec unk08; + /* 0x14 */ Vec* unk14; + /* 0x18 */ Vec* unk18; + /* 0x1C */ GXColor* unk1C; + /* 0x20 */ StructM423_01* unk20; + /* 0x24 */ float unk24[4]; + /* 0x34 */ u32 unk34; + /* 0x38 */ void* unk38; +} StructM423_02; // Size 0x3C + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ StructM423_02* unk04; +} StructM423_03; // Size 8 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ Vec unk04; + /* 0x10 */ char unk10[8]; + /* 0x18 */ float unk18; + /* 0x1C */ char unk1C[0xC]; + /* 0x28 */ float unk28; + /* 0x2C */ float unk2C; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; + /* 0x38 */ Vec unk38; + /* 0x44 */ GXColor unk44; + /* 0x48 */ s32 unk48; +} StructM423_04; // Size 0x4C + +typedef struct struct_m423_05 { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x00 */ char unk04[0x1C]; + /* 0x20 */ u8 unk20; + /* 0x21 */ u8 unk21; + /* 0x22 */ u8 unk22; + /* 0x23 */ s8 unk23; + /* 0x24 */ char unk24[2]; + /* 0x26 */ s16 unk26; + /* 0x28 */ s32 unk28; + /* 0x2C */ s32 unk2C; + /* 0x30 */ u32 unk30; + /* 0x34 */ s32 unk34; + /* 0x38 */ AnimData* unk38; + /* 0x3C */ StructM423_04* unk3C; + /* 0x40 */ Vec* unk40; + /* 0x44 */ float (*unk44)[2]; + /* 0x48 */ void* unk48; + /* 0x4C */ void* unk4C; + /* 0x50 */ ModelData* unk50; +} StructM423_05; // Size 0x54 + +typedef struct { + /* 0x00 */ float unk00; + /* 0x04 */ float unk04; + /* 0x08 */ char unk08[4]; + /* 0x0C */ float unk0C; + /* 0x10 */ float unk10; + /* 0x14 */ char unk14[4]; + /* 0x18 */ float unk18; + /* 0x1C */ float unk1C; + /* 0x20 */ char unk20[4]; + /* 0x24 */ float unk24; + /* 0x28 */ float unk28; + /* 0x2C */ char unk2C[4]; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; + /* 0x38 */ char unk38[4]; +} StructM423_08; // Size 0x3C + +typedef struct { + /* 0x00 */ float unk00; + /* 0x04 */ float unk04; + /* 0x08 */ float unk08; + /* 0x0C */ float unk0C; + /* 0x10 */ float unk10; + /* 0x14 */ float unk14; + /* 0x18 */ float unk18; + /* 0x1C */ float unk1C; + /* 0x20 */ float unk20; + /* 0x24 */ float unk24; +} StructM423_09; // Size 0x28 + +typedef struct { + /* 0x000 */ u16 unk00; + /* 0x002 */ u16 unk02; + /* 0x004 */ float unk04; + /* 0x008 */ float unk08; + /* 0x00C */ float unk0C; + /* 0x010 */ float unk10; + /* 0x014 */ Vec unk14; +} StructM423_0A; // Size 0x20 + +typedef struct { + /* 0x000 */ StructM423_0A unk00[16]; + /* 0x200 */ AnimData* unk200; + /* 0x204 */ s32 unk204; + /* 0x208 */ void* unk208; + /* 0x20C */ StructM423_08* unk20C; + /* 0x210 */ StructM423_09* unk210; + /* 0x214 */ GXColor* unk214; + /* 0x218 */ s32 unk218; + /* 0x21C */ s32 unk21C; + /* 0x220 */ void* unk220; +} StructM423_0B; // Size 0x224 + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10[24]; + /* 0x070 */ s32 unk70[24][3]; + /* 0x190 */ s16 unk190[10][2]; +} StructM423_0C; // Size 0x1B8 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ s16 unk06; + /* 0x08 */ s16 unk08; + /* 0x0A */ s16 unk0A; + /* 0x0C */ s16 unk0C; + /* 0x0E */ s16 unk0E; + /* 0x10 */ s16 unk10; + /* 0x12 */ s16 unk12; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ Vec unk20; + /* 0x2C */ Vec unk2C; + /* 0x38 */ Vec unk38; + /* 0x44 */ float unk44; + /* 0x48 */ float unk48; + /* 0x4C */ float unk4C; + /* 0x50 */ Vec unk50; + /* 0x5C */ Vec unk5C; + /* 0x68 */ Vec unk68; + /* 0x74 */ Vec unk74; + /* 0x80 */ Vec unk80; + /* 0x8C */ float unk8C; + /* 0x90 */ float unk90; +} StructBssA8Data; // Size 0x94 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ s16 unk06; + /* 0x08 */ s16 unk08; + /* 0x0A */ s16 unk0A; +} StructBssCCData; // Size 0xC + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ s16 unk06; + /* 0x08 */ s16 unk08; + /* 0x0A */ s16 unk0A; + /* 0x0C */ s16 unk0C; + /* 0x0E */ s16 unk0E; + /* 0x10 */ s16 unk10; + /* 0x12 */ s16 unk12; + /* 0x14 */ s16 unk14; + /* 0x16 */ s16 unk16; + /* 0x18 */ s16 unk18; + /* 0x1A */ char unk1A[2]; + /* 0x1C */ float unk1C[15]; + /* 0x58 */ s32 unk58; + /* 0x5C */ s32 unk5C; + /* 0x60 */ float unk60; + /* 0x64 */ s32 unk64; + /* 0x68 */ s32 unk68; + /* 0x6C */ s32 unk6C; + /* 0x70 */ s32 unk70; + /* 0x74 */ s32 unk74; + /* 0x78 */ float unk78; + /* 0x7C */ float unk7C; + /* 0x80 */ s32 unk80; + /* 0x84 */ s32 unk84; + /* 0x88 */ float unk88; + /* 0x8C */ float unk8C; + /* 0x90 */ s32 unk90; + /* 0x94 */ s32 unk94; + /* 0x98 */ s32 unk98; + /* 0x9C */ s32 unk9C; + /* 0xA0 */ s32 unkA0; + /* 0xA4 */ s32 unkA4; + /* 0xA8 */ float unkA8; + /* 0xAC */ s32 unkAC; + /* 0xB0 */ float unkB0; + /* 0xB4 */ float unkB4; + /* 0xB8 */ float unkB8; + /* 0xBC */ float unkBC; + /* 0xC0 */ float unkC0; + /* 0xC4 */ float unkC4; + /* 0xC8 */ Vec unkC8; + /* 0xD4 */ Vec unkD4; + /* 0xE0 */ float unkE0; + /* 0xE4 */ float unkE4; + /* 0xE8 */ float unkE8; + /* 0xEC */ float unkEC; + /* 0xF0 */ float unkF0; + /* 0xF4 */ float unkF4; +} StructBssBCData; // Size 0xF8 + +typedef struct { + /* 0x000 */ s16 unk00; + /* 0x002 */ s16 unk02; + /* 0x004 */ Vec unk04; + /* 0x010 */ Vec unk10; + /* 0x004 */ char unk1C[0xC]; + /* 0x028 */ float unk28; + /* 0x02C */ float unk2C; + /* 0x030 */ float unk30; + /* 0x034 */ float unk34; + /* 0x038 */ char unk38[4]; + /* 0x03C */ float unk3C; + /* 0x040 */ s32 unk40; + /* 0x044 */ float unk44[12][4]; + /* 0x104 */ Vec unk104[12][3]; +} StructBss94Data; // Size 0x2B4 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ AnimData* unk08; +} StructBssA4Data; // Size 0xC + +void fn_1_318(omObjData* arg0); +void fn_1_3B0(omObjData* arg0); +void fn_1_DFC(omObjData* arg0); +void fn_1_E60(omObjData* arg0); +void fn_1_F10(void); +void fn_1_F60(omObjData* arg0); +void fn_1_11A4(omObjData* arg0); +void fn_1_1238(void); +void fn_1_12A0(ModelData* arg0, Mtx arg1); +s32 fn_1_13A0(StructBssD0Data* arg0); +void fn_1_1444(s32 arg0); +void fn_1_14A0(ModelData* arg0, Mtx arg1); +s32 fn_1_18FC(void); +void fn_1_1B5C(ModelData* arg0, StructM423_02* arg1); +void fn_1_1F5C(ModelData* arg0, StructM423_02* arg1); +void fn_1_2290(ModelData* arg0, StructM423_02* arg1); +void fn_1_2624(ModelData* arg0, StructM423_02* arg1); +void fn_1_29B8(s32 arg0); +void fn_1_29BC(ModelData* arg0, Mtx arg1); +void fn_1_2C08(s32 arg0); +void fn_1_34D8(void); +void fn_1_3528(omObjData* arg0); +void fn_1_3898(omObjData* arg0); +void fn_1_3A64(void); +void fn_1_3A8C(void); +void fn_1_3BFC(void); +void fn_1_3FE0(omObjData* arg0); +void fn_1_4778(omObjData* arg0); +void fn_1_5D18(omObjData* arg0); +void fn_1_77D0(void); +s32 fn_1_781C(void); +s32 fn_1_791C(void); +void fn_1_7AA8(s32 arg0); +void fn_1_82C8(s32 arg0, s32 arg1, s32 arg2); +void fn_1_8338(omObjData* arg0); +void fn_1_8CB4(omObjData* arg0); +void fn_1_95C4(void); +void fn_1_9614(omObjData* arg0); +void fn_1_98A0(omObjData* arg0); +void fn_1_A9AC(void); +s32 fn_1_A9D4(s32 arg0, Vec arg1, Vec arg2); +void fn_1_AC0C(s32 arg0, Vec arg1); +void fn_1_AC80(s32 arg0, Vec arg1); +s32 fn_1_AE64(s32 arg0); +void fn_1_AEE8(s32 arg0); +StructBssA8Data* fn_1_B13C(s32 arg0); +void fn_1_B1A4(void); +s32 fn_1_B304(StructBssA8Data** arg0); +void fn_1_B430(void); +void fn_1_BCD8(Vec* arg0, Vec* arg1, Vec* arg2, float arg3, s32 arg4, s32 arg5); +s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5); +void fn_1_D930(void); +void fn_1_DA38(omObjData* arg0); +void fn_1_DBC8(void); +s32 fn_1_DC24(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, GXColor arg5); +s32 fn_1_DD70(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5, GXColor arg6); +void fn_1_E1BC(void); +void fn_1_E290(omObjData* arg0); +void fn_1_E330(void); +s32 fn_1_E334(Vec arg0, Vec arg1, float arg2); +void fn_1_E460(void); +void fn_1_E4EC(omObjData* arg0); +void fn_1_E60C(void); +s32 fn_1_E678(void); +void fn_1_EF44(ModelData* arg0, Mtx arg1); +s32 fn_1_F574(Vec arg0, float arg1, s32 arg2); +void fn_1_F690(void); +void fn_1_F6E0(omObjData* arg0); +void fn_1_FA40(omObjData* arg0); +void fn_1_FF98(void); +void fn_1_10028(s32 arg0); +void fn_1_100DC(void); +void fn_1_10480(omObjData* arg0); +void fn_1_10540(s32 arg0, s32 arg1, s32 arg2, float arg3); +void fn_1_106D8(s32 arg0); +void fn_1_10BC8(void); +void fn_1_11008(StructBssD0Data* arg0, void* arg1, s16 arg2, GXTexWrapMode arg3, s32 arg4, s32 arg5); +s16 fn_1_11114(AnimData* arg0, s16 arg1); +void fn_1_11900(ModelData* arg0, Mtx arg1); +float fn_1_121DC(float arg0, float arg1); +float fn_1_122F4(float arg0, float arg1, float arg2); +float fn_1_12544(float arg0, float arg1, float arg2); +void fn_1_1293C(Mtx arg0, Vec* arg1); +s32 fn_1_12C6C(Vec* arg0, Vec* arg1, float* arg2); +float fn_1_12E68(Vec* arg0, Vec* arg1, s32 arg2); +void fn_1_129F0(Vec* arg0, Vec* arg1, Vec* arg2, float* arg3); +void fn_1_1334C(float* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4); +float fn_1_1367C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float* arg4); +s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5); + +Process* lbl_1_bss_120; +s32 lbl_1_bss_11C; +s32 lbl_1_bss_118; +s32 lbl_1_bss_114; +s32 lbl_1_bss_110; +s32 lbl_1_bss_10C; // unused +s32 lbl_1_bss_108; +s32 lbl_1_bss_104; +s32 lbl_1_bss_100; +s32 lbl_1_bss_FC; +s32 lbl_1_bss_EC[4]; +s32 lbl_1_bss_DC[4]; +s32 lbl_1_bss_D8; +omObjData* lbl_1_bss_D4; +omObjData* lbl_1_bss_D0; +omObjData* lbl_1_bss_CC; +omObjData* lbl_1_bss_BC[4]; +omObjData* lbl_1_bss_B8; +omObjData* lbl_1_bss_AC[3]; +omObjData* lbl_1_bss_A8; +omObjData* lbl_1_bss_A4; +omObjData* lbl_1_bss_A0; +omObjData* lbl_1_bss_9C; +omObjData* lbl_1_bss_98; +StructBss94Data* lbl_1_bss_94; +s32 lbl_1_bss_90; +omObjData* lbl_1_bss_8C; +s32 lbl_1_bss_88; +s32 lbl_1_bss_84; +s32 lbl_1_bss_80; +s32 lbl_1_bss_7C; +StructBssA8Data* lbl_1_bss_40[15]; +StructBssA8Data* lbl_1_bss_4[15]; +s32 lbl_1_bss_0; + +StructData0 lbl_1_data_0[] = { + { { 342.45f, 0.0f, 0.0f }, { 0.0f, 275.0f, 128.0f }, 550.0f }, + { { 6.0f, 0.0f, 0.0f }, { 0.0f, 190.0f, 0.0f }, 550.0f } +}; + +StructData0 lbl_1_data_38[] = { + { { 22.0f, 180.0f, 0.0f }, { -250.0f, 120.00001f, 0.0f }, 160.0f }, + { { 22.0f, 180.0f, 0.0f }, { 0.0f, 120.00001f, 0.0f }, 160.0f }, + { { 22.0f, 180.0f, 0.0f }, { 250.0f, 120.00001f, 0.0f }, 160.0f }, + { { -45.0f, 180.0f, 0.0f }, { -250.0f, 75.0f, 0.0f }, 180.0f }, + { { -45.0f, 180.0f, 0.0f }, { 0.0f, 75.0f, 0.0f }, 180.0f }, + { { -45.0f, 180.0f, 0.0f }, { 250.0f, 75.0f, 0.0f }, 180.0f }, + { { -45.0f, 0.0f, 0.0f }, { -250.0f, 95.0f, 0.0f }, 150.0f }, + { { -45.0f, 0.0f, 0.0f }, { 0.0f, 95.0f, 0.0f }, 150.0f }, + { { -45.0f, 0.0f, 0.0f }, { 250.0f, 95.0f, 0.0f }, 150.0f }, + { { -45.0f, 0.0f, 0.0f }, { 0.0f, 95.0f, -850.0f }, 150.0f } +}; + +Vec lbl_1_data_150[] = { + 0.0f, 0.0f, -850.0f, + -250.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, + 250.0f, 0.0f, 0.0f +}; + +Vec lbl_1_data_180[] = { + 0.0f, 0.0f, -850.0f, + 850.0f, 0.0f, 0.0f, + 1200.0f, 0.0f, 0.0f, + 1650.0f, 0.0f, 0.0f +}; + +Vec lbl_1_data_1B0[] = { + { -250.0f, 45.0f, 500.0f }, + { 0.0f, 45.0f, 500.0f }, + { 250.0f, 45.0f, 500.0f } +}; + +Vec lbl_1_data_1D4 = { 1000.0f, 2000.0f, 1000.0f }; +Vec lbl_1_data_1E0 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_1EC = { 0.0f, 0.0f, -450.0f }; + +void ObjectSetup(void) { + Process* var_r30; + CameraData* var_r29; + s32 i; + + OSReport("******* M426ObjectSetup *********\n"); + var_r30 = omInitObjMan(50, 0x2000); + lbl_1_bss_120 = var_r30; + omGameSysInit(var_r30); + fn_1_100DC(); + Hu3DLightAllKill(); + Hu3DLighInit(); + HuAudSndGrpSet(0x30); + lbl_1_bss_D4 = omAddObjEx(var_r30, 0xFF, 2, 0, -1, fn_1_318); + lbl_1_bss_11C = lbl_1_bss_118 = -1; + lbl_1_bss_D0 = NULL; + lbl_1_bss_CC = NULL; + lbl_1_bss_A8 = NULL; + lbl_1_bss_B8 = NULL; + lbl_1_bss_AC[0] = lbl_1_bss_AC[1] = lbl_1_bss_AC[2] = NULL; + lbl_1_bss_114 = 0; + lbl_1_bss_110 = 0; + lbl_1_bss_108 = 0; + lbl_1_bss_104 = 10; + lbl_1_bss_100 = -1; + lbl_1_bss_FC = 0; + lbl_1_bss_90 = -1; + lbl_1_bss_D8 = -1; + for (i = 0; i < 4; i++) { + lbl_1_bss_DC[i] = 0; + lbl_1_bss_EC[i] = -1; + } + Hu3DShadowCreate(30.0f, 1000.0f, 250000.0f); + Hu3DShadowTPLvlSet(0.5f); + Hu3DShadowPosSet(&lbl_1_data_1D4, &lbl_1_data_1E0, &lbl_1_data_1EC); + for (i = 0; i < 3; i++) { + var_r29 = &Hu3DCamera[i]; + var_r29->fov = -1.0f; + } +} + +Vec lbl_1_data_21C = { 0.0f, 0.0f, 0.0f }; +Vec lbl_1_data_228 = { -1.0f, -2.0f, -1.0f }; +GXColor lbl_1_data_234 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_318(omObjData* arg0) { + s32 var_r31; + + var_r31 = Hu3DGLightCreateV(&lbl_1_data_21C, &lbl_1_data_228, &lbl_1_data_234); + Hu3DGLightStaticSet(var_r31, 1); + Hu3DGLightInfinitytSet(var_r31); + fn_1_F10(); + fn_1_34D8(); + fn_1_3BFC(); + fn_1_95C4(); + fn_1_D930(); + fn_1_E1BC(); + fn_1_E460(); + fn_1_F690(); + HuAudFXPlay(0x618); + arg0->func = fn_1_3B0; +} + +s32 lbl_1_data_238[] = { 0, 4, 2, 3, 1, 5 }; +s32 lbl_1_data_250[] = { 186, 186, 186, 240, 240, 240 }; + +void fn_1_3B0(omObjData* arg0) { + CameraData* var_r28; + float var_f31; + s32 temp_r27; + s32 var_r30; + s32 var_r29; + s32 i; + + switch (lbl_1_bss_114) { + case 0: + fn_1_10540(2, 1, 1, 0.0f); + if (++lbl_1_bss_110 > 3) { + for (i = 0; i < 3; i++) { + var_r28 = &Hu3DCamera[i]; + var_r28->fov = 45.0f; + } + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + lbl_1_bss_114 = 1; + lbl_1_bss_110 = 0; + } + break; + case 1: + fn_1_10540(2, 1, 1, 0.0f); + if (WipeStatGet() == 0) { + lbl_1_bss_114 = 2; + lbl_1_bss_110 = 0; + } + break; + case 2: + if (++lbl_1_bss_110 >= 30.0f) { + lbl_1_bss_114 = 3; + lbl_1_bss_110 = 0; + } + break; + case 3: + var_f31 = lbl_1_bss_110 / 90.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + var_f31 = sind(90.0f * var_f31); + var_f31 *= var_f31; + fn_1_10540(2, 1, 0, var_f31); + if (++lbl_1_bss_110 >= 90.0f) { + lbl_1_bss_114 = 4; + lbl_1_bss_110 = 0; + } + break; + case 4: + if (fn_1_781C() != 0) { + lbl_1_bss_11C = MGSeqStartCreate(); + lbl_1_bss_114 = 5; + lbl_1_bss_110 = 0; + } + break; + case 5: + if (lbl_1_bss_11C != -1) { + var_r30 = MGSeqStatGet(lbl_1_bss_11C); + if ((var_r30 & 0x10) && lbl_1_bss_D8 == -1) { + lbl_1_bss_D8 = HuAudSeqPlay(0x46); + } + } else { + var_r30 = 0; + } + if (lbl_1_bss_11C == -1 || var_r30 == 0) { + lbl_1_bss_11C = -1; + lbl_1_bss_114 = 6; + lbl_1_bss_110 = 0; + lbl_1_bss_108 = 1800; + fn_1_10028(1); + lbl_1_bss_118 = MGSeqTimerCreate(lbl_1_bss_108 / 60); + } + break; + case 6: + temp_r27 = lbl_1_data_238[lbl_1_bss_0]; + fn_1_106D8(temp_r27); + if (lbl_1_bss_80 >= lbl_1_data_250[temp_r27] && ++lbl_1_bss_0 > 5) { + lbl_1_bss_0 = 0; + } + var_r29 = (lbl_1_bss_108 + 59) / 60; + if (var_r29 < 0) { + var_r29 = 0; + } + MGSeqParamSet(lbl_1_bss_118, 1, var_r29); + if (--lbl_1_bss_108 < -1 || lbl_1_bss_104 <= 0) { + MGSeqParamSet(lbl_1_bss_118, 2, -1); + lbl_1_bss_118 = -1; + fn_1_B1A4(); + if (lbl_1_bss_D8 != -1) { + HuAudSeqFadeOut(lbl_1_bss_D8, 100); + } + lbl_1_bss_11C = MGSeqFinishCreate(); + lbl_1_bss_114 = 7; + lbl_1_bss_110 = 0; + } + break; + case 7: + if (fn_1_791C() != 0 && (lbl_1_bss_11C == -1 || MGSeqStatGet(lbl_1_bss_11C) == 0)) { + lbl_1_bss_114 = 9; + lbl_1_bss_110 = 0; + } + break; + case 9: + if (lbl_1_bss_104 <= 0) { + lbl_1_bss_11C = MGSeqWinCreate(lbl_1_bss_EC[0], lbl_1_bss_EC[1], lbl_1_bss_EC[2], -1); + fn_1_7AA8(1); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_EC[3] != GWPlayerCfg[i].character) { + GWPlayerCoinWinAdd(i, 10); + } + } + if (lbl_1_bss_DC[0] > lbl_1_bss_DC[1] && lbl_1_bss_DC[0] > lbl_1_bss_DC[2]) { + i = 0; + } else if (lbl_1_bss_DC[1] > lbl_1_bss_DC[0] && lbl_1_bss_DC[1] > lbl_1_bss_DC[2]) { + i = 1; + } else if (lbl_1_bss_DC[2] > lbl_1_bss_DC[0] && lbl_1_bss_DC[2] > lbl_1_bss_DC[1]) { + i = 2; + } else { + i = frand() & 3; + if (i > 2) { + i = 2; + } else if (i < 0) { + i = 0; + } + } + fn_1_106D8(i + 6); + lbl_1_bss_114 = 10; + lbl_1_bss_108 = 0; + } else { + lbl_1_bss_11C = MGSeqWinCreate(lbl_1_bss_EC[3], -1, -1, -1); + fn_1_7AA8(0); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_EC[3] == GWPlayerCfg[i].character) { + GWPlayerCoinWinAdd(i, 10); + } + } + fn_1_106D8(9); + lbl_1_bss_114 = 10; + lbl_1_bss_108 = 0; + } + HuAudSStreamPlay(1); + HuAudFXPlay(0x618); + break; + case 10: + fn_1_3A8C(); + if (++lbl_1_bss_108 >= 210.0f) { + lbl_1_bss_11C = -1; + lbl_1_bss_114 = 11; + lbl_1_bss_108 = 0; + } + break; + case 11: + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_DFC; + break; + } + fn_1_E60(arg0); +} + +void fn_1_DFC(omObjData* arg0) { + if (WipeStatGet() == 0) { + fn_1_1238(); + fn_1_3A64(); + fn_1_77D0(); + fn_1_A9AC(); + fn_1_DBC8(); + fn_1_E330(); + fn_1_E60C(); + fn_1_FF98(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_E60(omObjData* arg0) { + s32 var_r30; + + var_r30 = 0; + if (WipeStatGet() != 0 || arg0->func == fn_1_DFC) { + return; + } + if (omSysExitReq != 0) { + var_r30 = 1; + } + if (var_r30 != 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + HuAudStreamFadeOut(30); + arg0->func = fn_1_DFC; + } +} + +s32 fn_1_F00(void) { + return lbl_1_bss_114; +} + +void fn_1_F10(void) { + lbl_1_bss_D0 = omAddObjEx(lbl_1_bss_120, 0x7F, 8, 0, -1, fn_1_F60); +} + +void fn_1_F60(omObjData* arg0) { + StructBssD0Data* temp_r30; + ModelData* temp_r29; + + temp_r30 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(*temp_r30), MEMORY_DEFAULT_NUM); + memset(temp_r30, 0, sizeof(*temp_r30)); + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M423, 0)); + Hu3DModelCameraSet(arg0->model[0], 5); + Hu3DModelShadowMapSet(arg0->model[0]); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M423, 1)); + Hu3DModelCameraSet(arg0->model[1], 5); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M423, 2)); + Hu3DModelScaleSet(arg0->model[2], 1.125f, 1.0f, 1.0f); + Hu3DModelCameraSet(arg0->model[2], 5); + Hu3DModelShadowSet(arg0->model[2]); + arg0->model[3] = Hu3DHookFuncCreate(fn_1_12A0); + Hu3DModelCameraSet(arg0->model[3], 2); + temp_r29 = &Hu3DData[arg0->model[3]]; + temp_r29->unk_120 = temp_r30; + temp_r30->unk00 = 160; + temp_r30->unk04 = 160; + temp_r30->unk08 = GXGetTexBufferSize(temp_r30->unk00, temp_r30->unk04, 5, 0, 0); + temp_r30->unk10 = HuMemDirectMallocNum(HEAP_DATA, temp_r30->unk08, (u32) temp_r29->unk_48); + temp_r30->unk0C = 0.0f; + arg0->model[4] = fn_1_13A0(temp_r30); + Hu3DModelCameraSet(arg0->model[4], 5); + Hu3DModelPosSet(arg0->model[4], 0.0f, 200.0f, -1700.0f); + arg0->model[5] = fn_1_18FC(); + Hu3DModelCameraSet(arg0->model[5], 4); + arg0->func = fn_1_11A4; +} + +void fn_1_11A4(omObjData* arg0) { + fn_1_2C08(arg0->model[5]); +} + +void fn_1_11D8(omObjData* arg0) { + fn_1_1444(arg0->model[4]); + arg0->model[4] = -1; + fn_1_29B8(arg0->model[5]); + arg0->model[5] = -1; + arg0->func = NULL; +} + +void fn_1_1238(void) { + fn_1_11D8(lbl_1_bss_D0); +} + +GXColor lbl_1_data_298 = { 0x00, 0x00, 0x00, 0xFF }; + +void fn_1_12A0(ModelData* arg0, Mtx arg1) { + StructBssD0Data* temp_r31; + CameraData* var_r30; + + temp_r31 = arg0->unk_120; + var_r30 = &Hu3DCamera[1]; + if (var_r30->fov <= 0.0f) { + return; + } + GXSetTexCopySrc(0, 0, 320, 240); + GXSetTexCopyDst(temp_r31->unk00, temp_r31->unk04, GX_TF_RGB5A3, GX_TRUE); + GXSetCopyClear(lbl_1_data_298, 0xFFFFFF); + GXCopyTex(temp_r31->unk10, GX_TRUE); + DCFlushRange(temp_r31->unk10, temp_r31->unk08); + GXPixModeSync(); + temp_r31->unk0C = 1; + fn_1_10BC8(); +} + +s32 fn_1_13A0(StructBssD0Data* arg0) { + StructM423_00* var_r31; + ModelData* temp_r30; + s32 var_r29; + + var_r29 = Hu3DHookFuncCreate(fn_1_14A0); + temp_r30 = &Hu3DData[var_r29]; + var_r31 = temp_r30->unk_120 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r31), temp_r30->unk_48); + memset(var_r31, 0, sizeof(*var_r31)); + var_r31->unk00 = arg0; + var_r31->unk04 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M423, 21), MEMORY_DEFAULT_NUM)); + return var_r29; +} + +void fn_1_1444(s32 arg0) { + StructM423_00* var_r31; + ModelData* var_r30; + + if (arg0 >= 0) { + var_r30 = &Hu3DData[arg0]; + var_r31 = var_r30->unk_120; + HuSprAnimKill(var_r31->unk04); + } +} + +f32 lbl_1_data_29C[] = { + -400.0f, 400.0f, 0.0f, + 400.0f, 400.0f, 0.0f, + 400.0f, 0.0f, 0.0f, + -400.0f, 0.0f, 0.0f +}; + +f32 lbl_1_data_2CC[] = { + 0.0f, 0.0f, + 1.0f, 0.0f, + 1.0f, 0.75f, + 0.0f, 0.75f +}; + +f32 lbl_1_data_2EC[] = { + 0.0f, 0.0f, + 1.2f, 0.0f, + 1.2f, 0.75f, + 0.0f, 0.75f +}; + +GXColor lbl_1_data_30C[] = { + { 0x40, 0x40, 0x40, 0xFF } +}; + +GXColor lbl_1_data_310 = { 0x00, 0x00, 0x00, 0x80 }; + +void fn_1_14A0(ModelData* arg0, Mtx arg1) { + CameraData* var_r28; + StructM423_00* temp_r29; + StructBssD0Data* temp_r30; + Mtx spC; + s16 i; + + var_r28 = &Hu3DCamera[2]; + temp_r29 = arg0->unk_120; + temp_r30 = temp_r29->unk00; + if (temp_r30->unk0C != 0) { + if (var_r28->fov <= 0.0f) { + return; + } + GXLoadPosMtxImm(arg1, GX_PNMTX0); + PSMTXInvXpose(arg1, spC); + GXLoadNrmMtxImm(spC, GX_PNMTX0); + GXSetTevColor(GX_TEVREG2, lbl_1_data_310); + GXSetNumTevStages(2); + GXSetNumTexGens(2); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR0A0); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_TEXC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_RASC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + if (Hu3DCameraNo != 0) { + GXSetTevOp(GX_TEVSTAGE1, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_CPREV, GX_CC_C2, GX_CC_TEXA, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + } else { + GXSetTevOp(GX_TEVSTAGE1, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_CPREV, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + } + GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_APREV, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_VTX, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_CLAMP, GX_AF_NONE); + fn_1_11008(temp_r30, temp_r30->unk10, GX_TEXMAP0, GX_CLAMP, 0, 1); + HuSprTexLoad(temp_r29->unk04, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(GX_FALSE); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, lbl_1_data_29C, 12); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, lbl_1_data_30C, 4); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX0, lbl_1_data_2CC, 8); + GXSetVtxDesc(GX_VA_TEX1, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX1, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX1, lbl_1_data_2EC, 8); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + for (i = 0; i < 4; i++) { + GXPosition1x16(i); + GXColor1x16(0); + GXTexCoord1x16(i); + GXTexCoord1x16(i); + } + GXEnd(); + } +} + +s32 lbl_1_data_314[][2] = { + { 20, 10 }, { 20, 7 }, { 10, 10 }, { 10, 10 } +}; + +Vec lbl_1_data_334[] = { + { 0.0f, 100.0f, -1100.0f }, + { 0.0f, 200.0f, -1000.0f }, + { -225.0f, 100.0f, -1000.0f }, + { 225.0f, 100.0f, -1000.0f } +}; + +s32 fn_1_18FC(void) { + ModelData* temp_r30; + StructM423_03* var_r29; + StructM423_02* temp_r31; + s32 var_r27; + s32 i; + + var_r27 = Hu3DHookFuncCreate(fn_1_29BC); + temp_r30 = &Hu3DData[var_r27]; + var_r29 = temp_r30->unk_120 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r29), temp_r30->unk_48); + memset(var_r29, 0, sizeof(*var_r29)); + var_r29->unk00 = var_r27; + var_r29->unk02 = 4; + temp_r31 = var_r29->unk04 = HuMemDirectMallocNum(HEAP_DATA, var_r29->unk02 * sizeof(*temp_r31), temp_r30->unk_48); + memset(temp_r31, 0, var_r29->unk02 * sizeof(*temp_r31)); + for (i = 0; i < var_r29->unk02; i++) { + temp_r31 = &var_r29->unk04[i]; + temp_r31->unk02 = lbl_1_data_314[i][0]; + temp_r31->unk04 = lbl_1_data_314[i][1]; + temp_r31->unk00 = temp_r31->unk02 * temp_r31->unk04; + temp_r31->unk08 = lbl_1_data_334[i]; + temp_r31->unk14 = HuMemDirectMallocNum(HEAP_DATA, temp_r31->unk00 * sizeof(*temp_r31->unk14), temp_r30->unk_48); + memset(temp_r31->unk14, 0, temp_r31->unk00 * sizeof(*temp_r31->unk14)); + temp_r31->unk18 = HuMemDirectMallocNum(HEAP_DATA, temp_r31->unk00 * sizeof(*temp_r31->unk18), temp_r30->unk_48); + memset(temp_r31->unk18, 0, temp_r31->unk00 * sizeof(*temp_r31->unk18)); + temp_r31->unk1C = HuMemDirectMallocNum(HEAP_DATA, temp_r31->unk00 * sizeof(*temp_r31->unk1C), temp_r30->unk_48); + memset(temp_r31->unk1C, 0, temp_r31->unk00 * sizeof(*temp_r31->unk1C)); + temp_r31->unk20 = HuMemDirectMallocNum(HEAP_DATA, temp_r31->unk00 * sizeof(*temp_r31->unk20), temp_r30->unk_48); + memset(temp_r31->unk20, 0, temp_r31->unk00 * sizeof(*temp_r31->unk20)); + switch (i) { + case 0: + fn_1_1B5C(temp_r30, temp_r31); + break; + case 1: + fn_1_1F5C(temp_r30, temp_r31); + break; + case 2: + fn_1_2290(temp_r30, temp_r31); + break; + default: + fn_1_2624(temp_r30, temp_r31); + break; + } + } + return var_r27; +} + +Vec lbl_1_data_364[] = { + { -200.0f, 0.0f, -1100.0f }, + { -200.0f, 200.0f, -1050.0f }, + { 200.0f, 200.0f, -1050.0f } +}; + +GXColor lbl_1_data_388 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_1B5C(ModelData* arg0, StructM423_02* arg1) { + float var_f31; + float var_f30; + float var_f29; + Vec* var_r27; + GXColor* var_r26; + StructM423_01* var_r28; + void* var_r25; + void* var_r23; + s32 i; + s32 j; + + var_r27 = arg1->unk14; + var_r26 = arg1->unk1C; + var_r28 = arg1->unk20; + for (i = 0; i < 10; i++) { + var_f30 = 200.0f * (i / 9.0f); + var_f29 = -1100.0f + 50.0f * (i / 9.0f); + for (j = 0; j < 20; var_r27++, var_r26++, var_r28++, j++) { + var_f31 = -225.0f + 450.0f * (j / 19.0f); + var_r27->x = var_f31; + var_r27->y = var_f30; + var_r27->z = var_f29; + *var_r26 = lbl_1_data_388; + var_r28->unk00 = j; + var_r28->unk02 = i; + if (i == 0 || i == 9 || j == 0 || j == 19) { + var_r28->unk04 = 1; + } else { + var_r28->unk04 = 0; + } + var_r28->unk06 = 0; + var_r28->unk08.x = var_r28->unk08.y = var_r28->unk08.z = 0.0f; + } + } + memcpy(arg1->unk18, arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk1C, arg1->unk00 * sizeof(*arg1->unk1C)); + PPCSync(); + var_r23 = var_r25 = HuMemDirectMallocNum(HEAP_DATA, 0x10000, arg0->unk_48); + DCFlushRange(var_r25, 0x10000); + GXBeginDisplayList(var_r23, 0x10000); + GXBegin(GX_LINES, GX_VTXFMT0, 9 * 19 * 4); + for (i = 1; i < 10; i++) { + for (j = 1; j < 20; j++) { + GXPosition1x16(i * 20 + j); + GXColor1x16(i * 20 + j); + + GXPosition1x16(i * 20 + (j - 1)); + GXColor1x16(i * 20 + (j - 1)); + + GXPosition1x16(i * 20 + j); + GXColor1x16(i * 20 + j); + + GXPosition1x16((i - 1) * 20 + j); + GXColor1x16((i - 1) * 20 + j); + } + } + GXEnd(); + arg1->unk34 = GXEndDisplayList(); + if (arg1->unk34 >= 0x10000) { + OSReport("ERROR! GList test size over! \n"); + } + arg1->unk38 = HuMemDirectMallocNum(HEAP_DATA, arg1->unk34, arg0->unk_48); + memcpy(arg1->unk38, var_r25, arg1->unk34); + DCFlushRange(arg1->unk38, arg1->unk34); + HuMemDirectFree(var_r25); + fn_1_129F0(&lbl_1_data_364[0], &lbl_1_data_364[1], &lbl_1_data_364[2], arg1->unk24); +} + +GXColor lbl_1_data_3AB = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_1F5C(ModelData* arg0, StructM423_02* arg1) { + float var_f31; + float var_f30; + float var_f29; + Vec* var_r27; + GXColor* var_r26; + void* var_r25; + void* var_r23; + s32 i; + s32 j; + + var_r27 = arg1->unk14; + var_r26 = arg1->unk1C; + for (i = 0; i < 7; i++) { + var_f30 = 200.0f; + var_f29 = -900.0f - 150.0f * (i / 6.0f); + for (j = 0; j < 20; var_r27++, var_r26++, j++) { + var_f31 = -225.0f + 450.0f * (j / 19.0f); + var_r27->x = var_f31; + var_r27->y = var_f30; + var_r27->z = var_f29; + *var_r26 = lbl_1_data_3AB; + } + } + memcpy(arg1->unk18, arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk1C, arg1->unk00 * sizeof(*arg1->unk1C)); + PPCSync(); + var_r23 = var_r25 = HuMemDirectMallocNum(HEAP_DATA, 0x10000, arg0->unk_48); + DCFlushRange(var_r25, 0x10000); + GXBeginDisplayList(var_r23, 0x10000); + GXBegin(GX_LINES, GX_VTXFMT0, 6 * 19 * 4); + for (i = 1; i < 7; i++) { + for (j = 1; j < 20; j++) { + GXPosition1x16(i * 20 + j); + GXColor1x16(i * 20 + j); + + GXPosition1x16(i * 20 + (j - 1)); + GXColor1x16(i * 20 + (j - 1)); + + GXPosition1x16(i * 20 + j); + GXColor1x16(i * 20 + j); + + GXPosition1x16((i - 1) * 20 + j); + GXColor1x16((i - 1) * 20 + j); + } + } + GXEnd(); + arg1->unk34 = GXEndDisplayList(); + if (arg1->unk34 >= 0x10000) { + OSReport("ERROR! GList test size over! \n"); + } + arg1->unk38 = HuMemDirectMallocNum(HEAP_DATA, arg1->unk34, arg0->unk_48); + memcpy(arg1->unk38, var_r25, arg1->unk34); + DCFlushRange(arg1->unk38, arg1->unk34); + HuMemDirectFree(var_r25); +} + +GXColor lbl_1_data_3AF = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_2290(ModelData* arg0, StructM423_02* arg1) { + float var_f31; + float var_f30; + float var_f29; + float var_f28; + Vec* var_r27; + GXColor* var_r26; + void* var_r25; + void* var_r23; + s32 i; + s32 j; + + var_r27 = arg1->unk14; + var_r26 = arg1->unk1C; + for (i = 0; i < 10; i++) { + var_f28 = 200.0f * (i / 9.0f); + var_f29 = -225.0f; + var_f30 = -1100.0f + 50.0f * (i / 9.0f); + for (j = 0; j < 10; var_r27++, var_r26++, j++) { + var_f31 = -900.0f - 200.0f * (j / 9.0f); + if (var_f31 < var_f30) { + var_f31 = var_f30; + } + var_r27->x = var_f29; + var_r27->y = var_f28; + var_r27->z = var_f31; + *var_r26 = lbl_1_data_3AF; + } + } + memcpy(arg1->unk18, arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk1C, arg1->unk00 * sizeof(*arg1->unk1C)); + PPCSync(); + var_r23 = var_r25 = HuMemDirectMallocNum(HEAP_DATA, 0x10000, arg0->unk_48); + DCFlushRangeNoSync(var_r25, 0x10000); + GXBeginDisplayList(var_r23, 0x10000); + GXBegin(GX_LINES, GX_VTXFMT0, 9 * 9 * 4); + for (i = 1; i < 10; i++) { + for (j = 1; j < 10; j++) { + GXPosition1x16(i * 10 + j); + GXColor1x16(i * 10 + j); + + GXPosition1x16(i * 10 + (j - 1)); + GXColor1x16(i * 10 + (j - 1)); + + GXPosition1x16(i * 10 + j); + GXColor1x16(i * 10 + j); + + GXPosition1x16((i - 1) * 10 + j); + GXColor1x16((i - 1) * 10 + j); + } + } + GXEnd(); + arg1->unk34 = GXEndDisplayList(); + if (arg1->unk34 >= 0x10000) { + OSReport("ERROR! GList test size over! \n"); + } + arg1->unk38 = HuMemDirectMallocNum(HEAP_DATA, arg1->unk34, arg0->unk_48); + memcpy(arg1->unk38, var_r25, arg1->unk34); + DCFlushRange(arg1->unk38, arg1->unk34); + HuMemDirectFree(var_r25); +} + +GXColor lbl_1_data_3B3 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_2624(ModelData* arg0, StructM423_02* arg1) { + float var_f31; + float var_f30; + float var_f29; + float var_f28; + Vec* var_r27; + GXColor* var_r26; + void* var_r25; + void* var_r23; + s32 i; + s32 j; + + var_r27 = arg1->unk14; + var_r26 = arg1->unk1C; + for (i = 0; i < 10; i++) { + var_f28 = 200.0f * (i / 9.0f); + var_f29 = 225.0f; + var_f30 = -1100.0f + 50.0f * (i / 9.0f); + for (j = 0; j < 10; var_r27++, var_r26++, j++) { + var_f31 = -900.0f - 200.0f * (j / 9.0f); + if (var_f31 < var_f30) { + var_f31 = var_f30; + } + var_r27->x = var_f29; + var_r27->y = var_f28; + var_r27->z = var_f31; + *var_r26 = lbl_1_data_3B3; + } + } + memcpy(arg1->unk18, arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk14, arg1->unk00 * sizeof(*arg1->unk14)); + DCFlushRangeNoSync(arg1->unk1C, arg1->unk00 * sizeof(*arg1->unk1C)); + PPCSync(); + var_r23 = var_r25 = HuMemDirectMallocNum(HEAP_DATA, 0x10000, arg0->unk_48); + DCFlushRange(var_r25, 0x10000); + GXBeginDisplayList(var_r23, 0x10000); + GXBegin(GX_LINES, GX_VTXFMT0, 9 * 9 * 4); + for (i = 1; i < 10; i++) { + for (j = 1; j < 10; j++) { + GXPosition1x16(i * 10 + j); + GXColor1x16(i * 10 + j); + + GXPosition1x16(i * 10 + (j - 1)); + GXColor1x16(i * 10 + (j - 1)); + + GXPosition1x16(i * 10 + j); + GXColor1x16(i * 10 + j); + + GXPosition1x16((i - 1) * 10 + j); + GXColor1x16((i - 1) * 10 + j); + } + } + GXEnd(); + arg1->unk34 = GXEndDisplayList(); + if (arg1->unk34 >= 0x10000) { + OSReport("ERROR! GList test size over! \n"); + } + arg1->unk38 = HuMemDirectMallocNum(HEAP_DATA, arg1->unk34, arg0->unk_48); + memcpy(arg1->unk38, var_r25, arg1->unk34); + DCFlushRange(arg1->unk38, arg1->unk34); + HuMemDirectFree(var_r25); +} + +void fn_1_29B8(s32 arg0) { +} + +void fn_1_29BC(ModelData* arg0, Mtx arg1) { + StructM423_03* temp_r30; + StructM423_02* temp_r31; + Mtx sp8; + s16 i; + + temp_r30 = arg0->unk_120; + GXLoadPosMtxImm(arg1, GX_PNMTX0); + PSMTXInvXpose(arg1, sp8); + GXLoadNrmMtxImm(sp8, GX_PNMTX0); + GXSetLineWidth(6, GX_TO_ZERO); + GXSetNumTevStages(1); + GXSetNumTexGens(0); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_RASC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_VTX, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_CLAMP, GX_AF_NONE); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(GX_FALSE); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + for (i = 0; i < temp_r30->unk02; i++) { + temp_r31 = &temp_r30->unk04[i]; + if (temp_r31->unk38 && temp_r31->unk34 != 0) { + DCFlushRangeNoSync(temp_r31->unk14, temp_r31->unk00 * sizeof(*temp_r31->unk14)); + DCFlushRangeNoSync(temp_r31->unk1C, temp_r31->unk00 * sizeof(*temp_r31->unk1C)); + PPCSync(); + GXSetArray(GX_VA_POS, temp_r31->unk14, sizeof(*temp_r31->unk14)); + GXSetArray(GX_VA_CLR0, temp_r31->unk1C, sizeof(*temp_r31->unk1C)); + GXCallDisplayList(temp_r31->unk38, temp_r31->unk34); + } + } +} + +void fn_1_2C08(s32 arg0) { + Vec sp3C; + Vec sp30; + Vec sp24; + Vec* var_r25; + Vec* var_r24; + Vec* temp_r27; + Vec* temp_r29; + float temp_f31; + float temp_f28; + float temp_f30; + float var_f29; + float var_f27; + StructM423_02* temp_r30; + StructM423_01* var_r28; + StructBssA8Data* var_r31; + StructM423_03* var_r17; + ModelData* sp20; + ModelData* sp1C; + StructM423_01* sp18; + s32 var_r20; + s32 temp_r19; + s32 temp_r18; + s32 i; + s32 j; + s32 k; + s32 temp_r21; + s32 sp14; + s32 sp10; + s32 spC; + Mtx sp48; + + sp20 = &Hu3DData[arg0]; + var_r17 = sp20->unk_120; + temp_r30 = var_r17->unk04; + var_r25 = temp_r30->unk14; + var_r24 = temp_r30->unk18; + var_r28 = temp_r30->unk20; + if (lbl_1_bss_A8 == NULL) { + return; + } + var_r31 = lbl_1_bss_A8->data; + for (i = 0; i < temp_r30->unk00; i++, var_r25++, var_r24++, var_r28++) { + if (var_r28->unk04 != 0) { + continue; + } + PSVECSubtract(var_r24, var_r25, &sp30); + temp_f31 = PSVECMag(&sp30); + if (temp_f31 >= 0.0f) { + PSVECScale(&sp30, &sp30, 0.05f); + PSVECAdd(&var_r28->unk08, &sp30, &var_r28->unk08); + temp_f31 = PSVECMag(&var_r28->unk08); + if (temp_f31 > 10.0f) { + PSVECNormalize(&var_r28->unk08, &var_r28->unk08); + PSVECScale(&var_r28->unk08, &var_r28->unk08, 10.0f); + } + } + PSVECAdd(var_r25, &var_r28->unk08, var_r25); + PSVECScale(&var_r28->unk08, &var_r28->unk08, 0.5f); + } + for (i = 0; i < 15; i++, var_r31++) { + if (var_r31->unk06 == 0 || var_r31->unk0C != 3) { + continue; + } + spC = 0; + PSVECSubtract(&var_r31->unk38, &var_r31->unk74, &sp30); + if (var_r31->unk38.x > -225.0f && var_r31->unk38.x < 225.0f + && var_r31->unk38.y > 0.0f && var_r31->unk38.y < 200.0f + && var_r31->unk38.z > -1150.0f && var_r31->unk38.z < -950.0f) + { + var_f27 = 0.005f * var_r31->unk38.y; + var_f29 = -900.0f - (150.0f + var_f27 * 50.0f); + if (var_r31->unk38.z - 20.0 < var_f29) { + if (var_r31->unk38.z < 20.0 + (var_f29 - 75.0f)) { + var_r31->unk38.z = 20.0 + (var_f29 - 75.0f); + } + spC = 1; + } + } + if (spC != 0) { + if (var_r31->unk0A == 0 && var_r31->unk08 == 0) { + fn_1_AEE8(i); + } + if (var_r31->unk10 == 0) { + var_r31->unk5C = var_r31->unk50; + var_r31->unk10 = 1; + } + sp1C = &Hu3DData[var_r31->unk00]; + sp24.x = var_r31->unk5C.z; + sp24.z = -var_r31->unk5C.x; + sp24.y = 0.0f; + temp_f31 = 0.05 * PSVECMag(&sp24); + if (temp_f31 > 0.00001f) { + PSMTXRotAxisRad(sp48, &sp24, temp_f31); + PSMTXConcat(sp48, sp1C->unk_F0, sp1C->unk_F0); + } + temp_f31 = 0.0133333336f * fabs(var_f29 - (var_r31->unk38.z - 20.0)); + var_r31->unk50.z += temp_f31 * 0.4f; + PSVECScale(&var_r31->unk50, &var_r31->unk50, 0.95f); + var_r31->unk50.y *= 0.0f; + var_r31->unk50.x *= 0.75f; + sp14 = (var_r31->unk38.x - -225.0f) / 22.5f; + sp10 = var_r31->unk38.y / 20.0f; + var_r20 = sp14 + sp10 * temp_r30->unk02; + var_r25 = &temp_r30->unk14[var_r20]; + var_r24 = &temp_r30->unk18[var_r20]; + var_r28 = &temp_r30->unk20[var_r20]; + temp_f28 = var_r24->z - (var_r31->unk38.z - 20.0); + sp3C = var_r31->unk38; + if (temp_f28 < 0.0f) { + continue; + } + for (j = -19; j < 20; j++) { + for (k = -19; k < 20; k++) { + temp_r19 = sp14 + k; + temp_r18 = sp10 + j; + temp_r21 = temp_r19 + temp_r18 * temp_r30->unk02; + if (temp_r19 < 0 || temp_r19 >= temp_r30->unk02 || temp_r18 < 0 || temp_r18 >= temp_r30->unk04 || temp_r21 >= temp_r30->unk00) { + continue; + } + sp18 = &temp_r30->unk20[temp_r21]; + if (sp18->unk04 != 0) { + continue; + } + temp_r29 = &temp_r30->unk14[temp_r21]; + temp_r27 = &temp_r30->unk18[temp_r21]; + PSVECSubtract(&sp3C, temp_r29, &sp30); + sp30.z = 0.0f; + temp_f31 = PSVECMag(&sp30); + if (temp_f31 > 400.0f) { + continue; + } + if (temp_f31 > 20.0) { + temp_f30 = 0.0025f * (400.0f - temp_f31); + temp_f30 = temp_f30 * temp_f30; + PSVECNormalize(&sp30, &sp30); + PSVECScale(&sp30, &sp30, 20.0f * (temp_f30 * temp_f30)); + temp_r29->x += 0.5f * (temp_r27->x + sp30.x - temp_r29->x); + temp_r29->y += 0.5f * (temp_r27->y + sp30.y - temp_r29->y); + temp_r29->z += 0.5f * (temp_r27->z - temp_f30 * temp_f28 - temp_r29->z); + } else { + temp_f30 = cosd(0.0025f * temp_f31 * 90.0f); + if (temp_f31 != 0.0f) { + PSVECNormalize(&sp30, &sp30); + } else { + sp30.x = sp30.y = sp30.z = 0.0f; + } + PSVECScale(&sp30, &sp30, temp_f30 * temp_f30 * 20.0f); + temp_r29->z += 0.5f * (temp_r27->z - temp_f30 * temp_f28 - temp_r29->z); + } + } + } + } else { + var_r31->unk10 = 0; + } + } + DCFlushRangeNoSync(temp_r30->unk14, temp_r30->unk00 * sizeof(*temp_r30->unk14)); + PPCSync(); +} + +void fn_1_34D8(void) { + lbl_1_bss_CC = omAddObjEx(lbl_1_bss_120, 0x81, 20, 6, -1, fn_1_3528); +} + +Vec lbl_1_data_3B8[] = { + -1300.0f, 300.0f, -2350.0f, + -800.0f, 200.0f, -2250.0f, + 800.0f, 200.0f, -2250.0f, + 1300.0f, 300.0f, -2350.0f, + -1000.0f, 300.0f, -2350.0f, + 1000.0f, 300.0f, -2350.0f, + -1200.0f, 400.0f, -2450.0f, + -800.0f, 400.0f, -2450.0f, + 800.0f, 400.0f, -2450.0f, + 1200.0f, 400.0f, -2450.0f, + -1400.0f, 200.0f, -2250.0f, + 1400.0f, 200.0f, -2250.0f, + -1400.0f, 400.0f, -2450.0f, + 1400.0f, 400.0f, -2450.0f, + -900.0f, 500.0f, -2550.0f, + 900.0f, 500.0f, -2550.0f, + -1200.0f, 500.0f, -2550.0f, + 1200.0f, 500.0f, -2550.0f, + -1100.0f, 200.0f, -2250.0f, + 1100.0f, 200.0f, -2250.0f +}; + +s32 lbl_1_data_4A8[] = { + 0, 1, 0, 1, 2, 2, 1, 0, + 1, 2, 0, 1, 2, 0, 1, 2, + 0, 1, 2, 1, 0 +}; + +s32 lbl_1_data_4FC[] = { + DATA_MAKE_NUM(DATADIR_M423, 12), + DATA_MAKE_NUM(DATADIR_M423, 15), + DATA_MAKE_NUM(DATADIR_M423, 18) +}; + +s32 lbl_1_data_508[] = { + DATA_MAKE_NUM(DATADIR_M423, 13), + DATA_MAKE_NUM(DATADIR_M423, 14), + DATA_MAKE_NUM(DATADIR_M423, 16), + DATA_MAKE_NUM(DATADIR_M423, 17), + DATA_MAKE_NUM(DATADIR_M423, 19), + DATA_MAKE_NUM(DATADIR_M423, 20) +}; + +s16 lbl_1_data_520[] = { 0, 2, 4 }; + +void fn_1_3528(omObjData* arg0) { + float var_f30; + float var_f29; + float temp_f31; + StructBssCCData* var_r30; + s32 temp_r27; + s32 var_r28; + s32 i; + + var_r30 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 20 * sizeof(*var_r30), MEMORY_DEFAULT_NUM); + memset(var_r30, 0, 20 * sizeof(*var_r30)); + for (i = 0; i < 6; i++) { + arg0->motion[i] = Hu3DMotionCreateFile(lbl_1_data_508[i]); + } + for (i = 0; i < 20; i++, var_r30++) { + temp_r27 = lbl_1_data_4A8[i]; + var_r30->unk00 = temp_r27; + var_r30->unk02 = 0; + var_r30->unk04 = 0; + var_r30->unk08 = 0; + var_r30->unk0A = 0; + var_r30->unk06 = 210.0f + (1.0f / 127) * frand7() * 60.0f; + var_f30 = -lbl_1_data_3B8[i].x; + var_f29 = -lbl_1_data_3B8[i].z; + temp_f31 = atan2d(var_f30, var_f29); + var_r28 = Hu3DModelCreateFile(lbl_1_data_4FC[temp_r27]); + arg0->model[i] = var_r28; + Hu3DModelCameraSet(var_r28, 4); + Hu3DModelPosSet(var_r28, lbl_1_data_3B8[i].x, lbl_1_data_3B8[i].y, lbl_1_data_3B8[i].z); + if (var_r30->unk00 != 1) { + Hu3DModelRotSet(var_r28, 0.0f, temp_f31, 0.0f); + } else { + Hu3DModelRotSet(var_r28, 10.0f, temp_f31, 0.0f); + } + Hu3DModelScaleSet(var_r28, 1.8f, 1.8f, 1.8f); + Hu3DMotionSet(arg0->model[i], arg0->motion[lbl_1_data_520[var_r30->unk00]]); + if ((i >= 14 && i <= 17) || i == 11 || i == 10) { + Hu3DModelAttrSet(var_r28, 1); + } + } + arg0->stat |= 0x100; + arg0->func = fn_1_3898; +} + +s16 lbl_1_data_526[] = { 0, 2, 4 }; +s16 lbl_1_data_52C[] = { 1, 3, 5, 0 }; + +void fn_1_3898(omObjData* arg0) { + StructBssCCData* var_r31; + s32 var_r28; + s32 i; + + var_r31 = arg0->data; + for (i = 0; i < 20; i++, var_r31++) { + var_r28 = 0; + if (var_r31->unk06 > 0) { + var_r28 = 1; + var_r31->unk06--; + } else if (var_r31->unk0A > 0) { + if (var_r31->unk08 > 0) { + var_r31->unk08--; + } else if (var_r31->unk0A > 0) { + var_r28 = 1; + var_r31->unk0A--; + } else { + var_r31->unk08 = 0; + var_r31->unk0A = 0; + } + } + if (var_r28 != var_r31->unk02 && Hu3DMotionShiftIDGet(arg0->model[i]) == -1) { + var_r31->unk02 = var_r28; + if (var_r31->unk02 == 0) { + Hu3DMotionShiftSet(arg0->model[i], arg0->motion[lbl_1_data_526[var_r31->unk00]], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } else { + Hu3DMotionShiftSet(arg0->model[i], arg0->motion[lbl_1_data_52C[var_r31->unk00]], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + } + } +} + +void fn_1_3A58(omObjData* arg0) { + arg0->func = NULL; +} + +void fn_1_3A64(void) { + fn_1_3A58(lbl_1_bss_CC); +} + +void fn_1_3A8C(void) { + omObjData* var_r29; + StructBssCCData* var_r31; + s32 i; + + if (lbl_1_bss_CC == NULL) { + return; + } + var_r29 = lbl_1_bss_CC; + var_r31 = var_r29->data; + for (i = 0; i < 20; i++, var_r31++) { + if (var_r31->unk06 > 0 || var_r31->unk0A > 0) { + var_r31->unk08 = 0; + } else { + var_r31->unk08 = (1.0f / 127) * frand7() * 0.25f * 60.0f; + } + var_r31->unk0A = ((1.0f / 127) * frand7() + 2.0f) * 60.0f; + } +} + +void fn_1_3BFC(void) { + s32 sp8[4]; + s32 temp_r28; + s32 temp_r27; + s32 var_r25; + s32 var_r26; + s32 var_r29; + s32 i; + s32 j; + + for (i = 0; i < 4; i++) { + sp8[i] = -1; + } + for (i = 0, var_r29 = 0; i < 4; i++) { + if (GWPlayerCfgGroupGet(i) == 0) { + sp8[3] = i; + } else { + sp8[var_r29] = i; + var_r29++; + } + } + for (i = 0; i < 4; i++) { + if (sp8[i] == -1) { + break; + } + } + if (i < 4) { + sp8[0] = 1; + sp8[1] = 2; + sp8[2] = 3; + sp8[3] = 0; + } else { + for (i = 0; i < 32; i++) { + temp_r28 = (s16) (frand() & 0xFFF) % 3; + temp_r27 = (s16) (frand() & 0xFFF) % 3; + if (temp_r28 != temp_r27) { + var_r29 = sp8[temp_r27]; + sp8[temp_r27] = sp8[temp_r28]; + sp8[temp_r28] = var_r29; + } + } + } + var_r25 = 1; + for (i = 0, var_r26 = 0; i < 4; i++) { + lbl_1_bss_BC[i] = omAddObjEx(lbl_1_bss_120, 0x40, 4, 11, -1, fn_1_3FE0); + lbl_1_bss_BC[i]->work[0] = i; + if (i == sp8[3]) { + lbl_1_bss_EC[3] = GWPlayerCfg[lbl_1_bss_BC[i]->work[0]].character; + lbl_1_bss_BC[i]->work[1] = 0; + lbl_1_bss_BC[i]->work[2] = 0; + if (GWPlayerCfg[lbl_1_bss_BC[i]->work[0]].iscom) { + lbl_1_bss_FC = 1; + } + } else { + lbl_1_bss_EC[var_r26] = GWPlayerCfg[lbl_1_bss_BC[i]->work[0]].character; + var_r26++; + lbl_1_bss_BC[i]->work[1] = 1; + for (j = 0; j < 3; j++) { + if (i == sp8[j]) { + break; + } + } + if (j >= 3) { + j = i - 1; + } + lbl_1_bss_BC[i]->work[2] = j; + lbl_1_bss_AC[j] = lbl_1_bss_BC[i]; + if (!GWPlayerCfg[lbl_1_bss_BC[i]->work[0]].iscom) { + var_r25 = 0; + } + } + } + if (var_r25 != 0) { + lbl_1_bss_FC = 0; + } +} + +u32 lbl_1_data_534[][2] = { + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), -1 }, + { 0, 0 }, + { 0, 1 }, + { 0, 2 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 24), -1 } +}; + +s32 lbl_1_data_574[] = { + DATA_MAKE_NUM(DATADIR_M423, 58), + DATA_MAKE_NUM(DATADIR_M423, 26), + DATA_MAKE_NUM(DATADIR_M423, 34) +}; + +u32 lbl_1_data_580[][2] = { + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), -1 }, + { 0, 0 }, + { 0, 1 }, + { 0, 2 }, + { 0, 3 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 11), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 24), -1 } +}; + +s32 lbl_1_data_5D8[] = { + DATA_MAKE_NUM(DATADIR_M423, 42), + DATA_MAKE_NUM(DATADIR_M423, 66), + DATA_MAKE_NUM(DATADIR_M423, 50), + DATA_MAKE_NUM(DATADIR_M423, 74) +}; + +void fn_1_3FE0(omObjData* arg0) { + float var_f31; + StructBssBCData* temp_r31; + s32 i; + + temp_r31 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(*temp_r31), MEMORY_DEFAULT_NUM); + memset(temp_r31, 0, sizeof(*temp_r31)); + temp_r31->unk00 = arg0->work[0]; + temp_r31->unk02 = GWPlayerCfg[arg0->work[0]].character; + temp_r31->unk04 = GWPlayerCfg[arg0->work[0]].pad_idx; + temp_r31->unk06 = GWPlayerCfg[arg0->work[0]].iscom; + temp_r31->unk08 = GWPlayerCfg[arg0->work[0]].diff; + temp_r31->unk0A = arg0->work[1]; + temp_r31->unk0C = arg0->work[2]; + memset(&temp_r31->unk1C, 0, sizeof(temp_r31->unk1C)); + temp_r31->unk58 = 0; + temp_r31->unk5C = -1; + temp_r31->unk60 = 0.0f; + temp_r31->unk64 = -1; + temp_r31->unk68 = 0; + temp_r31->unk6C = 0; + temp_r31->unk70 = 0; + temp_r31->unk74 = 0; + temp_r31->unk16 = -1; + temp_r31->unk88 = 0.0f; + temp_r31->unk8C = 0.0f; + temp_r31->unk90 = 0; + temp_r31->unk94 = 0; + temp_r31->unk98 = 0; + temp_r31->unk9C = 0; + temp_r31->unkA0 = 0; + temp_r31->unkA4 = 0; + temp_r31->unkA8 = 0.0f; + temp_r31->unkAC = 0; + arg0->model[0] = CharModelCreate(temp_r31->unk02, 4); + Hu3DModelCameraSet(arg0->model[0], 5); + Hu3DModelShadowSet(arg0->model[0]); + Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_CURVE_MOTOFF); + CharModelStepTypeSet(temp_r31->unk02, 2); + if (temp_r31->unk0A == 0) { + for (i = 0; i < 11; i++) { + if (lbl_1_data_580[i][1] == -1) { + arg0->motion[i] = CharModelMotionCreate(temp_r31->unk02, lbl_1_data_580[i][0]); + } else { + arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_5D8[lbl_1_data_580[i][1]] + temp_r31->unk02); + } + } + temp_r31->unk16 = 0; + temp_r31->unk18 = 0; + CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); + Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_LOOP); + temp_r31->unkB0 = arg0->trans.x = lbl_1_data_150[0].x; + temp_r31->unkB4 = arg0->trans.y = lbl_1_data_150[0].y; + temp_r31->unkB8 = arg0->trans.z = lbl_1_data_150[0].z; + temp_r31->unkBC = lbl_1_data_180[0].x; + temp_r31->unkC0 = lbl_1_data_180[0].y; + temp_r31->unkC4 = lbl_1_data_180[0].z; + temp_r31->unk78 = 0.0f; + temp_r31->unk7C = 0.0f; + temp_r31->unkE0 = temp_r31->unkE4 = temp_r31->unkE8 = 0.0f; + temp_r31->unkEC = temp_r31->unkF0 = temp_r31->unkF4 = 0.0f; + temp_r31->unk7C = 6.5f; + var_f31 = 0.0f; + for (i = 0; i < 1000; i++) { + var_f31 += temp_r31->unk7C; + temp_r31->unk7C -= 0.49f; + if (var_f31 <= 0.0f) { + break; + } + } + temp_r31->unk80 = i; + temp_r31->unk7C = 10.5f; + var_f31 = 0.0f; + for (i = 0; i < 1000; i++) { + var_f31 += temp_r31->unk7C; + temp_r31->unk7C -= 0.65333337f; + if (var_f31 <= 0.0f) { + break; + } + } + temp_r31->unk84 = i; + arg0->func = fn_1_5D18; + } else { + for (i = 0; i < 8; i++) { + if (lbl_1_data_534[i][1] == -1) { + arg0->motion[i] = CharModelMotionCreate(temp_r31->unk02, lbl_1_data_534[i][0]); + } else { + arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_574[lbl_1_data_534[i][1]] + temp_r31->unk02); + } + } + temp_r31->unk16 = 0; + temp_r31->unk18 = 0; + CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); + Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_LOOP); + temp_r31->unkB0 = lbl_1_data_150[temp_r31->unk0C + 1].x; + temp_r31->unkB4 = lbl_1_data_150[temp_r31->unk0C + 1].y; + temp_r31->unkB8 = lbl_1_data_150[temp_r31->unk0C + 1].z; + temp_r31->unkBC = arg0->trans.x = lbl_1_data_180[temp_r31->unk0C + 1].x; + temp_r31->unkC0 = arg0->trans.y = lbl_1_data_180[temp_r31->unk0C + 1].y; + temp_r31->unkC4 = arg0->trans.z = lbl_1_data_180[temp_r31->unk0C + 1].z; + temp_r31->unk78 = atan2d(lbl_1_data_150[0].x - temp_r31->unkB0, lbl_1_data_150[0].z - temp_r31->unkB8); + temp_r31->unk7C = 0.0f; + temp_r31->unk98 = 0; + temp_r31->unk9C = 300.0f + (1.0f / 127) * frand7() * 60.0f * 15.0f; + if (lbl_1_bss_FC != 0) { + temp_r31->unk08 = 3; + } + arg0->func = fn_1_4778; + } + CharModelMotionDataClose(temp_r31->unk02); +} + +Vec lbl_1_data_5E8 = { 0.0f, 20.0f, 50.0f }; +GXColor lbl_1_data_5F4 = { 0xFF, 0xFF, 0xFF, 0x10 }; +GXColor lbl_1_data_5F8 = { 0xFF, 0xFF, 0xFF, 0x40 }; + +void fn_1_4778(omObjData* arg0) { + Mtx sp11C; + Vec sp110; + Vec sp104; + Vec spF8; + float temp_f27; + float temp_f29; + float temp_f30; + float var_f25; + StructBssBCData* temp_r31; + ModelData* temp_r27; + s32 temp_r26; + s16 var_r25; + s16 var_r24; + s16 var_r29; + s16 var_r28; + + temp_r31 = arg0->data; + temp_r27 = &Hu3DData[arg0->model[0]]; + temp_r31->unk0E = HuPadBtn[temp_r31->unk04]; + temp_r31->unk10 = HuPadBtnDown[temp_r31->unk04]; + temp_r31->unk12 = HuPadStkX[temp_r31->unk04]; + temp_r31->unk14 = HuPadStkY[temp_r31->unk04]; + if (fn_1_F00() == 6) { + if (temp_r31->unk06 != 0) { + temp_r31->unk0E &= ~PAD_BUTTON_A; + temp_r31->unk10 &= ~PAD_BUTTON_A; + temp_r31->unk12 = 0; + temp_r31->unk14 = 0; + fn_1_8338(arg0); + } + var_r25 = temp_r31->unk0E; + var_r24 = temp_r31->unk10; + var_r29 = temp_r31->unk12; + var_r28 = temp_r31->unk14; + } + if (fabs(var_r29) < 8.0) { + var_r29 = 0; + } + if (fabs(var_r29) > 80.0) { + var_r29 = 80; + } + if (fabs(var_r28) < 8.0) { + var_r28 = 0; + } + if (fabs(var_r28) > 80.0) { + var_r28 = 80; + } + if (fn_1_F00() != 6) { + var_r29 = var_r28 = 0; + var_r25 = var_r24 = 0; + } + switch (temp_r31->unk18) { + case 0: + if (fn_1_F00() < 3) { + break; + } + spF8.x = temp_r31->unkB0 - arg0->trans.x; + spF8.z = temp_r31->unkB8 - arg0->trans.z; + temp_f29 = VECMagXZ(&spF8); + if (temp_f29 > 25.0f) { + spF8.x = temp_r31->unkB0 - arg0->trans.x; + spF8.z = temp_r31->unkB8 - arg0->trans.z; + temp_f30 = atan2d(spF8.x, spF8.z); + arg0->rot.y = fn_1_122F4(temp_f30, arg0->rot.y, 15.0f); + arg0->trans.x += 25.0 * sind(arg0->rot.y) * 0.5; + arg0->trans.z += 25.0 * cosd(arg0->rot.y) * 0.5; + if (temp_r31->unk16 != 2) { + temp_r31->unk16 = 2; + CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); + Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_LOOP); + } + break; + } + arg0->trans.x = temp_r31->unkB0; + arg0->trans.z = temp_r31->unkB8; + temp_r31->unk18 = 1; + if (temp_r31->unk16 != 0) { + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + break; + case 1: + arg0->rot.y = fn_1_122F4(0.0f, arg0->rot.y, 5.0f); + if (fabs(fn_1_121DC(arg0->rot.y, 0.0f)) < 1.0) { + arg0->rot.y = 0.0f; + temp_r31->unk18 = 2; + } + break; + case 2: + temp_r31->unk18 = 3; + break; + case 3: + arg0->rot.y = fn_1_122F4(0.0f, arg0->rot.y, 10.0f); + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 10; + temp_r31->unk68 = 0; + break; + } + if (fabs(fn_1_121DC(arg0->rot.y, 0.0f)) < 1.0) { + arg0->rot.y = 0.0f; + sp104 = lbl_1_data_5E8; + mtxRot(sp11C, arg0->rot.x, arg0->rot.y, arg0->rot.z); + fn_1_1293C(sp11C, &sp104); + sp104.x += arg0->trans.x; + sp104.y += arg0->trans.y; + sp104.z += arg0->trans.z; + if (fn_1_F00() <= 6 && (temp_r31->unk5C = fn_1_A9D4(temp_r31->unk02, lbl_1_data_1B0[temp_r31->unk0C], sp104)) != -1) { + temp_r31->unk18 = 4; + temp_r31->unk68 = 0; + } + } + break; + case 4: + temp_r26 = fn_1_AE64(temp_r31->unk5C); + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 10; + temp_r31->unk68 = 0; + break; + } + if (temp_r26 == -1 || temp_r31->unk5C == -1) { + temp_r31->unk18 = 3; + break; + } + if (temp_r26 == 2) { + if (++temp_r31->unk68 >= 6.0f) { + HuAudFXPlay(0x61A); + temp_r31->unk18 = 5; + temp_r31->unk68 = 0; + } + break; + } + if (++temp_r31->unk68 >= 54.0f && temp_r31->unk16 != 3) { + temp_r31->unk16 = 3; + CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + } + break; + case 5: + temp_f30 = fabs(fn_1_121DC(arg0->rot.y, temp_r31->unk78)); + if (temp_f30 < 10.0f) { + arg0->rot.y += temp_f30; + } else { + arg0->rot.y += 10.0f; + } + sp104 = lbl_1_data_5E8; + mtxRot(sp11C, arg0->rot.x, arg0->rot.y, arg0->rot.z); + fn_1_1293C(sp11C, &sp104); + sp104.x += arg0->trans.x; + sp104.y += arg0->trans.y; + sp104.z += arg0->trans.z; + fn_1_AC0C(temp_r31->unk5C, sp104); + spF8.x = 0.0f; + spF8.y = 1.0f; + spF8.z = 1.0f; + sp104.y = 0.0f; + fn_1_DD70(sp104, spF8, 50.0f, -0.5f, 10.0f, 1.0f, lbl_1_data_5F4); + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 10; + temp_r31->unk68 = 0; + break; + } + if (fabs(fn_1_121DC(arg0->rot.y, temp_r31->unk78)) < 1.0) { + temp_r31->unkC8 = sp104; + temp_r31->unk18 = 6; + temp_r31->unk68 = 0; + } + break; + case 6: + sp110.x = 0.0125f * var_r29 * 300.0f; + sp110.y = -900.0f; + sp110.z = -900.0f; + temp_f30 = atan2d(sp110.x - temp_r31->unkC8.x, sp110.z - temp_r31->unkC8.z); + arg0->rot.y = fn_1_122F4(temp_f30, arg0->rot.y, 5.0f); + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 10; + temp_r31->unk68 = 0; + break; + } + if (var_r24 & PAD_BUTTON_A) { + temp_r31->unk16 = 4; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + temp_r27->unk_88 = 0.5f; + temp_r31->unkD4 = sp110; + temp_r31->unk18 = 7; + temp_r31->unk68 = 0; + } + break; + case 7: + temp_r31->unk68++; + if (temp_r31->unk68 > 90.0f) { + temp_r31->unk68 = 90; + } + temp_f29 = 0.011111111f * temp_r31->unk68; + sp110.x = 0.0125f * var_r29 * 300.0f; + sp110.y = -900.0f; + sp110.z = -900.0f; + temp_f30 = atan2d(sp110.x - temp_r31->unkC8.x, sp110.z - temp_r31->unkC8.z); + arg0->rot.y = fn_1_122F4(temp_f30, arg0->rot.y, 5.0f); + temp_r31->unkD4 = sp110; + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 10; + temp_r31->unk68 = 0; + break; + } + if (!(var_r25 & PAD_BUTTON_A)) { + var_f25 = 15.000001f + 30.0f * temp_f29; + temp_r31->unk60 = var_f25; + temp_r31->unk16 = 5; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + temp_r27->unk_88 = 0.5f + 1.5f * temp_f29; + temp_r31->unk18 = 8; + temp_r31->unk68 = 0; + } + break; + case 8: + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 10; + temp_r31->unk68 = 0; + break; + } + if (CharModelMotionTimeGet(temp_r31->unk02) >= 10.0f && CharModelMotionShiftIDGet(temp_r31->unk02) == -1) { + temp_r26 = fn_1_AE64(temp_r31->unk5C); + if (temp_r26 == -1 || temp_r31->unk5C == -1) { + temp_r31->unk18 = 3; + } + PSVECSubtract(&temp_r31->unkD4, &temp_r31->unkC8, &spF8); + PSVECNormalize(&spF8, &spF8); + temp_f27 = 15.0f; + spF8.x *= temp_r31->unk60 * cosd(temp_f27); + spF8.z *= temp_r31->unk60 * cosd(temp_f27); + spF8.y = temp_r31->unk60 * sind(temp_f27); + fn_1_AC80(temp_r31->unk5C, spF8); + temp_r31->unk5C = -1; + HuAudFXPlay(0x61F); + sp104 = temp_r31->unkC8; + sp104.y += 75.0f; + spF8.x = 0.0f; + spF8.y = 1.0f; + spF8.z = 1.0f; + sp104.y = 0.0f; + fn_1_DC24(sp104, spF8, 50.0f, -0.5f, 1.0f, lbl_1_data_5F8); + temp_f29 = (temp_r31->unk60 - 15.000001f) / 30.0f; + if (temp_f29 > 0.66f) { + HuAudFXPlay(0x61B); + } else if (temp_f29 > 0.33f) { + HuAudFXPlay(0x61C); + } else { + HuAudFXPlay(0x61D); + } + temp_r31->unk18 = 9; + temp_r31->unk68 = 0; + } + break; + case 9: + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 10; + temp_r31->unk68 = 0; + break; + } + if (++temp_r31->unk68 >= 12.0f) { + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk18 = 3; + temp_r31->unk68 = 0; + } + break; + case 10: + arg0->rot.y = fn_1_122F4(0.0f, arg0->rot.y, 10.0f); + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 != 0) { + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + break; + case 11: + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 != 6) { + temp_r31->unk16 = 6; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + } + break; + case 12: + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 != 7) { + temp_r31->unk16 = 7; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + } + break; + } +} + +GXColor lbl_1_data_630 = { 0xFF, 0xFF, 0xFF, 0x14 }; + +void fn_1_5D18(omObjData* arg0) { + Vec sp60; + Vec sp54; + Vec sp48; + float var_f30; + float var_f31; + float var_f29; + StructBssBCData* temp_r31; + ModelData* temp_r27; + s16 var_r26; + s16 var_r25; + s16 var_r28; + s16 var_r24; + s16 i; + + temp_r31 = arg0->data; + temp_r27 = &Hu3DData[arg0->model[0]]; + temp_r31->unk0E = HuPadBtn[temp_r31->unk04]; + temp_r31->unk10 = HuPadBtnDown[temp_r31->unk04]; + temp_r31->unk12 = HuPadStkX[temp_r31->unk04]; + temp_r31->unk14 = HuPadStkY[temp_r31->unk04]; + if (fn_1_F00() == 6) { + if (temp_r31->unk06 != 0) { + temp_r31->unk0E &= ~PAD_BUTTON_A; + temp_r31->unk10 &= ~PAD_BUTTON_A; + temp_r31->unk12 = 0; + temp_r31->unk14 = 0; + fn_1_8CB4(arg0); + } + var_r28 = temp_r31->unk12; + var_r24 = temp_r31->unk14; + } + if (fabs(var_r28) < 8.0) { + var_r28 = 0; + } + if (fabs(var_r28) > 80.0) { + var_r28 = 80; + } + if (fabs(var_r24) < 8.0) { + var_r24 = 0; + } + if (fabs(var_r24) > 80.0) { + var_r24 = 80; + } + switch (temp_r31->unk18) { + case 0: + if (fn_1_F00() >= 6) { + temp_r31->unk18 = 1; + } + break; + case 1: + if (fabs(var_r28) > 8.0) { + var_f30 = 0.125f * var_r28; + } else { + var_f30 = 0.0f; + } + temp_r31->unk1C[temp_r31->unk58] = var_f30; + if (++temp_r31->unk58 >= 15) { + temp_r31->unk58 = 0; + } + for (i = 0, var_f30 = 0.0f; i < 15; i++) { + var_f30 += temp_r31->unk1C[i]; + } + var_f30 *= 0.06666667f; + if (var_f30 > 25.0f) { + var_f30 = 25.0f; + } else if (var_f30 < -25.0f) { + var_f30 = -25.0f; + } + if (0.0f == var_f30) { + var_r25 = 0; + } else if (fabs(var_f30) < 10.0) { + var_r25 = 1; + } else { + var_r25 = 2; + } + if (temp_r31->unk16 != var_r25 && CharModelMotionShiftIDGet(temp_r31->unk02) == -1) { + temp_r31->unk16 = var_r25; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + if (temp_r31->unk16 == 1 && CharModelMotionShiftIDGet(temp_r31->unk02) == -1) { + var_f31 = fabs(0.1f * var_f30); + if (var_f31 < 0.25f) { + var_f31 = 0.25f; + } + CharModelMotionSpeedSet(temp_r31->unk02, var_f31); + } + if (var_r28 == 0.0f) { + var_f29 = 0.0f; + } else if (var_r28 < 0.0f) { + var_f29 = -90.0f; + } else { + var_f29 = 90.0f; + } + if (arg0->rot.y < var_f29 && (arg0->rot.y += 20.0f) > var_f29) { + arg0->rot.y = var_f29; + } + if (arg0->rot.y > var_f29 && (arg0->rot.y -= 20.0f) < var_f29) { + arg0->rot.y = var_f29; + } + arg0->trans.x += var_f30; + arg0->trans.y = 0.0f; + arg0->trans.z = temp_r31->unkB8; + if (arg0->trans.x < -225.0f) { + arg0->trans.x = -225.0f; + } + if (arg0->trans.x > 225.0f) { + arg0->trans.x = 225.0f; + } + if (fn_1_F00() >= 7) { + temp_r31->unk18 = 9; + temp_r31->unk68 = 0; + } else if (temp_r31->unk10 & PAD_BUTTON_A) { + if (var_r28 > 0) { + temp_r27->unk_0C = -1; + temp_r31->unk16 = 3; + CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); + CharModelMotionSpeedSet(temp_r31->unk02, 1.0f); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + temp_r31->unk7C = 6.5f; + temp_r31->unk68 = 0; + arg0->rot.y = 90.0f; + i = 99; + if ((var_r26 = fn_1_B304(lbl_1_bss_40)) != 0) { + for (i = 0; i < var_r26; i++) { + if (lbl_1_bss_40[0]->unk1C < lbl_1_bss_40[0]->unk14 || lbl_1_bss_40[0]->unk1C - lbl_1_bss_40[0]->unk14 > 6.0f) { + continue; + } + if (lbl_1_bss_40[0]->unk1C < 36.0f) { + var_f31 = lbl_1_bss_40[0]->unk68.z - arg0->trans.z; + } else { + var_f31 = lbl_1_bss_40[0]->unk38.z - arg0->trans.z; + } + if (var_f31 < -100.0f) { + continue; + } + var_f31 = fabs(var_f31); + if (var_f31 >= 300.0f) { + temp_r31->unk8C = 13.5f; + } else if (var_f31 <= 100.0f) { + temp_r31->unk8C = 6.5f; + } else { + temp_r31->unk8C = 10.0f; + } + } + } + if (i >= var_r26) { + temp_r31->unk8C = 10.0f; + } + temp_r31->unk18 = 2; + } else if (var_r28 < 0) { + temp_r27->unk_0C = -1; + temp_r31->unk16 = 5; + CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); + CharModelMotionSpeedSet(temp_r31->unk02, 1.0f); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + temp_r31->unk7C = 6.5f; + temp_r31->unk68 = 0; + arg0->rot.y = -90.0f; + i = 99; + if ((var_r26 = fn_1_B304(lbl_1_bss_40)) != 0) { + for (i = 0; i < var_r26; i++) { + if (lbl_1_bss_40[0]->unk1C < lbl_1_bss_40[0]->unk14 || lbl_1_bss_40[0]->unk1C - lbl_1_bss_40[0]->unk14 > 6.0f) { + continue; + } + if (lbl_1_bss_40[0]->unk1C < 36.0f) { + var_f31 = lbl_1_bss_40[0]->unk68.z - arg0->trans.z; + } else { + var_f31 = lbl_1_bss_40[0]->unk38.z - arg0->trans.z; + } + if (var_f31 > 100.0f) { + continue; + } + var_f31 = fabs(var_f31); + if (var_f31 >= 300.0f) { + temp_r31->unk8C = 13.5f; + } else if (var_f31 <= 100.0f) { + temp_r31->unk8C = 6.5f; + } else { + temp_r31->unk8C = 10.0f; + } + } + } + if (i >= var_r26) { + temp_r31->unk8C = 10.0f; + } + temp_r31->unk18 = 4; + } else { + temp_r27->unk_0C = -1; + temp_r31->unk16 = 7; + CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); + CharModelMotionSpeedSet(temp_r31->unk02, 1.0f); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + temp_r31->unk7C = 10.5f; + temp_r31->unk68 = 0; + arg0->rot.y = 0.0f; + temp_r31->unk18 = 7; + } + } + break; + case 2: + arg0->trans.x += temp_r31->unk8C; + if (arg0->trans.x > 225.0f) { + arg0->trans.x = 225.0f; + } + arg0->trans.y += temp_r31->unk7C; + temp_r31->unk7C -= 0.49f; + temp_r31->unk68++; + if (temp_r31->unk68 == temp_r31->unk80 - 12.0f) { + temp_r31->unk16 = 4; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + } + if (arg0->trans.y <= 0.0f) { + for (i = 0; i < 6; i++) { + sp48.x = sind(-90.0f + 30.0f * i); + sp48.z = cosd(-90.0f + 30.0f * i); + sp48.y = 0.0f; + sp54.x = 100.0f * sp48.x * 0.01f; + sp54.z = 100.0f * sp48.z * 0.01f; + sp54.y = 1.0f; + sp60.x = arg0->trans.x + 100.0f * sp48.x * 0.2; + sp60.z = arg0->trans.z + 100.0f * sp48.z * 0.2; + sp60.y = 0.0f; + fn_1_DD70(sp60, sp54, 50.0f, -0.25f, 20.0f, 0.5f, lbl_1_data_630); + } + arg0->trans.y = 0.0f; + temp_r31->unk18 = 3; + } + break; + case 3: + if (CharModelMotionEndCheck(temp_r31->unk02) && CharModelMotionShiftIDGet(temp_r31->unk02) == -1) { + memset(&temp_r31->unk1C, 0, sizeof(temp_r31->unk1C)); + temp_r31->unk58 = 0; + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk18 = 6; + temp_r31->unkAC = 0; + } + break; + case 4: + arg0->trans.x -= temp_r31->unk8C; + if (arg0->trans.x < -225.0f) { + arg0->trans.x = -225.0f; + } + arg0->trans.y += temp_r31->unk7C; + temp_r31->unk7C -= 0.49f; + temp_r31->unk68++; + if (temp_r31->unk68 == temp_r31->unk80 - 12.0f) { + temp_r31->unk16 = 6; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + } + if (arg0->trans.y <= 0.0f) { + for (i = 0; i < 6; i++) { + sp48.x = sind(-90.0f + 30.0f * i); + sp48.z = cosd(-90.0f + 30.0f * i); + sp48.y = 0.0f; + sp54.x = 100.0f * sp48.x * 0.01f; + sp54.z = 100.0f * sp48.z * 0.01f; + sp54.y = 1.0f; + sp60.x = arg0->trans.x + 100.0f * sp48.x * 0.2; + sp60.z = arg0->trans.z + 100.0f * sp48.z * 0.2; + sp60.y = 0.0f; + fn_1_DD70(sp60, sp54, 50.0f, -0.25f, 20.0f, 0.5f, lbl_1_data_630); + } + arg0->trans.y = 0.0f; + temp_r31->unk18 = 5; + } + break; + case 5: + if (CharModelMotionEndCheck(temp_r31->unk02) && CharModelMotionShiftIDGet(temp_r31->unk02) == -1) { + memset(&temp_r31->unk1C, 0, sizeof(temp_r31->unk1C)); + temp_r31->unk58 = 0; + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk18 = 6; + temp_r31->unkAC = 0; + } + break; + case 6: + if (++temp_r31->unkAC > 0.0f) { + temp_r31->unkAC = 0; + temp_r31->unk18 = 1; + } + break; + case 7: + arg0->trans.y += temp_r31->unk7C; + temp_r31->unk7C -= 0.65333337f; + temp_r31->unk68++; + if (arg0->trans.y <= 0.0f) { + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + arg0->trans.y = 0.0f; + temp_r31->unk68 = 0; + temp_r31->unk18 = 8; + } + break; + case 8: + if (++temp_r31->unk68 > 12.0f) { + memset(&temp_r31->unk1C, 0, sizeof(temp_r31->unk1C)); + temp_r31->unk58 = 0; + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk18 = 1; + } + break; + case 9: + arg0->rot.y = fn_1_122F4(0.0f, arg0->rot.y, 10.0f); + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 != 1) { + temp_r31->unk16 = 1; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 == 1) { + arg0->trans.z += 5.0f; + } + if (arg0->trans.z > lbl_1_data_150->z + 100.0f) { + temp_r31->unk18 = 10; + } + break; + case 10: + arg0->rot.y = fn_1_122F4(0.0f, arg0->rot.y, 10.0f); + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 != 0) { + temp_r31->unk16 = 0; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + break; + case 11: + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 != 9) { + temp_r31->unk16 = 9; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + } + break; + case 12: + if (CharModelMotionShiftIDGet(temp_r31->unk02) == -1 && temp_r31->unk16 != 10) { + temp_r31->unk16 = 10; + CharModelMotionShiftSet(temp_r31->unk02, arg0->motion[temp_r31->unk16], 0.0f, 8.0f, HU3D_MOTATTR_NONE); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_SHIFT_LOOP); + } + break; + } + lbl_1_bss_B8 = arg0; + temp_r31->unkEC = arg0->trans.x - temp_r31->unkE0; + temp_r31->unkF0 = arg0->trans.y - temp_r31->unkE4; + temp_r31->unkF4 = arg0->trans.z - temp_r31->unkE8; + temp_r31->unkE0 = arg0->trans.x; + temp_r31->unkE4 = arg0->trans.y; + temp_r31->unkE8 = arg0->trans.z; +} + +void fn_1_77C4(omObjData* arg0) { + arg0->func = NULL; +} + +void fn_1_77D0(void) { + s32 i; + + for (i = 0; i < 4; i++) { + fn_1_77C4(lbl_1_bss_BC[i]); + } +} + +s32 fn_1_781C(void) { + omObjData* temp_r29; + StructBssBCData* temp_r31; + s32 i; + + for (i = 0; i < 4; i++) { + temp_r29 = lbl_1_bss_BC[i]; + temp_r31 = temp_r29->data; + if (temp_r31->unk0A == 0) { + if (temp_r31->unk18 != 0 || fabs(fn_1_121DC(temp_r29->rot.y, 0.0f)) > 1.0) { + break; + } + } else { + if (temp_r31->unk18 < 5) { + break; + } + } + } + if (i >= 4) { + return 1; + } + return 0; +} + +s32 fn_1_791C(void) { + omObjData* temp_r30; + StructBssBCData* temp_r31; + s32 i; + + for (i = 0; i < 4; i++) { + temp_r30 = lbl_1_bss_BC[i]; + temp_r31 = temp_r30->data; + if (temp_r31->unk0A == 0) { + if (temp_r31->unk18 != 10 || fabs(fn_1_121DC(temp_r30->rot.y, 0.0f)) > 1.0 || CharModelMotionShiftIDGet(temp_r31->unk02) != -1) { + break; + } + } else { + if (temp_r31->unk18 != 10 || fabs(fn_1_121DC(temp_r30->rot.y, 0.0f)) > 1.0 || CharModelMotionShiftIDGet(temp_r31->unk02) != -1) { + break; + } + } + } + if (i >= 4) { + return 1; + } + return 0; +} + +void fn_1_7AA8(s32 arg0) { + omObjData* var_r29; + StructBssBCData* temp_r31; + s32 i; + + for (i = 0; i < 4; i++) { + var_r29 = lbl_1_bss_BC[i]; + temp_r31 = var_r29->data; + if (temp_r31->unk0A == 0) { + if (temp_r31->unk0A == arg0) { + temp_r31->unk18 = 11; + } else { + temp_r31->unk18 = 12; + } + } else { + if (temp_r31->unk0A == arg0) { + temp_r31->unk18 = 11; + } else { + temp_r31->unk18 = 12; + } + } + } +} + +s32 fn_1_7B48(Vec* arg0, Vec* arg1, Vec* arg2, float arg3) { + Vec spA8[4]; + Vec sp78[4]; + Vec sp48[4]; + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; + Vec spC; + float var_f31; + float var_f28; + float var_f30; + float var_f27; + float var_f26; + omObjData* temp_r31; + StructBssBCData* temp_r28; + ModelData* sp8; + + if (lbl_1_bss_B8 == NULL) { + return 0; + } + temp_r31 = lbl_1_bss_B8; + temp_r28 = temp_r31->data; + sp8 = &Hu3DData[temp_r31->model[0]]; + *arg2 = *arg1; + switch (temp_r28->unk18) { + case 2: + case 4: + var_f31 = 150.0f; + var_f28 = 130.0f; + var_f30 = 60.000004f; + var_f27 = 130.0f; + break; + default: + var_f31 = 100.0f; + var_f28 = 130.0f; + var_f30 = 60.000004f; + var_f27 = 0.0f; + break; + } + sp78[0].x = temp_r31->trans.x - 0.5f * var_f31; + sp78[0].y = temp_r31->trans.y + var_f28; + sp78[0].z = temp_r31->trans.z + 0.5f * var_f30; + sp78[1].x = temp_r31->trans.x + 0.5f * var_f31; + sp78[1].y = temp_r31->trans.y + var_f28; + sp78[1].z = temp_r31->trans.z + 0.5f * var_f30; + sp78[2].x = temp_r31->trans.x + 0.5f * var_f31; + sp78[2].y = temp_r31->trans.y - var_f27; + sp78[2].z = temp_r31->trans.z + 0.5f * var_f30; + sp78[3].x = temp_r31->trans.x - 0.5f * var_f31; + sp78[3].y = temp_r31->trans.y - var_f27; + sp78[3].z = temp_r31->trans.z + 0.5f * var_f30; + spA8[0].x = temp_r31->trans.x + 0.5f * var_f31; + spA8[0].y = temp_r31->trans.y + var_f28; + spA8[0].z = temp_r31->trans.z - 0.5f * var_f30; + spA8[1].x = temp_r31->trans.x - 0.5f * var_f31; + spA8[1].y = temp_r31->trans.y + var_f28; + spA8[1].z = temp_r31->trans.z - 0.5f * var_f30; + spA8[2].x = temp_r31->trans.x - 0.5f * var_f31; + spA8[2].y = temp_r31->trans.y - var_f27; + spA8[2].z = temp_r31->trans.z - 0.5f * var_f30; + spA8[3].x = temp_r31->trans.x + 0.5f * var_f31; + spA8[3].y = temp_r31->trans.y - var_f27; + spA8[3].z = temp_r31->trans.z - 0.5f * var_f30; + PSVECNormalize(arg1, &spC); + PSVECScale(&spC, &spC, arg3); + PSVECAdd(arg0, arg1, &sp30); + PSVECAdd(arg0, arg1, &sp24); + PSVECAdd(arg0, &spC, &sp3C); + PSVECAdd(&sp30, &spC, &sp30); + sp48[0] = sp78[0]; + sp48[1] = sp78[1]; + sp48[2] = sp78[2]; + sp48[3] = sp78[3]; + if (fn_1_137C4(sp48, arg0, arg1, &sp18, arg3, 4) != 0) { + arg2->x *= 0.5f; + arg2->z *= -0.5f; + fn_1_82C8(15, 1, 0); + return 1; + } + if (sp24.x >= sp78[0].x - arg3 && sp24.x <= sp78[2].x + arg3 + && sp24.y <= sp78[0].y + arg3 && sp24.y >= sp78[2].y - arg3 + && sp24.z <= sp78[0].z + arg3 && sp24.z >= spA8[3].z - arg3) + { + if (temp_r28->unkEC > 0.0f && sp24.x > temp_r31->trans.x) { + spC = *arg1; + spC.y = 0.0f; + var_f26 = PSVECMag(&spC); + arg2->x = 0.5f * var_f26 + temp_r28->unkEC; + arg2->z = 0.0f; + } else if (temp_r28->unkEC < 0.0f && sp24.x < temp_r31->trans.x) { + spC = *arg1; + spC.y = 0.0f; + var_f26 = PSVECMag(&spC); + arg2->x = -(0.5f * var_f26) + temp_r28->unkEC; + arg2->z = 0.0f; + } else { + if (fabs(arg1->x) > fabs(arg1->z)) { + arg2->x *= -1.0f; + } else { + arg2->z *= -1.0f; + } + arg2->x *= 0.5f; + arg2->z *= 0.5f; + } + fn_1_82C8(15, 1, 0); + return 1; + } + return 0; +} + +void fn_1_82C8(s32 arg0, s32 arg1, s32 arg2) { + omObjData* var_r31; + StructBssBCData* var_r30; + + if (lbl_1_bss_B8 != NULL) { + var_r31 = lbl_1_bss_B8; + var_r30 = var_r31->data; + omVibrate(var_r30->unk00, 12, 6, 6); + HuAudFXPlay(0x61A); + } +} + +s32 lbl_1_data_668[] = { 3, 4, 5, 6 }; +float lbl_1_data_678[] = { 0.6f, 0.65f, 0.7f, 0.7f }; + +s32 lbl_1_data_688[][2] = { + { 30, 60 }, { 24, 48 }, { 12, 24 }, { 0, 12 } +}; + +s32 lbl_1_data_6A8[][2] = { + { 36, 84 }, { 36, 78 }, { 33, 72 }, { 33, 66 } +}; + +void fn_1_8338(omObjData* arg0) { + float var_f31; + float temp_f30; + StructBssBCData* temp_r31; + ModelData* sp8; + s32 var_r29; + + temp_r31 = arg0->data; + sp8 = &Hu3DData[arg0->model[0]]; + var_r29 = temp_r31->unk18; + if (temp_r31->unkA0 == 0) { + temp_r31->unkA0 = 1; + temp_r31->unk70 = 0; + var_r29 = 5; + } + switch (var_r29) { + case 5: + if (temp_r31->unk70 != 0) { + break; + } + if (temp_r31->unk9C > lbl_1_bss_108 && lbl_1_data_668[temp_r31->unk08] > temp_r31->unk98 && lbl_1_bss_B8 != NULL) { + temp_r31->unkA4 = 1; + temp_r31->unkA8 = (1.0f / 127) * frand7(); + if (lbl_1_bss_B8->trans.x >= 270.0f) { + temp_r31->unk88 = -(0.4f + 0.3f * temp_r31->unkA8); + } else if (lbl_1_bss_B8->trans.x <= -270.0f) { + temp_r31->unk88 = 0.4f + 0.3f * temp_r31->unkA8; + } else if (frand() & 1) { + temp_r31->unk88 = -(0.3f + 0.1f * temp_r31->unkA8); + } else { + temp_r31->unk88 = 0.3f + 0.1f * temp_r31->unkA8; + } + var_f31 = lbl_1_data_6A8[3][0]; + temp_f30 = lbl_1_data_6A8[3][1]; + temp_r31->unk70 = var_f31 + (1.0f / 127) * frand7() * (temp_f30 - var_f31); + var_f31 = lbl_1_data_688[temp_r31->unk08][0]; + temp_f30 = lbl_1_data_688[temp_r31->unk08][1]; + temp_r31->unk74 = var_f31 + (1.0f / 127) * frand7() * (temp_f30 - var_f31); + temp_r31->unk98++; + } else { + if (frand() & 1) { + temp_r31->unk88 = (1.0f / 127) * frand7() * lbl_1_data_678[temp_r31->unk08]; + } else { + temp_r31->unk88 = -((1.0f / 127) * frand7()) * lbl_1_data_678[temp_r31->unk08]; + } + var_f31 = lbl_1_data_6A8[temp_r31->unk08][0]; + temp_f30 = lbl_1_data_6A8[temp_r31->unk08][1]; + temp_r31->unk70 = var_f31 + (1.0f / 127) * frand7() * (temp_f30 - var_f31); + var_f31 = lbl_1_data_688[temp_r31->unk08][0]; + temp_f30 = lbl_1_data_688[temp_r31->unk08][1]; + temp_r31->unk74 = var_f31 + (1.0f / 127) * frand7() * (temp_f30 - var_f31); + } + temp_r31->unk6C = 0; + break; + case 6: + if (++temp_r31->unk6C >= temp_r31->unk74) { + temp_r31->unk12 = 80.0f * temp_r31->unk88; + temp_r31->unk10 |= PAD_BUTTON_A; + temp_r31->unk0E |= PAD_BUTTON_A; + temp_r31->unk6C = 0; + return; + } + var_f31 = sind(180.0f * ((temp_r31->unk74 - temp_r31->unk6C) / 60.0f)); + if (temp_r31->unk74 & 1) { + var_f31 *= -1.0f; + } + temp_r31->unk12 = 80.0f * (temp_r31->unk88 + var_f31); + return; + case 7: + if (temp_r31->unkA4 != 0) { + if (lbl_1_bss_B8->trans.x >= 148.5f) { + temp_r31->unk88 = -(0.4f + 0.3f * temp_r31->unkA8); + } else if (lbl_1_bss_B8->trans.x <= -148.5f) { + temp_r31->unk88 = 0.4f + 0.3f * temp_r31->unkA8; + } else if (lbl_1_bss_B8->trans.x > 0.0f) { + temp_r31->unk88 = -(0.5f + 0.2f * temp_r31->unkA8); + } else { + temp_r31->unk88 = 0.5f + 0.2f * temp_r31->unkA8; + } + } + temp_r31->unk12 = 80.0f * temp_r31->unk88; + if (++temp_r31->unk6C > temp_r31->unk70) { + temp_r31->unk88 = 0.0f; + temp_r31->unk6C = 0; + temp_r31->unk70 = 0; + temp_r31->unk74 = 0; + temp_r31->unkA4 = 0; + } else { + temp_r31->unk0E |= PAD_BUTTON_A; + } + break; + default: + temp_r31->unk6C = 0; + break; + } +} + +s32 lbl_1_data_6C8[] = { 60, 45, 30, 15 }; + +float lbl_1_data_6D8[][2] = { + { 200.0f, 150.0f }, { 125.0f, 100.0f }, { 0.0f, 0.0f }, { 0.0f, 0.0f } +}; + +s32 lbl_1_data_6F8[][2] = { + { 48, 150 }, { 39, 114 }, { 33, 90 }, { 21, 42 } +}; + +s32 lbl_1_data_718[][2] = { + { 27, 39 }, { 15, 27 }, { 9, 15 }, { 0, 3 } +}; + +void fn_1_8CB4(omObjData* arg0) { + Vec spC; + float temp_f29; + float temp_f28; + float var_f30; + float var_f31; + float var_f26; + float temp_f27; + StructBssBCData* temp_r31; + ModelData* sp8; + StructBssA8Data* temp_r30; + s32 var_r28; + s32 var_r24; + s32 i, j; + s32 var_r25; + + var_r25 = 0; + temp_r31 = arg0->data; + sp8 = &Hu3DData[arg0->model[0]]; + if (temp_r31->unk64 != -1) { + temp_r30 = fn_1_B13C(temp_r31->unk64); + if (temp_r30 != NULL) { + if (temp_r30->unk0C != 3 || temp_r30->unk08 != 0 || temp_r30->unk38.z <= -900.0f) { + var_r25 = 1; + } + } else { + var_r25 = 1; + } + } else { + var_r25 = 1; + } + if (var_r25 != 0) { + temp_r31->unk64 = -1; + temp_r31->unk6C = 0; + temp_f29 = lbl_1_data_6F8[temp_r31->unk08][0]; + temp_f28 = lbl_1_data_6F8[temp_r31->unk08][1]; + temp_r31->unk90 = temp_f29 + (1.0f / 127) * frand7() * (temp_f28 - temp_f29); + temp_f29 = lbl_1_data_718[temp_r31->unk08][0]; + temp_f28 = lbl_1_data_718[temp_r31->unk08][1]; + temp_r31->unk94 = temp_f29 + (1.0f / 127) * frand7() * (temp_f28 - temp_f29); + temp_r31->unkD4.x = lbl_1_data_6D8[temp_r31->unk08][0] * (0.5f - (1.0f / 127) * frand7()); + temp_r31->unkD4.y = lbl_1_data_6D8[temp_r31->unk08][1] * (0.5f - (1.0f / 127) * frand7()); + if (lbl_1_bss_104 >= 5) { + temp_r31->unkD4.x *= 1.5f; + } + var_r24 = fn_1_B304(lbl_1_bss_4); + if (var_r24 != 0) { + for (i = 0; i < var_r24; i++) { + temp_r30 = lbl_1_bss_4[i]; + if (temp_r30 == NULL || temp_r30->unk06 == 0 + || 0.0f == temp_r30->unk50.z + || fabs(temp_r30->unk38.x) >= 325.0 + || temp_r30->unk14 < temp_r31->unk94) + { + continue; + } + var_r28 = (var_f26 - temp_r30->unk38.z) / temp_r30->unk50.z; + if (var_r28 > 300.0f) { + continue; + } + spC = temp_r30->unk50; + var_f30 = temp_r30->unk38.x; + var_f31 = temp_r30->unk38.y; + for (j = 0; j < var_r28; j++) { + var_f30 += spC.x; + var_f31 += spC.y; + spC.x *= temp_r30->unk8C; + spC.z *= temp_r30->unk8C; + spC.y -= 0.32666668f; + if (var_f31 < 20.0) { + var_f31 = 0.32666668f; + spC.y *= temp_r30->unk90; + } + } + var_f30 += temp_r31->unkD4.x; + var_f31 += temp_r31->unkD4.y; + if (temp_r31->unk08 <= 2 || !(fabs(var_f30) >= 225.0 || var_f31 >= 200.0f)) { + temp_r31->unk64 = temp_r30->unk02; + break; + } + } + } + } + if (temp_r31->unk64 != -1 && (temp_r30 = fn_1_B13C(temp_r31->unk64)) != NULL) { + if (temp_r30->unk38.z > 60.000004f + arg0->trans.z) { + var_f26 = 60.000004f + arg0->trans.z; + var_r28 = (var_f26 - temp_r30->unk38.z) / temp_r30->unk50.z; + if (var_r28 > 300.0f) { + temp_r31->unk64 = -1; + return; + } + spC = temp_r30->unk50; + var_f30 = temp_r30->unk38.x; + var_f31 = temp_r30->unk38.y; + for (j = 0; j < var_r28; j++) { + var_f30 += spC.x; + var_f31 += spC.y; + spC.x *= temp_r30->unk8C; + spC.z *= temp_r30->unk8C; + spC.y -= 0.32666668f; + if (var_f31 < 20.0) { + var_f31 = 0.32666668f; + spC.y *= temp_r30->unk90; + } + } + var_r28 += temp_r31->unk90; + var_f30 += temp_r31->unkD4.x; + var_f31 += temp_r31->unkD4.y; + } else { + var_r28 = 0; + var_f30 = temp_r30->unk38.x; + var_f31 = temp_r30->unk38.y; + } + if (arg0->trans.x - 25.0f > var_f30) { + temp_r31->unk12 = -64; + } + if (arg0->trans.x + 25.0f < var_f30) { + temp_r31->unk12 = 64; + } + temp_f27 = fabs(var_f30 - arg0->trans.x); + if (var_r28 < 10 && temp_f27 > 120.00001f) { + temp_r31->unk10 |= 0x100; + } else if (var_r28 < 5 && temp_f27 < 25.0f && var_f31 > 100.0f) { + temp_r31->unk10 |= 0x100; + } else if (var_r28 > 20 && temp_f27 < 50.0) { + temp_r31->unk10 /= 2; + } + if (++temp_r31->unk6C > lbl_1_data_6C8[temp_r31->unk08]) { + temp_r31->unk64 = -1; + } + } +} + +void fn_1_95C4(void) { + lbl_1_bss_A8 = omAddObjEx(lbl_1_bss_120, 0x50, 0, 0, -1, fn_1_9614); +} + +s32 lbl_1_data_738[] = { + DATA_MAKE_NUM(DATADIR_M423, 4), + DATA_MAKE_NUM(DATADIR_M423, 5), + DATA_MAKE_NUM(DATADIR_M423, 6), + DATA_MAKE_NUM(DATADIR_M423, 7), + DATA_MAKE_NUM(DATADIR_M423, 8), + DATA_MAKE_NUM(DATADIR_M423, 9), + DATA_MAKE_NUM(DATADIR_M423, 10), + DATA_MAKE_NUM(DATADIR_M423, 11) +}; + +void fn_1_9614(omObjData* arg0) { + StructBssA8Data* var_r28; + StructBssA8Data* var_r31; + ModelData* var_r27; + s32 i; + + if (lbl_1_bss_EC[0] == -1) { + return; + } + var_r31 = var_r28 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 15 * sizeof(*var_r31), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, 15 * sizeof(*var_r31)); + for (i = 0; i < 15; i++, var_r31++) { + var_r31->unk04 = i % 3; + var_r31->unk02 = i; + var_r31->unk06 = 0; + var_r31->unk0A = 0; + var_r31->unk08 = 0; + var_r31->unk0C = 0; + var_r31->unk0E = 0; + var_r31->unk10 = 0; + var_r31->unk12 = 0; + var_r31->unk14 = 0; + var_r31->unk18 = 0; + var_r31->unk1C = 0; + var_r31->unk38.x = var_r31->unk38.y = var_r31->unk38.z = 0.0f; + var_r31->unk44 = var_r31->unk48 = var_r31->unk4C = 0.0f; + var_r31->unk50.x = var_r31->unk50.y = var_r31->unk50.z = 0.0f; + var_r31->unk74 = var_r31->unk38; + var_r31->unk80 = var_r31->unk50; + var_r31->unk8C = 0.995f; + var_r31->unk90 = -0.5f; + var_r31->unk68.x = var_r31->unk68.y = var_r31->unk68.z = 0.0f; + if (i < 3) { + var_r31->unk00 = Hu3DModelCreateFile(lbl_1_data_738[lbl_1_bss_EC[var_r31->unk04]]); + } else { + var_r31->unk00 = Hu3DModelLink(var_r28[var_r31->unk04].unk00); + } + Hu3DModelScaleSet(var_r31->unk00, 0.8f, 0.8f, 0.8f); + Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); + Hu3DModelCameraSet(var_r31->unk00, 5); + Hu3DModelShadowSet(var_r31->unk00); + var_r27 = &Hu3DData[var_r31->unk00]; + PSMTXIdentity(var_r27->unk_F0); + } + fn_1_B430(); + arg0->func = fn_1_98A0; +} + +void fn_1_98A0(omObjData* arg0) { + Mtx spC4; + Vec spB8; + Vec spAC; + Vec spA0; + Vec sp94; + Vec sp88; + float temp_f30; + float var_f25; + float var_f31; + float var_f22; + StructBssA8Data* var_r31; + StructBssA8Data* var_r30; + ModelData* temp_r27; + s32 i, j; + s32 var_r25; + s32 var_r23; + s32 var_r28; + + var_r31 = arg0->data; + for (i = 0; i < 15; i++, var_r31++) { + if (var_r31->unk06 == 0) { + continue; + } + temp_r27 = &Hu3DData[var_r31->unk00]; + var_r25 = 0; + switch (var_r31->unk0C) { + case 0: + break; + case 1: + temp_f30 = var_r31->unk14 / 60.0f; + var_r31->unk14++; + if (temp_f30 > 1.0f) { + var_f31 = 1.0f; + } else { + var_f31 = temp_f30; + } + var_r31->unk38.x = var_r31->unk20.x + var_f31 * (var_r31->unk2C.x - var_r31->unk20.x); + var_r31->unk38.z = var_r31->unk20.z + var_f31 * (var_r31->unk2C.z - var_r31->unk20.z); + if (temp_f30 < 0.6f) { + var_f31 = temp_f30 / 0.6f; + var_f25 = 100.0f; + } else if (temp_f30 < 1.0f) { + var_f31 = (temp_f30 - 0.6f) / 0.4f; + var_f25 = 50.0f; + } else { + var_f31 = (temp_f30 - 1.0f) / 0.25f; + var_f25 = 10.0f; + } + var_r31->unk38.y = 20.0 + var_f25 * sind(180.0f * var_f31); + if (var_r31->unk14 >= 75.0f) { + var_r31->unk0C = 2; + var_r31->unk14 = 0; + var_r31->unk38.y = 20.0f; + var_r31->unk50.y = 0.0f; + } + if (var_r31->unk14 < 73.2f) { + spAC.x = var_r31->unk50.z; + spAC.z = -var_r31->unk50.x; + spAC.y = 0.0f; + var_f31 = 0.05 * PSVECMag(&spAC); + if (var_f31 > 0.00001f) { + PSMTXRotAxisRad(spC4, &spAC, var_f31); + PSMTXConcat(spC4, temp_r27->unk_F0, temp_r27->unk_F0); + } + } + Hu3DModelPosSet(var_r31->unk00, var_r31->unk38.x, var_r31->unk38.y, var_r31->unk38.z); + Hu3DModelRotSet(var_r31->unk00, var_r31->unk44, var_r31->unk48, var_r31->unk4C); + break; + case 2: + Hu3DModelPosSet(var_r31->unk00, var_r31->unk38.x, var_r31->unk38.y, var_r31->unk38.z); + Hu3DModelRotSet(var_r31->unk00, var_r31->unk44, var_r31->unk48, var_r31->unk4C); + break; + case 3: + var_r31->unk74 = var_r31->unk38; + var_r31->unk80 = var_r31->unk50; + var_r23 = 0; + if (var_r28 = fn_1_C498(&var_r31->unk38, &var_r31->unk50, &spB8, &sp88, 20.0f, 3)) { + if (var_r28 & 0x8000) { + var_r25 = 1; + } + if (var_r28 & 0x2000) { + } + if ((var_r28 & 0x4000) && var_r31->unk12 == 0 && var_r31->unk08 == 0) { + var_f31 = VECMagXZ(&var_r31->unk50); + sp94.x = 0.0f; + sp94.y = 0.0f; + sp94.z = (1.0f / 127) * frand7() * 360.0f; + fn_1_E334(spB8, sp94, 0.5f); + HuAudFXPlay(0x620); + var_r31->unk12 = 1; + } + var_r31->unk38 = spB8; + var_r31->unk50 = sp88; + var_r31->unk8C = 0.975f; + var_r31->unk90 = -0.5f; + } else { + if (fabs(var_r31->unk38.x) > 1000.0) { + Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); + var_r31->unk0C = 0; + var_r31->unk06 = 0; + var_r31->unk14 = 0; + } else { + var_r31->unk38.x += var_r31->unk50.x; + var_r31->unk38.y += var_r31->unk50.y; + var_r31->unk38.z += var_r31->unk50.z; + } + } + if (var_r31->unk08 == 0) { + for (j = 0, var_r30 = arg0->data; j < 15; j++, var_r30++) { + if (i == j || var_r30->unk06 == 0 || var_r30->unk08 != 0 || var_r30->unk0C != 3) { + continue; + } + PSVECSubtract(&var_r31->unk38, &var_r30->unk38, &spAC); + var_f31 = PSVECMag(&spAC); + if (var_f31 < 40.0) { + spA0 = var_r31->unk38; + if (var_f31 != 0.0f) { + temp_f30 = 40.0 - var_f31; + PSVECNormalize(&spAC, &spAC); + PSVECScale(&spAC, &spAC, temp_f30); + PSVECAdd(&var_r31->unk38, &spAC, &var_r31->unk38); + } else { + var_r31->unk38.x += 40.0; + } + temp_f30 = PSVECMag(&var_r31->unk50); + var_f22 = PSVECMag(&var_r30->unk50); + var_f31 = 0.5f * (temp_f30 + var_f22); + if (PSVECMag(&var_r31->unk50) == 0.0f) { + var_r31->unk50.x = 1.0f; + } + PSVECNormalize(&var_r31->unk50, &var_r31->unk50); + PSVECSubtract(&var_r31->unk38, &var_r30->unk38, &spAC); + if (PSVECMag(&spAC) == 0.0f) { + spAC.x = 1.0f; + } + PSVECNormalize(&spAC, &spAC); + PSVECAdd(&var_r31->unk50, &spAC, &var_r31->unk50); + if (PSVECMag(&var_r31->unk50) == 0.0f) { + var_r31->unk50.x = 1.0f; + } + PSVECNormalize(&var_r31->unk50, &var_r31->unk50); + PSVECScale(&var_r31->unk50, &var_r31->unk50, var_f31); + if (PSVECMag(&var_r30->unk50) == 0.0f) { + var_r30->unk50.x = -1.0f; + } + PSVECNormalize(&var_r30->unk50, &var_r30->unk50); + PSVECSubtract(&var_r30->unk38, &var_r31->unk38, &spAC); + if (PSVECMag(&spAC) == 0.0f) { + spAC.x = 1.0f; + } + PSVECNormalize(&spAC, &spAC); + PSVECAdd(&var_r30->unk50, &spAC, &var_r30->unk50); + if (PSVECMag(&var_r30->unk50) == 0.0f) { + var_r30->unk50.x = -1.0f; + } + PSVECNormalize(&var_r30->unk50, &var_r30->unk50); + PSVECScale(&var_r30->unk50, &var_r30->unk50, var_f31); + if (var_r28 = fn_1_C498(&spA0, &spAC, &spB8, &sp88, 20.0f, 1)) { + if (var_r28 & 0x8000) { + var_r25 = 1; + } + var_r31->unk38 = spB8; + var_r31->unk50 = sp88; + } + } + } + } + if (var_r31->unk38.y < 20.0) { + var_r31->unk38.y = 20.0f; + var_r31->unk50.y *= var_r31->unk90; + var_r23 = 1; + if (var_r31->unk38.x >= -225.0f && var_r31->unk38.x <= 225.0f + && var_r31->unk38.z >= -1100.0f && var_r31->unk38.z <= -900.0f) + { + var_r25 = 1; + } + if (fabs(var_r31->unk50.y) < 0.05f) { + var_r31->unk50.y = 0.0f; + } + } + if (var_r31->unk08 == 0) { + PSVECSubtract(&var_r31->unk38, &var_r31->unk74, &spAC); + if (fn_1_7B48(&var_r31->unk38, &var_r31->unk50, &sp88, 20.0f) != 0) { + var_r31->unk50 = sp88; + var_r31->unk08 = 1; + var_r31->unk8C = 0.975f; + var_r31->unk90 = -0.5f; + } + } + if (var_r31->unk50.z > 0.0f) { + var_r31->unk08 = 1; + } + var_r31->unk50.y -= 0.32666668f; + if (var_r23 == 0) { + var_r31->unk50.x *= var_r31->unk8C; + var_r31->unk50.z *= var_r31->unk8C; + } else { + var_r31->unk50.x *= 0.995f * var_r31->unk8C; + var_r31->unk50.z *= 0.995f * var_r31->unk8C; + } + if (var_r25 != 0 && var_r31->unk0A == 0 && var_r31->unk08 == 0) { + fn_1_AEE8(i); + } + if (var_r31->unk08 != 0) { + var_r31->unk18++; + if (var_r31->unk18 & 1) { + Hu3DModelAttrReset(var_r31->unk00, HU3D_ATTR_DISPOFF); + } else { + Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); + } + if (var_r31->unk18 >= 120.0f) { + Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); + var_r31->unk0C = 0; + var_r31->unk06 = 0; + var_r31->unk14 = 0; + var_r31->unk18 = 0; + } + } + temp_f30 = VECMagXZ(&var_r31->unk50); + if (fabs(temp_f30) < 0.1f && var_r31->unk38.y <= 20.0 && var_r31->unk08 == 0) { + var_r31->unk0C = 4; + var_r31->unk14 = 0; + var_r31->unk18 = 0; + } + if (fabs(var_r31->unk38.x) > 2000.0 || fabs(var_r31->unk38.y) > 2000.0 || fabs(var_r31->unk38.z) > 2000.0) { + var_r31->unk0C = 4; + var_r31->unk14 = 0; + var_r31->unk18 = 120; + } + var_r31->unk14++; + spAC.x = var_r31->unk50.z; + spAC.z = -var_r31->unk50.x; + spAC.y = 0.0f; + var_f31 = 0.05 * PSVECMag(&spAC); + if (var_f31 > 0.00001f) { + PSMTXRotAxisRad(spC4, &spAC, var_f31); + PSMTXConcat(spC4, temp_r27->unk_F0, temp_r27->unk_F0); + } + Hu3DModelPosSet(var_r31->unk00, var_r31->unk38.x, var_r31->unk38.y, var_r31->unk38.z); + break; + case 4: + var_r31->unk18++; + if (var_r31->unk18 & 1) { + Hu3DModelAttrReset(var_r31->unk00, HU3D_ATTR_DISPOFF); + } else { + Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); + } + if (var_r31->unk18 >= 120.0f) { + Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); + var_r31->unk0C = 0; + var_r31->unk06 = 0; + var_r31->unk14 = 0; + var_r31->unk18 = 0; + } + break; + } + } +} + +void fn_1_A9A0(omObjData* arg0) { + arg0->func = NULL; +} + +void fn_1_A9AC(void) { + fn_1_A9A0(lbl_1_bss_A8); +} + +s32 fn_1_A9D4(s32 arg0, Vec arg1, Vec arg2) { + StructBssA8Data* var_r31; + ModelData* temp_r26; + s32 var_r27; + s32 i; + + if (lbl_1_bss_A8 == NULL) { + return -1; + } + var_r31 = lbl_1_bss_A8->data; + for (i = 0, var_r27 = -1; i < 3; i++) { + if (arg0 == lbl_1_bss_EC[i]) { + var_r27 = i; + } + } + if (var_r27 == -1) { + return -1; + } + for (i = 0; i < 15; i++, var_r31++) { + if (var_r31->unk04 == var_r27 && var_r31->unk06 == 0) { + break; + } + } + if (i >= 15) { + return -1; + } + temp_r26 = &Hu3DData[var_r31->unk00]; + var_r31->unk06 = 1; + var_r31->unk0A = 0; + var_r31->unk08 = 0; + var_r31->unk10 = 0; + var_r31->unk12 = 0; + var_r31->unk0C = 1; + var_r31->unk14 = 0; + var_r31->unk18 = 0; + var_r31->unk20 = arg1; + var_r31->unk2C = arg2; + var_r31->unk38 = arg1; + var_r31->unk44 = var_r31->unk48 = var_r31->unk4C = 0.0f; + var_r31->unk50.x = 0.016666668f * (arg2.x - arg1.x); + var_r31->unk50.z = 0.016666668f * (arg2.z - arg1.z); + var_r31->unk50.y = 5.0f; + Hu3DModelPosSet(var_r31->unk00, var_r31->unk38.x, var_r31->unk38.y, var_r31->unk38.z); + Hu3DModelRotSet(var_r31->unk00, var_r31->unk44, var_r31->unk48, var_r31->unk4C); + Hu3DModelAttrReset(var_r31->unk00, HU3D_ATTR_DISPOFF); + PSMTXIdentity(temp_r26->unk_F0); + return i; +} + +void fn_1_AC0C(s32 arg0, Vec arg1) { + StructBssA8Data* var_r31; + + if (lbl_1_bss_A8 != NULL) { + var_r31 = lbl_1_bss_A8->data; + if (arg0 < 0 || arg0 >= 15) { + return; + } + var_r31[arg0].unk38 = arg1; + } +} + +void fn_1_AC80(s32 arg0, Vec arg1) { + Vec sp14; + Vec sp8; + float var_f31; + StructBssA8Data* var_r28; + StructBssA8Data* temp_r31; + + if (lbl_1_bss_A8 == NULL) { + return; + } + var_r28 = lbl_1_bss_A8->data; + if (arg0 < 0 || arg0 >= 15) { + return; + } + temp_r31 = &var_r28[arg0]; + temp_r31->unk0C = 3; + temp_r31->unk14 = 0; + temp_r31->unk18 = 0; + temp_r31->unk50 = arg1; + temp_r31->unk74 = temp_r31->unk38; + temp_r31->unk8C = 0.995f; + temp_r31->unk90 = -0.5f; + if (temp_r31->unk50.z < 0.0f) { + sp14 = temp_r31->unk38; + var_f31 = -800.0f - sp14.z; + temp_r31->unk1C = fabs(var_f31 / temp_r31->unk50.z); + PSVECScale(&arg1, &sp8, temp_r31->unk1C); + PSVECAdd(&sp14, &sp8, &temp_r31->unk68); + } else { + temp_r31->unk1C = 1000; + } +} + +s32 fn_1_AE64(s32 arg0) { + StructBssA8Data* temp_r31; + + if (lbl_1_bss_A8 == NULL) { + return -1; + } + temp_r31 = lbl_1_bss_A8->data; + if (arg0 < 0 || arg0 >= 15) { + return -1; + } + if (temp_r31[arg0].unk06 == 0) { + return -1; + } + return temp_r31[arg0].unk0C; +} + +void fn_1_AEE8(s32 arg0) { + StructBssA8Data* var_r26; + StructBssA8Data* temp_r31; + + if (lbl_1_bss_A8 == NULL) { + return; + } + var_r26 = lbl_1_bss_A8->data; + if (arg0 < 0 || arg0 >= 15) { + return; + } + temp_r31 = &var_r26[arg0]; + temp_r31->unk0A = 1; + temp_r31->unk08 = 1; + temp_r31->unk14 = 0; + fn_1_F574(temp_r31->unk38, 0.75f, lbl_1_bss_EC[temp_r31->unk04]); + HuAudFXPlay(9); + fn_1_3A8C(); + lbl_1_bss_DC[temp_r31->unk04]++; + lbl_1_bss_104--; +} + +StructBssA8Data* fn_1_B13C(s32 arg0) { + StructBssA8Data* temp_r31; + StructBssA8Data* sp8; + + if (lbl_1_bss_A8 == NULL) { + return NULL; + } + temp_r31 = lbl_1_bss_A8->data; + sp8 = temp_r31; + if (arg0 < 0 || arg0 >= 15) { + return NULL; + } + return &temp_r31[arg0]; +} + +GXColor lbl_1_data_758 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_B1A4(void) { + Vec sp2C; + StructBssA8Data* sp10; + StructBssA8Data* var_r31; + s32 spC; + s32 i; + + if (lbl_1_bss_A8 == NULL) { + return; + } + var_r31 = sp10 = lbl_1_bss_A8->data; + for (i = 0, spC = 0; i < 15; i++, var_r31++) { + if (var_r31->unk06 == 0) { + continue; + } + sp2C.x = sp2C.y = sp2C.z = 0.0f; + fn_1_DC24(var_r31->unk38, sp2C, 100.0f, 0.0f, 1.0f, lbl_1_data_758); + Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); + var_r31->unk0C = 0; + var_r31->unk06 = 0; + var_r31->unk14 = 0; + var_r31->unk18 = 0; + } +} + +s32 fn_1_B304(StructBssA8Data** arg0) { + s32 var_r29; + s32 i; + StructBssA8Data* var_r30; + StructBssA8Data* var_r28; + StructBssA8Data* var_r27; + + if (lbl_1_bss_A8 == NULL) { + return; + } + var_r30 = lbl_1_bss_A8->data; + var_r28 = var_r30; + for (i = 0, var_r29 = 0; i < 15; i++, var_r30++) { + if (var_r30->unk06 == 0 || var_r30->unk0C != 3 || var_r30->unk08 != 0 || var_r30->unk38.z <= -900.0f) { + continue; + } + arg0[var_r29] = var_r30; + var_r29++; + } + var_r28 = var_r30; + for (i = 0; i < var_r29 - 1; i++) { + if (arg0[i]->unk38.z > arg0[i + 1]->unk38.z) { + var_r27 = arg0[i]; + arg0[i] = arg0[i + 1]; + arg0[i + 1] = var_r27; + } + } + return var_r29; +} + +void fn_1_B430(void) { + Vec sp2C[8]; + Vec sp20; + Vec sp14; + Vec sp8; + StructBss94Data* var_r31; + s32 i; + + var_r31 = lbl_1_bss_94 = HuMemDirectMallocNum(HEAP_SYSTEM, 16 * sizeof(*lbl_1_bss_94), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, 16 * sizeof(*var_r31)); + for (i = 0; i < 16; i++, var_r31++) { + var_r31->unk02 = 0; + } + sp20.x = sp20.y = 0.0f; + sp20.z = -1400.0f; + fn_1_BCD8(&sp20, NULL, NULL, 0.8f, 0, 0x2003); + sp2C[0].x = 1000.0f; + sp2C[0].y = 1000.0f; + sp2C[0].z = -200.0f; + sp2C[1].x = -1000.0f; + sp2C[1].y = 1000.0f; + sp2C[1].z = -200.0f; + sp2C[2].x = -1000.0f; + sp2C[2].y = 0.0f; + sp2C[2].z = -200.0f; + sp2C[3].x = 1000.0f; + sp2C[3].y = 0.0f; + sp2C[3].z = -200.0f; + fn_1_BCD8(sp2C, NULL, NULL, 1.0f, 0, 6); + sp20.x = -650.0f; + sp20.y = 75.0f; + sp20.z = -1300.0f; + sp14.x = 370.0f; + sp14.y = 1095.0f; + sp14.z = 120.0f; + fn_1_BCD8(&sp20, &sp14, NULL, 0.8f, 25, 0x2004); + sp20.x = 650.0f; + sp20.y = 75.0f; + sp20.z = -1300.0f; + sp14.x = 370.0f; + sp14.y = 1095.0f; + sp14.z = 120.0f; + fn_1_BCD8(&sp20, &sp14, NULL, 0.8f, 21, 0x2004); + sp20.x = 0.0f; + sp20.y = 100.0f; + sp20.z = -1070.0f; + sp14.x = 245.0f; + sp14.y = 130.0f; + sp14.z = 170.0f; + fn_1_BCD8(&sp20, &sp14, NULL, 1.0f, 45, 4); + sp20.x = -235.0f; + sp20.y = 0.0f; + sp20.z = -900.0f; + sp14.x = -235.0f; + sp14.y = 200.0f; + sp14.z = -900.0f; + sp8.x = 30.000002f; + sp8.y = sp8.z = 0.0f; + fn_1_BCD8(&sp20, &sp14, &sp8, 0.5f, 0, 0x4007); + sp20.x = 235.0f; + sp20.y = 0.0f; + sp20.z = -900.0f; + sp14.x = 235.0f; + sp14.y = 200.0f; + sp14.z = -900.0f; + sp8.x = 30.000002f; + sp8.y = sp8.z = 0.0f; + fn_1_BCD8(&sp20, &sp14, &sp8, 0.5f, 0, 0x4007); + sp20.x = 0.0f; + sp20.y = 200.0f; + sp20.z = -900.0f; + sp14.x = 245.0f; + sp14.y = 30.0f; + sp14.z = 30.0f; + fn_1_BCD8(&sp20, &sp14, NULL, 0.5f, 29, 0x4004); + sp2C[0].x = -225.0f; + sp2C[0].y = 200.0f; + sp2C[0].z = -900.0f; + sp2C[1].x = -225.0f; + sp2C[1].y = 200.0f; + sp2C[1].z = -1150.0f; + sp2C[2].x = -225.0f; + sp2C[2].y = 0.0f; + sp2C[2].z = -1150.0f; + sp2C[3].x = -225.0f; + sp2C[3].y = 0.0f; + sp2C[3].z = -900.0f; + fn_1_BCD8(sp2C, NULL, NULL, 0.5f, 0, 0x8006); + sp2C[0].x = 225.0f; + sp2C[0].y = 200.0f; + sp2C[0].z = -1150.0f; + sp2C[1].x = 225.0f; + sp2C[1].y = 200.0f; + sp2C[1].z = -900.0f; + sp2C[2].x = 225.0f; + sp2C[2].y = 0.0f; + sp2C[2].z = -900.0f; + sp2C[3].x = 225.0f; + sp2C[3].y = 0.0f; + sp2C[3].z = -1150.0f; + fn_1_BCD8(sp2C, NULL, NULL, 0.5f, 0, 0x8006); + sp2C[0].x = -225.0f; + sp2C[0].y = 200.0f; + sp2C[0].z = -1150.0f; + sp2C[1].x = 225.0f; + sp2C[1].y = 200.0f; + sp2C[1].z = -1150.0f; + sp2C[2].x = 225.0f; + sp2C[2].y = 0.0f; + sp2C[2].z = -1150.0f; + sp2C[3].x = -225.0f; + sp2C[3].y = 0.0f; + sp2C[3].z = -1150.0f; + fn_1_BCD8(sp2C, NULL, NULL, 0.1f, 0, 0x8006); + sp2C[0].x = -225.0f; + sp2C[0].y = 200.0f; + sp2C[0].z = -900.0f; + sp2C[1].x = 225.0f; + sp2C[1].y = 200.0f; + sp2C[1].z = -900.0f; + sp2C[2].x = 225.0f; + sp2C[2].y = 200.0f; + sp2C[2].z = -1150.0f; + sp2C[3].x = -225.0f; + sp2C[3].y = 200.0f; + sp2C[3].z = -1150.0f; + fn_1_BCD8(sp2C, NULL, NULL, 0.1f, 0, 0x8006); +} + +s16 lbl_1_data_75C[][3] = { + { 0, 1, 2 }, { 1, 3, 2 }, { 6, 5, 4 }, { 5, 6, 7 }, + { 0, 2, 4 }, { 2, 6, 4 }, { 3, 1, 7 }, { 7, 1, 5 }, + { 2, 3, 6 }, { 3, 7, 6 }, { 1, 0, 4 }, { 1, 4, 5 } +}; + +void fn_1_BCD8(Vec* arg0, Vec* arg1, Vec* arg2, float arg3, s32 arg4, s32 arg5) { + Vec sp24[8]; + Vec sp18; + float var_f29; + StructBss94Data* var_r30; + s32 i; + s32 j; + + var_r30 = lbl_1_bss_94; + for (i = 0; i < 16; i++, var_r30++) { + if (var_r30->unk02 == 0) { + break; + } + } + if (i >= 16) { + return; + } + var_r30->unk00 = i; + var_r30->unk02 = arg5; + var_r30->unk3C = arg3; + switch (var_r30->unk02 & 0xFFF) { + case 1: + var_r30->unk34 = arg0[0].x; + break; + case 2: + var_r30->unk34 = arg0[0].y; + break; + case 3: + var_r30->unk34 = arg0[0].z; + break; + case 4: + var_r30->unk04 = arg0[0]; + var_r30->unk10 = *arg1; + sp24[0].x = arg0[0].x - arg1->x; + sp24[0].y = arg0[0].y + arg1->y; + sp24[0].z = arg0[0].z - arg1->z; + sp24[1].x = arg0[0].x + arg1->x; + sp24[1].y = arg0[0].y + arg1->y; + sp24[1].z = arg0[0].z - arg1->z; + sp24[2].x = arg0[0].x - arg1->x; + sp24[2].y = arg0[0].y + arg1->y; + sp24[2].z = arg0[0].z + arg1->z; + sp24[3].x = arg0[0].x + arg1->x; + sp24[3].y = arg0[0].y + arg1->y; + sp24[3].z = arg0[0].z + arg1->z; + sp24[4].x = arg0[0].x - arg1->x; + sp24[4].y = arg0[0].y - arg1->y; + sp24[4].z = arg0[0].z - arg1->z; + sp24[5].x = arg0[0].x + arg1->x; + sp24[5].y = arg0[0].y - arg1->y; + sp24[5].z = arg0[0].z - arg1->z; + sp24[6].x = arg0[0].x - arg1->x; + sp24[6].y = arg0[0].y - arg1->y; + sp24[6].z = arg0[0].z + arg1->z; + sp24[7].x = arg0[0].x + arg1->x; + sp24[7].y = arg0[0].y - arg1->y; + sp24[7].z = arg0[0].z + arg1->z; + for (j = 0; j < 12; j++) { + fn_1_129F0(&sp24[lbl_1_data_75C[j][0]], + &sp24[lbl_1_data_75C[j][1]], + &sp24[lbl_1_data_75C[j][2]], + var_r30->unk44[j]); + var_r30->unk104[j][0] = sp24[lbl_1_data_75C[j][0]]; + var_r30->unk104[j][1] = sp24[lbl_1_data_75C[j][1]]; + var_r30->unk104[j][2] = sp24[lbl_1_data_75C[j][2]]; + } + var_r30->unk40 = arg4; + break; + case 5: + var_r30->unk104[0][0] = arg0[0]; + var_r30->unk104[1][0] = arg0[1]; + var_r30->unk104[2][0] = arg0[2]; + var_r30->unk104[3][0] = arg0[3]; + fn_1_129F0(&arg0[0], &arg0[1], &arg0[3], var_r30->unk44[0]); + fn_1_129F0(&arg0[1], &arg0[2], &arg0[3], var_r30->unk44[1]); + break; + case 6: + var_r30->unk104[0][0] = arg0[0]; + var_r30->unk104[1][0] = arg0[1]; + var_r30->unk104[2][0] = arg0[2]; + var_r30->unk104[3][0] = arg0[3]; + fn_1_129F0(&arg0[0], &arg0[1], &arg0[3], var_r30->unk44[0]); + fn_1_129F0(&arg0[1], &arg0[2], &arg0[3], var_r30->unk44[1]); + if (var_r30->unk44[0][1] < -0.5f) { + var_r30->unk40 = 0; + } + if (var_r30->unk44[0][1] > 0.5f) { + var_r30->unk40 = 1; + } + if (var_r30->unk44[0][0] > 0.5f) { + var_r30->unk40 = 2; + } + if (var_r30->unk44[0][0] < -0.5f) { + var_r30->unk40 = 3; + } + if (var_r30->unk44[0][2] < -0.5f) { + var_r30->unk40 = 4; + } + if (var_r30->unk44[0][2] > 0.5f) { + var_r30->unk40 = 5; + } + break; + case 7: + var_r30->unk04 = arg0[0]; + var_r30->unk10 = *arg1; + var_r30->unk34 = arg2->x; + sp18.x = arg1->x - arg0[0].x; + sp18.y = arg1->y - arg0[0].y; + sp18.z = arg1->z - arg0[0].z; + var_f29 = VECMagXZ(&sp18); + var_r30->unk28 = -atan2d(sp18.y, var_f29); + var_r30->unk2C = atan2d(sp18.x, sp18.z); + var_r30->unk30 = 0.0f; + break; + } +} + +s32 lbl_1_data_7C4[] = { 1, 1, 0, 0, 2, 2 }; + +s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) { + StructBss94Data* var_r31; + Vec sp140[6]; + Vec sp134; + Vec sp128; + Vec sp11C; + Vec sp110; + Vec sp104; + Vec spF8; + Vec spEC; + Vec spE0; + Vec spD4; + Vec spC8; + float var_f30; + float var_f19; + float sp34; + float sp30; + float sp2C; + s32 var_r26; + s32 var_r24; + s32 var_r23; + s32 i; + s32 j; + + var_r31 = lbl_1_bss_94; + var_r26 = -1; + sp134.x = arg0->x + arg1->x; + sp134.y = arg0->y + arg1->y; + sp134.z = arg0->z + arg1->z; + for (i = 0; i < 16; i++, var_r31++) { + if (var_r31->unk02 == 0) { + continue; + } + switch (var_r31->unk02 & 0xFFF) { + case 1: + if (arg1->x < 0.0f) { + if (arg0->x > var_r31->unk34 + arg4 && sp134.x <= var_r31->unk34 + arg4 + 1.0f) { + sp134.x = var_r31->unk34 + arg4; + *arg2 = sp134; + var_r26 = 0; + } + } else { + if (arg0->x < var_r31->unk34 - arg4 && sp134.x >= var_r31->unk34 - arg4 - 1.0f) { + sp134.x = var_r31->unk34 - arg4; + *arg2 = sp134; + var_r26 = 0; + } + } + break; + case 2: + if (arg1->y < 0.0f) { + if (arg0->y > var_r31->unk34 + arg4 && sp134.y <= var_r31->unk34 + arg4 + 1.0f) { + sp134.y = var_r31->unk34 + arg4; + *arg2 = sp134; + var_r26 = 1; + } + } else { + if (arg0->y < var_r31->unk34 - arg4 && sp134.y >= var_r31->unk34 - arg4 - 1.0f) { + sp134.y = var_r31->unk34 - arg4; + *arg2 = sp134; + var_r26 = 1; + } + } + break; + case 3: + if (arg1->z < 0.0f) { + if (arg0->z > var_r31->unk34 + arg4 && sp134.z <= var_r31->unk34 + arg4 + 1.0f) { + sp134.z = var_r31->unk34 + arg4; + *arg2 = sp134; + var_r26 = 2; + } + } else { + if (arg0->z < var_r31->unk34 - arg4 && sp134.z >= var_r31->unk34 - arg4 - 1.0f) { + sp134.z = var_r31->unk34 - arg4; + *arg2 = sp134; + var_r26 = 2; + } + } + break; + case 4: + arg4 = 0.0f; + PSVECSubtract(&sp134, &var_r31->unk04, &sp128); + if (fabs(sp128.x) < var_r31->unk10.x + arg4 + && fabs(sp128.y) < var_r31->unk10.y + arg4 + && fabs(sp128.z) < var_r31->unk10.z + arg4) + { + for (j = 0; j < 6; j++) { + if (var_r31->unk40 & (1 << j)) { + var_r24 = fn_1_12C6C(arg0, &sp134, var_r31->unk44[j * 2]); + if (var_r24 != 0) { + break; + } + } + } + switch (j) { + case 0: + sp134.y = var_r31->unk04.y + var_r31->unk10.y + arg4 + 1.0f; + break; + case 1: + sp134.y = var_r31->unk04.y - var_r31->unk10.y - arg4 - 1.0f; + break; + case 2: + sp134.x = var_r31->unk04.x - var_r31->unk10.x - arg4 - 1.0f; + break; + case 3: + sp134.x = var_r31->unk04.x + var_r31->unk10.x + arg4 + 1.0f; + break; + case 4: + sp134.z = var_r31->unk04.z + var_r31->unk10.z + arg4 + 1.0f; + break; + case 5: + sp134.z = var_r31->unk04.z - var_r31->unk10.z - arg4 - 1.0f; + break; + } + if (j < 6) { + *arg2 = sp134; + var_r26 = lbl_1_data_7C4[j]; + } + } + break; + case 5: + if (fn_1_12C6C(arg0, &sp134, var_r31->unk44[0]) != 1) { + break; + } + fn_1_1334C(var_r31->unk44[0], arg0, arg1, var_r31->unk104[0], &sp104); + sp110.x = fabs(var_r31->unk44[0][0]); + sp110.y = fabs(var_r31->unk44[0][1]); + sp110.z = fabs(var_r31->unk44[0][2]); + if (sp110.x > sp110.y && sp110.x > sp110.z) { + var_r24 = 0; + } else if (sp110.y > sp110.x && sp110.y > sp110.z) { + var_r24 = 1; + } else { + var_r24 = 2; + } + sp140[0] = var_r31->unk104[0][0]; + sp140[1] = var_r31->unk104[1][0]; + sp140[2] = var_r31->unk104[3][0]; + sp140[3] = var_r31->unk104[1][0]; + sp140[4] = var_r31->unk104[2][0]; + sp140[5] = var_r31->unk104[3][0]; + sp34 = fn_1_12E68(&sp140[0], &sp104, var_r24); + sp30 = fn_1_12E68(&sp140[3], &sp104, var_r24); + if (sp34 != 0.0f || sp30 != 0.0f) { + arg2->x = sp104.x + var_r31->unk44[0][0] * (arg4 + 1.0f); + arg2->y = sp104.y + var_r31->unk44[0][1] * (arg4 + 1.0f); + arg2->z = sp104.z + var_r31->unk44[0][2] * (arg4 + 1.0f); + var_r26 = var_r24; + } + break; + case 6: + sp140[0] = var_r31->unk104[0][0]; + sp140[1] = var_r31->unk104[1][0]; + sp140[2] = var_r31->unk104[2][0]; + sp140[3] = var_r31->unk104[3][0]; + if (fn_1_137C4(&sp140[0], arg0, arg1, &sp104, arg4, var_r31->unk40) != 0) { + *arg2 = sp104; + var_r26 = lbl_1_data_7C4[var_r31->unk40]; + } + break; + case 7: + spEC.x = arg0->x; + spEC.y = arg0->z; + spEC.z = 0.0f; + spE0.x = sp134.x; + spE0.y = sp134.z; + spE0.z = 0.0f; + spD4.x = var_r31->unk04.x; + spD4.y = var_r31->unk04.z; + spD4.z = 0.0f; + var_f30 = fn_1_1367C(&spEC, &spE0, &spD4, &spC8, &sp2C); + if (sp2C >= 0.0f && sp2C <= 1.0f && var_f30 < var_r31->unk34 + arg4) { + var_f19 = arg0->y + arg1->y * sp2C; + if (var_f19 >= var_r31->unk04.y && var_f19 <= var_r31->unk10.y) { + spC8.z = spC8.y; + spC8.y = 0.0f; + PSVECSubtract(&spC8, &var_r31->unk04, &sp128); + sp128.y = 0.0f; + if (PSVECMag(&sp128) == 0.0f) { + sp128.z = 1.0f; + } else { + PSVECNormalize(&sp128, &sp128); + } + PSVECScale(&sp128, &sp128, var_r31->unk34 + arg4 + 1.0f); + arg2->x = sp128.x + var_r31->unk04.x; + arg2->z = sp128.z + var_r31->unk04.z; + arg2->y = var_f19; + sp2C = var_f30; + var_r26 = 99; + } + } else { + sp2C = var_f30; + PSVECSubtract(&sp134, &var_r31->unk04, &sp128); + var_f30 = VECMagXZ(&sp128); + if (var_f30 < var_r31->unk34 + arg4 && sp134.y >= var_r31->unk04.y && sp134.y <= var_r31->unk10.y) { + PSVECSubtract(&sp134, &var_r31->unk04, &sp128); + sp128.y = 0.0f; + if (PSVECMag(&sp128) == 0.0f) { + sp128.z = 1.0f; + } else { + PSVECNormalize(&sp128, &sp128); + } + PSVECScale(&sp128, &sp128, var_r31->unk34 + arg4 + 1.0f); + arg2->x = var_r31->unk04.x + sp128.x; + arg2->z = var_r31->unk04.z + sp128.z; + arg2->y = sp134.y; + var_r26 = 99; + } + } + if (var_r26 == -1) { + break; + } + sp128.x = spC8.x - var_r31->unk04.x; + sp128.z = spC8.y - var_r31->unk04.z; + var_f30 = VECMagXZ(&sp128); + if (var_f30 == 0.0f) { + var_f30 = 1.0f; + sp128.x = 0.0f; + sp128.z = 1.0f; + } else { + var_f30 = 1.0f / var_f30; + } + spC8.x = sp128.x * var_f30; + spC8.z = sp128.z * var_f30; + var_f30 = VECMagXZ(arg1); + if (var_f30 != 0.0f) { + var_f30 = 1.0f / var_f30; + } + spD4.x = -(arg1->x * var_f30); + spD4.z = -(arg1->z * var_f30); + sp2C = var_f30 / (var_r31->unk34 + arg4); + sp128.x = spD4.x + sp2C * (spC8.x - spD4.x); + sp128.z = spD4.z + sp2C * (spC8.z - spD4.z); + var_f30 = VECMagXZ(&sp128); + if (var_f30 == 0.0f) { + var_f30 = 1.0f; + sp128.x = 0.0f; + sp128.z = 1.0f; + } else { + var_f30 = 1.0f / var_f30; + } + sp128.x = sp128.x * var_f30 - spD4.x; + sp128.z = sp128.z * var_f30 - spD4.z; + sp128.y = 0.0f; + if (PSVECMag(&sp128) == 0.0f) { + sp128.z = 1.0f; + } else { + PSVECNormalize(&sp128, &sp128); + } + var_f30 = VECMagXZ(arg1); + arg3->x = sp128.x * var_f30 * var_r31->unk3C; + arg3->z = sp128.z * var_f30 * var_r31->unk3C; + arg3->y = arg1->y; + break; + } + if (var_r26 != -1) { + break; + } + } + if (i < 16) { + switch (var_r26) { + case 0: + arg3->x = -arg1->x * var_r31->unk3C; + arg3->y = arg1->y; + arg3->z = arg1->z * var_r31->unk3C; + var_r23 = var_r31->unk02; + break; + case 1: + arg3->x = arg1->x * var_r31->unk3C; + arg3->y = arg1->y * -0.5f; + arg3->z = arg1->z * var_r31->unk3C; + var_r23 = var_r31->unk02; + break; + case 2: + arg3->x = arg1->x * var_r31->unk3C; + arg3->y = arg1->y; + arg3->z = -arg1->z * var_r31->unk3C; + var_r23 = var_r31->unk02; + break; + default: + var_r23 = var_r31->unk02; + break; + } + arg5--; + if (arg5 > 0) { + sp11C = *arg0; + sp110.x = arg2->x - arg0->x; + sp110.y = arg2->y - arg0->y; + sp110.z = arg2->z - arg0->z; + var_r26 = fn_1_C498(&sp11C, &sp110, &sp104, &spF8, arg4, arg5); + if (var_r26 != 0) { + *arg2 = sp104; + *arg3 = spF8; + if (var_r23 & 0x4000) { + var_r26 |= 0x4000; + } + if (var_r23 & 0x8000) { + var_r26 |= 0x8000; + } + var_r23 = var_r26; + } + } + return var_r23; + } + return 0; +} + +void fn_1_D930(void) { + omObjData* var_r30; + StructBssA4Data* var_r31; + AnimData* var_r27; + StructM423_05* var_r29; + ModelData* var_r28; + s32 sp8; + + var_r30 = lbl_1_bss_A4 = omAddObjEx(lbl_1_bss_120, 0xBF, 0, 0, -1, fn_1_DA38); + var_r31 = var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(*var_r31), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, sizeof(*var_r31)); + var_r31->unk08 = var_r27 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M423, 22), MEMORY_DEFAULT_NUM)); + var_r31->unk00 = sp8 = fn_1_11114(var_r27, 0x100); + Hu3DModelCameraSet(var_r31->unk00, 4); + Hu3DModelLayerSet(var_r31->unk00, 1); + var_r31->unk04 = 0; + var_r28 = &Hu3DData[var_r31->unk00]; + var_r29 = var_r28->unk_120; + var_r29->unk20 = 0; +} + +void fn_1_DA38(omObjData* arg0) { + StructBssA4Data* temp_r30; + ModelData* var_r27; + StructM423_05* temp_r29; + StructM423_04* var_r31; + s32 i; + + temp_r30 = arg0->data; + if (temp_r30->unk04 <= 0) { + Hu3DModelAttrSet(temp_r30->unk00, HU3D_ATTR_DISPOFF); + return; + } + Hu3DModelAttrReset(temp_r30->unk00, HU3D_ATTR_DISPOFF); + var_r27 = &Hu3DData[temp_r30->unk00]; + temp_r29 = var_r27->unk_120; + var_r31 = temp_r29->unk3C; + temp_r29->unk23 = 0; + for (i = 0; i < temp_r29->unk26; i++, var_r31++) { + if (var_r31->unk30 <= 0.0f) { + continue; + } + var_r31->unk38.x += var_r31->unk04.x; + var_r31->unk38.y += var_r31->unk04.y; + var_r31->unk38.z += var_r31->unk04.z; + var_r31->unk34 += var_r31->unk18; + if (var_r31->unk34 >= 360.0f) { + var_r31->unk34 -= 360.0f; + } + var_r31->unk48 = var_r31->unk28; + var_r31->unk28 += var_r31->unk2C; + if (var_r31->unk48 >= 16) { + var_r31->unk48 = 0; + var_r31->unk00 = 0; + var_r31->unk30 = 0.0f; + temp_r30->unk04--; + } + } +} + +void fn_1_DBC8(void) { + omObjData* temp_r31; + StructBssA4Data* temp_r30; + + temp_r31 = lbl_1_bss_A4; + temp_r30 = temp_r31->data; + Hu3DModelAttrSet(temp_r30->unk00, HU3D_ATTR_DISPOFF); + HuSprAnimKill(temp_r30->unk08); + temp_r31->func = NULL; +} + +inline s32 fn_1_DC24(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, GXColor arg5) { + omObjData* var_r27; + StructBssA4Data* temp_r28; + ModelData* var_r26; + StructM423_05* temp_r30; + StructM423_04* var_r31; + s32 i; + + var_r27 = lbl_1_bss_A4; + temp_r28 = var_r27->data; + var_r26 = &Hu3DData[temp_r28->unk00]; + temp_r30 = var_r26->unk_120; + var_r31 = temp_r30->unk3C; + for (i = 0; i < temp_r30->unk26; i++, var_r31++) { + if (var_r31->unk30 <= 0.0f) { + break; + } + } + if (i >= temp_r30->unk26) { + return -1; + } + var_r31->unk00 = var_r31->unk02 = 0; + var_r31->unk38.x = arg0.x; + var_r31->unk38.y = arg0.y; + var_r31->unk38.z = arg0.z; + var_r31->unk04.x = arg1.x; + var_r31->unk04.y = arg1.y; + var_r31->unk04.z = arg1.z; + var_r31->unk18 = arg3; + var_r31->unk30 = arg2; + var_r31->unk44.r = arg5.r; + var_r31->unk44.g = arg5.g; + var_r31->unk44.b = arg5.b; + var_r31->unk44.a = arg5.a; + var_r31->unk34 = 0.0f; + var_r31->unk48 = 0; + var_r31->unk00 = 0; + var_r31->unk28 = 0.0f; + var_r31->unk2C = arg4; + temp_r28->unk04++; + return i; +} + +s32 fn_1_DD70(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5, GXColor arg6) { + Vec sp60; + Vec sp54; + float temp_f31; + s32 sp20; + s32 sp1C; + + sp54.x = arg1.z; + sp54.z = arg1.x; + sp54.y = 0.0f; + PSVECNormalize(&sp54, &sp54); + temp_f31 = 0.5f * arg4; + sp60.x = arg0.x + sp54.x * temp_f31; + sp60.y = arg0.y + sp54.y * temp_f31; + sp60.z = arg0.z + sp54.z * temp_f31; + sp20 = fn_1_DC24(sp60, arg1, arg2, arg3, arg5, arg6); + sp60.x = arg0.x - sp54.x * temp_f31; + sp60.y = arg0.y - sp54.y * temp_f31; + sp60.z = arg0.z - sp54.z * temp_f31; + sp1C = fn_1_DC24(sp60, arg1, arg2, -arg3, arg5, arg6); + return (sp20 << 16) | sp1C; +} + +void fn_1_E1BC(void) { + omObjData* var_r31; + s32 var_r29; + s32 i; + + var_r31 = lbl_1_bss_A0 = omAddObjEx(lbl_1_bss_120, 0xBF, 16, 0, -1, fn_1_E290); + for (i = 0; i < var_r31->mdlcnt; i++) { + var_r29 = var_r31->model[i] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M423, 3)); + Hu3DModelAttrSet(var_r29, HU3D_ATTR_DISPOFF); + Hu3DModelCameraSet(var_r29, 4); + } + var_r31->stat |= 0x100; +} + +void fn_1_E290(omObjData* arg0) { + ModelData* var_r28; + s32 temp_r30; + s32 i; + + for (i = 0; i < arg0->mdlcnt; i++) { + temp_r30 = arg0->model[i]; + var_r28 = &Hu3DData[temp_r30]; + if (!(var_r28->attr & 1) && Hu3DMotionEndCheck(temp_r30)) { + Hu3DModelAttrSet(temp_r30, HU3D_ATTR_DISPOFF); + } + } +} + +void fn_1_E330(void) { +} + +s32 fn_1_E334(Vec arg0, Vec arg1, float arg2) { + omObjData* var_r31; + ModelData* var_r26; + s32 temp_r29; + s32 i; + + var_r31 = lbl_1_bss_A0; + for (i = 0; i < var_r31->mdlcnt; i++) { + var_r26 = &Hu3DData[var_r31->model[i]]; + if (var_r26->attr & 1) { + break; + } + } + if (i >= var_r31->mdlcnt) { + return -1; + } + temp_r29 = var_r31->model[i]; + Hu3DModelPosSet(temp_r29, arg0.x, arg0.y, arg0.z); + Hu3DModelRotSet(temp_r29, arg1.x, arg1.y, arg1.z); + Hu3DModelScaleSet(temp_r29, arg2, arg2, arg2); + Hu3DMotionTimeSet(temp_r29, 0.0f); + Hu3DMotionSpeedSet(temp_r29, 2.0f); + Hu3DModelAttrReset(temp_r29, HU3D_ATTR_DISPOFF); + return i; +} + +void fn_1_E460(void) { + omObjData* temp_r3; + + temp_r3 = lbl_1_bss_9C = omAddObjEx(lbl_1_bss_120, 0xBF, 1, 0, -1, fn_1_E4EC); + temp_r3->model[0] = fn_1_E678(); + Hu3DModelCameraSet(temp_r3->model[0], 4); + Hu3DModelLayerSet(temp_r3->model[0], 2); +} + +void fn_1_E4EC(omObjData* arg0) { + ModelData* var_r29; + StructM423_0B* var_r28; + StructM423_0A* var_r31; + s32 i; + + var_r29 = &Hu3DData[arg0->model[0]]; + var_r28 = var_r29->unk_120; + var_r31 = var_r28->unk00; + for (i = 0; i < 16; i++, var_r31++) { + if (var_r31->unk00 == 0) { + continue; + } + var_r31->unk00++; + if (var_r31->unk00 < 12.0f) { + var_r31->unk04 += 0.058333337f; + } else { + var_r31->unk04 += 0.025000002f; + var_r31->unk10 -= 0.050000004f; + } + if (var_r31->unk10 < 0.0f) { + var_r31->unk00 = 0; + } + } +} + +void fn_1_E60C(void) { + omObjData* temp_r31; + ModelData* var_r30; + StructM423_0B* var_r29; + + temp_r31 = lbl_1_bss_9C; + var_r30 = &Hu3DData[temp_r31->model[0]]; + var_r29 = var_r30->unk_120; + HuSprAnimKill(var_r29->unk200); + temp_r31->func = NULL; +} + +s32 fn_1_E678(void) { + float sp88[32][2]; + float sp8[32]; + float temp_f28; + float temp_f30; + float temp_f29; + float var_f31; + ModelData* temp_r27; + StructM423_0B* var_r30; + StructM423_09* var_r29; + StructM423_08* var_r28; + s32 var_r26; + s32 i; + + var_r26 = Hu3DHookFuncCreate(fn_1_EF44); + temp_r27 = &Hu3DData[var_r26]; + var_r30 = temp_r27->unk_120 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r30), temp_r27->unk_48); + memset(var_r30, 0, sizeof(*var_r30)); + var_r30->unk20C = HuMemDirectMallocNum(HEAP_DATA, 32 * sizeof(*var_r30->unk20C), temp_r27->unk_48); + memset(var_r30->unk20C, 0, 32 * sizeof(*var_r30->unk20C)); + var_r30->unk210 = HuMemDirectMallocNum(HEAP_DATA, 32 * sizeof(*var_r30->unk210), temp_r27->unk_48); + memset(var_r30->unk210, 0, 32 * sizeof(*var_r30->unk210)); + var_r30->unk214 = HuMemDirectMallocNum(HEAP_DATA, 5 * sizeof(*var_r30->unk214), temp_r27->unk_48); + memset(var_r30->unk214, 0, 5 * sizeof(*var_r30->unk214)); + var_r30->unk204 = GXGetTexBufferSize(640, 480, GX_TF_RGB5A3, GX_FALSE, 0); + var_r30->unk208 = HuMemDirectMallocNum(HEAP_DATA, var_r30->unk204, temp_r27->unk_48); + DCFlushRange(var_r30->unk208, var_r30->unk204); + var_r30->unk200 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M423, 23), MEMORY_DEFAULT_NUM)); + var_f31 = 0.0f; + for (i = 0; i < 32; i++) { + temp_f28 = 1.0f + 0.001f * frandmod(1000); + sp8[i] = temp_f28; + var_f31 += temp_f28; + sp88[i][1] = 80.0f * temp_f28; + sp88[i][0] = 10.0f + 0.02f * frandmod(1000); + } + var_f31 = 360.0f / var_f31; + for (i = 0; i < 32; i++) { + sp8[i] *= var_f31; + } + var_f31 = frandmod(90); + var_r28 = var_r30->unk20C; + var_r29 = var_r30->unk210; + for (i = 0; i < 32; var_r28++, var_r29++, i++) { + temp_f29 = -cosd(var_f31); + temp_f30 = sind(var_f31); + var_r28->unk24 = temp_f29 * sp88[i][0]; + var_r28->unk28 = temp_f30 * sp88[i][0]; + var_r28->unk0C = temp_f29 * (sp88[i][0] + sp88[i][1]); + var_r28->unk10 = temp_f30 * (sp88[i][0] + sp88[i][1]); + var_r28->unk00 = temp_f29 * (sp88[i][0] + 0.85f * sp88[i][1]); + var_r28->unk04 = temp_f30 * (sp88[i][0] + 0.85f * sp88[i][1]); + var_r29->unk00 = -0.3f * -temp_f29; + var_r29->unk04 = -0.3f * temp_f30; + temp_f29 = -cosd(var_f31 - 0.4f * sp8[i]); + temp_f30 = sind(var_f31 - 0.4f * sp8[i]); + var_r28->unk30 = temp_f29 * (sp88[i][0] + 0.7f * sp88[i][1]); + var_r28->unk34 = temp_f30 * (sp88[i][0] + 0.7f * sp88[i][1]); + temp_f29 = -cosd(var_f31 + 0.4f * sp8[i]); + temp_f30 = sind(var_f31 + 0.4f * sp8[i]); + var_r28->unk18 = temp_f29 * (sp88[i][0] + 0.7f * sp88[i][1]); + var_r28->unk1C = temp_f30 * (sp88[i][0] + 0.7f * sp88[i][1]); + var_r29->unk08 = var_r29->unk0C = var_r29->unk10 = var_r29->unk14 = 0.0f; + var_r29->unk18 = var_r29->unk1C = var_r29->unk20 = var_r29->unk24 = 0.0f; + var_f31 += sp8[i]; + } + for (i = 0; i < 5; i++) { + var_r30->unk214[i].r = var_r30->unk214[i].g = var_r30->unk214[i].b = 0xFF; + var_r30->unk214[i].a = 0xFF; + } + var_r30->unk218 = 32 * 54; + var_r30->unk220 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r30->unk218, MEMORY_DEFAULT_NUM); + GXBeginDisplayList(var_r30->unk220, var_r30->unk218); + for (i = 0; i < 32; i++) { + GXBegin(GX_TRIANGLEFAN, GX_VTXFMT0, 6); + + GXPosition1x16(i * 5); + GXColor1x16(0); + GXTexCoord1x16(i * 5); + + GXPosition1x16(i * 5 + 1); + GXColor1x16(1); + GXTexCoord1x16(i * 5 + 1); + + GXPosition1x16(i * 5 + 2); + GXColor1x16(2); + GXTexCoord1x16(i * 5 + 2); + + GXPosition1x16(i * 5 + 3); + GXColor1x16(3); + GXTexCoord1x16(i * 5 + 3); + + GXPosition1x16(i * 5 + 4); + GXColor1x16(4); + GXTexCoord1x16(i * 5 + 4); + + GXPosition1x16(i * 5 + 1); + GXColor1x16(1); + GXTexCoord1x16(i * 5 + 1); + + GXEnd(); + } + var_r30->unk21C = GXEndDisplayList(); + DCFlushRangeNoSync(var_r30->unk20C, 32 * sizeof(*var_r30->unk20C)); + DCFlushRangeNoSync(var_r30->unk210, 32 * sizeof(*var_r30->unk210)); + DCFlushRangeNoSync(var_r30->unk214, 5 * sizeof(*var_r30->unk214)); + DCFlushRangeNoSync(var_r30->unk220, var_r30->unk218); + DCStoreRangeNoSync(var_r30, sizeof(*var_r30)); + PPCSync(); + return var_r26; +} + +GXColor lbl_1_data_7FC[] = { + { 0x66, 0x00, 0x00, 0xFF }, + { 0x00, 0x00, 0x66, 0xFF }, + { 0x66, 0x00, 0x5B, 0xFF }, + { 0x00, 0x66, 0x00, 0xFF }, + { 0x42, 0x00, 0x4C, 0xFF }, + { 0x47, 0x28, 0x00, 0xFF }, + { 0x66, 0x66, 0x00, 0xFF }, + { 0x00, 0x00, 0x00, 0xFF } +}; + +void fn_1_EF44(ModelData* arg0, Mtx arg1) { + Mtx sp124; + Mtx spF4; + Mtx spC4; + Mtx sp94; + Mtx sp64; + Mtx sp34; + GXTexObj sp14; + GXColor sp10 = { 0xCC, 0xCC, 0xCC, 0x7F }; + StructM423_0B* temp_r30; + StructM423_0A* var_r31; + s32 i; + + temp_r30 = arg0->unk_120; + GXSetTexCopySrc(0, 0, 640, 480); + GXSetTexCopyDst(640, 480, GX_TF_RGB5A3, GX_FALSE); + GXCopyTex(temp_r30->unk208, GX_FALSE); + GXPixModeSync(); + PSMTXTrans(spF4, -400.0f, 400.0f, -700.0f); + PSMTXConcat(Hu3DCameraMtx, spF4, sp64); + GXLoadPosMtxImm(sp64, GX_PNMTX0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_CLAMP, GX_AF_NONE); + GXInitTexObj(&sp14, temp_r30->unk208, 640, 480, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, GX_FALSE); + GXInitTexObjLOD(&sp14, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); + GXLoadTexObj(&sp14, GX_TEXMAP0); + HuSprTexLoad(temp_r30->unk200, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetNumTexGens(2); + C_MTXLightPerspective(sp94, 41.5f, 1.2f, 0.5555555f, -0.5f, 0.5555555f, 0.5f); + PSMTXConcat(sp94, Hu3DCameraMtx, sp94); + PSMTXInverse(Hu3DCameraMtx, sp34); + PSMTXConcat(sp34, sp64, sp124); + PSMTXConcat(sp94, sp124, spF4); + GXLoadTexMtxImm(spF4, GX_TEXMTX0, GX_MTX3x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, GX_TEXMTX0, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEXCOORD0, GX_TEXMTX1, GX_FALSE, GX_PTIDENTITY); + GXSetNumIndStages(1); + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP1); + GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, GX_TRUE, GX_FALSE, GX_ITM_0); + GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); + PSMTXScale(spF4, -0.5f, -0.5f, 0.5f); + GXSetIndTexMtx(GX_ITM_0, (float(*)[3]) spF4, -1); + GXSetNumTevStages(1); + GXSetTevColor(GX_TEVREG1, sp10); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_C1, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_RASA, GX_CA_A0, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_FALSE, GX_TEVPREV); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_SET); + GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r30->unk20C, 12); + GXSetArray(GX_VA_CLR0, temp_r30->unk214, 4); + GXSetArray(GX_VA_TEX0, temp_r30->unk210, 8); + var_r31 = temp_r30->unk00; + for (i = 0; i < 16; i++, var_r31++) { + if (var_r31->unk00 == 0) { + continue; + } + lbl_1_data_7FC[var_r31->unk02].a = 255.0f * var_r31->unk10; + GXSetTevColor(GX_TEVREG0, lbl_1_data_7FC[var_r31->unk02]); + PSMTXTrans(spF4, var_r31->unk14.x, var_r31->unk14.y, var_r31->unk14.z); + PSMTXRotRad(sp124, 'Z', MTXDegToRad(var_r31->unk0C)); + PSMTXConcat(spF4, sp124, spF4); + PSMTXScale(spC4, var_r31->unk04 * var_r31->unk08, var_r31->unk04 * var_r31->unk08, var_r31->unk04 * var_r31->unk08); + PSMTXConcat(spF4, spC4, spF4); + PSMTXConcat(Hu3DCameraMtx, spF4, sp64); + GXLoadPosMtxImm(sp64, GX_PNMTX0); + PSMTXConcat(sp34, sp64, sp124); + PSMTXConcat(sp94, sp124, spF4); + GXLoadTexMtxImm(spF4, GX_TEXMTX0, GX_MTX3x4); + PSMTXRotRad(sp124, 'Z', MTXDegToRad(-var_r31->unk0C)); + GXLoadTexMtxImm(sp124, GX_TEXMTX1, GX_MTX2x4); + GXCallDisplayList(temp_r30->unk220, temp_r30->unk21C); + } + GXSetNumIndStages(0); + GXSetTevDirect(GX_TEVSTAGE0); +} + +s32 fn_1_F574(Vec arg0, float arg1, s32 arg2) { + omObjData* var_r29; + ModelData* var_r28; + StructM423_0B* var_r26; + StructM423_0A* var_r31; + s32 var_r27; + s32 i; + + var_r29 = lbl_1_bss_9C; + var_r28 = &Hu3DData[var_r29->model[0]]; + var_r26 = var_r28->unk_120; + var_r31 = var_r26->unk00; + for (i = 0; i < 16; i++, var_r31++) { + if (var_r31->unk00 == 0) { + break; + } + } + if (i < 16) { + if (arg2 < 0) { + arg2 = 0; + } + var_r31->unk00 = 1; + var_r31->unk02 = arg2; + var_r31->unk10 = 1.0f; + var_r31->unk08 = arg1; + var_r31->unk04 = 0.25f; + var_r31->unk0C = frandmod(360); + var_r31->unk14 = arg0; + } +} + +void fn_1_F690(void) { + lbl_1_bss_98 = omAddObjEx(lbl_1_bss_120, 0xFE, 0, 0, -1, fn_1_F6E0); +} + +s32 lbl_1_data_81C[] = { + DATA_MAKE_NUM(DATADIR_MGCONST, 12), + DATA_MAKE_NUM(DATADIR_MGCONST, 13), + DATA_MAKE_NUM(DATADIR_MGCONST, 14), + DATA_MAKE_NUM(DATADIR_MGCONST, 15), + DATA_MAKE_NUM(DATADIR_MGCONST, 16), + DATA_MAKE_NUM(DATADIR_MGCONST, 17), + DATA_MAKE_NUM(DATADIR_MGCONST, 18), + DATA_MAKE_NUM(DATADIR_MGCONST, 19) +}; + +s16 lbl_1_data_83C[] = { 0x7F, 0x7F, 0x7F, 0x100 }; + +s16 lbl_1_data_844[][2] = { + { -75, 10 }, { -61, -14 }, { -47, 10 }, { 0, 0 }, + { -12, -8 }, { -12, -8 }, { 6, -8 }, { 6, -8 }, + { 24, -8 }, { 24, -8 }, { 42, -8 }, { 42, -8 }, + { 60, -8 }, { 60, -8 }, { -12, 10 }, { -12, 10 }, + { 6, 10 }, { 6, 10 }, { 24, 10 }, { 24, 10 }, + { 42, 10 }, { 42, 10 }, { 60, 10 }, { 60, 10 } +}; + +void fn_1_F6E0(omObjData* arg0) { + StructM423_0C* var_r31; + s32 sp8; + s32 var_r29; + s32 i; + + if ((sp8 = lbl_1_bss_EC[3]) != -1) { + var_r31 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(*var_r31), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, sizeof(*var_r31)); + var_r31->unk00 = 480; + var_r31->unk04 = 70; + var_r31->unk08 = 0; + var_r31->unk0C = 0; + for (i = 0; i < 24; i++) { + switch (i) { + case 0: + case 1: + case 2: + var_r29 = espEntry(lbl_1_data_81C[lbl_1_bss_EC[i]], lbl_1_data_83C[i], 0); + var_r31->unk10[i] = var_r29; + var_r31->unk70[i][0] = lbl_1_data_844[i][0]; + var_r31->unk70[i][1] = lbl_1_data_844[i][1]; + break; + case 3: + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 38), lbl_1_data_83C[i], 0); + var_r31->unk10[i] = var_r29; + var_r31->unk70[i][0] = lbl_1_data_844[i][0]; + var_r31->unk70[i][1] = lbl_1_data_844[i][1]; + break; + default: + if (!(i & 1)) { + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M423, 24), 0x40, 0); + var_r31->unk10[i] = var_r29; + } else { + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M423, 25), 0x20, 0); + var_r31->unk10[i] = var_r29; + } + var_r31->unk70[i][0] = lbl_1_data_844[i][0]; + var_r31->unk70[i][1] = lbl_1_data_844[i][1]; + break; + } + espDispOn(var_r29); + espDrawNoSet(var_r29, 0); + espAttrSet(var_r29, 1); + espPosSet(var_r29, var_r31->unk00 + var_r31->unk70[i][0], var_r31->unk04 + var_r31->unk70[i][1]); + espBankSet(var_r29, 0); + } + for (i = 0; i < 10; i++) { + var_r31->unk190[i][0] = 0; + var_r31->unk190[i][1] = 0; + } + fn_1_10028(0); + arg0->func = fn_1_FA40; + } +} + +void fn_1_FA40(omObjData* arg0) { + float var_f31; + float var_f28; + float temp_f30; + float temp_f29; + StructM423_0C* temp_r31; + s32 temp_r28; + s32 temp_r29; + s32 i; + + temp_r31 = arg0->data; + if (lbl_1_bss_104 != temp_r31->unk08) { + temp_r31->unk08 = lbl_1_bss_104; + temp_r31->unk0C = 20; + } + if (temp_r31->unk0C != 0) { + var_f31 = 1.0 + 0.8f * sind(180.0f * (temp_r31->unk0C / 20.0f)); + temp_r31->unk0C--; + } else { + var_f31 = 1.0f; + } + var_f31 = 1.0f; + temp_r28 = 10 - lbl_1_bss_104; + for (i = 0; i < 4; i++) { + temp_f30 = temp_r31->unk00 + temp_r31->unk70[i][0]; + temp_f29 = temp_r31->unk04 + temp_r31->unk70[i][1]; + espPosSet(temp_r31->unk10[i], temp_f30, temp_f29); + espScaleSet(temp_r31->unk10[i], 1.0f, 1.0f); + } + for (i = 4; i < 24; i++) { + temp_f30 = temp_r31->unk00 + temp_r31->unk70[i][0]; + temp_f29 = temp_r31->unk04 + temp_r31->unk70[i][1]; + if (!(i & 1)) { + espPosSet(temp_r31->unk10[i], temp_f30, temp_f29); + espScaleSet(temp_r31->unk10[i], 1.0f, 1.0f); + } else { + temp_r29 = (i - 4) / 2; + if (temp_r28 > temp_r29) { + temp_r31->unk190[temp_r29][0] = 1; + } else { + temp_r31->unk190[temp_r29][0] = 0; + } + if (temp_r31->unk190[temp_r29][0] != 0) { + if (temp_r31->unk190[temp_r29][1] < 15) { + temp_r31->unk190[temp_r29][1]++; + var_f31 = 3.0f - 2.0f * (temp_r31->unk190[temp_r29][1] / 15.0f); + var_f28 = temp_r31->unk190[temp_r29][1] / 15.0f; + } else { + var_f31 = 1.0f; + var_f28 = 1.0f; + } + espDispOn(temp_r31->unk10[i]); + espPosSet(temp_r31->unk10[i], temp_f30, temp_f29); + espTPLvlSet(temp_r31->unk10[i], var_f28); + espScaleSet(temp_r31->unk10[i], var_f31, var_f31); + } else { + espDispOff(temp_r31->unk10[i]); + } + } + } +} + +void fn_1_FF10(omObjData* arg0) { + StructM423_0C* temp_r29; + s32 i; + + if (arg0 && arg0->data) { + temp_r29 = arg0->data; + for (i = 0; i < 24; i++) { + espKill(temp_r29->unk10[i]); + } + arg0->data = NULL; + arg0->func = NULL; + } +} + +void fn_1_FF98(void) { + fn_1_FF10(lbl_1_bss_98); +} + +void fn_1_10028(s32 arg0) { + StructM423_0C* temp_r30; + s32 i; + + temp_r30 = lbl_1_bss_98->data; + for (i = 0; i < 24; i++) { + if (arg0 != 0) { + espDispOn(temp_r30->unk10[i]); + } else { + espDispOff(temp_r30->unk10[i]); + } + if (i >= 4 && (i & 1)) { + espDispOff(temp_r30->unk10[i]); + } + } +} + +void fn_1_100DC(void) { + omObjData* temp_r3; + s32 i; + + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 45.0f, 50.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 320.0f, 240.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 320, 240); + Hu3DCameraCreate(2); + Hu3DCameraPerspectiveSet(2, 45.0f, 50.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(2, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(2, 0, 0, 640, 480); + Hu3DCameraCreate(4); + Hu3DCameraPerspectiveSet(4, 45.0f, 100.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(4, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(4, 0, 0, 640, 480); + temp_r3 = lbl_1_bss_8C = omAddObjEx(lbl_1_bss_120, 0x7FDA, 0, 0, -1, omOutViewMulti); + temp_r3->work[0] = 3; + for (i = 0; i < temp_r3->work[0]; i++) { + CRotM[i].x = lbl_1_data_0[0].unk00.x; + CRotM[i].y = lbl_1_data_0[0].unk00.y; + CRotM[i].z = lbl_1_data_0[0].unk00.z; + CenterM[i].x = lbl_1_data_0[0].unk0C.x; + CenterM[i].y = lbl_1_data_0[0].unk0C.y; + CenterM[i].z = lbl_1_data_0[0].unk0C.z; + CZoomM[i] = lbl_1_data_0[0].unk18; + } + lbl_1_bss_84 = 0; + lbl_1_bss_88 = -1; + omAddObjEx(lbl_1_bss_120, 0xFF, 0, 0, -1, fn_1_10480); +} + +void fn_1_10480(omObjData* arg0) { + CRotM[1].x = CRotM[0].x; + CRotM[1].y = CRotM[0].y; + CRotM[1].z = CRotM[0].z; + CenterM[1].x = CenterM[0].x; + CenterM[1].y = CenterM[0].y; + CenterM[1].z = CenterM[0].z; + CZoomM[1] = CZoomM[0]; +} + +void fn_1_1052C(void) { +} + +s32 fn_1_10530(void) { + return lbl_1_bss_84; +} + +void fn_1_10540(s32 arg0, s32 arg1, s32 arg2, f32 arg3) { + StructData0* temp_r31; + StructData0* temp_r30; + + temp_r31 = &lbl_1_data_0[arg1]; + temp_r30 = &lbl_1_data_0[arg2]; + CRotM[arg0].x = fn_1_12544(arg3, temp_r31->unk00.x, temp_r30->unk00.x); + CRotM[arg0].y = fn_1_12544(arg3, temp_r31->unk00.y, temp_r30->unk00.y); + CRotM[arg0].z = fn_1_12544(arg3, temp_r31->unk00.z, temp_r30->unk00.z); + CenterM[arg0].x = temp_r31->unk0C.x + arg3 * (temp_r30->unk0C.x - temp_r31->unk0C.x); + CenterM[arg0].y = temp_r31->unk0C.y + arg3 * (temp_r30->unk0C.y - temp_r31->unk0C.y); + CenterM[arg0].z = temp_r31->unk0C.z + arg3 * (temp_r30->unk0C.z - temp_r31->unk0C.z); + CZoomM[arg0] = temp_r31->unk18 + arg3 * (temp_r30->unk18 - temp_r31->unk18); +} + +float lbl_1_data_8A4[] = { + 95.0f, 95.0f, 135.0f, 95.0f, 95.0f, 125.0f, 135.0f, 125.0f +}; + +void fn_1_106D8(s32 arg0) { + float var_f31; + StructBssBCData* var_r30; + s32 var_r29; + + if (lbl_1_bss_90 != arg0) { + CRotM->x = lbl_1_data_38[arg0].unk00.x; + CRotM->y = lbl_1_data_38[arg0].unk00.y; + CRotM->z = lbl_1_data_38[arg0].unk00.z; + CenterM->x = lbl_1_data_38[arg0].unk0C.x; + CenterM->y = lbl_1_data_38[arg0].unk0C.y; + CenterM->z = lbl_1_data_38[arg0].unk0C.z; + CZoomM[0] = lbl_1_data_38[arg0].unk18; + lbl_1_bss_80 = 0; + if (arg0 != 0) { + lbl_1_bss_7C = frand(); + } else { + lbl_1_bss_7C = 0; + } + lbl_1_bss_90 = arg0; + } + var_r29 = lbl_1_bss_90; + switch (var_r29) { + case 0: + case 1: + case 2: + lbl_1_bss_80++; + if (lbl_1_bss_7C & 1) { + var_f31 = cosd((float) lbl_1_bss_80); + } else { + var_f31 = -cosd((float) lbl_1_bss_80); + } + CRotM->y = 23.0f * var_f31 + lbl_1_data_38[arg0].unk00.y; + break; + case 3: + case 4: + case 5: + lbl_1_bss_80++; + if (lbl_1_bss_7C & 1) { + CRotM->y = lbl_1_data_38[arg0].unk00.y - 45.0f + 0.5f * lbl_1_bss_80; + } else { + CRotM->y = lbl_1_data_38[arg0].unk00.y + 45.0f - 0.5f * lbl_1_bss_80; + } + break; + case 6: + case 7: + case 8: + if (lbl_1_bss_AC[var_r29 - 6] != NULL) { + var_r30 = lbl_1_bss_AC[var_r29 - 6]->data; + CenterM->y = lbl_1_data_8A4[var_r30->unk02]; + } + break; + case 9: + if (lbl_1_bss_B8 != NULL) { + var_r30 = lbl_1_bss_B8->data; + CenterM->x = lbl_1_bss_B8->trans.x; + CenterM->z = lbl_1_bss_B8->trans.z; + CenterM->y = lbl_1_data_8A4[var_r30->unk02]; + } + break; + } +} + +void fn_1_10BC8(void) { + Mtx44 sp64; + Mtx sp34; + Vec sp28; + Vec sp1C; + Vec sp10; + GXColor spC; + CameraData* var_r31; + + var_r31 = &Hu3DCamera[0]; + if (var_r31->fov <= 0.0f) { + return; + } + C_MTXPerspective(sp64, var_r31->fov, var_r31->aspect, var_r31->near, var_r31->far); + GXSetProjection(sp64, GX_PERSPECTIVE); + GXSetViewport(0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + GXSetScissor(0, 0, 640, 480); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + spC.r = spC.g = spC.b = 0; + spC.a = 0xFF; + GXSetTevColor(GX_TEVREG0, spC); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_A0); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumTexGens(0); + GXSetNumTevStages(1); + GXSetCullMode(GX_CULL_NONE); + GXSetZMode(GX_TRUE, GX_ALWAYS, GX_TRUE); + sp28.x = sp28.y = sp28.z = 0.0f; + sp1C.x = sp1C.y = 0.0f; + sp1C.z = -100.0f; + sp10.x = sp10.z = 0.0f; + sp10.y = 1.0f; + C_MTXLookAt(sp34, &sp28, &sp10, &sp1C); + GXLoadPosMtxImm(sp34, GX_PNMTX0); + sp28.x = 10000.0 * -sin(var_r31->fov / 2.0f) * 1.2f; + sp28.y = 10000.0 * -sin(var_r31->fov / 2.0f) * 0.8333333f; + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(-sp28.x, -sp28.y, -10000.0f); + GXPosition3f32(sp28.x, -sp28.y, -10000.0f); + GXPosition3f32(sp28.x, sp28.y, -10000.0f); + GXPosition3f32(-sp28.x, sp28.y, -10000.0f); + GXEnd(); +} + +void fn_1_11008(StructBssD0Data* arg0, void* arg1, s16 arg2, GXTexWrapMode arg3, s32 arg4, s32 arg5) { + GXTexObj sp18; + StructBssD0Data* var_r31; + + var_r31 = arg0; + GXInitTexObj(&sp18, arg1, var_r31->unk00, var_r31->unk04, GX_TF_RGB5A3, arg3, arg3, GX_FALSE); + if (arg5 != 0) { + GXInitTexObjLOD(&sp18, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); + } else { + GXInitTexObjLOD(&sp18, GX_NEAR, GX_NEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); + } + GXLoadTexObj(&sp18, arg2); +} + +s16 fn_1_11114(AnimData* arg0, s16 arg1) { + s16 var_r23; + s16 i; + ModelData* temp_r27; + StructM423_05* var_r31; + StructM423_04* var_r29; + Vec* var_r25; + float (*var_r28)[2]; + void* var_r24; + void* var_r22; + + var_r23 = Hu3DHookFuncCreate(fn_1_11900); + temp_r27 = &Hu3DData[var_r23]; + temp_r27->unk_120 = var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r31), temp_r27->unk_48); + var_r31->unk38 = arg0; + var_r31->unk26 = arg1; + var_r31->unk20 = 0; + var_r31->unk22 = 0; + var_r31->unk4C = NULL; + var_r31->unk50 = NULL; + var_r31->unk28 = 0; + var_r31->unk21 = 0; + var_r31->unk23 = 0; + var_r31->unk30 = 0; + var_r31->unk00 = var_r31->unk02 = 0; + var_r31->unk3C = var_r29 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(*var_r29), temp_r27->unk_48); + memset(var_r29, 0, arg1 * sizeof(*var_r29)); + for (i = 0; i < arg1; i++, var_r29++) { + var_r29->unk30 = 0.0f; + var_r29->unk34 = 0.0f; + var_r29->unk28 = 0.0f; + var_r29->unk2C = 1.0f; + var_r29->unk38.x = (frand7() - 64) * 20; + var_r29->unk38.y = (frand7() - 64) * 30; + var_r29->unk38.z = (frand7() - 64) * 20; + var_r29->unk44.r = var_r29->unk44.g = var_r29->unk44.b = var_r29->unk44.a = 0xFF; + var_r29->unk48 = 0; + } + var_r31->unk40 = var_r25 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(*var_r25) * 4, temp_r27->unk_48); + for (i = 0; i < arg1 * 4; i++, var_r25++) { + var_r25->x = var_r25->y = var_r25->z = 0.0f; + } + var_r31->unk44 = var_r28 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(*var_r28) * 4, temp_r27->unk_48); + for (i = 0; i < arg1; i++) { + (*var_r28)[0] = 0.0f; + (*var_r28)[1] = 0.0f; + var_r28++; + (*var_r28)[0] = 1.0f; + (*var_r28)[1] = 0.0f; + var_r28++; + (*var_r28)[0] = 1.0f; + (*var_r28)[1] = 1.0f; + var_r28++; + (*var_r28)[0] = 0.0f; + (*var_r28)[1] = 1.0f; + var_r28++; + } + var_r22 = var_r24 = HuMemDirectMallocNum(HEAP_DATA, 0x10000, temp_r27->unk_48); + DCFlushRange(var_r24, 0x10000); + GXBeginDisplayList(var_r22, 0x10000); + GXBegin(GX_QUADS, GX_VTXFMT0, arg1 * 4); + for (i = 0; i < arg1; i++) { + GXPosition1x16(i * 4); + GXColor1x16(i); + GXTexCoord1x16(i * 4); + + GXPosition1x16(i * 4 + 1); + GXColor1x16(i); + GXTexCoord1x16(i * 4 + 1); + + GXPosition1x16(i * 4 + 2); + GXColor1x16(i); + GXTexCoord1x16(i * 4 + 2); + + GXPosition1x16(i * 4 + 3); + GXColor1x16(i); + GXTexCoord1x16(i * 4 + 3); + } + GXEnd(); + var_r31->unk34 = GXEndDisplayList(); + var_r31->unk48 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk34, temp_r27->unk_48); + memcpy(var_r31->unk48, var_r24, var_r31->unk34); + DCFlushRange(var_r31->unk48, var_r31->unk34); + HuMemDirectFree(var_r24); + return var_r23; +} + +s16 fn_1_115C4(s16 arg0) { + s32 temp_r24; + s16 var_r22; + s16 i; + ModelData* temp_r23; + ModelData* temp_r27; + StructM423_05* temp_r26; + StructM423_05* var_r31; + StructM423_04* var_r30; + Vec* var_r25; + float (*var_r29)[2]; + + temp_r23 = &Hu3DData[arg0]; + temp_r26 = temp_r23->unk_120; + var_r22 = Hu3DHookFuncCreate(temp_r23->hook); + temp_r27 = &Hu3DData[var_r22]; + temp_r27->unk_120 = var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r31), temp_r27->unk_48); + var_r31->unk38 = temp_r26->unk38; + var_r31->unk26 = temp_r26->unk26; + temp_r24 = var_r31->unk26; + var_r31->unk20 = 0; + var_r31->unk22 = temp_r26->unk22; + var_r31->unk4C = NULL; + var_r31->unk50 = NULL; + var_r31->unk28 = 0; + var_r31->unk21 = 0; + var_r31->unk30 = 0; + var_r31->unk00 = var_r31->unk02 = 0; + var_r31->unk3C = var_r30 = HuMemDirectMallocNum(HEAP_DATA, temp_r24 * sizeof(*var_r30), temp_r27->unk_48); + for (i = 0; i < temp_r24; i++, var_r30++) { + var_r30->unk30 = 0.0f; + var_r30->unk34 = 0.0f; + var_r30->unk28 = 0.0f; + var_r30->unk2C = 1.0f; + var_r30->unk38.x = (frand7() - 64) * 20; + var_r30->unk38.y = (frand7() - 64) * 30; + var_r30->unk38.z = (frand7() - 64) * 20; + var_r30->unk44.r = var_r30->unk44.g = var_r30->unk44.b = var_r30->unk44.a = 0xFF; + var_r30->unk48 = 0; + } + var_r31->unk40 = var_r25 = HuMemDirectMallocNum(HEAP_DATA, temp_r24 * sizeof(*var_r25) * 4, temp_r27->unk_48); + for (i = 0; i < (temp_r24 * 4); i++, var_r25++) { + var_r25->x = var_r25->y = var_r25->z = 0.0f; + } + var_r31->unk44 = var_r29 = HuMemDirectMallocNum(HEAP_DATA, temp_r24 * sizeof(*var_r29) * 4, temp_r27->unk_48); + for (i = 0; i < temp_r24; i++) { + (*var_r29)[0] = 0.0f; + (*var_r29)[1] = 0.0f; + var_r29++; + (*var_r29)[0] = 1.0f; + (*var_r29)[1] = 0.0f; + var_r29++; + (*var_r29)[0] = 1.0f; + (*var_r29)[1] = 1.0f; + var_r29++; + (*var_r29)[0] = 0.0f; + (*var_r29)[1] = 1.0f; + var_r29++; + } + var_r31->unk34 = temp_r26->unk34; + var_r31->unk48 = temp_r26->unk48; + return var_r22; +} + +Vec lbl_1_data_8C4[] = { + { -0.5f, 0.5f, 0.0f }, + { 0.5f, 0.5f, 0.0f }, + { 0.5f, -0.5f, 0.0f }, + { -0.5f, -0.5f, 0.0f } +}; + +float lbl_1_data_8F4[][2] = { + { 0.0f, 0.0f }, + { 0.25f, 0.0f }, + { 0.25f, 0.25f }, + { 0.0f, 0.25f } +}; + +void fn_1_11900(ModelData* arg0, Mtx arg1) { + Mtx sp128; + Mtx spF8; + Mtx spC8; + Vec sp98[4]; + Vec sp68[4]; + Vec sp38[4]; + ROMtx sp8; + StructM423_05* temp_r31; + StructM423_04* var_r29; + Vec* var_r30; + float (*var_r28)[2]; + Vec* temp_r27; + Vec* temp_r24; + s16 var_r21; + s16 var_r20; + s16 var_r19; + void (*var_r18)(ModelData*, struct struct_m423_05*, Mtx); + s16 i; + s16 j; + + temp_r31 = arg0->unk_120; + if (temp_r31->unk2C == GlobalCounter && shadowModelDrawF == 0) { + return; + } + if (temp_r31->unk50 && temp_r31->unk50 != arg0) { + fn_1_11900(temp_r31->unk50, arg1); + } + GXLoadPosMtxImm(arg1, GX_PNMTX0); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + if (shadowModelDrawF != 0) { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ONE, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); + } else { + var_r21 = temp_r31->unk38->bmp->dataFmt & 0xF; + if (var_r21 == 7 || var_r21 == 8) { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ONE, GX_CC_RASC, GX_CC_ZERO); + } else { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); + } + if (temp_r31->unk22 & 1) { + GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); + } else if (arg0->attr & 2) { + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + } else { + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + } + } + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_CLAMP, GX_AF_NONE); + HuSprTexLoad(temp_r31->unk38, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(GX_FALSE); + switch (temp_r31->unk20) { + case 0: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + break; + case 1: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_NOOP); + break; + case 2: + GXSetBlendMode(GX_BM_BLEND, GX_BL_ZERO, GX_BL_INVDSTCLR, GX_LO_NOOP); + break; + } + if (HmfInverseMtxF3X3(arg1, sp128) == 0) { + PSMTXIdentity(sp128); + } + PSMTXReorder(sp128, sp8); + if (temp_r31->unk4C) { + var_r18 = temp_r31->unk4C; + var_r18(arg0, temp_r31, arg1); + } + var_r29 = temp_r31->unk3C; + var_r30 = temp_r31->unk40; + var_r28 = temp_r31->unk44; + PSMTXROMultVecArray(sp8, lbl_1_data_8C4, sp38, 4); + for (i = 0; i < temp_r31->unk26; i++, var_r29++) { + if (!var_r29->unk30) { + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + } else if (!var_r29->unk34) { + temp_r27 = sp98; + temp_r24 = sp38; + PSVECScale(temp_r24++, temp_r27, var_r29->unk30); + PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); + PSVECScale(temp_r24++, temp_r27, var_r29->unk30); + PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); + PSVECScale(temp_r24++, temp_r27, var_r29->unk30); + PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); + PSVECScale(temp_r24++, temp_r27, var_r29->unk30); + PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); + } else { + PSVECScale(&lbl_1_data_8C4[0], &sp98[0], var_r29->unk30); + PSVECScale(&lbl_1_data_8C4[1], &sp98[1], var_r29->unk30); + PSVECScale(&lbl_1_data_8C4[2], &sp98[2], var_r29->unk30); + PSVECScale(&lbl_1_data_8C4[3], &sp98[3], var_r29->unk30); + PSMTXRotRad(spC8, 'Z', var_r29->unk34); + PSMTXConcat(sp128, spC8, spF8); + PSMTXMultVecArray(spF8, sp98, sp68, 4); + PSVECAdd(&sp68[0], &var_r29->unk38, var_r30++); + PSVECAdd(&sp68[1], &var_r29->unk38, var_r30++); + PSVECAdd(&sp68[2], &var_r29->unk38, var_r30++); + PSVECAdd(&sp68[3], &var_r29->unk38, var_r30++); + } + } + var_r29 = temp_r31->unk3C; + var_r28 = temp_r31->unk44; + if (!(temp_r31->unk22 & 2)) { + for (i = 0; i < temp_r31->unk26; i++, var_r29++) { + var_r20 = var_r29->unk48 & 3; + var_r19 = (var_r29->unk48 >> 2) & 3; + for (j = 0; j < 4; j++, var_r28++) { + (*var_r28)[0] = 0.25f * var_r20 + lbl_1_data_8F4[j][0]; + (*var_r28)[1] = 0.25f * var_r19 + lbl_1_data_8F4[j][1]; + } + } + } else { + for (i = 0; i < temp_r31->unk26; i++, var_r29++) { + for (j = 0; j < 4; j++, var_r28++) { + (*var_r28)[0] = 4.0f * lbl_1_data_8F4[j][0]; + (*var_r28)[1] = 4.0f * lbl_1_data_8F4[j][1]; + } + } + } + DCFlushRangeNoSync(temp_r31->unk40, temp_r31->unk26 * sizeof(*temp_r31->unk40) * 4); + DCFlushRangeNoSync(temp_r31->unk44, temp_r31->unk26 * sizeof(*temp_r31->unk44) * 4); + DCFlushRangeNoSync(temp_r31->unk3C, temp_r31->unk26 * sizeof(*temp_r31->unk3C)); + PPCSync(); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r31->unk40, 12); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &temp_r31->unk3C->unk44, 76); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX0, temp_r31->unk44, 8); + GXCallDisplayList(temp_r31->unk48, temp_r31->unk34); + if (shadowModelDrawF == 0) { + if (!(temp_r31->unk21 & 2)) { + temp_r31->unk28++; + } + if (temp_r31->unk30 != 0 && temp_r31->unk30 <= temp_r31->unk28) { + if (temp_r31->unk21 & 1) { + temp_r31->unk28 = 0; + } + temp_r31->unk28 = temp_r31->unk30; + } + temp_r31->unk2C = GlobalCounter; + } +} + +float fn_1_121DC(float arg0, float arg1) { + float var_f31; + + if (arg0 >= 360.0f) { + arg0 -= 360.0f; + } else if (arg0 < 0.0f) { + arg0 += 360.0f; + } + if (arg1 >= 360.0f) { + arg1 -= 360.0f; + } else if (arg1 < 0.0f) { + arg1 += 360.0f; + } + var_f31 = arg0 - arg1; + if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } else if (var_f31 >= 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} + +float fn_1_122F4(float arg0, float arg1, float arg2) { + float var_f30; + float var_f31; + + if (arg0 >= 360.0) { + arg0 -= 360.0; + } else if (arg0 < 0.0) { + arg0 += 360.0; + } + if (arg1 >= 360.0) { + arg1 -= 360.0; + } else if (arg1 < 0.0) { + arg1 += 360.0; + } + var_f30 = arg0 - arg1 + 360.0; + if (fabs(var_f30) >= 360.0) { + var_f30 = fmod(var_f30, 360.0); + } + if (var_f30 < 180.0) { + if (var_f30 <= arg2) { + var_f31 = var_f30; + } else { + var_f31 = arg2; + } + } else { + if (360.0 - var_f30 <= arg2) { + var_f31 = -(360.0 - var_f30); + } else { + var_f31 = -arg2; + } + } + var_f31 += arg1; + if (var_f31 >= 360.0) { + var_f31 -= 360.0; + } else if (var_f31 < 0.0) { + var_f31 += 360.0; + } + return var_f31; +} + +float fn_1_12544(float arg0, float arg1, float arg2) { + float var_f28; + + var_f28 = fn_1_121DC(arg2, arg1); + return fn_1_122F4(arg2, arg1, fabs(var_f28 * arg0)); +} + +void fn_1_1293C(Mtx arg0, Vec* arg1) { + Vec sp8; + + sp8.x = arg0[0][0] * arg1->x + arg0[0][1] * arg1->y + arg0[0][2] * arg1->z; + sp8.y = arg0[1][0] * arg1->x + arg0[1][1] * arg1->y + arg0[1][2] * arg1->z; + sp8.z = arg0[2][0] * arg1->x + arg0[2][1] * arg1->y + arg0[2][2] * arg1->z; + *arg1 = sp8; +} + +void fn_1_129F0(Vec* arg0, Vec* arg1, Vec* arg2, float* arg3) { + Vec sp18; + Vec spC; + float var_f30; + float var_f29; + + sp18.x = arg1->x - arg0->x; + sp18.y = arg1->y - arg0->y; + sp18.z = arg1->z - arg0->z; + spC.x = arg2->x - arg1->x; + spC.y = arg2->y - arg1->y; + spC.z = arg2->z - arg1->z; + arg3[0] = sp18.y * spC.z - sp18.z * spC.y; + arg3[1] = sp18.z * spC.x - sp18.x * spC.z; + arg3[2] = sp18.x * spC.y - sp18.y * spC.x; + var_f29 = arg3[0] * arg3[0] + arg3[1] * arg3[1] + arg3[2] * arg3[2]; + var_f30 = sqrtf(var_f29); + if (var_f30 != 0.0f) { + var_f30 = 1.0f / var_f30; + } else { + var_f30 = 0.0f; + } + arg3[0] *= var_f30; + arg3[1] *= var_f30; + arg3[2] *= var_f30; + arg3[3] = -(arg3[0] * arg0->x + arg3[1] * arg0->y + arg3[2] * arg0->z); +} + +s32 fn_1_12C6C(Vec* arg0, Vec* arg1, float* arg2) { + float temp_f31; + float temp_f30; + + temp_f31 = arg0->x * arg2[0] + arg0->y * arg2[1] + arg0->z * arg2[2] + arg2[3]; + temp_f30 = arg1->x * arg2[0] + arg1->y * arg2[1] + arg1->z * arg2[2] + arg2[3]; + if (temp_f31 <= 0.0f && temp_f30 > 0.0f) { + return 1; + } + if (temp_f31 >= 0.0f && temp_f30 < 0.0f) { + return -1; + } + return 0; +} + +float fn_1_12D6C(Vec* arg0, Vec* arg1, s32 arg2, float arg3, float arg4) { + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + + switch (arg2) { + case 0: + var_f31 = arg0->y - arg3; + var_f30 = arg0->z - arg4; + var_f29 = arg1->y - arg3; + var_f28 = arg1->z - arg4; + break; + case 1: + var_f31 = arg0->x - arg3; + var_f30 = arg0->z - arg4; + var_f29 = arg1->x - arg3; + var_f28 = arg1->z - arg4; + break; + case 2: + var_f31 = arg0->x - arg3; + var_f30 = arg0->y - arg4; + var_f29 = arg1->x - arg3; + var_f28 = arg1->y - arg4; + break; + } + var_f27 = -(var_f30 * var_f29 - var_f31 * var_f28); + return var_f27; +} + +u8 lbl_1_data_914[][2] = { + { 0, 1 }, { 1, 2 }, { 2, 0 } +}; + +float fn_1_12E68(Vec* arg0, Vec* arg1, s32 arg2) { + float var_f31; + float var_f30; + float var_f29; + s32 i; + + switch (arg2) { + case 0: + var_f31 = arg1->y; + var_f30 = arg1->z; + break; + case 1: + var_f31 = arg1->x; + var_f30 = arg1->z; + break; + case 2: + var_f31 = arg1->x; + var_f30 = arg1->y; + break; + } + var_f29 = fn_1_12D6C(&arg0[lbl_1_data_914[0][0]], &arg0[lbl_1_data_914[0][1]], arg2, var_f31, var_f30); + if (var_f29 > 0.0f) { + for (i = 1; i < 3; i++) { + var_f29 = fn_1_12D6C(&arg0[lbl_1_data_914[i][0]], &arg0[lbl_1_data_914[i][1]], arg2, var_f31, var_f30); + if (var_f29 == 0.0f) { + return 1.0f; + } + if (var_f29 < 0.0f) { + return 0.0f; + } + } + return 1.0f; + } else { + for (i = 1; i < 3; i++) { + var_f29 = fn_1_12D6C(&arg0[lbl_1_data_914[i][0]], &arg0[lbl_1_data_914[i][1]], arg2, var_f31, var_f30); + if (var_f29 == 0.0f) { + return -1.0f; + } + if (var_f29 > 0.0f) { + return 0.0f; + } + } + return -1.0f; + } +} + +void fn_1_1334C(float* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { + float temp_f26; + float temp_f25; + float temp_f24; + float temp_f31; + float temp_f30; + float temp_f29; + float var_f22; + float var_f21; + float var_f20; + float var_f19; + float var_f18; + float spC; + float var_f28; + + temp_f26 = arg0[0]; + temp_f25 = arg0[1]; + temp_f24 = arg0[2]; + var_f19 = arg3->x; + var_f18 = arg3->y; + spC = arg3->z; + temp_f31 = arg2->x; + temp_f30 = arg2->y; + temp_f29 = arg2->z; + var_f22 = arg1->x; + var_f21 = arg1->y; + var_f20 = arg1->z; + var_f28 = sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30 + temp_f29 * temp_f29); + if (var_f28 != 0.0f) { + var_f28 = 1.0f / var_f28; + } + temp_f31 *= var_f28; + temp_f30 *= var_f28; + temp_f29 *= var_f28; + var_f28 = temp_f26 * temp_f31 + temp_f25 * temp_f30 + temp_f24 * temp_f29; + if (var_f28 != 0.0f) { + var_f28 = -(temp_f26 * (var_f22 - var_f19) + temp_f25 * (var_f21 - var_f18) + temp_f24 * (var_f20 - spC)) / var_f28; + } else { + var_f28 = 0.0f; + } + arg4->x = arg1->x + var_f28 * arg2->x; + arg4->y = arg1->y + var_f28 * arg2->y; + arg4->z = arg1->z + var_f28 * arg2->z; +} + +float fn_1_1367C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, f32* arg4) { + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float temp_f31; + + arg0->z = 0.0f; + arg1->z = 0.0f; + arg2->z = 0.0f; + PSVECSubtract(arg1, arg0, &sp2C); + PSVECSubtract(arg2, arg0, &sp20); + temp_f31 = (sp2C.x * sp20.x + sp2C.y * sp20.y) / (sp2C.x * sp2C.x + sp2C.y * sp2C.y); + if (arg4 != NULL) { + *arg4 = temp_f31; + } + PSVECScale(&sp2C, &sp14, temp_f31); + PSVECAdd(&sp2C, &sp14, &sp38); + if (arg3 != NULL) { + *arg3 = sp38; + } + PSVECSubtract(arg2, &sp38, &sp8); + return PSVECMag(&sp8); +} + +s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) { + Vec sp40; + Vec sp34; + Vec sp28; + Vec sp1C; + Vec sp10; + f32 temp_f30; + f32 temp_f29; + f32 temp_f28; + f32 var_f31; + + PSVECAdd(arg1, arg2, &sp28); + *arg3 = sp28; + PSVECNormalize(arg2, &sp1C); + PSVECScale(&sp1C, &sp1C, arg4); + PSVECAdd(arg1, &sp1C, &sp40); + PSVECAdd(&sp28, &sp1C, &sp34); + PSVECNormalize(arg2, &sp1C); + PSVECScale(&sp1C, &sp10, -arg4); + switch (arg5) { + case 0: + if (sp40.y >= arg0[0].y && sp34.y < arg0[0].y) { + if (sp1C.y == 0.0f) { + var_f31 = 0.0f; + } else { + var_f31 = (arg0[0].y - arg1->y) / sp1C.y; + } + temp_f30 = arg1->x + var_f31 * sp1C.x; + temp_f28 = arg1->z + var_f31 * sp1C.z; + if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x + && temp_f28 >= arg0[0].z && temp_f28 <= arg0[2].z) + { + arg3->x = temp_f30; + arg3->y = arg0[0].y + arg4 + 1.0f; + arg3->z = temp_f28; + PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + return 1; + } + } + break; + case 1: + if (sp40.y <= arg0[0].y && sp34.y > arg0[0].y) { + if (sp1C.y == 0.0f) { + var_f31 = 0.0f; + } else { + var_f31 = (arg0[0].y - arg1->y) / sp1C.y; + } + temp_f30 = arg1->x + var_f31 * sp1C.x; + temp_f28 = arg1->z + var_f31 * sp1C.z; + if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x + && temp_f28 <= arg0[0].z && temp_f28 >= arg0[2].z) + { + arg3->x = temp_f30; + arg3->y = arg0[0].y - arg4 - 1.0f; + arg3->z = temp_f28; + PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + return 1; + } + } + break; + case 2: + if (sp40.x <= arg0[0].x && sp34.x > arg0[0].x) { + if (sp1C.x == 0.0f) { + var_f31 = 0.0f; + } else { + var_f31 = (arg0[0].x - arg1->x) / sp1C.x; + } + temp_f29 = arg1->y + var_f31 * sp1C.y; + temp_f28 = arg1->z + var_f31 * sp1C.z; + if (temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y + && temp_f28 >= arg0[0].z && temp_f28 <= arg0[2].z) + { + arg3->x = arg0[0].x - arg4 - 1.0f; + arg3->y = temp_f29; + arg3->z = temp_f28; + PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + return 1; + } + } + break; + case 3: + if (sp40.x >= arg0[0].x && sp34.x < arg0[0].x) { + if (sp1C.x == 0.0f) { + var_f31 = 0.0f; + } else { + var_f31 = (arg0[0].x - arg1->x) / sp1C.x; + } + temp_f29 = arg1->y + var_f31 * sp1C.y; + temp_f28 = arg1->z + var_f31 * sp1C.z; + if (temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y + && temp_f28 <= arg0[0].z && temp_f28 >= arg0[2].z) + { + arg3->x = arg0[0].x + arg4 + 1.0f; + arg3->y = temp_f29; + arg3->z = temp_f28; + PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + return 1; + } + } + break; + case 4: + if (sp40.z >= arg0[0].z && sp34.z < arg0[0].z) { + if (sp1C.z == 0.0f) { + var_f31 = 0.0f; + } else { + var_f31 = (arg0[0].z - arg1->z) / sp1C.z; + } + temp_f30 = arg1->x + var_f31 * sp1C.x; + temp_f29 = arg1->y + var_f31 * sp1C.y; + if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x + && temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y) + { + arg3->x = temp_f30; + arg3->y = temp_f29; + arg3->z = arg0[0].z + arg4 + 1.0f; + PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + return 1; + } + } + break; + case 5: + if (sp40.z <= arg0[0].z && sp34.z > arg0[0].z) { + if (sp1C.z == 0.0f) { + var_f31 = 0.0f; + } else { + var_f31 = (arg0[0].z - arg1->z) / sp1C.z; + } + temp_f30 = arg1->x + var_f31 * sp1C.x; + temp_f29 = arg1->y + var_f31 * sp1C.y; + if (temp_f30 <= arg0[0].x && temp_f30 >= arg0[2].x + && temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y) + { + arg3->x = temp_f30; + arg3->y = temp_f29; + arg3->z = arg0[0].z - arg4 - 1.0f; + PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + return 1; + } + } + break; + } + return 0; +} diff --git a/src/REL/m426Dll/main.c b/src/REL/m426Dll/main.c index ae15dbe3..7066b831 100644 --- a/src/REL/m426Dll/main.c +++ b/src/REL/m426Dll/main.c @@ -3170,7 +3170,7 @@ void fn_1_88B4(ModelData *arg0, Mtx arg1) GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_F32, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); GXSetArray(GX_VA_POS, lbl_1_data_27C, 12); GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); diff --git a/src/REL/m440Dll/main.c b/src/REL/m440Dll/main.c index 1ec95168..e6c29642 100644 --- a/src/REL/m440Dll/main.c +++ b/src/REL/m440Dll/main.c @@ -1875,11 +1875,11 @@ void fn_1_806C(ModelData *arg0, Mtx arg1) GXSetChanMatColor(GX_COLOR0A0, sp10); GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, temp_r31->unkC, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r31->unkC, 12); GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_TEX_S, GX_RGBA6, 0); - GXSetArray(GX_VA_NRM, temp_r31->unk14, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, temp_r31->unk14, 12); lbl_1_bss_C = temp_r31->unk3C; if (temp_r31->unk28->unk34 == 0) { GXSetNumTevStages(1); @@ -1893,7 +1893,7 @@ void fn_1_806C(ModelData *arg0, Mtx arg1) } else { GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); GXSetArray(GX_VA_TEX0, temp_r31->unk1C, 8); temp_r29 = &temp_r31->unk2C[temp_r31->unk28->unk38[0]]; fn_1_7D60(temp_r29->unk80, temp_r29, 0); @@ -2600,7 +2600,7 @@ void fn_1_A390(ModelData *arg0, Mtx arg1) GXSetVtxDesc(GX_VA_POS, GX_DIRECT); GXSetVtxDesc(GX_VA_CLR0, GX_DIRECT); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetNumTevStages(1); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_RASC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); diff --git a/src/REL/m448Dll/main.c b/src/REL/m448Dll/main.c index fce3e974..1ee1eb09 100755 --- a/src/REL/m448Dll/main.c +++ b/src/REL/m448Dll/main.c @@ -220,11 +220,11 @@ void fn_1_4FC(ModelData *model, Mtx matrix) GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0); GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_RGBA6, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); GXSetVtxDesc(GX_VA_CLR0, GX_DIRECT); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); for (i = 0; i < 0; i++) { s32 sp84[5] = { 0, 1, 1, 0, 1 }; float sp70[5] = { 1.0f, 2.0f, 2.5f, 0.0f, 0.0f }; diff --git a/src/REL/modeltestDll/main.c b/src/REL/modeltestDll/main.c index a871df64..7c8dc93a 100644 --- a/src/REL/modeltestDll/main.c +++ b/src/REL/modeltestDll/main.c @@ -775,13 +775,13 @@ void fn_1_2B68(ModelData *mdl, Mtx arg1) GXSetVtxDesc(GX_VA_POS, GX_DIRECT); GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); GXSetVtxDesc(GX_VA_NRM, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0U); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0U); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0U); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); GXSetCullMode(GX_CULL_NONE); GXSetZMode(GX_FALSE, GX_ALWAYS, GX_FALSE); GXSetNumTexGens(1); - GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3CU, 0U, 0x7DU); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); GXSetNumTevStages(1); sp17.r = sp17.g = sp17.b = sp17.a = 255; From dd04a5faff8005e05ec1ce966f5ad4194d066863 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 30 Dec 2024 20:54:58 +0100 Subject: [PATCH 086/178] Match ar/ar.c --- configure.py | 2 +- src/dolphin/ar/ar.c | 418 +++++++++++++++++++++++++++++--------------- 2 files changed, 277 insertions(+), 143 deletions(-) diff --git a/configure.py b/configure.py index 08fc269a..88e5c103 100644 --- a/configure.py +++ b/configure.py @@ -567,7 +567,7 @@ config.libs = [ DolphinLib( "ar", [ - Object(NonMatching, "dolphin/ar/ar.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/ar/ar.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/ar/arq.c"), ], ), diff --git a/src/dolphin/ar/ar.c b/src/dolphin/ar/ar.c index 7f43c1a7..529a6000 100644 --- a/src/dolphin/ar/ar.c +++ b/src/dolphin/ar/ar.c @@ -2,6 +2,7 @@ #include "dolphin/hw_regs.h" #include "dolphin/os.h" +#include "dolphin/os/OSCache.h" static ARCallback __AR_Callback; static u32 __AR_Size; @@ -10,82 +11,89 @@ static u32 __AR_ExpansionSize; static u32 __AR_StackPointer; static u32 __AR_FreeBlocks; -static u32* __AR_BlockLength; +static u32 *__AR_BlockLength; static volatile BOOL __AR_init_flag = FALSE; -static void __ARHandler(__OSInterrupt interrupt, OSContext* context); +static void __ARHandler(__OSInterrupt interrupt, OSContext *context); static void __ARChecksize(void); static void __ARClearArea(u32 start_addr, u32 length); -ARCallback ARRegisterDMACallback(ARCallback callback) { - ARCallback oldCb; - BOOL enabled; - oldCb = __AR_Callback; - enabled = OSDisableInterrupts(); - __AR_Callback = callback; - OSRestoreInterrupts(enabled); - return oldCb; +// TODO import defines for magic numbers from other repos + +ARCallback ARRegisterDMACallback(ARCallback callback) +{ + ARCallback oldCb; + BOOL enabled; + oldCb = __AR_Callback; + enabled = OSDisableInterrupts(); + __AR_Callback = callback; + OSRestoreInterrupts(enabled); + return oldCb; } -u32 ARGetDMAStatus() { - BOOL enabled; - u32 val; - enabled = OSDisableInterrupts(); - val = __DSPRegs[5] & 0x0200; - OSRestoreInterrupts(enabled); - return val; +u32 ARGetDMAStatus() +{ + BOOL enabled; + u32 val; + enabled = OSDisableInterrupts(); + val = __DSPRegs[5] & 0x0200; + OSRestoreInterrupts(enabled); + return val; } -void ARStartDMA(u32 type, u32 mainmem_addr, u32 aram_addr, u32 length) { - BOOL enabled; +void ARStartDMA(u32 type, u32 mainmem_addr, u32 aram_addr, u32 length) +{ + BOOL enabled; - enabled = OSDisableInterrupts(); + enabled = OSDisableInterrupts(); - __DSPRegs[16] = (u16)(__DSPRegs[16] & ~0x3ff) | (u16)(mainmem_addr >> 16); - __DSPRegs[17] = (u16)(__DSPRegs[17] & ~0xffe0) | (u16)(mainmem_addr & 0xffff); - __DSPRegs[18] = (u16)(__DSPRegs[18] & ~0x3ff) | (u16)(aram_addr >> 16); - __DSPRegs[19] = (u16)(__DSPRegs[19] & ~0xffe0) | (u16)(aram_addr & 0xffff); - __DSPRegs[20] = (u16)((__DSPRegs[20] & ~0x8000) | (type << 15)); - __DSPRegs[20] = (u16)(__DSPRegs[20] & ~0x3ff) | (u16)(length >> 16); - __DSPRegs[21] = (u16)(__DSPRegs[21] & ~0xffe0) | (u16)(length & 0xffff); - OSRestoreInterrupts(enabled); + __DSPRegs[16] = (u16)(__DSPRegs[16] & ~0x3ff) | (u16)(mainmem_addr >> 16); + __DSPRegs[17] = (u16)(__DSPRegs[17] & ~0xffe0) | (u16)(mainmem_addr & 0xffff); + __DSPRegs[18] = (u16)(__DSPRegs[18] & ~0x3ff) | (u16)(aram_addr >> 16); + __DSPRegs[19] = (u16)(__DSPRegs[19] & ~0xffe0) | (u16)(aram_addr & 0xffff); + __DSPRegs[20] = (u16)((__DSPRegs[20] & ~0x8000) | (type << 15)); + __DSPRegs[20] = (u16)(__DSPRegs[20] & ~0x3ff) | (u16)(length >> 16); + __DSPRegs[21] = (u16)(__DSPRegs[21] & ~0xffe0) | (u16)(length & 0xffff); + OSRestoreInterrupts(enabled); } -u32 ARAlloc(u32 length) { - u32 tmp; - BOOL enabled; +u32 ARAlloc(u32 length) +{ + u32 tmp; + BOOL enabled; - enabled = OSDisableInterrupts(); - tmp = __AR_StackPointer; - __AR_StackPointer += length; - *__AR_BlockLength = length; - __AR_BlockLength++; - __AR_FreeBlocks--; - OSRestoreInterrupts(enabled); + enabled = OSDisableInterrupts(); + tmp = __AR_StackPointer; + __AR_StackPointer += length; + *__AR_BlockLength = length; + __AR_BlockLength++; + __AR_FreeBlocks--; + OSRestoreInterrupts(enabled); - return tmp; + return tmp; } #if NONMATCHING -u32 ARFree(u32* length) { - BOOL old; +u32 ARFree(u32 *length) +{ + BOOL old; - old = OSDisableInterrupts(); + old = OSDisableInterrupts(); - __AR_BlockLength--; + __AR_BlockLength--; - if (length) { - *length = *__AR_BlockLength; - } + if (length) { + *length = *__AR_BlockLength; + } - __AR_StackPointer -= *__AR_BlockLength; + __AR_StackPointer -= *__AR_BlockLength; - __AR_FreeBlocks++; + __AR_FreeBlocks++; - OSRestoreInterrupts(old); + OSRestoreInterrupts(old); - return __AR_StackPointer; + return __AR_StackPointer; } #else /* clang-format off */ @@ -129,123 +137,249 @@ lbl_8036DAB4: /* clang-format on */ #endif -BOOL ARCheckInit() { return __AR_init_flag; } - -u32 ARInit(u32* stack_index_addr, u32 num_entries) { - - BOOL old; - u16 refresh; - - if (__AR_init_flag == TRUE) { - return 0x4000; - } - - old = OSDisableInterrupts(); - - __AR_Callback = NULL; - - __OSSetInterruptHandler(__OS_INTERRUPT_DSP_ARAM, __ARHandler); - __OSUnmaskInterrupts(OS_INTERRUPTMASK_DSP_ARAM); - - __AR_StackPointer = 0x4000; - __AR_FreeBlocks = num_entries; - __AR_BlockLength = stack_index_addr; - - refresh = (u16)(__DSPRegs[13] & 0x000000ff); - - __DSPRegs[13] = (u16)((__DSPRegs[13] & ~0x000000ff) | (refresh & 0x000000ff)); - - __ARChecksize(); - - __AR_init_flag = TRUE; - - OSRestoreInterrupts(old); - - return __AR_StackPointer; -} - -u32 ARGetBaseAddress(void) { return 0x4000; } - -void ARSetSize(void) +BOOL ARCheckInit() { - + return __AR_init_flag; } -u32 ARGetSize() { return __AR_Size; } +u32 ARInit(u32 *stack_index_addr, u32 num_entries) +{ -static void __ARHandler(__OSInterrupt interrupt, OSContext* context) { + BOOL old; + u16 refresh; - OSContext exceptionContext; - u16 tmp; + if (__AR_init_flag == TRUE) { + return 0x4000; + } - tmp = __DSPRegs[5]; - tmp = (u16)((tmp & ~0x00000088) | 0x20); - __DSPRegs[5] = tmp; + old = OSDisableInterrupts(); - OSClearContext(&exceptionContext); - OSSetCurrentContext(&exceptionContext); + __AR_Callback = NULL; - if (__AR_Callback) { - (*__AR_Callback)(); - } + __OSSetInterruptHandler(__OS_INTERRUPT_DSP_ARAM, __ARHandler); + __OSUnmaskInterrupts(OS_INTERRUPTMASK_DSP_ARAM); - OSClearContext(&exceptionContext); - OSSetCurrentContext(context); + __AR_StackPointer = 0x4000; + __AR_FreeBlocks = num_entries; + __AR_BlockLength = stack_index_addr; + + refresh = (u16)(__DSPRegs[13] & 0x000000ff); + + __DSPRegs[13] = (u16)((__DSPRegs[13] & ~0x000000ff) | (refresh & 0x000000ff)); + + __ARChecksize(); + + __AR_init_flag = TRUE; + + OSRestoreInterrupts(old); + + return __AR_StackPointer; +} + +void ARSetSize(void) { } + +u32 ARGetBaseAddress(void) +{ + return 0x4000; +} + +u32 ARGetSize() +{ + return __AR_Size; +} + +static void __ARHandler(__OSInterrupt interrupt, OSContext *context) +{ + + OSContext exceptionContext; + u16 tmp; + + tmp = __DSPRegs[5]; + tmp = (u16)((tmp & ~0x00000088) | 0x20); + __DSPRegs[5] = tmp; + + OSClearContext(&exceptionContext); + OSSetCurrentContext(&exceptionContext); + + if (__AR_Callback) { + (*__AR_Callback)(); + } + + OSClearContext(&exceptionContext); + OSSetCurrentContext(context); } #define RoundUP32(x) (((u32)(x) + 32 - 1) & ~(32 - 1)) -void __ARClearInterrupt(void) { +void __ARClearInterrupt(void) +{ - u16 tmp; - tmp = __DSPRegs[5]; - tmp = (u16)((tmp & ~(0x00000080 | 0x00000008)) | 0x00000020); - __DSPRegs[5] = tmp; + u16 tmp; + tmp = __DSPRegs[5]; + tmp = (u16)((tmp & ~(0x00000080 | 0x00000008)) | 0x00000020); + __DSPRegs[5] = tmp; } -u16 __ARGetInterruptStatus(void) { return ((u16)(__DSPRegs[5] & 0x0200)); } - -static void __ARWaitForDMA(void) { - - while (__DSPRegs[5] & 0x0200) { - } +u16 __ARGetInterruptStatus(void) +{ + return ((u16)(__DSPRegs[5] & 0x0200)); } -static void __ARWriteDMA(u32 mmem_addr, u32 aram_addr, u32 length) { +static void __ARWaitForDMA(void) +{ - __DSPRegs[16] = (u16)((__DSPRegs[16] & ~0x03ff) | (u16)(mmem_addr >> 16)); - __DSPRegs[16 + 1] = (u16)((__DSPRegs[16 + 1] & ~0xffe0) | (u16)(mmem_addr & 0xffff)); - - __DSPRegs[18] = (u16)((__DSPRegs[18] & ~0x03ff) | (u16)(aram_addr >> 16)); - __DSPRegs[18 + 1] = (u16)((__DSPRegs[18 + 1] & ~0xffe0) | (u16)(aram_addr & 0xffff)); - - __DSPRegs[20] = (u16)(__DSPRegs[20] & ~0x8000); - - __DSPRegs[20] = (u16)((__DSPRegs[20] & ~0x03ff) | (u16)(length >> 16)); - __DSPRegs[20 + 1] = (u16)((__DSPRegs[20 + 1] & ~0xffe0) | (u16)(length & 0xffff)); - - __ARWaitForDMA(); - - __ARClearInterrupt(); + while (__DSPRegs[5] & 0x0200) { } } -static void __ARReadDMA(u32 mmem_addr, u32 aram_addr, u32 length) { +static void __ARWriteDMA(u32 mmem_addr, u32 aram_addr, u32 length) +{ - __DSPRegs[16] = (u16)((__DSPRegs[16] & ~0x03ff) | (u16)(mmem_addr >> 16)); - __DSPRegs[16 + 1] = (u16)((__DSPRegs[16 + 1] & ~0xffe0) | (u16)(mmem_addr & 0xffff)); + __DSPRegs[16] = (u16)((__DSPRegs[16] & ~0x03ff) | (u16)(mmem_addr >> 16)); + __DSPRegs[16 + 1] = (u16)((__DSPRegs[16 + 1] & ~0xffe0) | (u16)(mmem_addr & 0xffff)); - __DSPRegs[18] = (u16)((__DSPRegs[18] & ~0x03ff) | (u16)(aram_addr >> 16)); - __DSPRegs[18 + 1] = (u16)((__DSPRegs[18 + 1] & ~0xffe0) | (u16)(aram_addr & 0xffff)); + __DSPRegs[18] = (u16)((__DSPRegs[18] & ~0x03ff) | (u16)(aram_addr >> 16)); + __DSPRegs[18 + 1] = (u16)((__DSPRegs[18 + 1] & ~0xffe0) | (u16)(aram_addr & 0xffff)); - __DSPRegs[20] = (u16)(__DSPRegs[20] | 0x8000); + __DSPRegs[20] = (u16)(__DSPRegs[20] & ~0x8000); - __DSPRegs[20] = (u16)((__DSPRegs[20] & ~0x03ff) | (u16)(length >> 16)); - __DSPRegs[20 + 1] = (u16)((__DSPRegs[20 + 1] & ~0xffe0) | (u16)(length & 0xffff)); + __DSPRegs[20] = (u16)((__DSPRegs[20] & ~0x03ff) | (u16)(length >> 16)); + __DSPRegs[20 + 1] = (u16)((__DSPRegs[20 + 1] & ~0xffe0) | (u16)(length & 0xffff)); - __ARWaitForDMA(); + __ARWaitForDMA(); - __ARClearInterrupt(); + __ARClearInterrupt(); } -static void __ARChecksize(void) { - //TODO: Implement for this SDK version -} \ No newline at end of file +static void __ARReadDMA(u32 mmem_addr, u32 aram_addr, u32 length) +{ + + __DSPRegs[16] = (u16)((__DSPRegs[16] & ~0x03ff) | (u16)(mmem_addr >> 16)); + __DSPRegs[16 + 1] = (u16)((__DSPRegs[16 + 1] & ~0xffe0) | (u16)(mmem_addr & 0xffff)); + + __DSPRegs[18] = (u16)((__DSPRegs[18] & ~0x03ff) | (u16)(aram_addr >> 16)); + __DSPRegs[18 + 1] = (u16)((__DSPRegs[18 + 1] & ~0xffe0) | (u16)(aram_addr & 0xffff)); + + __DSPRegs[20] = (u16)(__DSPRegs[20] | 0x8000); + + __DSPRegs[20] = (u16)((__DSPRegs[20] & ~0x03ff) | (u16)(length >> 16)); + __DSPRegs[20 + 1] = (u16)((__DSPRegs[20 + 1] & ~0xffe0) | (u16)(length & 0xffff)); + + __ARWaitForDMA(); + + __ARClearInterrupt(); +} + +void __ARChecksize(void) +{ + u8 test_data_pad[0x20 + 31]; + u8 dummy_data_pad[0x20 + 31]; + u8 buffer_pad[0x20 + 31]; + + u32 *test_data; + u32 *dummy_data; + u32 *buffer; + + u16 ARAM_mode; + u32 ARAM_size; + + u32 i; + + while (!(__DSPRegs[11] & 1)) + ; + + ARAM_mode = 3; + ARAM_size = __AR_InternalSize = 0x1000000; + __DSPRegs[9] = (u16)((__DSPRegs[9] & ~(0x00000007 | 0x00000038)) | 0x20 | 2 | 1); + + test_data = (u32 *)(RoundUP32((u32)(test_data_pad))); + dummy_data = (u32 *)(RoundUP32((u32)(dummy_data_pad))); + buffer = (u32 *)(RoundUP32((u32)(buffer_pad))); + + for (i = 0; i < 8; i++) { + *(test_data + i) = 0xdeadbeef; + *(dummy_data + i) = 0xbad0bad0; + } + + DCFlushRange((void *)test_data, 0x20); + DCFlushRange((void *)dummy_data, 0x20); + + __AR_ExpansionSize = 0; + + __ARWriteDMA((u32)dummy_data, ARAM_size, 0x20U); + __ARWriteDMA((u32)dummy_data, ARAM_size + 0x200000, 0x20U); + __ARWriteDMA((u32)dummy_data, ARAM_size + 0x01000000, 0x20U); + __ARWriteDMA((u32)dummy_data, ARAM_size + 0x200, 0x20U); + __ARWriteDMA((u32)dummy_data, ARAM_size + 0x400000, 0x20U); + + memset((void *)buffer, 0, 0x20); + DCFlushRange((void *)buffer, 0x20); + + __ARWriteDMA((u32)test_data, ARAM_size + 0x0000000, 0x20); + + DCInvalidateRange((void *)buffer, 0x20); + + __ARReadDMA((u32)buffer, ARAM_size + 0x0000000, 0x20); + PPCSync(); + + if (buffer[0] == test_data[0]) { + memset((void *)buffer, 0, 0x20); + DCFlushRange((void *)buffer, 0x20); + + __ARReadDMA((u32)buffer, ARAM_size + 0x0200000, 0x20); + PPCSync(); + + if (buffer[0] == test_data[0]) { + ARAM_mode |= 0 << 1; + ARAM_size += 0x0200000; + __AR_ExpansionSize = 0x0200000; + } + else { + memset((void *)buffer, 0, 0x20); + DCFlushRange((void *)buffer, 0x20); + + __ARReadDMA((u32)buffer, ARAM_size + 0x1000000, 0x20); + PPCSync(); + + if (buffer[0] == test_data[0]) { + ARAM_mode |= 4 << 1; + ARAM_size += 0x0400000; + __AR_ExpansionSize = 0x0400000; + } + else { + memset((void *)buffer, 0, 0x20); + DCFlushRange((void *)buffer, 0x20); + + __ARReadDMA((u32)buffer, ARAM_size + 0x0000200, 0x20); + PPCSync(); + + if (buffer[0] == test_data[0]) { + ARAM_mode |= 8 << 1; + ARAM_size += 0x800000; + __AR_ExpansionSize = 0x0800000; + } + else { + memset((void *)buffer, 0, 0x20); + DCFlushRange((void *)buffer, 0x20); + + __ARReadDMA((u32)buffer, ARAM_size + 0x0400000, 0x20); + PPCSync(); + + if (buffer[0] == test_data[0]) { + ARAM_mode |= 12 << 1; + ARAM_size += 0x1000000; + __AR_ExpansionSize = 0x1000000; + } + else { + ARAM_mode |= 16 << 1; + ARAM_size += 0x2000000; + __AR_ExpansionSize = 0x2000000; + } + } + } + } + __DSPRegs[9] = (u16)((__DSPRegs[9] & ~(0x07 | 0x38)) | ARAM_mode); + } + + *(u32 *)OSPhysicalToUncached(0x00D0) = ARAM_size; + + __AR_Size = ARAM_size; +} From b4279816e7bf8ed81994acee488615906417f063 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Mon, 30 Dec 2024 21:01:04 +0100 Subject: [PATCH 087/178] Uncomment ar.c::ARFree --- src/dolphin/ar/ar.c | 42 ------------------------------------------ 1 file changed, 42 deletions(-) diff --git a/src/dolphin/ar/ar.c b/src/dolphin/ar/ar.c index 529a6000..94954318 100644 --- a/src/dolphin/ar/ar.c +++ b/src/dolphin/ar/ar.c @@ -74,7 +74,6 @@ u32 ARAlloc(u32 length) return tmp; } -#if NONMATCHING u32 ARFree(u32 *length) { BOOL old; @@ -95,47 +94,6 @@ u32 ARFree(u32 *length) return __AR_StackPointer; } -#else -/* clang-format off */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm u32 ARFree(u32* length) { - nofralloc - mflr r0 - stw r0, 4(r1) - stwu r1, -0x18(r1) - stw r31, 0x14(r1) - mr r31, r3 - bl OSDisableInterrupts - lwz r4, __AR_BlockLength - cmplwi r31, 0 - addi r0, r4, -4 - stw r0, __AR_BlockLength - beq lbl_8036DAB4 - lwz r4, __AR_BlockLength - lwz r0, 0(r4) - stw r0, 0(r31) -lbl_8036DAB4: - lwz r5, __AR_BlockLength - lwz r4, __AR_FreeBlocks - lwz r6, 0(r5) - addi r0, r4, 1 - lwz r5, __AR_StackPointer - stw r0, __AR_FreeBlocks - subf r0, r6, r5 - stw r0, __AR_StackPointer - bl OSRestoreInterrupts - lwz r3, __AR_StackPointer - lwz r0, 0x1c(r1) - lwz r31, 0x14(r1) - addi r1, r1, 0x18 - mtlr r0 - blr -} -#pragma pop -/* clang-format on */ -#endif BOOL ARCheckInit() { From 3b90bdcb7fb1525f122820f728d66b94fa4547ed Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Tue, 31 Dec 2024 02:21:59 +0100 Subject: [PATCH 088/178] Match a lot of GX --- config/GMPE01_00/symbols.txt | 100 +-- config/GMPE01_01/symbols.txt | 2 +- config/GMPJ01_00/symbols.txt | 2 +- config/GMPP01_00/symbols.txt | 2 +- configure.py | 22 +- include/dolphin/gx/GXEnum.h | 2 +- include/dolphin/gx/GXPriv.h | 455 +++++++++--- include/dolphin/gx/GXStruct.h | 20 + include/dolphin/gx/GXTexture.h | 50 +- src/dolphin/gx/GXAttr.c | 586 +++++++++++++++ src/dolphin/gx/GXBump.c | 335 +++++++++ src/dolphin/gx/GXDisplayList.c | 83 +++ src/dolphin/gx/GXFifo.c | 559 ++++++++++++++ src/dolphin/gx/GXFrameBuf.c | 604 +++++++++++++++ src/dolphin/gx/GXGeometry.c | 146 ++++ src/dolphin/gx/GXInit.c | 372 ++++++++++ src/dolphin/gx/GXLight.c | 620 ++++++++++++++++ src/dolphin/gx/GXMisc.c | 485 ++++++++++++ src/dolphin/gx/GXPerf.c | 577 +++++++++++++++ src/dolphin/gx/GXPixel.c | 290 ++++++++ src/dolphin/gx/GXStubs.c | 5 + src/dolphin/gx/GXTev.c | 403 ++++++++++ src/dolphin/gx/GXTexture.c | 1269 ++++++++++++++++++++++++++++++++ src/dolphin/gx/GXTransform.c | 372 ++++++++++ src/game/kerent.c | 8 +- 25 files changed, 7195 insertions(+), 174 deletions(-) create mode 100644 src/dolphin/gx/GXAttr.c create mode 100644 src/dolphin/gx/GXBump.c create mode 100644 src/dolphin/gx/GXDisplayList.c create mode 100644 src/dolphin/gx/GXFifo.c create mode 100644 src/dolphin/gx/GXFrameBuf.c create mode 100644 src/dolphin/gx/GXGeometry.c create mode 100644 src/dolphin/gx/GXInit.c create mode 100644 src/dolphin/gx/GXLight.c create mode 100644 src/dolphin/gx/GXMisc.c create mode 100644 src/dolphin/gx/GXPerf.c create mode 100644 src/dolphin/gx/GXPixel.c create mode 100644 src/dolphin/gx/GXStubs.c create mode 100644 src/dolphin/gx/GXTev.c create mode 100644 src/dolphin/gx/GXTexture.c create mode 100644 src/dolphin/gx/GXTransform.c diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 60b719ff..3e84f320 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -2572,7 +2572,7 @@ GXEndDisplayList = .text:0x800CF0E0; // type:function size:0xD4 GXCallDisplayList = .text:0x800CF1B4; // type:function size:0x70 GXProject = .text:0x800CF224; // type:function size:0x174 GXSetProjection = .text:0x800CF398; // type:function size:0xD4 -GXSetProjectionv = .text:0x800CF46C; // type:function size:0x78 +GXGetProjectionv = .text:0x800CF46C; // type:function size:0x78 WriteMTXPS4x3 = .text:0x800CF4E4; // type:function size:0x34 scope:local WriteMTXPS3x3from3x4 = .text:0x800CF518; // type:function size:0x34 scope:local WriteMTXPS4x2 = .text:0x800CF54C; // type:function size:0x24 scope:local @@ -7410,55 +7410,55 @@ lbl_801D63C8 = .sdata2:0x801D63C8; // type:object size:0x8 scope:local data:doub lbl_801D63D0 = .sdata2:0x801D63D0; // type:object size:0x8 scope:local data:float lbl_801D63D8 = .sdata2:0x801D63D8; // type:object size:0x4 scope:local data:float lbl_801D63E0 = .sdata2:0x801D63E0; // type:object size:0x8 scope:local data:double -lbl_801D63E8 = .sdata2:0x801D63E8; // type:object size:0x4 data:4byte -lbl_801D63EC = .sdata2:0x801D63EC; // type:object size:0x4 data:4byte -lbl_801D63F0 = .sdata2:0x801D63F0; // type:object size:0x4 data:4byte -lbl_801D63F4 = .sdata2:0x801D63F4; // type:object size:0x4 data:float -lbl_801D63F8 = .sdata2:0x801D63F8; // type:object size:0x4 data:float -lbl_801D63FC = .sdata2:0x801D63FC; // type:object size:0x4 data:float -lbl_801D6400 = .sdata2:0x801D6400; // type:object size:0x8 data:double -lbl_801D6408 = .sdata2:0x801D6408; // type:object size:0x8 data:float -lbl_801D6410 = .sdata2:0x801D6410; // type:object size:0x4 data:float -lbl_801D6414 = .sdata2:0x801D6414; // type:object size:0x4 data:float -lbl_801D6418 = .sdata2:0x801D6418; // type:object size:0x4 data:float -lbl_801D641C = .sdata2:0x801D641C; // type:object size:0x4 data:float -lbl_801D6420 = .sdata2:0x801D6420; // type:object size:0x4 data:float -lbl_801D6424 = .sdata2:0x801D6424; // type:object size:0x4 data:float -lbl_801D6428 = .sdata2:0x801D6428; // type:object size:0x4 data:float -lbl_801D642C = .sdata2:0x801D642C; // type:object size:0x4 data:float -lbl_801D6430 = .sdata2:0x801D6430; // type:object size:0x4 data:float -lbl_801D6434 = .sdata2:0x801D6434; // type:object size:0x4 data:float -lbl_801D6438 = .sdata2:0x801D6438; // type:object size:0x4 data:float -lbl_801D643C = .sdata2:0x801D643C; // type:object size:0x4 data:float -lbl_801D6440 = .sdata2:0x801D6440; // type:object size:0x4 data:float -lbl_801D6448 = .sdata2:0x801D6448; // type:object size:0x8 data:double -lbl_801D6450 = .sdata2:0x801D6450; // type:object size:0x8 data:double -lbl_801D6458 = .sdata2:0x801D6458; // type:object size:0x8 data:float -lbl_801D6460 = .sdata2:0x801D6460; // type:object size:0x4 data:float -lbl_801D6468 = .sdata2:0x801D6468; // type:object size:0x8 data:double -lbl_801D6470 = .sdata2:0x801D6470; // type:object size:0x4 data:float -lbl_801D6474 = .sdata2:0x801D6474; // type:object size:0x4 data:float -lbl_801D6478 = .sdata2:0x801D6478; // type:object size:0x4 data:float -lbl_801D647C = .sdata2:0x801D647C; // type:object size:0x4 data:float -lbl_801D6480 = .sdata2:0x801D6480; // type:object size:0x4 data:float -lbl_801D6484 = .sdata2:0x801D6484; // type:object size:0x4 data:float -lbl_801D6488 = .sdata2:0x801D6488; // type:object size:0x4 data:float -lbl_801D648C = .sdata2:0x801D648C; // type:object size:0x4 data:float -lbl_801D6490 = .sdata2:0x801D6490; // type:object size:0x4 data:float -lbl_801D6498 = .sdata2:0x801D6498; // type:object size:0x8 data:double -lbl_801D64A0 = .sdata2:0x801D64A0; // type:object size:0x4 data:float -lbl_801D64A4 = .sdata2:0x801D64A4; // type:object size:0x4 data:float -lbl_801D64A8 = .sdata2:0x801D64A8; // type:object size:0x8 data:double -lbl_801D64B0 = .sdata2:0x801D64B0; // type:object size:0x4 data:float -lbl_801D64B8 = .sdata2:0x801D64B8; // type:object size:0x8 data:double -lbl_801D64C0 = .sdata2:0x801D64C0; // type:object size:0x4 data:float -lbl_801D64C8 = .sdata2:0x801D64C8; // type:object size:0x8 data:double -lbl_801D64D0 = .sdata2:0x801D64D0; // type:object size:0x4 data:float -lbl_801D64D4 = .sdata2:0x801D64D4; // type:object size:0x4 data:float -lbl_801D64D8 = .sdata2:0x801D64D8; // type:object size:0x4 data:float -lbl_801D64E0 = .sdata2:0x801D64E0; // type:object size:0x8 data:double -lbl_801D64E8 = .sdata2:0x801D64E8; // type:object size:0x4 data:float -lbl_801D64EC = .sdata2:0x801D64EC; // type:object size:0x4 data:float +lbl_801D63E8 = .sdata2:0x801D63E8; // type:object size:0x4 scope:local data:4byte +lbl_801D63EC = .sdata2:0x801D63EC; // type:object size:0x4 scope:local data:4byte +lbl_801D63F0 = .sdata2:0x801D63F0; // type:object size:0x4 scope:local data:4byte +lbl_801D63F4 = .sdata2:0x801D63F4; // type:object size:0x4 scope:local data:float +lbl_801D63F8 = .sdata2:0x801D63F8; // type:object size:0x4 scope:local data:float +lbl_801D63FC = .sdata2:0x801D63FC; // type:object size:0x4 scope:local data:float +lbl_801D6400 = .sdata2:0x801D6400; // type:object size:0x8 scope:local data:double +lbl_801D6408 = .sdata2:0x801D6408; // type:object size:0x8 scope:local data:float +lbl_801D6410 = .sdata2:0x801D6410; // type:object size:0x4 scope:local data:float +lbl_801D6414 = .sdata2:0x801D6414; // type:object size:0x4 scope:local data:float +lbl_801D6418 = .sdata2:0x801D6418; // type:object size:0x4 scope:local data:float +lbl_801D641C = .sdata2:0x801D641C; // type:object size:0x4 scope:local data:float +lbl_801D6420 = .sdata2:0x801D6420; // type:object size:0x4 scope:local data:float +lbl_801D6424 = .sdata2:0x801D6424; // type:object size:0x4 scope:local data:float +lbl_801D6428 = .sdata2:0x801D6428; // type:object size:0x4 scope:local data:float +lbl_801D642C = .sdata2:0x801D642C; // type:object size:0x4 scope:local data:float +lbl_801D6430 = .sdata2:0x801D6430; // type:object size:0x4 scope:local data:float +lbl_801D6434 = .sdata2:0x801D6434; // type:object size:0x4 scope:local data:float +lbl_801D6438 = .sdata2:0x801D6438; // type:object size:0x4 scope:local data:float +lbl_801D643C = .sdata2:0x801D643C; // type:object size:0x4 scope:local data:float +lbl_801D6440 = .sdata2:0x801D6440; // type:object size:0x4 scope:local data:float +lbl_801D6448 = .sdata2:0x801D6448; // type:object size:0x8 scope:local data:double +lbl_801D6450 = .sdata2:0x801D6450; // type:object size:0x8 scope:local data:double +lbl_801D6458 = .sdata2:0x801D6458; // type:object size:0x8 scope:local data:float +lbl_801D6460 = .sdata2:0x801D6460; // type:object size:0x4 scope:local data:float +lbl_801D6468 = .sdata2:0x801D6468; // type:object size:0x8 scope:local data:double +lbl_801D6470 = .sdata2:0x801D6470; // type:object size:0x4 scope:local data:float +lbl_801D6474 = .sdata2:0x801D6474; // type:object size:0x4 scope:local data:float +lbl_801D6478 = .sdata2:0x801D6478; // type:object size:0x4 scope:local data:float +lbl_801D647C = .sdata2:0x801D647C; // type:object size:0x4 scope:local data:float +lbl_801D6480 = .sdata2:0x801D6480; // type:object size:0x4 scope:local data:float +lbl_801D6484 = .sdata2:0x801D6484; // type:object size:0x4 scope:local data:float +lbl_801D6488 = .sdata2:0x801D6488; // type:object size:0x4 scope:local data:float +lbl_801D648C = .sdata2:0x801D648C; // type:object size:0x4 scope:local data:float +lbl_801D6490 = .sdata2:0x801D6490; // type:object size:0x4 scope:local data:float +lbl_801D6498 = .sdata2:0x801D6498; // type:object size:0x8 scope:local data:double +lbl_801D64A0 = .sdata2:0x801D64A0; // type:object size:0x4 scope:local data:float +lbl_801D64A4 = .sdata2:0x801D64A4; // type:object size:0x4 scope:local data:float +lbl_801D64A8 = .sdata2:0x801D64A8; // type:object size:0x8 scope:local data:double +lbl_801D64B0 = .sdata2:0x801D64B0; // type:object size:0x4 scope:local data:float +lbl_801D64B8 = .sdata2:0x801D64B8; // type:object size:0x8 scope:local data:double +lbl_801D64C0 = .sdata2:0x801D64C0; // type:object size:0x4 scope:local data:float +lbl_801D64C8 = .sdata2:0x801D64C8; // type:object size:0x8 scope:local data:double +lbl_801D64D0 = .sdata2:0x801D64D0; // type:object size:0x4 scope:local data:float +lbl_801D64D4 = .sdata2:0x801D64D4; // type:object size:0x4 scope:local data:float +lbl_801D64D8 = .sdata2:0x801D64D8; // type:object size:0x4 scope:local data:float +lbl_801D64E0 = .sdata2:0x801D64E0; // type:object size:0x8 scope:local data:double +lbl_801D64E8 = .sdata2:0x801D64E8; // type:object size:0x4 scope:local data:float +lbl_801D64EC = .sdata2:0x801D64EC; // type:object size:0x4 scope:local data:float lbl_801D64F0 = .sdata2:0x801D64F0; // type:object size:0x8 data:double lbl_801D64F8 = .sdata2:0x801D64F8; // type:object size:0x4 data:float lbl_801D64FC = .sdata2:0x801D64FC; // type:object size:0x4 data:float diff --git a/config/GMPE01_01/symbols.txt b/config/GMPE01_01/symbols.txt index 4a3aaa79..ef9eff80 100644 --- a/config/GMPE01_01/symbols.txt +++ b/config/GMPE01_01/symbols.txt @@ -2572,7 +2572,7 @@ GXEndDisplayList = .text:0x800CF0E0; // type:function size:0xD4 GXCallDisplayList = .text:0x800CF1B4; // type:function size:0x70 GXProject = .text:0x800CF224; // type:function size:0x174 GXSetProjection = .text:0x800CF398; // type:function size:0xD4 -GXSetProjectionv = .text:0x800CF46C; // type:function size:0x78 +GXGetProjectionv = .text:0x800CF46C; // type:function size:0x78 WriteMTXPS4x3 = .text:0x800CF4E4; // type:function size:0x34 scope:local WriteMTXPS3x3from3x4 = .text:0x800CF518; // type:function size:0x34 scope:local WriteMTXPS4x2 = .text:0x800CF54C; // type:function size:0x24 scope:local diff --git a/config/GMPJ01_00/symbols.txt b/config/GMPJ01_00/symbols.txt index 8701d170..ca5a261c 100644 --- a/config/GMPJ01_00/symbols.txt +++ b/config/GMPJ01_00/symbols.txt @@ -2573,7 +2573,7 @@ GXEndDisplayList = .text:0x800CECD0; // type:function size:0xD4 GXCallDisplayList = .text:0x800CEDA4; // type:function size:0x70 GXProject = .text:0x800CEE14; // type:function size:0x174 GXSetProjection = .text:0x800CEF88; // type:function size:0xD4 -GXSetProjectionv = .text:0x800CF05C; // type:function size:0x78 +GXGetProjectionv = .text:0x800CF05C; // type:function size:0x78 WriteMTXPS4x3 = .text:0x800CF0D4; // type:function size:0x34 scope:local WriteMTXPS3x3from3x4 = .text:0x800CF108; // type:function size:0x34 scope:local WriteMTXPS4x2 = .text:0x800CF13C; // type:function size:0x24 scope:local diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index 83524e64..acf35410 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -2574,7 +2574,7 @@ GXEndDisplayList = .text:0x800CEF10; // type:function size:0xD4 GXCallDisplayList = .text:0x800CEFE4; // type:function size:0x70 GXProject = .text:0x800CF054; // type:function size:0x174 GXSetProjection = .text:0x800CF1C8; // type:function size:0xD4 -GXSetProjectionv = .text:0x800CF29C; // type:function size:0x78 +GXGetProjectionv = .text:0x800CF29C; // type:function size:0x78 fn_800CF314 = .text:0x800CF314; // type:function size:0x34 fn_800CF348 = .text:0x800CF348; // type:function size:0x34 fn_800CF37C = .text:0x800CF37C; // type:function size:0x24 diff --git a/configure.py b/configure.py index 88e5c103..ec8265ae 100644 --- a/configure.py +++ b/configure.py @@ -584,19 +584,19 @@ config.libs = [ [ Object(NonMatching, "dolphin/gx/GXInit.c"), Object(NonMatching, "dolphin/gx/GXFifo.c"), - Object(NonMatching, "dolphin/gx/GXAttr.c"), - Object(NonMatching, "dolphin/gx/GXMisc.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXAttr.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXMisc.c"), Object(NonMatching, "dolphin/gx/GXGeometry.c"), Object(NonMatching, "dolphin/gx/GXFrameBuf.c"), - Object(NonMatching, "dolphin/gx/GXLight.c"), - Object(NonMatching, "dolphin/gx/GXTexture.c"), - Object(NonMatching, "dolphin/gx/GXBump.c"), - Object(NonMatching, "dolphin/gx/GXTev.c"), - Object(NonMatching, "dolphin/gx/GXPixel.c"), - Object(NonMatching, "dolphin/gx/GXStubs.c"), - Object(NonMatching, "dolphin/gx/GXDisplayList.c"), - Object(NonMatching, "dolphin/gx/GXTransform.c"), - Object(NonMatching, "dolphin/gx/GXPerf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXLight.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXTexture.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXBump.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXTev.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXPixel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXStubs.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXDisplayList.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXTransform.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXPerf.c"), ], ), DolphinLib( diff --git a/include/dolphin/gx/GXEnum.h b/include/dolphin/gx/GXEnum.h index d6fed014..d8c48579 100644 --- a/include/dolphin/gx/GXEnum.h +++ b/include/dolphin/gx/GXEnum.h @@ -901,7 +901,7 @@ typedef enum _GXAlphaReadMode { GX_READ_FF = 1, GX_READ_NONE = 2, -} _GXAlphaReadMode; +} GXAlphaReadMode; #ifdef __cplusplus } diff --git a/include/dolphin/gx/GXPriv.h b/include/dolphin/gx/GXPriv.h index ea3d2318..1cd42e37 100644 --- a/include/dolphin/gx/GXPriv.h +++ b/include/dolphin/gx/GXPriv.h @@ -1,7 +1,32 @@ #ifndef _DOLPHIN_GXPRIV #define _DOLPHIN_GXPRIV -#include "dolphin/gx/GXVert.h" +#include "dolphin/gx.h" + +#ifdef DEBUG +#define ASSERTLINE(line, cond) \ + ((cond) || (OSPanic(__FILE__, line, "Failed assertion " #cond), 0)) + +#define ASSERTMSGLINE(line, cond, msg) \ + ((cond) || (OSPanic(__FILE__, line, msg), 0)) + +// This is dumb but we dont have a Metrowerks way to do variadic macros in the macro to make this done in a not scrubby way. +#define ASSERTMSG1LINE(line, cond, msg, arg1) \ + ((cond) || (OSPanic(__FILE__, line, msg, arg1), 0)) + +#define ASSERTMSG2LINE(line, cond, msg, arg1, arg2) \ + ((cond) || (OSPanic(__FILE__, line, msg, arg1, arg2), 0)) + +#define ASSERTMSGLINEV(line, cond, ...) \ + ((cond) || (OSPanic(__FILE__, line, __VA_ARGS__), 0)) + +#else +#define ASSERTLINE(line, cond) (void)0 +#define ASSERTMSGLINE(line, cond, msg) (void)0 +#define ASSERTMSG1LINE(line, cond, msg, arg1) (void)0 +#define ASSERTMSG2LINE(line, cond, msg, arg1, arg2) (void)0 +#define ASSERTMSGLINEV(line, cond, ...) (void)0 +#endif typedef struct GXLightObjInt { u32 padding[3]; @@ -26,92 +51,137 @@ typedef struct GXLightObjInt { #define GX_FIFO_ADDR 0xCC008000 #define GX_WRITE_U8(v) (GXWGFifo.u8 = v) +#define GX_WRITE_U16(us) (GXWGFifo.u16 = (u16)(us)) #define GX_WRITE_U32(v) (GXWGFifo.u32 = v) +#define GX_WRITE_F32(f) (GXWGFifo.f32 = (f32)(f)) -typedef struct __GXData_struct { - u16 vNumNot; - u16 bpSentNot; - u16 vNum; - u16 vLim; - u32 cpEnable; - u32 cpStatus; - u32 cpClr; - u32 vcdLo; - u32 vcdHi; - u32 vatA[8]; - u32 vatB[8]; - u32 vatC[8]; - u32 lpSize; - u32 matIdxA; - u32 matIdxB; - u32 indexBase[4]; - u32 indexStride[4]; - u32 ambColor[2]; - u32 matColor[2]; - u32 suTs0[8]; - u32 suTs1[8]; - u32 suScis0; - u32 suScis1; - u32 tref[8]; - u32 iref; - u32 bpMask; - u32 IndTexScale0; - u32 IndTexScale1; - u32 tevc[16]; - u32 teva[16]; - u32 tevKsel[8]; - u32 cmode0; - u32 cmode1; - u32 zmode; - u32 peCtrl; - u32 cpDispSrc; - u32 cpDispSize; - u32 cpDispStride; - u32 cpDisp; - u32 cpTexSrc; - u32 cpTexSize; - u32 cpTexStride; - u32 cpTex; - GXBool cpTexZ; - u32 genMode; - GXTexRegion TexRegions[8]; - GXTexRegion TexRegionsCI[4]; - u32 nextTexRgn; - u32 nextTexRgnCI; - GXTlutRegion TlutRegions[20]; - GXTexRegion* (*texRegionCallback)(GXTexObj*, GXTexMapID); - GXTlutRegion* (*tlutRegionCallback)(u32); - GXAttrType nrmType; - GXBool hasNrms; - GXBool hasBiNrms; - u32 projType; - f32 projMtx[6]; - f32 vpLeft; - f32 vpTop; - f32 vpWd; - f32 vpHt; - f32 vpNearz; - f32 vpFarz; - u8 fgRange; - f32 fgSideX; - u32 tImage0[8]; - u32 tMode0[8]; - u32 texmapId[16]; - u32 tcsManEnab; - u32 tevTcEnab; - GXPerf0 perf0; - GXPerf1 perf1; - u32 perfSel; - GXBool inDispList; - GXBool dlSaveContext; - u8 dirtyVAT; - u32 dirtyState; -} GXData; +#if DEBUG +#define VERIF_XF_REG(addr, value) \ +do { \ + s32 regAddr = (addr); \ + if (regAddr >= 0 && regAddr < 0x50) { \ + __gxVerif->xfRegs[regAddr] = (value); \ + __gxVerif->xfRegsDirty[regAddr] = 1; \ + } \ +} while (0) +#define VERIF_XF_REG_alt(addr, value) \ +do { \ + s32 xfAddr = (addr); \ + if (xfAddr >= 0 && xfAddr < 0x50) { \ + __gxVerif->xfRegs[xfAddr] = (value); \ + __gxVerif->xfRegsDirty[xfAddr] = 1; \ + } \ +} while (0) +#define VERIF_RAS_REG(value) (__gxVerif->rasRegs[((value) & 0xFF000000) >> 24] = value) +#define VERIF_MTXLIGHT(addr, data) \ +do { \ + s32 xfAddr; \ + if (addr < 0x400U) { \ + __gxVerif->xfMtx[addr] = data; \ + __gxVerif->xfMtxDirty[addr] = 1; \ + } else if (addr < 0x500U) { \ + xfAddr = addr - 0x400; \ + __gxVerif->xfNrm[xfAddr] = data; \ + __gxVerif->xfNrmDirty[xfAddr] = 1; \ + } else if (addr < 0x600U) { \ + xfAddr = addr - 0x500; \ + __gxVerif->xfDMtx[xfAddr] = data; \ + __gxVerif->xfDMtxDirty[xfAddr] = 1; \ + } else if (addr < 0x680U) { \ + xfAddr = addr - 0x600; \ + __gxVerif->xfLight[xfAddr] = data; \ + __gxVerif->xfLightDirty[xfAddr] = 1; \ + } else { \ + xfAddr = addr - 0x1000; \ + if ((xfAddr >= 0) && (xfAddr < 0x50)) { \ + __gxVerif->xfRegs[xfAddr] = data; \ + __gxVerif->xfRegsDirty[xfAddr] = 1; \ + } \ + } \ +} while (0) +#else +#define VERIF_XF_REG(addr, value) ((void)0) +#define VERIF_XF_REG_alt(addr, value) ((void)0) +#define VERIF_RAS_REG(value) ((void)0) +#endif -extern GXData* gx; -// #define gx __GXData +#define GX_WRITE_XF_REG(addr, value) \ +do { \ + GX_WRITE_U8(0x10); \ + GX_WRITE_U32(0x1000 + (addr)); \ + GX_WRITE_U32(value); \ + VERIF_XF_REG(addr, value); \ +} while (0) -void __GXInitGX(); +#if DEBUG +#define GX_WRITE_XF_REG_2(addr, value) \ +do { \ + u32 xfData = (value); &xfData; \ + GX_WRITE_U32(value); \ + VERIF_XF_REG_alt(addr, xfData); \ +} while (0) +#define GX_WRITE_XF_REG_F(addr, value) \ +do { \ + f32 xfData = (value); \ + GX_WRITE_F32(value); \ + VERIF_XF_REG_alt(addr, *(u32 *)&xfData); \ +} while (0) +#else +#define GX_WRITE_XF_REG_2(addr, value) \ +do { \ + GX_WRITE_U32(value); \ +} while (0) +#define GX_WRITE_XF_REG_F(addr, value) \ +do { \ + GX_WRITE_F32(value); \ +} while (0) +#endif + +#define GX_WRITE_RAS_REG(value) \ +do { \ + GX_WRITE_U8(0x61); \ + GX_WRITE_U32(value); \ + VERIF_RAS_REG(value); \ +} while (0) + +#define GX_WRITE_SOME_REG2(a, b, c, addr) \ +do { \ + long regAddr; \ + GX_WRITE_U8(a); \ + GX_WRITE_U8(b); \ + GX_WRITE_U32(c); \ + regAddr = addr; \ + if (regAddr >= 0 && regAddr < 4) { \ + gx->indexBase[regAddr] = c; \ + } \ +} while (0) +#define GX_WRITE_SOME_REG3(a, b, c, addr) \ +do { \ + long regAddr; \ + GX_WRITE_U8(a); \ + GX_WRITE_U8(b); \ + GX_WRITE_U32(c); \ + regAddr = addr; \ + if (regAddr >= 0 && regAddr < 4) { \ + gx->indexStride[regAddr] = c; \ + } \ +} while (0) +#define GX_WRITE_SOME_REG4(a, b, c, addr) \ +do { \ + long regAddr; \ + GX_WRITE_U8(a); \ + GX_WRITE_U8(b); \ + GX_WRITE_U32(c); \ + regAddr = addr; \ +} while (0) + +#define GET_REG_FIELD(reg, size, shift) ((int)((reg) >> (shift)) & ((1 << (size)) - 1)) + +#define SET_REG_FIELD(line, reg, size, shift, val) \ +do { \ + ASSERTMSGLINE(line, ((u32)(val) & ~((1 << (size)) - 1)) == 0, "GX Internal: Register field out of range"); \ + (reg) = ((u32)(reg) & ~(((1 << (size)) - 1) << (shift))) | ((u32)(val) << (shift)); \ +} while (0) #define GX_REG_ASSERT(c) ASSERTMSG(c, "GX Internal: Register field out of range") @@ -358,4 +428,223 @@ void __GXInitGX(); #define GX_VAT_REG_B_UNK_SHIFT 31 #define GX_VAT_REG_B_UNK_MASK 0x80000000 +#define GX_GET_MEM_REG(offset) (*(volatile u16*)((volatile u16*)(__memReg) + (offset))) +#define GX_GET_CP_REG(offset) (*(volatile u16*)((volatile u16*)(__cpReg) + (offset))) +#define GX_GET_PE_REG(offset) (*(volatile u16*)((volatile u16*)(__peReg) + (offset))) +#define GX_GET_PI_REG(offset) (*(volatile u32*)((volatile u32*)(__piReg) + (offset))) + +#define GX_SET_MEM_REG(offset, val) (*(volatile u16*)((volatile u16*)(__memReg) + (offset)) = val) +#define GX_SET_CP_REG(offset, val) (*(volatile u16*)((volatile u16*)(__cpReg) + (offset)) = val) +#define GX_SET_PE_REG(offset, val) (*(volatile u16*)((volatile u16*)(__peReg) + (offset)) = val) +#define GX_SET_PI_REG(offset, val) (*(volatile u32*)((volatile u32*)(__piReg) + (offset)) = val) + +#define CHECK_GXBEGIN(line, name) ASSERTMSGLINE(line, !__GXinBegin, "'" name "' is not allowed between GXBegin/GXEnd") + +/* GXAttr.c */ + +void __GXSetVCD(void); +void __GXSetVAT(void); + +/* GXBump.c */ + +void __GXUpdateBPMask(void); +void __GXFlushTextureState(void); + +/* GXFifo.c */ + +// GXFifoObj private data +struct __GXFifoObj { + u8 *base; + u8 *top; + u32 size; + u32 hiWatermark; + u32 loWatermark; + void *rdPtr; + void *wrPtr; + s32 count; + u8 bind_cpu; + u8 bind_gp; +}; + +void __GXSaveCPUFifoAux(struct __GXFifoObj *realFifo); +void __GXFifoInit(void); +void __GXInsaneWatermark(void); +void __GXCleanGPFifo(void); + +/* GXGeometry.c */ + +void __GXSetDirtyState(void); +void __GXSendFlushPrim(void); +void __GXSetGenMode(void); + +/* GXInit.c */ +void __GXInitGX(); +void __GXInitRevisionBits(void); + +typedef struct __GXData_struct { + u16 vNumNot; + u16 bpSentNot; + u16 vNum; + u16 vLim; + u32 cpEnable; + u32 cpStatus; + u32 cpClr; + u32 vcdLo; + u32 vcdHi; + u32 vatA[8]; + u32 vatB[8]; + u32 vatC[8]; + u32 lpSize; + u32 matIdxA; + u32 matIdxB; + u32 indexBase[4]; + u32 indexStride[4]; + u32 ambColor[2]; + u32 matColor[2]; + u32 suTs0[8]; + u32 suTs1[8]; + u32 suScis0; + u32 suScis1; + u32 tref[8]; + u32 iref; + u32 bpMask; + u32 IndTexScale0; + u32 IndTexScale1; + u32 tevc[16]; + u32 teva[16]; + u32 tevKsel[8]; + u32 cmode0; + u32 cmode1; + u32 zmode; + u32 peCtrl; + u32 cpDispSrc; + u32 cpDispSize; + u32 cpDispStride; + u32 cpDisp; + u32 cpTexSrc; + u32 cpTexSize; + u32 cpTexStride; + u32 cpTex; + GXBool cpTexZ; + u32 genMode; + GXTexRegion TexRegions[8]; + GXTexRegion TexRegionsCI[4]; + u32 nextTexRgn; + u32 nextTexRgnCI; + GXTlutRegion TlutRegions[20]; + GXTexRegion* (*texRegionCallback)(GXTexObj*, GXTexMapID); + GXTlutRegion* (*tlutRegionCallback)(u32); + GXAttrType nrmType; + GXBool hasNrms; + GXBool hasBiNrms; + u32 projType; + f32 projMtx[6]; + f32 vpLeft; + f32 vpTop; + f32 vpWd; + f32 vpHt; + f32 vpNearz; + f32 vpFarz; + u8 fgRange; + f32 fgSideX; + u32 tImage0[8]; + u32 tMode0[8]; + u32 texmapId[16]; + u32 tcsManEnab; + u32 tevTcEnab; + GXPerf0 perf0; + GXPerf1 perf1; + u32 perfSel; + GXBool inDispList; + GXBool dlSaveContext; + u8 dirtyVAT; + u32 dirtyState; +} GXData; + +extern GXData* gx; +extern u16 *__memReg; +extern u16 *__peReg; +extern u16 *__cpReg; +extern u32 *__piReg; +// #define gx __GXData + +/* GXMisc.c */ + +void __GXBypass(u32 reg); +u16 __GXReadPEReg(u32 reg); +void __GXPEInit(void); +void __GXAbort(); + +/* GXPerf.c */ +void __GXSetBWDials(u16 cpDial, u16 tcDial, u16 peDial, u16 cpuRdDial, u16 cpuWrDial); + +static inline u32 __GXReadCPCounterU32(u32 regAddrL, u32 regAddrH) { + u32 ctrH0; + u32 ctrH1; + u32 ctrL; + + ctrH0 = GX_GET_CP_REG(regAddrH); + + do { + ctrH1 = ctrH0; + ctrL = GX_GET_CP_REG(regAddrL); + ctrH0 = GX_GET_CP_REG(regAddrH); + } while (ctrH0 != ctrH1); + + return (ctrH0 << 0x10) | ctrL; +} + +static inline u32 __GXReadMEMCounterU32(u32 regAddrL, u32 regAddrH) { + u32 ctrH0; + u32 ctrH1; + u32 ctrL; + + ctrH0 = GX_GET_MEM_REG(regAddrH); + + do { + ctrH1 = ctrH0; + ctrL = GX_GET_MEM_REG(regAddrL); + ctrH0 = GX_GET_MEM_REG(regAddrH); + } while (ctrH0 != ctrH1); + + return (ctrH0 << 0x10) | ctrL; +} + +static inline u32 __GXReadPECounterU32(u32 regAddrL, u32 regAddrH) { + u32 ctrH0; + u32 ctrH1; + u32 ctrL; + + ctrH0 = GX_GET_PE_REG(regAddrH); + + do { + ctrH1 = ctrH0; + ctrL = GX_GET_PE_REG(regAddrL); + ctrH0 = GX_GET_PE_REG(regAddrH); + } while (ctrH0 != ctrH1); + + return (ctrH0 << 0x10) | ctrL; +} + +/* GXSave.c */ + +void __GXShadowDispList(void *list, u32 nbytes); +void __GXShadowIndexState(u32 idx_reg, u32 reg_data); +void __GXPrintShadowState(void); + +/* GXStubs.c */ + +void __GXSetRange(float nearz, float fgSideX); + +/* GXTexture.c */ + +void __GetImageTileCount(GXTexFmt fmt, u16 wd, u16 ht, u32 *rowTiles, u32 *colTiles, u32 *cmpTiles); +void __GXSetSUTexRegs(void); +void __GXGetSUTexSize(GXTexCoordID coord, u16 *width, u16 *height); +void __GXSetTmemConfig(u32 config); + +/* GXTransform.c */ + +void __GXSetMatrixIndex(GXAttr matIdxAttr); + #endif // _DOLPHIN_GXPRIV diff --git a/include/dolphin/gx/GXStruct.h b/include/dolphin/gx/GXStruct.h index 4df23062..8b810140 100644 --- a/include/dolphin/gx/GXStruct.h +++ b/include/dolphin/gx/GXStruct.h @@ -72,6 +72,26 @@ typedef struct _GXTlutRegion { u32 dummy[4]; } GXTlutRegion; +typedef struct _GXFogAdjTable +{ + u16 r[10]; +} GXFogAdjTable; + +typedef enum _GXTlutSize +{ + GX_TLUT_16 = 1, + GX_TLUT_32 = 2, + GX_TLUT_64 = 4, + GX_TLUT_128 = 8, + GX_TLUT_256 = 16, + GX_TLUT_512 = 32, + GX_TLUT_1K = 64, + GX_TLUT_2K = 128, + GX_TLUT_4K = 256, + GX_TLUT_8K = 512, + GX_TLUT_16K = 1024, +} GXTlutSize; + typedef struct _GXVtxAttrFmtList { // total size: 0x10 GXAttr attr; // offset 0x0, size 0x4 diff --git a/include/dolphin/gx/GXTexture.h b/include/dolphin/gx/GXTexture.h index a30b7430..0b569528 100644 --- a/include/dolphin/gx/GXTexture.h +++ b/include/dolphin/gx/GXTexture.h @@ -8,29 +8,35 @@ extern "C" { #endif -typedef GXTexRegion* (*GXTexRegionCallback)(const GXTexObj* obj, GXTexMapID id); +typedef GXTexRegion *(*GXTexRegionCallback)(GXTexObj *t_obj, GXTexMapID id); +typedef GXTlutRegion *(*GXTlutRegionCallback)(u32 idx); -void GXInitTexObj(GXTexObj* obj, const void* data, u16 width, u16 height, u32 format, - GXTexWrapMode wrapS, GXTexWrapMode wrapT, GXBool mipmap); -void GXInitTexObjCI(GXTexObj* obj, const void* data, u16 width, u16 height, GXCITexFmt format, - GXTexWrapMode wrapS, GXTexWrapMode wrapT, GXBool mipmap, u32 tlut); -void GXInitTexObjData(GXTexObj* obj, const void* data); -void GXInitTexObjLOD(GXTexObj* obj, GXTexFilter min_filt, GXTexFilter mag_filt, f32 min_lod, - f32 max_lod, f32 lod_bias, GXBool bias_clamp, GXBool do_edge_lod, - GXAnisotropy max_aniso); -void GXLoadTexObj(GXTexObj* obj, GXTexMapID id); -u32 GXGetTexBufferSize(u16 width, u16 height, u32 format, GXBool mipmap, u8 max_lod); -void GXInvalidateTexAll(); -void GXInitTexObjWrapMode(GXTexObj* obj, GXTexWrapMode s, GXTexWrapMode t); -void GXInitTlutObj(GXTlutObj* obj, void* data, GXTlutFmt format, u16 entries); -void GXLoadTlut(const GXTlutObj* obj, GXTlut idx); -void GXSetTexCoordScaleManually(GXTexCoordID coord, GXBool enable, u16 ss, u16 ts); -void GXInitTexCacheRegion(GXTexRegion* region, GXBool is_32b_mipmap, u32 tmem_even, - GXTexCacheSize size_even, u32 tmem_odd, GXTexCacheSize size_odd); -GXTexRegionCallback GXSetTexRegionCallback(GXTexRegionCallback callback); -void GXInvalidateTexRegion(const GXTexRegion* region); - -void GXSetTexCoordScaleManually(GXTexCoordID coord, GXBool enable, u16 ss, u16 ts); +u32 GXGetTexBufferSize(u16 width, u16 height, u32 format, u8 mipmap, u8 max_lod); +void GXInitTexObj(GXTexObj *obj, void *image_ptr, u16 width, u16 height, GXTexFmt format, GXTexWrapMode wrap_s, GXTexWrapMode wrap_t, u8 mipmap); +void GXInitTexObjCI(GXTexObj *obj, void *image_ptr, u16 width, u16 height, GXCITexFmt format, GXTexWrapMode wrap_s, GXTexWrapMode wrap_t, u8 mipmap, u32 tlut_name); +void GXInitTexObjLOD(GXTexObj *obj, GXTexFilter min_filt, GXTexFilter mag_filt, + f32 min_lod, f32 max_lod, f32 lod_bias, GXBool bias_clamp, + GXBool do_edge_lod, GXAnisotropy max_aniso); +void GXInitTexObjData(GXTexObj *obj, void *image_ptr); +void GXInitTexObjWrapMode(GXTexObj *obj, GXTexWrapMode s, GXTexWrapMode t); +void GXInitTexObjTlut(GXTexObj *obj, u32 tlut_name); +void GXInitTexObjUserData(GXTexObj *obj, void *user_data); +void *GXGetTexObjUserData(const GXTexObj *obj); +void GXLoadTexObjPreLoaded(GXTexObj *obj, GXTexRegion *region, GXTexMapID id); +void GXLoadTexObj(GXTexObj *obj, GXTexMapID id); +void GXInitTlutObj(GXTlutObj *tlut_obj, void *lut, GXTlutFmt fmt, u16 n_entries); +void GXLoadTlut(GXTlutObj *tlut_obj, u32 tlut_name); +void GXInitTexCacheRegion(GXTexRegion *region, u8 is_32b_mipmap, u32 tmem_even, GXTexCacheSize size_even, u32 tmem_odd, GXTexCacheSize size_odd); +void GXInitTexPreLoadRegion(GXTexRegion *region, u32 tmem_even, u32 size_even, u32 tmem_odd, u32 size_odd); +void GXInitTlutRegion(GXTlutRegion *region, u32 tmem_addr, GXTlutSize tlut_size); +void GXInvalidateTexRegion(GXTexRegion *region); +void GXInvalidateTexAll(void); +GXTexRegionCallback GXSetTexRegionCallback(GXTexRegionCallback f); +GXTlutRegionCallback GXSetTlutRegionCallback(GXTlutRegionCallback f); +void GXPreLoadEntireTexture(GXTexObj *tex_obj, GXTexRegion *region); +void GXSetTexCoordScaleManually(GXTexCoordID coord, u8 enable, u16 ss, u16 ts); +void GXSetTexCoordCylWrap(GXTexCoordID coord, u8 s_enable, u8 t_enable); +void GXSetTexCoordBias(GXTexCoordID coord, u8 s_enable, u8 t_enable); #ifdef __cplusplus } #endif diff --git a/src/dolphin/gx/GXAttr.c b/src/dolphin/gx/GXAttr.c new file mode 100644 index 00000000..721027db --- /dev/null +++ b/src/dolphin/gx/GXAttr.c @@ -0,0 +1,586 @@ +#include +#include + +#include + +#define CHECK_ATTRPTR(line, attrPtr) ASSERTMSGLINE(line, (attrPtr) != NULL, "GXSetVtxDescv: attrPtr is NULL") +#define CHECK_ATTRNAME(line, attr) ASSERTMSGLINE(line, (attr) >= GX_VA_PNMTXIDX && (attr) < GX_VA_MAX_ATTR, "GXSetVtxDesc: Invalid vertex attribute name") +#define CHECK_ATTRNAME2(line, attr) ASSERTMSGLINE(line, (attr) >= GX_VA_POS && (attr) <= GX_VA_MAX_ATTR, "GXSetVtxAttrFmt: Invalid vertex attribute name") +#define CHECK_ATTRNAME3(line, attr) ASSERTMSGLINE(line, (attr) >= GX_VA_POS && (attr) <= GX_LIGHT_ARRAY, "GXSetArray: Invalid vertex attribute name") +#define CHECK_ATTRTYPE(line, type) ASSERTMSGLINE(line, (type) >= GX_NONE && (type) <= GX_INDEX16, "GXSetVtxDesc: Invalid vertex attribute type") +#define CHECK_VTXFMT(line, vtxfmt) ASSERTMSGLINE(line, (vtxfmt) < GX_MAX_VTXFMT, "GXSetVtxAttrFmt: Format Index is out of range") +#define CHECK_FRAC(line, frac) ASSERTMSGLINE(line, (frac) < 32, "GXSetVtxAttrFmt: Frac value is >= 32") +#define CHECK_LISTPTR(line, list) ASSERTMSGLINE(line, (list) != NULL, "GXSetVtxAttrFmt: list pointer is NULL") + +static void __GXXfVtxSpecs(void) +{ + u32 nCols = 0; + u32 nNrm; + u32 nTex; + u32 reg; + + nCols = GET_REG_FIELD(gx->vcdLo, 2, 13) ? 1 : 0; + nCols += GET_REG_FIELD(gx->vcdLo, 2, 15) ? 1 : 0; + nNrm = gx->hasBiNrms ? 2 : gx->hasNrms ? 1 : 0; + nTex = 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 0) ? 1 : 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 2) ? 1 : 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 4) ? 1 : 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 6) ? 1 : 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 8) ? 1 : 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 10) ? 1 : 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 12) ? 1 : 0; + nTex += GET_REG_FIELD(gx->vcdHi, 2, 14) ? 1 : 0; + reg = (nCols) | (nNrm << 2) | (nTex << 4); + GX_WRITE_XF_REG(8, reg); + gx->bpSentNot = 1; +} + +static inline void SETVCDATTR(GXAttr Attr, GXAttrType Type) +{ + switch (Attr) { + case GX_VA_PNMTXIDX: SET_REG_FIELD(0xD4, gx->vcdLo, 1, 0, Type); break; + case GX_VA_TEX0MTXIDX: SET_REG_FIELD(0xD5, gx->vcdLo, 1, 1, Type); break; + case GX_VA_TEX1MTXIDX: SET_REG_FIELD(0xD6, gx->vcdLo, 1, 2, Type); break; + case GX_VA_TEX2MTXIDX: SET_REG_FIELD(0xD7, gx->vcdLo, 1, 3, Type); break; + case GX_VA_TEX3MTXIDX: SET_REG_FIELD(0xD8, gx->vcdLo, 1, 4, Type); break; + case GX_VA_TEX4MTXIDX: SET_REG_FIELD(0xD9, gx->vcdLo, 1, 5, Type); break; + case GX_VA_TEX5MTXIDX: SET_REG_FIELD(0xDA, gx->vcdLo, 1, 6, Type); break; + case GX_VA_TEX6MTXIDX: SET_REG_FIELD(0xDB, gx->vcdLo, 1, 7, Type); break; + case GX_VA_TEX7MTXIDX: SET_REG_FIELD(0xDC, gx->vcdLo, 1, 8, Type); break; + case GX_VA_POS: SET_REG_FIELD(0xDD, gx->vcdLo, 2, 9, Type); break; + case GX_VA_NRM: + if (Type != GX_NONE) { + gx->hasNrms = 1; + gx->hasBiNrms = 0; + gx->nrmType = Type; + } else { + gx->hasNrms = 0; + } + break; + case GX_VA_NBT: + if (Type != GX_NONE) { + gx->hasBiNrms = 1; + gx->hasNrms = 0; + gx->nrmType = Type; + } else { + gx->hasBiNrms = 0; + } + break; + case GX_VA_CLR0: SET_REG_FIELD(0xF6, gx->vcdLo, 2, 13, Type); break; + case GX_VA_CLR1: SET_REG_FIELD(0xF7, gx->vcdLo, 2, 15, Type); break; + case GX_VA_TEX0: SET_REG_FIELD(0xF8, gx->vcdHi, 2, 0, Type); break; + case GX_VA_TEX1: SET_REG_FIELD(0xF9, gx->vcdHi, 2, 2, Type); break; + case GX_VA_TEX2: SET_REG_FIELD(0xFA, gx->vcdHi, 2, 4, Type); break; + case GX_VA_TEX3: SET_REG_FIELD(0xFB, gx->vcdHi, 2, 6, Type); break; + case GX_VA_TEX4: SET_REG_FIELD(0xFC, gx->vcdHi, 2, 8, Type); break; + case GX_VA_TEX5: SET_REG_FIELD(0xFD, gx->vcdHi, 2, 10, Type); break; + case GX_VA_TEX6: SET_REG_FIELD(0xFE, gx->vcdHi, 2, 12, Type); break; + case GX_VA_TEX7: SET_REG_FIELD(0xFF, gx->vcdHi, 2, 14, Type); break; + } +} + +void GXSetVtxDesc(GXAttr attr, GXAttrType type) +{ + CHECK_GXBEGIN(0xCC, "GXSetVtxDesc"); + CHECK_ATTRNAME(0xCF, attr); + CHECK_ATTRTYPE(0xD1, type); + + SETVCDATTR(attr, type); + if (gx->hasNrms || gx->hasBiNrms) { + SET_REG_FIELD(0xD7, gx->vcdLo, 2, 11, gx->nrmType); + } else { + SET_REG_FIELD(0x00, gx->vcdLo, 2, 11, 0); + } + gx->dirtyState |= 8; +} + +void GXSetVtxDescv(GXVtxDescList *attrPtr) +{ + CHECK_GXBEGIN(0xF5, "GXSetVtxDescv"); + CHECK_ATTRPTR(0xF6, attrPtr); + while (attrPtr->attr != 0xFF) { + CHECK_ATTRNAME(0xFB, attrPtr->attr); + CHECK_ATTRTYPE(0xFE, attrPtr->type); + SETVCDATTR(attrPtr->attr, attrPtr->type); + attrPtr++; + } + if (gx->hasNrms || gx->hasBiNrms) { + SET_REG_FIELD(0x107, gx->vcdLo, 2, 11, gx->nrmType); + } else { + SET_REG_FIELD(0x107, gx->vcdLo, 2, 11, 0); + } + gx->dirtyState |= 8; +} + +void __GXSetVCD(void) +{ + GX_WRITE_SOME_REG4(8, 0x50, gx->vcdLo, -12); + GX_WRITE_SOME_REG4(8, 0x60, gx->vcdHi, -12); + __GXXfVtxSpecs(); +} + +void __GXCalculateVLim() { + static u8 tbl1[] = { 0, 4, 1, 2 }; + static u8 tbl2[] = { 0, 8, 1, 2 }; + static u8 tbl3[] = { 0, 12, 1, 2 }; + + GXCompCnt nc = 0; + unsigned long vlm; + unsigned long b; + unsigned long vl; + unsigned long vh; + unsigned long va; + + if (gx->vNum != 0) { + vl = gx->vcdLo; + vh = gx->vcdHi; + va = gx->vatA[0]; + nc = GET_REG_FIELD(va, 1, 9); + + vlm = GET_REG_FIELD(vl, 1, 0); + vlm += (u8)GET_REG_FIELD(vl, 1, 1); + vlm += (u8)GET_REG_FIELD(vl, 1, 2); + vlm += (u8)GET_REG_FIELD(vl, 1, 3); + vlm += (u8)GET_REG_FIELD(vl, 1, 4); + vlm += (u8)GET_REG_FIELD(vl, 1, 5); + vlm += (u8)GET_REG_FIELD(vl, 1, 6); + vlm += (u8)GET_REG_FIELD(vl, 1, 7); + vlm += (u8)GET_REG_FIELD(vl, 1, 8); + vlm += tbl3[(u8)GET_REG_FIELD(vl, 2, 9)]; + + if (nc == 1) { + b = 3; + } else { + b = 1; + } + + vlm += tbl3[(u8)GET_REG_FIELD(vl, 2, 11)] * b; + vlm += tbl1[(u8)GET_REG_FIELD(vl, 2, 13)]; + vlm += tbl1[(u8)GET_REG_FIELD(vl, 2, 15)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 0)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 2)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 4)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 6)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 8)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 10)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 12)]; + vlm += tbl2[(u8)GET_REG_FIELD(vh, 2, 14)]; + gx->vLim = vlm; + } +} + +void GXGetVtxDesc(GXAttr attr, GXAttrType *type) +{ + u32 cpType; + + CHECK_GXBEGIN(0x185, "GXGetVtxDesc"); + CHECK_ATTRNAME(0x187, attr); + + switch (attr) { + case GX_VA_PNMTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 0); break; + case GX_VA_TEX0MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 1); break; + case GX_VA_TEX1MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 2); break; + case GX_VA_TEX2MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 3); break; + case GX_VA_TEX3MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 4); break; + case GX_VA_TEX4MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 5); break; + case GX_VA_TEX5MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 6); break; + case GX_VA_TEX6MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 7); break; + case GX_VA_TEX7MTXIDX: cpType = GET_REG_FIELD(gx->vcdLo, 1, 8); break; + case GX_VA_POS: cpType = GET_REG_FIELD(gx->vcdLo, 2, 9); break; + case GX_VA_NRM: cpType = gx->hasNrms ? GET_REG_FIELD(gx->vcdLo, 2, 11) : 0; break; + case GX_VA_NBT: cpType = gx->hasBiNrms ? GET_REG_FIELD(gx->vcdLo, 2, 11) : 0; break; + case GX_VA_CLR0: cpType = GET_REG_FIELD(gx->vcdLo, 2, 13); break; + case GX_VA_CLR1: cpType = GET_REG_FIELD(gx->vcdLo, 2, 15); break; + case GX_VA_TEX0: cpType = GET_REG_FIELD(gx->vcdHi, 2, 0); break; + case GX_VA_TEX1: cpType = GET_REG_FIELD(gx->vcdHi, 2, 2); break; + case GX_VA_TEX2: cpType = GET_REG_FIELD(gx->vcdHi, 2, 4); break; + case GX_VA_TEX3: cpType = GET_REG_FIELD(gx->vcdHi, 2, 6); break; + case GX_VA_TEX4: cpType = GET_REG_FIELD(gx->vcdHi, 2, 8); break; + case GX_VA_TEX5: cpType = GET_REG_FIELD(gx->vcdHi, 2, 10); break; + case GX_VA_TEX6: cpType = GET_REG_FIELD(gx->vcdHi, 2, 12); break; + case GX_VA_TEX7: cpType = GET_REG_FIELD(gx->vcdHi, 2, 14); break; + default: cpType = 0; break; + } + *type = cpType; +} + +void GXGetVtxDescv(GXVtxDescList *vcd) +{ + GXAttr attr; + + CHECK_GXBEGIN(0x1BA, "GXGetVtxDescv"); + CHECK_ATTRPTR(0x1BC, vcd); + for (attr = 0; attr < GX_VA_MAX_ATTR; attr++) { + vcd[attr].attr = attr; + GXGetVtxDesc(attr, &vcd[attr].type); + } + vcd[attr].attr = 0xFF; +} + +void GXClearVtxDesc(void) +{ + CHECK_GXBEGIN(0x1D3, "GXClearVtxDesc"); + gx->vcdLo = 0; + SET_REG_FIELD(0x00, gx->vcdLo, 2, 9, 1); + gx->vcdHi = 0; + gx->hasNrms = 0; + gx->hasBiNrms = 0; + gx->dirtyState |= 8; +} + +static inline void SETVAT(u32 *va, u32 *vb, u32 *vc, GXAttr attr, GXCompCnt cnt, GXCompType type, u8 shft) +{ + switch (attr) { + case GX_VA_POS: + SET_REG_FIELD(511, *va, 1, 0, cnt); + SET_REG_FIELD(512, *va, 3, 1, type); + SET_REG_FIELD(513, *va, 5, 4, shft); + break; + case GX_VA_NRM: + case GX_VA_NBT: + SET_REG_FIELD(521, *va, 3, 10, type); + if (cnt == GX_NRM_NBT3) { + SET_REG_FIELD(0, *va, 1, 9, 1); + SET_REG_FIELD(0, *va, 1, 31, 1); + } else { + SET_REG_FIELD(527, *va, 1, 9, cnt); + SET_REG_FIELD(528, *va, 1, 31, 0); + } + break; + case GX_VA_CLR0: + SET_REG_FIELD(0x215, *va, 1, 13, cnt); + SET_REG_FIELD(0x216, *va, 3, 14, type); + break; + case GX_VA_CLR1: + SET_REG_FIELD(0x219, *va, 1, 0x11, cnt); + SET_REG_FIELD(0x21A, *va, 3, 18, type); + break; + case GX_VA_TEX0: + SET_REG_FIELD(0x21D, *va, 1, 0x15, cnt); + SET_REG_FIELD(0x21E, *va, 3, 0x16, type); + SET_REG_FIELD(0x21F, *va, 5, 0x19, shft); + break; + case GX_VA_TEX1: + SET_REG_FIELD(0x222, *vb, 1, 0, cnt); + SET_REG_FIELD(0x223, *vb, 3, 1, type); + SET_REG_FIELD(0x224, *vb, 5, 4, shft); + break; + case GX_VA_TEX2: + SET_REG_FIELD(0x227, *vb, 1, 9, cnt); + SET_REG_FIELD(0x228, *vb, 3, 10, type); + SET_REG_FIELD(0x229, *vb, 5, 13, shft); + break; + case GX_VA_TEX3: + SET_REG_FIELD(0x22C, *vb, 1, 18, cnt); + SET_REG_FIELD(0x22D, *vb, 3, 19, type); + SET_REG_FIELD(0x22E, *vb, 5, 22, shft); + break; + case GX_VA_TEX4: + SET_REG_FIELD(0x231, *vb, 1, 27, cnt); + SET_REG_FIELD(0x232, *vb, 3, 28, type); + SET_REG_FIELD(0x233, *vc, 5, 0, shft); + break; + case GX_VA_TEX5: + SET_REG_FIELD(0x236, *vc, 1, 5, cnt); + SET_REG_FIELD(0x237, *vc, 3, 6, type); + SET_REG_FIELD(0x238, *vc, 5, 9, shft); + break; + case GX_VA_TEX6: + SET_REG_FIELD(0x23B, *vc, 1, 14, cnt); + SET_REG_FIELD(0x23C, *vc, 3, 15, type); + SET_REG_FIELD(0x23D, *vc, 5, 18, shft); + break; + case GX_VA_TEX7: + SET_REG_FIELD(0x240, *vc, 1, 23, cnt); + SET_REG_FIELD(0x241, *vc, 3, 24, type); + SET_REG_FIELD(0x242, *vc, 5, 27, shft); + break; + } +} + +void GXSetVtxAttrFmt(GXVtxFmt vtxfmt, GXAttr attr, GXCompCnt cnt, GXCompType type, u8 frac) +{ + u32 *va; + u32 *vb; + u32 *vc; + + CHECK_GXBEGIN(0x252, "GXSetVtxAttrFmt"); + CHECK_VTXFMT(0x253, vtxfmt); + CHECK_ATTRNAME2(0x255, attr); + CHECK_FRAC(0x256, frac); + va = &gx->vatA[vtxfmt]; + vb = &gx->vatB[vtxfmt]; + vc = &gx->vatC[vtxfmt]; + SETVAT(va, vb, vc, attr, cnt, type, frac); + gx->dirtyState |= 0x10; + gx->dirtyVAT |= (u8)(1 << (u8)vtxfmt); +} + +void GXSetVtxAttrFmtv(GXVtxFmt vtxfmt, const GXVtxAttrFmtList *list) +{ + u32 *va; + u32 *vb; + u32 *vc; + + CHECK_GXBEGIN(0x27B, "GXSetVtxAttrFmtv"); + CHECK_LISTPTR(0x27C, list); + CHECK_VTXFMT(0x27D, vtxfmt); + va = &gx->vatA[vtxfmt]; + vb = &gx->vatB[vtxfmt]; + vc = &gx->vatC[vtxfmt]; + while (list->attr != GX_VA_NULL) { + CHECK_ATTRNAME2(0x286, list->attr); + CHECK_FRAC(0x287, list->frac); + SETVAT(va, vb, vc, list->attr, list->cnt, list->type, list->frac); + list++; + } + gx->dirtyState |= 0x10; + gx->dirtyVAT |= (u8)(1 << (u8)vtxfmt); +} + +void __GXSetVAT(void) +{ + u8 i; + + for (i = 0; i < 8; i++) { + if (gx->dirtyVAT & (1 << (u8)i)) { + GX_WRITE_SOME_REG4(8, i | 0x70, gx->vatA[i], i - 12); + GX_WRITE_SOME_REG4(8, i | 0x80, gx->vatB[i], i - 12); + GX_WRITE_SOME_REG4(8, i | 0x90, gx->vatC[i], i - 12); + } + } + gx->dirtyVAT = 0; +} + +void GXGetVtxAttrFmt(GXVtxFmt fmt, GXAttr attr, GXCompCnt *cnt, GXCompType *type, u8 *frac) +{ + u32 *va; + u32 *vb; + u32 *vc; + + CHECK_GXBEGIN(0x2CF, "GXGetVtxAttrFmt"); + CHECK_VTXFMT(0x2D0, fmt); + va = &gx->vatA[fmt]; + vb = &gx->vatB[fmt]; + vc = &gx->vatC[fmt]; + switch (attr) { + case GX_VA_POS: + *cnt = GET_REG_FIELD(*va, 1, 0); + *type = GET_REG_FIELD(*va, 3, 1); + *frac = (u8)(*va >> 4) & 0x1F; // GET_REG_FIELD(*va, 5, 4) + return; + case GX_VA_NRM: + case GX_VA_NBT: + *cnt = GET_REG_FIELD(*va, 1, 9); + if (*cnt == GX_TEX_ST && (u8)(*va >> 0x1F) != 0) { + *cnt = GX_NRM_NBT3; + } + *type = GET_REG_FIELD(*va, 3, 10); + *frac = 0; + return; + case GX_VA_CLR0: + *cnt = GET_REG_FIELD(*va, 1, 13); + *type = GET_REG_FIELD(*va, 3, 14); + *frac = 0; + return; + case GX_VA_CLR1: + *cnt = GET_REG_FIELD(*va, 1, 17); + *type = GET_REG_FIELD(*va, 3, 18); + *frac = 0; + return; + case GX_VA_TEX0: + *cnt = GET_REG_FIELD(*va, 1, 21); + *type = GET_REG_FIELD(*va, 3, 22); + *frac = (u8)(*va >> 0x19U) & 0x1F; + return; + case GX_VA_TEX1: + *cnt = GET_REG_FIELD(*vb, 1, 0); + *type = GET_REG_FIELD(*vb, 3, 1); + *frac = (u8)(*vb >> 4U) & 0x1F; + return; + case GX_VA_TEX2: + *cnt = GET_REG_FIELD(*vb, 1, 9); + *type = GET_REG_FIELD(*vb, 3, 10); + *frac = (u8)(*vb >> 0xDU) & 0x1F; + return; + case GX_VA_TEX3: + *cnt = GET_REG_FIELD(*vb, 1, 18); + *type = GET_REG_FIELD(*vb, 3, 19); + *frac = (u8)(*vb >> 0x16U) & 0x1F; + return; + case GX_VA_TEX4: + *cnt = GET_REG_FIELD(*vb, 1, 27); + *type = GET_REG_FIELD(*vb, 3, 28); + *frac = GET_REG_FIELD(*vc, 5, 0); + return; + case GX_VA_TEX5: + *cnt = GET_REG_FIELD(*vc, 1, 5); + *type = GET_REG_FIELD(*vc, 3, 6); + *frac = (u8)(*vc >> 9U) & 0x1F; + return; + case GX_VA_TEX6: + *cnt = GET_REG_FIELD(*vc, 1, 14); + *type = GET_REG_FIELD(*vc, 3, 15); + *frac = (u8)(*vc >> 0x12) & 0x1F; + return; + case GX_VA_TEX7: + *cnt = GET_REG_FIELD(*vc, 1, 23); + *type = GET_REG_FIELD(*vc, 3, 24); + *frac = (int)(*vc >> 0x1BU); + return; + default: + *cnt = GX_TEX_ST; + *type = GX_RGB565; + *frac = 0; + return; + } +} + +void GXGetVtxAttrFmtv(GXVtxFmt fmt, GXVtxAttrFmtList *vat) +{ + GXAttr attr; + + CHECK_GXBEGIN(0x330, "GXGetVtxAttrFmtv"); + CHECK_LISTPTR(0x331, vat); + CHECK_VTXFMT(0x332, fmt); + for (attr = GX_VA_POS; attr < GX_VA_MAX_ATTR; attr++) { + vat->attr = attr; + GXGetVtxAttrFmt(fmt, attr, &vat->cnt, &vat->type, &vat->frac); + vat++; + } + vat->attr = GX_VA_NULL; +} + +void GXSetArray(GXAttr attr, const void *base_ptr, u8 stride) +{ + GXAttr cpAttr; + unsigned long phyAddr; + + attr; // needed to match + + CHECK_GXBEGIN(0x34F, "GXSetArray"); + if (attr == GX_VA_NBT) { + attr = GX_VA_NRM; + } + CHECK_ATTRNAME3(0x352, attr); + cpAttr = attr - GX_VA_POS; + phyAddr = (u32)base_ptr & 0x3FFFFFFF; + GX_WRITE_SOME_REG2(8, cpAttr | 0xA0, phyAddr, cpAttr - 12); + GX_WRITE_SOME_REG3(8, cpAttr | 0xB0, stride, cpAttr - 12); +} + +void GXInvalidateVtxCache(void) +{ + CHECK_GXBEGIN(0x368, "GXInvalidateVtxCache"); + GX_WRITE_U8(0x48); +} + +void GXSetTexCoordGen2(GXTexCoordID dst_coord, GXTexGenType func, GXTexGenSrc src_param, u32 mtx, GXBool normalize, u32 pt_texmtx) +{ + u32 reg = 0; + u32 row; + u32 bumprow; // unused + u32 form; + GXAttr mtxIdAttr; + + CHECK_GXBEGIN(0x392, "GXSetTexCoordGen"); + ASSERTMSGLINE(0x393, dst_coord < 8, "GXSetTexCoordGen: Invalid coordinate Id"); + form = 0; + row = 5; + switch (src_param) { + case GX_TG_POS: row = 0; form = 1; break; + case GX_TG_NRM: row = 1; form = 1; break; + case GX_TG_BINRM: row = 3; form = 1; break; + case GX_TG_TANGENT: row = 4; form = 1; break; + case GX_TG_COLOR0: row = 2; break; + case GX_TG_COLOR1: row = 2; break; + case GX_TG_TEX0: row = 5; break; + case GX_TG_TEX1: row = 6; break; + case GX_TG_TEX2: row = 7; break; + case GX_TG_TEX3: row = 8; break; + case GX_TG_TEX4: row = 9; break; + case GX_TG_TEX5: row = 10; break; + case GX_TG_TEX6: row = 11; break; + case GX_TG_TEX7: row = 12; break; + case GX_TG_TEXCOORD0: bumprow; break; + case GX_TG_TEXCOORD1: bumprow; break; + case GX_TG_TEXCOORD2: bumprow; break; + case GX_TG_TEXCOORD3: bumprow; break; + case GX_TG_TEXCOORD4: bumprow; break; + case GX_TG_TEXCOORD5: bumprow; break; + case GX_TG_TEXCOORD6: bumprow; break; + default: + ASSERTMSGLINE(0x3AF, 0, "GXSetTexCoordGen: Invalid source parameter"); + break; + } + switch (func) + { + case GX_TG_MTX2x4: + SET_REG_FIELD(0x3B8, reg, 1, 1, 0); + SET_REG_FIELD(0x3B9, reg, 1, 2, form); + SET_REG_FIELD(0x3BA, reg, 3, 4, 0); + SET_REG_FIELD(0x3BB, reg, 5, 7, row); + break; + case GX_TG_MTX3x4: + SET_REG_FIELD(0x3BF, reg, 1, 1, 1); + SET_REG_FIELD(0x3C0, reg, 1, 2, form); + SET_REG_FIELD(0x3C1, reg, 3, 4, 0); + SET_REG_FIELD(0x3C2, reg, 5, 7, row); + break; + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + ASSERTMSGLINE(0x3CF, src_param >= 12 && src_param <= 18, "GXSetTexCoordGen: Bump source texture value is invalid"); + SET_REG_FIELD(0x3D0, reg, 1, 1, 0); + SET_REG_FIELD(0x3D1, reg, 1, 2, form); + SET_REG_FIELD(0x3D2, reg, 3, 4, 1); + SET_REG_FIELD(0x3D3, reg, 5, 7, row); + SET_REG_FIELD(0x3D4, reg, 3, 12, src_param - 12); + SET_REG_FIELD(0x3D5, reg, 3, 15, func - 2); + break; + case GX_TG_SRTG: + SET_REG_FIELD(0x3D9, reg, 1, 1, 0); + SET_REG_FIELD(0x3DA, reg, 1, 2, form); + if (src_param == GX_TG_COLOR0) { + SET_REG_FIELD(0, reg, 3, 4, 2); + } else { + SET_REG_FIELD(0, reg, 3, 4, 3); + } + SET_REG_FIELD(0, reg, 5, 7, 2); + break; + default: + ASSERTMSGLINE(0x3E5, 0, "GXSetTexCoordGen: Invalid function"); + break; + } + GX_WRITE_XF_REG(dst_coord + 0x40, reg); + reg = 0; + SET_REG_FIELD(0x3F8, reg, 6, 0, pt_texmtx - 64); + SET_REG_FIELD(0x3F9, reg, 1, 8, normalize); + GX_WRITE_XF_REG(dst_coord + 0x50, reg); + switch (dst_coord) { + case GX_TEXCOORD0: SET_REG_FIELD(0x402, gx->matIdxA, 6, 6, mtx); break; + case GX_TEXCOORD1: SET_REG_FIELD(0x403, gx->matIdxA, 6, 12, mtx); break; + case GX_TEXCOORD2: SET_REG_FIELD(0x404, gx->matIdxA, 6, 18, mtx); break; + case GX_TEXCOORD3: SET_REG_FIELD(0x405, gx->matIdxA, 6, 24, mtx); break; + case GX_TEXCOORD4: SET_REG_FIELD(0x406, gx->matIdxB, 6, 0, mtx); break; + case GX_TEXCOORD5: SET_REG_FIELD(0x407, gx->matIdxB, 6, 6, mtx); break; + case GX_TEXCOORD6: SET_REG_FIELD(0x408, gx->matIdxB, 6, 12, mtx); break; + default: SET_REG_FIELD(0x409, gx->matIdxB, 6, 18, mtx); break; + } + mtxIdAttr = dst_coord + 1; + __GXSetMatrixIndex(mtxIdAttr); +} + +void GXSetNumTexGens(u8 nTexGens) +{ + CHECK_GXBEGIN(0x41B, "GXSetNumTexGens"); + SET_REG_FIELD(0x41D, gx->genMode, 4, 0, nTexGens); + GX_WRITE_XF_REG(0x3F, nTexGens); + gx->dirtyState |= 4; +} diff --git a/src/dolphin/gx/GXBump.c b/src/dolphin/gx/GXBump.c new file mode 100644 index 00000000..910370d8 --- /dev/null +++ b/src/dolphin/gx/GXBump.c @@ -0,0 +1,335 @@ +#include +#include + +#include + +#if DEBUG +#define GX_WRITE_SOME_REG5(a, b) \ + do { \ + GX_WRITE_U8(a); \ + GX_WRITE_U32(b); \ + __gxVerif->rasRegs[(b >> 24) & 0xFF] = b; \ + } while (0) +#else +#define GX_WRITE_SOME_REG5(a, b) \ + do { \ + GX_WRITE_U8(a); \ + GX_WRITE_U32(b); \ + } while (0) +#endif + +void GXSetTevIndirect(GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXIndTexFormat format, GXIndTexBiasSel bias_sel, GXIndTexMtxID matrix_sel, + GXIndTexWrap wrap_s, GXIndTexWrap wrap_t, GXBool add_prev, GXBool utc_lod, GXIndTexAlphaSel alpha_sel) +{ + u32 reg; + + CHECK_GXBEGIN(0x92, "GXInitIndTexture"); + reg = 0; + SET_REG_FIELD(0x81, reg, 2, 0, ind_stage); + SET_REG_FIELD(0x82, reg, 2, 2, format); + SET_REG_FIELD(0x83, reg, 3, 4, bias_sel); + SET_REG_FIELD(0x84, reg, 2, 7, alpha_sel); + SET_REG_FIELD(0x85, reg, 4, 9, matrix_sel); + SET_REG_FIELD(0x86, reg, 3, 13, wrap_s); + SET_REG_FIELD(0x87, reg, 3, 16, wrap_t); + SET_REG_FIELD(0x88, reg, 1, 19, utc_lod); + SET_REG_FIELD(0x89, reg, 1, 20, add_prev); + SET_REG_FIELD(0x8A, reg, 8, 24, tev_stage + 16); + GX_WRITE_SOME_REG5(0x61, reg); + gx->bpSentNot = 0; +} + +void GXSetIndTexMtx(GXIndTexMtxID mtx_id, f32 offset[2][3], s8 scale_exp) +{ + s32 mtx[6]; + u32 reg; + u32 id; + + CHECK_GXBEGIN(0xBA, "GXSetIndTexMtx"); + + switch (mtx_id) { + case GX_ITM_0: + case GX_ITM_1: + case GX_ITM_2: + id = mtx_id - 1; + break; + case GX_ITM_S0: + case GX_ITM_S1: + case GX_ITM_S2: + id = mtx_id - 5; + break; + case GX_ITM_T0: + case GX_ITM_T1: + case GX_ITM_T2: + id = mtx_id - 9; + break; + default: + id = 0; + break; + } + + mtx[0] = (int)(1024.0f * offset[0][0]) & 0x7FF; + mtx[1] = (int)(1024.0f * offset[1][0]) & 0x7FF; + scale_exp += 0x11; + reg = 0; + SET_REG_FIELD(0xBD, reg, 11, 0, mtx[0]); + SET_REG_FIELD(0xBE, reg, 11, 11, mtx[1]); + SET_REG_FIELD(0xBF, reg, 2, 22, scale_exp & 3); + SET_REG_FIELD(0xC0, reg, 8, 24, id * 3 + 6); + GX_WRITE_SOME_REG5(0x61, reg); + + mtx[2] = (int)(1024.0f * offset[0][1]) & 0x7FF; + mtx[3] = (int)(1024.0f * offset[1][1]) & 0x7FF; + reg = 0; + SET_REG_FIELD(0xC6, reg, 11, 0, mtx[2]); + SET_REG_FIELD(0xC7, reg, 11, 11, mtx[3]); + SET_REG_FIELD(0xC8, reg, 2, 22, (scale_exp >> 2) & 3); + SET_REG_FIELD(0xC9, reg, 8, 24, id * 3 + 7); + GX_WRITE_SOME_REG5(0x61, reg); + + mtx[4] = (int)(1024.0f * offset[0][2]) & 0x7FF; + mtx[5] = (int)(1024.0f * offset[1][2]) & 0x7FF; + reg = 0; + SET_REG_FIELD(0xCF, reg, 11, 0, mtx[4]); + SET_REG_FIELD(0xD0, reg, 11, 11, mtx[5]); + SET_REG_FIELD(0xD1, reg, 2, 22, (scale_exp >> 4) & 3); + SET_REG_FIELD(0xD2, reg, 8, 24, id * 3 + 8); + GX_WRITE_SOME_REG5(0x61, reg); + + gx->bpSentNot = 0; +} + +void GXSetIndTexCoordScale(GXIndTexStageID ind_state, GXIndTexScale scale_s, GXIndTexScale scale_t) +{ + CHECK_GXBEGIN(0xF9, "GXSetIndTexScale"); + + switch (ind_state) { + case GX_INDTEXSTAGE0: + SET_REG_FIELD(0xEA, gx->IndTexScale0, 4, 0, scale_s); + SET_REG_FIELD(0xEB, gx->IndTexScale0, 4, 4, scale_t); + SET_REG_FIELD(0xEC, gx->IndTexScale0, 8, 24, 0x25); + GX_WRITE_SOME_REG5(0x61, gx->IndTexScale0); + break; + case GX_INDTEXSTAGE1: + SET_REG_FIELD(0xF0, gx->IndTexScale0, 4, 8, scale_s); + SET_REG_FIELD(0xF1, gx->IndTexScale0, 4, 12, scale_t); + SET_REG_FIELD(0xF2, gx->IndTexScale0, 8, 24, 0x25); + GX_WRITE_SOME_REG5(0x61, gx->IndTexScale0); + break; + case GX_INDTEXSTAGE2: + SET_REG_FIELD(0xF6, gx->IndTexScale1, 4, 0, scale_s); + SET_REG_FIELD(0xF7, gx->IndTexScale1, 4, 4, scale_t); + SET_REG_FIELD(0xF8, gx->IndTexScale1, 8, 24, 0x26); + GX_WRITE_SOME_REG5(0x61, gx->IndTexScale1); + break; + case GX_INDTEXSTAGE3: + SET_REG_FIELD(0xFC, gx->IndTexScale1, 4, 8, scale_s); + SET_REG_FIELD(0xFD, gx->IndTexScale1, 4, 12, scale_t); + SET_REG_FIELD(0xFE, gx->IndTexScale1, 8, 24, 0x26); + GX_WRITE_SOME_REG5(0x61, gx->IndTexScale1); + break; + default: + ASSERTMSGLINE(0x115, 0, "GXSetIndTexCoordScale: Invalid Indirect Stage Id"); + break; + } + gx->bpSentNot = 0; +} + +void GXSetIndTexOrder(GXIndTexStageID ind_stage, GXTexCoordID tex_coord, GXTexMapID tex_map) +{ + CHECK_GXBEGIN(0x12E, "GXSetIndTexOrder"); + + ASSERTMSGLINE(0x11D, tex_map < 8, "GXSetIndTexOrder: Invalid direct texture Id"); + ASSERTMSGLINE(0x11E, tex_coord < 8, "GXSetIndTexOrder: Invalid texture coord"); + switch (ind_stage) { + case GX_INDTEXSTAGE0: + SET_REG_FIELD(0x122, gx->iref, 3, 0, tex_map); + SET_REG_FIELD(0x123, gx->iref, 3, 3, tex_coord); + break; + case GX_INDTEXSTAGE1: + SET_REG_FIELD(0x126, gx->iref, 3, 6, tex_map); + SET_REG_FIELD(0x127, gx->iref, 3, 9, tex_coord); + break; + case GX_INDTEXSTAGE2: + SET_REG_FIELD(0x12A, gx->iref, 3, 12, tex_map); + SET_REG_FIELD(0x12B, gx->iref, 3, 15, tex_coord); + break; + case GX_INDTEXSTAGE3: + SET_REG_FIELD(0x12E, gx->iref, 3, 18, tex_map); + SET_REG_FIELD(0x12F, gx->iref, 3, 21, tex_coord); + break; + default: + ASSERTMSGLINE(0x132, 0, "GXSetIndTexOrder: Invalid Indirect Stage Id"); + break; + } + GX_WRITE_SOME_REG5(0x61, gx->iref); + gx->dirtyState |= 3; + gx->bpSentNot = 0; +} + +void GXSetNumIndStages(u8 nIndStages) +{ + CHECK_GXBEGIN(0x144, "GXSetNumIndStages"); + ASSERTMSGLINE(0x146, nIndStages <= 4, "GXSetNumIndStages: Exceeds max. number of indirect texture stages"); + SET_REG_FIELD(0x147, gx->genMode, 3, 16, nIndStages); + gx->dirtyState |= 6; +} + +#pragma dont_inline on +void GXSetTevDirect(GXTevStageID tev_stage) +{ + CHECK_GXBEGIN(0x158, "GXSetTevDirect"); + GXSetTevIndirect(tev_stage, GX_INDTEXSTAGE0, GX_ITF_8, GX_ITB_NONE, GX_ITM_OFF, GX_ITW_OFF, GX_ITW_OFF, 0U, 0, 0); +} + +void GXSetTevIndWarp(GXTevStageID tev_stage, GXIndTexStageID ind_stage, u8 signed_offset, u8 replace_mode, GXIndTexMtxID matrix_sel) +{ + GXIndTexWrap wrap = (replace_mode != 0) ? GX_ITW_0 : GX_ITW_OFF; + + CHECK_GXBEGIN(0x16E, "GXSetTevIndWarp"); + GXSetTevIndirect(tev_stage, ind_stage, GX_ITF_8, (signed_offset != 0) ? GX_ITB_STU : GX_ITB_NONE, matrix_sel, wrap, wrap, 0U, 0, 0); +} + +void GXSetTevIndTile(GXTevStageID tev_stage, GXIndTexStageID ind_stage, u16 tilesize_s, u16 tilesize_t, u16 tilespacing_s, u16 tilespacing_t, + GXIndTexFormat format, GXIndTexMtxID matrix_sel, GXIndTexBiasSel bias_sel, GXIndTexAlphaSel alpha_sel) +{ + GXIndTexWrap wrap_s; + GXIndTexWrap wrap_t; + f32 mtx[2][3]; + + CHECK_GXBEGIN(0x190, "GXSetTevIndTile"); + ASSERTMSGLINE(0x191, tev_stage < 16, "GXSetTevIndTile: Invalid tev stage id"); + ASSERTMSGLINE(0x192, ind_stage < 4, "GXSetTevIndTile: Invalid indirect stage id"); + switch (tilesize_s) { + case 256: + wrap_s = GX_ITW_256; + break; + case 128: + wrap_s = GX_ITW_128; + break; + case 64: + wrap_s = GX_ITW_64; + break; + case 32: + wrap_s = GX_ITW_32; + break; + case 16: + wrap_s = GX_ITW_16; + break; + default: + ASSERTMSGLINE(0x19B, 0, "GXSetTevIndTile: Invalid tilesize for S coordinate"); + wrap_s = GX_ITW_OFF; + break; + } + switch (tilesize_t) { + case 256: + wrap_t = GX_ITW_256; + break; + case 128: + wrap_t = GX_ITW_128; + break; + case 64: + wrap_t = GX_ITW_64; + break; + case 32: + wrap_t = GX_ITW_32; + break; + case 16: + wrap_t = GX_ITW_16; + break; + default: + ASSERTMSGLINE(0x1A7, 0, "GXSetTevIndTile: Invalid tilesize for T coordinate"); + wrap_t = GX_ITW_OFF; + break; + } + mtx[0][0] = tilespacing_s / 1024.0f; + mtx[0][1] = mtx[0][2] = 0.0f; + mtx[1][1] = tilespacing_t / 1024.0f; + mtx[1][0] = mtx[1][2] = 0.0f; + GXSetIndTexMtx(matrix_sel, mtx, 0xA); + GXSetTevIndirect(tev_stage, ind_stage, format, bias_sel, matrix_sel, wrap_s, wrap_t, 0U, 1, alpha_sel); +} +#pragma dont_inline off + +void GXSetTevIndBumpST(GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXIndTexMtxID matrix_sel) +{ + GXIndTexMtxID sm; + GXIndTexMtxID tm; + + CHECK_GXBEGIN(0x1CF, "GXSetTevIndBumpST"); + switch (matrix_sel) { + case GX_ITM_0: + sm = GX_ITM_S0; + tm = GX_ITM_T0; + break; + case GX_ITM_1: + sm = GX_ITM_S1; + tm = GX_ITM_T1; + break; + case GX_ITM_2: + sm = GX_ITM_S2; + tm = GX_ITM_T2; + break; + default: + ASSERTMSGLINE(0x1E0, 0, "GXSetTevIndBumpST: Invalid matrix selection"); + break; + } + GXSetTevIndirect(tev_stage, ind_stage, GX_ITF_8, GX_ITB_ST, sm, GX_ITW_0, GX_ITW_0, 0U, 0, 0); + GXSetTevIndirect(tev_stage + 1, ind_stage, GX_ITF_8, GX_ITB_ST, tm, GX_ITW_0, GX_ITW_0, 1U, 0, 0); + GXSetTevIndirect(tev_stage + 2, ind_stage, GX_ITF_8, GX_ITB_NONE, GX_ITM_OFF, GX_ITW_OFF, GX_ITW_OFF, 1U, 0, 0); +} + +void GXSetTevIndBumpXYZ(GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXIndTexMtxID matrix_sel) +{ + CHECK_GXBEGIN(0x214, "GXSetTevIndBumpXYZ"); + GXSetTevIndirect(tev_stage, ind_stage, GX_ITF_8, GX_ITB_STU, matrix_sel, GX_ITW_OFF, GX_ITW_OFF, 0U, 0, 0); +} + +void GXSetTevIndRepeat(GXTevStageID tev_stage) +{ + CHECK_GXBEGIN(0x231, "GXSetTevIndRepeat"); + GXSetTevIndirect(tev_stage, GX_INDTEXSTAGE0, GX_ITF_8, GX_ITB_NONE, GX_ITM_OFF, GX_ITW_0, GX_ITW_0, 1U, 0, 0); +} + +void __GXUpdateBPMask(void) +{ + u32 nIndStages; + u32 i; + u32 tmap; + u32 new_imask; + u32 nStages; + u32 new_dmask; + + new_imask = 0; + new_dmask = 0; + nIndStages = GET_REG_FIELD(gx->genMode, 3, 16); + for (i = 0; i < nIndStages; i++) { + switch (i) { + case 0: + tmap = GET_REG_FIELD(gx->iref, 3, 0); + break; + case 1: + tmap = GET_REG_FIELD(gx->iref, 3, 6); + break; + case 2: + tmap = GET_REG_FIELD(gx->iref, 3, 12); + break; + case 3: + tmap = GET_REG_FIELD(gx->iref, 3, 18); + break; + } + new_imask |= 1 << tmap; + } + + if ((u8)gx->bpMask != new_imask) { + SET_REG_FIELD(0x26E, gx->bpMask, 8, 0, new_imask); + GX_WRITE_SOME_REG5(0x61, gx->bpMask); + gx->bpSentNot = 0; + } +} + +void __GXFlushTextureState(void) +{ + GX_WRITE_SOME_REG5(0x61, gx->bpMask); + gx->bpSentNot = 0; +} diff --git a/src/dolphin/gx/GXDisplayList.c b/src/dolphin/gx/GXDisplayList.c new file mode 100644 index 00000000..cc751606 --- /dev/null +++ b/src/dolphin/gx/GXDisplayList.c @@ -0,0 +1,83 @@ +#include + +#include +#include + +#include + +static struct __GXFifoObj DisplayListFifo; +static volatile struct __GXFifoObj *OldCPUFifo; +static struct __GXData_struct __savedGXdata; + +void GXBeginDisplayList(void *list, u32 size) +{ + struct __GXFifoObj *CPUFifo = (struct __GXFifoObj *)GXGetCPUFifo(); + + CHECK_GXBEGIN(0x89, "GXBeginDisplayList"); + ASSERTMSGLINE(0x8A, !__GXData->inDispList, "GXBeginDisplayList: display list already in progress"); + ASSERTMSGLINE(0x8B, (size & 0x1F) == 0, "GXBeginDisplayList: size is not 32 byte aligned"); + ASSERTMSGLINE(0x8C, ((u32)list & 0x1F) == 0, "GXBeginDisplayList: list is not 32 byte aligned"); + if (gx->dirtyState != 0) { + __GXSetDirtyState(); + } + if (gx->dlSaveContext != 0) { + memcpy(&__savedGXdata, gx, sizeof(__savedGXdata)); + } + DisplayListFifo.base = (u8 *)list; + DisplayListFifo.top = (u8 *)list + size - 4; + DisplayListFifo.size = size; + DisplayListFifo.count = 0; + DisplayListFifo.rdPtr = list; + DisplayListFifo.wrPtr = list; + gx->inDispList = 1; + GXSaveCPUFifo((GXFifoObj *)CPUFifo); + OldCPUFifo = CPUFifo; + GXSetCPUFifo((GXFifoObj *)&DisplayListFifo); +} + +unsigned long GXEndDisplayList(void) +{ + u32 ov; + BOOL enabled; + u32 cpenable; + + CHECK_GXBEGIN(0xB5, "GXEndDisplayList"); + ASSERTMSGLINE(0xB6, gx->inDispList == TRUE, "GXEndDisplayList: no display list in progress"); + if (gx->dirtyState != 0) { + __GXSetDirtyState(); + } + ov = (__piReg[5] >> 26) & 1; + __GXSaveCPUFifoAux(&DisplayListFifo); + ASSERTMSGLINE(0xC3, !ov, "GXEndDisplayList: display list commands overflowed buffer"); + GXSetCPUFifo((GXFifoObj *)OldCPUFifo); + if (gx->dlSaveContext != 0) { + enabled = OSDisableInterrupts(); + cpenable = gx->cpEnable; + memcpy(gx, &__savedGXdata, sizeof(*gx)); + gx->cpEnable = cpenable; + OSRestoreInterrupts(enabled); + } + gx->inDispList = 0; + if (!ov) { + return DisplayListFifo.count; + } + return 0; +} + +void GXCallDisplayList(const void *list, u32 nbytes) +{ + CHECK_GXBEGIN(0xEC, "GXCallDisplayList"); + ASSERTMSGLINE(0xED, !gx->inDispList, "GXCallDisplayList: display list already in progress"); + ASSERTMSGLINE(0xEE, (nbytes & 0x1F) == 0, "GXCallDisplayList: nbytes is not 32 byte aligned"); + ASSERTMSGLINE(0xEF, ((u32)list & 0x1F) == 0, "GXCallDisplayList: list is not 32 byte aligned"); + + if (gx->dirtyState != 0) { + __GXSetDirtyState(); + } + if (*(u32 *)&gx->vNumNot == 0) { // checks both vNum and bpSent + __GXSendFlushPrim(); + } + GX_WRITE_U8(0x40); + GX_WRITE_U32((u32)list); + GX_WRITE_U32(nbytes); +} diff --git a/src/dolphin/gx/GXFifo.c b/src/dolphin/gx/GXFifo.c new file mode 100644 index 00000000..963be184 --- /dev/null +++ b/src/dolphin/gx/GXFifo.c @@ -0,0 +1,559 @@ +#include +#include +#include +#include + + +#include + +static OSThread *__GXCurrentThread; +static GXBool CPGPLinked; +static BOOL GXOverflowSuspendInProgress; +static GXBreakPtCallback BreakPointCB; +static u32 __GXOverflowCount; + +struct __GXFifoObj *CPUFifo; +struct __GXFifoObj *GPFifo; +void *__GXCurrentBP; + +static void __GXFifoReadEnable(void); +static void __GXFifoReadDisable(void); +static void __GXFifoLink(u8 arg0); +static void __GXWriteFifoIntEnable(u8 arg0, u8 arg1); +static void __GXWriteFifoIntReset(u8 arg0, u8 arg1); + +static void GXOverflowHandler(s16 interrupt, OSContext *context) +{ + ASSERTLINE(0x179, !GXOverflowSuspendInProgress); + + __GXOverflowCount++; + __GXWriteFifoIntEnable(0, 1); + __GXWriteFifoIntReset(1, 0); + GXOverflowSuspendInProgress = TRUE; + + OSSuspendThread(__GXCurrentThread); +} + +static void GXUnderflowHandler(s16 interrupt, OSContext *context) +{ + ASSERTLINE(0x1A3, GXOverflowSuspendInProgress); + + OSResumeThread(__GXCurrentThread); + GXOverflowSuspendInProgress = FALSE; + __GXWriteFifoIntReset(1U, 1U); + __GXWriteFifoIntEnable(1U, 0U); +} + +#define SOME_SET_REG_MACRO(reg, size, shift, val) \ + do { \ + (reg) = (u32)__rlwimi((u32)(reg), (val), (shift), (32 - (shift) - (size)), (31 - (shift))); \ + } while (0); + +static void GXBreakPointHandler(s16 interrupt, OSContext *context) +{ + OSContext exceptionContext; + + SOME_SET_REG_MACRO(gx->cpEnable, 1, 5, 0); + GX_SET_CP_REG(1, gx->cpEnable); + if (BreakPointCB != NULL) { + OSClearContext(&exceptionContext); + OSSetCurrentContext(&exceptionContext); + BreakPointCB(); + OSClearContext(&exceptionContext); + OSSetCurrentContext(context); + } +} + +static void GXCPInterruptHandler(s16 interrupt, OSContext *context) +{ + gx->cpStatus = GX_GET_CP_REG(0); + if (GET_REG_FIELD(gx->cpEnable, 1, 3) && GET_REG_FIELD(gx->cpStatus, 1, 1)) { + GXUnderflowHandler(interrupt, context); + } + if (GET_REG_FIELD(gx->cpEnable, 1, 2) && GET_REG_FIELD(gx->cpStatus, 1, 0)) { + GXOverflowHandler(interrupt, context); + } + if (GET_REG_FIELD(gx->cpEnable, 1, 5) && GET_REG_FIELD(gx->cpStatus, 1, 4)) { + GXBreakPointHandler(interrupt, context); + } +} + +void GXInitFifoBase(GXFifoObj *fifo, void *base, u32 size) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + + ASSERTMSGLINE(0x21E, realFifo != CPUFifo, "GXInitFifoBase: fifo is attached to CPU"); + ASSERTMSGLINE(0x220, realFifo != GPFifo, "GXInitFifoBase: fifo is attached to GP"); + ASSERTMSGLINE(0x222, ((u32)base & 0x1F) == 0, "GXInitFifoBase: base must be 32B aligned"); + ASSERTMSGLINE(0x224, base != NULL, "GXInitFifoBase: base pointer is NULL"); + ASSERTMSGLINE(0x226, (size & 0x1F) == 0, "GXInitFifoBase: size must be 32B aligned"); + ASSERTMSGLINE(0x228, size >= 0x10000, "GXInitFifoBase: fifo is not large enough"); + + realFifo->base = base; + realFifo->top = (u8 *)base + size - 4; + realFifo->size = size; + realFifo->count = 0; + GXInitFifoLimits(fifo, size - 0x4000, (size >> 1) & ~0x1F); + GXInitFifoPtrs(fifo, base, base); +} + +void GXInitFifoPtrs(GXFifoObj *fifo, void *readPtr, void *writePtr) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + BOOL enabled; + + ASSERTMSGLINE(0x250, realFifo != CPUFifo, "GXInitFifoPtrs: fifo is attached to CPU"); + ASSERTMSGLINE(0x252, realFifo != GPFifo, "GXInitFifoPtrs: fifo is attached to GP"); + ASSERTMSGLINE(0x254, ((u32)readPtr & 0x1F) == 0, "GXInitFifoPtrs: readPtr not 32B aligned"); + ASSERTMSGLINE(0x256, ((u32)writePtr & 0x1F) == 0, "GXInitFifoPtrs: writePtr not 32B aligned"); + ASSERTMSGLINE(0x259, realFifo->base <= readPtr && readPtr < realFifo->top, "GXInitFifoPtrs: readPtr not in fifo range"); + ASSERTMSGLINE(0x25C, realFifo->base <= writePtr && writePtr < realFifo->top, "GXInitFifoPtrs: writePtr not in fifo range"); + + enabled = OSDisableInterrupts(); + realFifo->rdPtr = readPtr; + realFifo->wrPtr = writePtr; + realFifo->count = (u8 *)writePtr - (u8 *)readPtr; + if (realFifo->count < 0) { + realFifo->count += realFifo->size; + } + OSRestoreInterrupts(enabled); +} + +void GXInitFifoLimits(GXFifoObj *fifo, u32 hiWatermark, u32 loWatermark) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + + ASSERTMSGLINE(0x281, realFifo != GPFifo, "GXInitFifoLimits: fifo is attached to GP"); + ASSERTMSGLINE(0x283, (hiWatermark & 0x1F) == 0, "GXInitFifoLimits: hiWatermark not 32B aligned"); + ASSERTMSGLINE(0x285, (loWatermark & 0x1F) == 0, "GXInitFifoLimits: loWatermark not 32B aligned"); + ASSERTMSGLINE(0x287, hiWatermark < realFifo->top - realFifo->base, "GXInitFifoLimits: hiWatermark too large"); + ASSERTMSGLINE(0x289, loWatermark < hiWatermark, "GXInitFifoLimits: hiWatermark below lo watermark"); + + realFifo->hiWatermark = hiWatermark; + realFifo->loWatermark = loWatermark; +} + +void GXSetCPUFifo(GXFifoObj *fifo) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + BOOL enabled = OSDisableInterrupts(); + + CPUFifo = realFifo; + if (CPUFifo == GPFifo) + { + u32 reg = 0; + + __piReg[3] = (u32)realFifo->base & 0x3FFFFFFF; + __piReg[4] = (u32)realFifo->top & 0x3FFFFFFF; + SET_REG_FIELD(0x294, reg, 21, 5, ((u32)realFifo->wrPtr & 0x3FFFFFFF) >> 5); + SET_REG_FIELD(0x295, reg, 1, 26, 0); + __piReg[5] = reg; + CPGPLinked = GX_TRUE; + __GXWriteFifoIntReset(1, 1); + __GXWriteFifoIntEnable(1, 0); + __GXFifoLink(1); + } + else + { + u32 reg; + + if (CPGPLinked) + { + __GXFifoLink(0); + CPGPLinked = GX_FALSE; + } + __GXWriteFifoIntEnable(0, 0); + reg = 0; + __piReg[3] = (u32)realFifo->base & 0x3FFFFFFF; + __piReg[4] = (u32)realFifo->top & 0x3FFFFFFF; + SET_REG_FIELD(0x2B7, reg, 21, 5, ((u32)realFifo->wrPtr & 0x3FFFFFFF) >> 5); + SET_REG_FIELD(0x2B8, reg, 1, 26, 0); + __piReg[5] = reg; + } + + __sync(); + + OSRestoreInterrupts(enabled); +} + +void GXSetGPFifo(GXFifoObj *fifo) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + BOOL enabled = OSDisableInterrupts(); + + __GXFifoReadDisable(); + __GXWriteFifoIntEnable(0, 0); + GPFifo = realFifo; + + GX_SET_CP_REG(16, (u32)realFifo->base & 0xFFFF); + GX_SET_CP_REG(18, (u32)realFifo->top & 0xFFFF); + GX_SET_CP_REG(24, realFifo->count & 0xFFFF); + GX_SET_CP_REG(26, (u32)realFifo->wrPtr & 0xFFFF); + GX_SET_CP_REG(28, (u32)realFifo->rdPtr & 0xFFFF); + GX_SET_CP_REG(20, (u32)realFifo->hiWatermark & 0xFFFF); + GX_SET_CP_REG(22, (u32)realFifo->loWatermark & 0xFFFF); + GX_SET_CP_REG(17, ((u32)realFifo->base & 0x3FFFFFFF) >> 16); + GX_SET_CP_REG(19, ((u32)realFifo->top & 0x3FFFFFFF) >> 16); + GX_SET_CP_REG(25, realFifo->count >> 16); + GX_SET_CP_REG(27, ((u32)realFifo->wrPtr & 0x3FFFFFFF) >> 16); + GX_SET_CP_REG(29, ((u32)realFifo->rdPtr & 0x3FFFFFFF) >> 16); + GX_SET_CP_REG(21, (u32)realFifo->hiWatermark >> 16); + GX_SET_CP_REG(23, (u32)realFifo->loWatermark >> 16); + + __sync(); + + if (CPUFifo == GPFifo) { + CPGPLinked = GX_TRUE; + __GXWriteFifoIntEnable(1, 0); + __GXFifoLink(1); + } + else { + CPGPLinked = GX_FALSE; + __GXWriteFifoIntEnable(0, 0); + __GXFifoLink(0); + } + __GXWriteFifoIntReset(1, 1); + __GXFifoReadEnable(); + OSRestoreInterrupts(enabled); +} + +void GXSaveCPUFifo(GXFifoObj *fifo) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + ASSERTMSGLINE(0x343, realFifo == CPUFifo, "GXSaveCPUFifo: fifo is not attached to CPU"); + __GXSaveCPUFifoAux(realFifo); +} + +#define SOME_MACRO1(fifo) \ + do { \ + u32 temp = GX_GET_CP_REG(29) << 16; \ + temp |= GX_GET_CP_REG(28); \ + fifo->rdPtr = OSPhysicalToCached(temp); \ + } while (0) + +#define SOME_MACRO2(fifo) \ + do { \ + u32 temp = GX_GET_CP_REG(25) << 16; \ + temp |= GX_GET_CP_REG(24); \ + fifo->count = temp; \ + } while (0) + +void __GXSaveCPUFifoAux(struct __GXFifoObj *realFifo) +{ + BOOL enabled = OSDisableInterrupts(); + + GXFlush(); + realFifo->base = OSPhysicalToCached(__piReg[3]); + realFifo->top = OSPhysicalToCached(__piReg[4]); + realFifo->wrPtr = OSPhysicalToCached(__piReg[5] & 0xFBFFFFFF); + if (CPGPLinked) { + SOME_MACRO1(realFifo); + SOME_MACRO2(realFifo); + } else { + realFifo->count = (u8 *)realFifo->wrPtr - (u8 *)realFifo->rdPtr; + if (realFifo->count < 0) + realFifo->count += realFifo->size; + } + OSRestoreInterrupts(enabled); +} + +void GXSaveGPFifo(GXFifoObj *fifo) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + unsigned long cpStatus; + unsigned char readIdle; + unsigned long temp; + + ASSERTMSGLINE(0x38C, realFifo == GPFifo, "GXSaveGPFifo: fifo is not attached to GP"); + cpStatus = GX_GET_CP_REG(0); + readIdle = GET_REG_FIELD(cpStatus, 1, 2); + ASSERTMSGLINE(0x393, readIdle, "GXSaveGPFifo: GP is not idle"); + + SOME_MACRO1(realFifo); + SOME_MACRO2(realFifo); +} + +void GXGetGPStatus(GXBool *overhi, GXBool *underlow, GXBool *readIdle, GXBool *cmdIdle, GXBool *brkpt) +{ + gx->cpStatus = GX_GET_CP_REG(0); + *overhi = GET_REG_FIELD(gx->cpStatus, 1, 0); + *underlow = (int)GET_REG_FIELD(gx->cpStatus, 1, 1); + *readIdle = (int)GET_REG_FIELD(gx->cpStatus, 1, 2); + *cmdIdle = (int)GET_REG_FIELD(gx->cpStatus, 1, 3); + *brkpt = (int)GET_REG_FIELD(gx->cpStatus, 1, 4); +} + +void GXGetFifoStatus(GXFifoObj *fifo, GXBool *overhi, GXBool *underflow, u32 *fifoCount, GXBool *cpuWrite, GXBool *gpRead, GXBool *fifowrap) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + + *underflow = GX_FALSE; + *overhi = GX_FALSE; + *fifoCount = 0; + *fifowrap = GX_FALSE; + if (realFifo == GPFifo) { + SOME_MACRO1(realFifo); + SOME_MACRO2(realFifo); + } + if (realFifo == CPUFifo) { + GXFlush(); + __GXSaveCPUFifoAux(realFifo); + *fifowrap = (int)GET_REG_FIELD(GX_GET_PI_REG(5), 1, 26); + } + *overhi = (realFifo->count > realFifo->hiWatermark); + *underflow = (realFifo->count < realFifo->loWatermark); + *fifoCount = (realFifo->count); + *cpuWrite = (CPUFifo == realFifo); + *gpRead = (GPFifo == realFifo); +} + +void GXGetFifoPtrs(GXFifoObj *fifo, void **readPtr, void **writePtr) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + + if (realFifo == CPUFifo) { + realFifo->wrPtr = OSPhysicalToCached(GX_GET_PI_REG(5) & 0xFBFFFFFF); + } + if (realFifo == GPFifo) { + SOME_MACRO1(realFifo); + SOME_MACRO2(realFifo); + } + else { + realFifo->count = (u8 *)realFifo->wrPtr - (u8 *)realFifo->rdPtr; + if (realFifo->count < 0) { + realFifo->count += realFifo->size; + } + } + *readPtr = realFifo->rdPtr; + *writePtr = realFifo->wrPtr; +} + +void *GXGetFifoBase(const GXFifoObj *fifo) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + + return realFifo->base; +} + +u32 GXGetFifoSize(const GXFifoObj *fifo) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + + return realFifo->size; +} + +void GXGetFifoLimits(const GXFifoObj *fifo, u32 *hi, u32 *lo) +{ + struct __GXFifoObj *realFifo = (struct __GXFifoObj *)fifo; + + *hi = realFifo->hiWatermark; + *lo = realFifo->loWatermark; +} + +GXBreakPtCallback GXSetBreakPtCallback(GXBreakPtCallback cb) +{ + GXBreakPtCallback oldcb = BreakPointCB; + BOOL enabled = OSDisableInterrupts(); + + BreakPointCB = cb; + OSRestoreInterrupts(enabled); + return oldcb; +} + +void *__GXCurrentBP; + +void GXEnableBreakPt(void *break_pt) +{ + BOOL enabled = OSDisableInterrupts(); + + __GXFifoReadDisable(); + GX_SET_CP_REG(30, (u32)break_pt); + GX_SET_CP_REG(31, ((u32)break_pt >> 16) & 0x3FFF); + SOME_SET_REG_MACRO(gx->cpEnable, 1, 1, 1); + SOME_SET_REG_MACRO(gx->cpEnable, 1, 5, 1); + GX_SET_CP_REG(1, gx->cpEnable); + __GXCurrentBP = break_pt; + __GXFifoReadEnable(); + OSRestoreInterrupts(enabled); +} + +void GXDisableBreakPt(void) +{ + BOOL enabled = OSDisableInterrupts(); + + SOME_SET_REG_MACRO(gx->cpEnable, 1, 1, 0); + SOME_SET_REG_MACRO(gx->cpEnable, 1, 5, 0); + GX_SET_CP_REG(1, gx->cpEnable); + __GXCurrentBP = NULL; + OSRestoreInterrupts(enabled); +} + +void __GXFifoInit(void) +{ + __OSSetInterruptHandler(0x11, GXCPInterruptHandler); + __OSUnmaskInterrupts(0x4000); + __GXCurrentThread = OSGetCurrentThread(); + GXOverflowSuspendInProgress = FALSE; + CPUFifo = NULL; + GPFifo = NULL; +} + +static void __GXFifoReadEnable(void) +{ + SET_REG_FIELD(0, gx->cpEnable, 1, 0, 1); + GX_SET_CP_REG(1, gx->cpEnable); +} + +static void __GXFifoReadDisable(void) +{ + SET_REG_FIELD(0, gx->cpEnable, 1, 0, 0); + GX_SET_CP_REG(1, gx->cpEnable); +} + +static void __GXFifoLink(u8 en) +{ + SET_REG_FIELD(0x4DA, gx->cpEnable, 1, 4, (en != 0) ? 1 : 0); + GX_SET_CP_REG(1, gx->cpEnable); +} + +static void __GXWriteFifoIntEnable(u8 hiWatermarkEn, u8 loWatermarkEn) +{ + SET_REG_FIELD(0x4F0, gx->cpEnable, 1, 2, hiWatermarkEn); + SET_REG_FIELD(0x4F1, gx->cpEnable, 1, 3, loWatermarkEn); + GX_SET_CP_REG(1, gx->cpEnable); +} + +static void __GXWriteFifoIntReset(u8 hiWatermarkClr, u8 loWatermarkClr) +{ + SET_REG_FIELD(0x508, gx->cpClr, 1, 0, hiWatermarkClr); + SET_REG_FIELD(0x509, gx->cpClr, 1, 1, loWatermarkClr); + GX_SET_CP_REG(2, gx->cpClr); +} + +void __GXInsaneWatermark(void) +{ + struct __GXFifoObj *realFifo = GPFifo; + + realFifo->hiWatermark = realFifo->loWatermark + 512; + GX_SET_CP_REG(20, (realFifo->hiWatermark & 0x3FFFFFFF) & 0xFFFF); + GX_SET_CP_REG(21, (realFifo->hiWatermark & 0x3FFFFFFF) >> 16); +} + +void __GXCleanGPFifo(void) +{ + GXFifoObj dummyFifo; + GXFifoObj *gpFifo = GXGetGPFifo(); + GXFifoObj *cpuFifo = GXGetCPUFifo(); + void *base = GXGetFifoBase(gpFifo); + + dummyFifo = *gpFifo; + GXInitFifoPtrs(&dummyFifo, base, base); + GXSetGPFifo(&dummyFifo); + if (cpuFifo == gpFifo) { + GXSetCPUFifo(&dummyFifo); + } + GXInitFifoPtrs(gpFifo, base, base); + GXSetGPFifo(gpFifo); + if (cpuFifo == gpFifo) { + GXSetCPUFifo(cpuFifo); + } +} + +OSThread *GXSetCurrentGXThread(void) +{ + BOOL enabled; + struct OSThread *prev; + + enabled = OSDisableInterrupts(); + prev = __GXCurrentThread; + ASSERTMSGLINE(0x561, !GXOverflowSuspendInProgress, "GXSetCurrentGXThread: Two threads cannot generate GX commands at the same time!"); + __GXCurrentThread = OSGetCurrentThread(); + OSRestoreInterrupts(enabled); + return prev; +} + +OSThread *GXGetCurrentGXThread(void) +{ + return __GXCurrentThread; +} + +GXFifoObj *GXGetCPUFifo(void) +{ + return (GXFifoObj *)CPUFifo; +} + +GXFifoObj *GXGetGPFifo(void) +{ + return (GXFifoObj *)GPFifo; +} + +u32 GXGetOverflowCount(void) +{ + return __GXOverflowCount; +} + +u32 GXResetOverflowCount(void) +{ + u32 oldcount; + + oldcount = __GXOverflowCount; + __GXOverflowCount = 0; + return oldcount; +} + +// NONMATCHING +volatile void *GXRedirectWriteGatherPipe(void *ptr) +{ + u32 reg = 0; + BOOL enabled = OSDisableInterrupts(); + + CHECK_GXBEGIN(0x5D5, "GXRedirectWriteGatherPipe"); + ASSERTLINE(0x5D6, OFFSET(ptr, 32) == 0); + ASSERTLINE(0x5D8, !IsWGPipeRedirected); + + GXFlush(); + while (PPCMfwpar() & 1) { } + PPCMtwpar((u32)OSUncachedToPhysical((void *)GXFIFO_ADDR)); + if (CPGPLinked) { + __GXFifoLink(0); + __GXWriteFifoIntEnable(0, 0); + } + CPUFifo->wrPtr = OSPhysicalToCached(GX_GET_PI_REG(5) & 0xFBFFFFFF); + GX_SET_PI_REG(3, 0); + GX_SET_PI_REG(4, 0x04000000); + SET_REG_FIELD(0x5F7, reg, 21, 5, ((u32)ptr & 0x3FFFFFFF) >> 5); + reg &= 0xFBFFFFFF; + GX_SET_PI_REG(5, reg); + PPCSync(); + OSRestoreInterrupts(enabled); + return (volatile void *)GXFIFO_ADDR; +} + +// NONMATCHING +void GXRestoreWriteGatherPipe(void) +{ + u32 reg = 0; // r31 + u32 i; // r29 + BOOL enabled; // r28 + + ASSERTLINE(0x610, IsWGPipeRedirected); + enabled = OSDisableInterrupts(); + for (i = 0; i < 31; i++) { + GXWGFifo.u8 = 0; + } + PPCSync(); + while (PPCMfwpar() & 1) { } + PPCMtwpar((u32)OSUncachedToPhysical((void *)GXFIFO_ADDR)); + GX_SET_PI_REG(3, (u32)CPUFifo->base & 0x3FFFFFFF); + GX_SET_PI_REG(4, (u32)CPUFifo->top & 0x3FFFFFFF); + SET_REG_FIELD(0x62A, reg, 21, 5, ((u32)CPUFifo->wrPtr & 0x3FFFFFFF) >> 5); + reg &= 0xFBFFFFFF; + GX_SET_PI_REG(5, reg); + if (CPGPLinked) { + __GXWriteFifoIntReset(1, 1); + __GXWriteFifoIntEnable(1, 0); + __GXFifoLink(1); + } + PPCSync(); + OSRestoreInterrupts(enabled); +} diff --git a/src/dolphin/gx/GXFrameBuf.c b/src/dolphin/gx/GXFrameBuf.c new file mode 100644 index 00000000..4c04abab --- /dev/null +++ b/src/dolphin/gx/GXFrameBuf.c @@ -0,0 +1,604 @@ +#include +#include + +#include + +GXRenderModeObj GXNtsc240Ds = { 1, 640, 240, 240, 40, 0, 640, 480, 0, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; + +GXRenderModeObj GXNtsc240DsAa = { 1, 640, 240, 240, 40, 0, 640, 480, 0, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; + +GXRenderModeObj GXNtsc240Int = { 0, 640, 240, 240, 40, 0, 640, 480, 0, 1, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; + +GXRenderModeObj GXNtsc240IntAa = { 0, 640, 240, 240, 40, 0, 640, 480, 0, 1, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; + +GXRenderModeObj GXNtsc480IntDf = { 0, 640, 480, 480, 40, 0, 640, 480, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 8, 8, 10, 12, 10, 8, 8 } }; + +GXRenderModeObj GXNtsc480Int = { 0, 640, 480, 480, 40, 0, 640, 480, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; + +GXRenderModeObj GXNtsc480IntAa = { 0, 640, 242, 480, 40, 0, 640, 480, 1, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 4, 8, 12, 16, 12, 8, 4 } }; + +GXRenderModeObj GXNtsc480Prog = { 2, 640, 480, 480, 40, 0, 640, 480, 0, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; + +GXRenderModeObj GXNtsc480ProgSoft = { 2, 640, 480, 480, 40, 0, 640, 480, 0, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 8, 8, 10, 12, 10, 8, 8 } }; + +GXRenderModeObj GXNtsc480ProgAa = { 2, 640, 242, 480, 40, 0, 640, 480, 0, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 4, 8, 12, 16, 12, 8, 4 } }; + +GXRenderModeObj GXMpal240Ds = { 9, 640, 240, 240, 40, 0, 640, 480, 0, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXMpal240DsAa = { 9, 640, 240, 240, 40, 0, 640, 480, 0, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXMpal240Int = { 8, 640, 240, 240, 40, 0, 640, 480, 0, 1, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXMpal240IntAa = { 8, 640, 240, 240, 40, 0, 640, 480, 0, 1, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXMpal480IntDf = { 8, 640, 480, 480, 40, 0, 640, 480, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 8, 8, 10, 12, 10, 8, 8 } }; +GXRenderModeObj GXMpal480Int = { 8, 640, 480, 480, 40, 0, 640, 480, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXMpal480IntAa = { 8, 640, 242, 480, 40, 0, 640, 480, 1, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 4, 8, 12, 16, 12, 8, 4 } }; +GXRenderModeObj GXPal264Ds = { 5, 640, 264, 264, 40, 11, 640, 528, 0, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXPal264DsAa = { 5, 640, 264, 264, 40, 11, 640, 528, 0, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXPal264Int = { 4, 640, 264, 264, 40, 23, 640, 528, 0, 1, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXPal264IntAa = { 4, 640, 264, 264, 40, 23, 640, 528, 0, 1, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXPal528IntDf = { 4, 640, 528, 528, 40, 23, 640, 528, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 8, 8, 10, 12, 10, 8, 8 } }; +GXRenderModeObj GXPal528Int = { 4, 640, 528, 528, 40, 23, 640, 528, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXPal524IntAa = { 4, 640, 264, 524, 40, 23, 640, 524, 1, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 4, 8, 12, 16, 12, 8, 4 } }; +GXRenderModeObj GXEurgb60Hz240Ds = { 21, 640, 240, 240, 40, 0, 640, 480, 0, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXEurgb60Hz240DsAa = { 21, 640, 240, 240, 40, 0, 640, 480, 0, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXEurgb60Hz240Int = { 20, 640, 240, 240, 40, 0, 640, 480, 0, 1, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXEurgb60Hz240IntAa = { 20, 640, 240, 240, 40, 0, 640, 480, 0, 1, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXEurgb60Hz480IntDf = { 20, 640, 480, 480, 40, 0, 640, 480, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 8, 8, 10, 12, 10, 8, 8 } }; +GXRenderModeObj GXEurgb60Hz480Int = { 20, 640, 480, 480, 40, 0, 640, 480, 1, 0, 0, + { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, { 0, 0, 21, 22, 21, 0, 0 } }; +GXRenderModeObj GXEurgb60Hz480IntAa = { 20, 640, 242, 480, 40, 0, 640, 480, 1, 0, 1, + { 3, 2, 9, 6, 3, 10, 3, 2, 9, 6, 3, 10, 9, 2, 3, 6, 9, 10, 9, 2, 3, 6, 9, 10 }, { 4, 8, 12, 16, 12, 8, 4 } }; +GXRenderModeObj GXRmHW = { 1, 320, 240, 240, 40, 0, 640, 480, 0, 0, 0, { 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, + { 0, 0, 21, 22, 21, 0, 0 } }; + +void GXAdjustForOverscan(GXRenderModeObj *rmin, GXRenderModeObj *rmout, u16 hor, u16 ver) +{ + u16 hor2 = hor * 2; + u16 ver2 = ver * 2; + u32 verf; + u32 mode; + + if (rmin != rmout) { + *rmout = *rmin; + } + + mode = rmin->viTVmode & 3; + rmout->fbWidth = rmin->fbWidth - hor2; + verf = (ver2 * rmin->efbHeight) / (u32)rmin->xfbHeight; + rmout->efbHeight = rmin->efbHeight - verf; + if (rmin->xFBmode == VI_XFBMODE_SF && ((rmin->viTVmode & 2) != 2)) { + rmout->xfbHeight = rmin->xfbHeight - ver; + } + else { + rmout->xfbHeight = rmin->xfbHeight - ver2; + } + + rmout->viWidth = rmin->viWidth - hor2; + rmout->viHeight = rmin->viHeight - ver2; + rmout->viXOrigin = rmin->viXOrigin + hor; + rmout->viYOrigin = rmin->viYOrigin + ver; +} + +void GXSetDispCopySrc(u16 left, u16 top, u16 wd, u16 ht) +{ + CHECK_GXBEGIN(0x4D3, "GXSetDispCopySrc"); + + gx->cpDispSrc = 0; + SET_REG_FIELD(0x4D6, gx->cpDispSrc, 10, 0, left); + SET_REG_FIELD(0x4D7, gx->cpDispSrc, 10, 10, top); + SET_REG_FIELD(0x4D7, gx->cpDispSrc, 8, 24, 0x49); + + gx->cpDispSize = 0; + SET_REG_FIELD(0x4DB, gx->cpDispSize, 10, 0, wd - 1); + SET_REG_FIELD(0x4DC, gx->cpDispSize, 10, 10, ht - 1); + SET_REG_FIELD(0x4DC, gx->cpDispSize, 8, 24, 0x4A); +} + +void GXSetTexCopySrc(u16 left, u16 top, u16 wd, u16 ht) +{ + CHECK_GXBEGIN(0x4EF, "GXSetTexCopySrc"); + + gx->cpTexSrc = 0; + SET_REG_FIELD(0x4F2, gx->cpTexSrc, 10, 0, left); + SET_REG_FIELD(0x4F3, gx->cpTexSrc, 10, 10, top); + SET_REG_FIELD(0x4F3, gx->cpTexSrc, 8, 24, 0x49); + + gx->cpTexSize = 0; + SET_REG_FIELD(0x4F7, gx->cpTexSize, 10, 0, wd - 1); + SET_REG_FIELD(0x4F8, gx->cpTexSize, 10, 10, ht - 1); + SET_REG_FIELD(0x4F8, gx->cpTexSize, 8, 24, 0x4A); +} + +void GXSetDispCopyDst(u16 wd, u16 ht) +{ + u16 stride; + + ASSERTMSGLINE(0x50D, (wd & 0xF) == 0, "GXSetDispCopyDst: Width must be a multiple of 16"); + CHECK_GXBEGIN(0x50E, "GXSetDispCopyDst"); + + stride = (int)wd * 2; + gx->cpDispStride = 0; + SET_REG_FIELD(0x514, gx->cpDispStride, 10, 0, (stride >> 5)); + SET_REG_FIELD(0x514, gx->cpDispStride, 8, 24, 0x4D); +} + +void GXSetTexCopyDst(u16 wd, u16 ht, GXTexFmt fmt, GXBool mipmap) +{ + u32 rowTiles; + u32 colTiles; + u32 cmpTiles; + u32 peTexFmt; + u32 peTexFmtH; + + CHECK_GXBEGIN(0x52F, "GXSetTexCopyDst"); + + gx->cpTexZ = 0; + peTexFmt = fmt & 0xF; + ASSERTMSGLINEV(0x54E, peTexFmt < 13, "%s: invalid texture format", "GXSetTexCopyDst"); + + if (fmt == GX_TF_Z16) { + peTexFmt = 0xB; + } + switch (fmt) { + case GX_TF_I4: + case GX_TF_I8: + case GX_TF_IA4: + case GX_TF_IA8: + case GX_CTF_YUVA8: + SET_REG_FIELD(0, gx->cpTex, 2, 15, 3); + break; + default: + SET_REG_FIELD(0, gx->cpTex, 2, 15, 2); + break; + } + + gx->cpTexZ = (fmt & _GX_TF_ZTF) == _GX_TF_ZTF; + peTexFmtH = (peTexFmt >> 3) & 1; + !peTexFmt; + SET_REG_FIELD(0x565, gx->cpTex, 1, 3, peTexFmtH); + peTexFmt = peTexFmt & 7; + __GetImageTileCount(fmt, wd, ht, &rowTiles, &colTiles, &cmpTiles); + + gx->cpTexStride = 0; + SET_REG_FIELD(0x56E, gx->cpTexStride, 10, 0, rowTiles * cmpTiles); + SET_REG_FIELD(0x570, gx->cpTexStride, 8, 24, 0x4D); + SET_REG_FIELD(0x570, gx->cpTex, 1, 9, mipmap); + SET_REG_FIELD(0x571, gx->cpTex, 3, 4, peTexFmt); +} + +void GXSetDispCopyFrame2Field(GXCopyMode mode) +{ + CHECK_GXBEGIN(0x582, "GXSetDispCopyFrame2Field"); + SET_REG_FIELD(0x583, gx->cpDisp, 2, 12, mode); + SET_REG_FIELD(0x583, gx->cpTex, 2, 12, 0); +} + +void GXSetCopyClamp(GXFBClamp clamp) +{ + u8 clmpB; + u8 clmpT; + + CHECK_GXBEGIN(0x597, "GXSetCopyClamp"); + + clmpT = (clamp & 1) == 1; + clmpB = (clamp & 2) == 2; + + SET_REG_FIELD(0x59B, gx->cpDisp, 1, 0, clmpT); + SET_REG_FIELD(0x59C, gx->cpDisp, 1, 1, clmpB); + + SET_REG_FIELD(0x59E, gx->cpTex, 1, 0, clmpT); + SET_REG_FIELD(0x59F, gx->cpTex, 1, 1, clmpB); +} + +static u32 __GXGetNumXfbLines(u32 efbHt, u32 iScale) +{ + u32 count; + u32 realHt; + u32 iScaleD; + + count = (efbHt - 1) * 0x100; + realHt = (count / iScale) + 1; + + iScaleD = iScale; + + if (iScaleD > 0x80 && iScaleD < 0x100) { + while (iScaleD % 2 == 0) { + iScaleD /= 2; + } + + if (efbHt % iScaleD == 0) { + realHt++; + } + } + + if (realHt > 0x400) { + realHt = 0x400; + } + + return realHt; +} + +u16 GXGetNumXfbLines(u16 efbHeight, f32 yScale) +{ + u32 iScale; + ASSERTMSGLINE(0x5CE, yScale >= 1.0f, "GXGetNumXfbLines: Vertical scale must be >= 1.0"); + + iScale = (u32)(256.0f / yScale) & 0x1FF; + return __GXGetNumXfbLines(efbHeight, iScale); +} + +f32 GXGetYScaleFactor(u16 efbHeight, u16 xfbHeight) +{ + f32 fScale; + f32 yScale; + u32 iScale; + u32 tgtHt; + u32 realHt; + + ASSERTMSGLINE(0x5E6, xfbHeight <= 1024, "GXGetYScaleFactor: Display copy only supports up to 1024 lines.\n"); + ASSERTMSGLINE(0x5E8, efbHeight <= xfbHeight, "GXGetYScaleFactor: EFB height should not be greater than XFB height.\n"); + + tgtHt = xfbHeight; + yScale = (f32)xfbHeight / (f32)efbHeight; + iScale = (u32)(256.0f / yScale) & 0x1FF; + realHt = __GXGetNumXfbLines(efbHeight, iScale); + + while (realHt > xfbHeight) { + tgtHt--; + yScale = (f32)tgtHt / (f32)efbHeight; + iScale = (u32)(256.0f / yScale) & 0x1FF; + realHt = __GXGetNumXfbLines(efbHeight, iScale); + } + + fScale = yScale; + while (realHt < xfbHeight) { + fScale = yScale; + tgtHt++; + yScale = (f32)tgtHt / (f32)efbHeight; + iScale = (u32)(256.0f / yScale) & 0x1FF; + realHt = __GXGetNumXfbLines(efbHeight, iScale); + } + + return fScale; +} + +u32 GXSetDispCopyYScale(f32 vscale) +{ + u8 enable; + u32 iScale; + u32 ht; + u32 reg; + + CHECK_GXBEGIN(0x615, "GXSetDispCopyYScale"); + + ASSERTMSGLINE(0x617, vscale >= 1.0f, "GXSetDispCopyYScale: Vertical scale must be >= 1.0"); + + iScale = (u32)(256.0f / vscale) & 0x1FF; + enable = (iScale != 256); + + reg = 0; + SET_REG_FIELD(0x61E, reg, 9, 0, iScale); + SET_REG_FIELD(0x61E, reg, 8, 24, 0x4E); + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; + SET_REG_FIELD(0x623, gx->cpDisp, 1, 10, enable); + ht = GET_REG_FIELD(gx->cpDispSize, 10, 10) + 1; + return __GXGetNumXfbLines(ht, iScale); +} + +void GXSetCopyClear(GXColor clear_clr, u32 clear_z) +{ + u32 reg; + + CHECK_GXBEGIN(0x63C, "GXSetCopyClear"); + ASSERTMSGLINE(0x63E, clear_z <= 0xFFFFFF, "GXSetCopyClear: Z clear value is out of range"); + + reg = 0; + SET_REG_FIELD(0x641, reg, 8, 0, clear_clr.r); + SET_REG_FIELD(0x642, reg, 8, 8, clear_clr.a); + SET_REG_FIELD(0x642, reg, 8, 24, 0x4F); + GX_WRITE_RAS_REG(reg); + + reg = 0; + SET_REG_FIELD(0x647, reg, 8, 0, clear_clr.b); + SET_REG_FIELD(0x648, reg, 8, 8, clear_clr.g); + SET_REG_FIELD(0x648, reg, 8, 24, 0x50); + GX_WRITE_RAS_REG(reg); + + reg = 0; + SET_REG_FIELD(0x64D, reg, 24, 0, clear_z); + SET_REG_FIELD(0x64D, reg, 8, 24, 0x51); + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; +} + +void GXSetCopyFilter(GXBool aa, u8 sample_pattern[12][2], GXBool vf, u8 vfilter[7]) +{ + u32 msLoc[4]; + u32 coeff0; + u32 coeff1; + + CHECK_GXBEGIN(0x669, "GXSetCopyFilter"); + + if (aa != 0) { + msLoc[0] = 0; + SET_REG_FIELD(0x66D, msLoc[0], 4, 0, sample_pattern[0][0]); + SET_REG_FIELD(0x66E, msLoc[0], 4, 4, sample_pattern[0][1]); + SET_REG_FIELD(0x66F, msLoc[0], 4, 8, sample_pattern[1][0]); + SET_REG_FIELD(0x670, msLoc[0], 4, 12, sample_pattern[1][1]); + SET_REG_FIELD(0x671, msLoc[0], 4, 16, sample_pattern[2][0]); + SET_REG_FIELD(0x672, msLoc[0], 4, 20, sample_pattern[2][1]); + SET_REG_FIELD(0x673, msLoc[0], 8, 24, 1); + + msLoc[1] = 0; + SET_REG_FIELD(0x676, msLoc[1], 4, 0, sample_pattern[3][0]); + SET_REG_FIELD(0x677, msLoc[1], 4, 4, sample_pattern[3][1]); + SET_REG_FIELD(0x678, msLoc[1], 4, 8, sample_pattern[4][0]); + SET_REG_FIELD(0x679, msLoc[1], 4, 12, sample_pattern[4][1]); + SET_REG_FIELD(0x67A, msLoc[1], 4, 16, sample_pattern[5][0]); + SET_REG_FIELD(0x67B, msLoc[1], 4, 20, sample_pattern[5][1]); + SET_REG_FIELD(0x67C, msLoc[1], 8, 24, 2); + + msLoc[2] = 0; + SET_REG_FIELD(0x67F, msLoc[2], 4, 0, sample_pattern[6][0]); + SET_REG_FIELD(0x680, msLoc[2], 4, 4, sample_pattern[6][1]); + SET_REG_FIELD(0x681, msLoc[2], 4, 8, sample_pattern[7][0]); + SET_REG_FIELD(0x682, msLoc[2], 4, 12, sample_pattern[7][1]); + SET_REG_FIELD(0x683, msLoc[2], 4, 16, sample_pattern[8][0]); + SET_REG_FIELD(0x684, msLoc[2], 4, 20, sample_pattern[8][1]); + SET_REG_FIELD(0x685, msLoc[2], 8, 24, 3); + + msLoc[3] = 0; + SET_REG_FIELD(0x688, msLoc[3], 4, 0, sample_pattern[9][0]); + SET_REG_FIELD(0x689, msLoc[3], 4, 4, sample_pattern[9][1]); + SET_REG_FIELD(0x68A, msLoc[3], 4, 8, sample_pattern[10][0]); + SET_REG_FIELD(0x68B, msLoc[3], 4, 12, sample_pattern[10][1]); + SET_REG_FIELD(0x68C, msLoc[3], 4, 16, sample_pattern[11][0]); + SET_REG_FIELD(0x68D, msLoc[3], 4, 20, sample_pattern[11][1]); + SET_REG_FIELD(0x68E, msLoc[3], 8, 24, 4); + } + else { + msLoc[0] = 0x01666666; + msLoc[1] = 0x02666666; + msLoc[2] = 0x03666666; + msLoc[3] = 0x04666666; + } + GX_WRITE_RAS_REG(msLoc[0]); + GX_WRITE_RAS_REG(msLoc[1]); + GX_WRITE_RAS_REG(msLoc[2]); + GX_WRITE_RAS_REG(msLoc[3]); + + coeff0 = 0; + SET_REG_FIELD(0, coeff0, 8, 24, 0x53); + coeff1 = 0; + SET_REG_FIELD(0, coeff1, 8, 24, 0x54); + if (vf != 0) { + SET_REG_FIELD(0x6A6, coeff0, 6, 0, vfilter[0]); + SET_REG_FIELD(0x6A7, coeff0, 6, 6, vfilter[1]); + SET_REG_FIELD(0x6A8, coeff0, 6, 12, vfilter[2]); + SET_REG_FIELD(0x6A9, coeff0, 6, 18, vfilter[3]); + SET_REG_FIELD(0x6AA, coeff1, 6, 0, vfilter[4]); + SET_REG_FIELD(0x6AB, coeff1, 6, 6, vfilter[5]); + SET_REG_FIELD(0x6AC, coeff1, 6, 12, vfilter[6]); + } + else { + SET_REG_FIELD(0, coeff0, 6, 0, 0); + SET_REG_FIELD(0, coeff0, 6, 6, 0); + SET_REG_FIELD(0, coeff0, 6, 12, 21); + SET_REG_FIELD(0, coeff0, 6, 18, 22); + SET_REG_FIELD(0, coeff1, 6, 0, 21); + SET_REG_FIELD(0, coeff1, 6, 6, 0); + SET_REG_FIELD(0, coeff1, 6, 12, 0); + } + GX_WRITE_RAS_REG(coeff0); + GX_WRITE_RAS_REG(coeff1); + gx->bpSentNot = 0; +} + +void GXSetDispCopyGamma(GXGamma gamma) +{ + CHECK_GXBEGIN(0x6CD, "GXSetDispCopyGamma"); + SET_REG_FIELD(0x6CE, gx->cpDisp, 2, 7, gamma); +} + +#if DEBUG +static void __GXVerifCopy(void *dest, u8 clear) +{ + u8 clmpT; + u8 clmpB; + u32 x0; + u32 y0; + u32 dx; + u32 dy; + + CHECK_GXBEGIN(0x6E2, "GXCopyDisp"); + + clmpT = GET_REG_FIELD(gx->cpDisp, 1, 0); + clmpB = (u32)GET_REG_FIELD(gx->cpDisp, 1, 1); + x0 = GET_REG_FIELD(gx->cpDispSrc, 10, 0); + dx = GET_REG_FIELD(gx->cpDispSize, 10, 0) + 1; + y0 = GET_REG_FIELD(gx->cpDispSrc, 10, 10); + dy = GET_REG_FIELD(gx->cpDispSize, 10, 10) + 1; + + ASSERTMSGLINE(0x6EC, clmpT || y0 != 0, "GXCopy: Have to set GX_CLAMP_TOP if source top == 0"); + ASSERTMSGLINE(0x6EE, clmpB || y0 + dy <= 528, "GXCopy: Have to set GX_CLAMP_BOTTOM if source bottom > 528"); + ASSERTMSGLINE(0x6F3, (gx->peCtrl & 7) != 3 || clear == 0, "GXCopy: Can not do clear while pixel type is Z"); + if ((u32)(gx->peCtrl & 7) == 5) { + ASSERTMSGLINE(0x6F9, clear == 0, "GXCopy: Can not clear YUV framebuffer"); + ASSERTMSGLINE(0x6FB, (x0 & 3) == 0, "GXCopy: Source x is not multiple of 4 for YUV copy"); + ASSERTMSGLINE(0x6FD, (y0 & 3) == 0, "GXCopy: Source y is not multiple of 4 for YUV copy"); + ASSERTMSGLINE(0x6FF, (dx & 3) == 0, "GXCopy: Source width is not multiple of 4 for YUV copy"); + ASSERTMSGLINE(0x701, (dy & 3) == 0, "GXCopy: Source height is not multiple of 4 for YUV copy"); + } + else { + ASSERTMSGLINE(0x705, (x0 & 1) == 0, "GXCopy: Source x is not multiple of 2 for RGB copy"); + ASSERTMSGLINE(0x707, (y0 & 1) == 0, "GXCopy: Source y is not multiple of 2 for RGB copy"); + ASSERTMSGLINE(0x709, (dx & 1) == 0, "GXCopy: Source width is not multiple of 2 for RGB copy"); + ASSERTMSGLINE(0x70B, (dy & 1) == 0, "GXCopy: Source height is not multiple of 2 for RGB copy"); + } + ASSERTMSGLINE(0x70F, ((u32)dest & 0x1F) == 0, "GXCopy: Display destination address not 32B aligned"); +} +#endif + +void GXCopyDisp(void *dest, GXBool clear) +{ + u32 reg; + u32 tempPeCtrl; + u32 phyAddr; + u8 changePeCtrl; + + CHECK_GXBEGIN(0x729, "GXCopyDisp"); + +#if DEBUG + __GXVerifCopy(dest, clear); +#endif + if (clear) { + reg = gx->zmode; + SET_REG_FIELD(0, reg, 1, 0, 1); + SET_REG_FIELD(0, reg, 3, 1, 7); + GX_WRITE_RAS_REG(reg); + + reg = gx->cmode0; + SET_REG_FIELD(0, reg, 1, 0, 0); + SET_REG_FIELD(0, reg, 1, 1, 0); + GX_WRITE_RAS_REG(reg); + } + changePeCtrl = FALSE; + if ((clear || (u32)GET_REG_FIELD(gx->peCtrl, 3, 0) == 3) && (u32)GET_REG_FIELD(gx->peCtrl, 1, 6) == 1) { + changePeCtrl = TRUE; + tempPeCtrl = gx->peCtrl; + SET_REG_FIELD(0, tempPeCtrl, 1, 6, 0); + GX_WRITE_RAS_REG(tempPeCtrl); + } + GX_WRITE_RAS_REG(gx->cpDispSrc); + GX_WRITE_RAS_REG(gx->cpDispSize); + GX_WRITE_RAS_REG(gx->cpDispStride); + + phyAddr = (u32)dest & 0x3FFFFFFF; + reg = 0; + SET_REG_FIELD(0x750, reg, 21, 0, phyAddr >> 5); + SET_REG_FIELD(0x754, reg, 8, 24, 0x4B); + GX_WRITE_RAS_REG(reg); + + SET_REG_FIELD(0x754, gx->cpDisp, 1, 11, clear); + SET_REG_FIELD(0x754, gx->cpDisp, 1, 14, 1); + SET_REG_FIELD(0x754, gx->cpDisp, 8, 24, 0x52); + GX_WRITE_RAS_REG(gx->cpDisp); + + if (clear) { + GX_WRITE_RAS_REG(gx->zmode); + GX_WRITE_RAS_REG(gx->cmode0); + } + if (changePeCtrl) { + GX_WRITE_RAS_REG(gx->peCtrl); + } + gx->bpSentNot = 0; +} + +void GXCopyTex(void *dest, GXBool clear) +{ + u32 reg; + u32 tempPeCtrl; + u32 phyAddr; + u8 changePeCtrl; + + CHECK_GXBEGIN(0x77C, "GXCopyTex"); + +#if DEBUG + __GXVerifCopy(dest, clear); +#endif + if (clear) { + reg = gx->zmode; + SET_REG_FIELD(0, reg, 1, 0, 1); + SET_REG_FIELD(0, reg, 3, 1, 7); + GX_WRITE_RAS_REG(reg); + + reg = gx->cmode0; + SET_REG_FIELD(0, reg, 1, 0, 0); + SET_REG_FIELD(0, reg, 1, 1, 0); + GX_WRITE_RAS_REG(reg); + } + changePeCtrl = 0; + tempPeCtrl = gx->peCtrl; + if (gx->cpTexZ && ((tempPeCtrl & 7) != 3)) { + changePeCtrl = 1; + SET_REG_FIELD(0, tempPeCtrl, 3, 0, 3); + } + if (((clear != 0) || ((u32)(tempPeCtrl & 7) == 3)) && ((u32)((tempPeCtrl >> 6U) & 1) == 1)) { + changePeCtrl = 1; + SET_REG_FIELD(0, tempPeCtrl, 1, 6, 0); + } + if (changePeCtrl) { + GX_WRITE_RAS_REG(tempPeCtrl); + } + GX_WRITE_RAS_REG(gx->cpTexSrc); + GX_WRITE_RAS_REG(gx->cpTexSize); + GX_WRITE_RAS_REG(gx->cpTexStride); + + phyAddr = (u32)dest & 0x3FFFFFFF; + reg = 0; + SET_REG_FIELD(0x7AD, reg, 21, 0, phyAddr >> 5); + SET_REG_FIELD(0x7AD, reg, 8, 24, 0x4B); + GX_WRITE_RAS_REG(reg); + + SET_REG_FIELD(0x7B1, gx->cpTex, 1, 11, clear); + SET_REG_FIELD(0x7B1, gx->cpTex, 1, 14, 0); + SET_REG_FIELD(0x7B1, gx->cpTex, 8, 24, 0x52); + GX_WRITE_RAS_REG(gx->cpTex); + + if (clear != 0) { + GX_WRITE_RAS_REG(gx->zmode); + GX_WRITE_RAS_REG(gx->cmode0); + } + if (changePeCtrl) { + GX_WRITE_RAS_REG(gx->peCtrl); + } + gx->bpSentNot = 0; +} + +void GXClearBoundingBox(void) +{ + u32 reg; + + CHECK_GXBEGIN(0x7D3, "GXClearBoundingBox"); + reg = 0x550003FF; + GX_WRITE_RAS_REG(reg); + reg = 0x560003FF; + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; +} + +void GXReadBoundingBox(u16 *left, u16 *top, u16 *right, u16 *bottom) +{ + *left = GX_GET_PE_REG(8); + *top = GX_GET_PE_REG(10); + *right = GX_GET_PE_REG(9); + *bottom = GX_GET_PE_REG(11); +} diff --git a/src/dolphin/gx/GXGeometry.c b/src/dolphin/gx/GXGeometry.c new file mode 100644 index 00000000..853e2989 --- /dev/null +++ b/src/dolphin/gx/GXGeometry.c @@ -0,0 +1,146 @@ +#include +#include +#include + +#include + +void __GXSetDirtyState(void) +{ + if (gx->dirtyState & 1) { + __GXSetSUTexRegs(); + } + if (gx->dirtyState & 2) { + __GXUpdateBPMask(); + } + if (gx->dirtyState & 4) { + __GXSetGenMode(); + } + if (gx->dirtyState & 8) { + __GXSetVCD(); + } + if (gx->dirtyState & 0x10) { + __GXSetVAT(); + } + if (gx->dirtyState & 0x18) { + __GXCalculateVLim(); + } + gx->dirtyState = 0; +} + +void GXBegin(GXPrimitive type, GXVtxFmt vtxfmt, u16 nverts) +{ + ASSERTMSGLINE(0x167, vtxfmt < 8, "GXBegin: Format Index is out of range"); + ASSERTMSGLINE(0x168, !__GXinBegin, "GXBegin: called inside another GXBegin/GXEnd"); + + if (gx->dirtyState != 0) { + __GXSetDirtyState(); + } + if (*(u32 *)&gx->vNumNot == 0) { // checks both vNum and bpSentNot + __GXSendFlushPrim(); + } + GX_WRITE_U8(vtxfmt | type); + GX_WRITE_U16(nverts); +} + +void __GXSendFlushPrim(void) +{ + u32 i; + u32 numD = gx->vNum * gx->vLim; + + GX_WRITE_U8(0x98); + GX_WRITE_U16(gx->vNum); + for (i = 0; i < numD; i += 4) { + GX_WRITE_U32(0); + } + gx->bpSentNot = 1; +} + +void GXSetLineWidth(u8 width, GXTexOffset texOffsets) +{ + CHECK_GXBEGIN(0x1B8, "GXSetLineWidth"); + SET_REG_FIELD(0x1B9, gx->lpSize, 8, 0, width); + SET_REG_FIELD(0x1BA, gx->lpSize, 3, 16, texOffsets); + GX_WRITE_RAS_REG(gx->lpSize); + gx->bpSentNot = 0; +} + +void GXGetLineWidth(u8 *width, GXTexOffset *texOffsets) +{ + ASSERTMSGLINE(0x1CF, width != NULL && texOffsets != NULL, "GXGet*: invalid null pointer"); + + *width = GET_REG_FIELD(gx->lpSize, 8, 0); + *texOffsets = GET_REG_FIELD(gx->lpSize, 3, 16); +} + +void GXSetPointSize(u8 pointSize, GXTexOffset texOffsets) +{ + CHECK_GXBEGIN(0x1E4, "GXSetPointSize"); + SET_REG_FIELD(0x1E5, gx->lpSize, 8, 8, pointSize); + SET_REG_FIELD(0x1E6, gx->lpSize, 3, 19, texOffsets); + GX_WRITE_RAS_REG(gx->lpSize); + gx->bpSentNot = 0; +} + +void GXGetPointSize(u8 *pointSize, GXTexOffset *texOffsets) +{ + ASSERTMSGLINE(0x1FB, pointSize != NULL && texOffsets != NULL, "GXGet*: invalid null pointer"); + + *pointSize = (int)GET_REG_FIELD(gx->lpSize, 8, 8); + *texOffsets = GET_REG_FIELD(gx->lpSize, 3, 19); +} + +void GXEnableTexOffsets(GXTexCoordID coord, u8 line_enable, u8 point_enable) +{ + CHECK_GXBEGIN(0x211, "GXEnableTexOffsets"); + + ASSERTMSGLINE(0x213, coord < 8, "GXEnableTexOffsets: Invalid coordinate Id"); + + SET_REG_FIELD(0x215, gx->suTs0[coord], 1, 18, line_enable); + SET_REG_FIELD(0x216, gx->suTs0[coord], 1, 19, point_enable); + GX_WRITE_RAS_REG(gx->suTs0[coord]); + gx->bpSentNot = 0; +} + +void GXSetCullMode(GXCullMode mode) +{ + GXCullMode hwMode; + + CHECK_GXBEGIN(0x21D, "GXSetCullMode"); + switch (mode) { + case GX_CULL_FRONT: + hwMode = GX_CULL_BACK; + break; + case GX_CULL_BACK: + hwMode = GX_CULL_FRONT; + break; + default: + hwMode = mode; + break; + } + SET_REG_FIELD(0x225, gx->genMode, 2, 14, hwMode); + gx->dirtyState |= 4; +} + +void GXGetCullMode(GXCullMode *mode) +{ + GXCullMode hwMode = gx->genMode; + *mode = ((hwMode >> 0xD) & 0x2) | (((((int)hwMode >> 0xE) & 0x2) >> 0x1)); +} + +void GXSetCoPlanar(GXBool enable) +{ + u32 reg; + + CHECK_GXBEGIN(0x265, "GXSetCoPlanar"); + + SET_REG_FIELD(0x267, gx->genMode, 1, 19, enable); + reg = 0xFE080000; + GX_WRITE_RAS_REG(reg); + GX_WRITE_RAS_REG(gx->genMode); +} + +void __GXSetGenMode(void) +{ + GX_WRITE_RAS_REG(gx->genMode); + gx->bpSentNot = 0; +} diff --git a/src/dolphin/gx/GXInit.c b/src/dolphin/gx/GXInit.c new file mode 100644 index 00000000..82874fab --- /dev/null +++ b/src/dolphin/gx/GXInit.c @@ -0,0 +1,372 @@ +#include + +#include +#include +#include +#include + +#include + +void __GXInitGX(); + +static struct __GXData_struct gxData; +struct __GXData_struct *gx = &gxData; +// DWARF info lists all of these as "void *", but these types make more sense. +u16 *__memReg; +u16 *__peReg; +u16 *__cpReg; +u32 *__piReg; + +// clang-format off +asm BOOL IsWriteGatherBufferEmpty(void) +{ + sync + mfspr r3, WPAR + andi. r3, r3, 1 +} +// clang-format on + +static void EnableWriteGatherPipe(void) +{ + u32 hid2 = PPCMfhid2(); + + PPCMtwpar(OSUncachedToPhysical((void *)GXFIFO_ADDR)); + hid2 |= 0x40000000; + PPCMthid2(hid2); +} + +static void DisableWriteGatherPipe(void) +{ + u32 hid2 = PPCMfhid2(); + + hid2 &= ~0x40000000; + PPCMthid2(hid2); +} + +static GXTexRegion *__GXDefaultTexRegionCallback(GXTexObj *t_obj, GXTexMapID unused) +{ + GXTexFmt fmt = GXGetTexObjFmt(t_obj); + + if (fmt != GX_TF_C4 && fmt != GX_TF_C8 && fmt != GX_TF_C14X2) { + return &gx->TexRegions[gx->nextTexRgn++ & 7]; + } + else { + return &gx->TexRegionsCI[gx->nextTexRgnCI++ & 3]; + } +} + +static GXTlutRegion *__GXDefaultTlutRegionCallback(u32 idx) +{ + if (idx >= 0x14U) { + return NULL; + } + return &gx->TlutRegions[idx]; +} + +GXFifoObj FifoObj; + +GXFifoObj *GXInit(void *base, u32 size) +{ + u32 i; + u32 reg; + u32 freqBase; + + // OSRegisterVersion(__GXVersion); + + gx->inDispList = FALSE; + gx->dlSaveContext = TRUE; + // gx->abtWaitPECopy = 1; +#if DEBUG + __GXinBegin = FALSE; +#endif + gx->tcsManEnab = FALSE; + gx->tevTcEnab = FALSE; + + GXSetMisc(GX_MT_XF_FLUSH, 0); + + __piReg = OSPhysicalToUncached(0xC003000); + __cpReg = OSPhysicalToUncached(0xC000000); + __peReg = OSPhysicalToUncached(0xC001000); + __memReg = OSPhysicalToUncached(0xC004000); + // __GXFifoInit(); + // GXInitFifoBase(&FifoObj, base, size); + // GXSetCPUFifo(&FifoObj); + // GXSetGPFifo(&FifoObj); + + // if (!resetFuncRegistered) { + // OSRegisterResetFunction(&GXResetFuncInfo); + // resetFuncRegistered = 1; + // } + + // __GXPEInit(); + // EnableWriteGatherPipe(); + + gx->genMode = 0; + SET_REG_FIELD(0, gx->genMode, 8, 24, 0); + gx->bpMask = 255; + SET_REG_FIELD(0, gx->bpMask, 8, 24, 0x0F); + gx->lpSize = 0; + SET_REG_FIELD(0, gx->lpSize, 8, 24, 0x22); + for (i = 0; i < 16; ++i) { + gx->tevc[i] = 0; + gx->teva[i] = 0; + gx->tref[i / 2] = 0; + gx->texmapId[i] = GX_TEXMAP_NULL; + SET_REG_FIELD(0x46A, gx->tevc[i], 8, 24, 0xC0 + i * 2); + SET_REG_FIELD(0x46B, gx->teva[i], 8, 24, 0xC1 + i * 2); + SET_REG_FIELD(0x46D, gx->tevKsel[i / 2], 8, 24, 0xF6 + i / 2); + SET_REG_FIELD(0x46F, gx->tref[i / 2], 8, 24, 0x28 + i / 2); + } + gx->iref = 0; + SET_REG_FIELD(0, gx->iref, 8, 24, 0x27); + for (i = 0; i < 8; ++i) { + gx->suTs0[i] = 0; + gx->suTs1[i] = 0; + SET_REG_FIELD(0x478, gx->suTs0[i], 8, 24, 0x30 + i * 2); + SET_REG_FIELD(0x479, gx->suTs1[i], 8, 24, 0x31 + i * 2); + } + SET_REG_FIELD(0, gx->suScis0, 8, 24, 0x20); + SET_REG_FIELD(0, gx->suScis1, 8, 24, 0x21); + SET_REG_FIELD(0, gx->cmode0, 8, 24, 0x41); + SET_REG_FIELD(0, gx->cmode1, 8, 24, 0x42); + SET_REG_FIELD(0, gx->zmode, 8, 24, 0x40); + SET_REG_FIELD(0, gx->peCtrl, 8, 24, 0x43); + SET_REG_FIELD(0, gx->cpTex, 2, 7, 0); + + // gx->zScale = 1.6777216E7f; + // gx->zOffset = 0.0f; + gx->dirtyState = 0; + gx->dirtyVAT = FALSE; +#if DEBUG + __gxVerif->verifyLevel = GX_WARN_NONE; + GXSetVerifyCallback((GXVerifyCallback)__GXDefaultVerifyCallback); + for (i = 0; i < 256; i++) { + SET_REG_FIELD(0, __gxVerif->rasRegs[i], 8, 24, 0xFF); + } + memset(__gxVerif->xfRegsDirty, 0, 0x50); + memset(__gxVerif->xfMtxDirty, 0, 0x100); + memset(__gxVerif->xfNrmDirty, 0, 0x60); + memset(__gxVerif->xfLightDirty, 0, 0x80); +#endif + freqBase = __OSBusClock / 500; + // __GXFlushTextureState(); + reg = (freqBase >> 11) | 0x400 | 0x69000000; + GX_WRITE_RAS_REG(reg); + + // __GXFlushTextureState(); + reg = (freqBase / 0x1080) | 0x200 | 0x46000000; + GX_WRITE_RAS_REG(reg); + + // __GXInitRevisionBits(); + + // for (i = 0; i < 8; i++) { + // GXInitTexCacheRegion(&gx->TexRegions0[i], GX_FALSE, GXTexRegionAddrTable[i], + // GX_TEXCACHE_32K, GXTexRegionAddrTable[i + 8], GX_TEXCACHE_32K); + // GXInitTexCacheRegion(&gx->TexRegions1[i], GX_FALSE, GXTexRegionAddrTable[i + 16], + // GX_TEXCACHE_32K, GXTexRegionAddrTable[i + 24], GX_TEXCACHE_32K); + // GXInitTexCacheRegion(&gx->TexRegions2[i], GX_TRUE, GXTexRegionAddrTable[i + 32], + // GX_TEXCACHE_32K, GXTexRegionAddrTable[i + 40], GX_TEXCACHE_32K); + // } + + // for (i = 0; i < 16; i++) { + // GXInitTlutRegion(&gx->TlutRegions[i], 0xC0000 + 0x2000 * i, GX_TLUT_256); + // } + + // for (i = 0; i < 4; i++) { + // GXInitTlutRegion(&gx->TlutRegions[i + 16], 0xE0000 + 0x8000 * i, GX_TLUT_1K); + // } + + { + u32 reg = 0; +#if DEBUG + s32 regAddr; +#endif + GX_SET_CP_REG(3, reg); + + SET_REG_FIELD(0, gx->perfSel, 4, 4, 0); + GX_WRITE_U8(0x8); + GX_WRITE_U8(0x20); + GX_WRITE_U32(gx->perfSel); +#if DEBUG + regAddr = -12; +#endif + + reg = 0; + GX_WRITE_XF_REG(6, reg); + + reg = 0x23000000; + GX_WRITE_RAS_REG(reg); + + reg = 0x24000000; + GX_WRITE_RAS_REG(reg); + + reg = 0x67000000; + GX_WRITE_RAS_REG(reg); + } + + __GXSetIndirectMask(0); + __GXSetTmemConfig(2); + __GXInitGX(); + + return &FifoObj; +} + +void __GXInitGX() +{ + GXRenderModeObj *rmode; + GXAttr var_r30; + f32 identity_mtx[3][4]; + GXColor clear = { 64, 64, 64, 255 }; + GXColor black = { 0, 0, 0, 0 }; + GXColor white = { 255, 255, 255, 255 }; + u32 i; + + switch (VIGetTvFormat()) { + case 0: + rmode = &GXNtsc480IntDf; + break; + case 1: + rmode = &GXPal528IntDf; + break; + case 5: + rmode = &GXEurgb60Hz480IntDf; + break; + case 2: + rmode = &GXMpal480IntDf; + break; + default: + rmode = &GXNtsc480IntDf; + break; + } + + GXSetCopyClear(clear, 0xFFFFFF); + GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3CU); + GXSetTexCoordGen(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, 0x3CU); + GXSetTexCoordGen(GX_TEXCOORD2, GX_TG_MTX2x4, GX_TG_TEX2, 0x3CU); + GXSetTexCoordGen(GX_TEXCOORD3, GX_TG_MTX2x4, GX_TG_TEX3, 0x3CU); + GXSetTexCoordGen(GX_TEXCOORD4, GX_TG_MTX2x4, GX_TG_TEX4, 0x3CU); + GXSetTexCoordGen(GX_TEXCOORD5, GX_TG_MTX2x4, GX_TG_TEX5, 0x3CU); + GXSetTexCoordGen(GX_TEXCOORD6, GX_TG_MTX2x4, GX_TG_TEX6, 0x3CU); + GXSetTexCoordGen(GX_TEXCOORD7, GX_TG_MTX2x4, GX_TG_TEX7, 0x3CU); + GXSetNumTexGens(1); + GXClearVtxDesc(); + GXInvalidateVtxCache(); + for (var_r30 = GX_VA_POS; (u32)var_r30 <= 0x18; var_r30++) { + GXSetArray(var_r30, gx, 0); + } + GXSetLineWidth(6, 0); + GXSetPointSize(6, 0); + GXEnableTexOffsets(0, 0, 0); + GXEnableTexOffsets(1, 0, 0); + GXEnableTexOffsets(2, 0, 0); + GXEnableTexOffsets(3, 0, 0); + GXEnableTexOffsets(4, 0, 0); + GXEnableTexOffsets(5, 0, 0); + GXEnableTexOffsets(6, 0, 0); + GXEnableTexOffsets(7, 0, 0); + identity_mtx[0][0] = 1.0f; + identity_mtx[0][1] = 0.0f; + identity_mtx[0][2] = 0.0f; + identity_mtx[0][3] = 0.0f; + identity_mtx[1][0] = 0.0f; + identity_mtx[1][1] = 1.0f; + identity_mtx[1][2] = 0.0f; + identity_mtx[1][3] = 0.0f; + identity_mtx[2][0] = 0.0f; + identity_mtx[2][1] = 0.0f; + identity_mtx[2][2] = 1.0f; + identity_mtx[2][3] = 0.0f; + GXLoadPosMtxImm(identity_mtx, GX_PNMTX0); + GXLoadNrmMtxImm(identity_mtx, GX_PNMTX0); + GXSetCurrentMtx(GX_PNMTX0); + GXLoadTexMtxImm(identity_mtx, GX_IDENTITY, GX_MTX3x4); + GXLoadTexMtxImm(identity_mtx, GX_PTIDENTITY, GX_MTX3x4); + GXSetViewport(0.0f, 0.0f, rmode->fbWidth, rmode->xfbHeight, 0.0f, 1.0f); + GXSetCoPlanar(GX_DISABLE); + GXSetCullMode(GX_CULL_BACK); + GXSetClipMode(GX_CLIP_ENABLE); + GXSetScissor(0, 0, rmode->fbWidth, rmode->efbHeight); + GXSetScissorBoxOffset(0, 0); + GXSetNumChans(0); + GXSetChanCtrl(GX_COLOR0A0, GX_DISABLE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE); + GXSetChanAmbColor(GX_COLOR0A0, black); + GXSetChanMatColor(GX_COLOR0A0, white); + GXSetChanCtrl(GX_COLOR1A1, GX_DISABLE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE); + GXSetChanAmbColor(GX_COLOR1A1, black); + GXSetChanMatColor(GX_COLOR1A1, white); + GXInvalidateTexAll(); + gx->nextTexRgnCI = gx->nextTexRgn = i = GX_TEVSTAGE0; + GXSetTexRegionCallback((void *)__GXDefaultTexRegionCallback); + GXSetTlutRegionCallback(__GXDefaultTlutRegionCallback); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD2, GX_TEXMAP2, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE3, GX_TEXCOORD3, GX_TEXMAP3, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE4, GX_TEXCOORD4, GX_TEXMAP4, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE5, GX_TEXCOORD5, GX_TEXMAP5, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE6, GX_TEXCOORD6, GX_TEXMAP6, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE7, GX_TEXCOORD7, GX_TEXMAP7, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE8, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE9, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE10, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE11, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE12, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE13, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE14, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE15, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + + GXSetNumTevStages(1); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0); + GXSetZTexture(GX_ZT_DISABLE, GX_TF_Z8, 0); + for (; i < GX_MAX_TEVSTAGE; i++) { + GXSetTevKColorSel((GXTevStageID)i, GX_TEV_KCSEL_1_4); + GXSetTevKAlphaSel((GXTevStageID)i, GX_TEV_KASEL_1); + GXSetTevSwapMode((GXTevStageID)i, GX_TEV_SWAP0, GX_TEV_SWAP0); + } + GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP1, GX_CH_RED, GX_CH_RED, GX_CH_RED, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP2, GX_CH_GREEN, GX_CH_GREEN, GX_CH_GREEN, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP3, GX_CH_BLUE, GX_CH_BLUE, GX_CH_BLUE, GX_CH_ALPHA); + + for (i = GX_TEVSTAGE0; i < GX_MAX_TEVSTAGE; i++) + GXSetTevDirect((GXTevStageID)i); + GXSetNumIndStages(0); + GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE1, GX_ITS_1, GX_ITS_1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE2, GX_ITS_1, GX_ITS_1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE3, GX_ITS_1, GX_ITS_1); + + GXSetFog(GX_FOG_NONE, 0.0f, 1.0f, 0.1f, 1.0f, black); + GXSetFogRangeAdj(GX_DISABLE, 0, 0); + GXSetBlendMode(GX_BM_NONE, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_CLEAR); + GXSetColorUpdate(GX_ENABLE); + GXSetAlphaUpdate(GX_ENABLE); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + GXSetZCompLoc(GX_TRUE); + GXSetDither(GX_ENABLE); + GXSetDstAlpha(GX_DISABLE, 0); + GXSetPixelFmt(GX_PF_RGB8_Z24, GX_ZC_LINEAR); + GXSetFieldMask(GX_ENABLE, GX_ENABLE); + GXSetFieldMode(rmode->field_rendering, ((rmode->viHeight == 2 * rmode->xfbHeight) ? GX_ENABLE : GX_DISABLE)); + + GXSetDispCopySrc(0, 0, rmode->fbWidth, rmode->efbHeight); + GXSetDispCopyDst(rmode->fbWidth, rmode->efbHeight); + GXSetDispCopyYScale((f32)(rmode->xfbHeight) / (f32)(rmode->efbHeight)); + GXSetCopyClamp((GXFBClamp)(GX_CLAMP_TOP | GX_CLAMP_BOTTOM)); + GXSetCopyFilter(rmode->aa, rmode->sample_pattern, GX_TRUE, rmode->vfilter); + GXSetDispCopyGamma(GX_GM_1_0); + GXSetDispCopyFrame2Field(GX_COPY_PROGRESSIVE); + GXClearBoundingBox(); + + GXPokeColorUpdate(GX_TRUE); + GXPokeAlphaUpdate(GX_TRUE); + GXPokeDither(GX_FALSE); + GXPokeBlendMode(GX_BM_NONE, GX_BL_ZERO, GX_BL_ONE, GX_LO_SET); + GXPokeAlphaMode(GX_ALWAYS, 0); + GXPokeAlphaRead(GX_READ_FF); + GXPokeDstAlpha(GX_DISABLE, 0); + GXPokeZMode(GX_TRUE, GX_ALWAYS, GX_TRUE); + GXSetGPMetric(GX_PERF0_NONE, GX_PERF1_NONE); + GXClearGPMetric(); +} diff --git a/src/dolphin/gx/GXLight.c b/src/dolphin/gx/GXLight.c new file mode 100644 index 00000000..a084fd84 --- /dev/null +++ b/src/dolphin/gx/GXLight.c @@ -0,0 +1,620 @@ +#include +#include + +#include + +float cosf(float x); +inline float sqrtf(float x) +{ + static const double _half = .5; + static const double _three = 3.0; + volatile float y; + if (x > 0.0f) + { + double guess = __frsqrte((double)x); // returns an approximation to + guess = _half*guess*(_three - guess*guess*x); // now have 12 sig bits + guess = _half*guess*(_three - guess*guess*x); // now have 24 sig bits + guess = _half*guess*(_three - guess*guess*x); // now have 32 sig bits + y = (float)(x*guess); + return y ; + } + return x; +} + +// GXLightObj private data +struct __GXLightObjInt_struct { + u32 reserved[3]; + u32 Color; + f32 a[3]; + f32 k[3]; + f32 lpos[3]; + f32 ldir[3]; +}; + +void GXInitLightAttn(GXLightObj *lt_obj, f32 a0, f32 a1, f32 a2, f32 k0, f32 k1, f32 k2) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x62, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x63, "GXInitLightAttn"); + obj->a[0] = a0; + obj->a[1] = a1; + obj->a[2] = a2; + obj->k[0] = k0; + obj->k[1] = k1; + obj->k[2] = k2; +} + +void GXInitLightAttnA(GXLightObj *lt_obj, f32 a0, f32 a1, f32 a2) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x70, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x71, "GXInitLightAttnA"); + obj->a[0] = a0; + obj->a[1] = a1; + obj->a[2] = a2; +} + +void GXGetLightAttnA(GXLightObj *lt_obj, f32 *a0, f32 *a1, f32 *a2) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x7A, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x7B, "GXGetLightAttnA"); + *a0 = obj->a[0]; + *a1 = obj->a[1]; + *a2 = obj->a[2]; +} + +void GXInitLightAttnK(GXLightObj *lt_obj, f32 k0, f32 k1, f32 k2) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x84, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x85, "GXInitLightAttnK"); + obj->k[0] = k0; + obj->k[1] = k1; + obj->k[2] = k2; +} + +void GXGetLightAttnK(GXLightObj *lt_obj, f32 *k0, f32 *k1, f32 *k2) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x8E, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x8F, "GXGetLightAttnK"); + *k0 = obj->k[0]; + *k1 = obj->k[1]; + *k2 = obj->k[2]; +} + +void GXInitLightSpot(GXLightObj *lt_obj, f32 cutoff, GXSpotFn spot_func) +{ + float a0, a1, a2; + float d; + float cr; + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0xA7, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0xA9, "GXInitLightSpot"); + + if (cutoff <= 0.0f || cutoff > 90.0f) + spot_func = GX_SP_OFF; + + cr = cosf((3.1415927f * cutoff) / 180.0f); + switch (spot_func) { + case GX_SP_FLAT: + a0 = -1000.0f * cr; + a1 = 1000.0f; + a2 = 0.0f; + break; + case GX_SP_COS: + a0 = -cr / (1.0f - cr); + a1 = 1.0f / (1.0f - cr); + a2 = 0.0f; + break; + case GX_SP_COS2: + a0 = 0.0f; + a1 = -cr / (1.0f - cr); + a2 = 1.0f / (1.0f - cr); + break; + case GX_SP_SHARP: + d = (1.0f - cr) * (1.0f - cr); + a0 = (cr * (cr - 2.0f)) / d; + a1 = 2.0f / d; + a2 = -1.0f / d; + break; + case GX_SP_RING1: + d = (1.0f - cr) * (1.0f - cr); + a0 = (-4.0f * cr) / d; + a1 = (4.0f * (1.0f + cr)) / d; + a2 = -4.0f / d; + break; + case GX_SP_RING2: + d = (1.0f - cr) * (1.0f - cr); + a0 = 1.0f - ((2.0f * cr * cr) / d); + a1 = (4.0f * cr) / d; + a2 = -2.0f / d; + break; + case GX_SP_OFF: + default: + a0 = 1.0f; + a1 = 0.0f; + a2 = 0.0f; + break; + } + obj->a[0] = a0; + obj->a[1] = a1; + obj->a[2] = a2; +} + +void GXInitLightDistAttn(GXLightObj *lt_obj, f32 ref_dist, f32 ref_br, GXDistAttnFn dist_func) +{ + f32 k0, k1, k2; + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0xF2, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0xF4, "GXInitLightDistAttn"); + + if (ref_dist < 0.0f) + dist_func = GX_DA_OFF; + if (ref_br <= 0.0f || ref_br >= 1.0f) + dist_func = GX_DA_OFF; + + switch (dist_func) { + case GX_DA_GENTLE: + k0 = 1.0f; + k1 = (1.0f - ref_br) / (ref_br * ref_dist); + k2 = 0.0f; + break; + case GX_DA_MEDIUM: + k0 = 1.0f; + k1 = (0.5f * (1.0f - ref_br)) / (ref_br * ref_dist); + k2 = (0.5f * (1.0f - ref_br)) / (ref_br * ref_dist * ref_dist); + break; + case GX_DA_STEEP: + k0 = 1.0f; + k1 = 0.0f; + k2 = (1.0f - ref_br) / (ref_br * ref_dist * ref_dist); + break; + case GX_DA_OFF: + default: + k0 = 1.0f; + k1 = 0.0f; + k2 = 0.0f; + break; + } + + obj->k[0] = k0; + obj->k[1] = k1; + obj->k[2] = k2; +} + +void GXInitLightPos(GXLightObj *lt_obj, f32 x, f32 y, f32 z) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x129, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x12B, "GXInitLightPos"); + + obj->lpos[0] = x; + obj->lpos[1] = y; + obj->lpos[2] = z; +} + +void GXGetLightPos(const GXLightObj *lt_obj, f32 *x, f32 *y, f32 *z) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x134, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x136, "GXGetLightPos"); + + *x = obj->lpos[0]; + *y = obj->lpos[1]; + *z = obj->lpos[2]; +} + +void GXInitLightDir(GXLightObj *lt_obj, f32 nx, f32 ny, f32 nz) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x149, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + + obj->ldir[0] = -nx; + obj->ldir[1] = -ny; + obj->ldir[2] = -nz; +} + +void GXGetLightDir(GXLightObj *lt_obj, f32 *nx, f32 *ny, f32 *nz) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x155, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + + *nx = -obj->ldir[0]; + *ny = -obj->ldir[1]; + *nz = -obj->ldir[2]; +} + +void GXInitSpecularDir(GXLightObj *lt_obj, f32 nx, f32 ny, f32 nz) +{ + float mag; + float vx; + float vy; + float vz; + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x16F, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x170, "GXInitSpecularDir"); + + vx = -nx; + vy = -ny; + vz = -nz + 1.0f; + mag = 1.0f / sqrtf((vx * vx) + (vy * vy) + (vz * vz)); + obj->ldir[0] = vx * mag; + obj->ldir[1] = vy * mag; + obj->ldir[2] = vz * mag; + obj->lpos[0] = -nx * 1048576.0f; + obj->lpos[1] = -ny * 1048576.0f; + obj->lpos[2] = -nz * 1048576.0f; +} + +void GXInitSpecularDirHA(GXLightObj *lt_obj, f32 nx, f32 ny, f32 nz, f32 hx, f32 hy, f32 hz) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x18E, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x18F, "GXInitSpecularHA"); + + obj->ldir[0] = hx; + obj->ldir[1] = hy; + obj->ldir[2] = hz; + obj->lpos[0] = -nx * 1048576.0f; + obj->lpos[1] = -ny * 1048576.0f; + obj->lpos[2] = -nz * 1048576.0f; +} + +void GXInitLightColor(GXLightObj *lt_obj, GXColor color) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x1A8, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x1A9, "GXInitLightColor"); + + obj->Color = (color.r << 24) | (color.g << 16) | (color.b << 8) | color.a; +} + +void GXGetLightColor(const GXLightObj *lt_obj, GXColor *color) +{ + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x1B2, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x1B3, "GXGetLightColor"); + + color->r = (obj->Color >> 24) & 0xFF; + color->g = (obj->Color >> 16) & 0xFF; + color->b = (obj->Color >> 8) & 0xFF; + color->a = obj->Color & 0xFF; +} + +#if DEBUG +#define WRITE_SOME_LIGHT_REG1(val, addr) \ + do { \ + u32 xfData = val; \ + GX_WRITE_U32(val); \ + VERIF_MTXLIGHT(addr, xfData); \ + } while (0) + +#define WRITE_SOME_LIGHT_REG2(val, addr) \ + do { \ + f32 xfData = val; \ + GX_WRITE_F32(val); \ + VERIF_MTXLIGHT(addr, *(u32 *)&xfData); \ + } while (0) +#else +#define WRITE_SOME_LIGHT_REG1(val, addr) GX_WRITE_U32(val) +#define WRITE_SOME_LIGHT_REG2(val, addr) GX_WRITE_F32(val) +#endif + +void GXLoadLightObjImm(GXLightObj *lt_obj, GXLightID light) +{ + unsigned long addr; + unsigned long idx; + struct __GXLightObjInt_struct *obj; + + ASSERTMSGLINE(0x1C9, lt_obj != NULL, "Light Object Pointer is null"); + obj = (struct __GXLightObjInt_struct *)lt_obj; + CHECK_GXBEGIN(0x1CA, "GXLoadLightObjImm"); + + switch (light) { + case GX_LIGHT0: + idx = 0; + break; + case GX_LIGHT1: + idx = 1; + break; + case GX_LIGHT2: + idx = 2; + break; + case GX_LIGHT3: + idx = 3; + break; + case GX_LIGHT4: + idx = 4; + break; + case GX_LIGHT5: + idx = 5; + break; + case GX_LIGHT6: + idx = 6; + break; + case GX_LIGHT7: + idx = 7; + break; + default: + idx = 0; + ASSERTMSGLINE(0x1DA, 0, "GXLoadLightStateImm: Invalid Light Id"); + break; + } + + addr = idx * 0x10 + 0x600; + GX_WRITE_U8(0x10); + GX_WRITE_U32(addr | 0xF0000); + + WRITE_SOME_LIGHT_REG1(0, addr); + WRITE_SOME_LIGHT_REG1(0, addr + 1); + WRITE_SOME_LIGHT_REG1(0, addr + 2); + WRITE_SOME_LIGHT_REG1(obj->Color, addr + 3); + WRITE_SOME_LIGHT_REG2(obj->a[0], addr + 4); + WRITE_SOME_LIGHT_REG2(obj->a[1], addr + 5); + WRITE_SOME_LIGHT_REG2(obj->a[2], addr + 6); + WRITE_SOME_LIGHT_REG2(obj->k[0], addr + 7); + WRITE_SOME_LIGHT_REG2(obj->k[1], addr + 8); + WRITE_SOME_LIGHT_REG2(obj->k[2], addr + 9); + WRITE_SOME_LIGHT_REG2(obj->lpos[0], addr + 10); + WRITE_SOME_LIGHT_REG2(obj->lpos[1], addr + 11); + WRITE_SOME_LIGHT_REG2(obj->lpos[2], addr + 12); + WRITE_SOME_LIGHT_REG2(obj->ldir[0], addr + 13); + WRITE_SOME_LIGHT_REG2(obj->ldir[1], addr + 14); + WRITE_SOME_LIGHT_REG2(obj->ldir[2], addr + 15); + + gx->bpSentNot = 1; +} + +void GXLoadLightObjIndx(u32 lt_obj_indx, GXLightID light) +{ + unsigned long reg; + unsigned long addr; + unsigned long idx; + + CHECK_GXBEGIN(0x209, "GXLoadLightObjIndx"); + + switch (light) { + case GX_LIGHT0: + idx = 0; + break; + case GX_LIGHT1: + idx = 1; + break; + case GX_LIGHT2: + idx = 2; + break; + case GX_LIGHT3: + idx = 3; + break; + case GX_LIGHT4: + idx = 4; + break; + case GX_LIGHT5: + idx = 5; + break; + case GX_LIGHT6: + idx = 6; + break; + case GX_LIGHT7: + idx = 7; + break; + default: + idx = 0; + ASSERTMSGLINE(0x216, 0, "GXLoadLightObjIndx: Invalid Light Id"); + break; + } + + addr = idx * 0x10 + 0x600; + reg = 0; + SET_REG_FIELD(0x21C, reg, 12, 0, addr); + SET_REG_FIELD(0x21D, reg, 4, 12, 0xF); + SET_REG_FIELD(0x21E, reg, 16, 16, lt_obj_indx); + GX_WRITE_U8(0x38); + GX_WRITE_U32(reg); +#if DEBUG + __GXShadowIndexState(7, reg); +#endif + gx->bpSentNot = 1; +} + +void GXSetChanAmbColor(GXChannelID chan, GXColor amb_color) +{ + u32 reg = 0; + u32 colIdx; + u32 alpha; + + CHECK_GXBEGIN(0x239, "GXSetChanAmbColor"); + + switch (chan) { + case GX_COLOR0: + alpha = gx->ambColor[0] & 0xFF; + SET_REG_FIELD(0x23E, reg, 8, 0, alpha); + SET_REG_FIELD(0x23F, reg, 8, 8, amb_color.b); + SET_REG_FIELD(0x240, reg, 8, 16, amb_color.g); + SET_REG_FIELD(0x241, reg, 8, 24, amb_color.r); + colIdx = 0; + break; + case GX_COLOR1: + alpha = gx->ambColor[1] & 0xFF; + SET_REG_FIELD(0x247, reg, 8, 0, alpha); + SET_REG_FIELD(0x248, reg, 8, 8, amb_color.b); + SET_REG_FIELD(0x249, reg, 8, 16, amb_color.g); + SET_REG_FIELD(0x24A, reg, 8, 24, amb_color.r); + colIdx = 1; + break; + case GX_ALPHA0: + reg = gx->ambColor[0]; + SET_REG_FIELD(0x250, reg, 8, 0, amb_color.a); + colIdx = 0; + break; + case GX_ALPHA1: + reg = gx->ambColor[1]; + SET_REG_FIELD(0x256, reg, 8, 0, amb_color.a); + colIdx = 1; + break; + case GX_COLOR0A0: + SET_REG_FIELD(0x25B, reg, 8, 0, amb_color.a); + SET_REG_FIELD(0x25C, reg, 8, 8, amb_color.b); + SET_REG_FIELD(0x25D, reg, 8, 16, amb_color.g); + SET_REG_FIELD(0x25E, reg, 8, 24, amb_color.r); + colIdx = 0; + break; + case GX_COLOR1A1: + SET_REG_FIELD(0x263, reg, 8, 0, amb_color.a); + SET_REG_FIELD(0x264, reg, 8, 8, amb_color.b); + SET_REG_FIELD(0x265, reg, 8, 16, amb_color.g); + SET_REG_FIELD(0x266, reg, 8, 24, amb_color.r); + colIdx = 1; + break; + default: + ASSERTMSGLINE(0x26B, 0, "GXSetChanAmbColor: Invalid Channel Id"); + return; + } + + GX_WRITE_XF_REG(colIdx + 10, reg); + gx->bpSentNot = 1; + gx->ambColor[colIdx] = reg; +} + +void GXSetChanMatColor(GXChannelID chan, GXColor mat_color) +{ + u32 reg = 0; + u32 alpha; + u32 colIdx; + + CHECK_GXBEGIN(0x28A, "GXSetChanMatColor"); + + switch (chan) { + case GX_COLOR0: + alpha = gx->matColor[0] & 0xFF; + SET_REG_FIELD(0x28F, reg, 8, 0, alpha); + SET_REG_FIELD(0x290, reg, 8, 8, mat_color.b); + SET_REG_FIELD(0x291, reg, 8, 16, mat_color.g); + SET_REG_FIELD(0x292, reg, 8, 24, mat_color.r); + colIdx = 0; + break; + case GX_COLOR1: + alpha = gx->matColor[1] & 0xFF; + SET_REG_FIELD(0x298, reg, 8, 0, alpha); + SET_REG_FIELD(0x299, reg, 8, 8, mat_color.b); + SET_REG_FIELD(0x29A, reg, 8, 16, mat_color.g); + SET_REG_FIELD(0x29B, reg, 8, 24, mat_color.r); + colIdx = 1; + break; + case GX_ALPHA0: + reg = gx->matColor[0]; + SET_REG_FIELD(0x2A1, reg, 8, 0, mat_color.a); + colIdx = 0; + break; + case GX_ALPHA1: + reg = gx->matColor[1]; + SET_REG_FIELD(0x2A7, reg, 8, 0, mat_color.a); + colIdx = 1; + break; + case GX_COLOR0A0: + SET_REG_FIELD(0x2AC, reg, 8, 0, mat_color.a); + SET_REG_FIELD(0x2AD, reg, 8, 8, mat_color.b); + SET_REG_FIELD(0x2AE, reg, 8, 16, mat_color.g); + SET_REG_FIELD(0x2AF, reg, 8, 24, mat_color.r); + colIdx = 0; + break; + case GX_COLOR1A1: + SET_REG_FIELD(0x2B4, reg, 8, 0, mat_color.a); + SET_REG_FIELD(0x2B5, reg, 8, 8, mat_color.b); + SET_REG_FIELD(0x2B6, reg, 8, 16, mat_color.g); + SET_REG_FIELD(0x2B7, reg, 8, 24, mat_color.r); + colIdx = 1; + break; + default: + ASSERTMSGLINE(0x2BC, 0, "GXSetChanMatColor: Invalid Channel Id"); + return; + } + + GX_WRITE_XF_REG(colIdx + 12, reg); + gx->bpSentNot = 1; + gx->matColor[colIdx] = reg; +} + +void GXSetNumChans(u8 nChans) +{ + CHECK_GXBEGIN(0x2D5, "GXSetNumChans"); + ASSERTMSGLINE(0x2D6, nChans <= 2, "GXSetNumChans: nChans > 2"); + + SET_REG_FIELD(0x2D8, gx->genMode, 3, 4, nChans); + GX_WRITE_XF_REG(9, nChans); + gx->dirtyState |= 4; +} + +void GXSetChanCtrl(GXChannelID chan, GXBool enable, GXColorSrc amb_src, GXColorSrc mat_src, u32 light_mask, GXDiffuseFn diff_fn, GXAttnFn attn_fn) +{ + u32 reg; // r31 + u32 idx; // r26 + + CHECK_GXBEGIN(0x2F8, "GXSetChanCtrl"); + + ASSERTMSGLINE(0x2FB, chan >= 0 && chan <= 5, "GXSetChanCtrl: Invalid Channel Id"); + + if (chan == 4) + idx = 0; + else if (chan == 5) + idx = 1; + else + idx = chan; + + reg = 0; + SET_REG_FIELD(0x302, reg, 1, 1, enable); + SET_REG_FIELD(0x303, reg, 1, 0, mat_src); + SET_REG_FIELD(0x304, reg, 1, 6, amb_src); + SET_REG_FIELD(0x305, reg, 1, 2, (light_mask & GX_LIGHT0) != 0); + SET_REG_FIELD(0x306, reg, 1, 3, (light_mask & GX_LIGHT1) != 0); + SET_REG_FIELD(0x307, reg, 1, 4, (light_mask & GX_LIGHT2) != 0); + SET_REG_FIELD(0x308, reg, 1, 5, (light_mask & GX_LIGHT3) != 0); + SET_REG_FIELD(0x309, reg, 1, 11, (light_mask & GX_LIGHT4) != 0); + SET_REG_FIELD(0x30A, reg, 1, 12, (light_mask & GX_LIGHT5) != 0); + SET_REG_FIELD(0x30B, reg, 1, 13, (light_mask & GX_LIGHT6) != 0); + SET_REG_FIELD(0x30C, reg, 1, 14, (light_mask & GX_LIGHT7) != 0); + SET_REG_FIELD(0x30E, reg, 2, 7, (attn_fn == 0) ? 0 : diff_fn); + SET_REG_FIELD(0x30F, reg, 1, 9, (attn_fn != 2)); + SET_REG_FIELD(0x310, reg, 1, 10, (attn_fn != 0)); + + GX_WRITE_XF_REG(idx + 14, reg); + gx->bpSentNot = 1; + if (chan == GX_COLOR0A0) { + GX_WRITE_XF_REG(16, reg); + } + else if (chan == GX_COLOR1A1) { + GX_WRITE_XF_REG(17, reg); + } +} diff --git a/src/dolphin/gx/GXMisc.c b/src/dolphin/gx/GXMisc.c new file mode 100644 index 00000000..1b7bea94 --- /dev/null +++ b/src/dolphin/gx/GXMisc.c @@ -0,0 +1,485 @@ +#include +#include +#include +#include + + +#include + +static GXDrawSyncCallback TokenCB; +static GXDrawDoneCallback DrawDoneCB; +static u8 DrawDone; +static OSThreadQueue FinishQueue; + +void GXSetMisc(GXMiscToken token, u32 val) +{ + switch (token) { + case GX_MT_XF_FLUSH: + gx->vNum = val; + gx->vNumNot = !gx->vNum; + gx->bpSentNot = 1; + if (gx->vNum != 0) { + gx->dirtyState |= 8; + } + break; + case GX_MT_DL_SAVE_CONTEXT: + ASSERTMSGLINE(0xC4, !gx->inDispList, "GXSetMisc: Cannot change DL context setting while making a display list"); + gx->dlSaveContext = (val > 0); + break; + case GX_MT_NULL: + break; + default: + break; + } +} + +void GXFlush(void) +{ + CHECK_GXBEGIN(0x10E, "GXFlush"); + if (gx->dirtyState) { + __GXSetDirtyState(); + } + + GX_WRITE_U32(0); + GX_WRITE_U32(0); + GX_WRITE_U32(0); + GX_WRITE_U32(0); + GX_WRITE_U32(0); + GX_WRITE_U32(0); + GX_WRITE_U32(0); + GX_WRITE_U32(0); + + PPCSync(); +} + +void GXResetWriteGatherPipe(void) +{ + while (PPCMfwpar() & 1) { } + PPCMtwpar(OSUncachedToPhysical((void *)GXFIFO_ADDR)); +} + +static inline void __GXAbortWait(u32 clocks) +{ + OSTime time0; + OSTime time1; + + time0 = OSGetTime(); + do { + time1 = OSGetTime(); + } while (time1 - time0 <= (clocks / 4)); +} + +void __GXAbortWaitPECopyDone(void) +{ + __piReg[6] = 1; + __GXAbortWait(0xC8U); + __piReg[6] = 0; + __GXAbortWait(0x14U); + __GXCleanGPFifo(); +} + +void GXSetDrawSync(u16 token) +{ + BOOL enabled; + u32 reg; + + CHECK_GXBEGIN(0x162, "GXSetDrawSync"); + + enabled = OSDisableInterrupts(); + reg = token | 0x48000000; + GX_WRITE_RAS_REG(reg); + SET_REG_FIELD(0x16F, reg, 16, 0, token); + SET_REG_FIELD(0x170, reg, 8, 24, 0x47); + GX_WRITE_RAS_REG(reg); + GXFlush(); + OSRestoreInterrupts(enabled); + gx->bpSentNot = 0; +} + +u16 GXReadDrawSync(void) +{ + u16 token = __peReg[7]; + return token; +} + +void GXSetDrawDone(void) +{ + u32 reg; + BOOL enabled; + + CHECK_GXBEGIN(0x19C, "GXSetDrawDone"); + enabled = OSDisableInterrupts(); + reg = 0x45000002; + GX_WRITE_RAS_REG(reg); + GXFlush(); + DrawDone = 0; + OSRestoreInterrupts(enabled); +} + +void GXWaitDrawDone(void) +{ + BOOL enabled; + + CHECK_GXBEGIN(0x1CA, "GXWaitDrawDone"); + + enabled = OSDisableInterrupts(); + while (!DrawDone) { + OSSleepThread(&FinishQueue); + } + OSRestoreInterrupts(enabled); +} + +void GXDrawDone(void) +{ + CHECK_GXBEGIN(0x1EA, "GXDrawDone"); + GXSetDrawDone(); + GXWaitDrawDone(); +} + +void GXPixModeSync(void) +{ + CHECK_GXBEGIN(0x20D, "GXPixModeSync"); + GX_WRITE_RAS_REG(gx->peCtrl); + gx->bpSentNot = 0; +} + +void GXTexModeSync(void) +{ + u32 reg; + + CHECK_GXBEGIN(0x225, "GXTexModeSync"); + reg = 0x63000000; + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; +} + +void GXPokeAlphaMode(GXCompare func, u8 threshold) +{ + u32 reg; + + CHECK_GXBEGIN(0x25F, "GXPokeAlphaMode"); + reg = (func << 8) | threshold; + __peReg[3] = reg; +} + +void GXPokeAlphaRead(GXAlphaReadMode mode) +{ + u32 reg; + + CHECK_GXBEGIN(0x26A, "GXPokeAlphaRead"); + reg = 0; + SET_REG_FIELD(0x26D, reg, 2, 0, mode); + SET_REG_FIELD(0x26E, reg, 1, 2, 1); + __peReg[4] = reg; +} + +void GXPokeAlphaUpdate(GXBool update_enable) +{ + u32 reg; + + CHECK_GXBEGIN(0x277, "GXPokeAlphaUpdate"); + reg = __peReg[1]; + SET_REG_FIELD(0x27A, reg, 1, 4, update_enable); + __peReg[1] = reg; +} + +void GXPokeBlendMode(GXBlendMode type, GXBlendFactor src_factor, GXBlendFactor dst_factor, GXLogicOp op) +{ + u32 reg; + + CHECK_GXBEGIN(0x284, "GXPokeBlendUpdate"); + reg = __peReg[1]; + SET_REG_FIELD(0x28C, reg, 1, 0, (type == GX_BM_BLEND) || (type == GX_BM_SUBTRACT)); + SET_REG_FIELD(0x28D, reg, 1, 11, (type == GX_BM_SUBTRACT)); + SET_REG_FIELD(0x28F, reg, 1, 1, (type == GX_BM_LOGIC)); + SET_REG_FIELD(0x290, reg, 4, 12, op); + SET_REG_FIELD(0x291, reg, 3, 8, src_factor); + SET_REG_FIELD(0x292, reg, 3, 5, dst_factor); + SET_REG_FIELD(0x293, reg, 8, 24, 0x41); + __peReg[1] = reg; +} + +void GXPokeColorUpdate(GXBool update_enable) +{ + u32 reg; + + CHECK_GXBEGIN(0x29D, "GXPokeColorUpdate"); + reg = __peReg[1]; + SET_REG_FIELD(0x2A0, reg, 1, 3, update_enable); + __peReg[1] = reg; +} + +void GXPokeDstAlpha(GXBool enable, u8 alpha) +{ + u32 reg = 0; + + CHECK_GXBEGIN(0x2A9, "GXPokeDstAlpha"); + SET_REG_FIELD(0x2AB, reg, 8, 0, alpha); + SET_REG_FIELD(0x2AC, reg, 1, 8, enable); + __peReg[2] = reg; +} + +void GXPokeDither(GXBool dither) +{ + u32 reg; + + CHECK_GXBEGIN(0x2B5, "GXPokeDither"); + reg = __peReg[1]; + SET_REG_FIELD(0x2B8, reg, 1, 2, dither); + __peReg[1] = reg; +} + +void GXPokeZMode(GXBool compare_enable, GXCompare func, GXBool update_enable) +{ + u32 reg = 0; + + CHECK_GXBEGIN(0x2C1, "GXPokeZMode"); + + SET_REG_FIELD(0x2C3, reg, 1, 0, compare_enable); + SET_REG_FIELD(0x2C4, reg, 3, 1, func); + SET_REG_FIELD(0x2C5, reg, 1, 4, update_enable); + __peReg[0] = reg; +} + +void GXPeekARGB(u16 x, u16 y, u32 *color) +{ + u32 addr = (u32)OSPhysicalToUncached(0x08000000); + + SET_REG_FIELD(0x2DC, addr, 10, 2, x); + SET_REG_FIELD(0x2DD, addr, 10, 12, y); + SET_REG_FIELD(0x2DE, addr, 2, 22, 0); + *color = *(u32 *)addr; +} + +void GXPokeARGB(u16 x, u16 y, u32 color) +{ + u32 addr = (u32)OSPhysicalToUncached(0x08000000); + + SET_REG_FIELD(0x2E6, addr, 10, 2, x); + SET_REG_FIELD(0x2E7, addr, 10, 12, y); + SET_REG_FIELD(0x2E8, addr, 2, 22, 0); + *(u32 *)addr = color; +} + +void GXPeekZ(u16 x, u16 y, u32 *z) +{ + u32 addr = (u32)OSPhysicalToUncached(0x08000000); + + SET_REG_FIELD(0x2F0, addr, 10, 2, x); + SET_REG_FIELD(0x2F1, addr, 10, 12, y); + SET_REG_FIELD(0x2F2, addr, 2, 22, 1); + *z = *(u32 *)addr; +} + +void GXPokeZ(u16 x, u16 y, u32 z) +{ + u32 addr = (u32)OSPhysicalToUncached(0x08000000); + + SET_REG_FIELD(0x2FA, addr, 10, 2, x); + SET_REG_FIELD(0x2FB, addr, 10, 12, y); + SET_REG_FIELD(0x2FC, addr, 2, 22, 1); + *(u32 *)addr = z; +} + +GXDrawSyncCallback GXSetDrawSyncCallback(GXDrawSyncCallback cb) +{ + GXDrawSyncCallback oldcb; + BOOL enabled; + + oldcb = TokenCB; + enabled = OSDisableInterrupts(); + TokenCB = cb; + OSRestoreInterrupts(enabled); + return oldcb; +} + +static void GXTokenInterruptHandler(__OSInterrupt interrupt, OSContext *context) +{ + u16 token; + OSContext exceptionContext; + u32 reg; + + token = __peReg[7]; + if (TokenCB != NULL) { + OSClearContext(&exceptionContext); + OSSetCurrentContext(&exceptionContext); + TokenCB(token); + OSClearContext(&exceptionContext); + OSSetCurrentContext(context); + } + reg = __peReg[5]; + SET_REG_FIELD(0, reg, 1, 2, 1); + __peReg[5] = reg; +} + +GXDrawDoneCallback GXSetDrawDoneCallback(GXDrawDoneCallback cb) +{ + GXDrawDoneCallback oldcb; + BOOL enabled; + + oldcb = DrawDoneCB; + enabled = OSDisableInterrupts(); + DrawDoneCB = cb; + OSRestoreInterrupts(enabled); + return oldcb; +} + +static void GXFinishInterruptHandler(__OSInterrupt interrupt, OSContext *context) +{ + OSContext exceptionContext; + u32 reg; + + reg = __peReg[5]; + SET_REG_FIELD(0, reg, 1, 3, 1); + __peReg[5] = reg; + DrawDone = 1; + if (DrawDoneCB != NULL) { + OSClearContext(&exceptionContext); + OSSetCurrentContext(&exceptionContext); + DrawDoneCB(); + OSClearContext(&exceptionContext); + OSSetCurrentContext(context); + } + OSWakeupThread(&FinishQueue); +} + +void __GXPEInit(void) +{ + u32 reg; + __OSSetInterruptHandler(0x12, GXTokenInterruptHandler); + __OSSetInterruptHandler(0x13, GXFinishInterruptHandler); + OSInitThreadQueue(&FinishQueue); + __OSUnmaskInterrupts(0x2000); + __OSUnmaskInterrupts(0x1000); + reg = __peReg[5]; + SET_REG_FIELD(0, reg, 1, 2, 1); + SET_REG_FIELD(0, reg, 1, 3, 1); + SET_REG_FIELD(0, reg, 1, 0, 1); + SET_REG_FIELD(0, reg, 1, 1, 1); + __peReg[5] = reg; +} + +u32 GXCompressZ16(u32 z24, GXZFmt16 zfmt) +{ + u32 z16; + u32 z24n; + s32 exp; + s32 shift; + s32 temp; + u8 unused[4]; + + z24n = ~(z24 << 8); + temp = __cntlzw(z24n); + switch (zfmt) { + case GX_ZC_LINEAR: + z16 = (z24 >> 8) & 0xFFFF; + break; + case GX_ZC_NEAR: + if (temp > 3) { + exp = 3; + } + else { + exp = temp; + } + if (exp == 3) { + shift = 7; + } + else { + shift = 9 - exp; + } + z16 = ((z24 >> shift) & 0x3FFF & ~0xFFFFC000) | (exp << 14); + break; + case GX_ZC_MID: + if (temp > 7) { + exp = 7; + } + else { + exp = temp; + } + if (exp == 7) { + shift = 4; + } + else { + shift = 10 - exp; + } + z16 = ((z24 >> shift) & 0x1FFF & ~0xFFFFE000) | (exp << 13); + break; + case GX_ZC_FAR: + if (temp > 12) { + exp = 12; + } + else { + exp = temp; + } + if (exp == 12) { + shift = 0; + } + else { + shift = 11 - exp; + } + z16 = ((z24 >> shift) & 0xFFF & ~0xFFFFF000) | (exp << 12); + break; + default: + OSPanic(__FILE__, 0x3B0, "GXCompressZ16: Invalid Z format\n"); + break; + } + return z16; +} + +u32 GXDecompressZ16(u32 z16, GXZFmt16 zfmt) +{ + u32 z24; + u32 cb1; + long exp; + long shift; + + cb1; + cb1; + cb1; + z16; + z16; + z16; // needed to match + + switch (zfmt) { + case GX_ZC_LINEAR: + z24 = (z16 << 8) & 0xFFFF00; + break; + case GX_ZC_NEAR: + exp = (z16 >> 14) & 3; + if (exp == 3) { + shift = 7; + } + else { + shift = 9 - exp; + } + cb1 = -1 << (24 - exp); + z24 = (cb1 | ((z16 & 0x3FFF) << shift)) & 0xFFFFFF; + break; + case GX_ZC_MID: + exp = (z16 >> 13) & 7; + if (exp == 7) { + shift = 4; + } + else { + shift = 10 - exp; + } + cb1 = -1 << (24 - exp); + z24 = (cb1 | ((z16 & 0x1FFF) << shift)) & 0xFFFFFF; + break; + case GX_ZC_FAR: + exp = (z16 >> 12) & 0xF; + if (exp == 12) { + shift = 0; + } + else { + shift = 11 - exp; + } + cb1 = -1 << (24 - exp); + z24 = (cb1 | ((z16 & 0xFFF) << shift)) & 0xFFFFFF; + break; + default: + OSPanic(__FILE__, 0x3E2, "GXDecompressZ16: Invalid Z format\n"); + break; + } + return z24; +} diff --git a/src/dolphin/gx/GXPerf.c b/src/dolphin/gx/GXPerf.c new file mode 100644 index 00000000..34b4d0ae --- /dev/null +++ b/src/dolphin/gx/GXPerf.c @@ -0,0 +1,577 @@ +#include +#include + +#include + +void GXSetGPMetric(GXPerf0 perf0, GXPerf1 perf1) +{ + u32 reg; + + CHECK_GXBEGIN(0x6A, "GXSetGPMetric"); + + switch (gx->perf0) { + case GX_PERF0_VERTICES: + case GX_PERF0_CLIP_VTX: + case GX_PERF0_CLIP_CLKS: + case GX_PERF0_XF_WAIT_IN: + case GX_PERF0_XF_WAIT_OUT: + case GX_PERF0_XF_XFRM_CLKS: + case GX_PERF0_XF_LIT_CLKS: + case GX_PERF0_XF_BOT_CLKS: + case GX_PERF0_XF_REGLD_CLKS: + case GX_PERF0_XF_REGRD_CLKS: + case GX_PERF0_CLIP_RATIO: + case GX_PERF0_CLOCKS: + reg = 0; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_TRIANGLES: + case GX_PERF0_TRIANGLES_CULLED: + case GX_PERF0_TRIANGLES_PASSED: + case GX_PERF0_TRIANGLES_SCISSORED: + case GX_PERF0_TRIANGLES_0TEX: + case GX_PERF0_TRIANGLES_1TEX: + case GX_PERF0_TRIANGLES_2TEX: + case GX_PERF0_TRIANGLES_3TEX: + case GX_PERF0_TRIANGLES_4TEX: + case GX_PERF0_TRIANGLES_5TEX: + case GX_PERF0_TRIANGLES_6TEX: + case GX_PERF0_TRIANGLES_7TEX: + case GX_PERF0_TRIANGLES_8TEX: + case GX_PERF0_TRIANGLES_0CLR: + case GX_PERF0_TRIANGLES_1CLR: + case GX_PERF0_TRIANGLES_2CLR: + reg = 0x23000000; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_QUAD_0CVG: + case GX_PERF0_QUAD_NON0CVG: + case GX_PERF0_QUAD_1CVG: + case GX_PERF0_QUAD_2CVG: + case GX_PERF0_QUAD_3CVG: + case GX_PERF0_QUAD_4CVG: + case GX_PERF0_AVG_QUAD_CNT: + reg = 0x24000000; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_NONE: + break; + default: + ASSERTMSGLINE(0xA6, 0, "GXSetGPMetric: Invalid GXPerf0 metric name"); + break; + } + + switch (gx->perf1) { + case GX_PERF1_TEXELS: + case GX_PERF1_TX_IDLE: + case GX_PERF1_TX_REGS: + case GX_PERF1_TX_MEMSTALL: + case GX_PERF1_TC_CHECK1_2: + case GX_PERF1_TC_CHECK3_4: + case GX_PERF1_TC_CHECK5_6: + case GX_PERF1_TC_CHECK7_8: + case GX_PERF1_TC_MISS: + case GX_PERF1_CLOCKS: + reg = 0x67000000; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_VC_ELEMQ_FULL: + case GX_PERF1_VC_MISSQ_FULL: + case GX_PERF1_VC_MEMREQ_FULL: + case GX_PERF1_VC_STATUS7: + case GX_PERF1_VC_MISSREP_FULL: + case GX_PERF1_VC_STREAMBUF_LOW: + case GX_PERF1_VC_ALL_STALLS: + case GX_PERF1_VERTICES: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 0); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_FIFO_REQ: + case GX_PERF1_CALL_REQ: + case GX_PERF1_VC_MISS_REQ: + case GX_PERF1_CP_ALL_REQ: + reg = 0; + GX_SET_CP_REG(3, reg); + break; + case GX_PERF1_NONE: + break; + default: + ASSERTMSGLINE(0xD8, 0, "GXSetGPMetric: Invalid GXPerf1 metric name"); + break; + } + + gx->perf0 = perf0; + switch (gx->perf0) { + case GX_PERF0_VERTICES: + reg = 0x273; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_CLIP_VTX: + reg = 0x14A; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_CLIP_CLKS: + reg = 0x16B; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_XF_WAIT_IN: + reg = 0x84; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_XF_WAIT_OUT: + reg = 0xC6; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_XF_XFRM_CLKS: + reg = 0x210; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_XF_LIT_CLKS: + reg = 0x252; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_XF_BOT_CLKS: + reg = 0x231; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_XF_REGLD_CLKS: + reg = 0x1AD; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_XF_REGRD_CLKS: + reg = 0x1CE; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_CLOCKS: + reg = 0x21; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_CLIP_RATIO: + reg = 0x153; + GX_WRITE_XF_REG(6, reg); + break; + case GX_PERF0_TRIANGLES: + reg = 0x2300AE7F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_CULLED: + reg = 0x23008E7F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_PASSED: + reg = 0x23009E7F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_SCISSORED: + reg = 0x23001E7F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_0TEX: + reg = 0x2300AC3F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_1TEX: + reg = 0x2300AC7F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_2TEX: + reg = 0x2300ACBF; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_3TEX: + reg = 0x2300ACFF; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_4TEX: + reg = 0x2300AD3F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_5TEX: + reg = 0x2300AD7F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_6TEX: + reg = 0x2300ADBF; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_7TEX: + reg = 0x2300ADFF; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_8TEX: + reg = 0x2300AE3F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_0CLR: + reg = 0x2300A27F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_1CLR: + reg = 0x2300A67F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_TRIANGLES_2CLR: + reg = 0x2300AA7F; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_QUAD_0CVG: + reg = 0x2402C0C6; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_QUAD_NON0CVG: + reg = 0x2402C16B; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_QUAD_1CVG: + reg = 0x2402C0E7; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_QUAD_2CVG: + reg = 0x2402C108; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_QUAD_3CVG: + reg = 0x2402C129; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_QUAD_4CVG: + reg = 0x2402C14A; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_AVG_QUAD_CNT: + reg = 0x2402C1AD; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF0_NONE: + break; + default: + ASSERTMSGLINE(0x1DA, 0, "GXSetGPMetric: Invalid GXPerf0 metric name"); + break; + } + + gx->perf1 = perf1; + switch (gx->perf1) { + case GX_PERF1_TEXELS: + reg = 0x67000042; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TX_IDLE: + reg = 0x67000084; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TX_REGS: + reg = 0x67000063; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TX_MEMSTALL: + reg = 0x67000129; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TC_MISS: + reg = 0x67000252; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_CLOCKS: + reg = 0x67000021; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TC_CHECK1_2: + reg = 0x6700014B; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TC_CHECK3_4: + reg = 0x6700018D; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TC_CHECK5_6: + reg = 0x670001CF; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_TC_CHECK7_8: + reg = 0x67000211; + GX_WRITE_RAS_REG(reg); + break; + case GX_PERF1_VC_ELEMQ_FULL: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 2); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_VC_MISSQ_FULL: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 3); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_VC_MEMREQ_FULL: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 4); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_VC_STATUS7: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 5); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_VC_MISSREP_FULL: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 6); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_VC_STREAMBUF_LOW: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 7); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_VC_ALL_STALLS: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 9); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_VERTICES: + SET_REG_FIELD(0, gx->perfSel, 4, 4, 8); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + break; + case GX_PERF1_FIFO_REQ: + reg = 2; + GX_SET_CP_REG(3, reg); + break; + case GX_PERF1_CALL_REQ: + reg = 3; + GX_SET_CP_REG(3, reg); + break; + case GX_PERF1_VC_MISS_REQ: + reg = 4; + GX_SET_CP_REG(3, reg); + break; + case GX_PERF1_CP_ALL_REQ: + reg = 5; + GX_SET_CP_REG(3, reg); + break; + case GX_PERF1_NONE: + break; + default: + ASSERTMSGLINE(0x26B, 0, "GXSetGPMetric: Invalid GXPerf1 metric name"); + break; + } + + gx->bpSentNot = 0; +} + +#pragma scheduling off +void GXReadGPMetric(u32 *cnt0, u32 *cnt1) +{ + u32 cpCtr0, cpCtr1, cpCtr2, cpCtr3; + + ASSERTMSGLINE(0x286, !gx->inDispList, "GXReadGPMetric: don't use in a display list"); + + cpCtr0 = __GXReadCPCounterU32(32, 33); + cpCtr1 = __GXReadCPCounterU32(34, 35); + cpCtr2 = __GXReadCPCounterU32(36, 37); + cpCtr3 = __GXReadCPCounterU32(38, 39); + + switch (gx->perf0) { + case GX_PERF0_CLIP_RATIO: + *cnt0 = cpCtr1 * 0x3E8 / cpCtr0; + break; + case GX_PERF0_VERTICES: + case GX_PERF0_CLIP_VTX: + case GX_PERF0_CLIP_CLKS: + case GX_PERF0_XF_WAIT_IN: + case GX_PERF0_XF_WAIT_OUT: + case GX_PERF0_XF_XFRM_CLKS: + case GX_PERF0_XF_LIT_CLKS: + case GX_PERF0_XF_BOT_CLKS: + case GX_PERF0_XF_REGLD_CLKS: + case GX_PERF0_XF_REGRD_CLKS: + case GX_PERF0_TRIANGLES: + case GX_PERF0_TRIANGLES_CULLED: + case GX_PERF0_TRIANGLES_PASSED: + case GX_PERF0_TRIANGLES_SCISSORED: + case GX_PERF0_TRIANGLES_0TEX: + case GX_PERF0_TRIANGLES_1TEX: + case GX_PERF0_TRIANGLES_2TEX: + case GX_PERF0_TRIANGLES_3TEX: + case GX_PERF0_TRIANGLES_4TEX: + case GX_PERF0_TRIANGLES_5TEX: + case GX_PERF0_TRIANGLES_6TEX: + case GX_PERF0_TRIANGLES_7TEX: + case GX_PERF0_TRIANGLES_8TEX: + case GX_PERF0_TRIANGLES_0CLR: + case GX_PERF0_TRIANGLES_1CLR: + case GX_PERF0_TRIANGLES_2CLR: + case GX_PERF0_QUAD_0CVG: + case GX_PERF0_QUAD_NON0CVG: + case GX_PERF0_QUAD_1CVG: + case GX_PERF0_QUAD_2CVG: + case GX_PERF0_QUAD_3CVG: + case GX_PERF0_QUAD_4CVG: + case GX_PERF0_AVG_QUAD_CNT: + case GX_PERF0_CLOCKS: + *cnt0 = cpCtr0; + break; + case GX_PERF0_NONE: + *cnt0 = 0; + break; + default: + ASSERTMSGLINE(0x2CF, 0, "GXReadGPMetric: Invalid GXPerf0 metric name"); + *cnt0 = 0; + break; + } + + switch (gx->perf1) { + case GX_PERF1_TEXELS: + *cnt1 = cpCtr3 * 4; + break; + case GX_PERF1_TC_CHECK1_2: + *cnt1 = cpCtr2 + (cpCtr3 * 2); + break; + case GX_PERF1_TC_CHECK3_4: + *cnt1 = (cpCtr2 * 3) + (cpCtr3 * 4); + break; + case GX_PERF1_TC_CHECK5_6: + *cnt1 = (cpCtr2 * 5) + (cpCtr3 * 6); + break; + case GX_PERF1_TC_CHECK7_8: + *cnt1 = (cpCtr2 * 7) + (cpCtr3 * 8); + break; + case GX_PERF1_TX_IDLE: + case GX_PERF1_TX_REGS: + case GX_PERF1_TX_MEMSTALL: + case GX_PERF1_TC_MISS: + case GX_PERF1_VC_ELEMQ_FULL: + case GX_PERF1_VC_MISSQ_FULL: + case GX_PERF1_VC_MEMREQ_FULL: + case GX_PERF1_VC_STATUS7: + case GX_PERF1_VC_MISSREP_FULL: + case GX_PERF1_VC_STREAMBUF_LOW: + case GX_PERF1_VC_ALL_STALLS: + case GX_PERF1_VERTICES: + case GX_PERF1_CLOCKS: + *cnt1 = cpCtr3; + break; + case GX_PERF1_FIFO_REQ: + case GX_PERF1_CALL_REQ: + case GX_PERF1_VC_MISS_REQ: + case GX_PERF1_CP_ALL_REQ: + *cnt1 = cpCtr2; + break; + case GX_PERF1_NONE: + *cnt1 = 0; + break; + default: + ASSERTMSGLINE(0x30A, 0, "GXReadGPMetric: Invalid GXPerf1 metric name"); + *cnt1 = 0; + break; + } +} +#pragma scheduling reset + +void GXClearGPMetric(void) +{ + u32 reg; + + ASSERTMSGLINE(0x322, !gx->inDispList, "GXClearGPMetric: don't use in a display list"); + reg = 4; + __cpReg[2] = reg; +} + +u32 GXReadGP0Metric(void) +{ + u32 cnt0, cnt1; + + GXReadGPMetric(&cnt0, &cnt1); + return cnt0; +} + +u32 GXReadGP1Metric(void) +{ + u32 cnt0, cnt1; + + GXReadGPMetric(&cnt0, &cnt1); + return cnt1; +} + +#pragma scheduling off +void GXReadMemMetric( + u32 *cp_req, u32 *tc_req, u32 *cpu_rd_req, u32 *cpu_wr_req, u32 *dsp_req, u32 *io_req, u32 *vi_req, u32 *pe_req, u32 *rf_req, u32 *fi_req) +{ + ASSERTMSGLINE(0x380, !gx->inDispList, "GXReadMemMetric: don't use in a display list"); + + *cp_req = __GXReadMEMCounterU32(26, 25); + *tc_req = __GXReadMEMCounterU32(28, 27); + *cpu_rd_req = __GXReadMEMCounterU32(30, 29); + *cpu_wr_req = __GXReadMEMCounterU32(32, 31); + *dsp_req = __GXReadMEMCounterU32(34, 33); + *io_req = __GXReadMEMCounterU32(36, 35); + *vi_req = __GXReadMEMCounterU32(38, 37); + *pe_req = __GXReadMEMCounterU32(40, 39); + *rf_req = __GXReadMEMCounterU32(42, 41); + *fi_req = __GXReadMEMCounterU32(44, 43); +} +#pragma scheduling reset + +void GXClearMemMetric(void) +{ + ASSERTMSGLINE(0x3B9, !gx->inDispList, "GXClearMemMetric: don't use in a display list"); + + GX_SET_MEM_REG(25, 0); + GX_SET_MEM_REG(26, 0); + GX_SET_MEM_REG(27, 0); + GX_SET_MEM_REG(28, 0); + GX_SET_MEM_REG(30, 0); + GX_SET_MEM_REG(29, 0); + GX_SET_MEM_REG(32, 0); + GX_SET_MEM_REG(31, 0); + GX_SET_MEM_REG(34, 0); + GX_SET_MEM_REG(33, 0); + GX_SET_MEM_REG(36, 0); + GX_SET_MEM_REG(35, 0); + GX_SET_MEM_REG(38, 0); + GX_SET_MEM_REG(37, 0); + GX_SET_MEM_REG(40, 0); + GX_SET_MEM_REG(39, 0); + GX_SET_MEM_REG(42, 0); + GX_SET_MEM_REG(41, 0); + GX_SET_MEM_REG(44, 0); + GX_SET_MEM_REG(43, 0); +} + +#pragma scheduling off +void GXReadPixMetric(u32 *top_pixels_in, u32 *top_pixels_out, u32 *bot_pixels_in, u32 *bot_pixels_out, u32 *clr_pixels_in, u32 *copy_clks) +{ + *top_pixels_in = __GXReadPECounterU32(12, 13) * 4; + *top_pixels_out = __GXReadPECounterU32(14, 15) * 4; + *bot_pixels_in = __GXReadPECounterU32(16, 17) * 4; + *bot_pixels_out = __GXReadPECounterU32(18, 19) * 4; + *clr_pixels_in = __GXReadPECounterU32(20, 21) * 4; + *copy_clks = __GXReadPECounterU32(22, 23); +} +#pragma scheduling reset + +void GXClearPixMetric(void) +{ + u32 reg; + + CHECK_GXBEGIN(0x48B, "GXClearPixMetric"); + reg = 0x57000000; + GX_WRITE_RAS_REG(reg); + reg = 0x57000AAA; + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; +} + +void GXSetVCacheMetric(GXVCachePerf attr) +{ + u32 reg; + + SET_REG_FIELD(0x43C, gx->perfSel, 4, 0, attr); + GX_WRITE_SOME_REG4(8, 0x20, gx->perfSel, -12); + reg = 1; + GX_WRITE_SOME_REG4(8, 0x10, reg, -12); +} + +#pragma scheduling off +void GXReadVCacheMetric(u32 *check, u32 *miss, u32 *stall) +{ + *check = __GXReadCPCounterU32(40, 41); + *miss = __GXReadCPCounterU32(42, 43); + *stall = __GXReadCPCounterU32(44, 45); +} +#pragma scheduling on + +void GXClearVCacheMetric(void) +{ + GX_WRITE_SOME_REG4(8, 0, 0, -12); +} diff --git a/src/dolphin/gx/GXPixel.c b/src/dolphin/gx/GXPixel.c new file mode 100644 index 00000000..5460b4b6 --- /dev/null +++ b/src/dolphin/gx/GXPixel.c @@ -0,0 +1,290 @@ +#include +#include +#include + +#include + +void GXSetFog(GXFogType type, f32 startz, f32 endz, f32 nearz, f32 farz, GXColor color) +{ + u32 fogclr; + u32 fog0; + u32 fog1; + u32 fog2; + u32 fog3; + f32 A; + f32 B; + f32 B_mant; + f32 C; + f32 a; + f32 c; + u32 B_expn; + u32 b_m; + u32 b_s; + u32 a_hex; + u32 c_hex; + + CHECK_GXBEGIN(0x8A, "GXSetFog"); + + ASSERTMSGLINE(0x8C, farz >= 0.0f, "GXSetFog: The farz should be positive value"); + ASSERTMSGLINE(0x8D, farz >= nearz, "GXSetFog: The farz should be larger than nearz"); + + if (farz == nearz || endz == startz) { + A = 0.0f; + B = 0.5f; + C = 0.0f; + } + else { + A = (farz * nearz) / ((farz - nearz) * (endz - startz)); + B = farz / (farz - nearz); + C = startz / (endz - startz); + } + + B_mant = B; + B_expn = 0; + while (B_mant > 1.0) { + B_mant *= 0.5f; + B_expn++; + } + while (B_mant > 0.0f && B_mant < 0.5) { + B_mant *= 2.0f; + B_expn--; + } + + a = A / (f32)(1 << (B_expn + 1)); + b_m = 8.388638e6f * B_mant; + b_s = B_expn + 1; + c = C; + + fog1 = 0; + SET_REG_FIELD(0x94, fog1, 24, 0, b_m); + SET_REG_FIELD(0x95, fog1, 8, 24, 0xEF); + + fog2 = 0; + SET_REG_FIELD(0x98, fog2, 5, 0, b_s); + SET_REG_FIELD(0x99, fog2, 8, 24, 0xF0); + + a_hex = *(u32 *)&a; + c_hex = *(u32 *)&c; + + fog0 = 0; + SET_REG_FIELD(0xA0, fog0, 11, 0, (a_hex >> 12) & 0x7FF); + SET_REG_FIELD(0xA1, fog0, 8, 11, (a_hex >> 23) & 0xFF); + SET_REG_FIELD(0xA2, fog0, 1, 19, (a_hex >> 31)); + SET_REG_FIELD(0xA3, fog0, 8, 24, 0xEE); + + fog3 = 0; + SET_REG_FIELD(0xA6, fog3, 11, 0, (c_hex >> 12) & 0x7FF); + SET_REG_FIELD(0xA7, fog3, 8, 11, (c_hex >> 23) & 0xFF); + SET_REG_FIELD(0xA8, fog3, 1, 19, (c_hex >> 31)); + SET_REG_FIELD(0xA9, fog3, 1, 20, 0); + SET_REG_FIELD(0xAA, fog3, 3, 21, type); + SET_REG_FIELD(0xAB, fog3, 8, 24, 0xF1); + + fogclr = 0; + SET_REG_FIELD(0xAE, fogclr, 8, 0, color.b); + SET_REG_FIELD(0xAF, fogclr, 8, 8, color.g); + SET_REG_FIELD(0xB0, fogclr, 8, 16, color.r); + SET_REG_FIELD(0xB1, fogclr, 8, 24, 0xF2); + + GX_WRITE_RAS_REG(fog0); + GX_WRITE_RAS_REG(fog1); + GX_WRITE_RAS_REG(fog2); + GX_WRITE_RAS_REG(fog3); + GX_WRITE_RAS_REG(fogclr); + gx->bpSentNot = 0; +} + +void GXSetFogColor(GXColor color) +{ + unsigned long rgba; + unsigned long fogclr = 0xF2000000; + + rgba = *(u32 *)&color; + SET_REG_FIELD(0xFA, fogclr, 24, 0, rgba >> 8); + GX_WRITE_RAS_REG(fogclr); + gx->bpSentNot = 0; +} + +void GXInitFogAdjTable(GXFogAdjTable *table, u16 width, const f32 projmtx[4][4]) +{ + f32 xi; + f32 iw; + f32 rangeVal; + f32 nearZ; + f32 sideX; + u32 i; + + CHECK_GXBEGIN(0x113, "GXInitFogAdjTable"); + ASSERTMSGLINE(0x114, table != NULL, "GXInitFogAdjTable: table pointer is null"); + ASSERTMSGLINE(0x115, width <= 640, "GXInitFogAdjTable: invalid width value"); + + if (0.0 == projmtx[3][3]) { + nearZ = projmtx[2][3] / (projmtx[2][2] - 1.0f); + sideX = nearZ / projmtx[0][0]; + } + else { + sideX = 1.0f / projmtx[0][0]; + nearZ = 1.73205f * sideX; + } + + iw = 2.0f / width; + for (i = 0; i < 10; i++) { + xi = (i + 1) << 5; + xi *= iw; + xi *= sideX; + rangeVal = sqrtf(1.0f + ((xi * xi) / (nearZ * nearZ))); + table->r[i] = (u32)(256.0f * rangeVal) & 0xFFF; + } +} + +void GXSetFogRangeAdj(GXBool enable, u16 center, const GXFogAdjTable *table) +{ + u32 i; + u32 range_adj; + u32 range_c; + + CHECK_GXBEGIN(0x14B, "GXSetFogRangeAdj"); + + if (enable) { + ASSERTMSGLINE(0x14E, table != NULL, "GXSetFogRangeAdj: table pointer is null"); + for (i = 0; i < 10; i += 2) { + range_adj = 0; + SET_REG_FIELD(0x152, range_adj, 12, 0, table->r[i]); + SET_REG_FIELD(0x153, range_adj, 12, 12, table->r[i + 1]); + SET_REG_FIELD(0x154, range_adj, 8, 24, (i >> 1) + 0xE9); + GX_WRITE_RAS_REG(range_adj); + } + } + range_c = 0; + SET_REG_FIELD(0x15A, range_c, 10, 0, center + 342); + SET_REG_FIELD(0x15B, range_c, 1, 10, enable); + SET_REG_FIELD(0x15C, range_c, 8, 24, 0xE8); + GX_WRITE_RAS_REG(range_c); + gx->bpSentNot = 0; +} + +void GXSetBlendMode(GXBlendMode type, GXBlendFactor src_factor, GXBlendFactor dst_factor, GXLogicOp op) +{ + CHECK_GXBEGIN(0x177, "GXSetBlendMode"); + + SET_REG_FIELD(0x135, gx->cmode0, 1, 0, (type == GX_BM_BLEND || type == GX_BM_SUBTRACT)); + SET_REG_FIELD(0x136, gx->cmode0, 1, 11, (type == GX_BM_SUBTRACT)); + SET_REG_FIELD(0x138, gx->cmode0, 1, 1, (type == GX_BM_LOGIC)); + SET_REG_FIELD(0x139, gx->cmode0, 4, 12, op); + SET_REG_FIELD(0x13A, gx->cmode0, 3, 8, src_factor); + SET_REG_FIELD(0x13B, gx->cmode0, 3, 5, dst_factor); + SET_REG_FIELD(0x13C, gx->cmode0, 8, 24, 0x41); + GX_WRITE_RAS_REG(gx->cmode0); + gx->bpSentNot = 0; +} + +void GXSetColorUpdate(GXBool update_enable) +{ + CHECK_GXBEGIN(0x1A3, "GXSetColorUpdate"); + + SET_REG_FIELD(0x150, gx->cmode0, 1, 3, update_enable); + GX_WRITE_RAS_REG(gx->cmode0); + gx->bpSentNot = 0; +} + +void GXSetAlphaUpdate(GXBool update_enable) +{ + CHECK_GXBEGIN(0x1B0, "GXSetAlphaUpdate"); + + SET_REG_FIELD(0x159, gx->cmode0, 1, 4, update_enable); + GX_WRITE_RAS_REG(gx->cmode0); + gx->bpSentNot = 0; +} + +void GXSetZMode(GXBool compare_enable, GXCompare func, GXBool update_enable) +{ + CHECK_GXBEGIN(0x1CB, "GXSetZMode"); + + SET_REG_FIELD(0x171, gx->zmode, 1, 0, compare_enable); + SET_REG_FIELD(0x172, gx->zmode, 3, 1, func); + SET_REG_FIELD(0x173, gx->zmode, 1, 4, update_enable); + GX_WRITE_RAS_REG(gx->zmode); + gx->bpSentNot = 0; +} + +void GXSetZCompLoc(GXBool before_tex) +{ + CHECK_GXBEGIN(0x1DA, "GXSetZCompLoc"); + + SET_REG_FIELD(0x1DB, gx->peCtrl, 1, 6, before_tex); + GX_WRITE_RAS_REG(gx->peCtrl); + gx->bpSentNot = 0; +} + +void GXSetPixelFmt(GXPixelFmt pix_fmt, GXZFmt16 z_fmt) +{ + u32 oldPeCtrl; + u8 aa; + static u32 p2f[8] = { 0, 1, 2, 3, 4, 4, 4, 5 }; + + CHECK_GXBEGIN(0x1FF, "GXSetPixelFmt"); + oldPeCtrl = gx->peCtrl; + ASSERTMSGLINE(0x203, pix_fmt >= 0 && pix_fmt <= 7, "Invalid Pixel format"); + SET_REG_FIELD(0x205, gx->peCtrl, 3, 0, p2f[pix_fmt]); + SET_REG_FIELD(0x206, gx->peCtrl, 3, 3, z_fmt); + if (oldPeCtrl != gx->peCtrl) { + GX_WRITE_RAS_REG(gx->peCtrl); + if (pix_fmt == GX_PF_RGB565_Z16) + aa = 1; + else + aa = 0; + SET_REG_FIELD(0x20F, gx->genMode, 1, 9, aa); + gx->dirtyState |= 4; + } + if (p2f[pix_fmt] == 4) { + SET_REG_FIELD(0x216, gx->cmode1, 2, 9, (pix_fmt - 4) & 0x3); + SET_REG_FIELD(0x216, gx->cmode1, 8, 24, 0x42); + GX_WRITE_RAS_REG(gx->cmode1); + } + gx->bpSentNot = 0; +} + +void GXSetDither(GXBool dither) +{ + CHECK_GXBEGIN(0x22C, "GXSetDither"); + + SET_REG_FIELD(0x1CE, gx->cmode0, 1, 2, dither); + GX_WRITE_RAS_REG(gx->cmode0); + gx->bpSentNot = 0; +} + +void GXSetDstAlpha(GXBool enable, u8 alpha) +{ + CHECK_GXBEGIN(0x245, "GXSetDstAlpha"); + + SET_REG_FIELD(0x1E2, gx->cmode1, 8, 0, alpha); + SET_REG_FIELD(0x1E3, gx->cmode1, 1, 8, enable); + GX_WRITE_RAS_REG(gx->cmode1); + gx->bpSentNot = 0; +} + +void GXSetFieldMask(GXBool odd_mask, GXBool even_mask) +{ + u32 reg; + + CHECK_GXBEGIN(0x260, "GXSetFieldMask"); + reg = 0; + SET_REG_FIELD(0x262, reg, 1, 0, even_mask); + SET_REG_FIELD(0x263, reg, 1, 1, odd_mask); + SET_REG_FIELD(0x263, reg, 8, 24, 0x44); + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; +} + +void GXSetFieldMode(GXBool field_mode, GXBool half_aspect_ratio) +{ + u32 reg; + + CHECK_GXBEGIN(0x27D, "GXSetFieldMode"); + SET_REG_FIELD(0x281, gx->lpSize, 1, 22, half_aspect_ratio); + GX_WRITE_RAS_REG(gx->lpSize); + __GXFlushTextureState(); + reg = field_mode | 0x68000000; + GX_WRITE_RAS_REG(reg); + __GXFlushTextureState(); +} diff --git a/src/dolphin/gx/GXStubs.c b/src/dolphin/gx/GXStubs.c new file mode 100644 index 00000000..85f05a89 --- /dev/null +++ b/src/dolphin/gx/GXStubs.c @@ -0,0 +1,5 @@ +#include + +#include + +void __GXSetRange(float nearz, float fgSideX) {} diff --git a/src/dolphin/gx/GXTev.c b/src/dolphin/gx/GXTev.c new file mode 100644 index 00000000..c2f6d67a --- /dev/null +++ b/src/dolphin/gx/GXTev.c @@ -0,0 +1,403 @@ +#include +#include + +#include + +void GXSetTevOp(GXTevStageID id, GXTevMode mode) +{ + GXTevColorArg carg = GX_CC_RASC; + GXTevAlphaArg aarg = GX_CA_RASA; + + CHECK_GXBEGIN(0x1A4, "GXSetTevOp"); + ASSERTMSGLINE(0x1A5, id < 16, "GXSetTevColor*: Invalid Tev Stage Index"); + ASSERTMSGLINE(0x1A6, mode <= 4, "GXSetTevOp: Invalid Tev Mode"); + + if (id != GX_TEVSTAGE0) { + carg = GX_CC_CPREV; + aarg = GX_CA_APREV; + } + + switch (mode) { + case GX_MODULATE: + GXSetTevColorIn(id, GX_CC_ZERO, GX_CC_TEXC, carg, GX_CC_ZERO); + GXSetTevAlphaIn(id, GX_CA_ZERO, GX_CA_TEXA, aarg, GX_CA_ZERO); + break; + case GX_DECAL: + GXSetTevColorIn(id, carg, GX_CC_TEXC, GX_CC_TEXA, GX_CC_ZERO); + GXSetTevAlphaIn(id, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, aarg); + break; + case GX_BLEND: + GXSetTevColorIn(id, carg, GX_CC_ONE, GX_CC_TEXC, GX_CC_ZERO); + GXSetTevAlphaIn(id, GX_CA_ZERO, GX_CA_TEXA, aarg, GX_CA_ZERO); + break; + case GX_REPLACE: + GXSetTevColorIn(id, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_TEXC); + GXSetTevAlphaIn(id, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); + break; + case GX_PASSCLR: + GXSetTevColorIn(id, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, carg); + GXSetTevAlphaIn(id, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, aarg); + break; + } + GXSetTevColorOp(id, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaOp(id, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); +} + +void GXSetTevColorIn(GXTevStageID stage, GXTevColorArg a, GXTevColorArg b, GXTevColorArg c, GXTevColorArg d) +{ + u32 *pTevReg; + + CHECK_GXBEGIN(0x242, "GXSetTevColorIn"); + ASSERTMSGLINE(0x243, stage < 16, "GXSetTevColor*: Invalid Tev Stage Index"); + ASSERTMSGLINE(0x244, a <= 15, "GXSetTev*In: A/B/C/D argument out of range"); + ASSERTMSGLINE(0x245, b <= 15, "GXSetTev*In: A/B/C/D argument out of range"); + ASSERTMSGLINE(0x246, c <= 15, "GXSetTev*In: A/B/C/D argument out of range"); + ASSERTMSGLINE(0x247, d <= 15, "GXSetTev*In: A/B/C/D argument out of range"); + + pTevReg = &gx->tevc[stage]; + SET_REG_FIELD(0xED, *pTevReg, 4, 12, a); + SET_REG_FIELD(0xEE, *pTevReg, 4, 8, b); + SET_REG_FIELD(0xEF, *pTevReg, 4, 4, c); + SET_REG_FIELD(0xF0, *pTevReg, 4, 0, d); + + GX_WRITE_RAS_REG(*pTevReg); + gx->bpSentNot = 0; +} + +void GXSetTevAlphaIn(GXTevStageID stage, GXTevAlphaArg a, GXTevAlphaArg b, GXTevAlphaArg c, GXTevAlphaArg d) +{ + u32 *pTevReg; + + CHECK_GXBEGIN(0x266, "GXSetTevAlphaIn"); + ASSERTMSGLINE(0x267, stage < 16, "GXSetTevAlpha*: Invalid Tev Stage Index"); + ASSERTMSGLINE(0x268, a <= 7, "GXSetTev*In: A/B/C/D argument out of range"); + ASSERTMSGLINE(0x269, b <= 7, "GXSetTev*In: A/B/C/D argument out of range"); + ASSERTMSGLINE(0x26A, c <= 7, "GXSetTev*In: A/B/C/D argument out of range"); + ASSERTMSGLINE(0x26B, d <= 7, "GXSetTev*In: A/B/C/D argument out of range"); + + pTevReg = &gx->teva[stage]; + SET_REG_FIELD(0x110, *pTevReg, 3, 13, a); + SET_REG_FIELD(0x111, *pTevReg, 3, 10, b); + SET_REG_FIELD(0x112, *pTevReg, 3, 7, c); + SET_REG_FIELD(0x113, *pTevReg, 3, 4, d); + + GX_WRITE_RAS_REG(*pTevReg); + gx->bpSentNot = 0; +} + +void GXSetTevColorOp(GXTevStageID stage, GXTevOp op, GXTevBias bias, GXTevScale scale, GXBool clamp, GXTevRegID out_reg) +{ + u32 *pTevReg; + + CHECK_GXBEGIN(0x28D, "GXSetTevColorOp"); + ASSERTMSGLINE(0x28E, stage < 16, "GXSetTevColor*: Invalid Tev Stage Index"); + + pTevReg = &gx->tevc[stage]; + SET_REG_FIELD(0x137, *pTevReg, 1, 18, op & 1); + if (op <= 1) { + SET_REG_FIELD(0x139, *pTevReg, 2, 20, scale); + SET_REG_FIELD(0x13A, *pTevReg, 2, 16, bias); + } + else { + SET_REG_FIELD(0x13C, *pTevReg, 2, 20, (op >> 1) & 3); + SET_REG_FIELD(0x13D, *pTevReg, 2, 16, 3); + } + SET_REG_FIELD(0x140, *pTevReg, 1, 19, clamp & 0xFF); + SET_REG_FIELD(0x141, *pTevReg, 2, 22, out_reg); + + GX_WRITE_RAS_REG(*pTevReg); + gx->bpSentNot = 0; +} + +void GXSetTevAlphaOp(GXTevStageID stage, GXTevOp op, GXTevBias bias, GXTevScale scale, GXBool clamp, GXTevRegID out_reg) +{ + u32 *pTevReg; + + CHECK_GXBEGIN(0x2BB, "GXSetTevAlphaOp"); + ASSERTMSGLINE(0x2BC, stage < 16, "GXSetTevAlpha*: Invalid Tev Stage Index"); + + pTevReg = &gx->teva[stage]; + SET_REG_FIELD(0x163, *pTevReg, 1, 18, op & 1); + if (op <= 1) { + SET_REG_FIELD(0x165, *pTevReg, 2, 20, scale); + SET_REG_FIELD(0x166, *pTevReg, 2, 16, bias); + } + else { + SET_REG_FIELD(0x168, *pTevReg, 2, 20, (op >> 1) & 3); + SET_REG_FIELD(0x169, *pTevReg, 2, 16, 3); + } + SET_REG_FIELD(0x16C, *pTevReg, 1, 19, clamp & 0xFF); + SET_REG_FIELD(0x16D, *pTevReg, 2, 22, out_reg); + + GX_WRITE_RAS_REG(*pTevReg); + gx->bpSentNot = 0; +} + +void GXSetTevColor(GXTevRegID id, GXColor color) +{ + u32 regRA; + u32 regBG; + + CHECK_GXBEGIN(0x2E4, "GXSetTevColor"); + regRA = 0; + SET_REG_FIELD(0x185, regRA, 11, 0, color.r); + SET_REG_FIELD(0x186, regRA, 11, 12, color.a); + SET_REG_FIELD(0x187, regRA, 8, 24, 224 + id * 2); + + regBG = 0; + SET_REG_FIELD(0x18A, regBG, 11, 0, color.b); + SET_REG_FIELD(0x18B, regBG, 11, 12, color.g); + SET_REG_FIELD(0x18C, regBG, 8, 24, 225 + id * 2); + + GX_WRITE_RAS_REG(regRA); + GX_WRITE_RAS_REG(regBG); + GX_WRITE_RAS_REG(regBG); + GX_WRITE_RAS_REG(regBG); + gx->bpSentNot = 0; +} + +void GXSetTevColorS10(GXTevRegID id, GXColorS10 color) +{ + u32 regRA; + u32 regBG; + + ASSERTMSGLINE(0x309, color.r >= -1024 && color.r < 1024, "GXSetTevColorS10: Color not in range -1024 to +1023"); + ASSERTMSGLINE(0x30A, color.g >= -1024 && color.g < 1024, "GXSetTevColorS10: Color not in range -1024 to +1023"); + ASSERTMSGLINE(0x30B, color.b >= -1024 && color.b < 1024, "GXSetTevColorS10: Color not in range -1024 to +1023"); + ASSERTMSGLINE(0x30C, color.a >= -1024 && color.a < 1024, "GXSetTevColorS10: Color not in range -1024 to +1023"); + + CHECK_GXBEGIN(0x30E, "GXSetTevColorS10"); + regRA = 0; + SET_REG_FIELD(0x1AF, regRA, 11, 0, color.r & 0x7FF); + SET_REG_FIELD(0x1B0, regRA, 11, 12, color.a & 0x7FF); + SET_REG_FIELD(0x1B1, regRA, 8, 24, 224 + id * 2); + + regBG = 0; + SET_REG_FIELD(0x1B4, regBG, 11, 0, color.b & 0x7FF); + SET_REG_FIELD(0x1B5, regBG, 11, 12, color.g & 0x7FF); + SET_REG_FIELD(0x1B6, regBG, 8, 24, 225 + id * 2); + + GX_WRITE_RAS_REG(regRA); + GX_WRITE_RAS_REG(regBG); + GX_WRITE_RAS_REG(regBG); + GX_WRITE_RAS_REG(regBG); + gx->bpSentNot = 0; +} + +void GXSetTevKColor(GXTevKColorID id, GXColor color) +{ + u32 regRA; + u32 regBG; + + CHECK_GXBEGIN(0x341, "GXSetTevKColor"); + regRA = 0; + SET_REG_FIELD(0x1E0, regRA, 8, 0, color.r); + SET_REG_FIELD(0x1E1, regRA, 8, 12, color.a); + SET_REG_FIELD(0x1E2, regRA, 4, 20, 8); + SET_REG_FIELD(0x1E3, regRA, 8, 24, 224 + id * 2); + + regBG = 0; + SET_REG_FIELD(0x1E6, regBG, 8, 0, color.b); + SET_REG_FIELD(0x1E7, regBG, 8, 12, color.g); + SET_REG_FIELD(0x1E8, regBG, 4, 20, 8); + SET_REG_FIELD(0x1E9, regBG, 8, 24, 225 + id * 2); + + GX_WRITE_RAS_REG(regRA); + GX_WRITE_RAS_REG(regBG); + gx->bpSentNot = 0; +} + +void GXSetTevKColorSel(GXTevStageID stage, GXTevKColorSel sel) +{ + u32 *Kreg; + + CHECK_GXBEGIN(0x368, "GXSetTevKColorSel"); + ASSERTMSGLINE(0x369, stage < 16, "GXSetTevKColor*: Invalid Tev Stage Index"); + + Kreg = &gx->tevKsel[stage >> 1]; + if (stage & 1) { + SET_REG_FIELD(0x20A, *Kreg, 5, 14, sel); + } + else { + SET_REG_FIELD(0x20C, *Kreg, 5, 4, sel); + } + + GX_WRITE_RAS_REG(*Kreg); + gx->bpSentNot = 0; +} + +void GXSetTevKAlphaSel(GXTevStageID stage, GXTevKAlphaSel sel) +{ + u32 *Kreg; + + CHECK_GXBEGIN(0x389, "GXSetTevKAlphaSel"); + ASSERTMSGLINE(0x38A, stage < 16, "GXSetTevKColor*: Invalid Tev Stage Index"); + + Kreg = &gx->tevKsel[stage >> 1]; + if (stage & 1) { + SET_REG_FIELD(0x22B, *Kreg, 5, 19, sel); + } + else { + SET_REG_FIELD(0x22D, *Kreg, 5, 9, sel); + } + + GX_WRITE_RAS_REG(*Kreg); + gx->bpSentNot = 0; +} + +void GXSetTevSwapMode(GXTevStageID stage, GXTevSwapSel ras_sel, GXTevSwapSel tex_sel) +{ + u32 *pTevReg; + + CHECK_GXBEGIN(0x3AE, "GXSetTevSwapMode"); + ASSERTMSGLINE(0x3AF, stage < 16, "GXSetTevSwapMode: Invalid Tev Stage Index"); + + pTevReg = &gx->teva[stage]; + SET_REG_FIELD(0x24E, *pTevReg, 2, 0, ras_sel); + SET_REG_FIELD(0x24F, *pTevReg, 2, 2, tex_sel); + + GX_WRITE_RAS_REG(*pTevReg); + gx->bpSentNot = 0; +} + +void GXSetTevSwapModeTable(GXTevSwapSel table, GXTevColorChan red, GXTevColorChan green, GXTevColorChan blue, GXTevColorChan alpha) +{ + u32 *Kreg; +#if !DEBUG + // not a real variable, but needed to match release + int index = table * 2; +#endif + + CHECK_GXBEGIN(0x3D2, "GXSetTevSwapModeTable"); + ASSERTMSGLINE(0x3D3, table < 4, "GXSetTevSwapModeTable: Invalid Swap Selection Index"); + +#if DEBUG + Kreg = &gx->tevKsel[table * 2]; +#else + Kreg = &gx->tevKsel[index]; +#endif + SET_REG_FIELD(0x272, *Kreg, 2, 0, red); + SET_REG_FIELD(0x273, *Kreg, 2, 2, green); + + GX_WRITE_RAS_REG(*Kreg); + + Kreg = &gx->tevKsel[table * 2 + 1]; + SET_REG_FIELD(0x277, *Kreg, 2, 0, blue); + SET_REG_FIELD(0x278, *Kreg, 2, 2, alpha); + + GX_WRITE_RAS_REG(*Kreg); + gx->bpSentNot = 0; +} + +void GXSetTevClampMode(void) +{ + ASSERTMSGLINE(0x3F4, 0, "GXSetTevClampMode: not available on this hardware"); +} + +void GXSetAlphaCompare(GXCompare comp0, u8 ref0, GXAlphaOp op, GXCompare comp1, u8 ref1) +{ + u32 reg = 0; + + CHECK_GXBEGIN(0x416, "GXSetAlphaCompare"); + SET_REG_FIELD(0x2B4, reg, 8, 0, ref0); + SET_REG_FIELD(0x2B5, reg, 8, 8, ref1); + SET_REG_FIELD(0x2B6, reg, 3, 16, comp0); + SET_REG_FIELD(0x2B7, reg, 3, 19, comp1); + SET_REG_FIELD(0x2B8, reg, 2, 22, op); + SET_REG_FIELD(0x2B9, reg, 8, 24, 0xF3); + + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; +} + +void GXSetZTexture(GXZTexOp op, GXTexFmt fmt, u32 bias) +{ + u32 zenv0; + u32 zenv1; + u32 type; + + CHECK_GXBEGIN(0x435, "GXSetZTexture"); + + zenv0 = 0; + SET_REG_FIELD(0x2D4, zenv0, 24, 0, bias); + SET_REG_FIELD(0x2D5, zenv0, 8, 24, 0xF4); + + zenv1 = 0; + switch (fmt) { + case GX_TF_Z8: + type = 0; + break; + case GX_TF_Z16: + type = 1; + break; + case GX_TF_Z24X8: + type = 2; + break; + default: + ASSERTMSGLINE(0x441, 0, "GXSetZTexture: Invalid z-texture format"); + type = 2; + break; + } + SET_REG_FIELD(0x2E0, zenv1, 2, 0, type); + SET_REG_FIELD(0x2E1, zenv1, 2, 2, op); + SET_REG_FIELD(0x2E2, zenv1, 8, 24, 0xF5); + + GX_WRITE_RAS_REG(zenv0); + GX_WRITE_RAS_REG(zenv1); + gx->bpSentNot = 0; +} + +void GXSetTevOrder(GXTevStageID stage, GXTexCoordID coord, GXTexMapID map, GXChannelID color) +{ + u32 *ptref; + u32 tmap; + u32 tcoord; + static int c2r[] = { 0, 1, 0, 1, 0, 1, 7, 5, 6 }; + + CHECK_GXBEGIN(0x46B, "GXSetTevOrder"); + ASSERTMSGLINE(0x46C, stage < 16, "GXSetTevOrder: Invalid Tev Stage Index"); + ASSERTMSGLINE(0x46E, coord < 8 || coord == 0xFF, "GXSetTevOrder: Invalid Texcoord"); + ASSERTMSGLINE(0x470, (map & ~0x100) < 8 || map == 0xFF, "GXSetTevOrder: Invalid Tex Map"); + ASSERTMSGLINE(0x472, color >= 4 && color <= 0xFF, "GXSetTevOrder: Invalid Color Channel ID"); + + ptref = &gx->tref[stage / 2]; + gx->texmapId[stage] = map; + + tmap = map & ~0x100; + tmap = (tmap >= GX_MAX_TEXMAP) ? GX_TEXMAP0 : tmap; + + if (coord >= GX_MAX_TEXCOORD) { + tcoord = GX_TEXCOORD0; + gx->tevTcEnab = gx->tevTcEnab & ~(1 << stage); + } + else { + tcoord = coord; + gx->tevTcEnab = gx->tevTcEnab | (1 << stage); + } + + if (stage & 1) { + SET_REG_FIELD(0x486, *ptref, 3, 12, tmap); + SET_REG_FIELD(0x487, *ptref, 3, 15, tcoord); + SET_REG_FIELD(0x489, *ptref, 3, 19, (color == GX_COLOR_NULL) ? 7 : c2r[color]); + SET_REG_FIELD(0x48B, *ptref, 1, 18, (map != GX_TEXMAP_NULL && !(map & 0x100))); + } + else { + SET_REG_FIELD(0x48E, *ptref, 3, 0, tmap); + SET_REG_FIELD(0x48F, *ptref, 3, 3, tcoord); + SET_REG_FIELD(0x491, *ptref, 3, 7, (color == GX_COLOR_NULL) ? 7 : c2r[color]); + SET_REG_FIELD(0x493, *ptref, 1, 6, (map != GX_TEXMAP_NULL && !(map & 0x100))); + } + + GX_WRITE_RAS_REG(*ptref); + gx->bpSentNot = 0; + gx->dirtyState |= 1; +} + +void GXSetNumTevStages(u8 nStages) +{ + CHECK_GXBEGIN(0x4A3, "GXSetNumTevStages"); + + ASSERTMSGLINE(0x4A5, nStages != 0 && nStages <= 16, "GXSetNumTevStages: Exceed max number of tex stages"); + SET_REG_FIELD(0x334, gx->genMode, 4, 10, nStages - 1); + gx->dirtyState |= 4; +} diff --git a/src/dolphin/gx/GXTexture.c b/src/dolphin/gx/GXTexture.c new file mode 100644 index 00000000..ec67f795 --- /dev/null +++ b/src/dolphin/gx/GXTexture.c @@ -0,0 +1,1269 @@ +#include +#include + +#include + +// GXTexObj internal data +typedef struct __GXTexObjInt_struct { + u32 mode0; + u32 mode1; + u32 image0; + u32 image3; + void *userData; + GXTexFmt fmt; + u32 tlutName; + u16 loadCnt; + u8 loadFmt; + u8 flags; +} __GXTexObjInt; + +// GXTexRegion internal data +typedef struct __GXTexRegionInt_struct { + u32 image1; + u32 image2; + u16 sizeEven; + u16 sizeOdd; + u8 is32bMipmap; + u8 isCached; +} __GXTexRegionInt; + +// GXTlutObj internal data +typedef struct __GXTlutObjInt_struct { + u32 tlut; + u32 loadTlut0; + u16 numEntries; +} __GXTlutObjInt; + +// GXTlutRegion internal data +typedef struct __GXTlutRegionInt_struct { + u32 loadTlut1; + __GXTlutObjInt tlutObj; +} __GXTlutRegionInt; + +u8 GXTexMode0Ids[8] = { 0x80, 0x81, 0x82, 0x83, 0xA0, 0xA1, 0xA2, 0xA3 }; +u8 GXTexMode1Ids[8] = { 0x84, 0x85, 0x86, 0x87, 0xA4, 0xA5, 0xA6, 0xA7 }; +u8 GXTexImage0Ids[8] = { 0x88, 0x89, 0x8A, 0x8B, 0xA8, 0xA9, 0xAA, 0xAB }; +u8 GXTexImage1Ids[8] = { 0x8C, 0x8D, 0x8E, 0x8F, 0xAC, 0xAD, 0xAE, 0xAF }; +u8 GXTexImage2Ids[8] = { 0x90, 0x91, 0x92, 0x93, 0xB0, 0xB1, 0xB2, 0xB3 }; +u8 GXTexImage3Ids[8] = { 0x94, 0x95, 0x96, 0x97, 0xB4, 0xB5, 0xB6, 0xB7 }; +u8 GXTexTlutIds[8] = { 0x98, 0x99, 0x9A, 0x9B, 0xB8, 0xB9, 0xBA, 0xBB }; +static u8 GX2HWFiltConv[6] = { 0x00, 0x04, 0x01, 0x05, 0x02, 0x06 }; +static u8 HW2GXFiltConv[8] = { 0x00, 0x02, 0x04, 0x00, 0x01, 0x03, 0x05, 0x00 }; + +static void __GXGetTexTileShift(GXTexFmt fmt, u32 *rowTileS, u32 *colTileS) +{ + switch (fmt) { + case GX_TF_I4: + case 0x8: + case GX_TF_CMPR: + case GX_CTF_R4: + case GX_CTF_Z4: + *rowTileS = 3; + *colTileS = 3; + break; + case GX_TF_I8: + case GX_TF_IA4: + case 0x9: + case GX_TF_Z8: + case GX_CTF_RA4: + case GX_TF_A8: + case GX_CTF_R8: + case GX_CTF_G8: + case GX_CTF_B8: + case GX_CTF_Z8M: + case GX_CTF_Z8L: + *rowTileS = 3; + *colTileS = 2; + break; + case GX_TF_IA8: + case GX_TF_RGB565: + case GX_TF_RGB5A3: + case GX_TF_RGBA8: + case 0xA: + case GX_TF_Z16: + case GX_TF_Z24X8: + case GX_CTF_RA8: + case GX_CTF_RG8: + case GX_CTF_GB8: + case GX_CTF_Z16L: + *rowTileS = 2; + *colTileS = 2; + break; + default: + *rowTileS = *colTileS = 0; + ASSERTMSGLINEV(0x1BC, 0, "%s: invalid texture format", "GX"); + break; + } +} + +u32 GXGetTexBufferSize(u16 width, u16 height, u32 format, u8 mipmap, u8 max_lod) +{ + u32 tileShiftX; + u32 tileShiftY; + u32 tileBytes; + u32 bufferSize; + u32 nx; + u32 ny; + u32 level; + + ASSERTMSGLINEV(0x1CC, width <= 1024, "%s: width too large", "GXGetTexBufferSize"); + ASSERTMSGLINEV(0x1CD, height <= 1024, "%s: height too large", "GXGetTexBufferSize"); + + __GXGetTexTileShift(format, &tileShiftX, &tileShiftY); + if (format == GX_TF_RGBA8 || format == GX_TF_Z24X8) { + tileBytes = 64; + } + else { + tileBytes = 32; + } + if (mipmap == 1) { + nx = 1 << (31 - __cntlzw(width)); + ASSERTMSGLINEV(0x1DF, width == nx, "%s: width must be a power of 2", "GXGetTexBufferSize"); + ny = 1 << (31 - __cntlzw(height)); + ASSERTMSGLINEV(0x1E2, height == ny, "%s: height must be a power of 2", "GXGetTexBufferSize"); + + bufferSize = 0; + for (level = 0; level < max_lod; level++) { + nx = (width + (1 << tileShiftX) - 1) >> tileShiftX; + ny = (height + (1 << tileShiftY) - 1) >> tileShiftY; + bufferSize += tileBytes * (nx * ny); + if (width == 1 && height == 1) { + break; + } + width = (width > 1) ? width >> 1 : 1; + height = (height > 1) ? height >> 1 : 1; + } + } + else { + nx = (width + (1 << tileShiftX) - 1) >> tileShiftX; + ny = (height + (1 << tileShiftY) - 1) >> tileShiftY; + bufferSize = nx * ny * tileBytes; + } + return bufferSize; +} + +void __GetImageTileCount(GXTexFmt fmt, u16 wd, u16 ht, u32 *rowTiles, u32 *colTiles, u32 *cmpTiles) +{ + u32 texRowShift; + u32 texColShift; + + __GXGetTexTileShift(fmt, &texRowShift, &texColShift); + if (wd == 0) { + wd = 1; + } + if (ht == 0) { + ht = 1; + } + *rowTiles = (wd + (1 << texRowShift) - 1) >> texRowShift; + *colTiles = (ht + (1 << texColShift) - 1) >> texColShift; + *cmpTiles = (fmt == GX_TF_RGBA8 || fmt == GX_TF_Z24X8) ? 2 : 1; +} + +#define SOME_SET_REG_MACRO(reg, val) \ + do { \ + (reg) = (u32)__rlwinm((u32)(reg), 0, 27, 23) | val; \ + } while (0); + +void GXInitTexObj(GXTexObj *obj, void *image_ptr, u16 width, u16 height, GXTexFmt format, GXTexWrapMode wrap_s, GXTexWrapMode wrap_t, u8 mipmap) +{ + u32 imageBase; + u32 maxLOD; + u16 rowT; + u16 colT; + u32 rowC; + u32 colC; + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x235, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x237, "GXInitTexObj"); + ASSERTMSGLINEV(0x238, width <= 1024, "%s: width too large", "GXInitTexObj"); + ASSERTMSGLINEV(0x239, height <= 1024, "%s: height too large", "GXInitTexObj"); + ASSERTMSGLINEV(0x23B, !(format & 0x20), "%s: invalid texture format", "GXInitTexObj"); + memset(t, 0, 0x20); + SET_REG_FIELD(0x258, t->mode0, 2, 0, wrap_s); + SET_REG_FIELD(0x259, t->mode0, 2, 2, wrap_t); + SET_REG_FIELD(0x25A, t->mode0, 1, 4, 1); + if (mipmap != 0) { + u8 lmax; + t->flags |= 1; + + if (format == 8 || format == 9 || format == 10) { + SOME_SET_REG_MACRO(t->mode0, 0xa0); + } + else { + SOME_SET_REG_MACRO(t->mode0, 0xc0); + } + + if (width > height) { + maxLOD = 31 - __cntlzw(width); + } + else { + maxLOD = 31 - __cntlzw(height); + } + lmax = 16.0f * maxLOD; + SET_REG_FIELD(0x278, t->mode1, 8, 8, lmax); + } + else { + SOME_SET_REG_MACRO(t->mode0, 0x80); + } + t->fmt = format; + SET_REG_FIELD(0x286, t->image0, 10, 0, width - 1); + SET_REG_FIELD(0x287, t->image0, 10, 10, height - 1); + SET_REG_FIELD(0x288, t->image0, 4, 20, format & 0xF); + ASSERTMSGLINEV(0x28E, ((u32)image_ptr & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexObj", "image"); + imageBase = (u32)((u32)image_ptr >> 5) & 0x01FFFFFF; + SET_REG_FIELD(0x290, t->image3, 21, 0, imageBase); + switch (format & 0xF) { + case 0: + case 8: + t->loadFmt = 1; + rowT = 3; + colT = 3; + break; + case 1: + case 2: + case 9: + t->loadFmt = 2; + rowT = 3; + colT = 2; + break; + case 3: + case 4: + case 5: + case 10: + t->loadFmt = 2; + rowT = 2; + colT = 2; + break; + case 6: + t->loadFmt = 3; + rowT = 2; + colT = 2; + break; + case 14: + t->loadFmt = 0; + rowT = 3; + colT = 3; + break; + default: + ASSERTMSGLINEV(0x2BB, 0, "%s: invalid texture format", "GXPreLoadEntireTexture"); + t->loadFmt = 2; + rowT = 2; + colT = 2; + break; + } + rowC = (width + (1 << rowT) - 1) >> rowT; + colC = (height + (1 << colT) - 1) >> colT; + t->loadCnt = (rowC * colC) & 0x7FFF; + t->flags |= 2; +} + +void GXInitTexObjCI( + GXTexObj *obj, void *image_ptr, u16 width, u16 height, GXCITexFmt format, GXTexWrapMode wrap_s, GXTexWrapMode wrap_t, u8 mipmap, u32 tlut_name) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x2E1, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x2E3, "GXInitTexObjCI"); + GXInitTexObj(obj, image_ptr, width, height, format, wrap_s, wrap_t, mipmap); + t->flags &= 0xFFFFFFFD; + t->tlutName = tlut_name; +} + +void GXInitTexObjLOD(GXTexObj *obj, GXTexFilter min_filt, GXTexFilter mag_filt, f32 min_lod, f32 max_lod, f32 lod_bias, u8 bias_clamp, u8 do_edge_lod, + GXAnisotropy max_aniso) +{ + u8 lbias; + u8 lmin; + u8 lmax; + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x308, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x30A, "GXInitTexObjLOD"); + + if (lod_bias < -4.0f) { + lod_bias = -4.0f; + } + else if (lod_bias >= 4.0f) { + lod_bias = 3.99f; + } + lbias = 32.0f * lod_bias; + SET_REG_FIELD(0x314, t->mode0, 8, 9, lbias); + ASSERTMSG1LINE(0x317, (u32)mag_filt <= 1, "%s: invalid mag_filt value", "GXInitTexObjLOD"); + SET_REG_FIELD(0x318, t->mode0, 1, 4, (mag_filt == GX_LINEAR) ? 1 : 0); + ASSERTMSG1LINE(0x31B, (u32)min_filt <= 5, "%s: invalid min_filt value", "GXInitTexObjLOD"); + SET_REG_FIELD(0x31C, t->mode0, 3, 5, GX2HWFiltConv[min_filt]); + SET_REG_FIELD(0x31E, t->mode0, 1, 8, do_edge_lod ? 0 : 1); + SET_REG_FIELD(0x321, t->mode0, 1, 17, 0); + SET_REG_FIELD(0x321, t->mode0, 1, 18, 0); + SET_REG_FIELD(0x321, t->mode0, 2, 19, max_aniso); + SET_REG_FIELD(0x322, t->mode0, 1, 21, bias_clamp); + + if (min_lod < 0.0f) { + min_lod = 0.0f; + } + else if (min_lod > 10.0f) { + min_lod = 10.0f; + } + lmin = 16.0f * min_lod; + if (max_lod < 0.0f) { + max_lod = 0.0f; + } + else if (max_lod > 10.0f) { + max_lod = 10.0f; + } + lmax = 16.0f * max_lod; + SET_REG_FIELD(0x330, t->mode1, 8, 0, lmin); + SET_REG_FIELD(0x331, t->mode1, 8, 8, lmax); +} + +void GXInitTexObjData(GXTexObj *obj, void *image_ptr) +{ + u32 imageBase; + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x343, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x345, "GXInitTexObjData"); + ASSERTMSGLINEV(0x348, ((u32)image_ptr & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexObjData", "image"); + imageBase = ((u32)image_ptr >> 5) & 0x01FFFFFF; + SET_REG_FIELD(0x34B, t->image3, 21, 0, imageBase); +} + +void GXInitTexObjWrapMode(GXTexObj *obj, GXTexWrapMode sm, GXTexWrapMode tm) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x35C, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x35E, "GXInitTexObjWrapMode"); + SET_REG_FIELD(0x360, t->mode0, 2, 0, sm); + SET_REG_FIELD(0x361, t->mode0, 2, 2, tm); +} + +void GXInitTexObjTlut(GXTexObj *obj, u32 tlut_name) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x371, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x373, "GXInitTexObjTlut"); + t->tlutName = tlut_name; +} + +void GXInitTexObjFilter(GXTexObj *obj, GXTexFilter min_filt, GXTexFilter mag_filt) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x386, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x388, "GXInitTexObjFilter"); + + ASSERTMSG1LINE(0x38B, (u32)mag_filt <= 1, "%s: invalid mag_filt value", "GXInitTexObjFilter"); + SET_REG_FIELD(0x38C, t->mode0, 1, 4, mag_filt == 1 ? 1 : 0); + + ASSERTMSG1LINE(0x38F, (u32)min_filt <= 5, "%s: invalid min_filt value", "GXInitTexObjFilter"); + SET_REG_FIELD(0x390, t->mode0, 3, 5, GX2HWFiltConv[min_filt]); +} + +void GXInitTexObjMaxLOD(GXTexObj *obj, f32 max_lod) +{ + u8 lmax; + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x3A2, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x3A4, "GXInitTexObjMaxLOD"); + + if (max_lod < 0.0f) { + max_lod = 0.0f; + } + else if (max_lod > 10.0f) { + max_lod = 10.0f; + } + lmax = 16.0f * max_lod; + SET_REG_FIELD(0x3AA, t->mode1, 8, 8, lmax); +} + +void GXInitTexObjMinLOD(GXTexObj *obj, f32 min_lod) +{ + u8 lmin; + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x3BC, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x3BE, "GXInitTexObjMinLOD"); + + if (min_lod < 0.0f) { + min_lod = 0.0f; + } + else if (min_lod > 10.0f) { + min_lod = 10.0f; + } + lmin = 16.0f * min_lod; + SET_REG_FIELD(0x3C4, t->mode1, 8, 0, lmin); +} + +void GXInitTexObjLODBias(GXTexObj *obj, f32 lod_bias) +{ + u8 lbias; // r30 + __GXTexObjInt *t = (__GXTexObjInt *)obj; // r29 + + ASSERTMSGLINE(0x3D6, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x3D8, "GXInitTexObjLODBias"); + + if (lod_bias < -4.0f) { + lod_bias = -4.0f; + } + else if (lod_bias >= 4.0f) { + lod_bias = 3.99f; + } + lbias = 32.0f * lod_bias; + SET_REG_FIELD(0x3DF, t->mode0, 8, 9, lbias); +} + +void GXInitTexObjBiasClamp(GXTexObj *obj, u8 bias_clamp) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; // r30 + + ASSERTMSGLINE(0x3EF, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x3F1, "GXInitTexObjBiasClamp"); + + SET_REG_FIELD(0x3F3, t->mode0, 1, 21, bias_clamp); +} + +void GXInitTexObjEdgeLOD(GXTexObj *obj, u8 do_edge_lod) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; // r30 + + ASSERTMSGLINE(0x403, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x405, "GXInitTexObjEdgeLOD"); + + SET_REG_FIELD(0x407, t->mode0, 1, 8, do_edge_lod ? 0 : 1); +} + +void GXInitTexObjMaxAniso(GXTexObj *obj, GXAnisotropy max_aniso) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; // r30 + + ASSERTMSGLINE(0x417, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x419, "GXInitTexObjMaxAniso"); + + SET_REG_FIELD(0x41B, t->mode0, 2, 19, max_aniso); +} + +void GXInitTexObjUserData(GXTexObj *obj, void *user_data) +{ + __GXTexObjInt *t = (__GXTexObjInt *)obj; + + ASSERTMSGLINE(0x42C, obj, "Texture Object Pointer is null"); + CHECK_GXBEGIN(0x42D, "GXInitTexObjUserData"); + t->userData = user_data; +} + +void *GXGetTexObjUserData(const GXTexObj *obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)obj; + + ASSERTMSGLINE(0x433, obj, "Texture Object Pointer is null"); + return t->userData; +} + +void GXGetTexObjAll( + const GXTexObj *obj, void **image_ptr, u16 *width, u16 *height, GXTexFmt *format, GXTexWrapMode *wrap_s, GXTexWrapMode *wrap_t, u8 *mipmap) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)obj; + + ASSERTMSGLINE(0x447, obj, "Texture Object Pointer is null"); + *image_ptr = (void *)(GET_REG_FIELD(t->image3, 21, 0) << 5); + *width = (u32)GET_REG_FIELD(t->image0, 10, 0) + 1; + *height = (u32)GET_REG_FIELD(t->image0, 10, 10) + 1; + *format = t->fmt; + *wrap_s = GET_REG_FIELD(t->mode0, 2, 0); + *wrap_t = GET_REG_FIELD(t->mode0, 2, 2); + *mipmap = (t->flags & 1) == 1; +} + +void *GXGetTexObjData(const GXTexObj *to) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)to; + + ASSERTMSGLINE(0x454, to, "Texture Object Pointer is null"); + return (void *)(GET_REG_FIELD(t->image3, 21, 0) << 5); +} + +u16 GXGetTexObjWidth(const GXTexObj *to) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)to; + + ASSERTMSGLINE(0x45A, to, "Texture Object Pointer is null"); + return (u32)GET_REG_FIELD(t->image0, 10, 0) + 1; +} + +u16 GXGetTexObjHeight(const GXTexObj *to) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)to; + + ASSERTMSGLINE(0x460, to, "Texture Object Pointer is null"); + return (u32)GET_REG_FIELD(t->image0, 10, 10) + 1; +} + +GXTexFmt GXGetTexObjFmt(const GXTexObj *to) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)to; + + ASSERTMSGLINE(0x466, to, "Texture Object Pointer is null"); + return t->fmt; +} + +GXTexWrapMode GXGetTexObjWrapS(const GXTexObj *to) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)to; + + ASSERTMSGLINE(0x46C, to, "Texture Object Pointer is null"); + return GET_REG_FIELD(t->mode0, 2, 0); +} + +GXTexWrapMode GXGetTexObjWrapT(const GXTexObj *to) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)to; + + ASSERTMSGLINE(0x472, to, "Texture Object Pointer is null"); + return GET_REG_FIELD(t->mode0, 2, 2); +} + +GXBool GXGetTexObjMipMap(const GXTexObj *to) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)to; + + ASSERTMSGLINE(0x478, to, "Texture Object Pointer is null"); + return (t->flags & 1) == 1; +} + +// NONMATCHING +void GXGetTexObjLODAll(const GXTexObj *tex_obj, GXTexFilter *min_filt, GXTexFilter *mag_filt, f32 *min_lod, f32 *max_lod, f32 *lod_bias, + u8 *bias_clamp, u8 *do_edge_lod, GXAnisotropy *max_aniso) +{ + s16 tmp; // r30 + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x48E, tex_obj, "Texture Object Pointer is null"); + *min_filt = HW2GXFiltConv[GET_REG_FIELD(t->mode0, 3, 5)]; + *mag_filt = GET_REG_FIELD(t->mode0, 1, 4); + *min_lod = (u8)t->mode1 / 16.0f; + *max_lod = (u32)GET_REG_FIELD(t->mode1, 8, 8) / 16.0f; + tmp = (s32)GET_REG_FIELD(t->mode0, 8, 9); + *lod_bias = (s8)tmp * 0.03125f; + *bias_clamp = (u32)GET_REG_FIELD(t->mode0, 1, 21); + *do_edge_lod = !GET_REG_FIELD(t->mode0, 1, 8); + *max_aniso = GET_REG_FIELD(t->mode0, 2, 19); +} + +GXTexFilter GXGetTexObjMinFilt(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x49E, tex_obj, "Texture Object Pointer is null"); + return HW2GXFiltConv[GET_REG_FIELD(t->mode0, 3, 5)]; +} + +GXTexFilter GXGetTexObjMagFilt(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4A5, tex_obj, "Texture Object Pointer is null"); + return GET_REG_FIELD(t->mode0, 1, 4); +} + +f32 GXGetTexObjMinLOD(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4AB, tex_obj, "Texture Object Pointer is null"); + return (u32)GET_REG_FIELD(t->mode1, 8, 0) / 16.0f; +} + +f32 GXGetTexObjMaxLOD(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4B1, tex_obj, "Texture Object Pointer is null"); + return (u32)GET_REG_FIELD(t->mode1, 8, 8) / 16.0f; +} + +// NONMATCHING +f32 GXGetTexObjLODBias(const GXTexObj *tex_obj) +{ + s16 tmp; + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4B8, tex_obj, "Texture Object Pointer is null"); + tmp = (s32)GET_REG_FIELD(t->mode0, 8, 9); + return (s8)tmp * 0.03125f; +} + +GXBool GXGetTexObjBiasClamp(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4BF, tex_obj, "Texture Object Pointer is null"); + return (u32)GET_REG_FIELD(t->mode0, 1, 21); +} + +GXBool GXGetTexObjEdgeLOD(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4C5, tex_obj, "Texture Object Pointer is null"); + return !GET_REG_FIELD(t->mode0, 1, 8); +} + +GXAnisotropy GXGetTexObjMaxAniso(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4CB, tex_obj, "Texture Object Pointer is null"); + return GET_REG_FIELD(t->mode0, 2, 19); +} + +u32 GXGetTexObjTlut(const GXTexObj *tex_obj) +{ + const __GXTexObjInt *t = (const __GXTexObjInt *)tex_obj; + + ASSERTMSGLINE(0x4D1, tex_obj, "Texture Object Pointer is null"); + return t->tlutName; +} + +void GXLoadTexObjPreLoaded(GXTexObj *obj, GXTexRegion *region, GXTexMapID id) +{ + __GXTlutRegionInt *tlr; + __GXTexObjInt *t = (__GXTexObjInt *)obj; + __GXTexRegionInt *r = (__GXTexRegionInt *)region; + + ASSERTMSGLINE(0x4E9, obj, "Texture Object Pointer is null"); + ASSERTMSGLINE(0x4E9, region, "TexRegion Object Pointer is null"); + CHECK_GXBEGIN(0x4EB, "GXLoadTexObjPreLoaded"); + ASSERTMSGLINEV(0x4EC, id < 8, "%s: invalid texture map ID", "GXLoadTexObj"); + + SET_REG_FIELD(0x4F7, t->mode0, 8, 24, GXTexMode0Ids[id]); + SET_REG_FIELD(0x4F8, t->mode1, 8, 24, GXTexMode1Ids[id]); + SET_REG_FIELD(0x4F9, t->image0, 8, 24, GXTexImage0Ids[id]); + SET_REG_FIELD(0x4FA, r->image1, 8, 24, GXTexImage1Ids[id]); + SET_REG_FIELD(0x4FB, r->image2, 8, 24, GXTexImage2Ids[id]); + SET_REG_FIELD(0x4FC, t->image3, 8, 24, GXTexImage3Ids[id]); + + GX_WRITE_RAS_REG(t->mode0); + GX_WRITE_RAS_REG(t->mode1); + GX_WRITE_RAS_REG(t->image0); + GX_WRITE_RAS_REG(r->image1); + GX_WRITE_RAS_REG(r->image2); + GX_WRITE_RAS_REG(t->image3); + + if (!(t->flags & 2)) { + ASSERTMSGLINEV(0x507, gx->tlutRegionCallback, "%s: Tex/Tlut Region Callback not set", "GXLoadTexObj/PreLoaded"); + tlr = (__GXTlutRegionInt *)gx->tlutRegionCallback(t->tlutName); + ASSERTMSGLINEV(0x509, tlr, "%s: Tex/Tlut Region Callback returns NULL", "GXLoadTexObj/PreLoaded"); + + SET_REG_FIELD(0x50B, tlr->tlutObj.tlut, 8, 24, GXTexTlutIds[id]); + GX_WRITE_RAS_REG(tlr->tlutObj.tlut); + } + gx->tImage0[id] = t->image0; + gx->tMode0[id] = t->mode0; + gx->dirtyState |= 1; + gx->bpSentNot = 0; +} + +void GXLoadTexObj(GXTexObj *obj, GXTexMapID id) +{ + GXTexRegion *r; + + CHECK_GXBEGIN(0x526, "GXLoadTexObj"); + ASSERTMSGLINEV(0x527, id < 8, "%s: invalid texture map ID", "GXLoadTexObj"); + ASSERTMSGLINEV(0x52C, gx->texRegionCallback, "%s: Tex/Tlut Region Callback not set", "GXLoadTexObj"); + r = gx->texRegionCallback(obj, id); + ASSERTMSGLINEV(0x52E, r, "%s: Tex/Tlut Region Callback returns NULL", "GXLoadTexObj"); + GXLoadTexObjPreLoaded(obj, r, id); +} + +void GXInitTlutObj(GXTlutObj *tlut_obj, void *lut, GXTlutFmt fmt, u16 n_entries) +{ + __GXTlutObjInt *t = (__GXTlutObjInt *)tlut_obj; + + ASSERTMSGLINE(0x546, tlut_obj, "TLut Object Pointer is null"); + CHECK_GXBEGIN(0x547, "GXInitTlutObj"); + ASSERTMSGLINEV(0x54A, n_entries <= 0x4000, "%s: number of entries exceeds maximum", "GXInitTlutObj"); + ASSERTMSGLINEV(0x54C, ((u32)lut & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTlutObj", "Tlut"); + t->tlut = 0; + SET_REG_FIELD(0x54F, t->tlut, 2, 10, fmt); + SET_REG_FIELD(0x550, t->loadTlut0, 21, 0, ((u32)lut & 0x3FFFFFFF) >> 5); + SET_REG_FIELD(0x551, t->loadTlut0, 8, 24, 0x64); + t->numEntries = n_entries; +} + +void GXGetTlutObjAll(const GXTlutObj *tlut_obj, void **data, GXTlutFmt *format, u16 *numEntries) +{ + const __GXTlutObjInt *t = (const __GXTlutObjInt *)tlut_obj; + + ASSERTMSGLINE(0x566, tlut_obj, "TLut Object Pointer is null"); + *data = (void *)(GET_REG_FIELD(t->loadTlut0, 21, 0) << 5); + *format = GET_REG_FIELD(t->tlut, 2, 10); + *numEntries = t->numEntries; +} + +void *GXGetTlutObjData(const GXTlutObj *tlut_obj) +{ + const __GXTlutObjInt *t = (const __GXTlutObjInt *)tlut_obj; + + ASSERTMSGLINE(0x56F, tlut_obj, "TLut Object Pointer is null"); + return (void *)(GET_REG_FIELD(t->loadTlut0, 21, 0) << 5); +} + +GXTlutFmt GXGetTlutObjFmt(const GXTlutObj *tlut_obj) +{ + const __GXTlutObjInt *t = (const __GXTlutObjInt *)tlut_obj; + + ASSERTMSGLINE(0x576, tlut_obj, "TLut Object Pointer is null"); + return GET_REG_FIELD(t->tlut, 2, 10); +} + +u16 GXGetTlutObjNumEntries(const GXTlutObj *tlut_obj) +{ + const __GXTlutObjInt *t = (const __GXTlutObjInt *)tlut_obj; + + ASSERTMSGLINE(0x57D, tlut_obj, "TLut Object Pointer is null"); + return t->numEntries; +} + +void GXLoadTlut(GXTlutObj *tlut_obj, u32 tlut_name) +{ + __GXTlutRegionInt *r; + u32 tlut_offset; + __GXTlutObjInt *t = (__GXTlutObjInt *)tlut_obj; + + ASSERTMSGLINE(0x598, tlut_obj, "TLut Object Pointer is null"); + CHECK_GXBEGIN(0x59A, "GXLoadTlut"); + ASSERTMSGLINEV(0x59B, gx->tlutRegionCallback, "%s: Tex/Tlut Region Callback not set", "GXLoadTlut"); + r = (__GXTlutRegionInt *)gx->tlutRegionCallback(tlut_name); + ASSERTMSGLINEV(0x59D, r, "%s: Tex/Tlut Region Callback returns NULL", "GXLoadTlut"); + __GXFlushTextureState(); + GX_WRITE_RAS_REG(t->loadTlut0); + GX_WRITE_RAS_REG(r->loadTlut1); + __GXFlushTextureState(); + tlut_offset = r->loadTlut1 & 0x3FF; + SET_REG_FIELD(0x5AD, t->tlut, 10, 0, tlut_offset); + r->tlutObj = *t; +} + +void GXInitTexCacheRegion(GXTexRegion *region, u8 is_32b_mipmap, u32 tmem_even, GXTexCacheSize size_even, u32 tmem_odd, GXTexCacheSize size_odd) +{ + u32 WidthExp2; + __GXTexRegionInt *t = (__GXTexRegionInt *)region; + + ASSERTMSGLINE(0x5CC, region, "TexRegion Object Pointer is null"); + CHECK_GXBEGIN(0x5CE, "GXInitTexCacheRegion"); + ASSERTMSGLINEV(0x5D0, (tmem_even & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexCacheRegion", "tmem even"); + ASSERTMSGLINEV(0x5D2, (tmem_odd & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexCacheRegion", "tmem odd"); + switch (size_even) { + case GX_TEXCACHE_32K: + WidthExp2 = 3; + break; + case GX_TEXCACHE_128K: + WidthExp2 = 4; + break; + case GX_TEXCACHE_512K: + WidthExp2 = 5; + break; + default: + ASSERTMSGLINEV(0x5DA, 0, "%s: Invalid %s size", "GXInitTexCacheRegion", "tmem even"); + break; + } + t->image1 = 0; + SET_REG_FIELD(0x5DF, t->image1, 15, 0, tmem_even >> 5); + SET_REG_FIELD(0x5E0, t->image1, 3, 15, WidthExp2); + SET_REG_FIELD(0x5E1, t->image1, 3, 18, WidthExp2); + SET_REG_FIELD(0x5E2, t->image1, 1, 21, 0); + + switch (size_odd) { + case GX_TEXCACHE_32K: + WidthExp2 = 3; + break; + case GX_TEXCACHE_128K: + WidthExp2 = 4; + break; + case GX_TEXCACHE_512K: + WidthExp2 = 5; + break; + case GX_TEXCACHE_NONE: + WidthExp2 = 0; + break; + default: + ASSERTMSGLINEV(0x5EA, 0, "%s: Invalid %s size", "GXInitTexCacheRegion", "tmem odd"); + break; + } + t->image2 = 0; + SET_REG_FIELD(0x5EF, t->image2, 15, 0, tmem_odd >> 5); + SET_REG_FIELD(0x5F0, t->image2, 3, 15, WidthExp2); + SET_REG_FIELD(0x5F1, t->image2, 3, 18, WidthExp2); + t->is32bMipmap = is_32b_mipmap; + t->isCached = 1; +} + +void GXInitTexPreLoadRegion(GXTexRegion *region, u32 tmem_even, u32 size_even, u32 tmem_odd, u32 size_odd) +{ + __GXTexRegionInt *t = (__GXTexRegionInt *)region; + + ASSERTMSGLINE(0x60E, region, "TexRegion Object Pointer is null"); + CHECK_GXBEGIN(0x610, "GXInitTexPreLoadRegion"); + ASSERTMSGLINEV(0x612, (tmem_even & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexPreLoadRegion", "tmem even"); + ASSERTMSGLINEV(0x614, (tmem_odd & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexPreLoadRegion", "tmem odd"); + ASSERTMSGLINEV(0x616, (size_even & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexPreLoadRegion", "size even"); + ASSERTMSGLINEV(0x618, (size_odd & 0x1F) == 0, "%s: %s pointer not aligned to 32B", "GXInitTexPreLoadRegion", "size odd"); + + t->image1 = 0; + SET_REG_FIELD(0x61C, t->image1, 15, 0, tmem_even >> 5); + SET_REG_FIELD(0x61D, t->image1, 3, 15, 0); + SET_REG_FIELD(0x61E, t->image1, 3, 18, 0); + SET_REG_FIELD(0x61F, t->image1, 1, 21, 1); + + t->image2 = 0; + SET_REG_FIELD(0x622, t->image2, 15, 0, tmem_odd >> 5); + SET_REG_FIELD(0x623, t->image2, 3, 15, 0); + SET_REG_FIELD(0x624, t->image2, 3, 18, 0); + t->is32bMipmap = 0; + t->isCached = 0; + t->sizeEven = (u16)(size_even >> 5U); + t->sizeOdd = (u16)(size_odd >> 5U); +} + +void GXGetTexRegionAll(const GXTexRegion *region, u8 *is_cached, u8 *is_32b_mipmap, u32 *tmem_even, u32 *size_even, u32 *tmem_odd, u32 *size_odd) +{ + const __GXTexRegionInt *t = (const __GXTexRegionInt *)region; + + ASSERTMSGLINE(0x641, region, "TexRegion Object Pointer is null"); + *tmem_even = GET_REG_FIELD(t->image1, 15, 0) << 5; + *tmem_odd = GET_REG_FIELD(t->image2, 15, 0) << 5; + if (t->isCached) { + switch (GET_REG_FIELD(t->image1, 3, 15)) { + case 3: + *size_even = 0x8000; + break; + case 4: + *size_even = 0x20000; + break; + case 5: + *size_even = 0x80000; + break; + default: + *size_even = 0; + break; + } + switch (GET_REG_FIELD(t->image2, 3, 15)) { + case 3: + *size_odd = 0x8000; + break; + case 4: + *size_odd = 0x20000; + break; + case 5: + *size_odd = 0x80000; + break; + default: + *size_odd = 0; + break; + } + } + else { + *size_even = t->sizeEven << 5; + *size_odd = t->sizeOdd << 5; + } + *is_32b_mipmap = t->is32bMipmap; + *is_cached = t->isCached; +} + +void GXInitTlutRegion(GXTlutRegion *region, u32 tmem_addr, GXTlutSize tlut_size) +{ + __GXTlutRegionInt *t = (__GXTlutRegionInt *)region; + + ASSERTMSGLINE(0x674, region, "TLutRegion Object Pointer is null"); + CHECK_GXBEGIN(0x676, "GXInitTlutRegion"); + ASSERTMSGLINEV(0x677, (tmem_addr & 0x1FF) == 0, "%s: tmem pointer is not aligned to 512B", "GXInitTlutRegion"); + ASSERTMSGLINEV(0x678, tlut_size <= 0x400, "%s: tlut size exceeds 16K", "GXInitTlutRegion"); + t->loadTlut1 = 0; + tmem_addr -= 0x80000; + SET_REG_FIELD(0x67C, t->loadTlut1, 10, 0, tmem_addr >> 9); + SET_REG_FIELD(0x67D, t->loadTlut1, 11, 10, tlut_size); + SET_REG_FIELD(0x67E, t->loadTlut1, 8, 24, 0x65); +} + +void GXGetTlutRegionAll(const GXTlutRegion *region, u32 *tmem_addr, GXTlutSize *tlut_size) +{ + const __GXTlutRegionInt *t = (const __GXTlutRegionInt *)region; + + ASSERTMSGLINE(0x692, region, "TLutRegion Object Pointer is null"); + *tmem_addr = (GET_REG_FIELD(t->loadTlut1, 10, 0) << 9) + 0x80000; + *tlut_size = GET_REG_FIELD(t->loadTlut1, 11, 10); +} + +void GXInvalidateTexRegion(GXTexRegion *region) +{ + s32 wle; + s32 hle; + s32 wlo; + s32 hlo; + s32 count; + u32 reg0; + u32 reg1; + __GXTexRegionInt *r = (__GXTexRegionInt *)region; + + ASSERTMSGLINE(0x6A9, region, "TexRegion Object Pointer is null"); + CHECK_GXBEGIN(0x6AB, "GXInvalidateTexRegion"); + + wle = GET_REG_FIELD(r->image1, 3, 15) - 1; + hle = GET_REG_FIELD(r->image1, 3, 18) - 1; + wlo = GET_REG_FIELD(r->image2, 3, 15) - 1; + hlo = GET_REG_FIELD(r->image2, 3, 18) - 1; + if (wle < 0) { + wle = 0; + } + if (hle < 0) { + hle = 0; + } + if (wlo < 0) { + wlo = 0; + } + if (hlo < 0) { + hlo = 0; + } + count = wle + hle; + if (r->is32bMipmap) { + count = wlo + hlo - 2 + count; + } + reg0 = 0; + SET_REG_FIELD(0x6BC, reg0, 9, 0, GET_REG_FIELD(r->image1, 9, 6)); + SET_REG_FIELD(0x6BD, reg0, 4, 9, count); + SET_REG_FIELD(0x6BC, reg0, 8, 24, 0x66); + if (wlo != 0) { + count = wlo + hlo; + if (r->is32bMipmap) { + count = wle + hle - 2 + count; + } + reg1 = 0; + SET_REG_FIELD(0x6C8, reg1, 9, 0, GET_REG_FIELD(r->image2, 9, 6)); + SET_REG_FIELD(0x6C9, reg1, 4, 9, count); + SET_REG_FIELD(0x6CA, reg1, 8, 24, 0x66); + } + __GXFlushTextureState(); + GX_WRITE_RAS_REG(reg0); + if (wlo != 0) { + GX_WRITE_RAS_REG(reg1); + } + __GXFlushTextureState(); + + reg0; + reg1; + r; // needed to match +} + +void GXInvalidateTexAll(void) +{ + u32 reg0; + u32 reg1; + + CHECK_GXBEGIN(0x6DB, "GXInvalidateTexAll"); + reg0 = 0x66001000; + reg1 = 0x66001100; + __GXFlushTextureState(); + GX_WRITE_RAS_REG(reg0); + GX_WRITE_RAS_REG(reg1); + __GXFlushTextureState(); +} + +GXTexRegionCallback GXSetTexRegionCallback(GXTexRegionCallback f) +{ + GXTexRegionCallback oldcb = gx->texRegionCallback; + + gx->texRegionCallback = f; + return oldcb; +} + +GXTlutRegionCallback GXSetTlutRegionCallback(GXTlutRegionCallback f) +{ + GXTlutRegionCallback oldcb = gx->tlutRegionCallback; + + gx->tlutRegionCallback = f; + return oldcb; +} + +void GXPreLoadEntireTexture(GXTexObj *tex_obj, GXTexRegion *region) +{ + u8 isMipMap; + u8 is32bit; + u32 wd; + u32 ht; + u32 maxLevelIndex; + u32 loadImage0; + u32 loadImage1; + u32 loadImage2; + u32 loadImage3; + u32 base; + u32 tmem1; + u32 tmem2; + u32 tmemAR; + u32 tmemGB; + u32 nTiles; + u32 rowTiles; + u32 colTiles; + u32 cmpTiles; + u32 i; + __GXTexObjInt *t = (__GXTexObjInt *)tex_obj; + __GXTexRegionInt *r = (__GXTexRegionInt *)region; + + ASSERTMSGLINE(0x71C, tex_obj, "Texture Object Pointer is null"); + ASSERTMSGLINE(0x71C, region, "TexRegion Object Pointer is null"); + CHECK_GXBEGIN(0x71E, "GXPreLoadEntireTexture"); + isMipMap = (t->flags & 1) == 1; + is32bit = GET_REG_FIELD(t->image0, 4, 20) == 6; + + loadImage0 = 0; + SET_REG_FIELD(0, loadImage0, 8, 24, 0x60); + base = t->image3 & 0x1FFFFF; + SET_REG_FIELD(0x727, loadImage0, 21, 0, base); + + loadImage1 = 0; + SET_REG_FIELD(0, loadImage1, 8, 24, 0x61); + tmem1 = r->image1 & 0x7FFF; + SET_REG_FIELD(0x72D, loadImage1, 15, 0, tmem1); + + loadImage2 = 0; + SET_REG_FIELD(0, loadImage2, 8, 24, 0x62); + tmem2 = r->image2 & 0x7FFF; + SET_REG_FIELD(0x733, loadImage2, 15, 0, tmem2); + + loadImage3 = 0; + SET_REG_FIELD(0, loadImage3, 8, 24, 0x63); + SET_REG_FIELD(0x738, loadImage3, 15, 0, t->loadCnt); + SET_REG_FIELD(0x739, loadImage3, 2, 15, t->loadFmt); + maxLevelIndex = 0; + nTiles = t->loadCnt; + if (isMipMap != 0) { + wd = GET_REG_FIELD(t->image0, 10, 0) + 1; + ht = GET_REG_FIELD(t->image0, 10, 10) + 1; + if (wd > ht) { + maxLevelIndex = (u16)(31 - __cntlzw(wd)); + } + else { + maxLevelIndex = (u16)(31 - __cntlzw(ht)); + } + } + __GXFlushTextureState(); + GX_WRITE_RAS_REG(loadImage0); + GX_WRITE_RAS_REG(loadImage1); + GX_WRITE_RAS_REG(loadImage2); + GX_WRITE_RAS_REG(loadImage3); + if (maxLevelIndex != 0) { + tmemAR = tmem1; + tmemGB = tmem2; + for (i = 0; i < maxLevelIndex; i++) { + if (is32bit != 0) { + base += nTiles * 2; + tmemAR += nTiles; + tmemGB += nTiles; + } + else { + base += nTiles; + if (i & 1) { + tmemGB += nTiles; + } + else { + tmemAR += nTiles; + } + } + tmem1 = (i & 1) ? tmemAR : tmemGB; + tmem2 = (i & 1) ? tmemGB : tmemAR; + __GetImageTileCount(t->fmt, (u16)(wd >> (i + 1)), (u16)(ht >> (i + 1)), &rowTiles, &colTiles, &cmpTiles); + nTiles = rowTiles * colTiles; + SET_REG_FIELD(0x7A5, loadImage0, 21, 0, base); + SET_REG_FIELD(0x7A6, loadImage1, 15, 0, tmem1); + SET_REG_FIELD(0x7A7, loadImage2, 15, 0, tmem2); + SET_REG_FIELD(0x7A8, loadImage3, 15, 0, nTiles); + GX_WRITE_RAS_REG(loadImage0); + GX_WRITE_RAS_REG(loadImage1); + GX_WRITE_RAS_REG(loadImage2); + GX_WRITE_RAS_REG(loadImage3); + } + } + __GXFlushTextureState(); +} + +void GXSetTexCoordScaleManually(GXTexCoordID coord, u8 enable, u16 ss, u16 ts) +{ + CHECK_GXBEGIN(0x7C5, "GXSetTexCoordScaleManually"); + ASSERTMSGLINEV(0x7C7, coord < 8, "%s: bad texcoord specified", "GXSetTexCoordScaleManually"); + gx->tcsManEnab = (gx->tcsManEnab & ~(1 << coord)) | (enable << coord); + if (enable != 0) { + SET_REG_FIELD(0x7CD, gx->suTs0[coord], 16, 0, (u16)(ss - 1)); + SET_REG_FIELD(0x7CE, gx->suTs1[coord], 16, 0, (u16)(ts - 1)); + GX_WRITE_RAS_REG(gx->suTs0[coord]); + GX_WRITE_RAS_REG(gx->suTs1[coord]); + gx->bpSentNot = 0; + } +} + +void GXSetTexCoordCylWrap(GXTexCoordID coord, u8 s_enable, u8 t_enable) +{ + CHECK_GXBEGIN(0x7E7, "GXSetTexCoordCylWrap"); + ASSERTMSGLINEV(0x7E9, coord < 8, "%s: bad texcoord specified", "GXSetTexCoordCylWrap"); + SET_REG_FIELD(0x7EB, gx->suTs0[coord], 1, 17, s_enable); + SET_REG_FIELD(0x7EC, gx->suTs1[coord], 1, 17, t_enable); + if (gx->tcsManEnab & (1 << coord)) { + GX_WRITE_RAS_REG(gx->suTs0[coord]); + GX_WRITE_RAS_REG(gx->suTs1[coord]); + gx->bpSentNot = 0; + } +} + +void GXSetTexCoordBias(GXTexCoordID coord, u8 s_enable, u8 t_enable) +{ + CHECK_GXBEGIN(0x806, "GXSetTexCoordBias"); + ASSERTMSGLINEV(0x808, coord < 8, "%s: bad texcoord specified", "GXSetTexCoordBias"); + SET_REG_FIELD(0x80A, gx->suTs0[coord], 1, 16, s_enable); + SET_REG_FIELD(0x80B, gx->suTs1[coord], 1, 16, t_enable); + if (gx->tcsManEnab & (1 << coord)) { + GX_WRITE_RAS_REG(gx->suTs0[coord]); + GX_WRITE_RAS_REG(gx->suTs1[coord]); + gx->bpSentNot = 0; + } +} + +static void __SetSURegs(u32 tmap, u32 tcoord) +{ + u32 w; + u32 h; + u8 s_bias; + u8 t_bias; + + w = GET_REG_FIELD(gx->tImage0[tmap], 10, 0); + h = GET_REG_FIELD(gx->tImage0[tmap], 10, 10); + SET_REG_FIELD(0x829, gx->suTs0[tcoord], 16, 0, w); + SET_REG_FIELD(0x82A, gx->suTs1[tcoord], 16, 0, h); + s_bias = GET_REG_FIELD(gx->tMode0[tmap], 2, 0) == 1; + t_bias = GET_REG_FIELD(gx->tMode0[tmap], 2, 2) == 1; + SET_REG_FIELD(0x830, gx->suTs0[tcoord], 1, 16, s_bias); + SET_REG_FIELD(0x831, gx->suTs1[tcoord], 1, 16, t_bias); + GX_WRITE_RAS_REG(gx->suTs0[tcoord]); + GX_WRITE_RAS_REG(gx->suTs1[tcoord]); + gx->bpSentNot = 0; +} + +void __GXSetSUTexRegs(void) +{ + u32 nStages; + u32 nIndStages; + u32 i; + u32 map; + u32 tmap; + u32 coord; + u32 *ptref; + + if (gx->tcsManEnab != 0xFF) { + nStages = GET_REG_FIELD(gx->genMode, 4, 10) + 1; + nIndStages = GET_REG_FIELD(gx->genMode, 3, 16); + for (i = 0; i < nIndStages; i++) { + switch (i) { + case 0: + tmap = GET_REG_FIELD(gx->iref, 3, 0); + coord = GET_REG_FIELD(gx->iref, 3, 3); + break; + case 1: + tmap = GET_REG_FIELD(gx->iref, 3, 6); + coord = GET_REG_FIELD(gx->iref, 3, 9); + break; + case 2: + tmap = GET_REG_FIELD(gx->iref, 3, 12); + coord = GET_REG_FIELD(gx->iref, 3, 15); + break; + case 3: + tmap = GET_REG_FIELD(gx->iref, 3, 18); + coord = GET_REG_FIELD(gx->iref, 3, 21); + break; + } + if (!(gx->tcsManEnab & (1 << coord))) { + __SetSURegs(tmap, coord); + } + } + i = 0; + for (i = 0; i < nStages; i++) { + ptref = &gx->tref[i / 2]; + map = gx->texmapId[i]; + tmap = map & 0xFFFFFEFF; + if (i & 1) { + coord = GET_REG_FIELD(*ptref, 3, 15); + } + else { + coord = GET_REG_FIELD(*ptref, 3, 3); + } + if ((tmap != 0xFF) && !(gx->tcsManEnab & (1 << coord)) && (gx->tevTcEnab & (1 << i))) { + __SetSURegs(tmap, coord); + } + } + } +} + +void __GXGetSUTexSize(GXTexCoordID coord, u16 *width, u16 *height) +{ + *width = (u16)gx->suTs0[coord] + 1; + *height = (u16)gx->suTs1[coord] + 1; +} + +void __GXSetTmemConfig(u32 config) +{ + switch (config) { + case 1: + GX_WRITE_RAS_REG(0x8c0d8000); + GX_WRITE_RAS_REG(0x900dc000); + + GX_WRITE_RAS_REG(0x8d0d8800); + GX_WRITE_RAS_REG(0x910dc800); + + GX_WRITE_RAS_REG(0x8e0d9000); + GX_WRITE_RAS_REG(0x920dd000); + + GX_WRITE_RAS_REG(0x8f0d9800); + GX_WRITE_RAS_REG(0x930dd800); + + GX_WRITE_RAS_REG(0xac0da000); + GX_WRITE_RAS_REG(0xb00de000); + + GX_WRITE_RAS_REG(0xad0da800); + GX_WRITE_RAS_REG(0xb10de800); + + GX_WRITE_RAS_REG(0xae0db000); + GX_WRITE_RAS_REG(0xb20df000); + + GX_WRITE_RAS_REG(0xaf0db800); + GX_WRITE_RAS_REG(0xb30df800); + + break; + case 0: + default: + GX_WRITE_RAS_REG(0x8c0d8000); + GX_WRITE_RAS_REG(0x900dc000); + + GX_WRITE_RAS_REG(0x8d0d8400); + GX_WRITE_RAS_REG(0x910dc400); + + GX_WRITE_RAS_REG(0x8e0d8800); + GX_WRITE_RAS_REG(0x920dc800); + + GX_WRITE_RAS_REG(0x8f0d8c00); + GX_WRITE_RAS_REG(0x930dcc00); + + GX_WRITE_RAS_REG(0xac0d9000); + GX_WRITE_RAS_REG(0xb00dd000); + + GX_WRITE_RAS_REG(0xad0d9400); + GX_WRITE_RAS_REG(0xb10dd400); + + GX_WRITE_RAS_REG(0xae0d9800); + GX_WRITE_RAS_REG(0xb20dd800); + + GX_WRITE_RAS_REG(0xaf0d9c00); + GX_WRITE_RAS_REG(0xb30ddc00); + + break; + } +} diff --git a/src/dolphin/gx/GXTransform.c b/src/dolphin/gx/GXTransform.c new file mode 100644 index 00000000..dbe9d5d1 --- /dev/null +++ b/src/dolphin/gx/GXTransform.c @@ -0,0 +1,372 @@ +#include +#include +#include + +#include + +void GXProject(f32 x, f32 y, f32 z, const f32 mtx[3][4], const f32 *pm, const f32 *vp, f32 *sx, f32 *sy, f32 *sz) +{ + Vec peye; + f32 xc; + f32 yc; + f32 zc; + f32 wc; + + ASSERTMSGLINE(0xA8, pm && vp && sx && sy && sz, "GXGet*: invalid null pointer"); + + peye.x = mtx[0][3] + ((mtx[0][2] * z) + ((mtx[0][0] * x) + (mtx[0][1] * y))); + peye.y = mtx[1][3] + ((mtx[1][2] * z) + ((mtx[1][0] * x) + (mtx[1][1] * y))); + peye.z = mtx[2][3] + ((mtx[2][2] * z) + ((mtx[2][0] * x) + (mtx[2][1] * y))); + if (pm[0] == 0.0f) { + xc = (peye.x * pm[1]) + (peye.z * pm[2]); + yc = (peye.y * pm[3]) + (peye.z * pm[4]); + zc = pm[6] + (peye.z * pm[5]); + wc = 1.0f / -peye.z; + } + else { + xc = pm[2] + (peye.x * pm[1]); + yc = pm[4] + (peye.y * pm[3]); + zc = pm[6] + (peye.z * pm[5]); + wc = 1.0f; + } + *sx = (vp[2] / 2.0f) + (vp[0] + (wc * (xc * vp[2] / 2.0f))); + *sy = (vp[3] / 2.0f) + (vp[1] + (wc * (-yc * vp[3] / 2.0f))); + *sz = vp[5] + (wc * (zc * (vp[5] - vp[4]))); +} + +static void WriteProjPS(const register f32 proj[6], register volatile void *dest) +{ + register f32 p01, p23, p45; + + asm { + psq_l p01, 0(proj), 0, 0 + psq_l p23, 8(proj), 0, 0 + psq_l p45, 16(proj), 0, 0 + psq_st p01, 0(dest), 0, 0 + psq_st p23, 0(dest), 0, 0 + psq_st p45, 0(dest), 0, 0 + } +} + +static void __GXSetProjection(void) +{ + u32 reg = 0x00061020; + GX_WRITE_U8(0x10); + GX_WRITE_U32(reg); + GX_WRITE_XF_REG_F(32, gx->projMtx[0]); + GX_WRITE_XF_REG_F(33, gx->projMtx[1]); + GX_WRITE_XF_REG_F(34, gx->projMtx[2]); + GX_WRITE_XF_REG_F(35, gx->projMtx[3]); + GX_WRITE_XF_REG_F(36, gx->projMtx[4]); + GX_WRITE_XF_REG_F(37, gx->projMtx[5]); + GX_WRITE_XF_REG_2(38, gx->projType); +} + +void GXSetProjection(f32 mtx[4][4], GXProjectionType type) +{ + CHECK_GXBEGIN(0x127, "GXSetProjection"); + + gx->projType = type; + gx->projMtx[0] = mtx[0][0]; + gx->projMtx[2] = mtx[1][1]; + gx->projMtx[4] = mtx[2][2]; + gx->projMtx[5] = mtx[2][3]; + if (type == GX_ORTHOGRAPHIC) { + gx->projMtx[1] = mtx[0][3]; + gx->projMtx[3] = mtx[1][3]; + } + else { + gx->projMtx[1] = mtx[0][2]; + gx->projMtx[3] = mtx[1][2]; + } + + __GXSetProjection(); + gx->bpSentNot = 1; +} + +#define qr0 0 + +void GXGetProjectionv(f32 *ptr) +{ + ASSERTMSGLINE(0x172, ptr, "GXGet*: invalid null pointer"); + + ptr[0] = gx->projType; + + ptr[1] = gx->projMtx[0]; + ptr[2] = gx->projMtx[1]; + ptr[3] = gx->projMtx[2]; + ptr[4] = gx->projMtx[3]; + ptr[5] = gx->projMtx[4]; + ptr[6] = gx->projMtx[5]; +} + +static void WriteMTXPS4x3(const register f32 mtx[3][4], register volatile f32 *dest) +{ + register f32 a00_a01; + register f32 a02_a03; + register f32 a10_a11; + register f32 a12_a13; + register f32 a20_a21; + register f32 a22_a23; + + asm { + psq_l a00_a01, 0x00(mtx), 0, qr0 + psq_l a02_a03, 0x08(mtx), 0, qr0 + psq_l a10_a11, 0x10(mtx), 0, qr0 + psq_l a12_a13, 0x18(mtx), 0, qr0 + psq_l a20_a21, 0x20(mtx), 0, qr0 + psq_l a22_a23, 0x28(mtx), 0, qr0 + psq_st a00_a01, 0(dest), 0, qr0 + psq_st a02_a03, 0(dest), 0, qr0 + psq_st a10_a11, 0(dest), 0, qr0 + psq_st a12_a13, 0(dest), 0, qr0 + psq_st a20_a21, 0(dest), 0, qr0 + psq_st a22_a23, 0(dest), 0, qr0 + } +} + +static void WriteMTXPS3x3from3x4(register f32 mtx[3][4], register volatile f32 *dest) +{ + register f32 a00_a01; + register f32 a02_a03; + register f32 a10_a11; + register f32 a12_a13; + register f32 a20_a21; + register f32 a22_a23; + + asm { + psq_l a00_a01, 0x00(mtx), 0, qr0 + lfs a02_a03, 0x08(mtx) + psq_l a10_a11, 0x10(mtx), 0, qr0 + lfs a12_a13, 0x18(mtx) + psq_l a20_a21, 0x20(mtx), 0, qr0 + lfs a22_a23, 0x28(mtx) + psq_st a00_a01, 0(dest), 0, qr0 + stfs a02_a03, 0(dest) + psq_st a10_a11, 0(dest), 0, qr0 + stfs a12_a13, 0(dest) + psq_st a20_a21, 0(dest), 0, qr0 + stfs a22_a23, 0(dest) + } +} + +static void WriteMTXPS4x2(const register f32 mtx[2][4], register volatile f32 *dest) +{ + register f32 a00_a01; + register f32 a02_a03; + register f32 a10_a11; + register f32 a12_a13; + + asm { + psq_l a00_a01, 0x00(mtx), 0, qr0 + psq_l a02_a03, 0x08(mtx), 0, qr0 + psq_l a10_a11, 0x10(mtx), 0, qr0 + psq_l a12_a13, 0x18(mtx), 0, qr0 + psq_st a00_a01, 0(dest), 0, qr0 + psq_st a02_a03, 0(dest), 0, qr0 + psq_st a10_a11, 0(dest), 0, qr0 + psq_st a12_a13, 0(dest), 0, qr0 + } +} + +#pragma peephole off +#pragma dont_inline on +void GXLoadPosMtxImm(f32 mtx[3][4], u32 id) +{ + u32 reg; + u32 addr; + + CHECK_GXBEGIN(0x1FB, "GXLoadPosMtxImm"); + + addr = id * 4; + reg = addr | 0xB0000; + + GX_WRITE_U8(0x10); + GX_WRITE_U32(reg); + WriteMTXPS4x3(mtx, &GXWGFifo.f32); +} + +void GXLoadNrmMtxImm(f32 mtx[3][4], u32 id) +{ + u32 reg; + u32 addr; + + CHECK_GXBEGIN(0x24C, "GXLoadNrmMtxImm"); + + addr = id * 3 + 0x400; + reg = addr | 0x80000; + + GX_WRITE_U8(0x10); + GX_WRITE_U32(reg); + WriteMTXPS3x3from3x4((void *)mtx, &GXWGFifo.f32); +} + +void GXSetCurrentMtx(u32 id) +{ + CHECK_GXBEGIN(0x2C4, "GXSetCurrentMtx"); + SET_REG_FIELD(0x2C8, gx->matIdxA, 6, 0, id); + __GXSetMatrixIndex(GX_VA_PNMTXIDX); +} + +void GXLoadTexMtxImm(f32 mtx[][4], u32 id, GXTexMtxType type) +{ + u32 reg; + u32 addr; + u32 count; + + CHECK_GXBEGIN(0x2E5, "GXLoadTexMtxImm"); + + if (id >= GX_PTTEXMTX0) { + addr = (id - GX_PTTEXMTX0) * 4 + 0x500; + ASSERTMSGLINE(0x2EF, type == GX_MTX3x4, "GXLoadTexMtx: Invalid matrix type"); + } + else { + addr = id * 4; + } + count = (type == GX_MTX2x4) ? 8 : 12; + reg = addr | ((count - 1) << 16); + + GX_WRITE_U8(0x10); + GX_WRITE_U32(reg); + if (type == GX_MTX3x4) { + WriteMTXPS4x3(mtx, &GXWGFifo.f32); + } + else { + WriteMTXPS4x2(mtx, &GXWGFifo.f32); + } +} +#pragma dont_inline reset + +void GXSetViewportJitter(f32 left, f32 top, f32 wd, f32 ht, f32 nearz, f32 farz, u32 field) +{ + f32 sx; + f32 sy; + f32 sz; + f32 ox; + f32 oy; + f32 oz; + f32 zmin; + f32 zmax; + u32 reg; + + CHECK_GXBEGIN(0x387, "GXSetViewport"); // not the correct function name + + if (field == 0) { + top -= 0.5f; + } + sx = wd / 2.0f; + sy = -ht / 2.0f; + ox = 342.0f + (left + (wd / 2.0f)); + oy = 342.0f + (top + (ht / 2.0f)); + zmin = 1.6777215e7f * nearz; + zmax = 1.6777215e7f * farz; + sz = zmax - zmin; + oz = zmax; + gx->vpLeft = left; + gx->vpTop = top; + gx->vpWd = wd; + gx->vpHt = ht; + gx->vpNearz = nearz; + gx->vpFarz = farz; + if (gx->fgRange != 0) { + __GXSetRange(nearz, gx->fgSideX); + } + reg = 0x5101A; + GX_WRITE_U8(0x10); + GX_WRITE_U32(reg); + GX_WRITE_XF_REG_F(26, sx); + GX_WRITE_XF_REG_F(27, sy); + GX_WRITE_XF_REG_F(28, sz); + GX_WRITE_XF_REG_F(29, ox); + GX_WRITE_XF_REG_F(30, oy); + GX_WRITE_XF_REG_F(31, oz); + gx->bpSentNot = 1; +} + +void GXSetViewport(f32 left, f32 top, f32 wd, f32 ht, f32 nearz, f32 farz) +{ + GXSetViewportJitter(left, top, wd, ht, nearz, farz, 1U); +} + +void GXGetViewportv(f32 *vp) +{ + ASSERTMSGLINE(0x3C8, vp, "GXGet*: invalid null pointer"); + + vp[0] = gx->vpLeft; + vp[1] = gx->vpTop; + vp[2] = gx->vpWd; + vp[3] = gx->vpHt; + vp[4] = gx->vpNearz; + vp[5] = gx->vpFarz; +} + +// maybe get it from melee? +void GXSetScissor(u32 left, u32 top, u32 wd, u32 ht) +{ + u32 tp; + u32 lf; + u32 bm; + u32 rt; + + CHECK_GXBEGIN(0x418, "GXSetScissor"); + ASSERTMSGLINE(0x419, left < 1706, "GXSetScissor: Left origin > 1708"); + ASSERTMSGLINE(0x41A, top < 1706, "GXSetScissor: top origin > 1708"); + ASSERTMSGLINE(0x41B, left + wd < 1706, "GXSetScissor: right edge > 1708"); + ASSERTMSGLINE(0x41C, top + ht < 1706, "GXSetScissor: bottom edge > 1708"); + + tp = top + 342; + lf = left + 342; + bm = tp + ht - 1; + rt = lf + wd - 1; + + SET_REG_FIELD(0x423, gx->suScis0, 11, 0, tp); + SET_REG_FIELD(0x424, gx->suScis0, 11, 12, lf); + SET_REG_FIELD(0x426, gx->suScis1, 11, 0, bm); + SET_REG_FIELD(0x427, gx->suScis1, 11, 12, rt); + + GX_WRITE_RAS_REG(gx->suScis0); + GX_WRITE_RAS_REG(gx->suScis1); + gx->bpSentNot = 0; +} + +void GXSetScissorBoxOffset(s32 x_off, s32 y_off) +{ + u32 reg = 0; + u32 hx; + u32 hy; + + CHECK_GXBEGIN(0x45F, "GXSetScissorBoxOffset"); + + ASSERTMSGLINE(0x462, (u32)(x_off + 342) < 2048, "GXSetScissorBoxOffset: Invalid X offset"); + ASSERTMSGLINE(0x464, (u32)(y_off + 342) < 2048, "GXSetScissorBoxOffset: Invalid Y offset"); + + hx = (u32)(x_off + 342) >> 1; + hy = (u32)(y_off + 342) >> 1; + + SET_REG_FIELD(0x469, reg, 10, 0, hx); + SET_REG_FIELD(0x46A, reg, 10, 10, hy); + SET_REG_FIELD(0x46B, reg, 8, 24, 0x59); + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = 0; +} +#pragma peephole on + +void GXSetClipMode(GXClipMode mode) +{ + CHECK_GXBEGIN(0x47F, "GXSetClipMode"); + GX_WRITE_XF_REG(5, mode); + gx->bpSentNot = 1; +} + +void __GXSetMatrixIndex(GXAttr matIdxAttr) +{ + if (matIdxAttr < GX_VA_TEX4MTXIDX) { + GX_WRITE_SOME_REG4(8, 0x30, gx->matIdxA, -12); + GX_WRITE_XF_REG(24, gx->matIdxA); + } + else { + GX_WRITE_SOME_REG4(8, 0x40, gx->matIdxB, -12); + GX_WRITE_XF_REG(25, gx->matIdxB); + } + gx->bpSentNot = 1; +} diff --git a/src/game/kerent.c b/src/game/kerent.c index e872e2ad..f97ccdce 100644 --- a/src/game/kerent.c +++ b/src/game/kerent.c @@ -27,7 +27,7 @@ void PSQUATNormalize(void); void OSTicksToCalendarTime(void); void GXWaitDrawDone(void); void GXProject(void); -void GXSetProjectionv(void); +void GXGetProjectionv(void); void GXGetViewportv(void); void GXPixModeSync(void); void GXSetIndTexOrder(void); @@ -1044,7 +1044,7 @@ extern void _kerjmp_PSQUATNormalize(void); extern void _kerjmp_OSTicksToCalendarTime(void); extern void _kerjmp_GXWaitDrawDone(void); extern void _kerjmp_GXProject(void); -extern void _kerjmp_GXSetProjectionv(void); +extern void _kerjmp_GXGetProjectionv(void); extern void _kerjmp_GXGetViewportv(void); extern void _kerjmp_GXPixModeSync(void); extern void _kerjmp_GXSetIndTexOrder(void); @@ -2093,8 +2093,8 @@ asm void _kerent(void) { b GXWaitDrawDone entry _kerjmp_GXProject b GXProject - entry _kerjmp_GXSetProjectionv - b GXSetProjectionv + entry _kerjmp_GXGetProjectionv + b GXGetProjectionv entry _kerjmp_GXGetViewportv b GXGetViewportv entry _kerjmp_GXPixModeSync From 647465d7a08c79bbe80a300412febda27c3e03b0 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Tue, 31 Dec 2024 01:09:52 -0500 Subject: [PATCH 089/178] complete m424/main --- config/GMPE01_00/rels/m424Dll/splits.txt | 3 +- config/GMPE01_00/rels/m424Dll/symbols.txt | 322 +++++++++--------- configure.py | 2 +- src/REL/m424Dll/main.c | 388 +++++++++++++++++++++- 4 files changed, 551 insertions(+), 164 deletions(-) diff --git a/config/GMPE01_00/rels/m424Dll/splits.txt b/config/GMPE01_00/rels/m424Dll/splits.txt index 464ddcb7..8a0d8259 100644 --- a/config/GMPE01_00/rels/m424Dll/splits.txt +++ b/config/GMPE01_00/rels/m424Dll/splits.txt @@ -12,12 +12,13 @@ REL/executor.c: REL/m424Dll/main.c: .text start:0x000000A0 end:0x00001AB8 .rodata start:0x00000000 end:0x00000090 - .data start:0x00000000 end:0x00000150 + .data start:0x00000000 end:0x000000E0 .bss start:0x00000000 end:0x00000050 REL/m424Dll/map.c: .text start:0x00001AB8 end:0x00002720 .rodata start:0x00000090 end:0x000000F8 + .data start:0x000000E0 end:0x00000150 .bss start:0x00000050 end:0x00000058 REL/m424Dll/ball.c: diff --git a/config/GMPE01_00/rels/m424Dll/symbols.txt b/config/GMPE01_00/rels/m424Dll/symbols.txt index 987485bc..05b78c80 100644 --- a/config/GMPE01_00/rels/m424Dll/symbols.txt +++ b/config/GMPE01_00/rels/m424Dll/symbols.txt @@ -97,168 +97,168 @@ fn_1_CF80 = .text:0x0000CF80; // type:function size:0x90 fn_1_D010 = .text:0x0000D010; // type:function size:0x64 _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:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0xC data:4byte -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 scope:local data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 scope:local data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 scope:local data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 scope:local data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 scope:local data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float lbl_1_data_54 = .data:0x00000054; // type:object size:0xC lbl_1_data_60 = .data:0x00000060; // type:object size:0xC lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC -lbl_1_data_78 = .data:0x00000078; // type:object size:0x23 data:string +lbl_1_data_78 = .data:0x00000078; // type:object size:0x23 scope:local data:string lbl_1_data_9C = .data:0x0000009C; // type:object size:0xC lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xC lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4 @@ -286,7 +286,8 @@ lbl_1_data_36C = .data:0x0000036C; // type:object size:0x20 lbl_1_data_38C = .data:0x0000038C; // type:object size:0x20 lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x19 data:string lbl_1_data_3C5 = .data:0x000003C5; // type:object size:0x5 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 scope:local data:float lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte @@ -295,7 +296,8 @@ lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x8 data:2byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x8 data:2byte lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:4byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 1dd001d7..fc1e350b 100644 --- a/configure.py +++ b/configure.py @@ -1043,7 +1043,7 @@ config.libs = [ Rel( "m424Dll", # Blame it on the Crane objects={ - Object(NonMatching, "REL/m424Dll/main.c"), + Object(MatchingFor("GMPE01_00"), "REL/m424Dll/main.c"), Object(NonMatching, "REL/m424Dll/map.c"), Object(NonMatching, "REL/m424Dll/ball.c"), Object(NonMatching, "REL/m424Dll/claw.c"), diff --git a/src/REL/m424Dll/main.c b/src/REL/m424Dll/main.c index 3402c8e2..ad94798d 100644 --- a/src/REL/m424Dll/main.c +++ b/src/REL/m424Dll/main.c @@ -1,9 +1,19 @@ #include "REL/m424Dll.h" +#include "ext_math.h" +#include "game/audio.h" #include "game/hsfman.h" +#include "game/minigame_seq.h" #include "game/object.h" #include "game/objsub.h" -#include "game/audio.h" +#include "game/wipe.h" + +// STRUCT +typedef struct _M424DllMainStruct { + Vec rot; + Vec center; + f32 zoom; +} M424DllMainStruct; // BSS Process* lbl_1_bss_4C; @@ -11,20 +21,61 @@ s32 lbl_1_bss_48; s32 lbl_1_bss_44; s32 lbl_1_bss_40; s32 lbl_1_bss_3C; +s32 lbl_1_bss_38; // UNUSED s32 lbl_1_bss_34; +s32 lbl_1_bss_30; s32 lbl_1_bss_2C; s16 lbl_1_bss_24[4]; s16 lbl_1_bss_1C[4]; omObjData* lbl_1_bss_18; +omObjData* lbl_1_bss_14; +s32 lbl_1_bss_10; +s32 lbl_1_bss_C; +f32 lbl_1_bss_4[2]; // UNUSED +f32 lbl_1_bss_0; // data +M424DllMainStruct lbl_1_data_0[3] = { + { + { 320.0f, 0.0f, 0.0f }, + { 201.0f, 175.0f, 72.0f }, + 2025.0f + }, + { + { 320.0f, 0.0f, 0.0f }, + { 0.0f, 225.0f, -72.0f }, + 550.0f + }, + { + { 320.0f, 0.0f, 0.0f }, + { 401.0f, 175.0f, 72.0f }, + 625.0f + } +}; Vec lbl_1_data_54 = { 1000.0f, 2000.0f, 1000.0f }; Vec lbl_1_data_60 = { 0.0f, 1.0f, 0.0f }; Vec lbl_1_data_6C = { 0.0f, 0.0f, -450.0f }; // PROTO void fn_1_264(omObjData* object); +void fn_1_41C(omObjData* object); +void fn_1_EE0(omObjData* object); +void fn_1_F40(omObjData* object); void fn_1_FF0(void); +void fn_1_11EC(omObjData* object); +void fn_1_1204(s32, s32, f32); +f32 fn_1_16C0(f32, f32, f32); +void fn_1_1B8C(void); +void fn_1_1AB8(Process*); +f32 fn_1_213C(void); +void fn_1_2720(Process*); +void fn_1_2880(void); +s32 fn_1_8A2C(void); +void fn_1_93F0(Process*); +void fn_1_94A4(void); +s32 fn_1_B888(void); +s32 fn_1_B8AC(void); +s32 fn_1_B924(void); /// FUNCTIONS /// @@ -33,7 +84,7 @@ void ObjectSetup(void) { Process* var_r30; CameraData* var_r29; - OSReport("******* M424ObjectSetup *********"); + OSReport("******* M424ObjectSetup *********\n"); var_r30 = omInitObjMan(0x32, 0x2000); lbl_1_bss_4C = var_r30; omGameSysInit(var_r30); @@ -59,3 +110,336 @@ void ObjectSetup(void) { Hu3DShadowPosSet(&lbl_1_data_54, &lbl_1_data_60, &lbl_1_data_6C); Hu3DBGColorSet(0xFFU, 0xFFU, 0xFFU); } + +Vec lbl_1_data_9C = { 0.0f, 0.0f, 0.0f }; +Vec lbl_1_data_A8 = { -1.0f, -2.0f, -1.0f }; +GXColor lbl_1_data_B4 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_264(omObjData* object) { + s32 var_r31; + s32 var_r30; + s32 var_r29; + + var_r29 = Hu3DGLightCreateV(&lbl_1_data_9C, &lbl_1_data_A8, &lbl_1_data_B4); + Hu3DGLightStaticSet(var_r29, 1); + Hu3DGLightInfinitytSet(var_r29); + + for (var_r31 = 0, var_r30 = 0; var_r31 < 4; var_r31++) { + if (GWPlayerCfg[var_r31].group == 0) { + lbl_1_bss_24[3] = var_r31; + lbl_1_bss_1C[3] = GWPlayerCfg[var_r31].character; + } else { + lbl_1_bss_24[var_r30] = var_r31; + lbl_1_bss_1C[var_r30] = GWPlayerCfg[var_r31].character; + var_r30++; + } + } + if (var_r30 >= 4) { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_24[var_r31] = var_r31; + lbl_1_bss_1C[var_r31] = GWPlayerCfg[var_r31].character; + } + } + fn_1_1AB8(lbl_1_bss_4C); + fn_1_2720(lbl_1_bss_4C); + fn_1_93F0(lbl_1_bss_4C); + object->func = fn_1_41C; +} + +void fn_1_41C(omObjData* object) { + s16 sp16; + s16 sp12; + s16 spE; + s16 spA; + f32 var_f31; + s32 var_r31; + s32 var_r30; + CameraData* var_r29; + + switch (lbl_1_bss_40) { + case 0: + lbl_1_bss_0 += fn_1_213C(); + fn_1_1204(2, 2, var_f31); + if (lbl_1_bss_0 >= 360.0f) { + WipeCreate(1, 0, 0x3C); + var_r29 = &Hu3DCamera[0]; + var_r29->fov = 45.0f; + lbl_1_bss_40 = 1; + lbl_1_bss_3C = 0; + } + break; + case 1: + if (WipeStatGet() == 0) { + lbl_1_bss_40 = 2; + lbl_1_bss_3C = 0; + } + break; + case 2: + if (++lbl_1_bss_3C >= 120.0f) { + lbl_1_bss_48 = MGSeqCreate(3, 0); + lbl_1_bss_40 = 3; + lbl_1_bss_3C = 0; + lbl_1_bss_34 = 0; + } + break; + case 3: + lbl_1_bss_34++; + var_f31 = lbl_1_bss_34 / 60.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + var_f31 = sind((90.0f * (var_f31 * var_f31))); + fn_1_1204(2, 0, var_f31); + if (lbl_1_bss_48 != -1) { + var_r31 = MGSeqStatGet(lbl_1_bss_48); + if (((var_r31 & 0x10) != 0) && (lbl_1_bss_2C == -1)) { + lbl_1_bss_2C = HuAudSeqPlay(0x48); + } + } else { + var_r31 = 0; + } + if ((lbl_1_bss_48 == -1) || (var_r31 == 0)) { + if (lbl_1_bss_34 >= 60.0f) { + lbl_1_bss_48 = -1; + lbl_1_bss_40 = 4; + lbl_1_bss_3C = 0; + lbl_1_bss_34 = 0xE10; + lbl_1_bss_44 = MGSeqCreate(1, lbl_1_bss_34 / 60, -1, -1); + } + } + break; + case 4: + var_r30 = (lbl_1_bss_34 + 0x3B) / 60; + if (var_r30 < 0) { + var_r30 = 0; + } + MGSeqParamSet(lbl_1_bss_44, 1, var_r30); + if ((--lbl_1_bss_34 < -1) || (fn_1_B888() != 0)) { + MGSeqParamSet(lbl_1_bss_44, 2, -1); + lbl_1_bss_44 = -1; + lbl_1_bss_48 = MGSeqCreate(3, 1); + if (lbl_1_bss_2C != -1) { + HuAudSeqFadeOut(lbl_1_bss_2C, 0x64); + } + lbl_1_bss_40 = 5; + lbl_1_bss_3C = 0; + } + break; + case 5: + if ((lbl_1_bss_48 == -1) || ((MGSeqStatGet(lbl_1_bss_48) == 0) && (fn_1_B8AC() != 0) && (fn_1_8A2C() != 0) && (fn_1_213C() <= 0.0f))) { + if (fn_1_B888() != 0) { + lbl_1_bss_30 = 0; + } else { + lbl_1_bss_30 = 1; + } + HuAudAllStop(); + lbl_1_bss_40 = 6; + lbl_1_bss_3C = 0; + } + break; + case 6: + if (lbl_1_bss_30 == 0) { + if (fn_1_B924() != 0) { + lbl_1_bss_40 = 7; + lbl_1_bss_3C = 0; + } + } else { + if (++lbl_1_bss_3C >= 120.0f) { + lbl_1_bss_40 = 7; + lbl_1_bss_3C = 0; + } + } + break; + case 7: + if (lbl_1_bss_30 != 0) { + lbl_1_bss_48 = MGSeqCreate(5, 3, lbl_1_bss_1C[0], lbl_1_bss_1C[1], lbl_1_bss_1C[2], -1); + GWPlayerCoinWinSet(lbl_1_bss_24[0], GWPlayerCoinWinGet(lbl_1_bss_24[0]) + 10); + GWPlayerCoinWinSet(lbl_1_bss_24[1], GWPlayerCoinWinGet(lbl_1_bss_24[1]) + 10); + GWPlayerCoinWinSet(lbl_1_bss_24[2], GWPlayerCoinWinGet(lbl_1_bss_24[2]) + 10); + HuAudSStreamPlay(1); + lbl_1_bss_40 = 8; + lbl_1_bss_34 = 0; + } else { + lbl_1_bss_48 = MGSeqCreate(5, 3, lbl_1_bss_1C[3], -1, -1, -1); + GWPlayerCoinWinSet(lbl_1_bss_24[3], GWPlayerCoinWinGet(lbl_1_bss_24[3]) + 10); + HuAudSStreamPlay(1); + lbl_1_bss_40 = 8; + lbl_1_bss_34 = 0; + } + break; + case 8: + if (lbl_1_bss_30 == 0) { + var_f31 = lbl_1_bss_34 / 60.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + var_f31 = sind(90.0f * (var_f31 * var_f31)); + fn_1_1204(0, 1, var_f31); + } + if (++lbl_1_bss_34 >= 210.0f) { + lbl_1_bss_48 = -1; + lbl_1_bss_40 = 9; + lbl_1_bss_34 = 0; + } + break; + case 9: + WipeCreate(2, 0, 0x3C); + object->func = fn_1_EE0; + break; + } + fn_1_F40(object); +} + +void fn_1_EE0(omObjData* object) { + if (WipeStatGet() == 0) { + Hu3DBGColorSet(0U, 0U, 0U); + fn_1_1B8C(); + fn_1_2880(); + fn_1_94A4(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_F40(omObjData* object) { + s32 var_r30; + + var_r30 = 0; + if ((WipeStatGet() != 0) || (object->func == fn_1_EE0)) { + return; + } + if (omSysExitReq != 0) { + var_r30 = 1; + } + if (var_r30 != 0) { + WipeCreate(2, 0, 0x3C); + HuAudStreamFadeOut(0x1E); + object->func = fn_1_EE0; + } +} + +s32 fn_1_FE0(void) { + return lbl_1_bss_40; +} + +void fn_1_FF0(void) { + omObjData* var_r31; + + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 45.0f, 50.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x280, 0x1E0); + var_r31 = lbl_1_bss_14 = omAddObjEx(lbl_1_bss_4C, 0x7FDA, 0, 0, -1, omOutView); + var_r31->work[0] = 1; + CRot.x = lbl_1_data_0[0].rot.x; + CRot.y = lbl_1_data_0[0].rot.y; + CRot.z = lbl_1_data_0[0].rot.z; + Center.x = lbl_1_data_0[0].center.x; + Center.y = lbl_1_data_0[0].center.y; + Center.z = lbl_1_data_0[0].center.z; + CZoom = lbl_1_data_0[0].zoom; + lbl_1_bss_C = 0; + lbl_1_bss_10 = -1; + omAddObjEx(lbl_1_bss_4C, 0xFF, 0, 0, -1, fn_1_11EC); +} + +void fn_1_11EC(omObjData* object) {} +void fn_1_11F0(void) {} + +s32 fn_1_11F4(void) { + return lbl_1_bss_C; +} + +void fn_1_1204(s32 arg0, s32 arg1, f32 arg2) { + M424DllMainStruct* temp_r30; + M424DllMainStruct* temp_r31; + + temp_r31 = &lbl_1_data_0[arg0]; + temp_r30 = &lbl_1_data_0[arg1]; + CRot.x = fn_1_16C0(arg2, temp_r31->rot.x, temp_r30->rot.x); + CRot.y = fn_1_16C0(arg2, temp_r31->rot.y, temp_r30->rot.y); + CRot.z = fn_1_16C0(arg2, temp_r31->rot.z, temp_r30->rot.z); + Center.x = temp_r31->center.x + (arg2 * (temp_r30->center.x - temp_r31->center.x)); + Center.y = temp_r31->center.y + (arg2 * (temp_r30->center.y - temp_r31->center.y)); + Center.z = temp_r31->center.z + (arg2 * (temp_r30->center.z - temp_r31->center.z)); + CZoom = temp_r31->zoom + (arg2 * (temp_r30->zoom - temp_r31->zoom)); +} + +f32 fn_1_1358(f32 arg8, f32 arg9) { + f32 var_f31; + + if (arg8 >= 360.0f) { + arg8 -= 360.0f; + } else if (arg8 < 0.0f) { + arg8 += 360.0f; + } + if (arg9 >= 360.0f) { + arg9 -= 360.0f; + } else if (arg9 < 0.0f) { + arg9 += 360.0f; + } + var_f31 = arg8 - arg9; + if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } else { + if (var_f31 >= 180.0f) { + var_f31 -= 360.0f; + } + } + return var_f31; +} + +f32 fn_1_1470(f32 arg8, f32 arg9, f32 argA) { + f32 var_f30; + f32 var_f31; + + if (arg8 >= 360.0) { + arg8 -= 360.0; + } else if (arg8 < 0.0) { + arg8 += 360.0; + } + if (arg9 >= 360.0) { + arg9 -= 360.0; + } else if (arg9 < 0.0) { + arg9 += 360.0; + } + var_f30 = (360.0 + (arg8 - arg9)); + if (fabs(var_f30) >= 360.0) { + var_f30 = fmod(var_f30, 360.0); + } + if (var_f30 < 180.0) { + if (var_f30 <= argA) { + var_f31 = var_f30; + } else { + var_f31 = argA; + } + } else { + if ((360.0 - var_f30) <= argA) { + var_f31 = -(360.0 - var_f30); + } else { + var_f31 = -argA; + } + } + var_f31 = var_f31 + arg9; + if (var_f31 >= 360.0) { + var_f31 -= 360.0; + } else if (var_f31 < 0.0) { + var_f31 += 360.0; + } + return var_f31; +} + +f32 fn_1_16C0(f32 arg0, f32 arg1, f32 arg2) { + f32 temp_f24; + f32 var_f23; + + var_f23 = fn_1_1358(arg2, arg1); + temp_f24 = fabs(var_f23 * arg0); + return fn_1_1470(arg2, arg1, temp_f24); +} + +// // @todo move to map.c? +// Vec lbl_1_data_E0 = { 0.0f, 3000.0f, 1.0f }; +// Vec lbl_1_data_EC = { 0.0f, 1.0f, 0.0f }; +// Vec lbl_1_data_F8 = { 0.0f, 0.0f, 0.0f }; From af59d1527b7e1cae85dd7dbb1edcb3c15cdbb9b7 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Tue, 31 Dec 2024 13:15:36 -0500 Subject: [PATCH 090/178] match m424/map --- config/GMPE01_00/rels/m424Dll/symbols.txt | 5 +- configure.py | 2 +- include/REL/m424Dll.h | 21 ++ src/REL/m424Dll/main.c | 24 -- src/REL/m424Dll/map.c | 283 ++++++++++++++++++++++ 5 files changed, 309 insertions(+), 26 deletions(-) create mode 100644 src/REL/m424Dll/map.c diff --git a/config/GMPE01_00/rels/m424Dll/symbols.txt b/config/GMPE01_00/rels/m424Dll/symbols.txt index 05b78c80..ffdf249f 100644 --- a/config/GMPE01_00/rels/m424Dll/symbols.txt +++ b/config/GMPE01_00/rels/m424Dll/symbols.txt @@ -267,7 +267,10 @@ lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC lbl_1_data_EC = .data:0x000000EC; // type:object size:0xC lbl_1_data_F8 = .data:0x000000F8; // type:object size:0xC lbl_1_data_104 = .data:0x00000104; // type:object size:0x7 data:string -lbl_1_data_10C = .data:0x0000010C; // type:object size:0x44 +lbl_1_data_10C = .data:0x0000010C; // type:object size:0x1C +lbl_1_data_128 = .data:0x00000128; // type:object size:0x4 data:byte +lbl_1_data_12C = .data:0x0000012C; // type:object size:0x1C +lbl_1_data_148 = .data:0x00000148; // type:object size:0x8 lbl_1_data_150 = .data:0x00000150; // type:object size:0x2C lbl_1_data_17C = .data:0x0000017C; // type:object size:0x30 jumptable_1_data_1AC = .data:0x000001AC; // type:object size:0x2C scope:local diff --git a/configure.py b/configure.py index f49cd131..126114bd 100644 --- a/configure.py +++ b/configure.py @@ -1044,7 +1044,7 @@ config.libs = [ "m424Dll", # Blame it on the Crane objects={ Object(MatchingFor("GMPE01_00"), "REL/m424Dll/main.c"), - Object(NonMatching, "REL/m424Dll/map.c"), + Object(MatchingFor("GMPE01_00"), "REL/m424Dll/map.c"), Object(NonMatching, "REL/m424Dll/ball.c"), Object(NonMatching, "REL/m424Dll/claw.c"), }, diff --git a/include/REL/m424Dll.h b/include/REL/m424Dll.h index 2739a911..885af5eb 100644 --- a/include/REL/m424Dll.h +++ b/include/REL/m424Dll.h @@ -1 +1,22 @@ #include "dolphin.h" + +#include "game/object.h" + +typedef struct _M424DllMainStruct { + Vec rot; + Vec center; + f32 zoom; +} M424DllMainStruct; // sizeof 1C + +omObjData* fn_1_1AB8(Process*); +void fn_1_1B8C(void); +f32 fn_1_213C(void); +void fn_1_2720(Process*); +void fn_1_2880(void); +s32 fn_1_8A2C(void); +void fn_1_93F0(Process*); +void fn_1_94A4(void); +s32 fn_1_B804(void); +s32 fn_1_B888(void); +s32 fn_1_B8AC(void); +s32 fn_1_B924(void); diff --git a/src/REL/m424Dll/main.c b/src/REL/m424Dll/main.c index ad94798d..00db5d94 100644 --- a/src/REL/m424Dll/main.c +++ b/src/REL/m424Dll/main.c @@ -4,17 +4,9 @@ #include "game/audio.h" #include "game/hsfman.h" #include "game/minigame_seq.h" -#include "game/object.h" #include "game/objsub.h" #include "game/wipe.h" -// STRUCT -typedef struct _M424DllMainStruct { - Vec rot; - Vec center; - f32 zoom; -} M424DllMainStruct; - // BSS Process* lbl_1_bss_4C; s32 lbl_1_bss_48; @@ -65,17 +57,6 @@ void fn_1_FF0(void); void fn_1_11EC(omObjData* object); void fn_1_1204(s32, s32, f32); f32 fn_1_16C0(f32, f32, f32); -void fn_1_1B8C(void); -void fn_1_1AB8(Process*); -f32 fn_1_213C(void); -void fn_1_2720(Process*); -void fn_1_2880(void); -s32 fn_1_8A2C(void); -void fn_1_93F0(Process*); -void fn_1_94A4(void); -s32 fn_1_B888(void); -s32 fn_1_B8AC(void); -s32 fn_1_B924(void); /// FUNCTIONS /// @@ -438,8 +419,3 @@ f32 fn_1_16C0(f32 arg0, f32 arg1, f32 arg2) { temp_f24 = fabs(var_f23 * arg0); return fn_1_1470(arg2, arg1, temp_f24); } - -// // @todo move to map.c? -// Vec lbl_1_data_E0 = { 0.0f, 3000.0f, 1.0f }; -// Vec lbl_1_data_EC = { 0.0f, 1.0f, 0.0f }; -// Vec lbl_1_data_F8 = { 0.0f, 0.0f, 0.0f }; diff --git a/src/REL/m424Dll/map.c b/src/REL/m424Dll/map.c new file mode 100644 index 00000000..7215c532 --- /dev/null +++ b/src/REL/m424Dll/map.c @@ -0,0 +1,283 @@ +#include "REL/m424Dll.h" + +#include "math.h" +#include "game/audio.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" + +// STRUCT +typedef struct _M424DllMapStruct { + f32 unk0; + f32 unk4; + Mtx unk8; + s32 unk38; + f32 unk3C; + s32 unk40; + s32 unk44; + s32 unk48; + s32 unk4C; + s32 unk50; +} M424DllMapStruct; // sizeof 0x54 + +// BSS +Process* lbl_1_bss_54; +omObjData* lbl_1_bss_50; + +// DATA +Vec lbl_1_data_E0 = { 0.0f, 3000.0f, 1.0f }; +Vec lbl_1_data_EC = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_F8 = { 0.0f, 0.0f, 0.0f }; + +// PROTO +void fn_1_1BB8(omObjData*); +void fn_1_1E1C(omObjData*); +void fn_1_2130(omObjData*); +void fn_1_2438(f32); + +omObjData* fn_1_1AB8(Process* arg0) { + lbl_1_bss_54 = arg0; + lbl_1_bss_50 = omAddObjEx(arg0, 0x7F, 6, 0, -1, fn_1_1BB8); + lbl_1_bss_50->data = NULL; + Hu3DShadowCreate(45.0f, 1000.0f, 250000.0f); + Hu3DShadowTPLvlSet(0.3f); + Hu3DShadowPosSet(&lbl_1_data_E0, &lbl_1_data_EC, &lbl_1_data_F8); + return lbl_1_bss_50; +} + +void fn_1_1B8C(void) { + fn_1_2130(lbl_1_bss_50); +} + +void fn_1_1BB8(omObjData* arg0) { + M424DllMapStruct* var_r30; + + var_r30 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x54, 0x10000000); + memset(var_r30, 0, 0x54); + var_r30->unk0 = 0.0f; + var_r30->unk4 = 0.0f; + var_r30->unk38 = -1; + var_r30->unk3C = 0.0f; + var_r30->unk40 = 0; + var_r30->unk44 = -1; + var_r30->unk48 = 0; + var_r30->unk4C = 0; + var_r30->unk50 = -1; + arg0->model[0] = Hu3DModelCreateFile(0x370017); + arg0->model[1] = Hu3DModelCreateFile(0x370018); + arg0->model[2] = Hu3DModelCreateFile(0x370019); + arg0->model[3] = Hu3DModelCreateFile(0x37001A); + arg0->model[4] = Hu3DModelCreateFile(0x37001B); + arg0->model[5] = Hu3DModelCreateFile(0x37001C); + Hu3DModelAttrSet(arg0->model[4], 1); + Hu3DMotionSpeedSet(arg0->model[1], var_r30->unk0); + Hu3DModelAttrSet(arg0->model[1], 0x40000001); + Hu3DMotionSpeedSet(arg0->model[0], 0.15f); + Hu3DModelAttrSet(arg0->model[0], 0x40000001); + Hu3DModelPosSet(arg0->model[2], 847.135f, 0.0f, 424.56f); + Hu3DMotionSpeedSet(arg0->model[4], 2.0f); + Hu3DModelAttrSet(arg0->model[4], 0x40000001); + Hu3DModelShadowMapSet(arg0->model[0]); + Hu3DModelShadowMapSet(arg0->model[1]); + Hu3DModelShadowMapSet(arg0->model[2]); + arg0->func = fn_1_1E1C; +} + +void fn_1_1E1C(omObjData* arg0) { + f32 temp_f31; + M424DllMapStruct* temp_r31; + + temp_r31 = arg0->data; + if (temp_r31->unk40 > 0) { + fn_1_2438(temp_r31->unk3C); + if ((--temp_r31->unk40 <= 0) && (temp_r31->unk44 != -1)) { + HuAudFXStop(temp_r31->unk44); + temp_r31->unk44 = -1; + } + } + switch (fn_1_FE0()) { + case 0: + temp_r31->unk0 = 0.5f; + break; + case 1: + case 2: + temp_r31->unk0 = 0.0f; + break; + case 3: + case 4: + temp_r31->unk0 += 0.001f; + if (temp_r31->unk0 > 0.04f) { + temp_r31->unk0 = 0.04f; + } + if (temp_r31->unk38 != -1) break; + + temp_r31->unk38 = HuAudFXPlay(0x626); + break; + default: + if ((fn_1_B804() == 0) && (fn_1_8A2C() != 0)) { + temp_r31->unk0 *= 0.9f; + if (temp_r31->unk0 < 0.01f) { + temp_r31->unk0 = 0.0f; + } + temp_f31 = temp_r31->unk0 / 0.04f; + if (temp_r31->unk38 != -1) { + HuAudFXVolSet(temp_r31->unk38, (s16) (-8191.0f * (1.0f - temp_f31))); + HuAudFXPitchSet(temp_r31->unk38, (s16) (127.0f * temp_f31)); + if (temp_f31 <= 0.0f) { + HuAudFXStop(temp_r31->unk38); + temp_r31->unk38 = -1; + } + } + } + break; + } + + if (temp_r31->unk48 != 0) { + if (temp_r31->unk4C != 0) { + temp_r31->unk4C = (temp_r31->unk4C - 1); + } else { + temp_r31->unk48 = (temp_r31->unk48 - 1); + if (temp_r31->unk48 != 0) { + Hu3DModelAttrReset(arg0->model[4], 1); + Hu3DModelAttrSet(arg0->model[5], 1); + } else { + Hu3DModelAttrSet(arg0->model[4], 1); + Hu3DModelAttrReset(arg0->model[5], 1); + if (temp_r31->unk50 != -1) { + HuAudFXStop(temp_r31->unk50); + temp_r31->unk50 = -1; + } + } + } + } + temp_r31->unk4 = (20.0f * temp_r31->unk0); + PSMTXRotRad(temp_r31->unk8, 0x59, MTXDegToRad(temp_r31->unk4)); + Hu3DMotionSpeedSet(arg0->model[1], temp_r31->unk0); +} + +void fn_1_2130(omObjData* arg0) { + arg0->func = NULL; +} + +f32 fn_1_213C(void) { + M424DllMapStruct* var_r31; + if (!lbl_1_bss_50) { + return 0.0f; + } + if (!lbl_1_bss_50->data) { + return 0.0f; + } + var_r31 = lbl_1_bss_50->data; + return var_r31->unk4; +} + +void fn_1_21B0(Mtx arg0) { + M424DllMapStruct* var_r31; + if (lbl_1_bss_50 && lbl_1_bss_50->data) { + var_r31 = lbl_1_bss_50->data; + PSMTXCopy(var_r31->unk8, *(Mtx*)&arg0); + } +} + +void fn_1_2220(Vec* arg0, Vec* arg1) { + Vec spC; + M424DllMapStruct* temp_r30; + + if (lbl_1_bss_50 && lbl_1_bss_50->data) { + temp_r30 = lbl_1_bss_50->data; + if (sqrtf((arg0->x * arg0->x) + (arg0->z * arg0->z)) < 700.0f) { + spC.x = (temp_r30->unk8[0][0] * arg0->x) + (temp_r30->unk8[0][2] * arg0->z); + spC.z = (temp_r30->unk8[2][0] * arg0->x) + (temp_r30->unk8[2][2] * arg0->z); + spC.y = arg0->y; + } else { + spC = *arg0; + } + PSVECSubtract(&spC, arg0, &spC); + *arg1 = spC; + } +} + +void fn_1_2438(f32 arg0) { + M424DllMapStruct* spC; + HsfAttribute* var_r31; + ModelData* temp_r30; + HsfData* temp_r29; + s32 var_r28; + HsfBitmap* var_r27; + omObjData* var_r26; + + if (lbl_1_bss_50 && lbl_1_bss_50->data) { + var_r26 = lbl_1_bss_50; + spC = lbl_1_bss_50->data; + temp_r30 = &Hu3DData[var_r26->model[2]]; + temp_r29 = temp_r30->hsfData; + var_r31 = temp_r30->hsfData->attribute; + for (var_r28 = 0; var_r28 < temp_r29->attributeCnt; var_r28++, var_r31++) { + var_r27 = var_r31->bitmap; + if (strcmp("cr_dk2", var_r27->name) == 0) break; + } + if (var_r28 < temp_r29->attributeCnt) { + var_r31->unk30 += arg0; + } + } +} + +void fn_1_252C(f32 arg8, s32 arg0) { + omObjData* sp10; + M424DllMapStruct* temp_r31; + + if (lbl_1_bss_50 && lbl_1_bss_50->data) { + sp10 = lbl_1_bss_50; + temp_r31 = lbl_1_bss_50->data; + temp_r31->unk44 = HuAudFXPlay(0x627); + temp_r31->unk3C = arg8; + temp_r31->unk40 = arg0; + } +} + +f32 fn_1_25C0(void) { + omObjData* sp8; + M424DllMapStruct* temp_r31; + + if (!lbl_1_bss_50) { + return 0.0f; + } + if (!lbl_1_bss_50->data) { + return 0.0f; + } + sp8 = lbl_1_bss_50; + temp_r31 = lbl_1_bss_50->data; + if (temp_r31->unk40 != 0) { + return 250.0f * temp_r31->unk3C; + } + return 0.0f; +} + +void fn_1_2670(s32 arg0, s32 arg1) { + omObjData* temp_r30; + M424DllMapStruct* temp_r31; + + if (lbl_1_bss_50 && lbl_1_bss_50->data) { + temp_r30 = lbl_1_bss_50; + temp_r31 = lbl_1_bss_50->data; + temp_r31->unk50 = HuAudFXPlay(0x629); + temp_r31->unk48 = arg0; + temp_r31->unk4C = arg1; + Hu3DMotionTimeSet(temp_r30->model[4], 0.0f); + } +} + +// UNUSED (guessing types) +M424DllMainStruct lbl_1_data_10C = { + { 0.0f, 0.0f, 5500.0f }, + { -3950.0f, 0.0f, -0.7f }, + 0.6f +}; + +GXColor lbl_1_data_128 = { 0xFF, 0xFF, 0xFF, 0xFF }; +M424DllMainStruct lbl_1_data_12C = { + { 0.0f, 5500.0f, -3950.0f }, + { 0.0f, 1.0f, 0.0f }, + 0.0f +}; + +s32 lbl_1_data_148[2] = {0}; From 15173884ac54d5f12afbf1565baa7f84c66ca573 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 31 Dec 2024 17:41:31 -0800 Subject: [PATCH 091/178] Matched most of m457Dll (1 function left) --- config/GMPE01_00/rels/m457Dll/symbols.txt | 22 +- src/REL/m457Dll/main.c | 1665 +++++++++++++++++++++ 2 files changed, 1676 insertions(+), 11 deletions(-) create mode 100755 src/REL/m457Dll/main.c diff --git a/config/GMPE01_00/rels/m457Dll/symbols.txt b/config/GMPE01_00/rels/m457Dll/symbols.txt index 02f3cb11..05be3e42 100644 --- a/config/GMPE01_00/rels/m457Dll/symbols.txt +++ b/config/GMPE01_00/rels/m457Dll/symbols.txt @@ -52,8 +52,8 @@ lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:4byte -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 data:float lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double @@ -104,9 +104,9 @@ lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x5C lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0xC data:4byte -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0xC data:4byte -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x1 data:byte +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0xC data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0xC data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:byte lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float @@ -126,11 +126,11 @@ lbl_1_data_5C = .data:0x0000005C; // type:object size:0x5C data:4byte lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 -lbl_1_data_148 = .data:0x00000148; // type:object size:0xC +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC data:byte lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C -lbl_1_data_220 = .data:0x00000220; // type:object size:0x6C +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C data:float +lbl_1_data_220 = .data:0x00000220; // type:object size:0x6C data:float lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte @@ -152,7 +152,7 @@ jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 data:string lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 data:string lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte @@ -162,14 +162,14 @@ lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte diff --git a/src/REL/m457Dll/main.c b/src/REL/m457Dll/main.c new file mode 100755 index 00000000..ee748d30 --- /dev/null +++ b/src/REL/m457Dll/main.c @@ -0,0 +1,1665 @@ +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/gamework_data.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/process.h" +#include "game/window.h" +#include "game/wipe.h" + +#include "ext_math.h" + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ s32 unk20; + /* 0x24 */ s32 unk24; + /* 0x28 */ s32 unk28; + /* 0x2C */ s32 unk2C; + /* 0x30 */ s32 unk30; + /* 0x34 */ s32 unk34; + /* 0x38 */ s32 unk38; + /* 0x3C */ s32 unk3C; + /* 0x40 */ s32 unk40; + /* 0x44 */ s32 unk44; + /* 0x48 */ float unk48; + /* 0x4C */ s32 unk4C; +} StructBss68Data; // Size 0x50 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ float unk04[3]; +} StructBss78; // Size 0x10 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ float unk08; + /* 0x0C */ float unk0C; + /* 0x10 */ float unk10; + /* 0x14 */ float unk14; +} StructData28C; // Size 0x18 + +void fn_1_7AE4(omObjData* arg0); + +StructBss78 lbl_1_bss_78[5]; +omObjData* lbl_1_bss_74; +omObjData* lbl_1_bss_70; +omObjData* lbl_1_bss_68[2]; +omObjData* lbl_1_bss_64; +s32 lbl_1_bss_60; +s32 lbl_1_bss_5C; +char lbl_1_bss_58[4]; // unused +s32 lbl_1_bss_54; +s32 lbl_1_bss_50; +Process* lbl_1_bss_4C; +s32 lbl_1_bss_48; +s32 lbl_1_bss_44; +s32 lbl_1_bss_40; +s32 lbl_1_bss_3C; +char lbl_1_bss_38[4]; // unused +float lbl_1_bss_34; +float lbl_1_bss_30; +float lbl_1_bss_2C; +float lbl_1_bss_28; +s32 lbl_1_bss_24; +s32 lbl_1_bss_20; +s32 lbl_1_bss_1C; +s32 lbl_1_bss_18; +s32 lbl_1_bss_14; +s32 lbl_1_bss_10; +char lbl_1_bss_8[8]; // unused +s32 lbl_1_bss_4; +char lbl_1_bss_0[4]; // unused + +s32 lbl_1_data_0[] = { + DATA_MAKE_NUM(DATADIR_M457, 23), + DATA_MAKE_NUM(DATADIR_M457, 22), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_MGCONST, 0), + DATA_MAKE_NUM(DATADIR_M457, 23), + DATA_MAKE_NUM(DATADIR_M457, 22), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_MGCONST, 0), + DATA_MAKE_NUM(DATADIR_M457, 27), + DATA_MAKE_NUM(DATADIR_M457, 28), + DATA_MAKE_NUM(DATADIR_M457, 25), + DATA_MAKE_NUM(DATADIR_M457, 25), + DATA_MAKE_NUM(DATADIR_M457, 25), + DATA_MAKE_NUM(DATADIR_M457, 25), + DATA_MAKE_NUM(DATADIR_M457, 25) +}; + +s32 lbl_1_data_5C[23] = { 0 }; + +s32 lbl_1_data_B8[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 5), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 112), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 111), + DATA_MAKE_NUM(DATADIR_M457, 8), + DATA_MAKE_NUM(DATADIR_M457, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 12), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 13), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 21), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 24) +}; + +u32 lbl_1_data_E8[] = { 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0 }; + +u32 lbl_1_data_118[] = { + DATA_MAKE_NUM(DATADIR_BKOOPA, 8), + DATA_MAKE_NUM(DATADIR_BKOOPA, 10), + 0, + DATA_MAKE_NUM(DATADIR_M457, 31), + DATA_MAKE_NUM(DATADIR_M457, 32), + DATA_MAKE_NUM(DATADIR_M457, 33), + DATA_MAKE_NUM(DATADIR_M457, 34), + DATA_MAKE_NUM(DATADIR_M457, 35), + DATA_MAKE_NUM(DATADIR_M457, 36), + DATA_MAKE_NUM(DATADIR_M457, 37), + DATA_MAKE_NUM(DATADIR_M457, 29), + DATA_MAKE_NUM(DATADIR_M457, 30) +}; + +u8 lbl_1_data_148[12] = { 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1 }; +s32 lbl_1_data_154[12] = { 8, 0, 0, 8, 5, 8, 4, 2, 2, 8, 8, 8 }; +s32 lbl_1_data_184[12] = { 0 }; + +float lbl_1_data_1B4[][3] = { + { 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f }, + { 20.0f, 60.0f, 20.0f }, + { 20.0f, 70.0f, 20.0f }, + { 20.0f, 20.0f, 20.0f }, + { 50.0f, -70.0f, 0.0f }, + { 20.0f, 60.0f, 20.0f }, + { 100.0f, 0.0f, 50.0f }, + { -70.0f, -70.0f, -70.0f } +}; + +float lbl_1_data_220[][3] = { + { 1.5f, 45.0f, 270.0f }, + { 1.7f, 45.0f, 270.0f }, + { 1.8f, 45.0f, 270.0f }, + { 1.6f, 45.0f, 270.0f }, + { 1.7f, 5.0f, 270.0f }, + { 2.0f, -85.0f, 295.0f }, + { 1.8f, 45.0f, 270.0f }, + { 2.0f, 40.0f, 330.0f }, + { 2.25f, -30.0f, 300.0f } +}; + +StructData28C lbl_1_data_28C = { 0 }; + +s16 lbl_1_data_2A4 = -1; +s16 lbl_1_data_2A6 = -1; +s32 lbl_1_data_2A8 = -1; +s32 lbl_1_data_2AC = -1; +s16 lbl_1_data_2B0 = -1; +s32 lbl_1_data_2B4 = -1; +s32 lbl_1_data_2B8 = 600; + +void fn_1_A0(void) { + Center.x += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_RIGHT) != 0) - ((HuPadBtn[0] & PAD_BUTTON_LEFT) != 0)); + Center.z -= 10.0 * (((HuPadBtn[0] & PAD_BUTTON_UP) != 0) - ((HuPadBtn[0] & PAD_BUTTON_DOWN) != 0)); + Center.y += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_Y) != 0) - ((HuPadBtn[0] & PAD_BUTTON_X) != 0)); + CZoom += 25.0 * (((HuPadBtn[0] & PAD_BUTTON_X) != 0) - ((HuPadBtn[0] & PAD_BUTTON_Y) != 0)); + CRot.y += HuPadSubStkX[0] / 16.0; + CRot.x += HuPadSubStkY[0] / -16.0; + print8(64, 392, 1.0f, "%f,%f,%f", Center.x, Center.y, Center.z); + print8(64, 408, 1.0f, "%f,%f,%f", CRot.x, CRot.y, CRot.z); + print8(64, 424, 1.0f, "%f", CZoom); +} + +void fn_1_46C(omObjData* arg0) { + s16 var_r29; + s16 var_r26; + s16 var_r22; + s32 var_r20; + s32 var_r25; + s32 var_r24; + Vec sp104; + float spFC[2]; + float spE8; + float spE4; + float spE0; + float temp_f31; + s32 spDC; + s32 spD8; + s32 sp20; + s32 temp_r19; + s32 temp_r21; + char* var_r18; + StructBss68Data* temp_r31; + StructBss68Data* temp_r28; + ModelData* spD4; + s32 i; + + temp_r31 = arg0->data; + temp_r28 = lbl_1_bss_68[1 - arg0->work[0]]->data; + spE8 = 0.0f; + spE4 = 0.0f; + spE0 = 0.0f; + spDC = 0; + var_r29 = -1; + var_r26 = -1; + var_r22 = -1; + var_r20 = (temp_r31->unk0C == -1) ? 0 + : ((HuPadBtnDown[temp_r31->unk0C] & 0x100) > 0); + var_r25 = (temp_r31->unk0C == -1) ? 0 + : ((HuPadBtnDown[temp_r31->unk0C] & 0x20) > 0); + var_r24 = (temp_r31->unk0C == -1) ? 0 + : ((HuPadBtnDown[temp_r31->unk0C] & 0x40) > 0); + if (temp_r31->unk0C == -1) { + temp_r31->unk3C--; + if (temp_r31->unk3C <= 0) { + if (temp_r31->unk14 == 1) { + var_r20 = 1; + } else { + var_r25 = var_r24 = 1; + } + if (temp_r31->unk14 >= 8 || (temp_r31->unk14 >= 3 && temp_r31->unk18 >= 10)) { + switch (temp_r31->unk10) { + case 0: + temp_r31->unk3C = rand8() % 14 + 4 + + (temp_r31->unk14 != 8 ? 28 - temp_r31->unk18 : 0); + break; + case 1: + temp_r31->unk3C = rand8() % 9 + 4 + + (temp_r31->unk14 != 8 ? 28 - temp_r31->unk18 : 0); + break; + case 2: + temp_r31->unk3C = rand8() % 10 + 12 + + ((temp_r31->unk14 != 8 && temp_r31->unk18 >= 9 && temp_r31->unk18 <= 13) ? 13 - temp_r31->unk18 : 0); + break; + case 3: + temp_r31->unk3C = rand8() % 5 + 4 + + ((temp_r31->unk14 != 8 && temp_r31->unk18 >= 2 && temp_r31->unk18 <= 17) ? 17 - temp_r31->unk18 : 0); + if (temp_r28->unk1C > 0 || temp_r31->unk14 == 7) { + var_r24 = var_r25 = 0; + } + break; + } + } + } + } + if (temp_r31->unk38 == 0) { + var_r24 = 0; + } + if (temp_r31->unk38 == 1) { + var_r25 = 0; + } + if (temp_r31->unk20 > 0) { + var_r20 = 0; + temp_r31->unk20--; + } else if (var_r20 != 0) { + temp_r31->unk20 = 20; + } + if (temp_r31->unk24 > 0) { + var_r24 = 0; + temp_r31->unk24--; + } else if (var_r24 != 0) { + temp_r31->unk24 = 6; + } + if (temp_r31->unk28 > 0) { + var_r25 = 0; + temp_r31->unk28--; + } else if (var_r25 != 0) { + temp_r31->unk28 = 6; + } + if (lbl_1_bss_5C == 1008 && temp_r31->unk14 >= 8 && temp_r31->unk14 <= 14) { + spD8 = temp_r31->unk30; + if (var_r24 != 0) { + temp_r31->unk30 -= 7; + } + if (var_r25 != 0) { + temp_r31->unk30 -= 7; + } + if (spD8 > 0 && temp_r31->unk30 <= 0) { + temp_r31->unk30 = -1; + temp_r31->unk4C = 1; + } + } + if (lbl_1_bss_20 == 0 && lbl_1_bss_5C == 1008 && temp_r31->unk14 >= 7 && temp_r31->unk14 <= 14 && (var_r24 != 0 || var_r25 != 0)) { + temp_r31->unk38 = (var_r24 != 0) ? 0 + : (var_r25 != 0) ? 1 : 0; + } + if (temp_r31->unk00 == 0) { + lbl_1_bss_68[0]->trans.x -= temp_r31->unk48; + lbl_1_bss_68[1]->trans.x -= temp_r28->unk48; + } + switch (lbl_1_bss_5C) { + case 1001: + if (lbl_1_bss_60 == 0) { + Hu3DModelAttrReset(arg0->model[0], HU3D_ATTR_DISPOFF); + } + if (lbl_1_bss_60 <= 30) { + if (temp_r31->unk08 == -1) { + Hu3DMotionTimeSet(arg0->model[0], 138.0f); + } + arg0->trans.y = 2400.0 * (1.0 - lbl_1_bss_60 / 30.0); + } + if (temp_r31->unk08 != -1 && lbl_1_bss_60 == 30) { + var_r29 = 2; + } + if (lbl_1_bss_60 == 40 && temp_r31->unk08 != -1) { + var_r29 = 0; + } + if (lbl_1_bss_60 == 45 && temp_r31->unk08 == -1) { + var_r29 = 0; + Hu3DMotionShiftSet(arg0->model[0], arg0->motion[var_r29], lbl_1_data_184[var_r29], 35.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk40 = var_r29; + } + if (lbl_1_bss_60 == 30) { + lbl_1_data_28C.unk04 += 50; + } + if (lbl_1_bss_60 == 30) { + HuAudFXPlay(0x33D); + } + break; + case 1005: + if (lbl_1_bss_60 == 0) { + var_r29 = 3; + } + if (lbl_1_bss_60 == 70) { + var_r29 = 4; + } + break; + case 1006: + if (lbl_1_bss_60 == 5) { + var_r29 = 5; + } + break; + case 1010: + if (lbl_1_bss_44 == temp_r31->unk00 && lbl_1_bss_60 >= 15) { + if (lbl_1_bss_60 == 15) { + temp_r31->unk14 = 0; + temp_r31->unk18 = 0; + if (temp_r31->unk08 == -1) { + HuAudFXPlay(0x3A); + } + } + var_r29 = 10; + if (arg0->rot.y > 180.0f) { + arg0->rot.y -= 360.0f; + } + arg0->rot.y *= 0.9; + } + if (lbl_1_bss_44 == 2 && lbl_1_bss_60 >= 15) { + if (lbl_1_bss_60 == 15) { + temp_r31->unk14 = 0; + temp_r31->unk18 = 0; + } + var_r29 = 11; + if (arg0->rot.y > 180.0f) { + arg0->rot.y -= 360.0f; + } + arg0->rot.y *= 0.9; + } + break; + } + temp_r31->unk18 += (temp_r31->unk18 < 0x10000); + if (temp_r31->unk14 == 3 || temp_r31->unk14 == 5) { + if (temp_r31->unk18 == 1 && lbl_1_data_2B0 != -1) { + HuWinExCleanup(lbl_1_data_2B0); + lbl_1_data_2B0 = -1; + } + if ((temp_r31->unk14 == 3 && temp_r31->unk18 == 23) || (temp_r31->unk14 == 5 && temp_r31->unk18 == 15)) { + HuWinMesMaxSizeGet(1, spFC, MAKE_MESSID(48, 35)); + if (lbl_1_data_2B0 == -1) { + lbl_1_data_2B0 = HuWinCreate(-10000.0f, 400.0f, spFC[0], spFC[1], 1); + } + HuWinBGTPLvlSet(lbl_1_data_2B0, 0.0f); + HuWinMesSpeedSet(lbl_1_data_2B0, 0); + HuWinMesSet(lbl_1_data_2B0, MAKE_MESSID(48, 35)); + } + } + switch (temp_r31->unk14) { + case 0: + if (lbl_1_bss_5C == 1008) { + temp_r31->unk14 = 1; + temp_r31->unk18 = 0; + } + break; + case 1: + if (temp_r31->unk18 == 1 && temp_r31->unk0C == -1) { + switch (temp_r31->unk10) { + case 0: + temp_r31->unk3C = rand8() % 5 + 15; + break; + case 1: + temp_r31->unk3C = rand8() % 5 + 12; + break; + case 2: + temp_r31->unk3C = rand8() % 5 + 10; + break; + case 3: + temp_r31->unk3C = rand8() % 4 + 9; + break; + } + } + if (var_r20 != 0) { + temp_r31->unk14 = 2; + temp_r31->unk18 = 0; + var_r29 = 6; + arg0->trans.x += (temp_r31->unk00 == 0) ? ((rand8() % 2) * 2 - 1) : 0; + } + break; + case 2: + arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); + break; + case 3: + arg0->trans.x += 4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 >= 23) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 4: + if (temp_r31->unk18 == 1) { + var_r29 = 7; + } + arg0->trans.x += -4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 >= 23) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 5: + arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 >= 15) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 6: + if (temp_r31->unk18 == 1) { + var_r29 = 8; + } + arg0->trans.x += -8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 >= 7) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r26 = 7; + var_r29 = 4; + } + if (temp_r31->unk18 >= 15) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + } + break; + case 8: + if (temp_r31->unk30 == 0) { + var_r26 = 0; + temp_r31->unk14 = 7; + temp_r31->unk18 = 1; + temp_r31->unk34 = 0; + } else { + if (var_r24 == 0 && var_r25 == 0) { + break; + } + temp_r31->unk14 = 9; + temp_r31->unk18 = 0; + var_r26 = 3; + var_r22 = (temp_r31->unk38 == 0 ? 0 : 11) + 5; + var_r29 = 6; + if (lbl_1_bss_20 == 1) { + temp_r31->unk38 = (var_r24 != 0) ? 0 + : (var_r25 != 0) ? 1 : 0; + } + break; + } + /* fallthrough */ + case 7: + if (temp_r31->unk18 == 1) { + s32 sp1B4[] = { + 0x12A, 0x16A, 0x1AA, + 0x1EA, 0x22A, 0x26A, + 0x2AA, 0x2EA, 0x03B + }; + HuAudFXPlay(sp1B4[temp_r31->unk08 == -1 ? 8 : temp_r31->unk08]); + var_r29 = 9; + temp_r31->unk4C = 0; + } + if (temp_r31->unk30 > 0) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 9: + arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 >= 23) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 12: + if (temp_r31->unk18 == 7) { + var_r26 = 0; + var_r22 = 7; + var_r29 = 7; + } + if (temp_r31->unk18 == 15) { + var_r26 = 5; + var_r29 = 4; + } + if (temp_r31->unk18 >= 20) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 10: + arg0->trans.x += 4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 >= 23) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 11: + arg0->trans.x += -4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 == 1) { + var_r29 = 7; + } + if (temp_r31->unk18 >= 23) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 13: + arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 >= 23) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + var_r29 = 4; + } + break; + case 14: + arg0->trans.x += -8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); + if (temp_r31->unk18 == 1) { + var_r29 = 8; + } + if (temp_r31->unk18 == 11) { + var_r26 = 11; + var_r29 = 4; + } + if (temp_r31->unk18 >= 23) { + temp_r31->unk14 = 8; + temp_r31->unk18 = 0; + } + if (temp_r31->unk34 < 8) { + temp_r31->unk34 = 8; + } + break; + case 15: + if (temp_r31->unk18 == 1 && temp_r31->unk1C > 4) { + temp_r31->unk1C = 4; + } + if (temp_r31->unk18 == 1 && lbl_1_data_2B0 != -1) { + HuWinExCleanup(lbl_1_data_2B0); + lbl_1_data_2B0 = -1; + } + if (temp_r31->unk18 == 7) { + var_r29 = 4; + var_r26 = 20; + } + if (temp_r31->unk18 == 60) { + lbl_1_bss_44 = temp_r31->unk00; + temp_r31->unk1C = 0; + } + break; + case 16: + arg0->trans.x += -39.130432f * (temp_r31->unk00 == 0 ? 1 : -1); + arg0->trans.y += 39.130432f; + if (temp_r31->unk18 == 1) { + s32 sp190[] = { + 0x123, 0x163, 0x1A3, + 0x1E3, 0x223, 0x263, + 0x2A3, 0x2E3, 0x03C + }; + + HuAudFXPlay(sp190[temp_r31->unk08 == -1 ? 8 : temp_r31->unk08]); + var_r29 = 8; + var_r26 = 0; + var_r22 = 6; + } + arg0->rot.z = (temp_r31->unk00 == 0) ? -20 : 20; + break; + case 17: + if (temp_r31->unk18 == 1 && temp_r31->unk1C > 4) { + temp_r31->unk1C = 4; + } + if (temp_r31->unk18 == 1 && lbl_1_data_2B0 != -1) { + HuWinExCleanup(lbl_1_data_2B0); + lbl_1_data_2B0 = -1; + } + if (temp_r31->unk18 == 7) { + var_r29 = 0; + var_r26 = 10; + } + if (temp_r31->unk18 >= 7 && temp_r31->unk18 < 17) { + arg0->trans.x += (temp_r31->unk00 == 0 ? -1 : 1) * 2; + } + if (temp_r31->unk18 == 60) { + lbl_1_bss_44 = 2; + temp_r31->unk1C = 0; + } + break; + } + switch (temp_r31->unk14) { + case 12: + if (temp_r31->unk00 == 0) { + break; + } + /* fallthrough */ + case 3: + case 5: + case 10: + case 13: + temp_r19 = Hu3DMotionTimeGet(arg0->model[0]); + if ((temp_r28->unk14 != 4 && temp_r28->unk14 != 6) || temp_r28->unk18 != 1) { + if ((temp_r19 + 1) % 11 != 0 || (temp_r31->unk14 == 12 && temp_r19 + 1 > 11)) { + break; + } + } + temp_r21 = ((temp_r19 + 1) / 11 - 1) % 2; + { + char sp1D8[][50] = { + "g000mN-itemhook_R", + "g000mN-itemhook_L" + }; + + if (temp_r31->unk08 != -1) { + var_r18 = CharModelHookNameGet(temp_r31->unk08, 1, (temp_r21 % 2 == 0) ? 0 : 1); + } else { + var_r18 = (temp_r21 % 2 == 0) ? sp1D8[0] : sp1D8[1]; + } + } + Hu3DModelObjPosGet(arg0->model[0], var_r18, &sp104); + Hu3DModelPosSet(lbl_1_bss_64->model[temp_r21 + 7], sp104.x + (temp_r31->unk00 == 0 ? 1 : -1) * 50, sp104.y, 75.0f + sp104.z); + Hu3DMotionTimeSet(lbl_1_bss_64->model[temp_r21 + 7], 2.0f); + Hu3DModelAttrReset(lbl_1_bss_64->model[temp_r21 + 7], 1); + if (lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk00 < 3) { + lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk04[lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk00] = 0.0f; + lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk00++; + } + if (fabs(lbl_1_bss_68[1 - temp_r31->unk00]->trans.x) >= 800.0 && (temp_r28->unk14 == 11 || temp_r28->unk14 == 14)) { + temp_r31->unk14 = 15; + temp_r28->unk14 = 16; + temp_r31->unk18 = temp_r28->unk18 = 0; + if (lbl_1_bss_78[4].unk00 < 3) { + lbl_1_bss_78[4].unk04[lbl_1_bss_78[4].unk00] = 0.0f; + lbl_1_bss_78[4].unk00++; + } + if (lbl_1_data_2A8 != -1) { + HuAudSeqFadeOut(lbl_1_data_2A8, 100); + lbl_1_data_2A8 = -1; + } + } + break; + } + temp_r31->unk34++; + if (temp_r31->unk14 != 16 && temp_r31->unk14 != 15 && temp_r31->unk14 != 17 && lbl_1_bss_5C == 1008 && temp_r31->unk34 >= 30 && (temp_r31->unk34 - 30) % 30 == 0) { + temp_r31->unk30 += (temp_r31->unk4C == 0 || temp_r31->unk14 == 7) ? 10 : 0; + } + temp_r31->unk30 = (temp_r31->unk1C > 0 || temp_r31->unk30 >= 100) ? 100 + : (temp_r31->unk30 < 0) ? 0 + : temp_r31->unk30; + for (i = 0; i < 5; i++) { + temp_f31 = (temp_r31->unk30 >= i * 20 + 20) ? 1.0 + : (temp_r31->unk30 <= i * 20) ? 0.0 + : (temp_r31->unk30 - i * 20) / 20.0; + espScaleSet(lbl_1_data_5C[i + (temp_r31->unk00 == 0 ? 2 : 10)], temp_f31, temp_f31); + if (temp_r31->unk1C > 0) { + s32 spF4[] = { 106, 469 }; + s32 spEC[] = { 78, 78 }; + s32 sp150[] = { + 0, 0, -33, -9, 15, 39, 63, -68, + 0, 0, -33, -9, 15, 39, 63, -68 + }; + s32 sp110[] = { + 0, 0, -1, -1, -1, -1, -1, -2, + 0, 0, -1, -1, -1, -1, -1, -2 + }; + + espPosSet(lbl_1_data_5C[i + 18], spF4[temp_r31->unk00] + sp150[i + 2], spEC[temp_r31->unk00] + sp110[i + 2]); + espScaleSet(lbl_1_data_5C[i + 18], + (temp_r31->unk1C % 4 == 0) ? 1.1 : 1.0, + (temp_r31->unk1C % 4 == 0) ? 1.1 : 1.0); + espTPLvlSet(lbl_1_data_5C[i + 18], + (temp_r31->unk1C % 4 < 2) ? 1.0 + : (var_r22 % 4 == 2) ? 0.5 : 0.0); + espDispOn(lbl_1_data_5C[i + 18]); + } else if (temp_r28->unk1C == 0) { + espDispOff(lbl_1_data_5C[i + 18]); + } + } + if (temp_r31->unk1C > 0) { + sp20 = (temp_r31->unk08 != -1) ? temp_r31->unk08 : 8; + Hu3DModelPosSet(lbl_1_bss_64->model[3], + arg0->trans.x + lbl_1_data_220[sp20][1] * (temp_r31->unk00 == 0 ? 1 : -1), + arg0->trans.y + lbl_1_data_220[sp20][2], + 150.0f + arg0->trans.z); + Hu3DModelScaleSet(lbl_1_bss_64->model[3], + 0.75 * lbl_1_data_220[sp20][0], + 0.75 * lbl_1_data_220[sp20][0], + 0.75 * lbl_1_data_220[sp20][0]); + Hu3DModelAttrReset(lbl_1_bss_64->model[3], 1); + Hu3DModelAttrSet(lbl_1_bss_64->model[3], HU3D_ATTR_ZCMP_OFF); + Hu3DModelPosSet(lbl_1_bss_64->model[4], + arg0->trans.x + lbl_1_data_220[sp20][1] * (temp_r31->unk00 == 0 ? 1 : -1), + arg0->trans.y + lbl_1_data_220[sp20][2], + 150.0f + arg0->trans.z); + Hu3DModelScaleSet(lbl_1_bss_64->model[4], + 0.75 * lbl_1_data_220[sp20][0], + 0.75 * lbl_1_data_220[sp20][0], + 0.75 * lbl_1_data_220[sp20][0]); + Hu3DModelAttrReset(lbl_1_bss_64->model[4], 1); + Hu3DModelAttrSet(lbl_1_bss_64->model[4], HU3D_ATTR_ZCMP_OFF); + temp_r31->unk1C--; + if (temp_r31->unk1C == 0) { + HuAudFXStop(lbl_1_data_2B4); + } + } else if (temp_r28->unk1C == 0) { + Hu3DModelAttrSet(lbl_1_bss_64->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(lbl_1_bss_64->model[4], HU3D_ATTR_DISPOFF); + } + if (temp_r31->unk44 >= 0) { + var_r29 = temp_r31->unk44; + } + if (var_r29 >= 0 && var_r29 != temp_r31->unk40) { + if (var_r26 == 0) { + Hu3DMotionSet(arg0->model[0], arg0->motion[var_r29]); + Hu3DMotionTimeSet(arg0->model[0], (var_r22 == -1) ? 0 : var_r22); + } else { + Hu3DMotionShiftSet(arg0->model[0], arg0->motion[var_r29], + (var_r22 != -1) ? var_r22 : lbl_1_data_184[var_r29], + (var_r26 != -1) ? var_r26 : lbl_1_data_154[var_r29], + lbl_1_data_148[var_r29] ? HU3D_MOTATTR_NONE : HU3D_MOTATTR_LOOP); + } + temp_r31->unk40 = var_r29; + } + if (temp_r31->unk00 == 1) { + spD4 = &Hu3DData[arg0->model[0]]; + } +} + +s32 lbl_1_data_33C = -1; +float lbl_1_data_340 = 3500.0f; +float lbl_1_data_344 = 100.0f; +float lbl_1_data_348 = -59.0f; + +void fn_1_2CC4(omObjData* arg0) { + StructBss68Data* sp158[2]; + omObjData* sp150[2]; + StructBss68Data* sp148[2]; + s32 sp140[2]; + omObjData* sp138[2]; + StructBss68Data* sp130[2]; + ModelData* temp_r24; + ModelData* temp_r27; + ModelData* temp_r28; + ModelData* temp_r29; + float spAC; + float spA8; + float spA4; + float temp_f20; + float var_f19; + float temp_f24; + float temp_f23; + float temp_f22; + float var_f21; + float temp_f27; + float temp_f26; + float temp_f25; + float temp_f28; + float temp_f29; + float var_f31; + s32 var_r23; + s32 var_r26; + s32 var_r25; + s32 var_r22; + s32 var_r21; + s32 var_r20; + s32 var_r19; + s32 i; + + for (i = 0; i < 2; i++) { + sp158[i] = lbl_1_bss_68[i]->data; + } + lbl_1_bss_4++; + switch (lbl_1_bss_5C) { + case 1003: + temp_f27 = 1800.0 * (1.0 - lbl_1_bss_60 / 30.0); + temp_f27 = (temp_f27 < 0.0f) ? 0.0f : temp_f27; + Hu3DModelPosSet(lbl_1_bss_64->model[5], 0.0f, temp_f27, 0.0f); + Hu3DModelAttrReset(lbl_1_bss_64->model[5], HU3D_ATTR_DISPOFF); + if (lbl_1_bss_60 == 31) { + HuAudFXPlay(0x5B); + } + if (lbl_1_bss_60 >= 31 && lbl_1_bss_60 <= 38) { + temp_f24 = 1.0 - (lbl_1_bss_60 - 31) / 7.0; + Hu3DModelRotSet(arg0->model[5], 25.0 * (temp_f24 * 0.5 + temp_f24 * temp_f24 * 0.5), 0.0f, 0.0f); + } + break; + case 1002: + if (lbl_1_bss_60 == 0) { + lbl_1_bss_3C = 0; + } + if (lbl_1_bss_60 == 20) { + espAttrReset(lbl_1_data_5C[16], HU3D_ATTR_SHADOW); + } + if ((lbl_1_bss_60 >= 20 && lbl_1_bss_60 <= 50) || (lbl_1_bss_60 >= 180 && lbl_1_bss_60 <= 210)) { + spAC = (lbl_1_bss_60 <= 120) + ? (lbl_1_bss_60 - 20) / 30.0 + : (1.0 - (lbl_1_bss_60 - 180) / 30.0); + espTPLvlSet(lbl_1_data_5C[16], spAC); + } + if (lbl_1_bss_60 == 210) { + espAttrSet(lbl_1_data_5C[16], HU3D_ATTR_SHADOW); + } + break; + case 1006: + if (lbl_1_bss_60 == 0) { + Hu3DMotionSet(arg0->model[5], arg0->motion[2]); + Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_LOOP); + } + if (lbl_1_bss_60 == 15) { + Hu3DModelAttrSet(arg0->model[5], HU3D_MOTATTR_PAUSE); + } + break; + case 1008: + if (lbl_1_bss_60 == 1) { + Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_PAUSE); + for (i = 0; i < 16; i++) { + espDispOn(lbl_1_data_5C[i]); + } + } + if (lbl_1_bss_60 <= 25) { + temp_f28 = lbl_1_bss_60 / 25.0; + temp_f26 = 1.0f - (1.0f - temp_f28) * (1.0f - temp_f28) * (1.0f - temp_f28); + temp_f26 = 0.25 + 1.375 * temp_f26; + temp_f23 = 1.0f - (1.0f - temp_f28) * (1.0f - temp_f28); + temp_f23 = 2.0f * (1.0f - temp_f28); + espAttrReset(lbl_1_data_5C[17], HU3D_ATTR_SHADOW); + espScaleSet(lbl_1_data_5C[17], 0.85 * temp_f26, 0.85 * temp_f26); + espTPLvlSet(lbl_1_data_5C[17], (temp_f23 > 1.0f) ? 1.0f : temp_f23); + } else { + espAttrSet(lbl_1_data_5C[17], HU3D_ATTR_SHADOW); + } + for (i = 0; i < 2; i++) { + sp150[i] = lbl_1_bss_68[i]; + sp148[i] = lbl_1_bss_68[i]->data; + } + for (i = 0; i < 2; i++) { + sp140[i] = (sp148[1 - i]->unk1C > 0) ? 2 + : (sp148[i]->unk14 == 8) ? 2 + : (sp148[i]->unk14 == 1) ? 1 + : (sp148[i]->unk14 == 9) ? (sp148[i]->unk18 >= 0 ? 3 : 2) + : (sp148[i]->unk14 == 2) ? 4 + : (sp148[i]->unk14 == 7) ? 0 : -1; + } + if (sp140[0] >= 0 && sp140[1] >= 0 && fabs(sp150[0]->trans.x - sp150[1]->trans.x) < 300.0) { + sp150[0]->trans.x = (sp148[0]->unk1C > 0) ? sp150[0]->trans.x + : (sp148[1]->unk1C > 0) ? (sp150[1]->trans.x - 300.0f) + : ((sp150[0]->trans.x + sp150[1]->trans.x) / 2.0 - 150.0); + sp150[0]->trans.x = (sp150[0]->trans.x >= 650.0) ? 650.0 + : (sp150[0]->trans.x <= -950.0) ? -950.0 + : sp150[0]->trans.x; + sp150[1]->trans.x = sp150[0]->trans.x + 300.0f; + if (sp140[0] >= 3 || sp140[1] >= 3) { + var_r26 = (sp140[0] >= 3) ? 0 : 1; + var_r25 = 1 - var_r26; + switch (sp140[var_r25]) { + case 4: + if (sp150[var_r26]->trans.x * (var_r26 == 0 ? 1 : -1) < sp150[var_r25]->trans.x * (var_r25 == 0 ? 1 : -1)) { + var_r26 = 1 - var_r26; + var_r25 = 1 - var_r25; + } + sp148[var_r26]->unk14 = 3; + sp148[var_r25]->unk14 = 4; + break; + case 1: + sp148[var_r26]->unk14 = 5; + sp148[var_r25]->unk14 = 6; + break; + case 3: + sp148[var_r26]->unk14 = 12; + sp148[var_r25]->unk14 = 12; + break; + case 2: + sp148[var_r26]->unk14 = 10; + sp148[var_r25]->unk14 = 11; + break; + case 0: + sp148[var_r26]->unk14 = 13; + sp148[var_r25]->unk14 = 14; + break; + } + sp148[0]->unk18 = sp148[1]->unk18 = 0; + } + } + /* fallthrough */ + case 1009: + if (lbl_1_bss_5C != 1008 && lbl_1_bss_40 == 0) { + break; + } + for (i = 0; i < 2; i++) { + sp138[i] = lbl_1_bss_68[i]; + sp130[i] = lbl_1_bss_68[i]->data; + } + switch (lbl_1_bss_18) { + case 0: + if (lbl_1_bss_40 == 0 && lbl_1_bss_18 == 0 && (sp138[0]->trans.x > -150.0f || sp138[1]->trans.x < 150.0f)) { + lbl_1_bss_18 = (-sp138[0]->trans.x < sp138[1]->trans.x ? 1 : 2); + Hu3DModelPosSet(lbl_1_bss_64->model[9], 0.0f, 100.0f, 0.0f); + Hu3DMotionTimeSet(lbl_1_bss_64->model[9], 0.0f); + Hu3DModelAttrReset(lbl_1_bss_64->model[9], HU3D_ATTR_DISPOFF); + if (lbl_1_bss_78[4].unk00 < 3) { + lbl_1_bss_78[4].unk04[lbl_1_bss_78[4].unk00] = 0.0f; + lbl_1_bss_78[4].unk00++; + } + } + if (lbl_1_bss_18 == 0) { + break; + } + /* fallthrough */ + case 1: + case 2: + temp_r27 = &Hu3DData[arg0->model[5]]; + temp_r27->rot.y += (lbl_1_bss_18 == 1 ? 18 : -18); + temp_r27->rot.z = (lbl_1_bss_18 == 1 ? -20 : 20); + temp_r27->pos.x += 5.130000000000001 * (lbl_1_bss_18 == 1 ? 1 : -1); + temp_r27->pos.y += 47.0; + temp_r27->pos.z += -20.0f; + if (temp_r27->pos.y > 1800.0f) { + lbl_1_bss_18 += 2; + } + break; + } + switch (lbl_1_bss_1C) { + case 0: + case 2: + lbl_1_data_2B8 -= (lbl_1_bss_18 >= 3 && sp130[0]->unk14 < 16 && sp130[1]->unk14 < 16); + if (lbl_1_data_2B8 != 0) { + break; + } + Hu3DModelAttrReset(arg0->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(arg0->model[2], + (lbl_1_bss_1C == 0) ? 0.0 : (2.0 * ((rand8() % 256) / 255.0 - 0.5) * 400.0), + 1500.0f, 0.0f); + lbl_1_bss_1C = 1; + /* fallthrough */ + case 1: + temp_r28 = &Hu3DData[arg0->model[2]]; + temp_r28->pos.y -= 10.0f; + if (temp_r28->pos.y <= 225.0f) { + float sp128[] = { 100000000.0f, 100000000.0f }; + + temp_r28->pos.y = (temp_r28->pos.y < 100.0f) ? 100.0f : temp_r28->pos.y; + for (i = 0; i < 2; i++) { + if (fabs(sp138[i]->trans.x + (i == 0 ? 40 : -40) - temp_r28->pos.x) < 180.0) { + sp128[i] = fabs(sp138[i]->trans.x + (i == 0 ? 40 : -40) - temp_r28->pos.x); + } + } + if (sp128[0] != sp128[1]) { + var_r23 = (sp128[0] < sp128[1]) ? 0 : 1; + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + lbl_1_bss_1C = 2; + lbl_1_data_2B8 = 600; + sp130[var_r23]->unk1C = 300; + sp130[var_r23]->unk4C = 0; + if (lbl_1_bss_78[3].unk00 < 3) { + lbl_1_bss_78[3].unk04[lbl_1_bss_78[3].unk00] = 0.0f; + lbl_1_bss_78[3].unk00++; + } + lbl_1_data_2B4 = HuAudFXPlay(0x7E6); + } + } + if (sp130[0]->unk14 >= 16 || sp130[1]->unk14 >= 16 || lbl_1_bss_40 != 0) { + lbl_1_bss_1C = 3; + lbl_1_data_2B8 = 0; + } + if (lbl_1_bss_1C == 1) { + break; + } + /* fallthrough */ + case 3: + lbl_1_data_2B8++; + if (lbl_1_data_2B8 < 60 && lbl_1_data_2B8 % 2 == 0) { + Hu3DModelAttrReset(arg0->model[2], HU3D_ATTR_DISPOFF); + } else { + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + } + break; + } + break; + } + switch (lbl_1_bss_5C) { + case 1009: + if (lbl_1_bss_40 == 0) { + if (lbl_1_bss_60 <= 30) { + Hu3DModelPosSet(lbl_1_bss_64->model[5], 0.0f, (30 - lbl_1_bss_60) * 50 * 0.94, 0.0f); + Hu3DModelRotSet(lbl_1_bss_64->model[5], 0.0f, 0.0f, lbl_1_bss_18 == 3 ? -20 : 20); + Hu3DModelAttrReset(lbl_1_bss_64->model[5], HU3D_ATTR_DISPOFF); + } + if (lbl_1_bss_60 == 30) { + Hu3DMotionSet(arg0->model[5], arg0->motion[0]); + Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_LOOP); + } + if (lbl_1_bss_60 == 30) { + HuAudFXPlay(0x5B); + } + if (lbl_1_bss_60 >= 30 && lbl_1_bss_60 <= 37) { + temp_f22 = 1.0 - (lbl_1_bss_60 - 30) / 7.0; + Hu3DModelRotSet(arg0->model[5], 25.0 * (temp_f22 * 0.5 + temp_f22 * temp_f22 * 0.5), 0.0f, 0.0f); + } + } else if (lbl_1_bss_18 == 0) { + Hu3DMotionSet(lbl_1_bss_64->model[5], arg0->motion[0]); + Hu3DModelAttrReset(lbl_1_bss_64->model[5], HU3D_MOTATTR_LOOP); + } + break; + case 1010: + if (lbl_1_bss_40 == 0) { + if (lbl_1_bss_60 == 1) { + Hu3DMotionSet(arg0->model[5], arg0->motion[3]); + Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_LOOP); + } + temp_r24 = &Hu3DData[arg0->model[5]]; + temp_f20 = (lbl_1_bss_68[lbl_1_bss_44]->trans.x < 0.0f) ? -90 : 90; + temp_r24->rot.y = temp_f20 + 0.8 * (temp_r24->rot.y - temp_f20); + } + break; + } + var_r22 = lbl_1_data_33C; + { + float sp160[][6] = { + { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, + { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 2100.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + { 800.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, + { 1800.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } + }; + + if (lbl_1_bss_44 != -1 && lbl_1_bss_40 == 0) { + sp160[2][1] = lbl_1_bss_68[lbl_1_bss_44]->trans.x; + } + if (lbl_1_data_33C == -1) { + lbl_1_data_33C = 0; + lbl_1_bss_24 = 1; + lbl_1_bss_28 = 1.0f; + } + if (lbl_1_data_33C == 0) { + lbl_1_data_33C = 1; + lbl_1_bss_24 = 1; + lbl_1_bss_28 = 0.5f; + } + if (lbl_1_bss_5C == 1010 && lbl_1_bss_44 != 2 && lbl_1_bss_60 >= 15 && lbl_1_data_33C == 1) { + lbl_1_data_33C = 2; + lbl_1_bss_24 = 0; + lbl_1_bss_28 = 0.0f; + } + if (var_r22 != lbl_1_data_33C && var_r22 != -1) { + lbl_1_data_340 = CZoom; + lbl_1_data_344 = Center.y; + lbl_1_bss_30 = Center.z; + lbl_1_data_348 = CRot.x; + lbl_1_bss_34 = CRot.y; + } + if (lbl_1_bss_28 <= 1.0f) { + if (lbl_1_bss_24 == 0) { + lbl_1_bss_28 = 1.0 - 0.95 * (1.0f - lbl_1_bss_28); + var_f31 = lbl_1_bss_28; + } else { + lbl_1_bss_28 += 0.008333333333333333; + lbl_1_bss_28 = (lbl_1_bss_28 > 1.0f) ? 1.0f : lbl_1_bss_28; + var_f31 = 0.5 + -0.5 * cosd(180.0f * lbl_1_bss_28); + } + lbl_1_bss_28 = (lbl_1_bss_28 > 1.0f) ? 1.0f : lbl_1_bss_28; + CZoom = var_f31 * sp160[lbl_1_data_33C][0] + lbl_1_data_340 * (1.0f - var_f31); + Center.x = var_f31 * sp160[lbl_1_data_33C][1] + lbl_1_bss_2C * (1.0f - var_f31); + Center.y = var_f31 * sp160[lbl_1_data_33C][2] + lbl_1_data_344 * (1.0f - var_f31); + Center.z = var_f31 * sp160[lbl_1_data_33C][3] + lbl_1_bss_30 * (1.0f - var_f31); + CRot.x = var_f31 * sp160[lbl_1_data_33C][4] + lbl_1_data_348 * (1.0f - var_f31); + CRot.y = var_f31 * sp160[lbl_1_data_33C][5] + lbl_1_bss_34 * (1.0f - var_f31); + } + } + if (lbl_1_bss_5C == 1001) { + var_f21 = 0.0f; + temp_f25 = 0.0f; + if (lbl_1_data_28C.unk00 % 2 >= 0) { + lbl_1_data_28C.unk08 = lbl_1_data_28C.unk10; + lbl_1_data_28C.unk0C = lbl_1_data_28C.unk14; + do { + lbl_1_data_28C.unk10 = 2.0 * (rand8() / 255.0) - 1.0; + lbl_1_data_28C.unk14 = 2.0 * (rand8() / 255.0) - 1.0; + lbl_1_data_28C.unk10 = 0.0f; + temp_f29 = (lbl_1_data_28C.unk10 - lbl_1_data_28C.unk08) * (lbl_1_data_28C.unk10 - lbl_1_data_28C.unk08) + (lbl_1_data_28C.unk14 - lbl_1_data_28C.unk0C) * (lbl_1_data_28C.unk14 - lbl_1_data_28C.unk0C); + } while (sqrtf(temp_f29) < 0.75); + } + var_f21 = lbl_1_data_28C.unk08; + temp_f25 = lbl_1_data_28C.unk0C; + var_f21 *= lbl_1_data_28C.unk04 * 2; + temp_f25 *= lbl_1_data_28C.unk04 * 2; + lbl_1_data_28C.unk00 = lbl_1_data_28C.unk00 == 0; + lbl_1_data_28C.unk04 = (lbl_1_data_28C.unk04 > 24) ? 23 + : (lbl_1_data_28C.unk04 - 1 > 0) ? (lbl_1_data_28C.unk04 - 1) : 0; + Center.x = 0.0f; + Center.y = 100.0f + temp_f25; + } + if (lbl_1_bss_5C >= 1008) { + for (i = 0; i < 2; i++) { + temp_r29 = &Hu3DData[lbl_1_bss_68[i]->model[0]]; + var_r21 = (sp158[i]->unk08 != -1) ? sp158[i]->unk08 : 8; + var_r20 = (temp_r29->unk_08 == lbl_1_bss_68[i]->motion[4]) ? 0 + : (temp_r29->unk_08 == lbl_1_bss_68[i]->motion[6]) ? 1 + : (temp_r29->unk_08 == lbl_1_bss_68[i]->motion[7]) ? 2 : -1; + var_r19 = (temp_r29->unk_0C == lbl_1_bss_68[i]->motion[4]) ? 0 + : (temp_r29->unk_0C == lbl_1_bss_68[i]->motion[6]) ? 1 + : (temp_r29->unk_0C == lbl_1_bss_68[i]->motion[7]) ? 2 : -1; + spA8 = (var_r20 == -1) ? 0.0f : lbl_1_data_1B4[var_r21][var_r20]; + spA4 = (var_r19 == -1) ? 0.0f : lbl_1_data_1B4[var_r21][var_r19]; + var_f19 = (temp_r29->unk_0C == -1) ? 0.0f + : (temp_r29->unk_80 == 0.0f) ? 1.0f + : (temp_r29->unk_7C / temp_r29->unk_80); + sp158[i]->unk48 = (i == 0 ? 1 : -1) * (spA8 * (1.0f - var_f19) + spA4 * var_f19); + lbl_1_bss_68[i]->trans.x += sp158[i]->unk48; + Hu3DModelPosSet(lbl_1_bss_68[i]->model[0], lbl_1_bss_68[i]->trans.x, lbl_1_bss_68[i]->trans.y, lbl_1_bss_68[i]->trans.z); + } + } +} + +void fn_1_5500(void) { + StructBss68Data* spC[2]; + s16 sp8; + s16 temp_r31; + s32 i; + + sp8 = 0; + for (i = 0; i < 2; i++) { + spC[i] = lbl_1_bss_68[i]->data; + } + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + HuWinComKeyReset(); + temp_r31 = HuWinExCreateStyled(36.0f, 344.0f, 504, 96, 6, 0); + HuWinBGTPLvlSet(temp_r31, 0.8f); + HuWinMesSpeedSet(temp_r31, 1); + HuWinExAnimIn(temp_r31); + HuWinDisablePlayerSet(temp_r31, 0xF + & ((spC[0]->unk0C != -1) ? ~(1 << spC[0]->unk0C) : 0xF) + & ((spC[1]->unk0C != -1) ? ~(1 << spC[1]->unk0C) : 0xF)); + HuWinMesSet(temp_r31, MAKE_MESSID(48, 31)); + if ((spC[0]->unk0C == -1 || spC[0]->unk08 == -1) && (spC[1]->unk0C == -1 || spC[1]->unk08 == -1)) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + } + HuWinMesWait(temp_r31); + HuWinExAnimOut(temp_r31); + HuWinExCleanup(temp_r31); + lbl_1_bss_10 = 0; + HuPrcEnd(); +} + +void fn_1_5720(void) { + float var_f31; + StructBss68Data* spC[2]; + WindowData* temp_r30; + s16 sp8; + s16 temp_r31; + s32 var_r28; + s32 i; + + sp8 = 0; + for (i = 0; i < 2; i++) { + spC[i] = lbl_1_bss_68[i]->data; + } + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + HuWinComKeyReset(); + temp_r31 = HuWinCreate(215.0f, 100.0f, 130, 37, 1); + HuSprColorSet(winData[temp_r31].group, 0, 0xFF, 0xFF, 0xCC); + HuWinBGTPLvlSet(temp_r31, 0.9f); + temp_r30 = &winData[temp_r31]; + temp_r30->mess_color = 0; + temp_r30->mess_shadow_color = 9; + temp_r30->attr |= 0x80; + for (var_r28 = 15, var_f31 = 0.0f; var_r28 != 0; var_r28--, var_f31 += 0.06666667f) { + HuWinScaleSet(temp_r31, 1.0f, 1.0 * (1.0f - (1.0f - var_f31) * (1.0f - var_f31))); + HuWinPosSet(temp_r31, 215.0f, 100.0 + 37.0 * (1.0f - (1.0f - var_f31) * (1.0f - var_f31)) / -4.0); + HuPrcVSleep(); + } + HuWinScaleSet(temp_r31, 1.0f, 1.0f); + HuWinMesSet(temp_r31, MAKE_MESSID(48, 32)); + HuPrcSleep(60); + HuWinExAnimOut(temp_r31); + HuWinExCleanup(temp_r31); + lbl_1_bss_10 = 0; + HuPrcEnd(); +} + +void fn_1_59BC(omObjData* arg0) { + StructBss68Data* sp14[2]; + float spC[2]; + s32 sp8; + s32 i; + + for (i = 0; i < 5; i++) { + s32 sp1C[] = { 0x7E1, 0x7E2, 0x7E3, 0x7E4, 0x7E5 }; + + if (lbl_1_bss_78[i].unk00 > 3) { + lbl_1_bss_78[i].unk00 = 3; + } + if (lbl_1_bss_78[i].unk00 > 0) { + sp8 = HuAudFXPlay(sp1C[i]); + lbl_1_bss_78[i].unk00--; + } + } + for (i = 0; i < 2; i++) { + sp14[i] = lbl_1_bss_68[i]->data; + } + if (omSysExitReq != 0 && WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_7AE4; + } + switch (lbl_1_bss_5C) { + case 1000: + if (WipeStatGet() == 0) { + lbl_1_bss_5C++; + lbl_1_bss_60 = 0; + } + break; + case 1001: + lbl_1_bss_60++; + if (lbl_1_bss_60 == 60) { + lbl_1_bss_5C = (lbl_1_bss_14 != 0 ? 1002 : 1003); + lbl_1_bss_60 = 0; + } + break; + case 1002: + lbl_1_bss_60++; + if (lbl_1_bss_60 > 210) { + lbl_1_bss_5C++; + lbl_1_bss_60 = 0; + } + break; + case 1003: + lbl_1_bss_60++; + if (lbl_1_bss_60 == 60) { + lbl_1_bss_5C = (lbl_1_bss_14 != 0 ? 1004 : 1005); + lbl_1_bss_60 = 0; + } + break; + case 1004: + if (lbl_1_bss_60 == 0) { + HuPrcChildCreate(fn_1_5500, 100, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_10 = 1; + lbl_1_bss_60++; + } else if (lbl_1_bss_10 == 0) { + lbl_1_bss_60++; + if (sp14[0]->unk14 == 0) { + lbl_1_bss_5C++; + lbl_1_bss_60 = 0; + } + } + break; + case 1005: + lbl_1_bss_60++; + if (lbl_1_bss_60 == 180) { + lbl_1_bss_5C++; + lbl_1_bss_60 = 0; + } + break; + case 1006: + if (lbl_1_bss_60 == 0) { + HuWinMesMaxSizeGet(1, spC, MAKE_MESSID(48, 34)); + lbl_1_data_2B0 = HuWinCreate(-10000.0f, 400.0f, spC[0], spC[1], 1); + HuWinBGTPLvlSet(lbl_1_data_2B0, 0.0f); + HuWinMesSpeedSet(lbl_1_data_2B0, 0); + HuWinMesSet(lbl_1_data_2B0, MAKE_MESSID(48, 34)); + HuPrcChildCreate(fn_1_5720, 100, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_10 = 1; + lbl_1_bss_60++; + } else if (lbl_1_bss_10 == 0) { + lbl_1_bss_60++; + if (sp14[0]->unk14 == 0) { + lbl_1_bss_5C++; + lbl_1_bss_60 = rand8() * 30 % 5 + 60; + } + } else { + lbl_1_bss_60++; + } + break; + case 1007: + lbl_1_bss_60 -= 1; + if (lbl_1_bss_60 <= 0) { + lbl_1_bss_5C++; + lbl_1_bss_60 = 0; + HuAudFXPlay(0x3E); + } + break; + case 1008: + lbl_1_bss_60++; + if (lbl_1_bss_44 != -1) { + lbl_1_bss_5C = 1009; + lbl_1_bss_60 = 0; + break; + } + if (lbl_1_data_2A6 == -1 && lbl_1_bss_60 >= 16200 && sp14[0]->unk14 < 16 && sp14[1]->unk14 < 16) { + lbl_1_data_2A6 = MGSeqTimerCreate(30); + } + if (lbl_1_data_2A6 == -1) { + break; + } + if (sp14[0]->unk14 < 16 && sp14[1]->unk14 < 16) { + MGSeqParamSet(lbl_1_data_2A6, 1, (18059 - lbl_1_bss_60) / 60); + if (lbl_1_bss_60 > 18000) { + MGSeqParamSet(lbl_1_data_2A6, 2, -1); + lbl_1_data_2A6 = -1; + } + } + if (lbl_1_bss_60 > 18000 && sp14[0]->unk14 < 16 && sp14[1]->unk14 < 16) { + lbl_1_bss_5C = 1009; + lbl_1_bss_60 = 0; + lbl_1_bss_40 = 1; + sp14[0]->unk14 = sp14[1]->unk14 = 17; + sp14[0]->unk18 = sp14[1]->unk18 = 0; + MGSeqFinishCreate(); + if (lbl_1_data_2A8 != -1) { + HuAudSeqFadeOut(lbl_1_data_2A8, 100); + lbl_1_data_2A8 = -1; + } + } + break; + case 1009: + if (lbl_1_bss_60 == 1 && lbl_1_data_2A6 != -1) { + MGSeqParamSet(lbl_1_data_2A6, 2, -1); + lbl_1_data_2A6 = -1; + } + lbl_1_bss_60++; + if (lbl_1_bss_60 >= 120) { + lbl_1_bss_5C++; + lbl_1_bss_60 = 0; + } + break; + case 1010: + lbl_1_bss_60++; + if (lbl_1_bss_60 == 15) { + if (lbl_1_bss_44 != 2) { + if (sp14[lbl_1_bss_44]->unk08 != -1) { + HuAudSStreamPlay(1); + } else { + HuAudSStreamPlay(3); + } + if (lbl_1_bss_14 != 0) { + if (lbl_1_bss_44 == 0) { + _SetFlag(FLAG_ID_MAKE(1, 7)); + } + } else { + GWPlayerCoinWinSet(sp14[lbl_1_bss_44]->unk04, 10); + } + } else if (lbl_1_bss_44 == 2) { + HuAudSStreamPlay(4); + } + } + if (225.0f < lbl_1_bss_60) { + if (lbl_1_data_2AC != -1) { + HuAudFXStop(lbl_1_data_2AC); + lbl_1_data_2AC = -1; + } + lbl_1_data_2A4 = -1; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_7AE4; + } + break; + } +} + +void fn_1_64F8(omObjData* arg0) { + StructBss68Data* sp18[2]; + StructBss68Data* temp_r29; + s32 i; + + for (i = 0; i < 2; i++) { + sp18[i] = lbl_1_bss_68[i]->data; + } + arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 14)); + Hu3DModelAttrSet(arg0->model[5], HU3D_MOTATTR_LOOP); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 38)); + Hu3DModelAttrSet(arg0->model[6], HU3D_MOTATTR_LOOP); + Hu3DModelHookSet(arg0->model[5], "g007m0-itemhook_r", arg0->model[6]); + Hu3DModelPosSet(arg0->model[5], 0.0f, 0.0f, 0.0f); + Hu3DModelRotSet(arg0->model[5], 15.0f, 0.0f, 0.0f); + arg0->motion[0] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 39)); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 40)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 41)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 42)); + Hu3DMotionSet(arg0->model[5], arg0->motion[0]); + Hu3DModelLayerSet(arg0->model[6], 2); + Hu3DModelLayerSet(arg0->model[5], 2); + Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelShadowSet(arg0->model[6]); + Hu3DModelShadowSet(arg0->model[5]); + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 16)); + Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(arg0->model[0], 0.1f); + Hu3DModelLayerSet(arg0->model[0], 1); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 17)); + Hu3DModelAttrSet(arg0->model[1], HU3D_MOTATTR_LOOP); + Hu3DModelShadowMapSet(arg0->model[1]); + Hu3DModelLayerSet(arg0->model[1], 1); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 21)); + Hu3DModelAttrSet(arg0->model[2], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(arg0->model[2], 2); + arg0->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 19)); + Hu3DModelAttrSet(arg0->model[3], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(arg0->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(arg0->model[3], 2); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 20)); + Hu3DModelAttrSet(arg0->model[4], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(arg0->model[4], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(arg0->model[4], 4); + for (i = 0; i < 3; i++) { + arg0->model[i + 7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 18)); + Hu3DModelLayerSet(arg0->model[i + 7], 4); + Hu3DModelAttrSet(arg0->model[i + 7], HU3D_ATTR_DISPOFF); + } + for (i = 0; i < 16; i++) { + s32 sp10[] = { 106, 469 }; + s32 sp8[] = { 78, 78 }; + s32 sp60[] = { + 0, 0, -33, -9, 15, 39, 63, -68, + 0, 0, -33, -9, 15, 39, 63, -68 + }; + s32 sp20[] = { + 0, 0, -1, -1, -1, -1, -1, -2, + 0, 0, -1, -1, -1, -1, -1, -2 + }; + + if (lbl_1_data_0[i] == DATA_MAKE_NUM(DATADIR_MGCONST, 0)) { + temp_r29 = lbl_1_bss_68[i == 7 ? 0 : 1]->data; + lbl_1_data_5C[i] = espEntry((temp_r29->unk08 == -1) ? DATA_MAKE_NUM(DATADIR_M457, 26) : (lbl_1_data_0[i] + temp_r29->unk08), 0, 0); + } else { + lbl_1_data_5C[i] = espEntry(lbl_1_data_0[i], 0, 0); + } + espDrawNoSet(lbl_1_data_5C[i], 0); + espDispOff(lbl_1_data_5C[i]); + espAttrSet(lbl_1_data_5C[i], HU3D_ATTR_DISPOFF); + espBankSet(lbl_1_data_5C[i], 0); + espPriSet(lbl_1_data_5C[i], 128 - i); + espPosSet(lbl_1_data_5C[i], sp60[i] + sp10[i < 8 ? 0 : 1], sp20[i] + sp8[i < 8 ? 0 : 1]); + if ((i >= 8 ? i - 8 : i) != 0) { + (void) 1; // Required to match. + } else { + espTPLvlSet(lbl_1_data_5C[i], 0.5f); + espColorSet(lbl_1_data_5C[i], 0, 0, 0); + } + } + for (i = 16; i < 23; i++) { + s32 temp_r28 = i - 16; + s32 spFC[23] = { 288, 288 }; + s32 spA0[23] = { 240, 240 }; + + lbl_1_data_5C[i] = espEntry(lbl_1_data_0[i], 0, 0); + espDrawNoSet(lbl_1_data_5C[i], 0); + espAttrSet(lbl_1_data_5C[i], HU3D_ATTR_DISPOFF | HU3D_ATTR_SHADOW); + espBankSet(lbl_1_data_5C[i], 0); + espPriSet(lbl_1_data_5C[i], 128 - i); + espPosSet(lbl_1_data_5C[i], spFC[temp_r28], spA0[temp_r28]); + espTPLvlSet(lbl_1_data_5C[i], 1.0f); + } + arg0->func = fn_1_2CC4; +} + +void fn_1_6FB0(omObjData* arg0) { + s32 sp14; + StructBss68Data* temp_r31; + StructBss68Data* sp10; + s32 i; + + temp_r31 = arg0->data; + sp10 = lbl_1_bss_68[1 - arg0->work[0]]->data; + memset(temp_r31, 0, sizeof(*temp_r31)); + temp_r31->unk00 = arg0->work[0]; + temp_r31->unk04 = (GWPlayerCfg[0].group == temp_r31->unk00) ? 0 + : (GWPlayerCfg[1].group == temp_r31->unk00) ? 1 + : (GWPlayerCfg[2].group == temp_r31->unk00) ? 2 + : (GWPlayerCfg[3].group == temp_r31->unk00) ? 3 : 4; + sp14 = (GWPlayerCfg[0].group == 1 - temp_r31->unk00) ? 0 + : (GWPlayerCfg[1].group == 1 - temp_r31->unk00) ? 1 + : (GWPlayerCfg[2].group == 1 - temp_r31->unk00) ? 2 + : (GWPlayerCfg[3].group == 1 - temp_r31->unk00) ? 3 : 4; + if (temp_r31->unk04 == 4) { + OSReport("m457:wrong player group\n"); + temp_r31->unk04 = temp_r31->unk00; + } + if (temp_r31->unk00 == 1 && lbl_1_bss_14 != 0) { + temp_r31->unk08 = -1; + temp_r31->unk0C = -1; + temp_r31->unk04 = -1; + temp_r31->unk10 = 1; + } else { + temp_r31->unk08 = GWPlayerCfg[temp_r31->unk04].character; + temp_r31->unk0C = (temp_r31->unk08 == -1 || GWPlayerCfg[temp_r31->unk04].iscom) ? -1 : GWPlayerCfg[temp_r31->unk04].pad_idx; + temp_r31->unk10 = (temp_r31->unk0C != -1) ? 0 : GWPlayerCfg[temp_r31->unk04].diff; + } + temp_r31->unk14 = 0; + temp_r31->unk30 = 100; + temp_r31->unk34 = 0; + temp_r31->unk38 = -1; + temp_r31->unk2C = -1; + temp_r31->unk3C = 10000; + temp_r31->unk40 = 1; + temp_r31->unk44 = -1; + if (temp_r31->unk08 != -1) { + arg0->model[0] = CharModelCreate(temp_r31->unk08, 1); + } else { + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 7)); + } + omSetTra(arg0, 0.0f, temp_r31->unk00 == 0 ? 0 : 300, 0.0f); + if (temp_r31->unk08 != -1) { + omSetSca(arg0, 2.5f, 2.5f, 2.5f); + } else { + omSetSca(arg0, 2.0f, 2.0f, 2.0f); + } + for (i = 0; i < 12; i++) { + if (temp_r31->unk08 != -1) { + arg0->motion[i] = CharModelMotionCreate(temp_r31->unk08, lbl_1_data_B8[i] + (lbl_1_data_E8[i] != 0 ? temp_r31->unk08 : 0)); + } else if (lbl_1_data_118[i] != 0) { + arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_118[i]); + } + } + Hu3DMotionSet(arg0->model[0], arg0->motion[temp_r31->unk40]); + Hu3DMotionTimeSet(arg0->model[0], 10.0f); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(arg0->model[0]); + Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(arg0->model[0], 3); + CharModelLayerSetAll2(4); + arg0->rot.y = temp_r31->unk00 * 180 + 90; + arg0->trans.x = (temp_r31->unk00 == 0 ? -1 : 1) * 300; + arg0->func = fn_1_46C; +} + +void fn_1_75A4(omObjData* arg0) { + lbl_1_bss_5C = 1000; + lbl_1_bss_60 = 0; + lbl_1_bss_54 = 0; + lbl_1_bss_50 = 0; + if (lbl_1_data_2A8 == -1) { + lbl_1_data_2A8 = HuAudSeqPlay(0x4D); + } + lbl_1_data_2AC = HuAudFXPlay(0x6D7); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_59BC; +} + +void ObjectSetup(void) { + omObjData* var_r30; + s32 i; + + OSReport("******* M457 ObjectSetup *********\n"); + lbl_1_bss_4C = omInitObjMan(600, 0x2000); + omGameSysInit(lbl_1_bss_4C); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 25000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + CZoom = 3200.0f; + Center.x = 0.0f; + Center.y = 0.0f; + Center.z = -100.0f; + CRot.x = -30.0f; + CRot.y = 0.0f; + CRot.z = 0.0f; + { + Vec sp3C = { 0.0f, 0.0f, 0.0f }; + Vec sp30 = { 0.25f, -0.75f, -0.45f }; + GXColor sp8 = { 0xFF, 0xFF, 0xFF, 0xFF }; + + lbl_1_bss_48 = Hu3DGLightCreateV(&sp3C, &sp30, &sp8); + } + Hu3DGLightStaticSet(lbl_1_bss_48, 1); + Hu3DGLightInfinitytSet(lbl_1_bss_48); + { + Vec sp24; + Vec sp18; + Vec spC; + + sp24.x = 0.0f; + sp24.y = 10000.0f; + sp24.z = 0.0f; + sp18.x = 0.0f; + sp18.y = 1.0f; + sp18.z = 0.0f; + spC.x = 0.0f; + spC.y = 0.0f; + spC.z = 0.5f; + Hu3DShadowCreate(12.0f, 9000.0f, 10010.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&sp24, &sp18, &spC); + } + Hu3DShadowSizeSet(224); + lbl_1_data_2A4 = -1; + lbl_1_bss_44 = -1; + lbl_1_bss_14 = (_CheckFlag(FLAG_ID_MAKE(1, 0)) != 0); + HuWinInit(1); + lbl_1_bss_64 = omAddObjEx(lbl_1_bss_4C, 101, 10, 4, 1, fn_1_64F8); + for (i = 0; i < 2; i++) { + var_r30 = lbl_1_bss_68[i] = omAddObjEx(lbl_1_bss_4C, 100, 1, 12, 0, fn_1_6FB0); + var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(StructBss68Data), MEMORY_DEFAULT_NUM); + var_r30->work[0] = i; + } + lbl_1_bss_70 = omAddObjEx(lbl_1_bss_4C, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_74 = omAddObjEx(lbl_1_bss_4C, 103, 0, 0, -1, fn_1_75A4); +} + +void fn_1_7AE4(omObjData* arg0) { + StructBss68Data* sp8; + s32 i; + + if (WipeStatGet() == 0) { + for (i = 0; i < 2; i++) { + sp8 = lbl_1_bss_68[i]->data; + } + if (lbl_1_data_2A4 >= 0) { + MGSeqKill(lbl_1_data_2A4); + } + MGSeqKillAll(); + HuAudAllStop(); + omOvlReturnEx(1, 1); + } +} From fce8e6636f5b80aa35bbd63aa38716ffcd7e23e8 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Wed, 1 Jan 2025 18:59:23 +0100 Subject: [PATCH 092/178] Match most of m458Dll --- config/GMPE01_00/rels/m458Dll/symbols.txt | 228 +-- configure.py | 6 +- src/OdemuExi2/DebuggerDriver.c | 3 +- src/REL/m458Dll/main.c | 1615 +++++++++++++++++++++ 4 files changed, 1735 insertions(+), 117 deletions(-) create mode 100644 src/REL/m458Dll/main.c diff --git a/config/GMPE01_00/rels/m458Dll/symbols.txt b/config/GMPE01_00/rels/m458Dll/symbols.txt index 0a2dc8ab..fda69ac1 100644 --- a/config/GMPE01_00/rels/m458Dll/symbols.txt +++ b/config/GMPE01_00/rels/m458Dll/symbols.txt @@ -13,113 +13,113 @@ ObjectSetup = .text:0x0000691C; // type:function size:0x480 fn_1_6D9C = .text:0x00006D9C; // type:function size:0xD0 _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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:0x8 data:double -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:0x8 data:double -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:4byte -lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x94 -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x50 -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:4byte -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x70 -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:4byte -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:4byte -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0xC data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0xC data:4byte -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 scope:local data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:0x8 scope:local data:double +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_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x94 scope:local data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 scope:local data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x50 scope:local data:4byte +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x70 scope:local +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0xC scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0xC scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 data:4byte lbl_1_data_10 = .data:0x00000010; // type:object size:0x28 lbl_1_data_38 = .data:0x00000038; // type:object size:0x28 lbl_1_data_60 = .data:0x00000060; // type:object size:0x28 -lbl_1_data_88 = .data:0x00000088; // type:object size:0xA -lbl_1_data_92 = .data:0x00000092; // type:object size:0xA +lbl_1_data_88 = .data:0x00000088; // type:object size:0xA data:byte +lbl_1_data_92 = .data:0x00000092; // type:object size:0xA data:byte lbl_1_data_9C = .data:0x0000009C; // type:object size:0x28 lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x28 lbl_1_data_EC = .data:0x000000EC; // type:object size:0x28 @@ -130,22 +130,23 @@ lbl_1_data_130 = .data:0x00000130; // type:object size:0x4 data:4byte lbl_1_data_134 = .data:0x00000134; // type:object size:0x4 data:4byte lbl_1_data_138 = .data:0x00000138; // type:object size:0x24 data:2byte lbl_1_data_15C = .data:0x0000015C; // type:object size:0x4 data:4byte -lbl_1_data_160 = .data:0x00000160; // type:object size:0x9 data:string -lbl_1_data_169 = .data:0x00000169; // type:object size:0x3 data:string +lbl_1_data_160 = .data:0x00000160; // type:object size:0x9 scope:local data:string +lbl_1_data_169 = .data:0x00000169; // type:object size:0x3 scope:local data:string lbl_1_data_16C = .data:0x0000016C; // type:object size:0x4 data:4byte jumptable_1_data_170 = .data:0x00000170; // type:object size:0x30 scope:local lbl_1_data_1A0 = .data:0x000001A0; // type:object size:0x4 data:4byte lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x4 data:float lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x4 data:float lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x4 data:float -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x4 data:string +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x4 scope:local data:string jumptable_1_data_1B4 = .data:0x000001B4; // type:object size:0x34 scope:local lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0x2C -lbl_1_data_214 = .data:0x00000214; // type:object size:0x8 data:string -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x19 data:string -lbl_1_data_235 = .data:0x00000235; // type:object size:0x24 data:string +lbl_1_data_214 = .data:0x00000214; // type:object size:0x8 scope:local data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x19 scope:local data:string +lbl_1_data_235 = .data:0x00000235; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte @@ -156,7 +157,8 @@ lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:float lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x50 lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x4 data:4byte @@ -165,11 +167,13 @@ lbl_1_bss_98 = .bss:0x00000098; // type:object size:0x4 data:4byte lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x4 data:4byte lbl_1_bss_A0 = .bss:0x000000A0; // type:object size:0x4 data:4byte lbl_1_bss_A4 = .bss:0x000000A4; // type:object size:0x4 data:4byte -lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x8 data:4byte +lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte +lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:4byte lbl_1_bss_B0 = .bss:0x000000B0; // type:object size:0x4 data:4byte lbl_1_bss_B4 = .bss:0x000000B4; // type:object size:0x4 data:4byte lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x8 data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x4 data:4byte lbl_1_bss_C4 = .bss:0x000000C4; // type:object size:0x4 data:4byte lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x1C0 data:4byte diff --git a/configure.py b/configure.py index 126114bd..9d07dc00 100644 --- a/configure.py +++ b/configure.py @@ -1043,8 +1043,8 @@ config.libs = [ Rel( "m424Dll", # Blame it on the Crane objects={ - Object(MatchingFor("GMPE01_00"), "REL/m424Dll/main.c"), - Object(MatchingFor("GMPE01_00"), "REL/m424Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m424Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m424Dll/map.c"), Object(NonMatching, "REL/m424Dll/ball.c"), Object(NonMatching, "REL/m424Dll/claw.c"), }, @@ -1146,7 +1146,7 @@ config.libs = [ Rel( "m438Dll", # Chain Chomp Fever objects={ - Object(MatchingFor("GMPE01_00"), "REL/m438Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/main.c"), Object(NonMatching, "REL/m438Dll/map.c"), Object(NonMatching, "REL/m438Dll/fire.c"), }, diff --git a/src/OdemuExi2/DebuggerDriver.c b/src/OdemuExi2/DebuggerDriver.c index e01a42e4..eb1415a9 100644 --- a/src/OdemuExi2/DebuggerDriver.c +++ b/src/OdemuExi2/DebuggerDriver.c @@ -100,7 +100,6 @@ static BOOL DBGWriteMailbox(u32 p1) } #pragma dont_inline on - static BOOL DBGReadMailbox(u32 *p1) { BOOL total = FALSE; @@ -119,7 +118,7 @@ static BOOL DBGReadMailbox(u32 *p1) return IS_FALSE(total); } -#pragma dont_inline off +#pragma dont_inline reset static BOOL DBGRead(u32 count, u32 *buffer, s32 param3) { diff --git a/src/REL/m458Dll/main.c b/src/REL/m458Dll/main.c new file mode 100644 index 00000000..f59e3649 --- /dev/null +++ b/src/REL/m458Dll/main.c @@ -0,0 +1,1615 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "game/frand.h" + +extern s32 rand8(void); + +typedef struct UnkCameraStruct { + /* 0x00 */ float unk_00; + /* 0x04 */ float unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ float unk_10; + /* 0x14 */ float unk_14; +} UnkCameraStruct; /* size = 0x18 */ + +typedef struct UnkBssCCStruct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ float unk_04[3]; +} UnkBssCCStruct; /* size = 0x10 */ + +typedef struct UnkBss28CStruct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ s32 unk_0C; +} UnkBss28CStruct; /* size = 0x10 */ + +typedef struct UnkData114Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ float unk_10; + /* 0x14 */ float unk_14; +} UnkData114Struct; /* size = 0x18 */ + +typedef struct M458DllWork { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + s32 unk_14; + s32 unk_18; + s32 unk_1C; + s32 unk_20; + s32 unk_24; + float unk_28; + float unk_2C; + char unk30[4]; + float unk_34; + s32 unk_38; + s32 unk_3C; + s32 unk_40; +} M458DllWork; /* size = 0x44 */ + +s16 fn_1_4BE8(); +void fn_1_6D9C(omObjData *arg0); + +s32 lbl_1_data_0[2] = { 0x570025, 0x570026 }; +s32 lbl_1_data_8[2] = { 0, 0 }; +s32 lbl_1_data_10[0xA] = { + 0x5F0000, + 0x5F0002, + 0x5F0003, + 0x5F0005, + 0x5F0006, + 0x5F0036, + 0x5F002F, + 0x5F001A, + 0x570000, + 0x5F0017, +}; +u32 lbl_1_data_38[0xA] = { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 }; +u32 lbl_1_data_60[0xA] = { 0x30008, 0, 0, 0x3000A, 0, 0, 0x57002A, 0x570028, 0x570029, 0x570027 }; +u8 lbl_1_data_88[0xA] = { 0, 0, 0, 1, 1, 1, 1, 0, 1, 1 }; +u8 lbl_1_data_92[0xA] = { 0, 0, 0, 1, 1, 1, 1, 0, 1, 1 }; +s32 lbl_1_data_9C[0xA] = { 8, 8, 8, 0, 0, 0, 8, 8, 8, 8 }; +s32 lbl_1_data_C4[0xA] = { 0, 0, 0, 0, 3, 0, 0, 0, 0, 0 }; +s32 lbl_1_data_EC[0xA] = { 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 }; +UnkData114Struct lbl_1_data_114 = { 0, 0, 0.0f, 0.0f, 0.0f, 0.0f }; +s16 lbl_1_data_12C = -1; +s16 lbl_1_data_12E = -1; +s32 lbl_1_data_130 = -1; +s32 lbl_1_data_134 = -1; +s16 lbl_1_data_138[0x12] = { + -1, + 0, + -0x3D4C, + 0, + 0, + 0, + 0x4403, + 0x4000, + 0x4334, + 0, + 0x42B4, + 0, + 0, + 0, + 0x4403, + 0x4000, + 0x4334, + 0, +}; +s32 lbl_1_data_15C = -1; + +UnkBss28CStruct lbl_1_bss_28C[9]; +UnkBssCCStruct lbl_1_bss_CC[0x1C]; +omObjData *lbl_1_bss_C8; +omObjData *lbl_1_bss_C4; +omObjData *lbl_1_bss_C0; +omObjData *lbl_1_bss_BC; +omObjData *lbl_1_bss_B8; +s32 lbl_1_bss_B4; +s32 lbl_1_bss_B0; +s32 lbl_1_bss_AC; +s32 lbl_1_bss_A8; +s32 lbl_1_bss_A4; +Process *lbl_1_bss_A0; +s32 lbl_1_bss_9C; +s32 lbl_1_bss_98; +s32 lbl_1_bss_94; +s32 lbl_1_bss_90; +s32 lbl_1_bss_8C; +HsfanimStruct00 lbl_1_bss_3C; +float lbl_1_bss_38; +float lbl_1_bss_34; +float lbl_1_bss_30; +float lbl_1_bss_2C; +float lbl_1_bss_28; +s32 lbl_1_bss_24; +s32 lbl_1_bss_20; +s32 lbl_1_bss_1C; +s32 lbl_1_bss_18; +s32 lbl_1_bss_14; +s32 lbl_1_bss_10; +s16 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +void fn_1_A0(void) +{ + if ((HuPadBtnDown[0] & PAD_BUTTON_B) != 0) { + Center.x = lbl_1_bss_BC->trans.x; + Center.y = lbl_1_bss_BC->trans.y; + Center.z = lbl_1_bss_BC->trans.z; + } + Center.x += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_RIGHT) != 0) - ((HuPadBtn[0] & PAD_BUTTON_LEFT) != 0)); + Center.z -= 10.0 * (((HuPadBtn[0] & PAD_BUTTON_UP) != 0) - ((HuPadBtn[0] & PAD_BUTTON_DOWN) != 0)); + Center.y += (30.0 * ((HuPadTrigL[0] - HuPadTrigR[0]) / 128.0)); + CZoom += 25.0 * (((HuPadBtn[0] & PAD_BUTTON_X) != 0) - ((HuPadBtn[0] & PAD_BUTTON_Y) != 0)); + CRot.y += HuPadSubStkX[0] / 16.0; + CRot.x += HuPadSubStkY[0] / -16.0; + print8(0x40, 0x188, 1.0f, "%f,%f,%f", Center.x, Center.y, Center.z); + print8(0x40, 0x198, 1.0f, "%f,%f,%f", CRot.x, CRot.y, CRot.z); + print8(0x40, 0x1A8, 1.0f, "%f", CZoom); +} + +s32 lbl_1_data_16C = -1; + +// https://decomp.me/scratch/QQLCN r17 issues +void fn_1_4C8(omObjData *object) +{ + Mtx sp1E0; + float sp1A8[2]; + float sp1A0[2]; + s32 spD0; + s32 spCC; + s32 spC8; + s32 spC4; + s32 spC0; + float spBC; + s32 spB8; + ModelData *spB4; + float spB0; + float spAC; + s32 spA8; + s32 spA4; + float var_f31; + float var_f30; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + + M458DllWork *var_r31; + ModelData *var_r29; + s16 var_r28; + M458DllWork *var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + ModelData *var_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + s32 var_r19; + s32 var_r18; + s32 var_r17; + + var_r31 = object->data; + var_r27 = (&lbl_1_bss_BC)[1 - object->work[0]]->data; + var_f23 = 0.0f; + var_f22 = 0.0f; + var_f28 = 0.0f; + var_r22 = 0; + var_r28 = -1; + var_r31->unk_2C = var_r31->unk_34 = 0.0f; + if ((lbl_1_bss_B0 == (var_r31->unk_00 == 0 ? 0x3F1 : 0x3F2)) && (var_r31->unk_18 == 3) && (var_r31->unk_1C >= 0x168)) { + if (var_r31->unk_1C == 0x168) { + var_r31->unk_14 = rand8() % 15; + } + if (var_r31->unk_0C != -1) { + var_r22 = (HuPadBtnDown[var_r31->unk_0C] & 0x100) != 0 ? 1 : 0; + } + else { + var_r31->unk_14 += var_r31->unk_14 < 0x10000; + if (var_r31->unk_14 == 0x1E) { + var_r22 = 1; + } + } + } + if (lbl_1_bss_B0 == (var_r31->unk_00 == 0 ? 0x3ED : 0x3EF)) { + var_r25 = 0; + var_r24 = 0; + if (var_r31->unk_0C != -1) { + var_r25 = HuPadStkX[var_r31->unk_0C] < -0x14 ? -1 : (HuPadStkX[var_r31->unk_0C] > 0x14 ? 1 : 0); + var_r24 = -HuPadStkY[var_r31->unk_0C] < -0x14 ? -1 : (-HuPadStkY[var_r31->unk_0C] > 0x14 ? 1 : 0); + var_r22 = (HuPadBtnDown[var_r31->unk_0C] & 0x100) != 0 ? 1 : 0; + } + else { + var_r31->unk_14 += var_r31->unk_14 < 0x10000; + if (var_r31->unk_14 == 0x1E) { + lbl_1_bss_94 = rand8() % (var_r31->unk_00 + 2); + lbl_1_bss_90 = rand8() % (var_r31->unk_00 + 2); + } + if (fabs((500.0 * var_r31->unk_3C) - object->trans.x) < 10.0) { + var_r25 = lbl_1_bss_94 > 0 ? (var_r31->unk_00 == 0 ? (((rand8() % 2) * 2) - 1) : -1) : 0; + lbl_1_bss_94 -= lbl_1_bss_94 > 0; + } + if (fabs((500.0 * var_r31->unk_40) - object->trans.z) < 10.0) { + var_r24 = lbl_1_bss_90 > 0 ? (var_r31->unk_00 == 0 ? (((rand8() % 2) * 2) - 1) : -1) : 0; + lbl_1_bss_90 -= lbl_1_bss_90 > 0; + } + if ((var_r31->unk_14 >= 0x2D) && ((var_r31->unk_14 % 30) == 0xF) && (lbl_1_bss_94 == 0) && (lbl_1_bss_90 == 0)) { + var_r22 = 1; + } + } + if (lbl_1_bss_B4 >= 0x32) { + var_r25 = var_r24 = 0; + } + if (var_r31->unk_00 == 1) { + spC4 = 0; + spC0 = 0; + if (fabs((500.0 * var_r31->unk_3C) - object->trans.x) < 10.0) { + var_r17 = object->trans.x < -250.0 ? -1 : (object->trans.x > 250.0 ? 1 : 0); + spD0 = var_r17; + } + else { + var_r17 = (object->trans.x < 0.0f ? -1 : 0); + spD0 = var_r17 + 1; + } + if (fabs((500.0 * var_r31->unk_40) - object->trans.z) < 10.0) { + spCC = spC8 = object->trans.z < -250.0 ? -1 : (object->trans.z > 250.0 ? 1 : 0); + } + else { + spCC = object->trans.z < 0.0f ? -1 : 0; + spC8 = spCC + 1; + } + for (var_r21 = var_r17; var_r21 <= spD0; var_r21++) { + for (var_r20 = spCC; var_r20 <= spC8; var_r20++) { + if (var_r27->unk_38 == 1 + var_r21 + var_r25 + (1 + var_r20 + var_r24) * 3) { + var_r25 = var_r24 = 0; + } + if (var_r27->unk_38 == 1 + var_r21 + var_r25 + (var_r20 + 1) * 3) { + var_r25 = 0; + } + if (var_r27->unk_38 == 1 + var_r21 + (1 + var_r20 + var_r24) * 3) { + var_r24 = 0; + } + } + } + } + if ((var_r25 * ((500.0 * var_r31->unk_3C) - object->trans.x)) < 0.0) { + var_r31->unk_3C = var_r31->unk_3C + var_r25; + } + if ((fabs((500.0 * var_r31->unk_3C) - object->trans.x) < 10.0) && (var_r25 != 0) && ((var_r31->unk_3C + var_r25) >= -1) + && ((var_r31->unk_3C + var_r25) <= 1)) { + var_r31->unk_3C = var_r31->unk_3C + var_r25; + } + var_f23 = (((500.0 * var_r31->unk_3C) - object->trans.x) / 0.25) / 1.75; + if ((var_r24 * ((500.0 * var_r31->unk_40) - object->trans.z)) < 0.0) { + var_r31->unk_40 = var_r31->unk_40 + var_r24; + } + if ((fabs((500.0 * var_r31->unk_40) - object->trans.z) < 10.0) && (var_r24 != 0) && ((var_r31->unk_40 + var_r24) >= -1) + && ((var_r31->unk_40 + var_r24) <= 1)) { + var_r31->unk_40 = var_r31->unk_40 + var_r24; + } + var_f22 = (((500.0 * var_r31->unk_40) - object->trans.z) / -0.25) / 1.75; + } + if (((var_r31->unk_00 != 1) || (var_r31->unk_08 != -1)) && (var_r31->unk_18 == 0)) { + if ((lbl_1_bss_B0 > (var_r31->unk_00 == 0 ? 0x3E9 : 0x3EE)) && (lbl_1_bss_B0 < 0x3F3)) { + var_f31 = 0.25 * var_f23; + var_f30 = 0.25 * -var_f22; + { + Vec sp1B0 = { 0.0f, 0.0f, 0.0f }; + sp1B0.x = var_f31; + sp1B0.z = var_f30; + PSMTXRotRad(sp1E0, 0x79, 0.017453292f * CRot.y); + PSMTXMultVec(sp1E0, &sp1B0, &sp1B0); + var_f31 = sp1B0.x; + var_f30 = sp1B0.z; + } + var_f28 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f28 >= 0.5f) { + if (var_f28 < 10.0f) { + var_r31->unk_2C = var_f31; + var_r31->unk_34 += var_f30; + } + else { + var_f31 = var_f31 / var_f28; + var_f30 = var_f30 / var_f28; + var_f28 = 10.0f; + var_r31->unk_2C = var_f31 * var_f28; + var_r31->unk_34 = var_f30 * var_f28; + } + var_r31->unk_28 = var_f28; + object->rot.y = atan2d(var_r31->unk_2C, var_r31->unk_34); + if (var_r31->unk_28 >= 8.0f) { + var_r28 = 2; + } + else { + var_r28 = 2; + } + } + else { + var_r28 = 0; + } + } + } + object->trans.x += 1.75f * var_r31->unk_2C; + object->trans.z += 1.75f * var_r31->unk_34; + switch (lbl_1_bss_B0) { + case 0x3E9: + case 0x3EE: + if (lbl_1_bss_B0 == (var_r31->unk_00 == 0 ? 0x3E9 : 0x3EE)) { + if (lbl_1_bss_B4 == 0) { + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + if (var_r31->unk_00 == 0) { + object->trans.x = 0.0f; + object->trans.z = 0.0f; + } + else if (var_r31->unk_08 != -1) { + var_r31->unk_3C = -2; + for (var_r18 = 2; var_r18 >= 0; var_r18--) { + for (var_r19 = 2; var_r19 >= 0; var_r19--) { + if (var_r27->unk_38 != (var_r18 + (var_r19 * 3))) { + var_r31->unk_3C = var_r19 - 1; + var_r31->unk_40 = var_r18 - 1; + object->trans.x = 500.0 * var_r31->unk_3C; + object->trans.z = 500.0 * var_r31->unk_40; + break; + } + } + if (var_r31->unk_3C != -2) { + break; + } + } + } + else { + do { + var_r31->unk_38 = rand8() % 9; + } while (var_r27->unk_38 == var_r31->unk_38); + var_r31->unk_3C = (var_r31->unk_38 % 3) - 1; + var_r31->unk_40 = (var_r31->unk_38 / 3) - 1; + object->trans.x = 500.0 * var_r31->unk_3C; + object->trans.z = 500.0 * var_r31->unk_40; + } + } + if (lbl_1_bss_B4 <= 0x1E) { + if (var_r31->unk_08 == -1) { + Hu3DMotionTimeSet(object->model[0], 138.0f); + } + object->trans.y = 2400.0 * (1.0 - (lbl_1_bss_B4 / 30.0)); + } + if ((var_r31->unk_08 != -1) && (lbl_1_bss_B4 == 0x1E)) { + var_r28 = 4; + } + if (lbl_1_bss_B4 == ((var_r31->unk_08 != -1 ? 0xA : 0x3C) + 0x1E)) { + var_r28 = 0; + } + if (lbl_1_bss_B4 == 0x1E) { + lbl_1_data_114.unk_04 += 0x32; + } + if (lbl_1_bss_B4 == 0x1E) { + HuAudFXPlay(0x33D); + } + } + break; + case 0x3EB: + if ((lbl_1_bss_B4 == 0) && (var_r31->unk_00 == 0)) { + var_r31->unk_18 = 1; + var_r31->unk_1C = 0; + } + break; + case 0x3ED: + case 0x3EF: + if (lbl_1_bss_B0 == (var_r31->unk_00 == 0 ? 0x3ED : 0x3EF)) { + if (lbl_1_bss_B4 == 0) { + lbl_1_bss_0 = 0x12C; + lbl_1_data_12E = MGSeqCreate(1, 0xA, -1, -1); + HuWinMesMaxSizeGet(1, sp1A8, 0x280019); + lbl_1_bss_C = HuWinCreate(-10000.0f, 400.0f, sp1A8[0], sp1A8[1], 1); + HuWinBGTPLvlSet(lbl_1_bss_C, 0.0f); + HuWinMesSpeedSet(lbl_1_bss_C, 0); + HuWinMesSet(lbl_1_bss_C, 0x280019); + } + if (lbl_1_data_12E != -1) { + MGSeqParamSet(lbl_1_data_12E, 1, (lbl_1_bss_0 + 0x3A) / 60); + } + lbl_1_bss_0--; + if ((var_r22 != 0) || (lbl_1_bss_0 == 0)) { + lbl_1_bss_B4 = 0x32; + MGSeqKill(lbl_1_data_12E); + lbl_1_data_12E = -1; + HuWinExCleanup(lbl_1_bss_C); + } + if (lbl_1_bss_B4 == 0x32) { + if (fabs((500.0 * var_r31->unk_3C) - object->trans.x) < 1.0) { + if (fabs((500.0 * var_r31->unk_40) - object->trans.z) < 1.0) { + lbl_1_bss_B4 = 0x3C; + object->rot.y = 0.0f; + var_r31->unk_38 = 1 + var_r31->unk_3C + ((var_r31->unk_40 + 1) * 3); + } + } + } + } + break; + case 0x3F1: + case 0x3F2: + if ((lbl_1_bss_B0 == (var_r31->unk_00 == 0 ? 0x3F1 : 0x3F2)) && (lbl_1_bss_B4 == 0) && (var_r31->unk_08 != -1)) { + HuWinMesMaxSizeGet(1, sp1A0, 0x300025); + lbl_1_bss_C = HuWinCreate(-10000.0f, 400.0f, sp1A0[0], sp1A0[1], 1); + HuWinBGTPLvlSet(lbl_1_bss_C, 0.0f); + HuWinMesSpeedSet(lbl_1_bss_C, 0); + HuWinMesSet(lbl_1_bss_C, 0x300025); + } + break; + case 0x3F3: + if (lbl_1_bss_98 != var_r31->unk_00) { + if (lbl_1_bss_B4 == 1) { + var_r28 = 7; + } + if (lbl_1_bss_B4 == 0x78) { + Hu3DModelAttrReset(lbl_1_bss_B8->model[var_r31->unk_38 + 4], HU3D_MOTATTR_PAUSE); + if (lbl_1_bss_CC[0].unk_00 < 3) { + lbl_1_bss_CC[0].unk_04[lbl_1_bss_CC[0].unk_00] = 0.0f; + lbl_1_bss_CC[0].unk_00++; + } + } + if (lbl_1_bss_B4 == 0x99) { + Hu3DModelAttrSet(lbl_1_bss_B8->model[var_r31->unk_38 + 4], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_B4 == 0xB7) { + Hu3DModelAttrReset(lbl_1_bss_B8->model[var_r31->unk_38 + 4], HU3D_MOTATTR_PAUSE); + } + if ((lbl_1_bss_B4 == 0xBC) && (lbl_1_bss_CC[1].unk_00 < 3)) { + lbl_1_bss_CC[1].unk_04[lbl_1_bss_CC[1].unk_00] = 0.0f; + lbl_1_bss_CC[1].unk_00++; + } + if (lbl_1_bss_B4 == 0xD2) { + var_r28 = 8; + espAttrReset(lbl_1_data_8[1], HUSPR_ATTR_DISPOFF); + if (lbl_1_bss_CC[(var_r31->unk_08 != -1 ? var_r31->unk_08 : 8) + 2].unk_00 < 3) { + lbl_1_bss_CC[(var_r31->unk_08 != -1 ? var_r31->unk_08 : 8) + 2] + .unk_04[lbl_1_bss_CC[(var_r31->unk_08 != -1 ? var_r31->unk_08 : 8) + 2].unk_00] + = 0.0f; + lbl_1_bss_CC[(var_r31->unk_08 != -1 ? var_r31->unk_08 : 8) + 2].unk_00++; + } + if (lbl_1_data_130 != -1) { + HuAudSeqFadeOut(lbl_1_data_130, 0x64); + lbl_1_data_130 = -1; + } + } + if ((lbl_1_bss_B4 >= 0xD2) && (lbl_1_bss_B4 <= 0xD6)) { + s32 sp1BC[9] = { 0, -12, -36, 0, 0, -12, -36, -48, 0 }; + spBC = (lbl_1_bss_B4 - 0xD2) / 4.0; + var_f26 = (lbl_1_bss_B4 - 0xD2) / 4.0; + var_f26 = var_f26 > 1.0f ? 1.0f : var_f26; + espPosSet(lbl_1_data_8[1], 290.0f, (64.0f * (1.0f - spBC)) + (sp1BC[(var_r31->unk_08 != -1 ? var_r31->unk_08 : 8)] + 0x8C)); + espScaleSet(lbl_1_data_8[1], var_f26, var_f26); + } + if (lbl_1_bss_B4 == 0x10E) { + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_PAUSE); + espAttrSet(lbl_1_data_8[1], HUSPR_ATTR_DISPOFF); + } + if (lbl_1_bss_B4 == 0x122) { + // TODO remove temporary? + spB8 = HuAudFXPlay((var_r31->unk_08 != -1 ? var_r31->unk_08 : 8) + 0x800); + HuAudFXFadeOut(spB8, 0x9C4); + } + if (lbl_1_bss_B4 >= 0x13B) { + object->trans.y -= 77.0f; + } + } + else if ((lbl_1_bss_B4 == 0x3C) && (lbl_1_data_138[0] != -1)) { + Hu3DParManKill(lbl_1_data_138[0]); + lbl_1_data_138[0] = -1; + } + break; + case 0x3F4: + if (var_r31->unk_00 == lbl_1_bss_98) { + if ((lbl_1_bss_B4 == 1) && (var_r31->unk_08 == -1)) { + HuAudFXPlay(0x3A); + } + var_r28 = 9; + } + break; + } + switch (var_r31->unk_18) { + case 0: + var_r31->unk_1C++; + break; + case 1: + var_r31->unk_1C++; + if (var_r31->unk_1C <= 0x3C) { + var_r28 = 5; + object->rot.y = -180.0 * (var_r31->unk_1C / 60.0); + } + else { + Hu3DMotionTimeSet(object->model[0], 120.0f); + var_r28 = 0; + var_r31->unk_18 = 0; + var_r31->unk_1C = 0; + } + break; + case 2: + var_r31->unk_1C++; + break; + case 3: + if (var_r31->unk_1C == 0) { + lbl_1_data_15C = 6; + } + if (var_r31->unk_1C < 0x168) { + var_r23 = &Hu3DData[lbl_1_bss_B8->model[3]]; + if (var_r31->unk_1C == 0) { + Hu3DModelAttrReset(lbl_1_bss_B8->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(lbl_1_bss_B8->model[3], object->trans.x, 625.0f + object->trans.y, object->trans.z); + Hu3DModelScaleSet(lbl_1_bss_B8->model[3], 0.1f, 0.1f, 0.1f); + Hu3DModelTPLvlSet(lbl_1_bss_B8->model[3], 1.0f); + lbl_1_bss_1C = 0; + HuAudFXPlay(0x7F4); + lbl_1_data_16C = HuAudFXPlay(0x7F3); + } + var_r23->rot.y = lbl_1_bss_1C % 360; + lbl_1_bss_1C += 0x19; + if (var_r31->unk_1C < 0xB4) { + var_f20 = 0.0f; + var_f21 = 1.0f; + } + else { + var_f20 = 1.0f; + var_f21 = 1.0f; + } + var_r23->scale.x = var_f20 + (var_f21 * sind((float)(var_r31->unk_1C % 180))); + var_r23->scale.y = var_r23->scale.z = var_r23->scale.x; + if (var_r31->unk_1C < 0xB4) { + var_r31->unk_1C += 6; + } + else { + var_r31->unk_1C = var_r31->unk_1C + 0x12; + } + if (var_r31->unk_1C >= 0x168) { + var_r31->unk_1C = 0x168; + Hu3DModelRotSet(lbl_1_bss_B8->model[3], 0.0f, 0.0f, 0.0f); + } + } + else { + spB4 = &Hu3DData[lbl_1_bss_B8->model[3]]; + var_r31->unk_1C = var_r31->unk_1C + 4; + if (var_r31->unk_1C > 0x2D0) { + var_r31->unk_1C -= 0x168; + } + spB4->pos.y += (0.20000000298023224 * sind((var_r31->unk_1C - 0x168))); + if (var_r22 != 0) { + lbl_1_bss_B4 = 0x32; + var_r31->unk_18 = 4; + var_r31->unk_1C = 0; + var_r28 = 6; + } + } + break; + case 4: + var_r31->unk_1C++; + if (var_r31->unk_1C >= 0x1B) { + var_r29 = &Hu3DData[lbl_1_bss_B8->model[3]]; + var_r26 = var_r31->unk_1C - 0x1B; + if (var_r26 == 0) { + if (var_r31->unk_04 != -1) { + omVibrate(var_r31->unk_04, 0xC, 4, 2); + } + HuWinExCleanup(lbl_1_bss_C); + lbl_1_data_15C = -1; + if (lbl_1_data_16C != -1) { + HuAudFXStop(lbl_1_data_16C); + lbl_1_data_16C = -1; + } + HuAudFXPlay(0x7F5); + } + if (var_r26 == 8) { + if (lbl_1_data_138[0] == -1) { + lbl_1_data_138[0] = fn_1_4BE8(); + Hu3DParManPosSet(lbl_1_data_138[0], var_r29->pos.x, var_r29->pos.y, var_r29->pos.z); + } + Hu3DModelAttrSet(lbl_1_bss_B8->model[3], HU3D_ATTR_DISPOFF); + } + else if (var_r26 > 8) { + if (var_r31->unk_20 == 6) { + if (Hu3DMotionTimeGet(object->model[0]) >= Hu3DMotionMaxTimeGet(object->model[0])) { + var_r28 = 0; + } + } + if (var_r26 <= 0x1C) { + var_f27 = (var_r26 - 8) / 10.0; + spB0 = ((var_r26 - 8) * 0x12); + var_f27 = var_f27 > 1.0f ? 2.5 : 2.5 * var_f27; + Hu3DModelAttrReset(lbl_1_bss_B8->model[lbl_1_bss_18 + 0xD], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(lbl_1_bss_B8->model[lbl_1_bss_18 + 0xD], var_r29->pos.x, var_r29->pos.y, var_r29->pos.z); + Hu3DModelScaleSet(lbl_1_bss_B8->model[lbl_1_bss_18 + 0xD], var_f27, var_f27, var_f27); + } + if ((var_r26 >= 0x2D) && (var_r26 <= 0x41)) { + var_f25 = (var_r26 - 0x2D) / 5.0; + spAC = (var_r26 - 0x2D) * 0x12; + var_f25 = var_f25 > 1.0f ? 1.0f : var_f25; + var_f25 = 0.0; + Hu3DModelAttrReset(lbl_1_bss_B8->model[lbl_1_bss_18 + 0xD], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(lbl_1_bss_B8->model[lbl_1_bss_18 + 0xD], var_r29->pos.x, var_r29->pos.y - (30.0f * var_f25), var_r29->pos.z); + var_r31->unk_1C += 5; + } + if (var_r26 == 0x62) { + Hu3DModelAttrSet(lbl_1_bss_B8->model[lbl_1_bss_18 + 0xD], HU3D_ATTR_DISPOFF); + lbl_1_bss_18 = lbl_1_bss_18 >= 9 ? var_r27->unk_38 : lbl_1_bss_18; + if (lbl_1_bss_18 == var_r27->unk_38) { + lbl_1_bss_98 = var_r31->unk_00; + } + else if (lbl_1_bss_18 == var_r31->unk_38) { + lbl_1_bss_98 = var_r27->unk_00; + } + var_r31->unk_18 = lbl_1_bss_98 == -1 ? 5 : 0; + var_r31->unk_1C = 0; + } + } + else { + if (var_r26 < 4) { + var_r29->pos.y += 10.0f + (0.5f * var_r26); + var_r29->scale.x += 0.10000000149011612 * sind((4.0f * var_r26)); + var_r29->scale.y = var_r29->scale.z = var_r29->scale.x; + } + else { + var_f24 = (0xFF - (var_r26 << 5)); + var_f24 = var_f24 * 0.003921569f; // 1 / 255 + Hu3DModelTPLvlSet(lbl_1_bss_B8->model[3], var_f24); + } + var_r29->pos.y += -0.49f * var_r26 * var_r26; + } + } + break; + case 5: + if (var_r31->unk_1C == 0) { + Hu3DModelAttrReset(lbl_1_bss_B8->model[lbl_1_bss_18 + 4], HU3D_MOTATTR_PAUSE); + lbl_1_bss_28C[lbl_1_bss_18].unk_0C = 0; + if (lbl_1_bss_CC[0].unk_00 < 3) { + lbl_1_bss_CC[0].unk_04[lbl_1_bss_CC->unk_00] = 0.0f; + lbl_1_bss_CC[0].unk_00++; + } + } + var_r31->unk_1C++; + if ((var_r31->unk_1C == 0x3C) && (*lbl_1_data_138 != -1)) { + Hu3DParManKill(*lbl_1_data_138); + lbl_1_data_138[0] = -1; + } + if (var_r31->unk_1C == 0x21) { + Hu3DModelAttrSet(lbl_1_bss_B8->model[lbl_1_bss_18 + 4], HU3D_MOTATTR_PAUSE); + } + if (var_r31->unk_1C == 0x3F) { + Hu3DModelAttrReset(lbl_1_bss_B8->model[lbl_1_bss_18 + 4], HU3D_MOTATTR_PAUSE); + } + if ((var_r31->unk_1C == 0x44) && (lbl_1_bss_CC[1].unk_00 < 3)) { + lbl_1_bss_CC[1].unk_04[lbl_1_bss_CC[1].unk_00] = 0.0f; + lbl_1_bss_CC[1].unk_00++; + } + if (var_r31->unk_1C == 0x82) { + var_r31->unk_18 = 0; + var_r31->unk_1C = 0; + } + break; + } + if (((var_r31->unk_18 == 3) || (var_r31->unk_18 == 4)) && (lbl_1_data_15C >= 0)) { + lbl_1_data_15C++; + if (lbl_1_data_15C >= 6) { + spA4 = lbl_1_bss_18; + for (spA8 = 0; spA8 < 0x32; spA8++) { + loop_344: + lbl_1_bss_18 = rand8() % 11; + if (lbl_1_bss_18 >= 9) { + if (lbl_1_bss_18 == (var_r31->unk_00 + 9)) { + goto loop_344; + } + } + if ((lbl_1_bss_18 < 9) && (lbl_1_bss_28C[lbl_1_bss_18].unk_0C == 0)) { + goto loop_344; + } + if (spA4 != lbl_1_bss_18) { + break; + } + } + spA4 = lbl_1_bss_18 >= 9 ? (var_r27->unk_08 == -1 ? 0x11 : (var_r27->unk_08 + 9)) : lbl_1_bss_18; + lbl_1_data_15C = 0; + Hu3DMotionTimeSet(lbl_1_bss_B8->model[3], 0.5 + spA4); + } + } + if (var_r31->unk_24 >= 0) { + var_r28 = var_r31->unk_24; + } + if ((var_r28 >= 0) && (var_r28 != var_r31->unk_20)) { + Hu3DMotionShiftSet(object->model[0], object->motion[var_r28], lbl_1_data_C4[var_r28], + (var_r31->unk_08 != -1 ? lbl_1_data_9C[var_r28] : lbl_1_data_EC[var_r28]), + (var_r28 == 8 ? 0x40000002 + : (var_r31->unk_08 != -1 ? lbl_1_data_88[var_r28] : lbl_1_data_92[var_r28]) != 0 ? 0 + : 0x40000001)); + var_r31->unk_20 = var_r28; + } +} + +s32 lbl_1_data_1A0 = -1; +float lbl_1_data_1A4 = 3500.0f; +float lbl_1_data_1A8 = 100.0f; +float lbl_1_data_1AC = -59.0f; + +void fn_1_350C(omObjData *var_r27) +{ + M458DllWork *spC[2]; + float var_f31; + float var_f29; + float var_f27; + float var_f26; + float var_f25; + float var_f19; + + s32 var_r31; + s32 var_r30; + ModelData *var_r29; + ModelData *var_r28; + ModelData *var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + + for (var_r31 = 0; var_r31 < 2; var_r31++) { + spC[var_r31] = (&lbl_1_bss_BC)[var_r31]->data; + } + lbl_1_bss_4++; + switch (lbl_1_bss_B0) { + case 0x3EA: + if (lbl_1_bss_B4 <= 0x77) { + var_f27 = lbl_1_bss_B4 / 119.0; + var_f27 = var_f27 > 1.0f ? 1.0f : var_f27; + Hu3DModelPosSet(lbl_1_bss_B8->model[2], 0.0f, 100.0f + (-1500.0f * (1.0f - var_f27)), -950.0f); + Hu3DModelAttrReset(lbl_1_bss_B8->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(lbl_1_bss_B8->model[2], HU3D_ATTR_DISPOFF); + } + break; + case 0x3EB: + if (lbl_1_bss_B4 == 0) { + lbl_1_bss_8C = 0; + } + if (lbl_1_bss_B4 == 0x14) { + espAttrReset(lbl_1_data_8[0], HUSPR_ATTR_DISPOFF); + } + if (((lbl_1_bss_B4 >= 0x14) && (lbl_1_bss_B4 <= 0x32)) || ((lbl_1_bss_B4 >= 0xB4) && (lbl_1_bss_B4 <= 0xD2))) { + var_f19 = lbl_1_bss_B4 <= 0x78 ? ((lbl_1_bss_B4 - 0x14) / 30.0) : (1.0 - ((lbl_1_bss_B4 - 0xB4) / 30.0)); + espTPLvlSet(lbl_1_data_8[0], var_f19); + } + if (lbl_1_bss_B4 == 0xD2) { + espAttrSet(lbl_1_data_8[0], HUSPR_ATTR_DISPOFF); + } + case 0x3EC: + case 0x3ED: + lbl_1_bss_8C++; + lbl_1_bss_8C %= 0x168; + if (lbl_1_bss_14 != 0) { + Hu3DModelPosSet(lbl_1_bss_B8->model[2], 0.0f, 100.0 + (25.0 * sind((360.0 * ((lbl_1_bss_8C % 360) / 360.0)))), -950.0f); + } + break; + case 0x3EE: + if (lbl_1_bss_14 != 0) { + var_r26 = &Hu3DData[lbl_1_bss_B8->model[2]]; + if (lbl_1_bss_B4 >= 7) { + var_r26->pos.y += 12.5; + } + if (lbl_1_bss_B4 == 0) { + Hu3DMotionShiftSet(var_r27->model[1], var_r27->motion[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + } + else { + var_r29 = &Hu3DData[lbl_1_bss_B8->model[spC[0]->unk_38 + 4]]; + if (lbl_1_bss_20 == 0) { + lbl_1_bss_20 = 1; + HuAudFXPlay(0x7F6); + } + if (lbl_1_bss_B4 == 1) { + lbl_1_bss_28C[spC[0]->unk_38].unk_08 = 83.333336f; + } + var_r29->pos.y = (0.9 * var_r29->pos.y) + (0.1 * lbl_1_bss_28C[spC[0]->unk_38].unk_08); + lbl_1_bss_BC->trans.y = var_r29->pos.y - -16.666666666666668; + } + break; + case 0x3F0: + Hu3DModelAttrSet(lbl_1_bss_B8->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(lbl_1_bss_B8->model[2], HU3D_ATTR_DISPOFF); + if (lbl_1_bss_B4 <= 0x3C) { + var_f29 = lbl_1_bss_B4 / 60.0; + var_f29 = var_f29; + var_f29 = 1.0f - ((1.0f - var_f29) * (1.0f - var_f29)); + if (lbl_1_bss_B4 == 0) { + lbl_1_bss_28C[spC[0]->unk_38].unk_08 = -16.666666f; + } + for (var_r31 = 0; var_r31 < 9; var_r31++) { + var_r28 = &Hu3DData[lbl_1_bss_B8->model[var_r31 + 4]]; + Hu3DModelPosSet(lbl_1_bss_B8->model[var_r31 + 4], (500.0 + (200.0f * var_f29)) * (lbl_1_bss_28C[var_r31].unk_00 - 1), + (0.9 * var_r28->pos.y) + (0.1 * lbl_1_bss_28C[spC[0]->unk_38].unk_08), + (500.0 + (200.0f * var_f29)) * (lbl_1_bss_28C[var_r31].unk_04 - 1)); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + if (var_r31 == spC[var_r30]->unk_38) { + (&lbl_1_bss_BC)[var_r30]->trans.x = (500.0 + (200.0f * var_f29)) * (lbl_1_bss_28C[var_r31].unk_00 - 1); + (&lbl_1_bss_BC)[var_r30]->trans.y = var_r28->pos.y - -16.666666666666668; + (&lbl_1_bss_BC)[var_r30]->trans.z = (500.0 + (200.0f * var_f29)) * (lbl_1_bss_28C[var_r31].unk_04 - 1); + } + } + } + } + break; + } + var_r25 = lbl_1_data_1A0; + { + UnkCameraStruct sp14[6] = { + { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, + { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 3800.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + { 800.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, + { 1800.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + }; + + if (lbl_1_bss_98 != -1) { + sp14[3].unk_04 = (&lbl_1_bss_BC)[1 - lbl_1_bss_98]->trans.x; + sp14[3].unk_0C = (&lbl_1_bss_BC)[1 - lbl_1_bss_98]->trans.z; + sp14[4].unk_04 = (&lbl_1_bss_BC)[1 - lbl_1_bss_98]->trans.x; + sp14[4].unk_0C = (&lbl_1_bss_BC)[1 - lbl_1_bss_98]->trans.z; + sp14[5].unk_04 = (&lbl_1_bss_BC)[lbl_1_bss_98]->trans.x; + sp14[5].unk_0C = (&lbl_1_bss_BC)[lbl_1_bss_98]->trans.z; + } + if (lbl_1_data_1A0 == -1) { + lbl_1_data_1A0 = 0; + lbl_1_bss_24 = 1; + lbl_1_bss_28 = 1.0f; + } + if (lbl_1_data_1A0 == 0) { + lbl_1_data_1A0 = 1; + lbl_1_bss_24 = 1; + lbl_1_bss_28 = 0.5f; + } + if ((lbl_1_bss_B0 == 0x3F0) && (lbl_1_bss_B4 >= 1) && (lbl_1_data_1A0 == 1)) { + lbl_1_data_1A0 = 2; + lbl_1_bss_24 = 0; + lbl_1_bss_28 = 0.0f; + } + if ((lbl_1_bss_B0 == 0x3F3) && (lbl_1_data_1A0 == 2)) { + lbl_1_data_1A0 = 3; + lbl_1_bss_24 = 0; + lbl_1_bss_28 = 0.0f; + } + if ((lbl_1_bss_B0 == 0x3F3) && (lbl_1_bss_B4 >= 0x12C) && (lbl_1_data_1A0 == 3)) { + lbl_1_data_1A0 = 4; + lbl_1_bss_24 = 1; + lbl_1_bss_28 = 1.0f; + } + if ((lbl_1_bss_B0 == 0x3F4) && (lbl_1_data_1A0 == 4)) { + lbl_1_data_1A0 = 5; + lbl_1_bss_24 = 0; + lbl_1_bss_28 = 0.0f; + } + if ((var_r25 != lbl_1_data_1A0) && (var_r25 != -1)) { + lbl_1_data_1A4 = CZoom; + lbl_1_data_1A8 = Center.y; + lbl_1_bss_30 = Center.z; + lbl_1_data_1AC = CRot.x; + lbl_1_bss_34 = CRot.y; + } + if (lbl_1_bss_28 <= 1.0f) { + if (lbl_1_bss_24 == 0) { + lbl_1_bss_28 = 1.0 - (0.95 * (1.0f - lbl_1_bss_28)); + var_f31 = lbl_1_bss_28; + } + else { + lbl_1_bss_28 += 0.008333333333333333; + lbl_1_bss_28 = lbl_1_bss_28 > 1.0f ? 1.0f : lbl_1_bss_28; + var_f31 = 0.5 + (-0.5 * cosd((180.0f * lbl_1_bss_28))); + var_f31 = var_f31; + } + lbl_1_bss_28 = lbl_1_bss_28 > 1.0f ? 1.0f : lbl_1_bss_28; + CZoom = (var_f31 * sp14[lbl_1_data_1A0].unk_00) + (lbl_1_data_1A4 * (1.0f - var_f31)); + Center.x = (var_f31 * sp14[lbl_1_data_1A0].unk_04) + (lbl_1_bss_2C * (1.0f - var_f31)); + Center.y = (var_f31 * sp14[lbl_1_data_1A0].unk_08) + (lbl_1_data_1A8 * (1.0f - var_f31)); + Center.z = (var_f31 * sp14[lbl_1_data_1A0].unk_0C) + (lbl_1_bss_30 * (1.0f - var_f31)); + CRot.x = (var_f31 * sp14[lbl_1_data_1A0].unk_10) + (lbl_1_data_1AC * (1.0f - var_f31)); + CRot.y = (var_f31 * sp14[lbl_1_data_1A0].unk_14) + (lbl_1_bss_34 * (1.0f - var_f31)); + } + } + if ((lbl_1_bss_B0 == 0x3E9) || (lbl_1_bss_B0 == 0x3EE)) { + var_f25 = 0.0f; + var_f26 = 0.0f; + if ((lbl_1_data_114.unk_00 % 2) >= 0) { + lbl_1_data_114.unk_08 = lbl_1_data_114.unk_10; + lbl_1_data_114.unk_0C = lbl_1_data_114.unk_14; + do { + lbl_1_data_114.unk_10 = 2.0 * (rand8() / 255.0) - 1.0; + lbl_1_data_114.unk_14 = (2.0 * (rand8() / 255.0)) - 1.0; + lbl_1_data_114.unk_10 = 0.0f; + } while (sqrtf(((lbl_1_data_114.unk_10 - lbl_1_data_114.unk_08) * (lbl_1_data_114.unk_10 - lbl_1_data_114.unk_08)) + + ((lbl_1_data_114.unk_14 - lbl_1_data_114.unk_0C) * (lbl_1_data_114.unk_14 - lbl_1_data_114.unk_0C))) + < 0.75); + } + var_f25 = lbl_1_data_114.unk_08; + var_f26 = lbl_1_data_114.unk_0C; + var_f25 *= lbl_1_data_114.unk_04 * 2; + var_f26 *= lbl_1_data_114.unk_04 * 2; + lbl_1_data_114.unk_00 = !lbl_1_data_114.unk_00; + if (lbl_1_data_114.unk_04 > 0x18) { + var_r24 = 0x17; + } + else { + if ((lbl_1_data_114.unk_04 - 1) > 0) { + var_r23 = lbl_1_data_114.unk_04 - 1; + } + else { + var_r23 = 0; + } + var_r24 = var_r23; + } + lbl_1_data_114.unk_04 = var_r24; + Center.x = 0.0f; + Center.y = 100.0f + var_f26; + } +} + +const HsfanimStruct00 lbl_1_rodata_2A0 = { + 0x0096, + { 0x00, 0x00 }, + 50.0f, + 0.0f, + 65.0f, + { 0.0f, -0.195f, 0.0f }, + 100.0f, + 0.99f, + 40.0f, + 0.999f, + 4, + { + { 0xFF, 0xFF, 0x20, 0xFF }, + { 0xFF, 0xFF, 0x00, 0xFF }, + { 0xFF, 0xFF, 0x80, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF }, + }, + { + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + }, +}; + +s16 fn_1_4BE8(void) +{ + s16 var_r31; + s16 var_r30; + AnimData *var_r29; + void *var_r28; + + HsfanimStruct00 sp8 = lbl_1_rodata_2A0; + lbl_1_bss_3C = sp8; + var_r28 = HuDataSelHeapReadNum(0x7006B, MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r29 = HuSprAnimRead(var_r28); + var_r31 = Hu3DParManCreate(var_r29, 0x64, &lbl_1_bss_3C); + Hu3DParManAttrSet(var_r31, 0x108); + Hu3DParManRotSet(var_r31, 0.0f, 0.0f, 0.0f); + Hu3DParManVecSet(var_r31, 0.0f, 0.4f, 0.2f); + var_r30 = Hu3DParManModelIDGet(var_r31); + Hu3DModelLayerSet(var_r30, 2); + Hu3DParticleBlendModeSet(var_r30, 0); + return var_r31; +} + +void fn_1_4D44(void) +{ + M458DllWork *spC[2]; + s16 sp8; + s16 var_r31; + s32 var_r30; + WindowData *var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + + sp8 = 0; + for (var_r30 = 0; var_r30 < 2; var_r30++) { + spC[var_r30] = (&lbl_1_bss_BC)[var_r30]->data; + } + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + HuWinComKeyReset(); + var_r31 = HuWinExCreateStyled(36.0f, 344.0f, 0x1F8, 0x60, 6, 0); + var_r29 = &winData[var_r31]; + if (spC[1]->unk_0C != -1) { + var_r28 = 1 << spC[1]->unk_0C; + } + else { + if (spC[1]->unk_08 != -1) { + var_r27 = 1 << GWPlayerCfg[spC[1]->unk_04].pad_idx; + } + else { + var_r27 = 0; + } + var_r28 = var_r27; + } + if (spC[0]->unk_0C != -1) { + var_r26 = 1 << spC[0]->unk_0C; + } + else { + if (spC[0]->unk_08 != -1) { + var_r25 = 1 << GWPlayerCfg[spC[0]->unk_04].pad_idx; + } + else { + var_r25 = 0; + } + var_r26 = var_r25; + } + var_r29->active_pad = var_r26 | var_r28; + OSReport("%d\n", var_r29->active_pad); + HuWinBGTPLvlSet(var_r31, 0.8f); + HuWinMesSpeedSet(var_r31, 1); + HuWinExAnimIn(var_r31); + HuWinMesSet(var_r31, 0x300024); + if (((spC[0]->unk_0C == -1) || (spC[0]->unk_08 == -1)) && ((spC[1]->unk_0C == -1) || (spC[1]->unk_08 == -1))) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + } + HuWinMesWait(var_r31); + HuWinExAnimOut(var_r31); + HuWinExCleanup(var_r31); + lbl_1_bss_10 = 0; + HuPrcEnd(); +} + +void fn_1_5014(omObjData *var_r30) +{ + M458DllWork *spC[2]; + s32 sp8; + s32 var_r31; + + for (var_r31 = 0; var_r31 < 0x1C; var_r31++) { + s32 sp14[] = { + 0x7F1, + 0x7F2, + 0x7F7, + 0x7F8, + 0x7F9, + 0x7FA, + 0x7FB, + 0x7FC, + 0x7FD, + 0x7FE, + 0x7FF, + 0x800, + 0x801, + 0x802, + 0x803, + 0x804, + 0x7FB, + 0x7FC, + 0x7FD, + 0x7FE, + 0x7FF, + 0x800, + 0x801, + 0x802, + 0x803, + 0x804, + 0x7FB, + 0x7FC, + }; + if (lbl_1_bss_CC[var_r31].unk_00 > 3) { + lbl_1_bss_CC[var_r31].unk_00 = 3; + } + if (lbl_1_bss_CC[var_r31].unk_00 > 0) { + sp8 = HuAudFXPlay(sp14[var_r31]); + lbl_1_bss_CC[var_r31].unk_00--; + } + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + spC[var_r31] = (&lbl_1_bss_BC)[var_r31]->data; + } + if ((omSysExitReq != 0) && (WipeStatGet() == 0)) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + var_r30->func = fn_1_6D9C; + } + switch (lbl_1_bss_B0) { + case 0x3E8: + if (WipeStatGet() == 0) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + if (lbl_1_data_138[0] != -1) { + Hu3DParManKill(*lbl_1_data_138); + lbl_1_data_138[0] = -1; + } + } + default: + break; + case 0x3E9: + lbl_1_bss_B4++; + if (lbl_1_bss_B4 == ((lbl_1_bss_14 == 0 ? 0x1E : 0) + 0x3C)) { + lbl_1_bss_B0 = lbl_1_bss_14 != 0 ? 0x3EA : 0x3ED; + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3EA: + lbl_1_bss_B4++; + if (lbl_1_bss_B4 == 0x78) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3EB: + lbl_1_bss_B4++; + if (lbl_1_bss_B4 > 0xD2) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3EC: + if (lbl_1_bss_B4 == 0) { + HuPrcChildCreate(fn_1_4D44, 0x64, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_10 = 1; + lbl_1_bss_B4++; + break; + } + if (lbl_1_bss_10 == 0) { + lbl_1_bss_B4++; + if (spC[0]->unk_18 == 0) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + } + } + break; + case 0x3ED: + lbl_1_bss_B4 += lbl_1_bss_B4 < 0x1E; + if (lbl_1_bss_B4 >= 0x3C) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3EE: + lbl_1_bss_B4++; + if (lbl_1_bss_B4 == ((spC[1]->unk_08 == -1 ? 0x78 : 0x3C) + (lbl_1_bss_14 == 0 ? 0x1E : 0))) { + lbl_1_bss_B0++; + if (spC[1]->unk_08 == -1) { + lbl_1_bss_B0++; + } + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3EF: + lbl_1_bss_B4 += lbl_1_bss_B4 < 0x1E; + if (lbl_1_bss_B4 >= 0x3C) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3F0: + lbl_1_bss_B4++; + if (lbl_1_bss_B4 == 0x5A) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3F1: + case 0x3F2: + if (lbl_1_bss_B4 == 0) { + spC[lbl_1_bss_B0 == 0x3F1 ? 0 : 1]->unk_18 = 3; + spC[lbl_1_bss_B0 == 0x3F1 ? 0 : 1]->unk_1C = 0; + } + lbl_1_bss_B4++; + if (spC[lbl_1_bss_B0 == 0x3F1 ? 0 : 1]->unk_18 == 0) { + if (lbl_1_bss_98 != -1) { + lbl_1_bss_B0 = 0x3F3; + } + else { + lbl_1_bss_B0 = lbl_1_bss_B0 == 0x3F1 ? 0x3F2 : 0x3F1; + } + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3F3: + lbl_1_bss_B4++; + if (lbl_1_bss_B4 >= 0x1E0) { + lbl_1_bss_B0++; + lbl_1_bss_B4 = 0.0f; + } + break; + case 0x3F4: + lbl_1_bss_B4++; + if (lbl_1_bss_B4 == 1) { + if (lbl_1_bss_98 != 4) { + if (spC[lbl_1_bss_98]->unk_08 != -1) { + HuAudSStreamPlay(1); + } + else { + HuAudSStreamPlay(3); + } + if (lbl_1_bss_14 != 0) { + if (lbl_1_bss_98 == 0) { + _SetFlag(0x10007); + } + } + else { + GWPlayerCoinWinSet(spC[lbl_1_bss_98]->unk_04, 10); + } + } + else { + lbl_1_bss_98 == 4; + } + } + if (210.0f < lbl_1_bss_B4) { + if (lbl_1_data_134 != -1) { + HuAudFXStop(lbl_1_data_134); + lbl_1_data_134 = -1; + } + lbl_1_data_12C = -1; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); + var_r30->func = fn_1_6D9C; + } + break; + } +} + +s32 lbl_1_data_1E8[0xB] = { + 0x570013, + 0x570014, + 0x570015, + 0x570016, + 0x570017, + 0x570018, + 0x570019, + 0x57001A, + 0x57001B, + 0x57001C, + 0x57001D, +}; + +void fn_1_59DC(omObjData *object) +{ + M458DllWork *sp18[2]; + + s32 var_r30; + s16 var_r29; + s16 var_r28; + s32 var_r27; + void *var_r26; + AnimData *var_r25; + s16 var_r24; + s16 var_r23; + + for (var_r30 = 0; var_r30 < 2; var_r30++) { + sp18[var_r30] = (&lbl_1_bss_BC)[var_r30]->data; + } + object->model[1] = Hu3DModelCreateFile(0x3000E); + Hu3DModelAttrSet(object->model[1], HU3D_MOTATTR_LOOP); + object->model[2] = Hu3DModelCreateFile(0x30000); + Hu3DModelAttrSet(object->model[2], HU3D_MOTATTR_LOOP); + Hu3DModelHookSet(object->model[2], "minik01", object->model[1]); + Hu3DModelPosSet(object->model[2], 0.0f, -750.0f, -700.0f); + Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + object->motion[0] = Hu3DJointMotionFile(object->model[1], 0x3000F); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x30012); + Hu3DMotionSet(object->model[1], object->motion[0]); + Hu3DModelLayerSet(object->model[2], 1); + Hu3DModelLayerSet(object->model[1], 1); + object->model[0] = Hu3DModelCreateFile(0x570008); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(object->model[0], 0.1f); + object->model[3] = Hu3DModelCreateFile(0x570009); + Hu3DModelAttrSet(object->model[3], HU3D_MOTATTR_LOOP); + Hu3DModelPosSet(object->model[3], 0.0f, 400.0f, 0.0f); + Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[3], 1); + Hu3DMotionSpeedSet(object->model[3], 0.0f); + for (var_r30 = 0; var_r30 < 9; var_r30++) { + object->model[var_r30 + 4] = Hu3DModelCreateFile(var_r30 + 0x57000A); + lbl_1_bss_28C[var_r30].unk_00 = var_r30 % 3; + lbl_1_bss_28C[var_r30].unk_04 = var_r30 / 3; + lbl_1_bss_28C[var_r30].unk_08 = 0.0f; + lbl_1_bss_28C[var_r30].unk_0C = 1; + Hu3DModelPosSet( + lbl_1_bss_B8->model[var_r30 + 4], 500.0 * (lbl_1_bss_28C[var_r30].unk_00 - 1), -16.666666f, 500.0 * (lbl_1_bss_28C[var_r30].unk_04 - 1)); + Hu3DModelScaleSet(lbl_1_bss_B8->model[var_r30 + 4], 1.6666666f, 1.6666666f, 1.6666666f); + Hu3DModelAttrSet(object->model[var_r30 + 4], HU3D_MOTATTR_PAUSE); + Hu3DModelShadowMapSet(object->model[var_r30 + 4]); + Hu3DModelLayerSet(object->model[var_r30 + 4], 1); + } + for (var_r30 = 0; var_r30 < 0xB; var_r30++) { + if ((var_r30 == 9) || (var_r30 == 0xA)) { + if (sp18[var_r30 - 9]->unk_08 != -1) { + var_r27 = sp18[var_r30 - 9]->unk_08 + 0x57001C; + } + else { + var_r27 = 0x570024; + } + lbl_1_data_1E8[var_r30] = var_r27; + } + object->model[var_r30 + 0xD] = Hu3DModelCreateFile(lbl_1_data_1E8[var_r30]); + Hu3DMotionTimeSet(object->model[var_r30 + 0xD], 10.0f); + Hu3DMotionSpeedSet(object->model[var_r30 + 0xD], 0.0f); + Hu3DModelAttrSet(object->model[var_r30 + 0xD], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[var_r30 + 0xD], 1); + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + s32 sp10[2] = { 0x120, 0x122 }; + s32 sp8[2] = { 0xF0, 0x8C }; + lbl_1_data_8[var_r30] = espEntry(lbl_1_data_0[var_r30], 0, 0); + espDrawNoSet(lbl_1_data_8[var_r30], 0); + espAttrSet(lbl_1_data_8[var_r30], HUSPR_ATTR_NOANIM | HUSPR_ATTR_DISPOFF); + espBankSet(lbl_1_data_8[var_r30], 0); + espPriSet(lbl_1_data_8[var_r30], 0x80 - var_r30); + espPosSet(lbl_1_data_8[var_r30], sp10[var_r30], sp8[var_r30]); + espTPLvlSet(lbl_1_data_8[var_r30], 1.0f); + } + { + HsfanimStruct00 sp20 = lbl_1_rodata_2A0; + lbl_1_bss_3C = sp20; + } + var_r26 = HuDataSelHeapReadNum(0x7006B, MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r25 = HuSprAnimRead(var_r26); + var_r29 = Hu3DParManCreate(var_r25, 0x64, &lbl_1_bss_3C); + Hu3DParManAttrSet(var_r29, 0x108); + Hu3DParManRotSet(var_r29, 0.0f, 0.0f, 0.0f); + Hu3DParManVecSet(var_r29, 0.0f, 0.4f, 0.2f); + var_r28 = Hu3DParManModelIDGet(var_r29); + Hu3DModelLayerSet(var_r28, 2); + Hu3DParticleBlendModeSet(var_r28, 0); + var_r24 = var_r29; + var_r23 = var_r24; + lbl_1_data_138[0] = var_r23; + Hu3DParManPosSet(lbl_1_data_138[0], 10000.0f, -10000.0f, 10000.0f); + object->func = fn_1_350C; +} + +void fn_1_6314(omObjData *object) +{ + s32 sp10; + void *spC; + s32 sp8; + M458DllWork *var_r31; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + s32 var_r19; + s32 var_r18; + s32 var_r17; + + var_r31 = object->data; + spC = (&lbl_1_bss_BC)[1 - object->work[0]]->data; + memset(var_r31, 0, 0x44); + var_r31->unk_00 = object->work[0]; + // probably ternary, but it causes regswaps + if (GWPlayerCfg->group == var_r31->unk_00) { + var_r28 = 0; + } + else { + if (GWPlayerCfg[1].group == var_r31->unk_00) { + var_r27 = 1; + } + else { + if (GWPlayerCfg[2].group == var_r31->unk_00) { + var_r26 = 2; + } + else { + if (GWPlayerCfg[3].group == var_r31->unk_00) { + var_r25 = 3; + } + else { + var_r25 = 4; + } + var_r26 = var_r25; + } + var_r27 = var_r26; + } + var_r28 = var_r27; + } + var_r31->unk_04 = var_r28; + if (GWPlayerCfg->group == (1 - var_r31->unk_00)) { + var_r24 = 0; + } + else { + if (GWPlayerCfg[1].group == (1 - var_r31->unk_00)) { + var_r23 = 1; + } + else { + if (GWPlayerCfg[2].group == (1 - var_r31->unk_00)) { + var_r22 = 2; + } + else { + if (GWPlayerCfg[3].group == (1 - var_r31->unk_00)) { + var_r21 = 3; + } + else { + var_r21 = 4; + } + var_r22 = var_r21; + } + var_r23 = var_r22; + } + var_r24 = var_r23; + } + sp10 = var_r24; + if (var_r31->unk_04 == 4) { + OSReport("m458:wrong player group\n"); + var_r31->unk_04 = var_r31->unk_00; + } + if ((var_r31->unk_00 == 1) && (lbl_1_bss_14 != 0)) { + var_r31->unk_08 = -1; + var_r31->unk_0C = -1; + var_r31->unk_04 = -1; + var_r31->unk_10 = 0; + } + else { + var_r31->unk_08 = GWPlayerCfg[var_r31->unk_04].character; + var_r20 = 1; + if ((var_r31->unk_08 != -1) && (GWPlayerCfg[var_r31->unk_04].iscom == 0)) { + var_r20 = 0; + } + var_r31->unk_0C = var_r20 != 0 ? -1 : GWPlayerCfg[var_r31->unk_04].pad_idx; + var_r31->unk_10 = var_r31->unk_0C != -1 ? 0 : GWPlayerCfg[var_r31->unk_04].diff; + } + var_r31->unk_18 = 0; + var_r31->unk_20 = 3; + var_r31->unk_24 = -1; + if (var_r31->unk_08 != -1) { + object->model[0] = CharModelCreate(var_r31->unk_08, 1); + } + else { + object->model[0] = Hu3DModelCreateFile(0x30007); + } + omSetTra(object, 0.0f, var_r31->unk_00 == 0 ? 0 : 0x12C, 0.0f); + if (var_r31->unk_08 != -1) { + omSetSca(object, 2.5f, 2.5f, 2.5f); + } + else { + omSetSca(object, 2.0f, 2.0f, 2.0f); + } + for (var_r29 = 0; var_r29 < 0xA; var_r29++) { + if (var_r31->unk_08 != -1) { + object->motion[var_r29] + = CharModelMotionCreate(var_r31->unk_08, lbl_1_data_10[var_r29] + (lbl_1_data_38[var_r29] != 0 ? var_r31->unk_08 : 0)); + } + else if (lbl_1_data_60[var_r29] != 0) { + object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], lbl_1_data_60[var_r29]); + } + } + Hu3DMotionSet(object->model[0], object->motion[var_r31->unk_20]); + Hu3DMotionTimeSet(object->model[0], 10.0f); + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(object->model[0]); + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[0], 1); + CharModelLayerSetAll2(1); + object->func = fn_1_4C8; +} + +void fn_1_685C(omObjData *object) +{ + lbl_1_bss_B0 = 0x3E8; + lbl_1_bss_B4 = 0.0f; + lbl_1_bss_A8 = 0; + lbl_1_bss_A4 = 0; + if (lbl_1_data_130 == -1) { + lbl_1_data_130 = HuAudSeqPlay(0x4D); + } + lbl_1_data_134 = HuAudFXPlay(0x6D7); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + object->func = fn_1_5014; +} + +void ObjectSetup(void) +{ + s32 i; + omObjData *object; + + OSReport("******* M458 ObjectSetup *********\n"); + lbl_1_bss_A0 = omInitObjMan(0x258, 0x2000); + omGameSysInit(lbl_1_bss_A0); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 25000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + CZoom = 3200.0f; + Center.x = 0.0f; + Center.y = 0.0f; + Center.z = -100.0f; + CRot.x = -30.0f; + CRot.y = 0.0f; + CRot.z = 0.0f; + { + Vec sp3C = { 0.0f, 0.0f, 0.0f }; + Vec sp30 = { 0.25f, -0.75f, -0.45f }; + GXColor sp8 = { 255, 255, 255, 255 }; + lbl_1_bss_9C = Hu3DGLightCreateV(&sp3C, &sp30, &sp8); + Hu3DGLightStaticSet(lbl_1_bss_9C, 1); + Hu3DGLightInfinitytSet(lbl_1_bss_9C); + } + { + Vec sp24; + Vec sp18; + Vec spC; + + sp24.x = 0.0f; + sp24.y = 10000.0f; + sp24.z = 0.0f; + sp18.x = 0.0f; + sp18.y = 1.0f; + sp18.z = 0.0f; + spC.x = 0.0f; + spC.y = 0.0f; + spC.z = 0.5f; + Hu3DShadowCreate(12.0f, 9000.0f, 10010.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&sp24, &sp18, &spC); + } + Hu3DShadowSizeSet(0xE0); + lbl_1_data_12C = -1; + lbl_1_bss_98 = -1; + lbl_1_bss_14 = _CheckFlag(0x10000) != 0; + HuWinInit(1); + lbl_1_bss_B8 = omAddObjEx(lbl_1_bss_A0, 0x65, 0x18, 2, 1, fn_1_59DC); + for (i = 0; i < 2; i++) { + object = (&lbl_1_bss_BC)[i] = omAddObjEx(lbl_1_bss_A0, 0x64, 0xB, 0xA, 0, fn_1_6314); + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M458DllWork), MEMORY_DEFAULT_NUM); + object->work[0] = i; + } + lbl_1_bss_C4 = omAddObjEx(lbl_1_bss_A0, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_C8 = omAddObjEx(lbl_1_bss_A0, 0x67, 0, 0, -1, fn_1_685C); +} + +void fn_1_6D9C(omObjData *object) +{ + if (lbl_1_data_138[0] != -1) { + Hu3DParManKill(lbl_1_data_138[0]); + lbl_1_data_138[0] = -1; + } + if (WipeStatGet() == 0) { + s32 i; + for (i = 0; i < 2; i++) { + void *sp8 = (&lbl_1_bss_BC)[i]->data; + } + if (lbl_1_data_12C >= 0) { + MGSeqKill(lbl_1_data_12C); + } + MGSeqKillAll(); + HuAudAllStop(); + omOvlReturnEx(1, 1); + } +} From 9a079616c9da5ec10c49be390436454502c1fcf7 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Thu, 2 Jan 2025 22:16:47 +0100 Subject: [PATCH 093/178] Matched m449Dll --- config/GMPE01_00/rels/m449Dll/symbols.txt | 319 ++-- include/ext_math.h | 1 + include/math.h | 94 +- src/REL/m449Dll/main.c | 2034 +++++++++++++++++++++ 4 files changed, 2272 insertions(+), 176 deletions(-) create mode 100644 src/REL/m449Dll/main.c diff --git a/config/GMPE01_00/rels/m449Dll/symbols.txt b/config/GMPE01_00/rels/m449Dll/symbols.txt index 2a91efc3..07d61d06 100644 --- a/config/GMPE01_00/rels/m449Dll/symbols.txt +++ b/config/GMPE01_00/rels/m449Dll/symbols.txt @@ -18,183 +18,187 @@ ObjectSetup = .text:0x000095D8; // type:function size:0x460 fn_1_9A38 = .text:0x00009A38; // type:function size:0x9C _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:0x10 -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC0 -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0xC0 -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC0 -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x20 data:4byte -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x60 -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 data:double -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x18 data:4byte -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float -lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x30 data:4byte -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float -lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 data:double -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x20 data:4byte -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 data:4byte -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x48 -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x48 -lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float -lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float -lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float -lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float -lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float -lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float -lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0xC data:4byte -lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0xC data:4byte -lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x1 data:byte -lbl_1_rodata_70C = .rodata:0x0000070C; // type:object size:0x4 data:float -lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x4 data:float -lbl_1_rodata_714 = .rodata:0x00000714; // type:object size:0x4 data:float -lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float -lbl_1_rodata_71C = .rodata:0x0000071C; // type:object size:0x4 data:float -lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x4 data:float -lbl_1_rodata_724 = .rodata:0x00000724; // type:object size:0x4 data:float -lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float -lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float -lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float -lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x10 scope:local +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 scope:local data:double +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC0 scope:local +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0xC0 scope:local +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0xC0 scope:local +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 scope:local data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 scope:local data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 scope:local data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 scope:local data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 scope:local data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 scope:local data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x60 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x8 scope:local data:double +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 scope:local data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 scope:local data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 scope:local data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x8 scope:local data:double +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x48 scope:local +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x48 scope:local +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0xC scope:local data:float +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_70C = .rodata:0x0000070C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x4 scope:local data:float +lbl_1_rodata_714 = .rodata:0x00000714; // type:object size:0x4 scope:local data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 scope:local data:float +lbl_1_rodata_71C = .rodata:0x0000071C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x4 scope:local data:float +lbl_1_rodata_724 = .rodata:0x00000724; // type:object size:0x4 scope:local data:float +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 scope:local data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 scope:local data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x48 lbl_1_data_48 = .data:0x00000048; // type:object size:0x48 lbl_1_data_90 = .data:0x00000090; // type:object size:0x10 lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x10 -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x38 -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x50 -lbl_1_data_138 = .data:0x00000138; // type:object size:0x50 -lbl_1_data_188 = .data:0x00000188; // type:object size:0x50 -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x50 +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x38 data:byte +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x50 data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x50 data:string +lbl_1_data_188 = .data:0x00000188; // type:object size:0x50 data:string +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x50 data:string lbl_1_data_228 = .data:0x00000228; // type:object size:0x2 data:2byte lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte lbl_1_data_22C = .data:0x0000022C; // type:object size:0x4 data:4byte lbl_1_data_230 = .data:0x00000230; // type:object size:0xC data:4byte lbl_1_data_23C = .data:0x0000023C; // type:object size:0x28 data:4byte -lbl_1_data_264 = .data:0x00000264; // type:object size:0x20 +lbl_1_data_264 = .data:0x00000264; // type:object size:0x20 scope:local data:string lbl_1_data_284 = .data:0x00000284; // type:object size:0x4 data:4byte lbl_1_data_288 = .data:0x00000288; // type:object size:0x4 data:float lbl_1_data_28C = .data:0x0000028C; // type:object size:0x4 data:float lbl_1_data_290 = .data:0x00000290; // type:object size:0x4 data:float lbl_1_data_294 = .data:0x00000294; // type:object size:0x4 data:float jumptable_1_data_298 = .data:0x00000298; // type:object size:0x1C scope:local -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x19 data:string -lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x24 data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x19 scope:local data:string +lbl_1_data_2CD = .data:0x000002CD; // type:object size:0x24 scope:local data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:float lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x8 data:float +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte @@ -204,7 +208,8 @@ lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x90 data:4byte diff --git a/include/ext_math.h b/include/ext_math.h index e9a608a6..7ff5edbf 100644 --- a/include/ext_math.h +++ b/include/ext_math.h @@ -29,6 +29,7 @@ typedef struct vec2f { #define sind(x) sin(M_PI*(x)/180.0) #define cosd(x) cos(M_PI*(x)/180.0) +#define asind(x) (180.0*(asinf((x)) / M_PI)) #define atan2d(y, x) (180.0*(atan2((y), (x)) / M_PI)) #endif diff --git a/include/math.h b/include/math.h index 389629df..5ac49892 100644 --- a/include/math.h +++ b/include/math.h @@ -7,24 +7,50 @@ #define _MATH_INLINE static inline #endif +extern int __float_nan[]; +extern int __float_huge[]; +extern int __double_huge[]; + +#define INFINITY (*(float *)__float_huge) +#define NAN (*(float *)__float_nan) +#define HUGE_VAL (*(double *)__double_huge) + #ifdef __MWERKS__ +extern inline double sqrt(double x) +{ + if (x > 0.0) { + double guess = __frsqrte(x); /* returns an approximation to */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have 8 sig bits */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have 16 sig bits */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have 32 sig bits */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have > 53 sig bits */ + return x * guess; + } + else if (x == 0) + return 0; + else if (x) + return NAN; + + return INFINITY; +} + extern inline float sqrtf(float x) { static const double _half = .5; static const double _three = 3.0; volatile float y; - if (x > 0.0f) - { - double guess = __frsqrte((double)x); // returns an approximation to - guess = _half*guess*(_three - guess*guess*x); // now have 12 sig bits - guess = _half*guess*(_three - guess*guess*x); // now have 24 sig bits - guess = _half*guess*(_three - guess*guess*x); // now have 32 sig bits - y = (float)(x*guess); - return y ; + if (x > 0.0f) { + double guess = __frsqrte((double)x); // returns an approximation to + guess = _half * guess * (_three - guess * guess * x); // now have 12 sig bits + guess = _half * guess * (_three - guess * guess * x); // now have 24 sig bits + guess = _half * guess * (_three - guess * guess * x); // now have 32 sig bits + y = (float)(x * guess); + return y; } return x; } #else +double sqrt(double x); float sqrtf(float x); #endif @@ -48,24 +74,54 @@ float tanf(float x); #ifdef __MWERKS__ extern inline double fabs(double x) { - return __fabs(x); + return __fabs(x); } #else double fabs(double x); #endif -_MATH_INLINE float fabsf(float x) { return (float)fabs((double)x); } -_MATH_INLINE float sinf(float x) { return (float)sin((double)x); } -_MATH_INLINE float cosf(float x) { return (float)cos((double)x); } -_MATH_INLINE float atan2f(float y, float x) { return (float)atan2((double)y, (double)x); } -_MATH_INLINE float atanf(float x) { return (float)atan((double)x); } -_MATH_INLINE float asinf(float x) { return (float)asin((double)x); } -_MATH_INLINE float acosf(float x) { return (float)acos((double)x); } +_MATH_INLINE float fabsf(float x) +{ + return (float)fabs((double)x); +} +_MATH_INLINE float sinf(float x) +{ + return (float)sin((double)x); +} +_MATH_INLINE float cosf(float x) +{ + return (float)cos((double)x); +} +_MATH_INLINE float atan2f(float y, float x) +{ + return (float)atan2((double)y, (double)x); +} +_MATH_INLINE float atanf(float x) +{ + return (float)atan((double)x); +} +_MATH_INLINE float asinf(float x) +{ + return (float)asin((double)x); +} +_MATH_INLINE float acosf(float x) +{ + return (float)acos((double)x); +} -_MATH_INLINE float fmodf(float x, float m) { return (float)fmod((double)x, (double)m); } +_MATH_INLINE float fmodf(float x, float m) +{ + return (float)fmod((double)x, (double)m); +} -_MATH_INLINE float floorf(float x) { return floor(x); } +_MATH_INLINE float floorf(float x) +{ + return floor(x); +} -_MATH_INLINE float powf(float __x, float __y) { return pow(__x, __y); } +_MATH_INLINE float powf(float __x, float __y) +{ + return pow(__x, __y); +} #endif diff --git a/src/REL/m449Dll/main.c b/src/REL/m449Dll/main.c new file mode 100644 index 00000000..17209e39 --- /dev/null +++ b/src/REL/m449Dll/main.c @@ -0,0 +1,2034 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "dolphin/pad.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#ifndef __MWERKS__ +#include "game/hsfex.h" +#endif + +s32 rand8(void); + +typedef struct UnkCameraStruct { + /* 0x00 */ float unk_00; + /* 0x04 */ float unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ float unk_10; + /* 0x14 */ float unk_14; +} UnkCameraStruct; /* size = 0x18 */ + +typedef struct M449DllUnkStruct { + /* 0x00 */ s32 unk_00[4]; + /* 0x10 */ s32 unk_10[4]; +} M449DllUnkStruct; /* size = 0x20 */ + +typedef struct M449DllWork { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + s32 unk_14; + s32 unk_18; + s32 unk_1C; + float unk_20; + float unk_24; + float unk_28; + float unk_2C; + s32 unk_30; + s32 unk_34; + s32 unk_38; + float unk_3C; + float unk_40; + s32 unk_44; + s32 unk_48; + s32 unk_4C; + s32 unk_50; + s32 unk_54; + float unk_58; + float unk_5C; + float unk_60[4]; + float unk_70[4]; + float unk_80[4]; + float unk_90[4]; + float unk_A0[4]; + float unk_B0[4]; + float unk_C0[4]; + float unk_D0[4]; + float unk_E0[4]; + s32 unk_F0[4]; + s32 unk_100[4]; + s32 unk_110[4]; + s32 unk_120[4]; + s32 unk_130[4]; + s32 unk_140[4]; + s32 unk_150[4]; + float unk_160[4]; + float unk_170[4]; + s32 unk_180[4]; + s32 unk_190; + float unk_194[4]; + float unk_1A4[4]; + s32 unk_1B4[4]; + s32 unk_1C4[4]; + char unk1D4[0x30]; + s32 unk_204; + s32 unk_208; + s32 unk_20C; + s32 unk_210; + s32 unk_214; +} M449DllWork; /* size = 0x218 */ + +typedef struct UnkBss64Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ float unk_04[2]; +} UnkBss64Struct; /* size = 0x0C */ + +void fn_1_9A38(omObjData *arg0); + +s32 lbl_1_data_0[0x12] = { + 0x50001A, + 0x500019, + 0x500016, + 0x500016, + 0x500016, + 0x500017, + 0x500017, + 0x500017, + 0x610000, + 0x50001A, + 0x500019, + 0x500016, + 0x500016, + 0x500016, + 0x500017, + 0x500017, + 0x500017, + 0x610000, +}; +s32 lbl_1_data_48[0x12] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; +s32 lbl_1_data_90[4] = { 0x5F0000, 0x500000, 0x5F0017, 0x5F0085 }; +s32 lbl_1_data_A0[4] = { 0x50001C, 0x50001E, 0x50001D, 0x50001F }; +u8 lbl_1_data_B0[0x38] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08 + +}; +char lbl_1_data_E8[4][20] = { + "m432_00-a00", + "m432_00-b00", + "m432_00-player00", + "m432_00-player01", +}; +char lbl_1_data_138[4][20] = { + "m449_01a-a00", + "m449_01a-a1", + "m449_01a-a2", + "m449_01a-a3", +}; +char lbl_1_data_188[4][20] = { + "m449_01a-b00", + "m449_01a-b1", + "m449_01a-b2", + "m449_01a-b3", +}; +char lbl_1_data_1D8[4][20] = { + "m449_01a-c00", + "m449_01a-c1", + "m449_01a-c2", + "m449_01a-c3", +}; +s16 lbl_1_data_228 = -1; +s16 lbl_1_data_22A = -1; +s32 lbl_1_data_22C = -1; +s32 lbl_1_data_230[3] = { -1, -1, -1 }; +s32 lbl_1_data_23C[0xA] = { + 0, + 1, + 0xC2B40000, + 0, + 0x44034000, + 0x43340000, + 0x42B40000, + 0, + 0x44034000, + 0x43340000, +}; + +UnkBss64Struct lbl_1_bss_64[12]; +omObjData *lbl_1_bss_60; +omObjData *lbl_1_bss_5C; +omObjData *lbl_1_bss_58; +omObjData *lbl_1_bss_54; +omObjData *lbl_1_bss_50; +s32 lbl_1_bss_4C; +s32 lbl_1_bss_48; +s32 lbl_1_bss_44; +s32 lbl_1_bss_40; +s32 lbl_1_bss_3C; +Process *lbl_1_bss_38; +s32 lbl_1_bss_34; +s32 lbl_1_bss_30; +s32 lbl_1_bss_2C; +float lbl_1_bss_28; +float lbl_1_bss_24; +float lbl_1_bss_20; +s32 lbl_1_bss_1C; +float lbl_1_bss_18; +s32 lbl_1_bss_14; +s32 lbl_1_bss_10; +s32 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +static const s32 lbl_1_rodata_10[4] = { 0x8C, 0x6E, 0x3C, 0 }; + +void fn_1_A0(void) +{ + if ((HuPadBtnDown[0] & PAD_BUTTON_B) != 0) { + Center.x = lbl_1_bss_54->trans.x; + Center.y = lbl_1_bss_54->trans.y; + Center.z = lbl_1_bss_54->trans.z; + } + Center.x += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_RIGHT) != 0) - ((HuPadBtn[0] & PAD_BUTTON_LEFT) != 0)); + Center.z -= 10.0 * (((HuPadBtn[0] & PAD_BUTTON_UP) != 0) - ((HuPadBtn[0] & PAD_BUTTON_DOWN) != 0)); + Center.y += (30.0 * ((HuPadTrigL[0] - HuPadTrigR[0]) / 128.0)); + CZoom += 25.0 * (((HuPadBtn[0] & PAD_BUTTON_X) != 0) - ((HuPadBtn[0] & PAD_BUTTON_Y) != 0)); + CRot.y += HuPadSubStkX[0] / 16.0; + CRot.x += HuPadSubStkY[0] / -16.0; +} + +void fn_1_3F8(s32 arg0, Mtx sp8) +{ + float var_f31; + float var_f30; + s32 var_r31; + s32 var_r30; + + GXLoadPosMtxImm(sp8, 0); + GXSetNumTevStages(1); + GXSetNumTexGens(0); + GXSetZMode(1, GX_LEQUAL, 1); + GXSetTevOp(GX_TEVSTAGE0, GX_PASSCLR); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + GXBegin(GX_TRIANGLEFAN, GX_VTXFMT0, 0x12); + GXPosition3f32(0.0f, 0.0f, 0.0f); + GXColor4u8(0xFF, 0xFF, 0x00, 0xFF); + for (var_r31 = 0; var_r31 < 0x11; var_r31++) { + var_f30 = (var_r30 == 0 ? 1 : -1) * (75.0 * cosd((360.0 * (var_r31 / 16.0)))); + var_f31 = 75.0 * sind((360.0 * (var_r31 / 16.0))); + GXPosition3f32(var_f31, var_r30 * 10, var_f30); + GXColor4u8(0xFF, 0xFF, 0x00, 0xFF); + } + } +} + +void fn_1_758(omObjData *var_r29) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + float var_f19; + float var_f18; + + M449DllWork *var_r31; + s32 var_r30; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + ModelData *var_r24; + s32 var_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + ModelData *var_r19; + s32 var_r18; + s32 var_r17; + + Vec sp3C4[3]; + Vec sp394[4]; + Mtx sp364; + Mtx sp334; + Mtx sp304; + Vec sp2D8; + Vec sp2CC; + Vec sp2C0; + Vec sp2B4; + Vec sp2A8; + void *sp238; + s32 sp234; + s32 sp230; + float sp22C; + float sp228; + float sp224; + s32 sp220; + float sp21C; + float sp218; + s32 sp214; + float sp210; + float sp20C; + float sp208; + s32 sp204; + s32 sp200; + s32 sp1FC; + float sp1F8; + s32 sp1F4; + float sp1F0; + float sp1EC; + float sp1E8; + float sp1E4; + float sp1E0; + float sp1DC; + float sp1D8; + float sp1D4; + float sp1D0; + float sp1CC; + float sp1C8; + float sp1C4; + float sp1C0; + float sp1BC; + float sp1B8; + float sp1B4; + float sp1B0; + float sp1AC; + float sp1A8; + float sp1A4; + float sp1A0; + float sp19C; + float sp198; + float sp194; + float sp190; + float sp18C; + float sp188; + float sp184; + float sp180; + float sp17C; + float sp178; + float sp174; + float sp170; + float sp16C; + float sp168; + float sp164; + s32 sp160; + float sp15C; + float sp158; + s32 sp154; + float sp150; + float sp14C; + float sp148; + float sp144; + float sp140; + float sp13C; + float sp138; + float sp134; + float sp130; + float sp12C; + float sp128; + float sp124; + + { + s32 sp568[4][4][3] = { + { + { 2, 5, 5 }, + { 2, 7, 11 }, + { 0, 4, 7 }, + { 0, 7, 8 }, + }, + { + { 1, 6, 3 }, + { 1, 1, 2 }, + { 8, 2, 3 }, + { 8, 12, 16 }, + }, + { + { 3, 5, 5 }, + { 1, 6, 13 }, + { 1, 3, 4 }, + { 3, 8, 12 }, + }, + { + { 2, 3, 4 }, + { 1, 2, 3 }, + { 0, 1, 3 }, + { 2, 3, 3 }, + }, + }; + s32 sp4A8[4][4][3] = { + { + { 0, 44, 23 }, + { 32, -64, -29 }, + { 0, 52, -60 }, + { 0, -51, 56 }, + }, + { + { -29, 28, -52 }, + { 32, 31, -22 }, + { 0, 20, -49 }, + { 0, 0, 0 }, + }, + { + { 56, 59, -37 }, + { -36, 33, 47 }, + { 27, 39, 28 }, + { 55, -31, 0 }, + }, + { + { -52, -61, 31 }, + { 42, -55, 30 }, + { 0, 22, -24 }, + { -48, 25, 61 }, + }, + }; + + s32 sp3E8[4][4][3] = { + { + { 0, -44, 23 }, + { -32, 64, 29 }, + { 0, -52, -60 }, + { 0, -51, -56 }, + }, + { + { -29, 28, 52 }, + { 32, -31, -22 }, + { 0, 20, 49 }, + { 0, 0, 0 }, + }, + { + { -56, 59, -37 }, + { 36, 33, -47 }, + { -27, 39, -28 }, + { -55, -31, 0 }, + }, + { + { 52, -61, -31 }, + { -42, 55, -30 }, + { 0, -22, -24 }, + { 48, 25, -61 }, + }, + }; + var_r31 = var_r29->data; + sp238 = (&lbl_1_bss_54)[1 - var_r29->work[0]]->data; + var_f29 = 0.0f; + var_f28 = 0.0f; + Hu3DModelObjPosGet(lbl_1_bss_50->model[1], lbl_1_data_E8[var_r31->unk_00], &sp2D8); + for (var_r30 = 0; var_r30 < (lbl_1_data_230[var_r31->unk_190] == 2 ? 2 : 3); var_r30++) { + Hu3DModelObjPosGet(var_r29->model[var_r31->unk_190 + 4], lbl_1_data_188[var_r30], &sp3C4[var_r30]); + sp3C4[var_r30].x -= sp2D8.x; + sp3C4[var_r30].y -= sp2D8.y; + sp3C4[var_r30].z -= sp2D8.z; + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + Hu3DModelObjPosGet(var_r29->model[var_r31->unk_190 + 4], lbl_1_data_1D8[var_r30], &sp394[var_r30]); + sp394[var_r30].x -= sp2D8.x; + sp394[var_r30].y -= sp2D8.y; + sp394[var_r30].z -= sp2D8.z; + } + switch (var_r31->unk_4C) { + case 0: + if (lbl_1_bss_48 == 0x3EC) { + var_r31->unk_4C = 1; + var_r31->unk_14 = var_r31->unk_204 % 4; + var_r31->unk_14 = var_r31->unk_1C = var_r31->unk_30 = var_r31->unk_34 = var_r31->unk_38 = 0; + var_r31->unk_18 = -1; + var_r31->unk_3C = var_r31->unk_40 = var_r31->unk_44 = var_r31->unk_48 = 0; + var_r31->unk_208 = var_r31->unk_0C == -1 ? 1 : 0; + if (var_r31->unk_0C == -1) { + var_r17 = lbl_1_data_23C[var_r31->unk_00]; + var_r31->unk_204 = sp568[lbl_1_data_230[var_r31->unk_190]][var_r31->unk_10][var_r17]; + var_r31->unk_20C = sp4A8[lbl_1_data_230[var_r31->unk_190]][var_r31->unk_10][var_r17]; + var_r31->unk_210 = sp3E8[lbl_1_data_230[var_r31->unk_190]][var_r31->unk_10][var_r17]; + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + var_r31->unk_90[var_r30] = var_r31->unk_A0[var_r30] = var_r31->unk_B0[var_r30] = var_r31->unk_D0[var_r30] + = var_r31->unk_E0[var_r30] = 0.0f; + var_r31->unk_F0[var_r30] = var_r31->unk_100[var_r30] = var_r31->unk_110[var_r30] = var_r31->unk_120[var_r30] + = var_r31->unk_130[var_r30] = var_r31->unk_140[var_r30] = 0; + var_r31->unk_160[var_r30] = var_r31->unk_170[var_r30] = var_r31->unk_150[var_r30] = 0; + } + } + break; + case 1: + if (lbl_1_bss_30 != -1) { + var_r31->unk_4C = 3; + if ((lbl_1_bss_30 == var_r31->unk_00) && (var_r31->unk_F0[0] != 0) && (var_r31->unk_F0[1] != 0) && (var_r31->unk_F0[2] != 0) + && (var_r31->unk_F0[3] != 0)) { + var_r31->unk_54 = 0x1E; + HuAudFXPlay(9); + } + } + else if ((var_r31->unk_190 < 2) && (var_r31->unk_F0[0] != 0) && (var_r31->unk_F0[1] != 0) && (var_r31->unk_F0[2] != 0) + && (var_r31->unk_F0[3] != 0)) { + if (lbl_1_bss_64[3].unk_00 < 2) { + lbl_1_bss_64[3].unk_04[lbl_1_bss_64[3].unk_00] = 0.0f; + lbl_1_bss_64[3].unk_00++; + } + var_r31->unk_4C = 2; + var_r31->unk_50 = 0; + Hu3DMotionSpeedSet(var_r29->model[var_r31->unk_190 + 1], -1.0f); + var_r31->unk_14 = var_r31->unk_1C = var_r31->unk_30 = var_r31->unk_34 = var_r31->unk_38 = 0; + var_r31->unk_18 = -1; + var_r31->unk_3C = var_r31->unk_40 = var_r31->unk_44 = var_r31->unk_48 = 0; + var_r31->unk_208 = var_r31->unk_0C == -1 ? 1 : 0; + if (var_r31->unk_0C == -1) { + sp234 = (var_r31->unk_190 + lbl_1_data_23C[var_r31->unk_00] + 1) % 3; + var_r31->unk_204 = sp568[lbl_1_data_230[var_r31->unk_190 + 1]][var_r31->unk_10][sp234]; + var_r31->unk_20C = sp4A8[lbl_1_data_230[var_r31->unk_190 + 1]][var_r31->unk_10][sp234]; + var_r31->unk_210 = sp3E8[lbl_1_data_230[var_r31->unk_190 + 1]][var_r31->unk_10][sp234]; + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + var_r31->unk_90[var_r30] = var_r31->unk_A0[var_r30] = var_r31->unk_B0[var_r30] = var_r31->unk_D0[var_r30] + = var_r31->unk_E0[var_r30] = 0.0f; + var_r31->unk_F0[var_r30] = var_r31->unk_100[var_r30] = var_r31->unk_110[var_r30] = var_r31->unk_120[var_r30] + = var_r31->unk_130[var_r30] = var_r31->unk_140[var_r30] = 0; + var_r31->unk_160[var_r30] = var_r31->unk_170[var_r30] = var_r31->unk_150[var_r30] = 0; + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + sp230 = -1; + sp22C = 10000.0f; + Hu3DModelObjPosGet(var_r29->model[4], lbl_1_data_138[var_r30], &sp2CC); + for (var_r28 = 0; var_r28 < 4; var_r28++) { + sp228 = sp2CC.x - var_r31->unk_60[var_r28]; + sp224 = sp2CC.z - var_r31->unk_80[var_r28]; + if ((var_r31->unk_F0[var_r28] == 0) && (sqrtf((sp228 * sp228) + (sp224 * sp224)) < sp22C)) { + sp230 = var_r28; + sp22C = sqrtf((sp228 * sp228) + (sp224 * sp224)); + } + } + var_r31->unk_1B4[sp230] = var_r30; + var_r31->unk_F0[sp230] = 1; + var_r31->unk_194[var_r30] = var_r31->unk_60[var_r30]; + var_r31->unk_1A4[var_r30] = var_r31->unk_80[var_r30]; + } + var_r31->unk_F0[0] = var_r31->unk_F0[1] = var_r31->unk_F0[2] = var_r31->unk_F0[3] = 0; + for (var_r30 = 0; var_r30 < 4; var_r30++) { + sp220 = var_r30 + 7; + var_r19 = &Hu3DData[var_r29->model[var_r30 + 0xC]]; + Hu3DModelPosSet(var_r29->model[sp220], var_r19->pos.x, 0.0f, var_r19->pos.z); + Hu3DModelAttrReset(var_r29->model[sp220], HU3D_ATTR_DISPOFF); + Hu3DParticleCntSet(var_r29->model[sp220], 0); + } + if (lbl_1_bss_30 == -1) { + var_r31->unk_54 = 0x1E; + HuAudFXPlay(9); + } + } + break; + case 2: + var_r31->unk_50++; + if (var_r31->unk_50 == 0xA) { + for (var_r30 = 0; var_r30 < 4; var_r30++) { + Hu3DModelAttrSet(var_r29->model[var_r30 + 0xC], HU3D_ATTR_DISPOFF); + } + } + if (var_r31->unk_50 <= 0x3C) { + sp21C = var_r31->unk_50 / 60.0; + for (var_r30 = 0; var_r30 < 4; var_r30++) { } + } + var_r31->unk_50 == 0x3C; + if ((var_r31->unk_50 >= 0) && (var_r31->unk_50 <= 0x3C)) { + sp218 = var_r31->unk_50 / 60.0; + var_f21 = 0.5 + (-0.5 * cosd((180.0f * sp218))); + var_f21 = sp218 < 0.75 ? 0 : 1; + for (var_r30 = 0; var_r30 < 4; var_r30++) { + Hu3DModelObjPosGet(var_r29->model[var_r31->unk_190 + 5], lbl_1_data_138[var_r30], &sp2C0); + var_r31->unk_60[var_r30] = (var_f21 * (sp2C0.x - sp2D8.x)) + (var_r31->unk_194[var_r30] * (1.0f - var_f21)); + var_r31->unk_80[var_r30] = (var_f21 * (sp2C0.z - sp2D8.z)) + (var_r31->unk_1A4[var_r30] * (1.0f - var_f21)); + var_r31->unk_70[var_r30] = 300.0 * sind((180.0f * sp218)); + var_r31->unk_70[var_r30] = -25.0f * (1.0f - var_f21); + } + } + if (var_r31->unk_50 == 0x3C) { + Hu3DMotionSpeedSet(var_r29->model[var_r31->unk_190 + 1], 1.0f); + Hu3DModelAttrSet(var_r29->model[var_r31->unk_190 + 1], HU3D_ATTR_DISPOFF); + var_r31->unk_190++; + Hu3DModelAttrReset(var_r29->model[var_r31->unk_190 + 1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(var_r29->model[var_r31->unk_190 + 1], HU3D_MOTATTR_LOOP); + Hu3DMotionTimeSet(var_r29->model[var_r31->unk_190 + 1], 0.0f); + for (var_r30 = 0; var_r30 < 4; var_r30++) { + sp214 = var_r30 + 7; + var_r24 = &Hu3DData[var_r29->model[var_r30 + 0xC]]; + Hu3DModelPosSet(var_r29->model[sp214], var_r24->pos.x, var_r24->pos.y, var_r24->pos.z); + Hu3DModelAttrReset(var_r29->model[sp214], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(var_r29->model[var_r30 + 0xC], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(var_r29->model[var_r30 + 0xC], 0.0f, 0.0f, 0.0f); + Hu3DParticleCntSet(var_r29->model[sp214], 0); + } + } + if ((var_r31->unk_50 >= 0x3E) && (var_r31->unk_50 <= 0x78)) { + sp210 = (var_r31->unk_50 - 0x3E) / 58.0; + sp20C = sp210 < 0.25 ? (sp210 / 0.25) : 1.0; + sp20C = var_r31->unk_50 < 0x46 ? 0 : 1; + for (var_r30 = 0; var_r30 < 4; var_r30++) { + Hu3DModelScaleSet(var_r29->model[var_r30 + 0xC], sp20C, sp20C, sp20C); + } + } + if (var_r31->unk_50 == 0x78) { + var_r31->unk_4C = 1; + var_r31->unk_50 = 0; + } + break; + case 3: + break; + } + if (var_r31->unk_54 > 0) { + var_f26 = 1.0 - ((var_r31->unk_54 - 1) / 30.0); + sp204 = var_r31->unk_190 + 5 + (var_r31->unk_00 * 9); + var_f26 = (0.5 * var_f26) + (0.5 * (1.0f - ((1.0f - var_f26) * (1.0f - var_f26)))); + sp208 = var_f26 < 0.75 ? (var_f26 / 0.75) : 1.0; + var_f26 = 1.0f - ((1.0f - var_f26) * (1.0f - var_f26)); + sp208 = 1.0f - ((1.0f - sp208) * (1.0f - sp208)); + if (var_r31->unk_54 == 0x1E) { + espDispOn(lbl_1_data_48[sp204]); + espDispOff(lbl_1_data_48[var_r31->unk_190 + 2 + (var_r31->unk_00 * 9)]); + } + espTPLvlSet(lbl_1_data_48[sp204], sp208); + espScaleSet(lbl_1_data_48[sp204], 4.0f - (3.0f * var_f26), 4.0f - (3.0f * var_f26)); + var_r31->unk_54--; + } + if (var_r31->unk_4C == 1) { + if (var_r31->unk_0C != -1) { + var_f29 = HuPadStkX[var_r31->unk_0C]; + var_f28 = HuPadStkY[var_r31->unk_0C]; + var_f29 /= 40.0f; + var_f28 /= 40.0f; + } + else if (var_r31->unk_208 != 0) { + var_f29 = 3.0f * -var_r31->unk_58; + var_f28 = -3.0f * -var_r31->unk_5C; + } + else if ((var_r31->unk_0C == -1) && ((var_r31->unk_20C != 0) || (var_r31->unk_210 != 0))) { + var_f29 = var_r31->unk_20C < 0 ? -1 : (var_r31->unk_20C > 0 ? 1 : 0); + var_f28 = var_r31->unk_210 < 0 ? -1 : (var_r31->unk_210 > 0 ? 1 : 0); + var_r31->unk_20C = var_r31->unk_20C + (var_r31->unk_20C < 0 ? 1 : (var_r31->unk_20C > 0 ? -1 : 0)); + var_r31->unk_210 = var_r31->unk_210 + (var_r31->unk_210 < 0 ? 1 : (var_r31->unk_210 > 0 ? -1 : 0)); + } + else if ((var_r31->unk_F0[0] == 0) || (var_r31->unk_F0[1] == 0) || (((var_r31->unk_F0[2] == 0) != 0)) || (var_r31->unk_F0[3] == 0)) { + if (var_r31->unk_F0[var_r31->unk_14] != 0) { + var_r23 = -1; + sp1FC = var_r31->unk_F0[3] + (var_r31->unk_F0[0] + var_r31->unk_F0[1] + var_r31->unk_F0[2]); + for (sp200 = 0; sp200 <= (sp1FC == 1 ? ((var_r31->unk_204 / 4) % 3) : (sp1FC == 2 ? (((var_r31->unk_204 / 4) / 3) % 2) : 0)); + sp200++) { + for (var_r23++; var_r31->unk_F0[var_r23] != 0; var_r23++) { } + } + var_r31->unk_14 = var_r23; + } + var_r25 = var_r31->unk_14; + if (var_r25 != -1) { + var_f30 = var_r31->unk_60[var_r25] + var_r31->unk_90[var_r25]; + var_f31 = var_r31->unk_80[var_r25] + var_r31->unk_B0[var_r25]; + var_r22 = -1; + sp1F8 = -1.0f; + sp1F4 = var_r31->unk_1C; + if (var_r31->unk_100[var_r31->unk_18] != 0) { + var_r31->unk_1C = 0; + var_r31->unk_18 = -1; + } + if (var_r31->unk_1C != 0) { + for (var_r26 = 0; var_r26 < 4; var_r26++) { + sp1F0 = var_r31->unk_60[var_r26] + var_r31->unk_90[var_r26]; + sp1EC = var_r31->unk_80[var_r26] + var_r31->unk_B0[var_r26]; + if (var_r31->unk_F0[var_r26] == 0) { + if (var_r31->unk_28 != 0.0f) { + if (var_r31->unk_28 < 0.0f ? (sp1F0 < var_r31->unk_20) : (sp1F0 > var_r31->unk_20)) { + goto block_169; + } + } + else { + block_169: + if (var_r31->unk_2C != 0.0f) { + if (var_r31->unk_2C < 0.0f ? (sp1EC < var_r31->unk_24) : (sp1EC > var_r31->unk_24)) { + goto block_174; + } + } + else { + block_174: + var_r31->unk_1C = 0; + var_r31->unk_14 = var_r26; + var_r25 = var_r26; + var_f30 = sp1F0; + var_f31 = sp1EC; + } + } + } + } + } + switch (lbl_1_data_230[var_r31->unk_190]) { + case 0: + if ((var_r31->unk_100[0] != 0) && (var_r31->unk_18 == 1) && (var_f31 > 0.0f) && (var_f30 < 0.0f)) { + var_r31->unk_1C = 1; + var_r31->unk_20 = 150.0f; + var_r31->unk_24 = 150.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_100[0] != 0) && (var_r31->unk_18 == 1) && (var_f31 > 100.0f) && (var_f30 < 150.0f)) { + var_r31->unk_1C = 1; + var_r31->unk_20 = 150.0f; + var_r31->unk_24 = 150.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_100[0] != 0) && (var_r31->unk_1C == 0) && (sp1F4 == 1)) { + var_r31->unk_1C = 2; + var_r31->unk_24 = -50.0f; + var_r31->unk_28 = 0.0f; + var_r31->unk_2C = -1.0f; + } + if ((var_r31->unk_100[0] != 0) && (var_r31->unk_18 >= 2) && (var_f30 < -100.0f) && (var_f31 < -120.0f)) { + var_r31->unk_1C = 3; + var_r31->unk_24 = -120.0f; + var_r31->unk_28 = 0.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_100[0] != 0) && (var_r31->unk_18 >= 2) && (var_r31->unk_1C == 0) && (var_f30 < 0.0f) + && (var_f31 < 0.0f)) { + var_r31->unk_1C = 4; + var_r31->unk_20 = 0.0f; + var_r31->unk_24 = -120.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_100[0] != 0) && (var_r31->unk_18 >= 2) && (var_r31->unk_1C == 0) && (sp1F4 == 3)) { + var_r31->unk_1C = 5; + var_r31->unk_20 = 190.0f; + var_r31->unk_24 = 190.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_100[0] != 0) && (var_r31->unk_1C == 0) && (sp1F4 == 5) && (var_r31->unk_18 == 3)) { + var_r31->unk_1C = 6; + var_r31->unk_20 = 0.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = 0.0f; + } + break; + case 1: + if ((var_r31->unk_18 == 3) && (var_f31 > 75.0f) && ((var_f30 < -150.0f) || (var_f30 > 150.0f))) { + var_r31->unk_1C = 1; + var_r31->unk_24 = 75.0f; + var_r31->unk_28 = 0.0f; + var_r31->unk_2C = -1.0f; + } + if ((var_r31->unk_100[1] != 0) && (var_f31 < -120.0f) && (var_f30 > 100.0f)) { + var_r31->unk_1C = 2; + var_r31->unk_24 = -120.0f; + var_r31->unk_28 = 0.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_18 == 2) && (var_r31->unk_100[0] != 0) && (var_f31 < -120.0f) && (var_f30 < -120.0f)) { + var_r31->unk_1C = 3; + if (var_f30 < var_f31) { + var_r31->unk_20 = -150.0f; + var_r31->unk_24 = -80.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = 1.0f; + } + else { + var_r31->unk_24 = -150.0f; + var_r31->unk_20 = -80.0f; + var_r31->unk_2C = -1.0f; + var_r31->unk_28 = 1.0f; + } + } + break; + case 2: + if ((var_r31->unk_100[3] != 0) && (var_f31 > 100.0f) && (var_f30 < -75.0f)) { + var_r31->unk_1C = 1; + var_r31->unk_20 = -75.0f; + var_r31->unk_24 = 175.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_100[3] != 0) && (var_f31 < -50.0f) && (var_f30 < -150.0f)) { + var_r31->unk_1C = 2; + var_r31->unk_20 = -200.0f; + var_r31->unk_24 = -25.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_r31->unk_18 == 2) && (var_r31->unk_100[2] != 0) && ((var_f30 + var_f31) > 300.0f)) { + var_r31->unk_1C = 3; + if (var_f30 > var_f31) { + var_r31->unk_20 = 200.0f; + var_r31->unk_24 = 80.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = -1.0f; + } + else { + var_r31->unk_24 = 200.0f; + var_r31->unk_20 = 80.0f; + var_r31->unk_2C = 1.0f; + var_r31->unk_28 = -1.0f; + } + } + if ((var_r31->unk_18 == 1) && (var_r31->unk_100[2] != 0) && ((var_f30 - var_f31) > 300.0f)) { + var_r31->unk_1C = 4; + if (var_f30 > -var_f31) { + var_r31->unk_20 = 200.0f; + var_r31->unk_24 = -80.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + else { + var_r31->unk_24 = -200.0f; + var_r31->unk_20 = 80.0f; + var_r31->unk_2C = -1.0f; + var_r31->unk_28 = -1.0f; + } + } + break; + case 3: + if ((var_f31 > 200.0f) && (var_f30 > 200.0f) && (var_r31->unk_18 != 3)) { + var_r31->unk_1C = 2; + if (var_r31->unk_18 == 2) { + var_r31->unk_20 = -150.0f; + var_r31->unk_24 = 150.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = 1.0f; + } + else { + var_r31->unk_20 = 150.0f; + var_r31->unk_24 = -150.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = -1.0f; + } + } + if ((var_f31 > 0.0f) && (var_f30 > 0.0f) && (!(var_f30 < 100.0f) || !(var_f31 < 100.0f)) && (var_r31->unk_18 != 3) + && (var_r31->unk_1C == 0)) { + var_r31->unk_1C = 1; + var_r31->unk_20 = 200.0f; + var_r31->unk_24 = 200.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_f31 > 200.0f) && (var_f30 < -200.0f) && (var_r31->unk_18 != 2)) { + var_r31->unk_1C = 4; + if (var_r31->unk_18 == 3) { + var_r31->unk_20 = 150.0f; + var_r31->unk_24 = 150.0f; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + else { + var_r31->unk_20 = -150.0f; + var_r31->unk_24 = -150.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = -1.0f; + } + } + if ((var_f31 > 0.0f) && (var_f30 < 0.0f) && (var_r31->unk_18 != 2) && (var_r31->unk_1C == 0) + && ((var_r31->unk_100[0] != 0) || (var_r31->unk_18 == 3))) { + var_r31->unk_1C = 3; + var_r31->unk_20 = -200.0f; + var_r31->unk_24 = 200.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_f31 < -200.0f) && (var_f30 > 200.0f) && (var_r31->unk_18 == 3) && (var_r31->unk_1C == 0)) { + var_r31->unk_1C = 9; + var_r31->unk_20 = 200.0f; + var_r31->unk_24 = 0.0; + var_r31->unk_28 = 1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_f31 < -200.0f) && (var_f30 < -200.0f) && (var_r31->unk_18 == 2) && (var_r31->unk_1C == 0)) { + var_r31->unk_1C = 8; + var_r31->unk_20 = -200.0f; + var_r31->unk_24 = 0.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = 1.0f; + } + if ((var_f31 < -200.0f) && (var_r31->unk_18 >= 2) && (var_r31->unk_1C == 0)) { + var_r31->unk_1C = 7; + var_r31->unk_24 = -200.0f; + var_r31->unk_2C = -1.0f; + if (var_r31->unk_18 == 3) { + var_r31->unk_20 = 200.0f; + var_r31->unk_28 = 1.0f; + } + else { + var_r31->unk_20 = -200.0f; + var_r31->unk_28 = -1.0f; + } + } + if ((var_f31 < 0.0f) && (var_r31->unk_18 >= 2) && (var_r31->unk_1C == 0)) { + var_r31->unk_1C = 6; + var_r31->unk_24 = -200.0f; + var_r31->unk_28 = 0.0; + var_r31->unk_2C = -1.0f; + } + if ((var_f31 < -175.0f) && (var_f30 > 175.0f) && ((var_r31->unk_18 == 0) || (var_r31->unk_18 == 2)) + && (var_r31->unk_1C == 0)) { + var_r31->unk_1C = 0xA; + var_r31->unk_20 = 0.0f; + var_r31->unk_24 = -200.0f; + var_r31->unk_28 = -1.0f; + var_r31->unk_2C = -1.0f; + } + break; + } + if (var_r31->unk_18 == -1) { + for (var_r30 = 0; var_r30 < 4; var_r30++) { + if ((var_r31->unk_100[var_r30] == 0) + && ((sp1E8 = sp394[var_r30].x - var_r31->unk_60[var_r25], sp1E4 = sp394[var_r30].z - var_r31->unk_80[var_r25], + ((var_r22 == -1) != 0)) + || (((sp1E8 * sp1E8) + (sp1E4 * sp1E4)) < sp1F8))) { + var_r22 = var_r30; + sp1F8 = (sp1E8 * sp1E8) + (sp1E4 * sp1E4); + } + } + if (var_r22 != -1) { + var_r31->unk_18 = var_r22; + } + } + else { + var_r22 = var_r31->unk_18; + } + if ((var_r31->unk_18 != -1) && (var_r31->unk_1C == 0)) { + if (((var_r31->unk_58 < -0.95) || (var_r31->unk_58 > 0.95)) && ((var_r31->unk_5C < -0.95) || (var_r31->unk_5C > 0.95)) + && (var_r31->unk_34 > 0xF) && (var_r31->unk_38 < 0x3C)) { + var_f29 = var_f30 < sp394[var_r31->unk_18].x ? 1 : (var_f30 > sp394[var_r31->unk_18].x ? -1 : 0); + var_f28 = var_f31 < sp394[var_r31->unk_18].z ? 1 : (var_f31 > sp394[var_r31->unk_18].z ? -1 : 0); + } + else { + var_f29 = var_f30 < sp394[var_r31->unk_18].x ? 1 : (var_f30 > sp394[var_r31->unk_18].x ? -1 : 0); + var_f28 = var_f31 < sp394[var_r31->unk_18].z ? 1 : (var_f31 > sp394[var_r31->unk_18].z ? -1 : 0); + } + } + else if (var_r31->unk_1C != 0) { + if (var_r31->unk_28 != 0.0f) { + if (!(var_r31->unk_28 < 0.0f ? (var_f30 < var_r31->unk_20) : (var_f30 > var_r31->unk_20))) { + var_f29 = var_r31->unk_28 < 0.0f ? (var_f30 > var_r31->unk_20 ? -1 : 0) : (var_f30 < var_r31->unk_20 ? 1 : 0); + } + else { + goto block_368; + } + } + else { + block_368: + var_f29 = var_r31->unk_58 < -0.1 ? 1.0f : (var_r31->unk_58 > 0.1 ? -1.0f : (-10.0f * var_r31->unk_58)); + } + if (var_r31->unk_2C != 0.0f) { + if ((var_r31->unk_2C < 0.0f ? (var_f31 < var_r31->unk_24) : (var_f31 > var_r31->unk_24)) == 0) { + var_f28 = var_r31->unk_2C < 0.0f ? (var_f31 > var_r31->unk_24 ? -1 : 0) : (var_f31 < var_r31->unk_24 ? 1 : 0); + } + else { + goto block_390; + } + } + else { + block_390: + var_f28 = var_r31->unk_5C < -0.1 ? 1.0f : (var_r31->unk_5C > 0.1 ? -1.0f : (-10.0f * var_r31->unk_5C)); + } + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + sp1E0 = var_r31->unk_60[var_r30] - var_r31->unk_160[var_r30]; + sp1DC = var_r31->unk_80[var_r30] - var_r31->unk_170[var_r30]; + if (((sp1E0 * sp1E0) + (sp1DC * sp1DC)) < 9.0f) { + var_r31->unk_150[var_r30]++; + } + else { + var_r31->unk_160[var_r30] = var_r31->unk_60[var_r30]; + var_r31->unk_170[var_r30] = var_r31->unk_80[var_r30]; + var_r31->unk_150[var_r30] = 0; + } + } + if (var_r31->unk_44 <= 0) { + var_r31->unk_3C = var_f29; + var_r31->unk_40 = var_f28; + var_r31->unk_44 = var_r31->unk_48; + var_r31->unk_48 -= (var_r31->unk_48 >= (var_r31->unk_48 / 10) ? (var_r31->unk_48 / 10) : 0); + } + else { + var_f29 = var_r31->unk_3C; + var_f28 = var_r31->unk_40; + var_r31->unk_44--; + } + var_f29 *= 0.5; + var_f28 *= -0.5; + } + } + if (((var_f29 * var_f29) + (var_f28 * var_f28)) > 1.0f) { + sp1D8 = sqrt((var_f29 * var_f29) + (var_f28 * var_f28)); + var_f29 *= 1.0f / sp1D8; + var_f28 *= 1.0f / sp1D8; + } + if ((((var_f29 * var_f29) + (var_f28 * var_f28)) < 0.0625) && (var_r31->unk_208 == 0)) { + var_f29 = 0.0f; + var_f28 = 0.0f; + } + } + sp1D4 = var_r31->unk_58; + sp1D0 = var_r31->unk_5C; + var_r31->unk_58 = var_r31->unk_58 + (var_f29 / 3.0f); + var_r31->unk_58 = var_r31->unk_58 < -1.0f ? -1.0f : (var_r31->unk_58 > 1.0f ? 1.0f : var_r31->unk_58); + var_r31->unk_5C = var_r31->unk_5C + (-var_f28 / 3.0f); + var_r31->unk_5C = var_r31->unk_5C < -1.0f ? -1.0f : (var_r31->unk_5C > 1.0f ? 1.0f : var_r31->unk_5C); + var_r31->unk_208 = ((var_r31->unk_58 == 0.0f) && (var_r31->unk_5C == 0.0f)) ? 0 : var_r31->unk_208; + if ((lbl_1_bss_48 == 0x3EC) && ((sp1D4 != var_r31->unk_58) || (sp1D0 != var_r31->unk_5C))) { + if (var_r31->unk_214 == -1) { + var_r31->unk_214 = HuAudFXPlay(0x7A6); + } + } + else { + if (var_r31->unk_214 != -1) { + HuAudFXStop(var_r31->unk_214); + } + var_r31->unk_214 = -1; + } + if (lbl_1_bss_48 >= 0x3ED) { + sp1CC = 0.666f; + sp1C8 = 0.9f; + var_r31->unk_5C = var_r31->unk_5C > sp1CC + ? ((var_r31->unk_5C * sp1C8) + (sp1CC * (1.0f - sp1C8))) + : (var_r31->unk_5C < -sp1CC ? ((var_r31->unk_5C * sp1C8) - (sp1CC * (1.0f - sp1C8))) : var_r31->unk_5C); + } + if (var_r31->unk_4C != 2) { + for (var_r18 = 0; var_r18 < 2; var_r18++) { + for (var_r30 = 0; var_r30 < 4; var_r30++) { + var_r31->unk_110[var_r30] = var_r31->unk_120[var_r30] = var_r31->unk_130[var_r30] = var_r31->unk_140[var_r30] = 0; + if (var_r31->unk_F0[var_r30] == 0) { + var_r31->unk_90[var_r30] += 0.13888888888888887 * var_r31->unk_58 * (var_r31->unk_208 != 0 ? 0 : 1) + * (var_r31->unk_70[var_r30] >= 0.0f ? 1.0f : (1.0f - (var_r31->unk_70[var_r30] / -25.0f))); + var_r31->unk_B0[var_r30] += 0.13888888888888887 * var_r31->unk_5C * (var_r31->unk_208 != 0 ? 0 : 1) + * (var_r31->unk_70[var_r30] >= 0.0f ? 1.0f : (1.0f - (var_r31->unk_70[var_r30] / -25.0f))); + var_r31->unk_70[var_r30] += var_r31->unk_A0[var_r30]; + var_r31->unk_38 += var_r31->unk_38 < 0x8000; + var_f27 + = sqrtf((var_r31->unk_90[var_r30] * var_r31->unk_90[var_r30]) + (var_r31->unk_B0[var_r30] * var_r31->unk_B0[var_r30])); + sp1C4 = var_r31->unk_90[var_r30]; + sp1C0 = var_r31->unk_B0[var_r30]; + if (var_f27 > 0.0f) { + if (var_f27 > 7.59375) { + var_r31->unk_90[var_r30] *= 7.5 / var_f27; + var_r31->unk_B0[var_r30] *= 7.5 / var_f27; + } + else { + var_r31->unk_90[var_r30] *= (var_f27 < 0.09375 ? 0.0 : (var_f27 - 0.09375)) / var_f27; + var_r31->unk_B0[var_r30] *= (var_f27 < 0.09375 ? 0.0 : (var_f27 - 0.09375)) / var_f27; + } + } + var_r31->unk_60[var_r30] += var_r31->unk_90[var_r30]; + var_r31->unk_80[var_r30] += var_r31->unk_B0[var_r30]; + var_f27 + = sqrtf((var_r31->unk_90[var_r30] * var_r31->unk_90[var_r30]) + (var_r31->unk_B0[var_r30] * var_r31->unk_B0[var_r30])); + for (var_r28 = 0; var_r28 < 4; var_r28++) { + sp1BC = var_r31->unk_60[var_r30] - var_r31->unk_60[var_r28]; + sp1B8 = var_r31->unk_80[var_r30] - var_r31->unk_80[var_r28]; + var_f24 = sqrtf((sp1BC * sp1BC) + (sp1B8 * sp1B8)); + if ((var_r30 != var_r28) && (var_r31->unk_F0[var_r28] == 0) && (var_f24 > 0.0f) && (var_f24 < 62.5)) { + var_f20 = sp1BC / var_f24; + var_f19 = sp1B8 / var_f24; + sp1B4 = var_r31->unk_90[var_r30]; + sp1B0 = var_r31->unk_B0[var_r30]; + var_f18 = (var_r31->unk_90[var_r30] + var_r31->unk_90[var_r28]) / 2.0; + sp1A4 = (var_r31->unk_B0[var_r30] + var_r31->unk_B0[var_r28]) / 2.0; + sp1AC = (var_f20 * -(var_r31->unk_90[var_r30] - var_f18)) - (var_f19 * (var_r31->unk_B0[var_r30] - sp1A4)); + sp1A8 = (-var_f20 * -(var_r31->unk_90[var_r28] - var_f18)) - (-var_f19 * (var_r31->unk_B0[var_r28] - sp1A4)); + var_r31->unk_60[var_r30] += var_f20 * (0.1 + (62.5 - var_f24)) / 2.0; + var_r31->unk_80[var_r30] += var_f19 * (0.1 + (62.5 - var_f24)) / 2.0; + var_r31->unk_60[var_r28] -= var_f20 * (0.1 + (62.5 - var_f24)) / 2.0; + var_r31->unk_80[var_r28] -= var_f19 * (0.1 + (62.5 - var_f24)) / 2.0; + var_r31->unk_90[var_r30] = var_f18 + (0.75 * ((var_r31->unk_90[var_r30] - var_f18) + (2.0f * var_f20 * sp1AC))); + var_r31->unk_B0[var_r30] = sp1A4 + (0.75 * ((var_r31->unk_B0[var_r30] - sp1A4) + (2.0f * var_f19 * sp1AC))); + var_r31->unk_90[var_r28] = var_f18 + (0.75 * ((var_r31->unk_90[var_r28] - var_f18) + (2.0f * -var_f20 * sp1A8))); + var_r31->unk_B0[var_r28] = sp1A4 + (0.75 * ((var_r31->unk_B0[var_r28] - sp1A4) + (2.0f * -var_f19 * sp1A8))); + var_r31->unk_110[var_r30] = 1 << var_r28; + if (((var_r31->unk_90[var_r30] + var_r31->unk_B0[var_r30]) > 0.0) && (var_r31->unk_1C4[var_r30] > 0xF) + && (var_r31->unk_1C4[var_r28] > 0xF) && (lbl_1_bss_64[1].unk_00 < 2)) { + lbl_1_bss_64[1].unk_04[lbl_1_bss_64[1].unk_00] = 0.0f; + lbl_1_bss_64[1].unk_00++; + } + var_r31->unk_1C4[var_r30] = 0; + var_r31->unk_1C4[var_r28] = 0; + } + } + for (var_r28 = 0; var_r28 < 4; var_r28++) { + sp1A0 = var_r31->unk_60[var_r30] - var_r31->unk_60[var_r28]; + sp19C = var_r31->unk_80[var_r30] - var_r31->unk_80[var_r28]; + sp198 = sqrtf((sp1A0 * sp1A0) + (sp19C * sp19C)); + if ((var_r31->unk_F0[var_r28] != 0) && (var_f27 > 0.0f)) { + if (sp198 < 62.5) { + sp194 = sp1A0 / sp198; + sp190 = sp19C / sp198; + sp18C = var_r31->unk_90[var_r30]; + sp188 = var_r31->unk_B0[var_r30]; + sp184 = (-sp18C * sp194) - (sp188 * sp190); + var_r31->unk_60[var_r30] += sp194 * (0.1 + (62.5 - sp198)); + var_r31->unk_80[var_r30] += sp190 * (0.1 + (62.5 - sp198)); + var_r31->unk_90[var_r30] = 0.75 * (sp18C + (2.0f * sp194 * sp184)); + var_r31->unk_B0[var_r30] = 0.75 * (sp188 + (2.0f * sp190 * sp184)); + var_r31->unk_60[var_r30] += var_r31->unk_90[var_r30]; + var_r31->unk_80[var_r30] += var_r31->unk_B0[var_r30]; + var_r31->unk_34 = var_r31->unk_30 == (var_r28 + 1) ? (var_r31->unk_34 + 1) : 1; + var_r31->unk_30 = var_r28 + 1; + var_r31->unk_38 = 0; + var_r31->unk_120[var_r30] = 1 << var_r28; + if (((var_r31->unk_90[var_r30] + var_r31->unk_B0[var_r30]) > 0.0) && (var_r31->unk_1C4[var_r30] > 0xF) + && (var_r31->unk_1C4[var_r28] > 0xF) && (lbl_1_bss_64[1].unk_00 < 2)) { + lbl_1_bss_64[1].unk_04[lbl_1_bss_64[1].unk_00] = 0.0f; + lbl_1_bss_64[1].unk_00++; + } + var_r31->unk_1C4[var_r30] = 0; + var_r31->unk_1C4[var_r28] = 0; + } + } + } + for (var_r28 = 0; var_r28 < (lbl_1_data_230[var_r31->unk_190] == 2 ? 2 : 3); var_r28++) { + sp180 = var_r31->unk_60[var_r30] - sp3C4[var_r28].x; + sp17C = var_r31->unk_80[var_r30] - sp3C4[var_r28].z; + sp178 = sqrtf((sp180 * sp180) + (sp17C * sp17C)); + if ((sp178 > 0.0f) && (sp178 < 62.5)) { + sp174 = sp180 / sp178; + sp170 = sp17C / sp178; + sp16C = var_r31->unk_90[var_r30]; + sp168 = var_r31->unk_B0[var_r30]; + sp164 = (-sp16C * sp174) - (sp168 * sp170); + var_r31->unk_60[var_r30] += sp174 * (0.1 + (62.5 - sp178)); + var_r31->unk_80[var_r30] += sp170 * (0.1 + (62.5 - sp178)); + var_r31->unk_90[var_r30] = 0.75 * (sp16C + (2.0f * sp174 * sp164)); + var_r31->unk_B0[var_r30] = 0.75 * (sp168 + (2.0f * sp170 * sp164)); + var_r31->unk_60[var_r30] += var_r31->unk_90[var_r30]; + var_r31->unk_80[var_r30] += var_r31->unk_B0[var_r30]; + var_r31->unk_34 = var_r31->unk_30 == (var_r28 + 5) ? (var_r31->unk_34 + 1) : 1; + var_r31->unk_30 = var_r28 + 5; + var_r31->unk_38 = 0; + var_r31->unk_130[var_r30] = 1 << var_r28; + if (((var_r31->unk_90[var_r30] + var_r31->unk_B0[var_r30]) > 0.0) && (var_r31->unk_1C4[var_r30] > 0xF) + && (lbl_1_bss_64[1].unk_00 < 2)) { + lbl_1_bss_64[1].unk_04[lbl_1_bss_64[1].unk_00] = 0.0f; + lbl_1_bss_64[1].unk_00++; + } + var_r31->unk_1C4[var_r30] = 0; + } + } + if (((var_r31->unk_60[var_r30] - 37.5) < -250.0) || ((37.5 + var_r31->unk_60[var_r30]) > 250.0)) { + var_r31->unk_60[var_r30] = (var_r31->unk_60[var_r30] - 37.5) < -250.0 ? -212.5 : 212.5; + var_r31->unk_90[var_r30] *= -0.75; + var_r31->unk_60[var_r30] += var_r31->unk_90[var_r30]; + if (((var_r31->unk_90[var_r30] + var_r31->unk_B0[var_r30]) > 0.0) && (var_r31->unk_1C4[var_r30] > 0xF) + && (lbl_1_bss_64[1].unk_00 < 2)) { + lbl_1_bss_64[1].unk_04[lbl_1_bss_64[1].unk_00] = 0.0f; + lbl_1_bss_64[1].unk_00++; + } + var_r31->unk_1C4[var_r30] = 0; + } + if (((var_r31->unk_80[var_r30] - 37.5) < -250.0) || ((37.5 + var_r31->unk_80[var_r30]) > 250.0)) { + var_r31->unk_80[var_r30] = (var_r31->unk_80[var_r30] - 37.5) < -250.0 ? -212.5 : 212.5; + var_r31->unk_B0[var_r30] *= -0.75; + var_r31->unk_80[var_r30] += var_r31->unk_B0[var_r30]; + if (((var_r31->unk_90[var_r30] + var_r31->unk_B0[var_r30]) > 0.0) && (var_r31->unk_1C4[var_r30] > 0xF) + && (lbl_1_bss_64[1].unk_00 < 2)) { + lbl_1_bss_64[1].unk_04[lbl_1_bss_64[1].unk_00] = 0.0f; + lbl_1_bss_64[1].unk_00++; + } + var_r31->unk_1C4[var_r30] = 0; + } + var_r21 = 0; + for (var_r21 = 0; var_r21 < 0x10; var_r21++) { + var_r31->unk_1C4[var_r21]++; + } + sp160 = 0; + for (var_r28 = 0; var_r28 < 4; var_r28++) { + sp15C = var_r31->unk_60[var_r30] - sp394[var_r28].x; + sp158 = ((sp15C == 0.0f) && (var_r31->unk_80[var_r30] == sp394[var_r28].z)) + ? 1e-10 + : (var_r31->unk_80[var_r30] - sp394[var_r28].z); + var_f23 = sqrtf((sp15C * sp15C) + (sp158 * sp158)); + sp154 = 0; + for (var_r20 = 0; var_r20 < 4; var_r20++) { + if (((var_r31->unk_110[var_r30] & (1 << var_r20)) != 0) && (var_r31->unk_130[var_r20] != 0)) { + sp154 = 1; + } + } + if ((var_r31->unk_0C != -1) && (lbl_1_data_230[var_r31->unk_190] == 1) && (var_r28 == 3)) { + if (var_r31->unk_180[var_r30] > 0) { + var_f23 = 1000.0f; + var_r31->unk_180[var_r30]--; + } + for (var_r27 = 0; var_r27 < 4; var_r27++) { + if ((var_r31->unk_00 == 0) && ((HuPadBtn[0] & PAD_BUTTON_B) != 0)) { + OSReport("%d | %d\n%d | %d\n%f,%f\n%f,%f\n", var_r31->unk_110[var_r30], 1 << var_r27, + var_r31->unk_110[var_r27], 1 << var_r30, var_r31->unk_60[var_r30], var_r31->unk_80[var_r30], + var_r31->unk_60[var_r27], var_r31->unk_80[var_r27]); + } + if ((((var_r31->unk_110[var_r30] & (1 << var_r27)) != 0) || ((var_r31->unk_110[var_r27] & (1 << var_r30)) != 0)) + && (var_r31->unk_80[var_r27] > var_r31->unk_80[var_r30]) && (var_r31->unk_60[var_r30] < 100.0f) + && (var_r31->unk_60[var_r30] > -100.0f) && (var_r31->unk_80[var_r30] > 150.0f) + && (var_r31->unk_60[var_r27] < 100.0f) && (var_r31->unk_60[var_r27] > -100.0f) + && (var_r31->unk_80[var_r27] > 150.0f)) { + var_f23 = 1000.0f; + var_r31->unk_180[var_r30] = 3; + } + } + } + if ((sp154 == 0) && (var_f23 < 37.5)) { + sp150 = sp15C / var_f23; + sp14C = sp158 / var_f23; + sp148 = 37.5 * sind((90.0 * (-var_r31->unk_70[var_r30] / 37.5))); + sp144 = var_r31->unk_70[var_r30] <= -37.5 ? 90.0 : (asind(1.0 + (var_r31->unk_70[var_r30] / 37.5))); + var_r31->unk_140[var_r30] = 1 << var_r28; + sp140 = sqrtf((var_r31->unk_B0[var_r30] * var_r31->unk_B0[var_r30]) + + ((var_r31->unk_90[var_r30] * var_r31->unk_90[var_r30]) + + (var_r31->unk_A0[var_r30] * var_r31->unk_A0[var_r30]))); + sp13C = sqrtf( + (var_r31->unk_90[var_r30] * var_r31->unk_90[var_r30]) + (var_r31->unk_B0[var_r30] * var_r31->unk_B0[var_r30])); + sp138 = atan2d(var_r31->unk_A0[var_r30], sp13C); + var_r31->unk_90[var_r30] -= 0.375 * sp150; + var_r31->unk_B0[var_r30] -= 0.375 * sp14C; + var_r31->unk_60[var_r30] -= 0.375 * sp150; + var_r31->unk_80[var_r30] -= 0.375 * sp14C; + if (var_r31->unk_70[var_r30] < (-25.0 * sind((90.0 * (1.0 - (var_f23 / 37.5)))))) { + var_r31->unk_70[var_r30] = -25.0 * sind((90.0 * (1.0 - (var_f23 / 37.5)))); + } + if ((var_r31->unk_70[var_r30] <= -24.5) && (var_f23 < 0.75)) { + var_r31->unk_70[var_r30] = -25.0f; + var_r31->unk_A0[var_r30] = 0.0f; + var_r31->unk_F0[var_r30] = 1; + var_r31->unk_100[var_r28] = 1; + var_r31->unk_48 = lbl_1_rodata_10[var_r31->unk_10]; + if (lbl_1_bss_64[2].unk_00 < 2) { + lbl_1_bss_64[2].unk_04[lbl_1_bss_64[2].unk_00] = 0.0f; + lbl_1_bss_64[2].unk_00++; + } + omVibrate(var_r31->unk_04, 0xC, 6, 6); + } + } + else { + sp160++; + } + if (var_r28 == 3) { + if ((sp160 == 4) && (var_r31->unk_70[var_r30] < 0.0f)) { + var_r31->unk_70[var_r30] = 0.0f; + var_r31->unk_A0[var_r30] *= -0.0; + } + else { + var_r31->unk_A0[var_r30] += -0.1875; + } + } + } + sp134 = atan2d(sp1C4, sp1C0); + sp130 = atan2d(var_r31->unk_90[var_r30], var_r31->unk_B0[var_r30]); + var_f22 + = sqrtf((var_r31->unk_90[var_r30] * var_r31->unk_90[var_r30]) + (var_r31->unk_B0[var_r30] * var_r31->unk_B0[var_r30])); + var_f25 = sp130 - sp134; + var_f25 += var_f25 < -180.0f ? 0x168 : (var_f25 > 180.0f ? -0x168 : 0); + var_f25 += var_f25 < -180.0f ? 0x168 : (var_f25 > 180.0f ? -0x168 : 0); + var_f22 = var_f22 <= (1.03125 * sqrt(0.03858024691358024)) ? 0.0f : var_f22; + var_r31->unk_D0[var_r30] + -= (2.625 * ((var_f22 * (var_f25 < -90.0f ? -1.0 : (var_f25 > 90.0f ? 1.0 : (var_f25 / 90.0)))) / 3.75)); + var_r31->unk_D0[var_r30] = var_r31->unk_D0[var_r30] >= 7.875 ? 7.875 : var_r31->unk_D0[var_r30]; + var_r31->unk_C0[var_r30] += var_r31->unk_D0[var_r30]; + var_r31->unk_C0[var_r30] += var_r31->unk_C0[var_r30] < -180.0f ? 0xB4 : (var_r31->unk_C0[var_r30] > 180.0f ? -0xB4 : 0); + if (fabs(var_f22) < fabs(var_r31->unk_E0[var_r30])) { + var_r31->unk_D0[var_r30] + = var_r31->unk_E0[var_r30] == 0.0f ? 0.0f : ((var_r31->unk_D0[var_r30] * var_f22) / var_r31->unk_E0[var_r30]); + } + var_r31->unk_E0[var_r30] = var_f22; + } + } + } + } + Hu3DModelRotSet(var_r29->model[var_r31->unk_190 + 1], 10.0f * var_r31->unk_5C, 0.0f, 10.0f * -var_r31->unk_58); + Hu3DModelRotSet(var_r29->model[11], 10.0f * var_r31->unk_5C, 0.0f, 10.0f * -(var_r31->unk_58)); + if (lbl_1_bss_48 == 0x3EB) { + sp12C = var_r29->rot.y; + sp128 = 180.0 + ((8.0f * var_r31->unk_58) * (0.125 + ((0.6 + var_r31->unk_5C) / 0.875))); + var_r29->rot.y = (3.0f + sp12C) < sp128 ? (3.0f + sp12C) : ((sp12C - 3.0f) > sp128 ? (sp12C - 3.0f) : sp128); + if (lbl_1_bss_4C == 0xA) { + Hu3DMotionShiftSet(var_r29->model[0], var_r29->motion[1], 39.0 * (0.5 + (0.5 * var_r31->unk_5C)), 20.0f, HU3D_MOTATTR_PAUSE); + } + } + else if (lbl_1_bss_48 == 0x3EC) { + omSetRot(var_r29, 0.0f, 180.0 + ((8.0f * var_r31->unk_58) * (0.125 + ((0.6 + var_r31->unk_5C) / 0.875))), 0.0f); + Hu3DMotionTimeSet(var_r29->model[0], 39.0 * (0.5 + (0.5 * var_r31->unk_5C))); + } + else if (lbl_1_bss_48 == 0x3ED) { + if (lbl_1_bss_4C == 1) { + Hu3DModelAttrReset(var_r29->model[0], HU3D_MOTATTR_PAUSE); + Hu3DMotionShiftSet(var_r29->model[0], var_r29->motion[0], 0.0f, 12.0f, HU3D_MOTATTR_LOOP); + } + if (lbl_1_bss_4C >= 0x19) { + var_r29->rot.y *= 0.8; + } + } + else if (lbl_1_bss_48 >= 0x3EE) { + var_r29->rot.y = 0.0f; + if ((lbl_1_bss_4C == 1) && (lbl_1_bss_48 == 0x3EE)) { + if ((var_r31->unk_00 != lbl_1_bss_30) && (var_r31->unk_08 != -1)) { + s32 sp2E4[8] = { 0x121, 0x161, 0x1A1, 0x1E1, 0x221, 0x261, 0x2A1, 0x2E1 }; + HuAudFXPlay(sp2E4[var_r31->unk_08]); + } + Hu3DMotionShiftSet(var_r29->model[0], var_r29->motion[var_r31->unk_00 == lbl_1_bss_30 ? 2 : 3], 0.0f, 8.0f, + ((var_r31->unk_00 == lbl_1_bss_30) && (var_r31->unk_08 == -1)) ? 0x40000001 : 0); + } + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + lbl_1_bss_18 = var_r31->unk_C0[var_r30]; + lbl_1_bss_18 = lbl_1_bss_18 < -180.0f ? (360.0f + lbl_1_bss_18) : (lbl_1_bss_18 > 180.0f ? (lbl_1_bss_18 - 360.0f) : lbl_1_bss_18); + sp124 = ((-90.175 <= lbl_1_bss_18) && (lbl_1_bss_18 <= -90.0f)) != 0 + ? -90.175 + : ((-90.0f <= lbl_1_bss_18) && (lbl_1_bss_18 <= -89.825) ? -89.825 : lbl_1_bss_18); + PSMTXRotRad(sp304, 0x78, 0.017453292f * (10.0f * var_r31->unk_5C)); + PSMTXRotRad(sp364, 0x7A, 0.017453292f * (10.0f * -var_r31->unk_58)); + PSMTXConcat(sp364, sp304, sp364); + PSMTXRotRad(sp304, 0x79, 0.017453292f * sp124); + PSMTXRotRad(sp334, 0x78, 0.017453292f * (15.0f * var_r31->unk_5C)); + PSMTXConcat(sp334, sp304, sp334); + PSMTXRotRad(sp304, 0x7A, 0.017453292f * (15.0f * -var_r31->unk_58)); + PSMTXConcat(sp304, sp334, sp334); + Hu3DMtxRotGet(sp334, &sp2A8); + sp2B4.x = var_r31->unk_60[var_r30]; + sp2B4.y = var_r31->unk_70[var_r30]; + sp2B4.z = var_r31->unk_80[var_r30]; + PSMTXMultVec(sp364, &sp2B4, &sp2B4); + Hu3DModelPosSet(var_r29->model[var_r30 + 0xC], sp2D8.x + sp2B4.x, sp2D8.y + sp2B4.y, sp2D8.z + sp2B4.z); + Hu3DModelRotSet(var_r29->model[var_r30 + 0xC], 10.0f * var_r31->unk_5C, 0.0f, 10.0f * -var_r31->unk_58); + Hu3DModelRotSet(var_r29->model[var_r30 + 0xC], sp2A8.x, sp2A8.y, sp2A8.z); + } + } +} + +s32 lbl_1_data_284 = -1; +float lbl_1_data_288 = 700.0f; +float lbl_1_data_28C = 314.0f; +float lbl_1_data_290 = -100.0f; +float lbl_1_data_294 = -30.0f; + +void fn_1_6850(omObjData *object) +{ + M449DllWork *sp20[2]; + s32 sp1C; + s32 sp18; + s32 sp14; + s32 sp10; + s32 spC; + s32 sp8; + float var_f31; + float var_f30; + float var_f29; + + s32 var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + + for (var_r31 = 0; var_r31 < 2; var_r31++) { + sp20[var_r31] = (&lbl_1_bss_54)[var_r31]->data; + } + lbl_1_bss_4++; + if (lbl_1_bss_48 == 0x3EC) { + lbl_1_bss_14++; + } + var_r27 = 0; + var_r26 = 0; + var_r25 = 0; + var_r24 = 0; + if ((sp20[0]->unk_190 == 2) && (sp20[0]->unk_F0[0] != 0)) { + var_r24 = 1; + } + if ((var_r24 != 0) && (sp20[0]->unk_F0[1] != 0)) { + var_r25 = 1; + } + if ((var_r25 != 0) && (sp20[0]->unk_F0[2] != 0)) { + var_r26 = 1; + } + if ((var_r26 != 0) && (sp20[0]->unk_F0[3] != 0)) { + var_r27 = 1; + } + var_r30 = var_r27; + var_r23 = 0; + var_r22 = 0; + var_r21 = 0; + var_r20 = 0; + if ((sp20[1]->unk_190 == 2) && (sp20[1]->unk_F0[0] != 0)) { + var_r20 = 1; + } + if ((var_r20 != 0) && (sp20[1]->unk_F0[1] != 0)) { + var_r21 = 1; + } + if ((var_r21 != 0) && (sp20[1]->unk_F0[2] != 0)) { + var_r22 = 1; + } + if ((var_r22 != 0) && (sp20[1]->unk_F0[3] != 0)) { + var_r23 = 1; + } + var_r29 = var_r23; + lbl_1_bss_30 = lbl_1_bss_30 == -1 ? ((var_r30 != 0) && (var_r29 != 0) ? (rand8() % 2) : (var_r30 != 0 ? 0 : (var_r29 != 0 ? 1 : lbl_1_bss_30))) + : lbl_1_bss_30; + lbl_1_bss_30 = ((lbl_1_bss_30 == -1) && (lbl_1_bss_14 >= 0x4650)) != 0 + ? (sp20[0]->unk_190 > sp20[1]->unk_190 ? 0 : (sp20[0]->unk_190 < sp20[1]->unk_190 ? 1 : 4)) + : lbl_1_bss_30; + var_r28 = lbl_1_data_284; + { + UnkCameraStruct sp28[4] = { + { 2500.0f, 0.0f, 0.0f, -100.0f, -40.0f, 0.0f }, + { 700.0f, 0.0f, 0.0f, -750.0f, -30.0f, 0.0f }, + { 775.0f, -350.0f, -27.0f, 400.0f, -25.0f, -7.0f }, + { 775.0f, 350.0f, -27.0f, 400.0f, -25.0f, 7.0f }, + }; + if (lbl_1_data_284 == -1) { + lbl_1_data_284 = 1; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 1.0f; + } + if ((lbl_1_bss_48 == 0x3E9) && (lbl_1_data_284 == 1)) { + lbl_1_data_284 = 0; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 0.0f; + } + if ((lbl_1_bss_48 == 0x3EE) && (lbl_1_bss_4C == 1) && (lbl_1_bss_30 == 0)) { + lbl_1_data_284 = 2; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if ((lbl_1_bss_48 == 0x3EE) && (lbl_1_bss_4C == 1) && (lbl_1_bss_30 == 1) && (sp20[1]->unk_08 != -1)) { + lbl_1_data_284 = 3; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if ((var_r28 != lbl_1_data_284) && (var_r28 != -1)) { + lbl_1_data_288 = CZoom; + lbl_1_data_28C = Center.y; + lbl_1_data_290 = Center.z; + lbl_1_data_294 = CRot.x; + } + if (lbl_1_bss_20 <= 1.0f) { + if (lbl_1_bss_1C == 0) { + lbl_1_bss_20 = 1.0 - (0.95 * (1.0f - lbl_1_bss_20)); + var_f31 = lbl_1_bss_20; + } + else { + lbl_1_bss_20 += 0.008333333333333333; + lbl_1_bss_20 = lbl_1_bss_20 > 1.0f ? 1.0f : lbl_1_bss_20; + var_f31 = 0.5 + (-0.5 * cosd((180.0f * lbl_1_bss_20))); + } + lbl_1_bss_20 = lbl_1_bss_20 > 1.0f ? 1.0f : lbl_1_bss_20; + CZoom = (var_f31 * sp28[lbl_1_data_284].unk_00) + (lbl_1_data_288 * (1.0f - var_f31)); + Center.x = (var_f31 * sp28[lbl_1_data_284].unk_04) + (lbl_1_bss_24 * (1.0f - var_f31)); + Center.y = (var_f31 * sp28[lbl_1_data_284].unk_08) + (lbl_1_data_28C * (1.0f - var_f31)); + Center.z = (var_f31 * sp28[lbl_1_data_284].unk_0C) + (lbl_1_data_290 * (1.0f - var_f31)); + CRot.x = (var_f31 * sp28[lbl_1_data_284].unk_10) + (lbl_1_data_294 * (1.0f - var_f31)); + CRot.y = (var_f31 * sp28[lbl_1_data_284].unk_14) + (lbl_1_bss_28 * (1.0f - var_f31)); + } + } +} + +static const u32 lbl_1_rodata_580[6] = { 0x2C0003, 0x2C0004, 0x2C0005, 0x2C0006, 0x2C0007, 0 }; + +void fn_1_71A8(void) +{ + M449DllWork *sp8[2]; + + s16 var_r31; + s32 var_r30; + s16 var_r29; + s32 var_r28; + s32 var_r27; + u32 var_r26; + + var_r29 = 0; + for (var_r30 = 0; var_r30 < 2; var_r30++) { + sp8[var_r30] = (&lbl_1_bss_54)[var_r30]->data; + } + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + HuWinComKeyReset(); + var_r31 = HuWinExCreateStyled(-10000.0f, 60.0f, 0x118, 0x78, -1, 1); + HuWinExAnimIn(var_r31); + HuWinBGTPLvlSet(var_r31, 0.8f); + HuWinMesSpeedSet(var_r31, 1); + HuWinDisablePlayerSet( + var_r31, 0xF & ((sp8[0]->unk_0C != -1) ? ~(1 << sp8[0]->unk_0C) : 0xF) & ((sp8[1]->unk_0C != -1) ? ~(1 << sp8[1]->unk_0C) : 0xF)); + HuWinMesColSet(var_r31, 0); + HuWinMesSet(var_r31, 0x2C0001); + if (((sp8[0]->unk_0C == -1) || (sp8[0]->unk_08 == -1)) && ((sp8[1]->unk_0C == -1) || (sp8[1]->unk_08 == -1))) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 0x3C); + } + HuWinMesWait(var_r31); + if ((sp8[0]->unk_0C != -1) || (sp8[1]->unk_0C != -1)) { + HuWinMesColSet(var_r31, 0); + HuWinMesSet(var_r31, 0x2C0002); + if ((sp8[0]->unk_0C == -1) && (sp8[1]->unk_0C == -1)) { + HuPrcSleep(0x3C); + var_r29 = 1; + } + else { + var_r29 = HuWinChoiceGet(var_r31, 0); + } + } + else { + var_r29 = 1; + } + if (var_r29 == 0) { + var_r30 = 0; + while ((var_r26 = lbl_1_rodata_580[var_r30++]) != 0) { + HuWinMesColSet(var_r31, 0); + HuWinMesSet(var_r31, var_r26); + if ((sp8[0]->unk_0C == -1 || sp8[0]->unk_08 == -1) && (sp8[1]->unk_0C == -1 || sp8[1]->unk_08 == -1)) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + } + HuWinMesWait(var_r31); + } + } + else { + HuWinMesColSet(var_r31, 0); + HuWinMesSet(var_r31, 0x2C0008); + if (((sp8[0]->unk_0C == -1) || (sp8[0]->unk_08 == -1)) && ((sp8[1]->unk_0C == -1) || (sp8[1]->unk_08 == -1))) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + } + HuWinMesWait(var_r31); + } + HuWinExAnimOut(var_r31); + HuWinExCleanup(var_r31); + lbl_1_bss_10 = 0; + HuPrcEnd(); +} + +void fn_1_7544(omObjData *var_r29) +{ + M449DllWork *spC[2]; + s32 sp8; + + s32 var_r31; + s32 var_r30; + + for (var_r31 = 0; var_r31 < 0xC; var_r31++) { + s32 sp14[12] = { 0x7A2, 0x7A3, 0x7A4, 0x7A5, 0, 0, 0, 0, 0, 0, 0, 0 }; + if (lbl_1_bss_64[var_r31].unk_00 > 3) { + lbl_1_bss_64[var_r31].unk_00 = 3; + } + if ((lbl_1_bss_64[var_r31].unk_00 > 0) && (var_r31 != 1)) { + sp8 = HuAudFXPlay(sp14[var_r31]); + lbl_1_bss_64[var_r31].unk_00--; + } + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + spC[var_r31] = (&lbl_1_bss_54)[var_r31]->data; + } + if ((omSysExitReq != 0) && (WipeStatGet() == 0)) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + var_r29->func = fn_1_9A38; + } + switch (lbl_1_bss_48) { + case 0x3E8: + if (WipeStatGet() == 0) { + lbl_1_bss_48++; + lbl_1_bss_4C = 0; + return; + } + break; + case 0x3E9: + lbl_1_bss_4C++; + if (lbl_1_bss_4C > 0x78) { + lbl_1_bss_48++; + if ((spC[0]->unk_08 != -1) && (spC[1]->unk_08 != -1)) { + lbl_1_bss_48++; + } + lbl_1_bss_44 = 0; + lbl_1_bss_4C = 0; + return; + } + break; + case 0x3EA: + lbl_1_bss_4C++; + if (lbl_1_bss_4C == 1) { + HuPrcChildCreate(fn_1_71A8, 0x64, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_10 = 1; + if (lbl_1_data_22C == -1) { + lbl_1_data_22C = HuAudSeqPlay(0x3D); + return; + } + } + else if (lbl_1_bss_10 == 0) { + lbl_1_bss_48++; + if (lbl_1_data_22C != -1) { + HuAudSeqFadeOut(lbl_1_data_22C, 0x3E8); + lbl_1_data_22C = -1; + } + lbl_1_bss_4C = 0; + return; + } + break; + case 0x3EB: + lbl_1_bss_4C++; + if ((lbl_1_bss_4C == 5) && (lbl_1_data_228 < 0)) { + lbl_1_data_228 = MGSeqCreate(3, 0); + } + if ((lbl_1_bss_4C >= 5) && (lbl_1_data_22C == -1) && ((MGSeqStatGet(lbl_1_data_228) & 0x10) != 0)) { + lbl_1_data_22C = HuAudSeqPlay(0x3E); + } + if ((lbl_1_bss_4C >= 5) && (MGSeqStatGet(lbl_1_data_228) == 0) && (lbl_1_data_228 >= 0)) { + for (var_r30 = 0; var_r30 < 0x12; var_r30++) { + if (((var_r30 % 9) < 5) || ((var_r30 % 9) > 7)) { + espDispOn(lbl_1_data_48[var_r30]); + } + } + lbl_1_bss_48++; + lbl_1_data_228 = -1; + lbl_1_bss_4C = 0; + return; + } + break; + case 0x3EC: + lbl_1_bss_4C++; + if (lbl_1_bss_14 == 0x3F48) { + lbl_1_data_22A = MGSeqCreate(1, 0x1E, -1, -1); + } + if (lbl_1_data_22A != -1) { + MGSeqParamSet(lbl_1_data_22A, 1, (0x468B - lbl_1_bss_14) / 60); + } + if (lbl_1_bss_30 != -1) { + lbl_1_bss_48 = 0x3ED; + lbl_1_bss_4C = 0; + return; + } + break; + case 0x3ED: + lbl_1_bss_4C++; + if ((lbl_1_data_228 < 0) && (lbl_1_bss_4C == 1)) { + if (lbl_1_data_22A != -1) { + MGSeqParamSet(lbl_1_data_22A, 2, -1); + } + lbl_1_data_228 = MGSeqCreate(3, 1); + if (lbl_1_data_22C != -1) { + HuAudSeqFadeOut(lbl_1_data_22C, 0x64); + lbl_1_data_22C = -1; + return; + } + } + else if (MGSeqStatGet(lbl_1_data_228) == 0) { + lbl_1_bss_48++; + lbl_1_bss_4C = 0; + if (lbl_1_bss_30 == 4) { + lbl_1_bss_30 = spC[0]->unk_08 == -1 ? 0 : (spC[1]->unk_08 == -1 ? 1 : lbl_1_bss_30); + return; + } + } + break; + case 0x3EE: + lbl_1_bss_4C++; + if (lbl_1_bss_4C == 1) { + if (lbl_1_bss_30 != 4) { + if (spC[lbl_1_bss_30]->unk_08 != -1) { + HuAudSStreamPlay(1); + } + else { + HuAudSStreamPlay(3); + } + GWPlayerCoinWinSet(spC[lbl_1_bss_30]->unk_04, 10); + } + else if (lbl_1_bss_30 == 4) { + HuAudSStreamPlay(4); + } + } + if ((210.0f + (lbl_1_bss_30 == 4 ? 0x1E : 0)) < lbl_1_bss_4C) { + lbl_1_data_228 = -1; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); + var_r29->func = fn_1_9A38; + } + break; + } +} + +void fn_1_7ECC(omObjData *var_r31) +{ + var_r31->model[0] = Hu3DModelCreateFile(0x500008); + Hu3DModelAttrSet(var_r31->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelShadowMapSet(var_r31->model[0]); + var_r31->model[1] = Hu3DModelCreateFile(0x500009); + var_r31->model[2] = Hu3DModelCreateFile(0x50000A); + Hu3DModelAttrSet(var_r31->model[2], HU3D_MOTATTR_LOOP); + var_r31->func = fn_1_6850; +} + +void fn_1_7F94(ModelData *model, ParticleData *particle, Mtx matrix) +{ + float var_f31; + float var_f30; + float var_f29; + + HsfanimStruct01 *var_r31; + s16 var_r29; + + if (particle->unk_34 == 0) { + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + var_r31->unk00 = 0; + var_r31->unk40.a = 0; + var_r31->unk2C = 0.0f; + } + } + if (particle->unk_34 >= 0xFF) { + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + var_r31->unk00 = 0xFF; + var_r31->unk40.a = 0; + var_r31->unk2C = 0.0f; + } + } + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (!var_r31->unk2C) { + break; + } + } + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 == 1) { + var_f31 = ((frand() & 0xFF) * 0x168) >> 8; + var_f30 = 0.5 + (1.5 * (rand8() / 256.0)); + var_r31->unk08.x = 2.5 * (var_f30 * sind(var_f31)); + var_r31->unk08.y = 4.5 * (var_f30 * cosd(var_f31)); + var_r31->unk08.y *= var_r31->unk08.y < 0.0f ? -0.5 : 1.0; + var_r31->unk08.x = (12.0 * (rand8() / 255.0)) - 6.0; + var_r31->unk08.y = 12.0 * (rand8() / 255.0); + var_r31->unk08.z = (rand8() / 255.0) - 0.5; + var_r31->unk34.x = 2.0f * var_r31->unk08.x; + var_r31->unk34.y = 10.0f + (2.0f * var_r31->unk08.y); + var_r31->unk34.z = 50.0f + (2.0f * var_r31->unk08.z); + var_r31->unk40.r = 0xFF; + var_r31->unk40.g = 0xFF; + var_r31->unk40.b = 0xFF; + var_r31->unk40.a = 0xFF; + var_r31->unk2C = 50.0f; + } + if (var_r31->unk00_s16 < 0xF0) { + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + var_r31->unk08.x *= 0.9f; + var_r31->unk08.z *= 0.9f; + var_r31->unk08.y *= 0.9f; + var_r31->unk40.a = (var_r31->unk40.a * 0xB) / 12; + var_r31->unk2C += 1.01f; + if (var_r31->unk2C <= 0.0f) { + var_r31->unk2C = 0.0f; + } + if (var_r31->unk40.a == 0) { + var_r31->unk40.a = 0; + var_r31->unk2C = 0.0f; + } + } + var_r31->unk00_s16 += var_r31->unk00_s16 < 0x8000; + if (var_r31->unk00_s16 >= 0xF0) { + var_r31->unk40.a = 0; + var_r31->unk2C = 0.0f; + } + } +} + +void fn_1_8538(omObjData *var_r30) +{ + Vec sp60; + Vec sp54; + void *sp48; + + M449DllWork *var_r31; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + M449DllWork *var_r25; + s32 var_r24; + s32 var_r23; + + var_r26 = -1; + var_r24 = -1; + var_r31 = var_r30->data; + sp48 = (&lbl_1_bss_54)[1 - var_r30->work[0]]->data; + memset(var_r31, 0, sizeof(M449DllWork)); + var_r31->unk_00 = var_r30->work[0]; + if ((GWPlayerCfg->character == 0xC) || (GWPlayerCfg[1].character == 0xC) || (GWPlayerCfg[2].character == 0xC) + || (GWPlayerCfg[3].character == 0xC)) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (GWPlayerCfg[var_r29].character == 0xC) { + var_r26 = var_r29; + } + } + var_r24 = GWPlayerCfg[var_r26].group == 0 ? 1 : 0; + if (var_r31->unk_00 == 0) { + var_r31->unk_04 = var_r24; + var_r23 = var_r26; + } + else { + var_r31->unk_04 = var_r26; + var_r23 = var_r24; + } + } + else { + var_r31->unk_04 = GWPlayerCfg[0].group == var_r31->unk_00 + ? 0 + : (GWPlayerCfg[1].group == var_r31->unk_00 + ? 1 + : (GWPlayerCfg[2].group == var_r31->unk_00 ? 2 : (GWPlayerCfg[3].group == var_r31->unk_00 ? 3 : 4))); + var_r23 = GWPlayerCfg->group == (1 - var_r31->unk_00) + ? 0 + : (GWPlayerCfg[1].group == (1 - var_r31->unk_00) + ? 1 + : (GWPlayerCfg[2].group == (1 - var_r31->unk_00) ? 2 : (GWPlayerCfg[3].group == (1 - var_r31->unk_00) ? 3 : 4))); + } + if (var_r31->unk_04 == 4) { + OSReport("m448:wrong player group\n"); + var_r31->unk_04 = var_r31->unk_00; + } + var_r31->unk_08 = ((var_r26 != -1) && (var_r31->unk_00 == 1)) != 0 ? -1 : GWPlayerCfg[var_r31->unk_04].character; + var_r31->unk_0C = ((var_r31->unk_08 == -1) || (GWPlayerCfg[var_r31->unk_04].iscom != 0)) != 0 ? -1 : GWPlayerCfg[var_r31->unk_04].pad_idx; + var_r31->unk_10 = var_r31->unk_0C != -1 ? 0 : GWPlayerCfg[var_r31->unk_04].diff; + var_r31->unk_18 = -1; + var_r31->unk_1C = 0; + var_r31->unk_48 = lbl_1_rodata_10[var_r31->unk_10]; + var_r31->unk_4C = 0; + var_r31->unk_214 = -1; + if (var_r31->unk_08 != -1) { + var_r30->model[0] = CharModelCreate(var_r31->unk_08, 1); + } + else { + var_r30->model[0] = Hu3DModelCreateFile(0x50001B); + } + Hu3DModelObjPosGet(lbl_1_bss_50->model[1], lbl_1_data_E8[var_r31->unk_00 + 2], &sp54); + omSetTra(var_r30, sp54.x, sp54.y, sp54.z); + if (var_r30->trans.x == -360.0f) { + var_r30->trans.x = -350.0f; + } + omSetRot(var_r30, 0.0f, (var_r31->unk_00 * 0xB4) + 0x5A, 0.0f); + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (var_r31->unk_08 != -1) { + var_r30->motion[var_r29] + = CharModelMotionCreate(var_r31->unk_08, lbl_1_data_90[var_r29] + (lbl_1_data_B0[var_r29] != 0 ? var_r31->unk_08 : 0)); + } + else { + var_r30->motion[var_r29] = Hu3DJointMotionFile(var_r30->model[0], lbl_1_data_A0[var_r29]); + } + } + Hu3DMotionSet(var_r30->model[0], var_r30->motion[0]); + Hu3DMotionTimeSet(var_r30->model[0], 20.0f); + Hu3DModelAttrSet(var_r30->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30->model[0]); + CharModelVoiceEnableSet(var_r31->unk_08, var_r30->motion[3], 0); + lbl_1_data_23C[var_r31->unk_00] = var_r31->unk_00 == 0 ? (rand8() % 3) : ((lbl_1_data_23C[0] + ((rand8() % 2)) + 1) % 3); + if (var_r31->unk_00 == 0) { + for (var_r29 = 0; var_r29 < 3; var_r29++) { + M449DllUnkStruct sp6C = { + { 0x0050000B, 0x0050000D, 0x0050000F, 0x00500011 }, + { 0x0050000C, 0x0050000E, 0x00500010, 0x00500012 }, + }; + do { + while (TRUE) { + var_r27 = rand8() % 4; + if (lbl_1_data_230[0] == var_r27) { + continue; + } + if (lbl_1_data_230[1] == var_r27) { + continue; + } + break; + } + } while (lbl_1_data_230[2] == var_r27); + lbl_1_data_230[var_r29] = var_r27; + var_r30->model[var_r29 + 1] = Hu3DModelCreateFile(sp6C.unk_00[var_r27]); + var_r30->model[var_r29 + 4] = Hu3DModelCreateFile(sp6C.unk_10[var_r27]); + } + var_r30->model[11] = Hu3DModelCreateFile(0x500013); + } + else { + for (var_r29 = 0; var_r29 < 3; var_r29++) { + var_r30->model[var_r29 + 1] = Hu3DModelLink(lbl_1_bss_54->model[var_r29 + 1]); + var_r30->model[var_r29 + 4] = Hu3DModelLink(lbl_1_bss_54->model[var_r29 + 4]); + } + var_r30->model[11] = Hu3DModelLink(lbl_1_bss_54->model[11]); + } + Hu3DModelObjPosGet(lbl_1_bss_50->model[1], lbl_1_data_E8[var_r31->unk_00], &sp54); + for (var_r29 = 0; var_r29 < 3; var_r29++) { + if (var_r29 != 0) { + Hu3DModelAttrSet(var_r30->model[var_r29 + 1], HU3D_ATTR_DISPOFF); + } + Hu3DModelPosSet(var_r30->model[var_r29 + 1], sp54.x, sp54.y, sp54.z); + Hu3DModelPosSet(var_r30->model[var_r29 + 4], sp54.x, sp54.y, sp54.z); + Hu3DModelShadowSet(var_r30->model[var_r29 + 1]); + } + Hu3DModelPosSet(var_r30->model[11], sp54.x, sp54.y, sp54.z); + Hu3DModelShadowSet(var_r30->model[11]); + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (var_r29 == 0) { + var_r30->model[var_r29 + 0xC] = Hu3DModelCreateFile(var_r31->unk_00 == 0 ? 0x500014 : 0x500015); + } + else { + var_r30->model[var_r29 + 0xC] = Hu3DModelLink(var_r30->model[12]); + } + Hu3DModelObjPosGet(lbl_1_bss_50->model[1], lbl_1_data_E8[var_r31->unk_00], &sp54); + Hu3DModelObjPosGet(var_r30->model[4], lbl_1_data_138[var_r29], &sp60); + var_r31->unk_60[var_r29] = sp60.x - sp54.x; + var_r31->unk_80[var_r29] = sp60.z - sp54.z; + var_r31->unk_90[var_r29] = var_r31->unk_B0[var_r29] = 0.0f; + Hu3DModelPosSet(var_r30->model[var_r29 + 0xC], sp60.x, sp60.y, sp60.z); + } + for (var_r29 = 0; var_r29 < 4; var_r29++) { + var_r28 = var_r29 + 7; + Hu3DModelObjPosGet(var_r30->model[4], lbl_1_data_138[var_r29], &sp60); + var_r30->model[var_r28] = Hu3DParticleCreate(HuSprAnimRead(HuDataReadNum(0x120003, 0x10000000)), 0x32); + Hu3DModelPosSet(var_r30->model[var_r28], 2000.0f, -2000.0f, -2000.0f); + Hu3DModelScaleSet(var_r30->model[var_r28], 1.0f, 1.0f, 1.0f); + Hu3DModelLayerSet(var_r30->model[var_r28], 3); + Hu3DModelAttrReset(var_r30->model[var_r28], HU3D_ATTR_DISPOFF); + Hu3DParticleColSet(var_r30->model[var_r28], 0xFF, 0xFF, 0xFF); + Hu3DParticleScaleSet(var_r30->model[var_r28], 5.0f); + Hu3DParticleHookSet(var_r30->model[var_r28], fn_1_7F94); + Hu3DParticleCntSet(var_r30->model[var_r28], 0xFF); + } + if (var_r31->unk_00 == 1) { + for (var_r29 = 0; var_r29 < 0x12; var_r29++) { + s32 sp4C[2] = { 0x64, 0x1E5 }; + s32 spD4[0x12] = { 0, 0, -14, 16, 46, -14, 16, 46, -50, 0, 0, -14, 16, 46, -14, 16, 46, -50 }; + s32 sp8C[0x12] = { 0, 0, -2, -2, -2, -2, -2, -2, 0, 0, 0, -2, -2, -2, -2, -2, -2, 0 }; + if ((lbl_1_data_0[var_r29] + 0xFF9F0000) == 0) { + var_r25 = (&lbl_1_bss_54)[var_r29 == 8 ? 0 : (var_r29 == 0x11 ? 1 : 0)]->data; + lbl_1_data_48[var_r29] = espEntry(var_r25->unk_08 == -1 ? 0x500018 : (var_r25->unk_08 + lbl_1_data_0[var_r29]), 0, 0); + } + else { + lbl_1_data_48[var_r29] = espEntry(lbl_1_data_0[var_r29], 0, 0); + } + espDrawNoSet(lbl_1_data_48[var_r29], 0); + espAttrSet(lbl_1_data_48[var_r29], HUSPR_ATTR_NOANIM | HUSPR_ATTR_DISPOFF); + espBankSet(lbl_1_data_48[var_r29], 0); + espPriSet(lbl_1_data_48[var_r29], 0x80 - var_r29); + espPosSet(lbl_1_data_48[var_r29], spD4[var_r29] + sp4C[var_r29 < 9 ? 0 : 1], sp8C[var_r29] + 0x46); + if ((var_r29 >= 9 ? (var_r29 - 9) : var_r29) != 0) { + (void)var_r29; + continue; + } + else { + espTPLvlSet(lbl_1_data_48[var_r29], 0.5f); + espColorSet(lbl_1_data_48[var_r29], 0, 0, 0); + } + } + } + var_r30->func = fn_1_758; +} + +void fn_1_94F8(omObjData *var_r31) +{ + lbl_1_bss_48 = 0x3E8; + lbl_1_bss_4C = 0; + lbl_1_bss_40 = 0; + lbl_1_bss_3C = 0; + if (lbl_1_bss_64[0].unk_00 < 2) { + lbl_1_bss_64[0].unk_04[lbl_1_bss_64[0].unk_00] = 0.0f; + lbl_1_bss_64[0].unk_00++; + } + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + var_r31->func = fn_1_7544; +} + +void ObjectSetup(void) +{ + s32 var_r31; + omObjData *var_r30; + + OSReport("******* M449 ObjectSetup *********\n"); + lbl_1_bss_38 = omInitObjMan(0x258, 0x2000); + omGameSysInit(lbl_1_bss_38); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 25000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + CZoom = 2500.0f; + Center.x = 0.0f; + Center.y = 0.0f; + Center.z = -100.0f; + CRot.x = -40.0f; + CRot.y = 0.0f; + CRot.z = 0.0f; + { + Vec sp3C = { 0.0f, 0.0f, 0.0f }; + Vec sp30 = { -0.5850064f, -0.788462f, 0.1545085f }; + Vec sp24; + Vec sp18; + Vec spC; + GXColor sp8 = { 0xFF, 0xFF, 0xFF, 0xFF }; + lbl_1_bss_34 = Hu3DGLightCreateV(&sp3C, &sp30, &sp8); + Hu3DGLightStaticSet(lbl_1_bss_34, 1); + Hu3DGLightInfinitytSet(lbl_1_bss_34); + sp24.x = 0.0f; + sp24.y = 10000.0f; + sp24.z = 0.0f; + sp18.x = 0.0f; + sp18.y = 1.0f; + sp18.z = 0.0f; + spC.x = 0.0f; + spC.y = 0.0f; + spC.z = 0.5f; + Hu3DShadowCreate(6.0f, 9000.0f, 11500.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&sp24, &sp18, &spC); + } + Hu3DShadowSizeSet(0xE0); + lbl_1_data_228 = -1; + lbl_1_bss_30 = -1; + HuWinInit(1); + lbl_1_bss_50 = omAddObjEx(lbl_1_bss_38, 0x64, 3, 0, 1, fn_1_7ECC); + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r30 = (&lbl_1_bss_54)[var_r31] = omAddObjEx(lbl_1_bss_38, 0x65, 0x14, 4, 0, fn_1_8538); + var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M449DllWork), MEMORY_DEFAULT_NUM); + var_r30->work[0] = var_r31; + } + lbl_1_bss_5C = omAddObjEx(lbl_1_bss_38, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_60 = omAddObjEx(lbl_1_bss_38, 0x67, 0, 0, -1, fn_1_94F8); +} + +void fn_1_9A38(omObjData *arg0) +{ + void *sp8; + s32 var_r31; + + if (WipeStatGet() == 0) { + for (var_r31 = 0; var_r31 < 2; var_r31++) { + sp8 = (&lbl_1_bss_54)[var_r31]->data; + } + if (lbl_1_data_228 >= 0) { + MGSeqKill(lbl_1_data_228); + } + MGSeqKillAll(); + HuAudAllStop(); + omOvlReturnEx(1, 1); + } +} From aa7583ad7238c32dad0d1d9098f43e4a6233faea Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Thu, 2 Jan 2025 22:34:57 +0100 Subject: [PATCH 094/178] Set m449Dll to matching --- configure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.py b/configure.py index 9d07dc00..de9495b7 100644 --- a/configure.py +++ b/configure.py @@ -1233,7 +1233,7 @@ config.libs = [ Rel( "m449Dll", # Kareening Koopa objects={ - Object(NonMatching, "REL/m449Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m449Dll/main.c"), }, ), Rel( From 37e9989b96b1c4d36239d2e21f3543bf078c4a78 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Thu, 2 Jan 2025 18:19:06 -0500 Subject: [PATCH 095/178] match m424Dll/ball.c (#503) * get halfway through m424/ball * get halfway through m424/ball * get halfway through m424/ball * complete m424/ball * fix merge errors * Revert "complete m424/ball" This reverts commit acbc3196c585acc5e6328e53f4aaf31e1b52db73. --- .vscode/settings.json | 4 +- src/REL/m424Dll/ball.c | 1734 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 1737 insertions(+), 1 deletion(-) create mode 100644 src/REL/m424Dll/ball.c diff --git a/.vscode/settings.json b/.vscode/settings.json index 5343bec3..a155f802 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -34,7 +34,9 @@ "corecrt_math.h": "c", "corecrt.h": "c", "vcruntime.h": "c", - "hsfmotion.h": "c" + "hsfmotion.h": "c", + "m424dll.h": "c", + "chrman.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/src/REL/m424Dll/ball.c b/src/REL/m424Dll/ball.c new file mode 100644 index 00000000..5deb34fc --- /dev/null +++ b/src/REL/m424Dll/ball.c @@ -0,0 +1,1734 @@ +#include "REL/m424Dll.h" + +#include "ext_math.h" +#include "string.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework_data.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/pad.h" +#include "game/sprite.h" + +// STRUCT +typedef struct _M424DllBallStruct { + u8 unk0; + u8 unk1; + u8 unk2; + u8 unk3; + u8 unk4; + u8 unk5; + u8 unk6; + u8 unk7; + u8 unk8; + u8 unk9; + u8 unkA; + char unkB[0x1]; + u8 unkC; + u8 unkD; + u8 unkE; + s16 unk10; + s16 unk12; + s16 unk14; + s16 unk16; + s16 unk18; + s16 unk1A; + f32 unk1C; + f32 unk20; + f32 unk24; + f32 unk28; + f32 unk2C; + f32 unk30; + Vec unk34; + Vec unk40; + Vec unk4C; + Vec unk58; + void* unk64; // sizeof 0x40 + char unk68[0x3C]; + u8 unkA4; + void* unkA8; // sizeof 0x40 + char unkAC[0x3C]; + s32 unkE8; + s32 unkEC; +} M424DllBallStruct; // sizeof 0xF0 + +typedef struct _M424DllBallStruct2 { + omObjData* unk0; + u8 unk4; + u8 unk5; + u8 unk6; + u16 unk8; + u16 unkA; + Mtx unkC; + Vec unk3C; + Vec unk48; + Vec unk54; + Vec unk60; + Vec unk6C; + Vec unk78; + Vec unk84; + u8 unk90; + u8 unk91; +} M424DllBallStruct2; // sizeof 0x94 + +typedef struct _M424DllBallStruct3 { + u8 unk0; + M424DllBallStruct2* unk4; + M424DllBallStruct2* unk8; +} M424DllBallStruct3; + +typedef struct _M424BallStruct4 { + f32 unk0; + f32 unk4; + f32 unk8; + char unkC[0x8]; + f32 unk14; + f32 unk18; + char unk1C[0x8]; + f32 unk24; + f32 unk28; +} M424BallStruct4; + +// BSS +void* lbl_1_bss_5BC[0x20]; +omObjData* lbl_1_bss_5AC[4]; +omObjData* lbl_1_bss_594[6]; +M424DllBallStruct2 lbl_1_bss_60[9]; +s32 lbl_1_bss_5C; +u8 lbl_1_bss_58; + +// PROTO +f32 fn_1_25C0(void); +void fn_1_28A0(omObjData* object); +void fn_1_2E3C(omObjData* object); +void fn_1_31C0(omObjData* object); +void fn_1_37FC(omObjData* object); +void fn_1_4220(omObjData* object); +void fn_1_469C(omObjData* object); +u8 fn_1_48D0(omObjData* object, u8, u8); +void fn_1_4A90(s16); +void fn_1_6038(void); +void* fn_1_6078(s32); +void fn_1_61AC(void); +s32 fn_1_627C(void); +void fn_1_6230(s16, Mtx); +void fn_1_62D0(s32, u32*); +f32 fn_1_640C(f32, f32, f32); +f32 fn_1_6D10(Vec, Vec, f32, Vec, Vec, f32); +f32 fn_1_709C(Vec, Vec, f32, f32); +f32 fn_1_7420(Vec, Vec, f32, f32); +void fn_1_77C4(Vec, Vec, Vec, f32, Vec*, Vec*); +void fn_1_79FC(Vec*, Vec*, f32, Vec*, Vec*, f32, f32); +void fn_1_7CA0(Vec, Vec, f32, Vec*); +void fn_1_8924(u8, u8); +void fn_1_8AA8(s32, s32); +s32 fn_1_8C78(s32, s32); +s32 fn_1_907C(Vec*, Vec*); + + +void fn_1_2720(Process* arg0) { + u32 sp8[10]; + omObjData* var_r30; + s32 temp_r28; + s32 var_r29; + s32 var_r31; + + temp_r28 = frand() & 0x1F; + for (var_r31 = 0; var_r31 < temp_r28; var_r31++) { + fn_1_627C(); + } + fn_1_62D0(8, sp8); + sp8[8] = 8; + + for (var_r31 = 0, var_r29 = 0; var_r31 < 4; var_r31++) { + if (GWPlayerCfg[var_r31].group != 0) { + var_r30 = omAddObjEx(arg0, 0x3E, 3, 11, 0, fn_1_28A0); + lbl_1_bss_5AC[var_r29] = var_r30; + var_r30->work[0] = var_r31; + var_r30->work[1] = sp8[var_r29]; + var_r29++; + } + } + + for (var_r31 = 0; var_r31 < 6; var_r29++, var_r31++) { + var_r30 = omAddObjEx(arg0, 0x3F, 2U, 5U, 0, fn_1_4220); + lbl_1_bss_594[var_r31] = var_r30; + var_r30->work[0] = var_r31; + var_r30->work[1] = sp8[var_r29]; + } + Hu3DLayerHookSet(7, fn_1_4A90); + fn_1_6038(); +} + +void fn_1_2880(void) { + fn_1_61AC(); +} + +u32 lbl_1_data_150[11] = { + 0, 2, 3, 8, 10, + 9, 20, 22, 23, 24, + 0x370021 +}; +Vec lbl_1_data_17C[4] = { + { -100.0f, 200.0f, -100.0f }, + { 300.0f, 200.0f, -100.0f }, + { -300.0f, 200.0f, 300.0f }, + { 300.0f, 200.0f, 0.0f } +}; + +void fn_1_28A0(omObjData* object) { + Vec sp8; + f32 temp_f31; + f32 temp_f30; + M424DllBallStruct* var_r31; + s32 var_r29; + s32 temp_r28; + s32 var_r27; + + object->data = var_r31 = fn_1_6078(0xF0); + memset(var_r31, 0, 0xF0); + var_r31->unk0 = object->work[0]; + var_r31->unk1 = GWPlayerCfg[var_r31->unk0].character; + var_r31->unk2 = GWPlayerCfg[var_r31->unk0].group; + var_r31->unk3 = 0; + var_r31->unk4 = GWPlayerCfg[var_r31->unk0].pad_idx; + var_r31->unk5 = GWPlayerCfg[var_r31->unk0].iscom; + var_r31->unk6 = GWPlayerCfg[var_r31->unk0].diff; + var_r31->unk18 = var_r31->unk1A = 0; + var_r31->unk30 = 1.0f; + var_r31->unk7 = 1; + var_r31->unkC = 1; + var_r31->unkD = 0; + var_r31->unkA = 0; + var_r31->unkA4 = 0; + var_r31->unkE = 0; + memset(&var_r31->unk64, 0, 0x40); + var_r31->unkE8 = 0; + var_r31->unkEC = -1; + temp_r28 = object->work[1]; + temp_f31 = 40.0f; + temp_f31 = (temp_f31 * temp_r28) + (temp_f31 * (fn_1_627C() / 65536.0f)) + 105.0f; + temp_f30 = 125.0f; + temp_f30 = (temp_f30 * (temp_r28 & 1)) + (100.0f + (250.0f + (temp_f30 * (fn_1_627C() / 65536.0f)))); + sp8.x = temp_f30 * sind(temp_f31); + sp8.y = 200.0f; + sp8.z = temp_f30 * cosd(temp_f31); + var_r31->unk34 = sp8; + var_r31->unk4C.x = var_r31->unk4C.y = var_r31->unk4C.z = 0.0f; + var_r31->unk40.x = var_r31->unk40.y = var_r31->unk40.z = 0.0f; + var_r31->unk1C = 0.8f; + var_r31->unk24 = var_r31->unk40.y; + var_r31->unk2C = 1.0f; + var_r31->unk28 = 0.0f; + var_r31->unk20 = 0.0f; + memset(&var_r31->unkA8, 0, 0x40); + object->model[0] = var_r27 = CharModelCreate(var_r31->unk1, 8); + Hu3DModelAttrSet(var_r27, 0x40000001); + CharModelStepTypeSet(var_r31->unk1, 1); + CharModelLayerSetAll(2); + for (var_r29 = 0; var_r29 < 11; var_r29++) { + if (lbl_1_data_150[var_r29] + 0xFFC90000 != 0x21) { + object->motion[var_r29] = CharModelMotionCreate(var_r31->unk1, lbl_1_data_150[var_r29]); + } else if (var_r31->unk1 == 5) { + object->motion[var_r29] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(var_r31->unk1 + lbl_1_data_150[var_r29], 0x10000000, HEAP_DATA)); + } else { + object->motion[var_r29] = object->motion[0]; + } + if (lbl_1_data_150[var_r29] == 0x16 || lbl_1_data_150[var_r29] == 0x14) { + CharModelVoiceEnableSet(var_r31->unk1, object->motion[var_r29], 0); + } + } + CharModelMotionDataClose(var_r31->unk1); + CharModelMotionSet(var_r31->unk1, object->motion[var_r31->unk18]); + omSetTra(object, var_r31->unk34.x, var_r31->unk34.y, var_r31->unk34.z); + omSetRot(object, var_r31->unk40.x, var_r31->unk40.y, var_r31->unk40.z); + omSetSca(object, var_r31->unk1C, var_r31->unk1C, var_r31->unk1C); + object->model[1] = fn_1_48D0(object, var_r31->unk1, 1); + object->func = fn_1_2E3C; +} + +void fn_1_2E38(void) {} + +void fn_1_2E3C(omObjData* object) { + s32 temp_r29; + M424DllBallStruct* temp_r31; + + temp_r29 = object->model[0]; + temp_r31 = object->data; + if (temp_r31->unk7 != 0) { + if ((fn_1_FE0() == 4) && ((temp_r31->unk7 & 2) == 0)) { + if (temp_r31->unk5 != 0) { + fn_1_31C0(object); + } else { + temp_r31->unk10 = HuPadStkX[temp_r31->unk4]; + temp_r31->unk12 = HuPadStkY[temp_r31->unk4]; + temp_r31->unk14 = HuPadBtnDown[temp_r31->unk4]; + temp_r31->unk16 = HuPadBtn[temp_r31->unk4]; + } + } else { + temp_r31->unk10 = temp_r31->unk12 = 0; + temp_r31->unk14 = temp_r31->unk16 = 0; + } + switch (temp_r31->unk8) { + case 1: + temp_r31->unkC = 1; + if (fn_1_FE0() == 6) { + fn_1_8924(object->model[1], 5); + } + break; + case 5: + temp_r31->unkC = 0; + temp_r31->unk1C *= 1.1f; + if (temp_r31->unk1C >= 1.0f) { + temp_r31->unk1C = 1.0f; + } + temp_r31->unk40.y = fn_1_640C(temp_r31->unk40.y, 0.0f, 0.9f); + if (temp_r31->unk34.y <= 200.0f) { + temp_r31->unk34.y = 200.0f; + temp_r31->unkC = 1; + } + Hu3DModelShadowSet(temp_r29); + break; + case 4: + temp_r31->unk20 = 0.0f; + temp_r31->unk4C.y = 0.0f; + temp_r31->unk7 |= 2; + break; + case 6: + temp_r31->unk10 = temp_r31->unk12 = 0; + temp_r31->unk14 = temp_r31->unk16 = 0; + temp_r31->unk1C = 1.0f; + temp_r31->unk40.y = temp_r31->unk24 = 0.0f; + if (temp_r31->unk34.y <= 50.0f) { + temp_r31->unkC = 1; + temp_r31->unk20 = 0.0f; + temp_r31->unk4C.y = 0.0f; + temp_r31->unk18 = 7; + temp_r31->unk34.x += fn_1_25C0(); + temp_r31->unk34.y = 50.0f; + } else { + temp_r31->unkC = 0; + temp_r31->unk20 += 3.0f; + temp_r31->unk4C.y += -1.46f; + if (temp_r31->unk1 != 5) { + temp_r31->unk18 = 6; + } else { + temp_r31->unk18 = 0xA; + } + } + break; + } + if ((fn_1_FE0() == 7) && ((temp_r31->unk7 & 2) == 0)) { + temp_r31->unk18 = 8; + } + fn_1_37FC(object); + } +} + +void fn_1_31C0(omObjData* object) { + Vec sp10; + s32 spC; + s16 sp8; + f32 temp_f31; + f32 temp_f30; + M424DllBallStruct* temp_r31; + s16 temp_r30; + s16 var_r29; + s16 var_r28; + s16 var_r26; + s16 var_r25; + + temp_r31 = object->data; + spC = object->model[0]; + sp8 = temp_r31->unk18; + temp_r30 = temp_r31->unk6; + + var_r29 = var_r28 = var_r26 = var_r25 = 0; + switch (temp_r31->unk8) { + case 2: + break; + case 1: + if ((fn_1_627C() & 0x1F) == 0) { + temp_f31 = atan2d(temp_r31->unk34.x, temp_r31->unk34.z); + temp_f31 += ((30.0f - (5.0f * temp_r30)) * ((fn_1_627C() - 0x8000) / 32768.0f)); + sp10.x = sind(temp_f31); + sp10.z = cosd(temp_f31); + temp_f30 = fn_1_213C(); + if ((temp_f31 > 70.0f) && (temp_f31 < 100.0f)) { + if (temp_f30 < 0.0f) { + var_r29 = (-sp10.z * (48.0f + (6.0f * temp_r30))); + var_r28 = (-sp10.x * (48.0f + (6.0f * temp_r30))); + } else { + var_r29 = (sp10.z * (48.0f + (6.0f * temp_r30))); + var_r28 = (sp10.x * (48.0f + (6.0f * temp_r30))); + } + } else if (temp_f30 < 0.0f) { + var_r29 = (sp10.z * (48.0f + (6.0f * temp_r30))); + var_r28 = (sp10.x * (48.0f + (6.0f * temp_r30))); + } else { + var_r29 = (-sp10.z * (48.0f + (6.0f * temp_r30))); + var_r28 = (-sp10.x * (48.0f + (6.0f * temp_r30))); + } + } else { + var_r29 = temp_r31->unk10; + var_r28 = temp_r31->unk12; + } + break; + case 3: + if ((fn_1_627C() & 0x1F) == 0) { + temp_f31 = 180.0f * ((fn_1_627C() - 0x8000) / 32768.0f); + sp10.x = sind(temp_f31); + sp10.z = cosd(temp_f31); + var_r29 = (48.0f * sp10.x); + var_r28 = (48.0f * sp10.z); + } else { + var_r29 = temp_r31->unk10; + var_r28 = temp_r31->unk12; + } + break; + } + temp_r31->unk10 = var_r29; + temp_r31->unk12 = var_r28; + temp_r31->unk14 = var_r26; + temp_r31->unk16 = var_r25; +} + +void fn_1_37FC(omObjData* object) { + s16 spA; + s16 sp8; + f32 var_f30; + f32 var_f28; + f32 temp_f27; + M424DllBallStruct* temp_r31; + s16 temp_r30; + s16 temp_r29; + s16 var_r28; + s16 var_r27; + s32 temp_r25; + + var_f30 = 1.0f; + temp_r31 = object->data; + temp_r25 = object->model[0]; + var_r28 = temp_r31->unk18; + temp_r31->unk58 = temp_r31->unk34; + temp_r30 = temp_r31->unk10; + temp_r29 = temp_r31->unk12; + spA = temp_r31->unk14; + sp8 = temp_r31->unk16; + switch (temp_r31->unk18) { + case 0: + case 1: + case 2: + temp_r31->unk20 = (0.025f * sqrtf((temp_r30 * temp_r30) + (temp_r29 * temp_r29))); + if (temp_r31->unk20 > 0.01f) { + if (temp_r31->unk20 >= 6.0f) { + var_r28 = 2; + var_r27 = 1; + } else { + var_r28 = 1; + var_r27 = 1; + } + var_f28 = atan2d(temp_r30, -temp_r29); + temp_r31->unk40.y = fn_1_640C(temp_r31->unk40.y, var_f28, 0.5f); + temp_r31->unk24 = temp_r31->unk40.y; + temp_r31->unk28++; + if (temp_r31->unk28 >= (0.5f * temp_r31->unk2C)) { + temp_r31->unk28 -= 0.5f * temp_r31->unk2C; + } + temp_r31->unk20 *= 1.0 + 0.25 * cosd(90.0f * (temp_r31->unk28 / (0.5f * temp_r31->unk2C))); + } else { + temp_r31->unk28 = 0.0f; + temp_r31->unk20 = 0.0f; + var_r28 = 0; + var_r27 = 1; + } + if (temp_r31->unkC != 0) { + temp_r31->unk4C.y = -2.4333334f; + } else { + temp_r31->unk4C.y += -2.4333334f; + } + break; + case 3: + var_r27 = 0; + if ((Hu3DData[temp_r25].unk_0C == -1) && (CharModelMotionEndCheck(temp_r31->unk1) != 0)) { + temp_r31->unk4C.y += -2.4333334f; + } else { + temp_r31->unk4C.y = 0.0f; + } + if (temp_r31->unkC != 0) { + if (temp_r31->unkD != 0) { + temp_r31->unk4C.y = 0.0f; + temp_r31->unkD = 0U; + var_r28 = 5; + var_r27 = 0; + } else { + temp_r31->unk4C.y *= -0.1f; + temp_r31->unkC = 0U; + var_r28 = 4; + var_r27 = 0; + } + } + break; + case 4: + temp_r31->unk4C.y += -2.4333334f; + if ((temp_r31->unkC != 0) && (CharModelMotionEndCheck(temp_r31->unk1) != 0)) { + var_r28 = 5; + var_r27 = 0; + } + break; + case 5: + if (CharModelMotionEndCheck(temp_r31->unk1) != 0) { + var_r28 = 0; + var_r27 = 1; + } + break; + case 6: + var_r28 = 6; + var_r27 = 0; + if (temp_r31->unk1 == 7) { + var_f30 = 0.85f; + temp_r31->unk30 = 0.9f; + } + break; + case 7: + var_r28 = 7; + var_r27 = 1; + if (temp_r31->unkE8 == 1) { + temp_r31->unkEC = HuAudCharVoicePlay(temp_r31->unk1, 0x11A); + } else if ((temp_r31->unkE8 > 90.0f) && (temp_r31->unkEC != -1)) { + HuAudFXStop(temp_r31->unkEC); + temp_r31->unkEC = -1; + } + temp_r31->unkE8++; + break; + case 8: + case 9: + var_r27 = 0; + temp_r31->unk4C.y = -2.4333334f; + break; + case 10: + var_r28 = 10; + var_r27 = 4; + var_f30 = 0.8f; + temp_r31->unk30 = 0.85f; + if ((var_r28 == temp_r31->unk18) && (Hu3DMotionShiftIDGet(temp_r25) != -1)) { + temp_f27 = Hu3DMotionMaxTimeGet(temp_r25); + if (Hu3DMotionTimeGet(temp_r25) >= temp_f27) { + var_r28 = 7; + var_r27 = 1; + } + } + break; + } + if ((temp_r31->unk7 & 4) != 0) { + if ((temp_r31->unkA & 2) != 0) { + Hu3DModelAttrSet(temp_r25, 1); + } else { + Hu3DModelAttrReset(temp_r25, 1); + } + if (--temp_r31->unkA == 0) { + temp_r31->unk7 &= ~4; + } + } + temp_r31->unk4C.x = temp_r31->unk20 * sind(temp_r31->unk24); + temp_r31->unk4C.z = temp_r31->unk20 * cosd(temp_r31->unk24); + temp_r31->unk34.x += temp_r31->unk4C.x; + if (temp_r31->unkC == 0) { + temp_r31->unk34.y += temp_r31->unk4C.y; + } + temp_r31->unk34.z += temp_r31->unk4C.z; + if (var_r28 != temp_r31->unk1A) { + temp_r31->unk1A = var_r28; + temp_r31->unk18 = var_r28; + CharModelMotionShiftSet(temp_r31->unk1, object->motion[temp_r31->unk18], 0.0f, 8.0f, var_r27); + temp_r31->unk2C = CharModelMotionMaxTimeGet(temp_r31->unk1); + } + if (temp_r31->unk30 != var_f30) { + if (var_f30 > temp_r31->unk30) { + if ((temp_r31->unk30 += 0.05f) > var_f30) { + temp_r31->unk30 = var_f30; + } + } + if (var_f30 < temp_r31->unk30) { + if ((temp_r31->unk30 -= 0.05f) < var_f30) { + temp_r31->unk30 = var_f30; + } + } + temp_r31->unk1C = temp_r31->unk30; + } + omSetTra(object, temp_r31->unk34.x, temp_r31->unk34.y, temp_r31->unk34.z); + omSetRot(object, temp_r31->unk40.x, temp_r31->unk40.y, temp_r31->unk40.z); + omSetSca(object, temp_r31->unk1C, temp_r31->unk1C, temp_r31->unk1C); +} + +void fn_1_4220(omObjData* object) { + s32 sp14[3] = { 0x370013, 0x370014, 0x370015 }; + Vec sp8; + f32 temp_f31; + f32 temp_f30; + M424DllBallStruct* var_r31; + s32 var_r29; + s32 temp_r28; + s32 var_r27; + + object->model[0] = var_r27 = Hu3DModelCreateFile(0x370012); + + for (var_r29 = 0; var_r29 < 3; var_r29++) { + object->motion[var_r29] = Hu3DJointMotion(var_r27, HuDataSelHeapReadNum(sp14[var_r29], 0x10000000, HEAP_DATA)); + } + Hu3DMotionSet(var_r27, object->motion[0]); + Hu3DModelAttrSet(var_r27, 0x40000001); + var_r31 = fn_1_6078(0xF0); + object->data = var_r31; + memset(var_r31, 0, 0xF0); + var_r31->unk0 = object->work[0]; + var_r31->unk1 = 0xFF; + var_r31->unk2 = 0xFF; + var_r31->unk3 = 0; + var_r31->unk4 = 0xFF; + var_r31->unk5 = 0xFF; + var_r31->unk6 = 0xFF; + var_r31->unk18 = var_r31->unk1A = 0; + var_r31->unk7 = 1; + var_r31->unkC = 1; + var_r31->unkD = 0; + var_r31->unkA = 0; + var_r31->unkA4 = 0; + var_r31->unkE = 0; + memset(&var_r31->unk64, 0, 0x40); + temp_r28 = object->work[1]; + if (temp_r28 == 8) { + sp8.x = 350.0f; + sp8.y = 200.0f; + sp8.z = 50.0f; + } else { + temp_f31 = 40.0f; + temp_f31 = 105.0f + ((temp_f31 * temp_r28) + (temp_f31 * (fn_1_627C() / 65536.0f))); + temp_f30 = 125.0f; + temp_f30 = (temp_f30 * (temp_r28 & 1)) + (100.0f + (250.0f + (temp_f30 * (fn_1_627C() / 65536.0f)))); + sp8.x = temp_f30 * sind(temp_f31); + sp8.y = 200.0f; + sp8.z = temp_f30 * cosd(temp_f31); + } + var_r31->unk34 = sp8; + var_r31->unk4C.x = var_r31->unk4C.y = var_r31->unk4C.z = 0.0f; + var_r31->unk40.x = var_r31->unk40.y = var_r31->unk40.z = 0.0f; + var_r31->unk24 = var_r31->unk40.y; + var_r31->unk2C = 1.0f; + var_r31->unk28 = 0.0f; + var_r31->unk20 = 0.0f; + memset(&var_r31->unkA8, 0, 0x40); + omSetTra(object, var_r31->unk34.x, var_r31->unk34.y, var_r31->unk34.z); + omSetRot(object, var_r31->unk40.x, var_r31->unk40.y, var_r31->unk40.z); + omSetSca(object, 0.8f, 0.8f, 0.8f); + object->model[1] = fn_1_48D0(object, 8, 0); + object->func = fn_1_469C; +} + +fn_1_4698(void) {} + +void fn_1_469C(omObjData* object) { + s32 temp_r27; + s16 var_r28; + s16 var_r30; + M424DllBallStruct* temp_r31; + + temp_r31 = object->data; + temp_r27 = object->model[0]; + var_r30 = temp_r31->unk18; + temp_r31->unk58 = temp_r31->unk34; + + temp_r31->unk4C.x = temp_r31->unk4C.z = 0.0f; + switch (temp_r31->unk8) { /* irregular */ + case 3: + var_r30 = 2; + var_r28 = 1; + temp_r31->unk4C.y = -2.4333334f; + if ((fn_1_627C() & 0xF) == 0) { + temp_r31->unk24 = (180.0f * ((fn_1_627C() - 0x8000) / 32768.0f)); + } + break; + case 1: + var_r30 = 1; + var_r28 = 1; + temp_r31->unk4C.y = -2.4333334f; + if ((fn_1_627C() & 0x3F) == 0) { + temp_r31->unk24 = (180.0f * ((fn_1_627C() - 0x8000) / 32768.0f)); + } + break; + case 2: + var_r30 = 0; + var_r28 = 1; + + temp_r31->unk4C.x = temp_r31->unk4C.z = 0.0f; + temp_r31->unk4C.y += -0.97333336f; + break; + } + temp_r31->unk40.y = fn_1_640C(temp_r31->unk40.y, temp_r31->unk24, 0.95f); + if (var_r30 != temp_r31->unk1A) { + temp_r31->unk1A = var_r30; + temp_r31->unk18 = var_r30; + Hu3DMotionShiftSet(temp_r27, object->motion[temp_r31->unk18], 0.0f, 8.0f, (u32) var_r28); + temp_r31->unk2C = Hu3DMotionMaxTimeGet(temp_r31->unk1); + } +} + +u8 fn_1_48D0(omObjData* object, u8 arg1, u8 arg2) { + M424DllBallStruct2* temp_r31; + s32 var_r30; + s32 var_r28; + + var_r28 = lbl_1_bss_58; + lbl_1_bss_58++; + temp_r31 = &lbl_1_bss_60[var_r28]; + memset(temp_r31, 0, 0x94); + temp_r31->unk0 = object; + var_r30 = Hu3DModelCreate(HuDataSelHeapReadNum((arg1 * 2) + 0x370000, 0x10000000, HEAP_DATA)); + temp_r31->unk8 = var_r30; + Hu3DModelLayerSet(var_r30, 2); + Hu3DModelShadowMapSet(var_r30); + Hu3DModelAttrSet(var_r30, 0x20000U); + Hu3DModelHiliteMapSet(var_r30, HuSprAnimRead(HuDataReadNum(0x370016, 0x10000000))); + var_r30 = Hu3DModelCreate(HuDataSelHeapReadNum((arg1 * 2) + 0x370001, 0x10000000, HEAP_DATA)); + temp_r31->unkA = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowSet(var_r30); + PSMTXIdentity(temp_r31->unkC); + temp_r31->unk3C.x = object->trans.x; + temp_r31->unk3C.y = 100.0f + object->trans.y; + temp_r31->unk3C.z = object->trans.z; + temp_r31->unk54 = temp_r31->unk3C; + temp_r31->unk6C.x = temp_r31->unk6C.y = temp_r31->unk6C.z = 0.0f; + temp_r31->unk5 = arg2; + temp_r31->unk4 = 2; + temp_r31->unk6 = 0; + if (arg2 != 0) { + temp_r31->unk91 = arg1; + } else { + temp_r31->unk91 = 0xFFU; + } + return var_r28; +} + +void fn_1_4A90(s16 arg0) { + Mtx sp50; + Mtx sp20; + Vec sp14; + Vec sp8; + f32 var_f31; + f32 var_f30; + M424DllBallStruct2* var_r31; + M424DllBallStruct* temp_r30; + s32 var_r29; + + if (omPauseChk() == 0) { + var_r31 = lbl_1_bss_60; + var_f31 = fn_1_213C(); + mtxRot(sp20, 0.0f, var_f31, 0.0f); + + for (var_r29 = 0; var_r29 < lbl_1_bss_58; var_r29++, var_r31++) { + temp_r30 = var_r31->unk0->data; + var_r31->unk48 = var_r31->unk54; + var_r31->unk60 = var_r31->unk48; + var_r31->unk78.x = var_r31->unk78.y = var_r31->unk78.z = 0.0f; + switch (var_r31->unk4) { + case 1: + PSMTXTrans(sp50, var_r31->unk3C.x, var_r31->unk3C.y, var_r31->unk3C.z); + PSMTXConcat(sp20, sp50, sp50); + var_r31->unk48.x = sp50[0][3]; + var_r31->unk48.y = sp50[1][3]; + var_r31->unk48.z = sp50[2][3]; + PSVECSubtract(&var_r31->unk48, &var_r31->unk3C, &var_r31->unk78); + PSVECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); + PSVECAdd(&temp_r30->unk4C, &sp14, &var_r31->unk84); + PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + var_r31->unk84.y = 0.0f; + var_r31->unk4 = 2; + break; + case 3: + PSVECSubtract(&var_r31->unk3C, &var_r31->unk60, &var_r31->unk6C); + var_r31->unk84 = var_r31->unk6C; + break; + case 4: + var_r31->unk6C.y += -2.4333334f; + var_r31->unk6C.x = var_r31->unk6C.z = 0.0f; + var_r31->unk84 = var_r31->unk6C; + break; + case 2: + var_r31->unk6C.y = 0.0f; + var_r31->unk6C.x = var_r31->unk6C.z = 0.0f; + PSVECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); + PSVECAdd(&temp_r30->unk4C, &sp14, &var_r31->unk84); + var_r31->unk6C = var_r31->unk84; + break; + case 5: + if ((var_r31->unk6 & 2) != 0) { + Hu3DModelAttrSet(var_r31->unk8, 1); + Hu3DModelAttrSet(var_r31->unkA, 1); + } else { + Hu3DModelAttrReset(var_r31->unk8, 1); + Hu3DModelAttrReset(var_r31->unkA, 1); + } + if (++var_r31->unk6 >= 0x3C) { + var_r31->unk4 = 6; + } + break; + default: + var_r31->unk6C.x = var_r31->unk6C.y = var_r31->unk6C.z = 0.0f; + break; + } + } + fn_1_8AA8(0x20, 1); + var_r31 = lbl_1_bss_60; + for (var_r29 = 0; var_r29 < lbl_1_bss_58; var_r29++, var_r31++) { + if (var_r31->unk4 != 6) { + if (var_r31->unk4 == 1) { + PSVECSubtract(&var_r31->unk3C, &var_r31->unk48, &sp14); + sp8.x = sp14.z; + sp8.y = 0.0f; + sp8.z = -sp14.x; + var_f30 = PSVECMag(&sp8); + if (var_f30 > 0.01f) { + PSMTXRotAxisRad(sp50, &sp8, MTXDegToRad(var_f30)); + PSMTXConcat(sp20, sp50, sp50); + } else { + PSMTXCopy(sp20, sp50); + } + PSMTXConcat(sp50, var_r31->unkC, var_r31->unkC); + fn_1_6230(var_r31->unk8, var_r31->unkC); + fn_1_6230(var_r31->unkA, var_r31->unkC); + } + if (var_r31->unk3C.y < 250.0f) { + var_r31->unk3C.y = 250.0f; + var_r31->unk4 = 6; + Hu3DModelAttrSet(var_r31->unk8, 1); + Hu3DModelAttrSet(var_r31->unkA, 1); + } + Hu3DModelPosSet(var_r31->unk8, var_r31->unk3C.x, var_r31->unk3C.y, var_r31->unk3C.z); + Hu3DModelPosSet(var_r31->unkA, var_r31->unk3C.x, var_r31->unk3C.y, var_r31->unk3C.z); + PSVECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); + var_r31->unk6C = sp14; + var_r31->unk54 = var_r31->unk3C; + temp_r30 = var_r31->unk0->data; + temp_r30->unk8 = var_r31->unk4; + temp_r30->unk40.y += var_f31; + if (var_r31->unk4 != 5) { + temp_r30->unk34 = var_r31->unk3C; + temp_r30->unk34.y -= 80.0f; + omSetTra(var_r31->unk0, temp_r30->unk34.x, temp_r30->unk34.y, temp_r30->unk34.z); + omSetRot(var_r31->unk0, temp_r30->unk40.x, temp_r30->unk40.y, temp_r30->unk40.z); + } + } + } + } +} + +void fn_1_5018(void) { + M424DllBallStruct3 sp27C[32]; + Vec sp270; + Vec sp264; + Vec sp258; + Vec sp24C; + Vec sp240; + Vec sp234; + Vec sp228; + f32 var_f31; + f32 var_f30; + f32 var_f29; + f32 temp_f28; + M424DllBallStruct2* var_r31; + M424DllBallStruct2* var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + + var_r31 = &lbl_1_bss_60[0]; + for (var_r28 = 0; var_r28 < lbl_1_bss_58; var_r28++, var_r31++) { + var_r31->unk90 = 1; + } + + for (var_r26 = 0, var_f29 = 1.0f; var_r26 < 0x80; var_f29 -= var_f30, var_r26++) { + var_r29 = 0; + var_f30 = var_f29; + var_r31 = &lbl_1_bss_60[0]; + for (var_r28 = 0; var_r28 < lbl_1_bss_58; var_r28++, var_r31++) { + if ((var_r31->unk90 != 0) && (var_r31->unk4 < 4U)) { + var_r31->unk90 = 0; + if (var_r31->unk4 < 3) { + if (var_r31->unk6C.y < 0.0f) { + var_f31 = (200.0f - (var_r31->unk60.y - 100.0f)) / var_r31->unk6C.y; + if (var_f31 <= var_f29) { + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + var_r31->unk90 = 1; + if (var_f31 <= var_f30) { + if (var_f31 < var_f30) { + var_r29 = 0; + } + sp27C[var_r29].unk0 = 0; + sp27C[var_r29].unk4 = var_r31; + sp27C[var_r29].unk8 = 0; + var_r29++; + var_f30 = var_f31; + } + } + } + if (var_r31->unk4 == 1) { + var_f31 = fn_1_7420(var_r31->unk60, var_r31->unk84, 100.0f, 700.0f); + } else { + var_f31 = fn_1_7420(var_r31->unk60, var_r31->unk6C, 100.0f, 700.0f); + } + if (var_f31 >= 0.0f && var_f31 <= var_f29) { + var_r31->unk90 = 1; + if (var_f31 <= var_f30) { + if (var_f31 < var_f30) { + var_r29 = 0; + } + sp27C[var_r29].unk0 = 1; + sp27C[var_r29].unk4 = var_r31; + sp27C[var_r29].unk8 = 0; + var_r29++; + var_f30 = var_f31; + } + } + if (var_r31->unk4 == 1) { + var_f31 = fn_1_709C(var_r31->unk60, var_r31->unk84, 100.0f, 250.0f); + } else { + var_f31 = fn_1_709C(var_r31->unk60, var_r31->unk6C, 100.0f, 250.0f); + } + if (var_f31 >= 0.0f && var_f31 <= var_f29) { + var_r31->unk90 = 1; + if (var_f31 <= var_f30) { + if (var_f31 < var_f30) { + var_r29 = 0; + } + sp27C[var_r29].unk0 = 2; + sp27C[var_r29].unk4 = var_r31; + sp27C[var_r29].unk8 = 0; + var_r29++; + var_f30 = var_f31; + } + } + } + + var_r30 = lbl_1_bss_60; + for (var_r25 = 0; var_r25 < lbl_1_bss_58; var_r25++, var_r30++) { + if ((var_r31 != var_r30) && (var_r30->unk4 < 4)) { + if ((var_r31->unk4 == 1) && (var_r30->unk4 == 1)) { + var_f31 = fn_1_6D10(var_r31->unk60, var_r31->unk84, 100.0f, var_r30->unk60, var_r30->unk84, 100.0f); + } else { + var_f31 = fn_1_6D10(var_r31->unk60, var_r31->unk6C, 100.0f, var_r30->unk60, var_r30->unk6C, 100.0f); + } + if ((var_f31 < 0.0f) || (var_f31 > var_f29)) continue; + var_r31->unk90 = 1; + var_r30->unk90 = 1; + if (var_f31 > var_f30) continue; + if (var_f31 < var_f30) { + var_r29 = 0; + } else { + for (var_r27 = 0; var_r27 < var_r29; var_r27++) { + if ((sp27C[var_r27].unk4 == var_r30) && (sp27C[var_r27].unk8 == var_r31)) break; + } + if (var_r27 < var_r29) continue; + } + sp27C[var_r29].unk0 = 3; + sp27C[var_r29].unk4 = var_r31; + sp27C[var_r29].unk8 = var_r30; + var_r29++; + var_f30 = var_f31; + } + } + } + } + if (var_r29 == 0) break; + var_r31 = lbl_1_bss_60; + for (var_r28 = 0; var_r28 < lbl_1_bss_58; var_r28++, var_r31++) { + var_r31->unk60.x += var_r31->unk6C.x * var_f30; + var_r31->unk60.y += var_r31->unk6C.y * var_f30; + var_r31->unk60.z += var_r31->unk6C.z * var_f30; + } + for (var_r28 = 0; var_r28 < var_r29; var_r28++) { + switch (sp27C[var_r28].unk0) { + case 0: + var_r31 = sp27C[var_r28].unk4; + var_r31->unk4 = 1; + sp234.y = 300.0f - var_r31->unk60.y; + var_r31->unk60.y = 300.0f; + var_r31->unk6C.y = sp234.y; + var_r31->unk84.y = sp234.y; + break; + case 1: + var_r31 = sp27C[var_r28].unk4; + sp240 = var_r31->unk60; + sp240.y = 0.0f; + PSVECNormalize(&sp240, &sp228); + sp228.x = -sp228.x; + sp228.y = 0.0f; + sp228.z = -sp228.z; + temp_f28 = PSVECMag(&sp240); + temp_f28 -= 600.0f; + var_r31->unk60.x += temp_f28 * sp228.x; + var_r31->unk60.z += temp_f28 * sp228.z; + sp240 = var_r31->unk60; + sp240.y = 0.0f; + if (var_r31->unk4 == 1) { + fn_1_7CA0(var_r31->unk84, sp228, 0.8f, &sp24C); + var_r31->unk84 = sp24C; + PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + } else { + fn_1_7CA0(var_r31->unk6C, sp228, 0.8f, &sp24C); + var_r31->unk6C = sp24C; + var_r31->unk84 = var_r31->unk6C; + } + break; + case 2: + var_r31 = sp27C[var_r28].unk4; + sp240 = var_r31->unk60; + sp240.y = 0.0f; + PSVECNormalize(&sp240, &sp228); + temp_f28 = PSVECMag(&sp240); + temp_f28 = 350.0f; + var_r31->unk60.x = temp_f28 * sp228.x; + var_r31->unk60.z = temp_f28 * sp228.z; + sp240 = var_r31->unk60; + sp240.y = 0.0f; + if (var_r31->unk4 == 1) { + fn_1_7CA0(var_r31->unk84, sp228, 0.8f, &sp24C); + var_r31->unk84 = sp24C; + PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + } else { + fn_1_7CA0(var_r31->unk6C, sp228, 0.8f, &sp24C); + var_r31->unk6C = sp24C; + var_r31->unk84 = var_r31->unk6C; + } + break; + case 3: + var_r31 = sp27C[var_r28].unk4; + var_r30 = sp27C[var_r28].unk8; + if (var_r31->unk4 == 3) { + fn_1_79FC(&var_r30->unk3C, &var_r30->unk6C, 100.0f, &var_r31->unk3C, &var_r31->unk6C, 100.0f, 0.8f); + var_r31->unk84 = var_r31->unk6C; + var_r30->unk84 = var_r30->unk6C; + } else if (var_r30->unk4 == 3) { + fn_1_79FC(&var_r31->unk3C, &var_r31->unk6C, 100.0f, &var_r30->unk3C, &var_r30->unk6C, 100.0f, 0.8f); + var_r31->unk84 = var_r31->unk6C; + var_r30->unk84 = var_r30->unk6C; + } else if ((var_r31->unk4 == 1) && (var_r30->unk4 == 1)) { + fn_1_77C4(var_r31->unk60, var_r31->unk84, var_r30->unk60, 0.8f, &sp24C, &sp258); + fn_1_77C4(var_r30->unk60, var_r30->unk84, var_r31->unk60, 0.8f, &sp270, &sp264); + PSVECAdd(&sp24C, &sp264, &var_r31->unk84); + PSVECAdd(&sp258, &sp270, &var_r30->unk84); + PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + PSVECAdd(&var_r30->unk84, &var_r30->unk78, &var_r30->unk6C); + } else { + fn_1_77C4(var_r31->unk60, var_r31->unk6C, var_r30->unk60, 0.8f, &sp24C, &sp258); + fn_1_77C4(var_r30->unk60, var_r30->unk6C, var_r31->unk60, 0.8f, &sp270, &sp264); + PSVECAdd(&sp24C, &sp264, &var_r31->unk6C); + PSVECAdd(&sp258, &sp270, &var_r30->unk6C); + var_r31->unk84 = var_r31->unk6C; + var_r30->unk84 = var_r30->unk6C; + } + break; + } + } + } + var_r31 = lbl_1_bss_60; + for (var_r28 = 0; var_r28 < lbl_1_bss_58; var_r28++, var_r31++) { + var_r31->unk3C.x = var_r31->unk60.x + (var_r31->unk6C.x * var_f29); + var_r31->unk3C.y = var_r31->unk60.y + (var_r31->unk6C.y * var_f29); + var_r31->unk3C.z = var_r31->unk60.z + (var_r31->unk6C.z * var_f29); + } +} + +void fn_1_6038(void) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { + lbl_1_bss_5BC[var_r31] = 0; + } +} + +void* fn_1_6078(s32 arg0) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { + if (lbl_1_bss_5BC[var_r31] == 0) break; + } + if (var_r31 == 0x20) { + return NULL; + } + lbl_1_bss_5BC[var_r31] = HuMemDirectMallocNum(HEAP_SYSTEM, arg0, 0x10000000); + return lbl_1_bss_5BC[var_r31]; +} + +void fn_1_6118(void* arg0) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { + if (lbl_1_bss_5BC[var_r31] == arg0) break; + } + if (var_r31 != 0x20) { + HuMemDirectFree(lbl_1_bss_5BC[var_r31]); + lbl_1_bss_5BC[var_r31] = NULL; + } +} + +void fn_1_61AC(void) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { + if (lbl_1_bss_5BC[var_r31]) { + HuMemDirectFree(lbl_1_bss_5BC[var_r31]); + lbl_1_bss_5BC[var_r31] = NULL; + } + } +} + +void fn_1_6230(s16 arg0, Mtx arg1) { + ModelData* var_r31; + + var_r31 = &Hu3DData[arg0]; + PSMTXCopy(arg1, var_r31->unk_F0); +} + +u32 lbl_1_data_1D8 = 0x41C64E6D; + +s32 fn_1_627C(void) { + lbl_1_data_1D8 *= 0x41C64E6D; + lbl_1_data_1D8 += 0x3039; + return lbl_1_data_1D8 >> 0x10; +} + +void fn_1_62D0(s32 arg0, u32* arg1) { + s32 var_r31; + s32 temp_r30; + u32 temp_r29; + + for (var_r31 = 0; var_r31 < arg0; var_r31++) { + arg1[var_r31] = var_r31; + } + + for (var_r31 = 0; var_r31 < arg0 - 1; var_r31++) { + temp_r30 = (arg0 * (fn_1_627C() / 65536.0f)); + temp_r29 = arg1[var_r31]; + arg1[var_r31] = arg1[temp_r30]; + arg1[temp_r30] = temp_r29; + } +} + +f32 fn_1_640C(f32 arg0, f32 arg1, f32 arg2) { + f32 var_f31; + + if (arg0 > 180.0f) { + arg0 -= 360.0f; + } else { + if (arg0 <= -180.0f) { + arg0 += 360.0f; + } + } + if (arg1 > 180.0f) { + arg1 -= 360.0f; + } else { + if (arg1 <= -180.0f) { + arg1 += 360.0f; + } + } + var_f31 = arg0 - arg1; + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } else { + if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } + } + arg0 = arg1 + (var_f31 * arg2); + if (arg0 > 180.0f) { + return arg0 - 360.0f; + } + if (arg0 <= -180.0f) { + arg0 += 360.0f; + } + return arg0; +} + +void fn_1_6574(Mtx arg0, f32 arg8, f32 arg9, f32 argA) { + Mtx sp38; + Mtx sp8; + + if (argA != 0.0f) { + PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + } else { + PSMTXIdentity(arg0); + } + if (arg8 != 0.0f) { + PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + PSMTXConcat(sp38, arg0, arg0); + } + if (arg9 != 0.0f) { + PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + PSMTXConcat(sp8, arg0, arg0); + } +} + +void fn_1_6694(M424BallStruct4* arg0, Vec* arg1) { + f32 temp_f29; + f32 var_f28; + + arg1->x = atan2d(arg0->unk18, arg0->unk28); + if (arg1->x < 0.0f) { + arg1->x += 360.0f; + } + arg1->z = atan2d(arg0->unk4, arg0->unk0); + if (arg1->z < 0.0f) { + arg1->z += 360.0f; + } + temp_f29 = -arg0->unk8; + var_f28 = sqrtf(ABS(1.0 - (temp_f29 * temp_f29))); + if ((arg1->x > 90.0f) && (arg1->x < 270.0f) && (arg1->z > 90.0f) && (arg1->z < 270.0f)) { + arg1->x = fmod((180.0f + arg1->x), 360.0); + arg1->z = fmod((180.0f + arg1->z), 360.0); + var_f28 = -var_f28; + } + arg1->y = atan2d(temp_f29, var_f28); + if (arg1->y < 0.0f) { + arg1->y += 360.0f; + } +} + +void fn_1_6A30(M424BallStruct4* arg0, Vec* arg1) { + f32 temp_f29; + f32 var_f27; + + arg1->z = atan2d(arg0->unk4, arg0->unk14); + if (arg1->z < 0.0f) { + arg1->z += 360.0f; + } + arg1->y = atan2d(arg0->unk8, arg0->unk28); + if (arg1->y < 0.0f) { + arg1->y += 360.0f; + } + temp_f29 = -arg0->unk24; + var_f27 = sqrtf(ABS(1.0 - (temp_f29 * temp_f29))); + arg1->x = atan2d(temp_f29, var_f27); + if (arg1->x < 0.0f) { + arg1->x += 360.0f; + } +} + +f32 fn_1_6D10(Vec arg0, Vec arg1, f32 arg2, Vec arg3, Vec arg4, f32 arg5) { + f32 temp_f30; + f32 temp_f29; + f32 temp_f28; + f32 temp_f27; + f32 temp_f26; + f32 temp_f25; + f32 var_f23; + + PSVECSubtract(&arg3, &arg0, &arg3); + PSVECSubtract(&arg4, &arg1, &arg4); + temp_f29 = arg2 + arg5; + if (PSVECMag(&arg3) > temp_f29 + PSVECMag(&arg4)) { + return -1.0f; + } + temp_f29 *= temp_f29; + temp_f27 = (arg4.z * arg4.z) + ((arg4.x * arg4.x) + (arg4.y * arg4.y)); + temp_f26 = 2.0f * ((arg4.z * arg3.z) + ((arg4.x * arg3.x) + (arg4.y * arg3.y))); + var_f23 = ((arg3.z * arg3.z) + ((arg3.x * arg3.x) + (arg3.y * arg3.y))) - temp_f29; + if (temp_f27 == 0.0f) { + return -1.0f; + } + temp_f30 = (temp_f26 * temp_f26) - (4.0f * temp_f27 * var_f23); + if (temp_f30 <= 0.0f) { + return -1.0f; + } + temp_f30 = sqrtf(temp_f30); + temp_f25 = (-temp_f26 + temp_f30) / (2.0f * temp_f27); + temp_f28 = (-temp_f26 - temp_f30) / (2.0f * temp_f27); + if (((temp_f25 * temp_f28) < 0.0f) && (temp_f28 < 0.0f) && (temp_f25 > fabs(temp_f28))) { + return 0.0f; + } + return temp_f28; +} + +f32 fn_1_709C(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { + Vec sp20; + Vec sp14; + f32 temp_f30; + f32 temp_f29; + f32 temp_f28; + f32 temp_f27; + f32 temp_f26; + f32 temp_f25; + f32 var_f23; + + sp20 = arg0; + sp20.y = 0.0f; + sp14 = arg1; + sp14.y = 0.0f; + temp_f29 = arg3 + arg2; + if (PSVECMag(&sp20) > temp_f29 + PSVECMag(&sp14)) { + return -1.0f; + } + temp_f29 *= temp_f29; + temp_f27 = (arg1.x * arg1.x) + (arg1.z * arg1.z); + temp_f26 = 2.0f * ((arg1.x * arg0.x) + (arg1.z * arg0.z)); + var_f23 = (((arg0.x * arg0.x) + (arg0.z * arg0.z)) - temp_f29); + if (0.0f == temp_f27) { + return -1.0f; + } + temp_f30 = (temp_f26 * temp_f26) - (4.0f * temp_f27 * var_f23); + if (temp_f30 <= 0.0f) { + return -1.0f; + } + temp_f30 = sqrtf(temp_f30); + temp_f25 = (-temp_f26 + temp_f30) / (2.0f * temp_f27); + temp_f28 = (-temp_f26 - temp_f30) / (2.0f * temp_f27); + if (((temp_f25 * temp_f28) < 0.0f) && (temp_f28 < 0.0f) && (temp_f25 > fabs(temp_f28))) { + return 0.0f; + } + return temp_f28; +} + +f32 fn_1_7420(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { + Vec sp20; + Vec sp14; + f32 temp_f30; + f32 temp_f29; + f32 temp_f28; + f32 temp_f27; + f32 temp_f26; + f32 temp_f25; + f32 var_f23; + + sp20 = arg0; + sp20.y = 0.0f; + sp14 = arg1; + sp14.y = 0.0f; + temp_f29 = arg3 - arg2; + if (PSVECMag(&sp20) > temp_f29) { + return 0.0f; + } + if (PSVECMag(&sp20) > temp_f29 + PSVECMag(&sp14)) { + return -1.0f; + } + temp_f29 *= temp_f29; + temp_f27 = (arg1.x * arg1.x) + (arg1.z * arg1.z); + temp_f26 = 2.0f * ((arg1.x * arg0.x) + (arg1.z * arg0.z)); + var_f23 = (arg0.x * arg0.x) + (arg0.z * arg0.z) - temp_f29; + if (0.0f == temp_f27) { + return -1.0f; + } + temp_f30 = (temp_f26 * temp_f26) - (4.0f * temp_f27 * var_f23); + if (temp_f30 <= 0.0f) { + return -1.0f; + } + temp_f30 = sqrtf(temp_f30); + temp_f25 = (-temp_f26 - temp_f30) / (2.0f * temp_f27); + temp_f28 = (-temp_f26 + temp_f30) / (2.0f * temp_f27); + if (((temp_f25 * temp_f28) < 0.0f) && (temp_f28 < 0.0f) && (temp_f25 > fabs(temp_f28))) { + return 0.0f; + } + return temp_f28; +} + +void fn_1_77C4(Vec arg0, Vec arg1, Vec arg2, f32 arg3, Vec* arg4, Vec* arg5) { + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + f32 var_f31; + f32 temp_f30; + f32 temp_f29; + f32 var_f28; + + sp38 = arg1; + var_f31 = PSVECMag(&sp38); + if (var_f31 < 0.01f) { + arg4->x = arg4->y = arg4->z = 0.0f; + arg5->x = arg5->y = arg5->z = 0.0f; + return; + } + PSVECNormalize(&sp38, &sp38); + var_f31 = var_f31 * arg3; + PSVECSubtract(&arg2, &arg0, &sp2C); + PSVECNormalize(&sp2C, &sp2C); + var_f28 = PSVECDotProduct(&sp38, &sp2C); + if (var_f28 < 0.0f) { + arg4->x = arg1.x; + arg4->y = arg1.y; + arg4->z = arg1.z; + arg5->x = arg5->y = arg5->z = 0.0f; + return; + } + temp_f29 = var_f31 * var_f28; + temp_f30 = var_f31 - temp_f29; + if (temp_f30 < 0.01f) { + arg4->x = arg4->y = arg4->z = 0.0f; + } else { + PSVECCrossProduct(&sp38, &sp2C, &sp14); + PSVECNormalize(&sp14, &sp14); + PSVECCrossProduct(&sp2C, &sp14, &sp20); + PSVECNormalize(&sp20, &sp20); + arg4->x = sp20.x * temp_f30; + arg4->y = sp20.y * temp_f30; + arg4->z = sp20.z * temp_f30; + } + arg5->x = sp2C.x * temp_f29; + arg5->y = sp2C.y * temp_f29; + arg5->z = sp2C.z * temp_f29; +} + +void fn_1_79FC(Vec* arg0, Vec* arg1, f32 arg2, Vec* arg3, Vec* arg4, f32 arg5, f32 arg6) { + Vec sp38; + Vec sp2C; + f32 temp_f31; + f32 var_f30; + f32 var_f29; + + arg1->x *= arg6; + arg1->y *= arg6; + arg1->z *= arg6; + PSVECSubtract(arg0, arg3, &sp38); + PSVECNormalize(&sp38, &sp2C); + temp_f31 = (arg2 + arg5) - PSVECMag(&sp38); + if (temp_f31 > 0.01f) { + PSVECSubtract(arg1, arg4, &sp38); + if (PSVECMag(&sp38) < 0.01f) { + arg0->x += sp2C.x * temp_f31; + arg0->y += sp2C.y * temp_f31; + arg0->z += sp2C.z * temp_f31; + } else { + PSVECNormalize(&sp38, &sp38); + arg0->x -= sp38.x * temp_f31; + arg0->y -= sp38.y * temp_f31; + arg0->z -= sp38.z * temp_f31; + } + } + fn_1_7CA0(*arg1, sp2C, 1.0f, arg1); + PSVECSubtract(arg4, arg1, &sp38); + var_f30 = PSVECMag(&sp38); + if (var_f30 < 0.01f) return; + PSVECNormalize(&sp38, &sp38); + var_f29 = PSVECDotProduct(&sp2C, &sp38); + if (var_f29 > 0.0f) { + arg1->x += var_f30 * (sp2C.x * var_f29); + arg1->y += var_f30 * (sp2C.y * var_f29); + arg1->z += var_f30 * (sp2C.z * var_f29); + } +} + +void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Point3d* arg3) { + f32 var_f31; + + *arg3 = arg0; + arg3->x *= arg2; + arg3->y *= arg2; + arg3->z *= arg2; + var_f31 = PSVECDotProduct(&arg1, arg3); + if (var_f31 < 0.0f) { + arg3->x -= 2.0f * arg1.x * var_f31; + arg3->y -= 2.0f * arg1.y * var_f31; + arg3->z -= 2.0f * arg1.z * var_f31; + } +} + +f32 fn_1_7DD0(Vec* arg0) { + f32 temp_f30; + f32 temp_f29; + + temp_f30 = (arg0->x * arg0->x) + (arg0->y * arg0->y) + (arg0->z * arg0->z); + temp_f30 = sqrtf(temp_f30); + if (temp_f30 != 0.0f) { + temp_f29 = 1.0f / temp_f30; + arg0->x *= temp_f29; + arg0->y *= temp_f29; + arg0->z *= temp_f29; + } else { + arg0->x = arg0->y = arg0->z = 0.0f; + } + return temp_f30; +} + +f32 fn_1_7F68(Vec arg0, Vec arg1, Vec* arg2, f32 arg8) { + if (arg8 <= 0.0f) { + arg2->x = arg0.x; + arg2->y = arg0.y; + arg2->z = arg0.z; + arg8 = 0.0f; + } else if (arg8 >= 1.0f) { + arg2->x = (arg0.x + arg1.x); + arg2->y = (arg0.y + arg1.y); + arg2->z = (arg0.z + arg1.z); + arg8 = 1.0f; + } else { + arg2->x = (arg0.x + (arg8 * arg1.x)); + arg2->y = (arg0.y + (arg8 * arg1.y)); + arg2->z = (arg0.z + (arg8 * arg1.z)); + } + return arg8; +} + +f32 fn_1_8040(Vec arg0, Vec arg1, Vec arg2) { + f32 temp_f30; + f32 var_f31; + + var_f31 = (arg2.z * (arg1.z - arg0.z)) + ((arg2.x * (arg1.x - arg0.x)) + (arg2.y * (arg1.y - arg0.y))); + temp_f30 = -((arg2.z * arg2.z) + ((arg2.x * arg2.x) + (arg2.y * arg2.y))); + if (temp_f30 != 0.0f) { + var_f31 /= temp_f30; + } + return var_f31; +} + +f32 fn_1_80FC(Vec* arg0, Vec* arg1, Vec* arg2) { + Vec sp44; + f32 var_f30; + + if (0.0f == (arg2->x * arg2->x) + (arg2->y * arg2->y) + (arg2->z * arg2->z)) { + return ((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y)) + ((arg0->z - arg1->z) * (arg0->z - arg1->z)); + } + var_f30 = fn_1_8040(*arg0, *arg1, *arg2); + fn_1_7F68(*arg1, *arg2, &sp44, var_f30); + return ((arg0->x - sp44.x) * (arg0->x - sp44.x)) + ((arg0->y - sp44.y) * (arg0->y - sp44.y)) + ((arg0->z - sp44.z) * (arg0->z - sp44.z)); +} + +f32 fn_1_8438(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { + f32 var_f27; + + if (0.0f == ((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y)))) { + return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); + } + var_f27 = fn_1_8040(*arg0, *arg1, *arg2); + fn_1_7F68(*arg1, *arg2, arg3, var_f27); + arg4->x = arg0->x - arg3->x; + arg4->y = arg0->y - arg3->y; + arg4->z = arg0->z - arg3->z; + return fn_1_7DD0(arg4); +} + +void fn_1_88E8(u8 arg0, f32 arg8, f32 arg9, f32 argA) { + M424DllBallStruct2* temp_r31; + + temp_r31 = &lbl_1_bss_60[arg0]; + temp_r31->unk4 = 3; + temp_r31->unk3C.x = arg8; + temp_r31->unk3C.y = arg9; + temp_r31->unk3C.z = argA; +} + +void fn_1_8924(u8 arg0, u8 arg1) { + M424DllBallStruct2* temp_r31; + + temp_r31 = &lbl_1_bss_60[arg0]; + temp_r31->unk4 = arg1; +} + +u8 fn_1_8950(u8 arg0) { + M424DllBallStruct2* temp_r31; + + temp_r31 = &lbl_1_bss_60[arg0]; + return temp_r31->unk4; +} + +u8 fn_1_897C(u8 arg0) { + M424DllBallStruct2* temp_r31; + + temp_r31 = &lbl_1_bss_60[arg0]; + return temp_r31->unk5; +} + +u8 fn_1_89A8(u8 arg0) { + M424DllBallStruct2* temp_r31; + + temp_r31 = &lbl_1_bss_60[arg0]; + return temp_r31->unk91; +} + +Vec* fn_1_89D4(u8 arg0) { + M424DllBallStruct2* temp_r31; + + temp_r31 = &lbl_1_bss_60[arg0]; + return &temp_r31->unk3C; +} + +Vec* fn_1_8A00(u8 arg0) { + M424DllBallStruct2* temp_r31; + + temp_r31 = &lbl_1_bss_60[arg0]; + return &temp_r31->unk6C; +} + +s32 fn_1_8A2C(void) { + M424DllBallStruct2* var_r31; + M424DllBallStruct* temp_r30; + s32 var_r29; + + var_r31 = lbl_1_bss_60; + for (var_r29 = 0; var_r29 < lbl_1_bss_58; var_r29++, var_r31++) { + temp_r30 = var_r31->unk0->data; + if ((temp_r30->unk8 == 3) || (temp_r30->unk8 == 2)) { + return 0; + } + } + return 1; +} + +void fn_1_8AA8(s32 arg0, s32 arg1) { + Vec spC; + M424DllBallStruct2* temp_r31; + s32 var_r27; + s32 var_r29; + s32 var_r30; + + if (arg1 != 0) { + for (var_r30 = 0; var_r30 < lbl_1_bss_58; var_r30++) { + temp_r31 = &lbl_1_bss_60[var_r30]; + if (temp_r31->unk4 != 6) { + PSVECAdd(&temp_r31->unk60, &temp_r31->unk6C, &temp_r31->unk3C); + if ((temp_r31->unk4 < 3) && (fn_1_907C(&temp_r31->unk3C, &spC) != 0)) { + temp_r31->unk3C = spC; + } + if ((temp_r31->unk6C.y < 0.0f) && (temp_r31->unk4 != 4) && (temp_r31->unk4 != 6) && (temp_r31->unk3C.y < 300.0f)) { + temp_r31->unk3C.y = 300.0f; + if (temp_r31->unk4 == 2) { + temp_r31->unk4 = 1; + } + } + } + } + } + + for (var_r30 = 0, var_r29 = arg0; var_r30 < lbl_1_bss_58; var_r30++) { + temp_r31 = &lbl_1_bss_60[var_r30]; + var_r27 = 0; + if (fn_1_8950(var_r30) < 4) { + if (fn_1_8C78(var_r30, arg0) < arg0) { + var_r27 = 1; + } + if ((var_r27 != 0) && (var_r29 > 0)) { + var_r29 -= 1; + var_r30 -= 1; + } else { + var_r29 = arg0; + } + } + } + fn_1_C2E0(0); +} + +s32 fn_1_8C78(s32 arg0, s32 arg1) { + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec* sp10; + f32 temp_f31; + f32 var_f30; + s32 var_r31; + M424DllBallStruct2* temp_r30; + M424DllBallStruct2* temp_r29; + Vec* var_r28; + Vec* var_r27; + M424DllBallStruct* temp_r26; + M424DllBallStruct* temp_r25; + + temp_r30 = &lbl_1_bss_60[arg0]; + temp_r26 = temp_r30->unk0->data; + var_r28 = fn_1_89D4(arg0); + sp38 = *var_r28; + + for (var_r31 = 0; var_r31 < lbl_1_bss_58; var_r31++) { + if (var_r31 != arg0) { + if (fn_1_8950(var_r31) < 3) { + temp_r29 = &lbl_1_bss_60[var_r31]; + temp_r25 = temp_r29->unk0->data; + var_r27 = fn_1_89D4(var_r31); + sp2C = *var_r27; + PSVECSubtract(&sp2C, &sp38, &sp20); + var_f30 = PSVECMag(&sp20); + if (var_f30 < 200.0f) { + if (var_f30 > 0.0f) { + temp_f31 = 1.0f / var_f30; + sp20.x *= temp_f31; + sp20.y *= temp_f31; + sp20.z *= temp_f31; + } else { + sp20.x = 0.0f; + sp20.y = 0.0f; + sp20.z = 1.0f; + } + temp_f31 = 1.0f + (0.5f * (200.0f - var_f30)); + if (temp_f31 > 0.0f) { + PSVECScale(&sp20, &sp20, temp_f31); + PSVECAdd(&sp2C, &sp20, &sp2C); + *var_r27 = sp2C; + if ((temp_r29->unk4 < 3) && (fn_1_907C(&sp2C, &sp14) != 0)) { + sp2C = sp14; + *var_r27 = sp14; + } + if ((temp_r29->unk4 == 2) && (temp_r25->unk4C.y < 0.0f)) { + temp_r25->unk4C.y += 0.1f * temp_f31; + } + } + if (temp_f31 > 0.0f) { + PSVECScale(&sp20, &sp20, -1.0f); + PSVECAdd(&sp38, &sp20, &sp38); + *var_r28 = sp38; + if ((temp_r30->unk4 < 3) && (fn_1_907C(&sp38, &sp14) != 0)) { + sp38 = sp14; + *var_r28 = sp14; + } + if ((temp_r30->unk4 == 2) && (temp_r26->unk4C.y < 0.0f)) { + temp_r26->unk4C.y += 0.1f * temp_f31; + } + } + if (arg1 > 0) { + arg1--; + fn_1_8C78(var_r31, arg1); + } + } + } + } + } + return arg1; +} + +s32 fn_1_907C(Vec* arg0, Vec* arg1) { + Vec sp10; + f32 temp_f29; + f32 temp_f28; + f32 var_f27; + f32 temp_f26; + + sp10 = *arg0; + *arg1 = *arg0; + temp_f29 = (sp10.x * sp10.x) + (sp10.z * sp10.z); + var_f27 = sqrtf(temp_f29); + if (var_f27 < 350.0f) { + if (var_f27 > 0.0f) { + temp_f26 = 1.0f / var_f27; + sp10.x *= temp_f26; + sp10.z *= temp_f26; + } else { + sp10.x = 1.0f; + sp10.z = 0.0f; + } + arg1->x = 350.0f * sp10.x; + arg1->z = 350.0f * sp10.z; + } + temp_f28 = (sp10.x * sp10.x) + (sp10.z * sp10.z); + var_f27 = sqrtf(temp_f28); + if (var_f27 > 600.0f) { + temp_f26 = 1.0f / var_f27; + sp10.x *= temp_f26; + sp10.z *= temp_f26; + arg1->x = 600.0f * sp10.x; + arg1->z = 600.0f * sp10.z; + } + return (s32)arg0; +} From 78ab52081344c2d7893651c592fed6603acaadc8 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Fri, 3 Jan 2025 07:52:10 -0800 Subject: [PATCH 096/178] Matched m462Dll (US); applying some sprite macros (#504) --- config/GMPE01_00/rels/m462Dll/symbols.txt | 180 +-- configure.py | 2 +- src/REL/E3setupDLL/mgselect.c | 6 +- src/REL/m411Dll/main.c | 2 +- src/REL/m414Dll/main.c | 10 +- src/REL/m445Dll/main.c | 6 +- src/REL/m451Dll/m451.c | 4 +- src/REL/m462Dll/main.c | 1662 +++++++++++++++++++++ src/REL/mentDll/main.c | 292 ++-- src/REL/modeseldll/filesel.c | 8 +- src/game/board/battle.c | 14 +- src/game/board/char_wheel.c | 6 +- src/game/board/mg_setup.c | 24 +- src/game/board/pause.c | 32 +- src/game/board/player.c | 10 +- src/game/board/ui.c | 20 +- src/game/board/view.c | 8 +- src/game/thpmain.c | 2 +- 18 files changed, 1975 insertions(+), 313 deletions(-) create mode 100755 src/REL/m462Dll/main.c diff --git a/config/GMPE01_00/rels/m462Dll/symbols.txt b/config/GMPE01_00/rels/m462Dll/symbols.txt index d702b245..0af8810d 100644 --- a/config/GMPE01_00/rels/m462Dll/symbols.txt +++ b/config/GMPE01_00/rels/m462Dll/symbols.txt @@ -34,101 +34,101 @@ fn_1_7D40 = .text:0x00007D40; // type:function size:0x60 fn_1_7DA0 = .text:0x00007DA0; // type:function size:0x3BC _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_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_1B4 = .rodata:0x000001B4; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 scope:local data:float +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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_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_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x20 lbl_1_data_20 = .data:0x00000020; // type:object size:0x10 -lbl_1_data_30 = .data:0x00000030; // type:object size:0x60 +lbl_1_data_30 = .data:0x00000030; // type:object size:0x60 data:float lbl_1_data_90 = .data:0x00000090; // type:object size:0x30 data:float lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x3C lbl_1_data_FC = .data:0x000000FC; // type:object size:0x14 data:float -lbl_1_data_110 = .data:0x00000110; // type:object size:0xB data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0xB scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:float lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:float lbl_1_bss_18 = .bss:0x00000018; // type:object size:0xC data:float diff --git a/configure.py b/configure.py index de9495b7..fc0d2325 100644 --- a/configure.py +++ b/configure.py @@ -1306,7 +1306,7 @@ config.libs = [ Rel( "m462Dll", # Goomba Stomp objects={ - Object(NonMatching, "REL/m462Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m462Dll/main.c"), }, ), Rel( diff --git a/src/REL/E3setupDLL/mgselect.c b/src/REL/E3setupDLL/mgselect.c index d87c662f..3c8bb026 100644 --- a/src/REL/E3setupDLL/mgselect.c +++ b/src/REL/E3setupDLL/mgselect.c @@ -413,8 +413,8 @@ static void UpdateMGPic(omObjData *object) if (object->work[1] != object->work[0]) { temp_r29 = temp_r30->unk_40; - HuSprAttrSet(temp_r29, object->work[1], 4); - HuSprAttrReset(temp_r29, object->work[0], 4); + HuSprAttrSet(temp_r29, object->work[1], HUSPR_ATTR_DISPOFF); + HuSprAttrReset(temp_r29, object->work[0], HUSPR_ATTR_DISPOFF); object->work[1] = object->work[0]; } } @@ -453,7 +453,7 @@ static void CreateMGPic(omObjData *object) HuSprTPLvlSet(temp_r3, index2, 0.7f); index2++; object->work[1] = object->work[0]; - HuSprAttrReset(temp_r3, object->work[1], 4); + HuSprAttrReset(temp_r3, object->work[1], HUSPR_ATTR_DISPOFF); object->func = UpdateMGPic; } diff --git a/src/REL/m411Dll/main.c b/src/REL/m411Dll/main.c index d4a6acef..c99ccbca 100755 --- a/src/REL/m411Dll/main.c +++ b/src/REL/m411Dll/main.c @@ -2255,7 +2255,7 @@ void fn_1_7738(void) temp_r28->unk00 = 20.0f + temp_r30->unk00; temp_r28->unk04 = -20.0f + temp_r30->unk04; m411InlineFunc(temp_r31, temp_r30); - HuSprAttrReset(temp_r31->unk0C, 0, 4); + HuSprAttrReset(temp_r31->unk0C, 0, HUSPR_ATTR_DISPOFF); } temp_r30->unk08 = 50.0f; temp_r28->unk08 = temp_r30->unk08 - 5.0f; diff --git a/src/REL/m414Dll/main.c b/src/REL/m414Dll/main.c index 3341eb5b..8e7bc1f0 100644 --- a/src/REL/m414Dll/main.c +++ b/src/REL/m414Dll/main.c @@ -1005,12 +1005,12 @@ void fn_1_3D48(s32 arg0, s32 arg1) var_r29->user_data = var_r31; var_r31->unk_5C = var_r30; } - HuSprAttrSet(var_r31->unk_2E, (var_r30 * 2) + 2, 4); - HuSprAttrReset(var_r31->unk_2E, (var_r30 * 2) + 3, 4); + HuSprAttrSet(var_r31->unk_2E, (var_r30 * 2) + 2, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r31->unk_2E, (var_r30 * 2) + 3, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrReset(var_r31->unk_2E, (var_r30 * 2) + 2, 4); - HuSprAttrSet(var_r31->unk_2E, (var_r30 * 2) + 3, 4); + HuSprAttrReset(var_r31->unk_2E, (var_r30 * 2) + 2, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r31->unk_2E, (var_r30 * 2) + 3, HUSPR_ATTR_DISPOFF); } } } @@ -2047,7 +2047,7 @@ void fn_1_79A8(void) var_r28 = &lbl_1_bss_F0[var_r30]; var_r27 = HuPrcChildCreate(fn_1_76F4, 8192, 8192, 0, HuPrcCurrentGet()); var_r27->user_data = var_r28; - HuSprAttrReset(var_r28->unk_2C, 0, 4); + HuSprAttrReset(var_r28->unk_2C, 0, HUSPR_ATTR_DISPOFF); } for (var_r29 = 0, var_f27 = 0.0f; var_r29 < 15; var_r29++) { var_f27 += 0.06666667f; diff --git a/src/REL/m445Dll/main.c b/src/REL/m445Dll/main.c index 67dbe9d3..831d1e69 100755 --- a/src/REL/m445Dll/main.c +++ b/src/REL/m445Dll/main.c @@ -1408,7 +1408,7 @@ void fn_1_557C(void) for (i = 0; i < 2; i++) { for (j = 0; j < 5; j++) { - HuSprAttrReset(lbl_1_bss_588[i].unk04, j, 4); + HuSprAttrReset(lbl_1_bss_588[i].unk04, j, HUSPR_ATTR_DISPOFF); } } } @@ -1420,7 +1420,7 @@ void fn_1_55F0(void) for (i = 0; i < 2; i++) { for (j = 0; j < 5; j++) { - HuSprAttrSet(lbl_1_bss_588[i].unk04, j, 4); + HuSprAttrSet(lbl_1_bss_588[i].unk04, j, HUSPR_ATTR_DISPOFF); } } } @@ -1429,7 +1429,7 @@ void fn_1_5664(UnkM445Struct_02 *arg0, s32 arg1) { HuSprBankSet(arg0->unk04, 3, arg1 % 10); HuSprBankSet(arg0->unk04, 4, arg1 / 10); - HuSprAttrReset(arg0->unk04, 4, 4); + HuSprAttrReset(arg0->unk04, 4, HUSPR_ATTR_DISPOFF); } void fn_1_5700(UnkM445Struct_02 *arg0) diff --git a/src/REL/m451Dll/m451.c b/src/REL/m451Dll/m451.c index 05d6adaa..4f55107a 100644 --- a/src/REL/m451Dll/m451.c +++ b/src/REL/m451Dll/m451.c @@ -872,11 +872,11 @@ void fn_1_2A34(Bss348Data *arg0, s32 arg1, s32 arg2) temp_r30->scale.y = temp_r31->scale.y; temp_r30->scale.z = 0.8f * temp_r31->scale.z; if (arg2 == 0) { - HuSprAttrReset(arg0->unkA, 0, 1); + HuSprAttrReset(arg0->unkA, 0, HUSPR_ATTR_NOANIM); HuSprGrpScaleSet(arg0->unkA, 1, 1); } else { - HuSprAttrReset(arg0->unkA, 0, 64); + HuSprAttrReset(arg0->unkA, 0, HUSPR_ATTR_REVERSE); } } diff --git a/src/REL/m462Dll/main.c b/src/REL/m462Dll/main.c new file mode 100755 index 00000000..7efd0602 --- /dev/null +++ b/src/REL/m462Dll/main.c @@ -0,0 +1,1662 @@ +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/frand.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/process.h" +#include "game/sprite.h" +#include "game/wipe.h" + +#include "dolphin.h" +#include "ext_math.h" + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04; + /* 0x06 */ s16 unk06[8]; + /* 0x16 */ s16 unk16[4]; + /* 0x1E */ s16 unk1E; + /* 0x20 */ s32 unk20; + /* 0x24 */ s32 unk24; + /* 0x28 */ s32 unk28; + /* 0x2C */ s32 unk2C; + /* 0x30 */ s32 unk30; + /* 0x34 */ s32 unk34; + /* 0x38 */ char unk38[4]; + /* 0x3C */ s32 unk3C; + /* 0x40 */ char unk40[4]; + /* 0x44 */ s32 unk44; + /* 0x48 */ s32 unk48; + /* 0x4C */ Vec unk4C; + /* 0x58 */ float unk58; + /* 0x5C */ float unk5C; + /* 0x60 */ Vec unk60; + /* 0x6C */ float unk6C; + /* 0x70 */ float unk70; + /* 0x74 */ float unk74; + /* 0x78 */ Vec unk78; + /* 0x84 */ float unk84; + /* 0x88 */ float unk88; + /* 0x8C */ float unk8C; + /* 0x90 */ float unk90; + /* 0x94 */ float unk94; +} StructBss340; // Size 0x98 + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s16 unk04[3]; + /* 0x0A */ char unk0A[2]; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ Vec unk14; + /* 0x20 */ float unk20; + /* 0x24 */ float unk24; + /* 0x28 */ float unk28; + /* 0x2C */ float unk2C; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; + /* 0x38 */ s32 unk38; + /* 0x3C */ s32 unk3C; + /* 0x40 */ float unk40; + /* 0x44 */ float unk44; +} StructBss70; // Size 0x48 + +void fn_1_4A0(void); +float fn_1_14B4(float arg0); +void fn_1_174C(void); +void fn_1_17A0(s32 arg0, s32 arg1); +void fn_1_44D8(void); +void fn_1_4BC4(void); +void fn_1_69C0(void); +void fn_1_7D40(void); +void fn_1_545C(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_594C(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_5DE4(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_7DA0(void); +s32 fn_1_1880(float arg0, float arg1, float arg2, s32 arg3, s32 arg4); + +s16 lbl_1_bss_3EA; +s16 lbl_1_bss_3E8; +s32 lbl_1_bss_3E4; +s32 lbl_1_bss_3E0; +s32 lbl_1_bss_3DC; +s32 lbl_1_bss_3D8; +StructBss340 lbl_1_bss_340[1]; +StructBss70 lbl_1_bss_70[10]; +StructBss70 lbl_1_bss_28; +omObjData* lbl_1_bss_24; +Vec lbl_1_bss_18; +Vec lbl_1_bss_C; +Vec lbl_1_bss_0; + +s32 lbl_1_data_0[] = { 0, 1, 2, 3, 4, 5, 6, 7 }; + +s32 lbl_1_data_20[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 79), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 22) +}; + +Vec lbl_1_data_30[] = { + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f } +}; + +Vec lbl_1_data_90[] = { + { -900.0f, 143.0f, -1020.0f }, + { -677.0f, 143.0f, -1020.0f }, + { 900.0f, 0.0f, -1150.0f }, + { -307.0f, 182.0f, -1575.0f } +}; + +s32 lbl_1_data_C0[][5] = { + { 50, 80, 90, 95, 100 }, + { 5, 55, 85, 95, 100 }, + { 0, 5, 55, 90, 100 } +}; + +float lbl_1_data_FC[] = { 0.3f, 0.5f, 0.7f, 0.9f, 1.0f }; + +void ObjectSetup(void) { + Process* temp_r3; + + temp_r3 = omInitObjMan(50, 0x2000); + omGameSysInit(temp_r3); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 10000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 640, 480); + lbl_1_bss_24 = omAddObjEx(temp_r3, 0x7FDA, 0, 0, -1, omOutViewMulti); + lbl_1_bss_24->work[0] = 1; + CRotM->x = -26.0f; + CRotM->y = 0.0f; + CRotM->z = 0.0f; + CenterM->x = 0.0f; + CenterM->y = 0.0f; + CenterM->z = -295.0f; + CZoomM[0] = 3030.0f; + Hu3DLighInit(); + lbl_1_bss_3EA = Hu3DGLightCreate(10000.0f, 0.0f, 10000.0f, -1.0f, 0.0f, -1.0f, 255, 50, 0); + Hu3DGLightPosAimSet(lbl_1_bss_3EA, -2500.0f, 3535.5f, 2500.0f, 0.0f, 0.0f, 0.0f); + Hu3DGLightInfinitytSet(lbl_1_bss_3EA); + lbl_1_bss_18.x = -2500.0f; + lbl_1_bss_18.y = 3535.5f; + lbl_1_bss_18.z = 2500.0f; + lbl_1_bss_C.x = lbl_1_bss_C.z = 0.0f; + lbl_1_bss_C.y = 1.0f; + lbl_1_bss_0.x = 0.0f; + lbl_1_bss_0.y = 0.0f; + lbl_1_bss_0.z = 0.0f; + Hu3DShadowCreate(30.0f, 20.0f, 10000.0f); + Hu3DShadowTPLvlSet(0.5f); + Hu3DShadowPosSet(&lbl_1_bss_18, &lbl_1_bss_C, &lbl_1_bss_0); + Hu3DBGColorSet(0, 0, 0); + fn_1_4A0(); + HuPrcChildCreate(fn_1_7DA0, 0x1000, 0x2000, 0, HuPrcCurrentGet()); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); +} + +void fn_1_4A0(void) { + float temp_f31; + float temp_f30; + void* var_r27; + StructBss340* temp_r31; + StructBss70* temp_r29; + Process* var_r25; + AnimData* var_r24; + AnimData* spC[4]; + s16 var_r30; + s16 var_r23; + s16 sp8; + s32 i; + s32 j; + + lbl_1_bss_3E0 = 0; + lbl_1_bss_3D8 = 0; + HuAudSndGrpSet(0x2C); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 0), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r27); + lbl_1_bss_3E8 = var_r30; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowMapSet(var_r30); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + i = 0; + temp_r31 = &lbl_1_bss_340[i]; + temp_r31->unk20 = i; + temp_r31->unk24 = i; + temp_r31->unk28 = GWPlayerCfg[i].pad_idx; + temp_r31->unk02 = CharModelCreate(lbl_1_data_0[GWPlayerCfg[i].character], 2); + Hu3DModelLayerSet(temp_r31->unk00, 1); + CharModelLayerSetAll(2); + temp_r31->unk78.x = lbl_1_data_30[GWPlayerCfg[i].character].x; + temp_r31->unk78.y = lbl_1_data_30[GWPlayerCfg[i].character].y; + temp_r31->unk78.z = lbl_1_data_30[GWPlayerCfg[i].character].z; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk78.x, temp_r31->unk78.y, temp_r31->unk78.z); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 1), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r31->unk00 = Hu3DModelCreate(var_r27); + Hu3DModelLayerSet(temp_r31->unk00, 1); + temp_r31->unk60.x = temp_r31->unk60.z = 0.0f; + temp_r31->unk60.y = 180.0f; + temp_r31->unk4C.x = 0.0f; + temp_r31->unk4C.y = 0.0f; + temp_r31->unk4C.z = 0.0f; + temp_r31->unk60.y = fn_1_14B4(temp_r31->unk60.y + 180.0f); + temp_r31->unk94 = temp_r31->unk60.y; + temp_r31->unk84 = 200.0f; + temp_r31->unk88 = 6.75f; + temp_r31->unk8C = 1.0f; + temp_r31->unk90 = 1.0f; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk4C.x, temp_r31->unk4C.y, temp_r31->unk4C.z); + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk60.x, temp_r31->unk60.y, temp_r31->unk60.z); + Hu3DModelShadowSet(temp_r31->unk00); + Hu3DModelHookSet(temp_r31->unk00, "itemhook_c", temp_r31->unk02); + for (j = 0; j < 4; j++) { + temp_r31->unk16[j] = CharModelMotionCreate(lbl_1_data_0[GWPlayerCfg[i].character], lbl_1_data_20[j]); + } + CharModelMotionSet(lbl_1_data_0[GWPlayerCfg[i].character], temp_r31->unk16[0]); + CharModelMotionTimeSet(lbl_1_data_0[GWPlayerCfg[i].character], 60.0f); + CharModelVoiceEnableSet(lbl_1_data_0[GWPlayerCfg[i].character], temp_r31->unk16[2], 0); + for (j = 0; j < 8; j++) { + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 2 + j), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r31->unk06[j] = Hu3DJointMotion(temp_r31->unk00, var_r27); + } + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[0]); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 1.0f); + Hu3DMotionSpeedSet(temp_r31->unk00, 1.0f); + Hu3DModelAttrSet(temp_r31->unk00, HU3D_MOTATTR_LOOP); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 10), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r31->unk04 = Hu3DModelCreate(var_r27); + Hu3DModelLayerSet(temp_r31->unk04, 1); + Hu3DModelAttrSet(temp_r31->unk04, HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(temp_r31->unk04, HU3D_MOTATTR_PAUSE); + CharModelMotionDataClose(lbl_1_data_0[GWPlayerCfg[i].character]); + var_r25 = HuPrcChildCreate(fn_1_69C0, 0x2000, 0x3000, 0, HuPrcCurrentGet()); + var_r25->user_data = temp_r31; + var_r24 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 2), MEMORY_DEFAULT_NUM)); + var_r30 = Hu3DParticleCreate(var_r24, 50); + Hu3DModelPosSet(var_r30, 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(var_r30, 1.0f, 1.0f, 1.0f); + Hu3DModelLayerSet(var_r30, 3); + Hu3DParticleColSet(var_r30, 0xFF, 0xFF, 0xFF); + Hu3DParticleScaleSet(var_r30, 0.0f); + Hu3DParticleHookSet(var_r30, fn_1_545C); + var_r24 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 2), MEMORY_DEFAULT_NUM)); + var_r30 = Hu3DParticleCreate(var_r24, 50); + Hu3DModelPosSet(var_r30, 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(var_r30, 1.0f, 1.0f, 1.0f); + Hu3DModelLayerSet(var_r30, 3); + Hu3DParticleColSet(var_r30, 0xFF, 0xFF, 0xFF); + Hu3DParticleScaleSet(var_r30, 0.0f); + Hu3DParticleHookSet(var_r30, fn_1_594C); + var_r24 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 2), MEMORY_DEFAULT_NUM)); + var_r30 = Hu3DParticleCreate(var_r24, 50); + Hu3DModelPosSet(var_r30, 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(var_r30, 1.0f, 1.0f, 1.0f); + Hu3DModelLayerSet(var_r30, 3); + Hu3DParticleColSet(var_r30, 0xFF, 0xFF, 0xFF); + Hu3DParticleScaleSet(var_r30, 0.0f); + Hu3DParticleHookSet(var_r30, fn_1_5DE4); + HuDataDirClose(DATADIR_EFFECT); + for (i = 0; i < 10; i++) { + temp_r29 = &lbl_1_bss_70[i]; + temp_r29->unk30 = 50.0f; + do { + temp_f31 = 1380.0f * frandf() - 690.0f; + temp_f30 = 1380.0f * frandf() - 690.0f; + } while (fn_1_1880(temp_f31, temp_f30, 50.0f, i, -1) != 0); + temp_r29->unk24 = temp_f31; + temp_r29->unk14.x = temp_f31; + temp_r29->unk14.y = 0.0f; + temp_r29->unk28 = temp_f30; + temp_r29->unk14.z = temp_f30; + } + for (i = 0; i < 10; i++) { + temp_r29 = &lbl_1_bss_70[i]; + if (i == 0) { + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 12), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r27); + var_r23 = var_r30; + } else { + var_r30 = Hu3DModelLink(var_r23); + } + temp_r29->unk00 = var_r30; + temp_r29->unk0C = i; + temp_r29->unk30 = 50.0f; + temp_r29->unk10 = 0; + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelShadowSet(var_r30); + Hu3DModelPosSet(var_r30, temp_r29->unk14.x, temp_r29->unk14.y, temp_r29->unk14.z); + temp_r29->unk20 = 0.0f; + temp_r29->unk34 = 6.75f * lbl_1_data_FC[0]; + for (j = 0; j < 3; j++) { + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 13 + j), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r29->unk04[j] = Hu3DJointMotion(var_r30, var_r27); + } + Hu3DMotionSet(var_r30, temp_r29->unk04[1]); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 11), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r30 = Hu3DModelCreate(var_r27); + sp8 = var_r30; + temp_r29->unk02 = var_r30; + Hu3DModelAttrSet(var_r30, HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(var_r30, 3); + var_r25 = HuPrcChildCreate(fn_1_4BC4, 0x1000, 0x3000, 0, HuPrcCurrentGet()); + var_r25->user_data = temp_r29; + } + for (i = 0; i < 2; i++) { + var_r30 = Hu3DModelLink(var_r23); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 16), MEMORY_DEFAULT_NUM, HEAP_DATA); + Hu3DMotionSet(var_r30, Hu3DJointMotion(var_r30, var_r27)); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + Hu3DModelPosSet(var_r30, lbl_1_data_90[i].x, lbl_1_data_90[i].y, lbl_1_data_90[i].z); + if (i != 0) { + Hu3DMotionTimeSet(var_r30, Hu3DMotionMaxTimeGet(var_r30) / 2.0f); + } + } + var_r30 = Hu3DModelLink(var_r23); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 19), MEMORY_DEFAULT_NUM, HEAP_DATA); + Hu3DMotionSet(var_r30, Hu3DJointMotion(var_r30, var_r27)); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + Hu3DModelPosSet(var_r30, lbl_1_data_90[3].x, lbl_1_data_90[3].y, lbl_1_data_90[3].z); + Hu3DMotionSpeedSet(var_r30, 0.7f); + temp_r29 = &lbl_1_bss_28; + var_r30 = Hu3DModelLink(var_r23); + temp_r29->unk00 = var_r30; + for (j = 0; j < 2; j++) { + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 17 + j), MEMORY_DEFAULT_NUM, HEAP_DATA); + temp_r29->unk04[j] = Hu3DJointMotion(var_r30, var_r27); + } + Hu3DMotionSet(var_r30, temp_r29->unk04[0]); + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(var_r30); + temp_r29->unk14.x = lbl_1_data_90[2].x; + temp_r29->unk14.y = lbl_1_data_90[2].y; + temp_r29->unk14.z = lbl_1_data_90[2].z; + Hu3DModelPosSet(var_r30, temp_r29->unk14.x, temp_r29->unk14.y, temp_r29->unk14.z); + var_r25 = HuPrcChildCreate(fn_1_44D8, 0x1000, 0x2000, 0, HuPrcCurrentGet()); + var_r25->user_data = temp_r29; + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_MGCONST, 44), MEMORY_DEFAULT_NUM, HEAP_DATA); + spC[0] = HuSprAnimRead(var_r27); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_MGCONST, 55), MEMORY_DEFAULT_NUM, HEAP_DATA); + spC[1] = HuSprAnimRead(var_r27); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_MGCONST, 48), MEMORY_DEFAULT_NUM, HEAP_DATA); + spC[2] = HuSprAnimRead(var_r27); + var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_MGCONST, 49), MEMORY_DEFAULT_NUM, HEAP_DATA); + spC[3] = HuSprAnimRead(var_r27); + lbl_1_bss_3DC = HuSprGrpCreate(6); + var_r30 = HuSprCreate(spC[0], 0x4000, 0); + HuSprGrpMemberSet(lbl_1_bss_3DC, 0, var_r30); + HuSprPosSet(lbl_1_bss_3DC, 0, 0.0f, 0.0f); + HuSprTPLvlSet(lbl_1_bss_3DC, 0, 0.5f); + HuSprColorSet(lbl_1_bss_3DC, 0, 0, 0, 0); + var_r30 = HuSprCreate(spC[1], 0x4000, 0); + HuSprGrpMemberSet(lbl_1_bss_3DC, 1, var_r30); + HuSprPosSet(lbl_1_bss_3DC, 1, -19.0f, -9.0f); + var_r30 = HuSprCreate(spC[2], 0x4000, 0); + HuSprGrpMemberSet(lbl_1_bss_3DC, 2, var_r30); + HuSprPosSet(lbl_1_bss_3DC, 2, 20.0f, -8.0f); + var_r30 = HuSprCreate(spC[2], 0x4000, 0); + HuSprGrpMemberSet(lbl_1_bss_3DC, 3, var_r30); + HuSprPosSet(lbl_1_bss_3DC, 3, 2.0f, -8.0f); + var_r30 = HuSprCreate(spC[3], 0x4000, 0); + HuSprGrpMemberSet(lbl_1_bss_3DC, 4, var_r30); + HuSprPosSet(lbl_1_bss_3DC, 4, 20.0f, 8.0f); + var_r30 = HuSprCreate(spC[3], 0x4000, 0); + HuSprGrpMemberSet(lbl_1_bss_3DC, 5, var_r30); + HuSprPosSet(lbl_1_bss_3DC, 5, 2.0f, 8.0f); + HuSprGrpPosSet(lbl_1_bss_3DC, 511.0f, 61.0f); + fn_1_17A0(lbl_1_bss_3D8, 0); + fn_1_17A0(GWMGRecordGet(14), 1); + fn_1_174C(); + HuPrcChildCreate(fn_1_7D40, 0x1000, 0x1000, 0, HuPrcCurrentGet()); +} + +float fn_1_14B4(float arg0) { + while (arg0 >= 360.0f || arg0 < 0.0f) { + if (arg0 >= 360.0f) { + arg0 -= 360.0f; + } + if (arg0 < 0.0f) { + arg0 += 360.0f; + } + } + return arg0; +} + +float fn_1_1534(float arg0, float arg1) { + float var_f31; + + if (arg0 > 750.0f - arg1) { + var_f31 = 750.0f; + } else if (arg0 < -(750.0f - arg1)) { + var_f31 = 750.0f; + } else { + var_f31 = 750.0f; + } + return var_f31; +} + +float fn_1_15B4(float arg0, float arg1) { + return fn_1_1534(arg0, arg1); +} + +void fn_1_1634(void) { + float var_f31; + float temp_f30; + s32 i; + + var_f31 = 0.0f; + while (TRUE) { + var_f31 += 16.0f; + temp_f30 = 1.0 + 0.2f * sind(var_f31); + for (i = 0; i < 3; i++) { + HuSprScaleSet(lbl_1_bss_3DC, i + 1, temp_f30, temp_f30); + } + HuPrcVSleep(); + } +} + +void fn_1_16F8(void) { + s32 i; + + for (i = 0; i < 6; i++) { + HuSprAttrReset(lbl_1_bss_3DC, i, HUSPR_ATTR_DISPOFF); + } +} + +void fn_1_174C(void) { + s32 i; + + for (i = 0; i < 6; i++) { + HuSprAttrSet(lbl_1_bss_3DC, i, HUSPR_ATTR_DISPOFF); + } +} + +void fn_1_17A0(s32 arg0, s32 arg1) { + s32 var_r31; + + if (arg1 != 0) { + var_r31 = 2; + } else { + var_r31 = 4; + } + HuSprBankSet(lbl_1_bss_3DC, var_r31, arg0 % 10); + HuSprBankSet(lbl_1_bss_3DC, var_r31 + 1, arg0 / 10); + HuSprAttrReset(lbl_1_bss_3DC, var_r31 + 1, HUSPR_ATTR_DISPOFF); +} + +s32 fn_1_1880(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { + Vec sp34; + Vec sp28; + Vec sp1C; + s32 i; + StructBss70* temp_r30; + StructBss340* var_r29; + + if (arg3 > 10) { + arg3 = 10; + } + HuSetVecF(&sp34, arg0, 0.0, arg1); + for (i = 0; i < arg3; i++) { + if (arg4 == i) { + continue; + } + temp_r30 = &lbl_1_bss_70[i]; + HuSetVecF(&sp28, temp_r30->unk14.x, 0.0, temp_r30->unk14.z); + HuSubVecF(&sp1C, &sp34, &sp28); + if (VECMagXZ(&sp1C) < temp_r30->unk30 + arg2) { + break; + } + } + if (i < arg3) { + return 1; + } + var_r29 = &lbl_1_bss_340[0]; + HuSetVecF(&sp28, var_r29->unk4C.x, 0.0, var_r29->unk4C.z); + HuSubVecF(&sp1C, &sp34, &sp28); + if (VECMagXZ(&sp1C) < var_r29->unk84 + arg2) { + return 1; + } + return 0; +} + +s32 fn_1_1BD4(StructBss70* arg0) { + float var_f31; + float var_f30; + s32 var_r31; + + var_r31 = 0; + var_f31 = fn_1_1534(arg0->unk14.z, arg0->unk30); + var_f30 = fn_1_1534(arg0->unk14.x, arg0->unk30); + if (arg0->unk14.x > var_f31 - arg0->unk30) { + var_r31 = 1; + arg0->unk14.x = var_f31 - arg0->unk30; + } + if (arg0->unk14.x < -(var_f31 - arg0->unk30)) { + var_r31 = 1; + arg0->unk14.x = -(var_f31 - arg0->unk30); + } + if (arg0->unk14.z > var_f30 - arg0->unk30) { + var_r31 = 1; + arg0->unk14.z = var_f30 - arg0->unk30; + } + if (arg0->unk14.z < -(var_f30 - arg0->unk30)) { + var_r31 = 1; + arg0->unk14.z = -(var_f30 - arg0->unk30); + } + return var_r31; +} + +void fn_1_1E10(StructBss70* arg0) { + Vec sp104; + Vec spF8; + Vec spEC; + float temp_f21; + float temp_f20; + float var_f19; + float var_f26; + float spC4; + float spC0; + float spBC; + float spB8; + float spB4; + float spB0; + float spAC; + float spA0; + StructBss70* var_r30; + StructBss70* temp_r28; + s32 temp_r19; + s32 var_r21; + s32 i; + + if (fn_1_1880(arg0->unk14.x, arg0->unk14.z, 50.0f, 10, arg0->unk0C) == 0) { + return; + } + var_f19 = fn_1_14B4(atan2d(arg0->unk14.x - arg0->unk24, arg0->unk14.z - arg0->unk28)); + temp_f21 = spB8 = arg0->unk24; + temp_f20 = spB4 = arg0->unk28; + spAC = 1.0f; + for (var_r21 = 1.0f + arg0->unk34 / spAC; var_r21 != 0; var_r21--) { + temp_f21 += spAC * sind(var_f19); + temp_f20 += spAC * cosd(var_f19); + HuSetVecF(&sp104, temp_f21, arg0->unk14.y, temp_f20); + for (i = 0; i < 10; i++) { + if (i == arg0->unk0C) { + continue; + } + var_r30 = &lbl_1_bss_70[i]; + HuSetVecF(&spF8, var_r30->unk14.x, var_r30->unk14.y, var_r30->unk14.z); + HuSubVecF(&spEC, &sp104, &spF8); + if (VECMagXYZ(&spEC) < arg0->unk30 + var_r30->unk30) { + break; + } + } + if (i < 10) { + break; + } + if (fn_1_1BD4(arg0)) { + goto block_end; + } + spB8 = temp_f21; + spB4 = temp_f20; + } + var_f19 = fn_1_14B4(atan2d(arg0->unk14.x - arg0->unk24, arg0->unk14.z - arg0->unk28)); + var_f26 = fn_1_14B4(atan2d(var_r30->unk14.x - arg0->unk24, var_r30->unk14.z - arg0->unk28)); + spC0 = var_f19 - var_f26; + if (spC0 > 0.0f) { + spBC = -0.5f; + } else { + spBC = 0.5f; + } + if (ABS_INV(var_f19 - var_f26) > 180.0f) { + spBC = -spBC; + } + var_f26 = fn_1_14B4(atan2d(arg0->unk24 - var_r30->unk14.x, arg0->unk28 - var_r30->unk14.z)); + spB0 = 0.8f * arg0->unk34; + temp_r19 = var_r30->unk0C; + spC4 = arg0->unk30 + var_r30->unk30 + 1.0f; + while (TRUE) { + temp_f21 = var_r30->unk14.x + spC4 * sind(var_f26); + temp_f20 = var_r30->unk14.z + spC4 * cosd(var_f26); + HuSetVecF(&sp104, temp_f21, 0.0, temp_f20); + for (i = 0; i < 10; i++) { + if (i == arg0->unk0C || i == temp_r19) { + continue; + } + temp_r28 = &lbl_1_bss_70[i]; + HuSetVecF(&spF8, temp_r28->unk14.x, 0.0, temp_r28->unk14.z); + HuSubVecF(&spEC, &sp104, &spF8); + if (VECMagXZ(&spEC) < arg0->unk30 + temp_r28->unk30) { + break; + } + } + if (i < 10 || fn_1_1BD4(arg0)) { + break; + } + spB8 = temp_f21; + spB4 = temp_f20; + HuSetVecF(&sp104, arg0->unk24, 0.0, arg0->unk28); + HuSetVecF(&spF8, temp_f21, 0.0, temp_f20); + HuSubVecF(&spEC, &sp104, &spF8); + if (VECMagXZ(&spEC) > spB0) { + break; + } + var_f26 += spBC; + } +block_end: + arg0->unk14.x = spB8; + arg0->unk14.z = spB4; +} + +void fn_1_2FDC(StructBss70* arg0) { + Vec spF0; + Vec spE4; + Vec spD8; + s32 i; + StructBss340* var_r30; + StructBss70* temp_r25; + float var_f31; + s32 var_r23; + s32 var_r20; + s32 spAC[2]; + + var_r30 = &lbl_1_bss_340[0]; + arg0->unk24 = arg0->unk14.x; + arg0->unk28 = arg0->unk14.z; + switch (arg0->unk38) { + case 0: + var_r20 = 0; + HuSetVecF(&spF0, var_r30->unk4C.x, 0.0, var_r30->unk4C.z); + HuSetVecF(&spE4, arg0->unk14.x, 0.0, arg0->unk14.z); + HuSubVecF(&spD8, &spF0, &spE4); + if (VECMagXZ(&spD8) < var_r30->unk84 + arg0->unk30 + 100.0f) { + var_r20 = 80; + } + if (frandmod(100) < var_r20) { + var_f31 = fn_1_14B4(atan2d(arg0->unk14.x - var_r30->unk4C.x, arg0->unk14.z - var_r30->unk4C.z)); + var_f31 += 30.0f * frandf() - 60.0f; + var_f31 = fn_1_14B4(var_f31); + arg0->unk20 = var_f31; + } else if (ABS_INV(arg0->unk14.x) > 550.0f) { + var_f31 = fn_1_14B4(180.0 + atan2d(arg0->unk14.x, 0.0)); + var_f31 += 10.0f * frandf() - 20.0f; + var_f31 = fn_1_14B4(var_f31); + arg0->unk20 = var_f31; + } else if (frandmod(3) != 0) { + for (i = 0, var_r23 = 0; i < 10; i++) { + if (i == arg0->unk0C) { + continue; + } + temp_r25 = &lbl_1_bss_70[i]; + HuSetVecF(&spF0, temp_r25->unk14.x, 0.0, temp_r25->unk14.z); + HuSetVecF(&spE4, arg0->unk14.x, 0.0, arg0->unk14.z); + HuSubVecF(&spD8, &spF0, &spE4); + if (VECMagXZ(&spD8) < 150.0f) { + spAC[var_r23++] = arg0->unk0C; + if (var_r23 >= 2) { + break; + } + } + } + if (var_r23 == 1 && ABS_INV(var_r30->unk4C.x) < 650.0f) { + temp_r25 = &lbl_1_bss_70[spAC[0]]; + var_f31 = fn_1_14B4(atan2d(arg0->unk40 - arg0->unk14.x, arg0->unk44 - arg0->unk14.z)); + } else { + var_f31 = fn_1_14B4(180.0 + atan2d(arg0->unk14.x, arg0->unk14.z)); + var_f31 += 30.0f * frandf() - 60.0f; + var_f31 = fn_1_14B4(var_f31); + arg0->unk20 = var_f31; + } + } else { + var_f31 = 360.0f * frandf(); + arg0->unk20 = var_f31; + } + arg0->unk40 = arg0->unk14.x + 100.0 * sind(var_f31); + arg0->unk44 = arg0->unk14.z + 100.0 * cosd(var_f31); + arg0->unk38 = 10; + arg0->unk3C = 60; + break; + case 10: + if (arg0->unk3C-- == 0) { + arg0->unk38 = 0; + } + if (arg0->unk3C < 50) { + HuSetVecF(&spF0, var_r30->unk4C.x, 0.0, var_r30->unk4C.z); + HuSetVecF(&spE4, arg0->unk14.x, 0.0, arg0->unk14.z); + HuSubVecF(&spD8, &spF0, &spE4); + if (VECMagXZ(&spD8) < var_r30->unk84 + arg0->unk30 + 100.0f) { + arg0->unk38 = 0; + } + } + HuSetVecF(&spF0, arg0->unk40, 0.0, arg0->unk44); + HuSetVecF(&spE4, arg0->unk14.x, 0.0, arg0->unk14.z); + HuSubVecF(&spD8, &spF0, &spE4); + if (VECMagXZ(&spD8) > 10.0f) { + var_f31 = fn_1_14B4(atan2d(arg0->unk40 - arg0->unk14.x, arg0->unk44 - arg0->unk14.z)); + arg0->unk14.x += arg0->unk34 * sind(var_f31); + arg0->unk14.z += arg0->unk34 * cosd(var_f31); + if (fn_1_1BD4(arg0)) { + } + if (fn_1_1880(arg0->unk14.x, arg0->unk14.z, 50.0f, 10, arg0->unk0C) != 0) { + arg0->unk14.x = arg0->unk24; + arg0->unk14.z = arg0->unk28; + arg0->unk38 = 100; + arg0->unk3C = 0; + } + } else { + arg0->unk38 = 100; + arg0->unk3C = 0; + } + break; + case 100: + if (arg0->unk3C == 0) { + arg0->unk38 = 0; + } + arg0->unk3C--; + break; + } +} + +void fn_1_44D8(void) { + StructBss70* temp_r31; + float temp_f30; + float var_f31; + s32 i; + + temp_r31 = HuPrcCurrentGet()->user_data; + temp_f30 = temp_r31->unk14.x; + while (TRUE) { + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04[0]); + for (i = 0, var_f31 = 0.0f; i < 60; i++) { + temp_r31->unk14.x = temp_f30 - 300.0 * sind(var_f31); + var_f31 += 1.5f; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14.x, temp_r31->unk14.y, temp_r31->unk14.z); + HuPrcVSleep(); + } + HuPrcSleep(30); + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04[1]); + for (i = 0, var_f31 = 90.0f; i < 60; i++) { + temp_r31->unk14.x = temp_f30 - 300.0 * sind(var_f31); + var_f31 -= 1.5f; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14.x, temp_r31->unk14.y, temp_r31->unk14.z); + HuPrcVSleep(); + } + HuPrcSleep(30); + } +} + +void fn_1_4644(StructBss70* arg0) { + float temp_f26; + float temp_f25; + float var_f27; + float var_f24; + float temp_f23; + s32 i; + + do { + temp_f26 = 5.0f; + if (frandmod(2) != 0) { + arg0->unk14.x = -700.0f + temp_f26; + arg0->unk20 = 90.0f; + var_f27 = -700.0f + temp_f26 - 500.0f; + var_f24 = 8.333333f; + } else { + arg0->unk14.x = 700.0f - temp_f26; + arg0->unk20 = 270.0f; + var_f27 = 700.0f - temp_f26 + 500.0f; + var_f24 = -8.333333f; + } + arg0->unk14.y = 0.0f; + temp_f23 = 550.0f; + temp_f25 = temp_f23 * frandf() * 2.0f - temp_f23; + arg0->unk14.z = temp_f25; + arg0->unk24 = arg0->unk14.x; + arg0->unk28 = arg0->unk14.z; + } while (fn_1_1880(arg0->unk14.x, arg0->unk14.z, 50.0f, 10, arg0->unk0C) != 0); + Hu3DMotionSet(arg0->unk00, arg0->unk04[2]); + Hu3DModelRotSet(arg0->unk00, 0.0f, arg0->unk20, 0.0f); + for (i = 0; i < 60; i++) { + var_f27 += var_f24; + Hu3DModelPosSet(arg0->unk00, var_f27, 0.0f, temp_f25); + if (lbl_1_bss_3E4 >= 4) { + break; + } + HuPrcVSleep(); + } + if (lbl_1_bss_3E4 >= 4) { + arg0->unk14.x = var_f27; + arg0->unk14.z = temp_f25; + } + Hu3DModelPosSet(arg0->unk00, arg0->unk14.x, 0.0f, arg0->unk14.z); +} + +void fn_1_4BC4(void) { + s32 spC; + float sp8; + float temp_f23; + float var_f27; + float var_f28; + float var_f30; + float var_f29; + StructBss70* temp_r31; + StructBss340* var_r28; + StructBss340* var_r30; + s32 temp_r27; + s32 temp_r24; + s32 var_r26; + s32 var_r25; + s32 i; + + temp_r31 = HuPrcCurrentGet()->user_data; + temp_r31->unk10 = 0; +loop_1: + temp_r27 = lbl_1_bss_3E0 / 60; + var_r25 = 0; + if (temp_r27 > 10) { + var_r25 = 1; + } + if (temp_r27 > 20) { + var_r25 = 2; + } + temp_r27 = frandmod(100); + for (i = 0; i < 5; i++) { + if (lbl_1_data_C0[var_r25][i] > temp_r27) { + break; + } + } + if (i > 4) { + while (TRUE); + } + temp_r31->unk34 = 6.75f * lbl_1_data_FC[i]; + temp_r31->unk38 = 0; + while (TRUE) { + switch (temp_r31->unk10) { + case 2: + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04[1]); + fn_1_4644(temp_r31); + temp_r31->unk10 = 0; + if (FALSE) { + default: + fn_1_2FDC(temp_r31); + } + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14.x, temp_r31->unk14.y, temp_r31->unk14.z); + Hu3DModelRotSet(temp_r31->unk00, 0.0f, temp_r31->unk20, 0.0f); + if (lbl_1_bss_3E4 < 4) { + HuPrcVSleep(); + break; + } + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04[0]); + HuPrcSleep(60); + var_r28 = &lbl_1_bss_340[0]; + if (ABS_INV(var_r28->unk4C.z - temp_r31->unk14.z) > 250.0f) { + if (temp_r31->unk14.x > 0.0f) { + var_f30 = 10.0f; + } else { + var_f30 = -10.0f; + } + } else { + if (var_r28->unk4C.x > temp_r31->unk14.x) { + var_f30 = -10.0f; + } else { + var_f30 = 10.0f; + } + } + if (var_f30 > 0.0f) { + Hu3DModelRotSet(temp_r31->unk00, 0.0f, 90.0f, 0.0f); + } else { + Hu3DModelRotSet(temp_r31->unk00, 0.0f, 270.0f, 0.0f); + } + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04[1]); + while (ABS_INV(temp_r31->unk14.x) < 1500.0f) { + temp_r31->unk14.x += var_f30; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14.x, temp_r31->unk14.y, temp_r31->unk14.z); + HuPrcVSleep(); + } + while (TRUE) { + HuPrcVSleep(); + } + break; + case 3: + lbl_1_bss_3D8++; + if (lbl_1_bss_3D8 > 99) { + lbl_1_bss_3D8 = 99; + } + temp_r24 = lbl_1_bss_3D8; + var_r26 = 4; + HuSprBankSet(lbl_1_bss_3DC, var_r26, temp_r24 % 10); + HuSprBankSet(lbl_1_bss_3DC, var_r26 + 1, temp_r24 / 10); + HuSprAttrReset(lbl_1_bss_3DC, var_r26 + 1, HUSPR_ATTR_DISPOFF); + omVibrate(0, 12, 6, 6); + HuAudFXPlay(0x45); + HuAudFXPlay(0x5EE); + var_r30 = &lbl_1_bss_340[0]; + temp_r31->unk2C = fn_1_14B4(atan2d(temp_r31->unk14.x - var_r30->unk4C.x, temp_r31->unk14.z - var_r30->unk4C.z)); + Hu3DMotionTimeSet(temp_r31->unk02, 0.0f); + Hu3DModelAttrReset(temp_r31->unk02, HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(temp_r31->unk02, var_r30->unk4C.x + var_r30->unk84 * sind(temp_r31->unk2C), temp_r31->unk14.y + 50.0f, var_r30->unk4C.z + var_r30->unk84 * cosd(temp_r31->unk2C)); + i = 0; + var_f29 = temp_r31->unk14.x; + var_f28 = temp_r31->unk14.z; + while (TRUE) { + var_f29 += 30.0 * sind(var_r30->unk94); + var_f28 += 30.0 * cosd(var_r30->unk94); + if (ABS_INV(var_f29) > 1500.0f || var_f28 > 1300.0f || var_f28 < -2000.0f) { + break; + } + i++; + } + sp8 = temp_r31->unk14.y; + var_f27 = 0.0f; + temp_f23 = 180.0f / i; + spC = 0; + for (; i != 0; i--) { + temp_r31->unk14.x += 30.0 * sind(temp_r31->unk2C); + temp_r31->unk14.y = 400.0 * sind(var_f27); + temp_r31->unk14.z += 30.0 * cosd(temp_r31->unk2C); + var_f27 += temp_f23; + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14.x, temp_r31->unk14.y, temp_r31->unk14.z); + HuPrcVSleep(); + } + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14.x, -1000.0f, temp_r31->unk14.z); + temp_r31->unk10 = 2; + Hu3DModelAttrSet(temp_r31->unk02, HU3D_ATTR_DISPOFF); + goto loop_1; + } + } +} + +void fn_1_545C(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + StructBss340* temp_r28; + float var_f30; + float var_f31; + float temp_f29; + s32 var_r27; + s16 i; + s16 j; + s16 k; + + if (particle->unk_34 == 0) { + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + var_r31->unk14.x = var_r31->unk2C = 0.0f; + } + } + var_r31 = particle->unk_48; + for (i = 0; i < 1; i++) { + temp_r28 = &lbl_1_bss_340[i]; + if (!(temp_r28->unk30 & 1)) { + continue; + } + for (j = 0, var_f30 = 0.0f; j < 16; j++, var_f30 += 22.5f) { + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk14.x == 0.0f) { + break; + } + } + if (k == particle->unk_30) { + break; + } + var_f31 = var_f30; + temp_f29 = 125.0f + 70.0f * frandf(); + var_r31->unk34.x = temp_r28->unk6C + temp_f29 * sind(var_f31); + var_r31->unk34.y = temp_r28->unk70 + 50.0f * frandf(); + var_r31->unk34.z = temp_r28->unk74 + temp_f29 * cosd(var_f31); + var_r31->unk08.x = 5.0 * sind(var_f31); + var_r31->unk08.y = 9.0f + 2.0f * frandf(); + var_r31->unk08.z = 5.0 * cosd(var_f31); + var_r31->unk14.x = 30.0f; + var_r31->unk2C = 80.0f + 20.0f * frandf(); + var_r31->unk14.y = 15.0f; + var_r31->unk40.a = 0xC8; + var_r31->unk14.z = 17.0f; + } + temp_r28->unk30 &= ~1; + } + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk14.x == 0.0f) { + continue; + } + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + var_r31->unk08.x *= 0.95f; + var_r31->unk08.z *= 0.95f; + if (var_r31->unk08.y > 0.1f) { + var_r31->unk08.y -= 0.2f; + } + if (var_r31->unk08.y < 0.0f) { + var_r31->unk08.y = 0.0f; + } + var_r31->unk2C += var_r31->unk14.y; + if (var_r31->unk14.y > 2.0f) { + var_r31->unk14.y -= 1.5f; + } + var_r27 = var_r31->unk40.a; + var_r27 -= var_r31->unk14.z; + if (var_r31->unk14.z > 3.0f) { + var_r31->unk14.z -= 1.0f; + } + if (var_r27 < 0) { + var_r27 = 0; + var_r31->unk14.x = 0.0f; + } + var_r31->unk40.a = var_r27; + if (var_r31->unk14.x == 0.0f) { + var_r31->unk2C = 0.0f; + } + } +} + +void fn_1_594C(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + StructBss340* temp_r28; + float temp_f31; + float temp_f30; + s32 var_r27; + s16 i; + s16 j; + s16 k; + + if (particle->unk_34 == 0) { + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + var_r31->unk14.x = var_r31->unk2C = 0.0f; + var_r31->unk20 = -1.0f; + } + } + var_r31 = particle->unk_48; + for (i = 0; i < 1; i++) { + temp_r28 = &lbl_1_bss_340[i]; + if (!(temp_r28->unk30 & 2)) { + continue; + } + for (j = 0; j < 10; j++) { + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk14.x == 0.0f) { + break; + } + } + if (k == particle->unk_30) { + break; + } + temp_f31 = 400.0f * frandf() - 200.0f; + temp_f30 = 400.0f * frandf() - 200.0f; + var_r31->unk34.x = temp_r28->unk6C + temp_f31; + var_r31->unk34.y = temp_r28->unk70 + 50.0f; + var_r31->unk34.z = temp_r28->unk74 + temp_f30; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 7.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20 = frandmod(10); + var_r31->unk24 = 0.0f; + var_r31->unk14.x = 100.0f; + var_r31->unk2C = 0.0f; + var_r31->unk14.y = 7.0f; + var_r31->unk40.a = 0xFF; + var_r31->unk14.z = 10.0f; + } + temp_r28->unk30 &= ~2; + } + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk20 > 0.0f) { + var_r31->unk20 -= 1.0f; + } + if (var_r31->unk20 == 0.0f) { + var_r31->unk24 = 1.0f; + var_r31->unk2C = 100.0f + 100.0f * frandf(); + var_r31->unk20 = -1.0f; + } + if (var_r31->unk14.x == 0.0f || var_r31->unk24 == 0.0f) { + continue; + } + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + if (var_r31->unk08.y > 1.0f) { + var_r31->unk08.y -= 0.3f; + } + var_r31->unk2C += var_r31->unk14.y; + if (var_r31->unk14.y > 2.0f) { + var_r31->unk14.y -= 0.4f; + } + var_r27 = var_r31->unk40.a; + var_r27 -= var_r31->unk14.z; + if (var_r31->unk14.z > 3.0f) { + var_r31->unk14.z -= 1.0f; + } + if (var_r27 < 0) { + var_r27 = 0; + var_r31->unk14.x = 0.0f; + } + var_r31->unk40.a = var_r27; + if (var_r31->unk14.x == 0.0f) { + var_r31->unk2C = 0.0f; + } + } +} + +void fn_1_5DE4(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + StructBss340* temp_r28; + float temp_f31; + float temp_f30; + s32 var_r27; + s16 i; + s16 j; + s16 k; + + if (particle->unk_34 == 0) { + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + var_r31->unk14.x = var_r31->unk2C = 0.0f; + var_r31->unk20 = -1.0f; + } + } + var_r31 = particle->unk_48; + for (i = 0; i < 1; i++) { + temp_r28 = &lbl_1_bss_340[i]; + if (!(temp_r28->unk30 & 4)) { + continue; + } + for (j = 0; j < 10; j++) { + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk14.x == 0.0f) { + break; + } + } + if (k == particle->unk_30) { + break; + } + temp_f31 = 400.0f * frandf() - 200.0f; + temp_f30 = 400.0f * frandf() - 200.0f; + var_r31->unk34.x = temp_r28->unk6C + temp_f31; + var_r31->unk34.y = temp_r28->unk70 + 50.0f; + var_r31->unk34.z = temp_r28->unk74 + temp_f30; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 7.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20 = frandmod(10); + var_r31->unk24 = 0.0f; + var_r31->unk14.x = 100.0f; + var_r31->unk2C = 0.0f; + var_r31->unk14.y = 7.0f; + var_r31->unk40.a = 0xFF; + var_r31->unk14.z = 10.0f; + } + temp_r28->unk30 &= ~4; + } + var_r31 = particle->unk_48; + for (k = 0; k < particle->unk_30; k++, var_r31++) { + if (var_r31->unk20 > 0.0f) { + var_r31->unk20 -= 1.0f; + } + if (var_r31->unk20 == 0.0f) { + var_r31->unk24 = 1.0f; + var_r31->unk2C = 100.0f + 100.0f * frandf(); + var_r31->unk20 = -1.0f; + } + if (var_r31->unk14.x == 0.0f || var_r31->unk24 == 0.0f) { + continue; + } + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + if (var_r31->unk08.y > 1.0f) { + var_r31->unk08.y -= 0.3f; + } + var_r31->unk2C += var_r31->unk14.y; + if (var_r31->unk14.y > 2.0f) { + var_r31->unk14.y -= 0.4f; + } + var_r27 = var_r31->unk40.a; + var_r27 -= var_r31->unk14.z; + if (var_r31->unk14.z > 3.0f) { + var_r31->unk14.z -= 1.0f; + } + if (var_r27 < 0) { + var_r27 = 0; + var_r31->unk14.x = 0.0f; + } + var_r31->unk40.a = var_r27; + if (var_r31->unk14.x == 0.0f) { + var_r31->unk2C = 0.0f; + } + } +} + +s8 fn_1_627C(s32 arg0, s32 arg1) { + StructBss340* temp_r31; + s8 var_r30; + + temp_r31 = &lbl_1_bss_340[arg0]; + (arg1 != 0) ? (var_r30 = HuPadStkY[temp_r31->unk28]) : (var_r30 = HuPadStkX[temp_r31->unk28]); + return var_r30; +} + +u8 fn_1_62F0(s32 arg0, s32 arg1) { + StructBss340* temp_r31; + s8 var_r30; + + temp_r31 = &lbl_1_bss_340[arg0]; + (arg1 != 0) ? (var_r30 = HuPadTrigR[temp_r31->unk28]) : (var_r30 = HuPadTrigL[temp_r31->unk28]); + return var_r30; +} + +u16 fn_1_636C(s32 arg0) { + StructBss340* temp_r31; + u16 var_r30; + + temp_r31 = &lbl_1_bss_340[arg0]; + var_r30 = HuPadBtnDown[temp_r31->unk28]; + return var_r30; +} + +u16 fn_1_63B4(s32 arg0) { + StructBss340* temp_r31; + u16 var_r30; + + temp_r31 = &lbl_1_bss_340[arg0]; + var_r30 = HuPadBtn[temp_r31->unk28]; + return var_r30; +} + +s32 fn_1_63FC(StructBss340* arg0) { + Vec sp24; + Vec sp18; + Vec spC; + StructBss70* temp_r31; + s32 var_r28; + s32 i; + + var_r28 = -1; + HuSetVecF(&sp24, arg0->unk4C.x, arg0->unk4C.y, arg0->unk4C.z); + for (i = 0; i < 10; i++) { + temp_r31 = &lbl_1_bss_70[i]; + HuSetVecF(&sp18, temp_r31->unk14.x, temp_r31->unk14.y, temp_r31->unk14.z); + HuSubVecF(&spC, &sp24, &sp18); + if (VECMagXYZ(&spC) < arg0->unk84 + temp_r31->unk30) { + temp_r31->unk10 = 3; + var_r28 = i; + } + } + return var_r28; +} + +s32 fn_1_65D0(StructBss340* arg0) { + float var_f31; + float var_f30; + s32 sp8; + + var_f31 = fn_1_1534(arg0->unk4C.z, arg0->unk84); + var_f30 = fn_1_1534(arg0->unk4C.x, arg0->unk84); + if (arg0->unk4C.x > var_f31 - arg0->unk84) { + arg0->unk4C.x = var_f31 - arg0->unk84; + } + if (arg0->unk4C.x < -(var_f31 - arg0->unk84)) { + arg0->unk4C.x = -(var_f31 - arg0->unk84); + } + if (arg0->unk4C.z > var_f30 - arg0->unk84) { + arg0->unk4C.z = var_f30 - arg0->unk84; + } + if (arg0->unk4C.z < -(var_f30 - arg0->unk84)) { + arg0->unk4C.z = -(var_f30 - arg0->unk84); + } + return sp8; +} + +float fn_1_67F0(float arg0, float arg1, float arg2) { + float var_f30; + float var_f31; + + var_f31 = fmod(arg1 - arg0, 360.0); + if (0.0f > var_f31) { + var_f31 += 360.0f; + } + if (180.0f < var_f31) { + var_f31 -= 360.0f; + } + var_f30 = fmod(arg0 + var_f31 * arg2, 360.0); + if (0.0f > var_f30) { + var_f30 += 360.0f; + } + return var_f30; +} + +void fn_1_68F4(void) { + StructBss340* temp_r31; + s32 i; + + temp_r31 = HuPrcCurrentGet()->user_data; + for (i = 0; i < 20; i++) { + temp_r31->unk78.z -= 4.0f; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk78.x, temp_r31->unk78.y, temp_r31->unk78.z); + HuPrcVSleep(); + } + HuPrcKill(HuPrcCurrentGet()); + while (TRUE) { + HuPrcVSleep(); + } +} + +s32 fn_1_6964(StructBss340* arg0) { + return (arg0->unk2C == 4 || arg0->unk2C == 5 || arg0->unk2C == 6); +} + +void fn_1_69C0(void) { + float var_f23; + float var_f27; + float var_f26; + StructBss340* temp_r31; + s16 var_r29; + s32 var_r24; + s32 var_r23; + Process* var_r22; + s32 var_r26; + s32 var_r25; + s32 var_r28; + s32 spA4; + + temp_r31 = HuPrcCurrentGet()->user_data; + temp_r31->unk2C = 0; + temp_r31->unk48 = 0; + temp_r31->unk30 = 0; + while (lbl_1_bss_3E4 == 0) { + HuPrcVSleep(); + } + lbl_1_bss_3E4 = 2; + while (lbl_1_bss_3E4 == 2) { + HuPrcVSleep(); + } + var_r29 = -1; + while (TRUE) { + temp_r31->unk58 = temp_r31->unk4C.x; + temp_r31->unk5C = temp_r31->unk4C.z; + if (temp_r31->unk16[4] != 0) { + break; + } + switch (temp_r31->unk2C) { + case 8: + if (temp_r31->unk3C != 0) { + temp_r31->unk3C--; + } else { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + temp_r31->unk2C = 0; + } + break; + case 4: + omVibrate(temp_r31->unk20, 12, 4, 2); + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[4], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + temp_r31->unk3C = 90; + temp_r31->unk44 = 30; + temp_r31->unk2C = 5; + break; + case 5: + if (temp_r31->unk44-- == 0) { + temp_r31->unk6C = temp_r31->unk4C.x; + temp_r31->unk70 = temp_r31->unk4C.y; + temp_r31->unk74 = temp_r31->unk4C.z; + temp_r31->unk30 |= 1; + } + if (temp_r31->unk3C != 0) { + temp_r31->unk3C--; + } else { + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[5]); + Hu3DModelAttrReset(temp_r31->unk00, HU3D_MOTATTR_LOOP); + temp_r31->unk2C = 6; + } + break; + case 6: + if (Hu3DMotionEndCheck(temp_r31->unk00) == TRUE) { + Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[0]); + temp_r31->unk2C = 0; + } + break; + default: + if (fn_1_627C(temp_r31->unk20, 0) > 20) { + temp_r31->unk94 -= temp_r31->unk90; + if (temp_r31->unk94 < 0.0f) { + temp_r31->unk94 += 360.0f; + } + temp_r31->unk60.y = temp_r31->unk94; + } + if (fn_1_627C(temp_r31->unk20, 0) < -20) { + temp_r31->unk94 += temp_r31->unk90; + if (temp_r31->unk94 > 360.0f) { + temp_r31->unk94 -= 360.0f; + } + temp_r31->unk60.y = temp_r31->unk94; + } + if (fn_1_63B4(temp_r31->unk20) & PAD_BUTTON_A) { + temp_r31->unk4C.x += temp_r31->unk88 * sind(temp_r31->unk94); + temp_r31->unk4C.z += temp_r31->unk88 * cosd(temp_r31->unk94); + } + if (fn_1_63B4(temp_r31->unk20) & PAD_BUTTON_B) { + temp_r31->unk4C.x -= temp_r31->unk88 * sind(temp_r31->unk94); + temp_r31->unk4C.z -= temp_r31->unk88 * cosd(temp_r31->unk94); + } + if (fn_1_63B4(temp_r31->unk20) & (PAD_BUTTON_A | PAD_BUTTON_B)) { + if (temp_r31->unk34 != 1) { + if (temp_r31->unk2C != 2) { + temp_r31->unk2C = 2; + if (fn_1_63B4(temp_r31->unk20) & PAD_BUTTON_A) { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } else { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } + if (var_r29 != -1) { + HuAudFXStop(var_r29); + } + } + } else { + if (temp_r31->unk2C != 3) { + temp_r31->unk2C = 3; + temp_r31->unk48 = 0; + if (fn_1_63B4(temp_r31->unk20) & PAD_BUTTON_A) { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } else { + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); + } + if (var_r29 != -1) { + HuAudFXStop(var_r29); + } + } + } + if (temp_r31->unk34 != 1) { + var_r24 = 8; + var_r23 = 32; + } else { + var_r24 = 7; + var_r23 = 22; + } + if (temp_r31->unk48 == var_r24) { + HuAudFXPlay(0x5E0); + } + if (temp_r31->unk48 == var_r23) { + HuAudFXPlay(0x5E0); + } + temp_r31->unk48++; + if (temp_r31->unk34 != 1) { + if (temp_r31->unk48 >= 50) { + temp_r31->unk48 -= 50; + } + } else { + if (temp_r31->unk48 >= 30) { + temp_r31->unk48 -= 30; + } + } + } else { + if (ABS_INV(fn_1_627C(temp_r31->unk20, 0)) <= 20) { + if (temp_r31->unk2C != 0) { + temp_r31->unk2C = 0; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + if (var_r29 != -1) { + HuAudFXStop(var_r29); + } + } + } else { + if (temp_r31->unk2C != 1) { + temp_r31->unk2C = 1; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + Hu3DMotionShiftSpeedSet(temp_r31->unk00, 1.5f); + var_r29 = HuAudFXPlay(0x5EB); + } + } + } + if (fn_1_63FC(temp_r31) != -1) { + } + if ((spA4 = fn_1_65D0(temp_r31)) != -1) { + } + break; + } + Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk4C.x, temp_r31->unk4C.y, temp_r31->unk4C.z); + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk60.x, temp_r31->unk60.y, temp_r31->unk60.z); + HuPrcVSleep(); + } + if (var_r29 != -1) { + HuAudFXStop(var_r29); + } + if (lbl_1_bss_3D8 == 0) { + HuAudFXPlay(0x5EA); + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); + HuPrcSleep(90); + Hu3DModelAttrReset(temp_r31->unk04, HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(temp_r31->unk04, HU3D_MOTATTR_PAUSE); + Hu3DModelPosSet(temp_r31->unk04, temp_r31->unk4C.x, temp_r31->unk4C.y, temp_r31->unk4C.z); + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[7], 0.0f, 5.0f, HU3D_MOTATTR_NONE); + HuAudFXPlay(0x5E3); + HuPrcSleep(15); + HuPrcSleep(30); + temp_r31->unk6C = temp_r31->unk4C.x; + temp_r31->unk70 = temp_r31->unk4C.y; + temp_r31->unk74 = temp_r31->unk4C.z; + temp_r31->unk30 |= 2; + while (!Hu3DMotionEndCheck(temp_r31->unk00)) { + HuPrcVSleep(); + } + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk20].character], temp_r31->unk16[3], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + Hu3DModelHookReset(temp_r31->unk00); + Hu3DModelShadowSet(temp_r31->unk02); + var_f27 = 50.0f; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk4C.x, temp_r31->unk4C.y + var_f27, temp_r31->unk4C.z); + HuPrcSleep(60); + for (var_r26 = 0, var_r25 = 0; var_r26 < 90; var_r26++) { + if (var_r25 & 1) { + Hu3DModelAttrReset(temp_r31->unk00, HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(temp_r31->unk04, HU3D_ATTR_DISPOFF); + } else { + Hu3DModelAttrSet(temp_r31->unk00, HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(temp_r31->unk04, HU3D_ATTR_DISPOFF); + } + var_r25++; + HuPrcVSleep(); + } + Hu3DModelAttrSet(temp_r31->unk04, HU3D_ATTR_DISPOFF); + for (var_r28 = 0, var_f23 = 1.0f; var_r28 < 30; var_r28++) { + var_f23 -= 0.033333335f; + Hu3DModelTPLvlSet(temp_r31->unk00, var_f23); + if (var_f27 > 0.0f) { + var_f27 -= 5.0f; + Hu3DModelPosSet(temp_r31->unk02, temp_r31->unk4C.x, temp_r31->unk4C.y + var_f27, temp_r31->unk4C.z); + } + HuPrcVSleep(); + } + Hu3DModelAttrSet(temp_r31->unk00, HU3D_ATTR_DISPOFF); + HuAudSStreamPlay(4); + HuPrcSleep(180); + } else { + var_f26 = temp_r31->unk90; + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); + if (fn_1_14B4(temp_r31->unk60.y) != 0.0f) { + var_r28 = (360.0f - fn_1_14B4(temp_r31->unk60.y)) / var_f26; + if (temp_r31->unk60.y < 180.0f) { + var_r28 = temp_r31->unk60.y / var_f26; + var_f26 = -var_f26; + } + for (; var_r28 != 0; var_r28--) { + temp_r31->unk60.y += var_f26; + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk60.x, temp_r31->unk60.y, temp_r31->unk60.z); + HuPrcVSleep(); + } + Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk60.x, 0.0f, temp_r31->unk60.z); + } + Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); + while (lbl_1_bss_3E4 < 5) { + HuPrcVSleep(); + } + HuAudSStreamPlay(1); + var_r22 = HuPrcChildCreate(fn_1_68F4, 0x2000, 0x1000, 0, HuPrcCurrentGet()); + var_r22->user_data = temp_r31; + HuAudPlayerVoicePlay(temp_r31->unk20, 0x122); + CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk20].character], temp_r31->unk16[2], 0.0f, 2.0f, HU3D_MOTATTR_NONE); + temp_r31->unk2C = 10; + HuPrcSleep(180); + } + lbl_1_bss_3E4 = 6; + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_7D3C(void) { +} + +void fn_1_7D40(void) { + while (TRUE) { + if (omSysExitReq == 1) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + HuAudFadeOut(1000); + HuPrcSleep(60); + MGSeqKillAll(); + omOvlReturnEx(1, 1); + while (TRUE) { + HuPrcVSleep(); + } + } + HuPrcVSleep(); + } +} + +void fn_1_7DA0(void) { + s16 temp_r31; + s16 var_r30; + s16 temp_r26; + s32 var_r24; + s32 i; + + lbl_1_bss_3E4 = 0; + lbl_1_bss_3E4 = 1; + while (lbl_1_bss_3E4 == 1) { + HuPrcVSleep(); + } + var_r24 = HuAudSeqPlay(0x46); + temp_r31 = MGSeqStartCreate(); + while (MGSeqStatGet(temp_r31) != 0) { + HuPrcVSleep(); + } + fn_1_16F8(); + var_r30 = 1859; + temp_r26 = MGSeqTimerCreate(var_r30 / 60); + lbl_1_bss_3E4 = 3; + while (TRUE) { + if (var_r30 < 59) { + break; + } + MGSeqParamSet(temp_r26, 1, var_r30-- / 60); + lbl_1_bss_3E0++; + HuPrcVSleep(); + } + for (i = 0; i < 1; i++) { + lbl_1_bss_340[i].unk1E = 1; + } + lbl_1_bss_3E4 = 4; + HuAudSeqFadeOut(var_r24, 6); + MGSeqParamSet(temp_r26, 2, -1); + temp_r31 = MGSeqFinishCreate(); + while (MGSeqStatGet(temp_r31) != 0) { + HuPrcVSleep(); + } + mgRecordExtra = lbl_1_bss_3D8; + if (GWMGRecordGet(14) < lbl_1_bss_3D8) { + GWMGRecordSet(14, lbl_1_bss_3D8); + temp_r31 = MGSeqRecordCreate(lbl_1_bss_3D8); + HuPrcChildCreate(fn_1_1634, 0x1000, 0x1000, 0, HuPrcCurrentGet()); + fn_1_17A0(lbl_1_bss_3D8, 1); + while (MGSeqStatGet(temp_r31) != 0) { + HuPrcVSleep(); + } + lbl_1_bss_3E4 = 5; + } else { + lbl_1_bss_3E4 = 5; + } + while (lbl_1_bss_3E4 < 6) { + HuPrcVSleep(); + } + HuPrcSleep(30); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + HuPrcSleep(60); + HuAudFadeOut(1); + MGSeqKillAll(); + omOvlReturnEx(1, 1); + while (TRUE) { + HuPrcVSleep(); + } +} diff --git a/src/REL/mentDll/main.c b/src/REL/mentDll/main.c index 847ac234..03f49eb0 100644 --- a/src/REL/mentDll/main.c +++ b/src/REL/mentDll/main.c @@ -3739,19 +3739,19 @@ void fn_1_14BA8(void) s32 var_r30; var_r30 = lbl_1_bss_35BC[0].unk_30; for (var_r31 = 0; var_r31 < 0x35; var_r31++) { - HuSprAttrSet(var_r30, var_r31, 4); + HuSprAttrSet(var_r30, var_r31, HUSPR_ATTR_DISPOFF); } for (var_r31 = 0; var_r31 < 8; var_r31++) { HuSprBankSet(var_r30, var_r31, 0); - HuSprAttrReset(var_r30, var_r31, 4); - HuSprAttrReset(var_r30, var_r31 + 8, 4); + HuSprAttrReset(var_r30, var_r31, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 8, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, 0x28, 4); + HuSprAttrReset(var_r30, 0x28, HUSPR_ATTR_DISPOFF); for (var_r31 = 0; var_r31 < 4; var_r31++) { HuSprBankSet(var_r30, var_r31 + 0x10, 0); HuSprBankSet(var_r30, var_r31 + 0x14, 0); - HuSprAttrReset(var_r30, var_r31 + 0x29, 4); - HuSprAttrReset(var_r30, var_r31 + 0x2D, 4); + HuSprAttrReset(var_r30, var_r31 + 0x29, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 0x2D, HUSPR_ATTR_DISPOFF); } HuSprGrpPosSet(var_r30, 0.0f, -500.0f); } @@ -3809,19 +3809,19 @@ void fn_1_14CE0(void) var_r30 = lbl_1_bss_35BC[0].unk_30; for (var_r31 = 0; var_r31 < 4; var_r31++) { if (lbl_1_bss_3114[var_r31].unk_60 != 0) { - HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x10, 4); - HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x14, 4); + HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x10, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x14, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x10, 4); - HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x14, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x10, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x14, HUSPR_ATTR_DISPOFF); } HuSprPosSet(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x10, lbl_1_data_57C[lbl_1_bss_3114[var_r31].unk_68 % 4][0], lbl_1_data_57C[lbl_1_bss_3114[var_r31].unk_68 / 4][1]); HuSprPosSet(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x14, lbl_1_data_57C[lbl_1_bss_3114[var_r31].unk_68 % 4][0], lbl_1_data_57C[lbl_1_bss_3114[var_r31].unk_68 / 4][1]); } - for (var_r31 = 0; var_r31 <= 0x3C; var_r31++) { + for (var_r31 = 0; var_r31 <= 60; var_r31++) { fn_1_4D8(); if (var_r31 <= 0x32) { var_f31 = fn_1_32C(-500.0f, 10.0f, var_r31, 50.0f); @@ -3918,19 +3918,19 @@ void fn_1_151B8(MentDllUnkBss35BCStruct *arg0, s32 arg1, s32 arg2, s32 arg3) } var_r27 = lbl_1_bss_35BC[0].unk_30; for (var_r28 = 0; var_r28 < 0x35; var_r28++) { - HuSprAttrSet(var_r27, var_r28, 4); + HuSprAttrSet(var_r27, var_r28, HUSPR_ATTR_DISPOFF); } for (var_r28 = 0; var_r28 < 8; var_r28++) { HuSprBankSet(var_r27, var_r28, 0); - HuSprAttrReset(var_r27, var_r28, 4); - HuSprAttrReset(var_r27, var_r28 + 8, 4); + HuSprAttrReset(var_r27, var_r28, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r27, var_r28 + 8, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r27, 0x28, 4); + HuSprAttrReset(var_r27, 0x28, HUSPR_ATTR_DISPOFF); for (var_r28 = 0; var_r28 < 4; var_r28++) { HuSprBankSet(var_r27, var_r28 + 0x10, 0); HuSprBankSet(var_r27, var_r28 + 0x14, 0); - HuSprAttrReset(var_r27, var_r28 + 0x29, 4); - HuSprAttrReset(var_r27, var_r28 + 0x2D, 4); + HuSprAttrReset(var_r27, var_r28 + 0x29, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r27, var_r28 + 0x2D, HUSPR_ATTR_DISPOFF); } HuSprGrpPosSet(var_r27, 0.0f, -500.0f); } @@ -4093,8 +4093,8 @@ void fn_1_162A0(MentDllUnkBss3114Struct *arg0) HuSprBankSet(var_r30, arg0->unk_58 + 0x20, arg0->unk_64); HuSprPosSet(var_r30, arg0->unk_58 + 0x20, lbl_1_data_57C[arg0->unk_68 % 4][0], lbl_1_data_57C[arg0->unk_68 / 4][1] + 0x23); HuSprPosSet(var_r30, arg0->unk_58 + 0x24, lbl_1_data_57C[arg0->unk_68 % 4][0] + 1, lbl_1_data_57C[arg0->unk_68 / 4][1] + 0x25); - HuSprAttrReset(var_r30, arg0->unk_58 + 0x20, 4); - HuSprAttrReset(var_r30, arg0->unk_58 + 0x24, 4); + HuSprAttrReset(var_r30, arg0->unk_58 + 0x20, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, arg0->unk_58 + 0x24, HUSPR_ATTR_DISPOFF); } s32 fn_1_1648C(MentDllUnkBss3114Struct *arg0) @@ -4174,8 +4174,8 @@ s32 fn_1_1648C(MentDllUnkBss3114Struct *arg0) if (var_r27 == 1) { HuSprPosSet(var_r29, arg0->unk_58 + 49, lbl_1_data_57C[arg0->unk_68 % 4][0], lbl_1_data_57C[arg0->unk_68 / 4][1] + 35); HuSprBankSet(var_r29, arg0->unk_58 + 49, arg0->unk_64); - HuSprAttrReset(var_r29, arg0->unk_58 + 49, 4); - HuSprAttrSet(var_r29, arg0->unk_58 + 32, 4); + HuSprAttrReset(var_r29, arg0->unk_58 + 49, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r29, arg0->unk_58 + 32, HUSPR_ATTR_DISPOFF); } return var_r27; @@ -4327,11 +4327,11 @@ void fn_1_173FC(MentDllUnkBss3114Struct *arg0) HuSprPosSet(var_r30, arg0->unk_58 + 0x24, lbl_1_data_57C[arg0->unk_68 % 4][0] + 1, lbl_1_data_57C[arg0->unk_68 / 4][1] + 0x25); HuSprPosSet(var_r30, arg0->unk_58 + 0x31, lbl_1_data_57C[arg0->unk_68 % 4][0] + 1, lbl_1_data_57C[arg0->unk_68 / 4][1] + 0x25); arg0->unk_70[2] = 0; - HuSprAttrReset(var_r30, arg0->unk_58 + 0x18, 4); - HuSprAttrReset(var_r30, arg0->unk_58 + 0x1C, 4); - HuSprAttrSet(var_r30, arg0->unk_58 + 0x20, 4); - HuSprAttrSet(var_r30, arg0->unk_58 + 0x24, 4); - HuSprAttrSet(var_r30, arg0->unk_58 + 0x31, 4); + HuSprAttrReset(var_r30, arg0->unk_58 + 0x18, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, arg0->unk_58 + 0x1C, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, arg0->unk_58 + 0x20, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, arg0->unk_58 + 0x24, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, arg0->unk_58 + 0x31, HUSPR_ATTR_DISPOFF); } void fn_1_17914(MentDllUnkBss3114Struct *arg0) @@ -4355,24 +4355,24 @@ void fn_1_179DC(void) var_r30 = lbl_1_bss_35BC[0].unk_34; for (var_r29 = 0; var_r29 < 0x11; var_r29++) { - HuSprAttrSet(var_r30, var_r29, 4); + HuSprAttrSet(var_r30, var_r29, HUSPR_ATTR_DISPOFF); } for (var_r29 = 0; var_r29 < 4; var_r29++) { var_r31 = &lbl_1_bss_3114[var_r29]; HuSprPosSet(var_r30, var_r31->unk_68, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1]); - HuSprAttrReset(var_r30, var_r31->unk_68, 4); + HuSprAttrReset(var_r30, var_r31->unk_68, HUSPR_ATTR_DISPOFF); if (var_r31->unk_60 == 0) { HuSprBankSet(var_r30, var_r31->unk_58 + 8, var_r31->unk_58); HuSprPosSet(var_r30, var_r31->unk_58 + 8, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1] + 0x19); - HuSprAttrReset(var_r30, var_r31->unk_58 + 8, 4); + HuSprAttrReset(var_r30, var_r31->unk_58 + 8, HUSPR_ATTR_DISPOFF); } else { HuSprBankSet(var_r30, var_r31->unk_58 + 0xC, var_r31->unk_64); HuSprPosSet(var_r30, var_r31->unk_58 + 0xC, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1] + 0x19); - HuSprAttrReset(var_r30, var_r31->unk_58 + 0xC, 4); + HuSprAttrReset(var_r30, var_r31->unk_58 + 0xC, HUSPR_ATTR_DISPOFF); } } - HuSprAttrReset(var_r30, 0x10, 4); + HuSprAttrReset(var_r30, 0x10, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(var_r30, 16.0f, -500.0f); } @@ -4407,24 +4407,24 @@ void fn_1_17CC8(MentDllUnkBss35BCStruct *arg0, s32 arg1, s32 arg2, s32 arg3) HuSprPosSet(var_r26, 0x10, 96.0f, 32.0f); var_r29 = lbl_1_bss_35BC[0].unk_34; for (var_r28 = 0; var_r28 < 0x11; var_r28++) { - HuSprAttrSet(var_r29, var_r28, 4); + HuSprAttrSet(var_r29, var_r28, HUSPR_ATTR_DISPOFF); } for (var_r28 = 0; var_r28 < 4; var_r28++) { var_r31 = &lbl_1_bss_3114[var_r28]; HuSprPosSet(var_r29, var_r31->unk_68, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1]); - HuSprAttrReset(var_r29, var_r31->unk_68, 4); + HuSprAttrReset(var_r29, var_r31->unk_68, HUSPR_ATTR_DISPOFF); if (var_r31->unk_60 == 0) { HuSprBankSet(var_r29, var_r31->unk_58 + 8, var_r31->unk_58); HuSprPosSet(var_r29, var_r31->unk_58 + 8, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1] + 0x19); - HuSprAttrReset(var_r29, var_r31->unk_58 + 8, 4); + HuSprAttrReset(var_r29, var_r31->unk_58 + 8, HUSPR_ATTR_DISPOFF); } else { HuSprBankSet(var_r29, var_r31->unk_58 + 0xC, var_r31->unk_64); HuSprPosSet(var_r29, var_r31->unk_58 + 0xC, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1] + 0x19); - HuSprAttrReset(var_r29, var_r31->unk_58 + 0xC, 4); + HuSprAttrReset(var_r29, var_r31->unk_58 + 0xC, HUSPR_ATTR_DISPOFF); } } - HuSprAttrReset(var_r29, 0x10, 4); + HuSprAttrReset(var_r29, 0x10, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(var_r29, 16.0f, -500.0f); } @@ -4438,24 +4438,24 @@ void fn_1_1811C(void) var_r30 = lbl_1_bss_35BC[0].unk_34; for (var_r29 = 0; var_r29 < 0x11; var_r29++) { - HuSprAttrSet(var_r30, var_r29, 4); + HuSprAttrSet(var_r30, var_r29, HUSPR_ATTR_DISPOFF); } for (var_r29 = 0; var_r29 < 4; var_r29++) { var_r31 = &lbl_1_bss_3114[var_r29]; HuSprPosSet(var_r30, var_r31->unk_68, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1]); - HuSprAttrReset(var_r30, var_r31->unk_68, 4); + HuSprAttrReset(var_r30, var_r31->unk_68, HUSPR_ATTR_DISPOFF); if (var_r31->unk_60 == 0) { HuSprBankSet(var_r30, var_r31->unk_58 + 8, var_r31->unk_58); HuSprPosSet(var_r30, var_r31->unk_58 + 8, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1] + 0x19); - HuSprAttrReset(var_r30, var_r31->unk_58 + 8, 4); + HuSprAttrReset(var_r30, var_r31->unk_58 + 8, HUSPR_ATTR_DISPOFF); } else { HuSprBankSet(var_r30, var_r31->unk_58 + 0xC, var_r31->unk_64); HuSprPosSet(var_r30, var_r31->unk_58 + 0xC, lbl_1_data_5BC[var_r31->unk_58][0], lbl_1_data_5BC[var_r31->unk_58][1] + 0x19); - HuSprAttrReset(var_r30, var_r31->unk_58 + 0xC, 4); + HuSprAttrReset(var_r30, var_r31->unk_58 + 0xC, HUSPR_ATTR_DISPOFF); } } - HuSprAttrReset(var_r30, 0x10, 4); + HuSprAttrReset(var_r30, 0x10, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(var_r30, 16.0f, -500.0f); for (var_r28 = 0; var_r28 <= 0x3C; var_r28++) { fn_1_4D8(); @@ -4551,18 +4551,18 @@ void fn_1_18A54(s32 arg0) if (arg0 != 5) { HuSprBankSet(var_r31, 0, arg0); HuSprBankSet(var_r31, 1, arg0); - HuSprAttrSet(var_r31, 2, 4); - HuSprAttrSet(var_r31, 3, 4); - HuSprAttrReset(var_r31, 0, 4); - HuSprAttrReset(var_r31, 1, 4); + HuSprAttrSet(var_r31, 2, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r31, 3, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r31, 0, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r31, 1, HUSPR_ATTR_DISPOFF); if (lbl_1_bss_A8[0] != 0) { if ((arg0 == 0 && _CheckFlag(FLAG_ID_MAKE(0, 2)) != 0) || (arg0 == 1 && _CheckFlag(FLAG_ID_MAKE(0, 3)) != 0) || (arg0 == 2 && _CheckFlag(FLAG_ID_MAKE(0, 4)) != 0) || (arg0 == 3 && (_CheckFlag(FLAG_ID_MAKE(0, 5)) != 0)) || (arg0 == 4 && (_CheckFlag(FLAG_ID_MAKE(0, 6)) != 0))) { - HuSprAttrReset(var_r31, 4, 4); - HuSprAttrReset(var_r31, 5, 4); + HuSprAttrReset(var_r31, 4, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r31, 5, HUSPR_ATTR_DISPOFF); HuSprTPLvlSet(var_r31, 5, 0.8f); - HuSprAttrReset(var_r31, 6, 4); + HuSprAttrReset(var_r31, 6, HUSPR_ATTR_DISPOFF); HuSprTPLvlSet(var_r31, 6, 0.5f); } else { @@ -4573,10 +4573,10 @@ void fn_1_18A54(s32 arg0) } } else { - HuSprAttrSet(var_r31, 0, 4); - HuSprAttrSet(var_r31, 1, 4); - HuSprAttrReset(var_r31, 2, 4); - HuSprAttrReset(var_r31, 3, 4); + HuSprAttrSet(var_r31, 0, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r31, 1, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r31, 2, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r31, 3, HUSPR_ATTR_DISPOFF); } lbl_1_bss_35BC[0].unk_08[0] = arg0; lbl_1_bss_35BC[0].unk_1C[1] = (rand8() % 10) * 0x24; @@ -4664,47 +4664,47 @@ void fn_1_190E8(void) var_r30 = lbl_1_bss_35BC[0].unk_3C; for (var_r31 = 0; var_r31 < 0x5B; var_r31++) { - HuSprAttrSet(var_r30, var_r31, 4); + HuSprAttrSet(var_r30, var_r31, HUSPR_ATTR_DISPOFF); } if (lbl_1_bss_A8[2] != 5) { HuSprBankSet(var_r30, 0, lbl_1_bss_A8[2]); - HuSprAttrReset(var_r30, 0, 4); + HuSprAttrReset(var_r30, 0, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrReset(var_r30, 1, 4); + HuSprAttrReset(var_r30, 1, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, 2, 4); + HuSprAttrReset(var_r30, 2, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, 2, 288.0f, lbl_1_data_5DC[0][1]); HuSprScaleSet(var_r30, 2, 1.0f, lbl_1_data_5DC[0][2]); for (var_r31 = 0; var_r31 < 2; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 3, 4); + HuSprAttrReset(var_r30, var_r31 + 3, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, var_r31 + 3, lbl_1_data_5DC[0][var_r31 + 3], lbl_1_data_5DC[0][1]); } for (var_r31 = 0; var_r31 < 4; var_r31++) { - HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_68 + 7, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_68 + 7, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, lbl_1_bss_3114[var_r31].unk_68 + 7, lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], lbl_1_data_5DC[0][1]); - HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0xF, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0xF, HUSPR_ATTR_DISPOFF); HuSprPosSet( var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0xF, 1.0f + lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], 2.0f + lbl_1_data_5DC[0][1]); - HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_68 + 0x1F, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_68 + 0x1F, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, lbl_1_bss_3114[var_r31].unk_68 + 0x1F, lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], lbl_1_data_5DC[4][1] - 9.0f); - HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x27, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x27, HUSPR_ATTR_DISPOFF); HuSprPosSet( var_r30, lbl_1_bss_3114[var_r31].unk_58 + 0x27, 1.0f + lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], lbl_1_data_5DC[4][1] - 7.0f); if (lbl_1_bss_3114[var_r31].unk_60 != 0) { - HuSprAttrReset(var_r30, var_r31 + 0x1B, 4); + HuSprAttrReset(var_r30, var_r31 + 0x1B, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, var_r31 + 0x1B, lbl_1_bss_3114[var_r31].unk_64); HuSprPosSet(var_r30, var_r31 + 0x1B, lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], 21.0f + lbl_1_data_5DC[0][1]); } else { - HuSprAttrReset(var_r30, var_r31 + 0x17, 4); + HuSprAttrReset(var_r30, var_r31 + 0x17, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, var_r31 + 0x17, lbl_1_bss_3114[var_r31].unk_58); HuSprPosSet(var_r30, var_r31 + 0x17, lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0] - 8.0f, lbl_1_data_5DC[0][1] - 21.0f); } HuSprPosSet(var_r30, var_r31 + 0x2F, lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], 20.0f + lbl_1_data_5DC[4][1]); - HuSprAttrReset(var_r30, var_r31 + 0x2F, 4); + HuSprAttrReset(var_r30, var_r31 + 0x2F, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, var_r31 + 0x33, 10.0f + lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], 21.0f + lbl_1_data_5DC[4][1]); - HuSprAttrReset(var_r30, var_r31 + 0x33, 4); + HuSprAttrReset(var_r30, var_r31 + 0x33, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, var_r31 + 0x33, 0); HuSprPosSet(var_r30, lbl_1_bss_3114[var_r31].unk_68 + 0x37, lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], lbl_1_data_5DC[4][1] - 7.0f); HuSprPosSet(var_r30, var_r31 + 0x3F, lbl_1_data_5DC[lbl_1_bss_3114[var_r31].unk_58][0], 23.0f + lbl_1_data_5DC[4][1]); @@ -4713,37 +4713,37 @@ void fn_1_190E8(void) } HuSprPosSet(var_r30, 0x47, 340.0f, lbl_1_data_5DC[0][1]); HuSprScaleSet(var_r30, 0x47, 0.0f, 0.0f); - HuSprAttrReset(var_r30, 0x47, 4); + HuSprAttrReset(var_r30, 0x47, HUSPR_ATTR_DISPOFF); #if VERSION_NTSC - HuSprAttrReset(var_r30, 0x48, 4); + HuSprAttrReset(var_r30, 0x48, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, 0x48, 366.0f, lbl_1_data_5DC[1][1]); - HuSprAttrReset(var_r30, 0x49, 4); + HuSprAttrReset(var_r30, 0x49, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, 0x49, 367.0f, 2.0f + lbl_1_data_5DC[1][1]); #endif for (var_r31 = 0; var_r31 < 2; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 0x4A, 4); + HuSprAttrReset(var_r30, var_r31 + 0x4A, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, var_r31 + 0x4A, POSX1 - (var_r31 * (POSX1-POSX2)), lbl_1_data_5DC[1][1]); HuSprBankSet(var_r30, var_r31 + 0x4A, var_r31); - HuSprAttrReset(var_r30, var_r31 + 0x4C, 4); + HuSprAttrReset(var_r30, var_r31 + 0x4C, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, var_r31 + 0x4C, POSX1+1 - (var_r31 * (POSX1-POSX2)), 2.0f + lbl_1_data_5DC[1][1]); HuSprBankSet(var_r30, var_r31 + 0x4C, var_r31); } - HuSprAttrReset(var_r30, 0x4E, 4); + HuSprAttrReset(var_r30, 0x4E, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, 0x4E, 340.0f, lbl_1_data_5DC[2][1]); HuSprBankSet(var_r30, 0x4E, 0); - HuSprAttrReset(var_r30, 0x4F, 4); + HuSprAttrReset(var_r30, 0x4F, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, 0x4F, 341.0f, 2.0f + lbl_1_data_5DC[2][1]); HuSprBankSet(var_r30, 0x4F, 0); - HuSprAttrReset(var_r30, 0x50, 4); + HuSprAttrReset(var_r30, 0x50, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, 0x50, 340.0f, lbl_1_data_5DC[3][1]); HuSprBankSet(var_r30, 0x50, 0); - HuSprAttrReset(var_r30, 0x51, 4); + HuSprAttrReset(var_r30, 0x51, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r30, 0x51, 341.0f, 2.0f + lbl_1_data_5DC[3][1]); HuSprBankSet(var_r30, 0x51, 0); - HuSprAttrReset(var_r30, 0x52, 4); + HuSprAttrReset(var_r30, 0x52, HUSPR_ATTR_DISPOFF); for (var_r31 = 0; var_r31 < 4; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 0x53, 4); - HuSprAttrReset(var_r30, var_r31 + 0x57, 4); + HuSprAttrReset(var_r30, var_r31 + 0x53, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 0x57, HUSPR_ATTR_DISPOFF); } for (var_r31 = 0; var_r31 < 5; var_r31++) { HuWinPosSet(lbl_1_bss_35BC[0].unk_44[var_r31], 100.0f, -500.0f + (lbl_1_data_5DC[var_r31][1] - 21.0f)); @@ -5052,13 +5052,13 @@ void fn_1_19C98(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) HuSprPosSet(var_r30, 6, var_f31, 49.0f + lbl_1_data_5DC[4][1]); if (var_r29 == 3) { for (var_r28 = 0; var_r28 < 4; var_r28++) { - HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r28].unk_68 + 0x37, 4); - HuSprAttrSet(var_r30, var_r28 + 0x3F, 4); - HuSprAttrSet(var_r30, var_r28 + 0x43, 4); + HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r28].unk_68 + 0x37, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, var_r28 + 0x3F, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, var_r28 + 0x43, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, lbl_1_bss_3114[arg1->unk_1C[4]].unk_68 + 0x37, 4); - HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x3F, 4); - HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x43, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[arg1->unk_1C[4]].unk_68 + 0x37, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x3F, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x43, HUSPR_ATTR_DISPOFF); } break; } @@ -5101,9 +5101,9 @@ void fn_1_19C98(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) HuSprPosSet(var_r30, 5, lbl_1_data_5DC[arg1->unk_1C[4]][0], (lbl_1_data_5DC[4][1] - var_f29) - 48.0f); HuSprPosSet(var_r30, 6, lbl_1_data_5DC[arg1->unk_1C[4]][0], 49.0f + (lbl_1_data_5DC[4][1] + var_f29)); for (var_r28 = 0; var_r28 < 4; var_r28++) { - HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r28].unk_68 + 0x37, 4); - HuSprAttrSet(var_r30, var_r28 + 0x3F, 4); - HuSprAttrSet(var_r30, var_r28 + 0x43, 4); + HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r28].unk_68 + 0x37, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, var_r28 + 0x3F, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, var_r28 + 0x43, HUSPR_ATTR_DISPOFF); } } else { @@ -5111,8 +5111,8 @@ void fn_1_19C98(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) HuSprPosSet(var_r30, 3, var_f31, var_f29); var_f31 = fn_1_32C(sp8[1], 33.0f + lbl_1_data_5DC[arg1->unk_1C[4]][0], var_r29, 10.0f); HuSprPosSet(var_r30, 4, var_f31, var_f29); - HuSprAttrReset(var_r30, 5, 4); - HuSprAttrReset(var_r30, 6, 4); + HuSprAttrReset(var_r30, 5, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, 6, HUSPR_ATTR_DISPOFF); var_f30 = fn_1_32C(0.0f, 1.0f, var_r29, 10.0f); HuSprTPLvlSet(var_r30, 5, var_f30); HuSprTPLvlSet(var_r30, 6, var_f30); @@ -5120,15 +5120,15 @@ void fn_1_19C98(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) HuSprPosSet(var_r30, 5, lbl_1_data_5DC[arg1->unk_1C[4]][0], (lbl_1_data_5DC[4][1] - var_f29) - 48.0f); HuSprPosSet(var_r30, 6, lbl_1_data_5DC[arg1->unk_1C[4]][0], 49.0f + (lbl_1_data_5DC[4][1] + var_f29)); if (var_r29 == 3) { - HuSprAttrReset(var_r30, lbl_1_bss_3114[arg1->unk_1C[4]].unk_68 + 0x37, 4); - HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x3F, 4); - HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x43, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[arg1->unk_1C[4]].unk_68 + 0x37, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x3F, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, arg1->unk_1C[4] + 0x43, HUSPR_ATTR_DISPOFF); } } } if (arg1->unk_08[0] != 4) { - HuSprAttrSet(var_r30, 5, 4); - HuSprAttrSet(var_r30, 6, 4); + HuSprAttrSet(var_r30, 5, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, 6, HUSPR_ATTR_DISPOFF); } } lbl_1_bss_35BC[0].unk_08[3] = 0; @@ -5266,18 +5266,18 @@ void fn_1_1C554(void) var_r30 = lbl_1_bss_35BC[0].unk_3C; var_r29 = &lbl_1_bss_35BC[1]; - HuSprAttrReset(var_r30, 2, 4); + HuSprAttrReset(var_r30, 2, HUSPR_ATTR_DISPOFF); if (lbl_1_bss_35BC[1].unk_08[0] == 4) { for (var_r31 = 0; var_r31 < 4; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 3, 4); + HuSprAttrReset(var_r30, var_r31 + 3, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r29->unk_1C[4]].unk_68 + 0x37, 4); - HuSprAttrReset(var_r30, var_r29->unk_1C[4] + 0x3F, 4); - HuSprAttrReset(var_r30, var_r29->unk_1C[4] + 0x43, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114[var_r29->unk_1C[4]].unk_68 + 0x37, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r29->unk_1C[4] + 0x3F, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r29->unk_1C[4] + 0x43, HUSPR_ATTR_DISPOFF); return; } for (var_r31 = 0; var_r31 < 2; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 3, 4); + HuSprAttrReset(var_r30, var_r31 + 3, HUSPR_ATTR_DISPOFF); } } @@ -5289,13 +5289,13 @@ void fn_1_1C674(void) var_r30 = lbl_1_bss_35BC[0].unk_3C; var_r31 = &lbl_1_bss_35BC[1]; - HuSprAttrSet(var_r30, 2, 4); + HuSprAttrSet(var_r30, 2, HUSPR_ATTR_DISPOFF); for (var_r29 = 0; var_r29 < 4; var_r29++) { - HuSprAttrSet(var_r30, var_r29 + 3, 4); + HuSprAttrSet(var_r30, var_r29 + 3, HUSPR_ATTR_DISPOFF); } - HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r31->unk_1C[4]].unk_68 + 0x37, 4); - HuSprAttrSet(var_r30, var_r31->unk_1C[4] + 0x3F, 4); - HuSprAttrSet(var_r30, var_r31->unk_1C[4] + 0x43, 4); + HuSprAttrSet(var_r30, lbl_1_bss_3114[var_r31->unk_1C[4]].unk_68 + 0x37, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, var_r31->unk_1C[4] + 0x3F, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(var_r30, var_r31->unk_1C[4] + 0x43, HUSPR_ATTR_DISPOFF); } void fn_1_1C754(void) @@ -5317,7 +5317,7 @@ void fn_1_1C754(void) HuSprAttrSet(var_r28, lbl_1_bss_3114[var_r30->unk_1C[4]].unk_68 + 0x37, 4); HuSprAttrSet(var_r28, var_r30->unk_1C[4] + 0x3F, 4); HuSprAttrSet(var_r28, var_r30->unk_1C[4] + 0x43, 4); - for (var_r31 = 0; var_r31 <= 0x3C; var_r31++) { + for (var_r31 = 0; var_r31 <= 60; var_r31++) { fn_1_4D8(); if (var_r31 <= 0x32) { var_f31 = fn_1_32C(-500.0f, 10.0f, var_r31, 50.0f); @@ -5372,12 +5372,12 @@ void fn_1_1CBC8(void) var_r30 = lbl_1_bss_35BC[0].unk_30; for (var_r31 = 0; var_r31 < 0x22; var_r31++) { - HuSprAttrSet(var_r30, var_r31, 4); + HuSprAttrSet(var_r30, var_r31, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, 0, 4); + HuSprAttrReset(var_r30, 0, HUSPR_ATTR_DISPOFF); for (var_r31 = 0; var_r31 < 4; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 1, 4); - HuSprAttrReset(var_r30, var_r31 + 5, 4); + HuSprAttrReset(var_r30, var_r31 + 1, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 5, HUSPR_ATTR_DISPOFF); } HuSprPosSet(var_r30, 0x1B, 288.0f, lbl_1_data_640[1][2]); HuSprScaleSet(var_r30, 0x1B, 1.0f, 0.75f); @@ -5385,19 +5385,19 @@ void fn_1_1CBC8(void) HuSprPosSet(var_r30, 0x1D, lbl_1_data_640[1][4], lbl_1_data_640[1][2]); for (var_r31 = 0; var_r31 < 8; var_r31++) { HuSprBankSet(var_r30, var_r31 + 9, 0); - HuSprAttrReset(var_r30, var_r31 + 9, 4); - HuSprAttrReset(var_r30, var_r31 + 0x11, 4); + HuSprAttrReset(var_r30, var_r31 + 9, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 0x11, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, 0x19, 4); - HuSprAttrReset(var_r30, 0x1A, 4); + HuSprAttrReset(var_r30, 0x19, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, 0x1A, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, 0x1E, 0); - HuSprAttrReset(var_r30, 0x1E, 4); + HuSprAttrReset(var_r30, 0x1E, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, 0x1F, 0); - HuSprAttrReset(var_r30, 0x1F, 4); + HuSprAttrReset(var_r30, 0x1F, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, 0x20, 0); - HuSprAttrReset(var_r30, 0x20, 4); + HuSprAttrReset(var_r30, 0x20, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, 0x21, 0); - HuSprAttrReset(var_r30, 0x21, 4); + HuSprAttrReset(var_r30, 0x21, HUSPR_ATTR_DISPOFF); for (var_r31 = 0; var_r31 < 3; var_r31++) { HuWinPosSet(lbl_1_bss_35BC->unk_44[var_r31], 100.0f, lbl_1_data_640[var_r31][2] - 0x209); } @@ -5548,9 +5548,9 @@ void fn_1_1DED8() s32 var_r31; var_r30 = lbl_1_bss_35BC[0].unk_30; - HuSprAttrReset(var_r30, 0x1B, 4); + HuSprAttrReset(var_r30, 0x1B, HUSPR_ATTR_DISPOFF); for (var_r31 = 0; var_r31 < 2; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 0x1C, 4); + HuSprAttrReset(var_r30, var_r31 + 0x1C, HUSPR_ATTR_DISPOFF); } } @@ -5907,11 +5907,11 @@ void fn_1_1F5F0(void) var_r31 = lbl_1_bss_35BC[0].unk_34; for (var_r30 = 0; var_r30 < 9; var_r30++) { - HuSprAttrSet(var_r31, var_r30, 4); + HuSprAttrSet(var_r31, var_r30, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r31, 0, 4); + HuSprAttrReset(var_r31, 0, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r31, 0, lbl_1_bss_35BC[0].unk_1C[0]); - HuSprAttrReset(var_r31, lbl_1_bss_3114->unk_68 + 1, 4); + HuSprAttrReset(var_r31, lbl_1_bss_3114->unk_68 + 1, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(var_r31, 16.0f, -500.0f); } @@ -5937,9 +5937,9 @@ void fn_1_1F6B8(MentDllUnkBss35BCStruct *arg0, s32 arg1, s32 arg2, s32 arg3) for (var_r28 = 0; var_r28 < 9; var_r28++) { HuSprAttrSet(var_r30, var_r28, 4); } - HuSprAttrReset(var_r30, 0, 4); + HuSprAttrReset(var_r30, 0, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, 0, lbl_1_bss_35BC[0].unk_1C[0]); - HuSprAttrReset(var_r30, lbl_1_bss_3114->unk_68 + 1, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114->unk_68 + 1, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(var_r30, 16.0f, -500.0f); } @@ -5952,11 +5952,11 @@ void fn_1_1F868(void) var_r30 = lbl_1_bss_35BC[0].unk_34; for (var_r29 = 0; var_r29 < 9; var_r29++) { - HuSprAttrSet(var_r30, var_r29, 4); + HuSprAttrSet(var_r30, var_r29, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, 0, 4); + HuSprAttrReset(var_r30, 0, HUSPR_ATTR_DISPOFF); HuSprBankSet(var_r30, 0, lbl_1_bss_35BC[0].unk_1C[0]); - HuSprAttrReset(var_r30, lbl_1_bss_3114->unk_68 + 1, 4); + HuSprAttrReset(var_r30, lbl_1_bss_3114->unk_68 + 1, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(var_r30, 16.0f, -500.0f); for (var_r31 = 0; var_r31 <= 0x3C; var_r31++) { fn_1_4D8(); @@ -6023,13 +6023,13 @@ void fn_1_1FE08(void) for (var_r31 = 0; var_r31 < 4; var_r31++) { HuSprBankSet(var_r30, var_r31, 0); lbl_1_bss_3114[var_r31].unk_70[3] = lbl_1_bss_3114[var_r31].unk_60 = 0; - HuSprAttrReset(var_r30, var_r31, 4); - HuSprAttrReset(var_r30, var_r31 + 4, 4); + HuSprAttrReset(var_r30, var_r31, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 4, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, 0xA, 4); + HuSprAttrReset(var_r30, 0xA, HUSPR_ATTR_DISPOFF); for (var_r31 = 0; var_r31 < 4; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 0xB, 4); - HuSprAttrReset(var_r30, var_r31 + 0xF, 4); + HuSprAttrReset(var_r30, var_r31 + 0xB, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 0xF, HUSPR_ATTR_DISPOFF); } HuSprGrpPosSet(var_r30, 0.0f, -500.0f); } @@ -6153,18 +6153,18 @@ void fn_1_2055C(s32 arg0) spC = 0; var_r30 = lbl_1_bss_35BC[0].unk_40; for (var_r31 = 0; var_r31 < 0x13; var_r31++) { - HuSprAttrSet(var_r30, var_r31, 4); + HuSprAttrSet(var_r30, var_r31, HUSPR_ATTR_DISPOFF); } for (var_r31 = 0; var_r31 < 4; var_r31++) { HuSprBankSet(var_r30, var_r31, 0); lbl_1_bss_3114[var_r31].unk_70[3] = lbl_1_bss_3114[var_r31].unk_60 = 0; - HuSprAttrReset(var_r30, var_r31, 4); - HuSprAttrReset(var_r30, var_r31 + 4, 4); + HuSprAttrReset(var_r30, var_r31, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 4, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r30, 0xA, 4); + HuSprAttrReset(var_r30, 0xA, HUSPR_ATTR_DISPOFF); for (var_r31 = 0; var_r31 < 4; var_r31++) { - HuSprAttrReset(var_r30, var_r31 + 0xB, 4); - HuSprAttrReset(var_r30, var_r31 + 0xF, 4); + HuSprAttrReset(var_r30, var_r31 + 0xB, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r30, var_r31 + 0xF, HUSPR_ATTR_DISPOFF); } HuSprGrpPosSet(var_r30, 0.0f, -500.0f); } @@ -6208,9 +6208,9 @@ void fn_1_208F4(void) s32 var_r31; var_r31 = lbl_1_bss_35BC[0].unk_40; - HuSprAttrReset(var_r31, 8, 4); + HuSprAttrReset(var_r31, 8, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r31, 8, lbl_1_data_690[0][0] - 0x32, lbl_1_data_690[0][1]); - HuSprAttrReset(var_r31, 9, 4); + HuSprAttrReset(var_r31, 9, HUSPR_ATTR_DISPOFF); HuSprPosSet(var_r31, 9, lbl_1_data_690[3][0] + 0x32, lbl_1_data_690[0][1]); } @@ -6274,18 +6274,18 @@ void fn_1_20B54(MentDllUnkBss35BCStruct *arg0, s32 arg1, s32 arg2, s32 arg3) sp8 = 0; var_r27 = lbl_1_bss_35BC[0].unk_40; for (var_r30 = 0; var_r30 < 0x13; var_r30++) { - HuSprAttrSet(var_r27, var_r30, 4); + HuSprAttrSet(var_r27, var_r30, HUSPR_ATTR_DISPOFF); } for (var_r30 = 0; var_r30 < 4; var_r30++) { HuSprBankSet(var_r27, var_r30, 0); lbl_1_bss_3114[var_r30].unk_70[3] = lbl_1_bss_3114[var_r30].unk_60 = 0; - HuSprAttrReset(var_r27, var_r30, 4); - HuSprAttrReset(var_r27, var_r30 + 4, 4); + HuSprAttrReset(var_r27, var_r30, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r27, var_r30 + 4, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(var_r27, 0xA, 4); + HuSprAttrReset(var_r27, 0xA, HUSPR_ATTR_DISPOFF); for (var_r30 = 0; var_r30 < 4; var_r30++) { - HuSprAttrReset(var_r27, var_r30 + 0xB, 4); - HuSprAttrReset(var_r27, var_r30 + 0xF, 4); + HuSprAttrReset(var_r27, var_r30 + 0xB, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(var_r27, var_r30 + 0xF, HUSPR_ATTR_DISPOFF); } HuSprGrpPosSet(var_r27, 0.0f, -500.0f); } diff --git a/src/REL/modeseldll/filesel.c b/src/REL/modeseldll/filesel.c index 7394daa6..93fc856d 100644 --- a/src/REL/modeseldll/filesel.c +++ b/src/REL/modeseldll/filesel.c @@ -1977,15 +1977,15 @@ void fn_1_AAB8(void) HuSprGrpScaleSet(lbl_1_bss_116[temp_r30], temp_f31, temp_f31); if (lbl_1_bss_EE[temp_r30] > 9999) { for (temp_r28 = 0; temp_r28 < 4; temp_r28++) { - HuSprAttrSet(lbl_1_bss_116[temp_r30], temp_r28 + 1, 4); + HuSprAttrSet(lbl_1_bss_116[temp_r30], temp_r28 + 1, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(lbl_1_bss_116[temp_r30], 5, 4); + HuSprAttrReset(lbl_1_bss_116[temp_r30], 5, HUSPR_ATTR_DISPOFF); } else { for (temp_r28 = 0; temp_r28 < 4; temp_r28++) { - HuSprAttrReset(lbl_1_bss_116[temp_r30], temp_r28 + 1, 4); + HuSprAttrReset(lbl_1_bss_116[temp_r30], temp_r28 + 1, HUSPR_ATTR_DISPOFF); } - HuSprAttrSet(lbl_1_bss_116[temp_r30], 5, 4); + HuSprAttrSet(lbl_1_bss_116[temp_r30], 5, HUSPR_ATTR_DISPOFF); temp_r29 = lbl_1_bss_EE[temp_r30]; HuSprBankSet(lbl_1_bss_116[temp_r30], 1, temp_r29 / 1000); temp_r29 -= (temp_r29 / 1000) * 1000; diff --git a/src/game/board/battle.c b/src/game/board/battle.c index 2f17e557..2ba67445 100755 --- a/src/game/board/battle.c +++ b/src/game/board/battle.c @@ -619,7 +619,7 @@ static void ShowBattleGame(BattleWork *arg0, omObjData *arg1) { arg0->unk01 = 1; arg1->trans.z = 0.01f; arg1->trans.y = 0.0f; - HuSprAttrReset(arg0->unk08, 0, 4); + HuSprAttrReset(arg0->unk08, 0, HUSPR_ATTR_DISPOFF); HuSprPosSet(arg0->unk08, 0, 0.0f, 0.0f); } else { return; @@ -682,8 +682,8 @@ static void UpdateBattleCoin(BattleWork *arg0, omObjData *arg1) { HuSprBankSet(arg0->unk08, 1, temp_r28); return; } - HuSprAttrReset(arg0->unk08, 2, 4); - HuSprAttrReset(arg0->unk08, 1, 5); + HuSprAttrReset(arg0->unk08, 2, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(arg0->unk08, 1, HUSPR_ATTR_NOANIM | HUSPR_ATTR_DISPOFF); HuSprPosSet(arg0->unk08, 2, 0.0f, 40.0f); HuSprPosSet(arg0->unk08, 1, 34.0f, 40.0f); HuSprScaleSet(arg0->unk08, 1, 0.9f, 0.9f); @@ -726,10 +726,10 @@ static void InitBattleGameSpr(BattleWork *arg0, omObjData *arg1) { temp_r30 = battleMGIdx[0]; temp_r29 = battleMGIdx[1]; - HuSprAttrReset(arg0->unk08, 3, 4); - HuSprAttrReset(arg0->unk08, 4, 4); - HuSprAttrReset(arg0->unk08, temp_r30 + 5, 4); - HuSprAttrReset(arg0->unk08, temp_r29 + 5, 4); + HuSprAttrReset(arg0->unk08, 3, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(arg0->unk08, 4, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(arg0->unk08, temp_r30 + 5, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(arg0->unk08, temp_r29 + 5, HUSPR_ATTR_DISPOFF); HuSprPosSet(arg0->unk08, 3, sp8[0][0], sp8[0][1]); HuSprPosSet(arg0->unk08, 4, sp8[1][0], sp8[1][1]); HuSprPosSet(arg0->unk08, temp_r30 + 5, sp8[0][0], sp8[0][1]); diff --git a/src/game/board/char_wheel.c b/src/game/board/char_wheel.c index 13e4664f..bb33564a 100755 --- a/src/game/board/char_wheel.c +++ b/src/game/board/char_wheel.c @@ -368,14 +368,14 @@ static void StopCharWheel(CharWheelWork *arg0) { } var_r30 = arg0->unk03 % 6; if (var_r30 < 3) { - HuSprAttrSet(wheelSprGrp, wheelPos + 10, 4); + HuSprAttrSet(wheelSprGrp, wheelPos + 10, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrReset(wheelSprGrp, wheelPos + 10, 4); + HuSprAttrReset(wheelSprGrp, wheelPos + 10, HUSPR_ATTR_DISPOFF); } if (arg0->unk03 < 90) { arg0->unk03++; } else { - HuSprAttrReset(wheelSprGrp, wheelPos + 10, 4); + HuSprAttrReset(wheelSprGrp, wheelPos + 10, HUSPR_ATTR_DISPOFF); arg0->unk00_field3 = 4; } } diff --git a/src/game/board/mg_setup.c b/src/game/board/mg_setup.c index 1bca487c..4613826f 100644 --- a/src/game/board/mg_setup.c +++ b/src/game/board/mg_setup.c @@ -787,7 +787,7 @@ static void PopupVS(bitcopy* arg0, omObjData* arg1) { temp_r29 = arg0->unk_0C; if (arg0->unk_02 == 0) { - HuSprAttrReset(temp_r29->unk_00[0], 0, 4); + HuSprAttrReset(temp_r29->unk_00[0], 0, HUSPR_ATTR_DISPOFF); HuSprAttrSet(temp_r29->unk_00[0], 0, 8); HuSprScaleSet(temp_r29->unk_00[0], 0, 0.001f, 0.001f); HuSprPosSet(temp_r29->unk_00[0], 0, 0.0f, 64.0f); @@ -832,7 +832,7 @@ static void FallMGType(bitcopy* arg0, omObjData* arg1) { temp_r31 = arg0->unk_0C; temp_r30 = sp8[mgType]; if (arg0->unk_02 == 0) { - HuSprAttrReset(temp_r31->unk_00[0], temp_r30, 4); + HuSprAttrReset(temp_r31->unk_00[0], temp_r30, HUSPR_ATTR_DISPOFF); temp_r31->unk_1C[0][temp_r30].y = -284.0f; temp_r31->unk_1C[1][temp_r30].y = -128.0f; arg0->unk_02 = 1; @@ -872,7 +872,7 @@ static void LuckyMGFall(bitcopy* arg0, omObjData* arg1) { temp_r27 = &temp_r29->unk_1C[0][temp_r24]; switch (arg0->unk_02) { case 0: - HuSprAttrReset(temp_r29->unk_00[0], 4, 4); + HuSprAttrReset(temp_r29->unk_00[0], 4, HUSPR_ATTR_DISPOFF); temp_r28->y = -284.0f; temp_r25->y = -128.0f; arg0->unk_02 = 1; @@ -889,7 +889,7 @@ static void LuckyMGFall(bitcopy* arg0, omObjData* arg1) { case 2: temp_r27->y += 10.0f; if (328.0f < temp_r27->y) { - HuSprAttrReset(temp_r29->unk_00[0], temp_r24, 4); + HuSprAttrReset(temp_r29->unk_00[0], temp_r24, HUSPR_ATTR_DISPOFF); temp_r26 = (bitcopy*) mgSetupObj->work; temp_r26->field00_bit1 = 7; temp_r26->unk_02 = 0; @@ -935,8 +935,8 @@ static void UpdateLuckyValue(bitcopy* arg0, omObjData* arg1) { temp_r27 = arg0->unk_0C; switch (arg0->unk_02) { case 0: - HuSprAttrReset(temp_r27->unk_00[0], 8, 4); - HuSprAttrReset(temp_r27->unk_00[0], 9, 4); + HuSprAttrReset(temp_r27->unk_00[0], 8, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(temp_r27->unk_00[0], 9, HUSPR_ATTR_DISPOFF); HuSprAttrSet(temp_r27->unk_00[0], 8, 8); HuSprAttrSet(temp_r27->unk_00[0], 9, 8); HuSprPosSet(temp_r27->unk_00[0], 8, 0.0f, 0.0f); @@ -1042,10 +1042,10 @@ static void UpdateMGList(bitcopy* arg0, omObjData* arg1) { temp_r24 = arg0->unk_0C; temp_r22 = mgType + 5; - switch (arg0->unk_02) { /* irregular */ + switch (arg0->unk_02) { case 0: HuSprAttrSet(temp_r24->unk_00[0], temp_r22, 8); - HuSprAttrReset(temp_r24->unk_00[0], temp_r22, 4); + HuSprAttrReset(temp_r24->unk_00[0], temp_r22, HUSPR_ATTR_DISPOFF); HuSprPosSet(temp_r24->unk_00[0], temp_r22, 0.0f, 32.0f); HuSprScaleSet(temp_r24->unk_00[0], temp_r22, 0.001f, 0.001f); arg0->unk_04 = 0; @@ -1084,11 +1084,11 @@ static void UpdateMGList(bitcopy* arg0, omObjData* arg1) { for (var_r23 = 0; var_r23 < arg0->field01_bit0; var_r23++) { HuWinDispOn(activeMG[var_r23].unk_00); } - HuSprAttrReset(temp_r24->unk_00[0], 0xA, 4); + HuSprAttrReset(temp_r24->unk_00[0], 0xA, HUSPR_ATTR_DISPOFF); HuSprAttrSet(temp_r24->unk_00[0], 0xA, 8); HuSprPosSet(temp_r24->unk_00[0], 0xA, -148.0f, cursorYTbl[0]); temp_r18 = &hiliteColTbl[mgType]; - HuSprAttrReset(temp_r24->unk_00[0], 0xC, 4); + HuSprAttrReset(temp_r24->unk_00[0], 0xC, HUSPR_ATTR_DISPOFF); HuSprPosSet(temp_r24->unk_00[0], 0xC, 0.0f, hiliteYTbl[0]); HuSprTPLvlSet(temp_r24->unk_00[0], 0xC, 0.7f); HuSprScaleSet(temp_r24->unk_00[0], 0xC, 32.0f, 3.5f); @@ -1158,10 +1158,10 @@ static void UpdateMGList(bitcopy* arg0, omObjData* arg1) { hiliteTimer = 0; } if (hiliteShowF != 0) { - HuSprAttrReset(temp_r24->unk_00[0], 0xC, 4); + HuSprAttrReset(temp_r24->unk_00[0], 0xC, HUSPR_ATTR_DISPOFF); return; } - HuSprAttrSet(temp_r24->unk_00[0], 0xC, 4); + HuSprAttrSet(temp_r24->unk_00[0], 0xC, HUSPR_ATTR_DISPOFF); return; case 5: if (arg0->unk_03 < 0x5A) { diff --git a/src/game/board/pause.c b/src/game/board/pause.c index 4b5d5401..34fcc55d 100755 --- a/src/game/board/pause.c +++ b/src/game/board/pause.c @@ -717,9 +717,9 @@ static void InitPauseQuit(omObjData *arg0, ConfigWork *arg1) { SetBoxVisible(1); var_f31 = 0.5f; BoardModelScaleSet(boxModelID[7], var_f31, var_f31, var_f31); - HuSprAttrReset(pauseCursorPos, 0, 4); + HuSprAttrReset(pauseCursorPos, 0, HUSPR_ATTR_DISPOFF); if (GWPartyGet() == 0) { - HuSprAttrReset(pauseCursorPos, 1, 4); + HuSprAttrReset(pauseCursorPos, 1, HUSPR_ATTR_DISPOFF); } break; } @@ -822,7 +822,7 @@ static void ScrollInPadConfig(omObjData *arg0, ConfigWork *arg1) { s32 i; if (arg1->unk07 == 0) { - HuSprAttrReset(pauseCursorPos, 0, 4); + HuSprAttrReset(pauseCursorPos, 0, HUSPR_ATTR_DISPOFF); if (arg1->unk00_field2 != 0) { for (i = 0; i < 8; i++) { if (i != 0) { @@ -1332,8 +1332,8 @@ static s32 WaitPauseInput(void) { } HuWinDispOn(controlWin); SetBoxVisible(0); - HuSprAttrReset(pauseSprGrp, 0, 4); - HuSprAttrSet(pauseCursorPos, 0, 4); + HuSprAttrReset(pauseSprGrp, 0, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(pauseCursorPos, 0, HUSPR_ATTR_DISPOFF); PauseCreateNumber(0, GWSystem.turn); PauseCreateNumber(1, GWSystem.max_turn); HuPrcSleep(4); @@ -1376,15 +1376,15 @@ static void ShowPauseConfig(void) { HuWinDispOn(settingsControlWin); HuWinDispOn(settingsWin); SetBoxVisible(1); - HuSprAttrReset(pauseCursorPos, 0, 4); + HuSprAttrReset(pauseCursorPos, 0, HUSPR_ATTR_DISPOFF); BoardModelVisibilitySet(hostMdl, 1); if (GWPartyGet() == 0) { var_f31 = boxPosTbl[0][0]; var_f30 = boxPosTbl[0][1]; HuSprPosSet(pauseCursorPos, 1, var_f31, var_f30); - HuSprAttrReset(pauseCursorPos, 1, 4); + HuSprAttrReset(pauseCursorPos, 1, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrSet(pauseCursorPos, 1, 4); + HuSprAttrSet(pauseCursorPos, 1, HUSPR_ATTR_DISPOFF); } while (configObj) { HuPrcVSleep(); @@ -1434,19 +1434,19 @@ static void ShowPadConfigSprite(s32 arg0) { for (i = 0; i < 4; i++) { temp_r31 = GWPlayer[i].port; if (arg0 != 0) { - HuSprAttrReset(padConfigSprGrp, temp_r31, 4); - HuSprAttrReset(padConfigSprGrp, temp_r31 + 4, 4); - HuSprAttrReset(padConfigSprGrp, temp_r31 + 8, 4); + HuSprAttrReset(padConfigSprGrp, temp_r31, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(padConfigSprGrp, temp_r31 + 4, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(padConfigSprGrp, temp_r31 + 8, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrSet(padConfigSprGrp, temp_r31, 4); - HuSprAttrSet(padConfigSprGrp, temp_r31 + 4, 4); - HuSprAttrSet(padConfigSprGrp, temp_r31 + 8, 4); + HuSprAttrSet(padConfigSprGrp, temp_r31, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(padConfigSprGrp, temp_r31 + 4, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(padConfigSprGrp, temp_r31 + 8, HUSPR_ATTR_DISPOFF); } } if (arg0 != 0) { - HuSprAttrReset(padConfigSprGrp, 12, 4); + HuSprAttrReset(padConfigSprGrp, 12, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrSet(padConfigSprGrp, 12, 4); + HuSprAttrSet(padConfigSprGrp, 12, HUSPR_ATTR_DISPOFF); } } diff --git a/src/game/board/player.c b/src/game/board/player.c index c54b318e..96722477 100644 --- a/src/game/board/player.c +++ b/src/game/board/player.c @@ -2127,15 +2127,15 @@ void BoardRollDispSet(s32 arg0) if (arg0 != 0) { temp_r31->field00_bit1 = 1; if ((var_r30 == 1) && (GWPlayer[temp_r31->unk_02].roll / 10 == 0)) { - HuSprAttrSet(temp_r31->unk_04, var_r30, 4); + HuSprAttrSet(temp_r31->unk_04, var_r30, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrReset(temp_r31->unk_04, var_r30, 4); + HuSprAttrReset(temp_r31->unk_04, var_r30, HUSPR_ATTR_DISPOFF); } } else { temp_r31->field00_bit1 = 0; - HuSprAttrSet(temp_r31->unk_04, var_r30, 4); + HuSprAttrSet(temp_r31->unk_04, var_r30, HUSPR_ATTR_DISPOFF); } } UpdateRollSprite(rollObj); @@ -2163,7 +2163,7 @@ static void UpdateRollSprite(omObjData *arg0) for (var_r30 = 0; var_r30 < 2; var_r30++) { if (((var_r30 == 1) && (sp14[1] == 0)) || (temp_r31->field00_bit1 == 0)) { - HuSprAttrSet(temp_r31->unk_04, var_r30, 4); + HuSprAttrSet(temp_r31->unk_04, var_r30, HUSPR_ATTR_DISPOFF); } else { if ((sp14[1] == 0) && (var_r30 == 0)) { @@ -2173,7 +2173,7 @@ static void UpdateRollSprite(omObjData *arg0) sp1C.x = spC[var_r30]; } sp1C.y = (HU_DISP_HEIGHTF * 176) / 480; - HuSprAttrReset(temp_r31->unk_04, var_r30, 4); + HuSprAttrReset(temp_r31->unk_04, var_r30, HUSPR_ATTR_DISPOFF); HuSprBankSet(temp_r31->unk_04, var_r30, sp14[var_r30]); HuSprPosSet(temp_r31->unk_04, var_r30, sp1C.x, sp1C.y); } diff --git a/src/game/board/ui.c b/src/game/board/ui.c index 4259f29d..ff2a9066 100755 --- a/src/game/board/ui.c +++ b/src/game/board/ui.c @@ -453,10 +453,10 @@ void BoardStatusHammerShowSet(s32 arg0, s32 arg1) { if (temp_r31->unk00_bit6) { if (arg1 != 0) { - HuSprAttrSet(temp_r31->unk02, 0x10, 2); + HuSprAttrSet(temp_r31->unk02, 0x10, HUSPR_ATTR_LOOP); } else { - HuSprAttrReset(temp_r31->unk02, 0x10, 2); - HuSprAttrSet(temp_r31->unk02, 0x10, 1); + HuSprAttrReset(temp_r31->unk02, 0x10, HUSPR_ATTR_LOOP); + HuSprAttrSet(temp_r31->unk02, 0x10, HUSPR_ATTR_NOANIM); } } } @@ -618,15 +618,15 @@ static s32 UpdateBoardStatus(void) { temp_r27 = GWPlayer[i].items[j]; if (temp_r27 != -1 && temp_r31->unk00_bit5) { UpdateStatusItem(temp_r31, j, temp_r27); - HuSprAttrReset(temp_r31->unk02, j + 0xD, 4); + HuSprAttrReset(temp_r31->unk02, j + 0xD, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrSet(temp_r31->unk02, j + 0xD, 4); + HuSprAttrSet(temp_r31->unk02, j + 0xD, HUSPR_ATTR_DISPOFF); } } if (GWPlayer[i].com) { - HuSprAttrReset(temp_r31->unk02, 0xC, 4); + HuSprAttrReset(temp_r31->unk02, 0xC, HUSPR_ATTR_DISPOFF); } else { - HuSprAttrSet(temp_r31->unk02, 0xC, 4); + HuSprAttrSet(temp_r31->unk02, 0xC, HUSPR_ATTR_DISPOFF); } temp_r28 = statusColTbl[GWPlayer[i].color]; HuSprColorSet(temp_r31->unk02, 0, temp_r28[0], temp_r28[1], temp_r28[2]); @@ -685,7 +685,7 @@ void BoardSpriteDigitUpdate(s16 arg0, s16 arg1, s32 arg2) { } else { HuSprBankSet(arg0, arg1 + 1, temp_r28); HuSprBankSet(arg0, arg1, temp_r27); - HuSprAttrReset(arg0, arg1, 4); + HuSprAttrReset(arg0, arg1, HUSPR_ATTR_DISPOFF); } } @@ -1616,8 +1616,8 @@ static void UpdateItemPickGfx(omObjData *arg0) { if (!temp_r30->unk00_bit7) { temp_r30->unk00_bit3 = 1; HuSprBankSet(temp_r30->unk04, 0, 1); - HuSprAttrSet(temp_r30->unk04, 0, 2); - HuSprAttrReset(temp_r30->unk04, 0, 1); + HuSprAttrSet(temp_r30->unk04, 0, HUSPR_ATTR_LOOP); + HuSprAttrReset(temp_r30->unk04, 0, HUSPR_ATTR_NOANIM); arg0->func = UpdateItemPickup; HuWinDispOff(temp_r30->unk06); } else { diff --git a/src/game/board/view.c b/src/game/board/view.c index 72d5b4b3..29118967 100755 --- a/src/game/board/view.c +++ b/src/game/board/view.c @@ -577,15 +577,15 @@ static void UpdateOverheadView(omObjData *arg0) { BoardModelVisibilitySet(temp_r31->unk04, 0); } else if (temp_r31->unk01 != 0) { if (i != 4) { - HuSprAttrReset(temp_r31->unk02, i, 4); + HuSprAttrReset(temp_r31->unk02, i, HUSPR_ATTR_DISPOFF); } - HuSprAttrReset(temp_r31->unk02, var_r28, 4); + HuSprAttrReset(temp_r31->unk02, var_r28, HUSPR_ATTR_DISPOFF); BoardModelVisibilitySet(temp_r31->unk04, 1); } else { if (i != 4) { - HuSprAttrSet(temp_r31->unk02, i, 4); + HuSprAttrSet(temp_r31->unk02, i, HUSPR_ATTR_DISPOFF); } - HuSprAttrSet(temp_r31->unk02, var_r28, 4); + HuSprAttrSet(temp_r31->unk02, var_r28, HUSPR_ATTR_DISPOFF); BoardModelVisibilitySet(temp_r31->unk04, 0); } } diff --git a/src/game/thpmain.c b/src/game/thpmain.c index 721558ba..d31d4639 100755 --- a/src/game/thpmain.c +++ b/src/game/thpmain.c @@ -161,7 +161,7 @@ static void THPTestProc(void) Hu3DModelAttrReset(SimpleControl.unk19E, HU3D_ATTR_DISPOFF); } else { - HuSprAttrReset(SimpleControl.unk19E, 0, 4); + HuSprAttrReset(SimpleControl.unk19E, 0, HUSPR_ATTR_DISPOFF); } while (1) { if (THPStat == 2) { From 03d811cbedf0c44592906d498327afa8a980344a Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sat, 4 Jan 2025 01:12:54 -0800 Subject: [PATCH 097/178] Matched last function in m457Dll --- config/GMPE01_00/rels/m457Dll/symbols.txt | 226 +++++++++++----------- configure.py | 2 +- src/REL/m457Dll/main.c | 2 +- src/REL/m458Dll/main.c | 17 +- 4 files changed, 117 insertions(+), 130 deletions(-) diff --git a/config/GMPE01_00/rels/m457Dll/symbols.txt b/config/GMPE01_00/rels/m457Dll/symbols.txt index 05be3e42..08eeab17 100644 --- a/config/GMPE01_00/rels/m457Dll/symbols.txt +++ b/config/GMPE01_00/rels/m457Dll/symbols.txt @@ -13,114 +13,114 @@ ObjectSetup = .text:0x00007664; // type:function size:0x480 fn_1_7AE4 = .text:0x00007AE4; // type:function size:0x9C _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 data:4byte -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x64 -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 data:4byte -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 data:4byte -lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 data:4byte -lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x14 data:4byte -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:4byte -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:4byte -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x40 data:4byte -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x40 data:4byte -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x5C -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x5C -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0xC data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0xC data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:byte -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x64 scope:local +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 scope:local data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 scope:local data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x5C scope:local +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x5C scope:local +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0xC scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0xC scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 scope:local data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 scope:local data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 scope:local data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x5C lbl_1_data_5C = .data:0x0000005C; // type:object size:0x5C data:4byte lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 @@ -139,8 +139,8 @@ lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x4 data:4byte lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x4 data:4byte lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 data:string -lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 scope:local data:string +lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 scope:local data:string jumptable_1_data_2C8 = .data:0x000002C8; // type:object size:0x2C scope:local jumptable_1_data_2F4 = .data:0x000002F4; // type:object size:0x48 scope:local lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte @@ -149,9 +149,9 @@ lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x20 scope:local jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local -lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 data:string -lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 data:string -lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 data:string +lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 scope:local data:string +lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 scope:local data:string +lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 scope:local data:string lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index fc0d2325..d02c2cb0 100644 --- a/configure.py +++ b/configure.py @@ -1273,7 +1273,7 @@ config.libs = [ Rel( "m457Dll", # Bowser Wrestling objects={ - Object(NonMatching, "REL/m457Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m457Dll/main.c"), }, ), Rel( diff --git a/src/REL/m457Dll/main.c b/src/REL/m457Dll/main.c index ee748d30..69ecd523 100755 --- a/src/REL/m457Dll/main.c +++ b/src/REL/m457Dll/main.c @@ -1134,7 +1134,7 @@ void fn_1_2CC4(omObjData* arg0) { temp_f25 = lbl_1_data_28C.unk0C; var_f21 *= lbl_1_data_28C.unk04 * 2; temp_f25 *= lbl_1_data_28C.unk04 * 2; - lbl_1_data_28C.unk00 = lbl_1_data_28C.unk00 == 0; + lbl_1_data_28C.unk00 = !lbl_1_data_28C.unk00; lbl_1_data_28C.unk04 = (lbl_1_data_28C.unk04 > 24) ? 23 : (lbl_1_data_28C.unk04 - 1 > 0) ? (lbl_1_data_28C.unk04 - 1) : 0; Center.x = 0.0f; diff --git a/src/REL/m458Dll/main.c b/src/REL/m458Dll/main.c index f59e3649..a813647a 100644 --- a/src/REL/m458Dll/main.c +++ b/src/REL/m458Dll/main.c @@ -777,8 +777,6 @@ void fn_1_350C(omObjData *var_r27) ModelData *var_r28; ModelData *var_r26; s32 var_r25; - s32 var_r24; - s32 var_r23; for (var_r31 = 0; var_r31 < 2; var_r31++) { spC[var_r31] = (&lbl_1_bss_BC)[var_r31]->data; @@ -960,19 +958,8 @@ void fn_1_350C(omObjData *var_r27) var_f25 *= lbl_1_data_114.unk_04 * 2; var_f26 *= lbl_1_data_114.unk_04 * 2; lbl_1_data_114.unk_00 = !lbl_1_data_114.unk_00; - if (lbl_1_data_114.unk_04 > 0x18) { - var_r24 = 0x17; - } - else { - if ((lbl_1_data_114.unk_04 - 1) > 0) { - var_r23 = lbl_1_data_114.unk_04 - 1; - } - else { - var_r23 = 0; - } - var_r24 = var_r23; - } - lbl_1_data_114.unk_04 = var_r24; + lbl_1_data_114.unk_04 = (lbl_1_data_114.unk_04 > 24) ? 23 + : (lbl_1_data_114.unk_04 - 1 > 0) ? (lbl_1_data_114.unk_04 - 1) : 0; Center.x = 0.0f; Center.y = 100.0f + var_f26; } From d95b1af697d56bf4e913619684fbd505c9747922 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sat, 4 Jan 2025 18:52:39 -0800 Subject: [PATCH 098/178] Matched m463Dll (US); applying some ext_math macros (#506) --- config/GMPE01_00/rels/m463Dll/splits.txt | 5 +- config/GMPE01_00/rels/m463Dll/symbols.txt | 218 ++-- configure.py | 2 +- include/game/hsfanim.h | 2 +- src/REL/m409Dll/player.c | 18 +- src/REL/m463Dll/main.c | 1423 +++++++++++++++++++++ src/game/board/last5.c | 6 +- src/game/board/player.c | 24 +- src/game/board/space.c | 12 +- src/game/board/view.c | 10 +- src/game/minigame_seq.c | 124 +- 11 files changed, 1637 insertions(+), 207 deletions(-) create mode 100755 src/REL/m463Dll/main.c diff --git a/config/GMPE01_00/rels/m463Dll/splits.txt b/config/GMPE01_00/rels/m463Dll/splits.txt index ceb93b07..f1310070 100644 --- a/config/GMPE01_00/rels/m463Dll/splits.txt +++ b/config/GMPE01_00/rels/m463Dll/splits.txt @@ -6,8 +6,11 @@ Sections: .data type:data align:8 .bss type:bss align:8 +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + REL/m463Dll/main.c: - .text start:0x00000000 end:0x000066B8 + .text start:0x000000A0 end:0x000066B8 .rodata start:0x00000000 end:0x00000414 .data start:0x00000000 end:0x0000024D .bss start:0x00000000 end:0x000005AC diff --git a/config/GMPE01_00/rels/m463Dll/symbols.txt b/config/GMPE01_00/rels/m463Dll/symbols.txt index 87b16e8f..351f689b 100644 --- a/config/GMPE01_00/rels/m463Dll/symbols.txt +++ b/config/GMPE01_00/rels/m463Dll/symbols.txt @@ -8,123 +8,123 @@ fn_1_45F8 = .text:0x000045F8; // type:function size:0xDA8 fn_1_53A0 = .text:0x000053A0; // type:function size:0x4B0 fn_1_5850 = .text:0x00005850; // type:function size:0x854 fn_1_60A4 = .text:0x000060A4; // type:function size:0x98 -fn_1_613C = .text:0x0000613C; // type:function size:0x460 +ObjectSetup = .text:0x0000613C; // type:function size:0x460 fn_1_659C = .text:0x0000659C; // type:function size:0x11C _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC data:4byte -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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:0x8 data:double -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_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:4byte -lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x94 -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:4byte -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x50 -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x70 -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x24 data:4byte -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x24 data:4byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x10 data:4byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0xC data:4byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0xC data:4byte -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x1 data:byte -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +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:0x90 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x50 scope:local +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x70 scope:local +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0xC scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0xC scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x24 lbl_1_data_24 = .data:0x00000024; // type:object size:0x24 lbl_1_data_48 = .data:0x00000048; // type:object size:0x24 lbl_1_data_6C = .data:0x0000006C; // type:object size:0x24 lbl_1_data_90 = .data:0x00000090; // type:object size:0x24 -lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x9 -lbl_1_data_BD = .data:0x000000BD; // type:object size:0xB +lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x9 data:byte +lbl_1_data_BD = .data:0x000000BD; // type:object size:0x9 data:byte lbl_1_data_C8 = .data:0x000000C8; // type:object size:0x24 lbl_1_data_EC = .data:0x000000EC; // type:object size:0x24 lbl_1_data_110 = .data:0x00000110; // type:object size:0x24 -lbl_1_data_134 = .data:0x00000134; // type:object size:0x18 data:float +lbl_1_data_134 = .data:0x00000134; // type:object size:0x18 data:4byte lbl_1_data_14C = .data:0x0000014C; // type:object size:0x2 data:2byte lbl_1_data_14E = .data:0x0000014E; // type:object size:0x2 data:2byte lbl_1_data_150 = .data:0x00000150; // type:object size:0x4 data:4byte -lbl_1_data_154 = .data:0x00000154; // type:object size:0x24 data:4byte -lbl_1_data_178 = .data:0x00000178; // type:object size:0x9 data:string -lbl_1_data_181 = .data:0x00000181; // type:object size:0x3 data:string +lbl_1_data_154 = .data:0x00000154; // type:object size:0x4 data:4byte +lbl_1_data_178 = .data:0x00000178; // type:object size:0x9 scope:local data:string +lbl_1_data_181 = .data:0x00000181; // type:object size:0x3 scope:local data:string lbl_1_data_184 = .data:0x00000184; // type:object size:0x4 data:4byte jumptable_1_data_188 = .data:0x00000188; // type:object size:0x1C scope:local lbl_1_data_1A4 = .data:0x000001A4; // type:object size:0x10 @@ -134,24 +134,24 @@ lbl_1_data_1BC = .data:0x000001BC; // type:object size:0x4 data:float lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x4 data:float jumptable_1_data_1C4 = .data:0x000001C4; // type:object size:0x20 scope:local lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x2C -lbl_1_data_210 = .data:0x00000210; // type:object size:0x19 data:string -lbl_1_data_229 = .data:0x00000229; // type:object size:0x24 data:string +lbl_1_data_210 = .data:0x00000210; // type:object size:0x19 scope:local data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x8 data:2byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x2 data:2byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:float lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:float lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x4 data:4byte lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x8 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index d02c2cb0..755bf193 100644 --- a/configure.py +++ b/configure.py @@ -1312,7 +1312,7 @@ config.libs = [ Rel( "m463Dll", # Panel Panic 9 Player objects={ - Object(NonMatching, "REL/m463Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m463Dll/main.c"), }, ), Rel( diff --git a/include/game/hsfanim.h b/include/game/hsfanim.h index db94ac1e..198a4fc6 100644 --- a/include/game/hsfanim.h +++ b/include/game/hsfanim.h @@ -69,7 +69,7 @@ typedef struct { /* 0x2C */ s16 unk2C; /* 0x2E */ GXColor unk2E[4]; /* 0x3E */ GXColor unk3E[4]; -} HsfanimStruct00; // Size unknown +} HsfanimStruct00; // Size (min:0x4E, max:0x50) typedef struct { /* 0x00 */ u16 unk00; diff --git a/src/REL/m409Dll/player.c b/src/REL/m409Dll/player.c index fcf6a8c1..26330990 100644 --- a/src/REL/m409Dll/player.c +++ b/src/REL/m409Dll/player.c @@ -7,7 +7,7 @@ #include "game/hsfmotion.h" #include "game/pad.h" #include "game/sprite.h" -#include "math.h" +#include "ext_math.h" // bss omObjData *lbl_1_bss_3A0[4]; @@ -254,8 +254,8 @@ void fn_1_7344(omObjData *arg0) lbl_1_bss_104 = temp_r31->unk0 + 1; } if (temp_r31->unk60 == 0) { - temp_f29 = (180.0 * (atan2((temp_r30->unk0.x - temp_r31->unk24.x), (temp_r30->unk0.z - temp_r31->unk24.z)) / M_PI)); - temp_f30 = (180.0 * (atan2((temp_r31->unk24.y - temp_r30->unk0.y), (temp_r31->unk24.z - temp_r30->unk0.z)) / M_PI)); + temp_f29 = atan2d(temp_r30->unk0.x - temp_r31->unk24.x, temp_r30->unk0.z - temp_r31->unk24.z); + temp_f30 = atan2d(temp_r31->unk24.y - temp_r30->unk0.y, temp_r31->unk24.z - temp_r30->unk0.z); temp_f30 *= (1.0f - (0.015f * ABS(temp_f30))); temp_r31->unk3C.x = fn_1_AD40(temp_r31->unk3C.x, temp_f30, 0.5f); temp_r31->unk3C.y = fn_1_AD40(temp_r31->unk3C.y, temp_f29, 0.5f); @@ -524,7 +524,7 @@ void fn_1_8838(unkStruct8 *arg0) if (temp_r31->unk74 > 90.0f) { temp_r31->unk74 = 90.0f; } - temp_f31 = sin((M_PI * temp_r31->unk74) / 180.0); + temp_f31 = sind(temp_r31->unk74); temp_f30 = cosd(temp_r31->unk74); sp18.x = temp_r30->unk0.x - temp_r31->unk58.x; sp18.y = temp_r30->unk0.y - temp_r31->unk58.y; @@ -558,7 +558,7 @@ void fn_1_8838(unkStruct8 *arg0) if (temp_r31->unk74 > 90.0f) { temp_r31->unk74 = 90.0f; } - temp_f31 = sin((M_PI * temp_r31->unk74) / 180.0); + temp_f31 = sind(temp_r31->unk74); sp18.x = temp_r29->unkC.x - temp_r31->unk58.x; sp18.y = temp_r29->unkC.y - temp_r31->unk58.y; sp18.z = temp_r29->unkC.z - temp_r31->unk58.z; @@ -925,10 +925,10 @@ void fn_1_962C(omObjData *arg0) fn_1_A584(var_r31); Hu3DModelPosSet(var_r31->unk0, var_r31->unkC.x, var_r31->unkC.y, var_r31->unkC.z); - var_f31 = sin((var_r31->unk4C * M_PI) / 180.0); + var_f31 = sind(var_r31->unk4C); var_r31->unk4C += 3.0f; Hu3DModelRotSet( - var_r31->unk0, 8.0 * sin((var_r31->unk4C * 0.3 * M_PI) / 180.0), var_r31->unk4C * 0.05f, (-var_r31->unk18.z * 0.25f) + (var_f31 * 8.0f)); + var_r31->unk0, 8.0 * sind(var_r31->unk4C * 0.3), var_r31->unk4C * 0.05f, (-var_r31->unk18.z * 0.25f) + (var_f31 * 8.0f)); } if (lbl_1_bss_108 == 2 && var_r27 >= arg0->work[0]) { @@ -977,7 +977,7 @@ s32 fn_1_A584(unkStruct10 *arg0) arg0->unkC.x += sp14.x; arg0->unkC.y += sp14.y; arg0->unkC.z += sp14.z; - var_f31 = (180.0 * (atan2(sp14.x, sp14.y) / M_PI)); + var_f31 = atan2d(sp14.x, sp14.y); if (var_f31 > 180.0f) { var_f31 -= 360.0f; } @@ -1000,7 +1000,7 @@ s32 fn_1_A584(unkStruct10 *arg0) var_r31->unkC.x += sp8.x * (temp_f29 - temp_f30); var_r31->unkC.y += sp8.y * (temp_f29 - temp_f30); var_r31->unkC.z += sp8.z * (temp_f29 - temp_f30); - var_f31 = (180.0 * (atan2(sp8.x, sp8.y) / M_PI)); + var_f31 = atan2d(sp8.x, sp8.y); if (var_f31 > 180.0f) { var_f31 -= 360.0f; } diff --git a/src/REL/m463Dll/main.c b/src/REL/m463Dll/main.c new file mode 100755 index 00000000..a964b9ca --- /dev/null +++ b/src/REL/m463Dll/main.c @@ -0,0 +1,1423 @@ +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" + +#include "ext_math.h" + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ float unk08; + /* 0x0C */ s32 unk0C; +} StructBss51C; // Size 0x10 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ float unk04[3]; +} StructBss35C; // Size 0x10 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x00 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ s32 unk20; + /* 0x24 */ s32 unk24; + /* 0x28 */ float unk28; + /* 0x2C */ float unk2C; + /* 0x30 */ char unk30[4]; + /* 0x34 */ float unk34; + /* 0x38 */ s32 unk38; + /* 0x3C */ s32 unk3C; + /* 0x40 */ s32 unk40; + /* 0x44 */ s32 unk44; + /* 0x48 */ s32 unk48; + /* 0x48 */ s32 unk4C; + /* 0x50 */ s32 unk50; + /* 0x54 */ s16 unk54; + /* 0x56 */ char unk56[2]; + /* 0x58 */ s32 unk58; + /* 0x5C */ s32 unk5C; +} StructBss330Data; // Size 0x60 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ float unk08; + /* 0x0C */ float unk0C; + /* 0x10 */ float unk10; + /* 0x14 */ float unk14; +} StructData134; // Size 0x18 + +s16 fn_1_4474(void); +void fn_1_659C(omObjData* arg0); + +StructBss51C lbl_1_bss_51C[9]; +StructBss35C lbl_1_bss_35C[28]; +omObjData* lbl_1_bss_358; +omObjData* lbl_1_bss_354; +omObjData* lbl_1_bss_330[9]; +omObjData* lbl_1_bss_32C; +HsfanimStruct00 lbl_1_bss_5C[9]; +s32 lbl_1_bss_58; +s32 lbl_1_bss_54; +s32 lbl_1_bss_50; +char lbl_1_bss_4C[4]; // unused +s32 lbl_1_bss_48; +s32 lbl_1_bss_44; +Process* lbl_1_bss_40; +s32 lbl_1_bss_3C; +s32 lbl_1_bss_38; +s32 lbl_1_bss_34; +char lbl_1_bss_30[4]; // unused +float lbl_1_bss_2C; +float lbl_1_bss_28; +float lbl_1_bss_24; +float lbl_1_bss_20; +s32 lbl_1_bss_1C; +s32 lbl_1_bss_18; +s32 lbl_1_bss_14; +char lbl_1_bss_E[6]; // unused +s16 lbl_1_bss_C; +char lbl_1_bss_8[4]; // unused +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +s32 lbl_1_data_0[9] = { + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38) +}; + +s32 lbl_1_data_24[9] = { 0 }; + +s32 lbl_1_data_48[9] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 5), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 47), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 26), + DATA_MAKE_NUM(DATADIR_M458, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), +}; + +u32 lbl_1_data_6C[9] = { 0, 0, 0, 0, 0, 0, 0, 1, 0 }; + +u32 lbl_1_data_90[] = { + DATA_MAKE_NUM(DATADIR_BKOOPA, 8), + 0, + 0, + DATA_MAKE_NUM(DATADIR_BKOOPA, 10), + 0, + DATA_MAKE_NUM(DATADIR_M458, 42), + DATA_MAKE_NUM(DATADIR_M458, 40), + DATA_MAKE_NUM(DATADIR_M458, 41), + DATA_MAKE_NUM(DATADIR_M458, 39) +}; + +u8 lbl_1_data_B4[9] = { 0, 0, 0, 1, 1, 1, 0, 1, 1 }; +u8 lbl_1_data_BD[9] = { 0, 0, 0, 1, 1, 1, 0, 1, 1 }; +s32 lbl_1_data_C8[9] = { 8, 8, 8, 0, 0, 8, 8, 8, 8 }; +s32 lbl_1_data_EC[9] = { 0, 0, 0, 0, 3, 0, 0, 0, 0 }; +s32 lbl_1_data_110[9] = { 8, 8, 8, 8, 8, 8, 8, 8, 8 }; + +StructData134 lbl_1_data_134 = { 0 }; + +s16 lbl_1_data_14C = -1; +s16 lbl_1_data_14E = -1; +s32 lbl_1_data_150 = -1; +s32 lbl_1_data_154 = -1; + +// unused +float lbl_1_data_158[] = { -90.0f, 0.0f, 525.0f, 180.0f, 90.0f, 0.0f, 525.0f, 180.0f }; + +void fn_1_A0(void) { + if (HuPadBtnDown[0] & PAD_BUTTON_B) { + Center.x = lbl_1_bss_330[0]->trans.x; + Center.y = lbl_1_bss_330[0]->trans.y; + Center.z = lbl_1_bss_330[0]->trans.z; + } + Center.x += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_RIGHT) != 0) - ((HuPadBtn[0] & PAD_BUTTON_LEFT) != 0)); + Center.z -= 10.0 * (((HuPadBtn[0] & PAD_BUTTON_UP) != 0) - ((HuPadBtn[0] & PAD_BUTTON_DOWN) != 0)); + Center.y += 30.0 * ((HuPadTrigL[0] - HuPadTrigR[0]) / 128.0); + CZoom += 25.0 * (((HuPadBtn[0] & PAD_BUTTON_X) != 0) - ((HuPadBtn[0] & PAD_BUTTON_Y) != 0)); + CRot.y += HuPadSubStkX[0] / 16.0; + CRot.x += HuPadSubStkY[0] / -16.0; + print8(64, 392, 1.0f, "%f,%f,%f", Center.x, Center.y, Center.z); + print8(64, 408, 1.0f, "%f,%f,%f", CRot.x, CRot.y, CRot.z); + print8(64, 424, 1.0f, "%f", CZoom); +} + +s32 lbl_1_data_184 = -1; + +void fn_1_4C8(omObjData* arg0) { + ModelData* temp_r24; + ModelData* temp_r29; + float temp_f31; + float temp_f30; + float var_f28; + float temp_f27; + float temp_f26; + float temp_f25; + float var_f24; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + StructBss330Data* temp_r31; + s16 var_r28; + s32 temp_r27; + s32 var_r26; + s32 var_r25; + s32 var_r23; + s32 var_r22; + StructBss330Data* temp_r21; + s32 var_r20; + s32 var_r19; + StructBss330Data* temp_r18; + s32 var_r17; + float sp180[2]; + s32 spE0; + s32 spDC; + s32 spD8; + s32 spD4; + s32 spD0; + s32 spCC; + s32 spC8; + StructBss330Data* spC4; + s32 spC0; + s32 spBC; + StructBss330Data* spB8; + s32 spB4; + u32 spB0; + float spAC; + s32 spA8; + s32 spA4; + s32 spA0; + StructBss330Data* sp9C; + ModelData* sp98; + float sp94; + float sp90; + s32 sp8C; + s32 sp88; + + temp_r31 = arg0->data; + var_f23 = 0.0f; + var_f22 = 0.0f; + var_f28 = 0.0f; + var_r22 = 0; + var_r28 = -1; + temp_r31->unk2C = temp_r31->unk34 = 0.0f; + if (lbl_1_bss_50 == 1005 && temp_r31->unk18 == 3 && temp_r31->unk1C >= 360) { + if (temp_r31->unk1C == 360) { + temp_r31->unk14 = rand8() % 15; + } + if (temp_r31->unk0C != -1) { + var_r22 = (HuPadBtnDown[temp_r31->unk0C] & PAD_BUTTON_A) ? 1 : 0; + } else { + temp_r31->unk14 += (temp_r31->unk14 < 0x10000); + if (temp_r31->unk14 == 30) { + var_r22 = 1; + } + } + } + if (temp_r31->unk00 < 4 && lbl_1_bss_50 == 1002) { + var_r26 = 0; + var_r25 = 0; + if (temp_r31->unk0C != -1) { + var_r26 = (HuPadStkX[temp_r31->unk0C] < -20) ? -1 + : (HuPadStkX[temp_r31->unk0C] > 20) ? 1 : 0; + var_r25 = (-HuPadStkY[temp_r31->unk0C] < -20) ? -1 + : (-HuPadStkY[temp_r31->unk0C] > 20) ? 1 : 0; + var_r22 = (HuPadBtnDown[temp_r31->unk0C] & PAD_BUTTON_A) ? 1 : 0; + } else { + if (lbl_1_bss_54 == 1) { + temp_r31->unk14 = rand8() % 64 + 30; + } + temp_r31->unk14 -= (temp_r31->unk14 > 0); + if (temp_r31->unk14 == 1) { + var_r26 = (temp_r31->unk3C > 0 ? -1 : 1) * (rand8() % 2); + var_r25 = (temp_r31->unk40 > 0 ? -1 : 1) * (rand8() % 2); + } + if (temp_r31->unk14 == 0) { + var_r22 = (rand8() % 64 == 1) ? 1 : 0; + } + } + if (lbl_1_bss_54 >= 50 || temp_r31->unk50 != 0) { + var_r26 = var_r25 = 0; + } + for (var_r17 = 0; var_r17 < 4; var_r17++) { + temp_r21 = lbl_1_bss_330[var_r17]->data; + spD0 = 0; + spCC = 0; + if (var_r17 != temp_r31->unk00) { + if (fabs(500.0 * temp_r31->unk3C - arg0->trans.x) < 10.0) { + spE0 = spDC = (arg0->trans.x < -250.0) ? -1 + : (arg0->trans.x > 250.0) ? 1 : 0; + } else { + spE0 = (arg0->trans.x < 0.0f) ? -1 : 0; + spDC = spE0 + 1; + } + if (fabs(500.0 * temp_r31->unk40 - arg0->trans.z) < 10.0) { + spD8 = spD4 = (arg0->trans.z < -250.0) ? -1 + : (arg0->trans.z > 250.0) ? 1 : 0; + } else { + spD8 = (arg0->trans.z < 0.0f) ? -1 : 0; + spD4 = spD8 + 1; + } + for (var_r20 = spE0; var_r20 <= spDC; var_r20++) { + for (var_r19 = spD8; var_r19 <= spD4; var_r19++) { + if (temp_r21->unk38 == (1 + var_r20 + var_r26) + (1 + var_r19 + var_r25) * 3) { + var_r26 = var_r25 = 0; + } + if (temp_r21->unk38 == (1 + var_r20 + var_r26) + (1 + var_r19) * 3) { + var_r26 = 0; + } + if (temp_r21->unk38 == (1 + var_r20) + (1 + var_r19 + var_r25) * 3) { + var_r25 = 0; + } + } + } + } + } + if (var_r26 * (500.0 * temp_r31->unk3C - arg0->trans.x) < 0.0) { + temp_r31->unk3C += var_r26; + } + if (fabs(500.0 * temp_r31->unk3C - arg0->trans.x) < 10.0 && var_r26 != 0 && temp_r31->unk3C + var_r26 >= -1 && temp_r31->unk3C + var_r26 <= 1) { + temp_r31->unk3C += var_r26; + } + var_f23 = ((500.0 * temp_r31->unk3C - arg0->trans.x) / 0.25) / 1.75; + if (var_r25 * (500.0 * temp_r31->unk40 - arg0->trans.z) < 0.0) { + temp_r31->unk40 += var_r25; + } + if (fabs(500.0 * temp_r31->unk40 - arg0->trans.z) < 10.0 && var_r25 != 0 && temp_r31->unk40 + var_r25 >= -1 && temp_r31->unk40 + var_r25 <= 1) { + temp_r31->unk40 += var_r25; + } + var_f22 = ((500.0 * temp_r31->unk40 - arg0->trans.z) / -0.25) / 1.75; + temp_r31->unk38 = (temp_r31->unk3C + 1) + (temp_r31->unk40 + 1) * 3; + } + if (temp_r31->unk18 == 0) { + if (lbl_1_bss_50 > (temp_r31->unk00 < 4 ? 1001 : 1003) && lbl_1_bss_50 < 1006) { + temp_f31 = 0.25 * var_f23; + temp_f30 = 0.25 * -var_f22; + { + Vec sp1A0 = { 0.0f, 0.0f, 0.0f }; + Mtx sp1D0; + + sp1A0.x = temp_f31; + sp1A0.z = temp_f30; + PSMTXRotRad(sp1D0, 'y', MTXDegToRad(CRot.y)); + PSMTXMultVec(sp1D0, &sp1A0, &sp1A0); + temp_f31 = sp1A0.x; + temp_f30 = sp1A0.z; + var_f28 = sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30); + if (var_f28 >= 0.5f) { + if (var_f28 < 10.0f) { + temp_r31->unk2C = temp_f31; + temp_r31->unk34 += temp_f30; + } else { + temp_f31 /= var_f28; + temp_f30 /= var_f28; + var_f28 = 10.0f; + temp_r31->unk2C = temp_f31 * var_f28; + temp_r31->unk34 = temp_f30 * var_f28; + } + temp_r31->unk28 = var_f28; + arg0->rot.y = atan2d(temp_r31->unk2C, temp_r31->unk34); + if (temp_r31->unk28 >= 8.0f) { + var_r28 = 2; + } else { + var_r28 = 2; + } + } else { + var_r28 = 0; + } + } + } + } + arg0->trans.x += 1.75f * temp_r31->unk2C; + arg0->trans.z += 1.75f * temp_r31->unk34; + switch (lbl_1_bss_50) { + case 1001: + case 1003: + if (lbl_1_bss_50 != (temp_r31->unk00 < 4 ? 1001 : 1003)) { + break; + } + if (lbl_1_bss_54 == 0) { + Hu3DModelAttrReset(arg0->model[0], HU3D_ATTR_DISPOFF); + if (temp_r31->unk00 < 4) { + temp_r31->unk38 = (temp_r31->unk00 == 0) ? 0 + : (temp_r31->unk00 == 1) ? 2 + : (temp_r31->unk00 == 2) ? 6 : 8; + temp_r31->unk3C = temp_r31->unk38 % 3 - 1; + temp_r31->unk40 = temp_r31->unk38 / 3 - 1; + arg0->trans.x = 500.0 * temp_r31->unk3C; + arg0->trans.z = 500.0 * temp_r31->unk40; + } else { + do { + temp_r31->unk38 = rand8() % 9; + for (spC8 = 0; spC8 < temp_r31->unk00; spC8++) { + spC4 = lbl_1_bss_330[spC8]->data; + if (temp_r31->unk38 == spC4->unk38) { + break; + } + } + } while (spC8 != temp_r31->unk00); + temp_r31->unk3C = temp_r31->unk38 % 3 - 1; + temp_r31->unk40 = temp_r31->unk38 / 3 - 1; + arg0->trans.x = 500.0 * temp_r31->unk3C; + arg0->trans.z = 500.0 * temp_r31->unk40; + } + } + if (lbl_1_bss_54 <= 30) { + if (temp_r31->unk08 == -1) { + Hu3DMotionTimeSet(arg0->model[0], 138.0f); + } + arg0->trans.y = 2400.0 * (1.0 - lbl_1_bss_54 / 30.0); + } + if (temp_r31->unk08 != -1 && lbl_1_bss_54 == 30) { + var_r28 = 4; + } + if (lbl_1_bss_54 == (temp_r31->unk08 != -1 ? 10 : 60) + 30) { + var_r28 = 0; + } + if (lbl_1_bss_54 == 30) { + lbl_1_data_134.unk04 += 50; + } + if (lbl_1_bss_54 == 30 && (temp_r31->unk00 == 0 || temp_r31->unk00 == 4)) { + HuAudFXPlay(0x33D); + } + break; + case 1002: + if (lbl_1_bss_54 != 0 && temp_r31->unk00 < 4 && (var_r22 != 0 || lbl_1_bss_0 == 0) && temp_r31->unk50 == 0) { + temp_r31->unk50 = 1; + lbl_1_bss_14++; + lbl_1_bss_51C[temp_r31->unk38].unk08 = 83.333336f; + } + if (temp_r31->unk00 != 0) { + break; + } + if (lbl_1_bss_54 == 0) { + lbl_1_bss_0 = 300; + lbl_1_data_14E = MGSeqTimerCreate(10); + HuWinMesMaxSizeGet(1, sp180, MAKE_MESSID(40, 25)); + lbl_1_bss_C = HuWinCreate(-10000.0f, 400.0f, sp180[0], sp180[1], 1); + HuWinBGTPLvlSet(lbl_1_bss_C, 0.0f); + HuWinMesSpeedSet(lbl_1_bss_C, 0); + HuWinMesSet(lbl_1_bss_C, MAKE_MESSID(40, 25)); + } + lbl_1_bss_0--; + if (lbl_1_data_14E != -1) { + MGSeqParamSet(lbl_1_data_14E, 1, (lbl_1_bss_0 + 59) / 60); + } + if (lbl_1_bss_14 >= 4) { + lbl_1_bss_54 = 50; + MGSeqParamSet(lbl_1_data_14E, 2, -1); + lbl_1_data_14E = -1; + HuWinExCleanup(lbl_1_bss_C); + } + if (lbl_1_bss_54 == 50) { + for (var_r23 = 0; var_r23 < 4; var_r23++) { + temp_r18 = lbl_1_bss_330[var_r23]->data; + if (!(fabs(500.0 * temp_r18->unk3C - lbl_1_bss_330[var_r23]->trans.x) < 1.0) + || !(fabs(500.0 * temp_r18->unk40 - lbl_1_bss_330[var_r23]->trans.z) < 1.0) + || temp_r18->unk20 != 0) + { + break; + } + } + if (var_r23 == 4) { + lbl_1_bss_54 = 60; + } + } + break; + case 1005: + if (temp_r31->unk5C != 0) { + if (arg0->trans.y < -15000.0f) { + Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); + } else { + arg0->trans.y -= 77.0f; + } + } + break; + case 1006: + if (lbl_1_bss_54 <= 1) { + Hu3DModelAttrSet(arg0->model[temp_r31->unk44 + 2], HU3D_ATTR_DISPOFF); + lbl_1_bss_51C[temp_r31->unk44].unk0C = 0; + } + if (lbl_1_bss_51C[temp_r31->unk38].unk0C != 0 || temp_r31->unk5C != 0) { + break; + } + if (lbl_1_bss_54 == 120) { + Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk38 + 1], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_54 == 153) { + Hu3DModelAttrSet(lbl_1_bss_32C->model[temp_r31->unk38 + 1], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_54 == 183) { + Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk38 + 1], HU3D_MOTATTR_PAUSE); + } + if (lbl_1_bss_54 == 210) { + spBC = 0; + for (spC0 = 0; spC0 < 9; spC0++) { + spB8 = lbl_1_bss_330[spC0]->data; + spBC += (lbl_1_bss_51C[spB8->unk38].unk0C == 0 && spB8->unk5C == 0); + } + var_r28 = 7; + HuAudFXPlayVol(0x7F7 + (temp_r31->unk08 != -1 ? temp_r31->unk08 : 8), 1651 / (spBC + 12)); + } + if (lbl_1_bss_54 >= 210 && lbl_1_bss_54 <= 214) { + s32 sp1AC[] = { 0, -12, -36, 0, 0, -12, -36, -48, 0 }; + float sp194[] = { 150.0f, 175.0f, 205.0f }; + float sp188[] = { 100.0f, 170.0f, 260.0f }; + + spB4 = temp_r31->unk38 % 3 - 1; + spB0 = temp_r31->unk38 / 3; + spAC = (lbl_1_bss_54 - 210) / 4.0; + temp_f26 = (lbl_1_bss_54 - 210) / 4.0; + temp_f26 = (temp_f26 > 1.0f) ? 1.0f : temp_f26; + espAttrReset(lbl_1_data_24[temp_r31->unk38], HUSPR_ATTR_DISPOFF); + espPosSet(lbl_1_data_24[temp_r31->unk38], + 290.0f + spB4 * sp194[spB0], + sp188[spB0] + 0.5 * (64.0f * (1.0f - spAC) * 0.5 + sp1AC[temp_r31->unk08 != -1 ? temp_r31->unk08 : 8])); + espScaleSet(lbl_1_data_24[temp_r31->unk38], 0.5 * temp_f26, 0.5 * temp_f26); + } + if (lbl_1_bss_54 == 270) { + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_PAUSE); + espAttrSet(lbl_1_data_24[temp_r31->unk38], HUSPR_ATTR_DISPOFF); + } + if (lbl_1_bss_54 == 290) { + spA0 = 0; + for (spA4 = 0; spA4 < 9; spA4++) { + sp9C = lbl_1_bss_330[spA4]->data; + spA0 += (lbl_1_bss_51C[sp9C->unk38].unk0C == 0 && sp9C->unk5C == 0); + } + spA8 = HuAudFXPlayVol(0x800 + (temp_r31->unk08 != -1 ? temp_r31->unk08 : 8), 1651 / (spA0 + 12)); + HuAudFXFadeOut(spA8, 0x9C4); + } + if (lbl_1_bss_54 >= 315) { + arg0->trans.y -= 77.0f; + } + break; + case 1007: + if (temp_r31->unk00 == lbl_1_bss_38) { + var_r28 = 8; + if (temp_r31->unk00 >= 4 && temp_r31->unk08 != -1 && lbl_1_bss_54 == 1) { + HuAudFXPlay(0x809 + temp_r31->unk08); + } + if (temp_r31->unk08 == -1 && lbl_1_bss_54 == 1) { + HuAudFXPlay(0x3A); + } + } else if (arg0->trans.y < -40000.0f) { + Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); + } else { + arg0->trans.y -= 77.0f; + } + break; + } + switch (temp_r31->unk18) { + case 0: + temp_r31->unk1C++; + break; + case 1: + temp_r31->unk1C++; + if (temp_r31->unk1C <= 60) { + arg0->rot.y = -180.0 * (temp_r31->unk1C / 60.0); + } else { + Hu3DMotionTimeSet(arg0->model[0], 120.0f); + var_r28 = 0; + temp_r31->unk18 = 0; + temp_r31->unk1C = 0; + } + break; + case 2: + temp_r31->unk1C++; + break; + case 3: + if (temp_r31->unk1C == 0) { + temp_r31->unk48 = 6; + temp_r31->unk4C = 0; + } + if (temp_r31->unk1C < 360) { + temp_r24 = &Hu3DData[arg0->model[1]]; + if (temp_r31->unk1C == 0) { + Hu3DModelAttrReset(arg0->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(arg0->model[1], arg0->trans.x, arg0->trans.y + 625.0f, arg0->trans.z); + Hu3DModelScaleSet(arg0->model[1], 0.1f, 0.1f, 0.1f); + Hu3DModelTPLvlSet(arg0->model[1], 1.0f); + temp_r31->unk4C = 0; + if (lbl_1_bss_18 == 0) { + HuAudFXPlay(0x7F4); + lbl_1_data_184 = HuAudFXPlay(0x7F3); + } + lbl_1_bss_18++; + } + temp_r24->rot.y = temp_r31->unk4C % 360; + temp_r31->unk4C += 25; + if (temp_r31->unk1C < 180) { + var_f20 = 0.0f; + var_f21 = 1.0f; + } else { + var_f20 = 1.0f; + var_f21 = 0.5f; + } + temp_r24->scale.x = var_f20 + var_f21 * sind((float) (temp_r31->unk1C % 180)); + temp_r24->scale.y = temp_r24->scale.z = temp_r24->scale.x; + if (temp_r31->unk1C < 180) { + temp_r31->unk1C += 6; + } else { + temp_r31->unk1C += 18; + } + if (temp_r31->unk1C >= 360) { + temp_r31->unk1C = 360; + Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + } + } else { + sp98 = &Hu3DData[arg0->model[1]]; + temp_r31->unk1C += 4; + if (temp_r31->unk1C > 720) { + temp_r31->unk1C -= 360; + } + sp98->pos.y += 0.2f * sind(temp_r31->unk1C - 360); + if (var_r22 != 0 || lbl_1_bss_0 == 0) { + lbl_1_bss_54 = 50; + temp_r31->unk18 = 4; + temp_r31->unk1C = 0; + var_r28 = 5; + } + } + break; + case 4: + temp_r31->unk1C++; + if (temp_r31->unk1C < 27) { + break; + } + temp_r29 = &Hu3DData[arg0->model[1]]; + temp_r27 = temp_r31->unk1C - 27; + if (temp_r27 == 0) { + if (temp_r31->unk04 != -1) { + omVibrate(temp_r31->unk04, 12, 4, 2); + } + temp_r31->unk48 = -1; + lbl_1_bss_18--; + if (lbl_1_bss_18 == 0 && lbl_1_data_184 != -1) { + HuAudFXStop(lbl_1_data_184); + lbl_1_data_184 = -1; + } + HuAudFXPlay(0x7F5); + } + if (temp_r27 == 8) { + if (temp_r31->unk54 == -1) { + lbl_1_bss_58 = temp_r31->unk00; + temp_r31->unk54 = fn_1_4474(); + Hu3DParManPosSet(temp_r31->unk54, temp_r29->pos.x, temp_r29->pos.y, temp_r29->pos.z); + temp_r31->unk58 = 150; + } + Hu3DModelAttrSet(arg0->model[1], HU3D_ATTR_DISPOFF); + } else if (temp_r27 > 8) { + if (temp_r31->unk20 == 5) { + if (Hu3DMotionTimeGet(arg0->model[0]) >= Hu3DMotionMaxTimeGet(arg0->model[0])) { + var_r28 = 0; + } + } + if (temp_r27 <= 28) { + temp_f27 = (temp_r27 - 8) / 10.0; + sp94 = (temp_r27 - 8) * 18; + temp_f27 = (temp_f27 > 1.0f) ? 2.5 : (2.5 * temp_f27); + Hu3DModelAttrReset(arg0->model[temp_r31->unk44 + 2], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(arg0->model[temp_r31->unk44 + 2], temp_r29->pos.x, temp_r29->pos.y, temp_r29->pos.z); + Hu3DModelScaleSet(arg0->model[temp_r31->unk44 + 2], temp_f27, temp_f27, temp_f27); + } + if (temp_r27 >= 45 && temp_r27 <= 65) { + temp_f25 = (temp_r27 - 45) / 5.0; + sp90 = (temp_r27 - 45) * 18; + temp_f25 = (temp_f25 > 1.0f) ? 1.0f : temp_f25; + temp_f25 = 0.0f; + Hu3DModelAttrReset(arg0->model[temp_r31->unk44 + 2], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(arg0->model[temp_r31->unk44 + 2], temp_r29->pos.x, temp_r29->pos.y - 30.0f * temp_f25, temp_r29->pos.z); + temp_r31->unk1C += 5; + } + if (temp_r27 == 158) { + temp_r31->unk18 = 0; + temp_r31->unk1C = 0; + } + } else { + if (temp_r27 < 4) { + temp_r29->pos.y += 10.0f + 0.5f * temp_r27; + temp_r29->scale.x += 0.1f * sind(4.0f * temp_r27); + temp_r29->scale.y = temp_r29->scale.z = temp_r29->scale.x; + } else { + var_f24 = 255 - (temp_r27 << 5); + var_f24 = var_f24 * (1.0f / 255); + Hu3DModelTPLvlSet(arg0->model[1], var_f24); + } + temp_r29->pos.y += -0.49f * temp_r27 * temp_r27; + } + break; + case 5: + if (temp_r31->unk1C == 0) { + Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk44 + 1], HU3D_MOTATTR_PAUSE); + lbl_1_bss_51C[temp_r31->unk44].unk0C = 0; + if (lbl_1_bss_35C->unk00 < 3) { + lbl_1_bss_35C->unk04[lbl_1_bss_35C->unk00] = 0.0f; + lbl_1_bss_35C->unk00++; + } + } + temp_r31->unk1C++; + if (temp_r31->unk1C == 60 && temp_r31->unk54 != -1) { + Hu3DParManKill(temp_r31->unk54); + temp_r31->unk54 = -1; + } + if (temp_r31->unk1C == 33) { + Hu3DModelAttrSet(lbl_1_bss_32C->model[temp_r31->unk44 + 1], HU3D_MOTATTR_PAUSE); + } + if (temp_r31->unk1C == 63) { + Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk44 + 1], HU3D_MOTATTR_PAUSE); + } + if (temp_r31->unk1C == 68 && lbl_1_bss_35C[1].unk00 < 3) { + lbl_1_bss_35C[1].unk04[lbl_1_bss_35C[1].unk00] = 0.0f; + lbl_1_bss_35C[1].unk00++; + } + if (temp_r31->unk1C == 130) { + temp_r31->unk18 = 0; + temp_r31->unk1C = 0; + } + break; + } + if ((temp_r31->unk18 == 3 || temp_r31->unk18 == 4) && temp_r31->unk48 >= 0) { + temp_r31->unk48++; + if (temp_r31->unk48 >= 6) { + sp88 = temp_r31->unk44; + for (sp8C = 0; sp8C < 50; sp8C++) { + do { + temp_r31->unk44 = rand8() % 9; + if (temp_r31->unk44 >= 9) { + break; + } + } while (lbl_1_bss_51C[temp_r31->unk44].unk0C == 0); + if (sp88 != temp_r31->unk44) { + break; + } + } + sp88 = temp_r31->unk44; + temp_r31->unk48 = 0; + Hu3DMotionTimeSet(arg0->model[1], 0.5 + sp88); + } + } + if (temp_r31->unk24 >= 0) { + var_r28 = temp_r31->unk24; + } + if (var_r28 >= 0 && var_r28 != temp_r31->unk20) { + Hu3DMotionShiftSet(arg0->model[0], + arg0->motion[var_r28], + lbl_1_data_EC[var_r28], + (temp_r31->unk08 != -1) ? lbl_1_data_C8[var_r28] : lbl_1_data_110[var_r28], + (var_r28 == 7) ? HU3D_MOTATTR_PAUSE + : (temp_r31->unk08 != -1 ? lbl_1_data_B4[var_r28] : lbl_1_data_BD[var_r28]) ? 0 + : HU3D_MOTATTR_LOOP); + temp_r31->unk20 = var_r28; + } + temp_r31->unk58 -= (temp_r31->unk58 > -1); + if (temp_r31->unk58 == 0) { + if (temp_r31->unk54 != -1) { + Hu3DParManKill(temp_r31->unk54); + temp_r31->unk54 = -1; + } + temp_r31->unk58 = -1; + } +} + +s32 lbl_1_data_1A4[4] = { 0 }; +s32 lbl_1_data_1B4 = -1; +float lbl_1_data_1B8 = 3500.0f; +float lbl_1_data_1BC = 100.0f; +float lbl_1_data_1C0 = -59.0f; + +void fn_1_3264(omObjData* arg0) { + float temp_f29; + float var_f31; + float temp_f26; + float temp_f27; + float temp_f28; + StructBss330Data* spC[9]; + ModelData* temp_r29; + ModelData* temp_r28; + s32 var_r27; + s32 i; + s32 j; + + for (i = 0; i < 9; i++) { + spC[i] = lbl_1_bss_330[i]->data; + } + lbl_1_bss_4++; + switch (lbl_1_bss_50) { + case 1002: + lbl_1_bss_34++; + lbl_1_bss_34 %= 360; + /* fallthrough */ + case 1003: + var_r27 = 0; + for (i = 0; i < 4; i++) { + if (spC[i]->unk50 == 0 || spC[i]->unk20 != 0) { + continue; + } + temp_r29 = &Hu3DData[lbl_1_bss_32C->model[spC[i]->unk38 + 1]]; + if (var_r27 == 0 && lbl_1_data_1A4[i] == 0) { + lbl_1_data_1A4[i] = 1; + var_r27 = 1; + HuAudFXPlay(0x7F6); + } + temp_r29->pos.y = 0.9 * temp_r29->pos.y + 0.1 * lbl_1_bss_51C[spC[i]->unk38].unk08; + lbl_1_bss_330[i]->trans.y = temp_r29->pos.y - -16.666666666666668; + lbl_1_bss_330[i]->rot.y = 0.0f; + } + break; + case 1004: + if (lbl_1_bss_54 <= 60) { + temp_f29 = lbl_1_bss_54 / 60.0; + temp_f29 = 1.0f - (1.0f - temp_f29) * (1.0f - temp_f29); + if (lbl_1_bss_54 == 0) { + lbl_1_bss_51C[spC[0]->unk38].unk08 = -16.666666f; + } + for (i = 0; i < 9; i++) { + temp_r28 = &Hu3DData[lbl_1_bss_32C->model[i + 1]]; + Hu3DModelPosSet(lbl_1_bss_32C->model[i + 1], + (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk00 - 1), + 0.9 * temp_r28->pos.y + 0.1 * lbl_1_bss_51C[spC[0]->unk38].unk08, + (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk04 - 1)); + for (j = 0; j < 9; j++) { + if (i == spC[j]->unk38) { + lbl_1_bss_330[j]->trans.x = (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk00 - 1); + lbl_1_bss_330[j]->trans.y = temp_r28->pos.y - -16.666666666666668; + lbl_1_bss_330[j]->trans.z = (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk04 - 1); + } + } + } + } + break; + } + { + s32 var_r26 = lbl_1_data_1B4; + float sp30[][6] = { + { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, + { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 3800.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + { 4000.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, + { 2700.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } + }; + + if (lbl_1_bss_38 != -1 && lbl_1_bss_38 != 9) { + sp30[5][1] = lbl_1_bss_330[lbl_1_bss_38]->trans.x; + sp30[5][3] = lbl_1_bss_330[lbl_1_bss_38]->trans.z; + } + if (lbl_1_data_1B4 == -1) { + lbl_1_data_1B4 = 0; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 1.0f; + } + if (lbl_1_data_1B4 == 0) { + lbl_1_data_1B4 = 1; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 0.5f; + } + if (lbl_1_bss_50 == 1004 && lbl_1_bss_54 >= 1 && lbl_1_data_1B4 == 1) { + lbl_1_data_1B4 = 2; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if (lbl_1_bss_50 == 1006 && lbl_1_bss_54 >= 270 && lbl_1_data_1B4 == 2) { + lbl_1_data_1B4 = 4; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 1.0f; + } + if (lbl_1_bss_50 == 1005 && lbl_1_data_1B4 == 4) { + lbl_1_data_1B4 = 2; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if (lbl_1_bss_50 == 1007 && lbl_1_bss_38 != 9 && lbl_1_data_1B4 == 4) { + lbl_1_data_1B4 = 5; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if (var_r26 != lbl_1_data_1B4 && var_r26 != -1) { + lbl_1_data_1B8 = CZoom; + lbl_1_data_1BC = Center.y; + lbl_1_bss_28 = Center.z; + lbl_1_data_1C0 = CRot.x; + lbl_1_bss_2C = CRot.y; + } + if (lbl_1_bss_20 <= 1.0f) { + if (lbl_1_bss_1C == 0) { + lbl_1_bss_20 = 1.0 - 0.95 * (1.0f - lbl_1_bss_20); + var_f31 = lbl_1_bss_20; + } else { + lbl_1_bss_20 += 0.008333333333333333; + lbl_1_bss_20 = (lbl_1_bss_20 > 1.0f) ? 1.0f : lbl_1_bss_20; + var_f31 = 0.5 + -0.5 * cosd(180.0f * lbl_1_bss_20); + } + lbl_1_bss_20 = (lbl_1_bss_20 > 1.0f) ? 1.0f : lbl_1_bss_20; + CZoom = var_f31 * sp30[lbl_1_data_1B4][0] + lbl_1_data_1B8 * (1.0f - var_f31); + Center.x = var_f31 * sp30[lbl_1_data_1B4][1] + lbl_1_bss_24 * (1.0f - var_f31); + Center.y = var_f31 * sp30[lbl_1_data_1B4][2] + lbl_1_data_1BC * (1.0f - var_f31); + Center.z = var_f31 * sp30[lbl_1_data_1B4][3] + lbl_1_bss_28 * (1.0f - var_f31); + CRot.x = var_f31 * sp30[lbl_1_data_1B4][4] + lbl_1_data_1C0 * (1.0f - var_f31); + CRot.y = var_f31 * sp30[lbl_1_data_1B4][5] + lbl_1_bss_2C * (1.0f - var_f31); + } + } + if (lbl_1_bss_50 == 1001 || lbl_1_bss_50 == 1003) { + temp_f26 = 0.0f; + temp_f27 = 0.0f; + if (lbl_1_data_134.unk00 % 2 >= 0) { + lbl_1_data_134.unk08 = lbl_1_data_134.unk10; + lbl_1_data_134.unk0C = lbl_1_data_134.unk14; + do { + lbl_1_data_134.unk10 = 2.0 * (rand8() / 255.0) - 1.0; + lbl_1_data_134.unk14 = 2.0 * (rand8() / 255.0) - 1.0; + lbl_1_data_134.unk10 = 0.0f; + temp_f28 = (lbl_1_data_134.unk10 - lbl_1_data_134.unk08) * (lbl_1_data_134.unk10 - lbl_1_data_134.unk08) + (lbl_1_data_134.unk14 - lbl_1_data_134.unk0C) * (lbl_1_data_134.unk14 - lbl_1_data_134.unk0C); + } while (sqrtf(temp_f28) < 0.75); + } + lbl_1_data_134.unk04 = (lbl_1_data_134.unk04 > 24) ? 24 + : (lbl_1_data_134.unk04 > 0) ? lbl_1_data_134.unk04 : 0; + temp_f26 = lbl_1_data_134.unk08; + temp_f27 = lbl_1_data_134.unk0C; + temp_f26 *= lbl_1_data_134.unk04 * 2; + temp_f27 *= lbl_1_data_134.unk04 * 2; + lbl_1_data_134.unk00 = !lbl_1_data_134.unk00; + lbl_1_data_134.unk04 = (lbl_1_data_134.unk04 > 24) ? 23 + : (lbl_1_data_134.unk04 - 1 > 0) ? (lbl_1_data_134.unk04 - 1) : 0; + Center.x = 0.0f; + Center.y = 100.0f + temp_f27; + } +} + +s16 fn_1_4474(void) { + AnimData* var_r29; + void* var_r28; + s16 var_r31; + s16 var_r30; + HsfanimStruct00 sp8 = { + 0x96, + { 0x00, 0x00 }, + 50.0f, + 0.0f, + 65.0f, + { 0.0f, -0.195f, 0.0f }, + 80.0f, + 0.99f, + 40.0f, + 0.999f, + 4, + { + { 0xFF, 0xFF, 0x20, 0xFF }, + { 0xFF, 0xFF, 0x00, 0xFF }, + { 0xFF, 0xFF, 0x80, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF } + }, + { + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 } + } + }; + + lbl_1_bss_5C[lbl_1_bss_58] = sp8; + var_r28 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_BOARD, 107), MEMORY_DEFAULT_NUM, HEAP_DATA); + var_r29 = HuSprAnimRead(var_r28); + var_r31 = Hu3DParManCreate(var_r29, 40, &lbl_1_bss_5C[lbl_1_bss_58]); + Hu3DParManAttrSet(var_r31, 8 | 0x100); + Hu3DParManRotSet(var_r31, 0.0f, 0.0f, 0.0f); + Hu3DParManVecSet(var_r31, 0.0f, 0.4f, 0.2f); + var_r30 = Hu3DParManModelIDGet(var_r31); + Hu3DModelLayerSet(var_r30, 2); + Hu3DParticleBlendModeSet(var_r30, 0); + return var_r31; +} + +void fn_1_45F8(omObjData* arg0) { + StructBss330Data* sp14[9]; + float spC[2]; + s32 sp8; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r30; + s32 i; + + for (i = 0; i < 28; i++) { + s32 sp38[] = { + 0x7F1, 0x7F2, 0x7F7, 0x7F8, + 0x7F9, 0x7FA, 0x7FB, 0x7FC, + 0x7FD, 0x7FE, 0x7FF, 0x800, + 0x801, 0x802, 0x803, 0x804, + 0x7FB, 0x7FC, 0x7FD, 0x7FE, + 0x7FF, 0x800, 0x801, 0x802, + 0x803, 0x804, 0x7FB, 0x7FC + }; + + if (lbl_1_bss_35C[i].unk00 > 3) { + lbl_1_bss_35C[i].unk00 = 3; + } + if (lbl_1_bss_35C[i].unk00 > 0) { + sp8 = HuAudFXPlay(sp38[i]); + lbl_1_bss_35C[i].unk00--; + } + } + for (i = 0; i < 9; i++) { + sp14[i] = lbl_1_bss_330[i]->data; + } + if (omSysExitReq != 0 && WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_659C; + } + switch (lbl_1_bss_50) { + case 1000: + if (WipeStatGet() != 0) { + break; + } + lbl_1_bss_50++; + lbl_1_bss_54 = 0; + for (i = 0; i < 9; i++) { + if (sp14[i]->unk54 != -1) { + Hu3DParManKill(sp14[i]->unk54); + sp14[i]->unk54 = -1; + } + } + break; + case 1001: + lbl_1_bss_54++; + if (lbl_1_bss_54 == 90 && lbl_1_data_14C < 0) { + lbl_1_data_14C = MGSeqStartCreate(); + } + if (lbl_1_bss_54 >= 90 && lbl_1_data_150 == -1 && (MGSeqStatGet(lbl_1_data_14C) & 0x10)) { + lbl_1_data_150 = HuAudSeqPlay(0x49); + } + if (lbl_1_bss_54 >= 90 && MGSeqStatGet(lbl_1_data_14C) == 0 && lbl_1_data_14C >= 0) { + lbl_1_bss_50 = 1002; + lbl_1_bss_54 = 0; + } + break; + case 1002: + lbl_1_bss_54 += (lbl_1_bss_54 < 30); + if (lbl_1_bss_54 >= 60) { + lbl_1_bss_50++; + lbl_1_bss_54 = 0; + } + break; + case 1003: + lbl_1_bss_54++; + if (lbl_1_bss_54 == (sp14[1]->unk08 == -1 ? 120 : 60) + 30) { + lbl_1_bss_50++; + if (sp14[1]->unk08 == -1) { + lbl_1_bss_50++; + } + lbl_1_bss_54 = 0; + } + break; + case 1004: + lbl_1_bss_54++; + if (lbl_1_bss_54 == 90) { + lbl_1_bss_50++; + lbl_1_bss_54 = 0; + } + break; + case 1005: + if (lbl_1_bss_54 == 0) { + for (i = 0; i < 9; i++) { + if (lbl_1_bss_51C[sp14[i]->unk38].unk0C != 0) { + sp14[i]->unk18 = 3; + sp14[i]->unk1C = 0; + } else { + sp14[i]->unk5C = 1; + } + } + HuWinMesMaxSizeGet(1, spC, MAKE_MESSID(48, 37)); + lbl_1_bss_C = HuWinCreate(-10000.0f, 400.0f, spC[0], spC[1], 1); + HuWinBGTPLvlSet(lbl_1_bss_C, 0.0f); + HuWinMesSpeedSet(lbl_1_bss_C, 0); + HuWinMesSet(lbl_1_bss_C, MAKE_MESSID(48, 37)); + lbl_1_bss_0 = 180; + } + lbl_1_bss_54++; + if (lbl_1_bss_54 == 30) { + lbl_1_data_14E = MGSeqTimerCreate(10); + MGSeqPosSet(lbl_1_data_14E, 489.6f, 64.0f); + } + if (lbl_1_bss_54 >= 30 && lbl_1_data_14E != -1) { + var_r29 = 0; + for (i = 0; i < 9; i++) { + if (lbl_1_bss_51C[sp14[i]->unk38].unk0C == 0 || sp14[i]->unk18 == 4 || sp14[i]->unk18 == 0) { + var_r29++; + } + } + if (var_r29 >= 9 || lbl_1_bss_0 == 0) { + MGSeqParamSet(lbl_1_data_14E, 2, -1); + lbl_1_data_14E = -1; + } else { + lbl_1_bss_0 -= (lbl_1_bss_0 > 0); + MGSeqParamSet(lbl_1_data_14E, 1, (lbl_1_bss_0 + 59) / 60); + } + } + var_r28 = 0; + for (i = 0; i < 9; i++) { + if (lbl_1_bss_51C[sp14[i]->unk38].unk0C == 0 || sp14[i]->unk18 == 0) { + var_r28++; + } + } + if (var_r28 >= 9) { + lbl_1_bss_50++; + lbl_1_bss_54 = 0; + } + break; + case 1006: + if (lbl_1_bss_54 == 1) { + HuWinExCleanup(lbl_1_bss_C); + } + lbl_1_bss_54++; + if (lbl_1_bss_54 == 3) { + lbl_1_bss_54 = 118; + } + if (lbl_1_bss_54 == 223) { + lbl_1_bss_54 = 233; + } + if (lbl_1_bss_54 == 120 && lbl_1_bss_35C->unk00 < 3) { + lbl_1_bss_35C->unk04[lbl_1_bss_35C->unk00] = 0.0f; + lbl_1_bss_35C->unk00++; + } + if (lbl_1_bss_54 == 188 && lbl_1_bss_35C[1].unk00 < 3) { + lbl_1_bss_35C[1].unk04[lbl_1_bss_35C[1].unk00] = 0.0f; + lbl_1_bss_35C[1].unk00++; + } + if (lbl_1_bss_54 == 360) { + var_r30 = 0; + var_r27 = -1; + for (i = 0; i < 9; i++) { + var_r30 += lbl_1_bss_51C[i].unk0C; + var_r27 = (lbl_1_bss_51C[sp14[i]->unk38].unk0C != 0) ? i : var_r27; + } + if (var_r30 <= 1) { + lbl_1_bss_38 = (var_r30 == 0) ? 9 : var_r27; + } + if (lbl_1_bss_38 != -1) { + lbl_1_data_14C = MGSeqFinishCreate(); + if (lbl_1_data_150 != -1) { + HuAudSeqFadeOut(lbl_1_data_150, 100); + } + } + } + if (lbl_1_bss_54 >= 480) { + if (lbl_1_bss_38 != -1) { + if (MGSeqStatGet(lbl_1_data_14C) == 0 && lbl_1_bss_54 >= 510) { + lbl_1_bss_50 = 1007; + lbl_1_bss_54 = 0; + } + } else { + lbl_1_bss_50 = 1005; + lbl_1_bss_54 = 0; + } + } + break; + case 1007: + lbl_1_bss_54++; + if (lbl_1_bss_54 == 1) { + if (lbl_1_bss_38 != 9) { + if (lbl_1_bss_38 < 9) { + HuAudSStreamPlay(1); + } else { + HuAudSStreamPlay(1); + } + if (lbl_1_bss_38 < 4 && sp14[lbl_1_bss_38]->unk04 != -1) { + GWPlayerCoinWinSet(sp14[lbl_1_bss_38]->unk04, 10); + } + } else if (lbl_1_bss_38 == 9) { + HuAudSStreamPlay(4); + } + } + if (210.0f + (lbl_1_bss_38 == 9 ? 60 : 0) < lbl_1_bss_54) { + if (lbl_1_data_154 != -1) { + HuAudFXStop(lbl_1_data_154); + lbl_1_data_154 = -1; + } + lbl_1_data_14C = -1; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_659C; + } + break; + } +} + +void fn_1_53A0(omObjData* arg0) { + StructBss330Data* sp50[9]; + s32 i; + + for (i = 0; i < 9; i++) { + sp50[i] = lbl_1_bss_330[i]->data; + } + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M458, 8)); + Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(arg0->model[0], 0.1f); + for (i = 0; i < 9; i++) { + arg0->model[i + 1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M458, 10 + i)); + lbl_1_bss_51C[i].unk00 = i % 3; + lbl_1_bss_51C[i].unk04 = i / 3; + lbl_1_bss_51C[i].unk08 = 0.0f; + lbl_1_bss_51C[i].unk0C = 1; + Hu3DModelPosSet(lbl_1_bss_32C->model[i + 1], + 500.0 * (lbl_1_bss_51C[i].unk00 - 1), + -16.666666f, + 500.0 * (lbl_1_bss_51C[i].unk04 - 1)); + Hu3DModelScaleSet(lbl_1_bss_32C->model[i + 1], 1.6666666f, 1.6666666f, 1.6666666f); + Hu3DModelAttrSet(arg0->model[i + 1], HU3D_MOTATTR_PAUSE); + Hu3DModelShadowMapSet(arg0->model[i + 1]); + Hu3DModelLayerSet(arg0->model[i + 1], 1); + } + for (i = 0; i < 9; i++) { + s32 sp2C[9] = { 288, 290 }; + s32 sp8[9] = { 240, 140 }; + + lbl_1_data_24[i] = espEntry(lbl_1_data_0[i], 0, 0); + espDrawNoSet(lbl_1_data_24[i], 0); + espAttrSet(lbl_1_data_24[i], HUSPR_ATTR_NOANIM | HUSPR_ATTR_DISPOFF); + espBankSet(lbl_1_data_24[i], 0); + espPriSet(lbl_1_data_24[i], 0x80 - i); + espPosSet(lbl_1_data_24[i], 290.0f, 140.0f); + espTPLvlSet(lbl_1_data_24[i], 1.0f); + } + arg0->func = fn_1_3264; +} + +s32 lbl_1_data_1E4[] = { + DATA_MAKE_NUM(DATADIR_M458, 19), + DATA_MAKE_NUM(DATADIR_M458, 20), + DATA_MAKE_NUM(DATADIR_M458, 21), + DATA_MAKE_NUM(DATADIR_M458, 22), + DATA_MAKE_NUM(DATADIR_M458, 23), + DATA_MAKE_NUM(DATADIR_M458, 24), + DATA_MAKE_NUM(DATADIR_M458, 25), + DATA_MAKE_NUM(DATADIR_M458, 26), + DATA_MAKE_NUM(DATADIR_M458, 27), + DATA_MAKE_NUM(DATADIR_M458, 28), + DATA_MAKE_NUM(DATADIR_M458, 29) +}; + +void fn_1_5850(omObjData* arg0) { + StructBss330Data* temp_r31; + s32 sp10[] = { 0, 1, 2, 3 }; + s32 var_r25; + s32 var_r28; + s32 i; + s32 j; + + var_r25 = 0; + temp_r31 = arg0->data; + memset(temp_r31, 0, sizeof(*temp_r31)); + temp_r31->unk00 = arg0->work[0]; + if (temp_r31->unk00 >= 4) { + var_r28 = -1; + for (i = 0; i <= temp_r31->unk00 - 4; i++) { + do { + var_r28++; + } while (GWPlayerCfg[0].character == var_r28 || GWPlayerCfg[1].character == var_r28 || GWPlayerCfg[2].character == var_r28 || GWPlayerCfg[3].character == var_r28); + } + temp_r31->unk08 = (var_r28 == 8) ? -1 : var_r28; + temp_r31->unk0C = -1; + temp_r31->unk04 = -1; + temp_r31->unk10 = 0; + } else { + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + if (i == GWPlayerCfg[j].group) { + sp10[var_r25] = j; + var_r25++; + } + } + } + temp_r31->unk00 = arg0->work[0]; + temp_r31->unk04 = sp10[temp_r31->unk00]; + if (temp_r31->unk04 == 4) { + OSReport("m463:wrong player group\n"); + temp_r31->unk04 = temp_r31->unk00; + } + temp_r31->unk08 = GWPlayerCfg[temp_r31->unk04].character; + temp_r31->unk0C = (temp_r31->unk08 == -1 || GWPlayerCfg[temp_r31->unk04].iscom) ? -1 : GWPlayerCfg[temp_r31->unk04].pad_idx; + temp_r31->unk10 = (temp_r31->unk0C != -1) ? 0 : GWPlayerCfg[temp_r31->unk04].diff; + } + temp_r31->unk18 = 0; + temp_r31->unk20 = 3; + temp_r31->unk24 = -1; + temp_r31->unk48 = -1; + if (temp_r31->unk08 != -1) { + arg0->model[0] = CharModelCreate(temp_r31->unk08, 4); + } else { + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 7)); + } + omSetTra(arg0, 0.0f, temp_r31->unk00 == 0 ? 0 : 300, 0.0f); + if (temp_r31->unk08 != -1) { + omSetSca(arg0, 2.5f, 2.5f, 2.5f); + } else { + omSetSca(arg0, 2.0f, 2.0f, 2.0f); + } + for (i = 0; i < 9; i++) { + if (temp_r31->unk08 != -1) { + if (temp_r31->unk00 < 4 || (i != 1 && i != 2)) { + arg0->motion[i] = CharModelMotionCreate(temp_r31->unk08, lbl_1_data_48[i] + (lbl_1_data_6C[i] ? temp_r31->unk08 : 0)); + } + } else if (lbl_1_data_90[i] != 0) { + arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_90[i]); + } + } + Hu3DMotionSet(arg0->model[0], arg0->motion[temp_r31->unk20]); + Hu3DMotionTimeSet(arg0->model[0], 10.0f); + Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(arg0->model[0]); + Hu3DModelAttrSet(arg0->model[0], 1U); + Hu3DModelLayerSet(arg0->model[0], 1); + CharModelLayerSetAll2(1); + if (temp_r31->unk08 != -1) { + CharModelDataClose(temp_r31->unk08); + } + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M458, 9)); + Hu3DModelAttrSet(arg0->model[1], HU3D_MOTATTR_LOOP); + Hu3DModelPosSet(arg0->model[1], 0.0f, 400.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(arg0->model[1], 1); + Hu3DMotionSpeedSet(arg0->model[1], 0.0f); + for (i = 0; i < 9; i++) { + if (temp_r31->unk00 == 0) { + arg0->model[i + 2] = Hu3DModelCreateFile(lbl_1_data_1E4[i]); + } else { + arg0->model[i + 2] = Hu3DModelLink(lbl_1_bss_330[0]->model[i + 2]); + } + Hu3DMotionTimeSet(arg0->model[i + 2], 10.0f); + Hu3DMotionSpeedSet(arg0->model[i + 2], 0.0f); + Hu3DModelAttrSet(arg0->model[i + 2], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(arg0->model[i + 2], 1); + } + lbl_1_bss_58 = temp_r31->unk00; + temp_r31->unk54 = fn_1_4474(); + Hu3DParManPosSet(temp_r31->unk54, 10000.0f, -10000.0f, 10000.0f); + arg0->func = fn_1_4C8; +} + +void fn_1_60A4(omObjData* arg0) { + lbl_1_bss_50 = 1000; + lbl_1_bss_54 = 0; + lbl_1_bss_48 = 0; + lbl_1_bss_44 = 0; + lbl_1_data_154 = HuAudFXPlay(0x6D7); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + arg0->func = fn_1_45F8; +} + +void ObjectSetup(void) { + omObjData* var_r30; + s32 i; + + OSReport("******* M463 ObjectSetup *********\n"); + lbl_1_bss_40 = omInitObjMan(600, 0x2000); + omGameSysInit(lbl_1_bss_40); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 25000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + CZoom = 3200.0f; + Center.x = 0.0f; + Center.y = 0.0f; + Center.z = -100.0f; + CRot.x = -30.0f; + CRot.y = 0.0f; + CRot.z = 0.0f; + { + Vec sp3C = { 0.0f, 0.0f, 0.0f }; + Vec sp30 = { 0.25f, -0.75f, -0.45f }; + GXColor sp8 = { 0xFF, 0xFF, 0xFF, 0xFF }; + + lbl_1_bss_3C = Hu3DGLightCreateV(&sp3C, &sp30, &sp8); + } + Hu3DGLightStaticSet(lbl_1_bss_3C, 1); + Hu3DGLightInfinitytSet(lbl_1_bss_3C); + { + Vec sp24; + Vec sp18; + Vec spC; + + sp24.x = 0.0f; + sp24.y = 10000.0f; + sp24.z = 0.0f; + sp18.x = 0.0f; + sp18.y = 1.0f; + sp18.z = 0.0f; + spC.x = 0.0f; + spC.y = 0.0f; + spC.z = 0.5f; + Hu3DShadowCreate(12.0f, 9000.0f, 10010.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&sp24, &sp18, &spC); + } + Hu3DShadowSizeSet(0xE0); + lbl_1_data_14C = -1; + lbl_1_bss_38 = -1; + HuWinInit(1); + lbl_1_bss_32C = omAddObjEx(lbl_1_bss_40, 0x65, 10, 0, 1, fn_1_53A0); + for (i = 0; i < 9; i++) { + var_r30 = lbl_1_bss_330[i] = omAddObjEx(lbl_1_bss_40, 100, 11, 9, 0, fn_1_5850); + var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(StructBss330Data), MEMORY_DEFAULT_NUM); + var_r30->work[0] = i; + } + lbl_1_bss_354 = omAddObjEx(lbl_1_bss_40, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_358 = omAddObjEx(lbl_1_bss_40, 103, 0, 0, -1, fn_1_60A4); +} + +void fn_1_659C(omObjData* arg0) { + StructBss330Data* spC[9]; + void* sp8; + s32 var_r31; + s32 var_r30; + + for (var_r31 = 0; var_r31 < 9; var_r31++) { + spC[var_r31] = lbl_1_bss_330[var_r31]->data; + if (spC[var_r31]->unk54 != -1) { + Hu3DParManKill(spC[var_r31]->unk54); + spC[var_r31]->unk54 = -1; + } + } + if (WipeStatGet() == 0) { + for (var_r30 = 0; var_r30 < 9; var_r30++) { + sp8 = lbl_1_bss_330[var_r30]->data; + } + if (lbl_1_data_14C >= 0) { + MGSeqKill(lbl_1_data_14C); + } + MGSeqKillAll(); + HuAudAllStop(); + omOvlReturnEx(1, 1); + } +} diff --git a/src/game/board/last5.c b/src/game/board/last5.c index 9860861c..8b9261c9 100644 --- a/src/game/board/last5.c +++ b/src/game/board/last5.c @@ -13,6 +13,8 @@ #include "game/data.h" #include "game/wipe.h" +#include "ext_math.h" + static s16 stopWin = -1; static s16 wheelMdl = -1; s16 lbl_801D3854 = -1; @@ -1330,7 +1332,7 @@ static void UpdateLotteryTicket(omObjData *object) switch(work->state) { case 2: if(work->angle < 540) { - float scale = 0.4f+(0.1f*sin(M_PI*(float)(work->angle%180)/180.0)); + float scale = 0.4f+(0.1f*sind((float)(work->angle%180))); HuSprGrpScaleSet(work->group, scale, scale); work->angle += 9; } else { @@ -1511,7 +1513,7 @@ static void StartHostMove(Vec *from, Vec *to, s16 time) omSetTra(object, from->x, from->y, from->z); omSetRot(object, (to->x-from->x)/duration, 0.0f, (to->z-from->z)/duration); omSetSca(object, to->x, to->y, to->z); - angle = 180.0*(atan2(object->rot.x, object->rot.z)/M_PI); + angle = atan2d(object->rot.x, object->rot.z); work->angle = 0; OSf32tos16(&angle, &work->angle_end); BoardModelMotionShiftSet(hostMdl, hostMot[0], 0, 8, HU3D_MOTATTR_LOOP); diff --git a/src/game/board/player.c b/src/game/board/player.c index 96722477..046aafea 100644 --- a/src/game/board/player.c +++ b/src/game/board/player.c @@ -18,7 +18,7 @@ #include "game/objsub.h" #include "game/pad.h" -#include "math.h" +#include "ext_math.h" #include "stdlib.h" static void InitJunction(s32, s32, f32); @@ -1152,7 +1152,7 @@ static void InitJunction(s32 arg0, s32 arg1, f32 arg8) VECSubtract(&sp50, &sp68, &sp44); VECNormalize(&sp44, &sp44); - angle = (180.0 * (atan2(sp44.x, sp44.z) / M_PI)); + angle = atan2d(sp44.x, sp44.z); if (angle < 0.0f) { angle += 360.0f; } @@ -1174,7 +1174,7 @@ static void InitJunction(s32 arg0, s32 arg1, f32 arg8) temp_r29->unk_06[var_r27] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0), NULL, 1); BoardModelRotSet(temp_r29->unk_06[var_r27], 0.0f, angle, 0.0f); BoardModelLayerSet(temp_r29->unk_06[var_r27], 6); - sp5C.x = sp68.x + (100.0 * sin((M_PI * angle) / 180.0)); + sp5C.x = sp68.x + 100.0 * sind(angle); sp5C.y = 300.0f + sp68.y; sp5C.z = (var_f29 + (sp68.z + (100.0 * cosd(angle)))); BoardModelPosSetV(temp_r29->unk_06[var_r27], &sp5C); @@ -1219,7 +1219,7 @@ static void UpdateJunctionGfx(omObjData *arg0) temp_r30->unk_02 -= 0xB4; } OSs16tof32(&temp_r30->unk_02, &arg0->scale.x); - arg0->scale.x = 3.0 + sin((M_PI * arg0->scale.x) / 180.0); + arg0->scale.x = 3.0 + sind(arg0->scale.x); arg0->scale.y = arg0->scale.x; arg0->scale.z = arg0->scale.x; BoardModelScaleSet(temp_r30->unk_06[temp_r30->field00_bit5], arg0->scale.x, arg0->scale.y, arg0->scale.z); @@ -1355,7 +1355,7 @@ static s32 DoDebugMove(s32 arg0, s16 *arg1) } else { VECSubtract(&sp5C->pos, &sp88, &sp94); - var_f30 = 90.0 - (180.0 * (atan2(sp94.z, sp94.x) / M_PI)); + var_f30 = 90.0 - atan2d(sp94.z, sp94.x); OSf32tos16(&var_f30, &var_r26); if (var_r26 < 0) { var_r26 += 0x168; @@ -1394,7 +1394,7 @@ static s32 DoDebugMove(s32 arg0, s16 *arg1) goto loop_21; } if ((0.0f != spA0.x) || (0.0f != spA0.z)) { - var_f30 = (90.0 + (180.0 * (atan2(spA0.z, spA0.x) / M_PI))); + var_f30 = 90.0 + atan2d(spA0.z, spA0.x); if (var_f30 < 0.0f) { var_f30 += 360.0f; } @@ -1404,7 +1404,7 @@ static s32 DoDebugMove(s32 arg0, s16 *arg1) RestoreJunction(var_f30, 1); sp50 = &boardCamera; VECSubtract(&sp50->target, &sp50->pos, &sp7C); - var_f30 = (var_f30 + (90.0 - (180.0 * (atan2(-sp7C.z, -sp7C.x) / M_PI)))); + var_f30 += 90.0 - atan2d(-sp7C.z, -sp7C.x); if (var_f30 < 0.0f) { var_f30 += 360.0f; } @@ -1535,7 +1535,7 @@ static s32 ExecJunction(s32 arg0, s16 *arg1) } else { VECSubtract(&sp88->pos, &spAC, &spB8); - var_f29 = (90.0 - (180.0 * (atan2(spB8.z, spB8.x) / M_PI))); + var_f29 = 90.0 - atan2d(spB8.z, spB8.x); if (var_f29 < 0.0f) { var_f29 += 360.0f; } @@ -1611,7 +1611,7 @@ static s32 ExecJunction(s32 arg0, s16 *arg1) } else { if ((0.0f != spC4.x) || (0.0f != spC4.z)) { - var_f29 = (90.0 + (180.0 * (atan2(spC4.z, spC4.x) / M_PI))); + var_f29 = 90.0 + atan2d(spC4.z, spC4.x); if (var_f29 < 0.0f) { var_f29 += 360.0f; } @@ -1729,7 +1729,7 @@ void BoardPlayerPosLerpStart(s32 arg0, Vec *arg1, Vec *arg2, s16 arg3) } VECSubtract(arg2, arg1, &sp18); VECNormalize(&sp18, &sp18); - var_f26 = 90.0 - (180.0 * (atan2(sp18.z, sp18.x) / M_PI)); + var_f26 = 90.0 - atan2d(sp18.z, sp18.x); var_f30 = var_f26; if (var_f30 < 0.0f) { var_f30 += 360.0f; @@ -2896,7 +2896,7 @@ static s32 MegaPlayerPassFunc(s32 player, s32 space) VECSubtract(&spC4, &spB8, &spAC); spAC.x /= 60.0f; spAC.z /= 60.0f; - BoardPlayerRotYSet(player, 90.0 - (180.0 * (atan2(spAC.z, spAC.x) / M_PI))); + BoardPlayerRotYSet(player, 90.0 - atan2d(spAC.z, spAC.x)); sp98[1] = BoardVecDistXZCalc(&spC4, &spB8); BoardPlayerMotionShiftSet(player, 4, 0, 8, HU3D_MOTATTR_NONE); HuPrcSleep(8); @@ -2998,7 +2998,7 @@ static s32 MegaExecJump(s32 player, s32 space) VECSubtract(&spC4, &spB8, &spAC); spAC.x /= 60.0f; spAC.z /= 60.0f; - BoardPlayerRotYSet(player, 90.0 - (180.0 * (atan2(spAC.z, spAC.x) / M_PI))); + BoardPlayerRotYSet(player, 90.0 - atan2d(spAC.z, spAC.x)); BoardPlayerIdleSet(player); HuPrcSleep(10); sp90[1] = BoardVecDistXZCalc(&spC4, &spB8); diff --git a/src/game/board/space.c b/src/game/board/space.c index 052f2bca..d092af1e 100644 --- a/src/game/board/space.c +++ b/src/game/board/space.c @@ -14,7 +14,7 @@ #include "game/objsub.h" #include "game/sprite.h" -#include "math.h" +#include "ext_math.h" #include "string.h" static BoardSpace spaceData[2][256]; @@ -156,10 +156,10 @@ void BoardSpaceCornerPosGet(s32 index, s32 corner, Vec *pos) corner_ofs.x = corner_pos[corner][0] * 80.0f; corner_ofs.y = 0; corner_ofs.z = corner_pos[corner][1] * 80.0f; - corner_ofs.x = (cos((M_PI * rot.z) / 180) * corner_ofs.x) + (sin((M_PI * rot.z) / 180) * corner_ofs.y); - corner_ofs.y = (cos((M_PI * rot.x) / 180) * cos((M_PI * rot.z) / 180) * corner_ofs.y) + (sin((M_PI * rot.z) / 180) * corner_ofs.x) - + (sin((M_PI * -rot.x) / 180) * corner_ofs.z); - corner_ofs.z = (sin((M_PI * rot.x) / 180) * corner_ofs.y) + (cos((M_PI * rot.x) / 180) * corner_ofs.z); + corner_ofs.x = (cosd(rot.z) * corner_ofs.x) + (sind(rot.z) * corner_ofs.y); + corner_ofs.y = (cosd(rot.x) * cosd(rot.z) * corner_ofs.y) + (sind(rot.z) * corner_ofs.x) + + (sind(-rot.x) * corner_ofs.z); + corner_ofs.z = (sind(rot.x) * corner_ofs.y) + (cosd(rot.x) * corner_ofs.z); pos->x += corner_ofs.x; pos->y += corner_ofs.y; pos->z += corner_ofs.z; @@ -724,7 +724,7 @@ static s32 ExecPipeSpace(s32 player, s32 space) BoardSpacePosGet(0, space_ptr->link[0], &pos_link); VECSubtract(&pos_link, &pos, &dir); VECNormalize(&dir, &dir); - BoardPlayerRotYSet(player, 90 - ((atan2(dir.z, dir.x) / M_PI) * 180)); + BoardPlayerRotYSet(player, 90 - atan2d(dir.z, dir.x)); radius = 0.75f * BoardVecDistXZCalc(&pos_link, &pos); BoardPlayerMotionStart(player, 4, 0); y_vel = 0; diff --git a/src/game/board/view.c b/src/game/board/view.c index 29118967..38a6157c 100755 --- a/src/game/board/view.c +++ b/src/game/board/view.c @@ -15,6 +15,8 @@ #include "game/board/space.h" #include "game/board/ui.h" +#include "ext_math.h" + typedef struct { struct { u8 unk00_field0 : 1; @@ -247,9 +249,9 @@ static void ExecMapView(void) { if (sp9 != 0 || sp8 != 0) { OSs8tof32(&sp9, &spC.x); OSs8tof32(&sp8, &spC.z); - temp_f28 = 180.0 * (atan2(spC.x, -spC.z) / M_PI); - spC.x = var_f29 * sin(temp_f28 * M_PI / 180.0); - spC.z = var_f29 * cos(temp_f28 * M_PI / 180.0); + temp_f28 = atan2d(spC.x, -spC.z); + spC.x = var_f29 * sind(temp_f28); + spC.z = var_f29 * cosd(temp_f28); } VECAdd(&spC, &focusPos, &focusPos); if (focusPos.x < temp_f26) { @@ -563,7 +565,7 @@ static void UpdateOverheadView(omObjData *arg0) { sp14.y -= 240.0f; VECSubtract(&sp20, &sp14, &sp8); sp8.z = 0.0f; - temp_f30 = BoardDAngleCalc(180.0 * (atan2(sp8.y, sp8.x) / M_PI) - 90.0); + temp_f30 = BoardDAngleCalc(atan2d(sp8.y, sp8.x) - 90.0); temp_f31 = VECMag(&sp8) / 32; if (i != 4) { var_r28 = i + 4; diff --git a/src/game/minigame_seq.c b/src/game/minigame_seq.c index 1bdf7b50..f74d4bf4 100644 --- a/src/game/minigame_seq.c +++ b/src/game/minigame_seq.c @@ -12,7 +12,7 @@ #include "game/minigame_seq.h" -#include "math.h" +#include "ext_math.h" #include "stdarg.h" #include "version.h" @@ -484,7 +484,7 @@ s32 MGSeqUpdateTimer(SeqWork *work) switch (work->state) { case 2: { float scale_x, scale_y; - scale = fabs(((sin((work->angle * M_PI) / 180) * 5.0f) + 1.0f) - (sin((130 * M_PI) / 180) * 5.0f)); + scale = fabs(((sind(work->angle) * 5.0f) + 1.0f) - (sind(130) * 5.0f)); scale_x = work->scale_x * scale; scale_y = work->scale_y * scale; work->angle += seqSpeed * 5.0f; @@ -496,8 +496,8 @@ s32 MGSeqUpdateTimer(SeqWork *work) } break; case 3: { - scale = sin((work->angle * M_PI) / 180) + 1.0; - tp_lvl = 1.0 - (sin((work->angle * M_PI) / 180) * 0.5); + scale = sind(work->angle) + 1.0; + tp_lvl = 1.0 - (sind(work->angle) * 0.5); work->angle += seqSpeed * 18.0f; if (work->angle > 180.0f) { work->state = 0; @@ -1045,7 +1045,7 @@ s32 MGSeqUpdateMGBasic(SeqWork *work) HuSprZRotSet(work->spr_grp[0], i, 0.0f); } else { - HuSprPosSet(work->spr_grp[0], i, pos_x - (((1.0 - sin(((time * 4.5f) * M_PI) / 180.0)) * (work->word_len * 56 * 2))), + HuSprPosSet(work->spr_grp[0], i, pos_x - (((1.0 - sind(time * 4.5f)) * (work->word_len * 56 * 2))), work->y); HuSprZRotSet(work->spr_grp[0], i, (time / 20.0f) * 390.0f); } @@ -1053,11 +1053,11 @@ s32 MGSeqUpdateMGBasic(SeqWork *work) } else { time = work->time - 40; - scale = work->scale_x + (0.5 * sin(((time * 9.0f) * M_PI) / 180.0)); + scale = work->scale_x + (0.5 * sind(time * 9.0f)); for (i = 0; i < work->word_len; i++) { pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (i * 56)); HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], i, scale, work->scale_y + sin(((time * 9.0f) * M_PI) / 180.0)); + HuSprScaleSet(work->spr_grp[0], i, scale, work->scale_y + sind(time * 9.0f)); } } if (work->time == 40) { @@ -1085,13 +1085,13 @@ s32 MGSeqUpdateMGBasic(SeqWork *work) } if (work->time <= 20) { time = work->time; - scale = work->scale_x + (0.5 * sin(((time * 9.0f) * M_PI) / 180.0)); + scale = work->scale_x + (0.5 * sind(time * 9.0f)); for (i = 0; i < work->word_len; i++) { HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (i * 56)); HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], i, work->scale_x + sin(((time * 9.0f) * M_PI) / 180.0), - work->scale_y + sin(((time * 9.0f) * M_PI) / 180.0)); + HuSprScaleSet(work->spr_grp[0], i, work->scale_x + sind(time * 9.0f), + work->scale_y + sind(time * 9.0f)); } if (time == 20.0f) { for (i = 0; i < work->word_len; i++) { @@ -1112,7 +1112,7 @@ s32 MGSeqUpdateMGBasic(SeqWork *work) } else { HuSprPosSet(work->spr_grp[0], i, - pos_x + ((1.0 - cos(((time * 4.5f) * M_PI) / 180.0f)) * (work->word_len * 56 * 2)), work->y); + pos_x + ((1.0 - cosd(time * 4.5f)) * (work->word_len * 56 * 2)), work->y); HuSprZRotSet(work->spr_grp[0], i, (time / 20.0f) * 390.0f); } } @@ -1337,7 +1337,7 @@ s32 MGSeqUpdateMGBattle(SeqWork *work) y += ofs_y; } HuSprPosSet(work->spr_grp[i], j, x, y); - HuSprScaleSet(work->spr_grp[i], j, work->scale_x * cos((M_PI * scale_ang) / 180.0), work->scale_y); + HuSprScaleSet(work->spr_grp[i], j, work->scale_x * cosd(scale_ang), work->scale_y); HuSprZRotSet(work->spr_grp[i], j, zrot); } } @@ -1346,7 +1346,7 @@ s32 MGSeqUpdateMGBattle(SeqWork *work) else { if (work->time > 60) { time = work->time - 60; - scale = 0.5 * sin((M_PI * (time * 9.0f)) / 180.0); + scale = 0.5 * sind(time * 9.0f); for (j = 0; j < work->word_len; j++) { pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + ((j * 56) * (scale + work->scale_x)); @@ -1385,13 +1385,13 @@ s32 MGSeqUpdateMGBattle(SeqWork *work) } } time = work->time; - scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + scale = work->scale_x + (0.5 * sind(time * 9.0f)); for (j = 0; j < work->word_len; j++) { HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), - work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sind(time * 9.0f)), + work->scale_y + (sind(time * 9.0f))); } if (time == 20.0f) { for (j = 0; j < work->word_len; j++) { @@ -1405,7 +1405,7 @@ s32 MGSeqUpdateMGBattle(SeqWork *work) for (j = 0; j < work->word_len; j++) { pos_x = (28.0f + (work->x - (0.5f * (work->word_len * 56)))) + (j * 56); HuSprPosSet( - work->spr_grp[0], j, pos_x + ((HU_DISP_CENTERX - pos_x) * (1.0 - cos((M_PI * (time * 6.0)) / 180.0))), work->y); + work->spr_grp[0], j, pos_x + ((HU_DISP_CENTERX - pos_x) * (1.0 - cosd(time * 6.0))), work->y); } if (time == 15.0f) { for (j = 0; j < work->word_len; j++) { @@ -1530,9 +1530,9 @@ s32 MGSeqUpdateMG1vs3(SeqWork *work) scale_x = 0.3 * work->scale_x; scale_y = 0.3 * work->scale_y; pos_x = ((28.0f * scale_x) + (work->x - (0.5f * (scale_x * (work->word_len * 56))))) + (scale_x * (idx * 56)); - pos_y = work->y - (150.0 * sin((M_PI * (((16.0f / 3.0f) * time) + 20.0f)) / 180.0)); + pos_y = work->y - 150.0 * sind((16.0f / 3.0f) * time + 20.0f); HuSprPosSet(work->spr_grp[0], idx, pos_x, pos_y); - HuSprScaleSet(work->spr_grp[0], idx, scale_x, scale_y * cos(M_PI * (12.0f * time) / 180.0)); + HuSprScaleSet(work->spr_grp[0], idx, scale_x, scale_y * cosd(12.0f * time)); HuSprTPLvlSet(work->spr_grp[0], idx, scale); } } @@ -1549,13 +1549,13 @@ s32 MGSeqUpdateMG1vs3(SeqWork *work) continue; } } - scale = 0.3 + (0.7 * (1.0 - cos((M_PI * (time * 3.0f)) / 180.0))); + scale = 0.3 + 0.7 * (1.0 - cosd(time * 3.0f)); scale_x = work->scale_x * scale; scale_y = work->scale_y * scale; pos_x = ((28.0f * scale_x) + (work->x - (0.5f * (scale_x * (work->word_len * 56))))) + (scale_x * (idx * 56)); - pos_y = work->y - (150.0 * sin((M_PI * (((16.0f / 3.0f) * time) + 20.0f)) / 180.0)); + pos_y = work->y - 150.0 * sind((16.0f / 3.0f) * time + 20.0f); HuSprPosSet(work->spr_grp[i], idx, pos_x, pos_y); - HuSprScaleSet(work->spr_grp[i], idx, scale_x, scale_y * cos(M_PI * (12.0f * time) / 180.0)); + HuSprScaleSet(work->spr_grp[i], idx, scale_x, scale_y * cosd(12.0f * time)); } } if (work->time == 60) { @@ -1569,7 +1569,7 @@ s32 MGSeqUpdateMG1vs3(SeqWork *work) else { if (work->time > 70) { time = work->time - 70; - scale = 0.5 * sin((M_PI * (time * 9.0f)) / 180.0); + scale = 0.5 * sind(time * 9.0f); for (j = 0; j < work->word_len; j++) { pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + ((j * 56) * (scale + work->scale_x)); @@ -1609,13 +1609,13 @@ s32 MGSeqUpdateMG1vs3(SeqWork *work) } } time = work->time; - scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + scale = work->scale_x + (0.5 * sind(time * 9.0f)); for (j = 0; j < work->word_len; j++) { HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), - work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sind(time * 9.0f)), + work->scale_y + (sind(time * 9.0f))); } if (time == 20.0f) { for (i = 1; i < 4; i++) { @@ -1767,7 +1767,7 @@ s32 MGSeqUpdateMGStory(SeqWork *work) else { if (work->time > 55) { time = work->time - 55; - scale = 0.5 * sin(M_PI * (9.0f * time) / 180.0); + scale = 0.5 * sind(9.0f * time); for (j = 0; j < work->word_len; j++) { pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + ((j * 56) * (scale + work->scale_x)); @@ -1807,13 +1807,13 @@ s32 MGSeqUpdateMGStory(SeqWork *work) } } time = work->time; - scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + scale = work->scale_x + (0.5 * sind(time * 9.0f)); for (j = 0; j < work->word_len; j++) { HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), - work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sind(time * 9.0f)), + work->scale_y + (sind(time * 9.0f))); } if (time == 20.0f) { for (i = 1; i < 4; i++) { @@ -1960,7 +1960,7 @@ s32 MGSeqUpdateMG2vs2(SeqWork *work) else { if (work->time > 40 && work->time <= 60) { time = work->time - 40; - scale = 0.5 * sin(((time * 9.0f) * M_PI) / 180.0); + scale = 0.5 * sind(time * 9.0f); for (j = 0; j < work->word_len; j++) { pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + ((j * 56) * (scale + work->scale_x)); @@ -1999,13 +1999,13 @@ s32 MGSeqUpdateMG2vs2(SeqWork *work) } } time = work->time; - scale = work->scale_x + (0.5 * sin((M_PI * (time * 9.0f)) / 180.0)); + scale = work->scale_x + (0.5 * sind(time * 9.0f)); for (j = 0; j < work->word_len; j++) { HuSprAttrReset(work->spr_grp[0], j, HUSPR_ATTR_DISPOFF); pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (j * 56)); HuSprPosSet(work->spr_grp[0], j, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), - work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + HuSprScaleSet(work->spr_grp[0], j, work->scale_x + (sind(time * 9.0f)), + work->scale_y + (sind(time * 9.0f))); } if (time == 20.0f) { for (i = 1; i < 4; i++) { @@ -2023,8 +2023,8 @@ s32 MGSeqUpdateMG2vs2(SeqWork *work) float angle = (1.0f + (1.0f - (ABS(radius) / 320.0f))) * 720.0f; float new_scale; radius *= 1.0 - (time / 60.0f); - HuSprPosSet(work->spr_grp[0], idx, (radius * sin(M_PI * (((time / 60.0f) * angle) + 90.0f) / 180.0)) + work->x, - (radius * cos(M_PI * (((time / 60.0f) * angle) + 90.0f) / 180.0)) + work->y); + HuSprPosSet(work->spr_grp[0], idx, (radius * sind((time / 60.0f) * angle + 90.0f)) + work->x, + (radius * cosd((time / 60.0f) * angle + 90.0f)) + work->y); HuSprZRotSet(work->spr_grp[0], idx, -(time / 60.0f) * 720.0f); new_scale = 0.5 + (0.5 * (1.0f - (time / 60.0f))); HuSprScaleSet(work->spr_grp[0], idx, new_scale, new_scale); @@ -2214,21 +2214,21 @@ s32 MGSeqUpdateFlip(SeqWork *work) time = work->time - 10; if (time <= 10) { for (idx = 0; idx < work->alt_word_len; idx++) { - HuSprScaleSet(work->spr_grp[0], idx, cos(M_PI * ((time / 10.0f) * 90.0f) / 180.0), 1.0f); + HuSprScaleSet(work->spr_grp[0], idx, cosd((time / 10.0f) * 90.0f), 1.0f); } } else { time -= 10.0f; for (idx = 0; idx < work->word_len; idx++) { HuSprTPLvlSet(work->spr_grp[1], idx, 1.0f); - HuSprScaleSet(work->spr_grp[1], idx, sin(M_PI * ((time / 10.0f) * 90.0f) / 180.0), 1.0f); + HuSprScaleSet(work->spr_grp[1], idx, sind((time / 10.0f) * 90.0f), 1.0f); } } } else { if (work->time > 35 && work->time <= 55) { time = work->time - 35; - scale = 0.5 * sin(((time * 9.0f) * M_PI) / 180.0); + scale = 0.5 * sind(time * 9.0f); for (i = 0; i < work->word_len; i++) { pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + ((i * 56) * (scale + work->scale_x)); @@ -2263,7 +2263,7 @@ s32 MGSeqUpdateFlip(SeqWork *work) } if (work->time <= 20) { time = work->time; - scale = 0.5 * sin(M_PI * (9.0f * time) / 180.0); + scale = 0.5 * sind(9.0f * time); for (i = 0; i < work->word_len; i++) { HuSprTPLvlSet(work->spr_grp[1], i, 1.0f); pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) @@ -2280,7 +2280,7 @@ s32 MGSeqUpdateFlip(SeqWork *work) if (scale < 0 || scale > 15.0f) { continue; } - HuSprScaleSet(work->spr_grp[1], idx, cos(M_PI * ((scale / 15.0f) * 90.0f) / 180.0), 1.0f); + HuSprScaleSet(work->spr_grp[1], idx, cosd((scale / 15.0f) * 90.0f), 1.0f); } for (idx = 0; idx < work->alt_word_len; idx++) { scale = (time - 15.0f) - (idx * 2); @@ -2288,7 +2288,7 @@ s32 MGSeqUpdateFlip(SeqWork *work) continue; } HuSprTPLvlSet(work->spr_grp[0], idx, 1.0f); - HuSprScaleSet(work->spr_grp[0], idx, sin(M_PI * ((scale / 30.0f) * 180.0f) / 180.0), 1.0f); + HuSprScaleSet(work->spr_grp[0], idx, sind((scale / 30.0f) * 180.0f), 1.0f); } } } @@ -2400,13 +2400,13 @@ s32 MGSeqUpdateMGBowser(SeqWork *work) } time_angle = 540.0 * (1.0f - (time / 50.0f)); pos_x = (28.0f + (0.5f * -(work->word_len * 56))) + (idx * 56); - angle = 180.0 * (atan2(pos_x, center_x) / M_PI); - pos_x = work->x + (center_x * sin(M_PI * (angle + time_angle) / 180.0)); + angle = atan2d(pos_x, center_x); + pos_x = work->x + (center_x * sind(angle + time_angle)); pos_y = work->y - (HU_DISP_CENTERY * (1.0 - (time / 50.0f))); HuSprPosSet(work->spr_grp[0], idx, pos_x, pos_y); - temp_f25 = 0.9 + (0.1 * cos(M_PI * (angle + time_angle) / 180.0)); - HuSprScaleSet(work->spr_grp[0], idx, temp_f25 * cos(M_PI * (angle + time_angle) / 180.0), temp_f25); - scale_arr[idx] = cos(M_PI * (angle + time_angle) / 180.0); + temp_f25 = 0.9 + (0.1 * cosd(angle + time_angle)); + HuSprScaleSet(work->spr_grp[0], idx, temp_f25 * cosd(angle + time_angle), temp_f25); + scale_arr[idx] = cosd(angle + time_angle); spr_idx[idx] = idx; } } @@ -2429,7 +2429,7 @@ s32 MGSeqUpdateMGBowser(SeqWork *work) else { if (work->time > 60 && work->time <= 80) { time = work->time - 60; - scale = 0.5 * sin(((time * 9.0f) * M_PI) / 180.0); + scale = 0.5 * sind(time * 9.0f); for (i = 0; i < work->word_len; i++) { pos_x = (28.0f * (scale + work->scale_x)) + (work->x - (0.5f * ((work->word_len * 56) * (scale + work->scale_x)))) + ((i * 56) * (scale + work->scale_x)); @@ -2468,13 +2468,13 @@ s32 MGSeqUpdateMGBowser(SeqWork *work) } } time = work->time; - scale = work->scale_x + (0.5 * sin(((time * 9.0f) * M_PI) / 180.0)); + scale = work->scale_x + (0.5 * sind(time * 9.0f)); for (i = 0; i < work->word_len; i++) { HuSprAttrReset(work->spr_grp[0], i, HUSPR_ATTR_DISPOFF); pos_x = ((28.0f * scale) + (work->x - (0.5f * (scale * (work->word_len * 56))))) + (scale * (i * 56)); HuSprPosSet(work->spr_grp[0], i, pos_x, work->y); - HuSprScaleSet(work->spr_grp[0], i, work->scale_x + (sin((M_PI * (time * 9.0f)) / 180.0)), - work->scale_y + (sin((M_PI * (time * 9.0f)) / 180.0))); + HuSprScaleSet(work->spr_grp[0], i, work->scale_x + (sind(time * 9.0f)), + work->scale_y + sind(time * 9.0f)); } if (time == 20.0f) { for (j = 1; j < 4; j++) { @@ -2632,14 +2632,14 @@ s32 MGSeqUpdateDraw(SeqWork *work) if (work->time <= 20) { time = work->time; zrot = 365.0f * (time / 20.0f); - scale = 1.3f * sin(M_PI * (90.0f * (time / 20.0f)) / 180.0); + scale = 1.3f * sind(90.0f * (time / 20.0f)); HuSprGrpScaleSet(group, scale, scale); HuSprGrpZRotSet(group, zrot); } if (work->time > 20 && work->time <= 25) { HuSprGrpZRotSet(group, 0.0f); time = work->time - 20; - scale = 1.0 + (0.3 * cos(M_PI * (90.0f * (time / 5.0f)) / 180.0)); + scale = 1.0 + (0.3 * cosd(90.0f * (time / 5.0f))); HuSprGrpScaleSet(group, scale, scale); } if (work->time == 5) { @@ -2971,10 +2971,10 @@ s32 MGSeqUpdateWin(SeqWork *work) if (work->time <= 20) { time = work->time; zrot = 365.0f * (time / 20.0f); - scale = sin(M_PI * (90.0f * (time / 20.0f)) / 180.0); + scale = sind(90.0f * (time / 20.0f)); HuSprGrpScaleSet(work->spr_grp[0], scale, scale); HuSprGrpZRotSet(work->spr_grp[0], zrot); - scale = 1.0 + (5.0 * cos(M_PI * (90.0f * (time / 20.0f)) / 180.0)); + scale = 1.0 + (5.0 * cosd(90.0f * (time / 20.0f))); tp_lvl = time / 20.0f; for (idx = 1; idx < work->word_len; idx++) { HuSprGrpTPLvlSet(work->spr_grp[idx], tp_lvl); @@ -3300,7 +3300,7 @@ static void PauseProc(void) mg = omMgIndexGet(omcurovl); if (mgInfoTbl[mg].inst_mess[1] == 0 && mgInfoTbl[mg].inst_mess[2] == 0) { for (i = 1; i <= 20; i++) { - ratio = sin(M_PI * (i * 4.5f) / 180.0); + ratio = sind(i * 4.5f); HuSprGrpPosSet(work.spr_grp[0], HU_DISP_CENTERX, (ratio * 290) - 50.0f); HuPrcVSleep(); } @@ -3334,7 +3334,7 @@ static void PauseProc(void) } } for (i = 1; i <= 20; i++) { - ratio = sin(M_PI * (i * 4.5f) / 180.0); + ratio = sind(i * 4.5f); HuSprGrpPosSet(work.spr_grp[0], HU_DISP_CENTERX, (ratio * 150) - 50.0f); HuWinPosSet(window[0], (PAUSE_WIN_DIST + PAUSE_WIN_X) * ratio - PAUSE_WIN_DIST, HU_DISP_CENTERY - 100); HuWinPosSet(window[1], -(PAUSE_WIN_DIST - PAUSE_WIN_X) * ratio + PAUSE_WIN_DIST, HU_DISP_CENTERY + 32); @@ -3351,7 +3351,7 @@ static void PauseProc(void) HuWinMesSpeedSet(window[0], 0); HuWinMesSet(window[0], mgInfoTbl[mg].inst_mess[1]); for (i = 1; i <= 20; i++) { - ratio = sin(M_PI * (i * 4.5f) / 180.0); + ratio = sind(i * 4.5f); HuSprGrpPosSet(work.spr_grp[0], HU_DISP_CENTERX, (ratio * 150) - 50.0f); HuWinPosSet(window[0], (PAUSE_WIN_DIST + PAUSE_WIN_X) * ratio - PAUSE_WIN_DIST, HU_DISP_CENTERY - 70); if (window[2] != -1) { @@ -3369,7 +3369,7 @@ static void PauseProc(void) pauseWaitF = 0; if (window[0] == -1 && window[1] == -1) { for (i = 1; i <= 10; i++) { - ratio = cos(M_PI * (i * 9.0f) / 180.0); + ratio = cosd(i * 9.0f); HuSprGrpPosSet(work.spr_grp[0], HU_DISP_CENTERX, (ratio * 290) - 50.0f); HuPrcVSleep(); } @@ -3377,7 +3377,7 @@ static void PauseProc(void) else { if (window[1] != -1) { for (i = 1; i <= 10; i++) { - ratio = cos(M_PI * (i * 9.0f) / 180.0); + ratio = cosd(i * 9.0f); HuSprGrpPosSet(work.spr_grp[0], HU_DISP_CENTERX, (ratio * 150) - 50.0f); HuWinPosSet(window[0], (PAUSE_WIN_DIST + PAUSE_WIN_X) * ratio - PAUSE_WIN_DIST, HU_DISP_CENTERY - 100); HuWinPosSet(window[1], -(PAUSE_WIN_DIST - PAUSE_WIN_X) * ratio + PAUSE_WIN_DIST, HU_DISP_CENTERY + 32); @@ -3389,7 +3389,7 @@ static void PauseProc(void) } else { for (i = 1; i <= 10; i++) { - ratio = cos(M_PI * (i * 9.0f) / 180.0); + ratio = cosd(i * 9.0f); HuSprGrpPosSet(work.spr_grp[0], HU_DISP_CENTERX, (ratio * 150) - 50.0f); HuWinPosSet(window[0], (PAUSE_WIN_DIST + PAUSE_WIN_X) * ratio - PAUSE_WIN_DIST, HU_DISP_CENTERY - 70); if (window[2] != -1) { @@ -3582,7 +3582,7 @@ static void PracticeProc(void) if (i != 4) { break; } - HuSprTPLvlSet(group, 0, fabs(sin(M_PI * time / 180.0))); + HuSprTPLvlSet(group, 0, fabs(sind(time))); time += 2.0f; HuPrcVSleep(); } while (1); From d7cb16e6cc7ec267e2dc13c87fbae2b3d372fc90 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sat, 4 Jan 2025 23:01:04 -0800 Subject: [PATCH 099/178] Matched last function in m413Dll (#507) --- config/GMPE01_00/rels/m413Dll/symbols.txt | 30 +++++++++++------------ configure.py | 2 +- src/REL/m413Dll/main.c | 5 ++-- 3 files changed, 18 insertions(+), 19 deletions(-) diff --git a/config/GMPE01_00/rels/m413Dll/symbols.txt b/config/GMPE01_00/rels/m413Dll/symbols.txt index 69d55a26..22b18c0f 100644 --- a/config/GMPE01_00/rels/m413Dll/symbols.txt +++ b/config/GMPE01_00/rels/m413Dll/symbols.txt @@ -177,21 +177,21 @@ lbl_1_data_0 = .data:0x00000000; // type:object size:0x4 data:4byte lbl_1_data_4 = .data:0x00000004; // type:object size:0x8 data:4byte lbl_1_data_C = .data:0x0000000C; // type:object size:0x10 data:4byte lbl_1_data_1C = .data:0x0000001C; // type:object size:0x1C data:float -lbl_1_data_38 = .data:0x00000038; // type:object size:0x9 data:string -lbl_1_data_41 = .data:0x00000041; // type:object size:0x19 data:string -lbl_1_data_5A = .data:0x0000005A; // type:object size:0x1B data:string -lbl_1_data_75 = .data:0x00000075; // type:object size:0x10 data:string -lbl_1_data_85 = .data:0x00000085; // type:object size:0x10 data:string -lbl_1_data_95 = .data:0x00000095; // type:object size:0x10 data:string -lbl_1_data_A5 = .data:0x000000A5; // type:object size:0x10 data:string -lbl_1_data_B5 = .data:0x000000B5; // type:object size:0x11 data:string -lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x11 data:string -lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x12 data:string -lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x12 data:string -lbl_1_data_FB = .data:0x000000FB; // type:object size:0x12 data:string -lbl_1_data_10D = .data:0x0000010D; // type:object size:0xF data:string -lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0x24 data:string +lbl_1_data_38 = .data:0x00000038; // type:object size:0x9 scope:local data:string +lbl_1_data_41 = .data:0x00000041; // type:object size:0x19 scope:local data:string +lbl_1_data_5A = .data:0x0000005A; // type:object size:0x1B scope:local data:string +lbl_1_data_75 = .data:0x00000075; // type:object size:0x10 scope:local data:string +lbl_1_data_85 = .data:0x00000085; // type:object size:0x10 scope:local data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0x10 scope:local data:string +lbl_1_data_A5 = .data:0x000000A5; // type:object size:0x10 scope:local data:string +lbl_1_data_B5 = .data:0x000000B5; // type:object size:0x11 scope:local data:string +lbl_1_data_C6 = .data:0x000000C6; // type:object size:0x11 scope:local data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x12 scope:local data:string +lbl_1_data_E9 = .data:0x000000E9; // type:object size:0x12 scope:local data:string +lbl_1_data_FB = .data:0x000000FB; // type:object size:0x12 scope:local data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0xF scope:local data:string +lbl_1_data_11C = .data:0x0000011C; // type:object size:0x19 scope:local data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0x24 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:4byte diff --git a/configure.py b/configure.py index 755bf193..845a2f45 100644 --- a/configure.py +++ b/configure.py @@ -965,7 +965,7 @@ config.libs = [ Rel( "m413Dll", # Bob-omb Breakers objects={ - Object(NonMatching, "REL/m413Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m413Dll/main.c"), }, ), Rel( diff --git a/src/REL/m413Dll/main.c b/src/REL/m413Dll/main.c index ee218503..bcf73c18 100644 --- a/src/REL/m413Dll/main.c +++ b/src/REL/m413Dll/main.c @@ -781,7 +781,7 @@ void fn_1_19C8(omObjData *object) temp_r26 = (temp_r26 >= 4) ? (temp_r26 - 4) : ((temp_r26 < 0) ? (temp_r26 + 4) : temp_r26); temp_r31->unk74++; if (temp_r31->unk1C == -1) { - s32 sp20C[4] = { 120, 50, 25, 2 }; + s32 sp20C[4] = { 120, 60, 25, 2 }; s32 sp200[3] = { 60, 45, 25 }; temp_r31->unk90 = (temp_r31->unk8C == temp_r31->unk48[0]->unk18 && temp_r31->unk8C != temp_r31->unk7C) ? (temp_r31->unk90 + 1) : 0; temp_r31->unk8C = temp_r31->unk48[0]->unk18; @@ -1466,7 +1466,6 @@ void fn_1_8AC8(StructBss2A6C *arg0, StructSp14C8 *arg1) } } -// decomp.me link is https://decomp.me/scratch/PbkiW void fn_1_8C10(omObjData *object) { s32 temp_r31; @@ -1672,7 +1671,7 @@ void fn_1_8C10(omObjData *object) temp_f26 = lbl_1_bss_B8.unkC.x; temp_f27 *= lbl_1_bss_B8.unk4 * 2; temp_f26 *= lbl_1_bss_B8.unk4 * 2; - lbl_1_bss_B8.unk0 = lbl_1_bss_B8.unk0 == 0; + lbl_1_bss_B8.unk0 = !lbl_1_bss_B8.unk0; lbl_1_bss_B8.unk4 = (lbl_1_bss_B8.unk4 > 24) ? 23 : ((lbl_1_bss_B8.unk4 - 1 > 0) ? lbl_1_bss_B8.unk4 - 1 : 0); Hu3DCameraPosSet(1, temp_f27, 37.139069 + temp_f26, 2599.7346f, 0, 1, 0, temp_f27, 50.0f + temp_f26, 0); } From b347ee8bd02ede639436f370a873bc8ae2879887 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sun, 5 Jan 2025 05:59:51 -0800 Subject: [PATCH 100/178] Matched last function in m426Dll (#508) --- configure.py | 2 +- src/REL/m426Dll/main.c | 8 +++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/configure.py b/configure.py index 845a2f45..b0884088 100644 --- a/configure.py +++ b/configure.py @@ -1059,7 +1059,7 @@ config.libs = [ Rel( "m426Dll", # Revers-a-Bomb objects={ - Object(NonMatching, "REL/m426Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m426Dll/main.c"), }, ), Rel( diff --git a/src/REL/m426Dll/main.c b/src/REL/m426Dll/main.c index 7066b831..e91e3258 100644 --- a/src/REL/m426Dll/main.c +++ b/src/REL/m426Dll/main.c @@ -780,7 +780,6 @@ void fn_1_125C(omObjData *object) object->func = NULL; } -// TODO https://decomp.me/scratch/1aZdv void fn_1_16F8(omObjData *object) { s32 spA8[3]; @@ -813,7 +812,7 @@ void fn_1_16F8(omObjData *object) s32 var_r24; s32 var_r23; s32 var_r22; - s32 var_r21; // this is weird, used as a temporary + s32 var_r21; sp18 = 0; sp14 = 0; @@ -827,7 +826,7 @@ void fn_1_16F8(omObjData *object) } if (var_r31->unk_14) { sp20 = sp1C = 0.0f; - sp10 = 0; + var_r21 = sp10 = 0; fn_1_2F5C(object, &sp20, &sp1C, &sp10); } else { @@ -850,8 +849,7 @@ void fn_1_16F8(omObjData *object) else { if (!lbl_1_bss_40) { sp20 = sp1C = 0.0f; - - sp10 = 0; + var_r21 = sp10 = 0; } if (fabs(sp20) > 8.0) { var_f30 = 0.25f * sp20; From 05a2e87763417c1e77505144bf7bba9ac1109296 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sun, 5 Jan 2025 22:31:32 +0100 Subject: [PATCH 101/178] Port m402Dll and m404Dll to PAL and finish m458Dll (#509) * Ported m404Dll to PAL and misc changes * Port m402Dll to PAL * Cleaned up some ternaries in m458Dll * Finish m458Dll with the help of Shigure --- config/GMPE01_00/rels/m404Dll/symbols.txt | 2 +- config/GMPE01_00/rels/m449Dll/symbols.txt | 2 +- config/GMPE01_00/rels/resultDll/symbols.txt | 4 +- config/GMPJ01_00/rels/m444dll/symbols.txt | 382 +++++++++---------- config/GMPP01_00/rels/m402Dll/splits.txt | 6 + config/GMPP01_00/rels/m402Dll/symbols.txt | 402 ++++++++++---------- config/GMPP01_00/rels/m404Dll/splits.txt | 9 + config/GMPP01_00/rels/m404Dll/symbols.txt | 130 +++---- configure.py | 6 +- include/REL/modeseldll.h | 4 +- src/REL/m402Dll/main.c | 24 +- src/REL/m404Dll/main.c | 39 +- src/REL/m449Dll/main.c | 35 +- src/REL/m457Dll/main.c | 4 + src/REL/m458Dll/main.c | 179 +++------ src/REL/modeseldll/modesel.c | 5 + src/REL/option/record.c | 25 +- src/REL/present/present.c | 10 +- 18 files changed, 604 insertions(+), 664 deletions(-) diff --git a/config/GMPE01_00/rels/m404Dll/symbols.txt b/config/GMPE01_00/rels/m404Dll/symbols.txt index dd934235..e6bb9e5a 100644 --- a/config/GMPE01_00/rels/m404Dll/symbols.txt +++ b/config/GMPE01_00/rels/m404Dll/symbols.txt @@ -60,7 +60,7 @@ lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:f lbl_1_rodata_34 = .rodata:0x00000034; // type:object size:0x4 scope:local data:float lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:2byte +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x6 scope:local data:2byte lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float diff --git a/config/GMPE01_00/rels/m449Dll/symbols.txt b/config/GMPE01_00/rels/m449Dll/symbols.txt index 07d61d06..bfe80246 100644 --- a/config/GMPE01_00/rels/m449Dll/symbols.txt +++ b/config/GMPE01_00/rels/m449Dll/symbols.txt @@ -178,7 +178,7 @@ lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte lbl_1_data_22C = .data:0x0000022C; // type:object size:0x4 data:4byte lbl_1_data_230 = .data:0x00000230; // type:object size:0xC data:4byte lbl_1_data_23C = .data:0x0000023C; // type:object size:0x28 data:4byte -lbl_1_data_264 = .data:0x00000264; // type:object size:0x20 scope:local data:string +lbl_1_data_264 = .data:0x00000264; // type:object size:0x1D scope:local data:string lbl_1_data_284 = .data:0x00000284; // type:object size:0x4 data:4byte lbl_1_data_288 = .data:0x00000288; // type:object size:0x4 data:float lbl_1_data_28C = .data:0x0000028C; // type:object size:0x4 data:float diff --git a/config/GMPE01_00/rels/resultDll/symbols.txt b/config/GMPE01_00/rels/resultDll/symbols.txt index b0b7a9af..14dbe624 100644 --- a/config/GMPE01_00/rels/resultDll/symbols.txt +++ b/config/GMPE01_00/rels/resultDll/symbols.txt @@ -94,7 +94,7 @@ lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 scope:local data: 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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float @@ -144,7 +144,7 @@ lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x20 lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x10 lbl_1_data_408 = .data:0x00000408; // type:object size:0x30 lbl_1_data_438 = .data:0x00000438; // type:object size:0x10 -lbl_1_data_448 = .data:0x00000448; // type:object size:0x8 scope:local +lbl_1_data_448 = .data:0x00000448; // type:object size:0x5 scope:local data:string lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 lbl_1_data_468 = .data:0x00000468; // type:object size:0x20 lbl_1_data_488 = .data:0x00000488; // type:object size:0x30 diff --git a/config/GMPJ01_00/rels/m444dll/symbols.txt b/config/GMPJ01_00/rels/m444dll/symbols.txt index 88d2d388..a6bc53d3 100644 --- a/config/GMPJ01_00/rels/m444dll/symbols.txt +++ b/config/GMPJ01_00/rels/m444dll/symbols.txt @@ -38,197 +38,197 @@ fn_1_D9C8 = .text:0x0000D9D8; // type:function size:0x2C fn_1_D9F4 = .text:0x0000DA04; // type:function size:0x42C _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -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_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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_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:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0xC data:4byte -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 scope:local data:double +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_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +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_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:0x8 scope:local data:double +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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 scope:local data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 scope:local data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x118 lbl_1_data_118 = .data:0x00000118; // type:object size:0x28 lbl_1_data_140 = .data:0x00000140; // type:object size:0x54 data:float diff --git a/config/GMPP01_00/rels/m402Dll/splits.txt b/config/GMPP01_00/rels/m402Dll/splits.txt index 531cd645..61b6a88d 100644 --- a/config/GMPP01_00/rels/m402Dll/splits.txt +++ b/config/GMPP01_00/rels/m402Dll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m402Dll/main.c: + .text start:0x00000000 end:0x00009B6C + .rodata start:0x00000000 end:0x00000194 + .data start:0x00000000 end:0x000004C6 + .bss start:0x00000000 end:0x00000210 diff --git a/config/GMPP01_00/rels/m402Dll/symbols.txt b/config/GMPP01_00/rels/m402Dll/symbols.txt index c3491cd9..d31e3908 100644 --- a/config/GMPP01_00/rels/m402Dll/symbols.txt +++ b/config/GMPP01_00/rels/m402Dll/symbols.txt @@ -1,206 +1,206 @@ -fn_1_0 = .text:0x00000000; // type:function size:0x24 -fn_1_24 = .text:0x00000024; // type:function size:0x88 -fn_1_AC = .text:0x000000AC; // type:function size:0xA4 -fn_1_150 = .text:0x00000150; // type:function size:0x24 -fn_1_174 = .text:0x00000174; // type:function size:0x164 -fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C -fn_1_414 = .text:0x00000414; // type:function size:0x58 -fn_1_46C = .text:0x0000046C; // type:function size:0x114 -fn_1_580 = .text:0x00000580; // type:function size:0x204 -fn_1_784 = .text:0x00000784; // type:function size:0x240 -fn_1_9C4 = .text:0x000009C4; // type:function size:0x54 -fn_1_A18 = .text:0x00000A18; // type:function size:0x10C -fn_1_B24 = .text:0x00000B24; // type:function size:0x680 -fn_1_11A4 = .text:0x000011A4; // type:function size:0x15C -fn_1_1300 = .text:0x00001300; // type:function size:0x8C -fn_1_138C = .text:0x0000138C; // type:function size:0x334 -fn_1_16C0 = .text:0x000016C0; // type:function size:0x350 -fn_1_1A10 = .text:0x00001A10; // type:function size:0x2B8 -fn_1_1CC8 = .text:0x00001CC8; // type:function size:0x58 -fn_1_1D20 = .text:0x00001D20; // type:function size:0xB0 -fn_1_1DD0 = .text:0x00001DD0; // type:function size:0x104 -fn_1_1ED4 = .text:0x00001ED4; // type:function size:0x34 -fn_1_1F08 = .text:0x00001F08; // type:function size:0x6C -fn_1_1F74 = .text:0x00001F74; // type:function size:0x3F0 +fn_1_0 = .text:0x00000000; // type:function size:0x24 scope:local +fn_1_24 = .text:0x00000024; // type:function size:0x88 scope:local +fn_1_AC = .text:0x000000AC; // type:function size:0xA4 scope:local +fn_1_150 = .text:0x00000150; // type:function size:0x24 scope:local +fn_1_174 = .text:0x00000174; // type:function size:0x164 scope:local +fn_1_2D8 = .text:0x000002D8; // type:function size:0x13C scope:local +fn_1_414 = .text:0x00000414; // type:function size:0x58 scope:local +fn_1_46C = .text:0x0000046C; // type:function size:0x114 scope:local +fn_1_580 = .text:0x00000580; // type:function size:0x204 scope:local +fn_1_798 = .text:0x00000784; // type:function size:0x240 scope:local +fn_1_9EC = .text:0x000009C4; // type:function size:0x54 scope:local +fn_1_A40 = .text:0x00000A18; // type:function size:0x10C scope:local +fn_1_B4C = .text:0x00000B24; // type:function size:0x680 scope:local +fn_1_11F4 = .text:0x000011A4; // type:function size:0x15C scope:local +fn_1_1350 = .text:0x00001300; // type:function size:0x8C scope:local +fn_1_13DC = .text:0x0000138C; // type:function size:0x334 scope:local +fn_1_1710 = .text:0x000016C0; // type:function size:0x350 scope:local +fn_1_1A60 = .text:0x00001A10; // type:function size:0x2B8 scope:local +fn_1_1D18 = .text:0x00001CC8; // type:function size:0x58 scope:local +fn_1_1D70 = .text:0x00001D20; // type:function size:0xB0 scope:local +fn_1_1E20 = .text:0x00001DD0; // type:function size:0x104 scope:local +fn_1_1F24 = .text:0x00001ED4; // type:function size:0x34 scope:local +fn_1_1F58 = .text:0x00001F08; // type:function size:0x6C scope:local +fn_1_1FC4 = .text:0x00001F74; // type:function size:0x3F0 scope:local _prolog = .text:0x00002364; // type:function size:0x54 scope:global _epilog = .text:0x000023B8; // type:function size:0x4C scope:global -fn_1_2404 = .text:0x00002404; // type:function size:0x2F0 -fn_1_26F4 = .text:0x000026F4; // type:function size:0x64 -fn_1_2758 = .text:0x00002758; // type:function size:0xD8 -fn_1_2830 = .text:0x00002830; // type:function size:0xF0 -fn_1_2920 = .text:0x00002920; // type:function size:0x1C0 -fn_1_2AE0 = .text:0x00002AE0; // type:function size:0x28C -fn_1_2D6C = .text:0x00002D6C; // type:function size:0x380 -fn_1_30EC = .text:0x000030EC; // type:function size:0xC8 -fn_1_31B4 = .text:0x000031B4; // type:function size:0xF8C -fn_1_4140 = .text:0x00004140; // type:function size:0xF4 -fn_1_4234 = .text:0x00004234; // type:function size:0x154 -fn_1_4388 = .text:0x00004388; // type:function size:0x1FF0 -fn_1_6378 = .text:0x00006378; // type:function size:0x490 -fn_1_6808 = .text:0x00006808; // type:function size:0x4 -fn_1_680C = .text:0x0000680C; // type:function size:0x258 -fn_1_6A64 = .text:0x00006A64; // type:function size:0x3B0 -fn_1_6E14 = .text:0x00006E14; // type:function size:0x1BC -fn_1_6FD0 = .text:0x00006FD0; // type:function size:0xC4 -fn_1_7094 = .text:0x00007094; // type:function size:0x86C -fn_1_7900 = .text:0x00007900; // type:function size:0x19C -fn_1_7A9C = .text:0x00007A9C; // type:function size:0x25C -fn_1_7CF8 = .text:0x00007CF8; // type:function size:0x4 -fn_1_7CFC = .text:0x00007CFC; // type:function size:0x134 -fn_1_7E30 = .text:0x00007E30; // type:function size:0x4 -fn_1_7E34 = .text:0x00007E34; // type:function size:0x1C4 -fn_1_7FF8 = .text:0x00007FF8; // type:function size:0x1D0 -fn_1_81C8 = .text:0x000081C8; // type:function size:0xE38 -fn_1_9000 = .text:0x00009000; // type:function size:0x1EC -fn_1_91EC = .text:0x000091EC; // type:function size:0x8B0 -fn_1_9A9C = .text:0x00009A9C; // type:function size:0xD0 +fn_1_2454 = .text:0x00002404; // type:function size:0x2F0 scope:local +fn_1_2744 = .text:0x000026F4; // type:function size:0x64 scope:local +fn_1_27A8 = .text:0x00002758; // type:function size:0xD8 scope:local +fn_1_2880 = .text:0x00002830; // type:function size:0xF0 scope:local +fn_1_2970 = .text:0x00002920; // type:function size:0x1C0 scope:local +fn_1_2B30 = .text:0x00002AE0; // type:function size:0x28C scope:local +fn_1_2DBC = .text:0x00002D6C; // type:function size:0x380 scope:local +fn_1_313C = .text:0x000030EC; // type:function size:0xC8 scope:local +fn_1_3204 = .text:0x000031B4; // type:function size:0xF8C scope:local +fn_1_4190 = .text:0x00004140; // type:function size:0xF4 scope:local +fn_1_4284 = .text:0x00004234; // type:function size:0x154 scope:local +fn_1_43D8 = .text:0x00004388; // type:function size:0x1FF0 scope:local +fn_1_63C8 = .text:0x00006378; // type:function size:0x490 scope:local +fn_1_6858 = .text:0x00006808; // type:function size:0x4 scope:local +fn_1_685C = .text:0x0000680C; // type:function size:0x258 scope:local +fn_1_6AB4 = .text:0x00006A64; // type:function size:0x3B0 scope:local +fn_1_6E64 = .text:0x00006E14; // type:function size:0x1BC scope:local +fn_1_7020 = .text:0x00006FD0; // type:function size:0xC4 scope:local +fn_1_70E4 = .text:0x00007094; // type:function size:0x86C scope:local +fn_1_7950 = .text:0x00007900; // type:function size:0x19C scope:local +fn_1_7AEC = .text:0x00007A9C; // type:function size:0x25C scope:local +fn_1_7D48 = .text:0x00007CF8; // type:function size:0x4 scope:local +fn_1_7D4C = .text:0x00007CFC; // type:function size:0x134 scope:local +fn_1_7E80 = .text:0x00007E30; // type:function size:0x4 scope:local +fn_1_7E84 = .text:0x00007E34; // type:function size:0x1C4 scope:local +fn_1_8048 = .text:0x00007FF8; // type:function size:0x1D0 scope:local +fn_1_8218 = .text:0x000081C8; // type:function size:0xE38 scope:local +fn_1_9058 = .text:0x00009000; // type:function size:0x1EC scope:local +ObjectSetup = .text:0x000091EC; // type:function size:0x8B0 +fn_1_9AF4 = .text:0x00009A9C; // type:function size:0xD0 scope:local _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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_data_0 = .data:0x00000000; // type:object size:0x10 -lbl_1_data_10 = .data:0x00000010; // type:object size:0xC data:4byte -lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC -lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:4byte -lbl_1_data_34 = .data:0x00000034; // type:object size:0xC -lbl_1_data_40 = .data:0x00000040; // type:object size:0xC -lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 -lbl_1_data_60 = .data:0x00000060; // type:object size:0xC -lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC -lbl_1_data_78 = .data:0x00000078; // type:object size:0x160 -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x10 -lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC -lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x4 data:4byte -lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x8 -lbl_1_data_200 = .data:0x00000200; // type:object size:0x18 -lbl_1_data_218 = .data:0x00000218; // type:object size:0x1C -lbl_1_data_234 = .data:0x00000234; // type:object size:0x190 -lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x14 -lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x1A data:string -lbl_1_data_3F2 = .data:0x000003F2; // type:object size:0x9 data:string -lbl_1_data_3FB = .data:0x000003FB; // type:object size:0x6 data:string -lbl_1_data_401 = .data:0x00000401; // type:object size:0x10 data:string -lbl_1_data_411 = .data:0x00000411; // type:object size:0x1F +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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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_data_0 = .data:0x00000000; // type:object size:0x10 scope:local +lbl_1_data_10 = .data:0x00000010; // type:object size:0xC scope:local data:4byte +lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC scope:local +lbl_1_data_28 = .data:0x00000028; // type:object size:0xC scope:local data:4byte +lbl_1_data_34 = .data:0x00000034; // type:object size:0xC scope:local +lbl_1_data_40 = .data:0x00000040; // type:object size:0xC scope:local +lbl_1_data_4C = .data:0x0000004C; // type:object size:0x14 scope:local +lbl_1_data_60 = .data:0x00000060; // type:object size:0xC scope:local +lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC scope:local +lbl_1_data_78 = .data:0x00000078; // type:object size:0x160 scope:local +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x10 scope:local +lbl_1_data_1E8 = .data:0x000001E8; // type:object size:0xC scope:local +lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x4 scope:local data:4byte +lbl_1_data_1F8 = .data:0x000001F8; // type:object size:0x8 scope:local +lbl_1_data_200 = .data:0x00000200; // type:object size:0x18 scope:local +lbl_1_data_218 = .data:0x00000218; // type:object size:0x1C scope:local +lbl_1_data_234 = .data:0x00000234; // type:object size:0x190 scope:local +lbl_1_data_3C4 = .data:0x000003C4; // type:object size:0x14 scope:local +lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x1A scope:local data:string +lbl_1_data_3F2 = .data:0x000003F2; // type:object size:0x9 scope:local data:string +lbl_1_data_3FB = .data:0x000003FB; // type:object size:0x6 scope:local data:string +lbl_1_data_401 = .data:0x00000401; // type:object size:0x10 scope:local data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x1F scope:local jumptable_1_data_430 = .data:0x00000430; // type:object size:0x40 scope:local -lbl_1_data_470 = .data:0x00000470; // type:object size:0x17 data:string -lbl_1_data_487 = .data:0x00000487; // type:object size:0x1B data:string -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x24 data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xE -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float -lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x100 -lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x40 data:4byte -lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 data:float -lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 data:4byte -lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 data:4byte -lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x2 data:2byte -lbl_1_bss_1AA = .bss:0x000001AA; // type:object size:0x2 data:2byte -lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 data:4byte -lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x4 data:4byte -lbl_1_bss_1B4 = .bss:0x000001B4; // type:object size:0x4 data:4byte -lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC data:4byte -lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC data:4byte -lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC data:4byte -lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC data:4byte -lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0x4 data:4byte -lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x18 data:4byte -lbl_1_bss_204 = .bss:0x00000204; // type:object size:0xC data:4byte +lbl_1_data_470 = .data:0x00000470; // type:object size:0x17 scope:local data:string +lbl_1_data_487 = .data:0x00000487; // type:object size:0x1B scope:local data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x24 scope:local data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 scope:local data:float +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 scope:local data:float +lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 scope:local data:float +lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xE scope:local +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 scope:local data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 scope:local data:float +lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x8 scope:local data:float +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x100 scope:local +lbl_1_bss_15C = .bss:0x0000015C; // type:object size:0x40 scope:local data:4byte +lbl_1_bss_19C = .bss:0x0000019C; // type:object size:0x4 scope:local data:float +lbl_1_bss_1A0 = .bss:0x000001A0; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1A4 = .bss:0x000001A4; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1A8 = .bss:0x000001A8; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_1AA = .bss:0x000001AA; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_1AC = .bss:0x000001AC; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1B0 = .bss:0x000001B0; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1B4 = .bss:0x000001B4; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1B8 = .bss:0x000001B8; // type:object size:0xC scope:local data:4byte +lbl_1_bss_1C4 = .bss:0x000001C4; // type:object size:0xC scope:local data:4byte +lbl_1_bss_1D0 = .bss:0x000001D0; // type:object size:0xC scope:local data:4byte +lbl_1_bss_1DC = .bss:0x000001DC; // type:object size:0xC scope:local data:4byte +lbl_1_bss_1E8 = .bss:0x000001E8; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1EC = .bss:0x000001EC; // type:object size:0x18 scope:local data:4byte +lbl_1_bss_204 = .bss:0x00000204; // type:object size:0xC scope:local data:4byte diff --git a/config/GMPP01_00/rels/m404Dll/splits.txt b/config/GMPP01_00/rels/m404Dll/splits.txt index 531cd645..a69fcd5d 100644 --- a/config/GMPP01_00/rels/m404Dll/splits.txt +++ b/config/GMPP01_00/rels/m404Dll/splits.txt @@ -5,3 +5,12 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m404Dll/main.c: + .text start:0x000000A0 end:0x00006C88 + .rodata start:0x00000000 end:0x00000148 + .data start:0x00000000 end:0x00000A0C + .bss start:0x00000000 end:0x0000005C diff --git a/config/GMPP01_00/rels/m404Dll/symbols.txt b/config/GMPP01_00/rels/m404Dll/symbols.txt index 3f46d237..9a309233 100644 --- a/config/GMPP01_00/rels/m404Dll/symbols.txt +++ b/config/GMPP01_00/rels/m404Dll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x2DC +ObjectSetup = .text:0x000000A0; // type:function size:0x2DC fn_1_37C = .text:0x0000037C; // type:function size:0x10 fn_1_38C = .text:0x0000038C; // type:function size:0x10 fn_1_39C = .text:0x0000039C; // type:function size:0x64 @@ -46,63 +46,63 @@ fn_1_648C = .text:0x0000648C; // type:function size:0x250 fn_1_66DC = .text:0x000066DC; // type:function size:0x5AC _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:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:2byte -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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_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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x20 data:byte -lbl_1_rodata_11C = .rodata:0x0000011C; // type:object size:0x1 data:byte -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x1 data:byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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_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:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x6 scope:local data:2byte +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +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_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_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x20 scope:local data:byte +lbl_1_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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_data_0 = .data:0x00000000; // type:object size:0x248 lbl_1_data_248 = .data:0x00000248; // type:object size:0x260 lbl_1_data_4A8 = .data:0x000004A8; // type:object size:0x290 @@ -112,10 +112,10 @@ lbl_1_data_77C = .data:0x0000077C; // type:object size:0xC data:float lbl_1_data_788 = .data:0x00000788; // type:object size:0x4 lbl_1_data_78C = .data:0x0000078C; // type:object size:0xC lbl_1_data_798 = .data:0x00000798; // type:object size:0xC -lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x24 +lbl_1_data_7A4 = .data:0x000007A4; // type:object size:0x23 scope:local data:string lbl_1_data_7C8 = .data:0x000007C8; // type:object size:0x4 data:4byte jumptable_1_data_7CC = .data:0x000007CC; // type:object size:0x28 scope:local -lbl_1_data_7F4 = .data:0x000007F4; // type:object size:0x1C data:string +lbl_1_data_7F4 = .data:0x000007F4; // type:object size:0x1C scope:local data:string lbl_1_data_810 = .data:0x00000810; // type:object size:0xC lbl_1_data_81C = .data:0x0000081C; // type:object size:0x30 lbl_1_data_84C = .data:0x0000084C; // type:object size:0x20 @@ -127,13 +127,13 @@ lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x10 lbl_1_data_8E8 = .data:0x000008E8; // type:object size:0xC lbl_1_data_8F4 = .data:0x000008F4; // type:object size:0x8 data:wstring lbl_1_data_8FC = .data:0x000008FC; // type:object size:0x18 -lbl_1_data_914 = .data:0x00000914; // type:object size:0x1C +lbl_1_data_914 = .data:0x00000914; // type:object size:0x19 scope:local data:string lbl_1_data_930 = .data:0x00000930; // type:object size:0x20 lbl_1_data_950 = .data:0x00000950; // type:object size:0x20 -lbl_1_data_970 = .data:0x00000970; // type:object size:0x7 data:string -lbl_1_data_977 = .data:0x00000977; // type:object size:0x7 data:string -lbl_1_data_97E = .data:0x0000097E; // type:object size:0x7 data:string -lbl_1_data_985 = .data:0x00000985; // type:object size:0x7 data:string +lbl_1_data_970 = .data:0x00000970; // type:object size:0x7 scope:local data:string +lbl_1_data_977 = .data:0x00000977; // type:object size:0x7 scope:local data:string +lbl_1_data_97E = .data:0x0000097E; // type:object size:0x7 scope:local data:string +lbl_1_data_985 = .data:0x00000985; // type:object size:0x7 scope:local data:string lbl_1_data_98C = .data:0x0000098C; // type:object size:0x10 lbl_1_data_99C = .data:0x0000099C; // type:object size:0x10 lbl_1_data_9AC = .data:0x000009AC; // type:object size:0x30 diff --git a/configure.py b/configure.py index b0884088..27092f4c 100644 --- a/configure.py +++ b/configure.py @@ -881,7 +881,7 @@ config.libs = [ Rel( "m402Dll", # Slime Time objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m402Dll/main.c"), + Object(Matching, "REL/m402Dll/main.c"), }, ), Rel( @@ -894,7 +894,7 @@ config.libs = [ Rel( "m404Dll", # Trace Race objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m404Dll/main.c"), + Object(Matching, "REL/m404Dll/main.c"), }, ), Rel( @@ -1279,7 +1279,7 @@ config.libs = [ Rel( "m458Dll", # Panels of Doom objects={ - Object(NonMatching, "REL/m458Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m458Dll/main.c"), }, ), Rel( diff --git a/include/REL/modeseldll.h b/include/REL/modeseldll.h index db80185b..4100ea20 100644 --- a/include/REL/modeseldll.h +++ b/include/REL/modeseldll.h @@ -27,6 +27,8 @@ typedef struct datalist_sprite { GXColor color; } DataListSprite; +// void fn_1_1EC0(s16 view); + s32 fn_1_2490(void); s32 fn_1_37DC(void); @@ -42,4 +44,4 @@ extern s16 lbl_1_data_100; extern DataListModel lbl_1_data_428[]; extern DataListSprite lbl_1_data_93C[]; -#endif \ No newline at end of file +#endif diff --git a/src/REL/m402Dll/main.c b/src/REL/m402Dll/main.c index 53a17274..d604cf04 100755 --- a/src/REL/m402Dll/main.c +++ b/src/REL/m402Dll/main.c @@ -778,7 +778,7 @@ static void fn_1_2970(UnkFn27A8Struct *arg0, omObjData *arg1, u8 arg2) static void fn_1_2B30(UnkFn27A8Struct *arg0, omObjData *arg1, omObjData *arg2) { arg0->unk50 = 0; - arg0->unk20 = (770.0f - arg0->unk1C) / 18.0f; + arg0->unk20 = (770.0f - arg0->unk1C) / (REFRESH_RATE * 0.3f); arg0->unk0C = Hu3DMotionTimeGet(arg2->model[0]); Hu3DMotionTimeSet(lbl_1_bss_54[arg0->unk54]->model[0], 0.0f); Hu3DMotionSpeedSet(arg1->model[0], 1.0f); @@ -795,13 +795,13 @@ static u8 fn_1_2DBC(UnkFn27A8Struct *arg0, omObjData *arg1) float var_f29; arg0->unk50++; - var_f30 = 90.0f * (arg0->unk50 / 18.0f); + var_f30 = 90.0f * (arg0->unk50 / (VERSION_NTSC ? 18.0f : 15.000001f)); var_f29 = arg0->unk0C * (1.0 - sind(var_f30)); Hu3DMotionTimeSet(arg1->model[0], var_f29); fn_1_1D18(arg1->model[0], "motionC-stretch", &sp20); arg0->unk28 = sp20.y - arg0->unk14 + 388.0f; arg0->unk1C += arg0->unk20; - if (18.0f < arg0->unk50) { + if ((REFRESH_RATE * 0.3f) < arg0->unk50) { arg0->unk20 = (670.0f - arg0->unk1C) / 20.0f; Hu3DModelAttrReset(arg1->model[0], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); Hu3DMotionSet(arg1->model[0], arg1->motion[2]); @@ -927,7 +927,7 @@ static void fn_1_3204(omObjData *arg0) } } } - if (60.0f <= temp_r31->unk30) { + if (1.0f * REFRESH_RATE <= temp_r31->unk30) { temp_r31->unk4C = 2017; fn_1_2B30(temp_r31, arg0, temp_r29); } @@ -950,7 +950,7 @@ static void fn_1_3204(omObjData *arg0) case 2017: if (fn_1_2DBC(temp_r31, temp_r29) != 0) { temp_r31->unk4C = 2018; - temp_r31->unk50 = 120; + temp_r31->unk50 = 2 * REFRESH_RATE; } break; case 2018: @@ -1125,7 +1125,7 @@ static void fn_1_43D8(omObjData *arg0) case 2008: if (fn_1_2DBC(temp_r31, temp_r30) != 0) { temp_r31->unk4C++; - temp_r31->unk50 = 120; + temp_r31->unk50 = 2 * REFRESH_RATE; } break; case 2009: @@ -1195,7 +1195,7 @@ static void fn_1_43D8(omObjData *arg0) case 2014: if (fn_1_2DBC(temp_r31, temp_r30) != 0) { temp_r31->unk4C++; - temp_r31->unk50 = 120; + temp_r31->unk50 = 2 * REFRESH_RATE; } break; case 2015: @@ -1665,8 +1665,8 @@ static void fn_1_8218(omObjData *arg0) } if (MGSeqStatGet(lbl_1_bss_1AA) == 0) { arg0->work[0]++; - lbl_1_bss_1B0 = 1800; - lbl_1_bss_1A8 = MGSeqCreate(1, lbl_1_bss_1B0 / 60, -1, -1); + lbl_1_bss_1B0 = 30 * REFRESH_RATE; + lbl_1_bss_1A8 = MGSeqCreate(1, lbl_1_bss_1B0 / REFRESH_RATE, -1, -1); lbl_1_bss_1AA = -1; } } @@ -1675,7 +1675,7 @@ static void fn_1_8218(omObjData *arg0) MGSeqParamSet(lbl_1_bss_1A8, 1, (lbl_1_bss_1B0 + REFRESH_RATE - 1) / REFRESH_RATE); lbl_1_bss_1B0--; if (lbl_1_bss_1B0 < 0 || lbl_1_bss_26 >= 0) { - lbl_1_bss_1B0 = 1800; + lbl_1_bss_1B0 = 30 * REFRESH_RATE; lbl_1_bss_2C = 0.0f; arg0->work[0] = 1007; } @@ -1698,8 +1698,8 @@ static void fn_1_8218(omObjData *arg0) } else { lbl_1_bss_2C += 1.0f; - if (90.0f >= lbl_1_bss_2C) { - fn_1_13DC(lbl_1_bss_2C / 90.0f, &lbl_1_data_1C); + if (1.5f * REFRESH_RATE >= lbl_1_bss_2C) { + fn_1_13DC(lbl_1_bss_2C / (1.5f * REFRESH_RATE), &lbl_1_data_1C); } if (MGSeqStatGet(lbl_1_bss_1AA) == 0) { arg0->work[0]++; diff --git a/src/REL/m404Dll/main.c b/src/REL/m404Dll/main.c index 6b790aee..e331d72f 100644 --- a/src/REL/m404Dll/main.c +++ b/src/REL/m404Dll/main.c @@ -12,6 +12,7 @@ #include "game/wipe.h" #include "string.h" +#include "version.h" typedef struct UnkM404Struct { s16 unk_00; @@ -281,7 +282,7 @@ s32 fn_1_38C(void) void fn_1_39C(omObjData *object) { fn_1_37C(0); - lbl_1_bss_24 = 60; + lbl_1_bss_24 = REFRESH_RATE; WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); object->func = fn_1_400; } @@ -294,7 +295,7 @@ void fn_1_400(omObjData *object) break; } fn_1_37C(1); - lbl_1_bss_24 = 180; + lbl_1_bss_24 = 3 * REFRESH_RATE; break; case 1: if (--lbl_1_bss_24) { @@ -327,22 +328,22 @@ void fn_1_400(omObjData *object) if (!MGSeqStatGet(lbl_1_bss_C)) { fn_1_37C(5); WipeColorSet(255, 255, 255); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); - lbl_1_bss_24 = 60; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, REFRESH_RATE / 2); + lbl_1_bss_24 = REFRESH_RATE; } case 5: if (--lbl_1_bss_24) { break; } fn_1_37C(6); - WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, REFRESH_RATE); break; case 6: if (WipeStatGet()) { break; } fn_1_37C(7); - lbl_1_bss_24 = 180; + lbl_1_bss_24 = 3 * REFRESH_RATE; break; case 7: if (--lbl_1_bss_24) { @@ -356,7 +357,7 @@ void fn_1_400(omObjData *object) else { HuAudSStreamPlay(4); } - lbl_1_bss_24 = 210; + lbl_1_bss_24 = 3.5 * REFRESH_RATE; break; case 8: break; @@ -740,7 +741,7 @@ void fn_1_1344(omObjData *object) DCFlushRangeNoSync(var_r31->unk_50->bmp->data, (var_r31->unk_50->bmp->pixSize * (var_r31->unk_50->bmp->sizeX * var_r31->unk_50->bmp->sizeY)) / 8); Hu3DMotionOverlaySet(object->model[0], object->motion[2]); object->trans.y = 1500.0f; - var_r31->unk_38 = var_r31->unk_02 * 60 / 2; + var_r31->unk_38 = var_r31->unk_02 * REFRESH_RATE / 2; CharModelDataClose(var_r31->unk_0C); if (GWPlayerCfg[var_r31->unk_02].iscom == 1) { var_r28 = lbl_1_data_8E8[lbl_1_bss_1C]; @@ -782,7 +783,7 @@ void fn_1_1AFC(omObjData *object) } } if (object->trans.y > 0.0f) { - var_r31->unk_24 = var_r31->unk_24 - 1.0000001f; + var_r31->unk_24 = var_r31->unk_24 - (VERSION_NTSC ? 1.0000001f : 1.2f); object->trans.y += var_r31->unk_24; if (object->trans.y < 0.0f) { object->trans.y = 0.0f; @@ -799,7 +800,7 @@ void fn_1_1AFC(omObjData *object) } if (var_r31->unk_38 == 0) { var_r31->unk_00_field2 = 1; - var_r31->unk_38 = 30; + var_r31->unk_38 = REFRESH_RATE / 2; return; } var_r31->unk_38--; @@ -950,13 +951,13 @@ void fn_1_3F30(omObjData *object) var_r31 = object->data; if (var_r31->unk_5E < (var_r31->unk_6C - 1)) { - if ((3.0f + var_r31->unk_64) >= var_r31->unk_68) { - var_r31->unk_64 = 3.0f - (var_r31->unk_68 - var_r31->unk_64); + if ((180.0f / REFRESH_RATE + var_r31->unk_64) >= var_r31->unk_68) { + var_r31->unk_64 = 180.0f / REFRESH_RATE - (var_r31->unk_68 - var_r31->unk_64); var_r31->unk_5E += 3; var_r31->unk_68 = fn_1_2EBC(var_r31->unk_70[var_r31->unk_5E], 1.0f); } else { - var_r31->unk_64 += 3.0f; + var_r31->unk_64 += 180.0f / REFRESH_RATE; } var_r31->unk_60 = fn_1_3A38(var_r31->unk_70[var_r31->unk_5E], var_r31->unk_60, var_r31->unk_64); var_r30 = var_r31->unk_70[var_r31->unk_5E]; @@ -1012,8 +1013,8 @@ void fn_1_44A0(omObjData *object) } if (((var_r31->unk_06 * var_r31->unk_06) + (var_r31->unk_07 * var_r31->unk_07)) > 16.0f) { var_f31 = atan2d(var_r31->unk_06, -var_r31->unk_07); - var_r31->unk_20 = 3.0f * sind(var_f31); - var_r31->unk_28 = 3.0f * cosd(var_f31); + var_r31->unk_20 = (VERSION_NTSC ? 3.0 : 3.5999999046325684) * sind(var_f31); + var_r31->unk_28 = (VERSION_NTSC ? 3.0 : 3.5999999046325684) * cosd(var_f31); var_r28 = 1; if (var_r31->unk_20 > 0.0f) { CharModelMotionSpeedSet(var_r31->unk_0C, 0.5f); @@ -1090,7 +1091,7 @@ void fn_1_44A0(omObjData *object) break; case 1: var_r28 = 1; - object->trans.x += 4.0000005f; + object->trans.x += VERSION_NTSC ? 4.0000005f : 4.8f; if (object->trans.x >= 3200.0f) { var_r31->unk_12++; var_r31->unk_38 = 0x3C; @@ -1468,14 +1469,14 @@ void fn_1_66DC(omObjData *object) case 1: fn_1_648C(0, 1, 1.0 - cosd(90.0f * lbl_1_bss_4)); if (lbl_1_bss_4 < 1.0f) { - lbl_1_bss_4 += 0.007999999f; + lbl_1_bss_4 += VERSION_NTSC ? 0.007999999f : 0.0095999995f; if (lbl_1_bss_4 > 1.0f) { lbl_1_bss_4 = 1.0f; } } break; case 3: - Center.x += 2.0000002f; + Center.x += VERSION_NTSC ? 2.0000002f : 2.4f; Hu3DShadowData.unk_14.x = 1000.0f + var_r31->pos.x; Hu3DShadowData.unk_20.x = Hu3DShadowData.unk_14.x - 1500.0f; break; @@ -1484,7 +1485,7 @@ void fn_1_66DC(omObjData *object) break; case 7: if (Center.x < 3000.0f) { - Center.x += 25.0f; + Center.x += VERSION_NTSC ? 25.0f : 30.0f; } default: break; diff --git a/src/REL/m449Dll/main.c b/src/REL/m449Dll/main.c index 17209e39..e2ee45d9 100644 --- a/src/REL/m449Dll/main.c +++ b/src/REL/m449Dll/main.c @@ -667,20 +667,11 @@ void fn_1_758(omObjData *var_r29) sp1F0 = var_r31->unk_60[var_r26] + var_r31->unk_90[var_r26]; sp1EC = var_r31->unk_80[var_r26] + var_r31->unk_B0[var_r26]; if (var_r31->unk_F0[var_r26] == 0) { - if (var_r31->unk_28 != 0.0f) { - if (var_r31->unk_28 < 0.0f ? (sp1F0 < var_r31->unk_20) : (sp1F0 > var_r31->unk_20)) { - goto block_169; - } - } + if (var_r31->unk_28 != 0.0f && !(var_r31->unk_28 < 0.0f ? (sp1F0 < var_r31->unk_20) : (sp1F0 > var_r31->unk_20))) { } else { - block_169: - if (var_r31->unk_2C != 0.0f) { - if (var_r31->unk_2C < 0.0f ? (sp1EC < var_r31->unk_24) : (sp1EC > var_r31->unk_24)) { - goto block_174; - } - } + if (var_r31->unk_2C != 0.0f + && !(var_r31->unk_2C < 0.0f ? (sp1EC < var_r31->unk_24) : (sp1EC > var_r31->unk_24))) { } else { - block_174: var_r31->unk_1C = 0; var_r31->unk_14 = var_r26; var_r25 = var_r26; @@ -935,28 +926,16 @@ void fn_1_758(omObjData *var_r29) } } else if (var_r31->unk_1C != 0) { - if (var_r31->unk_28 != 0.0f) { - if (!(var_r31->unk_28 < 0.0f ? (var_f30 < var_r31->unk_20) : (var_f30 > var_r31->unk_20))) { - var_f29 = var_r31->unk_28 < 0.0f ? (var_f30 > var_r31->unk_20 ? -1 : 0) : (var_f30 < var_r31->unk_20 ? 1 : 0); - } - else { - goto block_368; - } + if (var_r31->unk_28 != 0.0f && !(var_r31->unk_28 < 0.0f ? (var_f30 < var_r31->unk_20) : (var_f30 > var_r31->unk_20))) { + var_f29 = var_r31->unk_28 < 0.0f ? (var_f30 > var_r31->unk_20 ? -1 : 0) : (var_f30 < var_r31->unk_20 ? 1 : 0); } else { - block_368: var_f29 = var_r31->unk_58 < -0.1 ? 1.0f : (var_r31->unk_58 > 0.1 ? -1.0f : (-10.0f * var_r31->unk_58)); } - if (var_r31->unk_2C != 0.0f) { - if ((var_r31->unk_2C < 0.0f ? (var_f31 < var_r31->unk_24) : (var_f31 > var_r31->unk_24)) == 0) { - var_f28 = var_r31->unk_2C < 0.0f ? (var_f31 > var_r31->unk_24 ? -1 : 0) : (var_f31 < var_r31->unk_24 ? 1 : 0); - } - else { - goto block_390; - } + if (var_r31->unk_2C != 0.0f && (var_r31->unk_2C < 0.0f ? (var_f31 < var_r31->unk_24) : (var_f31 > var_r31->unk_24)) == 0) { + var_f28 = var_r31->unk_2C < 0.0f ? (var_f31 > var_r31->unk_24 ? -1 : 0) : (var_f31 < var_r31->unk_24 ? 1 : 0); } else { - block_390: var_f28 = var_r31->unk_5C < -0.1 ? 1.0f : (var_r31->unk_5C > 0.1 ? -1.0f : (-10.0f * var_r31->unk_5C)); } } diff --git a/src/REL/m457Dll/main.c b/src/REL/m457Dll/main.c index 69ecd523..484b27b6 100755 --- a/src/REL/m457Dll/main.c +++ b/src/REL/m457Dll/main.c @@ -1,6 +1,7 @@ #include "game/audio.h" #include "game/chrman.h" #include "game/data.h" +#include "game/sprite.h" #include "game/esprite.h" #include "game/gamework_data.h" #include "game/hsfdraw.h" @@ -14,9 +15,12 @@ #include "game/process.h" #include "game/window.h" #include "game/wipe.h" +#include "string.h" #include "ext_math.h" +s32 rand8(void); + typedef struct { /* 0x00 */ s32 unk00; /* 0x04 */ s32 unk04; diff --git a/src/REL/m458Dll/main.c b/src/REL/m458Dll/main.c index a813647a..1e95123b 100644 --- a/src/REL/m458Dll/main.c +++ b/src/REL/m458Dll/main.c @@ -177,24 +177,8 @@ void fn_1_A0(void) s32 lbl_1_data_16C = -1; -// https://decomp.me/scratch/QQLCN r17 issues void fn_1_4C8(omObjData *object) { - Mtx sp1E0; - float sp1A8[2]; - float sp1A0[2]; - s32 spD0; - s32 spCC; - s32 spC8; - s32 spC4; - s32 spC0; - float spBC; - s32 spB8; - ModelData *spB4; - float spB0; - float spAC; - s32 spA8; - s32 spA4; float var_f31; float var_f30; float var_f28; @@ -222,6 +206,22 @@ void fn_1_4C8(omObjData *object) s32 var_r18; s32 var_r17; + Mtx sp1E0; + float sp1A8[2]; + float sp1A0[2]; + s32 spD0; + s32 spCC; + s32 spC8; + s32 spC4; + s32 spC0; + float spBC; + s32 spB8; + ModelData *spB4; + float spB0; + float spAC; + s32 spA8; + s32 spA4; + var_r31 = object->data; var_r27 = (&lbl_1_bss_BC)[1 - object->work[0]]->data; var_f23 = 0.0f; @@ -277,8 +277,7 @@ void fn_1_4C8(omObjData *object) spC4 = 0; spC0 = 0; if (fabs((500.0 * var_r31->unk_3C) - object->trans.x) < 10.0) { - var_r17 = object->trans.x < -250.0 ? -1 : (object->trans.x > 250.0 ? 1 : 0); - spD0 = var_r17; + var_r17 = spD0 = object->trans.x < -250.0 ? -1 : (object->trans.x > 250.0 ? 1 : 0); } else { var_r17 = (object->trans.x < 0.0f ? -1 : 0); @@ -519,7 +518,6 @@ void fn_1_4C8(omObjData *object) espAttrSet(lbl_1_data_8[1], HUSPR_ATTR_DISPOFF); } if (lbl_1_bss_B4 == 0x122) { - // TODO remove temporary? spB8 = HuAudFXPlay((var_r31->unk_08 != -1 ? var_r31->unk_08 : 8) + 0x800); HuAudFXFadeOut(spB8, 0x9C4); } @@ -584,7 +582,7 @@ void fn_1_4C8(omObjData *object) } else { var_f20 = 1.0f; - var_f21 = 1.0f; + var_f21 = 0.5f; } var_r23->scale.x = var_f20 + (var_f21 * sind((float)(var_r31->unk_1C % 180))); var_r23->scale.y = var_r23->scale.z = var_r23->scale.x; @@ -724,16 +722,9 @@ void fn_1_4C8(omObjData *object) if (lbl_1_data_15C >= 6) { spA4 = lbl_1_bss_18; for (spA8 = 0; spA8 < 0x32; spA8++) { - loop_344: - lbl_1_bss_18 = rand8() % 11; - if (lbl_1_bss_18 >= 9) { - if (lbl_1_bss_18 == (var_r31->unk_00 + 9)) { - goto loop_344; - } - } - if ((lbl_1_bss_18 < 9) && (lbl_1_bss_28C[lbl_1_bss_18].unk_0C == 0)) { - goto loop_344; - } + do { + lbl_1_bss_18 = rand8() % 11; + } while ((lbl_1_bss_18 >= 9 && lbl_1_bss_18 == var_r31->unk_00 + 9) || (lbl_1_bss_18 < 9 && lbl_1_bss_28C[lbl_1_bss_18].unk_0C == 0)); if (spA4 != lbl_1_bss_18) { break; } @@ -958,8 +949,7 @@ void fn_1_350C(omObjData *var_r27) var_f25 *= lbl_1_data_114.unk_04 * 2; var_f26 *= lbl_1_data_114.unk_04 * 2; lbl_1_data_114.unk_00 = !lbl_1_data_114.unk_00; - lbl_1_data_114.unk_04 = (lbl_1_data_114.unk_04 > 24) ? 23 - : (lbl_1_data_114.unk_04 - 1 > 0) ? (lbl_1_data_114.unk_04 - 1) : 0; + lbl_1_data_114.unk_04 = (lbl_1_data_114.unk_04 > 24) ? 23 : (lbl_1_data_114.unk_04 - 1 > 0) ? (lbl_1_data_114.unk_04 - 1) : 0; Center.x = 0.0f; Center.y = 100.0f + var_f26; } @@ -1383,122 +1373,61 @@ void fn_1_6314(omObjData *object) { s32 sp10; void *spC; - s32 sp8; - M458DllWork *var_r31; + M458DllWork *work; s32 var_r29; - s32 var_r28; - s32 var_r27; - s32 var_r26; - s32 var_r25; - s32 var_r24; - s32 var_r23; - s32 var_r22; - s32 var_r21; - s32 var_r20; - s32 var_r19; - s32 var_r18; - s32 var_r17; - var_r31 = object->data; + work = object->data; spC = (&lbl_1_bss_BC)[1 - object->work[0]]->data; - memset(var_r31, 0, 0x44); - var_r31->unk_00 = object->work[0]; - // probably ternary, but it causes regswaps - if (GWPlayerCfg->group == var_r31->unk_00) { - var_r28 = 0; - } - else { - if (GWPlayerCfg[1].group == var_r31->unk_00) { - var_r27 = 1; - } - else { - if (GWPlayerCfg[2].group == var_r31->unk_00) { - var_r26 = 2; - } - else { - if (GWPlayerCfg[3].group == var_r31->unk_00) { - var_r25 = 3; - } - else { - var_r25 = 4; - } - var_r26 = var_r25; - } - var_r27 = var_r26; - } - var_r28 = var_r27; - } - var_r31->unk_04 = var_r28; - if (GWPlayerCfg->group == (1 - var_r31->unk_00)) { - var_r24 = 0; - } - else { - if (GWPlayerCfg[1].group == (1 - var_r31->unk_00)) { - var_r23 = 1; - } - else { - if (GWPlayerCfg[2].group == (1 - var_r31->unk_00)) { - var_r22 = 2; - } - else { - if (GWPlayerCfg[3].group == (1 - var_r31->unk_00)) { - var_r21 = 3; - } - else { - var_r21 = 4; - } - var_r22 = var_r21; - } - var_r23 = var_r22; - } - var_r24 = var_r23; - } - sp10 = var_r24; - if (var_r31->unk_04 == 4) { + memset(work, 0, sizeof(M458DllWork)); + work->unk_00 = object->work[0]; + work->unk_04 = GWPlayerCfg->group == work->unk_00 + ? 0 + : (GWPlayerCfg[1].group == work->unk_00 ? 1 : (GWPlayerCfg[2].group == work->unk_00 ? 2 : (GWPlayerCfg[3].group == work->unk_00 ? 3 : 4))); + sp10 = GWPlayerCfg->group == (1 - work->unk_00) + ? 0 + : (GWPlayerCfg[1].group == (1 - work->unk_00) + ? 1 + : (GWPlayerCfg[2].group == (1 - work->unk_00) ? 2 : (GWPlayerCfg[3].group == (1 - work->unk_00) ? 3 : 4))); + if (work->unk_04 == 4) { OSReport("m458:wrong player group\n"); - var_r31->unk_04 = var_r31->unk_00; + work->unk_04 = work->unk_00; } - if ((var_r31->unk_00 == 1) && (lbl_1_bss_14 != 0)) { - var_r31->unk_08 = -1; - var_r31->unk_0C = -1; - var_r31->unk_04 = -1; - var_r31->unk_10 = 0; + if ((work->unk_00 == 1) && (lbl_1_bss_14 != 0)) { + work->unk_08 = -1; + work->unk_0C = -1; + work->unk_04 = -1; + work->unk_10 = 0; } else { - var_r31->unk_08 = GWPlayerCfg[var_r31->unk_04].character; - var_r20 = 1; - if ((var_r31->unk_08 != -1) && (GWPlayerCfg[var_r31->unk_04].iscom == 0)) { - var_r20 = 0; - } - var_r31->unk_0C = var_r20 != 0 ? -1 : GWPlayerCfg[var_r31->unk_04].pad_idx; - var_r31->unk_10 = var_r31->unk_0C != -1 ? 0 : GWPlayerCfg[var_r31->unk_04].diff; + work->unk_08 = GWPlayerCfg[work->unk_04].character; + work->unk_0C = ((work->unk_08 == -1) || (GWPlayerCfg[work->unk_04].iscom != 0)) ? -1 : GWPlayerCfg[work->unk_04].pad_idx; + work->unk_10 = work->unk_0C != -1 ? 0 : GWPlayerCfg[work->unk_04].diff; } - var_r31->unk_18 = 0; - var_r31->unk_20 = 3; - var_r31->unk_24 = -1; - if (var_r31->unk_08 != -1) { - object->model[0] = CharModelCreate(var_r31->unk_08, 1); + work->unk_18 = 0; + work->unk_20 = 3; + work->unk_24 = -1; + if (work->unk_08 != -1) { + object->model[0] = CharModelCreate(work->unk_08, 1); } else { object->model[0] = Hu3DModelCreateFile(0x30007); } - omSetTra(object, 0.0f, var_r31->unk_00 == 0 ? 0 : 0x12C, 0.0f); - if (var_r31->unk_08 != -1) { + omSetTra(object, 0.0f, work->unk_00 == 0 ? 0 : 0x12C, 0.0f); + if (work->unk_08 != -1) { omSetSca(object, 2.5f, 2.5f, 2.5f); } else { omSetSca(object, 2.0f, 2.0f, 2.0f); } for (var_r29 = 0; var_r29 < 0xA; var_r29++) { - if (var_r31->unk_08 != -1) { - object->motion[var_r29] - = CharModelMotionCreate(var_r31->unk_08, lbl_1_data_10[var_r29] + (lbl_1_data_38[var_r29] != 0 ? var_r31->unk_08 : 0)); + if (work->unk_08 != -1) { + object->motion[var_r29] = CharModelMotionCreate(work->unk_08, lbl_1_data_10[var_r29] + (lbl_1_data_38[var_r29] != 0 ? work->unk_08 : 0)); } else if (lbl_1_data_60[var_r29] != 0) { object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], lbl_1_data_60[var_r29]); } } - Hu3DMotionSet(object->model[0], object->motion[var_r31->unk_20]); + Hu3DMotionSet(object->model[0], object->motion[work->unk_20]); Hu3DMotionTimeSet(object->model[0], 10.0f); Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); Hu3DModelShadowSet(object->model[0]); diff --git a/src/REL/modeseldll/modesel.c b/src/REL/modeseldll/modesel.c index 7f9d1ae9..8054a966 100644 --- a/src/REL/modeseldll/modesel.c +++ b/src/REL/modeseldll/modesel.c @@ -12,6 +12,11 @@ #include "REL/modeseldll.h" #include "ext_math.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#include "game/thpmain.h" +#endif + s16 lbl_1_data_80[] = { 16, 17, 18, 19, 20, 21 }; s32 lbl_1_data_8C[] = { DATA_MAKE_NUM(DATADIR_MODESEL, 0x30), DATA_MAKE_NUM(DATADIR_MODESEL, 0x32), DATA_MAKE_NUM(DATADIR_MODESEL, 0x34), diff --git a/src/REL/option/record.c b/src/REL/option/record.c index fb16ee2e..c255cdbe 100755 --- a/src/REL/option/record.c +++ b/src/REL/option/record.c @@ -6,17 +6,22 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/memory.h" +#include "game/sprite.h" #include "game/window.h" #include "dolphin.h" #include "math.h" #include "version.h" +#ifndef __MWERKS__ +#include "game/gamework.h" +#endif + #define RECORD_TYPE_BOARD 0 #define RECORD_TYPE_MG 1 -#define NUM_CHARACTERS 8 -#define NUM_BOARDS 6 +#define CHARACTERS_MAX 8 +#define BOARDS_MAX 6 #define PLAY_COUNT_NUM_DIGITS 4 #define WIN_COUNT_NUM_DIGITS 3 @@ -92,15 +97,15 @@ omObjData *OptionRecordCreate(void) object = omAddObjEx(optionObjMan, 1003, 0, 0, 1, NULL); work = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(RecordWork), MEMORY_DEFAULT_NUM); object->data = work; - for (i = 0; i < NUM_BOARDS; i++) { + for (i = 0; i < BOARDS_MAX; i++) { work->boardRecord[i].playCount = GWBoardPlayCountGet(i); work->boardRecord[i].maxStars = GWBoardMaxStarsGet(i); work->boardRecord[i].maxCoins = GWBoardMaxCoinsGet(i); - for (character = 0; character < NUM_CHARACTERS; character++) { + for (character = 0; character < CHARACTERS_MAX; character++) { work->boardRecord[i].winCount[character] = GWBoardWinCountGet(character, i); } } - for (i = 0; i < 6; i++) { + for (i = 0; i < BOARDS_MAX; i++) { work->mgRecord[i] = GWMGRecordGet(mgRecordIdxTbl[i]); } work->board = 0; @@ -608,7 +613,7 @@ static void ShowBoard(omObjData *object, s32 board) #if VERSION_NTSC espPosSet(work->sprList[10], 456.0f, 312.0f); #endif - for (i = 0; i < NUM_CHARACTERS; i++) { + for (i = 0; i < CHARACTERS_MAX; i++) { espPosSet(work->sprList[i + 49], 92.0f + 50.0f * i, 200.0f); for (j = 0; j < WIN_COUNT_NUM_DIGITS; j++) { espPosSet(work->sprList[i * 3 + 23 + j], 80.0f + 50.0f * i + 12.0f * j, 230.0f); @@ -634,7 +639,7 @@ static void ShowBoard(omObjData *object, s32 board) espDispOn(work->sprList[i + 19]); } espDispOn(work->sprList[10]); - for (i = 0; i < NUM_CHARACTERS; i++) { + for (i = 0; i < CHARACTERS_MAX; i++) { espDispOn(work->sprList[i + 49]); for (j = 0; j < WIN_COUNT_NUM_DIGITS; j++) { espDispOn(work->sprList[i * 3 + 23 + j]); @@ -679,9 +684,9 @@ static void ShowTotal(omObjData *object) s32 j; espPosSet(work->sprList[6], 275.0f, 72.0f); - for (i = 0; i < NUM_CHARACTERS; i++) { + for (i = 0; i < CHARACTERS_MAX; i++) { espPosSet(work->sprList[i + 57], 148.0f + 80.0f * (i % 4), 172.0f + 104.0f * (i / 4)); - for (j = 0, winCount = 0; j < NUM_BOARDS; j++) { + for (j = 0, winCount = 0; j < BOARDS_MAX; j++) { winCount += work->boardRecord[j].winCount[i]; } for (j = 0; j < WIN_COUNT_NUM_DIGITS; j++) { @@ -690,7 +695,7 @@ static void ShowTotal(omObjData *object) } } espDispOn(work->sprList[6]); - for (i = 0; i < NUM_CHARACTERS; i++) { + for (i = 0; i < CHARACTERS_MAX; i++) { espDispOn(work->sprList[i + 57]); for (j = 0; j < 3; j++) { espDispOn(work->sprList[i * 3 + 65 + j]); diff --git a/src/REL/present/present.c b/src/REL/present/present.c index 263194b5..b30abfbc 100644 --- a/src/REL/present/present.c +++ b/src/REL/present/present.c @@ -9,7 +9,7 @@ #include "REL/present.h" -#define NUM_CHARACTERS 8 +#define CHARACTERS_MAX 8 #define PRESENT_MDL_MAX 134 #define PRESENT_MAX 60 @@ -445,7 +445,7 @@ s32 PresentExecModeGet(omObjData *object) return work->execMode; } -static const s32 roomIdxTbl[NUM_CHARACTERS] = { +static const s32 roomIdxTbl[CHARACTERS_MAX] = { ROOM_MARIO, ROOM_LUIGI, ROOM_PEACH, @@ -869,7 +869,7 @@ static BOOL CameraRotationDoneCheck(omObjData *object) return work->timeRot < 1.0f; } -s32 roomIdxTbl2[NUM_CHARACTERS] = { +s32 roomIdxTbl2[CHARACTERS_MAX] = { ROOM_MARIO, ROOM_LUIGI, ROOM_PEACH, @@ -888,7 +888,7 @@ static void ShowHidePresents(omObjData *object) Hu3DModelAttrReset(work->object[0]->model[0], HU3D_ATTR_DISPOFF); - for (character = 0; character < NUM_CHARACTERS; character++) { + for (character = 0; character < CHARACTERS_MAX; character++) { s32 j; if (UnlockedPresents(object, roomIdxTbl2[character]) > 0) { Hu3DModelAttrReset(work->object[character + 109]->model[0], HU3D_ATTR_DISPOFF); @@ -916,7 +916,7 @@ static void ShowHidePresents(omObjData *object) if (PresentUnlocked(object, ROOM_TROPHY, 0)) { Hu3DModelAttrReset(work->object[1]->model[0], HU3D_ATTR_DISPOFF); } - for (i = 0; i < NUM_CHARACTERS; i++) { + for (i = 0; i < CHARACTERS_MAX; i++) { if (PresentUnlocked(object, roomIdxTbl2[i], PRESENT_CONSTELLATION)) { Hu3DModelAttrReset(work->object[i + 126]->model[0], HU3D_ATTR_DISPOFF); } From 47e4b48254a06f439e13cdade4b44323677023f5 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sun, 5 Jan 2025 18:40:35 -0500 Subject: [PATCH 102/178] Match m424Dll (#510) * get halfway through m424/ball * get halfway through m424/ball * get halfway through m424/ball * complete m424/ball * fix merge errors * Revert "complete m424/ball" This reverts commit acbc3196c585acc5e6328e53f4aaf31e1b52db73. * fix up ball, start claw * get halfway through m424/ball * complete m424/ball * Revert "complete m424/ball" This reverts commit acbc3196c585acc5e6328e53f4aaf31e1b52db73. * fix up ball, start claw * complete m424Dll --- config/GMPE01_00/rels/m424Dll/symbols.txt | 5 +- configure.py | 4 +- include/REL/m424Dll.h | 30 +- src/REL/m424Dll/ball.c | 29 +- src/REL/m424Dll/claw.c | 1357 +++++++++++++++++++++ 5 files changed, 1396 insertions(+), 29 deletions(-) create mode 100644 src/REL/m424Dll/claw.c diff --git a/config/GMPE01_00/rels/m424Dll/symbols.txt b/config/GMPE01_00/rels/m424Dll/symbols.txt index ffdf249f..8d4a83df 100644 --- a/config/GMPE01_00/rels/m424Dll/symbols.txt +++ b/config/GMPE01_00/rels/m424Dll/symbols.txt @@ -266,7 +266,7 @@ jumptable_1_data_B8 = .data:0x000000B8; // type:object size:0x28 scope:local lbl_1_data_E0 = .data:0x000000E0; // type:object size:0xC lbl_1_data_EC = .data:0x000000EC; // type:object size:0xC lbl_1_data_F8 = .data:0x000000F8; // type:object size:0xC -lbl_1_data_104 = .data:0x00000104; // type:object size:0x7 data:string +lbl_1_data_104 = .data:0x00000104; // type:object size:0x7 scope:local data:string lbl_1_data_10C = .data:0x0000010C; // type:object size:0x1C lbl_1_data_128 = .data:0x00000128; // type:object size:0x4 data:byte lbl_1_data_12C = .data:0x0000012C; // type:object size:0x1C @@ -317,6 +317,7 @@ lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x80 data:4byte lbl_1_bss_6C0 = .bss:0x000006C0; // type:object size:0x4 data:4byte lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x4 data:4byte lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x4 data:4byte -lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0xC data:4byte +lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0x4 data:4byte +lbl_1_bss_6D0 = .bss:0x000006D0; // type:object size:0x8 data:4byte lbl_1_bss_6D8 = .bss:0x000006D8; // type:object size:0x4 data:4byte lbl_1_bss_6DC = .bss:0x000006DC; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 27092f4c..afd42860 100644 --- a/configure.py +++ b/configure.py @@ -1045,8 +1045,8 @@ config.libs = [ objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m424Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m424Dll/map.c"), - Object(NonMatching, "REL/m424Dll/ball.c"), - Object(NonMatching, "REL/m424Dll/claw.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m424Dll/ball.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m424Dll/claw.c"), }, ), Rel( diff --git a/include/REL/m424Dll.h b/include/REL/m424Dll.h index 885af5eb..5b3dfaa8 100644 --- a/include/REL/m424Dll.h +++ b/include/REL/m424Dll.h @@ -8,13 +8,41 @@ typedef struct _M424DllMainStruct { f32 zoom; } M424DllMainStruct; // sizeof 1C +typedef struct _M424DllBallStruct2 { + omObjData* unk0; + u8 unk4; + u8 unk5; + u8 unk6; + u16 unk8; + u16 unkA; + Mtx unkC; + Vec unk3C; + Vec unk48; + Vec unk54; + Vec unk60; + Vec unk6C; + Vec unk78; + Vec unk84; + u8 unk90; + u8 unk91; +} M424DllBallStruct2; // sizeof 0x94 + +extern M424DllBallStruct2 lbl_1_bss_60[9]; +extern u8 lbl_1_bss_58; +extern s16 lbl_1_bss_24[4]; + +f32 fn_1_1358(f32, f32); +f32 fn_1_1470(f32, f32, f32); omObjData* fn_1_1AB8(Process*); void fn_1_1B8C(void); f32 fn_1_213C(void); +void fn_1_252C(f32, s32); +void fn_1_2670(s32, s32); void fn_1_2720(Process*); void fn_1_2880(void); +Vec* fn_1_8A00(u8); s32 fn_1_8A2C(void); -void fn_1_93F0(Process*); +omObjData* fn_1_93F0(Process*); void fn_1_94A4(void); s32 fn_1_B804(void); s32 fn_1_B888(void); diff --git a/src/REL/m424Dll/ball.c b/src/REL/m424Dll/ball.c index 5deb34fc..800f1775 100644 --- a/src/REL/m424Dll/ball.c +++ b/src/REL/m424Dll/ball.c @@ -54,25 +54,6 @@ typedef struct _M424DllBallStruct { s32 unkEC; } M424DllBallStruct; // sizeof 0xF0 -typedef struct _M424DllBallStruct2 { - omObjData* unk0; - u8 unk4; - u8 unk5; - u8 unk6; - u16 unk8; - u16 unkA; - Mtx unkC; - Vec unk3C; - Vec unk48; - Vec unk54; - Vec unk60; - Vec unk6C; - Vec unk78; - Vec unk84; - u8 unk90; - u8 unk91; -} M424DllBallStruct2; // sizeof 0x94 - typedef struct _M424DllBallStruct3 { u8 unk0; M424DllBallStruct2* unk4; @@ -153,7 +134,7 @@ void fn_1_2720(Process* arg0) { } for (var_r31 = 0; var_r31 < 6; var_r29++, var_r31++) { - var_r30 = omAddObjEx(arg0, 0x3F, 2U, 5U, 0, fn_1_4220); + var_r30 = omAddObjEx(arg0, 0x3F, 2, 5, 0, fn_1_4220); lbl_1_bss_594[var_r31] = var_r30; var_r30->work[0] = var_r31; var_r30->work[1] = sp8[var_r29]; @@ -460,12 +441,12 @@ void fn_1_37FC(omObjData* object) { if (temp_r31->unkC != 0) { if (temp_r31->unkD != 0) { temp_r31->unk4C.y = 0.0f; - temp_r31->unkD = 0U; + temp_r31->unkD = 0; var_r28 = 5; var_r27 = 0; } else { temp_r31->unk4C.y *= -0.1f; - temp_r31->unkC = 0U; + temp_r31->unkC = 0; var_r28 = 4; var_r27 = 0; } @@ -689,7 +670,7 @@ u8 fn_1_48D0(omObjData* object, u8 arg1, u8 arg2) { temp_r31->unk8 = var_r30; Hu3DModelLayerSet(var_r30, 2); Hu3DModelShadowMapSet(var_r30); - Hu3DModelAttrSet(var_r30, 0x20000U); + Hu3DModelAttrSet(var_r30, 0x20000); Hu3DModelHiliteMapSet(var_r30, HuSprAnimRead(HuDataReadNum(0x370016, 0x10000000))); var_r30 = Hu3DModelCreate(HuDataSelHeapReadNum((arg1 * 2) + 0x370001, 0x10000000, HEAP_DATA)); temp_r31->unkA = var_r30; @@ -856,7 +837,7 @@ void fn_1_5018(void) { var_f30 = var_f29; var_r31 = &lbl_1_bss_60[0]; for (var_r28 = 0; var_r28 < lbl_1_bss_58; var_r28++, var_r31++) { - if ((var_r31->unk90 != 0) && (var_r31->unk4 < 4U)) { + if ((var_r31->unk90 != 0) && (var_r31->unk4 < 4)) { var_r31->unk90 = 0; if (var_r31->unk4 < 3) { if (var_r31->unk6C.y < 0.0f) { diff --git a/src/REL/m424Dll/claw.c b/src/REL/m424Dll/claw.c new file mode 100644 index 00000000..578750ce --- /dev/null +++ b/src/REL/m424Dll/claw.c @@ -0,0 +1,1357 @@ +#include "REL/m424Dll.h" + +#include "math.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/pad.h" + +// STRUCT +typedef struct _M424DllClawStruct { + s16 unk0; + s16 unk2; + s16 unk4; + s16 unk6; + s16 unk8; + s16 unkA; + s16 unkC; + s16 unkE; + s16 unk10; + s16 unk12; + s16 unk14; + s16 unk16; + s16 unk18; + f32 unk1C; + f32 unk20; + f32 unk24; + f32 unk28; + f32 unk2C; + Vec unk30; + Vec unk3C[12]; + Vec unkCC[12]; + s32 unk15C; + s32 unk160; + s32 unk164; + s32 unk168; + s32 unk16C; + s32 unk170; + Vec unk174; + f32 unk180; + s32 unk184; + s32 unk188; + s32 unk18C; + s32 unk190; + s32 unk194; + s32 unk198; + s32 unk19C; + s32 unk1A0; + s32 unk1A4; + f32 unk1A8; + s32 unk1AC; +} M424DllClawStruct; // sizeof 0x1B0 + +typedef struct _M424DllClawStruct2 { + s32 unk0; + f32 unk4; + f32 unk8; + f32 unkC; +} M424DllClawStruct2; // sizeof 0x10 + +typedef struct _M424DllClawStruct3 { + s32 unk0; + s32 unk4; +} M424DllClawStruct3; // sizeof 0x8 + +// BSS +Process* lbl_1_bss_6DC; +omObjData* lbl_1_bss_6D8; +s32 lbl_1_bss_6D0[2]; +s32 lbl_1_bss_6CC; +s32 lbl_1_bss_6C8; +s32 lbl_1_bss_6C4; +s32 lbl_1_bss_6C0; +M424DllClawStruct3 lbl_1_bss_640[0x10]; + +// DATA +Vec lbl_1_data_1E0[4] = { + { 950.0f, 275.0f, 0.0f }, + { 900.0f, 360.0f, 320.0f }, +{ 494.99996f, 220.0f, 494.99996f }, + { 0.0f, 225.0f, 0.0f }, +}; +f32 lbl_1_data_210[3] = { 12.0f, 11.0f, 17.5f }; +char lbl_1_data_21C[12][0x10] = { + "tsume10", "tsume11", "tsume12", + "tsume20", "tsume21", "tsume22", + "tsume30", "tsume31", "tsume32", + "tsume40", "tsume41", "tsume42", +}; +u8 lbl_1_data_2DC[12] = { + 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0 +}; +s32 lbl_1_data_2E8[9] = { + 0x5F0000, 0x5F0002, 0x5F0003, 0x5F0005, 0x5F0006, + 0x5F0042, 0x5F0008, 0x5F0017, 0x5F0018 +}; +Vec lbl_1_data_30C = { 0.0f, 0.0f, 0.0f }; + +// PROTO +void fn_1_88E8(u8, f32, f32, f32); +void fn_1_8924(u8, s32); +u8 fn_1_8950(u8); +u8 fn_1_897C(u8); +u8 fn_1_89A8(u8); +Vec* fn_1_89D4(u8); +void fn_1_94D0(omObjData*); +void fn_1_9A64(omObjData*); +void fn_1_AE58(omObjData*); +void fn_1_AE64(omObjData*); +u16 fn_1_B79C(f32, f32, f32); +s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3); +void fn_1_C604(s32, s32); +s32 fn_1_C878(s16, const char*, Mtx, s32); +void fn_1_C99C(HsfObject*, Mtx, const char*, Mtx); +void fn_1_CE74(s32); +void fn_1_CF00(Process*); +void fn_1_CF80(omObjData*); +s32 fn_1_D010(s32, s32); + +omObjData* fn_1_93F0(Process* arg0) { + lbl_1_bss_6DC = arg0; + lbl_1_bss_6D8 = omAddObjEx(arg0, 0x40, 5, 9, -1, fn_1_94D0); + lbl_1_bss_6CC = 0; + lbl_1_bss_6C8 = 0; + lbl_1_bss_6C4 = 0; + lbl_1_bss_6C0 = 0; + fn_1_CF00(arg0); + return lbl_1_bss_6D8; +} + +void fn_1_94A4(void) { + fn_1_AE58(lbl_1_bss_6D8); +} + +void fn_1_94D0(omObjData* arg0) { + s32 var_r29; + M424DllClawStruct* var_r31; + + var_r31 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1B0, 0x10000000); + memset(var_r31, 0, 0x1B0); + var_r31->unk0 = lbl_1_bss_24[3]; + var_r31->unk2 = GWPlayerCfg[var_r31->unk0].character; + var_r31->unk4 = GWPlayerCfg[var_r31->unk0].pad_idx; + var_r31->unk6 = GWPlayerCfg[var_r31->unk0].iscom; + var_r31->unk8 = GWPlayerCfg[var_r31->unk0].diff; + var_r31->unkA = var_r31->unkC = 0; + var_r31->unk10 = 0; + var_r31->unk12 = 0; + var_r31->unk14 = 0; + var_r31->unk16 = 0; + var_r31->unk18 = 0; + var_r31->unk1C = 0.0f; + var_r31->unk20 = 1.0f; + var_r31->unk24 = 0.0f; + var_r31->unk28 = 0.0f; + var_r31->unk2C = 1.0f; + var_r31->unk15C = 0; + var_r31->unk160 = 0; + var_r31->unk164 = 0; + var_r31->unk168 = -1; + var_r31->unk16C = -1; + var_r31->unk170 = -1; + var_r31->unk174 = lbl_1_data_30C; + // @todo how did this happen + var_r31->unk180 = (180.0 * (atan2(-102.864990234375, 424.559997558593750) / M_PI)); + if (var_r31->unk180 < 0.0f) { + var_r31->unk180 += 360.0f; + } + var_r31->unk184 = -1; + var_r31->unk30 = lbl_1_data_30C; + + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { + var_r31->unk3C[var_r29] = lbl_1_data_30C; + var_r31->unkCC[var_r29] = lbl_1_data_30C; + } + var_r31->unk188 = 0; + var_r31->unk18C = -1; + var_r31->unk190 = 0; + var_r31->unk194 = 0; + var_r31->unk198 = 0; + var_r31->unk19C = 0; + var_r31->unk1A0 = 0; + var_r31->unk1A4 = 0; + var_r31->unk1A8 = 0.0f; + var_r31->unk1AC = 0; + arg0->model[0] = CharModelCreate(var_r31->unk2, 1); + Hu3DModelShadowSet(arg0->model[0]); + CharModelStepTypeSet(var_r31->unk2, 1); + for (var_r29 = 0; var_r29 < 9; var_r29++) { + arg0->motion[var_r29] = CharModelMotionCreate(var_r31->unk2, lbl_1_data_2E8[var_r29]); + } + var_r31->unkE = 5; + CharModelMotionSet(var_r31->unk2, arg0->motion[var_r31->unkE]); + arg0->model[1] = Hu3DModelCreateFile(0x37001D); + Hu3DModelShadowSet(arg0->model[1]); + arg0->model[2] = Hu3DModelCreateFile(0x37001E); + Hu3DModelShadowSet(arg0->model[2]); + arg0->model[3] = Hu3DModelCreateFile(0x37001F); + Hu3DModelShadowSet(arg0->model[3]); + arg0->model[4] = Hu3DModelCreateFile(0x370020); + Hu3DModelShadowSet(arg0->model[4]); + Hu3DModelScaleSet(arg0->model[4], 0.9f, 0.9f, 0.9f); + Hu3DModelHookSet(arg0->model[1], "hook1", arg0->model[2]); + Hu3DModelHookSet(arg0->model[2], "hook2", arg0->model[3]); + Hu3DModelHookSet(arg0->model[3], "hook3", arg0->model[4]); + Hu3DModelPosSet(arg0->model[1], 950.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[2], 0x40000002); + Hu3DModelAttrSet(arg0->model[4], 0x40000002); + arg0->trans.x = 950.0f; + arg0->trans.y = 275.0f; + arg0->trans.z = 0.0f; + arg0->rot.y = 270.0f; + var_r31->unk10 = 3; + var_r31->unk24 = 0.45f; + var_r31->unk12 = 0; + arg0->func = fn_1_9A64; +} + +void fn_1_9A64(omObjData* arg0) { + Mtx sp74; + Mtx sp44; + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + f32 var_f31; + f32 temp_f30; + M424DllClawStruct* temp_r31; + s32 var_r29; + s32 temp_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + + temp_r31 = arg0->data; + if (fn_1_FE0() == 4) { + temp_r31->unkC = HuPadBtn[temp_r31->unk4]; + temp_r31->unkA = HuPadBtnDown[temp_r31->unk4]; + if (temp_r31->unk6 != 0) { + fn_1_AE64(arg0); + } + } else { + temp_r31->unkC = 0; + temp_r31->unkA = 0; + } + if (fn_1_FE0() <= 1) { + var_r25 = -1; + } else { + var_r25 = temp_r31->unk10; + } + switch (var_r25) { + case 0: + if (fn_1_FE0() >= 4) { + temp_r31->unk10 = 1; + temp_r31->unk12 = 0; + } + break; + case 1: + if (fn_1_FE0() > 4) { + temp_r31->unk10 = 10; + temp_r31->unk12 = 0; + } else if ((temp_r31->unkA & 0x100) != 0) { + HuAudFXPlay(0x62A); + temp_r31->unk184 = HuAudFXPlay(0x621); + temp_r31->unk10 = 2; + temp_r31->unk12 = 0; + } + break; + case 2: + temp_r31->unk12++; + temp_r31->unk24 += ((1.0f / 60.0f) * temp_r31->unk20); + if (temp_r31->unk24 >= 1.0f) { + temp_r31->unk24 = 1.0f; + temp_r31->unk20 = -1.0f; + } else { + if (temp_r31->unk24 <= 0.0f) { + temp_r31->unk24 = 0.0f; + temp_r31->unk20 = 1.0f; + } + } + if (fn_1_FE0() > 4) { + if (temp_r31->unk184 != -1) { + HuAudFXStop(temp_r31->unk184); + temp_r31->unk184 = -1; + } + HuAudFXPlay(0x622); + temp_r31->unk10 = 10; + temp_r31->unk12 = 0; + } else if (((temp_r31->unkC & 0x100) == 0) || (temp_r31->unk12 >= 360.0f)) { + if (temp_r31->unk184 != -1) { + HuAudFXStop(temp_r31->unk184); + temp_r31->unk184 = -1; + } + HuAudFXPlay(0x622); + temp_r31->unk184 = HuAudFXPlay(0x62C); + temp_r31->unk168 = -1; + temp_r31->unk16C = -1; + temp_r31->unk10 = 3; + temp_r31->unk12 = 0; + } + break; + case 3: + temp_r31->unk12++; + if (temp_r31->unk15C == 0) { + temp_r31->unk28 += (1.0f / 60.0f); + } + if (temp_r31->unk28 > 1.0f) { + temp_r31->unk28 = 1.0f; + } + if (temp_r31->unk12 >= 0x3C) { + if (temp_r31->unk184 != -1) { + HuAudFXStop(temp_r31->unk184); + temp_r31->unk184 = -1; + } + HuAudFXPlay(0x62D); + HuAudFXPlay(0x625); + temp_r31->unk10 = 4; + temp_r31->unk12 = 0; + } + temp_r31->unk15C = 0; + break; + case 4: + temp_r31->unk12++; + if (temp_r31->unk160 == 0) { + temp_r31->unk2C -= (1.0f / 60.0f); + } + if (temp_r31->unk2C < 0.0f) { + temp_r31->unk2C = 0.0f; + } + if (temp_r31->unk12 >= 0x3C) { + temp_r31->unk10 = 5; + temp_r31->unk12 = 0; + } + temp_r31->unk160 = 0; + break; + case 5: + temp_r31->unk12++; + if (temp_r31->unk12 >= 6.0f) { + temp_r31->unk184 = HuAudFXPlay(0x62C); + if ((temp_r31->unk168 != -1)) { + var_r27 = fn_1_897C(temp_r31->unk168); + if (var_r27 != 0) { + var_r26 = fn_1_89A8(temp_r31->unk168); + HuAudCharVoicePlay(var_r26, 0x128); + } + } + temp_r31->unk10 = 6; + temp_r31->unk12 = 0; + } + break; + case 6: + temp_r31->unk12++; + temp_r31->unk28 -= (1.0f / 45.0f); + if (temp_r31->unk28 <= 0.0f) { + if (temp_r31->unk184 != -1) { + HuAudFXStop(temp_r31->unk184); + temp_r31->unk184 = -1; + } + HuAudFXPlay(0x62D); + temp_r31->unk28 = 0.0f; + if (temp_r31->unk168 != -1) { + var_r27 = fn_1_897C(temp_r31->unk168); + } else { + var_r27 = -1; + } + if (temp_r31->unk168 == -1) { + if (fn_1_FE0() > 4) { + temp_r31->unk10 = 10; + temp_r31->unk12 = 0; + } else { + temp_r31->unk10 = 8; + temp_r31->unk12 = 0; + HuAudFXPlay(0x625); + } + } else if (var_r27 == 0) { + temp_r31->unk10 = 8; + temp_r31->unk12 = 0; + HuAudFXPlay(0x625); + } else { + if (temp_r31->unk168 != -1) { + fn_1_252C(-0.01f, 0x3C); + fn_1_2670(0x75, 0); + } + HuAudFXPlay(0x62B); + temp_r31->unk184 = HuAudFXPlay(0x623); + temp_r31->unk10 = 7; + temp_r31->unk12 = 0; + } + } + break; + case 7: + if (arg0->rot.y < temp_r31->unk180) { + arg0->rot.y += 1.25f; + } else if (arg0->rot.y > temp_r31->unk180) { + arg0->rot.y = temp_r31->unk180; + } + var_f31 = 0.35f - temp_r31->unk24; + if (var_f31 > 0.0125f) { + temp_r31->unk24 += 0.0125f; + } else if (var_f31 < -0.0125f) { + temp_r31->unk24 -= 0.0125f; + } else { + temp_r31->unk24 = 0.35f; + } + if ((arg0->rot.y == temp_r31->unk180) && (0.35f == temp_r31->unk24)) { + if (temp_r31->unk184 != -1) { + HuAudFXStop(temp_r31->unk184); + temp_r31->unk184 = -1; + } + HuAudFXPlay(0x624); + HuAudFXPlay(0x625); + temp_r31->unk10 = 8; + temp_r31->unk12 = 0; + } + break; + case 8: + if ((temp_r31->unk12 == 0) && (temp_r31->unk168 != -1)) { + if (fn_1_897C(temp_r31->unk168) != 0) { + fn_1_8924(temp_r31->unk168, 4); + var_r26 = fn_1_89A8(temp_r31->unk168); + HuAudCharVoicePlay(var_r26, 0x123); + fn_1_D010(0x628, 30); + } else { + fn_1_8924(temp_r31->unk168, 2); + } + temp_r31->unk16C = temp_r31->unk168; + temp_r31->unk168 = -1; + } + temp_r31->unk12++; + temp_r31->unk2C += 0.033333335f; + if (temp_r31->unk2C > 1.0f) { + temp_r31->unk2C = 1.0f; + } + if (temp_r31->unk2C >= 1.0f) { + if (arg0->rot.y == temp_r31->unk180) { + temp_r31->unk184 = HuAudFXPlay(0x623); + } + if (temp_r31->unk16C != -1) { + if (fn_1_897C(temp_r31->unk16C) != 0) { + lbl_1_bss_6CC++; + } + } + temp_r31->unk10 = 9; + temp_r31->unk12 = 0; + } + break; + case 9: + temp_r31->unk12++; + if (arg0->rot.y > 270.0f) { + arg0->rot.y -= 1.25f; + } else if (arg0->rot.y < 270.0f) { + arg0->rot.y = 270.0f; + } + if (temp_r31->unk24 > 0.025f) { + temp_r31->unk24 -= 0.025f; + } else if (temp_r31->unk24 < 0.05f) { + temp_r31->unk24 = 0.0f; + } + if ((270.0f == arg0->rot.y) && (0.0f == temp_r31->unk24)) { + if (temp_r31->unk184 != -1) { + HuAudFXStop(temp_r31->unk184); + temp_r31->unk184 = -1; + HuAudFXPlay(0x624); + } + temp_r31->unk20 = 1.0f; + temp_r31->unk10 = 1; + temp_r31->unk12 = 0; + } + break; + case 10: + if (fn_1_B888() != 0) { + temp_r31->unkE = 5; + CharModelMotionSet(temp_r31->unk2, arg0->motion[temp_r31->unkE]); + temp_r31->unkE = 3; + CharModelMotionShiftSet(temp_r31->unk2, arg0->motion[temp_r31->unkE], 0.0f, 8.0f, 0U); + temp_r31->unk16 = 0; + temp_r31->unk14 = 0; + temp_r31->unk1C = lbl_1_data_210[0]; + temp_r31->unk18 = fn_1_B79C(lbl_1_data_1E0[0].y, lbl_1_data_1E0[1].y, temp_r31->unk1C); + temp_r31->unk10 = 11; + temp_r31->unk12 = 0; + } else { + temp_r31->unk10 = 13; + temp_r31->unk12 = 0; + } + break; + case 11: + var_r29 = temp_r31->unk14; + if (var_r29 > 2) { + var_r29 = 2; + } + if (temp_r31->unk16 == 0) { + temp_r31->unk12++; + sp14 = lbl_1_data_1E0[var_r29]; + sp8 = lbl_1_data_1E0[var_r29 + 1]; + arg0->rot.y = fn_1_1470(atan2d((sp8.x - arg0->trans.x), (sp8.z - arg0->trans.z)), arg0->rot.y, 10.0f); + var_f31 = (f32)temp_r31->unk12 / temp_r31->unk18; + arg0->trans.x = sp14.x + (var_f31 * (sp8.x - sp14.x)); + arg0->trans.z = sp14.z + (var_f31 * (sp8.z - sp14.z)); + arg0->trans.y += temp_r31->unk1C; + temp_r31->unk1C -= 0.65333337f; + if (temp_r31->unk14 == 2) { + if ((temp_r31->unk12 >= (0.4f * temp_r31->unk18)) && (temp_r31->unkE != 6) && (CharModelMotionShiftIDGet(temp_r31->unk2) == -1)) { + temp_r31->unkE = 6; + CharModelMotionShiftSet(temp_r31->unk2, arg0->motion[temp_r31->unkE], 0.0f, 8.0f, 0); + } + } + if (temp_r31->unk12 >= temp_r31->unk18) { + arg0->trans.x = sp8.x; + arg0->trans.y = sp8.y; + arg0->trans.z = sp8.z; + temp_r31->unkE = 4; + CharModelMotionShiftSet(temp_r31->unk2, arg0->motion[temp_r31->unkE], 0.0f, 8.0f, 0U); + temp_r31->unk12 = 0; + temp_r31->unk16 ^= 1; + if (++temp_r31->unk14 >= 3) { + temp_r31->unk10 = 0xC; + } + } + } else { + sp14 = lbl_1_data_1E0[var_r29]; + sp8 = lbl_1_data_1E0[var_r29 + 1]; + var_f31 = atan2d((sp8.x - arg0->trans.x), (sp8.z - arg0->trans.z)); + arg0->rot.y = fn_1_1470(var_f31, arg0->rot.y, 10.0f); + if ((fn_1_1358(var_f31, arg0->rot.y) < 1.0f) && (CharModelMotionShiftIDGet(temp_r31->unk2) == -1)) { + temp_r31->unkE = 3; + CharModelMotionShiftSet(temp_r31->unk2, arg0->motion[temp_r31->unkE], 0.0f, 8.0f, 0); + temp_r31->unk1C = lbl_1_data_210[var_r29]; + temp_r31->unk18 = fn_1_B79C(sp14.y, sp8.y, temp_r31->unk1C); + temp_r31->unk12 = 0; + temp_r31->unk16 ^= 1; + } + } + break; + case 12: + if ((temp_r31->unkE != 0) && (CharModelMotionShiftIDGet(temp_r31->unk2) == -1)) { + temp_r31->unkE = 0; + CharModelMotionShiftSet(temp_r31->unk2, arg0->motion[temp_r31->unkE], 0.0f, 8.0f, 0x40000008); + } + arg0->rot.y = fn_1_1470(0.0f, arg0->rot.y, 10.0f); + if ((fn_1_1358(0.0f, arg0->rot.y) < 1.0f) && (temp_r31->unkE == 0)) { + temp_r31->unk10 = 0xD; + temp_r31->unk12 = 0; + } + break; + case 13: + if (fn_1_FE0() >= 7) { + if (fn_1_B888() != 0) { + temp_r31->unk10 = 14; + temp_r31->unk12 = 0; + } else { + temp_r31->unk10 = 15; + temp_r31->unk12 = 0; + } + } + break; + case 14: + if ((temp_r31->unkE != 7) && (CharModelMotionShiftIDGet(temp_r31->unk2) == -1)) { + temp_r31->unkE = 7; + CharModelMotionShiftSet(temp_r31->unk2, arg0->motion[temp_r31->unkE], 0.0f, 8.0f, 0); + } + break; + case 15: + break; + } + if (temp_r31->unk10 <= 9) { + Hu3DModelRotSet(arg0->model[1], 0.0f, 90.0f + arg0->rot.y, 0.0f); + } + temp_r28 = arg0->model[2]; + Hu3DMotionTimeSet(temp_r28, temp_r31->unk24 * Hu3DMotionMaxTimeGet(temp_r28)); + fn_1_CE74(temp_r28); + temp_f30 = 0.2f + (0.8f * temp_r31->unk28); + Hu3DModelScaleSet(arg0->model[3], 1.0f, temp_f30, 1.0f); + Hu3DModelScaleSet(arg0->model[4], 1.0f, 1.0f / temp_f30, 1.0f); + temp_r28 = arg0->model[4]; + Hu3DMotionTimeSet(temp_r28, temp_r31->unk2C * Hu3DMotionMaxTimeGet(temp_r28)); + fn_1_CE74(temp_r28); + fn_1_C878(arg0->model[1], "hook1", sp74, 0); + fn_1_C878(arg0->model[2], "hook2", sp74, 1); + fn_1_C878(arg0->model[3], "hook3", sp74, 1); + PSMTXCopy(sp74, sp44); + temp_r31->unk30.x = sp74[0][3]; + temp_r31->unk30.y = sp74[1][3]; + temp_r31->unk30.z = sp74[2][3]; + + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { + PSMTXCopy(sp44, sp74); + fn_1_C878(arg0->model[4], lbl_1_data_21C[var_r29], sp74, 1); + temp_r31->unkCC[var_r29] = temp_r31->unk3C[var_r29]; + temp_r31->unk3C[var_r29].x = sp74[0][3]; + temp_r31->unk3C[var_r29].y = sp74[1][3]; + temp_r31->unk3C[var_r29].z = sp74[2][3]; + } + if ((temp_r31->unk168 != -1) && (temp_r31->unk10 >= 6)) { + sp2C.x = 0.0f; + sp2C.y = temp_r31->unk174.y; + sp2C.z = 0.0f; + PSVECSubtract(&temp_r31->unk174, &sp2C, &sp20); + var_f31 = PSVECMag(&sp20); + if (var_f31 != 0.0f) { + PSVECNormalize(&sp20, &sp20); + PSVECScale(&sp20, &sp20, 0.9f * var_f31); + PSVECAdd(&sp2C, &sp20, &temp_r31->unk174); + } + PSVECAdd(&temp_r31->unk30, &temp_r31->unk174, &sp38); + fn_1_88E8(temp_r31->unk168, sp38.x, sp38.y, sp38.z); + } + temp_r31->unk164 = 1; +} + +void fn_1_AE58(omObjData* arg0) { + arg0->func = NULL; +} + +f32 lbl_1_data_36C[4][2] = { + 30.0f, 24.0f, + 24.0f, 18.0f, + 12.0f, 6.0f, + 6.0f, 0.0f +}; + +f32 lbl_1_data_38C[4][2] = { + 0.2f, 0.15f, + 0.15f, 0.1f, + 0.1f, 0.05f, + 0.05f, 0.0f +}; + +void fn_1_AE64(omObjData* arg0) { + M424DllClawStruct2 sp20[8]; + M424DllClawStruct2 sp10; + s32 spC; + f32 var_f31; + f32 var_f29; + f32 temp_f28; + f32 temp_f27; + f32 temp_f26; + f32 var_f25; + f32 var_f24; + s32 temp_r24; + s32 temp_r23; + M424DllClawStruct* temp_r31; + Vec* var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + M424DllBallStruct2* var_r26; + s32 var_r25; + + spC = 0; + temp_r31 = arg0->data; + var_r26 = &lbl_1_bss_60[0]; + if (var_r26) { + temp_r31->unkC = 0; + temp_r31->unkA = 0; + switch (temp_r31->unk10) { + case 1: + if (temp_r31->unk188 == 0) { + temp_r31->unk188 = 1; + temp_r31->unk18C = -1; + temp_r31->unk190 = 0; + temp_r31->unk194 = 0; + temp_r31->unk198 = 0; + temp_r31->unk19C = 0; + temp_r31->unk1A0 = 0; + temp_r31->unk1A4 = 0; + temp_r31->unk1A8 = 0.0f; + } + if (temp_r31->unk18C == -1) { + for (var_r29 = 0, var_r28 = 0; var_r29 < lbl_1_bss_58; var_r29++, var_r26++) { + if ((fn_1_897C(var_r29) != 0) && (fn_1_8950(var_r29) <= 2)) { + var_r30 = fn_1_89D4(var_r29); + var_f31 = atan2d(var_r30->x, var_r30->z); + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + if (var_r28 < 8) { + if (var_f31 >= -90.0f) { + if (var_f31 <= 45.0f) { + sp20[var_r28].unk0 = var_r29; + sp20[var_r28].unkC = var_f31; + sp20[var_r28].unk4 = var_r30->x; + sp20[var_r28].unk8 = var_r30->z; + var_r28++; + } + } + } + } + } + if (var_r28 != 0) { + for (var_r29 = 0; var_r29 < (var_r28 - 1); var_r29++) { + var_r27 = var_r29 + 1; + for (;var_r27 < var_r28; var_r27++) { + if (sp20[var_r29].unkC < sp20[var_r27].unkC) { + sp10 = sp20[var_r29]; + sp20[var_r29] = sp20[var_r27]; + sp20[var_r27] = sp10; + } + } + } + temp_r31->unk18C = sp20[0].unk0; + temp_r31->unk1A8 = sp20[0].unkC; + temp_r31->unk19C = 0; + temp_r31->unk1A0 = 0; + temp_r31->unk1A4 = 0; + temp_r31->unk1AC = 0; + } + } + if (temp_r31->unk18C != -1) { + var_r30 = fn_1_89D4(temp_r31->unk18C); + var_f31 = atan2d(var_r30->x, var_r30->z); + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + if (var_f31 >= 30.0f) { + if (temp_r31->unk19C != 0) { + temp_f27 = lbl_1_data_36C[temp_r31->unk8][0]; + temp_f26 = lbl_1_data_36C[temp_r31->unk8][1]; + temp_r24 = ((temp_f26 - temp_f27) * (temp_f27 * (0.007874016f * (frand() & 0x7F)))); + temp_f27 = lbl_1_data_38C[temp_r31->unk8][0]; + temp_f26 = lbl_1_data_38C[temp_r31->unk8][1]; + temp_r23 = ((temp_f26 - temp_f27) * (temp_f27 * (0.007874016f * (frand() & 0x7F)))); + temp_r31->unk190 = ((3.0f * temp_r31->unk1A4) + temp_r24); + temp_f28 = (var_r30->x * var_r30->x) + (var_r30->z * var_r30->z); + var_f29 = sqrtf(temp_f28); + var_f29 = (var_f29 - 350.0f) / 250.0f + temp_r23; + if (var_f29 < 0.0f) { + var_f29 = 0.0f; + } else if (var_f29 > 1.0f) { + var_f29 = 1.0f; + } + temp_r31->unk194 = (60.0f * (1.0f - var_f29)); + var_f25 = (1.5f + (-1.5f * var_f29)); + temp_r31->unk190 -= (s32)(60.0f * var_f25); + var_f25 = (1.0f + (-1.1f * var_f29)); + temp_r31->unk198 = (60.0f * var_f25); + temp_r31->unk19C = 0; + temp_r31->unk1A0 = 0; + temp_r31->unk1AC = 0; + temp_r31->unk1AC = (temp_r31->unk1AC + (60.0f * (1.0f - var_f29))); + } + if (++temp_r31->unk1AC >= (temp_r31->unk190 - temp_r31->unk198)) { + temp_r31->unkA |= 0x100; + temp_r31->unkC |= 0x100; + temp_r31->unk1AC = 0; + return; + } + } else { + if (var_f31 >= (15.0f + temp_r31->unk1A8)) { + temp_r31->unk1A0++; + temp_r31->unk1A8 = var_f31; + temp_r31->unk1A4 = (temp_r31->unk19C / temp_r31->unk1A0); + return; + } + temp_r31->unk19C++; + return; + } + } + break; + case 2: + if (temp_r31->unk18C != -1) { + var_r25 = 1; + if (++temp_r31->unk1AC >= temp_r31->unk194) { + var_r25 = 0; + } + } else { + var_r25 = 0; + } + if (var_r25 != 0) { + temp_r31->unkC |= 0x100; + } + temp_r31->unk188 = 0; + break; + } + } +} + +u16 fn_1_B79C(f32 arg0, f32 arg1, f32 arg2) { + f32 var_f31; + f32 var_f3; + u16 var_r31; + + var_r31 = 0; + for (var_f31 = arg0; arg2 > 0.0f || var_f31 > arg1; var_r31++) { + var_f31 += arg2; + arg2 -= 0.65333337f; + } + return var_r31; +} + +s32 fn_1_B804(void) { + M424DllClawStruct* temp_r31; + + if (!lbl_1_bss_6D8) { + return 0; + } + if (!lbl_1_bss_6D8->data) { + return 0; + } + temp_r31 = lbl_1_bss_6D8->data; + if ((temp_r31->unk10 >= 1) && (temp_r31->unk10 < 6)) { + return 1; + } + return 0; +} + +s32 fn_1_B888(void) { + if (lbl_1_bss_6CC >= 3) { + return 1; + } else { + return 0; + } +} + +s32 fn_1_B8AC(void) { + M424DllClawStruct* temp_r31; + + if (!lbl_1_bss_6D8) { + return 0; + } + if (!lbl_1_bss_6D8->data) { + return 0; + } + + temp_r31 = lbl_1_bss_6D8->data; + if (temp_r31->unk10 >= 10) { + return 1; + } + return 0; +} + +s32 fn_1_B924(void) { + M424DllClawStruct* temp_r31; + + if (!lbl_1_bss_6D8) { + return 0; + } + if (!lbl_1_bss_6D8->data) { + return 0; + } + + temp_r31 = lbl_1_bss_6D8->data; + if (temp_r31->unk10 >= 13) { + return 1; + } + return 0; +} + +void fn_1_B99C(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2) { + fn_1_B9E0(arg0, arg1, arg8, arg2, 0x10); +} + +s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3) { + Vec sp60; + Vec sp54; + Vec sp48; + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; + Vec spC; + f32 temp_f30; + f32 var_f29; + f32 temp_f28; + f32 temp_f27; + f32 temp_f26; + f32 var_f25; + f32 var_f24; + f32 var_f23; + M424DllClawStruct* temp_r31; + s32 var_r29; + s32 var_r28; + s32 var_r26; + omObjData* var_r24; + s32 var_r23; + + var_r23 = 1; + var_r28 = 0; + var_r24 = lbl_1_bss_6D8; + temp_r31 = var_r24->data; + PSVECAdd(arg0, arg1, &sp24); + spC = *arg1; + *arg2 = *arg0; + temp_f30 = 5.0f + arg8; + if (temp_r31->unk164 == 0) { + return 0; + } + switch (temp_r31->unk10) { + case 3: + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { + if (var_r28 != 0) { + sp24 = *arg2; + PSVECSubtract(&sp24, arg0, &spC); + } + PSVECSubtract(&sp24, &temp_r31->unk3C[var_r29], &sp18); + var_f29 = PSVECMag(&sp18); + if (var_f29 < temp_f30) { + if (0.0f == var_f29) { + var_f29 = temp_f30; + sp18.x = 0.0f; + sp18.y = 0.0f; + sp18.z = 1.0f; + } + var_f23 = sqrtf((sp18.x * sp18.x) + (sp18.z * sp18.z)); + if ((temp_r31->unk3C[var_r29].y > sp24.y) && (var_f23 < 17.599999999999998)) { + temp_r31->unk15C = 1; + } else { + PSVECNormalize(&sp18, &sp18); + PSVECScale(&sp18, &sp18, temp_f30); + PSVECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); + } + var_r28 = 1; + } + } + break; + default: + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { + if (var_r28 != 0) { + sp24 = *arg2; + PSVECSubtract(&sp24, arg0, &spC); + } + var_r26 = 0; + sp60 = temp_r31->unk3C[var_r29]; + PSVECAdd(&temp_r31->unkCC[var_r29], &spC, &sp54); + PSVECSubtract(&sp60, &sp54, &sp18); + PSVECSubtract(&sp24, &sp54, &sp48); + temp_f26 = (sp18.z * sp18.z) + ((sp18.x * sp18.x) + (sp18.y * sp18.y)); + if (temp_f26 != 0.0f) { + var_f24 = (sp18.x * sp48.x) + (sp18.y * sp48.y) + (sp18.z * sp48.z); + temp_f27 = var_f24 / temp_f26; + if (temp_f27 >= 0.0f) { + if (temp_f27 <= 1.0f) { + PSVECScale(&sp18, &sp18, temp_f27); + PSVECAdd(&sp54, &sp18, &sp3C); + PSVECSubtract(&sp24, &sp3C, &sp30); + var_f29 = PSVECMag(&sp30); + if (var_f29 == 0.0f) { + if (PSVECMag(&sp18) <= 0.0f) { + sp18.x = sp18.y = 0.0f; + sp18.z = 1.0f; + } + PSVECNormalize(&sp18, &sp30); + PSVECScale(&sp30, &sp30, temp_f30); + PSVECAdd(&sp60, &sp30, arg2); + var_r28 = 1; + var_r26 = 1; + } else if (var_f29 < temp_f30) { + if (PSVECMag(&sp30) <= 0.0f) { + + sp30.x = sp30.y = 0.0f; + sp30.z = 1.0f; + } + PSVECNormalize(&sp30, &sp30); + PSVECScale(&sp30, &sp30, temp_f30); + PSVECAdd(&sp3C, &sp30, arg2); + var_r28 = 1; + var_r26 = 1; + } + } + } + } + if (var_r26 == 0) { + PSVECSubtract(&sp24, &sp60, &sp18); + var_f29 = PSVECMag(&sp18); + if (var_f29 < temp_f30) { + if (var_f29 <= 0.0f) { + sp18.x = sp18.y = 0.0f; + sp18.z = 1.0f; + } + PSVECNormalize(&sp18, &sp18); + PSVECScale(&sp18, &sp18, temp_f30); + PSVECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); + var_r28 = 1; + var_r26 = 1; + } + } + if (var_r26 == 0) { + PSVECSubtract(&sp24, &sp54, &sp18); + var_f29 = PSVECMag(&sp18); + if (var_f29 < temp_f30) { + if (var_f29 <= 0.0f) { + sp18.x = sp18.y = 0.0f; + sp18.z = 1.0f; + } + PSVECNormalize(&sp18, &sp18); + PSVECScale(&sp18, &sp18, temp_f30); + PSVECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); + var_r28 = 1; + var_r26 = 1; + } + } + if ((lbl_1_data_2DC[var_r29] != 0) && (var_r26 == 0)) { + var_r23 = 0; + } + } + if ((temp_r31->unk10 == 4) && (var_r23 != 0)) { + arg2->x = temp_r31->unk30.x; + arg2->y = arg0->y; + arg2->z = temp_r31->unk30.z; + arg3 = 0; + temp_r31->unk160 = 1; + } + break; + case 0: + case 1: + case 2: + case 9: + break; + } + if (var_r28 != 0) { + if (--arg3 > 0) { + sp24 = *arg2; + PSVECSubtract(&sp24, arg0, &spC); + if (fn_1_B9E0(arg0, &spC, arg8, &sp24, arg3) != 0) { + *arg2 = sp24; + } + } + } + + (void)temp_f30; // @todo fix + (void)temp_f30; + return var_r28; +} + +s32 fn_1_C210(Vec* arg0) { + Vec sp1C; + Vec sp10; + f32 spC; + M424DllClawStruct* temp_r31; + omObjData* var_r30; + s32 var_r29; + + var_r29 = 0; + var_r30 = lbl_1_bss_6D8; + temp_r31 = var_r30->data; + if (temp_r31->unk164 == 0) { + return 0; + } + switch (temp_r31->unk10) { + case 5: + sp1C.x = temp_r31->unk30.x; + sp1C.y = -120.00001f + temp_r31->unk30.y; + sp1C.z = temp_r31->unk30.z; + PSVECSubtract(arg0, &sp1C, &sp10); + if ((spC = PSVECMag(&sp10)) < 50.0f) { + var_r29 = 1; + } + } + return var_r29; +} + +void fn_1_C2E0(s32 arg0) { + Vec sp4C; + Vec sp40; + Vec sp34; + Vec sp28; + Vec* spC; + M424DllBallStruct2* temp_r27; + Vec* temp_r28; + M424DllClawStruct* temp_r31; + s32 var_r30; + s32 var_r26; + omObjData* var_r25; + + if ((u8)omPauseChk() != 0U) return; + + var_r25 = lbl_1_bss_6D8; + if (lbl_1_bss_6D8) { + temp_r31 = var_r25->data; + if (temp_r31 && (temp_r31->unk164 != 0)) { + temp_r27 = &lbl_1_bss_60[0]; + if (temp_r27) { + var_r26 = 0x10; + + for (var_r30 = 0; var_r30 < lbl_1_bss_58; var_r30++) { + temp_r27 = &lbl_1_bss_60[var_r30]; + if ((fn_1_8950(var_r30) == 3) || (fn_1_8950(var_r30) == 4)) continue; + temp_r28 = fn_1_89D4(var_r30); + spC = fn_1_8A00(var_r30); + sp28 = *temp_r28; + sp4C = temp_r27->unk60; + PSVECSubtract(temp_r28, &sp4C, &sp40); + if (fn_1_B9E0(&sp4C, &sp40, 100.0f, &sp34, 0x10) != 0) { + *temp_r28 = sp34; + sp4C = sp34; + if ((temp_r27->unk4 < 3) && (fn_1_907C(&sp4C, &sp34) != 0)) { + *temp_r28 = sp34; + sp4C = sp34; + } + fn_1_C604(var_r30, 0x20); + if ((sp28.y != sp4C.y) && (var_r30 != temp_r31->unk168) && (var_r30 != temp_r31->unk16C)) { + temp_r28->y = sp28.y; + sp4C.y = sp28.y; + if (var_r26 > 0) { + var_r30--; + var_r26--; + continue; + } + } + } + if (temp_r31->unk168 == -1) { + if (fn_1_C210(&sp4C) != 0) { + temp_r31->unk168 = var_r30; + temp_r31->unk170 = fn_1_897C(var_r30); + PSVECSubtract(&sp4C, &temp_r31->unk30, &temp_r31->unk174); + fn_1_88E8(temp_r31->unk168, sp4C.x, sp4C.y, sp4C.z); + } + } + var_r26 = 0x10; + } + } + } + } +} + +void fn_1_C604(s32 arg0, s32 arg1) { + Vec sp30; + Vec sp24; + Vec sp18; + Vec spC; + M424DllBallStruct2* sp8; + Vec* var_r31; + f32 temp_f31; + f32 var_f30; + s32 var_r30; + M424DllBallStruct2* var_r28; + Vec* var_r27; + + sp8 = &lbl_1_bss_60[var_r30]; + var_r27 = fn_1_89D4(arg0); + sp30 = *var_r27; + for (var_r30 = 0; var_r30 < lbl_1_bss_58; var_r30++) { + if ((var_r30 != arg0) && (fn_1_8950(var_r30) < 3)) { + var_r28 = &lbl_1_bss_60[var_r30]; + var_r31 = fn_1_89D4(var_r30); + sp24 = *var_r31; + PSVECSubtract(&sp24, &sp30, &sp18); + var_f30 = PSVECMag(&sp18); + if (var_f30 < 200.0f) { + if (var_f30 > 0.0f) { + temp_f31 = 1.0f / var_f30; + sp18.x *= temp_f31; + sp18.y *= temp_f31; + sp18.z *= temp_f31; + } else { + sp18.x = 0.0f; + sp18.y = 0.0f; + sp18.z = 1.0f; + } + temp_f31 = 1.0f + (200.0f - var_f30); + sp24.x += (sp18.x * temp_f31); + sp24.z += (sp18.z * temp_f31); + var_r31->x = sp24.x; + var_r31->z = sp24.z; + if ((var_r28->unk4 < 3) && (fn_1_907C(&sp24, &spC) != 0)) { + var_r31->x = sp24.x = spC.x; + var_r31->z = sp24.z = spC.z; + } + if (arg1 > 0) { + arg1--; + fn_1_C604(var_r30, arg1); + } + } + } + } +} + +void fn_1_C854(void) { + fn_1_C2E0(0); +} + +s32 fn_1_C878(s16 arg0, const char* arg1, Mtx arg2, s32 arg3) { + Mtx sp44; + Mtx sp14; + HsfData* temp_r30; + ModelData* temp_r31; + + temp_r31 = &Hu3DData[arg0]; + temp_r30 = temp_r31->hsfData; + lbl_1_bss_6C8 = 0; + if (temp_r31->unk_08 != -1) { + lbl_1_bss_6C4 = 1; + } else { + lbl_1_bss_6C4 = 0; + } + mtxRot(sp14, temp_r31->rot.x, temp_r31->rot.y, temp_r31->rot.z); + PSMTXScale(sp44, temp_r31->scale.x, temp_r31->scale.y, temp_r31->scale.z); + PSMTXConcat(sp14, sp44, sp44); + mtxTransCat(sp44, temp_r31->pos.x, temp_r31->pos.y, temp_r31->pos.z); + if (arg3 != 0) { + PSMTXConcat(arg2, sp44, sp44); + } + fn_1_C99C(temp_r30->root, sp44, arg1, arg2); + return lbl_1_bss_6C8; +} + +void fn_1_C99C(HsfObject* arg0, Mtx arg1, const char* arg2, Mtx arg3) { + Mtx spF8; + Mtx spC8; + Mtx sp98; + Mtx sp68; + Mtx sp38; + Mtx sp8; + HsfTransform* var_r31; + HsfTransform* var_r30; + HsfTransform* var_r29; + HsfObject* temp_r28; + HsfObject* temp_r27; + u32 var_r25; + u32 var_r24; + u32 var_r23; + + if (lbl_1_bss_6C8 == 0) { + if (lbl_1_bss_6C4 != 0) { + var_r31 = &arg0->data.curr; + } else { + var_r31 = &arg0->data.base; + } + if ((var_r31->scale.x <= 0.0f) && (var_r31->scale.y <= 0.0f) && (var_r31->scale.z <= 0.0f)) { + PSMTXCopy(arg1, spF8); + OSReport("OBJ MTX CHECK ERROR %s \n", arg0->name); + } else { + mtxRot(spC8, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); + PSMTXScale(spF8, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + PSMTXConcat(spC8, spF8, spF8); + mtxTransCat(spF8, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); + PSMTXConcat(arg1, spF8, spF8); + } + if (lbl_1_bss_6C0 != 0) { + OSReport("%s \n", arg0->name); + } + if (strcmp(arg2, arg0->name) == 0) { + PSMTXCopy(spF8, arg3); + lbl_1_bss_6C8 = 1; + } + for (var_r25 = 0; var_r25 < arg0->data.childrenCount; var_r25++) { + temp_r28 = arg0->data.children[var_r25]; + if (lbl_1_bss_6C8 == 0) { + if (lbl_1_bss_6C4 != 0) { + var_r30 = &temp_r28->data.curr; + } else { + var_r30 = &temp_r28->data.base; + } + if ((var_r30->scale.x <= 0.0f) && (var_r30->scale.y <= 0.0f) && (var_r30->scale.z <= 0.0f)) { + PSMTXCopy(spF8, sp68); + OSReport("OBJ MTX CHECK ERROR %s \n", temp_r28->name); + } else { + mtxRot(sp98, var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); + PSMTXScale(sp68, var_r30->scale.x, var_r30->scale.y, var_r30->scale.z); + PSMTXConcat(sp98, sp68, sp68); + mtxTransCat(sp68, var_r30->pos.x, var_r30->pos.y, var_r30->pos.z); + PSMTXConcat(spF8, sp68, sp68); + } + if (lbl_1_bss_6C0 != 0) { + OSReport("%s \n", temp_r28->name); + } + if (strcmp(arg2, temp_r28->name) == 0) { + PSMTXCopy(sp68, arg3); + lbl_1_bss_6C8 = 1; + } + for (var_r24 = 0; var_r24 < temp_r28->data.childrenCount; var_r24++) { + temp_r27 = temp_r28->data.children[var_r24]; + if (lbl_1_bss_6C8 == 0) { + if (lbl_1_bss_6C4 != 0) { + var_r29 = &temp_r27->data.curr; + } else { + var_r29 = &temp_r27->data.base; + } + if ((var_r29->scale.x <= 0.0f) && (var_r29->scale.y <= 0.0f) && (var_r29->scale.z <= 0.0f)) { + PSMTXCopy(sp68, sp8); + OSReport("OBJ MTX CHECK ERROR %s \n", temp_r27->name); + } else { + mtxRot(sp38, var_r29->rot.x, var_r29->rot.y, var_r29->rot.z); + PSMTXScale(sp8, var_r29->scale.x, var_r29->scale.y, var_r29->scale.z); + PSMTXConcat(sp38, sp8, sp8); + mtxTransCat(sp8, var_r29->pos.x, var_r29->pos.y, var_r29->pos.z); + PSMTXConcat(sp68, sp8, sp8); + } + if (lbl_1_bss_6C0 != 0) { + OSReport("%s \n", temp_r27->name); + } + if (strcmp(arg2, temp_r27->name) == 0) { + PSMTXCopy(sp8, arg3); + lbl_1_bss_6C8 = 1; + } + for (var_r23 = 0; var_r23 < temp_r27->data.childrenCount; var_r23++) { + fn_1_C99C(temp_r27->data.children[var_r23], sp8, arg2, arg3); + } + } + } + } + } + } +} + +void fn_1_CE74(s32 arg0) { + ModelData* temp_r31; + + temp_r31 = &Hu3DData[arg0]; + if (temp_r31->unk_08 != -1) { + Hu3DMotionExec(arg0, temp_r31->unk_08, temp_r31->unk_64, 0); + } + if (temp_r31->unk_0C != -1) { + Hu3DSubMotionExec(arg0); + } + if (temp_r31->hsfData->cenvCnt != 0) { + EnvelopeProc(temp_r31->hsfData); + } +} + +void fn_1_CF00(Process* arg0) { + M424DllClawStruct3* var_r31; + s32 var_r30; + + omAddObjEx(arg0, 0x40, 0, 0, -1, fn_1_CF80); + var_r31 = &lbl_1_bss_640[0]; + + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + var_r31->unk0 = -1; + var_r31->unk4 = -1; + } +} + +void fn_1_CF80(omObjData* arg0) { + M424DllClawStruct3* var_r31; + s32 var_r30; + + var_r31 = &lbl_1_bss_640[0]; + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if ((var_r31->unk0 >= 0) && (var_r31->unk4 > 0)) { + if (--var_r31->unk4 <= 0) { + HuAudFXPlay(var_r31->unk0); + var_r31->unk0 = -1; + var_r31->unk4 = -1; + } + } + } +} + +s32 fn_1_D010(s32 arg0, s32 arg1) { + M424DllClawStruct3* var_r31; + s32 var_r30; + + var_r31 = &lbl_1_bss_640[0]; + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (var_r31->unk0 == -1) break; + } + if (var_r30 >= 0x10) { + return -1; + } + var_r31->unk0 = arg0; + var_r31->unk4 = arg1; + return var_r30; +} From 2121a31f1d4e354a6ad75284cff7be3293e1bec9 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Tue, 7 Jan 2025 17:17:38 +0100 Subject: [PATCH 103/178] Match m425Dll except for one function with an inline (#511) --- config/GMPE01_00/rels/m425Dll/symbols.txt | 387 +-- include/REL/m425Dll.h | 15 + src/REL/m425Dll/main.c | 1685 +++++++++++++ src/REL/m425Dll/thwomp.c | 2768 +++++++++++++++++++++ 4 files changed, 4662 insertions(+), 193 deletions(-) create mode 100644 include/REL/m425Dll.h create mode 100644 src/REL/m425Dll/main.c create mode 100644 src/REL/m425Dll/thwomp.c diff --git a/config/GMPE01_00/rels/m425Dll/symbols.txt b/config/GMPE01_00/rels/m425Dll/symbols.txt index cae3368f..627df9e1 100644 --- a/config/GMPE01_00/rels/m425Dll/symbols.txt +++ b/config/GMPE01_00/rels/m425Dll/symbols.txt @@ -65,211 +65,212 @@ fn_1_11A74 = .text:0x00011A74; // type:function size:0x46C fn_1_11EE0 = .text:0x00011EE0; // type:function size:0x7B4 _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:0x10 data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0xC0 -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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x10 data:4byte -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x10 data:4byte -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x20 data:4byte -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 data:double -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x10 scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0xC0 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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 scope:local data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x20 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 scope:local data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 scope:local data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte lbl_1_data_4 = .data:0x00000004; // type:object size:0xC lbl_1_data_10 = .data:0x00000010; // type:object size:0xC -lbl_1_data_1C = .data:0x0000001C; // type:object size:0x24 +lbl_1_data_1C = .data:0x0000001C; // type:object size:0x24 data:float lbl_1_data_40 = .data:0x00000040; // type:object size:0x4 -lbl_1_data_44 = .data:0x00000044; // type:object size:0x23 data:string +lbl_1_data_44 = .data:0x00000044; // type:object size:0x23 scope:local data:string lbl_1_data_68 = .data:0x00000068; // type:object size:0x4 data:4byte lbl_1_data_6C = .data:0x0000006C; // type:object size:0x28 lbl_1_data_94 = .data:0x00000094; // type:object size:0x30 jumptable_1_data_C4 = .data:0x000000C4; // type:object size:0x28 scope:local jumptable_1_data_EC = .data:0x000000EC; // type:object size:0x28 scope:local lbl_1_data_114 = .data:0x00000114; // type:object size:0x4 data:4byte -lbl_1_data_118 = .data:0x00000118; // type:object size:0x18 -lbl_1_data_130 = .data:0x00000130; // type:object size:0x1F data:string +lbl_1_data_118 = .data:0x00000118; // type:object size:0x18 data:float +lbl_1_data_130 = .data:0x00000130; // type:object size:0x1F scope:local data:string lbl_1_data_150 = .data:0x00000150; // type:object size:0x18 lbl_1_data_168 = .data:0x00000168; // type:object size:0x4 data:byte -lbl_1_data_16C = .data:0x0000016C; // type:object size:0x30 -lbl_1_data_19C = .data:0x0000019C; // type:object size:0x30 +lbl_1_data_16C = .data:0x0000016C; // type:object size:0x30 data:float +lbl_1_data_19C = .data:0x0000019C; // type:object size:0x30 data:float lbl_1_data_1CC = .data:0x000001CC; // type:object size:0x20 +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:float lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:float lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float @@ -287,7 +288,7 @@ lbl_1_bss_668 = .bss:0x00000668; // type:object size:0x4 data:4byte lbl_1_bss_670 = .bss:0x00000670; // type:object size:0xC data:float lbl_1_bss_67C = .bss:0x0000067C; // type:object size:0xC data:float lbl_1_bss_688 = .bss:0x00000688; // type:object size:0x40 -lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x1 data:byte +lbl_1_bss_6C8 = .bss:0x000006C8; // type:object size:0x4 data:byte lbl_1_bss_6CC = .bss:0x000006CC; // type:object size:0x4 data:4byte lbl_1_bss_6D0 = .bss:0x000006D0; // type:object size:0x1 data:byte lbl_1_bss_6D4 = .bss:0x000006D4; // type:object size:0x4 data:4byte diff --git a/include/REL/m425Dll.h b/include/REL/m425Dll.h new file mode 100644 index 00000000..413e47c3 --- /dev/null +++ b/include/REL/m425Dll.h @@ -0,0 +1,15 @@ +#ifndef M425DLL_H +#define M425DLL_H + +#include "game/object.h" + +omObjData *fn_1_6A0C(Process *process, s32 arg1); +void fn_1_6C08(void); +void fn_1_6CD0(s32 arg0, Vec *arg1); +s32 fn_1_109EC(s32 arg0, s32 arg1, Vec *arg2, Vec *arg3, Vec *arg4, s32 arg5); +float fn_1_10CF4(s32 arg0); +void fn_1_10DB4(s32 arg0); +void fn_1_10E3C(s32 arg0); +float fn_1_10EF8(s32 arg0, s32 arg1, float arg8, float arg9); + +#endif diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c new file mode 100644 index 00000000..ae214b28 --- /dev/null +++ b/src/REL/m425Dll/main.c @@ -0,0 +1,1685 @@ +#define HUSPR_USE_OLD_DEFS +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXStruct.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "math.h" +#include "string.h" + +#include "REL/m425Dll.h" + +extern u8 texMtxTbl[]; // TODO maybe put in hsfdraw.h? + +typedef struct M425DllWork { + u8 unk_00; + u8 unk_01; + u8 unk_02; + u8 unk_03; + u8 unk_04; + u8 unk_05; + u8 unk_06; + char unk07[2]; + u8 unk_09; + u8 unk_0A; + u8 unk_0B; + u8 unk_0C; + char unk0D; + s16 unk_0E; + float unk_10; + float unk_14; + Vec unk_18; + Vec unk_24; + Vec unk_30; + float unk_3C[8]; + s32 unk_5C; + float unk_60; + s32 unk_64; + s32 unk_68; +} M425DllWork; /* size = 0x6C */ + +typedef struct M425DllWork2 { + char unk00[4]; + Vec unk_04; + Vec unk_10; + Vec unk_1C; + Vec unk_28; + float unk_34; + float unk_38; + float unk_3C; + float unk_40; + float unk_44; + float unk_48; + char unk4C[0x18]; + float unk_64; + float unk_68; + float unk_6C; + char unk70[4]; + s16 unk_74; + s16 unk_76; +} M425DllWork2; /* size = 0x78 */ + +typedef struct M425DllUnkStruct { + s16 unk_00; + s16 unk_02; + s16 unk_04; + char unk06[0x42]; +} M425DllUnkStruct; /* size = 0x48 */ + +typedef struct M425DllUnkStruct2 { + AnimData *unk_00; + s16 unk_04; + Vec unk_08; + Mtx unk_14; + Vec2f *unk_44; + s16 unk_48; +} M425DllUnkStruct2; /* size = 0x4C */ + +typedef struct M425DllUnkStruct3 { + char unk00[0xC]; + s16 unk_0C; + void *unk_10; + Vec *unk_14; + GXColor *unk_18; + Vec *unk_1C; + GXColor unk_20; + GXColor unk_24; + s16 unk_28; + s16 unk_2A; + M425DllUnkStruct2 *unk_2C; +} M425DllUnkStruct3; /* size = 0x30 */ + +typedef struct M425DllUnkBss10Struct { + /* 0x00 */ u8 unk_00; + /* 0x01 */ char pad_01[1]; + /* 0x02 */ u8 unk_02; + /* 0x03 */ u8 unk_03; + /* 0x04 */ float unk_04; + /* 0x08 */ Vec unk_08; + /* 0x14 */ float unk_14; + /* 0x18 */ float unk_18; + /* 0x1C */ float unk_1C; + /* 0x20 */ float unk_20; + /* 0x24 */ float unk_24; + /* 0x28 */ float unk_28; + /* 0x2C */ float unk_2C; + /* 0x30 */ float unk_30; + /* 0x34 */ float unk_34; + /* 0x38 */ float unk_38; + /* 0x3C */ float unk_3C; + /* 0x40 */ float unk_40; + union { + /* 0x44 */ s16 unk_44[0x20]; + struct { + float unk_44f; + float unk_48; + char unk4C[4]; + float unk_50; + char unk54[0x30]; + }; + }; +} M425DllUnkBss10Struct; /* size = 0x84 */ + +void fn_1_1B40(omObjData *object); +void fn_1_2784(omObjData *object); +void fn_1_2870(omObjData *object); +void fn_1_2A94(s16 arg0, Vec *arg1, Vec *arg2, float arg8); +void fn_1_2B2C(omObjData *object); +void fn_1_2E78(omObjData *object); +void fn_1_33E0(omObjData *object); +void fn_1_3764(omObjData *object); +s16 fn_1_3ED0(s32 arg0, s16 arg1, ParticleHook arg2); +void fn_1_3F80(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_460(omObjData *object); +void fn_1_480(omObjData *object); +void fn_1_4A88(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_5044(s16 arg0); +void fn_1_573C(Vec2f **arg0, s16 arg1, Vec2f *arg2); +void fn_1_57D4(ModelData *model, Mtx matrix); +void fn_1_5C20(ModelData *model, Mtx matrix); +s32 fn_1_64D4(void); +void fn_1_8E4(omObjData *object); +void fn_1_F48(omObjData *object); +void fn_1_FA8(omObjData *object); + +s16 lbl_1_data_0 = -1; +Vec lbl_1_data_4 = { -200.0f, 2500.0f, 1200.0f }; +Vec lbl_1_data_10 = { 0.2f, -0.8f, -0.2f }; +float lbl_1_data_1C[9] = { 0.0f, 2500.0f, 1500.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f }; +GXColor lbl_1_data_40 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +omObjData *lbl_1_bss_668; +omObjData *lbl_1_bss_664; +// M425DllWork2 +omObjData *lbl_1_bss_660; +omObjData *lbl_1_bss_65C; +// M425DllWork +omObjData *lbl_1_bss_64C[4]; +u16 lbl_1_bss_648; +s16 lbl_1_bss_646; +s16 lbl_1_bss_644; +s16 lbl_1_bss_642; +s16 lbl_1_bss_640; +M425DllUnkBss10Struct lbl_1_bss_10[0xC]; +float lbl_1_bss_C; +float lbl_1_bss_8; +float lbl_1_bss_4; +char lbl_1_bss_0[4]; + +void ObjectSetup(void) +{ + s32 var_r31; + Process *process; + omObjData *object; + s32 var_r28; + LightData *var_r27; + CameraData *var_r26; + s32 var_r25; + s32 var_r24; + s32 sp8[4] = { 0, 0, 0, 0 }; + + OSReport("******* M425ObjectSetup *********\n"); + Hu3DLighInit(); + var_r24 = Hu3DGLightCreateV(&lbl_1_data_4, &lbl_1_data_10, &lbl_1_data_40); + Hu3DGLightInfinitytSet(var_r24); + var_r27 = Hu3DGlobalLight; + var_r27->unk_00 |= 0x8000; + process = omInitObjMan(0x32, 0x2000); + var_r25 = frand() & 0x1F; + for (var_r31 = 0; var_r31 < var_r25; var_r31++) { + fn_1_64D4(); + } + CRot.x = 8.0f; + CRot.y = 0.0f; + CRot.z = 0.0f; + Center.x = 0.0f; + Center.y = 430.0f; + Center.z = -400.0f; + CZoom = 1650.0f; + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 45.0f, 100.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + lbl_1_bss_664 = omAddObjEx(process, 0x7FDA, 0, 0, -1, omOutView); + var_r26 = Hu3DCamera; + var_r26->fov = -1.0f; + lbl_1_bss_668 = omAddObjEx(process, 0x10, 8, 0, -1, fn_1_460); + lbl_1_bss_65C = omAddObjEx(process, 0x20, 0x10, 0, -1, fn_1_FA8); + lbl_1_bss_660 = omAddObjEx(process, 0x50, 0x10, 0, -1, fn_1_2784); + fn_1_6A0C(process, 0x40); + omMakeGroupEx(process, 0, 4); + omGetGroupMemberListEx(process, 0); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + object = omAddObjEx(process, 0x30, 2, 0xA, 0, fn_1_2B2C); + lbl_1_bss_64C[var_r31] = object; + object->work[0] = var_r31; + object->work[1] = GWPlayerCfg[var_r31].group; + for (var_r28 = object->work[1] * 2; var_r28 < 4; var_r28++) { + if (sp8[var_r28] == 0) { + object->work[1] = var_r28; + sp8[var_r28]++; + break; + } + } + } + omGameSysInit(process); + HuAudSndGrpSet(0x32); +} + +void fn_1_460(omObjData *object) +{ + lbl_1_bss_648 = 0; + object->func = fn_1_480; +} + +void fn_1_480(omObjData *object) +{ + Vec sp14; + Vec sp8; + float var_f31; + CameraData *var_r30; + + switch (lbl_1_bss_648) { + case 0: + sp14.x = -250.0f; + sp14.y = 225.0f; + sp14.z = 200.0f; + sp8.x = 22.0f; + sp8.y = 10.0f; + sp8.z = 0.0f; + var_f31 = 500.0f; + fn_1_2A94(1, &sp14, &sp8, var_f31); + lbl_1_bss_C = -4.866667f; + lbl_1_bss_8 = 600.0f; + sp14.x = -300.0f; + sp14.y = lbl_1_bss_8; + sp14.z = 0.0f; + fn_1_6CD0(0, &sp14); + sp14.x = 300.0f; + fn_1_6CD0(1, &sp14); + var_r30 = Hu3DCamera; + var_r30->fov = 45.0f; + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + lbl_1_bss_648++; + break; + case 1: + lbl_1_bss_8 += lbl_1_bss_C; + lbl_1_bss_C += -2.4333334f; + if (lbl_1_bss_8 < 0.0f) { + lbl_1_bss_8 = 0.0f; + lbl_1_bss_648++; + lbl_1_bss_640 = 0x3C; + fn_1_10DB4(0); + fn_1_10DB4(1); + fn_1_10E3C(0); + } + sp14.x = -300.0f; + sp14.y = lbl_1_bss_8; + sp14.z = 0.0f; + fn_1_6CD0(0, &sp14); + sp14.x = 300.0f; + fn_1_6CD0(1, &sp14); + break; + case 2: + if (--lbl_1_bss_640 == 0) { + sp14.x = 0.0f; + sp14.y = 430.0f; + sp14.z = -400.0f; + sp8.x = 8.0f; + sp8.y = 0.0f; + sp8.z = 0.0f; + var_f31 = 1650.0f; + lbl_1_bss_640 = 0x48; + fn_1_2A94(0x3C, &sp14, &sp8, var_f31); + lbl_1_bss_648++; + } + break; + case 3: + if (--lbl_1_bss_640 == 0) { + lbl_1_bss_648 = 4; + object->func = fn_1_8E4; + lbl_1_bss_646 = lbl_1_bss_644 = -1; + } + break; + } + if ((omSysExitReq != 0) && (WipeStatGet() == 0)) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + object->func = fn_1_F48; + } +} + +s32 lbl_1_data_68 = -1; +s32 lbl_1_data_6C[0xA] = { 0, 2, 3, 5, 6, 8, 0xA, 9, 0x17, 0x18 }; +Vec lbl_1_data_94[4] = { + { -350.0f, 800.0f, 100.0f }, + { -200.0f, 1000.0f, 0.0f }, + { 200.0f, 1200.0f, 0.0f }, + { 350.0f, 1400.0f, 100.0f }, +}; + +void fn_1_8E4(omObjData *object) +{ + s16 sp8[2]; + float var_f31; + s32 var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s16 var_r26; + s16 var_r25; + + switch (lbl_1_bss_648) { + case 4: + if (lbl_1_bss_644 == -1) { + lbl_1_bss_642 = 0x708; + lbl_1_bss_644 = MGSeqCreate(3, 0); + MGSeqPosSet(lbl_1_bss_644, 320.0f, 240.0f); + } + else { + if (MGSeqStatGet(lbl_1_bss_644) == 0) { + lbl_1_bss_644 = -1; + lbl_1_bss_648++; + lbl_1_bss_646 = MGSeqCreate(1, lbl_1_bss_642 / 60, -1, -1); + } + } + if ((lbl_1_data_68 == -1) && ((MGSeqStatGet(lbl_1_bss_644) & 0x10) != 0)) { + lbl_1_data_68 = HuAudSeqPlay(0x48); + } + break; + case 5: + var_r30 = 0; + lbl_1_bss_642--; + var_r28 = (lbl_1_bss_642 + 0x3B) / 60; + if (var_r28 < 0) { + var_r28 = 0; + } + MGSeqParamSet(lbl_1_bss_646, 1, var_r28); + if (lbl_1_bss_642 < -1) { + var_r30++; + if ((fn_1_10CF4(0) == 1000.0f) && (fn_1_10CF4(1) == 1000.0f)) { + lbl_1_data_0 = -1; + } + else { + var_f31 = fn_1_10CF4(1); + if (fn_1_10CF4(0) <= var_f31) { + lbl_1_data_0 = 0; + } + else { + lbl_1_data_0 = 1; + } + } + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + if (!(fn_1_10CF4(var_r31) > 0.0f)) { + lbl_1_data_0 = var_r31; + var_r30++; + } + } + if (var_r30 != 0) { + lbl_1_bss_648++; + } + break; + case 6: + if (lbl_1_bss_644 == -1) { + lbl_1_bss_644 = MGSeqCreate(3, 1); + MGSeqPosSet(lbl_1_bss_644, 320.0f, 240.0f); + MGSeqParamSet(lbl_1_bss_646, 2, -1); + HuAudSeqFadeOut(lbl_1_data_68, 0x64); + } + else if (MGSeqStatGet(lbl_1_bss_644) == 0) { + lbl_1_bss_644 = -1; + lbl_1_bss_640 = 1; + lbl_1_bss_648++; + } + break; + case 7: + if (--lbl_1_bss_640 <= 0) { + lbl_1_bss_644 = -1; + lbl_1_bss_648++; + } + break; + case 8: + if (lbl_1_data_0 != -1) { + for (var_r31 = 0, var_r29 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_data_0 == OM_GET_DATA_PTR(lbl_1_bss_64C[var_r31], M425DllWork)->unk_02) { + sp8[var_r29] = OM_GET_DATA_PTR(lbl_1_bss_64C[var_r31], M425DllWork)->unk_01; + var_r29++; + GWPlayerCoinWinAdd(var_r31, 10); + } + } + lbl_1_bss_644 = MGSeqCreate(5, 3, sp8[0], sp8[1], -1, -1); + HuAudSStreamPlay(1); + } + else { + lbl_1_bss_644 = MGSeqCreate(3, 2); + HuAudSStreamPlay(4); + } + lbl_1_bss_640 = 0xD2; + lbl_1_bss_648++; + break; + case 9: + if (--lbl_1_bss_640 <= 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + object->func = fn_1_F48; + } + break; + } + if ((omSysExitReq != 0) && (WipeStatGet() == 0)) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + object->func = fn_1_F48; + } +} + +void fn_1_F48(omObjData *object) +{ + if (WipeStatGet() == 0) { + CharModelKill(-1); + MGSeqKill(lbl_1_bss_646); + MGSeqKillAll(); + fn_1_6C08(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_FA8(omObjData *object) +{ + M425DllUnkBss10Struct *var_r31; + s32 var_ctr; + void *var_r4; + s32 temp_r3; + s32 var_r30; + s16 *var_r28; + s32 var_r27; + s32 var_r26; + Vec sp8[] = { + { 475.0f, 800.0f, -1400.0f }, + { -300.0f, 900.0f, -1400.0f }, + { 300.0f, 875.0f, -1450.0f }, + { -575.0f, 850.0f, -1550.0f }, + { 350.0f, 750.0f, -1500.0f }, + { -450.0f, 775.0f, -1550.0f }, + { 325.0f, 725.0f, -1450.0f }, + { -525.0f, 725.0f, -1500.0f }, + { 575.0f, 850.0f, -1550.0f }, + { -350.0f, 750.0f, -1500.0f }, + { 450.0f, 775.0f, -1550.0f }, + { -325.0f, 725.0f, -1450.0f }, + { 525.0f, 725.0f, -1500.0f }, + { -475.0f, 800.0f, -1400.0f }, + { 300.0f, 900.0f, -1400.0f }, + { -300.0f, 875.0f, -1450.0f }, + }; + + var_r30 = Hu3DModelCreateFile(0x380000); + object->model[0] = var_r30; + var_r30 = Hu3DModelCreateFile(0x380001); + object->model[1] = var_r30; + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + var_r30 = Hu3DHookFuncCreate(fn_1_57D4); + object->model[2] = var_r30; + fn_1_5044(var_r30); + var_r30 = fn_1_3ED0(0x1E0020, 0xC8, fn_1_4A88); + object->model[3] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + var_r30 = fn_1_3ED0(0x380005, 1, fn_1_3F80); + object->model[5] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28[1] = 0; + var_r30 = fn_1_3ED0(0x380008, 0xA, fn_1_3F80); + object->model[6] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28[1] = 1; + var_r30 = fn_1_3ED0(0x380007, 4, fn_1_3F80); + object->model[7] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28[1] = 2; + var_r30 = fn_1_3ED0(0x380006, 6, fn_1_3F80); + object->model[8] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28[1] = 3; + for (var_r27 = 0; var_r27 < 0xC; var_r27++) { + var_r31 = &lbl_1_bss_10[var_r27]; + var_r30 = Hu3DModelCreateFile(0x380002); + var_r31->unk_00 = var_r30; + var_r31->unk_08.x = sp8[var_r27].x; + var_r31->unk_08.y = sp8[var_r27].y; + var_r31->unk_08.z = sp8[var_r27].z; + Hu3DModelPosSet(var_r30, var_r31->unk_08.x, var_r31->unk_08.y, var_r31->unk_08.z); + Hu3DMotionSpeedSet(var_r30, 6.0f); + var_r31->unk_02 = var_r31->unk_03 = 0; + var_r31->unk_14 = var_r31->unk_18 = var_r31->unk_1C = 0.0f; + var_r31->unk_20 = var_r31->unk_24 = var_r31->unk_28 = 1.0f; + var_r31->unk_38 = var_r31->unk_3C = var_r31->unk_40 = 0.0f; + var_r31->unk_2C = var_r31->unk_08.x; + var_r31->unk_30 = var_r31->unk_08.y; + var_r31->unk_34 = var_r31->unk_08.z; + if ((var_r27 & 1) != 0) { + var_r31->unk_18 = 90.0f; + var_r31->unk_08.y += 650.0; + var_r31->unk_08.x -= 1400.0; + } + else { + var_r31->unk_18 = 90.0f; + } + var_r31->unk_18 += 10.0 * (3.0517578125e-05 * (float)((u16)frand() - 0x8000)); + var_r31->unk_08.z -= 400.0; + var_r31->unk_04 = 100.0 * (0.10000000149011612 + (0.019999999552965164 * (1.52587890625e-05 * (float)(s32)(u16)frand()))); + for (var_r26 = 0; var_r26 < 0x20; var_r26++) { + var_r31->unk_44[var_r26] = 0; + } + var_r31->unk_50 = var_r31->unk_04; + } + HuAudFXPlay(0x633); + HuAudFXPlay(0x635); + object->func = fn_1_1B40; +} + +void fn_1_14CC(Mtx arg0, float arg8, float arg9, float argA) +{ + Mtx sp38; + Mtx sp8; + if (argA != 0.0f) { + PSMTXRotRad(arg0, 0x5A, 0.017453292f * argA); + } + else { + PSMTXIdentity(arg0); + } + if (arg8 != 0.0f) { + PSMTXRotRad(sp38, 0x58, 0.017453292f * arg8); + PSMTXConcat(sp38, arg0, arg0); + } + if (arg9 != 0.0f) { + PSMTXRotRad(sp8, 0x59, 0.017453292f * arg9); + PSMTXConcat(sp8, arg0, arg0); + } +} + +float fn_1_15EC(float arg8, float arg9) +{ + float var_f31; + float var_f30; + + var_f30 = 360.0f; + var_f31 = 180.0 * (atan2f(arg9, arg8) / M_PI); + if (var_f31 < 0.0f) { + var_f31 += var_f30; + } + else if (var_f31 >= var_f30) { + var_f31 -= var_f30; + } + return var_f31; +} + +void fn_1_16B0(Mtx var_r30, Vec *var_r31) +{ + float var_f29; + float var_f25; + + var_r31->x = fn_1_15EC(var_r30[2][2], var_r30[1][2]); + var_r31->z = fn_1_15EC(var_r30[0][0], var_r30[0][1]); + var_f29 = -var_r30[0][2]; + var_f25 = sqrtf((1.0 - (var_f29 * var_f29)) < 0.0 ? (-1.0 - (var_f29 * var_f29)) : (1.0 - (var_f29 * var_f29))); + if ((var_r31->x > 90.0f) && (var_r31->x < 270.0f) && (var_r31->z > 90.0f) && (var_r31->z < 270.0f)) { + var_r31->x = fmod(180.0f + var_r31->x, 360.0); + var_r31->z = fmod(180.0f + var_r31->z, 360.0); + var_f25 = -var_f25; + } + var_r31->y = fn_1_15EC(var_f25, var_f29); +} + +static inline float fn_1_1B40_inline(omObjData *object, s32 arg1, s32 arg2, float arg8, float arg9) +{ + float var_f31; + float var_f30; + + var_f30 = sqrtf(arg8); + var_f31 = arg9 + arg8; + if (var_f31 < 0.0f) { + var_f31 += var_f30 + arg2 + arg1; + } + else if (var_f31 >= var_f30) { + var_f31 -= var_f30 + object->group; + } + return var_f31; +} + +// TODO get a working stripped out inline https://decomp.me/scratch/2IbZG +void fn_1_1B40(omObjData *object) +{ + Mtx spCC; + Mtx sp9C; + Mtx sp6C; + Vec sp60; + M425DllUnkBss10Struct *var_r31; + s32 var_r27; + + for (var_r27 = 0; var_r27 < 0xC; var_r27++) { + var_r31 = &lbl_1_bss_10[var_r27]; + switch (var_r31->unk_03) { + case 0: + if (var_r31->unk_04 < var_r31->unk_50) { + var_r31->unk_04 += 0.4f; + } + if ((s32)(64.0 * (1.52587890625e-05 * (float)fn_1_64D4())) == 0) { + Hu3DMotionTimeSet(var_r31->unk_00, 0.0f); + } + if (Hu3DMotionEndCheck(var_r31->unk_00) != 0) { + var_r31->unk_3C = -2.92f; + } + else { + var_r31->unk_3C = -0.48666668f; + } + var_r31->unk_44f += 0.10000000149011612 * (3.0517578125e-05 * (float)((u16)frand() - 0x8000)); + var_r31->unk_48 += var_r31->unk_44f; + if (var_r31->unk_48 > 180.0f) { + var_r31->unk_48 -= 180.0f; + } + if (var_r31->unk_48 < -180.0f) { + var_r31->unk_48 += 180.0f; + } + var_r31->unk_14 = -30.0 * sind(var_r31->unk_48) * sind(var_r31->unk_18); + var_r31->unk_1C = -30.0 * sind(var_r31->unk_48) * cosd(var_r31->unk_18); + if ((var_r31->unk_08.y <= 700.0f) || (fabs(var_r31->unk_08.x) > 2000.0)) { + var_r31->unk_3C = 0.0f; + var_r31->unk_44[6] = (s32)(20.0 * (3.0517578125e-05 * (float)(fn_1_64D4() - 0x8000))) + 0xB4; + var_r31->unk_04 *= 0.75f; + var_r31->unk_03++; + } + break; + case 1: + var_r31->unk_18 += 1.0f; + var_r31->unk_14 = 0.0f; + var_r31->unk_1C = 60.0 * sind(var_r31->unk_44[6]) * cosd(var_r31->unk_18); + if (--var_r31->unk_44[6] == 0) { + Hu3DModelAttrSet(var_r31->unk_00, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r31->unk_00, 6.0f); + var_r31->unk_3C = 5.3533335f; + var_r31->unk_03++; + } + break; + case 2: + if (var_r31->unk_04 > 4.0f) { + var_r31->unk_04 -= 0.1f; + var_r31->unk_3C += 0.73f; + } + var_r31->unk_3C += -0.5475f; + if (var_r31->unk_3C < 0.0f) { + Hu3DModelAttrReset(var_r31->unk_00, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r31->unk_00, 2.0f); + var_r31->unk_50 = 100.0 * (0.10000000149011612 + (0.019999999552965164 * (1.52587890625e-05 * (float)(s32)(u16)frand()))); + var_r31->unk_03 = 0; + } + break; + } + if (0) { + fn_1_1B40_inline(object, 1, 2, 0.0f, 0.0f); + fn_1_1B40_inline(object, 1, 2, 0.0f, 0.0f); + } + var_r31->unk_38 = var_r31->unk_04 * sind(var_r31->unk_18); + var_r31->unk_40 = var_r31->unk_04 * cosd(var_r31->unk_18); + var_r31->unk_08.x += var_r31->unk_38; + var_r31->unk_08.y += var_r31->unk_3C; + var_r31->unk_08.z += var_r31->unk_40; + Hu3DModelPosSet(var_r31->unk_00, var_r31->unk_08.x, var_r31->unk_08.y, var_r31->unk_08.z); + fn_1_14CC(spCC, var_r31->unk_14, -var_r31->unk_18, var_r31->unk_1C); + fn_1_16B0(spCC, &sp60); + Hu3DModelRotSetV(var_r31->unk_00, &sp60); + } +} + +void fn_1_2784(omObjData *object) +{ + M425DllWork2 *work = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M425DllWork2), MEMORY_DEFAULT_NUM); + object->data = work; + work->unk_76 = work->unk_74 = 0; + work->unk_10.x = work->unk_28.x = 8.0f; + work->unk_10.y = work->unk_28.y = 0.0f; + work->unk_10.z = work->unk_28.z = 0.0f; + work->unk_04.x = work->unk_1C.x = 0.0f; + work->unk_04.y = work->unk_1C.y = 430.0f; + work->unk_04.z = work->unk_1C.z = -400.0f; + work->unk_64 = work->unk_68 = 1650.0f; + object->func = fn_1_2870; +} + +void fn_1_2870(omObjData *object) +{ + float var_f31; + M425DllWork2 *work; + + work = object->data; + if (work->unk_76 != 0) { + work->unk_76--; + var_f31 = (float)(work->unk_74 - work->unk_76) / work->unk_74; + var_f31 = sind((90.0f * var_f31)); + work->unk_04.x = work->unk_1C.x + (var_f31 * (work->unk_34 - work->unk_1C.x)); + work->unk_04.y = work->unk_1C.y + (var_f31 * (work->unk_38 - work->unk_1C.y)); + work->unk_04.z = work->unk_1C.z + (var_f31 * (work->unk_3C - work->unk_1C.z)); + work->unk_10.x = work->unk_28.x + (var_f31 * (work->unk_40 - work->unk_28.x)); + work->unk_10.y = work->unk_28.y + (var_f31 * (work->unk_44 - work->unk_28.y)); + work->unk_10.z = work->unk_28.z + (var_f31 * (work->unk_48 - work->unk_28.z)); + work->unk_64 = work->unk_68 + (var_f31 * (work->unk_6C - work->unk_68)); + } + CRot.x = work->unk_10.x; + CRot.y = work->unk_10.y; + CRot.z = work->unk_10.z; + Center.x = work->unk_04.x; + Center.y = work->unk_04.y; + Center.z = work->unk_04.z; + CZoom = work->unk_64; +} + +void fn_1_2A94(s16 arg0, Vec *arg1, Vec *arg2, float arg8) +{ + M425DllWork2 *work = lbl_1_bss_660->data; + work->unk_74 = arg0; + work->unk_76 = arg0; + work->unk_1C = work->unk_04; + work->unk_34 = arg1->x; + work->unk_38 = arg1->y; + work->unk_3C = arg1->z; + work->unk_28 = work->unk_10; + work->unk_40 = arg2->x; + work->unk_44 = arg2->y; + work->unk_48 = arg2->z; + work->unk_68 = work->unk_64; + work->unk_6C = arg8; +} + +void fn_1_2B2C(omObjData *object) +{ + s32 sp8; + M425DllWork *var_r31; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M425DllWork), MEMORY_DEFAULT_NUM); + object->data = var_r31; + var_r31->unk_00 = object->work[0]; + var_r31->unk_01 = GWPlayerCfg[var_r31->unk_00].character; + var_r31->unk_02 = GWPlayerCfg[var_r31->unk_00].group; + var_r31->unk_03 = object->work[1] & 1; + var_r31->unk_04 = GWPlayerCfg[var_r31->unk_00].pad_idx; + var_r31->unk_05 = GWPlayerCfg[var_r31->unk_00].iscom; + var_r31->unk_06 = GWPlayerCfg[var_r31->unk_00].diff; + var_r31->unk_0E = 0; + var_r31->unk_0B = 1; + var_r31->unk_0C = 0; + memset(var_r31->unk_3C, 0, sizeof(var_r31->unk_3C)); + var_r31->unk_5C = 0; + var_r31->unk_60 = 1.0f; + var_r31->unk_64 = 0; + var_r31->unk_68 = 0; + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if ((var_r29 != var_r31->unk_00) && (var_r31->unk_02 == GWPlayerCfg[var_r29].group)) { + var_r31->unk_09 = var_r29; + break; + } + } + var_r27 = object->work[1]; + var_r31->unk_18.x = lbl_1_data_94[var_r27].x; + var_r31->unk_18.y = lbl_1_data_94[var_r27].y; + var_r31->unk_18.z = lbl_1_data_94[var_r27].z; + var_r31->unk_24.x = var_r31->unk_24.y = var_r31->unk_24.z = 0.0f; + if (var_r31->unk_02 == 0) { + var_r31->unk_10 = 30.0f; + } + else { + var_r31->unk_10 = -30.0f; + } + var_r28 = CharModelCreate(var_r31->unk_01, 4); + object->model[0] = var_r28; + Hu3DModelAttrSet(var_r28, HU3D_MOTATTR_LOOP); + CharModelStepTypeSet(var_r31->unk_01, 1); + for (var_r29 = 0; var_r29 < 0xA; var_r29++) { + object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_01, lbl_1_data_6C[var_r29]); + if (var_r29 == 5) { + CharModelVoiceEnableSet(var_r31->unk_01, object->motion[var_r29], 0); + } + } + CharModelMotionDataClose(var_r31->unk_01); + CharModelMotionSet(var_r31->unk_01, object->motion[var_r31->unk_0E]); + omSetTra(object, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); + Hu3DModelPosSet(var_r28, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); + Hu3DModelRotSet(var_r28, 0.0f, 30.0f, 0.0f); + HuDataDirClose(sp8); + object->func = fn_1_2E78; +} + +void fn_1_2E78(omObjData *object) +{ + float spC[8]; + s32 sp8; + M425DllWork *var_r31; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + + var_r26 = 0; + sp8 = object->model[0]; + var_r31 = object->data; + var_r31->unk_30 = var_r31->unk_18; + if ((lbl_1_bss_648 == 5) && (var_r31->unk_05 != 0)) { + fn_1_33E0(object); + } + fn_1_3764(object); + switch (lbl_1_bss_648) { + case 2: + if (lbl_1_bss_640 == 1) { + var_r31->unk_0E = 5; + CharModelMotionShiftSet(var_r31->unk_01, object->motion[var_r31->unk_0E], 0.0f, 8.0f, 0); + var_r31->unk_24.y = 0.0f; + var_r31->unk_0B = 0; + } + var_r31->unk_68 = 0; + break; + case 3: + if (var_r31->unk_64 != 0) { + var_r31->unk_18.y = fn_1_10EF8(var_r31->unk_02, var_r31->unk_03, var_r31->unk_18.x, var_r31->unk_18.z); + var_r31->unk_18.y -= 10.0f; + } + else if (fn_1_109EC(var_r31->unk_02, var_r31->unk_03, &var_r31->unk_30, &var_r31->unk_24, &var_r31->unk_18, 0) != 0) { + if (var_r31->unk_0B == 0) { + HuAudFXPlay(0x62F); + } + CharModelVoiceEnableSet(var_r31->unk_01, object->motion[5], 1); + var_r31->unk_0B = 1; + } + break; + case 5: + if ((var_r31->unk_0E == 5) && (var_r31->unk_0C == 0)) { + var_r26 = 1; + } + + case 4: + case 6: + case 7: + if (var_r31->unk_64 != 0) { + var_r31->unk_18.y = fn_1_10EF8(var_r31->unk_02, var_r31->unk_03, var_r31->unk_18.x, var_r31->unk_18.z); + var_r31->unk_18.y -= 10.0f; + } + else if (fn_1_109EC(var_r31->unk_02, var_r31->unk_03, &var_r31->unk_30, &var_r31->unk_24, &var_r31->unk_18, var_r26) != 0) { + var_r31->unk_0B = 1; + } + break; + case 8: + if (var_r31->unk_64 != 0) { + var_r31->unk_18.y = fn_1_10EF8(var_r31->unk_02, var_r31->unk_03, var_r31->unk_18.x, var_r31->unk_18.z); + var_r31->unk_18.y -= 10.0f; + var_r31->unk_0B = 1; + } + else if (fn_1_109EC(var_r31->unk_02, var_r31->unk_03, &var_r31->unk_30, &var_r31->unk_24, &var_r31->unk_18, 0) != 0) { + var_r31->unk_0B = 1; + } + if ((var_r31->unk_0B != 0) && (var_r31->unk_0E != 8) && (var_r31->unk_0E != 9)) { + if (var_r31->unk_02 == lbl_1_data_0) { + var_r31->unk_0E = 8; + } + else { + var_r31->unk_0E = 9; + } + CharModelMotionShiftSet(var_r31->unk_01, object->motion[var_r31->unk_0E], 0.0f, 8.0f, 0); + } + break; + case 9: + if (var_r31->unk_64 != 0) { + var_r31->unk_18.y = fn_1_10EF8(var_r31->unk_02, var_r31->unk_03, var_r31->unk_18.x, var_r31->unk_18.z); + var_r31->unk_18.y -= 10.0f; + } + else if (fn_1_109EC(var_r31->unk_02, var_r31->unk_03, &var_r31->unk_30, &var_r31->unk_24, &var_r31->unk_18, 0) != 0) { + var_r31->unk_0B = 1; + } + break; + } + if (var_r31->unk_18.y < 0.0f) { + var_r31->unk_18.y = 0.0f; + var_r31->unk_0B = 1; + } + var_r27 = var_r31->unk_5C % 8; + var_r31->unk_3C[var_r27] = var_r31->unk_18.y; + if (++var_r31->unk_5C > 8) { + for (var_r29 = 0; var_r29 < 8; var_r29++) { + var_r28 = var_r27 - var_r29; + if (var_r28 < 0) { + var_r28 += 8; + } + spC[var_r29] = var_r31->unk_3C[var_r28]; + } + for (var_r29 = 1; var_r29 < 8; var_r29++) { + if (fabs(spC[var_r29] - spC[0]) > 25.0) { + break; + } + } + if (((var_r31->unk_0E == 0) || (var_r31->unk_0E == 8) || (var_r31->unk_0E == 9)) && (var_r29 >= 8)) { + var_r31->unk_60 = var_r31->unk_60 - 0.05f; + if (var_r31->unk_60 < 0.75f) { + var_r31->unk_60 = 0.75f; + } + } + else { + var_r31->unk_60 = 1.0f; + } + } + omSetTra(object, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); +} + +void fn_1_33E0(omObjData *object) +{ + s32 spC; + s16 sp8; + M425DllWork *var_r31; + M425DllWork *var_r30; + + var_r31 = object->data; + var_r30 = lbl_1_bss_64C[var_r31->unk_09]->data; + spC = object->model[0]; + sp8 = var_r31->unk_0E; + switch (var_r31->unk_0E) { + case 4: + case 7: + case 0: + if (var_r30->unk_0E == 3) { + if ((var_r30->unk_05 == 0) || ((s32)((0x18 - (var_r31->unk_06 * 3)) * (1.52587890625e-05 * (float)fn_1_64D4())) == 0)) { + HuPadBtnDown[var_r31->unk_04] |= 0x100; + break; + } + } + else { + if ((s32)((0x30 - (var_r31->unk_06 * 4)) * (1.52587890625e-05 * (float)fn_1_64D4())) == 0) { + HuPadBtnDown[var_r31->unk_04] |= 0x100; + break; + } + break; + } + break; + case 3: + if ((s32)(4.0 * (1.52587890625e-05 * (float)fn_1_64D4())) != 0) { + HuPadBtn[var_r31->unk_04] |= 0x100; + } + if ((var_r30->unk_05 == 0) && (var_r30->unk_0E == 5)) { + HuPadBtnDown[var_r31->unk_04] |= 0x100; + break; + } + if ((var_r31->unk_24.y < 5.353333473205566) && ((s32)((0xE - (var_r31->unk_06 * 2)) * (1.52587890625e-05 * (float)fn_1_64D4())) == 0)) { + HuPadBtnDown[var_r31->unk_04] |= 0x100; + } + break; + } +} + +void fn_1_3764(omObjData *object) +{ + float var_f30; + float var_f29; + + M425DllWork *var_r31; + s16 var_r30; + s16 var_r29; + s16 var_r27; + s16 var_r26; + s16 var_r25; + s16 var_r24; + s32 var_r23; + + var_r31 = object->data; + var_r23 = object->model[0]; + var_r30 = var_r31->unk_0E; + if (lbl_1_bss_648 == 5) { + var_r26 = 0; + var_r25 = 0; + var_r27 = HuPadBtnDown[var_r31->unk_04]; + var_r24 = HuPadBtn[var_r31->unk_04]; + } + else { + var_r26 = 0; + var_r25 = 0; + var_r27 = 0; + var_r24 = 0; + } + var_r31->unk_64 = 0; + switch (var_r31->unk_0E) { + case 4: + case 7: + if (CharModelMotionEndCheck(var_r31->unk_01) != 0) { + var_r30 = 0; + var_r29 = 1; + } + + case 0: + case 1: + case 2: + var_r31->unk_24.x = 0.25f * var_r26; + var_r31->unk_24.z = 0.25f * -var_r25; + var_r31->unk_14 = sqrtf((var_r31->unk_24.x * var_r31->unk_24.x) + (var_r31->unk_24.z * var_r31->unk_24.z)); + var_r31->unk_64 = 1; + if (var_r31->unk_14 > 0.1f) { + if (var_r31->unk_14 >= 8.0f) { + var_r30 = 2; + var_r29 = 1; + } + else { + var_r30 = 1; + var_r29 = 1; + } + var_f30 = atan2d(var_r31->unk_24.x, var_r31->unk_24.z); + if (var_f30 >= 180.0f) { + var_f30 = var_f30 - 360.0f; + } + else if (var_f30 < -180.0f) { + var_f30 += 360.0f; + } + var_f29 = var_r31->unk_10 - var_f30; + if (var_f29 >= 180.0f) { + var_f29 -= 360.0f; + } + else if (var_f29 < -180.0f) { + var_f29 += 360.0f; + } + var_r31->unk_10 = var_f30 + (0.5f * var_f29); + if (var_r31->unk_10 >= 180.0f) { + var_r31->unk_10 = var_r31->unk_10 - 360.0f; + } + else if (var_r31->unk_10 < -180.0f) { + var_r31->unk_10 += 360.0f; + } + } + else { + var_r30 = 0; + var_r29 = 1; + } + var_r31->unk_24.y = 0.0f; + var_r31->unk_24.y += -2.4333334f * var_r31->unk_60; + if ((var_r27 & 0x100) != 0) { + var_r31->unk_0B = 0; + var_r31->unk_0A = 1; + var_r31->unk_24.y = 26.766666f; + var_r30 = 3; + var_r29 = 0; + } + break; + case 3: + if (var_r31->unk_0A != 0) { + if ((var_r24 & 0x100) != 0) { + if (++var_r31->unk_0A > 4) { + var_r31->unk_0A = 0; + } + else { + var_r31->unk_24.y += 4.866667f; + } + } + else { + var_r31->unk_0A = 0; + } + } + var_r31->unk_24.y += -2.4333334f; + if (var_r31->unk_0B != 0) { + var_r31->unk_0B = 1; + var_r30 = 4; + var_r29 = 0; + var_r31->unk_24.y = 0.0f; + } + if (((var_r27 & 0x100) != 0) || ((var_r27 & 0x40) != 0)) { + var_r31->unk_24.y = 0.0f; + var_r31->unk_0C = 0; + var_r30 = 5; + var_r29 = 0; + } + break; + case 5: + if ((Hu3DData[var_r23].unk_0C == -1) && (CharModelMotionEndCheck(var_r31->unk_01) != 0)) { + var_r31->unk_24.y += -2.4333334f; + } + else { + var_r31->unk_24.y = 0.0f; + } + if (var_r31->unk_0B != 0) { + if (var_r31->unk_0C != 0) { + var_r31->unk_24.y = 0.0f; + var_r31->unk_0C = 0; + var_r30 = 7; + var_r29 = 0; + } + else { + var_r31->unk_24.y = 9.733334f; + var_r31->unk_0B = 0; + var_r30 = 6; + var_r29 = 0; + } + } + break; + case 6: + var_r31->unk_24.y += -2.4333334f; + if ((var_r31->unk_0B != 0) && (CharModelMotionEndCheck(var_r31->unk_01) != 0)) { + var_r30 = 7; + var_r29 = 0; + } + break; + case 8: + case 9: + var_r31->unk_24.y = -2.4333334f * var_r31->unk_60; + var_r31->unk_64 = 1; + break; + } + var_r31->unk_18.x += var_r31->unk_24.x; + if (var_r31->unk_0B == 0) { + var_r31->unk_18.y += var_r31->unk_24.y; + } + var_r31->unk_18.z += var_r31->unk_24.z; + if (var_r30 != var_r31->unk_0E) { + var_r31->unk_0E = var_r30; + CharModelMotionShiftSet(var_r31->unk_01, object->motion[var_r31->unk_0E], 0.0f, 8.0f, var_r29); + } + omSetTra(object, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); + omSetRot(object, 0.0f, var_r31->unk_10, 0.0f); +} + +s16 fn_1_3ED0(s32 arg0, s16 arg1, ParticleHook arg2) +{ + s32 var_r31; + M425DllUnkStruct *var_r30; + ParticleData *var_r29; + AnimData *var_r28; + + var_r28 = HuSprAnimRead(HuDataReadNum(arg0, MEMORY_DEFAULT_NUM)); + var_r31 = Hu3DParticleCreate(var_r28, arg1); + Hu3DParticleHookSet(var_r31, arg2); + var_r29 = Hu3DData[var_r31].unk_120; + var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M425DllUnkStruct), MEMORY_DEFAULT_NUM); + var_r29->unk_1C = var_r30; + var_r30->unk_04 = 0; + return var_r31; +} + +void fn_1_3F80(ModelData *model, ParticleData *particle, Mtx matrix) +{ + float var_f29; + float var_f28; + float var_f26; + float var_f25; + float var_f24; + + HsfanimStruct01 *var_r31; + M425DllUnkStruct *var_r29; + s32 var_r28; + + float sp54[4] = { 1000.0f, 200.0f, 600.0f, 1200.0f }; + float sp44[4] = { 1.0f, 0.6f, 0.3f, 0.425f }; + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + s16 sp8 = 0; + + var_r29 = particle->unk_1C; + switch (var_r29->unk_04) { + case 0: + var_r31 = particle->unk_48; + if (var_r29->unk_02 != 0) { + sp14.x = 0.0f; + sp14.y = -3600.0f; + sp14.z = 6250.0f; + var_f28 = (sp14.z * sp14.z) + ((sp14.x * sp14.x) + (sp14.y * sp14.y)); + var_f29 = 1.0f / sqrtf(var_f28); + sp14.x *= var_f29; + sp14.y *= var_f29; + sp14.z *= var_f29; + var_f24 = 6000.0f / particle->unk_30; + for (var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { + var_f26 = 500.0 + ((var_f24 * var_r28) + ((0.25f * var_f24) * (1.52587890625e-05 * (float)(s32)(u16)frand()))); + var_f25 = var_f26 / 6000.0f; + var_r31->unk14.x = var_f26; + var_r31->unk34.x = var_f26 * sp14.x; + var_r31->unk34.y = 4000.0f + (var_f26 * sp14.y); + var_r31->unk34.z = -6750.0f + (var_f26 * sp14.z); + var_r31->unk2C = (0.3f + (0.7f * (var_f25 * var_f25))) + * (sp54[var_r29->unk_02] * (0.699999988079071 + (0.30000001192092896 * (1.52587890625e-05 * (float)(s32)(u16)frand())))); + var_r31->unk40.r = (s32)(160.0 * (1.52587890625e-05 * (float)fn_1_64D4())) + 0x20; + var_r31->unk40.g = (s32)(96.0 * (1.52587890625e-05 * (float)fn_1_64D4())) + 0x20; + var_r31->unk40.b = (s32)(128.0 * (1.52587890625e-05 * (float)fn_1_64D4())) + 0x20; + var_r31->unk40.a + = ((1.0 - (0.4 * var_f25)) * (255.0f * sp44[var_r29->unk_02])) - (s32)(16.0 * (1.52587890625e-05 * (float)fn_1_64D4())); + } + var_r29->unk_04++; + } + else { + var_r31->unk34.x = 0.0f; + var_r31->unk34.y = 4000.0f; + var_r31->unk34.z = -6750.0f; + var_r31->unk2C = 1000.0f; + } + break; + case 1: + sp38.x = sind(CRot.y) * cosd(CRot.x); + sp38.y = -sind(CRot.x); + sp38.z = cosd(CRot.y) * cosd(CRot.x); + sp2C.x = -(Center.x + (1.25f * (sp38.x * CZoom))); + sp2C.y = 4000.0f - (Center.y + (sp38.y * CZoom)); + sp2C.z = -6750.0f - (Center.z + (1.25f * (sp38.z * CZoom))); + var_f29 = 1.0f / sqrtf((sp2C.z * sp2C.z) + ((sp2C.x * sp2C.x) + (sp2C.y * sp2C.y))); + sp2C.x *= var_f29; + sp2C.y *= var_f29; + sp2C.z *= var_f29; + var_f29 = -((-sp2C.z * -sp38.z) + ((-sp2C.x * -sp38.x) + (-sp2C.y * -sp38.y))); + sp20.x = -sp38.x + (-2.0f * sp2C.x * var_f29); + sp20.y = -sp38.y + (-2.0f * sp2C.y * var_f29); + sp20.z = -sp38.z + (-2.0f * sp2C.z * var_f29); + for (var_r31 = particle->unk_48, var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { + var_r31->unk34.x = sp20.x * var_r31->unk14.x; + var_r31->unk34.y = 4000.0f + (sp20.y * var_r31->unk14.x); + var_r31->unk34.z = -6750.0f + (sp20.z * var_r31->unk14.x); + } + break; + } + DCFlushRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_4A88(ModelData *model, ParticleData *particle, Mtx matrix) +{ + float var_f31; + HsfanimStruct01 *var_r31; + M425DllUnkStruct *var_r29; + s32 var_r28; + s16 var_r27; + + var_r27 = 0; + var_r29 = particle->unk_1C; + switch (var_r29->unk_04) { + case 0: + for (var_r31 = particle->unk_48, var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { + var_r31->unk00_s16 = var_r31->unk02 = 0; + } + var_r29->unk_04++; + break; + case 1: + for (var_r31 = particle->unk_48, var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + var_r31->unk00_s16--; + } + else { + if (var_r31->unk02 == 0) { + var_f31 = 180.0 * (1.52587890625e-05 * (float)(s32)(u16)frand()); + var_f31 = var_f31; + if ((s32)(4.0 * (1.52587890625e-05 * (float)fn_1_64D4())) != 0) { + var_r31->unk34.x = 100.0 * (4.0 * (1.52587890625e-05 * (float)(s32)(u16)frand())) * cosd(var_f31); + } + else { + var_r31->unk34.x = 100.0 * (2.0 * (1.52587890625e-05 * (float)(s32)(u16)frand())) * cosd(var_f31); + } + var_r31->unk34.y = -10.0f; + var_r31->unk34.z = -7000.0 + (100.0 * (40.0 * (1.52587890625e-05 * (float)(s32)(u16)frand())) * sind(var_f31)); + var_r31->unk30 = 1.5707964f; + var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = var_r31->unk40.a = 0xC0; + var_r31->unk40.b = 0xA0; + var_r31->unk2C = 0.0f; + var_r31->unk00_s16 = (s32)(90.0 * (1.52587890625e-05 * (float)fn_1_64D4())); + var_r31->unk02 = 0x3C; + var_r31->unk40.r = 0xC0; + var_r31->unk40.g = 0xE0; + var_r31->unk40.b = 0xE0; + var_r31->unk08.z = 0.01f * (0.05f * (3000.0f + -var_r31->unk34.z)); + var_r31->unk08.z *= var_r31->unk08.z; + var_r31->unk08.z *= 0.125f; + } + var_r31->unk40.a = 248.0 * sind((var_r31->unk02 * 3)); + var_r31->unk2C = (30.0f * var_r31->unk08.z) * sind((var_r31->unk02 * 3)); + var_r31->unk02--; + } + } + if (particle->unk_30 == var_r27) { + Hu3DModelAttrReset(var_r29->unk_00, HU3D_ATTR_PARTICLE_KILL); + Hu3DModelKill(var_r29->unk_00); + return; + } + } + DCFlushRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_5044(s16 sp8) +{ + M425DllUnkStruct3 *var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + ModelData *var_r27; + void *var_r26; + + Vec2f spC[4] = { { 0.0f, 0.0f }, { 1.0f, 0.0f }, { 1.0f, 1.0f }, { 0.0f, 1.0f } }; + var_r27 = &Hu3DData[sp8]; + var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M425DllUnkStruct3), MEMORY_DEFAULT_NUM); + var_r27->unk_120 = var_r31; + var_r31->unk_2A = 1; + var_r31->unk_20.r = var_r31->unk_20.g = var_r31->unk_20.b = 0x40; + var_r31->unk_20.a = 0xFF; + var_r31->unk_24.a = var_r31->unk_24.g = var_r31->unk_24.b = 0xFF; + var_r31->unk_24.r = var_r31->unk_24.b = 0; + // maybe Mtx? + var_r31->unk_14 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_2A * (4 * sizeof(Vec)), MEMORY_DEFAULT_NUM); + var_r31->unk_14[0].x = -4500.0f; + var_r31->unk_14[0].y = 0.0f; + var_r31->unk_14[0].z = -7000.0f; + var_r31->unk_14[1].x = 4500.0f; + var_r31->unk_14[1].y = 0.0f; + var_r31->unk_14[1].z = -7000.0f; + var_r31->unk_14[2].x = 3000.0f; + var_r31->unk_14[2].y = -200.0f; + var_r31->unk_14[2].z = 0.0f; + var_r31->unk_14[3].x = -3000.0f; + var_r31->unk_14[3].y = -200.0f; + var_r31->unk_14[3].z = 0.0f; + var_r31->unk_18 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_2A * (4 * sizeof(GXColor)), MEMORY_DEFAULT_NUM); + var_r31->unk_18[0].r = 0xFF; + var_r31->unk_18[0].g = 0xFF; + var_r31->unk_18[0].b = 0xFF; + var_r31->unk_18[0].a = 0xFF; + var_r31->unk_18[1].r = 0xFF; + var_r31->unk_18[1].g = 0xFF; + var_r31->unk_18[1].b = 0xFF; + var_r31->unk_18[1].a = 0xFF; + var_r31->unk_18[2].r = 0xFF; + var_r31->unk_18[2].g = 0xFF; + var_r31->unk_18[2].b = 0xFF; + var_r31->unk_18[2].a = 0xFF; + var_r31->unk_18[3].r = 0xFF; + var_r31->unk_18[3].g = 0xFF; + var_r31->unk_18[3].b = 0xFF; + var_r31->unk_18[3].a = 0xFF; + var_r31->unk_1C = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_2A * sizeof(Vec), MEMORY_DEFAULT_NUM); + var_r31->unk_1C->x = 0.0f; + var_r31->unk_1C->y = 1.0f; + var_r31->unk_1C->z = 0.0f; + var_r31->unk_28 = 2; + var_r31->unk_2C = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_2A * (var_r31->unk_28 * sizeof(M425DllUnkStruct2)), MEMORY_DEFAULT_NUM); + var_r31->unk_2C[0].unk_00 = HuSprAnimReadFile(0x380003); + var_r31->unk_2C[0].unk_04 = 0; + var_r31->unk_2C[1].unk_00 = HuSprAnimReadFile(0x380004); + var_r31->unk_2C[1].unk_04 = 0; + var_r31->unk_2C[1].unk_48 = 0x80; + for (var_r30 = 0; var_r30 < (var_r31->unk_28 * var_r31->unk_2A); var_r30++) { + PSMTXIdentity(var_r31->unk_2C[var_r30].unk_14); + var_r31->unk_2C[var_r30].unk_08.x = var_r31->unk_2C[var_r30].unk_08.y = var_r31->unk_2C[var_r30].unk_08.z = 0.0f; + } + for (var_r30 = 0; var_r30 < var_r31->unk_28; var_r30++) { + fn_1_573C(&var_r31->unk_2C[var_r30].unk_44, var_r31->unk_2A, spC); + } + var_r26 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x20000, MEMORY_DEFAULT_NUM); + var_r31->unk_10 = var_r26; + DCFlushRange(var_r31->unk_10, 0x20000); + GXBeginDisplayList(var_r26, 0x20000); + GXBegin(GX_QUADS, GX_VTXFMT0, var_r31->unk_2A * 4); + for (var_r30 = 0; var_r30 < var_r31->unk_2A; var_r30++) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + GXUnknownu16(var_r29 + (var_r30 * 4)); + GXUnknownu16(var_r30); + GXUnknownu16(var_r29 + (var_r30 * 4)); + for (var_r28 = 0; var_r28 < var_r31->unk_28; var_r28++) { + GXUnknownu16(var_r29 + (var_r30 * 4)); + } + } + } + var_r31->unk_0C = GXEndDisplayList(); +} + +void fn_1_5568(Vec **arg0, s16 arg1, Vec *arg2) +{ + Vec *var_r31; + s32 var_r29; + s32 var_r28; + + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * (4 * sizeof(Vec)), MEMORY_DEFAULT_NUM); + for (var_r29 = 0; var_r29 < arg1; var_r29++) { + for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { + var_r31->x = arg2->x; + var_r31->y = arg2->y; + var_r31->z = arg2->z; + } + } +} + +void fn_1_5608(GXColor **arg0, s16 arg1, GXColor *arg2) +{ + GXColor *var_r31; + s32 var_r29; + s32 var_r28; + + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * (4 * sizeof(GXColor)), 0x10000000); + for (var_r29 = 0; var_r29 < arg1; var_r29++) { + for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { + var_r31->r = arg2->r; + var_r31->g = arg2->g; + var_r31->b = arg2->b; + var_r31->a = arg2->a; + } + } +} + +void fn_1_56B0(Vec **arg0, s16 arg1, Vec *arg2) +{ + Vec *var_r31; + s32 var_r29; + + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec), MEMORY_DEFAULT_NUM); + for (var_r29 = 0; var_r29 < arg1; var_r31++, arg2++, var_r29++) { + var_r31->x = arg2->x; + var_r31->y = arg2->y; + var_r31->z = arg2->z; + } +} + +void fn_1_573C(Vec2f **arg0, s16 arg1, Vec2f *arg2) +{ + Vec2f *var_r31; + s32 var_r29; + s32 var_r28; + + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * (4 * sizeof(Vec2f)), MEMORY_DEFAULT_NUM); + for (var_r29 = 0; var_r29 < arg1; var_r29++) { + for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { + var_r31->x = arg2->x; + var_r31->y = arg2->y; + } + } +} + +void fn_1_57D4(ModelData *model, Mtx matrix) +{ + float var_f31; + float var_f30; + s32 var_r31; + M425DllUnkStruct3 *var_r30; + + var_r30 = model->unk_120; + var_r30->unk_2C[1].unk_08.y -= 0.0005f; + var_f31 = sind(lbl_1_bss_4); + var_f30 = cosd(lbl_1_bss_4); + for (var_r31 = 0; var_r31 < 1; var_r31++) { + var_r30->unk_2C[var_r31].unk_44[0].x = 0.005f * var_f31 * (var_r31 != 0 ? 10.0f : -1.0f); + var_r30->unk_2C[var_r31].unk_44[0].y = 0.005f * var_f30 * (var_r31 != 0 ? 1.0f : -1.0f); + var_r30->unk_2C[var_r31].unk_44[1].x = 1.0f + (0.005f * var_f30 * (var_r31 != 0 ? 10.0f : -1.0f)); + var_r30->unk_2C[var_r31].unk_44[1].y = 0.005f * var_f31 * (var_r31 != 0 ? 1.0f : -1.0f); + var_r30->unk_2C[var_r31].unk_44[2].x = 1.0f + (0.005f * var_f31 * (var_r31 != 0 ? 10.0f : -1.0f)); + var_r30->unk_2C[var_r31].unk_44[2].y = 1.0f + (0.005f * var_f30 * (var_r31 != 0 ? 1.0f : -1.0f)); + var_r30->unk_2C[var_r31].unk_44[3].x = 0.005f * var_f30 * (var_r31 != 0 ? 10.0f : -1.0f); + var_r30->unk_2C[var_r31].unk_44[3].y = 1.0f + (0.005f * var_f31 * (var_r31 != 0 ? 1.0f : -1.0f)); + } + lbl_1_bss_4 += 1.0f; + fn_1_5C20(model, matrix); +} + +void fn_1_5C20(ModelData *var_r27, Mtx sp8) +{ + Mtx sp5C; + Mtx sp2C; + GXColor sp26; + s16 spC; + GXTexMapID var_r29; + M425DllUnkStruct3 *var_r31; + s16 var_r30; + s16 var_r28; + s16 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + + var_r31 = var_r27->unk_120; + GXSetChanAmbColor(GX_COLOR0A0, var_r31->unk_20); + GXSetChanMatColor(GX_COLOR0A0, var_r31->unk_24); + GXLoadPosMtxImm(sp8, 0); + PSMTXInverse(sp8, sp5C); + PSMTXTranspose(sp5C, sp2C); + GXLoadNrmMtxImm(sp2C, 0); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + GXSetZMode(1, GX_LEQUAL, 1); + var_r30 = 0; + var_r28 = 0; + spC = 0; + for (var_r29 = GX_TEXMAP0; var_r29 < var_r31->unk_28; var_r29++) { + PSMTXRotRad(var_r31->unk_2C[var_r29].unk_14, 0x5A, 0.0f); + mtxTransCat( + var_r31->unk_2C[var_r29].unk_14, var_r31->unk_2C[var_r29].unk_08.x, var_r31->unk_2C[var_r29].unk_08.y, var_r31->unk_2C[var_r29].unk_08.z); + switch (var_r31->unk_2C[var_r29].unk_04) { + case 0: + GXLoadTexMtxImm(var_r31->unk_2C[var_r29].unk_14, texMtxTbl[var_r28], GX_MTX2x4); + var_r25 = texMtxTbl[var_r28]; + GXSetTexCoordGen2(var_r28, GX_TG_MTX2x4, var_r29 + 4, var_r25, GX_FALSE, 0x7D); + GXSetTevOrder(var_r30, var_r28, var_r29, GX_COLOR0A0); + if (var_r29 == GX_TEXMAP0) { + GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); + GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); + } + else { + sp26.a = var_r31->unk_2C[var_r29].unk_48; + GXSetTevColor(GX_TEVREG2, sp26); + GXSetTevColorIn(var_r30, GX_CC_CPREV, GX_CC_TEXC, GX_CC_ZERO, GX_CC_TEXC); + GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_TEXA, GX_CA_APREV, GX_CA_ZERO); + } + GXSetTevColorOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + break; + case 1: + GXLoadTexMtxImm(var_r31->unk_2C[var_r29].unk_14, texMtxTbl[var_r28], GX_MTX2x4); + var_r24 = texMtxTbl[var_r28]; + GXSetTexCoordGen2(var_r28, GX_TG_MTX2x4, var_r29 + 4, var_r24, GX_FALSE, 0x7D); + GXSetTevOrder(var_r30, var_r28, var_r29, GX_COLOR0A0); + GXSetTevColor(GX_TEVREG2, sp26); + GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_CPREV, GX_CC_TEXA, GX_CC_ZERO); + GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_TEXA, GX_CA_APREV, GX_CA_ZERO); + GXSetTevColorOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + break; + case 2: + sp26.a = 0xE0; + GXSetTevColor(GX_TEVREG1, sp26); + GXSetTexCoordGen2(var_r28 + 1, GX_TG_BUMP0, var_r28, 0x3C, GX_FALSE, 0x7D); + GXSetTevOrder(var_r30, var_r28, var_r29, GX_COLOR0A0); + GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A1, GX_CC_RASC); + GXSetTevColorOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_FALSE, GX_TEVPREV); + var_r30++; + GXSetTevOrder(var_r30, var_r28 + 1, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A1, GX_CC_CPREV); + GXSetTevColorOp(var_r30, GX_TEV_SUB, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_FALSE, GX_TEVPREV); + break; + case 3: + var_r28--; + GXLoadTexMtxImm(var_r31->unk_2C[var_r29].unk_14, texMtxTbl[var_r28], GX_MTX2x4); + var_r23 = texMtxTbl[var_r28]; + GXSetTexCoordGen2(var_r28, GX_TG_MTX2x4, var_r29 + 4, var_r23, 0, 0x7D); + GXSetTevOrder(var_r30, var_r28, var_r29, GX_COLOR0A0); + GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_CPREV, GX_CC_TEXC, GX_CC_ZERO); + GXSetTevColorOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); + GXSetTevAlphaOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + var_r28++; + break; + } + var_r30++; + var_r28++; + HuSprTexLoad(var_r31->unk_2C[var_r29].unk_00, 0, var_r29, GX_REPEAT, GX_REPEAT, GX_LINEAR); + } + sp26.a = var_r31->unk_24.a; + GXSetTevColor(GX_TEVREG0, sp26); + GXSetTevOrder(var_r30, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); + GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_CPREV, GX_CC_RASC, GX_CC_ZERO); + GXSetTevColorOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_APREV, GX_CA_A0, GX_CA_KONST); + GXSetTevAlphaOp(var_r30, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + var_r30++; + GXSetNumTevStages((s32)var_r30); + GXSetNumTexGens((s32)var_r28); + var_r26 = Hu3DLightSet(var_r27, &Hu3DCameraMtx, &Hu3DCameraMtxXPose, 0.0f); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_TRUE, GX_SRC_REG, GX_SRC_VTX, var_r26, GX_DF_CLAMP, GX_AF_SPOT); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_POS, var_r31->unk_14, 0xC); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, var_r31->unk_18, 4); + for (var_r29 = GX_TEXMAP0; var_r29 < (var_r31->unk_28 * var_r31->unk_2A); var_r29++) { + GXSetVtxDesc(var_r29 + 0xD, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, var_r29 + 0xD, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(var_r29 + 0xD, var_r31->unk_2C[var_r29].unk_44, 8); + } + GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_TEX_S, GX_RGBA6, 0); + GXSetArray(GX_VA_NRM, var_r31->unk_1C, 0xC); + GXCallDisplayList(var_r31->unk_10, var_r31->unk_0C); +} + +u32 lbl_1_data_114 = 0x41C64E6D; + +s32 fn_1_64D4(void) +{ + lbl_1_data_114 *= 0x41C64E6D; + lbl_1_data_114 += 0x3039; + return lbl_1_data_114 >> 0x10; +} + +float fn_1_6528(float arg8, float arg9, float argA, float argB) +{ + float var_f31 = 1.0 - arg8; + float var_f30 = (argB * (arg8 * arg8)) + ((arg9 * (var_f31 * var_f31)) + (2.0 * (argA * (var_f31 * arg8)))); + return var_f30; +} + +void fn_1_65A0(float *arg0, float *arg1, float *arg2, float *arg3, float arg8) +{ + s32 var_r31; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + *arg3++ = fn_1_6528(arg8, *arg0++, *arg1++, *arg2++); + } +} + +float fn_1_66BC(float arg8, float arg9, float argA, float argB) +{ + float var_f31 = 2.0 * ((arg8 * argB) + (((arg8 - 1.0) * arg9) + ((1.0 - (2.0 * arg8)) * argA))); + return var_f31; +} + +void fn_1_6734(float *arg0, float *arg1, float *arg2, float *arg3, float arg8) +{ + float spC[3]; + float sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f23; + float var_f22; + float var_f21; + s32 var_r31; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + spC[var_r31] = fn_1_66BC(arg8, *arg0++, *arg1++, *arg2++); + } + + var_f29 = sqrtf((spC[2] * spC[2]) + ((spC[0] * spC[0]) + (spC[1] * spC[1]))); + if (var_f29) { + var_f29 = 1.0 / var_f29; + var_f29 = var_f29; + for (var_r31 = 0; var_r31 < 3; var_r31++) { + *arg3++ = var_f29 * spC[var_r31]; + } + return; + } + *arg3++ = 0.0f; + *arg3++ = 0.0f; + *arg3++ = 1.0f; +} diff --git a/src/REL/m425Dll/thwomp.c b/src/REL/m425Dll/thwomp.c new file mode 100644 index 00000000..0a320286 --- /dev/null +++ b/src/REL/m425Dll/thwomp.c @@ -0,0 +1,2768 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "dolphin/mtx/GeoTypes.h" +#include "ext_math.h" +#include "game/animdata.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m425Dll.h" + +extern u32 GlobalCounter; +extern LightData Hu3DLocalLight[0x20]; + +typedef struct M425DllUnkStruct4 { + s16 unk_00; + s16 unk_02; + s16 unk_04; + s16 unk_06; + float unk_08; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + float unk_20; + float unk_24; + s32 unk_28; + s32 unk_2C; + float unk_30; + s32 unk_34; + s32 unk_38; + s32 unk_3C[5]; + s32 unk_50; + float unk_54[6]; + s32 unk_6C[6]; + s32 unk_84[6]; + float unk_9C[6]; + s32 unk_B4[6]; + Vec unk_CC; + float unk_D8; + float unk_DC; + float unk_E0; + float unk_E4; + float unk_E8; + float unk_EC; + s32 unk_F0[3]; + float unk_FC; + float unk_100; + char unk104[0x8]; + s16 unk_10C; + s16 unk_10E; + s16 unk_110; + s16 unk_112[0x19]; + s16 unk_144[0x1A]; + s16 *unk_178; + Vec *unk_17C; + Vec *unk_180; + Vec2f *unk_184; + Vec *unk_188; + Vec *unk_18C; + s16 (*unk_190)[3]; + Vec *unk_194; + Vec *unk_198; + s32 unk_19C; + u8 *unk_1A0; + s16 *unk_1A4[0x19]; + s16 unk_208[0x19]; + GXColor unk_23A; + s32 unk_240; + u32 unk_244[0x19]; + void *unk_2A8[0x19]; +} M425DllUnkStruct4; /* size = 0x30C */ + +typedef struct M425DllUnkStruct5 { + char unk00[4]; + Vec unk_04; + Vec unk_10; + float unk_1C; + char unk20[8]; + float unk_28; + float unk_2C; + Vec unk_30; + GXColor unk_3C; + s32 unk_40; +} M425DllUnkStruct5; /* size = 0x44 */ + +typedef void (*UnkHook)(ModelData *model, struct M425DllUnkStruct6 *particle, Mtx matrix); + +typedef struct M425DllUnkStruct6 { + s16 unk_00; + s16 unk_02; + char unk04[0x1C]; + u8 unk_20; + u8 unk_21; + char unk22[2]; + s16 unk_24; + s32 unk_28; + s32 unk_2C; + u32 unk_30; + u32 unk_34; + AnimData *unk_38; + M425DllUnkStruct5 *unk_3C; + Vec *unk_40; + Vec2f *unk_44; + void *unk_48; + UnkHook unk_4C; +} M425DllUnkStruct6; /* size = 0x50 */ + +void fn_1_6BD8(omObjData *object); +s32 fn_1_6EC4(float arg8, float arg9, s16 arg0, s16 arg1); +void fn_1_6DFC(s32 arg0, float arg8); +void fn_1_E210(s32 arg0); +void fn_1_E914(ModelData *arg0, Mtx matrix); +void fn_1_D9A8(M425DllUnkStruct4 *var_r31, ModelData *var_r24, s32 var_r30, s32 var_r26, s32 var_r25); +void fn_1_DB44(M425DllUnkStruct4 *arg0, ModelData *model); +void fn_1_DE3C(M425DllUnkStruct4 *arg0, ModelData *model); +void fn_1_101C4(ModelData *model, Mtx matrix); +void fn_1_11284(void); +void fn_1_112FC(void); +void fn_1_11418(void); +s32 fn_1_11454(Vec *arg0, Vec *arg1, float arg8, float arg9); +s16 fn_1_115D4(ModelData *arg0, Mtx arg1, Mtx arg2, float arg8); +void fn_1_116E4(ModelData *arg1, LightData *arg2, s16 arg3, Mtx arg4, Mtx arg5, float arg8); +s16 fn_1_11A74(AnimData *arg0, s16 arg1); +void fn_1_11EE0(ModelData *model, Mtx matrix); + +Vec lbl_1_data_118[2] = { + { -300.0f, 1.0f, 0.0f }, + { 300.0f, 1.0f, 0.0f }, +}; + +Process *lbl_1_bss_6F0; +omObjData *lbl_1_bss_6EC; +s32 lbl_1_bss_6E8; +u8 *lbl_1_bss_6E4; +AnimData *lbl_1_bss_6E0; +AnimData *lbl_1_bss_6DC; +AnimData *lbl_1_bss_6D8; +// M425DllUnkStruct6 +s32 lbl_1_bss_6D4; +u8 lbl_1_bss_6D0; +s32 lbl_1_bss_6CC; +GXColor lbl_1_bss_6C8; +GXLightObj lbl_1_bss_688; +Vec lbl_1_bss_67C; +Vec lbl_1_bss_670; + +omObjData *fn_1_6A0C(Process *process, s32 sp8) +{ + omObjData *object; + + lbl_1_bss_6F0 = process; + object = omAddObjEx(process, sp8, 6, 0, -1, fn_1_6BD8); + lbl_1_bss_6EC = object; + object->stat |= 0x100; + lbl_1_bss_6E8 = 0; + lbl_1_bss_6D0 = 0x40; + lbl_1_bss_6CC = 0; + object->model[0] = fn_1_6EC4(350.0f, 350.0f, 0x10, 0x10); + object->model[1] = fn_1_6EC4(350.0f, 350.0f, 0x10, 0x10); + fn_1_6CD0(0, &lbl_1_data_118[0]); + fn_1_6CD0(1, &lbl_1_data_118[1]); + fn_1_6DFC(0, 30.0f); + fn_1_6DFC(1, -30.0f); + lbl_1_bss_6E4 = HuDataReadNum(0x38000A, MEMORY_DEFAULT_NUM); + lbl_1_bss_6E0 = HuSprAnimRead(HuDataReadNum(0x38000B, MEMORY_DEFAULT_NUM)); + lbl_1_bss_6DC = HuSprAnimRead(HuDataReadNum(0x38000C, MEMORY_DEFAULT_NUM)); + fn_1_11284(); + return lbl_1_bss_6EC; +} + +void fn_1_6BD8(omObjData *object) +{ + fn_1_E210(0); + fn_1_E210(1); + fn_1_112FC(); +} + +void fn_1_6C08(void) +{ + omObjData *object = lbl_1_bss_6EC; + if (object) { + HuMemDirectFree(lbl_1_bss_6E4); + lbl_1_bss_6E4 = NULL; + HuSprAnimKill(lbl_1_bss_6E0); + lbl_1_bss_6E0 = NULL; + HuSprAnimKill(lbl_1_bss_6DC); + lbl_1_bss_6DC = NULL; + fn_1_11418(); + lbl_1_bss_6EC = NULL; + object->func = NULL; + omDelObjEx(lbl_1_bss_6F0, object); + } +} + +void fn_1_6CD0(s32 arg0, Vec *arg1) +{ + M425DllUnkStruct4 *var_r30; + s32 var_r29; + ModelData *var_r28; + + if (lbl_1_bss_6EC) { + var_r28 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r30 = var_r28->unk_120; + var_r30->unk_CC.x = arg1->x; + var_r30->unk_CC.y = arg1->y; + var_r30->unk_CC.z = arg1->z; + Hu3DModelPosSet(lbl_1_bss_6EC->model[arg0], arg1->x, arg1->y, arg1->z); + if ((lbl_1_bss_6CC == 0) && (arg0 == 0) && (arg1->y <= 0.0f)) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + omVibrate(0, 0xC, 6, 6); + } + HuAudFXPlay(0x62E); + lbl_1_bss_6CC = 1; + } + } +} + +void fn_1_6DFC(s32 arg0, float arg8) +{ + ModelData *var_r31; + M425DllUnkStruct4 *var_r30; + + if (lbl_1_bss_6EC) { + var_r31 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r30 = var_r31->unk_120; + var_r30->unk_D8 = arg8; + Hu3DModelRotSet(lbl_1_bss_6EC->model[arg0], 0.0f, arg8, 0.0f); + } +} + +s32 fn_1_6EC4(float var_f24, float sp8, s16 var_r22, s16 var_r24) +{ + float sp24; + float sp20; + float sp1C; + float sp18; + float sp14; + float sp10; + void *spC; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + float var_f19; + float var_f18; + + M425DllUnkStruct4 *var_r31; + s32 var_r30; + Vec *var_r29; + Vec2f *var_r28; + s32 var_r27; + Vec *var_r26; + s16 *var_r25; + ModelData *var_r23; + s32 var_r21; + s16 *var_r20; + s32 var_r19; + s16 var_r18; + void *var_r17; + + var_r19 = Hu3DHookFuncCreate(fn_1_101C4); + var_r23 = &Hu3DData[var_r19]; + Hu3DModelLayerSet(var_r19, 5); + var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M425DllUnkStruct4), var_r23->unk_48); + var_r23->unk_120 = var_r31; + memset(var_r31, 0, sizeof(M425DllUnkStruct4)); + var_r31->unk_00 = lbl_1_bss_6E8; + lbl_1_bss_6E8++; + var_r31->unk_02 = 0; + var_r31->unk_04 = Hu3DModelCreateFile(0x38000D); + Hu3DModelLayerSet(var_r31->unk_04, 6); + var_r31->unk_06 = 0; + var_r31->unk_08 = 1000.0f; + var_r31->unk_0C = 1000.0f; + var_r31->unk_10 = 1000.0f; + var_r31->unk_14 = 0.0f; + var_r31->unk_18 = 0.0f; + var_r31->unk_1C = 0.0f; + var_r31->unk_20 = 0.0f; + var_r31->unk_24 = sp8; + var_r31->unk_FC = var_f24; + var_r31->unk_100 = sp8; + var_r31->unk_28 = 0; + var_r31->unk_2C = 0; + var_r31->unk_30 = 0.0f; + for (var_r30 = 0; var_r30 < 6; var_r30++) { + var_r31->unk_3C[var_r30] = -1; + var_r31->unk_54[var_r30] = 0.0f; + var_r31->unk_84[var_r30] = -1; + var_r31->unk_9C[var_r30] = 0.0f; + } + var_r31->unk_CC.x = var_r31->unk_CC.y = var_r31->unk_CC.z = 0.0f; + var_r31->unk_D8 = 0.0f; + var_r31->unk_DC = 1.0f; + var_r31->unk_F0[0] = -1; + var_r31->unk_F0[1] = -1; + var_r31->unk_F0[2] = -1; + lbl_1_bss_6EC->model[var_r31->unk_00 + 2] = var_r31->unk_04; + if (var_r31->unk_00 == 0) { + var_r31->unk_E0 = var_f22 = 302.0f; + var_r31->unk_E4 = var_f27 = 193.0f; + } + else { + var_r31->unk_E0 = var_f22 = 302.0f; + var_r31->unk_E4 = var_f27 = 150.0f; + } + var_r31->unk_E8 = var_r31->unk_EC = 0.0f; + var_f30 = sind(var_f27) * cosd(var_f22); + var_f26 = cosd(var_f27) * cosd(var_f22); + var_f28 = sind(var_f22); + sp24 = sqrtf((var_f26 * var_f26) + ((var_f30 * var_f30) + (var_f28 * var_f28))); + if (sp24 != 0.0f) { + sp24 = 1.0f / sp24; + } + else { + sp24 = 0.0f; + } + var_f30 *= sp24; + var_f28 *= sp24; + var_f26 *= sp24; + var_r30 = Hu3DLLightCreate(var_r19, 1000.0f * var_f30, 1000.0f * var_f28, 1000.0f * var_f26, var_f30, var_f28, var_f26, 0xFF, 0xFF, 0xFF); + Hu3DLLightInfinitytSet(var_r19, var_r30); + Hu3DLLightStaticSet(var_r19, var_r30, 1); + var_r22++; + var_r24++; + sp14 = var_f24 - 50.0f; + sp10 = sp8 - 50.0f; + var_r31->unk_112[0] = var_r24 * var_r24; + var_r31->unk_144[0] = 0; + var_r31->unk_112[1] = var_r22 * var_r24; + var_r31->unk_144[1] = var_r31->unk_144[0] + var_r31->unk_112[0]; + if (var_r31->unk_00 != 0) { + var_r31->unk_112[2] = 0; + } + else { + var_r31->unk_112[2] = var_r22 * var_r24; + } + var_r31->unk_144[2] = var_r31->unk_144[1] + var_r31->unk_112[1]; + if (var_r31->unk_00 == 0) { + var_r31->unk_112[3] = 0; + } + else { + var_r31->unk_112[3] = var_r22 * var_r24; + } + var_r31->unk_144[3] = var_r31->unk_144[2] + var_r31->unk_112[2]; + var_r31->unk_112[4] = var_r24 * 5; + var_r31->unk_144[4] = var_r31->unk_144[3] + var_r31->unk_112[3]; + var_r31->unk_112[5] = var_r24 * 5; + var_r31->unk_144[5] = var_r31->unk_144[4] + var_r31->unk_112[4]; + var_r31->unk_112[6] = var_r22 * 5; + var_r31->unk_144[6] = var_r31->unk_144[5] + var_r31->unk_112[5]; + var_r31->unk_112[7] = var_r22 * 5; + var_r31->unk_144[7] = var_r31->unk_144[6] + var_r31->unk_112[6]; + var_r31->unk_112[8] = var_r24 * 5; + var_r31->unk_144[8] = var_r31->unk_144[7] + var_r31->unk_112[7]; + var_r31->unk_112[9] = var_r24 * 5; + var_r31->unk_144[9] = var_r31->unk_144[8] + var_r31->unk_112[8]; + var_r31->unk_112[10] = var_r24 * 5; + var_r31->unk_144[10] = var_r31->unk_144[9] + var_r31->unk_112[9]; + var_r31->unk_112[11] = var_r24 * 5; + var_r31->unk_144[11] = var_r31->unk_144[10] + var_r31->unk_112[10]; + var_r31->unk_112[12] = var_r24 * 5; + var_r31->unk_144[12] = var_r31->unk_144[11] + var_r31->unk_112[11]; + var_r31->unk_112[13] = var_r24 * 5; + var_r31->unk_144[13] = var_r31->unk_144[12] + var_r31->unk_112[12]; + if (var_r31->unk_00 == 0) { + var_r31->unk_112[14] = 0; + } + else { + var_r31->unk_112[14] = var_r22 * 5; + } + var_r31->unk_144[14] = var_r31->unk_144[13] + var_r31->unk_112[13]; + if (var_r31->unk_00 != 0) { + var_r31->unk_112[15] = 0; + } + else { + var_r31->unk_112[15] = var_r22 * 5; + } + var_r31->unk_144[15] = var_r31->unk_144[14] + var_r31->unk_112[14]; + var_r31->unk_112[16] = 0x19; + var_r31->unk_144[16] = var_r31->unk_144[15] + var_r31->unk_112[15]; + var_r31->unk_112[17] = 0x19; + var_r31->unk_144[17] = var_r31->unk_144[16] + var_r31->unk_112[16]; + var_r31->unk_112[18] = 0x19; + var_r31->unk_144[18] = var_r31->unk_144[17] + var_r31->unk_112[17]; + var_r31->unk_112[19] = 0x19; + var_r31->unk_144[19] = var_r31->unk_144[18] + var_r31->unk_112[18]; + var_r31->unk_112[20] = 0x19; + var_r31->unk_144[20] = var_r31->unk_144[19] + var_r31->unk_112[19]; + var_r31->unk_112[21] = 0x19; + var_r31->unk_144[21] = var_r31->unk_144[20] + var_r31->unk_112[20]; + var_r31->unk_112[22] = 0x19; + var_r31->unk_144[22] = var_r31->unk_144[21] + var_r31->unk_112[21]; + var_r31->unk_112[23] = 0x19; + var_r31->unk_144[23] = var_r31->unk_144[22] + var_r31->unk_112[22]; + var_r31->unk_112[24] = var_r24 * var_r24; + var_r31->unk_144[24] = var_r31->unk_144[23] + var_r31->unk_112[23]; + if (var_r31->unk_00 == 0) { + var_r31->unk_06 = var_r31->unk_144[17] + (var_r31->unk_112[17] / 2) + 1; + } + else { + var_r31->unk_06 = var_r31->unk_144[16] + (var_r31->unk_112[16] / 2) - 1; + } + var_r31->unk_10C = var_r22; + var_r31->unk_10E = var_r24; + var_r31->unk_110 = var_r31->unk_144[24] + var_r31->unk_112[24]; + var_r31->unk_240 = 0x19; + var_r31->unk_178 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 2, var_r23->unk_48); + memset(var_r31->unk_178, 0, var_r31->unk_110 * 2); + var_r31->unk_17C = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 0xC, var_r23->unk_48); + memset(var_r31->unk_17C, 0, var_r31->unk_110 * 0xC); + var_r31->unk_180 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 0xC, var_r23->unk_48); + memset(var_r31->unk_180, 0, var_r31->unk_110 * 0xC); + var_r31->unk_184 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 8, var_r23->unk_48); + memset(var_r31->unk_184, 0, var_r31->unk_110 * 8); + var_r31->unk_188 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 0xC, var_r23->unk_48); + memset(var_r31->unk_188, 0, var_r31->unk_110 * 0xC); + var_r31->unk_18C = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 0xC, var_r23->unk_48); + memset(var_r31->unk_18C, 0, var_r31->unk_110 * 0xC); + var_r31->unk_190 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 6, var_r23->unk_48); + memset(var_r31->unk_190, 0, var_r31->unk_110 * 6); + var_r31->unk_194 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110 * 0xC, var_r23->unk_48); + memset(var_r31->unk_194, 0, var_r31->unk_110 * 0xC); + var_r31->unk_198 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_112[0] * 0xC, var_r23->unk_48); + memset(var_r31->unk_198, 0, var_r31->unk_112[0] * 0xC); + var_r31->unk_1A0 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_110, var_r23->unk_48); + memset(var_r31->unk_1A0, 0, var_r31->unk_110); + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + if (((var_r31->unk_112[0] > 0) && (var_r30 >= var_r31->unk_144[0]) && (var_r30 < (var_r31->unk_144[0] + var_r31->unk_112[0]))) + || ((var_r31->unk_112[4] > 0) && (var_r30 >= var_r31->unk_144[4]) && (var_r30 < (var_r31->unk_144[4] + var_r31->unk_112[4]))) + || ((var_r31->unk_112[8] > 0) && (var_r30 >= var_r31->unk_144[8]) && (var_r30 < (var_r31->unk_144[8] + var_r31->unk_112[8]))) + || ((var_r31->unk_112[10] > 0) && (var_r30 >= var_r31->unk_144[10]) && (var_r30 < (var_r31->unk_144[10] + var_r31->unk_112[10]))) + || ((var_r31->unk_112[12] > 0) && (var_r30 >= var_r31->unk_144[12]) && (var_r30 < (var_r31->unk_144[12] + var_r31->unk_112[12]))) + || ((var_r31->unk_112[16] > 0) && (var_r30 >= var_r31->unk_144[16]) && (var_r30 < (var_r31->unk_144[16] + var_r31->unk_112[16]))) + || ((var_r31->unk_112[17] > 0) && (var_r30 >= var_r31->unk_144[17]) && (var_r30 < (var_r31->unk_144[17] + var_r31->unk_112[17]))) + || ((var_r31->unk_112[20] > 0) && (var_r30 >= var_r31->unk_144[20]) && (var_r30 < (var_r31->unk_144[20] + var_r31->unk_112[20]))) + || ((var_r31->unk_112[21] > 0) && (var_r30 >= var_r31->unk_144[21]) && (var_r30 < (var_r31->unk_144[21] + var_r31->unk_112[21])))) { + var_r31->unk_1A0[var_r30] = 1; + } + else { + var_r31->unk_1A0[var_r30] = 0; + } + } + var_r31->unk_23A.r = 0; + var_r31->unk_23A.g = 0; + var_r31->unk_23A.b = 0xFF; + var_r31->unk_23A.a = 0x40; + var_r29 = &var_r31->unk_17C[var_r31->unk_144[0]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[0]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[0]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[0]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = sp8; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp14 / (var_r24 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[0] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10E; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_r29->x = var_f30; + var_r29->y = var_f28; + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f26 = var_f26 + var_f23; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0, var_r24 - 1, var_r24 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[1]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[1]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[1]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[1]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = 0.5f * var_f24; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[1] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10E; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_r29->x = var_f30; + var_r29->y = var_f28; + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 1, var_r24 - 1, var_r22 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[2]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[2]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[2]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[2]]; + var_f25 = var_f30 = -(0.5f * var_f24); + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[2] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10E; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_r29->x = var_f30; + var_r29->y = var_f28; + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f26 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f26 = sp1C; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 2, var_r24 - 1, var_r22 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[3]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[3]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[3]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[3]]; + var_f25 = var_f30 = 0.5f * var_f24; + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[3] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10E; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_r29->x = var_f30; + var_r29->y = var_f28; + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f26 -= var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f26 = sp1C; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 3, var_r24 - 1, var_r22 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[4]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[4]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[4]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[4]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = sp8; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[4] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = 90.0f * (var_r30 / 4.0f); + var_r29->x = var_f30; + var_r29->y = sp20 + (25.0 * (cosd(var_f27) - 1.0)); + var_r29->z = sp1C + (25.0 * sind(var_f27)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 4, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[5]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[5]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[5]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[5]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[5] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = 90.0f + (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f30; + var_r29->y = sp20 + (25.0 * cosd(var_f27)); + var_r29->z = sp1C + (25.0 * sind(var_f27)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 5, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[6]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[6]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[6]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[6]]; + var_f25 = var_f30 = -(0.5f * var_f24); + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[6] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10C; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 90.0f * (var_r27 / 4.0f); + var_r29->x = var_f25 - (25.0 * (cosd(var_f27) - 1.0)); + var_r29->y = var_f28; + var_r29->z = sp1C + (25.0 * sind(var_f27)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 6, 4, var_r22 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[7]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[7]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[7]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[7]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = 0.5f * var_f24; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[7] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10C; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 90.0f - (90.0f * (var_r27 / 4.0f)); + var_r29->x = var_f25 + (25.0 * cosd(var_f27)); + var_r29->y = var_f28; + var_r29->z = sp1C + (25.0 * (sind(var_f27) - 1.0)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 7, 4, var_r22 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[8]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[8]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[8]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[8]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[8] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = 90.0f + (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 + 25.0 * cosd(var_f27); + var_r29->y = sp20 + (25.0 * sind(var_f27)); + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f26 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f26 = sp1C; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 8, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[9]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[9]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[9]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[9]]; + var_f25 = var_f30 = -(0.5f * var_f24 - 25.0f); + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[9] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = 180.0f + (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 + (25.0 * cosd(var_f27)); + var_r29->y = sp20 + (25.0 * sind(var_f27)); + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f26 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f26 = sp1C; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 9, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[10]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[10]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[10]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[10]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[10] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = 90.0f - (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 + (25.0 * cosd(var_f27)); + var_r29->y = sp20 + (25.0 * sind(var_f27)); + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f26 -= var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f26 = sp1C; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0xA, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[11]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[11]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[11]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[11]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[11] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = -(90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 + (25.0 * cosd(var_f27)); + var_r29->y = sp20 + (25.0 * sind(var_f27)); + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f26 -= var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f26 = sp1C; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0xB, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[12]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[12]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[12]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[12]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[12] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = 90.0f + (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f30; + var_r29->y = sp20 + (25.0 * sind(var_f27)); + var_r29->z = sp1C + (25.0 * cosd(var_f27)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 -= var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0xC, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[13]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[13]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[13]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[13]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[13] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_f27 = 180.0f + (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f30; + var_r29->y = sp20 + (25.0 * sind(var_f27)); + var_r29->z = sp1C + (25.0 * cosd(var_f27)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 -= var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0xD, var_r24 - 1, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[14]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[14]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[14]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[14]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[14] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10C; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = -(90.0f * (var_r27 / 4.0f)); + var_r29->x = var_f25 + (25.0 * cosd(var_f27)); + var_r29->y = var_f28; + var_r29->z = sp1C + (25.0 * sind(var_f27)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0xE, 4, var_r22 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[15]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[15]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[15]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[15]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[15] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10C; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = -90.0f - (90.0f * (var_r27 / 4.0f)); + var_r29->x = var_f25 + (25.0 * cosd(var_f27)); + var_r29->y = var_f28; + var_r29->z = sp1C + (25.0 * sind(var_f27)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0xF, 4, var_r22 - 1); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[16]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[16]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[16]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[16]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[16] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 90.0f * (var_r27 / 4.0f); + var_f22 = 90.0f * (var_r30 / 4.0f); + var_r29->x = var_f25 - (25.0 * cosd(var_f27) * sind(var_f22)); + var_r29->y = sp20 + (25.0 * cosd(var_f22)); + var_r29->z = sp1C + (25.0 * sind(var_f27) * sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x10, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[17]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[17]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[17]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[17]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[17] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 90.0f - (90.0f * (var_r27 / 4.0f)); + var_f22 = -(90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 + (25.0 * cosd(var_f27) * -sind(var_f22)); + var_r29->y = sp20 + (25.0 * cosd(var_f22)); + var_r29->z = sp1C + (25.0 * sind(var_f27) * -sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x11, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[18]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[18]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[18]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[18]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[18] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 90.0f * (var_r27 / 4.0f); + var_f22 = 90.0f + (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 - (25.0 * cosd(var_f27) * sind(var_f22)); + var_r29->y = sp20 + (25.0 * cosd(var_f22)); + var_r29->z = sp1C + (25.0 * sind(var_f27) * sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x12, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[19]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[19]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[19]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[19]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[19] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 90.0f * (var_r27 / 4.0f); + var_f22 = 90.0f * (var_r30 / 4.0f); + var_r29->x = var_f25 + (25.0 * cosd(var_f27) * sind(var_f22)); + var_r29->y = sp20 - (25.0 * cosd(var_f22)); + var_r29->z = sp1C + (25.0 * sind(var_f27) * sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x13, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[20]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[20]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[20]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[20]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[20] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 180.0f + (90.0f * (var_r27 / 4.0f)); + var_f22 = 90.0f * (var_r30 / 4.0f); + var_r29->x = var_f25 - (25.0 * cosd(var_f27) * sind(var_f22)); + var_r29->y = sp20 + (25.0 * cosd(var_f22)); + var_r29->z = sp1C + (25.0 * sind(var_f27) * sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x14, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[21]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[21]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[21]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[21]]; + var_f25 = var_f30 = -(0.5f * var_f24 - 25.0f); + sp20 = var_f28 = sp8 - 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[21] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 270.0f - (90.0f * (var_r27 / 4.0f)); + var_f22 = -(90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 + (cosd(var_f27) * 25.0 * -sind(var_f22)); + var_r29->y = sp20 + 25.0 * cosd(var_f22); + var_r29->z = sp1C + (25.0 * sind(var_f27) * -sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x15, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[22]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[22]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[22]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[22]]; + var_f25 = var_f30 = (0.5f * var_f24) - 25.0f; + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = -((0.5f * var_f24) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[22] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 180.0f + (90.0f * (var_r27 / 4.0f)); + var_f22 = 90.0f + (90.0f * (var_r30 / 4.0f)); + var_r29->x = var_f25 - (25.0 * cosd(var_f27) * sind(var_f22)); + var_r29->y = sp20 + (25.0 * cosd(var_f22)); + var_r29->z = sp1C + (25.0 * sind(var_f27) * sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x16, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[23]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[23]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[23]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[23]]; + var_f25 = var_f30 = -((var_f24 * 0.5f) - 25.0f); + sp20 = var_f28 = 25.0f; + sp1C = var_f26 = -((var_f24 * 0.5f) - 25.0f); + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp10 / (var_r22 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[23] != 0) { + for (var_r30 = 0; var_r30 < 5; var_r30++) { + for (var_r27 = 0; var_r27 < 5; var_r27++) { + var_f27 = 180.0f + (90.0f * (var_r27 / 4.0f)); + var_f22 = 90.0f * (var_r30 / 4.0f); + var_r29->x = var_f25 + (25.0 * cosd(var_f27) * sind(var_f22)); + var_r29->y = sp20 - (25.0 * cosd(var_f22)); + var_r29->z = sp1C + (25.0 * sind(var_f27) * sind(var_f22)); + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f28 -= var_f18; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x17, 4, 4); + } + var_r29 = &var_r31->unk_17C[var_r31->unk_144[24]]; + var_r26 = &var_r31->unk_188[var_r31->unk_144[24]]; + var_r28 = &var_r31->unk_184[var_r31->unk_144[24]]; + var_r25 = &var_r31->unk_178[var_r31->unk_144[24]]; + var_f25 = var_f30 = -((0.5f * var_f24) - 25.0f); + sp20 = var_f28 = 0.0f; + sp1C = var_f26 = (0.5f * var_f24) - 25.0f; + var_f19 = var_f31 = 0.0f; + sp18 = var_f29 = 0.0f; + var_f23 = sp14 / (var_r24 - 1); + var_f18 = sp14 / (var_r24 - 1); + var_f21 = 1.0f / (var_r31->unk_10E - 1); + var_f20 = 1.0f / (var_r31->unk_10E - 1); + if (var_r31->unk_112[0x18] != 0) { + for (var_r30 = 0; var_r30 < var_r31->unk_10E; var_r30++) { + for (var_r27 = 0; var_r27 < var_r31->unk_10E; var_r27++) { + var_r29->x = var_f30; + var_r29->y = var_f28; + var_r29->z = var_f26; + var_r28->x = var_f31; + var_r28->y = var_f29; + var_f30 += var_f23; + var_f31 += var_f21; + var_r29++; + var_r26++; + var_r28++; + var_r25++; + } + var_f30 = var_f25; + var_f31 = var_f19; + var_f26 = var_f26 - var_f23; + var_f29 += var_f20; + } + fn_1_D9A8(var_r31, var_r23, 0x18, var_r24 - 1, var_r24 - 1); + } + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + for (var_r27 = 0; var_r27 < var_r30; var_r27++) { + var_f30 = var_r31->unk_17C[var_r30].x - var_r31->unk_17C[var_r27].x; + var_f28 = var_r31->unk_17C[var_r30].y - var_r31->unk_17C[var_r27].y; + var_f26 = var_r31->unk_17C[var_r30].z - var_r31->unk_17C[var_r27].z; + sp24 = (var_f26 * var_f26) + ((var_f30 * var_f30) + (var_f28 * var_f28)); + if (sp24 < 10.0f) { + var_r31->unk_178[var_r30] = var_r27; + if (var_r31->unk_178[var_r27] != -1) { + var_r31->unk_178[var_r30] = var_r31->unk_178[var_r27]; + } + break; + } + } + if (var_r27 >= var_r30) { + var_r31->unk_178[var_r30] = -1; + } + } + memcpy(var_r31->unk_180, var_r31->unk_17C, var_r31->unk_110 * 0xC); + memcpy(var_r31->unk_198, &var_r31->unk_180[var_r31->unk_144[0]], var_r31->unk_112[0] * 0xC); + var_r31->unk_19C = 0; + fn_1_DB44(var_r31, var_r23); + fn_1_DE3C(var_r31, var_r23); + var_f31 = sqrtf((0.5f * sp8 * (0.5f * sp8)) + ((0.5f * var_f24 * (0.5f * var_f24)) + (0.5f * var_f24 * (0.5f * var_f24)))); + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + var_f30 = var_r31->unk_17C[var_r30].x; + var_f28 = var_r31->unk_17C[var_r30].y - (0.5f * sp8); + var_f26 = var_r31->unk_17C[var_r30].z; + sp24 = sqrtf((var_f26 * var_f26) + ((var_f30 * var_f30) + (var_f28 * var_f28))); + var_f27 = sp24; + sp24 = 1.0f - (sp24 / var_f31); + if (var_f27 != 0.0f) { + var_f22 = 1.0f / var_f27; + } + else { + var_f22 = 0.0; + } + var_r31->unk_194[var_r30].x = sp24 * (var_f22 * var_r31->unk_17C[var_r30].x); + var_r31->unk_194[var_r30].y = sp24 * (var_f22 * var_r31->unk_17C[var_r30].y); + var_r31->unk_194[var_r30].z = sp24 * (var_f22 * var_r31->unk_17C[var_r30].z); + } + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + if ((((var_r31->unk_112[6] <= 0) || (var_r30 < var_r31->unk_144[6]) || (var_r30 >= (var_r31->unk_144[6] + var_r31->unk_112[6]))) + && ((var_r31->unk_112[7] <= 0) || (var_r30 < var_r31->unk_144[7]) || (var_r30 >= (var_r31->unk_144[7] + var_r31->unk_112[7]))) + && ((var_r31->unk_112[0xE] <= 0) || (var_r30 < var_r31->unk_144[0xE]) || (var_r30 >= (var_r31->unk_144[0xE] + var_r31->unk_112[0xE]))) + && ((var_r31->unk_112[0xF] <= 0) || (var_r30 < var_r31->unk_144[0xF]) || (var_r30 >= (var_r31->unk_144[0xF] + var_r31->unk_112[0xF]))) + && ((var_r31->unk_112[4] <= 0) || (var_r30 < var_r31->unk_144[4]) || (var_r30 >= (var_r31->unk_144[4] + var_r31->unk_112[4]))) + && ((var_r31->unk_112[8] <= 0) || (var_r30 < var_r31->unk_144[8]) || (var_r30 >= (var_r31->unk_144[8] + var_r31->unk_112[8]))) + && ((var_r31->unk_112[0xA] <= 0) || (var_r30 < var_r31->unk_144[0xA]) || (var_r30 >= (var_r31->unk_144[0xA] + var_r31->unk_112[0xA]))) + && ((var_r31->unk_112[0xC] <= 0) || (var_r30 < var_r31->unk_144[0xC]) || (var_r30 >= (var_r31->unk_144[0xC] + var_r31->unk_112[0xC]))) + && ((var_r31->unk_112[0x10] <= 0) || (var_r30 < var_r31->unk_144[0x10]) + || (var_r30 >= (var_r31->unk_144[0x10] + var_r31->unk_112[0x10]))) + && ((var_r31->unk_112[0x11] <= 0) || (var_r30 < var_r31->unk_144[0x11]) + || (var_r30 >= (var_r31->unk_144[0x11] + var_r31->unk_112[0x11]))) + && ((var_r31->unk_112[0x14] <= 0) || (var_r30 < var_r31->unk_144[0x14]) + || (var_r30 >= (var_r31->unk_144[0x14] + var_r31->unk_112[0x14]))) + && ((var_r31->unk_112[0x15] <= 0) || (var_r30 < var_r31->unk_144[0x15]) + || (var_r30 >= (var_r31->unk_144[0x15] + var_r31->unk_112[0x15]))) + && (var_r30 >= var_r31->unk_144[4])) + || (var_r31->unk_178[var_r30] != -1)) { + var_r31->unk_18C[var_r30].x = var_r31->unk_18C[var_r30].y = var_r31->unk_18C[var_r30].z = 0.0; + var_r31->unk_190[var_r30][0] = var_r31->unk_190[var_r30][1] = 0; + var_r31->unk_190[var_r30][2] = 0; + } + else if (((var_r31->unk_112[0] > 0) && (var_r30 >= var_r31->unk_144[0]) && (var_r30 < (var_r31->unk_144[0] + var_r31->unk_112[0]))) + || ((var_r31->unk_112[4] > 0) && (var_r30 >= var_r31->unk_144[4]) && (var_r30 < (var_r31->unk_144[4] + var_r31->unk_112[4]))) + || ((var_r31->unk_112[8] > 0) && (var_r30 >= var_r31->unk_144[8]) && (var_r30 < (var_r31->unk_144[8] + var_r31->unk_112[8]))) + || ((var_r31->unk_112[0xA] > 0) && (var_r30 >= var_r31->unk_144[0xA]) && (var_r30 < (var_r31->unk_144[0xA] + var_r31->unk_112[0xA]))) + || ((var_r31->unk_112[0xC] > 0) && (var_r30 >= var_r31->unk_144[0xC]) && (var_r30 < (var_r31->unk_144[0xC] + var_r31->unk_112[0xC]))) + || ((var_r31->unk_112[0x10] > 0) && (var_r30 >= var_r31->unk_144[0x10]) && (var_r30 < (var_r31->unk_144[0x10] + var_r31->unk_112[0x10]))) + || ((var_r31->unk_112[0x11] > 0) && (var_r30 >= var_r31->unk_144[0x11]) && (var_r30 < (var_r31->unk_144[0x11] + var_r31->unk_112[0x11]))) + || ((var_r31->unk_112[0x14] > 0) && (var_r30 >= var_r31->unk_144[0x14]) && (var_r30 < (var_r31->unk_144[0x14] + var_r31->unk_112[0x14]))) + || ((var_r31->unk_112[0x15] > 0) && (var_r30 >= var_r31->unk_144[0x15]) + && (var_r30 < (var_r31->unk_144[0x15] + var_r31->unk_112[0x15])))) { + *var_r31->unk_190[var_r30] = var_r31->unk_190[var_r30][1] = 0; + sp24 = sqrtf((var_r31->unk_17C[var_r30].x * var_r31->unk_17C[var_r30].x) + (var_r31->unk_17C[var_r30].z * var_r31->unk_17C[var_r30].z)); + var_f27 = sp24; + sp24 = 1.0f - (sp24 / sqrtf(var_f24 * var_f24)); + var_r31->unk_18C[var_r30].y = -(180.0f * sp24); + var_f27 = sqrtf(var_f27); + if (var_f27 != 0.0f) { + var_f22 = 1.0f / var_f27; + } + else { + var_f22 = 0.0; + } + var_r31->unk_18C[var_r30].x = sind((180.0f * (var_f22 * var_r31->unk_17C[var_r30].x))); + var_r31->unk_18C[var_r30].z = sind((180.0f * (var_f22 * var_r31->unk_17C[var_r30].z))); + var_r31->unk_18C[var_r30].x *= 20.0f * -(1.0f - sp24); + var_r31->unk_18C[var_r30].z *= (20.0f * -(1.0f - sp24)); + var_r31->unk_190[var_r30][2] = 1; + } + else { + sp24 = sqrtf((var_r31->unk_17C[var_r30].x * var_r31->unk_17C[var_r30].x) + (var_r31->unk_17C[var_r30].z * var_r31->unk_17C[var_r30].z)); + if (sp24 != 0.0f) { + sp24 = 1.0f / sp24; + } + else { + sp24 = 0.0f; + } + var_r31->unk_18C[var_r30].x = -(sp24 * var_r31->unk_17C[var_r30].x); + var_r31->unk_18C[var_r30].z = -(sp24 * var_r31->unk_17C[var_r30].z); + var_r31->unk_18C[var_r30].y = 0.0; + var_f27 = 180.0 + (180.0 * (atan2(var_r31->unk_17C[var_r30].x, var_r31->unk_17C[var_r30].z) / 3.141592653589793)); + if (var_f27 > 360.0f) { + var_f27 = fmod(var_f27, 360.0); + } + else if (var_f27 < 0.0f) { + var_f27 += 360.0f; + } + var_f27 = 255.0f * (0.0027777778f * var_f27); + if (var_f27 >= 255.0f) { + var_f27 = 255.0f; + } + else if (var_f27 < 0.0f) { + var_f27 = 0.0; + } + var_f22 = 64.0f * (var_r31->unk_17C[var_r30].y / sp8); + if (var_f22 >= 63.0f) { + var_f22 = 63.0f; + } + else if (var_f22 < 0.0f) { + var_f22 = 0.0; + } + var_r31->unk_190[var_r30][0] = var_f27; + var_r31->unk_190[var_r30][1] = var_f22; + var_r31->unk_190[var_r30][2] = 2; + } + } + DCFlushRangeNoSync(var_r31->unk_180, var_r31->unk_110 * 0xC); + DCFlushRangeNoSync(var_r31->unk_17C, var_r31->unk_110 * 0xC); + DCFlushRangeNoSync(var_r31->unk_188, var_r31->unk_110 * 0xC); + DCFlushRangeNoSync(var_r31->unk_184, var_r31->unk_110 * 8); + DCFlushRangeNoSync(var_r31->unk_178, var_r31->unk_110 * 2); + PPCSync(); + for (var_r21 = 0; var_r21 < 0x19; var_r21++) { + if ((var_r31->unk_208[var_r21] != 0) && var_r31->unk_1A4[var_r21] && (var_r31->unk_112[var_r21] != 0)) { + var_r17 = HuMemDirectMallocNum(HEAP_DATA, 0x4000, var_r23->unk_48); + spC = var_r17; + (void)var_r18; + DCFlushRange(var_r17, 0x4000); + GXBeginDisplayList(spC, 0x4000); + GXBegin(GX_QUADS, GX_VTXFMT0, var_r31->unk_208[var_r21] * 4); + var_r20 = var_r31->unk_1A4[var_r21]; + for (var_r30 = 0; var_r30 < var_r31->unk_208[var_r21]; var_r30++) { + for (var_r27 = 0; var_r27 < 4; var_r27++) { + if (var_r31->unk_178[var_r20[var_r27]] == -1) { + var_r18 = var_r20[var_r27]; + } + else { + var_r18 = var_r31->unk_178[var_r20[var_r27]]; + } + GXPosition1x16(var_r18); + GXNormal1x16(var_r18); + GXColor1x16(0); + GXTexCoord1x16(var_r20[var_r27]); + } + var_r20 += 5; + } + var_r31->unk_244[var_r21] = GXEndDisplayList(); + if (var_r31->unk_244[var_r21] >= 0x4000) { + OSReport("ERROR! GList test size over! \n"); + } + var_r31->unk_2A8[var_r21] = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_244[var_r21], var_r23->unk_48); + memcpy(var_r31->unk_2A8[var_r21], var_r17, var_r31->unk_244[var_r21]); + DCFlushRange(var_r31->unk_2A8[var_r21], var_r31->unk_244[var_r21]); + HuMemDirectFree(var_r17); + } + } + return var_r19; +} + +void fn_1_D9A8(M425DllUnkStruct4 *var_r31, ModelData *var_r24, s32 var_r30, s32 var_r26, s32 var_r25) +{ + s16 *var_r29; + s32 var_r28; + s32 var_r27; + + var_r31->unk_208[var_r30] = var_r26 * var_r25; + var_r31->unk_1A4[var_r30] = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_208[var_r30] * 0xA, var_r24->unk_48); + memset(var_r31->unk_1A4[var_r30], 0, var_r31->unk_208[var_r30] * 0xA); + var_r29 = var_r31->unk_1A4[var_r30]; + for (var_r28 = 0; var_r28 < var_r25; var_r28++) { + for (var_r27 = 0; var_r27 < var_r26; var_r27++) { + var_r29[0] = var_r31->unk_144[var_r30] + (var_r26 + 1) * var_r28 + var_r27; + var_r29[1] = var_r31->unk_144[var_r30] + (var_r26 + 1) * var_r28 + (var_r27 + 1); + var_r29[2] = var_r31->unk_144[var_r30] + (var_r26 + 1) * (var_r28 + 1) + (var_r27 + 1); + var_r29[3] = var_r31->unk_144[var_r30] + (var_r26 + 1) * (var_r28 + 1) + var_r27; + var_r29 += 5; + } + } + DCFlushRangeNoSync(var_r31->unk_1A4[var_r30], var_r31->unk_208[var_r30] * 0xA); + PPCSync(); +} + +void fn_1_DB44(M425DllUnkStruct4 *arg0, ModelData *model) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + s16 *var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + for (var_r30 = 0; var_r30 < 0x19; var_r30++) { + if ((arg0->unk_208[var_r30] != 0) && arg0->unk_1A4[var_r30]) { + for (var_r31 = arg0->unk_1A4[var_r30], var_r29 = 0; var_r29 < arg0->unk_208[var_r30]; var_r29++, var_r31 += 0x5) { + for (var_r28 = 0; var_r28 < 4; var_r28++) { + if (arg0->unk_178[var_r31[var_r28]] != -1) { + var_r31[var_r28] = arg0->unk_178[var_r31[var_r28]]; + } + } + } + } + } + for (var_r30 = 0; var_r30 < 0x19; var_r30++) { + if ((arg0->unk_208[var_r30] != 0) && arg0->unk_1A4[var_r30]) { + for (var_r31 = arg0->unk_1A4[var_r30], var_r29 = 0; var_r29 < arg0->unk_208[var_r30]; var_r29++, var_r31 += 0x5) { + var_f31 = arg0->unk_17C[var_r31[0]].x - arg0->unk_17C[var_r31[1]].x; + var_f30 = arg0->unk_17C[var_r31[0]].y - arg0->unk_17C[var_r31[1]].y; + var_f29 = arg0->unk_17C[var_r31[0]].z - arg0->unk_17C[var_r31[1]].z; + var_f28 = (var_f29 * var_f29) + ((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f28 < 10.0f) { + var_r31[4] = 1; + } + else { + var_f31 = arg0->unk_17C[var_r31[0]].x - arg0->unk_17C[var_r31[2]].x; + var_f30 = arg0->unk_17C[var_r31[0]].y - arg0->unk_17C[var_r31[2]].y; + var_f29 = arg0->unk_17C[var_r31[0]].z - arg0->unk_17C[var_r31[2]].z; + var_f28 = (var_f29 * var_f29) + ((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f28 < 10.0f) { + var_r31[4] = 2; + } + else { + var_r31[4] = 0; + } + } + } + } + } +} + +void fn_1_DE3C(M425DllUnkStruct4 *arg0, ModelData *model) +{ + Vec sp20; + Vec sp14; + Vec sp8; + s32 var_r30; + s32 var_r29; + s16 *var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + + memset(arg0->unk_188, 0, arg0->unk_110 * sizeof(Vec)); + for (var_r30 = 0; var_r30 < arg0->unk_240; var_r30++) { + if ((arg0->unk_208[var_r30] != 0) && arg0->unk_1A4[var_r30]) { + for (var_r28 = arg0->unk_1A4[var_r30], var_r24 = 0; var_r24 < arg0->unk_208[var_r30]; var_r24++, var_r28 += 5) { + switch (var_r28[4]) { + case 1: + var_r27 = 0; + var_r29 = 2; + var_r26 = 3; + var_r25 = 1; + break; + case 2: + var_r27 = 0; + var_r29 = 1; + var_r26 = 3; + var_r25 = 2; + break; + default: + var_r27 = 0; + var_r29 = 1; + var_r26 = 2; + var_r25 = 3; + break; + } + var_r27 = var_r28[var_r27]; + var_r29 = var_r28[var_r29]; + var_r26 = var_r28[var_r26]; + var_r25 = var_r28[var_r25]; + sp14.x = arg0->unk_180[var_r29].x - arg0->unk_180[var_r27].x; + sp14.y = arg0->unk_180[var_r29].y - arg0->unk_180[var_r27].y; + sp14.z = arg0->unk_180[var_r29].z - arg0->unk_180[var_r27].z; + sp8.x = arg0->unk_180[var_r26].x - arg0->unk_180[var_r29].x; + sp8.y = arg0->unk_180[var_r26].y - arg0->unk_180[var_r29].y; + sp8.z = arg0->unk_180[var_r26].z - arg0->unk_180[var_r29].z; + PSVECCrossProduct(&sp14, &sp8, &sp20); + sp20.x *= -1.0f; + sp20.y *= -1.0f; + sp20.z *= -1.0f; + arg0->unk_188[var_r27].x += sp20.x; + arg0->unk_188[var_r27].y += sp20.y; + arg0->unk_188[var_r27].z += sp20.z; + arg0->unk_188[var_r29].x += sp20.x; + arg0->unk_188[var_r29].y += sp20.y; + arg0->unk_188[var_r29].z += sp20.z; + arg0->unk_188[var_r26].x += sp20.x; + arg0->unk_188[var_r26].y += sp20.y; + arg0->unk_188[var_r26].z += sp20.z; + arg0->unk_188[var_r25].x += sp20.x; + arg0->unk_188[var_r25].y += sp20.y; + arg0->unk_188[var_r25].z += sp20.z; + } + } + } + for (var_r30 = 0; var_r30 < arg0->unk_110; var_r30++) { + PSVECNormalize(&arg0->unk_188[var_r30], &arg0->unk_188[var_r30]); + } +} + +s32 lbl_1_data_150[3][2] = { { 0x638, 0x63B }, { 0x639, 0x63C }, { 0x63A, 0x63D } }; +GXColor lbl_1_data_168 = { 255, 255, 255, 255 }; +Mtx lbl_1_data_16C = { + { 0.5f, 0.0f, 0.0f, -0.5f }, + { 0.0f, 0.5f, 0.0f, -0.5f }, + { 0.0f, 0.0f, 0.5f, -0.5f }, +}; +Vec lbl_1_data_19C[4] = { + { -0.5f, 0.5f, 0.0f }, + { 0.5f, 0.5f, 0.0f }, + { 0.5f, -0.5f, 0.0f }, + { -0.5f, -0.5f, 0.0f }, +}; +Vec2f lbl_1_data_1CC[4] = { + { 0.0f, 0.0f }, + { 0.25f, 0.0f }, + { 0.25f, 0.25f }, + { 0.0f, 0.25f }, +}; + +void fn_1_E210(s32 arg0) +{ + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + M425DllUnkStruct4 *var_r31; + s32 var_r30; + s32 var_r29; + LightData *var_r28; + ModelData *var_r27; + s32 var_r26; + + if (lbl_1_bss_6EC) { + var_r27 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r31 = var_r27->unk_120; + for (var_r30 = 0, var_f31 = 0.0f; var_r30 < 6; var_r30++) { + if ((var_r31->unk_84[var_r30] == -1) || (var_r31->unk_9C[var_r30] < 0.0f)) { + var_r31->unk_84[var_r30] = -1; + var_r31->unk_9C[var_r30] = 0.0f; + } + else { + var_f31 += var_r31->unk_9C[var_r30]; + for (var_r29 = 0; var_r29 < 5; var_r29++) { + if (var_r31->unk_3C[var_r29] == var_r31->unk_84[var_r30]) { + break; + } + } + if (var_r29 >= 5) { + for (var_r29 = 0; var_r29 < 5; var_r29++) { + if ((var_r31->unk_3C[var_r29] == -1) && (var_r31->unk_54[var_r29] <= 0.0f)) { + break; + } + } + } + if ((var_r29 < 5) && (var_r31->unk_54[var_r29] < var_r31->unk_9C[var_r30])) { + var_r31->unk_3C[var_r29] = var_r31->unk_84[var_r30]; + var_r31->unk_54[var_r29] = var_r31->unk_9C[var_r30]; + var_r31->unk_6C[var_r29] = var_r31->unk_B4[var_r30]; + } + var_r31->unk_84[var_r30] = -1; + var_r31->unk_9C[var_r30] = 0.0f; + var_r31->unk_B4[var_r30] = 0; + } + } + for (var_r30 = 0, var_r29 = 0, var_r31->unk_14 = 0.0f; var_r30 < 6; var_r30++) { + if ((var_r31->unk_3C[var_r30] != -1) && (var_r31->unk_54[var_r30] > 0.0f)) { + var_r31->unk_14 += 0.8f * var_r31->unk_54[var_r30]; + var_r29++; + } + } + + for (var_r30 = 0, var_r29 = 0, var_r31->unk_20 = 0.0f; var_r30 < 6; var_r30++) { + if ((var_r31->unk_3C[var_r30] != -1) && (var_r31->unk_54[var_r30] > 0.0f) && (var_r31->unk_6C[var_r30] != 0)) { + var_r31->unk_20 += 0.8f * var_r31->unk_54[var_r30]; + var_r29++; + } + } + if (var_r29 != 0) { + var_r31->unk_18 = 20.0f * (var_r31->unk_20 * var_r31->unk_20); + var_r31->unk_08 -= var_r31->unk_18; + if (var_r31->unk_08 < 0.0f) { + var_r31->unk_08 = 0.0f; + } + if ((var_r31->unk_18 > var_r31->unk_1C) && (var_r31->unk_18 >= 0.0f)) { + if (var_r31->unk_18 >= 13.200000000000001) { + var_r26 = HuAudFXPlay(lbl_1_data_150[2][arg0]); + } + else if (var_r31->unk_18 >= 6.6000000000000005) { + var_r26 = HuAudFXPlay(lbl_1_data_150[1][arg0]); + } + else { + var_r26 = HuAudFXPlay(lbl_1_data_150[0][arg0]); + } + var_f30 = var_r31->unk_08 / 1000.0f; + if (var_r26 != -1) { + HuAudFXPitchSet(var_r26, (s32)(8191.0f * (1.0f - var_f30))); + } + } + } + else { + var_r31->unk_18 = 0.0f; + } + var_r31->unk_1C = var_r31->unk_18; + if (var_r31->unk_2C != 0) { + if (++var_r31->unk_28 >= var_r31->unk_2C) { + var_r31->unk_2C = var_r31->unk_28 = 0; + var_r31->unk_30 = 0.0f; + } + } + if ((var_r31->unk_E0 != var_r31->unk_E8) || (var_r31->unk_E4 != var_r31->unk_EC)) { + sp8.x = sind(var_r31->unk_E4) * cosd(var_r31->unk_E0); + sp8.z = cosd(var_r31->unk_E4) * cosd(var_r31->unk_E0); + sp8.y = sind(var_r31->unk_E0); + PSVECNormalize(&sp8, &sp8); + var_r28 = &Hu3DLocalLight[var_r27->unk_38[0]]; + var_r28->unk_1C.x = 1000.0f * sp8.x; + var_r28->unk_1C.y = 1000.0f * sp8.y; + var_r28->unk_1C.z = 1000.0f * sp8.z; + var_r28->unk_28.x = sp8.x; + var_r28->unk_28.y = sp8.y; + var_r28->unk_28.z = sp8.z; + var_r31->unk_E8 = var_r31->unk_E0; + var_r31->unk_EC = var_r31->unk_E4; + } + var_r31->unk_20 = 0.0f; + } +} + +void fn_1_E914(ModelData *var_r27, Mtx matrix) +{ + s32 spB4; + s32 spB0; + Mtx sp70; + Vec sp64; + Vec sp58; + float sp48; + float sp44; + float sp40; + float sp3C; + float sp38; + float sp34; + float sp30; + float sp2C; + float sp28; + + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f19; + float var_f18; + + M425DllUnkStruct4 *var_r31; + s32 var_r30; + s32 var_r29; + s16 var_r28; + s32 var_r26; + + var_r31 = var_r27->unk_120; + if (var_r31->unk_2C != 0) { + var_f24 = (float)var_r31->unk_28 / var_r31->unk_2C; + var_r31->unk_30 = 0.30000001192092896 * cosd((90.0f * var_f24)); + sp40 = var_r31->unk_30 * (0.5 * sind((720.0f * var_f24))); + } + else { + sp40 = 0.0f; + } + if (var_r31->unk_0C != 0.0f) { + var_f19 = var_r31->unk_08 / var_r31->unk_0C; + } + else { + var_f19 = 1.0f; + } + var_r27->scale.y = var_r31->unk_DC = (0.100000024f + (0.9f * var_f19)) - sp40; + if (var_r31->unk_DC > 0.3f) { + sp3C = 1.0f - (-0.39999998f * ((var_r31->unk_DC - 0.3f) / 0.7f)); + } + else { + sp3C = 0.6f * (var_r31->unk_DC / 0.3f); + } + if (var_r31->unk_DC != 0.0f) { + sp3C /= var_r31->unk_DC; + } + else { + sp3C = 0.0f; + } + if (var_r31->unk_08 < 0.0f) { + sp3C = 0.0f; + } + if (var_f19 <= 0.3f) { + var_f24 = var_f19 / 0.3f; + var_r31->unk_E0 = 222.0f + (80.0f * var_f24); + } + var_f18 = 100.0f * var_r31->unk_14; + if (var_f19 > 0.85f) { + var_f18 += 100.0f * (4.0f * (var_f19 - 0.85f)); + } + if (var_f18 > 150.0f) { + var_f18 = 150.0f; + } + sp38 = 1.0f - var_f19; + if (var_f18 >= 0.0f) { + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + if (var_r31->unk_178[var_r30] == -1) { + var_r31->unk_180[var_r30].x = var_r31->unk_17C[var_r30].x + (var_f18 * var_r31->unk_194[var_r30].x); + var_r31->unk_180[var_r30].y = var_r31->unk_17C[var_r30].y + (var_f18 * var_r31->unk_194[var_r30].y); + var_r31->unk_180[var_r30].z = var_r31->unk_17C[var_r30].z + (var_f18 * var_r31->unk_194[var_r30].z); + } + } + } + else { + memcpy(var_r31->unk_180, var_r31->unk_17C, var_r31->unk_110 * 0xC); + } + var_r31->unk_14 = 0.0f; + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + if (!(var_f19 >= 1.0f) && (var_r31->unk_190[var_r30][2] != 0)) { + switch (var_r31->unk_190[var_r30][2]) { + case 1: + var_r31->unk_180[var_r30].x += sp38 * var_r31->unk_18C[var_r30].x; + var_r31->unk_180[var_r30].y += sp38 * var_r31->unk_18C[var_r30].y; + var_r31->unk_180[var_r30].z += sp38 * var_r31->unk_18C[var_r30].z; + break; + case 2: + var_f24 = lbl_1_bss_6E4[var_r31->unk_190[var_r30][0] + (var_r31->unk_190[var_r30][1] << 8)]; + var_f24 = 80.0f * (0.003921569f * (255.0f - var_f24) * sp38); + var_r31->unk_180[var_r30].x += var_f24 * var_r31->unk_18C[var_r30].x; + var_r31->unk_180[var_r30].y += var_f24 * var_r31->unk_18C[var_r30].y; + var_r31->unk_180[var_r30].z += var_f24 * var_r31->unk_18C[var_r30].z; + break; + } + } + } + for (var_r29 = 0, var_r28 = 0, var_f27 = var_f26 = var_f25 = 0.0f; var_r29 < 6; var_r29++) { + if ((var_r31->unk_54[var_r29] > 0.0f) || (var_r31->unk_3C[var_r29] != -1)) { + var_f27 += var_r31->unk_180[var_r31->unk_3C[var_r29]].x; + var_f25 += var_r31->unk_180[var_r31->unk_3C[var_r29]].z; + var_f26 += var_r31->unk_54[var_r29]; + var_r28++; + } + } + if (var_r28 >= 2) { + var_f27 /= var_r28; + var_f25 /= var_r28; + var_f26 /= var_r28; + mtxRot(sp70, 0.0f, var_r31->unk_D8, 0.0f); + var_f30 = var_r31->unk_CC.x + ((sp70[0][0] * var_f27) + (sp70[0][2] * var_f25)); + var_f31 = var_r31->unk_CC.z + ((sp70[2][0] * var_f27) + (sp70[2][2] * var_f25)); + fn_1_10EF8(var_r31->unk_00, 2, var_f30, var_f31); + var_r31->unk_50 = var_r31->unk_34; + var_r31->unk_54[5] = var_f26; + var_r31->unk_6C[5] = 0; + } + else { + var_r31->unk_50 = -1; + var_r31->unk_54[5] = 0.0f; + var_r31->unk_6C[5] = 0; + } + for (var_r29 = 0; var_r29 < 6; var_r29++) { + if ((var_r31->unk_54[var_r29] <= 0.0f) || (var_r31->unk_3C[var_r29] == -1)) { + var_r31->unk_3C[var_r29] = -1; + var_r31->unk_54[var_r29] = 0.0f; + var_r31->unk_6C[var_r29] = 0; + } + else { + var_f24 = 150.0f * var_r31->unk_54[var_r29] * sp3C; + sp44 = 50.0f * var_r31->unk_54[var_r29]; + if (sp44 > 15.000001f) { + sp44 = 15.000001f; + } + var_f27 = var_r31->unk_180[var_r31->unk_3C[var_r29]].x; + var_f26 = var_r31->unk_180[var_r31->unk_3C[var_r29]].y; + var_f25 = var_r31->unk_180[var_r31->unk_3C[var_r29]].z; + if (var_r29 != 5) { + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + if (var_r31->unk_178[var_r30] == -1) { + var_f30 = var_r31->unk_180[var_r30].x - var_f27; + var_f29 = var_r31->unk_DC * (var_r31->unk_180[var_r30].y - var_f26); + var_f31 = 0.425f * (var_r31->unk_180[var_r30].z - var_f25); + var_f28 = (var_f31 * var_f31) + ((var_f30 * var_f30) + (var_f29 * var_f29)); + if (var_f28 < 10000.0f) { + var_f28 = sqrtf((var_f31 * var_f31) + ((var_f30 * var_f30) + (var_f29 * var_f29))); + var_f28 = var_f28 * 0.01f; + var_r31->unk_180[var_r30].y -= (1.0f - var_f28) * var_f24; + if (var_r31->unk_180[var_r30].y < 1.0f) { + var_r31->unk_180[var_r30].y = 1.0f; + } + } + if (var_r31->unk_1A0[var_r30] != 0) { + var_f31 = var_r31->unk_180[var_r30].z - var_f25; + if (!(fabs(var_f31) > 100.0)) { + var_f28 = sqrtf((var_f30 * var_f30) + (var_f31 * var_f31)); + if (var_f28 < 200.0f) { + var_f28 = var_f28 * 0.005f; + var_r31->unk_180[var_r30].y += (sp44 * sind((90.0f * var_f28))); // is this right? + } + else if (var_f28 < 400.0f) { + var_f28 -= 200.0f; + var_f28 = var_f28 * 0.005f; + var_r31->unk_180[var_r30].y += (sp44 * cosd((90.0f * var_f28))); + } + } + } + } + } + } + else { + for (var_r30 = 0; var_r30 < var_r31->unk_110; var_r30++) { + if ((var_r31->unk_178[var_r30] == -1) && ((var_r31->unk_F0[0] != var_r30) || (var_r31->unk_F0[1] != var_r30))) { + var_f30 = var_r31->unk_180[var_r30].x - var_f27; + var_f29 = var_r31->unk_DC * (var_r31->unk_180[var_r30].y - var_f26); + var_f31 = 0.425f * (var_r31->unk_180[var_r30].z - var_f25); + var_f28 = (var_f31 * var_f31) + ((var_f30 * var_f30) + (var_f29 * var_f29)); + if (var_f28 < 10000.0f) { + var_f28 = sqrtf((var_f31 * var_f31) + ((var_f30 * var_f30) + (var_f29 * var_f29))); + var_f28 = var_f28 * 0.01f; + var_r31->unk_180[var_r30].y -= (1.0f - var_f28) * var_f24; + if (var_r31->unk_180[var_r30].y < 1.0f) { + var_r31->unk_180[var_r30].y = 1.0f; + } + } + } + } + } + if (var_r29 < 5) { + if ((var_r31->unk_54[var_r29] -= 0.075f) <= 0.0f) { + var_r31->unk_54[var_r29] = 0.0f; + var_r31->unk_3C[var_r29] = -1; + var_r31->unk_6C[var_r29] = 0; + } + } + else { + var_r31->unk_54[var_r29] = 0.0f; + var_r31->unk_3C[var_r29] = -1; + var_r31->unk_6C[var_r29] = 0; + } + } + } + var_r31->unk_38 = 0; + memcpy(var_r31->unk_198, &var_r31->unk_180[var_r31->unk_144[0]], var_r31->unk_112[0] * 0xC); + var_r31->unk_19C = 0; + fn_1_DE3C(var_r31, var_r27); + if ((var_r31->unk_04 != -1) && (var_r31->unk_06 != -1)) { + mtxRot(sp70, 0.0f, var_r31->unk_D8, 0.0f); + sp70[1][0] *= var_r31->unk_DC; + sp70[1][1] *= var_r31->unk_DC; + sp70[1][2] *= var_r31->unk_DC; + var_f30 = var_r31->unk_180[var_r31->unk_06].x; + var_f29 = var_r31->unk_180[var_r31->unk_06].y; + var_f31 = var_r31->unk_180[var_r31->unk_06].z; + var_f27 = var_r31->unk_CC.x + ((sp70[0][2] * var_f31) + ((sp70[0][0] * var_f30) + (sp70[0][1] * var_f29))); + var_f26 = var_r31->unk_CC.y + ((sp70[1][2] * var_f31) + ((sp70[1][0] * var_f30) + (sp70[1][1] * var_f29))); + var_f25 = var_r31->unk_CC.z + ((sp70[2][2] * var_f31) + ((sp70[2][0] * var_f30) + (sp70[2][1] * var_f29))); + Hu3DModelPosSet(var_r31->unk_04, var_f27, var_f26, var_f25); + var_f30 = var_r31->unk_188[var_r31->unk_06].x; + var_f29 = var_r31->unk_188[var_r31->unk_06].y; + var_f31 = var_r31->unk_188[var_r31->unk_06].z; + sp64.x = var_f27 + (20.0f * var_f30); + sp64.y = var_f26 + (20.0f * var_f29); + sp64.z = var_f25 + (20.0f * var_f31); + sp48 = sqrtf((var_f30 * var_f30) + (var_f31 * var_f31)); + var_f27 = sp34 = atan2d(sp48, var_f29); + var_f26 = sp30 = atan2d(var_f30, var_f31); + var_f25 = sp2C = 0.0f; + Hu3DModelRotSet(var_r31->unk_04, var_f27, var_f26, var_f25); + var_r30 = (s32)(10.0f * var_r31->unk_18) / 40; + if (var_r30 > 0x10) { + var_r30 = 0x10; + } + for (var_r26 = 0; var_r26 < var_r30; var_r26++) { + var_f27 = sp34; + var_f26 = sp30; + var_f25 = sp2C; + var_f27 += 0.5f * ((s32)frand() % 48); + var_f30 = sind(var_f26) * sind(var_f27); + var_f31 = cosd(var_f26) * sind(var_f27); + var_f29 = cosd(var_f27); + sp28 = 12.0f - ((s32)frand() % 6); + sp58.x = var_f30; + sp58.y = var_f29; + sp58.z = var_f31; + fn_1_11454(&sp64, &sp58, 50.0f + (5.0f * var_r30), sp28); + } + } + DCFlushRangeNoSync(var_r31->unk_180, var_r31->unk_110 * 0xC); + DCFlushRangeNoSync(var_r31->unk_188, var_r31->unk_110 * 0xC); + PPCSync(); +} + +void fn_1_101C4(ModelData *var_r29, Mtx var_r28) +{ + Mtx sp50; + ROMtx sp20; + GXColor sp1C; + M425DllUnkStruct4 *var_r31; + s32 var_r30; + s16 var_r27; + + var_r31 = var_r29->unk_120; + GXLoadPosMtxImm(var_r28, 0); + PSMTXInvXpose(var_r28, sp50); + GXLoadNrmMtxImm(sp50, 0); + var_r27 = fn_1_115D4(var_r29, Hu3DCameraMtx, Hu3DCameraMtxXPose, 4.0f); + if (omPauseChk() == 0) { + fn_1_E914(var_r29, var_r28); + } + var_r29->scale.y = var_r31->unk_DC; + memcpy(sp50, lbl_1_data_16C, sizeof(lbl_1_data_16C)); + mtxRotCat(&sp50[0], CRot.x, CRot.y + var_r31->unk_D8, 180.0f); + GXLoadTexMtxImm(sp50, 0x36, GX_MTX2x4); + sp1C.a = lbl_1_bss_6D0; + GXSetTevColor(GX_TEVREG2, sp1C); + HuSprTexLoad(lbl_1_bss_6E0, 0, 0, GX_CLAMP, GX_CLAMP, GX_LINEAR); + HuSprTexLoad(lbl_1_bss_6DC, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetNumChans(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_NRM, 0x36, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR0A0); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_RASC, GX_CC_TEXC, GX_CC_A2, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + lbl_1_bss_6C8.r = var_r31->unk_23A.r; + lbl_1_bss_6C8.g = var_r31->unk_23A.g; + lbl_1_bss_6C8.b = var_r31->unk_23A.b; + lbl_1_bss_6C8.a = var_r31->unk_23A.a; + GXSetChanAmbColor(GX_COLOR0A0, lbl_1_bss_6C8); + GXSetChanMatColor(GX_COLOR0A0, lbl_1_data_168); + GXSetChanCtrl(GX_COLOR0A0, GX_TRUE, GX_SRC_REG, GX_SRC_REG, var_r27, GX_DF_CLAMP, GX_AF_SPEC); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZMode(1, GX_LEQUAL, GX_FALSE); + GXSetZCompLoc(0); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + if (HmfInverseMtxF3X3(var_r28, sp50) == 0) { + PSMTXIdentity(sp50); + } + PSMTXReorder(sp50, sp20); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, var_r31->unk_180, 0xC); + GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, var_r31->unk_188, 0xC); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &var_r31->unk_23A, 4); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_CLR_RGBA, GX_RGBA6, 0); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetArray(GX_VA_TEX0, var_r31->unk_184, 8); + for (var_r30 = 0; var_r30 < var_r31->unk_240; var_r30++) { + if (var_r31->unk_2A8[var_r30] && var_r31->unk_244[var_r30] != 0 && var_r30 != 1) { + GXCallDisplayList(var_r31->unk_2A8[var_r30], var_r31->unk_244[var_r30]); + } + } + GXSetNumTevStages(2); + GXSetNumTexGens(2); + GXSetNumChans(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_NRM, 0x36, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR0A0); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_RASC, GX_CC_TEXC, GX_CC_TEXA, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevOp(GX_TEVSTAGE1, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_CPREV, GX_CC_TEXC, GX_CC_A2, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_APREV, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + lbl_1_bss_6C8.r = var_r31->unk_23A.r; + lbl_1_bss_6C8.g = var_r31->unk_23A.g; + lbl_1_bss_6C8.b = var_r31->unk_23A.b; + lbl_1_bss_6C8.a = var_r31->unk_23A.a; + GXSetChanAmbColor(GX_COLOR0A0, lbl_1_bss_6C8); + GXSetChanMatColor(GX_COLOR0A0, lbl_1_data_168); + GXSetChanCtrl(GX_COLOR0A0, GX_TRUE, GX_SRC_REG, GX_SRC_REG, var_r27, GX_DF_CLAMP, GX_AF_SPEC); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + GXSetZCompLoc(0); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + GXClearVtxDesc(); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetArray(GX_VA_POS, var_r31->unk_180, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_TEX_S, GX_RGBA6, 0); + GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); + GXSetArray(GX_VA_NRM, var_r31->unk_188, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetArray(GX_VA_CLR0, &var_r31->unk_23A, 4); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetArray(GX_VA_TEX0, var_r31->unk_184, 8); + if (var_r31->unk_2A8[1] && (var_r31->unk_244[1] != 0)) { + GXCallDisplayList(var_r31->unk_2A8[1], var_r31->unk_244[1]); + } +} + +s32 fn_1_109EC(s32 arg0, s32 arg1, Vec *arg2, Vec *arg3, Vec *arg4, s32 arg5) +{ + float var_f31; + float var_f30; + M425DllUnkStruct4 *var_r31; + s32 var_r29; + ModelData *var_r26; + + if (!lbl_1_bss_6EC) { + return; + } + var_r26 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r31 = var_r26->unk_120; + if (var_r31->unk_0C != 0.0f) { + var_f30 = var_r31->unk_08 / var_r31->unk_0C; + } + else { + var_f30 = 1.0f; + } + var_r31->unk_24 = fn_1_10EF8(arg0, arg1, arg2->x, arg2->z); + arg4->x = arg2->x + arg3->x; + arg4->y = arg2->y + arg3->y; + arg4->z = arg2->z + arg3->z; + if ((arg4->y < var_r31->unk_24) && (arg3->y < 0.0f) && (var_r31->unk_34 >= 0)) { + var_f31 = -arg3->y; + if (var_f31 > 50.0f) { + var_f31 = 50.0f; + } + else if (var_f31 < 10.0f) { + var_f31 = 0.0f; + } + if ((var_f31 > 0.0f) && (arg5 != 0)) { + var_f31 = (var_f31 - 10.0f) / 40.0f; + var_r31->unk_20 += var_f31; + } + var_f31 = -arg3->y; + var_f31 = var_f31 * 0.02f; + if (var_r31->unk_34 >= 0) { + for (var_r29 = 0; var_r29 < var_r31->unk_38; var_r29++) { + if (var_r31->unk_84[var_r29] == var_r31->unk_34) { + break; + } + } + if (var_r29 >= var_r31->unk_38) { + var_r29 = var_r31->unk_38; + } + if (var_r29 < 6) { + var_r31->unk_84[var_r29] = var_r31->unk_34; + if (var_r31->unk_9C[var_r29] < var_f31) { + var_r31->unk_9C[var_r29] = var_f31; + var_r31->unk_B4[var_r29] = arg5; + } + var_r31->unk_38++; + } + } + arg4->y = var_r31->unk_24 - (150.0f * (var_f30 * var_f31)); + if (arg4->y < 1.0f) { + arg4->y = 1.0f; + } + return 1; + } + if (arg4->y < var_r31->unk_24) { + arg4->y = var_r31->unk_24; + } + return 0; +} + +float fn_1_10CF4(s32 arg0) +{ + ModelData *var_r31; + M425DllUnkStruct4 *var_r30; + + if (!lbl_1_bss_6EC) { + return; + } + var_r31 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r30 = var_r31->unk_120; + return var_r30->unk_08; +} + +void fn_1_10D54(s32 arg0, float arg8) +{ + ModelData *var_r31; + M425DllUnkStruct4 *var_r30; + + if (lbl_1_bss_6EC) { + var_r31 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r30 = var_r31->unk_120; + var_r30->unk_08 = arg8; + } +} + +void fn_1_10DB4(s32 arg0) +{ + M425DllUnkStruct4 *var_r31; + ModelData *var_r30; + + if (lbl_1_bss_6EC) { + var_r30 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r31 = var_r30->unk_120; + if (var_r31->unk_2C == 0) { + var_r31->unk_28 = 0; + var_r31->unk_2C = 0x28; + var_r31->unk_30 = 0.3f; + } + } +} + +void fn_1_10E3C(s32 arg0) +{ + M425DllUnkStruct4 *var_r31; + s32 var_r30; + ModelData *var_r29; + + if (lbl_1_bss_6EC) { + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r29 = &Hu3DData[lbl_1_bss_6EC->model[var_r30]]; + var_r31 = var_r29->unk_120; + if (arg0 != 0) { + var_r31->unk_110 = var_r31->unk_144[0x18] + var_r31->unk_112[24]; + var_r31->unk_240 = 0x19; + } + else { + var_r31->unk_110 = var_r31->unk_144[0x17] + var_r31->unk_112[23]; + var_r31->unk_240 = 0x18; + } + } + } +} + +float fn_1_10EF8(s32 arg0, s32 arg1, float arg8, float arg9) +{ + Mtx spC; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f25; + M425DllUnkStruct4 *var_r31; + Vec *var_r30; + s32 var_r29; + s32 var_r28; + ModelData *var_r26; + + if (!lbl_1_bss_6EC) { + return 0.0f; + } + var_r26 = &Hu3DData[lbl_1_bss_6EC->model[arg0]]; + var_r31 = var_r26->unk_120; + if ((arg1 >= 0) && (arg1 <= 2) && (var_r31->unk_F0[arg1] != -1)) { + var_r28 = var_r31->unk_F0[arg1]; + var_r31->unk_34 = var_r28; + if (var_r31->unk_19C == 0) { + return var_r31->unk_DC * var_r31->unk_198[var_r28].y; + } + return var_r31->unk_198[var_r28].y; + } + if (var_r31->unk_19C == 0) { + mtxRot(spC, 0.0f, var_r31->unk_D8, 0.0f); + spC[1][0] *= var_r31->unk_DC; + spC[1][1] *= var_r31->unk_DC; + spC[1][2] *= var_r31->unk_DC; + for (var_r29 = 0, var_r30 = var_r31->unk_198; var_r29 < var_r31->unk_112[0]; var_r29++, var_r30++) { + var_f31 = (spC[0][2] * var_r30->z) + ((spC[0][0] * var_r30->x) + (spC[0][1] * var_r30->y)); + var_f25 = (spC[1][2] * var_r30->z) + ((spC[1][0] * var_r30->x) + (spC[1][1] * var_r30->y)); + var_f30 = (spC[2][2] * var_r30->z) + ((spC[2][0] * var_r30->x) + (spC[2][1] * var_r30->y)); + var_r30->x = var_f31; + var_r30->y = var_f25; + var_r30->z = var_f30; + } + var_r31->unk_19C = 1; + } + arg8 -= var_r31->unk_CC.x; + arg9 -= var_r31->unk_CC.z; + var_f28 = 10000.0f; + var_r28 = -1; + for (var_r29 = 0, var_r30 = var_r31->unk_198; var_r29 < var_r31->unk_112[0]; var_r29++, var_r30++) { + var_f31 = arg8 - var_r30->x; + var_f30 = arg9 - var_r30->z; + if (!(fabs(var_f31) > 100.0)) { + if (!(fabs(var_f30) > 100.0)) { + var_f29 = (var_f31 * var_f31) + (var_f30 * var_f30); + if (var_f29 < var_f28) { + var_r28 = var_r29; + var_f28 = var_f29; + } + } + } + } + (void)var_r29; + var_r31->unk_34 = var_r28; + if ((arg1 >= 0) && (arg1 <= 2)) { + var_r31->unk_F0[arg1] = var_r28; + } + if (var_r28 >= 0) { + return var_r31->unk_198[var_r28].y; + } + return 0.0f; +} + +void fn_1_11284(void) +{ + lbl_1_bss_6D8 = HuSprAnimRead(HuDataReadNum(0x38000E, 0x10000000)); + lbl_1_bss_6D4 = fn_1_11A74(lbl_1_bss_6D8, 0x40); + Hu3DModelLayerSet(lbl_1_bss_6D4, 6); +} + +void fn_1_112FC(void) +{ + M425DllUnkStruct5 *var_r31; + M425DllUnkStruct6 *var_r30; + s32 var_r29; + ModelData *var_r28; + + var_r28 = &Hu3DData[lbl_1_bss_6D4]; + var_r30 = var_r28->unk_120; + for (var_r31 = var_r30->unk_3C, var_r29 = 0; var_r29 < var_r30->unk_24; var_r29++, var_r31++) { + if (!(var_r31->unk_28 <= 0.0f)) { + var_r31->unk_04.x = var_r31->unk_10.x * var_r31->unk_1C; + var_r31->unk_04.y = var_r31->unk_10.y * var_r31->unk_1C; + var_r31->unk_04.z = var_r31->unk_10.z * var_r31->unk_1C; + var_r31->unk_1C *= 0.95f; + PSVECAdd(&var_r31->unk_30, &var_r31->unk_04, &var_r31->unk_30); + if (++var_r31->unk_40 >= 0xF) { + var_r31->unk_40 = 0; + var_r31->unk_28 = 0.0f; + } + } + } +} + +void fn_1_11418(void) +{ + HuSprAnimKill(lbl_1_bss_6D8); + lbl_1_bss_6D8 = NULL; +} + +s32 fn_1_11454(Vec *arg0, Vec *arg1, float arg8, float arg9) +{ + M425DllUnkStruct5 *var_r31; + M425DllUnkStruct6 *var_r29; + s32 var_r28; + ModelData *var_r26; + + var_r26 = &Hu3DData[lbl_1_bss_6D4]; + var_r29 = var_r26->unk_120; + for (var_r31 = var_r29->unk_3C, var_r28 = 0; var_r28 < var_r29->unk_24; var_r28++, var_r31++) { + if (var_r31->unk_28 <= 0.0f) { + break; + } + } + if (var_r28 >= var_r29->unk_24) { + return -1; + } + var_r31->unk_30.x = arg0->x; + var_r31->unk_30.y = arg0->y; + var_r31->unk_30.z = arg0->z; + var_r31->unk_10.x = arg1->x; + var_r31->unk_10.y = arg1->y; + var_r31->unk_10.z = arg1->z; + var_r31->unk_04.x = arg1->x * arg9; + var_r31->unk_04.y = arg1->y * arg9; + var_r31->unk_04.z = arg1->z * arg9; + var_r31->unk_1C = arg9; + var_r31->unk_28 = arg8; + var_r31->unk_2C = (s32)frand() % 360; + var_r31->unk_3C.a = 0x40; + var_r31->unk_40 = 0; + return var_r28; +} + +s16 fn_1_115D4(ModelData *arg0, Mtx arg1, Mtx arg2, float arg8) +{ + s16 var_r31; + s16 var_r30; + LightData *var_r29; + s16 var_r27; + + var_r27 = 0; + var_r30 = 1; + for (var_r29 = Hu3DGlobalLight, var_r31 = 0; var_r31 < 8; var_r31++, var_r29++) { + if (var_r29->unk_00 != -1) { + var_r30 <<= 1; + } + } + if ((arg0->attr & 0x1000) != 0) { + for (var_r31 = 0; var_r31 < 8; var_r31++) { + if (arg0->unk_38[var_r31] != -1) { + var_r29 = &Hu3DLocalLight[arg0->unk_38[var_r31]]; + fn_1_116E4(arg0, var_r29, var_r30, arg2, arg1, arg8); + var_r27 |= var_r30; + var_r30 <<= 1; + } + } + } + return var_r27; +} + +void fn_1_116E4(ModelData *arg1, LightData *var_r31, s16 sp8, Mtx spC, Mtx sp10, float var_f31) +{ + switch ((u8)var_r31->unk_00) { + case 0: + GXInitLightAttn(&lbl_1_bss_688, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f); + GXInitLightSpot(&lbl_1_bss_688, var_r31->unk_04, var_r31->unk_02); + break; + case 1: + GXInitLightAttn(&lbl_1_bss_688, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f); + PSVECScale(&var_r31->unk_28, &var_r31->unk_1C, -100000.0f); + break; + case 2: + GXInitLightAttn(&lbl_1_bss_688, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); + GXInitLightDistAttn(&lbl_1_bss_688, var_r31->unk_04, var_r31->unk_08, var_r31->unk_02); + break; + } + if ((var_r31->unk_00 & 0x8000) != 0) { + PSMTXMultVec(spC, &var_r31->unk_28, &lbl_1_bss_67C); + PSMTXMultVec(sp10, &var_r31->unk_1C, &lbl_1_bss_670); + GXInitLightPos(&lbl_1_bss_688, lbl_1_bss_670.x, lbl_1_bss_670.y, lbl_1_bss_670.z); + } + else { + GXInitLightPos(&lbl_1_bss_688, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); + lbl_1_bss_67C = var_r31->unk_28; + } + if (var_f31 == 0.0f) { + GXInitLightDir(&lbl_1_bss_688, lbl_1_bss_67C.x, lbl_1_bss_67C.y, lbl_1_bss_67C.z); + } + else { + GXInitSpecularDir(&lbl_1_bss_688, lbl_1_bss_67C.x, lbl_1_bss_67C.y, lbl_1_bss_67C.z); + GXInitLightAttn(&lbl_1_bss_688, 0.0f, 0.0f, 1.0f, var_f31 / 2, 0.0f, 1.0f - (var_f31 / 2)); + } + GXInitLightColor(&lbl_1_bss_688, var_r31->color); + GXLoadLightObjImm(&lbl_1_bss_688, sp8); +} + +s16 fn_1_11A74(AnimData *arg0, s16 arg1) +{ + M425DllUnkStruct6 *var_r31; + s16 var_r30; + Vec2f *var_r29; + M425DllUnkStruct5 *var_r28; + ModelData *var_r27; + Vec *var_r26; + void *var_r24; + s16 var_r23; + void *var_r21; + + var_r23 = Hu3DHookFuncCreate(fn_1_11EE0); + var_r27 = &Hu3DData[var_r23]; + var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M425DllUnkStruct6), var_r27->unk_48); + var_r27->unk_120 = var_r31; + var_r31->unk_38 = arg0; + arg0->useNum++; + var_r31->unk_24 = arg1; + var_r31->unk_20 = 0; + var_r31->unk_4C = 0; + var_r31->unk_28 = 0; + var_r31->unk_21 = 0; + var_r31->unk_30 = 0; + var_r31->unk_00 = var_r31->unk_02 = 0; + var_r28 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(M425DllUnkStruct5), var_r27->unk_48); + var_r31->unk_3C = var_r28; + for (var_r30 = 0; var_r30 < arg1; var_r30++, var_r28++) { + var_r28->unk_28 = 0.0f; + var_r28->unk_2C = 0.0f; + var_r28->unk_30.x = (s32)((frand() & 0x7F) - 0x40) * 0x14; + var_r28->unk_30.y = (s32)((frand() & 0x7F) - 0x40) * 0x1E; + var_r28->unk_30.z = (s32)((frand() & 0x7F) - 0x40) * 0x14; + var_r28->unk_3C.r = var_r28->unk_3C.g = var_r28->unk_3C.b = var_r28->unk_3C.a = 0xFF; + var_r28->unk_40 = 0; + } + var_r26 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(Vec) * 4, var_r27->unk_48); + var_r31->unk_40 = var_r26; + for (var_r30 = 0; var_r30 < (arg1 * 4); var_r30++, var_r26++) { + var_r26->x = var_r26->y = var_r26->z = 0.0f; + } + var_r29 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(Vec2f) * 4, var_r27->unk_48); + var_r31->unk_44 = var_r29; + for (var_r30 = 0; var_r30 < arg1; var_r30++) { + var_r29->x = 0.0f; + var_r29->y = 0.0f; + var_r29++; + var_r29->x = 1.0f; + var_r29->y = 0.0f; + var_r29++; + var_r29->x = 1.0f; + var_r29->y = 1.0f; + var_r29++; + var_r29->x = 0.0f; + var_r29->y = 1.0f; + var_r29++; + } + var_r24 = HuMemDirectMallocNum(HEAP_DATA, 0x4000, var_r27->unk_48); + var_r21 = var_r24; + DCFlushRange(var_r24, 0x4000); + GXBeginDisplayList(var_r21, 0x4000); + GXBegin(GX_QUADS, GX_VTXFMT0, arg1 * 4); + for (var_r30 = 0; var_r30 < arg1; var_r30++) { + GXUnknownu16(var_r30 * 4); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4); + GXUnknownu16(var_r30 * 4 + 1); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4 + 1); + GXUnknownu16(var_r30 * 4 + 2); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4 + 2); + GXUnknownu16(var_r30 * 4 + 3); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4 + 3); + } + var_r31->unk_34 = GXEndDisplayList(); + var_r31->unk_48 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_34, var_r27->unk_48); + memcpy(var_r31->unk_48, var_r24, var_r31->unk_34); + DCFlushRange(var_r31->unk_48, var_r31->unk_34); + HuMemDirectFree(var_r24); + return var_r23; +} + +void fn_1_11EE0(ModelData *var_r24, Mtx var_r21) +{ + Mtx sp128; + Mtx spF8; + Mtx spC8; + Vec sp98[4]; + Vec sp68[4]; + Vec sp38[4]; + ROMtx sp8; + M425DllUnkStruct6 *var_r31; + Vec *var_r30; + M425DllUnkStruct5 *var_r29; + Vec *var_r28; + Vec *var_r27; + Vec2f *var_r26; + s16 var_r25; + s16 var_r23; + s16 var_r22; + s16 var_r20; + s16 var_r19; + UnkHook var_r18; + + var_r31 = var_r24->unk_120; + if ((var_r31->unk_2C != GlobalCounter) || (shadowModelDrawF != 0)) { + GXLoadPosMtxImm(var_r21, 0); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + if (shadowModelDrawF != 0) { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ONE, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetZMode(0, GX_LEQUAL, 0); + } + else { + var_r22 = var_r31->unk_38->bmp->dataFmt & 0xF; + if ((var_r22 == 7) || (var_r22 == 8)) { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ONE, GX_CC_RASC, GX_CC_ZERO); + } + else { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); + } + if ((var_r24->attr & 2) != 0) { + GXSetZMode(1, GX_LEQUAL, GX_TRUE); + } + else { + GXSetZMode(1, GX_LEQUAL, GX_FALSE); + } + } + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + HuSprTexLoad(var_r31->unk_38, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(0); + switch (var_r31->unk_20) { + case 0: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + break; + case 1: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_NOOP); + break; + case 2: + GXSetBlendMode(GX_BM_BLEND, GX_BL_ZERO, GX_BL_INVDSTCLR, GX_LO_NOOP); + break; + } + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_POS, var_r31->unk_40, 0xC); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &var_r31->unk_3C->unk_3C, 0x44); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_TEX0, var_r31->unk_44, 8); + if (HmfInverseMtxF3X3(var_r21, sp128) == 0) { + PSMTXIdentity(sp128); + } + PSMTXReorder(sp128, &sp8[0]); + if (var_r31->unk_4C) { + var_r18 = var_r31->unk_4C; + var_r18(var_r24, var_r31, var_r21); + } + var_r29 = var_r31->unk_3C; + var_r30 = var_r31->unk_40; + var_r26 = var_r31->unk_44; + PSMTXROMultVecArray(sp8, lbl_1_data_19C, &sp38[0], 4); + for (var_r23 = 0; var_r23 < var_r31->unk_24; var_r23++, var_r29++) { + if (!var_r29->unk_28) { + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + } + else { + if (!var_r29->unk_2C) { + var_r28 = &sp98[0]; + var_r27 = &sp38[0]; + PSVECScale(var_r27++, var_r28, var_r29->unk_28); + PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); + PSVECScale(var_r27++, var_r28, var_r29->unk_28); + PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); + PSVECScale(var_r27++, var_r28, var_r29->unk_28); + PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); + PSVECScale(var_r27++, var_r28, var_r29->unk_28); + PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); + } + else { + PSVECScale(lbl_1_data_19C, &sp98[0], var_r29->unk_28); + PSVECScale(&lbl_1_data_19C[1], &sp98[1], var_r29->unk_28); + PSVECScale(&lbl_1_data_19C[2], &sp98[2], var_r29->unk_28); + PSVECScale(&lbl_1_data_19C[3], &sp98[3], var_r29->unk_28); + PSMTXRotRad(spC8, 0x5A, var_r29->unk_2C); + PSMTXConcat(sp128, spC8, spF8); + PSMTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); + PSVECAdd(&sp68[0], &var_r29->unk_30, var_r30++); + PSVECAdd(&sp68[1], &var_r29->unk_30, var_r30++); + PSVECAdd(&sp68[2], &var_r29->unk_30, var_r30++); + PSVECAdd(&sp68[3], &var_r29->unk_30, var_r30++); + } + var_r20 = var_r29->unk_40 & 3; + var_r19 = (var_r29->unk_40 >> 2) & 3; + for (var_r25 = 0; var_r25 < 4; var_r25++, var_r26++) { + var_r26->x = (0.25f * var_r20) + lbl_1_data_1CC[var_r25].x; + var_r26->y = (0.25f * var_r19) + lbl_1_data_1CC[var_r25].y; + } + } + } + DCFlushRangeNoSync(var_r31->unk_40, var_r31->unk_24 * 0xC * 4); + DCFlushRangeNoSync(var_r31->unk_44, var_r31->unk_24 * 8 * 4); + PPCSync(); + GXCallDisplayList(var_r31->unk_48, var_r31->unk_34); + if (shadowModelDrawF == 0) { + if ((var_r31->unk_21 & 2) == 0) { + var_r31->unk_28++; + } + if ((var_r31->unk_30 != 0) && (var_r31->unk_30 <= var_r31->unk_28)) { + if ((var_r31->unk_21 & 1) != 0) { + var_r31->unk_28 = 0; + } + var_r31->unk_28 = var_r31->unk_30; + } + var_r31->unk_2C = GlobalCounter; + } + } +} From 496c8544e585c992bfc9c1c21750c1dea8a653ff Mon Sep 17 00:00:00 2001 From: mrshigure Date: Wed, 8 Jan 2025 15:19:36 -0800 Subject: [PATCH 104/178] Matched mstoryDll (US) (#512) --- config/GMPE01_00/rels/mstoryDll/splits.txt | 4 +- config/GMPE01_00/rels/mstoryDll/symbols.txt | 530 +++++----- configure.py | 12 +- include/REL/mstoryDll.h | 96 ++ include/game/gamework_data.h | 5 + src/REL/mstoryDll/board_clear.c | 622 ++++++++++++ src/REL/mstoryDll/board_miss.c | 817 +++++++++++++++ src/REL/mstoryDll/main.c | 1012 +++++++++++++++++++ src/REL/mstoryDll/mg_clear.c | 691 +++++++++++++ src/REL/mstoryDll/mg_miss.c | 446 ++++++++ src/REL/mstoryDll/save.c | 116 +++ 11 files changed, 4078 insertions(+), 273 deletions(-) create mode 100755 include/REL/mstoryDll.h create mode 100755 src/REL/mstoryDll/board_clear.c create mode 100755 src/REL/mstoryDll/board_miss.c create mode 100755 src/REL/mstoryDll/main.c create mode 100755 src/REL/mstoryDll/mg_clear.c create mode 100755 src/REL/mstoryDll/mg_miss.c create mode 100755 src/REL/mstoryDll/save.c diff --git a/config/GMPE01_00/rels/mstoryDll/splits.txt b/config/GMPE01_00/rels/mstoryDll/splits.txt index 1c6cb09d..14c897fa 100644 --- a/config/GMPE01_00/rels/mstoryDll/splits.txt +++ b/config/GMPE01_00/rels/mstoryDll/splits.txt @@ -10,13 +10,13 @@ REL/mstoryDll/main.c: .text start:0x00000000 end:0x00007090 .rodata start:0x00000000 end:0x00000108 .data start:0x00000000 end:0x00000190 - .bss start:0x00000000 end:0x00000058 + .bss start:0x00000000 end:0x000000A8 REL/mstoryDll/board_clear.c: .text start:0x00007090 end:0x0000A830 .rodata start:0x00000108 end:0x00000268 .data start:0x00000190 end:0x00000388 - .bss start:0x00000058 end:0x000002C8 + .bss start:0x000000A8 end:0x000002C8 REL/mstoryDll/board_miss.c: .text start:0x0000A830 end:0x0000E710 diff --git a/config/GMPE01_00/rels/mstoryDll/symbols.txt b/config/GMPE01_00/rels/mstoryDll/symbols.txt index 9bc5210b..92563350 100644 --- a/config/GMPE01_00/rels/mstoryDll/symbols.txt +++ b/config/GMPE01_00/rels/mstoryDll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x344 _prolog = .text:0x000003E8; // type:function size:0x54 scope:global _epilog = .text:0x0000043C; // type:function size:0x4C scope:global fn_1_488 = .text:0x00000488; // type:function size:0x1D0 -fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +ObjectSetup = .text:0x00000658; // type:function size:0x1D0 fn_1_828 = .text:0x00000828; // type:function size:0x28 fn_1_850 = .text:0x00000850; // type:function size:0x20 fn_1_870 = .text:0x00000870; // type:function size:0xD8 @@ -189,281 +189,281 @@ fn_1_13E2C = .text:0x00013E2C; // type:function size:0x324 fn_1_14150 = .text:0x00014150; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float -lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte -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:0x14 data:4byte -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC 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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +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:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xA scope:local data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC 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:0x14 scope:local data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 scope:local +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 scope:local +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 scope:local +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string -lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string -lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string -lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 scope:local data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 scope:local data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A scope:local data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 scope:local data:string lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 -lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string -lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string -lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string -lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string -lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string -lbl_1_data_17F = .data:0x0000017F; // type:object size:0xE data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 scope:local data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 scope:local data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 scope:local data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A scope:local data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A scope:local data:string +lbl_1_data_17F = .data:0x0000017F; // type:object size:0xE scope:local data:string lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string -lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string -lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string -lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string -lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string -lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string -lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string -lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string -lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string -lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string -lbl_1_data_338 = .data:0x00000338; // type:object size:0x1A data:string -lbl_1_data_354 = .data:0x00000354; // type:object size:0x30 +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 scope:local data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 scope:local data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 scope:local data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 scope:local data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 scope:local data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 scope:local data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 scope:local data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 scope:local data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF scope:local data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C scope:local data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D scope:local data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF scope:local data:string +lbl_1_data_338 = .data:0x00000338; // type:object size:0x1A scope:local data:string +lbl_1_data_354 = .data:0x00000354; // type:object size:0x30 data:float lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C -lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string -lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string -lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string -lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string -lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string -lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string -lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string -lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string -lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string -lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string -lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string -lbl_1_data_537 = .data:0x00000537; // type:object size:0x8 data:string -lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 scope:local data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 scope:local data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 scope:local data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 scope:local data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 scope:local data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 scope:local data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 scope:local data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA scope:local data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C scope:local data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D scope:local data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF scope:local data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B scope:local data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 scope:local data:string +lbl_1_data_537 = .data:0x00000537; // type:object size:0x8 scope:local data:string +lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 data:float lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 -lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string -lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string -lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string -lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string -lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string -lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string -lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string -lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string -lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string -lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string -lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string -lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string -lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string -lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string -lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string -lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string -lbl_1_data_AED = .data:0x00000AED; // type:object size:0x7 data:string +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 scope:local data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 scope:local data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 scope:local data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 scope:local data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 scope:local data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 scope:local data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 scope:local data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 scope:local data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF scope:local data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C scope:local data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D scope:local data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C scope:local data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 scope:local data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF scope:local data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 scope:local data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA scope:local data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 scope:local data:string +lbl_1_data_AED = .data:0x00000AED; // type:object size:0x7 scope:local data:string lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C -lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string -lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string -lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string -lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string -lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string -lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string -lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string -lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string -lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string -lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string -lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string -lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string -lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x1A data:string -lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 scope:local data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 scope:local data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 scope:local data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 scope:local data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 scope:local data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 scope:local data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 scope:local data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 scope:local data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF scope:local data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C scope:local data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D scope:local data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF scope:local data:string +lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x1A scope:local data:string +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0xC data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index afd42860..a4d446ec 100644 --- a/configure.py +++ b/configure.py @@ -1398,12 +1398,12 @@ config.libs = [ Rel( "mstoryDll", objects={ - Object(NonMatching, "REL/mstoryDll/main.c"), - Object(NonMatching, "REL/mstoryDll/board_clear.c"), - Object(NonMatching, "REL/mstoryDll/board_miss.c"), - Object(NonMatching, "REL/mstoryDll/mg_clear.c"), - Object(NonMatching, "REL/mstoryDll/mg_miss.c"), - Object(NonMatching, "REL/mstoryDll/save.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/main.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/board_clear.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/board_miss.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/mg_clear.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/mg_miss.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/save.c"), }, ), Rel( diff --git a/include/REL/mstoryDll.h b/include/REL/mstoryDll.h new file mode 100755 index 00000000..b948d6ff --- /dev/null +++ b/include/REL/mstoryDll.h @@ -0,0 +1,96 @@ +#ifndef MSTORYDLL_H +#define MSTORYDLL_H + +#include "game/object.h" +#include "game/process.h" + +#include "dolphin/types.h" + +typedef struct { + /* 0x00 */ void (*unk00)(void); + /* 0x04 */ void (*unk04)(void); + /* 0x08 */ Vec unk08; + /* 0x14 */ float unk14; + /* 0x18 */ float unk18; + /* 0x1C */ float unk1C; + /* 0x20 */ Vec unk20; + /* 0x2C */ float unk2C; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; + /* 0x38 */ float unk38; + /* 0x3C */ float unk3C; + /* 0x40 */ s32 unk40; +} StructBss4; // Size 0x44 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ char unk1C[0x18]; +} StructFn352C; // Size 0x34 + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ void (*unk04)(omObjData*, ...); + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ char unk10[0x18]; +} StructBss19C; // Size 0x28 + +// main.c +float fn_1_828(float arg0, float arg1, float arg2, float arg3); +float fn_1_870(float arg0, float arg1, float arg2, float arg3); +float fn_1_948(float arg0, float arg1, float arg2, float arg3); +float fn_1_ACC(float arg0, float arg1, float arg2, float arg3); +void fn_1_B8C(void); +void fn_1_BAC(s32 arg0); +void fn_1_BF4(void); +s32 fn_1_1834(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_1A64(s32 arg0); +void fn_1_1ACC(s32 arg0, s32 arg1); +BOOL fn_1_1B78(s32 arg0, s32 arg1); +BOOL fn_1_1C34(s32 arg0); +void fn_1_1CE8(s32 arg0, s32 arg1); +void fn_1_1D1C(s32 arg0, s32 arg1, s32 arg2); +void fn_1_1DCC(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_2224(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3); +void fn_1_2710(void (*arg0)(void)); +void fn_1_27E8(Process* arg0, void (*arg1)(void)); +void fn_1_2908(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5); +void fn_1_2CB0(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5); +void fn_1_352C(StructFn352C* arg0, s32 arg1); +s32 fn_1_3618(s32 arg0); +void fn_1_3704(void); +void fn_1_3804(StructBss4* arg0); +void fn_1_3ABC(StructBss4* arg0, float arg1); +void fn_1_51D0(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4); +void fn_1_61E8(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4); +void fn_1_6C1C(s32 arg0, s32 arg1, s32 arg2, s32 arg3); +s32 fn_1_6EB8(s32 arg0, s32 arg1); +void fn_1_7028(s32 arg0); + +// board_clear.c +void fn_1_79B8(Process* arg0, s32 arg1, s32 arg2); + +// board_miss.c +void fn_1_ACFC(Process* arg0, s32 arg1, s32 arg2); + +// mg_clear.c +void fn_1_E710(Process* arg0, s32 arg1, s32 arg2); + +// mg_miss.c +void fn_1_11624(Process* arg0, s32 arg1, s32 arg2); + +// save.c +void fn_1_14150(Process* arg0); + +extern s32 lbl_1_bss_68; +extern s32 lbl_1_bss_58[]; +extern StructBss4 lbl_1_bss_4; +extern s32 lbl_1_data_0[][4]; + +#endif diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index 08b3e075..330e0f86 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -314,6 +314,11 @@ static inline s32 GWPlayerCurrGet(void) return GWSystem.player_curr; } +static inline s32 GWUnkB1Get(void) +{ + return GWSystem.unk0B[1]; +} + static inline s32 GWPlayerTeamGet(s32 player) { return GWPlayer[player].team; diff --git a/src/REL/mstoryDll/board_clear.c b/src/REL/mstoryDll/board_clear.c new file mode 100755 index 00000000..e5e5612b --- /dev/null +++ b/src/REL/mstoryDll/board_clear.c @@ -0,0 +1,622 @@ +#include "REL/mstoryDll.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/printfunc.h" +#include "game/window.h" +#include "game/wipe.h" + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ char unk0C[4]; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ char unk18[0x1C]; + /* 0x34 */ StructFn352C unk34[4]; +} StructBss1C4; // Size 0x104 + +void fn_1_8A44(void); +void fn_1_8DC0(omObjData* arg0, StructBss19C* arg1); +void fn_1_8E6C(omObjData* arg0, StructBss19C* arg1); +void fn_1_8F68(void); +void fn_1_92D4(s32 arg0); +void fn_1_9718(omObjData* arg0, StructBss19C* arg1); +void fn_1_98A4(omObjData* arg0, StructBss19C* arg1); +void fn_1_992C(void); +void fn_1_A008(omObjData* arg0, StructBss19C* arg1); +void fn_1_A0EC(void); +void fn_1_A478(void); +void fn_1_A504(void); +void fn_1_A5F4(void); + +StructBss1C4 lbl_1_bss_1C4; +StructBss19C lbl_1_bss_19C; +StructBss19C lbl_1_bss_174; +StructBss19C lbl_1_bss_D4[4]; +StructBss19C lbl_1_bss_AC; +Process* lbl_1_bss_A8; + +s32 lbl_1_data_190[][4] = { + { MAKE_MESSID(30, 17), MAKE_MESSID(30, 23), MAKE_MESSID(30, 62), MAKE_MESSID(30, 63) }, + { MAKE_MESSID(30, 18), MAKE_MESSID(30, 24), MAKE_MESSID(30, 64), MAKE_MESSID(30, 65) }, + { MAKE_MESSID(30, 19), MAKE_MESSID(30, 25), MAKE_MESSID(30, 66), MAKE_MESSID(30, 67) }, + { MAKE_MESSID(30, 20), MAKE_MESSID(30, 26), MAKE_MESSID(30, 68), MAKE_MESSID(30, 69) }, + { MAKE_MESSID(30, 21), MAKE_MESSID(30, 27), MAKE_MESSID(30, 70), MAKE_MESSID(30, 71) } +}; + +s32 lbl_1_data_1E0[][3] = { + { MAKE_MESSID(30, 101), MAKE_MESSID(30, 102), MAKE_MESSID(30, 103) }, + { MAKE_MESSID(30, 104), MAKE_MESSID(30, 105), MAKE_MESSID(30, 106) }, + { MAKE_MESSID(30, 107), MAKE_MESSID(30, 108), MAKE_MESSID(30, 109) }, + { MAKE_MESSID(30, 110), MAKE_MESSID(30, 111), MAKE_MESSID(30, 112) }, + { MAKE_MESSID(30, 113), MAKE_MESSID(30, 114), MAKE_MESSID(30, 115) } +}; + +void fn_1_7090(s32 arg0, StructBss19C* arg1) { + fn_1_BAC(10); + fn_1_1DCC(lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk00, 1, 5, 15, 0); + fn_1_BAC(5); + HuAudCharVoicePlay(lbl_1_bss_1C4.unk34[lbl_1_bss_1C4.unk04].unk10, 0x128); + fn_1_BAC(25); + arg1->unk04 = 0; +} + +void fn_1_7134(s32 arg0, StructBss19C* arg1) { + float temp_f31; + float temp_f30; + float temp_f29; + s32 i; + + temp_f29 = Hu3DData[lbl_1_bss_174.unk00->model[7]].pos.y; + for (i = 0; i <= 30; i++) { + fn_1_B8C(); + temp_f31 = fn_1_870(temp_f29, 1000.0f, i, 30.0f); + temp_f30 = fn_1_870(0.0f, 1800.0f, i, 30.0f); + Hu3DModelPosSet(lbl_1_bss_174.unk00->model[7], 0.0f, temp_f31, 800.0f); + Hu3DModelRotSet(lbl_1_bss_174.unk00->model[7], 0.0f, temp_f30, 0.0f); + Hu3DModelPosSet(lbl_1_bss_174.unk00->model[8], 0.0f, temp_f31 + 15.0f, 775.0f); + } + arg1->unk04 = 0; +} + +void fn_1_731C(s32 arg0) { + float temp_f31; + float temp_f30; + s32 var_r30; + s32 i; + + var_r30 = arg0; + Hu3DModelAttrReset(lbl_1_bss_174.unk00->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(lbl_1_bss_174.unk00->model[6], HU3D_ATTR_DISPOFF); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_1C4.unk34[i].unk00 != lbl_1_bss_1C4.unk34[lbl_1_bss_1C4.unk04].unk00) { + Hu3DModelAttrSet(lbl_1_bss_D4[i].unk00->model[1], HU3D_ATTR_DISPOFF); + } + Hu3DModelAttrSet(lbl_1_bss_D4[i].unk00->model[2], HU3D_ATTR_DISPOFF); + } + lbl_1_bss_1C4.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_1C4.unk10); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 3, 15, 1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, lbl_1_data_1E0[var_r30][0]); + fn_1_1ACC(lbl_1_bss_1C4.unk08, -1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, MAKE_MESSID(37, 4)); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 1, 15, 1); + fn_1_1A64(lbl_1_bss_1C4.unk08); + Hu3DModelPosSet(lbl_1_bss_174.unk00->model[7], 0.0f, 1000.0f, 640.0f); + Hu3DModelAttrReset(lbl_1_bss_174.unk00->model[7], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(lbl_1_bss_174.unk00->model[8], HU3D_ATTR_DISPOFF); + for (i = 0; i <= 180; i++) { + fn_1_B8C(); + temp_f31 = fn_1_948(1000.0f, 150.0f, i, 180.0f); + temp_f30 = fn_1_948(1800.0f, 0.0f, i, 180.0f); + Hu3DModelPosSet(lbl_1_bss_174.unk00->model[7], 0.0f, temp_f31, 800.0f); + Hu3DModelRotSet(lbl_1_bss_174.unk00->model[7], 0.0f, temp_f30, 0.0f); + Hu3DModelPosSet(lbl_1_bss_174.unk00->model[8], 0.0f, temp_f31 + 15.0f, 775.0f); + } + lbl_1_bss_174.unk04 = (void*) fn_1_8E6C; + fn_1_1DCC(lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk00, 1, 6, 15, 0); + lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 = (void*) fn_1_98A4; + fn_1_BAC(40); + HuAudSeqFadeOut(lbl_1_bss_58[0], 1000); + fn_1_BAC(50); + lbl_1_bss_58[1] = HuAudSeqPlay(0x35); + lbl_1_bss_1C4.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_1C4.unk10); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 3, 15, 1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, lbl_1_data_1E0[var_r30][1]); + fn_1_1ACC(lbl_1_bss_1C4.unk08, -1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, MAKE_MESSID(37, 4)); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 1, 15, 1); + fn_1_1A64(lbl_1_bss_1C4.unk08); + fn_1_BAC(30); + fn_1_1DCC(lbl_1_bss_174.unk00, 2, 3, 0, 0); + lbl_1_bss_174.unk04 = (void*) fn_1_8DC0; + fn_1_BAC(30); + lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 = (void*) fn_1_7090; + fn_1_BAC(90); + lbl_1_bss_AC.unk04 = (void*) fn_1_7134; + lbl_1_bss_1C4.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_1C4.unk10); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 5, 15, 1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, lbl_1_data_1E0[lbl_1_bss_1C4.unk00][2]); + fn_1_1ACC(lbl_1_bss_1C4.unk08, -1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, MAKE_MESSID(37, 4)); + fn_1_1A64(lbl_1_bss_1C4.unk08); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1C4.unk00][3]); +} + +void fn_1_79B8(Process* arg0, s32 arg1, s32 arg2) { + s32 i; + + lbl_1_bss_A8 = arg0; + lbl_1_bss_1C4.unk00 = arg1; + lbl_1_bss_1C4.unk10 = arg2; + fn_1_BF4(); + fn_1_3618(0xFF); + fn_1_27E8(lbl_1_bss_A8, fn_1_A478); + fn_1_3704(); + fn_1_92D4(arg2); + HuPrcChildCreate(fn_1_8F68, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_A0EC, 100, 0x2000, 0, HuPrcCurrentGet()); + for (i = 0; i < 4; i++) { + HuPrcChildCreate(fn_1_992C, 100, 0x2000, 0, HuPrcCurrentGet()); + } + HuPrcChildCreate(fn_1_8A44, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +void fn_1_7AE0(void) { + s32 var_r30 = 16; + s32 var_r29 = 40; + GXColor sp10 = { 0x00, 0x00, 0x80, 0x80 }; + s32 i; + + while (TRUE) { + fn_1_B8C(); + fontcolor = FONT_COLOR_WHITE; + printWin(var_r30, var_r29, 220, 150, &sp10); + if (lbl_1_bss_19C.unk04 == NULL) { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> FALSE"); + } else { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> TRUE"); + } + if (lbl_1_bss_174.unk04 == NULL) { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> FALSE"); + } else { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> TRUE"); + } + for (i = 0; i < 4; i++) { + if (lbl_1_bss_D4[i].unk04 == NULL) { + print8(var_r30, i * 10 + (var_r29 + 20), 1.0f, "PROC_PLAYER%d -> FALSE", i); + } else { + print8(var_r30, i * 10 + (var_r29 + 20), 1.0f, "PROC_PLAYER%d -> TRUE", i); + } + } + if (lbl_1_bss_AC.unk04 == NULL) { + print8(var_r30, var_r29 + 60, 1.0f, "PROC_SUB -> FALSE"); + } else { + print8(var_r30, var_r29 + 60, 1.0f, "PROC_SUB -> TRUE"); + } + print8(var_r30, var_r29 + 80, 1.0f, "M:%d P:%d W:%d", lbl_1_bss_1C4.unk00, lbl_1_bss_1C4.unk04, lbl_1_bss_1C4.unk10); + print8(var_r30, var_r29 + 100, 1.0f, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(var_r30, var_r29 + 110 + i * 10, 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, + lbl_1_bss_1C4.unk34[i].unk00, lbl_1_bss_1C4.unk34[i].unk04, lbl_1_bss_1C4.unk34[i].unk08, + lbl_1_bss_1C4.unk34[i].unk0C, lbl_1_bss_1C4.unk34[i].unk14, lbl_1_bss_1C4.unk34[i].unk10); + } + } +} + +void fn_1_7E70(void) { + lbl_1_bss_58[0] = HuAudSeqPlay(0x33); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_BAC(60); +} + +void fn_1_7ECC(void) { + s32 spC = 0; + s32 sp8 = 0; + + lbl_1_bss_1C4.unk08 = fn_1_1834(0, 0, 21, 2, lbl_1_bss_1C4.unk10); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 3, 15, 1); + fn_1_1D1C(lbl_1_bss_1C4.unk08, lbl_1_bss_1C4.unk34[lbl_1_bss_1C4.unk04].unk10, 0); + fn_1_1CE8(lbl_1_bss_1C4.unk08, lbl_1_data_190[lbl_1_bss_1C4.unk00][0]); + fn_1_1ACC(lbl_1_bss_1C4.unk08, -1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, MAKE_MESSID(37, 4)); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 1, 15, 1); + fn_1_1A64(lbl_1_bss_1C4.unk08); + lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 = (void*) fn_1_9718; + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_A504); + do { + fn_1_B8C(); + } while (lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 != NULL); + do { + fn_1_B8C(); + } while (lbl_1_bss_AC.unk04 != NULL); +} + +void fn_1_8090(void) { + lbl_1_bss_1C4.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_1C4.unk10); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 3, 15, 1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, lbl_1_data_190[lbl_1_bss_1C4.unk00][2]); + fn_1_1ACC(lbl_1_bss_1C4.unk08, -1); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 1, 15, 1); + fn_1_1A64(lbl_1_bss_1C4.unk08); + fn_1_1DCC(lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk00, 1, 6, 15, 0); + lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 = (void*) fn_1_98A4; + Hu3DModelAttrReset(lbl_1_bss_174.unk00->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(lbl_1_bss_174.unk00->model[6], HU3D_ATTR_DISPOFF); + fn_1_BAC(180); + HuAudSeqFadeOut(lbl_1_bss_58[0], 1000); + fn_1_1DCC(lbl_1_bss_174.unk00, 2, 3, 0, 0); + fn_1_BAC(75); + lbl_1_bss_58[1] = HuAudSeqPlay(0x35); + lbl_1_bss_1C4.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_1C4.unk10); + fn_1_1DCC(lbl_1_bss_AC.unk00, 1, 4, 15, 1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, lbl_1_data_190[lbl_1_bss_1C4.unk00][3]); + lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 = NULL; + lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 = (void*) fn_1_7090; + fn_1_1ACC(lbl_1_bss_1C4.unk08, -1); + fn_1_1CE8(lbl_1_bss_1C4.unk08, MAKE_MESSID(37, 4)); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1C4.unk00][3]); + fn_1_1A64(lbl_1_bss_1C4.unk08); + do { + fn_1_B8C(); + } while (lbl_1_bss_D4[lbl_1_bss_1C4.unk04].unk04 != NULL); +} + +void fn_1_83B0(void) { + fn_1_BAC(60); + HuAudSeqFadeOut(lbl_1_bss_58[1], 3000); + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_A5F4); + fn_1_BAC(150); +} + +void fn_1_8408(void) { + omOvlHisData* var_r30; + u16 sp8[] = { 53, 56, 55, 54, 57 }; + s32 sp14[] = { 9, 14, 10, 11, 12 }; + s32 var_r29; + s32 var_r28; + s32 i; + + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + CharModelKill(-1); + MGSeqKillAll(); + var_r29 = lbl_1_bss_1C4.unk34[lbl_1_bss_1C4.unk04].unk10; + var_r28 = lbl_1_bss_1C4.unk34[lbl_1_bss_1C4.unk04].unk14; + GWPlayerCfg[lbl_1_bss_1C4.unk04].character = GWPlayerCfg->character; + GWPlayerCfg[lbl_1_bss_1C4.unk04].pad_idx = GWPlayerCfg->pad_idx; + GWPlayerCfg[lbl_1_bss_1C4.unk04].group = GWPlayerCfg->group; + GWPlayerCfg[lbl_1_bss_1C4.unk04].iscom = GWPlayerCfg->iscom; + GWPlayerCfg->character = var_r29; + GWPlayerCfg->pad_idx = var_r28; + GWPlayerCfg->group = 0; + GWPlayerCfg->iscom = 0; + for (i = 0; i < 4; i++) { + GWPlayer[i].character = GWPlayerCfg[i].character; + GWPlayer[i].port = GWPlayerCfg[i].pad_idx; + GWPlayer[i].com = GWPlayerCfg[i].iscom; + GWPlayer[i].team = GWPlayerCfg[i].group; + } + GWPlayerCfg[1].character = sp14[GWSystem.board]; + for (i = 1; i < 4; i++) { + GWPlayerCfg[i].iscom = GWPlayerCfg[i].group = 1; + } + var_r30 = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY, 2, var_r30->stat); + OSReport("########## dllno - %d\n", sp8[GWSystem.board], GWSystem.board); + HuAudSeqAllFadeOut(1000); + HuAudSStreamAllFadeOut(1000); + omOvlCallEx(sp8[GWSystem.board], 1, 0, 0); + while (TRUE) { + fn_1_B8C(); + } +} + +void fn_1_87DC(s32 arg0, StructBss19C* arg1) { + fn_1_7E70(); + fn_1_7ECC(); + fn_1_731C(lbl_1_bss_1C4.unk00); + fn_1_83B0(); + fn_1_8408(); + arg1->unk04 = NULL; +} + +void fn_1_8A44(void) { + omObjData* var_r31; + + var_r31 = omAddObjEx(lbl_1_bss_A8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_19C.unk00 = var_r31; + lbl_1_bss_19C.unk04 = (void*) fn_1_87DC; + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_19C.unk04 != NULL) { + lbl_1_bss_19C.unk04(var_r31, &lbl_1_bss_19C); + } + } +} + +void fn_1_8AE0(omObjData* arg0) { + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 56)); + arg0->motion[0] = Hu3DMotionIDGet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 0, 0, 2); + Hu3DModelShadowMapObjSet(arg0->model[1], "base_fix9-base"); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 59)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 60)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 61)); + fn_1_1DCC(arg0, 2, 2, 0, 2); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 57)); + arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 76 + lbl_1_bss_1C4.unk00)); + arg0->motion[5] = Hu3DMotionIDGet(arg0->model[5]); + Hu3DModelPosSet(arg0->model[5], 0.0f, 80.0f, 460.0f); + Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelShadowSet(arg0->model[5]); + fn_1_1DCC(arg0, 5, 5, 0, 2); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 75)); + arg0->motion[6] = Hu3DMotionIDGet(arg0->model[6]); + Hu3DModelHookSet(arg0->model[5], "stargbox_fix-effect_fook1", arg0->model[6]); + Hu3DModelAttrSet(arg0->model[6], HU3D_ATTR_DISPOFF); + fn_1_1DCC(arg0, 6, 6, 0, 2); + arg0->model[7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 81)); + Hu3DModelAttrSet(arg0->model[7], HU3D_ATTR_DISPOFF); + arg0->model[8] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 96)); + arg0->motion[8] = Hu3DMotionIDGet(arg0->model[8]); + Hu3DModelAttrSet(arg0->model[8], HU3D_ATTR_DISPOFF); + fn_1_1DCC(arg0, 8, 8, 0, 1); +} + +void fn_1_8DC0(omObjData* arg0, StructBss19C* arg1) { + Hu3DData[arg0->model[5]].pos.y = fn_1_ACC(80.0f, 90.0f, arg0->work[0]++, 360.0f); + if (arg0->work[0] >= 360) { + arg0->work[0] = 0; + } +} + +void fn_1_8E6C(omObjData* arg0, StructBss19C* arg1) { + Hu3DData[arg0->model[7]].pos.y += fn_1_ACC(0.0f, 0.25f, arg0->work[0]++, 360.0f); + Hu3DData[arg0->model[8]].pos.y = Hu3DData[arg0->model[7]].pos.y + 15.0f; + if (arg0->work[0] >= 360) { + arg0->work[0] = 0; + } +} + +void fn_1_8F68(void) { + omObjData* temp_r31; + + temp_r31 = omAddObjEx(lbl_1_bss_A8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_174.unk00 = temp_r31; + lbl_1_bss_174.unk04 = (void*) fn_1_8DC0; + lbl_1_bss_174.unk00->data = &lbl_1_bss_174; + fn_1_8AE0(temp_r31); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_174.unk04 != NULL) { + lbl_1_bss_174.unk04(temp_r31, &lbl_1_bss_174); + } + } +} + +void fn_1_92D4(s32 arg0) { + s32 spC[4]; + s32 i; + + spC[0] = 0; + for (i = 1; i < 4; i++) { + spC[i] = spC[i - 1] + 1; + if (spC[i] >= 4) { + spC[i] = 0; + } + if (arg0 == spC[i]) { + lbl_1_bss_1C4.unk04 = i; + } + } + for (i = 0; i < 4; i++) { + fn_1_352C(&lbl_1_bss_1C4.unk34[i], spC[i]); + } + for (i = 0; i < 4; i++) { + lbl_1_bss_1C4.unk34[i].unk18 = GWPlayer[spC[i]].rank + 1; + } +} + +Vec lbl_1_data_354[] = { + { -300.0f, 0.0f, 460.0f }, + { -100.0f, -30.0f, 460.0f }, + { 100.0f, -60.0f, 460.0f }, + { 300.0f, -90.0f, 460.0f } +}; + +void fn_1_9408(omObjData* arg0, s32 arg1) { + s32 var_r30; + s32 temp_r29; + + var_r30 = arg1; + temp_r29 = lbl_1_bss_1C4.unk34[var_r30].unk10; + arg0->model[1] = CharModelCreate(temp_r29, 4); + arg0->motion[1] = CharModelMotionCreate(temp_r29, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); + arg0->motion[2] = CharModelMotionCreate(temp_r29, DATA_MAKE_NUM(DATADIR_MARIOMOT, 3)); + arg0->motion[3] = CharModelMotionCreate(temp_r29, DATA_MAKE_NUM(DATADIR_MARIOMOT, 5)); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[1], DATA_MAKE_NUM(DATADIR_MSTORY, 48 + temp_r29)); + arg0->motion[5] = CharModelMotionCreate(temp_r29, DATA_MAKE_NUM(DATADIR_MARIOMOT, 109)); + arg0->motion[6] = Hu3DJointMotionFile(arg0->model[1], DATA_MAKE_NUM(DATADIR_MSTORY, 40 + temp_r29)); + CharModelMotionDataClose(temp_r29); + Hu3DModelPosSet(arg0->model[1], lbl_1_data_354[var_r30].x, lbl_1_data_354[lbl_1_bss_1C4.unk34[var_r30].unk18 - 1].y + 90.0f, lbl_1_data_354[var_r30].z - 15.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 1, 0, 1); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 62)); + Hu3DModelPosSet(arg0->model[2], lbl_1_data_354[var_r30].x, lbl_1_data_354[lbl_1_bss_1C4.unk34[var_r30].unk18 - 1].y, lbl_1_data_354[var_r30].z); + if (lbl_1_bss_1C4.unk34[var_r30].unk18 == 4) { + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + } + Hu3DModelShadowMapSet(arg0->model[2]); + Hu3DModelScaleSet(arg0->model[2], 1.5f, 1.0f, 1.5f); +} + +void fn_1_9718(omObjData* arg0, StructBss19C* arg1) { + Vec sp20 = { 120.0f, 0.0f, 670.0f }; + + fn_1_2908(arg0, 1, sp20, -1.0f, 30.0f, 10.0f); + lbl_1_bss_AC.unk04 = (void*) fn_1_A008; + fn_1_1DCC(lbl_1_bss_174.unk00, 2, 2, 0, 0); + fn_1_1DCC(arg0, 1, 2, 15, 1); + fn_1_2CB0(arg0, 1, sp20, -45.0f, 30.0f, 10.0f); + fn_1_1DCC(arg0, 1, 1, 15, 1); + fn_1_2224(lbl_1_bss_174.unk00, 2, 2, 0); + arg1->unk04 = 0; +} + +void fn_1_98A4(omObjData* arg0, StructBss19C* arg1) { + if (arg0->motion[6] == Hu3DMotionIDGet(arg0->model[1]) && Hu3DMotionEndCheck(arg0->model[1])) { + fn_1_1DCC(arg0, 1, 4, 15, 1); + arg1->unk04 = 0; + } +} + +void fn_1_992C(void) { + omObjData* temp_r3; + s32 temp_r30; + + temp_r30 = lbl_1_bss_1C4.unk14++; + temp_r3 = omAddObjEx(lbl_1_bss_A8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_D4[temp_r30].unk00 = temp_r3; + lbl_1_bss_D4[temp_r30].unk04 = NULL; + lbl_1_bss_D4[temp_r30].unk00->data = &lbl_1_bss_D4[temp_r30]; + fn_1_9408(temp_r3, temp_r30); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_D4[temp_r30].unk04 != NULL) { + lbl_1_bss_D4[temp_r30].unk04(temp_r3, &lbl_1_bss_D4[temp_r30]); + } + } +} + +void fn_1_9D08(omObjData* arg0, s32 arg1) { + s32 sp1C[] = { + DATA_MAKE_NUM(DATADIR_MSTORY, 97), + DATA_MAKE_NUM(DATADIR_MSTORY, 108), + DATA_MAKE_NUM(DATADIR_MSTORY, 116), + DATA_MAKE_NUM(DATADIR_MSTORY, 124), + DATA_MAKE_NUM(DATADIR_MSTORY, 131) + }; + s32 sp30[][5] = { + { DATA_MAKE_NUM(DATADIR_MSTORY, 98), DATA_MAKE_NUM(DATADIR_MSTORY, 100), DATA_MAKE_NUM(DATADIR_MSTORY, 101), DATA_MAKE_NUM(DATADIR_MSTORY, 103), DATA_MAKE_NUM(DATADIR_MSTORY, 104) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 109), DATA_MAKE_NUM(DATADIR_MSTORY, 111), DATA_MAKE_NUM(DATADIR_MSTORY, 112), DATA_MAKE_NUM(DATADIR_MSTORY, 114), DATA_MAKE_NUM(DATADIR_MSTORY, 115) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 117), DATA_MAKE_NUM(DATADIR_MSTORY, 119), DATA_MAKE_NUM(DATADIR_MSTORY, 120), DATA_MAKE_NUM(DATADIR_MSTORY, 122), DATA_MAKE_NUM(DATADIR_MSTORY, 123) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 125), DATA_MAKE_NUM(DATADIR_MSTORY, 126), DATA_MAKE_NUM(DATADIR_MSTORY, 127), DATA_MAKE_NUM(DATADIR_MSTORY, 129), DATA_MAKE_NUM(DATADIR_MSTORY, 130) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 132), DATA_MAKE_NUM(DATADIR_MSTORY, 134), DATA_MAKE_NUM(DATADIR_MSTORY, 135), DATA_MAKE_NUM(DATADIR_MSTORY, 137), DATA_MAKE_NUM(DATADIR_MSTORY, 138) } + }; + + arg0->model[1] = Hu3DModelCreateFile(sp1C[arg1]); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][0]); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][1]); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][2]); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][3]); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][4]); + Hu3DModelPosSet(arg0->model[1], -300.0f, 0.0f, 890.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 30.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + if (arg1 == 3) { + Hu3DData[arg0->model[1]].pos.y = 50.0f; + } + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 5, 0, 1); + { + s32 sp8[] = { 9, 14, 10, 11, 12 }; + + if (arg1 != 3) { + CharModelEffectNpcInit(arg0->model[1], arg0->motion[2], 1, sp8[arg1]); + } + } +} + +void fn_1_A008(omObjData* arg0, StructBss19C* arg1) { + Vec sp14 = { -120.0f, 0.0f, 670.0f }; + + fn_1_1DCC(arg0, 1, 2, 15, 1); + fn_1_2CB0(arg0, 1, sp14, 45.0f, 60.0f, 10.0f); + fn_1_1DCC(arg0, 1, 1, 15, 1); + arg1->unk04 = 0; +} + +void fn_1_A0EC(void) { + omObjData* temp_r3; + s32 temp_r30; + + temp_r3 = omAddObjEx(lbl_1_bss_A8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_AC.unk00 = temp_r3; + lbl_1_bss_AC.unk04 = NULL; + lbl_1_bss_AC.unk00->data = &lbl_1_bss_AC; + temp_r30 = lbl_1_bss_1C4.unk00; + fn_1_9D08(temp_r3, temp_r30); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_AC.unk04 != NULL) { + lbl_1_bss_AC.unk04(temp_r3, &lbl_1_bss_AC); + } + } +} + +void fn_1_A478(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 170.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20.x = -5.0f; + var_r31->unk20.y = 0.0f; + var_r31->unk20.z = 0.0f; + var_r31->unk38 = 1700.0f; +} + +void fn_1_A504(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 125.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1750.0f; + fn_1_51D0(var_r31, &sp8, var_r31->unk40++, 60.0f, 30.0f); +} + +void fn_1_A5F4(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + if (var_r31->unk40 == 50) { + fn_1_1DCC(lbl_1_bss_174.unk00, 5, 5, 0, 0); + fn_1_1DCC(lbl_1_bss_174.unk00, 6, 6, 0, 0); + HuAudFXPlay(0xA1); + } + sp8.unk08.x = 0.0f; + sp8.unk08.y = 130.0f; + sp8.unk08.z = 460.0f; + sp8.unk20.x = 0.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 150.0f; + fn_1_51D0(var_r31, &sp8, var_r31->unk40, 180.0f, 10.0f); + if (var_r31->unk40++ >= 90) { + if (var_r31->unk40 == 91) { + lbl_1_bss_68 = HuAudFXPlay(0x21); + } + var_r31->unk20.x = fn_1_828(var_r31->unk20.x, -45.0f, var_r31->unk40 - 90, 90.0f); + Hu3DData[lbl_1_bss_174.unk00->model[5]].rot.x = fn_1_828(0.0f, 45.0f, var_r31->unk40 - 90, 90.0f); + } +} diff --git a/src/REL/mstoryDll/board_miss.c b/src/REL/mstoryDll/board_miss.c new file mode 100755 index 00000000..04c63c30 --- /dev/null +++ b/src/REL/mstoryDll/board_miss.c @@ -0,0 +1,817 @@ +#include "REL/mstoryDll.h" +#include "game/armem.h" +#include "game/audio.h" +#include "game/board/main.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ char unk18[0x1C]; + /* 0x034 */ StructFn352C unk34[4]; + /* 0x104 */ float unk104; +} StructBss450; // Size 0x108 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ char unk0C[4]; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; +} StructBss2D0; // Size 0x18 + +void fn_1_C360(void); +void fn_1_C7C4(void); +void fn_1_CE48(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_CEF4(omObjData* arg0, StructBss19C* arg1); +void fn_1_D180(void); +void fn_1_D57C(s32 arg0); +void fn_1_DAA4(omObjData* arg0, StructBss19C* arg1); +void fn_1_DC08(omObjData* arg0, StructBss19C* arg1); +void fn_1_DD20(omObjData* arg0, StructBss19C* arg1); +void fn_1_DE04(void); +void fn_1_E228(void); +void fn_1_E2B4(void); +void fn_1_E3E4(void); +void fn_1_E620(void); + +StructBss450 lbl_1_bss_450; +StructBss19C lbl_1_bss_428; +StructBss19C lbl_1_bss_400; +StructBss19C lbl_1_bss_3D8; +StructBss19C lbl_1_bss_338[4]; +AnimData* lbl_1_bss_330[2]; +StructBss2D0 lbl_1_bss_2D0[4]; +s32 lbl_1_bss_2CC; +Process* lbl_1_bss_2C8; + +s32 lbl_1_data_388[][4] = { + { MAKE_MESSID(30, 28), MAKE_MESSID(30, 33), MAKE_MESSID(30, 34), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 29), MAKE_MESSID(30, 33), MAKE_MESSID(30, 34), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 30), MAKE_MESSID(30, 33), MAKE_MESSID(30, 34), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 31), MAKE_MESSID(30, 33), MAKE_MESSID(30, 34), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 32), MAKE_MESSID(30, 33), MAKE_MESSID(30, 34), MAKE_MESSID(30, 5) } +}; + +s32 lbl_1_data_3D8[] = { + DATADIR_W01, + DATADIR_W02, + DATADIR_W03, + DATADIR_W04, + DATADIR_W05, + DATADIR_W06, + DATADIR_W10, + DATADIR_MARIOMDL1, + DATADIR_LUIGIMDL1, + DATADIR_PEACHMDL1, + DATADIR_YOSHIMDL1, + DATADIR_WARIOMDL1, + DATADIR_DONKEYMDL1, + DATADIR_DAISYMDL1, + DATADIR_WALUIGIMDL1 +}; + +void fn_1_A830(void) { + s32 temp_r3; + + temp_r3 = HuDataDirReadAsync(DATADIR_BOARD); + if (temp_r3 != -1) { + while (HuDataGetAsyncStat(temp_r3) == 0) { + HuPrcVSleep(); + } + } + HuAR_MRAMtoARAM(DATADIR_BOARD); + while (HuARDMACheck()) { + HuPrcVSleep(); + } + HuDataDirClose(DATADIR_BOARD); + temp_r3 = HuDataDirReadAsync(lbl_1_data_3D8[GWSystem.board]); + if (temp_r3 != -1) { + while (HuDataGetAsyncStat(temp_r3) == 0) { + HuPrcVSleep(); + } + } + lbl_1_bss_2CC = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_A8F8(void) { + s32 i; + s32 j; + + lbl_1_bss_2D0[0].unk00 = 0; + lbl_1_bss_2D0[0].unk04 = 0; + lbl_1_bss_2D0[0].unk10 = lbl_1_bss_450.unk34[lbl_1_bss_450.unk04].unk10; + lbl_1_bss_2D0[0].unk14 = lbl_1_bss_450.unk34[lbl_1_bss_450.unk04].unk14; + lbl_1_bss_2D0[0].unk08 = 0; + for (i = 1; i < 4; i++) { + lbl_1_bss_2D0[i].unk10 = -1; + lbl_1_bss_2D0[i].unk14 = i; + lbl_1_bss_2D0[i].unk08 = 1; + } + for (i = 1; i < 4; i++) { + do { + lbl_1_bss_2D0[i].unk10 = rand8() % 8; + for (j = 0; j < 4; j++) { + if (i != j && lbl_1_bss_2D0[j].unk10 != -1 && lbl_1_bss_2D0[i].unk10 == lbl_1_bss_2D0[j].unk10) { + break; + } + } + } while (j != 4); + } + for (i = 0; i < 4; i++) { + GWPlayerCfg[i].character = lbl_1_bss_2D0[i].unk10; + GWPlayerCfg[i].pad_idx = lbl_1_bss_2D0[i].unk14; + GWPlayerCfg[i].group = 0; + GWPlayerCfg[i].iscom = lbl_1_bss_2D0[i].unk08; + } + BoardSaveInit(GWSystem.board); + CharKill(-1); + HuDataDirClose(DATADIR_MSTORY); + HuPrcChildCreate(fn_1_A830, 100, 0x3000, 0, lbl_1_bss_2C8); +} + +void fn_1_ABAC(void) { + omOvlHisData* var_r30; + s32 sp8[] = { OVL_W01, OVL_W02, OVL_W03, OVL_W04, OVL_W05, OVL_W06, OVL_W10 }; + + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (WipeStatGet() != 0) { + fn_1_B8C(); + } + CharModelKill(-1); + MGSeqKillAll(); + var_r30 = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY3, 0, var_r30->stat); + do { + fn_1_B8C(); + } while (lbl_1_bss_2CC != 1); + CharARAMOpen(GWPlayerCfg[0].character); + CharARAMOpen(GWPlayerCfg[1].character); + CharARAMOpen(GWPlayerCfg[2].character); + CharARAMOpen(GWPlayerCfg[3].character); + HuAudSeqAllFadeOut(1000); + HuAudSStreamAllFadeOut(1000); + omOvlCallEx(sp8[GWSystem.board], 1, 0, 0); + while (TRUE) { + fn_1_B8C(); + } +} + +void fn_1_ACFC(Process* arg0, s32 arg1, s32 arg2) { + s32 i; + + lbl_1_bss_2C8 = arg0; + lbl_1_bss_450.unk04 = arg2; + lbl_1_bss_450.unk10 = arg2; + lbl_1_bss_450.unk00 = arg1; + fn_1_BF4(); + fn_1_3618(0xFF); + fn_1_27E8(lbl_1_bss_2C8, fn_1_E228); + fn_1_3704(); + fn_1_D57C(arg2); + HuPrcChildCreate(fn_1_C7C4, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_D180, 100, 0x2000, 0, HuPrcCurrentGet()); + for (i = 0; i < 4; i++) { + HuPrcChildCreate(fn_1_DE04, 100, 0x2000, 0, HuPrcCurrentGet()); + } + HuPrcChildCreate(fn_1_C360, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +void fn_1_AE30(omObjData* arg0) { + if (arg0->work[2] != 0) { + arg0->work[2]--; + return; + } + if (arg0->work[2] == 0 && Hu3DMotionEndCheck(arg0->model[1])) { + fn_1_1DCC(arg0, 1, arg0->work[1], 15, 1); + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + } +} + +void fn_1_AEBC(void) { + s32 var_r30 = 16; + s32 var_r29 = 40; + GXColor sp10 = { 0x00, 0x00, 0x80, 0x80 }; + s32 i; + + while (TRUE) { + fn_1_B8C(); + printWin(var_r30, var_r29, 220, 160, &sp10); + if (lbl_1_bss_428.unk04 == NULL) { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> FALSE"); + } else { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> TRUE"); + } + if (lbl_1_bss_400.unk04 == NULL) { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> FALSE"); + } else { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> TRUE"); + } + if (lbl_1_bss_3D8.unk04 == NULL) { + print8(var_r30, var_r29 + 30, 1.0f, "PROC_MKOOPA -> FALSE"); + } else { + print8(var_r30, var_r29 + 30, 1.0f, "PROC_MKOOPA -> TRUE"); + } + for (i = 0; i < 4; i++) { + if (lbl_1_bss_338[i].unk04 == NULL) { + print8(var_r30, i * 10 + (var_r29 + 40), 1.0f, "PROC_PLAYER%d -> FALSE", i); + } else { + print8(var_r30, i * 10 + (var_r29 + 40), 1.0f, "PROC_PLAYER%d -> TRUE", i); + } + } + print8(var_r30, var_r29 + 90, 1.0f, "P:%d W:%d", lbl_1_bss_450.unk04, lbl_1_bss_450.unk10); + print8(var_r30, var_r29 + 110, 1.0f, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(var_r30, var_r29 + 120 + i * 10, 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, + lbl_1_bss_450.unk34[i].unk00, lbl_1_bss_450.unk34[i].unk04, lbl_1_bss_450.unk34[i].unk08, + lbl_1_bss_450.unk34[i].unk0C, lbl_1_bss_450.unk34[i].unk14, lbl_1_bss_450.unk34[i].unk10); + } + } +} + +void fn_1_B230(void) { + lbl_1_bss_58[0] = HuAudSeqPlay(0x34); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_BAC(60); +} + +void fn_1_B28C(void) { + s32 i; + + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_450.unk00][1]); + lbl_1_bss_450.unk08 = fn_1_1834(0, 0, 21, 2, lbl_1_bss_450.unk10); + fn_1_CE48(3, -1, 15, 1, 0); + fn_1_1CE8(lbl_1_bss_450.unk08, lbl_1_data_388[lbl_1_bss_450.unk00][0]); + fn_1_1ACC(lbl_1_bss_450.unk08, -1); + fn_1_1CE8(lbl_1_bss_450.unk08, MAKE_MESSID(37, 4)); + fn_1_CE48(1, -1, 15, 1, 0); + fn_1_1A64(lbl_1_bss_450.unk08); + for (i = 0; i < 4; i++) { + lbl_1_bss_338[i].unk04 = (void*) fn_1_DAA4; + } + do { + fn_1_B8C(); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_338[i].unk04 != NULL) { + break; + } + } + } while (i != 4); + lbl_1_bss_338[lbl_1_bss_450.unk04].unk04 = (void*) fn_1_DC08; + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_E2B4); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_338[lbl_1_bss_450.unk04].unk04 == NULL) { + break; + } + } + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_3D8.unk04 == NULL) { + break; + } + } + fn_1_BAC(30); +} + +BOOL fn_1_B4A0(void) { + BOOL temp_r31 = FALSE; + + fn_1_1CE8(lbl_1_bss_450.unk08, lbl_1_data_388[lbl_1_bss_450.unk00][1]); + fn_1_1ACC(lbl_1_bss_450.unk08, 5); + lbl_1_bss_450.unk0C = fn_1_6EB8(MAKE_MESSID(30, 53), lbl_1_bss_450.unk10); + fn_1_1CE8(lbl_1_bss_450.unk0C, MAKE_MESSID(30, 53)); + temp_r31 = fn_1_1C34(lbl_1_bss_450.unk0C); + fn_1_1CE8(lbl_1_bss_450.unk0C, MAKE_MESSID(37, 4)); + fn_1_7028(lbl_1_bss_450.unk0C); + return temp_r31; +} + +BOOL fn_1_B588(void) { + BOOL temp_r31 = FALSE; + + fn_1_1CE8(lbl_1_bss_450.unk08, lbl_1_data_388[lbl_1_bss_450.unk00][2]); + fn_1_1ACC(lbl_1_bss_450.unk08, 5); + lbl_1_bss_450.unk0C = fn_1_6EB8(MAKE_MESSID(30, 53), lbl_1_bss_450.unk10); + fn_1_1CE8(lbl_1_bss_450.unk0C, MAKE_MESSID(30, 53)); + temp_r31 = fn_1_1C34(lbl_1_bss_450.unk0C); + fn_1_1CE8(lbl_1_bss_450.unk0C, MAKE_MESSID(37, 4)); + fn_1_7028(lbl_1_bss_450.unk0C); + return temp_r31; +} + +BOOL fn_1_B670(void) { + BOOL temp_r31 = FALSE; + + fn_1_CE48(3, -1, 15, 1, 0); + fn_1_1CE8(lbl_1_bss_450.unk08, lbl_1_data_388[lbl_1_bss_450.unk00][3]); + fn_1_1ACC(lbl_1_bss_450.unk08, 5); + fn_1_CE48(1, -1, 15, 1, 0); + lbl_1_bss_450.unk0C = fn_1_6EB8(MAKE_MESSID(30, 53), lbl_1_bss_450.unk10); + fn_1_1CE8(lbl_1_bss_450.unk0C, MAKE_MESSID(30, 53)); + temp_r31 = fn_1_1B78(lbl_1_bss_450.unk0C, 1); + fn_1_1CE8(lbl_1_bss_450.unk0C, MAKE_MESSID(37, 4)); + fn_1_7028(lbl_1_bss_450.unk0C); + return temp_r31; +} + +void fn_1_B78C(void) { + fn_1_BAC(60); + fn_1_A8F8(); + Hu3DModelAttrReset(lbl_1_bss_400.unk00->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(lbl_1_bss_400.unk00->model[6], HU3D_ATTR_DISPOFF); + fn_1_1DCC(lbl_1_bss_400.unk00, 2, 3, 0, 0); + fn_1_BAC(30); + fn_1_1DCC(lbl_1_bss_3D8.unk00, 1, 4, 15, 0); + fn_1_BAC(30); + fn_1_1DCC(lbl_1_bss_338[lbl_1_bss_450.unk04].unk00, 1, 3, 15, 0); + fn_1_2224(lbl_1_bss_400.unk00, 2, 3, 0); + fn_1_BAC(60); + HuAudSeqFadeOut(lbl_1_bss_58[0], 3000); + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_E3E4); + fn_1_BAC(150); +} + +void fn_1_B8C8(void) { +} + +void fn_1_B8CC(void) { + fn_1_1DCC(lbl_1_bss_400.unk00, 2, 3, 0, 0); + fn_1_2224(lbl_1_bss_400.unk00, 2, 3, 0); + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_E620); + lbl_1_bss_3D8.unk04 = (void*) fn_1_CEF4; + lbl_1_bss_338[lbl_1_bss_450.unk04].unk04 = (void*) fn_1_DD20; + do { + fn_1_B8C(); + } while (lbl_1_bss_3D8.unk04 != NULL); + fn_1_1DCC(lbl_1_bss_400.unk00, 2, 2, 0, 0); + fn_1_2224(lbl_1_bss_400.unk00, 2, 2, 0); +} + +void fn_1_B9D0(s32 arg0) { + s32 i; + + fn_1_BAC(60); + HuAudSeqFadeOut(lbl_1_bss_58[0], 1000); + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + fn_1_B8C(); + if (WipeStatGet() == 0) { + break; + } + } + CharModelKill(-1); + HuAudFadeOut(1); + if (arg0 == 1) { + omOvlReturnEx(1, 1); + } else { + GWPlayerCfg->group = 0; + GWPlayerCfg->character = lbl_1_bss_450.unk34[lbl_1_bss_450.unk04].unk10; + GWPlayerCfg->pad_idx = lbl_1_bss_450.unk34[lbl_1_bss_450.unk04].unk14; + GWPlayerCfg->iscom = 0; + for (i = 0; i < 4; i++) { + GWPlayer[i].character = GWPlayerCfg[i].character; + GWPlayer[i].port = GWPlayerCfg[i].pad_idx; + GWPlayer[i].com = GWPlayerCfg[i].iscom; + GWPlayer[i].team = GWPlayerCfg[i].group; + } + omOvlGotoEx(OVL_MENT, 1, 10, 0); + } + while (TRUE) { + fn_1_B8C(); + } +} + +void fn_1_BBD8(s32 arg0, StructBss19C* arg1) { + s32 i; + s32 var_r30 = 0; + + fn_1_B230(); + fn_1_B28C(); + lbl_1_bss_450.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_450.unk10); + while (TRUE) { + fn_1_B8C(); + if (fn_1_B4A0()) { + var_r30 = 0; + break; + } + if (fn_1_B588()) { + var_r30 = 2; + break; + } + if (fn_1_B670()) { + var_r30 = 1; + break; + } + } + fn_1_1A64(lbl_1_bss_450.unk08); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_450.unk34[i].unk00 != lbl_1_bss_450.unk34[lbl_1_bss_450.unk04].unk00) { + Hu3DModelAttrSet(lbl_1_bss_338[i].unk00->model[1], HU3D_ATTR_DISPOFF); + } + Hu3DModelAttrSet(lbl_1_bss_338[i].unk00->model[2], HU3D_ATTR_DISPOFF); + } + switch (var_r30) { + case 1: + fn_1_B8C8(); + break; + case 0: + fn_1_B78C(); + break; + case 2: + fn_1_B8CC(); + break; + } + switch (var_r30) { + case 0: + fn_1_ABAC(); + break; + case 1: + case 2: + fn_1_B9D0(var_r30); + /* fallthrough */ + default: + arg1->unk04 = 0; + break; + } +} + +void fn_1_C360(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_2C8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_428.unk00 = temp_r3; + lbl_1_bss_428.unk04 = (void*) fn_1_BBD8; + lbl_1_bss_428.unk00->data = &lbl_1_bss_428; + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_428.unk04 != NULL) { + lbl_1_bss_428.unk04(temp_r3, &lbl_1_bss_428); + } + } +} + +void fn_1_C414(omObjData* arg0, s32 arg1) { + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 56)); + arg0->motion[0] = Hu3DMotionIDGet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 0, 0, 2); + Hu3DModelShadowMapObjSet(arg0->model[1], "base_fix9-base"); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 59)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 60)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 61)); + fn_1_1DCC(arg0, 2, 2, 0, 2); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 57)); + arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 63)); + arg0->motion[5] = Hu3DMotionIDGet(arg0->model[5]); + Hu3DModelPosSet(arg0->model[5], 0.0f, 80.0f, 460.0f); + Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelShadowSet(arg0->model[5]); + fn_1_1DCC(arg0, 5, 5, 0, 2); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 64)); + arg0->motion[6] = Hu3DMotionIDGet(arg0->model[6]); + Hu3DModelHookSet(arg0->model[5], "partybox_fix2-effect_fook1", arg0->model[6]); + Hu3DModelAttrSet(arg0->model[6], HU3D_ATTR_DISPOFF); + fn_1_1DCC(arg0, 6, 6, 0, 2); + lbl_1_bss_330[0] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY, 65 + arg1 * 2), MEMORY_DEFAULT_NUM)); + lbl_1_bss_330[1] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY, 66 + arg1 * 2), MEMORY_DEFAULT_NUM)); + Hu3DAnimCreate(lbl_1_bss_330[0], lbl_1_bss_400.unk00->model[5], "ys26_p0"); + Hu3DAnimCreate(lbl_1_bss_330[1], lbl_1_bss_400.unk00->model[5], "ys26_p1"); +} + +void fn_1_C708(omObjData* arg0, StructBss19C* arg1) { + Hu3DData[arg0->model[5]].pos.y = fn_1_ACC(80.0f, 90.0f, arg1->unk08++, 360.0f); + if (arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_C7C4(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_2C8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_400.unk00 = temp_r3; + lbl_1_bss_400.unk04 = (void*) fn_1_C708; + lbl_1_bss_400.unk00->data = &lbl_1_bss_400; + fn_1_C414(temp_r3, lbl_1_bss_450.unk00); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_400.unk04 != NULL) { + lbl_1_bss_400.unk04(temp_r3, &lbl_1_bss_400); + } + } +} + +void fn_1_CB48(omObjData* arg0, s32 arg1) { + s32 sp1C[] = { + DATA_MAKE_NUM(DATADIR_MSTORY, 0x61), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x6C), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x74), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x7C), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x83) + }; + s32 sp30[][5] = { + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x62), DATA_MAKE_NUM(DATADIR_MSTORY, 0x64), DATA_MAKE_NUM(DATADIR_MSTORY, 0x65), DATA_MAKE_NUM(DATADIR_MSTORY, 0x67), DATA_MAKE_NUM(DATADIR_MSTORY, 0x68) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x6D), DATA_MAKE_NUM(DATADIR_MSTORY, 0x6F), DATA_MAKE_NUM(DATADIR_MSTORY, 0x70), DATA_MAKE_NUM(DATADIR_MSTORY, 0x72), DATA_MAKE_NUM(DATADIR_MSTORY, 0x73) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x75), DATA_MAKE_NUM(DATADIR_MSTORY, 0x77), DATA_MAKE_NUM(DATADIR_MSTORY, 0x78), DATA_MAKE_NUM(DATADIR_MSTORY, 0x7A), DATA_MAKE_NUM(DATADIR_MSTORY, 0x7B) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x7D), DATA_MAKE_NUM(DATADIR_MSTORY, 0x7E), DATA_MAKE_NUM(DATADIR_MSTORY, 0x7F), DATA_MAKE_NUM(DATADIR_MSTORY, 0x81), DATA_MAKE_NUM(DATADIR_MSTORY, 0x82) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x84), DATA_MAKE_NUM(DATADIR_MSTORY, 0x86), DATA_MAKE_NUM(DATADIR_MSTORY, 0x87), DATA_MAKE_NUM(DATADIR_MSTORY, 0x89), DATA_MAKE_NUM(DATADIR_MSTORY, 0x8A) } + }; + + arg0->model[1] = Hu3DModelCreateFile(sp1C[arg1]); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][0]); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][1]); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][2]); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][3]); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][4]); + Hu3DModelPosSet(arg0->model[1], -300.0f, 0.0f, 890.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 30.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + if (arg1 == 3) { + Hu3DData[arg0->model[1]].pos.y = 50.0f; + } + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 1, 0, 1); + { + s32 sp8[] = { 9, 14, 10, 11, 12 }; + + if (arg1 != 3) { + CharModelEffectNpcInit(arg0->model[1], arg0->motion[2], 1, sp8[arg1]); + } + } +} + +void fn_1_CE48(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + fn_1_1DCC(lbl_1_bss_3D8.unk00, 1, arg0, arg2, arg3); + if (arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_3D8.unk00->work[0] = arg4; + lbl_1_bss_3D8.unk00->work[1] = arg1; + lbl_1_bss_3D8.unk00->work[2] = arg2 + 1; +} + +void fn_1_CEF4(omObjData* arg0, StructBss19C* arg1) { + Vec sp14 = { 0.0f, 0.0f, 460.0f }; + + fn_1_1DCC(arg0, 1, 2, 15, 1); + fn_1_2CB0(arg0, 1, sp14, 0.0f, 60.0f, 10.0f); + fn_1_1DCC(arg0, 1, 1, 15, 1); + arg1->unk04 = 0; +} + +void fn_1_CFD8(omObjData* arg0, StructBss19C* arg1) { + s32 i; + + for (i = 0; i < 15; i++) { + fn_1_B8C(); + Hu3DData[arg0->model[1]].rot.y = fn_1_828(0.0f, 135.0f, i, 15.0f); + } + arg1->unk04 = 0; +} + +void fn_1_D09C(omObjData* arg0, StructBss19C* arg1) { + Vec sp14 = { -120.0f, 0.0f, 670.0f }; + + fn_1_1DCC(arg0, 1, 2, 15, 1); + fn_1_2CB0(arg0, 1, sp14, 45.0f, 60.0f, 10.0f); + fn_1_1DCC(arg0, 1, 1, 15, 1); + arg1->unk04 = 0; +} + +void fn_1_D180(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_2C8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_3D8.unk00 = temp_r3; + lbl_1_bss_3D8.unk04 = NULL; + lbl_1_bss_3D8.unk00->data = &lbl_1_bss_3D8; + fn_1_CB48(temp_r3, lbl_1_bss_450.unk00); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_3D8.unk04 != NULL) { + lbl_1_bss_3D8.unk04(temp_r3, &lbl_1_bss_3D8); + } + if (temp_r3->work[0] != 0) { + fn_1_AE30(temp_r3); + } + } +} + +void fn_1_D57C(s32 arg0) { + s32 spC[4]; + s32 i; + + spC[0] = 0; + for (i = 1; i < 4; i++) { + spC[i] = spC[i - 1] + 1; + if (spC[i] >= 4) { + spC[i] = 0; + } + if (arg0 == spC[i]) { + lbl_1_bss_450.unk04 = i; + } + } + for (i = 0; i < 4; i++) { + fn_1_352C(&lbl_1_bss_450.unk34[i], spC[i]); + } + for (i = 0; i < 4; i++) { + lbl_1_bss_450.unk34[i].unk18 = GWPlayer[spC[i]].rank + 1; + } +} + +Vec lbl_1_data_540[] = { + { -300.0f, 0.0f, 460.0f }, + { -100.0f, -30.0f, 460.0f }, + { 100.0f, -60.0f, 460.0f }, + { 300.0f, -90.0f, 460.0f } +}; + +void fn_1_D6B0(omObjData* arg0, s32 arg1) { + s32 var_r30; + s32 temp_r28; + + var_r30 = arg1; + temp_r28 = lbl_1_bss_450.unk34[var_r30].unk10; + arg0->model[1] = CharModelCreate(lbl_1_bss_450.unk34[arg1].unk10, 4); + arg0->motion[1] = CharModelMotionCreate(lbl_1_bss_450.unk34[arg1].unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); + arg0->motion[2] = CharModelMotionCreate(lbl_1_bss_450.unk34[arg1].unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 3)); + arg0->motion[3] = CharModelMotionCreate(lbl_1_bss_450.unk34[arg1].unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 109)); + CharModelMotionDataClose(temp_r28); + Hu3DModelPosSet(arg0->model[1], lbl_1_data_540[var_r30].x, 90.0f + lbl_1_data_540[lbl_1_bss_450.unk34[var_r30].unk18 - 1].y, lbl_1_data_540[var_r30].z - 15.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 1, 0, 1); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 62)); + Hu3DModelPosSet(arg0->model[2], lbl_1_data_540[var_r30].x, lbl_1_data_540[lbl_1_bss_450.unk34[var_r30].unk18 - 1].y, lbl_1_data_540[var_r30].z); + if (lbl_1_bss_450.unk34[var_r30].unk18 == 4) { + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + } + Hu3DModelScaleSet(arg0->model[2], 1.5f, 1.0f, 1.5f); + Hu3DModelShadowMapSet(arg0->model[2]); +} + +void fn_1_D9A8(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + fn_1_1DCC(lbl_1_bss_338[lbl_1_bss_450.unk04].unk00, 1, arg0, arg2, arg3); + if (arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_338[lbl_1_bss_450.unk04].unk00->work[0] = arg4; + lbl_1_bss_338[lbl_1_bss_450.unk04].unk00->work[1] = arg1; + lbl_1_bss_338[lbl_1_bss_450.unk04].unk00->work[2] = arg2 + 1; +} + +void fn_1_DAA4(omObjData* arg0, StructBss19C* arg1) { + float temp_f31; + s32 i; + + temp_f31 = Hu3DData[arg0->model[1]].pos.y; + for (i = 0; i < 60; i++) { + fn_1_B8C(); + Hu3DData[arg0->model[1]].pos.y = fn_1_948(temp_f31, 0.0f, i, 60.0f); + Hu3DData[arg0->model[2]].pos.y = fn_1_948(temp_f31 - 90.0f, -90.0f, i, 60.0f); + } + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + arg1->unk04 = 0; +} + +void fn_1_DC08(omObjData* arg0, StructBss19C* arg1) { + Vec sp14 = { 120.0f, 0.0f, 670.0f }; + + lbl_1_bss_3D8.unk04 = (void*) fn_1_D09C; + fn_1_1DCC(lbl_1_bss_400.unk00, 2, 2, 0, 0); + fn_1_1DCC(arg0, 1, 2, 15, 1); + fn_1_2CB0(arg0, 1, sp14, -45.0f, 30.0f, 10.0f); + fn_1_1DCC(arg0, 1, 1, 15, 1); + arg1->unk04 = 0; +} + +void fn_1_DD20(omObjData* arg0, StructBss19C* arg1) { + Vec sp14 = { 600.0f, 0.0f, 700.0f }; + + fn_1_1DCC(arg0, 1, 2, 15, 1); + fn_1_2CB0(arg0, 1, sp14, -45.0f, 30.0f, 10.0f); + fn_1_1DCC(arg0, 1, 1, 15, 1); + arg1->unk04 = 0; +} + +void fn_1_DE04(void) { + omObjData* temp_r3; + s32 temp_r30; + + temp_r30 = lbl_1_bss_450.unk14++; + temp_r3 = omAddObjEx(lbl_1_bss_2C8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_338[temp_r30].unk00 = temp_r3; + lbl_1_bss_338[temp_r30].unk04 = NULL; + lbl_1_bss_338[temp_r30].unk00->data = lbl_1_bss_338; + fn_1_D6B0(temp_r3, temp_r30); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_338[temp_r30].unk04 != NULL) { + lbl_1_bss_338[temp_r30].unk04(temp_r3, &lbl_1_bss_338[temp_r30]); + } + if (temp_r3->work[0] != 0) { + fn_1_AE30(temp_r3); + } + } +} + +void fn_1_E228(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 170.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20.x = -5.0f; + var_r31->unk20.y = 0.0f; + var_r31->unk20.z = 0.0f; + var_r31->unk38 = 1700.0f; +} + +void fn_1_E2B4(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 125.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1750.0f; + fn_1_51D0(var_r31, &sp8, var_r31->unk40++, 60.0f, 30.0f); + if (lbl_1_bss_450.unk104 != 0.0f) { + var_r31->unk08.y = 125.0f + lbl_1_bss_450.unk104; + } +} + +void fn_1_E3E4(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + if (var_r31->unk40 == 50) { + fn_1_1DCC(lbl_1_bss_400.unk00, 5, 5, 0, 0); + fn_1_1DCC(lbl_1_bss_400.unk00, 6, 6, 0, 0); + HuAudFXPlay(0xA1); + } + sp8.unk08.x = 0.0f; + sp8.unk08.y = 100.0f; + sp8.unk08.z = 460.0f; + sp8.unk20.x = 0.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 125.0f; + fn_1_51D0(var_r31, &sp8, var_r31->unk40, 180.0f, 10.0f); + if (var_r31->unk40++ >= 90) { + if (var_r31->unk40 == 91) { + lbl_1_bss_68 = HuAudFXPlay(0x21); + } + var_r31->unk20.x = fn_1_828(var_r31->unk20.x, -45.0f, var_r31->unk40 - 90, 90.0f); + Hu3DData[lbl_1_bss_400.unk00->model[5]].rot.x = fn_1_828(0.0f, 45.0f, var_r31->unk40 - 90, 90.0f); + } +} + +void fn_1_E620(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 220.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = 0.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1600.0f; + fn_1_51D0(var_r31, &sp8, var_r31->unk40++, 60.0f, 30.0f); +} diff --git a/src/REL/mstoryDll/main.c b/src/REL/mstoryDll/main.c new file mode 100755 index 00000000..f9eb62d1 --- /dev/null +++ b/src/REL/mstoryDll/main.c @@ -0,0 +1,1012 @@ +#include "REL/mstoryDll.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/window.h" +#include "game/wipe.h" + +#include "ext_math.h" + +char lbl_1_bss_6C[0x3C]; // unused +s32 lbl_1_bss_68; +s32 lbl_1_bss_58[4]; +char lbl_1_bss_48[0x10]; // unused +StructBss4 lbl_1_bss_4; +Process* lbl_1_bss_0; + +s32 lbl_1_data_0[][4] = { + { 0x37, 0x38, 0x36, 0x39 }, + { 0x43, 0x45, 0x44, 0x43 }, + { 0x40, 0x42, 0x41, 0x40 }, + { 0x4B, 0x4D, 0x4C, 0x4B }, + { 0x46, 0x48, 0x47, 0x46 }, + { 0x3E, 0x3F, 0x3E, 0x3E } +}; + +char* lbl_1_data_100[] = { + "S-2 : NORMAL STORY - BOARD CLEAR EVENT", + "S-3 : NORMAL STORY - BOARD MISS EVENT", + "S-4 : NORMAL STORY - MINIGAME CLEAR EVENT", + "S-5 : NORMAL STORY - MINIGAME MISS EVENT" +}; + +void fn_1_0(omObjData* arg0) { + if (WipeStatGet() == 0) { + arg0->func = NULL; + omOvlReturnEx(1, 1); + } +} + +void fn_1_4C(omObjData* arg0) { + if (omSysExitReq != 0) { + arg0->func = fn_1_0; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + } +} + +void fn_1_A4(void) { + s32 sp14; + s32 var_r30; + s32 var_r31; + s32 sp10; + s32 spC; + s32 sp8; + s32 i; + + sp14 = 0; + var_r30 = 0; + var_r31 = 0; + sp10 = 1; + spC = 1; + sp8 = 1; + omAddObjEx(lbl_1_bss_0, 0x2000, 0, 0, -1, fn_1_4C); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_B8C(); + } + while (TRUE) { + if (HuPadBtnDown[0] & PAD_BUTTON_A) { + break; + } + if ((HuPadBtnDown[0] & PAD_BUTTON_DOWN) || HuPadStkY[0] >= 30) { + var_r30++; + if (var_r30 >= 4) { + var_r30 = 0; + } + fn_1_BAC(5); + } + if ((HuPadBtnDown[0] & PAD_BUTTON_UP) || HuPadStkY[0] <= -30) { + var_r30--; + if (var_r30 < 0) { + var_r30 = 3; + } + fn_1_BAC(5); + } + if (HuPadBtnDown[0] & PAD_BUTTON_RIGHT) { + var_r31++; + if (var_r31 > 4) { + var_r31 = 0; + } + } + if (HuPadBtnDown[0] & PAD_BUTTON_LEFT) { + var_r31--; + if (var_r31 < 0) { + var_r31 = 4; + } + } + fontcolor = FONT_COLOR_WHITE; + print8(24, 100, 1.5f, ">>>>> MPGC STORY 1 - EVENT SELECT <<<<<"); + print8(24, 130, 1.5f, "MAP NUMBER : %d", var_r31 + 1); + for (i = 0; i < 4; i++) { + fontcolor = FONT_COLOR_WHITE; + if (var_r30 == i) { + fontcolor = FONT_COLOR_CYAN; + } + print8(24, 160 + i * 15, 1.5f, "%s", lbl_1_data_100[i]); + } + fn_1_B8C(); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_B8C(); + } + GWSystem.board = var_r31; + switch (var_r30) { + case 0: + fn_1_79B8(lbl_1_bss_0, var_r31, 0); + break; + case 1: + fn_1_ACFC(lbl_1_bss_0, var_r31, 0); + break; + case 2: + fn_1_E710(lbl_1_bss_0, var_r31, 0); + break; + case 3: + fn_1_11624(lbl_1_bss_0, var_r31, 0); + break; + } + while (TRUE) { + fn_1_B8C(); + } +} + +#include "src/REL/executor.c" + +void fn_1_488(void) { + s32 i; + + lbl_1_bss_0 = omInitObjMan(62, 0x2000); + switch (omovlevtno) { + case 0: + for (i = 0; i < 4; i++) { + if (GWPlayerCfg[i].character == GWUnkB1Get()) { + break; + } + } + fn_1_79B8(lbl_1_bss_0, GWSystem.board, i); + break; + case 1: + for (i = 0; i < 4; i++) { + if (GWPlayerCfg[i].character == GWUnkB1Get()) { + break; + } + } + fn_1_ACFC(lbl_1_bss_0, GWSystem.board, i); + break; + case 2: + if (GWPlayerCoinWinGet(0) >= 10) { + fn_1_E710(lbl_1_bss_0, GWSystem.board, 0); + } else { + fn_1_11624(lbl_1_bss_0, GWSystem.board, 0); + } + break; + case 20: + fn_1_14150(lbl_1_bss_0); + break; + } +} + +void ObjectSetup(void) { + fn_1_488(); +} + +float fn_1_828(float arg0, float arg1, float arg2, float arg3) { + if (arg3 <= arg2) { + return arg1; + } + return arg0 + (arg2 / arg3) * (arg1 - arg0); +} + +float fn_1_850(float arg0, float arg1, float arg2) { + return (arg1 + arg0 * (arg2 - 1.0f)) / arg2; +} + +float fn_1_870(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg1; + } + return arg0 + (arg1 - arg0) * (1.0 - cosd((90.0f / arg3) * arg2)); +} + +float fn_1_948(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg1; + } + return arg0 + (arg1 - arg0) * sind((90.0f / arg3) * arg2); +} + +float fn_1_A10(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg0; + } + return arg0 + (arg1 - arg0) * sind((180.0f / arg3) * arg2); +} + +float fn_1_ACC(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg0; + } + return arg0 + (arg1 - arg0) * sind((360.0f / arg3) * arg2); +} + +void fn_1_B88(void) { +} + +void fn_1_B8C(void) { + HuPrcVSleep(); +} + +void fn_1_BAC(s32 arg0) { + HuPrcSleep(arg0); +} + +void fn_1_BD4(void) { + HuPrcEnd(); +} + +void fn_1_BF4(void) { + HuWinInit(1); +} + +void fn_1_C18(void) { + HuWinAllKill(); +} + +void fn_1_C38(s32 arg0, float arg1, float arg2, s32 arg3) { + WindowData* temp_r29; + float temp_f29; + float temp_f28; + float temp_f25; + float temp_f24; + float temp_f31; + float temp_f27; + float temp_f30; + float temp_f26; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + s32 i; + + temp_r29 = &winData[arg0]; + temp_f29 = temp_r29->pos_x; + temp_f28 = temp_r29->pos_y; + temp_f25 = temp_r29->w; + temp_f24 = temp_r29->h; + temp_f31 = temp_f29 + temp_f25 * arg1; + temp_f27 = 4.0f / temp_f25; + if (temp_f31 + 4.0f - (temp_f29 + temp_f25) >= 0.0f) { + temp_f31 = (temp_f29 + temp_f25) - 4.0f; + } else if (temp_f29 - (temp_f31 - 2.0f) >= 0.0f) { + temp_f31 = temp_f29; + } else { + temp_f31 -= 2.0f; + } + temp_f30 = temp_f28 + temp_f24 * arg2; + temp_f26 = 4.0f / temp_f24; + if (temp_f30 + 4.0f - (temp_f28 + temp_f24) >= 0.0f) { + temp_f30 = (temp_f28 + temp_f24) - 4.0f; + } else if (temp_f28 - (temp_f30 - 2.0f) >= 0.0f) { + temp_f30 = temp_f28; + } else { + temp_f30 -= 2.0f; + } + if (arg3 != 0) { + HuWinPosSet(arg0, temp_f31, temp_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + var_f23 = temp_f31; + var_f21 = temp_f27; + var_f22 = temp_f30; + var_f20 = temp_f26; + } else { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + var_f23 = temp_f29; + var_f21 = 1.0f; + var_f22 = temp_f28; + var_f20 = 1.0f; + } + HuWinDispOn(arg0); + for (i = 0; i <= 15; i++) { + HuPrcVSleep(); + if (arg3 != 0) { + if (i <= 10) { + var_f23 = fn_1_948(temp_f31, temp_f29, i, 10.0f); + var_f21 = fn_1_948(temp_f27, 1.0f, i, 10.0f);; + } else { + var_f22 = fn_1_948(temp_f30, temp_f28, i - 10, 5.0f); + var_f20 = fn_1_948(temp_f26, 1.0f, i - 10, 5.0f); + } + } else { + if (i <= 10) { + var_f22 = fn_1_948(temp_f28, temp_f30, i, 10.0f); + var_f20 = fn_1_948(1.0f, temp_f26, i, 10.0f); + } else { + var_f23 = fn_1_948(temp_f29, temp_f31, i - 10, 5.0f); + var_f21 = fn_1_948(1.0f, temp_f27, i - 10, 5.0f); + } + } + HuWinPosSet(arg0, var_f23, var_f22); + HuWinScaleSet(arg0, var_f21, var_f20); + } + if (arg3 != 0) { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + } else { + HuWinPosSet(arg0, temp_f31, temp_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + } + HuPrcVSleep(); +} + +s32 fn_1_1680(s32 arg0, s32 arg1, s32 arg2, s32 arg3, float arg4, float arg5, s32 arg6) { + s32 temp_r31; + + arg2 = arg2 * 21 + 16; + arg3 = arg3 * 26 + 16; + if (arg0 == 0) { + arg0 = 550 - arg2; + } else { + arg0 = 1.0f + (576.0f - arg2) / 2.0f; + } + if (arg1 == 0) { + arg1 = 430 - arg3; + } + temp_r31 = HuWinExCreateStyled(arg0, arg1, arg2, arg3, -1, 1); + if (arg6 != -1) { + arg6 = GWPlayerCfg[arg6].pad_idx; + winData[temp_r31].active_pad = 1; + } else { + winData[temp_r31].active_pad = 0xF; + } + HuWinMesPalSet(temp_r31, 7, 0, 0, 0); + fn_1_C38(temp_r31, arg4, arg5, 1); + return temp_r31; +} + +s32 fn_1_1834(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + return fn_1_1680(arg0, arg1, arg2, arg3, 0.5f, 0.5f, arg4); +} + +void fn_1_1A04(s32 arg0, float arg1, float arg2) { + HuWinMesSet(arg0, MAKE_MESSID(37, 4)); + HuPrcVSleep(); + fn_1_C38(arg0, arg1, arg2, 0); + HuWinExCleanup(arg0); +} + +void fn_1_1A64(s32 arg0) { + fn_1_1A04(arg0, 0.5f, 0.5f); +} + +void fn_1_1ACC(s32 arg0, s32 arg1) { + s32 i; + + if (arg1 > 0) { + HuPrcSleep(arg1); + return; + } + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesWait(arg0); + HuWinComKeyReset(); +} + +BOOL fn_1_1B78(s32 arg0, s32 arg1) { + s32 var_r31; + s32 i; + + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + var_r31 = HuWinChoiceGet(arg0, arg1); + HuWinComKeyReset(); + if (var_r31 != 0) { + var_r31 = FALSE; + } else { + var_r31 = TRUE; + } + return var_r31; +} + +BOOL fn_1_1C34(s32 arg0) { + return fn_1_1B78(arg0, 0); +} + +void fn_1_1CE8(s32 arg0, s32 arg1) { + HuWinMesSet(arg0, arg1); +} + +void fn_1_1D1C(s32 arg0, s32 arg1, s32 arg2) { + HuWinInsertMesSet(arg0, arg1, arg2); +} + +void fn_1_1D5C(s16 arg0) { + ModelData* var_r28; + HsfMaterial* var_r31; + HsfData* temp_r30; + s16 var_r27; + s32 i; + + var_r28 = &Hu3DData[arg0]; + temp_r30 = var_r28->hsfData; + var_r27 = temp_r30->materialCnt; + var_r31 = temp_r30->material; + for (i = 0; i < var_r27; var_r31++, i++) { + var_r31->vtxMode = 1; + } +} + +void fn_1_1DCC(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + switch (arg4) { + case 0: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_NONE); + break; + case 1: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_LOOP); + break; + case 2: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_PAUSE); + break; + } +} + +void fn_1_1F44(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + if (arg0->motion[arg2] == Hu3DMotionIDGet(arg0->model[arg1])) { + return; + } + if (arg0->motion[arg2] == Hu3DMotionShiftIDGet(arg0->model[arg1])) { + return; + } + fn_1_1F44(arg0, arg1, arg2, arg3, arg4); +} + +void fn_1_2224(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3) { + HuPrcSleep(arg3 + 1); + do { + HuPrcVSleep(); + } while (arg0->motion[arg2] != Hu3DMotionIDGet(arg0->model[arg1]) || !Hu3DMotionEndCheck(arg0->model[arg1])); +} + +s32 fn_1_22B4(s32 arg0) { + s32 i; + + for (i = 0; i < 4; i++) { + if (arg0 == GWPlayerCfg[i].group) { + break; + } + } + return i; +} + +void fn_1_22FC(s32 arg0, s32 arg1) { + while (TRUE) { + if (arg1 & HuPadBtnDown[arg0]) { + break; + } + HuPrcVSleep(); + } +} + +void fn_1_2350(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + if (HuPadBtn[0] & PAD_BUTTON_B) { + if (HuPadBtn[0] & PAD_TRIGGER_R) { + var_r31->unk08.z -= HuPadStkY[0] / 10.0f; + } else { + var_r31->unk08.x += HuPadStkX[0] / 10.0f; + var_r31->unk08.y += HuPadStkY[0] / 10.0f; + } + } + if (HuPadBtn[0] & PAD_BUTTON_Y) { + var_r31->unk20.x -= HuPadStkY[0] / 100.0f; + var_r31->unk20.y += HuPadStkX[0] / 100.0f; + if (var_r31->unk20.x < 0.0f) { + var_r31->unk20.x += 360.0f; + } + if (var_r31->unk20.x >= 360.0f) { + var_r31->unk20.x -= 360.0f; + } + if (var_r31->unk20.y < 0.0f) { + var_r31->unk20.y += 360.0f; + } + if (var_r31->unk20.y >= 360.0f) { + var_r31->unk20.y -= 360.0f; + } + } + if (HuPadBtn[0] & PAD_BUTTON_X) { + var_r31->unk38 -= HuPadStkY[0] / 10.0f; + } + print8(24, 40, 1.5f, "CENTER : %.2f, %.2f, %.2f", var_r31->unk08.x, var_r31->unk08.y, var_r31->unk08.z); + print8(24, 55, 1.5f, "ROT : %.2f, %.2f, %.2f", var_r31->unk20.x, var_r31->unk20.y, var_r31->unk20.z); + print8(24, 70, 1.5f, "ZOOM : %.2f", var_r31->unk38); +} + +void fn_1_2710(void (*arg0)(void)) { + lbl_1_bss_4.unk00 = arg0; +} + +void fn_1_2720(void (*arg0)(void)) { + lbl_1_bss_4.unk04 = arg0; +} + +void fn_1_2730(omObjData* arg0) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + if (var_r31->unk00 != NULL) { + var_r31->unk00(); + } + Center.x = var_r31->unk08.x; + Center.y = var_r31->unk08.y; + Center.z = var_r31->unk08.z; + CRot.x = var_r31->unk20.x; + CRot.y = var_r31->unk20.y; + CRot.z = var_r31->unk20.z; + CZoom = var_r31->unk38; +} + +void fn_1_27E8(Process* arg0, void (*arg1)(void)) { + Hu3DCameraCreate(1); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraPerspectiveSet(1, 42.0f, 0.1f, 10000.0f, 1.2f); + lbl_1_bss_4.unk00 = arg1; + lbl_1_bss_4.unk04 = fn_1_2350; + omAddObjEx(arg0, 0x7FDA, 0, 0, -1, omOutView); + omAddObjEx(arg0, 0x7FD9, 0, 0, -1, fn_1_2730); +} + +void fn_1_2908(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5) { + Vec sp4C; + Vec sp40; + Vec sp34; + Vec sp28; + float sp24; + float sp20; + float sp1C; + s32 sp18; + s32 sp14; + float var_f31; + + sp40.x = Hu3DData[arg0->model[arg1]].pos.x; + sp4C.y = sp40.y = Hu3DData[arg0->model[arg1]].pos.y; + sp40.z = Hu3DData[arg0->model[arg1]].pos.z; + sp34.x = arg2.x; + sp34.y = arg2.y; + sp34.z = arg2.z; + sp18 = arg4; + sp28.x = Hu3DData[arg0->model[arg1]].rot.x; + sp28.y = Hu3DData[arg0->model[arg1]].rot.y; + sp28.z = Hu3DData[arg0->model[arg1]].rot.z; + sp1C = 0.0f; + sp20 = arg3; + sp24 = 0.0f; + sp14 = arg5; + var_f31 = -1.1025f; + Hu3DMotionShiftSet(arg0->model[1], arg0->motion[3], 0.0f, 5.0f, 0U); + HuPrcSleep(10); + while (TRUE) { + if (var_f31 >= 1.7f) { + var_f31 = 1.7f; + } + sp4C.y += var_f31 * var_f31 * (var_f31 >= 0.0f ? -17.5f : 17.5f); + if (sp4C.y <= 0.0f && var_f31 > 0.0f) { + sp4C.y = 0.0f; + } + sp4C.x = sp40.x += 6.0 * sind(sp28.y); + sp4C.z = sp40.z += 6.0 * cosd(sp28.y); + Hu3DModelPosSet(arg0->model[1], sp4C.x, sp4C.y, sp4C.z); + Hu3DModelRotSet(arg0->model[1], sp28.x, sp28.y, sp28.z); + HuPrcVSleep(); + if (sp4C.y <= arg2.y && var_f31 > 0.0f) { + break; + } + var_f31 += 0.11f; + } +} + +void fn_1_2CB0(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5) { + Vec sp54; + Vec sp48; + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; + s32 sp14; + s32 temp_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + s32 i; + + var_r26 = 0; + var_r25 = 0; + sp48.x = Hu3DData[arg0->model[arg1]].pos.x; + sp48.y = Hu3DData[arg0->model[arg1]].pos.y; + sp48.z = Hu3DData[arg0->model[arg1]].pos.z; + sp3C.x = arg2.x; + sp3C.y = arg2.y; + sp3C.z = arg2.z; + sp14 = arg4; + sp24.x = Hu3DData[arg0->model[arg1]].rot.x; + sp24.y = Hu3DData[arg0->model[arg1]].rot.y; + sp24.z = Hu3DData[arg0->model[arg1]].rot.z; + sp18.x = 0.0f; + sp18.y = arg3; + sp18.z = 0.0f; + if (sp3C.x - sp48.x >= 0.0f) { + var_r24 = 1; + } else { + var_r24 = 0; + } + if (sp3C.z - sp48.z >= 0.0f) { + var_r23 = 1; + } else { + var_r23 = 0; + } + temp_r27 = arg5; + do { + sp30.y = -(atan2d(sp3C.z - sp48.z, sp3C.x - sp48.x) - 90.0); + if (sp30.y < 0.0f) { + sp30.y += 360.0f; + } else if (sp30.y >= 360.0f) { + sp30.y -= 360.0f; + } + if (sp30.y >= 180.0f) { + if (sp24.y - sp30.y >= 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp30.y < -180.0f) { + sp24.y += 360.0f; + } + } else { + if (sp24.y - sp30.y > 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp30.y <= -180.0f) { + sp24.y += 360.0f; + } + } + sp54.x = sp48.x += 6.0 * sind(sp30.y); + sp54.z = sp48.z += 6.0 * cosd(sp30.y); + if (var_r24 != 0) { + if (sp48.x >= sp3C.x) { + sp54.x = sp48.x = sp3C.x; + var_r26 = 1; + } + } else { + if (sp48.x <= sp3C.x) { + sp54.x = sp48.x = sp3C.x; + var_r26 = 1; + } + } + if (var_r23 != 0) { + if (sp48.z >= sp3C.z) { + sp54.z = sp48.z = sp3C.z; + var_r25 = 1; + } + } else { + if (sp48.z <= sp3C.z) { + sp54.z = sp48.z = sp3C.z; + var_r25 = 1; + } + } + sp24.y = fn_1_850(sp24.y, sp30.y, 10.0f); + Hu3DModelPosSet(arg0->model[1], sp54.x, sp48.y, sp54.z); + Hu3DModelRotSet(arg0->model[1], sp24.x, sp24.y, sp24.z); + HuPrcVSleep(); + } while (var_r25 != 1 || var_r26 != 1); + sp24.y = Hu3DData[arg0->model[arg1]].rot.y; + for (i = 0; i <= temp_r27; i++) { + if (sp18.y >= 180.0f) { + if (sp24.y - sp18.y >= 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp18.y < -180.0f) { + sp24.y += 360.0f; + } + } else { + if (sp24.y - sp18.y > 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp18.y <= -180.0f) { + sp24.y += 360.0f; + } + } + sp24.y = fn_1_828(sp24.y, sp18.y, i, temp_r27); + Hu3DModelRotSet(arg0->model[1], sp24.x, sp24.y, sp24.z); + HuPrcVSleep(); + } +} + +void fn_1_34A4(s16 arg0) { + ModelData* var_r28; + HsfData* temp_r30; + HsfMaterial* var_r31; + s16 var_r27; + s32 i; + + var_r28 = &Hu3DData[arg0]; + temp_r30 = var_r28->hsfData; + var_r27 = temp_r30->materialCnt; + var_r31 = temp_r30->material; + for (i = 0; i < var_r27; var_r31++, i++) { + var_r31->vtxMode = 1; + var_r31->litColor[0] = 0xFF; + var_r31->litColor[1] = 0xFF; + var_r31->litColor[2] = 0xFF; + } +} + +void fn_1_352C(StructFn352C* arg0, s32 arg1) { + arg0->unk00 = arg1; + arg0->unk04 = GWPlayerCfg[arg0->unk00].group; + arg0->unk08 = GWPlayerCfg[arg0->unk00].iscom; + arg0->unk0C = GWPlayerCfg[arg0->unk00].diff; + arg0->unk10 = GWPlayerCfg[arg0->unk00].character; + arg0->unk14 = GWPlayerCfg[arg0->unk00].pad_idx; +} + +s32 fn_1_35C0(void) { + s32 i; + + for (i = 0; i < 4; i++) { + if (!GWPlayerCfg[i].iscom) { + break; + } + } + if (i == 4) { + return -1; + } + return i; +} + +s32 fn_1_3618(s32 arg0) { + s32 temp_r3 = 0; + + temp_r3 = Hu3DGLightCreate(0.0f, 700.0f, 1200.0f, 0.0f, -1.0f, 0.0f, arg0, arg0, arg0); + Hu3DGLightPosAimSet(temp_r3, 0.0f, 700.0f, 1200.0f, 0.0f, 0.0f, 640.0f); + Hu3DGLightInfinitytSet(temp_r3); + return temp_r3; +} + +void fn_1_3704(void) { + Vec sp20 = { 0.0f, 3000.0f, 800.0f }; + Vec sp14 = { 0.0f, 0.0f, 640.0f }; + Vec sp8 = { 0.0f, 1.0f, 0.0f }; + + Hu3DShadowCreate(45.0f, 2000.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.8f); + Hu3DShadowPosSet(&sp20, &sp8, &sp14); +} + +void fn_1_37C8(StructBss4* arg0) { + arg0->unk08.x = arg0->unk14; + arg0->unk08.y = arg0->unk18; + arg0->unk08.z = arg0->unk1C; + arg0->unk20.x = arg0->unk2C; + arg0->unk20.y = arg0->unk30; + arg0->unk20.z = arg0->unk34; + arg0->unk38 = arg0->unk3C; +} + +void fn_1_3804(StructBss4* arg0) { + arg0->unk40 = 0; + arg0->unk14 = arg0->unk08.x; + arg0->unk18 = arg0->unk08.y; + arg0->unk1C = arg0->unk08.z; + arg0->unk2C = arg0->unk20.x; + arg0->unk30 = arg0->unk20.y; + arg0->unk34 = arg0->unk20.z; + arg0->unk3C = arg0->unk38; +} + +void fn_1_3848(StructBss4* arg0, StructBss4* arg1, s32 arg2, float arg3) { + arg0->unk08.x = fn_1_850(arg0->unk08.x, arg1->unk14, arg3); + arg0->unk08.y = fn_1_850(arg0->unk08.y, arg1->unk18, arg3); + arg0->unk08.z = fn_1_850(arg0->unk08.z, arg1->unk1C, arg3); + arg0->unk20.x = fn_1_850(arg0->unk20.x, arg1->unk2C, arg3); + arg0->unk20.y = fn_1_850(arg0->unk20.y, arg1->unk30, arg3); + arg0->unk20.z = fn_1_850(arg0->unk20.z, arg1->unk34, arg3); + if (arg2 != 0) { + arg0->unk38 = fn_1_850(arg0->unk38, arg1->unk3C, arg3); + } +} + +void fn_1_3ABC(StructBss4* arg0, float arg1) { + fn_1_3848(arg0, arg0, 1, arg1); +} + +void fn_1_3D28(StructBss4* arg0, float arg1) { + fn_1_3848(arg0, arg0, 0, arg1); +} + +void fn_1_3F54(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_828(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_828(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_828(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_828(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_828(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_828(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_828(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_41D0(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + fn_1_3F54(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_4484(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4) { + fn_1_3F54(arg0, arg1, arg2, arg3); + fn_1_3848(arg0, arg1, 1, arg4); +} + +void fn_1_48F0(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_948(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_948(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_948(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_948(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_948(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_948(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_948(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_4D44(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + fn_1_48F0(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_51D0(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4) { + fn_1_48F0(arg0, arg1, arg2, arg3); + fn_1_3848(arg0, arg1, 1, arg4); +} + +void fn_1_5828(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_870(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_870(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_870(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_870(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_870(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_870(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_870(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_5CEC(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + fn_1_5828(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_61E8(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4) { + fn_1_5828(arg0, arg1, arg2, arg3); + fn_1_3848(arg0, arg1, 1, arg4); +} + +void fn_1_68B0(omObjData* arg0) { + s32 var_r30; + + if (arg0->work[0] == 0 && arg0->work[2] != 0) { + arg0->work[2]--; + return; + } + if (arg0->work[2] == 0 && Hu3DMotionEndCheck(arg0->model[1])) { + var_r30 = arg0->work[1]; + Hu3DMotionShiftSet(arg0->model[1], arg0->motion[var_r30], 0.0f, 15.0f, 0x40000001U); + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + } +} + +void fn_1_6974(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + fn_1_1DCC(arg0, 1, arg1, arg3, arg4); + if (arg4 == 0) { + arg0->work[0] = 1; + arg0->work[1] = arg2; + arg0->work[2] = arg3 + 1; + } +} + +void fn_1_6AFC(s32 arg0, s32 arg1) { + HuWinMesSet(arg0, arg1); +} + +void fn_1_6B30(s32 arg0, s32 arg1, s32 arg2) { + HuWinInsertMesSet(arg0, arg1, arg2); +} + +void fn_1_6B70(s32 arg0, s32 arg1) { + fn_1_1ACC(arg0, arg1); +} + +void fn_1_6C1C(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { + s32 temp_r28 = 0; + s32 var_r29 = 0; + s32 i; + + temp_r28 = HuWinKeyWaitNumGet(arg1); + if (arg2 == -1 || arg2 >= temp_r28 - 1) { + arg2 = temp_r28 - 1; + } + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesSet(arg0, arg1); + for (i = 0; i < temp_r28; i++) { + var_r29 = 0; + do { + HuPrcVSleep(); + } while (HuWinStatGet(arg0) != 1); + if (i == arg2) { + HuWinAttrSet(arg0, 0x400); + var_r29 = 1; + } + while (TRUE) { + HuPrcVSleep(); + if (var_r29 != 0) { + if (var_r29 == 1 && HuWinStatGet(arg0) != 1) { + var_r29 = 2; + } else if (var_r29 == 2) { + HuPrcSleep(arg3); + HuWinAttrReset(arg0, 0x400); + HuWinKeyWaitEntry(arg0); + break; + } + } else if (HuWinStatGet(arg0) != 1) { + break; + } + } + } + fn_1_1ACC(arg0, 0); + HuWinMesSet(arg0, MAKE_MESSID(37, 4)); + HuWinComKeyReset(); +} + +BOOL fn_1_6E04(s32 arg0) { + return fn_1_1B78(arg0, 0); +} + +s32 fn_1_6EB8(s32 arg0, s32 arg1) { + float spC[2]; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + s32 var_r31; + + HuWinMesMaxSizeGet(1, spC, arg0); + var_f31 = spC[0]; + var_f30 = spC[1]; + var_f29 = 550.0f - var_f31; + var_f28 = 430.0f - var_f30; + var_r31 = HuWinExCreateStyled(var_f29, var_f28, var_f31, var_f30, -1, 1); + if (arg1 != -1) { + arg1 = GWPlayerCfg[arg1].pad_idx; + winData[var_r31].active_pad = 1; + } else { + winData[var_r31].active_pad = 0xF; + } + HuWinMesPalSet(var_r31, 7, 0, 0, 0); + fn_1_C38(var_r31, 0.5f, 0.5f, 1); + return var_r31; +} + +void fn_1_7028(s32 arg0) { + fn_1_1A04(arg0, 0.5f, 0.5f); +} diff --git a/src/REL/mstoryDll/mg_clear.c b/src/REL/mstoryDll/mg_clear.c new file mode 100755 index 00000000..48fb2dc4 --- /dev/null +++ b/src/REL/mstoryDll/mg_clear.c @@ -0,0 +1,691 @@ +#include "REL/mstoryDll.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/flag.h" +#include "game/gamework.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/objsub.h" +#include "game/printfunc.h" +#include "game/saveload.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ char unk0C[4]; + /* 0x010 */ s32 unk10; + /* 0x014 */ char unk14[0x20]; + /* 0x034 */ StructFn352C unk34[4]; + /* 0x104 */ s32 unk104; +} StructBss608; // Size 0x108 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; +} StructData570; // Size 0x14 + +void fn_1_FD1C(void); +void fn_1_10298(omObjData* arg0, StructBss19C* arg1); +void fn_1_10384(omObjData* arg0, StructBss19C* arg1); +void fn_1_10450(omObjData* arg0, StructBss19C* arg1); +void fn_1_1054C(void); +void fn_1_108F8(void); +void fn_1_10C6C(s32 arg0); +void fn_1_10FD0(void); +void fn_1_112A0(void); +void fn_1_1132C(void); +void fn_1_1141C(void); +void fn_1_11534(void); + +StructBss608 lbl_1_bss_608; +StructBss19C lbl_1_bss_5E0; +StructBss19C lbl_1_bss_5B8; +StructBss19C lbl_1_bss_590; +StructBss19C lbl_1_bss_568; +AnimData* lbl_1_bss_560[2]; +s32 lbl_1_bss_55C; +Process* lbl_1_bss_558; + +StructData570 lbl_1_data_570[] = { + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x00), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x01), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x02), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x03), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x04), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x05), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x06), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x07), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x08), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x09), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0E), 1, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0F), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x10), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x11), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x12), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x13), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x14), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x15), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x16), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x17), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x18), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x19), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1E), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1F), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x20), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x21), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x22), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x23), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x24), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x25), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x26), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x27), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x28), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x29), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2E), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2F), 0, 0, 0, 1 } +}; + +s32 lbl_1_data_930[][4] = { + { MAKE_MESSID(30, 72), MAKE_MESSID(30, 73) }, + { MAKE_MESSID(30, 74), MAKE_MESSID(30, 75) }, + { MAKE_MESSID(30, 76), MAKE_MESSID(30, 77) }, + { MAKE_MESSID(30, 78), MAKE_MESSID(30, 79) }, + { MAKE_MESSID(30, 80), MAKE_MESSID(30, 81) } +}; + +void fn_1_E710(Process* arg0, s32 arg1, s32 arg2) { + lbl_1_bss_558 = arg0; + lbl_1_bss_608.unk00 = arg1; + lbl_1_bss_608.unk10 = arg2; + fn_1_BF4(); + lbl_1_bss_608.unk104 = fn_1_3618(0xFF); + fn_1_27E8(lbl_1_bss_558, fn_1_112A0); + fn_1_3704(); + fn_1_10C6C(arg2); + HuPrcChildCreate(fn_1_1054C, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_108F8, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_10FD0, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_FD1C, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +void fn_1_E828(omObjData* arg0) { + if (arg0->work[2] != 0) { + arg0->work[2]--; + return; + } + if (arg0->work[2] == 0 && Hu3DMotionEndCheck(arg0->model[1])) { + fn_1_1DCC(arg0, 1, arg0->work[1], 15, 1); + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + } +} + +void fn_1_E8B4(void) { + s32 var_r30 = 16; + s32 var_r29 = 40; + GXColor sp10 = { 0x00, 0x00, 0x80, 0x80 }; + s32 i; + + while (TRUE) { + fn_1_B8C(); + printWin(var_r30, var_r29, 220, 130, &sp10); + if (lbl_1_bss_5E0.unk04 == NULL) { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> FALSE"); + } else { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> TRUE"); + } + if (lbl_1_bss_5B8.unk04 == NULL) { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> FALSE"); + } else { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> TRUE"); + } + if (lbl_1_bss_590.unk04 == NULL) { + print8(var_r30, var_r29 + 20, 1.0f, "PROC_SUB -> FALSE"); + } else { + print8(var_r30, var_r29 + 20, 1.0f, "PROC_SUB -> TRUE"); + } + if (lbl_1_bss_568.unk04 == NULL) { + print8(var_r30, var_r29 + 30, 1.0f, "PROC_PLAYER -> FALSE"); + } else { + print8(var_r30, var_r29 + 30, 1.0f, "PROC_PLAYER -> TRUE"); + } + print8(var_r30, var_r29 + 60, 1.0f, "M:%d P:%d W:%d", lbl_1_bss_608.unk00, lbl_1_bss_608.unk04, lbl_1_bss_608.unk10); + print8(var_r30, var_r29 + 80, 1.0f, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(var_r30, var_r29 + 90 + i * 10, 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, + lbl_1_bss_608.unk34[i].unk00, lbl_1_bss_608.unk34[i].unk04, lbl_1_bss_608.unk34[i].unk08, + lbl_1_bss_608.unk34[i].unk0C, lbl_1_bss_608.unk34[i].unk14, lbl_1_bss_608.unk34[i].unk10); + } + } +} + +void fn_1_EC00(void) { + lbl_1_bss_58[0] = HuAudSeqPlay(0x36); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_BAC(60); +} + +void fn_1_EC5C(void) { + lbl_1_bss_608.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_608.unk10); + fn_1_1D1C(lbl_1_bss_608.unk08, lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10, 0); + fn_1_1CE8(lbl_1_bss_608.unk08, lbl_1_data_930[lbl_1_bss_608.unk00][0]); + fn_1_1ACC(lbl_1_bss_608.unk08, -1); + fn_1_1DCC(lbl_1_bss_590.unk00, 1, 1, 15, 1); + fn_1_1A64(lbl_1_bss_608.unk08); + fn_1_1DCC(lbl_1_bss_5B8.unk00, 2, 2, 0, 0); + fn_1_BAC(90); + fn_1_1DCC(lbl_1_bss_590.unk00, 1, 4, 15, 0); + fn_1_BAC(30); + fn_1_1DCC(lbl_1_bss_568.unk00, 1, 4, 15, 0); + fn_1_2224(lbl_1_bss_5B8.unk00, 2, 2, 0); + fn_1_BAC(60); + fn_1_1DCC(lbl_1_bss_568.unk00, 1, 1, 84, 1); + fn_1_1DCC(lbl_1_bss_590.unk00, 1, 1, 84, 1); + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_1132C); + lbl_1_bss_5B8.unk04 = (void*) fn_1_10450; + do { + fn_1_B8C(); + } while (lbl_1_bss_5B8.unk04 != NULL); + fn_1_BAC(10); + lbl_1_bss_608.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_608.unk10); + fn_1_1DCC(lbl_1_bss_590.unk00, 1, 3, 15, 1); + if (lbl_1_bss_608.unk00 == 0) { + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_608.unk00][2]); + } else { + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_608.unk00][0]); + } + fn_1_1D1C(lbl_1_bss_608.unk08, MAKE_MESSID(50, lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 * 6 + 5) + lbl_1_bss_608.unk00, 2); + fn_1_1CE8(lbl_1_bss_608.unk08, lbl_1_data_930[lbl_1_bss_608.unk00][1]); + fn_1_1ACC(lbl_1_bss_608.unk08, -1); + fn_1_1DCC(lbl_1_bss_590.unk00, 1, 1, 15, 1); + fn_1_1A64(lbl_1_bss_608.unk08); +} + +void fn_1_EFE0(s32 arg0, StructBss19C* arg1) { + s32 temp_r31; + + temp_r31 = HuAudSStreamPlay(7); + do { + fn_1_B8C(); + } while (HuAudSStreamStatGet(temp_r31) != 0); + HuAudSeqPause(lbl_1_bss_58[0], 0, 1000); + arg1->unk04 = 0; +} + +void fn_1_F050(omObjData* arg0, StructBss19C* arg1) { + s32 temp_r31; + + temp_r31 = lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 * 6 + lbl_1_bss_608.unk00; + fn_1_BAC(150); + OSReport("########## PRESENT_SE : %d\n", temp_r31); + HuAudFXPlay(0x8D4 + temp_r31); + if (lbl_1_data_570[lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 * 6 + lbl_1_bss_608.unk00].unk04 == 1) { + fn_1_1DCC(lbl_1_bss_5B8.unk00, 7, 7, 0, 0); + fn_1_BAC(60); + fn_1_1DCC(lbl_1_bss_5B8.unk00, 7, 12, 0, 1); + } else { + fn_1_1DCC(lbl_1_bss_5B8.unk00, 7, 7, 1, 0); + } + arg1->unk04 = 0; +} + +void fn_1_F19C(void) { + s32 i; + + fn_1_1DCC(lbl_1_bss_568.unk00, 1, 2, 15, 1); + for (i = 0; i < 30; i++) { + fn_1_B8C(); + if (lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 != 5) { + Hu3DData[lbl_1_bss_568.unk00->model[1]].pos.x = fn_1_828(120.0f, 80.0f, i, 30.0f); + } + Hu3DData[lbl_1_bss_568.unk00->model[1]].rot.y = fn_1_828(-60.0f, -90.0f, i, 30.0f); + } + fn_1_1DCC(lbl_1_bss_568.unk00, 1, 5, 5, 0); + while (TRUE) { + fn_1_B8C(); + if (Hu3DMotionTimeGet(lbl_1_bss_568.unk00->model[1]) >= 35.0f) { + break; + } + } + Hu3DModelPosSet(lbl_1_bss_5B8.unk00->model[5], 0.0f, 0.0f, 0.0f); + Hu3DModelHookReset(lbl_1_bss_5B8.unk00->model[9]); + Hu3DModelHookSet(lbl_1_bss_568.unk00->model[1], CharModelHookNameGet(lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10, 1, 1), lbl_1_bss_5B8.unk00->model[5]); + fn_1_BAC(60); + lbl_1_bss_5B8.unk04 = (void*) fn_1_10298; + HuAudFXPlay(0xA3); + HuAudCharVoicePlay(lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10, 0x128); + fn_1_1DCC(lbl_1_bss_5B8.unk00, 6, 6, 0, 0); + Hu3DModelAttrReset(lbl_1_bss_5B8.unk00->model[6], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(lbl_1_bss_5B8.unk00->model[5], HU3D_ATTR_DISPOFF); + fn_1_1DCC(lbl_1_bss_568.unk00, 1, 6, 5, 0); + HuAudSeqPause(lbl_1_bss_58[0], 1, 1000); + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + Hu3DMotionSpeedSet(lbl_1_bss_568.unk00->model[1], 0.0f); + Hu3DMotionTimeSet(lbl_1_bss_568.unk00->model[1], 50.0f); + Hu3DModelAttrReset(lbl_1_bss_5B8.unk00->model[7], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(lbl_1_bss_5B8.unk00->model[8], HU3D_ATTR_DISPOFF); + fn_1_1DCC(lbl_1_bss_5B8.unk00, 8, 8, 0, 1); + fn_1_BAC(30); + HuAudFXPlay(0xA9); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_11534); + fn_1_BAC(60); + lbl_1_bss_568.unk04 = (void*) fn_1_F050; + lbl_1_bss_608.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_608.unk10); + lbl_1_bss_590.unk04 = (void*) fn_1_EFE0; + fn_1_1D1C(lbl_1_bss_608.unk08, MAKE_MESSID(50, lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 * 6 + 6) + lbl_1_bss_608.unk00, 0); + fn_1_6C1C(lbl_1_bss_608.unk08, MAKE_MESSID(50, 134), 0, 300); + fn_1_1CE8(lbl_1_bss_608.unk08, MAKE_MESSID(37, 4)); + fn_1_1A64(lbl_1_bss_608.unk08); + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_1141C); + lbl_1_bss_5B8.unk04 = (void*) fn_1_10384; + fn_1_BAC(30); + Hu3DMotionSpeedSet(lbl_1_bss_568.unk00->model[1], 0.1f); + fn_1_BAC(180); + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); +} + +s32 fn_1_F780(s32 arg0) { + if (arg0 == 0 && _CheckFlag(FLAG_ID_MAKE(0, 2))) { + return 1; + } + if (arg0 == 1 && _CheckFlag(FLAG_ID_MAKE(0, 3))) { + return 1; + } + if (arg0 == 2 && _CheckFlag(FLAG_ID_MAKE(0, 4))) { + return 1; + } + if (arg0 == 3 && _CheckFlag(FLAG_ID_MAKE(0, 5))) { + return 1; + } + if (arg0 == 4 && _CheckFlag(FLAG_ID_MAKE(0, 6))) { + return 1; + } + if (arg0 == 5 && _CheckFlag(FLAG_ID_MAKE(0, 7))) { + return 1; + } + return 0; +} + +void fn_1_F86C(void) { + Hu3DAllKill(); + HuSprClose(); + HuSprInit(); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + fn_1_BAC(60); + SLCommonSet(); + SLSaveBoardStory(); + if (SLSaveFlagGet() == 1) { + SLSave(); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 10); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_55C = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_F910(void) { + omOvlHisData* var_r31; + + msmSeStopAll(FALSE, 1000); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_BAC(60); + CharModelKill(-1); + HuAudFXAllStop(); + HuAudSStreamAllStop(); + { + s32 sp8[] = { 53, 56, 55, 54, 57 }; + + GWMGAvailSet(omMgIndexGet(sp8[lbl_1_bss_608.unk00]) + 0x191); + } + GWGameStat.present[lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 * 6 + lbl_1_bss_608.unk00] = 1; + OSReport("########## PRESENTFLG CHR:%d, MAP:%d, PRESENT:%d\n", lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10, lbl_1_bss_608.unk00, lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 * 6 + lbl_1_bss_608.unk00); + var_r31 = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY, 20, var_r31->stat); + omOvlCallEx(OVL_PRESENT, 1, lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10 * 6 + lbl_1_bss_608.unk00 + 1, 0); +} + +void fn_1_FAE4(omObjData* arg0, StructBss19C* arg1) { + s32 sp8 = 0; + + lbl_1_bss_58[0] = HuAudSeqPlay(0x36); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_BAC(60); + fn_1_EC5C(); + fn_1_F19C(); + fn_1_F910(); + arg1->unk04 = 0; +} + +void fn_1_FD1C(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_558, 0x100, 16, 16, -1, NULL); + lbl_1_bss_5E0.unk00 = temp_r3; + lbl_1_bss_5E0.unk04 = (void*) fn_1_FAE4; + lbl_1_bss_5E0.unk00->data = &lbl_1_bss_5E0; + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_5E0.unk04 != NULL) { + lbl_1_bss_5E0.unk04(temp_r3, &lbl_1_bss_5E0); + } + } +} + +void fn_1_FDD0(omObjData* arg0, s32 arg1) { + s32 temp_r29; + + temp_r29 = lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10; + arg0->model[7] = Hu3DModelCreateFile(lbl_1_data_570[temp_r29 * 6 + arg1].unk00); + arg0->motion[7] = Hu3DMotionIDGet(arg0->model[7]); + if (lbl_1_data_570[temp_r29 * 6 + arg1].unk04 == 1) { + arg0->motion[12] = Hu3DJointMotionFile(arg0->model[7], DATA_MAKE_NUM(DATADIR_MSTORY4, 48)); + } + Hu3DModelPosSet(arg0->model[7], 0.0f, 180.0f, 825.0f); + Hu3DModelAttrSet(arg0->model[7], HU3D_ATTR_DISPOFF); + Hu3DModelShadowSet(arg0->model[7]); + fn_1_1DCC(arg0, 7, 7, 0, 2); + HuDataDirClose(DATADIR_MSTORY4); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 56)); + arg0->motion[0] = Hu3DMotionIDGet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 0, 0, 2); + Hu3DModelShadowMapObjSet(arg0->model[1], "base_fix9-base"); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 59)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 60)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 61)); + fn_1_1DCC(arg0, 2, 2, 0, 2); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 57)); + arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 81)); + Hu3DModelShadowSet(arg0->model[5]); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 83)); + arg0->motion[6] = Hu3DMotionIDGet(arg0->model[6]); + Hu3DModelPosSet(arg0->model[6], 25.0f, 125.0f, 900.0f); + Hu3DModelAttrSet(arg0->model[6], HU3D_ATTR_DISPOFF); + fn_1_1DCC(arg0, 6, 6, 0, 2); + arg0->model[8] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 96)); + arg0->motion[8] = Hu3DMotionIDGet(arg0->model[8]); + Hu3DModelAttrSet(arg0->model[8], HU3D_ATTR_DISPOFF); + fn_1_1DCC(arg0, 8, 8, 0, 2); + arg0->model[9] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 84)); + arg0->motion[9] = Hu3DMotionIDGet(arg0->model[9]); + Hu3DModelPosSet(arg0->model[9], 0.0f, 0.0f, 460.0f); + Hu3DModelShadowSet(arg0->model[9]); + fn_1_1DCC(arg0, 9, 9, 0, 2); + Hu3DModelHookSet(arg0->model[9], "carrier2-target0", arg0->model[5]); + lbl_1_bss_560[0] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY, 85 + arg1 * 2), MEMORY_DEFAULT_NUM)); + lbl_1_bss_560[1] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY, 86 + arg1 * 2), MEMORY_DEFAULT_NUM)); + Hu3DAnimCreate(lbl_1_bss_560[0], lbl_1_bss_5B8.unk00->model[5], "cylinder3"); + Hu3DAnimCreate(lbl_1_bss_560[1], lbl_1_bss_5B8.unk00->model[5], "wakuwaku"); +} + +void fn_1_10298(omObjData* arg0, StructBss19C* arg1) { + Mtx sp8; + + Hu3DData[arg0->model[7]].pos.y = fn_1_ACC(180.0f, 185.0f, arg1->unk08++, 360.0f); + Hu3DModelObjMtxGet(arg0->model[7], "effect", sp8); + Hu3DModelPosSet(arg0->model[8], sp8[0][3], sp8[1][3], sp8[2][3]); + if (arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_10384(omObjData* arg0, StructBss19C* arg1) { + Mtx sp8; + + Hu3DData[arg0->model[7]].pos.y += arg1->unk0C / 100.0f; + Hu3DModelObjMtxGet(arg0->model[7], "effect", sp8); + Hu3DModelPosSet(arg0->model[8], sp8[0][3], sp8[1][3], sp8[2][3]); + arg1->unk0C += 2; +} + +void fn_1_10450(omObjData* arg0, StructBss19C* arg1) { + fn_1_1DCC(arg0, 9, 9, 0, 1); + while (TRUE) { + fn_1_B8C(); + Hu3DData[arg0->model[9]].pos.z += 2.5f; + if (Hu3DData[arg0->model[9]].pos.z >= 670.0f) { + break; + } + } + Hu3DData[arg0->model[9]].pos.z = 670.0f; + Hu3DMotionSpeedSet(arg0->model[9], 0.0f); + arg1->unk04 = 0; +} + +void fn_1_1054C(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_558, 0x100, 16, 16, -1, NULL); + lbl_1_bss_5B8.unk00 = temp_r3; + lbl_1_bss_5B8.unk04 = NULL; + fn_1_FDD0(temp_r3, lbl_1_bss_608.unk00); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_5B8.unk04 != NULL) { + lbl_1_bss_5B8.unk04(temp_r3, &lbl_1_bss_5B8); + } + } +} + +void fn_1_105F8(omObjData* arg0, s32 arg1) { + s32 sp1C[] = { + DATA_MAKE_NUM(DATADIR_MSTORY, 0x0061), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x006C), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x0074), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x007C), + DATA_MAKE_NUM(DATADIR_MSTORY, 0x0083) + }; + s32 sp30[][5] = { + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x0062), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0064), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0065), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0067), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0068) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x006D), DATA_MAKE_NUM(DATADIR_MSTORY, 0x006F), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0070), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0072), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0073) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x0075), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0077), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0078), DATA_MAKE_NUM(DATADIR_MSTORY, 0x007A), DATA_MAKE_NUM(DATADIR_MSTORY, 0x007B) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x007D), DATA_MAKE_NUM(DATADIR_MSTORY, 0x007E), DATA_MAKE_NUM(DATADIR_MSTORY, 0x007F), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0081), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0082) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x0084), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0086), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0087), DATA_MAKE_NUM(DATADIR_MSTORY, 0x0089), DATA_MAKE_NUM(DATADIR_MSTORY, 0x008A) } + }; + + arg0->model[1] = Hu3DModelCreateFile(sp1C[arg1]); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][0]); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][1]); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][2]); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][3]); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[1], sp30[arg1][4]); + Hu3DModelPosSet(arg0->model[1], -120.0f, 0.0f, 670.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 30.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + if (arg1 == 3) { + Hu3DData[arg0->model[1]].pos.y = 50.0f; + } + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 5, 0, 1); + { + s32 sp8[] = { 9, 14, 10, 11, 12 }; + + if (arg1 != 3) { + CharModelEffectNpcInit(arg0->model[1], arg0->motion[2], 1, sp8[arg1]); + } + } +} + +void fn_1_108F8(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_558, 0x100, 16, 16, -1, NULL); + lbl_1_bss_590.unk00 = temp_r3; + lbl_1_bss_590.unk04 = NULL; + fn_1_105F8(temp_r3, lbl_1_bss_608.unk00); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_590.unk04 != NULL) { + lbl_1_bss_590.unk04(temp_r3, &lbl_1_bss_590); + } + } +} + +void fn_1_10C6C(s32 arg0) { + s32 spC[4]; + s32 i; + + spC[0] = 0; + for (i = 1; i < 4; i++) { + spC[i] = spC[i - 1] + 1; + if (spC[i] >= 4) { + spC[i] = 0; + } + if (arg0 == spC[i]) { + lbl_1_bss_608.unk04 = i; + } + } + for (i = 0; i < 4; i++) { + fn_1_352C(&lbl_1_bss_608.unk34[i], spC[i]); + } +} + +void fn_1_10D50(omObjData* arg0, s32 arg1) { + s32 temp_r30; + + temp_r30 = lbl_1_bss_608.unk34[lbl_1_bss_608.unk04].unk10; + arg0->model[1] = CharModelCreate(temp_r30, 1); + arg0->motion[1] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); + arg0->motion[2] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 2)); + arg0->motion[3] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 53)); + arg0->motion[4] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 109)); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[1], DATA_MAKE_NUM(DATADIR_MSTORY, 24 + temp_r30)); + arg0->motion[6] = Hu3DJointMotionFile(arg0->model[1], DATA_MAKE_NUM(DATADIR_MSTORY, 32 + temp_r30)); + CharModelMotionDataClose(temp_r30); + Hu3DModelPosSet(arg0->model[1], 120.0f, 0.0f, 670.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, -60.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 1, 0, 1); +} + +void fn_1_10F24(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + fn_1_1DCC(lbl_1_bss_568.unk00, 1, arg0, arg2, arg3); + if (arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_568.unk00->work[0] = arg4; + lbl_1_bss_568.unk00->work[1] = arg1; + lbl_1_bss_568.unk00->work[2] = arg2 + 1; +} + +void fn_1_10FD0(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_558, 0x100, 16, 16, -1, NULL); + lbl_1_bss_568.unk00 = temp_r3; + lbl_1_bss_568.unk04 = NULL; + lbl_1_bss_568.unk00->data = &lbl_1_bss_568; + fn_1_10D50(temp_r3, lbl_1_bss_608.unk04); // Second argument required to match. + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_568.unk04 != NULL) { + lbl_1_bss_568.unk04(temp_r3, &lbl_1_bss_568); + } + if (temp_r3->work[0] != 0) { + fn_1_E828(temp_r3); + } + } +} + +void fn_1_112A0(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 125.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20.x = -5.0f; + var_r31->unk20.y = 0.0f; + var_r31->unk20.z = 0.0f; + var_r31->unk38 = 1750.0f; +} + +void fn_1_1132C(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 100.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = 0.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1400.0f; + fn_1_51D0(var_r31, &sp8, var_r31->unk40++, 120.0f, 10.0f); +} + +void fn_1_1141C(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + var_r31->unk14 = 0.0f; + var_r31->unk18 = Hu3DData[lbl_1_bss_5B8.unk00->model[7]].pos.y; + var_r31->unk1C = 0.0f; + var_r31->unk2C = 0.0f; + var_r31->unk30 = 0.0f; + var_r31->unk34 = 0.0f; + var_r31->unk3C = fn_1_828(1100.0f, 1400.0f, var_r31->unk40++, 240.0f); + fn_1_3ABC(var_r31, 30.0f); +} + +void fn_1_11534(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 160.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = 0.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1100.0f; + fn_1_61E8(var_r31, &sp8, var_r31->unk40++, 10.0f, 5.0f); +} diff --git a/src/REL/mstoryDll/mg_miss.c b/src/REL/mstoryDll/mg_miss.c new file mode 100755 index 00000000..2bfd5f70 --- /dev/null +++ b/src/REL/mstoryDll/mg_miss.c @@ -0,0 +1,446 @@ +#include "REL/mstoryDll.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/printfunc.h" +#include "game/window.h" +#include "game/wipe.h" + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ char unk14[0x20]; + /* 0x34 */ StructFn352C unk34[4]; +} StructBss7B4; // Size 0x104 + +void fn_1_12630(void); +void fn_1_129D4(void); +void fn_1_12C94(s32 arg0); +void fn_1_12F20(omObjData* arg0, StructBss19C* arg1); +void fn_1_12FA8(omObjData*, StructBss19C* arg1); +void fn_1_130C0(void); +void fn_1_13570(void); +void fn_1_13880(void); +void fn_1_1390C(void); + +StructBss7B4 lbl_1_bss_7B4; +StructBss19C lbl_1_bss_78C; +StructBss19C lbl_1_bss_764; +StructBss19C lbl_1_bss_73C; +StructBss19C lbl_1_bss_714; +Process* lbl_1_bss_710; + +s32 lbl_1_data_AF8[][3] = { + { MAKE_MESSID(30, 40), MAKE_MESSID(30, 45), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 41), MAKE_MESSID(30, 45), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 42), MAKE_MESSID(30, 45), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 43), MAKE_MESSID(30, 45), MAKE_MESSID(30, 5) }, + { MAKE_MESSID(30, 44), MAKE_MESSID(30, 45), MAKE_MESSID(30, 5) } +}; + +void fn_1_11624(Process* arg0, s32 arg1, s32 arg2) { + lbl_1_bss_710 = arg0; + lbl_1_bss_7B4.unk00 = arg1; + lbl_1_bss_7B4.unk10 = arg2; + fn_1_BF4(); + fn_1_3618(0xFF); + fn_1_27E8(lbl_1_bss_710, fn_1_13880); + fn_1_3704(); + fn_1_12C94(arg2); + HuPrcChildCreate(fn_1_129D4, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_130C0, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_13570, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_12630, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +void fn_1_11730(void) { + s32 var_r31 = 16; + s32 var_r30 = 40; + GXColor sp10 = { 0x00, 0x00, 0x80, 0x80 }; + s32 i; + + while (TRUE) { + fn_1_B8C(); + fontcolor = FONT_COLOR_WHITE; + printWin(var_r31, var_r30, 220, 120, &sp10); + if (lbl_1_bss_78C.unk04 == NULL) { + print8(var_r31, var_r30, 1.0f, "PROC_MAIN -> FALSE"); + } else { + print8(var_r31, var_r30, 1.0f, "PROC_MAIN -> TRUE"); + } + if (lbl_1_bss_764.unk04 == NULL) { + print8(var_r31, var_r30 + 10, 1.0f, "PROC_MAP -> FALSE"); + } else { + print8(var_r31, var_r30 + 10, 1.0f, "PROC_MAP -> TRUE"); + } + if (lbl_1_bss_73C.unk04 == NULL) { + print8(var_r31, var_r30 + 20, 1.0f, "PROC_PLAYER -> FALSE"); + } else { + print8(var_r31, var_r30 + 20, 1.0f, "PROC_PLAYER -> TRUE"); + } + if (lbl_1_bss_714.unk04 == NULL) { + print8(var_r31, var_r30 + 30, 1.0f, "PROC_SUB -> FALSE"); + } else { + print8(var_r31, var_r30 + 30, 1.0f, "PROC_SUB -> TRUE"); + } + print8(var_r31, var_r30 + 50, 1.0f, "M:%d P:%d W:%d", lbl_1_bss_7B4.unk00, lbl_1_bss_7B4.unk04, lbl_1_bss_7B4.unk10); + print8(var_r31, var_r30 + 70, 1.0f, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(var_r31, var_r30 + 80 + i * 10, 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, + lbl_1_bss_7B4.unk34[i].unk00, lbl_1_bss_7B4.unk34[i].unk04, lbl_1_bss_7B4.unk34[i].unk08, + lbl_1_bss_7B4.unk34[i].unk0C, lbl_1_bss_7B4.unk34[i].unk14, lbl_1_bss_7B4.unk34[i].unk10); + } + } +} + +void fn_1_11A8C(void) { + lbl_1_bss_58[0] = HuAudSeqPlay(0x34); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_BAC(60); +} + +void fn_1_11AE8(void) { + s32 spC = 0; + s32 sp8 = 0; + + fn_1_1DCC(lbl_1_bss_73C.unk00, 1, 2, 15, 0); + lbl_1_bss_73C.unk04 = (void*) fn_1_12F20; + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_7B4.unk00][1]); + HuAudCharVoicePlay(lbl_1_bss_7B4.unk34[lbl_1_bss_7B4.unk04].unk10, 0x12E); + lbl_1_bss_7B4.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_7B4.unk10); + fn_1_1DCC(lbl_1_bss_714.unk00, 1, 2, 15, 1); + fn_1_1CE8(lbl_1_bss_7B4.unk08, lbl_1_data_AF8[lbl_1_bss_7B4.unk00][0]); + fn_1_1ACC(lbl_1_bss_7B4.unk08, -1); + fn_1_1CE8(lbl_1_bss_7B4.unk08, MAKE_MESSID(37, 4)); + fn_1_1DCC(lbl_1_bss_714.unk00, 1, 1, 15, 1); + fn_1_1A64(lbl_1_bss_7B4.unk08); +} + +BOOL fn_1_11C6C(void) { + BOOL temp_r31 = FALSE; + + HuWinInsertMesSet(lbl_1_bss_7B4.unk08, MAKE_MESSID(30, 54) + lbl_1_bss_7B4.unk00, 3); + fn_1_1CE8(lbl_1_bss_7B4.unk08, lbl_1_data_AF8[lbl_1_bss_7B4.unk00][1]); + fn_1_1ACC(lbl_1_bss_7B4.unk08, 5); + lbl_1_bss_7B4.unk0C = fn_1_6EB8(MAKE_MESSID(30, 53), lbl_1_bss_7B4.unk10); + fn_1_1CE8(lbl_1_bss_7B4.unk0C, MAKE_MESSID(30, 53)); + temp_r31 = fn_1_1C34(lbl_1_bss_7B4.unk0C); + fn_1_1CE8(lbl_1_bss_7B4.unk0C, MAKE_MESSID(37, 4)); + fn_1_7028(lbl_1_bss_7B4.unk0C); + if (temp_r31) { + fn_1_1DCC(lbl_1_bss_73C.unk00, 1, 4, 15, 0); + lbl_1_bss_73C.unk04 = NULL; + fn_1_1DCC(lbl_1_bss_714.unk00, 1, 3, 15, 1); + } + return temp_r31; +} + +BOOL fn_1_11DD8(void) { + s32 temp_r31 = FALSE; + + fn_1_1CE8(lbl_1_bss_7B4.unk08, lbl_1_data_AF8[lbl_1_bss_7B4.unk00][2]); + fn_1_1ACC(lbl_1_bss_7B4.unk08, 5); + lbl_1_bss_7B4.unk0C = fn_1_6EB8(MAKE_MESSID(30, 53), lbl_1_bss_7B4.unk10); + fn_1_1CE8(lbl_1_bss_7B4.unk0C, MAKE_MESSID(30, 53)); + temp_r31 = fn_1_1B78(lbl_1_bss_7B4.unk0C, 1); + fn_1_1CE8(lbl_1_bss_7B4.unk0C, MAKE_MESSID(37, 4)); + fn_1_7028(lbl_1_bss_7B4.unk0C); + return temp_r31; +} + +void fn_1_11EC4(void) { + lbl_1_bss_73C.unk04 = (void*) fn_1_12FA8; + HuAudSeqFadeOut(lbl_1_bss_58[0], 3000); + fn_1_3804(&lbl_1_bss_4); + fn_1_2710(fn_1_1390C); + fn_1_BAC(150); +} + +void fn_1_11F28(void) { +} + +void fn_1_11F2C(s32 arg0) { + omOvlHisData* var_r30; + OverlayID sp8[] = { OVL_M445, OVL_M448, OVL_M447, OVL_M446, OVL_M449 }; + + if (arg0 != 0) { + fn_1_BAC(60); + HuAudSeqFadeOut(lbl_1_bss_58[0], 1000); + } + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + do { + fn_1_B8C(); + } while (WipeStatGet() != 0); + fn_1_BAC(60); + CharModelKill(-1); + var_r30 = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY, 2, var_r30->stat); + if (arg0 == 0) { + HuAudSeqAllFadeOut(1000); + HuAudSStreamAllFadeOut(1000); + omOvlCallEx(sp8[GWSystem.board], 1, 0, 0); + } else { + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_12070(omObjData* arg0, StructBss19C* arg1) { + s32 var_r31; + + fn_1_11A8C(); + fn_1_11AE8(); + lbl_1_bss_7B4.unk08 = fn_1_1834(1, 0, 21, 2, lbl_1_bss_7B4.unk10); + while (TRUE) { + fn_1_B8C(); + if (fn_1_11C6C()) { + var_r31 = 0; + break; + } + if (fn_1_11DD8()) { + var_r31 = 1; + break; + } + } + fn_1_1A64(lbl_1_bss_7B4.unk08); + fn_1_BAC(60); + switch (var_r31) { + case 0: + fn_1_11EC4(); + break; + case 1: + fn_1_11F28(); + break; + } + fn_1_11F2C(var_r31); + arg1->unk04 = NULL; +} + +void fn_1_12630(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_710, 0x100, 16, 16, -1, NULL); + lbl_1_bss_78C.unk00 = temp_r3; + lbl_1_bss_78C.unk04 = (void*) fn_1_12070; + lbl_1_bss_78C.unk00->data = &lbl_1_bss_78C; + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_78C.unk04 != NULL) { + lbl_1_bss_78C.unk04(temp_r3, &lbl_1_bss_78C); + } + } +} + +void fn_1_126E4(omObjData* arg0) { + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 56)); + arg0->motion[0] = Hu3DMotionIDGet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 0, 0, 2); + Hu3DModelShadowMapObjSet(arg0->model[1], "base_fix9-base"); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 59)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 60)); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY, 61)); + fn_1_1DCC(arg0, 2, 2, 0, 2); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 57)); + arg0->model[5] = Hu3DModelCreateFile(lbl_1_bss_7B4.unk00 + DATA_MAKE_NUM(DATADIR_MSTORY, 76)); + arg0->motion[5] = Hu3DMotionIDGet(arg0->model[5]); + Hu3DModelPosSet(arg0->model[5], 0.0f, 80.0f, 460.0f); + Hu3DModelShadowSet(arg0->model[5]); + fn_1_1DCC(arg0, 5, 5, 0, 2); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY, 75)); + arg0->motion[6] = Hu3DMotionIDGet(arg0->model[6]); + Hu3DModelHookSet(arg0->model[5], "stargbox_fix-effect_fook1", arg0->model[6]); + fn_1_1DCC(arg0, 6, 6, 0, 2); +} + +void fn_1_12918(omObjData* arg0, StructBss19C* arg1) { + Hu3DData[arg0->model[5]].pos.y = fn_1_ACC(80.0f, 90.0f, arg1->unk08++, 360.0f); + if (arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_129D4(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_710, 0x100, 16, 16, -1, NULL); + lbl_1_bss_764.unk00 = temp_r3; + lbl_1_bss_764.unk04 = (void*) fn_1_12918; + lbl_1_bss_764.unk00->data = &lbl_1_bss_764; + fn_1_126E4(temp_r3); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_764.unk04 != NULL) { + lbl_1_bss_764.unk04(temp_r3, &lbl_1_bss_764); + } + } +} + +void fn_1_12C94(s32 arg0) { + s32 spC[4]; + s32 i; + + spC[0] = 0; + for (i = 1; i < 4; i++) { + spC[i] = spC[i - 1] + 1; + if (spC[i] >= 4) { + spC[i] = 0; + } + if (arg0 == spC[i]) { + lbl_1_bss_7B4.unk04 = i; + } + } + for (i = 0; i < 4; i++) { + fn_1_352C(&lbl_1_bss_7B4.unk34[i], spC[i]); + } +} + +void fn_1_12D78(omObjData* arg0) { + s32 temp_r30; + + temp_r30 = lbl_1_bss_7B4.unk34[lbl_1_bss_7B4.unk04].unk10; + arg0->model[1] = CharModelCreate(temp_r30, 1); + arg0->motion[1] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); + arg0->motion[2] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 24)); + arg0->motion[3] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 52)); + arg0->motion[4] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 72)); + arg0->motion[5] = CharModelMotionCreate(temp_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 53)); + CharModelVoiceEnableSet(temp_r30, arg0->motion[2], 0); + CharModelMotionDataClose(temp_r30); + Hu3DModelPosSet(arg0->model[1], 120.0f, 0.0f, 670.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, -45.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 1, 0, 1); +} + +void fn_1_12F20(omObjData* arg0, StructBss19C* arg1) { + if (arg0->motion[2] == Hu3DMotionIDGet(arg0->model[1]) && Hu3DMotionEndCheck(arg0->model[1])) { + fn_1_1DCC(arg0, 1, 3, 15, 1); + arg1->unk04 = 0; + } +} + +void fn_1_12FA8(omObjData* arg0, StructBss19C* arg1) { + s32 i; + + fn_1_BAC(10); + fn_1_1DCC(arg0, 1, 5, 15, 0); + fn_1_B8C(); + Hu3DMotionTimeSet(arg0->model[1], 60.0f); + for (i = 0; i < 50; i++) { + fn_1_B8C(); + Hu3DData[arg0->model[1]].rot.y = fn_1_828(-60.0f, -120.0f, i, 60.0f); + } + fn_1_1DCC(arg0, 1, 1, 15, 1); + arg1->unk04 = 0; +} + +void fn_1_130C0(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_710, 0x100, 16, 16, -1, NULL); + lbl_1_bss_73C.unk00 = temp_r3; + lbl_1_bss_73C.unk04 = NULL; + lbl_1_bss_73C.unk00->data = &lbl_1_bss_73C; + fn_1_12D78(temp_r3); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_73C.unk04 != NULL) { + lbl_1_bss_73C.unk04(temp_r3, &lbl_1_bss_73C); + } + } +} + +void fn_1_132EC(omObjData* arg0, s32 arg1) { + s32 sp8[] = { + DATA_MAKE_NUM(DATADIR_MSTORY, 97), + DATA_MAKE_NUM(DATADIR_MSTORY, 108), + DATA_MAKE_NUM(DATADIR_MSTORY, 116), + DATA_MAKE_NUM(DATADIR_MSTORY, 124), + DATA_MAKE_NUM(DATADIR_MSTORY, 131) + }; + s32 sp1C[][3] = { + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x62), DATA_MAKE_NUM(DATADIR_MSTORY, 0x65), DATA_MAKE_NUM(DATADIR_MSTORY, 0x67) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x6D), DATA_MAKE_NUM(DATADIR_MSTORY, 0x70), DATA_MAKE_NUM(DATADIR_MSTORY, 0x72) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x75), DATA_MAKE_NUM(DATADIR_MSTORY, 0x78), DATA_MAKE_NUM(DATADIR_MSTORY, 0x7A) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x7D), DATA_MAKE_NUM(DATADIR_MSTORY, 0x7F), DATA_MAKE_NUM(DATADIR_MSTORY, 0x81) }, + { DATA_MAKE_NUM(DATADIR_MSTORY, 0x84), DATA_MAKE_NUM(DATADIR_MSTORY, 0x87), DATA_MAKE_NUM(DATADIR_MSTORY, 0x89) } + }; + + arg0->model[1] = Hu3DModelCreateFile(sp8[arg1]); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[1], sp1C[arg1][0]); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[1], sp1C[arg1][1]); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[1], sp1C[arg1][2]); + Hu3DModelPosSet(arg0->model[1], -120.0f, 0.0f, 670.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 45.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + if (arg1 == 3) { + Hu3DData[arg0->model[1]].pos.y = 50.0f; + } + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1DCC(arg0, 1, 1, 0, 1); +} + +void fn_1_13570(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_710, 0x100, 16, 16, -1, NULL); + lbl_1_bss_714.unk00 = temp_r3; + lbl_1_bss_714.unk04 = NULL; + lbl_1_bss_714.unk00->data = &lbl_1_bss_714; + fn_1_132EC(temp_r3, lbl_1_bss_7B4.unk00); + while (TRUE) { + fn_1_B8C(); + if (lbl_1_bss_714.unk04 != NULL) { + lbl_1_bss_714.unk04(temp_r3, &lbl_1_bss_714); + } + } +} + +void fn_1_13880(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 125.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20.x = -5.0f; + var_r31->unk20.y = 0.0f; + var_r31->unk20.z = 0.0f; + var_r31->unk38 = 1750.0f; +} + +void fn_1_1390C(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + if (var_r31->unk40 == 50) { + fn_1_1DCC(lbl_1_bss_764.unk00, 5, 5, 0, 0); + fn_1_1DCC(lbl_1_bss_764.unk00, 6, 6, 0, 0); + HuAudFXPlay(0xA1); + } + sp8.unk08.x = 0.0f; + sp8.unk08.y = 130.0f; + sp8.unk08.z = 460.0f; + sp8.unk20.x = 0.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 150.0f; + fn_1_51D0(var_r31, &sp8, var_r31->unk40, 180.0f, 10.0f); + if (var_r31->unk40++ >= 90) { + if (var_r31->unk40 == 91) { + lbl_1_bss_68 = HuAudFXPlay(0x21); + } + var_r31->unk20.x = fn_1_828(var_r31->unk20.x, -45.0f, var_r31->unk40 - 90, 90.0f); + Hu3DData[lbl_1_bss_764.unk00->model[5]].rot.x = fn_1_828(0.0f, 45.0f, var_r31->unk40 - 90, 90.0f); + } +} diff --git a/src/REL/mstoryDll/save.c b/src/REL/mstoryDll/save.c new file mode 100755 index 00000000..cde06d88 --- /dev/null +++ b/src/REL/mstoryDll/save.c @@ -0,0 +1,116 @@ +#include "REL/mstoryDll.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/hsfman.h" +#include "game/saveload.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" + +s32 lbl_1_bss_8BC; +Process* lbl_1_bss_8B8; + +s32 fn_1_13B48(s32 arg0) { + if (arg0 == 0 && _CheckFlag(FLAG_ID_MAKE(0, 2))) { + return 1; + } + if (arg0 == 1 && _CheckFlag(FLAG_ID_MAKE(0, 3))) { + return 1; + } + if (arg0 == 2 && _CheckFlag(FLAG_ID_MAKE(0, 4))) { + return 1; + } + if (arg0 == 3 && _CheckFlag(FLAG_ID_MAKE(0, 5))) { + return 1; + } + if (arg0 == 4 && _CheckFlag(FLAG_ID_MAKE(0, 6))) { + return 1; + } + if (arg0 == 5 && _CheckFlag(FLAG_ID_MAKE(0, 7))) { + return 1; + } + return 0; +} + +void fn_1_13C34(void) { + float sp8[2]; + s32 temp_r30; + s32 var_r29; + s32 var_r31; + + temp_r30 = 1; + Hu3DAllKill(); + HuSprClose(); + HuSprInit(); + if (SLSaveFlagGet() == 0) { + lbl_1_bss_8BC = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } + } + espInit(); + HuPrcVSleep(); + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_WIN, 32), 5000, 0); + espPosSet(var_r29, 288.0f, 240.0f); + espAttrReset(var_r29, 4); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + if (SLSaveFlagGet() == 1) { + HuWinInit(1); + HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(30, 22)); + var_r31 = HuWinExCreateStyled(-10000.0f, 150.0f, sp8[0], sp8[1], -1, 2); + winData[var_r31].active_pad = 1; + HuWinAttrSet(var_r31, 0x10); + HuWinExAnimIn(var_r31); + HuWinMesSet(var_r31, MAKE_MESSID(30, 22)); + temp_r30 = HuWinChoiceGet(var_r31, 0); + HuWinExAnimOut(var_r31); + HuWinExCleanup(var_r31); + if (SLSaveFlagGet() == 1 && temp_r30 == 0) { + SLCommonSet(); + SLSaveBoardStory(); + SLSave(); + } + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_8BC = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_13E2C(void) { + _SetFlag(9); + if (_CheckFlag(FLAG_ID_MAKE(0, 2)) && _CheckFlag(FLAG_ID_MAKE(0, 3)) && _CheckFlag(FLAG_ID_MAKE(0, 4)) && _CheckFlag(FLAG_ID_MAKE(0, 5)) && _CheckFlag(FLAG_ID_MAKE(0, 6))) { + OSReport("########## Next to MapSelect Event 11 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_13B48(GWSystem.board), _CheckFlag(9)); + HuPrcChildCreate(fn_1_13C34, 100, 0x2000, 0, HuPrcCurrentGet()); + do { + fn_1_B8C(); + } while (lbl_1_bss_8BC != 1); + omOvlGotoEx(OVL_MSTORY2, 1, 0, 0); + } else { + OSReport("########## Next to MapSelect Event 11 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_13B48(GWSystem.board), _CheckFlag(9)); + HuPrcChildCreate(fn_1_13C34, 100, 0x2000, 0, HuPrcCurrentGet()); + do { + fn_1_B8C(); + } while (lbl_1_bss_8BC != 1); + omOvlGotoEx(OVL_MENT, 1, 10, 0); + } + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_14150(Process* arg0) { + lbl_1_bss_8B8 = arg0; + HuPrcChildCreate(fn_1_13E2C, 100, 0x2000, 0, HuPrcCurrentGet()); +} From 806ec24c4eaec3eaa4663f7052229c34fbd9d215 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Thu, 9 Jan 2025 01:00:25 +0100 Subject: [PATCH 105/178] Apply macros and port mstoryDll to every version (#513) * Apply MTXDegToRad macros * Port mstoryDll to every version --- config/GMPE01_00/rels/mstoryDll/symbols.txt | 3 +- config/GMPE01_01/rels/mstoryDll/splits.txt | 4 +- config/GMPE01_01/rels/mstoryDll/symbols.txt | 529 ++++++++++---------- config/GMPJ01_00/rels/mstoryDll/splits.txt | 36 ++ config/GMPJ01_00/rels/mstoryDll/symbols.txt | 520 +++++++++---------- config/GMPP01_00/rels/mstoryDll/splits.txt | 36 ++ config/GMPP01_00/rels/mstoryDll/symbols.txt | 520 +++++++++---------- config/GMPP01_02/rels/mstoryDll/splits.txt | 36 ++ config/GMPP01_02/rels/mstoryDll/symbols.txt | 522 +++++++++---------- configure.py | 12 +- src/REL/m425Dll/main.c | 29 +- src/REL/mstoryDll/save.c | 32 +- 12 files changed, 1196 insertions(+), 1083 deletions(-) diff --git a/config/GMPE01_00/rels/mstoryDll/symbols.txt b/config/GMPE01_00/rels/mstoryDll/symbols.txt index 92563350..93875bb3 100644 --- a/config/GMPE01_00/rels/mstoryDll/symbols.txt +++ b/config/GMPE01_00/rels/mstoryDll/symbols.txt @@ -465,7 +465,8 @@ lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:4byte lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x3C data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 diff --git a/config/GMPE01_01/rels/mstoryDll/splits.txt b/config/GMPE01_01/rels/mstoryDll/splits.txt index dc2d5f55..7378f74e 100644 --- a/config/GMPE01_01/rels/mstoryDll/splits.txt +++ b/config/GMPE01_01/rels/mstoryDll/splits.txt @@ -10,13 +10,13 @@ REL/mstoryDll/main.c: .text start:0x00000000 end:0x00007090 .rodata start:0x00000000 end:0x00000108 .data start:0x00000000 end:0x00000190 - .bss start:0x00000000 end:0x00000058 + .bss start:0x00000000 end:0x000000A8 REL/mstoryDll/board_clear.c: .text start:0x00007090 end:0x0000A830 .rodata start:0x00000108 end:0x00000268 .data start:0x00000190 end:0x00000388 - .bss start:0x00000058 end:0x000002C8 + .bss start:0x000000A8 end:0x000002C8 REL/mstoryDll/board_miss.c: .text start:0x0000A830 end:0x0000E710 diff --git a/config/GMPE01_01/rels/mstoryDll/symbols.txt b/config/GMPE01_01/rels/mstoryDll/symbols.txt index 5dd7edd6..225344ab 100644 --- a/config/GMPE01_01/rels/mstoryDll/symbols.txt +++ b/config/GMPE01_01/rels/mstoryDll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x344 _prolog = .text:0x000003E8; // type:function size:0x54 scope:global _epilog = .text:0x0000043C; // type:function size:0x4C scope:global fn_1_488 = .text:0x00000488; // type:function size:0x1D0 -fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +ObjectSetup = .text:0x00000658; // type:function size:0x1D0 fn_1_828 = .text:0x00000828; // type:function size:0x28 fn_1_850 = .text:0x00000850; // type:function size:0x20 fn_1_870 = .text:0x00000870; // type:function size:0xD8 @@ -189,283 +189,284 @@ fn_1_13E2C = .text:0x00013E44; // type:function size:0x324 fn_1_14150 = .text:0x00014168; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float -lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte -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:0x14 data:4byte -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +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:0x1 scope:local data:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC scope:local data:4byte +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:0x14 scope:local data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 scope:local +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 scope:local +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 scope:local +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string -lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string -lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string -lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 scope:local data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 scope:local data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A scope:local data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 scope:local data:string lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 -lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string -lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string -lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string -lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string -lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string -lbl_1_data_17F = .data:0x0000017F; // type:object size:0xE data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 scope:local data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 scope:local data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 scope:local data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A scope:local data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A scope:local data:string +lbl_1_data_17F = .data:0x0000017F; // type:object size:0xE scope:local data:string lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string -lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string -lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string -lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string -lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string -lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string -lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string -lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string -lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string -lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string -lbl_1_data_338 = .data:0x00000338; // type:object size:0x1A data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 scope:local data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 scope:local data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 scope:local data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 scope:local data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 scope:local data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 scope:local data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 scope:local data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 scope:local data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF scope:local data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C scope:local data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D scope:local data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF scope:local data:string +lbl_1_data_338 = .data:0x00000338; // type:object size:0x1A scope:local data:string lbl_1_data_354 = .data:0x00000354; // type:object size:0x30 lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C -lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string -lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string -lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string -lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string -lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string -lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string -lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string -lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string -lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string -lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string -lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string -lbl_1_data_537 = .data:0x00000537; // type:object size:0x8 data:string +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 scope:local data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 scope:local data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 scope:local data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 scope:local data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 scope:local data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 scope:local data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 scope:local data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA scope:local data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C scope:local data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D scope:local data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF scope:local data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B scope:local data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 scope:local data:string +lbl_1_data_537 = .data:0x00000537; // type:object size:0x8 scope:local data:string lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 -lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string -lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string -lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string -lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string -lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string -lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string -lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string -lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string -lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string -lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string -lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string -lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string -lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string -lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string -lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string -lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string -lbl_1_data_AED = .data:0x00000AED; // type:object size:0x7 data:string +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 scope:local data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 scope:local data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 scope:local data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 scope:local data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 scope:local data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 scope:local data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 scope:local data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 scope:local data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF scope:local data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C scope:local data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D scope:local data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C scope:local data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 scope:local data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF scope:local data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 scope:local data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA scope:local data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 scope:local data:string +lbl_1_data_AED = .data:0x00000AED; // type:object size:0x7 scope:local data:string lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C -lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string -lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string -lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string -lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string -lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string -lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string -lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string -lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string -lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string -lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string -lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string -lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string -lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x1A data:string -lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 scope:local data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 scope:local data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 scope:local data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 scope:local data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 scope:local data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 scope:local data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 scope:local data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 scope:local data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF scope:local data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C scope:local data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D scope:local data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF scope:local data:string +lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x1A scope:local data:string +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0xC data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x3C lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 diff --git a/config/GMPJ01_00/rels/mstoryDll/splits.txt b/config/GMPJ01_00/rels/mstoryDll/splits.txt index 531cd645..14c897fa 100644 --- a/config/GMPJ01_00/rels/mstoryDll/splits.txt +++ b/config/GMPJ01_00/rels/mstoryDll/splits.txt @@ -5,3 +5,39 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstoryDll/main.c: + .text start:0x00000000 end:0x00007090 + .rodata start:0x00000000 end:0x00000108 + .data start:0x00000000 end:0x00000190 + .bss start:0x00000000 end:0x000000A8 + +REL/mstoryDll/board_clear.c: + .text start:0x00007090 end:0x0000A830 + .rodata start:0x00000108 end:0x00000268 + .data start:0x00000190 end:0x00000388 + .bss start:0x000000A8 end:0x000002C8 + +REL/mstoryDll/board_miss.c: + .text start:0x0000A830 end:0x0000E710 + .rodata start:0x00000268 end:0x000003B8 + .data start:0x00000388 end:0x00000570 + .bss start:0x000002C8 end:0x00000558 + +REL/mstoryDll/mg_clear.c: + .text start:0x0000E710 end:0x00011624 + .rodata start:0x000003B8 end:0x000004E0 + .data start:0x00000570 end:0x00000AF8 + .bss start:0x00000558 end:0x00000710 + +REL/mstoryDll/mg_miss.c: + .text start:0x00011624 end:0x00013B48 + .rodata start:0x000004E0 end:0x000005A8 + .data start:0x00000AF8 end:0x00000C50 + .bss start:0x00000710 end:0x000008B8 + +REL/mstoryDll/save.c: + .text start:0x00013B48 end:0x000141A0 + .rodata start:0x000005A8 end:0x000005B8 + .data start:0x00000C50 end:0x00000C98 + .bss start:0x000008B8 end:0x000008C0 diff --git a/config/GMPJ01_00/rels/mstoryDll/symbols.txt b/config/GMPJ01_00/rels/mstoryDll/symbols.txt index e9076690..56357717 100644 --- a/config/GMPJ01_00/rels/mstoryDll/symbols.txt +++ b/config/GMPJ01_00/rels/mstoryDll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x344 _prolog = .text:0x000003E8; // type:function size:0x54 scope:global _epilog = .text:0x0000043C; // type:function size:0x4C scope:global fn_1_488 = .text:0x00000488; // type:function size:0x1D0 -fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +ObjectSetup = .text:0x00000658; // type:function size:0x1D0 fn_1_828 = .text:0x00000828; // type:function size:0x28 fn_1_850 = .text:0x00000850; // type:function size:0x20 fn_1_870 = .text:0x00000870; // type:function size:0xD8 @@ -189,282 +189,284 @@ fn_1_13E2C = .text:0x00013E2C; // type:function size:0x324 fn_1_14150 = .text:0x00014150; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float -lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte -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:0x14 data:4byte -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 data:byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +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:0x1 scope:local data:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC scope:local data:4byte +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:0x14 scope:local data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 scope:local +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 scope:local +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 scope:local +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string -lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string -lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string -lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 scope:local data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 scope:local data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A scope:local data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 scope:local data:string lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 -lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string -lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string -lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string -lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string -lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 scope:local data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 scope:local data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 scope:local data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A scope:local data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A scope:local data:string lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string -lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string -lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string -lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string -lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string -lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string -lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string -lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string -lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string -lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 scope:local data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 scope:local data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 scope:local data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 scope:local data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 scope:local data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 scope:local data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 scope:local data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 scope:local data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF scope:local data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C scope:local data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D scope:local data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF scope:local data:string lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C lbl_1_data_354 = .data:0x00000354; // type:object size:0x34 lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C -lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string -lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string -lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string -lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string -lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string -lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string -lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string -lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string -lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string -lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string -lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 scope:local data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 scope:local data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 scope:local data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 scope:local data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 scope:local data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 scope:local data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 scope:local data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA scope:local data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C scope:local data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D scope:local data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF scope:local data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B scope:local data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 scope:local data:string lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 -lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string -lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string -lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string -lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string -lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string -lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string -lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string -lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string -lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string -lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string -lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string -lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string -lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string -lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string -lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string -lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 scope:local data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 scope:local data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 scope:local data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 scope:local data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 scope:local data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 scope:local data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 scope:local data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 scope:local data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF scope:local data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C scope:local data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D scope:local data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C scope:local data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 scope:local data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF scope:local data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 scope:local data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA scope:local data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 scope:local data:string lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C -lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string -lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string -lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string -lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string -lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string -lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string -lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string -lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string -lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string -lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string -lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string -lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 scope:local data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 scope:local data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 scope:local data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 scope:local data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 scope:local data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 scope:local data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 scope:local data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 scope:local data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF scope:local data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C scope:local data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D scope:local data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF scope:local data:string lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 -lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x3C lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 diff --git a/config/GMPP01_00/rels/mstoryDll/splits.txt b/config/GMPP01_00/rels/mstoryDll/splits.txt index 531cd645..14c897fa 100644 --- a/config/GMPP01_00/rels/mstoryDll/splits.txt +++ b/config/GMPP01_00/rels/mstoryDll/splits.txt @@ -5,3 +5,39 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstoryDll/main.c: + .text start:0x00000000 end:0x00007090 + .rodata start:0x00000000 end:0x00000108 + .data start:0x00000000 end:0x00000190 + .bss start:0x00000000 end:0x000000A8 + +REL/mstoryDll/board_clear.c: + .text start:0x00007090 end:0x0000A830 + .rodata start:0x00000108 end:0x00000268 + .data start:0x00000190 end:0x00000388 + .bss start:0x000000A8 end:0x000002C8 + +REL/mstoryDll/board_miss.c: + .text start:0x0000A830 end:0x0000E710 + .rodata start:0x00000268 end:0x000003B8 + .data start:0x00000388 end:0x00000570 + .bss start:0x000002C8 end:0x00000558 + +REL/mstoryDll/mg_clear.c: + .text start:0x0000E710 end:0x00011624 + .rodata start:0x000003B8 end:0x000004E0 + .data start:0x00000570 end:0x00000AF8 + .bss start:0x00000558 end:0x00000710 + +REL/mstoryDll/mg_miss.c: + .text start:0x00011624 end:0x00013B48 + .rodata start:0x000004E0 end:0x000005A8 + .data start:0x00000AF8 end:0x00000C50 + .bss start:0x00000710 end:0x000008B8 + +REL/mstoryDll/save.c: + .text start:0x00013B48 end:0x000141A0 + .rodata start:0x000005A8 end:0x000005B8 + .data start:0x00000C50 end:0x00000C98 + .bss start:0x000008B8 end:0x000008C0 diff --git a/config/GMPP01_00/rels/mstoryDll/symbols.txt b/config/GMPP01_00/rels/mstoryDll/symbols.txt index e9076690..0956831b 100644 --- a/config/GMPP01_00/rels/mstoryDll/symbols.txt +++ b/config/GMPP01_00/rels/mstoryDll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x344 _prolog = .text:0x000003E8; // type:function size:0x54 scope:global _epilog = .text:0x0000043C; // type:function size:0x4C scope:global fn_1_488 = .text:0x00000488; // type:function size:0x1D0 -fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +ObjectSetup = .text:0x00000658; // type:function size:0x1D0 fn_1_828 = .text:0x00000828; // type:function size:0x28 fn_1_850 = .text:0x00000850; // type:function size:0x20 fn_1_870 = .text:0x00000870; // type:function size:0xD8 @@ -189,282 +189,284 @@ fn_1_13E2C = .text:0x00013E2C; // type:function size:0x324 fn_1_14150 = .text:0x00014150; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float -lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte -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:0x14 data:4byte -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 data:byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +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:0x1 scope:local data:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC scope:local data:4byte +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:0x14 scope:local data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 scope:local +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 scope:local +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 scope:local +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string -lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string -lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string -lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 scope:local data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 scope:local data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A scope:local data:string +lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 scope:local data:string lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 -lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string -lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string -lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string -lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string -lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 scope:local data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 scope:local data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 scope:local data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A scope:local data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A scope:local data:string lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string -lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string -lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string -lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string -lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string -lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string -lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string -lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string -lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string -lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 scope:local data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 scope:local data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 scope:local data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 scope:local data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 scope:local data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 scope:local data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 scope:local data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 scope:local data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF scope:local data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C scope:local data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D scope:local data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF scope:local data:string lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C lbl_1_data_354 = .data:0x00000354; // type:object size:0x34 lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C -lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string -lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string -lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string -lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string -lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string -lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string -lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string -lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string -lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string -lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string -lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 scope:local data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 scope:local data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 scope:local data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 scope:local data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 scope:local data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 scope:local data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 scope:local data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA scope:local data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C scope:local data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D scope:local data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF scope:local data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B scope:local data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 scope:local data:string lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 -lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string -lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string -lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string -lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string -lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string -lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string -lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string -lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string -lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string -lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string -lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string -lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string -lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string -lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string -lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string -lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 scope:local data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 scope:local data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 scope:local data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 scope:local data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 scope:local data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 scope:local data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 scope:local data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 scope:local data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF scope:local data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C scope:local data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D scope:local data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C scope:local data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 scope:local data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF scope:local data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 scope:local data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA scope:local data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 scope:local data:string lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C -lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string -lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string -lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string -lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string -lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string -lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string -lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string -lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string -lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string -lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string -lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string -lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 scope:local data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 scope:local data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 scope:local data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 scope:local data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 scope:local data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 scope:local data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 scope:local data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 scope:local data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF scope:local data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C scope:local data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D scope:local data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF scope:local data:string lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 -lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x3C data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 diff --git a/config/GMPP01_02/rels/mstoryDll/splits.txt b/config/GMPP01_02/rels/mstoryDll/splits.txt index 531cd645..7378f74e 100644 --- a/config/GMPP01_02/rels/mstoryDll/splits.txt +++ b/config/GMPP01_02/rels/mstoryDll/splits.txt @@ -5,3 +5,39 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstoryDll/main.c: + .text start:0x00000000 end:0x00007090 + .rodata start:0x00000000 end:0x00000108 + .data start:0x00000000 end:0x00000190 + .bss start:0x00000000 end:0x000000A8 + +REL/mstoryDll/board_clear.c: + .text start:0x00007090 end:0x0000A830 + .rodata start:0x00000108 end:0x00000268 + .data start:0x00000190 end:0x00000388 + .bss start:0x000000A8 end:0x000002C8 + +REL/mstoryDll/board_miss.c: + .text start:0x0000A830 end:0x0000E710 + .rodata start:0x00000268 end:0x000003B8 + .data start:0x00000388 end:0x00000570 + .bss start:0x000002C8 end:0x00000558 + +REL/mstoryDll/mg_clear.c: + .text start:0x0000E710 end:0x00011624 + .rodata start:0x000003B8 end:0x000004E0 + .data start:0x00000570 end:0x00000AF8 + .bss start:0x00000558 end:0x00000710 + +REL/mstoryDll/mg_miss.c: + .text start:0x00011624 end:0x00013B48 + .rodata start:0x000004E0 end:0x000005A8 + .data start:0x00000AF8 end:0x00000C50 + .bss start:0x00000710 end:0x000008B8 + +REL/mstoryDll/save.c: + .text start:0x00013B48 end:0x000141B8 + .rodata start:0x000005A8 end:0x000005B8 + .data start:0x00000C50 end:0x00000C98 + .bss start:0x000008B8 end:0x000008C0 diff --git a/config/GMPP01_02/rels/mstoryDll/symbols.txt b/config/GMPP01_02/rels/mstoryDll/symbols.txt index 293cb82c..d7aca560 100644 --- a/config/GMPP01_02/rels/mstoryDll/symbols.txt +++ b/config/GMPP01_02/rels/mstoryDll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x344 _prolog = .text:0x000003E8; // type:function size:0x54 scope:global _epilog = .text:0x0000043C; // type:function size:0x4C scope:global fn_1_488 = .text:0x00000488; // type:function size:0x1D0 -fn_1_658 = .text:0x00000658; // type:function size:0x1D0 +ObjectSetup = .text:0x00000658; // type:function size:0x1D0 fn_1_828 = .text:0x00000828; // type:function size:0x28 fn_1_850 = .text:0x00000850; // type:function size:0x20 fn_1_870 = .text:0x00000870; // type:function size:0xD8 @@ -185,286 +185,288 @@ fn_1_13880 = .text:0x00013880; // type:function size:0x8C fn_1_1390C = .text:0x0001390C; // type:function size:0x23C fn_1_13B48 = .text:0x00013B48; // type:function size:0xEC fn_1_13C34 = .text:0x00013C34; // type:function size:0x210 -fn_1_13E44 = .text:0x00013E44; // type:function size:0x324 -fn_1_14168 = .text:0x00014168; // type:function size:0x50 +fn_1_13E2C = .text:0x00013E44; // type:function size:0x324 +fn_1_14150 = .text:0x00014168; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0xC data:4byte -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC data:4byte -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x4 data:float -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:0x1 data:byte -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float -lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC data:2byte -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 data:4byte -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC data:4byte -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:0x14 data:4byte -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 data:4byte -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC data:4byte -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 data:byte -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 data:4byte -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 data:4byte -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC data:4byte -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC data:4byte -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC data:4byte -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 data:4byte -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 data:4byte -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 data:4byte -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 data:byte -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 data:4byte -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 data:4byte -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C data:4byte -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // 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:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +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:0x1 scope:local data:byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local data:float +lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0xC scope:local data:4byte +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:0x14 scope:local data:4byte +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x64 scope:local +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x64 scope:local +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x64 scope:local +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x60 -lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 data:string -lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 data:string -lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x27 scope:local data:string +lbl_1_data_87 = .data:0x00000087; // type:object size:0x26 scope:local data:string +lbl_1_data_AD = .data:0x000000AD; // type:object size:0x2A scope:local data:string lbl_1_data_D7 = .data:0x000000D7; // type:object size:0x29 data:string lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 -lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 data:string -lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 data:string -lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 data:string -lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A data:string -lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A data:string +lbl_1_data_110 = .data:0x00000110; // type:object size:0x28 scope:local data:string +lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 scope:local data:string +lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 scope:local data:string +lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A scope:local data:string +lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A scope:local data:string lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C -lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 data:string -lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 data:string -lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 data:string -lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 data:string -lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 data:string -lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 data:string -lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 data:string -lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF data:string -lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C data:string -lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D data:string -lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0xF data:string +lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 scope:local data:string +lbl_1_data_232 = .data:0x00000232; // type:object size:0x15 scope:local data:string +lbl_1_data_247 = .data:0x00000247; // type:object size:0x16 scope:local data:string +lbl_1_data_25D = .data:0x0000025D; // type:object size:0x15 scope:local data:string +lbl_1_data_272 = .data:0x00000272; // type:object size:0x17 scope:local data:string +lbl_1_data_289 = .data:0x00000289; // type:object size:0x16 scope:local data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x16 scope:local data:string +lbl_1_data_2B5 = .data:0x000002B5; // type:object size:0x15 scope:local data:string +lbl_1_data_2CA = .data:0x000002CA; // type:object size:0xF scope:local data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C scope:local data:string +lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D scope:local data:string +lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0xF scope:local data:string lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C lbl_1_data_354 = .data:0x00000354; // type:object size:0x34 lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C -lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 data:string -lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 data:string -lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 data:string -lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 data:string -lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 data:string -lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 data:string -lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 data:string -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA data:string -lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C data:string -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D data:string -lbl_1_data_505 = .data:0x00000505; // type:object size:0xF data:string -lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B data:string -lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 data:string +lbl_1_data_414 = .data:0x00000414; // type:object size:0x16 scope:local data:string +lbl_1_data_42A = .data:0x0000042A; // type:object size:0x15 scope:local data:string +lbl_1_data_43F = .data:0x0000043F; // type:object size:0x16 scope:local data:string +lbl_1_data_455 = .data:0x00000455; // type:object size:0x15 scope:local data:string +lbl_1_data_46A = .data:0x0000046A; // type:object size:0x16 scope:local data:string +lbl_1_data_480 = .data:0x00000480; // type:object size:0x15 scope:local data:string +lbl_1_data_495 = .data:0x00000495; // type:object size:0x17 scope:local data:string +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x16 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0xA scope:local data:string +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x1C scope:local data:string +lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D scope:local data:string +lbl_1_data_505 = .data:0x00000505; // type:object size:0xF scope:local data:string +lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B scope:local data:string +lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 scope:local data:string lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 -lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 data:string -lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 data:string -lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 data:string -lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 data:string -lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 data:string -lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 data:string -lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 data:string -lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 data:string -lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF data:string -lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C data:string -lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D data:string -lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C data:string -lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 data:string -lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF data:string -lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 data:string -lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA data:string -lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 data:string +lbl_1_data_980 = .data:0x00000980; // type:object size:0x15 scope:local data:string +lbl_1_data_995 = .data:0x00000995; // type:object size:0x14 scope:local data:string +lbl_1_data_9A9 = .data:0x000009A9; // type:object size:0x15 scope:local data:string +lbl_1_data_9BE = .data:0x000009BE; // type:object size:0x14 scope:local data:string +lbl_1_data_9D2 = .data:0x000009D2; // type:object size:0x15 scope:local data:string +lbl_1_data_9E7 = .data:0x000009E7; // type:object size:0x14 scope:local data:string +lbl_1_data_9FB = .data:0x000009FB; // type:object size:0x15 scope:local data:string +lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x14 scope:local data:string +lbl_1_data_A24 = .data:0x00000A24; // type:object size:0xF scope:local data:string +lbl_1_data_A33 = .data:0x00000A33; // type:object size:0x1C scope:local data:string +lbl_1_data_A4F = .data:0x00000A4F; // type:object size:0x1D scope:local data:string +lbl_1_data_A6C = .data:0x00000A6C; // type:object size:0x1C scope:local data:string +lbl_1_data_A88 = .data:0x00000A88; // type:object size:0x32 scope:local data:string +lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF scope:local data:string +lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 scope:local data:string +lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA scope:local data:string +lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 scope:local data:string lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C -lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 data:string -lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 data:string -lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 data:string -lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 data:string -lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 data:string -lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 data:string -lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 data:string -lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 data:string -lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF data:string -lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C data:string -lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D data:string -lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF data:string +lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 scope:local data:string +lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 scope:local data:string +lbl_1_data_B5D = .data:0x00000B5D; // type:object size:0x15 scope:local data:string +lbl_1_data_B72 = .data:0x00000B72; // type:object size:0x14 scope:local data:string +lbl_1_data_B86 = .data:0x00000B86; // type:object size:0x15 scope:local data:string +lbl_1_data_B9B = .data:0x00000B9B; // type:object size:0x14 scope:local data:string +lbl_1_data_BAF = .data:0x00000BAF; // type:object size:0x15 scope:local data:string +lbl_1_data_BC4 = .data:0x00000BC4; // type:object size:0x14 scope:local data:string +lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF scope:local data:string +lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C scope:local data:string +lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D scope:local data:string +lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF scope:local data:string lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 -lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 data:string +lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:4byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte +lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x4 data:4byte +lbl_1_bss_6C = .bss:0x0000006C; // type:object size:0x3C data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x28 data:4byte lbl_1_bss_D4 = .bss:0x000000D4; // type:object size:0xA0 diff --git a/configure.py b/configure.py index a4d446ec..d2b126c7 100644 --- a/configure.py +++ b/configure.py @@ -1398,12 +1398,12 @@ config.libs = [ Rel( "mstoryDll", objects={ - Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/main.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/board_clear.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/board_miss.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/mg_clear.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/mg_miss.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstoryDll/save.c"), + Object(Matching, "REL/mstoryDll/main.c"), + Object(Matching, "REL/mstoryDll/board_clear.c"), + Object(Matching, "REL/mstoryDll/board_miss.c"), + Object(Matching, "REL/mstoryDll/mg_clear.c"), + Object(Matching, "REL/mstoryDll/mg_miss.c"), + Object(Matching, "REL/mstoryDll/save.c"), }, ), Rel( diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c index ae214b28..9fc806f3 100644 --- a/src/REL/m425Dll/main.c +++ b/src/REL/m425Dll/main.c @@ -565,17 +565,17 @@ void fn_1_14CC(Mtx arg0, float arg8, float arg9, float argA) Mtx sp38; Mtx sp8; if (argA != 0.0f) { - PSMTXRotRad(arg0, 0x5A, 0.017453292f * argA); + PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); } else { PSMTXIdentity(arg0); } if (arg8 != 0.0f) { - PSMTXRotRad(sp38, 0x58, 0.017453292f * arg8); + PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); PSMTXConcat(sp38, arg0, arg0); } if (arg9 != 0.0f) { - PSMTXRotRad(sp8, 0x59, 0.017453292f * arg9); + PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); PSMTXConcat(sp8, arg0, arg0); } } @@ -613,23 +613,6 @@ void fn_1_16B0(Mtx var_r30, Vec *var_r31) var_r31->y = fn_1_15EC(var_f25, var_f29); } -static inline float fn_1_1B40_inline(omObjData *object, s32 arg1, s32 arg2, float arg8, float arg9) -{ - float var_f31; - float var_f30; - - var_f30 = sqrtf(arg8); - var_f31 = arg9 + arg8; - if (var_f31 < 0.0f) { - var_f31 += var_f30 + arg2 + arg1; - } - else if (var_f31 >= var_f30) { - var_f31 -= var_f30 + object->group; - } - return var_f31; -} - -// TODO get a working stripped out inline https://decomp.me/scratch/2IbZG void fn_1_1B40(omObjData *object) { Mtx spCC; @@ -698,8 +681,10 @@ void fn_1_1B40(omObjData *object) break; } if (0) { - fn_1_1B40_inline(object, 1, 2, 0.0f, 0.0f); - fn_1_1B40_inline(object, 1, 2, 0.0f, 0.0f); + int x = 12; + int y = 24; + char *str = "%f"; + print8(x, y, 1.5f, str, sqrtf(fn_1_15EC(object->trans.x, object->trans.y))); } var_r31->unk_38 = var_r31->unk_04 * sind(var_r31->unk_18); var_r31->unk_40 = var_r31->unk_04 * cosd(var_r31->unk_18); diff --git a/src/REL/mstoryDll/save.c b/src/REL/mstoryDll/save.c index cde06d88..eb848ba1 100755 --- a/src/REL/mstoryDll/save.c +++ b/src/REL/mstoryDll/save.c @@ -2,6 +2,7 @@ #include "game/data.h" #include "game/esprite.h" #include "game/flag.h" +#include "game/gamework_data.h" #include "game/hsfman.h" #include "game/saveload.h" #include "game/sprite.h" @@ -9,11 +10,12 @@ #include "game/wipe.h" s32 lbl_1_bss_8BC; -Process* lbl_1_bss_8B8; +Process *lbl_1_bss_8B8; -s32 fn_1_13B48(s32 arg0) { +s32 fn_1_13B48(s32 arg0) +{ if (arg0 == 0 && _CheckFlag(FLAG_ID_MAKE(0, 2))) { - return 1; + return 1; } if (arg0 == 1 && _CheckFlag(FLAG_ID_MAKE(0, 3))) { return 1; @@ -33,7 +35,8 @@ s32 fn_1_13B48(s32 arg0) { return 0; } -void fn_1_13C34(void) { +void fn_1_13C34(void) +{ float sp8[2]; s32 temp_r30; s32 var_r29; @@ -71,6 +74,9 @@ void fn_1_13C34(void) { HuWinExAnimOut(var_r31); HuWinExCleanup(var_r31); if (SLSaveFlagGet() == 1 && temp_r30 == 0) { +#if VERSION_REV1 + GWGameStat.story_continue = 1; +#endif SLCommonSet(); SLSaveBoardStory(); SLSave(); @@ -87,17 +93,22 @@ void fn_1_13C34(void) { } } -void fn_1_13E2C(void) { +void fn_1_13E2C(void) +{ _SetFlag(9); - if (_CheckFlag(FLAG_ID_MAKE(0, 2)) && _CheckFlag(FLAG_ID_MAKE(0, 3)) && _CheckFlag(FLAG_ID_MAKE(0, 4)) && _CheckFlag(FLAG_ID_MAKE(0, 5)) && _CheckFlag(FLAG_ID_MAKE(0, 6))) { - OSReport("########## Next to MapSelect Event 11 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_13B48(GWSystem.board), _CheckFlag(9)); + if (_CheckFlag(FLAG_ID_MAKE(0, 2)) && _CheckFlag(FLAG_ID_MAKE(0, 3)) && _CheckFlag(FLAG_ID_MAKE(0, 4)) && _CheckFlag(FLAG_ID_MAKE(0, 5)) + && _CheckFlag(FLAG_ID_MAKE(0, 6))) { + OSReport( + "########## Next to MapSelect Event 11 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_13B48(GWSystem.board), _CheckFlag(9)); HuPrcChildCreate(fn_1_13C34, 100, 0x2000, 0, HuPrcCurrentGet()); do { fn_1_B8C(); } while (lbl_1_bss_8BC != 1); omOvlGotoEx(OVL_MSTORY2, 1, 0, 0); - } else { - OSReport("########## Next to MapSelect Event 11 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_13B48(GWSystem.board), _CheckFlag(9)); + } + else { + OSReport( + "########## Next to MapSelect Event 11 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_13B48(GWSystem.board), _CheckFlag(9)); HuPrcChildCreate(fn_1_13C34, 100, 0x2000, 0, HuPrcCurrentGet()); do { fn_1_B8C(); @@ -110,7 +121,8 @@ void fn_1_13E2C(void) { } } -void fn_1_14150(Process* arg0) { +void fn_1_14150(Process *arg0) +{ lbl_1_bss_8B8 = arg0; HuPrcChildCreate(fn_1_13E2C, 100, 0x2000, 0, HuPrcCurrentGet()); } From 49696ac31b789106eb8cc365d5d48e74582be657 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Thu, 9 Jan 2025 03:51:14 +0100 Subject: [PATCH 106/178] Match m430Dll/main.c (#514) --- config/GMPE01_00/rels/m430Dll/symbols.txt | 616 +++++++++++----------- configure.py | 2 +- include/REL/m430Dll.h | 26 + src/REL/m430Dll/main.c | 569 ++++++++++++++++++++ 4 files changed, 904 insertions(+), 309 deletions(-) create mode 100644 include/REL/m430Dll.h create mode 100644 src/REL/m430Dll/main.c diff --git a/config/GMPE01_00/rels/m430Dll/symbols.txt b/config/GMPE01_00/rels/m430Dll/symbols.txt index b27b88e7..df73f081 100644 --- a/config/GMPE01_00/rels/m430Dll/symbols.txt +++ b/config/GMPE01_00/rels/m430Dll/symbols.txt @@ -115,313 +115,313 @@ fn_1_133A4 = .text:0x000133A4; // type:function size:0x38 fn_1_133DC = .text:0x000133DC; // type:function size:0xB4 _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:0x4 data:float -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:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 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:4byte -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x10 data:4byte -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x10 data:4byte -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 data:4byte -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x10 data:4byte -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:4byte -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x18 data:4byte -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:4byte -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC data:4byte -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0xC data:4byte -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0xC data:4byte -lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 data:float -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0xC data:4byte -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x18 data:4byte -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x18 data:4byte -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x8 data:4byte -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x8 data:4byte -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x20 data:4byte -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x14 data:4byte -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x10 data:4byte -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x10 data:4byte -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x1 data:byte -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x1 data:byte -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x1 data:byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x1 data:byte -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x1 data:byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x1 data:byte -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x1 data:byte -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x1 data:byte -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x1 data:byte -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:4byte -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0xC data:4byte -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:double -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 data:double -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float -lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float -lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 data:double -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 data:double -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float -lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float -lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float -lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x8 data:double -lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double -lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float -lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x8 data:double -lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 data:float -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double -lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x8 data:double -lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double -lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float -lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float -lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 data:double -lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x4 data:float -lbl_1_rodata_6BC = .rodata:0x000006BC; // type:object size:0x4 data:float -lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 data:double -lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x8 data:double -lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x8 data:double -lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float -lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float -lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x8 data:double +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:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 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:4byte +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0xC scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0xC scope:local data:float +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0xC 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0xC 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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x18 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x30 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x18 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 scope:local data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 scope:local data:double +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 scope:local data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 scope:local data:double +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 scope:local data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 scope:local data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 scope:local data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 scope:local data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 scope:local data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 scope:local data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 scope:local data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 scope:local data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 scope:local data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 scope:local data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x8 scope:local data:double +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x8 scope:local data:double +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 scope:local data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 scope:local data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 scope:local data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 scope:local data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 scope:local data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x8 scope:local data:double +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 scope:local data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 scope:local data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x8 scope:local data:double +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 scope:local data:float +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 scope:local data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x8 scope:local data:double +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_6B8 = .rodata:0x000006B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6BC = .rodata:0x000006BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_6C8 = .rodata:0x000006C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_6D0 = .rodata:0x000006D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x8 scope:local data:double 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:0xC data:float @@ -461,7 +461,7 @@ lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x2 data:2byte lbl_1_bss_22 = .bss:0x00000022; // type:object size:0x2 data:2byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 data:2byte -lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x6 data:2byte +lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 data:2byte lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x2 data:2byte lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index d2b126c7..23ff3deb 100644 --- a/configure.py +++ b/configure.py @@ -1087,7 +1087,7 @@ config.libs = [ Rel( "m430Dll", # Pair-a-sailing objects={ - Object(NonMatching, "REL/m430Dll/main.c"), + Object(Matching, "REL/m430Dll/main.c"), Object(NonMatching, "REL/m430Dll/water.c"), Object(NonMatching, "REL/m430Dll/player.c"), }, diff --git a/include/REL/m430Dll.h b/include/REL/m430Dll.h new file mode 100644 index 00000000..f6a826a0 --- /dev/null +++ b/include/REL/m430Dll.h @@ -0,0 +1,26 @@ +#ifndef M430DLL_H +#define M430DLL_H + +#include "game/object.h" + +s32 fn_1_4030(void); +u32 fn_1_4058(void); +u32 fn_1_4070(void); +u32 fn_1_4088(void); +void fn_1_40D0(s32 arg0); +void fn_1_4100(s32 arg0); +float fn_1_4130(void); +float fn_1_48B0(float arg8, float arg9, float argA); + +void fn_1_4A80(Process *process); +void fn_1_4C48(void); +float fn_1_7FBC(s32 arg0); +void fn_1_7FFC(s32 arg0, float arg8); +void fn_1_AEE0(s32 arg0, Vec *arg1, float arg8, float arg9); +void fn_1_B570(s32 arg0, Vec *arg1, float arg8, float arg9); +void fn_1_BB98(u32 arg0); + +void fn_1_BBC4(Process *process); +void fn_1_C00C(void); + +#endif diff --git a/src/REL/m430Dll/main.c b/src/REL/m430Dll/main.c new file mode 100644 index 00000000..bf93c2c6 --- /dev/null +++ b/src/REL/m430Dll/main.c @@ -0,0 +1,569 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/flag.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m430Dll.h" + +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + +typedef struct M430DllMainWork { + u32 unk_00; + s32 unk_04; + s32 unk_08; + u32 unk_0C; + s32 unk_10; + u32 unk_14; + s32 unk_18; + s32 unk_1C; + s32 unk_20; + u32 unk_24; + u32 unk_28; + s32 unk_2C; + u32 unk_30; + s32 unk_34; +} M430DllMainWork; /* size = 0x38 */ + +void fn_1_10FC(omObjData *object); +void fn_1_168C(omObjData *object); +void fn_1_1B04(omObjData *object); +void fn_1_21E4(omObjData *object); +void fn_1_2710(omObjData *object); +omObjFunc fn_1_2D48(Process *process, omObjData *object); +void fn_1_2E80(omObjData *object); +omObjFunc fn_1_369C(Process *arg1, omObjData *object); +void fn_1_3768(omObjData *object); +s32 fn_1_4030(void); +void fn_1_65C(omObjData *object); +void fn_1_A54(omObjData *arg0); +void fn_1_B98(omObjData *object); + +Vec lbl_1_data_0 = { 100.0f, 800.0f, -100.0f }; +Vec lbl_1_data_C = { 0.3f, -0.8f, 0.3f }; +Vec lbl_1_data_18 = { 10.0f, 45.0f, 3500.0f }; +GXColor lbl_1_data_24 = { 0xFF, 0xFF, 0xFF, 0xFF }; +Vec lbl_1_data_28 = { 50.0f, 150000.0f, 50.0f }; +Vec lbl_1_data_34 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_40 = { 0.0f, 0.0f, 0.0f }; + +Process *lbl_1_bss_38; +omObjData *lbl_1_bss_34; +omObjData *lbl_1_bss_30; +s16 lbl_1_bss_2C; +char lbl_1_bss_28[4]; +s16 lbl_1_bss_26; +s16 lbl_1_bss_24; +s16 lbl_1_bss_22; +s16 lbl_1_bss_20; +s32 lbl_1_bss_1C; +s32 lbl_1_bss_18; +s32 lbl_1_bss_14; +s16 lbl_1_bss_10; +s32 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +void ObjectSetup(void) +{ + Mtx sp20; + Vec sp14; + Vec sp8; + Process *var_r31; + LightData *var_r30; + + HuAudSndGrpSet(0x37); + lbl_1_bss_C = lbl_1_bss_8 = -1; + lbl_1_bss_4 = lbl_1_bss_0 = -1; + lbl_1_bss_2C = -1; + lbl_1_bss_14 = 1; + lbl_1_data_28.x = 200.0f; + lbl_1_data_28.y = 1200.0f; + lbl_1_data_28.z = 160.0f; + lbl_1_data_34.x = 0.0f; + lbl_1_data_34.y = 1.0f; + lbl_1_data_34.z = 0.0f; + lbl_1_data_40.x = 0.0f; + lbl_1_data_40.y = 0.0f; + lbl_1_data_40.z = 0.0f; + Hu3DShadowCreate(30.0f, 20.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); + lbl_1_bss_26 = Hu3DGLightCreateV(&lbl_1_data_0, &lbl_1_data_C, &lbl_1_data_24); + Hu3DGLightInfinitytSet(lbl_1_bss_26); + var_r30 = &Hu3DGlobalLight[lbl_1_bss_26]; + var_r30->unk_00 |= 0x8000; + lbl_1_data_18.x = 34.75f; + lbl_1_data_18.y = -24.75f; + lbl_1_data_18.z = 3500.0f; + sp14.x = sp14.y = sp14.z = 0.0f; + sp8.x = sp8.z = 0.0f; + sp8.y = lbl_1_data_18.z; + mtxRot(sp20, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); + PSMTXMultVec(sp20, &sp8, &sp8); + Hu3DGLightPosAimSetV(lbl_1_bss_26, &sp8, &sp14); + Hu3DShadowPosSet(&sp8, &lbl_1_data_34, &sp14); + lbl_1_bss_24 = lbl_1_bss_22 = lbl_1_bss_20 = -1; + lbl_1_bss_1C = 1; + lbl_1_bss_18 = 1; + var_r31 = omInitObjMan(0x32, 0x2000); + lbl_1_bss_38 = var_r31; + omGameSysInit(var_r31); + Hu3DCameraCreate(3); + Hu3DCameraPerspectiveSet(1, -1.0f, 5.0f, 25000.0f, 0.6f); + Hu3DCameraPerspectiveSet(2, -1.0f, 5.0f, 25000.0f, 0.6f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraViewportSet(2, 320.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x140, 0x1E0); + Hu3DCameraScissorSet(2, 0x140, 0, 0x140, 0x1E0); + lbl_1_bss_30 = omAddObjEx(var_r31, 0x7FDA, 0, 0, -1, omOutViewMulti); + lbl_1_bss_30->work[0] = 2; + lbl_1_bss_34 = omAddObjEx(var_r31, 0xA, 0, 0, -1, fn_1_65C); + fn_1_4A80(var_r31); + fn_1_BBC4(var_r31); + lbl_1_bss_10 = espEntry(0x3D001B, 0x64, 0); + espPosSet(lbl_1_bss_10, 288.0, 240.0); + espScaleSet(lbl_1_bss_10, 0.22499999403953552, 60.0); + espDispOff(lbl_1_bss_10); +} + +void fn_1_65C(omObjData *object) +{ + M430DllMainWork *work; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M430DllMainWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M430DllMainWork)); + work->unk_00 = 0; + work->unk_04 = 0; + work->unk_0C = 0; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0; + work->unk_24 = 0; + work->unk_28 = 0; + work->unk_08 = 0; + work->unk_2C = 0; + work->unk_30 = 0; + work->unk_34 = 0; + object->func = fn_1_B98; +} + +void fn_1_720(omObjData *object) +{ + M430DllMainWork *work = object->data; + work->unk_04++; + work->unk_10++; + work->unk_18++; + work->unk_28++; + if ((omSysExitReq != 0) && (work->unk_00 != 5)) { + work->unk_00 = 4; + fn_1_A54(object); + } + if (lbl_1_bss_18 == 0) { + if (fn_1_4030() != 0) { + if ((Hu3DCamera->fov < 0.0f) || (Hu3DCamera[1].fov < 0.0f)) { + Hu3DCameraPerspectiveSet(1, 41.5f, 5.0f, 25000.0f, 0.6f); + Hu3DCameraPerspectiveSet(2, 41.5f, 5.0f, 25000.0f, 0.6f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraViewportSet(2, 320.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x140, 0x1E0); + Hu3DCameraScissorSet(2, 0x140, 0, 0x140, 0x1E0); + } + } + else if ((Hu3DCamera->fov < 0.0f) || (Hu3DCamera[1].fov >= 0.0f)) { + Hu3DCamera[1].fov = -1.0f; + Hu3DCameraPerspectiveSet(1, 41.5f, 5.0f, 25000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x280, 0x1E0); + } + } +} + +void fn_1_A54(omObjData *object) +{ + M430DllMainWork *work = object->data; + if (work->unk_08 == 0) { + switch (work->unk_00) { + case 0: + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + lbl_1_bss_18 = 0; + work->unk_00 = 1; + work->unk_10 = 0; + object->func = fn_1_2D48(lbl_1_bss_38, object); + break; + case 1: + work->unk_00 = 2; + work->unk_18 = 0; + object->func = fn_1_1B04; + break; + case 2: + work->unk_00 = 3; + work->unk_28 = 0; + object->func = fn_1_369C(lbl_1_bss_38, object); + break; + case 3: + case 4: + work->unk_08 = 1; + work->unk_00 = 5; + object->func = fn_1_10FC; + break; + case 5: + default: + work->unk_00 = 5; + object->func = fn_1_168C; + break; + } + work->unk_04 = 0; + } +} + +void fn_1_B98(omObjData *object) +{ + fn_1_720(object); + fn_1_A54(object); +} + +void fn_1_10FC(omObjData *object) +{ + M430DllMainWork *work = object->data; + fn_1_720(object); + + if (WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + lbl_1_bss_14 = 1; + work->unk_08 = 0; + fn_1_A54(object); + } +} + +void fn_1_168C(omObjData *object) +{ + fn_1_720(object); + if (WipeStatGet() == 0) { + fn_1_C00C(); + fn_1_4C48(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_1B04(omObjData *object) +{ + M430DllMainWork *work = object->data; + fn_1_720(object); + switch (work->unk_14) { + case 0: + lbl_1_bss_1C = 1; + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + lbl_1_bss_14 = 0; + espDispOn(lbl_1_bss_10); + work->unk_1C = 0x2D; + work->unk_20 = 0x3C; + CenterM->x = -450.0f; + CenterM[1].x = 450.0f; + CenterM->y = CenterM[1].y = 300.0f; + CenterM->z = CenterM[1].z = 950.0f; + CRotM->x = CRotM[1].x = -5.0f; + CRotM->y = CRotM[1].y = 0.0f; + CZoomM[0] = CZoomM[1] = 700.0f; + work->unk_14 = 1; + work->unk_18 = 0; + object->work[0] = 0; + return; + case 1: + if (object->work[0] == 0) { + if (WipeStatGet() == 0) { + lbl_1_bss_24 = MGSeqCreate(3, 0); + MGSeqPosSet(lbl_1_bss_24, 320.0f, 240.0f); + object->work[0]++; + } + } + else { + if ((lbl_1_bss_4 < 0) && ((MGSeqStatGet(lbl_1_bss_24) & 0x10) != 0)) { + lbl_1_bss_4 = HuAudSeqPlay(0x4A); + } + if ((MGSeqStatGet(lbl_1_bss_24) == 0) && (work->unk_08 == 0)) { + lbl_1_bss_2C = MGSeqCreate(1, work->unk_1C, -1, -1); + work->unk_14 = 2; + work->unk_18 = 0; + object->func = fn_1_21E4; + } + } + break; + } +} + +void fn_1_21E4(omObjData *object) +{ + M430DllMainWork *work = object->data; + s32 var_r27 = 0; + fn_1_720(object); + if (--work->unk_20 == 0) { + work->unk_20 = 0x3C; + work->unk_1C--; + if (work->unk_1C <= 0) { + var_r27 = 1; + } + } + if (var_r27 != 0) { + lbl_1_bss_22 = MGSeqCreate(3, 1); + MGSeqPosSet(lbl_1_bss_22, 320.0f, 240.0f); + HuAudSeqFadeOut(lbl_1_bss_4, 0x64); + object->work[1] = 0; + work->unk_14 = 3; + work->unk_18 = 0; + if (work->unk_08 == 0) { + object->func = fn_1_2710; + } + } + MGSeqParamSet(lbl_1_bss_2C, 1, work->unk_1C); +} + +void fn_1_2710(omObjData *object) +{ + M430DllMainWork *work = object->data; + if (lbl_1_bss_2C >= 0) { + MGSeqParamSet(lbl_1_bss_2C, 2, -1); + lbl_1_bss_2C = -1; + } + fn_1_720(object); + if (object->work[1] == 0) { + if (MGSeqStatGet(lbl_1_bss_22) == 0) { + if (work->unk_08 == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + lbl_1_bss_14 = 1; + } + object->work[1]++; + HuAudFXFadeOut(lbl_1_bss_C, 0x1E); + } + } + else if ((WipeStatGet() == 0) && (work->unk_30 == 0x1111)) { + work->unk_14 = 4; + work->unk_18 = 0; + fn_1_A54(object); + } +} + +omObjFunc fn_1_2D48(Process *process, omObjData *object) +{ + CenterM->x = CenterM[1].x = 0.0f; + CenterM->y = CenterM[1].y = 300.0f; + CenterM->z = CenterM[1].z = 950.0f; + CRotM->x = CRotM[1].x = -5.0f; + CRotM->y = CRotM[1].y = 0.0f; + CZoomM[0] = CZoomM[1] = 700.0f; + object->work[0] = object->work[1] = 0; + lbl_1_bss_1C = 0; + lbl_1_bss_C = HuAudFXPlay(0x674); + return fn_1_2E80; +} + +void fn_1_2E80(omObjData *object) +{ + M430DllMainWork *work = object->data; + fn_1_720(object); + work->unk_0C = 1; + object->work[0]++; + switch (object->work[1]) { + case 0: + if (object->work[0] > 180.0f) { + if (work->unk_08 == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + lbl_1_bss_14 = 1; + } + object->work[1]++; + object->work[0] = 0; + } + break; + case 1: + if (WipeStatGet() == 0) { + object->work[0] = 0; + work->unk_0C = 2; + fn_1_A54(object); + } + break; + } +} + +omObjFunc fn_1_369C(Process *arg0, omObjData *object) +{ + M430DllMainWork *work = object->data; + s32 spC = 0; + s32 sp8 = 1; + lbl_1_bss_1C = 0; + espDispOff(lbl_1_bss_10); + fn_1_BB98(1); + if (work->unk_08 == 0) { + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + lbl_1_bss_14 = 0; + } + CenterM->x = 0.0f; + lbl_1_bss_8 = HuAudFXPlay(0x679); + return fn_1_3768; +} + +void fn_1_3768(omObjData *object) +{ + M430DllMainWork *work = object->data; + + fn_1_720(object); + if (WipeStatGet() == 0) { + work->unk_24 = 1; + if (work->unk_28 >= 210.0f) { + work->unk_24 = 2; + fn_1_A54(object); + } + } + else { + work->unk_28 = 0; + } +} + +s32 fn_1_4030(void) +{ + return lbl_1_bss_1C; +} + +u32 fn_1_4040(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_00; +} + +u32 fn_1_4058(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_0C; +} + +u32 fn_1_4070(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_14; +} + +u32 fn_1_4088(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_24; +} + +void fn_1_40A0(s32 arg0) +{ + OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_2C = arg0; +} + +s32 fn_1_40B8(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_2C; +} + +void fn_1_40D0(s32 arg0) +{ + + OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_30 |= (1 << ((arg0 & 3) * 4)); +} + +void fn_1_4100(s32 arg0) +{ + OM_GET_DATA_PTR(lbl_1_bss_34, M430DllMainWork)->unk_34 |= (1 << ((arg0 & 3) * 4)); +} + +float fn_1_4130(void) +{ + M430DllMainWork *work = lbl_1_bss_34->data; + float var_f31 = work->unk_1C - 1; + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + var_f31 += 0.016666668f * work->unk_20; + return var_f31; +} + +void fn_1_41F0(Vec *arg0, Vec *arg1) +{ + Vec sp10; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + + sp10.x = arg1->x - arg0->x; + sp10.y = arg1->y - arg0->y; + sp10.z = arg1->z - arg0->z; + Center.x = arg1->x; + Center.y = arg1->y; + Center.z = arg1->z; + CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); + CRot.y = atan2d(-sp10.x, -sp10.z); + CRot.z = 0.0f; + CZoom = sqrtf((sp10.z * sp10.z) + ((sp10.x * sp10.x) + (sp10.y * sp10.y))); +} + +void fn_1_4538(float sp8, float spC, float sp10, float sp14, float sp18, float sp1C) +{ + Vec sp40; + Vec sp34; + sp40.x = sp8; + sp40.y = spC; + sp40.z = sp10; + + sp34.x = sp14; + sp34.y = sp18; + sp34.z = sp1C; + fn_1_41F0(&sp40, &sp34); +} + +float fn_1_48B0(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f29; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + var_f29 = fmod(arg8 + (argA * var_f31), 360.0); + var_f31 = var_f29; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + return var_f31; +} + +float fn_1_49CC(float arg0, float arg1) +{ + float var_f31; + float var_f30; + + var_f30 = fmod(arg1 - arg0, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} From e9e3683871d6f5e3300a9305db245967d324d2cb Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Wed, 8 Jan 2025 22:40:16 -0600 Subject: [PATCH 107/178] Match first mstory2 TU (#515) --- config/GMPE01_00/rels/mstory2Dll/symbols.txt | 5 +- configure.py | 2 +- include/REL/mstory2Dll.h | 107 ++ src/REL/mstory2Dll/main.c | 1238 ++++++++++++++++++ 4 files changed, 1349 insertions(+), 3 deletions(-) create mode 100644 include/REL/mstory2Dll.h create mode 100644 src/REL/mstory2Dll/main.c diff --git a/config/GMPE01_00/rels/mstory2Dll/symbols.txt b/config/GMPE01_00/rels/mstory2Dll/symbols.txt index de1259ef..2043c77f 100644 --- a/config/GMPE01_00/rels/mstory2Dll/symbols.txt +++ b/config/GMPE01_00/rels/mstory2Dll/symbols.txt @@ -5,7 +5,7 @@ _prolog = .text:0x00000344; // type:function size:0x54 scope:global _epilog = .text:0x00000398; // type:function size:0x4C scope:global fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 -fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +ObjectSetup = .text:0x000006AC; // type:function size:0x1B8 fn_1_864 = .text:0x00000864; // type:function size:0x28 fn_1_88C = .text:0x0000088C; // type:function size:0x20 fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 @@ -535,7 +535,8 @@ lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 -lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 +lbl_1_data_328 = .data:0x00000328; // type:object size:0x40 +lbl_1_data_368 = .data:0x00000368; // type:object size:0x20 data:float lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 data:string lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x2C diff --git a/configure.py b/configure.py index 23ff3deb..e0f1746d 100644 --- a/configure.py +++ b/configure.py @@ -1370,7 +1370,7 @@ config.libs = [ Rel( "mstory2Dll", objects={ - Object(NonMatching, "REL/mstory2Dll/main.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/main.c"), Object(NonMatching, "REL/mstory2Dll/board_entrance.c"), Object(NonMatching, "REL/mstory2Dll/board_clear.c"), Object(NonMatching, "REL/mstory2Dll/board_miss.c"), diff --git a/include/REL/mstory2Dll.h b/include/REL/mstory2Dll.h new file mode 100644 index 00000000..839c576d --- /dev/null +++ b/include/REL/mstory2Dll.h @@ -0,0 +1,107 @@ +#ifndef MSTORY2DLL_H +#define MSTORY2DLL_H + +#include "game/object.h" +#include "game/process.h" + +#include "dolphin/types.h" + +typedef struct { + /* 0x00 */ void (*unk00)(void); + /* 0x04 */ void (*unk04)(void); + /* 0x08 */ Vec unk08; + /* 0x14 */ float unk14; + /* 0x18 */ float unk18; + /* 0x1C */ float unk1C; + /* 0x20 */ Vec unk20; + /* 0x2C */ float unk2C; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; + /* 0x38 */ float unk38; + /* 0x3C */ float unk3C; + /* 0x40 */ s32 unk40; +} StructBss24; // Size 0x44 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ char unk1C[0x18]; +} StructFn357C; // Size 0x34 + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ void (*unk04)(omObjData*, ...); + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ char unk10[0x18]; +} StructBss19C; // Size 0x28 + +// main.c +float fn_1_864(float arg0, float arg1, float arg2, float arg3); +float fn_1_8AC(float arg0, float arg1, float arg2, float arg3); +float fn_1_984(float arg0, float arg1, float arg2, float arg3); +float fn_1_B08(float arg0, float arg1, float arg2, float arg3); +void fn_1_BC8(void); +void fn_1_BE8(s32 arg0); +void fn_1_C30(void); +s32 fn_1_185C(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_1A94(s32 arg0); +void fn_1_1AFC(s32 arg0, s32 arg1); +BOOL fn_1_1BA8(s32 arg0, s32 arg1); +BOOL fn_1_1C64(s32 arg0); +void fn_1_1D18(s32 arg0, s32 arg1); +void fn_1_1D4C(s32 arg0, s32 arg1, s32 arg2); +void fn_1_1DFC(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_2264(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3); +void fn_1_2750(void (*arg0)(void)); +void fn_1_2828(Process* arg0, void (*arg1)(void)); +void fn_1_2948(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5); +void fn_1_2D00(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5); +void fn_1_357C(StructFn357C* arg0, s32 arg1); +s32 fn_1_3668(s32 arg0); +void fn_1_3754(void); +void fn_1_3854(StructBss24* arg0); +void fn_1_3B04(StructBss24* arg0, float arg1); +void fn_1_4FEC(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3, float arg4); +void fn_1_6004(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3, float arg4); +int fn_1_66CC(int modelId); + +void fn_1_6704(omObjData* arg0); +void fn_1_6A90(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_6D78(s32 arg0, s32 arg1, s32 arg2, s32 arg3); +s32 fn_1_7064(s32 arg0, s32 arg1); +void fn_1_71DC(s32 arg0); +void fn_1_7244(s16 modelId, char *objName, u32 constAttr, float ofs); +void fn_1_7384(int modelId, int charNo, float ofs, s32 maxTime, BOOL flag); + +// board_clear.c +void fn_1_7F54(Process* arg0, s32 arg1); + +// board_clear.c +void fn_1_B3E4(Process* arg0, s32 arg1); + +// board_miss.c +void fn_1_EA2C(Process* arg0, s32 arg1); + +// mg_clear.c +void fn_1_1256C(Process* arg0, s32 arg1); + +// mg_miss.c +void fn_1_16060(Process* arg0, s32 arg1); + +// ending.c +void fn_1_188F0(Process* arg0, s32 arg1); + +// ending.c +void fn_1_1B90C(Process* arg0); + +extern s32 lbl_1_bss_68[]; +extern StructBss24 lbl_1_bss_24; +extern s32 lbl_1_data_0[][4]; + +#endif diff --git a/src/REL/mstory2Dll/main.c b/src/REL/mstory2Dll/main.c new file mode 100644 index 00000000..058b2e4e --- /dev/null +++ b/src/REL/mstory2Dll/main.c @@ -0,0 +1,1238 @@ +#include "REL/mstory2Dll.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/hsfdraw.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/window.h" +#include "game/wipe.h" +#include "game/sprite.h" + +#include "ext_math.h" + +s32 lbl_1_bss_68[3]; // unused +StructBss24 lbl_1_bss_24; +s32 lbl_1_bss_4[8]; +Process* lbl_1_bss_0; + +s32 lbl_1_data_0[][4] = { + { 0x37, 0x38, 0x36, 0x39 }, + { 0x43, 0x45, 0x44, 0x43 }, + { 0x40, 0x42, 0x41, 0x40 }, + { 0x4B, 0x4D, 0x4C, 0x4B }, + { 0x46, 0x48, 0x47, 0x46 }, + { 0x3E, 0x3F, 0x3E, 0x3E }, + {0x3A, 0x3B, 0x3C, 0xFFFFFFFF} +}; + +char* lbl_1_data_144[] = { + "K-1 : KOOPA STORY - BOARD ENTRANCE EVENT", + "K-3 : KOOPA STORY - BOARD CLEAR EVENT", + "K-4 : KOOPA STORY - BOARD MISS EVENT", + "K-5 : KOOPA STORY - MINIGAME CLEAR EVENT", + "K-6 : KOOPA STORY - MINIGAME MISS EVENT", + "--- : ENDING" +}; + +void fn_1_0(omObjData* arg0) { + if (WipeStatGet() == 0) { + arg0->func = NULL; + omOvlReturnEx(1, 1); + } +} + +void fn_1_4C(omObjData* arg0) { + if (omSysExitReq != 0) { + arg0->func = fn_1_0; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + } +} + +void fn_1_A4(void) { + s32 sp14; + s32 var_r30; + s32 var_r31; + s32 sp10; + s32 spC; + s32 sp8; + s32 i; + + var_r30 = 0; + omAddObjEx(lbl_1_bss_0, 0x2000, 0, 0, -1, fn_1_4C); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_BC8(); + } + while (TRUE) { + if (HuPadBtnDown[0] & PAD_BUTTON_A) { + break; + } + if (HuPadStkY[0] <= -30) { + fn_1_BE8(5); + var_r30++; + if (var_r30 >= 6) { + var_r30 = 0; + } + + } + if (HuPadStkY[0] >= 30) { + fn_1_BE8(5); + var_r30--; + if (var_r30 < 0) { + var_r30 = 5; + } + } + fontcolor = FONT_COLOR_WHITE; + print8(24, 100, 1.5f, ">>>>> MPGC STORY 2 - EVENT SELECT <<<<<"); + for (i = 0; i < 6; i++) { + fontcolor = FONT_COLOR_WHITE; + if (var_r30 == i) { + fontcolor = FONT_COLOR_CYAN; + } + print8(24, 130 + i * 15, 1.5f, "%s", lbl_1_data_144[i]); + } + fn_1_BC8(); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_BC8(); + } + GWSystem.board = 5; + switch (var_r30) { + case 0: + fn_1_7F54(lbl_1_bss_0, 0); + break; + case 1: + fn_1_B3E4(lbl_1_bss_0, 0); + break; + case 2: + fn_1_EA2C(lbl_1_bss_0, 0); + break; + case 3: + fn_1_1256C(lbl_1_bss_0, 0); + break; + case 4: + fn_1_16060(lbl_1_bss_0, 0); + break; + case 5: + fn_1_188F0(lbl_1_bss_0, 0); + break; + } + while (TRUE) { + fn_1_BC8(); + } +} + +#include "src/REL/executor.c" + +void fn_1_3E4(void) +{ + int gid = HuSprGrpCreate(1); + int sprid = HuTHPSprCreate("movie/endmov_ma0.thp", FALSE, 10); + HuSprGrpMemberSet(gid, 0, sprid); + HuSprPosSet(gid, 0, 288, 240); + HuPrcSleep(5); + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); + while(WipeStatGet()) { + HuPrcVSleep(); + } + while(!HuTHPEndCheck()) { + HuPrcVSleep(); + } + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); + while(WipeStatGet()) { + HuPrcVSleep(); + } + HuTHPClose(); + HuPrcVSleep(); + HuSprGrpKill(gid); + while(1) { + fn_1_BC8(); + } +} + +void fn_1_4F4(void) { + s32 i; + + lbl_1_bss_0 = omInitObjMan(62, 0x2000); + switch (omovlevtno) { + case 0: + fn_1_7F54(lbl_1_bss_0, 0); + break; + + case 1: + for (i = 0; i < 4; i++) { + if (GWPlayerCfg[i].character == GWUnkB1Get()) { + break; + } + } + fn_1_B3E4(lbl_1_bss_0, i); + break; + case 2: + for (i = 0; i < 4; i++) { + if (GWPlayerCfg[i].character == GWUnkB1Get()) { + break; + } + } + fn_1_EA2C(lbl_1_bss_0, i); + break; + case 3: + if (GWPlayerCoinWinGet(0) >= 10) { + fn_1_1256C(lbl_1_bss_0, 0); + } else { + fn_1_16060(lbl_1_bss_0, 0); + } + break; + case 4: + fn_1_188F0(lbl_1_bss_0, 0); + break; + + case 20: + fn_1_1B90C(lbl_1_bss_0); + break; + } +} + +void ObjectSetup(void) { + fn_1_4F4(); +} + +float fn_1_864(float arg0, float arg1, float arg2, float arg3) { + if (arg3 <= arg2) { + return arg1; + } + return arg0 + (arg2 / arg3) * (arg1 - arg0); +} + +float fn_1_88C(float arg0, float arg1, float arg2) { + return (arg1 + arg0 * (arg2 - 1.0f)) / arg2; +} + +float fn_1_8AC(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg1; + } + return arg0 + (arg1 - arg0) * (1.0 - cosd((90.0f / arg3) * arg2)); +} + +float fn_1_984(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg1; + } + return arg0 + (arg1 - arg0) * sind((90.0f / arg3) * arg2); +} + +float fn_1_A4C(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg0; + } + return arg0 + (arg1 - arg0) * sind((180.0f / arg3) * arg2); +} + +float fn_1_B08(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg0; + } + return arg0 + (arg1 - arg0) * sind((360.0f / arg3) * arg2); +} + +void fn_1_BC4(void) { +} + +void fn_1_BC8(void) { + HuPrcVSleep(); +} + +void fn_1_BE8(s32 arg0) { + HuPrcSleep(arg0); +} + +void fn_1_C10(void) { + HuPrcEnd(); +} + +void fn_1_C30(void) { + HuWinInit(1); +} + +void fn_1_C54(void) { +} + +void fn_1_C58(s32 arg0, float arg1, float arg2, s32 arg3) { + WindowData* temp_r29; + float temp_f29; + float temp_f28; + float temp_f25; + float temp_f24; + float temp_f31; + float temp_f27; + float temp_f30; + float temp_f26; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + s32 i; + + temp_r29 = &winData[arg0]; + temp_f29 = temp_r29->pos_x; + temp_f28 = temp_r29->pos_y; + temp_f25 = temp_r29->w; + temp_f24 = temp_r29->h; + temp_f31 = temp_f29 + temp_f25 * arg1; + temp_f27 = 4.0f / temp_f25; + if (temp_f31 + 4.0f - (temp_f29 + temp_f25) >= 0.0f) { + temp_f31 = (temp_f29 + temp_f25) - 4.0f; + } else if (temp_f29 - (temp_f31 - 2.0f) >= 0.0f) { + temp_f31 = temp_f29; + } else { + temp_f31 -= 2.0f; + } + temp_f30 = temp_f28 + temp_f24 * arg2; + temp_f26 = 4.0f / temp_f24; + if (temp_f30 + 4.0f - (temp_f28 + temp_f24) >= 0.0f) { + temp_f30 = (temp_f28 + temp_f24) - 4.0f; + } else if (temp_f28 - (temp_f30 - 2.0f) >= 0.0f) { + temp_f30 = temp_f28; + } else { + temp_f30 -= 2.0f; + } + if (arg3 != 0) { + HuWinPosSet(arg0, temp_f31, temp_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + var_f23 = temp_f31; + var_f21 = temp_f27; + var_f22 = temp_f30; + var_f20 = temp_f26; + } else { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + var_f23 = temp_f29; + var_f21 = 1.0f; + var_f22 = temp_f28; + var_f20 = 1.0f; + } + HuWinDispOn(arg0); + for (i = 0; i <= 15; i++) { + HuPrcVSleep(); + if (arg3 != 0) { + if (i <= 10) { + var_f23 = fn_1_984(temp_f31, temp_f29, i, 10.0f); + var_f21 = fn_1_984(temp_f27, 1.0f, i, 10.0f);; + } else { + var_f22 = fn_1_984(temp_f30, temp_f28, i - 10, 5.0f); + var_f20 = fn_1_984(temp_f26, 1.0f, i - 10, 5.0f); + } + } else { + if (i <= 10) { + var_f22 = fn_1_984(temp_f28, temp_f30, i, 10.0f); + var_f20 = fn_1_984(1.0f, temp_f26, i, 10.0f); + } else { + var_f23 = fn_1_984(temp_f29, temp_f31, i - 10, 5.0f); + var_f21 = fn_1_984(1.0f, temp_f27, i - 10, 5.0f); + } + } + HuWinPosSet(arg0, var_f23, var_f22); + HuWinScaleSet(arg0, var_f21, var_f20); + } + if (arg3 != 0) { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + } else { + HuWinPosSet(arg0, temp_f31, temp_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + } + HuPrcVSleep(); +} + +s32 fn_1_16A0(s32 arg0, s32 arg1, s32 arg2, s32 arg3, float arg4, float arg5, s32 arg6) { + s32 temp_r31; + + arg2 = arg2 * 21 + 16; + arg3 = arg3 * 26 + 16; + if (arg0 == 0) { + arg0 = 550 - arg2; + } else { + arg0 = 1.0f + (576.0f - arg2) / 2.0f; + } + if (arg1 == 0) { + arg1 = 430 - arg3; + } + temp_r31 = HuWinExCreateStyled(arg0, arg1, arg2, arg3, -1, 1); + HuWinMesPalSet(temp_r31, 7, 0, 0, 0); + if (arg6 != -1) { + arg6 = GWPlayerCfg[arg6].pad_idx; + winData[temp_r31].active_pad = (1 << arg6); + } else { + winData[temp_r31].active_pad = 0xF; + } + + fn_1_C58(temp_r31, arg4, arg5, 1); + return temp_r31; +} + +s32 fn_1_185C(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + return fn_1_16A0(arg0, arg1, arg2, arg3, 0.5f, 0.5f, arg4); +} + +void fn_1_1A34(s32 arg0, float arg1, float arg2) { + HuWinMesSet(arg0, MAKE_MESSID(37, 4)); + HuPrcVSleep(); + fn_1_C58(arg0, arg1, arg2, 0); + HuWinExCleanup(arg0); +} + +void fn_1_1A94(s32 arg0) { + fn_1_1A34(arg0, 0.5f, 0.5f); +} + +void fn_1_1AFC(s32 arg0, s32 arg1) { + s32 i; + + if (arg1 > 0) { + HuPrcSleep(arg1); + return; + } + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesWait(arg0); + HuWinComKeyReset(); +} + +BOOL fn_1_1BA8(s32 arg0, s32 arg1) { + s32 var_r31; + s32 i; + + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + var_r31 = HuWinChoiceGet(arg0, arg1); + HuWinComKeyReset(); + if (var_r31 != 0) { + var_r31 = FALSE; + } else { + var_r31 = TRUE; + } + return var_r31; +} + +BOOL fn_1_1C64(s32 arg0) { + return fn_1_1BA8(arg0, 0); +} + +void fn_1_1D18(s32 arg0, s32 arg1) { + HuWinMesSet(arg0, arg1); +} + +void fn_1_1D4C(s32 arg0, s32 arg1, s32 arg2) { + HuWinInsertMesSet(arg0, arg1, arg2); +} + +void fn_1_1D8C(s16 arg0) { + ModelData* var_r28; + HsfMaterial* var_r31; + HsfData* temp_r30; + s16 var_r27; + s32 i; + + var_r28 = &Hu3DData[arg0]; + temp_r30 = var_r28->hsfData; + var_r27 = temp_r30->materialCnt; + var_r31 = temp_r30->material; + for (i = 0; i < var_r27; var_r31++, i++) { + var_r31->vtxMode = 1; + } +} + +void fn_1_1DFC(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + switch (arg4) { + case 0: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_NONE); + break; + case 1: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_LOOP); + break; + case 2: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_PAUSE); + break; + } + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; +} + +void fn_1_1F84(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + if (arg0->motion[arg2] == Hu3DMotionIDGet(arg0->model[arg1])) { + return; + } + if (arg0->motion[arg2] == Hu3DMotionShiftIDGet(arg0->model[arg1])) { + return; + } + fn_1_1F84(arg0, arg1, arg2, arg3, arg4); +} + +void fn_1_2264(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3) { + HuPrcSleep(arg3 + 1); + do { + HuPrcVSleep(); + } while (arg0->motion[arg2] != Hu3DMotionIDGet(arg0->model[arg1]) || !Hu3DMotionEndCheck(arg0->model[arg1])); +} + +s32 fn_1_22F4(s32 arg0) { + s32 i; + + for (i = 0; i < 4; i++) { + if (arg0 == GWPlayerCfg[i].group) { + break; + } + } + return i; +} + +void fn_1_233C(s32 arg0, s32 arg1) { + while (TRUE) { + if (arg1 & HuPadBtnDown[arg0]) { + break; + } + HuPrcVSleep(); + } +} + +void fn_1_2390(void) { + StructBss24* var_r31; + + var_r31 = &lbl_1_bss_24; + if (HuPadBtn[0] & PAD_BUTTON_B) { + if (HuPadBtn[0] & PAD_TRIGGER_R) { + var_r31->unk08.z -= HuPadStkY[0] / 10.0f; + } else { + var_r31->unk08.x += HuPadStkX[0] / 10.0f; + var_r31->unk08.y += HuPadStkY[0] / 10.0f; + } + } + if (HuPadBtn[0] & PAD_BUTTON_Y) { + var_r31->unk20.x -= HuPadStkY[0] / 100.0f; + var_r31->unk20.y += HuPadStkX[0] / 100.0f; + if (var_r31->unk20.x < 0.0f) { + var_r31->unk20.x += 360.0f; + } + if (var_r31->unk20.x >= 360.0f) { + var_r31->unk20.x -= 360.0f; + } + if (var_r31->unk20.y < 0.0f) { + var_r31->unk20.y += 360.0f; + } + if (var_r31->unk20.y >= 360.0f) { + var_r31->unk20.y -= 360.0f; + } + } + if (HuPadBtn[0] & PAD_BUTTON_X) { + var_r31->unk38 -= HuPadStkY[0] / 10.0f; + } + print8(24, 40, 1.5f, "CENTER : %.2f, %.2f, %.2f", var_r31->unk08.x, var_r31->unk08.y, var_r31->unk08.z); + print8(24, 55, 1.5f, "ROT : %.2f, %.2f, %.2f", var_r31->unk20.x, var_r31->unk20.y, var_r31->unk20.z); + print8(24, 70, 1.5f, "ZOOM : %.2f", var_r31->unk38); +} + +void fn_1_2750(void (*arg0)(void)) { + lbl_1_bss_24.unk00 = arg0; +} + +void fn_1_2760(void (*arg0)(void)) { + lbl_1_bss_24.unk04 = arg0; +} + +void fn_1_2770(omObjData* arg0) { + StructBss24* var_r31; + + var_r31 = &lbl_1_bss_24; + if (var_r31->unk00 != NULL) { + var_r31->unk00(); + } + Center.x = var_r31->unk08.x; + Center.y = var_r31->unk08.y; + Center.z = var_r31->unk08.z; + CRot.x = var_r31->unk20.x; + CRot.y = var_r31->unk20.y; + CRot.z = var_r31->unk20.z; + CZoom = var_r31->unk38; +} + +void fn_1_2828(Process* arg0, void (*arg1)(void)) { + Hu3DCameraCreate(1); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraPerspectiveSet(1, 42.0f, 0.1f, 10000.0f, 1.2f); + lbl_1_bss_24.unk00 = arg1; + lbl_1_bss_24.unk04 = fn_1_2390; + omAddObjEx(arg0, 0x7FDA, 0, 0, -1, omOutView); + omAddObjEx(arg0, 0x7FD9, 0, 0, -1, fn_1_2770); +} + +void fn_1_2948(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5) { + Vec sp4C; + Vec sp40; + Vec sp34; + Vec sp28; + float sp24; + float sp20; + float sp1C; + s32 sp18; + s32 sp14; + float var_f31; + + sp40.x = Hu3DData[arg0->model[arg1]].pos.x; + sp4C.y = sp40.y = Hu3DData[arg0->model[arg1]].pos.y; + sp40.z = Hu3DData[arg0->model[arg1]].pos.z; + sp34.x = arg2.x; + sp34.y = arg2.y; + sp34.z = arg2.z; + sp18 = arg4; + sp28.x = Hu3DData[arg0->model[arg1]].rot.x; + sp28.y = Hu3DData[arg0->model[arg1]].rot.y; + sp28.z = Hu3DData[arg0->model[arg1]].rot.z; + sp1C = 0.0f; + sp20 = arg3; + sp24 = 0.0f; + sp14 = arg5; + var_f31 = -1.1025f; + Hu3DMotionShiftSet(arg0->model[1], arg0->motion[3], 0.0f, 5.0f, 0U); + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + HuPrcSleep(10); + while (TRUE) { + if (var_f31 >= 1.7f) { + var_f31 = 1.7f; + } + sp4C.y += var_f31 * var_f31 * (var_f31 >= 0.0f ? -17.5f : 17.5f); + if (sp4C.y <= 0.0f && var_f31 > 0.0f) { + sp4C.y = 0.0f; + } + sp4C.x = sp40.x += 6.0 * sind(sp28.y); + sp4C.z = sp40.z += 6.0 * cosd(sp28.y); + Hu3DModelPosSet(arg0->model[1], sp4C.x, sp4C.y, sp4C.z); + Hu3DModelRotSet(arg0->model[1], sp28.x, sp28.y, sp28.z); + HuPrcVSleep(); + if (sp4C.y <= arg2.y && var_f31 > 0.0f) { + break; + } + var_f31 += 0.11f; + } +} + +void fn_1_2D00(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5) { + Vec sp54; + Vec sp48; + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; + s32 sp14; + s32 temp_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + s32 i; + + var_r26 = 0; + var_r25 = 0; + sp48.x = Hu3DData[arg0->model[arg1]].pos.x; + sp48.y = Hu3DData[arg0->model[arg1]].pos.y; + sp48.z = Hu3DData[arg0->model[arg1]].pos.z; + sp3C.x = arg2.x; + sp3C.y = arg2.y; + sp3C.z = arg2.z; + sp14 = arg4; + sp24.x = Hu3DData[arg0->model[arg1]].rot.x; + sp24.y = Hu3DData[arg0->model[arg1]].rot.y; + sp24.z = Hu3DData[arg0->model[arg1]].rot.z; + sp18.x = 0.0f; + sp18.y = arg3; + sp18.z = 0.0f; + if (sp3C.x - sp48.x >= 0.0f) { + var_r24 = 1; + } else { + var_r24 = 0; + } + if (sp3C.z - sp48.z >= 0.0f) { + var_r23 = 1; + } else { + var_r23 = 0; + } + temp_r27 = arg5; + do { + sp30.y = -(atan2d(sp3C.z - sp48.z, sp3C.x - sp48.x) - 90.0); + if (sp30.y < 0.0f) { + sp30.y += 360.0f; + } else if (sp30.y >= 360.0f) { + sp30.y -= 360.0f; + } + if (sp30.y >= 180.0f) { + if (sp24.y - sp30.y >= 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp30.y < -180.0f) { + sp24.y += 360.0f; + } + } else { + if (sp24.y - sp30.y > 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp30.y <= -180.0f) { + sp24.y += 360.0f; + } + } + sp54.x = sp48.x += 6.0 * sind(sp30.y); + sp54.z = sp48.z += 6.0 * cosd(sp30.y); + if (var_r24 != 0) { + if (sp48.x >= sp3C.x) { + sp54.x = sp48.x = sp3C.x; + var_r26 = 1; + } + } else { + if (sp48.x <= sp3C.x) { + sp54.x = sp48.x = sp3C.x; + var_r26 = 1; + } + } + if (var_r23 != 0) { + if (sp48.z >= sp3C.z) { + sp54.z = sp48.z = sp3C.z; + var_r25 = 1; + } + } else { + if (sp48.z <= sp3C.z) { + sp54.z = sp48.z = sp3C.z; + var_r25 = 1; + } + } + sp24.y = fn_1_88C(sp24.y, sp30.y, 10.0f); + Hu3DModelPosSet(arg0->model[1], sp54.x, sp48.y, sp54.z); + Hu3DModelRotSet(arg0->model[1], sp24.x, sp24.y, sp24.z); + HuPrcVSleep(); + } while (var_r25 != 1 || var_r26 != 1); + sp24.y = Hu3DData[arg0->model[arg1]].rot.y; + for (i = 0; i <= temp_r27; i++) { + if (sp18.y >= 180.0f) { + if (sp24.y - sp18.y >= 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp18.y < -180.0f) { + sp24.y += 360.0f; + } + } else { + if (sp24.y - sp18.y > 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp18.y <= -180.0f) { + sp24.y += 360.0f; + } + } + sp24.y = fn_1_864(sp24.y, sp18.y, i, temp_r27); + Hu3DModelRotSet(arg0->model[1], sp24.x, sp24.y, sp24.z); + HuPrcVSleep(); + } +} + +void fn_1_34F4(s16 arg0) { + ModelData* var_r28; + HsfData* temp_r30; + HsfMaterial* var_r31; + s16 var_r27; + s32 i; + + var_r28 = &Hu3DData[arg0]; + temp_r30 = var_r28->hsfData; + var_r27 = temp_r30->materialCnt; + var_r31 = temp_r30->material; + for (i = 0; i < var_r27; var_r31++, i++) { + var_r31->vtxMode = 1; + var_r31->litColor[0] = 0xFF; + var_r31->litColor[1] = 0xFF; + var_r31->litColor[2] = 0xFF; + } +} + +void fn_1_357C(StructFn357C* arg0, s32 arg1) { + arg0->unk00 = arg1; + arg0->unk04 = GWPlayerCfg[arg0->unk00].group; + arg0->unk08 = GWPlayerCfg[arg0->unk00].iscom; + arg0->unk0C = GWPlayerCfg[arg0->unk00].diff; + arg0->unk10 = GWPlayerCfg[arg0->unk00].character; + arg0->unk14 = GWPlayerCfg[arg0->unk00].pad_idx; +} + +s32 fn_1_3610(void) { + s32 i; + + for (i = 0; i < 4; i++) { + if (!GWPlayerCfg[i].iscom) { + break; + } + } + if (i == 4) { + return -1; + } + return i; +} + +s32 fn_1_3668(s32 arg0) { + s32 temp_r3 = 0; + + temp_r3 = Hu3DGLightCreate(0.0f, 700.0f, 1200.0f, 0.0f, -1.0f, 0.0f, arg0, arg0, arg0); + Hu3DGLightPosAimSet(temp_r3, 0.0f, 700.0f, 1200.0f, 0.0f, 0.0f, 640.0f); + Hu3DGLightInfinitytSet(temp_r3); + return temp_r3; +} + +void fn_1_3754(void) { + Vec sp20 = { 0.0f, 3000.0f, 800.0f }; + Vec sp14 = { 0.0f, 0.0f, 640.0f }; + Vec sp8 = { 0.0f, 1.0f, 0.0f }; + + Hu3DShadowCreate(45.0f, 2000.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.8f); + Hu3DShadowPosSet(&sp20, &sp8, &sp14); +} + +void fn_1_3818(StructBss24* arg0) { + arg0->unk08.x = arg0->unk14; + arg0->unk08.y = arg0->unk18; + arg0->unk08.z = arg0->unk1C; + arg0->unk20.x = arg0->unk2C; + arg0->unk20.y = arg0->unk30; + arg0->unk20.z = arg0->unk34; + arg0->unk38 = arg0->unk3C; +} + +void fn_1_3854(StructBss24* arg0) { + arg0->unk40 = 0; + arg0->unk14 = arg0->unk08.x; + arg0->unk18 = arg0->unk08.y; + arg0->unk1C = arg0->unk08.z; + arg0->unk2C = arg0->unk20.x; + arg0->unk30 = arg0->unk20.y; + arg0->unk34 = arg0->unk20.z; + arg0->unk3C = arg0->unk38; +} + +void fn_1_3898(StructBss24* arg0, StructBss24* arg1, float arg3) { + arg0->unk08.x = fn_1_88C(arg0->unk08.x, arg1->unk14, arg3); + arg0->unk08.y = fn_1_88C(arg0->unk08.y, arg1->unk18, arg3); + arg0->unk08.z = fn_1_88C(arg0->unk08.z, arg1->unk1C, arg3); + arg0->unk20.x = fn_1_88C(arg0->unk20.x, arg1->unk2C, arg3); + arg0->unk20.y = fn_1_88C(arg0->unk20.y, arg1->unk30, arg3); + arg0->unk20.z = fn_1_88C(arg0->unk20.z, arg1->unk34, arg3); + arg0->unk38 = fn_1_88C(arg0->unk38, arg1->unk3C, arg3); +} + +void fn_1_3B04(StructBss24* arg0, float arg1) { + fn_1_3898(arg0, arg0, arg1); +} + +void fn_1_3D70(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_864(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_864(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_864(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_864(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_864(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_864(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_864(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_3FEC(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3) { + fn_1_3D70(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_42A0(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3, float arg4) { + fn_1_3D70(arg0, arg1, arg2, arg3); + fn_1_3898(arg0, arg1, arg4); +} + +void fn_1_470C(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_984(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_984(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_984(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_984(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_984(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_984(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_984(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_4B60(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3) { + fn_1_470C(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_4FEC(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3, float arg4) { + fn_1_470C(arg0, arg1, arg2, arg3); + fn_1_3898(arg0, arg1, arg4); +} + +void fn_1_5644(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_8AC(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_8AC(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_8AC(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_8AC(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_8AC(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_8AC(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_8AC(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_5B08(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3) { + fn_1_5644(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_6004(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3, float arg4) { + fn_1_5644(arg0, arg1, arg2, arg3); + fn_1_3898(arg0, arg1, arg4); +} + +int fn_1_66CC(int modelId) +{ + return Hu3DMotionMaxTimeGet(modelId); +} + +void fn_1_6704(omObjData* arg0) { + s32 var_r30; + if(arg0->work[0] == 0) { + return; + } + if (arg0->work[2] != 0) { + arg0->work[2]--; + return; + } + if (arg0->work[2] == 0 && Hu3DMotionEndCheck(arg0->model[1])) { + var_r30 = arg0->work[1]; + Hu3DMotionShiftSet(arg0->model[1], arg0->motion[var_r30], 0.0f, 15.0f, 0x40000001U); + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + } +} + +void fn_1_67D8(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + fn_1_1DFC(arg0, 1, arg1, arg3, arg4); + if (arg4 == 0) { + arg0->work[0] = 1; + arg0->work[1] = arg2; + arg0->work[2] = arg3 + 1; + } +} + +void fn_1_6970(s32 arg0, s32 arg1) { + HuWinMesSet(arg0, arg1); +} + +void fn_1_69A4(s32 arg0, s32 arg1, s32 arg2) { + HuWinInsertMesSet(arg0, arg1, arg2); +} + +void fn_1_69E4(s32 arg0, s32 arg1) { + fn_1_1AFC(arg0, arg1); +} + +void fn_1_6A90(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + s32 var_r27 = 0; + s32 var_r29 = 0; + s32 var_r23 = 0; + s32 var_r26; + s32 i; + if(arg2 == -1) { + var_r23 = 1; + arg2 = 0; + } + HuWinMesSet(arg0, arg1); + var_r27 = HuWinKeyWaitNumGet(arg1); + if (arg2 == -1 || arg2 >= var_r27 - 1) { + arg2 = var_r27 - 1; + } + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesSet(arg0, arg1); + for (i = 0; i < var_r27; i++) { + var_r29 = 0; + do { + HuPrcVSleep(); + } while (HuWinStatGet(arg0) != 1); + + if (i == arg2) { + HuWinAttrSet(arg0, 0x400); + var_r29 = 1; + } + while (TRUE) { + HuPrcVSleep(); + if (var_r29 != 0) { + if (var_r29 == 1 && HuWinStatGet(arg0) != 1) { + var_r29 = 2; + } else if (var_r29 == 2) { + if(arg3 != -1) { + if(arg4 != -1) { + i=0; + do { + HuPrcVSleep(); + if(i++ == 25) { + HuAudFXPlay(lbl_1_data_0[6][0]); + } + } while(!Hu3DMotionEndCheck(arg3)); + Hu3DMotionShiftSet(arg3, arg4, 0, 1, 0); + HuPrcSleep(15); + } + var_r26 = fn_1_66CC(arg3)-15; + if(var_r23 == 1) { + for(i=0; i 0) { + HuPrcSleep(var_r26); + } + } + } else { + HuPrcSleep(60); + } + HuWinAttrReset(arg0, 0x400); + HuWinKeyWaitEntry(arg0); + break; + } + } else if (HuWinStatGet(arg0) != 1) { + break; + } + } + } + fn_1_1AFC(arg0, 0); + HuWinMesSet(arg0, MAKE_MESSID(37, 4)); + HuWinComKeyReset(); +} + +void fn_1_6D78(s32 arg0, s32 arg1, s32 arg2, s32 arg3) +{ + fn_1_6A90(arg0, arg1, arg2, arg3, -1); +} + +void fn_1_6DBC(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { + s32 temp_r28 = 0; + s32 var_r29 = 0; + s32 i; + + HuWinMesSet(arg0, arg1); + temp_r28 = HuWinKeyWaitNumGet(arg1); + if (arg2 == -1 || arg2 >= temp_r28 - 1) { + arg2 = temp_r28 - 1; + } + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesSet(arg0, arg1); + for (i = 0; i < temp_r28; i++) { + var_r29 = 0; + do { + HuPrcVSleep(); + } while (HuWinStatGet(arg0) != 1); + if (i == arg2) { + HuWinAttrSet(arg0, 0x400); + var_r29 = 1; + } + while (TRUE) { + HuPrcVSleep(); + if (var_r29 != 0) { + if (var_r29 == 1 && HuWinStatGet(arg0) != 1) { + var_r29 = 2; + } else if (var_r29 == 2) { + HuPrcSleep(arg3); + HuWinAttrReset(arg0, 0x400); + HuWinKeyWaitEntry(arg0); + break; + } + } else if (HuWinStatGet(arg0) != 1) { + break; + } + } + } + fn_1_1AFC(arg0, 0); + HuWinMesSet(arg0, MAKE_MESSID(37, 4)); + HuWinComKeyReset(); +} + +BOOL fn_1_6FB0(s32 arg0) { + return fn_1_1BA8(arg0, 0); +} + +s32 fn_1_7064(s32 arg0, s32 arg1) { + float spC[2]; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + s32 var_r31; + + HuWinMesMaxSizeGet(1, spC, arg0); + var_f31 = spC[0]; + var_f30 = spC[1]; + var_f29 = 550.0f - var_f31; + var_f28 = 430.0f - var_f30; + var_r31 = HuWinExCreateStyled(var_f29, var_f28, var_f31, var_f30, -1, 1); + if (arg1 != -1) { + arg1 = GWPlayerCfg[arg1].pad_idx; + winData[var_r31].active_pad = (1 << arg1); + } else { + winData[var_r31].active_pad = 0xF; + } + HuWinMesPalSet(var_r31, 7, 0, 0, 0); + fn_1_C58(var_r31, 0.5f, 0.5f, 1); + return var_r31; +} + +void fn_1_71DC(s32 arg0) { + fn_1_1A34(arg0, 0.5f, 0.5f); +} + +char *lbl_1_data_308[8] = { + "c000m1-ske_head", + "c001m1-ske_head", + "c002m1-ske_head", + "c003m1-ske_head", + "c004m1-ske_head", + "c005m1-ske_head", + "c006m1-ske_head", + "c007m1-ske_head" +}; + +s32 lbl_1_data_328[8][2] = { + 0x200, 0, + 0x200, 0, + 0x200, 0, + 0x200, 0, + 0x200, 0, + 0x200, 0, + 0x200, 0, + 0x200, 0, +}; + +float lbl_1_data_368[8] = { + 194, + 191, + 87.2, + 50.1, + 72, + 83.5, + 87.2, + 64.5 +}; + +void fn_1_7244(s16 modelId, char *objName, u32 constFlags, float ofs) +{ + HsfObject *obj = Hu3DModelObjPtrGet(modelId, objName); + HsfConstData *constData; + if(!obj->constData) { + constData = ObjConstantMake(obj, Hu3DData[modelId].unk_48); + } else { + constData = obj->constData; + } + constData->flags |= constFlags; + if(constFlags & 0x10) { + obj->data.curr.pos.x += ofs; + } + if(constFlags & 0x20) { + obj->data.curr.pos.y += ofs; + } + if(constFlags & 0x40) { + obj->data.curr.pos.z += ofs; + } + if(constFlags & 0x80) { + obj->data.curr.rot.x += ofs; + } + if(constFlags & 0x100) { + obj->data.curr.rot.y += ofs; + } + if(constFlags & 0x200) { + obj->data.curr.rot.z += ofs; + } +} + +void fn_1_7384(int modelId, int charNo, float ofs, s32 maxTime, BOOL flag) +{ + float var_f31 = 0; + float var_f30 = ofs; + s32 i; + if(charNo == 7) { + var_f30 *= 2.5f; + } + if(lbl_1_data_328[charNo][1] == 0) { + var_f30 *= -1; + } + if(flag) { + for(i=0; i Date: Thu, 9 Jan 2025 05:48:18 +0100 Subject: [PATCH 108/178] Match m430Dll/water.c (#516) --- config/GMPE01_00/rels/m430Dll/symbols.txt | 32 +- configure.py | 4 +- include/REL/m430Dll.h | 2 +- src/REL/m430Dll/water.c | 1818 +++++++++++++++++++++ 4 files changed, 1837 insertions(+), 19 deletions(-) create mode 100644 src/REL/m430Dll/water.c diff --git a/config/GMPE01_00/rels/m430Dll/symbols.txt b/config/GMPE01_00/rels/m430Dll/symbols.txt index df73f081..a4b72fe6 100644 --- a/config/GMPE01_00/rels/m430Dll/symbols.txt +++ b/config/GMPE01_00/rels/m430Dll/symbols.txt @@ -252,11 +252,11 @@ lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data: lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x14 scope:local data:4byte lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x10 scope:local data:4byte lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x10 scope:local data:4byte -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x1 scope:local data:byte -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x1 scope:local data:byte -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x1 scope:local data:byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x1 scope:local data:byte -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:byte lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float @@ -270,13 +270,13 @@ lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data: lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:byte lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:byte lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x1 scope:local data:byte -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:byte lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float @@ -300,11 +300,11 @@ lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data: lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:float lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0xC scope:local data:float lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 scope:local data:double lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float @@ -429,12 +429,12 @@ lbl_1_data_24 = .data:0x00000024; // type:object size:0x4 lbl_1_data_28 = .data:0x00000028; // type:object size:0xC data:float lbl_1_data_34 = .data:0x00000034; // type:object size:0xC data:float lbl_1_data_40 = .data:0x00000040; // type:object size:0xC data:float -lbl_1_data_50 = .data:0x00000050; // type:object size:0x7 data:string -lbl_1_data_57 = .data:0x00000057; // type:object size:0x7 data:string -lbl_1_data_60 = .data:0x00000060; // type:object size:0x48 +lbl_1_data_50 = .data:0x00000050; // type:object size:0x7 scope:local data:string +lbl_1_data_57 = .data:0x00000057; // type:object size:0x7 scope:local data:string +lbl_1_data_60 = .data:0x00000060; // type:object size:0x48 data:float lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x18 -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x60 -lbl_1_data_120 = .data:0x00000120; // type:object size:0x48 +lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x60 data:float +lbl_1_data_120 = .data:0x00000120; // type:object size:0x48 data:float lbl_1_data_168 = .data:0x00000168; // type:object size:0x8 lbl_1_data_170 = .data:0x00000170; // type:object size:0x38 lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x20 diff --git a/configure.py b/configure.py index e0f1746d..ce78fe3b 100644 --- a/configure.py +++ b/configure.py @@ -1087,8 +1087,8 @@ config.libs = [ Rel( "m430Dll", # Pair-a-sailing objects={ - Object(Matching, "REL/m430Dll/main.c"), - Object(NonMatching, "REL/m430Dll/water.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m430Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m430Dll/water.c"), Object(NonMatching, "REL/m430Dll/player.c"), }, ), diff --git a/include/REL/m430Dll.h b/include/REL/m430Dll.h index f6a826a0..e1a47014 100644 --- a/include/REL/m430Dll.h +++ b/include/REL/m430Dll.h @@ -17,7 +17,7 @@ void fn_1_4C48(void); float fn_1_7FBC(s32 arg0); void fn_1_7FFC(s32 arg0, float arg8); void fn_1_AEE0(s32 arg0, Vec *arg1, float arg8, float arg9); -void fn_1_B570(s32 arg0, Vec *arg1, float arg8, float arg9); +void fn_1_B570(s32 arg0, Vec *arg1, float arg8, float arg9, Vec *arg2); void fn_1_BB98(u32 arg0); void fn_1_BBC4(Process *process); diff --git a/src/REL/m430Dll/water.c b/src/REL/m430Dll/water.c new file mode 100644 index 00000000..1d295c95 --- /dev/null +++ b/src/REL/m430Dll/water.c @@ -0,0 +1,1818 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXStruct.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/flag.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m430Dll.h" + +#ifndef __MWERKS__ +#include "game/esprite.h" +#include "game/frand.h" + +void GXSetTevIndWarp(GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXBool signed_offsets, GXBool replace_mode, GXIndTexMtxID matrix_sel); +#endif + +inline double fabs2(double x) +{ + return (double)fabs(x); +} + +typedef struct M430DllUnkStruct2 { + s32 unk_00; + s16 unk_04; + char unk06[2]; + s16 unk_08; + s16 unk_0A; + Vec unk_0C; + Vec unk_18; + float unk_24; + float unk_28; + float unk_2C; + float unk_30; + float unk_34; + float unk_38; +} M430DllUnkStruct2; /* size 0x3C */ + +typedef struct M430DllWork { + s32 unk_00; + Vec unk_04; + s32 unk_10; + s32 unk_14; + s16 unk_18; + s16 unk_1A; + s16 unk_1C; + s16 unk_1E; + float unk_20; + s16 unk_24[0xC]; + s32 unk_3C; + s16 unk_40[0xA]; + s16 unk_54[0xA]; + s16 unk_68[0xA]; + s32 unk_7C; + s16 unk_80[6]; + s16 unk_8C[6]; + s16 unk_98[6]; + s32 unk_A4[6]; + s32 unk_BC; + M430DllUnkStruct2 *unk_C0; +} M430DllWork; /* size 0xC4 */ + +typedef struct M430DllWork2 { + s16 unk_00; + char unk02[4]; + s16 unk_06; + Vec unk_08; + Vec unk_14; + float unk_20; + float unk_24; + float unk_28; + float unk_2C; + float unk_30; + float unk_34; + float unk_38; + float unk_3C; +} M430DllWork2; /* size 0x40 */ + +typedef struct M430DllBss60Struct { + /* 0x00 */ u32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ s32 unk_08; + /* 0x0C */ s32 unk_0C; + /* 0x10 */ s32 unk_10; + /* 0x14 */ s32 unk_14; + /* 0x18 */ s32 unk_18; + /* 0x1C */ u32 unk_1C; + /* 0x20 */ s32 unk_20; + /* 0x24 */ float unk_24; + /* 0x28 */ float unk_28; + /* 0x2C */ Vec *unk_2C; + /* 0x30 */ Vec *unk_30; + /* 0x34 */ void *unk_34; + /* 0x38 */ void *unk_38; + /* 0x3C */ char pad_3C[4]; + /* 0x40 */ s32 unk_40; + /* 0x44 */ Vec *unk_44[2]; + /* 0x4C */ char pad_4C[8]; + /* 0x54 */ GXColor *unk_54[2]; + /* 0x5C */ s32 unk_5C; + /* 0x60 */ void *unk_60; + /* 0x64 */ u32 unk_64; + /* 0x68 */ u32 unk_68; + /* 0x6C */ void *unk_6C; +} M430DllBss60Struct; /* size = 0x70 */ + +void fn_1_4CB4(omObjData *object); +void fn_1_5DF8(omObjData *object); +void fn_1_6180(M430DllWork *arg0); +void fn_1_6540(M430DllWork *arg0); +void fn_1_6754(M430DllWork *arg0); +void fn_1_6DC8(M430DllWork *arg0); +M430DllUnkStruct2 *fn_1_70AC(omObjData *arg0, s32 arg1, s16 arg2); +void fn_1_732C(omObjData *object, M430DllUnkStruct2 *arg1); +void fn_1_76D8(omObjData *object, M430DllUnkStruct2 *arg1); +void fn_1_7848(omObjData *object); +void fn_1_7CAC(omObjData *object); +void fn_1_7EAC(omObjData *object, M430DllWork2 *arg1); +void fn_1_803C(omObjData *object); +void fn_1_8264(omObjData *object); +void fn_1_82F4(omObjData *object, M430DllBss60Struct *arg1); +void fn_1_86B4(omObjData *object, M430DllBss60Struct *arg1); +void fn_1_8B5C(omObjData *object, M430DllBss60Struct *arg1); +void fn_1_8CE0(ModelData *model, Mtx matrix); +void fn_1_963C(ModelData *model, Mtx matrix, u32 arg2); +void fn_1_9C90(ModelData *model, Mtx matrix); +void fn_1_A3A8(ModelData *model, Mtx matrix); +void fn_1_AB98(ModelData *model, Mtx matrix); +void fn_1_AC84(ModelData *model, Mtx matrix); +void fn_1_AD04(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_B394(ModelData *model, ParticleData *particle, Mtx matrix); +float fn_1_BB54(u32 arg0); + +AnimData *lbl_1_bss_150; +AnimData *lbl_1_bss_14C; +AnimData *lbl_1_bss_148; +AnimData *lbl_1_bss_144; +AnimData *lbl_1_bss_140; +M430DllBss60Struct lbl_1_bss_60[2]; +s32 lbl_1_bss_5C; +omObjData *lbl_1_bss_58; +omObjData *lbl_1_bss_54; +omObjData *lbl_1_bss_50; +float lbl_1_bss_4C; +float lbl_1_bss_48; +s32 lbl_1_bss_44; +s32 lbl_1_bss_40; + +void fn_1_4A80(Process *process) +{ + omObjData *object; + + lbl_1_bss_150 = HuSprAnimRead(HuDataReadNum(0x3D0019, 0x10000000)); + lbl_1_bss_14C = HuSprAnimRead(HuDataReadNum(0x3D001A, 0x10000000)); + lbl_1_bss_148 = HuSprAnimRead(HuDataReadNum(0x3D0014, 0x10000000)); + lbl_1_bss_144 = HuSprAnimRead(HuDataReadNum(0x3D0017, 0x10000000)); + lbl_1_bss_140 = HuSprAnimRead(HuDataReadNum(0x3D0018, 0x10000000)); + object = lbl_1_bss_58 = omAddObjEx(process, 0x1E, 0x68, 0, -1, fn_1_4CB4); + object->work[0] = 0; + object = lbl_1_bss_54 = omAddObjEx(process, 0x1E, 7, 0, -1, fn_1_803C); + object->work[0] = 0; + object = lbl_1_bss_50 = omAddObjEx(process, 0x1E, 0, 0, -1, fn_1_7848); + object->work[0] = 0; + lbl_1_bss_5C = 0; + lbl_1_bss_44 = lbl_1_bss_40 = 0; + lbl_1_bss_4C = lbl_1_bss_48 = 0.0f; +} + +void fn_1_4C48(void) +{ + HuSprAnimKill(lbl_1_bss_150); + HuSprAnimKill(lbl_1_bss_14C); + HuSprAnimKill(lbl_1_bss_148); + HuSprAnimKill(lbl_1_bss_144); + HuSprAnimKill(lbl_1_bss_140); +} + +void fn_1_4CB4(omObjData *object) +{ + s32 var_r31; + M430DllWork *var_r30; + s32 var_r28; + s32 var_r27; + HsfData *var_r26; + s32 var_r25; + M430DllWork *work; + + u32 spC[1] = { 0x3D0001 }; + s32 sp8[1]; + u32 sp90[4] = { 0x003D000B, 0x003D000C, 0x003D000D, 0x003D000E }; + u32 sp80[4] = { 0x003D0002, 0x003D0002, 0x003D0003, 0x003D0003 }; + u32 sp70[4] = { 0x003D0004, 0x003D0004, 0x00000000, 0x00000000 }; + u32 sp60[4] = { 0x003D0006, 0x003D0007, 0x003D0008, 0x003D0009 }; + s32 sp50[4]; + s32 sp40[4]; + s32 sp30[4]; + s32 sp20[4]; + s32 sp18[2] = { 1, 2 }; + s32 sp10[2]; + s32 spA0[6] = { 0, 3, 2, 1, 2, 3 }; + + object->stat |= 0x100; + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, 2 * sizeof(M430DllWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, 2 * sizeof(M430DllWork)); + for (var_r30 = work, var_r31 = 0; var_r31 < 2; var_r31++, var_r30++) { + var_r30->unk_00 = var_r31; + var_r30->unk_04.x = var_r30->unk_04.y = var_r30->unk_04.z = 0.0f; + var_r30->unk_3C = 0; + var_r30->unk_7C = 0; + var_r30->unk_BC = 0; + } + var_r30 = work; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + object->model[var_r31] = Hu3DModelCreateFile(0x3D0000); + var_r30[var_r31].unk_18 = object->model[var_r31]; + Hu3DModelLayerSet(var_r30[var_r31].unk_18, 0); + Hu3DModelScaleSet(var_r30[var_r31].unk_18, 1.15f, 1.15f, 1.15f); + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x3D000A), 1); + var_r30[var_r31].unk_1A = var_r27; + Hu3DModelLayerSet(var_r27, 1); + *((s16 *)Hu3DData[var_r27].unk_120) = 1; + var_r30[var_r31].unk_1C = Hu3DTexScrollCreate(var_r30[var_r31].unk_18, "pa_sk2"); + var_r30[var_r31].unk_1E = Hu3DTexScrollCreate(var_r30[var_r31].unk_18, "pa_sk3"); + Hu3DTexScrollPosMoveSet(var_r30[var_r31].unk_1C, -0.00009166667f, 0.0f, 0.0f); + Hu3DTexScrollPosMoveSet(var_r30[var_r31].unk_1E, -0.00020000001f, 0.0f, 0.0f); + var_r30[var_r31].unk_20 = 50000.0f; + var_r26 = Hu3DData[var_r30[var_r31].unk_18].hsfData; + for (var_r28 = 0; var_r28 < var_r26->materialCnt; var_r28++) { + var_r26->material[var_r28].flags &= 0xFFFFFDFF; + var_r26->material[var_r28].pass = 1; + var_r26->material[var_r28].invAlpha = 0.001f; + } + } + object->model[2] = Hu3DModelCreateFile(0x3D000F); + Hu3DModelLayerSet(object->model[2], 1); + Hu3DModelScaleSet(object->model[2], 1.5f, 1.5f, 1.5f); + object->model[3] = Hu3DModelCreateFile(0x3D0010); + Hu3DModelLayerSet(object->model[3], 2); + Hu3DModelScaleSet(object->model[3], 1.5f, 1.5f, 1.5f); + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x3D0015), 0x64); + object->model[var_r31 + 4] = var_r27; + var_r30[var_r31].unk_10 = var_r27; + Hu3DModelLayerSet(var_r27, 2); + Hu3DParticleColSet(var_r27, 0xFF, 0xFF, 0xFF); + Hu3DParticleHookSet(var_r27, fn_1_AD04); + Hu3DModelPosSet(var_r27, 0.0f, 0.0f, 0.0f); + *((s16 *)Hu3DData[var_r27].unk_120) = 0; + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x3D0015), 0x64); + object->model[var_r31 + 6] = var_r27; + var_r30[var_r31].unk_14 = var_r27; + Hu3DModelLayerSet(var_r27, 1); + Hu3DParticleColSet(var_r27, 0xFF, 0xFF, 0xFF); + Hu3DParticleHookSet(var_r27, fn_1_B394); + Hu3DModelPosSet(var_r27, 0.0f, 0.0f, 0.0f); + *((s16 *)Hu3DData[var_r27].unk_120) = 0; + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + sp20[var_r31] = Hu3DModelCreateFile(sp90[var_r31]); + } + for (var_r31 = 0; var_r31 < 0xC; var_r31++) { + var_r27 = sp20[var_r31 % 4]; + object->model[var_r31 + 8] = Hu3DModelLink(var_r27); + object->model[var_r31 + 0x14] = Hu3DModelLink(var_r27); + var_r30[0].unk_24[var_r31] = object->model[var_r31 + 8]; + var_r30[1].unk_24[var_r31] = object->model[var_r31 + 0x14]; + Hu3DModelLayerSet(var_r30[0].unk_24[var_r31], 1); + Hu3DModelLayerSet(var_r30[1].unk_24[var_r31], 1); + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + sp50[var_r31] = Hu3DModelCreateFile(sp80[var_r31]); + sp40[var_r31] = -1; + sp30[var_r31] = -1; + if (sp70[var_r31] != 0) { + sp40[var_r31] = Hu3DModelCreateFile(sp70[var_r31]); + } + } + for (var_r31 = 0; var_r31 < 6; var_r31++) { + s32 sp10[2] = { 0x5C, 0x62 }; + var_r25 = spA0[var_r31]; + var_r27 = sp50[var_r25]; + for (var_r28 = 0; var_r28 < 2; var_r28++) { + object->model[var_r31 + sp10[var_r28]] = Hu3DModelLink(var_r27); + var_r30[var_r28].unk_80[var_r31] = object->model[var_r31 + sp10[var_r28]]; + Hu3DModelLayerSet(var_r30[var_r28].unk_80[var_r31], 1); + } + for (var_r28 = 0; var_r28 < 2; var_r28++) { + var_r30[var_r28].unk_8C[var_r31] = -1; + var_r30[var_r28].unk_98[var_r31] = -1; + } + if (sp40[var_r25] >= 0) { + var_r27 = sp40[var_r25]; + for (var_r28 = 0; var_r28 < 2; var_r28++) { + var_r30[var_r28].unk_8C[var_r31] = Hu3DModelLink(var_r27); + Hu3DModelLayerSet(var_r30[var_r28].unk_8C[var_r31], 4); + Hu3DModelAttrSet(var_r30[var_r28].unk_8C[var_r31], HU3D_ATTR_ZWRITE_OFF); + } + } + if (sp60[var_r25] != 0) { + for (var_r28 = 0; var_r28 < 2; var_r28++) { + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(sp60[var_r25]), 1); + var_r30[var_r28].unk_98[var_r31] = var_r27; + Hu3DModelLayerSet(var_r27, 5); + Hu3DParticleColSet(var_r27, 0xFF, 0xFF, 0xFF); + Hu3DModelPosSet(var_r27, 0.0f, 0.0f, 0.0f); + *((s16 *)Hu3DData[var_r27].unk_120) = 1; + } + } + } + for (var_r31 = 0; var_r31 < 1; var_r31++) { + sp8[var_r31] = Hu3DModelCreateFile(spC[var_r31]); + } + for (var_r31 = 0; var_r31 < 0x1E; var_r31 += 3) { + var_r27 = sp8[frandmod(1)]; + object->model[var_r31 + 0x20] = Hu3DModelLink(var_r27); + object->model[var_r31 + 0x21] = Hu3DModelLink(var_r27); + object->model[var_r31 + 0x22] = Hu3DModelLink(var_r27); + object->model[var_r31 + 0x3E] = Hu3DModelLink(var_r27); + object->model[var_r31 + 0x3F] = Hu3DModelLink(var_r27); + object->model[var_r31 + 0x40] = Hu3DModelLink(var_r27); + var_r30->unk_40[var_r31 / 3] = object->model[var_r31 + 0x20]; + var_r30->unk_54[var_r31 / 3] = object->model[var_r31 + 0x21]; + var_r30->unk_68[var_r31 / 3] = object->model[var_r31 + 0x22]; + var_r30[1].unk_40[var_r31 / 3] = object->model[var_r31 + 0x3E]; + var_r30[1].unk_54[var_r31 / 3] = object->model[var_r31 + 0x3F]; + var_r30[1].unk_68[var_r31 / 3] = object->model[var_r31 + 0x40]; + Hu3DModelLayerSet(var_r30->unk_40[var_r31 / 3], 1); + Hu3DModelLayerSet(var_r30->unk_54[var_r31 / 3], 1); + Hu3DModelLayerSet(var_r30->unk_68[var_r31 / 3], 1); + Hu3DModelLayerSet(var_r30[1].unk_40[var_r31 / 3], 1); + Hu3DModelLayerSet(var_r30[1].unk_54[var_r31 / 3], 1); + Hu3DModelLayerSet(var_r30[1].unk_68[var_r31 / 3], 1); + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r30[var_r31].unk_C0 = fn_1_70AC(object, var_r31, 8); + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + Hu3DModelKill(sp20[var_r31]); + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + Hu3DModelKill(sp50[var_r31]); + if (sp40[var_r31] >= 0) { + Hu3DModelKill(sp40[var_r31]); + } + if (sp30[var_r31] >= 0) { + Hu3DModelKill(sp30[var_r31]); + } + } + for (var_r31 = 0; var_r31 < 1; var_r31++) { + Hu3DModelKill(sp8[var_r31]); + } + for (var_r30 = work, var_r31 = 0; var_r31 < 2; var_r31++, var_r30++) { + Hu3DModelCameraSet(var_r30->unk_18, sp18[var_r31]); + Hu3DModelCameraSet(var_r30->unk_1A, sp18[var_r31]); + Hu3DModelCameraSet(var_r30->unk_10, sp18[var_r31]); + Hu3DModelCameraSet(var_r30->unk_14, sp18[var_r31]); + for (var_r28 = 0; var_r28 < 0xC; var_r28++) { + Hu3DModelCameraSet(var_r30->unk_24[var_r28], sp18[var_r31]); + } + for (var_r28 = 0; var_r28 < 6; var_r28++) { + Hu3DModelCameraSet(var_r30->unk_80[var_r28], sp18[var_r31]); + Hu3DModelAttrSet(var_r30->unk_80[var_r28], HU3D_ATTR_DISPOFF); + if (var_r30->unk_8C[var_r28] >= 0) { + Hu3DModelCameraSet(var_r30->unk_8C[var_r28], sp18[var_r31]); + Hu3DModelAttrSet(var_r30->unk_8C[var_r28], HU3D_ATTR_DISPOFF); + } + if (var_r30->unk_98[var_r28] >= 0) { + Hu3DModelCameraSet(var_r30->unk_98[var_r28], sp18[var_r31]); + Hu3DModelAttrSet(var_r30->unk_98[var_r28], HU3D_ATTR_DISPOFF); + } + } + for (var_r28 = 0; var_r28 < 0xA; var_r28++) { + Hu3DModelCameraSet(var_r30->unk_40[var_r28], sp18[var_r31]); + Hu3DModelCameraSet(var_r30->unk_54[var_r28], sp18[var_r31]); + Hu3DModelCameraSet(var_r30->unk_68[var_r28], sp18[var_r31]); + Hu3DModelAttrSet(var_r30->unk_40[var_r28], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r30->unk_54[var_r28], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r30->unk_68[var_r28], HU3D_ATTR_DISPOFF); + } + } + Hu3DModelCameraSet(object->model[2], sp18[0]); + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelCameraSet(object->model[3], sp18[0]); + Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); + object->func = fn_1_5DF8; +} + +void fn_1_5DF8(omObjData *object) +{ + M430DllWork *var_r31; + s32 var_r29; + M430DllWork *work; + + work = object->data; + if ((fn_1_4070() >= 2) && (fn_1_4030() != 0)) { + var_r31 = work; + if ((lbl_1_bss_44 == 0) && (fn_1_4130() < 5.0f)) { + lbl_1_bss_4C = var_r31[0].unk_04.x; + if (lbl_1_bss_4C > var_r31[1].unk_04.x) { + lbl_1_bss_4C = var_r31[1].unk_04.x; + } + lbl_1_bss_44 = 1; + } + if ((lbl_1_bss_40 == 0) && (fn_1_4130() < 1.8f)) { + lbl_1_bss_48 = var_r31[0].unk_04.x; + if (lbl_1_bss_48 > var_r31[1].unk_04.x) { + lbl_1_bss_48 = var_r31[1].unk_04.x; + } + lbl_1_bss_40 = 1; + } + } + for (var_r31 = work, var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) { + var_r31->unk_04.z = var_r31->unk_04.x; + var_r31->unk_04.x = var_r31->unk_04.y; + fn_1_6180(var_r31); + fn_1_6540(var_r31); + fn_1_6DC8(var_r31); + fn_1_6754(var_r31); + fn_1_732C(object, var_r31->unk_C0); + fn_1_76D8(object, var_r31->unk_C0); + if (var_r29 != 0) { + if (fn_1_4030() != 0) { + Hu3DModelCameraSet(var_r31->unk_10, 2); + Hu3DModelCameraSet(var_r31->unk_14, 2); + } + else { + Hu3DModelCameraSet(var_r31->unk_10, 1); + Hu3DModelCameraSet(var_r31->unk_14, 1); + } + } + } + if (lbl_1_bss_5C != 0) { + Vec sp20 = { 0.0f, 3000.0f, 0.0f }; + Vec sp14 = { 0.0f, 0.0f, 0.0f }; + Vec sp8 = { 0.0f, 1.0f, 0.0f }; + + Hu3DModelAttrReset(object->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelShadowMapSet(object->model[2]); + Hu3DModelPosSet(object->model[2], 0.0f, 0.0f, fn_1_7FBC(0) - 400.0f); + Hu3DModelAttrReset(object->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(object->model[3], 0.0f, 0.0f, fn_1_7FBC(0) - 400.0f); + sp20.z = sp14.z = fn_1_7FBC(0) - 400.0f; + sp20.z += 100.0f; + Hu3DShadowPosSet(&sp20, &sp8, &sp14); + return; + } + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); +} + +void fn_1_6180(M430DllWork *work) +{ + Vec sp28; + Vec sp1C; + Vec sp10; + HsfanimStruct01 *var_r30; + s32 var_r29; + + float sp8[2] = { -450.0f, 450.0f }; + sp1C.x = CenterM[work->unk_00].x; + sp1C.y = CenterM[work->unk_00].y + (CZoomM[work->unk_00] * sind(-CRotM[work->unk_00].x)); + sp1C.z = CenterM[work->unk_00].z + (CZoomM[work->unk_00] * cosd(-CRotM[work->unk_00].x)); + sp28.x = sp1C.x; + sp28.y = 0.0f; + sp28.z = sp1C.z - 450000.0f; + PSVECSubtract(&sp28, &sp1C, &sp10); + PSVECNormalize(&sp10, &sp10); + PSVECScale(&sp10, &sp10, 6000.0f); + PSVECAdd(&sp1C, &sp10, &sp28); + Hu3DModelPosSetV(work->unk_18, &sp28); + if ((fn_1_4070() >= 2) && (fn_1_4030() != 0)) { + if ((lbl_1_bss_40 != 0) && (lbl_1_bss_48 >= work->unk_04.x)) { + if (work->unk_20 > 0.0f) { + work->unk_20 = fn_1_7FBC(work->unk_00) - 23000.0f; + } + sp28.x = 0.0f; + sp28.y = 0.0f; + sp28.z = work->unk_20 - fn_1_7FBC(work->unk_00); + PSVECSubtract(&sp28, &sp1C, &sp10); + PSVECNormalize(&sp10, &sp10); + PSVECScale(&sp10, &sp10, 5000.0f); + PSVECAdd(&sp1C, &sp10, &sp28); + sp28.y += 237.5f; + Hu3DModelPosSet(work->unk_1A, 0.0f, 593.75f, work->unk_20); + var_r30 = ((ParticleData *)Hu3DData[work->unk_1A].unk_120)->unk_48; + var_r30->unk34.x = var_r30->unk34.y = var_r30->unk34.z = 0.0f; + var_r30->unk2C = 2000.0f; + var_r29 = var_r30->unk40.a; + var_r29 += 2; + if (var_r29 > 0xFF) { + var_r29 = 0xFF; + } + var_r30->unk40.a = var_r29; + } + } + else { + var_r30 = ((ParticleData *)Hu3DData[work->unk_1A].unk_120)->unk_48; + var_r30->unk2C = 0.0f; + var_r30->unk40.a = 0; + } + DCStoreRange(var_r30, sizeof(HsfanimStruct01)); +} + +void fn_1_6540(M430DllWork *work) +{ + float var_f31; + float var_f30; + float var_f29; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + var_r28 = 1; + var_f29 = work->unk_04.x; + work->unk_3C = (s32)(fabs2(var_f29) / 1000.0) % 12; + var_r30 = work->unk_3C; + var_f31 = 1000.0f * (s32)(work->unk_04.x / 1000.0f); + var_f30 = 4000.0f; + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { + if (var_r28 != 0) { + Hu3DModelAttrReset(work->unk_24[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(work->unk_24[var_r30], 0.0f, 0.0f, var_f31); + var_f31 -= 1000.0f; + var_f30 -= 1000.0f; + if (var_f30 < 0.0f) { + var_r28 = 0; + } + } + else { + Hu3DModelAttrSet(work->unk_24[var_r30], HU3D_ATTR_DISPOFF); + } + var_r30 = (var_r30 + 1) % 12; + } +} + +void fn_1_6754(M430DllWork *work) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + s32 var_r30; + HsfanimStruct01 *var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + + var_r27 = 1; + { + float sp20[6] = { -1800.0f, 2000.0f, -1800.0f, 2000.0f, -1800.0f, 2000.0f }; + Vec2f sp38[6] = { + { -130.0f, 500.0f }, + { 180.0f, 70.0f }, + { 100.0f, 50.0f }, + { -30.000002f, 500.0f }, + { 100.0f, 50.0f }, + { 180.0f, 70.0f }, + }; + float sp8[6] = { 2750.0f, 1550.0f, 1450.0f, 2750.0f, 1450.0f, 1550.0f }; + if (lbl_1_bss_5C != 0) { + var_r27 = 0; + } + if ((fn_1_4070() == 0) || (fn_1_4030() == 0) || (lbl_1_bss_44 == 0) || !(lbl_1_bss_4C > work->unk_04.x)) { + for (var_r28 = 0; var_r28 < 6; var_r28++) { + work->unk_A4[var_r28] = 1; + } + } + var_f26 = work->unk_04.x; + work->unk_BC = (s32)(fabs2(var_f26) / 5000.0) % 6; + var_r30 = work->unk_BC; + var_f31 = 1000.0f + (5000.0f * (s32)(work->unk_04.x / 5000.0f)); + var_f28 = (1000.0f + work->unk_04.x) - 9000.0f; + var_f27 = (1000.0f + work->unk_04.x) - 20000.0f; + for (var_r28 = 0; var_r28 < 6; var_r28++) { + var_r25 = var_r24 = var_r23 = 1; + if ((var_r27 != 0) && (work->unk_A4[var_r30] != 0)) { + if ((var_f31 > var_f28) || ((work->unk_98[var_r30] >= 0) && (var_f31 > var_f27))) { + if (var_f31 > var_f28) { + Hu3DModelAttrReset(work->unk_80[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(work->unk_80[var_r30], sp20[var_r30], 0.0f, var_f31); + if (work->unk_8C[var_r30] >= 0) { + Hu3DModelAttrReset(work->unk_8C[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(work->unk_8C[var_r30], sp20[var_r30], 0.0f, var_f31); + } + var_r25 = var_r24 = 0; + } + if ((work->unk_98[var_r30] >= 0) && (var_f31 > var_f27) && (var_f31 < (1000.0f + var_f28))) { + var_r26 = work->unk_98[var_r30]; + Hu3DModelAttrReset(var_r26, HU3D_ATTR_DISPOFF); + var_r29 = ((ParticleData *)Hu3DData[var_r26].unk_120)->unk_48; + Hu3DModelPosSet(work->unk_98[var_r30], sp20[var_r30] + sp38[var_r30].x, sp38[var_r30].y, var_f31); + var_r29->unk34.x = var_r29->unk34.y = var_r29->unk34.z = 0.0f; + var_r29->unk2C = sp8[var_r30]; + var_r29->unk40.a = -1; + var_f30 = fabs(var_f27 - var_f31); + var_f29 = 1000.0f - (var_f31 - var_f28); + if (var_f30 < 2000.0f) { + var_f30 *= 0.0005f; + var_r29->unk40.a = 255.0f * var_f30; + } + else if (var_f29 < 1000.0f) { + var_f29 *= 0.001f; + var_r29->unk40.a = 255.0f * var_f29; + } + DCStoreRange(var_r29, sizeof(HsfanimStruct01)); + var_r23 = 0; + } + } + } + else { + work->unk_A4[var_r30] = 0; + } + if (var_r25 != 0) { + Hu3DModelAttrSet(work->unk_80[var_r30], HU3D_ATTR_DISPOFF); + } + if ((var_r24 != 0) && (work->unk_8C[var_r30] >= 0)) { + Hu3DModelAttrSet(work->unk_8C[var_r30], HU3D_ATTR_DISPOFF); + } + if ((var_r23 != 0) && (work->unk_98[var_r30] >= 0)) { + Hu3DModelAttrSet(work->unk_98[var_r30], HU3D_ATTR_DISPOFF); + } + var_f31 -= 5000.0f; + if (var_f31 < var_f27) { + var_r27 = 0; + } + var_r30 = (var_r30 + 1) % 6; + } + } +} + +void fn_1_6DC8(M430DllWork *work) +{ + float var_f31; + float var_f30; + float var_f29; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + var_r28 = 1; + if (lbl_1_bss_5C != 0) { + var_r28 = 0; + } + var_f29 = work->unk_04.x; + work->unk_7C = (s32)(fabs2(var_f29) / 1000.0) % 10; + var_r30 = work->unk_7C; + var_f31 = 1000.0f + (1000.0f * (s32)(work->unk_04.x / 1000.0f)); + var_f30 = 8000.0f; + for (var_r29 = 0; var_r29 < 0xA; var_r29++) { + if (var_r28 != 0) { + Hu3DModelAttrReset(work->unk_40[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(work->unk_54[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(work->unk_68[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(work->unk_40[var_r30], -920.0f, 0.0f, var_f31); + Hu3DModelPosSet(work->unk_54[var_r30], 0.0f, 0.0f, var_f31); + Hu3DModelPosSet(work->unk_68[var_r30], 920.0f, 0.0f, var_f31); + var_f31 -= 1000.0f; + var_f30 -= 1000.0f; + if (var_f30 < 0.0f) { + var_r28 = 0; + } + } + else { + Hu3DModelAttrSet(work->unk_40[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(work->unk_54[var_r30], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(work->unk_68[var_r30], HU3D_ATTR_DISPOFF); + } + var_r30 = (var_r30 + 1) % 10; + } +} + +M430DllUnkStruct2 *fn_1_70AC(omObjData *arg0, s32 var_r27, s16 var_r28) +{ + float var_f31; + float var_f30; + float var_f29; + M430DllUnkStruct2 *var_r31; + s32 var_r30; + M430DllUnkStruct2 *var_r29; + + u32 sp10[2] = { 0x003D0011, 0x003D0012 }; + s32 sp8[2] = { 1, 2 }; + var_r29 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r28 * sizeof(M430DllUnkStruct2), MEMORY_DEFAULT_NUM); + memset(var_r29, 0, var_r28 * 0x3C); + var_f31 = -90.0f; + for (var_r31 = var_r29, var_r30 = 0; var_r30 < var_r28; var_r30++, var_r31++) { + var_r31->unk_00 = var_r27; + var_r31->unk_04 = Hu3DModelCreateFile(sp10[var_r30 & 1]); + Hu3DModelLayerSet(var_r31->unk_04, 1); + Hu3DModelCameraSet(var_r31->unk_04, sp8[var_r31->unk_00]); + var_f30 = frandmod(0x168); + var_f29 = frandmod(0x118); + var_r31->unk_0C.x = var_f29 * sind(var_f30) + fn_1_BB54(var_r27); + var_r31->unk_0C.y = var_f31; + var_r31->unk_0C.z = var_f29 * cosd(var_f30); + var_r31->unk_2C = frandmod(0x168); + var_r31->unk_34 = 1.0f; + var_r31->unk_38 = 0.0f; + var_f31 -= 10.0f; + var_r31->unk_0A = var_r28; + } + return var_r29; +} + +void fn_1_732C(omObjData *object, M430DllUnkStruct2 *arg1) +{ + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + var_r28 = arg1->unk_0A; + for (var_r30 = 0; var_r30 < var_r28; var_r30++, arg1++) { + var_r29 = 0; + if (arg1->unk_34 > arg1->unk_38) { + var_r29 = 1; + } + else { + PSVECSubtract(&arg1->unk_18, &arg1->unk_0C, &sp8); + var_f31 = PSVECMag(&sp8); + if (var_f31 < 50.0f) { + var_r29 = 1; + } + } + if (var_r29 != 0) { + var_f31 = frandmod(0x168); + var_f30 = 400.0f + frandmod(0x15E); + arg1->unk_18.x = var_f30 * sind(var_f31) + fn_1_BB54(arg1->unk_00); + arg1->unk_18.z = 2.0 * (var_f30 * cosd(var_f31)); + arg1->unk_18.y = arg1->unk_0C.y; + arg1->unk_34 = 0.0f; + arg1->unk_38 = 200.0f + frandmod(0x258); + arg1->unk_28 = 400.0f; + } + PSVECSubtract(&arg1->unk_18, &arg1->unk_0C, &sp8); + arg1->unk_30 = atan2d(sp8.x, sp8.z); + arg1->unk_2C = fn_1_48B0(arg1->unk_2C, arg1->unk_30, 0.08f); + arg1->unk_28 += 0.05f * (300.0f - arg1->unk_28); + arg1->unk_24 += 0.2f * (arg1->unk_28 - arg1->unk_24); + arg1->unk_0C.x = arg1->unk_0C.x + ((0.016666668f * arg1->unk_24) * sind(arg1->unk_2C)); + arg1->unk_0C.z = arg1->unk_0C.z + ((0.016666668f * arg1->unk_24) * cosd(arg1->unk_2C)); + arg1->unk_34 += 0.016666668f * arg1->unk_24; + } +} + +void fn_1_76D8(omObjData *object, M430DllUnkStruct2 *arg1) +{ + float var_f31; + s32 var_r30; + s32 var_r29; + + var_r29 = arg1->unk_0A; + if (lbl_1_bss_5C != 0) { + for (var_r30 = 0; var_r30 < var_r29; var_r30++, arg1++) { + Hu3DModelAttrSet(arg1->unk_04, HU3D_ATTR_DISPOFF); + } + return; + } + var_f31 = (s32)(0.00011111111f * (1000.0f + fn_1_7FBC(arg1->unk_00))); + var_f31 = (100.0f * (90.0f * var_f31)) - 5000.0f; + for (var_r30 = 0; var_r30 < var_r29; var_r30++, arg1++) { + Hu3DModelPosSet(arg1->unk_04, arg1->unk_0C.x, arg1->unk_0C.y, arg1->unk_0C.z + var_f31); + Hu3DModelRotSet(arg1->unk_04, 0.0f, arg1->unk_2C, 0.0f); + Hu3DModelAttrReset(arg1->unk_04, HU3D_ATTR_DISPOFF); + } +} + +void fn_1_7848(omObjData *object) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + M430DllWork2 *var_r31; + s16 var_r30; + s32 var_r29; + M430DllWork2 *work; + s32 var_r26; + + var_r30 = 0x20; + work = HuMemDirectMallocNum(HEAP_SYSTEM, var_r30 * sizeof(M430DllWork2), MEMORY_DEFAULT_NUM); + object->data = work; + memset(work, 0, var_r30 * sizeof(M430DllWork2)); + var_r26 = Hu3DModelCreateFile(0x3D0013); + var_f29 = 1000.0f; + for (var_r31 = work, var_r29 = 0; var_r29 < var_r30; var_r29++, var_r31++) { + var_r31->unk_00 = Hu3DModelLink(var_r26); + Hu3DModelLayerSet(var_r31->unk_00, 1); + Hu3DModelCameraSet(var_r31->unk_00, 1); + Hu3DModelAttrSet(var_r31->unk_00, HU3D_ATTR_DISPOFF); + var_r31->unk_14.x = (2.8f * frandmod(0x3E8)) - 1400.0f; + var_r31->unk_14.z = 0.7f * frandmod(0x3E8) - 350.0f; + var_r31->unk_14.y = 300.0f + (0.8f * frandmod(0x3E8)); + var_f30 = frandmod(0x168); + var_f31 = 200.0f + frandmod(0xAF); + var_r31->unk_08.x = var_f31 * sind(var_f30); + var_r31->unk_08.y = 0.0f; + var_r31->unk_08.z = var_f31 * cosd(var_f30); + PSVECAdd(&var_r31->unk_14, &var_r31->unk_08, &var_r31->unk_08); + var_r31->unk_38 = 60.0f - (0.13483146f * var_f31); + var_r31->unk_28 = frandmod(0x168); + if (frandmod(0x3E8) < 0x1F4) { + var_f28 = -70.0f + (0.1f * frandmod(0x32)); + } + else { + var_f28 = 70.0f - (0.1f * frandmod(0x32)); + } + var_r31->unk_3C = var_f28; + if (var_r31->unk_3C < 0.0f) { + var_r31->unk_38 = -var_r31->unk_38; + } + var_r31->unk_30 = 1.0f; + var_r31->unk_34 = 0.0f; + var_f29 -= 50.0f; + var_r31->unk_06 = var_r30; + } + (void)var_r29; + (void)object; + Hu3DModelKill(var_r26); + object->func = fn_1_7CAC; +} + +void fn_1_7CAC(omObjData *object) +{ + Vec spC; + s32 sp8; + s32 var_r29; + + M430DllWork2 *work = object->data; + s32 var_r28 = work->unk_06; + if (fn_1_4070() >= 4) { + for (var_r29 = 0; var_r29 < var_r28; var_r29++, work++) { + sp8 = 0; + PSVECSubtract(&work->unk_14, &work->unk_08, &spC); + work->unk_2C = atan2d(spC.x, spC.z); + work->unk_28 = fn_1_48B0(work->unk_28, work->unk_2C + work->unk_3C, 0.08f); + work->unk_24 += (0.05f * (600.0f - work->unk_24)); + work->unk_20 += (0.2f * (work->unk_24 - work->unk_20)); + work->unk_08.x += ((0.016666668f * work->unk_20) * sind(work->unk_28)); + work->unk_08.z += ((0.016666668f * work->unk_20) * cosd(work->unk_28)); + work->unk_30 += (0.016666668f * work->unk_20); + } + fn_1_7EAC(object, object->data); + } +} + +void fn_1_7EAC(omObjData *object, M430DllWork2 *var_r31) +{ + Mtx sp8; + float var_f31; + s32 var_r30; + Mtx *var_r29; + s32 var_r28; + + var_r28 = var_r31->unk_06; + var_f31 = fn_1_7FBC(0) - 2000.0f; + for (var_r30 = 0; var_r30 < var_r28; var_r30++, var_r31++) { + Hu3DModelPosSet(var_r31->unk_00, var_r31->unk_08.x, var_r31->unk_08.y, var_r31->unk_08.z + var_f31); + var_r29 = &Hu3DData[var_r31->unk_00].unk_F0; + PSMTXRotRad(*var_r29, 0x59, 0.017453292f * var_r31->unk_28); + PSMTXRotRad(sp8, 0x5A, 0.017453292f * var_r31->unk_38); + PSMTXConcat(*var_r29, sp8, *var_r29); + Hu3DModelAttrReset(var_r31->unk_00, HU3D_ATTR_DISPOFF); + } +} + +float fn_1_7FBC(s32 arg0) +{ + M430DllWork *var_r31; + M430DllWork *var_r30; + + var_r30 = lbl_1_bss_58->data; + arg0 &= 1; + var_r31 = var_r30; + return var_r31[arg0].unk_04.x; +} + +void fn_1_7FFC(s32 arg0, float arg8) +{ + M430DllWork *var_r31; + M430DllWork *var_r30; + + var_r30 = lbl_1_bss_58->data; + arg0 &= 1; + var_r31 = var_r30; + var_r31[arg0].unk_04.y = arg8; +} + +void fn_1_803C(omObjData *var_r31) +{ + var_r31->stat |= 0x100; + omSetStatBit(var_r31, 0xA0); + var_r31->model[0] = Hu3DHookFuncCreate(fn_1_8CE0); + Hu3DModelLayerSet(var_r31->model[0], 4); + Hu3DModelCameraSet(var_r31->model[0], 1); + var_r31->model[1] = Hu3DHookFuncCreate(fn_1_8CE0); + Hu3DModelLayerSet(var_r31->model[1], 4); + Hu3DModelCameraSet(var_r31->model[1], 2); + var_r31->model[2] = Hu3DHookFuncCreate(fn_1_9C90); + Hu3DModelLayerSet(var_r31->model[2], 0); + Hu3DModelCameraSet(var_r31->model[2], 1); + var_r31->model[3] = Hu3DHookFuncCreate(fn_1_9C90); + Hu3DModelLayerSet(var_r31->model[3], 0); + Hu3DModelCameraSet(var_r31->model[3], 2); + var_r31->model[4] = Hu3DHookFuncCreate(fn_1_A3A8); + Hu3DModelLayerSet(var_r31->model[4], 1); + Hu3DModelCameraSet(var_r31->model[4], 3); + var_r31->model[5] = Hu3DHookFuncCreate(fn_1_AB98); + Hu3DModelLayerSet(var_r31->model[5], 3); + Hu3DModelCameraSet(var_r31->model[5], 3); + var_r31->model[6] = Hu3DHookFuncCreate(fn_1_AC84); + Hu3DModelLayerSet(var_r31->model[6], 7); + Hu3DModelCameraSet(var_r31->model[6], 3); + lbl_1_bss_60->unk_00 = 0; + lbl_1_bss_60->unk_04 = var_r31->model[0]; + fn_1_82F4(var_r31, lbl_1_bss_60); + lbl_1_bss_60[1].unk_00 = 1; + lbl_1_bss_60[1].unk_04 = var_r31->model[1]; + fn_1_82F4(var_r31, &lbl_1_bss_60[1]); + var_r31->func = fn_1_8264; +} + +void fn_1_8264(omObjData *object) +{ + lbl_1_bss_60[0].unk_08 = lbl_1_bss_60[1].unk_08 = 0; + lbl_1_bss_60[0].unk_0C = lbl_1_bss_60[1].unk_0C = 0; + lbl_1_bss_60[0].unk_10 = lbl_1_bss_60[1].unk_10 = 0; + lbl_1_bss_60[0].unk_14 = lbl_1_bss_60[1].unk_14 = 0; + lbl_1_bss_60[0].unk_18 = lbl_1_bss_60[1].unk_18 = 0; +} + +void fn_1_82F4(omObjData *object, M430DllBss60Struct *var_r31) +{ + float var_f31; + float var_f30; + s32 var_r30; + Vec *var_r29; + GXColor *var_r28; + s32 var_r27; + + s32 sp8[8] = { 0, 0x16, 1, 0x17, 1, 0, 0x17, 0x16 }; + + var_r31->unk_2C = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1B8 * sizeof(Vec), MEMORY_DEFAULT_NUM); + var_r31->unk_30 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1B8 * sizeof(Vec), MEMORY_DEFAULT_NUM); + var_r31->unk_34 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x14A0, MEMORY_DEFAULT_NUM); + var_r31->unk_38 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x6E0, MEMORY_DEFAULT_NUM); + var_r31->unk_40 = 0; + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r31->unk_44[var_r30] = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1B8 * sizeof(Vec), MEMORY_DEFAULT_NUM); + var_r31->unk_54[var_r30] = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1B8 * sizeof(GXColor), MEMORY_DEFAULT_NUM); + } + var_r31->unk_5C = 0x12D0; + var_r31->unk_60 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_5C, MEMORY_DEFAULT_NUM); + DCFlushRange(var_r31->unk_60, var_r31->unk_5C); + var_r31->unk_64 = 0; + var_r31->unk_68 = GXGetTexBufferSize(0x140, 0x1E0, 5, 0, 0); + if (var_r31->unk_00 == 0) { + var_r31->unk_68 *= 2; + } + var_r31->unk_6C = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_68, MEMORY_DEFAULT_NUM); + DCFlushRange(var_r31->unk_6C, var_r31->unk_68); + var_r31->unk_1C = 0; + var_r31->unk_20 = 0; + var_r31->unk_24 = 0.0f; + var_r31->unk_28 = 0.0f; + var_r29 = var_r31->unk_2C; + var_f31 = 0.0f; + var_f30 = -2000.0f; + for (var_r30 = 0; var_r30 < 0x14; var_r30++) { + var_f31 = 65.47619f - var_f31; + for (var_r27 = 0; var_r27 < 0x16; var_r27++) { + var_r29->x = ((130.95238f * var_r27) - 1375.0f) + var_f31; + var_r29->y = 0.0f; + var_r29->z = var_f30; + var_r29++; + } + var_f30 += 210.52632f; + } + memset(var_r31->unk_30, 0, 0x1B8 * sizeof(Vec)); + for (var_r29 = var_r31->unk_30, var_r30 = 0; var_r30 < 0x1B8; var_r30++, var_r29++) { + var_r29->y = (0.05f * frandmod(0x3E8)) - 20.0f; + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + memcpy(var_r31->unk_44[var_r30], var_r31->unk_2C, 0x1B8 * sizeof(Vec)); + for (var_r28 = var_r31->unk_54[var_r30], var_r27 = 0; var_r27 < 0x1B8; var_r27++, var_r28++) { + var_r28->r = 0x32; + var_r28->g = 0x8C; + var_r28->b = 0xB4; + var_r28->a = 0; + } + } + fn_1_86B4(object, var_r31); + fn_1_8B5C(object, var_r31); +} + +void fn_1_86B4(omObjData *object, M430DllBss60Struct *arg1) +{ + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + GXColor *var_r30; + s32 var_r29; + Vec *var_r28; + Vec *var_r27; + Vec *var_r26; + u32 var_r25; + s32 var_r24; + s32 var_r23; + M430DllWork *var_r22; + M430DllWork *var_r21; + + if (omPauseChk() == 0) { + arg1->unk_1C++; + } + arg1->unk_40 = 1 - arg1->unk_40; + var_r25 = arg1->unk_00; + var_r21 = lbl_1_bss_58->data; + var_r25 &= 1; + var_r22 = var_r21; + var_f29 = var_r22[var_r25].unk_04.x; + var_f28 = var_f29; + var_f30 = var_f28; + var_r24 = 0.002375f * var_f30; + arg1->unk_28 = 421.05264f * var_r24; + arg1->unk_24 = var_f30 - arg1->unk_28; + arg1->unk_20 = (var_r24 * 2) % 20; + var_r23 = (arg1->unk_20 + 0x14) % 20; + Hu3DModelPosSet(arg1->unk_04, fn_1_BB54(arg1->unk_00), 0.0f, arg1->unk_28 - 500.0f); + var_r28 = arg1->unk_2C; + var_r30 = arg1->unk_54[arg1->unk_40]; + sp14.x = 0.0f; + sp14.y = 0.0f; + sp14.z = 2000.0f + arg1->unk_24; + if (lbl_1_bss_5C != 0) { + for (var_r29 = 0; var_r29 < 0x1B8; var_r29++) { + PSVECSubtract(var_r28, &sp14, &sp8); + var_f31 = 0.00025f * PSVECMag(&sp8); + if (var_f31 < 0.3f) { + var_r30->a = -1; + } + else if (var_f31 > 0.75f) { + var_r30->a = 0; + } + else { + var_f31 = 255.0f - (566.6667f * (var_f31 - 0.3f)); + var_r30->a = var_f31; + } + var_r28++; + var_r30++; + } + } + else { + for (var_r29 = 0; var_r29 < 0x1B8; var_r29++) { + PSVECSubtract(var_r28, &sp14, &sp8); + var_f31 = 0.00025f * PSVECMag(&sp8); + if (var_f31 < 0.25f) { + var_r30->a = -0x1A; + } + else if (var_f31 > 0.85f) { + var_r30->a = 0; + } + else { + var_f31 = 230.0f - (383.3333f * (var_f31 - 0.25f)); + var_r30->a = var_f31; + } + var_r28++; + var_r30++; + } + } + if (lbl_1_bss_5C != 0) { + memcpy(arg1->unk_44[arg1->unk_40], arg1->unk_2C, 0x1B8 * sizeof(Vec)); + } + else { + var_r28 = arg1->unk_2C; + var_r26 = arg1->unk_44[arg1->unk_40]; + var_r29 = (0x14 - var_r23) * 0x16; + var_r27 = &arg1->unk_30[0x1B8 - var_r29]; + while (var_r29-- != 0) { + PSVECAdd(var_r28, var_r27, var_r26); + var_r28++; + var_r27++; + var_r26++; + } + var_r29 = var_r23 * 0x16; + var_r27 = arg1->unk_30; + while (var_r29-- != 0) { + PSVECAdd(var_r28, var_r27, var_r26); + var_r28++; + var_r27++; + var_r26++; + } + memcpy(arg1->unk_44[arg1->unk_40], arg1->unk_2C, 0x16 * sizeof(Vec)); + } + DCStoreRangeNoSync(arg1->unk_44[arg1->unk_40], 0x1B8 * sizeof(Vec)); + DCStoreRangeNoSync(arg1->unk_54[arg1->unk_40], 0x1B8 * sizeof(GXColor)); + PPCSync(); +} + +void fn_1_8B5C(omObjData *object, M430DllBss60Struct *var_r30) +{ + s32 var_r31; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + + s32 sp28[5] = { 0, 0, 0, 1, 1 }; + s32 sp18[4] = { 1, 0, 0, 0 }; + s32 sp8[4] = { 0, 0, 1, 2 }; + GXBeginDisplayList(var_r30->unk_60, var_r30->unk_5C); + var_r26 = 0; + var_r31 = 0; + for (var_r29 = 0; var_r29 < 0x13; var_r29++) { + var_r24 = 0x2B - (((var_r26 * 2) + sp8[var_r31]) * 2); + var_r27 = sp18[var_r31]; + GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, var_r24); + for (var_r28 = 0; var_r28 < var_r24; var_r28++) { + var_r25 = (var_r28 >> 1) + ((var_r29 + var_r27) * 0x16) + (var_r26 + sp28[var_r31 + var_r27]); + GXUnknownu16(var_r25); + GXUnknownu16(var_r25); + var_r27 = 1 - var_r27; + } + var_r31++; + if (var_r31 >= 4) { + var_r31 = 0; + var_r26++; + } + } + var_r30->unk_64 = GXEndDisplayList(); +} + +void fn_1_8CE0(ModelData *model, Mtx matrix) +{ + Mtx sp194; + Mtx sp164; + Mtx sp134; + Mtx sp104; + Mtx spD4; + Mtx spA4; + Mtx sp74; + Mtx sp44; + GXTexObj sp24; + float var_f31; + float var_f30; + M430DllBss60Struct *var_r31; + + GXColor sp20 = { 0xFF, 0xFF, 0xFF, 0xFF }; + GXColor sp1C = { 0x08, 0x08, 0x08, 0xFF }; + GXColor sp18 = { 0x00, 0x00, 0x00, 0x80 }; + GXColor sp14 = { 0xCC, 0xBF, 0xB2, 0x33 }; + GXColor sp10 = { 0xE0, 0xD8, 0xF4, 0x08 }; + var_r31 = lbl_1_bss_60; + if (var_r31->unk_10 != 0) { + var_r31 = &var_r31[1]; + } + var_r31->unk_10 = 1; + fn_1_963C(model, matrix, var_r31->unk_00); + PSMTXCopy(matrix, sp134); + if (fn_1_4030() != 0) { + var_f30 = 1.0f; + var_f31 = fn_1_BB54(var_r31->unk_00); + } + else { + var_f30 = 1.5f; + var_f31 = 0.0f; + } + PSMTXTrans(sp164, var_f31 - fn_1_BB54(var_r31->unk_00), 0.0f, 0.0f); + PSMTXConcat(sp134, sp164, sp134); + PSMTXScale(sp194, var_f30, 1.0f, 1.0f); + PSMTXConcat(sp134, sp194, sp134); + GXLoadPosMtxImm(sp134, 0); + PSMTXInvXpose(sp134, sp194); + GXLoadNrmMtxImm(sp194, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + if ((fn_1_4030() == 0) && (var_r31->unk_00 == 0)) { + GXInitTexObj(&sp24, var_r31->unk_6C, 0x280, 0x1E0, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, 0); + } + else { + GXInitTexObj(&sp24, var_r31->unk_6C, 0x140, 0x1E0, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, 0); + } + GXInitTexObjLOD(&sp24, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); + GXLoadTexObj(&sp24, GX_TEXMAP0); + HuSprTexLoad(lbl_1_bss_150, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(lbl_1_bss_148, 0, 2, GX_CLAMP, GX_CLAMP, GX_LINEAR); + GXSetNumTexGens(3); + if (fn_1_4030() != 0) { + C_MTXLightPerspective(sp104, 41.5f, 0.6f, 0.5f, -0.5f, 0.5f, 0.5f); + } + else { + C_MTXLightPerspective(sp104, 41.5f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); + } + PSMTXInverse(Hu3DCameraMtx, spD4); + PSMTXConcat(spD4, sp134, spD4); + PSMTXConcat(sp104, Hu3DCameraMtx, spA4); + PSMTXConcat(spA4, spD4, spD4); + GXLoadTexMtxImm(spD4, 0x1E, GX_MTX3x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); + C_MTXLightPerspective(sp104, 70.0f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f); + PSMTXInverse(Hu3DCameraMtx, sp74); + PSMTXConcat(sp74, sp134, sp74); + PSMTXConcat(sp104, Hu3DCameraMtx, sp44); + PSMTXConcat(sp44, sp74, sp74); + GXLoadTexMtxImm(sp74, 0x24, GX_MTX3x4); + GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX3x4, GX_TG_POS, 0x24, GX_FALSE, 0x7D); + PSMTXRotRad(sp164, 0x58, 1.5707964f); + var_f31 = 0.00075f * var_f30; + PSMTXScale(sp194, var_f31, -0.003f, 0.00075f); + PSMTXConcat(sp164, sp194, sp164); + PSMTXTrans(sp194, (var_r31->unk_1C & 0x3FF) / (1024.0f * var_f31), 0.0f, (0.7f * var_r31->unk_28) - (0.3f * var_r31->unk_24)); + PSMTXConcat(sp164, sp194, sp164); + sp164[0][1] = -0.001f; + GXLoadTexMtxImm(sp164, 0x21, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); + GXSetNumIndStages(2); + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); + GXSetTevIndWarp(0, 0, GX_TRUE, GX_FALSE, 1); + PSMTXScale(sp164, -0.25f, -0.5f, 0.5f); + GXSetIndTexMtx(GX_ITM_0, (float(*)[3])sp164, -4); + GXSetIndTexOrder(GX_INDTEXSTAGE1, GX_TEXCOORD1, GX_TEXMAP1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE1, GX_ITS_1, GX_ITS_1); + GXSetTevIndWarp(1, 1, GX_TRUE, GX_FALSE, 2); + PSMTXScale(sp164, 0.4f, 0.5f, 0.5f); + GXSetIndTexMtx(GX_ITM_1, (float(*)[3])sp164, -1); + GXSetNumTevStages(2); + GXSetTevColor(GX_TEVREG0, sp14); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_RASC, GX_CC_TEXC, GX_CC_RASA, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_A0, GX_CA_ZERO, GX_CA_RASA, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD2, GX_TEXMAP2, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A0, GX_CC_CPREV); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetBlendMode(GX_BM_NONE, GX_BL_ONE, GX_BL_ZERO, GX_LO_SET); + GXSetZMode(1, GX_LEQUAL, 0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_POS, var_r31->unk_44[var_r31->unk_40], sizeof(Vec)); + GXSetArray(GX_VA_CLR0, var_r31->unk_54[var_r31->unk_40], sizeof(GXColor)); + GXSetCullMode(GX_CULL_NONE); + GXCallDisplayList(var_r31->unk_60, var_r31->unk_64); + GXSetCullMode(GX_CULL_BACK); + GXSetNumIndStages(0); + GXSetTevDirect(GX_TEVSTAGE0); + GXSetTevDirect(GX_TEVSTAGE1); +} + +Vec lbl_1_data_60[6] = { + { -2750.0f, 0.0f, -2500.0f }, + { 2750.0f, 0.0f, -2500.0f }, + { -2750.0f, 0.0f, 0.0f }, + { 2750.0f, 0.0f, 0.0f }, + { -1375.0f, 0.0f, 2500.0f }, + { 1375.0f, 0.0f, 2500.0f }, +}; +GXColor lbl_1_data_A8[6] = { + { 5, 0x38, 0xA2, 0 }, + { 5, 0x38, 0xA2, 0xFF }, + { 0x14, 0x54, 0xAB, 0xFF }, + { 0x1E, 0x6D, 0xB0, 0xFF }, + { 0x2A, 0x7E, 0xB4, 0xFF }, + { 0x32, 0x8C, 0xB4, 0xFF }, +}; + +void fn_1_963C(ModelData *model, Mtx matrix, u32 var_r31) +{ + Mtx sp100; + Mtx spD0; + Mtx spA0; + Mtx sp70; + Mtx sp40; + Mtx sp10; + float var_f31; + float var_f30; + + GXColor spC = { 0x32, 0x8C, 0xB4, 0x33 }; + if (fn_1_4030() != 0) { + var_f30 = 1.0f; + var_f31 = fn_1_BB54(var_r31); + } + else { + var_f30 = 1.5f; + var_f31 = 0.0f; + } + PSMTXTrans(spD0, var_f31, 0.0f, ((lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24) - 2500.0f) - 2000.0f); + PSMTXScale(sp100, var_f30, 1.0f, 1.0f); + PSMTXConcat(spD0, sp100, spD0); + PSMTXConcat(Hu3DCameraMtx, spD0, spA0); + GXLoadPosMtxImm(spA0, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + HuSprTexLoad(lbl_1_bss_14C, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(lbl_1_bss_148, 0, 1, GX_CLAMP, GX_CLAMP, GX_LINEAR); + GXSetNumTexGens(2); + C_MTXLightPerspective(sp70, 70.0f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f); + PSMTXInverse(Hu3DCameraMtx, sp40); + PSMTXConcat(sp40, spA0, sp40); + PSMTXConcat(sp70, Hu3DCameraMtx, sp10); + PSMTXConcat(sp10, sp40, sp40); + GXLoadTexMtxImm(sp40, 0x21, GX_MTX3x4); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX3x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); + PSMTXRotRad(spD0, 0x58, 1.5707964f); + var_f31 = 0.00075f * var_f30; + PSMTXScale(sp100, var_f31, -0.003f, 0.00075f); + PSMTXConcat(spD0, sp100, spD0); + PSMTXTrans(sp100, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (1024.0f * var_f31), 0.0f, + 0.3f * (lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24)); + PSMTXConcat(spD0, sp100, spD0); + GXLoadTexMtxImm(spD0, 0x1E, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); + GXSetNumIndStages(1); + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, GX_TEXMAP0); + GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); + GXSetTevIndWarp(0, 0, GX_TRUE, GX_FALSE, 1); + PSMTXScale(spD0, 0.5f, 0.6f, 0.6f); + GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spD0, -1); + GXSetNumTevStages(1); + GXSetTevColor(GX_TEVREG0, spC); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A0, GX_CC_RASC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_RASA); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetBlendMode(GX_BM_NONE, GX_BL_ONE, GX_BL_ZERO, GX_LO_SET); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_POS, lbl_1_data_60, sizeof(Vec)); + GXSetArray(GX_VA_CLR0, lbl_1_data_A8, sizeof(GXColor)); + GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, 6); + GXPosition1x8(0); + GXColor1x8(3); + GXPosition1x8(1); + GXColor1x8(3); + GXPosition1x8(2); + GXColor1x8(4); + GXPosition1x8(3); + GXColor1x8(4); + GXPosition1x8(4); + GXColor1x8(5); + GXPosition1x8(5); + GXColor1x8(5); + GXSetNumIndStages(0); + GXSetTevDirect(GX_TEVSTAGE0); +} + +Vec lbl_1_data_C0[8] = { + { -2750.0f, 20.0f, 0.0f }, + { 2750.0f, 20.0f, 0.0f }, + { -2750.0f, -20.0f, 0.0f }, + { 2750.0f, -20.0f, 0.0f }, + { -2750.0f, -160.0f, 0.0f }, + { 2750.0f, -160.0f, 0.0f }, + { -2750.0f, -340.0f, 0.0f }, + { 2750.0f, -340.0f, 0.0f }, +}; +Vec lbl_1_data_120[6] = { + { -700.0f, 0.0f, -1750.0f }, + { 700.0f, 0.0f, -1750.0f }, + { -700.0f, 0.0f, -1400.0f }, + { 700.0f, 0.0f, -1400.0f }, + { -700.0f, 0.0f, 700.0f }, + { 700.0f, 0.0f, 700.0f }, +}; + +void fn_1_9C90(ModelData *model, Mtx matrix) +{ + Mtx sp124; + Mtx spF4; + Mtx spC4; + Mtx sp94; + Mtx sp64; + Mtx sp34; + Vec sp28; + Vec sp1C; + Vec sp10; + float var_f31; + float var_f30; + s32 var_r31; + s32 var_r30; + + GXColor spC = { 0x32, 0x8C, 0xB4, 0x33 }; + var_r31 = 0; + if (lbl_1_bss_60[var_r31].unk_14 != 0) { + var_r31++; + } + lbl_1_bss_60[var_r31].unk_14 = 1; + sp1C.x = CenterM[var_r31].x; + sp1C.y = CenterM[var_r31].y + (CZoomM[var_r31] * sind(-CRotM[var_r31].x)); + sp1C.z = CenterM[var_r31].z + (CZoomM[var_r31] * cosd(-CRotM[var_r31].x)); + sp28.x = sp1C.x; + sp28.y = 0.0f; + sp28.z = sp1C.z - 450000.0f; + PSVECSubtract(&sp28, &sp1C, &sp10); + PSVECNormalize(&sp10, &sp10); + PSVECScale(&sp10, &sp10, 8000.0f); + PSVECAdd(&sp1C, &sp10, &sp28); + PSMTXTrans(spF4, sp28.x, sp28.y, sp28.z); + var_f31 = 1.0f; + if (fn_1_4030() == 0) { + var_f31 = 1.5f; + PSMTXScale(sp124, var_f31, 1.0f, 1.0f); + PSMTXConcat(spF4, sp124, spF4); + } + PSMTXConcat(Hu3DCameraMtx, spF4, spC4); + GXLoadPosMtxImm(spC4, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + HuSprTexLoad(lbl_1_bss_14C, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(lbl_1_bss_148, 0, 1, GX_CLAMP, GX_CLAMP, GX_LINEAR); + GXSetNumTexGens(2); + C_MTXLightPerspective(sp94, 70.0f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f); + PSMTXInverse(Hu3DCameraMtx, sp64); + PSMTXConcat(sp64, spC4, sp64); + PSMTXConcat(sp94, Hu3DCameraMtx, sp34); + PSMTXConcat(sp34, sp64, sp64); + GXLoadTexMtxImm(sp64, 0x21, GX_MTX3x4); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX3x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); + var_f30 = 0.00075f * var_f31; + PSMTXScale(spF4, var_f30, -0.005f, 0.00075f); + PSMTXTrans(sp124, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (1024.0f * var_f30), + 0.03f * -(lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24), 0.0f); + PSMTXConcat(spF4, sp124, spF4); + GXLoadTexMtxImm(spF4, 0x1E, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); + GXSetNumIndStages(1); + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, GX_TEXMAP0); + GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); + GXSetTevIndWarp(0, 0, GX_TRUE, GX_FALSE, 1); + PSMTXScale(spF4, 0.5f, 0.6f, 0.6f); + GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spF4, -1); + GXSetNumTevStages(1); + GXSetTevColor(GX_TEVREG0, spC); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A0, GX_CC_RASC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_RASA); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_SET); + GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_POS, lbl_1_data_C0, 0xC); + GXSetArray(GX_VA_CLR0, lbl_1_data_A8, 4); + GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, 8); + for (var_r30 = 0; var_r30 < 8; var_r30++) { + GXPosition1x8(var_r30); + GXColor1x8(var_r30 >> 1); + } + GXSetNumIndStages(0); + GXSetTevDirect(GX_TEVSTAGE0); +} + +GXColor lbl_1_data_168[2] = { { 0xFF, 0xFF, 0xFF, 0 }, { 0xFF, 0xFF, 0xFF, 0xFF } }; + +void fn_1_A3A8(ModelData *model, Mtx matrix) +{ + Mtx sp48; + Mtx sp18; + float var_f31; + float var_f30; + u8 *var_r30; + u8 *var_r29; + + GXColor sp14 = { 0xFF, 0xA5, 0x59, 0xB2 }; + GXColor sp10 = { 0x99, 0x72, 0x59, 0xB2 }; + s32 var_r31 = 0; + if (lbl_1_bss_60[var_r31].unk_0C != 0) { + var_r31++; + } + lbl_1_bss_60[var_r31].unk_0C = 1; + if (fn_1_4030() != 0) { + var_f30 = 1.0f; + var_f31 = fn_1_BB54(var_r31); + } + else { + var_f30 = 1.5f; + var_f31 = 0.0f; + } + if (lbl_1_bss_5C != 0) { + PSMTXTrans(sp18, var_f31, 0.0f, 300.0f + (lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24)); + GXSetTevColor(GX_TEVREG0, sp10); + } + else { + PSMTXTrans(sp18, var_f31, -150.0f, lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24); + GXSetTevColor(GX_TEVREG0, sp14); + } + PSMTXScale(sp48, var_f30, 1.0f, 1.0f); + PSMTXConcat(sp18, sp48, sp18); + PSMTXConcat(Hu3DCameraMtx, sp18, sp18); + GXLoadPosMtxImm(sp18, 0); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + HuSprTexLoad(lbl_1_bss_144, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(lbl_1_bss_140, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetNumTexGens(2); + PSMTXRotRad(sp18, 0x58, 1.5707964f); + var_f31 = 0.004f * var_f30; + PSMTXScale(sp48, var_f31, -0.004f, 0.004f); + PSMTXConcat(sp18, sp48, sp18); + PSMTXTrans(sp48, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (512.0f * var_f31), 0.0f, + (1.2499999f * (lbl_1_bss_60[var_r31].unk_1C % 400)) + (lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24)); + PSMTXConcat(sp18, sp48, sp18); + GXLoadTexMtxImm(sp18, 0x1E, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); + PSMTXRotRad(sp18, 0x58, 1.5707964f); + var_f31 = 0.004f * var_f30; + PSMTXScale(sp48, var_f31, -0.004f, 0.004f); + PSMTXConcat(sp18, sp48, sp18); + PSMTXTrans(sp48, (lbl_1_bss_60[var_r31].unk_1C % 300) / (150.0f * var_f31), 0.0f, lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24); + PSMTXConcat(sp18, sp48, sp18); + GXLoadTexMtxImm(sp18, 0x21, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); + GXSetNumTevStages(2); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR_NULL); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_CPREV); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_ZERO, GX_CA_TEXA, GX_CA_APREV, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_SET); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_POS, lbl_1_data_120, 0xC); + GXSetArray(GX_VA_CLR0, lbl_1_data_168, 4); + GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, 6); + GXPosition1x8(0); + GXColor1x8(0); + GXPosition1x8(1); + GXColor1x8(0); + GXPosition1x8(2); + GXColor1x8(1); + GXPosition1x8(3); + GXColor1x8(1); + GXPosition1x8(4); + GXColor1x8(1); + GXPosition1x8(5); + GXColor1x8(1); +} + +void fn_1_AB98(ModelData *model, Mtx matrix) +{ + s32 var_r31 = 0; + if (lbl_1_bss_60[var_r31].unk_08 != 0) { + var_r31++; + } + if ((fn_1_4030() == 0) && (var_r31 == 0)) { + GXSetTexCopySrc(0, 0, 0x280, 0x1E0); + GXSetTexCopyDst(0x280, 0x1E0, GX_TF_RGB5A3, 0); + } + else { + GXSetTexCopySrc(var_r31 * 0x140, 0, 0x140, 0x1E0); + GXSetTexCopyDst(0x140, 0x1E0, GX_TF_RGB5A3, 0); + } + GXCopyTex(lbl_1_bss_60[var_r31].unk_6C, 0); + GXPixModeSync(); + lbl_1_bss_60[var_r31].unk_08 = 1; +} + +void fn_1_AC84(ModelData *model, Mtx matrix) +{ + s32 var_r31 = 0; + if (lbl_1_bss_60[var_r31].unk_18 != 0) { + var_r31++; + } + lbl_1_bss_60[var_r31].unk_18 = 1; + fn_1_86B4(lbl_1_bss_54, &lbl_1_bss_60[var_r31]); +} + +void fn_1_AD04(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + s32 var_r29; + + if ((particle->unk_00 == 0) || (lbl_1_bss_5C != 0)) { + particle->unk_00++; + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + var_r31->unk00 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + return; + } + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + PSVECScale(&var_r31->unk08, &var_r31->unk08, 0.97f); + if (var_r31->unk00_s16 < 24.0f) { + var_r31->unk40.a = 0.9f * var_r31->unk40.a; + } + var_r31->unk2C += 1.5f; + if (--var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + } + } + DCStoreRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_AEE0(s32 arg0, Vec *arg1, float arg8, float arg9) +{ + Vec sp10; + float var_f31; + float var_f30; + float var_f28; + HsfanimStruct01 *var_r31; + ParticleData *var_r30; + s32 var_r29; + M430DllWork *var_r28; + u32 var_r27; + void *var_r26; + + var_r26 = lbl_1_bss_58->data; + var_r28 = var_r26; + var_r30 = Hu3DData[var_r28[arg0].unk_10].unk_120; + if (var_r30->unk_00 != 0) { + var_r31 = var_r30->unk_48; + if (!(frandmod(0x3E8) > (1200.0f * arg9))) { + var_r27 = 1; + var_f28 = 30.0f; + for (var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 == 0) { + var_r31->unk00 = 60.0f * (0.5f + (0.0005f * frandmod(0x3E8))); + var_f30 = (0.002f * frandmod(0x3E8)) - 1.0f; + var_f30 = arg8 + (var_f30 * var_f28); + sp10.x = sind(var_f30); + sp10.y = 0.0f; + sp10.z = cosd(var_f30); + var_r31->unk34 = *arg1; + var_r31->unk34.y = -20.0f; + var_f31 = 5.0f + arg9 * (1.6666667f * (2.0f * (0.001f * frandmod(0x3E8)))); + var_r31->unk08.x = sp10.x * var_f31; + var_r31->unk08.y = -0.2f * var_f31; + var_r31->unk08.z = sp10.z * var_f31; + var_f31 = 0.001f * frandmod(0x3E8); + var_f31 += (1.0f - var_f31) * (0.5f * arg9); + var_r31->unk30 = frandmod(0x168); + var_r31->unk2C = 80.0f + frandmod(0x46); + var_r31->unk40.a = frandmod(0x64) + 0x64; + var_r31->unk40.r = 150.0f + (95.0f * var_f31); + var_r31->unk40.g = 160.0f + (80.0f * var_f31); + var_r31->unk40.b = 166.0f + (60.0f * var_f31); + if (--var_r27 == 0) { + break; + } + } + } + } + } +} + +void fn_1_B394(ModelData *model, ParticleData *var_r30, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + s32 var_r29; + + if ((var_r30->unk_00 == 0) || (lbl_1_bss_5C != 0)) { + var_r30->unk_00++; + for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { + var_r31->unk00_s16 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + return; + } + for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + var_r31->unk00_s16--; + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + var_r31->unk2C += 0.5f; + if (var_r31->unk00_s16 < 30.0) { + var_r31->unk40.a = 0.98f * var_r31->unk40.a; + } + if ((var_r31->unk34.y < -40.0f) || (var_r31->unk00_s16 == 0)) { + var_r31->unk00_s16 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + } + } + DCStoreRange(var_r30->unk_48, var_r30->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_B570(s32 arg0, Vec *arg1, float arg8, float arg9, Vec *arg2) +{ + Vec sp28; + Vec sp1C; + s32 sp18; + float var_f31; + float var_f30; + float var_f28; + HsfanimStruct01 *var_r31; + ParticleData *var_r30; + s32 var_r29; + M430DllWork *var_r28; + u32 var_r27; + M430DllWork *var_r26; + + var_r26 = lbl_1_bss_58->data; + { + float sp14[2] = { -100.0f, 100.0f }; + var_r28 = var_r26; + var_r30 = Hu3DData[var_r28[arg0].unk_14].unk_120; + if (var_r30->unk_00 != 0) { + var_r31 = var_r30->unk_48; + if (!(frandmod(0x3E8) > (1000.0f * arg9))) { + var_r27 = 2; + var_f28 = 40.0f; + PSVECScale(arg2, &sp1C, 0.2f); + sp1C.x = 0.0f; + for (var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 60.0f * (0.5f + (0.0005f * frandmod(0x3E8))); + var_f30 = (0.002f * frandmod(0x3E8)) - 1.0f; + var_f30 = arg8 + sp14[var_r29 & 1] + (var_f30 * var_f28); + sp28.x = sind(var_f30); + sp28.y = 0.0f; + sp28.z = cosd(var_f30); + var_r31->unk34 = *arg1; + var_r31->unk34.x = var_r31->unk34.x + ((0.05f * frandmod(0x3E8)) - 25.0f); + var_r31->unk34.z = var_r31->unk34.z + ((0.05f * frandmod(0x3E8)) - 25.0f); + var_r31->unk34.y = 40.0f; + var_f31 = 1.6666667f + (arg9 * (0.0016666667f * frandmod(0x3E8))); + var_r31->unk08.x = sp28.x * var_f31; + var_r31->unk08.z = sp28.z * var_f31; + var_r31->unk08.y = 0.0f; + PSVECAdd(&var_r31->unk08, &sp1C, &var_r31->unk08); + var_f31 = 0.001f * frandmod(0x3E8); + var_f31 += (1.0f - var_f31) * (0.3f * arg9); + var_r31->unk30 = frandmod(0x168); + var_r31->unk2C = 60.0f + frandmod(0x50); + var_r31->unk40.a = (60.0f * arg9) + frandmod(0x50); + var_r31->unk40.r = 150.0f + (95.0f * var_f31); + var_r31->unk40.g = 160.0f + (80.0f * var_f31); + var_r31->unk40.b = 166.0f + (60.0f * var_f31); + if (--var_r27 == 0) { + break; + } + } + } + } + } + } +} + +float fn_1_BB54(u32 arg0) +{ + float sp8[2] = { -450.0f, 450.0f }; + + return sp8[arg0 & 1]; +} + +float fn_1_BB88(void) +{ + return 0.0f; +} + +void fn_1_BB98(u32 arg0) +{ + lbl_1_bss_5C = 0; + if (arg0 != 0) { + lbl_1_bss_5C = 1; + } +} From d6f065e127fa5737e9ec32299c5702770e3f4aae Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Fri, 10 Jan 2025 10:00:49 -0600 Subject: [PATCH 109/178] Complete mstory2 board_clear and board_entrance (#517) * Match first mstory2 TU * Complete mstory2 board_clear and board_entrance --- config/GMPE01_00/rels/mstory2Dll/symbols.txt | 2 +- configure.py | 4 +- include/REL/mstory2Dll.h | 7 +- src/REL/mstory2Dll/board_clear.c | 619 ++++++++++++++++++ src/REL/mstory2Dll/board_entrance.c | 644 +++++++++++++++++++ 5 files changed, 1272 insertions(+), 4 deletions(-) create mode 100644 src/REL/mstory2Dll/board_clear.c create mode 100644 src/REL/mstory2Dll/board_entrance.c diff --git a/config/GMPE01_00/rels/mstory2Dll/symbols.txt b/config/GMPE01_00/rels/mstory2Dll/symbols.txt index 2043c77f..351e9c5d 100644 --- a/config/GMPE01_00/rels/mstory2Dll/symbols.txt +++ b/config/GMPE01_00/rels/mstory2Dll/symbols.txt @@ -573,7 +573,7 @@ lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string -lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 +lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 data:float lbl_1_data_698 = .data:0x00000698; // type:object size:0x1C lbl_1_data_6B4 = .data:0x000006B4; // type:object size:0x20 lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string diff --git a/configure.py b/configure.py index ce78fe3b..9c510762 100644 --- a/configure.py +++ b/configure.py @@ -1371,8 +1371,8 @@ config.libs = [ "mstory2Dll", objects={ Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/main.c"), - Object(NonMatching, "REL/mstory2Dll/board_entrance.c"), - Object(NonMatching, "REL/mstory2Dll/board_clear.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_entrance.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_clear.c"), Object(NonMatching, "REL/mstory2Dll/board_miss.c"), Object(NonMatching, "REL/mstory2Dll/mg_clear.c"), Object(NonMatching, "REL/mstory2Dll/mg_miss.c"), diff --git a/include/REL/mstory2Dll.h b/include/REL/mstory2Dll.h index 839c576d..b170640e 100644 --- a/include/REL/mstory2Dll.h +++ b/include/REL/mstory2Dll.h @@ -39,10 +39,11 @@ typedef struct { /* 0x08 */ s32 unk08; /* 0x0C */ s32 unk0C; /* 0x10 */ char unk10[0x18]; -} StructBss19C; // Size 0x28 +} StructBss16C; // Size 0x28 // main.c float fn_1_864(float arg0, float arg1, float arg2, float arg3); +float fn_1_88C(float arg0, float arg1, float arg2); float fn_1_8AC(float arg0, float arg1, float arg2, float arg3); float fn_1_984(float arg0, float arg1, float arg2, float arg3); float fn_1_B08(float arg0, float arg1, float arg2, float arg3); @@ -63,6 +64,7 @@ void fn_1_2828(Process* arg0, void (*arg1)(void)); void fn_1_2948(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5); void fn_1_2D00(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5); void fn_1_357C(StructFn357C* arg0, s32 arg1); +void fn_1_42A0(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3, float arg4); s32 fn_1_3668(s32 arg0); void fn_1_3754(void); void fn_1_3854(StructBss24* arg0); @@ -72,6 +74,7 @@ void fn_1_6004(StructBss24* arg0, StructBss24* arg1, float arg2, float arg3, flo int fn_1_66CC(int modelId); void fn_1_6704(omObjData* arg0); +void fn_1_67D8(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_6A90(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_6D78(s32 arg0, s32 arg1, s32 arg2, s32 arg3); s32 fn_1_7064(s32 arg0, s32 arg1); @@ -100,6 +103,8 @@ void fn_1_188F0(Process* arg0, s32 arg1); // ending.c void fn_1_1B90C(Process* arg0); +extern s32 lbl_1_bss_88[16]; +extern s32 lbl_1_bss_78[4]; extern s32 lbl_1_bss_68[]; extern StructBss24 lbl_1_bss_24; extern s32 lbl_1_data_0[][4]; diff --git a/src/REL/mstory2Dll/board_clear.c b/src/REL/mstory2Dll/board_clear.c new file mode 100644 index 00000000..206854e1 --- /dev/null +++ b/src/REL/mstory2Dll/board_clear.c @@ -0,0 +1,619 @@ +#include "REL/mstory2Dll.h" +#include "game/armem.h" +#include "game/audio.h" +#include "game/board/main.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "game/pad.h" +#include "game/objsub.h" + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ char unk18[0x18]; + /* 0x030 */ StructFn357C unk30[4]; + /* 0x100 */ float unk100; +} StructBss3DC; // Size 0x104 + +StructBss3DC lbl_1_bss_3DC; +StructBss16C lbl_1_bss_3B4; +StructBss16C lbl_1_bss_38C; +StructBss16C lbl_1_bss_364; +StructBss16C lbl_1_bss_33C; +StructBss16C lbl_1_bss_29C[4]; +Process *lbl_1_bss_298; + +void fn_1_C4C0(void); +void fn_1_C858(void); +void fn_1_CCCC(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_CD78(void); +void fn_1_D224(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_D2D0(omObjData* arg0, StructBss16C* arg1); +void fn_1_D478(void); +void fn_1_D764(int arg0); +void fn_1_DB58(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_DC54(omObjData* arg0, StructBss16C* arg1); +void fn_1_DDC4(void); +void fn_1_E1B8(void); +void fn_1_E244(void); +void fn_1_E334(void); + +void fn_1_B37C(omObjData* arg0, StructBss16C* arg1) +{ + fn_1_BE8(30); + fn_1_DB58(4, -1, 15, 1, 0); + fn_1_D224(4, -1, 15, 1, 0); + arg1->unk04 = NULL; +} + +void fn_1_B3E4(Process* arg0, s32 arg1) +{ + int i; + lbl_1_bss_298 = arg0; + lbl_1_bss_3DC.unk0C = arg1; + fn_1_C30(); + fn_1_3668(255); + fn_1_2828(lbl_1_bss_298, fn_1_E1B8); + fn_1_3754(); + fn_1_D764(arg1); + HuPrcChildCreate(fn_1_C858, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_CD78, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_D478, 100, 8192, 0, HuPrcCurrentGet()); + for(i=0; i<4; i++) { + HuPrcChildCreate(fn_1_DDC4, 100, 8192, 0, HuPrcCurrentGet()); + } + HuPrcChildCreate(fn_1_C4C0, 100, 8192, 0, HuPrcCurrentGet()); + +} + +void fn_1_B518(omObjData *object) +{ + if(object->work[2]) { + object->work[2]--; + return; + } + if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + fn_1_1DFC(object, 1, object->work[1], 15, 1); + object->work[0] = object->work[1] = object->work[2] = 0; + } +} + +void fn_1_B5A4(void) +{ + int posX = 16; + int posY = 40; + GXColor winColor = { 0, 0, 128, 128 }; + int i; + while(1) { + fn_1_BC8(); + printWin(posX, posY, 220, 160, &winColor); + if(lbl_1_bss_3B4.unk04 == NULL) { + print8(posX, posY, 1, "PROC_MAIN -> FALSE"); + } else { + print8(posX, posY, 1, "PROC_MAIN -> TRUE"); + } + if(lbl_1_bss_38C.unk04 == NULL) { + print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); + } else { + print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + } + if(lbl_1_bss_364.unk04 == NULL) { + print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); + } else { + print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + } + if(lbl_1_bss_33C.unk04 == NULL) { + print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); + } else { + print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + } + for(i=0; i<4; i++) { + if(lbl_1_bss_29C[i].unk04 == NULL) { + print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> FALSE", i); + } else { + print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> TRUE", i); + } + } + print8(posX, posY+90, 1, "P:%d W:%d", lbl_1_bss_3DC.unk00, lbl_1_bss_3DC.unk0C); + print8(posX, posY+110, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for(i=0; i<4; i++) { + print8(posX, posY+120+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_3DC.unk30[i].unk00, lbl_1_bss_3DC.unk30[i].unk04, lbl_1_bss_3DC.unk30[i].unk08, lbl_1_bss_3DC.unk30[i].unk0C, lbl_1_bss_3DC.unk30[i].unk14, lbl_1_bss_3DC.unk30[i].unk10); + } + + } +} + +void fn_1_B984(void) +{ + lbl_1_bss_78[0] = HuAudSeqPlay(51); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + fn_1_BE8(60); +} + +void fn_1_B9E0(void) +{ + lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk04 = (void *)fn_1_DC54; + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_E244); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk04 == NULL) { + break; + } + } + while(1) { + fn_1_BC8(); + if(lbl_1_bss_33C.unk04 == NULL) { + break; + } + } + fn_1_BE8(30); +} + +void fn_1_BA90(void) +{ + int i; + lbl_1_bss_3DC.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_3DC.unk0C); + HuAudFXPlay(lbl_1_data_0[5][0]); + fn_1_D224(3, -1, 15, 1, 0); + fn_1_1D4C(lbl_1_bss_3DC.unk04, lbl_1_bss_3DC.unk30[lbl_1_bss_3DC.unk00].unk10, 0); + fn_1_1D18(lbl_1_bss_3DC.unk04, 0x1F000C); + fn_1_1AFC(lbl_1_bss_3DC.unk04, -1); + fn_1_1D18(lbl_1_bss_3DC.unk04, 0x250004); + fn_1_D224(1, -1, 15, 1, 0); + fn_1_1A94(lbl_1_bss_3DC.unk04); + HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); + fn_1_BE8(60); + for(i=0; i<4; i++) { + if(lbl_1_bss_3DC.unk30[i].unk00 != lbl_1_bss_3DC.unk30[lbl_1_bss_3DC.unk00].unk00) { + Hu3DModelAttrSet(lbl_1_bss_29C[i].unk00->model[1], 1); + } + Hu3DModelAttrSet(lbl_1_bss_29C[i].unk00->model[2], 1); + } + Hu3DModelAttrReset(lbl_1_bss_364.unk00->model[1], 1); + Hu3DModelAttrReset(lbl_1_bss_38C.unk00->model[5], 1); + Hu3DModelAttrReset(lbl_1_bss_38C.unk00->model[6], 1); + lbl_1_bss_3DC.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_3DC.unk0C); + HuAudFXPlay(lbl_1_data_0[6][0]); + lbl_1_bss_78[1] = HuAudSeqPlay(55); + lbl_1_bss_33C.unk04 = (void *)fn_1_B37C; + fn_1_1D18(lbl_1_bss_3DC.unk04, 0x1F000D); + fn_1_1AFC(lbl_1_bss_3DC.unk04, -1); + fn_1_1D18(lbl_1_bss_3DC.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_3DC.unk04); + fn_1_1DFC(lbl_1_bss_38C.unk00, 2, 3, 0, 0); + fn_1_BE8(60); + lbl_1_bss_33C.unk04 = (void *)fn_1_D2D0; + fn_1_DB58(5, -1, 15, 0, 0); + fn_1_D224(5, 1, 0, 0, 1); + fn_1_2264(lbl_1_bss_38C.unk00, 2, 3, 0); +} + +void fn_1_BDF0(void) +{ + lbl_1_bss_3DC.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_3DC.unk0C); + HuAudFXPlay(lbl_1_data_0[6][1]); + fn_1_CCCC(3, -1, 15, 1, 0); + fn_1_1D18(lbl_1_bss_3DC.unk04, 0x1F000E); + fn_1_1AFC(lbl_1_bss_3DC.unk04, -1); + fn_1_1D18(lbl_1_bss_3DC.unk04, 0x250004); + fn_1_CCCC(1, -1, 15, 1, 0); + fn_1_1A94(lbl_1_bss_3DC.unk04); + fn_1_CCCC(2, -1, 15, 0, 0); + fn_1_BE8(45); + HuAudFXPlay(lbl_1_data_0[6][0]); + fn_1_BE8(15); + HuAudSeqFadeOut(lbl_1_bss_78[1], 3000); + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_E334); + fn_1_BE8(30); + fn_1_BE8(45); + fn_1_BE8(75); +} + +void fn_1_BF48(void) +{ + int i; + omOvlHisData *his; + int charNo; + int padNo; + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while(1) { + fn_1_BC8(); + if(!WipeStatGet()) { + break; + } + } + CharModelKill(-1); + charNo = lbl_1_bss_3DC.unk30[lbl_1_bss_3DC.unk00].unk10; + padNo = lbl_1_bss_3DC.unk30[lbl_1_bss_3DC.unk00].unk14; + GWPlayerCfg[lbl_1_bss_3DC.unk00].character = GWPlayerCfg[0].character; + GWPlayerCfg[lbl_1_bss_3DC.unk00].pad_idx = GWPlayerCfg[0].pad_idx; + GWPlayerCfg[lbl_1_bss_3DC.unk00].group = GWPlayerCfg[0].group; + GWPlayerCfg[lbl_1_bss_3DC.unk00].iscom = GWPlayerCfg[0].iscom; + GWPlayerCfg[0].character = charNo; + GWPlayerCfg[0].pad_idx = padNo; + GWPlayerCfg[0].group = 0; + GWPlayerCfg[0].iscom = FALSE; + for(i=0; i<4; i++) { + GWPlayer[i].character = GWPlayerCfg[i].character; + GWPlayer[i].port = GWPlayerCfg[i].pad_idx; + GWPlayer[i].com = GWPlayerCfg[i].iscom; + GWPlayer[i].team = GWPlayerCfg[i].group; + } + GWPlayerCfg[1].character = 8; + for(i=1; i<4; i++) { + GWPlayerCfg[i].iscom = GWPlayerCfg[i].group = 1; + } + his = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY2, 3, his->stat); + HuAudSeqAllFadeOut(1000); + HuAudSStreamAllFadeOut(1000); + GWSystem.mg_type = -1; + GWMGAvailSet(450); + GWSystem.mg_next = 450-401; + omOvlCallEx(OVL_M450, 1, 0, 0); + while(1) { + fn_1_BC8(); + } +} + +void fn_1_C270(omObjData* arg0, StructBss16C* arg1) +{ + int temp = 0; + fn_1_B984(); + fn_1_B9E0(); + fn_1_BA90(); + fn_1_BDF0(); + fn_1_BF48(); + arg1->unk04 = NULL; +} + +void fn_1_C4C0(void) +{ + omObjData *obj; + lbl_1_bss_3B4.unk00 = obj = omAddObjEx(lbl_1_bss_298, 256, 16, 16, -1, NULL); + lbl_1_bss_3B4.unk04 = (void *)fn_1_C270; + lbl_1_bss_3B4.unk00->data = &lbl_1_bss_3B4; + while(1) { + fn_1_BC8(); + if(lbl_1_bss_3B4.unk04 != NULL) { + lbl_1_bss_3B4.unk04(obj, &lbl_1_bss_3B4); + } + } +} + +void fn_1_C574(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660052); + object->motion[1] = Hu3DMotionIDGet(object->model[1]); + Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); + fn_1_1DFC(object, 1, 1, 0, 1); + object->model[2] = Hu3DModelCreateFile(0x660053); + object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); + object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + fn_1_1DFC(object, 2, 2, 0, 2); + object->model[5] = Hu3DModelCreateFile(0x660059); + object->motion[5] = Hu3DMotionIDGet(object->model[5]); + Hu3DModelPosSet(object->model[5], 0, 80, 460); + Hu3DModelAttrSet(object->model[5], 1); + Hu3DModelShadowSet(object->model[5]); + fn_1_1DFC(object, 5, 5, 0, 2); + object->model[6] = Hu3DModelCreateFile(0x66005A); + object->motion[6] = Hu3DMotionIDGet(object->model[6]); + Hu3DModelHookSet(object->model[5], "koopasgbox_fix-effect_fook2", object->model[6]); + Hu3DModelAttrSet(object->model[6], 1); + fn_1_1DFC(object, 6, 6, 0, 2); +} + +void fn_1_C79C(omObjData* arg0, StructBss16C* arg1) +{ + Hu3DData[arg0->model[5]].pos.y = fn_1_B08(80, 90, arg1->unk08++, 360); + if(arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_C858(void) +{ + omObjData *obj; + lbl_1_bss_38C.unk00 = obj = omAddObjEx(lbl_1_bss_298, 256, 16, 16, -1, NULL); + lbl_1_bss_38C.unk04 = (void *)fn_1_C79C; + lbl_1_bss_38C.unk00->data = &lbl_1_bss_38C; + fn_1_C574(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_38C.unk04 != NULL) { + lbl_1_bss_38C.unk04(obj, &lbl_1_bss_38C); + } + } +} + +void fn_1_CB0C(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660062); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660066); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660069); + Hu3DModelPosSet(object->model[1], 0, 0, 150); + Hu3DModelRotSet(object->model[1], 0, 0, 0); + Hu3DModelScaleSet(object->model[1], 1.25f, 1.25f, 1.25f); + Hu3DModelScaleSet(object->model[1], 1.6f, 1.6f, 1.6f); + Hu3DModelAttrSet(object->model[1], 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); +} + +void fn_1_CCCC(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_364.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_364.unk00->work[0] = arg4; + lbl_1_bss_364.unk00->work[1] = arg1; + lbl_1_bss_364.unk00->work[2] = arg2+1; +} + +void fn_1_CD78(void) +{ + omObjData *obj; + lbl_1_bss_364.unk00 = obj = omAddObjEx(lbl_1_bss_298, 256, 16, 16, -1, NULL); + lbl_1_bss_364.unk04 = NULL; + lbl_1_bss_364.unk00->data = &lbl_1_bss_38C; + fn_1_CB0C(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_364.unk04 != NULL) { + lbl_1_bss_364.unk04(obj, &lbl_1_bss_364); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_D030(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x66007D); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660080); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660081); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660084); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660085); + Hu3DModelPosSet(object->model[1], -300, 0, 890); + Hu3DModelRotSet(object->model[1], 0, 30, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); + CharModelEffectNpcInit(object->model[1], object->motion[2], 1, 13); +} + +void fn_1_D224(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_33C.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_33C.unk00->work[0] = arg4; + lbl_1_bss_33C.unk00->work[1] = arg1; + lbl_1_bss_33C.unk00->work[2] = arg2+1; +} + +void fn_1_D2D0(omObjData* arg0, StructBss16C* arg1) +{ + int i; + for(i=0; i<15; i++) { + fn_1_BC8(); + Hu3DData[arg0->model[1]].rot.y = fn_1_864(0, 135, i, 15); + } + arg1->unk04 = NULL; +} + +void fn_1_D394(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -120, 0, 800 }; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, 60, 60, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_D478(void) +{ + omObjData *obj; + lbl_1_bss_33C.unk00 = obj = omAddObjEx(lbl_1_bss_298, 256, 16, 16, -1, NULL); + lbl_1_bss_33C.unk04 = NULL; + lbl_1_bss_33C.unk00->data = &lbl_1_bss_33C; + fn_1_D030(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_33C.unk04 != NULL) { + lbl_1_bss_33C.unk04(obj, &lbl_1_bss_33C); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_D764(int arg0) +{ + int i; + int order[4]; + order[0] = 0; + for(i=1; i<4; i++) { + order[i] = order[i-1]+1; + if(order[i] >= 4) { + order[i] = 0; + } + if(arg0 == order[i]) { + lbl_1_bss_3DC.unk00 = i; + } + } + for(i=0; i<4; i++) { + fn_1_357C(&lbl_1_bss_3DC.unk30[i], order[i]); + } + for(i=0; i<4; i++) { + lbl_1_bss_3DC.unk30[i].unk18 = GWPlayer[order[i]].rank+1; + } +} + +Vec lbl_1_data_668[4] = { + { -300, 0, 460 }, + { -100, -30, 460 }, + { 100, -60, 460 }, + { 300, -90, 460 }, +}; + +void fn_1_D898(omObjData *object, int player) +{ + int playerNo = player; + int charNo = lbl_1_bss_3DC.unk30[playerNo].unk10; + object->model[1] = CharModelCreate(charNo, 4); + object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); + object->motion[2] = CharModelMotionCreate(charNo, 0x5F0003); + object->motion[3] = CharModelMotionCreate(charNo, 0x5F0005); + object->motion[4] = CharModelMotionCreate(charNo, 0x5F001A); + object->motion[5] = CharModelMotionCreate(charNo, 0x5F006D); + CharModelMotionDataClose(charNo); + Hu3DModelPosSet(object->model[1], lbl_1_data_668[playerNo].x, lbl_1_data_668[lbl_1_bss_3DC.unk30[playerNo].unk18-1].y+90, lbl_1_data_668[playerNo].z); + Hu3DModelRotSet(object->model[1], 0, 0, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); + object->model[2] = Hu3DModelCreateFile(0x660056); + Hu3DModelPosSet(object->model[2], lbl_1_data_668[playerNo].x, lbl_1_data_668[lbl_1_bss_3DC.unk30[playerNo].unk18-1].y, lbl_1_data_668[playerNo].z); + if(lbl_1_bss_3DC.unk30[playerNo].unk18 == 4) { + Hu3DModelAttrSet(object->model[2], 1); + } + Hu3DModelScaleSet(object->model[2], 1.5, 1, 1.5); + Hu3DModelShadowMapSet(object->model[2]); +} + +void fn_1_DB58(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00->work[0] = arg4; + lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00->work[1] = arg1; + lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00->work[2] = arg2+1; +} + +void fn_1_DC54(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { 120, 0, 800 }; + fn_1_2948(arg0, 1, pos, -1, 30, 10); + lbl_1_bss_33C.unk04 = (void *)fn_1_D394; + fn_1_1DFC(lbl_1_bss_38C.unk00, 2, 2, 0, 0); + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, -60, 30, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_DDC4(void) +{ + omObjData *obj; + int playerNo = lbl_1_bss_3DC.unk10++; + lbl_1_bss_29C[playerNo].unk00 = obj = omAddObjEx(lbl_1_bss_298, 256, 16, 16, -1, NULL); + lbl_1_bss_29C[playerNo].unk04 = NULL; + lbl_1_bss_29C[playerNo].unk00->data = &lbl_1_bss_29C[0]; + fn_1_D898(obj, playerNo); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_29C[playerNo].unk04 != NULL) { + lbl_1_bss_29C[playerNo].unk04(obj, &lbl_1_bss_29C[playerNo]); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_E1B8(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk08.x = 0; + work->unk08.y = 170; + work->unk08.z = -20; + work->unk20.x = -5; + work->unk20.y = 0; + work->unk20.z = 0; + work->unk38 = 1700; +} + +void fn_1_E244(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + temp.unk08.x = 0; + temp.unk08.y = 125; + temp.unk08.z = -20; + temp.unk20.x = -5; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 1750; + fn_1_4FEC(work, &temp, work->unk40++, 60, 30); +} + +void fn_1_E334(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + if(work->unk40 == 50) { + fn_1_1DFC(lbl_1_bss_38C.unk00, 5, 5, 0, 0); + fn_1_1DFC(lbl_1_bss_38C.unk00, 6, 6, 0, 0); + HuAudFXPlay(161); + } + temp.unk08.x = 0; + temp.unk08.y = 130; + temp.unk08.z = 460; + temp.unk20.x = 0; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 150; + fn_1_4FEC(work, &temp, work->unk40, 180, 10); + if(work->unk40++ >= 90) { + if(work->unk40 == 91) { + lbl_1_bss_88[0] = HuAudFXPlay(32); + } + work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40-90, 90); + Hu3DData[lbl_1_bss_38C.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40-90, 90); + } +} \ No newline at end of file diff --git a/src/REL/mstory2Dll/board_entrance.c b/src/REL/mstory2Dll/board_entrance.c new file mode 100644 index 00000000..d1ac7abb --- /dev/null +++ b/src/REL/mstory2Dll/board_entrance.c @@ -0,0 +1,644 @@ +#include "REL/mstory2Dll.h" +#include "game/armem.h" +#include "game/audio.h" +#include "game/board/main.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "game/pad.h" +#include "game/objsub.h" + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ char unk18[0x18]; + /* 0x030 */ StructFn357C unk30[4]; + /* 0x100 */ float unk100; +} StructBss194; // Size 0x104 + +StructBss194 lbl_1_bss_194; +StructBss16C lbl_1_bss_16C; +StructBss16C lbl_1_bss_144; +StructBss16C lbl_1_bss_11C; +StructBss16C lbl_1_bss_F4; +StructBss16C lbl_1_bss_CC; +Process *lbl_1_bss_C8; +s32 lbl_1_bss_88[16]; +s32 lbl_1_bss_78[4]; + +u32 lbl_1_data_3A0[11] = { + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000, + 0x00250000 +}; + +s32 lbl_1_data_3CC[2][2] = { + 20, + 70, + 1, + 1 +}; + +s32 lbl_1_data_3DC = -1; +s32 lbl_1_data_3E0[2] = { -1, -1 }; + +void fn_1_9768(void); +void fn_1_9A10(void); +void fn_1_9BD4(s32 arg0); +void fn_1_9ECC(omObjData* arg0, StructBss16C* arg1); +void fn_1_9FDC(void); +void fn_1_A4A8(omObjData* arg0, StructBss16C* arg1); +void fn_1_A58C(void); +void fn_1_AB10(omObjData* arg0, StructBss16C* arg1); + +void fn_1_AE5C(void); +void fn_1_B1C0(void); +void fn_1_B24C(void); + +void fn_1_7DB0(void) +{ + int i; + while(1) { + do { + HuPrcVSleep(); + } while(lbl_1_data_3DC == -1 || lbl_1_data_3E0[0] == -1 || lbl_1_data_3E0[1] == -1 || lbl_1_data_3E0[0] != Hu3DMotionIDGet(lbl_1_data_3DC)); + for(i=0; i<2; i++) { + if(lbl_1_data_3CC[1][i] != -1) { + if(Hu3DMotionTimeGet(lbl_1_data_3DC) >= lbl_1_data_3CC[0][i]) { + OSReport("KE-System TIME:%d\n", lbl_1_data_3CC[0][i]); + HuAudFXPlay(81); + lbl_1_data_3CC[1][i] = -1; + } + } + } + if(Hu3DMotionTimeGet(lbl_1_data_3DC) <= 10) { + for(i=0; i<2; i++) { + lbl_1_data_3CC[1][i] = 1; + } + } + + } + +} + +void fn_1_7F54(Process* arg0, s32 arg1) +{ + lbl_1_bss_C8 = arg0; + lbl_1_bss_194.unk0C = arg1; + fn_1_C30(); + fn_1_3668(255); + fn_1_2828(lbl_1_bss_C8, fn_1_B1C0); + fn_1_3754(); + fn_1_9BD4(arg1); + HuPrcChildCreate(fn_1_9FDC, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_9A10, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_A58C, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_AE5C, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_9768, 100, 8192, 0, HuPrcCurrentGet()); +} + +void fn_1_806C(omObjData *object) +{ + if(object->work[2]) { + object->work[2]--; + return; + } + if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + fn_1_1DFC(object, 1, object->work[1], 15, 1); + object->work[0] = object->work[1] = object->work[2] = 0; + } +} + +void fn_1_80F8(void) +{ + int posX = 16; + int posY = 40; + GXColor winColor = { 0, 0, 128, 128 }; + int i; + while(1) { + fn_1_BC8(); + fontcolor = FONT_COLOR_WHITE; + printWin(posX, posY, 220, 130, &winColor); + if(lbl_1_bss_16C.unk04 == NULL) { + print8(posX, posY, 1, "PROC_MAIN -> FALSE"); + } else { + print8(posX, posY, 1, "PROC_MAIN -> TRUE"); + } + if(lbl_1_bss_144.unk04 == NULL) { + print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); + } else { + print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + } + if(lbl_1_bss_11C.unk04 == NULL) { + print8(posX, posY+20, 1, "PROC_PLAYER -> FALSE"); + } else { + print8(posX, posY+20, 1, "PROC_PLAYER -> TRUE"); + } + if(lbl_1_bss_F4.unk04 == NULL) { + print8(posX, posY+30, 1, "PROC_SUB -> FALSE"); + } else { + print8(posX, posY+30, 1, "PROC_SUB -> TRUE"); + } + if(lbl_1_bss_CC.unk04 == NULL) { + print8(posX, posY+40, 1, "PROC_KOOPA -> FALSE"); + } else { + print8(posX, posY+40, 1, "PROC_KOOPA -> TRUE"); + } + + print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_194.unk00, lbl_1_bss_194.unk0C); + print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for(i=0; i<4; i++) { + print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_194.unk30[i].unk00, lbl_1_bss_194.unk30[i].unk04, lbl_1_bss_194.unk30[i].unk08, lbl_1_bss_194.unk30[i].unk0C, lbl_1_bss_194.unk30[i].unk14, lbl_1_bss_194.unk30[i].unk10); + } + if(HuPadBtnDown[0] & PAD_BUTTON_X) { + fn_1_7384(lbl_1_bss_11C.unk00->model[1], lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10, 30, 120, TRUE); + } else if(HuPadBtnDown[0] & PAD_BUTTON_Y) { + fn_1_7384(lbl_1_bss_11C.unk00->model[1], lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10, 30, 120, FALSE); + } + } +} + +void fn_1_8580(void) +{ + lbl_1_bss_78[0] = HuAudSeqPlay(51); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + fn_1_BE8(60); +} + +void fn_1_85DC(void) +{ + fn_1_1DFC(lbl_1_bss_144.unk00, 2, 3, 0, 0); + fn_1_2264(lbl_1_bss_144.unk00, 2, 3, 0); + lbl_1_bss_11C.unk04 = (void *)fn_1_9ECC; + lbl_1_bss_F4.unk04 = (void *)fn_1_A4A8; + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_B24C); + fn_1_BE8(30); + fn_1_1DFC(lbl_1_bss_144.unk00, 2, 2, 0, 0); + do { + fn_1_BC8(); + } while(lbl_1_bss_11C.unk04 != NULL); + do { + fn_1_BC8(); + } while(lbl_1_bss_F4.unk04 != NULL); + lbl_1_bss_194.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_194.unk0C); + HuAudFXPlay(lbl_1_data_0[0][2]); + fn_1_1DFC(lbl_1_bss_F4.unk00, 1, 3, 5, 1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x1F0000); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x1F0001); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x250004); + fn_1_1DFC(lbl_1_bss_F4.unk00, 1, 1, 5, 1); + fn_1_1A94(lbl_1_bss_194.unk04); + fn_1_BE8(15); +} + +void fn_1_87D4(void) +{ + int i; + float speed; + HuAudSeqFadeOut(lbl_1_bss_78[0], 500); + HuAudFXPlay(153); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 2, 0, 0); + fn_1_BC8(); + Hu3DMotionTimeSet(lbl_1_bss_CC.unk00->model[1], 100); + Hu3DModelAttrReset(lbl_1_bss_CC.unk00->model[1], 1); + while(1) { + fn_1_BC8(); + if(Hu3DMotionTimeGet(lbl_1_bss_CC.unk00->model[1]) >= 132) { + break; + } + } + fn_1_1DFC(lbl_1_bss_F4.unk00, 1, 4, 0, 0); + fn_1_BC8(); + while(1) { + fn_1_BC8(); + if(Hu3DMotionTimeGet(lbl_1_bss_F4.unk00->model[1]) >= 5) { + break; + } + } + Hu3DMotionSpeedSet(lbl_1_bss_F4.unk00->model[1], 0); + Hu3DData[lbl_1_bss_F4.unk00->model[1]].rot.y = 0; + fn_1_67D8(lbl_1_bss_11C.unk00, 3, 1, 5, 0); + HuAudFXPlay(156); + omVibrate(lbl_1_bss_194.unk0C, 45, 12, 0); + speed = 50; + for(i=0; i<60; i++) { + float weight = fn_1_B08(0, speed, i%15, 15); + speed = fn_1_88C(speed, 0, 30); + lbl_1_bss_194.unk100 = fn_1_88C(lbl_1_bss_194.unk100, weight, 5); + fn_1_BC8(); + } + lbl_1_bss_194.unk100 = 0; +} + +void fn_1_8ABC(void) +{ + fn_1_7384(lbl_1_bss_11C.unk00->model[1], lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10, 1, 20, 1); + lbl_1_bss_78[1] = HuAudSeqPlay(6); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 3, 10, 0); + fn_1_BE8(30); + lbl_1_bss_194.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_194.unk0C); + HuAudFXPlay(lbl_1_data_0[6][0]); + HuWinAttrSet(lbl_1_bss_194.unk04, 0x400); + HuWinMesSet(lbl_1_bss_194.unk04, 0x1F0002); + fn_1_2264(lbl_1_bss_CC.unk00, 1, 3, 10); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 3, 10, 0); + fn_1_BE8(45); + HuAudFXPlay(lbl_1_data_0[6][0]); + fn_1_2264(lbl_1_bss_CC.unk00, 1, 3, 10); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 1, 10, 1); + HuWinAttrReset(lbl_1_bss_194.unk04, 0x400); + HuWinKeyWaitEntry(lbl_1_bss_194.unk04); + fn_1_BC8(); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + HuAudFXPlay(lbl_1_data_0[6][2]); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 4, 10, 1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x1F0003); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_194.unk04); + fn_1_BE8(30); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 1, 30, 1); + fn_1_BE8(60); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 5, 10, 0); + fn_1_BE8(25); + HuAudFXPlay(81); + fn_1_BE8(20); + lbl_1_bss_194.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_194.unk0C); + HuAudFXPlay(lbl_1_data_0[6][2]); + fn_1_1D4C(lbl_1_bss_194.unk04, lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10, 0); + fn_1_1D18(lbl_1_bss_194.unk04, 0x1F0004); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x1F0005); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_194.unk04); + fn_1_67D8(lbl_1_bss_11C.unk00, 7, 8, 10, 0); + fn_1_7384(lbl_1_bss_11C.unk00->model[1], lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10, 3, 5, 0); + fn_1_BE8(90); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 3, 30, 0); + fn_1_BE8(30); + lbl_1_bss_194.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_194.unk0C); + HuAudFXPlay(lbl_1_data_0[6][0]); + HuWinAttrSet(lbl_1_bss_194.unk04, 0x400); + HuWinMesSet(lbl_1_bss_194.unk04, 0x1F0002); + fn_1_2264(lbl_1_bss_CC.unk00, 1, 3, 10); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 1, 10, 1); + HuWinAttrReset(lbl_1_bss_194.unk04, 0x400); + HuWinKeyWaitEntry(lbl_1_bss_194.unk04); + fn_1_BC8(); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + fn_1_1D18(lbl_1_bss_194.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_194.unk04); +} + +void fn_1_9034(void) +{ + fn_1_BE8(60); + lbl_1_bss_CC.unk04 = (void *)fn_1_AB10; + lbl_1_bss_194.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_194.unk0C); + HuAudFXPlay(lbl_1_data_0[6][1]); + fn_1_1D18(lbl_1_bss_194.unk04, 0x1F0007); + fn_1_1AFC(lbl_1_bss_194.unk04, -1); + fn_1_1A94(lbl_1_bss_194.unk04); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_CC.unk04 == NULL) { + break; + } + } + HuAudFXPlay(149); + Hu3DMotionSpeedSet(lbl_1_bss_F4.unk00->model[1], 1); + fn_1_BC8(); + fn_1_2264(lbl_1_bss_F4.unk00, 1, 4, 0); + lbl_1_bss_88[0] = HuAudFXPlay(98); + HuAudFXPlay(lbl_1_data_0[0][1]); + fn_1_1DFC(lbl_1_bss_F4.unk00, 1, 5, 15, 1); + fn_1_BE8(60); +} + +void fn_1_9198(void) +{ + fn_1_BE8(60); + HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); + HuAudFXFadeOut(lbl_1_bss_88[0], 1000); + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while(1) { + fn_1_BC8(); + if(!WipeStatGet()) { + break; + } + } + CharModelKill(-1); + HuAudFadeOut(1); + GWPlayerCfg[0].group = 0; + GWPlayerCfg[0].character = lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10; + GWPlayerCfg[0].pad_idx = lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk14; + GWPlayerCfg[0].iscom = FALSE; + omOvlGotoEx(OVL_MENT, 1, 11, 0); +} + +void fn_1_92BC(omObjData* arg0, StructBss16C* arg1) +{ + int temp = 0; + fn_1_8580(); + fn_1_85DC(); + fn_1_87D4(); + fn_1_8ABC(); + fn_1_9034(); + fn_1_9198(); + arg1->unk04 = NULL; +} + +void fn_1_9768(void) +{ + omObjData *obj; + lbl_1_bss_16C.unk00 = obj = omAddObjEx(lbl_1_bss_C8, 256, 16, 16, -1, NULL); + lbl_1_bss_16C.unk04 = (void *)fn_1_92BC; + lbl_1_bss_16C.unk00->data = &lbl_1_bss_16C; + while(1) { + fn_1_BC8(); + if(lbl_1_bss_16C.unk04 != NULL) { + lbl_1_bss_16C.unk04(obj, &lbl_1_bss_16C); + } + } +} + +void fn_1_981C(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660050); + object->motion[0] = Hu3DMotionIDGet(object->model[1]); + fn_1_1DFC(object, 1, 0, 0, 2); + Hu3DModelShadowMapObjSet(object->model[1], "base_fix9-base"); + object->model[2] = Hu3DModelCreateFile(0x660053); + object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); + object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + fn_1_1DFC(object, 2, 3, 0, 2); + object->model[4] = Hu3DModelCreateFile(0x660051); +} + +void fn_1_9954(omObjData* arg0, StructBss16C* arg1) +{ + Hu3DData[arg0->model[5]].pos.y = fn_1_B08(125, 130, arg1->unk08++, 360); + if(arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_9A10(void) +{ + omObjData *obj; + lbl_1_bss_144.unk00 = obj = omAddObjEx(lbl_1_bss_C8, 256, 16, 16, -1, NULL); + lbl_1_bss_144.unk04 = (void *)fn_1_9954; + lbl_1_bss_144.unk00->data = &lbl_1_bss_144; + fn_1_981C(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_144.unk04 != NULL) { + lbl_1_bss_144.unk04(obj, &lbl_1_bss_144); + } + } +} + +void fn_1_9BD4(s32 arg0) +{ + int i; + int order[4]; + order[0] = 0; + for(i=1; i<4; i++) { + order[i] = order[i-1]+1; + if(order[i] >= 4) { + order[i] = 0; + } + if(arg0 == order[i]) { + lbl_1_bss_194.unk00 = i; + } + } + for(i=0; i<4; i++) { + fn_1_357C(&lbl_1_bss_194.unk30[i], order[i]); + } +} + +void fn_1_9CB8(omObjData *object) +{ + int charNo = lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10; + object->model[1] = CharModelCreate(charNo, 1); + object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); + object->motion[2] = CharModelMotionCreate(charNo, 0x5F0035); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660018+charNo); + object->motion[7] = Hu3DJointMotionFile(object->model[1], 0x660048+charNo); + object->motion[8] = Hu3DJointMotionFile(object->model[1], 0x660040+charNo); + object->motion[9] = Hu3DJointMotionFile(object->model[1], 0x660020+charNo); + object->motion[10] = CharModelMotionCreate(charNo, 0x5F0012); + CharModelMotionDataClose(charNo); + Hu3DModelPosSet(object->model[1], 120, 0, 800); + Hu3DModelRotSet(object->model[1], 0, -135, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); +} + +void fn_1_9ECC(omObjData* arg0, StructBss16C* arg1) +{ + int i; + fn_1_1DFC(arg0, 1, 2, 0, 0); + fn_1_BC8(); + Hu3DMotionTimeSet(arg0->model[1], 60); + for(i=0; i<60; i++) { + fn_1_BC8(); + Hu3DData[arg0->model[1]].rot.y = fn_1_864(-135, -90, i, 60); + } + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_9FDC(void) +{ + omObjData *obj; + lbl_1_bss_11C.unk00 = obj = omAddObjEx(lbl_1_bss_C8, 256, 16, 16, -1, NULL); + lbl_1_bss_11C.unk04 = NULL; + lbl_1_bss_11C.unk00->data = &lbl_1_bss_11C; + fn_1_9CB8(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_11C.unk04 != NULL) { + lbl_1_bss_11C.unk04(obj, &lbl_1_bss_11C); + } + if(obj->work[0]) { + fn_1_6704(obj); + } + } +} + +void fn_1_A288(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660072); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660073); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660075); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660076); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x66007A); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x66007B); + object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660079); + Hu3DModelPosSet(object->model[1], 0, 0, 460); + Hu3DModelRotSet(object->model[1], 0, 0, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 6, 0, 1); + CharModelEffectNpcInit(object->model[1], object->motion[2], 1, 9); +} + +void fn_1_A4A8(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -120, 0, 800 }; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, 90, 45, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_A58C(void) +{ + omObjData *obj; + lbl_1_bss_F4.unk00 = obj = omAddObjEx(lbl_1_bss_C8, 256, 16, 16, -1, NULL); + lbl_1_bss_F4.unk04 = NULL; + lbl_1_bss_F4.unk00->data = &lbl_1_bss_F4; + fn_1_A288(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_F4.unk04 != NULL) { + lbl_1_bss_F4.unk04(obj, &lbl_1_bss_F4); + } + if(obj->work[0]) { + fn_1_6704(obj); + } + } +} + +void fn_1_A848(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660062); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660065); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660066); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660069); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660068); + object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x66006C); + object->motion[7] = Hu3DJointMotionFile(object->model[1], 0x66006D); + object->motion[8] = Hu3DJointMotionFile(object->model[1], 0x660064); + Hu3DModelPosSet(object->model[1], -120, 0, 800); + Hu3DModelRotSet(object->model[1], 0, 90, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelAttrSet(object->model[1], 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); + lbl_1_data_3DC = object->model[1]; + lbl_1_data_3E0[0] = object->motion[7]; + lbl_1_data_3E0[1] = object->motion[8]; + HuPrcChildCreate(fn_1_7DB0, 100, 8192, 0, HuPrcCurrentGet()); +} + +void fn_1_AB10(omObjData* arg0, StructBss16C* arg1) +{ + int i; + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 8, 15, 1); + for(i=0; i<30; i++) { + fn_1_BC8(); + Hu3DData[lbl_1_bss_CC.unk00->model[1]].pos.x = fn_1_864(-120, -60, i, 30); + } + fn_1_1DFC(lbl_1_bss_11C.unk00, 1, 9, 15, 0); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 6, 15, 0); + fn_1_2264(lbl_1_bss_CC.unk00, 1, 6, 15); + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 7, 15, 1); + fn_1_1DFC(lbl_1_bss_11C.unk00, 1, 10, 15, 1); + for(i=0; i<240; i++) { + fn_1_BC8(); + Hu3DData[lbl_1_bss_CC.unk00->model[1]].pos.x = fn_1_864(-60, 540, i, 180); + Hu3DData[lbl_1_bss_11C.unk00->model[1]].pos.x = fn_1_864(120, 840, i, 180); + } + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_ADB0(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_CC.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_CC.unk00->work[0] = arg4; + lbl_1_bss_CC.unk00->work[1] = arg1; + lbl_1_bss_CC.unk00->work[2] = arg2+1; +} + +void fn_1_AE5C(void) +{ + omObjData *obj; + lbl_1_bss_CC.unk00 = obj = omAddObjEx(lbl_1_bss_C8, 256, 16, 16, -1, NULL); + lbl_1_bss_CC.unk04 = NULL; + lbl_1_bss_CC.unk00->data = &lbl_1_bss_CC; + fn_1_A848(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_CC.unk04 != NULL) { + lbl_1_bss_CC.unk04(obj, &lbl_1_bss_CC); + } + if(obj->work[0]) { + fn_1_6704(obj); + } + } +} + +void fn_1_B1C0(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk08.x = 0; + work->unk08.y = 125; + work->unk08.z = 0; + work->unk20.x = -4.9f; + work->unk20.y = 0; + work->unk20.z = 0; + work->unk38 = 1750; +} + +void fn_1_B24C(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + temp.unk08.x = 0; + temp.unk08.y = 100; + temp.unk08.z = 0; + temp.unk20.x = 0; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 1400; + fn_1_42A0(work, &temp, work->unk40++, 60, 10); + if(0.0f != lbl_1_bss_194.unk100) { + work->unk08.y = 100+lbl_1_bss_194.unk100; + } +} \ No newline at end of file From 40da624fe7e6c914154c1b7a58372f7c6a717b0e Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sat, 11 Jan 2025 00:44:35 +0100 Subject: [PATCH 110/178] Completely match m430Dll (#519) --- config/GMPE01_00/rels/m430Dll/symbols.txt | 2 +- configure.py | 2 +- include/game/gamework_data.h | 2 +- src/REL/m430Dll/player.c | 2427 +++++++++++++++++++++ 4 files changed, 2430 insertions(+), 3 deletions(-) create mode 100644 src/REL/m430Dll/player.c diff --git a/config/GMPE01_00/rels/m430Dll/symbols.txt b/config/GMPE01_00/rels/m430Dll/symbols.txt index a4b72fe6..50779d4f 100644 --- a/config/GMPE01_00/rels/m430Dll/symbols.txt +++ b/config/GMPE01_00/rels/m430Dll/symbols.txt @@ -445,7 +445,7 @@ lbl_1_data_258 = .data:0x00000258; // type:object size:0x20 lbl_1_data_278 = .data:0x00000278; // type:object size:0x8 lbl_1_data_280 = .data:0x00000280; // type:object size:0x8 lbl_1_data_288 = .data:0x00000288; // type:object size:0x8 -lbl_1_data_290 = .data:0x00000290; // type:object size:0x14 +lbl_1_data_290 = .data:0x00000290; // type:object size:0x12 scope:local data:string lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x8 lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x54 lbl_1_data_300 = .data:0x00000300; // type:object size:0x8 data:4byte diff --git a/configure.py b/configure.py index 9c510762..212bef75 100644 --- a/configure.py +++ b/configure.py @@ -1089,7 +1089,7 @@ config.libs = [ objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m430Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m430Dll/water.c"), - Object(NonMatching, "REL/m430Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m430Dll/player.c"), }, ), Rel( diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index 330e0f86..8d98cad0 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -362,6 +362,6 @@ static inline void GWPlayerCoinWinSet(s32 player, s16 value) } #define GWPlayerCoinWinAdd(player, value) GWPlayerCoinWinSet((player), GWPlayerCoinWinGet((player))+(value)) -#define GWPlayerCoinCollectAdd(player, value) GWPlayerCoinCollectSet((player), GWPlayerCoinCollectGet((player))+(value)) +#define GWPlayerCoinCollectAdd(player, value) GWPlayerCoinCollectSet((player), (s32)GWPlayerCoinCollectGet((player))+(value)) #endif diff --git a/src/REL/m430Dll/player.c b/src/REL/m430Dll/player.c new file mode 100644 index 00000000..981602dc --- /dev/null +++ b/src/REL/m430Dll/player.c @@ -0,0 +1,2427 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXStruct.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/flag.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m430Dll.h" + +#ifndef __MWERKS__ +#include "game/esprite.h" +#include "game/frand.h" +#endif + +inline double fabs2(double x) +{ + return (double)fabs(x); +} + +typedef struct M430PlayerData170Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; +} M430PlayerData170Struct; /* size = 0x08 */ + +typedef struct M430PlayerBss160Struct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10[6]; + s32 unk_28[6][3]; + s32 unk_70[6][3]; + s32 unk_B8; + s32 unk_BC; +} M430PlayerBss160Struct; /* size = 0xC0 */ + +typedef struct M430PlayerBss164Struct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + AnimData *unk_14; + Vec unk_18; + Vec unk_24; + Vec unk_30; +} M430PlayerBss164Struct; /* size = 0x3C */ + +typedef struct M430PlayerBss168Struct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + Vec unk_14; + Vec unk_20; + Vec unk_2C; +} M430PlayerBss168Struct; /* size = 0x38 */ + +typedef struct M430PlayerBss16CStruct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + s32 unk_14; + float unk_18; + Vec unk_1C; + float unk_28; + float unk_2C; + float unk_30; + float unk_34; + float unk_38; + float unk_3C; +} M430PlayerBss16CStruct; /* size = 0x40 */ + +typedef struct M430PlayerBss170Struct { + s32 unk_00; + s32 unk_04; + s32 unk_08; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + float unk_20; + float unk_24; + float unk_28; + float unk_2C; + float unk_30; + float unk_34; + float unk_38; + float unk_3C; + float unk_40; + float unk_44; + float unk_48; + Vec *unk_4C; + Vec *unk_50; + Vec2f *unk_54; + s32 unk_58; + u32 unk_5C; + void *unk_60; +} M430PlayerBss170Struct; /* size = 0x64 */ + +typedef struct M430PlayerBss174Struct { + s32 unk_00[2]; + s32 unk_08; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + s32 unk_20; +} M430PlayerBss174Struct; /* size = 0x24 */ + +typedef struct M430PlayerWork { + u32 unk_00; + u16 unk_04; + u16 unk_06; + u16 unk_08; + u16 unk_0A; + u16 unk_0C; + u16 unk_0E; + u16 unk_10; + u16 unk_12; + u16 unk_14; + u16 unk_16; + float unk_18; + float unk_1C; + float unk_20; + float unk_24; + float unk_28; + float unk_2C; + float unk_30; + s32 unk_34; + s32 unk_38; + char unk3C[4]; + s32 unk_40; + u32 unk_44; + float unk_48; + float unk_4C; + float unk_50; + float unk_54; + s32 unk_58; + s32 unk_5C; + s32 unk_60; + s32 unk_64; + s32 unk_68; + s32 unk_6C; + float unk_70; + s32 unk_74; + s32 unk_78; + float unk_7C; +} M430PlayerWork; /* size = 0x80 */ + +void fn_1_100A0(void); +void fn_1_1033C(void); +void fn_1_1053C(void); +void fn_1_10540(s32 arg0, s32 arg1, float arg8, float arg9, float argA); +void fn_1_1058C(s32 arg0, float arg8); +void fn_1_105B8(s32 arg0); +void fn_1_1061C(M430PlayerBss170Struct *arg0); +void fn_1_10948(ModelData *model, Mtx matrix); +void fn_1_10B88(void); +void fn_1_10D1C(void); +void fn_1_10F20(void); +s32 fn_1_10F24(s32 arg0, float arg8, float arg9, float argA); +s32 fn_1_110A8(s32 arg0, float arg8, float arg9, float argA, s32 arg1); +s32 fn_1_111BC(s32 arg0, float arg8, Vec *arg1); +void fn_1_11314(s32 arg0); +void fn_1_113AC(void); +void fn_1_114F0(void); +void fn_1_11644(void); +s32 fn_1_11648(s32 arg0, float arg8, float arg9, float argA); +s32 fn_1_117A4(s32 arg0, float arg8, float arg9, float argA, s32 arg1); +s32 fn_1_11A1C(s32 arg0, float arg8, Vec *arg1); +M430PlayerBss168Struct *fn_1_11B64(s32 arg0); +void fn_1_11B94(s32 arg0); +void fn_1_11C1C(void); +void fn_1_11D70(void); +void fn_1_11F60(void); +s32 fn_1_11F90(s32 arg0, float arg8, float arg9, float argA); +void fn_1_12550(s32 arg0); +void fn_1_125C4(void); +void fn_1_129CC(void); +void fn_1_12D74(void); +void fn_1_12DF0(s32 arg0); +void fn_1_12F20(float arg8, float *arg0, float *arg1, float *arg2, float *arg3); +float fn_1_1303C(float arg8, float arg9); +float fn_1_13154(float arg8, float arg9, float argA); +void fn_1_133A4(AnimData *arg0); +void fn_1_133DC(Mtx arg0, Vec *arg1); +void fn_1_BE24(omObjData *object); +void fn_1_C040(void); +void fn_1_C1E4(omObjData *object); +void fn_1_CA3C(omObjData *object); +void fn_1_D2D0(omObjData *object); +void fn_1_D828(omObjData *object); +void fn_1_E8FC(omObjData *object); +void fn_1_F0D8(omObjData *object); +s32 fn_1_F62C(omObjData *object); +void fn_1_F6A0(omObjData *object); +void fn_1_FC9C(omObjData *object); + +M430PlayerData170Struct lbl_1_data_170[7] = { + { 0x5F0042, -1 }, + { 0, 1 }, + { 0, 2 }, + { 0, 3 }, + { 0, -1 }, + { 0x5F0017, -1 }, + { 0x5F0018, -1 }, +}; +M430PlayerData170Struct lbl_1_data_1A8[4] = { + { 0, 4 }, + { 0x5F0000, -1 }, + { 0x5F0017, -1 }, + { 0x5F0018, -1 }, +}; +s32 lbl_1_data_1C8[5] = { 0, 0x3D0031, 0x3D0039, 0x3D0041, 0x3D0049 }; +float lbl_1_data_1DC[7] = { -262.5f, -173.25f, -86.625f, 0.0f, 86.625f, 173.25f, 262.5f }; +Vec lbl_1_data_1F8[8] = { + { 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 160.0f }, + { 60.000004f, 0.0f, 0.0f }, + { -60.000004f, 0.0f, 0.0f }, + { 50.0f, 0.0f, 100.0f }, + { -50.0f, 0.0f, 100.0f }, + { 60.000004f, 0.0f, -120.00001f }, + { -60.000004f, 0.0f, -120.00001f }, +}; +float lbl_1_data_258[8] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 25.0f, 0.0f, 25.0f }; +s32 lbl_1_data_278[2] = { 0x3D001C, 0x3D001D }; +s32 lbl_1_data_280[2] = { 0x3D001E, 0x3D001F }; +s32 lbl_1_data_288[2] = { 0x3D0020, 0x3D0021 }; + +s32 lbl_1_bss_17C; +Process *lbl_1_bss_178; +M430PlayerBss174Struct *lbl_1_bss_174; +M430PlayerBss170Struct *lbl_1_bss_170; +M430PlayerBss16CStruct *lbl_1_bss_16C; +M430PlayerBss168Struct *lbl_1_bss_168; +M430PlayerBss164Struct *lbl_1_bss_164; +M430PlayerBss160Struct *lbl_1_bss_160; +s32 lbl_1_bss_15C; +s32 lbl_1_bss_158; + +void fn_1_BBC4(Process *process) +{ + Vec sp14; + Vec sp8; + + lbl_1_bss_178 = process; + fn_1_C040(); + fn_1_100A0(); + fn_1_10B88(); + fn_1_113AC(); + fn_1_11C1C(); + fn_1_125C4(); + omAddObjEx(process, 0x2D, 0, 0, -1, fn_1_BE24); + sp14.x = CenterM[0].x + (CZoomM[0] * (sind(CRotM[0].y) * cosd(CRotM[0].x))); + sp14.y = CenterM[0].y + (CZoomM[0] * -sind(CRotM[0].x)); + sp14.z = CenterM[0].z + (CZoomM[0] * (cosd(CRotM[0].y) * cosd(CRotM[0].x))); + PSVECSubtract(CenterM, &sp14, &sp8); + PSVECNormalize(&sp8, &sp8); + HuAudFXListnerSetEX(&sp14, &sp8, 100000.0f, 566.6667f, 0.0f, 300.0f, 300.0f); +} + +void fn_1_BE24(omObjData *object) +{ + Vec sp14; + Vec sp8; + + fn_1_1033C(); + fn_1_10D1C(); + fn_1_114F0(); + fn_1_11D70(); + fn_1_129CC(); + sp14.x = CenterM[0].x + (CZoomM[0] * (sind(CRotM[0].y) * cosd(CRotM[0].x))); + sp14.y = CenterM[0].y + (CZoomM[0] * -sind(CRotM[0].x)); + sp14.z = CenterM[0].z + (CZoomM[0] * (cosd(CRotM[0].y) * cosd(CRotM[0].x))); + PSVECSubtract(CenterM, &sp14, &sp8); + PSVECNormalize(&sp8, &sp8); + HuAudFXListnerUpdate(&sp14, &sp8); +} + +void fn_1_C00C(void) +{ + HuAudFXListnerKill(); + fn_1_1053C(); + fn_1_10F20(); + fn_1_11644(); + fn_1_11F60(); + fn_1_12D74(); +} + +void fn_1_C040(void) +{ + s8 spC[4]; + s32 sp8; + s32 var_r31; + omObjData *var_r30; + s32 var_r29; + s32 var_r28; + + sp8 = 0; + lbl_1_bss_17C = 1; + omMakeGroupEx(lbl_1_bss_178, 0, 4); + omGetGroupMemberListEx(lbl_1_bss_178, 0); + lbl_1_bss_174 = HuMemDirectMallocNum(HEAP_SYSTEM, 2 * sizeof(M430PlayerBss174Struct), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_174, 0, 2 * sizeof(M430PlayerBss174Struct)); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + spC[var_r31] = -1; + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + var_r29 = GWPlayerCfg[var_r31].group; + if (spC[var_r29] == -1) { + spC[var_r29] = var_r31; + } + else { + break; + } + } + if (var_r31 < 4) { + spC[0] = 0; + spC[1] = 1; + spC[2] = 2; + spC[3] = 3; + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + var_r30 = omAddObjEx(lbl_1_bss_178, 0x28, 3, 7, 0, fn_1_C1E4); + var_r28 = spC[var_r31]; + var_r30->work[0] = var_r28; + var_r30->work[1] = var_r31 >> 1; + var_r30->work[2] = var_r31 & 1; + } +} + +void fn_1_C1E4(omObjData *object) +{ + M430PlayerWork *work; + s32 var_r29; + M430PlayerBss174Struct *var_r28; + u32 var_r27; + HsfData *var_r26; + HsfMaterial *var_r25; + ModelData *var_r24; + s32 var_r23; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M430PlayerWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M430PlayerWork)); + var_r27 = object->work[0]; + var_r23 = GWPlayerCfg[var_r27].character; + work->unk_38 = var_r23; + work->unk_00 = var_r27; + work->unk_04 = object->work[1]; + work->unk_06 = GWPlayerCfg[var_r27].pad_idx; + work->unk_08 = GWPlayerCfg[var_r27].iscom; + work->unk_0A = GWPlayerCfg[var_r27].diff; + work->unk_0C = object->work[2]; + work->unk_0E = 0; + work->unk_10 = 0; + work->unk_12 = 0; + work->unk_14 = 0; + work->unk_16 = 0; + if (work->unk_04 == 0) { + work->unk_18 = 450.0f; + } + else { + work->unk_18 = -450.0f; + } + work->unk_34 = 1; + work->unk_24 = 12.500001f; + work->unk_28 = 0.0f; + work->unk_1C = 180.0f; + work->unk_2C = 0.0f; + work->unk_30 = 0.0f; + work->unk_20 = 0.0f; + work->unk_40 = work->unk_44 = 0; + work->unk_48 = work->unk_4C = 0.0f; + work->unk_50 = 0.0f; + work->unk_54 = 0.0f; + work->unk_74 = 0; + work->unk_78 = -1; + work->unk_7C = 0.0f; + work->unk_60 = -1; + work->unk_64 = -1; + work->unk_68 = -1; + work->unk_6C = -1; + work->unk_70 = lbl_1_data_258[var_r23]; + object->model[0] = CharModelCreate(work->unk_38, 4); + Hu3DModelCameraSet(object->model[0], 3); + Hu3DModelLayerSet(object->model[0], 6); + CharModelStepTypeSet(work->unk_38, 3); + if (work->unk_0C == 0) { + for (var_r29 = 0; var_r29 < 7; var_r29++) { + if ((lbl_1_data_170[var_r29].unk_04) == 0xFFFFFFFF) { + object->motion[var_r29] = CharModelMotionCreate(work->unk_38, lbl_1_data_170[var_r29].unk_00); + } + else { + object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], work->unk_38 + lbl_1_data_1C8[lbl_1_data_170[var_r29].unk_04]); + } + if (var_r29 == 5) { + CharModelVoiceEnableSet(work->unk_38, object->motion[var_r29], 0); + } + } + work->unk_58 = 0; + CharModelMotionSet(work->unk_38, object->motion[work->unk_58]); + object->model[1] = Hu3DModelCreateFile(lbl_1_data_278[work->unk_04]); + Hu3DModelLayerSet(object->model[1], 2); + Hu3DModelCameraSet(object->model[1], 3); + Hu3DModelScaleSet(object->model[1], 1.2f, 1.2f, 1.2f); + object->model[2] = Hu3DModelCreateFile(0x3D0025); + Hu3DModelLayerSet(object->model[2], 1); + Hu3DModelCameraSet(object->model[2], 3); + work->unk_60 = HuAudFXPlay(0x67A); + work->unk_68 = 0x50; + if (work->unk_60 != -1) { + HuAudFXVolSet(work->unk_60, work->unk_68); + } + if (work->unk_04 == 0) { + work->unk_64 = HuAudFXPlay(0x675); + } + else { + work->unk_64 = HuAudFXPlay(0x676); + } + if (work->unk_64 != -1) { + HuAudFXPitchSet(work->unk_64, 0); + } + } + else { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (lbl_1_data_1A8[var_r29].unk_04 == 0xFFFFFFFF) { + object->motion[var_r29] = CharModelMotionCreate(work->unk_38, lbl_1_data_1A8[var_r29].unk_00); + } + else { + object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], work->unk_38 + lbl_1_data_1C8[lbl_1_data_1A8[var_r29].unk_04]); + } + if (var_r29 == 2) { + CharModelVoiceEnableSet(work->unk_38, object->motion[var_r29], 0); + } + } + work->unk_58 = 0; + CharModelMotionSet(work->unk_38, object->motion[work->unk_58]); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + object->model[1] = Hu3DModelCreateFile(lbl_1_data_280[work->unk_04]); + Hu3DModelLayerSet(object->model[1], 7); + Hu3DModelCameraSet(object->model[1], 3); + Hu3DModelAttrSet(object->model[1], HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(object->model[1], 2.0f); + object->model[2] = Hu3DModelCreateFile(lbl_1_data_288[work->unk_04]); + Hu3DModelLayerSet(object->model[2], 6); + Hu3DModelCameraSet(object->model[2], 3); + } + CharModelMotionDataClose(work->unk_38); + object->trans.x = work->unk_18; + if (work->unk_0C == 0) { + object->trans.y = 0.0f; + } + else { + object->trans.y = 200.0f; + } + if (work->unk_04 == 0) { + object->trans.z = -100000.0f; + } + else { + object->trans.z = -101000.0f; + } + object->rot.y = 180.0f; + work->unk_20 = object->trans.y; + var_r28 = &lbl_1_bss_174[work->unk_04]; + if (work->unk_0C == 0) { + var_r28->unk_00[work->unk_0C] = work->unk_00; + if (work->unk_08 != 0) { + var_r23 = var_r28->unk_08 | 1; + var_r28->unk_08 = var_r23; + } + var_r28->unk_0C = object->trans.x; + var_r28->unk_10 = 0.0f; + var_r28->unk_14 = object->trans.z; + var_r28->unk_18 = object->trans.z; + var_r28->unk_1C = work->unk_24; + var_r28->unk_20 = 0; + lbl_1_bss_158 = 1; + } + else { + var_r28->unk_00[work->unk_0C] = work->unk_00; + if (work->unk_08 != 0) { + var_r28->unk_08 = var_r28->unk_08 | 2; + } + } + if (work->unk_0C != 0) { + var_r24 = &Hu3DData[object->model[1]]; + var_r26 = var_r24->hsfData; + for (var_r25 = var_r26->material, var_r29 = 0; var_r29 < var_r26->materialCnt; var_r29++, var_r25++) { + var_r25->flags |= 2; + } + } + object->func = fn_1_CA3C; + (void)var_r24; + (void)var_r24; +} + +void fn_1_CA3C(omObjData *object) +{ + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + M430PlayerWork *work; + s32 var_r29; + M430PlayerBss174Struct *var_r28; + HsfData *var_r27; + HsfMaterial *var_r26; + ModelData *var_r25; + + work = object->data; + var_r28 = &lbl_1_bss_174[work->unk_04]; + work->unk_40 = 0; + work->unk_44 = 0; + work->unk_48 = 0.0f; + work->unk_4C = 0.0f; + if (work->unk_0C == 0) { + work->unk_34 = 3; + work->unk_24 = -41.000004f; + object->rot.y = 0.0f; + object->rot.z = 0.0f; + object->trans.z -= work->unk_30; + fn_1_D828(object); + if (work->unk_60 != -1) { + HuAudFXVolSet(work->unk_60, work->unk_68); + } + if (work->unk_64 != -1) { + HuAudFXPitchSet(work->unk_64, (s32)(8192.0f * (work->unk_68 / 127.0f))); + } + object->rot.y = object->rot.z = 0.0f; + if (++work->unk_10 > (60.0f * (1.5f + (0.5f * work->unk_04)))) { + work->unk_30 += 30.000002f; + var_r28->unk_18 = object->trans.z = object->trans.z + work->unk_30; + work->unk_68 += 3; + if (work->unk_68 > 0x7F) { + work->unk_68 = 0x7F; + } + } + else { + var_r28->unk_18 = object->trans.z; + } + var_f30 = work->unk_70 * sind(object->rot.y); + var_f29 = work->unk_70 * cosd(object->rot.y); + Hu3DModelPosSet(object->model[1], object->trans.x + var_f30, object->trans.y, object->trans.z + var_f29); + Hu3DModelRotSet(object->model[1], object->rot.x, object->rot.y, object->rot.z); + Hu3DModelPosSet(object->model[2], object->trans.x + var_f30, object->trans.y - 150.0f, object->trans.z + var_f29); + Hu3DModelRotSet(object->model[2], object->rot.x, 180.0f + object->rot.y, object->rot.z); + fn_1_10540(work->unk_04, 0, object->trans.x, 25.0f + object->trans.y, object->trans.z - 100.0f); + if (work->unk_10 > 30.0f) { + var_f31 = 0.016666668f * (work->unk_10 - 30.0f); + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + var_f31 = sind((90.0f * var_f31)); + var_f31 *= var_f31; + } + else { + var_f31 = 0.0f; + } + CenterM[work->unk_04].x = work->unk_18 - (var_f31 * work->unk_18); + CenterM[work->unk_04].z = (950.0f * (0.5f + (0.5f * var_f31))) + fn_1_7FBC(work->unk_04); + } + else { + work->unk_1C = 0.0f; + object->rot.y = 0.0f; + object->rot.z = 0.0f; + fn_1_E8FC(object); + work->unk_1C = 0.0f; + object->rot.y = 0.0f; + object->rot.z = 0.0f; + object->trans.y = 200.0f; + object->trans.z = var_r28->unk_18 - 300.0f; + object->rot.z = 0.0f; + for (var_r29 = 0; var_r29 < 2; var_r29++) { + Hu3DModelPosSet(object->model[var_r29 + 1], object->trans.x, 150.0f + object->trans.y, 50.0f + object->trans.z); + Hu3DModelRotSet(object->model[var_r29 + 1], object->rot.x, object->rot.y, object->rot.z); + } + fn_1_10540(work->unk_04, 1, object->trans.x, 150.0f + object->trans.y, 50.0f + object->trans.z); + if (work->unk_6C == -1) { + sp8.x = object->trans.x; + sp8.y = object->trans.y; + sp8.z = object->trans.z; + work->unk_6C = HuAudFXEmiterPlay(0x67B, &sp8); + } + else { + sp8.x = object->trans.x; + sp8.y = object->trans.y; + sp8.z = object->trans.z; + HuAudFXEmiterUpDate(work->unk_6C, &sp8); + } + } + if (fn_1_4058() == 2) { + if (work->unk_0C == 0) { + work->unk_34 = 1; + work->unk_24 = 12.500001f; + work->unk_28 = 0.0f; + work->unk_68 = 0x50; + object->trans.y = 0.0f; + } + else { + var_r25 = &Hu3DData[object->model[1]]; + var_r27 = var_r25->hsfData; + for (var_r26 = var_r27->material, var_r29 = 0; var_r29 < var_r27->materialCnt; var_r29++, var_r26++) { + var_r26->flags &= 0xFFFFFFFD; + } + if (work->unk_6C != -1) { + HuAudFXStop(work->unk_6C); + } + work->unk_6C = -1; + if (work->unk_04 == 0) { + work->unk_6C = HuAudFXPlay(0x67C); + } + else { + work->unk_6C = HuAudFXPlay(0x67D); + } + if (work->unk_6C != -1) { + HuAudFXPitchSet(work->unk_6C, -0x2000); + } + work->unk_28 = 0.0f; + object->trans.y = 200.0f; + object->rot.z = 180.0f; + } + object->trans.x *= -1.0f; + work->unk_18 *= -1.0f; + object->trans.x = work->unk_18; + object->trans.z = 0.0f; + object->rot.x = 0.0f; + object->rot.y = 180.0f; + work->unk_1C = 180.0f; + work->unk_20 = object->trans.y; + lbl_1_bss_158 = 0; + object->func = fn_1_D2D0; + } +} + +void fn_1_D2D0(omObjData *object) +{ + s32 spC; + s32 sp8; + float var_f31; + M430PlayerWork *work; + s32 var_r29; + M430PlayerBss174Struct *var_r28; + + work = object->data; + spC = 0; + sp8 = -1; + var_r28 = &lbl_1_bss_174[work->unk_04]; + if ((lbl_1_bss_15C == 0) && (fn_1_4070() >= 2)) { + fn_1_12DF0(1); + } + if (lbl_1_bss_17C != 0) { + Hu3DModelCameraSet(object->model[0], 3); + Hu3DModelCameraSet(object->model[1], 3); + if (object->model[2] != -1) { + Hu3DModelCameraSet(object->model[2], 3); + } + } + else { + if (work->unk_04 == 0) { + var_r29 = 1; + } + else { + var_r29 = 2; + } + Hu3DModelCameraSet(object->model[0], var_r29); + Hu3DModelCameraSet(object->model[1], var_r29); + if (object->model[2] != -1) { + Hu3DModelCameraSet(object->model[2], var_r29); + } + } + if (fn_1_4070() == 2) { + work->unk_40 = HuPadBtn[work->unk_06]; + work->unk_44 = HuPadBtnDown[work->unk_06]; + work->unk_48 = HuPadStkX[work->unk_06]; + work->unk_4C = HuPadStkY[work->unk_06]; + } + else { + work->unk_40 = 0; + work->unk_44 = 0; + work->unk_48 = 0.0f; + work->unk_4C = 0.0f; + } + if (fn_1_4070() < 2) { + work->unk_1C = 180.0f; + work->unk_28 = 0.0f; + object->trans.x = work->unk_18; + object->rot.y = 180.0f; + } + if (work->unk_0C == 0) { + fn_1_D828(object); + var_f31 = (work->unk_24 - 12.500001f) / 28.500004f; + work->unk_68 = 80.0f + (47.0f * var_f31); + if (work->unk_60 != -1) { + HuAudFXVolSet(work->unk_60, work->unk_68); + } + if (work->unk_64 != -1) { + HuAudFXPitchSet(work->unk_64, (s32)(8192.0f * (work->unk_68 / 127.0f))); + } + } + else { + fn_1_E8FC(object); + var_f31 = (var_r28->unk_1C - 12.500001f) / 28.500004f; + var_f31 = 8192.0f + (-16384.0f * (1.0f - var_f31)); + if (work->unk_6C != -1) { + HuAudFXPitchSet(work->unk_6C, var_f31); + } + } + if (fn_1_4070() == 3) { + fn_1_40D0(work->unk_00); + work->unk_5C = 0; + return; + } + if (fn_1_4070() == 4) { + work->unk_0E = 2; + work->unk_10 = 0; + if (work->unk_0C == 0) { + work->unk_58 = 4; + } + else { + work->unk_58 = 1; + } + CharModelMotionSet(work->unk_38, object->motion[work->unk_58]); + Hu3DModelCameraSet(object->model[0], 1); + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + if ((object->model[1] != -1) && (work->unk_0C != 0)) { + Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); + } + if (work->unk_60 != -1) { + HuAudFXStop(work->unk_60); + } + if (work->unk_64 != -1) { + HuAudFXStop(work->unk_64); + } + work->unk_60 = work->unk_64 = -1; + if (work->unk_6C != -1) { + HuAudFXStop(work->unk_6C); + } + if (object->model[2] != -1) { + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + } + fn_1_105B8(work->unk_04); + fn_1_11314(work->unk_04); + fn_1_11B94(work->unk_04); + fn_1_12550(work->unk_04); + object->func = fn_1_F0D8; + } +} + +void fn_1_D828(omObjData *var_r30) +{ + Mtx sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + float var_f19; + float var_f18; + M430PlayerWork *var_r31; + M430PlayerBss174Struct *var_r29; + s32 var_r28; + s32 var_r27; + + var_r31 = var_r30->data; + var_r27 = -1; + var_r29 = &lbl_1_bss_174[var_r31->unk_04]; + if ((fn_1_4070() == 2) && (var_r31->unk_08 != 0)) { + fn_1_F6A0(var_r30); + } + mtxRot(sp20, var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); + sp20[1][0] *= var_r30->scale.y; + sp20[1][1] *= var_r30->scale.y; + sp20[1][2] *= var_r30->scale.z; + var_r30->trans.y = 0.3f * (100.0f * (var_r31->unk_24 / 41.000004f)); + if (var_r30->trans.y < 0.0f) { + var_r30->trans.y *= -0.5f; + } + var_f27 = 15.0f * (var_r31->unk_24 / 41.000004f); + if (var_r31->unk_24 < 0.0f) { + var_f27 *= -0.5f; + } + switch (var_r31->unk_0E) { + case 0: + var_r31->unk_12 = var_r31->unk_34 + (frand() & 7) + var_r31->unk_12; + var_r31->unk_14 = var_r31->unk_34 + (frand() & 7) + var_r31->unk_14; + var_r30->rot.x = (2.5 * sind(var_r31->unk_12)) - var_f27; + var_r30->rot.z = 2.0 * cosd(var_r31->unk_14); + for (var_r28 = 0; var_r28 < 8; var_r28++) { + sp14.x = lbl_1_data_1F8[var_r28].x; + sp14.y = lbl_1_data_1F8[var_r28].y; + sp14.z = lbl_1_data_1F8[var_r28].z; + fn_1_133DC(&sp20[0], &sp14); + var_f31 = var_r31->unk_70 * sind(var_r30->rot.y); + var_f29 = var_r31->unk_70 * cosd(var_r30->rot.y); + if (fn_1_110A8( + var_r31->unk_04, var_f31 + (sp14.x + var_r30->trans.x), sp14.y + var_r30->trans.y, var_f29 + (sp14.z + var_r30->trans.z), 1) + != 0) { + break; + } + } + if (var_r28 < 8) { + var_r31->unk_58 = 3; + CharModelMotionShiftSet(var_r31->unk_38, var_r30->motion[var_r31->unk_58], 0.0f, 10.0f, 0); + var_r31->unk_0E = 1; + var_r31->unk_10 = 0; + if (var_r31->unk_04 == 0) { + HuAudFXPlay(0x678); + } + else { + HuAudFXPlay(0x67E); + } + HuAudCharVoicePlay(var_r31->unk_38, 0x123); + omVibrate(var_r31->unk_00, 0xC, 4, 2); + var_r31->unk_2C = 5.0f; + var_r31->unk_16 = frand() & 3; + } + break; + case 1: + var_r31->unk_34 = 1; + var_r31->unk_44 = 0; + var_r31->unk_48 = 0.0f; + var_r31->unk_12 = var_r31->unk_34 + (frand() & 7) + var_r31->unk_12; + var_r31->unk_14 = var_r31->unk_34 + (frand() & 7) + var_r31->unk_14; + var_r30->rot.x = (2.5 * sind(var_r31->unk_12)) - var_f27; + var_r30->rot.z = 2.0 * cosd(var_r31->unk_14); + var_r31->unk_2C = 5.0f - (5.0f * (0.011111111f * var_r31->unk_10)); + var_f25 = 7.0 * (var_r31->unk_2C * sind((10.0f * var_r31->unk_10))); + if ((var_r31->unk_16 & 1) != 0) { + var_r30->rot.x += var_f25; + } + else { + var_r30->rot.x -= var_f25; + } + if ((var_r31->unk_16 & 2) != 0) { + var_r30->rot.z += var_f25; + } + else { + var_r30->rot.z -= var_f25; + } + if ((var_r31->unk_10 & 1) != 0) { + Hu3DModelAttrSet(var_r30->model[0], HU3D_ATTR_DISPOFF); + } + else { + Hu3DModelAttrReset(var_r30->model[0], HU3D_ATTR_DISPOFF); + } + if (++var_r31->unk_10 >= 90.0f) { + var_r31->unk_0E = 0; + var_r31->unk_10 = 0; + Hu3DModelAttrReset(var_r30->model[0], HU3D_ATTR_DISPOFF); + } + break; + } + var_f24 = var_r31->unk_48; + var_f23 = var_f24; + if (fabs2(var_f23) < 8.0) { + var_f24 = 0.0f; + } + var_r31->unk_28 *= 0.98f; + var_r31->unk_28 += 0.0017499999f * var_f24; + if (var_r31->unk_28 < -8.75f) { + var_r31->unk_28 = -8.75f; + } + else if (var_r31->unk_28 > 8.75f) { + var_r31->unk_28 = 8.75f; + } + var_r30->trans.x += var_r31->unk_28; + var_f26 = 180.0f - (30.0f * (0.015625f * var_f24)); + var_r31->unk_1C = fn_1_13154(var_f26, var_r31->unk_1C, 1.0f); + var_r30->rot.y = var_r31->unk_1C; + if (var_r30->trans.x > (350.0f + var_r31->unk_18)) { + var_r30->trans.x = 350.0f + var_r31->unk_18; + } + else if (var_r30->trans.x < (var_r31->unk_18 - 350.0f)) { + var_r30->trans.x = var_r31->unk_18 - 350.0f; + } + if (var_r31->unk_0E == 0) { + if ((var_r31->unk_48 > 8.0f) && (var_r30->rot.y < 170.0f)) { + var_r27 = 1; + } + else if ((var_r31->unk_48 < -8.0f) && (var_r30->rot.y > 190.0f)) { + var_r27 = 2; + } + else { + var_r27 = 0; + } + if ((var_r27 != -1) && (var_r31->unk_58 != var_r27) && (CharModelMotionShiftIDGet(var_r31->unk_38) < 0)) { + var_r31->unk_58 = var_r27; + CharModelMotionShiftSet(var_r31->unk_38, var_r30->motion[var_r31->unk_58], 0.0f, 10.0f, 0); + } + } + if ((var_r31->unk_44 & 0x100) != 0) { + var_r31->unk_34++; + } + else if ((var_r31->unk_44 & 0x200) != 0) { + var_r31->unk_34--; + } + if (var_r31->unk_34 < 1) { + var_r31->unk_34 = 1; + } + else if (var_r31->unk_34 > 3) { + var_r31->unk_34 = 3; + } + switch (var_r31->unk_34) { + case 1: + var_f30 = 12.500001f; + (void)var_f30; + break; + case 2: + var_f30 = 27.916668f; + (void)var_f30; + break; + default: + var_f30 = 41.000004f; + break; + } + if (fabs(var_f30 - var_r31->unk_24) < 1.6666667461395264) { + var_r31->unk_24 = var_f30; + } + else if (var_f30 > var_r31->unk_24) { + var_r31->unk_24 += 1.6666667f; + } + else { + var_r31->unk_24 -= 1.6666667f; + } + var_r30->trans.z -= var_r31->unk_24; + if (fn_1_4070() >= 1) { + if ((var_r31->unk_50 -= var_r31->unk_24) < 0.0f) { + var_r31->unk_50 = 4500.0f - (500.0f * ((frand() & 0x8F) / 128.0f)); + var_f31 = var_r31->unk_18 + lbl_1_data_1DC[frand() & 7]; + fn_1_10F24(var_r31->unk_04, var_f31, var_r30->trans.y - 100.0f, -6000.0f + var_r30->trans.z); + } + if ((var_r31->unk_54 -= var_r31->unk_24) < 0.0f) { + var_r31->unk_54 = 2000.0f; + var_f31 = var_r31->unk_18 + lbl_1_data_1DC[frand() & 7]; + if ((frand() & 1) != 0) { + var_f26 = 350.0f; + } + else { + var_f26 = 500.0f; + } + if (fn_1_4070() == 2) { + fn_1_11648(var_r31->unk_04, var_f31, 50.0f + var_f26, -6000.0f + var_r30->trans.z); + } + } + } + var_r29->unk_10 = var_r30->trans.x - var_r29->unk_0C; + var_r29->unk_0C = var_r30->trans.x; + var_r29->unk_14 = var_r30->trans.z; + if (lbl_1_bss_158 == 0) { + var_r29->unk_18 = var_r30->trans.z; + } + var_r29->unk_1C = var_r31->unk_24; + fn_1_7FFC(var_r31->unk_04, var_r30->trans.z); + CenterM[var_r31->unk_04].x = var_r31->unk_18 + (0.5f * (var_r30->trans.x - var_r31->unk_18)); + CenterM[var_r31->unk_04].z = 950.0f + fn_1_7FBC(var_r31->unk_04); + var_f31 = var_r31->unk_70 * sind(var_r30->rot.y); + var_f31 = var_f31; + var_f29 = var_r31->unk_70 * cosd(var_r30->rot.y); + var_f29 = var_f29; + if (var_r31->unk_00 == 0) { + OSReport("X>%3.3f Z>%3.3f \n", var_f31, var_f29); + } + Hu3DModelPosSet(var_r30->model[1], var_r30->trans.x + var_f31, var_r30->trans.y, var_r30->trans.z + var_f29); + Hu3DModelRotSet(var_r30->model[1], var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); + Hu3DModelPosSet(var_r30->model[2], var_r30->trans.x + var_f31, var_r30->trans.y - 150.0f, var_r30->trans.z + var_f29); + Hu3DModelRotSet(var_r30->model[2], var_r30->rot.x, 180.0f + var_r30->rot.y, var_r30->rot.z); + sp14.x = 0.0f; + sp14.y = 25.0f; + sp14.z = -100.0f; + fn_1_133DC(sp20, &sp14); + sp14.x += var_r30->trans.x; + sp14.y += var_r30->trans.y; + sp14.z += var_r29->unk_18; + fn_1_10540(var_r31->unk_04, 0, sp14.x, sp14.y, sp14.z); + var_f28 = var_r31->unk_24 / 41.000004f; + if (var_f28 < 0.0) { + var_f28 *= -1.0f; + } + fn_1_AEE0(var_r31->unk_04, &sp14, 180.0f + var_r30->rot.y, var_f28); + sp8.x = var_r31->unk_28; + sp8.y = 0.0f; + sp8.z = -var_r31->unk_24; + sp14.x = 0.0f; + sp14.y = 0.0f; + sp14.z = 160.0f; + fn_1_133DC(&sp20[0], &sp14); + sp14.x += var_r30->trans.x; + sp14.y += var_r30->trans.y; + sp14.z += var_r29->unk_18; + fn_1_B570(var_r31->unk_04, &sp14, var_r30->rot.y, var_f28, &sp8); +} + +s32 lbl_1_data_2A4[2] = { 1, 2 }; +Vec lbl_1_data_2AC[7] = { + { -300.0f, 30.000002f, -150.0f }, + { -150.0f, 30.000002f, 0.0f }, + { 150.0f, 30.000002f, 0.0f }, + { 300.0f, 30.000002f, -150.0f }, + { -400.0f, 0.0f, 250.0f }, + { 380.0f, 0.0f, 300.0f }, + { 0.0f, 1.0f, 0.0f }, +}; +Vec2f lbl_1_data_300 = { 0.0f, 0.0f }; +s32 lbl_1_data_308 = 0xFFA040FF; + +void fn_1_E8FC(omObjData *object) +{ + Mtx sp3C; + Vec sp30; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + M430PlayerWork *work; + M430PlayerBss174Struct *var_r29; + s32 var_r28; + + work = object->data; + var_f27 = 180.0f; + var_f31 = 0.0f; + var_f29 = 0.0f; + var_r29 = &lbl_1_bss_174[work->unk_04]; + if ((fn_1_4070() == 2) && (work->unk_08 != 0)) { + fn_1_FC9C(object); + } + if ((s32)work->unk_0E != 0) { + (void)object; + } + else if ((fn_1_4070() == 2) && (fn_1_117A4(work->unk_04, object->trans.x, 50.0f + object->trans.y, object->trans.z, 1) != -1)) { + HuAudFXPlay(7); + var_r29->unk_20++; + } + if (fabs(var_f28 = work->unk_48) < 8.0) { + var_f28 = 0.0f; + } + work->unk_28 *= 0.98f; + work->unk_28 += 0.002625f * var_f28; + if (work->unk_28 < -8.75f) { + work->unk_28 = -8.75f; + } + else if (work->unk_28 > 8.75f) { + work->unk_28 = 8.75f; + } + var_f26 = object->trans.x; + object->trans.x += work->unk_28; + if (object->trans.x > (350.0f + work->unk_18)) { + object->trans.x = 350.0f + work->unk_18; + } + else if (object->trans.x < (work->unk_18 - 350.0f)) { + object->trans.x = work->unk_18 - 350.0f; + } + var_f30 = fabs(0.0033333334f * (object->trans.y - 200.0f)); + var_f31 = 245.0f + (-105.0f * var_f30); + if (object->trans.x > (var_r29->unk_0C + var_f31)) { + object->trans.x = var_r29->unk_0C + var_f31; + } + else if (object->trans.x < (var_r29->unk_0C - var_f31)) { + object->trans.x = var_r29->unk_0C - var_f31; + } + var_f27 = 180.0f; + work->unk_1C = var_f27 - (30.0f * (0.114285715f * (object->trans.x - var_f26))); + object->rot.y = fn_1_13154(work->unk_1C, object->rot.y, 2.5f); + if (fabs(fn_1_1303C(object->rot.y, 180.0f)) < 90.0) { + object->rot.z = 0.5f * (object->rot.y - 180.0f); + } + else { + object->rot.z = 0.5f * object->rot.y; + } + object->trans.z = 300.0f + var_r29->unk_18; + if (var_r29->unk_1C < 18.75f) { + var_f29 = 200.0f; + } + else if (var_r29->unk_1C < 33.333336f) { + var_f29 = 350.0f; + } + else { + var_f29 = 500.0f; + } + var_f30 = work->unk_20 - var_f29; + if (fabs(var_f30) < 1.6666667461395264) { + work->unk_20 = var_f29; + } + else if (var_f30 > 0.0f) { + work->unk_20 -= 1.6666667f; + } + else if (var_f30 < 0.0f) { + work->unk_20 += 1.6666667f; + } + work->unk_10 += (frand() & 3) + 1; + object->trans.y = work->unk_20 + (0.10000000149011612 * (100.0 * sind(work->unk_10))); + mtxRot(&sp3C[0], object->rot.x, object->rot.y, object->rot.z); + sp3C[1][0] *= object->scale.y; + sp3C[1][1] *= object->scale.y; + sp3C[1][2] *= object->scale.z; + sp30.x = 0.0f; + sp30.y = 150.0f; + sp30.z = 50.0f; + fn_1_133DC(&sp3C[0], &sp30); + for (var_r28 = 0; var_r28 < 2; var_r28++) { + Hu3DModelPosSet(object->model[lbl_1_data_2A4[var_r28]], object->trans.x + sp30.x, object->trans.y + sp30.y, object->trans.z + sp30.z); + Hu3DModelRotSet(object->model[lbl_1_data_2A4[var_r28]], object->rot.x, object->rot.y, object->rot.z); + } + sp30.x = 0.0f; + sp30.y = 150.0f; + sp30.z = 50.0f; + fn_1_133DC(&sp3C[0], &sp30); + fn_1_10540(work->unk_04, 1, object->trans.x + sp30.x, object->trans.y + sp30.y, object->trans.z + sp30.z); + fn_1_1058C(work->unk_04, 1.0 - fabs((object->trans.x - var_r29->unk_0C) / var_f31)); +} + +void fn_1_F0D8(omObjData *object) +{ + float var_f31; + float var_f30; + M430PlayerWork *work; + s32 var_r29; + M430PlayerBss174Struct *var_r28; + s32 var_r27; + M430PlayerBss174Struct *var_r26; + + work = object->data; + var_r28 = &lbl_1_bss_174[work->unk_04]; + var_r26 = &lbl_1_bss_174[work->unk_04 ^ 1]; + switch (work->unk_5C) { + case 0: + var_r27 = work->unk_0C + (work->unk_04 * 2); + object->trans.x = lbl_1_data_2AC[var_r27].x; + object->trans.y = lbl_1_data_2AC[var_r27].y; + object->trans.z = lbl_1_data_2AC[var_r27].z + fn_1_7FBC(0); + object->rot.x = object->rot.y = object->rot.z = 0.0f; + object->scale.x = object->scale.y = object->scale.z = 1.0f; + CenterM[0].x = 0.0f; + CenterM[0].z = 750.0f + object->trans.z; + if (work->unk_0C == 0) { + work->unk_58 = 4; + } + else { + work->unk_58 = 1; + } + CharModelMotionSet(work->unk_38, object->motion[work->unk_58]); + Hu3DModelShadowSet(object->model[0]); + if (work->unk_0C == 0) { + Hu3DModelCameraSet(object->model[1], 3); + Hu3DModelAttrReset(object->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelCameraSet(object->model[2], 3); + Hu3DModelAttrReset(object->model[2], HU3D_ATTR_DISPOFF); + work->unk_1C = (180.0f + (40.0f * (0.007874016f * (frand() & 0x7F)))) - 20.0f; + if (work->unk_04 == 0) { + var_r29 = 4; + } + else { + var_r29 = 5; + } + Hu3DModelPosSet(object->model[1], lbl_1_data_2AC[var_r29].x, lbl_1_data_2AC[var_r29].y, lbl_1_data_2AC[var_r29].z + fn_1_7FBC(0)); + Hu3DModelPosSet( + object->model[2], lbl_1_data_2AC[var_r29].x, lbl_1_data_2AC[var_r29].y - 150.0f, lbl_1_data_2AC[var_r29].z + fn_1_7FBC(0)); + Hu3DModelAttrSet(object->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelShadowSet(object->model[1]); + } + if (var_r28->unk_20 > 0) { + work->unk_0E = 3; + } + else { + work->unk_0E = 4; + } + GWPlayerCoinCollectAdd(work->unk_00, var_r28->unk_20); + work->unk_5C++; + break; + case 1: + if (fn_1_4088() == 1) { + if (work->unk_00 == 0) { + if ((var_r28->unk_20 == 0) && (var_r26->unk_20 == 0)) { + HuAudSStreamPlay(4); + } + else { + HuAudSStreamPlay(1); + } + } + if (work->unk_0C == 0) { + if (work->unk_0E == 3) { + work->unk_58 = 5; + } + else { + work->unk_58 = 6; + } + } + else if (work->unk_0E == 3) { + work->unk_58 = 2; + } + else { + work->unk_58 = 3; + } + CharModelMotionShiftSet(work->unk_38, object->motion[work->unk_58], 0.0f, 8.0f, 0); + if (work->unk_0E == 3) { + HuAudCharVoicePlay(work->unk_38, 0x122); + } + work->unk_10 = 0; + work->unk_5C++; + } + break; + case 2: + if (fn_1_F62C(object) != 0) { + fn_1_4100(work->unk_00); + work->unk_5C++; + } + break; + } + if (work->unk_0C == 0) { + var_f31 = -10.0f; + var_f30 = 0.0f; + Hu3DModelRotSet(object->model[1], var_f31, work->unk_1C, var_f30); + Hu3DModelRotSet(object->model[2], var_f31, work->unk_1C, var_f30); + } +} + +s32 fn_1_F62C(omObjData *object) +{ + M430PlayerWork *work = object->data; + s32 var_r30 = 0; + if ((CharModelMotionEndCheck(work->unk_38) != 0) && (CharModelMotionShiftIDGet(work->unk_38) < 0)) { + var_r30 = 1; + } + return var_r30; +} + +void fn_1_F6A0(omObjData *object) +{ + Vec sp38; + float sp30; + float sp28; + float sp20; + float sp18; + float sp10; + float sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + float var_f19; + float var_f18; + M430PlayerWork *work; + s32 var_r29; + s32 var_r28; + M430PlayerBss168Struct *var_r27; + M430PlayerBss174Struct *var_r26; + s32 var_r25; + s32 var_r24; + + work = object->data; + var_r28 = 3; + var_r26 = &lbl_1_bss_174[work->unk_04]; + if (var_r26->unk_08 != 3) { + work->unk_0A = 3; + } + if (--work->unk_74 < 0) { + work->unk_7C = 150.0f * (3 - work->unk_0A) * ((frand() & 0x7F) / 127.0f); + if ((frand() & 1) != 0) { + work->unk_7C *= -1.0f; + } + work->unk_74 = 0x1E + (frand() % 30) + (4 - work->unk_0A) * 0x3C; + } + switch (work->unk_34) { + case 1: + var_f27 = 500.0f; + break; + case 2: + var_f27 = 1500.0f; + break; + default: + var_f27 = 3000.0f; + break; + } + var_r25 = fn_1_111BC(work->unk_04, object->trans.z, &sp38); + var_f30 = sp38.x; + var_f25 = sp38.z; + var_r29 = fn_1_11A1C(work->unk_04, object->trans.z, &sp38); + var_f29 = sp38.x; + var_f28 = sp38.z; + if (var_r29 == work->unk_78) { + var_r29 = fn_1_11A1C(work->unk_04, 100.0f + var_f28, &sp38); + var_f29 = sp38.x; + var_f28 = sp38.z; + } + else if (work->unk_78 == -1) { + var_r24 = fn_1_11A1C(work->unk_04, 100.0f + var_f28, &sp38); + var_f26 = sp38.x; + if (work->unk_0A >= 2) { + if (fabs(var_f29 - object->trans.x) > 300.0) { + if (fabs(var_f26 - object->trans.x) < 300.0) { + if ((fabs(var_f28 - object->trans.z) < 1800.0) && (work->unk_34 == 3)) { + work->unk_78 = var_r29; + var_r29 = var_r24; + var_f29 = var_f26; + } + } + } + } + } + else { + work->unk_78 = -1; + } + if (fabs(var_f25 - object->trans.z) < var_f27) { + if (var_f30 > object->trans.x) { + var_f31 = var_f30 - 200.0f; + } + else { + var_f31 = 200.0f + var_f30; + } + } + else { + if ((fabs(var_f30 - var_f29) > 200.0) || (var_r25 == -1)) { + var_f31 = var_f29; + } + else if ((var_f30 > var_f29) || (var_f30 > (250.0f + work->unk_18))) { + var_f31 = var_f30 - 200.0f; + } + else { + var_f31 = 200.0f + var_f30; + } + } + var_f31 += work->unk_7C; + if (var_f31 > (350.0f + work->unk_18)) { + var_f31 = 350.0f + work->unk_18; + } + else if (var_f31 < (work->unk_18 - 350.0f)) { + var_f31 = work->unk_18 - 350.0f; + } + if (var_r29 != -1) { + var_f31 -= object->trans.x; + if (var_f31 > 30.000002f) { + work->unk_48 = 64.0f; + } + else if (var_f31 < -30.000002f) { + work->unk_48 = -64.0f; + } + var_r27 = fn_1_11B64(var_r29); + if (var_r27 != NULL) { + if (var_r27->unk_14.y > 450.0f) { + var_r28 = 3; + } + else { + var_r28 = 2; + } + } + if (var_r28 > work->unk_34) { + work->unk_44 |= 0x100; + return; + } + if (var_r28 < work->unk_34) { + work->unk_44 |= 0x200; + } + } + else if (var_r28 > work->unk_34) { + work->unk_44 |= 0x100; + } +} + +void fn_1_FC9C(omObjData *object) +{ + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + M430PlayerWork *work; + s32 var_r29; + M430PlayerBss174Struct *var_r28; + s32 var_r27; + + work = object->data; + var_r28 = &lbl_1_bss_174[work->unk_04]; + if (var_r28->unk_08 != 3) { + work->unk_0A = 3; + } + if (--work->unk_74 < 0) { + work->unk_7C = 75.0f * (3 - work->unk_0A) * ((frand() & 0x7F) / 127.0f); + if ((frand() & 1) != 0) { + work->unk_7C *= -1.0f; + } + work->unk_74 = 0x1E + (frand() % 60) + (4 - work->unk_0A) * 0x3C; + } + var_r29 = fn_1_11A1C(work->unk_04, object->trans.z, &sp8); + var_f31 = sp8.x; + var_f30 = sp8.z; + if (var_r29 == work->unk_78) { + var_r29 = fn_1_11A1C(work->unk_04, 100.0f + var_f30, &sp8); + var_f31 = sp8.x; + var_f30 = sp8.z; + } + else if (work->unk_78 == -1) { + var_r27 = fn_1_11A1C(work->unk_04, 100.0f + var_f30, &sp8); + var_f29 = sp8.x; + if (work->unk_0A >= 2) { + if (fabs(var_f31 - object->trans.x) > 300.0) { + if (fabs(var_f29 - object->trans.x) < 300.0) { + if ((fabs(var_f30 - object->trans.z) < 1800.0) && (work->unk_34 == 3)) { + work->unk_78 = var_r29; + var_r29 = var_r27; + var_f31 = var_f29; + } + } + } + } + } + else { + work->unk_78 = -1; + } + var_f31 += work->unk_7C; + if (var_f31 > (350.0f + work->unk_18)) { + var_f31 = 350.0f + work->unk_18; + } + else if (var_f31 < (work->unk_18 - 350.0f)) { + var_f31 = work->unk_18 - 350.0f; + } + if (var_r29 != -1) { + var_f31 -= object->trans.x; + if (var_f31 > 30.000002f) { + work->unk_48 = 64.0f; + return; + } + if (var_f31 < -30.000002f) { + work->unk_48 = -64.0f; + } + } +} + +void fn_1_100A0(void) +{ + M430PlayerBss170Struct *var_r31; + ModelData *var_r30; + s32 var_r29; + s32 var_r28; + void *var_r27; + void *var_r26; + + var_r31 = lbl_1_bss_170 = HuMemDirectMallocNum(HEAP_SYSTEM, 2 * sizeof(M430PlayerBss170Struct), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, 2 * sizeof(M430PlayerBss170Struct)); + for (var_r28 = 0; var_r28 < 2; var_r31++) { + var_r31->unk_00 = var_r28; + var_r31->unk_04 = Hu3DHookFuncCreate(fn_1_10948); + Hu3DModelLayerSet(var_r31->unk_04, 6); + Hu3DModelCameraSet(var_r31->unk_04, 3); + var_r30 = &Hu3DData[var_r31->unk_04]; + var_r30->unk_120 = var_r31; + var_r31->unk_08 = 1; + var_r31->unk_0C = 0.0f; + var_r31->unk_10 = var_r31->unk_14 = var_r31->unk_18 = 0.0f; + var_r31->unk_1C = var_r31->unk_20 = var_r31->unk_24 = 500.0f; + var_r31->unk_28 = var_r31->unk_2C = var_r31->unk_30 = 1000.0f; + var_r31->unk_34 = var_r31->unk_38 = var_r31->unk_3C = 0.0f; + var_r31->unk_40 = var_r31->unk_44 = var_r31->unk_48 = 1000.0f; + var_r31->unk_58 = 0; + var_r31->unk_4C = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC0, MEMORY_DEFAULT_NUM); + memset(var_r31->unk_4C, 0, 0xC0); + var_r31->unk_50 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC0, MEMORY_DEFAULT_NUM); + memset(var_r31->unk_50, 0, 0xC0); + var_r31->unk_54 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x80, MEMORY_DEFAULT_NUM); + memset(var_r31->unk_54, 0, 0x80); + var_r30 = &Hu3DData[var_r31->unk_04]; + var_r27 = HuMemDirectMallocNum(HEAP_DATA, 0x200, var_r30->unk_48); + var_r26 = var_r27; + DCFlushRange(var_r27, 0x200); + GXBeginDisplayList(var_r26, 0x200); + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 0x10); + for (var_r29 = 0; var_r29 < 0x10; var_r29++) { + GXUnknownu16(var_r29); + GXUnknownu16(0); + GXUnknownu16(var_r29); + } + var_r31->unk_5C = GXEndDisplayList(); + var_r31->unk_60 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_5C, var_r30->unk_48); + memcpy(var_r31->unk_60, var_r27, var_r31->unk_5C); + DCFlushRange(var_r31->unk_60, var_r31->unk_5C); + HuMemDirectFree(var_r27); + fn_1_1061C(var_r31); + var_r28++; + } +} + +void fn_1_1033C(void) +{ + float var_f31; + M430PlayerBss170Struct *var_r31; + s32 var_r30; + s32 var_r29; + + for (var_r31 = lbl_1_bss_170, var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) { + if (var_r31->unk_08 != 0) { + var_r31->unk_34 = var_r31->unk_38 = var_r31->unk_3C = 0.0f; + var_r31->unk_40 = var_r31->unk_28 - var_r31->unk_10; + var_r31->unk_44 = var_r31->unk_2C - var_r31->unk_14; + var_r31->unk_48 = var_r31->unk_30 - var_r31->unk_18; + var_f31 = 0.5f * (var_r31->unk_34 + var_r31->unk_40); + var_r31->unk_1C = var_f31 + (var_r31->unk_0C * (var_r31->unk_40 - var_f31)); + var_f31 = 0.5f * (var_r31->unk_38 + var_r31->unk_44); + var_r31->unk_20 = var_f31 + (var_r31->unk_0C * (var_r31->unk_38 - var_f31)); + var_f31 = 0.5f * (var_r31->unk_3C + var_r31->unk_48); + var_r31->unk_24 = var_f31 + (var_r31->unk_0C * (var_r31->unk_3C - var_f31)); + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + var_f31 = var_r30 / 15.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + fn_1_12F20(var_f31, &var_r31->unk_34, &var_r31->unk_1C, &var_r31->unk_40, (float *)&var_r31->unk_4C[var_r30]); + } + fn_1_1061C(var_r31); + Hu3DModelPosSet(var_r31->unk_04, var_r31->unk_10, var_r31->unk_14, var_r31->unk_18); + } + } +} + +void fn_1_1053C(void) { } + +void fn_1_10540(s32 arg0, s32 arg1, float arg8, float arg9, float argA) +{ + M430PlayerBss170Struct *var_r31 = &lbl_1_bss_170[arg0]; + if (arg1 == 0) { + var_r31->unk_10 = arg8; + var_r31->unk_14 = arg9; + var_r31->unk_18 = argA; + return; + } + var_r31->unk_28 = arg8; + var_r31->unk_2C = arg9; + var_r31->unk_30 = argA; +} + +void fn_1_1058C(s32 arg0, float arg8) +{ + M430PlayerBss170Struct *var_r31 = &lbl_1_bss_170[arg0]; + var_r31->unk_0C = arg8; +} + +void fn_1_105B8(s32 arg0) +{ + M430PlayerBss170Struct *var_r31 = &lbl_1_bss_170[arg0]; + if (var_r31->unk_08 != 0) { + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + } + var_r31->unk_08 = 0; +} + +void fn_1_1061C(M430PlayerBss170Struct *var_r31) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f27; + float var_f25; + s32 var_r30; + + var_f27 = 0.0f; + for (var_r30 = 0xF; var_r30 >= 0; var_r30--) { + var_r31->unk_50[var_r30] = var_r31->unk_4C[var_r30]; + var_r31->unk_54[var_r30] = lbl_1_data_300; + if (var_r30 == 0) { + var_f27 = 0.0f; + var_r31->unk_54[var_r30].y = var_f27; + } + else { + var_f31 = var_r31->unk_4C[var_r30 - 1].x - var_r31->unk_4C[var_r30].x; + var_f30 = var_r31->unk_4C[var_r30 - 1].y - var_r31->unk_4C[var_r30].y; + var_f29 = var_r31->unk_4C[var_r30 - 1].z - var_r31->unk_4C[var_r30].z; + var_f25 = sqrtf((var_f29 * var_f29) + ((var_f31 * var_f31) + (var_f30 * var_f30))); + var_f27 -= 0.01f * var_f25; + var_r31->unk_54[var_r30].y = var_f27; + } + } + DCFlushRangeNoSync(var_r31->unk_50, 0xC0); + DCFlushRangeNoSync(var_r31->unk_54, 0x80); + PPCSync(); +} + +void fn_1_10948(ModelData *var_r29, Mtx var_r30) +{ + Mtx sp8; + M430PlayerBss170Struct *var_r31 = var_r29->unk_120; + GXLoadPosMtxImm(var_r30, 0); + PSMTXInvXpose(var_r30, sp8); + GXLoadNrmMtxImm(sp8, 0); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetNumChans(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, 0, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_RASC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG0); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG0); + GXSetChanCtrl(GX_COLOR0A0, GX_TRUE, GX_SRC_VTX, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_SPEC); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + GXSetZCompLoc(0); + GXSetBlendMode(GX_BM_BLEND, GX_BL_ONE, GX_BL_ZERO, GX_LO_NOOP); + GXSetLineWidth(0x10, GX_TO_ZERO); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_POS, var_r31->unk_50, 0xC); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &lbl_1_data_308, 4); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_TEX0, var_r31->unk_54, 8); + GXCallDisplayList(var_r31->unk_60, var_r31->unk_5C); +} + +void fn_1_10B88(void) +{ + M430PlayerBss16CStruct *var_r31; + s32 var_r30; + + var_r31 = lbl_1_bss_16C = HuMemDirectMallocNum(HEAP_SYSTEM, 0x10 * sizeof(M430PlayerBss16CStruct), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, 0x10 * sizeof(M430PlayerBss16CStruct)); + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + var_r31->unk_00 = var_r30; + if (var_r30 == 0) { + var_r31->unk_04 = Hu3DModelCreateFile(0x3D0023); + } + else { + var_r31->unk_04 = Hu3DModelLink(lbl_1_bss_16C[0].unk_04); + } + Hu3DModelLayerSet(var_r31->unk_04, 2); + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_08 = Hu3DModelCreateFile(0x3D0024); + Hu3DModelLayerSet(var_r31->unk_08, 2); + Hu3DModelAttrSet(var_r31->unk_08, HU3D_ATTR_DISPOFF); + var_r31->unk_0C = 0; + var_r31->unk_10 = 0; + var_r31->unk_14 = 0; + var_r31->unk_18 = 0.0f; + var_r31->unk_1C.x = var_r31->unk_1C.y = var_r31->unk_1C.z = 0.0f; + var_r31->unk_28 = var_r31->unk_2C = var_r31->unk_30 = 0.0f; + var_r31->unk_34 = var_r31->unk_38 = var_r31->unk_3C = 1.0f; + } +} + +void fn_1_10D1C(void) +{ + M430PlayerBss16CStruct *var_r31; + s32 var_r30; + M430PlayerBss174Struct *var_r29; + + for (var_r31 = lbl_1_bss_16C, var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (var_r31->unk_10 != 0) { + var_r29 = &lbl_1_bss_174[var_r31->unk_0C]; + switch (var_r31->unk_10) { + case 1: + if (var_r31->unk_1C.y < 0.0f) { + var_r31->unk_1C.y += 1.0f; + } + break; + case 2: + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(var_r31->unk_08, HU3D_ATTR_DISPOFF); + Hu3DMotionTimeSet(var_r31->unk_08, 0.0f); + Hu3DMotionSpeedSet(var_r31->unk_08, 1.0f); + var_r31->unk_10 = 3; + break; + case 3: + break; + } + if (var_r31->unk_1C.z > (1000.0f + var_r29->unk_14)) { + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r31->unk_08, HU3D_ATTR_DISPOFF); + var_r31->unk_10 = 0; + } + Hu3DModelPosSet(var_r31->unk_04, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); + Hu3DModelRotSet(var_r31->unk_04, var_r31->unk_28, var_r31->unk_2C, var_r31->unk_30); + Hu3DModelScaleSet(var_r31->unk_04, var_r31->unk_34, var_r31->unk_38, var_r31->unk_3C); + Hu3DModelPosSet(var_r31->unk_08, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); + Hu3DModelRotSet(var_r31->unk_08, var_r31->unk_28, var_r31->unk_2C, var_r31->unk_30); + Hu3DModelScaleSet(var_r31->unk_08, var_r31->unk_34, var_r31->unk_38, var_r31->unk_3C); + } + } +} + +void fn_1_10F20(void) { } + +s32 fn_1_10F24(s32 var_r29, float sp8, float spC, float sp10) +{ + M430PlayerBss16CStruct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_16C, var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (var_r31->unk_10 == 0) { + break; + } + } + if (var_r30 >= 0x10) { + return -1; + } + if (var_r29 == 0) { + Hu3DModelCameraSet(var_r31->unk_04, 1); + Hu3DModelCameraSet(var_r31->unk_08, 1); + } + else { + Hu3DModelCameraSet(var_r31->unk_04, 2); + Hu3DModelCameraSet(var_r31->unk_08, 2); + } + Hu3DModelAttrReset(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_0C = var_r29; + var_r31->unk_10 = 1; + var_r31->unk_14 = 0; + var_r31->unk_1C.x = sp8; + var_r31->unk_1C.y = spC; + var_r31->unk_1C.z = sp10; + var_r31->unk_28 = var_r31->unk_2C = var_r31->unk_30 = 0.0f; + var_r31->unk_34 = var_r31->unk_38 = var_r31->unk_3C = 1.0f; + Hu3DModelPosSet(var_r31->unk_04, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); + Hu3DModelRotSet(var_r31->unk_04, var_r31->unk_28, var_r31->unk_2C, var_r31->unk_30); + Hu3DModelScaleSet(var_r31->unk_04, var_r31->unk_34, var_r31->unk_38, var_r31->unk_3C); +} + +s32 fn_1_110A8(s32 arg0, float arg8, float arg9, float argA, s32 arg1) +{ + float var_f31; + float var_f30; + M430PlayerBss16CStruct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_16C, var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + if ((var_r31->unk_10 == 1) && (var_r31->unk_0C == arg0)) { + var_f31 = arg8 - var_r31->unk_1C.x; + var_f30 = argA - var_r31->unk_1C.z; + if ((fabs(var_f31) < 50.0) && (fabs(var_f30) < 50.0)) { + break; + } + } + } + if (var_r30 >= 0x20) { + return 0; + } + if (arg1 != 0) { + var_r31->unk_18 = 50.0f; + var_r31->unk_10 = 2; + var_r31->unk_14 = 0; + } + return 1; +} + +s32 fn_1_111BC(s32 arg0, float arg8, Vec *arg1) +{ + float var_f31; + float var_f30; + M430PlayerBss16CStruct *var_r31; + s32 var_r30; + s32 var_r29; + + var_r31 = lbl_1_bss_16C; + var_r29 = -1; + var_f31 = 10000.0f; + arg1->x = arg1->y = arg1->z = 0.0f; + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if ((var_r31->unk_10 == 1) && (var_r31->unk_0C == arg0) && !(var_r31->unk_1C.z > arg8)) { + var_f30 = fabs(var_r31->unk_1C.z - (arg8 - 100.0f)); + if (var_f30 < var_f31) { + var_f31 = var_f30; + var_r29 = var_r30; + } + } + } + if (var_r29 == -1) { + return -1; + } + var_r31 = &lbl_1_bss_16C[var_r29]; + *arg1 = var_r31->unk_1C; + return var_r29; +} + +void fn_1_11314(s32 arg0) +{ + M430PlayerBss16CStruct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_16C, var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if ((var_r31->unk_10 != 0) && (var_r31->unk_0C == arg0)) { + var_r31->unk_10 = 0; + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r31->unk_08, HU3D_ATTR_DISPOFF); + } + } +} + +void fn_1_113AC(void) +{ + M430PlayerBss168Struct *var_r31; + s32 var_r30; + + var_r31 = lbl_1_bss_168 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x20 * sizeof(M430PlayerBss168Struct), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, 0x20 * sizeof(M430PlayerBss168Struct)); + for (var_r30 = 0; var_r30 < 0x20; var_r31++) { + var_r31->unk_00 = var_r30; + if (var_r30 == 0) { + var_r31->unk_04 = Hu3DModelCreateFile(0x3D0022); + } + else { + var_r31->unk_04 = Hu3DModelLink(lbl_1_bss_168[0].unk_04); + } + Hu3DModelLayerSet(var_r31->unk_04, 7); + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_08 = 0; + var_r31->unk_0C = 0; + var_r31->unk_10 = 0; + var_r31->unk_14.x = var_r31->unk_14.y = var_r31->unk_14.z = 0.0f; + var_r31->unk_20.x = var_r31->unk_20.y = var_r31->unk_20.z = 0.0f; + var_r31->unk_2C.x = var_r31->unk_2C.y = var_r31->unk_2C.z = 1.0f; + var_r30++; + } +} + +void fn_1_114F0(void) +{ + M430PlayerBss168Struct *var_r31; + s32 var_r30; + M430PlayerBss174Struct *var_r29; + + for (var_r31 = lbl_1_bss_168, var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + if (var_r31->unk_0C != 0) { + switch (var_r31->unk_0C) { + case 1: + var_r31->unk_20.y += 7.5; + break; + case 2: + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_0C = 0; + break; + } + var_r29 = &lbl_1_bss_174[var_r31->unk_08]; + if (var_r31->unk_14.z > (1000.0f + var_r29->unk_14)) { + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_0C = 0; + } + else { + Hu3DModelPosSet(var_r31->unk_04, var_r31->unk_14.x, var_r31->unk_14.y, var_r31->unk_14.z); + Hu3DModelRotSet(var_r31->unk_04, var_r31->unk_20.x, var_r31->unk_20.y, var_r31->unk_20.z); + Hu3DModelScaleSet(var_r31->unk_04, var_r31->unk_2C.x, var_r31->unk_2C.y, var_r31->unk_2C.z); + } + } + } +} + +void fn_1_11644(void) { } + +s32 fn_1_11648(s32 arg0, float arg1, float arg8, float arg9) +{ + M430PlayerBss168Struct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_168, var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + if (var_r31->unk_0C == 0) { + break; + } + } + if (var_r30 >= 0x20) { + return -1; + } + if (arg0 == 0) { + Hu3DModelCameraSet(var_r31->unk_04, 1); + } + else { + Hu3DModelCameraSet(var_r31->unk_04, 2); + } + Hu3DModelAttrReset(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_08 = arg0; + var_r31->unk_0C = 1; + var_r31->unk_14.x = arg1; + var_r31->unk_14.y = arg8; + var_r31->unk_14.z = arg9; + var_r31->unk_20.x = var_r31->unk_20.y = var_r31->unk_20.z = 0.0f; + var_r31->unk_2C.x = var_r31->unk_2C.y = var_r31->unk_2C.z = 1.0f; + Hu3DModelPosSet(var_r31->unk_04, var_r31->unk_14.x, var_r31->unk_14.y, var_r31->unk_14.z); + Hu3DModelRotSet(var_r31->unk_04, var_r31->unk_20.x, var_r31->unk_20.y, var_r31->unk_20.z); + Hu3DModelScaleSet(var_r31->unk_04, var_r31->unk_2C.x, var_r31->unk_2C.y, var_r31->unk_2C.z); +} + +s32 fn_1_117A4(s32 arg0, float arg8, float arg9, float argA, s32 arg1) +{ + float var_f31; + float var_f30; + float var_f27; + M430PlayerBss168Struct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_168, var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + if ((var_r31->unk_0C == 1) && (var_r31->unk_08 == arg0)) { + var_f31 = var_r31->unk_14.x - arg8; + var_f27 = var_r31->unk_14.y - arg9; + var_f30 = var_r31->unk_14.z - argA; + if ((fabs(var_f27) < 100.0) && (sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)) < 100.0f)) { + break; + } + } + } + if (var_r30 >= 0x20) { + return -1; + } + if (arg1 != 0) { + fn_1_11F90(var_r31->unk_08, var_r31->unk_14.x, var_r31->unk_14.y, var_r31->unk_14.z); + var_r31->unk_0C = 2; + var_r31->unk_10 = 0; + } + return 1; +} + +s32 fn_1_11A1C(s32 arg0, float arg8, Vec *arg1) +{ + float var_f31; + float var_f30; + M430PlayerBss168Struct *var_r31; + s32 var_r30; + s32 var_r29; + + var_r31 = lbl_1_bss_168; + var_r29 = -1; + var_f31 = 10000.0f; + arg1->x = arg1->y = arg1->z = 0.0f; + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + if ((var_r31->unk_0C == 1) && (var_r31->unk_08 == arg0) && !(var_r31->unk_14.z > arg8)) { + var_f30 = fabs(var_r31->unk_14.z - arg8); + if (var_f30 < var_f31) { + var_f31 = var_f30; + var_r29 = var_r30; + } + } + } + if (var_r29 == -1) { + return -1; + } + var_r31 = &lbl_1_bss_168[var_r29]; + *arg1 = var_r31->unk_14; + return var_r29; +} + +M430PlayerBss168Struct *fn_1_11B64(s32 arg0) +{ + if ((arg0 < 0) || (arg0 >= 0x20)) { + return NULL; + } + return &lbl_1_bss_168[arg0]; +} + +void fn_1_11B94(s32 arg0) +{ + M430PlayerBss168Struct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_168, var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + if ((var_r31->unk_0C != 0) && (var_r31->unk_08 == arg0)) { + var_r31->unk_0C = 0; + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + } + } +} + +void fn_1_11C1C(void) +{ + M430PlayerBss164Struct *var_r31; + s32 var_r30; + + var_r31 = lbl_1_bss_164 = HuMemDirectMallocNum(HEAP_SYSTEM, 8 * sizeof(M430PlayerBss164Struct), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, 8 * sizeof(M430PlayerBss164Struct)); + for (var_r30 = 0; var_r30 < 8; var_r30++, var_r31++) { + if (var_r30 == 0) { + var_r31->unk_14 = HuSprAnimRead(HuDataReadNum(0x3D0026, MEMORY_DEFAULT_NUM)); + } + else { + var_r31->unk_14 = lbl_1_bss_164[0].unk_14; + } + var_r31->unk_00 = var_r30; + var_r31->unk_04 = Hu3DParticleCreate(var_r31[0].unk_14, 0x20); + Hu3DModelLayerSet(var_r31->unk_04, 7); + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(var_r31->unk_04, HU3D_ATTR_PARTICLE_KILL); + var_r31->unk_08 = 0; + var_r31->unk_0C = 0; + var_r31->unk_10 = 0; + + var_r31->unk_18.x = var_r31->unk_18.y = var_r31->unk_18.z = 0.0f; + var_r31->unk_24.x = var_r31->unk_24.y = var_r31->unk_24.z = 0.0f; + var_r31->unk_30.x = var_r31->unk_30.y = var_r31->unk_30.z = 1.0f; + } +} + +void fn_1_11D70(void) +{ + M430PlayerBss164Struct *var_r31; + HsfanimStruct01 *var_r30; + ParticleData *var_r29; + s32 var_r28; + s32 var_r27; + M430PlayerBss174Struct *var_r26; + ModelData *var_r25; + s32 var_r24; + + for (var_r31 = lbl_1_bss_164, var_r28 = 0; var_r28 < 8; var_r28++, var_r31++) { + if (var_r31->unk_0C != 0) { + if (var_r31->unk_10 > 1) { + var_r25 = &Hu3DData[var_r31->unk_04]; + var_r29 = var_r25->unk_120; + for (var_r30 = var_r29->unk_48, var_r27 = 0; var_r27 < var_r29->unk_30; var_r27++, var_r30++) { + if (++var_r30->unk00_s16 > var_r30->unk02) { + var_r24 = var_r30->unk40.a - 9; + if (var_r24 < 0) { + var_r30->unk2C = 0.0f; + } + else { + var_r30->unk40.a = var_r24; + } + } + var_r30->unk2C *= 0.975; + var_r30->unk34.x += var_r30->unk08.x; + var_r30->unk34.y += var_r30->unk08.y; + var_r30->unk34.z += var_r30->unk08.z; + var_r30->unk08.y -= 0.3103333379576603; + } + } + var_r26 = &lbl_1_bss_174[var_r31->unk_08]; + var_r31->unk_18.z -= var_r26->unk_1C; + if (++var_r31->unk_10 > 0x78) { + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_0C = 0; + } + else { + Hu3DModelPosSet(var_r31->unk_04, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); + Hu3DModelRotSet(var_r31->unk_04, var_r31->unk_24.x, var_r31->unk_24.y, var_r31->unk_24.z); + Hu3DModelScaleSet(var_r31->unk_04, var_r31->unk_30.x, var_r31->unk_30.y, var_r31->unk_30.z); + } + } + } +} + +void fn_1_11F60(void) +{ + fn_1_133A4(lbl_1_bss_164[0].unk_14); +} + +s32 fn_1_11F90(s32 arg0, float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + M430PlayerBss164Struct *var_r31; + HsfanimStruct01 *var_r30; + s32 var_r29; + ParticleData *var_r28; + ModelData *var_r27; + + for (var_r31 = lbl_1_bss_164, var_r29 = 0; var_r29 < 8; var_r29++, var_r31++) { + if (var_r31->unk_0C == 0) { + break; + } + } + if (var_r29 >= 8) { + return -1; + } + if (arg0 == 0) { + Hu3DModelCameraSet(var_r31->unk_04, 1); + } + else { + Hu3DModelCameraSet(var_r31->unk_04, 2); + } + Hu3DModelAttrReset(var_r31->unk_04, HU3D_ATTR_DISPOFF); + var_r31->unk_08 = arg0; + var_r31->unk_0C = 1; + var_r31->unk_10 = 0; + var_r27 = &Hu3DData[var_r31->unk_04]; + var_r28 = var_r27->unk_120; + var_r28->unk_2C = 1; + for (var_r30 = var_r28->unk_48, var_r29 = 0; var_r29 < var_r28->unk_30; var_r29++, var_r30++) { + var_f30 = (frand() % 30) + 0x4B; + var_f29 = frand() % 360; + var_f27 = sind(var_f30); + var_f28 = cosd(var_f30); + var_f26 = 0.8f + (0.3f * (0.007874016f * (frand() % 255))); + var_f31 = 0.35f; + var_r30->unk08.x = var_f31 * (0.6499999761581421 * (50.0 * (var_f28 * sind(var_f29)))); + var_r30->unk08.y = var_f31 * (50.0f * var_f27 * var_f26); + var_r30->unk08.z = var_f31 * (0.6499999761581421 * (50.0 * (var_f28 * cosd(var_f29)))); + var_r30->unk00 = 0; + var_r30->unk02 = (frand() % 7) + 0xA; + var_r30->unk2C = 45.0f; + var_r30->unk34.x = 0.25f * ((frand() & 0x7F) - 0x40); + var_r30->unk34.y = 0.25f * ((frand() & 0x7F) - 0x40); + var_r30->unk34.z = 0.25f * ((frand() & 0x7F) - 0x40); + var_r30->unk40.r = (frand() % 64) + 0xC0; + var_r30->unk40.g = (frand() % 64) + 0xC0; + var_r30->unk40.b = (frand() % 64) + 0xC0; + var_r30->unk40.a = 0xFF; + } + var_r31->unk_18.x = arg8; + var_r31->unk_18.y = arg9; + var_r31->unk_18.z = argA; + var_r31->unk_24.x = var_r31->unk_24.y = var_r31->unk_24.z = 0.0f; + var_r31->unk_30.x = var_r31->unk_30.y = var_r31->unk_30.z = 1.0f; + Hu3DModelPosSet(var_r31->unk_04, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); + Hu3DModelRotSet(var_r31->unk_04, var_r31->unk_24.x, var_r31->unk_24.y, var_r31->unk_24.z); + Hu3DModelScaleSet(var_r31->unk_04, var_r31->unk_30.x, var_r31->unk_30.y, var_r31->unk_30.z); +} + +void fn_1_12550(s32 arg0) +{ + M430PlayerBss164Struct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_164, var_r30 = 0; var_r30 < 8; var_r30++, var_r31++) { + if (var_r31->unk_0C != 0) { + var_r31->unk_0C = 0; + Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); + } + } +} + +void fn_1_125C4(void) +{ + M430PlayerBss160Struct *var_r31; + s32 var_r30; + s32 var_r29; + + var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 2 * sizeof(M430PlayerBss160Struct), MEMORY_DEFAULT_NUM); + lbl_1_bss_160 = var_r31; + for (var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) { + if (var_r29 == 0) { + var_r31->unk_00 = 0x90; + } + else { + var_r31->unk_00 = 0x1B0; + } + var_r31->unk_04 = 0x198; + var_r31->unk_08 = 0; + var_r31->unk_0C = 0; + var_r31->unk_B8 = 0x15; + var_r31->unk_BC = 0; + for (var_r30 = 0; var_r30 < 6; var_r30++) { + switch (var_r30) { + case 0: + case 1: + var_r31->unk_10[var_r30] = espEntry(0x610033, 1, 0); + espPriSet(var_r31->unk_10[var_r30], 0x40); + var_r31->unk_28[var_r30][0] = (var_r30 * 0x14) + 0xB; + var_r31->unk_28[var_r30][1] = 0; + var_r31->unk_70[var_r30][0] = var_r31->unk_28[var_r30][0] - var_r31->unk_B8; + var_r31->unk_70[var_r30][1] = var_r31->unk_28[var_r30][1] - var_r31->unk_BC; + break; + case 2: + if (var_r29 == 0) { + var_r31->unk_10[var_r30] = espEntry(0x61001B, 1, 0); + } + else { + var_r31->unk_10[var_r30] = espEntry(0x61001C, 1, 0); + } + espPriSet(var_r31->unk_10[var_r30], 0xFF); + var_r31->unk_28[var_r30][0] = 0; + var_r31->unk_28[var_r30][1] = 0; + break; + case 3: + var_r31->unk_10[var_r30] = espEntry(0x61001D, 1, 0); + espPriSet(var_r31->unk_10[var_r30], 0x100); + espTPLvlSet(var_r31->unk_10[var_r30], 0.6000000238418579); + espColorSet(var_r31->unk_10[var_r30], 0, 0, 0); + var_r31->unk_28[var_r30][0] = 0; + var_r31->unk_28[var_r30][1] = 0; + break; + case 4: + var_r31->unk_10[var_r30] = espEntry(0x610008, 1, 0); + espPriSet(var_r31->unk_10[var_r30], 0x80); + var_r31->unk_28[var_r30][0] = -0x21; + var_r31->unk_28[var_r30][1] = 0; + break; + case 5: + var_r31->unk_10[var_r30] = espEntry(0x3D0028, 1, 0); + espPriSet(var_r31->unk_10[var_r30], 0x80); + espZRotSet(var_r31->unk_10[var_r30], 45.0); + var_r31->unk_28[var_r30][0] = -0xA; + var_r31->unk_28[var_r30][1] = 0; + break; + } + espDispOn(var_r31->unk_10[var_r30]); + espDrawNoSet(var_r31->unk_10[var_r30], 0); + espAttrSet(var_r31->unk_10[var_r30], HUSPR_ATTR_NOANIM); + espPosSet(var_r31->unk_10[var_r30], var_r31->unk_00 + var_r31->unk_28[var_r30][0], var_r31->unk_04 + var_r31->unk_28[var_r30][1]); + espBankSet(var_r31->unk_10[var_r30], 0); + } + } + lbl_1_bss_15C = 1; + fn_1_12DF0(0); +} + +void fn_1_129CC(void) +{ + s32 sp8[4]; + float var_f31; + float var_f30; + float var_f29; + M430PlayerBss160Struct *var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + for (var_r31 = lbl_1_bss_160, var_r28 = 0; var_r28 < 2; var_r28++, var_r31++) { + var_r29 = lbl_1_bss_174[var_r28].unk_20; + if (lbl_1_bss_15C != 0) { + if (var_r29 != var_r31->unk_08) { + var_r31->unk_08 = var_r29; + var_r31->unk_0C = 0x14; + } + if (var_r31->unk_0C != 0) { + var_f31 = 1.0 + (0.800000011920929 * sind((180.0f * (var_r31->unk_0C / 20.0f)))); + var_r31->unk_0C--; + } + else { + var_f31 = 1.0f; + } + if ((sp8[0] = var_r29 / 10) > 9) { + sp8[0] = 9; + } + var_r29 -= sp8[0] * 0xA; + sp8[1] = var_r29; + if (var_r29 > 9) { + sp8[1] = 9; + } + for (var_r30 = 0; var_r30 < 6; var_r30++) { + if (var_r30 < 2) { + var_f30 = (var_r31->unk_00 + var_r31->unk_B8) + (var_r31->unk_70[var_r30][0] * var_f31); + var_f29 = (var_r31->unk_04 + var_r31->unk_BC) + (var_r31->unk_70[var_r30][1] * var_f31); + espBankSet(var_r31->unk_10[var_r30], sp8[var_r30]); + espScaleSet(var_r31->unk_10[var_r30], var_f31, var_f31); + } + else { + var_f30 = var_r31->unk_00 + var_r31->unk_28[var_r30][0]; + var_f29 = var_r31->unk_04 + var_r31->unk_28[var_r30][1]; + } + if (sp8[var_r30] < 0) { + sp8[var_r30] = 0; + } + espPosSet(var_r31->unk_10[var_r30], var_f30, var_f29); + } + } + } +} + +void fn_1_12D74(void) +{ + M430PlayerBss160Struct *var_r31; + s32 var_r30; + s32 var_r29; + + for (var_r31 = lbl_1_bss_160, var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) { + for (var_r30 = 0; var_r30 < 6; var_r30++) { + espKill(var_r31->unk_10[var_r30]); + } + } +} + +void fn_1_12DF0(s32 arg0) +{ + M430PlayerBss160Struct *var_r31; + s32 var_r30; + s32 var_r29; + + var_r31 = lbl_1_bss_160; + lbl_1_bss_15C = arg0; + for (var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) { + for (var_r30 = 0; var_r30 < 6; var_r30++) { + if (arg0 != 0) { + espAttrReset(var_r31->unk_10[var_r30], HUSPR_ATTR_DISPOFF); + } + else { + espAttrSet(var_r31->unk_10[var_r30], HUSPR_ATTR_DISPOFF); + } + } + } +} + +float fn_1_12EA8(float arg8, float arg9, float argA, float argB) +{ + float var_f31; + float var_f30; + + var_f31 = 1.0 - arg8; + var_f30 = (argB * (arg8 * arg8)) + ((arg9 * (var_f31 * var_f31)) + (2.0 * (argA * (var_f31 * arg8)))); + return var_f30; +} + +void fn_1_12F20(float arg8, float *var_r3, float *var_r4, float *var_r5, float *var_r6) +{ + s32 var_r31; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + *var_r6++ = fn_1_12EA8(arg8, *var_r3++, *var_r4++, *var_r5++); + } +} + +float fn_1_1303C(float arg8, float arg9) +{ + float var_f31; + + if (arg8 >= 360.0f) { + arg8 -= 360.0f; + } + else if (arg8 < 0.0f) { + arg8 += 360.0f; + } + if (arg9 >= 360.0f) { + arg9 -= 360.0f; + } + else if (arg9 < 0.0f) { + arg9 += 360.0f; + } + var_f31 = arg8 - arg9; + if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } + else if (var_f31 >= 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} + +float fn_1_13154(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f26; + + if (arg8 >= 360.0) { + arg8 -= 360.0; + } + else if (arg8 < 0.0) { + arg8 += 360.0; + } + if (arg9 >= 360.0) { + arg9 -= 360.0; + } + else if (arg9 < 0.0) { + arg9 += 360.0; + } + var_f30 = 360.0 + (arg8 - arg9); + if (fabs(var_f30) >= 360.0) { + var_f30 = fmod(var_f30, 360.0); + } + if (var_f30 < 180.0) { + if (var_f30 <= argA) { + var_f31 = var_f30; + } + else { + var_f31 = argA; + } + } + else if ((360.0 - var_f30) <= argA) { + var_f31 = -(360.0 - var_f30); + } + else { + var_f31 = -argA; + } + var_f31 += arg9; + if (var_f31 >= 360.0) { + var_f31 -= 360.0; + } + else if (var_f31 < 0.0) { + var_f31 += 360.0; + } + return var_f31; +} + +void fn_1_133A4(AnimData *arg0) +{ + arg0->useNum = 0; + HuSprAnimKill(arg0); +} + +void fn_1_133DC(Mtx arg0, Vec *arg1) +{ + Vec sp8; + + sp8.x = (arg0[0][2] * arg1->z) + ((arg0[0][0] * arg1->x) + (arg0[0][1] * arg1->y)); + sp8.y = (arg0[1][2] * arg1->z) + ((arg0[1][0] * arg1->x) + (arg0[1][1] * arg1->y)); + sp8.z = (arg0[2][2] * arg1->z) + ((arg0[2][0] * arg1->x) + (arg0[2][1] * arg1->y)); + *arg1 = sp8; +} From 2455408432817ab0f47dbb9af47aec382a4b3f35 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Fri, 10 Jan 2025 16:20:22 -0800 Subject: [PATCH 111/178] Applying sind/cosd/atan2d macros across the board (#518) --- config/GMPE01_00/rels/m424Dll/symbols.txt | 10 +- include/REL/modeltestDll.h | 5 +- src/REL/instDll/main.c | 4 +- src/REL/m407dll/camera.c | 8 +- src/REL/m407dll/player.c | 6 +- src/REL/m409Dll/main.c | 26 +- src/REL/m412Dll/main.c | 4 +- src/REL/m414Dll/main.c | 6 +- src/REL/m417Dll/player.c | 2 +- src/REL/m417Dll/water.c | 2 +- src/REL/m424Dll/claw.c | 2 +- src/REL/m425Dll/thwomp.c | 2 +- src/REL/m440Dll/main.c | 22 +- src/REL/m440Dll/object.c | 14 +- src/REL/m443Dll/player.c | 4 +- src/REL/m444dll/shadow.c | 4 +- src/REL/m446Dll/camera.c | 4 +- src/REL/m446Dll/card.c | 8 +- src/REL/m446Dll/cursor.c | 4 +- src/REL/m446Dll/player.c | 6 +- src/REL/mentDll/common.c | 6 +- src/REL/modeltestDll/main.c | 46 +- src/REL/modeltestDll/modeltest00.c | 42 +- src/REL/modeseldll/filesel.c | 52 +- src/REL/modeseldll/main.c | 44 +- src/REL/option/record.c | 6 +- src/REL/resultDll/battle.c | 4 +- src/REL/resultDll/main.c | 46 +- src/REL/w03Dll/condor.c | 24 +- src/REL/w03Dll/mg_coin.c | 18 +- src/REL/w03Dll/mg_item.c | 10 +- src/REL/w03Dll/river.c | 8 +- src/REL/w03Dll/statue.c | 7 +- src/REL/w05Dll/dolphin.c | 18 +- src/REL/w05Dll/hotel.c | 10 +- src/REL/w05Dll/mg_coin.c | 7 +- src/REL/w05Dll/mg_item.c | 10 +- src/game/board/basic_space.c | 8 +- src/game/board/block.c | 6 +- src/game/board/bowser.c | 2907 +++++++++--------- src/game/board/main.c | 3340 ++++++++++----------- src/game/board/mg_setup.c | 16 +- src/game/board/mushroom.c | 2 +- src/game/board/start.c | 13 +- src/game/board/warp.c | 6 +- src/game/hsfex.c | 18 +- src/game/objsysobj.c | 28 +- 47 files changed, 3431 insertions(+), 3414 deletions(-) diff --git a/config/GMPE01_00/rels/m424Dll/symbols.txt b/config/GMPE01_00/rels/m424Dll/symbols.txt index 8d4a83df..8320af0c 100644 --- a/config/GMPE01_00/rels/m424Dll/symbols.txt +++ b/config/GMPE01_00/rels/m424Dll/symbols.txt @@ -281,14 +281,14 @@ lbl_1_data_21C = .data:0x0000021C; // type:object size:0xC0 lbl_1_data_2DC = .data:0x000002DC; // type:object size:0xC lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x24 lbl_1_data_30C = .data:0x0000030C; // type:object size:0xC data:4byte -lbl_1_data_318 = .data:0x00000318; // type:object size:0x6 data:string -lbl_1_data_31E = .data:0x0000031E; // type:object size:0x6 data:string -lbl_1_data_324 = .data:0x00000324; // type:object size:0x6 data:string +lbl_1_data_318 = .data:0x00000318; // type:object size:0x6 scope:local data:string +lbl_1_data_31E = .data:0x0000031E; // type:object size:0x6 scope:local data:string +lbl_1_data_324 = .data:0x00000324; // type:object size:0x6 scope:local data:string jumptable_1_data_32C = .data:0x0000032C; // type:object size:0x40 scope:local lbl_1_data_36C = .data:0x0000036C; // type:object size:0x20 lbl_1_data_38C = .data:0x0000038C; // type:object size:0x20 -lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x19 data:string -lbl_1_data_3C5 = .data:0x000003C5; // type:object size:0x5 data:string +lbl_1_data_3AC = .data:0x000003AC; // type:object size:0x19 scope:local data:string +lbl_1_data_3C5 = .data:0x000003C5; // type:object size:0x5 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 scope:local data:float lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte diff --git a/include/REL/modeltestDll.h b/include/REL/modeltestDll.h index d0b4ccc3..f2dd081e 100644 --- a/include/REL/modeltestDll.h +++ b/include/REL/modeltestDll.h @@ -5,12 +5,13 @@ #include "game/objsub.h" #include "game/object.h" +#include "ext_math.h" + // -------------------------------------------------------------------------- // #define US_PER_60TH_SEC (1000000.0f / 60.0f) #define US_TO_60TH_SEC(us) ((us) / US_PER_60TH_SEC) #define FB_SIZE(width, height) width * height * 2 -#define ABS(x) ((x) < 0 ? -(x) : (x)) // -------------------------------------------------------------------------- // @@ -44,4 +45,4 @@ omObjFunc2 fn_1_F9C; #endif -// -------------------------------------------------------------------------- // \ No newline at end of file +// -------------------------------------------------------------------------- // diff --git a/src/REL/instDll/main.c b/src/REL/instDll/main.c index 45308b70..5bfac016 100644 --- a/src/REL/instDll/main.c +++ b/src/REL/instDll/main.c @@ -495,7 +495,7 @@ static void fn_1_17E4(void) CharModelMotionShiftSet(char_tbl[j], mot_tbl[j][0], 0, 10, HU3D_MOTATTR_LOOP); } if (time <= 20) { - Hu3DModelPosSet(player_mdl[j], player_pos[j].x, player_pos[j].y + (1000.0 * cos(M_PI * (time * 4.5f) / 180.0)), player_pos[j].z); + Hu3DModelPosSet(player_mdl[j], player_pos[j].x, player_pos[j].y + 1000.0 * cosd(time * 4.5f), player_pos[j].z); time -= 10; if (time >= 0) { tplvl = 0.1 * time; @@ -1081,7 +1081,7 @@ static void fn_1_50B0(ModelData *model, Mtx mtx) target.y = 415.0f; pos.x = (sind(lbl_1_bss_40[0].y) * cosd(lbl_1_bss_40[0].x) * lbl_1_bss_20[0]) + lbl_1_bss_28[0].x; pos.y = (-sind(lbl_1_bss_40[0].x) * lbl_1_bss_20[0]) + lbl_1_bss_28[0].y; - pos.z = (cos(M_PI * lbl_1_bss_40[0].y / 180.0) * cosd(lbl_1_bss_40[0].x) * lbl_1_bss_20[0]) + lbl_1_bss_28[0].z; + pos.z = (cosd(lbl_1_bss_40[0].y) * cosd(lbl_1_bss_40[0].x) * lbl_1_bss_20[0]) + lbl_1_bss_28[0].z; up.x = -sind(lbl_1_bss_40[0].y); up.z = -cosd(lbl_1_bss_40[0].y); up.y = 0; diff --git a/src/REL/m407dll/camera.c b/src/REL/m407dll/camera.c index 20d3d4db..69d04b85 100644 --- a/src/REL/m407dll/camera.c +++ b/src/REL/m407dll/camera.c @@ -1,7 +1,7 @@ #include "game/process.h" #include "game/object.h" #include "game/hsfdraw.h" -#include "math.h" +#include "ext_math.h" typedef struct unkDominationData2 { /* 0x00 */ s32 unk_00; @@ -128,16 +128,16 @@ void fn_1_2024(omObjData* arg0) { } break; case 2: - var_f31 = sin((M_PI * (90.0f * temp_r31->unk_44)) / 180.0); + var_f31 = sind(90.0f * temp_r31->unk_44); break; case 3: - var_f31 = sin((M_PI * (90.0f * temp_r31->unk_44)) / 180.0); + var_f31 = sind(90.0f * temp_r31->unk_44); if (temp_r31->unk_48 > 0.5) { temp_r31->unk_00 = 4; } break; case 4: - var_f31 = sin((M_PI * (90.0f * temp_r31->unk_44)) / 180.0); + var_f31 = sind(90.0f * temp_r31->unk_44); var_f31 *= var_f31; break; } diff --git a/src/REL/m407dll/player.c b/src/REL/m407dll/player.c index 395fb157..725f71bd 100644 --- a/src/REL/m407dll/player.c +++ b/src/REL/m407dll/player.c @@ -467,8 +467,8 @@ void fn_1_DB4(omObjData *arg0) temp_r31->unk_20++; } - temp_f31 = (32.0f * sin(1.0471975511965976)) - (9.8f * temp_r31->unk_24); - temp_f30 = 22.0f * cos(1.0471975511965976); + temp_f31 = 32.0f * sin(M_PI / 3) - 9.8f * temp_r31->unk_24; + temp_f30 = 22.0f * cos(M_PI / 3); temp_r31->unk_18 = temp_r31->unk_18 + temp_f30; temp_r31->unk_14 = temp_r31->unk_14 + temp_f31; temp_r31->unk_24 += 0.3f; @@ -514,7 +514,7 @@ void fn_1_1074(omObjData *arg0) temp_r31->unk_20 = 1; } - temp_r31->unk_14 = (temp_r31->unk_14 + ((80.0 * sin(1.5707963267948966)) - (9.8 * temp_r31->unk_24))); + temp_r31->unk_14 += 80.0 * sin(M_PI / 2) - 9.8 * temp_r31->unk_24; temp_r31->unk_24 += 0.3f; if (!(temp_r31->unk_14 < 1000.0f)) { diff --git a/src/REL/m409Dll/main.c b/src/REL/m409Dll/main.c index 3e51e855..a1ee937d 100644 --- a/src/REL/m409Dll/main.c +++ b/src/REL/m409Dll/main.c @@ -132,7 +132,7 @@ s8 fn_1_524(void) var_r30 = 1; } var_f30 = lbl_1_bss_2 / 300.0f; - temp_f31 = (sin((M_PI * (90.0f * var_f30)) / 180.0) * sin((M_PI * (90.0f * var_f30)) / 180.0)); + temp_f31 = sind(90.0f * var_f30) * sind(90.0f * var_f30); CZoom = fn_1_4120(var_r31[0].zoom, var_r31[1].zoom, var_r31[2].zoom, temp_f31); Center.x = fn_1_4120(var_r31[0].center.x, var_r31[1].center.x, var_r31[2].center.x, temp_f31); Center.y = fn_1_4120(var_r31[0].center.y, var_r31[1].center.y, var_r31[2].center.y, temp_f31); @@ -157,8 +157,8 @@ s8 fn_1_524(void) Hu3DTexScrollPosMoveSet(lbl_1_bss_24.unkC, -0.0001f - (0.005f * temp_f31), 0.0f, 0.0f); Hu3DTexScrollPosMoveSet(lbl_1_bss_24.unkE, -0.0002f - (0.005f * temp_f31), 0.0f, 0.0f); Hu3DTexScrollPosMoveSet(lbl_1_bss_24.unk10, -0.0003f - (0.005f * temp_f31), 0.0f, 0.0f); - sp8.x = -(sin((M_PI * CRot.y) / 180.0) * cosd(CRot.x)); - sp8.y = sin((M_PI * CRot.x) / 180.0); + sp8.x = -(sind(CRot.y) * cosd(CRot.x)); + sp8.y = sind(CRot.x); sp8.z = -(cosd(CRot.y) * cosd(CRot.x)); HuAudFXListnerUpdate(&Hu3DCamera->pos, &sp8); return var_r30; @@ -178,7 +178,7 @@ s8 fn_1_B80(void) var_r30 = 1; } temp_f30 = lbl_1_bss_4 / 60.0f; - temp_f31 = (sin((M_PI * (90.0f * temp_f30)) / 180.0) * sin((M_PI * (90.0f * temp_f30)) / 180.0)); + temp_f31 = sind(90.0f * temp_f30) * sind(90.0f * temp_f30); CZoom = var_r31[0].zoom + (temp_f31 * (var_r31[1].zoom - var_r31[0].zoom)); Center.x = var_r31[0].center.x + (temp_f31 * (var_r31[1].center.x - var_r31[0].center.x)); Center.y = var_r31[0].center.y + (temp_f31 * (var_r31[1].center.y - var_r31[0].center.y)); @@ -300,20 +300,20 @@ s8 fn_1_10E8(omObjData *object) else if (lbl_1_bss_C > 0.2f) { lbl_1_bss_A = 1; } - var_f31 = sin((M_PI * (90.0f * lbl_1_bss_C)) / 180.0); + var_f31 = sind(90.0f * lbl_1_bss_C); var_f27 = 1520.0f; var_f26 = -1030.0f; temp_f30 = var_f27 + (var_f31 * (var_f26 - var_f27)); Hu3DModelPosSet(lbl_1_bss_DC->model[4], temp_f30, 0.0f, -1200.0f); Hu3DModelPosSet(lbl_1_bss_DC->model[1], temp_f30, 0.0f, -1200.0f); - if ((lbl_1_data_BC + 0x10000) != 0xFFFF) { + if (lbl_1_data_BC != ~0) { sp8.x = temp_f30; sp8.y = 0.0f; sp8.z = -1200.0f; HuAudFXEmiterUpDate(lbl_1_data_BC, &sp8); } var_f31 = 1.2f * lbl_1_bss_C; - if ((var_f31 >= 1.0f) && ((lbl_1_data_BC + 0x10000) != 0xFFFF)) { + if ((var_f31 >= 1.0f) && lbl_1_data_BC != ~0) { HuAudFXEmiterPlay(0x555, &sp8); sp8.x += 200.0f; HuAudFXEmiterPlay(0x55E, &sp8); @@ -324,7 +324,7 @@ s8 fn_1_10E8(omObjData *object) var_f31 = 0.0f; } else { - var_f31 = sin((M_PI * (90.0f + (90.0f * var_f31))) / 180.0); + var_f31 = sind(90.0f + 90.0f * var_f31); } Hu3DMotionSpeedSet(lbl_1_bss_DC->model[4], 2.0f * var_f31); if (lbl_1_bss_C > 0.5f) { @@ -455,7 +455,7 @@ void fn_1_2098(omObjData *object) Hu3DModelAttrSet(lbl_1_bss_DC->model[4], HU3D_ATTR_DISPOFF); lbl_1_bss_18 = 1.0f; } - var_f31 = sin((M_PI * (90.0f * lbl_1_bss_18)) / 180.0); + var_f31 = sind(90.0f * lbl_1_bss_18); var_f29 = -1030.0f; var_f28 = -1880.0f; var_f30 = var_f29 + (var_f31 * (var_f28 - var_f29)); @@ -684,7 +684,7 @@ void fn_1_2DCC(omObjData *object) Hu3DModelAttrReset(var_r31->unk6, HU3D_ATTR_DISPOFF); } var_r31->unk10 += var_f30; - var_f31 = sin((M_PI * (90.0f * var_r31->unk10)) / 180.0); + var_f31 = sind(90.0f * var_r31->unk10); if (var_r31->unk10 >= 1.0f) { var_f31 = 1.0f; var_r31->unk10 = var_f31; @@ -728,7 +728,7 @@ void fn_1_2DCC(omObjData *object) } Hu3DModelPosSet(var_r31->unk6, 70.0f + temp_r30->pos.x, 290.0f, -1200.0f); Hu3DData[var_r31->unk4].pos.x = temp_r30->pos.x; - var_f31 = (0.800000011920929 * sin((M_PI * (180.0f * var_r31->unk10)) / 180.0)); + var_f31 = 0.8f * sind(180.0f * var_r31->unk10); Hu3DMotionSpeedSet(var_r31->unk2, var_f31); } } @@ -948,7 +948,7 @@ void fn_1_44F0(s16 arg0, f32 arg8, f32 arg9, f32 argA, s8 arg1, s16 arg2) return; temp_f31 = (((rand8() << 8) | rand8()) % 361); - var_r31->unk0.x = (2.0 + (3.0 * sin((M_PI * temp_f31) / 180.0))); + var_r31->unk0.x = 2.0 + (3.0 * sind(temp_f31)); var_r31->unk0.y = (0.1f * ((((rand8() << 8) | rand8()) % 31) + 40)); var_r31->unk0.z = (3.5 * cosd(temp_f31)); var_r31->unk28 = 0; @@ -1012,7 +1012,7 @@ void fn_1_4FFC(s16 arg0, f32 arg1, f32 arg2, f32 arg3, s16 arg4) temp_f31 = ((((rand8() << 8) | rand8()) % 81) - 40); temp_r31->unk0.x = (13.0 * cosd(temp_f31)); temp_r31->unk0.y = 0.1f * ((((rand8() << 8) | rand8()) % 21) + 20); - temp_r31->unk0.z = (9.0 * sin((M_PI * temp_f31) / 180.0)); + temp_r31->unk0.z = (9.0 * sind(temp_f31)); temp_r31->unkC.x = (0.05f * temp_r31->unk0.x); temp_r31->unkC.z = (0.05f * temp_r31->unk0.z); temp_r31->unk18 = 500.0f; diff --git a/src/REL/m412Dll/main.c b/src/REL/m412Dll/main.c index 1cad6746..d71592b2 100644 --- a/src/REL/m412Dll/main.c +++ b/src/REL/m412Dll/main.c @@ -81,8 +81,8 @@ void ObjectSetup(void) temp_f29 = lbl_1_bss_268.y; temp_f31 = lbl_1_bss_268.z; lbl_1_bss_774 = sqrtf((temp_f31 * temp_f31) + ((temp_f30 * temp_f30) + (temp_f29 * temp_f29))); - lbl_1_bss_778 = fn_1_1D08((180.0 * (atan2(temp_f30, temp_f31) / M_PI))); - lbl_1_bss_77C = fn_1_1D08((180.0 * (atan2(temp_f29, temp_f31) / M_PI))); + lbl_1_bss_778 = fn_1_1D08(atan2d(temp_f30, temp_f31)); + lbl_1_bss_77C = fn_1_1D08(atan2d(temp_f29, temp_f31)); lbl_1_bss_77C = 50.0f; Hu3DLighInit(); lbl_1_bss_7A0 = Hu3DGLightCreate(10000.0f, 0.0f, 10000.0f, -1.0f, 0.0f, -1.0f, 0xFFU, 0xFFU, 0xFFU); diff --git a/src/REL/m414Dll/main.c b/src/REL/m414Dll/main.c index 8e7bc1f0..8ca555e6 100644 --- a/src/REL/m414Dll/main.c +++ b/src/REL/m414Dll/main.c @@ -1156,9 +1156,9 @@ void fn_1_42AC(void) var_f23 = -200.0 * (cos(0.0) * cosd(lbl_1_bss_920[var_r27])); } else { - var_f24 = -200.0 * (sind(lbl_1_bss_920[var_r27]) * cos(0.3490658503988659)); - var_f26 = 150.0 + (-200.0 * sin(-0.3490658503988659)); - var_f23 = -200.0 * (cos(-0.3490658503988659) * cosd(lbl_1_bss_920[var_r27])); + var_f24 = -200.0 * (sind(lbl_1_bss_920[var_r27]) * cosd(20)); + var_f26 = 150.0 + -200.0 * sind(-20); + var_f23 = -200.0 * (cosd(-20) * cosd(lbl_1_bss_920[var_r27])); } if (!lbl_1_bss_938[var_r30->unk_04]) { var_f26 += 70.0f; diff --git a/src/REL/m417Dll/player.c b/src/REL/m417Dll/player.c index cc740d0e..ca8f7206 100644 --- a/src/REL/m417Dll/player.c +++ b/src/REL/m417Dll/player.c @@ -856,7 +856,7 @@ void fn_1_9C14(omObjData *object) return; } PSQUATNormalize(&var_r31->unk_194, &sp28); - if (sp28.w < cos(0.4363323129985824)) { + if (sp28.w < cosd(25)) { var_r31->unk_3C = 1; } } diff --git a/src/REL/m417Dll/water.c b/src/REL/m417Dll/water.c index 7f7bd933..4313fa29 100644 --- a/src/REL/m417Dll/water.c +++ b/src/REL/m417Dll/water.c @@ -326,7 +326,7 @@ void fn_1_3D58(omObjData *object) var_r28->y = 0.0f; var_r28->z = var_f29; } - var_f29 += (var_f28 * sin(1.0471975511965976)); + var_f29 += var_f28 * sind(60); } var_r28 = lbl_1_bss_178.unk_2C; var_r30 = 0; diff --git a/src/REL/m424Dll/claw.c b/src/REL/m424Dll/claw.c index 578750ce..752b4afb 100644 --- a/src/REL/m424Dll/claw.c +++ b/src/REL/m424Dll/claw.c @@ -164,7 +164,7 @@ void fn_1_94D0(omObjData* arg0) { var_r31->unk170 = -1; var_r31->unk174 = lbl_1_data_30C; // @todo how did this happen - var_r31->unk180 = (180.0 * (atan2(-102.864990234375, 424.559997558593750) / M_PI)); + var_r31->unk180 = atan2d(-102.864990234375, 424.559997558593750); if (var_r31->unk180 < 0.0f) { var_r31->unk180 += 360.0f; } diff --git a/src/REL/m425Dll/thwomp.c b/src/REL/m425Dll/thwomp.c index 0a320286..a47e9bd9 100644 --- a/src/REL/m425Dll/thwomp.c +++ b/src/REL/m425Dll/thwomp.c @@ -1477,7 +1477,7 @@ s32 fn_1_6EC4(float var_f24, float sp8, s16 var_r22, s16 var_r24) var_r31->unk_18C[var_r30].x = -(sp24 * var_r31->unk_17C[var_r30].x); var_r31->unk_18C[var_r30].z = -(sp24 * var_r31->unk_17C[var_r30].z); var_r31->unk_18C[var_r30].y = 0.0; - var_f27 = 180.0 + (180.0 * (atan2(var_r31->unk_17C[var_r30].x, var_r31->unk_17C[var_r30].z) / 3.141592653589793)); + var_f27 = 180.0 + atan2d(var_r31->unk_17C[var_r30].x, var_r31->unk_17C[var_r30].z); if (var_f27 > 360.0f) { var_f27 = fmod(var_f27, 360.0); } diff --git a/src/REL/m440Dll/main.c b/src/REL/m440Dll/main.c index e6c29642..d7653b96 100644 --- a/src/REL/m440Dll/main.c +++ b/src/REL/m440Dll/main.c @@ -125,7 +125,7 @@ s32 fn_1_4A4(void) var_r30 = 1; } - var_f31 = (sin((M_PI * (90.0f * var_f31)) / 180.0) * sin((M_PI * (90.0f * var_f31)) / 180.0)); + var_f31 = sind(90.0f * var_f31) * sind(90.0f * var_f31); CZoom = fn_1_93C0(var_r31[0].zoom, var_r31[1].zoom, var_f31); Center.x = fn_1_93C0(var_r31[0].center.x, var_r31[1].center.x, var_f31); Center.y = fn_1_93C0(var_r31[0].center.y, var_r31[1].center.y, var_f31); @@ -152,7 +152,7 @@ s32 fn_1_6C8(void) var_r30 = 1; } - var_f31 = (sin((M_PI * (90.0f * var_f31)) / 180.0) * sin((M_PI * (90.0f * var_f31)) / 180.0)); + var_f31 = (sind(90.0f * var_f31) * sind(90.0f * var_f31)); CZoom = fn_1_93C0(var_r31[0].zoom, var_r31[1].zoom, var_f31); Center.x = fn_1_93C0(var_r31[0].center.x, var_r31[1].center.x, var_f31); Center.y = fn_1_93C0(var_r31[0].center.y, var_r31[1].center.y, var_f31); @@ -282,7 +282,7 @@ u8 fn_1_E14(omObjData *arg0) var_f31 = 1.0f; var_r30 = 1; } - var_f31 = (sin((M_PI * (90.0f * var_f31)) / 180.0) * sin((M_PI * (90.0f * var_f31)) / 180.0)); + var_f31 = (sind(90.0f * var_f31) * sind(90.0f * var_f31)); CZoom = fn_1_93C0(var_r31[0].zoom, var_r31[1].zoom, var_f31); Center.x = fn_1_93C0(var_r31[0].center.x, var_r31[1].center.x, var_f31); Center.y = fn_1_93C0(var_r31[0].center.y, var_r31[1].center.y, var_f31); @@ -338,7 +338,7 @@ u8 fn_1_1138(omObjData *object) var_f31 = 1.0f; var_r28 = 1; } - var_f31 = (sin((M_PI * (90.0f * var_f31)) / 180.0) * sin((M_PI * (90.0f * var_f31)) / 180.0)); + var_f31 = (sind(90.0f * var_f31) * sind(90.0f * var_f31)); CZoom = fn_1_93C0(var_r31[0].zoom, var_r31[1].zoom, var_f31); Center.x = fn_1_93C0(var_r31[0].center.x, var_r31[1].center.x, var_f31); Center.y = fn_1_93C0(var_r31[0].center.y, var_r31[1].center.y, var_f31); @@ -628,8 +628,8 @@ void fn_1_2470(omObjData *arg0) Hu3DModelShadowMapSet(arg0->model[0]); for (var_r30 = 0; var_r30 < 5; var_r30++) { - temp_f31 = (450.0 * cos(M_PI * lbl_1_data_0[var_r30] / 180.0)); - var_f29 = (450.0 * sin(M_PI * lbl_1_data_0[var_r30] / 180.0)); + temp_f31 = 450.0 * cosd(lbl_1_data_0[var_r30]); + var_f29 = 450.0 * sind(lbl_1_data_0[var_r30]); Hu3DModelPosSet(arg0->model[var_r30 + 4], temp_f31, 0.0f, var_f29); var_f30 = 90.0f - lbl_1_data_0[var_r30]; Hu3DModelRotSet(arg0->model[var_r30 + 4], 0.0f, var_f30, 0.0f); @@ -705,7 +705,7 @@ void fn_1_2B04(omObjData *object) fn_1_4EEC(0x20, 0); return; } - temp_f31 = sin((M_PI * (90.0f * temp_f31)) / 180.0); + temp_f31 = sind(90.0f * temp_f31); temp_r31->center.y = (250.0f + (1750.0f * temp_f31)); } Hu3DModelPosSet(object->model[3], temp_r31->center.x, temp_r31->center.y, temp_r31->center.z); @@ -764,7 +764,7 @@ void fn_1_2D28(omObjData *object) if ((11 * REFRESH_RATE_F / 6) == lbl_1_data_F0[0]) { HuAudFXPlay(0x70A); } - var_f31 = sin((M_PI * (90.0f * var_f31)) / 180.0); + var_f31 = sind(90.0f * var_f31); temp_r31->center.y = (2000.0f + (-1750.0f * var_f31)); break; case 0x2: @@ -811,7 +811,7 @@ void fn_1_2D28(omObjData *object) fn_1_4EEC(7, 2); return; } - var_f31 = sin((M_PI * (90.0f * var_f31)) / 180.0); + var_f31 = sind(90.0f * var_f31); temp_r31->center.y = (250.0f + (1750.0f * var_f31)); break; case 0x63: @@ -1030,7 +1030,7 @@ void fn_1_46E0(omObjData *object) fn_1_4EEC(0x18, 0x10); HuAudFXPlay(0x70F); } - var_f31 = sin((M_PI * (90.0f * var_f31)) / 180.0); + var_f31 = sind(90.0f * var_f31); temp_r31->unk24 = (150.0f * var_f31); break; case 0x63: @@ -1090,7 +1090,7 @@ void fn_1_4B44(omObjData *object) lbl_1_data_108[0] = 0; lbl_1_data_104[0]++; } - var_f31 = sin((M_PI * (90.0f * var_f31)) / 180.0); + var_f31 = sind(90.0f * var_f31); temp_r31->unk24 = (150.0f + (-150.0f * var_f31)); break; case 1: diff --git a/src/REL/m440Dll/object.c b/src/REL/m440Dll/object.c index 941f1463..00d59251 100644 --- a/src/REL/m440Dll/object.c +++ b/src/REL/m440Dll/object.c @@ -255,7 +255,7 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) arg1->unk18.z = (700.0 * sind(lbl_1_data_250)); var_f29 = (arg1->unk18.x - arg1->unk24.x); var_f28 = (arg1->unk18.z - arg1->unk24.z); - var_f30 = (180.0 * (atan2(var_f29, var_f28) / M_PI)); + var_f30 = atan2d(var_f29, var_f28); if (var_f30 < 0.0f) { var_f30 += 360.0f; } @@ -310,7 +310,7 @@ void fn_1_B884(omObjData *arg0, unkObjStruct *arg1) arg1->unk18.z = (arg1->unk5C * sind(lbl_1_data_250)); var_f29 = (arg1->unk18.x - arg1->unk24.x); var_f28 = (arg1->unk18.z - arg1->unk24.z); - var_f30 = (180.0 * (atan2(var_f29, var_f28) / M_PI)); + var_f30 = atan2d(var_f29, var_f28); if (var_f30 < 0.0f) { var_f30 += 360.0f; } @@ -551,7 +551,7 @@ void fn_1_C944(omObjData *arg0, unkObjStruct *arg1) arg1->unk48 = arg1->unk48 & ~4; var_f26 = (arg1->unk18.x - arg1->unk24.x); var_f25 = (arg1->unk18.z - arg1->unk24.z); - var_f29 = (180.0 * (atan2(var_f26, var_f25) / M_PI)); + var_f29 = atan2d(var_f26, var_f25); if (var_f29 < 0.0f) { var_f29 += 360.0f; } @@ -920,7 +920,7 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) arg1->unk18.z = (arg1->unk5C * sind(lbl_1_bss_84)); var_f29 = (arg1->unk18.x - arg1->unk24.x); var_f28 = (arg1->unk18.z - arg1->unk24.z); - var_f30 = (180.0 * (atan2(var_f29, var_f28) / M_PI)); + var_f30 = atan2d(var_f29, var_f28); if (var_f30 < 0.0f) { var_f30 += 360.0f; } @@ -949,8 +949,8 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) arg1->unk60++; } var_f29 = arg1->unk5C + ((700.0f - arg1->unk5C) * var_f31); - arg1->unk18.x = (var_f29 * cos(2.356194490192345)); // atan2(1.0, -1.0) - arg1->unk18.z = (var_f29 * sin(2.356194490192345)); + arg1->unk18.x = var_f29 * cosd(135); + arg1->unk18.z = var_f29 * sind(135); var_f29 = 0.3f; var_f28 = 0.6f; if (var_f31 >= var_f29) { @@ -978,7 +978,7 @@ void fn_1_E034(omObjData *arg0, unkObjStruct *arg1) arg1->unk18.z = (700.0 * sind(lbl_1_bss_84)); var_f29 = (arg1->unk18.x - arg1->unk24.x); var_f28 = (arg1->unk18.z - arg1->unk24.z); - var_f30 = (180.0 * (atan2(var_f29, var_f28) / M_PI)); + var_f30 = atan2d(var_f29, var_f28); if (var_f30 < 0.0f) { var_f30 += 360.0f; } diff --git a/src/REL/m443Dll/player.c b/src/REL/m443Dll/player.c index a55b2d0c..ee7e5237 100644 --- a/src/REL/m443Dll/player.c +++ b/src/REL/m443Dll/player.c @@ -355,8 +355,8 @@ void fn_1_5BD4(omObjData *object) var_f30 = 0.0f; } var_f30 = var_f30 * var_f30; - sp8.x = 320.0 + (160.0 * (var_f31 * cos(M_PI * ((450.0f * var_f31) + (90.0f * object->work[0])) / 180.0))); - sp8.y = 240.0 + (120.0 * (var_f31 * sin(M_PI * ((450.0f * var_f31) + (90.0f * object->work[0])) / 180.0))); + sp8.x = 320.0 + 160.0 * (var_f31 * cosd(450.0f * var_f31 + 90.0f * object->work[0])); + sp8.y = 240.0 + 120.0 * (var_f31 * sind(450.0f * var_f31 + 90.0f * object->work[0])); temp_r31->unk100->unk_44 = sp8.x + (var_f30 * (temp_r31->unk100->unk_78 - sp8.x)); temp_r31->unk100->unk_48 = sp8.y + (var_f30 * (temp_r31->unk100->unk_7C - sp8.y)); temp_r31->unk100->unk_40 = 0.01f + ((temp_r31->unk100->unk_80 - 0.01f) * var_f31); diff --git a/src/REL/m444dll/shadow.c b/src/REL/m444dll/shadow.c index 676458bf..9351f3e6 100644 --- a/src/REL/m444dll/shadow.c +++ b/src/REL/m444dll/shadow.c @@ -49,8 +49,8 @@ void fn_1_D9F4(s16 arg0) sp10.y = 1.0f; C_MTXLookAt(sp34, &sp28, &sp10, &sp1C); GXLoadPosMtxImm(sp34, 0); - sp28.x = 1.2000000476837158 * (10000.0 * -sin(var_r31->fov / 2)); - sp28.y = 0.8333333134651184 * (10000.0 * -sin(var_r31->fov / 2)); + sp28.x = 1.2f * (10000.0 * -sin(var_r31->fov / 2)); + sp28.y = (2.5f / 3) * (10000.0 * -sin(var_r31->fov / 2)); GXBegin(GX_QUADS, GX_VTXFMT0, 4); GXPosition3f32(-sp28.x, -sp28.y, -10000.0f); GXPosition3f32(sp28.x, -sp28.y, -10000.0f); diff --git a/src/REL/m446Dll/camera.c b/src/REL/m446Dll/camera.c index ef322bf3..8a49a82f 100644 --- a/src/REL/m446Dll/camera.c +++ b/src/REL/m446Dll/camera.c @@ -51,7 +51,7 @@ void fn_1_68DC(void) { f32 temp_f31; if (lbl_1_bss_38 != 0) { - temp_f31 = sin((M_PI * (90.0f * lbl_1_bss_40)) / 180.0); + temp_f31 = sind(90.0f * lbl_1_bss_40); temp_f31 *= temp_f31; lbl_1_bss_8C.x = lbl_1_bss_54.x + (temp_f31 * (lbl_1_bss_70.x - lbl_1_bss_54.x)); lbl_1_bss_8C.y = lbl_1_bss_54.y + (temp_f31 * (lbl_1_bss_70.y - lbl_1_bss_54.y)); @@ -138,4 +138,4 @@ void fn_1_709C(void) { print8(0x20, 0x84, 1.5f, "LOOKAT : x=%.2f y=%.2f z=%.2f", lbl_1_bss_8C.x, lbl_1_bss_8C.y, lbl_1_bss_8C.z); print8(0x20, 0x94, 1.5f, "ANGLE : x=%.2f y=%.2f z=%.2f", lbl_1_bss_80.x, lbl_1_bss_80.y, lbl_1_bss_80.z); print8(0x20, 0xA4, 1.5f, "ZOOM : %.2f", lbl_1_bss_7C); -} \ No newline at end of file +} diff --git a/src/REL/m446Dll/card.c b/src/REL/m446Dll/card.c index 28b943a1..fa45170f 100644 --- a/src/REL/m446Dll/card.c +++ b/src/REL/m446Dll/card.c @@ -1,7 +1,7 @@ #include "REL/m446Dll.h" #include "game/hsfman.h" -#include "math.h" +#include "ext_math.h" // data m446Func4 lbl_1_data_150[3] = { NULL, fn_1_2AA8, fn_1_2DA8 }; @@ -229,7 +229,7 @@ void fn_1_20D4(void) temp_r31->unk7C--; } else { - temp_f31 = sin((M_PI * (90.0f * temp_r31->unk80)) / 180.0); + temp_f31 = sind(90.0f * temp_r31->unk80); temp_r31->unk10.x = temp_r31->unk1C.x + (temp_f31 * (temp_r31->unk28.x - temp_r31->unk1C.x)); temp_r31->unk10.y = temp_r31->unk1C.y + (temp_f31 * (temp_r31->unk28.y - temp_r31->unk1C.y)); temp_r31->unk10.z = temp_r31->unk1C.z + (temp_f31 * (temp_r31->unk28.z - temp_r31->unk1C.z)); @@ -243,7 +243,7 @@ void fn_1_20D4(void) } } if (temp_r31->unk74 != 0) { - temp_f31 = sin((M_PI * (90.0f * temp_r31->unk88)) / 180.0); + temp_f31 = sind(90.0f * temp_r31->unk88); temp_r31->unk34.x = (temp_r31->unk40.x + (temp_f31 * (temp_r31->unk4C.x - temp_r31->unk40.x))); temp_r31->unk34.y = (temp_r31->unk40.y + (temp_f31 * (temp_r31->unk4C.y - temp_r31->unk40.y))); temp_r31->unk34.z = (temp_r31->unk40.z + (temp_f31 * (temp_r31->unk4C.z - temp_r31->unk40.z))); @@ -256,7 +256,7 @@ void fn_1_20D4(void) } } if (temp_r31->unk78 != 0) { - temp_f31 = sin((M_PI * (90.0f * temp_r31->unk90)) / 180.0); + temp_f31 = sind(90.0f * temp_r31->unk90); temp_r31->unk58 = (temp_r31->unk5C + (temp_f31 * (temp_r31->unk60 - temp_r31->unk5C))); temp_r31->unk90 = (temp_r31->unk90 + temp_r31->unk94); if (temp_r31->unk90 >= 1.0f) { diff --git a/src/REL/m446Dll/cursor.c b/src/REL/m446Dll/cursor.c index 088e6f9f..c57da258 100644 --- a/src/REL/m446Dll/cursor.c +++ b/src/REL/m446Dll/cursor.c @@ -2,7 +2,7 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" -#include "math.h" +#include "ext_math.h" // bss unkStruct3 *lbl_1_bss_98; @@ -42,7 +42,7 @@ void fn_1_7350(void) do { temp_r31 = var_r30->unk0; if (temp_r31->field00_bit1 != 0) { - temp_f31 = sin((M_PI * (90.0f * temp_r31->unk4C)) / 180.0); + temp_f31 = sind(90.0f * temp_r31->unk4C); temp_f31 *= temp_f31; temp_r31->unk20.x = (temp_r31->unk2C.x + (temp_f31 * (temp_r31->unk38.x - temp_r31->unk2C.x))); temp_r31->unk20.y = (temp_r31->unk2C.y + (temp_f31 * (temp_r31->unk38.y - temp_r31->unk2C.y))); diff --git a/src/REL/m446Dll/player.c b/src/REL/m446Dll/player.c index 619176ae..ecf62fa9 100644 --- a/src/REL/m446Dll/player.c +++ b/src/REL/m446Dll/player.c @@ -6,7 +6,7 @@ #include "game/hsfmotion.h" #include "game/objsub.h" #include "game/pad.h" -#include "math.h" +#include "ext_math.h" // cursor.c extern unkStruct7 *m446CursorCreate(s32); @@ -122,7 +122,7 @@ void fn_1_487C(void) lbl_1_data_2DC[temp_r31->unk18](temp_r31); } if (temp_r31->unkB4 != 0) { - temp_f31 = sin((M_PI * (90.0f * temp_r31->unkC0)) / 180.0); + temp_f31 = sind(90.0f * temp_r31->unkC0); temp_f31 *= temp_f31; temp_r31->unk48.x = (temp_r31->unk9C.x + (temp_f31 * (temp_r31->unkA8.x - temp_r31->unk9C.x))); temp_r31->unk48.y = (temp_r31->unk9C.y + (temp_f31 * (temp_r31->unkA8.y - temp_r31->unk9C.y))); @@ -136,7 +136,7 @@ void fn_1_487C(void) } } if (temp_r31->unk98 != 0) { - temp_f31 = sin((M_PI * (90.0f * temp_r31->unkB8)) / 180.0); + temp_f31 = sind(90.0f * temp_r31->unkB8); temp_f31 *= temp_f31; temp_r31->unk54.x = (temp_r31->unk80.x + (temp_f31 * (temp_r31->unk8C.x - temp_r31->unk80.x))); temp_r31->unk54.y = (temp_r31->unk80.y + (temp_f31 * (temp_r31->unk8C.y - temp_r31->unk80.y))); diff --git a/src/REL/mentDll/common.c b/src/REL/mentDll/common.c index 82910c62..77e82ced 100644 --- a/src/REL/mentDll/common.c +++ b/src/REL/mentDll/common.c @@ -109,7 +109,7 @@ f32 fn_1_254(f32 arg8, f32 arg9, f32 argA, f32 argB) if (argA >= argB) { return arg9; } - return (arg8 + ((arg9 - arg8) * (1.0 - cos((M_PI * ((90.0f / argB) * argA)) / 180.0)))); + return (arg8 + ((arg9 - arg8) * (1.0 - cosd((90.0f / argB) * argA)))); } // fn_1_32C @@ -118,7 +118,7 @@ f32 fn_1_32C(f32 arg8, f32 arg9, f32 argA, f32 argB) if (argA >= argB) { return arg9; } - return (arg8 + ((arg9 - arg8) * sin((M_PI * ((90.0f / argB) * argA)) / 180.0))); + return arg8 + (arg9 - arg8) * sind((90.0f / argB) * argA); } f32 fn_1_3F4(f32 arg8, f32 arg9, f32 argA, f32 argB) @@ -126,7 +126,7 @@ f32 fn_1_3F4(f32 arg8, f32 arg9, f32 argA, f32 argB) if (argA >= argB) { return arg8; } - return (arg8 + ((arg9 - arg8) * sin((M_PI * ((360.0f / argB) * argA)) / 180.0))); + return (arg8 + ((arg9 - arg8) * sind((360.0f / argB) * argA))); } void fn_1_4B0(s32 arg0) diff --git a/src/REL/modeltestDll/main.c b/src/REL/modeltestDll/main.c index 7c8dc93a..b2887739 100644 --- a/src/REL/modeltestDll/main.c +++ b/src/REL/modeltestDll/main.c @@ -11,10 +11,8 @@ #include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "math.h" #include "REL/modeltestDll.h" -#include "math.h" // -------------------------------------------------------------------------- // @@ -311,7 +309,7 @@ void fn_1_29C(omObjData *arg0) Hu3DParManAttrSet(lbl_1_bss_864[var_r31], 0x864); Hu3DParticleBlendModeSet(Hu3DParManModelIDGet(lbl_1_bss_864[var_r31]), 1U); Hu3DParManPosSet( - lbl_1_bss_864[var_r31], (100.0 * sin((M_PI * (36.0f * var_r31)) / 180.0)), 0.0f, 100.0 * cos((M_PI * (36.0f * var_r31)) / 180.0)); + lbl_1_bss_864[var_r31], (100.0 * sind(36.0f * var_r31)), 0.0f, 100.0 * cosd(36.0f * var_r31)); Hu3DParManRotSet(lbl_1_bss_864[var_r31], -90.0f, 0.0f, 0.0f); } @@ -465,28 +463,28 @@ void fn_1_F9C(struct om_obj_data *omData) } } - sp3C.x = Center.x + (CZoom * (sin((M_PI * CRot.y) / 180.0) * cos((M_PI * CRot.x) / 180.0))); - sp3C.y = (Center.y + (CZoom * -sin((M_PI * CRot.x) / 180.0))); - sp3C.z = (Center.z + (CZoom * (cos((M_PI * CRot.y) / 180.0) * cos((M_PI * CRot.x) / 180.0)))); + sp3C.x = Center.x + CZoom * (sind(CRot.y) * cosd(CRot.x)); + sp3C.y = Center.y + CZoom * -sind(CRot.x); + sp3C.z = Center.z + CZoom * (cosd(CRot.y) * cosd(CRot.x)); sp30.x = Center.x - sp3C.x; sp30.y = Center.y - sp3C.y; sp30.z = Center.z - sp3C.z; - sp24.x = (sin((M_PI * CRot.y) / 180.0) * sin((M_PI * CRot.x) / 180.0)); - sp24.y = cos((M_PI * CRot.x) / 180.0); - sp24.z = (cos((M_PI * CRot.y) / 180.0) * sin((M_PI * CRot.x) / 180.0)); + sp24.x = sind(CRot.y) * sind(CRot.x); + sp24.y = cosd(CRot.x); + sp24.z = cosd(CRot.y) * sind(CRot.x); temp_f31 = CRot.z; - sp18.x = sp24.x * (sp30.x * sp30.x + (1.0f - sp30.x * sp30.x) * cos((M_PI * temp_f31) / 180.0)) - + sp24.y * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.z * sin((M_PI * temp_f31) / 180.0)) - + sp24.z * (sp30.x * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.y * sin((M_PI * temp_f31) / 180.0)); + sp18.x = sp24.x * (sp30.x * sp30.x + (1.0f - sp30.x * sp30.x) * cosd(temp_f31)) + + sp24.y * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) - sp30.z * sind(temp_f31)) + + sp24.z * (sp30.x * sp30.z * (1.0f - cosd(temp_f31)) + sp30.y * sind(temp_f31)); - sp18.y = sp24.y * (sp30.y * sp30.y + (1.0f - sp30.y * sp30.y) * cos((M_PI * temp_f31) / 180.0)) - + sp24.x * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.z * sin((M_PI * temp_f31) / 180.0)) - + sp24.z * (sp30.y * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.x * sin((M_PI * temp_f31) / 180.0)); + sp18.y = sp24.y * (sp30.y * sp30.y + (1.0f - sp30.y * sp30.y) * cosd(temp_f31)) + + sp24.x * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) + sp30.z * sind(temp_f31)) + + sp24.z * (sp30.y * sp30.z * (1.0f - cosd(temp_f31)) - sp30.x * sind(temp_f31)); - sp18.z = sp24.z * (sp30.z * sp30.z + (1.0f - sp30.z * sp30.z) * cos((M_PI * temp_f31) / 180.0)) - + (sp24.x * (sp30.x * sp30.z * (1.0 - cos((M_PI * temp_f31) / 180.0)) - sp30.y * sin((M_PI * temp_f31) / 180.0)) - + sp24.y * (sp30.y * sp30.z * (1.0 - cos((M_PI * temp_f31) / 180.0)) + sp30.x * sin((M_PI * temp_f31) / 180.0))); + sp18.z = sp24.z * (sp30.z * sp30.z + (1.0f - sp30.z * sp30.z) * cosd(temp_f31)) + + (sp24.x * (sp30.x * sp30.z * (1.0 - cosd(temp_f31)) - sp30.y * sind(temp_f31)) + + sp24.y * (sp30.y * sp30.z * (1.0 - cosd(temp_f31)) + sp30.x * sind(temp_f31))); VECCrossProduct(&sp24, &sp30, &sp30); VECNormalize(&sp30, &sp30); @@ -603,11 +601,11 @@ void fn_1_20F4(void) Hu3DMtxTransGet(spC0, &sp18); PSMTXMultVec(sp60, &sp18, &sp18); - temp_f27 = 180.0 * (atan2(sp18.z, sp18.x) / M_PI); + temp_f27 = atan2d(sp18.z, sp18.x); temp_r31 = &lbl_1_bss_40[var_r29 * 2]; - temp_r31->obj->data.curr.rot.x = temp_r31->rot.x + (var_f29 * (2.0 * (sin((M_PI * temp_f27) / 180.0) * sin((M_PI * var_r27) / 180.0)))); + temp_r31->obj->data.curr.rot.x = temp_r31->rot.x + (var_f29 * (2.0 * (sind(temp_f27) * sind(var_r27)))); temp_r31->obj->data.curr.rot.y = temp_r31->rot.y; - temp_r31->obj->data.curr.rot.z = temp_r31->rot.z + (var_f29 * cos((M_PI * var_r27) / 180.0)); + temp_r31->obj->data.curr.rot.z = temp_r31->rot.z + (var_f29 * cosd(var_r27)); Hu3DModelObjMtxGet(temp_r3, lbl_1_data_D8[(var_r29 * 2) + 1], spC0); Hu3DMtxTransGet(spC0, &sp24); @@ -632,7 +630,7 @@ void fn_1_20F4(void) var_f29 = 0.0f; } else { - var_r27 = 180.0 * (atan2(HuPadSubStkX[1], HuPadSubStkY[1]) / M_PI); + var_r27 = atan2d(HuPadSubStkX[1], HuPadSubStkY[1]); temp_f30 = (HuPadSubStkX[1] * HuPadSubStkX[1]) + (HuPadSubStkY[1] * HuPadSubStkY[1]); var_f29 = sqrtf(temp_f30); if (var_f29 > 80.0f) { @@ -658,8 +656,8 @@ void fn_1_28F8(Point3d *arg0, Point3d *arg1) C_MTXLookAt(sp18, &cam->pos, &cam->up, &cam->target); PSMTXMultVec(sp18, arg0, &spC); - temp_f31 = (1.2f * (spC.z * (sin((M_PI * (cam->fov / 2)) / 180.0) / (cos((M_PI * (cam->fov / 2)) / 180.0))))); - temp_f30 = (spC.z * (sin((M_PI * (cam->fov / 2)) / 180.0) / (cos((M_PI * (cam->fov / 2)) / 180.0)))); + temp_f31 = (1.2f * (spC.z * (sind(cam->fov / 2) / (cosd(cam->fov / 2))))); + temp_f30 = (spC.z * (sind(cam->fov / 2) / (cosd(cam->fov / 2)))); arg1->x = 288.0f + (spC.x * (288.0f / -temp_f31)); arg1->y = 240.0f + (spC.y * (240.0f / temp_f30)); } diff --git a/src/REL/modeltestDll/modeltest00.c b/src/REL/modeltestDll/modeltest00.c index 36d9596b..c687e5df 100644 --- a/src/REL/modeltestDll/modeltest00.c +++ b/src/REL/modeltestDll/modeltest00.c @@ -103,28 +103,28 @@ void fn_1_37DC(omObjData *) CZoom += HuPadTrigL[0] / 2; CZoom -= HuPadTrigR[0] / 2; - sp3C.x = Center.x + (CZoom * (sin((M_PI * CRot.y) / 180.0) * cos((M_PI * CRot.x) / 180.0))); - sp3C.y = (Center.y + (CZoom * -sin((M_PI * CRot.x) / 180.0))); - sp3C.z = (Center.z + (CZoom * (cos((M_PI * CRot.y) / 180.0) * cos((M_PI * CRot.x) / 180.0)))); + sp3C.x = Center.x + CZoom * (sind(CRot.y) * cosd(CRot.x)); + sp3C.y = Center.y + CZoom * -sind(CRot.x); + sp3C.z = Center.z + CZoom * (cosd(CRot.y) * cosd(CRot.x)); sp30.x = Center.x - sp3C.x; sp30.y = Center.y - sp3C.y; sp30.z = Center.z - sp3C.z; - sp24.x = (sin((M_PI * CRot.y) / 180.0) * sin((M_PI * CRot.x) / 180.0)); - sp24.y = cos((M_PI * CRot.x) / 180.0); - sp24.z = (cos((M_PI * CRot.y) / 180.0) * sin((M_PI * CRot.x) / 180.0)); + sp24.x = sind(CRot.y) * sind(CRot.x); + sp24.y = cosd(CRot.x); + sp24.z = cosd(CRot.y) * sind(CRot.x); temp_f31 = CRot.z; - sp18.x = sp24.x * (sp30.x * sp30.x + (1.0f - sp30.x * sp30.x) * cos((M_PI * temp_f31) / 180.0)) - + sp24.y * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.z * sin((M_PI * temp_f31) / 180.0)) - + sp24.z * (sp30.x * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.y * sin((M_PI * temp_f31) / 180.0)); + sp18.x = sp24.x * (sp30.x * sp30.x + (1.0f - sp30.x * sp30.x) * cosd(temp_f31)) + + sp24.y * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) - sp30.z * sind(temp_f31)) + + sp24.z * (sp30.x * sp30.z * (1.0f - cosd(temp_f31)) + sp30.y * sind(temp_f31)); - sp18.y = sp24.y * (sp30.y * sp30.y + (1.0f - sp30.y * sp30.y) * cos((M_PI * temp_f31) / 180.0)) - + sp24.x * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.z * sin((M_PI * temp_f31) / 180.0)) - + sp24.z * (sp30.y * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.x * sin((M_PI * temp_f31) / 180.0)); + sp18.y = sp24.y * (sp30.y * sp30.y + (1.0f - sp30.y * sp30.y) * cosd(temp_f31)) + + sp24.x * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) + sp30.z * sind(temp_f31)) + + sp24.z * (sp30.y * sp30.z * (1.0f - cosd(temp_f31)) - sp30.x * sind(temp_f31)); - sp18.z = sp24.z * (sp30.z * sp30.z + (1.0f - sp30.z * sp30.z) * cos((M_PI * temp_f31) / 180.0)) - + (sp24.x * (sp30.x * sp30.z * (1.0 - cos((M_PI * temp_f31) / 180.0)) - sp30.y * sin((M_PI * temp_f31) / 180.0)) - + sp24.y * (sp30.y * sp30.z * (1.0 - cos((M_PI * temp_f31) / 180.0)) + sp30.x * sin((M_PI * temp_f31) / 180.0))); + sp18.z = sp24.z * (sp30.z * sp30.z + (1.0f - sp30.z * sp30.z) * cosd(temp_f31)) + + (sp24.x * (sp30.x * sp30.z * (1.0 - cosd(temp_f31)) - sp30.y * sind(temp_f31)) + + sp24.y * (sp30.y * sp30.z * (1.0 - cosd(temp_f31)) + sp30.x * sind(temp_f31))); VECCrossProduct(&sp24, &sp30, &sp30); VECNormalize(&sp30, &sp30); @@ -148,17 +148,17 @@ void fn_1_439C(omObjData * ) temp_f31 = CRot.x; temp_f30 = CRot.y + (var_r31 * 90); sp10 = CRot.z; - sp2C.x = Center.x + (CZoom * (sin((M_PI * temp_f30) / 180.0) * (cos((M_PI * temp_f31) / 180.0)))); - sp2C.y = Center.y + (CZoom * -sin((M_PI * temp_f31) / 180.0)); - sp2C.z = Center.z + (CZoom * (cos((M_PI * temp_f30) / 180.0) * (cos((M_PI * temp_f31) / 180.0)))); + sp2C.x = Center.x + CZoom * (sind(temp_f30) * (cosd(temp_f31))); + sp2C.y = Center.y + CZoom * -sind(temp_f31); + sp2C.z = Center.z + CZoom * (cosd(temp_f30) * (cosd(temp_f31))); sp20.x = Center.x; sp20.y = Center.y; sp20.z = Center.z; - sp14.x = sin((M_PI * temp_f30) / 180.0) * (sin((M_PI * temp_f31) / 180.0)); - sp14.y = cos((M_PI * temp_f31) / 180.0); - sp14.z = cos((M_PI * temp_f30) / 180.0) * (sin((M_PI * temp_f31) / 180.0)); + sp14.x = sind(temp_f30) * (sind(temp_f31)); + sp14.y = cosd(temp_f31); + sp14.z = cosd(temp_f30) * (sind(temp_f31)); Hu3DCameraPosSet(lbl_1_data_358[var_r31], sp2C.x, sp2C.y, sp2C.z, sp14.x, sp14.y, sp14.z, sp20.x, sp20.y, sp20.z); } diff --git a/src/REL/modeseldll/filesel.c b/src/REL/modeseldll/filesel.c index 93fc856d..53a1d962 100644 --- a/src/REL/modeseldll/filesel.c +++ b/src/REL/modeseldll/filesel.c @@ -10,7 +10,7 @@ #include "game/window.h" #include "game/wipe.h" -#include "math.h" +#include "ext_math.h" #include "REL/modeseldll.h" @@ -203,7 +203,7 @@ repeat: fn_1_5C38(); for (temp_r30 = 0; temp_r30 <= 20; temp_r30++) { temp_f31 = temp_r30 / 20.0; - temp_f31 = sin(M_PI * (90.0f * temp_f31) / 180.0); + temp_f31 = sind(90.0f * temp_f31); Hu3DModelScaleSet(lbl_1_bss_19A[0], temp_f31, temp_f31, temp_f31); Hu3DModelScaleSet(lbl_1_bss_19A[1], temp_f31, temp_f31, temp_f31); Hu3DModelScaleSet(lbl_1_bss_19A[2], temp_f31, temp_f31, temp_f31); @@ -377,8 +377,8 @@ loop_exit: for (temp_r30 = 0; temp_r30 <= 40; temp_r30++) { if (temp_r30 <= 30) { temp_f31 = temp_r30 / 30.0f; - sp28.x = 288.0 + (GET_ZEROSIGN(temp_r26) * (100.0 + (250.0 * sin(M_PI * (90.0f * temp_f31) / 180.0)))); - sp28.y = 250.0 - (100.0 * sin(M_PI * (180.0f * temp_f31) / 180.0)); + sp28.x = 288.0 + (GET_ZEROSIGN(temp_r26) * (100.0 + (250.0 * sind(90.0f * temp_f31)))); + sp28.y = 250.0 - (100.0 * sind(180.0f * temp_f31)); sp28.z = (temp_r30 * 100) + 600; Hu3D2Dto3D(&sp28, 1, &sp1C); Hu3DModelPosSetV(lbl_1_bss_19A[temp_r26 + 2], &sp1C); @@ -390,11 +390,11 @@ loop_exit: temp_f31 = (temp_r30 - 20) / 20.0f; if (temp_r29) { sp28.x = 288.0f + ((1.0 - temp_f31) * (100 * GET_ZEROSIGN(temp_r31))); - sp28.y = 250.0 - (100.0 * sin(M_PI * (180.0f * temp_f31) / 180.0)); + sp28.y = 250.0 - (100.0 * sind(180.0f * temp_f31)); sp28.z = 600.0f; Hu3D2Dto3D(&sp28, 1, &sp1C); Hu3DModelPosSetV(lbl_1_bss_19A[temp_r31], &sp1C); - temp_f31 = (0.5 * sin(M_PI * (90.0f * temp_f31) / 180.0)) + 1.0; + temp_f31 = (0.5 * sind(90.0f * temp_f31)) + 1.0; Hu3DModelScaleSet(lbl_1_bss_19A[temp_r31], temp_f31, temp_f31, temp_f31); } else { @@ -407,14 +407,14 @@ loop_exit: sp28.z = 600; Hu3D2Dto3D(&sp28, 1, &sp10); VECSubtract(&sp10, &sp1C, &sp28); - sp28.x *= sin(M_PI * (90.0f * temp_f31) / 180.0); - sp28.y *= 1.0 - cos(M_PI * (90.0f * temp_f31) / 180.0); + sp28.x *= sind(90.0f * temp_f31); + sp28.y *= 1.0 - cosd(90.0f * temp_f31); sp28.z = 0; VECAdd(&sp28, &sp1C, &sp1C); Hu3DModelPosSetV(lbl_1_bss_19A[temp_r31], &sp1C); - lbl_1_bss_108[temp_r31] *= cos(M_PI * (90.0f * temp_f31) / 180.0); + lbl_1_bss_108[temp_r31] *= cosd(90.0f * temp_f31); lbl_1_bss_100[temp_r31] = 1.0 - temp_f31; - temp_f31 = 1.0 + (0.3 * cos(M_PI * (90.0f * temp_f31) / 180.0)); + temp_f31 = 1.0 + (0.3 * cosd(90.0f * temp_f31)); Hu3DModelScaleSet(lbl_1_bss_19A[temp_r31], temp_f31, temp_f31, temp_f31); } } @@ -525,7 +525,7 @@ cleanup: for (temp_r30 = 0; temp_r30 <= 20; temp_r30++) { temp_f31 = temp_r30 / 20.0f; if (temp_r29) { - temp_f31 = 1.5 * cos(M_PI * (90.0f * temp_f31) / 180.0); + temp_f31 = 1.5 * cosd(90.0f * temp_f31); Hu3DModelScaleSet(lbl_1_bss_19A[0], temp_f31, temp_f31, temp_f31); Hu3DModelScaleSet(lbl_1_bss_19A[1], temp_f31, temp_f31, temp_f31); Hu3DModelScaleSet(lbl_1_bss_19A[2], 0.7 * temp_f31, 0.7 * temp_f31, 0.7 * temp_f31); @@ -544,14 +544,14 @@ cleanup: sp28.z = 600; Hu3D2Dto3D(&sp28, 1, &sp10); VECSubtract(&sp10, &sp1C, &sp28); - sp28.x *= sin(M_PI * (90.0f * temp_f31) / 180.0); - sp28.y *= 1.0 - cos(M_PI * (90.0f * temp_f31) / 180.0); + sp28.x *= sind(90.0f * temp_f31); + sp28.y *= 1.0 - cosd(90.0f * temp_f31); sp28.z = 0.0f; VECAdd(&sp28, &sp1C, &sp1C); Hu3DModelPosSetV(lbl_1_bss_19A[temp_r31], &sp1C); - lbl_1_bss_108[temp_r31] *= cos(M_PI * (90.0f * temp_f31) / 180.0); + lbl_1_bss_108[temp_r31] *= cosd(90.0f * temp_f31); lbl_1_bss_100[temp_r31] = 1.0 - temp_f31; - temp_f31 = 1.0 + (0.5 * cos(M_PI * (90.0f * temp_f31) / 180.0)); + temp_f31 = 1.0 + (0.5 * cosd(90.0f * temp_f31)); Hu3DModelScaleSet(lbl_1_bss_19A[temp_r31], temp_f31, temp_f31, temp_f31); } HuPrcVSleep(); @@ -636,10 +636,10 @@ void fn_1_5850(void) float scale; float time = i / 10.0; if (param) { - scale = 1.0 + (0.3 * sin(M_PI * (90.0f * time) / 180.0)); + scale = 1.0 + (0.3 * sind(90.0f * time)); } else { - scale = 1.0 + (0.3 * cos(M_PI * (90.0f * time) / 180.0)); + scale = 1.0 + (0.3 * cosd(90.0f * time)); } Hu3DModelScaleSet(lbl_1_bss_19A[index + 2], scale, scale, scale); Hu3DModelScaleSet(lbl_1_bss_19A[index + 4], scale, scale, scale); @@ -800,7 +800,7 @@ s32 fn_1_61B4(void) lbl_1_bss_120[0] = lbl_1_bss_120[1] = lbl_1_bss_120[2] = 1; UnMountCnt = 0; for (temp_r29 = 0; temp_r29 <= 20; temp_r29++) { - temp_f31 = sin(M_PI * (90.0f * (temp_r29 / 20.0f)) / 180.0); + temp_f31 = sind(90.0f * (temp_r29 / 20.0f)); for (temp_r28 = 0; temp_r28 < 3; temp_r28++) { Hu3DModelScaleSet(lbl_1_bss_19A[temp_r28 + 8], temp_f31, temp_f31, temp_f31); Hu3DModelScaleSet(lbl_1_bss_19A[temp_r28 + 11], temp_f31, temp_f31, temp_f31); @@ -1076,7 +1076,7 @@ s32 fn_1_61B4(void) } HuWinDispOff(lbl_1_bss_146); for (temp_r29 = 0; temp_r29 <= 20; temp_r29++) { - temp_f31 = cos(M_PI * (90.0 * (temp_r29 / 20.0)) / 180.0); + temp_f31 = cosd(90.0 * (temp_r29 / 20.0)); Hu3DModelScaleSet(lbl_1_bss_19A[curSlotNo], temp_f31, temp_f31, temp_f31); for (temp_r28 = 0; temp_r28 < 3; temp_r28++) { Hu3DModelScaleSet(lbl_1_bss_19A[temp_r28 + 8], temp_f31, temp_f31, temp_f31); @@ -1115,10 +1115,10 @@ void fn_1_72DC(void) Vec pos_2d; Vec pos_3d; if (param) { - scale = sin(M_PI * (90.0f * (i / 10.0f)) / 180.0); + scale = sind(90.0f * (i / 10.0f)); } else { - scale = cos(M_PI * (90.0f * (i / 10.0f)) / 180.0); + scale = cosd(90.0f * (i / 10.0f)); } pos_2d.x = 158.0f + (index * 130); pos_2d.y = 230; @@ -1476,7 +1476,7 @@ s32 fn_1_8540(s16 boxno) return 0; } for (time = 0; time <= 10; time++) { - scale = cos(M_PI * (90.0 * (time / 10.0)) / 180.0); + scale = cosd(90.0 * (time / 10.0)); Hu3DModelScaleSet(lbl_1_bss_19A[boxno + 8], scale, scale, scale); HuPrcVSleep(); } @@ -1490,7 +1490,7 @@ s32 fn_1_8540(s16 boxno) Hu3DModelTPLvlSet(lbl_1_bss_19A[boxno + 8], 0.6f); Hu3DModelTPLvlSet(lbl_1_bss_19A[boxno + 11], 0.3f); for (time = 0; time <= 20; time++) { - scale = sin(M_PI * (90.0 * (time / 20.0)) / 180.0); + scale = sind(90.0 * (time / 20.0)); Hu3DModelScaleSet(lbl_1_bss_19A[boxno + 8], scale, scale, scale); HuPrcVSleep(); } @@ -1661,7 +1661,7 @@ s32 fn_1_8C30(s16 boxno) else { fn_1_9E14(); for (temp_r30 = 0; temp_r30 <= 10; temp_r30++) { - temp_f31 = cos(M_PI * (90.0 * (temp_r30 / 10.0)) / 180.0); + temp_f31 = cosd(90.0 * (temp_r30 / 10.0)); Hu3DModelScaleSet(lbl_1_bss_19A[temp_r31 + 8], temp_f31, temp_f31, temp_f31); HuPrcVSleep(); } @@ -1709,7 +1709,7 @@ s32 fn_1_8C30(s16 boxno) temp_f31 = temp_r30 / 30.0; sp60.x = sp3C.x * temp_f31; sp60.y = sp3C.y * temp_f31; - sp60.z = (sp3C.z * temp_f31) + (-300 * sin(M_PI * (180.0f * temp_f31) / 180.0)); + sp60.z = (sp3C.z * temp_f31) + (-300 * sind(180.0f * temp_f31)); VECAdd(&sp60, &sp54, &sp60); Hu3DModelPosSetV(lbl_1_bss_19A[temp_r31 + 11], &sp60); HuPrcVSleep(); @@ -1730,7 +1730,7 @@ s32 fn_1_8C30(s16 boxno) Hu3DModelAttrSet(lbl_1_bss_19A[23], HU3D_ATTR_DISPOFF); Hu3DModelAttrReset(lbl_1_bss_19A[boxno + 8], HU3D_ATTR_DISPOFF); for (temp_r30 = 0; temp_r30 <= 10; temp_r30++) { - temp_f31 = sin(M_PI * (90.0 * (temp_r30 / 10.0)) / 180.0); + temp_f31 = sind(90.0 * (temp_r30 / 10.0)); Hu3DModelScaleSet(lbl_1_bss_19A[temp_r31 + 8], temp_f31, temp_f31, temp_f31); HuPrcVSleep(); } diff --git a/src/REL/modeseldll/main.c b/src/REL/modeseldll/main.c index f1d9be9b..7505272f 100644 --- a/src/REL/modeseldll/main.c +++ b/src/REL/modeseldll/main.c @@ -8,7 +8,7 @@ #include "game/process.h" #include "game/window.h" #include "game/wipe.h" -#include "math.h" +#include "ext_math.h" typedef struct camera_view_params { Vec rot; @@ -233,15 +233,15 @@ void fn_1_B8C(omObjData *object) y = lbl_1_bss_24[i].y; z = lbl_1_bss_24[i].z; - pos.x = (((sin((M_PI * y) / 180.0) * cos((M_PI * x) / 180.0)) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].x); - pos.y = (-sin((M_PI * x) / 180.0) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].y; - pos.z = ((cos((M_PI * y) / 180.0) * cos((M_PI * x) / 180.0)) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].z; + pos.x = (((sind(y) * cosd(x)) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].x); + pos.y = (-sind(x) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].y; + pos.z = ((cosd(y) * cosd(x)) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].z; target.x = lbl_1_bss_C[i].x; target.y = lbl_1_bss_C[i].y; target.z = lbl_1_bss_C[i].z; - up.x = sin((M_PI * y) / 180.0) * sin((M_PI * x) / 180.0); - up.y = cos((M_PI * x) / 180.0); - up.z = cos((M_PI * y) / 180.0) * sin((M_PI * x) / 180.0); + up.x = sind(y) * sind(x); + up.y = cosd(x); + up.z = cosd(y) * sind(x); Hu3DCameraPosSet(lbl_1_data_6E[i], pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z); } } @@ -272,27 +272,27 @@ void fn_1_F40(omObjData *object) if (lbl_1_bss_4[0] < 100.0f) { lbl_1_bss_4[0] = 100.0f; } - pos.x = lbl_1_bss_C[0].x + (lbl_1_bss_4[0] * (sin((M_PI * lbl_1_bss_24[0].y) / 180.0) * cos((M_PI * lbl_1_bss_24[0].x) / 180.0))); - pos.y = (lbl_1_bss_C[0].y + (lbl_1_bss_4[0] * -sin((M_PI * lbl_1_bss_24[0].x) / 180.0))); - pos.z = (lbl_1_bss_C[0].z + (lbl_1_bss_4[0] * (cos((M_PI * lbl_1_bss_24[0].y) / 180.0) * cos((M_PI * lbl_1_bss_24[0].x) / 180.0)))); + pos.x = lbl_1_bss_C[0].x + (lbl_1_bss_4[0] * (sind(lbl_1_bss_24[0].y) * cosd(lbl_1_bss_24[0].x))); + pos.y = (lbl_1_bss_C[0].y + (lbl_1_bss_4[0] * -sind(lbl_1_bss_24[0].x))); + pos.z = (lbl_1_bss_C[0].z + (lbl_1_bss_4[0] * (cosd(lbl_1_bss_24[0].y) * cosd(lbl_1_bss_24[0].x)))); offset.x = lbl_1_bss_C[0].x - pos.x; offset.y = lbl_1_bss_C[0].y - pos.y; offset.z = lbl_1_bss_C[0].z - pos.z; - dir.x = (sin((M_PI * lbl_1_bss_24[0].y) / 180.0) * sin((M_PI * lbl_1_bss_24[0].x) / 180.0)); - dir.y = cos((M_PI * lbl_1_bss_24[0].x) / 180.0); - dir.z = (cos((M_PI * lbl_1_bss_24[0].y) / 180.0) * sin((M_PI * lbl_1_bss_24[0].x) / 180.0)); + dir.x = (sind(lbl_1_bss_24[0].y) * sind(lbl_1_bss_24[0].x)); + dir.y = cosd(lbl_1_bss_24[0].x); + dir.z = (cosd(lbl_1_bss_24[0].y) * sind(lbl_1_bss_24[0].x)); z_rot = lbl_1_bss_24[0].z; - y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cos((M_PI * z_rot) / 180.0)) - + dir.y * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.z * sin((M_PI * z_rot) / 180.0)) - + dir.z * (offset.x * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.y * sin((M_PI * z_rot) / 180.0)); + y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cosd(z_rot)) + + dir.y * (offset.x * offset.y * (1.0f - cosd(z_rot)) - offset.z * sind(z_rot)) + + dir.z * (offset.x * offset.z * (1.0f - cosd(z_rot)) + offset.y * sind(z_rot)); - y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cos((M_PI * z_rot) / 180.0)) - + dir.x * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.z * sin((M_PI * z_rot) / 180.0)) - + dir.z * (offset.y * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.x * sin((M_PI * z_rot) / 180.0)); + y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cosd(z_rot)) + + dir.x * (offset.x * offset.y * (1.0f - cosd(z_rot)) + offset.z * sind(z_rot)) + + dir.z * (offset.y * offset.z * (1.0f - cosd(z_rot)) - offset.x * sind(z_rot)); - y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cos((M_PI * z_rot) / 180.0)) - + (dir.x * (offset.x * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) - offset.y * sin((M_PI * z_rot) / 180.0)) - + dir.y * (offset.y * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) + offset.x * sin((M_PI * z_rot) / 180.0))); + y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cosd(z_rot)) + + (dir.x * (offset.x * offset.z * (1.0 - cosd(z_rot)) - offset.y * sind(z_rot)) + + dir.y * (offset.y * offset.z * (1.0 - cosd(z_rot)) + offset.x * sind(z_rot))); VECCrossProduct(&dir, &offset, &offset); VECNormalize(&offset, &offset); diff --git a/src/REL/option/record.c b/src/REL/option/record.c index c255cdbe..763bc418 100755 --- a/src/REL/option/record.c +++ b/src/REL/option/record.c @@ -10,7 +10,7 @@ #include "game/window.h" #include "dolphin.h" -#include "math.h" +#include "ext_math.h" #include "version.h" #ifndef __MWERKS__ @@ -208,8 +208,8 @@ static void ExecRecord(omObjData *object) Hu3DModelAttrReset(work->hand->model[0], HU3D_ATTR_DISPOFF); work->cameraDoneF = TRUE; } - pos.x = 505.0 * -sin(305 * M_PI / 180.0); - pos.z = 505.0 * cos(305 * M_PI / 180.0); + pos.x = 505.0 * -sind(305); + pos.z = 505.0 * cosd(305); pos.y = 144.0f - 14.0f * work->recordType; omSetTra(work->hand, pos.x, pos.y, pos.z); object->unk10 = 3; diff --git a/src/REL/resultDll/battle.c b/src/REL/resultDll/battle.c index c9441385..8818f975 100644 --- a/src/REL/resultDll/battle.c +++ b/src/REL/resultDll/battle.c @@ -1,5 +1,5 @@ #include "dolphin.h" -#include "math.h" +#include "ext_math.h" #include "game/armem.h" #include "game/audio.h" @@ -503,7 +503,7 @@ void fn_1_7F98(void) } delay = (lbl_1_bss_174) ? 3 : 10; for (time = 0; time <= delay; time++) { - float scale = sin(M_PI * ((90.0 / delay) * time) / 180.0); + float scale = sind((90.0 / delay) * time); for (i = 0; i < 4; i++) { HuSprGrpScaleSet(lbl_1_bss_19E0[i], scale, scale); } diff --git a/src/REL/resultDll/main.c b/src/REL/resultDll/main.c index 66c26486..bda3b255 100644 --- a/src/REL/resultDll/main.c +++ b/src/REL/resultDll/main.c @@ -14,7 +14,7 @@ #include "game/window.h" #include "game/wipe.h" -#include "math.h" +#include "ext_math.h" #include "REL/resultdll.h" @@ -498,7 +498,7 @@ void fn_1_1F4C(void) } temp_r29 = (lbl_1_bss_174) ? 3 : 10; for (temp_r30 = 0; temp_r30 <= temp_r29; temp_r30++) { - temp_f31 = sin(M_PI * ((90.0 / temp_r29) * temp_r30) / 180.0); + temp_f31 = sind((90.0 / temp_r29) * temp_r30); for (i = 0; i < 4; i++) { HuSprGrpScaleSet(lbl_1_bss_3A[i], temp_f31, temp_f31); } @@ -512,8 +512,8 @@ void fn_1_1F4C(void) if (GWPlayerCoinWinGet(lbl_1_bss_4A[i]) >= 10) { HuSprAttrReset(lbl_1_bss_9C, i, 4); } - HuSprScaleSet(lbl_1_bss_9C, i, sin(M_PI * ((120.0f / 14.0f) * temp_r28) / 180.0) * (0.8 * (1.0 / sin((M_PI * 2) / 3))), - 0.8 * (sin(M_PI * ((120.0f / 14.0f) * temp_r28) / 180.0) * (1.0 / sin((M_PI * 2) / 3)))); + HuSprScaleSet(lbl_1_bss_9C, i, sind((120.0f / 14.0f) * temp_r28) * (0.8 * (1.0 / sin((M_PI * 2) / 3))), + 0.8 * (sind((120.0f / 14.0f) * temp_r28) * (1.0 / sin((M_PI * 2) / 3)))); } temp_r28 += (lbl_1_bss_174) ? 2 : 1; HuPrcVSleep(); @@ -603,7 +603,7 @@ void fn_1_1F4C(void) } temp_r29 = (lbl_1_bss_174) ? 3 : 10; for (temp_r30 = 0; temp_r30 <= temp_r29; temp_r30++) { - temp_f31 = cos(M_PI * ((90.0 / temp_r29) * temp_r30) / 180.0); + temp_f31 = cosd((90.0 / temp_r29) * temp_r30); for (i = 0; i < 4; i++) { HuSprGrpScaleSet(lbl_1_bss_3A[i], temp_f31, temp_f31); } @@ -686,12 +686,12 @@ void fn_1_2ADC(void) temp_r27 = temp_r28 - (i * 20); if (temp_r27 <= 20) { if (temp_r27 <= 10) { - HuSprScaleSet(lbl_1_bss_52, i, 1.0f, cos(M_PI * (9.0f * temp_r27) / 180.0)); + HuSprScaleSet(lbl_1_bss_52, i, 1.0f, cosd(9.0f * temp_r27)); } else { HuSprAttrSet(lbl_1_bss_52, i, 4); HuSprAttrReset(lbl_1_data_380, i, 4); - HuSprScaleSet(lbl_1_data_380, i, 1.0f, sin(M_PI * (9.0f * (temp_r27 - 10)) / 180.0)); + HuSprScaleSet(lbl_1_data_380, i, 1.0f, sind(9.0f * (temp_r27 - 10))); } temp_f31 = temp_r27 / 20.0f; temp_r29 = GWStarsGet(sp28[i]) + (temp_f31 * (GWStarsGet(lbl_1_bss_4A[i]) - GWStarsGet(sp28[i]))); @@ -741,7 +741,7 @@ void fn_1_2ADC(void) } if (temp_r28 <= 10) { for (i = 0; i < 4; i++) { - HuSprScaleSet(lbl_1_bss_9C, i, cos(M_PI * (9.0f * temp_r28) / 180.0), cos(M_PI * (9.0f * temp_r28) / 180.0)); + HuSprScaleSet(lbl_1_bss_9C, i, cosd(9.0f * temp_r28), cosd(9.0f * temp_r28)); } } else { @@ -1264,27 +1264,27 @@ void fn_1_5880(omObjData *object) CZoom += HuPadTrigL[0] / 2; CZoom -= HuPadTrigR[0] / 2; - pos.x = Center.x + (CZoom * (sin((M_PI * CRot.y) / 180.0) * cos((M_PI * CRot.x) / 180.0))); - pos.y = (Center.y + (CZoom * -sin((M_PI * CRot.x) / 180.0))); - pos.z = (Center.z + (CZoom * (cos((M_PI * CRot.y) / 180.0) * cos((M_PI * CRot.x) / 180.0)))); + pos.x = Center.x + CZoom * (sind(CRot.y) * cosd(CRot.x)); + pos.y = Center.y + CZoom * -sind(CRot.x); + pos.z = Center.z + CZoom * (cosd(CRot.y) * cosd(CRot.x)); offset.x = Center.x - pos.x; offset.y = Center.y - pos.y; offset.z = Center.z - pos.z; - dir.x = (sin((M_PI * CRot.y) / 180.0) * sin((M_PI * CRot.x) / 180.0)); - dir.y = cos((M_PI * CRot.x) / 180.0); - dir.z = (cos((M_PI * CRot.y) / 180.0) * sin((M_PI * CRot.x) / 180.0)); + dir.x = (sind(CRot.y) * sind(CRot.x)); + dir.y = cosd(CRot.x); + dir.z = (cosd(CRot.y) * sind(CRot.x)); z_rot = CRot.z; - y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cos((M_PI * z_rot) / 180.0)) - + dir.y * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.z * sin((M_PI * z_rot) / 180.0)) - + dir.z * (offset.x * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.y * sin((M_PI * z_rot) / 180.0)); + y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cosd(z_rot)) + + dir.y * (offset.x * offset.y * (1.0f - cosd(z_rot)) - offset.z * sind(z_rot)) + + dir.z * (offset.x * offset.z * (1.0f - cosd(z_rot)) + offset.y * sind(z_rot)); - y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cos((M_PI * z_rot) / 180.0)) - + dir.x * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.z * sin((M_PI * z_rot) / 180.0)) - + dir.z * (offset.y * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.x * sin((M_PI * z_rot) / 180.0)); + y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cosd(z_rot)) + + dir.x * (offset.x * offset.y * (1.0f - cosd(z_rot)) + offset.z * sind(z_rot)) + + dir.z * (offset.y * offset.z * (1.0f - cosd(z_rot)) - offset.x * sind(z_rot)); - y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cos((M_PI * z_rot) / 180.0)) - + (dir.x * (offset.x * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) - offset.y * sin((M_PI * z_rot) / 180.0)) - + dir.y * (offset.y * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) + offset.x * sin((M_PI * z_rot) / 180.0))); + y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cosd(z_rot)) + + (dir.x * (offset.x * offset.z * (1.0 - cosd(z_rot)) - offset.y * sind(z_rot)) + + dir.y * (offset.y * offset.z * (1.0 - cosd(z_rot)) + offset.x * sind(z_rot))); VECCrossProduct(&dir, &offset, &offset); VECNormalize(&offset, &offset); diff --git a/src/REL/w03Dll/condor.c b/src/REL/w03Dll/condor.c index 15ea43a8..4c8327dd 100644 --- a/src/REL/w03Dll/condor.c +++ b/src/REL/w03Dll/condor.c @@ -12,6 +12,8 @@ #include "game/pad.h" #include "game/wipe.h" +#include "ext_math.h" + // structs typedef struct w03UnkStruct5 { @@ -172,8 +174,8 @@ void fn_1_3304(void) var_r31 = BoardSpaceLinkFlagSearch(0, var_r31, 0x02000000); BoardSpacePosGet(0, var_r31, &sp8); temp_f31 = 0.0f; - sp8.x = sp8.x + (-300.0 * sin((M_PI * temp_f31) / 180.0)); - sp8.z = sp8.z + (-300.0 * cos((M_PI * temp_f31) / 180.0)); + sp8.x += -300.0 * sind(temp_f31); + sp8.z += -300.0 * cosd(temp_f31); sp8.y = 45.0f + sp8.y; BoardModelPosSetV(lbl_1_data_310, &sp8); BoardModelMotionStart(lbl_1_data_310, 2, 0x40000001); @@ -211,7 +213,7 @@ s32 fn_1_3478(s32 arg0) temp = BoardSpaceLinkFlagSearch(0, temp_r28, 0x02000000); BoardSpacePosGet(0, temp, &sp38); VECSubtract(&sp38, &sp2C, &sp20); - float_temp = atan2(sp20.x, sp20.z) / M_PI * 180.0f; + float_temp = atan2d(sp20.x, sp20.z); BoardPlayerMotBlendSet(arg0, (float_temp), 0xF); while (BoardPlayerMotBlendCheck(arg0) == 0) { @@ -473,8 +475,8 @@ void fn_1_3F5C(s32 arg0) var_r31 = BoardSpaceLinkFlagSearch(0, var_r31, 0x02000000); BoardSpacePosGet(0, var_r31, &sp8); temp_f31 = 0.0f; - sp8.x = (sp8.x + (-300.0 * sin((M_PI * temp_f31) / 180.0f))); - sp8.z = (sp8.z + (-300.0 * cos((M_PI * temp_f31) / 180.0f))); + sp8.x += -300.0 * sind(temp_f31); + sp8.z += -300.0 * cosd(temp_f31); sp8.y = 45.0f + sp8.y; BoardModelPosSetV(lbl_1_data_310, &sp8); BoardModelMotionStart(lbl_1_data_310, 2, 0x40000001); @@ -589,7 +591,7 @@ void fn_1_4424(w03StructUnk2 *arg0) VECSubtract(&sp60, &sp6C, &sp3C); } - sp10_2 = 180.0f * (atan2(-sp3C.x, -sp3C.z) / M_PI); + sp10_2 = atan2d(-sp3C.x, -sp3C.z); BoardModelMotionStart(lbl_1_data_314, 0, 0U); BoardModelMotionSpeedSet(lbl_1_data_314, 8.0f); HuPrcSleep(1); @@ -604,7 +606,7 @@ void fn_1_4424(w03StructUnk2 *arg0) for (i = var_r25 = 0; i < 20;) { Hu3DMotionExec(temp_r23, temp_r28->unk_08, temp_r28->unk_64, 0); Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_314), temp_r22, &sp54); - temp_r28->unk_64 = (f32)(temp_r28->unk_64 + temp_r28->unk_68); + temp_r28->unk_64 += temp_r28->unk_68; if (temp_r28->unk_64 > 400.0f) { break; @@ -770,9 +772,9 @@ void fn_1_4D60(w03StructUnk2 *arg0) temp_r31->unk_00 = 1; temp_f31 = 360.0f * BoardRandFloat(); temp_f30 = 5.0f * BoardRandFloat(); - temp_r31->unk_14.x = temp_f30 * sin((M_PI * temp_f31) / 180.0); + temp_r31->unk_14.x = temp_f30 * sind(temp_f31); temp_r31->unk_14.y = 50.0f + (20.0f * BoardRandFloat()); - temp_r31->unk_14.z = temp_f30 * cos((M_PI * temp_f31) / 180.0); + temp_r31->unk_14.z = temp_f30 * cosd(temp_f31); temp_r31->unk_08.x = sp8.x; temp_r31->unk_08.y = sp8.y; temp_r31->unk_08.z = sp8.z; @@ -1084,11 +1086,11 @@ void fn_1_5C5C(omObjData *arg0, w03UnkStruct5 *arg1) PSMTXTrans(sp80, sp44.x, sp44.y, sp44.z); PSMTXConcat(sp80, sp50, sp80); Hu3DMtxTransGet(sp80, &sp44); - MTXRotDeg(spB0, 'y', (180.0 * (atan2(-sp2C.x, -sp2C.z) / M_PI))); + MTXRotDeg(spB0, 'y', atan2d(-sp2C.x, -sp2C.z)); PSMTXConcat(spB0, spE0, sp110); BoardModelMtxSet(lbl_1_data_310, &sp110); BoardModelPosSetV(lbl_1_data_310, &sp44); - BoardCameraRotSet(-20.0f, (180.0 * (atan2(sp2C.x, sp2C.z) / M_PI))); + BoardCameraRotSet(-20.0f, atan2d(sp2C.x, sp2C.z)); } void fn_1_602C(omObjData *arg0, w03UnkStruct5 *arg1) diff --git a/src/REL/w03Dll/mg_coin.c b/src/REL/w03Dll/mg_coin.c index 0d0e6f64..b577ffc1 100644 --- a/src/REL/w03Dll/mg_coin.c +++ b/src/REL/w03Dll/mg_coin.c @@ -10,6 +10,8 @@ #include "game/object.h" #include "game/pad.h" +#include "ext_math.h" + // structs typedef struct someBits3 { // make sure this is defined correctly /* 0x00 */ struct { @@ -175,7 +177,7 @@ s32 fn_1_7D18(s32 arg0) BoardSpacePosGet(0, temp_r28, &sp38); VECSubtract(&sp38, &sp2C, &sp20); VECNormalize(&sp20, &sp20); - BoardPlayerRotYSet(arg0, 180.0 * (atan2(-sp20.x, -sp20.z) / M_PI)); + BoardPlayerRotYSet(arg0, atan2d(-sp20.x, -sp20.z)); HuPrcSleep(0x1E); model = BoardModelIDGet(lbl_1_bss_C[7]); Hu3DModelObjPosGet(model, "phei", &sp38); @@ -187,8 +189,8 @@ s32 fn_1_7D18(s32 arg0) var_f31 = 39.0f; } - sp38.x = sp38.x + (var_f31 * sin((M_PI * (180.0f + BoardModelRotYGet(lbl_1_data_456))) / 180.0)); - sp38.z = sp38.z + (var_f31 * cos((M_PI * (180.0f + BoardModelRotYGet(lbl_1_data_456))) / 180.0)); + sp38.x += var_f31 * sind(180.0f + BoardModelRotYGet(lbl_1_data_456)); + sp38.z += var_f31 * cosd(180.0f + BoardModelRotYGet(lbl_1_data_456)); BoardPlayerPosGet(arg0, &sp2C); BoardPlayerPosLerpStart(arg0, &sp2C, &sp38, 0x14); @@ -197,7 +199,7 @@ s32 fn_1_7D18(s32 arg0) BoardModelPosGet(lbl_1_bss_C[10], &sp2C); BoardPlayerPosGet(arg0, &sp38); VECSubtract(&sp38, &sp2C, &sp20); - arctan = atan2(sp20.x, sp20.z) / M_PI * 180.0; + arctan = atan2d(sp20.x, sp20.z); BoardModelRotYSet(lbl_1_bss_C[10], arctan); HuPrcVSleep(); } @@ -589,7 +591,7 @@ void fn_1_9044(omObjData *arg0, someBits3 *arg1) } } - sp8.z = arg0->trans.x * sin((M_PI * arg0->trans.y) / 180.0); + sp8.z = arg0->trans.x * sind(arg0->trans.y); BoardModelRotSetV(lbl_1_data_456, &sp8); } @@ -626,7 +628,7 @@ void fn_1_9230(s32 arg0) BoardModelPosGet(lbl_1_bss_C[10], &sp20); BoardPlayerPosGet(arg0, &sp14); VECSubtract(&sp14, &sp20, &sp8); - rotY = atan2(sp8.x, sp8.z) / M_PI * 180.0; + rotY = atan2d(sp8.x, sp8.z); BoardModelRotYSet(lbl_1_bss_C[10], rotY); HuPrcVSleep(); } @@ -773,8 +775,8 @@ void fn_1_97F8(s32 arg0) } temp_r31 = &temp_r30->unk_0C[i]; temp_r31->unk0 = 1; - temp_r31->unk8.x = sp8.x + (50.0f * sin((M_PI * var_f31) / 180.0)); - temp_r31->unk8.z = sp8.z + (50.0f * cos((M_PI * var_f31) / 180.0)); + temp_r31->unk8.x = sp8.x + (50.0f * sind(var_f31)); + temp_r31->unk8.z = sp8.z + (50.0f * cosd(var_f31)); temp_r31->unk8.y = 600.0f + sp8.y + (500.0f * BoardRandFloat()); temp_r31->unk1 = 0; temp_r31->unk4 = BoardRandFloat() * 360.0f; diff --git a/src/REL/w03Dll/mg_item.c b/src/REL/w03Dll/mg_item.c index 24d08ad3..18332aa2 100644 --- a/src/REL/w03Dll/mg_item.c +++ b/src/REL/w03Dll/mg_item.c @@ -255,7 +255,7 @@ s32 fn_1_9CF4(s32 arg0) BoardSpacePosGet(0, temp_r29, &sp38); VECSubtract(&sp38, &sp2C, &sp20); VECNormalize(&sp20, &sp20); - BoardPlayerRotYSet(arg0, (f32)(180.0 * (atan2(-sp20.x, -sp20.z) / M_PI))); + BoardPlayerRotYSet(arg0, atan2d(-sp20.x, -sp20.z)); BoardPlayerPosLerpStart(arg0, &sp2C, &sp38, 0x14); while (GWPlayer[arg0].moving != 0) { @@ -288,11 +288,11 @@ void fn_1_9FE4(void) f32 var_f31; BoardModelPosGet(lbl_1_bss_C[11], &sp24); - sp18.x = (-3179.800048828125 + (200.0 * sin(0.0))); - sp18.z = (-907.7000122070313 + 200.0 * cos(0.0)); + sp18.x = -3179.8f + 200.0 * sin(0.0); + sp18.z = -907.7f + 200.0 * cos(0.0); sp18.y = sp24.y; VECSubtract(&sp18, &sp24, &spC); - temp_f30 = (atan2(spC.z, spC.x) / M_PI * 180.0); + temp_f30 = atan2d(spC.z, spC.x); sp8 = BoardModelRotYGet(lbl_1_bss_C[11]); BoardModelMotionShiftSet(lbl_1_bss_C[11], lbl_1_data_4DA, 0.0f, 10.0, HU3D_MOTATTR_LOOP); @@ -861,7 +861,7 @@ void fn_1_B748(omObjData *arg0, someBits2 *arg1) BoardModelPosSetV(temp_r29, &sp8); BoardModelRotYSet(temp_r29, 8.0f + BoardModelRotYGet(temp_r29)); BoardModelScaleGet(temp_r29, &sp14); - sp14.x = sp14.y = sp14.z = cos(M_PI * temp_f0 / 180.0); + sp14.x = sp14.y = sp14.z = cosd(temp_f0); BoardModelScaleSetV(temp_r29, &sp14); arg1->unk1 += 4; return; diff --git a/src/REL/w03Dll/river.c b/src/REL/w03Dll/river.c index 98423294..7736b6f2 100644 --- a/src/REL/w03Dll/river.c +++ b/src/REL/w03Dll/river.c @@ -6,6 +6,8 @@ #include "game/board/player.h" #include "game/hsfdraw.h" +#include "ext_math.h" + //BSS char lbl_1_bss_130[8]; omObjData* lbl_1_bss_12C; @@ -167,7 +169,7 @@ s32 fn_1_6898(s32 arg0) { Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_388), "hei01", &sp20); BoardPlayerPosGet(arg0, &sp14); VECSubtract(&sp20, &sp14, &sp8); - temp_f31 = 180.0 * (atan2(sp8.x, sp8.z) / M_PI); + temp_f31 = atan2d(sp8.x, sp8.z); BoardCameraTargetModelSet(lbl_1_data_388); BoardPlayerMotBlendSet(arg0, temp_f31, 15); @@ -456,10 +458,10 @@ void fn_1_767C(omObjData* arg0) { if ((lbl_1_data_388 != -1) && (lbl_1_bss_124 == 0)) { temp_r31->unk_04 += 3.0f; if (temp_r31->unk_04 >= 360.0f) { - temp_r31->unk_04 = (f32) (temp_r31->unk_04 - 360.0f); + temp_r31->unk_04 -= 360.0f; } BoardModelPosGet(lbl_1_data_388, &sp8); - sp8.y = (f32) ((f64) sp8.y + (0.25 * (2.0 * sin((M_PI * (f64) temp_r31->unk_04) / 180.0)))); + sp8.y += 0.25 * (2.0 * sind(temp_r31->unk_04)); BoardModelPosSetV(lbl_1_data_388, &sp8); } } diff --git a/src/REL/w03Dll/statue.c b/src/REL/w03Dll/statue.c index 914ee853..de10197b 100644 --- a/src/REL/w03Dll/statue.c +++ b/src/REL/w03Dll/statue.c @@ -13,6 +13,8 @@ #include "game/board/main.h" #include "game/objsub.h" +#include "ext_math.h" + void fn_1_1358(void); void fn_1_152C(void); s32 fn_1_15E8(void); @@ -26,7 +28,6 @@ void fn_1_2AC0(void); void fn_1_2818(void); void fn_1_2A40(void); void fn_1_2B44(void); -double atan2(double y, double x); //data s16 lbl_1_data_280 = -1; @@ -155,7 +156,7 @@ s32 fn_1_1650(s32 arg0) { BoardSpacePosGet(0, temp2, &sp38); BoardPlayerPosGet(arg0, &sp2C); VECSubtract(&sp38, &sp2C, &sp20); - temp = (atan2(-sp20.x, -sp20.z) / M_PI) * 180.0f; + temp = atan2d(-sp20.x, -sp20.z); BoardPlayerRotYSet(arg0, temp); sp14.x = 0.0f; sp14.y = 100.0f; @@ -539,7 +540,7 @@ void fn_1_26E0(s32 arg0) { BoardPlayerPosGet(arg0, &sp14); VECSubtract(&sp20, &sp14, &sp8); VECNormalize(&sp8, &sp8); - temp = (180.0f * (atan2(-sp8.x, -sp8.z) / M_PI)); + temp = atan2d(-sp8.x, -sp8.z); BoardPlayerRotYSet(arg0, temp); BoardCameraViewSet(1); BoardCameraTargetPlayerSet(arg0); diff --git a/src/REL/w05Dll/dolphin.c b/src/REL/w05Dll/dolphin.c index 6870e9c0..46cc5a9e 100644 --- a/src/REL/w05Dll/dolphin.c +++ b/src/REL/w05Dll/dolphin.c @@ -11,6 +11,8 @@ #include "game/board/player.h" #include "game/board/window.h" +#include "ext_math.h" + // bss s16 lbl_1_bss_72[2]; s16 lbl_1_bss_6C[3]; @@ -179,7 +181,7 @@ void fn_1_4034(s32 arg0) var_r27 = arg0 + 1; } Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_118), lbl_1_data_22C[var_r27], &sp34); - temp_f25 = (180.0 * (atan2((sp34.x - sp40.x), (sp34.z - sp40.z)) / M_PI)); + temp_f25 = atan2d(sp34.x - sp40.x, sp34.z - sp40.z); BoardModelMotionShiftSet(lbl_1_bss_64, 2, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); while (fn_1_1208(lbl_1_bss_64, temp_f25, 10.0f) == 0) { @@ -236,7 +238,7 @@ loop_37: } BoardModelPosGet(lbl_1_bss_64, &sp40); BoardPlayerPosGet(lbl_1_bss_68, &sp28); - var_f27 = 180.0 * (atan2((sp40.x - sp28.x), (sp40.z - sp28.z)) / M_PI); + var_f27 = atan2d(sp40.x - sp28.x, sp40.z - sp28.z); BoardPlayerMotBlendSet(lbl_1_bss_68, var_f27, 0xF); while (BoardPlayerMotBlendCheck(lbl_1_bss_68) == 0) { @@ -352,7 +354,7 @@ void fn_1_4EB4(s32 arg1, s32 arg2, Vec *arg3) BoardPlayerIdleSet(lbl_1_bss_68); HuPrcSleep(8); BoardSpacePosGet(0, arg2, &sp3C); - var_f28 = 180.0 * (atan2((sp3C.x - sp30.x), (sp3C.z - sp30.z)) / M_PI); + var_f28 = atan2d(sp3C.x - sp30.x, sp3C.z - sp30.z); BoardPlayerMotBlendSet(lbl_1_bss_68, var_f28, 0xF); while (BoardPlayerMotBlendCheck(lbl_1_bss_68) == 0) { @@ -486,7 +488,7 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec *arg2) VECAdd(&sp58, &sp40, &sp58); sp64 = sp58; if (var_r29 == 0) { - sp58.y += 250.0 * sin((M_PI * var_f28) / 180.0); + sp58.y += 250.0 * sind(var_f28); var_f28 -= 2.5f; if (var_f28 < -540.0f) { var_f28 = -540.0f; @@ -521,7 +523,7 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec *arg2) var_r29--; } BoardModelPosSetV(lbl_1_bss_64, &sp58); - sp28.x = sp34.x = (45.0 * -sin((M_PI * var_f28) / 180.0)); + sp28.x = sp34.x = 45.0 * -sind(var_f28); BoardModelRotSetV(lbl_1_bss_64, &sp34); BoardPlayerRotSetV(lbl_1_bss_68, &sp28); sp4C = sp58; @@ -540,7 +542,7 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec *arg2) BoardPlayerIdleSet(lbl_1_bss_68); HuPrcSleep(8); BoardSpacePosGet(0, arg1, &sp58); - var_f27 = (180.0 * (atan2((sp58.x - sp4C.x), (sp58.z - sp4C.z)) / M_PI)); + var_f27 = atan2d(sp58.x - sp4C.x, sp58.z - sp4C.z); BoardPlayerMotBlendSet(lbl_1_bss_68, var_f27, 0xF); while (BoardPlayerMotBlendCheck(lbl_1_bss_68) == 0) { @@ -599,8 +601,8 @@ void fn_1_62AC(s32 arg0, Vec *arg1) sp1C = sp28; sp10 = sp28; VECScale(&sp1C, &sp1C, sp8[arg0]); - sp1C.y += (250.0 * sin((M_PI * var_f31) / 180.0)); - var_f30 = (250.0 * -cos((M_PI * var_f31) / 180.0)); + sp1C.y += 250.0 * sind(var_f31); + var_f30 = 250.0 * -cosd(var_f31); VECScale(&sp10, &sp10, var_f30); VECAdd(&sp10, &sp1C, &sp1C); VECAdd(&sp1C, &sp34, &sp1C); diff --git a/src/REL/w05Dll/hotel.c b/src/REL/w05Dll/hotel.c index d05260b2..bebb63c7 100644 --- a/src/REL/w05Dll/hotel.c +++ b/src/REL/w05Dll/hotel.c @@ -10,6 +10,8 @@ #include "game/board/player.h" #include "game/board/window.h" +#include "ext_math.h" + // data s32 lbl_1_data_150[5] = { DATA_MAKE_NUM(DATADIR_W05, 0x21), DATA_MAKE_NUM(DATADIR_W05, 0x22), DATA_MAKE_NUM(DATADIR_W05, 0x23), @@ -75,7 +77,7 @@ void fn_1_155C(void) { temp_f30 = BoardPlayerRotYGet(lbl_1_bss_28); BoardPlayerPosGet(lbl_1_bss_28, &sp58); Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_118), "hotel1", &sp64); - temp_f31 = 180.0 * (atan2((sp64.x - sp58.x), (sp64.z - sp58.z)) / M_PI); + temp_f31 = atan2d(sp64.x - sp58.x, sp64.z - sp58.z); BoardPlayerMotBlendSet(lbl_1_bss_28, temp_f31, 0xF); BoardCameraViewSet(2); @@ -103,7 +105,7 @@ void fn_1_155C(void) { HuPrcVSleep(); } BoardModelPosSetV(lbl_1_bss_14[4], &sp28); - temp_f31 = (180.0 * (atan2((sp58.x - sp28.x), (sp58.z - sp28.z)) / M_PI)); + temp_f31 = atan2d(sp58.x - sp28.x, sp58.z - sp28.z); while (fn_1_1208(lbl_1_bss_14[4], temp_f31, 10.0f) == 0) { HuPrcVSleep(); @@ -266,13 +268,13 @@ void fn_1_1E44(void) { HuPrcVSleep(); } BoardModelPosSetV(lbl_1_bss_14[4], &sp2C); - temp_f31 = (180.0 * (atan2((sp50.x - sp2C.x), (sp50.z - sp2C.z)) / M_PI)); + temp_f31 = atan2d(sp50.x - sp2C.x, sp50.z - sp2C.z); while (fn_1_1208(lbl_1_bss_14[4], temp_f31, 10.0f) == 0) { HuPrcVSleep(); } BoardModelMotionShiftSet(lbl_1_bss_14[4], 0, 0.0f, 5.0f, HU3D_MOTATTR_LOOP); - temp_f31 = 180.0 * (atan2((sp2C.x - sp50.x), (sp2C.z - sp50.z)) / M_PI); + temp_f31 = atan2d(sp2C.x - sp50.x, sp2C.z - sp50.z); BoardPlayerMotBlendSet(lbl_1_bss_28, temp_f31, 0xF); while (BoardPlayerMotBlendCheck(lbl_1_bss_28) == 0) { diff --git a/src/REL/w05Dll/mg_coin.c b/src/REL/w05Dll/mg_coin.c index 36c2269a..c2f8d938 100644 --- a/src/REL/w05Dll/mg_coin.c +++ b/src/REL/w05Dll/mg_coin.c @@ -14,6 +14,9 @@ #include "game/board/window.h" +#include "ext_math.h" + + s16 lbl_1_bss_102[3]; s16 lbl_1_bss_100; s16 lbl_1_bss_FE; @@ -226,7 +229,7 @@ void fn_1_9F24(omObjData *arg0) temp_r31->unk_08++; } sp18 = temp_r31->unk_0C[temp_r31->unk_08]; - var_f31 = (180.0 * (atan2((sp18.x - sp24.x), (sp18.z - sp24.z)) / M_PI)); + var_f31 = atan2d(sp18.x - sp24.x, sp18.z - sp24.z); BoardPlayerRotYSet(lbl_1_bss_C0, var_f31); spC = temp_r31->unk_0C[temp_r31->unk_08]; spC.y += 50.0f; @@ -387,7 +390,7 @@ void fn_1_AB24(void) spC = temp_r30->data; BoardPlayerPosGet(lbl_1_bss_C0, &sp28); BoardModelPosGet(lbl_1_bss_14[5], &sp1C); - var_f30 = (180.0 * (atan2((sp1C.z - sp28.z), (sp1C.x - sp28.x)) / M_PI)); + var_f30 = atan2d(sp1C.z - sp28.z, sp1C.x - sp28.x); BoardPlayerMotBlendSet(lbl_1_bss_C0, var_f30, 0xF); while (BoardPlayerMotBlendCheck(lbl_1_bss_C0) == 0) { diff --git a/src/REL/w05Dll/mg_item.c b/src/REL/w05Dll/mg_item.c index 0a596430..0e942bef 100644 --- a/src/REL/w05Dll/mg_item.c +++ b/src/REL/w05Dll/mg_item.c @@ -12,6 +12,8 @@ #include "game/board/model.h" #include "game/board/window.h" +#include "ext_math.h" + // data s32 lbl_1_data_310[2] = { 0x79, 0x7A }; char *lbl_1_data_330[3] = { "suika1", "suika2", "suika3" }; @@ -459,7 +461,7 @@ void fn_1_80D8(omObjData *arg0) } if ((spC != 0) || (sp10 != 0)) { var_r29 = -1; - var_f31 = (180.0 * (atan2(spC, sp10) / M_PI)); + var_f31 = atan2d(spC, sp10); if (var_f31 < 0.0f) { var_f31 += 360.0f; } @@ -695,7 +697,7 @@ void fn_1_896C(void) var_r29 = (1 << var_r31); if ((temp_r30 & var_r29) != 0) { BoardModelPosGet(lbl_1_bss_A4[var_r31], &sp18); - sp18.y = (sp18.y + (0.25 * sin((M_PI * var_f30) / 180.0))); + sp18.y += 0.25 * sind(var_f30); BoardModelPosSetV(lbl_1_bss_A4[var_r31], &sp18); } } @@ -810,8 +812,8 @@ void fn_1_9268(ModelData *model, ParticleData *particle, f32 (*matrix)[4]) if (var_r28 != particle->unk_30) { temp_f30 = 360.0f * (0.003921569f * (s32)(frand() & 0xFF)); temp_f29 = temp_f31 * (20.0f + (60.0f * (0.003921569f * (s32)(frand() & 0xFF)))); - var_r31->unk34.x = sp8.x + (temp_f29 * sin((M_PI * temp_f30) / 180.0)); - var_r31->unk34.z = sp8.z + (temp_f29 * cos((M_PI * temp_f30) / 180.0)); + var_r31->unk34.x = sp8.x + temp_f29 * sind(temp_f30); + var_r31->unk34.z = sp8.z + temp_f29 * cosd(temp_f30); var_r31->unk34.y = sp8.y + (temp_f31 * (-30.0f + (40.0f * (0.003921569f * (s32)(frand() & 0xFF))))); var_r31->unk08.x = 0.5f + (3.0f * (0.003921569f * (s32)(frand() & 0xFF))); var_r31->unk08.y = 0.3f + (2.0f * (0.003921569f * (s32)(frand() & 0xFF))); diff --git a/src/game/board/basic_space.c b/src/game/board/basic_space.c index 70df8cf9..d7624381 100644 --- a/src/game/board/basic_space.c +++ b/src/game/board/basic_space.c @@ -302,7 +302,7 @@ static void CoinChgAppear(omObjData *object, coinChg *coin_chg) { f32 angle; OSu16tof32(&coin_chg->angle, &angle); - angle = sin(M_PI * angle / 180.0); + angle = sind(angle); scale = angle; object->rot.x = 405.0f * angle; BoardModelScaleSet(coin_chg->coin_model, scale, scale, scale); @@ -342,8 +342,8 @@ static void CoinChgSeparate(omObjData *object, coinChg *coin_chg) { } else { spacing = 105.0f; } - y_offset = (200.0 * sin((M_PI * (2.0f * x_scale)) / 180.0)); - x_scale = sin((M_PI * x_scale) / 180.0); + y_offset = 200.0 * sind(2.0f * x_scale); + x_scale = sind(x_scale); object->rot.x = 45.0f + (315.0f * x_scale); if (coin_chg->tens != 0) { coin_x = object->trans.x + (x_scale * -spacing); @@ -379,7 +379,7 @@ static void CoinChgShow(omObjData* object, coinChg* coin_chg) { f32 y_pos; OSu16tof32(&coin_chg->angle, &angle); - angle = (f32) sin((M_PI * angle) / 180.0); + angle = sind(angle); if (coin_chg->minus != 0) { y_pos = (-50.0f * angle) + object->trans.y; } else { diff --git a/src/game/board/block.c b/src/game/board/block.c index 8a70b5c9..b830314f 100644 --- a/src/game/board/block.c +++ b/src/game/board/block.c @@ -6,7 +6,7 @@ #include "game/flag.h" #include "game/objsub.h" #include "game/process.h" -#include "math.h" +#include "ext_math.h" #define BLOCK_SPAWN 0 #define BLOCK_HIT 2 @@ -312,7 +312,7 @@ static void SpawnBlock(BlockWork *arg0, omObjData *arg1) } arg1->rot.y = rotY; - arg1->scale.x = arg1->scale.y = arg1->scale.z = sin(M_PI * scaleAngle / 180.0); + arg1->scale.x = arg1->scale.y = arg1->scale.z = sind(scaleAngle); } static void HitBlock(BlockWork *arg0, omObjData *arg1) @@ -325,7 +325,7 @@ static void HitBlock(BlockWork *arg0, omObjData *arg1) } OSs16tof32(&arg0->hit_y_velocity, &var_f30); - arg1->trans.y += 0.2f * sin((M_PI * var_f30) / 180.0); + arg1->trans.y += 0.2f * sind(var_f30); } static void OpenBlock(BlockWork *arg0, omObjData *arg1) diff --git a/src/game/board/bowser.c b/src/game/board/bowser.c index fe5af9e3..bcbe7133 100644 --- a/src/game/board/bowser.c +++ b/src/game/board/bowser.c @@ -12,30 +12,29 @@ #include "game/wipe.h" #include "game/gamework.h" +#include "ext_math.h" #include "string.h" -#define ABS(x) ((x) < 0 ? -(x) : (x)) - typedef struct bowser_event_data { - s16 sprite[3]; - s16 delay[3]; - s16 angle[3]; - s16 group; - s16 model; + s16 sprite[3]; + s16 delay[3]; + s16 angle[3]; + s16 group; + s16 model; } BowserEventData; static BowserEventData bowserEvent; static Vec playerPosTemp[4]; static s32 scareFxTbl[] = { - 0x128, - 0x168, - 0x1A8, - 0x1E8, - 0x228, - 0x268, - 0x2A8, - 0x2E8 + 0x128, + 0x168, + 0x1A8, + 0x1E8, + 0x228, + 0x268, + 0x2A8, + 0x2E8 }; @@ -102,701 +101,701 @@ static s32 ExecMiniBowserEvent(void); s32 BoardBowserExec(s32 player, s32 space) { - if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { - HuAudFXPlay(841); - BoardCameraViewSet(2); - BoardPlayerMotBlendSet(player, 0, 15); - while(!BoardPlayerMotBlendCheck(player)) { - HuPrcVSleep(); - } - BoardCameraMotionWait(); - BoardTutorialHookExec(12, 0); - GWPlayer[player].color = 2; - } else { - eventPlayer = player; - eventSpace = space; - playerMot[0] = playerMot[1] = playerMot[2] = playerMot[3] = -1; - bowserProc = HuPrcChildCreate(ExecBowser, 8196, 14336, 0, boardMainProc); - HuPrcDestructorSet2(bowserProc, DestroyBowser); - while(bowserProc) { - HuPrcVSleep(); - } - GWPlayer[player].color = 2; - } + if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { + HuAudFXPlay(841); + BoardCameraViewSet(2); + BoardPlayerMotBlendSet(player, 0, 15); + while(!BoardPlayerMotBlendCheck(player)) { + HuPrcVSleep(); + } + BoardCameraMotionWait(); + BoardTutorialHookExec(12, 0); + GWPlayer[player].color = 2; + } else { + eventPlayer = player; + eventSpace = space; + playerMot[0] = playerMot[1] = playerMot[2] = playerMot[3] = -1; + bowserProc = HuPrcChildCreate(ExecBowser, 8196, 14336, 0, boardMainProc); + HuPrcDestructorSet2(bowserProc, DestroyBowser); + while(bowserProc) { + HuPrcVSleep(); + } + GWPlayer[player].color = 2; + } } typedef struct bowser_work { - u8 kill : 1; - u8 state : 3; - u8 mot_active : 1; - u8 fall_done : 1; - u8 jump_done : 1; - u8 jump_state; - u8 idle_timer; + u8 kill : 1; + u8 state : 3; + u8 mot_active : 1; + u8 fall_done : 1; + u8 jump_done : 1; + u8 jump_state; + u8 idle_timer; } BowserWork; typedef struct mini_bowser_work { - u8 kill : 1; - s16 group; - s16 sprite; - s16 angle; + u8 kill : 1; + s16 group; + s16 sprite; + s16 angle; } MiniBowserWork; typedef struct bowser_event_work { - u8 kill : 1; - s8 state; - s16 timer; + u8 kill : 1; + s8 state; + s16 timer; } BowserEventWork; static void ExecBowser(void) { - #define BOWSER_EVENT 0 - #define MINI_BOWSER_EVENT 1 + #define BOWSER_EVENT 0 + #define MINI_BOWSER_EVENT 1 - s32 i; - s32 status; - if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { - HuAudFXPlay(841); - omVibrate(eventPlayer, 12, 4, 2); - if(GWBoardGet() == BOARD_ID_MAIN6 && boardBowserHook) { - boardBowserHook(1); - } - BoardAudSeqPause(0, 1, 1000); - //20% of bowser, 80% chance of koopa kid - if(BoardRandMod(100) < 20) { - eventType = BOWSER_EVENT; - } else { - eventType = MINI_BOWSER_EVENT; - } - } else { - BoardMusStart(1, 6, 127, 0); - } - status = BoardDataDirReadAsync(DATADIR_BKOOPA); - BoardDataAsyncWait(status); - CreatePlayerMot(); - if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { - ExecBowserMain(); - } else { - ExecMGReturn(); - } - for(i=0; i<4; i++) { - if(eventSpace == GWPlayer[i].space_curr) { - BoardPlayerMotionSpeedSet(i, 1.0f); - } - } - BoardAudSeqPause(0, 0, 1000); - if(bowserObj) { - OM_GET_WORK_PTR(bowserObj, BowserWork)->kill = 1; - } - if(miniBowserObj) { - OM_GET_WORK_PTR(miniBowserObj, MiniBowserWork)->kill = 1; - } - if(bowserEventObj) { - OM_GET_WORK_PTR(bowserEventObj, BowserEventWork)->kill = 1; - } - GWPlayer[eventPlayer].show_next = 1; - BoardCameraMotionStartEx(-1, NULL, NULL, 2100.0f, -1.0f, 21); - HuPrcSleep(30); - for(i=0; i<4; i++) { - BoardPlayerIdleSet(i); - } - BoardCameraMotionWait(); - if(GWBoardGet() == BOARD_ID_MAIN6 && boardBowserHook) { - boardBowserHook(0); - } else { - HuPrcSleep(30); - } - HuPrcEnd(); + s32 i; + s32 status; + if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { + HuAudFXPlay(841); + omVibrate(eventPlayer, 12, 4, 2); + if(GWBoardGet() == BOARD_ID_MAIN6 && boardBowserHook) { + boardBowserHook(1); + } + BoardAudSeqPause(0, 1, 1000); + //20% of bowser, 80% chance of koopa kid + if(BoardRandMod(100) < 20) { + eventType = BOWSER_EVENT; + } else { + eventType = MINI_BOWSER_EVENT; + } + } else { + BoardMusStart(1, 6, 127, 0); + } + status = BoardDataDirReadAsync(DATADIR_BKOOPA); + BoardDataAsyncWait(status); + CreatePlayerMot(); + if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { + ExecBowserMain(); + } else { + ExecMGReturn(); + } + for(i=0; i<4; i++) { + if(eventSpace == GWPlayer[i].space_curr) { + BoardPlayerMotionSpeedSet(i, 1.0f); + } + } + BoardAudSeqPause(0, 0, 1000); + if(bowserObj) { + OM_GET_WORK_PTR(bowserObj, BowserWork)->kill = 1; + } + if(miniBowserObj) { + OM_GET_WORK_PTR(miniBowserObj, MiniBowserWork)->kill = 1; + } + if(bowserEventObj) { + OM_GET_WORK_PTR(bowserEventObj, BowserEventWork)->kill = 1; + } + GWPlayer[eventPlayer].show_next = 1; + BoardCameraMotionStartEx(-1, NULL, NULL, 2100.0f, -1.0f, 21); + HuPrcSleep(30); + for(i=0; i<4; i++) { + BoardPlayerIdleSet(i); + } + BoardCameraMotionWait(); + if(GWBoardGet() == BOARD_ID_MAIN6 && boardBowserHook) { + boardBowserHook(0); + } else { + HuPrcSleep(30); + } + HuPrcEnd(); } static void ExecBowserMain(void) { - s32 result = 0; - BoardPlayerMotBlendSet(eventPlayer, 0, 15); - while(!BoardPlayerMotBlendCheck(eventPlayer)) { - HuPrcVSleep(); - } - BoardMusStart(1, 5, 127, 0); - BoardCameraViewSet(3); - BoardFilterFadeInit(30, 160); - BoardCameraMotionWait(); - BoardPlayerMotionShiftSet(eventPlayer, jumpMot, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); - BoardPlayerMotionSpeedSet(eventPlayer, 2.0f); - HuPrcSleep(120); - ConfigBowserEvent(); - HuAudFXPlay(scareFxTbl[GWPlayer[eventPlayer].character]); - BoardPlayerMotionShiftSet(eventPlayer, scareMot, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - CreateMiniBowser(); - while(!CheckMiniBowser()) { - HuPrcVSleep(); - } - BoardPlayerIdleSet(eventPlayer); - if(eventType) { - result = ExecMiniBowserEvent(); - if(!result) { - return; - } - BoardAudSeqFadeOut(1, 1000); - BoardFilterFadeInit(30, 160); - HuPrcSleep(30); - } - ExecBowserSpecial(); - BoardModelMotionShiftSet(bowserMdl, 3, 0.0f, 8.0f, HU3D_MOTATTR_NONE); - HuPrcSleep(8); - HuAudFXPlay(58); - BoardWinCreate(2, MAKE_MESSID(3, 11), 5); - BoardWinWait(); - BoardWinKill(); - BoardAudSeqFadeOut(1, 1000); - while(!BoardModelMotionEndCheck(bowserMdl)) { - HuPrcVSleep(); - } - SetBowserState(6); - while(!CheckBowserIdle()) { - HuPrcVSleep(); - } - BoardFilterFadeOut(30); + s32 result = 0; + BoardPlayerMotBlendSet(eventPlayer, 0, 15); + while(!BoardPlayerMotBlendCheck(eventPlayer)) { + HuPrcVSleep(); + } + BoardMusStart(1, 5, 127, 0); + BoardCameraViewSet(3); + BoardFilterFadeInit(30, 160); + BoardCameraMotionWait(); + BoardPlayerMotionShiftSet(eventPlayer, jumpMot, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + BoardPlayerMotionSpeedSet(eventPlayer, 2.0f); + HuPrcSleep(120); + ConfigBowserEvent(); + HuAudFXPlay(scareFxTbl[GWPlayer[eventPlayer].character]); + BoardPlayerMotionShiftSet(eventPlayer, scareMot, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + CreateMiniBowser(); + while(!CheckMiniBowser()) { + HuPrcVSleep(); + } + BoardPlayerIdleSet(eventPlayer); + if(eventType) { + result = ExecMiniBowserEvent(); + if(!result) { + return; + } + BoardAudSeqFadeOut(1, 1000); + BoardFilterFadeInit(30, 160); + HuPrcSleep(30); + } + ExecBowserSpecial(); + BoardModelMotionShiftSet(bowserMdl, 3, 0.0f, 8.0f, HU3D_MOTATTR_NONE); + HuPrcSleep(8); + HuAudFXPlay(58); + BoardWinCreate(2, MAKE_MESSID(3, 11), 5); + BoardWinWait(); + BoardWinKill(); + BoardAudSeqFadeOut(1, 1000); + while(!BoardModelMotionEndCheck(bowserMdl)) { + HuPrcVSleep(); + } + SetBowserState(6); + while(!CheckBowserIdle()) { + HuPrcVSleep(); + } + BoardFilterFadeOut(30); } static void ExecMGReturn(void) { - s32 i; - s32 player; - BoardStatusItemSet(1); - for(i=0; i<4; i++) { - BoardPlayerPosSetV(i, &playerPosTemp[i]); - } - BoardCameraMoveSet(0); - BoardCameraTargetPlayerSet(eventPlayer); - BoardCameraViewSet(2); - BoardCameraMotionWait(); - CreateBowserObj(); - SquishPlayers(); - BoardPlayerMotBlendSet(eventPlayer, 0, 15); - BoardCameraViewSet(3); - BoardFilterFadeInit(30, 160); - BoardStatusItemSet(0); - BoardCameraMotionWait(); - WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 21); - while(WipeStatGet()) { - HuPrcVSleep(); - } - _ClearFlag(0x1001C); - BoardCameraMoveSet(1); - player = GWSystem.player_curr; - GWSystem.player_curr = -1; - DoMGReturnEffect(); - GWSystem.player_curr = player; - BoardStatusShowSetAll(1); - BoardModelMotionShiftSet(bowserMdl, 3, 0.0f, 8.0f, HU3D_MOTATTR_NONE); - HuPrcSleep(8); - HuAudFXPlay(58); - BoardWinCreate(2, MAKE_MESSID(3, 11), 5); - BoardWinWait(); - BoardWinKill(); - while(!BoardStatusStopCheck(0)) { - HuPrcVSleep(); - } - BoardAudSeqFadeOut(1, 1000); - while(!BoardModelMotionEndCheck(bowserMdl)) { - HuPrcVSleep(); - } - SetBowserState(6); - while(!CheckBowserIdle()) { - HuPrcVSleep(); - } - BoardFilterFadeOut(30); - BoardMusStartBoard(); + s32 i; + s32 player; + BoardStatusItemSet(1); + for(i=0; i<4; i++) { + BoardPlayerPosSetV(i, &playerPosTemp[i]); + } + BoardCameraMoveSet(0); + BoardCameraTargetPlayerSet(eventPlayer); + BoardCameraViewSet(2); + BoardCameraMotionWait(); + CreateBowserObj(); + SquishPlayers(); + BoardPlayerMotBlendSet(eventPlayer, 0, 15); + BoardCameraViewSet(3); + BoardFilterFadeInit(30, 160); + BoardStatusItemSet(0); + BoardCameraMotionWait(); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 21); + while(WipeStatGet()) { + HuPrcVSleep(); + } + _ClearFlag(0x1001C); + BoardCameraMoveSet(1); + player = GWSystem.player_curr; + GWSystem.player_curr = -1; + DoMGReturnEffect(); + GWSystem.player_curr = player; + BoardStatusShowSetAll(1); + BoardModelMotionShiftSet(bowserMdl, 3, 0.0f, 8.0f, HU3D_MOTATTR_NONE); + HuPrcSleep(8); + HuAudFXPlay(58); + BoardWinCreate(2, MAKE_MESSID(3, 11), 5); + BoardWinWait(); + BoardWinKill(); + while(!BoardStatusStopCheck(0)) { + HuPrcVSleep(); + } + BoardAudSeqFadeOut(1, 1000); + while(!BoardModelMotionEndCheck(bowserMdl)) { + HuPrcVSleep(); + } + SetBowserState(6); + while(!CheckBowserIdle()) { + HuPrcVSleep(); + } + BoardFilterFadeOut(30); + BoardMusStartBoard(); } static void DestroyBowser(void) { - KillPlayerMot(); - HuDataDirClose(DATADIR_BKOOPA); - bowserProc = NULL; + KillPlayerMot(); + HuDataDirClose(DATADIR_BKOOPA); + bowserProc = NULL; } static void SquishPlayers(void) { - Vec pos; - Vec pos_space; - s32 i; - BoardPlayerPosGet(eventPlayer, &pos); - if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { - HuAudFXPlay(798); - } - pos.y += 6.0f; - BoardPlayerPosSetV(eventPlayer, &pos); - GWPlayer[eventPlayer].show_next = 0; - BoardPlayerMotionSpeedSet(eventPlayer, 0.0f); - for(i=0; i<4; i++) { - if(eventSpace == GWPlayer[i].space_curr) { - BoardPlayerPosGet(i, &pos); - BoardSpacePosGet(0, eventSpace, &pos_space); - pos.y = pos_space.y+2.5f; - BoardPlayerPosSetV(i, &pos); - BoardPlayerMotionStart(i, playerMot[i], 0); - BoardPlayerMotionTimeSet(i, 50.0f); - BoardPlayerMotionSpeedSet(i, 0.0f); - } - } + Vec pos; + Vec pos_space; + s32 i; + BoardPlayerPosGet(eventPlayer, &pos); + if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { + HuAudFXPlay(798); + } + pos.y += 6.0f; + BoardPlayerPosSetV(eventPlayer, &pos); + GWPlayer[eventPlayer].show_next = 0; + BoardPlayerMotionSpeedSet(eventPlayer, 0.0f); + for(i=0; i<4; i++) { + if(eventSpace == GWPlayer[i].space_curr) { + BoardPlayerPosGet(i, &pos); + BoardSpacePosGet(0, eventSpace, &pos_space); + pos.y = pos_space.y+2.5f; + BoardPlayerPosSetV(i, &pos); + BoardPlayerMotionStart(i, playerMot[i], 0); + BoardPlayerMotionTimeSet(i, 50.0f); + BoardPlayerMotionSpeedSet(i, 0.0f); + } + } } static void ExecBowserSpecial(void) { - s32 i; - CreateBowserObj(); - while(!CheckBowserIdle()) { - HuPrcVSleep(); - } - SetBowserState(2); - HuAudFXPlay(58); - BoardMusStart(1, 6, 127, 0); - HuPrcSleep(120); - BoardWinCreate(2, MAKE_MESSID(3, 7), 5); - BoardWinWait(); - BoardWinKill(); - HuAudFXPlay(857); - BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - for(i=0; i<4; i++) { - omVibrate(i, 12, 12, 0); - } - HuPrcSleep(11); - while(!BoardModelMotionEndCheck(bowserMdl)) { - HuPrcVSleep(); - } - CreateBowserEvent(); - HuAudFXPlay(831); - HuAudFXPlay(60); - while(!CheckBowserEvent()) { - HuPrcVSleep(); - } - HuPrcSleep(60); - BoardModelAttrSet(bowserMdl, 0x40000004); - while(!BoardModelMotionEndCheck(bowserMdl)) { - HuPrcVSleep(); - } - BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - StopBowserEvent(); - switch(GWSystem.bowser_event) { - case 0: - ExecBowserGame(); - break; - - case 2: - ExecBowserRevo(); - break; - - case 1: - ExecBowserShuffle(); - break; - - case 3: - ExecBowserSuit(); - break; - } + s32 i; + CreateBowserObj(); + while(!CheckBowserIdle()) { + HuPrcVSleep(); + } + SetBowserState(2); + HuAudFXPlay(58); + BoardMusStart(1, 6, 127, 0); + HuPrcSleep(120); + BoardWinCreate(2, MAKE_MESSID(3, 7), 5); + BoardWinWait(); + BoardWinKill(); + HuAudFXPlay(857); + BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + for(i=0; i<4; i++) { + omVibrate(i, 12, 12, 0); + } + HuPrcSleep(11); + while(!BoardModelMotionEndCheck(bowserMdl)) { + HuPrcVSleep(); + } + CreateBowserEvent(); + HuAudFXPlay(831); + HuAudFXPlay(60); + while(!CheckBowserEvent()) { + HuPrcVSleep(); + } + HuPrcSleep(60); + BoardModelAttrSet(bowserMdl, 0x40000004); + while(!BoardModelMotionEndCheck(bowserMdl)) { + HuPrcVSleep(); + } + BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + StopBowserEvent(); + switch(GWSystem.bowser_event) { + case 0: + ExecBowserGame(); + break; + + case 2: + ExecBowserRevo(); + break; + + case 1: + ExecBowserShuffle(); + break; + + case 3: + ExecBowserSuit(); + break; + } } static void ExecBowserGame(void) { - s32 i; - s16 mgTbl[3] = { - 435, - 436, - 437 - }; - s32 messLoss[3] = { - MAKE_MESSID(3, 9), - MAKE_MESSID(3, 12), - MAKE_MESSID(3, 14) - }; - s32 mg; - s32 mess; - s32 fx_stat; - for(i=0; i<4; i++) { - BoardPlayerPosGet(i, &playerPosTemp[i]); - } - BoardWinCreate(2, MAKE_MESSID(3, 8), 5); - BoardWinWait(); - mess = messLoss[GWSystem.bowser_loss]; - BoardWinCreate(2, mess, 5); - BoardWinWait(); - BoardWinKill(); - BoardModelMotionShiftSet(bowserMdl, 5, 0.0f, 8.0f, HU3D_MOTATTR_NONE); - HuPrcSleep(8); - while(BoardModelMotionTimeGet(bowserMdl) < 80.0f) { - HuPrcVSleep(); - } - fx_stat = HuAudFXPlay(846); - InitBowserFire(); - while(BoardModelMotionTimeGet(bowserMdl) < 200.0f) { - HuPrcVSleep(); - } - BoardAudSeqFadeOut(1, 1000); - BoardMusVolPanSet(0, 0, 1); - BoardAudSeqPause(0, 0, 1); - _SetFlag(0x1000E); - HuAudFXFadeOut(fx_stat, 500); - WipeColorSet(255, 255, 255); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - while(WipeStatGet()) { - HuPrcVSleep(); - } - HuAudFXAllStop(); - _SetFlag(0x1001C); - KillBowserFire(); - HuPrcSleep(60); - BoardModelMotionStart(bowserMdl, 1, 0); - mg = (s16)mgTbl[BoardRandMod(3)]; - GWMGAvailSet(mg); - GWSystem.mg_next = mg-401; - _SetFlag(0x10003); - BoardNextOvlSet(OVL_INST); - BoardFilterFadeOut(30); - HuPrcEnd(); + s32 i; + s16 mgTbl[3] = { + 435, + 436, + 437 + }; + s32 messLoss[3] = { + MAKE_MESSID(3, 9), + MAKE_MESSID(3, 12), + MAKE_MESSID(3, 14) + }; + s32 mg; + s32 mess; + s32 fx_stat; + for(i=0; i<4; i++) { + BoardPlayerPosGet(i, &playerPosTemp[i]); + } + BoardWinCreate(2, MAKE_MESSID(3, 8), 5); + BoardWinWait(); + mess = messLoss[GWSystem.bowser_loss]; + BoardWinCreate(2, mess, 5); + BoardWinWait(); + BoardWinKill(); + BoardModelMotionShiftSet(bowserMdl, 5, 0.0f, 8.0f, HU3D_MOTATTR_NONE); + HuPrcSleep(8); + while(BoardModelMotionTimeGet(bowserMdl) < 80.0f) { + HuPrcVSleep(); + } + fx_stat = HuAudFXPlay(846); + InitBowserFire(); + while(BoardModelMotionTimeGet(bowserMdl) < 200.0f) { + HuPrcVSleep(); + } + BoardAudSeqFadeOut(1, 1000); + BoardMusVolPanSet(0, 0, 1); + BoardAudSeqPause(0, 0, 1); + _SetFlag(0x1000E); + HuAudFXFadeOut(fx_stat, 500); + WipeColorSet(255, 255, 255); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while(WipeStatGet()) { + HuPrcVSleep(); + } + HuAudFXAllStop(); + _SetFlag(0x1001C); + KillBowserFire(); + HuPrcSleep(60); + BoardModelMotionStart(bowserMdl, 1, 0); + mg = (s16)mgTbl[BoardRandMod(3)]; + GWMGAvailSet(mg); + GWSystem.mg_next = mg-401; + _SetFlag(0x10003); + BoardNextOvlSet(OVL_INST); + BoardFilterFadeOut(30); + HuPrcEnd(); } static void DoMGReturnEffect(void) { - s32 messTbl[3] = { - MAKE_MESSID(3, 10), - MAKE_MESSID(3, 13), - MAKE_MESSID(3, 15) - }; - s32 player; - s32 coin; - s32 item; - s32 delay; - s32 item_cnt; - s32 mess; - s32 mess_char; - for(player=0; player<4; player++) { - if(GWPlayerCoinWinGet(player) == 1) { - break; - } - } - mess = messTbl[GWSystem.bowser_loss]; - mess_char = BoardPlayerGetCharMess(player); - BoardStatusShowSetForce(player); - BoardStatusShowSet(player, 1); - BoardWinCreate(2, mess, 5); - BoardWinInsertMesSet(mess_char, 1); - BoardWinWait(); - while(!BoardStatusStopCheck(player)) { - HuPrcVSleep(); - } - omVibrate(player, 12, 4, 2); - if(GWSystem.bowser_loss == 2) { - item_cnt = BoardPlayerItemCount(player); - for(item=0; item> 1); - } - if(coin >= 50 ) { - delay = 1; - } else if(coin >= 20) { - delay = 3; - } else { - delay = 6; - } - while(coin != 0 && BoardPlayerCoinsGet(player) != 0) { - BoardPlayerCoinsAdd(player, -1); - HuAudFXPlay(14); - HuPrcSleep(delay); - coin--; - } - HuAudFXPlay(15); - } - BoardStatusShowSet(player, 0); - while(!BoardStatusStopCheck(player)) { - HuPrcVSleep(); - } + s32 messTbl[3] = { + MAKE_MESSID(3, 10), + MAKE_MESSID(3, 13), + MAKE_MESSID(3, 15) + }; + s32 player; + s32 coin; + s32 item; + s32 delay; + s32 item_cnt; + s32 mess; + s32 mess_char; + for(player=0; player<4; player++) { + if(GWPlayerCoinWinGet(player) == 1) { + break; + } + } + mess = messTbl[GWSystem.bowser_loss]; + mess_char = BoardPlayerGetCharMess(player); + BoardStatusShowSetForce(player); + BoardStatusShowSet(player, 1); + BoardWinCreate(2, mess, 5); + BoardWinInsertMesSet(mess_char, 1); + BoardWinWait(); + while(!BoardStatusStopCheck(player)) { + HuPrcVSleep(); + } + omVibrate(player, 12, 4, 2); + if(GWSystem.bowser_loss == 2) { + item_cnt = BoardPlayerItemCount(player); + for(item=0; item> 1); + } + if(coin >= 50 ) { + delay = 1; + } else if(coin >= 20) { + delay = 3; + } else { + delay = 6; + } + while(coin != 0 && BoardPlayerCoinsGet(player) != 0) { + BoardPlayerCoinsAdd(player, -1); + HuAudFXPlay(14); + HuPrcSleep(delay); + coin--; + } + HuAudFXPlay(15); + } + BoardStatusShowSet(player, 0); + while(!BoardStatusStopCheck(player)) { + HuPrcVSleep(); + } } static void ExecBowserShuffle(void) { - Vec pos; - Vec target; - s16 space_old[4]; - s16 space[4]; - s32 i; - s32 player; - s32 player_new; - s32 reset_cam; - BoardWinCreate(2, MAKE_MESSID(3, 16), 5); - BoardWinWait(); - BoardWinKill(); - for(i=0; i<4; i++) { - space_old[i] = GWPlayer[i].space_curr; - } - player=0; - while(player<4) { - player_new = BoardRandMod(4); - if(player_new == player || space_old[player_new] == -1) { - continue; - } - space[player] = space_old[player_new]; - space_old[player_new] = -1; - player++; - } - HuAudFXPlay(857); - BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - while(!BoardModelMotionEndCheck(bowserMdl)) { - HuPrcVSleep(); - } - SetBowserState(3); - HuPrcSleep(60); - WipeColorSet(255, 255, 255); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - while(WipeStatGet()) { - HuPrcVSleep(); - } - reset_cam = 0; - for(i=0; i<4; i++) { - GWPlayer[i].space_curr = space[i]; - if(eventSpace == space[i]) { - BoardPlayerMotionStart(i, playerMot[i], 0); - BoardPlayerMotionTimeSet(i, 50.0f); - BoardPlayerMotionSpeedSet(i, 0.0f); - reset_cam = 1; - } else { - BoardPlayerIdleSet(i); - } - BoardPlayerMoveAwayStart(i, GWPlayer[i].space_curr, 1); - } - if(reset_cam) { - BoardCameraTargetGet(&target); - BoardCameraPosGet(&pos); - BoardCameraTargetModelSet(-1); - BoardCameraTargetSet(target.x, target.y, target.z); - BoardCameraPosSet(pos.x, pos.y, pos.z); - } - SetBowserState(4); - HuPrcSleep(60); - BoardModelMotionStart(bowserMdl, 1, 0x40000001); - WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); - while(WipeStatGet()) { - HuPrcVSleep(); - } + Vec pos; + Vec target; + s16 space_old[4]; + s16 space[4]; + s32 i; + s32 player; + s32 player_new; + s32 reset_cam; + BoardWinCreate(2, MAKE_MESSID(3, 16), 5); + BoardWinWait(); + BoardWinKill(); + for(i=0; i<4; i++) { + space_old[i] = GWPlayer[i].space_curr; + } + player=0; + while(player<4) { + player_new = BoardRandMod(4); + if(player_new == player || space_old[player_new] == -1) { + continue; + } + space[player] = space_old[player_new]; + space_old[player_new] = -1; + player++; + } + HuAudFXPlay(857); + BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + while(!BoardModelMotionEndCheck(bowserMdl)) { + HuPrcVSleep(); + } + SetBowserState(3); + HuPrcSleep(60); + WipeColorSet(255, 255, 255); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while(WipeStatGet()) { + HuPrcVSleep(); + } + reset_cam = 0; + for(i=0; i<4; i++) { + GWPlayer[i].space_curr = space[i]; + if(eventSpace == space[i]) { + BoardPlayerMotionStart(i, playerMot[i], 0); + BoardPlayerMotionTimeSet(i, 50.0f); + BoardPlayerMotionSpeedSet(i, 0.0f); + reset_cam = 1; + } else { + BoardPlayerIdleSet(i); + } + BoardPlayerMoveAwayStart(i, GWPlayer[i].space_curr, 1); + } + if(reset_cam) { + BoardCameraTargetGet(&target); + BoardCameraPosGet(&pos); + BoardCameraTargetModelSet(-1); + BoardCameraTargetSet(target.x, target.y, target.z); + BoardCameraPosSet(pos.x, pos.y, pos.z); + } + SetBowserState(4); + HuPrcSleep(60); + BoardModelMotionStart(bowserMdl, 1, 0x40000001); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + while(WipeStatGet()) { + HuPrcVSleep(); + } } static void ExecBowserRevo(void) { - s32 i; - s32 coin; - BoardWinCreate(2, MAKE_MESSID(3, 17), 5); - BoardWinWait(); - BoardWinKill(); - for(coin=i=0; i<4; i++) { - coin += BoardPlayerCoinsGet(i); - } - coin /= 4; - HuAudFXPlay(857); - BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - while(!BoardModelMotionEndCheck(bowserMdl)) { - HuPrcVSleep(); - } - SetBowserState(3); - HuPrcSleep(60); - WipeColorSet(255, 255, 255); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - while(WipeStatGet()) { - HuPrcVSleep(); - } - SetBowserState(4); - for(i=0; i<4; i++) { - BoardPlayerCoinsSet(i, coin); - } - HuPrcSleep(60); - BoardModelMotionStart(bowserMdl, 1, 0x40000001); - WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); - while(WipeStatGet()) { - HuPrcVSleep(); - } + s32 i; + s32 coin; + BoardWinCreate(2, MAKE_MESSID(3, 17), 5); + BoardWinWait(); + BoardWinKill(); + for(coin=i=0; i<4; i++) { + coin += BoardPlayerCoinsGet(i); + } + coin /= 4; + HuAudFXPlay(857); + BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + while(!BoardModelMotionEndCheck(bowserMdl)) { + HuPrcVSleep(); + } + SetBowserState(3); + HuPrcSleep(60); + WipeColorSet(255, 255, 255); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while(WipeStatGet()) { + HuPrcVSleep(); + } + SetBowserState(4); + for(i=0; i<4; i++) { + BoardPlayerCoinsSet(i, coin); + } + HuPrcSleep(60); + BoardModelMotionStart(bowserMdl, 1, 0x40000001); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + while(WipeStatGet()) { + HuPrcVSleep(); + } } static void ExecBowserSuit(void) { - BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - BoardWinCreate(2, MAKE_MESSID(3, 18), 5); - BoardWinWait(); - HuAudFXPlay(857); - BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - HuPrcSleep(10); - StartSuitGive(); - while(!CheckSuitGive()) { - HuPrcVSleep(); - } - BoardWinKill(); - BoardModelAttrSet(bowserMdl, 0x40000004); - while(!BoardModelMotionEndCheck(bowserMdl)) { - HuPrcVSleep(); - } + BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + BoardWinCreate(2, MAKE_MESSID(3, 18), 5); + BoardWinWait(); + HuAudFXPlay(857); + BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + HuPrcSleep(10); + StartSuitGive(); + while(!CheckSuitGive()) { + HuPrcVSleep(); + } + BoardWinKill(); + BoardModelAttrSet(bowserMdl, 0x40000004); + while(!BoardModelMotionEndCheck(bowserMdl)) { + HuPrcVSleep(); + } } typedef struct suit_give_work { - u8 kill : 1; - u8 state; - u8 timer; - u8 idle_timer; - s16 model; + u8 kill : 1; + u8 state; + u8 timer; + u8 idle_timer; + s16 model; } SuitGiveWork; static s32 CheckSuitGive(void) { - if(!suitGiveObj) { - return 1; - } else { - return 0; - } + if(!suitGiveObj) { + return 1; + } else { + return 0; + } } static void StartSuitGive(void) { - omObjData *object; - SuitGiveWork *work; - Vec pos; - object = omAddObjEx(boardObjMan, 258, 0, 0, -1, SuitGiveMain); - suitGiveObj = object; - work = OM_GET_WORK_PTR(suitGiveObj, SuitGiveWork); - work->kill = 0; - work->state = 0; - work->idle_timer = 0; - work->timer = 30; - work->model = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 120), NULL, 0); - BoardModelLayerSet(work->model, 7); - BoardModelScaleSet(work->model, 0.16f, 0.16f, 0.16f); - object->trans.x = 288.0f; - object->trans.y = -64.0f; - pos.x = 288.0f; - pos.y = 240.0f; - object->rot.x = (pos.x-object->trans.x)/30.0f; - object->rot.y = (pos.y-object->trans.y)/30.0f; - object->scale.x = 300.0f; - pos.x = object->trans.x; - pos.y = object->trans.y; - pos.z = object->scale.x; - Hu3D2Dto3D(&pos, 1, &pos); - BoardModelPosSetV(work->model, &pos); + omObjData *object; + SuitGiveWork *work; + Vec pos; + object = omAddObjEx(boardObjMan, 258, 0, 0, -1, SuitGiveMain); + suitGiveObj = object; + work = OM_GET_WORK_PTR(suitGiveObj, SuitGiveWork); + work->kill = 0; + work->state = 0; + work->idle_timer = 0; + work->timer = 30; + work->model = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 120), NULL, 0); + BoardModelLayerSet(work->model, 7); + BoardModelScaleSet(work->model, 0.16f, 0.16f, 0.16f); + object->trans.x = 288.0f; + object->trans.y = -64.0f; + pos.x = 288.0f; + pos.y = 240.0f; + object->rot.x = (pos.x-object->trans.x)/30.0f; + object->rot.y = (pos.y-object->trans.y)/30.0f; + object->scale.x = 300.0f; + pos.x = object->trans.x; + pos.y = object->trans.y; + pos.z = object->scale.x; + Hu3D2Dto3D(&pos, 1, &pos); + BoardModelPosSetV(work->model, &pos); } static void SuitGiveMain(omObjData *object) { - SuitGiveWork *work = OM_GET_WORK_PTR(object, SuitGiveWork); - s32 effect_active; - Vec pos; - if(work->kill || BoardIsKill()) { - BoardModelKill(work->model); - suitGiveObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - if(work->idle_timer) { - work->idle_timer--; - return; - } - - effect_active = 0; - switch(work->state) { - case 0: - if(work->timer == 0) { - work->state = 1; - work->idle_timer = 30; - work->timer = 30; - BoardStatusPosGet(eventPlayer, &pos); - object->rot.x = (pos.x-object->trans.x)/30.0f; - object->rot.y = (pos.y-object->trans.y)/30.0f; - } else { - work->timer--; - } - break; - - case 1: - if(work->timer == 0) { - work->state = 2; - work->idle_timer = 6; - effect_active = 1; - } else { - work->timer--; - } - break; - - case 2: - BoardPlayerItemAdd(eventPlayer, 10); - BoardModelVisibilitySet(work->model, 0); - work->kill = 1; - return; - - default: - break; - } - object->trans.x += object->rot.x; - object->trans.y += object->rot.y; - pos.x = object->trans.x; - pos.y = object->trans.y; - pos.z = object->scale.x; - Hu3D2Dto3D(&pos, 1, &pos); - BoardModelPosSetV(work->model, &pos); - if(effect_active) { - CharModelLayerSetAll(6); - CharModelEffectCreate(1, &pos); - } + SuitGiveWork *work = OM_GET_WORK_PTR(object, SuitGiveWork); + s32 effect_active; + Vec pos; + if(work->kill || BoardIsKill()) { + BoardModelKill(work->model); + suitGiveObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + if(work->idle_timer) { + work->idle_timer--; + return; + } + + effect_active = 0; + switch(work->state) { + case 0: + if(work->timer == 0) { + work->state = 1; + work->idle_timer = 30; + work->timer = 30; + BoardStatusPosGet(eventPlayer, &pos); + object->rot.x = (pos.x-object->trans.x)/30.0f; + object->rot.y = (pos.y-object->trans.y)/30.0f; + } else { + work->timer--; + } + break; + + case 1: + if(work->timer == 0) { + work->state = 2; + work->idle_timer = 6; + effect_active = 1; + } else { + work->timer--; + } + break; + + case 2: + BoardPlayerItemAdd(eventPlayer, 10); + BoardModelVisibilitySet(work->model, 0); + work->kill = 1; + return; + + default: + break; + } + object->trans.x += object->rot.x; + object->trans.y += object->rot.y; + pos.x = object->trans.x; + pos.y = object->trans.y; + pos.z = object->scale.x; + Hu3D2Dto3D(&pos, 1, &pos); + BoardModelPosSetV(work->model, &pos); + if(effect_active) { + CharModelLayerSetAll(6); + CharModelEffectCreate(1, &pos); + } } static const s32 bowserMotTbl[] = { - DATA_MAKE_NUM(DATADIR_BKOOPA, 8), - DATA_MAKE_NUM(DATADIR_BKOOPA, 10), - DATA_MAKE_NUM(DATADIR_BKOOPA, 11), - DATA_MAKE_NUM(DATADIR_BKOOPA, 12), - DATA_MAKE_NUM(DATADIR_BKOOPA, 13), - DATA_NUM_LISTEND + DATA_MAKE_NUM(DATADIR_BKOOPA, 8), + DATA_MAKE_NUM(DATADIR_BKOOPA, 10), + DATA_MAKE_NUM(DATADIR_BKOOPA, 11), + DATA_MAKE_NUM(DATADIR_BKOOPA, 12), + DATA_MAKE_NUM(DATADIR_BKOOPA, 13), + DATA_NUM_LISTEND }; static void CreateBowserObj(void) { - BowserWork *work; - Vec pos; - bowserObj = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecBowserObj); - work = OM_GET_WORK_PTR(bowserObj, BowserWork); - work->kill = 0; - work->jump_state = 0; - work->idle_timer = 0; - work->mot_active = 0; - work->fall_done = 0; - work->jump_done = 0; - if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { - work->state = 1; - } else { - work->state = 0; - } - bowserMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 7), (s32 *)bowserMotTbl, 0); - BoardModelVisibilitySet(bowserMdl, 0); - BoardModelScaleSet(bowserMdl, 2.0f, 2.0f, 2.0f); - BoardPlayerPosGet(eventPlayer, &pos); - BoardModelLayerSet(bowserMdl, 2); - bowserObj->trans.x = pos.x; - bowserObj->trans.y = pos.y; - bowserObj->trans.z = pos.z; - if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { - suitItemMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 99), NULL, 0); - BoardModelLayerSet(suitItemMdl, 2); - BoardModelVisibilitySet(suitItemMdl, 0); - } else { - s32 space = GWPlayer[eventPlayer].space_curr; - BoardSpacePosGet(0, space, &pos); - bowserObj->trans.x = pos.x; - bowserObj->trans.y = pos.y; - bowserObj->trans.z = pos.z; - BoardModelPosSetV(bowserMdl, &pos); - BoardCameraTargetSpaceSet(space); - BoardModelMotionStart(bowserMdl, 1, 0x40000001); - BoardModelVisibilitySet(bowserMdl, 1); - } + BowserWork *work; + Vec pos; + bowserObj = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecBowserObj); + work = OM_GET_WORK_PTR(bowserObj, BowserWork); + work->kill = 0; + work->jump_state = 0; + work->idle_timer = 0; + work->mot_active = 0; + work->fall_done = 0; + work->jump_done = 0; + if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { + work->state = 1; + } else { + work->state = 0; + } + bowserMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 7), (s32 *)bowserMotTbl, 0); + BoardModelVisibilitySet(bowserMdl, 0); + BoardModelScaleSet(bowserMdl, 2.0f, 2.0f, 2.0f); + BoardPlayerPosGet(eventPlayer, &pos); + BoardModelLayerSet(bowserMdl, 2); + bowserObj->trans.x = pos.x; + bowserObj->trans.y = pos.y; + bowserObj->trans.z = pos.z; + if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { + suitItemMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 99), NULL, 0); + BoardModelLayerSet(suitItemMdl, 2); + BoardModelVisibilitySet(suitItemMdl, 0); + } else { + s32 space = GWPlayer[eventPlayer].space_curr; + BoardSpacePosGet(0, space, &pos); + bowserObj->trans.x = pos.x; + bowserObj->trans.y = pos.y; + bowserObj->trans.z = pos.z; + BoardModelPosSetV(bowserMdl, &pos); + BoardCameraTargetSpaceSet(space); + BoardModelMotionStart(bowserMdl, 1, 0x40000001); + BoardModelVisibilitySet(bowserMdl, 1); + } } static void ExecBowserFall(BowserWork *work, omObjData *object); @@ -807,316 +806,316 @@ static void ExecBowserJump(BowserWork *work, omObjData *object); static void ExecBowserObj(omObjData *object) { - BowserWork *work = OM_GET_WORK_PTR(bowserObj, BowserWork); - Vec pos; - Vec rot; - - if(work->kill || BoardIsKill()) { - BoardModelKill(bowserMdl); - bowserMdl = -1; - BoardModelKill(suitItemMdl); - suitItemMdl = -1; - omDelObjEx(HuPrcCurrentGet(), object); - bowserObj = NULL; - return; - } - if(work->idle_timer) { - work->idle_timer--; - return; - } - if(work->mot_active && BoardModelMotionEndCheck(bowserMdl)) { - work->mot_active = 0; - BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); - } - switch(work->state) { - case 1: - ExecBowserFall(work, object); - break; - - case 2: - ExecBowserLaugh(work, object); - break; - - case 3: - ExecBowserPowerUp(work, object); - break; - - case 5: - ExecBowserFire(work, object); - break; - - case 6: - ExecBowserJump(work, object); - break; - - case 4: - BoardModelVisibilitySet(suitItemMdl, 0); - work->state = 0; - break; - - case 0: - break; - } - BoardModelPosSet(bowserMdl, object->trans.x, object->trans.y, object->trans.z); - BoardCameraRotGet(&rot); - pos.x = object->trans.x+(-100.0f*sin(M_PI*BoardModelRotYGet(bowserMdl)/180.0)); - pos.z = object->trans.z+(-100.0f*cos(M_PI*BoardModelRotYGet(bowserMdl)/180.0)); - pos.y = object->trans.y+250.0f; - BoardModelPosSetV(suitItemMdl, &pos); + BowserWork *work = OM_GET_WORK_PTR(bowserObj, BowserWork); + Vec pos; + Vec rot; + + if(work->kill || BoardIsKill()) { + BoardModelKill(bowserMdl); + bowserMdl = -1; + BoardModelKill(suitItemMdl); + suitItemMdl = -1; + omDelObjEx(HuPrcCurrentGet(), object); + bowserObj = NULL; + return; + } + if(work->idle_timer) { + work->idle_timer--; + return; + } + if(work->mot_active && BoardModelMotionEndCheck(bowserMdl)) { + work->mot_active = 0; + BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + } + switch(work->state) { + case 1: + ExecBowserFall(work, object); + break; + + case 2: + ExecBowserLaugh(work, object); + break; + + case 3: + ExecBowserPowerUp(work, object); + break; + + case 5: + ExecBowserFire(work, object); + break; + + case 6: + ExecBowserJump(work, object); + break; + + case 4: + BoardModelVisibilitySet(suitItemMdl, 0); + work->state = 0; + break; + + case 0: + break; + } + BoardModelPosSet(bowserMdl, object->trans.x, object->trans.y, object->trans.z); + BoardCameraRotGet(&rot); + pos.x = object->trans.x+(-100.0f*sind(BoardModelRotYGet(bowserMdl))); + pos.z = object->trans.z+(-100.0f*cosd(BoardModelRotYGet(bowserMdl))); + pos.y = object->trans.y+250.0f; + BoardModelPosSetV(suitItemMdl, &pos); } static void ExecBowserFall(BowserWork *work, omObjData *object) { - Vec pos; - Vec pos_space; - Vec pos_player; - s32 i; - if(!work->jump_state) { - BoardModelVisibilitySet(bowserMdl, 1); - BoardModelMotionStart(bowserMdl, 2, 0); - BoardModelMotionTimeSet(bowserMdl, 100.0f); - work->jump_state = 1; - return; - } - if(BoardModelMotionEndCheck(bowserMdl)) { - work->state = 0; - BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); - return; - } - if(!work->fall_done && !(BoardModelMotionTimeGet(bowserMdl) < 140.0f)) { - BoardPlayerPosGet(eventPlayer, &pos); - HuAudFXPlay(829); - BoardCameraQuakeSet(60, 100.0f); - object->trans.y = pos.y; - BoardPlayerPosGet(eventPlayer, &pos_player); - if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { - HuAudFXPlay(798); - } - pos_player.y += 6.0f; - BoardPlayerPosSetV(eventPlayer, &pos_player); - GWPlayer[eventPlayer].show_next = 0; - BoardPlayerMotionSpeedSet(eventPlayer, 0.0f); - for(i=0; i<4; i++) { - if(eventSpace != GWPlayer[i].space_curr) { - continue; - } - BoardPlayerPosGet(i, &pos_player); - BoardSpacePosGet(0, eventSpace, &pos_space); - pos_player.y = 2.5f+pos_space.y; - BoardPlayerPosSetV(i, &pos_player); - BoardPlayerMotionStart(i, playerMot[i], 0); - BoardPlayerMotionTimeSet(i, 50.0f); - BoardPlayerMotionSpeedSet(i, 0.0f); - } - if(!work->fall_done) { - work->fall_done = 1; - omVibrate(eventPlayer, 12, 4, 2); - } - } - + Vec pos; + Vec pos_space; + Vec pos_player; + s32 i; + if(!work->jump_state) { + BoardModelVisibilitySet(bowserMdl, 1); + BoardModelMotionStart(bowserMdl, 2, 0); + BoardModelMotionTimeSet(bowserMdl, 100.0f); + work->jump_state = 1; + return; + } + if(BoardModelMotionEndCheck(bowserMdl)) { + work->state = 0; + BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + return; + } + if(!work->fall_done && !(BoardModelMotionTimeGet(bowserMdl) < 140.0f)) { + BoardPlayerPosGet(eventPlayer, &pos); + HuAudFXPlay(829); + BoardCameraQuakeSet(60, 100.0f); + object->trans.y = pos.y; + BoardPlayerPosGet(eventPlayer, &pos_player); + if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) { + HuAudFXPlay(798); + } + pos_player.y += 6.0f; + BoardPlayerPosSetV(eventPlayer, &pos_player); + GWPlayer[eventPlayer].show_next = 0; + BoardPlayerMotionSpeedSet(eventPlayer, 0.0f); + for(i=0; i<4; i++) { + if(eventSpace != GWPlayer[i].space_curr) { + continue; + } + BoardPlayerPosGet(i, &pos_player); + BoardSpacePosGet(0, eventSpace, &pos_space); + pos_player.y = 2.5f+pos_space.y; + BoardPlayerPosSetV(i, &pos_player); + BoardPlayerMotionStart(i, playerMot[i], 0); + BoardPlayerMotionTimeSet(i, 50.0f); + BoardPlayerMotionSpeedSet(i, 0.0f); + } + if(!work->fall_done) { + work->fall_done = 1; + omVibrate(eventPlayer, 12, 4, 2); + } + } + } static void ExecBowserLaugh(BowserWork *work, omObjData *object) { - BoardModelMotionStart(bowserMdl, 3, 0); - work->mot_active = 1; - work->state = 0; + BoardModelMotionStart(bowserMdl, 3, 0); + work->mot_active = 1; + work->state = 0; } static void ExecBowserFire(BowserWork *work, omObjData *object) { - BoardModelMotionStart(bowserMdl, 5, 0); - work->state = 0; + BoardModelMotionStart(bowserMdl, 5, 0); + work->state = 0; } static void ExecBowserJump(BowserWork *work, omObjData *object) { - switch(work->jump_state) { - case 0: - BoardModelMotionShiftSet(bowserMdl, 2, 0.0f, 4.0f, HU3D_MOTATTR_NONE); - work->jump_state = 1; - break; - - case 1: - { - s16 model_id = BoardModelIDGet(bowserMdl); - if(Hu3DMotionShiftIDGet(model_id) == -1) { - work->jump_state = 2; - } - } - break; - - case 2: - { - float time = BoardModelMotionTimeGet(bowserMdl); - if(time < 60.0f) { - break; - } - if(!work->jump_done) { - omVibrate(eventPlayer, 12, 12, 0); - HuAudFXPlay(61); - work->jump_done = 1; - } - if(time >= 100.0f) { - BoardModelVisibilitySet(bowserMdl, 0); - work->state = 0; - work->kill = 1; - } - } - break; - } + switch(work->jump_state) { + case 0: + BoardModelMotionShiftSet(bowserMdl, 2, 0.0f, 4.0f, HU3D_MOTATTR_NONE); + work->jump_state = 1; + break; + + case 1: + { + s16 model_id = BoardModelIDGet(bowserMdl); + if(Hu3DMotionShiftIDGet(model_id) == -1) { + work->jump_state = 2; + } + } + break; + + case 2: + { + float time = BoardModelMotionTimeGet(bowserMdl); + if(time < 60.0f) { + break; + } + if(!work->jump_done) { + omVibrate(eventPlayer, 12, 12, 0); + HuAudFXPlay(61); + work->jump_done = 1; + } + if(time >= 100.0f) { + BoardModelVisibilitySet(bowserMdl, 0); + work->state = 0; + work->kill = 1; + } + } + break; + } } static void ExecBowserPowerUp(BowserWork *work, omObjData *object) { - Vec pos; - if(work->jump_state == 0) { - BoardModelVisibilitySet(suitItemMdl, 1); - BoardModelMotionStart(suitItemMdl, 0, 0); - BoardModelScaleSet(suitItemMdl, 10.0f, 10.0f, 10.0f); - pos.x = object->trans.x+(-100.0f*sin(M_PI*BoardModelRotYGet(bowserMdl)/180.0)); - pos.z = object->trans.z+(-100.0f*cos(M_PI*BoardModelRotYGet(bowserMdl)/180.0)); - pos.y = object->trans.y+250.0f; - BoardModelPosSetV(suitItemMdl, &pos); - HuAudFXPlay(850); - } else { - if(work->jump_state >= 100) { - work->state = 0; - } - } - work->jump_state++; + Vec pos; + if(work->jump_state == 0) { + BoardModelVisibilitySet(suitItemMdl, 1); + BoardModelMotionStart(suitItemMdl, 0, 0); + BoardModelScaleSet(suitItemMdl, 10.0f, 10.0f, 10.0f); + pos.x = object->trans.x+(-100.0f*sind(BoardModelRotYGet(bowserMdl))); + pos.z = object->trans.z+(-100.0f*cosd(BoardModelRotYGet(bowserMdl))); + pos.y = object->trans.y+250.0f; + BoardModelPosSetV(suitItemMdl, &pos); + HuAudFXPlay(850); + } else { + if(work->jump_state >= 100) { + work->state = 0; + } + } + work->jump_state++; } static void SetBowserState(s32 state) { - BowserWork *work = OM_GET_WORK_PTR(bowserObj, BowserWork); - work->state = state; - work->jump_state = 0; + BowserWork *work = OM_GET_WORK_PTR(bowserObj, BowserWork); + work->state = state; + work->jump_state = 0; } static s32 CheckBowserIdle(void) { - BowserWork *work; - if(!bowserObj) { - return 1; - } - work = OM_GET_WORK_PTR(bowserObj, BowserWork); - if(work->state != 0 || work->idle_timer != 0) { - return 0; - } else { - return 1; - } + BowserWork *work; + if(!bowserObj) { + return 1; + } + work = OM_GET_WORK_PTR(bowserObj, BowserWork); + if(work->state != 0 || work->idle_timer != 0) { + return 0; + } else { + return 1; + } } static void CreateMiniBowser(void) { - omObjData *object; - MiniBowserWork *work; - object = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecMiniBowser); - miniBowserObj = object; - work = OM_GET_WORK_PTR(object, MiniBowserWork); - work->kill = 0; - work->angle = 0; - work->group = HuSprGrpCreate(1); - BoardSpriteCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 5), 100, NULL, &work->sprite); - HuSprGrpMemberSet(work->group, 0, work->sprite); - HuSprAttrSet(work->group, 0, HUSPR_ATTR_LINEAR); - HuSprGrpPosSet(work->group, 288.0f, 240.0f); - HuSprGrpScaleSet(work->group, 4.0f, 4.0f); + omObjData *object; + MiniBowserWork *work; + object = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecMiniBowser); + miniBowserObj = object; + work = OM_GET_WORK_PTR(object, MiniBowserWork); + work->kill = 0; + work->angle = 0; + work->group = HuSprGrpCreate(1); + BoardSpriteCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 5), 100, NULL, &work->sprite); + HuSprGrpMemberSet(work->group, 0, work->sprite); + HuSprAttrSet(work->group, 0, HUSPR_ATTR_LINEAR); + HuSprGrpPosSet(work->group, 288.0f, 240.0f); + HuSprGrpScaleSet(work->group, 4.0f, 4.0f); } static s32 CheckMiniBowser(void) { - if(miniBowserObj) { - return 0; - } else { - return 1; - } + if(miniBowserObj) { + return 0; + } else { + return 1; + } } static void ExecMiniBowser(omObjData *object) { - MiniBowserWork *work = OM_GET_WORK_PTR(object, MiniBowserWork); - float alpha; - if(work->kill || BoardIsKill()) { - HuSprGrpKill(work->group); - miniBowserObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - OSs16tof32(&work->angle, &alpha); - alpha = sin(M_PI*BoardDAngleCalc(alpha)/180.0); - HuSprTPLvlSet(work->group, 0, ABS(alpha)); - if(work->angle == 60) { - HuAudFXPlay(807); - } - work->angle += 2; - if(work->angle == 90 || work->angle == 270 || work->angle == 450) { - omVibrate(eventPlayer, 12, 4, 2); - } - if(work->angle >= 540) { - work->kill = 1; - } + MiniBowserWork *work = OM_GET_WORK_PTR(object, MiniBowserWork); + float alpha; + if(work->kill || BoardIsKill()) { + HuSprGrpKill(work->group); + miniBowserObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + OSs16tof32(&work->angle, &alpha); + alpha = sind(BoardDAngleCalc(alpha)); + HuSprTPLvlSet(work->group, 0, ABS(alpha)); + if(work->angle == 60) { + HuAudFXPlay(807); + } + work->angle += 2; + if(work->angle == 90 || work->angle == 270 || work->angle == 450) { + omVibrate(eventPlayer, 12, 4, 2); + } + if(work->angle >= 540) { + work->kill = 1; + } } static void CreateBowserEvent(void) { - Vec pos_2d; - Vec pos_3d; - s32 eventSpr[] = { - DATA_MAKE_NUM(DATADIR_BKOOPA, 1), - DATA_MAKE_NUM(DATADIR_BKOOPA, 2), - DATA_MAKE_NUM(DATADIR_BKOOPA, 3), - DATA_MAKE_NUM(DATADIR_BKOOPA, 4), - }; - - - BowserEventData *data; - s32 i; - BowserEventWork *work; - s32 sprite; - bowserEventObj = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecBowserEvent); - work = OM_GET_WORK_PTR(bowserEventObj, BowserEventWork); - work->kill = 0; - work->state = 0; - work->timer = 0; - memset(&bowserEvent, 0, sizeof(BowserEventData)); - data = &bowserEvent; - data->group = HuSprGrpCreate(3); - sprite = eventSpr[GWSystem.bowser_event]; - for(i=0; i<3; i++) { - BoardSpriteCreate(sprite, 100, NULL, &data->sprite[i]); - HuSprGrpMemberSet(data->group, i, data->sprite[i]); - HuSprTPLvlSet(data->group, i, 0.0f); - HuSprPosSet(data->group, i, 0.0f, 0.0f); - data->delay[i] = i*2; - } - HuSprGrpPosSet(data->group, 288.0f, 240.0f); - data->model = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 101), NULL, 0); - pos_2d.x = 288.0f; - pos_2d.y = 240.0f; - pos_2d.z = 1000.0f; - Hu3D2Dto3D(&pos_2d, 1, &pos_3d); - BoardModelMotionStart(data->model, 0, 0x40000001); - BoardModelPosSetV(data->model, &pos_3d); - BoardModelLayerSet(data->model, 2); + Vec pos_2d; + Vec pos_3d; + s32 eventSpr[] = { + DATA_MAKE_NUM(DATADIR_BKOOPA, 1), + DATA_MAKE_NUM(DATADIR_BKOOPA, 2), + DATA_MAKE_NUM(DATADIR_BKOOPA, 3), + DATA_MAKE_NUM(DATADIR_BKOOPA, 4), + }; + + + BowserEventData *data; + s32 i; + BowserEventWork *work; + s32 sprite; + bowserEventObj = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecBowserEvent); + work = OM_GET_WORK_PTR(bowserEventObj, BowserEventWork); + work->kill = 0; + work->state = 0; + work->timer = 0; + memset(&bowserEvent, 0, sizeof(BowserEventData)); + data = &bowserEvent; + data->group = HuSprGrpCreate(3); + sprite = eventSpr[GWSystem.bowser_event]; + for(i=0; i<3; i++) { + BoardSpriteCreate(sprite, 100, NULL, &data->sprite[i]); + HuSprGrpMemberSet(data->group, i, data->sprite[i]); + HuSprTPLvlSet(data->group, i, 0.0f); + HuSprPosSet(data->group, i, 0.0f, 0.0f); + data->delay[i] = i*2; + } + HuSprGrpPosSet(data->group, 288.0f, 240.0f); + data->model = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 101), NULL, 0); + pos_2d.x = 288.0f; + pos_2d.y = 240.0f; + pos_2d.z = 1000.0f; + Hu3D2Dto3D(&pos_2d, 1, &pos_3d); + BoardModelMotionStart(data->model, 0, 0x40000001); + BoardModelPosSetV(data->model, &pos_3d); + BoardModelLayerSet(data->model, 2); } static s32 CheckBowserEvent(void) { - BowserEventWork *work = OM_GET_WORK_PTR(bowserEventObj, BowserEventWork); - - if(work->state != 2) { - return 0; - } else { - return 1; - } + BowserEventWork *work = OM_GET_WORK_PTR(bowserEventObj, BowserEventWork); + + if(work->state != 2) { + return 0; + } else { + return 1; + } } static void StopBowserEvent(void) { - BowserEventWork *work = OM_GET_WORK_PTR(bowserEventObj, BowserEventWork); - work->state = 1; + BowserEventWork *work = OM_GET_WORK_PTR(bowserEventObj, BowserEventWork); + work->state = 1; } static void ShowBowserEvent(BowserEventWork *work, omObjData *object); @@ -1124,187 +1123,187 @@ static void HideBowserEvent(BowserEventWork *work, omObjData *object); static void ExecBowserEvent(omObjData *object) { - BowserEventWork *work = OM_GET_WORK_PTR(object, BowserEventWork); - BowserEventData *data = &bowserEvent; - if(work->kill || BoardIsKill()) { - HuSprGrpKill(data->group); - BoardModelKill(data->model); - bowserEventObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - if(work->timer) { - work->timer--; - return; - } - switch(work->state) { - case 0: - ShowBowserEvent(work, object); - break; - - case 1: - HideBowserEvent(work, object); - break; - - case 2: - break; - } + BowserEventWork *work = OM_GET_WORK_PTR(object, BowserEventWork); + BowserEventData *data = &bowserEvent; + if(work->kill || BoardIsKill()) { + HuSprGrpKill(data->group); + BoardModelKill(data->model); + bowserEventObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + if(work->timer) { + work->timer--; + return; + } + switch(work->state) { + case 0: + ShowBowserEvent(work, object); + break; + + case 1: + HideBowserEvent(work, object); + break; + + case 2: + break; + } } static void ShowBowserEvent(BowserEventWork *work, omObjData *object) { - BowserEventData *data; - s32 i; - s32 count; - float angle; - float tplvl; - float scale; - data = &bowserEvent; - for(count=i=0; i<3; i++) { - if(data->delay[i]) { - data->delay[i]--; - } else { - if(data->angle[i] > 90) { - count++; - continue; - } - OSs16tof32(&data->angle[i], &angle); - tplvl = sin(M_PI*angle/180.0); - scale = sin(M_PI*angle/180.0); - HuSprTPLvlSet(data->group, i, tplvl); - HuSprScaleSet(data->group, i, scale, scale); - BoardModelAlphaSet(data->model, 255.0f*tplvl); - data->angle[i] += 9; - if(data->angle[i] > 90 && i != 0) { - HuSprAttrSet(data->group, i, HUSPR_ATTR_DISPOFF); - } - } - } - if(count == 3) { - work->state = 2; - work->timer = 60; - } + BowserEventData *data; + s32 i; + s32 count; + float angle; + float tplvl; + float scale; + data = &bowserEvent; + for(count=i=0; i<3; i++) { + if(data->delay[i]) { + data->delay[i]--; + } else { + if(data->angle[i] > 90) { + count++; + continue; + } + OSs16tof32(&data->angle[i], &angle); + tplvl = sind(angle); + scale = sind(angle); + HuSprTPLvlSet(data->group, i, tplvl); + HuSprScaleSet(data->group, i, scale, scale); + BoardModelAlphaSet(data->model, 255.0f*tplvl); + data->angle[i] += 9; + if(data->angle[i] > 90 && i != 0) { + HuSprAttrSet(data->group, i, HUSPR_ATTR_DISPOFF); + } + } + } + if(count == 3) { + work->state = 2; + work->timer = 60; + } } static void HideBowserEvent(BowserEventWork *work, omObjData *object) { - BowserEventData *data = &bowserEvent; - float angle; - float tplvl; - OSs16tof32(&data->angle[0], &angle); - tplvl = sin(M_PI*angle/180.0); - HuSprTPLvlSet(data->group, 0, tplvl); - BoardModelAlphaSet(data->model, 255.0f*tplvl); - data->angle[0] -= 10; - if(data->angle[0] < 0) { - work->kill = 1; - HuSprAttrSet(data->group, 0, HUSPR_ATTR_DISPOFF); - } + BowserEventData *data = &bowserEvent; + float angle; + float tplvl; + OSs16tof32(&data->angle[0], &angle); + tplvl = sind(angle); + HuSprTPLvlSet(data->group, 0, tplvl); + BoardModelAlphaSet(data->model, 255.0f*tplvl); + data->angle[0] -= 10; + if(data->angle[0] < 0) { + work->kill = 1; + HuSprAttrSet(data->group, 0, HUSPR_ATTR_DISPOFF); + } } static void ConfigBowserEvent(void) { - s32 i; - s32 chance; - s32 coins; - s32 item_full; - item_full = 0; - if(BoardPlayerItemCount(eventPlayer) == 3) { - item_full = 1; - } - for(coins=i=0; i<4; i++) { - coins += BoardPlayerCoinsGet(i); - } - retry: - while(1) { - chance = BoardRandMod(100); - if(chance >= 95) { - if(item_full) { - continue; - } - if(GWSystem.max_turn-GWSystem.turn == 0) { - continue; - } - GWSystem.bowser_event = 3; - break; - } else if(chance >= 85) { - GWSystem.bowser_event = 2; - break; - } else if(chance >= 70) { - GWSystem.bowser_event = 1; - break; - } else { - if(coins == 0) { - continue; - } - GWSystem.bowser_event = 0; - GWSystem.bowser_loss = BoardRandMod(3); - break; - } - } + s32 i; + s32 chance; + s32 coins; + s32 item_full; + item_full = 0; + if(BoardPlayerItemCount(eventPlayer) == 3) { + item_full = 1; + } + for(coins=i=0; i<4; i++) { + coins += BoardPlayerCoinsGet(i); + } + retry: + while(1) { + chance = BoardRandMod(100); + if(chance >= 95) { + if(item_full) { + continue; + } + if(GWSystem.max_turn-GWSystem.turn == 0) { + continue; + } + GWSystem.bowser_event = 3; + break; + } else if(chance >= 85) { + GWSystem.bowser_event = 2; + break; + } else if(chance >= 70) { + GWSystem.bowser_event = 1; + break; + } else { + if(coins == 0) { + continue; + } + GWSystem.bowser_event = 0; + GWSystem.bowser_loss = BoardRandMod(3); + break; + } + } } static void CreatePlayerMot(void) { - s32 scareMotTbl[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), - DATA_MAKE_NUM(DATADIR_LUIGIMOT, 27), - DATA_MAKE_NUM(DATADIR_PEACHMOT, 27), - DATA_MAKE_NUM(DATADIR_YOSHIMOT, 27), - DATA_MAKE_NUM(DATADIR_WARIOMOT, 27), - DATA_MAKE_NUM(DATADIR_DONKEYMOT, 27), - DATA_MAKE_NUM(DATADIR_DAISYMOT, 27), - DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 27), - }; - s32 jumpMotTbl[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 26), - DATA_MAKE_NUM(DATADIR_LUIGIMOT, 26), - DATA_MAKE_NUM(DATADIR_PEACHMOT, 26), - DATA_MAKE_NUM(DATADIR_YOSHIMOT, 26), - DATA_MAKE_NUM(DATADIR_WARIOMOT, 26), - DATA_MAKE_NUM(DATADIR_DONKEYMOT, 26), - DATA_MAKE_NUM(DATADIR_DAISYMOT, 26), - DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 26), - }; - s32 playerMotTbl[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 31), - DATA_MAKE_NUM(DATADIR_LUIGIMOT, 31), - DATA_MAKE_NUM(DATADIR_PEACHMOT, 31), - DATA_MAKE_NUM(DATADIR_YOSHIMOT, 31), - DATA_MAKE_NUM(DATADIR_WARIOMOT, 31), - DATA_MAKE_NUM(DATADIR_DONKEYMOT, 31), - DATA_MAKE_NUM(DATADIR_DAISYMOT, 31), - DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 31), - }; - s32 i; - s32 character; - character = GWPlayer[eventPlayer].character; - scareMot = BoardPlayerMotionCreate(eventPlayer, scareMotTbl[character]); - jumpMot = BoardPlayerMotionCreate(eventPlayer, jumpMotTbl[character]); - for(i=0; i<4; i++) { - character = GWPlayer[i].character; - playerMot[i] = BoardPlayerMotionCreate(i, playerMotTbl[character]); - } + s32 scareMotTbl[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 27), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 27), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 27), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 27), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 27), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 27), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 27), + }; + s32 jumpMotTbl[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 26), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 26), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 26), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 26), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 26), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 26), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 26), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 26), + }; + s32 playerMotTbl[] = { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 31), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 31), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 31), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 31), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 31), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 31), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 31), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 31), + }; + s32 i; + s32 character; + character = GWPlayer[eventPlayer].character; + scareMot = BoardPlayerMotionCreate(eventPlayer, scareMotTbl[character]); + jumpMot = BoardPlayerMotionCreate(eventPlayer, jumpMotTbl[character]); + for(i=0; i<4; i++) { + character = GWPlayer[i].character; + playerMot[i] = BoardPlayerMotionCreate(i, playerMotTbl[character]); + } } static void KillPlayerMot(void) { - s32 i; - if(scareMot > 0) { - BoardPlayerMotionKill(eventPlayer, scareMot); - scareMot = -1; - } - if(jumpMot > 0) { - BoardPlayerMotionKill(eventPlayer, jumpMot); - jumpMot = -1; - } - for(i=0; i<4; i++) { - if(playerMot[i] > 0) { - BoardPlayerMotionKill(i, playerMot[i]); - playerMot[i] = -1; - } - } + s32 i; + if(scareMot > 0) { + BoardPlayerMotionKill(eventPlayer, scareMot); + scareMot = -1; + } + if(jumpMot > 0) { + BoardPlayerMotionKill(eventPlayer, jumpMot); + jumpMot = -1; + } + for(i=0; i<4; i++) { + if(playerMot[i] > 0) { + BoardPlayerMotionKill(i, playerMot[i]); + playerMot[i] = -1; + } + } } static void BowserFireHook(ModelData *model, ParticleData *particle, Mtx matrix); @@ -1314,103 +1313,103 @@ static s32 CheckBowserFire(HsfanimStruct01 *arg0); static void InitBowserFire(void) { - fireAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_BOARD, 106)); - fireParMan = Hu3DParticleCreate(fireAnim, 30); - Hu3DParticleColSet(fireParMan, 255, 255, 255); - Hu3DParticleScaleSet(fireParMan, 10.0f); - Hu3DParticleHookSet(fireParMan, BowserFireHook); - Hu3DParticleBlendModeSet(fireParMan, 1); - Hu3DModelLayerSet(fireParMan, 2); + fireAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_BOARD, 106)); + fireParMan = Hu3DParticleCreate(fireAnim, 30); + Hu3DParticleColSet(fireParMan, 255, 255, 255); + Hu3DParticleScaleSet(fireParMan, 10.0f); + Hu3DParticleHookSet(fireParMan, BowserFireHook); + Hu3DParticleBlendModeSet(fireParMan, 1); + Hu3DModelLayerSet(fireParMan, 2); } static void BowserFireHook(ModelData *model, ParticleData *particle, Mtx matrix) { - HsfanimStruct01* var_r30; - s32 i; - s32 var_r28; - Vec pos; - Hu3DModelObjPosGet(BoardModelIDGet(bowserMdl), "itemhook_M_1", &pos); - if (particle->unk_34 == 0) { - var_r30 = particle->unk_48; + HsfanimStruct01* var_r30; + s32 i; + s32 var_r28; + Vec pos; + Hu3DModelObjPosGet(BoardModelIDGet(bowserMdl), "itemhook_M_1", &pos); + if (particle->unk_34 == 0) { + var_r30 = particle->unk_48; for (i = 0; i < particle->unk_30; i++, var_r30++) { - var_r30->unk2C = 0.0f; - } - particle->unk_34 = 1; - particle->unk_00 = 0; - } - if((particle->unk_34 & 0x3) == 0) { - var_r30 = particle->unk_48; - for(var_r28=0; var_r28unk_30; var_r28++, var_r30++) { - if(var_r30->unk2C == 0.0f) { - break; - } - } - if(var_r28 != particle->unk_30) { - var_r30->unk34 = pos; - particle->unk_00++; - SpawnBowserFire(var_r30); - } - } - var_r30 = particle->unk_48; - for (i = 0; i < particle->unk_30; i++, var_r30++) { - if(var_r30->unk2C != 0.0f && CheckBowserFire(var_r30)) { - particle->unk_00--; - } - } + var_r30->unk2C = 0.0f; + } + particle->unk_34 = 1; + particle->unk_00 = 0; + } + if((particle->unk_34 & 0x3) == 0) { + var_r30 = particle->unk_48; + for(var_r28=0; var_r28unk_30; var_r28++, var_r30++) { + if(var_r30->unk2C == 0.0f) { + break; + } + } + if(var_r28 != particle->unk_30) { + var_r30->unk34 = pos; + particle->unk_00++; + SpawnBowserFire(var_r30); + } + } + var_r30 = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, var_r30++) { + if(var_r30->unk2C != 0.0f && CheckBowserFire(var_r30)) { + particle->unk_00--; + } + } } static void SpawnBowserFire(HsfanimStruct01 *arg0) { - Vec dir; - BoardCameraDirGet(&dir); - arg0->unk08.x = 0.0f; - arg0->unk08.y = 0.0f; - arg0->unk08.z = 0.0f; - arg0->unk14.x = -dir.x*((0.5f*BoardRandFloat())+0.5f); - arg0->unk14.y = -dir.y*((0.5f*BoardRandFloat())+0.5f); - arg0->unk14.z = -dir.z*((0.5f*BoardRandFloat())+0.5f); - arg0->unk24 = 1.025f; - arg0->unk40.a = 254; - arg0->unk40.r = 255; - arg0->unk40.g = 255; - arg0->unk40.b = 255; - arg0->unk2C = 100.0f; + Vec dir; + BoardCameraDirGet(&dir); + arg0->unk08.x = 0.0f; + arg0->unk08.y = 0.0f; + arg0->unk08.z = 0.0f; + arg0->unk14.x = -dir.x*((0.5f*BoardRandFloat())+0.5f); + arg0->unk14.y = -dir.y*((0.5f*BoardRandFloat())+0.5f); + arg0->unk14.z = -dir.z*((0.5f*BoardRandFloat())+0.5f); + arg0->unk24 = 1.025f; + arg0->unk40.a = 254; + arg0->unk40.r = 255; + arg0->unk40.g = 255; + arg0->unk40.b = 255; + arg0->unk2C = 100.0f; } static s32 CheckBowserFire(HsfanimStruct01 *arg0) { - arg0->unk34.x += arg0->unk08.x; - arg0->unk34.y += arg0->unk08.y; - arg0->unk34.z += arg0->unk08.z; - arg0->unk08.x += arg0->unk14.x; - arg0->unk08.y += arg0->unk14.y; - arg0->unk08.z += arg0->unk14.z; - arg0->unk40.a -= 8; - arg0->unk2C *= arg0->unk24; - if(arg0->unk40.a == 0.0f) { - arg0->unk40.a = 0; - arg0->unk2C = 0.0f; - return 1; - } - return 0; + arg0->unk34.x += arg0->unk08.x; + arg0->unk34.y += arg0->unk08.y; + arg0->unk34.z += arg0->unk08.z; + arg0->unk08.x += arg0->unk14.x; + arg0->unk08.y += arg0->unk14.y; + arg0->unk08.z += arg0->unk14.z; + arg0->unk40.a -= 8; + arg0->unk2C *= arg0->unk24; + if(arg0->unk40.a == 0.0f) { + arg0->unk40.a = 0; + arg0->unk2C = 0.0f; + return 1; + } + return 0; } static void KillBowserFire(void) { - if(fireParMan != -1) { - Hu3DModelKill(fireParMan); - fireParMan = -1; - fireAnim = NULL; - } + if(fireParMan != -1) { + Hu3DModelKill(fireParMan); + fireParMan = -1; + fireAnim = NULL; + } } typedef struct mini_bowser_balloon_work { - u8 kill : 1; - u8 state; - u16 timer; - s16 angle; - float offset; - s16 *models; + u8 kill : 1; + u8 state; + u16 timer; + s16 angle; + float offset; + s16 *models; } MiniBowserBalloonWork; static void MiniBowserTake(void); @@ -1433,384 +1432,384 @@ static void WaitMiniBowserMotion(void); static s32 ExecMiniBowserEvent(void) { - s32 doneF = 0; - CreateMiniBowserBalloon(); - SetMiniBowserBalloonState(0); - while(GetMiniBowserBalloonState() != 2) { - HuPrcVSleep(); - } - BoardFilterFadeOut(30); - BoardAudSeqFadeOut(1, 1000); - HuPrcSleep(30); - BoardAudSeqFadeOutFast(1); - BoardMusStart(1, 11, 127, 0); - HuAudFXPlay(62); - BoardWinCreate(2, MAKE_MESSID(3, 0), 6); - BoardWinWait(); - if(BoardRandMod(100) < 70) { - MiniBowserTake(); - } else { - MiniBowserTakeAll(); - } - //5% chance bowser will appear after baby bowser - if(BoardRandMod(100) < 5) { - doneF = 1; - } - if(doneF) { - HuPrcSleep(60); - BoardWinCreate(2, MAKE_MESSID(3, 6), 6); - BoardWinWait(); - BoardWinKill(); - HuAudFXPlay(62); - SetMiniBowserMotion(6, 10, 1); - HuPrcSleep(60); - } else { - HuAudFXPlay(62); - BoardWinCreate(2, MAKE_MESSID(3, 2), 6); - BoardWinWait(); - BoardWinKill(); - BoardAudSeqFadeOut(1, 1000); - SetMiniBowserMotion(4, 10, 1); - HuPrcSleep(30); - } - SetMiniBowserBalloonState(1); - while(GetMiniBowserBalloonState() != 2) { - HuPrcVSleep(); - } - MiniBowserBalloonStop(); - return doneF; + s32 doneF = 0; + CreateMiniBowserBalloon(); + SetMiniBowserBalloonState(0); + while(GetMiniBowserBalloonState() != 2) { + HuPrcVSleep(); + } + BoardFilterFadeOut(30); + BoardAudSeqFadeOut(1, 1000); + HuPrcSleep(30); + BoardAudSeqFadeOutFast(1); + BoardMusStart(1, 11, 127, 0); + HuAudFXPlay(62); + BoardWinCreate(2, MAKE_MESSID(3, 0), 6); + BoardWinWait(); + if(BoardRandMod(100) < 70) { + MiniBowserTake(); + } else { + MiniBowserTakeAll(); + } + //5% chance bowser will appear after baby bowser + if(BoardRandMod(100) < 5) { + doneF = 1; + } + if(doneF) { + HuPrcSleep(60); + BoardWinCreate(2, MAKE_MESSID(3, 6), 6); + BoardWinWait(); + BoardWinKill(); + HuAudFXPlay(62); + SetMiniBowserMotion(6, 10, 1); + HuPrcSleep(60); + } else { + HuAudFXPlay(62); + BoardWinCreate(2, MAKE_MESSID(3, 2), 6); + BoardWinWait(); + BoardWinKill(); + BoardAudSeqFadeOut(1, 1000); + SetMiniBowserMotion(4, 10, 1); + HuPrcSleep(30); + } + SetMiniBowserBalloonState(1); + while(GetMiniBowserBalloonState() != 2) { + HuPrcVSleep(); + } + MiniBowserBalloonStop(); + return doneF; } static void MiniBowserTake(void) { - u8 coinSteal[][3] = { - 20, 20, 30, - 20, 20, 30, - 10, 15, 20, - 10, 15, 20 - }; - s32 coin_inc; - s32 game_part; - u8 steal; - s32 i; - u32 mess; - s32 delay; - s32 turn; - s32 turn_max; - turn = GWSystem.turn-1; - turn_max = GWSystem.max_turn; - game_part = turn/(turn_max/3); - if(game_part >= 3) { - game_part = 2; - } - steal = (u8)coinSteal[GWPlayer[eventPlayer].rank][game_part]; - sprintf(coinStealStrAll, "%d", steal); - SetMiniBowserMotion(2, 10, 0); - if(steal >= 20) { - delay = 3; - } else { - delay = 6; - } - if(BoardPlayerCoinsGet(eventPlayer) != 0) { - mess = MAKE_MESSID(3, 1); - coin_inc = -1; - } else { - mess = MAKE_MESSID(3, 3); - steal = 10; - coin_inc = 1; - } - HuAudFXPlay(62); - BoardWinCreate(2, mess, 6); - BoardWinInsertMesSet(MAKE_MESSID_PTR(coinStealStrAll), 0); - BoardWinWait(); - if(coin_inc > 0) { - SetMiniBowserMotion(5, 10, 0); - } else { - SetMiniBowserMotion(3, 10, 1); - } - if(coin_inc < 0) { - omVibrate(eventPlayer, 12, 6, 6); - } - if(coin_inc < 0) { - BoardPlayerMotionShiftSet(eventPlayer, 13, 0.0f, 4.0f, HU3D_MOTATTR_NONE); - } else { - BoardPlayerMotionShiftSet(eventPlayer, 12, 0.0f, 4.0f, HU3D_MOTATTR_NONE); - } - for(i=0; i= 3) { + game_part = 2; + } + steal = (u8)coinSteal[GWPlayer[eventPlayer].rank][game_part]; + sprintf(coinStealStrAll, "%d", steal); + SetMiniBowserMotion(2, 10, 0); + if(steal >= 20) { + delay = 3; + } else { + delay = 6; + } + if(BoardPlayerCoinsGet(eventPlayer) != 0) { + mess = MAKE_MESSID(3, 1); + coin_inc = -1; + } else { + mess = MAKE_MESSID(3, 3); + steal = 10; + coin_inc = 1; + } + HuAudFXPlay(62); + BoardWinCreate(2, mess, 6); + BoardWinInsertMesSet(MAKE_MESSID_PTR(coinStealStrAll), 0); + BoardWinWait(); + if(coin_inc > 0) { + SetMiniBowserMotion(5, 10, 0); + } else { + SetMiniBowserMotion(3, 10, 1); + } + if(coin_inc < 0) { + omVibrate(eventPlayer, 12, 6, 6); + } + if(coin_inc < 0) { + BoardPlayerMotionShiftSet(eventPlayer, 13, 0.0f, 4.0f, HU3D_MOTATTR_NONE); + } else { + BoardPlayerMotionShiftSet(eventPlayer, 12, 0.0f, 4.0f, HU3D_MOTATTR_NONE); + } + for(i=0; i= 3) { - game_part = 2; - } - steal = (u8)coinSteal[game_part]; - sprintf(coinStealStr, "%d", steal); - SetMiniBowserMotion(2, 10, 0); - for(coin_total=j=0; j<4; j++) { - coin_total += BoardPlayerCoinsGet(j); - } - if(coin_total != 0) { - mess = MAKE_MESSID(3, 4); - coin_inc = -1; - } else { - mess = MAKE_MESSID(3, 5); - steal = 10; - coin_inc = 1; - } - HuAudFXPlay(62); - BoardWinCreate(2, mess, 6); - BoardWinInsertMesSet(MAKE_MESSID_PTR(coinStealStr), 0); - BoardWinWait(); - if(coin_inc > 0) { - SetMiniBowserMotion(5, 10, 0); - } else { - SetMiniBowserMotion(3, 10, 1); - } - if(coin_inc < 0) { - for(i=0; i<4; i++) { - omVibrate(i, 12, 6, 6); - } - } - for(i=0; i<4; i++) { - if(coin_inc < 0) { - BoardPlayerMotionShiftSet(i, 13, 0.0f, 4.0f, HU3D_MOTATTR_NONE); - } else { - BoardPlayerMotionShiftSet(i, 12, 0.0f, 4.0f, HU3D_MOTATTR_NONE); - } - } - if(steal >= 20) { - delay = 3; - } else { - delay = 6; - } - for(i=0; i= 3) { + game_part = 2; + } + steal = (u8)coinSteal[game_part]; + sprintf(coinStealStr, "%d", steal); + SetMiniBowserMotion(2, 10, 0); + for(coin_total=j=0; j<4; j++) { + coin_total += BoardPlayerCoinsGet(j); + } + if(coin_total != 0) { + mess = MAKE_MESSID(3, 4); + coin_inc = -1; + } else { + mess = MAKE_MESSID(3, 5); + steal = 10; + coin_inc = 1; + } + HuAudFXPlay(62); + BoardWinCreate(2, mess, 6); + BoardWinInsertMesSet(MAKE_MESSID_PTR(coinStealStr), 0); + BoardWinWait(); + if(coin_inc > 0) { + SetMiniBowserMotion(5, 10, 0); + } else { + SetMiniBowserMotion(3, 10, 1); + } + if(coin_inc < 0) { + for(i=0; i<4; i++) { + omVibrate(i, 12, 6, 6); + } + } + for(i=0; i<4; i++) { + if(coin_inc < 0) { + BoardPlayerMotionShiftSet(i, 13, 0.0f, 4.0f, HU3D_MOTATTR_NONE); + } else { + BoardPlayerMotionShiftSet(i, 12, 0.0f, 4.0f, HU3D_MOTATTR_NONE); + } + } + if(steal >= 20) { + delay = 3; + } else { + delay = 6; + } + for(i=0; ikill = 1; - } + if(miniBowserBalloonObj) { + OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork)->kill = 1; + } } static s32 GetMiniBowserBalloonState(void) { - return OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork)->state; + return OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork)->state; } static void SetMiniBowserBalloonState(s32 state) { - OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork)->state = state; + OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork)->state = state; } static void CreateMiniBowserBalloon(void) { - MiniBowserBalloonWork *work; - s16 *models; - Vec pos; - miniBowserBalloonObj = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecMiniBowserBalloon); - work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); - work->kill = 0; - work->state = 0; - work->timer = 0; - work->offset = 0; - work->angle = 0; - work->models = HuMemDirectMallocNum(HEAP_SYSTEM, 9*sizeof(s16), MEMORY_DEFAULT_NUM); - models = work->models; - models[0] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 14), (s32 *)miniBowserMotTbl, 0); - models[1] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 0), NULL, 0); - BoardPlayerPosGet(eventPlayer, &pos); - miniBowserBalloonObj->trans.x = pos.x; - miniBowserBalloonObj->trans.y = pos.y+800.0f; - miniBowserBalloonObj->trans.z = pos.z; - BoardModelHookSet(models[1], "minik01", models[0]); - BoardModelPosSet(models[1], miniBowserBalloonObj->trans.x, - miniBowserBalloonObj->trans.y, - miniBowserBalloonObj->trans.z); - SetMiniBowserMotion(1, 0, 1); + MiniBowserBalloonWork *work; + s16 *models; + Vec pos; + miniBowserBalloonObj = omAddObjEx(boardObjMan, 257, 0, 0, -1, ExecMiniBowserBalloon); + work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); + work->kill = 0; + work->state = 0; + work->timer = 0; + work->offset = 0; + work->angle = 0; + work->models = HuMemDirectMallocNum(HEAP_SYSTEM, 9*sizeof(s16), MEMORY_DEFAULT_NUM); + models = work->models; + models[0] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 14), (s32 *)miniBowserMotTbl, 0); + models[1] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BKOOPA, 0), NULL, 0); + BoardPlayerPosGet(eventPlayer, &pos); + miniBowserBalloonObj->trans.x = pos.x; + miniBowserBalloonObj->trans.y = pos.y+800.0f; + miniBowserBalloonObj->trans.z = pos.z; + BoardModelHookSet(models[1], "minik01", models[0]); + BoardModelPosSet(models[1], miniBowserBalloonObj->trans.x, + miniBowserBalloonObj->trans.y, + miniBowserBalloonObj->trans.z); + SetMiniBowserMotion(1, 0, 1); } static void ExecMiniBowserBalloon(omObjData *object) { - MiniBowserBalloonWork *work; - s16 *models; - work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); - models = work->models; - if(work->kill || BoardIsKill()) { - BoardModelKill(models[0]); - BoardModelKill(models[1]); - HuMemDirectFree(work->models); - miniBowserBalloonObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - if(work->timer) { - work->timer--; - } else { - switch(work->state) { - case 0: - MiniBowserBalloonFall(work, object); - break; - - case 1: - MiniBowserBalloonRaise(work, object); - break; - - case 2: - MiniBowserBalloonHover(work, object); - break; - } - } - BoardModelPosSet(models[1], object->trans.x, object->trans.y+work->offset, object->trans.z); + MiniBowserBalloonWork *work; + s16 *models; + work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); + models = work->models; + if(work->kill || BoardIsKill()) { + BoardModelKill(models[0]); + BoardModelKill(models[1]); + HuMemDirectFree(work->models); + miniBowserBalloonObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + if(work->timer) { + work->timer--; + } else { + switch(work->state) { + case 0: + MiniBowserBalloonFall(work, object); + break; + + case 1: + MiniBowserBalloonRaise(work, object); + break; + + case 2: + MiniBowserBalloonHover(work, object); + break; + } + } + BoardModelPosSet(models[1], object->trans.x, object->trans.y+work->offset, object->trans.z); } static void MiniBowserBalloonHover(MiniBowserBalloonWork *work, omObjData *object) { - float angle; - work->angle++; - if(work->angle >= 360) { - work->angle = 0; - } - OSs16tof32(&work->angle, &angle); - work->offset = 10.0*sin(M_PI*angle/180.0); + float angle; + work->angle++; + if(work->angle >= 360) { + work->angle = 0; + } + OSs16tof32(&work->angle, &angle); + work->offset = 10.0*sind(angle); } static void MiniBowserBalloonFall(MiniBowserBalloonWork *work, omObjData *object) { - Vec pos; - BoardPlayerPosGet(eventPlayer, &pos); - pos.y += 250.0f; - if(object->trans.y < pos.y) { - object->trans.y = pos.y; - work->state = 2; - } else { - object->trans.y += -10.0f; - } + Vec pos; + BoardPlayerPosGet(eventPlayer, &pos); + pos.y += 250.0f; + if(object->trans.y < pos.y) { + object->trans.y = pos.y; + work->state = 2; + } else { + object->trans.y += -10.0f; + } } static void MiniBowserBalloonRaise(MiniBowserBalloonWork *work, omObjData *object) { - Vec pos; - BoardPlayerPosGet(eventPlayer, &pos); - pos.y += 800.0f; - if(object->trans.y > pos.y) { - work->state = 2; - } else { - object->trans.y += 10.0f; - } + Vec pos; + BoardPlayerPosGet(eventPlayer, &pos); + pos.y += 800.0f; + if(object->trans.y > pos.y) { + work->state = 2; + } else { + object->trans.y += 10.0f; + } } static void SetMiniBowserMotion(s32 mot, u8 end, s32 pause) { - s16 *models; - u32 attr; - float shift_end; - MiniBowserBalloonWork *work; - work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); - models = work->models; - if(pause) { - attr = HU3D_MOTATTR_LOOP; - } else { - attr = HU3D_MOTATTR_NONE; - } - if(end) { - OSu8tof32(&end, &shift_end); - BoardModelMotionShiftSet(models[0], mot, 0, shift_end, attr); - } else { - BoardModelMotionStart(models[0], mot, attr); - } + s16 *models; + u32 attr; + float shift_end; + MiniBowserBalloonWork *work; + work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); + models = work->models; + if(pause) { + attr = HU3D_MOTATTR_LOOP; + } else { + attr = HU3D_MOTATTR_NONE; + } + if(end) { + OSu8tof32(&end, &shift_end); + BoardModelMotionShiftSet(models[0], mot, 0, shift_end, attr); + } else { + BoardModelMotionStart(models[0], mot, attr); + } } static void SetMiniBowserMotionPause(s32 flag) { - s16 *models; - MiniBowserBalloonWork *work; - work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); - models = work->models; - if(flag) { - BoardModelAttrSet(models[0], 0x40000001); - } else { - BoardModelAttrReset(models[0], 0x40000001); - } + s16 *models; + MiniBowserBalloonWork *work; + work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); + models = work->models; + if(flag) { + BoardModelAttrSet(models[0], 0x40000001); + } else { + BoardModelAttrReset(models[0], 0x40000001); + } } static void WaitMiniBowserMotion(void) { - s16 *models; - MiniBowserBalloonWork *work; - work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); - models = work->models; - BoardModelAttrReset(models[0], 0x40000001); - while(!BoardModelMotionEndCheck(models[0])) { - HuPrcVSleep(); - } + s16 *models; + MiniBowserBalloonWork *work; + work = OM_GET_WORK_PTR(miniBowserBalloonObj, MiniBowserBalloonWork); + models = work->models; + BoardModelAttrReset(models[0], 0x40000001); + while(!BoardModelMotionEndCheck(models[0])) { + HuPrcVSleep(); + } } diff --git a/src/game/board/main.c b/src/game/board/main.c index 119780c2..68440f98 100644 --- a/src/game/board/main.c +++ b/src/game/board/main.c @@ -1,5 +1,5 @@ #include "game/gamework_data.h" -#include "math.h" +#include "ext_math.h" #include "game/object.h" #include "game/flag.h" #include "game/data.h" @@ -23,9 +23,9 @@ #include "game/msm.h" typedef struct camera_view { - s16 x_rot; - s16 zoom; - s16 fov; + s16 x_rot; + s16 zoom; + s16 fov; } CameraView; omObjData *boardMainObj; @@ -54,12 +54,12 @@ static BoardCameraData cameraBackup; static OverlayID nextOvl = OVL_INVALID; static CameraView camViewTbl[] = { - { 0, 0, 25 }, - { -33, 3200, 25 }, - { -33, 2100, 25 }, - { -33, 1800, 25 }, - { -33, 12640, 25 }, - { -33, 3200, 25 }, + { 0, 0, 25 }, + { -33, 3200, 25 }, + { -33, 2100, 25 }, + { -33, 1800, 25 }, + { -33, 12640, 25 }, + { -33, 3200, 25 }, }; @@ -83,1181 +83,1181 @@ static void DestroyBoard(void); void BoardObjectSetup(BoardFunc create, BoardFunc destroy) { - omSysPauseEnable(FALSE); - if(!_CheckFlag(FLAG_ID_MAKE(1, 0))) { - _SetFlag(FLAG_ID_MAKE(1, 0)); - _ClearFlag(FLAG_ID_MAKE(2, 1)); - _ClearFlag(FLAG_ID_MAKE(2, 3)); - _ClearFlag(FLAG_ID_MAKE(2, 0)); - _ClearFlag(FLAG_ID_MAKE(2, 2)); - _ClearFlag(FLAG_ID_MAKE(2, 4)); - _ClearFlag(FLAG_ID_MAKE(2, 5)); - _ClearFlag(FLAG_ID_MAKE(1, 6)); - _ClearFlag(FLAG_ID_MAKE(1, 9)); - _ClearFlag(FLAG_ID_MAKE(0, 8)); - _ClearFlag(FLAG_ID_MAKE(0, 10)); - BoardMGSetupPlayClear(); - } - - nextOvl = OVL_INVALID; - _SetFlag(FLAG_ID_MAKE(1, 28)); - _SetFlag(FLAG_ID_MAKE(1, 14)); - _ClearFlag(FLAG_ID_MAKE(1, 16)); - _ClearFlag(FLAG_ID_MAKE(1, 17)); - _ClearFlag(FLAG_ID_MAKE(1, 18)); - _ClearFlag(FLAG_ID_MAKE(1, 19)); - _ClearFlag(FLAG_ID_MAKE(1, 20)); - _ClearFlag(FLAG_ID_MAKE(1, 21)); - _ClearFlag(FLAG_ID_MAKE(1, 23)); - _ClearFlag(FLAG_ID_MAKE(1, 24)); - _ClearFlag(FLAG_ID_MAKE(1, 25)); - _ClearFlag(FLAG_ID_MAKE(1, 27)); - createFunc = create; - destroyFunc = destroy; - boardTurnFunc = NULL; - boardStarShowNextHook = NULL; - boardBowserHook = NULL; - boardStarGiveHook = NULL; - boardTurnStartFunc = NULL; - boardObjMan = omInitObjMan(64, 8192); - omSystemKeyCheckSetup(boardObjMan); - boardMainObj = omAddObjEx(boardObjMan, 0, 0, 0, -1, InitBoardFunc); - switch(omcurovl) { - case OVL_W01: - GWSystem.board = BOARD_ID_MAIN1; - break; - - case OVL_W02: - GWSystem.board = BOARD_ID_MAIN2; - break; - - case OVL_W03: - GWSystem.board = BOARD_ID_MAIN3; - break; - - case OVL_W04: - GWSystem.board = BOARD_ID_MAIN4; - break; - - case OVL_W05: - GWSystem.board = BOARD_ID_MAIN5; - break; - - case OVL_W06: - GWSystem.board = BOARD_ID_MAIN6; - break; - - case OVL_W10: - GWSystem.board = BOARD_ID_TUTORIAL; - break; - - case OVL_W20: - GWSystem.board = BOARD_ID_EXTRA1; - break; - - case OVL_W21: - GWSystem.board = BOARD_ID_EXTRA2; - break; - } + omSysPauseEnable(FALSE); + if(!_CheckFlag(FLAG_ID_MAKE(1, 0))) { + _SetFlag(FLAG_ID_MAKE(1, 0)); + _ClearFlag(FLAG_ID_MAKE(2, 1)); + _ClearFlag(FLAG_ID_MAKE(2, 3)); + _ClearFlag(FLAG_ID_MAKE(2, 0)); + _ClearFlag(FLAG_ID_MAKE(2, 2)); + _ClearFlag(FLAG_ID_MAKE(2, 4)); + _ClearFlag(FLAG_ID_MAKE(2, 5)); + _ClearFlag(FLAG_ID_MAKE(1, 6)); + _ClearFlag(FLAG_ID_MAKE(1, 9)); + _ClearFlag(FLAG_ID_MAKE(0, 8)); + _ClearFlag(FLAG_ID_MAKE(0, 10)); + BoardMGSetupPlayClear(); + } + + nextOvl = OVL_INVALID; + _SetFlag(FLAG_ID_MAKE(1, 28)); + _SetFlag(FLAG_ID_MAKE(1, 14)); + _ClearFlag(FLAG_ID_MAKE(1, 16)); + _ClearFlag(FLAG_ID_MAKE(1, 17)); + _ClearFlag(FLAG_ID_MAKE(1, 18)); + _ClearFlag(FLAG_ID_MAKE(1, 19)); + _ClearFlag(FLAG_ID_MAKE(1, 20)); + _ClearFlag(FLAG_ID_MAKE(1, 21)); + _ClearFlag(FLAG_ID_MAKE(1, 23)); + _ClearFlag(FLAG_ID_MAKE(1, 24)); + _ClearFlag(FLAG_ID_MAKE(1, 25)); + _ClearFlag(FLAG_ID_MAKE(1, 27)); + createFunc = create; + destroyFunc = destroy; + boardTurnFunc = NULL; + boardStarShowNextHook = NULL; + boardBowserHook = NULL; + boardStarGiveHook = NULL; + boardTurnStartFunc = NULL; + boardObjMan = omInitObjMan(64, 8192); + omSystemKeyCheckSetup(boardObjMan); + boardMainObj = omAddObjEx(boardObjMan, 0, 0, 0, -1, InitBoardFunc); + switch(omcurovl) { + case OVL_W01: + GWSystem.board = BOARD_ID_MAIN1; + break; + + case OVL_W02: + GWSystem.board = BOARD_ID_MAIN2; + break; + + case OVL_W03: + GWSystem.board = BOARD_ID_MAIN3; + break; + + case OVL_W04: + GWSystem.board = BOARD_ID_MAIN4; + break; + + case OVL_W05: + GWSystem.board = BOARD_ID_MAIN5; + break; + + case OVL_W06: + GWSystem.board = BOARD_ID_MAIN6; + break; + + case OVL_W10: + GWSystem.board = BOARD_ID_TUTORIAL; + break; + + case OVL_W20: + GWSystem.board = BOARD_ID_EXTRA1; + break; + + case OVL_W21: + GWSystem.board = BOARD_ID_EXTRA2; + break; + } } static void InitBoardFunc(omObjData *object) { - boardMainProc = HuPrcChildCreate(MainFunc, 8194, 0x6000, 0, boardObjMan); - HuPrcDestructorSet2(boardMainProc, DestroyMainFunc); - object->func = ExecBoardFunc; + boardMainProc = HuPrcChildCreate(MainFunc, 8194, 0x6000, 0, boardObjMan); + HuPrcDestructorSet2(boardMainProc, DestroyMainFunc); + object->func = ExecBoardFunc; } static void ExecBoardFunc(omObjData *object) { - if(!_CheckFlag(FLAG_ID_MAKE(1, 16))) { - return; - } - if(!_CheckFlag(FLAG_ID_MAKE(1, 17))) { - if(omSysExitReq) { - BoardKill(); - } else { - if(BoardPauseReqCheck()) { - BoardPauseStart(); - } else { - return; - } - } - } else { - if(boardMainProc) { - HuPrcKill(boardMainProc); - } - object->func = KillBoardFunc; - } + if(!_CheckFlag(FLAG_ID_MAKE(1, 16))) { + return; + } + if(!_CheckFlag(FLAG_ID_MAKE(1, 17))) { + if(omSysExitReq) { + BoardKill(); + } else { + if(BoardPauseReqCheck()) { + BoardPauseStart(); + } else { + return; + } + } + } else { + if(boardMainProc) { + HuPrcKill(boardMainProc); + } + object->func = KillBoardFunc; + } } static void KillBoardFunc(omObjData *object) { - if(boardMainProc) { - return; - } - if(WipeStatGet()) { - return; - return_alt: - return; - } else { - if(HuARDMACheck()) { - goto return_alt; - } - if(nextOvl != OVL_INVALID) { - omOvlCallEx(nextOvl, 1, 0, 0); - } else { - if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { - BoardTutorialKill(); - BoardTutorialWorkRestore(); - } - _ClearFlag(FLAG_ID_MAKE(1, 0)); - HuARDirFree(DATADIR_BOARD); - if(_CheckFlag(FLAG_ID_MAKE(1, 27))) { - omOvlReturnEx(2, 1); - } else { - omOvlReturnEx(1, 1); - } - } - } + if(boardMainProc) { + return; + } + if(WipeStatGet()) { + return; + return_alt: + return; + } else { + if(HuARDMACheck()) { + goto return_alt; + } + if(nextOvl != OVL_INVALID) { + omOvlCallEx(nextOvl, 1, 0, 0); + } else { + if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { + BoardTutorialKill(); + BoardTutorialWorkRestore(); + } + _ClearFlag(FLAG_ID_MAKE(1, 0)); + HuARDirFree(DATADIR_BOARD); + if(_CheckFlag(FLAG_ID_MAKE(1, 27))) { + omOvlReturnEx(2, 1); + } else { + omOvlReturnEx(1, 1); + } + } + } } void BoardKill(void) { - _SetFlag(FLAG_ID_MAKE(1, 28)); - _SetFlag(FLAG_ID_MAKE(1, 14)); - if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { - BoardTutorialHookExec(29, 0); - } - HuAudFXAllStop(); - if(!BoardStartCheck()) { - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - boardTutorialF = 1; - while(WipeStatGet()) { - HuPrcVSleep(); - } - } - _SetFlag(FLAG_ID_MAKE(1, 17)); - HuPrcKill(boardMainProc); - DestroyBoard(); + _SetFlag(FLAG_ID_MAKE(1, 28)); + _SetFlag(FLAG_ID_MAKE(1, 14)); + if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { + BoardTutorialHookExec(29, 0); + } + HuAudFXAllStop(); + if(!BoardStartCheck()) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + boardTutorialF = 1; + while(WipeStatGet()) { + HuPrcVSleep(); + } + } + _SetFlag(FLAG_ID_MAKE(1, 17)); + HuPrcKill(boardMainProc); + DestroyBoard(); } s32 BoardIsKill(void) { - return (_CheckFlag(FLAG_ID_MAKE(1, 17))) ? 1 : 0; + return (_CheckFlag(FLAG_ID_MAKE(1, 17))) ? 1 : 0; } void BoardPauseDisableSet(s32 value) { - if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { - _SetFlag(FLAG_ID_MAKE(1, 25)); - omSysPauseEnable(FALSE); - } else { - if(value) { - _SetFlag(FLAG_ID_MAKE(1, 25)); - } else { - _ClearFlag(FLAG_ID_MAKE(1, 25)); - } - } + if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { + _SetFlag(FLAG_ID_MAKE(1, 25)); + omSysPauseEnable(FALSE); + } else { + if(value) { + _SetFlag(FLAG_ID_MAKE(1, 25)); + } else { + _ClearFlag(FLAG_ID_MAKE(1, 25)); + } + } } s32 BoardPauseDisableGet() { - return (_CheckFlag(FLAG_ID_MAKE(1, 25))) ? 1 : 0; + return (_CheckFlag(FLAG_ID_MAKE(1, 25))) ? 1 : 0; } void BoardSaveInit(s32 board) { - s32 i; - GWSystem.board = board; - _ClearFlag(FLAG_ID_MAKE(1, 0)); - _ClearFlag(FLAG_ID_MAKE(1, 1)); - _ClearFlag(FLAG_ID_MAKE(1, 5)); - _ClearFlag(FLAG_ID_MAKE(1, 4)); - _ClearFlag(FLAG_ID_MAKE(1, 6)); - _ClearFlag(FLAG_ID_MAKE(1, 2)); - _ClearFlag(FLAG_ID_MAKE(1, 9)); - _ClearFlag(FLAG_ID_MAKE(1, 7)); - _ClearFlag(FLAG_ID_MAKE(1, 8)); - _ClearFlag(FLAG_ID_MAKE(0, 8)); - _ClearFlag(FLAG_ID_MAKE(1, 12)); - _ClearFlag(FLAG_ID_MAKE(1, 3)); - GWSystem.turn = 1; - GWSystem.star_flag = 0; - GWSystem.star_pos = 0; - GWSystem.star_total = 1; - GWSystem.last5_effect = 0; - GWSystem.player_curr = -1; - GWSystem.bowser_loss = 0; - GWSystem.bowser_event = 0; - GWSystem.lucky_value = 1; - GWSystem.mg_next = 0; - GWMGTypeSet(0); - GWSystem.unk_38 = 0; - GWSystem.block_pos = 0; - memset(GWSystem.board_data, 0, sizeof(GWSystem.board_data)); - for(i=0; i<4; i++) { - s32 party_flag; - BoardPlayerAutoSizeSet(i, 0); - GWPlayer[i].draw_ticket = 0; - GWPlayer[i].color = 0; - GWPlayer[i].bowser_suit = 0; - GWPlayer[i].jump = 0; - GWPlayer[i].space_shock = 0; - GWPlayer[i].spark = 0; - GWPlayer[i].show_next = 1; - BoardPlayerCoinsSet(i, 0); - if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { - GWSystem.team = 0; - } - GWPlayer[i].blue_count = 0; - GWPlayer[i].red_count = 0; - GWPlayer[i].question_count = 0; - GWPlayer[i].fortune_count = 0; - GWPlayer[i].bowser_count = 0; - GWPlayer[i].battle_count = 0; - GWPlayer[i].mushroom_count = 0; - GWPlayer[i].warp_count = 0; - GWPlayer[i].coins_mg = 0; - GWPlayer[i].coins_total = 0; - GWPlayer[i].coins_max = 0; - GWPlayer[i].stars_max = 0; - GWPlayer[i].coins_battle = 0; - GWPlayer[i].coin_collect = 0; - GWPlayer[i].coin_win = 0; - GWPlayer[i].items[0] = -1; - GWPlayer[i].items[1] = -1; - GWPlayer[i].items[2] = -1; - if(GWPartyGet() == 0 || _CheckFlag(FLAG_ID_MAKE(1, 11))) { - GWStarsSet(i, 0); - } else { - GWStarsSet(i, BoardPlayerHandicapGet(i)); - } - } + s32 i; + GWSystem.board = board; + _ClearFlag(FLAG_ID_MAKE(1, 0)); + _ClearFlag(FLAG_ID_MAKE(1, 1)); + _ClearFlag(FLAG_ID_MAKE(1, 5)); + _ClearFlag(FLAG_ID_MAKE(1, 4)); + _ClearFlag(FLAG_ID_MAKE(1, 6)); + _ClearFlag(FLAG_ID_MAKE(1, 2)); + _ClearFlag(FLAG_ID_MAKE(1, 9)); + _ClearFlag(FLAG_ID_MAKE(1, 7)); + _ClearFlag(FLAG_ID_MAKE(1, 8)); + _ClearFlag(FLAG_ID_MAKE(0, 8)); + _ClearFlag(FLAG_ID_MAKE(1, 12)); + _ClearFlag(FLAG_ID_MAKE(1, 3)); + GWSystem.turn = 1; + GWSystem.star_flag = 0; + GWSystem.star_pos = 0; + GWSystem.star_total = 1; + GWSystem.last5_effect = 0; + GWSystem.player_curr = -1; + GWSystem.bowser_loss = 0; + GWSystem.bowser_event = 0; + GWSystem.lucky_value = 1; + GWSystem.mg_next = 0; + GWMGTypeSet(0); + GWSystem.unk_38 = 0; + GWSystem.block_pos = 0; + memset(GWSystem.board_data, 0, sizeof(GWSystem.board_data)); + for(i=0; i<4; i++) { + s32 party_flag; + BoardPlayerAutoSizeSet(i, 0); + GWPlayer[i].draw_ticket = 0; + GWPlayer[i].color = 0; + GWPlayer[i].bowser_suit = 0; + GWPlayer[i].jump = 0; + GWPlayer[i].space_shock = 0; + GWPlayer[i].spark = 0; + GWPlayer[i].show_next = 1; + BoardPlayerCoinsSet(i, 0); + if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { + GWSystem.team = 0; + } + GWPlayer[i].blue_count = 0; + GWPlayer[i].red_count = 0; + GWPlayer[i].question_count = 0; + GWPlayer[i].fortune_count = 0; + GWPlayer[i].bowser_count = 0; + GWPlayer[i].battle_count = 0; + GWPlayer[i].mushroom_count = 0; + GWPlayer[i].warp_count = 0; + GWPlayer[i].coins_mg = 0; + GWPlayer[i].coins_total = 0; + GWPlayer[i].coins_max = 0; + GWPlayer[i].stars_max = 0; + GWPlayer[i].coins_battle = 0; + GWPlayer[i].coin_collect = 0; + GWPlayer[i].coin_win = 0; + GWPlayer[i].items[0] = -1; + GWPlayer[i].items[1] = -1; + GWPlayer[i].items[2] = -1; + if(GWPartyGet() == 0 || _CheckFlag(FLAG_ID_MAKE(1, 11))) { + GWStarsSet(i, 0); + } else { + GWStarsSet(i, BoardPlayerHandicapGet(i)); + } + } } void BoardStoryConfigSet(s32 mg_list, s32 diff_story) { - GWSystem.party = 0; - GWSystem.team = 0; - GWSystem.diff_story = diff_story; - GWSystem.bonus_star = 0; - GWMGListSet(mg_list); - GWPlayer[0].handicap = 0; - GWPlayer[1].handicap = 0; - GWPlayer[2].handicap = 0; - GWPlayer[3].handicap = 0; - GWSystem.max_turn = 15; - memset(GWPlayer, 0, 4*sizeof(PlayerState)); - _ClearFlag(FLAG_ID_MAKE(0, 2)); - _ClearFlag(FLAG_ID_MAKE(0, 3)); - _ClearFlag(FLAG_ID_MAKE(0, 4)); - _ClearFlag(FLAG_ID_MAKE(0, 5)); - _ClearFlag(FLAG_ID_MAKE(0, 6)); - _ClearFlag(FLAG_ID_MAKE(0, 7)); - _ClearFlag(FLAG_ID_MAKE(1, 11)); - _SetFlag(FLAG_ID_MAKE(0, 11)); - _SetFlag(FLAG_ID_MAKE(1, 10)); + GWSystem.party = 0; + GWSystem.team = 0; + GWSystem.diff_story = diff_story; + GWSystem.bonus_star = 0; + GWMGListSet(mg_list); + GWPlayer[0].handicap = 0; + GWPlayer[1].handicap = 0; + GWPlayer[2].handicap = 0; + GWPlayer[3].handicap = 0; + GWSystem.max_turn = 15; + memset(GWPlayer, 0, 4*sizeof(PlayerState)); + _ClearFlag(FLAG_ID_MAKE(0, 2)); + _ClearFlag(FLAG_ID_MAKE(0, 3)); + _ClearFlag(FLAG_ID_MAKE(0, 4)); + _ClearFlag(FLAG_ID_MAKE(0, 5)); + _ClearFlag(FLAG_ID_MAKE(0, 6)); + _ClearFlag(FLAG_ID_MAKE(0, 7)); + _ClearFlag(FLAG_ID_MAKE(1, 11)); + _SetFlag(FLAG_ID_MAKE(0, 11)); + _SetFlag(FLAG_ID_MAKE(1, 10)); } void BoardPartyConfigSet(s32 team, s32 bonus_star, s32 mg_list, s32 max_turn, s32 p1_handicap, s32 p2_handicap, s32 p3_handicap, s32 p4_handicap) { - GWSystem.party = 1; - GWSystem.team = team; - GWSystem.diff_story = 0; - GWSystem.bonus_star = bonus_star; - GWMGListSet(mg_list); - GWSystem.max_turn = max_turn; - memset(GWPlayer, 0, 4*sizeof(PlayerState)); - GWPlayer[0].handicap = p1_handicap; - GWPlayer[1].handicap = p2_handicap; - GWPlayer[2].handicap = p3_handicap; - GWPlayer[3].handicap = p4_handicap; - _ClearFlag(FLAG_ID_MAKE(1, 11)); - _SetFlag(FLAG_ID_MAKE(0, 11)); - _SetFlag(FLAG_ID_MAKE(1, 10)); + GWSystem.party = 1; + GWSystem.team = team; + GWSystem.diff_story = 0; + GWSystem.bonus_star = bonus_star; + GWMGListSet(mg_list); + GWSystem.max_turn = max_turn; + memset(GWPlayer, 0, 4*sizeof(PlayerState)); + GWPlayer[0].handicap = p1_handicap; + GWPlayer[1].handicap = p2_handicap; + GWPlayer[2].handicap = p3_handicap; + GWPlayer[3].handicap = p4_handicap; + _ClearFlag(FLAG_ID_MAKE(1, 11)); + _SetFlag(FLAG_ID_MAKE(0, 11)); + _SetFlag(FLAG_ID_MAKE(1, 10)); } static void DestroyMainFunc(void) { - boardMainProc = NULL; + boardMainProc = NULL; } #define CHECK_LAST5_TURN() ((s32)(GWSystem.max_turn-GWSystem.turn) < 5) static void MainFunc(void) { - s32 i; - s32 fade_enable, turn_cont, fade_type; - fade_enable = 0; - turn_cont = 0; - BoardPauseDisableSet(1); - if(_CheckFlag(FLAG_ID_MAKE(0, 10))) { - _ClearFlag(FLAG_ID_MAKE(0, 10)); - _SetFlag(FLAG_ID_MAKE(1, 16)); - BoardKill(); - HuPrcSleep(-1); - } - _ClearFlag(FLAG_ID_MAKE(0, 10)); - BoardTutorialInit(); - if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { - BoardTutorialWorkSave(); - BoardTutorialPlayerInit(); - #if VERSION_PAL - GWMessSpeedSet(3); - #else - GWMessSpeedSet(1); - #endif - } - CreateBoard(); - if(!_CheckFlag(FLAG_ID_MAKE(1, 1))) { - GWSystem.player_curr = -1; - BoardStartExec(); - GWSystem.player_curr = 0; - fade_enable = 1; - _SetFlag(FLAG_ID_MAKE(1, 1)); - } else { - fade_enable = 0; - } - if(ExecTurnStart()) { - turn_cont = 1; - } - if(CHECK_LAST5_TURN() && GWSystem.player_curr == 0 && !turn_cont) { - if(!_CheckFlag(FLAG_ID_MAKE(0, 8))) { - BoardLast5Exec(); - _SetFlag(FLAG_ID_MAKE(0, 8)); - } else { - BoardLast5GfxInit(); - } - } - if(!turn_cont) { - fade_type = 1; - } else { - fade_type = 0; - } - _ClearFlag(FLAG_ID_MAKE(1, 28)); - do { - BoardStatusShowSetAll(1); - if(GWBoardGet() == BOARD_ID_MAIN6 && GWSystem.player_curr == 0 && !turn_cont && boardTurnFunc) { - GWSystem.player_curr = -1; - boardTurnFunc(); - GWSystem.player_curr = 0; - } - BoardMusStartBoard(); - for(i=GWSystem.player_curr; i<4; i++) { - if(GWBoardGet() == BOARD_ID_EXTRA1 || GWBoardGet() == BOARD_ID_EXTRA2) { - if(CHECK_LAST5_TURN() && i == 0 && !turn_cont) { - BoardLast5GfxInit(); - _SetFlag(FLAG_ID_MAKE(0, 8)); - } - } - if(_CheckFlag(FLAG_ID_MAKE(1, 6))) { - BoardPlayerTurnExec(i); - } else { - if(!turn_cont) { - BoardCameraMoveSet(0); - GWSystem.player_curr = i; - BoardCameraTargetPlayerSet(i); - BoardCameraMotionWait(); - { - Vec pos; - BoardSpacePosGet(0, GWPlayer[i].space_curr, &pos); - BoardPlayerPosSetV(i, &pos); - } - while(WipeStatGet()) { - HuPrcVSleep(); - } - if(!fade_enable) { - if(!fade_type) { - WipeCreate(WIPE_MODE_IN, WIPE_TYPE_CROSS, 30); - while(WipeStatGet()) { - HuPrcVSleep(); - } - } else { - fade_type = 0; - WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 21); - while(WipeStatGet()) { - HuPrcVSleep(); - } - } - } else { - fade_enable = 0; - } - BoardPlayerTurnExec(i); - } - } - turn_cont = 0; - if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { - BoardTutorialHookExec(9, 0); - } - if(i != 3 || _CheckFlag(FLAG_ID_MAKE(1, 11))) { - WipeColorSet(255, 255, 255); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_CROSS, 1); - while(WipeStatGet()) { - HuPrcVSleep(); - } - BoardPlayerMoveAwayStartCurr(GWPlayer[i].space_curr, 1); - fade_type = 0; - } else { - if(GWBoardGet() == BOARD_ID_EXTRA1 || GWBoardGet() == BOARD_ID_EXTRA2) { - if(GWSystem.turn != GWSystem.max_turn) { - WipeColorSet(255, 255, 255); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_CROSS, 1); - while(WipeStatGet()) { - HuPrcVSleep(); - } - BoardPlayerMoveAwayStartCurr(GWPlayer[i].space_curr, 1); - fade_type = 0; - } - } else { - WipeColorSet(0, 0, 0); - WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 21); - while(WipeStatGet()) { - HuPrcVSleep(); - } - } - } - BoardPlayerPostTurnHookExec(i); - } - if(GWBoardGet() == BOARD_ID_EXTRA1 || GWBoardGet() == BOARD_ID_EXTRA2) { - GWSystem.player_curr = 0; - if(BoardTurnNext()) { - BoardAudSeqFadeOut(0, 500); - BoardKill(); - HuPrcEnd(); - HuPrcSleep(-1); - } - } else { - _SetFlag(FLAG_ID_MAKE(1, 28)); - _SetFlag(FLAG_ID_MAKE(1, 14)); - BoardPauseDisableSet(1); - _ClearFlag(FLAG_ID_MAKE(1, 9)); - if(_CheckFlag(FLAG_ID_MAKE(2, 0)) || _CheckFlag(FLAG_ID_MAKE(1, 11)) ) { - for(i=0; i<4; i++) { - GWPlayer[i].color = 0; - } - GWSystem.player_curr = (GWSystem.player_curr+1)&3; - } else { - BoardMGSetupExec(); - HuPrcSleep(-1); - } - } - } while(1); + s32 i; + s32 fade_enable, turn_cont, fade_type; + fade_enable = 0; + turn_cont = 0; + BoardPauseDisableSet(1); + if(_CheckFlag(FLAG_ID_MAKE(0, 10))) { + _ClearFlag(FLAG_ID_MAKE(0, 10)); + _SetFlag(FLAG_ID_MAKE(1, 16)); + BoardKill(); + HuPrcSleep(-1); + } + _ClearFlag(FLAG_ID_MAKE(0, 10)); + BoardTutorialInit(); + if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { + BoardTutorialWorkSave(); + BoardTutorialPlayerInit(); + #if VERSION_PAL + GWMessSpeedSet(3); + #else + GWMessSpeedSet(1); + #endif + } + CreateBoard(); + if(!_CheckFlag(FLAG_ID_MAKE(1, 1))) { + GWSystem.player_curr = -1; + BoardStartExec(); + GWSystem.player_curr = 0; + fade_enable = 1; + _SetFlag(FLAG_ID_MAKE(1, 1)); + } else { + fade_enable = 0; + } + if(ExecTurnStart()) { + turn_cont = 1; + } + if(CHECK_LAST5_TURN() && GWSystem.player_curr == 0 && !turn_cont) { + if(!_CheckFlag(FLAG_ID_MAKE(0, 8))) { + BoardLast5Exec(); + _SetFlag(FLAG_ID_MAKE(0, 8)); + } else { + BoardLast5GfxInit(); + } + } + if(!turn_cont) { + fade_type = 1; + } else { + fade_type = 0; + } + _ClearFlag(FLAG_ID_MAKE(1, 28)); + do { + BoardStatusShowSetAll(1); + if(GWBoardGet() == BOARD_ID_MAIN6 && GWSystem.player_curr == 0 && !turn_cont && boardTurnFunc) { + GWSystem.player_curr = -1; + boardTurnFunc(); + GWSystem.player_curr = 0; + } + BoardMusStartBoard(); + for(i=GWSystem.player_curr; i<4; i++) { + if(GWBoardGet() == BOARD_ID_EXTRA1 || GWBoardGet() == BOARD_ID_EXTRA2) { + if(CHECK_LAST5_TURN() && i == 0 && !turn_cont) { + BoardLast5GfxInit(); + _SetFlag(FLAG_ID_MAKE(0, 8)); + } + } + if(_CheckFlag(FLAG_ID_MAKE(1, 6))) { + BoardPlayerTurnExec(i); + } else { + if(!turn_cont) { + BoardCameraMoveSet(0); + GWSystem.player_curr = i; + BoardCameraTargetPlayerSet(i); + BoardCameraMotionWait(); + { + Vec pos; + BoardSpacePosGet(0, GWPlayer[i].space_curr, &pos); + BoardPlayerPosSetV(i, &pos); + } + while(WipeStatGet()) { + HuPrcVSleep(); + } + if(!fade_enable) { + if(!fade_type) { + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_CROSS, 30); + while(WipeStatGet()) { + HuPrcVSleep(); + } + } else { + fade_type = 0; + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 21); + while(WipeStatGet()) { + HuPrcVSleep(); + } + } + } else { + fade_enable = 0; + } + BoardPlayerTurnExec(i); + } + } + turn_cont = 0; + if(_CheckFlag(FLAG_ID_MAKE(1, 11))) { + BoardTutorialHookExec(9, 0); + } + if(i != 3 || _CheckFlag(FLAG_ID_MAKE(1, 11))) { + WipeColorSet(255, 255, 255); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_CROSS, 1); + while(WipeStatGet()) { + HuPrcVSleep(); + } + BoardPlayerMoveAwayStartCurr(GWPlayer[i].space_curr, 1); + fade_type = 0; + } else { + if(GWBoardGet() == BOARD_ID_EXTRA1 || GWBoardGet() == BOARD_ID_EXTRA2) { + if(GWSystem.turn != GWSystem.max_turn) { + WipeColorSet(255, 255, 255); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_CROSS, 1); + while(WipeStatGet()) { + HuPrcVSleep(); + } + BoardPlayerMoveAwayStartCurr(GWPlayer[i].space_curr, 1); + fade_type = 0; + } + } else { + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 21); + while(WipeStatGet()) { + HuPrcVSleep(); + } + } + } + BoardPlayerPostTurnHookExec(i); + } + if(GWBoardGet() == BOARD_ID_EXTRA1 || GWBoardGet() == BOARD_ID_EXTRA2) { + GWSystem.player_curr = 0; + if(BoardTurnNext()) { + BoardAudSeqFadeOut(0, 500); + BoardKill(); + HuPrcEnd(); + HuPrcSleep(-1); + } + } else { + _SetFlag(FLAG_ID_MAKE(1, 28)); + _SetFlag(FLAG_ID_MAKE(1, 14)); + BoardPauseDisableSet(1); + _ClearFlag(FLAG_ID_MAKE(1, 9)); + if(_CheckFlag(FLAG_ID_MAKE(2, 0)) || _CheckFlag(FLAG_ID_MAKE(1, 11)) ) { + for(i=0; i<4; i++) { + GWPlayer[i].color = 0; + } + GWSystem.player_curr = (GWSystem.player_curr+1)&3; + } else { + BoardMGSetupExec(); + HuPrcSleep(-1); + } + } + } while(1); } s32 BoardTurnNext(void) { - s32 i; - for(i=0; i<4; i++) { - GWPlayer[i].color = 0; - } - GWSystem.turn++; - if(GWSystem.turn > GWSystem.max_turn) { - return 1; - } else { - return 0; - } + s32 i; + for(i=0; i<4; i++) { + GWPlayer[i].color = 0; + } + GWSystem.turn++; + if(GWSystem.turn > GWSystem.max_turn) { + return 1; + } else { + return 0; + } } static s32 ExecTurnStart(void) { - s32 player; - s32 space; - if(!BoardStartCheck()) { - return 0; - } - player = GWSystem.player_curr; - space = GWPlayer[player].space_curr; - if(_CheckFlag(FLAG_ID_MAKE(1, 5))) { - BoardFortuneExec(player, space); - _ClearFlag(FLAG_ID_MAKE(1, 5)); - } else if(_CheckFlag(FLAG_ID_MAKE(1, 4))) { - BoardMusStartBoard(); - BoardBattleExec(player, space); - _ClearFlag(FLAG_ID_MAKE(1, 4)); - } else if(_CheckFlag(FLAG_ID_MAKE(1, 3))) { - BoardBowserExec(player, space); - _ClearFlag(FLAG_ID_MAKE(1, 3)); - } else if(_CheckFlag(FLAG_ID_MAKE(1, 2))) { - s32 turn_end = 0; - BoardCameraMoveSet(0); - BoardCameraViewSet(2); - BoardCameraMotionWait(); - turn_end = BoardTurnNext(); - if(turn_end) { - BoardKill(); - HuPrcEnd(); - } - _ClearFlag(FLAG_ID_MAKE(1, 2)); - return 0; - } else if(_CheckFlag(FLAG_ID_MAKE(1, 6))) { - boardTurnStartFunc(player, space); - return 1; - } - BoardPlayerZoomRestore(player); - return 1; + s32 player; + s32 space; + if(!BoardStartCheck()) { + return 0; + } + player = GWSystem.player_curr; + space = GWPlayer[player].space_curr; + if(_CheckFlag(FLAG_ID_MAKE(1, 5))) { + BoardFortuneExec(player, space); + _ClearFlag(FLAG_ID_MAKE(1, 5)); + } else if(_CheckFlag(FLAG_ID_MAKE(1, 4))) { + BoardMusStartBoard(); + BoardBattleExec(player, space); + _ClearFlag(FLAG_ID_MAKE(1, 4)); + } else if(_CheckFlag(FLAG_ID_MAKE(1, 3))) { + BoardBowserExec(player, space); + _ClearFlag(FLAG_ID_MAKE(1, 3)); + } else if(_CheckFlag(FLAG_ID_MAKE(1, 2))) { + s32 turn_end = 0; + BoardCameraMoveSet(0); + BoardCameraViewSet(2); + BoardCameraMotionWait(); + turn_end = BoardTurnNext(); + if(turn_end) { + BoardKill(); + HuPrcEnd(); + } + _ClearFlag(FLAG_ID_MAKE(1, 2)); + return 0; + } else if(_CheckFlag(FLAG_ID_MAKE(1, 6))) { + boardTurnStartFunc(player, space); + return 1; + } + BoardPlayerZoomRestore(player); + return 1; } void BoardNextOvlSet(OverlayID overlay) { - nextOvl = overlay; - BoardAudSeqFadeOut(0, 1000); - BoardKill(); + nextOvl = overlay; + BoardAudSeqFadeOut(0, 1000); + BoardKill(); } s32 BoardStartCheck(void) { - if(_CheckFlag(FLAG_ID_MAKE(1, 2)) || _CheckFlag(FLAG_ID_MAKE(1, 3)) || _CheckFlag(FLAG_ID_MAKE(1, 4)) || _CheckFlag(FLAG_ID_MAKE(1, 5)) || _CheckFlag(FLAG_ID_MAKE(1, 6))) { - return 1; - } else { - return 0; - } + if(_CheckFlag(FLAG_ID_MAKE(1, 2)) || _CheckFlag(FLAG_ID_MAKE(1, 3)) || _CheckFlag(FLAG_ID_MAKE(1, 4)) || _CheckFlag(FLAG_ID_MAKE(1, 5)) || _CheckFlag(FLAG_ID_MAKE(1, 6))) { + return 1; + } else { + return 0; + } } static void CreateBoard(void) { - s32 guest_status; - - GWSystem.mg_next = -1; - if(!GWGameStat.field10E_bit5 && GWMGListGet() == 2) { - GWMGListSet(0); - } - GWMessSpeedSet(GWMessSpeedGet()); - if(GWMGExplainGet()) { - _SetFlag(FLAG_ID_MAKE(0, 11)); - } else { - _ClearFlag(FLAG_ID_MAKE(0, 11)); - } - if(!BoardStartCheck()) { - _ClearFlag(FLAG_ID_MAKE(1, 2)); - _ClearFlag(FLAG_ID_MAKE(1, 3)); - _ClearFlag(FLAG_ID_MAKE(1, 4)); - _ClearFlag(FLAG_ID_MAKE(1, 5)); - _ClearFlag(FLAG_ID_MAKE(1, 6)); - } - _ClearFlag(FLAG_ID_MAKE(1, 8)); - if(!BoardStartCheck()) { - GWSystem.lucky_value = 1; - } - guest_status = BoardDataDirReadAsync(DATADIR_BGUEST); - if(guest_status != -1) { - BoardDataAsyncWait(guest_status); - } - BoardAudSeqClear(); - BoardModelInit(); - BoardRandInit(); - BoardWinInit(); - BoardPlayerModelInit(); - createFunc(); - BoardLightSetExec(); - BoardLotteryInit(); - BoardShopInit(); - BoardBooHouseCreate(); - BoardCameraInit(); - BoardStatusCreate(); - CharModelDataClose(-1); - BoardPlayerInit(); - if(GWSystem.last5_effect == 2) { - BoardSpaceTypeForce(2, 3); - } - if(GWSystem.last5_effect == 3) { - BoardSpaceTypeForce(2, 7); - } - BoardCameraMoveSet(0); - BoardCameraTargetPlayerSet(0); - BoardCameraViewSet(2); - BoardCameraMotionWait(); - BoardTauntInit(); - _SetFlag(FLAG_ID_MAKE(1, 14)); - HuDataDirClose(DATADIR_BKOOPASUIT); - HuDataDirClose(DATADIR_BBATTLE); - HuDataDirClose(DATADIR_BKOOPA); - HuDataDirClose(DATADIR_BKUJIYA); - HuDataDirClose(DATADIR_BYOKODORI); - HuDataDirClose(DATADIR_BPAUSE); - HuDataDirClose(DATADIR_BLAST5); - HuDataDirClose(DATADIR_EFFECT); - _SetFlag(FLAG_ID_MAKE(1, 16)); + s32 guest_status; + + GWSystem.mg_next = -1; + if(!GWGameStat.field10E_bit5 && GWMGListGet() == 2) { + GWMGListSet(0); + } + GWMessSpeedSet(GWMessSpeedGet()); + if(GWMGExplainGet()) { + _SetFlag(FLAG_ID_MAKE(0, 11)); + } else { + _ClearFlag(FLAG_ID_MAKE(0, 11)); + } + if(!BoardStartCheck()) { + _ClearFlag(FLAG_ID_MAKE(1, 2)); + _ClearFlag(FLAG_ID_MAKE(1, 3)); + _ClearFlag(FLAG_ID_MAKE(1, 4)); + _ClearFlag(FLAG_ID_MAKE(1, 5)); + _ClearFlag(FLAG_ID_MAKE(1, 6)); + } + _ClearFlag(FLAG_ID_MAKE(1, 8)); + if(!BoardStartCheck()) { + GWSystem.lucky_value = 1; + } + guest_status = BoardDataDirReadAsync(DATADIR_BGUEST); + if(guest_status != -1) { + BoardDataAsyncWait(guest_status); + } + BoardAudSeqClear(); + BoardModelInit(); + BoardRandInit(); + BoardWinInit(); + BoardPlayerModelInit(); + createFunc(); + BoardLightSetExec(); + BoardLotteryInit(); + BoardShopInit(); + BoardBooHouseCreate(); + BoardCameraInit(); + BoardStatusCreate(); + CharModelDataClose(-1); + BoardPlayerInit(); + if(GWSystem.last5_effect == 2) { + BoardSpaceTypeForce(2, 3); + } + if(GWSystem.last5_effect == 3) { + BoardSpaceTypeForce(2, 7); + } + BoardCameraMoveSet(0); + BoardCameraTargetPlayerSet(0); + BoardCameraViewSet(2); + BoardCameraMotionWait(); + BoardTauntInit(); + _SetFlag(FLAG_ID_MAKE(1, 14)); + HuDataDirClose(DATADIR_BKOOPASUIT); + HuDataDirClose(DATADIR_BBATTLE); + HuDataDirClose(DATADIR_BKOOPA); + HuDataDirClose(DATADIR_BKUJIYA); + HuDataDirClose(DATADIR_BYOKODORI); + HuDataDirClose(DATADIR_BPAUSE); + HuDataDirClose(DATADIR_BLAST5); + HuDataDirClose(DATADIR_EFFECT); + _SetFlag(FLAG_ID_MAKE(1, 16)); } static void DestroyBoard(void) { - s32 dir_table[] = { - DATADIR_W01, - DATADIR_W02, - DATADIR_W03, - DATADIR_W04, - DATADIR_W05, - DATADIR_W06, - DATADIR_W10, - DATADIR_W20, - DATADIR_W21 - }; - BoardTauntKill(); - BoardAudSeqFadeOutAll(); - HuAudAllStop(); - BoardRollKill(); - BoardStatusKill(); - BoardBooHouseKill(); - BoardShopKill(); - BoardLotteryKill(); - BoardSpaceDestroy(); - BoardPlayerModelKill(); - if(destroyFunc) { - destroyFunc(); - } - BoardModelKillAll(); - BoardWinKillAll(); - HuDataDirClose(dir_table[GWBoardGet()]); - HuDataDirClose(DATADIR_EFFECT); - HuDataDirClose(DATADIR_BGUEST); - HuDataDirClose(DATADIR_BKOOPASUIT); - HuDataDirClose(DATADIR_BBATTLE); - HuDataDirClose(DATADIR_BKOOPA); - HuDataDirClose(DATADIR_BKUJIYA); - HuDataDirClose(DATADIR_BYOKODORI); - HuDataDirClose(DATADIR_BOARD); - createFunc = destroyFunc = NULL; + s32 dir_table[] = { + DATADIR_W01, + DATADIR_W02, + DATADIR_W03, + DATADIR_W04, + DATADIR_W05, + DATADIR_W06, + DATADIR_W10, + DATADIR_W20, + DATADIR_W21 + }; + BoardTauntKill(); + BoardAudSeqFadeOutAll(); + HuAudAllStop(); + BoardRollKill(); + BoardStatusKill(); + BoardBooHouseKill(); + BoardShopKill(); + BoardLotteryKill(); + BoardSpaceDestroy(); + BoardPlayerModelKill(); + if(destroyFunc) { + destroyFunc(); + } + BoardModelKillAll(); + BoardWinKillAll(); + HuDataDirClose(dir_table[GWBoardGet()]); + HuDataDirClose(DATADIR_EFFECT); + HuDataDirClose(DATADIR_BGUEST); + HuDataDirClose(DATADIR_BKOOPASUIT); + HuDataDirClose(DATADIR_BBATTLE); + HuDataDirClose(DATADIR_BKOOPA); + HuDataDirClose(DATADIR_BKUJIYA); + HuDataDirClose(DATADIR_BYOKODORI); + HuDataDirClose(DATADIR_BOARD); + createFunc = destroyFunc = NULL; } void BoardLightHookSet(BoardLightHook set, BoardLightHook reset) { - boardLightSetHook = set; - boardLightResetHook = reset; + boardLightSetHook = set; + boardLightResetHook = reset; } void BoardLightSetExec(void) { - Hu3DBGColorSet(0, 0, 0); - if(boardLightSetHook) { - boardLightSetHook(); - } + Hu3DBGColorSet(0, 0, 0); + if(boardLightSetHook) { + boardLightSetHook(); + } } void BoardLightResetExec(void) { - if(boardLightResetHook) { - boardLightResetHook(); - } - Hu3DBGColorSet(0, 0, 0); - Hu3DFogClear(); - Hu3DReflectNoSet(0); + if(boardLightResetHook) { + boardLightResetHook(); + } + Hu3DBGColorSet(0, 0, 0); + Hu3DFogClear(); + Hu3DReflectNoSet(0); } //Fixes order of boardCamera and cameraBackup static BoardCameraData *BoardCameraGet(void) { - return &boardCamera; + return &boardCamera; } void BoardCameraBackup(void) { - cameraUseBackup = TRUE; - memcpy(&cameraBackup, &boardCamera, sizeof(BoardCameraData)); + cameraUseBackup = TRUE; + memcpy(&cameraBackup, &boardCamera, sizeof(BoardCameraData)); } void BoardCameraRestore(void) { - if(cameraUseBackup) { - memcpy(&boardCamera, &cameraBackup, sizeof(BoardCameraData)); - cameraUseBackup = FALSE; - } + if(cameraUseBackup) { + memcpy(&boardCamera, &cameraBackup, sizeof(BoardCameraData)); + cameraUseBackup = FALSE; + } } void BoardCameraScissorSet(s32 x, s32 y, s32 w, s32 h) { - BoardCameraData *camera = &boardCamera; - Hu3DCameraScissorSet(camera->mask, x, y, w, h); + BoardCameraData *camera = &boardCamera; + Hu3DCameraScissorSet(camera->mask, x, y, w, h); } void BoardCameraViewSet(s32 type) { - BoardCameraData *camera = &boardCamera; - BoardFocusData *focus; - float size; - if(!cameraObj) { - return; - } - focus = &camera->focus; - if(type == 0) { - focus->view_type = 0; - return; - } - OSs16tof32(&camViewTbl[type].fov, &focus->fov_end); - focus->fov_start = camera->fov; - OSs16tof32(&camViewTbl[type].zoom, &focus->zoom_end); - focus->zoom_start = camera->zoom; - OSs16tof32(&camViewTbl[type].x_rot, &focus->rot_end.x); - focus->rot_end.y = 0; - focus->rot_end.z = 0; - focus->rot_start = camera->rot; - focus->target_start = camera->target; - if(BoardPlayerSizeGet(GWSystem.player_curr) == 2 || GWPlayer[GWSystem.player_curr].bowser_suit) { - focus->zoom_end += 400.0f; - size = 2.5f; - } else { - size = 1.0f; - } - BoardCameraTargetModelSet(BoardPlayerModelGet(GWSystem.player_curr)); - BoardPlayerPosGet(GWSystem.player_curr, &focus->target_end); - BoardCameraOffsetSet(0.0f, 100.0f*size, 0.0f); - focus->target_end.y += 100.0f*size; - _SetFlag(FLAG_ID_MAKE(1, 21)); - focus->view_type = type; - focus->time = 0; - if(camera->moving) { - focus->max_time = 21; - } else { - focus->max_time = 1; - } + BoardCameraData *camera = &boardCamera; + BoardFocusData *focus; + float size; + if(!cameraObj) { + return; + } + focus = &camera->focus; + if(type == 0) { + focus->view_type = 0; + return; + } + OSs16tof32(&camViewTbl[type].fov, &focus->fov_end); + focus->fov_start = camera->fov; + OSs16tof32(&camViewTbl[type].zoom, &focus->zoom_end); + focus->zoom_start = camera->zoom; + OSs16tof32(&camViewTbl[type].x_rot, &focus->rot_end.x); + focus->rot_end.y = 0; + focus->rot_end.z = 0; + focus->rot_start = camera->rot; + focus->target_start = camera->target; + if(BoardPlayerSizeGet(GWSystem.player_curr) == 2 || GWPlayer[GWSystem.player_curr].bowser_suit) { + focus->zoom_end += 400.0f; + size = 2.5f; + } else { + size = 1.0f; + } + BoardCameraTargetModelSet(BoardPlayerModelGet(GWSystem.player_curr)); + BoardPlayerPosGet(GWSystem.player_curr, &focus->target_end); + BoardCameraOffsetSet(0.0f, 100.0f*size, 0.0f); + focus->target_end.y += 100.0f*size; + _SetFlag(FLAG_ID_MAKE(1, 21)); + focus->view_type = type; + focus->time = 0; + if(camera->moving) { + focus->max_time = 21; + } else { + focus->max_time = 1; + } } s32 BoardCameraPosGet(Vec *dst) { - BoardCameraData *camera; - if(!dst) { - return -1; - } - camera = &boardCamera; - *dst = camera->pos; - return 0; + BoardCameraData *camera; + if(!dst) { + return -1; + } + camera = &boardCamera; + *dst = camera->pos; + return 0; } s32 BoardCameraTargetGet(Vec *dst) { - BoardCameraData *camera; - if(!dst) { - return -1; - } - camera = &boardCamera; - *dst = camera->target; - return 0; + BoardCameraData *camera; + if(!dst) { + return -1; + } + camera = &boardCamera; + *dst = camera->target; + return 0; } s32 BoardCameraRotGet(Vec *dst) { - BoardCameraData *camera; - if(!dst) { - return -1; - } - camera = &boardCamera; - *dst = camera->rot; - return 0; + BoardCameraData *camera; + if(!dst) { + return -1; + } + camera = &boardCamera; + *dst = camera->rot; + return 0; } float BoardCameraZoomGet() { - BoardCameraData *camera; - camera = &boardCamera; - return camera->zoom; + BoardCameraData *camera; + camera = &boardCamera; + return camera->zoom; } s32 BoardCameraDirGet(Vec *dst) { - BoardCameraData *camera; - if(!dst) { - return -1; - } - camera = &boardCamera; - if(!camera) { - return -1; - } - VECSubtract(&camera->target, &camera->pos, dst); - if(dst->x != 0 || dst->y != 0 || dst->z != 0) { - VECNormalize(dst, dst); - } - return 0; + BoardCameraData *camera; + if(!dst) { + return -1; + } + camera = &boardCamera; + if(!camera) { + return -1; + } + VECSubtract(&camera->target, &camera->pos, dst); + if(dst->x != 0 || dst->y != 0 || dst->z != 0) { + VECNormalize(dst, dst); + } + return 0; } s32 BoardCameraPointDirGet(Vec *point, Vec *dst) { - BoardCameraData *camera; - if(!dst || !point) { - return -1; - } - camera = &boardCamera; - if(!camera) { - return -1; - } - VECSubtract(point, &camera->pos, dst); - if(dst->x != 0 || dst->y != 0 || dst->z != 0) { - VECNormalize(dst, dst); - } - return 0; + BoardCameraData *camera; + if(!dst || !point) { + return -1; + } + camera = &boardCamera; + if(!camera) { + return -1; + } + VECSubtract(point, &camera->pos, dst); + if(dst->x != 0 || dst->y != 0 || dst->z != 0) { + VECNormalize(dst, dst); + } + return 0; } void BoardCameraMaskSet(u16 mask) { - BoardCameraData *camera = &boardCamera; - if(!camera) { - return; - } - camera->mask = mask; + BoardCameraData *camera = &boardCamera; + if(!camera) { + return; + } + camera->mask = mask; } void BoardCameraMoveSet(s32 move) { - BoardCameraData *camera = &boardCamera; - if(!camera) { - return; - } - if(!move) { - camera->moving = 0; - } else { - camera->moving = 1; - } + BoardCameraData *camera = &boardCamera; + if(!camera) { + return; + } + if(!move) { + camera->moving = 0; + } else { + camera->moving = 1; + } } void BoardCameraOffsetSet(float x, float y, float z) { - BoardCameraData *camera = &boardCamera; - if(!camera) { - return; - } - camera->offset.x = x; - camera->offset.y = y; - camera->offset.z = z; + BoardCameraData *camera = &boardCamera; + if(!camera) { + return; + } + camera->offset.x = x; + camera->offset.y = y; + camera->offset.z = z; } void BoardCameraTargetPlayerSet(s32 player) { - PlayerState *player_ptr = BoardPlayerGet(player); - if(!player_ptr) { - BoardCameraTargetModelSet(-1); - return; - } - BoardCameraTargetModelSet(BoardPlayerModelGet(player)); - BoardCameraOffsetSet(0, 100, 0); + PlayerState *player_ptr = BoardPlayerGet(player); + if(!player_ptr) { + BoardCameraTargetModelSet(-1); + return; + } + BoardCameraTargetModelSet(BoardPlayerModelGet(player)); + BoardCameraOffsetSet(0, 100, 0); } void BoardCameraTargetModelSet(s16 model) { - BoardCameraData *camera = &boardCamera; - if(!camera) { - return; - } - camera->target_mdl = model; - camera->target_space = -1; - camera->offset.x = camera->offset.y = camera->offset.z = 0; + BoardCameraData *camera = &boardCamera; + if(!camera) { + return; + } + camera->target_mdl = model; + camera->target_space = -1; + camera->offset.x = camera->offset.y = camera->offset.z = 0; } void BoardCameraTargetSpaceSet(s32 space) { - BoardCameraData *camera = &boardCamera; - if(!camera) { - return; - } - camera->target_mdl = -1; - camera->target_space = space; - camera->offset.x = camera->offset.y = camera->offset.z = 0; + BoardCameraData *camera = &boardCamera; + if(!camera) { + return; + } + camera->target_mdl = -1; + camera->target_space = space; + camera->offset.x = camera->offset.y = camera->offset.z = 0; } void BoardCameraPosCalcFuncSet(BoardCameraPosCalcFunc func) { - BoardCameraData *camera = &boardCamera; - if(!camera) { - return; - } - camera->pos_calc = func; + BoardCameraData *camera = &boardCamera; + if(!camera) { + return; + } + camera->pos_calc = func; } void BoardCameraQuakeSet(s32 duration, float strength) { - BoardCameraData *camera = &boardCamera; - if(!camera) { - return; - } - camera->quaking = 1; - camera->quake_strength = strength; - camera->quake_timer = duration; + BoardCameraData *camera = &boardCamera; + if(!camera) { + return; + } + camera->quaking = 1; + camera->quake_strength = strength; + camera->quake_timer = duration; } void BoardCameraQuakeReset() { - BoardCameraData *camera = &boardCamera; - camera->quaking = 0; - camera->quake_strength = 0; - camera->quake_timer = 0; + BoardCameraData *camera = &boardCamera; + camera->quaking = 0; + camera->quake_strength = 0; + camera->quake_timer = 0; } void BoardCameraTargetSet(float x, float y, float z) { - BoardCameraData *camera = &boardCamera; - camera->target.x = x; - camera->target.y = y; - camera->target.z = z; + BoardCameraData *camera = &boardCamera; + camera->target.x = x; + camera->target.y = y; + camera->target.z = z; } void BoardCameraPosSet(float x, float y, float z) { - BoardCameraData *camera = &boardCamera; - camera->pos.x = x; - camera->pos.y = y; - camera->pos.z = z; + BoardCameraData *camera = &boardCamera; + camera->pos.x = x; + camera->pos.y = y; + camera->pos.z = z; } void BoardCameraXRotZoomSet(float zoom, float x_rot) { - BoardCameraData *camera = &boardCamera; - camera->zoom = zoom; - camera->rot.x = x_rot; + BoardCameraData *camera = &boardCamera; + camera->zoom = zoom; + camera->rot.x = x_rot; } void BoardCameraZoomSet(float zoom) { - BoardCameraData *camera = &boardCamera; - camera->zoom = zoom; + BoardCameraData *camera = &boardCamera; + camera->zoom = zoom; } void BoardCameraRotSet(float x, float y) { - BoardCameraData *camera = &boardCamera; - camera->rot.x = x; - camera->rot.y = y; + BoardCameraData *camera = &boardCamera; + camera->rot.x = x; + camera->rot.y = y; } void BoardCameraNearFarSet(float near, float far) { - BoardCameraData *camera = &boardCamera; - camera->near = near; - camera->far = far; + BoardCameraData *camera = &boardCamera; + camera->near = near; + camera->far = far; } void BoardCameraNearFarGet(float *near, float *far) { - BoardCameraData *camera = &boardCamera; - if(near) { - *near = camera->near; - } - if(far) { - *far = camera->far; - } + BoardCameraData *camera = &boardCamera; + if(near) { + *near = camera->near; + } + if(far) { + *far = camera->far; + } } void BoardCameraMotionStart(s16 model_target, Vec *rot_target, float zoom_target, float fov_target) { - BoardCameraMotionStartEx(model_target, rot_target, NULL, zoom_target, fov_target, 21); + BoardCameraMotionStartEx(model_target, rot_target, NULL, zoom_target, fov_target, 21); } void BoardCameraMotionStartEx(s16 model_target, Vec *rot_target, Vec *offset_end, float zoom_target, float fov_target, s16 max_time) { - BoardCameraData *camera = &boardCamera; - BoardFocusData *focus; - if(!cameraObj) { - return; - } - focus = &camera->focus; - focus->fov_start = camera->fov; - focus->zoom_start = camera->zoom; - focus->rot_start = camera->rot; - focus->target_start = camera->target; - if(fov_target == -1) { - focus->fov_end = focus->fov_start; - } else { - focus->fov_end = fov_target; - } - if(zoom_target == -1) { - focus->zoom_end = focus->zoom_start; - } else { - focus->zoom_end = zoom_target; - } - if(!rot_target) { - focus->rot_end = focus->rot_start; - } else { - focus->rot_end = *rot_target; - } - if(model_target == -1) { - focus->target_end = focus->target_start; - } else { - BoardCameraTargetModelSet(model_target); - BoardModelPosGet(model_target, &focus->target_end); - } - if(offset_end) { - BoardCameraOffsetSet(offset_end->x, offset_end->y, offset_end->z); - VECAdd(offset_end, &focus->target_end, &focus->target_end); - } - _SetFlag(FLAG_ID_MAKE(1, 21)); - focus->view_type = 5; - focus->time = 0; - if(max_time < 0) { - max_time = 1; - } - focus->max_time = max_time; + BoardCameraData *camera = &boardCamera; + BoardFocusData *focus; + if(!cameraObj) { + return; + } + focus = &camera->focus; + focus->fov_start = camera->fov; + focus->zoom_start = camera->zoom; + focus->rot_start = camera->rot; + focus->target_start = camera->target; + if(fov_target == -1) { + focus->fov_end = focus->fov_start; + } else { + focus->fov_end = fov_target; + } + if(zoom_target == -1) { + focus->zoom_end = focus->zoom_start; + } else { + focus->zoom_end = zoom_target; + } + if(!rot_target) { + focus->rot_end = focus->rot_start; + } else { + focus->rot_end = *rot_target; + } + if(model_target == -1) { + focus->target_end = focus->target_start; + } else { + BoardCameraTargetModelSet(model_target); + BoardModelPosGet(model_target, &focus->target_end); + } + if(offset_end) { + BoardCameraOffsetSet(offset_end->x, offset_end->y, offset_end->z); + VECAdd(offset_end, &focus->target_end, &focus->target_end); + } + _SetFlag(FLAG_ID_MAKE(1, 21)); + focus->view_type = 5; + focus->time = 0; + if(max_time < 0) { + max_time = 1; + } + focus->max_time = max_time; } void BoardCameraFovSet(float fov) { - BoardCameraData *camera = &boardCamera; - camera->fov = fov; + BoardCameraData *camera = &boardCamera; + camera->fov = fov; } s32 BoardCameraCullCheck(Vec *point, float radius) { - Vec dir; - Vec pos; - float dist; - float dot; - BoardCameraData *camera = &boardCamera; - if(!camera->hide_all) { - return 0; - } - BoardCameraDirGet(&dir); - VECSubtract(point, &camera->pos, &pos); - dist = sqrtf((pos.x*pos.x)+(pos.y*pos.y)+(pos.z*pos.z)); - if(25000 < dist-(radius*2.0f)) { - return 0; - } - BoardCameraPointDirGet(point, &pos); - dot = VECDotProduct(&dir, &pos); - if(BOARD_FABS(dot) < cos((camera->fov*M_PI)/180)) { - return 0; - } else { - return 1; - } + Vec dir; + Vec pos; + float dist; + float dot; + BoardCameraData *camera = &boardCamera; + if(!camera->hide_all) { + return 0; + } + BoardCameraDirGet(&dir); + VECSubtract(point, &camera->pos, &pos); + dist = sqrtf((pos.x*pos.x)+(pos.y*pos.y)+(pos.z*pos.z)); + if(25000 < dist-(radius*2.0f)) { + return 0; + } + BoardCameraPointDirGet(point, &pos); + dot = VECDotProduct(&dir, &pos); + if(BOARD_FABS(dot) < cosd(camera->fov)) { + return 0; + } else { + return 1; + } } s32 BoardCameraMotionIsDone(void) { - return (_CheckFlag(FLAG_ID_MAKE(1, 21))) ? 0 : 1; + return (_CheckFlag(FLAG_ID_MAKE(1, 21))) ? 0 : 1; } void BoardCameraMotionWait(void) { - while(!BoardCameraMotionIsDone()) { - HuPrcVSleep(); - } - HuPrcVSleep(); + while(!BoardCameraMotionIsDone()) { + HuPrcVSleep(); + } + HuPrcVSleep(); } void BoardCameraInit(void) { - BoardCameraData *camera; - cameraUseBackup = FALSE; - memset(&cameraBackup, 0, sizeof(BoardCameraData)); - memset(&boardCamera, 0, sizeof(BoardCameraData)); - camera = &boardCamera; - camera->fov = 25; - camera->near = 100; - camera->far = 13000; - camera->aspect = HU_DISP_ASPECT; - camera->viewport_x = 0; - camera->viewport_y = 0; - camera->viewport_h = 480; - camera->viewport_w = 640; - camera->viewport_near = 0; - camera->viewport_far = 1; - camera->up.y = 1; - camera->moving = 0; - camera->quaking = 0; - camera->quake_timer = 0; - camera->pos.x = 0; - camera->pos.y = 5000; - camera->pos.z = 5000; - camera->offset.x = 0; - camera->offset.y = 0; - camera->offset.z = 0; - camera->pos_calc = NULL; - BoardSpaceFlagPosGet(0, 0x80000000, &camera->target); - camera->rot.x = camViewTbl[1].x_rot; - camera->zoom = camViewTbl[1].zoom; - camera->hide_all = 1; - camera->mask = 1; - Hu3DCameraCreate(1); - Hu3DCameraScissorSet(1, camera->viewport_x, camera->viewport_y, camera->viewport_w, camera->viewport_h); - Hu3DCameraScissorSet(2, 0, 0, 0, 0); - Hu3DCameraPerspectiveSet(2, -1, 100, 13000, 1.2); - cameraObj = omAddObjEx(boardObjMan, 32258, 0, 0, -1, UpdateCamera); + BoardCameraData *camera; + cameraUseBackup = FALSE; + memset(&cameraBackup, 0, sizeof(BoardCameraData)); + memset(&boardCamera, 0, sizeof(BoardCameraData)); + camera = &boardCamera; + camera->fov = 25; + camera->near = 100; + camera->far = 13000; + camera->aspect = HU_DISP_ASPECT; + camera->viewport_x = 0; + camera->viewport_y = 0; + camera->viewport_h = 480; + camera->viewport_w = 640; + camera->viewport_near = 0; + camera->viewport_far = 1; + camera->up.y = 1; + camera->moving = 0; + camera->quaking = 0; + camera->quake_timer = 0; + camera->pos.x = 0; + camera->pos.y = 5000; + camera->pos.z = 5000; + camera->offset.x = 0; + camera->offset.y = 0; + camera->offset.z = 0; + camera->pos_calc = NULL; + BoardSpaceFlagPosGet(0, 0x80000000, &camera->target); + camera->rot.x = camViewTbl[1].x_rot; + camera->zoom = camViewTbl[1].zoom; + camera->hide_all = 1; + camera->mask = 1; + Hu3DCameraCreate(1); + Hu3DCameraScissorSet(1, camera->viewport_x, camera->viewport_y, camera->viewport_w, camera->viewport_h); + Hu3DCameraScissorSet(2, 0, 0, 0, 0); + Hu3DCameraPerspectiveSet(2, -1, 100, 13000, 1.2); + cameraObj = omAddObjEx(boardObjMan, 32258, 0, 0, -1, UpdateCamera); } static inline void CalcCameraView(void) { - BoardCameraData *camera = &boardCamera; - CalcCameraTarget(camera); - CalcCameraPos(camera); + BoardCameraData *camera = &boardCamera; + CalcCameraTarget(camera); + CalcCameraPos(camera); } static void UpdateCamera(omObjData *object) { - BoardCameraData *camera; - Vec *target; - float x, y, z; - if(BoardIsKill()) { - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - CalcCameraView(); - camera = &boardCamera; - Hu3DCameraPerspectiveSet(camera->mask, camera->fov, camera->near, camera->far, camera->aspect); - Hu3DCameraViewportSet(camera->mask, camera->viewport_x, camera->viewport_y, camera->viewport_w, camera->viewport_h, camera->viewport_near, camera->viewport_far); - target = &camera->target; - if(camera->pos_calc) { - camera->pos_calc(camera); - } else { - - x = camera->rot.x; - y = camera->rot.y; - camera->pos.x = target->x+(sin((y*M_PI)/180.0)*cos((x*M_PI)/180.0)*camera->zoom); - camera->pos.y = target->y+(-sin((x*M_PI)/180.0)*camera->zoom); - camera->pos.z = target->z+(cos((y*M_PI)/180.0)*cos((x*M_PI)/180.0)*camera->zoom); - camera->up.x = sin((y*M_PI)/180.0)*sin((x*M_PI)/180.0); - camera->up.y = cos((x*M_PI)/180.0); - camera->up.z = cos((y*M_PI)/180.0)*sin((x*M_PI)/180.0); - if(camera->quaking) { - x = BoardRandFloat(); - y = BoardRandFloat(); - z = BoardRandFloat(); - camera->pos.x += (x-0.5f)*camera->quake_strength; - camera->pos.y += (y-0.5f)*camera->quake_strength; - camera->pos.z += (z-0.5f)*camera->quake_strength; - if(--camera->quake_timer <= 0) { - camera->quaking = 0; - camera->quake_timer = 0; - camera->quake_strength = 0; - } - } - } - Hu3DCameraPosSetV(camera->mask, &camera->pos, &camera->up, target); + BoardCameraData *camera; + Vec *target; + float x, y, z; + if(BoardIsKill()) { + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + CalcCameraView(); + camera = &boardCamera; + Hu3DCameraPerspectiveSet(camera->mask, camera->fov, camera->near, camera->far, camera->aspect); + Hu3DCameraViewportSet(camera->mask, camera->viewport_x, camera->viewport_y, camera->viewport_w, camera->viewport_h, camera->viewport_near, camera->viewport_far); + target = &camera->target; + if(camera->pos_calc) { + camera->pos_calc(camera); + } else { + + x = camera->rot.x; + y = camera->rot.y; + camera->pos.x = target->x+(sind(y)*cosd(x)*camera->zoom); + camera->pos.y = target->y+(-sind(x)*camera->zoom); + camera->pos.z = target->z+(cosd(y)*cosd(x)*camera->zoom); + camera->up.x = sind(y)*sind(x); + camera->up.y = cosd(x); + camera->up.z = cosd(y)*sind(x); + if(camera->quaking) { + x = BoardRandFloat(); + y = BoardRandFloat(); + z = BoardRandFloat(); + camera->pos.x += (x-0.5f)*camera->quake_strength; + camera->pos.y += (y-0.5f)*camera->quake_strength; + camera->pos.z += (z-0.5f)*camera->quake_strength; + if(--camera->quake_timer <= 0) { + camera->quaking = 0; + camera->quake_timer = 0; + camera->quake_strength = 0; + } + } + } + Hu3DCameraPosSetV(camera->mask, &camera->pos, &camera->up, target); } static void CalcCameraTarget(BoardCameraData *camera) { - Vec offset; - Vec pos = { 0, 0, 0 }; - BoardFocusData *focus = &camera->focus; - if(camera->target_mdl != -1) { - BoardModelPosGet(camera->target_mdl, &pos); - } else { - if(camera->target_space != -1) { - BoardSpacePosGet(0, camera->target_space, &pos); - } else { - return; - } - } - VECAdd(&camera->offset, &pos, &pos); - VECSubtract(&pos, &camera->target, &offset); - if(camera->moving) { - VECScale(&offset, &offset, 0.15f); - } - VECAdd(&offset, &camera->target, &camera->target); + Vec offset; + Vec pos = { 0, 0, 0 }; + BoardFocusData *focus = &camera->focus; + if(camera->target_mdl != -1) { + BoardModelPosGet(camera->target_mdl, &pos); + } else { + if(camera->target_space != -1) { + BoardSpacePosGet(0, camera->target_space, &pos); + } else { + return; + } + } + VECAdd(&camera->offset, &pos, &pos); + VECSubtract(&pos, &camera->target, &offset); + if(camera->moving) { + VECScale(&offset, &offset, 0.15f); + } + VECAdd(&offset, &camera->target, &camera->target); } #define CAM_LERP(t, x1, x2, out) \ { \ - float result; \ - float offset; \ - float unit_scale; \ - float lerp_t; \ - lerp_x2 = x2; \ - lerp_x1 = x1; \ - lerp_t = t; \ - if(lerp_t2 == lerp_t1) { \ - result = lerp_x2; \ - } else { \ - unit_scale = (lerp_x1-lerp_x2)/((float)lerp_t1-(float)lerp_t2); \ - offset = lerp_x2-(unit_scale*lerp_t2); \ - result = offset+(unit_scale*lerp_t); \ - } \ - out = result; \ + float result; \ + float offset; \ + float unit_scale; \ + float lerp_t; \ + lerp_x2 = x2; \ + lerp_x1 = x1; \ + lerp_t = t; \ + if(lerp_t2 == lerp_t1) { \ + result = lerp_x2; \ + } else { \ + unit_scale = (lerp_x1-lerp_x2)/((float)lerp_t1-(float)lerp_t2); \ + offset = lerp_x2-(unit_scale*lerp_t2); \ + result = offset+(unit_scale*lerp_t); \ + } \ + out = result; \ } #define CAM_LERP_VEC(t, x1, x2, out) \ @@ -1267,270 +1267,270 @@ CAM_LERP(t, (x1).z, (x2).z, (out).z) static void CalcCameraPos(BoardCameraData *camera) { - //These variables must be volatile to match - volatile u32 lerp_t1, lerp_t2; - volatile float lerp_x1, lerp_x2; - float time; - - BoardFocusData *focus = &camera->focus; - if(focus->time > focus->max_time) { - focus->view_type = 0; - _ClearFlag(FLAG_ID_MAKE(1, 21)); - return; - } - OSs16tof32(&focus->time, &time); - focus->time++; - lerp_t2 = focus->max_time; - lerp_t1 = 0; - CAM_LERP(time, focus->zoom_start, focus->zoom_end, camera->zoom) - CAM_LERP_VEC(time, focus->rot_start, focus->rot_end, camera->rot) - CAM_LERP(time, focus->fov_start, focus->fov_end, camera->fov) - CAM_LERP_VEC(time, focus->target_start, focus->target_end, camera->target) + //These variables must be volatile to match + volatile u32 lerp_t1, lerp_t2; + volatile float lerp_x1, lerp_x2; + float time; + + BoardFocusData *focus = &camera->focus; + if(focus->time > focus->max_time) { + focus->view_type = 0; + _ClearFlag(FLAG_ID_MAKE(1, 21)); + return; + } + OSs16tof32(&focus->time, &time); + focus->time++; + lerp_t2 = focus->max_time; + lerp_t1 = 0; + CAM_LERP(time, focus->zoom_start, focus->zoom_end, camera->zoom) + CAM_LERP_VEC(time, focus->rot_start, focus->rot_end, camera->rot) + CAM_LERP(time, focus->fov_start, focus->fov_end, camera->fov) + CAM_LERP_VEC(time, focus->target_start, focus->target_end, camera->target) } void BoardMGDoneFlagSet(s32 flag) { - if(flag) { - _SetFlag(FLAG_ID_MAKE(1, 20)); - } else { - _ClearFlag(FLAG_ID_MAKE(1, 20)); - } + if(flag) { + _SetFlag(FLAG_ID_MAKE(1, 20)); + } else { + _ClearFlag(FLAG_ID_MAKE(1, 20)); + } } s32 BoardMGDoneFlagGet() { - return (_CheckFlag(FLAG_ID_MAKE(1, 20))) ? 1 : 0; + return (_CheckFlag(FLAG_ID_MAKE(1, 20))) ? 1 : 0; } void BoardMGExit(void) { - s32 player = GWSystem.player_curr; - BoardPlayerMoveToAsync(player, GWPlayer[GWSystem.player_curr].space_curr); - BoardCameraTargetPlayerSet(player); - BoardCameraMoveSet(1); - BoardCameraViewSet(1); - _ClearFlag(FLAG_ID_MAKE(1, 19)); + s32 player = GWSystem.player_curr; + BoardPlayerMoveToAsync(player, GWPlayer[GWSystem.player_curr].space_curr); + BoardCameraTargetPlayerSet(player); + BoardCameraMoveSet(1); + BoardCameraViewSet(1); + _ClearFlag(FLAG_ID_MAKE(1, 19)); } static void KillBoardMG(omObjData *object) { - if(!BoardMGDoneFlagGet()) { - BoardEventFlagReset(); - omDelObjEx(HuPrcCurrentGet(), object); - } + if(!BoardMGDoneFlagGet()) { + BoardEventFlagReset(); + omDelObjEx(HuPrcCurrentGet(), object); + } } static void ExecBoardMG(omObjData *object) { - if(_CheckFlag(FLAG_ID_MAKE(1, 19))) { - return; - } - if(GWPlayer[GWSystem.player_curr].moving == 0) { - BoardPlayerMotionShiftSet(GWSystem.player_curr, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); - if(!_CheckFlag(FLAG_ID_MAKE(1, 21))) { - _SetFlag(FLAG_ID_MAKE(1, 20)); - object->func = KillBoardMG; - } - } + if(_CheckFlag(FLAG_ID_MAKE(1, 19))) { + return; + } + if(GWPlayer[GWSystem.player_curr].moving == 0) { + BoardPlayerMotionShiftSet(GWSystem.player_curr, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + if(!_CheckFlag(FLAG_ID_MAKE(1, 21))) { + _SetFlag(FLAG_ID_MAKE(1, 20)); + object->func = KillBoardMG; + } + } } void BoardMGCreate(s32 arg0) { - _SetFlag(FLAG_ID_MAKE(1, 19)); - _ClearFlag(FLAG_ID_MAKE(1, 20)); - GWSystem.unk_38 = arg0; - omAddObjEx(boardObjMan, 0x201, 0, 0, -1, ExecBoardMG); - BoardEventFlagSet(); - BoardSpaceWalkMiniEventExec(); + _SetFlag(FLAG_ID_MAKE(1, 19)); + _ClearFlag(FLAG_ID_MAKE(1, 20)); + GWSystem.unk_38 = arg0; + omAddObjEx(boardObjMan, 0x201, 0, 0, -1, ExecBoardMG); + BoardEventFlagSet(); + BoardSpaceWalkMiniEventExec(); } void BoardEventFlagSet(void) { - _SetFlag(FLAG_ID_MAKE(1, 18)); + _SetFlag(FLAG_ID_MAKE(1, 18)); } void BoardEventFlagReset(void) { - _ClearFlag(FLAG_ID_MAKE(1, 18)); + _ClearFlag(FLAG_ID_MAKE(1, 18)); } s32 BoardEventFlagGet(void) { - return _CheckFlag(FLAG_ID_MAKE(1, 18)) ? 1 : 0; + return _CheckFlag(FLAG_ID_MAKE(1, 18)) ? 1 : 0; } void BoardMTXCalcLookAt(Mtx dest, Vec *eye, Vec *up, Vec *target) { - Vec f, u, s; - f.x = eye->x-target->x; - f.y = eye->y-target->y; - f.z = eye->z-target->z; - VECNormalize(&f, &f); - VECCrossProduct(up, &f, &u); - VECNormalize(&u, &u); - VECCrossProduct(&f, &u, &s); - dest[0][0] = u.x; - dest[0][1] = u.y; - dest[0][2] = u.z; - dest[0][3] = 0; - dest[1][0] = s.x; - dest[1][1] = s.y; - dest[1][2] = s.z; - dest[1][3] = 0; - dest[2][0] = f.x; - dest[2][1] = f.y; - dest[2][2] = f.z; - dest[2][3] = 0; + Vec f, u, s; + f.x = eye->x-target->x; + f.y = eye->y-target->y; + f.z = eye->z-target->z; + VECNormalize(&f, &f); + VECCrossProduct(up, &f, &u); + VECNormalize(&u, &u); + VECCrossProduct(&f, &u, &s); + dest[0][0] = u.x; + dest[0][1] = u.y; + dest[0][2] = u.z; + dest[0][3] = 0; + dest[1][0] = s.x; + dest[1][1] = s.y; + dest[1][2] = s.z; + dest[1][3] = 0; + dest[2][0] = f.x; + dest[2][1] = f.y; + dest[2][2] = f.z; + dest[2][3] = 0; } float BoardArcSin(float value) { - float result; - s32 sign; - if(value < 0) { - sign = 1; - value = BOARD_FABS(value); - } else { - sign = 0; - } - if(value > 1.0f) { - return 0; - } - if(value <= (float)(M_PI/2)) { - result = atanf(value/sqrtf(1-(value*value))); - } else { - result = (float)(M_PI/2)-atanf(sqrtf(1-(value*value))/value); - } - if(sign) { - result = BOARD_FABS(result); - } - return result; + float result; + s32 sign; + if(value < 0) { + sign = 1; + value = BOARD_FABS(value); + } else { + sign = 0; + } + if(value > 1.0f) { + return 0; + } + if(value <= (float)(M_PI/2)) { + result = atanf(value/sqrtf(1-(value*value))); + } else { + result = (float)(M_PI/2)-atanf(sqrtf(1-(value*value))/value); + } + if(sign) { + result = BOARD_FABS(result); + } + return result; } float BoardArcCos(float value) { - if(BOARD_FABS(value) > 1) { - return 0; - } - return (float)(M_PI/2)-BoardArcSin(value); + if(BOARD_FABS(value) > 1) { + return 0; + } + return (float)(M_PI/2)-BoardArcSin(value); } void BoardRandInit(void) { - boardRandSeed = OSGetTime(); + boardRandSeed = OSGetTime(); } u32 BoardRand(void) { - boardRandSeed = (boardRandSeed*0x19660D)+(0x3C6EF35F); - return boardRandSeed; + boardRandSeed = (boardRandSeed*0x19660D)+(0x3C6EF35F); + return boardRandSeed; } u32 BoardRandMod(u32 value) { - return (BoardRand() & 0x7FFFFFFF)%value; + return (BoardRand() & 0x7FFFFFFF)%value; } float BoardRandFloat(void) { - float value; - *((u32 *)&value) = (BoardRand() & 0x7FFFFF)|0x3F800000; //Generate float from 1.0f to 2.0f - return value-1.0f; + float value; + *((u32 *)&value) = (BoardRand() & 0x7FFFFF)|0x3F800000; //Generate float from 1.0f to 2.0f + return value-1.0f; } float BoardVecDistXZCalc(Vec *vec1, Vec *vec2) { - float dx = vec1->x-vec2->x; - float dz = vec1->z-vec2->z; - return sqrtf((dx*dx)+(dz*dz)); + float dx = vec1->x-vec2->x; + float dz = vec1->z-vec2->z; + return sqrtf((dx*dx)+(dz*dz)); } s32 BoardVecMaxDistXZCheck(Vec *vec1, Vec *vec2, float max_dist) { - float dz = vec1->z-vec2->z; - float dx = vec1->x-vec2->x; - float dist = sqrtf((dx*dx)+(dz*dz)); - if(dist <= max_dist) { - return 1; - } else { - return 0; - } + float dz = vec1->z-vec2->z; + float dx = vec1->x-vec2->x; + float dist = sqrtf((dx*dx)+(dz*dz)); + if(dist <= max_dist) { + return 1; + } else { + return 0; + } } void BoardDAngleCalcVec(Vec *vec1) { - s32 i; - float *data = &vec1->x; - for(i=0; i<3; i++) { - while(*data > 180.0f) { - *data -= 360.0f; - } - while(*data < -180.0f) { - *data += 360.0f; - } - data++; - } + s32 i; + float *data = &vec1->x; + for(i=0; i<3; i++) { + while(*data > 180.0f) { + *data -= 360.0f; + } + while(*data < -180.0f) { + *data += 360.0f; + } + data++; + } } float BoardDAngleCalc(float value) { - while(value > 180.0f) { - value -= 360.0f; - } - while(value < -180.0f) { - value += 360.0f; - } - return value; + while(value > 180.0f) { + value -= 360.0f; + } + while(value < -180.0f) { + value += 360.0f; + } + return value; } s32 BoardDAngleCalcRange(float *value, float min, float range) { - float diff = min-(*value); - if(diff >= 180.0f) { - min -= 360.0f; - } - if(diff <= -180.0f) { - min += 360.0f; - } - if(min > *value) { - *value += range; - if(*value >= min) { - *value = BoardDAngleCalc(min); - return 1; - } - } else { - *value -= range; - if(*value <= min) { - *value = BoardDAngleCalc(min); - return 1; - } - } - *value = BoardDAngleCalc(*value); - return 0; + float diff = min-(*value); + if(diff >= 180.0f) { + min -= 360.0f; + } + if(diff <= -180.0f) { + min += 360.0f; + } + if(min > *value) { + *value += range; + if(*value >= min) { + *value = BoardDAngleCalc(min); + return 1; + } + } else { + *value -= range; + if(*value <= min) { + *value = BoardDAngleCalc(min); + return 1; + } + } + *value = BoardDAngleCalc(*value); + return 0; } s32 BoardVecMinDistCheck(Vec *vec1, Vec *vec2, float min_dist) { - Vec temp; - VECSubtract(vec1, vec2, &temp); - if(VECSquareMag(&temp) >= (min_dist*min_dist)) { - return 0; - } else { - return 1; - } + Vec temp; + VECSubtract(vec1, vec2, &temp); + if(VECSquareMag(&temp) >= (min_dist*min_dist)) { + return 0; + } else { + return 1; + } } typedef struct filter_work { - struct { - u8 kill : 1; - u8 paused : 1; - }; - u8 max_alpha; - s16 time; - s16 len; - s16 model; - GXColor color; - float speed; + struct { + u8 kill : 1; + u8 paused : 1; + }; + u8 max_alpha; + s16 time; + s16 len; + s16 model; + GXColor color; + float speed; } FilterWork; static void UpdateFilter(omObjData *object); @@ -1538,168 +1538,168 @@ static void DrawFilter(ModelData *model, Mtx matrix); void BoardFilterFadeOut(s16 len) { - FilterWork *work; - float speed; - if(!filterObj) { - return; - } - if(len <= 0) { - len = 1; - } - work = OM_GET_WORK_PTR(filterObj, FilterWork); - work->len = len; - OSs16tof32(&len, &speed); - work->speed = -(work->color.a)/speed; - work->paused = 0; - work->time = work->len; + FilterWork *work; + float speed; + if(!filterObj) { + return; + } + if(len <= 0) { + len = 1; + } + work = OM_GET_WORK_PTR(filterObj, FilterWork); + work->len = len; + OSs16tof32(&len, &speed); + work->speed = -(work->color.a)/speed; + work->paused = 0; + work->time = work->len; } void BoardFilterFadeInit(s16 len, u8 max_alpha) { - FilterWork *work; - if(filterObj) { - work = OM_GET_WORK_PTR(filterObj, FilterWork); - work->kill = 1; - while(filterObj) { - HuPrcVSleep(); - } - } - filterObj = omAddObjEx(boardObjMan, 32000, 0, 0, -1, UpdateFilter); - omSetStatBit(filterObj, OM_STAT_NOPAUSE|0x80); - if(len <= 0) { - len = 1; - } - work = OM_GET_WORK_PTR(filterObj, FilterWork); - work->kill = 0; - work->paused = 0; - work->color.r = 0; - work->color.g = 0; - work->color.b = 0; - work->color.a = 0; - work->max_alpha = max_alpha; - work->speed = (float)(max_alpha-work->color.a)/(float)len; - work->time = len; - work->len = len; - work->model = Hu3DHookFuncCreate(DrawFilter); - Hu3DModelLayerSet(work->model, 1); + FilterWork *work; + if(filterObj) { + work = OM_GET_WORK_PTR(filterObj, FilterWork); + work->kill = 1; + while(filterObj) { + HuPrcVSleep(); + } + } + filterObj = omAddObjEx(boardObjMan, 32000, 0, 0, -1, UpdateFilter); + omSetStatBit(filterObj, OM_STAT_NOPAUSE|0x80); + if(len <= 0) { + len = 1; + } + work = OM_GET_WORK_PTR(filterObj, FilterWork); + work->kill = 0; + work->paused = 0; + work->color.r = 0; + work->color.g = 0; + work->color.b = 0; + work->color.a = 0; + work->max_alpha = max_alpha; + work->speed = (float)(max_alpha-work->color.a)/(float)len; + work->time = len; + work->len = len; + work->model = Hu3DHookFuncCreate(DrawFilter); + Hu3DModelLayerSet(work->model, 1); } s32 BoardFilterFadePauseCheck(void) { - FilterWork *work; - if(!filterObj) { - return 1; - } - work = OM_GET_WORK_PTR(filterObj, FilterWork); - return (work->paused) ? 1 : 0; + FilterWork *work; + if(!filterObj) { + return 1; + } + work = OM_GET_WORK_PTR(filterObj, FilterWork); + return (work->paused) ? 1 : 0; } s32 BoardFilterFadeCheck(void) { - return (filterObj != NULL) ? 0 : 1; + return (filterObj != NULL) ? 0 : 1; } static void UpdateFilter(omObjData *object) { - float alpha; - FilterWork *work = OM_GET_WORK_PTR(object, FilterWork); - if(work->kill || BoardIsKill()) { - if(work->model != -1) { - Hu3DModelKill(work->model); - } - filterObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - if(work->paused) { - return; - } - OSu8tof32(&work->color.a, &alpha); - alpha += work->speed; - OSf32tou8(&alpha, &work->color.a); - if(work->time > 0) { - work->time--; - return; - } - if(work->speed > 0) { - work->paused = 1; - work->color.a = work->max_alpha; - } else { - work->kill = 1; - } + float alpha; + FilterWork *work = OM_GET_WORK_PTR(object, FilterWork); + if(work->kill || BoardIsKill()) { + if(work->model != -1) { + Hu3DModelKill(work->model); + } + filterObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + if(work->paused) { + return; + } + OSu8tof32(&work->color.a, &alpha); + alpha += work->speed; + OSf32tou8(&alpha, &work->color.a); + if(work->time > 0) { + work->time--; + return; + } + if(work->speed > 0) { + work->paused = 1; + work->color.a = work->max_alpha; + } else { + work->kill = 1; + } } static void DrawFilter(ModelData *model, Mtx matrix) { - static GXColor colorN = { 0xFF, 0xFF, 0xFF, 0xFF }; - Mtx44 proj; - Mtx modelview; - - float x1, x2, y1, y2; - FilterWork *work; - if(!filterObj) { - return; - } - work = OM_GET_WORK_PTR(filterObj, FilterWork); - x1 = 0.0f; - x2 = HU_FB_WIDTH; - y1 = 0.0f; - y2 = HU_FB_HEIGHT; - MTXOrtho(proj, y1, y2, x1, x2, 0, 10); - GXSetProjection(proj, GX_ORTHOGRAPHIC); - MTXIdentity(modelview); - GXLoadPosMtxImm(modelview, GX_PNMTX0); - GXSetCurrentMtx(GX_PNMTX0); - GXSetViewport(0, 0, x2, 1.0f+y2, 0, 1); - GXSetScissor(0, 0, x2, 1.0f+y2); - GXClearVtxDesc(); - GXSetChanMatColor(GX_COLOR0A0, work->color); - GXSetNumChans(1); - GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_NONE, GX_AF_NONE); - GXSetChanCtrl(GX_COLOR1A1, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_NONE, GX_AF_NONE); - GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); - GXSetTevOp(GX_TEVSTAGE0, GX_PASSCLR); - GXSetNumTexGens(0); - GXSetNumTevStages(1); - GXSetVtxDesc(GX_VA_POS, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XY, GX_U16, 0); - GXSetZMode(GX_TRUE, GX_ALWAYS, GX_FALSE); - GXSetAlphaUpdate(GX_FALSE); - GXSetColorUpdate(GX_TRUE); - GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); - GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); - GXBegin(GX_QUADS, GX_VTXFMT0, 4); - GXPosition2u16(x1, y1); - GXPosition2u16(x2, y1); - GXPosition2u16(x2, y2); - GXPosition2u16(x1, y2); - GXEnd(); - GXSetChanMatColor(GX_COLOR0A0, colorN); - + static GXColor colorN = { 0xFF, 0xFF, 0xFF, 0xFF }; + Mtx44 proj; + Mtx modelview; + + float x1, x2, y1, y2; + FilterWork *work; + if(!filterObj) { + return; + } + work = OM_GET_WORK_PTR(filterObj, FilterWork); + x1 = 0.0f; + x2 = HU_FB_WIDTH; + y1 = 0.0f; + y2 = HU_FB_HEIGHT; + MTXOrtho(proj, y1, y2, x1, x2, 0, 10); + GXSetProjection(proj, GX_ORTHOGRAPHIC); + MTXIdentity(modelview); + GXLoadPosMtxImm(modelview, GX_PNMTX0); + GXSetCurrentMtx(GX_PNMTX0); + GXSetViewport(0, 0, x2, 1.0f+y2, 0, 1); + GXSetScissor(0, 0, x2, 1.0f+y2); + GXClearVtxDesc(); + GXSetChanMatColor(GX_COLOR0A0, work->color); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_NONE, GX_AF_NONE); + GXSetChanCtrl(GX_COLOR1A1, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_NONE, GX_AF_NONE); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); + GXSetTevOp(GX_TEVSTAGE0, GX_PASSCLR); + GXSetNumTexGens(0); + GXSetNumTevStages(1); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XY, GX_U16, 0); + GXSetZMode(GX_TRUE, GX_ALWAYS, GX_FALSE); + GXSetAlphaUpdate(GX_FALSE); + GXSetColorUpdate(GX_TRUE); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition2u16(x1, y1); + GXPosition2u16(x2, y1); + GXPosition2u16(x2, y2); + GXPosition2u16(x1, y2); + GXEnd(); + GXSetChanMatColor(GX_COLOR0A0, colorN); + } typedef struct confetti_particle { - s16 time; - u8 alpha; - u8 light_col; - Vec pos; - Vec rot; - Vec pos_vel; - Vec rot_vel; + s16 time; + u8 alpha; + u8 light_col; + Vec pos; + Vec rot; + Vec pos_vel; + Vec rot_vel; } ConfettiParticle; typedef struct confetti_work { - struct { - u8 kill : 1; - u8 paused : 1; - }; - s8 spawn_speed; - s8 time; - s8 delay; - s16 count; - s16 gfx_mdl; - s16 draw_mdl; - ConfettiParticle *data; + struct { + u8 kill : 1; + u8 paused : 1; + }; + s8 spawn_speed; + s8 time; + s8 delay; + s16 count; + s16 gfx_mdl; + s16 draw_mdl; + ConfettiParticle *data; } ConfettiWork; static void UpdateConfetti(omObjData *object); @@ -1710,501 +1710,501 @@ static void DrawConfetti(ModelData *model, Mtx matrix); void BoardConfettiCreate(Vec *pos, s16 count, float range) { - omObjData *object; - ConfettiWork *work; - if(confettiObj) { - BoardConfettiStop(); - HuPrcSleep(17); - } - object = omAddObjEx(boardObjMan, 257, 0, 0, -1, UpdateConfetti); - confettiObj = object; - work = OM_GET_WORK_PTR(object, ConfettiWork); - work->kill = 0; - work->paused = 0; - work->count = count; - work->spawn_speed = 1; - work->time = 0; - work->delay = 10; - work->draw_mdl = Hu3DHookFuncCreate(DrawConfetti); - work->data = HuMemDirectMallocNum(HEAP_SYSTEM, work->count*sizeof(ConfettiParticle), MEMORY_DEFAULT_NUM); - object->trans.x = pos->x; - object->trans.y = pos->y; - object->trans.z = pos->z; - object->rot.x = range; - work->gfx_mdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 7), NULL, 0); - BoardModelLayerSet(work->gfx_mdl, 2); - BoardModelVisibilitySet(work->gfx_mdl, 0); - { - ConfettiParticle *particle; - s32 i; - particle = work->data; - for(i=0; icount; i++, particle++) { - particle->time = -1; - } - } - HuAudFXPlay(774); + omObjData *object; + ConfettiWork *work; + if(confettiObj) { + BoardConfettiStop(); + HuPrcSleep(17); + } + object = omAddObjEx(boardObjMan, 257, 0, 0, -1, UpdateConfetti); + confettiObj = object; + work = OM_GET_WORK_PTR(object, ConfettiWork); + work->kill = 0; + work->paused = 0; + work->count = count; + work->spawn_speed = 1; + work->time = 0; + work->delay = 10; + work->draw_mdl = Hu3DHookFuncCreate(DrawConfetti); + work->data = HuMemDirectMallocNum(HEAP_SYSTEM, work->count*sizeof(ConfettiParticle), MEMORY_DEFAULT_NUM); + object->trans.x = pos->x; + object->trans.y = pos->y; + object->trans.z = pos->z; + object->rot.x = range; + work->gfx_mdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 7), NULL, 0); + BoardModelLayerSet(work->gfx_mdl, 2); + BoardModelVisibilitySet(work->gfx_mdl, 0); + { + ConfettiParticle *particle; + s32 i; + particle = work->data; + for(i=0; icount; i++, particle++) { + particle->time = -1; + } + } + HuAudFXPlay(774); } void BoardConfettiKill(void) { - if(confettiObj) { - OM_GET_WORK_PTR(confettiObj, ConfettiWork)->kill = 1; - } + if(confettiObj) { + OM_GET_WORK_PTR(confettiObj, ConfettiWork)->kill = 1; + } } void BoardConfettiStop(void) { - if(confettiObj) { - s32 i; - ConfettiParticle *particle; - ConfettiWork *work = OM_GET_WORK_PTR(confettiObj, ConfettiWork); - work->paused = 1; - particle = work->data; - for(i=0; icount; i++, particle++) { - if(particle->time != -1) { - if(particle->time > 16) { - particle->time = 16; - } - } - } - } + if(confettiObj) { + s32 i; + ConfettiParticle *particle; + ConfettiWork *work = OM_GET_WORK_PTR(confettiObj, ConfettiWork); + work->paused = 1; + particle = work->data; + for(i=0; icount; i++, particle++) { + if(particle->time != -1) { + if(particle->time > 16) { + particle->time = 16; + } + } + } + } } static void UpdateConfetti(omObjData *object) { - ConfettiWork *work = OM_GET_WORK_PTR(object, ConfettiWork); - if(work->kill || BoardIsKill()) { - BoardModelKill(work->gfx_mdl); - Hu3DModelKill(work->draw_mdl); - HuMemDirectFree(work->data); - confettiObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - } else { - SpawnConfetti(object); - MoveConfetti(object); - } + ConfettiWork *work = OM_GET_WORK_PTR(object, ConfettiWork); + if(work->kill || BoardIsKill()) { + BoardModelKill(work->gfx_mdl); + Hu3DModelKill(work->draw_mdl); + HuMemDirectFree(work->data); + confettiObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + } else { + SpawnConfetti(object); + MoveConfetti(object); + } } static void SpawnConfetti(omObjData *object) { - ConfettiWork *work = OM_GET_WORK_PTR(object, ConfettiWork); - s32 i; - if(work->paused) { - return; - } - if(work->spawn_speed < 5) { - if(work->time++ > work->delay) { - work->time = 0; - work->spawn_speed++; - } - } - for(i=0; ispawn_speed; i++) { - ConfettiParticle *particle; - float angle; - s32 j; - particle = work->data; - for(j=0; jcount; j++, particle++) { - if(particle->time == -1) { - break; - } - } - if(j == work->count) { - break; - } - particle->time = BoardRandMod(60)+120; - angle = BoardRandFloat()*360.0f; - particle->pos.x = (sin((angle*M_PI)/180.0)*object->rot.x)+object->trans.x; - particle->pos.y = object->trans.y; - particle->pos.z = (cos((angle*M_PI)/180.0)*object->rot.x)+object->trans.z; - particle->pos_vel.x = 2.0f*(BoardRandFloat()-0.5f); - particle->pos_vel.y = (-98.00001f/15.0f)*BoardRandFloat(); - particle->pos_vel.z = 2.0f*(BoardRandFloat()-0.5f); - particle->rot_vel.x = 8.0f+((BoardRandFloat()-0.5f)*20.0f); - particle->rot_vel.y = 8.0f+((BoardRandFloat()-0.5f)*20.0f); - particle->rot_vel.z = 8.0f+((BoardRandFloat()-0.5f)*20.0f); - particle->rot.x = 0; - particle->rot.y = 0; - particle->rot.z = 0; - particle->alpha = 255; - particle->light_col = BoardRandMod(6); - } + ConfettiWork *work = OM_GET_WORK_PTR(object, ConfettiWork); + s32 i; + if(work->paused) { + return; + } + if(work->spawn_speed < 5) { + if(work->time++ > work->delay) { + work->time = 0; + work->spawn_speed++; + } + } + for(i=0; ispawn_speed; i++) { + ConfettiParticle *particle; + float angle; + s32 j; + particle = work->data; + for(j=0; jcount; j++, particle++) { + if(particle->time == -1) { + break; + } + } + if(j == work->count) { + break; + } + particle->time = BoardRandMod(60)+120; + angle = BoardRandFloat()*360.0f; + particle->pos.x = (sind(angle)*object->rot.x)+object->trans.x; + particle->pos.y = object->trans.y; + particle->pos.z = (cosd(angle)*object->rot.x)+object->trans.z; + particle->pos_vel.x = 2.0f*(BoardRandFloat()-0.5f); + particle->pos_vel.y = (-98.00001f/15.0f)*BoardRandFloat(); + particle->pos_vel.z = 2.0f*(BoardRandFloat()-0.5f); + particle->rot_vel.x = 8.0f+((BoardRandFloat()-0.5f)*20.0f); + particle->rot_vel.y = 8.0f+((BoardRandFloat()-0.5f)*20.0f); + particle->rot_vel.z = 8.0f+((BoardRandFloat()-0.5f)*20.0f); + particle->rot.x = 0; + particle->rot.y = 0; + particle->rot.z = 0; + particle->alpha = 255; + particle->light_col = BoardRandMod(6); + } } static void MoveConfetti(omObjData *object) { - ConfettiWork *work = OM_GET_WORK_PTR(object, ConfettiWork); - s32 i; - s32 existF; - ConfettiParticle *particle; - - existF = 0; - particle = work->data; - - for(i=0; icount; i++, particle++) { - if(particle->time == -1) { - continue; - } - if(particle->time <= 0) { - particle->time = -1; - continue; - } - particle->time--; - particle->pos.x += particle->pos_vel.x; - particle->pos.y += particle->pos_vel.y; - particle->pos.z += particle->pos_vel.z; - particle->rot.x += particle->rot_vel.x; - particle->rot.y += particle->rot_vel.y; - particle->rot.z += particle->rot_vel.z; - if(particle->time < 16) { - if(particle->alpha >= 15) { - particle->alpha -= 15; - } else { - particle->alpha = 0; - } - } - if(!existF) { - existF = 1; - } - } - if(existF == 0 && work->paused) { - work->kill = 1; - } + ConfettiWork *work = OM_GET_WORK_PTR(object, ConfettiWork); + s32 i; + s32 existF; + ConfettiParticle *particle; + + existF = 0; + particle = work->data; + + for(i=0; icount; i++, particle++) { + if(particle->time == -1) { + continue; + } + if(particle->time <= 0) { + particle->time = -1; + continue; + } + particle->time--; + particle->pos.x += particle->pos_vel.x; + particle->pos.y += particle->pos_vel.y; + particle->pos.z += particle->pos_vel.z; + particle->rot.x += particle->rot_vel.x; + particle->rot.y += particle->rot_vel.y; + particle->rot.z += particle->rot_vel.z; + if(particle->time < 16) { + if(particle->alpha >= 15) { + particle->alpha -= 15; + } else { + particle->alpha = 0; + } + } + if(!existF) { + existF = 1; + } + } + if(existF == 0 && work->paused) { + work->kill = 1; + } } static Vec confettiLightTbl[6] = { - { 0.1, 0.4, 1 }, - { 0.2, 1, 0.1 }, - { 0.3, 1, 1 }, - { 1, 0.2, 0.1 }, - { 1, 0.2, 0.8 }, - { 1, 8, 0.3 } + { 0.1, 0.4, 1 }, + { 0.2, 1, 0.1 }, + { 0.3, 1, 1 }, + { 1, 0.2, 0.1 }, + { 1, 0.2, 0.8 }, + { 1, 8, 0.3 } }; static void DrawConfetti(ModelData *model, Mtx matrix) { - if(!confettiObj || BoardIsKill()) { - return; - } else { - ConfettiWork *work = OM_GET_WORK_PTR(confettiObj, ConfettiWork); - ModelData *model = &Hu3DData[work->gfx_mdl]; - ConfettiParticle *particle; - s32 i; - if(!model->hsfData) { - return; - } - particle = work->data; - for(i=0; icount; i++, particle++) { - Mtx result, temp; - float r, g, b, a; - if(particle->time == -1) { - continue; - } - MTXRotDeg(temp, 'z', particle->rot.z); - MTXRotDeg(result, 'x', particle->rot.x); - MTXConcat(temp, result, result); - MTXRotDeg(temp, 'y', particle->rot.y); - MTXConcat(temp, result, result); - MTXTrans(temp, particle->pos.x, particle->pos.y, particle->pos.z); - MTXConcat(temp, result, result); - MTXConcat(matrix, result, result); - r = confettiLightTbl[particle->light_col].x; - g = confettiLightTbl[particle->light_col].y; - b = confettiLightTbl[particle->light_col].z; - OSu8tof32(&particle->alpha, &a); - a = a*(1.0f/255.0f); - Hu3DModelTPLvlSet(BoardModelIDGet(work->gfx_mdl), a); - Hu3DModelAmbSet(BoardModelIDGet(work->gfx_mdl), r, g, b); - Hu3DModelObjDraw(BoardModelIDGet(work->gfx_mdl), "grid2", result); - } - } + if(!confettiObj || BoardIsKill()) { + return; + } else { + ConfettiWork *work = OM_GET_WORK_PTR(confettiObj, ConfettiWork); + ModelData *model = &Hu3DData[work->gfx_mdl]; + ConfettiParticle *particle; + s32 i; + if(!model->hsfData) { + return; + } + particle = work->data; + for(i=0; icount; i++, particle++) { + Mtx result, temp; + float r, g, b, a; + if(particle->time == -1) { + continue; + } + MTXRotDeg(temp, 'z', particle->rot.z); + MTXRotDeg(result, 'x', particle->rot.x); + MTXConcat(temp, result, result); + MTXRotDeg(temp, 'y', particle->rot.y); + MTXConcat(temp, result, result); + MTXTrans(temp, particle->pos.x, particle->pos.y, particle->pos.z); + MTXConcat(temp, result, result); + MTXConcat(matrix, result, result); + r = confettiLightTbl[particle->light_col].x; + g = confettiLightTbl[particle->light_col].y; + b = confettiLightTbl[particle->light_col].z; + OSu8tof32(&particle->alpha, &a); + a = a*(1.0f/255.0f); + Hu3DModelTPLvlSet(BoardModelIDGet(work->gfx_mdl), a); + Hu3DModelAmbSet(BoardModelIDGet(work->gfx_mdl), r, g, b); + Hu3DModelObjDraw(BoardModelIDGet(work->gfx_mdl), "grid2", result); + } + } } typedef struct last5_gfx_work { - struct { - u8 kill : 1; - u8 state : 3; - u8 is_last : 1; - u8 : 4; - }; - u8 stop_time; - s16 time; - s16 group; - s16 sprites[3]; + struct { + u8 kill : 1; + u8 state : 3; + u8 is_last : 1; + u8 : 4; + }; + u8 stop_time; + s16 time; + s16 group; + s16 sprites[3]; } Last5GfxWork; static s32 last5GfxSprTbl[3] = { - DATA_MAKE_NUM(DATADIR_BOARD, 95), - DATA_MAKE_NUM(DATADIR_BOARD, 97), - DATA_MAKE_NUM(DATADIR_BOARD, 96), + DATA_MAKE_NUM(DATADIR_BOARD, 95), + DATA_MAKE_NUM(DATADIR_BOARD, 97), + DATA_MAKE_NUM(DATADIR_BOARD, 96), }; static float last5GfxPosTbl[2][3][2] = { - { - { -80, 0 }, - { 0, 0 }, - { 80, 0 } - }, - { - { -52, 0 }, - { 0, 0 }, - { 52, 0 } - } + { + { -80, 0 }, + { 0, 0 }, + { 80, 0 } + }, + { + { -52, 0 }, + { 0, 0 }, + { 52, 0 } + } }; static void UpdateLast5Gfx(omObjData *object); void BoardLast5GfxInit(void) { - Last5GfxWork *work; - omObjData *object; - s32 turn_remain; - s32 lastF; - turn_remain = GWSystem.max_turn-GWSystem.turn; - if(turn_remain > 4 || turn_remain < 0) { - return; - } else { - s32 i; - turn_remain = 4-turn_remain; - object = omAddObjEx(boardObjMan, 0, 0, 0, -1, UpdateLast5Gfx); - last5GfxObj = object; - work = OM_GET_WORK_PTR(object, Last5GfxWork); - work->kill = 0; - work->stop_time = 0; - work->time = 0; - work->group = HuSprGrpCreate(3); - if((s32)(GWSystem.max_turn-GWSystem.turn) == 0) { - work->is_last = 1; - lastF = 1; - } else { - work->is_last = 0; - lastF = 0; - } - for(i=0; i<3; i++) { - s32 prio; - s32 spr_file; - - if(i == 1) { - prio = 1000; - } else { - prio = 1400; - } + Last5GfxWork *work; + omObjData *object; + s32 turn_remain; + s32 lastF; + turn_remain = GWSystem.max_turn-GWSystem.turn; + if(turn_remain > 4 || turn_remain < 0) { + return; + } else { + s32 i; + turn_remain = 4-turn_remain; + object = omAddObjEx(boardObjMan, 0, 0, 0, -1, UpdateLast5Gfx); + last5GfxObj = object; + work = OM_GET_WORK_PTR(object, Last5GfxWork); + work->kill = 0; + work->stop_time = 0; + work->time = 0; + work->group = HuSprGrpCreate(3); + if((s32)(GWSystem.max_turn-GWSystem.turn) == 0) { + work->is_last = 1; + lastF = 1; + } else { + work->is_last = 0; + lastF = 0; + } + for(i=0; i<3; i++) { + s32 prio; + s32 spr_file; + + if(i == 1) { + prio = 1000; + } else { + prio = 1400; + } #if !VERSION_JP - spr_file = last5GfxSprTbl[i]; - if(i == 2 && work->is_last && GWLanguageGet() != 0) { - spr_file = DATA_MAKE_NUM(DATADIR_BOARD, 98); - } - BoardSpriteCreate(spr_file, prio, NULL, &work->sprites[i]); + spr_file = last5GfxSprTbl[i]; + if(i == 2 && work->is_last && GWLanguageGet() != 0) { + spr_file = DATA_MAKE_NUM(DATADIR_BOARD, 98); + } + BoardSpriteCreate(spr_file, prio, NULL, &work->sprites[i]); #else - BoardSpriteCreate(last5GfxSprTbl[i], prio, NULL, &work->sprites[i]); + BoardSpriteCreate(last5GfxSprTbl[i], prio, NULL, &work->sprites[i]); #endif - HuSprGrpMemberSet(work->group, i, work->sprites[i]); - HuSprAttrSet(work->group, i, HUSPR_ATTR_LINEAR); - HuSprPosSet(work->group, i, last5GfxPosTbl[lastF][i][0], last5GfxPosTbl[lastF][i][1]); - } - if(!work->is_last) { - HuSprite *sprite = &HuSprData[HuSprGrpData[work->group].members[1]]; - HuSprBankSet(work->group, 1, 0); - sprite->frame = turn_remain; - } else { - HuSprAttrSet(work->group, 1, HUSPR_ATTR_DISPOFF); - } - HuSprAttrSet(work->group, 1, HUSPR_ATTR_NOANIM); - object->trans.x = 0.0f; - HuSprGrpTPLvlSet(work->group, object->trans.x); - HuSprGrpPosSet(work->group, HU_DISP_CENTERX, 72); - HuAudFXPlay(838); - work->time = 0; - } + HuSprGrpMemberSet(work->group, i, work->sprites[i]); + HuSprAttrSet(work->group, i, HUSPR_ATTR_LINEAR); + HuSprPosSet(work->group, i, last5GfxPosTbl[lastF][i][0], last5GfxPosTbl[lastF][i][1]); + } + if(!work->is_last) { + HuSprite *sprite = &HuSprData[HuSprGrpData[work->group].members[1]]; + HuSprBankSet(work->group, 1, 0); + sprite->frame = turn_remain; + } else { + HuSprAttrSet(work->group, 1, HUSPR_ATTR_DISPOFF); + } + HuSprAttrSet(work->group, 1, HUSPR_ATTR_NOANIM); + object->trans.x = 0.0f; + HuSprGrpTPLvlSet(work->group, object->trans.x); + HuSprGrpPosSet(work->group, HU_DISP_CENTERX, 72); + HuAudFXPlay(838); + work->time = 0; + } } static void UpdateLast5Gfx(omObjData *object) { - Last5GfxWork *work = OM_GET_WORK_PTR(object, Last5GfxWork); - if(work->kill || BoardIsKill()) { - HuSprGrpKill(work->group); - last5GfxObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - if(work->stop_time != 0) { - work->stop_time--; - return; - } - switch(work->state) { - case 0: - object->trans.x += 1.0f/30.0f; - if(object->trans.x > 1.0f) { - object->trans.x = 1.0f; - work->state = 1; - } - HuSprGrpTPLvlSet(work->group, object->trans.x); - break; - - case 1: - if(work->time >= 720) { - work->state = 2; - work->stop_time = 90; - if(work->is_last) { - HuSprGrpScaleSet(work->group, 1.0f, 1.0f); - } else { - HuSprScaleSet(work->group, 1, 1.0f, 1.0f); - } - } else { - s16 angle; - angle = work->time%180; - OSs16tof32(&angle, &object->trans.y); - object->trans.y = sin((object->trans.y*M_PI)/180.0)+0.5; - if(work->is_last) { - HuSprGrpScaleSet(work->group, object->trans.y, object->trans.y); - } else { - HuSprScaleSet(work->group, 1, object->trans.y, object->trans.y); - } - work->time += 9; - } - break; - - case 2: - object->trans.x -= 1.0f/30.0f; - if(object->trans.x < 0.0f) { - object->trans.x = 0.0f; - work->kill = 1; - } - HuSprGrpTPLvlSet(work->group, object->trans.x); - break; - } + Last5GfxWork *work = OM_GET_WORK_PTR(object, Last5GfxWork); + if(work->kill || BoardIsKill()) { + HuSprGrpKill(work->group); + last5GfxObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + if(work->stop_time != 0) { + work->stop_time--; + return; + } + switch(work->state) { + case 0: + object->trans.x += 1.0f/30.0f; + if(object->trans.x > 1.0f) { + object->trans.x = 1.0f; + work->state = 1; + } + HuSprGrpTPLvlSet(work->group, object->trans.x); + break; + + case 1: + if(work->time >= 720) { + work->state = 2; + work->stop_time = 90; + if(work->is_last) { + HuSprGrpScaleSet(work->group, 1.0f, 1.0f); + } else { + HuSprScaleSet(work->group, 1, 1.0f, 1.0f); + } + } else { + s16 angle; + angle = work->time%180; + OSs16tof32(&angle, &object->trans.y); + object->trans.y = sind(object->trans.y)+0.5; + if(work->is_last) { + HuSprGrpScaleSet(work->group, object->trans.y, object->trans.y); + } else { + HuSprScaleSet(work->group, 1, object->trans.y, object->trans.y); + } + work->time += 9; + } + break; + + case 2: + object->trans.x -= 1.0f/30.0f; + if(object->trans.x < 0.0f) { + object->trans.x = 0.0f; + work->kill = 1; + } + HuSprGrpTPLvlSet(work->group, object->trans.x); + break; + } } void BoardLast5GfxShowSet(s32 show) { - s32 i; - Last5GfxWork *work; - if(!last5GfxObj) { - return; - } - - work = OM_GET_WORK_PTR(last5GfxObj, Last5GfxWork); - for(i=0; i<3; i++) { - if(show) { - HuSprAttrReset(work->group, i, HUSPR_ATTR_DISPOFF); - } else { - HuSprAttrSet(work->group, i, HUSPR_ATTR_DISPOFF); - } - if(work->is_last) { - HuSprAttrSet(work->group, 1, HUSPR_ATTR_DISPOFF); - } - } + s32 i; + Last5GfxWork *work; + if(!last5GfxObj) { + return; + } + + work = OM_GET_WORK_PTR(last5GfxObj, Last5GfxWork); + for(i=0; i<3; i++) { + if(show) { + HuSprAttrReset(work->group, i, HUSPR_ATTR_DISPOFF); + } else { + HuSprAttrSet(work->group, i, HUSPR_ATTR_DISPOFF); + } + if(work->is_last) { + HuSprAttrSet(work->group, 1, HUSPR_ATTR_DISPOFF); + } + } } static s32 tauntActiveFXTbl[4] = { -1, -1, -1, -1 }; static s32 tauntFXTbl[8] = { - 294, - 358, - 422, - 486, - 550, - 614, - 678, - 742 + 294, + 358, + 422, + 486, + 550, + 614, + 678, + 742 }; typedef struct taunt_work { - u8 kill : 1; + u8 kill : 1; } TauntWork; static void TauntUpdate(omObjData *object); void BoardTauntInit(void) { - s32 i; - tauntObj = omAddObjEx(boardObjMan, 32258, 0, 0, -1, TauntUpdate); - for(i=0; i<4; i++) { - tauntActiveFXTbl[i] = -1; - } - _SetFlag(FLAG_ID_MAKE(1, 14)); + s32 i; + tauntObj = omAddObjEx(boardObjMan, 32258, 0, 0, -1, TauntUpdate); + for(i=0; i<4; i++) { + tauntActiveFXTbl[i] = -1; + } + _SetFlag(FLAG_ID_MAKE(1, 14)); } void BoardTauntKill(void) { - TauntWork *work; - if(!tauntObj) { - return; - } - work = OM_GET_WORK_PTR(tauntObj, TauntWork); - work->kill = 1; - _SetFlag(FLAG_ID_MAKE(1, 14)); + TauntWork *work; + if(!tauntObj) { + return; + } + work = OM_GET_WORK_PTR(tauntObj, TauntWork); + work->kill = 1; + _SetFlag(FLAG_ID_MAKE(1, 14)); } static void TauntUpdate(omObjData *object) { - s32 i; - s32 port; - s32 character; - TauntWork *work; - work = OM_GET_WORK_PTR(object, TauntWork); - if(work->kill || BoardIsKill()) { - for(i=0; i<4; i++) { - if(tauntActiveFXTbl[i] >= 0) { - HuAudFXStop(tauntActiveFXTbl[i]); - tauntActiveFXTbl[i] = -1; - } - } - tauntObj = NULL; - omDelObjEx(HuPrcCurrentGet(), object); - return; - } - for(i=0; i<4; i++) { - if(tauntActiveFXTbl[i] >= 0 && HuAudFXStatusGet(tauntActiveFXTbl[i]) == 0) { - tauntActiveFXTbl[i] = -1; - } - } - if(BoardPauseActiveCheck()) { - return; - } - if(_CheckFlag(FLAG_ID_MAKE(1, 14))) { - return; - } - if(WipeStatGet()) { - return; - } - if(GWSystem.player_curr == -1) { - return; - } - for(i=0; i<4; i++) { - if(i == GWSystem.player_curr || GWPlayer[i].com) { - continue; - } - port = GWPlayer[i].port & 0x3; - character = GWPlayer[i].character & 0x7; - if(tauntActiveFXTbl[port] >= 0) { - MSM_SEPARAM param; - float vol, pan; - vol = (64.0f*(HuPadSubStkX[port]/59.0f))+64.0f; - pan = 8191.0f*(HuPadSubStkY[port]/59.0f); - memset(¶m, 0, sizeof(MSM_SEPARAM)); - param.flag = MSM_SEPARAM_PITCH|MSM_SEPARAM_PAN; - OSf32tos8(&vol, ¶m.pan); - OSf32tos16(&pan, ¶m.pitch); - msmSeSetParam(tauntActiveFXTbl[port], ¶m); - } else { - if(HuPadBtnDown[port] & PAD_TRIGGER_L) { - tauntActiveFXTbl[port] = HuAudFXPlay(tauntFXTbl[character]); - } - } - } + s32 i; + s32 port; + s32 character; + TauntWork *work; + work = OM_GET_WORK_PTR(object, TauntWork); + if(work->kill || BoardIsKill()) { + for(i=0; i<4; i++) { + if(tauntActiveFXTbl[i] >= 0) { + HuAudFXStop(tauntActiveFXTbl[i]); + tauntActiveFXTbl[i] = -1; + } + } + tauntObj = NULL; + omDelObjEx(HuPrcCurrentGet(), object); + return; + } + for(i=0; i<4; i++) { + if(tauntActiveFXTbl[i] >= 0 && HuAudFXStatusGet(tauntActiveFXTbl[i]) == 0) { + tauntActiveFXTbl[i] = -1; + } + } + if(BoardPauseActiveCheck()) { + return; + } + if(_CheckFlag(FLAG_ID_MAKE(1, 14))) { + return; + } + if(WipeStatGet()) { + return; + } + if(GWSystem.player_curr == -1) { + return; + } + for(i=0; i<4; i++) { + if(i == GWSystem.player_curr || GWPlayer[i].com) { + continue; + } + port = GWPlayer[i].port & 0x3; + character = GWPlayer[i].character & 0x7; + if(tauntActiveFXTbl[port] >= 0) { + MSM_SEPARAM param; + float vol, pan; + vol = (64.0f*(HuPadSubStkX[port]/59.0f))+64.0f; + pan = 8191.0f*(HuPadSubStkY[port]/59.0f); + memset(¶m, 0, sizeof(MSM_SEPARAM)); + param.flag = MSM_SEPARAM_PITCH|MSM_SEPARAM_PAN; + OSf32tos8(&vol, ¶m.pan); + OSf32tos16(&pan, ¶m.pitch); + msmSeSetParam(tauntActiveFXTbl[port], ¶m); + } else { + if(HuPadBtnDown[port] & PAD_TRIGGER_L) { + tauntActiveFXTbl[port] = HuAudFXPlay(tauntFXTbl[character]); + } + } + } } s32 BoardDataDirReadAsync(s32 data_num) { - s32 status = HuDataDirReadAsync(data_num); - return status; + s32 status = HuDataDirReadAsync(data_num); + return status; } void BoardDataAsyncWait(s32 status) { - if(status == -1) { - return; - } - while(!HuDataGetAsyncStat(status)) { - HuPrcVSleep(); - } + if(status == -1) { + return; + } + while(!HuDataGetAsyncStat(status)) { + HuPrcVSleep(); + } } diff --git a/src/game/board/mg_setup.c b/src/game/board/mg_setup.c index 4613826f..ec5ac7a4 100644 --- a/src/game/board/mg_setup.c +++ b/src/game/board/mg_setup.c @@ -12,6 +12,8 @@ #include "game/board/tutorial.h" #include "game/board/window.h" +#include "ext_math.h" + // structs typedef struct structActiveMG { s16 unk_00; @@ -767,7 +769,7 @@ static void SeparateStatus(bitcopy* arg0, omObjData* arg1) { return; } OSu8tof32((u8*)&arg0->unk_03, &temp_f29); - temp_f30 = sin((temp_f29 * M_PI) / 180.0) * 4.0 + 1.0; + temp_f30 = sind(temp_f29) * 4.0 + 1.0; arg0->unk_03 += 6; if (arg0->unk_03 > 0x5A) { arg0->unk_03 = 0x5A; @@ -797,9 +799,9 @@ static void PopupVS(bitcopy* arg0, omObjData* arg1) { } OSs16tof32(&arg0->unk_04, &temp_f31); if (arg0->unk_04 < 0x5A) { - var_f30 = 2.0 * sin((M_PI * temp_f31) / 180.0); + var_f30 = 2.0 * sind(temp_f31); } else { - var_f30 = 1.0 + sin((M_PI * temp_f31) / 180.0); + var_f30 = 1.0 + sind(temp_f31); if (arg0->unk_04 >= 0xB4) { var_f30 = 1.0f; temp_r28 = (bitcopy*) mgSetupObj->work; @@ -958,7 +960,7 @@ static void UpdateLuckyValue(bitcopy* arg0, omObjData* arg1) { case 1: if (arg0->unk_03 < 0x5A) { OSu8tof32((u8*) &arg0->unk_03, &temp_f28); - temp_f29 = sin((M_PI * temp_f28) / 180.0); + temp_f29 = sind(temp_f28); HuSprScaleSet(temp_r27->unk_00[0], 8, temp_f29, temp_f29); HuSprScaleSet(temp_r27->unk_00[0], 9, temp_f29, temp_f29); arg0->unk_03 += 2; @@ -1006,7 +1008,7 @@ static void UpdateLuckyValue(bitcopy* arg0, omObjData* arg1) { return; } temp_f28 = (arg0->unk_04 % 360); - temp_f29 = (1.0 + (0.5 * sin((M_PI * temp_f28) / 180.0))); + temp_f29 = (1.0 + (0.5 * sind(temp_f28))); HuSprScaleSet(temp_r27->unk_00[0], 8, temp_f29, temp_f29); HuSprScaleSet(temp_r27->unk_00[0], 9, temp_f29, temp_f29); break; @@ -1075,7 +1077,7 @@ static void UpdateMGList(bitcopy* arg0, omObjData* arg1) { case 1: if (arg0->unk_03 < 0x5A) { OSu8tof32((u8*) &arg0->unk_03, &var_f26); - temp_f27 = sin((M_PI * var_f26) / 180.0); + temp_f27 = sind(var_f26); arg0->unk_03 += 3; HuSprScaleSet(temp_r24->unk_00[0], temp_r22, temp_f27, temp_f27); return; @@ -1166,7 +1168,7 @@ static void UpdateMGList(bitcopy* arg0, omObjData* arg1) { case 5: if (arg0->unk_03 < 0x5A) { OSu8tof32((u8*) &arg0->unk_03, &var_f26); - temp_f27 = (1.0 + (2.0 * sin((M_PI * var_f26) / 180.0))); + temp_f27 = (1.0 + (2.0 * sind(var_f26))); arg0->unk_03 += 4; if (arg0->unk_03 > 0x5A) { arg0->unk_03 = 0x5A; diff --git a/src/game/board/mushroom.c b/src/game/board/mushroom.c index 328fc1fe..1b0c57b6 100644 --- a/src/game/board/mushroom.c +++ b/src/game/board/mushroom.c @@ -300,7 +300,7 @@ static void ExitBox(ItemGiveWork2* arg0, omObjData* arg1) { } arg1->trans.y = spC.y + (700.0f * cosd(arg0->unk_08)); - arg1->rot.y = sin((M_PI * temp) / 180.0); + arg1->rot.y = sind(temp); arg0->unk_08 -= 1.5f; arg0->unk_06 -= 30; } diff --git a/src/game/board/start.c b/src/game/board/start.c index 0cb9e8bc..61b854db 100755 --- a/src/game/board/start.c +++ b/src/game/board/start.c @@ -20,6 +20,7 @@ #include "game/board/window.h" #include "dolphin.h" +#include "ext_math.h" #include "string.h" typedef struct { @@ -238,7 +239,7 @@ static void ShowLogo(void) { HuSprGrpPosSet(logoSprGrp, 288.0f, 240.0f); for (spA = 0; spA < 90; spA += 4) { OSs16tof32(&spA, &var_f27); - temp_f28 = sin(var_f27 * M_PI / 180.0); + temp_f28 = sind(var_f27); HuSprScaleSet(logoSprGrp, 0, temp_f28, temp_f28); HuPrcVSleep(); } @@ -246,7 +247,7 @@ static void ShowLogo(void) { for (spA = 0; spA < 540; spA += 4) { sp8 = spA % 180; OSs16tof32(&sp8, &var_f27); - temp_f28 = 1.0 + 0.699999988079071 * sin(var_f27 * M_PI / 180.0); + temp_f28 = 1.0 + 0.7f * sind(var_f27); HuSprScaleSet(logoSprGrp, 0, temp_f28, temp_f28); HuPrcVSleep(); } @@ -254,7 +255,7 @@ static void ShowLogo(void) { HuPrcSleep(0x78); for (spA = 0; spA < 90; spA += 4) { OSs16tof32(&spA, &var_f27); - temp_f28 = cos(var_f27 * M_PI / 180.0); + temp_f28 = cosd(var_f27); HuSprScaleSet(logoSprGrp, 0, temp_f28, temp_f28); HuPrcVSleep(); } @@ -586,7 +587,7 @@ static void PlayerDiceNumHide(omObjData *arg0, PlayerStartWork *arg1) { arg1->unk02 = 2; } OSs16tof32(&arg1->unk06, &var_f28); - arg0->rot.x = 1.0 + 1.2999999523162842 * sin(var_f28 * M_PI / 180.0); + arg0->rot.x = 1.0 + 1.3f * sind(var_f28); break; case 2: arg1->unk06 += 9; @@ -595,8 +596,8 @@ static void PlayerDiceNumHide(omObjData *arg0, PlayerStartWork *arg1) { arg1->unk02 = 3; } OSs16tof32(&arg1->unk06, &var_f28); - arg0->rot.x = cos(0.5f * var_f28 * M_PI / 180.0); - arg0->rot.y = 1.0 + 1.2999999523162842 * sin(var_f28 * M_PI / 180.0); + arg0->rot.x = cosd(0.5f * var_f28); + arg0->rot.y = 1.0 + 1.3f * sind(var_f28); break; case 3: BoardModelVisibilitySet(arg1->unk0A, 0); diff --git a/src/game/board/warp.c b/src/game/board/warp.c index ddc92315..c25a8511 100644 --- a/src/game/board/warp.c +++ b/src/game/board/warp.c @@ -12,7 +12,7 @@ #include "game/objsub.h" #include "game/disp.h" -#include "math.h" +#include "ext_math.h" static void WarpInit(s32); static void WarpLaunch(s32); @@ -234,7 +234,7 @@ static void WarpImpact(s32 player) { speed = 4.0f; for (angle = 0.0f, temp = angle; angle < 180.0f; angle += speed) { - temp_f30 = sin((M_PI * angle) / 180.0); + temp_f30 = sind(angle); BoardModelScaleSet(warpImpactMdl, 0.5f + temp_f30, 0.5f + temp_f30, 0.5f + temp_f30); HuPrcVSleep(); } @@ -245,4 +245,4 @@ static void WarpImpact(s32 player) { BoardPlayerIdleSet(warpImpactPlayer[i]); } warpState = 6; -} \ No newline at end of file +} diff --git a/src/game/hsfex.c b/src/game/hsfex.c index 63f3745e..490e19e3 100644 --- a/src/game/hsfex.c +++ b/src/game/hsfex.c @@ -3,7 +3,7 @@ #include "game/hsfmotion.h" #include "game/disp.h" -#include "math.h" +#include "ext_math.h" #define DISP_HALF_W (HU_DISP_WIDTH/2.0f) #define DISP_HALF_H (HU_DISP_HEIGHT/2.0f) @@ -129,10 +129,10 @@ void CamMotionEx(s16 arg0, s16 arg1, Vec *arg2, Vec *arg3, Vec *arg4, float arg5 var_f30 = var_f31; break; case 1: - var_f30 = arg5 * sin(90.0f * (var_f31 / arg5) * M_PI / 180.0); + var_f30 = arg5 * sind(90.0f * (var_f31 / arg5)); break; case 2: - var_f30 = arg5 * (1.0 - cos(90.0f * (var_f31 / arg5) * M_PI / 180.0)); + var_f30 = arg5 * (1.0 - cosd(90.0f * (var_f31 / arg5))); break; } var_r31 = temp_r21; @@ -346,9 +346,9 @@ static void SetObjCamMotion(s16 arg0, HsfTrack *arg1, float arg2, HsfexStruct02 case 14: VECSubtract(&arg3->unk08, &arg3->unk20, &spC); VECNormalize(&spC, &spC); - sp18.x = spC.x * spC.y * (1.0 - cos(M_PI * arg2 / 180.0)) - spC.z * sin(M_PI * arg2 / 180.0); - sp18.y = spC.y * spC.y + (1.0f - spC.y * spC.y) * cos(M_PI * arg2 / 180.0); - sp18.z = spC.y * spC.z * (1.0 - cos(M_PI * arg2 / 180.0)) + spC.x * sin(M_PI * arg2 / 180.0); + sp18.x = spC.x * spC.y * (1.0 - cosd(arg2)) - spC.z * sind(arg2); + sp18.y = spC.y * spC.y + (1.0f - spC.y * spC.y) * cosd(arg2); + sp18.z = spC.y * spC.z * (1.0 - cosd(arg2)) + spC.x * sind(arg2); VECNormalize(&sp18, &arg3->unk14); break; } @@ -432,7 +432,7 @@ void Hu3D2Dto3D(Vec *arg0, s16 arg1, Vec *arg2) { } } temp_r31 = &Hu3DCamera[i]; - temp_f30 = sin((temp_r31->fov / 2) * M_PI / 180.0) / cos((temp_r31->fov / 2) * M_PI / 180.0); + temp_f30 = sind(temp_r31->fov / 2) / cosd(temp_r31->fov / 2); temp_f31 = temp_f30 * arg0->z * 2.0f; temp_f29 = temp_f31 * HU_DISP_ASPECT; temp_f28 = arg0->x / HU_DISP_WIDTH; @@ -461,8 +461,8 @@ void Hu3D3Dto2D(Vec *arg0, s16 arg1, Vec *arg2) { temp_r31 = &Hu3DCamera[i]; C_MTXLookAt(sp1C, &temp_r31->pos, &temp_r31->up, &temp_r31->target); PSMTXMultVec(sp1C, arg0, &sp10); - temp_f31 = (sin((temp_r31->fov / 2) * M_PI / 180.0) / cos((temp_r31->fov / 2) * M_PI / 180.0)) * sp10.z * HU_DISP_ASPECT; - temp_f30 = (sin((temp_r31->fov / 2) * M_PI / 180.0) / cos((temp_r31->fov / 2) * M_PI / 180.0)) * sp10.z; + temp_f31 = (sind(temp_r31->fov / 2) / cosd(temp_r31->fov / 2)) * sp10.z * HU_DISP_ASPECT; + temp_f30 = (sind(temp_r31->fov / 2) / cosd(temp_r31->fov / 2)) * sp10.z; arg2->x = DISP_HALF_W + sp10.x * (DISP_HALF_W / -temp_f31); arg2->y = DISP_HALF_H + sp10.y * (DISP_HALF_H / temp_f30); arg2->z = 0.0f; diff --git a/src/game/objsysobj.c b/src/game/objsysobj.c index 3e6b56f3..210bdbfd 100644 --- a/src/game/objsysobj.c +++ b/src/game/objsysobj.c @@ -6,7 +6,7 @@ #include "game/sprite.h" #include "game/hsfman.h" #include "game/audio.h" -#include "math.h" +#include "ext_math.h" Vec CRot; Vec Center; @@ -23,15 +23,15 @@ void omOutView(omObjData *object) float rot_x = CRot.x; float rot_y = CRot.y; float rot_z = CRot.z; - pos.x = (sin(M_PI*rot_y/180.0)*cos(M_PI*rot_x/180.0)*CZoom)+Center.x; - pos.y = (-sin(M_PI*rot_x/180.0)*CZoom)+Center.y; - pos.z = (cos(M_PI*rot_y/180.0)*cos(M_PI*rot_x/180.0)*CZoom)+Center.z; + pos.x = (sind(rot_y)*cosd(rot_x)*CZoom)+Center.x; + pos.y = (-sind(rot_x)*CZoom)+Center.y; + pos.z = (cosd(rot_y)*cosd(rot_x)*CZoom)+Center.z; target.x = Center.x; target.y = Center.y; target.z = Center.z; - up.x = sin(M_PI*rot_y/180.0)*sin(M_PI*rot_x/180.0); - up.y = cos(M_PI*rot_x/180.0); - up.z = cos(M_PI*rot_y/180.0)*sin(M_PI*rot_x/180.0); + up.x = sind(rot_y)*sind(rot_x); + up.y = cosd(rot_x); + up.z = cosd(rot_y)*sind(rot_x); Hu3DCameraPosSet(1, pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z); } @@ -43,15 +43,15 @@ void omOutViewMulti(omObjData *object) float rot_x = CRotM[i].x; float rot_y = CRotM[i].y; float rot_z = CRotM[i].z; - pos.x = (sin(M_PI*rot_y/180.0)*cos(M_PI*rot_x/180.0)*CZoomM[i])+CenterM[i].x; - pos.y = (-sin(M_PI*rot_x/180.0)*CZoomM[i])+CenterM[i].y; - pos.z = (cos(M_PI*rot_y/180.0)*cos(M_PI*rot_x/180.0)*CZoomM[i])+CenterM[i].z; + pos.x = (sind(rot_y)*cosd(rot_x)*CZoomM[i])+CenterM[i].x; + pos.y = (-sind(rot_x)*CZoomM[i])+CenterM[i].y; + pos.z = (cosd(rot_y)*cosd(rot_x)*CZoomM[i])+CenterM[i].z; target.x = CenterM[i].x; target.y = CenterM[i].y; target.z = CenterM[i].z; - up.x = sin(M_PI*rot_y/180.0)*sin(M_PI*rot_x/180.0); - up.y = cos(M_PI*rot_x/180.0); - up.z = cos(M_PI*rot_y/180.0)*sin(M_PI*rot_x/180.0); + up.x = sind(rot_y)*sind(rot_x); + up.y = cosd(rot_x); + up.z = cosd(rot_y)*sind(rot_x); Hu3DCameraPosSetV((1 << i), &pos, &up, &target); } } @@ -145,4 +145,4 @@ void omSysPauseCtrl(s16 flag) } else { omDBGSysKeyObj->work[0] |= 0x100; } -} \ No newline at end of file +} From 98a95407ffb4ccd48eed15f8d773ba430a9d1398 Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Fri, 10 Jan 2025 18:22:38 -0600 Subject: [PATCH 112/178] mstory2 board_miss (#520) * Match first mstory2 TU * Complete mstory2 board_clear and board_entrance * Complete mstory2 board miss --- config/GMPE01_00/rels/mstory2Dll/splits.txt | 4 +- config/GMPE01_01/rels/mstory2Dll/splits.txt | 4 +- configure.py | 2 +- src/REL/mstory2Dll/board_miss.c | 855 ++++++++++++++++++++ 4 files changed, 860 insertions(+), 5 deletions(-) create mode 100644 src/REL/mstory2Dll/board_miss.c diff --git a/config/GMPE01_00/rels/mstory2Dll/splits.txt b/config/GMPE01_00/rels/mstory2Dll/splits.txt index 43465253..080a347f 100644 --- a/config/GMPE01_00/rels/mstory2Dll/splits.txt +++ b/config/GMPE01_00/rels/mstory2Dll/splits.txt @@ -27,13 +27,13 @@ REL/mstory2Dll/board_clear.c: REL/mstory2Dll/board_miss.c: .text start:0x0000E570 end:0x000123C8 .rodata start:0x00000248 end:0x00000310 - .data start:0x00000698 end:0x00000D50 + .data start:0x00000698 end:0x00000850 .bss start:0x000004E0 end:0x00000790 REL/mstory2Dll/mg_clear.c: .text start:0x000123C8 end:0x00016060 .rodata start:0x00000310 end:0x000003D0 - .data start:0x00000D50 end:0x00000DB8 + .data start:0x00000850 end:0x00000DB8 .bss start:0x00000790 end:0x00000968 REL/mstory2Dll/mg_miss.c: diff --git a/config/GMPE01_01/rels/mstory2Dll/splits.txt b/config/GMPE01_01/rels/mstory2Dll/splits.txt index 3e202379..2d36e6e7 100644 --- a/config/GMPE01_01/rels/mstory2Dll/splits.txt +++ b/config/GMPE01_01/rels/mstory2Dll/splits.txt @@ -27,13 +27,13 @@ REL/mstory2Dll/board_clear.c: REL/mstory2Dll/board_miss.c: .text start:0x0000E570 end:0x000123C8 .rodata start:0x00000248 end:0x00000310 - .data start:0x00000698 end:0x00000D50 + .data start:0x00000698 end:0x00000850 .bss start:0x000004E0 end:0x00000790 REL/mstory2Dll/mg_clear.c: .text start:0x000123C8 end:0x00016060 .rodata start:0x00000310 end:0x000003D0 - .data start:0x00000D50 end:0x00000DB8 + .data start:0x00000850 end:0x00000DB8 .bss start:0x00000790 end:0x00000968 REL/mstory2Dll/mg_miss.c: diff --git a/configure.py b/configure.py index 212bef75..dc0c82ab 100644 --- a/configure.py +++ b/configure.py @@ -1373,7 +1373,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/main.c"), Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_entrance.c"), Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_clear.c"), - Object(NonMatching, "REL/mstory2Dll/board_miss.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_miss.c"), Object(NonMatching, "REL/mstory2Dll/mg_clear.c"), Object(NonMatching, "REL/mstory2Dll/mg_miss.c"), Object(NonMatching, "REL/mstory2Dll/ending.c"), diff --git a/src/REL/mstory2Dll/board_miss.c b/src/REL/mstory2Dll/board_miss.c new file mode 100644 index 00000000..45b05479 --- /dev/null +++ b/src/REL/mstory2Dll/board_miss.c @@ -0,0 +1,855 @@ +#include "REL/mstory2Dll.h" +#include "game/armem.h" +#include "game/audio.h" +#include "game/board/main.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "game/pad.h" +#include "game/objsub.h" +#include "game/board/main.h" + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ char unk18[0x18]; + /* 0x030 */ StructFn357C unk30[4]; + /* 0x100 */ float unk100; +} StructBss688; // Size 0x104 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ char unk0C[4]; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; +} StructBss4E8; // Size 0x18 + +StructBss688 lbl_1_bss_688; +StructBss16C lbl_1_bss_660; +StructBss16C lbl_1_bss_638; +StructBss16C lbl_1_bss_610; +StructBss16C lbl_1_bss_5E8; +StructBss16C lbl_1_bss_548[4]; +StructBss4E8 lbl_1_bss_4E8[4]; +BOOL lbl_1_bss_4E4; +Process *lbl_1_bss_4E0; + +s32 lbl_1_data_698[7] = { + DATADIR_W01, + DATADIR_W02, + DATADIR_W03, + DATADIR_W04, + DATADIR_W05, + DATADIR_W06, + DATADIR_W10, +}; + +s32 lbl_1_data_6B4[8] = { + DATADIR_MARIOMDL1, + DATADIR_LUIGIMDL1, + DATADIR_PEACHMDL1, + DATADIR_YOSHIMDL1, + DATADIR_WARIOMDL1, + DATADIR_DONKEYMDL1, + DATADIR_DAISYMDL1, + DATADIR_WALUIGIMDL1 +}; + +void fn_1_FDFC(void); +void fn_1_10194(void); +void fn_1_106B0(omObjData* arg0, StructBss16C* arg1); +void fn_1_1094C(void); +void fn_1_10DF4(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_10EA0(omObjData* arg0, StructBss16C* arg1); +void fn_1_1112C(void); +void fn_1_11418(int arg0); +void fn_1_11934(omObjData* arg0, StructBss16C* arg1); +void fn_1_11A98(omObjData* arg0, StructBss16C* arg1); +void fn_1_11BB0(void); +void fn_1_11FD0(void); +void fn_1_1205C(void); +void fn_1_1218C(void); + +void fn_1_E570(void) +{ + int statId = HuDataDirReadAsync(DATADIR_BOARD); + if(statId != -1) { + while(!HuDataGetAsyncStat(statId)) { + HuPrcVSleep(); + } + } + HuAR_MRAMtoARAM(DATADIR_BOARD); + while(HuARDMACheck()) { + HuPrcVSleep(); + } + HuDataDirClose(DATADIR_BOARD); + statId = HuDataDirReadAsync(lbl_1_data_698[GWSystem.board]); + if(statId != -1) { + while(!HuDataGetAsyncStat(statId)) { + HuPrcVSleep(); + } + } + lbl_1_bss_4E4 = TRUE; + HuPrcEnd(); + while(1) { + HuPrcVSleep(); + } +} + +void fn_1_E638(void) +{ + int i, j; + lbl_1_bss_4E8[0].unk00 = 0; + lbl_1_bss_4E8[0].unk04 = 0; + lbl_1_bss_4E8[0].unk10 = lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk10; + lbl_1_bss_4E8[0].unk14 = lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk14; + lbl_1_bss_4E8[0].unk08 = 0; + for(i=1; i<4; i++) { + lbl_1_bss_4E8[i].unk10 = -1; + lbl_1_bss_4E8[i].unk14 = i; + lbl_1_bss_4E8[i].unk08 = 1; + } + for(i=1; i<4; i++) { + do { + lbl_1_bss_4E8[i].unk10 = rand8()%8; + for(j=0; j<4; j++) { + if(i != j && lbl_1_bss_4E8[j].unk10 != -1 && lbl_1_bss_4E8[i].unk10 == lbl_1_bss_4E8[j].unk10) { + break; + } + } + } while(j != 4); + } + for(i=0; i<4; i++) { + GWPlayerCfg[i].character = lbl_1_bss_4E8[i].unk10; + GWPlayerCfg[i].pad_idx = lbl_1_bss_4E8[i].unk14; + GWPlayerCfg[i].group = 0; + GWPlayerCfg[i].iscom = lbl_1_bss_4E8[i].unk08; + } + BoardSaveInit(GWSystem.board); + CharKill(-1); + HuDataDirClose(DATADIR_MSTORY2); + HuPrcChildCreate(fn_1_E570, 100, 12288, 0, lbl_1_bss_4E0); +} + +void fn_1_E8EC(void) +{ + int ovlTbl[7] = { + OVL_W01, + OVL_W02, + OVL_W03, + OVL_W04, + OVL_W05, + OVL_W06, + OVL_W10 + }; + omOvlHisData *his; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (WipeStatGet()) { + fn_1_BC8(); + } + CharModelKill(-1); + MGSeqKillAll(); + his = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY3, 0, his->stat); + do { + fn_1_BC8(); + } while(lbl_1_bss_4E4 != 1); + CharARAMOpen(GWPlayerCfg[0].character); + CharARAMOpen(GWPlayerCfg[1].character); + CharARAMOpen(GWPlayerCfg[2].character); + CharARAMOpen(GWPlayerCfg[3].character); + HuAudSeqAllFadeOut(1000); + HuAudSStreamAllFadeOut(1000); + omOvlCallEx(ovlTbl[GWSystem.board], 1, 0, 0); + while(1) { + fn_1_BC8(); + } +} + +void fn_1_EA2C(Process* arg0, s32 arg1) +{ + int i; + lbl_1_bss_4E0 = arg0; + lbl_1_bss_688.unk0C = arg1; + fn_1_C30(); + fn_1_3668(255); + fn_1_2828(lbl_1_bss_4E0, fn_1_11FD0); + fn_1_3754(); + fn_1_11418(arg1); + HuPrcChildCreate(fn_1_10194, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_1094C, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_1112C, 100, 8192, 0, HuPrcCurrentGet()); + for(i=0; i<4; i++) { + HuPrcChildCreate(fn_1_11BB0, 100, 8192, 0, HuPrcCurrentGet()); + } + HuPrcChildCreate(fn_1_FDFC, 100, 8192, 0, HuPrcCurrentGet()); +} + +void fn_1_EB60(omObjData *object) +{ + if(object->work[2]) { + object->work[2]--; + return; + } + if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + fn_1_1DFC(object, 1, object->work[1], 15, 1); + object->work[0] = object->work[1] = object->work[2] = 0; + } +} + +void fn_1_EBEC(void) +{ + int posX = 16; + int posY = 40; + GXColor winColor = { 0, 0, 128, 128 }; + int i; + while(1) { + fn_1_BC8(); + printWin(posX, posY, 220, 160, &winColor); + if(lbl_1_bss_660.unk04 == NULL) { + print8(posX, posY, 1, "PROC_MAIN -> FALSE"); + } else { + print8(posX, posY, 1, "PROC_MAIN -> TRUE"); + } + if(lbl_1_bss_638.unk04 == NULL) { + print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); + } else { + print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + } + if(lbl_1_bss_610.unk04 == NULL) { + print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); + } else { + print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + } + if(lbl_1_bss_5E8.unk04 == NULL) { + print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); + } else { + print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + } + for(i=0; i<4; i++) { + if(lbl_1_bss_548[i].unk04 == NULL) { + print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> FALSE", i); + } else { + print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> TRUE", i); + } + } + print8(posX, posY+90, 1, "P:%d W:%d", lbl_1_bss_688.unk00, lbl_1_bss_688.unk0C); + print8(posX, posY+110, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for(i=0; i<4; i++) { + print8(posX, posY+120+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_688.unk30[i].unk00, lbl_1_bss_688.unk30[i].unk04, lbl_1_bss_688.unk30[i].unk08, lbl_1_bss_688.unk30[i].unk0C, lbl_1_bss_688.unk30[i].unk14, lbl_1_bss_688.unk30[i].unk10); + } + } +} + +void fn_1_EFCC(void) +{ + lbl_1_bss_78[0] = HuAudSeqPlay(52); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + fn_1_BE8(60); +} + +void fn_1_F028(void) +{ + int i; + for(i=0; i<4; i++) { + lbl_1_bss_548[i].unk04 = (void *)fn_1_11934; + } + do { + fn_1_BC8(); + for(i=0; i<4; i++) { + if(lbl_1_bss_548[i].unk04 != NULL) { + break; + } + } + } while(i != 4); + lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 = (void *)fn_1_11A98; + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_1205C); + do { + fn_1_BC8(); + } while(lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 != NULL); + do { + fn_1_BC8(); + } while(lbl_1_bss_5E8.unk04 != NULL); + fn_1_BE8(30); + if(0) { + //Dummy code to stop this function from inlining + do { + fn_1_BC8(); + for(i=0; i<4; i++) { + if(lbl_1_bss_548[i].unk04 != NULL) { + break; + } + } + } while(i != 4); + lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 = (void *)fn_1_11A98; + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_1205C); + do { + fn_1_BC8(); + } while(lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 != NULL); + do { + fn_1_BC8(); + } while(lbl_1_bss_5E8.unk04 != NULL); + fn_1_BE8(30); + } +} + +void fn_1_F150(void) +{ + lbl_1_bss_688.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_688.unk0C); + HuAudFXPlay(lbl_1_data_0[5][0]); + fn_1_10DF4(3, -1, 15, 1, 0); + fn_1_1D18(lbl_1_bss_688.unk04, 0x1F0009); + fn_1_1AFC(lbl_1_bss_688.unk04, -1); + fn_1_1D18(lbl_1_bss_688.unk04, 0x250004); + fn_1_10DF4(1, -1, 15, 1, 0); + fn_1_1A94(lbl_1_bss_688.unk04); +} + +int fn_1_F22C(void) +{ + int result = 0; + fn_1_1D18(lbl_1_bss_688.unk04, 0x1E0021); + fn_1_1AFC(lbl_1_bss_688.unk04, 5); + lbl_1_bss_688.unk08 = fn_1_7064(0x1E0035, lbl_1_bss_688.unk0C); + fn_1_1D18(lbl_1_bss_688.unk08, 0x1E0035); + result = fn_1_1C64(lbl_1_bss_688.unk08); + fn_1_1D18(lbl_1_bss_688.unk08, 0x250004); + fn_1_71DC(lbl_1_bss_688.unk08); + return result; +} + +int fn_1_F2FC(void) +{ + int result = 0; + fn_1_1D18(lbl_1_bss_688.unk04, 0x1E0005); + fn_1_1AFC(lbl_1_bss_688.unk04, 5); + lbl_1_bss_688.unk08 = fn_1_7064(0x1E0035, lbl_1_bss_688.unk0C); + fn_1_1D18(lbl_1_bss_688.unk08, 0x1E0035); + result = fn_1_1BA8(lbl_1_bss_688.unk08, 1); + fn_1_1D18(lbl_1_bss_688.unk08, 0x250004); + fn_1_71DC(lbl_1_bss_688.unk08); + return result; +} + +void fn_1_F3D0(void) +{ + lbl_1_bss_5E8.unk04 = (void *)fn_1_10EA0; + lbl_1_bss_688.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_688.unk0C); + HuAudFXPlay(lbl_1_data_0[5][0]); + fn_1_1D18(lbl_1_bss_688.unk04, 0x1F000A); + fn_1_1AFC(lbl_1_bss_688.unk04, -1); + fn_1_1D18(lbl_1_bss_688.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_688.unk04); + HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); + do { + fn_1_BC8(); + } while(lbl_1_bss_5E8.unk04 != NULL); + lbl_1_bss_610.unk04 = (void *)fn_1_106B0; + do { + fn_1_BC8(); + } while(lbl_1_bss_610.unk04 != NULL); + fn_1_7384(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->model[1], lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk10, 1, 20, 1); + lbl_1_bss_78[1] = HuAudSeqPlay(6); + fn_1_BE8(30); + fn_1_1DFC(lbl_1_bss_610.unk00, 1, 4, 30, 0); + fn_1_BE8(30); + lbl_1_bss_688.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_688.unk0C); + HuAudFXPlay(lbl_1_data_0[6][0]); + HuWinAttrSet(lbl_1_bss_688.unk04, 0x400); + HuWinMesSet(lbl_1_bss_688.unk04, 0x1F000B); + fn_1_2264(lbl_1_bss_610.unk00, 1, 4, 10); + fn_1_1DFC(lbl_1_bss_610.unk00, 1, 1, 10, 1); + HuWinAttrReset(lbl_1_bss_688.unk04, 0x400); + HuWinKeyWaitEntry(lbl_1_bss_688.unk04); + fn_1_BC8(); + fn_1_1AFC(lbl_1_bss_688.unk04, -1); + fn_1_1D18(lbl_1_bss_688.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_688.unk04); + fn_1_BE8(60); + fn_1_E638(); + Hu3DModelAttrReset(lbl_1_bss_638.unk00->model[5], 1); + Hu3DModelAttrReset(lbl_1_bss_638.unk00->model[6], 1); + fn_1_1DFC(lbl_1_bss_610.unk00, 1, 4, 15, 1); + fn_1_1DFC(lbl_1_bss_638.unk00, 2, 3, 0, 0); + fn_1_BE8(45); + HuAudFXPlay(lbl_1_data_0[6][0]); + fn_1_BE8(15); + fn_1_1DFC(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00, 1, 5, 0, 0); + fn_1_BC8(); + fn_1_7384(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->model[1], lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk10, 1, 10, 0); + fn_1_2264(lbl_1_bss_638.unk00, 2, 3, 0); + HuAudSeqFadeOut(lbl_1_bss_78[1], 3000); + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_1218C); + fn_1_BE8(150); +} + +void fn_1_F838(void) +{ + +} + +void fn_1_F83C(void) +{ + fn_1_BE8(60); + HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + CharModelKill(-1); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); +} + +void fn_1_F8B4(omObjData* arg0, StructBss16C* arg1) +{ + int mode = 0; + int i; + fn_1_EFCC(); + fn_1_F028(); + fn_1_F150(); + lbl_1_bss_688.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_688.unk0C); + while(1) { + fn_1_BC8(); + if(fn_1_F22C()) { + mode = 0; + break; + } else if(fn_1_F2FC()) { + mode = 1; + break; + } + } + + fn_1_1A94(lbl_1_bss_688.unk04); + for(i=0; i<4; i++) { + if(lbl_1_bss_688.unk30[i].unk00 != lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk00) { + Hu3DModelAttrSet(lbl_1_bss_548[i].unk00->model[1], 1); + } + Hu3DModelAttrSet(lbl_1_bss_548[i].unk00->model[2], 1); + } + switch(mode) { + case 0: + fn_1_F3D0(); + break; + case 1: + break; + } + switch(mode) { + case 0: + fn_1_E8EC(); + break; + + case 1: + fn_1_F83C(); + break; + } + arg1->unk04 = NULL; +} + +void fn_1_FDFC(void) +{ + omObjData *obj; + lbl_1_bss_660.unk00 = obj = omAddObjEx(lbl_1_bss_4E0, 256, 16, 16, -1, NULL); + lbl_1_bss_660.unk04 = (void *)fn_1_F8B4; + lbl_1_bss_660.unk00->data = &lbl_1_bss_660; + while(1) { + fn_1_BC8(); + if(lbl_1_bss_660.unk04 != NULL) { + lbl_1_bss_660.unk04(obj, &lbl_1_bss_660); + } + } +} + +void fn_1_FEB0(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660052); + object->motion[1] = Hu3DMotionIDGet(object->model[1]); + Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); + fn_1_1DFC(object, 1, 1, 0, 1); + object->model[2] = Hu3DModelCreateFile(0x660053); + object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); + object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + fn_1_1DFC(object, 2, 2, 0, 2); + object->model[5] = Hu3DModelCreateFile(0x660057); + object->motion[5] = Hu3DMotionIDGet(object->model[5]); + Hu3DModelPosSet(object->model[5], 0, 80, 460); + Hu3DModelAttrSet(object->model[5], 1); + Hu3DModelShadowSet(object->model[5]); + fn_1_1DFC(object, 5, 5, 0, 2); + object->model[6] = Hu3DModelCreateFile(0x660058); + object->motion[6] = Hu3DMotionIDGet(object->model[6]); + Hu3DModelHookSet(object->model[5], "koopabox_fix-effect_fook2", object->model[6]); + Hu3DModelAttrSet(object->model[6], 1); + fn_1_1DFC(object, 6, 6, 0, 2); +} + +void fn_1_100D8(omObjData* arg0, StructBss16C* arg1) +{ + Hu3DData[arg0->model[5]].pos.y = fn_1_B08(80, 90, arg1->unk08++, 360); + if(arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_10194(void) +{ + omObjData *obj; + lbl_1_bss_638.unk00 = obj = omAddObjEx(lbl_1_bss_4E0, 256, 16, 16, -1, NULL); + lbl_1_bss_638.unk04 = (void *)fn_1_100D8; + lbl_1_bss_638.unk00->data = &lbl_1_bss_638; + fn_1_FEB0(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_638.unk04 != NULL) { + lbl_1_bss_638.unk04(obj, &lbl_1_bss_638); + } + } +} + +void fn_1_10448(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660062); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660065); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660069); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660066); + Hu3DModelPosSet(object->model[1], -180, 0, 800); + Hu3DModelRotSet(object->model[1], 0, 60, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelAttrSet(object->model[1], 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); +} + +void fn_1_10604(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_610.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_610.unk00->work[0] = arg4; + lbl_1_bss_610.unk00->work[1] = arg1; + lbl_1_bss_610.unk00->work[2] = arg2+1; +} + +void fn_1_106B0(omObjData* arg0, StructBss16C* arg1) +{ + int i = 0; + float speed = 50; + + HuAudFXPlay(153); + fn_1_10604(2, 1, 0, 0, 1); + fn_1_BE8(5); + Hu3DMotionTimeSet(lbl_1_bss_610.unk00->model[1], 100); + fn_1_BC8(); + Hu3DModelAttrReset(arg0->model[1], 1); + while(1) { + fn_1_BC8(); + if(Hu3DMotionTimeGet(lbl_1_bss_610.unk00->model[1]) >= 137) { + break; + } + } + HuAudFXPlay(156); + omVibrate(lbl_1_bss_688.unk0C, 45, 12, 0); + fn_1_67D8(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00, 6, 1, 5, 0); + for(i=0; i<60; i++) { + float posY; + fn_1_BC8(); + posY = fn_1_B08(0, speed, i%15, 15); + speed = fn_1_88C(speed, 0, 30); + lbl_1_bss_688.unk100 = fn_1_88C(lbl_1_bss_688.unk100, posY, 5); + } + lbl_1_bss_688.unk100 = 0; + arg1->unk04 = NULL; +} + +void fn_1_1094C(void) +{ + omObjData *obj; + lbl_1_bss_610.unk00 = obj = omAddObjEx(lbl_1_bss_4E0, 256, 16, 16, -1, NULL); + lbl_1_bss_610.unk04 = NULL; + lbl_1_bss_610.unk00->data = &lbl_1_bss_638; + fn_1_10448(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_610.unk04 != NULL) { + lbl_1_bss_610.unk04(obj, &lbl_1_bss_610); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_10C00(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x66007D); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660080); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660081); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660084); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660085); + Hu3DModelPosSet(object->model[1], -300, 0, 890); + Hu3DModelRotSet(object->model[1], 0, 30, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); + CharModelEffectNpcInit(object->model[1], object->motion[2], 1, 13); +} + +void fn_1_10DF4(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_5E8.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_5E8.unk00->work[0] = arg4; + lbl_1_bss_5E8.unk00->work[1] = arg1; + lbl_1_bss_5E8.unk00->work[2] = arg2+1; +} + +void fn_1_10EA0(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -600, 0, 800 }; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, -90, 60, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_10F84(omObjData* arg0, StructBss16C* arg1) +{ + int i; + for(i=0; i<15; i++) { + fn_1_BC8(); + Hu3DData[arg0->model[1]].rot.y = fn_1_864(0, 135, i, 15); + } + arg1->unk04 = NULL; +} + +void fn_1_11048(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -120, 0, 800 }; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, 60, 60, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_1112C(void) +{ + omObjData *obj; + lbl_1_bss_5E8.unk00 = obj = omAddObjEx(lbl_1_bss_4E0, 256, 16, 16, -1, NULL); + lbl_1_bss_5E8.unk04 = NULL; + lbl_1_bss_5E8.unk00->data = &lbl_1_bss_5E8; + fn_1_10C00(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_5E8.unk04 != NULL) { + lbl_1_bss_5E8.unk04(obj, &lbl_1_bss_5E8); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_11418(int arg0) +{ + int i; + int order[4]; + order[0] = 0; + for(i=1; i<4; i++) { + order[i] = order[i-1]+1; + if(order[i] >= 4) { + order[i] = 0; + } + if(arg0 == order[i]) { + lbl_1_bss_688.unk00 = i; + } + } + for(i=0; i<4; i++) { + fn_1_357C(&lbl_1_bss_688.unk30[i], order[i]); + } + for(i=0; i<4; i++) { + lbl_1_bss_688.unk30[i].unk18 = GWPlayer[order[i]].rank+1; + } +} + +Vec lbl_1_data_81C[4] = { + { -300, 0, 460 }, + { -100, -30, 460 }, + { 100, -60, 460 }, + { 300, -90, 460 }, +}; + +void fn_1_1154C(omObjData *object, int player) +{ + int playerNo = player; + int charNo = lbl_1_bss_688.unk30[playerNo].unk10; + object->model[1] = CharModelCreate(charNo, 4); + object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); + object->motion[2] = CharModelMotionCreate(charNo, 0x5F0003); + object->motion[3] = CharModelMotionCreate(charNo, 0x5F0005); + object->motion[4] = CharModelMotionCreate(charNo, 0x5F001A); + object->motion[5] = CharModelMotionCreate(charNo, 0x5F006D); + object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660018+charNo); + CharModelMotionDataClose(charNo); + Hu3DModelPosSet(object->model[1], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18-1].y+90, lbl_1_data_81C[playerNo].z); + Hu3DModelRotSet(object->model[1], 0, 0, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); + object->model[2] = Hu3DModelCreateFile(0x660056); + Hu3DModelPosSet(object->model[2], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18-1].y, lbl_1_data_81C[playerNo].z); + if(lbl_1_bss_688.unk30[playerNo].unk18 == 4) { + Hu3DModelAttrSet(object->model[2], 1); + } + Hu3DModelScaleSet(object->model[2], 1.5, 1, 1.5); + Hu3DModelShadowMapSet(object->model[2]); +} + +void fn_1_11838(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->work[0] = arg4; + lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->work[1] = arg1; + lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->work[2] = arg2+1; +} + +void fn_1_11934(omObjData* arg0, StructBss16C* arg1) +{ + float posY = Hu3DData[arg0->model[1]].pos.y; + int i; + for(i=0; i<60; i++) { + fn_1_BC8(); + Hu3DData[arg0->model[1]].pos.y = fn_1_984(posY, 0, i, 60); + Hu3DData[arg0->model[2]].pos.y = fn_1_984(posY-90, -90, i, 60); + } + Hu3DModelAttrSet(arg0->model[2], 1); + arg1->unk04 = NULL; +} + +void fn_1_11A98(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { 120, 0, 800 }; + lbl_1_bss_5E8.unk04 = (void *)fn_1_11048; + fn_1_1DFC(lbl_1_bss_638.unk00, 2, 2, 0, 0); + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, -60, 30, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_11BB0(void) +{ + omObjData *obj; + int playerNo = lbl_1_bss_688.unk10++; + lbl_1_bss_548[playerNo].unk00 = obj = omAddObjEx(lbl_1_bss_4E0, 256, 16, 16, -1, NULL); + lbl_1_bss_548[playerNo].unk04 = NULL; + lbl_1_bss_548[playerNo].unk00->data = &lbl_1_bss_548[0]; + fn_1_1154C(obj, playerNo); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_548[playerNo].unk04 != NULL) { + lbl_1_bss_548[playerNo].unk04(obj, &lbl_1_bss_548[playerNo]); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_11FD0(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk08.x = 0; + work->unk08.y = 170; + work->unk08.z = 0; + work->unk20.x = -5; + work->unk20.y = 0; + work->unk20.z = 0; + work->unk38 = 1700; +} + +void fn_1_1205C(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + temp.unk08.x = 0; + temp.unk08.y = 125; + temp.unk08.z = 0; + temp.unk20.x = -5; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 1750; + fn_1_4FEC(work, &temp, work->unk40++, 60, 30); + if(0.0f != lbl_1_bss_688.unk100) { + work->unk08.y = lbl_1_bss_688.unk100+125; + } +} + +void fn_1_1218C(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + if(work->unk40 == 50) { + fn_1_1DFC(lbl_1_bss_638.unk00, 5, 5, 0, 0); + fn_1_1DFC(lbl_1_bss_638.unk00, 6, 6, 0, 0); + HuAudFXPlay(161); + } + temp.unk08.x = 0; + temp.unk08.y = 100; + temp.unk08.z = 460; + temp.unk20.x = 0; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 125; + fn_1_4FEC(work, &temp, work->unk40, 180, 10); + if(work->unk40++ >= 90) { + if(work->unk40 == 91) { + lbl_1_bss_88[0] = HuAudFXPlay(32); + } + work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40-90, 90); + Hu3DData[lbl_1_bss_638.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40-90, 90); + } +} \ No newline at end of file From f28e9d19aa20f800ed7cbc8d457f380bee3c015b Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Sat, 11 Jan 2025 00:04:16 -0600 Subject: [PATCH 113/178] Match rest of mstory2 (#521) --- config/GMPE01_00/rels/mstory2Dll/splits.txt | 4 +- config/GMPE01_01/rels/mstory2Dll/splits.txt | 4 +- configure.py | 8 +- include/REL/mstory2Dll.h | 2 + include/game/gamework_data.h | 5 +- src/REL/mentDll/main.c | 2 +- src/REL/modeseldll/filesel.c | 2 +- src/REL/mstory2Dll/ending.c | 676 ++++++++++++++++ src/REL/mstory2Dll/mg_clear.c | 831 ++++++++++++++++++++ src/REL/mstory2Dll/mg_miss.c | 501 ++++++++++++ src/REL/mstory2Dll/save.c | 118 +++ src/REL/mstory4Dll/main.c | 2 +- 12 files changed, 2142 insertions(+), 13 deletions(-) create mode 100644 src/REL/mstory2Dll/ending.c create mode 100644 src/REL/mstory2Dll/mg_clear.c create mode 100644 src/REL/mstory2Dll/mg_miss.c create mode 100644 src/REL/mstory2Dll/save.c diff --git a/config/GMPE01_00/rels/mstory2Dll/splits.txt b/config/GMPE01_00/rels/mstory2Dll/splits.txt index 080a347f..aa6bd0d5 100644 --- a/config/GMPE01_00/rels/mstory2Dll/splits.txt +++ b/config/GMPE01_00/rels/mstory2Dll/splits.txt @@ -38,13 +38,13 @@ REL/mstory2Dll/mg_clear.c: REL/mstory2Dll/mg_miss.c: .text start:0x00016060 end:0x000186D0 - .rodata start:0x000003D0 end:0x00000440 + .rodata start:0x000003D0 end:0x00000438 .data start:0x00000DB8 end:0x00000EF8 .bss start:0x00000968 end:0x00000B38 REL/mstory2Dll/ending.c: .text start:0x000186D0 end:0x0001B560 - .rodata start:0x00000440 end:0x000004B8 + .rodata start:0x00000438 end:0x000004B8 .data start:0x00000EF8 end:0x00001113 .bss start:0x00000B38 end:0x00000D10 diff --git a/config/GMPE01_01/rels/mstory2Dll/splits.txt b/config/GMPE01_01/rels/mstory2Dll/splits.txt index 2d36e6e7..efd06f61 100644 --- a/config/GMPE01_01/rels/mstory2Dll/splits.txt +++ b/config/GMPE01_01/rels/mstory2Dll/splits.txt @@ -38,13 +38,13 @@ REL/mstory2Dll/mg_clear.c: REL/mstory2Dll/mg_miss.c: .text start:0x00016060 end:0x000186D0 - .rodata start:0x000003D0 end:0x00000440 + .rodata start:0x000003D0 end:0x00000438 .data start:0x00000DB8 end:0x00000EF8 .bss start:0x00000968 end:0x00000B38 REL/mstory2Dll/ending.c: .text start:0x000186D0 end:0x0001B560 - .rodata start:0x00000440 end:0x000004B8 + .rodata start:0x00000438 end:0x000004B8 .data start:0x00000EF8 end:0x00001113 .bss start:0x00000B38 end:0x00000D10 diff --git a/configure.py b/configure.py index dc0c82ab..015fa960 100644 --- a/configure.py +++ b/configure.py @@ -1374,10 +1374,10 @@ config.libs = [ Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_entrance.c"), Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_clear.c"), Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_miss.c"), - Object(NonMatching, "REL/mstory2Dll/mg_clear.c"), - Object(NonMatching, "REL/mstory2Dll/mg_miss.c"), - Object(NonMatching, "REL/mstory2Dll/ending.c"), - Object(NonMatching, "REL/mstory2Dll/save.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/mg_clear.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/mg_miss.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/ending.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/save.c"), }, ), Rel( diff --git a/include/REL/mstory2Dll.h b/include/REL/mstory2Dll.h index b170640e..7998a490 100644 --- a/include/REL/mstory2Dll.h +++ b/include/REL/mstory2Dll.h @@ -46,6 +46,7 @@ float fn_1_864(float arg0, float arg1, float arg2, float arg3); float fn_1_88C(float arg0, float arg1, float arg2); float fn_1_8AC(float arg0, float arg1, float arg2, float arg3); float fn_1_984(float arg0, float arg1, float arg2, float arg3); +float fn_1_A4C(float arg0, float arg1, float arg2, float arg3); float fn_1_B08(float arg0, float arg1, float arg2, float arg3); void fn_1_BC8(void); void fn_1_BE8(s32 arg0); @@ -77,6 +78,7 @@ void fn_1_6704(omObjData* arg0); void fn_1_67D8(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_6A90(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_6D78(s32 arg0, s32 arg1, s32 arg2, s32 arg3); +void fn_1_6DBC(s32 arg0, s32 arg1, s32 arg2, s32 arg3); s32 fn_1_7064(s32 arg0, s32 arg1); void fn_1_71DC(s32 arg0); void fn_1_7244(s16 modelId, char *objName, u32 constAttr, float ofs); diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index 8d98cad0..0e2c8254 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -40,7 +40,8 @@ typedef struct system_state { }; /* 0x09 */ s8 last5_effect; /* 0x0A */ s8 player_curr; -/* 0x0B */ s8 unk0B[3]; +/* 0x0B */ u8 unk0B; +/* 0x0C */ s8 unk0C; /* 0x0E */ s16 block_pos; /* 0x10 */ u8 ATTRIBUTE_ALIGN(4) board_data[32]; /* 0x30 */ u8 mess_delay; @@ -316,7 +317,7 @@ static inline s32 GWPlayerCurrGet(void) static inline s32 GWUnkB1Get(void) { - return GWSystem.unk0B[1]; + return GWSystem.unk0C; } static inline s32 GWPlayerTeamGet(s32 player) diff --git a/src/REL/mentDll/main.c b/src/REL/mentDll/main.c index 03f49eb0..3888ccf4 100644 --- a/src/REL/mentDll/main.c +++ b/src/REL/mentDll/main.c @@ -2696,7 +2696,7 @@ void fn_1_E71C(s32 arg0) inline void fn_1_E874_inline(void) { s32 sp18 = lbl_1_bss_3114[0].unk_68; - GWSystem.unk0B[1] = sp18; + GWSystem.unk0C = sp18; } void fn_1_E874(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) diff --git a/src/REL/modeseldll/filesel.c b/src/REL/modeseldll/filesel.c index 53a1d962..ef0bc58f 100644 --- a/src/REL/modeseldll/filesel.c +++ b/src/REL/modeseldll/filesel.c @@ -1859,7 +1859,7 @@ void fn_1_A8C0(s16 boxno) SLLoadBoardStory(); lbl_1_bss_EE[boxno] = GWGameStat.total_stars; lbl_1_bss_D0[boxno] = GWGameStat.create_time; - lbl_1_bss_E8[boxno] = GWSystem.unk0B[1]; + lbl_1_bss_E8[boxno] = GWSystem.unk0C; lbl_1_bss_C4[boxno] = GWGameStat.story_continue; lbl_1_bss_B8[boxno] = GWGameStat.party_continue; if (GWGameStat.story_continue) { diff --git a/src/REL/mstory2Dll/ending.c b/src/REL/mstory2Dll/ending.c new file mode 100644 index 00000000..c0c09595 --- /dev/null +++ b/src/REL/mstory2Dll/ending.c @@ -0,0 +1,676 @@ +#include "REL/mstory2Dll.h" +#include "game/armem.h" +#include "game/board/main.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "game/pad.h" +#include "game/objsub.h" +#include "game/esprite.h" + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ char unk18[0x18]; + /* 0x030 */ StructFn357C unk30[4]; + /* 0x100 */ float unk100; +} StructBssC0C; // Size 0x104 + +StructBssC0C lbl_1_bss_C0C; +StructBss16C lbl_1_bss_BE4; +StructBss16C lbl_1_bss_BBC; +StructBss16C lbl_1_bss_B94; +StructBss16C lbl_1_bss_B6C; +StructBss16C lbl_1_bss_B44; +BOOL lbl_1_bss_B40; +BOOL lbl_1_bss_B3C; +Process *lbl_1_bss_B38; + +s32 lbl_1_data_EF8[2][2] = { 20, 70, 1, 1 }; +s32 lbl_1_data_F08 = -1; +s32 lbl_1_data_F0C[2] = { -1, -1 }; +s32 lbl_1_data_F14 = 127; + +void fn_1_19F14(void); +void fn_1_1A160(void); +void fn_1_1A538(omObjData* arg0, StructBss16C* arg1); +void fn_1_1A578(void); +void fn_1_1A9D0(omObjData* arg0, StructBss16C* arg1); +void fn_1_1AAB4(void); +void fn_1_1AFD4(omObjData* arg0, StructBss16C* arg1); +void fn_1_1B0E4(void); +void fn_1_1AD3C(int arg0); +void fn_1_1B318(void); +void fn_1_1B3A4(void); +void fn_1_1B430(void); + +void fn_1_186D0(void) +{ + int i; + while(1) { + HuPrcVSleep(); + if(lbl_1_data_F08 != -1 && lbl_1_data_F0C[0] != -1 && lbl_1_data_F0C[1] != -1 && lbl_1_data_F0C[0] == Hu3DMotionIDGet(lbl_1_data_F08)) { + for(i=0; i<2; i++) { + if(lbl_1_data_EF8[1][i] != -1) { + if(Hu3DMotionTimeGet(lbl_1_data_F08) >= lbl_1_data_EF8[0][i]) { + OSReport("KE-System TIME:%d\n", lbl_1_data_EF8[0][i]); + HuAudFXPlayVol(81, lbl_1_data_F14); + lbl_1_data_EF8[1][i] = -1; + } + } + } + if(Hu3DMotionTimeGet(lbl_1_data_F08) <= 10) { + for(i=0; i<2; i++) { + lbl_1_data_EF8[1][i] = 1; + } + } + } + if(lbl_1_bss_B3C == 1) { + lbl_1_data_F14--; + if(lbl_1_data_F14 <= 0) { + lbl_1_data_F14 = 0; + } + } + if(lbl_1_bss_B3C == 2) { + break; + } + } + HuPrcEnd(); + while(1) { + HuPrcVSleep(); + } +} + +void fn_1_188F0(Process* arg0, s32 arg1) +{ + lbl_1_bss_B38 = arg0; + if(GWSystem.diff_story == 2) { + GWGameStat.field10E_bit4 = TRUE; + } + lbl_1_bss_C0C.unk0C = arg1; + fn_1_C30(); + fn_1_3668(255); + fn_1_2828(lbl_1_bss_B38, fn_1_1B318); + fn_1_3754(); + fn_1_1AD3C(arg1); + HuPrcChildCreate(fn_1_1B0E4, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_1A160, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_1AAB4, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_1A578, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_19F14, 100, 12288, 0, HuPrcCurrentGet()); +} + +void fn_1_18A34(omObjData *object) +{ + if(object->work[2]) { + object->work[2]--; + return; + } + if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + fn_1_1DFC(object, 1, object->work[1], 15, 1); + object->work[0] = object->work[1] = object->work[2] = 0; + } +} + +void fn_1_18AC0(void) +{ + int posX = 16; + int posY = 40; + GXColor winColor = { 0, 0, 128, 128 }; + int i; + while(1) { + fn_1_BC8(); + fontcolor = FONT_COLOR_WHITE; + printWin(posX, posY, 220, 130, &winColor); + if(lbl_1_bss_BE4.unk04 == NULL) { + print8(posX, posY, 1, "PROC_MAIN -> FALSE"); + } else { + print8(posX, posY, 1, "PROC_MAIN -> TRUE"); + } + if(lbl_1_bss_BBC.unk04 == NULL) { + print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); + } else { + print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + } + if(lbl_1_bss_B94.unk04 == NULL) { + print8(posX, posY+20, 1, "PROC_PLAYER -> FALSE"); + } else { + print8(posX, posY+20, 1, "PROC_PLAYER -> TRUE"); + } + if(lbl_1_bss_B6C.unk04 == NULL) { + print8(posX, posY+30, 1, "PROC_SUB -> FALSE"); + } else { + print8(posX, posY+30, 1, "PROC_SUB -> TRUE"); + } + if(lbl_1_bss_B44.unk04 == NULL) { + print8(posX, posY+40, 1, "PROC_KOOPA -> FALSE"); + } else { + print8(posX, posY+40, 1, "PROC_KOOPA -> TRUE"); + } + + print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_C0C.unk00, lbl_1_bss_C0C.unk0C); + print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for(i=0; i<4; i++) { + print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_C0C.unk30[i].unk00, lbl_1_bss_C0C.unk30[i].unk04, lbl_1_bss_C0C.unk30[i].unk08, lbl_1_bss_C0C.unk30[i].unk0C, lbl_1_bss_C0C.unk30[i].unk14, lbl_1_bss_C0C.unk30[i].unk10); + } + } +} + +void fn_1_18E7C(void) +{ + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + fn_1_BE8(60); +} + +void fn_1_18EC4(void) +{ + lbl_1_bss_C0C.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_C0C.unk0C); + HuAudFXPlay(lbl_1_data_0[6][1]); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x1F001E); + fn_1_1AFC(lbl_1_bss_C0C.unk04, -1); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_C0C.unk04); + lbl_1_bss_B44.unk04 = (void *)fn_1_1A538; + lbl_1_bss_B3C = 1; + fn_1_BE8(60); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + fn_1_BE8(60); + lbl_1_bss_B44.unk04 = NULL; + lbl_1_bss_B3C = 2; + fn_1_1DFC(lbl_1_bss_B44.unk00, 1, 1, 0, 1); + fn_1_2750(fn_1_1B3A4); + Hu3DModelAttrReset(lbl_1_bss_BBC.unk00->model[1], 1); + Hu3DModelAttrReset(lbl_1_bss_BBC.unk00->model[2], 1); + Hu3DModelAttrReset(lbl_1_bss_BBC.unk00->model[4], 1); + Hu3DModelAttrReset(lbl_1_bss_B6C.unk00->model[1], 1); + Hu3DModelAttrReset(lbl_1_bss_B94.unk00->model[1], 1); + Hu3DModelAttrSet(lbl_1_bss_B44.unk00->model[1], 1); + Hu3DModelPosSet(lbl_1_bss_BBC.unk00->model[1], 0, 0, 0); + fn_1_BE8(60); + lbl_1_bss_78[0] = HuAudSeqPlay(56); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + if(0) { + fn_1_BC8(); + } +} + +void fn_1_19138(void) +{ + fn_1_1DFC(lbl_1_bss_BBC.unk00, 2, 3, 0, 0); + fn_1_2264(lbl_1_bss_BBC.unk00, 2, 3, 0); + lbl_1_bss_B94.unk04 = (void *)fn_1_1AFD4; + lbl_1_bss_B6C.unk04 = (void *)fn_1_1A9D0; + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_1B430); + fn_1_BE8(30); + fn_1_1DFC(lbl_1_bss_BBC.unk00, 2, 2, 0, 0); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_B94.unk04 == NULL) { + break; + } + } + while(1) { + fn_1_BC8(); + if(lbl_1_bss_B6C.unk04 == NULL) { + break; + } + } + lbl_1_bss_C0C.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_C0C.unk0C); + HuAudFXPlay(lbl_1_data_0[0][2]); + fn_1_1DFC(lbl_1_bss_B6C.unk00, 1, 3, 15, 1); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x1F001F); + fn_1_1AFC(lbl_1_bss_C0C.unk04, -1); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x1F0020); + fn_1_1AFC(lbl_1_bss_C0C.unk04, -1); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x250004); + fn_1_1DFC(lbl_1_bss_B6C.unk00, 1, 1, 15, 1); + fn_1_1A94(lbl_1_bss_C0C.unk04); + fn_1_BE8(60); +} + +char *lbl_1_data_10E4[8] = { + "movie/endmov_ma0.thp", + "movie/endmov_lu0.thp", + "movie/endmov_pe0.thp", + "movie/endmov_yo0.thp", + "movie/endmov_wa0.thp", + "movie/endmov_do0.thp", + "movie/endmov_da0.thp", + "movie/endmov_wl0.thp" +}; + +void fn_1_19334(void) +{ + lbl_1_bss_C0C.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_C0C.unk0C); + HuAudFXPlay(lbl_1_data_0[0][2]); + fn_1_1DFC(lbl_1_bss_B6C.unk00, 1, 3, 0, 1); + fn_1_1D4C(lbl_1_bss_C0C.unk04, lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10, 0); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x1F0024); + fn_1_1AFC(lbl_1_bss_C0C.unk04, -1); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x250004); + fn_1_1DFC(lbl_1_bss_B6C.unk00, 1, 1, 0, 1); + fn_1_1A94(lbl_1_bss_C0C.unk04); + fn_1_1DFC(lbl_1_bss_B94.unk00, 1, 4, 15, 0); + fn_1_2264(lbl_1_bss_B94.unk00, 1, 4, 15); + fn_1_1DFC(lbl_1_bss_B94.unk00, 1, 3, 15, 1); + fn_1_BE8(60); + lbl_1_bss_C0C.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_C0C.unk0C); + fn_1_1DFC(lbl_1_bss_B6C.unk00, 1, 3, 0, 1); + fn_1_6D78(lbl_1_bss_C0C.unk04, 0x1F0023, 0, -1); + fn_1_1D18(lbl_1_bss_C0C.unk04, 0x250004); + fn_1_1DFC(lbl_1_bss_B6C.unk00, 1, 1, 0, 1); + HuAudFXPlay(lbl_1_data_0[0][3]); + fn_1_1A94(lbl_1_bss_C0C.unk04); + fn_1_BE8(60); + HuAudFXPlay(152); + Hu3DModelAttrSet(lbl_1_bss_BBC.unk00->model[1], 1); + Hu3DModelAttrSet(lbl_1_bss_BBC.unk00->model[2], 1); + Hu3DModelAttrSet(lbl_1_bss_BBC.unk00->model[4], 1); + Hu3DModelAttrSet(lbl_1_bss_B6C.unk00->model[1], 1); + Hu3DModelAttrSet(lbl_1_bss_B94.unk00->model[1], 1); + HuAudSeqFadeOut(lbl_1_bss_78[0], 100); + lbl_1_bss_B3C = 2; + GWGameStat.field10E_bit6 = TRUE; + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (WipeStatGet()) { + HuPrcVSleep(); + } + lbl_1_bss_BBC.unk04 = NULL; + lbl_1_bss_B94.unk04 = NULL; + lbl_1_bss_B44.unk04 = NULL; + lbl_1_bss_B6C.unk04 = NULL; + + CharModelKill(-1); + Hu3DAllKill(); + fn_1_BE8(60); + { + int time = 0; + int gid = HuSprGrpCreate(3); + int sprid = HuTHPSprCreate(lbl_1_data_10E4[lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10], FALSE, 1000); + HuSprGrpMemberSet(gid, 0, sprid); + HuSprPosSet(gid, 0, 288, 240); + sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(0x660060, 0x10000000)), 950, 0); + HuSprGrpMemberSet(gid, 1, sprid); + HuSprPosSet(gid, 1, 288, 226); + HuSprAttrSet(gid, 1, HUSPR_ATTR_DISPOFF); + sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(0x660061, 0x10000000)), 950, 0); + HuSprGrpMemberSet(gid, 2, sprid); + HuSprBankSet(gid, 2, lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10); + if(GWLanguageGet() == 0 && lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10 == 5) { + HuSprBankSet(gid, 2, 8); + } + HuSprPosSet(gid, 2, 288, 254); + HuSprAttrSet(gid, 2, HUSPR_ATTR_DISPOFF); + HuPrcSleep(5); + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); + while(WipeStatGet()) { + HuPrcVSleep(); + } + while(!HuTHPEndCheck()) { + if(time >= 3300) { + HuSprAttrReset(gid, 1, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(gid, 2, HUSPR_ATTR_DISPOFF); + } else { + time++; + } + HuPrcVSleep(); + } + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); + while(WipeStatGet()) { + HuPrcVSleep(); + } + HuTHPClose(); + HuPrcVSleep(); + HuSprGrpKill(gid); + } + +} + +void fn_1_199A0(void) +{ + float sp8[2]; + s32 temp_r30; + s32 var_r29; + s32 var_r31; + s32 var_r28; + temp_r30 = 1; + Hu3DAllKill(); + HuSprClose(); + HuSprInit(); + if (SLSaveFlagGet() == 0) { + lbl_1_bss_B40 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } + } + espInit(); + HuPrcVSleep(); + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_WIN, 32), 5000, 0); + espPosSet(var_r29, 288.0f, 240.0f); + espAttrReset(var_r29, 4); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + fn_1_BE8(60); + var_r28 = GWUnkB1Get(); + GWSystem.unk0B |= 1 << var_r28; + if (SLSaveFlagGet() == 1) { + HuWinInit(1); + HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(30, 22)); + var_r31 = HuWinExCreateStyled(-10000.0f, 150.0f, sp8[0], sp8[1], -1, 2); + winData[var_r31].active_pad = 1; + HuWinAttrSet(var_r31, 0x10); + HuWinExAnimIn(var_r31); + HuWinMesSet(var_r31, MAKE_MESSID(30, 22)); + temp_r30 = HuWinChoiceGet(var_r31, 0); + HuWinExAnimOut(var_r31); + HuWinExCleanup(var_r31); + if (SLSaveFlagGet() == 1 && temp_r30 == 0) { + GWGameStat.story_continue = FALSE; + SLCommonSet(); + SLSaveBoardStory(); + SLSave(); + } + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_B40 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_19BE8(void) +{ + omOvlHisData *his; + fn_1_BE8(120); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + CharModelKill(-1); + HuAudFadeOut(1); + his = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY2, 20, 1); + omOvlCallEx(OVL_STAFF, 1, 0, 0); + while(1) { + fn_1_BC8(); + } +} + +void fn_1_19C6C(omObjData* arg0, StructBss16C* arg1) +{ + int temp = 0; + fn_1_18E7C(); + fn_1_18EC4(); + fn_1_19138(); + fn_1_19334(); + fn_1_19BE8(); + arg1->unk04 = NULL; +} + +void fn_1_19F14(void) +{ + omObjData *obj; + lbl_1_bss_BE4.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); + lbl_1_bss_BE4.unk04 = (void *)fn_1_19C6C; + lbl_1_bss_BE4.unk00->data = &lbl_1_bss_BE4; + while(1) { + fn_1_BC8(); + if(lbl_1_bss_BE4.unk04 != NULL) { + lbl_1_bss_BE4.unk04(obj, &lbl_1_bss_BE4); + } + } +} + +void fn_1_19FC8(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660050); + object->motion[0] = Hu3DMotionIDGet(object->model[1]); + fn_1_1DFC(object, 1, 0, 0, 2); + Hu3DModelShadowMapObjSet(object->model[1], "base_fix9-base"); + Hu3DModelAttrSet(object->model[1], 1); + object->model[2] = Hu3DModelCreateFile(0x660053); + object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); + object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + Hu3DModelAttrSet(object->model[2], 1); + fn_1_1DFC(object, 2, 3, 0, 2); + object->model[4] = Hu3DModelCreateFile(0x660051); + Hu3DModelAttrSet(object->model[4], 1); + Hu3DModelPosSet(object->model[1], 0, -1000, 0); +} + +void fn_1_1A160(void) +{ + omObjData *obj; + lbl_1_bss_BBC.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); + lbl_1_bss_BBC.unk04 = NULL; + fn_1_19FC8(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_BBC.unk04 != NULL) { + lbl_1_bss_BBC.unk04(obj, &lbl_1_bss_BBC); + } + } +} + +void fn_1_1A368(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660062); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660070); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660071); + Hu3DModelPosSet(object->model[1], 0, 0, 600); + Hu3DModelRotSet(object->model[1], 0, 180, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + fn_1_1DFC(object, 1, 3, 0, 1); + lbl_1_data_F08 = object->model[1]; + lbl_1_data_F0C[0] = object->motion[3]; + lbl_1_data_F0C[1] = object->motion[3]; + HuPrcChildCreate(fn_1_186D0, 100, 8192, 0, HuPrcCurrentGet()); +} + +void fn_1_1A538(omObjData* arg0, StructBss16C* arg1) +{ + Hu3DData[lbl_1_bss_B44.unk00->model[1]].pos.z -= 2.5f; +} + +void fn_1_1A578(void) +{ + omObjData *obj; + lbl_1_bss_B44.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); + lbl_1_bss_B44.unk04 = NULL; + fn_1_1A368(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_B44.unk04 != NULL) { + lbl_1_bss_B44.unk04(obj, &lbl_1_bss_B44); + } + if(obj->work[0]) { + fn_1_6704(obj); + } + } +} + +void fn_1_1A7CC(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660072); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660073); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660075); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660076); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x66007C); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660079); + Hu3DModelPosSet(object->model[1], 0, 0, 460); + Hu3DModelRotSet(object->model[1], 0, 0, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelAttrSet(object->model[1], 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 5, 0, 1); + CharModelEffectNpcInit(object->model[1], object->motion[2], 1, 9); +} + + +void fn_1_1A9D0(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -120, 0, 800 }; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, 90, 60, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_1AAB4(void) +{ + omObjData *obj; + lbl_1_bss_B6C.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); + lbl_1_bss_B6C.unk04 = NULL; + fn_1_1A7CC(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_B6C.unk04 != NULL) { + lbl_1_bss_B6C.unk04(obj, &lbl_1_bss_B6C); + } + if(obj->work[0]) { + fn_1_6704(obj); + } + } +} + +void fn_1_1AD3C(int arg0) +{ + int i; + int order[4]; + order[0] = 0; + for(i=1; i<4; i++) { + order[i] = order[i-1]+1; + if(order[i] >= 4) { + order[i] = 0; + } + if(arg0 == order[i]) { + lbl_1_bss_C0C.unk00 = i; + } + } + for(i=0; i<4; i++) { + fn_1_357C(&lbl_1_bss_C0C.unk30[i], order[i]); + } +} + +void fn_1_1AE20(omObjData *object) +{ + int charNo = lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10; + object->model[1] = CharModelCreate(charNo, 1); + object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); + object->motion[2] = CharModelMotionCreate(charNo, 0x5F0035); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660010+charNo); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660008+charNo); + CharModelMotionDataClose(charNo); + Hu3DModelPosSet(object->model[1], 120, 0, 800); + Hu3DModelRotSet(object->model[1], 0, -135, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelAttrSet(object->model[1], 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); +} + +void fn_1_1AFD4(omObjData* arg0, StructBss16C* arg1) +{ + int i; + fn_1_1DFC(arg0, 1, 2, 0, 0); + fn_1_BC8(); + Hu3DMotionTimeSet(arg0->model[1], 60); + for(i=0; i<60; i++) { + fn_1_BC8(); + Hu3DData[arg0->model[1]].rot.y = fn_1_864(-135, -90, i, 60); + } + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_1B0E4(void) +{ + omObjData *obj; + lbl_1_bss_B94.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); + lbl_1_bss_B94.unk04 = NULL; + fn_1_1AE20(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_B94.unk04 != NULL) { + lbl_1_bss_B94.unk04(obj, &lbl_1_bss_B94); + } + if(obj->work[0]) { + fn_1_6704(obj); + } + } +} + +void fn_1_1B318(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk08.x = 0; + work->unk08.y = 120; + work->unk08.z = 0; + work->unk20.x = 0; + work->unk20.y = 0; + work->unk20.z = 0; + work->unk38 = 1400; +} + +void fn_1_1B3A4(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk08.x = 0; + work->unk08.y = 125; + work->unk08.z = 0; + work->unk20.x = -4.9f; + work->unk20.y = 0; + work->unk20.z = 0; + work->unk38 = 1750; +} + +void fn_1_1B430(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + temp.unk08.x = 0; + temp.unk08.y = 100; + temp.unk08.z = 0; + temp.unk20.x = 0; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 1400; + fn_1_42A0(work, &temp, work->unk40++, 60, 10); + if(0.0f != lbl_1_bss_C0C.unk100) { + work->unk08.y = 125+lbl_1_bss_C0C.unk100; + } +} \ No newline at end of file diff --git a/src/REL/mstory2Dll/mg_clear.c b/src/REL/mstory2Dll/mg_clear.c new file mode 100644 index 00000000..ddeded43 --- /dev/null +++ b/src/REL/mstory2Dll/mg_clear.c @@ -0,0 +1,831 @@ +#include "REL/mstory2Dll.h" +#include "game/armem.h" +#include "game/board/main.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "game/pad.h" +#include "game/objsub.h" + +typedef struct struct_data850 { + s32 unk0; + s32 unk4; + s32 unk8; + s32 unkC; + s32 unk10; +} StructData850; + +StructData850 lbl_1_data_850[] = { + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x00), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x01), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x02), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x03), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x04), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x05), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x06), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x07), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x08), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x09), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0E), 1, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0F), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x10), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x11), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x12), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x13), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x14), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x15), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x16), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x17), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x18), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x19), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1E), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1F), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x20), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x21), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x22), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x23), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x24), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x25), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x26), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x27), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x28), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x29), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2E), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2F), 0, 0, 0, 1 }, +}; + +s32 lbl_1_data_C10[2][2] = { 20, 70, 1, 1 }; +s32 lbl_1_data_C20 = -1; +s32 lbl_1_data_C24[2] = { -1, -1 }; + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ char unk18[0x18]; + /* 0x030 */ StructFn357C unk30[4]; + /* 0x100 */ s32 unk100; +} StructBss860; // Size 0x104 + +StructBss860 lbl_1_bss_860; +StructBss16C lbl_1_bss_838; +StructBss16C lbl_1_bss_810; +StructBss16C lbl_1_bss_7E8; +StructBss16C lbl_1_bss_7C0; +StructBss16C lbl_1_bss_798; +BOOL lbl_1_bss_794; +Process *lbl_1_bss_790; + +void fn_1_13BB8(void); +void fn_1_13FB4(omObjData* arg0, StructBss16C* arg1); +void fn_1_140A0(omObjData* arg0, StructBss16C* arg1); +void fn_1_1449C(void); +void fn_1_14A9C(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_14B48(omObjData* arg0, StructBss16C* arg1); +void fn_1_14C40(void); +void fn_1_15134(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_151E0(omObjData* arg0, StructBss16C* arg1); +void fn_1_152C4(omObjData* arg0, StructBss16C* arg1); +void fn_1_153A8(void); +void fn_1_15668(int arg0); +void fn_1_159F0(void); +void fn_1_15CDC(void); +void fn_1_15D68(void); +void fn_1_15E58(void); +void fn_1_15F70(void); + +void fn_1_123C8(void) +{ + int i; + while(1) { + do { + HuPrcVSleep(); + } while(lbl_1_data_C20 == -1 || lbl_1_data_C24[0] == -1 || lbl_1_data_C24[1] == -1 || lbl_1_data_C24[0] != Hu3DMotionIDGet(lbl_1_data_C20)); + for(i=0; i<2; i++) { + if(lbl_1_data_C10[1][i] != -1) { + if(Hu3DMotionTimeGet(lbl_1_data_C20) >= lbl_1_data_C10[0][i]) { + OSReport("KE-System TIME:%d\n", lbl_1_data_C10[0][i]); + HuAudFXPlay(81); + lbl_1_data_C10[1][i] = -1; + } + } + } + if(Hu3DMotionTimeGet(lbl_1_data_C20) <= 10) { + for(i=0; i<2; i++) { + lbl_1_data_C10[1][i] = 1; + } + } + } +} + +void fn_1_1256C(Process* arg0, s32 arg1) +{ + lbl_1_bss_790 = arg0; + lbl_1_bss_860.unk0C = arg1; + fn_1_C30(); + lbl_1_bss_860.unk100 = fn_1_3668(255); + fn_1_2828(lbl_1_bss_790, fn_1_15CDC); + fn_1_3754(); + fn_1_15668(arg1); + HuPrcChildCreate(fn_1_1449C, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_14C40, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_153A8, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_159F0, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_13BB8, 100, 8192, 0, HuPrcCurrentGet()); +} + +void fn_1_12690(omObjData *object) +{ + if(object->work[2]) { + object->work[2]--; + return; + } + if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + fn_1_1DFC(object, 1, object->work[1], 15, 1); + object->work[0] = object->work[1] = object->work[2] = 0; + } +} + +void fn_1_1271C(void) +{ + int posX = 16; + int posY = 40; + GXColor winColor = { 0, 0, 128, 128 }; + int i; + while(1) { + fn_1_BC8(); + printWin(posX, posY, 220, 130, &winColor); + if(lbl_1_bss_838.unk04 == NULL) { + print8(posX, posY, 1, "PROC_MAIN -> FALSE"); + } else { + print8(posX, posY, 1, "PROC_MAIN -> TRUE"); + } + if(lbl_1_bss_810.unk04 == NULL) { + print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); + } else { + print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + } + if(lbl_1_bss_7E8.unk04 == NULL) { + print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); + } else { + print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + } + if(lbl_1_bss_7C0.unk04 == NULL) { + print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); + } else { + print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + } + if(lbl_1_bss_798.unk04 == NULL) { + print8(posX, posY+40, 1, "PROC_PLAYER -> FALSE"); + } else { + print8(posX, posY+40, 1, "PROC_PLAYER -> TRUE"); + } + print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_860.unk00, lbl_1_bss_860.unk0C); + print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for(i=0; i<4; i++) { + print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_860.unk30[i].unk00, lbl_1_bss_860.unk30[i].unk04, lbl_1_bss_860.unk30[i].unk08, lbl_1_bss_860.unk30[i].unk0C, lbl_1_bss_860.unk30[i].unk14, lbl_1_bss_860.unk30[i].unk10); + } + } +} + +void fn_1_12AC8(void) +{ + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + fn_1_BE8(30); +} + +void fn_1_12B10(void) +{ + lbl_1_bss_860.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_860.unk0C); + HuAudFXPlay(lbl_1_data_0[6][1]); + fn_1_14A9C(4, 1, 15, 0, 1); + fn_1_1D4C(lbl_1_bss_860.unk04, lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, 0); + fn_1_6D78(lbl_1_bss_860.unk04, 0x1F0014, 0, lbl_1_bss_7E8.unk00->model[1]); + HuAudFXPlay(lbl_1_data_0[6][2]); + fn_1_1DFC(lbl_1_bss_7E8.unk00, 1, 5, 10, 1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x1F0015); + fn_1_1AFC(lbl_1_bss_860.unk04, -1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); + fn_1_15134(1, -1, 15, 1, 0); + fn_1_1A94(lbl_1_bss_860.unk04); + lbl_1_bss_7E8.unk04 = (void *)fn_1_14B48; + fn_1_BE8(60); + fn_1_1DFC(lbl_1_bss_798.unk00, 1, 4, 15, 0); + fn_1_BE8(16); + while(1) { + fn_1_BC8(); + if(Hu3DMotionTimeGet(lbl_1_bss_798.unk00->model[1]) >= 20) { + break; + } + } + Hu3DMotionSpeedSet(lbl_1_bss_798.unk00->model[1], 0); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_7E8.unk04 == NULL) { + break; + } + } + fn_1_BE8(30); + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_15D68); + lbl_1_bss_7C0.unk04 = (void *)fn_1_152C4; + fn_1_BE8(80); + Hu3DMotionSpeedSet(lbl_1_bss_798.unk00->model[1], 1); + fn_1_1DFC(lbl_1_bss_798.unk00, 1, 1, 15, 1); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_7C0.unk04 == NULL) { + break; + } + } +} + +void fn_1_12DD4(void) +{ + lbl_1_bss_860.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_860.unk0C); + lbl_1_bss_78[0] = HuAudSeqPlay(56); + HuAudFXPlay(lbl_1_data_0[5][0]); + fn_1_1DFC(lbl_1_bss_7C0.unk00, 1, 4, 15, 0); + fn_1_1D18(lbl_1_bss_860.unk04, 0x1F0016); + fn_1_1AFC(lbl_1_bss_860.unk04, -1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); + HuAudFXPlay(lbl_1_data_0[5][0]); + fn_1_1DFC(lbl_1_bss_7C0.unk00, 1, 3, 15, 1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x1F0017); + fn_1_1AFC(lbl_1_bss_860.unk04, -1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); + HuAudFXPlay(lbl_1_data_0[5][0]); + fn_1_1D18(lbl_1_bss_860.unk04, 0x1F0018); + fn_1_1AFC(lbl_1_bss_860.unk04, -1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); + fn_1_1DFC(lbl_1_bss_7C0.unk00, 1, 1, 15, 1); + fn_1_1A94(lbl_1_bss_860.unk04); + fn_1_BE8(60); + lbl_1_bss_860.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_860.unk0C); + HuAudFXPlay(lbl_1_data_0[5][0]); + fn_1_1DFC(lbl_1_bss_7C0.unk00, 1, 3, 15, 1); + fn_1_1D4C(lbl_1_bss_860.unk04, lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, 0); + fn_1_1D18(lbl_1_bss_860.unk04, 0x1F0019); + fn_1_1AFC(lbl_1_bss_860.unk04, -1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); + HuAudFXPlay(lbl_1_data_0[5][1]); + fn_1_1D18(lbl_1_bss_860.unk04, 0x1F001A); + fn_1_1AFC(lbl_1_bss_860.unk04, -1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); + lbl_1_bss_7C0.unk04 = (void *)fn_1_151E0; + fn_1_1D18(lbl_1_bss_860.unk04, 0x1F001B); + fn_1_1AFC(lbl_1_bss_860.unk04, -1); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); + fn_1_1A94(lbl_1_bss_860.unk04); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_7C0.unk04 == NULL) { + break; + } + } +} + +void fn_1_13150(omObjData* arg0, StructBss16C* arg1) +{ + int streamNo = HuAudSStreamPlay(7); + while(1) { + fn_1_BC8(); + if(HuAudSStreamStatGet(streamNo) == 0) { + break; + } + } + HuAudSeqPause(lbl_1_bss_78[0], 0, 1000); + arg1->unk04 = NULL; +} + +void fn_1_131C0(omObjData* arg0, StructBss16C* arg1) +{ + int presentSe = (lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10*6)+5; + fn_1_BE8(150); + OSReport("########## PRESENT_SE : %d\n", presentSe); + HuAudFXPlay(presentSe+2260); + fn_1_1DFC(lbl_1_bss_810.unk00, 7, 7, 1, 0); + arg1->unk04 = NULL; +} + +void fn_1_13264(void) +{ + int i; + fn_1_1DFC(lbl_1_bss_798.unk00, 1, 2, 15, 1); + for(i=0; i<30; i++) { + fn_1_BC8(); + if(lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 != 5) { + Hu3DData[lbl_1_bss_798.unk00->model[1]].pos.x = fn_1_864(120, 80, i, 30); + } + Hu3DData[lbl_1_bss_798.unk00->model[1]].rot.y = fn_1_864(-60, -90, i, 30); + } + fn_1_1DFC(lbl_1_bss_798.unk00, 1, 5, 5, 0); + fn_1_BE8(10); + while(1) { + fn_1_BC8(); + if(Hu3DMotionTimeGet(lbl_1_bss_798.unk00->model[1]) >= 30) { + break; + } + } + Hu3DModelPosSet(lbl_1_bss_810.unk00->model[5], 0, 0, 0); + Hu3DModelHookSet(lbl_1_bss_798.unk00->model[1], CharModelHookNameGet(lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, 1, 1), lbl_1_bss_810.unk00->model[5]); + fn_1_BE8(60); + lbl_1_bss_810.unk04 = (void *)fn_1_13FB4; + HuAudFXPlay(163); + HuAudCharVoicePlay(lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, 296); + fn_1_1DFC(lbl_1_bss_810.unk00, 6, 6, 0, 0); + Hu3DModelAttrReset(lbl_1_bss_810.unk00->model[6], 1); + Hu3DModelAttrSet(lbl_1_bss_810.unk00->model[5], 1); + fn_1_1DFC(lbl_1_bss_798.unk00, 1, 6, 5, 0); + HuAudSeqPause(lbl_1_bss_78[0], 1, 1000); + WipeColorSet(255, 255, 255); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + while(1) { + fn_1_BC8(); + if(!WipeStatGet()) { + break; + } + } + Hu3DMotionSpeedSet(lbl_1_bss_798.unk00->model[1], 0); + Hu3DMotionTimeSet(lbl_1_bss_798.unk00->model[1], 50); + Hu3DModelAttrReset(lbl_1_bss_810.unk00->model[7], 1); + Hu3DModelAttrReset(lbl_1_bss_810.unk00->model[8], 1); + fn_1_1DFC(lbl_1_bss_810.unk00, 8, 8, 0, 1); + fn_1_BE8(30); + HuAudFXPlay(169); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + while(1) { + fn_1_BC8(); + if(!WipeStatGet()) { + break; + } + } + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_15F70); + fn_1_BE8(60); + lbl_1_bss_798.unk04 = (void *)fn_1_131C0; + lbl_1_bss_860.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_860.unk0C); + lbl_1_bss_7C0.unk04 = (void *)fn_1_13150; + fn_1_1D4C(lbl_1_bss_860.unk04, (lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10*6)+0x32000B, 0); + fn_1_6DBC(lbl_1_bss_860.unk04, 0x320086, 0, 300); + fn_1_1D18(lbl_1_bss_860.unk04,0x250004); + fn_1_1A94(lbl_1_bss_860.unk04); + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_15E58); + lbl_1_bss_810.unk04 = (void *)fn_1_140A0; + fn_1_BE8(30); + Hu3DMotionSpeedSet(lbl_1_bss_798.unk00->model[1], 0.1f); + fn_1_BE8(180); + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); +} + +void fn_1_13828(void) +{ + Hu3DAllKill(); + HuSprClose(); + HuSprInit(); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + fn_1_BE8(60); + SLCommonSet(); + SLSaveBoardStory(); + if (SLSaveFlagGet() == 1) { + SLSave(); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 10); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_794 = TRUE; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_138CC(void) +{ + omOvlHisData* var_r31; + + msmSeStopAll(FALSE, 1000); + do { + fn_1_BC8(); + } while (WipeStatGet() != 0); + CharModelKill(-1); + HuAudFXAllStop(); + HuAudSStreamAllStop(); + GWMGAvailSet(omMgIndexGet(58)+401); + GWGameStat.present[lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6 + 5] = 1; + OSReport("########## PRESENTFLG CHR:%d, MAP:5, PRESENT:%d\n", lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6 + 5); + var_r31 = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY2, 20, var_r31->stat); + omOvlCallEx(OVL_PRESENT, 1, lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6 + 5 + 1, 0); +} + +void fn_1_13A18(omObjData* arg0, StructBss16C* arg1) +{ + int temp = 0; + fn_1_12AC8(); + fn_1_12B10(); + fn_1_12DD4(); + fn_1_13264(); + fn_1_138CC(); + arg1->unk04 = 0; +} + +void fn_1_13BB8(void) +{ + omObjData *obj; + lbl_1_bss_838.unk00 = obj = omAddObjEx(lbl_1_bss_790, 256, 16, 16, -1, NULL); + lbl_1_bss_838.unk04 = (void *)fn_1_13A18; + lbl_1_bss_838.unk00->data = &lbl_1_bss_838; + while(1) { + fn_1_BC8(); + if(lbl_1_bss_838.unk04 != NULL) { + lbl_1_bss_838.unk04(obj, &lbl_1_bss_838); + } + } +} + +void fn_1_13C6C(omObjData* object) +{ + s32 charNo; + charNo = lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10; + object->model[7] = Hu3DModelCreateFile(lbl_1_data_850[charNo * 6 + 5].unk0); + object->motion[7] = Hu3DMotionIDGet(object->model[7]); + Hu3DModelPosSet(object->model[7], 0, 180, 825); + Hu3DModelAttrSet(object->model[7], 1); + Hu3DModelShadowSet(object->model[7]); + fn_1_1DFC(object, 7, 7, 0, 2); + HuDataDirClose(DATADIR_MSTORY4); + object->model[1] = Hu3DModelCreateFile(0x660052); + object->motion[1] = Hu3DMotionIDGet(object->model[1]); + Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); + fn_1_1DFC(object, 1, 1, 0, 1); + object->model[2] = Hu3DModelCreateFile(0x660053); + object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); + object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + fn_1_1DFC(object, 2, 3, 0, 2); + object->model[5] = Hu3DModelCreateFile(0x66005B); + Hu3DModelPosSet(object->model[5], 0, 125, 800); + Hu3DModelAttrSet(object->model[5], 1); + Hu3DModelShadowSet(object->model[5]); + object->model[6] = Hu3DModelCreateFile(0x66005D); + object->motion[6] = Hu3DMotionIDGet(object->model[6]); + Hu3DModelPosSet(object->model[6], 25, 125, 900); + Hu3DModelAttrSet(object->model[6], 1); + fn_1_1DFC(object, 6, 6, 0, 2); + object->model[8] = Hu3DModelCreateFile(0x66005F); + object->motion[8] = Hu3DMotionIDGet(object->model[8]); + Hu3DModelAttrSet(object->model[8], 1); + fn_1_1DFC(object, 8, 8, 0, 1); +} + + +void fn_1_13FB4(omObjData* arg0, StructBss16C* arg1) +{ + Mtx matrix; + Hu3DData[arg0->model[7]].pos.y = fn_1_B08(180, 185, arg1->unk08++, 360); + Hu3DModelObjMtxGet(arg0->model[7], "effect", matrix); + Hu3DModelPosSet(arg0->model[8], matrix[0][3], matrix[1][3], matrix[2][3]); + if(arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_140A0(omObjData* arg0, StructBss16C* arg1) +{ + Mtx matrix; + Hu3DData[arg0->model[7]].pos.y += arg1->unk0C/100.0f; + Hu3DModelObjMtxGet(arg0->model[7], "effect", matrix); + Hu3DModelPosSet(arg0->model[8], matrix[0][3], matrix[1][3], matrix[2][3]); + arg1->unk0C += 2; +} + +void fn_1_1416C(omObjData* arg0, StructBss16C* arg1) +{ + int i; + Vec pos; + float rotY; + Hu3DModelPosSet(arg0->model[5], -180, 100, 800); + Hu3DModelRotSet(arg0->model[5], 0, 0, 0); + Hu3DModelAttrReset(arg0->model[5], 1); + for(i=0; i<60; i++) { + fn_1_BC8(); + if(i == 30) { + HuAudFXPlay(151); + } + if(i <= 30) { + pos.y = fn_1_A4C(0, 100, i+30, 60); + pos.x = fn_1_864(-180, -45, i, 30); + rotY = fn_1_984(0, -90, i, 30); + } else { + pos.x = fn_1_864(-45, 0, i-30, 30); + pos.y = fn_1_A4C(0, 25, i-30, 30); + rotY = fn_1_984(-90, -360, i-30, 30); + } + Hu3DModelPosSet(arg0->model[5], pos.x, pos.y, 800); + Hu3DModelRotSet(arg0->model[5], 0, rotY, 0); + } + arg1->unk04 = NULL; +} + +void fn_1_1449C(void) +{ + omObjData *obj; + lbl_1_bss_810.unk00 = obj = omAddObjEx(lbl_1_bss_790, 256, 16, 16, -1, NULL); + lbl_1_bss_810.unk04 = NULL; + lbl_1_bss_810.unk00->data = &lbl_1_bss_810; + fn_1_13C6C(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_810.unk04 != NULL) { + lbl_1_bss_810.unk04(obj, &lbl_1_bss_810); + } + } +} + +void fn_1_14868(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660062); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660064); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x66006E); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x66006F); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660069); + Hu3DModelPosSet(object->model[1], -180, 0, 800); + Hu3DModelRotSet(object->model[1], 0, 60, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 3, 0, 1); + lbl_1_data_C20 = object->model[1]; + lbl_1_data_C24[0] = object->motion[2]; + lbl_1_data_C24[1] = object->motion[2]; + HuPrcChildCreate(fn_1_123C8, 100, 8192, 0, HuPrcCurrentGet()); +} + +void fn_1_14A9C(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_7E8.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_7E8.unk00->work[0] = arg4; + lbl_1_bss_7E8.unk00->work[1] = arg1; + lbl_1_bss_7E8.unk00->work[2] = arg2+1; +} + +void fn_1_14B48(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -1000, 0, 810 }; + lbl_1_bss_810.unk04 = (void *)fn_1_1416C; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, -1, 45, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_14C40(void) +{ + omObjData *obj; + lbl_1_bss_7E8.unk00 = obj = omAddObjEx(lbl_1_bss_790, 256, 16, 16, -1, NULL); + lbl_1_bss_7E8.unk04 = NULL; + lbl_1_bss_7E8.unk00->data = &lbl_1_bss_810; + fn_1_14868(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_7E8.unk04 != NULL) { + lbl_1_bss_7E8.unk04(obj, &lbl_1_bss_7E8); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_14F6C(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x66007D); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660080); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660081); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660086); + Hu3DModelPosSet(object->model[1], -600, 0, 800); + Hu3DModelRotSet(object->model[1], 0, 60, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); + CharModelEffectNpcInit(object->model[1], object->motion[2], 1, 13); +} + +void fn_1_15134(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_7C0.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_7C0.unk00->work[0] = arg4; + lbl_1_bss_7C0.unk00->work[1] = arg1; + lbl_1_bss_7C0.unk00->work[2] = arg2+1; +} + +void fn_1_151E0(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -800, 0, 800 }; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, 60, 60, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_152C4(omObjData* arg0, StructBss16C* arg1) +{ + Vec pos = { -120, 0, 800 }; + fn_1_1DFC(arg0, 1, 2, 15, 1); + fn_1_2D00(arg0, 1, pos, 60, 60, 10); + fn_1_1DFC(arg0, 1, 1, 15, 1); + arg1->unk04 = NULL; +} + +void fn_1_153A8(void) +{ + omObjData *obj; + lbl_1_bss_7C0.unk00 = obj = omAddObjEx(lbl_1_bss_790, 256, 16, 16, -1, NULL); + lbl_1_bss_7C0.unk04 = NULL; + lbl_1_bss_7C0.unk00->data = &lbl_1_bss_7C0; + fn_1_14F6C(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_7C0.unk04 != NULL) { + lbl_1_bss_7C0.unk04(obj, &lbl_1_bss_7C0); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_15668(int arg0) +{ + int i; + int order[4]; + order[0] = 0; + for(i=1; i<4; i++) { + order[i] = order[i-1]+1; + if(order[i] >= 4) { + order[i] = 0; + } + if(arg0 == order[i]) { + lbl_1_bss_860.unk00 = i; + } + } + for(i=0; i<4; i++) { + fn_1_357C(&lbl_1_bss_860.unk30[i], order[i]); + } +} + +void fn_1_1574C(omObjData *object) +{ + int charNo = lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10; + object->model[1] = CharModelCreate(charNo, 1); + object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); + object->motion[2] = CharModelMotionCreate(charNo, 0x5F0002); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660028+charNo); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660030+charNo); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660038+charNo); + object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660000+charNo); + CharModelMotionDataClose(charNo); + Hu3DModelPosSet(object->model[1], 120, 0, 800); + Hu3DModelRotSet(object->model[1], 0, -60, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 3, 0, 1); +} + +void fn_1_15944(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_798.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_798.unk00->work[0] = arg4; + lbl_1_bss_798.unk00->work[1] = arg1; + lbl_1_bss_798.unk00->work[2] = arg2+1; +} + +void fn_1_159F0(void) +{ + omObjData *obj; + lbl_1_bss_798.unk00 = obj = omAddObjEx(lbl_1_bss_790, 256, 16, 16, -1, NULL); + lbl_1_bss_798.unk04 = NULL; + lbl_1_bss_798.unk00->data = &lbl_1_bss_798; + fn_1_1574C(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_798.unk04 != NULL) { + lbl_1_bss_798.unk04(obj, &lbl_1_bss_798); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_15CDC(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk08.x = 0; + work->unk08.y = 125; + work->unk08.z = 0; + work->unk20.x = -5; + work->unk20.y = 0; + work->unk20.z = 0; + work->unk38 = 1750; +} + +void fn_1_15D68(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + temp.unk08.x = 0; + temp.unk08.y = 100; + temp.unk08.z = 0; + temp.unk20.x = 0; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 1400; + fn_1_4FEC(work, &temp, work->unk40++, 120, 10); + +} + +void fn_1_15E58(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk14 = 0; + work->unk18 = Hu3DData[lbl_1_bss_810.unk00->model[7]].pos.y; + work->unk1C = 0; + work->unk2C = 0; + work->unk30 = 0; + work->unk34 = 0; + work->unk3C = fn_1_864(1200, 1400, work->unk40++, 240); + fn_1_3B04(work, 30); +} + +void fn_1_15F70(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + temp.unk08.x = 0; + temp.unk08.y = 160; + temp.unk08.z = 0; + temp.unk20.x = 0; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 1200; + fn_1_6004(work, &temp, work->unk40++, 10, 5); +} \ No newline at end of file diff --git a/src/REL/mstory2Dll/mg_miss.c b/src/REL/mstory2Dll/mg_miss.c new file mode 100644 index 00000000..6a9232ab --- /dev/null +++ b/src/REL/mstory2Dll/mg_miss.c @@ -0,0 +1,501 @@ +#include "REL/mstory2Dll.h" +#include "game/armem.h" +#include "game/board/main.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "game/pad.h" +#include "game/objsub.h" + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ char unk18[0x18]; + /* 0x030 */ StructFn357C unk30[4]; + /* 0x100 */ s32 unk100; +} StructBssA34; // Size 0x104 + +StructBssA34 lbl_1_bss_A34; +StructBss16C lbl_1_bss_A0C; +StructBss16C lbl_1_bss_9E4; +StructBss16C lbl_1_bss_9BC; +StructBss16C lbl_1_bss_994; +StructBss16C lbl_1_bss_96C; +Process *lbl_1_bss_968; + +void fn_1_16FC0(void); +void fn_1_17338(void); +void fn_1_1774C(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_177F8(void); +void fn_1_17C44(void); +void fn_1_17E64(s32 arg0); +void fn_1_180D8(int arg0, int arg1, int arg2, int arg3, int arg4); +void fn_1_18184(void); +void fn_1_18408(void); +void fn_1_18494(void); + +void fn_1_16060(Process* arg0, s32 arg1) +{ + lbl_1_bss_968 = arg0; + lbl_1_bss_A34.unk0C = arg1; + fn_1_C30(); + fn_1_3668(255); + fn_1_2828(lbl_1_bss_968, fn_1_18408); + fn_1_3754(); + fn_1_17E64(arg1); + HuPrcChildCreate(fn_1_17338, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_177F8, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_17C44, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_18184, 100, 8192, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_16FC0, 100, 8192, 0, HuPrcCurrentGet()); +} + +void fn_1_16178(omObjData *object) +{ + if(object->work[2]) { + object->work[2]--; + return; + } + if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + fn_1_1DFC(object, 1, object->work[1], 15, 1); + object->work[0] = object->work[1] = object->work[2] = 0; + } +} + +void fn_1_16204(void) +{ + int posX = 16; + int posY = 40; + GXColor winColor = { 0, 0, 128, 128 }; + int i; + while(1) { + fn_1_BC8(); + printWin(posX, posY, 220, 130, &winColor); + if(lbl_1_bss_A0C.unk04 == NULL) { + print8(posX, posY, 1, "PROC_MAIN -> FALSE"); + } else { + print8(posX, posY, 1, "PROC_MAIN -> TRUE"); + } + if(lbl_1_bss_9E4.unk04 == NULL) { + print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); + } else { + print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + } + if(lbl_1_bss_9BC.unk04 == NULL) { + print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); + } else { + print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + } + if(lbl_1_bss_994.unk04 == NULL) { + print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); + } else { + print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + } + if(lbl_1_bss_96C.unk04 == NULL) { + print8(posX, posY+40, 1, "PROC_PLAYER -> FALSE"); + } else { + print8(posX, posY+40, 1, "PROC_PLAYER -> TRUE"); + } + print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_A34.unk00, lbl_1_bss_A34.unk0C); + print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for(i=0; i<4; i++) { + print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_A34.unk30[i].unk00, lbl_1_bss_A34.unk30[i].unk04, lbl_1_bss_A34.unk30[i].unk08, lbl_1_bss_A34.unk30[i].unk0C, lbl_1_bss_A34.unk30[i].unk14, lbl_1_bss_A34.unk30[i].unk10); + } + } +} + +void fn_1_165B0(void) +{ + lbl_1_bss_78[0] = HuAudSeqPlay(52); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet()); + fn_1_BE8(60); +} + +void fn_1_1661C(void) +{ + lbl_1_bss_A34.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_A34.unk0C); + fn_1_1774C(2, 1, 15, 0, 1); + fn_1_180D8(2, 3, 15, 0, 1); + HuAudCharVoicePlay(lbl_1_bss_A34.unk30[lbl_1_bss_A34.unk00].unk10, 302); + fn_1_6D78(lbl_1_bss_A34.unk04, 0x1F0010, -1, lbl_1_bss_9BC.unk00->model[1]); + fn_1_1D18(lbl_1_bss_A34.unk04, 0x250004); + fn_1_1774C(1, -1, 15, 1, 0); + fn_1_1A94(lbl_1_bss_A34.unk04); +} + +int fn_1_1670C(void) +{ + int result = 0; + HuWinInsertMesSet(lbl_1_bss_A34.unk04, 0x1E003C, 3); + fn_1_1D18(lbl_1_bss_A34.unk04, 0x1E002D); + fn_1_1AFC(lbl_1_bss_A34.unk04, 5); + lbl_1_bss_A34.unk08 = fn_1_7064(0x1E0035, lbl_1_bss_A34.unk0C); + fn_1_1D18(lbl_1_bss_A34.unk08, 0x1E0035); + result = fn_1_1C64(lbl_1_bss_A34.unk08); + fn_1_1D18(lbl_1_bss_A34.unk08, 0x250004); + fn_1_71DC(lbl_1_bss_A34.unk08); + if(result) { + HuAudFXPlay(lbl_1_data_0[6][2]); + fn_1_1774C(3, 1, 15, 1, 0); + fn_1_1D18(lbl_1_bss_A34.unk04, 0x1F0012); + fn_1_1AFC(lbl_1_bss_A34.unk04, -1); + fn_1_1D18(lbl_1_bss_A34.unk04, 0x250004); + fn_1_1774C(1, -1, 15, 1, 0); + fn_1_180D8(4, 1, 15, 0, 1); + } + return result; +} + +int fn_1_168B0(void) +{ + int result = 0; + fn_1_1D18(lbl_1_bss_A34.unk04, 0x1E0005); + fn_1_1AFC(lbl_1_bss_A34.unk04, 5); + lbl_1_bss_A34.unk08 = fn_1_7064(0x1E0035, lbl_1_bss_A34.unk0C); + fn_1_1D18(lbl_1_bss_A34.unk08, 0x1E0035); + result = fn_1_1BA8(lbl_1_bss_A34.unk08, 1); + fn_1_1D18(lbl_1_bss_A34.unk08, 0x250004); + fn_1_71DC(lbl_1_bss_A34.unk08); + return result; +} + +void fn_1_16984(void) +{ + HuAudSeqFadeOut(lbl_1_bss_78[0], 3000); + fn_1_3854(&lbl_1_bss_24); + fn_1_2750(fn_1_18494); + fn_1_BE8(150); +} + +void fn_1_169D4(void) +{ + +} + +void fn_1_169D8(int arg0) +{ + omOvlHisData* his; + + if (arg0 != 0) { + HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + do { + fn_1_BC8(); + } while (WipeStatGet() != 0); + CharModelKill(-1); + his = omOvlHisGet(0); + omOvlHisChg(0, OVL_MSTORY2, 3, his->stat); + if (arg0 == 0) { + HuAudSeqAllFadeOut(1000); + HuAudSStreamAllFadeOut(1000); + GWMGAvailSet(450); + GWSystem.mg_next = 450-401; + omOvlCallEx(OVL_M450, 1, 0, 0); + } else { + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_16ACC(omObjData* arg0, StructBss16C* arg1) +{ + int mode = 0; + fn_1_165B0(); + fn_1_1661C(); + lbl_1_bss_A34.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_A34.unk0C); + while(1) { + fn_1_BC8(); + if(fn_1_1670C()) { + mode = 0; + break; + } else if(fn_1_168B0()) { + mode = 1; + break; + } + } + fn_1_1A94(lbl_1_bss_A34.unk04); + switch(mode) { + case 0: + fn_1_16984(); + break; + case 1: + break; + } + fn_1_169D8(mode); + arg1->unk04 = NULL; +} + +void fn_1_16FC0(void) +{ + omObjData *obj; + lbl_1_bss_A0C.unk00 = obj = omAddObjEx(lbl_1_bss_968, 256, 16, 16, -1, NULL); + lbl_1_bss_A0C.unk04 = (void *)fn_1_16ACC; + lbl_1_bss_A0C.unk00->data = &lbl_1_bss_A0C; + while(1) { + fn_1_BC8(); + if(lbl_1_bss_A0C.unk04 != NULL) { + lbl_1_bss_A0C.unk04(obj, &lbl_1_bss_A0C); + } + } +} + +void fn_1_17074(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660052); + object->motion[1] = Hu3DMotionIDGet(object->model[1]); + Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); + fn_1_1DFC(object, 1, 1, 0, 1); + object->model[2] = Hu3DModelCreateFile(0x660053); + object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); + object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + fn_1_1DFC(object, 2, 2, 0, 2); + object->model[5] = Hu3DModelCreateFile(0x660059); + object->motion[5] = Hu3DMotionIDGet(object->model[5]); + Hu3DModelPosSet(object->model[5], 0, 80, 460); + Hu3DModelShadowSet(object->model[5]); + fn_1_1DFC(object, 5, 5, 0, 2); + object->model[6] = Hu3DModelCreateFile(0x66005A); + object->motion[6] = Hu3DMotionIDGet(object->model[6]); + Hu3DModelHookSet(object->model[5], "koopasgbox_fix-effect_fook2", object->model[6]); + fn_1_1DFC(object, 6, 6, 0, 2); +} + +void fn_1_1727C(omObjData* arg0, StructBss16C* arg1) +{ + Hu3DData[arg0->model[5]].pos.y = fn_1_B08(80, 90, arg1->unk08++, 360); + if(arg1->unk08 >= 360) { + arg1->unk08 = 0; + } +} + +void fn_1_17338(void) +{ + omObjData *obj; + lbl_1_bss_9E4.unk00 = obj = omAddObjEx(lbl_1_bss_968, 256, 16, 16, -1, NULL); + lbl_1_bss_9E4.unk04 = (void *)fn_1_1727C; + lbl_1_bss_9E4.unk00->data = &lbl_1_bss_9E4; + fn_1_17074(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_9E4.unk04 != NULL) { + lbl_1_bss_9E4.unk04(obj, &lbl_1_bss_9E4); + } + } +} + +void fn_1_175CC(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x660062); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); + object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660066); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660069); + Hu3DModelPosSet(object->model[1], 0, 0, 200); + Hu3DModelRotSet(object->model[1], 0, 0, 0); + Hu3DModelScaleSet(object->model[1], 1.6f, 1.6f, 1.6f); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); +} + +void fn_1_1774C(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_9BC.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_9BC.unk00->work[0] = arg4; + lbl_1_bss_9BC.unk00->work[1] = arg1; + lbl_1_bss_9BC.unk00->work[2] = arg2+1; +} + +void fn_1_177F8(void) +{ + omObjData *obj; + lbl_1_bss_9BC.unk00 = obj = omAddObjEx(lbl_1_bss_968, 256, 16, 16, -1, NULL); + lbl_1_bss_9BC.unk04 = NULL; + lbl_1_bss_9BC.unk00->data = &lbl_1_bss_9E4; + fn_1_175CC(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_9BC.unk04 != NULL) { + lbl_1_bss_9BC.unk04(obj, &lbl_1_bss_9BC); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_17A70(omObjData *object) +{ + object->model[1] = Hu3DModelCreateFile(0x66007D); + object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); + Hu3DModelPosSet(object->model[1], -120, 0, 800); + Hu3DModelRotSet(object->model[1], 0, 135, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); +} + +void fn_1_17B98(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_994.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_994.unk00->work[0] = arg4; + lbl_1_bss_994.unk00->work[1] = arg1; + lbl_1_bss_994.unk00->work[2] = arg2+1; +} + +void fn_1_17C44(void) +{ + omObjData *obj; + lbl_1_bss_994.unk00 = obj = omAddObjEx(lbl_1_bss_968, 256, 16, 16, -1, NULL); + lbl_1_bss_994.unk04 = NULL; + lbl_1_bss_994.unk00->data = &lbl_1_bss_994; + fn_1_17A70(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_994.unk04 != NULL) { + lbl_1_bss_994.unk04(obj, &lbl_1_bss_994); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_17E64(s32 arg0) +{ + int i; + int order[4]; + order[0] = 0; + for(i=1; i<4; i++) { + order[i] = order[i-1]+1; + if(order[i] >= 4) { + order[i] = 0; + } + if(arg0 == order[i]) { + lbl_1_bss_A34.unk00 = i; + } + } + for(i=0; i<4; i++) { + fn_1_357C(&lbl_1_bss_A34.unk30[i], order[i]); + } +} + +void fn_1_17F48(omObjData *object) +{ + int charNo = lbl_1_bss_A34.unk30[lbl_1_bss_A34.unk00].unk10; + object->model[1] = CharModelCreate(charNo, 1); + object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); + object->motion[2] = CharModelMotionCreate(charNo, 0x5F0018); + object->motion[3] = CharModelMotionCreate(charNo, 0x5F0034); + object->motion[4] = CharModelMotionCreate(charNo, 0x5F0048); + CharModelVoiceEnableSet(charNo, object->motion[2], FALSE); + CharModelMotionDataClose(charNo); + Hu3DModelPosSet(object->model[1], 120, 0, 800); + Hu3DModelRotSet(object->model[1], 0, -135, 0); + Hu3DModelScaleSet(object->model[1], 1, 1, 1); + Hu3DModelShadowSet(object->model[1]); + fn_1_1DFC(object, 1, 1, 0, 1); +} + +void fn_1_180D8(int arg0, int arg1, int arg2, int arg3, int arg4) +{ + fn_1_1DFC(lbl_1_bss_96C.unk00, 1, arg0, arg2, arg3); + if(arg3 == 1) { + arg4 = 0; + } + lbl_1_bss_96C.unk00->work[0] = arg4; + lbl_1_bss_96C.unk00->work[1] = arg1; + lbl_1_bss_96C.unk00->work[2] = arg2+1; +} + +void fn_1_18184(void) +{ + omObjData *obj; + lbl_1_bss_96C.unk00 = obj = omAddObjEx(lbl_1_bss_968, 256, 16, 16, -1, NULL); + lbl_1_bss_96C.unk04 = NULL; + lbl_1_bss_96C.unk00->data = &lbl_1_bss_96C; + fn_1_17F48(obj); + while(1) { + fn_1_BC8(); + if(lbl_1_bss_96C.unk04 != NULL) { + lbl_1_bss_96C.unk04(obj, &lbl_1_bss_96C); + } + if(obj->work[0]) { + if(obj->work[2]) { + obj->work[2]--; + } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + fn_1_1DFC(obj, 1, obj->work[1], 15, 1); + obj->work[0] = obj->work[1] = obj->work[2] = 0; + } + } + } +} + +void fn_1_18408(void) +{ + StructBss24 *work = &lbl_1_bss_24; + work->unk08.x = 0; + work->unk08.y = 125; + work->unk08.z = 0; + work->unk20.x = -5; + work->unk20.y = 0; + work->unk20.z = 0; + work->unk38 = 1750; +} + +void fn_1_18494(void) +{ + StructBss24 *work = &lbl_1_bss_24; + StructBss24 temp; + if(work->unk40 == 50) { + fn_1_1DFC(lbl_1_bss_9E4.unk00, 5, 5, 0, 0); + fn_1_1DFC(lbl_1_bss_9E4.unk00, 6, 6, 0, 0); + HuAudFXPlay(161); + } + temp.unk08.x = 0; + temp.unk08.y = 130; + temp.unk08.z = 460; + temp.unk20.x = 0; + temp.unk20.y = 0; + temp.unk20.z = 0; + temp.unk38 = 150; + fn_1_4FEC(work, &temp, work->unk40, 180, 10); + if(work->unk40++ >= 90) { + if(work->unk40 == 91) { + lbl_1_bss_88[0] = HuAudFXPlay(32); + } + work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40-90, 90); + Hu3DData[lbl_1_bss_9E4.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40-90, 90); + } +} \ No newline at end of file diff --git a/src/REL/mstory2Dll/save.c b/src/REL/mstory2Dll/save.c new file mode 100644 index 00000000..8bdf3535 --- /dev/null +++ b/src/REL/mstory2Dll/save.c @@ -0,0 +1,118 @@ +#include "REL/mstoryDll.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/saveload.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" + +s32 lbl_1_bss_D14; +Process *lbl_1_bss_D10; + +s32 fn_1_1B560(s32 arg0) +{ + if (arg0 == 0 && _CheckFlag(FLAG_ID_MAKE(0, 2))) { + return 1; + } + if (arg0 == 1 && _CheckFlag(FLAG_ID_MAKE(0, 3))) { + return 1; + } + if (arg0 == 2 && _CheckFlag(FLAG_ID_MAKE(0, 4))) { + return 1; + } + if (arg0 == 3 && _CheckFlag(FLAG_ID_MAKE(0, 5))) { + return 1; + } + if (arg0 == 4 && _CheckFlag(FLAG_ID_MAKE(0, 6))) { + return 1; + } + if (arg0 == 5 && _CheckFlag(FLAG_ID_MAKE(0, 7))) { + return 1; + } + return 0; +} + +void fn_1_1B64C(void) +{ + float sp8[2]; + s32 temp_r30; + s32 var_r29; + s32 var_r31; + + temp_r30 = 1; + Hu3DAllKill(); + HuSprClose(); + HuSprInit(); + if (SLSaveFlagGet() == 0) { + lbl_1_bss_D14 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } + } + espInit(); + HuPrcVSleep(); + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_WIN, 32), 5000, 0); + espPosSet(var_r29, 288.0f, 240.0f); + espAttrReset(var_r29, 4); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + if (SLSaveFlagGet() == 1) { + HuWinInit(1); + HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(30, 22)); + var_r31 = HuWinExCreateStyled(-10000.0f, 150.0f, sp8[0], sp8[1], -1, 2); + winData[var_r31].active_pad = 1; + HuWinAttrSet(var_r31, 0x10); + HuWinExAnimIn(var_r31); + HuWinMesSet(var_r31, MAKE_MESSID(30, 22)); + temp_r30 = HuWinChoiceGet(var_r31, 0); + HuWinExAnimOut(var_r31); + HuWinExCleanup(var_r31); + if (SLSaveFlagGet() == 1 && temp_r30 == 0) { + if(omovlstat) { + GWGameStat.story_continue = 0; + } + SLCommonSet(); + SLSaveBoardStory(); + SLSave(); + } + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_D14 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_1B870(void) +{ + _SetFlag(9); + HuPrcChildCreate(fn_1_1B64C, 100, 0x2000, 0, HuPrcCurrentGet()); + do { + fn_1_BC8(); + } while (lbl_1_bss_D14 != 1); + if(omovlstat == 0) { + omOvlGotoEx(OVL_MSTORY2, 1, 4, 0); + } else { + omOvlReturnEx(omovlhisidx, 1); + } + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_1B90C(Process *arg0) +{ + lbl_1_bss_D10 = arg0; + HuPrcChildCreate(fn_1_1B870, 100, 0x2000, 0, HuPrcCurrentGet()); +} diff --git a/src/REL/mstory4Dll/main.c b/src/REL/mstory4Dll/main.c index 1bb809d0..e5fce452 100644 --- a/src/REL/mstory4Dll/main.c +++ b/src/REL/mstory4Dll/main.c @@ -583,7 +583,7 @@ void fn_1_13A0(void) } } character = GWPlayerCfg[0].character; - GWSystem.unk0B[1] = character; + GWSystem.unk0C = character; GWPlayer[0].character = GWPlayerCfg[0].character; GWPlayer[1].character = GWPlayerCfg[1].character; GWPlayer[2].character = GWPlayerCfg[2].character; From f79a3f88b184bc2b23c6ef5d6f23d03142107f89 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sat, 11 Jan 2025 15:50:52 +0100 Subject: [PATCH 114/178] Fix mstory2 data locality and apply DATA_MAKE_NUM macros (#522) * Make rodata and strings local in mstory2 * use DATA_MAKE_NUM macros --- config/GMPE01_00/rels/mstory2Dll/symbols.txt | 736 +++++------ src/REL/m418Dll/main.c | 1149 ++++++++++-------- src/REL/m420dll/player.c | 113 +- src/REL/m424Dll/claw.c | 330 ++--- src/REL/m430Dll/main.c | 2 +- src/REL/m430Dll/player.c | 43 +- src/REL/m430Dll/water.c | 36 +- src/REL/m449Dll/main.c | 3 +- src/REL/m455Dll/main.c | 8 +- src/REL/m456Dll/main.c | 22 +- src/REL/m458Dll/main.c | 18 +- src/REL/m461Dll/main.c | 979 +++++++-------- src/REL/mstory2Dll/board_clear.c | 210 ++-- src/REL/mstory2Dll/board_entrance.c | 216 ++-- src/REL/mstory2Dll/board_miss.c | 319 +++-- src/REL/mstory2Dll/ending.c | 200 ++- src/REL/mstory2Dll/mg_clear.c | 367 +++--- src/REL/mstory2Dll/mg_miss.c | 175 +-- 18 files changed, 2589 insertions(+), 2337 deletions(-) diff --git a/config/GMPE01_00/rels/mstory2Dll/symbols.txt b/config/GMPE01_00/rels/mstory2Dll/symbols.txt index 351e9c5d..f0c05621 100644 --- a/config/GMPE01_00/rels/mstory2Dll/symbols.txt +++ b/config/GMPE01_00/rels/mstory2Dll/symbols.txt @@ -265,398 +265,398 @@ fn_1_1B870 = .text:0x0001B870; // type:function size:0x9C fn_1_1B90C = .text:0x0001B90C; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte -lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:float -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0xC data:4byte -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:0xC data:4byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +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:0xC scope:local data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte -lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string -lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string -lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string -lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 scope:local data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 scope:local data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 scope:local data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 scope:local data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF scope:local lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 -lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string -lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string -lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 scope:local data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 scope:local data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 scope:local data:string jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local -lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string -lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string -lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string -lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string -lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string -lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string -lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string -lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string -lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string -lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A scope:local data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A scope:local data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE scope:local data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 scope:local data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 scope:local data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 scope:local data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 scope:local data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 scope:local data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 scope:local data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 scope:local lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 lbl_1_data_328 = .data:0x00000328; // type:object size:0x40 lbl_1_data_368 = .data:0x00000368; // type:object size:0x20 data:float -lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string -lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 data:string +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 scope:local data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 scope:local data:string lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x2C lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte -lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string -lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string -lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string -lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string -lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string -lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string -lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string -lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string -lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string -lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string -lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string -lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string -lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string -lbl_1_data_50C = .data:0x0000050C; // type:object size:0xF data:string -lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string -lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string -lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string -lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string -lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string -lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string -lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string -lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string -lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string -lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string -lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string -lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string -lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string -lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 scope:local data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 scope:local data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 scope:local data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 scope:local data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 scope:local data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 scope:local data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 scope:local data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 scope:local data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 scope:local data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 scope:local data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 scope:local data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA scope:local data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C scope:local data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D scope:local data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0xF scope:local data:string +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 scope:local data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 scope:local data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 scope:local data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 scope:local data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 scope:local data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 scope:local data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 scope:local data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 scope:local data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 scope:local data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 scope:local data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA scope:local data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C scope:local data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D scope:local data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 scope:local data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C scope:local data:string lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 data:float lbl_1_data_698 = .data:0x00000698; // type:object size:0x1C lbl_1_data_6B4 = .data:0x000006B4; // type:object size:0x20 -lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string -lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string -lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string -lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string -lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string -lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string -lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string -lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string -lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string -lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string -lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string -lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string -lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string -lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 scope:local data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 scope:local data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 scope:local data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 scope:local data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 scope:local data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 scope:local data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 scope:local data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 scope:local data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 scope:local data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 scope:local data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA scope:local data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C scope:local data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D scope:local data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 scope:local data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C scope:local lbl_1_data_81C = .data:0x0000081C; // type:object size:0x30 lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte -lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string -lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string -lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string -lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string -lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string -lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string -lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string -lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string -lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string -lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string -lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string -lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string -lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string -lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string -lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string -lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string -lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string -lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0x7 data:string -lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string -lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string -lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string -lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string -lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string -lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string -lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string -lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string -lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string -lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string -lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string -lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string -lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string -lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string -lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x1C data:string +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 scope:local data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 scope:local data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 scope:local data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 scope:local data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 scope:local data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 scope:local data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 scope:local data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 scope:local data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 scope:local data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 scope:local data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 scope:local data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA scope:local data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C scope:local data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D scope:local data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C scope:local data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 scope:local data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 scope:local data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0x7 scope:local data:string +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 scope:local data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 scope:local data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 scope:local data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 scope:local data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 scope:local data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 scope:local data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 scope:local data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 scope:local data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 scope:local data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 scope:local data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA scope:local data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C scope:local data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D scope:local data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 scope:local data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x1C scope:local data:string lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte -lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string -lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string -lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string -lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string -lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string -lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string -lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string -lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string -lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string -lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string -lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string -lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string -lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string -lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string -lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string -lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string -lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string -lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string -lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string -lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string -lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string -lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 scope:local data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 scope:local data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 scope:local data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 scope:local data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 scope:local data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 scope:local data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 scope:local data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 scope:local data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 scope:local data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 scope:local data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 scope:local data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA scope:local data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C scope:local data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D scope:local data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 scope:local data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 scope:local data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 scope:local data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 scope:local data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 scope:local data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 scope:local data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 scope:local data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 scope:local data:string lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 -lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x20 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x44 data:float diff --git a/src/REL/m418Dll/main.c b/src/REL/m418Dll/main.c index c2794f39..38b547ca 100644 --- a/src/REL/m418Dll/main.c +++ b/src/REL/m418Dll/main.c @@ -1,4 +1,3 @@ -#include "math.h" #include "ext_math.h" #include "game/chrman.h" #include "game/hsfman.h" @@ -6,17 +5,18 @@ #include "game/objsub.h" #include "game/pad.h" #include "game/wipe.h" +#include "math.h" #include "REL/m418Dll.h" // types typedef struct M418DllUnkStruct2 { - omObjData* unk0; + omObjData *unk0; s32 unk4[4]; } M418DllUnkStruct2; // sizeof 0x14 typedef struct M418DllUnkStruct3 { - omObjData* unk0; + omObjData *unk0; s32 unk4; s32 unk8; s32 unkC; @@ -41,7 +41,7 @@ typedef struct M418DllUnkStruct3 { } M418DllUnkStruct3; // sizeof 0x60 typedef struct M418DllUnkStruct4 { - omObjData* unk0; + omObjData *unk0; f32 unk4; f32 unk8; s32 unkC; @@ -69,7 +69,7 @@ typedef struct M418DllUnkStruct6 { } M418DllUnkStruct6; // sizeof 0x44 typedef struct M418DllWorkStruct { - omObjData* unk0; + omObjData *unk0; Vec unk4; Vec unk10[10]; s32 unk88; @@ -95,18 +95,20 @@ s32 lbl_1_bss_10; s32 lbl_1_bss_C; s32 lbl_1_bss_8; s32 lbl_1_bss_4; -Process* lbl_1_bss_0; +Process *lbl_1_bss_0; // data s32 lbl_1_data_0[2] = { -1, -1 }; s32 lbl_1_data_8 = -1; -void fn_1_0(void) { +void fn_1_0(void) +{ Hu3DGLightCreate(-2500.0f, 5000.0f, 5000.0f, 0.0f, -1.0f, -1.0f, 0xFF, 0xD8, 0xA0); } -void fn_1_74(void) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; +void fn_1_74(void) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; Vec sp20 = { 0.0f, 600.0f, 600.0f }; @@ -115,15 +117,17 @@ void fn_1_74(void) { var_r31->rot.x++; } -void fn_1_158(s32 arg0, f32 arg8) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; - +void fn_1_158(s32 arg0, f32 arg8) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; + var_r31->unk3C[arg0] = arg8; } -f32 fn_1_180(s32 arg0) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; - +f32 fn_1_180(s32 arg0) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; + if (var_r31->unk3C[arg0] != 0.0f) { var_r31->unk3C[arg0] *= -0.9f; if (var_r31->unk3C[arg0] >= -0.5f) { @@ -135,19 +139,21 @@ f32 fn_1_180(s32 arg0) { return var_r31->unk3C[arg0]; } -void fn_1_248(M418DllFunc arg0) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; - +void fn_1_248(M418DllFunc arg0) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; + var_r31->unk0 = arg0; } -void fn_1_268(omObjData* object) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; - +void fn_1_268(omObjData *object) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; + if (var_r31->unk0 != NULL) { var_r31->unk0(); } - + Center.x = var_r31->center.x + fn_1_180(0); Center.y = var_r31->center.y + fn_1_180(1); Center.z = var_r31->center.z + fn_1_180(2); @@ -157,8 +163,9 @@ void fn_1_268(omObjData* object) { CZoom = var_r31->zoom; } -void fn_1_500(void) { - M418DllUnkStruct* var_r31; +void fn_1_500(void) +{ + M418DllUnkStruct *var_r31; Hu3DCameraCreate(1); Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); Hu3DCameraPerspectiveSet(1, 40.0f, 0.1f, 17500.0f, 1.2f); @@ -168,7 +175,8 @@ void fn_1_500(void) { omAddObjEx(lbl_1_bss_0, 0x7FD9, 0, 0, -1, fn_1_268); } -void fn_1_618(void) { +void fn_1_618(void) +{ Vec sp20 = { -1500.0f, 2500.0f, 1000.0f }; Vec sp14 = { 0.0f, 0.0f, 0.0f }; Vec sp8 = { 0.0f, 1.0f, 0.0f }; @@ -178,30 +186,34 @@ void fn_1_618(void) { Hu3DShadowPosSet(&sp20, &sp8, &sp14); } -void fn_1_6DC(s32 arg0) { +void fn_1_6DC(s32 arg0) +{ if (lbl_1_bss_8 == 0) { lbl_1_bss_8 = 1; lbl_1_bss_4 = arg0 * 0x3C; } } -s32 fn_1_714(void) { +s32 fn_1_714(void) +{ s32 var_r31 = 0; - + if (lbl_1_bss_8 == 3) { var_r31 = 1; } return var_r31; } -void fn_1_748(void) { +void fn_1_748(void) +{ if (lbl_1_bss_8 == 2) { lbl_1_bss_8 = 3; lbl_1_bss_4 = 30; } } -void fn_1_780(omObjData* object) { +void fn_1_780(omObjData *object) +{ switch (lbl_1_bss_8) { case 1: if (lbl_1_data_8 == -1) { @@ -230,18 +242,21 @@ void fn_1_780(omObjData* object) { } } -s32 fn_1_950(s32 arg0) { - +s32 fn_1_950(s32 arg0) +{ + if ((rand8() % arg0) == 0) { return 1; - } else { + } + else { return 0; } } -void fn_1_998(omObjData* object) { +void fn_1_998(omObjData *object) +{ s32 var_r31; - M418DllUnkStruct2* var_r30 = &lbl_1_bss_1E0; + M418DllUnkStruct2 *var_r30 = &lbl_1_bss_1E0; for (var_r31 = 0; var_r31 < 3; var_r31++) { switch (var_r30->unk4[var_r31]) { @@ -262,9 +277,10 @@ void fn_1_998(omObjData* object) { } } -void fn_1_AA8(omObjData* object) { +void fn_1_AA8(omObjData *object) +{ Mtx sp10; - char* sp8[2] = { "scene02-dai1_null", "scene02-dai2_null1" }; + char *sp8[2] = { "scene02-dai1_null", "scene02-dai2_null1" }; s32 var_r31; for (var_r31 = 0; var_r31 < 2; var_r31++) { @@ -274,13 +290,14 @@ void fn_1_AA8(omObjData* object) { object->func = fn_1_998; } -void fn_1_B4C(omObjData* object) { +void fn_1_B4C(omObjData *object) +{ s32 sp8[3] = { 0x310021, 0x310022, 0x310023 }; s32 var_r30; object->model[0] = Hu3DModelCreateFile(0x310011); Hu3DModelShadowMapSet(object->model[0]); - + for (var_r30 = 1; var_r30 < 4; var_r30++) { object->model[var_r30] = Hu3DModelCreateFile(sp8[var_r30 - 1]); object->motion[var_r30] = Hu3DMotionIDGet(object->model[var_r30]); @@ -290,7 +307,7 @@ void fn_1_B4C(omObjData* object) { } object->model[4] = Hu3DModelCreateFile(0x310016); object->model[5] = Hu3DModelCreateFile(0x310018); - + for (var_r30 = 6; var_r30 < 8; var_r30++) { object->model[var_r30] = Hu3DModelCreateFile(0x310026); object->motion[var_r30] = Hu3DMotionIDGet(object->model[var_r30]); @@ -298,7 +315,7 @@ void fn_1_B4C(omObjData* object) { Hu3DModelLayerSet(object->model[var_r30], 1); fn_1_ABC4(object, var_r30, var_r30, 0, 1); } - + for (var_r30 = 8; var_r30 < 11; var_r30++) { object->model[var_r30] = Hu3DModelCreateFile(0x31002A); object->motion[var_r30] = Hu3DJointMotion(object->model[var_r30], HuDataSelHeapReadNum(0x31002E, MEMORY_DEFAULT_NUM, HEAP_DATA)); @@ -308,24 +325,26 @@ void fn_1_B4C(omObjData* object) { object->func = fn_1_AA8; } -void fn_1_E74(omObjData* object) { +void fn_1_E74(omObjData *object) +{ Mtx sp18; f32 var_f31; - M418DllUnkStruct4* temp_r30; - M418DllUnkStruct4* temp_r29; - M418DllUnkStruct3* temp_r28; - M418DllUnkStruct4* temp_r27; - M418DllUnkStruct6* temp_r26; - HsfObject* temp_r25; - ModelData* temp_r24; + M418DllUnkStruct4 *temp_r30; + M418DllUnkStruct4 *temp_r29; + M418DllUnkStruct3 *temp_r28; + M418DllUnkStruct4 *temp_r27; + M418DllUnkStruct6 *temp_r26; + HsfObject *temp_r25; + ModelData *temp_r24; temp_r26 = &lbl_1_bss_3EC; temp_r28 = &lbl_1_bss_26C[temp_r26->unk0]; temp_r30 = &lbl_1_bss_170[object->work[0]]; if (object->work[1] == 0) { fn_1_ABC4(object, 2, 2, 0, 2); - } else if (object->work[1] == 1) { + } + else if (object->work[1] == 1) { Hu3DModelAttrReset(object->model[3], 1); Hu3DModelAttrReset(object->model[4], 1); Hu3DModelAttrReset(object->model[5], 1); @@ -335,14 +354,16 @@ void fn_1_E74(omObjData* object) { fn_1_ABC4(object, 4, 4, 0, 1); object->work[1] = 2; lbl_1_bss_240[5] = HuAudFXPlay(0x5D6); - } else if (object->work[1] == 2) { + } + else if (object->work[1] == 2) { if (Hu3DMotionEndCheck(object->model[3]) != 0) { object->work[1] = 3; object->work[2] = 0; temp_r30->unkC = 1; HuAudFXFadeOut(lbl_1_bss_240[5], 0x3E8); } - } else if (object->work[1] == 3) { + } + else if (object->work[1] == 3) { temp_r29 = &lbl_1_bss_170[object->work[0]]; temp_r29->unkC = 2; temp_r29->unk4 += 1.0f; @@ -353,7 +374,8 @@ void fn_1_E74(omObjData* object) { if (temp_r29->unk10 == 1) { object->work[1] = 5; temp_r29->unk8 = 0.0f; - } else { + } + else { HuAudFXPlay(0x5D2); object->work[1] = 4; Hu3DModelObjMtxGet(object->model[0], "taihou-null4", sp18); @@ -363,21 +385,24 @@ void fn_1_E74(omObjData* object) { } temp_r29->unkC = 3; } - } else if (object->work[1] == 4) { - if ((Hu3DMotionEndCheck(object->model[5]) != 0) || (temp_r30->unk10 == 1)) { - object->work[1] = 99; - Hu3DModelAttrSet(object->model[3], 1); - Hu3DModelAttrSet(object->model[4], 1); - Hu3DModelAttrSet(object->model[5], 1); - } - } else if (object->work[1] == 5 || object->work[1] == 6) { + } + else if (object->work[1] == 4) { + if ((Hu3DMotionEndCheck(object->model[5]) != 0) || (temp_r30->unk10 == 1)) { + object->work[1] = 99; + Hu3DModelAttrSet(object->model[3], 1); + Hu3DModelAttrSet(object->model[4], 1); + Hu3DModelAttrSet(object->model[5], 1); + } + } + else if (object->work[1] == 5 || object->work[1] == 6) { if (temp_r30->unk8 > 1.7f) { temp_r30->unk8 = 1.7f; } if (object->work[1] == 5) { var_f31 = temp_r30->unk8 * temp_r30->unk8 * (temp_r30->unk8 >= 0.0f ? -3.5f : 3.5f); temp_r30->unk4 += var_f31; - } else { + } + else { var_f31 = temp_r30->unk8 * temp_r30->unk8 * (temp_r30->unk8 >= 0.0f ? -1.25f : 1.25f); temp_r30->unk4 += var_f31; } @@ -388,7 +413,8 @@ void fn_1_E74(omObjData* object) { fn_1_158(1, 4.0f); omVibrate(temp_r28->unk4, 0xC, 6, 6); HuAudFXPlay(0x5DA); - } else { + } + else { if ((temp_r30->unk4 <= 0.0f) && (object->work[1] == 6)) { Hu3DModelObjMtxGet(object->model[0], "taihou-null4", sp18); Hu3DModelPosSet(object->model[6], sp18[0][3], sp18[1][3], sp18[2][3]); @@ -405,7 +431,7 @@ void fn_1_E74(omObjData* object) { temp_r30->unk8 += 0.11f; } if (object->work[1] != 0) { - const char* sp8[4] = { "doukasen-null_B", "doukasen-null_A", "doukasen-null_X", "doukasen-null_Y" }; + const char *sp8[4] = { "doukasen-null_B", "doukasen-null_A", "doukasen-null_X", "doukasen-null_Y" }; Hu3DModelObjMtxGet(object->model[3], sp8[object->work[0]], sp18); Hu3DModelPosSet(object->model[4], sp18[0][3], sp18[1][3], sp18[2][3]); } @@ -416,12 +442,13 @@ void fn_1_E74(omObjData* object) { temp_r24->rot.x = temp_r27->unk4; } -void fn_1_14F0(omObjData* arg0) { +void fn_1_14F0(omObjData *arg0) +{ s32 var_r30 = arg0->work[0]; s32 sp28[4] = { 0x310012, 0x310013, 0x310015, 0x310014 }; s32 sp18[4] = { 0x310019, 0x31001A, 0x31001B, 0x31001C }; s32 sp8[4] = { 0x31001D, 0x31001E, 0x31001F, 0x310020 }; - + arg0->model[0] = Hu3DModelCreateFile(0x310010); omSetTra(arg0, -540.0f + (360.0f * var_r30), 115.0f, -900.0f); arg0->model[1] = Hu3DModelCreateFile(sp28[var_r30]); @@ -449,8 +476,9 @@ void fn_1_14F0(omObjData* arg0) { arg0->func = fn_1_E74; } -void fn_1_18AC(omObjData* object) { - M418DllUnkStruct4* var_r31; +void fn_1_18AC(omObjData *object) +{ + M418DllUnkStruct4 *var_r31; var_r31 = &lbl_1_bss_11C[object->work[0]]; if (var_r31->unk14 == 0.0f) { @@ -458,8 +486,9 @@ void fn_1_18AC(omObjData* object) { } } -s32 fn_1_18FC(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { - M418DllUnkStruct4* temp_r30; +s32 fn_1_18FC(omObjData *object, Vec arg1, f32 arg8, f32 arg9) +{ + M418DllUnkStruct4 *temp_r30; s32 var_r28; f32 var_f31; f32 var_f30; @@ -476,7 +505,8 @@ s32 fn_1_18FC(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { var_f27 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); if (var_f27 <= 15.0f) { var_f31 = var_f30 = 0.0f; - } else { + } + else { var_f31 = 55.0f * (var_f31 / var_f27); var_f30 = 55.0f * (var_f30 / var_f27); } @@ -486,7 +516,8 @@ s32 fn_1_18FC(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { var_f27 = arg9 * (sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)) / 72.0f); if (var_f27 >= arg9) { var_f27 = arg9; - } else if (var_f27 <= 1.0f) { + } + else if (var_f27 <= 1.0f) { var_f31 = var_f30 = var_f27 = 0.0f; var_r28 = 1; } @@ -501,7 +532,8 @@ s32 fn_1_18FC(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { if (object->rot.y - var_f26 < -180.0f) { object->rot.y += 360.0f; } - } else { + } + else { if (object->rot.y - var_f26 > 180.0f) { object->rot.y -= 360.0f; } @@ -529,32 +561,27 @@ s32 fn_1_18FC(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { } if (var_f27 > 0.0f) { fn_1_AD14(object, 0, 1, 10, 1); - } else { + } + else { fn_1_AD14(object, 0, 0, 10, 1); } return var_r28; } -s32 fn_1_20B0(omObjData* object, Vec arg1, f32 arg8, f32 arg9, s32 arg2) { - if (arg2 == 1) fn_1_18AC(object); +s32 fn_1_20B0(omObjData *object, Vec arg1, f32 arg8, f32 arg9, s32 arg2) +{ + if (arg2 == 1) + fn_1_18AC(object); return fn_1_18FC(object, arg1, arg9, arg8); } -Vec lbl_1_data_8C[9] = { - { 140.0f, 0.0f, -90.0f }, - { -200.0f, 0.0f, 50.0f }, - { -300.0f, 0.0f, -150.0f }, - { -250.0f, 0.0f, -500.0f }, - { 0.0f, 0.0f, 150.0f }, - { 700.0f, 0.0f, 50.0f }, - { 1000.0f, -50.0f, 500.0f }, - { 1000.0f, -100.0f, 500.0f }, - { 1000.0f, -150.0f, 500.0f } -}; +Vec lbl_1_data_8C[9] = { { 140.0f, 0.0f, -90.0f }, { -200.0f, 0.0f, 50.0f }, { -300.0f, 0.0f, -150.0f }, { -250.0f, 0.0f, -500.0f }, + { 0.0f, 0.0f, 150.0f }, { 700.0f, 0.0f, 50.0f }, { 1000.0f, -50.0f, 500.0f }, { 1000.0f, -100.0f, 500.0f }, { 1000.0f, -150.0f, 500.0f } }; -s32 fn_1_2178(omObjData* object) { +s32 fn_1_2178(omObjData *object) +{ s32 var_r30; - + switch (object->work[1]) { case 1: object->work[2] = 0; @@ -580,7 +607,7 @@ s32 fn_1_2178(omObjData* object) { object->work[2] = 0; } break; - + case 2: object->work[2] = 0; object->work[1] = 0x14; @@ -646,10 +673,11 @@ s32 fn_1_2178(omObjData* object) { } } -void fn_1_2894(omObjData* object) { +void fn_1_2894(omObjData *object) +{ Mtx sp3C; Mtx spC; - M418DllUnkStruct6* sp8; + M418DllUnkStruct6 *sp8; f32 temp_f31; sp8 = &lbl_1_bss_3EC; @@ -661,7 +689,8 @@ void fn_1_2894(omObjData* object) { fn_1_2178(object); } -void fn_1_29A0(omObjData* object) { +void fn_1_29A0(omObjData *object) +{ u32 temp_r30; temp_r30 = object->work[0]; @@ -683,8 +712,9 @@ void fn_1_29A0(omObjData* object) { object->func = fn_1_2894; } -void fn_1_2BC4(Vec arg0) { - M418DllWorkStruct* var_r31 = &lbl_1_bss_68; +void fn_1_2BC4(Vec arg0) +{ + M418DllWorkStruct *var_r31 = &lbl_1_bss_68; var_r31->unk4.x = arg0.x; var_r31->unk4.y = arg0.y; var_r31->unk4.z = arg0.z; @@ -692,9 +722,10 @@ void fn_1_2BC4(Vec arg0) { var_r31->unk0->work[0] = 1; } -void fn_1_2C0C(omObjData* object) { - ModelData* temp_r28; - M418DllWorkStruct* var_r31 = &lbl_1_bss_68; +void fn_1_2C0C(omObjData *object) +{ + ModelData *temp_r28; + M418DllWorkStruct *var_r31 = &lbl_1_bss_68; s32 var_r30; switch (object->work[0]) { @@ -726,7 +757,8 @@ void fn_1_2C0C(omObjData* object) { } } -void fn_1_3054(omObjData* object) { +void fn_1_3054(omObjData *object) +{ s32 var_r30; for (var_r30 = 1; var_r30 < 11; var_r30++) { @@ -738,8 +770,9 @@ void fn_1_3054(omObjData* object) { object->func = fn_1_2C0C; } -void fn_1_3138(void) { - M418DllUnkStruct3* temp_r31; +void fn_1_3138(void) +{ + M418DllUnkStruct3 *temp_r31; s32 var_r30; for (var_r30 = 0; var_r30 < 4; var_r30++) { @@ -748,13 +781,15 @@ void fn_1_3138(void) { temp_r31->unk8 = GWPlayerCfg[temp_r31->unk4].group; if (temp_r31->unk8 == 0) { temp_r31->unk8 = 0; - } else { + } + else { temp_r31->unk8 = 1; } temp_r31->unkC = GWPlayerCfg[temp_r31->unk4].iscom; if (temp_r31->unkC != 0) { temp_r31->unk10 = GWPlayerCfg[temp_r31->unk4].diff; - } else { + } + else { temp_r31->unk10 = 0; } temp_r31->unk14 = GWPlayerCfg[temp_r31->unk4].character; @@ -762,23 +797,16 @@ void fn_1_3138(void) { } } -char* lbl_1_data_1C0[8] = { - "test11_tex_we-itemhook-r", - "test11_tex_we-itemhook-r", - "test11_tex_we-itemhook-r", - "test11_tex_we-itemhook-r", - "test11_tex_we-itemhook-r", - "test11_tex_we-itemhook-r", - "test11_tex_we-itemhook-r", - "test11_tex_we-itemhook-r" -}; +char *lbl_1_data_1C0[8] = { "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r", + "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r", "test11_tex_we-itemhook-r" }; -void fn_1_3240(omObjData* object) { +void fn_1_3240(omObjData *object) +{ Mtx sp14; Vec sp8; - M418DllUnkStruct3* temp_r28; - ModelData* temp_r30; - M418DllWorkStruct* var_r29; + M418DllUnkStruct3 *temp_r28; + ModelData *temp_r30; + M418DllWorkStruct *var_r29; temp_r30 = &Hu3DData[object->model[11]]; temp_r28 = &lbl_1_bss_26C[object->work[0]]; @@ -801,12 +829,13 @@ void fn_1_3240(omObjData* object) { Hu3DModelAttrSet(object->model[11], 1); object->work[1] = object->work[2] = 0; } - break; + break; } } -void fn_1_3408(omObjData* object) { - M418DllUnkStruct3* temp_r31; +void fn_1_3408(omObjData *object) +{ + M418DllUnkStruct3 *temp_r31; temp_r31 = &lbl_1_bss_26C[object->work[0]]; if (temp_r31->unk1C == 0) { @@ -814,14 +843,15 @@ void fn_1_3408(omObjData* object) { } } -void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { +void fn_1_3444(omObjData *object, Vec arg1, f32 arg8, f32 arg9) +{ s32 sp24; f32 sp20; f32 sp1C; f32 sp18; - M418DllUnkStruct3* temp_r28; - M418DllUnkStruct3* temp_r30; - + M418DllUnkStruct3 *temp_r28; + M418DllUnkStruct3 *temp_r30; + f32 var_f31; f32 var_f30; f32 temp_f29; @@ -842,7 +872,8 @@ void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { var_f24 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); if (var_f24 <= 30.0f) { var_f31 = var_f30 = 0.0f; - } else { + } + else { var_f31 = 55.0f * (var_f31 / var_f24); var_f30 = 55.0f * (var_f30 / var_f24); } @@ -852,7 +883,8 @@ void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { var_f24 = arg9 * (sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)) / 72.0f); if (var_f24 >= arg9) { var_f24 = arg9; - } else if (var_f24 <= 1.0f) { + } + else if (var_f24 <= 1.0f) { var_f31 = var_f30 = var_f24 = 0.0f; } if (var_f31 != 0.0f || var_f30 != 0.0f || arg8 >= 0.0f) { @@ -866,7 +898,8 @@ void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { if (object->rot.y - var_f23 < -180.0f) { object->rot.y += 360.0f; } - } else { + } + else { if (object->rot.y - var_f23 > 180.0f) { object->rot.y -= 360.0f; } @@ -881,7 +914,8 @@ void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { sp18 = object->trans.z - (50.0 * sind(object->rot.y - 90.0f)); for (var_r29 = 0; var_r29 < 4; var_r29++) { - if (var_r29 == object->work[0]) continue; + if (var_r29 == object->work[0]) + continue; temp_r28 = &lbl_1_bss_26C[var_r29]; temp_f29 = temp_r28->unk0->trans.x; temp_f28 = temp_r28->unk0->trans.z; @@ -925,8 +959,9 @@ void fn_1_3444(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { fn_1_AD14(object, 0, 0, 10, 1); } -void fn_1_3EB0(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { - M418DllUnkStruct3* temp_r30; +void fn_1_3EB0(omObjData *object, Vec arg1, f32 arg8, f32 arg9) +{ + M418DllUnkStruct3 *temp_r30; s32 sp10; f32 var_f31; f32 var_f30; @@ -943,7 +978,8 @@ void fn_1_3EB0(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { var_f27 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); if (var_f27 <= 30.0f) { var_f31 = var_f30 = 0.0f; - } else { + } + else { var_f31 = 55.0f * (var_f31 / var_f27); var_f30 = 55.0f * (var_f30 / var_f27); } @@ -953,7 +989,8 @@ void fn_1_3EB0(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { var_f27 = arg9 * (sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)) / 72.0f); if (var_f27 >= arg9) { var_f27 = arg9; - } else if (var_f27 <= 1.0f) { + } + else if (var_f27 <= 1.0f) { var_f31 = var_f30 = var_f27 = 0.0f; } if (var_f31 != 0.0f || var_f30 != 0.0f || arg8 >= 0.0f) { @@ -967,7 +1004,8 @@ void fn_1_3EB0(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { if (object->rot.y - var_f26 < -180.0f) { object->rot.y += 360.0f; } - } else { + } + else { if (object->rot.y - var_f26 > 180.0f) { object->rot.y -= 360.0f; } @@ -995,29 +1033,28 @@ void fn_1_3EB0(omObjData* object, Vec arg1, f32 arg8, f32 arg9) { } if (temp_r30->unk1C != 0) { fn_1_AD14(object, 0, 3, 10, 0); - } else if (var_f27 >= 6.75f) { + } + else if (var_f27 >= 6.75f) { fn_1_AD14(object, 0, 2, 10, 1); - } else if (var_f27 > 0.0f) { + } + else if (var_f27 > 0.0f) { fn_1_AD14(object, 0, 1, 10, 1); - } else { + } + else { fn_1_AD14(object, 0, 0, 10, 1); } } -s32 lbl_1_data_1E0[4][2] = { - { -1, 127 }, - { -1, 127 }, - { -1, 127 }, - { -1, 127 } -}; +s32 lbl_1_data_1E0[4][2] = { { -1, 127 }, { -1, 127 }, { -1, 127 }, { -1, 127 } }; -void fn_1_46C4(omObjData* object) { +void fn_1_46C4(omObjData *object) +{ s32 sp8; - M418DllUnkStruct3* temp_r31; + M418DllUnkStruct3 *temp_r31; sp8 = 0; temp_r31 = &lbl_1_bss_26C[object->work[0]]; - + switch (temp_r31->unk24) { case 0: temp_r31->unk2C = object->scale.x; @@ -1090,15 +1127,16 @@ void fn_1_46C4(omObjData* object) { } } -void fn_1_4C84(omObjData* object) { +void fn_1_4C84(omObjData *object) +{ Mtx sp14; Vec sp8; f32 var_f31; - M418DllUnkStruct3* temp_r26; - M418DllWorkStruct* var_r27; - M418DllUnkStruct3* temp_r30; - ModelData* temp_r28; - ModelData* temp_r29; + M418DllUnkStruct3 *temp_r26; + M418DllWorkStruct *var_r27; + M418DllUnkStruct3 *temp_r30; + ModelData *temp_r28; + ModelData *temp_r29; s32 temp_r0; u32 temp_r3; @@ -1108,7 +1146,8 @@ void fn_1_4C84(omObjData* object) { temp_r29 = &Hu3DData[object->model[12]]; if ((temp_r30->unk14 == 7) || (temp_r30->unk14 == 5)) { temp_r29->rot.y = -object->rot.y - 360.0f; - } else { + } + else { temp_r29->rot.y = -object->rot.y - 90.0f; } temp_r29->scale.x = 0.35f * temp_r30->unk3C; @@ -1119,20 +1158,21 @@ void fn_1_4C84(omObjData* object) { fn_1_46C4(object); } -void fn_1_4F60(omObjData* object) { - M418DllUnkStruct3* temp_r30; +void fn_1_4F60(omObjData *object) +{ + M418DllUnkStruct3 *temp_r30; temp_r30 = &lbl_1_bss_26C[object->work[0]]; object->model[0] = CharModelCreate(temp_r30->unk14, 2); - object->motion[0] = CharModelMotionCreate(temp_r30->unk14, 0x5F0000); - object->motion[1] = CharModelMotionCreate(temp_r30->unk14, 0x5F0002); - object->motion[2] = CharModelMotionCreate(temp_r30->unk14, 0x5F0003); - object->motion[3] = CharModelMotionCreate(temp_r30->unk14, 0x5F0073); - object->motion[4] = CharModelMotionCreate(temp_r30->unk14, 0x5F0074); - object->motion[5] = CharModelMotionCreate(temp_r30->unk14, 0x5F0017); - object->motion[6] = CharModelMotionCreate(temp_r30->unk14, 0x5F0018); - object->motion[7] = CharModelMotionCreate(temp_r30->unk14, 0x5F001B); - object->motion[8] = CharModelMotionCreate(temp_r30->unk14, 0x5F002A); + object->motion[0] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + object->motion[1] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02)); + object->motion[2] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03)); + object->motion[3] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x73)); + object->motion[4] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x74)); + object->motion[5] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17)); + object->motion[6] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18)); + object->motion[7] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x1B)); + object->motion[8] = CharModelMotionCreate(temp_r30->unk14, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x2A)); object->motion[9] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(temp_r30->unk14 + 0x310000, 0x10000000, HEAP_DATA)); object->motion[10] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(temp_r30->unk14 + 0x310008, 0x10000000, HEAP_DATA)); object->model[1] = Hu3DModelCreateFile(0x310017); @@ -1161,8 +1201,9 @@ void fn_1_4F60(omObjData* object) { object->func = fn_1_4C84; } -void fn_1_5358(void) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; +void fn_1_5358(void) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; Vec sp20 = { 0.0f, 600.0f, 600.0f }; @@ -1171,13 +1212,13 @@ void fn_1_5358(void) { var_r31->rot.x++; } -void fn_1_543C(void) { +void fn_1_543C(void) +{ M418DllUnkStruct sp38; - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; - Vec sp2C = { -180.0f, 500.0f, 440.0f }; + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; + Vec sp2C = { -180.0f, 500.0f, 440.0f }; Vec sp20 = { -180.0f, 330.0f, -760.0f }; - fn_1_B104(&sp38, sp2C, sp20); fn_1_B41C(&sp38); sp38.center.x = 0.0f; @@ -1187,11 +1228,12 @@ void fn_1_543C(void) { fn_1_DC10(var_r31, &sp38, var_r31->unk48++, 30.0f, 10.0f); } -void fn_1_558C(void) { +void fn_1_558C(void) +{ M418DllUnkStruct sp38; - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; - Vec sp20 = { 0.0f, 600.0f, 600.0f }; + Vec sp20 = { 0.0f, 600.0f, 600.0f }; fn_1_B104(&sp38, sp2C, sp20); fn_1_B41C(&sp38); @@ -1199,8 +1241,9 @@ void fn_1_558C(void) { fn_1_CBF8(var_r31, &sp38, var_r31->unk48++, 30.0f, 10.0f); } -void fn_1_56AC(s32 arg0) { - M418DllUnkStruct* var_r28 = &lbl_1_bss_1F4; +void fn_1_56AC(s32 arg0) +{ + M418DllUnkStruct *var_r28 = &lbl_1_bss_1F4; fn_1_B458(var_r28); switch (arg0) { case 0: @@ -1215,11 +1258,12 @@ void fn_1_56AC(s32 arg0) { } } -void fn_1_5768(s32 arg0) { +void fn_1_5768(s32 arg0) +{ s32 var_r31; - M418DllUnkStruct4* var_r30; - M418DllUnkStruct* var_r26; - + M418DllUnkStruct4 *var_r30; + M418DllUnkStruct *var_r26; + for (var_r31 = 0; var_r31 < 3; var_r31++) { var_r30 = &lbl_1_bss_170[var_r31]; var_r30->unkC = 0; @@ -1228,9 +1272,10 @@ void fn_1_5768(s32 arg0) { fn_1_56AC(0); } -s32 fn_1_57E4(s32 arg0) { - M418DllUnkStruct4* temp_r31; - M418DllUnkStruct* var_r25; +s32 fn_1_57E4(s32 arg0) +{ + M418DllUnkStruct4 *temp_r31; + M418DllUnkStruct *var_r25; s32 var_r29; s32 var_r30; @@ -1240,14 +1285,16 @@ s32 fn_1_57E4(s32 arg0) { if (temp_r31->unkC == 0) { if ((rand8() % 5) == 0) { var_r29 = 1; - } else { + } + else { var_r29 = 0; } if (var_r29 || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x41)) { HuAudFXPlay(0x5D3); temp_r31->unkC = 1; } - } else { + } + else { temp_r31->unk4 += 5.0f; if (temp_r31->unk4 >= 90.0f) { temp_r31->unk4 = 90.0f; @@ -1260,28 +1307,26 @@ s32 fn_1_57E4(s32 arg0) { } if (fn_1_B0C8(&lbl_1_bss_50, 1) != 0) { return fn_1_AF38(&lbl_1_bss_50); - } else { + } + else { return 0; } } -s32 lbl_1_data_200[16] = { - 0x310000, 0x310001, 0x310002, 0x310003, - 0x310004, 0x310005, 0x310006, 0x310007, - 0x310008, 0x310009, 0x31000A, 0x31000B, - 0x31000C, 0x31000D, 0x31000E, 0x31000F -}; +s32 lbl_1_data_200[16] = { 0x310000, 0x310001, 0x310002, 0x310003, 0x310004, 0x310005, 0x310006, 0x310007, 0x310008, 0x310009, 0x31000A, 0x31000B, + 0x31000C, 0x31000D, 0x31000E, 0x31000F }; Vec lbl_1_data_240[3] = { { -540.0f, 225.0f, -900.0f }, { -180.0f, 225.0f, -900.0f }, - { 180.0f, 225.0f, -900.0f }, + { 180.0f, 225.0f, -900.0f }, }; -void fn_1_5970(s32 arg0) { - M418DllUnkStruct3* temp_r30; - M418DllUnkStruct6* temp_r29; - M418DllUnkStruct4* temp_r28; +void fn_1_5970(s32 arg0) +{ + M418DllUnkStruct3 *temp_r30; + M418DllUnkStruct6 *temp_r29; + M418DllUnkStruct4 *temp_r28; s32 var_r31; temp_r29 = &lbl_1_bss_3EC; @@ -1291,7 +1336,7 @@ void fn_1_5970(s32 arg0) { omSetTra(temp_r30->unk0, lbl_1_data_240[var_r31].x, lbl_1_data_240[var_r31].y, lbl_1_data_240[var_r31].z - 50.0f); temp_r30->unk4C = 0; } - + for (var_r31 = 0; var_r31 < 3; var_r31++) { temp_r28 = &lbl_1_bss_170[var_r31]; temp_r28->unkC = 0; @@ -1300,28 +1345,30 @@ void fn_1_5970(s32 arg0) { Vec lbl_1_data_264[4] = { { -355.0f, 0.0f, -680.0f }, - { 5.0f, 0.0f, -680.0f }, - { 365.0f, 0.0f, -680.0f }, + { 5.0f, 0.0f, -680.0f }, + { 365.0f, 0.0f, -680.0f }, }; -s32 fn_1_5A6C(s32 arg0) { +s32 fn_1_5A6C(s32 arg0) +{ s32 var_r31; - M418DllUnkStruct3* temp_r30; - M418DllUnkStruct4* temp_r29; - M418DllUnkStruct3* temp_r28; - M418DllUnkStruct6* temp_r27; + M418DllUnkStruct3 *temp_r30; + M418DllUnkStruct4 *temp_r29; + M418DllUnkStruct3 *temp_r28; + M418DllUnkStruct6 *temp_r27; s32 var_r26; - omObjData* temp_r25; + omObjData *temp_r25; s32 var_r24; - M418DllUnkStruct* temp_r20; + M418DllUnkStruct *temp_r20; - temp_r27 = &lbl_1_bss_3EC; + temp_r27 = &lbl_1_bss_3EC; for (var_r31 = 0; var_r31 < 3; var_r31++) { temp_r30 = &lbl_1_bss_26C[temp_r27->unk4[var_r31]]; if (temp_r30->unk4C == 0) { if ((rand8() % 5) == 0) { var_r26 = 1; - } else { + } + else { var_r26 = 0; } if (var_r26 || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 5)) { @@ -1333,25 +1380,28 @@ s32 fn_1_5A6C(s32 arg0) { } HuAudCharVoicePlay(temp_r30->unk14, 0x122); } - } else { + } + else { fn_1_3EB0(temp_r30->unk0, lbl_1_data_264[var_r31], 0.0f, 9.0f); } } if (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x3C) { - + for (var_r31 = 0; var_r31 < 3; var_r31++) { temp_r29 = &lbl_1_bss_170[var_r31]; if (temp_r29->unkC == 0) { if ((rand8() % 5) == 0) { var_r24 = 1; - } else { + } + else { var_r24 = 0; } if ((var_r24 != 0) || (fn_1_B0C8(&lbl_1_bss_50, 0) >= 0x41)) { HuAudFXPlay(0x5D3); temp_r29->unkC = 1; } - } else { + } + else { temp_r29->unk4 -= 2.5f; if (temp_r29->unk4 <= 0.0f) { temp_r29->unk4 = 0.0f; @@ -1368,17 +1418,15 @@ s32 fn_1_5A6C(s32 arg0) { return 0; } -M418DllUnkStruct8 lbl_1_data_294[3] = { - { fn_1_5768, fn_1_57E4, 0x5A }, - { fn_1_5970, fn_1_5A6C, 0xB4 }, - { NULL, NULL, -1 } -}; +M418DllUnkStruct8 lbl_1_data_294[3] = { { fn_1_5768, fn_1_57E4, 0x5A }, { fn_1_5970, fn_1_5A6C, 0xB4 }, { NULL, NULL, -1 } }; -void fn_1_5D28(void) { +void fn_1_5D28(void) +{ fn_1_AEDC(&lbl_1_bss_50, &lbl_1_data_294[0]); } -s32 fn_1_5D58(void) { +s32 fn_1_5D58(void) +{ s32 var_r31; var_r31 = 0; @@ -1392,8 +1440,9 @@ s32 fn_1_5D58(void) { return var_r31; } -s32 fn_1_5DF0(omObjData* object, s32 arg1) { - M418DllUnkStruct3* temp_r31; +s32 fn_1_5DF0(omObjData *object, s32 arg1) +{ + M418DllUnkStruct3 *temp_r31; s32 var_r30; temp_r31 = &lbl_1_bss_26C[object->work[0]]; @@ -1421,7 +1470,8 @@ s32 fn_1_5DF0(omObjData* object, s32 arg1) { } break; } - } else { + } + else { if ((HuPadBtnDown[temp_r31->unk18] & PAD_BUTTON_A) != 0) { var_r30 = 1; } @@ -1438,11 +1488,12 @@ s32 fn_1_5DF0(omObjData* object, s32 arg1) { return var_r30; } -s32 fn_1_6038(omObjData* object, s32 arg1) { - M418DllUnkStruct3* temp_r30; - M418DllUnkStruct4* temp_r28; - M418DllUnkStruct4* temp_r27; - M418DllUnkStruct4* temp_r26; +s32 fn_1_6038(omObjData *object, s32 arg1) +{ + M418DllUnkStruct3 *temp_r30; + M418DllUnkStruct4 *temp_r28; + M418DllUnkStruct4 *temp_r27; + M418DllUnkStruct4 *temp_r26; s32 var_r29; s32 var_r31; @@ -1482,11 +1533,13 @@ s32 fn_1_6038(omObjData* object, s32 arg1) { break; } } - } else { + } + else { temp_r28->unk18s = 1; } } - } else { + } + else { if ((HuPadBtnDown[temp_r30->unk18] & PAD_BUTTON_A) != 0) { var_r31 = 1; } @@ -1503,7 +1556,8 @@ s32 fn_1_6038(omObjData* object, s32 arg1) { temp_r26 = &lbl_1_bss_170[var_r31]; if (temp_r26->unk18s == 1) { var_r31 = -1; - } else { + } + else { temp_r26->unk18s = 1; } } @@ -1511,8 +1565,9 @@ s32 fn_1_6038(omObjData* object, s32 arg1) { return var_r31; } -void fn_1_6314(void) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; +void fn_1_6314(void) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; Vec sp20 = { 0.0f, 600.0f, 600.0f }; @@ -1521,8 +1576,9 @@ void fn_1_6314(void) { var_r31->rot.x++; } -void fn_1_63F8(void) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; +void fn_1_63F8(void) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; M418DllUnkStruct sp38; Vec sp2C = { 0.0f, 1800.0f, 480.0f }; Vec sp20 = { 0.0f, 600.0f, 250.0f }; @@ -1533,33 +1589,27 @@ void fn_1_63F8(void) { fn_1_BEAC(var_r31, &sp38, var_r31->unk48++, 120.0f, 10.0f); } -void fn_1_6510(void) { - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; +void fn_1_6510(void) +{ + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; M418DllUnkStruct sp38; Vec sp2C = { 0.0f, 980.0f, 1330.0f }; Vec sp20 = { 0.0f, 480.0f, 130.0f }; - + fn_1_B104(&sp38, sp2C, sp20); fn_1_B41C(&sp38); fn_1_BEAC(var_r31, &sp38, var_r31->unk48++, 30.0f, 10.0f); } -Vec lbl_1_data_2B8[8] = { - { -540.0f, 225.0f, -900.0f }, - { -180.0f, 225.0f, -900.0f }, - { 180.0f, 225.0f, -900.0f }, - { 540.0f, 225.0f, -900.0f }, - { -360.0f, 0.0f, -680.0f }, - { 0.0f, 0.0f, -680.0f }, - { 360.0f, 0.0f, -680.0f }, - { 0.0f, 0.0f, 0.0f } -}; +Vec lbl_1_data_2B8[8] = { { -540.0f, 225.0f, -900.0f }, { -180.0f, 225.0f, -900.0f }, { 180.0f, 225.0f, -900.0f }, { 540.0f, 225.0f, -900.0f }, + { -360.0f, 0.0f, -680.0f }, { 0.0f, 0.0f, -680.0f }, { 360.0f, 0.0f, -680.0f }, { 0.0f, 0.0f, 0.0f } }; -void fn_1_6618(void) { +void fn_1_6618(void) +{ M418DllUnkStruct sp8; - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct* var_r30; - M418DllUnkStruct6* var_r29; + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct *var_r30; + M418DllUnkStruct6 *var_r29; var_r29 = &lbl_1_bss_3EC; temp_r31 = &lbl_1_bss_26C[var_r29->unk0]; @@ -1574,9 +1624,10 @@ void fn_1_6618(void) { fn_1_CBF8(var_r30, &sp8, var_r30->unk48++, 30.0f, 5.0f); } -void fn_1_6740(s32 arg0) { - M418DllUnkStruct* var_r27 = &lbl_1_bss_1F4; - +void fn_1_6740(s32 arg0) +{ + M418DllUnkStruct *var_r27 = &lbl_1_bss_1F4; + fn_1_B458(var_r27); switch (arg0) { case 0: @@ -1594,20 +1645,21 @@ void fn_1_6740(s32 arg0) { } } -void fn_1_6808(s32 arg0) { +void fn_1_6808(s32 arg0) +{ s32 var_r31; - M418DllUnkStruct6* var_r30 = &lbl_1_bss_3EC; - M418DllUnkStruct3* var_r29; - M418DllUnkStruct4* var_r28; - M418DllUnkStruct* var_r23; + M418DllUnkStruct6 *var_r30 = &lbl_1_bss_3EC; + M418DllUnkStruct3 *var_r29; + M418DllUnkStruct4 *var_r28; + M418DllUnkStruct *var_r23; HuAudAUXVolSet(0x40, 0x40); - + for (var_r31 = 0; var_r31 < 3; var_r31++) { var_r29 = &lbl_1_bss_26C[var_r30->unk4[var_r31]]; var_r29->unk4C = -1; } - + for (var_r31 = 0; var_r31 < 3; var_r31++) { var_r28 = &lbl_1_bss_11C[var_r31]; fn_1_ABC4(var_r28->unk0, 0, 3, 30, 1); @@ -1616,29 +1668,25 @@ void fn_1_6808(s32 arg0) { lbl_1_bss_8 = 1; lbl_1_bss_4 = 0x12C; } - + fn_1_6740(0); } -Vec lbl_1_data_318[4] = { - { -540.0f, 115.0f, -700.0f }, - { -180.0f, 115.0f, -700.0f }, - { 180.0f, 115.0f, -700.0f }, - { 540.0f, 115.0f, -700.0f } -}; +Vec lbl_1_data_318[4] = { { -540.0f, 115.0f, -700.0f }, { -180.0f, 115.0f, -700.0f }, { 180.0f, 115.0f, -700.0f }, { 540.0f, 115.0f, -700.0f } }; -s32 fn_1_6914(s32 arg0) { +s32 fn_1_6914(s32 arg0) +{ Vec sp14; - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct3* temp_r30; + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct3 *temp_r30; s32 var_r29; s32 temp_r27; - M418DllUnkStruct6* var_r26; - M418DllUnkStruct4* var_r25; - M418DllUnkStruct* var_r18; + M418DllUnkStruct6 *var_r26; + M418DllUnkStruct4 *var_r25; + M418DllUnkStruct *var_r18; var_r26 = &lbl_1_bss_3EC; - + for (var_r29 = 0; var_r29 < 3; var_r29++) { temp_r31 = &lbl_1_bss_26C[var_r26->unk4[var_r29]]; temp_r27 = fn_1_B0C8(&lbl_1_bss_38, 0); @@ -1660,7 +1708,7 @@ s32 fn_1_6914(s32 arg0) { } } } - + for (var_r29 = 0; var_r29 < 3; var_r29++) { var_r25 = &lbl_1_bss_11C[var_r29]; var_r25->unk0->rot.y += 1.2f; @@ -1674,10 +1722,11 @@ s32 fn_1_6914(s32 arg0) { return 0; } -void fn_1_6DCC(s32 arg0) { +void fn_1_6DCC(s32 arg0) +{ s32 var_r31; - M418DllUnkStruct4* temp_r30; - + M418DllUnkStruct4 *temp_r30; + for (var_r31 = 0; var_r31 < 3; var_r31++) { temp_r30 = &lbl_1_bss_11C[var_r31]; temp_r30->unk0->rot.y = 0.0f; @@ -1686,20 +1735,22 @@ void fn_1_6DCC(s32 arg0) { fn_1_6740(2); } -s32 fn_1_6E6C(s32 arg0) { +s32 fn_1_6E6C(s32 arg0) +{ if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { return fn_1_AF38(&lbl_1_bss_38); } return 0; } -void fn_1_6EB4(s32 arg0) { - M418DllUnkStruct6* var_r31 = &lbl_1_bss_3EC; +void fn_1_6EB4(s32 arg0) +{ + M418DllUnkStruct6 *var_r31 = &lbl_1_bss_3EC; s32 var_r30; - M418DllUnkStruct3* temp_r29; + M418DllUnkStruct3 *temp_r29; var_r31->unk34 = 0; - + for (var_r30 = 0; var_r30 < 3; var_r30++) { temp_r29 = &lbl_1_bss_26C[var_r31->unk4[var_r30]]; if (temp_r29->unk4C == -1) { @@ -1709,12 +1760,13 @@ void fn_1_6EB4(s32 arg0) { } } -s32 fn_1_6F38(s32 arg0) { - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct2* temp_r29; - M418DllUnkStruct6* temp_r28; - M418DllUnkStruct2* temp_r27; - +s32 fn_1_6F38(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct2 *temp_r29; + M418DllUnkStruct6 *temp_r28; + M418DllUnkStruct2 *temp_r27; + s32 var_r26; s32 var_r30; f32 var_f31; @@ -1725,14 +1777,15 @@ s32 fn_1_6F38(s32 arg0) { if (temp_r28->unk34 == 0) { return fn_1_B034(&lbl_1_bss_38, 9); } - + for (var_r30 = 0; var_r30 < 3; var_r30++) { temp_r31 = &lbl_1_bss_26C[temp_r28->unk4[var_r30]]; if (temp_r31->unk4C == -1) { if (temp_r29->unk4[var_r30] == 0) { if ((rand8() % 10) == 0) { var_r26 = 1; - } else { + } + else { var_r26 = 0; } if ((var_r26 != 0) || (fn_1_B0C8(&lbl_1_bss_38, 0) >= 10)) { @@ -1744,17 +1797,13 @@ s32 fn_1_6F38(s32 arg0) { temp_r31->unk50 = fn_1_B0C8(&lbl_1_bss_38, 0); omVibrate(temp_r31->unk4, 0xC, 6, 6); } - } else if (fn_1_B0C8(&lbl_1_bss_38, 0) >= (temp_r31->unk50 + 0x1E)) { + } + else if (fn_1_B0C8(&lbl_1_bss_38, 0) >= (temp_r31->unk50 + 0x1E)) { temp_r31->unk0->trans.y -= 15.0f; } if (fn_1_B0C8(&lbl_1_bss_38, 0) >= (temp_r31->unk50 + 0x3C)) { var_f31 = fn_1_AA30(-200.0f, -110.0f, fn_1_B0C8(&lbl_1_bss_38, 0) - (temp_r31->unk50 + 0x3C), 90.0f); - Hu3DModelPosSet( - temp_r29->unk0->model[var_r30 + 8], - -350.0f + (360.0f * var_r30), - var_f31, - -660.0f - ); + Hu3DModelPosSet(temp_r29->unk0->model[var_r30 + 8], -350.0f + (360.0f * var_r30), var_f31, -660.0f); Hu3DModelRotSet(temp_r29->unk0->model[var_r30 + 8], 0.0f, 0.0f, 20.0f); } } @@ -1766,17 +1815,19 @@ s32 fn_1_6F38(s32 arg0) { return 1; } return fn_1_B034(&lbl_1_bss_38, 9); - } else { + } + else { return 0; } } -void fn_1_7294(s32 arg0) {} +void fn_1_7294(s32 arg0) { } -s32 fn_1_7298(s32 arg0) { - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct4* temp_r30; - M418DllUnkStruct6* temp_r29; +s32 fn_1_7298(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct4 *temp_r30; + M418DllUnkStruct6 *temp_r29; temp_r29 = &lbl_1_bss_3EC; temp_r31 = &lbl_1_bss_26C[temp_r29->unk0]; @@ -1794,33 +1845,38 @@ s32 fn_1_7298(s32 arg0) { temp_r30->unk0->rot.y = -50.0f; } } - } else if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0x3C) { + } + else if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0x3C) { HuAudFXPlay(0x40); fn_1_ABC4(temp_r30->unk0, 0, 2, 0xA, 0); fn_1_AD14(temp_r31->unk0, 0, 0, 0xA, 1); Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[9]); Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 1.0f); lbl_1_bss_240[8] = HuAudFXPlay(0x5D9); - } else if (fn_1_B0C8(&lbl_1_bss_38, 0) <= 0xAA) { + } + else if (fn_1_B0C8(&lbl_1_bss_38, 0) <= 0xAA) { if (fn_1_B0C8(&lbl_1_bss_38, 0) >= 0x5A) { temp_r31->unk3C += 0.025f; if (temp_r31->unk3C >= 1.0f) { temp_r31->unk3C = 1.0f; } } - } else { + } + else { Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], -1.0f); } if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { return fn_1_AF38(&lbl_1_bss_38); - } else { + } + else { return 0; } } -void fn_1_7570(s32 arg0) { - M418DllUnkStruct6* var_r31 = &lbl_1_bss_3EC; - M418DllUnkStruct3* var_r30 = &lbl_1_bss_26C[var_r31->unk0]; +void fn_1_7570(s32 arg0) +{ + M418DllUnkStruct6 *var_r31 = &lbl_1_bss_3EC; + M418DllUnkStruct3 *var_r30 = &lbl_1_bss_26C[var_r31->unk0]; var_r30->unk4C = -1; if (lbl_1_bss_8 == 0) { lbl_1_bss_8 = 1; @@ -1828,11 +1884,12 @@ void fn_1_7570(s32 arg0) { } } -s32 fn_1_75E4(s32 arg0) { +s32 fn_1_75E4(s32 arg0) +{ Mtx sp38; Mtx sp8; - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct6* var_r30; + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct6 *var_r30; s32 var_r29; var_r30 = &lbl_1_bss_3EC; @@ -1860,14 +1917,16 @@ s32 fn_1_75E4(s32 arg0) { Hu3DMotionSpeedSet(temp_r31->unk0->model[13], 2.0f); fn_1_ABC4(temp_r31->unk0, 0xD, 0xD, 0, 0); return fn_1_AF38(&lbl_1_bss_38); - } else { + } + else { return 0; } } -void fn_1_77F8(s32 arg0) { - M418DllUnkStruct6* var_r31; - M418DllUnkStruct3* var_r30; +void fn_1_77F8(s32 arg0) +{ + M418DllUnkStruct6 *var_r31; + M418DllUnkStruct3 *var_r30; var_r31 = &lbl_1_bss_3EC; var_r30 = &lbl_1_bss_26C[var_r31->unk0]; @@ -1876,9 +1935,10 @@ void fn_1_77F8(s32 arg0) { } } -s32 fn_1_7860(s32 arg0) { - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct6* temp_r30; +s32 fn_1_7860(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct6 *temp_r30; temp_r30 = &lbl_1_bss_3EC; temp_r31 = &lbl_1_bss_26C[temp_r30->unk0]; @@ -1890,11 +1950,9 @@ s32 fn_1_7860(s32 arg0) { if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { return fn_1_AF38(&lbl_1_bss_38); } - } else { - temp_r31->unk0->rot.y = fn_1_A940( - 180.0f, 200.0f - (10.0f * temp_r31->unk4C), - fn_1_B0C8(&lbl_1_bss_38, 0), 10.0f - ); + } + else { + temp_r31->unk0->rot.y = fn_1_A940(180.0f, 200.0f - (10.0f * temp_r31->unk4C), fn_1_B0C8(&lbl_1_bss_38, 0), 10.0f); if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0xA) { Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[10]); Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 1.0f); @@ -1909,12 +1967,13 @@ s32 fn_1_7860(s32 arg0) { return 0; } -void fn_1_7A68(s32 arg0) { - M418DllUnkStruct6* temp_r31; - M418DllUnkStruct3* temp_r30; - M418DllUnkStruct4* temp_r29; +void fn_1_7A68(s32 arg0) +{ + M418DllUnkStruct6 *temp_r31; + M418DllUnkStruct3 *temp_r30; + M418DllUnkStruct4 *temp_r29; s32 var_r28; - M418DllUnkStruct3* temp_r27; + M418DllUnkStruct3 *temp_r27; s32 var_r26; var_r26 = 0; @@ -1922,7 +1981,7 @@ void fn_1_7A68(s32 arg0) { temp_r30 = &lbl_1_bss_26C[temp_r31->unk0]; if (temp_r30->unk4C != -1) { temp_r31->unk10[0] = temp_r31->unk10[1] = temp_r31->unk10[2] = -1; - + for (var_r28 = 0; var_r28 < 3; var_r28++) { temp_r27 = &lbl_1_bss_26C[temp_r31->unk4[var_r28]]; if (temp_r30->unk4C == temp_r27->unk4C) { @@ -1938,15 +1997,16 @@ void fn_1_7A68(s32 arg0) { } } -s32 fn_1_7B68(s32 arg0) { +s32 fn_1_7B68(s32 arg0) +{ Mtx sp8; - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct6* temp_r30; - M418DllUnkStruct3* temp_r29; - M418DllUnkStruct4* temp_r28; + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct6 *temp_r30; + M418DllUnkStruct3 *temp_r29; + M418DllUnkStruct4 *temp_r28; s32 var_r27; s32 var_r26; - M418DllUnkStruct* temp_r21; + M418DllUnkStruct *temp_r21; var_r26 = -1; temp_r30 = &lbl_1_bss_3EC; @@ -1959,11 +2019,11 @@ s32 fn_1_7B68(s32 arg0) { fn_1_6740(3); } if (temp_r28->unkC == 3) { - + for (var_r27 = 0; var_r27 < 3; var_r27++) { if (temp_r30->unk10[var_r27] != -1) { temp_r31 = &lbl_1_bss_26C[temp_r30->unk10[var_r27]]; - Hu3DModelObjMtxGet(*temp_r28->unk0->model, "taihou-null4", (f32 (*)[4]) &sp8[0]); + Hu3DModelObjMtxGet(*temp_r28->unk0->model, "taihou-null4", (f32(*)[4]) & sp8[0]); omSetTra(temp_r31->unk0, sp8[0][3], sp8[1][3] - 25.0f, 50.0f + sp8[2][3]); omSetRot(temp_r31->unk0, 0.0f, 180.0f, 0.0f); fn_1_AD14(temp_r31->unk0, 0, 8, 0, 2); @@ -1974,7 +2034,7 @@ s32 fn_1_7B68(s32 arg0) { } temp_r31->unk30 = var_r26++; temp_r31->unk28 = 0.0f; - omVibrate((s16) temp_r29->unk4, 0xC, 4, 2); + omVibrate((s16)temp_r29->unk4, 0xC, 4, 2); } } return fn_1_AF38(&lbl_1_bss_38); @@ -1982,31 +2042,33 @@ s32 fn_1_7B68(s32 arg0) { return 0; } -void fn_1_7D80(s32 arg0) { +void fn_1_7D80(s32 arg0) +{ s32 var_r31; - M418DllUnkStruct3* temp_r30; - M418DllUnkStruct6* temp_r29; - M418DllUnkStruct4* temp_r28; + M418DllUnkStruct3 *temp_r30; + M418DllUnkStruct6 *temp_r29; + M418DllUnkStruct4 *temp_r28; temp_r29 = &lbl_1_bss_3EC; temp_r30 = &lbl_1_bss_26C[temp_r29->unk0]; temp_r30->unk0->rot.y = 180.0f; temp_r30->unk3C = 0.0f; - + for (var_r31 = 0; var_r31 < 3; var_r31++) { temp_r28 = &lbl_1_bss_11C[var_r31]; temp_r28->unk0->rot.y = 0.0f; } } -s32 fn_1_7E24(s32 arg0) { - M418DllUnkStruct6* var_r31; +s32 fn_1_7E24(s32 arg0) +{ + M418DllUnkStruct6 *var_r31; s32 var_r30; s32 var_r29; - M418DllUnkStruct4* var_r28; - M418DllUnkStruct4* var_r27; - M418DllUnkStruct4* var_r26; - M418DllUnkStruct3* var_r25; + M418DllUnkStruct4 *var_r28; + M418DllUnkStruct4 *var_r27; + M418DllUnkStruct4 *var_r26; + M418DllUnkStruct3 *var_r25; var_r29 = 0; var_r31 = &lbl_1_bss_3EC; @@ -2020,7 +2082,7 @@ s32 fn_1_7E24(s32 arg0) { return 1; } var_r31->unk38++; - + for (var_r30 = 0; var_r30 < 3; var_r30++) { var_r25 = &lbl_1_bss_26C[var_r31->unk4[var_r30]]; if (var_r25->unk4C != -1) { @@ -2029,36 +2091,40 @@ s32 fn_1_7E24(s32 arg0) { } if (var_r29 == 0) { return 1; - } else { + } + else { return fn_1_AF38(&lbl_1_bss_38); } } -void fn_1_7F1C(s32 arg0) { - M418DllUnkStruct6* var_r31; - M418DllUnkStruct4* var_r30; - M418DllUnkStruct4* var_r29; - M418DllUnkStruct4* var_r28; +void fn_1_7F1C(s32 arg0) +{ + M418DllUnkStruct6 *var_r31; + M418DllUnkStruct4 *var_r30; + M418DllUnkStruct4 *var_r29; + M418DllUnkStruct4 *var_r28; var_r31 = &lbl_1_bss_3EC; var_r30 = &lbl_1_bss_11C[0]; var_r29 = &lbl_1_bss_11C[1]; var_r28 = &lbl_1_bss_11C[2]; if (var_r31->unk38 == 1) { - var_r30->unk0->work[1] = 3; - var_r29->unk0->work[1] = 2; - var_r28->unk0->work[1] = 1; - } else if (var_r31->unk38 == 2) { - var_r30->unk0->work[1] = 0; - var_r29->unk0->work[1] = 3; - var_r28->unk0->work[1] = 2; + var_r30->unk0->work[1] = 3; + var_r29->unk0->work[1] = 2; + var_r28->unk0->work[1] = 1; + } + else if (var_r31->unk38 == 2) { + var_r30->unk0->work[1] = 0; + var_r29->unk0->work[1] = 3; + var_r28->unk0->work[1] = 2; } } -s32 fn_1_7FD4(s32 arg0) { - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct6* temp_r30; - M418DllUnkStruct4* temp_r29; +s32 fn_1_7FD4(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct6 *temp_r30; + M418DllUnkStruct4 *temp_r29; temp_r30 = &lbl_1_bss_3EC; temp_r31 = &lbl_1_bss_26C[temp_r30->unk0]; @@ -2069,7 +2135,8 @@ s32 fn_1_7FD4(s32 arg0) { if (fn_1_B0C8(&lbl_1_bss_38, 0) == 120) { return fn_1_B034(&lbl_1_bss_38, 9); } - } else { + } + else { temp_r29 = &lbl_1_bss_170[temp_r31->unk4C]; if (temp_r29->unk10 != 0) { if (fn_1_B0C8(&lbl_1_bss_38, 0) == 210) { @@ -2078,7 +2145,8 @@ s32 fn_1_7FD4(s32 arg0) { if (fn_1_B0C8(&lbl_1_bss_38, 0) == 300) { return fn_1_B034(&lbl_1_bss_38, 9); } - } else { + } + else { if (fn_1_B0C8(&lbl_1_bss_38, 0) == 30) { fn_1_6740(2); } @@ -2091,12 +2159,13 @@ s32 fn_1_7FD4(s32 arg0) { return 0; } -void fn_1_81A0(s32 arg0) {} +void fn_1_81A0(s32 arg0) { } -s32 fn_1_81A4(s32 arg0) { - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct4* temp_r30; - M418DllUnkStruct6* temp_r29; +s32 fn_1_81A4(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct4 *temp_r30; + M418DllUnkStruct6 *temp_r29; temp_r29 = &lbl_1_bss_3EC; temp_r31 = &lbl_1_bss_26C[temp_r29->unk0]; @@ -2114,49 +2183,45 @@ s32 fn_1_81A4(s32 arg0) { temp_r30->unk0->rot.y = -50.0f; } } - } else if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0x3C) { + } + else if (fn_1_B0C8(&lbl_1_bss_38, 0) == 0x3C) { HuAudFXPlay(0x40); fn_1_ABC4(temp_r30->unk0, 0, 2, 0xA, 0); fn_1_AD14(temp_r31->unk0, 0, 0, 0xA, 1); Hu3DMotionOverlaySet(temp_r31->unk0->model[0], temp_r31->unk0->motion[9]); Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], 1.0f); lbl_1_bss_240[8] = HuAudFXPlay(0x5D9); - } else if (fn_1_B0C8(&lbl_1_bss_38, 0) <= 0xAA) { + } + else if (fn_1_B0C8(&lbl_1_bss_38, 0) <= 0xAA) { if (fn_1_B0C8(&lbl_1_bss_38, 0) >= 0x5A) { temp_r31->unk3C += 0.025f; if (temp_r31->unk3C >= 1.0f) { temp_r31->unk3C = 1.0f; } } - } else { + } + else { Hu3DMotionOverlaySpeedSet(temp_r31->unk0->model[0], -1.0f); } if (fn_1_B0C8(&lbl_1_bss_38, 1) != 0) { return fn_1_B034(&lbl_1_bss_38, 4); - } else { + } + else { return 0; } } -M418DllUnkStruct8 lbl_1_data_348[11] = { - { fn_1_6808, fn_1_6914, 300 }, - { fn_1_6DCC, fn_1_6E6C, 60 }, - { fn_1_6EB4, fn_1_6F38, 180 }, - { fn_1_7294, fn_1_7298, 300 }, - { fn_1_7570, fn_1_75E4, 300 }, - { fn_1_77F8, fn_1_7860, 60 }, - { fn_1_7A68, fn_1_7B68, 180 }, - { fn_1_7D80, fn_1_7E24, -1 }, - { fn_1_7F1C, fn_1_7FD4, 300 }, - { fn_1_81A0, fn_1_81A4, 240 }, - { NULL, NULL, -1 } -}; +M418DllUnkStruct8 lbl_1_data_348[11] = { { fn_1_6808, fn_1_6914, 300 }, { fn_1_6DCC, fn_1_6E6C, 60 }, { fn_1_6EB4, fn_1_6F38, 180 }, + { fn_1_7294, fn_1_7298, 300 }, { fn_1_7570, fn_1_75E4, 300 }, { fn_1_77F8, fn_1_7860, 60 }, { fn_1_7A68, fn_1_7B68, 180 }, + { fn_1_7D80, fn_1_7E24, -1 }, { fn_1_7F1C, fn_1_7FD4, 300 }, { fn_1_81A0, fn_1_81A4, 240 }, { NULL, NULL, -1 } }; -void fn_1_8480(void) { +void fn_1_8480(void) +{ fn_1_AEDC(&lbl_1_bss_38, &lbl_1_data_348[0]); } -s32 fn_1_84B0(void) { +s32 fn_1_84B0(void) +{ s32 var_r31; var_r31 = 0; @@ -2170,9 +2235,10 @@ s32 fn_1_84B0(void) { return var_r31; } -void fn_1_8548(void) { +void fn_1_8548(void) +{ M418DllUnkStruct sp38; - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; Vec sp2C = { 0.0f, 1100.0f, 1800.0f }; Vec sp20 = { 0.0f, 600.0f, 600.0f }; @@ -2182,12 +2248,13 @@ void fn_1_8548(void) { fn_1_CBF8(var_r31, &sp38, var_r31->unk48++, 60.0f, 10.0f); } -void fn_1_8668(void) { +void fn_1_8668(void) +{ M418DllUnkStruct sp8; f32 temp_f1; - M418DllUnkStruct* var_r31 = &lbl_1_bss_1F4; - + M418DllUnkStruct *var_r31 = &lbl_1_bss_1F4; + sp8.center.x = sp8.center.y = 0.0f; sp8.center.z = -500.0f; sp8.rot.x = -20.0f; @@ -2196,9 +2263,10 @@ void fn_1_8668(void) { fn_1_CBF8(var_r31, &sp8, var_r31->unk48++, 10.0f, 5.0f); } -void fn_1_8728(void) { +void fn_1_8728(void) +{ M418DllUnkStruct sp8; - M418DllUnkStruct* var_r31; + M418DllUnkStruct *var_r31; var_r31 = &lbl_1_bss_1F4; @@ -2212,43 +2280,46 @@ void fn_1_8728(void) { fn_1_CBF8(var_r31, &sp8, var_r31->unk48++, 10.0f, 5.0f); } -void fn_1_87D0(s32 arg0) { - M418DllUnkStruct* var_r31; +void fn_1_87D0(s32 arg0) +{ + M418DllUnkStruct *var_r31; var_r31 = &lbl_1_bss_1F4; - + fn_1_B458(var_r31); switch (arg0) { - case 0: - fn_1_248(fn_1_8548); - break; - case 1: - fn_1_248(fn_1_8668); - break; - case 2: - fn_1_248(fn_1_8728); - break; + case 0: + fn_1_248(fn_1_8548); + break; + case 1: + fn_1_248(fn_1_8668); + break; + case 2: + fn_1_248(fn_1_8728); + break; } } -void fn_1_888C(s32 arg0) { +void fn_1_888C(s32 arg0) +{ HuAudAUXVolSet(-1, -1); } -s32 fn_1_88B4(s32 arg0) { +s32 fn_1_88B4(s32 arg0) +{ s32 var_r31; - M418DllUnkStruct6* var_r30; + M418DllUnkStruct6 *var_r30; s32 var_r29; - M418DllUnkStruct3* var_r28; - M418DllUnkStruct3* var_r27; - M418DllUnkStruct* var_r23; + M418DllUnkStruct3 *var_r28; + M418DllUnkStruct3 *var_r27; + M418DllUnkStruct *var_r23; var_r29 = 5; var_r30 = &lbl_1_bss_3EC; - + fn_1_87D0(0); lbl_1_bss_10 = 0; - + for (var_r31 = 0; var_r31 < 3; var_r31++) { var_r28 = &lbl_1_bss_26C[var_r30->unk4[var_r31]]; if (var_r28->unk4C != -1) { @@ -2263,12 +2334,13 @@ s32 fn_1_88B4(s32 arg0) { fn_1_B034(&lbl_1_bss_20, var_r29); } -void fn_1_89B0(s32 arg0) { - M418DllUnkStruct6* var_r31; +void fn_1_89B0(s32 arg0) +{ + M418DllUnkStruct6 *var_r31; s32 var_r30; s32 var_r29; - M418DllUnkStruct3* temp_r28; - M418DllUnkStruct4* temp_r27; + M418DllUnkStruct3 *temp_r28; + M418DllUnkStruct4 *temp_r27; var_r29 = 0; var_r31 = &lbl_1_bss_3EC; @@ -2279,7 +2351,7 @@ void fn_1_89B0(s32 arg0) { var_r29++; } } - switch (var_r29) { /* irregular */ + switch (var_r29) { /* irregular */ case 1: var_r31->unk1C[0] = 3; break; @@ -2302,17 +2374,18 @@ void fn_1_89B0(s32 arg0) { if (var_r31->unk28[1] == var_r31->unk28[2]) { var_r31->unk28[2] = -1; } - + for (var_r30 = 0; var_r30 < 4; var_r30++) { temp_r27 = &lbl_1_bss_170[var_r30]; temp_r27->unkC = 0; } } -s32 fn_1_8B14(s32 arg0) { - M418DllUnkStruct4* temp_r31; +s32 fn_1_8B14(s32 arg0) +{ + M418DllUnkStruct4 *temp_r31; s32 var_r30; - M418DllUnkStruct6* var_r29; + M418DllUnkStruct6 *var_r29; s32 var_r28; var_r29 = &lbl_1_bss_3EC; @@ -2322,14 +2395,16 @@ s32 fn_1_8B14(s32 arg0) { if (temp_r31->unkC == 0) { if ((rand8() % 5) == 0) { var_r28 = 1; - } else { + } + else { var_r28 = 0; } if ((var_r28 != 0) || (fn_1_B0C8(&lbl_1_bss_20, 0) >= 5)) { temp_r31->unkC = 1; HuAudFXPlay(0x5D3); } - } else { + } + else { temp_r31->unk4 += 5.0f; if (temp_r31->unk4 >= 90.0f) { temp_r31->unk4 = 90.0f; @@ -2339,16 +2414,18 @@ s32 fn_1_8B14(s32 arg0) { } if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { return fn_1_AF38(&lbl_1_bss_20); - } else { + } + else { return 0; } } -void fn_1_8C84(s32 arg0) { - M418DllUnkStruct3* temp_r31; +void fn_1_8C84(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; s32 var_r30; - M418DllUnkStruct6* temp_r29; - M418DllUnkStruct3* temp_r28; + M418DllUnkStruct6 *temp_r29; + M418DllUnkStruct3 *temp_r28; s32 var_r27; s32 temp_r0; @@ -2368,51 +2445,43 @@ void fn_1_8C84(s32 arg0) { temp_r28->unk0->work[1] = 1; } -Vec lbl_1_data_3CC[4] = { - { -540.0f, 225.0f, -900.0f }, - { -180.0f, 225.0f, -900.0f }, - { 180.0f, 225.0f, -900.0f }, - { 540.0f, 225.0f, -900.0f } -}; +Vec lbl_1_data_3CC[4] = { { -540.0f, 225.0f, -900.0f }, { -180.0f, 225.0f, -900.0f }, { 180.0f, 225.0f, -900.0f }, { 540.0f, 225.0f, -900.0f } }; -Vec lbl_1_data_3FC[6] = { - { -200.0f, 0.0f, -450.0f }, - { 0.0f, 0.0f, -400.0f }, - { 200.0f, 0.0f, -450.0f }, - { 0.0f, 0.0f, -400.0f }, - { -100.0f, 0.0f, -425.0f }, - { 100.0f, 0.0f, -425.0f } -}; +Vec lbl_1_data_3FC[6] = { { -200.0f, 0.0f, -450.0f }, { 0.0f, 0.0f, -400.0f }, { 200.0f, 0.0f, -450.0f }, { 0.0f, 0.0f, -400.0f }, + { -100.0f, 0.0f, -425.0f }, { 100.0f, 0.0f, -425.0f } }; -s32 fn_1_8D70(s32 arg0) { +s32 fn_1_8D70(s32 arg0) +{ s32 sp10; s32 spC; s32 sp8; - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct6* temp_r30; + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct6 *temp_r30; s32 var_r29; - M418DllUnkStruct3* temp_r28; - M418DllUnkStruct3* temp_r27; - omObjData* var_r26; + M418DllUnkStruct3 *temp_r28; + M418DllUnkStruct3 *temp_r27; + omObjData *var_r26; s32 temp_r3; - void* temp_r4; + void *temp_r4; temp_r30 = &lbl_1_bss_3EC; - + for (var_r29 = 0; var_r29 < 3; var_r29++) { temp_r31 = &lbl_1_bss_26C[temp_r30->unk4[var_r29]]; if (temp_r31->unk4C != -1) { if (temp_r31->unk54 == 0) { if (temp_r31->unk50++ == 0) { temp_r31->unk54 = 1; - omSetTra(temp_r31->unk0, lbl_1_data_3CC[temp_r31->unk4C].x, lbl_1_data_3CC[temp_r31->unk4C].y, lbl_1_data_3CC[temp_r31->unk4C].z - 50.0f); + omSetTra(temp_r31->unk0, lbl_1_data_3CC[temp_r31->unk4C].x, lbl_1_data_3CC[temp_r31->unk4C].y, + lbl_1_data_3CC[temp_r31->unk4C].z - 50.0f); var_r26 = temp_r31->unk0; temp_r28 = &lbl_1_bss_26C[var_r26->work[0]]; if (temp_r28->unk1C == 0) { temp_r28->unk1C = 1; } } - } else if (temp_r31->unk54 == 1) { + } + else if (temp_r31->unk54 == 1) { fn_1_3EB0(temp_r31->unk0, lbl_1_data_3FC[temp_r30->unk1C[temp_r31->unk58]], 0.0f, 12.0f); } } @@ -2423,17 +2492,19 @@ s32 fn_1_8D70(s32 arg0) { } if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { return fn_1_AF38(&lbl_1_bss_20); - } else { + } + else { return 0; } } -void fn_1_8F74(s32 arg0) { +void fn_1_8F74(s32 arg0) +{ s32 sp8[3]; - M418DllUnkStruct3* temp_r31; + M418DllUnkStruct3 *temp_r31; s32 var_r30; - M418DllUnkStruct6* var_r29; - M418DllUnkStruct3* temp_r28; + M418DllUnkStruct6 *var_r29; + M418DllUnkStruct3 *temp_r28; var_r29 = &lbl_1_bss_3EC; for (var_r30 = 0; var_r30 < 3; var_r30++) { @@ -2450,17 +2521,20 @@ void fn_1_8F74(s32 arg0) { HuAudSStreamPlay(1); } -s32 fn_1_9094(s32 arg0) { +s32 fn_1_9094(s32 arg0) +{ if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { return fn_1_AF38(&lbl_1_bss_20); - } else { + } + else { return 0; } } -void fn_1_90DC(s32 arg0) { - M418DllUnkStruct3* temp_r31; - M418DllUnkStruct6* temp_r30; +void fn_1_90DC(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; + M418DllUnkStruct6 *temp_r30; temp_r30 = &lbl_1_bss_3EC; temp_r31 = &lbl_1_bss_26C[temp_r30->unk0]; @@ -2468,9 +2542,10 @@ void fn_1_90DC(s32 arg0) { temp_r31->unk0->work[1] = 1; } -s32 fn_1_9140(s32 arg0) { - M418DllUnkStruct6* temp_r31; - M418DllUnkStruct3* temp_r30; +s32 fn_1_9140(s32 arg0) +{ + M418DllUnkStruct6 *temp_r31; + M418DllUnkStruct3 *temp_r30; temp_r31 = &lbl_1_bss_3EC; @@ -2480,22 +2555,24 @@ s32 fn_1_9140(s32 arg0) { } if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { return fn_1_AF38(&lbl_1_bss_20); - } else { + } + else { return 0; } } -void fn_1_91E4(s32 arg0) { - M418DllUnkStruct3* temp_r31; +void fn_1_91E4(s32 arg0) +{ + M418DllUnkStruct3 *temp_r31; s32 var_r30; - M418DllUnkStruct6* temp_r29; - M418DllUnkStruct4* temp_r28; + M418DllUnkStruct6 *temp_r29; + M418DllUnkStruct4 *temp_r28; temp_r29 = &lbl_1_bss_3EC; temp_r31 = &lbl_1_bss_26C[temp_r29->unk0]; Hu3DMotionOverlayReset(temp_r31->unk0->model[0]); fn_1_ABC4(temp_r31->unk0, 0, 5, 10, 0); - + for (var_r30 = 0; var_r30 < 3; var_r30++) { temp_r28 = &lbl_1_bss_11C[var_r30]; fn_1_ABC4(temp_r28->unk0, 0, 3, 10, 1); @@ -2505,30 +2582,26 @@ void fn_1_91E4(s32 arg0) { HuAudSStreamPlay(1); } -s32 fn_1_92EC(s32 arg0) { +s32 fn_1_92EC(s32 arg0) +{ if (fn_1_B0C8(&lbl_1_bss_20, 1) != 0) { return fn_1_AF38(&lbl_1_bss_20); - } else { + } + else { return 0; } } -M418DllUnkStruct8 lbl_1_data_444[8] = { - { fn_1_888C, fn_1_88B4, -1 }, - { fn_1_89B0, fn_1_8B14, 90 }, - { fn_1_8C84, fn_1_8D70, 180 }, - { fn_1_8F74, fn_1_9094, 210 }, - { NULL, NULL, -1 }, - { fn_1_90DC, fn_1_9140, 180 }, - { fn_1_91E4, fn_1_92EC, 240 }, - { NULL, NULL, -1 } -}; +M418DllUnkStruct8 lbl_1_data_444[8] = { { fn_1_888C, fn_1_88B4, -1 }, { fn_1_89B0, fn_1_8B14, 90 }, { fn_1_8C84, fn_1_8D70, 180 }, + { fn_1_8F74, fn_1_9094, 210 }, { NULL, NULL, -1 }, { fn_1_90DC, fn_1_9140, 180 }, { fn_1_91E4, fn_1_92EC, 240 }, { NULL, NULL, -1 } }; -void fn_1_9334(void) { +void fn_1_9334(void) +{ fn_1_AEDC(&lbl_1_bss_20, &lbl_1_data_444[0]); } -s32 fn_1_9364(void) { +s32 fn_1_9364(void) +{ s32 var_r31; var_r31 = 0; @@ -2542,14 +2615,15 @@ s32 fn_1_9364(void) { return var_r31; } -void fn_1_93FC(omObjData* object) { +void fn_1_93FC(omObjData *object) +{ s32 var_r31; - M418DllUnkStruct6* var_r30; - M418DllUnkStruct3* var_r29; - M418DllUnkStruct3* var_r28; + M418DllUnkStruct6 *var_r30; + M418DllUnkStruct3 *var_r29; + M418DllUnkStruct3 *var_r28; s32 temp_r27; s32 temp_r26; - + if (WipeStatGet() == 0) { var_r30 = &lbl_1_bss_3EC; if (lbl_1_bss_10 != 0) { @@ -2560,7 +2634,8 @@ void fn_1_93FC(omObjData* object) { GWPlayer[temp_r27].coin_win = 10; } } - } else { + } + else { var_r28 = &lbl_1_bss_26C[var_r30->unk0]; temp_r26 = var_r28->unk4; if (_CheckFlag(0x1000CU) == 0) { @@ -2576,7 +2651,8 @@ void fn_1_93FC(omObjData* object) { } } -void fn_1_952C(omObjData* object) { +void fn_1_952C(omObjData *object) +{ if (omSysExitReq == 1) { HuAudSeqAllFadeOut(0xFA); WipeCreate(2, 0, -1); @@ -2584,14 +2660,15 @@ void fn_1_952C(omObjData* object) { } } -void fn_1_958C(void) { - M418DllUnkStruct3* temp_r31; +void fn_1_958C(void) +{ + M418DllUnkStruct3 *temp_r31; s32 var_r30; - M418DllUnkStruct6* temp_r29; - M418DllUnkStruct2* temp_r28; - M418DllUnkStruct4* temp_r27; - M418DllUnkStruct4* temp_r26; - M418DllUnkStruct3* temp_r25; + M418DllUnkStruct6 *temp_r29; + M418DllUnkStruct2 *temp_r28; + M418DllUnkStruct4 *temp_r27; + M418DllUnkStruct4 *temp_r26; + M418DllUnkStruct3 *temp_r25; s32 temp_r0; s32 var_r24; @@ -2600,22 +2677,22 @@ void fn_1_958C(void) { for (var_r30 = 1; var_r30 < 4; var_r30++) { fn_1_ABC4(temp_r28->unk0, var_r30, var_r30, 0, 2); } - + for (var_r30 = 8; var_r30 < 11; var_r30++) { fn_1_ABC4(temp_r28->unk0, var_r30, var_r30, 0, 1); Hu3DModelPosSet(temp_r28->unk0->model[var_r30 + 8], -360.0f + (360.0f * (var_r30 - 8)), -200.0f, -660.0f); Hu3DModelRotSet(temp_r28->unk0->model[var_r30], 0.0f, 0.0f, 20.0f); } - + temp_r28->unk4[0] = temp_r28->unk4[1] = temp_r28->unk4[2] = temp_r28->unk4[3] = 0; - + for (var_r30 = 0; var_r30 < 4; var_r30++) { temp_r27 = &lbl_1_bss_170[var_r30]; temp_r27->unk0->work[1] = temp_r27->unk0->work[2] = 0; temp_r27->unk4 = 0.0f; temp_r27->unkC = temp_r27->unk10 = temp_r27->unk14s = temp_r27->unk18s = 0; } - + for (var_r30 = 0; var_r30 < 3; var_r30++) { temp_r26 = &lbl_1_bss_11C[var_r30]; omSetTra(temp_r26->unk0, lbl_1_data_8C[var_r30].x, lbl_1_data_8C[var_r30].y, lbl_1_data_8C[var_r30].z); @@ -2624,12 +2701,13 @@ void fn_1_958C(void) { fn_1_AD14(temp_r26->unk0, 0, 0, 10, 1); temp_r26->unk0->work[1] = -1U; } - + for (var_r30 = 0; var_r30 < 4; var_r30++) { temp_r31 = &lbl_1_bss_26C[var_r30]; if (temp_r31->unk8 != 0) { omSetTra(temp_r31->unk0, 0.0f, -5000.0f, 0.0f); - } else { + } + else { omSetTra(temp_r31->unk0, 0.0f, 0.0f, 0.0f); } omSetRot(temp_r31->unk0, 0.0f, 0.0f, 0.0f); @@ -2654,21 +2732,22 @@ void fn_1_958C(void) { temp_r25 = &lbl_1_bss_26C[var_r30]; if (temp_r25->unk8 != 0) { temp_r29->unk4[var_r24++] = temp_r25->unk4; - } else { + } + else { temp_r29->unk0 = temp_r25->unk4; } } - + for (var_r30 = 0; var_r30 < 3; var_r30++) { temp_r29->unk1C[var_r30] = temp_r29->unk28[var_r30] = -1; temp_r29->unk10[var_r30] = -1; } - + temp_r29->unk34 = temp_r29->unk38 = temp_r29->unk3C = temp_r29->unk40 = 0; fn_1_5D28(); fn_1_8480(); fn_1_9334(); - + for (var_r30 = 0; var_r30 < 10; var_r30++) { lbl_1_bss_240[var_r30] = -1; } @@ -2676,7 +2755,8 @@ void fn_1_958C(void) { lbl_1_bss_240[7] = HuAudFXPlay(0x5D8); } -void fn_1_9BA4(omObjData* object) { +void fn_1_9BA4(omObjData *object) +{ switch (lbl_1_bss_18) { case 0: fn_1_958C(); @@ -2741,35 +2821,36 @@ void fn_1_9BA4(omObjData* object) { } } -void fn_1_9F94(omObjData* object) { +void fn_1_9F94(omObjData *object) +{ s32 var_r31; - M418DllUnkStruct4* temp_r30; - M418DllUnkStruct4* temp_r29; - M418DllUnkStruct3* temp_r28; - M418DllUnkStruct2* temp_r27; - M418DllWorkStruct* temp_r26; + M418DllUnkStruct4 *temp_r30; + M418DllUnkStruct4 *temp_r29; + M418DllUnkStruct3 *temp_r28; + M418DllUnkStruct2 *temp_r27; + M418DllWorkStruct *temp_r26; temp_r27 = &lbl_1_bss_1E0; temp_r27->unk0 = omAddObjEx(lbl_1_bss_0, 0x100, 0x14U, 0x14U, -1, fn_1_B4C); - + for (var_r31 = 0; var_r31 < 4; var_r31++) { temp_r30 = &lbl_1_bss_170[var_r31]; temp_r30->unk0 = omAddObjEx(lbl_1_bss_0, 0x200, 0x14U, 0x14U, -1, fn_1_14F0); temp_r30->unk0->work[0] = var_r31; } - + for (var_r31 = 0; var_r31 < 3; var_r31++) { temp_r29 = &lbl_1_bss_11C[var_r31]; temp_r29->unk0 = omAddObjEx(lbl_1_bss_0, 0x300, 0x14U, 0x14U, -1, fn_1_29A0); temp_r29->unk0->work[0] = var_r31; } - + for (var_r31 = 0; var_r31 < 4; var_r31++) { temp_r28 = &lbl_1_bss_26C[var_r31]; temp_r28->unk0 = omAddObjEx(lbl_1_bss_0, 0x400, 0x14U, 0x14U, -1, fn_1_4F60); temp_r28->unk0->work[0] = var_r31; } - + temp_r26 = &lbl_1_bss_68; temp_r26->unk0 = omAddObjEx(lbl_1_bss_0, 0x500, 0xBU, 0xBU, -1, fn_1_3054); WipeCreate(1, 0, -1); @@ -2778,7 +2859,8 @@ void fn_1_9F94(omObjData* object) { #include "src/REL/executor.c" -void fn_1_A1F0(void) { +void fn_1_A1F0(void) +{ lbl_1_bss_0 = omInitObjMan(0x3E, 0x2000); omGameSysInit(lbl_1_bss_0); HuAudAUXVolSet(-1, -1); @@ -2790,6 +2872,7 @@ void fn_1_A1F0(void) { omAddObjEx(lbl_1_bss_0, 0x2000, 0U, 0U, -1, fn_1_780); } -void ObjectSetup(void) { +void ObjectSetup(void) +{ fn_1_A1F0(); } diff --git a/src/REL/m420dll/player.c b/src/REL/m420dll/player.c index 6b424066..5bdb79f2 100644 --- a/src/REL/m420dll/player.c +++ b/src/REL/m420dll/player.c @@ -59,16 +59,111 @@ M420DllUnkStruct2 lbl_1_data_50[4] = { { 0x19, 0x01, 0x14, 0x04, 0x0A, 0x08, 0x01, 0x01 }, }; -// TODO MAKE_NUM static const s32 lbl_1_rodata_F8[8][0xB] = { - { 0x5F0000, 0x5F0017, 0x5F0018, 0x5F0068, 0x5F0069, 0x5F006A, 0x5F0035, 0x5F006B, 0x5F006E, 0x5F0049, 0x33001B }, - { 0x1A0000, 0x1A0017, 0x1A0018, 0x1A0068, 0x1A0069, 0x1A006A, 0x1A0035, 0x1A006B, 0x1A006E, 0x1A0049, 0x33001C }, - { 0x6D0000, 0x6D0017, 0x6D0018, 0x6D0068, 0x6D0069, 0x6D006A, 0x6D0035, 0x6D006B, 0x6D006E, 0x6D0049, 0x33001D }, - { 0x8A0000, 0x8A0017, 0x8A0018, 0x8A0068, 0x8A0069, 0x8A006A, 0x8A0035, 0x8A006B, 0x8A006E, 0x8A0049, 0x33001E }, - { 0x850000, 0x850017, 0x850018, 0x850068, 0x850069, 0x85006A, 0x850035, 0x85006B, 0x85006E, 0x850049, 0x33001F }, - { 0x110000, 0x110017, 0x110018, 0x110068, 0x110069, 0x11006A, 0x110035, 0x11006B, 0x11006E, 0x110049, 0x330020 }, - { 0x0D0000, 0x0D0017, 0x0D0018, 0x0D0068, 0x0D0069, 0x0D006A, 0x0D0035, 0x0D006B, 0x0D006E, 0x0D0049, 0x330021 }, - { 0x810000, 0x810017, 0x810018, 0x810068, 0x810069, 0x81006A, 0x810035, 0x81006B, 0x81006E, 0x810049, 0x330022 }, + { + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x68), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x69), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x35), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x49), + 0x33001B, + }, + { + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x00), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x17), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x18), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x68), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x69), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x35), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x49), + 0x33001C, + }, + { + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x00), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x17), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x18), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x68), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x69), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x35), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x49), + 0x33001D, + }, + { + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x00), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x17), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x18), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x68), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x69), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x35), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x49), + 0x33001E, + }, + { + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x00), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x17), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x18), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x68), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x69), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x35), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x49), + 0x33001F, + }, + { + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x00), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x17), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x18), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x68), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x69), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x35), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x49), + 0x330020, + }, + { + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x00), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x17), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x18), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x68), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x69), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x35), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x49), + 0x330021, + }, + { + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x00), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x17), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x18), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x68), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x69), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x6A), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x35), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x6B), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x6E), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x49), + 0x330022, + }, }; static const Vec lbl_1_rodata_258[4][2] = { { { -372.0f, 300.0f, -220.0f }, { 0.0f, 50.0f, 0.0f } }, diff --git a/src/REL/m424Dll/claw.c b/src/REL/m424Dll/claw.c index 752b4afb..2e6b061f 100644 --- a/src/REL/m424Dll/claw.c +++ b/src/REL/m424Dll/claw.c @@ -1,6 +1,5 @@ #include "REL/m424Dll.h" -#include "math.h" #include "ext_math.h" #include "game/audio.h" #include "game/chrman.h" @@ -8,6 +7,8 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/pad.h" +#include "math.h" + // STRUCT typedef struct _M424DllClawStruct { @@ -66,8 +67,8 @@ typedef struct _M424DllClawStruct3 { } M424DllClawStruct3; // sizeof 0x8 // BSS -Process* lbl_1_bss_6DC; -omObjData* lbl_1_bss_6D8; +Process *lbl_1_bss_6DC; +omObjData *lbl_1_bss_6D8; s32 lbl_1_bss_6D0[2]; s32 lbl_1_bss_6CC; s32 lbl_1_bss_6C8; @@ -77,25 +78,30 @@ M424DllClawStruct3 lbl_1_bss_640[0x10]; // DATA Vec lbl_1_data_1E0[4] = { - { 950.0f, 275.0f, 0.0f }, + { 950.0f, 275.0f, 0.0f }, { 900.0f, 360.0f, 320.0f }, -{ 494.99996f, 220.0f, 494.99996f }, - { 0.0f, 225.0f, 0.0f }, + { 494.99996f, 220.0f, 494.99996f }, + { 0.0f, 225.0f, 0.0f }, }; f32 lbl_1_data_210[3] = { 12.0f, 11.0f, 17.5f }; char lbl_1_data_21C[12][0x10] = { - "tsume10", "tsume11", "tsume12", - "tsume20", "tsume21", "tsume22", - "tsume30", "tsume31", "tsume32", - "tsume40", "tsume41", "tsume42", -}; -u8 lbl_1_data_2DC[12] = { - 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0 -}; -s32 lbl_1_data_2E8[9] = { - 0x5F0000, 0x5F0002, 0x5F0003, 0x5F0005, 0x5F0006, - 0x5F0042, 0x5F0008, 0x5F0017, 0x5F0018 + "tsume10", + "tsume11", + "tsume12", + "tsume20", + "tsume21", + "tsume22", + "tsume30", + "tsume31", + "tsume32", + "tsume40", + "tsume41", + "tsume42", }; +u8 lbl_1_data_2DC[12] = { 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0 }; +s32 lbl_1_data_2E8[9] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02), DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05), DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x06), DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x42), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x08), DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18) }; Vec lbl_1_data_30C = { 0.0f, 0.0f, 0.0f }; // PROTO @@ -104,22 +110,23 @@ void fn_1_8924(u8, s32); u8 fn_1_8950(u8); u8 fn_1_897C(u8); u8 fn_1_89A8(u8); -Vec* fn_1_89D4(u8); -void fn_1_94D0(omObjData*); -void fn_1_9A64(omObjData*); -void fn_1_AE58(omObjData*); -void fn_1_AE64(omObjData*); +Vec *fn_1_89D4(u8); +void fn_1_94D0(omObjData *); +void fn_1_9A64(omObjData *); +void fn_1_AE58(omObjData *); +void fn_1_AE64(omObjData *); u16 fn_1_B79C(f32, f32, f32); -s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3); +s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3); void fn_1_C604(s32, s32); -s32 fn_1_C878(s16, const char*, Mtx, s32); -void fn_1_C99C(HsfObject*, Mtx, const char*, Mtx); +s32 fn_1_C878(s16, const char *, Mtx, s32); +void fn_1_C99C(HsfObject *, Mtx, const char *, Mtx); void fn_1_CE74(s32); -void fn_1_CF00(Process*); -void fn_1_CF80(omObjData*); +void fn_1_CF00(Process *); +void fn_1_CF80(omObjData *); s32 fn_1_D010(s32, s32); -omObjData* fn_1_93F0(Process* arg0) { +omObjData *fn_1_93F0(Process *arg0) +{ lbl_1_bss_6DC = arg0; lbl_1_bss_6D8 = omAddObjEx(arg0, 0x40, 5, 9, -1, fn_1_94D0); lbl_1_bss_6CC = 0; @@ -130,13 +137,15 @@ omObjData* fn_1_93F0(Process* arg0) { return lbl_1_bss_6D8; } -void fn_1_94A4(void) { +void fn_1_94A4(void) +{ fn_1_AE58(lbl_1_bss_6D8); } -void fn_1_94D0(omObjData* arg0) { +void fn_1_94D0(omObjData *arg0) +{ s32 var_r29; - M424DllClawStruct* var_r31; + M424DllClawStruct *var_r31; var_r31 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1B0, 0x10000000); memset(var_r31, 0, 0x1B0); @@ -170,7 +179,7 @@ void fn_1_94D0(omObjData* arg0) { } var_r31->unk184 = -1; var_r31->unk30 = lbl_1_data_30C; - + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { var_r31->unk3C[var_r29] = lbl_1_data_30C; var_r31->unkCC[var_r29] = lbl_1_data_30C; @@ -218,7 +227,8 @@ void fn_1_94D0(omObjData* arg0) { arg0->func = fn_1_9A64; } -void fn_1_9A64(omObjData* arg0) { +void fn_1_9A64(omObjData *arg0) +{ Mtx sp74; Mtx sp44; Vec sp38; @@ -228,7 +238,7 @@ void fn_1_9A64(omObjData* arg0) { Vec sp8; f32 var_f31; f32 temp_f30; - M424DllClawStruct* temp_r31; + M424DllClawStruct *temp_r31; s32 var_r29; s32 temp_r28; s32 var_r27; @@ -242,13 +252,15 @@ void fn_1_9A64(omObjData* arg0) { if (temp_r31->unk6 != 0) { fn_1_AE64(arg0); } - } else { + } + else { temp_r31->unkC = 0; temp_r31->unkA = 0; } if (fn_1_FE0() <= 1) { var_r25 = -1; - } else { + } + else { var_r25 = temp_r31->unk10; } switch (var_r25) { @@ -262,7 +274,8 @@ void fn_1_9A64(omObjData* arg0) { if (fn_1_FE0() > 4) { temp_r31->unk10 = 10; temp_r31->unk12 = 0; - } else if ((temp_r31->unkA & 0x100) != 0) { + } + else if ((temp_r31->unkA & 0x100) != 0) { HuAudFXPlay(0x62A); temp_r31->unk184 = HuAudFXPlay(0x621); temp_r31->unk10 = 2; @@ -275,7 +288,8 @@ void fn_1_9A64(omObjData* arg0) { if (temp_r31->unk24 >= 1.0f) { temp_r31->unk24 = 1.0f; temp_r31->unk20 = -1.0f; - } else { + } + else { if (temp_r31->unk24 <= 0.0f) { temp_r31->unk24 = 0.0f; temp_r31->unk20 = 1.0f; @@ -289,7 +303,8 @@ void fn_1_9A64(omObjData* arg0) { HuAudFXPlay(0x622); temp_r31->unk10 = 10; temp_r31->unk12 = 0; - } else if (((temp_r31->unkC & 0x100) == 0) || (temp_r31->unk12 >= 360.0f)) { + } + else if (((temp_r31->unkC & 0x100) == 0) || (temp_r31->unk12 >= 360.0f)) { if (temp_r31->unk184 != -1) { HuAudFXStop(temp_r31->unk184); temp_r31->unk184 = -1; @@ -363,23 +378,27 @@ void fn_1_9A64(omObjData* arg0) { temp_r31->unk28 = 0.0f; if (temp_r31->unk168 != -1) { var_r27 = fn_1_897C(temp_r31->unk168); - } else { + } + else { var_r27 = -1; } if (temp_r31->unk168 == -1) { if (fn_1_FE0() > 4) { temp_r31->unk10 = 10; temp_r31->unk12 = 0; - } else { + } + else { temp_r31->unk10 = 8; temp_r31->unk12 = 0; HuAudFXPlay(0x625); } - } else if (var_r27 == 0) { + } + else if (var_r27 == 0) { temp_r31->unk10 = 8; temp_r31->unk12 = 0; HuAudFXPlay(0x625); - } else { + } + else { if (temp_r31->unk168 != -1) { fn_1_252C(-0.01f, 0x3C); fn_1_2670(0x75, 0); @@ -394,15 +413,18 @@ void fn_1_9A64(omObjData* arg0) { case 7: if (arg0->rot.y < temp_r31->unk180) { arg0->rot.y += 1.25f; - } else if (arg0->rot.y > temp_r31->unk180) { + } + else if (arg0->rot.y > temp_r31->unk180) { arg0->rot.y = temp_r31->unk180; } var_f31 = 0.35f - temp_r31->unk24; if (var_f31 > 0.0125f) { temp_r31->unk24 += 0.0125f; - } else if (var_f31 < -0.0125f) { + } + else if (var_f31 < -0.0125f) { temp_r31->unk24 -= 0.0125f; - } else { + } + else { temp_r31->unk24 = 0.35f; } if ((arg0->rot.y == temp_r31->unk180) && (0.35f == temp_r31->unk24)) { @@ -423,7 +445,8 @@ void fn_1_9A64(omObjData* arg0) { var_r26 = fn_1_89A8(temp_r31->unk168); HuAudCharVoicePlay(var_r26, 0x123); fn_1_D010(0x628, 30); - } else { + } + else { fn_1_8924(temp_r31->unk168, 2); } temp_r31->unk16C = temp_r31->unk168; @@ -451,12 +474,14 @@ void fn_1_9A64(omObjData* arg0) { temp_r31->unk12++; if (arg0->rot.y > 270.0f) { arg0->rot.y -= 1.25f; - } else if (arg0->rot.y < 270.0f) { + } + else if (arg0->rot.y < 270.0f) { arg0->rot.y = 270.0f; } if (temp_r31->unk24 > 0.025f) { temp_r31->unk24 -= 0.025f; - } else if (temp_r31->unk24 < 0.05f) { + } + else if (temp_r31->unk24 < 0.05f) { temp_r31->unk24 = 0.0f; } if ((270.0f == arg0->rot.y) && (0.0f == temp_r31->unk24)) { @@ -482,7 +507,8 @@ void fn_1_9A64(omObjData* arg0) { temp_r31->unk18 = fn_1_B79C(lbl_1_data_1E0[0].y, lbl_1_data_1E0[1].y, temp_r31->unk1C); temp_r31->unk10 = 11; temp_r31->unk12 = 0; - } else { + } + else { temp_r31->unk10 = 13; temp_r31->unk12 = 0; } @@ -520,7 +546,8 @@ void fn_1_9A64(omObjData* arg0) { temp_r31->unk10 = 0xC; } } - } else { + } + else { sp14 = lbl_1_data_1E0[var_r29]; sp8 = lbl_1_data_1E0[var_r29 + 1]; var_f31 = atan2d((sp8.x - arg0->trans.x), (sp8.z - arg0->trans.z)); @@ -551,7 +578,8 @@ void fn_1_9A64(omObjData* arg0) { if (fn_1_B888() != 0) { temp_r31->unk10 = 14; temp_r31->unk12 = 0; - } else { + } + else { temp_r31->unk10 = 15; temp_r31->unk12 = 0; } @@ -585,7 +613,7 @@ void fn_1_9A64(omObjData* arg0) { temp_r31->unk30.x = sp74[0][3]; temp_r31->unk30.y = sp74[1][3]; temp_r31->unk30.z = sp74[2][3]; - + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { PSMTXCopy(sp44, sp74); fn_1_C878(arg0->model[4], lbl_1_data_21C[var_r29], sp74, 1); @@ -611,25 +639,17 @@ void fn_1_9A64(omObjData* arg0) { temp_r31->unk164 = 1; } -void fn_1_AE58(omObjData* arg0) { +void fn_1_AE58(omObjData *arg0) +{ arg0->func = NULL; } -f32 lbl_1_data_36C[4][2] = { - 30.0f, 24.0f, - 24.0f, 18.0f, - 12.0f, 6.0f, - 6.0f, 0.0f -}; +f32 lbl_1_data_36C[4][2] = { 30.0f, 24.0f, 24.0f, 18.0f, 12.0f, 6.0f, 6.0f, 0.0f }; -f32 lbl_1_data_38C[4][2] = { - 0.2f, 0.15f, - 0.15f, 0.1f, - 0.1f, 0.05f, - 0.05f, 0.0f -}; +f32 lbl_1_data_38C[4][2] = { 0.2f, 0.15f, 0.15f, 0.1f, 0.1f, 0.05f, 0.05f, 0.0f }; -void fn_1_AE64(omObjData* arg0) { +void fn_1_AE64(omObjData *arg0) +{ M424DllClawStruct2 sp20[8]; M424DllClawStruct2 sp10; s32 spC; @@ -642,12 +662,12 @@ void fn_1_AE64(omObjData* arg0) { f32 var_f24; s32 temp_r24; s32 temp_r23; - M424DllClawStruct* temp_r31; - Vec* var_r30; + M424DllClawStruct *temp_r31; + Vec *var_r30; s32 var_r29; s32 var_r28; s32 var_r27; - M424DllBallStruct2* var_r26; + M424DllBallStruct2 *var_r26; s32 var_r25; spC = 0; @@ -693,7 +713,7 @@ void fn_1_AE64(omObjData* arg0) { if (var_r28 != 0) { for (var_r29 = 0; var_r29 < (var_r28 - 1); var_r29++) { var_r27 = var_r29 + 1; - for (;var_r27 < var_r28; var_r27++) { + for (; var_r27 < var_r28; var_r27++) { if (sp20[var_r29].unkC < sp20[var_r27].unkC) { sp10 = sp20[var_r29]; sp20[var_r29] = sp20[var_r27]; @@ -729,7 +749,8 @@ void fn_1_AE64(omObjData* arg0) { var_f29 = (var_f29 - 350.0f) / 250.0f + temp_r23; if (var_f29 < 0.0f) { var_f29 = 0.0f; - } else if (var_f29 > 1.0f) { + } + else if (var_f29 > 1.0f) { var_f29 = 1.0f; } temp_r31->unk194 = (60.0f * (1.0f - var_f29)); @@ -748,7 +769,8 @@ void fn_1_AE64(omObjData* arg0) { temp_r31->unk1AC = 0; return; } - } else { + } + else { if (var_f31 >= (15.0f + temp_r31->unk1A8)) { temp_r31->unk1A0++; temp_r31->unk1A8 = var_f31; @@ -766,7 +788,8 @@ void fn_1_AE64(omObjData* arg0) { if (++temp_r31->unk1AC >= temp_r31->unk194) { var_r25 = 0; } - } else { + } + else { var_r25 = 0; } if (var_r25 != 0) { @@ -778,7 +801,8 @@ void fn_1_AE64(omObjData* arg0) { } } -u16 fn_1_B79C(f32 arg0, f32 arg1, f32 arg2) { +u16 fn_1_B79C(f32 arg0, f32 arg1, f32 arg2) +{ f32 var_f31; f32 var_f3; u16 var_r31; @@ -791,8 +815,9 @@ u16 fn_1_B79C(f32 arg0, f32 arg1, f32 arg2) { return var_r31; } -s32 fn_1_B804(void) { - M424DllClawStruct* temp_r31; +s32 fn_1_B804(void) +{ + M424DllClawStruct *temp_r31; if (!lbl_1_bss_6D8) { return 0; @@ -807,17 +832,20 @@ s32 fn_1_B804(void) { return 0; } -s32 fn_1_B888(void) { +s32 fn_1_B888(void) +{ if (lbl_1_bss_6CC >= 3) { return 1; - } else { + } + else { return 0; } } -s32 fn_1_B8AC(void) { - M424DllClawStruct* temp_r31; - +s32 fn_1_B8AC(void) +{ + M424DllClawStruct *temp_r31; + if (!lbl_1_bss_6D8) { return 0; } @@ -832,9 +860,10 @@ s32 fn_1_B8AC(void) { return 0; } -s32 fn_1_B924(void) { - M424DllClawStruct* temp_r31; - +s32 fn_1_B924(void) +{ + M424DllClawStruct *temp_r31; + if (!lbl_1_bss_6D8) { return 0; } @@ -849,11 +878,13 @@ s32 fn_1_B924(void) { return 0; } -void fn_1_B99C(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2) { +void fn_1_B99C(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2) +{ fn_1_B9E0(arg0, arg1, arg8, arg2, 0x10); } -s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3) { +s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3) +{ Vec sp60; Vec sp54; Vec sp48; @@ -870,11 +901,11 @@ s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3) { f32 var_f25; f32 var_f24; f32 var_f23; - M424DllClawStruct* temp_r31; + M424DllClawStruct *temp_r31; s32 var_r29; s32 var_r28; s32 var_r26; - omObjData* var_r24; + omObjData *var_r24; s32 var_r23; var_r23 = 1; @@ -907,7 +938,8 @@ s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3) { var_f23 = sqrtf((sp18.x * sp18.x) + (sp18.z * sp18.z)); if ((temp_r31->unk3C[var_r29].y > sp24.y) && (var_f23 < 17.599999999999998)) { temp_r31->unk15C = 1; - } else { + } + else { PSVECNormalize(&sp18, &sp18); PSVECScale(&sp18, &sp18, temp_f30); PSVECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); @@ -947,9 +979,10 @@ s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3) { PSVECAdd(&sp60, &sp30, arg2); var_r28 = 1; var_r26 = 1; - } else if (var_f29 < temp_f30) { + } + else if (var_f29 < temp_f30) { if (PSVECMag(&sp30) <= 0.0f) { - + sp30.x = sp30.y = 0.0f; sp30.z = 1.0f; } @@ -1025,12 +1058,13 @@ s32 fn_1_B9E0(Vec* arg0, Vec* arg1, f32 arg8, Vec* arg2, s32 arg3) { return var_r28; } -s32 fn_1_C210(Vec* arg0) { +s32 fn_1_C210(Vec *arg0) +{ Vec sp1C; Vec sp10; f32 spC; - M424DllClawStruct* temp_r31; - omObjData* var_r30; + M424DllClawStruct *temp_r31; + omObjData *var_r30; s32 var_r29; var_r29 = 0; @@ -1052,21 +1086,23 @@ s32 fn_1_C210(Vec* arg0) { return var_r29; } -void fn_1_C2E0(s32 arg0) { +void fn_1_C2E0(s32 arg0) +{ Vec sp4C; Vec sp40; Vec sp34; Vec sp28; - Vec* spC; - M424DllBallStruct2* temp_r27; - Vec* temp_r28; - M424DllClawStruct* temp_r31; + Vec *spC; + M424DllBallStruct2 *temp_r27; + Vec *temp_r28; + M424DllClawStruct *temp_r31; s32 var_r30; s32 var_r26; - omObjData* var_r25; + omObjData *var_r25; + + if ((u8)omPauseChk() != 0U) + return; - if ((u8)omPauseChk() != 0U) return; - var_r25 = lbl_1_bss_6D8; if (lbl_1_bss_6D8) { temp_r31 = var_r25->data; @@ -1074,10 +1110,11 @@ void fn_1_C2E0(s32 arg0) { temp_r27 = &lbl_1_bss_60[0]; if (temp_r27) { var_r26 = 0x10; - + for (var_r30 = 0; var_r30 < lbl_1_bss_58; var_r30++) { temp_r27 = &lbl_1_bss_60[var_r30]; - if ((fn_1_8950(var_r30) == 3) || (fn_1_8950(var_r30) == 4)) continue; + if ((fn_1_8950(var_r30) == 3) || (fn_1_8950(var_r30) == 4)) + continue; temp_r28 = fn_1_89D4(var_r30); spC = fn_1_8A00(var_r30); sp28 = *temp_r28; @@ -1116,18 +1153,19 @@ void fn_1_C2E0(s32 arg0) { } } -void fn_1_C604(s32 arg0, s32 arg1) { +void fn_1_C604(s32 arg0, s32 arg1) +{ Vec sp30; Vec sp24; Vec sp18; Vec spC; - M424DllBallStruct2* sp8; - Vec* var_r31; + M424DllBallStruct2 *sp8; + Vec *var_r31; f32 temp_f31; f32 var_f30; s32 var_r30; - M424DllBallStruct2* var_r28; - Vec* var_r27; + M424DllBallStruct2 *var_r28; + Vec *var_r27; sp8 = &lbl_1_bss_60[var_r30]; var_r27 = fn_1_89D4(arg0); @@ -1145,7 +1183,8 @@ void fn_1_C604(s32 arg0, s32 arg1) { sp18.x *= temp_f31; sp18.y *= temp_f31; sp18.z *= temp_f31; - } else { + } + else { sp18.x = 0.0f; sp18.y = 0.0f; sp18.z = 1.0f; @@ -1168,22 +1207,25 @@ void fn_1_C604(s32 arg0, s32 arg1) { } } -void fn_1_C854(void) { +void fn_1_C854(void) +{ fn_1_C2E0(0); } -s32 fn_1_C878(s16 arg0, const char* arg1, Mtx arg2, s32 arg3) { +s32 fn_1_C878(s16 arg0, const char *arg1, Mtx arg2, s32 arg3) +{ Mtx sp44; Mtx sp14; - HsfData* temp_r30; - ModelData* temp_r31; + HsfData *temp_r30; + ModelData *temp_r31; temp_r31 = &Hu3DData[arg0]; temp_r30 = temp_r31->hsfData; lbl_1_bss_6C8 = 0; if (temp_r31->unk_08 != -1) { lbl_1_bss_6C4 = 1; - } else { + } + else { lbl_1_bss_6C4 = 0; } mtxRot(sp14, temp_r31->rot.x, temp_r31->rot.y, temp_r31->rot.z); @@ -1197,18 +1239,19 @@ s32 fn_1_C878(s16 arg0, const char* arg1, Mtx arg2, s32 arg3) { return lbl_1_bss_6C8; } -void fn_1_C99C(HsfObject* arg0, Mtx arg1, const char* arg2, Mtx arg3) { +void fn_1_C99C(HsfObject *arg0, Mtx arg1, const char *arg2, Mtx arg3) +{ Mtx spF8; Mtx spC8; Mtx sp98; Mtx sp68; Mtx sp38; Mtx sp8; - HsfTransform* var_r31; - HsfTransform* var_r30; - HsfTransform* var_r29; - HsfObject* temp_r28; - HsfObject* temp_r27; + HsfTransform *var_r31; + HsfTransform *var_r30; + HsfTransform *var_r29; + HsfObject *temp_r28; + HsfObject *temp_r27; u32 var_r25; u32 var_r24; u32 var_r23; @@ -1216,13 +1259,15 @@ void fn_1_C99C(HsfObject* arg0, Mtx arg1, const char* arg2, Mtx arg3) { if (lbl_1_bss_6C8 == 0) { if (lbl_1_bss_6C4 != 0) { var_r31 = &arg0->data.curr; - } else { + } + else { var_r31 = &arg0->data.base; } if ((var_r31->scale.x <= 0.0f) && (var_r31->scale.y <= 0.0f) && (var_r31->scale.z <= 0.0f)) { PSMTXCopy(arg1, spF8); OSReport("OBJ MTX CHECK ERROR %s \n", arg0->name); - } else { + } + else { mtxRot(spC8, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); PSMTXScale(spF8, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); PSMTXConcat(spC8, spF8, spF8); @@ -1241,13 +1286,15 @@ void fn_1_C99C(HsfObject* arg0, Mtx arg1, const char* arg2, Mtx arg3) { if (lbl_1_bss_6C8 == 0) { if (lbl_1_bss_6C4 != 0) { var_r30 = &temp_r28->data.curr; - } else { + } + else { var_r30 = &temp_r28->data.base; } if ((var_r30->scale.x <= 0.0f) && (var_r30->scale.y <= 0.0f) && (var_r30->scale.z <= 0.0f)) { PSMTXCopy(spF8, sp68); OSReport("OBJ MTX CHECK ERROR %s \n", temp_r28->name); - } else { + } + else { mtxRot(sp98, var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); PSMTXScale(sp68, var_r30->scale.x, var_r30->scale.y, var_r30->scale.z); PSMTXConcat(sp98, sp68, sp68); @@ -1266,13 +1313,15 @@ void fn_1_C99C(HsfObject* arg0, Mtx arg1, const char* arg2, Mtx arg3) { if (lbl_1_bss_6C8 == 0) { if (lbl_1_bss_6C4 != 0) { var_r29 = &temp_r27->data.curr; - } else { + } + else { var_r29 = &temp_r27->data.base; } if ((var_r29->scale.x <= 0.0f) && (var_r29->scale.y <= 0.0f) && (var_r29->scale.z <= 0.0f)) { PSMTXCopy(sp68, sp8); OSReport("OBJ MTX CHECK ERROR %s \n", temp_r27->name); - } else { + } + else { mtxRot(sp38, var_r29->rot.x, var_r29->rot.y, var_r29->rot.z); PSMTXScale(sp8, var_r29->scale.x, var_r29->scale.y, var_r29->scale.z); PSMTXConcat(sp38, sp8, sp8); @@ -1296,8 +1345,9 @@ void fn_1_C99C(HsfObject* arg0, Mtx arg1, const char* arg2, Mtx arg3) { } } -void fn_1_CE74(s32 arg0) { - ModelData* temp_r31; +void fn_1_CE74(s32 arg0) +{ + ModelData *temp_r31; temp_r31 = &Hu3DData[arg0]; if (temp_r31->unk_08 != -1) { @@ -1311,21 +1361,23 @@ void fn_1_CE74(s32 arg0) { } } -void fn_1_CF00(Process* arg0) { - M424DllClawStruct3* var_r31; +void fn_1_CF00(Process *arg0) +{ + M424DllClawStruct3 *var_r31; s32 var_r30; omAddObjEx(arg0, 0x40, 0, 0, -1, fn_1_CF80); var_r31 = &lbl_1_bss_640[0]; - + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { var_r31->unk0 = -1; var_r31->unk4 = -1; } } -void fn_1_CF80(omObjData* arg0) { - M424DllClawStruct3* var_r31; +void fn_1_CF80(omObjData *arg0) +{ + M424DllClawStruct3 *var_r31; s32 var_r30; var_r31 = &lbl_1_bss_640[0]; @@ -1340,13 +1392,15 @@ void fn_1_CF80(omObjData* arg0) { } } -s32 fn_1_D010(s32 arg0, s32 arg1) { - M424DllClawStruct3* var_r31; +s32 fn_1_D010(s32 arg0, s32 arg1) +{ + M424DllClawStruct3 *var_r31; s32 var_r30; var_r31 = &lbl_1_bss_640[0]; for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { - if (var_r31->unk0 == -1) break; + if (var_r31->unk0 == -1) + break; } if (var_r30 >= 0x10) { return -1; diff --git a/src/REL/m430Dll/main.c b/src/REL/m430Dll/main.c index bf93c2c6..f7320e52 100644 --- a/src/REL/m430Dll/main.c +++ b/src/REL/m430Dll/main.c @@ -139,7 +139,7 @@ void ObjectSetup(void) lbl_1_bss_34 = omAddObjEx(var_r31, 0xA, 0, 0, -1, fn_1_65C); fn_1_4A80(var_r31); fn_1_BBC4(var_r31); - lbl_1_bss_10 = espEntry(0x3D001B, 0x64, 0); + lbl_1_bss_10 = espEntry(DATA_MAKE_NUM(DATADIR_M430, 0x1B), 0x64, 0); espPosSet(lbl_1_bss_10, 288.0, 240.0); espScaleSet(lbl_1_bss_10, 0.22499999403953552, 60.0); espDispOff(lbl_1_bss_10); diff --git a/src/REL/m430Dll/player.c b/src/REL/m430Dll/player.c index 981602dc..e42fbd99 100644 --- a/src/REL/m430Dll/player.c +++ b/src/REL/m430Dll/player.c @@ -219,21 +219,22 @@ void fn_1_F6A0(omObjData *object); void fn_1_FC9C(omObjData *object); M430PlayerData170Struct lbl_1_data_170[7] = { - { 0x5F0042, -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x42), -1 }, { 0, 1 }, { 0, 2 }, { 0, 3 }, { 0, -1 }, - { 0x5F0017, -1 }, - { 0x5F0018, -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18), -1 }, }; M430PlayerData170Struct lbl_1_data_1A8[4] = { { 0, 4 }, - { 0x5F0000, -1 }, - { 0x5F0017, -1 }, - { 0x5F0018, -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18), -1 }, }; -s32 lbl_1_data_1C8[5] = { 0, 0x3D0031, 0x3D0039, 0x3D0041, 0x3D0049 }; +s32 lbl_1_data_1C8[5] = { 0, DATA_MAKE_NUM(DATADIR_M430, 0x31), DATA_MAKE_NUM(DATADIR_M430, 0x39), DATA_MAKE_NUM(DATADIR_M430, 0x41), + DATA_MAKE_NUM(DATADIR_M430, 0x49) }; float lbl_1_data_1DC[7] = { -262.5f, -173.25f, -86.625f, 0.0f, 86.625f, 173.25f, 262.5f }; Vec lbl_1_data_1F8[8] = { { 0.0f, 0.0f, 0.0f }, @@ -246,9 +247,9 @@ Vec lbl_1_data_1F8[8] = { { -60.000004f, 0.0f, -120.00001f }, }; float lbl_1_data_258[8] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 25.0f, 0.0f, 25.0f }; -s32 lbl_1_data_278[2] = { 0x3D001C, 0x3D001D }; -s32 lbl_1_data_280[2] = { 0x3D001E, 0x3D001F }; -s32 lbl_1_data_288[2] = { 0x3D0020, 0x3D0021 }; +s32 lbl_1_data_278[2] = { DATA_MAKE_NUM(DATADIR_M430, 0x1C), DATA_MAKE_NUM(DATADIR_M430, 0x1D) }; +s32 lbl_1_data_280[2] = { DATA_MAKE_NUM(DATADIR_M430, 0x1E), DATA_MAKE_NUM(DATADIR_M430, 0x1F) }; +s32 lbl_1_data_288[2] = { DATA_MAKE_NUM(DATADIR_M430, 0x20), DATA_MAKE_NUM(DATADIR_M430, 0x21) }; s32 lbl_1_bss_17C; Process *lbl_1_bss_178; @@ -427,7 +428,7 @@ void fn_1_C1E4(omObjData *object) Hu3DModelLayerSet(object->model[1], 2); Hu3DModelCameraSet(object->model[1], 3); Hu3DModelScaleSet(object->model[1], 1.2f, 1.2f, 1.2f); - object->model[2] = Hu3DModelCreateFile(0x3D0025); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x25)); Hu3DModelLayerSet(object->model[2], 1); Hu3DModelCameraSet(object->model[2], 3); work->unk_60 = HuAudFXPlay(0x67A); @@ -1659,14 +1660,14 @@ void fn_1_10B88(void) for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { var_r31->unk_00 = var_r30; if (var_r30 == 0) { - var_r31->unk_04 = Hu3DModelCreateFile(0x3D0023); + var_r31->unk_04 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x23)); } else { var_r31->unk_04 = Hu3DModelLink(lbl_1_bss_16C[0].unk_04); } Hu3DModelLayerSet(var_r31->unk_04, 2); Hu3DModelAttrSet(var_r31->unk_04, HU3D_ATTR_DISPOFF); - var_r31->unk_08 = Hu3DModelCreateFile(0x3D0024); + var_r31->unk_08 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x24)); Hu3DModelLayerSet(var_r31->unk_08, 2); Hu3DModelAttrSet(var_r31->unk_08, HU3D_ATTR_DISPOFF); var_r31->unk_0C = 0; @@ -1836,7 +1837,7 @@ void fn_1_113AC(void) for (var_r30 = 0; var_r30 < 0x20; var_r31++) { var_r31->unk_00 = var_r30; if (var_r30 == 0) { - var_r31->unk_04 = Hu3DModelCreateFile(0x3D0022); + var_r31->unk_04 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x22)); } else { var_r31->unk_04 = Hu3DModelLink(lbl_1_bss_168[0].unk_04); @@ -2006,7 +2007,7 @@ void fn_1_11C1C(void) memset(var_r31, 0, 8 * sizeof(M430PlayerBss164Struct)); for (var_r30 = 0; var_r30 < 8; var_r30++, var_r31++) { if (var_r30 == 0) { - var_r31->unk_14 = HuSprAnimRead(HuDataReadNum(0x3D0026, MEMORY_DEFAULT_NUM)); + var_r31->unk_14 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M430, 0x26), MEMORY_DEFAULT_NUM)); } else { var_r31->unk_14 = lbl_1_bss_164[0].unk_14; @@ -2182,7 +2183,7 @@ void fn_1_125C4(void) switch (var_r30) { case 0: case 1: - var_r31->unk_10[var_r30] = espEntry(0x610033, 1, 0); + var_r31->unk_10[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x33), 1, 0); espPriSet(var_r31->unk_10[var_r30], 0x40); var_r31->unk_28[var_r30][0] = (var_r30 * 0x14) + 0xB; var_r31->unk_28[var_r30][1] = 0; @@ -2191,17 +2192,17 @@ void fn_1_125C4(void) break; case 2: if (var_r29 == 0) { - var_r31->unk_10[var_r30] = espEntry(0x61001B, 1, 0); + var_r31->unk_10[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x1B), 1, 0); } else { - var_r31->unk_10[var_r30] = espEntry(0x61001C, 1, 0); + var_r31->unk_10[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x1C), 1, 0); } espPriSet(var_r31->unk_10[var_r30], 0xFF); var_r31->unk_28[var_r30][0] = 0; var_r31->unk_28[var_r30][1] = 0; break; case 3: - var_r31->unk_10[var_r30] = espEntry(0x61001D, 1, 0); + var_r31->unk_10[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x1D), 1, 0); espPriSet(var_r31->unk_10[var_r30], 0x100); espTPLvlSet(var_r31->unk_10[var_r30], 0.6000000238418579); espColorSet(var_r31->unk_10[var_r30], 0, 0, 0); @@ -2209,13 +2210,13 @@ void fn_1_125C4(void) var_r31->unk_28[var_r30][1] = 0; break; case 4: - var_r31->unk_10[var_r30] = espEntry(0x610008, 1, 0); + var_r31->unk_10[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x08), 1, 0); espPriSet(var_r31->unk_10[var_r30], 0x80); var_r31->unk_28[var_r30][0] = -0x21; var_r31->unk_28[var_r30][1] = 0; break; case 5: - var_r31->unk_10[var_r30] = espEntry(0x3D0028, 1, 0); + var_r31->unk_10[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_M430, 0x28), 1, 0); espPriSet(var_r31->unk_10[var_r30], 0x80); espZRotSet(var_r31->unk_10[var_r30], 45.0); var_r31->unk_28[var_r30][0] = -0xA; diff --git a/src/REL/m430Dll/water.c b/src/REL/m430Dll/water.c index 1d295c95..f9b938a2 100644 --- a/src/REL/m430Dll/water.c +++ b/src/REL/m430Dll/water.c @@ -165,11 +165,11 @@ void fn_1_4A80(Process *process) { omObjData *object; - lbl_1_bss_150 = HuSprAnimRead(HuDataReadNum(0x3D0019, 0x10000000)); - lbl_1_bss_14C = HuSprAnimRead(HuDataReadNum(0x3D001A, 0x10000000)); - lbl_1_bss_148 = HuSprAnimRead(HuDataReadNum(0x3D0014, 0x10000000)); - lbl_1_bss_144 = HuSprAnimRead(HuDataReadNum(0x3D0017, 0x10000000)); - lbl_1_bss_140 = HuSprAnimRead(HuDataReadNum(0x3D0018, 0x10000000)); + lbl_1_bss_150 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M430, 0x19), MEMORY_DEFAULT_NUM)); + lbl_1_bss_14C = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M430, 0x1A), MEMORY_DEFAULT_NUM)); + lbl_1_bss_148 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M430, 0x14), MEMORY_DEFAULT_NUM)); + lbl_1_bss_144 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M430, 0x17), MEMORY_DEFAULT_NUM)); + lbl_1_bss_140 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M430, 0x18), MEMORY_DEFAULT_NUM)); object = lbl_1_bss_58 = omAddObjEx(process, 0x1E, 0x68, 0, -1, fn_1_4CB4); object->work[0] = 0; object = lbl_1_bss_54 = omAddObjEx(process, 0x1E, 7, 0, -1, fn_1_803C); @@ -200,12 +200,12 @@ void fn_1_4CB4(omObjData *object) s32 var_r25; M430DllWork *work; - u32 spC[1] = { 0x3D0001 }; + u32 spC[1] = { DATA_MAKE_NUM(DATADIR_M430, 0x01) }; s32 sp8[1]; - u32 sp90[4] = { 0x003D000B, 0x003D000C, 0x003D000D, 0x003D000E }; - u32 sp80[4] = { 0x003D0002, 0x003D0002, 0x003D0003, 0x003D0003 }; - u32 sp70[4] = { 0x003D0004, 0x003D0004, 0x00000000, 0x00000000 }; - u32 sp60[4] = { 0x003D0006, 0x003D0007, 0x003D0008, 0x003D0009 }; + u32 sp90[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x0B), DATA_MAKE_NUM(DATADIR_M430, 0x0C), DATA_MAKE_NUM(DATADIR_M430, 0x0D), DATA_MAKE_NUM(DATADIR_M430, 0x0E) }; + u32 sp80[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x02), DATA_MAKE_NUM(DATADIR_M430, 0x02), DATA_MAKE_NUM(DATADIR_M430, 0x03), DATA_MAKE_NUM(DATADIR_M430, 0x03) }; + u32 sp70[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x04), DATA_MAKE_NUM(DATADIR_M430, 0x04), 0, 0 }; + u32 sp60[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x06), DATA_MAKE_NUM(DATADIR_M430, 0x07), DATA_MAKE_NUM(DATADIR_M430, 0x08), DATA_MAKE_NUM(DATADIR_M430, 0x09) }; s32 sp50[4]; s32 sp40[4]; s32 sp30[4]; @@ -227,11 +227,11 @@ void fn_1_4CB4(omObjData *object) } var_r30 = work; for (var_r31 = 0; var_r31 < 2; var_r31++) { - object->model[var_r31] = Hu3DModelCreateFile(0x3D0000); + object->model[var_r31] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x00)); var_r30[var_r31].unk_18 = object->model[var_r31]; Hu3DModelLayerSet(var_r30[var_r31].unk_18, 0); Hu3DModelScaleSet(var_r30[var_r31].unk_18, 1.15f, 1.15f, 1.15f); - var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x3D000A), 1); + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M430, 0x0A)), 1); var_r30[var_r31].unk_1A = var_r27; Hu3DModelLayerSet(var_r27, 1); *((s16 *)Hu3DData[var_r27].unk_120) = 1; @@ -247,14 +247,14 @@ void fn_1_4CB4(omObjData *object) var_r26->material[var_r28].invAlpha = 0.001f; } } - object->model[2] = Hu3DModelCreateFile(0x3D000F); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x0F)); Hu3DModelLayerSet(object->model[2], 1); Hu3DModelScaleSet(object->model[2], 1.5f, 1.5f, 1.5f); - object->model[3] = Hu3DModelCreateFile(0x3D0010); + object->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x10)); Hu3DModelLayerSet(object->model[3], 2); Hu3DModelScaleSet(object->model[3], 1.5f, 1.5f, 1.5f); for (var_r31 = 0; var_r31 < 2; var_r31++) { - var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x3D0015), 0x64); + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M430, 0x15)), 0x64); object->model[var_r31 + 4] = var_r27; var_r30[var_r31].unk_10 = var_r27; Hu3DModelLayerSet(var_r27, 2); @@ -264,7 +264,7 @@ void fn_1_4CB4(omObjData *object) *((s16 *)Hu3DData[var_r27].unk_120) = 0; } for (var_r31 = 0; var_r31 < 2; var_r31++) { - var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x3D0015), 0x64); + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M430, 0x15)), 0x64); object->model[var_r31 + 6] = var_r27; var_r30[var_r31].unk_14 = var_r27; Hu3DModelLayerSet(var_r27, 1); @@ -701,7 +701,7 @@ M430DllUnkStruct2 *fn_1_70AC(omObjData *arg0, s32 var_r27, s16 var_r28) s32 var_r30; M430DllUnkStruct2 *var_r29; - u32 sp10[2] = { 0x003D0011, 0x003D0012 }; + u32 sp10[2] = { DATA_MAKE_NUM(DATADIR_M430, 0x11), DATA_MAKE_NUM(DATADIR_M430, 0x12) }; s32 sp8[2] = { 1, 2 }; var_r29 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r28 * sizeof(M430DllUnkStruct2), MEMORY_DEFAULT_NUM); memset(var_r29, 0, var_r28 * 0x3C); @@ -807,7 +807,7 @@ void fn_1_7848(omObjData *object) work = HuMemDirectMallocNum(HEAP_SYSTEM, var_r30 * sizeof(M430DllWork2), MEMORY_DEFAULT_NUM); object->data = work; memset(work, 0, var_r30 * sizeof(M430DllWork2)); - var_r26 = Hu3DModelCreateFile(0x3D0013); + var_r26 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M430, 0x13)); var_f29 = 1000.0f; for (var_r31 = work, var_r29 = 0; var_r29 < var_r30; var_r29++, var_r31++) { var_r31->unk_00 = Hu3DModelLink(var_r26); diff --git a/src/REL/m449Dll/main.c b/src/REL/m449Dll/main.c index e2ee45d9..be72261b 100644 --- a/src/REL/m449Dll/main.c +++ b/src/REL/m449Dll/main.c @@ -127,7 +127,8 @@ s32 lbl_1_data_0[0x12] = { 0x610000, }; s32 lbl_1_data_48[0x12] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; -s32 lbl_1_data_90[4] = { 0x5F0000, 0x500000, 0x5F0017, 0x5F0085 }; +s32 lbl_1_data_90[4] + = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), 0x500000, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x85) }; s32 lbl_1_data_A0[4] = { 0x50001C, 0x50001E, 0x50001D, 0x50001F }; u8 lbl_1_data_B0[0x38] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, diff --git a/src/REL/m455Dll/main.c b/src/REL/m455Dll/main.c index 2a2c634a..fa1c4b5b 100644 --- a/src/REL/m455Dll/main.c +++ b/src/REL/m455Dll/main.c @@ -3,7 +3,6 @@ #include "game/object.h" #include "game/objsub.h" - #include "game/hsfmotion.h" #include "game/pad.h" @@ -15,7 +14,6 @@ #include "game/minigame_seq.h" #include "game/wipe.h" - #include "ext_math.h" #include "math.h" @@ -329,15 +327,15 @@ s32 fn_1_C90(void) s32 fn_1_3214(void); u32 lbl_1_data_E0[5][2] = { - 0x5F0000, + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), 0, 0x540024, 1, 0x54001C, 1, - 0x5F0017, + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), 0, - 0x5F0018, + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18), 0, }; diff --git a/src/REL/m456Dll/main.c b/src/REL/m456Dll/main.c index 8604098f..9c760c47 100644 --- a/src/REL/m456Dll/main.c +++ b/src/REL/m456Dll/main.c @@ -436,16 +436,16 @@ s32 fn_1_F4C(void) } M456DllDataE4Struct lbl_1_data_E4[0xA] = { - { 0x5F0000, 0 }, - { 0x55001C, 1 }, - { 0x550024, 1 }, - { 0x55002C, 1 }, - { 0x550034, 1 }, - { 0x5F002A, 0 }, - { 0x5F0005, 0 }, - { 0x5F0017, 0 }, - { 0x5F0018, 0 }, - { 0x55003C, 1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), 0 }, + { DATA_MAKE_NUM(DATADIR_M456, 0x1C), 1 }, + { DATA_MAKE_NUM(DATADIR_M456, 0x24), 1 }, + { DATA_MAKE_NUM(DATADIR_M456, 0x2C), 1 }, + { DATA_MAKE_NUM(DATADIR_M456, 0x34), 1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x2A), 0 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05), 0 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), 0 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18), 0 }, + { DATA_MAKE_NUM(DATADIR_M456, 0x3C), 1 }, }; Vec lbl_1_data_134[4] = { { -300.0f, 0.0f, 0.0f }, @@ -826,7 +826,7 @@ void fn_1_2448(omObjData *object) } M456DllData1B0Struct lbl_1_data_1B0[0x10] = { - { 0x550044, 0x10E }, + { DATA_MAKE_NUM(DATADIR_M456, 0x44), 0x10E }, { 0x610037, 0xFA }, { 0x610030, 0xFA }, { 0x610030, 0xFA }, diff --git a/src/REL/m458Dll/main.c b/src/REL/m458Dll/main.c index 1e95123b..f7242c46 100644 --- a/src/REL/m458Dll/main.c +++ b/src/REL/m458Dll/main.c @@ -77,16 +77,16 @@ void fn_1_6D9C(omObjData *arg0); s32 lbl_1_data_0[2] = { 0x570025, 0x570026 }; s32 lbl_1_data_8[2] = { 0, 0 }; s32 lbl_1_data_10[0xA] = { - 0x5F0000, - 0x5F0002, - 0x5F0003, - 0x5F0005, - 0x5F0006, - 0x5F0036, - 0x5F002F, - 0x5F001A, + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x06), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x36), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x2F), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x1A), 0x570000, - 0x5F0017, + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), }; u32 lbl_1_data_38[0xA] = { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 }; u32 lbl_1_data_60[0xA] = { 0x30008, 0, 0, 0x3000A, 0, 0, 0x57002A, 0x570028, 0x570029, 0x570027 }; diff --git a/src/REL/m461Dll/main.c b/src/REL/m461Dll/main.c index d24bdfd7..2c18e8cd 100644 --- a/src/REL/m461Dll/main.c +++ b/src/REL/m461Dll/main.c @@ -1,11 +1,11 @@ #include "REL/executor.h" #include "game/chrman.h" #include "game/frand.h" +#include "game/gamework.h" #include "game/minigame_seq.h" #include "game/object.h" #include "game/objsub.h" #include "game/wipe.h" -#include "game/gamework.h" #include "game/gamework_data.h" @@ -544,27 +544,19 @@ float lbl_1_bss_8; float lbl_1_bss_4; float lbl_1_bss_0; -s16 lbl_1_data_0[8] = { - 0, 1, 2, 3, 4, 5, 6, 7 -}; +s16 lbl_1_data_0[8] = { 0, 1, 2, 3, 4, 5, 6, 7 }; -s32 lbl_1_data_10[8] = { - 0, 1, 2, 3, 4, 5, 6, 7 -}; +s32 lbl_1_data_10[8] = { 0, 1, 2, 3, 4, 5, 6, 7 }; -float lbl_1_data_30[10] = { - 70, 70, 70, 70, 70, 70, 70, 70, 70, 100 -}; +float lbl_1_data_30[10] = { 70, 70, 70, 70, 70, 70, 70, 70, 70, 100 }; -float lbl_1_data_58[10] = { - 150, 170, 190, 170, 160, 150, 180, 200, 150, 200 -}; +float lbl_1_data_58[10] = { 150, 170, 190, 170, 160, 150, 180, 200, 150, 200 }; void fn_1_23B4(WorkPlayerOld *player) { s32 i; - for(i=0; i<8; i++) { - if(player->unk44 == player->unk14[i]) { + for (i = 0; i < 8; i++) { + if (player->unk44 == player->unk14[i]) { player->unk40 = lbl_1_data_10[i]; return; } @@ -580,7 +572,7 @@ void fn_1_2418(float *minDist, s32 *state, s32 stateNew, Vec *posA, float aYOfs, pointA.y += aYOfs; pointB.y += bYOfs; dist = VECDistance(&pointA, &pointB); - if(*minDist > dist) { + if (*minDist > dist) { *minDist = dist; *state = stateNew; } @@ -588,11 +580,11 @@ void fn_1_2418(float *minDist, s32 *state, s32 stateNew, Vec *posA, float aYOfs, void fn_1_24F8(WorkPlayerOld *player1, WorkPlayerOld *player2, float *minDist, s32 *state) { - *minDist = 10*(player1->unkBC+player2->unkBC); + *minDist = 10 * (player1->unkBC + player2->unkBC); fn_1_2418(minDist, state, 0, &player1->unk6C, player1->unkBC, &player2->unk6C, player2->unkBC); - fn_1_2418(minDist, state, 1, &player1->unk6C, player1->unkC0-player1->unkBC, &player2->unk6C, player2->unkC0-player2->unkBC); - fn_1_2418(minDist, state, 2, &player1->unk6C, player1->unkBC, &player2->unk6C, player2->unkC0-player2->unkBC); - fn_1_2418(minDist, state, 3, &player1->unk6C, player1->unkC0-player1->unkBC, &player2->unk6C, player2->unkBC); + fn_1_2418(minDist, state, 1, &player1->unk6C, player1->unkC0 - player1->unkBC, &player2->unk6C, player2->unkC0 - player2->unkBC); + fn_1_2418(minDist, state, 2, &player1->unk6C, player1->unkBC, &player2->unk6C, player2->unkC0 - player2->unkBC); + fn_1_2418(minDist, state, 3, &player1->unk6C, player1->unkC0 - player1->unkBC, &player2->unk6C, player2->unkBC); } s32 fn_1_2824(WorkPlayerOld *player, WorkPlayerOld *player2) @@ -600,29 +592,30 @@ s32 fn_1_2824(WorkPlayerOld *player, WorkPlayerOld *player2) Vec dir; Vec dir2; float dist; - + player->unk3C |= 0x1; - player->unk90.x = player->unk20/4.0f; - player->unk90.z = -(float)player->unk24/4.0f; - if(player->unk90.x != 0.0f || player->unk90.z != 0.0f) { + player->unk90.x = player->unk20 / 4.0f; + player->unk90.z = -(float)player->unk24 / 4.0f; + if (player->unk90.x != 0.0f || player->unk90.z != 0.0f) { return; } VECSubtract(&player->unk6C, &player2->unk6C, &dir); dist = VECMagXZ(&dir); - if(0.0f == dist) { + if (0.0f == dist) { dir.x = 0; dir.z = -1; - } else { + } + else { dir.x /= dist; dir.z /= dist; } VECSubtract(&player->unk6C, &player->unk78, &dir2); dist = VECMagXZ(&dir2); - if(5 > dist) { + if (5 > dist) { dist = 5; } - player->unk90.x = dir.x*dist; - player->unk90.z = dir.z*dist; + player->unk90.x = dir.x * dist; + player->unk90.z = dir.z * dist; } void fn_1_2BD0(WorkPlayerOld *player, float arg1, float arg2) @@ -630,7 +623,7 @@ void fn_1_2BD0(WorkPlayerOld *player, float arg1, float arg2) player->unk38 = 1; player->unk84.y = arg1; player->unkA4 = arg2; - if(player->unk3C & 0x2) { + if (player->unk3C & 0x2) { player->unk3C &= ~0x2; } } @@ -709,45 +702,46 @@ void fn_1_2E34(WorkPlayerOld *player) BOOL addTime; s32 i; player->unk3C &= ~0x100; - if(player->unk3C & 0x8) { + if (player->unk3C & 0x8) { return; } - if(NULL == lbl_1_bss_A8) { + if (NULL == lbl_1_bss_A8) { return; } addTime = FALSE; - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { WorkPlayerOld *player2 = lbl_1_bss_A8(i); BOOL fixPos; float minDist; s32 state; - if(player == player2) { - continue; + if (player == player2) { + continue; } - if(player2->unk3C & 0x8) { + if (player2->unk3C & 0x8) { continue; } fixPos = FALSE; fn_1_24F8(player, player2, &minDist, &state); - if(minDist < player->unkBC+player2->unkBC) { - if(state < 2) { + if (minDist < player->unkBC + player2->unkBC) { + if (state < 2) { fixPos = TRUE; - if(player->unk38 == 1) { + if (player->unk38 == 1) { fn_1_2824(player, player2); } - } else { - if(state == 2 && player->unk38 == 1) { + } + else { + if (state == 2 && player->unk38 == 1) { fn_1_2824(player, player2); player->unk3C |= 0x100; player->unkA4 = 0; - if(!(player2->unk3C & 0x100)) { + if (!(player2->unk3C & 0x100)) { player->unk84.y = 26.766666f; } } - if(state == 3) { + if (state == 3) { fixPos = TRUE; - if(player->unk38 == 1) { - if(0.0f < player->unk84.y) { + if (player->unk38 == 1) { + if (0.0f < player->unk84.y) { player->unk84.y = 0.0f; } player->unkA4 = 0; @@ -755,24 +749,26 @@ void fn_1_2E34(WorkPlayerOld *player) } } } - if(fixPos) { + if (fixPos) { Vec dir; addTime = TRUE; VECSubtract(&player->unk6C, &player2->unk6C, &dir); - if(0.0f == minDist) { + if (0.0f == minDist) { dir.x = 0; dir.z = -1; - } else { + } + else { dir.x /= minDist; dir.z /= minDist; } - player->unk6C.x = player2->unk6C.x+(dir.x*(player->unkBC+player2->unkBC)); - player->unk6C.z = player2->unk6C.z+(dir.z*(player->unkBC+player2->unkBC)); + player->unk6C.x = player2->unk6C.x + (dir.x * (player->unkBC + player2->unkBC)); + player->unk6C.z = player2->unk6C.z + (dir.z * (player->unkBC + player2->unkBC)); } } - if(addTime) { + if (addTime) { player->unk4C++; - } else { + } + else { player->unk4C = 0; } } @@ -783,62 +779,63 @@ float fn_1_39C4(WorkPlayerOld *player, float arg2) s32 i; AddX = 0; AddZ = 0; - if(NULL != player->unk68) { - for(pos=player->unk68, i=0; iunk64; i++, pos += 2) { + if (NULL != player->unk68) { + for (pos = player->unk68, i = 0; i < player->unk64; i++, pos += 2) { int num = 0; - if(pos[0].x == pos[1].x || pos[0].x > player->unk6C.x || pos[1].x < player->unk6C.x) { + if (pos[0].x == pos[1].x || pos[0].x > player->unk6C.x || pos[1].x < player->unk6C.x) { num++; } - if(pos[0].y == pos[1].y || pos[0].y > player->unk6C.y || pos[1].y < player->unk6C.y) { + if (pos[0].y == pos[1].y || pos[0].y > player->unk6C.y || pos[1].y < player->unk6C.y) { num++; } - if(pos[0].z == pos[1].z || pos[0].z > player->unk6C.z || pos[1].z < player->unk6C.z) { + if (pos[0].z == pos[1].z || pos[0].z > player->unk6C.z || pos[1].z < player->unk6C.z) { num++; } - if(num == 3) { - if(pos[0].x != pos[1].x) { - if(pos[0].x > player->unk6C.x) { - player->unk6C.x = pos[0].x+player->unkBC; + if (num == 3) { + if (pos[0].x != pos[1].x) { + if (pos[0].x > player->unk6C.x) { + player->unk6C.x = pos[0].x + player->unkBC; } - if(pos[1].x < player->unk6C.x) { - player->unk6C.x = pos[1].x-player->unkBC; + if (pos[1].x < player->unk6C.x) { + player->unk6C.x = pos[1].x - player->unkBC; } } - if(pos[0].y != pos[1].y) { - if(pos[0].y > player->unk6C.y) { + if (pos[0].y != pos[1].y) { + if (pos[0].y > player->unk6C.y) { player->unk6C.y = pos[0].y; } - if(pos[1].y < player->unk6C.y) { + if (pos[1].y < player->unk6C.y) { player->unk6C.y = pos[1].y; } } - if(pos[0].z != pos[1].z) { - if(pos[0].z > player->unk6C.z) { - player->unk6C.z = pos[0].z+player->unkBC; + if (pos[0].z != pos[1].z) { + if (pos[0].z > player->unk6C.z) { + player->unk6C.z = pos[0].z + player->unkBC; } - if(pos[1].z < player->unk6C.z) { - player->unk6C.z = pos[1].z-player->unkBC; + if (pos[1].z < player->unk6C.z) { + player->unk6C.z = pos[1].z - player->unkBC; } } } } } - return ABS(AddX)+ABS(AddZ); + return ABS(AddX) + ABS(AddZ); } void fn_1_3C74(WorkPlayerOld *player, s32 *state, u32 *motAttr) { *motAttr = HU3D_MOTATTR_LOOP; *state = 0; - if(0.5f <= player->unkA0) { - if(7.0f <= player->unkA0) { + if (0.5f <= player->unkA0) { + if (7.0f <= player->unkA0) { *state = 2; - } else { + } + else { *state = 1; } } - - if(player->unk14[3] >= 0 && (player->unk28 & 0x100)) { + + if (player->unk14[3] >= 0 && (player->unk28 & 0x100)) { fn_1_2BD0(player, 26.766666f, 1.0f); *motAttr = HU3D_MOTATTR_NONE; *state = 3; @@ -847,20 +844,22 @@ void fn_1_3C74(WorkPlayerOld *player, s32 *state, u32 *motAttr) void fn_1_3D4C(WorkPlayerOld *player, s32 *state, u32 *motAttr) { - if(0.0f < player->unkA4) { - if(player->unk2C & 0x100) { + if (0.0f < player->unkA4) { + if (player->unk2C & 0x100) { player->unkA4++; - if(4.0f < player->unkA4) { + if (4.0f < player->unkA4) { player->unkA4 = 0; - } else { + } + else { player->unk84.y += 3.65f; } - } else { + } + else { player->unkA4 = 0; } } player->unk84.y += -2.4333334f; - if(player->unk14[5] >= 0 && (player->unk28 & 0x140)) { + if (player->unk14[5] >= 0 && (player->unk28 & 0x140)) { player->unk38 = 3; player->unk84.y = 0.0f; player->unk3C &= ~0x3; @@ -872,13 +871,14 @@ void fn_1_3D4C(WorkPlayerOld *player, s32 *state, u32 *motAttr) void fn_1_3E60(WorkPlayerOld *player, s32 *state, u32 *motAttr) { - if((player->unk3C & 0x1000) || Hu3DMotionEndCheck(player->unk0->model[0])) { + if ((player->unk3C & 0x1000) || Hu3DMotionEndCheck(player->unk0->model[0])) { player->unk3C &= ~0x3; - if(player->unk40 == 6) { + if (player->unk40 == 6) { player->unk38 = 4; *motAttr = HU3D_MOTATTR_NONE; *state = 7; - } else { + } + else { player->unk38 = 0; *motAttr = HU3D_MOTATTR_LOOP; *state = 0; @@ -888,15 +888,14 @@ void fn_1_3E60(WorkPlayerOld *player, s32 *state, u32 *motAttr) void fn_1_3F18(WorkPlayerOld *player, s32 *state, u32 *motAttr) { - if(Hu3DMotionShiftIDGet(player->unk0->model[0]) < 0 && Hu3DMotionEndCheck(player->unk0->model[0])) { + if (Hu3DMotionShiftIDGet(player->unk0->model[0]) < 0 && Hu3DMotionEndCheck(player->unk0->model[0])) { fn_1_2BD0(player, 0.0f, 0.0f); } } - void fn_1_3FB8(WorkPlayerOld *player, s32 *state, u32 *motAttr) { - if(Hu3DMotionShiftIDGet(player->unk0->model[0]) < 0 && Hu3DMotionEndCheck(player->unk0->model[0])) { + if (Hu3DMotionShiftIDGet(player->unk0->model[0]) < 0 && Hu3DMotionEndCheck(player->unk0->model[0])) { player->unk3C &= ~0x4; player->unk38 = 0; *motAttr = HU3D_MOTATTR_LOOP; @@ -913,17 +912,18 @@ void fn_1_4054(WorkPlayerOld *player) float temp_f22; Vec *pos; BOOL temp_r27; - if(player->unk3C & 0x1) { + if (player->unk3C & 0x1) { player->unk84.x = player->unk90.x; player->unk84.z = player->unk90.z; - } else { - player->unk84.x = player->unk20/4.0f; - player->unk84.z = -(float)player->unk24/4.0f; - if(player->unk38 == 1 && 0.0f == player->unk84.x && 0.0f == player->unk84.z) { - player->unk84.x = 0.98f*(player->unk6C.x-player->unk78.x); - player->unk84.z = 0.98f*(player->unk6C.z-player->unk78.z); + } + else { + player->unk84.x = player->unk20 / 4.0f; + player->unk84.z = -(float)player->unk24 / 4.0f; + if (player->unk38 == 1 && 0.0f == player->unk84.x && 0.0f == player->unk84.z) { + player->unk84.x = 0.98f * (player->unk6C.x - player->unk78.x); + player->unk84.z = 0.98f * (player->unk6C.z - player->unk78.z); } - if(player->unk3C & 0x14) { + if (player->unk3C & 0x14) { player->unk84.x = 0; player->unk84.z = 0; player->unk28 = 0; @@ -931,15 +931,16 @@ void fn_1_4054(WorkPlayerOld *player) } player->unk78 = player->unk6C; player->unkA0 = VECMagXZ(&player->unk84); - if(0.5f <= player->unkA0) { - if(10.0f <= player->unkA0) { + if (0.5f <= player->unkA0) { + if (10.0f <= player->unkA0) { player->unk84.x /= player->unkA0; player->unk84.z /= player->unkA0; player->unkA0 = 10; - player->unk84.x = 10*player->unk84.x; - player->unk84.z = 10*player->unk84.z; + player->unk84.x = 10 * player->unk84.x; + player->unk84.z = 10 * player->unk84.z; } - } else { + } + else { player->unk84.x = 0; player->unk84.z = 0; player->unkA0 = 0; @@ -947,134 +948,137 @@ void fn_1_4054(WorkPlayerOld *player) player->unk84.x *= player->unkB8; player->unk84.z *= player->unkB8; player->unkA0 *= player->unkB8; - if(player->unk3C & 0x800) { + if (player->unk3C & 0x800) { player->unk28 |= 0x100; player->unk2C |= 0x100; - if(player->unk38 == 1) { - if(0.0f == player->unkA4) { + if (player->unk38 == 1) { + if (0.0f == player->unkA4) { player->unk3C &= ~0x800; } } } - switch(player->unk38) { + switch (player->unk38) { case 0: fn_1_3C74(player, &state, &motAttr); break; - + case 1: fn_1_3D4C(player, &state, &motAttr); break; - + case 2: fn_1_3E60(player, &state, &motAttr); break; - + case 3: fn_1_3F18(player, &state, &motAttr); break; - + case 4: fn_1_3FB8(player, &state, &motAttr); break; - + default: OSReport("*** player action error(%d)!!\n", player->unk38); break; } - if(player->unk3C & 0x2000) { + if (player->unk3C & 0x2000) { player->unk84.y = 0; } temp_f28 = 0; - if(50.0f < ABS(player->unk84.y)) { - player->unk84.y = 50.0f*((0.0f > player->unk84.y) ? -1 : 1); + if (50.0f < ABS(player->unk84.y)) { + player->unk84.y = 50.0f * ((0.0f > player->unk84.y) ? -1 : 1); } - if(player->unk3C & 0x2) { + if (player->unk3C & 0x2) { Mtx rotMtx; - MTXRotDeg(rotMtx, 'y', player->unk50[2].x-player->unk60); + MTXRotDeg(rotMtx, 'y', player->unk50[2].x - player->unk60); MTXMultVec(rotMtx, &player->unk54, &player->unk54); VECAdd(&player->unk54, &player->unk50[0], &player->unk6C); - player->unk9C += player->unk50[2].x-player->unk60; + player->unk9C += player->unk50[2].x - player->unk60; } temp_f22 = player->unk6C.y; VECAdd(&player->unk6C, &player->unk84, &player->unk6C); - if((player->unk3C & 0x1) == 0 && (0.0f != player->unk84.x || 0.0f != player->unk84.z)) { - player->unk9C = fn_1_1E20(player->unk9C, atan2d(player->unk84.x, player->unk84.z), 0.4f*player->unkB8); + if ((player->unk3C & 0x1) == 0 && (0.0f != player->unk84.x || 0.0f != player->unk84.z)) { + player->unk9C = fn_1_1E20(player->unk9C, atan2d(player->unk84.x, player->unk84.z), 0.4f * player->unkB8); } temp_f28 += fn_1_39C4(player, temp_f22); - if(nMap == 0) { + if (nMap == 0) { player->unkA8 = lbl_1_bss_A4; - } else { + } + else { player->unkA8 = MapPos(player->unk6C.x, player->unk6C.y, player->unk6C.z, player->unkC0, &player->unkAC); } temp_r27 = FALSE; - if(NULL != player->unk8) { + if (NULL != player->unk8) { pos = player->unk8(player->unk0); - if(NULL != pos) { - if(player->unkA8 < pos[1].y) { + if (NULL != pos) { + if (player->unkA8 < pos[1].y) { temp_r27 = TRUE; player->unk50 = pos; player->unkA8 = pos[1].y; } } } - if(!temp_r27 && (player->unk3C & 0x2)) { + if (!temp_r27 && (player->unk3C & 0x2)) { player->unk3C &= ~0x2; } - if(player->unk38 == 1 && player->unkA8 >= player->unk6C.y) { + if (player->unk38 == 1 && player->unkA8 >= player->unk6C.y) { player->unk38 = 2; player->unk3C &= ~0x3; player->unk6C.y = player->unkA8; player->unk84.y = 0; motAttr = HU3D_MOTATTR_NONE; state = 4; - if(player->unk40 == 5) { + if (player->unk40 == 5) { state = 6; - if(NULL != player->unk10) { + if (NULL != player->unk10) { player->unk10(player->unk0); } - if(player->unk18 < 4) { + if (player->unk18 < 4) { omVibrate(player->unk18, 12, 4, 2); } } - if(player->unk3C & 0x200) { + if (player->unk3C & 0x200) { state = -1; - if(NULL != player->unkC) { + if (NULL != player->unkC) { player->unkC(player->unk0); } } - if(temp_r27) { + if (temp_r27) { player->unk3C |= 0x2; } } - temp_f23 = player->unk6C.y-player->unkA8; - if(player->unk38 == 0 && 10.0f < temp_f23) { - if(!(player->unk3C & 0x2000) && (player->unk3C & 0x400)) { + temp_f23 = player->unk6C.y - player->unkA8; + if (player->unk38 == 0 && 10.0f < temp_f23) { + if (!(player->unk3C & 0x2000) && (player->unk3C & 0x400)) { player->unk3C |= 0x800; } - } else if(temp_r27) { - if(!(player->unk3C & 0x2)) { + } + else if (temp_r27) { + if (!(player->unk3C & 0x2)) { player->unk6C.y = player->unkA8; player->unk3C |= 0x2; } } fn_1_2E34(player); - if(NULL != player->unk4) { + if (NULL != player->unk4) { player->unk4(player->unk0); } temp_f28 += fn_1_39C4(player, player->unk6C.y); - if(player->unk3C & 0x2) { + if (player->unk3C & 0x2) { player->unk60 = player->unk50[2].x; VECSubtract(&player->unk6C, &player->unk50[0], &player->unk54); } - if(0.0f != temp_f28) { + if (0.0f != temp_f28) { player->unk48++; - } else { + } + else { player->unk48 = 0; } - if(state >= 0 && player->unk40 != state) { + if (state >= 0 && player->unk40 != state) { player->unk40 = state; player->unk44 = player->unk14[player->unk40]; - if(player->unk44 >= 0 && !(player->unk3C & 0x20)) { + if (player->unk44 >= 0 && !(player->unk3C & 0x20)) { Hu3DMotionShiftSet(player->unk0->model[0], player->unk0->motion[player->unk44], 0, 8, motAttr); } } @@ -1091,17 +1095,19 @@ void fn_1_4E1C(WorkPlayerOld *player, s32 motNo) player->unk84.y = 0; player->unk84.z = 0; fn_1_23B4(player); - if(player->unk40 == 3) { - Hu3DModelAttrReset(player->unk0->model[0], HU3D_MOTATTR_LOOP|HU3D_MOTATTR_PAUSE); + if (player->unk40 == 3) { + Hu3DModelAttrReset(player->unk0->model[0], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); Hu3DMotionSet(player->unk0->model[0], player->unk0->motion[player->unk44]); - Hu3DMotionTimeSet(player->unk0->model[0], Hu3DMotionMaxTimeGet(player->unk0->model[0])-1); - } else if(player->unk40 == 5) { + Hu3DMotionTimeSet(player->unk0->model[0], Hu3DMotionMaxTimeGet(player->unk0->model[0]) - 1); + } + else if (player->unk40 == 5) { player->unk38 = 3; player->unk3C |= 0x4; - Hu3DModelAttrReset(player->unk0->model[0], HU3D_MOTATTR_LOOP|HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(player->unk0->model[0], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); Hu3DMotionSet(player->unk0->model[0], player->unk0->motion[player->unk44]); - Hu3DMotionTimeSet(player->unk0->model[0], Hu3DMotionMaxTimeGet(player->unk0->model[0])-1); - } else { + Hu3DMotionTimeSet(player->unk0->model[0], Hu3DMotionMaxTimeGet(player->unk0->model[0]) - 1); + } + else { Hu3DModelAttrReset(player->unk0->model[0], HU3D_MOTATTR_PAUSE); Hu3DMotionShiftSet(player->unk0->model[0], player->unk0->motion[player->unk44], 0, 8, HU3D_MOTATTR_LOOP); } @@ -1131,93 +1137,82 @@ Vec lbl_1_data_E8 = { -1500, 4000, 1500 }; Vec lbl_1_data_F4 = { 1.5, -4, -1.5 }; GXColor lbl_1_data_100 = { 255, 255, 255, 255 }; - Vec lbl_1_data_104 = { -1500, 4000, 1500 }; Vec lbl_1_data_110 = { 0, 0, 0 }; Vec lbl_1_data_11C = { 0, 1, 0 }; s32 lbl_1_data_128[8][5] = { - 0x005F0000, 0x005F0002, 0x005F0003, 0x005F0014, 0x005F0017, - 0x001A0000, 0x001A0002, 0x001A0003, 0x001A0014, 0x001A0017, - 0x006D0000, 0x006D0002, 0x006D0003, 0x006D0014, 0x006D0017, - 0x008A0000, 0x008A0002, 0x008A0003, 0x008A0014, 0x008A0017, - 0x00850000, 0x00850002, 0x00850003, 0x00850014, 0x00850017, - 0x00110000, 0x00110002, 0x00110003, 0x00110014, 0x00110017, - 0x000D0000, 0x000D0002, 0x000D0003, 0x000D0014, 0x000D0017, - 0x00810000, 0x00810002, 0x00810003, 0x00810014, 0x00810017 + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x14), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x00), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x02), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x03), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x14), + DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x17), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x00), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x02), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x03), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x14), + DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x17), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x00), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x02), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x03), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x14), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x17), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x00), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x02), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x03), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x14), + DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x17), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x00), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x02), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x03), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x14), + DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x17), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x00), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x02), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x03), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x14), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x17), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x00), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x02), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x03), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x14), + DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x17), }; -s32 lbl_1_data_1C8[3] = { - 0x005A0002, - 0x005A0003, - 0x005A0008 -}; +s32 lbl_1_data_1C8[3] = { DATA_MAKE_NUM(DATADIR_M461, 0x02), DATA_MAKE_NUM(DATADIR_M461, 0x03), DATA_MAKE_NUM(DATADIR_M461, 0x08) }; -s32 lbl_1_data_1D4[4] = { - 0x005A0004, - 0x005A0005, - 0x005A0006, - 0x005A0007 -}; +s32 lbl_1_data_1D4[4] = { DATA_MAKE_NUM(DATADIR_M461, 0x04), DATA_MAKE_NUM(DATADIR_M461, 0x05), DATA_MAKE_NUM(DATADIR_M461, 0x06), DATA_MAKE_NUM(DATADIR_M461, 0x07) }; -float lbl_1_data_1E4[3] = { - 0.3f, - 0.5f, - 0.9f -}; +float lbl_1_data_1E4[3] = { 0.3f, 0.5f, 0.9f }; -float lbl_1_data_1F0[10][2] = { - 0, 60, - 1860, 60, - 3660, 50, - 5460, 50, - 7260, 40, - 9060, 40, - 10860, 30, - 12660, 20, - 14460, 10, - -1, 10 -}; +float lbl_1_data_1F0[10][2] = { 0, 60, 1860, 60, 3660, 50, 5460, 50, 7260, 40, 9060, 40, 10860, 30, 12660, 20, 14460, 10, -1, 10 }; -Vec lbl_1_data_240[3] = { - { 0, 0, 2800 }, - { 2800, 0, 0 }, - { -2800, 0, 0 } -}; +Vec lbl_1_data_240[3] = { { 0, 0, 2800 }, { 2800, 0, 0 }, { -2800, 0, 0 } }; -s32 lbl_1_data_264[3] = { - 70, 30, 0 -}; +s32 lbl_1_data_264[3] = { 70, 30, 0 }; typedef struct data270_struct { Vec unk0; float unkC; } Data270Struct; -Data270Struct lbl_1_data_270[8] = { - {{ 200, 0, 1400 }, 180 }, - {{ -200, 0, 1400 }, 180 }, - {{ 200, 0, -1400 }, 0 }, - {{ -200, 0, -1400 }, 0 }, - {{ 1400, 0, 200 }, 270 }, - {{ 1400, 0, -200 }, 270 }, - {{ -1400, 0, 200 }, 90 }, - {{ -1400, 0, -200}, 90 } -}; +Data270Struct lbl_1_data_270[8] = { { { 200, 0, 1400 }, 180 }, { { -200, 0, 1400 }, 180 }, { { 200, 0, -1400 }, 0 }, { { -200, 0, -1400 }, 0 }, + { { 1400, 0, 200 }, 270 }, { { 1400, 0, -200 }, 270 }, { { -1400, 0, 200 }, 90 }, { { -1400, 0, -200 }, 90 } }; -Vec lbl_1_data_2F0[4] = { - { 600, 0, 600 }, - { 600, 0, -600 }, - { -600, 0, 600 }, - { -600, 0, -600 } -}; +Vec lbl_1_data_2F0[4] = { { 600, 0, 600 }, { 600, 0, -600 }, { -600, 0, 600 }, { -600, 0, -600 } }; void fn_1_512C(void) { - if(HuPadBtn[0] & PAD_BUTTON_X) { + if (HuPadBtn[0] & PAD_BUTTON_X) { lbl_1_bss_200 = 35999; } - print8(24, 32, 1.5f, "COUNT:%d MODE:%d MES:%d %d/%d %02x", lbl_1_bss_204, lbl_1_bss_A0->work[0], lbl_1_bss_1FA, lbl_1_bss_20, lbl_1_bss_24, lbl_1_bss_28); + print8(24, 32, 1.5f, "COUNT:%d MODE:%d MES:%d %d/%d %02x", lbl_1_bss_204, lbl_1_bss_A0->work[0], lbl_1_bss_1FA, lbl_1_bss_20, lbl_1_bss_24, + lbl_1_bss_28); print8(24, 48, 1.5f, "%f %f %f", lbl_1_bss_0, lbl_1_bss_8, lbl_1_bss_4); print8(24, 64, 1.5f, "%x %x", HuMemHeapSizeGet(HEAP_SYSTEM) - HuMemUsedMallocSizeGet(HEAP_SYSTEM), HuMemHeapSizeGet(HEAP_DATA) - HuMemUsedMallocSizeGet(HEAP_DATA)); @@ -1257,14 +1252,16 @@ typedef struct work_bomhei { void fn_1_5438(Vec *pos) { float dist = VECDistance(pos, &((WorkPlayer *)lbl_1_bss_9C->data)->unk0); - if(2000 < dist) { + if (2000 < dist) { return; } - if(1000 < dist) { + if (1000 < dist) { omVibrate(lbl_1_bss_18, 12, 6, 6); - } else if(300 < dist) { + } + else if (300 < dist) { omVibrate(lbl_1_bss_18, 12, 4, 2); - } else { + } + else { omVibrate(lbl_1_bss_18, 12, 12, 0); } } @@ -1272,40 +1269,40 @@ void fn_1_5438(Vec *pos) BOOL fn_1_5528(Vec *pos, float offset) { BOOL result = FALSE; - float ofs = 700-offset; + float ofs = 700 - offset; Mtx rotMtx; - - if(ofs < pos->x) { + + if (ofs < pos->x) { pos->x = ofs; } - if(ofs < pos->z) { + if (ofs < pos->z) { pos->z = ofs; } - if(-ofs > pos->x) { + if (-ofs > pos->x) { pos->x = -ofs; } - if(-ofs > pos->z) { + if (-ofs > pos->z) { pos->z = -ofs; } - if(ofs == ABS(pos->x) || ofs == ABS(pos->z)) { + if (ofs == ABS(pos->x) || ofs == ABS(pos->z)) { result = TRUE; } MTXRotDeg(rotMtx, 'Y', 45); MTXMultVec(rotMtx, pos, pos); - ofs = (550*sqrtf(2))-offset; - if(ofs < pos->x) { + ofs = (550 * sqrtf(2)) - offset; + if (ofs < pos->x) { pos->x = ofs; } - if(ofs < pos->z) { + if (ofs < pos->z) { pos->z = ofs; } - if(-ofs > pos->x) { + if (-ofs > pos->x) { pos->x = -ofs; } - if(-ofs > pos->z) { + if (-ofs > pos->z) { pos->z = -ofs; } - if(ofs == ABS(pos->x) || ofs == ABS(pos->z)) { + if (ofs == ABS(pos->x) || ofs == ABS(pos->z)) { result = TRUE; } MTXRotDeg(rotMtx, 'Y', -45); @@ -1315,19 +1312,20 @@ BOOL fn_1_5528(Vec *pos, float offset) void fn_1_5894(Vec *pos1, Vec *pos2, float radius1, float radius2) { - float dx = pos1->x-pos2->x; - float dz = pos1->z-pos2->z; - float dist = sqrtf((dx*dx)+(dz*dz)); - if(radius1+radius2 > dist) { - if(0.0f == dist) { + float dx = pos1->x - pos2->x; + float dz = pos1->z - pos2->z; + float dist = sqrtf((dx * dx) + (dz * dz)); + if (radius1 + radius2 > dist) { + if (0.0f == dist) { dx = 0; dz = -1; - } else { + } + else { dx /= dist; dz /= dist; } - pos1->x = pos2->x+(dx*(radius1+radius2)); - pos1->z = pos2->z+(dz*(radius1+radius2)); + pos1->x = pos2->x + (dx * (radius1 + radius2)); + pos1->z = pos2->z + (dz * (radius1 + radius2)); } } @@ -1338,9 +1336,9 @@ void fn_1_5A7C(WorkPlayer *player, omObjData *obj) player->unk58 = 2002; Hu3DMotionShiftSet(obj->model[0], obj->motion[3], 0, 8, HU3D_MOTATTR_NONE); distMin = 100000; - for(i=0; i<3; i++) { + for (i = 0; i < 3; i++) { float dist = VECDistance(&lbl_1_data_240[i], &player->unk0); - if(distMin > dist) { + if (distMin > dist) { distMin = dist; player->unk3C = lbl_1_data_240[i]; } @@ -1359,45 +1357,47 @@ void fn_1_5BF4(WorkPlayer *player, omObjData *obj) player->unkC.x = 0; player->unkC.y = 0; player->unkC.z = 0; - player->unkC.x = player->unk4C/4.0f; - player->unkC.z = -(float)player->unk50/4.0f; + player->unkC.x = player->unk4C / 4.0f; + player->unkC.z = -(float)player->unk50 / 4.0f; action = 0; player->unk18.z = VECMagXZ(&player->unkC); - if(0.5f <= player->unk18.z) { - if(10.0f <= player->unk18.z) { + if (0.5f <= player->unk18.z) { + if (10.0f <= player->unk18.z) { player->unkC.x /= player->unk18.z; player->unkC.z /= player->unk18.z; player->unk18.z = 10; - player->unkC.x = 10*player->unkC.x; - player->unkC.z = 10*player->unkC.z; + player->unkC.x = 10 * player->unkC.x; + player->unkC.z = 10 * player->unkC.z; } player->unk18.y = fn_1_1E20(player->unk18.y, atan2d(player->unkC.x, player->unkC.z), 0.4f); - if(7.0f <= player->unk18.z) { + if (7.0f <= player->unk18.z) { action = 2; - } else { + } + else { action = 1; } } VECAdd(&player->unk0, &player->unkC, &player->unk0); fn_1_5528(&player->unk0, 70); - for(i=0; i<20; i++) { + for (i = 0; i < 20; i++) { WorkBomhei *bomhei; - if(NULL == lbl_1_bss_4C[i]) { + if (NULL == lbl_1_bss_4C[i]) { continue; } bomhei = lbl_1_bss_4C[i]->data; - if(bomhei->unk34 == 3004 && 30 > Hu3DMotionTimeGet(lbl_1_bss_4C[i]->model[2])) { - float dx = player->unk0.x-bomhei->unk0.x; - float dz = player->unk0.z-bomhei->unk0.z; - if(200 > sqrtf((dx*dx)+(dz*dz))) { + if (bomhei->unk34 == 3004 && 30 > Hu3DMotionTimeGet(lbl_1_bss_4C[i]->model[2])) { + float dx = player->unk0.x - bomhei->unk0.x; + float dz = player->unk0.z - bomhei->unk0.z; + if (200 > sqrtf((dx * dx) + (dz * dz))) { lbl_1_bss_14 = 1; } - } else { + } + else { fn_1_5894(&player->unk0, &bomhei->unk0, 70, 70); } } fn_1_5528(&player->unk0, 70); - if(player->unk54 != action) { + if (player->unk54 != action) { player->unk54 = action; Hu3DMotionShiftSet(obj->model[0], obj->motion[player->unk54], 0, 8, HU3D_MOTATTR_LOOP); } @@ -1409,73 +1409,74 @@ void fn_1_6A00(omObjData *obj) float dx; float dz; float dist; - switch(player->unk58) { + switch (player->unk58) { case 2000: - if(lbl_1_bss_A0->work[0] >= 1004) { + if (lbl_1_bss_A0->work[0] >= 1004) { player->unk58++; } break; - + case 2001: player->unk4C = HuPadStkX[player->unk60]; player->unk50 = HuPadStkY[player->unk60]; fn_1_5BF4(player, obj); - if(lbl_1_bss_A0->work[0] >= 1005) { - if(lbl_1_bss_14) { + if (lbl_1_bss_A0->work[0] >= 1005) { + if (lbl_1_bss_14) { fn_1_5A7C(player, obj); - } else { + } + else { player->unk58 = 2003; Hu3DMotionShiftSet(obj->model[0], obj->motion[0], 0, 8, HU3D_MOTATTR_LOOP); } } break; - + case 2002: - dx = player->unk3C.x-player->unk0.x; - dz = player->unk3C.z-player->unk0.z; - dist = sqrtf((dx*dx)+(dz*dz)); - if(player->unk48 < dist) { - dx = player->unk48*(dx/dist); - dz = player->unk48*(dz/dist); + dx = player->unk3C.x - player->unk0.x; + dz = player->unk3C.z - player->unk0.z; + dist = sqrtf((dx * dx) + (dz * dz)); + if (player->unk48 < dist) { + dx = player->unk48 * (dx / dist); + dz = player->unk48 * (dz / dist); } player->unk18.x -= player->unk48; - if(0.0f > player->unk18.x) { + if (0.0f > player->unk18.x) { player->unk18.x += 360; } - player->unk18.y = fn_1_1E20(player->unk18.y, atan2d(dx, dz)+180.0, 0.4f); + player->unk18.y = fn_1_1E20(player->unk18.y, atan2d(dx, dz) + 180.0, 0.4f); player->unk0.x += dx; player->unk0.z += dz; - dist = VECDistance(&player->unk3C, &player->unk0)/VECDistance(&player->unk3C, &player->unk30); - player->unk0.y = 500*sind(dist*180); + dist = VECDistance(&player->unk3C, &player->unk0) / VECDistance(&player->unk3C, &player->unk30); + player->unk0.y = 500 * sind(dist * 180); player->unk48 *= 1.05f; - if(lbl_1_bss_10 >= 0) { + if (lbl_1_bss_10 >= 0) { HuAudFXEmiterUpDate(lbl_1_bss_10, &player->unk0); } - if(lbl_1_bss_C >= 0) { + if (lbl_1_bss_C >= 0) { HuAudFXEmiterUpDate(lbl_1_bss_C, &player->unk0); } fn_1_5438(&player->unk24); - if(lbl_1_bss_A0->work[0] >= 1007) { + if (lbl_1_bss_A0->work[0] >= 1007) { player->unk58 = 2005; HuAudSStreamPlay(4); } break; - + case 2003: - if(lbl_1_bss_A0->work[0] >= 1007) { + if (lbl_1_bss_A0->work[0] >= 1007) { player->unk58 = 2004; HuAudSStreamPlay(1); Hu3DMotionShiftSet(obj->model[0], obj->motion[4], 0, 8, HU3D_MOTATTR_NONE); } break; - + case 2004: player->unk18.y = fn_1_1E20(player->unk18.y, 0, 0.4f); break; - + case 2005: break; - + default: OSReport("*** player mode error(%d)!!\n", player->unk58); break; @@ -1496,7 +1497,7 @@ void fn_1_7328(omObjData *obj) player->unk54 = 0; obj->model[0] = CharModelCreate(lbl_1_data_0[player->unk5C], 2); CharModelStepTypeSet(lbl_1_data_0[player->unk5C], 0); - for(i=0; i<5; i++) { + for (i = 0; i < 5; i++) { obj->motion[i] = CharModelMotionCreate(lbl_1_data_0[player->unk5C], lbl_1_data_128[player->unk5C][i]); CharModelMotionSet(lbl_1_data_0[player->unk5C], obj->motion[i]); } @@ -1523,8 +1524,8 @@ void fn_1_75B0(WorkBomhei *bomhei, omObjData *obj) float *data1F0; bomhei->unk34 = 3003; bomhei->unk24 = 10; - for(data1F0=&lbl_1_data_1F0[0][0]; 0.0f<=data1F0[0]; data1F0 += 2) { - if(data1F0[0] <= lbl_1_bss_200) { + for (data1F0 = &lbl_1_data_1F0[0][0]; 0.0f <= data1F0[0]; data1F0 += 2) { + if (data1F0[0] <= lbl_1_bss_200) { bomhei->unk24 = data1F0[1]; } } @@ -1537,20 +1538,20 @@ void fn_1_75B0(WorkBomhei *bomhei, omObjData *obj) BOOL fn_1_76CC(WorkBomhei *bomhei) { - if(bomhei->unk34 == 3002) { - if(fn_1_5528(&bomhei->unk0, 70)) { + if (bomhei->unk34 == 3002) { + if (fn_1_5528(&bomhei->unk0, 70)) { return TRUE; } - } else { - float ofs = 700-70; - - if(ofs > bomhei->unk0.x && -ofs < bomhei->unk0.x) { - if(ofs > bomhei->unk0.z && -ofs < bomhei->unk0.z) { - if(bomhei->unk28 >= 0) { + } + else { + float ofs = 700 - 70; + + if (ofs > bomhei->unk0.x && -ofs < bomhei->unk0.x) { + if (ofs > bomhei->unk0.z && -ofs < bomhei->unk0.z) { + if (bomhei->unk28 >= 0) { lbl_1_bss_28 = lbl_1_bss_28 & ~(u32)(1 << bomhei->unk28); bomhei->unk28 = -1; } - } } } @@ -1559,35 +1560,36 @@ BOOL fn_1_76CC(WorkBomhei *bomhei) void fn_1_7AD8(WorkBomhei *bomhei, omObjData *obj) { - float radius = 10*lbl_1_data_1E4[bomhei->unk30]; + float radius = 10 * lbl_1_data_1E4[bomhei->unk30]; Vec playerOfs; Vec angle; - + s32 i; s32 state; BOOL temp_r25; - + angle.x = bomhei->unkC.y; - if(bomhei->unk34 == 3002) { - switch(bomhei->unk30) { + if (bomhei->unk34 == 3002) { + switch (bomhei->unk30) { case 0: bomhei->unk18.x--; - if(0.0f > bomhei->unk18.x) { + if (0.0f > bomhei->unk18.x) { radius = 0; - if(-bomhei->unk18.y > bomhei->unk18.x) { - bomhei->unk18.y = frandmod(120)+120; - bomhei->unk18.x = frandmod(120)+120; + if (-bomhei->unk18.y > bomhei->unk18.x) { + bomhei->unk18.y = frandmod(120) + 120; + bomhei->unk18.x = frandmod(120) + 120; } - } else { + } + else { bomhei->unk18.z--; - if(0.0f > bomhei->unk18.z) { - bomhei->unk18.z = frandmod(120)+120; - bomhei->unkC.z = frandf()*360; + if (0.0f > bomhei->unk18.z) { + bomhei->unk18.z = frandmod(120) + 120; + bomhei->unkC.z = frandf() * 360; } } angle.x = bomhei->unkC.z; break; - + case 1: case 2: VECSubtract(&((WorkPlayer *)lbl_1_bss_9C->data)->unk0, &bomhei->unk0, &playerOfs); @@ -1596,49 +1598,50 @@ void fn_1_7AD8(WorkBomhei *bomhei, omObjData *obj) } } bomhei->unkC.y = fn_1_1E20(bomhei->unkC.y, angle.x, 0.05f); - angle.z = radius*sind(bomhei->unkC.y); - angle.y = radius*cosd(bomhei->unkC.y); + angle.z = radius * sind(bomhei->unkC.y); + angle.y = radius * cosd(bomhei->unkC.y); bomhei->unk0.x += angle.z; bomhei->unk0.z += angle.y; - if(0.0f < radius) { + if (0.0f < radius) { bomhei->unkC.x = fn_1_1E20(bomhei->unkC.x, atan2d(angle.z, angle.y), 0.2f); } state = 0; - if(0.5f <= radius) { - if(7.0f <= radius) { + if (0.5f <= radius) { + if (7.0f <= radius) { state = 2; - } else { + } + else { state = 1; } } temp_r25 = FALSE; - if(fn_1_76CC(bomhei)) { + if (fn_1_76CC(bomhei)) { temp_r25 = TRUE; } fn_1_5894(&bomhei->unk0, &((WorkPlayer *)lbl_1_bss_9C->data)->unk0, 70, 70); - for(i=0; i<20; i++) { + for (i = 0; i < 20; i++) { WorkBomhei *bomhei2; - if(NULL == lbl_1_bss_4C[i]) { + if (NULL == lbl_1_bss_4C[i]) { continue; } - if(obj == lbl_1_bss_4C[i]) { + if (obj == lbl_1_bss_4C[i]) { continue; } bomhei2 = lbl_1_bss_4C[i]->data; - if(bomhei2->unk34 != 3004) { + if (bomhei2->unk34 != 3004) { fn_1_5894(&bomhei->unk0, &bomhei2->unk0, 70, 70); } } - if(fn_1_76CC(bomhei)) { + if (fn_1_76CC(bomhei)) { temp_r25 = TRUE; } - if(temp_r25 && bomhei->unk30 == 0) { - float radius = frandf()*350; - float angle2 = frandf()*360; - bomhei->unkC.z = atan2d((radius*sind(angle2))-bomhei->unk0.x, (radius*cosd(angle2))-bomhei->unk0.z); - bomhei->unk18.z = frandmod(120)+120; + if (temp_r25 && bomhei->unk30 == 0) { + float radius = frandf() * 350; + float angle2 = frandf() * 360; + bomhei->unkC.z = atan2d((radius * sind(angle2)) - bomhei->unk0.x, (radius * cosd(angle2)) - bomhei->unk0.z); + bomhei->unk18.z = frandmod(120) + 120; } - if(bomhei->unk2C != state) { + if (bomhei->unk2C != state) { bomhei->unk2C = state; Hu3DMotionShiftSet(obj->model[0], obj->motion[bomhei->unk2C], 0, 8, HU3D_MOTATTR_LOOP); } @@ -1650,61 +1653,61 @@ void fn_1_8D08(omObjData *obj) { WorkBomhei *bomhei = obj->data; s32 i; - switch(bomhei->unk34) { + switch (bomhei->unk34) { case 3000: - if(lbl_1_bss_A0->work[0] >= 1004) { + if (lbl_1_bss_A0->work[0] >= 1004) { bomhei->unk34 = 3002; } break; - + case 3001: fn_1_7AD8(bomhei, obj); - if(bomhei->unk28 < 0) { + if (bomhei->unk28 < 0) { bomhei->unk34 = 3002; } break; - + case 3002: fn_1_7AD8(bomhei, obj); bomhei->unk24--; - if(0.0f > bomhei->unk24) { + if (0.0f > bomhei->unk24) { fn_1_75B0(bomhei, obj); } break; - + case 3003: bomhei->unk24--; - if(0.0f > bomhei->unk24) { + if (0.0f > bomhei->unk24) { bomhei->unk34++; Hu3DModelAttrSet(obj->model[1], HU3D_ATTR_DISPOFF); - Hu3DModelAttrReset(obj->model[2], HU3D_MOTATTR_PAUSE|HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(obj->model[2], HU3D_MOTATTR_PAUSE | HU3D_MOTATTR_LOOP); Hu3DModelAttrReset(obj->model[2], HU3D_ATTR_DISPOFF); HuAudFXEmiterPlay(2082, &bomhei->unk0); fn_1_5438(&bomhei->unk0); } break; - + case 3004: - if(Hu3DMotionEndCheck(obj->model[2])) { + if (Hu3DMotionEndCheck(obj->model[2])) { fn_1_9724(obj); return; } break; - + case 3005: break; - + default: OSReport("*** bomhei mode error(%d)!!\n", bomhei->unk34); break; } - if(bomhei->unk34 != 3004 && lbl_1_bss_A0->work[0] >= 1005) { + if (bomhei->unk34 != 3004 && lbl_1_bss_A0->work[0] >= 1005) { bomhei->unk34 = 3005; Hu3DMotionShiftSet(obj->model[0], obj->motion[0], 0, 8, HU3D_MOTATTR_LOOP); } omSetTra(obj, bomhei->unk0.x, bomhei->unk0.y, bomhei->unk0.z); omSetRot(obj, 0, bomhei->unkC.x, 0); - for(i=0; i<3; i++) { + for (i = 0; i < 3; i++) { Hu3DModelPosSet(obj->model[i], bomhei->unk0.x, bomhei->unk0.y, bomhei->unk0.z); Hu3DModelRotSet(obj->model[i], 0, bomhei->unkC.x, 0); } @@ -1718,27 +1721,30 @@ void fn_1_9164(omObjData *obj) omSetTra(obj, bomhei->unk0.x, bomhei->unk0.y, bomhei->unk0.z); omSetRot(obj, 0, bomhei->unkC.x, 0); modelId = fn_1_AC(0x1000); - if(modelId < 0) { + if (modelId < 0) { obj->model[0] = Hu3DModelLink(lbl_1_bss_3C[0]); - } else { + } + else { obj->model[0] = modelId; } modelId = fn_1_AC(0x2000); - if(modelId < 0) { + if (modelId < 0) { obj->model[1] = Hu3DModelLink(lbl_1_bss_3C[1]); - } else { + } + else { obj->model[1] = modelId; } modelId = fn_1_AC(0x3000); - if(modelId < 0) { + if (modelId < 0) { obj->model[2] = Hu3DModelLink(lbl_1_bss_3C[2]); - } else { + } + else { obj->model[2] = modelId; } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { obj->motion[i] = lbl_1_bss_2C[i]; } - for(i=0; i<3; i++) { + for (i = 0; i < 3; i++) { Hu3DModelAttrSet(obj->model[i], HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(obj->model[i], HU3D_MOTATTR_LOOP); Hu3DModelAttrReset(obj->model[i], HU3D_MOTATTR_PAUSE); @@ -1750,8 +1756,8 @@ void fn_1_9164(omObjData *obj) Hu3DModelLayerSet(obj->model[2], 4); Hu3DModelShadowSet(obj->model[0]); Hu3DModelShadowSet(obj->model[1]); - for(i=0; i<20; i++) { - if(NULL == lbl_1_bss_4C[i]) { + for (i = 0; i < 20; i++) { + if (NULL == lbl_1_bss_4C[i]) { lbl_1_bss_4C[i] = obj; break; } @@ -1777,10 +1783,10 @@ void fn_1_956C(Vec *pos, float rotY, s32 type, s32 mode, s32 time) bomhei->unk28 = time; bomhei->unkC.y = bomhei->unkC.x; bomhei->unkC.z = bomhei->unkC.x; - bomhei->unk18.x = frandmod(120)+120; - bomhei->unk18.y = frandmod(120)+120; - bomhei->unk18.z = frandmod(120)+120; - bomhei->unk24 = frandmod(300)+180; + bomhei->unk18.x = frandmod(120) + 120; + bomhei->unk18.y = frandmod(120) + 120; + bomhei->unk18.z = frandmod(120) + 120; + bomhei->unk24 = frandmod(300) + 180; bomhei->unk2C = 0; } @@ -1788,15 +1794,15 @@ void fn_1_9724(omObjData *obj) { s32 i; lbl_1_bss_20--; - for(i=0; i<20; i++) { - if(obj == lbl_1_bss_4C[i]) { + for (i = 0; i < 20; i++) { + if (obj == lbl_1_bss_4C[i]) { lbl_1_bss_4C[i] = NULL; break; } } - for(i=0; i<3; i++) { + for (i = 0; i < 3; i++) { Hu3DModelAttrSet(obj->model[i], HU3D_ATTR_DISPOFF); - fn_1_24((i*4096)+4096, obj->model[i]); + fn_1_24((i * 4096) + 4096, obj->model[i]); } omDelObjEx(lbl_1_bss_238, obj); } @@ -1819,50 +1825,50 @@ typedef struct work_bomhei2 { void fn_1_9854(void) { - if(lbl_1_bss_200 % 900 == 0) { - if(++lbl_1_bss_24 >= 20) { + if (lbl_1_bss_200 % 900 == 0) { + if (++lbl_1_bss_24 >= 20) { lbl_1_bss_24 = 20; } } - if(lbl_1_bss_200 % 1800 == 0) { - if(lbl_1_data_264[2] < 40) { + if (lbl_1_bss_200 % 1800 == 0) { + if (lbl_1_data_264[2] < 40) { lbl_1_data_264[2] += 10; - if(lbl_1_data_264[2] > 100) { + if (lbl_1_data_264[2] > 100) { lbl_1_data_264[2] = 100; } lbl_1_data_264[1] -= 5; - if(lbl_1_data_264[1] < 0) { + if (lbl_1_data_264[1] < 0) { lbl_1_data_264[1] = 0; lbl_1_data_264[0] -= 5; } lbl_1_data_264[0] -= 5; - if(lbl_1_data_264[0] < 0) { + if (lbl_1_data_264[0] < 0) { lbl_1_data_264[0] = 0; } } } - if(lbl_1_bss_24 > lbl_1_bss_20) { + if (lbl_1_bss_24 > lbl_1_bss_20) { Data270Struct *data270 = NULL; s32 bitNum = frandmod(8); s32 i; - for(i=0; i<8; i++) { - if(((1 << bitNum) & lbl_1_bss_28) == 0) { + for (i = 0; i < 8; i++) { + if (((1 << bitNum) & lbl_1_bss_28) == 0) { data270 = &lbl_1_data_270[bitNum]; lbl_1_bss_28 |= (1 << bitNum); (void)i; break; } bitNum++; - if(bitNum >= 8) { + if (bitNum >= 8) { bitNum -= 8; } } - if(NULL != data270) { + if (NULL != data270) { s32 type = 2; s32 chance = frandmod(100); Vec pos; - for(i=0; i<3; i++) { - if(lbl_1_data_264[i] > chance) { + for (i = 0; i < 3; i++) { + if (lbl_1_data_264[i] > chance) { type = i; break; } @@ -1893,12 +1899,13 @@ WorkBomhei2 *fn_1_9CAC(omObjFunc func, s32 prio) bomhei->unk8.y = 10; bomhei->unk8.z = 0; modelId = fn_1_AC(0x1000); - if(modelId < 0) { + if (modelId < 0) { obj->model[0] = Hu3DModelLink(lbl_1_bss_3C[0]); - } else { + } + else { obj->model[0] = modelId; } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { obj->motion[i] = lbl_1_bss_2C[i]; } omSetTra(obj, bomhei->unk8.x, bomhei->unk8.y, bomhei->unk8.z); @@ -1920,27 +1927,27 @@ void fn_1_9EF4(omObjData *obj) float vel = 3; float dx; float dz; - + s32 state; - switch(bomhei->unk44) { + switch (bomhei->unk44) { case 0: - if(bomhei->unk3C != 1) { + if (bomhei->unk3C != 1) { bomhei->unk3C = 1; Hu3DMotionShiftSet(obj->model[0], obj->motion[bomhei->unk3C], 0, 8, HU3D_MOTATTR_LOOP); } - dx = bomhei->unk14.x-bomhei->unk8.x; - dz = bomhei->unk14.z-bomhei->unk8.z; - dist = sqrtf((dx*dx)+(dz*dz)); - if(vel < dist) { - dx = vel*(dx/dist); - dz = vel*(dz/dist); + dx = bomhei->unk14.x - bomhei->unk8.x; + dz = bomhei->unk14.z - bomhei->unk8.z; + dist = sqrtf((dx * dx) + (dz * dz)); + if (vel < dist) { + dx = vel * (dx / dist); + dz = vel * (dz / dist); } bomhei->unk8.x += dx; bomhei->unk8.z += dz; bomhei->unk2C = fn_1_1E20(bomhei->unk2C, atan2d(dx, dz), 0.4f); bomhei->unk30 = bomhei->unk2C; - if(vel > dist) { - switch(bomhei->unk40) { + if (vel > dist) { + switch (bomhei->unk40) { case 1: case 2: bomhei->unk44 = 1; @@ -1948,30 +1955,29 @@ void fn_1_9EF4(omObjData *obj) bomhei->unk3C = 0; Hu3DMotionShiftSet(obj->model[0], obj->motion[bomhei->unk3C], 0, 8, HU3D_MOTATTR_LOOP); break; - + default: bomhei->unk44 = 3; break; } } break; - + case 1: - bomhei->unk2C = fn_1_1E20(bomhei->unk2C, atan2d(parent->unk8.x-bomhei->unk8.x, parent->unk8.z-bomhei->unk8.z), 0.05f); + bomhei->unk2C = fn_1_1E20(bomhei->unk2C, atan2d(parent->unk8.x - bomhei->unk8.x, parent->unk8.z - bomhei->unk8.z), 0.05f); bomhei->unk30 = bomhei->unk2C; - parent->unk2C = fn_1_1E20(parent->unk2C, atan2d(bomhei->unk8.x-parent->unk8.x, bomhei->unk8.z-parent->unk8.z), 0.05f); + parent->unk2C = fn_1_1E20(parent->unk2C, atan2d(bomhei->unk8.x - parent->unk8.x, bomhei->unk8.z - parent->unk8.z), 0.05f); parent->unk30 = parent->unk2C; bomhei->unk34++; - if(180.0f < bomhei->unk34) { + if (180.0f < bomhei->unk34) { bomhei->unk44 = 3; - if(bomhei->unk40 == 2) { + if (bomhei->unk40 == 2) { bomhei->unk44 = 2; } } break; - - case 2: - { + + case 2: { Vec temp = parent->unk8; float tempAngle = parent->unk2C; parent->unk20 = parent->unk8; @@ -1982,40 +1988,39 @@ void fn_1_9EF4(omObjData *obj) bomhei->unk30 = tempAngle; bomhei->unk34 = 0; bomhei->unk44 = 3; - } - break; - + } break; + case 3: - bomhei->unk30 = fn_1_1E20(bomhei->unk30, atan2d(bomhei->unk20.x-bomhei->unk14.x, bomhei->unk20.z-bomhei->unk14.z), 0.2f); + bomhei->unk30 = fn_1_1E20(bomhei->unk30, atan2d(bomhei->unk20.x - bomhei->unk14.x, bomhei->unk20.z - bomhei->unk14.z), 0.2f); bomhei->unk2C = bomhei->unk30; - bomhei->unk8.x += vel*sind(bomhei->unk30); - bomhei->unk8.z += vel*cosd(bomhei->unk30); - if(bomhei->unk3C != 1) { + bomhei->unk8.x += vel * sind(bomhei->unk30); + bomhei->unk8.z += vel * cosd(bomhei->unk30); + if (bomhei->unk3C != 1) { bomhei->unk3C = 1; Hu3DMotionShiftSet(obj->model[0], obj->motion[bomhei->unk3C], 0, 8, HU3D_MOTATTR_LOOP); } parent->unk2C = fn_1_1E20(parent->unk2C, atan2d(-parent->unk8.x, -parent->unk8.z), 0.05f); bomhei->unk34++; - if(bomhei->unk40 == 2 && 60.0f < bomhei->unk34) { - dx = parent->unk20.x-parent->unk8.x; - dz = parent->unk20.z-parent->unk8.z; - dist = sqrtf((dx*dx)+(dz*dz)); - if(vel < dist) { - dx = vel*(dx/dist); - dz = vel*(dz/dist); + if (bomhei->unk40 == 2 && 60.0f < bomhei->unk34) { + dx = parent->unk20.x - parent->unk8.x; + dz = parent->unk20.z - parent->unk8.z; + dist = sqrtf((dx * dx) + (dz * dz)); + if (vel < dist) { + dx = vel * (dx / dist); + dz = vel * (dz / dist); } parent->unk8.x += dx; parent->unk8.z += dz; state = 0; - if(0.0f < dist) { + if (0.0f < dist) { state = 1; } - if(state != parent->unk3C) { + if (state != parent->unk3C) { parent->unk3C = state; Hu3DMotionShiftSet(parent->unk0->model[0], parent->unk0->motion[parent->unk3C], 0, 8, HU3D_MOTATTR_LOOP); } } - if(1750 < VECMagXZ(&bomhei->unk8)) { + if (1750 < VECMagXZ(&bomhei->unk8)) { parent->unk4 = NULL; Hu3DModelAttrSet(obj->model[0], HU3D_ATTR_DISPOFF); fn_1_24(0x1000, obj->model[0]); @@ -2026,9 +2031,9 @@ void fn_1_9EF4(omObjData *obj) } omSetTra(obj, bomhei->unk8.x, bomhei->unk8.y, bomhei->unk8.z); omSetRot(obj, 0, bomhei->unk2C, 0); - if(bomhei->unk38) { + if (bomhei->unk38) { bomhei->unk38 = 0; - Hu3DMotionTimeSet(obj->model[0], Hu3DMotionMaxTimeGet(obj->model[0])*frandf()); + Hu3DMotionTimeSet(obj->model[0], Hu3DMotionMaxTimeGet(obj->model[0]) * frandf()); Hu3DModelAttrReset(obj->model[0], HU3D_ATTR_DISPOFF); } } @@ -2037,43 +2042,44 @@ s32 fn_1_ADDC(WorkBomhei2 *parent, WorkBomhei2 *bomhei) { parent->unk4 = bomhei->unk0; bomhei->unk4 = parent->unk0; - bomhei->unk40 = frandmod(3); + bomhei->unk40 = frandmod(3); bomhei->unk44 = 0; - bomhei->unk14.x = 750.0f*((0 > parent->unk8.x) ? -1 : 1); - bomhei->unk14.z = 750.0f*((0 > parent->unk8.z) ? -1 : 1); - if(lbl_1_bss_204 & 0x1) { - bomhei->unk8.x = 1400.0f*((0 > parent->unk8.x) ? -1 : 1); - bomhei->unk8.z = 750.0f*((0 > parent->unk8.z) ? -1 : 1); - bomhei->unk20.x = 750.0f*((0 > parent->unk8.x) ? -1 : 1); - bomhei->unk20.z = 1400.0f*((0 > parent->unk8.z) ? -1 : 1); - } else { - bomhei->unk8.x = 750.0f*((0 > parent->unk8.x) ? -1 : 1); - bomhei->unk8.z = 1400.0f*((0 > parent->unk8.z) ? -1 : 1); - bomhei->unk20.x = 1400.0f*((0 > parent->unk8.x) ? -1 : 1); - bomhei->unk20.z = 750.0f*((0 > parent->unk8.z) ? -1 : 1); + bomhei->unk14.x = 750.0f * ((0 > parent->unk8.x) ? -1 : 1); + bomhei->unk14.z = 750.0f * ((0 > parent->unk8.z) ? -1 : 1); + if (lbl_1_bss_204 & 0x1) { + bomhei->unk8.x = 1400.0f * ((0 > parent->unk8.x) ? -1 : 1); + bomhei->unk8.z = 750.0f * ((0 > parent->unk8.z) ? -1 : 1); + bomhei->unk20.x = 750.0f * ((0 > parent->unk8.x) ? -1 : 1); + bomhei->unk20.z = 1400.0f * ((0 > parent->unk8.z) ? -1 : 1); } - bomhei->unk2C = atan2d(bomhei->unk14.x-bomhei->unk8.x, bomhei->unk14.z-bomhei->unk8.z); + else { + bomhei->unk8.x = 750.0f * ((0 > parent->unk8.x) ? -1 : 1); + bomhei->unk8.z = 1400.0f * ((0 > parent->unk8.z) ? -1 : 1); + bomhei->unk20.x = 1400.0f * ((0 > parent->unk8.x) ? -1 : 1); + bomhei->unk20.z = 750.0f * ((0 > parent->unk8.z) ? -1 : 1); + } + bomhei->unk2C = atan2d(bomhei->unk14.x - bomhei->unk8.x, bomhei->unk14.z - bomhei->unk8.z); bomhei->unk30 = bomhei->unk2C; } void fn_1_B234(omObjData *obj) { WorkBomhei2 *bomhei = obj->data; - if(NULL == bomhei->unk4) { + if (NULL == bomhei->unk4) { bomhei->unk2C = atan2d(-bomhei->unk8.x, -bomhei->unk8.z); bomhei->unk48--; - if(0.0f > bomhei->unk48) { + if (0.0f > bomhei->unk48) { WorkBomhei2 *bomheiNew; - bomhei->unk48 = frandmod(1200)+300; + bomhei->unk48 = frandmod(1200) + 300; bomheiNew = fn_1_9CAC(fn_1_9EF4, 102); fn_1_ADDC(bomhei, bomheiNew); } } omSetTra(obj, bomhei->unk8.x, bomhei->unk8.y, bomhei->unk8.z); omSetRot(obj, 0, bomhei->unk2C, 0); - if(bomhei->unk38) { + if (bomhei->unk38) { bomhei->unk38 = 0; - Hu3DMotionTimeSet(obj->model[0], Hu3DMotionMaxTimeGet(obj->model[0])*frandf()); + Hu3DMotionTimeSet(obj->model[0], Hu3DMotionMaxTimeGet(obj->model[0]) * frandf()); Hu3DModelAttrReset(obj->model[0], HU3D_ATTR_DISPOFF); } } @@ -2082,15 +2088,15 @@ void fn_1_D70C(omObjData *obj); void fn_1_BA2C(omObjData *obj) { - if(omSysExitReq) { + if (omSysExitReq) { fn_1_1F58(-1); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); obj->func = fn_1_D70C; } lbl_1_bss_204++; - switch(obj->work[0]) { + switch (obj->work[0]) { case 1000: - if(!WipeStatGet()) { + if (!WipeStatGet()) { Vec dir; obj->work[0]++; lbl_1_bss_1C = 0; @@ -2100,61 +2106,63 @@ void fn_1_BA2C(omObjData *obj) VECNormalize(&dir, &dir); HuAudFXListnerSetEX(&lbl_1_bss_220, &dir, 14000.0, 36000.0, 1000.0, 300.0, 300.0); } - + break; - + case 1001: lbl_1_bss_1C++; - if(30.0f < lbl_1_bss_1C) { + if (30.0f < lbl_1_bss_1C) { obj->work[0]++; lbl_1_bss_1C = 0; } break; - + case 1002: lbl_1_bss_1C++; - fn_1_13DC(lbl_1_bss_1C/120, &lbl_1_data_D0); - if(120.0f <= lbl_1_bss_1C) { + fn_1_13DC(lbl_1_bss_1C / 120, &lbl_1_data_D0); + if (120.0f <= lbl_1_bss_1C) { obj->work[0]++; lbl_1_bss_1C = 0; fn_1_1350(&lbl_1_data_C4, &lbl_1_data_D0, &lbl_1_data_DC); } break; - + case 1003: - if(lbl_1_bss_1FA < 0) { + if (lbl_1_bss_1FA < 0) { lbl_1_bss_1FA = MGSeqStartCreate(); - } else { - if(lbl_1_bss_1F4 < 0 && (MGSeqStatGet(lbl_1_bss_1FA) & 0x10)) { + } + else { + if (lbl_1_bss_1F4 < 0 && (MGSeqStatGet(lbl_1_bss_1FA) & 0x10)) { fn_1_1F24(70); } - if(MGSeqStatGet(lbl_1_bss_1FA) == 0) { + if (MGSeqStatGet(lbl_1_bss_1FA) == 0) { obj->work[0]++; lbl_1_bss_1FA = -1; } } break; - + case 1004: lbl_1_bss_200++; fn_1_580(lbl_1_bss_1AC, 0, lbl_1_bss_200); - if(lbl_1_bss_14 || 35999 <= lbl_1_bss_200) { + if (lbl_1_bss_14 || 35999 <= lbl_1_bss_200) { obj->work[0] = 1005; lbl_1_bss_1C = 0; } fn_1_9854(); break; - + case 1005: - if(lbl_1_bss_1FA < 0) { + if (lbl_1_bss_1FA < 0) { lbl_1_bss_1FA = MGSeqFinishCreate(); fn_1_1F58(100); mgRecordExtra = lbl_1_bss_200; - } else { + } + else { lbl_1_bss_1C++; - if(60.0f < lbl_1_bss_1C && !MGSeqStatGet(lbl_1_bss_1FA)) { + if (60.0f < lbl_1_bss_1C && !MGSeqStatGet(lbl_1_bss_1FA)) { obj->work[0] = 1007; - if(lbl_1_bss_1FC < lbl_1_bss_200) { + if (lbl_1_bss_1FC < lbl_1_bss_200) { obj->work[0] = 1006; fn_1_798(13); } @@ -2163,29 +2171,30 @@ void fn_1_BA2C(omObjData *obj) } } break; - + case 1006: - if(lbl_1_bss_1FA < 0) { + if (lbl_1_bss_1FA < 0) { lbl_1_bss_1FA = MGSeqRecordCreate(lbl_1_bss_1FC); - } else { - if(!MGSeqStatGet(lbl_1_bss_1FA)) { + } + else { + if (!MGSeqStatGet(lbl_1_bss_1FA)) { obj->work[0]++; lbl_1_bss_1C = 0; lbl_1_bss_1FA = -1; } } break; - + case 1007: lbl_1_bss_1C++; - if(210.0f < lbl_1_bss_1C) { + if (210.0f < lbl_1_bss_1C) { fn_1_1F58(-1); lbl_1_bss_1FA = -1; WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); obj->func = fn_1_D70C; } break; - + default: OSReport("*** main mode error(%d)!!\n", obj->work[0]); break; @@ -2196,23 +2205,23 @@ void fn_1_BA2C(omObjData *obj) void fn_1_C970(omObjData *obj) { s32 i; - obj->model[0] = Hu3DModelCreateFile(0x5A0000); - Hu3DModelAttrSet(obj->model[0], HU3D_ATTR_NOCULL|HU3D_ATTR_DISPOFF); + obj->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M461, 0x00)); + Hu3DModelAttrSet(obj->model[0], HU3D_ATTR_NOCULL | HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(obj->model[0], HU3D_MOTATTR_PAUSE); Hu3DModelLayerSet(obj->model[0], 0); Hu3DModelShadowMapSet(obj->model[0]); omSetTra(obj, 0, 0, 0); omSetRot(obj, 0, 0, 0); - obj->model[1] = Hu3DModelCreateFile(0x5A0001); - Hu3DModelAttrSet(obj->model[1], HU3D_ATTR_NOCULL|HU3D_ATTR_DISPOFF); + obj->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M461, 0x01)); + Hu3DModelAttrSet(obj->model[1], HU3D_ATTR_NOCULL | HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(obj->model[1], HU3D_MOTATTR_PAUSE); Hu3DModelLayerSet(obj->model[1], 1); Hu3DModelShadowSet(obj->model[1]); Hu3DModelPosSet(obj->model[1], 0, 0, 0); Hu3DModelRotSet(obj->model[1], 0, 0, 0); - fn_1_B4C(64, 0x5A0009); + fn_1_B4C(64, DATA_MAKE_NUM(DATADIR_M461, 0x09)); fn_1_9EC(); - for(i=0; i<2; i++) { + for (i = 0; i < 2; i++) { Hu3DModelAttrReset(obj->model[i], HU3D_ATTR_DISPOFF); } HuAudFXPlay(2085); @@ -2254,45 +2263,45 @@ void ObjectSetup(void) Hu3DShadowTPLvlSet(0.5f); Hu3DShadowPosSet(&lbl_1_data_104, &lbl_1_data_11C, &lbl_1_data_110); fn_1_0(); - for(i=0; i<20; i++) { + for (i = 0; i < 20; i++) { s32 modelId; lbl_1_bss_4C[i] = NULL; - modelId = Hu3DModelCreateFile(0x5A0008); + modelId = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M461, 0x08)); Hu3DModelAttrSet(modelId, HU3D_ATTR_DISPOFF); fn_1_24(12288, modelId); } - for(i=0; i<3; i++) { + for (i = 0; i < 3; i++) { lbl_1_bss_3C[i] = Hu3DModelCreateFile(lbl_1_data_1C8[i]); - Hu3DModelAttrSet(lbl_1_bss_3C[i], HU3D_ATTR_NOCULL|HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(lbl_1_bss_3C[i], HU3D_ATTR_NOCULL | HU3D_ATTR_DISPOFF); } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { lbl_1_bss_2C[i] = Hu3DJointMotionFile(lbl_1_bss_3C[0], lbl_1_data_1D4[i]); } lbl_1_bss_28 = 0; lbl_1_bss_20 = 0; lbl_1_bss_24 = 10; - angle = 360.0f*frandf(); + angle = 360.0f * frandf(); radiusPrev = -1; - for(i=0; iunk8 = lbl_1_data_2F0[i]; bomhei2->unk2C = atan2d(-bomhei2->unk8.x, -bomhei2->unk8.z); - bomhei2->unk48 = frandmod(1200)+300; + bomhei2->unk48 = frandmod(1200) + 300; } lbl_1_bss_9C = omAddObjEx(lbl_1_bss_238, 100, 1, 5, -1, fn_1_7328); lbl_1_bss_A0 = omAddObjEx(lbl_1_bss_238, 104, 2, 0, -1, fn_1_C970); @@ -2303,18 +2312,18 @@ void ObjectSetup(void) void fn_1_D70C(omObjData *obj) { s32 i; - if(WipeStatGet()) { + if (WipeStatGet()) { return; } - if(lbl_1_bss_1FA >= 0) { + if (lbl_1_bss_1FA >= 0) { MGSeqKill(lbl_1_bss_1FA); } - if(lbl_1_bss_1F8 >= 0) { + if (lbl_1_bss_1F8 >= 0) { MGSeqKill(lbl_1_bss_1F8); } MGSeqKillAll(); HuAudAllStop(); - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { CharModelKill(lbl_1_data_0[GWPlayerCfg[i].character]); } omOvlReturnEx(1, 1); diff --git a/src/REL/mstory2Dll/board_clear.c b/src/REL/mstory2Dll/board_clear.c index 206854e1..b4013800 100644 --- a/src/REL/mstory2Dll/board_clear.c +++ b/src/REL/mstory2Dll/board_clear.c @@ -10,12 +10,13 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" #include "game/printfunc.h" #include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "game/pad.h" -#include "game/objsub.h" + typedef struct { /* 0x000 */ s32 unk00; @@ -42,17 +43,17 @@ void fn_1_C858(void); void fn_1_CCCC(int arg0, int arg1, int arg2, int arg3, int arg4); void fn_1_CD78(void); void fn_1_D224(int arg0, int arg1, int arg2, int arg3, int arg4); -void fn_1_D2D0(omObjData* arg0, StructBss16C* arg1); +void fn_1_D2D0(omObjData *arg0, StructBss16C *arg1); void fn_1_D478(void); void fn_1_D764(int arg0); void fn_1_DB58(int arg0, int arg1, int arg2, int arg3, int arg4); -void fn_1_DC54(omObjData* arg0, StructBss16C* arg1); +void fn_1_DC54(omObjData *arg0, StructBss16C *arg1); void fn_1_DDC4(void); void fn_1_E1B8(void); void fn_1_E244(void); void fn_1_E334(void); -void fn_1_B37C(omObjData* arg0, StructBss16C* arg1) +void fn_1_B37C(omObjData *arg0, StructBss16C *arg1) { fn_1_BE8(30); fn_1_DB58(4, -1, 15, 1, 0); @@ -60,7 +61,7 @@ void fn_1_B37C(omObjData* arg0, StructBss16C* arg1) arg1->unk04 = NULL; } -void fn_1_B3E4(Process* arg0, s32 arg1) +void fn_1_B3E4(Process *arg0, s32 arg1) { int i; lbl_1_bss_298 = arg0; @@ -73,20 +74,19 @@ void fn_1_B3E4(Process* arg0, s32 arg1) HuPrcChildCreate(fn_1_C858, 100, 8192, 0, HuPrcCurrentGet()); HuPrcChildCreate(fn_1_CD78, 100, 8192, 0, HuPrcCurrentGet()); HuPrcChildCreate(fn_1_D478, 100, 8192, 0, HuPrcCurrentGet()); - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { HuPrcChildCreate(fn_1_DDC4, 100, 8192, 0, HuPrcCurrentGet()); } HuPrcChildCreate(fn_1_C4C0, 100, 8192, 0, HuPrcCurrentGet()); - } void fn_1_B518(omObjData *object) { - if(object->work[2]) { + if (object->work[2]) { object->work[2]--; return; } - if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + if (object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { fn_1_1DFC(object, 1, object->work[1], 15, 1); object->work[0] = object->work[1] = object->work[2] = 0; } @@ -98,42 +98,47 @@ void fn_1_B5A4(void) int posY = 40; GXColor winColor = { 0, 0, 128, 128 }; int i; - while(1) { + while (1) { fn_1_BC8(); printWin(posX, posY, 220, 160, &winColor); - if(lbl_1_bss_3B4.unk04 == NULL) { + if (lbl_1_bss_3B4.unk04 == NULL) { print8(posX, posY, 1, "PROC_MAIN -> FALSE"); - } else { + } + else { print8(posX, posY, 1, "PROC_MAIN -> TRUE"); } - if(lbl_1_bss_38C.unk04 == NULL) { - print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); - } else { - print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + if (lbl_1_bss_38C.unk04 == NULL) { + print8(posX, posY + 10, 1, "PROC_MAP -> FALSE"); } - if(lbl_1_bss_364.unk04 == NULL) { - print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); - } else { - print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + else { + print8(posX, posY + 10, 1, "PROC_MAP -> TRUE"); } - if(lbl_1_bss_33C.unk04 == NULL) { - print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); - } else { - print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + if (lbl_1_bss_364.unk04 == NULL) { + print8(posX, posY + 20, 1, "PROC_KOOPA -> FALSE"); } - for(i=0; i<4; i++) { - if(lbl_1_bss_29C[i].unk04 == NULL) { - print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> FALSE", i); - } else { - print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> TRUE", i); + else { + print8(posX, posY + 20, 1, "PROC_KOOPA -> TRUE"); + } + if (lbl_1_bss_33C.unk04 == NULL) { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> FALSE"); + } + else { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> TRUE"); + } + for (i = 0; i < 4; i++) { + if (lbl_1_bss_29C[i].unk04 == NULL) { + print8(posX, posY + 40 + (i * 10), 1, "PROC_PLAYER%d -> FALSE", i); + } + else { + print8(posX, posY + 40 + (i * 10), 1, "PROC_PLAYER%d -> TRUE", i); } } - print8(posX, posY+90, 1, "P:%d W:%d", lbl_1_bss_3DC.unk00, lbl_1_bss_3DC.unk0C); - print8(posX, posY+110, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); - for(i=0; i<4; i++) { - print8(posX, posY+120+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_3DC.unk30[i].unk00, lbl_1_bss_3DC.unk30[i].unk04, lbl_1_bss_3DC.unk30[i].unk08, lbl_1_bss_3DC.unk30[i].unk0C, lbl_1_bss_3DC.unk30[i].unk14, lbl_1_bss_3DC.unk30[i].unk10); + print8(posX, posY + 90, 1, "P:%d W:%d", lbl_1_bss_3DC.unk00, lbl_1_bss_3DC.unk0C); + print8(posX, posY + 110, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(posX, posY + 120 + (i * 10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_3DC.unk30[i].unk00, lbl_1_bss_3DC.unk30[i].unk04, + lbl_1_bss_3DC.unk30[i].unk08, lbl_1_bss_3DC.unk30[i].unk0C, lbl_1_bss_3DC.unk30[i].unk14, lbl_1_bss_3DC.unk30[i].unk10); } - } } @@ -152,15 +157,15 @@ void fn_1_B9E0(void) lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk04 = (void *)fn_1_DC54; fn_1_3854(&lbl_1_bss_24); fn_1_2750(fn_1_E244); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk04 == NULL) { + if (lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk04 == NULL) { break; } } - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_33C.unk04 == NULL) { + if (lbl_1_bss_33C.unk04 == NULL) { break; } } @@ -181,8 +186,8 @@ void fn_1_BA90(void) fn_1_1A94(lbl_1_bss_3DC.unk04); HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); fn_1_BE8(60); - for(i=0; i<4; i++) { - if(lbl_1_bss_3DC.unk30[i].unk00 != lbl_1_bss_3DC.unk30[lbl_1_bss_3DC.unk00].unk00) { + for (i = 0; i < 4; i++) { + if (lbl_1_bss_3DC.unk30[i].unk00 != lbl_1_bss_3DC.unk30[lbl_1_bss_3DC.unk00].unk00) { Hu3DModelAttrSet(lbl_1_bss_29C[i].unk00->model[1], 1); } Hu3DModelAttrSet(lbl_1_bss_29C[i].unk00->model[2], 1); @@ -236,9 +241,9 @@ void fn_1_BF48(void) int padNo; WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - while(1) { + while (1) { fn_1_BC8(); - if(!WipeStatGet()) { + if (!WipeStatGet()) { break; } } @@ -253,14 +258,14 @@ void fn_1_BF48(void) GWPlayerCfg[0].pad_idx = padNo; GWPlayerCfg[0].group = 0; GWPlayerCfg[0].iscom = FALSE; - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { GWPlayer[i].character = GWPlayerCfg[i].character; GWPlayer[i].port = GWPlayerCfg[i].pad_idx; GWPlayer[i].com = GWPlayerCfg[i].iscom; GWPlayer[i].team = GWPlayerCfg[i].group; } GWPlayerCfg[1].character = 8; - for(i=1; i<4; i++) { + for (i = 1; i < 4; i++) { GWPlayerCfg[i].iscom = GWPlayerCfg[i].group = 1; } his = omOvlHisGet(0); @@ -269,14 +274,14 @@ void fn_1_BF48(void) HuAudSStreamAllFadeOut(1000); GWSystem.mg_type = -1; GWMGAvailSet(450); - GWSystem.mg_next = 450-401; + GWSystem.mg_next = 450 - 401; omOvlCallEx(OVL_M450, 1, 0, 0); - while(1) { + while (1) { fn_1_BC8(); } } -void fn_1_C270(omObjData* arg0, StructBss16C* arg1) +void fn_1_C270(omObjData *arg0, StructBss16C *arg1) { int temp = 0; fn_1_B984(); @@ -293,9 +298,9 @@ void fn_1_C4C0(void) lbl_1_bss_3B4.unk00 = obj = omAddObjEx(lbl_1_bss_298, 256, 16, 16, -1, NULL); lbl_1_bss_3B4.unk04 = (void *)fn_1_C270; lbl_1_bss_3B4.unk00->data = &lbl_1_bss_3B4; - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_3B4.unk04 != NULL) { + if (lbl_1_bss_3B4.unk04 != NULL) { lbl_1_bss_3B4.unk04(obj, &lbl_1_bss_3B4); } } @@ -324,10 +329,10 @@ void fn_1_C574(omObjData *object) fn_1_1DFC(object, 6, 6, 0, 2); } -void fn_1_C79C(omObjData* arg0, StructBss16C* arg1) +void fn_1_C79C(omObjData *arg0, StructBss16C *arg1) { Hu3DData[arg0->model[5]].pos.y = fn_1_B08(80, 90, arg1->unk08++, 360); - if(arg1->unk08 >= 360) { + if (arg1->unk08 >= 360) { arg1->unk08 = 0; } } @@ -339,9 +344,9 @@ void fn_1_C858(void) lbl_1_bss_38C.unk04 = (void *)fn_1_C79C; lbl_1_bss_38C.unk00->data = &lbl_1_bss_38C; fn_1_C574(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_38C.unk04 != NULL) { + if (lbl_1_bss_38C.unk04 != NULL) { lbl_1_bss_38C.unk04(obj, &lbl_1_bss_38C); } } @@ -365,12 +370,12 @@ void fn_1_CB0C(omObjData *object) void fn_1_CCCC(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_364.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_364.unk00->work[0] = arg4; lbl_1_bss_364.unk00->work[1] = arg1; - lbl_1_bss_364.unk00->work[2] = arg2+1; + lbl_1_bss_364.unk00->work[2] = arg2 + 1; } void fn_1_CD78(void) @@ -380,15 +385,16 @@ void fn_1_CD78(void) lbl_1_bss_364.unk04 = NULL; lbl_1_bss_364.unk00->data = &lbl_1_bss_38C; fn_1_CB0C(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_364.unk04 != NULL) { + if (lbl_1_bss_364.unk04 != NULL) { lbl_1_bss_364.unk04(obj, &lbl_1_bss_364); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -415,25 +421,25 @@ void fn_1_D030(omObjData *object) void fn_1_D224(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_33C.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_33C.unk00->work[0] = arg4; lbl_1_bss_33C.unk00->work[1] = arg1; - lbl_1_bss_33C.unk00->work[2] = arg2+1; + lbl_1_bss_33C.unk00->work[2] = arg2 + 1; } -void fn_1_D2D0(omObjData* arg0, StructBss16C* arg1) +void fn_1_D2D0(omObjData *arg0, StructBss16C *arg1) { int i; - for(i=0; i<15; i++) { + for (i = 0; i < 15; i++) { fn_1_BC8(); Hu3DData[arg0->model[1]].rot.y = fn_1_864(0, 135, i, 15); } arg1->unk04 = NULL; } -void fn_1_D394(omObjData* arg0, StructBss16C* arg1) +void fn_1_D394(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -120, 0, 800 }; fn_1_1DFC(arg0, 1, 2, 15, 1); @@ -449,15 +455,16 @@ void fn_1_D478(void) lbl_1_bss_33C.unk04 = NULL; lbl_1_bss_33C.unk00->data = &lbl_1_bss_33C; fn_1_D030(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_33C.unk04 != NULL) { + if (lbl_1_bss_33C.unk04 != NULL) { lbl_1_bss_33C.unk04(obj, &lbl_1_bss_33C); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -470,20 +477,20 @@ void fn_1_D764(int arg0) int i; int order[4]; order[0] = 0; - for(i=1; i<4; i++) { - order[i] = order[i-1]+1; - if(order[i] >= 4) { + for (i = 1; i < 4; i++) { + order[i] = order[i - 1] + 1; + if (order[i] >= 4) { order[i] = 0; } - if(arg0 == order[i]) { + if (arg0 == order[i]) { lbl_1_bss_3DC.unk00 = i; } } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { fn_1_357C(&lbl_1_bss_3DC.unk30[i], order[i]); } - for(i=0; i<4; i++) { - lbl_1_bss_3DC.unk30[i].unk18 = GWPlayer[order[i]].rank+1; + for (i = 0; i < 4; i++) { + lbl_1_bss_3DC.unk30[i].unk18 = GWPlayer[order[i]].rank + 1; } } @@ -499,20 +506,22 @@ void fn_1_D898(omObjData *object, int player) int playerNo = player; int charNo = lbl_1_bss_3DC.unk30[playerNo].unk10; object->model[1] = CharModelCreate(charNo, 4); - object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); - object->motion[2] = CharModelMotionCreate(charNo, 0x5F0003); - object->motion[3] = CharModelMotionCreate(charNo, 0x5F0005); - object->motion[4] = CharModelMotionCreate(charNo, 0x5F001A); - object->motion[5] = CharModelMotionCreate(charNo, 0x5F006D); + object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03)); + object->motion[3] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05)); + object->motion[4] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x1A)); + object->motion[5] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x6D)); CharModelMotionDataClose(charNo); - Hu3DModelPosSet(object->model[1], lbl_1_data_668[playerNo].x, lbl_1_data_668[lbl_1_bss_3DC.unk30[playerNo].unk18-1].y+90, lbl_1_data_668[playerNo].z); + Hu3DModelPosSet( + object->model[1], lbl_1_data_668[playerNo].x, lbl_1_data_668[lbl_1_bss_3DC.unk30[playerNo].unk18 - 1].y + 90, lbl_1_data_668[playerNo].z); Hu3DModelRotSet(object->model[1], 0, 0, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); Hu3DModelShadowSet(object->model[1]); fn_1_1DFC(object, 1, 1, 0, 1); object->model[2] = Hu3DModelCreateFile(0x660056); - Hu3DModelPosSet(object->model[2], lbl_1_data_668[playerNo].x, lbl_1_data_668[lbl_1_bss_3DC.unk30[playerNo].unk18-1].y, lbl_1_data_668[playerNo].z); - if(lbl_1_bss_3DC.unk30[playerNo].unk18 == 4) { + Hu3DModelPosSet( + object->model[2], lbl_1_data_668[playerNo].x, lbl_1_data_668[lbl_1_bss_3DC.unk30[playerNo].unk18 - 1].y, lbl_1_data_668[playerNo].z); + if (lbl_1_bss_3DC.unk30[playerNo].unk18 == 4) { Hu3DModelAttrSet(object->model[2], 1); } Hu3DModelScaleSet(object->model[2], 1.5, 1, 1.5); @@ -522,15 +531,15 @@ void fn_1_D898(omObjData *object, int player) void fn_1_DB58(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00->work[0] = arg4; lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00->work[1] = arg1; - lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00->work[2] = arg2+1; + lbl_1_bss_29C[lbl_1_bss_3DC.unk00].unk00->work[2] = arg2 + 1; } -void fn_1_DC54(omObjData* arg0, StructBss16C* arg1) +void fn_1_DC54(omObjData *arg0, StructBss16C *arg1) { Vec pos = { 120, 0, 800 }; fn_1_2948(arg0, 1, pos, -1, 30, 10); @@ -550,15 +559,16 @@ void fn_1_DDC4(void) lbl_1_bss_29C[playerNo].unk04 = NULL; lbl_1_bss_29C[playerNo].unk00->data = &lbl_1_bss_29C[0]; fn_1_D898(obj, playerNo); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_29C[playerNo].unk04 != NULL) { + if (lbl_1_bss_29C[playerNo].unk04 != NULL) { lbl_1_bss_29C[playerNo].unk04(obj, &lbl_1_bss_29C[playerNo]); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -596,7 +606,7 @@ void fn_1_E334(void) { StructBss24 *work = &lbl_1_bss_24; StructBss24 temp; - if(work->unk40 == 50) { + if (work->unk40 == 50) { fn_1_1DFC(lbl_1_bss_38C.unk00, 5, 5, 0, 0); fn_1_1DFC(lbl_1_bss_38C.unk00, 6, 6, 0, 0); HuAudFXPlay(161); @@ -609,11 +619,11 @@ void fn_1_E334(void) temp.unk20.z = 0; temp.unk38 = 150; fn_1_4FEC(work, &temp, work->unk40, 180, 10); - if(work->unk40++ >= 90) { - if(work->unk40 == 91) { + if (work->unk40++ >= 90) { + if (work->unk40 == 91) { lbl_1_bss_88[0] = HuAudFXPlay(32); } - work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40-90, 90); - Hu3DData[lbl_1_bss_38C.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40-90, 90); + work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40 - 90, 90); + Hu3DData[lbl_1_bss_38C.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40 - 90, 90); } -} \ No newline at end of file +} diff --git a/src/REL/mstory2Dll/board_entrance.c b/src/REL/mstory2Dll/board_entrance.c index d1ac7abb..c1b93643 100644 --- a/src/REL/mstory2Dll/board_entrance.c +++ b/src/REL/mstory2Dll/board_entrance.c @@ -9,12 +9,13 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" #include "game/printfunc.h" #include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "game/pad.h" -#include "game/objsub.h" + typedef struct { /* 0x000 */ s32 unk00; @@ -38,26 +39,10 @@ Process *lbl_1_bss_C8; s32 lbl_1_bss_88[16]; s32 lbl_1_bss_78[4]; -u32 lbl_1_data_3A0[11] = { - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000, - 0x00250000 -}; +u32 lbl_1_data_3A0[11] + = { 0x00250000, 0x00250000, 0x00250000, 0x00250000, 0x00250000, 0x00250000, 0x00250000, 0x00250000, 0x00250000, 0x00250000, 0x00250000 }; -s32 lbl_1_data_3CC[2][2] = { - 20, - 70, - 1, - 1 -}; +s32 lbl_1_data_3CC[2][2] = { 20, 70, 1, 1 }; s32 lbl_1_data_3DC = -1; s32 lbl_1_data_3E0[2] = { -1, -1 }; @@ -65,11 +50,11 @@ s32 lbl_1_data_3E0[2] = { -1, -1 }; void fn_1_9768(void); void fn_1_9A10(void); void fn_1_9BD4(s32 arg0); -void fn_1_9ECC(omObjData* arg0, StructBss16C* arg1); +void fn_1_9ECC(omObjData *arg0, StructBss16C *arg1); void fn_1_9FDC(void); -void fn_1_A4A8(omObjData* arg0, StructBss16C* arg1); +void fn_1_A4A8(omObjData *arg0, StructBss16C *arg1); void fn_1_A58C(void); -void fn_1_AB10(omObjData* arg0, StructBss16C* arg1); +void fn_1_AB10(omObjData *arg0, StructBss16C *arg1); void fn_1_AE5C(void); void fn_1_B1C0(void); @@ -78,30 +63,28 @@ void fn_1_B24C(void); void fn_1_7DB0(void) { int i; - while(1) { + while (1) { do { HuPrcVSleep(); - } while(lbl_1_data_3DC == -1 || lbl_1_data_3E0[0] == -1 || lbl_1_data_3E0[1] == -1 || lbl_1_data_3E0[0] != Hu3DMotionIDGet(lbl_1_data_3DC)); - for(i=0; i<2; i++) { - if(lbl_1_data_3CC[1][i] != -1) { - if(Hu3DMotionTimeGet(lbl_1_data_3DC) >= lbl_1_data_3CC[0][i]) { + } while (lbl_1_data_3DC == -1 || lbl_1_data_3E0[0] == -1 || lbl_1_data_3E0[1] == -1 || lbl_1_data_3E0[0] != Hu3DMotionIDGet(lbl_1_data_3DC)); + for (i = 0; i < 2; i++) { + if (lbl_1_data_3CC[1][i] != -1) { + if (Hu3DMotionTimeGet(lbl_1_data_3DC) >= lbl_1_data_3CC[0][i]) { OSReport("KE-System TIME:%d\n", lbl_1_data_3CC[0][i]); HuAudFXPlay(81); lbl_1_data_3CC[1][i] = -1; } } } - if(Hu3DMotionTimeGet(lbl_1_data_3DC) <= 10) { - for(i=0; i<2; i++) { + if (Hu3DMotionTimeGet(lbl_1_data_3DC) <= 10) { + for (i = 0; i < 2; i++) { lbl_1_data_3CC[1][i] = 1; } } - } - } -void fn_1_7F54(Process* arg0, s32 arg1) +void fn_1_7F54(Process *arg0, s32 arg1) { lbl_1_bss_C8 = arg0; lbl_1_bss_194.unk0C = arg1; @@ -119,11 +102,11 @@ void fn_1_7F54(Process* arg0, s32 arg1) void fn_1_806C(omObjData *object) { - if(object->work[2]) { + if (object->work[2]) { object->work[2]--; return; } - if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + if (object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { fn_1_1DFC(object, 1, object->work[1], 15, 1); object->work[0] = object->work[1] = object->work[2] = 0; } @@ -135,44 +118,51 @@ void fn_1_80F8(void) int posY = 40; GXColor winColor = { 0, 0, 128, 128 }; int i; - while(1) { + while (1) { fn_1_BC8(); fontcolor = FONT_COLOR_WHITE; printWin(posX, posY, 220, 130, &winColor); - if(lbl_1_bss_16C.unk04 == NULL) { + if (lbl_1_bss_16C.unk04 == NULL) { print8(posX, posY, 1, "PROC_MAIN -> FALSE"); - } else { + } + else { print8(posX, posY, 1, "PROC_MAIN -> TRUE"); } - if(lbl_1_bss_144.unk04 == NULL) { - print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); - } else { - print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + if (lbl_1_bss_144.unk04 == NULL) { + print8(posX, posY + 10, 1, "PROC_MAP -> FALSE"); } - if(lbl_1_bss_11C.unk04 == NULL) { - print8(posX, posY+20, 1, "PROC_PLAYER -> FALSE"); - } else { - print8(posX, posY+20, 1, "PROC_PLAYER -> TRUE"); + else { + print8(posX, posY + 10, 1, "PROC_MAP -> TRUE"); } - if(lbl_1_bss_F4.unk04 == NULL) { - print8(posX, posY+30, 1, "PROC_SUB -> FALSE"); - } else { - print8(posX, posY+30, 1, "PROC_SUB -> TRUE"); + if (lbl_1_bss_11C.unk04 == NULL) { + print8(posX, posY + 20, 1, "PROC_PLAYER -> FALSE"); } - if(lbl_1_bss_CC.unk04 == NULL) { - print8(posX, posY+40, 1, "PROC_KOOPA -> FALSE"); - } else { - print8(posX, posY+40, 1, "PROC_KOOPA -> TRUE"); + else { + print8(posX, posY + 20, 1, "PROC_PLAYER -> TRUE"); } - - print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_194.unk00, lbl_1_bss_194.unk0C); - print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); - for(i=0; i<4; i++) { - print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_194.unk30[i].unk00, lbl_1_bss_194.unk30[i].unk04, lbl_1_bss_194.unk30[i].unk08, lbl_1_bss_194.unk30[i].unk0C, lbl_1_bss_194.unk30[i].unk14, lbl_1_bss_194.unk30[i].unk10); + if (lbl_1_bss_F4.unk04 == NULL) { + print8(posX, posY + 30, 1, "PROC_SUB -> FALSE"); } - if(HuPadBtnDown[0] & PAD_BUTTON_X) { + else { + print8(posX, posY + 30, 1, "PROC_SUB -> TRUE"); + } + if (lbl_1_bss_CC.unk04 == NULL) { + print8(posX, posY + 40, 1, "PROC_KOOPA -> FALSE"); + } + else { + print8(posX, posY + 40, 1, "PROC_KOOPA -> TRUE"); + } + + print8(posX, posY + 60, 1, "P:%d W:%d", lbl_1_bss_194.unk00, lbl_1_bss_194.unk0C); + print8(posX, posY + 80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(posX, posY + 90 + (i * 10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_194.unk30[i].unk00, lbl_1_bss_194.unk30[i].unk04, + lbl_1_bss_194.unk30[i].unk08, lbl_1_bss_194.unk30[i].unk0C, lbl_1_bss_194.unk30[i].unk14, lbl_1_bss_194.unk30[i].unk10); + } + if (HuPadBtnDown[0] & PAD_BUTTON_X) { fn_1_7384(lbl_1_bss_11C.unk00->model[1], lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10, 30, 120, TRUE); - } else if(HuPadBtnDown[0] & PAD_BUTTON_Y) { + } + else if (HuPadBtnDown[0] & PAD_BUTTON_Y) { fn_1_7384(lbl_1_bss_11C.unk00->model[1], lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10, 30, 120, FALSE); } } @@ -200,10 +190,10 @@ void fn_1_85DC(void) fn_1_1DFC(lbl_1_bss_144.unk00, 2, 2, 0, 0); do { fn_1_BC8(); - } while(lbl_1_bss_11C.unk04 != NULL); + } while (lbl_1_bss_11C.unk04 != NULL); do { fn_1_BC8(); - } while(lbl_1_bss_F4.unk04 != NULL); + } while (lbl_1_bss_F4.unk04 != NULL); lbl_1_bss_194.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_194.unk0C); HuAudFXPlay(lbl_1_data_0[0][2]); fn_1_1DFC(lbl_1_bss_F4.unk00, 1, 3, 5, 1); @@ -227,17 +217,17 @@ void fn_1_87D4(void) fn_1_BC8(); Hu3DMotionTimeSet(lbl_1_bss_CC.unk00->model[1], 100); Hu3DModelAttrReset(lbl_1_bss_CC.unk00->model[1], 1); - while(1) { + while (1) { fn_1_BC8(); - if(Hu3DMotionTimeGet(lbl_1_bss_CC.unk00->model[1]) >= 132) { + if (Hu3DMotionTimeGet(lbl_1_bss_CC.unk00->model[1]) >= 132) { break; } } fn_1_1DFC(lbl_1_bss_F4.unk00, 1, 4, 0, 0); fn_1_BC8(); - while(1) { + while (1) { fn_1_BC8(); - if(Hu3DMotionTimeGet(lbl_1_bss_F4.unk00->model[1]) >= 5) { + if (Hu3DMotionTimeGet(lbl_1_bss_F4.unk00->model[1]) >= 5) { break; } } @@ -247,8 +237,8 @@ void fn_1_87D4(void) HuAudFXPlay(156); omVibrate(lbl_1_bss_194.unk0C, 45, 12, 0); speed = 50; - for(i=0; i<60; i++) { - float weight = fn_1_B08(0, speed, i%15, 15); + for (i = 0; i < 60; i++) { + float weight = fn_1_B08(0, speed, i % 15, 15); speed = fn_1_88C(speed, 0, 30); lbl_1_bss_194.unk100 = fn_1_88C(lbl_1_bss_194.unk100, weight, 5); fn_1_BC8(); @@ -326,9 +316,9 @@ void fn_1_9034(void) fn_1_1D18(lbl_1_bss_194.unk04, 0x1F0007); fn_1_1AFC(lbl_1_bss_194.unk04, -1); fn_1_1A94(lbl_1_bss_194.unk04); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_CC.unk04 == NULL) { + if (lbl_1_bss_CC.unk04 == NULL) { break; } } @@ -349,9 +339,9 @@ void fn_1_9198(void) HuAudFXFadeOut(lbl_1_bss_88[0], 1000); WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - while(1) { + while (1) { fn_1_BC8(); - if(!WipeStatGet()) { + if (!WipeStatGet()) { break; } } @@ -364,7 +354,7 @@ void fn_1_9198(void) omOvlGotoEx(OVL_MENT, 1, 11, 0); } -void fn_1_92BC(omObjData* arg0, StructBss16C* arg1) +void fn_1_92BC(omObjData *arg0, StructBss16C *arg1) { int temp = 0; fn_1_8580(); @@ -382,9 +372,9 @@ void fn_1_9768(void) lbl_1_bss_16C.unk00 = obj = omAddObjEx(lbl_1_bss_C8, 256, 16, 16, -1, NULL); lbl_1_bss_16C.unk04 = (void *)fn_1_92BC; lbl_1_bss_16C.unk00->data = &lbl_1_bss_16C; - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_16C.unk04 != NULL) { + if (lbl_1_bss_16C.unk04 != NULL) { lbl_1_bss_16C.unk04(obj, &lbl_1_bss_16C); } } @@ -403,10 +393,10 @@ void fn_1_981C(omObjData *object) object->model[4] = Hu3DModelCreateFile(0x660051); } -void fn_1_9954(omObjData* arg0, StructBss16C* arg1) +void fn_1_9954(omObjData *arg0, StructBss16C *arg1) { Hu3DData[arg0->model[5]].pos.y = fn_1_B08(125, 130, arg1->unk08++, 360); - if(arg1->unk08 >= 360) { + if (arg1->unk08 >= 360) { arg1->unk08 = 0; } } @@ -418,9 +408,9 @@ void fn_1_9A10(void) lbl_1_bss_144.unk04 = (void *)fn_1_9954; lbl_1_bss_144.unk00->data = &lbl_1_bss_144; fn_1_981C(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_144.unk04 != NULL) { + if (lbl_1_bss_144.unk04 != NULL) { lbl_1_bss_144.unk04(obj, &lbl_1_bss_144); } } @@ -431,16 +421,16 @@ void fn_1_9BD4(s32 arg0) int i; int order[4]; order[0] = 0; - for(i=1; i<4; i++) { - order[i] = order[i-1]+1; - if(order[i] >= 4) { + for (i = 1; i < 4; i++) { + order[i] = order[i - 1] + 1; + if (order[i] >= 4) { order[i] = 0; } - if(arg0 == order[i]) { + if (arg0 == order[i]) { lbl_1_bss_194.unk00 = i; } } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { fn_1_357C(&lbl_1_bss_194.unk30[i], order[i]); } } @@ -449,13 +439,13 @@ void fn_1_9CB8(omObjData *object) { int charNo = lbl_1_bss_194.unk30[lbl_1_bss_194.unk00].unk10; object->model[1] = CharModelCreate(charNo, 1); - object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); - object->motion[2] = CharModelMotionCreate(charNo, 0x5F0035); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660018+charNo); - object->motion[7] = Hu3DJointMotionFile(object->model[1], 0x660048+charNo); - object->motion[8] = Hu3DJointMotionFile(object->model[1], 0x660040+charNo); - object->motion[9] = Hu3DJointMotionFile(object->model[1], 0x660020+charNo); - object->motion[10] = CharModelMotionCreate(charNo, 0x5F0012); + object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x35)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660018 + charNo); + object->motion[7] = Hu3DJointMotionFile(object->model[1], 0x660048 + charNo); + object->motion[8] = Hu3DJointMotionFile(object->model[1], 0x660040 + charNo); + object->motion[9] = Hu3DJointMotionFile(object->model[1], 0x660020 + charNo); + object->motion[10] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x12)); CharModelMotionDataClose(charNo); Hu3DModelPosSet(object->model[1], 120, 0, 800); Hu3DModelRotSet(object->model[1], 0, -135, 0); @@ -464,13 +454,13 @@ void fn_1_9CB8(omObjData *object) fn_1_1DFC(object, 1, 1, 0, 1); } -void fn_1_9ECC(omObjData* arg0, StructBss16C* arg1) +void fn_1_9ECC(omObjData *arg0, StructBss16C *arg1) { int i; fn_1_1DFC(arg0, 1, 2, 0, 0); fn_1_BC8(); Hu3DMotionTimeSet(arg0->model[1], 60); - for(i=0; i<60; i++) { + for (i = 0; i < 60; i++) { fn_1_BC8(); Hu3DData[arg0->model[1]].rot.y = fn_1_864(-135, -90, i, 60); } @@ -485,12 +475,12 @@ void fn_1_9FDC(void) lbl_1_bss_11C.unk04 = NULL; lbl_1_bss_11C.unk00->data = &lbl_1_bss_11C; fn_1_9CB8(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_11C.unk04 != NULL) { + if (lbl_1_bss_11C.unk04 != NULL) { lbl_1_bss_11C.unk04(obj, &lbl_1_bss_11C); } - if(obj->work[0]) { + if (obj->work[0]) { fn_1_6704(obj); } } @@ -513,7 +503,7 @@ void fn_1_A288(omObjData *object) CharModelEffectNpcInit(object->model[1], object->motion[2], 1, 9); } -void fn_1_A4A8(omObjData* arg0, StructBss16C* arg1) +void fn_1_A4A8(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -120, 0, 800 }; fn_1_1DFC(arg0, 1, 2, 15, 1); @@ -529,12 +519,12 @@ void fn_1_A58C(void) lbl_1_bss_F4.unk04 = NULL; lbl_1_bss_F4.unk00->data = &lbl_1_bss_F4; fn_1_A288(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_F4.unk04 != NULL) { + if (lbl_1_bss_F4.unk04 != NULL) { lbl_1_bss_F4.unk04(obj, &lbl_1_bss_F4); } - if(obj->work[0]) { + if (obj->work[0]) { fn_1_6704(obj); } } @@ -563,11 +553,11 @@ void fn_1_A848(omObjData *object) HuPrcChildCreate(fn_1_7DB0, 100, 8192, 0, HuPrcCurrentGet()); } -void fn_1_AB10(omObjData* arg0, StructBss16C* arg1) +void fn_1_AB10(omObjData *arg0, StructBss16C *arg1) { int i; fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 8, 15, 1); - for(i=0; i<30; i++) { + for (i = 0; i < 30; i++) { fn_1_BC8(); Hu3DData[lbl_1_bss_CC.unk00->model[1]].pos.x = fn_1_864(-120, -60, i, 30); } @@ -576,7 +566,7 @@ void fn_1_AB10(omObjData* arg0, StructBss16C* arg1) fn_1_2264(lbl_1_bss_CC.unk00, 1, 6, 15); fn_1_1DFC(lbl_1_bss_CC.unk00, 1, 7, 15, 1); fn_1_1DFC(lbl_1_bss_11C.unk00, 1, 10, 15, 1); - for(i=0; i<240; i++) { + for (i = 0; i < 240; i++) { fn_1_BC8(); Hu3DData[lbl_1_bss_CC.unk00->model[1]].pos.x = fn_1_864(-60, 540, i, 180); Hu3DData[lbl_1_bss_11C.unk00->model[1]].pos.x = fn_1_864(120, 840, i, 180); @@ -588,12 +578,12 @@ void fn_1_AB10(omObjData* arg0, StructBss16C* arg1) void fn_1_ADB0(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_CC.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_CC.unk00->work[0] = arg4; lbl_1_bss_CC.unk00->work[1] = arg1; - lbl_1_bss_CC.unk00->work[2] = arg2+1; + lbl_1_bss_CC.unk00->work[2] = arg2 + 1; } void fn_1_AE5C(void) @@ -603,12 +593,12 @@ void fn_1_AE5C(void) lbl_1_bss_CC.unk04 = NULL; lbl_1_bss_CC.unk00->data = &lbl_1_bss_CC; fn_1_A848(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_CC.unk04 != NULL) { + if (lbl_1_bss_CC.unk04 != NULL) { lbl_1_bss_CC.unk04(obj, &lbl_1_bss_CC); } - if(obj->work[0]) { + if (obj->work[0]) { fn_1_6704(obj); } } @@ -638,7 +628,7 @@ void fn_1_B24C(void) temp.unk20.z = 0; temp.unk38 = 1400; fn_1_42A0(work, &temp, work->unk40++, 60, 10); - if(0.0f != lbl_1_bss_194.unk100) { - work->unk08.y = 100+lbl_1_bss_194.unk100; + if (0.0f != lbl_1_bss_194.unk100) { + work->unk08.y = 100 + lbl_1_bss_194.unk100; } -} \ No newline at end of file +} diff --git a/src/REL/mstory2Dll/board_miss.c b/src/REL/mstory2Dll/board_miss.c index 45b05479..89c73938 100644 --- a/src/REL/mstory2Dll/board_miss.c +++ b/src/REL/mstory2Dll/board_miss.c @@ -10,13 +10,13 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" #include "game/printfunc.h" #include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "game/pad.h" -#include "game/objsub.h" -#include "game/board/main.h" + typedef struct { /* 0x000 */ s32 unk00; @@ -59,27 +59,19 @@ s32 lbl_1_data_698[7] = { DATADIR_W10, }; -s32 lbl_1_data_6B4[8] = { - DATADIR_MARIOMDL1, - DATADIR_LUIGIMDL1, - DATADIR_PEACHMDL1, - DATADIR_YOSHIMDL1, - DATADIR_WARIOMDL1, - DATADIR_DONKEYMDL1, - DATADIR_DAISYMDL1, - DATADIR_WALUIGIMDL1 -}; +s32 lbl_1_data_6B4[8] = { DATADIR_MARIOMDL1, DATADIR_LUIGIMDL1, DATADIR_PEACHMDL1, DATADIR_YOSHIMDL1, DATADIR_WARIOMDL1, DATADIR_DONKEYMDL1, + DATADIR_DAISYMDL1, DATADIR_WALUIGIMDL1 }; void fn_1_FDFC(void); void fn_1_10194(void); -void fn_1_106B0(omObjData* arg0, StructBss16C* arg1); +void fn_1_106B0(omObjData *arg0, StructBss16C *arg1); void fn_1_1094C(void); void fn_1_10DF4(int arg0, int arg1, int arg2, int arg3, int arg4); -void fn_1_10EA0(omObjData* arg0, StructBss16C* arg1); +void fn_1_10EA0(omObjData *arg0, StructBss16C *arg1); void fn_1_1112C(void); void fn_1_11418(int arg0); -void fn_1_11934(omObjData* arg0, StructBss16C* arg1); -void fn_1_11A98(omObjData* arg0, StructBss16C* arg1); +void fn_1_11934(omObjData *arg0, StructBss16C *arg1); +void fn_1_11A98(omObjData *arg0, StructBss16C *arg1); void fn_1_11BB0(void); void fn_1_11FD0(void); void fn_1_1205C(void); @@ -88,25 +80,25 @@ void fn_1_1218C(void); void fn_1_E570(void) { int statId = HuDataDirReadAsync(DATADIR_BOARD); - if(statId != -1) { - while(!HuDataGetAsyncStat(statId)) { + if (statId != -1) { + while (!HuDataGetAsyncStat(statId)) { HuPrcVSleep(); } } HuAR_MRAMtoARAM(DATADIR_BOARD); - while(HuARDMACheck()) { + while (HuARDMACheck()) { HuPrcVSleep(); } HuDataDirClose(DATADIR_BOARD); statId = HuDataDirReadAsync(lbl_1_data_698[GWSystem.board]); - if(statId != -1) { - while(!HuDataGetAsyncStat(statId)) { + if (statId != -1) { + while (!HuDataGetAsyncStat(statId)) { HuPrcVSleep(); } } lbl_1_bss_4E4 = TRUE; HuPrcEnd(); - while(1) { + while (1) { HuPrcVSleep(); } } @@ -119,22 +111,22 @@ void fn_1_E638(void) lbl_1_bss_4E8[0].unk10 = lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk10; lbl_1_bss_4E8[0].unk14 = lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk14; lbl_1_bss_4E8[0].unk08 = 0; - for(i=1; i<4; i++) { + for (i = 1; i < 4; i++) { lbl_1_bss_4E8[i].unk10 = -1; lbl_1_bss_4E8[i].unk14 = i; lbl_1_bss_4E8[i].unk08 = 1; } - for(i=1; i<4; i++) { + for (i = 1; i < 4; i++) { do { - lbl_1_bss_4E8[i].unk10 = rand8()%8; - for(j=0; j<4; j++) { - if(i != j && lbl_1_bss_4E8[j].unk10 != -1 && lbl_1_bss_4E8[i].unk10 == lbl_1_bss_4E8[j].unk10) { + lbl_1_bss_4E8[i].unk10 = rand8() % 8; + for (j = 0; j < 4; j++) { + if (i != j && lbl_1_bss_4E8[j].unk10 != -1 && lbl_1_bss_4E8[i].unk10 == lbl_1_bss_4E8[j].unk10) { break; } } - } while(j != 4); + } while (j != 4); } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { GWPlayerCfg[i].character = lbl_1_bss_4E8[i].unk10; GWPlayerCfg[i].pad_idx = lbl_1_bss_4E8[i].unk14; GWPlayerCfg[i].group = 0; @@ -148,15 +140,7 @@ void fn_1_E638(void) void fn_1_E8EC(void) { - int ovlTbl[7] = { - OVL_W01, - OVL_W02, - OVL_W03, - OVL_W04, - OVL_W05, - OVL_W06, - OVL_W10 - }; + int ovlTbl[7] = { OVL_W01, OVL_W02, OVL_W03, OVL_W04, OVL_W05, OVL_W06, OVL_W10 }; omOvlHisData *his; WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); while (WipeStatGet()) { @@ -168,7 +152,7 @@ void fn_1_E8EC(void) omOvlHisChg(0, OVL_MSTORY3, 0, his->stat); do { fn_1_BC8(); - } while(lbl_1_bss_4E4 != 1); + } while (lbl_1_bss_4E4 != 1); CharARAMOpen(GWPlayerCfg[0].character); CharARAMOpen(GWPlayerCfg[1].character); CharARAMOpen(GWPlayerCfg[2].character); @@ -176,12 +160,12 @@ void fn_1_E8EC(void) HuAudSeqAllFadeOut(1000); HuAudSStreamAllFadeOut(1000); omOvlCallEx(ovlTbl[GWSystem.board], 1, 0, 0); - while(1) { + while (1) { fn_1_BC8(); } } -void fn_1_EA2C(Process* arg0, s32 arg1) +void fn_1_EA2C(Process *arg0, s32 arg1) { int i; lbl_1_bss_4E0 = arg0; @@ -194,7 +178,7 @@ void fn_1_EA2C(Process* arg0, s32 arg1) HuPrcChildCreate(fn_1_10194, 100, 8192, 0, HuPrcCurrentGet()); HuPrcChildCreate(fn_1_1094C, 100, 8192, 0, HuPrcCurrentGet()); HuPrcChildCreate(fn_1_1112C, 100, 8192, 0, HuPrcCurrentGet()); - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { HuPrcChildCreate(fn_1_11BB0, 100, 8192, 0, HuPrcCurrentGet()); } HuPrcChildCreate(fn_1_FDFC, 100, 8192, 0, HuPrcCurrentGet()); @@ -202,11 +186,11 @@ void fn_1_EA2C(Process* arg0, s32 arg1) void fn_1_EB60(omObjData *object) { - if(object->work[2]) { + if (object->work[2]) { object->work[2]--; return; } - if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + if (object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { fn_1_1DFC(object, 1, object->work[1], 15, 1); object->work[0] = object->work[1] = object->work[2] = 0; } @@ -218,40 +202,46 @@ void fn_1_EBEC(void) int posY = 40; GXColor winColor = { 0, 0, 128, 128 }; int i; - while(1) { + while (1) { fn_1_BC8(); printWin(posX, posY, 220, 160, &winColor); - if(lbl_1_bss_660.unk04 == NULL) { + if (lbl_1_bss_660.unk04 == NULL) { print8(posX, posY, 1, "PROC_MAIN -> FALSE"); - } else { + } + else { print8(posX, posY, 1, "PROC_MAIN -> TRUE"); } - if(lbl_1_bss_638.unk04 == NULL) { - print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); - } else { - print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + if (lbl_1_bss_638.unk04 == NULL) { + print8(posX, posY + 10, 1, "PROC_MAP -> FALSE"); } - if(lbl_1_bss_610.unk04 == NULL) { - print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); - } else { - print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + else { + print8(posX, posY + 10, 1, "PROC_MAP -> TRUE"); } - if(lbl_1_bss_5E8.unk04 == NULL) { - print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); - } else { - print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + if (lbl_1_bss_610.unk04 == NULL) { + print8(posX, posY + 20, 1, "PROC_KOOPA -> FALSE"); } - for(i=0; i<4; i++) { - if(lbl_1_bss_548[i].unk04 == NULL) { - print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> FALSE", i); - } else { - print8(posX, posY+40+(i*10), 1, "PROC_PLAYER%d -> TRUE", i); + else { + print8(posX, posY + 20, 1, "PROC_KOOPA -> TRUE"); + } + if (lbl_1_bss_5E8.unk04 == NULL) { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> FALSE"); + } + else { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> TRUE"); + } + for (i = 0; i < 4; i++) { + if (lbl_1_bss_548[i].unk04 == NULL) { + print8(posX, posY + 40 + (i * 10), 1, "PROC_PLAYER%d -> FALSE", i); + } + else { + print8(posX, posY + 40 + (i * 10), 1, "PROC_PLAYER%d -> TRUE", i); } } - print8(posX, posY+90, 1, "P:%d W:%d", lbl_1_bss_688.unk00, lbl_1_bss_688.unk0C); - print8(posX, posY+110, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); - for(i=0; i<4; i++) { - print8(posX, posY+120+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_688.unk30[i].unk00, lbl_1_bss_688.unk30[i].unk04, lbl_1_bss_688.unk30[i].unk08, lbl_1_bss_688.unk30[i].unk0C, lbl_1_bss_688.unk30[i].unk14, lbl_1_bss_688.unk30[i].unk10); + print8(posX, posY + 90, 1, "P:%d W:%d", lbl_1_bss_688.unk00, lbl_1_bss_688.unk0C); + print8(posX, posY + 110, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(posX, posY + 120 + (i * 10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_688.unk30[i].unk00, lbl_1_bss_688.unk30[i].unk04, + lbl_1_bss_688.unk30[i].unk08, lbl_1_bss_688.unk30[i].unk0C, lbl_1_bss_688.unk30[i].unk14, lbl_1_bss_688.unk30[i].unk10); } } } @@ -269,46 +259,46 @@ void fn_1_EFCC(void) void fn_1_F028(void) { int i; - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { lbl_1_bss_548[i].unk04 = (void *)fn_1_11934; } do { fn_1_BC8(); - for(i=0; i<4; i++) { - if(lbl_1_bss_548[i].unk04 != NULL) { + for (i = 0; i < 4; i++) { + if (lbl_1_bss_548[i].unk04 != NULL) { break; } } - } while(i != 4); + } while (i != 4); lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 = (void *)fn_1_11A98; fn_1_3854(&lbl_1_bss_24); fn_1_2750(fn_1_1205C); do { fn_1_BC8(); - } while(lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 != NULL); + } while (lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 != NULL); do { fn_1_BC8(); - } while(lbl_1_bss_5E8.unk04 != NULL); + } while (lbl_1_bss_5E8.unk04 != NULL); fn_1_BE8(30); - if(0) { - //Dummy code to stop this function from inlining + if (0) { + // Dummy code to stop this function from inlining do { fn_1_BC8(); - for(i=0; i<4; i++) { - if(lbl_1_bss_548[i].unk04 != NULL) { + for (i = 0; i < 4; i++) { + if (lbl_1_bss_548[i].unk04 != NULL) { break; } } - } while(i != 4); + } while (i != 4); lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 = (void *)fn_1_11A98; fn_1_3854(&lbl_1_bss_24); fn_1_2750(fn_1_1205C); do { fn_1_BC8(); - } while(lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 != NULL); + } while (lbl_1_bss_548[lbl_1_bss_688.unk00].unk04 != NULL); do { fn_1_BC8(); - } while(lbl_1_bss_5E8.unk04 != NULL); + } while (lbl_1_bss_5E8.unk04 != NULL); fn_1_BE8(30); } } @@ -363,11 +353,11 @@ void fn_1_F3D0(void) HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); do { fn_1_BC8(); - } while(lbl_1_bss_5E8.unk04 != NULL); + } while (lbl_1_bss_5E8.unk04 != NULL); lbl_1_bss_610.unk04 = (void *)fn_1_106B0; do { fn_1_BC8(); - } while(lbl_1_bss_610.unk04 != NULL); + } while (lbl_1_bss_610.unk04 != NULL); fn_1_7384(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->model[1], lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk10, 1, 20, 1); lbl_1_bss_78[1] = HuAudSeqPlay(6); fn_1_BE8(30); @@ -404,10 +394,7 @@ void fn_1_F3D0(void) fn_1_BE8(150); } -void fn_1_F838(void) -{ - -} +void fn_1_F838(void) { } void fn_1_F83C(void) { @@ -422,7 +409,7 @@ void fn_1_F83C(void) omOvlReturnEx(1, 1); } -void fn_1_F8B4(omObjData* arg0, StructBss16C* arg1) +void fn_1_F8B4(omObjData *arg0, StructBss16C *arg1) { int mode = 0; int i; @@ -430,36 +417,37 @@ void fn_1_F8B4(omObjData* arg0, StructBss16C* arg1) fn_1_F028(); fn_1_F150(); lbl_1_bss_688.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_688.unk0C); - while(1) { + while (1) { fn_1_BC8(); - if(fn_1_F22C()) { + if (fn_1_F22C()) { mode = 0; break; - } else if(fn_1_F2FC()) { + } + else if (fn_1_F2FC()) { mode = 1; break; } } - + fn_1_1A94(lbl_1_bss_688.unk04); - for(i=0; i<4; i++) { - if(lbl_1_bss_688.unk30[i].unk00 != lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk00) { + for (i = 0; i < 4; i++) { + if (lbl_1_bss_688.unk30[i].unk00 != lbl_1_bss_688.unk30[lbl_1_bss_688.unk00].unk00) { Hu3DModelAttrSet(lbl_1_bss_548[i].unk00->model[1], 1); } Hu3DModelAttrSet(lbl_1_bss_548[i].unk00->model[2], 1); } - switch(mode) { + switch (mode) { case 0: fn_1_F3D0(); break; case 1: break; } - switch(mode) { + switch (mode) { case 0: fn_1_E8EC(); break; - + case 1: fn_1_F83C(); break; @@ -473,9 +461,9 @@ void fn_1_FDFC(void) lbl_1_bss_660.unk00 = obj = omAddObjEx(lbl_1_bss_4E0, 256, 16, 16, -1, NULL); lbl_1_bss_660.unk04 = (void *)fn_1_F8B4; lbl_1_bss_660.unk00->data = &lbl_1_bss_660; - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_660.unk04 != NULL) { + if (lbl_1_bss_660.unk04 != NULL) { lbl_1_bss_660.unk04(obj, &lbl_1_bss_660); } } @@ -504,10 +492,10 @@ void fn_1_FEB0(omObjData *object) fn_1_1DFC(object, 6, 6, 0, 2); } -void fn_1_100D8(omObjData* arg0, StructBss16C* arg1) +void fn_1_100D8(omObjData *arg0, StructBss16C *arg1) { Hu3DData[arg0->model[5]].pos.y = fn_1_B08(80, 90, arg1->unk08++, 360); - if(arg1->unk08 >= 360) { + if (arg1->unk08 >= 360) { arg1->unk08 = 0; } } @@ -519,9 +507,9 @@ void fn_1_10194(void) lbl_1_bss_638.unk04 = (void *)fn_1_100D8; lbl_1_bss_638.unk00->data = &lbl_1_bss_638; fn_1_FEB0(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_638.unk04 != NULL) { + if (lbl_1_bss_638.unk04 != NULL) { lbl_1_bss_638.unk04(obj, &lbl_1_bss_638); } } @@ -545,38 +533,38 @@ void fn_1_10448(omObjData *object) void fn_1_10604(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_610.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_610.unk00->work[0] = arg4; lbl_1_bss_610.unk00->work[1] = arg1; - lbl_1_bss_610.unk00->work[2] = arg2+1; + lbl_1_bss_610.unk00->work[2] = arg2 + 1; } -void fn_1_106B0(omObjData* arg0, StructBss16C* arg1) +void fn_1_106B0(omObjData *arg0, StructBss16C *arg1) { int i = 0; float speed = 50; - + HuAudFXPlay(153); fn_1_10604(2, 1, 0, 0, 1); fn_1_BE8(5); Hu3DMotionTimeSet(lbl_1_bss_610.unk00->model[1], 100); fn_1_BC8(); Hu3DModelAttrReset(arg0->model[1], 1); - while(1) { + while (1) { fn_1_BC8(); - if(Hu3DMotionTimeGet(lbl_1_bss_610.unk00->model[1]) >= 137) { + if (Hu3DMotionTimeGet(lbl_1_bss_610.unk00->model[1]) >= 137) { break; } } HuAudFXPlay(156); omVibrate(lbl_1_bss_688.unk0C, 45, 12, 0); fn_1_67D8(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00, 6, 1, 5, 0); - for(i=0; i<60; i++) { + for (i = 0; i < 60; i++) { float posY; fn_1_BC8(); - posY = fn_1_B08(0, speed, i%15, 15); + posY = fn_1_B08(0, speed, i % 15, 15); speed = fn_1_88C(speed, 0, 30); lbl_1_bss_688.unk100 = fn_1_88C(lbl_1_bss_688.unk100, posY, 5); } @@ -591,15 +579,16 @@ void fn_1_1094C(void) lbl_1_bss_610.unk04 = NULL; lbl_1_bss_610.unk00->data = &lbl_1_bss_638; fn_1_10448(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_610.unk04 != NULL) { + if (lbl_1_bss_610.unk04 != NULL) { lbl_1_bss_610.unk04(obj, &lbl_1_bss_610); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -626,15 +615,15 @@ void fn_1_10C00(omObjData *object) void fn_1_10DF4(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_5E8.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_5E8.unk00->work[0] = arg4; lbl_1_bss_5E8.unk00->work[1] = arg1; - lbl_1_bss_5E8.unk00->work[2] = arg2+1; + lbl_1_bss_5E8.unk00->work[2] = arg2 + 1; } -void fn_1_10EA0(omObjData* arg0, StructBss16C* arg1) +void fn_1_10EA0(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -600, 0, 800 }; fn_1_1DFC(arg0, 1, 2, 15, 1); @@ -643,17 +632,17 @@ void fn_1_10EA0(omObjData* arg0, StructBss16C* arg1) arg1->unk04 = NULL; } -void fn_1_10F84(omObjData* arg0, StructBss16C* arg1) +void fn_1_10F84(omObjData *arg0, StructBss16C *arg1) { int i; - for(i=0; i<15; i++) { + for (i = 0; i < 15; i++) { fn_1_BC8(); Hu3DData[arg0->model[1]].rot.y = fn_1_864(0, 135, i, 15); } arg1->unk04 = NULL; } -void fn_1_11048(omObjData* arg0, StructBss16C* arg1) +void fn_1_11048(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -120, 0, 800 }; fn_1_1DFC(arg0, 1, 2, 15, 1); @@ -669,15 +658,16 @@ void fn_1_1112C(void) lbl_1_bss_5E8.unk04 = NULL; lbl_1_bss_5E8.unk00->data = &lbl_1_bss_5E8; fn_1_10C00(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_5E8.unk04 != NULL) { + if (lbl_1_bss_5E8.unk04 != NULL) { lbl_1_bss_5E8.unk04(obj, &lbl_1_bss_5E8); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -690,20 +680,20 @@ void fn_1_11418(int arg0) int i; int order[4]; order[0] = 0; - for(i=1; i<4; i++) { - order[i] = order[i-1]+1; - if(order[i] >= 4) { + for (i = 1; i < 4; i++) { + order[i] = order[i - 1] + 1; + if (order[i] >= 4) { order[i] = 0; } - if(arg0 == order[i]) { + if (arg0 == order[i]) { lbl_1_bss_688.unk00 = i; } } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { fn_1_357C(&lbl_1_bss_688.unk30[i], order[i]); } - for(i=0; i<4; i++) { - lbl_1_bss_688.unk30[i].unk18 = GWPlayer[order[i]].rank+1; + for (i = 0; i < 4; i++) { + lbl_1_bss_688.unk30[i].unk18 = GWPlayer[order[i]].rank + 1; } } @@ -719,21 +709,23 @@ void fn_1_1154C(omObjData *object, int player) int playerNo = player; int charNo = lbl_1_bss_688.unk30[playerNo].unk10; object->model[1] = CharModelCreate(charNo, 4); - object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); - object->motion[2] = CharModelMotionCreate(charNo, 0x5F0003); - object->motion[3] = CharModelMotionCreate(charNo, 0x5F0005); - object->motion[4] = CharModelMotionCreate(charNo, 0x5F001A); - object->motion[5] = CharModelMotionCreate(charNo, 0x5F006D); - object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660018+charNo); + object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03)); + object->motion[3] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05)); + object->motion[4] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x1A)); + object->motion[5] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x6D)); + object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660018 + charNo); CharModelMotionDataClose(charNo); - Hu3DModelPosSet(object->model[1], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18-1].y+90, lbl_1_data_81C[playerNo].z); + Hu3DModelPosSet( + object->model[1], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18 - 1].y + 90, lbl_1_data_81C[playerNo].z); Hu3DModelRotSet(object->model[1], 0, 0, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); Hu3DModelShadowSet(object->model[1]); fn_1_1DFC(object, 1, 1, 0, 1); object->model[2] = Hu3DModelCreateFile(0x660056); - Hu3DModelPosSet(object->model[2], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18-1].y, lbl_1_data_81C[playerNo].z); - if(lbl_1_bss_688.unk30[playerNo].unk18 == 4) { + Hu3DModelPosSet( + object->model[2], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18 - 1].y, lbl_1_data_81C[playerNo].z); + if (lbl_1_bss_688.unk30[playerNo].unk18 == 4) { Hu3DModelAttrSet(object->model[2], 1); } Hu3DModelScaleSet(object->model[2], 1.5, 1, 1.5); @@ -743,28 +735,28 @@ void fn_1_1154C(omObjData *object, int player) void fn_1_11838(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_548[lbl_1_bss_688.unk00].unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->work[0] = arg4; lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->work[1] = arg1; - lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->work[2] = arg2+1; + lbl_1_bss_548[lbl_1_bss_688.unk00].unk00->work[2] = arg2 + 1; } -void fn_1_11934(omObjData* arg0, StructBss16C* arg1) +void fn_1_11934(omObjData *arg0, StructBss16C *arg1) { float posY = Hu3DData[arg0->model[1]].pos.y; int i; - for(i=0; i<60; i++) { + for (i = 0; i < 60; i++) { fn_1_BC8(); Hu3DData[arg0->model[1]].pos.y = fn_1_984(posY, 0, i, 60); - Hu3DData[arg0->model[2]].pos.y = fn_1_984(posY-90, -90, i, 60); + Hu3DData[arg0->model[2]].pos.y = fn_1_984(posY - 90, -90, i, 60); } Hu3DModelAttrSet(arg0->model[2], 1); arg1->unk04 = NULL; } -void fn_1_11A98(omObjData* arg0, StructBss16C* arg1) +void fn_1_11A98(omObjData *arg0, StructBss16C *arg1) { Vec pos = { 120, 0, 800 }; lbl_1_bss_5E8.unk04 = (void *)fn_1_11048; @@ -783,15 +775,16 @@ void fn_1_11BB0(void) lbl_1_bss_548[playerNo].unk04 = NULL; lbl_1_bss_548[playerNo].unk00->data = &lbl_1_bss_548[0]; fn_1_1154C(obj, playerNo); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_548[playerNo].unk04 != NULL) { + if (lbl_1_bss_548[playerNo].unk04 != NULL) { lbl_1_bss_548[playerNo].unk04(obj, &lbl_1_bss_548[playerNo]); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -823,8 +816,8 @@ void fn_1_1205C(void) temp.unk20.z = 0; temp.unk38 = 1750; fn_1_4FEC(work, &temp, work->unk40++, 60, 30); - if(0.0f != lbl_1_bss_688.unk100) { - work->unk08.y = lbl_1_bss_688.unk100+125; + if (0.0f != lbl_1_bss_688.unk100) { + work->unk08.y = lbl_1_bss_688.unk100 + 125; } } @@ -832,7 +825,7 @@ void fn_1_1218C(void) { StructBss24 *work = &lbl_1_bss_24; StructBss24 temp; - if(work->unk40 == 50) { + if (work->unk40 == 50) { fn_1_1DFC(lbl_1_bss_638.unk00, 5, 5, 0, 0); fn_1_1DFC(lbl_1_bss_638.unk00, 6, 6, 0, 0); HuAudFXPlay(161); @@ -845,11 +838,11 @@ void fn_1_1218C(void) temp.unk20.z = 0; temp.unk38 = 125; fn_1_4FEC(work, &temp, work->unk40, 180, 10); - if(work->unk40++ >= 90) { - if(work->unk40 == 91) { + if (work->unk40++ >= 90) { + if (work->unk40 == 91) { lbl_1_bss_88[0] = HuAudFXPlay(32); } - work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40-90, 90); - Hu3DData[lbl_1_bss_638.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40-90, 90); + work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40 - 90, 90); + Hu3DData[lbl_1_bss_638.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40 - 90, 90); } -} \ No newline at end of file +} diff --git a/src/REL/mstory2Dll/ending.c b/src/REL/mstory2Dll/ending.c index c0c09595..5e1a9b17 100644 --- a/src/REL/mstory2Dll/ending.c +++ b/src/REL/mstory2Dll/ending.c @@ -3,19 +3,20 @@ #include "game/board/main.h" #include "game/chrman.h" #include "game/data.h" +#include "game/esprite.h" #include "game/gamework.h" #include "game/gamework_data.h" #include "game/hsfanim.h" #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" #include "game/printfunc.h" #include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "game/pad.h" -#include "game/objsub.h" -#include "game/esprite.h" + typedef struct { /* 0x000 */ s32 unk00; @@ -46,11 +47,11 @@ s32 lbl_1_data_F14 = 127; void fn_1_19F14(void); void fn_1_1A160(void); -void fn_1_1A538(omObjData* arg0, StructBss16C* arg1); +void fn_1_1A538(omObjData *arg0, StructBss16C *arg1); void fn_1_1A578(void); -void fn_1_1A9D0(omObjData* arg0, StructBss16C* arg1); +void fn_1_1A9D0(omObjData *arg0, StructBss16C *arg1); void fn_1_1AAB4(void); -void fn_1_1AFD4(omObjData* arg0, StructBss16C* arg1); +void fn_1_1AFD4(omObjData *arg0, StructBss16C *arg1); void fn_1_1B0E4(void); void fn_1_1AD3C(int arg0); void fn_1_1B318(void); @@ -60,44 +61,44 @@ void fn_1_1B430(void); void fn_1_186D0(void) { int i; - while(1) { + while (1) { HuPrcVSleep(); - if(lbl_1_data_F08 != -1 && lbl_1_data_F0C[0] != -1 && lbl_1_data_F0C[1] != -1 && lbl_1_data_F0C[0] == Hu3DMotionIDGet(lbl_1_data_F08)) { - for(i=0; i<2; i++) { - if(lbl_1_data_EF8[1][i] != -1) { - if(Hu3DMotionTimeGet(lbl_1_data_F08) >= lbl_1_data_EF8[0][i]) { + if (lbl_1_data_F08 != -1 && lbl_1_data_F0C[0] != -1 && lbl_1_data_F0C[1] != -1 && lbl_1_data_F0C[0] == Hu3DMotionIDGet(lbl_1_data_F08)) { + for (i = 0; i < 2; i++) { + if (lbl_1_data_EF8[1][i] != -1) { + if (Hu3DMotionTimeGet(lbl_1_data_F08) >= lbl_1_data_EF8[0][i]) { OSReport("KE-System TIME:%d\n", lbl_1_data_EF8[0][i]); HuAudFXPlayVol(81, lbl_1_data_F14); lbl_1_data_EF8[1][i] = -1; } } } - if(Hu3DMotionTimeGet(lbl_1_data_F08) <= 10) { - for(i=0; i<2; i++) { + if (Hu3DMotionTimeGet(lbl_1_data_F08) <= 10) { + for (i = 0; i < 2; i++) { lbl_1_data_EF8[1][i] = 1; } } } - if(lbl_1_bss_B3C == 1) { + if (lbl_1_bss_B3C == 1) { lbl_1_data_F14--; - if(lbl_1_data_F14 <= 0) { + if (lbl_1_data_F14 <= 0) { lbl_1_data_F14 = 0; } } - if(lbl_1_bss_B3C == 2) { + if (lbl_1_bss_B3C == 2) { break; } } HuPrcEnd(); - while(1) { + while (1) { HuPrcVSleep(); } } -void fn_1_188F0(Process* arg0, s32 arg1) +void fn_1_188F0(Process *arg0, s32 arg1) { lbl_1_bss_B38 = arg0; - if(GWSystem.diff_story == 2) { + if (GWSystem.diff_story == 2) { GWGameStat.field10E_bit4 = TRUE; } lbl_1_bss_C0C.unk0C = arg1; @@ -115,11 +116,11 @@ void fn_1_188F0(Process* arg0, s32 arg1) void fn_1_18A34(omObjData *object) { - if(object->work[2]) { + if (object->work[2]) { object->work[2]--; return; } - if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + if (object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { fn_1_1DFC(object, 1, object->work[1], 15, 1); object->work[0] = object->work[1] = object->work[2] = 0; } @@ -131,40 +132,46 @@ void fn_1_18AC0(void) int posY = 40; GXColor winColor = { 0, 0, 128, 128 }; int i; - while(1) { + while (1) { fn_1_BC8(); fontcolor = FONT_COLOR_WHITE; printWin(posX, posY, 220, 130, &winColor); - if(lbl_1_bss_BE4.unk04 == NULL) { + if (lbl_1_bss_BE4.unk04 == NULL) { print8(posX, posY, 1, "PROC_MAIN -> FALSE"); - } else { + } + else { print8(posX, posY, 1, "PROC_MAIN -> TRUE"); } - if(lbl_1_bss_BBC.unk04 == NULL) { - print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); - } else { - print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + if (lbl_1_bss_BBC.unk04 == NULL) { + print8(posX, posY + 10, 1, "PROC_MAP -> FALSE"); } - if(lbl_1_bss_B94.unk04 == NULL) { - print8(posX, posY+20, 1, "PROC_PLAYER -> FALSE"); - } else { - print8(posX, posY+20, 1, "PROC_PLAYER -> TRUE"); + else { + print8(posX, posY + 10, 1, "PROC_MAP -> TRUE"); } - if(lbl_1_bss_B6C.unk04 == NULL) { - print8(posX, posY+30, 1, "PROC_SUB -> FALSE"); - } else { - print8(posX, posY+30, 1, "PROC_SUB -> TRUE"); + if (lbl_1_bss_B94.unk04 == NULL) { + print8(posX, posY + 20, 1, "PROC_PLAYER -> FALSE"); } - if(lbl_1_bss_B44.unk04 == NULL) { - print8(posX, posY+40, 1, "PROC_KOOPA -> FALSE"); - } else { - print8(posX, posY+40, 1, "PROC_KOOPA -> TRUE"); + else { + print8(posX, posY + 20, 1, "PROC_PLAYER -> TRUE"); } - - print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_C0C.unk00, lbl_1_bss_C0C.unk0C); - print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); - for(i=0; i<4; i++) { - print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_C0C.unk30[i].unk00, lbl_1_bss_C0C.unk30[i].unk04, lbl_1_bss_C0C.unk30[i].unk08, lbl_1_bss_C0C.unk30[i].unk0C, lbl_1_bss_C0C.unk30[i].unk14, lbl_1_bss_C0C.unk30[i].unk10); + if (lbl_1_bss_B6C.unk04 == NULL) { + print8(posX, posY + 30, 1, "PROC_SUB -> FALSE"); + } + else { + print8(posX, posY + 30, 1, "PROC_SUB -> TRUE"); + } + if (lbl_1_bss_B44.unk04 == NULL) { + print8(posX, posY + 40, 1, "PROC_KOOPA -> FALSE"); + } + else { + print8(posX, posY + 40, 1, "PROC_KOOPA -> TRUE"); + } + + print8(posX, posY + 60, 1, "P:%d W:%d", lbl_1_bss_C0C.unk00, lbl_1_bss_C0C.unk0C); + print8(posX, posY + 80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(posX, posY + 90 + (i * 10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_C0C.unk30[i].unk00, lbl_1_bss_C0C.unk30[i].unk04, + lbl_1_bss_C0C.unk30[i].unk08, lbl_1_bss_C0C.unk30[i].unk0C, lbl_1_bss_C0C.unk30[i].unk14, lbl_1_bss_C0C.unk30[i].unk10); } } } @@ -211,7 +218,7 @@ void fn_1_18EC4(void) do { fn_1_BC8(); } while (WipeStatGet()); - if(0) { + if (0) { fn_1_BC8(); } } @@ -226,15 +233,15 @@ void fn_1_19138(void) fn_1_2750(fn_1_1B430); fn_1_BE8(30); fn_1_1DFC(lbl_1_bss_BBC.unk00, 2, 2, 0, 0); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_B94.unk04 == NULL) { + if (lbl_1_bss_B94.unk04 == NULL) { break; } } - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_B6C.unk04 == NULL) { + if (lbl_1_bss_B6C.unk04 == NULL) { break; } } @@ -251,16 +258,8 @@ void fn_1_19138(void) fn_1_BE8(60); } -char *lbl_1_data_10E4[8] = { - "movie/endmov_ma0.thp", - "movie/endmov_lu0.thp", - "movie/endmov_pe0.thp", - "movie/endmov_yo0.thp", - "movie/endmov_wa0.thp", - "movie/endmov_do0.thp", - "movie/endmov_da0.thp", - "movie/endmov_wl0.thp" -}; +char *lbl_1_data_10E4[8] = { "movie/endmov_ma0.thp", "movie/endmov_lu0.thp", "movie/endmov_pe0.thp", "movie/endmov_yo0.thp", "movie/endmov_wa0.thp", + "movie/endmov_do0.thp", "movie/endmov_da0.thp", "movie/endmov_wl0.thp" }; void fn_1_19334(void) { @@ -303,7 +302,7 @@ void fn_1_19334(void) lbl_1_bss_B94.unk04 = NULL; lbl_1_bss_B44.unk04 = NULL; lbl_1_bss_B6C.unk04 = NULL; - + CharModelKill(-1); Hu3DAllKill(); fn_1_BE8(60); @@ -320,7 +319,7 @@ void fn_1_19334(void) sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(0x660061, 0x10000000)), 950, 0); HuSprGrpMemberSet(gid, 2, sprid); HuSprBankSet(gid, 2, lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10); - if(GWLanguageGet() == 0 && lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10 == 5) { + if (GWLanguageGet() == 0 && lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10 == 5) { HuSprBankSet(gid, 2, 8); } HuSprPosSet(gid, 2, 288, 254); @@ -328,28 +327,28 @@ void fn_1_19334(void) HuPrcSleep(5); WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); - while(WipeStatGet()) { + while (WipeStatGet()) { HuPrcVSleep(); } - while(!HuTHPEndCheck()) { - if(time >= 3300) { + while (!HuTHPEndCheck()) { + if (time >= 3300) { HuSprAttrReset(gid, 1, HUSPR_ATTR_DISPOFF); HuSprAttrReset(gid, 2, HUSPR_ATTR_DISPOFF); - } else { + } + else { time++; } HuPrcVSleep(); } WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); - while(WipeStatGet()) { + while (WipeStatGet()) { HuPrcVSleep(); } HuTHPClose(); HuPrcVSleep(); HuSprGrpKill(gid); } - } void fn_1_199A0(void) @@ -423,13 +422,13 @@ void fn_1_19BE8(void) HuAudFadeOut(1); his = omOvlHisGet(0); omOvlHisChg(0, OVL_MSTORY2, 20, 1); - omOvlCallEx(OVL_STAFF, 1, 0, 0); - while(1) { + omOvlCallEx(OVL_STAFF, 1, 0, 0); + while (1) { fn_1_BC8(); } } -void fn_1_19C6C(omObjData* arg0, StructBss16C* arg1) +void fn_1_19C6C(omObjData *arg0, StructBss16C *arg1) { int temp = 0; fn_1_18E7C(); @@ -446,9 +445,9 @@ void fn_1_19F14(void) lbl_1_bss_BE4.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); lbl_1_bss_BE4.unk04 = (void *)fn_1_19C6C; lbl_1_bss_BE4.unk00->data = &lbl_1_bss_BE4; - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_BE4.unk04 != NULL) { + if (lbl_1_bss_BE4.unk04 != NULL) { lbl_1_bss_BE4.unk04(obj, &lbl_1_bss_BE4); } } @@ -477,9 +476,9 @@ void fn_1_1A160(void) lbl_1_bss_BBC.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); lbl_1_bss_BBC.unk04 = NULL; fn_1_19FC8(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_BBC.unk04 != NULL) { + if (lbl_1_bss_BBC.unk04 != NULL) { lbl_1_bss_BBC.unk04(obj, &lbl_1_bss_BBC); } } @@ -501,7 +500,7 @@ void fn_1_1A368(omObjData *object) HuPrcChildCreate(fn_1_186D0, 100, 8192, 0, HuPrcCurrentGet()); } -void fn_1_1A538(omObjData* arg0, StructBss16C* arg1) +void fn_1_1A538(omObjData *arg0, StructBss16C *arg1) { Hu3DData[lbl_1_bss_B44.unk00->model[1]].pos.z -= 2.5f; } @@ -512,12 +511,12 @@ void fn_1_1A578(void) lbl_1_bss_B44.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); lbl_1_bss_B44.unk04 = NULL; fn_1_1A368(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_B44.unk04 != NULL) { + if (lbl_1_bss_B44.unk04 != NULL) { lbl_1_bss_B44.unk04(obj, &lbl_1_bss_B44); } - if(obj->work[0]) { + if (obj->work[0]) { fn_1_6704(obj); } } @@ -540,8 +539,7 @@ void fn_1_1A7CC(omObjData *object) CharModelEffectNpcInit(object->model[1], object->motion[2], 1, 9); } - -void fn_1_1A9D0(omObjData* arg0, StructBss16C* arg1) +void fn_1_1A9D0(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -120, 0, 800 }; fn_1_1DFC(arg0, 1, 2, 15, 1); @@ -556,12 +554,12 @@ void fn_1_1AAB4(void) lbl_1_bss_B6C.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); lbl_1_bss_B6C.unk04 = NULL; fn_1_1A7CC(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_B6C.unk04 != NULL) { + if (lbl_1_bss_B6C.unk04 != NULL) { lbl_1_bss_B6C.unk04(obj, &lbl_1_bss_B6C); } - if(obj->work[0]) { + if (obj->work[0]) { fn_1_6704(obj); } } @@ -572,16 +570,16 @@ void fn_1_1AD3C(int arg0) int i; int order[4]; order[0] = 0; - for(i=1; i<4; i++) { - order[i] = order[i-1]+1; - if(order[i] >= 4) { + for (i = 1; i < 4; i++) { + order[i] = order[i - 1] + 1; + if (order[i] >= 4) { order[i] = 0; } - if(arg0 == order[i]) { + if (arg0 == order[i]) { lbl_1_bss_C0C.unk00 = i; } } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { fn_1_357C(&lbl_1_bss_C0C.unk30[i], order[i]); } } @@ -590,10 +588,10 @@ void fn_1_1AE20(omObjData *object) { int charNo = lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10; object->model[1] = CharModelCreate(charNo, 1); - object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); - object->motion[2] = CharModelMotionCreate(charNo, 0x5F0035); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660010+charNo); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660008+charNo); + object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x35)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660010 + charNo); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660008 + charNo); CharModelMotionDataClose(charNo); Hu3DModelPosSet(object->model[1], 120, 0, 800); Hu3DModelRotSet(object->model[1], 0, -135, 0); @@ -603,13 +601,13 @@ void fn_1_1AE20(omObjData *object) fn_1_1DFC(object, 1, 1, 0, 1); } -void fn_1_1AFD4(omObjData* arg0, StructBss16C* arg1) +void fn_1_1AFD4(omObjData *arg0, StructBss16C *arg1) { int i; fn_1_1DFC(arg0, 1, 2, 0, 0); fn_1_BC8(); Hu3DMotionTimeSet(arg0->model[1], 60); - for(i=0; i<60; i++) { + for (i = 0; i < 60; i++) { fn_1_BC8(); Hu3DData[arg0->model[1]].rot.y = fn_1_864(-135, -90, i, 60); } @@ -623,12 +621,12 @@ void fn_1_1B0E4(void) lbl_1_bss_B94.unk00 = obj = omAddObjEx(lbl_1_bss_B38, 256, 16, 16, -1, NULL); lbl_1_bss_B94.unk04 = NULL; fn_1_1AE20(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_B94.unk04 != NULL) { + if (lbl_1_bss_B94.unk04 != NULL) { lbl_1_bss_B94.unk04(obj, &lbl_1_bss_B94); } - if(obj->work[0]) { + if (obj->work[0]) { fn_1_6704(obj); } } @@ -670,7 +668,7 @@ void fn_1_1B430(void) temp.unk20.z = 0; temp.unk38 = 1400; fn_1_42A0(work, &temp, work->unk40++, 60, 10); - if(0.0f != lbl_1_bss_C0C.unk100) { - work->unk08.y = 125+lbl_1_bss_C0C.unk100; + if (0.0f != lbl_1_bss_C0C.unk100) { + work->unk08.y = 125 + lbl_1_bss_C0C.unk100; } -} \ No newline at end of file +} diff --git a/src/REL/mstory2Dll/mg_clear.c b/src/REL/mstory2Dll/mg_clear.c index ddeded43..524869fe 100644 --- a/src/REL/mstory2Dll/mg_clear.c +++ b/src/REL/mstory2Dll/mg_clear.c @@ -9,70 +9,71 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" #include "game/printfunc.h" #include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "game/pad.h" -#include "game/objsub.h" + typedef struct struct_data850 { - s32 unk0; - s32 unk4; - s32 unk8; - s32 unkC; - s32 unk10; + s32 unk0; + s32 unk4; + s32 unk8; + s32 unkC; + s32 unk10; } StructData850; StructData850 lbl_1_data_850[] = { - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x00), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x01), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x02), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x03), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x04), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x05), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x06), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x07), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x08), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x09), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0A), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0B), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0C), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0D), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0E), 1, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0F), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x10), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x11), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x12), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x13), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x14), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x15), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x16), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x17), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x18), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x19), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1A), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1B), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1C), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1D), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1E), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1F), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x20), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x21), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x22), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x23), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x24), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x25), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x26), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x27), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x28), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x29), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2A), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2B), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2C), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2D), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2E), 0, 0, 0, 1 }, - { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2F), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x00), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x01), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x02), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x03), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x04), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x05), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x06), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x07), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x08), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x09), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0E), 1, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0F), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x10), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x11), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x12), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x13), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x14), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x15), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x16), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x17), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x18), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x19), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1E), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1F), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x20), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x21), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x22), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x23), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x24), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x25), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x26), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x27), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x28), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x29), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2A), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2B), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2C), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2D), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2E), 0, 0, 0, 1 }, + { DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2F), 0, 0, 0, 1 }, }; s32 lbl_1_data_C10[2][2] = { 20, 70, 1, 1 }; @@ -101,15 +102,15 @@ BOOL lbl_1_bss_794; Process *lbl_1_bss_790; void fn_1_13BB8(void); -void fn_1_13FB4(omObjData* arg0, StructBss16C* arg1); -void fn_1_140A0(omObjData* arg0, StructBss16C* arg1); +void fn_1_13FB4(omObjData *arg0, StructBss16C *arg1); +void fn_1_140A0(omObjData *arg0, StructBss16C *arg1); void fn_1_1449C(void); void fn_1_14A9C(int arg0, int arg1, int arg2, int arg3, int arg4); -void fn_1_14B48(omObjData* arg0, StructBss16C* arg1); +void fn_1_14B48(omObjData *arg0, StructBss16C *arg1); void fn_1_14C40(void); void fn_1_15134(int arg0, int arg1, int arg2, int arg3, int arg4); -void fn_1_151E0(omObjData* arg0, StructBss16C* arg1); -void fn_1_152C4(omObjData* arg0, StructBss16C* arg1); +void fn_1_151E0(omObjData *arg0, StructBss16C *arg1); +void fn_1_152C4(omObjData *arg0, StructBss16C *arg1); void fn_1_153A8(void); void fn_1_15668(int arg0); void fn_1_159F0(void); @@ -121,28 +122,28 @@ void fn_1_15F70(void); void fn_1_123C8(void) { int i; - while(1) { + while (1) { do { HuPrcVSleep(); - } while(lbl_1_data_C20 == -1 || lbl_1_data_C24[0] == -1 || lbl_1_data_C24[1] == -1 || lbl_1_data_C24[0] != Hu3DMotionIDGet(lbl_1_data_C20)); - for(i=0; i<2; i++) { - if(lbl_1_data_C10[1][i] != -1) { - if(Hu3DMotionTimeGet(lbl_1_data_C20) >= lbl_1_data_C10[0][i]) { + } while (lbl_1_data_C20 == -1 || lbl_1_data_C24[0] == -1 || lbl_1_data_C24[1] == -1 || lbl_1_data_C24[0] != Hu3DMotionIDGet(lbl_1_data_C20)); + for (i = 0; i < 2; i++) { + if (lbl_1_data_C10[1][i] != -1) { + if (Hu3DMotionTimeGet(lbl_1_data_C20) >= lbl_1_data_C10[0][i]) { OSReport("KE-System TIME:%d\n", lbl_1_data_C10[0][i]); HuAudFXPlay(81); lbl_1_data_C10[1][i] = -1; } } } - if(Hu3DMotionTimeGet(lbl_1_data_C20) <= 10) { - for(i=0; i<2; i++) { + if (Hu3DMotionTimeGet(lbl_1_data_C20) <= 10) { + for (i = 0; i < 2; i++) { lbl_1_data_C10[1][i] = 1; } } } } -void fn_1_1256C(Process* arg0, s32 arg1) +void fn_1_1256C(Process *arg0, s32 arg1) { lbl_1_bss_790 = arg0; lbl_1_bss_860.unk0C = arg1; @@ -160,11 +161,11 @@ void fn_1_1256C(Process* arg0, s32 arg1) void fn_1_12690(omObjData *object) { - if(object->work[2]) { + if (object->work[2]) { object->work[2]--; return; } - if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + if (object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { fn_1_1DFC(object, 1, object->work[1], 15, 1); object->work[0] = object->work[1] = object->work[2] = 0; } @@ -176,38 +177,44 @@ void fn_1_1271C(void) int posY = 40; GXColor winColor = { 0, 0, 128, 128 }; int i; - while(1) { + while (1) { fn_1_BC8(); printWin(posX, posY, 220, 130, &winColor); - if(lbl_1_bss_838.unk04 == NULL) { + if (lbl_1_bss_838.unk04 == NULL) { print8(posX, posY, 1, "PROC_MAIN -> FALSE"); - } else { + } + else { print8(posX, posY, 1, "PROC_MAIN -> TRUE"); } - if(lbl_1_bss_810.unk04 == NULL) { - print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); - } else { - print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + if (lbl_1_bss_810.unk04 == NULL) { + print8(posX, posY + 10, 1, "PROC_MAP -> FALSE"); } - if(lbl_1_bss_7E8.unk04 == NULL) { - print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); - } else { - print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + else { + print8(posX, posY + 10, 1, "PROC_MAP -> TRUE"); } - if(lbl_1_bss_7C0.unk04 == NULL) { - print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); - } else { - print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + if (lbl_1_bss_7E8.unk04 == NULL) { + print8(posX, posY + 20, 1, "PROC_KOOPA -> FALSE"); } - if(lbl_1_bss_798.unk04 == NULL) { - print8(posX, posY+40, 1, "PROC_PLAYER -> FALSE"); - } else { - print8(posX, posY+40, 1, "PROC_PLAYER -> TRUE"); + else { + print8(posX, posY + 20, 1, "PROC_KOOPA -> TRUE"); } - print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_860.unk00, lbl_1_bss_860.unk0C); - print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); - for(i=0; i<4; i++) { - print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_860.unk30[i].unk00, lbl_1_bss_860.unk30[i].unk04, lbl_1_bss_860.unk30[i].unk08, lbl_1_bss_860.unk30[i].unk0C, lbl_1_bss_860.unk30[i].unk14, lbl_1_bss_860.unk30[i].unk10); + if (lbl_1_bss_7C0.unk04 == NULL) { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> FALSE"); + } + else { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> TRUE"); + } + if (lbl_1_bss_798.unk04 == NULL) { + print8(posX, posY + 40, 1, "PROC_PLAYER -> FALSE"); + } + else { + print8(posX, posY + 40, 1, "PROC_PLAYER -> TRUE"); + } + print8(posX, posY + 60, 1, "P:%d W:%d", lbl_1_bss_860.unk00, lbl_1_bss_860.unk0C); + print8(posX, posY + 80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(posX, posY + 90 + (i * 10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_860.unk30[i].unk00, lbl_1_bss_860.unk30[i].unk04, + lbl_1_bss_860.unk30[i].unk08, lbl_1_bss_860.unk30[i].unk0C, lbl_1_bss_860.unk30[i].unk14, lbl_1_bss_860.unk30[i].unk10); } } } @@ -239,16 +246,16 @@ void fn_1_12B10(void) fn_1_BE8(60); fn_1_1DFC(lbl_1_bss_798.unk00, 1, 4, 15, 0); fn_1_BE8(16); - while(1) { + while (1) { fn_1_BC8(); - if(Hu3DMotionTimeGet(lbl_1_bss_798.unk00->model[1]) >= 20) { + if (Hu3DMotionTimeGet(lbl_1_bss_798.unk00->model[1]) >= 20) { break; } } Hu3DMotionSpeedSet(lbl_1_bss_798.unk00->model[1], 0); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_7E8.unk04 == NULL) { + if (lbl_1_bss_7E8.unk04 == NULL) { break; } } @@ -259,9 +266,9 @@ void fn_1_12B10(void) fn_1_BE8(80); Hu3DMotionSpeedSet(lbl_1_bss_798.unk00->model[1], 1); fn_1_1DFC(lbl_1_bss_798.unk00, 1, 1, 15, 1); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_7C0.unk04 == NULL) { + if (lbl_1_bss_7C0.unk04 == NULL) { break; } } @@ -304,20 +311,20 @@ void fn_1_12DD4(void) fn_1_1AFC(lbl_1_bss_860.unk04, -1); fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); fn_1_1A94(lbl_1_bss_860.unk04); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_7C0.unk04 == NULL) { + if (lbl_1_bss_7C0.unk04 == NULL) { break; } } } -void fn_1_13150(omObjData* arg0, StructBss16C* arg1) +void fn_1_13150(omObjData *arg0, StructBss16C *arg1) { int streamNo = HuAudSStreamPlay(7); - while(1) { + while (1) { fn_1_BC8(); - if(HuAudSStreamStatGet(streamNo) == 0) { + if (HuAudSStreamStatGet(streamNo) == 0) { break; } } @@ -325,12 +332,12 @@ void fn_1_13150(omObjData* arg0, StructBss16C* arg1) arg1->unk04 = NULL; } -void fn_1_131C0(omObjData* arg0, StructBss16C* arg1) +void fn_1_131C0(omObjData *arg0, StructBss16C *arg1) { - int presentSe = (lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10*6)+5; + int presentSe = (lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6) + 5; fn_1_BE8(150); OSReport("########## PRESENT_SE : %d\n", presentSe); - HuAudFXPlay(presentSe+2260); + HuAudFXPlay(presentSe + 2260); fn_1_1DFC(lbl_1_bss_810.unk00, 7, 7, 1, 0); arg1->unk04 = NULL; } @@ -339,23 +346,24 @@ void fn_1_13264(void) { int i; fn_1_1DFC(lbl_1_bss_798.unk00, 1, 2, 15, 1); - for(i=0; i<30; i++) { + for (i = 0; i < 30; i++) { fn_1_BC8(); - if(lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 != 5) { + if (lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 != 5) { Hu3DData[lbl_1_bss_798.unk00->model[1]].pos.x = fn_1_864(120, 80, i, 30); } Hu3DData[lbl_1_bss_798.unk00->model[1]].rot.y = fn_1_864(-60, -90, i, 30); } fn_1_1DFC(lbl_1_bss_798.unk00, 1, 5, 5, 0); fn_1_BE8(10); - while(1) { + while (1) { fn_1_BC8(); - if(Hu3DMotionTimeGet(lbl_1_bss_798.unk00->model[1]) >= 30) { + if (Hu3DMotionTimeGet(lbl_1_bss_798.unk00->model[1]) >= 30) { break; } } Hu3DModelPosSet(lbl_1_bss_810.unk00->model[5], 0, 0, 0); - Hu3DModelHookSet(lbl_1_bss_798.unk00->model[1], CharModelHookNameGet(lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, 1, 1), lbl_1_bss_810.unk00->model[5]); + Hu3DModelHookSet( + lbl_1_bss_798.unk00->model[1], CharModelHookNameGet(lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, 1, 1), lbl_1_bss_810.unk00->model[5]); fn_1_BE8(60); lbl_1_bss_810.unk04 = (void *)fn_1_13FB4; HuAudFXPlay(163); @@ -367,9 +375,9 @@ void fn_1_13264(void) HuAudSeqPause(lbl_1_bss_78[0], 1, 1000); WipeColorSet(255, 255, 255); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); - while(1) { + while (1) { fn_1_BC8(); - if(!WipeStatGet()) { + if (!WipeStatGet()) { break; } } @@ -381,9 +389,9 @@ void fn_1_13264(void) fn_1_BE8(30); HuAudFXPlay(169); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); - while(1) { + while (1) { fn_1_BC8(); - if(!WipeStatGet()) { + if (!WipeStatGet()) { break; } } @@ -393,9 +401,9 @@ void fn_1_13264(void) lbl_1_bss_798.unk04 = (void *)fn_1_131C0; lbl_1_bss_860.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_860.unk0C); lbl_1_bss_7C0.unk04 = (void *)fn_1_13150; - fn_1_1D4C(lbl_1_bss_860.unk04, (lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10*6)+0x32000B, 0); + fn_1_1D4C(lbl_1_bss_860.unk04, (lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6) + 0x32000B, 0); fn_1_6DBC(lbl_1_bss_860.unk04, 0x320086, 0, 300); - fn_1_1D18(lbl_1_bss_860.unk04,0x250004); + fn_1_1D18(lbl_1_bss_860.unk04, 0x250004); fn_1_1A94(lbl_1_bss_860.unk04); fn_1_3854(&lbl_1_bss_24); fn_1_2750(fn_1_15E58); @@ -435,7 +443,7 @@ void fn_1_13828(void) void fn_1_138CC(void) { - omOvlHisData* var_r31; + omOvlHisData *var_r31; msmSeStopAll(FALSE, 1000); do { @@ -444,15 +452,16 @@ void fn_1_138CC(void) CharModelKill(-1); HuAudFXAllStop(); HuAudSStreamAllStop(); - GWMGAvailSet(omMgIndexGet(58)+401); + GWMGAvailSet(omMgIndexGet(58) + 401); GWGameStat.present[lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6 + 5] = 1; - OSReport("########## PRESENTFLG CHR:%d, MAP:5, PRESENT:%d\n", lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6 + 5); + OSReport("########## PRESENTFLG CHR:%d, MAP:5, PRESENT:%d\n", lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10, + lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6 + 5); var_r31 = omOvlHisGet(0); omOvlHisChg(0, OVL_MSTORY2, 20, var_r31->stat); omOvlCallEx(OVL_PRESENT, 1, lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10 * 6 + 5 + 1, 0); } -void fn_1_13A18(omObjData* arg0, StructBss16C* arg1) +void fn_1_13A18(omObjData *arg0, StructBss16C *arg1) { int temp = 0; fn_1_12AC8(); @@ -469,15 +478,15 @@ void fn_1_13BB8(void) lbl_1_bss_838.unk00 = obj = omAddObjEx(lbl_1_bss_790, 256, 16, 16, -1, NULL); lbl_1_bss_838.unk04 = (void *)fn_1_13A18; lbl_1_bss_838.unk00->data = &lbl_1_bss_838; - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_838.unk04 != NULL) { + if (lbl_1_bss_838.unk04 != NULL) { lbl_1_bss_838.unk04(obj, &lbl_1_bss_838); } } } -void fn_1_13C6C(omObjData* object) +void fn_1_13C6C(omObjData *object) { s32 charNo; charNo = lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10; @@ -511,28 +520,27 @@ void fn_1_13C6C(omObjData* object) fn_1_1DFC(object, 8, 8, 0, 1); } - -void fn_1_13FB4(omObjData* arg0, StructBss16C* arg1) +void fn_1_13FB4(omObjData *arg0, StructBss16C *arg1) { Mtx matrix; Hu3DData[arg0->model[7]].pos.y = fn_1_B08(180, 185, arg1->unk08++, 360); Hu3DModelObjMtxGet(arg0->model[7], "effect", matrix); Hu3DModelPosSet(arg0->model[8], matrix[0][3], matrix[1][3], matrix[2][3]); - if(arg1->unk08 >= 360) { + if (arg1->unk08 >= 360) { arg1->unk08 = 0; } } -void fn_1_140A0(omObjData* arg0, StructBss16C* arg1) +void fn_1_140A0(omObjData *arg0, StructBss16C *arg1) { Mtx matrix; - Hu3DData[arg0->model[7]].pos.y += arg1->unk0C/100.0f; + Hu3DData[arg0->model[7]].pos.y += arg1->unk0C / 100.0f; Hu3DModelObjMtxGet(arg0->model[7], "effect", matrix); Hu3DModelPosSet(arg0->model[8], matrix[0][3], matrix[1][3], matrix[2][3]); arg1->unk0C += 2; } -void fn_1_1416C(omObjData* arg0, StructBss16C* arg1) +void fn_1_1416C(omObjData *arg0, StructBss16C *arg1) { int i; Vec pos; @@ -540,19 +548,20 @@ void fn_1_1416C(omObjData* arg0, StructBss16C* arg1) Hu3DModelPosSet(arg0->model[5], -180, 100, 800); Hu3DModelRotSet(arg0->model[5], 0, 0, 0); Hu3DModelAttrReset(arg0->model[5], 1); - for(i=0; i<60; i++) { + for (i = 0; i < 60; i++) { fn_1_BC8(); - if(i == 30) { + if (i == 30) { HuAudFXPlay(151); } - if(i <= 30) { - pos.y = fn_1_A4C(0, 100, i+30, 60); + if (i <= 30) { + pos.y = fn_1_A4C(0, 100, i + 30, 60); pos.x = fn_1_864(-180, -45, i, 30); rotY = fn_1_984(0, -90, i, 30); - } else { - pos.x = fn_1_864(-45, 0, i-30, 30); - pos.y = fn_1_A4C(0, 25, i-30, 30); - rotY = fn_1_984(-90, -360, i-30, 30); + } + else { + pos.x = fn_1_864(-45, 0, i - 30, 30); + pos.y = fn_1_A4C(0, 25, i - 30, 30); + rotY = fn_1_984(-90, -360, i - 30, 30); } Hu3DModelPosSet(arg0->model[5], pos.x, pos.y, 800); Hu3DModelRotSet(arg0->model[5], 0, rotY, 0); @@ -567,9 +576,9 @@ void fn_1_1449C(void) lbl_1_bss_810.unk04 = NULL; lbl_1_bss_810.unk00->data = &lbl_1_bss_810; fn_1_13C6C(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_810.unk04 != NULL) { + if (lbl_1_bss_810.unk04 != NULL) { lbl_1_bss_810.unk04(obj, &lbl_1_bss_810); } } @@ -597,15 +606,15 @@ void fn_1_14868(omObjData *object) void fn_1_14A9C(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_7E8.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_7E8.unk00->work[0] = arg4; lbl_1_bss_7E8.unk00->work[1] = arg1; - lbl_1_bss_7E8.unk00->work[2] = arg2+1; + lbl_1_bss_7E8.unk00->work[2] = arg2 + 1; } -void fn_1_14B48(omObjData* arg0, StructBss16C* arg1) +void fn_1_14B48(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -1000, 0, 810 }; lbl_1_bss_810.unk04 = (void *)fn_1_1416C; @@ -622,15 +631,16 @@ void fn_1_14C40(void) lbl_1_bss_7E8.unk04 = NULL; lbl_1_bss_7E8.unk00->data = &lbl_1_bss_810; fn_1_14868(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_7E8.unk04 != NULL) { + if (lbl_1_bss_7E8.unk04 != NULL) { lbl_1_bss_7E8.unk04(obj, &lbl_1_bss_7E8); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -656,15 +666,15 @@ void fn_1_14F6C(omObjData *object) void fn_1_15134(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_7C0.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_7C0.unk00->work[0] = arg4; lbl_1_bss_7C0.unk00->work[1] = arg1; - lbl_1_bss_7C0.unk00->work[2] = arg2+1; + lbl_1_bss_7C0.unk00->work[2] = arg2 + 1; } -void fn_1_151E0(omObjData* arg0, StructBss16C* arg1) +void fn_1_151E0(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -800, 0, 800 }; fn_1_1DFC(arg0, 1, 2, 15, 1); @@ -673,7 +683,7 @@ void fn_1_151E0(omObjData* arg0, StructBss16C* arg1) arg1->unk04 = NULL; } -void fn_1_152C4(omObjData* arg0, StructBss16C* arg1) +void fn_1_152C4(omObjData *arg0, StructBss16C *arg1) { Vec pos = { -120, 0, 800 }; fn_1_1DFC(arg0, 1, 2, 15, 1); @@ -689,15 +699,16 @@ void fn_1_153A8(void) lbl_1_bss_7C0.unk04 = NULL; lbl_1_bss_7C0.unk00->data = &lbl_1_bss_7C0; fn_1_14F6C(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_7C0.unk04 != NULL) { + if (lbl_1_bss_7C0.unk04 != NULL) { lbl_1_bss_7C0.unk04(obj, &lbl_1_bss_7C0); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -710,16 +721,16 @@ void fn_1_15668(int arg0) int i; int order[4]; order[0] = 0; - for(i=1; i<4; i++) { - order[i] = order[i-1]+1; - if(order[i] >= 4) { + for (i = 1; i < 4; i++) { + order[i] = order[i - 1] + 1; + if (order[i] >= 4) { order[i] = 0; } - if(arg0 == order[i]) { + if (arg0 == order[i]) { lbl_1_bss_860.unk00 = i; } } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { fn_1_357C(&lbl_1_bss_860.unk30[i], order[i]); } } @@ -728,12 +739,12 @@ void fn_1_1574C(omObjData *object) { int charNo = lbl_1_bss_860.unk30[lbl_1_bss_860.unk00].unk10; object->model[1] = CharModelCreate(charNo, 1); - object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); - object->motion[2] = CharModelMotionCreate(charNo, 0x5F0002); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660028+charNo); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660030+charNo); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660038+charNo); - object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660000+charNo); + object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660028 + charNo); + object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660030 + charNo); + object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660038 + charNo); + object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660000 + charNo); CharModelMotionDataClose(charNo); Hu3DModelPosSet(object->model[1], 120, 0, 800); Hu3DModelRotSet(object->model[1], 0, -60, 0); @@ -745,12 +756,12 @@ void fn_1_1574C(omObjData *object) void fn_1_15944(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_798.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_798.unk00->work[0] = arg4; lbl_1_bss_798.unk00->work[1] = arg1; - lbl_1_bss_798.unk00->work[2] = arg2+1; + lbl_1_bss_798.unk00->work[2] = arg2 + 1; } void fn_1_159F0(void) @@ -760,15 +771,16 @@ void fn_1_159F0(void) lbl_1_bss_798.unk04 = NULL; lbl_1_bss_798.unk00->data = &lbl_1_bss_798; fn_1_1574C(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_798.unk04 != NULL) { + if (lbl_1_bss_798.unk04 != NULL) { lbl_1_bss_798.unk04(obj, &lbl_1_bss_798); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -800,7 +812,6 @@ void fn_1_15D68(void) temp.unk20.z = 0; temp.unk38 = 1400; fn_1_4FEC(work, &temp, work->unk40++, 120, 10); - } void fn_1_15E58(void) @@ -828,4 +839,4 @@ void fn_1_15F70(void) temp.unk20.z = 0; temp.unk38 = 1200; fn_1_6004(work, &temp, work->unk40++, 10, 5); -} \ No newline at end of file +} diff --git a/src/REL/mstory2Dll/mg_miss.c b/src/REL/mstory2Dll/mg_miss.c index 6a9232ab..cc329a56 100644 --- a/src/REL/mstory2Dll/mg_miss.c +++ b/src/REL/mstory2Dll/mg_miss.c @@ -9,12 +9,13 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/pad.h" #include "game/printfunc.h" #include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" -#include "game/pad.h" -#include "game/objsub.h" + typedef struct { /* 0x000 */ s32 unk00; @@ -47,7 +48,7 @@ void fn_1_18184(void); void fn_1_18408(void); void fn_1_18494(void); -void fn_1_16060(Process* arg0, s32 arg1) +void fn_1_16060(Process *arg0, s32 arg1) { lbl_1_bss_968 = arg0; lbl_1_bss_A34.unk0C = arg1; @@ -65,11 +66,11 @@ void fn_1_16060(Process* arg0, s32 arg1) void fn_1_16178(omObjData *object) { - if(object->work[2]) { + if (object->work[2]) { object->work[2]--; return; } - if(object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { + if (object->work[2] == 0 && Hu3DMotionEndCheck(object->model[1])) { fn_1_1DFC(object, 1, object->work[1], 15, 1); object->work[0] = object->work[1] = object->work[2] = 0; } @@ -81,38 +82,44 @@ void fn_1_16204(void) int posY = 40; GXColor winColor = { 0, 0, 128, 128 }; int i; - while(1) { + while (1) { fn_1_BC8(); printWin(posX, posY, 220, 130, &winColor); - if(lbl_1_bss_A0C.unk04 == NULL) { + if (lbl_1_bss_A0C.unk04 == NULL) { print8(posX, posY, 1, "PROC_MAIN -> FALSE"); - } else { + } + else { print8(posX, posY, 1, "PROC_MAIN -> TRUE"); } - if(lbl_1_bss_9E4.unk04 == NULL) { - print8(posX, posY+10, 1, "PROC_MAP -> FALSE"); - } else { - print8(posX, posY+10, 1, "PROC_MAP -> TRUE"); + if (lbl_1_bss_9E4.unk04 == NULL) { + print8(posX, posY + 10, 1, "PROC_MAP -> FALSE"); } - if(lbl_1_bss_9BC.unk04 == NULL) { - print8(posX, posY+20, 1, "PROC_KOOPA -> FALSE"); - } else { - print8(posX, posY+20, 1, "PROC_KOOPA -> TRUE"); + else { + print8(posX, posY + 10, 1, "PROC_MAP -> TRUE"); } - if(lbl_1_bss_994.unk04 == NULL) { - print8(posX, posY+30, 1, "PROC_MKOOPA -> FALSE"); - } else { - print8(posX, posY+30, 1, "PROC_MKOOPA -> TRUE"); + if (lbl_1_bss_9BC.unk04 == NULL) { + print8(posX, posY + 20, 1, "PROC_KOOPA -> FALSE"); } - if(lbl_1_bss_96C.unk04 == NULL) { - print8(posX, posY+40, 1, "PROC_PLAYER -> FALSE"); - } else { - print8(posX, posY+40, 1, "PROC_PLAYER -> TRUE"); + else { + print8(posX, posY + 20, 1, "PROC_KOOPA -> TRUE"); } - print8(posX, posY+60, 1, "P:%d W:%d", lbl_1_bss_A34.unk00, lbl_1_bss_A34.unk0C); - print8(posX, posY+80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); - for(i=0; i<4; i++) { - print8(posX, posY+90+(i*10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_A34.unk30[i].unk00, lbl_1_bss_A34.unk30[i].unk04, lbl_1_bss_A34.unk30[i].unk08, lbl_1_bss_A34.unk30[i].unk0C, lbl_1_bss_A34.unk30[i].unk14, lbl_1_bss_A34.unk30[i].unk10); + if (lbl_1_bss_994.unk04 == NULL) { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> FALSE"); + } + else { + print8(posX, posY + 30, 1, "PROC_MKOOPA -> TRUE"); + } + if (lbl_1_bss_96C.unk04 == NULL) { + print8(posX, posY + 40, 1, "PROC_PLAYER -> FALSE"); + } + else { + print8(posX, posY + 40, 1, "PROC_PLAYER -> TRUE"); + } + print8(posX, posY + 60, 1, "P:%d W:%d", lbl_1_bss_A34.unk00, lbl_1_bss_A34.unk0C); + print8(posX, posY + 80, 1, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(posX, posY + 90 + (i * 10), 1, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, lbl_1_bss_A34.unk30[i].unk00, lbl_1_bss_A34.unk30[i].unk04, + lbl_1_bss_A34.unk30[i].unk08, lbl_1_bss_A34.unk30[i].unk0C, lbl_1_bss_A34.unk30[i].unk14, lbl_1_bss_A34.unk30[i].unk10); } } } @@ -150,7 +157,7 @@ int fn_1_1670C(void) result = fn_1_1C64(lbl_1_bss_A34.unk08); fn_1_1D18(lbl_1_bss_A34.unk08, 0x250004); fn_1_71DC(lbl_1_bss_A34.unk08); - if(result) { + if (result) { HuAudFXPlay(lbl_1_data_0[6][2]); fn_1_1774C(3, 1, 15, 1, 0); fn_1_1D18(lbl_1_bss_A34.unk04, 0x1F0012); @@ -183,14 +190,11 @@ void fn_1_16984(void) fn_1_BE8(150); } -void fn_1_169D4(void) -{ - -} +void fn_1_169D4(void) { } void fn_1_169D8(int arg0) { - omOvlHisData* his; + omOvlHisData *his; if (arg0 != 0) { HuAudSeqFadeOut(lbl_1_bss_78[0], 1000); @@ -206,32 +210,34 @@ void fn_1_169D8(int arg0) HuAudSeqAllFadeOut(1000); HuAudSStreamAllFadeOut(1000); GWMGAvailSet(450); - GWSystem.mg_next = 450-401; + GWSystem.mg_next = 450 - 401; omOvlCallEx(OVL_M450, 1, 0, 0); - } else { + } + else { HuAudFadeOut(1); omOvlReturnEx(1, 1); } } -void fn_1_16ACC(omObjData* arg0, StructBss16C* arg1) +void fn_1_16ACC(omObjData *arg0, StructBss16C *arg1) { int mode = 0; fn_1_165B0(); fn_1_1661C(); lbl_1_bss_A34.unk04 = fn_1_185C(1, 0, 21, 2, lbl_1_bss_A34.unk0C); - while(1) { + while (1) { fn_1_BC8(); - if(fn_1_1670C()) { + if (fn_1_1670C()) { mode = 0; break; - } else if(fn_1_168B0()) { + } + else if (fn_1_168B0()) { mode = 1; break; } } fn_1_1A94(lbl_1_bss_A34.unk04); - switch(mode) { + switch (mode) { case 0: fn_1_16984(); break; @@ -248,9 +254,9 @@ void fn_1_16FC0(void) lbl_1_bss_A0C.unk00 = obj = omAddObjEx(lbl_1_bss_968, 256, 16, 16, -1, NULL); lbl_1_bss_A0C.unk04 = (void *)fn_1_16ACC; lbl_1_bss_A0C.unk00->data = &lbl_1_bss_A0C; - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_A0C.unk04 != NULL) { + if (lbl_1_bss_A0C.unk04 != NULL) { lbl_1_bss_A0C.unk04(obj, &lbl_1_bss_A0C); } } @@ -277,10 +283,10 @@ void fn_1_17074(omObjData *object) fn_1_1DFC(object, 6, 6, 0, 2); } -void fn_1_1727C(omObjData* arg0, StructBss16C* arg1) +void fn_1_1727C(omObjData *arg0, StructBss16C *arg1) { Hu3DData[arg0->model[5]].pos.y = fn_1_B08(80, 90, arg1->unk08++, 360); - if(arg1->unk08 >= 360) { + if (arg1->unk08 >= 360) { arg1->unk08 = 0; } } @@ -292,9 +298,9 @@ void fn_1_17338(void) lbl_1_bss_9E4.unk04 = (void *)fn_1_1727C; lbl_1_bss_9E4.unk00->data = &lbl_1_bss_9E4; fn_1_17074(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_9E4.unk04 != NULL) { + if (lbl_1_bss_9E4.unk04 != NULL) { lbl_1_bss_9E4.unk04(obj, &lbl_1_bss_9E4); } } @@ -316,12 +322,12 @@ void fn_1_175CC(omObjData *object) void fn_1_1774C(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_9BC.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_9BC.unk00->work[0] = arg4; lbl_1_bss_9BC.unk00->work[1] = arg1; - lbl_1_bss_9BC.unk00->work[2] = arg2+1; + lbl_1_bss_9BC.unk00->work[2] = arg2 + 1; } void fn_1_177F8(void) @@ -331,15 +337,16 @@ void fn_1_177F8(void) lbl_1_bss_9BC.unk04 = NULL; lbl_1_bss_9BC.unk00->data = &lbl_1_bss_9E4; fn_1_175CC(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_9BC.unk04 != NULL) { + if (lbl_1_bss_9BC.unk04 != NULL) { lbl_1_bss_9BC.unk04(obj, &lbl_1_bss_9BC); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -361,12 +368,12 @@ void fn_1_17A70(omObjData *object) void fn_1_17B98(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_994.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_994.unk00->work[0] = arg4; lbl_1_bss_994.unk00->work[1] = arg1; - lbl_1_bss_994.unk00->work[2] = arg2+1; + lbl_1_bss_994.unk00->work[2] = arg2 + 1; } void fn_1_17C44(void) @@ -376,15 +383,16 @@ void fn_1_17C44(void) lbl_1_bss_994.unk04 = NULL; lbl_1_bss_994.unk00->data = &lbl_1_bss_994; fn_1_17A70(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_994.unk04 != NULL) { + if (lbl_1_bss_994.unk04 != NULL) { lbl_1_bss_994.unk04(obj, &lbl_1_bss_994); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -397,16 +405,16 @@ void fn_1_17E64(s32 arg0) int i; int order[4]; order[0] = 0; - for(i=1; i<4; i++) { - order[i] = order[i-1]+1; - if(order[i] >= 4) { + for (i = 1; i < 4; i++) { + order[i] = order[i - 1] + 1; + if (order[i] >= 4) { order[i] = 0; } - if(arg0 == order[i]) { + if (arg0 == order[i]) { lbl_1_bss_A34.unk00 = i; } } - for(i=0; i<4; i++) { + for (i = 0; i < 4; i++) { fn_1_357C(&lbl_1_bss_A34.unk30[i], order[i]); } } @@ -415,10 +423,10 @@ void fn_1_17F48(omObjData *object) { int charNo = lbl_1_bss_A34.unk30[lbl_1_bss_A34.unk00].unk10; object->model[1] = CharModelCreate(charNo, 1); - object->motion[1] = CharModelMotionCreate(charNo, 0x5F0000); - object->motion[2] = CharModelMotionCreate(charNo, 0x5F0018); - object->motion[3] = CharModelMotionCreate(charNo, 0x5F0034); - object->motion[4] = CharModelMotionCreate(charNo, 0x5F0048); + object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18)); + object->motion[3] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x34)); + object->motion[4] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x48)); CharModelVoiceEnableSet(charNo, object->motion[2], FALSE); CharModelMotionDataClose(charNo); Hu3DModelPosSet(object->model[1], 120, 0, 800); @@ -431,12 +439,12 @@ void fn_1_17F48(omObjData *object) void fn_1_180D8(int arg0, int arg1, int arg2, int arg3, int arg4) { fn_1_1DFC(lbl_1_bss_96C.unk00, 1, arg0, arg2, arg3); - if(arg3 == 1) { + if (arg3 == 1) { arg4 = 0; } lbl_1_bss_96C.unk00->work[0] = arg4; lbl_1_bss_96C.unk00->work[1] = arg1; - lbl_1_bss_96C.unk00->work[2] = arg2+1; + lbl_1_bss_96C.unk00->work[2] = arg2 + 1; } void fn_1_18184(void) @@ -446,15 +454,16 @@ void fn_1_18184(void) lbl_1_bss_96C.unk04 = NULL; lbl_1_bss_96C.unk00->data = &lbl_1_bss_96C; fn_1_17F48(obj); - while(1) { + while (1) { fn_1_BC8(); - if(lbl_1_bss_96C.unk04 != NULL) { + if (lbl_1_bss_96C.unk04 != NULL) { lbl_1_bss_96C.unk04(obj, &lbl_1_bss_96C); } - if(obj->work[0]) { - if(obj->work[2]) { + if (obj->work[0]) { + if (obj->work[2]) { obj->work[2]--; - } else if(obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { + } + else if (obj->work[2] == 0 && Hu3DMotionEndCheck(obj->model[1])) { fn_1_1DFC(obj, 1, obj->work[1], 15, 1); obj->work[0] = obj->work[1] = obj->work[2] = 0; } @@ -478,7 +487,7 @@ void fn_1_18494(void) { StructBss24 *work = &lbl_1_bss_24; StructBss24 temp; - if(work->unk40 == 50) { + if (work->unk40 == 50) { fn_1_1DFC(lbl_1_bss_9E4.unk00, 5, 5, 0, 0); fn_1_1DFC(lbl_1_bss_9E4.unk00, 6, 6, 0, 0); HuAudFXPlay(161); @@ -491,11 +500,11 @@ void fn_1_18494(void) temp.unk20.z = 0; temp.unk38 = 150; fn_1_4FEC(work, &temp, work->unk40, 180, 10); - if(work->unk40++ >= 90) { - if(work->unk40 == 91) { + if (work->unk40++ >= 90) { + if (work->unk40 == 91) { lbl_1_bss_88[0] = HuAudFXPlay(32); } - work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40-90, 90); - Hu3DData[lbl_1_bss_9E4.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40-90, 90); + work->unk20.x = fn_1_864(work->unk20.x, -45, work->unk40 - 90, 90); + Hu3DData[lbl_1_bss_9E4.unk00->model[5]].rot.x = fn_1_864(0, 45, work->unk40 - 90, 90); } -} \ No newline at end of file +} From 090ab1c05f3347259949e7a4e8730d0cf3e561f4 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sat, 11 Jan 2025 18:38:53 +0100 Subject: [PATCH 115/178] Fix w06 symbols for PAL and port mstory2Dll to every version (#523) * Fix w06 symbols for PAL * Port mstory2Dll to every version --- config/GMPE01_01/rels/mstory2Dll/symbols.txt | 742 ++++++++--------- config/GMPJ01_00/rels/mstory2Dll/splits.txt | 47 ++ config/GMPJ01_00/rels/mstory2Dll/symbols.txt | 742 ++++++++--------- config/GMPJ01_00/rels/mstoryDll/symbols.txt | 10 +- config/GMPP01_00/rels/mstory2Dll/splits.txt | 47 ++ config/GMPP01_00/rels/mstory2Dll/symbols.txt | 784 +++++++++--------- config/GMPP01_00/rels/w06Dll/symbols.txt | 690 ++++++++-------- config/GMPP01_02/rels/mstory2Dll/splits.txt | 47 ++ config/GMPP01_02/rels/mstory2Dll/symbols.txt | 788 +++++++++---------- configure.py | 16 +- src/REL/mstory2Dll/board_clear.c | 34 +- src/REL/mstory2Dll/board_entrance.c | 51 +- src/REL/mstory2Dll/board_miss.c | 38 +- src/REL/mstory2Dll/ending.c | 67 +- src/REL/mstory2Dll/main.c | 6 +- src/REL/mstory2Dll/mg_clear.c | 44 +- src/REL/mstory2Dll/mg_miss.c | 24 +- src/REL/mstory2Dll/save.c | 10 +- 18 files changed, 2181 insertions(+), 2006 deletions(-) diff --git a/config/GMPE01_01/rels/mstory2Dll/symbols.txt b/config/GMPE01_01/rels/mstory2Dll/symbols.txt index fb773409..8bf47557 100644 --- a/config/GMPE01_01/rels/mstory2Dll/symbols.txt +++ b/config/GMPE01_01/rels/mstory2Dll/symbols.txt @@ -5,7 +5,7 @@ _prolog = .text:0x00000344; // type:function size:0x54 scope:global _epilog = .text:0x00000398; // type:function size:0x4C scope:global fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 -fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +ObjectSetup = .text:0x000006AC; // type:function size:0x1B8 fn_1_864 = .text:0x00000864; // type:function size:0x28 fn_1_88C = .text:0x0000088C; // type:function size:0x20 fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 @@ -209,8 +209,8 @@ fn_1_16060 = .text:0x00016060; // type:function size:0x118 fn_1_16178 = .text:0x00016178; // type:function size:0x8C fn_1_16204 = .text:0x00016204; // type:function size:0x3AC fn_1_165B0 = .text:0x000165B0; // type:function size:0x5C -fn_1_1660C = .text:0x0001660C; // type:function size:0x110 -fn_1_1671C = .text:0x0001671C; // type:function size:0x194 +fn_1_1661C = .text:0x0001660C; // type:function size:0x110 +fn_1_1670C = .text:0x0001671C; // type:function size:0x194 fn_1_168B0 = .text:0x000168B0; // type:function size:0xD4 fn_1_16984 = .text:0x00016984; // type:function size:0x50 fn_1_169D4 = .text:0x000169D4; // type:function size:0x4 @@ -265,397 +265,397 @@ fn_1_1B870 = .text:0x0001B888; // type:function size:0x9C fn_1_1B90C = .text:0x0001B924; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte -lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:float -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0xC data:4byte -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:0xC data:4byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +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:0xC scope:local data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte -lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string -lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string -lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string -lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 scope:local data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 scope:local data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 scope:local data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 scope:local data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF scope:local lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 -lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string -lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string -lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 scope:local data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 scope:local data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 scope:local data:string jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local -lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string -lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string -lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string -lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string -lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string -lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string -lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string -lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string -lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string -lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A scope:local data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A scope:local data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE scope:local data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 scope:local data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 scope:local data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 scope:local data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 scope:local data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 scope:local data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 scope:local data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 scope:local lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 -lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string -lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 data:string +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 scope:local data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 scope:local data:string lbl_1_data_3A0 = .data:0x000003A0; // type:object size:0x2C lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte -lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string -lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string -lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string -lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string -lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string -lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string -lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string -lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string -lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string -lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string -lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string -lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string -lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string -lbl_1_data_50C = .data:0x0000050C; // type:object size:0xF data:string -lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string -lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string -lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string -lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string -lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string -lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string -lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string -lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string -lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string -lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string -lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string -lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string -lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string -lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 scope:local data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 scope:local data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 scope:local data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 scope:local data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 scope:local data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 scope:local data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 scope:local data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 scope:local data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 scope:local data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 scope:local data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 scope:local data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA scope:local data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C scope:local data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D scope:local data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0xF scope:local data:string +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 scope:local data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 scope:local data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 scope:local data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 scope:local data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 scope:local data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 scope:local data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 scope:local data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 scope:local data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 scope:local data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 scope:local data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA scope:local data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C scope:local data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D scope:local data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 scope:local data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C scope:local data:string lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 lbl_1_data_698 = .data:0x00000698; // type:object size:0x1C lbl_1_data_6B4 = .data:0x000006B4; // type:object size:0x20 -lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string -lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string -lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string -lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string -lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string -lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string -lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string -lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string -lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string -lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string -lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string -lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string -lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string -lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 scope:local data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 scope:local data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 scope:local data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 scope:local data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 scope:local data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 scope:local data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 scope:local data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 scope:local data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 scope:local data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 scope:local data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA scope:local data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C scope:local data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D scope:local data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 scope:local data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C scope:local lbl_1_data_81C = .data:0x0000081C; // type:object size:0x30 lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte -lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string -lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string -lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string -lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string -lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string -lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string -lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string -lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string -lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string -lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string -lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string -lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string -lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string -lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string -lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string -lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string -lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string -lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0x7 data:string -lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string -lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string -lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string -lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string -lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string -lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string -lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string -lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string -lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string -lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string -lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string -lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string -lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string -lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string -lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x1C data:string +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 scope:local data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 scope:local data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 scope:local data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 scope:local data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 scope:local data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 scope:local data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 scope:local data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 scope:local data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 scope:local data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 scope:local data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 scope:local data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA scope:local data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C scope:local data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D scope:local data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C scope:local data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 scope:local data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 scope:local data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0x7 scope:local data:string +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 scope:local data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 scope:local data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 scope:local data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 scope:local data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 scope:local data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 scope:local data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 scope:local data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 scope:local data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 scope:local data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 scope:local data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA scope:local data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C scope:local data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D scope:local data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 scope:local data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x1C scope:local data:string lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte -lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string -lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string -lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string -lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string -lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string -lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string -lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string -lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string -lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string -lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string -lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string -lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string -lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string -lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string -lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string -lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string -lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string -lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string -lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string -lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string -lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string -lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 scope:local data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 scope:local data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 scope:local data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 scope:local data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 scope:local data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 scope:local data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 scope:local data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 scope:local data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 scope:local data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 scope:local data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 scope:local data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA scope:local data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C scope:local data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D scope:local data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 scope:local data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 scope:local data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 scope:local data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 scope:local data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 scope:local data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 scope:local data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 scope:local data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 scope:local data:string lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 -lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x20 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x44 data:float diff --git a/config/GMPJ01_00/rels/mstory2Dll/splits.txt b/config/GMPJ01_00/rels/mstory2Dll/splits.txt index 531cd645..aa6bd0d5 100644 --- a/config/GMPJ01_00/rels/mstory2Dll/splits.txt +++ b/config/GMPJ01_00/rels/mstory2Dll/splits.txt @@ -5,3 +5,50 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstory2Dll/main.c: + .text start:0x00000000 end:0x00007DB0 + .rodata start:0x00000000 end:0x00000118 + .data start:0x00000000 end:0x000003A0 + .bss start:0x00000000 end:0x00000078 + +REL/mstory2Dll/board_entrance.c: + .text start:0x00007DB0 end:0x0000B37C + .rodata start:0x00000118 end:0x000001A8 + .data start:0x000003A0 end:0x00000520 + .bss start:0x00000078 end:0x00000298 + +REL/mstory2Dll/board_clear.c: + .text start:0x0000B37C end:0x0000E570 + .rodata start:0x000001A8 end:0x00000248 + .data start:0x00000520 end:0x00000698 + .bss start:0x00000298 end:0x000004E0 + +REL/mstory2Dll/board_miss.c: + .text start:0x0000E570 end:0x000123C8 + .rodata start:0x00000248 end:0x00000310 + .data start:0x00000698 end:0x00000850 + .bss start:0x000004E0 end:0x00000790 + +REL/mstory2Dll/mg_clear.c: + .text start:0x000123C8 end:0x00016060 + .rodata start:0x00000310 end:0x000003D0 + .data start:0x00000850 end:0x00000DB8 + .bss start:0x00000790 end:0x00000968 + +REL/mstory2Dll/mg_miss.c: + .text start:0x00016060 end:0x000186D0 + .rodata start:0x000003D0 end:0x00000438 + .data start:0x00000DB8 end:0x00000EF8 + .bss start:0x00000968 end:0x00000B38 + +REL/mstory2Dll/ending.c: + .text start:0x000186D0 end:0x0001B560 + .rodata start:0x00000438 end:0x000004B8 + .data start:0x00000EF8 end:0x00001113 + .bss start:0x00000B38 end:0x00000D10 + +REL/mstory2Dll/save.c: + .text start:0x0001B560 end:0x0001B95C + .rodata start:0x000004B8 end:0x000004C8 + .bss start:0x00000D10 end:0x00000D18 diff --git a/config/GMPJ01_00/rels/mstory2Dll/symbols.txt b/config/GMPJ01_00/rels/mstory2Dll/symbols.txt index 43271272..c14583cf 100644 --- a/config/GMPJ01_00/rels/mstory2Dll/symbols.txt +++ b/config/GMPJ01_00/rels/mstory2Dll/symbols.txt @@ -5,7 +5,7 @@ _prolog = .text:0x00000344; // type:function size:0x54 scope:global _epilog = .text:0x00000398; // type:function size:0x4C scope:global fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 -fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +ObjectSetup = .text:0x000006AC; // type:function size:0x1B8 fn_1_864 = .text:0x00000864; // type:function size:0x28 fn_1_88C = .text:0x0000088C; // type:function size:0x20 fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 @@ -209,8 +209,8 @@ fn_1_16060 = .text:0x00016060; // type:function size:0x118 fn_1_16178 = .text:0x00016178; // type:function size:0x8C fn_1_16204 = .text:0x00016204; // type:function size:0x3AC fn_1_165B0 = .text:0x000165B0; // type:function size:0x5C -fn_1_1660C = .text:0x0001660C; // type:function size:0x110 -fn_1_1671C = .text:0x0001671C; // type:function size:0x194 +fn_1_1661C = .text:0x0001660C; // type:function size:0x110 +fn_1_1670C = .text:0x0001671C; // type:function size:0x194 fn_1_168B0 = .text:0x000168B0; // type:function size:0xD4 fn_1_16984 = .text:0x00016984; // type:function size:0x50 fn_1_169D4 = .text:0x000169D4; // type:function size:0x4 @@ -265,395 +265,395 @@ fn_1_1B870 = .text:0x0001B870; // type:function size:0x9C fn_1_1B90C = .text:0x0001B90C; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte -lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:float -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0xC data:4byte -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:0xC data:4byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +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:0xC scope:local data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte -lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string -lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string -lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string -lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 scope:local data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 scope:local data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 scope:local data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 scope:local data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF scope:local lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 -lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string -lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string -lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 scope:local data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 scope:local data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 scope:local data:string jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local -lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string -lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string -lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string -lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string -lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string -lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string -lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string -lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string -lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string -lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A scope:local data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A scope:local data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE scope:local data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 scope:local data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 scope:local data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 scope:local data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 scope:local data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 scope:local data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 scope:local data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 scope:local lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 -lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string -lbl_1_data_399 = .data:0x00000399; // type:object size:0x33 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 scope:local data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 scope:local data:string lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte -lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string -lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string -lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string -lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string -lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string -lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string -lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string -lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string -lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string -lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string -lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string -lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string -lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string -lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 -lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string -lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string -lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string -lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string -lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string -lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string -lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string -lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string -lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string -lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string -lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string -lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string -lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string -lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 scope:local data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 scope:local data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 scope:local data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 scope:local data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 scope:local data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 scope:local data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 scope:local data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 scope:local data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 scope:local data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 scope:local data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 scope:local data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA scope:local data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C scope:local data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D scope:local data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 scope:local +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 scope:local data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 scope:local data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 scope:local data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 scope:local data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 scope:local data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 scope:local data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 scope:local data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 scope:local data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 scope:local data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 scope:local data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA scope:local data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C scope:local data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D scope:local data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 scope:local data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C scope:local data:string lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 lbl_1_data_698 = .data:0x00000698; // type:object size:0x3C -lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string -lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string -lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string -lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string -lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string -lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string -lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string -lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string -lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string -lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string -lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string -lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string -lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string -lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 scope:local data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 scope:local data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 scope:local data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 scope:local data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 scope:local data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 scope:local data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 scope:local data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 scope:local data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 scope:local data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 scope:local data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA scope:local data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C scope:local data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D scope:local data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 scope:local data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C scope:local lbl_1_data_81C = .data:0x0000081C; // type:object size:0x34 lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte -lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string -lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string -lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string -lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string -lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string -lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string -lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string -lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string -lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string -lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string -lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string -lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string -lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string -lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string -lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string -lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string -lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string -lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB -lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string -lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string -lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string -lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string -lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string -lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string -lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string -lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string -lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string -lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string -lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string -lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string -lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string -lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string -lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 scope:local data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 scope:local data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 scope:local data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 scope:local data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 scope:local data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 scope:local data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 scope:local data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 scope:local data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 scope:local data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 scope:local data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 scope:local data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA scope:local data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C scope:local data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D scope:local data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C scope:local data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 scope:local data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 scope:local data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB scope:local +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 scope:local data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 scope:local data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 scope:local data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 scope:local data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 scope:local data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 scope:local data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 scope:local data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 scope:local data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 scope:local data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 scope:local data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA scope:local data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C scope:local data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D scope:local data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 scope:local data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 scope:local lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte -lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string -lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string -lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string -lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string -lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string -lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string -lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string -lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string -lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string -lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string -lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string -lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string -lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string -lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string -lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string -lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string -lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string -lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string -lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string -lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string -lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string -lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 scope:local data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 scope:local data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 scope:local data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 scope:local data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 scope:local data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 scope:local data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 scope:local data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 scope:local data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 scope:local data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 scope:local data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 scope:local data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA scope:local data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C scope:local data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D scope:local data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 scope:local data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 scope:local data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 scope:local data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 scope:local data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 scope:local data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 scope:local data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 scope:local data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 scope:local data:string lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 -lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x24 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x54 data:float lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x10 data:4byte diff --git a/config/GMPJ01_00/rels/mstoryDll/symbols.txt b/config/GMPJ01_00/rels/mstoryDll/symbols.txt index 56357717..f9dbaabb 100644 --- a/config/GMPJ01_00/rels/mstoryDll/symbols.txt +++ b/config/GMPJ01_00/rels/mstoryDll/symbols.txt @@ -390,7 +390,7 @@ lbl_1_data_138 = .data:0x00000138; // type:object size:0x10 scope:local data:str lbl_1_data_148 = .data:0x00000148; // type:object size:0x3 scope:local data:string lbl_1_data_14B = .data:0x0000014B; // type:object size:0x1A scope:local data:string lbl_1_data_165 = .data:0x00000165; // type:object size:0x1A scope:local data:string -lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 +lbl_1_data_17F = .data:0x0000017F; // type:object size:0x11 scope:local lbl_1_data_190 = .data:0x00000190; // type:object size:0x50 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x3C lbl_1_data_21C = .data:0x0000021C; // type:object size:0x16 scope:local data:string @@ -406,7 +406,7 @@ lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x1C scope:local data:str lbl_1_data_2F5 = .data:0x000002F5; // type:object size:0x1D scope:local data:string lbl_1_data_312 = .data:0x00000312; // type:object size:0x17 scope:local data:string lbl_1_data_329 = .data:0x00000329; // type:object size:0xF scope:local data:string -lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C +lbl_1_data_338 = .data:0x00000338; // type:object size:0x1C scope:local lbl_1_data_354 = .data:0x00000354; // type:object size:0x34 lbl_1_data_388 = .data:0x00000388; // type:object size:0x50 lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x3C @@ -424,7 +424,7 @@ lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x1D scope:local data:str lbl_1_data_505 = .data:0x00000505; // type:object size:0xF scope:local data:string lbl_1_data_514 = .data:0x00000514; // type:object size:0x1B scope:local data:string lbl_1_data_52F = .data:0x0000052F; // type:object size:0x8 scope:local data:string -lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 +lbl_1_data_537 = .data:0x00000537; // type:object size:0x9 scope:local lbl_1_data_540 = .data:0x00000540; // type:object size:0x30 lbl_1_data_570 = .data:0x00000570; // type:object size:0x3C0 lbl_1_data_930 = .data:0x00000930; // type:object size:0x50 @@ -445,7 +445,7 @@ lbl_1_data_ABA = .data:0x00000ABA; // type:object size:0xF scope:local data:stri lbl_1_data_AC9 = .data:0x00000AC9; // type:object size:0x11 scope:local data:string lbl_1_data_ADA = .data:0x00000ADA; // type:object size:0xA scope:local data:string lbl_1_data_AE4 = .data:0x00000AE4; // type:object size:0x9 scope:local data:string -lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB +lbl_1_data_AED = .data:0x00000AED; // type:object size:0xB scope:local lbl_1_data_AF8 = .data:0x00000AF8; // type:object size:0x3C lbl_1_data_B34 = .data:0x00000B34; // type:object size:0x15 scope:local data:string lbl_1_data_B49 = .data:0x00000B49; // type:object size:0x14 scope:local data:string @@ -459,7 +459,7 @@ lbl_1_data_BD8 = .data:0x00000BD8; // type:object size:0xF scope:local data:stri lbl_1_data_BE7 = .data:0x00000BE7; // type:object size:0x1C scope:local data:string lbl_1_data_C03 = .data:0x00000C03; // type:object size:0x1D scope:local data:string lbl_1_data_C20 = .data:0x00000C20; // type:object size:0xF scope:local data:string -lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 +lbl_1_data_C2F = .data:0x00000C2F; // type:object size:0x21 scope:local lbl_1_data_C50 = .data:0x00000C50; // type:object size:0x48 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:4byte diff --git a/config/GMPP01_00/rels/mstory2Dll/splits.txt b/config/GMPP01_00/rels/mstory2Dll/splits.txt index 531cd645..cb297417 100644 --- a/config/GMPP01_00/rels/mstory2Dll/splits.txt +++ b/config/GMPP01_00/rels/mstory2Dll/splits.txt @@ -5,3 +5,50 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstory2Dll/main.c: + .text start:0x00000000 end:0x00007DB0 + .rodata start:0x00000000 end:0x00000118 + .data start:0x00000000 end:0x000003A0 + .bss start:0x00000000 end:0x00000078 + +REL/mstory2Dll/board_entrance.c: + .text start:0x00007DB0 end:0x0000B37C + .rodata start:0x00000118 end:0x000001A8 + .data start:0x000003A0 end:0x00000520 + .bss start:0x00000078 end:0x00000298 + +REL/mstory2Dll/board_clear.c: + .text start:0x0000B37C end:0x0000E570 + .rodata start:0x000001A8 end:0x00000248 + .data start:0x00000520 end:0x00000698 + .bss start:0x00000298 end:0x000004E0 + +REL/mstory2Dll/board_miss.c: + .text start:0x0000E570 end:0x000123C8 + .rodata start:0x00000248 end:0x00000310 + .data start:0x00000698 end:0x00000850 + .bss start:0x000004E0 end:0x00000790 + +REL/mstory2Dll/mg_clear.c: + .text start:0x000123C8 end:0x00016060 + .rodata start:0x00000310 end:0x000003D0 + .data start:0x00000850 end:0x00000DB8 + .bss start:0x00000790 end:0x00000968 + +REL/mstory2Dll/mg_miss.c: + .text start:0x00016060 end:0x000186D0 + .rodata start:0x000003D0 end:0x00000438 + .data start:0x00000DB8 end:0x00000EF8 + .bss start:0x00000968 end:0x00000B38 + +REL/mstory2Dll/ending.c: + .text start:0x000186D0 end:0x0001B5A4 + .rodata start:0x00000438 end:0x000004B8 + .data start:0x00000EF8 end:0x00001113 + .bss start:0x00000B38 end:0x00000D10 + +REL/mstory2Dll/save.c: + .text start:0x0001B5A4 end:0x0001B9A0 + .rodata start:0x000004B8 end:0x000004C8 + .bss start:0x00000D10 end:0x00000D18 diff --git a/config/GMPP01_00/rels/mstory2Dll/symbols.txt b/config/GMPP01_00/rels/mstory2Dll/symbols.txt index 67aae470..331d554e 100644 --- a/config/GMPP01_00/rels/mstory2Dll/symbols.txt +++ b/config/GMPP01_00/rels/mstory2Dll/symbols.txt @@ -5,7 +5,7 @@ _prolog = .text:0x00000344; // type:function size:0x54 scope:global _epilog = .text:0x00000398; // type:function size:0x4C scope:global fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 -fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +ObjectSetup = .text:0x000006AC; // type:function size:0x1B8 fn_1_864 = .text:0x00000864; // type:function size:0x28 fn_1_88C = .text:0x0000088C; // type:function size:0x20 fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 @@ -240,420 +240,420 @@ fn_1_18E7C = .text:0x00018E7C; // type:function size:0x48 fn_1_18EC4 = .text:0x00018EC4; // type:function size:0x274 fn_1_19138 = .text:0x00019138; // type:function size:0x1FC fn_1_19334 = .text:0x00019334; // type:function size:0x6B0 -fn_1_199E4 = .text:0x000199E4; // type:function size:0x248 -fn_1_19C2C = .text:0x00019C2C; // type:function size:0x84 -fn_1_19CB0 = .text:0x00019CB0; // type:function size:0x2A8 -fn_1_19F58 = .text:0x00019F58; // type:function size:0xB4 -fn_1_1A00C = .text:0x0001A00C; // type:function size:0x198 -fn_1_1A1A4 = .text:0x0001A1A4; // type:function size:0x208 -fn_1_1A3AC = .text:0x0001A3AC; // type:function size:0x1D0 -fn_1_1A57C = .text:0x0001A57C; // type:function size:0x40 -fn_1_1A5BC = .text:0x0001A5BC; // type:function size:0x254 -fn_1_1A810 = .text:0x0001A810; // type:function size:0x204 -fn_1_1AA14 = .text:0x0001AA14; // type:function size:0xE4 -fn_1_1AAF8 = .text:0x0001AAF8; // type:function size:0x288 -fn_1_1AD80 = .text:0x0001AD80; // type:function size:0xE4 -fn_1_1AE64 = .text:0x0001AE64; // type:function size:0x1B4 -fn_1_1B018 = .text:0x0001B018; // type:function size:0x110 -fn_1_1B128 = .text:0x0001B128; // type:function size:0x234 -fn_1_1B35C = .text:0x0001B35C; // type:function size:0x8C -fn_1_1B3E8 = .text:0x0001B3E8; // type:function size:0x8C -fn_1_1B474 = .text:0x0001B474; // type:function size:0x130 -fn_1_1B5A4 = .text:0x0001B5A4; // type:function size:0xEC -fn_1_1B690 = .text:0x0001B690; // type:function size:0x224 -fn_1_1B8B4 = .text:0x0001B8B4; // type:function size:0x9C -fn_1_1B950 = .text:0x0001B950; // type:function size:0x50 +fn_1_199A0 = .text:0x000199E4; // type:function size:0x248 +fn_1_19BE8 = .text:0x00019C2C; // type:function size:0x84 +fn_1_19C6C = .text:0x00019CB0; // type:function size:0x2A8 +fn_1_19F14 = .text:0x00019F58; // type:function size:0xB4 +fn_1_19FC8 = .text:0x0001A00C; // type:function size:0x198 +fn_1_1A160 = .text:0x0001A1A4; // type:function size:0x208 +fn_1_1A368 = .text:0x0001A3AC; // type:function size:0x1D0 +fn_1_1A538 = .text:0x0001A57C; // type:function size:0x40 +fn_1_1A578 = .text:0x0001A5BC; // type:function size:0x254 +fn_1_1A7CC = .text:0x0001A810; // type:function size:0x204 +fn_1_1A9D0 = .text:0x0001AA14; // type:function size:0xE4 +fn_1_1AAB4 = .text:0x0001AAF8; // type:function size:0x288 +fn_1_1AD3C = .text:0x0001AD80; // type:function size:0xE4 +fn_1_1AE20 = .text:0x0001AE64; // type:function size:0x1B4 +fn_1_1AFD4 = .text:0x0001B018; // type:function size:0x110 +fn_1_1B0E4 = .text:0x0001B128; // type:function size:0x234 +fn_1_1B318 = .text:0x0001B35C; // type:function size:0x8C +fn_1_1B3A4 = .text:0x0001B3E8; // type:function size:0x8C +fn_1_1B430 = .text:0x0001B474; // type:function size:0x130 +fn_1_1B560 = .text:0x0001B5A4; // type:function size:0xEC +fn_1_1B64C = .text:0x0001B690; // type:function size:0x224 +fn_1_1B870 = .text:0x0001B8B4; // type:function size:0x9C +fn_1_1B90C = .text:0x0001B950; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte -lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:float -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0xC data:4byte -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:0xC data:4byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +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:0xC scope:local data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte -lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string -lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string -lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string -lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 scope:local data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 scope:local data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 scope:local data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 scope:local data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF scope:local lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 -lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string -lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string -lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 scope:local data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 scope:local data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 scope:local data:string jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local -lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string -lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string -lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string -lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string -lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string -lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string -lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string -lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string -lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string -lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A scope:local data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A scope:local data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE scope:local data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 scope:local data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 scope:local data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 scope:local data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 scope:local data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 scope:local data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 scope:local data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 scope:local lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 -lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string -lbl_1_data_399 = .data:0x00000399; // type:object size:0x33 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 scope:local data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 scope:local data:string lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte -lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string -lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string -lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string -lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string -lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string -lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string -lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string -lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string -lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string -lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string -lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string -lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string -lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string -lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 -lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string -lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string -lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string -lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string -lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string -lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string -lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string -lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string -lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string -lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string -lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string -lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string -lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string -lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 scope:local data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 scope:local data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 scope:local data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 scope:local data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 scope:local data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 scope:local data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 scope:local data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 scope:local data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 scope:local data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 scope:local data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 scope:local data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA scope:local data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C scope:local data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D scope:local data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 scope:local +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 scope:local data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 scope:local data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 scope:local data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 scope:local data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 scope:local data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 scope:local data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 scope:local data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 scope:local data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 scope:local data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 scope:local data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA scope:local data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C scope:local data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D scope:local data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 scope:local data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C scope:local data:string lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 lbl_1_data_698 = .data:0x00000698; // type:object size:0x3C -lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string -lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string -lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string -lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string -lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string -lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string -lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string -lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string -lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string -lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string -lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string -lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string -lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string -lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 scope:local data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 scope:local data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 scope:local data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 scope:local data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 scope:local data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 scope:local data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 scope:local data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 scope:local data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 scope:local data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 scope:local data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA scope:local data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C scope:local data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D scope:local data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 scope:local data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C scope:local lbl_1_data_81C = .data:0x0000081C; // type:object size:0x34 lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte -lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string -lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string -lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string -lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string -lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string -lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string -lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string -lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string -lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string -lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string -lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string -lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string -lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string -lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string -lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string -lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string -lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string -lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB -lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string -lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string -lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string -lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string -lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string -lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string -lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string -lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string -lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string -lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string -lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string -lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string -lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string -lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string -lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 scope:local data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 scope:local data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 scope:local data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 scope:local data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 scope:local data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 scope:local data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 scope:local data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 scope:local data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 scope:local data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 scope:local data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 scope:local data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA scope:local data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C scope:local data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D scope:local data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C scope:local data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 scope:local data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 scope:local data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB scope:local +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 scope:local data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 scope:local data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 scope:local data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 scope:local data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 scope:local data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 scope:local data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 scope:local data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 scope:local data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 scope:local data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 scope:local data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA scope:local data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C scope:local data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D scope:local data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 scope:local data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 scope:local lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte -lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string -lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string -lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string -lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string -lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string -lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string -lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string -lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string -lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string -lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string -lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string -lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string -lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string -lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string -lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string -lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string -lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string -lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string -lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string -lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string -lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string -lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 scope:local data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 scope:local data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 scope:local data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 scope:local data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 scope:local data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 scope:local data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 scope:local data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 scope:local data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 scope:local data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 scope:local data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 scope:local data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA scope:local data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C scope:local data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D scope:local data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 scope:local data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 scope:local data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 scope:local data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 scope:local data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 scope:local data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 scope:local data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 scope:local data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 scope:local data:string lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 -lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x24 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x54 data:float lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x10 data:4byte diff --git a/config/GMPP01_00/rels/w06Dll/symbols.txt b/config/GMPP01_00/rels/w06Dll/symbols.txt index 43936054..aad0e22c 100644 --- a/config/GMPP01_00/rels/w06Dll/symbols.txt +++ b/config/GMPP01_00/rels/w06Dll/symbols.txt @@ -3,371 +3,371 @@ _prolog = .text:0x00000030; // type:function size:0x64 scope:global _epilog = .text:0x00000094; // type:function size:0x4C scope:global BoardCreate = .text:0x000000E0; // type:function size:0x4C4 BoardDestroy = .text:0x000005A4; // type:function size:0x18C -fn_1_730 = .text:0x00000730; // type:function size:0x6C -fn_1_79C = .text:0x0000079C; // type:function size:0x20 -fn_1_7BC = .text:0x000007BC; // type:function size:0x144 -fn_1_900 = .text:0x00000900; // type:function size:0x84 -fn_1_984 = .text:0x00000984; // type:function size:0x3C -fn_1_9C0 = .text:0x000009C0; // type:function size:0x168 -fn_1_B28 = .text:0x00000B28; // type:function size:0x34 -fn_1_B5C = .text:0x00000B5C; // type:function size:0x214 +fn_1_730 = .text:0x00000730; // type:function size:0x6C scope:local +fn_1_79C = .text:0x0000079C; // type:function size:0x20 scope:local +fn_1_7BC = .text:0x000007BC; // type:function size:0x144 scope:local +fn_1_900 = .text:0x00000900; // type:function size:0x84 scope:local +fn_1_984 = .text:0x00000984; // type:function size:0x3C scope:local +fn_1_9C0 = .text:0x000009C0; // type:function size:0x168 scope:local +fn_1_B28 = .text:0x00000B28; // type:function size:0x34 scope:local +fn_1_B5C = .text:0x00000B5C; // type:function size:0x214 scope:local fn_1_D70 = .text:0x00000D70; // type:function size:0x1FC fn_1_F6C = .text:0x00000F6C; // type:function size:0xE8 fn_1_1054 = .text:0x00001054; // type:function size:0x90 -fn_1_10E4 = .text:0x000010E4; // type:function size:0x64 -fn_1_1148 = .text:0x00001148; // type:function size:0x68 -fn_1_11B0 = .text:0x000011B0; // type:function size:0xF0 -fn_1_12A0 = .text:0x000012A0; // type:function size:0x32C -fn_1_15CC = .text:0x000015CC; // type:function size:0x614 -fn_1_1BE0 = .text:0x00001BE0; // type:function size:0xD0 -fn_1_1CB0 = .text:0x00001CB0; // type:function size:0xAC -fn_1_1D5C = .text:0x00001D5C; // type:function size:0xD4 -fn_1_1E30 = .text:0x00001E30; // type:function size:0xD8 -fn_1_1F08 = .text:0x00001F08; // type:function size:0x140 -fn_1_2048 = .text:0x00002048; // type:function size:0x84 -fn_1_20CC = .text:0x000020CC; // type:function size:0xA8 -fn_1_2174 = .text:0x00002174; // type:function size:0x58 -fn_1_21CC = .text:0x000021CC; // type:function size:0x54 -fn_1_2220 = .text:0x00002220; // type:function size:0x21C -fn_1_243C = .text:0x0000243C; // type:function size:0x5E0 -fn_1_2A1C = .text:0x00002A1C; // type:function size:0x144 -fn_1_2B60 = .text:0x00002B60; // type:function size:0xB8 -fn_1_2C18 = .text:0x00002C18; // type:function size:0x178 -fn_1_2D90 = .text:0x00002D90; // type:function size:0x40 -fn_1_2DD0 = .text:0x00002DD0; // type:function size:0x48 -fn_1_2E18 = .text:0x00002E18; // type:function size:0xDC -fn_1_2EF4 = .text:0x00002EF4; // type:function size:0x57C -fn_1_3470 = .text:0x00003470; // type:function size:0xF0 -fn_1_3560 = .text:0x00003560; // type:function size:0x5C -fn_1_35BC = .text:0x000035BC; // type:function size:0x48 -fn_1_3604 = .text:0x00003604; // type:function size:0x94 -fn_1_3698 = .text:0x00003698; // type:function size:0x2DC -fn_1_3974 = .text:0x00003974; // type:function size:0x6FC -fn_1_4070 = .text:0x00004070; // type:function size:0xB4 -fn_1_4124 = .text:0x00004124; // type:function size:0x70 -fn_1_4194 = .text:0x00004194; // type:function size:0x118 -fn_1_42AC = .text:0x000042AC; // type:function size:0x130 -fn_1_43DC = .text:0x000043DC; // type:function size:0x84 -fn_1_4460 = .text:0x00004460; // type:function size:0x418 +fn_1_10E4 = .text:0x000010E4; // type:function size:0x64 scope:local +fn_1_1148 = .text:0x00001148; // type:function size:0x68 scope:local +fn_1_11B0 = .text:0x000011B0; // type:function size:0xF0 scope:local +fn_1_12A0 = .text:0x000012A0; // type:function size:0x32C scope:local +fn_1_15CC = .text:0x000015CC; // type:function size:0x614 scope:local +fn_1_1BE0 = .text:0x00001BE0; // type:function size:0xD0 scope:local +fn_1_1CB0 = .text:0x00001CB0; // type:function size:0xAC scope:local +fn_1_1D5C = .text:0x00001D5C; // type:function size:0xD4 scope:local +fn_1_1E30 = .text:0x00001E30; // type:function size:0xD8 scope:local +fn_1_1F08 = .text:0x00001F08; // type:function size:0x140 scope:local +fn_1_2048 = .text:0x00002048; // type:function size:0x84 scope:local +fn_1_20CC = .text:0x000020CC; // type:function size:0xA8 scope:local +fn_1_2174 = .text:0x00002174; // type:function size:0x58 scope:local +fn_1_21CC = .text:0x000021CC; // type:function size:0x54 scope:local +fn_1_2220 = .text:0x00002220; // type:function size:0x21C scope:local +fn_1_243C = .text:0x0000243C; // type:function size:0x5E0 scope:local +fn_1_2A1C = .text:0x00002A1C; // type:function size:0x144 scope:local +fn_1_2B60 = .text:0x00002B60; // type:function size:0xB8 scope:local +fn_1_2C18 = .text:0x00002C18; // type:function size:0x178 scope:local +fn_1_2D90 = .text:0x00002D90; // type:function size:0x40 scope:local +fn_1_2DD0 = .text:0x00002DD0; // type:function size:0x48 scope:local +fn_1_2E18 = .text:0x00002E18; // type:function size:0xDC scope:local +fn_1_2EF4 = .text:0x00002EF4; // type:function size:0x57C scope:local +fn_1_3470 = .text:0x00003470; // type:function size:0xF0 scope:local +fn_1_3560 = .text:0x00003560; // type:function size:0x5C scope:local +fn_1_35BC = .text:0x000035BC; // type:function size:0x48 scope:local +fn_1_3604 = .text:0x00003604; // type:function size:0x94 scope:local +fn_1_3698 = .text:0x00003698; // type:function size:0x2DC scope:local +fn_1_3974 = .text:0x00003974; // type:function size:0x6FC scope:local +fn_1_4070 = .text:0x00004070; // type:function size:0xB4 scope:local +fn_1_4124 = .text:0x00004124; // type:function size:0x70 scope:local +fn_1_4194 = .text:0x00004194; // type:function size:0x118 scope:local +fn_1_42AC = .text:0x000042AC; // type:function size:0x130 scope:local +fn_1_43DC = .text:0x000043DC; // type:function size:0x84 scope:local +fn_1_4460 = .text:0x00004460; // type:function size:0x418 scope:local fn_1_4878 = .text:0x00004878; // type:function size:0x198 fn_1_4A10 = .text:0x00004A10; // type:function size:0x50 fn_1_4A60 = .text:0x00004A60; // type:function size:0xA0 -fn_1_4B00 = .text:0x00004B00; // type:function size:0xA0 -fn_1_4BA0 = .text:0x00004BA0; // type:function size:0x58 -fn_1_4BF8 = .text:0x00004BF8; // type:function size:0x3C0 -fn_1_4FB8 = .text:0x00004FB8; // type:function size:0x1E4 -fn_1_519C = .text:0x0000519C; // type:function size:0x204 -fn_1_53A0 = .text:0x000053A0; // type:function size:0xF0 -fn_1_5490 = .text:0x00005490; // type:function size:0x23C -fn_1_56CC = .text:0x000056CC; // type:function size:0x110 -fn_1_57DC = .text:0x000057DC; // type:function size:0xA0 -fn_1_587C = .text:0x0000587C; // type:function size:0x80 -fn_1_58FC = .text:0x000058FC; // type:function size:0x6C -fn_1_5968 = .text:0x00005968; // type:function size:0x68 -fn_1_59D0 = .text:0x000059D0; // type:function size:0x13C -fn_1_5B0C = .text:0x00005B0C; // type:function size:0x48 -fn_1_5B54 = .text:0x00005B54; // type:function size:0x190 -fn_1_5CE4 = .text:0x00005CE4; // type:function size:0x1D8 -fn_1_5EBC = .text:0x00005EBC; // type:function size:0x40 -fn_1_5EFC = .text:0x00005EFC; // type:function size:0x5C -fn_1_5F58 = .text:0x00005F58; // type:function size:0x114 -fn_1_606C = .text:0x0000606C; // type:function size:0x9A0 -fn_1_6A0C = .text:0x00006A0C; // type:function size:0x240 -fn_1_6C4C = .text:0x00006C4C; // type:function size:0x244 -fn_1_6E90 = .text:0x00006E90; // type:function size:0x60 +fn_1_4B00 = .text:0x00004B00; // type:function size:0xA0 scope:local +fn_1_4BA0 = .text:0x00004BA0; // type:function size:0x58 scope:local +fn_1_4BF8 = .text:0x00004BF8; // type:function size:0x3C0 scope:local +fn_1_4FB8 = .text:0x00004FB8; // type:function size:0x1E4 scope:local +fn_1_519C = .text:0x0000519C; // type:function size:0x204 scope:local +fn_1_53A0 = .text:0x000053A0; // type:function size:0xF0 scope:local +fn_1_5490 = .text:0x00005490; // type:function size:0x23C scope:local +fn_1_56CC = .text:0x000056CC; // type:function size:0x110 scope:local +fn_1_57DC = .text:0x000057DC; // type:function size:0xA0 scope:local +fn_1_587C = .text:0x0000587C; // type:function size:0x80 scope:local +fn_1_58FC = .text:0x000058FC; // type:function size:0x6C scope:local +fn_1_5968 = .text:0x00005968; // type:function size:0x68 scope:local +fn_1_59D0 = .text:0x000059D0; // type:function size:0x13C scope:local +fn_1_5B0C = .text:0x00005B0C; // type:function size:0x48 scope:local +fn_1_5B54 = .text:0x00005B54; // type:function size:0x190 scope:local +fn_1_5CE4 = .text:0x00005CE4; // type:function size:0x1D8 scope:local +fn_1_5EBC = .text:0x00005EBC; // type:function size:0x40 scope:local +fn_1_5EFC = .text:0x00005EFC; // type:function size:0x5C scope:local +fn_1_5F58 = .text:0x00005F58; // type:function size:0x114 scope:local +fn_1_606C = .text:0x0000606C; // type:function size:0x9A0 scope:local +fn_1_6A0C = .text:0x00006A0C; // type:function size:0x240 scope:local +fn_1_6C4C = .text:0x00006C4C; // type:function size:0x244 scope:local +fn_1_6E90 = .text:0x00006E90; // type:function size:0x60 scope:local fn_1_6EF0 = .text:0x00006EF0; // type:function size:0x90 -fn_1_6F80 = .text:0x00006F80; // type:function size:0x290 -fn_1_7210 = .text:0x00007210; // type:function size:0x94 -fn_1_72A4 = .text:0x000072A4; // type:function size:0x28 -fn_1_72CC = .text:0x000072CC; // type:function size:0x120 -fn_1_73EC = .text:0x000073EC; // type:function size:0xD0 -fn_1_74BC = .text:0x000074BC; // type:function size:0xB8 -fn_1_7574 = .text:0x00007574; // type:function size:0x120 -fn_1_7694 = .text:0x00007694; // type:function size:0xEC -fn_1_7780 = .text:0x00007780; // type:function size:0x1E4 -fn_1_7964 = .text:0x00007964; // type:function size:0x26C +fn_1_6F80 = .text:0x00006F80; // type:function size:0x290 scope:local +fn_1_7210 = .text:0x00007210; // type:function size:0x94 scope:local +fn_1_72A4 = .text:0x000072A4; // type:function size:0x28 scope:local +fn_1_72CC = .text:0x000072CC; // type:function size:0x120 scope:local +fn_1_73EC = .text:0x000073EC; // type:function size:0xD0 scope:local +fn_1_74BC = .text:0x000074BC; // type:function size:0xB8 scope:local +fn_1_7574 = .text:0x00007574; // type:function size:0x120 scope:local +fn_1_7674 = .text:0x00007694; // type:function size:0xEC scope:local +fn_1_7760 = .text:0x00007780; // type:function size:0x1E4 scope:local +fn_1_7944 = .text:0x00007964; // type:function size:0x26C scope:local fn_1_7BB0 = .text:0x00007BD0; // type:function size:0x38C fn_1_7F3C = .text:0x00007F5C; // type:function size:0x68 fn_1_7FA4 = .text:0x00007FC4; // type:function size:0x2C0 fn_1_8264 = .text:0x00008284; // type:function size:0xBC -fn_1_8340 = .text:0x00008340; // type:function size:0x100 -fn_1_8440 = .text:0x00008440; // type:function size:0x70 -fn_1_84B0 = .text:0x000084B0; // type:function size:0x5C8 -fn_1_8A78 = .text:0x00008A78; // type:function size:0x4C8 +fn_1_8320 = .text:0x00008340; // type:function size:0x100 scope:local +fn_1_8420 = .text:0x00008440; // type:function size:0x70 scope:local +fn_1_8490 = .text:0x000084B0; // type:function size:0x5C8 scope:local +fn_1_8A58 = .text:0x00008A78; // type:function size:0x4C8 scope:local fn_1_8F20 = .text:0x00008F40; // type:function size:0x2B8 fn_1_91D8 = .text:0x000091F8; // type:function size:0xBC fn_1_9294 = .text:0x000092B4; // type:function size:0x44 fn_1_92D8 = .text:0x000092F8; // type:function size:0xF0 -fn_1_93E8 = .text:0x000093E8; // type:function size:0x10C -fn_1_94F4 = .text:0x000094F4; // type:function size:0xD8 -fn_1_95CC = .text:0x000095CC; // type:function size:0x8B0 -fn_1_9E7C = .text:0x00009E7C; // type:function size:0x5AC -fn_1_A428 = .text:0x0000A428; // type:function size:0x744 -fn_1_AB6C = .text:0x0000AB6C; // type:function size:0x730 -fn_1_B29C = .text:0x0000B29C; // type:function size:0x424 -fn_1_B6C0 = .text:0x0000B6C0; // type:function size:0x240 -fn_1_B900 = .text:0x0000B900; // type:function size:0x230 -fn_1_BB30 = .text:0x0000BB30; // type:function size:0x1F8 -fn_1_BD28 = .text:0x0000BD28; // type:function size:0x3C -fn_1_BD64 = .text:0x0000BD64; // type:function size:0x48 -fn_1_BDAC = .text:0x0000BDAC; // type:function size:0x37C +fn_1_93C8 = .text:0x000093E8; // type:function size:0x10C scope:local +fn_1_94D4 = .text:0x000094F4; // type:function size:0xD8 scope:local +fn_1_95AC = .text:0x000095CC; // type:function size:0x8B0 scope:local +fn_1_9E5C = .text:0x00009E7C; // type:function size:0x5AC scope:local +fn_1_A408 = .text:0x0000A428; // type:function size:0x744 scope:local +fn_1_AB4C = .text:0x0000AB6C; // type:function size:0x730 scope:local +fn_1_B27C = .text:0x0000B29C; // type:function size:0x424 scope:local +fn_1_B6A0 = .text:0x0000B6C0; // type:function size:0x240 scope:local +fn_1_B8E0 = .text:0x0000B900; // type:function size:0x230 scope:local +fn_1_BB10 = .text:0x0000BB30; // type:function size:0x1F8 scope:local +fn_1_BD08 = .text:0x0000BD28; // type:function size:0x3C scope:local +fn_1_BD44 = .text:0x0000BD64; // type:function size:0x48 scope:local +fn_1_BD8C = .text:0x0000BDAC; // type:function size:0x37C scope:local fn_1_C108 = .text:0x0000C128; // type:function size:0x1AC fn_1_C2B4 = .text:0x0000C2D4; // type:function size:0x158 -fn_1_C42C = .text:0x0000C42C; // type:function size:0x5B0 -fn_1_C9DC = .text:0x0000C9DC; // type:function size:0xD0 -fn_1_CAAC = .text:0x0000CAAC; // type:function size:0x40 -fn_1_CAEC = .text:0x0000CAEC; // type:function size:0x1C4 +fn_1_C40C = .text:0x0000C42C; // type:function size:0x5B0 scope:local +fn_1_C9BC = .text:0x0000C9DC; // type:function size:0xD0 scope:local +fn_1_CA8C = .text:0x0000CAAC; // type:function size:0x40 scope:local +fn_1_CACC = .text:0x0000CAEC; // type:function size:0x1C4 scope:local fn_1_CC90 = .text:0x0000CCB0; // type:function size:0x7C fn_1_CD0C = .text:0x0000CD2C; // type:function size:0x398 _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:0x8 data:4byte -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x1 data:byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x1 data:byte -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x6 data:2byte -lbl_1_rodata_9A = .rodata:0x0000009A; // type:object size:0x1 data:byte -lbl_1_rodata_9E = .rodata:0x0000009E; // type:object size:0x6 data:2byte -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x5 -lbl_1_rodata_F5 = .rodata:0x000000F5; // type:object size:0x7 -lbl_1_rodata_FC = .rodata:0x000000FC; // 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:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0xC data:4byte -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0xF0 -lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 data:2byte -lbl_1_data_F2 = .data:0x000000F2; // type:object size:0x2 data:2byte -lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x2 data:2byte -lbl_1_data_F6 = .data:0x000000F6; // type:object size:0x2 data:2byte -lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x8 -lbl_1_data_100 = .data:0x00000100; // type:object size:0x8 -lbl_1_data_108 = .data:0x00000108; // type:object size:0xA0 -lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x2 data:2byte -lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x1 data:byte -lbl_1_data_1AD = .data:0x000001AD; // type:object size:0x3 -lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2 data:2byte -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0xC -lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x5 data:string -lbl_1_data_1C5 = .data:0x000001C5; // type:object size:0x13 -lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 data:2byte -lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 data:2byte -lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x2 data:2byte -lbl_1_data_1DE = .data:0x000001DE; // type:object size:0x6 -lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 -lbl_1_data_208 = .data:0x00000208; // type:object size:0x20 -lbl_1_data_228 = .data:0x00000228; // type:object size:0x1 data:byte -lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 data:2byte -lbl_1_data_22C = .data:0x0000022C; // type:object size:0x2 data:2byte -lbl_1_data_230 = .data:0x00000230; // type:object size:0x38 -lbl_1_data_268 = .data:0x00000268; // type:object size:0x5 data:string -lbl_1_data_26D = .data:0x0000026D; // type:object size:0xE -lbl_1_data_27B = .data:0x0000027B; // type:object size:0x4 -lbl_1_data_27F = .data:0x0000027F; // type:object size:0x8 -lbl_1_data_287 = .data:0x00000287; // type:object size:0x12 data:string -lbl_1_data_299 = .data:0x00000299; // type:object size:0x11 data:string -lbl_1_data_2AA = .data:0x000002AA; // type:object size:0x18 data:string -lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x17 data:string -lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x16 data:string -lbl_1_data_2EF = .data:0x000002EF; // type:object size:0x10 data:string -lbl_1_data_2FF = .data:0x000002FF; // type:object size:0x10 data:string -lbl_1_data_30F = .data:0x0000030F; // type:object size:0x11 data:string -lbl_1_data_320 = .data:0x00000320; // type:object size:0x15 data:string -lbl_1_data_335 = .data:0x00000335; // type:object size:0x15 data:string -lbl_1_data_34A = .data:0x0000034A; // type:object size:0x10 data:string -lbl_1_data_35A = .data:0x0000035A; // type:object size:0x13 data:string -lbl_1_data_36D = .data:0x0000036D; // type:object size:0x13 data:string -lbl_1_data_380 = .data:0x00000380; // type:object size:0x98 -lbl_1_data_418 = .data:0x00000418; // type:object size:0x2 data:2byte -lbl_1_data_41C = .data:0x0000041C; // type:object size:0x18 -lbl_1_data_434 = .data:0x00000434; // type:object size:0x18 -lbl_1_data_44C = .data:0x0000044C; // type:object size:0xC -lbl_1_data_458 = .data:0x00000458; // type:object size:0x20 -lbl_1_data_478 = .data:0x00000478; // type:object size:0x20 -lbl_1_data_498 = .data:0x00000498; // type:object size:0x2 data:2byte -lbl_1_data_49A = .data:0x0000049A; // type:object size:0x2 data:2byte -lbl_1_data_49C = .data:0x0000049C; // type:object size:0x2 data:2byte -lbl_1_data_49E = .data:0x0000049E; // type:object size:0x2 data:2byte -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x2 data:2byte -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x2 data:2byte -lbl_1_data_4A4 = .data:0x000004A4; // type:object size:0x8 -lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x20 -lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x20 -lbl_1_data_4EC = .data:0x000004EC; // type:object size:0x24 -lbl_1_data_510 = .data:0x00000510; // type:object size:0x20 -lbl_1_data_530 = .data:0x00000530; // type:object size:0x6 data:string -lbl_1_data_536 = .data:0x00000536; // type:object size:0xB data:string +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:0x8 scope:local data:4byte +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 scope:local data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x6 scope:local data:2byte +lbl_1_rodata_9A = .rodata:0x0000009A; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_9E = .rodata:0x0000009E; // type:object size:0x6 scope:local data:2byte +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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:0x5 scope:local +lbl_1_rodata_F5 = .rodata:0x000000F5; // type:object size:0x7 scope:local +lbl_1_rodata_FC = .rodata:0x000000FC; // 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:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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:0xC scope:local data:4byte +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // 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_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_data_0 = .data:0x00000000; // type:object size:0xF0 scope:local +lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x2 scope:local data:2byte +lbl_1_data_F2 = .data:0x000000F2; // type:object size:0x2 scope:local data:2byte +lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x2 scope:local data:2byte +lbl_1_data_F6 = .data:0x000000F6; // type:object size:0x2 scope:local data:2byte +lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x8 scope:local +lbl_1_data_100 = .data:0x00000100; // type:object size:0x8 scope:local +lbl_1_data_108 = .data:0x00000108; // type:object size:0xA0 scope:local +lbl_1_data_1A8 = .data:0x000001A8; // type:object size:0x2 scope:local data:2byte +lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x1 scope:local data:byte +lbl_1_data_1AD = .data:0x000001AD; // type:object size:0x3 scope:local +lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x2 scope:local data:2byte +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0xC scope:local +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x5 scope:local data:string +lbl_1_data_1C5 = .data:0x000001C5; // type:object size:0x13 scope:local +lbl_1_data_1D8 = .data:0x000001D8; // type:object size:0x2 scope:local data:2byte +lbl_1_data_1DA = .data:0x000001DA; // type:object size:0x2 scope:local data:2byte +lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x2 scope:local data:2byte +lbl_1_data_1DE = .data:0x000001DE; // type:object size:0x6 scope:local +lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 scope:local +lbl_1_data_208 = .data:0x00000208; // type:object size:0x20 scope:local +lbl_1_data_228 = .data:0x00000228; // type:object size:0x1 scope:local data:byte +lbl_1_data_22A = .data:0x0000022A; // type:object size:0x2 scope:local data:2byte +lbl_1_data_22C = .data:0x0000022C; // type:object size:0x2 scope:local data:2byte +lbl_1_data_230 = .data:0x00000230; // type:object size:0x38 scope:local +lbl_1_data_268 = .data:0x00000268; // type:object size:0x5 scope:local data:string +lbl_1_data_26D = .data:0x0000026D; // type:object size:0xE scope:local +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x4 scope:local +lbl_1_data_27F = .data:0x0000027F; // type:object size:0x8 scope:local +lbl_1_data_287 = .data:0x00000287; // type:object size:0x12 scope:local data:string +lbl_1_data_299 = .data:0x00000299; // type:object size:0x11 scope:local data:string +lbl_1_data_2AA = .data:0x000002AA; // type:object size:0x18 scope:local data:string +lbl_1_data_2C2 = .data:0x000002C2; // type:object size:0x17 scope:local data:string +lbl_1_data_2D9 = .data:0x000002D9; // type:object size:0x16 scope:local data:string +lbl_1_data_2EF = .data:0x000002EF; // type:object size:0x10 scope:local data:string +lbl_1_data_2FF = .data:0x000002FF; // type:object size:0x10 scope:local data:string +lbl_1_data_30F = .data:0x0000030F; // type:object size:0x11 scope:local data:string +lbl_1_data_320 = .data:0x00000320; // type:object size:0x15 scope:local data:string +lbl_1_data_335 = .data:0x00000335; // type:object size:0x15 scope:local data:string +lbl_1_data_34A = .data:0x0000034A; // type:object size:0x10 scope:local data:string +lbl_1_data_35A = .data:0x0000035A; // type:object size:0x13 scope:local data:string +lbl_1_data_36D = .data:0x0000036D; // type:object size:0x13 scope:local data:string +lbl_1_data_380 = .data:0x00000380; // type:object size:0x98 scope:local +lbl_1_data_418 = .data:0x00000418; // type:object size:0x2 scope:local data:2byte +lbl_1_data_41C = .data:0x0000041C; // type:object size:0x18 scope:local +lbl_1_data_434 = .data:0x00000434; // type:object size:0x18 scope:local +lbl_1_data_44C = .data:0x0000044C; // type:object size:0xC scope:local +lbl_1_data_458 = .data:0x00000458; // type:object size:0x20 scope:local +lbl_1_data_478 = .data:0x00000478; // type:object size:0x20 scope:local +lbl_1_data_498 = .data:0x00000498; // type:object size:0x2 scope:local data:2byte +lbl_1_data_49A = .data:0x0000049A; // type:object size:0x2 scope:local data:2byte +lbl_1_data_49C = .data:0x0000049C; // type:object size:0x2 scope:local data:2byte +lbl_1_data_49E = .data:0x0000049E; // type:object size:0x2 scope:local data:2byte +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x2 scope:local data:2byte +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x2 scope:local data:2byte +lbl_1_data_4A4 = .data:0x000004A4; // type:object size:0x8 scope:local +lbl_1_data_4AC = .data:0x000004AC; // type:object size:0x20 scope:local +lbl_1_data_4CC = .data:0x000004CC; // type:object size:0x20 scope:local +lbl_1_data_4EC = .data:0x000004EC; // type:object size:0x24 scope:local +lbl_1_data_510 = .data:0x00000510; // type:object size:0x20 scope:local +lbl_1_data_530 = .data:0x00000530; // type:object size:0x6 scope:local data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0xB scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 scope:local data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0xC data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x1 data:byte -lbl_1_bss_33 = .bss:0x00000033; // type:object size:0x1 data:byte -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 data:2byte -lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x6 -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC data:2byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1 data:byte -lbl_1_bss_59 = .bss:0x00000059; // type:object size:0x1 data:byte -lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x1 data:byte -lbl_1_bss_5B = .bss:0x0000005B; // type:object size:0x31 -lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:4byte -lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x28 data:4byte -lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 data:4byte -lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 data:4byte -lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 data:2byte -lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x4 -lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x1 data:byte -lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 data:4byte -lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 data:4byte -lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x6 -lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0xC -lbl_1_bss_E2 = .bss:0x000000E2; // type:object size:0x2 data:2byte -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 data:2byte -lbl_1_bss_E6 = .bss:0x000000E6; // type:object size:0x1 data:byte -lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 data:4byte -lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x4 data:4byte -lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x4 data:4byte -lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x1 data:byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 scope:local data:byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x1 scope:local data:byte +lbl_1_bss_33 = .bss:0x00000033; // type:object size:0x1 scope:local data:byte +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_36 = .bss:0x00000036; // type:object size:0x6 scope:local +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0xC scope:local data:2byte +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x1 scope:local data:byte +lbl_1_bss_59 = .bss:0x00000059; // type:object size:0x1 scope:local data:byte +lbl_1_bss_5A = .bss:0x0000005A; // type:object size:0x1 scope:local data:byte +lbl_1_bss_5B = .bss:0x0000005B; // type:object size:0x31 scope:local +lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x28 scope:local data:4byte +lbl_1_bss_B8 = .bss:0x000000B8; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_BC = .bss:0x000000BC; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_C0 = .bss:0x000000C0; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_C2 = .bss:0x000000C2; // type:object size:0x4 scope:local +lbl_1_bss_C6 = .bss:0x000000C6; // type:object size:0x1 scope:local data:byte +lbl_1_bss_C8 = .bss:0x000000C8; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_CC = .bss:0x000000CC; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_D0 = .bss:0x000000D0; // type:object size:0x6 scope:local +lbl_1_bss_D6 = .bss:0x000000D6; // type:object size:0xC scope:local +lbl_1_bss_E2 = .bss:0x000000E2; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x2 scope:local data:2byte +lbl_1_bss_E6 = .bss:0x000000E6; // type:object size:0x1 scope:local data:byte +lbl_1_bss_E8 = .bss:0x000000E8; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_EC = .bss:0x000000EC; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_F0 = .bss:0x000000F0; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_F4 = .bss:0x000000F4; // type:object size:0x1 scope:local data:byte diff --git a/config/GMPP01_02/rels/mstory2Dll/splits.txt b/config/GMPP01_02/rels/mstory2Dll/splits.txt index 531cd645..4359ae61 100644 --- a/config/GMPP01_02/rels/mstory2Dll/splits.txt +++ b/config/GMPP01_02/rels/mstory2Dll/splits.txt @@ -5,3 +5,50 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstory2Dll/main.c: + .text start:0x00000000 end:0x00007DB0 + .rodata start:0x00000000 end:0x00000118 + .data start:0x00000000 end:0x000003A0 + .bss start:0x00000000 end:0x00000078 + +REL/mstory2Dll/board_entrance.c: + .text start:0x00007DB0 end:0x0000B37C + .rodata start:0x00000118 end:0x000001A8 + .data start:0x000003A0 end:0x00000520 + .bss start:0x00000078 end:0x00000298 + +REL/mstory2Dll/board_clear.c: + .text start:0x0000B37C end:0x0000E570 + .rodata start:0x000001A8 end:0x00000248 + .data start:0x00000520 end:0x00000698 + .bss start:0x00000298 end:0x000004E0 + +REL/mstory2Dll/board_miss.c: + .text start:0x0000E570 end:0x000123C8 + .rodata start:0x00000248 end:0x00000310 + .data start:0x00000698 end:0x00000850 + .bss start:0x000004E0 end:0x00000790 + +REL/mstory2Dll/mg_clear.c: + .text start:0x000123C8 end:0x00016060 + .rodata start:0x00000310 end:0x000003D0 + .data start:0x00000850 end:0x00000DB8 + .bss start:0x00000790 end:0x00000968 + +REL/mstory2Dll/mg_miss.c: + .text start:0x00016060 end:0x000186D0 + .rodata start:0x000003D0 end:0x00000438 + .data start:0x00000DB8 end:0x00000EF8 + .bss start:0x00000968 end:0x00000B38 + +REL/mstory2Dll/ending.c: + .text start:0x000186D0 end:0x0001B5A4 + .rodata start:0x00000438 end:0x000004B8 + .data start:0x00000EF8 end:0x00001113 + .bss start:0x00000B38 end:0x00000D10 + +REL/mstory2Dll/save.c: + .text start:0x0001B5A4 end:0x0001B9B8 + .rodata start:0x000004B8 end:0x000004C8 + .bss start:0x00000D10 end:0x00000D18 diff --git a/config/GMPP01_02/rels/mstory2Dll/symbols.txt b/config/GMPP01_02/rels/mstory2Dll/symbols.txt index a43c0850..7c85e645 100644 --- a/config/GMPP01_02/rels/mstory2Dll/symbols.txt +++ b/config/GMPP01_02/rels/mstory2Dll/symbols.txt @@ -5,7 +5,7 @@ _prolog = .text:0x00000344; // type:function size:0x54 scope:global _epilog = .text:0x00000398; // type:function size:0x4C scope:global fn_1_3E4 = .text:0x000003E4; // type:function size:0x110 fn_1_4F4 = .text:0x000004F4; // type:function size:0x1B8 -fn_1_6AC = .text:0x000006AC; // type:function size:0x1B8 +ObjectSetup = .text:0x000006AC; // type:function size:0x1B8 fn_1_864 = .text:0x00000864; // type:function size:0x28 fn_1_88C = .text:0x0000088C; // type:function size:0x20 fn_1_8AC = .text:0x000008AC; // type:function size:0xD8 @@ -209,8 +209,8 @@ fn_1_16060 = .text:0x00016060; // type:function size:0x118 fn_1_16178 = .text:0x00016178; // type:function size:0x8C fn_1_16204 = .text:0x00016204; // type:function size:0x3AC fn_1_165B0 = .text:0x000165B0; // type:function size:0x5C -fn_1_1660C = .text:0x0001660C; // type:function size:0x110 -fn_1_1671C = .text:0x0001671C; // type:function size:0x194 +fn_1_1661C = .text:0x0001660C; // type:function size:0x110 +fn_1_1670C = .text:0x0001671C; // type:function size:0x194 fn_1_168B0 = .text:0x000168B0; // type:function size:0xD4 fn_1_16984 = .text:0x00016984; // type:function size:0x50 fn_1_169D4 = .text:0x000169D4; // type:function size:0x4 @@ -240,420 +240,420 @@ fn_1_18E7C = .text:0x00018E7C; // type:function size:0x48 fn_1_18EC4 = .text:0x00018EC4; // type:function size:0x274 fn_1_19138 = .text:0x00019138; // type:function size:0x1FC fn_1_19334 = .text:0x00019334; // type:function size:0x6B0 -fn_1_199E4 = .text:0x000199E4; // type:function size:0x248 -fn_1_19C2C = .text:0x00019C2C; // type:function size:0x84 -fn_1_19CB0 = .text:0x00019CB0; // type:function size:0x2A8 -fn_1_19F58 = .text:0x00019F58; // type:function size:0xB4 -fn_1_1A00C = .text:0x0001A00C; // type:function size:0x198 -fn_1_1A1A4 = .text:0x0001A1A4; // type:function size:0x208 -fn_1_1A3AC = .text:0x0001A3AC; // type:function size:0x1D0 -fn_1_1A57C = .text:0x0001A57C; // type:function size:0x40 -fn_1_1A5BC = .text:0x0001A5BC; // type:function size:0x254 -fn_1_1A810 = .text:0x0001A810; // type:function size:0x204 -fn_1_1AA14 = .text:0x0001AA14; // type:function size:0xE4 -fn_1_1AAF8 = .text:0x0001AAF8; // type:function size:0x288 -fn_1_1AD80 = .text:0x0001AD80; // type:function size:0xE4 -fn_1_1AE64 = .text:0x0001AE64; // type:function size:0x1B4 -fn_1_1B018 = .text:0x0001B018; // type:function size:0x110 -fn_1_1B128 = .text:0x0001B128; // type:function size:0x234 -fn_1_1B35C = .text:0x0001B35C; // type:function size:0x8C -fn_1_1B3E8 = .text:0x0001B3E8; // type:function size:0x8C -fn_1_1B474 = .text:0x0001B474; // type:function size:0x130 -fn_1_1B5A4 = .text:0x0001B5A4; // type:function size:0xEC -fn_1_1B690 = .text:0x0001B690; // type:function size:0x23C -fn_1_1B8CC = .text:0x0001B8CC; // type:function size:0x9C -fn_1_1B968 = .text:0x0001B968; // type:function size:0x50 +fn_1_199A0 = .text:0x000199E4; // type:function size:0x248 +fn_1_19BE8 = .text:0x00019C2C; // type:function size:0x84 +fn_1_19C6C = .text:0x00019CB0; // type:function size:0x2A8 +fn_1_19F14 = .text:0x00019F58; // type:function size:0xB4 +fn_1_19FC8 = .text:0x0001A00C; // type:function size:0x198 +fn_1_1A160 = .text:0x0001A1A4; // type:function size:0x208 +fn_1_1A368 = .text:0x0001A3AC; // type:function size:0x1D0 +fn_1_1A538 = .text:0x0001A57C; // type:function size:0x40 +fn_1_1A578 = .text:0x0001A5BC; // type:function size:0x254 +fn_1_1A7CC = .text:0x0001A810; // type:function size:0x204 +fn_1_1A9D0 = .text:0x0001AA14; // type:function size:0xE4 +fn_1_1AAB4 = .text:0x0001AAF8; // type:function size:0x288 +fn_1_1AD3C = .text:0x0001AD80; // type:function size:0xE4 +fn_1_1AE20 = .text:0x0001AE64; // type:function size:0x1B4 +fn_1_1AFD4 = .text:0x0001B018; // type:function size:0x110 +fn_1_1B0E4 = .text:0x0001B128; // type:function size:0x234 +fn_1_1B318 = .text:0x0001B35C; // type:function size:0x8C +fn_1_1B3A4 = .text:0x0001B3E8; // type:function size:0x8C +fn_1_1B430 = .text:0x0001B474; // type:function size:0x130 +fn_1_1B560 = .text:0x0001B5A4; // type:function size:0xEC +fn_1_1B64C = .text:0x0001B690; // type:function size:0x23C +fn_1_1B870 = .text:0x0001B8CC; // type:function size:0x9C +fn_1_1B90C = .text:0x0001B968; // type:function size:0x50 _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:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC data:4byte -lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC data:4byte -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC data:4byte -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:float -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 data:byte -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0xC data:4byte -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:0xC data:4byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C data:4byte -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 data:byte -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC data:4byte -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 data:byte -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC data:4byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC data:4byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC data:4byte -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 data:byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 data:byte -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC data:4byte -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0xC scope:local data:4byte +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:float +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:4byte +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:0xC scope:local data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte -lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 data:string -lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 data:string -lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 data:string -lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 data:string -lbl_1_data_135 = .data:0x00000135; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x29 scope:local data:string +lbl_1_data_99 = .data:0x00000099; // type:object size:0x26 scope:local data:string +lbl_1_data_BF = .data:0x000000BF; // type:object size:0x25 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x29 scope:local data:string +lbl_1_data_10D = .data:0x0000010D; // type:object size:0x28 scope:local data:string +lbl_1_data_135 = .data:0x00000135; // type:object size:0xF scope:local lbl_1_data_144 = .data:0x00000144; // type:object size:0x18 -lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 data:string -lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 data:string -lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 data:string +lbl_1_data_15C = .data:0x0000015C; // type:object size:0x28 scope:local data:string +lbl_1_data_184 = .data:0x00000184; // type:object size:0x3 scope:local data:string +lbl_1_data_187 = .data:0x00000187; // type:object size:0x15 scope:local data:string jumptable_1_data_19C = .data:0x0000019C; // type:object size:0x54 scope:local jumptable_1_data_1F0 = .data:0x000001F0; // type:object size:0x54 scope:local -lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A data:string -lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A data:string -lbl_1_data_278 = .data:0x00000278; // type:object size:0xE data:string -lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 data:string -lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 data:string -lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 data:string -lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 data:string -lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 data:string -lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 data:string -lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 +lbl_1_data_244 = .data:0x00000244; // type:object size:0x1A scope:local data:string +lbl_1_data_25E = .data:0x0000025E; // type:object size:0x1A scope:local data:string +lbl_1_data_278 = .data:0x00000278; // type:object size:0xE scope:local data:string +lbl_1_data_286 = .data:0x00000286; // type:object size:0x10 scope:local data:string +lbl_1_data_296 = .data:0x00000296; // type:object size:0x10 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x10 scope:local data:string +lbl_1_data_2B6 = .data:0x000002B6; // type:object size:0x10 scope:local data:string +lbl_1_data_2C6 = .data:0x000002C6; // type:object size:0x10 scope:local data:string +lbl_1_data_2D6 = .data:0x000002D6; // type:object size:0x10 scope:local data:string +lbl_1_data_2E6 = .data:0x000002E6; // type:object size:0x10 scope:local data:string +lbl_1_data_2F6 = .data:0x000002F6; // type:object size:0x12 scope:local lbl_1_data_308 = .data:0x00000308; // type:object size:0x20 lbl_1_data_328 = .data:0x00000328; // type:object size:0x60 -lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 data:string -lbl_1_data_399 = .data:0x00000399; // type:object size:0x33 +lbl_1_data_388 = .data:0x00000388; // type:object size:0x11 scope:local data:string +lbl_1_data_399 = .data:0x00000399; // type:object size:0x2 scope:local data:string lbl_1_data_3CC = .data:0x000003CC; // type:object size:0x10 lbl_1_data_3DC = .data:0x000003DC; // type:object size:0x4 data:4byte lbl_1_data_3E0 = .data:0x000003E0; // type:object size:0x8 data:4byte -lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 data:string -lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 data:string -lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 data:string -lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 data:string -lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 data:string -lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 data:string -lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 data:string -lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 data:string -lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 data:string -lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 data:string -lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 data:string -lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA data:string -lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C data:string -lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D data:string -lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 -lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 data:string -lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 data:string -lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 data:string -lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 data:string -lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 data:string -lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 data:string -lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 data:string -lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 data:string -lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 data:string -lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 data:string -lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA data:string -lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C data:string -lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D data:string -lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 data:string -lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C data:string +lbl_1_data_3E8 = .data:0x000003E8; // type:object size:0x14 scope:local data:string +lbl_1_data_3FC = .data:0x000003FC; // type:object size:0x15 scope:local data:string +lbl_1_data_411 = .data:0x00000411; // type:object size:0x14 scope:local data:string +lbl_1_data_425 = .data:0x00000425; // type:object size:0x15 scope:local data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0x14 scope:local data:string +lbl_1_data_44E = .data:0x0000044E; // type:object size:0x15 scope:local data:string +lbl_1_data_463 = .data:0x00000463; // type:object size:0x14 scope:local data:string +lbl_1_data_477 = .data:0x00000477; // type:object size:0x15 scope:local data:string +lbl_1_data_48C = .data:0x0000048C; // type:object size:0x14 scope:local data:string +lbl_1_data_4A0 = .data:0x000004A0; // type:object size:0x15 scope:local data:string +lbl_1_data_4B5 = .data:0x000004B5; // type:object size:0x14 scope:local data:string +lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0xA scope:local data:string +lbl_1_data_4D3 = .data:0x000004D3; // type:object size:0x1C scope:local data:string +lbl_1_data_4EF = .data:0x000004EF; // type:object size:0x1D scope:local data:string +lbl_1_data_50C = .data:0x0000050C; // type:object size:0x14 scope:local +lbl_1_data_520 = .data:0x00000520; // type:object size:0x16 scope:local data:string +lbl_1_data_536 = .data:0x00000536; // type:object size:0x15 scope:local data:string +lbl_1_data_54B = .data:0x0000054B; // type:object size:0x16 scope:local data:string +lbl_1_data_561 = .data:0x00000561; // type:object size:0x15 scope:local data:string +lbl_1_data_576 = .data:0x00000576; // type:object size:0x16 scope:local data:string +lbl_1_data_58C = .data:0x0000058C; // type:object size:0x15 scope:local data:string +lbl_1_data_5A1 = .data:0x000005A1; // type:object size:0x16 scope:local data:string +lbl_1_data_5B7 = .data:0x000005B7; // type:object size:0x15 scope:local data:string +lbl_1_data_5CC = .data:0x000005CC; // type:object size:0x17 scope:local data:string +lbl_1_data_5E3 = .data:0x000005E3; // type:object size:0x16 scope:local data:string +lbl_1_data_5F9 = .data:0x000005F9; // type:object size:0xA scope:local data:string +lbl_1_data_603 = .data:0x00000603; // type:object size:0x1C scope:local data:string +lbl_1_data_61F = .data:0x0000061F; // type:object size:0x1D scope:local data:string +lbl_1_data_63C = .data:0x0000063C; // type:object size:0x10 scope:local data:string +lbl_1_data_64C = .data:0x0000064C; // type:object size:0x1C scope:local data:string lbl_1_data_668 = .data:0x00000668; // type:object size:0x30 lbl_1_data_698 = .data:0x00000698; // type:object size:0x3C -lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 data:string -lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 data:string -lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 data:string -lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 data:string -lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 data:string -lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 data:string -lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 data:string -lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 data:string -lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 data:string -lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 data:string -lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA data:string -lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C data:string -lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D data:string -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 data:string -lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C +lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x16 scope:local data:string +lbl_1_data_6EA = .data:0x000006EA; // type:object size:0x15 scope:local data:string +lbl_1_data_6FF = .data:0x000006FF; // type:object size:0x16 scope:local data:string +lbl_1_data_715 = .data:0x00000715; // type:object size:0x15 scope:local data:string +lbl_1_data_72A = .data:0x0000072A; // type:object size:0x16 scope:local data:string +lbl_1_data_740 = .data:0x00000740; // type:object size:0x15 scope:local data:string +lbl_1_data_755 = .data:0x00000755; // type:object size:0x16 scope:local data:string +lbl_1_data_76B = .data:0x0000076B; // type:object size:0x15 scope:local data:string +lbl_1_data_780 = .data:0x00000780; // type:object size:0x17 scope:local data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x16 scope:local data:string +lbl_1_data_7AD = .data:0x000007AD; // type:object size:0xA scope:local data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x1C scope:local data:string +lbl_1_data_7D3 = .data:0x000007D3; // type:object size:0x1D scope:local data:string +lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x10 scope:local data:string +lbl_1_data_800 = .data:0x00000800; // type:object size:0x1C scope:local lbl_1_data_81C = .data:0x0000081C; // type:object size:0x34 lbl_1_data_850 = .data:0x00000850; // type:object size:0x3C0 lbl_1_data_C10 = .data:0x00000C10; // type:object size:0x10 lbl_1_data_C20 = .data:0x00000C20; // type:object size:0x4 data:4byte lbl_1_data_C24 = .data:0x00000C24; // type:object size:0x8 data:4byte -lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 data:string -lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 data:string -lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 data:string -lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 data:string -lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 data:string -lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 data:string -lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 data:string -lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 data:string -lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 data:string -lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 data:string -lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 data:string -lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA data:string -lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C data:string -lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D data:string -lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C data:string -lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 data:string -lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 data:string -lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB -lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 data:string -lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 data:string -lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 data:string -lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 data:string -lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 data:string -lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 data:string -lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 data:string -lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 data:string -lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 data:string -lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 data:string -lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA data:string -lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C data:string -lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D data:string -lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 data:string -lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 +lbl_1_data_C2C = .data:0x00000C2C; // type:object size:0x14 scope:local data:string +lbl_1_data_C40 = .data:0x00000C40; // type:object size:0x15 scope:local data:string +lbl_1_data_C55 = .data:0x00000C55; // type:object size:0x14 scope:local data:string +lbl_1_data_C69 = .data:0x00000C69; // type:object size:0x15 scope:local data:string +lbl_1_data_C7E = .data:0x00000C7E; // type:object size:0x14 scope:local data:string +lbl_1_data_C92 = .data:0x00000C92; // type:object size:0x15 scope:local data:string +lbl_1_data_CA7 = .data:0x00000CA7; // type:object size:0x14 scope:local data:string +lbl_1_data_CBB = .data:0x00000CBB; // type:object size:0x15 scope:local data:string +lbl_1_data_CD0 = .data:0x00000CD0; // type:object size:0x14 scope:local data:string +lbl_1_data_CE4 = .data:0x00000CE4; // type:object size:0x15 scope:local data:string +lbl_1_data_CF9 = .data:0x00000CF9; // type:object size:0x14 scope:local data:string +lbl_1_data_D0D = .data:0x00000D0D; // type:object size:0xA scope:local data:string +lbl_1_data_D17 = .data:0x00000D17; // type:object size:0x1C scope:local data:string +lbl_1_data_D33 = .data:0x00000D33; // type:object size:0x1D scope:local data:string +lbl_1_data_D50 = .data:0x00000D50; // type:object size:0x1C scope:local data:string +lbl_1_data_D6C = .data:0x00000D6C; // type:object size:0x31 scope:local data:string +lbl_1_data_D9D = .data:0x00000D9D; // type:object size:0x10 scope:local data:string +lbl_1_data_DAD = .data:0x00000DAD; // type:object size:0xB scope:local +lbl_1_data_DB8 = .data:0x00000DB8; // type:object size:0x15 scope:local data:string +lbl_1_data_DCD = .data:0x00000DCD; // type:object size:0x14 scope:local data:string +lbl_1_data_DE1 = .data:0x00000DE1; // type:object size:0x15 scope:local data:string +lbl_1_data_DF6 = .data:0x00000DF6; // type:object size:0x14 scope:local data:string +lbl_1_data_E0A = .data:0x00000E0A; // type:object size:0x15 scope:local data:string +lbl_1_data_E1F = .data:0x00000E1F; // type:object size:0x14 scope:local data:string +lbl_1_data_E33 = .data:0x00000E33; // type:object size:0x15 scope:local data:string +lbl_1_data_E48 = .data:0x00000E48; // type:object size:0x14 scope:local data:string +lbl_1_data_E5C = .data:0x00000E5C; // type:object size:0x15 scope:local data:string +lbl_1_data_E71 = .data:0x00000E71; // type:object size:0x14 scope:local data:string +lbl_1_data_E85 = .data:0x00000E85; // type:object size:0xA scope:local data:string +lbl_1_data_E8F = .data:0x00000E8F; // type:object size:0x1C scope:local data:string +lbl_1_data_EAB = .data:0x00000EAB; // type:object size:0x1D scope:local data:string +lbl_1_data_EC8 = .data:0x00000EC8; // type:object size:0x10 scope:local data:string +lbl_1_data_ED8 = .data:0x00000ED8; // type:object size:0x20 scope:local lbl_1_data_EF8 = .data:0x00000EF8; // type:object size:0x10 lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x4 data:4byte lbl_1_data_F0C = .data:0x00000F0C; // type:object size:0x8 data:4byte lbl_1_data_F14 = .data:0x00000F14; // type:object size:0x4 data:4byte -lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 data:string -lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 data:string -lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 data:string -lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 data:string -lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 data:string -lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 data:string -lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 data:string -lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 data:string -lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 data:string -lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 data:string -lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 data:string -lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA data:string -lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C data:string -lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D data:string -lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 data:string -lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 data:string -lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 data:string -lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 data:string -lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 data:string -lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 data:string -lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 data:string -lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 data:string +lbl_1_data_F18 = .data:0x00000F18; // type:object size:0x14 scope:local data:string +lbl_1_data_F2C = .data:0x00000F2C; // type:object size:0x15 scope:local data:string +lbl_1_data_F41 = .data:0x00000F41; // type:object size:0x14 scope:local data:string +lbl_1_data_F55 = .data:0x00000F55; // type:object size:0x15 scope:local data:string +lbl_1_data_F6A = .data:0x00000F6A; // type:object size:0x14 scope:local data:string +lbl_1_data_F7E = .data:0x00000F7E; // type:object size:0x15 scope:local data:string +lbl_1_data_F93 = .data:0x00000F93; // type:object size:0x14 scope:local data:string +lbl_1_data_FA7 = .data:0x00000FA7; // type:object size:0x15 scope:local data:string +lbl_1_data_FBC = .data:0x00000FBC; // type:object size:0x14 scope:local data:string +lbl_1_data_FD0 = .data:0x00000FD0; // type:object size:0x15 scope:local data:string +lbl_1_data_FE5 = .data:0x00000FE5; // type:object size:0x14 scope:local data:string +lbl_1_data_FF9 = .data:0x00000FF9; // type:object size:0xA scope:local data:string +lbl_1_data_1003 = .data:0x00001003; // type:object size:0x1C scope:local data:string +lbl_1_data_101F = .data:0x0000101F; // type:object size:0x1D scope:local data:string +lbl_1_data_103C = .data:0x0000103C; // type:object size:0x15 scope:local data:string +lbl_1_data_1051 = .data:0x00001051; // type:object size:0x15 scope:local data:string +lbl_1_data_1066 = .data:0x00001066; // type:object size:0x15 scope:local data:string +lbl_1_data_107B = .data:0x0000107B; // type:object size:0x15 scope:local data:string +lbl_1_data_1090 = .data:0x00001090; // type:object size:0x15 scope:local data:string +lbl_1_data_10A5 = .data:0x000010A5; // type:object size:0x15 scope:local data:string +lbl_1_data_10BA = .data:0x000010BA; // type:object size:0x15 scope:local data:string +lbl_1_data_10CF = .data:0x000010CF; // type:object size:0x15 scope:local data:string lbl_1_data_10E4 = .data:0x000010E4; // type:object size:0x20 -lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF data:string +lbl_1_data_1104 = .data:0x00001104; // type:object size:0xF scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x24 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x54 data:float lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x10 data:4byte diff --git a/configure.py b/configure.py index 015fa960..73ab159e 100644 --- a/configure.py +++ b/configure.py @@ -1370,14 +1370,14 @@ config.libs = [ Rel( "mstory2Dll", objects={ - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/main.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_entrance.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_clear.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/board_miss.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/mg_clear.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/mg_miss.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/ending.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory2Dll/save.c"), + Object(Matching, "REL/mstory2Dll/main.c"), + Object(Matching, "REL/mstory2Dll/board_entrance.c"), + Object(Matching, "REL/mstory2Dll/board_clear.c"), + Object(Matching, "REL/mstory2Dll/board_miss.c"), + Object(Matching, "REL/mstory2Dll/mg_clear.c"), + Object(Matching, "REL/mstory2Dll/mg_miss.c"), + Object(Matching, "REL/mstory2Dll/ending.c"), + Object(Matching, "REL/mstory2Dll/save.c"), }, ), Rel( diff --git a/src/REL/mstory2Dll/board_clear.c b/src/REL/mstory2Dll/board_clear.c index b4013800..3073e986 100644 --- a/src/REL/mstory2Dll/board_clear.c +++ b/src/REL/mstory2Dll/board_clear.c @@ -308,21 +308,21 @@ void fn_1_C4C0(void) void fn_1_C574(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660052); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x52)); object->motion[1] = Hu3DMotionIDGet(object->model[1]); Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); fn_1_1DFC(object, 1, 1, 0, 1); - object->model[2] = Hu3DModelCreateFile(0x660053); - object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); - object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x53)); + object->motion[2] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x54)); + object->motion[3] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x55)); fn_1_1DFC(object, 2, 2, 0, 2); - object->model[5] = Hu3DModelCreateFile(0x660059); + object->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x59)); object->motion[5] = Hu3DMotionIDGet(object->model[5]); Hu3DModelPosSet(object->model[5], 0, 80, 460); Hu3DModelAttrSet(object->model[5], 1); Hu3DModelShadowSet(object->model[5]); fn_1_1DFC(object, 5, 5, 0, 2); - object->model[6] = Hu3DModelCreateFile(0x66005A); + object->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x5A)); object->motion[6] = Hu3DMotionIDGet(object->model[6]); Hu3DModelHookSet(object->model[5], "koopasgbox_fix-effect_fook2", object->model[6]); Hu3DModelAttrSet(object->model[6], 1); @@ -354,10 +354,10 @@ void fn_1_C858(void) void fn_1_CB0C(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660062); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660066); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660069); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x62 : 0x66)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x63 : 0x67)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x66 : 0x6A)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x69 : 0x6C)); Hu3DModelPosSet(object->model[1], 0, 0, 150); Hu3DModelRotSet(object->model[1], 0, 0, 0); Hu3DModelScaleSet(object->model[1], 1.25f, 1.25f, 1.25f); @@ -404,12 +404,12 @@ void fn_1_CD78(void) void fn_1_D030(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x66007D); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660080); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660081); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660084); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660085); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7D : 0x7B)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7E : 0x7C)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x80 : 0x7D)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x81 : 0x7E)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x84 : 0x7F)); + object->motion[5] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x85 : 0x80)); Hu3DModelPosSet(object->model[1], -300, 0, 890); Hu3DModelRotSet(object->model[1], 0, 30, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -518,7 +518,7 @@ void fn_1_D898(omObjData *object, int player) Hu3DModelScaleSet(object->model[1], 1, 1, 1); Hu3DModelShadowSet(object->model[1]); fn_1_1DFC(object, 1, 1, 0, 1); - object->model[2] = Hu3DModelCreateFile(0x660056); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x56)); Hu3DModelPosSet( object->model[2], lbl_1_data_668[playerNo].x, lbl_1_data_668[lbl_1_bss_3DC.unk30[playerNo].unk18 - 1].y, lbl_1_data_668[playerNo].z); if (lbl_1_bss_3DC.unk30[playerNo].unk18 == 4) { diff --git a/src/REL/mstory2Dll/board_entrance.c b/src/REL/mstory2Dll/board_entrance.c index c1b93643..e69abcfd 100644 --- a/src/REL/mstory2Dll/board_entrance.c +++ b/src/REL/mstory2Dll/board_entrance.c @@ -16,7 +16,6 @@ #include "game/window.h" #include "game/wipe.h" - typedef struct { /* 0x000 */ s32 unk00; /* 0x004 */ s32 unk04; @@ -382,15 +381,15 @@ void fn_1_9768(void) void fn_1_981C(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660050); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x50)); object->motion[0] = Hu3DMotionIDGet(object->model[1]); fn_1_1DFC(object, 1, 0, 0, 2); Hu3DModelShadowMapObjSet(object->model[1], "base_fix9-base"); - object->model[2] = Hu3DModelCreateFile(0x660053); - object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); - object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x53)); + object->motion[2] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x54)); + object->motion[3] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x55)); fn_1_1DFC(object, 2, 3, 0, 2); - object->model[4] = Hu3DModelCreateFile(0x660051); + object->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x51)); } void fn_1_9954(omObjData *arg0, StructBss16C *arg1) @@ -441,10 +440,10 @@ void fn_1_9CB8(omObjData *object) object->model[1] = CharModelCreate(charNo, 1); object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x35)); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660018 + charNo); - object->motion[7] = Hu3DJointMotionFile(object->model[1], 0x660048 + charNo); - object->motion[8] = Hu3DJointMotionFile(object->model[1], 0x660040 + charNo); - object->motion[9] = Hu3DJointMotionFile(object->model[1], 0x660020 + charNo); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x18) + charNo); + object->motion[7] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x48) + charNo); + object->motion[8] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x40) + charNo); + object->motion[9] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x20) + charNo); object->motion[10] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x12)); CharModelMotionDataClose(charNo); Hu3DModelPosSet(object->model[1], 120, 0, 800); @@ -488,13 +487,13 @@ void fn_1_9FDC(void) void fn_1_A288(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660072); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660073); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660075); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660076); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x66007A); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x66007B); - object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660079); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x72 : 0x73)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x73 : 0x74)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x75)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x76)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7A : 0x78)); + object->motion[5] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7B : 0x79)); + object->motion[6] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x79 : 0x77)); Hu3DModelPosSet(object->model[1], 0, 0, 460); Hu3DModelRotSet(object->model[1], 0, 0, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -532,15 +531,15 @@ void fn_1_A58C(void) void fn_1_A848(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660062); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660065); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660066); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660069); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660068); - object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x66006C); - object->motion[7] = Hu3DJointMotionFile(object->model[1], 0x66006D); - object->motion[8] = Hu3DJointMotionFile(object->model[1], 0x660064); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x62 : 0x66)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x63 : 0x67)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x65 : 0x69)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x66 : 0x6A)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x69 : 0x6C)); + object->motion[5] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x68 : 0x6B)); + object->motion[6] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x6C : 0x6D)); + object->motion[7] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x6D : 0x6E)); + object->motion[8] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x64 : 0x68)); Hu3DModelPosSet(object->model[1], -120, 0, 800); Hu3DModelRotSet(object->model[1], 0, 90, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); diff --git a/src/REL/mstory2Dll/board_miss.c b/src/REL/mstory2Dll/board_miss.c index 89c73938..c509b9d0 100644 --- a/src/REL/mstory2Dll/board_miss.c +++ b/src/REL/mstory2Dll/board_miss.c @@ -471,21 +471,21 @@ void fn_1_FDFC(void) void fn_1_FEB0(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660052); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x52)); object->motion[1] = Hu3DMotionIDGet(object->model[1]); Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); fn_1_1DFC(object, 1, 1, 0, 1); - object->model[2] = Hu3DModelCreateFile(0x660053); - object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); - object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x53)); + object->motion[2] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x54)); + object->motion[3] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x55)); fn_1_1DFC(object, 2, 2, 0, 2); - object->model[5] = Hu3DModelCreateFile(0x660057); + object->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x57)); object->motion[5] = Hu3DMotionIDGet(object->model[5]); Hu3DModelPosSet(object->model[5], 0, 80, 460); Hu3DModelAttrSet(object->model[5], 1); Hu3DModelShadowSet(object->model[5]); fn_1_1DFC(object, 5, 5, 0, 2); - object->model[6] = Hu3DModelCreateFile(0x660058); + object->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x58)); object->motion[6] = Hu3DMotionIDGet(object->model[6]); Hu3DModelHookSet(object->model[5], "koopabox_fix-effect_fook2", object->model[6]); Hu3DModelAttrSet(object->model[6], 1); @@ -517,11 +517,11 @@ void fn_1_10194(void) void fn_1_10448(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660062); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660065); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660069); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660066); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x62 : 0x66)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x63 : 0x67)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x65 : 0x69)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x69 : 0x6C)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x66 : 0x6A)); Hu3DModelPosSet(object->model[1], -180, 0, 800); Hu3DModelRotSet(object->model[1], 0, 60, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -598,12 +598,12 @@ void fn_1_1094C(void) void fn_1_10C00(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x66007D); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660080); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660081); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660084); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660085); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7D : 0x7B)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7E : 0x7C)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x80 : 0x7D)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x81 : 0x7E)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x84 : 0x7F)); + object->motion[5] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x85 : 0x80)); Hu3DModelPosSet(object->model[1], -300, 0, 890); Hu3DModelRotSet(object->model[1], 0, 30, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -714,7 +714,7 @@ void fn_1_1154C(omObjData *object, int player) object->motion[3] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05)); object->motion[4] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x1A)); object->motion[5] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x6D)); - object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660018 + charNo); + object->motion[6] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x18) + charNo); CharModelMotionDataClose(charNo); Hu3DModelPosSet( object->model[1], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18 - 1].y + 90, lbl_1_data_81C[playerNo].z); @@ -722,7 +722,7 @@ void fn_1_1154C(omObjData *object, int player) Hu3DModelScaleSet(object->model[1], 1, 1, 1); Hu3DModelShadowSet(object->model[1]); fn_1_1DFC(object, 1, 1, 0, 1); - object->model[2] = Hu3DModelCreateFile(0x660056); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x56)); Hu3DModelPosSet( object->model[2], lbl_1_data_81C[playerNo].x, lbl_1_data_81C[lbl_1_bss_688.unk30[playerNo].unk18 - 1].y, lbl_1_data_81C[playerNo].z); if (lbl_1_bss_688.unk30[playerNo].unk18 == 4) { diff --git a/src/REL/mstory2Dll/ending.c b/src/REL/mstory2Dll/ending.c index 5e1a9b17..c8adbc76 100644 --- a/src/REL/mstory2Dll/ending.c +++ b/src/REL/mstory2Dll/ending.c @@ -9,6 +9,7 @@ #include "game/hsfanim.h" #include "game/hsfman.h" #include "game/hsfmotion.h" +#include "game/memory.h" #include "game/minigame_seq.h" #include "game/objsub.h" #include "game/pad.h" @@ -17,6 +18,11 @@ #include "game/window.h" #include "game/wipe.h" +#ifndef __MWERKS__ +#include "game/audio.h" +#include "game/saveload.h" +#include "game/thpmain.h" +#endif typedef struct { /* 0x000 */ s32 unk00; @@ -308,15 +314,36 @@ void fn_1_19334(void) fn_1_BE8(60); { int time = 0; +#if VERSION_PAL + s32 languageOffset = 0; +#endif int gid = HuSprGrpCreate(3); int sprid = HuTHPSprCreate(lbl_1_data_10E4[lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10], FALSE, 1000); HuSprGrpMemberSet(gid, 0, sprid); HuSprPosSet(gid, 0, 288, 240); - sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(0x660060, 0x10000000)), 950, 0); +#if VERSION_PAL + switch (GWGameStat.language) { + case 2: + languageOffset = 1; + break; + case 3: + languageOffset = 2; + break; + case 4: + languageOffset = 3; + break; + case 5: + languageOffset = 4; + break; + } + sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x60) + languageOffset, MEMORY_DEFAULT_NUM)), 950, 0); +#else + sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x60), MEMORY_DEFAULT_NUM)), 950, 0); +#endif HuSprGrpMemberSet(gid, 1, sprid); HuSprPosSet(gid, 1, 288, 226); HuSprAttrSet(gid, 1, HUSPR_ATTR_DISPOFF); - sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(0x660061, 0x10000000)), 950, 0); + sprid = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x61 : 0x65), MEMORY_DEFAULT_NUM)), 950, 0); HuSprGrpMemberSet(gid, 2, sprid); HuSprBankSet(gid, 2, lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10); if (GWLanguageGet() == 0 && lbl_1_bss_C0C.unk30[lbl_1_bss_C0C.unk00].unk10 == 5) { @@ -331,7 +358,7 @@ void fn_1_19334(void) HuPrcVSleep(); } while (!HuTHPEndCheck()) { - if (time >= 3300) { + if (time >= (VERSION_NTSC ? 3300 : 2725)) { HuSprAttrReset(gid, 1, HUSPR_ATTR_DISPOFF); HuSprAttrReset(gid, 2, HUSPR_ATTR_DISPOFF); } @@ -455,17 +482,17 @@ void fn_1_19F14(void) void fn_1_19FC8(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660050); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x50)); object->motion[0] = Hu3DMotionIDGet(object->model[1]); fn_1_1DFC(object, 1, 0, 0, 2); Hu3DModelShadowMapObjSet(object->model[1], "base_fix9-base"); Hu3DModelAttrSet(object->model[1], 1); - object->model[2] = Hu3DModelCreateFile(0x660053); - object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); - object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x53)); + object->motion[2] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x54)); + object->motion[3] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x55)); Hu3DModelAttrSet(object->model[2], 1); fn_1_1DFC(object, 2, 3, 0, 2); - object->model[4] = Hu3DModelCreateFile(0x660051); + object->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x51)); Hu3DModelAttrSet(object->model[4], 1); Hu3DModelPosSet(object->model[1], 0, -1000, 0); } @@ -486,10 +513,10 @@ void fn_1_1A160(void) void fn_1_1A368(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660062); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660070); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660071); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x62 : 0x66)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x63 : 0x67)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x70 : 0x71)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x71 : 0x72)); Hu3DModelPosSet(object->model[1], 0, 0, 600); Hu3DModelRotSet(object->model[1], 0, 180, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -524,12 +551,12 @@ void fn_1_1A578(void) void fn_1_1A7CC(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660072); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660073); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660075); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660076); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x66007C); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660079); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x72 : 0x73)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x73 : 0x74)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x75)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x76)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7C : 0x7A)); + object->motion[5] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x79 : 0x77)); Hu3DModelPosSet(object->model[1], 0, 0, 460); Hu3DModelRotSet(object->model[1], 0, 0, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -590,8 +617,8 @@ void fn_1_1AE20(omObjData *object) object->model[1] = CharModelCreate(charNo, 1); object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x35)); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660010 + charNo); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660008 + charNo); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x10) + charNo); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x08) + charNo); CharModelMotionDataClose(charNo); Hu3DModelPosSet(object->model[1], 120, 0, 800); Hu3DModelRotSet(object->model[1], 0, -135, 0); diff --git a/src/REL/mstory2Dll/main.c b/src/REL/mstory2Dll/main.c index 058b2e4e..73dcc832 100644 --- a/src/REL/mstory2Dll/main.c +++ b/src/REL/mstory2Dll/main.c @@ -1235,4 +1235,8 @@ void fn_1_7384(int modelId, int charNo, float ofs, s32 maxTime, BOOL flag) Hu3DMotionNoMotReset(modelId, "c002m1-ske_hair1", lbl_1_data_328[charNo][0]); } } -} \ No newline at end of file +} + +#if VERSION_PAL +// lbl_1_data_399 +#endif diff --git a/src/REL/mstory2Dll/mg_clear.c b/src/REL/mstory2Dll/mg_clear.c index 524869fe..c06762b9 100644 --- a/src/REL/mstory2Dll/mg_clear.c +++ b/src/REL/mstory2Dll/mg_clear.c @@ -497,24 +497,24 @@ void fn_1_13C6C(omObjData *object) Hu3DModelShadowSet(object->model[7]); fn_1_1DFC(object, 7, 7, 0, 2); HuDataDirClose(DATADIR_MSTORY4); - object->model[1] = Hu3DModelCreateFile(0x660052); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x52)); object->motion[1] = Hu3DMotionIDGet(object->model[1]); Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); fn_1_1DFC(object, 1, 1, 0, 1); - object->model[2] = Hu3DModelCreateFile(0x660053); - object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); - object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x53)); + object->motion[2] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x54)); + object->motion[3] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x55)); fn_1_1DFC(object, 2, 3, 0, 2); - object->model[5] = Hu3DModelCreateFile(0x66005B); + object->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x5B)); Hu3DModelPosSet(object->model[5], 0, 125, 800); Hu3DModelAttrSet(object->model[5], 1); Hu3DModelShadowSet(object->model[5]); - object->model[6] = Hu3DModelCreateFile(0x66005D); + object->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x5D)); object->motion[6] = Hu3DMotionIDGet(object->model[6]); Hu3DModelPosSet(object->model[6], 25, 125, 900); Hu3DModelAttrSet(object->model[6], 1); fn_1_1DFC(object, 6, 6, 0, 2); - object->model[8] = Hu3DModelCreateFile(0x66005F); + object->model[8] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x5F)); object->motion[8] = Hu3DMotionIDGet(object->model[8]); Hu3DModelAttrSet(object->model[8], 1); fn_1_1DFC(object, 8, 8, 0, 1); @@ -586,12 +586,12 @@ void fn_1_1449C(void) void fn_1_14868(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660062); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660064); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x66006E); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x66006F); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660069); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x62 : 0x66)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x63 : 0x67)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x64 : 0x68)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x6E : 0x6F)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x6F : 0x70)); + object->motion[5] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x69 : 0x6C)); Hu3DModelPosSet(object->model[1], -180, 0, 800); Hu3DModelRotSet(object->model[1], 0, 60, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -650,11 +650,11 @@ void fn_1_14C40(void) void fn_1_14F6C(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x66007D); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660080); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660081); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660086); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7D : 0x7B)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7E : 0x7C)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x80 : 0x7D)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x81 : 0x7E)); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x86 : 0x81)); Hu3DModelPosSet(object->model[1], -600, 0, 800); Hu3DModelRotSet(object->model[1], 0, 60, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); @@ -741,10 +741,10 @@ void fn_1_1574C(omObjData *object) object->model[1] = CharModelCreate(charNo, 1); object->motion[1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); object->motion[2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02)); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660028 + charNo); - object->motion[4] = Hu3DJointMotionFile(object->model[1], 0x660030 + charNo); - object->motion[5] = Hu3DJointMotionFile(object->model[1], 0x660038 + charNo); - object->motion[6] = Hu3DJointMotionFile(object->model[1], 0x660000 + charNo); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x28) + charNo); + object->motion[4] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x30) + charNo); + object->motion[5] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x38) + charNo); + object->motion[6] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x00) + charNo); CharModelMotionDataClose(charNo); Hu3DModelPosSet(object->model[1], 120, 0, 800); Hu3DModelRotSet(object->model[1], 0, -60, 0); diff --git a/src/REL/mstory2Dll/mg_miss.c b/src/REL/mstory2Dll/mg_miss.c index cc329a56..e7bf2b00 100644 --- a/src/REL/mstory2Dll/mg_miss.c +++ b/src/REL/mstory2Dll/mg_miss.c @@ -264,20 +264,20 @@ void fn_1_16FC0(void) void fn_1_17074(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660052); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x52)); object->motion[1] = Hu3DMotionIDGet(object->model[1]); Hu3DModelShadowMapObjSet(object->model[1], "base_story-base"); fn_1_1DFC(object, 1, 1, 0, 1); - object->model[2] = Hu3DModelCreateFile(0x660053); - object->motion[2] = Hu3DJointMotionFile(object->model[2], 0x660054); - object->motion[3] = Hu3DJointMotionFile(object->model[2], 0x660055); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x53)); + object->motion[2] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x54)); + object->motion[3] = Hu3DJointMotionFile(object->model[2], DATA_MAKE_NUM(DATADIR_MSTORY2, 0x55)); fn_1_1DFC(object, 2, 2, 0, 2); - object->model[5] = Hu3DModelCreateFile(0x660059); + object->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x59)); object->motion[5] = Hu3DMotionIDGet(object->model[5]); Hu3DModelPosSet(object->model[5], 0, 80, 460); Hu3DModelShadowSet(object->model[5]); fn_1_1DFC(object, 5, 5, 0, 2); - object->model[6] = Hu3DModelCreateFile(0x66005A); + object->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, 0x5A)); object->motion[6] = Hu3DMotionIDGet(object->model[6]); Hu3DModelHookSet(object->model[5], "koopasgbox_fix-effect_fook2", object->model[6]); fn_1_1DFC(object, 6, 6, 0, 2); @@ -308,10 +308,10 @@ void fn_1_17338(void) void fn_1_175CC(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x660062); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x660063); - object->motion[2] = Hu3DJointMotionFile(object->model[1], 0x660066); - object->motion[3] = Hu3DJointMotionFile(object->model[1], 0x660069); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x62 : 0x66)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x63 : 0x67)); + object->motion[2] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x66 : 0x6A)); + object->motion[3] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x69 : 0x6C)); Hu3DModelPosSet(object->model[1], 0, 0, 200); Hu3DModelRotSet(object->model[1], 0, 0, 0); Hu3DModelScaleSet(object->model[1], 1.6f, 1.6f, 1.6f); @@ -356,8 +356,8 @@ void fn_1_177F8(void) void fn_1_17A70(omObjData *object) { - object->model[1] = Hu3DModelCreateFile(0x66007D); - object->motion[1] = Hu3DJointMotionFile(object->model[1], 0x66007E); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7D : 0x7B)); + object->motion[1] = Hu3DJointMotionFile(object->model[1], DATA_MAKE_NUM(DATADIR_MSTORY2, VERSION_NTSC ? 0x7E : 0x7C)); Hu3DModelPosSet(object->model[1], -120, 0, 800); Hu3DModelRotSet(object->model[1], 0, 135, 0); Hu3DModelScaleSet(object->model[1], 1, 1, 1); diff --git a/src/REL/mstory2Dll/save.c b/src/REL/mstory2Dll/save.c index 8bdf3535..cc52073c 100644 --- a/src/REL/mstory2Dll/save.c +++ b/src/REL/mstory2Dll/save.c @@ -74,7 +74,10 @@ void fn_1_1B64C(void) HuWinExAnimOut(var_r31); HuWinExCleanup(var_r31); if (SLSaveFlagGet() == 1 && temp_r30 == 0) { - if(omovlstat) { +#if VERSION_REV1 + GWGameStat.story_continue = 1; +#endif + if (omovlstat) { GWGameStat.story_continue = 0; } SLCommonSet(); @@ -100,9 +103,10 @@ void fn_1_1B870(void) do { fn_1_BC8(); } while (lbl_1_bss_D14 != 1); - if(omovlstat == 0) { + if (omovlstat == 0) { omOvlGotoEx(OVL_MSTORY2, 1, 4, 0); - } else { + } + else { omOvlReturnEx(omovlhisidx, 1); } HuPrcEnd(); From a79294aac0d319b07486377a1a9ad82a354bc779 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sun, 12 Jan 2025 04:12:01 +0100 Subject: [PATCH 116/178] Match m433Dll main.c and map.c (#524) * Match m433Dll main.c and map.c * Delete accidental lines from mstory2 --- config/GMPE01_00/rels/m433Dll/symbols.txt | 599 ++++++++-------- configure.py | 4 +- include/REL/m433Dll.h | 43 ++ src/REL/m433Dll/main.c | 476 +++++++++++++ src/REL/m433Dll/map.c | 827 ++++++++++++++++++++++ src/REL/mstory2Dll/main.c | 4 - 6 files changed, 1649 insertions(+), 304 deletions(-) create mode 100644 include/REL/m433Dll.h create mode 100644 src/REL/m433Dll/main.c create mode 100644 src/REL/m433Dll/map.c diff --git a/config/GMPE01_00/rels/m433Dll/symbols.txt b/config/GMPE01_00/rels/m433Dll/symbols.txt index 528cefb2..df299b4f 100644 --- a/config/GMPE01_00/rels/m433Dll/symbols.txt +++ b/config/GMPE01_00/rels/m433Dll/symbols.txt @@ -119,287 +119,287 @@ fn_1_11098 = .text:0x00011098; // type:function size:0x98 fn_1_11130 = .text:0x00011130; // type:function size:0x1B0 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x10 data:4byte -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:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0xC0 -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -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:0x8 data:double -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_214 = .rodata:0x00000214; // 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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 data:4byte -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 data:4byte -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 data:4byte -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 data:4byte -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 data:4byte -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:4byte -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 data:double -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x24 data:4byte -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:4byte -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x8 data:4byte -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:4byte -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float -lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float -lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float -lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float -lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float -lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float -lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float -lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float -lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float -lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 data:float -lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x4 data:float -lbl_1_rodata_674 = .rodata:0x00000674; // type:object size:0x4 data:float -lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float -lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 data:float -lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float -lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float -lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 data:float -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double -lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float -lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float -lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float -lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float -lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x8 data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x10 scope:local data:4byte +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:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0xC0 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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_214 = .rodata:0x00000214; // 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_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 scope:local data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 scope:local data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 scope:local data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 scope:local data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 scope:local data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 scope:local data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 scope:local data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 scope:local data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 scope:local data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 scope:local data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 scope:local data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 scope:local data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 scope:local data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 scope:local data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 scope:local data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 scope:local data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 scope:local data:float +lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x4 scope:local data:float +lbl_1_rodata_674 = .rodata:0x00000674; // type:object size:0x4 scope:local data:float +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 scope:local data:float +lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 scope:local data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 scope:local data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 scope:local data:float +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 scope:local data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 scope:local data:float +lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x8 scope:local data:double 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:0xC data:float @@ -421,26 +421,26 @@ lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x44 lbl_1_data_208 = .data:0x00000208; // type:object size:0x44 lbl_1_data_24C = .data:0x0000024C; // type:object size:0x1A4 lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x38 -lbl_1_data_428 = .data:0x00000428; // type:object size:0x9 data:string -lbl_1_data_431 = .data:0x00000431; // type:object size:0x9 data:string -lbl_1_data_43A = .data:0x0000043A; // type:object size:0xB data:string -lbl_1_data_445 = .data:0x00000445; // type:object size:0xB data:string +lbl_1_data_428 = .data:0x00000428; // type:object size:0x9 scope:local data:string +lbl_1_data_431 = .data:0x00000431; // type:object size:0x9 scope:local data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0xB scope:local data:string +lbl_1_data_445 = .data:0x00000445; // type:object size:0xB scope:local data:string lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 lbl_1_data_468 = .data:0x00000468; // type:object size:0x24 lbl_1_data_48C = .data:0x0000048C; // type:object size:0x48 lbl_1_data_4D4 = .data:0x000004D4; // type:object size:0x6C lbl_1_data_540 = .data:0x00000540; // type:object size:0x24 -lbl_1_data_564 = .data:0x00000564; // type:object size:0x2 data:string -lbl_1_data_566 = .data:0x00000566; // type:object size:0x15 data:string -lbl_1_data_57B = .data:0x0000057B; // type:object size:0x15 data:string -lbl_1_data_590 = .data:0x00000590; // type:object size:0x15 data:string -lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x15 data:string -lbl_1_data_5BA = .data:0x000005BA; // type:object size:0x18 data:string -lbl_1_data_5D2 = .data:0x000005D2; // type:object size:0x18 data:string -lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 data:string -lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 data:string -lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 data:string -lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 data:string +lbl_1_data_564 = .data:0x00000564; // type:object size:0x2 scope:local data:string +lbl_1_data_566 = .data:0x00000566; // type:object size:0x15 scope:local data:string +lbl_1_data_57B = .data:0x0000057B; // type:object size:0x15 scope:local data:string +lbl_1_data_590 = .data:0x00000590; // type:object size:0x15 scope:local data:string +lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x15 scope:local data:string +lbl_1_data_5BA = .data:0x000005BA; // type:object size:0x18 scope:local data:string +lbl_1_data_5D2 = .data:0x000005D2; // type:object size:0x18 scope:local data:string +lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 scope:local data:string +lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 scope:local data:string +lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 scope:local data:string +lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 scope:local data:string lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 jumptable_1_data_654 = .data:0x00000654; // type:object size:0x20 scope:local lbl_1_data_674 = .data:0x00000674; // type:object size:0xC @@ -458,10 +458,13 @@ lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xA data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:2byte lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0xC data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x6F0 lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x80 diff --git a/configure.py b/configure.py index 73ab159e..545739bb 100644 --- a/configure.py +++ b/configure.py @@ -1108,8 +1108,8 @@ config.libs = [ Rel( "m433Dll", # Beach Volley Folly objects={ - Object(NonMatching, "REL/m433Dll/main.c"), - Object(NonMatching, "REL/m433Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m433Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m433Dll/map.c"), Object(NonMatching, "REL/m433Dll/player.c"), }, ), diff --git a/include/REL/m433Dll.h b/include/REL/m433Dll.h new file mode 100644 index 00000000..e2a18da8 --- /dev/null +++ b/include/REL/m433Dll.h @@ -0,0 +1,43 @@ +#ifndef M4303LL_H +#define M4303LL_H + +#include "game/object.h" + +typedef struct M433DllWork { + u32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + s32 unk_14; + s32 unk_18; + u32 unk_1C; + u32 unk_20; + s32 unk_24; + u32 unk_28; + s32 unk_2C[2]; + u32 unk_34; + s32 unk_38; + s32 unk_3C; +} M433DllWork; /* size = 0x40 */ + +void fn_1_584(omObjData *object); +void fn_1_618(omObjData *object); +s32 fn_1_216C(void); +s32 fn_1_2184(void); +void fn_1_219C(s32 arg0, s32 arg1, s32 arg2); +void fn_1_21E4(s32 arg0); +void fn_1_2214(s32 arg0); +s32 fn_1_2244(void); +float fn_1_26C4(float arg8, float arg9, float argA); + +void fn_1_2894(Process *process); +void fn_1_2984(void); +omObjFunc fn_1_29A4(Process *process, omObjData *object); +void fn_1_58D8(s32); + +void fn_1_5904(Process *process); +void fn_1_5B74(void); +s32 fn_1_10FA4(s32 arg0); + +#endif diff --git a/src/REL/m433Dll/main.c b/src/REL/m433Dll/main.c new file mode 100644 index 00000000..6e8975db --- /dev/null +++ b/src/REL/m433Dll/main.c @@ -0,0 +1,476 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m433Dll.h" + +void fn_1_4C0(omObjData *object); +void fn_1_618(omObjData *object); +void fn_1_798(omObjData *object); +void fn_1_AD4(omObjData *object); +void fn_1_E2C(omObjData *object); +void fn_1_1040(omObjData *object); +void fn_1_13FC(omObjData *object); +void fn_1_16D0(omObjData *object); +omObjFunc fn_1_1A3C(Process *process, omObjData *object); +void fn_1_1A48(omObjData *object); +float fn_1_26C4(float arg8, float arg9, float argA); + +Vec lbl_1_data_0 = { 100.0f, 800.0f, -100.0f }; +Vec lbl_1_data_C = { 0.3f, -0.8f, 0.3f }; +Vec lbl_1_data_18 = { 10.0f, 45.0f, 3500.0f }; +GXColor lbl_1_data_24 = { 0xFF, 0xFF, 0xFF, 0xFF }; +Vec lbl_1_data_28 = { 50.0f, 150000.0f, 50.0f }; +Vec lbl_1_data_34 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_40 = { 0.0f, 0.0f, 0.0f }; +Vec lbl_1_data_4C = { 0.0f, 170.0f, 0.0f }; +Vec lbl_1_data_58 = { 0.0f, -22.0f, 850.0f }; + +char lbl_1_bss_34[0x4]; +char lbl_1_bss_30[0x4]; +char lbl_1_bss_2C[0x4]; +Process *lbl_1_bss_28; +omObjData *lbl_1_bss_24; +omObjData *lbl_1_bss_20; +char lbl_1_bss_18[8]; +s16 lbl_1_bss_16; +s16 lbl_1_bss_14; +s16 lbl_1_bss_12; +s16 lbl_1_bss_10; +s32 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +void ObjectSetup(void) +{ + Vec sp14; + Vec sp8; + Process *var_r31; + LightData *var_r30; + + HuAudSndGrpSet(0x3A); + lbl_1_bss_C = lbl_1_bss_8 = -1; + lbl_1_bss_4 = lbl_1_bss_0 = -1; + lbl_1_data_28.x = 200.0f; + lbl_1_data_28.y = 1200.0f; + lbl_1_data_28.z = 160.0f; + lbl_1_data_34.x = 0.0f; + lbl_1_data_34.y = 1.0f; + lbl_1_data_34.z = 0.0f; + lbl_1_data_40.x = 0.0f; + lbl_1_data_40.y = 0.0f; + lbl_1_data_40.z = 0.0f; + Hu3DShadowCreate(30.0f, 20.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); + lbl_1_bss_16 = Hu3DGLightCreateV(&lbl_1_data_0, &lbl_1_data_C, &lbl_1_data_24); + Hu3DGLightInfinitytSet(lbl_1_bss_16); + var_r30 = &Hu3DGlobalLight[lbl_1_bss_16]; + var_r30->unk_00 |= 0x8000; + lbl_1_data_18.x = 55.74f; + lbl_1_data_18.y = 0.0f; + lbl_1_data_18.z = 3500.0f; + sp14.x = sp14.y = sp14.z = 0.0f; + sp8.x = sp8.z = 0.0f; + sp8.y = lbl_1_data_18.z; + sp8.x = 0.0f; + sp8.y = 3480.0002f; + sp8.z = 900.00006f; + Hu3DGLightPosAimSetV(lbl_1_bss_16, &sp8, &sp14); + Hu3DShadowPosSet(&sp8, &lbl_1_data_34, &sp14); + lbl_1_bss_14 = lbl_1_bss_12 = lbl_1_bss_10 = -1; + var_r31 = omInitObjMan(0x32, 0x2000); + lbl_1_bss_28 = var_r31; + omGameSysInit(var_r31); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, -1.0f, 10.0f, 10000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + lbl_1_bss_20 = omAddObjEx(var_r31, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_24 = omAddObjEx(var_r31, 0xA, 0, 0, -1, fn_1_4C0); + fn_1_2894(var_r31); + fn_1_5904(var_r31); +} + +void fn_1_4C0(omObjData *object) +{ + M433DllWork *work; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433DllWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M433DllWork)); + work->unk_00 = 0; + work->unk_04 = 0; + work->unk_0C = 0; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0; + work->unk_24 = 0; + work->unk_28 = 0; + work->unk_08 = 0; + work->unk_34 = 2; + work->unk_38 = 0; + work->unk_3C = 0; + object->func = fn_1_798; +} + +void fn_1_584(omObjData *object) +{ + M433DllWork *work = object->data; + work->unk_04++; + work->unk_10++; + work->unk_18++; + work->unk_28++; + if ((omSysExitReq != 0) && (work->unk_00 != 5)) { + work->unk_00 = 4; + fn_1_618(object); + } +} + +void fn_1_618(omObjData *object) +{ + M433DllWork *work = object->data; + if (work->unk_08 == 0) { + switch (work->unk_00) { + case 0: + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + Hu3DCameraPerspectiveSet(1, 41.5f, 10.0f, 10000.0f, 1.2f); + lbl_1_bss_C = HuAudFXPlay(0x6AC); + work->unk_00 = 1; + work->unk_10 = 0; + object->func = fn_1_29A4(lbl_1_bss_28, object); + break; + case 1: + work->unk_00 = 2; + work->unk_18 = 0; + object->func = fn_1_1040; + break; + case 2: + work->unk_00 = 3; + work->unk_28 = 0; + object->func = fn_1_1A3C(lbl_1_bss_28, object); + break; + case 3: + case 4: + work->unk_08 = 1; + work->unk_00 = 5; + object->func = fn_1_AD4; + break; + case 5: + default: + work->unk_00 = 5; + object->func = fn_1_E2C; + break; + } + work->unk_04 = 0; + } +} + +void fn_1_798(omObjData *object) +{ + fn_1_584(object); + fn_1_618(object); +} + +void fn_1_AD4(omObjData *object) +{ + M433DllWork *work = object->data; + + fn_1_584(object); + if (WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + work->unk_08 = 0; + fn_1_618(object); + } +} + +void fn_1_E2C(omObjData *object) +{ + fn_1_584(object); + if (WipeStatGet() == 0) { + fn_1_5B74(); + fn_1_2984(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_1040(omObjData *object) +{ + M433DllWork *work = object->data; + fn_1_584(object); + switch (work->unk_14) { + case 0: + HuAudFXFadeOut(lbl_1_bss_C, 0x1E); + work->unk_1C = 0x1E; + work->unk_20 = 0x3C; + lbl_1_bss_14 = MGSeqCreate(3, 0); + MGSeqPosSet(lbl_1_bss_14, 320.0f, 240.0f); + Center.x = 0.0f; + Center.y = 200.0f; + Center.z = 0.0f; + CRot.x = -30.0f; + CRot.y = 0.0f; + CRot.z = 0.0f; + CZoom = 1900.0f; + work->unk_14 = 1; + work->unk_18 = 0; + break; + case 1: + if ((lbl_1_bss_4 < 0) && ((MGSeqStatGet(lbl_1_bss_14) & 0x10) != 0)) { + lbl_1_bss_4 = HuAudSeqPlay(0x47); + } + if ((MGSeqStatGet(lbl_1_bss_14) == 0) && (work->unk_08 == 0)) { + work->unk_14 = 2; + work->unk_18 = 0; + object->func = fn_1_13FC; + } + break; + } +} + +void fn_1_13FC(omObjData *object) +{ + + M433DllWork *work = object->data; + s32 var_r27 = 0; + fn_1_584(object); + work->unk_20++; + if (--work->unk_20 == 0) { + work->unk_20 = 0x3C; + work->unk_1C--; + if (work->unk_1C == 0) { + var_r27 = 1; + } + } + if (work->unk_34 != 2) { + var_r27 = 1; + } + if (var_r27 != 0) { + lbl_1_bss_12 = MGSeqCreate(3, 1); + MGSeqPosSet(lbl_1_bss_12, 320.0f, 240.0f); + HuAudSeqFadeOut(lbl_1_bss_4, 0x64); + work->unk_14 = 3; + work->unk_18 = 0; + if (work->unk_08 == 0) { + object->func = fn_1_16D0; + } + lbl_1_bss_8 = HuAudFXPlay(0x6AC); + } +} + +void fn_1_16D0(omObjData *object) +{ + M433DllWork *work = object->data; + fn_1_584(object); + if ((MGSeqStatGet(lbl_1_bss_12) == 0) && ((work->unk_38 + 0xFFFF0000) == 0x1111)) { + work->unk_14 = 4; + work->unk_18 = 0; + fn_1_618(object); + } +} + +omObjFunc fn_1_1A3C(Process *process, omObjData *object) +{ + return fn_1_1A48; +} + +static inline s32 fn_1_1A48_inline(void) +{ + return GWSystem.mg_type; +} + +void fn_1_1A48(omObjData *object) +{ + M433DllWork *work = object->data; + float var_f31 = lbl_1_data_58.y; + if (fn_1_10FA4(1) != 0) { + var_f31 *= -1.0f; + } + Center.x += 0.15f * (lbl_1_data_4C.x - Center.x); + Center.y += 0.15f * (lbl_1_data_4C.y - Center.y); + Center.z += 0.15f * (lbl_1_data_4C.z - Center.z); + CRot.x = fn_1_26C4(CRot.x, lbl_1_data_58.x, 0.15f); + CRot.y = fn_1_26C4(CRot.y, var_f31, 0.15f); + CZoom += 0.15f * (lbl_1_data_58.z - CZoom); + fn_1_584(object); + work->unk_24 = 1; + if (lbl_1_bss_0 < 0) { + lbl_1_bss_0 = HuAudSStreamPlay(1); + } + if (lbl_1_bss_10 < 0) { + s32 spC[4] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; + s32 var_r26; + s32 var_r25 = 0; + s32 var_r24; + for (var_r26 = 0; var_r26 < 2; var_r26++) { + if (work->unk_2C[var_r26] >= 0) { + spC[var_r25++] = GWPlayerCfg[work->unk_2C[var_r26]].character; + GWPlayerCoinWinAdd(work->unk_2C[var_r26], 10); + } + } + if (spC[0] == -1) { + lbl_1_bss_10 = MGSeqCreate(5, 2); + return; + } + var_r24 = 3; + if (fn_1_1A48_inline() == 0) { + if (fn_1_10FA4(0) != 0) { + var_r24 = 5; + } + } + lbl_1_bss_10 = MGSeqCreate(5, var_r24, spC[0], spC[1], spC[2], spC[3]); + return; + } + if ((MGSeqStatGet(lbl_1_bss_10) == 0) && (work->unk_28 >= 210.0f)) { + HuAudFXFadeOut(lbl_1_bss_8, 0x1E); + work->unk_24 = 2; + fn_1_618(object); + } +} + +s32 fn_1_213C(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_00; +} + +s32 fn_1_2154(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_0C; +} + +s32 fn_1_216C(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_14; +} + +s32 fn_1_2184(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_24; +} + +void fn_1_219C(s32 arg0, s32 arg1, s32 arg2) +{ + M433DllWork *work = lbl_1_bss_24->data; + work->unk_34 = arg0; + work->unk_2C[0] = arg1; + work->unk_2C[1] = arg2; +} + +s32 fn_1_21CC(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_34; +} + +void fn_1_21E4(s32 arg0) +{ + OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_38 |= (1 << ((arg0 & 7) * 4)); +} + +void fn_1_2214(s32 arg0) +{ + OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_3C |= (1 << ((arg0 & 3) * 4)); +} + +s32 fn_1_2244(void) +{ + return MGSeqStatGet(lbl_1_bss_12) == 0; +} + +void fn_1_227C(Vec *arg0, Vec *arg1) +{ + Vec sp10; + + PSVECSubtract(arg1, arg0, &sp10); + Center = *arg1; + CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); + CRot.y = atan2d(-sp10.x, -sp10.z); + CRot.z = 0.0f; + CZoom = PSVECMag(&sp10); +} + +void fn_1_2484(float arg8, float arg9, float argA, float argB, float argC, float argD) +{ + Vec sp3C; + Vec sp30; + + sp3C.x = arg8; + sp3C.y = arg9; + sp3C.z = argA; + sp30.x = argB; + sp30.y = argC; + sp30.z = argD; + fn_1_227C(&sp3C, &sp30); +} + +float fn_1_26C4(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f29; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + var_f29 = fmod(arg8 + (argA * var_f31), 360.0); + var_f31 = var_f29; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + return var_f31; +} + +float fn_1_27E0(float arg8, float arg9) +{ + float var_f31; + float var_f30; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} + +s32 lbl_1_data_64[] = { + 0x00000000, + 0x00000000, + 0x45ABE000, + 0xC576E000, + 0x00000000, + 0xBF333333, + 0x3F19999A, + 0xFFFFFFFF, + 0x00000000, + 0x45ABE000, + 0xC576E000, + 0x00000000, + 0x3F800000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, +}; diff --git a/src/REL/m433Dll/map.c b/src/REL/m433Dll/map.c new file mode 100644 index 00000000..57695003 --- /dev/null +++ b/src/REL/m433Dll/map.c @@ -0,0 +1,827 @@ +#include "dolphin/mtx.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/flag.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m433Dll.h" + +typedef struct M433DllBss38Struct { + /* 0x00 */ u8 unk_00; + /* 0x01 */ char unk01[2]; + /* 0x03 */ u8 unk_03; + /* 0x04 */ u8 unk_04; + /* 0x05 */ char unk05[3]; + /* 0x08 */ float unk_08; + /* 0x0C */ Vec unk_0C; + /* 0x18 */ Vec unk_18; + /* 0x24 */ Vec unk_24; + /* 0x30 */ Vec unk_30; + /* 0x3C */ char unk3C[0xC]; + /* 0x48 */ Vec unk_48; + union { + struct { + /* 0x54 */ float unk_54; + /* 0x58 */ float unk_58; + char unk5C[4]; + /* 0x60 */ float unk_60; + }; + struct { + /* 0x54 */ s16 unk_54_s16[0x20]; + }; + }; +} M433DllBss38Struct; /* size = 0x94 */ + +typedef struct M433DllMapWork { + char unk00; + u8 unk_01; + u8 unk_02; + char unk03; + u8 unk_04; + char unk08[4]; + Vec unk_0C; + Vec unk_18; + char unk24[0xC]; + Vec unk_30; + Vec unk_3C; + char unk48[0xC]; + s16 unk_54; + char unk56[0x3E]; +} M433DllMapWork; /* size 0x94 */ + +typedef struct M433DllMapWork2 { + u8 unk_00; + Vec unk_04; + Vec unk_10; + Vec unk_1C; + Vec unk_28; + Vec unk_34; + Vec unk_40; + char unk4C[0xE4]; + float unk_130; + float unk_134; + float unk_138; + char unk13C[4]; + float unk_140; + float unk_144; + float unk_148; + float unk_14C[3]; + float unk_158[3]; + float unk_164[3]; + float unk_170[3]; + float unk_17C[3]; + u16 unk_188[3]; +} M433DllMapWork2; /* size 0x190 */ + +typedef struct M433DllUnkStruct { + s16 unk_00; + s16 unk_02; + s16 unk_04; + char unk06[0x42]; +} M433DllUnkStruct; /* size 0x48 */ + +void fn_1_2AC4(omObjData *object); +void fn_1_2CE0(omObjData *object); +void fn_1_32CC(omObjData *object); +void fn_1_39AC(omObjData *object); +void fn_1_3C1C(omObjData *object); +s16 fn_1_3E5C(s32 arg0, s16 arg1, ParticleHook arg2); +void fn_1_3F14(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_4A94(omObjData *object); +void fn_1_4BA0(omObjData *object); +void fn_1_4ED4(float arg8, Vec *arg0, Vec *arg1, float arg9); +void fn_1_5068(void); +void *fn_1_50A8(s32 arg0); +void fn_1_51DC(void); +s32 fn_1_5260(void); +float fn_1_52B4(float arg8, float arg9, float argA); +void fn_1_541C(Mtx arg0, float arg8, float arg9, float argA); +void fn_1_553C(Mtx arg0, Vec *arg1); +extern s32 lbl_1_bss_34; + +omObjData *lbl_1_bss_7B0; +omObjData *lbl_1_bss_7AC; +omObjData *lbl_1_bss_7A8; +void *lbl_1_bss_728[0x20]; +M433DllBss38Struct lbl_1_bss_38[0xC]; + +void fn_1_2894(Process *process) +{ + s32 var_r31; + s32 var_r29; + + lbl_1_bss_34 = 1; + lbl_1_bss_7AC = omAddObjEx(process, 0x1E, 8, 0, -1, fn_1_2CE0); + lbl_1_bss_7A8 = omAddObjEx(process, 0x1F, 3, 6, -1, fn_1_39AC); + lbl_1_bss_7B0 = omAddObjEx(process, 0x1D, 1, 0, -1, fn_1_4A94); + var_r29 = frand() & 0x1F; + for (var_r31 = 0; var_r31 < var_r29; var_r31++) { + fn_1_5260(); + } + fn_1_5068(); +} + +void fn_1_2984(void) +{ + fn_1_51DC(); +} + +omObjFunc fn_1_29A4(Process *process, omObjData *object) +{ + M433DllWork *work = object->data; + CRot.x = 54.3f; + CRot.y = 22.3f; + CRot.z = 0.0f; + Center.x = -130.1f; + Center.y = 885.0f; + Center.z = -900.3f; + CZoom = 1100.0f; + fn_1_4ED4(0.0f, &Center, &CRot, CZoom); + object->work[0] = 0xB4; + work->unk_0C = 1; + return fn_1_2AC4; +} + +void fn_1_2AC4(omObjData *object) +{ + Vec sp14; + Vec sp8; + float var_f31; + M433DllWork *work = object->data; + + fn_1_584(object); + if (object->work[0] == 120.0f) { + sp14.x = 0.0f; + sp14.y = -10.0f; + sp14.z = -207.5f; + sp8.x = -26.5f; + sp8.y = 0.0f; + sp8.z = 0.0f; + var_f31 = 1400.0f; + fn_1_4ED4(90.0f, &sp14, &sp8, var_f31); + } + if (object->work[0] == 48.0f) { + sp14.x = 0.0f; + sp14.y = 200.0f; + sp14.z = 0.0f; + sp8.x = -30.0f; + sp8.y = 0.0f; + sp8.z = 0.0f; + var_f31 = 1900.0f; + fn_1_4ED4(object->work[0], &sp14, &sp8, var_f31); + } + if (--object->work[0] == 0) { + work->unk_0C = 2; + fn_1_618(object); + lbl_1_bss_7B0->func = NULL; + } +} + +void fn_1_2CE0(omObjData *object) +{ + Vec sp8[0x10] = { + { 475.0f, 800.0f, -1400.0f }, + { -300.0f, 700.0f, -1400.0f }, + { 300.0f, 875.0f, -1450.0f }, + { -575.0f, 850.0f, -1550.0f }, + { 350.0f, 750.0f, -1500.0f }, + { -450.0f, 775.0f, -1550.0f }, + { 325.0f, 725.0f, -1450.0f }, + { -525.0f, 725.0f, -1500.0f }, + { 575.0f, 850.0f, -1550.0f }, + { -350.0f, 750.0f, -1500.0f }, + { 450.0f, 775.0f, -1550.0f }, + { -325.0f, 725.0f, -1450.0f }, + { 525.0f, 725.0f, -1500.0f }, + { -475.0f, 800.0f, -1400.0f }, + { 300.0f, 700.0f, -1400.0f }, + { -300.0f, 875.0f, -1450.0f }, + }; + M433DllBss38Struct *var_r31; + s32 var_r30; + M433DllUnkStruct *var_r28; + s32 i; + s32 var_r26; + + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0xCD)); + object->model[0] = var_r30; + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0xCE)); + object->model[1] = var_r30; + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r30, 0.5f); + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0xCF)); + object->model[2] = var_r30; + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M425, 0x05), 1, fn_1_3F14); + object->model[3] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 0; + HuDataDirClose(DATA_MAKE_NUM(DATADIR_M425, 0x05)); + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M433, 0xD3), 0xA, fn_1_3F14); + object->model[4] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 1; + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M433, 0xD2), 4, fn_1_3F14); + object->model[5] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 2; + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M433, 0xD1), 6, fn_1_3F14); + object->model[6] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 3; + for (i = 0; i < 0xC; i++) { + var_r31 = &lbl_1_bss_38[i]; + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M425, 0x02)); + var_r31->unk_00 = var_r30; + var_r31->unk_0C.x = sp8[i].x; + var_r31->unk_0C.y = sp8[i].y - 300.0f; + var_r31->unk_0C.z = 800.0f + sp8[i].z; + Hu3DModelPosSet(var_r30, var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + Hu3DMotionSpeedSet(var_r30, 6.0f); + var_r31->unk_03 = var_r31->unk_04 = 0; + var_r31->unk_18.x = var_r31->unk_18.y = var_r31->unk_18.z = 0.0f; + var_r31->unk_24.x = var_r31->unk_24.y = var_r31->unk_24.z = 1.0f; + var_r31->unk_48.x = var_r31->unk_48.y = var_r31->unk_48.z = 0.0f; + var_r31->unk_30.x = var_r31->unk_0C.x; + var_r31->unk_30.y = var_r31->unk_0C.y; + var_r31->unk_30.z = var_r31->unk_0C.z; + if ((i & 1) != 0) { + var_r31->unk_18.y = 90.0f; + var_r31->unk_0C.y += 650.0; + var_r31->unk_0C.x -= 1000.0 + (200.0f * ((fn_1_5260() - 0x8000) / 32768.0f)); + } + else { + var_r31->unk_18.y = 90.0f; + var_r31->unk_0C.x += 200.0f * ((fn_1_5260() - 0x8000) / 32768.0f); + } + var_r31->unk_18.y += 10.0f * ((fn_1_5260() - 0x8000) / 32768.0f); + var_r31->unk_0C.z = var_r31->unk_0C.z - 400.0; + var_r31->unk_08 = 100.0f * (0.1f + (0.02f * (fn_1_5260() / 65536.0f))); + for (var_r26 = 0; var_r26 < 0x20; var_r26++) { + var_r31->unk_54_s16[var_r26] = 0; + } + var_r31->unk_60 = var_r31->unk_08; + } + HuDataDirClose(DATA_MAKE_NUM(DATADIR_M425, 0x02)); + HuAudFXPlayVol(0x6A3, 0x41); + object->func = fn_1_32CC; +} + +void fn_1_32CC(omObjData *object) +{ + Mtx sp14; + Vec sp8; + M433DllBss38Struct *var_r31; + s32 i; + + for (i = 0; i < 0xC; i++) { + var_r31 = &lbl_1_bss_38[i]; + switch (var_r31->unk_04) { + case 0: + if (var_r31->unk_08 < var_r31->unk_60) { + var_r31->unk_08 += 0.4f; + } + if ((s32)(64.0f * (fn_1_5260() / 65536.0f)) == 0) { + Hu3DMotionTimeSet(var_r31->unk_00, 0.0f); + } + if (Hu3DMotionEndCheck(var_r31->unk_00) != 0) { + var_r31->unk_48.y = -3.8933334f; + } + else { + var_r31->unk_48.y = -1.2166667f; + } + var_r31->unk_54 += 0.1f * ((fn_1_5260() - 0x8000) / 32768.0f); + var_r31->unk_58 += var_r31->unk_54; + if (var_r31->unk_58 > 180.0f) { + var_r31->unk_58 -= 180.0f; + } + if (var_r31->unk_58 < -180.0f) { + var_r31->unk_58 += 180.0f; + } + var_r31->unk_18.x = -30.0 * sind(var_r31->unk_58) * sind(var_r31->unk_18.y); + var_r31->unk_18.z = -30.0 * sind(var_r31->unk_58) * cosd(var_r31->unk_18.y); + if (var_r31->unk_0C.y <= 500.0f || fabs(var_r31->unk_0C.x) > 1600.0) { + var_r31->unk_48.y = 0.0f; + var_r31->unk_54_s16[6] = 0xB4; + var_r31->unk_08 *= 0.75f; + var_r31->unk_04++; + } + break; + case 1: + var_r31->unk_18.y += 1.0f; + var_r31->unk_18.x = 0.0f; + var_r31->unk_18.z = 60.0 * sind(var_r31->unk_54_s16[6]) * cosd(var_r31->unk_18.y); + if (--var_r31->unk_54_s16[6] == 0) { + Hu3DModelAttrSet(var_r31->unk_00, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r31->unk_00, 6.0f); + var_r31->unk_48.y = 4.866667f; + var_r31->unk_04++; + } + break; + case 2: + if (var_r31->unk_08 > 4.0f) { + var_r31->unk_08 -= 0.1f; + var_r31->unk_48.y += 0.73f; + } + var_r31->unk_48.y += -0.5475f; + if (var_r31->unk_48.y < 0.0f) { + Hu3DModelAttrReset(var_r31->unk_00, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r31->unk_00, 2.0f); + var_r31->unk_60 = 100.0f * (0.1f + (0.02f * (fn_1_5260() / 65536.0f))); + var_r31->unk_04 = 0; + } + break; + } + var_r31->unk_48.x = var_r31->unk_08 * sind(var_r31->unk_18.y); + var_r31->unk_48.z = var_r31->unk_08 * cosd(var_r31->unk_18.y); + var_r31->unk_0C.x += var_r31->unk_48.x; + var_r31->unk_0C.y += var_r31->unk_48.y; + var_r31->unk_0C.z += var_r31->unk_48.z; + if (var_r31->unk_0C.z >= -500.0f) { + var_r31->unk_0C.z = -500.0f; + } + Hu3DModelPosSet(var_r31->unk_00, var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + fn_1_541C(sp14, var_r31->unk_18.x, -var_r31->unk_18.y, var_r31->unk_18.z); + fn_1_553C(sp14, &sp8); + Hu3DModelRotSetV(var_r31->unk_00, &sp8); + } +} + +void fn_1_39AC(omObjData *object) +{ + s32 var_r29; + s32 var_r28; + + s32 sp18[4] = { 0x004000D4, 0x004000D5, 0x004000D6, 0x004000D7 }; + s32 sp8[4] = { 0x0040000C, 0x00400010, 0x0040000F, 0x0040000E }; + M433DllMapWork *work = fn_1_50A8(sizeof(M433DllMapWork)); + object->data = work; + if (lbl_1_bss_34 != 0) { + var_r28 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0x0B)); + } + else { + var_r28 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0x62)); + } + object->model[0] = var_r28; + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (lbl_1_bss_34 != 0) { + object->motion[var_r29] = Hu3DJointMotionFile(var_r28, sp8[var_r29]); + } + else { + object->motion[var_r29] = Hu3DJointMotionFile(var_r28, sp18[var_r29]); + } + } + Hu3DMotionSet(var_r28, object->motion[0]); + Hu3DModelAttrSet(var_r28, HU3D_MOTATTR_LOOP); + work->unk_01 = work->unk_02 = 0; + work->unk_04 = 0; + work->unk_54 = 0; + work->unk_0C.x = 0.0f; + work->unk_0C.y = 180.0f; + work->unk_0C.z = -490.0f; + work->unk_30 = work->unk_0C; + work->unk_18.x = work->unk_18.y = work->unk_18.z = 0.0f; + work->unk_3C = work->unk_18; + omSetTra(object, work->unk_0C.x, work->unk_0C.y, work->unk_0C.z); + omSetRot(object, work->unk_18.x, work->unk_18.y, work->unk_18.z); + object->func = fn_1_3C1C; +} + +void fn_1_3C1C(omObjData *object) +{ + M433DllMapWork *work; + s32 var_r29; + s32 var_r28; + + work = object->data; + var_r28 = object->model[0]; + switch (work->unk_04) { + case 0: + work->unk_01 = 0; + var_r29 = 0x40000001; + break; + case 1: + work->unk_3C.y = 0.0f; + work->unk_01 = 1; + var_r29 = 0x40000001; + if (work->unk_54++ >= 0x5A) { + work->unk_54 = 0; + work->unk_04 = 0; + } + break; + case 2: + work->unk_3C.y = 0.0f; + work->unk_01 = 2; + var_r29 = 0; + if (Hu3DMotionEndCheck(var_r28) != 0) { + work->unk_04 = 0; + } + break; + case 3: + work->unk_3C.y = 0.0f; + work->unk_01 = 3; + var_r29 = 0x40000001; + break; + case 4: + work->unk_3C.y = 0.0f; + work->unk_04 = 0; + break; + case 5: + work->unk_3C.y = 50.0f; + work->unk_04 = 0; + break; + case 6: + work->unk_3C.y = -50.0f; + work->unk_04 = 0; + break; + } + if (work->unk_01 != work->unk_02) { + work->unk_02 = work->unk_01; + Hu3DMotionShiftSet(var_r28, object->motion[work->unk_01], 0.0f, 8.0f, var_r29); + switch (work->unk_01) { + case 1: + HuAudFXPlay(0x43); + break; + case 2: + HuAudFXPlay(0x45); + break; + } + } + work->unk_18.y = fn_1_52B4(work->unk_18.y, work->unk_3C.y, 0.9f); + omSetTra(object, work->unk_0C.x, work->unk_0C.y, work->unk_0C.z); + omSetRot(object, work->unk_18.x, work->unk_18.y, work->unk_18.z); +} + +s16 fn_1_3E5C(s32 sp8, s16 spC, ParticleHook sp10) +{ + M433DllUnkStruct *var_r31; + s32 var_r30; + ParticleData *var_r29; + AnimData *var_r28; + + var_r28 = HuSprAnimRead(HuDataReadNum(sp8, MEMORY_DEFAULT_NUM)); + var_r30 = Hu3DParticleCreate(var_r28, spC); + Hu3DParticleHookSet(var_r30, sp10); + var_r29 = Hu3DData[var_r30].unk_120; + var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433DllUnkStruct), MEMORY_DEFAULT_NUM); + var_r29->unk_1C = var_r31; + var_r31->unk_00 = var_r30; + var_r31->unk_04 = 0; + return var_r30; +} + +void fn_1_3F14(ModelData *model, ParticleData *var_r30, Mtx matrix) +{ + float var_f29; + float var_f26; + float var_f25; + float var_f24; + HsfanimStruct01 *var_r31; + s32 var_r28; + float sp54[4] = { 1000.0f, 200.0f, 600.0f, 1200.0f }; + float sp44[4] = { 1.0f, 0.6f, 0.3f, 0.425f }; + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + s16 sp8 = 0; + M433DllUnkStruct *var_r29 = var_r30->unk_1C; + switch (var_r29->unk_04) { + case 0: + var_r30->unk_00 = 0x54; + var_r31 = var_r30->unk_48; + if (var_r29->unk_02 != 0) { + sp14.x = 0.0f; + sp14.y = -4700.0f; + sp14.z = 4450.0f; + var_f29 = 1.0f / sqrtf((sp14.z * sp14.z) + ((sp14.x * sp14.x) + (sp14.y * sp14.y))); + sp14.x *= var_f29; + sp14.y *= var_f29; + sp14.z *= var_f29; + var_f24 = 4000.0f / var_r30->unk_30; + for (var_r28 = 0; var_r28 < var_r30->unk_30; var_r28++, var_r31++) { + var_f26 = 500.0f + ((var_f24 * var_r28) + (0.25f * var_f24 * (fn_1_5260() / 65536.0f))); + var_f25 = var_f26 / 4000.0f; + var_r31->unk14.x = var_f26; + var_r31->unk34.x = var_f26 * sp14.x; + var_r31->unk34.y = 5500.0f + (var_f26 * sp14.y); + var_r31->unk34.z = -3950.0f + (var_f26 * sp14.z); + var_r31->unk2C = (0.3f + (0.7f * (var_f25 * var_f25))) * (sp54[var_r29->unk_02] * (0.7f + (0.3f * (fn_1_5260() / 65536.0f)))); + var_r31->unk40.r = (s32)(160.0f * (fn_1_5260() / 65536.0f)) + 0x20; + var_r31->unk40.g = (s32)(96.0f * (fn_1_5260() / 65536.0f)) + 0x20; + var_r31->unk40.b = (s32)(128.0f * (fn_1_5260() / 65536.0f)) + 0x20; + var_r31->unk40.a = ((1.0 - (0.4 * var_f25)) * (255.0f * sp44[var_r29->unk_02])) - (s32)(16.0f * (fn_1_5260() / 65536.0f)); + } + var_r29->unk_04++; + } + else { + var_r31->unk34.x = 0.0f; + var_r31->unk34.y = 5500.0f; + var_r31->unk34.z = -3950.0f; + var_r31->unk2C = 1000.0f; + } + break; + case 1: + sp38.x = sind(CRot.y) * cosd(CRot.x); + sp38.y = -sind(CRot.x); + sp38.z = cosd(CRot.y) * cosd(CRot.x); + sp2C.x = -(Center.x + (1.25f * (sp38.x * CZoom))); + sp2C.y = 5500.0f - (Center.y + (sp38.y * CZoom)); + sp2C.z = -3950.0f - (Center.z + (1.25f * (sp38.z * CZoom))); + var_f29 = 1.0f / sqrtf((sp2C.z * sp2C.z) + ((sp2C.x * sp2C.x) + (sp2C.y * sp2C.y))); + sp2C.x *= var_f29; + sp2C.y *= var_f29; + sp2C.z *= var_f29; + var_f29 = -((-sp2C.z * -sp38.z) + ((-sp2C.x * -sp38.x) + (-sp2C.y * -sp38.y))); + sp20.x = -sp38.x + (-2.0f * sp2C.x * var_f29); + sp20.y = -sp38.y + (-2.0f * sp2C.y * var_f29); + sp20.z = -sp38.z + (-2.0f * sp2C.z * var_f29); + for (var_r31 = var_r30->unk_48, var_r28 = 0; var_r28 < var_r30->unk_30; var_r28++, var_r31++) { + var_r31->unk34.x = sp20.x * var_r31->unk14.x; + var_r31->unk34.y = 5500.0f + (sp20.y * var_r31->unk14.x); + var_r31->unk34.z = -3950.0f + (sp20.z * var_r31->unk14.x); + if (var_r30->unk_00 < 0xA) { + var_r31->unk40.a *= 0.8f; + } + } + var_r30->unk_00--; + if (var_r30->unk_00 == 0) { + Hu3DModelAttrReset(var_r29->unk_00, HU3D_ATTR_PARTICLE_KILL); + Hu3DModelKill(var_r29->unk_00); + return; + } + break; + } + DCFlushRange(var_r30->unk_48, var_r30->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_4A94(omObjData *var_r30) +{ + M433DllMapWork2 *work = fn_1_50A8(sizeof(M433DllMapWork2)); + var_r30->data = work; + work->unk_148 = work->unk_144 = 0.0f; + work->unk_140 = 1.0f; + work->unk_10.x = work->unk_28.x = -30.0f; + work->unk_10.y = work->unk_28.y = 0.0f; + work->unk_10.z = work->unk_28.z = 0.0f; + work->unk_04.x = work->unk_1C.x = 0.0f; + work->unk_04.y = work->unk_1C.y = 200.0f; + work->unk_04.z = work->unk_1C.z = 0.0f; + work->unk_130 = work->unk_134 = 1900.0f; + work->unk_188[0] = work->unk_188[1] = work->unk_188[2] = 0; + var_r30->func = fn_1_4BA0; +} + +void fn_1_4BA0(omObjData *object) +{ + float var_f31; + s32 var_r30; + M433DllMapWork2 *work = object->data; + if (work->unk_148 > 0.0f) { + work->unk_148 = work->unk_148 - work->unk_140; + var_f31 = (work->unk_144 - work->unk_148) / work->unk_144; + var_f31 = sind((90.0f * var_f31)); + if (work->unk_00 == 0) { + work->unk_04.x = work->unk_1C.x + (var_f31 * (work->unk_34.x - work->unk_1C.x)); + work->unk_04.y = work->unk_1C.y + (var_f31 * (work->unk_34.y - work->unk_1C.y)); + work->unk_04.z = work->unk_1C.z + (var_f31 * (work->unk_34.z - work->unk_1C.z)); + work->unk_10.x = work->unk_28.x + (var_f31 * (work->unk_40.x - work->unk_28.x)); + work->unk_10.y = work->unk_28.y + (var_f31 * (work->unk_40.y - work->unk_28.y)); + work->unk_10.z = work->unk_28.z + (var_f31 * (work->unk_40.z - work->unk_28.z)); + work->unk_130 = work->unk_134 + (var_f31 * (work->unk_138 - work->unk_134)); + } + } + CRot.x = work->unk_10.x; + CRot.y = work->unk_10.y; + CRot.z = work->unk_10.z; + Center.x = work->unk_04.x; + Center.y = work->unk_04.y; + Center.z = work->unk_04.z; + CZoom = work->unk_130; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + work->unk_17C[var_r30] = 0.0f; + if (work->unk_188[var_r30] != 0) { + work->unk_17C[var_r30] = work->unk_14C[var_r30] * sind(work->unk_164[var_r30]); + work->unk_164[var_r30] += work->unk_170[var_r30]; + work->unk_14C[var_r30] *= work->unk_158[var_r30]; + work->unk_188[var_r30] -= 1; + } + } + Center.x += work->unk_17C[0]; + Center.y += work->unk_17C[1]; + Center.z += work->unk_17C[2]; +} + +void fn_1_4ED4(float arg8, Vec *arg0, Vec *arg1, float arg9) +{ + M433DllMapWork2 *work = lbl_1_bss_7B0->data; + work->unk_00 = 0; + work->unk_144 = arg8; + work->unk_148 = arg8; + if (arg8 == 0.0f) { + work->unk_04.x = arg0->x; + work->unk_04.y = arg0->y; + work->unk_04.z = arg0->z; + work->unk_10.x = arg1->x; + work->unk_10.y = arg1->y; + work->unk_10.z = arg1->z; + work->unk_130 = arg9; + return; + } + work->unk_1C = work->unk_04; + work->unk_34.x = arg0->x; + work->unk_34.y = arg0->y; + work->unk_34.z = arg0->z; + work->unk_28 = work->unk_10; + work->unk_40.x = arg1->x; + work->unk_40.y = arg1->y; + work->unk_40.z = arg1->z; + work->unk_134 = work->unk_130; + work->unk_138 = arg9; +} + +void fn_1_4FC0(float arg8) +{ + M433DllMapWork2 *var_r31 = lbl_1_bss_7B0->data; + var_r31->unk_140 = arg8; +} + +void fn_1_4FE8(u8 arg0, u16 arg1, float arg8, float arg9, float argA) +{ + M433DllMapWork2 *var_r31 = lbl_1_bss_7B0->data; + var_r31->unk_188[arg0] = arg1; + var_r31->unk_14C[arg0] = arg8; + var_r31->unk_158[arg0] = arg9; + var_r31->unk_170[arg0] = argA; + var_r31->unk_164[arg0] = 90.0f; +} + +void fn_1_5068(void) +{ + s32 i; + for (i = 0; i < 0x20; i++) { + lbl_1_bss_728[i] = NULL; + } +} + +void *fn_1_50A8(s32 arg0) +{ + s32 i; + + for (i = 0; i < 0x20; i++) { + if (!lbl_1_bss_728[i]) { + break; + } + } + if (i == 0x20) { + return NULL; + } + lbl_1_bss_728[i] = HuMemDirectMallocNum(HEAP_SYSTEM, arg0, MEMORY_DEFAULT_NUM); + return lbl_1_bss_728[i]; +} + +void fn_1_5148(u32 sp8) +{ + s32 i; + + for (i = 0; i < 0x20; i++) { + if (lbl_1_bss_728[i] == (void *)sp8) { + break; + } + } + if (i != 0x20) { + HuMemDirectFree(lbl_1_bss_728[i]); + lbl_1_bss_728[i] = NULL; + } +} + +void fn_1_51DC(void) +{ + s32 i; + + for (i = 0; i < 0x20; i++) { + if (lbl_1_bss_728[i]) { + HuMemDirectFree(lbl_1_bss_728[i]); + lbl_1_bss_728[i] = NULL; + } + } +} + +u32 lbl_1_data_C4 = 0x41C64E6D; + +s32 fn_1_5260(void) +{ + lbl_1_data_C4 *= 0x41C64E6D; + lbl_1_data_C4 += 0x3039; + return lbl_1_data_C4 >> 0x10; +} + +float fn_1_52B4(float arg8, float arg9, float argA) +{ + float var_f31; + + if (arg8 > 180.0f) { + arg8 -= 360.0f; + } + else if (arg8 <= -180.0f) { + arg8 += 360.0f; + } + if (arg9 > 180.0f) { + arg9 -= 360.0f; + } + else if (arg9 <= -180.0f) { + arg9 += 360.0f; + } + var_f31 = arg8 - arg9; + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + else if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } + arg8 = arg9 + (var_f31 * argA); + if (arg8 > 180.0f) { + return arg8 - 360.0f; + } + if (arg8 <= -180.0f) { + arg8 += 360.0f; + } + return arg8; +} + +void fn_1_541C(Mtx arg0, float arg8, float arg9, float argA) +{ + Mtx sp38; + Mtx sp8; + + if (argA != 0.0f) { + PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + } + else { + PSMTXIdentity(arg0); + } + if (arg8 != 0.0f) { + PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + PSMTXConcat(sp38, arg0, arg0); + } + if (arg9 != 0.0f) { + PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + PSMTXConcat(sp8, arg0, arg0); + } +} + +void fn_1_553C(Mtx arg0, Vec *arg1) +{ + float var_f29; + float var_f28; + + arg1->x = atan2d(arg0[1][2], arg0[2][2]); + if (arg1->x < 0.0f) { + arg1->x += 360.0f; + } + arg1->z = atan2d(arg0[0][1], arg0[0][0]); + if (arg1->z < 0.0f) { + arg1->z += 360.0f; + } + var_f29 = -arg0[0][2]; + var_f28 = sqrtf((1.0 - (var_f29 * var_f29)) < 0.0 ? (-(1.0 - (var_f29 * var_f29))) : (1.0 - (var_f29 * var_f29))); + if ((arg1->x > 90.0f) && (arg1->x < 270.0f) && (arg1->z > 90.0f) && (arg1->z < 270.0f)) { + arg1->x = fmod(180.0f + arg1->x, 360.0); + arg1->z = fmod(180.0f + arg1->z, 360.0); + var_f28 = -var_f28; + } + arg1->y = atan2d(var_f29, var_f28); + if (arg1->y < 0.0f) { + arg1->y += 360.0f; + } +} + +void fn_1_58D8(s32 arg0) +{ + M433DllMapWork *work = lbl_1_bss_7A8->data; + work->unk_04 = arg0; +} diff --git a/src/REL/mstory2Dll/main.c b/src/REL/mstory2Dll/main.c index 73dcc832..c8277e06 100644 --- a/src/REL/mstory2Dll/main.c +++ b/src/REL/mstory2Dll/main.c @@ -1236,7 +1236,3 @@ void fn_1_7384(int modelId, int charNo, float ofs, s32 maxTime, BOOL flag) } } } - -#if VERSION_PAL -// lbl_1_data_399 -#endif From cdb1d1fc37144ce8b15d202dcf40b61409d1eb29 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sun, 12 Jan 2025 15:11:23 +0100 Subject: [PATCH 117/178] Import gx, PadClamp, rest of mtx, TRK 2.6 and MSL (#525) * Match mtx and Padclamp.c * Match the rest of GX * Import TRK 2.6 * Import MSL headers and files * Merge some MSL headers into ours --- config/GMPE01_00/splits.txt | 4 +- config/GMPE01_01/splits.txt | 4 +- configure.py | 59 +- include/OdemuExi2/odemuexi/DebuggerDriver.h | 24 + include/PowerPC_EABI_Support/MetroTRK/trk.h | 381 ++++ .../Msl/MSL_C/MSL_Common/FILE_POS.h | 18 + .../Msl/MSL_C/MSL_Common/abort_exit.h | 17 + .../Msl/MSL_C/MSL_Common/alloc.h | 16 + .../Msl/MSL_C/MSL_Common/ansi_files.h | 133 ++ .../Msl/MSL_C/MSL_Common/ansi_fp.h | 36 + .../Msl/MSL_C/MSL_Common/arith.h | 19 + .../Msl/MSL_C/MSL_Common/buffer_io.h | 11 + .../Msl/MSL_C/MSL_Common/char_io.h | 17 + .../Msl/MSL_C/MSL_Common/critical_regions.h | 30 + .../Msl/MSL_C/MSL_Common/ctype.h | 76 + .../Msl/MSL_C/MSL_Common/direct_io.h | 17 + .../Msl/MSL_C/MSL_Common/errno.h | 20 + .../Msl/MSL_C/MSL_Common/extras.h | 15 + .../Msl/MSL_C/MSL_Common/file_io.h | 18 + .../Msl/MSL_C/MSL_Common/float.h | 92 + .../Msl/MSL_C/MSL_Common/limits.h | 93 + .../Msl/MSL_C/MSL_Common/math.h | 106 + .../Msl/MSL_C/MSL_Common/mbstring.h | 16 + .../Msl/MSL_C/MSL_Common/mem_funcs.h | 19 + .../Msl/MSL_C/MSL_Common/misc_io.h | 14 + .../Msl/MSL_C/MSL_Common/printf.h | 22 + .../Msl/MSL_C/MSL_Common/scanf.h | 43 + .../Msl/MSL_C/MSL_Common/signal.h | 16 + .../Msl/MSL_C/MSL_Common/stdio.h | 13 + .../Msl/MSL_C/MSL_Common/stdlib.h | 9 + .../Msl/MSL_C/MSL_Common/strtoul.h | 18 + .../Msl/MSL_C/MSL_Common/wchar_io.h | 12 + .../MSL_C/MSL_Common_Embedded/Math/fdlibm.h | 234 ++ .../PowerPC_EABI_Support/Runtime/MWCPlusLib.h | 44 + .../Runtime/NMWException.h | 43 + include/PowerPC_EABI_Support/Runtime/__mem.h | 17 + .../Runtime/__ppc_eabi_linker.h | 72 + .../MetroTRK/Portable/dispatch.h | 35 + .../MetroTRK/Portable/main_TRK.h | 16 + .../MetroTRK/Portable/mainloop.h | 14 + .../MetroTRK/Portable/mem_TRK.h | 17 + .../MetroTRK/Portable/msg.h | 24 + .../MetroTRK/Portable/msgbuf.h | 50 + .../MetroTRK/Portable/msghndlr.h | 31 + .../MetroTRK/Portable/mutex_TRK.h | 10 + .../MetroTRK/Portable/notify.h | 16 + .../MetroTRK/Portable/nubevent.h | 37 + .../MetroTRK/Portable/nubinit.h | 21 + .../MetroTRK/Portable/serpoll.h | 23 + .../MetroTRK/Portable/support.h | 29 + .../Os/dolphin/dolphin_trk.h | 24 + .../Os/dolphin/dolphin_trk_glue.h | 45 + .../TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h | 16 + .../TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h | 14 + .../ppc/Generic/flush_cache.h | 16 + .../ppc/Generic/mpc_7xx_603e.h | 16 + .../TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h | 190 ++ include/amcstubs/AmcExi2Stubs.h | 27 + include/dolphin/math.h | 85 + include/dolphin/mtx.h | 2 +- include/stdarg.h | 42 +- include/stddef.h | 7 +- include/string.h | 19 +- src/MSL_C.PPCEABI.bare.H/abort_exit.c | 55 + src/MSL_C.PPCEABI.bare.H/ansi_files.c | 95 + src/MSL_C.PPCEABI.bare.H/buffer_io.c | 41 + src/MSL_C.PPCEABI.bare.H/ctype.c | 85 + src/MSL_C.PPCEABI.bare.H/direct_io.c | 114 + src/MSL_C.PPCEABI.bare.H/e_asin.c | 3 + src/MSL_C.PPCEABI.bare.H/e_atan2.c | 145 ++ src/MSL_C.PPCEABI.bare.H/errno.c | 3 + src/MSL_C.PPCEABI.bare.H/float.c | 5 + src/MSL_C.PPCEABI.bare.H/mbstring.c | 18 + src/MSL_C.PPCEABI.bare.H/mem.c | 75 + src/MSL_C.PPCEABI.bare.H/mem_funcs.c | 221 ++ src/MSL_C.PPCEABI.bare.H/misc_io.c | 1 + src/MSL_C.PPCEABI.bare.H/printf.c | 1076 +++++++++ src/MSL_C.PPCEABI.bare.H/rand.c | 13 + src/MSL_C.PPCEABI.bare.H/s_atan.c | 148 ++ src/MSL_C.PPCEABI.bare.H/s_frexp.c | 58 + src/MSL_C.PPCEABI.bare.H/scanf.c | 34 + src/MSL_C.PPCEABI.bare.H/string.c | 257 +++ src/MSL_C.PPCEABI.bare.H/strtoul.c | 199 ++ src/MSL_C.PPCEABI.bare.H/w_atan2.c | 39 + src/MSL_C.PPCEABI.bare.H/wchar_io.c | 22 + src/TRK_MINNOW_DOLPHIN/__exception.s | 2018 +++++++++++++++++ src/TRK_MINNOW_DOLPHIN/dispatch.c | 43 + src/TRK_MINNOW_DOLPHIN/dolphin_trk.c | 137 ++ src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c | 116 + src/TRK_MINNOW_DOLPHIN/flush_cache.c | 26 + src/TRK_MINNOW_DOLPHIN/main_TRK.c | 17 + src/TRK_MINNOW_DOLPHIN/mainloop.c | 70 + src/TRK_MINNOW_DOLPHIN/mem_TRK.c | 83 + src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c | 248 ++ src/TRK_MINNOW_DOLPHIN/msg.c | 9 + src/TRK_MINNOW_DOLPHIN/msgbuf.c | 359 +++ src/TRK_MINNOW_DOLPHIN/msghndlr.c | 689 ++++++ src/TRK_MINNOW_DOLPHIN/mutex_TRK.c | 7 + src/TRK_MINNOW_DOLPHIN/notify.c | 40 + src/TRK_MINNOW_DOLPHIN/nubevent.c | 72 + src/TRK_MINNOW_DOLPHIN/nubinit.c | 80 + src/TRK_MINNOW_DOLPHIN/serpoll.c | 82 + src/TRK_MINNOW_DOLPHIN/support.c | 177 ++ src/TRK_MINNOW_DOLPHIN/targcont.c | 12 + src/TRK_MINNOW_DOLPHIN/targimpl.c | 1177 ++++++++++ src/TRK_MINNOW_DOLPHIN/usr_put.c | 5 + src/dolphin/gx/GXFifo.c | 36 +- src/dolphin/gx/GXFrameBuf.c | 31 +- src/dolphin/gx/GXInit.c | 254 +-- src/dolphin/mtx/mtx.c | 299 ++- src/dolphin/mtx/quat.c | 130 ++ src/dolphin/mtx/vec.c | 26 +- src/dolphin/pad/Padclamp.c | 39 +- 113 files changed, 11219 insertions(+), 394 deletions(-) create mode 100644 include/OdemuExi2/odemuexi/DebuggerDriver.h create mode 100644 include/PowerPC_EABI_Support/MetroTRK/trk.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/FILE_POS.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/alloc.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/arith.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/buffer_io.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/char_io.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/critical_regions.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/direct_io.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/extras.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/float.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/limits.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mbstring.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mem_funcs.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/misc_io.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/printf.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/signal.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdlib.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/strtoul.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h create mode 100644 include/PowerPC_EABI_Support/Runtime/MWCPlusLib.h create mode 100644 include/PowerPC_EABI_Support/Runtime/NMWException.h create mode 100644 include/PowerPC_EABI_Support/Runtime/__mem.h create mode 100644 include/PowerPC_EABI_Support/Runtime/__ppc_eabi_linker.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h create mode 100644 include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h create mode 100644 include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h create mode 100644 include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h create mode 100644 include/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h create mode 100644 include/TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h create mode 100644 include/TRK_MINNOW_DOLPHIN/ppc/Generic/flush_cache.h create mode 100644 include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h create mode 100644 include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h create mode 100644 include/amcstubs/AmcExi2Stubs.h create mode 100644 include/dolphin/math.h create mode 100644 src/MSL_C.PPCEABI.bare.H/abort_exit.c create mode 100644 src/MSL_C.PPCEABI.bare.H/ansi_files.c create mode 100644 src/MSL_C.PPCEABI.bare.H/buffer_io.c create mode 100644 src/MSL_C.PPCEABI.bare.H/ctype.c create mode 100644 src/MSL_C.PPCEABI.bare.H/direct_io.c create mode 100644 src/MSL_C.PPCEABI.bare.H/e_asin.c create mode 100644 src/MSL_C.PPCEABI.bare.H/e_atan2.c create mode 100644 src/MSL_C.PPCEABI.bare.H/errno.c create mode 100644 src/MSL_C.PPCEABI.bare.H/float.c create mode 100644 src/MSL_C.PPCEABI.bare.H/mbstring.c create mode 100644 src/MSL_C.PPCEABI.bare.H/mem.c create mode 100644 src/MSL_C.PPCEABI.bare.H/mem_funcs.c create mode 100644 src/MSL_C.PPCEABI.bare.H/misc_io.c create mode 100644 src/MSL_C.PPCEABI.bare.H/printf.c create mode 100644 src/MSL_C.PPCEABI.bare.H/rand.c create mode 100644 src/MSL_C.PPCEABI.bare.H/s_atan.c create mode 100644 src/MSL_C.PPCEABI.bare.H/s_frexp.c create mode 100644 src/MSL_C.PPCEABI.bare.H/scanf.c create mode 100644 src/MSL_C.PPCEABI.bare.H/string.c create mode 100644 src/MSL_C.PPCEABI.bare.H/strtoul.c create mode 100644 src/MSL_C.PPCEABI.bare.H/w_atan2.c create mode 100644 src/MSL_C.PPCEABI.bare.H/wchar_io.c create mode 100644 src/TRK_MINNOW_DOLPHIN/__exception.s create mode 100644 src/TRK_MINNOW_DOLPHIN/dispatch.c create mode 100644 src/TRK_MINNOW_DOLPHIN/dolphin_trk.c create mode 100644 src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c create mode 100644 src/TRK_MINNOW_DOLPHIN/flush_cache.c create mode 100644 src/TRK_MINNOW_DOLPHIN/main_TRK.c create mode 100644 src/TRK_MINNOW_DOLPHIN/mainloop.c create mode 100644 src/TRK_MINNOW_DOLPHIN/mem_TRK.c create mode 100644 src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c create mode 100644 src/TRK_MINNOW_DOLPHIN/msg.c create mode 100644 src/TRK_MINNOW_DOLPHIN/msgbuf.c create mode 100644 src/TRK_MINNOW_DOLPHIN/msghndlr.c create mode 100644 src/TRK_MINNOW_DOLPHIN/mutex_TRK.c create mode 100644 src/TRK_MINNOW_DOLPHIN/notify.c create mode 100644 src/TRK_MINNOW_DOLPHIN/nubevent.c create mode 100644 src/TRK_MINNOW_DOLPHIN/nubinit.c create mode 100644 src/TRK_MINNOW_DOLPHIN/serpoll.c create mode 100644 src/TRK_MINNOW_DOLPHIN/support.c create mode 100644 src/TRK_MINNOW_DOLPHIN/targcont.c create mode 100644 src/TRK_MINNOW_DOLPHIN/targimpl.c create mode 100644 src/TRK_MINNOW_DOLPHIN/usr_put.c diff --git a/config/GMPE01_00/splits.txt b/config/GMPE01_00/splits.txt index 6b38187f..fc3ba2b8 100644 --- a/config/GMPE01_00/splits.txt +++ b/config/GMPE01_00/splits.txt @@ -1186,7 +1186,7 @@ TRK_MINNOW_DOLPHIN/serpoll.c: .text start:0x800ECC5C end:0x800ED028 .bss start:0x801A9110 end:0x801A9128 -TRK_MINNOW_DOLPHIN/usrput.c: +TRK_MINNOW_DOLPHIN/usr_put.c: .text start:0x800ED028 end:0x800ED0B4 TRK_MINNOW_DOLPHIN/dispatch.c: @@ -1224,7 +1224,7 @@ TRK_MINNOW_DOLPHIN/targimpl.c: TRK_MINNOW_DOLPHIN/targsupp.c: .text start:0x800F1CF0 end:0x800F1D10 -TRK_MINNOW_DOLPHIN/__exception.c: +TRK_MINNOW_DOLPHIN/__exception.s: .init start:0x80003534 end:0x80005468 TRK_MINNOW_DOLPHIN/dolphin_trk.c: diff --git a/config/GMPE01_01/splits.txt b/config/GMPE01_01/splits.txt index 6b38187f..fc3ba2b8 100644 --- a/config/GMPE01_01/splits.txt +++ b/config/GMPE01_01/splits.txt @@ -1186,7 +1186,7 @@ TRK_MINNOW_DOLPHIN/serpoll.c: .text start:0x800ECC5C end:0x800ED028 .bss start:0x801A9110 end:0x801A9128 -TRK_MINNOW_DOLPHIN/usrput.c: +TRK_MINNOW_DOLPHIN/usr_put.c: .text start:0x800ED028 end:0x800ED0B4 TRK_MINNOW_DOLPHIN/dispatch.c: @@ -1224,7 +1224,7 @@ TRK_MINNOW_DOLPHIN/targimpl.c: TRK_MINNOW_DOLPHIN/targsupp.c: .text start:0x800F1CF0 end:0x800F1D10 -TRK_MINNOW_DOLPHIN/__exception.c: +TRK_MINNOW_DOLPHIN/__exception.s: .init start:0x80003534 end:0x80005468 TRK_MINNOW_DOLPHIN/dolphin_trk.c: diff --git a/configure.py b/configure.py index 545739bb..22c85a12 100644 --- a/configure.py +++ b/configure.py @@ -242,6 +242,9 @@ cflags_trk = [ "-sdata 0", "-sdata2 0", "-inline auto,deferred", + "-pool off", + "-enum min", + "-sdatathreshold 0" ] cflags_odemuexi = [ @@ -344,6 +347,16 @@ def DolphinLib(lib_name, objects): } +def DolphinLibUnpatched(lib_name, objects): + return { + "lib": lib_name, + "mw_version": "GC/1.2.5", + "cflags": cflags_dolphin, + "host": False, + "objects": objects, + } + + def MusyX(objects, mw_version="GC/1.3.2", debug=False, major=1, minor=5, patch=4): cflags = cflags_musyx if not debug else cflags_musyx_debug return { @@ -514,14 +527,14 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/db.c"), ], ), - DolphinLib( + DolphinLibUnpatched( "mtx", [ - Object(NonMatching, "dolphin/mtx/mtx.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/mtx.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/mtxvec.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/mtx44.c"), - Object(NonMatching, "dolphin/mtx/vec.c"), - Object(NonMatching, "dolphin/mtx/quat.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/vec.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/quat.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/mtx/psmtx.c"), ], ), @@ -554,7 +567,7 @@ config.libs = [ DolphinLib( "pad", [ - Object(NonMatching, "dolphin/pad/Padclamp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/pad/Padclamp.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/pad/Pad.c"), ], ), @@ -582,12 +595,12 @@ config.libs = [ DolphinLib( "gx", [ - Object(NonMatching, "dolphin/gx/GXInit.c"), - Object(NonMatching, "dolphin/gx/GXFifo.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXInit.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXFifo.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXAttr.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXMisc.c"), - Object(NonMatching, "dolphin/gx/GXGeometry.c"), - Object(NonMatching, "dolphin/gx/GXFrameBuf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXGeometry.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXFrameBuf.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXLight.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXTexture.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/gx/GXBump.c"), @@ -669,7 +682,7 @@ config.libs = [ "objects": [ Object(NonMatching, "MSL_C.PPCEABI.bare.H/abort_exit.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/alloc.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/errno.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/errno.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/ansi_files.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/ansi_fp.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/arith.c"), @@ -683,7 +696,7 @@ config.libs = [ Object(NonMatching, "MSL_C.PPCEABI.bare.H/mem_funcs.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/misc_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/printf.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/float.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/float.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/signal.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/string.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/uart_console_io.c"), @@ -702,14 +715,14 @@ config.libs = [ Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_copysign.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_cos.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_floor.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_frexp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_frexp.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_ldexp.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_modf.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_sin.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_tan.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_acos.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_asin.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_atan2.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/w_atan2.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_fmod.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_pow.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/math_ppc.c"), @@ -721,28 +734,28 @@ config.libs = [ "cflags": cflags_trk, "host": False, "objects": [ - Object(NonMatching, "TRK_MINNOW_DOLPHIN/mainloop.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/nubevent.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/nubinit.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mainloop.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/nubevent.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/nubinit.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/msg.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/msgbuf.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/serpoll.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/usrput.c"), + Object(NonMatching, "TRK_MINNOW_DOLPHIN/usr_put.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/dispatch.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/msghndlr.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/support.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/mutex_TRK.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mutex_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/notify.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/flush_cache.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/flush_cache.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/mem_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/targimpl.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/targsupp.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/__exception.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/__exception.s"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/dolphin_trk.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/main_TRK.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/main_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/targcont.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/targcont.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/target_options.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/mslsupp.c"), ], diff --git a/include/OdemuExi2/odemuexi/DebuggerDriver.h b/include/OdemuExi2/odemuexi/DebuggerDriver.h new file mode 100644 index 00000000..71a27ed3 --- /dev/null +++ b/include/OdemuExi2/odemuexi/DebuggerDriver.h @@ -0,0 +1,24 @@ +#ifndef ODEMUEXI_DEBUGGER_DRIVER_H +#define ODEMUEXI_DEBUGGER_DRIVER_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +int Hu_IsStub(); + +void DBInitComm(volatile u8** param_1, __OSInterruptHandler param_2); +void DBInitInterrupts(void); +u32 DBQueryData(void); +int DBRead(void* data, u32 size); +int DBWrite(const void* data, u32 size); +void DBOpen(void); +void DBClose(void); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/PowerPC_EABI_Support/MetroTRK/trk.h b/include/PowerPC_EABI_Support/MetroTRK/trk.h new file mode 100644 index 00000000..c8814672 --- /dev/null +++ b/include/PowerPC_EABI_Support/MetroTRK/trk.h @@ -0,0 +1,381 @@ +#ifndef __METROTRK_TRK_H__ +#define __METROTRK_TRK_H__ + +#include "dolphin/types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +//////////// TRK ENUMS ///////////// +// Hardware types. +typedef enum { + HARDWARE_AMC_DDH = 0, + HARDWARE_GDEV = 1, + HARDWARE_BBA = 2, +} HardwareType; + +// DS Error returns. +enum { + DS_NoError = 0x0, + DS_StepError = 0x1, + DS_ParameterError = 0x2, + + DS_EventQueueFull = 0x100, + + DS_NoMessageBufferAvailable = 0x300, + DS_MessageBufferOverflow = 0x301, + DS_MessageBufferReadError = 0x302, + + DS_DispatchError = 0x500, + + DS_InvalidMemory = 0x700, + DS_InvalidRegister = 0x701, + DS_CWDSException = 0x702, + DS_UnsupportedError = 0x703, + DS_InvalidProcessID = 0x704, + DS_InvalidThreadID = 0x705, + DS_OSError = 0x706, + + DS_Error800 = 0x800, +}; + +typedef int DSError; + +// Where to read/write. +typedef enum { + DS_Stdin = 0, + DS_Stdout = 1, + DS_Stderr = 2, +} DSFileHandle; + +// IO returns. +typedef enum { + DS_IONoError = 0, + DS_IOError = 1, + DS_IOEOF = 2, +} DSIOResult; + +// Message command IDs +typedef enum { + DSMSG_Ping = 0x0, + DSMSG_Connect = 0x1, + DSMSG_Disconnect = 0x2, + DSMSG_Reset = 0x3, + DSMSG_Versions = 0x4, + DSMSG_SupportMask = 0x5, + DSMSG_Override = 0x7, + + DSMSG_ReadMemory = 0x10, + DSMSG_WriteMemory = 0x11, + DSMSG_ReadRegisters = 0x12, + DSMSG_WriteRegisters = 0x13, + DSMSG_SetOption = 0x17, + DSMSG_Continue = 0x18, + DSMSG_Step = 0x19, + DSMSG_Stop = 0x1A, + + DSMSG_ReplyACK = 0x80, + + DSMSG_NotifyStopped = 0x90, + DSMSG_NotifyException = 0x91, + + DSMSG_WriteFile = 0xD0, + DSMSG_ReadFile = 0xD1, + DSMSG_OpenFile = 0xD2, + DSMSG_CloseFile = 0xD3, + DSMSG_PositionFile = 0xD4, + + DSMSG_ReplyNAK = 0xFF, +} MessageCommandID; + +// Register commands. +typedef enum { + DSREG_Default = 0, + DSREG_FP = 1, + DSREG_Extended1 = 2, + DSREG_Extended2 = 3, +} DSMessageRegisterOptions; + +// Step commands. +typedef enum { + DSSTEP_IntoCount = 0x0, + DSSTEP_IntoRange = 0x1, + DSSTEP_OverCount = 0x10, + DSSTEP_OverRange = 0x11, +} DSMessageStepOptions; + +typedef enum { + DSREPLY_NoError = 0x0, + DSREPLY_Error = 0x1, + DSREPLY_PacketSizeError = 0x2, + DSREPLY_CWDSError = 0x3, + DSREPLY_EscapeError = 0x4, + DSREPLY_BadFCS = 0x5, + DSREPLY_Overflow = 0x6, + DSREPLY_SequenceMissing = 0x7, + + DSREPLY_UnsupportedCommandError = 0x10, + DSREPLY_ParameterError = 0x11, + DSREPLY_UnsupportedOptionError = 0x12, + DSREPLY_InvalidMemoryRange = 0x13, + DSREPLY_InvalidRegisterRange = 0x14, + DSREPLY_CWDSException = 0x15, + DSREPLY_NotStopped = 0x16, + DSREPLY_BreakpointsFull = 0x17, + DSREPLY_BreakpointConflict = 0x18, + + DSREPLY_OSError = 0x20, + DSREPLY_InvalidProcessID = 0x21, + DSREPLY_InvalidThreadID = 0x22, + DSREPLY_DebugSecurityError = 0x23, +} DSReplyError; + +typedef enum { + DSRECV_Wait = 0, + DSRECV_Found = 1, + DSRECV_InFrame = 2, + DSRECV_FrameOverflow = 3, +} ReceiverState; + +typedef enum { + DSMSGMEMORY_Segmented = 0x01, /* non-flat addr space */ + DSMSGMEMORY_Extended = 0x02, /* > 32-bit data addr */ + DSMSGMEMORY_Protected = 0x04, /* non-user memory */ + DSMSGMEMORY_Userview = 0x08, /* breakpoints are invisible */ + DSMSGMEMORY_Space_program = 0x00, + DSMSGMEMORY_Space_data = 0x40, + DSMSGMEMORY_Space_io = 0x80 +}; + +typedef enum { + NUBEVENT_Null = 0, + NUBEVENT_Shutdown = 1, + NUBEVENT_Request = 2, + NUBEVENT_Breakpoint = 3, + NUBEVENT_Exception = 4, + NUBEVENT_Support = 5, +} NubEventType; + +typedef enum { + VALIDMEM_Readable = 0, + VALIDMEM_Writeable = 1, +} ValidMemoryOptions; + +typedef enum { + MEMACCESS_UserMemory = 0, + MEMACCESS_DebuggerMemory = 1, +} MemoryAccessOptions; + +typedef int UARTError; + +typedef enum { + UART_NoError = 0, + UART_UnknownBaudRate = 1, + UART_ConfigurationError = 2, + UART_BufferOverflow = 3, // specified buffer was too small + UART_NoData = 4, // no data available from polling +} UARTErrorOptions; + +typedef enum { + kBaudHWSet = -1, // use HW settings such as DIP switches + kBaud300 = 300, // valid baud rates + kBaud600 = 600, + kBaud1200 = 1200, + kBaud1800 = 1800, + kBaud2000 = 2000, + kBaud2400 = 2400, + kBaud3600 = 3600, + kBaud4800 = 4800, + kBaud7200 = 7200, + kBaud9600 = 9600, + kBaud19200 = 19200, + kBaud38400 = 38400, + kBaud57600 = 57600, + kBaud115200 = 115200, + kBaud230400 = 230400 +} UARTBaudRate; + +//////////////////////////////////// + +typedef int MessageBufferID; + +#define TRKMSGBUF_SIZE (0x800 + 0x80) + +typedef struct TRKBuffer { + /* 0x00 */ u32 mutex; + /* 0x04 */ BOOL isInUse; + /* 0x08 */ u32 length; + /* 0x0C */ u32 position; + /* 0x10 */ u8 data[TRKMSGBUF_SIZE]; +} TRKBuffer; + +typedef struct TRKFramingState { + MessageBufferID msgBufID; // _00 + TRKBuffer* buffer; // _04 + ReceiverState receiveState; // _08 + BOOL isEscape; // _0C + u8 fcsType; // _10 +} TRKFramingState; + +typedef struct TRKState_PPC { + u32 GPR[32]; // 0x0 + u32 LR; // 0x80 + u32 CTR; // 0x84 + u32 XER; // 0x88 + u32 MSR; // 0x8c + u32 DAR; // 0x90 + u32 DSISR; // 0x94 + BOOL stopped; // 0x98 + BOOL inputActivated; // 0x9c + u8* inputPendingPtr; // 0xA0 +} TRKState_PPC; + +typedef struct CommandReply { + u32 _00; // _00 + union { + u8 b; + MessageCommandID m; + } commandID; // _04, use MessageCommandID enum + union { + u8 b; + DSReplyError r; + } replyError; // _08, use DSReplyError enum - should be enum type? check + // size. + u32 _0C; // _0C + u8 _10[0x30]; // _10, unknown +} CommandReply; + +typedef struct ProcessorRestoreFlags_PPC { + u8 TBR; + u8 DEC; + u8 linker_padding[0x9 - 0x2]; +} ProcessorRestoreFlags_PPC; + +void TRKSaveExtended1Block(); + +#define SPR_XER 1 +#define SPR_LR 8 +#define SPR_CTR 9 +#define SPR_DSISR 18 +#define SPR_DAR 19 +#define SPR_DEC 22 +#define SPR_SDR1 25 +#define SPR_SRR0 26 +#define SPR_SRR1 27 +#define SPR_SPRG0 272 +#define SPR_SPRG1 273 +#define SPR_SPRG2 274 +#define SPR_SPRG3 275 +#define SPR_EAR 282 +#define SPR_TBL 284 +#define SPR_TBU 285 +#define SPR_PVR 287 +#define SPR_IBAT0U 528 +#define SPR_IBAT0L 529 +#define SPR_IBAT1U 530 +#define SPR_IBAT1L 531 +#define SPR_IBAT2U 532 +#define SPR_IBAT2L 533 +#define SPR_IBAT3U 534 +#define SPR_IBAT3L 535 +#define SPR_IBAT4U 560 +#define SPR_IBAT4L 561 +#define SPR_IBAT5U 562 +#define SPR_IBAT5L 563 +#define SPR_IBAT6U 564 +#define SPR_IBAT6L 565 +#define SPR_IBAT7U 566 +#define SPR_IBAT7L 567 +#define SPR_DBAT0U 536 +#define SPR_DBAT0L 537 +#define SPR_DBAT1U 538 +#define SPR_DBAT1L 539 +#define SPR_DBAT2U 540 +#define SPR_DBAT2L 541 +#define SPR_DBAT3U 542 +#define SPR_DBAT3L 543 +#define SPR_DBAT4U 568 +#define SPR_DBAT4L 569 +#define SPR_DBAT5U 570 +#define SPR_DBAT5L 571 +#define SPR_DBAT6U 572 +#define SPR_DBAT6L 573 +#define SPR_DBAT7U 574 +#define SPR_DBAT7L 575 +#define SPR_GQR0 912 +#define SPR_GQR1 913 +#define SPR_GQR2 914 +#define SPR_GQR3 915 +#define SPR_GQR4 916 +#define SPR_GQR5 917 +#define SPR_GQR6 918 +#define SPR_GQR7 919 +#define SPR_HID2 920 +#define SPR_WPAR 921 +#define SPR_DMA_U 922 +#define SPR_DMA_L 923 +#define SPR_UMMCR0 936 +#define SPR_UPMC1 937 +#define SPR_UPMC2 938 +#define SPR_USIA 939 +#define SPR_UMMCR1 940 +#define SPR_UPMC3 941 +#define SPR_UPMC4 942 +#define SPR_USDA 943 +#define SPR_MMCR0 952 +#define SPR_PMC1 953 +#define SPR_PMC2 954 +#define SPR_SIA 955 +#define SPR_MMCR1 956 +#define SPR_PMC3 957 +#define SPR_PMC4 958 +#define SPR_SDA 959 +#define SPR_HID0 1008 +#define SPR_HID1 1009 +#define SPR_IABR 1010 +#define SPR_HID4 1011 +#define SPR_DABR 1013 +#define SPR_L2CR 1017 +#define SPR_ICTC 1019 +#define SPR_THRM1 1020 +#define SPR_THRM2 1021 +#define SPR_FPECR 1022 + +// PPC exceptions +// 0x000 is reserved +#define PPC_SystemReset 0x100 +#define PPC_MachineCheck 0x200 +#define PPC_DataStorage 0x300 +#define PPC_InstructionStorage 0x400 +#define PPC_ExternalInterrupt 0x500 +#define PPC_Alignment 0x600 +#define PPC_Program 0x700 +#define PPC_FloatingPointUnavaiable 0x800 +#define PPC_Decrementer 0x900 +// 0xA00-0xB00 are reserved +#define PPC_SystemCall 0xC00 +#define PPC_Trace 0xD00 +#define PPC_FloatingPointAssist 0xE00 // unimplemented in 750CL +#define PPC_PerformanceMonitor 0xF00 // Dolphin/Broadway specific +// 0x1000-0x1200 are unimplemented in 750CL +#define PPC_InstructionAddressBreakpoint 0x1300 // Dolphin/Broadway specific +// 0x1400-0x2F00 are reserved, but TRK uses some +#define PPC_SystemManagementInterrupt 0x1400 +// 0x1500-0x1600 are unimplemented in 750CL +#define PPC_ThermalManagementInterrupt 0x1700 +#define PPC_1800Exception 0x1800 +#define PPC_1900Exception 0x1900 +#define PPC_1A00Exception 0x1A00 +#define PPC_1B00Exception 0x1B00 +#define PPC_1C00Exception 0x1C00 // Data breakpoint? +#define PPC_1D00Exception 0x1D00 // Instruction breakpoint? +#define PPC_1E00Exception 0x1E00 // Peripheral breakpoint? +#define PPC_1F00Exception 0x1F00 // Non maskable development port? +#define PPC_2000Exception 0x2000 + +#ifdef __cplusplus +} +#endif + +#endif /* __METROTRK_TRK_H__ */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/FILE_POS.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/FILE_POS.h new file mode 100644 index 00000000..046471d5 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/FILE_POS.h @@ -0,0 +1,18 @@ +#ifndef _MSL_COMMON_FILE_POS_H +#define _MSL_COMMON_FILE_POS_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +#ifdef __cplusplus +extern "C" { +#endif + +int fseek(FILE* file, unsigned long offset, int mode); +int _fseek(FILE* file, fpos_t offset, int mode); +long ftell(FILE* file); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_FILE_POS_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h new file mode 100644 index 00000000..7c62fe70 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h @@ -0,0 +1,17 @@ +#ifndef _MSL_COMMON_ABORT_EXIT_H +#define _MSL_COMMON_ABORT_EXIT_H + +#ifdef __cplusplus +extern "C" { +#endif + +void exit(int status); +void abort(void); + +extern void (*__stdio_exit)(void); + +#ifdef __cplusplus +}; +#endif + +#endif /* _MSL_COMMON_ABORT_EXIT_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/alloc.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/alloc.h new file mode 100644 index 00000000..6b08d6f9 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/alloc.h @@ -0,0 +1,16 @@ +#ifndef _MSL_COMMON_ALLOC_H +#define _MSL_COMMON_ALLOC_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void free(void* ptr); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_ALLOC_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h new file mode 100644 index 00000000..f06c55df --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h @@ -0,0 +1,133 @@ +#ifndef _MSL_COMMON_ANSI_FILES_H +#define _MSL_COMMON_ANSI_FILES_H + +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define SEEK_SET 0 +#define SEEK_CUR 1 +#define SEEK_END 2 + +typedef unsigned long __file_handle; +typedef unsigned long fpos_t; +#ifndef __cplusplus +typedef unsigned short wchar_t; +#endif + +#define set_error(file) \ + do { \ + (file)->file_state.error = 1; \ + (file)->buffer_length = 0; \ + } while (0) + +enum __file_kinds { + __closed_file, + __disk_file, + __console_file, + __string_file, + __unavailable_file, +}; + +enum __file_orientation { + /* 0x0 */ UNORIENTED, + /* 0x1 */ CHAR_ORIENTED, + /* 0x2 */ WIDE_ORIENTED, +}; + +typedef struct _file_modes { + unsigned int open_mode : 2; + unsigned int io_mode : 3; + unsigned int buffer_mode : 2; + unsigned int file_kind : 3; + unsigned int file_orientation : 2; + unsigned int binary_io : 1; +} file_modes; + +enum __io_modes { + __read = 1, + __write = 2, + __read_write = 3, + __append = 4, +}; + +enum __io_states { + __neutral, + __writing, + __reading, + __rereading, +}; + +enum __io_results { + __no_io_error, + __io_error, + __io_EOF, +}; + +typedef struct _file_states { + unsigned int io_state : 3; + unsigned int free_buffer : 1; + unsigned char eof; + unsigned char error; +} file_states; + +typedef void (*__idle_proc)(void); +typedef int (*__pos_proc)(__file_handle file, fpos_t* position, int mode, + __idle_proc idle_proc); +typedef int (*__io_proc)(__file_handle file, unsigned char* buff, size_t* count, + __idle_proc idle_proc); +typedef int (*__close_proc)(__file_handle file); + +typedef struct _FILE { + __file_handle handle; + file_modes file_mode; + file_states file_state; + + char char_buffer; + char char_buffer_overflow; + char ungetc_buffer[2]; + wchar_t ungetc_wide_buffer[2]; + + unsigned long position; + unsigned char* buffer; + unsigned long buffer_size; + unsigned char* buffer_ptr; + unsigned long buffer_length; + unsigned long buffer_alignment; + unsigned long save_buffer_length; + unsigned long buffer_position; + + __pos_proc position_fn; + __io_proc read_fn; + __io_proc write_fn; + __close_proc close_fn; + __idle_proc idle_fn; +} FILE; + +typedef struct _files { + FILE _stdin; + FILE _stdout; + FILE _stderr; +} files; + +#define _IONBF 0 +#define _IOLBF 1 +#define _IOFBF 2 + +extern files __files; +extern int __close_console(__file_handle file); +extern int __write_console(__file_handle file, unsigned char* buf, + size_t* count, __idle_proc idle_fn); +extern int __read_console(__file_handle file, unsigned char* buf, size_t* count, + __idle_proc idle_fn); + +unsigned int __flush_all(void); +void __close_all(void); + +#ifdef __cplusplus +}; +#endif + +#endif /* _MSL_COMMON_ANSI_FILES_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h new file mode 100644 index 00000000..90ba7acf --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h @@ -0,0 +1,36 @@ +#ifndef _MSL_COMMON_ANSI_FP_H +#define _MSL_COMMON_ANSI_FP_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/float.h" + +#define SIGDIGLEN 36 + +typedef struct decimal { + char sign; + char unk1; + short exp; + struct { + unsigned char length; + unsigned char text[36]; + unsigned char unk41; + } sig; +} decimal; + +typedef struct decform { + char style; + char unk1; + short digits; +} decform; + +/* void __ull2dec(decimal*, u64); +void __timesdec(decimal*, const decimal*, const decimal*); +void __str2dec(decimal*, const char*, short); +void __two_exp(decimal*, s16); +BOOL __equals_dec(const decimal*, const decimal*); +BOOL __less_dec(const decimal*, const decimal*); +void __minus_dec(decimal*, const decimal*, const decimal*); +void __num2dec_internal(decimal*, f64); +void __num2dec(const decform*, f64, decimal*); +f64 __dec2num(const decimal*); */ + +#endif diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/arith.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/arith.h new file mode 100644 index 00000000..317dfa0d --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/arith.h @@ -0,0 +1,19 @@ +#ifndef _MSL_COMMON_ARITH_H +#define _MSL_COMMON_ARITH_H + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct { + int quot; /* quotient */ + int rem; /* remainder */ +} div_t; + +div_t div(int numerator, int denominator); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_ARITH_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/buffer_io.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/buffer_io.h new file mode 100644 index 00000000..85ad160a --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/buffer_io.h @@ -0,0 +1,11 @@ +#ifndef _MSL_COMMON_BUFFER_IO_H +#define _MSL_COMMON_BUFFER_IO_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +enum { __align_buffer, __dont_align_buffer }; + +void __prep_buffer(FILE* file); +int __flush_buffer(FILE* file, size_t* bytes_flushed); + +#endif /* _MSL_COMMON_BUFFER_IO_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/char_io.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/char_io.h new file mode 100644 index 00000000..e3733cf7 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/char_io.h @@ -0,0 +1,17 @@ +#ifndef _MSL_COMMON_CHAR_IO_H +#define _MSL_COMMON_CHAR_IO_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +#ifdef __cplusplus +extern "C" { +#endif + +int fputs(const char* str, FILE* stream); +int __put_char(int c, FILE* stream); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_CHAR_IO_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/critical_regions.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/critical_regions.h new file mode 100644 index 00000000..e4456725 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/critical_regions.h @@ -0,0 +1,30 @@ +#ifndef _MSL_COMMON_CRITICAL_REGIONS_H +#define _MSL_COMMON_CRITICAL_REGIONS_H + +#ifdef __cplusplus +extern "C" { +#endif + +enum critical_regions { + atexit_funcs_access, + malloc_pool_access, + stdin_access, + stdout_access, + stderr_access, + files_access, + console_status_access, + signal_funcs_access, + thread_access, + num_critical_regions +}; + +void __init_critical_regions(void); +void __kill_critical_regions(void); +void __begin_critical_region(int region); +void __end_critical_region(int region); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h new file mode 100644 index 00000000..0bb0356e --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h @@ -0,0 +1,76 @@ +#ifndef _MSL_COMMON_CTYPE_H +#define _MSL_COMMON_CTYPE_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define EOF -1L + +extern const unsigned char __ctype_map[]; +extern const unsigned char __lower_map[]; +extern const unsigned char __upper_map[]; + +#define __control_char 0x01 +#define __motion_char 0x02 +#define __space_char 0x04 +#define __punctuation 0x08 +#define __digit 0x10 +#define __hex_digit 0x20 +#define __lower_case 0x40 +#define __upper_case 0x80 + +#define __letter (__lower_case | __upper_case) +#define __alphanumeric (__letter | __digit) +#define __graphic (__alphanumeric | __punctuation) +#define __printable (__graphic | __space_char) +#define __whitespace (__motion_char | __space_char) +#define __control (__motion_char | __control_char) +#define __zero_fill(c) ((int)(unsigned char)(c)) + +int tolower(int c); +int toupper(int c); + +inline int isalpha(int c) +{ + return (int)(__ctype_map[(unsigned char)c] & __letter); +} +inline int isdigit(int c) +{ + return (int)(__ctype_map[(unsigned char)c] & __digit); +} +inline int isspace(int c) +{ + return (int)(__ctype_map[(unsigned char)c] & __whitespace); +} +inline int isupper(int c) +{ + return (int)(__ctype_map[(unsigned char)c] & __upper_case); +} +inline int isxdigit(int c) +{ + return (int)(__ctype_map[(unsigned char)c] & __hex_digit); +} + +inline int _tolower(int c) +{ + return (c == -1 ? -1 : (int)__lower_map[(unsigned char)c]); +} + +#ifdef __cplusplus +}; + +namespace std { +inline int tolower(int c) +{ + return (c == -1 ? -1 : (int)__lower_map[(unsigned char)c]); +} +inline int toupper(int c) +{ + return (c == -1 ? -1 : (int)__upper_map[(unsigned char)c]); +} +}; // namespace std + +#endif + +#endif /* _MSL_COMMON_CTYPE_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/direct_io.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/direct_io.h new file mode 100644 index 00000000..7e838551 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/direct_io.h @@ -0,0 +1,17 @@ +#ifndef _MSL_COMMON_DIRECT_IO_H +#define _MSL_COMMON_DIRECT_IO_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +#ifdef __cplusplus +extern "C" { +#endif + +size_t __fwrite(const void* buffer, size_t size, size_t count, FILE* stream); +size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_DIRECT_IO_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h new file mode 100644 index 00000000..269d896d --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h @@ -0,0 +1,20 @@ +#ifndef MSL_COMMON_SRC_ERRNO_H +#define MSL_COMMON_SRC_ERRNO_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define ENOERR 0 +#define EDOM 33 +#define ERANGE 34 +#define EFPOS 40 +#define ESIGPARM 36 + +extern int errno; + +#ifdef __cplusplus +} +#endif + +#endif /* MSL_COMMON_SRC_ERRNO_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/extras.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/extras.h new file mode 100644 index 00000000..4d8e8b62 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/extras.h @@ -0,0 +1,15 @@ +#ifndef _MSL_COMMON_EXTRAS_H +#define _MSL_COMMON_EXTRAS_H + +#ifdef __cplusplus +extern "C" { +#endif + +int strnicmp(const char* str1, const char* str2, int n); +int stricmp(const char* str1, const char* str2); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_EXTRAS_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h new file mode 100644 index 00000000..a06e7cef --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h @@ -0,0 +1,18 @@ +#ifndef _MSL_COMMON_FILE_IO_H +#define _MSL_COMMON_FILE_IO_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +#ifdef __cplusplus +extern "C" { +#endif + +int __msl_strnicmp(const char* str1, const char* str2, int n); +int fflush(FILE* file); +int fclose(FILE* file); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_FILE_IO_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/float.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/float.h new file mode 100644 index 00000000..14d34342 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/float.h @@ -0,0 +1,92 @@ +#ifndef _MSL_COMMON_FLOAT_H +#define _MSL_COMMON_FLOAT_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#define FP_SNAN 0 +#define FP_QNAN 1 +#define FP_INFINITE 2 +#define FP_ZERO 3 +#define FP_NORMAL 4 +#define FP_SUBNORMAL 5 + +#define FP_NAN FP_QNAN + +#define fpclassify(x) \ + ((sizeof(x) == sizeof(float)) ? __fpclassifyf(x) : __fpclassifyd(x)) +#define signbit(x) \ + ((sizeof(x) == sizeof(float)) ? __signbitf(x) : __signbitd(x)) +#define isfinite(x) ((fpclassify(x) > 2)) +#define isnan(x) ((fpclassify(x) == FP_NAN)) +#define isinf(x) ((fpclassify(x) == FP_INFINITE)) + +#define __signbitf(x) ((int)(__HI(x) & 0x80000000)) + +// TODO: OK? +#define __signbitd(x) ((int)(__HI(x) & 0x80000000)) + +extern unsigned long __float_nan[]; +extern unsigned long __float_huge[]; +extern unsigned long __float_max[]; +extern unsigned long __float_epsilon[]; + +inline int __fpclassifyf(float __value) +{ + unsigned long integer = *(unsigned long*)&__value; + + switch (integer & 0x7f800000) { + case 0x7f800000: + if ((integer & 0x7fffff) != 0) { + return FP_QNAN; + } + return FP_INFINITE; + + case 0: + if ((integer & 0x7fffff) != 0) { + return FP_SUBNORMAL; + } + return FP_ZERO; + } + + return FP_NORMAL; +} + +inline int __fpclassifyd(double __value) +{ + switch (__HI(__value) & 0x7ff00000) { + case 0x7ff00000: { + if ((__HI(__value) & 0x000fffff) || (__LO(__value) & 0xffffffff)) + return FP_QNAN; + else + return FP_INFINITE; + break; + } + case 0: { + if ((__HI(__value) & 0x000fffff) || (__LO(__value) & 0xffffffff)) + return FP_SUBNORMAL; + else + return FP_ZERO; + break; + } + } + return FP_NORMAL; +} + +#define FLT_MANT_DIG 24 +#define FLT_DIG 6 +#define FLT_MIN_EXP (-125) +#define FLT_MIN_10_EXP (-37) +#define FLT_MAX_EXP 128 +#define FLT_MAX_10_EXP 38 + +#define FLT_MAX 3.40282346638528860e+38f +#define FLT_EPSILON 1.1920928955078125e-07f + +#define DBL_MANT_DIG 53 +#define DBL_DIG 15 +#define DBL_MIN_EXP (-1021) +#define DBL_MIN_10_EXP (-308) +#define DBL_MAX_EXP 1024 +#define DBL_MAX_10_EXP 308 + +#endif /* _MSL_COMMON_FLOAT_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/limits.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/limits.h new file mode 100644 index 00000000..2b8b756f --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/limits.h @@ -0,0 +1,93 @@ +#ifndef _STD_LIMITS_H +#define _STD_LIMITS_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define CHAR_BIT 8 + +#define SCHAR_MIN (-0x7F - 1) +#define SCHAR_MAX 0x7F +#define UCHAR_MAX 0xFF + +#define CHAR_MIN 0 +#define CHAR_MAX SCHAR_MAX + +#define SHRT_MIN (-0x7FFF - 1) +#define SHRT_MAX 0x7FFF +#define USHRT_MAX 0xFFFF + +#define INT_MIN (-0x7FFFFFFF - 1) +#define INT_MAX 0x7FFFFFFF +#define UINT_MAX 0xFFFFFFFF + +#define LONG_MIN (-0x7FFFFFFFL - 1) +#define LONG_MAX 0x7FFFFFFFL +#define ULONG_MAX 0xFFFFFFFFUL + +#define LLONG_MIN (-0x7FFFFFFFFFFFFFFFLL - 1) +#define LLONG_MAX 0x7FFFFFFFFFFFFFFFLL +#define ULLONG_MAX 0xFFFFFFFFFFFFFFFFULL + +#ifdef __cplusplus +} + +namespace std { +template class numeric_limits { +public: + inline static T min(); + inline static T max(); +}; + +template <> class numeric_limits { +public: + inline static char min() { return -0x80; } + inline static char max() { return 0x7F; } +}; + +template <> class numeric_limits { +public: + inline static short min() { return -0x8000; } + inline static short max() { return 0x7FFF; } +}; + +template <> class numeric_limits { +public: + inline static int min() { return -0x80000000; } + inline static int max() { return 0x7FFFFFFF; } +}; + +template <> class numeric_limits { +public: + inline static long min() { return -0x80000000; } + inline static long max() { return 0x7FFFFFFF; } +}; + +template <> class numeric_limits { +public: + inline static unsigned char min() { return 0x0; } + inline static unsigned char max() { return 0xFF; } +}; + +template <> class numeric_limits { +public: + inline static unsigned short min() { return 0x0; } + inline static unsigned short max() { return 0xFFFF; } +}; + +template <> class numeric_limits { +public: + inline static unsigned int min() { return 0x0; } + inline static unsigned int max() { return 0xFFFFFFFF; } +}; + +template <> class numeric_limits { +public: + inline static unsigned long min() { return 0x0; } + inline static unsigned long max() { return 0xFFFFFFFF; } +}; + +} // namespace std +#endif +#endif diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h new file mode 100644 index 00000000..e99949cc --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h @@ -0,0 +1,106 @@ +#ifndef MSL_MATH_H_ +#define MSL_MATH_H_ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/float.h" + +#define NAN (*(float*)__float_nan) +#define HUGE_VALF (*(float*)__float_huge) + +#define M_PI 3.14159265358979323846f +#define M_SQRT3 1.73205f + +#define DEG_TO_RAD(degrees) (degrees * (M_PI / 180.0f)) +#define RAD_TO_DEG(radians) \ + (radians \ + * (180.0f / M_PI + 0.000005f)) // the 0.000005f is probably a fakematch + +#ifdef __cplusplus +extern "C" { +#endif + +int abs(int); +double acos(double); +float acosf(float); +double asin(double); +double atan(double); +double atan2(double, double); +double ceil(double); +double copysign(double, double); +double cos(double); +float cosf(float); +double exp(double); + +extern double __fabs(double); +extern float __fabsf(float); +inline double fabs(double f) { return __fabs(f); } + +double __frsqrte(double); +float __fres(float); + +double floor(double); +double fmod(double, double); + +double frexp(double, int*); +double ldexp(double, int); +double modf(double, double*); +double pow(double, double); +double sin(double); +float sinf(float); +double tan(double); +float tanf(float); + +extern inline double sqrt(double x) +{ + if (x > 0.0) { + double guess = __frsqrte(x); /* returns an approximation to */ + guess + = .5 * guess * (3.0 - guess * guess * x); /* now have 8 sig bits */ + guess + = .5 * guess * (3.0 - guess * guess * x); /* now have 16 sig bits */ + guess + = .5 * guess * (3.0 - guess * guess * x); /* now have 32 sig bits */ + guess = .5 * guess + * (3.0 - guess * guess * x); /* now have > 53 sig bits */ + return x * guess; + } else if (x == 0) + return 0; + else if (x) + return NAN; + + return HUGE_VALF; +} + +#ifdef __cplusplus +}; + +namespace std { +inline float fabsf(float f) { return fabs(f); } +inline float abs(float f) { return fabsf(f); } +inline float fmodf(float x, float y) { return fmod(x, y); } +inline float atan2f(float y, float x) { return (float)atan2(y, x); } +inline float sinf(float x) { return sin(x); } +inline float cosf(float x) { return cos(x); } +inline float tanf(float x) { return tan(x); } + +extern inline float sqrtf(float x) +{ + const double _half = .5; + const double _three = 3.0; + volatile float y; + if (x > 0.0f) { + double guess = __frsqrte((double)x); // returns an approximation to + guess = _half * guess + * (_three - guess * guess * x); // now have 12 sig bits + guess = _half * guess + * (_three - guess * guess * x); // now have 24 sig bits + guess = _half * guess + * (_three - guess * guess * x); // now have 32 sig bits + y = (float)(x * guess); + return y; + } + return x; +} +}; // namespace std +#endif + +#endif diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mbstring.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mbstring.h new file mode 100644 index 00000000..2aa9f4ea --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mbstring.h @@ -0,0 +1,16 @@ +#ifndef _MSL_COMMON_MBSTRING_H +#define _MSL_COMMON_MBSTRING_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h" + +#ifdef __cplusplus +extern "C" { +#endif + +size_t wcstombs(char* dst, const wchar_t* src, size_t n); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_MBSTRING_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mem_funcs.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mem_funcs.h new file mode 100644 index 00000000..0e245466 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mem_funcs.h @@ -0,0 +1,19 @@ +#ifndef _MSL_COMMON_MEM_FUNCS_H +#define _MSL_COMMON_MEM_FUNCS_H + +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void __copy_longs_rev_unaligned(void* dst, const void* src, size_t n); +void __copy_longs_unaligned(void* dst, const void* src, size_t n); +void __copy_longs_rev_aligned(void* dst, const void* src, size_t n); +void __copy_longs_aligned(void* dst, const void* src, size_t n); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_MEM_FUNCS_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/misc_io.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/misc_io.h new file mode 100644 index 00000000..715f282a --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/misc_io.h @@ -0,0 +1,14 @@ +#ifndef _MSL_COMMON_MISC_IO_H +#define _MSL_COMMON_MISC_IO_H + +#ifdef __cplusplus +extern "C" { +#endif + +void __stdio_atexit(void); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_MISC_IO_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/printf.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/printf.h new file mode 100644 index 00000000..e716867f --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/printf.h @@ -0,0 +1,22 @@ +#ifndef _MSL_COMMON_PRINTF_H +#define _MSL_COMMON_PRINTF_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" +#include "stdarg.h" + +#ifdef __cplusplus +extern "C" { +#endif + +int fprintf(FILE* stream, const char* format, ...); +int printf(const char* format, ...); +int sprintf(char* s, const char* format, ...); +int snprintf(char* s, size_t n, const char* format, ...); +int vsnprintf(char* s, size_t n, const char* format, va_list arg); +int vprintf(const char* format, va_list arg); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_PRINTF_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h new file mode 100644 index 00000000..c6451e34 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h @@ -0,0 +1,43 @@ +#ifndef _MSL_COMMON_SCANF_H +#define _MSL_COMMON_SCANF_H + +#include "stddef.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +#ifdef __cplusplus +extern "C" { +#endif + +enum __ReadProcActions { __GetAChar, __UngetAChar, __TestForError }; + +enum __WReadProcActions { __GetAwChar, __UngetAwChar, __TestForwcsError }; + +typedef struct { + char* CharStr; + size_t MaxCharCount; + size_t CharsWritten; +} __OutStrCtrl; + +typedef struct { + char* NextChar; + int NullCharDetected; +} __InStrCtrl; + +typedef struct { + wchar_t* wCharStr; + size_t MaxCharCount; + size_t CharsWritten; +} __wOutStrCtrl; + +typedef struct { + wchar_t* wNextChar; + int wNullCharDetected; +} __wInStrCtrl; + +int __StringRead(void* str, int ch, int behavior); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_SCANF_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/signal.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/signal.h new file mode 100644 index 00000000..58fc22ab --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/signal.h @@ -0,0 +1,16 @@ +#ifndef _MSL_COMMON_SIGNAL_H +#define _MSL_COMMON_SIGNAL_H + +#ifdef __cplusplus +extern "C" { +#endif + +typedef void (*__signal_func_ptr)(int); + +int raise(int sig); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_SIGNAL_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h new file mode 100644 index 00000000..89806588 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h @@ -0,0 +1,13 @@ +#ifndef MSL_STDIO_H_ +#define MSL_STDIO_H_ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/char_io.h" // IWYU pragma: export +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h" // IWYU pragma: export +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/printf.h" // IWYU pragma: export +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/extras.h" // IWYU pragma: export + +#define stdin (&__files._stdin) +#define stdout (&__files._stdout) +#define stderr (&__files._stderr) + +#endif diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdlib.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdlib.h new file mode 100644 index 00000000..9df0be5b --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdlib.h @@ -0,0 +1,9 @@ +#ifndef MSL_STDLIB_H_ +#define MSL_STDLIB_H_ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/arith.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mbstring.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/strtoul.h" + +#endif diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/strtoul.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/strtoul.h new file mode 100644 index 00000000..843ee863 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/strtoul.h @@ -0,0 +1,18 @@ +#ifndef _MSL_COMMON_STRTOUL_H +#define _MSL_COMMON_STRTOUL_H + +#ifdef __cplusplus +extern "C" { +#endif + +long strtol(const char* str, char** end, int base); +unsigned long strtoul(const char* str, char** end, int base); +unsigned long __strtoul(int base, int max_width, + int (*ReadProc)(void*, int, int), void* ReadProcArg, + int* chars_scanned, int* negative, int* overflow); + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_STRTOUL_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h new file mode 100644 index 00000000..90153f95 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h @@ -0,0 +1,12 @@ +#ifndef _MSL_COMMON_WCHAR_IO_H +#define _MSL_COMMON_WCHAR_IO_H + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +#ifndef __cplusplus +typedef unsigned short wchar_t; +#endif + +int fwide(FILE* file, int mode); + +#endif /* _MSL_COMMON_WCHAR_IO_H */ diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h new file mode 100644 index 00000000..1f654aa7 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h @@ -0,0 +1,234 @@ +#ifndef _FDLIBM_H +#define _FDLIBM_H + +/* @(#)fdlibm.h 1.5 04/04/22 */ +/** + * ==================================================== + * Copyright (C) 2004 by Sun Microsystems, Inc. All rights reserved. + * + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +#ifdef __cplusplus +extern "C" { +#endif // ifdef __cplusplus + +/* Sometimes it's necessary to define __LITTLE_ENDIAN explicitly + but these catch some common cases. */ + +#if defined(i386) || defined(i486) || defined(intel) || defined(x86) \ + || defined(i86pc) || defined(__alpha) || defined(__osf__) +#define __LITTLE_ENDIAN +#endif + +#ifdef __LITTLE_ENDIAN +#define __HI(x) *(1 + (int*)&x) +#define __LO(x) *(int*)&x +#define __HIp(x) *(1 + (int*)x) +#define __LOp(x) *(int*)x +#else +#define __HI(x) *(int*)&x +#define __LO(x) *(1 + (int*)&x) +#define __HIp(x) *(int*)x +#define __LOp(x) *(1 + (int*)x) +#endif + +// NOTE: should be enabled according to w_atan2.c +#define _IEEE_LIBM + +// TODO: should __STDC__ actually be defined? +// #ifdef __STDC__ +#define __P(p) p +// #else +// #define __P(p) () +// #endif + +/** + * ANSI/POSIX + */ + +extern int signgam; + +#define MAXFLOAT ((f32)3.40282346638528860e+38) + +enum fdversion { fdlibm_ieee = -1, fdlibm_svid, fdlibm_xopen, fdlibm_posix }; + +#define _LIB_VERSION_TYPE enum fdversion +#define _LIB_VERSION _fdlib_version + +/* if global variable _LIB_VERSION is not desirable, one may + * change the following to be a constant by: + * #define _LIB_VERSION_TYPE const enum version + * In that case, after one initializes the value _LIB_VERSION (see + * s_lib_version.c) during compile time, it cannot be modified + * in the middle of a program + */ +extern _LIB_VERSION_TYPE _LIB_VERSION; + +#define _IEEE_ fdlibm_ieee +#define _SVID_ fdlibm_svid +#define _XOPEN_ fdlibm_xopen +#define _POSIX_ fdlibm_posix + +struct exception { + int type; + char* name; + double arg1; + double arg2; + double retval; +}; + +#define HUGE MAXFLOAT + +/** + * set X_TLOSS = pi*2**52, which is possibly defined in + * (one may replace the following line by "#include ") + */ + +#define X_TLOSS 1.41484755040568800000e+16 + +#define DOMAIN 1 +#define SING 2 +#define OVERFLOW 3 +#define UNDERFLOW 4 +#define TLOSS 5 +#define PLOSS 6 + +/** + * ANSI/POSIX + */ +extern double acos __P((double)); +extern double asin __P((double)); +extern double atan __P((double)); +extern double atan2 __P((double, double)); +extern double cos __P((double)); +extern double sin __P((double)); +extern double tan __P((double)); + +extern double cosh __P((double)); +extern double sinh __P((double)); +extern double tanh __P((double)); + +extern double exp __P((double)); +extern double frexp __P((double, int*)); +extern double ldexp __P((double, int)); +extern double scalbn __P((double, int)); +extern double log __P((double)); +extern double log10 __P((double)); +extern double modf __P((double, double*)); + +extern double pow __P((double, double)); +extern double sqrt __P((double)); + +extern double ceil __P((double)); +extern double fabs __P((double)); +// NOTE: I have no idea how they got it to mangle like this +extern double fabs__Fd(double); +extern double floor __P((double)); +extern double fmod __P((double, double)); + +extern double erf __P((double)); +extern double erfc __P((double)); +extern double gamma __P((double)); +extern double hypot __P((double, double)); +extern int isnan __P((double)); +extern int finite __P((double)); +extern double j0 __P((double)); +extern double j1 __P((double)); +extern double jn __P((int, double)); +extern double lgamma __P((double)); +extern double y0 __P((double)); +extern double y1 __P((double)); +extern double yn __P((int, double)); + +extern double acosh __P((double)); +extern double asinh __P((double)); +extern double atanh __P((double)); +extern double cbrt __P((double)); +extern double logb __P((double)); +extern double nextafter __P((double, double)); +extern double remainder __P((double, double)); +#ifdef _SCALB_INT +extern double scalb __P((double, int)); +#else +extern double scalb __P((double, double)); +#endif + +extern int matherr __P((struct exception*)); + +/** + * IEEE Test Vector + */ +extern double significand __P((double)); + +/** + * Functions callable from C, intended to support IEEE arithmetic. + */ +extern double copysign __P((double, double)); +extern int ilogb __P((double)); +extern double rint __P((double)); +extern double scalbn __P((double, int)); + +/** + * BSD math library entry points + */ +extern double expm1 __P((double)); +extern double log1p __P((double)); + +/** + * Reentrant version of gamma & lgamma; passes signgam back by reference + * as the second argument; user must allocate space for signgam. + */ +#ifdef _REENTRANT +extern double gamma_r __P((double, int*)); +extern double lgamma_r __P((double, int*)); +#endif /* _REENTRANT */ + +/* ieee style elementary functions */ +extern double __ieee754_sqrt __P((double)); +extern double __ieee754_acos __P((double)); +extern double __ieee754_acosh __P((double)); +extern double __ieee754_log __P((double)); +extern double __ieee754_atanh __P((double)); +extern double __ieee754_asin __P((double)); +extern double __ieee754_atan2 __P((double, double)); +extern double __ieee754_exp __P((double)); +extern double __ieee754_cosh __P((double)); +extern double __ieee754_fmod __P((double, double)); +extern double __ieee754_pow __P((double, double)); +extern double __ieee754_lgamma_r __P((double, int*)); +extern double __ieee754_gamma_r __P((double, int*)); +extern double __ieee754_lgamma __P((double)); +extern double __ieee754_gamma __P((double)); +extern double __ieee754_log10 __P((double)); +extern double __ieee754_sinh __P((double)); +extern double __ieee754_hypot __P((double, double)); +extern double __ieee754_j0 __P((double)); +extern double __ieee754_j1 __P((double)); +extern double __ieee754_y0 __P((double)); +extern double __ieee754_y1 __P((double)); +extern double __ieee754_jn __P((int, double)); +extern double __ieee754_yn __P((int, double)); +extern double __ieee754_remainder __P((double, double)); +extern int __ieee754_rem_pio2 __P((double, double*)); +#ifdef _SCALB_INT +extern double __ieee754_scalb __P((double, int)); +#else +extern double __ieee754_scalb __P((double, double)); +#endif + +/* fdlibm kernel function */ +extern double __kernel_standard __P((double, double, int)); +extern double __kernel_sin __P((double, double, int)); +extern double __kernel_cos __P((double, double)); +extern double __kernel_tan __P((double, double, int)); +extern int __kernel_rem_pio2 __P((double*, double*, int, int, int, const int*)); + +#ifdef __cplusplus +}; +#endif // ifdef __cplusplus + +#endif diff --git a/include/PowerPC_EABI_Support/Runtime/MWCPlusLib.h b/include/PowerPC_EABI_Support/Runtime/MWCPlusLib.h new file mode 100644 index 00000000..8d78b551 --- /dev/null +++ b/include/PowerPC_EABI_Support/Runtime/MWCPlusLib.h @@ -0,0 +1,44 @@ +#ifndef _RUNTIME_MWCPLUSLIB_H +#define _RUNTIME_MWCPLUSLIB_H + +#include "stddef.h" + +#define CTORARG_TYPE int +#define CTORARG_PARTIAL (0) +#define CTORARG_COMPLETE (1) + +#define CTORCALL_COMPLETE(ctor, objptr) \ + (((void (*)(void*, CTORARG_TYPE))ctor)(objptr, CTORARG_COMPLETE)) + +#define DTORARG_TYPE int + +#define DTORCALL_COMPLETE(dtor, objptr) \ + (((void (*)(void*, DTORARG_TYPE))dtor)(objptr, -1)) +#define DTORCALL_PARTIAL(dtor, objptr) \ + (((void (*)(void*, DTORARG_TYPE))dtor)(objptr, 0)) + +typedef void* ConstructorDestructor; + +#ifdef __cplusplus +extern "C" { +#endif + +extern void* __copy(char* to, char* from, size_t size); + +extern void __construct_array(void* ptr, ConstructorDestructor ctor, + ConstructorDestructor dtor, size_t size, + size_t n); +extern void __destroy_arr(void* block, ConstructorDestructor* dtor, size_t size, + size_t n); +extern void* __construct_new_array(void* block, ConstructorDestructor ctor, + ConstructorDestructor dtor_arg, size_t size, + size_t n); +extern void __destroy_new_array(void* block, ConstructorDestructor dtor); +extern void __destroy_new_array2(); +extern void __destroy_new_array3(); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/PowerPC_EABI_Support/Runtime/NMWException.h b/include/PowerPC_EABI_Support/Runtime/NMWException.h new file mode 100644 index 00000000..2358f785 --- /dev/null +++ b/include/PowerPC_EABI_Support/Runtime/NMWException.h @@ -0,0 +1,43 @@ +#ifndef _NMWEXCEPTION +#define _NMWEXCEPTION + +typedef short vbase_ctor_arg_type; +typedef char local_cond_type; + +typedef struct CatchInfo { + void* location; + void* typeinfo; + void* dtor; + void* sublocation; + long pointercopy; + void* stacktop; +} CatchInfo; + +typedef struct DestructorChain { + struct DestructorChain* next; + void* destructor; + void* object; +} DestructorChain; + +#ifdef __cplusplus +extern "C" { +#endif + +extern void* __register_global_object(void* object, void* destructor, + void* registration); +extern void __destroy_global_chain(void); + +extern void __end__catch(CatchInfo* catchinfo); +extern void __throw(char* throwtype, void* location, void* dtor); +extern char __throw_catch_compare(const char* throwtype, const char* catchtype, + long* offset_result); +extern void __unexpected(CatchInfo* catchinfo); + +extern int __register_fragment(struct __eti_init_info* info, char* TOC); +extern void __unregister_fragment(int fragmentID); + +#ifdef __cplusplus +} +#endif + +#endif // _NMWEXCEPTION diff --git a/include/PowerPC_EABI_Support/Runtime/__mem.h b/include/PowerPC_EABI_Support/Runtime/__mem.h new file mode 100644 index 00000000..0a885b8f --- /dev/null +++ b/include/PowerPC_EABI_Support/Runtime/__mem.h @@ -0,0 +1,17 @@ +#ifndef _RUNTIME_MEM_H +#define _RUNTIME_MEM_H + +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +__declspec(section ".init") void* memcpy(void* dest, const void* src, size_t n); +__declspec(section ".init") void* memset(void* dest, int val, size_t count); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/PowerPC_EABI_Support/Runtime/__ppc_eabi_linker.h b/include/PowerPC_EABI_Support/Runtime/__ppc_eabi_linker.h new file mode 100644 index 00000000..a2fa3d63 --- /dev/null +++ b/include/PowerPC_EABI_Support/Runtime/__ppc_eabi_linker.h @@ -0,0 +1,72 @@ +#ifndef __PPC_EABI_LINKER +#define __PPC_EABI_LINKER + +__declspec(section ".init") extern char _stack_addr[]; +__declspec(section ".init") extern char _stack_end[]; +__declspec(section ".init") extern char _heap_addr[]; +__declspec(section ".init") extern char _heap_end[]; +__declspec(section ".init") extern const char _fextabindex_rom[]; +__declspec(section ".init") extern char _fextabindex[]; +__declspec(section ".init") extern char _eextabindex[]; + +__declspec(section ".init") extern char _SDA_BASE_[]; + +__declspec(section ".init") extern char _SDA2_BASE_[]; + +typedef struct __rom_copy_info { + char* rom; + char* addr; + unsigned int size; +} __rom_copy_info; + +__declspec(section ".init") extern __rom_copy_info _rom_copy_info[]; + +typedef struct __bss_init_info { + char* addr; + unsigned int size; +} __bss_init_info; + +__declspec(section ".init") extern __bss_init_info _bss_init_info[]; + +typedef struct __eti_init_info { + void* eti_start; + void* eti_end; + void* code_start; + unsigned long code_size; +} __eti_init_info; + +__declspec(section ".init") extern __eti_init_info _eti_init_info[]; +__declspec(section ".init") extern const char _f_init_rom[]; +__declspec(section ".init") extern char _f_init[]; +__declspec(section ".init") extern char _e_init[]; +__declspec(section ".init") extern const char _f_text_rom[]; +__declspec(section ".init") extern char _f_text[]; +__declspec(section ".init") extern char _e_text[]; +__declspec(section ".init") extern const char _f_rodata_rom[]; +__declspec(section ".init") extern char _f_rodata[]; +__declspec(section ".init") extern char _e_rodata[]; +__declspec(section ".init") extern const char _fextab_rom[]; +__declspec(section ".init") extern char _fextab[]; +__declspec(section ".init") extern char _eextab[]; +__declspec(section ".init") extern const char _f_data_rom[]; +__declspec(section ".init") extern char _f_data[]; +__declspec(section ".init") extern char _e_data[]; +__declspec(section ".init") extern char _f_bss[]; +__declspec(section ".init") extern char _e_bss[]; +__declspec(section ".init") extern const char _f_sdata_rom[]; +__declspec(section ".init") extern char _f_sdata[]; +__declspec(section ".init") extern char _e_sdata[]; +__declspec(section ".init") extern char _f_sbss[]; +__declspec(section ".init") extern char _e_sbss[]; +__declspec(section ".init") extern const char _f_sdata2_rom[]; +__declspec(section ".init") extern char _f_sdata2[]; +__declspec(section ".init") extern char _e_sdata2[]; +__declspec(section ".init") extern char _f_sbss2[]; +__declspec(section ".init") extern char _e_sbss2[]; +__declspec(section ".init") extern const char _f_PPC_EMB_sdata0_rom[]; +__declspec(section ".init") extern char _f_PPC_EMB_sdata0[]; +__declspec(section ".init") extern char _e_PPC_EMB_sdata0[]; +__declspec(section ".init") extern char _f_PPC_EMB_sbss0[]; +__declspec(section ".init") extern char _e_PPC_EMB_sbss0[]; + +#endif // __PPC_EABI_LINKER diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h new file mode 100644 index 00000000..0861cde2 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h @@ -0,0 +1,35 @@ +#ifndef METROTRK_PORTABLE_DISPATCH_H +#define METROTRK_PORTABLE_DISPATCH_H + +#include "dolphin/types.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define TRK_DISPATCH_CMD_CONNECT 1 /* Connect to the console */ +#define TRK_DISPATCH_CMD_DISCONNECT 2 /* Disconnect from the console */ +#define TRK_DISPATCH_CMD_RESET 3 /* Reset the debugger */ +#define TRK_DISPATCH_CMD_GETVERSION 4 /* Get debugger version */ +#define TRK_DISPATCH_CMD_GETSUPPORTMASK 5 /* Get Support Mask */ +#define TRK_DISPATCH_CMD_OVERRIDE 7 /* Override? */ +#define TRK_DISPATCH_CMD_READMEM 16 /* Reading from memory */ +#define TRK_DISPATCH_CMD_WRITEMEM 17 /* Writing to memory */ +#define TRK_DISPATCH_CMD_READREGS 18 /* Read a register value */ +#define TRK_DISPATCH_CMD_WRITEREGS 19 /* Set a register */ +#define TRK_DISPATCH_CMD_SETOPTION 23 /* Set an option? */ +#define TRK_DISPATCH_CMD_CONTINUE 24 /* Continue debugging */ +#define TRK_DISPATCH_CMD_STEP 25 /* Step through an instruction */ +#define TRK_DISPATCH_CMD_STOP 26 /* Stop the debugger */ + +typedef struct TRKBuffer TRKBuffer; + +DSError TRKInitializeDispatcher(); +BOOL TRKDispatchMessage(TRKBuffer* buffer); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_DISPATCH_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.h new file mode 100644 index 00000000..9ff3a2da --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.h @@ -0,0 +1,16 @@ +#ifndef METROTRK_PORTABLE_MAIN_TRK_H +#define METROTRK_PORTABLE_MAIN_TRK_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRK_main(void); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_MAIN_TRK_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.h new file mode 100644 index 00000000..606a4437 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.h @@ -0,0 +1,14 @@ +#ifndef METROTRK_PORTABLE_MAINLOOP_H +#define METROTRK_PORTABLE_MAINLOOP_H + +#ifdef __cplusplus +extern "C" { +#endif + +void TRKNubMainLoop(void); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_MAINLOOP_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h new file mode 100644 index 00000000..aeef9c7d --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h @@ -0,0 +1,17 @@ +#ifndef METROTRK_PORTABLE_MEM_TRK_H +#define METROTRK_PORTABLE_MEM_TRK_H + +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void* TRK_memset(void* dst, int val, size_t n); +void* TRK_memcpy(void* dst, const void* src, size_t n); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_MEM_TRK_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h new file mode 100644 index 00000000..8433ef8d --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h @@ -0,0 +1,24 @@ +#ifndef METROTRK_PORTABLE_MSG_H +#define METROTRK_PORTABLE_MSG_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" +#include "dolphin/types.h" + +typedef struct _TRK_Msg { + u8 _00[8]; + u32 m_msgLength; + u32 _0C; + u32 m_msg; +} TRK_Msg; + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRKMessageSend(TRK_Msg* msg); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_MSG_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h new file mode 100644 index 00000000..770d3886 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h @@ -0,0 +1,50 @@ +#ifndef METROTRK_PORTABLE_MSGBUF_H +#define METROTRK_PORTABLE_MSGBUF_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRKInitializeMessageBuffers(void); + +DSError TRKSetBufferPosition(TRKBuffer* msg, u32 pos); +void* TRKGetBuffer(int); +void TRKResetBuffer(TRKBuffer* msg, BOOL keepData); +void* TRKGetBuffer(int idx); +void TRKReleaseBuffer(int idx); +DSError TRKGetFreeBuffer(int* msgID, TRKBuffer** outMsg); + +DSError TRKAppendBuffer(TRKBuffer* msg, const void* data, size_t length); +DSError TRKAppendBuffer1_ui8(TRKBuffer* buffer, const u8 data); +inline DSError TRKAppendBuffer1_ui8(TRKBuffer* buffer, const u8 data) +{ + if (buffer->position >= TRKMSGBUF_SIZE) { + return DS_MessageBufferOverflow; + } + + buffer->data[buffer->position++] = data; + buffer->length++; + return DS_NoError; +} +DSError TRKAppendBuffer1_ui16(TRKBuffer* buffer, const u16 data); +DSError TRKAppendBuffer1_ui32(TRKBuffer* buffer, const u32 data); +DSError TRKAppendBuffer1_ui64(TRKBuffer* buffer, const u64 data); +DSError TRKAppendBuffer_ui8(TRKBuffer* buffer, const u8* data, int count); +DSError TRKAppendBuffer_ui32(TRKBuffer* buffer, const u32* data, int count); + +DSError TRKReadBuffer1_ui8(TRKBuffer* buffer, u8* data); +DSError TRKReadBuffer1_ui16(TRKBuffer* buffer, u16* data); +DSError TRKReadBuffer1_ui32(TRKBuffer* buffer, u32* data); +DSError TRKReadBuffer1_ui64(TRKBuffer* buffer, u64* data); +DSError TRKReadBuffer_ui8(TRKBuffer* buffer, u8* data, int count); +DSError TRKReadBuffer_ui32(TRKBuffer* buffer, u32* data, int count); +DSError TRKReadBuffer(TRKBuffer* msg, void* data, size_t length); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_MSGBUF_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h new file mode 100644 index 00000000..aa8abff5 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h @@ -0,0 +1,31 @@ +#ifndef METROTRK_PORTABLE_MSGHNDLR_H +#define METROTRK_PORTABLE_MSGHNDLR_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +void SetTRKConnected(BOOL); +BOOL GetTRKConnected(void); +DSError TRKDoUnsupported(TRKBuffer*); +DSError TRKDoSetOption(TRKBuffer*); +DSError TRKDoStop(TRKBuffer*); +DSError TRKDoStep(TRKBuffer*); +DSError TRKDoContinue(TRKBuffer*); +DSError TRKDoWriteRegisters(TRKBuffer*); +DSError TRKDoReadRegisters(TRKBuffer*); +DSError TRKDoFlushCache(TRKBuffer*); +DSError TRKDoWriteMemory(TRKBuffer*); +DSError TRKDoReadMemory(TRKBuffer*); +DSError TRKDoSupportMask(TRKBuffer*); +DSError TRKDoVersions(TRKBuffer*); +DSError TRKDoSupportMask(TRKBuffer*); +DSError TRKDoCPUType(TRKBuffer*); +DSError TRKDoOverride(TRKBuffer*); +DSError TRKDoReset(TRKBuffer*); +DSError TRKDoDisconnect(TRKBuffer*); +DSError TRKDoConnect(TRKBuffer*); +DSError TRKStandardACK(TRKBuffer* buffer, MessageCommandID commandID, + DSReplyError replyError); + +void OutputData(void* data, int length); + +#endif /* METROTRK_PORTABLE_MSGHNDLR_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h new file mode 100644 index 00000000..7297cf18 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h @@ -0,0 +1,10 @@ +#ifndef METROTRK_PORTABLE_MUTEX_TRK_H +#define METROTRK_PORTABLE_MUTEX_TRK_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +DSError TRKInitializeMutex(void*); +DSError TRKAcquireMutex(void*); +DSError TRKReleaseMutex(void*); + +#endif /* METROTRK_PORTABLE_MUTEX_TRK_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.h new file mode 100644 index 00000000..459830f9 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.h @@ -0,0 +1,16 @@ +#ifndef METROTRK_PORTABLE_NOTIFY_H +#define METROTRK_PORTABLE_NOTIFY_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRKDoNotifyStopped(MessageCommandID cmd); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_NOTIFY_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h new file mode 100644 index 00000000..da5a012b --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h @@ -0,0 +1,37 @@ +#ifndef METROTRK_PORTABLE_NUBEVENT_H +#define METROTRK_PORTABLE_NUBEVENT_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef u32 NubEventID; + +typedef struct TRKEvent { + NubEventType eventType; + NubEventID eventID; + MessageBufferID msgBufID; +} TRKEvent; + +typedef struct TRKEventQueue { + int _00; + int count; + int next; + TRKEvent events[2]; + NubEventID eventID; +} TRKEventQueue; +extern TRKEventQueue gTRKEventQueue; + +BOOL TRKGetNextEvent(TRKEvent* event); +void TRKDestructEvent(TRKEvent*); +void TRKConstructEvent(TRKEvent*, NubEventType); +DSError TRKPostEvent(TRKEvent*); +DSError TRKInitializeEventQueue(); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_NUBEVENT_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h new file mode 100644 index 00000000..9f1d4174 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h @@ -0,0 +1,21 @@ +#ifndef METROTRK_PORTABLE_NUBINIT_H +#define METROTRK_PORTABLE_NUBINIT_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void TRKNubWelcome(void); +void TRKNubMainLoop(void); +DSError TRKTerminateNub(void); +DSError TRKInitializeNub(void); + +extern BOOL gTRKBigEndian; + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_NUBINIT_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h new file mode 100644 index 00000000..40636776 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h @@ -0,0 +1,23 @@ +#ifndef METROTRK_PORTABLE_SERPOLL_H +#define METROTRK_PORTABLE_SERPOLL_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRKInitializeSerialHandler(void); +DSError TRKTerminateSerialHandler(void); + +void TRKGetInput(void); +MessageBufferID TRKTestForPacket(); +void TRKProcessInput(int bufferIdx); + +extern void* gTRKInputPendingPtr; + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_SERPOLL_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h new file mode 100644 index 00000000..5f8e9fbc --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h @@ -0,0 +1,29 @@ +#ifndef METROTRK_PORTABLE_SUPPORT_H +#define METROTRK_PORTABLE_SUPPORT_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRKSuppAccessFile(u32 file_handle, u8* data, size_t* count, + DSIOResult* io_result, BOOL need_reply, BOOL read); + +DSError TRKRequestSend(TRKBuffer* msgBuf, int* bufferId, u32 p1, u32 p2, + int p3); + +DSError HandleOpenFileSupportRequest(const char* path, u8 replyError, + u32* param_3, DSIOResult* ioResult); + +DSError HandleCloseFileSupportRequest(int replyError, DSIOResult* ioResult); + +DSError HandlePositionFileSupportRequest(DSReplyError replyErr, u32* param_2, + u8 param_3, DSIOResult* ioResult); + +#ifdef __cplusplus +} +#endif + +#endif /* METROTRK_PORTABLE_SUPPORT_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h new file mode 100644 index 00000000..fa3a575a --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h @@ -0,0 +1,24 @@ +#ifndef OS_DOLPHIN_DOLPHIN_TRK_H +#define OS_DOLPHIN_DOLPHIN_TRK_H + +#include "dolphin/types.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRKInitializeTarget(); + +void EnableMetroTRKInterrupts(); +u32 TRKTargetTranslate(u32 param_0); +void TRK__read_aram(register int c, register u32 p2, void* p3); +void TRK__write_aram(register int c, register u32 p2, void* p3); + +void __TRK_copy_vectors(void); + +#ifdef __cplusplus +} +#endif + +#endif /* OS_DOLPHIN_DOLPHIN_TRK_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h new file mode 100644 index 00000000..550454cc --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h @@ -0,0 +1,45 @@ +#ifndef OS_DOLPHIN_DOLPHIN_TRK_GLUE_H +#define OS_DOLPHIN_DOLPHIN_TRK_GLUE_H + +#include "dolphin/os.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef void (*DBCommFunc)(void); +typedef u32 (*DBPollFunc)(void); +typedef void (*DBCommInitFunc)(volatile u8**, __OSInterruptHandler); +typedef int (*DBCommReadFunc)(void*, size_t); +typedef int (*DBCommWriteFunc)(const void*, size_t); + +typedef struct DBCommTable { + DBCommInitFunc initialize_func; + DBCommFunc init_interrupts_func; + DBPollFunc peek_func; + DBCommReadFunc read_func; + DBCommWriteFunc write_func; + DBCommFunc open_func; + DBCommFunc close_func; +} DBCommTable; + +DSError TRKInitializeIntDrivenUART(u32 param_0, u32 param_1, u32 param_2, + volatile u8** param_3); + +void UnreserveEXI2Port(void); +void ReserveEXI2Port(void); +int TRKPollUART(void); +UARTError TRKReadUARTN(void* bytes, u32 length); +UARTError TRKWriteUARTN(const void* bytes, u32 length); +void TRKLoadContext(OSContext* ctx, u32 r4); +int InitMetroTRKCommTable(int hwId); +void EnableEXI2Interrupts(void); +void TRK_board_display(char* str); + +#ifdef __cplusplus +} +#endif + +#endif /* OS_DOLPHIN_DOLPHIN_TRK_GLUE_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h new file mode 100644 index 00000000..1d1c4417 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h @@ -0,0 +1,16 @@ +#ifndef OS_DOLPHIN_TARGCONT_H +#define OS_DOLPHIN_TARGCONT_H + +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +#ifdef __cplusplus +extern "C" { +#endif + +DSError TRKTargetContinue(void); + +#ifdef __cplusplus +} +#endif + +#endif /* OS_DOLPHIN_TARGCONT_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h new file mode 100644 index 00000000..d01cc0b1 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h @@ -0,0 +1,14 @@ +#ifndef OS_DOLPHIN_USR_PUT_H +#define OS_DOLPHIN_USR_PUT_H + +#ifdef __cplusplus +extern "C" { +#endif + +void usr_put_initialize(void); + +#ifdef __cplusplus +} +#endif + +#endif /* OS_DOLPHIN_USR_PUT_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/ppc/Generic/flush_cache.h b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/flush_cache.h new file mode 100644 index 00000000..a512aacf --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/flush_cache.h @@ -0,0 +1,16 @@ +#ifndef PPC_GENERIC_FLUSH_CACHE_H +#define PPC_GENERIC_FLUSH_CACHE_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +void TRK_flush_cache(void* param_1, int param_2); + +#ifdef __cplusplus +} +#endif + +#endif /* PPC_GENERIC_FLUSH_CACHE_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h new file mode 100644 index 00000000..ec764776 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h @@ -0,0 +1,16 @@ +#ifndef PPC_GENERIC_MPC_7XX_603E_H +#define PPC_GENERIC_MPC_7XX_603E_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +u32 TRKTargetCPUMinorType(void); + +#ifdef __cplusplus +} +#endif + +#endif /* PPC_GENERIC_MPC_7XX_603E_H */ diff --git a/include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h new file mode 100644 index 00000000..e7ce7015 --- /dev/null +++ b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h @@ -0,0 +1,190 @@ +#ifndef PPC_GENERIC_TARGIMPL_H +#define PPC_GENERIC_TARGIMPL_H + +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" +#include "stddef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +void TRKTargetSetInputPendingPtr(void* ptr); + +void TRKSwapAndGo(); +void TRKTargetSetStopped(unsigned int); +DSError TRKTargetInterrupt(TRKEvent*); +DSError TRKTargetSupportRequest(); +void TRKDestructEvent(TRKEvent*); +DSError TRKTargetFlushCache(u8, void* start, void* end); +BOOL TRKTargetStopped(void); +DSError TRKTargetAddStopInfo(TRKBuffer* b); +DSError TRKTargetAddExceptionInfo(TRKBuffer* b); +DSError TRKTargetAccessARAM(u32 p1, u32 p2, u32* p3, BOOL read); +DSError TRKTargetAccessMemory(void* data, u32 start, size_t* length, + MemoryAccessOptions accessOptions, BOOL read); +DSError TRKTargetAccessDefault(u32 firstRegister, u32 lastRegister, + TRKBuffer* b, size_t* registersLengthPtr, + BOOL read); +DSError TRKTargetAccessFP(u32 firstRegister, u32 lastRegister, TRKBuffer* b, + size_t* registersLengthPtr, BOOL read); +DSError TRKTargetAccessExtended1(u32 firstRegister, u32 lastRegister, + TRKBuffer* b, size_t* registersLengthPtr, + BOOL read); +DSError TRKTargetAccessExtended2(u32 firstRegister, u32 lastRegister, + TRKBuffer* b, size_t* registerStorageSize, + BOOL read); +u32 TRKTargetGetPC(); +DSError TRKTargetSingleStep(u32 count, BOOL stepOver); +DSError TRKTargetStepOutOfRange(u32 rangeStart, u32 rangeEnd, BOOL stepOver); +u32 TRKTargetStop(); +void TRKInterruptHandler(); +void TRKPostInterruptEvent(void); + +typedef struct DSVersions { + u8 kernelMajor; + u8 kernelMinor; + u8 protocolMajor; + u8 protocolMinor; +} DSVersions; + +DSError TRKTargetVersions(DSVersions* versions); +DSError TRKTargetSupportMask(u8 mask[32]); + +typedef struct DSCPUType { + u8 cpuMajor; + u8 cpuMinor; + u8 bigEndian; + u8 defaultTypeSize; + u8 fpTypeSize; + u8 extended1TypeSize; + u8 extended2TypeSize; +} DSCPUType; +DSError TRKTargetCPUType(DSCPUType* cpuType); + +typedef struct Default_PPC { + u32 GPR[32]; + u32 PC; + u32 LR; + u32 CR; + u32 CTR; + u32 XER; +} Default_PPC; + +typedef struct Float_PPC { + u64 FPR[32]; + u64 FPSCR; + u64 FPECR; +} Float_PPC; + +typedef struct Extended1_PPC_6xx_7xx { + u32 SR[16]; + u32 TBL; + u32 TBU; + u32 HID0; + u32 HID1; + u32 MSR; + u32 PVR; + u32 IBAT0U; + u32 IBAT0L; + u32 IBAT1U; + u32 IBAT1L; + u32 IBAT2U; + u32 IBAT2L; + u32 IBAT3U; + u32 IBAT3L; + u32 DBAT0U; + u32 DBAT0L; + u32 DBAT1U; + u32 DBAT1L; + u32 DBAT2U; + u32 DBAT2L; + u32 DBAT3U; + u32 DBAT3L; + u32 DMISS; + u32 DCMP; + u32 HASH1; + u32 HASH2; + u32 IMISS; + u32 ICMP; + u32 RPA; + u32 SDR1; + u32 DAR; + u32 DSISR; + u32 SPRG0; + u32 SPRG1; + u32 SPRG2; + u32 SPRG3; + u32 DEC; + u32 IABR; + u32 EAR; + u32 DABR; + u32 PMC1; + u32 PMC2; + u32 PMC3; + u32 PMC4; + u32 SIA; + u32 MMCR0; + u32 MMCR1; + u32 THRM1; + u32 THRM2; + u32 THRM3; + u32 ICTC; + u32 L2CR; + u32 UMMCR2; + u32 UBAMR; + u32 UMMCR0; + u32 UPMC1; + u32 UPMC2; + u32 USIA; + u32 UMMCR1; + u32 UPMC3; + u32 UPMC4; + u32 USDA; + u32 MMCR2; + u32 BAMR; + u32 SDA; + u32 MSSCR0; + u32 MSSCR1; + u32 PIR; + u32 exceptionID; + u32 GQR[8]; + u32 HID_G; + u32 WPAR; + u32 DMA_U; + u32 DMA_L; +} Extended1_PPC_6xx_7xx; + +typedef struct Extended2_PPC_6xx_7xx { + u32 PSR[32][2]; +} Extended2_PPC_6xx_7xx; + +typedef struct ProcessorState_PPC_6xx_7xx { + Default_PPC Default; + Float_PPC Float; + Extended1_PPC_6xx_7xx Extended1; + Extended2_PPC_6xx_7xx Extended2; + u32 transport_handler_saved_ra; +} ProcessorState_PPC_6xx_7xx; + +typedef ProcessorState_PPC_6xx_7xx ProcessorState_PPC; +extern ProcessorState_PPC gTRKCPUState; + +typedef struct TRKState { + u32 gpr[32]; // _00 + u32 lr; // _80 + u32 ctr; // _84 + u32 xer; // _88 + u32 msr; // _8C + u32 dar; // _90 + u32 dsisr; // _94 + BOOL isStopped; // _98 + BOOL inputActivated; // _9C + void* inputPendingPtr; // _A0 +} TRKState; +extern TRKState gTRKState; + +#ifdef __cplusplus +} +#endif + +#endif /* PPC_GENERIC_TARGIMPL_H */ diff --git a/include/amcstubs/AmcExi2Stubs.h b/include/amcstubs/AmcExi2Stubs.h new file mode 100644 index 00000000..48298c34 --- /dev/null +++ b/include/amcstubs/AmcExi2Stubs.h @@ -0,0 +1,27 @@ +#ifndef AMCEXI2STUBS_H +#define AMCEXI2STUBS_H + +#include "dolphin/os.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef __OSInterruptHandler AmcEXICallback; + +typedef enum { AMC_EXI_NO_ERROR = 0, AMC_EXI_UNSELECTED } AmcExiError; + +void EXI2_Init(volatile u8**, AmcEXICallback); +void EXI2_EnableInterrupts(void); +u32 EXI2_Poll(void); +int EXI2_ReadN(void*, u32); +int EXI2_WriteN(const void*, u32); +void EXI2_Reserve(void); +void EXI2_Unreserve(void); +BOOL AMC_IsStub(void); + +#ifdef __cplusplus +}; +#endif + +#endif diff --git a/include/dolphin/math.h b/include/dolphin/math.h new file mode 100644 index 00000000..483d8081 --- /dev/null +++ b/include/dolphin/math.h @@ -0,0 +1,85 @@ +#ifndef _DOLPHIN_MATH +#define _DOLPHIN_MATH + +// this file is necessary to match mtx/quat.c + +#define M_PI 3.141592653589793 + +#ifndef _MATH_INLINE +#define _MATH_INLINE static inline +#endif + +extern int __float_nan[]; +extern int __float_huge[]; +extern int __double_huge[]; + +#define INFINITY (*(float *)__float_huge) +#define NAN (*(float *)__float_nan) +#define HUGE_VAL (*(double *)__double_huge) + +#ifdef __MWERKS__ +extern inline double sqrt(double x) +{ + if (x > 0.0) { + double guess = __frsqrte(x); /* returns an approximation to */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have 8 sig bits */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have 16 sig bits */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have 32 sig bits */ + guess = .5 * guess * (3.0 - guess * guess * x); /* now have > 53 sig bits */ + return x * guess; + } + else if (x == 0) + return 0; + else if (x) + return NAN; + + return INFINITY; +} + +extern inline float sqrtf(float x) +{ + const double _half = .5; + const double _three = 3.0; + volatile float y; + if (x > 0.0f) { + double guess = __frsqrte((double)x); // returns an approximation to + guess = _half * guess * (_three - guess * guess * x); // now have 12 sig bits + guess = _half * guess * (_three - guess * guess * x); // now have 24 sig bits + guess = _half * guess * (_three - guess * guess * x); // now have 32 sig bits + y = (float)(x * guess); + return y; + } + return x; +} +#else +double sqrt(double x); +float sqrtf(float x); +#endif + +double atan(double x); +double copysign(double x, double y); +double cos(double x); +double floor(double x); +double frexp(double x, int *exp); +double ldexp(double x, int exp); +double modf(double x, double *intpart); +double sin(double x); +double tan(double x); +double acos(double x); +double asin(double x); +double atan2(double y, double x); +double fmod(double x, double y); +double log(double x); +double pow(double x, double y); +float tanf(float x); + +#ifdef __MWERKS__ +extern inline double fabs(double x) +{ + return __fabs(x); +} +#else +double fabs(double x); +#endif + +#endif diff --git a/include/dolphin/mtx.h b/include/dolphin/mtx.h index 9aba8f15..49dc1b7e 100644 --- a/include/dolphin/mtx.h +++ b/include/dolphin/mtx.h @@ -118,7 +118,7 @@ void PSMTXScaleApply(const Mtx src, Mtx dst, f32 xS, f32 yS, f32 zS); void PSMTXRotRad(Mtx m, char axis, f32 rad); void PSMTXRotTrig(Mtx m, char axis, f32 sinA, f32 cosA); -void PSMTXRotAxisRad(Mtx m, const Vec* axis, f32 rad); +void PSMTXRotAxisRad(register Mtx m, const Vec* axis, register f32 rad); #endif #ifdef MTX_USE_PS diff --git a/include/stdarg.h b/include/stdarg.h index 1ca0f853..e2cceee7 100644 --- a/include/stdarg.h +++ b/include/stdarg.h @@ -1,19 +1,39 @@ -#ifndef STDARG_H -#define STDARG_H +#ifndef _MSL_COMMON_STDARG_H +#define _MSL_COMMON_STDARG_H +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef __MWERKS__ typedef struct { - char gpr; - char fpr; - char reserved[2]; - char* input_arg_area; - char* reg_save_area; + char gpr; + char fpr; + char reserved[2]; + char* input_arg_area; + char* reg_save_area; } __va_list[1]; typedef __va_list va_list; +#ifndef __MWERKS__ +extern void __builtin_va_info(va_list*); +#endif + void* __va_arg(va_list v_list, unsigned char type); -#define va_start(ap, fmt) ((void) fmt, __builtin_va_info(&ap)) -#define va_arg(ap, t) (*((t*) __va_arg(ap, _var_arg_typeof(t)))) -#define va_end(ap) (void) 0 +#define va_start(ap, fmt) ((void)fmt, __builtin_va_info(&ap)) +#define va_arg(ap, t) (*((t*)__va_arg(ap, _var_arg_typeof(t)))) +#define va_end(ap) (void)0 -#endif \ No newline at end of file +#else +typedef __builtin_va_list va_list; +#define va_start(v, l) __builtin_va_start(v, l) +#define va_end(v) __builtin_va_end(v) +#define va_arg(v, l) __builtin_va_arg(v, l) +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* _MSL_COMMON_STDARG_H */ diff --git a/include/stddef.h b/include/stddef.h index 5a133946..71816c2b 100644 --- a/include/stddef.h +++ b/include/stddef.h @@ -10,8 +10,13 @@ extern "C" { /* These break 1.2.5 */ //typedef __typeof__(sizeof(0)) size_t; //typedef __typeof__((char*)0 - (char*)0) ptrdiff_t; +#ifdef __INTELLISENSE__ +typedef unsigned int size_t; +typedef int ptrdiff_t; +#else typedef unsigned long size_t; typedef long ptrdiff_t; +#endif #ifndef NULL #define NULL 0L #endif @@ -20,4 +25,4 @@ typedef long ptrdiff_t; } #endif -#endif \ No newline at end of file +#endif diff --git a/include/string.h b/include/string.h index 583a906d..92f8f122 100644 --- a/include/string.h +++ b/include/string.h @@ -1,11 +1,22 @@ #ifndef _STRING_H_ #define _STRING_H_ -typedef unsigned long size_t; +#include "stddef.h" -void* memcpy(void* dst, const void* src, size_t n); -void* memset(void* dst, int val, size_t n); +#ifdef __MWERKS__ +__declspec(section ".init") void* memcpy(void* dest, const void* src, size_t n); +__declspec(section ".init") void __fill_mem(void* dest, int val, size_t count); +__declspec(section ".init") void* memset(void* dest, int val, size_t count); +#else +void* memcpy(void* dest, const void* src, size_t n); +void __fill_mem(void* dest, int val, size_t count); +void* memset(void* dest, int val, size_t count); +#endif +int memcmp(const void* lhs, const void* rhs, size_t count); +void* __memrchr(const void* ptr, int ch, size_t count); +void* memchr(const void* ptr, int ch, size_t count); +void* memmove(void* dst, const void* src, size_t n); char* strrchr(const char* str, int c); char* strchr(const char* str, int c); int strncmp(const char* str1, const char* str2, size_t n); @@ -15,4 +26,4 @@ char* strncpy(char* dst, const char* src, size_t n); char* strcpy(char* dst, const char* src); size_t strlen(const char* str); -#endif \ No newline at end of file +#endif diff --git a/src/MSL_C.PPCEABI.bare.H/abort_exit.c b/src/MSL_C.PPCEABI.bare.H/abort_exit.c new file mode 100644 index 00000000..1c9ca4d2 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/abort_exit.c @@ -0,0 +1,55 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/critical_regions.h" +#include "stddef.h" +#include "PowerPC_EABI_Support/Runtime/NMWException.h" + +void _ExitProcess(); + +extern void (*_dtors[])(void); + +int __aborting = 0; + +static void (*atexit_funcs[64])(void); +static int atexit_curr_func = 0; + +static void (*__atexit_funcs[64])(void); +static int __atexit_curr_func = 0; + +void (*__stdio_exit)(void) = 0; +void (*__console_exit)(void) = 0; + +void abort(void) +{ + // TODO +} + +void exit(int status) +{ + int i; + void (**dtor)(void); + + if (!__aborting) { + __destroy_global_chain(); + + dtor = _dtors; + while (*dtor != NULL) { + (*dtor)(); + dtor++; + } + + if (__stdio_exit != NULL) { + __stdio_exit(); + __stdio_exit = NULL; + } + } + + while (__atexit_curr_func > 0) + __atexit_funcs[--__atexit_curr_func](); + + if (__console_exit != NULL) { + __console_exit(); + __console_exit = NULL; + } + + _ExitProcess(); +} diff --git a/src/MSL_C.PPCEABI.bare.H/ansi_files.c b/src/MSL_C.PPCEABI.bare.H/ansi_files.c new file mode 100644 index 00000000..f0113bf4 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/ansi_files.c @@ -0,0 +1,95 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h" + +extern files __files = { + { + 0, + 0, + 1, + 0, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + { 0, 0 }, + { 0, 0 }, + 0, + (unsigned char*)&__files._stdin.char_buffer, + 1, + (unsigned char*)&__files._stdin.char_buffer, + 0, + 0, + 0, + 0, + NULL, + __read_console, + __write_console, + __close_console, + NULL, + }, + { + 0, + 0, + 2, + 0, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + { 0, 0 }, + { 0, 0 }, + 0, + (unsigned char*)&__files._stdout.char_buffer, + 1, + (unsigned char*)&__files._stdout.char_buffer, + 0, + 0, + 0, + 0, + NULL, + __read_console, + __write_console, + __close_console, + NULL, + }, + { + 0, + 0, + 2, + 0, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + { 0, 0 }, + { 0, 0 }, + 0, + (unsigned char*)&__files._stderr.char_buffer, + 1, + (unsigned char*)&__files._stderr.char_buffer, + 0, + 0, + 0, + 0, + NULL, + __read_console, + __write_console, + __close_console, + NULL, + }, +}; diff --git a/src/MSL_C.PPCEABI.bare.H/buffer_io.c b/src/MSL_C.PPCEABI.bare.H/buffer_io.c new file mode 100644 index 00000000..5657680d --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/buffer_io.c @@ -0,0 +1,41 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +void __prep_buffer(FILE* file) +{ + file->buffer_ptr = file->buffer; + file->buffer_length = file->buffer_size; + file->buffer_length -= file->position & file->buffer_alignment; + file->buffer_position = file->position; +} + +void __convert_from_newlines(unsigned char* p, size_t* n) { } + +int __flush_buffer(FILE* file, size_t* bytes_flushed) +{ + size_t buffer_len; + int ioresult; + + buffer_len = file->buffer_ptr - file->buffer; + + if (buffer_len) { + file->buffer_length = buffer_len; + + if (!file->file_mode.binary_io) + __convert_from_newlines(file->buffer, &file->buffer_length); + + ioresult = (*file->write_fn)(file->handle, file->buffer, + &file->buffer_length, file->idle_fn); + + if (bytes_flushed) + *bytes_flushed = file->buffer_length; + + if (ioresult) + return ioresult; + + file->position += file->buffer_length; + } + + __prep_buffer(file); + + return __no_io_error; +} diff --git a/src/MSL_C.PPCEABI.bare.H/ctype.c b/src/MSL_C.PPCEABI.bare.H/ctype.c new file mode 100644 index 00000000..e0a797cb --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/ctype.c @@ -0,0 +1,85 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h" + +#define ctrl __control_char +#define motn __motion_char +#define spac __space_char +#define punc __punctuation +#define digi __digit +#define hexd __hex_digit +#define lowc __lower_case +#define uppc __upper_case +#define dhex (hexd | digi) +#define uhex (hexd | uppc) +#define lhex (hexd | lowc) + +const unsigned char __ctype_map[256] = { + // clang-format off + ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, motn, motn, motn, motn, motn, ctrl, ctrl, + ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, + spac, punc, punc, punc, punc, punc, punc, punc, punc, punc, punc, punc, punc, punc, punc, punc, + dhex, dhex, dhex, dhex, dhex, dhex, dhex, dhex, dhex, dhex, punc, punc, punc, punc, punc, punc, + punc, uhex, uhex, uhex, uhex, uhex, uhex, uppc, uppc, uppc, uppc, uppc, uppc, uppc, uppc, uppc, + uppc, uppc, uppc, uppc, uppc, uppc, uppc, uppc, uppc, uppc, uppc, punc, punc, punc, punc, punc, + punc, lhex, lhex, lhex, lhex, lhex, lhex, lowc, lowc, lowc, lowc, lowc, lowc, lowc, lowc, lowc, + lowc, lowc, lowc, lowc, lowc, lowc, lowc, lowc, lowc, lowc, lowc, punc, punc, punc, punc, ctrl, + // clang-format on +}; + +const unsigned char __lower_map[256] = { + // clang-format off + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + ' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', '+', ',', '-', '.', '/', + '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?', + '@', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', + 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '[', '\\', ']', '^', '_', + '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', + 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}', '~', 0x7F, + 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, + 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F, + 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, + 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF, + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, + 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, + 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, + 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF, + // clang-format on +}; + +const unsigned char __upper_map[256] = { + // clang-format off + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + ' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', '+', ',', '-', '.', '/', + '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?', + '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', + 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', + '`', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', + 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '{', '|', '}', '~', 0x7F, + 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, + 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F, + 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, + 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF, + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, + 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, + 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, + 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF, + // clang-format on +}; + +int tolower(int __c) +{ + if (__c == -1) + return -1; + + return __lower_map[__c & 0xff]; +} + +int toupper(int __c) +{ + + if (__c == -1) + return -1; + + return __upper_map[__c & 0xff]; +} diff --git a/src/MSL_C.PPCEABI.bare.H/direct_io.c b/src/MSL_C.PPCEABI.bare.H/direct_io.c new file mode 100644 index 00000000..51184220 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/direct_io.c @@ -0,0 +1,114 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/direct_io.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/buffer_io.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/misc_io.h" +#include "string.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h" + +size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream) +{ + unsigned char* write_ptr; + size_t num_bytes, bytes_to_go, bytes_written; + int ioresult, always_buffer; + + if (fwide(stream, 0) == 0) + fwide(stream, -1); + + bytes_to_go = size * count; + + if (!bytes_to_go || stream->file_state.error + || stream->file_mode.file_kind == __closed_file) + return 0; + + if ((int)stream->file_mode.file_kind == __console_file) + __stdio_atexit(); + + always_buffer = !stream->file_mode.binary_io + || (int)stream->file_mode.file_kind == __string_file + || stream->file_mode.buffer_mode == _IOFBF + || stream->file_mode.buffer_mode == _IOLBF; + + if (stream->file_state.io_state == __neutral) { + if (stream->file_mode.io_mode & __write) { + stream->file_state.io_state = __writing; + + __prep_buffer(stream); + } + } + + if (stream->file_state.io_state != __writing) { + set_error(stream); + return 0; + } + + write_ptr = (unsigned char*)buffer; + bytes_written = 0; + + if (bytes_to_go + && (stream->buffer_ptr != stream->buffer || always_buffer)) { + stream->buffer_length + = stream->buffer_size - (stream->buffer_ptr - stream->buffer); + + do { + unsigned char* newline = NULL; + + num_bytes = stream->buffer_length; + + if (num_bytes > bytes_to_go) + num_bytes = bytes_to_go; + + if (num_bytes) { + memcpy(stream->buffer_ptr, write_ptr, num_bytes); + + write_ptr += num_bytes; + bytes_written += num_bytes; + bytes_to_go -= num_bytes; + + stream->buffer_ptr += num_bytes; + stream->buffer_length -= num_bytes; + } + + if (!stream->buffer_length + && (int)stream->file_mode.file_kind == __string_file) { + bytes_written += bytes_to_go; + break; + } + + if (!stream->buffer_length || newline != NULL + || (stream->file_mode.buffer_mode == _IONBF)) { + ioresult = __flush_buffer(stream, NULL); + + if (ioresult) { + set_error(stream); + bytes_to_go = 0; + break; + } + } + } while (bytes_to_go && always_buffer); + } + + if (bytes_to_go && !always_buffer) { + unsigned char* save_buffer = stream->buffer; + size_t save_size = stream->buffer_size; + + stream->buffer = write_ptr; + stream->buffer_size = bytes_to_go; + stream->buffer_ptr = write_ptr + bytes_to_go; + + if (__flush_buffer(stream, &num_bytes) != __no_io_error) + set_error(stream); + + bytes_written += num_bytes; + + stream->buffer = save_buffer; + stream->buffer_size = save_size; + + __prep_buffer(stream); + + stream->buffer_length = 0; + } + + if (stream->file_mode.buffer_mode != _IOFBF) + stream->buffer_length = 0; + + return ((bytes_written + size - 1) / size); +} diff --git a/src/MSL_C.PPCEABI.bare.H/e_asin.c b/src/MSL_C.PPCEABI.bare.H/e_asin.c new file mode 100644 index 00000000..bc5754f4 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/e_asin.c @@ -0,0 +1,3 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +double fabs__Fd(double v) { return __fabs(v); } diff --git a/src/MSL_C.PPCEABI.bare.H/e_atan2.c b/src/MSL_C.PPCEABI.bare.H/e_atan2.c new file mode 100644 index 00000000..43b99afd --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/e_atan2.c @@ -0,0 +1,145 @@ + +/* @(#)e_atan2.c 1.3 95/01/18 */ +/** + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + * + */ + +/* __ieee754_atan2(y,x) + * Method : + * 1. Reduce y to positive by atan2(y,x)=-atan2(-y,x). + * 2. Reduce x to positive by (if x and y are unexceptional): + * ARG (x+iy) = arctan(y/x) ... if x > 0, + * ARG (x+iy) = pi - arctan[y/(-x)] ... if x < 0, + * + * Special cases: + * + * ATAN2((anything), NaN ) is NaN; + * ATAN2(NAN , (anything) ) is NaN; + * ATAN2(+-0, +(anything but NaN)) is +-0 ; + * ATAN2(+-0, -(anything but NaN)) is +-pi ; + * ATAN2(+-(anything but 0 and NaN), 0) is +-pi/2; + * ATAN2(+-(anything but INF and NaN), +INF) is +-0 ; + * ATAN2(+-(anything but INF and NaN), -INF) is +-pi; + * ATAN2(+-INF,+INF ) is +-pi/4 ; + * ATAN2(+-INF,-INF ) is +-3pi/4; + * ATAN2(+-INF, (anything but,0,NaN, and INF)) is +-pi/2; + * + * Constants: + * The hexadecimal values are the intended ones for the following + * constants. The decimal values may be used, provided that the + * compiler will convert from decimal to binary accurately enough + * to produce the hexadecimal values shown. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double +#else +static double +#endif + tiny + = 1.0e-300, + zero = 0.0, pi_o_4 = 7.8539816339744827900E-01, /* 0x3FE921FB, 0x54442D18 */ + pi_o_2 = 1.5707963267948965580E+00, /* 0x3FF921FB, 0x54442D18 */ + pi = 3.1415926535897931160E+00, /* 0x400921FB, 0x54442D18 */ + pi_lo = 1.2246467991473531772E-16; /* 0x3CA1A626, 0x33145C07 */ + +#ifdef __STDC__ +double __ieee754_atan2(double y, double x) +#else +double __ieee754_atan2(y, x) +double y, x; +#endif +{ + double z; + int k, m, hx, hy, ix, iy; + unsigned lx, ly; + + hx = __HI(x); + ix = hx & 0x7fffffff; + lx = __LO(x); + hy = __HI(y); + iy = hy & 0x7fffffff; + ly = __LO(y); + if (((ix | ((lx | -lx) >> 31)) > 0x7ff00000) + || ((iy | ((ly | -ly) >> 31)) > 0x7ff00000)) /* x or y is NaN */ + return x + y; + if ((hx - 0x3ff00000 | lx) == 0) + return atan(y); /* x=1.0 */ + m = ((hy >> 31) & 1) | ((hx >> 30) & 2); /* 2*sign(x)+sign(y) */ + + /* when y = 0 */ + if ((iy | ly) == 0) { + switch (m) { + case 0: + case 1: + return y; /* atan(+-0,+anything)=+-0 */ + case 2: + return pi + tiny; /* atan(+0,-anything) = pi */ + case 3: + return -pi - tiny; /* atan(-0,-anything) =-pi */ + } + } + /* when x = 0 */ + if ((ix | lx) == 0) + return (hy < 0) ? -pi_o_2 - tiny : pi_o_2 + tiny; + + /* when x is INF */ + if (ix == 0x7ff00000) { + if (iy == 0x7ff00000) { + switch (m) { + case 0: + return pi_o_4 + tiny; /* atan(+INF,+INF) */ + case 1: + return -pi_o_4 - tiny; /* atan(-INF,+INF) */ + case 2: + return 3.0 * pi_o_4 + tiny; /*atan(+INF,-INF)*/ + case 3: + return -3.0 * pi_o_4 - tiny; /*atan(-INF,-INF)*/ + } + } else { + switch (m) { + case 0: + return zero; /* atan(+...,+INF) */ + case 1: + return -zero; /* atan(-...,+INF) */ + case 2: + return pi + tiny; /* atan(+...,-INF) */ + case 3: + return -pi - tiny; /* atan(-...,-INF) */ + } + } + } + /* when y is INF */ + if (iy == 0x7ff00000) + return (hy < 0) ? -pi_o_2 - tiny : pi_o_2 + tiny; + + /* compute y/x */ + k = (iy - ix) >> 20; + if (k > 60) + z = pi_o_2 + 0.5 * pi_lo; /* |y/x| > 2**60 */ + else if (hx < 0 && k < -60) + z = 0.0; /* |y|/x < -2**60 */ + else + z = atan(fabs__Fd(y / x)); /* safe to do y/x */ + switch (m) { + case 0: + return z; /* atan(+,+) */ + case 1: + __HI(z) ^= 0x80000000; + return z; /* atan(-,+) */ + case 2: + return pi - (z - pi_lo); /* atan(+,-) */ + default: /* case 3 */ + return (z - pi_lo) - pi; /* atan(-,-) */ + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/errno.c b/src/MSL_C.PPCEABI.bare.H/errno.c new file mode 100644 index 00000000..fb0a2b41 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/errno.c @@ -0,0 +1,3 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h" + +int errno; diff --git a/src/MSL_C.PPCEABI.bare.H/float.c b/src/MSL_C.PPCEABI.bare.H/float.c new file mode 100644 index 00000000..f07b2812 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/float.c @@ -0,0 +1,5 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/float.h" + +unsigned long __float_nan[] = { 0x7FFFFFFF }; + +unsigned long __float_huge[] = { 0x7F800000 }; diff --git a/src/MSL_C.PPCEABI.bare.H/mbstring.c b/src/MSL_C.PPCEABI.bare.H/mbstring.c new file mode 100644 index 00000000..fa77c660 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/mbstring.c @@ -0,0 +1,18 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mbstring.h" + +size_t wcstombs(char* s, const wchar_t* pwcs, size_t n) +{ + wchar_t next; + size_t chars_written; + int i; + + chars_written = 0; + for (i = 0; i < n; ++i) { + next = *pwcs++; + *s++ = (char)next; + if ((char)next == '\0') + break; + ++chars_written; + } + return chars_written; +} diff --git a/src/MSL_C.PPCEABI.bare.H/mem.c b/src/MSL_C.PPCEABI.bare.H/mem.c new file mode 100644 index 00000000..63a4434f --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/mem.c @@ -0,0 +1,75 @@ +#include "string.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mem_funcs.h" + +void* memmove(void* dst, const void* src, size_t n) +{ + unsigned char* csrc; + unsigned char* cdst; + + int reverse = (unsigned int)src < (unsigned int)dst; + + if (n >= 32) { + if (((unsigned int)dst ^ (unsigned int)src) & 3) { + if (!reverse) { + __copy_longs_unaligned(dst, src, n); + } else { + __copy_longs_rev_unaligned(dst, src, n); + } + } else { + if (!reverse) { + __copy_longs_aligned(dst, src, n); + } else { + __copy_longs_rev_aligned(dst, src, n); + } + } + + return dst; + } else { + if (!reverse) { + csrc = ((unsigned char*)src) - 1; + cdst = ((unsigned char*)dst) - 1; + n++; + + while (--n > 0) { + *++cdst = *++csrc; + } + } else { + csrc = (unsigned char*)src + n; + cdst = (unsigned char*)dst + n; + n++; + + while (--n > 0) { + *--cdst = *--csrc; + } + } + } + + return dst; +} + +void* memchr(const void* ptr, int ch, size_t count) +{ + const unsigned char* p; + + unsigned long v = (ch & 0xff); + + for (p = (unsigned char*)ptr - 1, count++; --count;) + if ((*++p & 0xff) == v) + return (void*)p; + + return NULL; +} + +int memcmp(const void* lhs, const void* rhs, size_t count) +{ + const unsigned char* p1; + const unsigned char* p2; + + for (p1 = (const unsigned char*)lhs - 1, p2 = (const unsigned char*)rhs - 1, + count++; + --count;) + if (*++p1 != *++p2) + return ((*p1 < *p2) ? -1 : +1); + + return 0; +} diff --git a/src/MSL_C.PPCEABI.bare.H/mem_funcs.c b/src/MSL_C.PPCEABI.bare.H/mem_funcs.c new file mode 100644 index 00000000..a22984c4 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/mem_funcs.c @@ -0,0 +1,221 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mem_funcs.h" + +#define cps ((unsigned char*)src) +#define cpd ((unsigned char*)dst) +#define lps ((unsigned long*)src) +#define lpd ((unsigned long*)dst) +#define deref_auto_inc(p) *++(p) + +void __copy_longs_aligned(void* dst, const void* src, size_t n) +{ + unsigned long i; + + i = (-(unsigned long)dst) & 3; + + cps = ((unsigned char*)src) - 1; + cpd = ((unsigned char*)dst) - 1; + + if (i) { + n -= i; + + do + deref_auto_inc(cpd) = deref_auto_inc(cps); + while (--i); + } + + lps = ((unsigned long*)(cps + 1)) - 1; + lpd = ((unsigned long*)(cpd + 1)) - 1; + + i = n >> 5; + + if (i) + do { + deref_auto_inc(lpd) = deref_auto_inc(lps); + deref_auto_inc(lpd) = deref_auto_inc(lps); + deref_auto_inc(lpd) = deref_auto_inc(lps); + deref_auto_inc(lpd) = deref_auto_inc(lps); + deref_auto_inc(lpd) = deref_auto_inc(lps); + deref_auto_inc(lpd) = deref_auto_inc(lps); + deref_auto_inc(lpd) = deref_auto_inc(lps); + deref_auto_inc(lpd) = deref_auto_inc(lps); + } while (--i); + + i = (n & 31) >> 2; + + if (i) + do + deref_auto_inc(lpd) = deref_auto_inc(lps); + while (--i); + + cps = ((unsigned char*)(lps + 1)) - 1; + cpd = ((unsigned char*)(lpd + 1)) - 1; + + n &= 3; + + if (n) + do + deref_auto_inc(cpd) = deref_auto_inc(cps); + while (--n); + + return; +} + +void __copy_longs_rev_aligned(void* dst, const void* src, size_t n) +{ + unsigned long i; + + cps = ((unsigned char*)src) + n; + cpd = ((unsigned char*)dst) + n; + + i = ((unsigned long)cpd) & 3; + + if (i) { + n -= i; + + do + *--cpd = *--cps; + while (--i); + } + + i = n >> 5; + + if (i) + do { + *--lpd = *--lps; + *--lpd = *--lps; + *--lpd = *--lps; + *--lpd = *--lps; + *--lpd = *--lps; + *--lpd = *--lps; + *--lpd = *--lps; + *--lpd = *--lps; + } while (--i); + + i = (n & 31) >> 2; + + if (i) + do + *--lpd = *--lps; + while (--i); + + n &= 3; + + if (n) + do + *--cpd = *--cps; + while (--n); + + return; +} + +void __copy_longs_unaligned(void* dst, const void* src, size_t n) +{ + unsigned long i, v1, v2; + unsigned int src_offset, left_shift, right_shift; + + i = (-(unsigned long)dst) & 3; + + cps = ((unsigned char*)src) - 1; + cpd = ((unsigned char*)dst) - 1; + + if (i) { + n -= i; + + do + deref_auto_inc(cpd) = deref_auto_inc(cps); + while (--i); + } + + src_offset = ((unsigned int)(cps + 1)) & 3; + + left_shift = src_offset << 3; + right_shift = 32 - left_shift; + + cps -= src_offset; + + lps = ((unsigned long*)(cps + 1)) - 1; + lpd = ((unsigned long*)(cpd + 1)) - 1; + + i = n >> 3; + + v1 = deref_auto_inc(lps); + + do { + v2 = deref_auto_inc(lps); + deref_auto_inc(lpd) = (v1 << left_shift) | (v2 >> right_shift); + v1 = deref_auto_inc(lps); + deref_auto_inc(lpd) = (v2 << left_shift) | (v1 >> right_shift); + } while (--i); + + if (n & 4) { + v2 = deref_auto_inc(lps); + deref_auto_inc(lpd) = (v1 << left_shift) | (v2 >> right_shift); + } + + cps = ((unsigned char*)(lps + 1)) - 1; + cpd = ((unsigned char*)(lpd + 1)) - 1; + + n &= 3; + + if (n) { + cps -= 4 - src_offset; + do + deref_auto_inc(cpd) = deref_auto_inc(cps); + while (--n); + } + + return; +} + +void __copy_longs_rev_unaligned(void* dst, const void* src, size_t n) +{ + unsigned long i, v1, v2; + unsigned int src_offset, left_shift, right_shift; + + cps = ((unsigned char*)src) + n; + cpd = ((unsigned char*)dst) + n; + + i = ((unsigned long)cpd) & 3; + + if (i) { + n -= i; + + do + *--cpd = *--cps; + while (--i); + } + + src_offset = ((unsigned int)cps) & 3; + + left_shift = src_offset << 3; + right_shift = 32 - left_shift; + + cps += 4 - src_offset; + + i = n >> 3; + + v1 = *--lps; + + do { + v2 = *--lps; + *--lpd = (v2 << left_shift) | (v1 >> right_shift); + v1 = *--lps; + *--lpd = (v1 << left_shift) | (v2 >> right_shift); + } while (--i); + + if (n & 4) { + v2 = *--lps; + *--lpd = (v2 << left_shift) | (v1 >> right_shift); + } + + n &= 3; + + if (n) { + cps += src_offset; + do + *--cpd = *--cps; + while (--n); + } + + return; +} diff --git a/src/MSL_C.PPCEABI.bare.H/misc_io.c b/src/MSL_C.PPCEABI.bare.H/misc_io.c new file mode 100644 index 00000000..2b6c9913 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/misc_io.c @@ -0,0 +1 @@ +void __stdio_atexit(void) { } diff --git a/src/MSL_C.PPCEABI.bare.H/printf.c b/src/MSL_C.PPCEABI.bare.H/printf.c new file mode 100644 index 00000000..21d248da --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/printf.c @@ -0,0 +1,1076 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/printf.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/direct_io.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdlib.h" +#include "string.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h" +#include "stdarg.h" + +extern void __num2dec(const decform*, double, decimal*); + +#define TARGET_FLOAT_BITS 64 +#define TARGET_FLOAT_BYTES (TARGET_FLOAT_BITS / 8) +#define TARGET_FLOAT_MAX_EXP LDBL_MAX_EXP +#define TARGET_FLOAT_MANT_DIG LDBL_MANT_DIG +#define TARGET_FLOAT_IMPLICIT_J_BIT 1 +#define TARGET_FLOAT_MANT_BITS \ + (TARGET_FLOAT_MANT_DIG - TARGET_FLOAT_IMPLICIT_J_BIT) +#define TARGET_FLOAT_EXP_BITS (TARGET_FLOAT_BITS - TARGET_FLOAT_MANT_BITS - 1) + +enum justification_options { + left_justification, + right_justification, + zero_fill +}; + +enum sign_options { only_minus, sign_always, space_holder }; + +enum argument_options { + normal_argument, + char_argument, + short_argument, + long_argument, + long_long_argument, + long_double_argument, + wchar_argument +}; + +typedef struct { + unsigned char justification_options; + unsigned char sign_options; + unsigned char precision_specified; + unsigned char alternate_form; + unsigned char argument_options; + unsigned char conversion_char; + int field_width; + int precision; +} print_format; + +static const char* parse_format(const char* format_string, va_list* arg, + print_format* format) +{ + print_format f; + const char* s = format_string; + int c; + int flag_found; + f.justification_options = right_justification; + f.sign_options = only_minus; + f.precision_specified = 0; + f.alternate_form = 0; + f.argument_options = normal_argument; + f.field_width = 0; + f.precision = 0; + + if ((c = *++s) == '%') { + f.conversion_char = c; + *format = f; + return ((const char*)s + 1); + } + + for (;;) { + flag_found = 1; + + switch (c) { + case '-': + f.justification_options = left_justification; + break; + case '+': + f.sign_options = sign_always; + break; + case ' ': + if (f.sign_options != sign_always) { + f.sign_options = space_holder; + } + break; + case '#': + f.alternate_form = 1; + break; + case '0': + if (f.justification_options != left_justification) { + f.justification_options = zero_fill; + } + break; + default: + flag_found = 0; + break; + } + + if (flag_found) { + c = *++s; + } else { + break; + } + } + + if (c == '*') { + if ((f.field_width = va_arg(*arg, int)) < 0) { + f.justification_options = left_justification; + f.field_width = -f.field_width; + } + + c = *++s; + } else { + while (isdigit(c)) { + f.field_width = (f.field_width * 10) + (c - '0'); + c = *++s; + } + } + + if (f.field_width > 509) { + f.conversion_char = 0xFF; + *format = f; + return ((const char*)s + 1); + } + + if (c == '.') { + f.precision_specified = 1; + + if ((c = *++s) == '*') { + if ((f.precision = va_arg(*arg, int)) < 0) { + f.precision_specified = 0; + } + + c = *++s; + } else { + while (isdigit(c)) { + f.precision = (f.precision * 10) + (c - '0'); + c = *++s; + } + } + } + + flag_found = 1; + + switch (c) { + case 'h': + f.argument_options = short_argument; + + if (s[1] == 'h') { + f.argument_options = char_argument; + c = *++s; + } + + break; + + case 'l': + f.argument_options = long_argument; + + if (s[1] == 'l') { + f.argument_options = long_long_argument; + c = *++s; + } + + break; + + case 'L': + f.argument_options = long_double_argument; + break; + default: + flag_found = 0; + break; + } + + if (flag_found) { + c = *++s; + } + + f.conversion_char = c; + + switch (c) { + case 'd': + case 'i': + case 'u': + case 'o': + case 'x': + case 'X': + if (f.argument_options == long_double_argument) { + f.conversion_char = 0xFF; + break; + } + + if (!f.precision_specified) { + f.precision = 1; + } else if (f.justification_options == zero_fill) { + f.justification_options = right_justification; + } + break; + + case 'f': + if (f.argument_options == short_argument + || f.argument_options == long_long_argument) { + f.conversion_char = 0xFF; + break; + } + + if (!f.precision_specified) { + f.precision = 6; + } + break; + + case 'g': + case 'G': + if (!f.precision) { + f.precision = 1; + } + + case 'e': + case 'E': + if (f.argument_options == short_argument + || f.argument_options == long_long_argument + || f.argument_options == char_argument) { + f.conversion_char = 0xFF; + break; + } + + if (!f.precision_specified) { + f.precision = 6; + } + break; + + case 'p': + f.conversion_char = 'x'; + f.alternate_form = 1; + f.argument_options = long_argument; + f.precision = 8; + break; + + case 'c': + if (f.argument_options == long_argument) { + f.argument_options = wchar_argument; + } else { + if (f.precision_specified + || f.argument_options != normal_argument) { + f.conversion_char = 0xFF; + } + } + + break; + + case 's': + if (f.argument_options == long_argument) { + f.argument_options = wchar_argument; + } else { + if (f.argument_options != normal_argument) { + f.conversion_char = 0xFF; + } + } + + break; + + case 'n': + if (f.argument_options == long_double_argument) { + f.conversion_char = 0xFF; + } + + break; + + default: + f.conversion_char = 0xFF; + break; + } + + *format = f; + return ((const char*)s + 1); +} + +static char* long2str(signed long num, char* buff, print_format* format) +{ + unsigned long unsigned_num, base; + char* p; + int n, digits; + int minus = 0; + unsigned_num = num; + minus = 0; + + p = buff; + *--p = 0; + digits = 0; + + if (!num && !format->precision + && !(format->alternate_form && format->conversion_char == 'o')) { + return p; + } + + switch (format->conversion_char) { + case 'd': + case 'i': + base = 10; + + if (num < 0) { + unsigned_num = -unsigned_num; + minus = 1; + } + break; + + case 'o': + base = 8; + format->sign_options = only_minus; + break; + + case 'u': + base = 10; + format->sign_options = only_minus; + break; + + case 'x': + case 'X': + base = 16; + format->sign_options = only_minus; + break; + } + + do { + n = unsigned_num % base; + unsigned_num /= base; + + if (n < 10) { + n += '0'; + } else { + n -= 10; + + if (format->conversion_char == 'x') { + n += 'a'; + } else { + n += 'A'; + } + } + + *--p = n; + ++digits; + } while (unsigned_num != 0); + + if (base == 8 && format->alternate_form && *p != '0') { + *--p = '0'; + ++digits; + } + + if (format->justification_options == zero_fill) { + format->precision = format->field_width; + + if (minus || format->sign_options != only_minus) + --format->precision; + + if (base == 16 && format->alternate_form) + format->precision -= 2; + } + + if (buff - p + format->precision > 509) + return (0); + + while (digits < format->precision) { + *--p = '0'; + ++digits; + } + + if (base == 16 && format->alternate_form) { + *--p = format->conversion_char; + *--p = '0'; + } + + if (minus) { + *--p = '-'; + } else if (format->sign_options == sign_always) { + *--p = '+'; + } else if (format->sign_options == space_holder) { + *--p = ' '; + } + + return p; +} + +static char* longlong2str(signed long long num, char* pBuf, print_format* fmt) +{ + unsigned long long unsigned_num, base; + char* p; + int n, digits; + int minus = 0; + unsigned_num = num; + minus = 0; + p = pBuf; + *--p = 0; + digits = 0; + + if (!num && !fmt->precision + && !(fmt->alternate_form && fmt->conversion_char == 'o')) { + return p; + } + + switch (fmt->conversion_char) { + case 'd': + case 'i': + base = 10; + + if (num < 0) { + unsigned_num = -unsigned_num; + minus = 1; + } + break; + case 'o': + base = 8; + fmt->sign_options = only_minus; + break; + case 'u': + base = 10; + fmt->sign_options = only_minus; + break; + case 'x': + case 'X': + base = 16; + fmt->sign_options = only_minus; + break; + } + + do { + n = unsigned_num % base; + unsigned_num /= base; + + if (n < 10) { + n += '0'; + } else { + n -= 10; + if (fmt->conversion_char == 'x') { + n += 'a'; + } else { + n += 'A'; + } + } + + *--p = n; + ++digits; + } while (unsigned_num != 0); + + if (base == 8 && fmt->alternate_form && *p != '0') { + *--p = '0'; + ++digits; + } + + if (fmt->justification_options == zero_fill) { + fmt->precision = fmt->field_width; + + if (minus || fmt->sign_options != only_minus) { + --fmt->precision; + } + + if (base == 16 && fmt->alternate_form) { + fmt->precision -= 2; + } + } + + if (pBuf - p + fmt->precision > 509) { + return 0; + } + + while (digits < fmt->precision) { + *--p = '0'; + ++digits; + } + + if (base == 16 && fmt->alternate_form) { + *--p = fmt->conversion_char; + *--p = '0'; + } + + if (minus) { + *--p = '-'; + } else if (fmt->sign_options == sign_always) { + *--p = '+'; + } else if (fmt->sign_options == space_holder) { + *--p = ' '; + } + + return p; +} + +static void round_decimal(decimal* dec, int new_length) +{ + char c; + char* p; + int carry; + + if (new_length < 0) { + return_zero: + dec->sign = 0; + dec->exp = 0; + dec->sig.length = 1; + *dec->sig.text = '0'; + return; + } + + if (new_length >= dec->sig.length) { + return; + } + + p = (char*)dec->sig.text + new_length + 1; + c = *--p - '0'; + + if (c == 5) { + char* q = &((char*)dec->sig.text)[dec->sig.length]; + + while (--q > p && *q == '0') + ; + carry = (q == p) ? p[-1] & 1 : 1; + } else { + carry = (c > 5); + } + + while (new_length != 0) { + c = *--p - '0' + carry; + + if ((carry = (c > 9)) != 0 || c == 0) { + --new_length; + } else { + *p = c + '0'; + break; + } + } + + if (carry != 0) { + dec->exp += 1; + dec->sig.length = 1; + *dec->sig.text = '1'; + return; + } else if (new_length == 0) { + goto return_zero; + } + + dec->sig.length = new_length; +} + +static char* float2str(va_list arg, char* buff, print_format* format, + int vecIndex) +{ + decimal dec; + decform form; + char* p; + char* q; + int n, digits, sign; + int int_digits, frac_digits; + long double num; + + if (format->argument_options == long_double_argument) { + num = va_arg(arg, long double); + } else { + num = va_arg(arg, double); + } + + if (format->precision > 509) { + return 0; + } + + form.style = 0; + form.digits = 0x20; + __num2dec(&form, num, &dec); + p = (char*)dec.sig.text + dec.sig.length; + + while (dec.sig.length > 1 && *--p == '0') { + --dec.sig.length; + ++dec.exp; + } + + switch (*dec.sig.text) { + case '0': + dec.exp = 0; + break; + case 'I': + if (num < 0) { + p = buff - 5; + strcpy(p, "-Inf"); + } else { + p = buff - 4; + strcpy(p, "Inf"); + } + + return p; + + case 'N': + p = buff - 4; + strcpy(p, "NaN"); + return p; + } + + dec.exp += dec.sig.length - 1; + p = buff; + *--p = 0; + + switch (format->conversion_char) { + case 'g': + case 'G': + + if (dec.sig.length > format->precision) { + round_decimal(&dec, format->precision); + } + + if (dec.exp < -4 || dec.exp >= format->precision) { + if (format->alternate_form) { + --format->precision; + } else { + format->precision = dec.sig.length - 1; + } + + if (format->conversion_char == 'g') { + format->conversion_char = 'e'; + } else { + format->conversion_char = 'E'; + } + + goto e_format; + } + + if (format->alternate_form) { + format->precision -= dec.exp + 1; + } else { + if ((format->precision = dec.sig.length - (dec.exp + 1)) < 0) { + format->precision = 0; + } + } + + goto f_format; + + case 'e': + case 'E': + e_format: + + if (dec.sig.length > format->precision + 1) { + round_decimal(&dec, format->precision + 1); + } + + n = dec.exp; + sign = '+'; + + if (n < 0) { + n = -n; + sign = '-'; + } + + for (digits = 0; n || digits < 2; ++digits) { + *--p = n % 10 + '0'; + n /= 10; + } + + *--p = sign; + *--p = format->conversion_char; + + if (buff - p + format->precision > 509) { + return 0; + } + + if (dec.sig.length < format->precision + 1) { + for (n = format->precision + 1 - dec.sig.length + 1; --n;) { + *--p = '0'; + } + } + + for (n = dec.sig.length, q = (char*)dec.sig.text + dec.sig.length; + --n;) { + *--p = *--q; + } + + if (format->precision || format->alternate_form) { + *--p = '.'; + } + + *--p = *dec.sig.text; + + if (dec.sign) + *--p = '-'; + else if (format->sign_options == sign_always) + *--p = '+'; + else if (format->sign_options == space_holder) + *--p = ' '; + + break; + + case 'f': + f_format: + + if ((frac_digits = -dec.exp + dec.sig.length - 1) < 0) + frac_digits = 0; + + if (frac_digits > format->precision) { + round_decimal(&dec, + dec.sig.length - (frac_digits - format->precision)); + + if ((frac_digits = -dec.exp + dec.sig.length - 1) < 0) + frac_digits = 0; + } + + if ((int_digits = dec.exp + 1) < 0) + int_digits = 0; + + if (int_digits + frac_digits > 509) + return 0; + + q = (char*)dec.sig.text + dec.sig.length; + + for (digits = 0; digits < (format->precision - frac_digits); ++digits) + *--p = '0'; + + for (digits = 0; digits < frac_digits && digits < dec.sig.length; + ++digits) + *--p = *--q; + + for (; digits < frac_digits; ++digits) + *--p = '0'; + + if (format->precision || format->alternate_form) + *--p = '.'; + + if (int_digits) { + for (digits = 0; digits < int_digits - dec.sig.length; ++digits) { + *--p = '0'; + } + + for (; digits < int_digits; ++digits) { + *--p = *--q; + } + } else { + *--p = '0'; + } + + if (dec.sign) { + *--p = '-'; + } else if (format->sign_options == sign_always) { + *--p = '+'; + } else if (format->sign_options == space_holder) { + *--p = ' '; + } + + break; + } + + return p; +} + +static int __pformatter(void* (*WriteProc)(void*, const char*, size_t), + void* WriteProcArg, const char* format_str, va_list arg) +{ + int num_chars, chars_written, field_width; + const char* format_ptr; + const char* curr_format; + print_format format; + signed long long_num; + signed long long long_long_num; + char buff[512]; + char* buff_ptr; + char* string_end; + char fill_char = ' '; + + format_ptr = format_str; + chars_written = 0; + + while (*format_ptr) { + if (!(curr_format = strchr(format_ptr, '%'))) { + num_chars = strlen(format_ptr); + chars_written += num_chars; + + if (num_chars + && !(*WriteProc)(WriteProcArg, format_ptr, num_chars)) { + return -1; + } + + break; + } + + num_chars = curr_format - format_ptr; + chars_written += num_chars; + + if (num_chars && !(*WriteProc)(WriteProcArg, format_ptr, num_chars)) { + return -1; + } + + format_ptr = curr_format; + format_ptr = parse_format(format_ptr, (va_list*)arg, &format); + + switch (format.conversion_char) { + case 'd': + case 'i': + if (format.argument_options == long_argument) { + long_num = va_arg(arg, signed long); + } else if (format.argument_options == long_long_argument) { + long_long_num = va_arg(arg, signed long long); + } else { + long_num = va_arg(arg, int); + } + + if (format.argument_options == short_argument) { + long_num = (signed short)long_num; + } + + if (format.argument_options == char_argument) { + long_num = (signed char)long_num; + } + + if (format.argument_options == long_long_argument) { + if (!(buff_ptr + = longlong2str(long_long_num, buff + 512, &format))) { + goto conversion_error; + } + } else { + if (!(buff_ptr = long2str(long_num, buff + 512, &format))) { + goto conversion_error; + } + } + + num_chars = buff + 512 - 1 - buff_ptr; + break; + + case 'o': + case 'u': + case 'x': + case 'X': + if (format.argument_options == long_argument) { + long_num = va_arg(arg, unsigned long); + } else if (format.argument_options == long_long_argument) { + long_long_num = va_arg(arg, signed long long); + } else { + long_num = va_arg(arg, unsigned int); + } + + if (format.argument_options == short_argument) { + long_num = (unsigned short)long_num; + } + + if (format.argument_options == char_argument) { + long_num = (unsigned char)long_num; + } + + if (format.argument_options == long_long_argument) { + if (!(buff_ptr + = longlong2str(long_long_num, buff + 512, &format))) { + goto conversion_error; + } + } else { + if (!(buff_ptr = long2str(long_num, buff + 512, &format))) { + goto conversion_error; + } + } + + num_chars = buff + 512 - 1 - buff_ptr; + break; + + case 'f': + case 'e': + case 'E': + case 'g': + case 'G': + if (!(buff_ptr = float2str(arg, buff + 512, &format, 0))) { + goto conversion_error; + } + + num_chars = buff + 512 - 1 - buff_ptr; + break; + + case 's': + if (format.argument_options == wchar_argument) { + wchar_t* wcs_ptr = va_arg(arg, wchar_t*); + + if (wcs_ptr == NULL) { + wcs_ptr = L""; + } + + if ((num_chars = wcstombs(buff, wcs_ptr, sizeof(buff))) < 0) { + goto conversion_error; + } + + buff_ptr = &buff[0]; + } else { + buff_ptr = va_arg(arg, char*); + } + + if (buff_ptr == NULL) { + buff_ptr = ""; + } + + if (format.alternate_form) { + num_chars = (unsigned char)*buff_ptr++; + + if (format.precision_specified + && num_chars > format.precision) { + num_chars = format.precision; + } + } else if (format.precision_specified) { + num_chars = format.precision; + + if ((string_end + = (char*)memchr((unsigned char*)buff_ptr, 0, num_chars)) + != 0) { + num_chars = string_end - buff_ptr; + } + } else { + num_chars = strlen(buff_ptr); + } + + break; + + case 'n': + buff_ptr = va_arg(arg, char*); + + switch (format.argument_options) { + case normal_argument: + *(int*)buff_ptr = chars_written; + break; + case short_argument: + *(signed short*)buff_ptr = chars_written; + break; + case long_argument: + *(signed long*)buff_ptr = chars_written; + break; + case long_long_argument: + *(signed long long*)buff_ptr = chars_written; + break; + } + + continue; + + case 'c': + buff_ptr = buff; + *buff_ptr = va_arg(arg, int); + num_chars = 1; + break; + + case '%': + buff_ptr = buff; + *buff_ptr = '%'; + num_chars = 1; + break; + + case 0xFF: + default: + conversion_error: + num_chars = strlen(curr_format); + chars_written += num_chars; + + if (num_chars + && !(*WriteProc)(WriteProcArg, curr_format, num_chars)) { + return -1; + } + + return chars_written; + break; + } + + field_width = num_chars; + + if (format.justification_options != left_justification) { + fill_char = (format.justification_options == zero_fill) ? '0' : ' '; + + if (((*buff_ptr == '+') || (*buff_ptr == '-')) + && (fill_char == '0')) { + if ((*WriteProc)(WriteProcArg, buff_ptr, 1) == 0) { + return -1; + } + + ++buff_ptr; + num_chars--; + } + + while (field_width < format.field_width) { + if ((*WriteProc)(WriteProcArg, &fill_char, 1) == 0) { + return -1; + } + + ++field_width; + } + } + + if (num_chars && !(*WriteProc)(WriteProcArg, buff_ptr, num_chars)) { + return -1; + } + + if (format.justification_options == left_justification) { + while (field_width < format.field_width) { + char blank = ' '; + + if ((*WriteProc)(WriteProcArg, &blank, 1) == 0) { + return -1; + } + + ++field_width; + } + } + + chars_written += field_width; + } + + return chars_written; +} + +static void* __FileWrite(void* pFile, const char* pBuffer, size_t char_num) +{ + return (fwrite(pBuffer, 1, char_num, (FILE*)pFile) == char_num ? pFile : 0); +} + +static void* __StringWrite(void* pCtrl, const char* pBuffer, size_t char_num) +{ + size_t chars; + __OutStrCtrl* ctrl = (__OutStrCtrl*)pCtrl; + void* res; + + chars = ((ctrl->CharsWritten + char_num) <= ctrl->MaxCharCount) + ? char_num + : ctrl->MaxCharCount - ctrl->CharsWritten; + res = memcpy(ctrl->CharStr + ctrl->CharsWritten, pBuffer, chars); + ctrl->CharsWritten += chars; + return res; +} + +int printf(const char* format, ...) +{ + int res; + + if (fwide(stdout, -1) >= 0) { + return -1; + } + + { + va_list args; + va_start(args, format); + res = __pformatter(&__FileWrite, (void*)stdout, format, args); + } + + return res; +} + +int vprintf(const char* format, va_list arg) +{ + int ret; + + if (fwide(stdout, -1) >= 0) { + return -1; + } + + ret = __pformatter(&__FileWrite, (void*)stdout, format, arg); + return ret; +} + +int vsnprintf(char* s, size_t n, const char* format, va_list arg) +{ + int end; + __OutStrCtrl osc; + osc.CharStr = s; + osc.MaxCharCount = n; + osc.CharsWritten = 0; + + end = __pformatter(&__StringWrite, &osc, format, arg); + + s[(end < n) ? end : n - 1] = '\0'; + + return end; +} + +int snprintf(char* s, size_t n, const char* format, ...) +{ + va_list args; + va_start(args, format); + return vsnprintf(s, n, format, args); +} + +int sprintf(char* s, const char* format, ...) +{ + va_list args; + va_start(args, format); + return vsnprintf(s, 0xFFFFFFFF, format, args); +} diff --git a/src/MSL_C.PPCEABI.bare.H/rand.c b/src/MSL_C.PPCEABI.bare.H/rand.c new file mode 100644 index 00000000..4d57c3e5 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/rand.c @@ -0,0 +1,13 @@ +#include "dolphin.h" + +// rand.c from Runtime library + +u32 next = 1; + +u32 rand(void) +{ + next = 0x41C64E6D * next + 12345; + return (next >> 16) & 0x7FFF; +} + +void srand(u32 seed) { next = seed; } diff --git a/src/MSL_C.PPCEABI.bare.H/s_atan.c b/src/MSL_C.PPCEABI.bare.H/s_atan.c new file mode 100644 index 00000000..6d72b440 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_atan.c @@ -0,0 +1,148 @@ + +/* @(#)s_atan.c 1.3 95/01/18 */ +/** + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + * + */ + +/* atan(x) + * Method + * 1. Reduce x to positive by atan(x) = -atan(-x). + * 2. According to the integer k=4t+0.25 chopped, t=x, the argument + * is further reduced to one of the following intervals and the + * arctangent of t is evaluated by the corresponding formula: + * + * [0,7/16] atan(x) = t-t^3*(a1+t^2*(a2+...(a10+t^2*a11)...) + * [7/16,11/16] atan(x) = atan(1/2) + atan( (t-0.5)/(1+t/2) ) + * [11/16.19/16] atan(x) = atan( 1 ) + atan( (t-1)/(1+t) ) + * [19/16,39/16] atan(x) = atan(3/2) + atan( (t-1.5)/(1+1.5t) ) + * [39/16,INF] atan(x) = atan(INF) + atan( -1/t ) + * + * Constants: + * The hexadecimal values are the intended ones for the following + * constants. The decimal values may be used, provided that the + * compiler will convert from decimal to binary accurately enough + * to produce the hexadecimal values shown. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double atanhi[] = { +#else +static double atanhi[] = { +#endif + 4.63647609000806093515e-01, /* atan(0.5)hi 0x3FDDAC67, 0x0561BB4F */ + 7.85398163397448278999e-01, /* atan(1.0)hi 0x3FE921FB, 0x54442D18 */ + 9.82793723247329054082e-01, /* atan(1.5)hi 0x3FEF730B, 0xD281F69B */ + 1.57079632679489655800e+00, /* atan(inf)hi 0x3FF921FB, 0x54442D18 */ +}; + +#ifdef __STDC__ +static const double atanlo[] = { +#else +static double atanlo[] = { +#endif + 2.26987774529616870924e-17, /* atan(0.5)lo 0x3C7A2B7F, 0x222F65E2 */ + 3.06161699786838301793e-17, /* atan(1.0)lo 0x3C81A626, 0x33145C07 */ + 1.39033110312309984516e-17, /* atan(1.5)lo 0x3C700788, 0x7AF0CBBD */ + 6.12323399573676603587e-17, /* atan(inf)lo 0x3C91A626, 0x33145C07 */ +}; + +#ifdef __STDC__ +static const double aT[] = { +#else +static double aT[] = { +#endif + 3.33333333333329318027e-01, /* 0x3FD55555, 0x5555550D */ + -1.99999999998764832476e-01, /* 0xBFC99999, 0x9998EBC4 */ + 1.42857142725034663711e-01, /* 0x3FC24924, 0x920083FF */ + -1.11111104054623557880e-01, /* 0xBFBC71C6, 0xFE231671 */ + 9.09088713343650656196e-02, /* 0x3FB745CD, 0xC54C206E */ + -7.69187620504482999495e-02, /* 0xBFB3B0F2, 0xAF749A6D */ + 6.66107313738753120669e-02, /* 0x3FB10D66, 0xA0D03D51 */ + -5.83357013379057348645e-02, /* 0xBFADDE2D, 0x52DEFD9A */ + 4.97687799461593236017e-02, /* 0x3FA97B4B, 0x24760DEB */ + -3.65315727442169155270e-02, /* 0xBFA2B444, 0x2C6A6C2F */ + 1.62858201153657823623e-02, /* 0x3F90AD3A, 0xE322DA11 */ +}; + +#ifdef __STDC__ +static const double +#else +static double +#endif + one + = 1.0, + huge = 1.0e300; + +#ifdef __STDC__ +double atan(double x) +#else +double atan(x) +double x; +#endif +{ + double w, s1, s2, z; + int ix, hx, id; + + hx = __HI(x); + ix = hx & 0x7fffffff; + if (ix >= 0x44100000) { /* if |x| >= 2^66 */ + if (ix > 0x7ff00000 || (ix == 0x7ff00000 && (__LO(x) != 0))) + return x + x; /* NaN */ + if (hx > 0) + return atanhi[3] + atanlo[3]; + else + return -atanhi[3] - atanlo[3]; + } + if (ix < 0x3fdc0000) { /* |x| < 0.4375 */ + if (ix < 0x3e200000) { /* |x| < 2^-29 */ + if (huge + x > one) + return x; /* raise inexact */ + } + id = -1; + } else { + x = fabs__Fd(x); + if (ix < 0x3ff30000) { /* |x| < 1.1875 */ + if (ix < 0x3fe60000) { /* 7/16 <=|x|<11/16 */ + id = 0; + x = (2.0 * x - one) / (2.0 + x); + } else { /* 11/16<=|x|< 19/16 */ + id = 1; + x = (x - one) / (x + one); + } + } else { + if (ix < 0x40038000) { /* |x| < 2.4375 */ + id = 2; + x = (x - 1.5) / (one + 1.5 * x); + } else { /* 2.4375 <= |x| < 2^66 */ + id = 3; + x = -1.0 / x; + } + } + } + /* end of argument reduction */ + z = x * x; + w = z * z; + /* break sum from i=0 to 10 aT[i]z**(i+1) into odd and even poly */ + s1 = z + * (aT[0] + + w + * (aT[2] + + w * (aT[4] + w * (aT[6] + w * (aT[8] + w * aT[10]))))); + s2 = w * (aT[1] + w * (aT[3] + w * (aT[5] + w * (aT[7] + w * aT[9])))); + if (id < 0) + return x - x * (s1 + s2); + else { + z = atanhi[id] - ((x * (s1 + s2) - atanlo[id]) - x); + return (hx < 0) ? -z : z; + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/s_frexp.c b/src/MSL_C.PPCEABI.bare.H/s_frexp.c new file mode 100644 index 00000000..a7bb05c4 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_frexp.c @@ -0,0 +1,58 @@ +/* @(#)s_frexp.c 1.4 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * for non-zero x + * x = frexp(arg,&exp); + * return a double fp quantity x such that 0.5 <= |x| <1.0 + * and the corresponding binary exponent "exp". That is + * arg = x*2^exp. + * If arg is inf, 0.0, or NaN, then frexp(arg,&exp) returns arg + * with *exp=0. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double +#else +static double +#endif + two54 + = 1.80143985094819840000e+16; /* 0x43500000, 0x00000000 */ + +#ifdef __STDC__ +double frexp(double x, int* eptr) +#else +double frexp(x, eptr) +double x; +int* eptr; +#endif +{ + int hx, ix, lx; + hx = __HI(x); + ix = 0x7fffffff & hx; + lx = __LO(x); + *eptr = 0; + if (ix >= 0x7ff00000 || ((ix | lx) == 0)) + return x; /* 0,inf,nan */ + if (ix < 0x00100000) { /* subnormal */ + x *= two54; + hx = __HI(x); + ix = hx & 0x7fffffff; + *eptr = -54; + } + *eptr += (ix >> 20) - 1022; + hx = (hx & 0x800fffff) | 0x3fe00000; + __HI(x) = hx; + return x; +} diff --git a/src/MSL_C.PPCEABI.bare.H/scanf.c b/src/MSL_C.PPCEABI.bare.H/scanf.c new file mode 100644 index 00000000..a8f273ec --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/scanf.c @@ -0,0 +1,34 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h" + +int __StringRead(void* pPtr, int ch, int act) +{ + char ret; + __InStrCtrl* Iscp = (__InStrCtrl*)pPtr; + + switch (act) { + case __GetAChar: + ret = *(Iscp->NextChar); + + if (ret == '\0') { + Iscp->NullCharDetected = 1; + return -1; + } else { + Iscp->NextChar++; + return ret; + } + + case __UngetAChar: + if (Iscp->NullCharDetected == 0) { + Iscp->NextChar--; + } else { + Iscp->NullCharDetected = 0; + } + + return ch; + + case __TestForError: + return Iscp->NullCharDetected; + } + + return 0; +} diff --git a/src/MSL_C.PPCEABI.bare.H/string.c b/src/MSL_C.PPCEABI.bare.H/string.c new file mode 100644 index 00000000..833447df --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/string.c @@ -0,0 +1,257 @@ +#include "string.h" + +static int K1 = 0x80808080; +static int K2 = 0xFEFEFEFF; + +size_t strlen(const char* str) +{ + size_t len = -1; + unsigned char* p = (unsigned char*)str - 1; + + do { + len++; + } while (*++p); + + return len; +} + +char* strcpy(char* dst, const char* src) +{ + register unsigned char *destb, *fromb; + register unsigned long w, t, align; + register unsigned int k1; + register unsigned int k2; + + fromb = (unsigned char*)src; + destb = (unsigned char*)dst; + + if ((align = ((int)fromb & 3)) != ((int)destb & 3)) { + goto bytecopy; + } + + if (align) { + if ((*destb = *fromb) == 0) { + return dst; + } + + for (align = 3 - align; align; align--) { + if ((*(++destb) = *(++fromb)) == 0) { + return dst; + } + } + ++destb; + ++fromb; + } + + k1 = K1; + k2 = K2; + + w = *((int*)(fromb)); + + t = w + k2; + + t &= k1; + if (t) { + goto bytecopy; + } + --((int*)(destb)); + + do { + *(++((int*)(destb))) = w; + w = *(++((int*)(fromb))); + + t = w + k2; + t &= k1; + if (t) { + goto adjust; + } + } while (1); + +adjust: + ++((int*)(destb)); + +bytecopy: + if ((*destb = *fromb) == 0) { + return dst; + } + + do { + if ((*(++destb) = *(++fromb)) == 0) { + return dst; + } + } while (1); + + return dst; +} + +char* strncpy(char* dst, const char* src, size_t n) +{ + const unsigned char* p = (const unsigned char*)src - 1; + unsigned char* q = (unsigned char*)dst - 1; + + n++; + while (--n) { + if (!(*++q = *++p)) { + while (--n) { + *++q = 0; + } + break; + } + } + + return dst; +} + +char* strcat(char* dst, const char* src) +{ + const unsigned char* p = (unsigned char*)src - 1; + unsigned char* q = (unsigned char*)dst - 1; + + while (*++q) { } + + q--; + + while (*++q = *++p) { } + + return dst; +} + +int strcmp(const char* str1, const char* str2) +{ + register unsigned char* left = (unsigned char*)str1; + register unsigned char* right = (unsigned char*)str2; + unsigned long align, l1, r1, x; + + l1 = *left; + r1 = *right; + if (l1 - r1) { + return l1 - r1; + } + + if ((align = ((int)left & 3)) != ((int)right & 3)) { + goto bytecopy; + } + + if (align) { + if (l1 == 0) { + return 0; + } + for (align = 3 - align; align; align--) { + l1 = *(++left); + r1 = *(++right); + if (l1 - r1) { + return l1 - r1; + } + if (l1 == 0) { + return 0; + } + } + left++; + right++; + } + + l1 = *(int*)left; + r1 = *(int*)right; + x = l1 + K2; + if (x & K1) { + goto adjust; + } + + while (l1 == r1) { + l1 = *(++((int*)(left))); + r1 = *(++((int*)(right))); + x = l1 + K2; + if (x & K1) { + goto adjust; + } + } + + if (l1 > r1) { + return 1; + } + return -1; + +adjust: + l1 = *left; + r1 = *right; + if (l1 - r1) { + return l1 - r1; + } + +bytecopy: + if (l1 == 0) { + return 0; + } + + do { + l1 = *(++left); + r1 = *(++right); + if (l1 - r1) { + return l1 - r1; + } + if (l1 == 0) { + return 0; + } + } while (1); +} + +char* strchr(const char* str, int c) +{ + const unsigned char* p = (unsigned char*)str - 1; + unsigned long chr = (c & 0xFF); + + unsigned long ch; + while (ch = *++p) { + if (ch == chr) { + return (char*)p; + } + } + + return chr ? NULL : (char*)p; +} + +char* strrchr(const char* str, int c) +{ + const unsigned char* p = (unsigned char*)str - 1; + const unsigned char* q = NULL; + unsigned long chr = (c & 0xFF); + + unsigned long ch; + while (ch = *++p) { + if (ch == chr) { + q = p; + } + } + + if (q != NULL) { + return (char*)q; + } + + return chr ? NULL : (char*)p; +} + +char* strstr(const char* str, const char* pat) +{ + const unsigned char* s1 = (const unsigned char*)str - 1; + const unsigned char* p1 = (const unsigned char*)pat - 1; + unsigned long firstc, c1, c2; + + if ((pat == 0) || (!(firstc = *++p1))) { + return (char*)str; + } + + while (c1 = *++s1) { + if (c1 == firstc) { + const unsigned char* s2 = s1 - 1; + const unsigned char* p2 = p1 - 1; + + while ((c1 = *++s2) == (c2 = *++p2) && c1) + ; + + if (!c2) + return (char*)s1; + } + } + + return NULL; +} diff --git a/src/MSL_C.PPCEABI.bare.H/strtoul.c b/src/MSL_C.PPCEABI.bare.H/strtoul.c new file mode 100644 index 00000000..e40b9fac --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/strtoul.c @@ -0,0 +1,199 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/strtoul.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/limits.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h" + +enum scan_states { + start = 0x01, + check_for_zero = 0x02, + leading_zero = 0x04, + need_digit = 0x08, + digit_loop = 0x10, + finished = 0x20, + failure = 0x40 +}; + +#define final_state(scan_state) (scan_state & (finished | failure)) +#define success(scan_state) \ + (scan_state & (leading_zero | digit_loop | finished)) +#define fetch() (count++, (*ReadProc)(ReadProcArg, 0, __GetAChar)) +#define unfetch(c) (*ReadProc)(ReadProcArg, c, __UngetAChar) + +unsigned long __strtoul(int base, int max_width, + int (*ReadProc)(void*, int, int), void* ReadProcArg, + int* chars_scanned, int* negative, int* overflow) +{ + int scan_state = start; + int count = 0; + unsigned long value = 0; + unsigned long value_max = 0; + int c; + + *negative = *overflow = 0; + + if (base < 0 || base == 1 || base > 36 || max_width < 1) { + scan_state = failure; + } else { + c = fetch(); + } + + if (base != 0) + value_max = ULONG_MAX / base; + + while (count <= max_width && c != -1 && !final_state(scan_state)) { + switch (scan_state) { + case start: + if (isspace(c)) { + c = fetch(); + break; + } + + if (c == '+') { + c = fetch(); + } else if (c == '-') { + c = fetch(); + *negative = 1; + } + + scan_state = check_for_zero; + break; + + case check_for_zero: + if (base == 0 || base == 16) { + if (c == '0') { + scan_state = leading_zero; + c = fetch(); + break; + } + } + + scan_state = need_digit; + break; + + case 4: + if (c == 'X' || c == 'x') { + base = 16; + scan_state = need_digit; + c = fetch(); + break; + } + + if (base == 0) + base = 8; + + scan_state = digit_loop; + break; + + case need_digit: + case digit_loop: + if (base == 0) + base = 10; + + if (!value_max) { + value_max = ULONG_MAX / base; + } + + if (isdigit(c)) { + if ((c -= '0') >= base) { + if (scan_state == digit_loop) + scan_state = finished; + else + scan_state = failure; + + c += '0'; + break; + } + } else if (!isalpha(c) || (toupper(c) - 'A' + 10) >= base) { + if (scan_state == digit_loop) + scan_state = finished; + else + scan_state = failure; + + break; + } else { + c = toupper(c) - 'A' + 10; + } + + if (value > value_max) + *overflow = 1; + + value *= base; + + if (c > (ULONG_MAX - value)) + *overflow = 1; + + value += c; + scan_state = digit_loop; + c = fetch(); + break; + } + } + + if (!success(scan_state)) { + value = 0; + count = 0; + } else { + count--; + } + + *chars_scanned = count; + + unfetch(c); + + return value; +} + +unsigned long strtoul(const char* str, char** end, int base) +{ + unsigned long value; + int count, negative, overflow; + + __InStrCtrl isc; + isc.NextChar = (char*)str; + isc.NullCharDetected = 0; + + value = __strtoul(base, 0x7FFFFFFF, &__StringRead, (void*)&isc, &count, + &negative, &overflow); + + if (end) { + *end = (char*)str + count; + } + + if (overflow) { + value = ULONG_MAX; + errno = 0x22; + } else if (negative) { + value = -value; + } + + return value; +} + +long strtol(const char* str, char** end, int base) +{ + unsigned long uvalue; + long svalue; + int count, negative, overflow; + + __InStrCtrl isc; + isc.NextChar = (char*)str; + isc.NullCharDetected = 0; + + uvalue = __strtoul(base, 0x7FFFFFFF, &__StringRead, (void*)&isc, &count, + &negative, &overflow); + + if (end) { + *end = (char*)str + count; + } + + if (overflow || (!negative && uvalue > LONG_MAX) + || (negative && uvalue > -LONG_MIN)) { + svalue = (negative ? -LONG_MIN : LONG_MAX); + errno = ERANGE; + } else { + svalue = (negative ? (long)-uvalue : (long)uvalue); + } + + return svalue; +} diff --git a/src/MSL_C.PPCEABI.bare.H/w_atan2.c b/src/MSL_C.PPCEABI.bare.H/w_atan2.c new file mode 100644 index 00000000..42f1b297 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/w_atan2.c @@ -0,0 +1,39 @@ +/* @(#)w_atan2.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + * + */ + +/* + * wrapper atan2(y,x) + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +double atan2(double y, double x) /* wrapper atan2 */ +#else +double atan2(y, x) /* wrapper atan2 */ +double y, x; +#endif +{ +#ifdef _IEEE_LIBM + return __ieee754_atan2(y, x); +#else + double z; + z = __ieee754_atan2(y, x); + if (_LIB_VERSION == _IEEE_ || isnan(x) || isnan(y)) + return z; + if (x == 0.0 && y == 0.0) { + return __kernel_standard(y, x, 3); /* atan2(+-0,+-0) */ + } else + return z; +#endif +} diff --git a/src/MSL_C.PPCEABI.bare.H/wchar_io.c b/src/MSL_C.PPCEABI.bare.H/wchar_io.c new file mode 100644 index 00000000..4d5d32b5 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/wchar_io.c @@ -0,0 +1,22 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h" + +int fwide(FILE* file, int mode) +{ + if (file->file_mode.file_kind == __closed_file) { + return 0; + } + + switch (file->file_mode.file_orientation) { + case UNORIENTED: + if (mode > 0) { + file->file_mode.file_orientation = WIDE_ORIENTED; + } else if (mode < 0) { + file->file_mode.file_orientation = CHAR_ORIENTED; + } + return mode; + case WIDE_ORIENTED: + return 1; + case CHAR_ORIENTED: + return -1; + } +} diff --git a/src/TRK_MINNOW_DOLPHIN/__exception.s b/src/TRK_MINNOW_DOLPHIN/__exception.s new file mode 100644 index 00000000..a5c63065 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/__exception.s @@ -0,0 +1,2018 @@ +.include "macros.inc" +.file "__exception.s" + +# 0x80003534..0x80005468 | size: 0x1F34 +.section .init, "ax" +.balign 4 +# .init:0x0 | 0x80003534 | size: 0x0 +.sym gTRKInterruptVectorTable, global + +# .init:0x0 | 0x80003534 | size: 0x1F34 +.fn pad_00_80003534_init, local +.4byte 0x4D657472 +xoris r23, r27, 0x6572 +xori r19, r27, 0x2054 +ori r18, r11, 0x6765 +andis. r0, r1, 0x5265 +andi. r9, r27, 0x6465 +xoris r20, r19, 0x204b +oris r18, r11, 0x6e65 +xoris r0, r1, 0x666f +andi. r0, r17, 0x506f +andis. r5, r27, 0x7250 +.L_80003560: + .4byte 0x43000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + b 0x1e34 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mfsrr0 r2 + icbi r0, r2 + mfdar r2 + dcbi r0, r2 + mfsprg r2, 1 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x200 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x300 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 +# .init:0x348 | 0x8000387C | size: 0x0 +.sym lbl_8000387C, global + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 +# .init:0x3AC | 0x800038E0 | size: 0x0 +.sym lbl_800038E0, global + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x400 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x500 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x600 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x700 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x800 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x900 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0xc00 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0xd00 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0xe00 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + b .L_80004488 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0xf20 + rfi +.L_80004488: + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0xf00 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mfcr r2 + mtsprg 2, r2 + mfmsr r2 + andis. r2, r2, 0x2 + beq .L_80004564 + mfmsr r2 + xoris r2, r2, 0x2 + sync + mtmsr r2 + sync + mtsprg 1, r2 +.L_80004564: + mfsprg r2, 2 + mtcrf 255, r2 + mfsprg r2, 1 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1000 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mfcr r2 + mtsprg 2, r2 + mfmsr r2 + andis. r2, r2, 0x2 + beq .L_80004664 + mfmsr r2 + xoris r2, r2, 0x2 + sync + mtmsr r2 + sync + mtsprg 1, r2 +.L_80004664: + mfsprg r2, 2 + mtcrf 255, r2 + mfsprg r2, 1 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1100 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mfcr r2 + mtsprg 2, r2 + mfmsr r2 + andis. r2, r2, 0x2 + beq .L_80004764 + mfmsr r2 + xoris r2, r2, 0x2 + sync + mtmsr r2 + sync + mtsprg 1, r2 +.L_80004764: + mfsprg r2, 2 + mtcrf 255, r2 + mfsprg r2, 1 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1200 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1300 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1400 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1600 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1700 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1c00 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1d00 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1e00 + rfi + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + .4byte 0x00000000 + mtsprg 1, r2 + mtsprg 2, r3 + mtsprg 3, r4 + mfsrr0 r2 + mfsrr1 r4 + mfmsr r3 + ori r3, r3, 0x30 + mtsrr1 r3 + lis r3, 0x800f + ori r3, r3, 0x4a0 + mtsrr0 r3 + li r3, 0x1f00 + rfi +.endfn pad_00_80003534_init diff --git a/src/TRK_MINNOW_DOLPHIN/dispatch.c b/src/TRK_MINNOW_DOLPHIN/dispatch.c new file mode 100644 index 00000000..76014bb6 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/dispatch.c @@ -0,0 +1,43 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" + +u32 gTRKDispatchTableSize; + +struct DispatchEntry { + int (*fn)(TRKBuffer*); +}; + +struct DispatchEntry gTRKDispatchTable[33] = { + { &TRKDoUnsupported }, { &TRKDoConnect }, { &TRKDoDisconnect }, + { &TRKDoReset }, { &TRKDoVersions }, { &TRKDoSupportMask }, + { &TRKDoCPUType }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, + { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, + { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, + { &TRKDoUnsupported }, { &TRKDoReadMemory }, { &TRKDoWriteMemory }, + { &TRKDoReadRegisters }, { &TRKDoWriteRegisters }, { &TRKDoUnsupported }, + { &TRKDoUnsupported }, { &TRKDoFlushCache }, { &TRKDoUnsupported }, + { &TRKDoContinue }, { &TRKDoStep }, { &TRKDoStop }, + { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, + { &TRKDoUnsupported }, { &TRKDoUnsupported }, +}; + +DSError TRKInitializeDispatcher() +{ + gTRKDispatchTableSize = 32; + return DS_NoError; +} + +DSError TRKDispatchMessage(TRKBuffer* buffer) +{ + DSError error; + u8 command; + + error = DS_DispatchError; + TRKSetBufferPosition(buffer, 0); + TRKReadBuffer1_ui8(buffer, &command); + if (command < gTRKDispatchTableSize) { + error = gTRKDispatchTable[command].fn(buffer); + } + return error; +} diff --git a/src/TRK_MINNOW_DOLPHIN/dolphin_trk.c b/src/TRK_MINNOW_DOLPHIN/dolphin_trk.c new file mode 100644 index 00000000..31153cd6 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/dolphin_trk.c @@ -0,0 +1,137 @@ +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/flush_cache.h" +#include "dolphin/ar.h" +#include "stddef.h" + +#define EXCEPTIONMASK_ADDR 0x80000044 + +static u32 lc_base; + +static u32 TRK_ISR_OFFSETS[15] = { PPC_SystemReset, + PPC_MachineCheck, + PPC_DataStorage, + PPC_InstructionStorage, + PPC_ExternalInterrupt, + PPC_Alignment, + PPC_Program, + PPC_FloatingPointUnavaiable, + PPC_Decrementer, + PPC_SystemCall, + PPC_Trace, + PPC_PerformanceMonitor, + PPC_InstructionAddressBreakpoint, + PPC_SystemManagementInterrupt, + PPC_ThermalManagementInterrupt }; + +__declspec(section ".init") void __TRK_reset(void) { __TRK_copy_vectors(); } + +asm void InitMetroTRK() +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + + addi r1, r1, -4 + stw r3, 0(r1) + lis r3, gTRKCPUState@h + ori r3, r3, gTRKCPUState@l + stmw r0, ProcessorState_PPC.Default.GPR(r3) //Save the gprs + lwz r4, 0(r1) + addi r1, r1, 4 + stw r1, ProcessorState_PPC.Default.GPR[1](r3) + stw r4, ProcessorState_PPC.Default.GPR[3](r3) + mflr r4 + stw r4, ProcessorState_PPC.Default.LR(r3) + stw r4, ProcessorState_PPC.Default.PC(r3) + mfcr r4 + stw r4, ProcessorState_PPC.Default.CR(r3) + //??? + mfmsr r4 + ori r3, r4, (1 << (31 - 16)) + xori r3, r3, (1 << (31 - 16)) + mtmsr r3 + mtsrr1 r4 //Copy msr to srr1 + //Save misc registers to gTRKCPUState + bl TRKSaveExtended1Block + lis r3, gTRKCPUState@h + ori r3, r3, gTRKCPUState@l + lmw r0, ProcessorState_PPC.Default.GPR(r3) //Restore the gprs + //Reset IABR and DABR + li r0, 0 + mtspr 0x3f2, r0 + mtspr 0x3f5, r0 + //Restore stack pointer + lis r1, 0x80426008@h + ori r1, r1, 0x80426008@l + mr r3, r5 + bl InitMetroTRKCommTable //Initialize comm table + /* + If InitMetroTRKCommTable returned 1 (failure), an invalid hardware + id or the id for GDEV was somehow passed. Since only BBA or NDEV + are supported, we return early. Otherwise, we proceed with + starting up TRK. + */ + cmpwi r3, 1 + bne initCommTableSuccess + /* + BUG: The code probably orginally reloaded gTRKCPUState here, but + as is it will read the returned value of InitMetroTRKCommTable + as a TRKCPUState struct pointer, causing the CPU to return to + a garbage code address. + */ + lwz r4, ProcessorState_PPC.Default.LR(r3) + mtlr r4 + lmw r0, ProcessorState_PPC.Default.GPR(r3) //Restore the gprs + blr +initCommTableSuccess: + b TRK_main //Jump to TRK_main +#endif // clang-format on +} + +void EnableMetroTRKInterrupts(void) { EnableEXI2Interrupts(); } + +u32 TRKTargetTranslate(u32 param_0) +{ + if (param_0 >= lc_base) { + if ((param_0 < lc_base + 0x4000) + && ((gTRKCPUState.Extended1.DBAT3U & 3) != 0)) { + return param_0; + } + } + + return param_0 & 0x3FFFFFFF | 0x80000000; +} + +extern u8 gTRKInterruptVectorTable[]; + +void TRK_copy_vector(u32 offset) +{ + void* destPtr = (void*)TRKTargetTranslate(offset); + TRK_memcpy(destPtr, gTRKInterruptVectorTable + offset, 0x100); + TRK_flush_cache(destPtr, 0x100); +} + +void __TRK_copy_vectors(void) +{ + int i; + u32 mask; + + mask = *(u32*)TRKTargetTranslate(0x44); + + for (i = 0; i <= 14; ++i) { + if (mask & (1 << i)) { + TRK_copy_vector(TRK_ISR_OFFSETS[i]); + } + } +} + +DSError TRKInitializeTarget() +{ + gTRKState.isStopped = TRUE; + gTRKState.msr = __TRK_get_MSR(); + lc_base = 0xE0000000; + return DS_NoError; +} diff --git a/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c new file mode 100644 index 00000000..9a55362b --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c @@ -0,0 +1,116 @@ +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" +#include "OdemuExi2/odemuexi/DebuggerDriver.h" +#include "amcstubs/AmcExi2Stubs.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +DBCommTable gDBCommTable = {}; + +asm void TRKLoadContext(OSContext* ctx, u32) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + lwz r0, OSContext.gpr[0](r3) + lwz r1, OSContext.gpr[1](r3) + lwz r2, OSContext.gpr[2](r3) + lhz r5, OSContext.state(r3) + rlwinm. r6, r5, 0, 0x1e, 0x1e + beq lbl_80371C1C + rlwinm r5, r5, 0, 0x1f, 0x1d + sth r5, OSContext.state(r3) + lmw r5, OSContext.gpr[5](r3) + b lbl_80371C20 +lbl_80371C1C: + lmw r13, OSContext.gpr[13](r3) +lbl_80371C20: + mr r31, r3 + mr r3, r4 + lwz r4, OSContext.cr(r31) + mtcrf 0xff, r4 + lwz r4, OSContext.lr(r31) + mtlr r4 + lwz r4, OSContext.ctr(r31) + mtctr r4 + lwz r4, OSContext.xer(r31) + mtxer r4 + mfmsr r4 + rlwinm r4, r4, 0, 0x11, 0xf //Turn off external exceptions + rlwinm r4, r4, 0, 0x1f, 0x1d //Turn off recoverable exception flag + mtmsr r4 + mtsprg 1, r2 + lwz r4, OSContext.gpr[3](r31) + mtsprg 2, r4 + lwz r4, OSContext.gpr[4](r31) + mtsprg 3, r4 + lwz r2, OSContext.srr0(r31) + lwz r4, OSContext.srr1(r31) + lwz r31, OSContext.gpr[31](r31) + b TRKInterruptHandler +#endif // clang-format on +} + +void TRKEXICallBack(__OSInterrupt param_0, OSContext* ctx) +{ + OSEnableScheduler(); + TRKLoadContext(ctx, 0x500); +} + +int InitMetroTRKCommTable(int hwId) +{ + int result; + + if (hwId == HARDWARE_GDEV) { + result = Hu_IsStub(); + + gDBCommTable.initialize_func = DBInitComm; + gDBCommTable.init_interrupts_func = DBInitInterrupts; + gDBCommTable.peek_func = DBQueryData; + gDBCommTable.read_func = DBRead; + gDBCommTable.write_func = DBWrite; + gDBCommTable.open_func = DBOpen; + gDBCommTable.close_func = DBClose; + } else { + result = AMC_IsStub(); + + gDBCommTable.initialize_func = EXI2_Init; + gDBCommTable.init_interrupts_func = EXI2_EnableInterrupts; + gDBCommTable.peek_func = EXI2_Poll; + gDBCommTable.read_func = EXI2_ReadN; + gDBCommTable.write_func = EXI2_WriteN; + gDBCommTable.open_func = EXI2_Reserve; + gDBCommTable.close_func = EXI2_Unreserve; + } + + return result; +} + +void TRKUARTInterruptHandler() { } + +DSError TRKInitializeIntDrivenUART(u32 param_0, u32 param_1, u32 param_2, + volatile u8** param_3) +{ + gDBCommTable.initialize_func(param_3, TRKEXICallBack); + return DS_NoError; +} + +void EnableEXI2Interrupts(void) { gDBCommTable.init_interrupts_func(); } + +int TRKPollUART(void) { return gDBCommTable.peek_func(); } + +UARTError TRKReadUARTN(void* bytes, u32 length) +{ + int readErr = gDBCommTable.read_func(bytes, length); + return readErr == 0 ? 0 : -1; +} + +UARTError TRKWriteUARTN(const void* bytes, u32 length) +{ + int writeErr = gDBCommTable.write_func(bytes, length); + return writeErr == 0 ? 0 : -1; +} + +void ReserveEXI2Port(void) { gDBCommTable.open_func(); } + +void UnreserveEXI2Port(void) { gDBCommTable.close_func(); } + +void TRK_board_display(char* str) { OSReport(str); } diff --git a/src/TRK_MINNOW_DOLPHIN/flush_cache.c b/src/TRK_MINNOW_DOLPHIN/flush_cache.c new file mode 100644 index 00000000..116d8d72 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/flush_cache.c @@ -0,0 +1,26 @@ +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/flush_cache.h" + +asm void TRK_flush_cache(register void* param_1, register int param_2) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + + lis r5, 0xFFFF + ori r5, r5, 0xFFF1 + and r5, r5, param_1 + subf r3, r5, param_1 + add r4, param_2, r3 + +loop: + dcbst 0, r5 + dcbf 0, r5 + sync + icbi 0, r5 + addic r5, r5, 8 + addic. r4, r4, -8 + bge loop + + isync + blr +#endif // clang-format on +} diff --git a/src/TRK_MINNOW_DOLPHIN/main_TRK.c b/src/TRK_MINNOW_DOLPHIN/main_TRK.c new file mode 100644 index 00000000..0ce137a8 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/main_TRK.c @@ -0,0 +1,17 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h" + +static DSError TRK_mainError; + +DSError TRK_main(void) +{ + TRK_mainError = TRKInitializeNub(); + + if (TRK_mainError == DS_NoError) { + TRKNubWelcome(); + TRKNubMainLoop(); + } + + TRK_mainError = TRKTerminateNub(); + return TRK_mainError; +} diff --git a/src/TRK_MINNOW_DOLPHIN/mainloop.c b/src/TRK_MINNOW_DOLPHIN/mainloop.c new file mode 100644 index 00000000..62783f82 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/mainloop.c @@ -0,0 +1,70 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" + +void TRKHandleRequestEvent(TRKEvent* event) +{ + TRKBuffer* buffer = TRKGetBuffer(event->msgBufID); + TRKDispatchMessage(buffer); +} + +void TRKHandleSupportEvent(TRKEvent* event) { TRKTargetSupportRequest(); } + +void TRKIdle() +{ + if (TRKTargetStopped() == FALSE) { + TRKTargetContinue(); + } +} + +void TRKNubMainLoop(void) +{ + void* msg; + TRKEvent event; + BOOL isShutdownRequested; + BOOL isNewInput; + + isShutdownRequested = FALSE; + isNewInput = FALSE; + while (isShutdownRequested == FALSE) { + if (TRKGetNextEvent(&event) != FALSE) { + isNewInput = FALSE; + + switch (event.eventType) { + case NUBEVENT_Null: + break; + + case NUBEVENT_Request: + TRKHandleRequestEvent(&event); + break; + + case NUBEVENT_Shutdown: + isShutdownRequested = TRUE; + break; + + case NUBEVENT_Breakpoint: + case NUBEVENT_Exception: + TRKTargetInterrupt(&event); + break; + + case NUBEVENT_Support: + TRKHandleSupportEvent(&event); + break; + } + + TRKDestructEvent(&event); + continue; + } + + if ((isNewInput == FALSE) || (*(u8*)gTRKInputPendingPtr != '\0')) { + isNewInput = TRUE; + TRKGetInput(); + continue; + } + + TRKIdle(); + isNewInput = FALSE; + } +} diff --git a/src/TRK_MINNOW_DOLPHIN/mem_TRK.c b/src/TRK_MINNOW_DOLPHIN/mem_TRK.c new file mode 100644 index 00000000..b25259fe --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/mem_TRK.c @@ -0,0 +1,83 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h" +#include "dolphin/types.h" + +void TRK_fill_mem(void *dest, int value, unsigned long length) +{ +#define cDest ((unsigned char *)dest) +#define lDest ((unsigned long *)dest) + unsigned long val = (unsigned char)value; + unsigned long i; + lDest = (unsigned long *)dest; + cDest = (unsigned char *)dest; + + cDest--; + + if (length >= 32) { + i = ~(unsigned long)dest & 3; + + if (i) { + length -= i; + do { + *++cDest = val; + } while (--i); + } + + if (val) { + val |= val << 24 | val << 16 | val << 8; + } + + lDest = (unsigned long *)(cDest + 1) - 1; + + i = length >> 5; + if (i) { + do { + *++lDest = val; + *++lDest = val; + *++lDest = val; + *++lDest = val; + *++lDest = val; + *++lDest = val; + *++lDest = val; + *++lDest = val; + } while (--i); + } + + i = (length & 31) >> 2; + + if (i) { + do { + *++lDest = val; + } while (--i); + } + + cDest = (unsigned char *)(lDest + 1) - 1; + + length &= 3; + } + + if (length) { + do { + *++cDest = val; + } while (--length); + } + +#undef cDest +#undef lDest +} + +__declspec(section ".init") void *TRK_memcpy(void *dst, const void *src, size_t n) +{ + const char *p; + char *q; + + for (p = (const char *)src - 1, q = (char *)dst - 1, n++; --n;) + *++q = *++p; + + return dst; +} + +__declspec(section ".init") void *TRK_memset(void *dst, int val, size_t n) +{ + TRK_fill_mem(dst, val, n); + return dst; +} diff --git a/src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c b/src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c new file mode 100644 index 00000000..04d4d3a9 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c @@ -0,0 +1,248 @@ +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" + +extern u8 gTRKRestoreFlags[9 + 3 /* padding */]; + +asm void TRKSaveExtended1Block() +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + lis r2, gTRKCPUState@h /* 0x8044F338@h */ + ori r2, r2, gTRKCPUState@l /* 0x8044F338@l */ + mfsr r16, 0 + mfsr r17, 1 + mfsr r18, 2 + mfsr r19, 3 + mfsr r20, 4 + mfsr r21, 5 + mfsr r22, 6 + mfsr r23, 7 + mfsr r24, 8 + mfsr r25, 9 + mfsr r26, 0xa + mfsr r27, 0xb + mfsr r28, 0xc + mfsr r29, 0xd + mfsr r30, 0xe + mfsr r31, 0xf + stmw r16, 0x1a8(r2) + mftb r10, 0x10c + mftbu r11 + mfspr r12, 0x3f0 + mfspr r13, 0x3f1 + mfspr r14, 0x1b + mfpvr r15 + mfibatu r16, 0 + mfibatl r17, 0 + mfibatu r18, 1 + mfibatl r19, 1 + mfibatu r20, 2 + mfibatl r21, 2 + mfibatu r22, 3 + mfibatl r23, 3 + mfdbatu r24, 0 + mfdbatl r25, 0 + mfdbatu r26, 1 + mfdbatl r27, 1 + mfdbatu r28, 2 + mfdbatl r29, 2 + mfdbatu r30, 3 + mfdbatl r31, 3 + stmw r10, 0x1e8(r2) + mfspr r22, 0x19 + mfdar r23 + mfdsisr r24 + mfspr r25, 0x110 + mfspr r26, 0x111 + mfspr r27, 0x112 + mfspr r28, 0x113 + li r29, 0 + mfspr r30, 0x3f2 + mfspr r31, 0x11a + stmw r22, 0x25c(r2) + mfspr r20, 0x390 + mfspr r21, 0x391 + mfspr r22, 0x392 + mfspr r23, 0x393 + mfspr r24, 0x394 + mfspr r25, 0x395 + mfspr r26, 0x396 + mfspr r27, 0x397 + mfspr r28, 0x398 + mfspr r29, 0x399 + mfspr r30, 0x39a + mfspr r31, 0x39b + stmw r20, 0x2fc(r2) + b lbl_80371340 + mfspr r16, 0x3a0 + mfspr r17, 0x3a7 + mfspr r18, 0x3a8 + mfspr r19, 0x3a9 + mfspr r20, 0x3aa + mfspr r21, 0x3ab + mfspr r22, 0x3ac + mfspr r23, 0x3ad + mfspr r24, 0x3ae + mfspr r25, 0x3af + mfspr r26, 0x3b0 + mfspr r27, 0x3b7 + mfspr r28, 0x3bf + mfspr r29, 0x3f6 + mfspr r30, 0x3f7 + mfspr r31, 0x3ff + stmw r16, 0x2b8(r2) + +lbl_80371340: + mfspr r19, 0x3f5 + mfspr r20, 0x3b9 + mfspr r21, 0x3ba + mfspr r22, 0x3bd + mfspr r23, 0x3be + mfspr r24, 0x3bb + mfspr r25, 0x3b8 + mfspr r26, 0x3bc + mfspr r27, 0x3fc + mfspr r28, 0x3fd + mfspr r29, 0x3fe + mfspr r30, 0x3FB + mfspr r31, 0x3f9 + stmw r19, 0x284(r2) + b end + + mfspr r25, 0x3d0 + mfspr r26, 0x3d1 + mfspr r27, 0x3d2 + mfspr r28, 0x3d3 + mfspr r29, 0x3D4 + mfspr r30, 0x3D5 + mfspr r31, 0x3d6 + stmw r25, 0x240(r2) + mfspr r31, 0x16 + stw r31, 0x278(r2) +end: + blr +#endif // clang-format on +} + +asm void TRKRestoreExtended1Block() +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + lis r2, gTRKCPUState@h /* 0x8044F338@h */ + ori r2, r2, gTRKCPUState@l /* 0x8044F338@l */ + lis r5, gTRKRestoreFlags@h /* 0x803D3238@h */ + ori r5, r5, gTRKRestoreFlags@l /* 0x803D3238@l */ + lbz r3, 0(r5) + lbz r6, 1(r5) + li r0, 0 + stb r0, 0(r5) + stb r0, 1(r5) + cmpwi r3, 0 + beq lbl_803713E4 + lwz r24, 0x1e8(r2) + lwz r25, 0x1ec(r2) + mttbl r24 + mttbu r25 +lbl_803713E4: + lmw r20, 0x2fc(r2) + mtspr 0x390, r20 + mtspr 0x391, r21 + mtspr 0x392, r22 + mtspr 0x393, r23 + mtspr 0x394, r24 + mtspr 0x395, r25 + mtspr 0x396, r26 + mtspr 0x397, r27 + mtspr 0x398, r28 + mtspr 0x39a, r30 + mtspr 0x39b, r31 + b lbl_80371430 + lmw r26, 0x2e0(r2) + mtspr 0x3b0, r26 + mtspr 0x3b7, r27 + mtspr 0x3f6, r29 + mtspr 0x3f7, r30 + mtspr 0x3ff, r31 +lbl_80371430: + lmw r19, 0x284(r2) + mtspr 0x3f5, r19 + mtspr 0x3b9, r20 + mtspr 0x3ba, r21 + mtspr 0x3bd, r22 + mtspr 0x3be, r23 + mtspr 0x3bb, r24 + mtspr 0x3b8, r25 + mtspr 0x3bc, r26 + mtspr 0x3fc, r27 + mtspr 0x3fd, r28 + mtspr 0x3fe, r29 + mtspr 0x3FB, r30 + mtspr 0x3f9, r31 + b lbl_8037149C + cmpwi r6, 0 + beq lbl_8037147C + lwz r26, 0x278(r2) + mtspr 0x16, r26 +lbl_8037147C: + lmw r25, 0x240(r2) + mtspr 0x3d0, r25 + mtspr 0x3d1, r26 + mtspr 0x3d2, r27 + mtspr 0x3d3, r28 + mtspr 0x3D4, r29 + mtspr 0x3D5, r30 + mtspr 0x3d6, r31 +lbl_8037149C: + lmw r16, 0x1a8(r2) + mtsr 0, r16 + mtsr 1, r17 + mtsr 2, r18 + mtsr 3, r19 + mtsr 4, r20 + mtsr 5, r21 + mtsr 6, r22 + mtsr 7, r23 + mtsr 8, r24 + mtsr 9, r25 + mtsr 0xa, r26 + mtsr 0xb, r27 + mtsr 0xc, r28 + mtsr 0xd, r29 + mtsr 0xe, r30 + mtsr 0xf, r31 + lmw r12, 0x1f0(r2) + mtspr 0x3f0, r12 + mtspr 0x3f1, r13 + mtspr 0x1b, r14 + mtspr 0x11f, r15 + mtibatu 0, r16 + mtibatl 0, r17 + mtibatu 1, r18 + mtibatl 1, r19 + mtibatu 2, r20 + mtibatl 2, r21 + mtibatu 3, r22 + mtibatl 3, r23 + mtdbatu 0, r24 + mtdbatl 0, r25 + mtdbatu 1, r26 + mtdbatl 1, r27 + mtdbatu 2, r28 + mtdbatl 2, r29 + mtdbatu 3, r30 + mtdbatl 3, r31 + lmw r22, 0x25c(r2) + mtspr 0x19, r22 + mtdar r23 + mtdsisr r24 + mtspr 0x110, r25 + mtspr 0x111, r26 + mtspr 0x112, r27 + mtspr 0x113, r28 + mtspr 0x3f2, r30 + mtspr 0x11a, r31 + blr +#endif // clang-format on +} + +u32 TRKTargetCPUMinorType(void) { return 0x54; } diff --git a/src/TRK_MINNOW_DOLPHIN/msg.c b/src/TRK_MINNOW_DOLPHIN/msg.c new file mode 100644 index 00000000..0ae376eb --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/msg.c @@ -0,0 +1,9 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +DSError TRKMessageSend(TRK_Msg* msg) +{ + DSError write_err = TRKWriteUARTN(&msg->m_msg, msg->m_msgLength); + return DS_NoError; +} diff --git a/src/TRK_MINNOW_DOLPHIN/msgbuf.c b/src/TRK_MINNOW_DOLPHIN/msgbuf.c new file mode 100644 index 00000000..8eb7031c --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/msgbuf.c @@ -0,0 +1,359 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h" +#include "stddef.h" + +TRKBuffer gTRKMsgBufs[3]; + +void TRKSetBufferUsed(TRKBuffer* msg, BOOL state) { msg->isInUse = state; } + +DSError TRKInitializeMessageBuffers(void) +{ + int i; + for (i = 0; i < 3; i++) { + TRKInitializeMutex(&gTRKMsgBufs[i]); + TRKAcquireMutex(&gTRKMsgBufs[i]); + TRKSetBufferUsed(&gTRKMsgBufs[i], FALSE); + TRKReleaseMutex(&gTRKMsgBufs[i]); + } + + return DS_NoError; +} + +DSError TRKGetFreeBuffer(int* msgID, TRKBuffer** outMsg) +{ + TRKBuffer* buf; + DSError error = DS_NoMessageBufferAvailable; + int i; + + *outMsg = NULL; + + for (i = 0; i < 3; i++) { + buf = TRKGetBuffer(i); + + TRKAcquireMutex(buf); + if (!buf->isInUse) { + TRKResetBuffer(buf, TRUE); + TRKSetBufferUsed(buf, TRUE); + error = DS_NoError; + *outMsg = buf; + *msgID = i; + i = 3; // why not break? weird choice + } + TRKReleaseMutex(buf); + } + + return error; +} + +void* TRKGetBuffer(int idx) +{ + TRKBuffer* buf = NULL; + if (idx >= 0 && idx < 3) { + buf = &gTRKMsgBufs[idx]; + } + + return buf; +} + +void TRKReleaseBuffer(int idx) +{ + TRKBuffer* msg; + if (idx != -1 && idx >= 0 && idx < 3) { + msg = &gTRKMsgBufs[idx]; + TRKAcquireMutex(msg); + TRKSetBufferUsed(msg, FALSE); + TRKReleaseMutex(msg); + } +} + +void TRKResetBuffer(TRKBuffer* msg, BOOL keepData) +{ + msg->length = 0; + msg->position = 0; + + if (!keepData) { + TRK_memset(msg->data, 0, TRKMSGBUF_SIZE); + } +} + +DSError TRKSetBufferPosition(TRKBuffer* msg, u32 pos) +{ + DSError error = DS_NoError; + + if (pos > 0x880) { + error = DS_MessageBufferOverflow; + } else { + msg->position = pos; + // If the new position is past the current length, + // update the length + if (pos > msg->length) { + msg->length = pos; + } + } + + return error; +} + +DSError TRKAppendBuffer(TRKBuffer* msg, const void* data, size_t length) +{ + DSError error = DS_NoError; // r31 + u32 bytesLeft; + + // Return if no bytes to append + if (length == 0) { + return DS_NoError; + } + + bytesLeft = 0x880 - msg->position; + + // If there isn't enough space left in the buffer, change the number + // of bytes to append to the remaning number of bytes + if (bytesLeft < length) { + error = DS_MessageBufferOverflow; + length = bytesLeft; + } + + if (length == 1) { + // If the length of bytes to append is 1, just copy the byte over + msg->data[msg->position] = ((u8*)data)[0]; + } else { + // Otherwise, use memcpy + TRK_memcpy(msg->data + msg->position, data, length); + } + + // Update the position and length + msg->position += length; + msg->length = msg->position; + + return error; +} + +DSError TRKReadBuffer(TRKBuffer* msg, void* data, size_t length) +{ + DSError error = DS_NoError; + unsigned int + bytesLeft; // this has to be unsigned int not u32 to match lmfao. + + // Return if no bytes to read + if (length == 0) { + return DS_NoError; + } + + bytesLeft = msg->length - msg->position; + + // If the number of bytes to read exceeds the buffer length, change + // the length to the remaining number of bytes + if (length > bytesLeft) { + error = DS_MessageBufferReadError; + length = bytesLeft; + } + + TRK_memcpy(data, msg->data + msg->position, length); + msg->position += length; + return error; +} + +DSError TRKAppendBuffer1_ui16(TRKBuffer* buffer, const u16 data) +{ + u8* bigEndianData; + u8* byteData; + u8 swapBuffer[sizeof(data)]; + + if (gTRKBigEndian) { + bigEndianData = (u8*)&data; + } else { + byteData = (u8*)&data; + bigEndianData = swapBuffer; + + bigEndianData[0] = byteData[1]; + bigEndianData[1] = byteData[0]; + } + + return TRKAppendBuffer(buffer, (const void*)bigEndianData, sizeof(data)); +} + +DSError TRKAppendBuffer1_ui32(TRKBuffer* buffer, const u32 data) +{ + u8* bigEndianData; + u8* byteData; + u8 swapBuffer[sizeof(data)]; + + if (gTRKBigEndian) { + bigEndianData = (u8*)&data; + } else { + byteData = (u8*)&data; + bigEndianData = swapBuffer; + + bigEndianData[0] = byteData[3]; + bigEndianData[1] = byteData[2]; + bigEndianData[2] = byteData[1]; + bigEndianData[3] = byteData[0]; + } + + return TRKAppendBuffer(buffer, (const void*)bigEndianData, sizeof(data)); +} + +DSError TRKAppendBuffer1_ui64(TRKBuffer* buffer, const u64 data) +{ + u8* bigEndianData; + u8* byteData; + u8 swapBuffer[sizeof(data)]; + if (gTRKBigEndian) { + bigEndianData = (u8*)&data; + } else { + byteData = (u8*)&data; + bigEndianData = swapBuffer; + + bigEndianData[0] = byteData[7]; + bigEndianData[1] = byteData[6]; + bigEndianData[2] = byteData[5]; + bigEndianData[3] = byteData[4]; + bigEndianData[4] = byteData[3]; + bigEndianData[5] = byteData[2]; + bigEndianData[6] = byteData[1]; + bigEndianData[7] = byteData[0]; + } + + return TRKAppendBuffer(buffer, (const void*)bigEndianData, sizeof(data)); +} + +DSError TRKAppendBuffer_ui8(TRKBuffer* buffer, const u8* data, int count) +{ + DSError err; + int i; + + for (i = 0, err = DS_NoError; err == DS_NoError && i < count; i++) { + err = TRKAppendBuffer1_ui8(buffer, data[i]); + } + + return err; +} + +DSError TRKAppendBuffer_ui32(TRKBuffer* buffer, const u32* data, int count) +{ + DSError err; + int i; + + for (i = 0, err = DS_NoError; err == DS_NoError && i < count; i++) { + err = TRKAppendBuffer1_ui32(buffer, data[i]); + } + + return err; +} + +DSError TRKReadBuffer1_ui8(TRKBuffer* buffer, u8* data) +{ + return TRKReadBuffer(buffer, (void*)data, 1); +} + +DSError TRKReadBuffer1_ui16(TRKBuffer* buffer, u16* data) +{ + DSError err; + + u8* bigEndianData; + u8* byteData; + u8 swapBuffer[sizeof(data)]; + + if (gTRKBigEndian) { + bigEndianData = (u8*)data; + } else { + bigEndianData = swapBuffer; + } + + err = TRKReadBuffer(buffer, (void*)bigEndianData, sizeof(*data)); + + if (!gTRKBigEndian && err == DS_NoError) { + byteData = (u8*)data; + + byteData[0] = bigEndianData[1]; + byteData[1] = bigEndianData[0]; + } + + return err; +} + +DSError TRKReadBuffer1_ui32(TRKBuffer* buffer, u32* data) +{ + DSError err; + + u8* bigEndianData; + u8* byteData; + u8 swapBuffer[sizeof(data)]; + + if (gTRKBigEndian) { + bigEndianData = (u8*)data; + } else { + bigEndianData = swapBuffer; + } + + err = TRKReadBuffer(buffer, (void*)bigEndianData, sizeof(*data)); + + if (!gTRKBigEndian && err == DS_NoError) { + byteData = (u8*)data; + + byteData[0] = bigEndianData[3]; + byteData[1] = bigEndianData[2]; + byteData[2] = bigEndianData[1]; + byteData[3] = bigEndianData[0]; + } + + return err; +} + +DSError TRKReadBuffer1_ui64(TRKBuffer* buffer, u64* data) +{ + DSError err; + + u8* bigEndianData; + u8* byteData; + u8 swapBuffer[sizeof(data)]; + + if (gTRKBigEndian) { + bigEndianData = (u8*)data; + } else { + bigEndianData = swapBuffer; + } + + err = TRKReadBuffer(buffer, (void*)bigEndianData, sizeof(*data)); + + if (!gTRKBigEndian && err == 0) { + byteData = (u8*)data; + + byteData[0] = bigEndianData[7]; + byteData[1] = bigEndianData[6]; + byteData[2] = bigEndianData[5]; + byteData[3] = bigEndianData[4]; + byteData[4] = bigEndianData[3]; + byteData[5] = bigEndianData[2]; + byteData[6] = bigEndianData[1]; + byteData[7] = bigEndianData[0]; + } + + return err; +} + +DSError TRKReadBuffer_ui8(TRKBuffer* buffer, u8* data, int count) +{ + DSError err; + int i; + + for (i = 0, err = DS_NoError; err == DS_NoError && i < count; i++) { + err = TRKReadBuffer1_ui8(buffer, &(data[i])); + } + + return err; +} + +DSError TRKReadBuffer_ui32(TRKBuffer* buffer, u32* data, int count) +{ + DSError err; + s32 i; + + for (i = 0, err = DS_NoError; err == DS_NoError && i < count; i++) { + err = TRKReadBuffer1_ui32(buffer, &(data[i])); + } + + return err; +} diff --git a/src/TRK_MINNOW_DOLPHIN/msghndlr.c b/src/TRK_MINNOW_DOLPHIN/msghndlr.c new file mode 100644 index 00000000..35c91822 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/msghndlr.c @@ -0,0 +1,689 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +BOOL IsTRKConnected; + +BOOL GetTRKConnected() +{ + return IsTRKConnected; +} + +void SetTRKConnected(BOOL connected) +{ + IsTRKConnected = connected; +} + +static void TRKMessageIntoReply(TRKBuffer* buffer, u8 ackCmd, + DSReplyError errSentInAck) +{ + TRKResetBuffer(buffer, 1); + + TRKAppendBuffer1_ui8(buffer, ackCmd); + TRKAppendBuffer1_ui8(buffer, errSentInAck); +} + +DSError TRKSendACK(TRKBuffer* buffer) +{ + DSError err; + int ackTries; + + ackTries = 3; + do { + err = TRKMessageSend((TRK_Msg*)buffer); + --ackTries; + } while (err != DS_NoError && ackTries > 0); + + return err; +} + +DSError TRKStandardACK(TRKBuffer* buffer, MessageCommandID commandID, + DSReplyError replyError) +{ + TRKMessageIntoReply(buffer, commandID, replyError); + TRKSendACK(buffer); + return; +} + +DSError TRKDoUnsupported(TRKBuffer* buffer) +{ + return TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_UnsupportedCommandError); +} + +DSError TRKDoConnect(TRKBuffer* buffer) +{ + SetTRKConnected(TRUE); + return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError); +} + +DSError TRKDoDisconnect(TRKBuffer* buffer) +{ + DSError error = DS_NoError; + TRKEvent event; + SetTRKConnected(FALSE); + + if ((error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError)) + == DS_NoError) { + TRKConstructEvent(&event, 1); + TRKPostEvent(&event); + } + return error; +} + +DSError TRKDoReset(TRKBuffer* buffer) +{ + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + __TRK_reset(); + return DS_NoError; +} + +DSError TRKDoVersions(TRKBuffer* buffer) +{ + DSError error; + DSVersions versions; + + if (buffer->length != 1) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + } else { + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + error = TRKTargetVersions(&versions); + + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, versions.kernelMajor); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, versions.kernelMinor); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, versions.protocolMajor); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, versions.protocolMinor); + + if (error != DS_NoError) + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_CWDSError); + else + error = TRKSendACK(buffer); + } + return error; +} + +DSError TRKDoSupportMask(TRKBuffer* buffer) +{ + DSError error; + u8 mask[32]; + + if (buffer->length != 1) { + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + } else { + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + error = TRKTargetSupportMask(mask); + + if (error == DS_NoError) + error = TRKAppendBuffer(buffer, mask, 32); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, 2); + + if (error != DS_NoError) + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_CWDSError); + else + TRKSendACK(buffer); + } +} + +DSError TRKDoCPUType(TRKBuffer* buffer) +{ + DSError error; + DSCPUType cputype; + + if (buffer->length != 1) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return error; + } + + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + + error = TRKTargetCPUType(&cputype); + + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, cputype.cpuMajor); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, cputype.cpuMinor); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, cputype.bigEndian); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, cputype.defaultTypeSize); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, cputype.fpTypeSize); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, cputype.extended1TypeSize); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, cputype.extended2TypeSize); + + if (error != DS_NoError) + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_CWDSError); + else + error = TRKSendACK(buffer); + + return error; +} + +DSError TRKDoReadMemory(TRKBuffer* buffer) +{ + DSError error; + DSReplyError replyError; + u8 tempBuf[0x800]; + u32 length; + u32 msg_start; + u16 msg_length; + u8 msg_options; + u8 msg_command; + + if (buffer->length != 8) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return error; + } + + TRKSetBufferPosition(buffer, DSREPLY_NoError); + error = TRKReadBuffer1_ui8(buffer, &msg_command); + if (error == DS_NoError) + error = TRKReadBuffer1_ui8(buffer, &msg_options); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui16(buffer, &msg_length); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui32(buffer, &msg_start); + + if (msg_options & 2) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_UnsupportedOptionError); + return error; + } + + if (msg_length > 0x800) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + return error; + } + + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + + if (error == DS_NoError) { + length = (u32)msg_length; + error = TRKTargetAccessMemory( + tempBuf, msg_start, &length, + (msg_options & 8) ? MEMACCESS_UserMemory : MEMACCESS_DebuggerMemory, + 1); + msg_length = (u16)length; + if (error == DS_NoError) + error = TRKAppendBuffer1_ui16(buffer, msg_length); + if (error == DS_NoError) + error = TRKAppendBuffer(buffer, tempBuf, length); + } + + if (error != DS_NoError) { + switch (error) { + case DS_CWDSException: + replyError = DSREPLY_CWDSException; + break; + case DS_InvalidMemory: + replyError = DSREPLY_InvalidMemoryRange; + break; + case DS_InvalidProcessID: + replyError = DSREPLY_InvalidProcessID; + break; + case DS_InvalidThreadID: + replyError = DSREPLY_InvalidThreadID; + break; + case DS_OSError: + replyError = DSREPLY_OSError; + break; + default: + replyError = DSREPLY_CWDSError; + break; + } + error = TRKStandardACK(buffer, DSMSG_ReplyACK, replyError); + } else { + error = TRKSendACK(buffer); + } + + return error; +} + +DSError TRKDoWriteMemory(TRKBuffer* buffer) +{ + DSError error; + DSReplyError replyError; + u8 tmpBuffer[0x800]; + u32 length; + u32 msg_start; + u16 msg_length; + u8 msg_options; + u8 msg_command; + + if (buffer->length <= 8) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return error; + } + + TRKSetBufferPosition(buffer, DSREPLY_NoError); + error = TRKReadBuffer1_ui8(buffer, &msg_command); + if (error == DS_NoError) + error = TRKReadBuffer1_ui8(buffer, &msg_options); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui16(buffer, &msg_length); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui32(buffer, &msg_start); + + if (msg_options & 2) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_UnsupportedOptionError); + return error; + } + + if ((buffer->length != msg_length + 8) || (msg_length > 0x800)) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + } else { + if (error == DS_NoError) { + length = (u32)msg_length; + error = TRKReadBuffer(buffer, tmpBuffer, length); + if (error == DS_NoError) { + error = TRKTargetAccessMemory(tmpBuffer, msg_start, &length, + (msg_options & 8) + ? MEMACCESS_UserMemory + : MEMACCESS_DebuggerMemory, + FALSE); + } + msg_length = (u16)length; + } + + if (error == DS_NoError) + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + + if (error == DS_NoError) + error = TRKAppendBuffer1_ui16(buffer, msg_length); + + if (error != DS_NoError) { + switch (error) { + case DS_CWDSException: + replyError = DSREPLY_CWDSException; + break; + case DS_InvalidMemory: + replyError = DSREPLY_InvalidMemoryRange; + break; + case DS_InvalidProcessID: + replyError = DSREPLY_InvalidProcessID; + break; + case DS_InvalidThreadID: + replyError = DSREPLY_InvalidThreadID; + break; + case DS_OSError: + replyError = DSREPLY_OSError; + break; + default: + replyError = DSREPLY_CWDSError; + break; + } + error = TRKStandardACK(buffer, DSMSG_ReplyACK, replyError); + } else { + error = TRKSendACK(buffer); + } + } + + return error; +} + +DSError TRKDoReadRegisters(TRKBuffer* buffer) +{ + DSError error; + DSReplyError replyError; + DSMessageRegisterOptions options; + u32 registerDataLength; + u16 msg_lastRegister; + u16 msg_firstRegister; + u8 msg_options; + u8 msg_command; + + if (buffer->length != 6) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return error; + } + TRKSetBufferPosition(buffer, DSREPLY_NoError); + error = TRKReadBuffer1_ui8(buffer, &msg_command); + if (error == DS_NoError) + error = TRKReadBuffer1_ui8(buffer, &msg_options); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui16(buffer, &msg_firstRegister); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui16(buffer, &msg_lastRegister); + + if (msg_firstRegister > msg_lastRegister) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_InvalidRegisterRange); + return error; + } + + if (error == DS_NoError) + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + + options = (DSMessageRegisterOptions)msg_options; + switch (options) { + case DSREG_Default: + error = TRKTargetAccessDefault(msg_firstRegister, msg_lastRegister, + buffer, ®isterDataLength, TRUE); + break; + case DSREG_FP: + error = TRKTargetAccessFP(msg_firstRegister, msg_lastRegister, buffer, + ®isterDataLength, TRUE); + break; + case DSREG_Extended1: + error = TRKTargetAccessExtended1(msg_firstRegister, msg_lastRegister, + buffer, ®isterDataLength, TRUE); + break; + case DSREG_Extended2: + error = TRKTargetAccessExtended2(msg_firstRegister, msg_lastRegister, + buffer, ®isterDataLength, TRUE); + break; + default: + error = DS_UnsupportedError; + break; + } + + if (error != DS_NoError) { + switch (error) { + case DS_UnsupportedError: + replyError = DSREPLY_UnsupportedOptionError; + break; + case DS_InvalidRegister: + replyError = DSREPLY_InvalidRegisterRange; + break; + case DS_CWDSException: + replyError = DSREPLY_CWDSException; + break; + case DS_InvalidProcessID: + replyError = DSREPLY_InvalidProcessID; + break; + case DS_InvalidThreadID: + replyError = DSREPLY_InvalidThreadID; + break; + case DS_OSError: + replyError = DSREPLY_OSError; + break; + default: + replyError = DSREPLY_CWDSError; + } + + error = TRKStandardACK(buffer, DSMSG_ReplyACK, replyError); + } else { + error = TRKSendACK(buffer); + } + + return error; +} + +DSError TRKDoWriteRegisters(TRKBuffer* buffer) +{ + DSError error; + DSReplyError replyError; + DSMessageRegisterOptions options; + u32 registerDataLength; + u16 msg_lastRegister; + u16 msg_firstRegister; + u8 msg_options; + u8 msg_command; + + if (buffer->length <= 6) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return error; + } + TRKSetBufferPosition(buffer, DSREPLY_NoError); + error = TRKReadBuffer1_ui8(buffer, &msg_command); + if (error == DS_NoError) + error = TRKReadBuffer1_ui8(buffer, &msg_options); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui16(buffer, &msg_firstRegister); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui16(buffer, &msg_lastRegister); + + if (msg_firstRegister > msg_lastRegister) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_InvalidRegisterRange); + return error; + } + + options = (DSMessageRegisterOptions)msg_options; + switch (options) { + case DSREG_Default: + error = TRKTargetAccessDefault(msg_firstRegister, msg_lastRegister, + buffer, ®isterDataLength, FALSE); + break; + case DSREG_FP: + error = TRKTargetAccessFP(msg_firstRegister, msg_lastRegister, buffer, + ®isterDataLength, FALSE); + break; + case DSREG_Extended1: + error = TRKTargetAccessExtended1(msg_firstRegister, msg_lastRegister, + buffer, ®isterDataLength, FALSE); + break; + case DSREG_Extended2: + error = TRKTargetAccessExtended2(msg_firstRegister, msg_lastRegister, + buffer, ®isterDataLength, FALSE); + break; + default: + error = DS_UnsupportedError; + break; + } + + if (error == DS_NoError) + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + + if (error != DS_NoError) { + switch (error) { + case DS_UnsupportedError: + replyError = DSREPLY_UnsupportedOptionError; + break; + case DS_InvalidRegister: + replyError = DSREPLY_InvalidRegisterRange; + break; + case DS_MessageBufferReadError: + replyError = DSREPLY_PacketSizeError; + break; + case DS_CWDSException: + replyError = DSREPLY_CWDSException; + break; + case DS_InvalidProcessID: + replyError = DSREPLY_InvalidProcessID; + break; + case DS_InvalidThreadID: + replyError = DSREPLY_InvalidThreadID; + break; + case DS_OSError: + replyError = DSREPLY_OSError; + break; + default: + replyError = DSREPLY_CWDSError; + } + + error = TRKStandardACK(buffer, DSMSG_ReplyACK, replyError); + } else { + error = TRKSendACK(buffer); + } + + return error; +} + +DSError TRKDoFlushCache(TRKBuffer* buffer) +{ + DSError error; + DSReplyError replyErr; + u32 msg_end; + u32 msg_start; + u8 msg_options; + u8 msg_command; + + if (buffer->length != 10) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return error; + } + + TRKSetBufferPosition(buffer, DSREPLY_NoError); + error = TRKReadBuffer1_ui8(buffer, &msg_command); + if (error == DS_NoError) + error = TRKReadBuffer1_ui8(buffer, &msg_options); + if (error == DS_NoError) + error = TRKReadBuffer1_ui32(buffer, &msg_start); + if (error == DS_NoError) + error = TRKReadBuffer1_ui32(buffer, &msg_end); + + if (msg_start > msg_end) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_InvalidMemoryRange); + return error; + } + + if (error == DS_NoError) + error = TRKTargetFlushCache(msg_options, (void*)msg_start, + (void*)msg_end); + + if (error == DS_NoError) + TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + + if (error != DS_NoError) { + switch (error) { + case DS_UnsupportedError: + replyErr = DSREPLY_UnsupportedOptionError; + break; + default: + replyErr = DSREPLY_CWDSError; + break; + } + + error = TRKStandardACK(buffer, DSMSG_ReplyACK, replyErr); + } else { + error = TRKSendACK(buffer); + } + + return error; +} + +DSError TRKDoContinue(TRKBuffer* buffer) +{ + DSError error; + + error = TRKTargetStopped(); + if (error == DS_NoError) { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NotStopped); + return error; + } + + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + if (error == DS_NoError) + error = TRKTargetContinue(); + + return error; +} + +DSError TRKDoStep(TRKBuffer* buffer) +{ + DSError error; + u8 msg_command; + u8 msg_options; + u8 msg_count; + u32 msg_rangeStart; + u32 msg_rangeEnd; + u32 pc; + + if (buffer->length < 3) + return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + + TRKSetBufferPosition(buffer, DSREPLY_NoError); + + error = TRKReadBuffer1_ui8(buffer, &msg_command); + if (error == DS_NoError) + error = TRKReadBuffer1_ui8(buffer, &msg_options); + + switch (msg_options) { + case DSSTEP_IntoCount: + case DSSTEP_OverCount: + if (error == DS_NoError) + TRKReadBuffer1_ui8(buffer, &msg_count); + if (msg_count >= 1) { + break; + } + return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + case DSSTEP_IntoRange: + case DSSTEP_OverRange: + if (buffer->length != 10) + return TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_PacketSizeError); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui32(buffer, &msg_rangeStart); + if (error == DS_NoError) + error = TRKReadBuffer1_ui32(buffer, &msg_rangeEnd); + + pc = TRKTargetGetPC(); + if (pc >= msg_rangeStart && pc <= msg_rangeEnd) { + break; + } + return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + default: + return TRKStandardACK(buffer, DSMSG_ReplyACK, + DSREPLY_UnsupportedOptionError); + } + + if (!TRKTargetStopped()) { + return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NotStopped); + } else { + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + if (error == DS_NoError) + switch (msg_options) { + case DSSTEP_IntoCount: + case DSSTEP_OverCount: + error = TRKTargetSingleStep(msg_count, + (msg_options == DSSTEP_OverCount)); + break; + case DSSTEP_IntoRange: + case DSSTEP_OverRange: + error = TRKTargetStepOutOfRange( + msg_rangeStart, msg_rangeEnd, + (msg_options == DSSTEP_OverRange)); + break; + } + + return error; + } +} + +DSError TRKDoStop(TRKBuffer* b) +{ + DSReplyError replyError; + + switch (TRKTargetStop()) { + case DS_NoError: + replyError = DSREPLY_NoError; + break; + case DS_InvalidProcessID: + replyError = DSREPLY_InvalidProcessID; + break; + case DS_InvalidThreadID: + replyError = DSREPLY_InvalidThreadID; + break; + case DS_OSError: + replyError = DSREPLY_OSError; + break; + default: + replyError = DSREPLY_Error; + break; + } + + return TRKStandardACK(b, DSMSG_ReplyACK, replyError); +} diff --git a/src/TRK_MINNOW_DOLPHIN/mutex_TRK.c b/src/TRK_MINNOW_DOLPHIN/mutex_TRK.c new file mode 100644 index 00000000..37e09501 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/mutex_TRK.c @@ -0,0 +1,7 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h" + +DSError TRKInitializeMutex(void*) { return DS_NoError; } + +DSError TRKAcquireMutex(void*) { return DS_NoError; } + +DSError TRKReleaseMutex(void*) { return DS_NoError; } diff --git a/src/TRK_MINNOW_DOLPHIN/notify.c b/src/TRK_MINNOW_DOLPHIN/notify.c new file mode 100644 index 00000000..7dce4537 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/notify.c @@ -0,0 +1,40 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +DSError TRKDoNotifyStopped(MessageCommandID cmd) +{ + DSError err; + int reqIdx; + int bufIdx; + TRKBuffer* msg; + + err = TRKGetFreeBuffer(&bufIdx, &msg); + if (err == DS_NoError) { + if (msg->position >= 0x880) { + err = DS_MessageBufferOverflow; + } else { + msg->data[msg->position++] = cmd; + ++msg->length; + err = 0; + } + + if (err == DS_NoError) { + if (cmd == DSMSG_NotifyStopped) { + TRKTargetAddStopInfo(msg); + } else { + TRKTargetAddExceptionInfo(msg); + } + } + + err = TRKRequestSend(msg, &reqIdx, 2, 3, 1); + if (err == DS_NoError) { + TRKReleaseBuffer(reqIdx); + } + TRKReleaseBuffer(bufIdx); + } + + return err; +} diff --git a/src/TRK_MINNOW_DOLPHIN/nubevent.c b/src/TRK_MINNOW_DOLPHIN/nubevent.c new file mode 100644 index 00000000..a35a43cd --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/nubevent.c @@ -0,0 +1,72 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mem_TRK.h" + +TRKEventQueue gTRKEventQueue; + +DSError TRKInitializeEventQueue() +{ + TRKInitializeMutex(&gTRKEventQueue); + TRKAcquireMutex(&gTRKEventQueue); + gTRKEventQueue.count = 0; + gTRKEventQueue.next = 0; + gTRKEventQueue.eventID = 0x100; + TRKReleaseMutex(&gTRKEventQueue); + return DS_NoError; +} + +void TRKCopyEvent(TRKEvent* dstEvent, const TRKEvent* srcEvent) +{ + TRK_memcpy(dstEvent, srcEvent, sizeof(TRKEvent)); +} + +BOOL TRKGetNextEvent(TRKEvent* event) +{ + BOOL status = 0; + TRKAcquireMutex(&gTRKEventQueue); + if (0 < gTRKEventQueue.count) { + TRKCopyEvent(event, &gTRKEventQueue.events[gTRKEventQueue.next]); + gTRKEventQueue.count--; + gTRKEventQueue.next++; + if (gTRKEventQueue.next == 2) + gTRKEventQueue.next = 0; + + status = 1; + } + TRKReleaseMutex(&gTRKEventQueue); + return status; +} + +DSError TRKPostEvent(TRKEvent* event) +{ + DSError ret = DS_NoError; + int nextEventID; + + TRKAcquireMutex(&gTRKEventQueue); + + if (gTRKEventQueue.count == 2) { + ret = DS_EventQueueFull; + } else { + nextEventID = (gTRKEventQueue.next + gTRKEventQueue.count) % 2; + TRKCopyEvent(&gTRKEventQueue.events[nextEventID], event); + gTRKEventQueue.events[nextEventID].eventID = gTRKEventQueue.eventID; + gTRKEventQueue.eventID++; + if (gTRKEventQueue.eventID < 0x100) + gTRKEventQueue.eventID = 0x100; + + gTRKEventQueue.count++; + } + + TRKReleaseMutex(&gTRKEventQueue); + return ret; +} + +void TRKConstructEvent(TRKEvent* event, NubEventType eventType) +{ + event->eventType = eventType; + event->eventID = 0; + event->msgBufID = -1; +} + +void TRKDestructEvent(TRKEvent* event) { TRKReleaseBuffer(event->msgBufID); } diff --git a/src/TRK_MINNOW_DOLPHIN/nubinit.c b/src/TRK_MINNOW_DOLPHIN/nubinit.c new file mode 100644 index 00000000..fc08e85e --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/nubinit.c @@ -0,0 +1,80 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" + +BOOL gTRKBigEndian; + +BOOL TRKInitializeEndian(void); + +DSError TRKInitializeNub(void) +{ + DSError ret; + DSError uartErr; + + ret = TRKInitializeEndian(); + + if (ret == DS_NoError) + usr_put_initialize(); + if (ret == DS_NoError) + ret = TRKInitializeEventQueue(); + if (ret == DS_NoError) + ret = TRKInitializeMessageBuffers(); + if (ret == DS_NoError) + ret = TRKInitializeDispatcher(); + + if (ret == DS_NoError) { + uartErr = TRKInitializeIntDrivenUART(0x0000e100, 1, 0, + (volatile u8**)&gTRKInputPendingPtr); + TRKTargetSetInputPendingPtr(gTRKInputPendingPtr); + if (uartErr != DS_NoError) { + ret = uartErr; + } + } + + if (ret == DS_NoError) + ret = TRKInitializeSerialHandler(); + if (ret == DS_NoError) + ret = TRKInitializeTarget(); + + return ret; +} + +DSError TRKTerminateNub(void) +{ + TRKTerminateSerialHandler(); + return DS_NoError; +} + +void TRKNubWelcome(void) +{ + TRK_board_display("MetroTRK for GAMECUBE v0.10"); + return; +} + +BOOL TRKInitializeEndian(void) +{ + u8 bendian[4]; + BOOL result = FALSE; + gTRKBigEndian = TRUE; + + bendian[0] = 0x12; + bendian[1] = 0x34; + bendian[2] = 0x56; + bendian[3] = 0x78; + + if (*(u32*)bendian == 0x12345678) { + gTRKBigEndian = TRUE; + } else if (*(u32*)bendian == 0x78563412) { + gTRKBigEndian = FALSE; + } else { + result = TRUE; + } + return result; +} diff --git a/src/TRK_MINNOW_DOLPHIN/serpoll.c b/src/TRK_MINNOW_DOLPHIN/serpoll.c new file mode 100644 index 00000000..831644fa --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/serpoll.c @@ -0,0 +1,82 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +static TRKFramingState gTRKFramingState; + +void* gTRKInputPendingPtr; + +MessageBufferID TRKTestForPacket() +{ + int bytes; + int batch; + int err; + TRKBuffer* b; + int id; + + bytes = TRKPollUART(); + if (bytes > 0) { + TRKGetFreeBuffer(&id, &b); + if (bytes > TRKMSGBUF_SIZE) { + for (; bytes > 0; bytes -= batch) { + batch = bytes > TRKMSGBUF_SIZE ? TRKMSGBUF_SIZE : bytes; + TRKReadUARTN(b->data, batch); + } + TRKStandardACK(b, 0xff, 6); + } else { + err = TRKReadUARTN(b->data, bytes); + if (err == 0) { + b->length = bytes; + return id; + } + } + } + if (id != -1) { + TRKReleaseBuffer(id); + } + return -1; +} + +void TRKGetInput(void) +{ + MessageBufferID id; + TRKBuffer* msgBuffer; + u8 command; + + id = TRKTestForPacket(); + if (id == -1) + return; + + msgBuffer = TRKGetBuffer(id); + TRKSetBufferPosition(msgBuffer, 0); + TRKReadBuffer1_ui8(msgBuffer, &command); + if (command < DSMSG_ReplyACK) { + TRKProcessInput(id); + } else { + TRKReleaseBuffer(id); + } +} + +void TRKProcessInput(int bufferIdx) +{ + TRKEvent event; + + TRKConstructEvent(&event, NUBEVENT_Request); + gTRKFramingState.msgBufID = -1; + event.msgBufID = bufferIdx; + TRKPostEvent(&event); +} + +DSError TRKInitializeSerialHandler(void) +{ + gTRKFramingState.msgBufID = -1; + gTRKFramingState.receiveState = DSRECV_Wait; + gTRKFramingState.isEscape = FALSE; + + return DS_NoError; +} + +DSError TRKTerminateSerialHandler(void) { return DS_NoError; } diff --git a/src/TRK_MINNOW_DOLPHIN/support.c b/src/TRK_MINNOW_DOLPHIN/support.c new file mode 100644 index 00000000..0d31ca10 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/support.c @@ -0,0 +1,177 @@ +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" +#include "stddef.h" +#include "string.h" + +DSError TRKSuppAccessFile(u32 file_handle, u8* data, size_t* count, + DSIOResult* io_result, BOOL need_reply, BOOL read) +{ + DSError error; + int replyBufferId; + TRKBuffer* replyBuffer; + int bufferId; + TRKBuffer* buffer; + u32 length; + u32 done; + u8 replyIOResult; + u16 replyLength; + BOOL exit; + + if (data == NULL || *count == 0) { + return DS_ParameterError; + } + + exit = FALSE; + *io_result = DS_IONoError; + done = 0; + error = DS_NoError; + while (!exit && done < *count && error == DS_NoError && *io_result == 0) { + if (*count - done > 0x800) { + length = 0x800; + } else { + length = *count - done; + } + + error = TRKGetFreeBuffer(&bufferId, &buffer); + + if (error == DS_NoError) + error = TRKAppendBuffer1_ui8(buffer, read ? DSMSG_ReadFile + : DSMSG_WriteFile); + + if (error == DS_NoError) + error = TRKAppendBuffer1_ui32(buffer, file_handle); + + if (error == DS_NoError) + error = TRKAppendBuffer1_ui16(buffer, length); + + if (!read && error == DS_NoError) + error = TRKAppendBuffer_ui8(buffer, data + done, length); + + if (error == DS_NoError) { + if (need_reply) { + replyLength = 0; + replyIOResult = 0; + + error = TRKRequestSend(buffer, &replyBufferId, read ? 5 : 5, 3, + !(read && file_handle == 0)); + if (error == DS_NoError) { + replyBuffer = (TRKBuffer*)TRKGetBuffer(replyBufferId); + TRKSetBufferPosition(replyBuffer, 2); + } + + if (error == DS_NoError) + error = TRKReadBuffer1_ui8(replyBuffer, &replyIOResult); + + if (error == DS_NoError) + error = TRKReadBuffer1_ui16(replyBuffer, &replyLength); + + if (read && error == DS_NoError) { + if (replyBuffer->length != replyLength + 5) { + replyLength = replyBuffer->length - 5; + if (replyIOResult == 0) + replyIOResult = 1; + } + + if (replyLength <= length) + error = TRKReadBuffer_ui8(replyBuffer, data + done, + replyLength); + } + + if (replyLength != length) { + if ((!read || replyLength >= length) && replyIOResult == 0) + replyIOResult = 1; + length = replyLength; + exit = TRUE; + } + + *io_result = (DSIOResult)replyIOResult; + TRKReleaseBuffer(replyBufferId); + } else { + error = TRKMessageSend((TRK_Msg*)buffer); + } + } + + TRKReleaseBuffer(bufferId); + done += length; + } + + *count = done; + return error; +} + +DSError TRKRequestSend(TRKBuffer* msgBuf, int* bufferId, u32 p1, u32 p2, int p3) +{ + int error = DS_NoError; + TRKBuffer* buffer; + u32 timer; + int tries; + u8 msg_command; + u8 msg_error; + BOOL badReply = TRUE; + + *bufferId = -1; + + for (tries = p2 + 1; tries != 0 && *bufferId == -1 && error == DS_NoError; + tries--) { + error = TRKMessageSend((TRK_Msg*)msgBuf); + if (error == DS_NoError) { + if (p3) { + timer = 0; + } + + while (TRUE) { + do { + *bufferId = TRKTestForPacket(); + if (*bufferId != -1) + break; + } while (!p3 || ++timer < 79999980); + + if (*bufferId == -1) + break; + + badReply = FALSE; + + buffer = TRKGetBuffer(*bufferId); + TRKSetBufferPosition(buffer, 0); + + if ((error = TRKReadBuffer1_ui8(buffer, &msg_command)) + != DS_NoError) + break; + + if (msg_command >= DSMSG_ReplyACK) + break; + + TRKProcessInput(*bufferId); + *bufferId = -1; + } + + if (*bufferId != -1) { + if (buffer->length < p1) { + badReply = TRUE; + } + if (error == DS_NoError && !badReply) { + error = TRKReadBuffer1_ui8(buffer, &msg_error); + } + if (error == DS_NoError && !badReply) { + if (msg_command != DSMSG_ReplyACK + || msg_error != DSREPLY_NoError) { + badReply = TRUE; + } + } + if (error != DS_NoError || badReply) { + TRKReleaseBuffer(*bufferId); + *bufferId = -1; + } + } + } + } + + if (*bufferId == -1) { + error = DS_Error800; + } + + return error; +} diff --git a/src/TRK_MINNOW_DOLPHIN/targcont.c b/src/TRK_MINNOW_DOLPHIN/targcont.c new file mode 100644 index 00000000..1827ae1a --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/targcont.c @@ -0,0 +1,12 @@ +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" + +DSError TRKTargetContinue(void) +{ + TRKTargetSetStopped(0); + UnreserveEXI2Port(); + TRKSwapAndGo(); + ReserveEXI2Port(); + return 0; +} diff --git a/src/TRK_MINNOW_DOLPHIN/targimpl.c b/src/TRK_MINNOW_DOLPHIN/targimpl.c new file mode 100644 index 00000000..858024a5 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/targimpl.c @@ -0,0 +1,1177 @@ +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/flush_cache.h" +#include "TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.h" +#include "stddef.h" +#include "string.h" + +typedef struct memRange { + u8* start; + u8* end; + BOOL readable; + BOOL writeable; +} memRange; + +const memRange gTRKMemMap[1] = { { (u8*)0, (u8*)-1, TRUE, TRUE } }; + +typedef struct StopInfo_PPC { + u32 PC; + u32 PCInstruction; + u16 exceptionID; +} StopInfo_PPC; + +typedef struct TRKExceptionStatus { + StopInfo_PPC exceptionInfo; + u8 inTRK; + u8 exceptionDetected; +} TRKExceptionStatus; + +typedef struct TRKStepStatus { + BOOL active; // 0x0 + DSMessageStepOptions type; // 0x4 + u32 count; // 0x8 + u32 rangeStart; // 0xC + u32 rangeEnd; // 0x10 +} TRKStepStatus; + +ProcessorRestoreFlags_PPC gTRKRestoreFlags = { FALSE, FALSE }; + +static TRKExceptionStatus gTRKExceptionStatus = { { 0, 0, 0 }, TRUE, 0 }; + +static TRKStepStatus gTRKStepStatus = { FALSE, DSSTEP_IntoCount, 0, 0 }; + +static u16 TRK_saved_exceptionID = 0; +ProcessorState_PPC gTRKCPUState; +TRKState gTRKState; + +typedef unsigned char u128[16]; +u128 TRKvalue128_temp; + +Default_PPC gTRKSaveState; + +// Instruction macros +#define INSTR_NOP 0x60000000 +#define INSTR_BLR 0x4E800020 +#define INSTR_PSQ_ST(psr, offset, rDest, w, gqr) \ + (0xF0000000 | (psr << 21) | (rDest << 16) | (w << 15) | (gqr << 12) \ + | offset) +#define INSTR_PSQ_L(psr, offset, rSrc, w, gqr) \ + (0xE0000000 | (psr << 21) | (rSrc << 16) | (w << 15) | (gqr << 12) | offset) +#define INSTR_STW(rSrc, offset, rDest) \ + (0x90000000 | (rSrc << 21) | (rDest << 16) | offset) +#define INSTR_LWZ(rDest, offset, rSrc) \ + (0x80000000 | (rDest << 21) | (rSrc << 16) | offset) +#define INSTR_STFD(fprSrc, offset, rDest) \ + (0xD8000000 | (fprSrc << 21) | (rDest << 16) | offset) +#define INSTR_LFD(fprDest, offset, rSrc) \ + (0xC8000000 | (fprDest << 21) | (rSrc << 16) | offset) +#define INSTR_MFSPR(rDest, spr) \ + (0x7C000000 | (rDest << 21) | ((spr & 0xFE0) << 6) | ((spr & 0x1F) << 16) \ + | 0x2A6) +#define INSTR_MTSPR(spr, rSrc) \ + (0x7C000000 | (rSrc << 21) | ((spr & 0xFE0) << 6) | ((spr & 0x1F) << 16) \ + | 0x3A6) + +#define DSFetch_u32(_p_) (*((u32*)_p_)) +#define DSFetch_u64(_p_) (*((u64*)_p_)) + +DSError TRKPPCAccessSPR(void* value, u32 spr_register_num, BOOL read); +DSError TRKPPCAccessPairedSingleRegister(void* srcDestPtr, u32 psr, BOOL read); +DSError TRKPPCAccessFPRegister(void* srcDestPtr, u32 fpr, BOOL read); +DSError TRKPPCAccessSpecialReg(void* value, u32* access_func, BOOL read); +static void TRKExceptionHandler(u16); +void TRKInterruptHandlerEnableInterrupts(void); +void WriteFPSCR(register f64*); +void ReadFPSCR(register f64*); +void __TRK_set_MSR(u32 msr); +u32 __TRK_get_MSR(); +static void TRK_ppc_memcpy(register void* dest, register const void* src, + register int n, register u32 param_4, + register u32 param_5); + +void TRKRestoreExtended1Block(); +void TRKUARTInterruptHandler(); + +static BOOL TRKTargetCheckStep(); + +asm u32 __TRK_get_MSR() +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + mfmsr r3 + blr +#endif // clang-format on +} + +asm void __TRK_set_MSR(register u32 msr) { +#ifdef __MWERKS__ // clang-format off + nofralloc + mtmsr msr + blr +#endif // clang-format on +} + +DSError TRKValidMemory32(const void* addr, size_t length, + ValidMemoryOptions readWriteable) +{ + DSError err = DS_InvalidMemory; /* assume range is invalid */ + + const u8* start; + const u8* end; + + s32 i; + + /* + ** Get start and end addresses for the memory range and + ** verify that they are reasonable. + */ + + start = (const u8*)addr; + end = ((const u8*)addr + (length - 1)); + + if (end < start) + return DS_InvalidMemory; + + /* + ** Iterate through the gTRKMemMap array to determine if the requested + ** range falls within the valid ranges in the map. + */ + + for (i = 0; (i < (s32)(sizeof(gTRKMemMap) / sizeof(memRange))); i++) { + /* + ** If the requested range is not completely above + ** the valid range AND it is not completely below + ** the valid range then it must overlap somewhere. + ** If the requested range overlaps with one of the + ** valid ranges, do some additional checking. + ** + */ + + if ((start <= (const u8*)gTRKMemMap[i].end) + && (end >= (const u8*)gTRKMemMap[i].start)) { + /* + ** First, verify that the read/write attributes are + ** acceptable. If so, then recursively check any + ** part of the requested range that falls before or + ** after the valid range. + */ + + if (((readWriteable == VALIDMEM_Readable) + && !gTRKMemMap[i].readable) + || ((readWriteable == VALIDMEM_Writeable) + && !gTRKMemMap[i].writeable)) { + err = DS_InvalidMemory; + } else { + err = DS_NoError; + + /* + ** If a portion of the requested range falls before + ** the current valid range, then recursively + ** check it. + */ + + if (start < (const u8*)gTRKMemMap[i].start) + err = TRKValidMemory32( + start, (u32)((const u8*)gTRKMemMap[i].start - start), + readWriteable); + + /* + ** If a portion of the requested range falls after + ** the current valid range, then recursively + ** check it. + ** Note: Only do this step if the previous check + ** did not detect invalid access. + */ + + if ((err == DS_NoError) && (end > (const u8*)gTRKMemMap[i].end)) + err = TRKValidMemory32( + (const u8*)gTRKMemMap[i].end, + (u32)(end - (const u8*)gTRKMemMap[i].end), + readWriteable); + } + + break; + } + } + + return err; +} + +static asm void TRK_ppc_memcpy(register void* dest, register const void* src, + register int n, register u32 param_4, + register u32 param_5) { +#ifdef __MWERKS__ // clang-format off +#define msr r8 +#define byte r9 +#define count r10 + nofralloc + + mfmsr msr + li count, 0 + +top_loop: + cmpw count, n + beq out_loop + + mtmsr param_5 + sync + + lbzx byte, count, src + + mtmsr param_4 + sync + + stbx byte, count, dest + + addi count, count, 1 + + b top_loop +out_loop: + mtmsr msr + sync + + blr +#undef count +#undef byte +#undef msr +#endif // clang-format on +} + +DSError TRKTargetAccessMemory(void* data, u32 start, size_t* length, + MemoryAccessOptions accessOptions, BOOL read) +{ + DSError error; + u32 target_msr; + void* addr; + u32 trk_msr; + TRKExceptionStatus tempExceptionStatus = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; + + addr = (void*)TRKTargetTranslate(start); + error = TRKValidMemory32(addr, *length, + read ? VALIDMEM_Readable : VALIDMEM_Writeable); + + if (error != DS_NoError) { + *length = 0; + } else { + target_msr = __TRK_get_MSR(); + trk_msr = target_msr | gTRKCPUState.Extended1.MSR & 0x10; + + if (read) { + TRK_ppc_memcpy(data, addr, *length, target_msr, trk_msr); + } else { + TRK_ppc_memcpy(addr, data, *length, trk_msr, target_msr); + TRK_flush_cache(addr, *length); + if ((void*)start != addr) { + TRK_flush_cache((void*)start, *length); + } + } + } + + if (gTRKExceptionStatus.exceptionDetected) { + *length = 0; + error = DS_CWDSException; + } + + gTRKExceptionStatus = tempExceptionStatus; + return error; +} + +DSError TRKTargetReadInstruction(void* data, u32 start) +{ + DSError error; + size_t registersLength = 4; + + error = TRKTargetAccessMemory(data, start, ®istersLength, + MEMACCESS_UserMemory, TRUE); + + if (error == DS_NoError && registersLength != 4) { + error = DS_InvalidMemory; + } + + return error; +} + +DSError TRKTargetAccessDefault(u32 firstRegister, u32 lastRegister, + TRKBuffer* b, size_t* registersLengthPtr, + BOOL read) +{ + DSError error; + u32 count; + u32* data; + TRKExceptionStatus tempExceptionStatus; + + if (lastRegister > 0x24) { + return DS_InvalidRegister; + } + + tempExceptionStatus = gTRKExceptionStatus; + + data = gTRKCPUState.Default.GPR + firstRegister; + + count = (lastRegister - firstRegister) + 1; + + gTRKExceptionStatus.exceptionDetected = FALSE; + + *registersLengthPtr = count * sizeof(u32); + + if (read) { + error = TRKAppendBuffer_ui32(b, data, count); + } else { + error = TRKReadBuffer_ui32(b, data, count); + } + + if (gTRKExceptionStatus.exceptionDetected) { + *registersLengthPtr = 0; + error = DS_CWDSException; + } + + gTRKExceptionStatus = tempExceptionStatus; + return error; +} + +DSError TRKTargetAccessFP(u32 firstRegister, u32 lastRegister, TRKBuffer* b, + size_t* registersLengthPtr, BOOL read) +{ + u64 temp; + DSError error; + TRKExceptionStatus tempExceptionStatus; + u32 current; + + if (lastRegister > 0x21) { + return DS_InvalidRegister; + } + + tempExceptionStatus = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; + + __TRK_set_MSR(__TRK_get_MSR() | 0x2000); + + *registersLengthPtr = 0; + error = DS_NoError; + + for (current = firstRegister; + (current <= lastRegister) && (error == DS_NoError); + current++, *registersLengthPtr += sizeof(f64)) { + if (read) { + TRKPPCAccessFPRegister(&temp, current, read); + error = TRKAppendBuffer1_ui64(b, temp); + } else { + TRKReadBuffer1_ui64(b, &temp); + error = TRKPPCAccessFPRegister(&temp, current, read); + } + } + + if (gTRKExceptionStatus.exceptionDetected) { + *registersLengthPtr = 0; + error = DS_CWDSException; + } + + gTRKExceptionStatus = tempExceptionStatus; + return error; +} + +DSError TRKTargetAccessExtended1(u32 firstRegister, u32 lastRegister, + TRKBuffer* b, size_t* registersLengthPtr, + BOOL read) +{ + TRKExceptionStatus tempExceptionStatus; + int error; + u32* data; + int count; + + if (lastRegister > 0x60) { + return DS_InvalidRegister; + } + + tempExceptionStatus = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; + + *registersLengthPtr = 0; + + if (firstRegister <= lastRegister) { + data = (u32*)&gTRKCPUState.Extended1 + firstRegister; + count = lastRegister - firstRegister + 1; + *registersLengthPtr += count * sizeof(u32); + + if (read) { + error = TRKAppendBuffer_ui32(b, data, count); + } else { + if (data <= &gTRKCPUState.Extended1.TBU + && (data + count - 1) >= &gTRKCPUState.Extended1.TBL) { + gTRKRestoreFlags.TBR = 1; + } + + if (data <= &gTRKCPUState.Extended1.DEC + && (data + count - 1) >= &gTRKCPUState.Extended1.DEC) { + gTRKRestoreFlags.DEC = 1; + } + error = TRKReadBuffer_ui32(b, data, count); + } + } + if (gTRKExceptionStatus.exceptionDetected) { + *registersLengthPtr = 0; + error = DS_CWDSException; + } + + gTRKExceptionStatus = tempExceptionStatus; + return error; +} + +DSError TRKTargetAccessExtended2(u32 firstRegister, u32 lastRegister, + TRKBuffer* b, size_t* registerStorageSize, + BOOL read) +{ + TRKExceptionStatus savedException; + u32 i; + u32 value_buf0[1]; + u32 value_buf[2]; + DSError err; + u32 access_func[10]; + + if (lastRegister > 0x1f) + return DS_InvalidRegister; + + /* + ** Save any existing exception status and clear the exception flag. + ** This allows detection of exceptions that occur ONLY within this + ** function. + */ + + savedException = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; + + TRKPPCAccessSPR(value_buf0, SPR_HID2, TRUE); + + value_buf0[0] |= 0xA0000000; + TRKPPCAccessSPR(value_buf0, SPR_HID2, FALSE); + + value_buf0[0] = 0; + TRKPPCAccessSPR(value_buf0, SPR_GQR0, FALSE); + + *registerStorageSize = 0; + err = DS_NoError; + + for (i = firstRegister; (i <= lastRegister) && (err == DS_NoError); i++) { + if (read) { + err = TRKPPCAccessPairedSingleRegister((u64*)value_buf, i, read); + err = TRKAppendBuffer1_ui64(b, *(u64*)value_buf); + } else { + err = TRKReadBuffer1_ui64(b, (u64*)value_buf); + err = TRKPPCAccessPairedSingleRegister((u64*)value_buf, i, read); + } + + *registerStorageSize += sizeof(u64); + } + + if (gTRKExceptionStatus.exceptionDetected) { + *registerStorageSize = 0; + err = DS_CWDSException; + } + + gTRKExceptionStatus = savedException; + + return err; +} + +DSError TRKTargetVersions(DSVersions* versions) +{ + versions->kernelMajor = 0; + versions->kernelMinor = 8; + versions->protocolMajor = 1; + versions->protocolMinor = 10; + return DS_NoError; +} + +DSError TRKTargetSupportMask(u8 mask[32]) +{ + mask[0] = 0x7a; + mask[1] = 0; + mask[2] = 0x4f; + mask[3] = 7; + mask[4] = 0; + mask[5] = 0; + mask[6] = 0; + mask[7] = 0; + mask[8] = 0; + mask[9] = 0; + mask[10] = 0; + mask[0xb] = 0; + mask[0xc] = 0; + mask[0xd] = 0; + mask[0xe] = 0; + mask[0xf] = 0; + mask[0x10] = 1; + mask[0x11] = 0; + mask[0x12] = 3; + mask[0x13] = 0; + mask[0x14] = 0; + mask[0x15] = 0; + mask[0x16] = 0; + mask[0x17] = 0; + mask[0x18] = 0; + mask[0x19] = 0; + mask[0x1a] = 3; + mask[0x1b] = 0; + mask[0x1c] = 0; + mask[0x1d] = 0; + mask[0x1e] = 0; + mask[0x1f] = 0x80; + return DS_NoError; +} + +extern BOOL gTRKBigEndian; + +DSError TRKTargetCPUType(DSCPUType* cpuType) +{ + cpuType->cpuMajor = 0; + cpuType->cpuMinor = TRKTargetCPUMinorType(); + cpuType->bigEndian = gTRKBigEndian; + cpuType->defaultTypeSize = 4; + cpuType->fpTypeSize = 8; + cpuType->extended1TypeSize = 4; + cpuType->extended2TypeSize = 8; + return DS_NoError; +} + +asm void TRKInterruptHandler() +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + mtsrr0 r2 + mtsrr1 r4 + mfsprg r4, 3 + mfcr r2 + mtsprg 3, r2 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r2, TRKState_PPC.MSR(r2) + ori r2, r2, 0x8002 + xori r2, r2, 0x8002 + sync + mtmsr r2 + sync + lis r2, TRK_saved_exceptionID@h + ori r2, r2, TRK_saved_exceptionID@l + sth r3, 0(r2) + cmpwi r3, 0x500 + bne L_802CF694 + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + mflr r3 + stw r3, ProcessorState_PPC.transport_handler_saved_ra(r2) + bl TRKUARTInterruptHandler + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + lwz r3, ProcessorState_PPC.transport_handler_saved_ra(r2) + mtlr r3 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r2, TRKState_PPC.inputPendingPtr(r2) + lbz r2, TRKState_PPC.GPR[0](r2) + cmpwi r2, 0 + beq L_802CF678 + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + lbz r2, TRKExceptionStatus.inTRK(r2) + cmpwi r2, 1 + beq L_802CF678 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + li r3, 1 + stb r3, TRKState_PPC.inputActivated(r2) + b L_802CF694 +L_802CF678: + lis r2, gTRKSaveState@h + ori r2, r2, gTRKSaveState@l + lwz r3, Default_PPC.CR(r2) + mtcrf 0xff, r3 + lwz r3, Default_PPC.GPR[3](r2) + lwz r2, Default_PPC.GPR[2](r2) + rfi +L_802CF694: + lis r2, TRK_saved_exceptionID@h + ori r2, r2, TRK_saved_exceptionID@l + lhz r3, 0(r2) + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + lbz r2, TRKExceptionStatus.inTRK(r2) + cmpwi r2, 0 + bne TRKExceptionHandler + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + stw r0, ProcessorState_PPC.Default.GPR[0](r2) + stw r1, ProcessorState_PPC.Default.GPR[1](r2) + mfsprg r0, 1 + stw r0, ProcessorState_PPC.Default.GPR[2](r2) + sth r3, ProcessorState_PPC.Extended1.exceptionID(r2) + sth r3, (ProcessorState_PPC.Extended1.exceptionID + 2)(r2) + mfsprg r0, 2 + stw r0, ProcessorState_PPC.Default.GPR[3](r2) + stmw r4, ProcessorState_PPC.Default.GPR[4](r2) + mfsrr0 r27 + mflr r28 + mfsprg r29, 3 + mfctr r30 + mfxer r31 + stmw r27, ProcessorState_PPC.Default.PC(r2) + bl TRKSaveExtended1Block + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + li r3, 1 + stb r3, TRKExceptionStatus.inTRK(r2) + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r0, TRKState_PPC.MSR(r2) + sync + mtmsr r0 + sync + lwz r0, TRKState_PPC.LR(r2) + mtlr r0 + lwz r0, TRKState_PPC.CTR(r2) + mtctr r0 + lwz r0, TRKState_PPC.XER(r2) + mtxer r0 + lwz r0, TRKState_PPC.DSISR(r2) + mtdsisr r0 + lwz r0, TRKState_PPC.DAR(r2) + mtdar r0 + lmw r3, TRKState_PPC.GPR[3](r2) + lwz r0, TRKState_PPC.GPR[0](r2) + lwz r1, TRKState_PPC.GPR[1](r2) + lwz r2, TRKState_PPC.GPR[2](r2) + b TRKPostInterruptEvent +#endif // clang-format on +} + +static asm void TRKExceptionHandler(u16) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + sth r3, TRKExceptionStatus.exceptionInfo.exceptionID(r2) + mfsrr0 r3 + stw r3, TRKExceptionStatus.exceptionInfo.PC(r2) + lhz r3, TRKExceptionStatus.exceptionInfo.exceptionID(r2) + cmpwi r3, 0x200 + beq LAB_00010ba4 + cmpwi r3, 0x300 + beq LAB_00010ba4 + cmpwi r3, 0x400 + beq LAB_00010ba4 + cmpwi r3, 0x600 + beq LAB_00010ba4 + cmpwi r3, 0x700 + beq LAB_00010ba4 + cmpwi r3, 0x800 + beq LAB_00010ba4 + cmpwi r3, 0x1000 + beq LAB_00010ba4 + cmpwi r3, 0x1100 + beq LAB_00010ba4 + cmpwi r3, 0x1200 + beq LAB_00010ba4 + cmpwi r3, 0x1300 + beq LAB_00010ba4 + b LAB_00010bb0 +LAB_00010ba4: + mfsrr0 r3 + addi r3, r3, 0x4 + mtsrr0 r3 +LAB_00010bb0: + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + li r3, 0x1 + stb r3, TRKExceptionStatus.exceptionDetected(r2) + mfsprg r3, 3 + mtcrf 0xff, r3 + mfsprg r2, 1 + mfsprg r3, 2 + rfi +#endif // clang-format on +} + +void TRKPostInterruptEvent(void) +{ + NubEventType eventType; + u32 inst; + TRKEvent event; + + if (gTRKState.inputActivated) { + gTRKState.inputActivated = FALSE; + } else { + switch (gTRKCPUState.Extended1.exceptionID & 0xFFFF) { + case 0xd00: + case 0x700: + TRKTargetReadInstruction(&inst, gTRKCPUState.Default.PC); + + if (inst == 0xfe00000) { + eventType = NUBEVENT_Support; + } else { + eventType = NUBEVENT_Breakpoint; + } + break; + default: + eventType = NUBEVENT_Exception; + break; + } + + TRKConstructEvent(&event, eventType); + TRKPostEvent(&event); + } +} + +asm void TRKSwapAndGo() +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + lis r3, gTRKState@h + ori r3, r3, gTRKState@l + stmw r0, TRKState_PPC.GPR[0](r3) + mfmsr r0 + stw r0, TRKState_PPC.MSR(r3) + mflr r0 + stw r0, TRKState_PPC.LR(r3) + mfctr r0 + stw r0, TRKState_PPC.CTR(r3) + mfxer r0 + stw r0, TRKState_PPC.XER(r3) + mfdsisr r0 + stw r0, TRKState_PPC.DSISR(r3) + mfdar r0 + stw r0, TRKState_PPC.DAR(r3) + li r1, -0x7ffe + nor r1, r1, r1 + mfmsr r3 + and r3, r3, r1 + mtmsr r3 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r2, TRKState_PPC.inputPendingPtr(r2) + lbz r2, TRKState_PPC.GPR[0](r2) + cmpwi r2, 0 + beq L_802CF930 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + li r3, 1 + stb r3, TRKState_PPC.inputActivated(r2) + b TRKInterruptHandlerEnableInterrupts +L_802CF930: + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + li r3, 0 + stb r3, 0xc(r2) + bl TRKRestoreExtended1Block + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + lmw r27, ProcessorState_PPC.Default.PC(r2) + mtsrr0 r27 + mtlr r28 + mtcrf 0xff, r29 + mtctr r30 + mtxer r31 + lmw r3, ProcessorState_PPC.Default.GPR[3](r2) + lwz r0, ProcessorState_PPC.Default.GPR[0](r2) + lwz r1, ProcessorState_PPC.Default.GPR[1](r2) + lwz r2, ProcessorState_PPC.Default.GPR[2](r2) + rfi +#endif // clang-format on +} + +asm void TRKInterruptHandlerEnableInterrupts(void) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc; + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r0, TRKState_PPC.MSR(r2) + sync + mtmsr r0 + sync + lwz r0, TRKState_PPC.LR(r2) + mtlr r0 + lwz r0, TRKState_PPC.CTR(r2) + mtctr r0 + lwz r0, TRKState_PPC.XER(r2) + mtxer r0 + lwz r0, TRKState_PPC.DSISR(r2) + mtdsisr r0 + lwz r0, TRKState_PPC.DAR(r2) + mtdar r0 + lmw r3, TRKState_PPC.GPR[3](r2) + lwz r0, TRKState_PPC.GPR[0](r2) + lwz r1, TRKState_PPC.GPR[1](r2) + lwz r2, TRKState_PPC.GPR[2](r2) + b TRKPostInterruptEvent +#endif // clang-format on +} + +DSError TRKTargetInterrupt(TRKEvent* event) +{ + DSError error = DS_NoError; + switch (event->eventType) { + case NUBEVENT_Breakpoint: + case NUBEVENT_Exception: + if (TRKTargetCheckStep() == FALSE) { + TRKTargetSetStopped(TRUE); + error = TRKDoNotifyStopped(DSMSG_NotifyStopped); + } + break; + default: + break; + } + + return error; +} + +DSError TRKTargetAddStopInfo(TRKBuffer* buffer) +{ + DSError error; + u32 instruction; + + error = TRKAppendBuffer1_ui32(buffer, gTRKCPUState.Default.PC); + if (error == 0) { + error = TRKTargetReadInstruction(&instruction, gTRKCPUState.Default.PC); + } + if (error == 0) + error = TRKAppendBuffer1_ui32(buffer, instruction); + if (error == 0) + error + = TRKAppendBuffer1_ui16(buffer, gTRKCPUState.Extended1.exceptionID); + return error; +} + +DSError TRKTargetAddExceptionInfo(TRKBuffer* buffer) +{ + DSError error; + u32 local_10; + + error = TRKAppendBuffer1_ui32(buffer, gTRKExceptionStatus.exceptionInfo.PC); + if (error == 0) { + error = TRKTargetReadInstruction(&local_10, + gTRKExceptionStatus.exceptionInfo.PC); + } + if (error == 0) { + error = TRKAppendBuffer1_ui32(buffer, local_10); + } + if (error == 0) { + error = TRKAppendBuffer1_ui16( + buffer, gTRKExceptionStatus.exceptionInfo.exceptionID); + } + + return error; +} + +static DSError TRKTargetEnableTrace(BOOL val) +{ + if (val) { + gTRKCPUState.Extended1.MSR = (gTRKCPUState.Extended1.MSR | 0x400); + } else { + gTRKCPUState.Extended1.MSR = (gTRKCPUState.Extended1.MSR & ~0x400); + } + return DS_NoError; +} + +static BOOL TRKTargetStepDone() +{ + BOOL result = TRUE; + + if (gTRKStepStatus.active + && ((u16)gTRKCPUState.Extended1.exceptionID) == PPC_Trace) { + switch (gTRKStepStatus.type) { + case DSSTEP_IntoCount: + if (gTRKStepStatus.count > 0) { + result = FALSE; + } + break; + case DSSTEP_IntoRange: + if (gTRKCPUState.Default.PC >= gTRKStepStatus.rangeStart + && gTRKCPUState.Default.PC <= gTRKStepStatus.rangeEnd) { + result = FALSE; + } + break; + default: + break; + } + } + + return result; +} + +static DSError TRKTargetDoStep() +{ + gTRKStepStatus.active = TRUE; + TRKTargetEnableTrace(TRUE); + + if (gTRKStepStatus.type == DSSTEP_IntoCount + || gTRKStepStatus.type == DSSTEP_OverCount) { + gTRKStepStatus.count--; + } + + TRKTargetSetStopped(FALSE); + return DS_NoError; +} + +static BOOL TRKTargetCheckStep() +{ + if (gTRKStepStatus.active) { + TRKTargetEnableTrace(FALSE); + + if (TRKTargetStepDone()) { + gTRKStepStatus.active = FALSE; + } else { + TRKTargetDoStep(); + } + } + + return gTRKStepStatus.active; +} + +DSError TRKTargetSingleStep(u32 count, BOOL stepOver) +{ + DSError error = DS_NoError; + + if (stepOver) { + error = DS_UnsupportedError; + } else { + gTRKStepStatus.count = count; + gTRKStepStatus.type = DSSTEP_IntoCount; + error = TRKTargetDoStep(); + } + + return error; +} + +DSError TRKTargetStepOutOfRange(u32 rangeStart, u32 rangeEnd, BOOL stepOver) +{ + DSError error = DS_NoError; + + if (stepOver) { + // Stepping over isn't supported for PowerPC + error = DS_UnsupportedError; + } else { + gTRKStepStatus.type = DSSTEP_IntoRange; + // gTRKStepStatus.active = TRUE; + gTRKStepStatus.rangeStart = rangeStart; + gTRKStepStatus.rangeEnd = rangeEnd; + error = TRKTargetDoStep(); + } + + return error; +} + +u32 TRKTargetGetPC() { return gTRKCPUState.Default.PC; } + +DSError TRKTargetSupportRequest() +{ + DSError error; + size_t* length; + DSIOResult ioResult; + MessageCommandID commandId; + TRKEvent event; + + commandId = gTRKCPUState.Default.GPR[3]; + if (commandId != DSMSG_ReadFile && commandId != DSMSG_WriteFile) { + TRKConstructEvent(&event, 4); + TRKPostEvent(&event); + return DS_NoError; + } else { + length = (size_t*)gTRKCPUState.Default.GPR[5]; + error = TRKSuppAccessFile((u8)gTRKCPUState.Default.GPR[4], + (u8*)gTRKCPUState.Default.GPR[6], length, + &ioResult, TRUE, commandId == DSMSG_ReadFile); + + if (ioResult == DS_IONoError && error != DS_NoError) { + ioResult = DS_IOError; + } + + gTRKCPUState.Default.GPR[3] = ioResult; + + if (commandId == DSMSG_ReadFile) { + TRK_flush_cache((void*)gTRKCPUState.Default.GPR[6], *length); + } + } + + gTRKCPUState.Default.PC += 4; + return error; +} + +DSError TRKTargetFlushCache(u8, void* start, void* end) +{ + if (start < end) { + TRK_flush_cache(start, (u8*)end - (u8*)start); + return DS_NoError; + } + + return DS_InvalidMemory; +} + +BOOL TRKTargetStopped() { return gTRKState.isStopped; } + +void TRKTargetSetStopped(unsigned int stopped) +{ + gTRKState.isStopped = stopped; +} + +u32 TRKTargetStop() +{ + TRKTargetSetStopped(1); + return 0; +} + +DSError TRKPPCAccessSPR(void* value, u32 spr_register_num, BOOL read) +{ + /* Initialize instruction array with nop */ + + u32 access_func[5] + = { INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP }; + /* + ** Construct a small assembly function to perform the + ** requested access and call it. The read/write function + ** is in the form: + ** + ** read: + ** mfspr r4, spr_register_num + ** stw r4, 0(r3) + ** blr + ** + ** write: + ** lwz r4, 0(r3) + ** mtspr spr_register_num, r4 + ** blr + ** + */ + + if (read) { + access_func[0] = INSTR_MFSPR(4, spr_register_num); + access_func[1] = (u32)INSTR_STW(4, 0, 3); + } else { + access_func[0] = (u32)INSTR_LWZ(4, 0, 3); + access_func[1] = INSTR_MTSPR(spr_register_num, 4); + } + + return TRKPPCAccessSpecialReg(value, access_func, read); +} + +DSError TRKPPCAccessPairedSingleRegister(void* srcDestPtr, u32 psr, BOOL read) +{ + // all nop by default + u32 instructionData[] + = { INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP }; + + if (read) { + instructionData[0] + = INSTR_PSQ_ST(psr, 0, 3, 0, 0); // psq_st psr, 0(r3), 0, 0 + } else { + instructionData[0] + = INSTR_PSQ_L(psr, 0, 3, 0, 0); // psq_l psr, 0(r3), 0, 0 + } + + return TRKPPCAccessSpecialReg(srcDestPtr, instructionData, read); +} + +DSError TRKPPCAccessFPRegister(void* srcDestPtr, u32 fpr, BOOL read) +{ + DSError error = DS_NoError; + // all nop by default + u32 instructionData1[] + = { INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP }; + + if (fpr < 0x20) { + if (read) { + instructionData1[0] = INSTR_STFD(fpr, 0, 3); // stfd fpr, 0(r3) + } else { + instructionData1[0] = INSTR_LFD(fpr, 0, 3); // lfd fpr, 0(r3) + } + + error = TRKPPCAccessSpecialReg(srcDestPtr, instructionData1, read); + } else if (fpr == 0x20) { + if (read) { + instructionData1[0] = INSTR_STFD(1, 0, 4); // stfd f1, 0(r4) + instructionData1[1] = 0xfc20048e; // mtfsf 0xff, f1 + instructionData1[2] = INSTR_STFD(1, 0, 3); // stfd f1, 0(r3) + instructionData1[3] = INSTR_LFD(1, 0, 4); // lfd f1, 0(r4) + } else { + instructionData1[0] = INSTR_STFD(1, 0, 4); // stfd f1, 0(r4) + instructionData1[1] = INSTR_LFD(1, 0, 3); // lfd f1, 0(r4) + instructionData1[2] = 0xfdfe0d8e; // mtfsf 0xff, f1 + instructionData1[3] = INSTR_LFD(1, 0, 4); // lfd f1, 0(r4) + } + error = TRKPPCAccessSpecialReg(srcDestPtr, instructionData1, read); + *(u64*)srcDestPtr &= 0xFFFFFFFF; + } else if (fpr == 0x21) { + if (!read) { + *(u32*)srcDestPtr = *((u32*)(srcDestPtr) + 1); + } + + error = TRKPPCAccessSPR(srcDestPtr, SPR_FPECR, read); + if (read) { + DSFetch_u64(srcDestPtr) = DSFetch_u32(srcDestPtr) & 0xffffffffLL; + } + } + + return error; +} + +#define DEBUG_VECTORREG_ACCESS 0 + +DSError TRKPPCAccessSpecialReg(void* value, u32* access_func, BOOL read) +{ + typedef void (*asm_access_type)(void*, void*); + + asm_access_type asm_access; + + /* + ** Construct a small assembly function to perform the + ** requested access and call it. The read/write function + ** is in the form: + ** + ** + ** blr + */ + + /* + ** Put blr instruction at the end of access function (it should be + ** a 5-instruction array w/the last one empty). + */ + + access_func[9] = INSTR_BLR; + + /* + ** Now that the instruction array is built, get a function pointer to it. + */ + + asm_access = (asm_access_type)access_func; + +#if DEBUG_VECTORREG_ACCESS + + __puts("\r\nasm_access: "); + __puthex8((u32)asm_access); + __puts(" access_func: "); + __puthex8((u32)access_func); + + for (i = 0; i < 10; i++) { + __puts("\r\ninst["); + __puthex2(i); + __puts("]: "); + __puthex8(access_func[i]); + __puts(" ; "); + __puthex8(*((u32*)asm_access + i)); + } + + __puts("\r\n"); + +#endif + + // Flush cache + TRK_flush_cache(access_func, (sizeof(access_func) * 10)); + (*asm_access)((u32*)value, (void*)&TRKvalue128_temp); + + return DS_NoError; +} + +void TRKTargetSetInputPendingPtr(void* ptr) { gTRKState.inputPendingPtr = ptr; } diff --git a/src/TRK_MINNOW_DOLPHIN/usr_put.c b/src/TRK_MINNOW_DOLPHIN/usr_put.c new file mode 100644 index 00000000..eda11e06 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/usr_put.c @@ -0,0 +1,5 @@ +#include "TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h" +#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +void usr_put_initialize(void) { } diff --git a/src/dolphin/gx/GXFifo.c b/src/dolphin/gx/GXFifo.c index 963be184..583303a0 100644 --- a/src/dolphin/gx/GXFifo.c +++ b/src/dolphin/gx/GXFifo.c @@ -6,15 +6,15 @@ #include -static OSThread *__GXCurrentThread; +static struct __GXFifoObj* CPUFifo; +static struct __GXFifoObj* GPFifo; +static OSThread* __GXCurrentThread; static GXBool CPGPLinked; static BOOL GXOverflowSuspendInProgress; static GXBreakPtCallback BreakPointCB; static u32 __GXOverflowCount; -struct __GXFifoObj *CPUFifo; -struct __GXFifoObj *GPFifo; -void *__GXCurrentBP; +void* __GXCurrentBP; static void __GXFifoReadEnable(void); static void __GXFifoReadDisable(void); @@ -38,10 +38,10 @@ static void GXUnderflowHandler(s16 interrupt, OSContext *context) { ASSERTLINE(0x1A3, GXOverflowSuspendInProgress); - OSResumeThread(__GXCurrentThread); - GXOverflowSuspendInProgress = FALSE; - __GXWriteFifoIntReset(1U, 1U); - __GXWriteFifoIntEnable(1U, 0U); + OSResumeThread(__GXCurrentThread); + GXOverflowSuspendInProgress = FALSE; + __GXWriteFifoIntReset(1U, 1U); + __GXWriteFifoIntEnable(1U, 0U); } #define SOME_SET_REG_MACRO(reg, size, shift, val) \ @@ -51,17 +51,17 @@ static void GXUnderflowHandler(s16 interrupt, OSContext *context) static void GXBreakPointHandler(s16 interrupt, OSContext *context) { - OSContext exceptionContext; + OSContext exceptionContext; - SOME_SET_REG_MACRO(gx->cpEnable, 1, 5, 0); - GX_SET_CP_REG(1, gx->cpEnable); - if (BreakPointCB != NULL) { - OSClearContext(&exceptionContext); - OSSetCurrentContext(&exceptionContext); - BreakPointCB(); - OSClearContext(&exceptionContext); - OSSetCurrentContext(context); - } + gx->cpEnable = gx->cpEnable & 0xFFFFFFDF; + __cpReg[1] = gx->cpEnable; + if (BreakPointCB != NULL) { + OSClearContext(&exceptionContext); + OSSetCurrentContext(&exceptionContext); + BreakPointCB(); + OSClearContext(&exceptionContext); + OSSetCurrentContext(context); + } } static void GXCPInterruptHandler(s16 interrupt, OSContext *context) diff --git a/src/dolphin/gx/GXFrameBuf.c b/src/dolphin/gx/GXFrameBuf.c index 4c04abab..9c12a892 100644 --- a/src/dolphin/gx/GXFrameBuf.c +++ b/src/dolphin/gx/GXFrameBuf.c @@ -291,26 +291,25 @@ f32 GXGetYScaleFactor(u16 efbHeight, u16 xfbHeight) u32 GXSetDispCopyYScale(f32 vscale) { - u8 enable; - u32 iScale; - u32 ht; - u32 reg; + u32 scale; + GXBool check; + u32 height; + u32 reg; - CHECK_GXBEGIN(0x615, "GXSetDispCopyYScale"); + scale = (u32)(256.0f / vscale) & 0x1FF; + check = (scale != 0x100); - ASSERTMSGLINE(0x617, vscale >= 1.0f, "GXSetDispCopyYScale: Vertical scale must be >= 1.0"); + reg = 0; + SET_REG_FIELD(0, reg, 9, 0, scale); + SET_REG_FIELD(0, reg, 8, 24, 0x4E); + GX_WRITE_RAS_REG(reg); + gx->bpSentNot = GX_FALSE; - iScale = (u32)(256.0f / vscale) & 0x1FF; - enable = (iScale != 256); + SET_REG_FIELD(0, gx->cpDisp, 1, 10, check); - reg = 0; - SET_REG_FIELD(0x61E, reg, 9, 0, iScale); - SET_REG_FIELD(0x61E, reg, 8, 24, 0x4E); - GX_WRITE_RAS_REG(reg); - gx->bpSentNot = 0; - SET_REG_FIELD(0x623, gx->cpDisp, 1, 10, enable); - ht = GET_REG_FIELD(gx->cpDispSize, 10, 10) + 1; - return __GXGetNumXfbLines(ht, iScale); + height = (gx->cpDispSize >> 10 & 0x3FF) + 1; + + return __GXGetNumXfbLines(height, scale); } void GXSetCopyClear(GXColor clear_clr, u32 clear_z) diff --git a/src/dolphin/gx/GXInit.c b/src/dolphin/gx/GXInit.c index 82874fab..e6774ba7 100644 --- a/src/dolphin/gx/GXInit.c +++ b/src/dolphin/gx/GXInit.c @@ -65,150 +65,134 @@ static GXTlutRegion *__GXDefaultTlutRegionCallback(u32 idx) GXFifoObj FifoObj; -GXFifoObj *GXInit(void *base, u32 size) +GXFifoObj* GXInit(void* base, u32 size) { - u32 i; - u32 reg; - u32 freqBase; + u32 i; + u32 reg; + u32 freqBase; + char stack_padding[8]; - // OSRegisterVersion(__GXVersion); + gx->inDispList = FALSE; + gx->dlSaveContext = TRUE; - gx->inDispList = FALSE; - gx->dlSaveContext = TRUE; - // gx->abtWaitPECopy = 1; -#if DEBUG - __GXinBegin = FALSE; -#endif - gx->tcsManEnab = FALSE; - gx->tevTcEnab = FALSE; - - GXSetMisc(GX_MT_XF_FLUSH, 0); + gx->tcsManEnab = FALSE; + gx->tevTcEnab = 0; + GXSetMisc(GX_MT_XF_FLUSH, 0); + __piReg = OSPhysicalToUncached(0xC003000); + __cpReg = OSPhysicalToUncached(0xC000000); + __peReg = OSPhysicalToUncached(0xC001000); + __memReg = OSPhysicalToUncached(0xC004000); + __GXFifoInit(); + GXInitFifoBase(&FifoObj, base, size); + GXSetCPUFifo(&FifoObj); + GXSetGPFifo(&FifoObj); + __GXPEInit(); + EnableWriteGatherPipe(); - __piReg = OSPhysicalToUncached(0xC003000); - __cpReg = OSPhysicalToUncached(0xC000000); - __peReg = OSPhysicalToUncached(0xC001000); - __memReg = OSPhysicalToUncached(0xC004000); - // __GXFifoInit(); - // GXInitFifoBase(&FifoObj, base, size); - // GXSetCPUFifo(&FifoObj); - // GXSetGPFifo(&FifoObj); + gx->genMode = 0; + SET_REG_FIELD(0, gx->genMode, 8, 24, 0); + gx->bpMask = 255; + SET_REG_FIELD(0, gx->bpMask, 8, 24, 0x0F); + gx->lpSize = 0; + SET_REG_FIELD(0, gx->lpSize, 8, 24, 0x22); + for (i = 0; i < 16; ++i) { + gx->tevc[i] = 0; + gx->teva[i] = 0; + gx->tref[i / 2] = 0; + gx->texmapId[i] = GX_TEXMAP_NULL; + SET_REG_FIELD(0x2F2, gx->tevc[i], 8, 24, 0xC0 + i * 2); + SET_REG_FIELD(0x2F3, gx->teva[i], 8, 24, 0xC1 + i * 2); + SET_REG_FIELD(0x2F5, gx->tevKsel[i / 2], 8, 24, 0xF6 + i / 2); + SET_REG_FIELD(0x2F7, gx->tref[i / 2], 8, 24, 0x28 + i / 2); + } + gx->iref = 0; + SET_REG_FIELD(0, gx->iref, 8, 24, 0x27); + for (i = 0; i < 8; ++i) { + gx->suTs0[i] = 0; + gx->suTs1[i] = 0; + SET_REG_FIELD(0x300, gx->suTs0[i], 8, 24, 0x30 + i * 2); + SET_REG_FIELD(0x301, gx->suTs1[i], 8, 24, 0x31 + i * 2); + } + SET_REG_FIELD(0, gx->suScis0, 8, 24, 0x20); + SET_REG_FIELD(0, gx->suScis1, 8, 24, 0x21); + SET_REG_FIELD(0, gx->cmode0, 8, 24, 0x41); + SET_REG_FIELD(0, gx->cmode1, 8, 24, 0x42); + SET_REG_FIELD(0, gx->zmode, 8, 24, 0x40); + SET_REG_FIELD(0, gx->peCtrl, 8, 24, 0x43); + SET_REG_FIELD(0, gx->cpTex, 2, 7, 0); + gx->dirtyState = 0; + gx->dirtyVAT = FALSE; - // if (!resetFuncRegistered) { - // OSRegisterResetFunction(&GXResetFuncInfo); - // resetFuncRegistered = 1; - // } + freqBase = __OSBusClock / 500; + __GXFlushTextureState(); + reg = (freqBase >> 11) | 0x400 | 0x69000000; + GX_WRITE_RAS_REG(reg); - // __GXPEInit(); - // EnableWriteGatherPipe(); + __GXFlushTextureState(); + reg = (freqBase / 0x1080) | 0x200 | 0x46000000; + GX_WRITE_RAS_REG(reg); - gx->genMode = 0; - SET_REG_FIELD(0, gx->genMode, 8, 24, 0); - gx->bpMask = 255; - SET_REG_FIELD(0, gx->bpMask, 8, 24, 0x0F); - gx->lpSize = 0; - SET_REG_FIELD(0, gx->lpSize, 8, 24, 0x22); - for (i = 0; i < 16; ++i) { - gx->tevc[i] = 0; - gx->teva[i] = 0; - gx->tref[i / 2] = 0; - gx->texmapId[i] = GX_TEXMAP_NULL; - SET_REG_FIELD(0x46A, gx->tevc[i], 8, 24, 0xC0 + i * 2); - SET_REG_FIELD(0x46B, gx->teva[i], 8, 24, 0xC1 + i * 2); - SET_REG_FIELD(0x46D, gx->tevKsel[i / 2], 8, 24, 0xF6 + i / 2); - SET_REG_FIELD(0x46F, gx->tref[i / 2], 8, 24, 0x28 + i / 2); - } - gx->iref = 0; - SET_REG_FIELD(0, gx->iref, 8, 24, 0x27); - for (i = 0; i < 8; ++i) { - gx->suTs0[i] = 0; - gx->suTs1[i] = 0; - SET_REG_FIELD(0x478, gx->suTs0[i], 8, 24, 0x30 + i * 2); - SET_REG_FIELD(0x479, gx->suTs1[i], 8, 24, 0x31 + i * 2); - } - SET_REG_FIELD(0, gx->suScis0, 8, 24, 0x20); - SET_REG_FIELD(0, gx->suScis1, 8, 24, 0x21); - SET_REG_FIELD(0, gx->cmode0, 8, 24, 0x41); - SET_REG_FIELD(0, gx->cmode1, 8, 24, 0x42); - SET_REG_FIELD(0, gx->zmode, 8, 24, 0x40); - SET_REG_FIELD(0, gx->peCtrl, 8, 24, 0x43); - SET_REG_FIELD(0, gx->cpTex, 2, 7, 0); + for (i = GX_VTXFMT0; i < GX_MAX_VTXFMT; i++) { + SET_REG_FIELD(0, gx->vatA[i], 1, 30, 1); + SET_REG_FIELD(0, gx->vatB[i], 1, 31, 1); + do { + s32 regAddr; + GX_WRITE_U8(GX_LOAD_CP_REG); + GX_WRITE_U8(i | 0x80); + GX_WRITE_U32(gx->vatB[i]); + regAddr = i - 12; + } while (0); + } + { + u32 reg1 = 0; + u32 reg2 = 0; + SET_REG_FIELD(0, reg1, 1, 0, 1); + SET_REG_FIELD(0, reg1, 1, 1, 1); + SET_REG_FIELD(0, reg1, 1, 2, 1); + SET_REG_FIELD(0, reg1, 1, 3, 1); + SET_REG_FIELD(0, reg1, 1, 4, 1); + SET_REG_FIELD(0, reg1, 1, 5, 1); + GX_WRITE_XF_REG(0, reg1); + SET_REG_FIELD(0, reg2, 1, 0, 1); + GX_WRITE_XF_REG(0x12, reg2); + } + { + u32 reg = 0; + SET_REG_FIELD(0, reg, 1, 0, 1); + SET_REG_FIELD(0, reg, 1, 1, 1); + SET_REG_FIELD(0, reg, 1, 2, 1); + SET_REG_FIELD(0, reg, 1, 3, 1); + SET_REG_FIELD(0, reg, 8, 24, 0x58); + GX_WRITE_RAS_REG(reg); + } + for (i = 0; i < 8; i++) + GXInitTexCacheRegion(&gx->TexRegions[i], 0, i * 0x8000, 0, + 0x80000 + i * 0x8000, 0); + for (i = 0; i < 4; i++) + GXInitTexCacheRegion(&gx->TexRegionsCI[i], 0, (i * 2 + 8) * 0x8000, 0, + (i * 2 + 9) * 0x8000, 0); + for (i = 0; i < 16; i++) + GXInitTlutRegion(&gx->TlutRegions[i], 0xC0000 + i * 0x2000, 16); + for (i = 0; i < 4; i++) + GXInitTlutRegion(&gx->TlutRegions[i + 16], 0xE0000 + i * 0x8000, 64); + __cpReg[3] = 0; - // gx->zScale = 1.6777216E7f; - // gx->zOffset = 0.0f; - gx->dirtyState = 0; - gx->dirtyVAT = FALSE; -#if DEBUG - __gxVerif->verifyLevel = GX_WARN_NONE; - GXSetVerifyCallback((GXVerifyCallback)__GXDefaultVerifyCallback); - for (i = 0; i < 256; i++) { - SET_REG_FIELD(0, __gxVerif->rasRegs[i], 8, 24, 0xFF); - } - memset(__gxVerif->xfRegsDirty, 0, 0x50); - memset(__gxVerif->xfMtxDirty, 0, 0x100); - memset(__gxVerif->xfNrmDirty, 0, 0x60); - memset(__gxVerif->xfLightDirty, 0, 0x80); -#endif - freqBase = __OSBusClock / 500; - // __GXFlushTextureState(); - reg = (freqBase >> 11) | 0x400 | 0x69000000; - GX_WRITE_RAS_REG(reg); + { + SET_REG_FIELD(0, gx->perfSel, 4, 4, 0); + GX_WRITE_U8(GX_LOAD_CP_REG); + GX_WRITE_U8(0x20); + GX_WRITE_U32(gx->perfSel); + GX_WRITE_U8(GX_LOAD_XF_REG); + GX_WRITE_U32(0x1006); + GX_WRITE_U32(0); + GX_WRITE_RAS_REG(0x23000000); + GX_WRITE_RAS_REG(0x24000000); + GX_WRITE_RAS_REG(0x67000000); + } - // __GXFlushTextureState(); - reg = (freqBase / 0x1080) | 0x200 | 0x46000000; - GX_WRITE_RAS_REG(reg); - - // __GXInitRevisionBits(); - - // for (i = 0; i < 8; i++) { - // GXInitTexCacheRegion(&gx->TexRegions0[i], GX_FALSE, GXTexRegionAddrTable[i], - // GX_TEXCACHE_32K, GXTexRegionAddrTable[i + 8], GX_TEXCACHE_32K); - // GXInitTexCacheRegion(&gx->TexRegions1[i], GX_FALSE, GXTexRegionAddrTable[i + 16], - // GX_TEXCACHE_32K, GXTexRegionAddrTable[i + 24], GX_TEXCACHE_32K); - // GXInitTexCacheRegion(&gx->TexRegions2[i], GX_TRUE, GXTexRegionAddrTable[i + 32], - // GX_TEXCACHE_32K, GXTexRegionAddrTable[i + 40], GX_TEXCACHE_32K); - // } - - // for (i = 0; i < 16; i++) { - // GXInitTlutRegion(&gx->TlutRegions[i], 0xC0000 + 0x2000 * i, GX_TLUT_256); - // } - - // for (i = 0; i < 4; i++) { - // GXInitTlutRegion(&gx->TlutRegions[i + 16], 0xE0000 + 0x8000 * i, GX_TLUT_1K); - // } - - { - u32 reg = 0; -#if DEBUG - s32 regAddr; -#endif - GX_SET_CP_REG(3, reg); - - SET_REG_FIELD(0, gx->perfSel, 4, 4, 0); - GX_WRITE_U8(0x8); - GX_WRITE_U8(0x20); - GX_WRITE_U32(gx->perfSel); -#if DEBUG - regAddr = -12; -#endif - - reg = 0; - GX_WRITE_XF_REG(6, reg); - - reg = 0x23000000; - GX_WRITE_RAS_REG(reg); - - reg = 0x24000000; - GX_WRITE_RAS_REG(reg); - - reg = 0x67000000; - GX_WRITE_RAS_REG(reg); - } - - __GXSetIndirectMask(0); - __GXSetTmemConfig(2); - __GXInitGX(); - - return &FifoObj; + __GXSetTmemConfig(0); + __GXInitGX(); + return &FifoObj; } void __GXInitGX() diff --git a/src/dolphin/mtx/mtx.c b/src/dolphin/mtx/mtx.c index a8f2bb06..eb16a64f 100644 --- a/src/dolphin/mtx/mtx.c +++ b/src/dolphin/mtx/mtx.c @@ -3,6 +3,8 @@ static f32 Unit01[] = { 0.0f, 1.0f }; extern f32 sinf(f32); +extern f32 cosf(f32); +extern f32 tanf(f32); void C_MTXIdentity(Mtx mtx) { @@ -648,12 +650,12 @@ void C_MTXRotRad(Mtx m, char axis, f32 rad) #ifdef GEKKO void PSMTXRotRad(Mtx m, char axis, f32 rad) { - // f32 sinA, cosA; + f32 sinA, cosA; - // sinA = sinf(rad); - // cosA = cosf(rad); + sinA = sinf(rad); + cosA = cosf(rad); - // PSMTXRotTrig(m, axis, sinA, cosA); + PSMTXRotTrig(m, axis, sinA, cosA); } #endif @@ -717,68 +719,63 @@ void C_MTXRotTrig(Mtx m, char axis, f32 sinA, f32 cosA) #ifdef GEKKO void PSMTXRotTrig(register Mtx m, register char axis, register f32 sinA, register f32 cosA) { -// register f32 fc0, fc1, nsinA; -// register f32 fw0, fw1, fw2, fw3; -// // clang-format off -// asm -// { -// frsp sinA, sinA -// frsp cosA, cosA -// } + register f32 fc0, fc1, nsinA; + register f32 fw0, fw1, fw2, fw3; + // clang-format off -// fc0 = 0.0F; -// fc1 = 1.0F; -// asm -// { -// ori axis, axis, 0x20 -// ps_neg nsinA, sinA -// cmplwi axis, 'x' -// beq _case_x -// cmplwi axis, 'y' -// beq _case_y -// cmplwi axis, 'z' -// beq _case_z -// b _end + fc0 = 0.0F; + fc1 = 1.0F; + asm + { + ori axis, axis, 0x20 + ps_neg nsinA, sinA + cmplwi axis, 'x' + beq _case_x + cmplwi axis, 'y' + beq _case_y + cmplwi axis, 'z' + beq _case_z + b _end -// _case_x: -// psq_st fc1, 0(m), 1, 0 -// psq_st fc0, 4(m), 0, 0 -// ps_merge00 fw0, sinA, cosA -// psq_st fc0, 12(m), 0, 0 -// ps_merge00 fw1, cosA, nsinA -// psq_st fc0, 28(m), 0, 0 -// psq_st fc0, 44(m), 1, 0 -// psq_st fw0, 36(m), 0, 0 -// psq_st fw1, 20(m), 0, 0 -// b _end; +_case_x: + psq_st fc1, 0(m), 1, 0 + psq_st fc0, 4(m), 0, 0 + ps_merge00 fw0, sinA, cosA + psq_st fc0, 12(m), 0, 0 + ps_merge00 fw1, cosA, nsinA + psq_st fc0, 28(m), 0, 0 + psq_st fc0, 44(m), 1, 0 + psq_st fw0, 36(m), 0, 0 + psq_st fw1, 20(m), 0, 0 + b _end; -// _case_y: -// ps_merge00 fw0, cosA, fc0 -// ps_merge00 fw1, fc0, fc1 -// psq_st fc0, 24(m), 0, 0 -// psq_st fw0, 0(m), 0, 0 -// ps_merge00 fw2, nsinA, fc0 -// ps_merge00 fw3, sinA, fc0 -// psq_st fw0, 40(m), 0, 0; -// psq_st fw1, 16(m), 0, 0; -// psq_st fw3, 8(m), 0, 0; -// psq_st fw2, 32(m), 0, 0; -// b _end; +_case_y: + ps_merge00 fw0, cosA, fc0 + ps_merge00 fw1, fc0, fc1 + psq_st fc0, 24(m), 0, 0 + psq_st fw0, 0(m), 0, 0 + ps_merge00 fw2, nsinA, fc0 + ps_merge00 fw3, sinA, fc0 + psq_st fw0, 40(m), 0, 0; + psq_st fw1, 16(m), 0, 0; + psq_st fw3, 8(m), 0, 0; + psq_st fw2, 32(m), 0, 0; + b _end; -// _case_z: -// psq_st fc0, 8(m), 0, 0 -// ps_merge00 fw0, sinA, cosA -// ps_merge00 fw2, cosA, nsinA -// psq_st fc0, 24(m), 0, 0 -// psq_st fc0, 32(m), 0, 0 -// ps_merge00 fw1, fc1, fc0 -// psq_st fw0, 16(m), 0, 0 -// psq_st fw2, 0(m), 0, 0 -// psq_st fw1, 40(m), 0, 0 +_case_z: + psq_st fc0, 8(m), 0, 0 + ps_merge00 fw0, sinA, cosA + ps_merge00 fw2, cosA, nsinA + psq_st fc0, 24(m), 0, 0 + psq_st fc0, 32(m), 0, 0 + ps_merge00 fw1, fc1, fc0 + psq_st fw0, 16(m), 0, 0 + psq_st fw2, 0(m), 0, 0 + psq_st fw1, 40(m), 0, 0 -// _end: -// } -// // clang-format on +_end: + } + // clang-format on } #endif @@ -822,70 +819,58 @@ void C_MTXRotAxisRad(Mtx m, const Vec *axis, f32 rad) } #ifdef GEKKO -static void __PSMTXRotAxisRadInternal(register Mtx m, const register Vec *axis, register f32 sT, register f32 cT) +#define qr0 0 + +void PSMTXRotAxisRad(register Mtx m, const Vec *axis, register f32 rad) { - register f32 tT, fc0; register f32 tmp0, tmp1, tmp2, tmp3, tmp4; register f32 tmp5, tmp6, tmp7, tmp8, tmp9; - tmp9 = 0.5F; - tmp8 = 3.0F; - // clang-format off - asm - { - frsp cT, cT - psq_l tmp0, 0(axis), 0, 0 - frsp sT, sT - lfs tmp1, 8(axis) - ps_mul tmp2, tmp0, tmp0 - fadds tmp7, tmp9, tmp9 - ps_madd tmp3, tmp1, tmp1, tmp2 - fsubs fc0, tmp9, tmp9 - ps_sum0 tmp4, tmp3, tmp1, tmp2 - fsubs tT, tmp7, cT - frsqrte tmp5, tmp4 - fmuls tmp2, tmp5, tmp5 - fmuls tmp3, tmp5, tmp9 - fnmsubs tmp2, tmp2, tmp4, tmp8 - fmuls tmp5, tmp2, tmp3 - ps_merge00 cT, cT, cT - ps_muls0 tmp0, tmp0, tmp5 - ps_muls0 tmp1, tmp1, tmp5 - ps_muls0 tmp4, tmp0, tT - ps_muls0 tmp9, tmp0, sT - ps_muls0 tmp5, tmp1, tT - ps_muls1 tmp3, tmp4, tmp0 - ps_muls0 tmp2, tmp4, tmp0 - ps_muls0 tmp4, tmp4, tmp1 - fnmsubs tmp6, tmp1, sT, tmp3 - fmadds tmp7, tmp1, sT, tmp3 - ps_neg tmp0, tmp9 - ps_sum0 tmp8, tmp4, fc0, tmp9 - ps_sum0 tmp2, tmp2, tmp6, cT - ps_sum1 tmp3, cT, tmp7, tmp3 - ps_sum0 tmp6, tmp0, fc0 ,tmp4 - psq_st tmp8, 8(m), 0, 0 - ps_sum0 tmp0, tmp4, tmp4, tmp0 - psq_st tmp2, 0(m), 0, 0 - ps_muls0 tmp5, tmp5, tmp1 - psq_st tmp3, 16(m), 0, 0 - ps_sum1 tmp4, tmp9, tmp0, tmp4 - psq_st tmp6, 24(m), 0, 0 - ps_sum0 tmp5, tmp5, fc0, cT - psq_st tmp4, 32(m), 0, 0 - psq_st tmp5, 40(m), 0, 0 + register f32 sT; + register f32 cT; + register f32 oneMinusCosT; + register f32 zero; + Vec axisNormalized; + register Vec *axisNormalizedPtr; + + zero = 0.0f; + axisNormalizedPtr = &axisNormalized; + sT = sinf(rad); + cT = cosf(rad); + oneMinusCosT = 1.0f - cT; + + PSVECNormalize(axis, axisNormalizedPtr); + +#ifdef __MWERKS__ // clang-format off + asm { + psq_l rad, 0x0(axisNormalizedPtr), 0, qr0 + lfs tmp1, 0x8(axisNormalizedPtr) + ps_merge00 tmp0, cT, cT + ps_muls0 tmp4, rad, oneMinusCosT + ps_muls0 tmp5, tmp1, oneMinusCosT + ps_muls1 tmp3, tmp4, rad + ps_muls0 tmp2, tmp4, rad + ps_muls0 rad, rad, sT + ps_muls0 tmp4, tmp4, tmp1 + fnmsubs tmp6, tmp1, sT, tmp3 + fmadds tmp7, tmp1, sT, tmp3 + ps_neg tmp9, rad + ps_sum0 tmp8, tmp4, zero, rad + ps_sum0 tmp2, tmp2, tmp6, tmp0 + ps_sum1 tmp3, tmp0, tmp7, tmp3 + ps_sum0 tmp6, tmp9, zero, tmp4 + ps_sum0 tmp9, tmp4, tmp4, tmp9 + psq_st tmp8, 0x8(m), 0, qr0 + ps_muls0 tmp5, tmp5, tmp1 + psq_st tmp2, 0x0(m), 0, qr0 + ps_sum1 tmp4, rad, tmp9, tmp4 + psq_st tmp3, 0x10(m), 0, qr0 + ps_sum0 tmp5, tmp5, zero, tmp0 + psq_st tmp6, 0x18(m), 0, qr0 + psq_st tmp4, 0x20(m), 0, qr0 + psq_st tmp5, 0x28(m), 0, qr0 } - // clang-format on -} - -void PSMTXRotAxisRad(Mtx m, const Vec *axis, f32 rad) -{ - // f32 sinT, cosT; - - // sinT = sinf(rad); - // cosT = cosf(rad); - - // __PSMTXRotAxisRadInternal(m, axis, sinT, cosT); +#endif // clang-format on } #endif @@ -1219,30 +1204,30 @@ void PSMTXReflect(register Mtx m, const register Vec *p, const register Vec *n) void C_MTXLookAt(Mtx m, const Point3d *camPos, const Vec *camUp, const Point3d *target) { - // Vec vLook, vRight, vUp; + Vec vLook, vRight, vUp; - // vLook.x = camPos->x - target->x; - // vLook.y = camPos->y - target->y; - // vLook.z = camPos->z - target->z; - // VECNormalize(&vLook, &vLook); - // VECCrossProduct(camUp, &vLook, &vRight); - // VECNormalize(&vRight, &vRight); - // VECCrossProduct(&vLook, &vRight, &vUp); + vLook.x = camPos->x - target->x; + vLook.y = camPos->y - target->y; + vLook.z = camPos->z - target->z; + VECNormalize(&vLook, &vLook); + VECCrossProduct(camUp, &vLook, &vRight); + VECNormalize(&vRight, &vRight); + VECCrossProduct(&vLook, &vRight, &vUp); - // m[0][0] = vRight.x; - // m[0][1] = vRight.y; - // m[0][2] = vRight.z; - // m[0][3] = -(camPos->x * vRight.x + camPos->y * vRight.y + camPos->z * vRight.z); + m[0][0] = vRight.x; + m[0][1] = vRight.y; + m[0][2] = vRight.z; + m[0][3] = -(camPos->x * vRight.x + camPos->y * vRight.y + camPos->z * vRight.z); - // m[1][0] = vUp.x; - // m[1][1] = vUp.y; - // m[1][2] = vUp.z; - // m[1][3] = -(camPos->x * vUp.x + camPos->y * vUp.y + camPos->z * vUp.z); + m[1][0] = vUp.x; + m[1][1] = vUp.y; + m[1][2] = vUp.z; + m[1][3] = -(camPos->x * vUp.x + camPos->y * vUp.y + camPos->z * vUp.z); - // m[2][0] = vLook.x; - // m[2][1] = vLook.y; - // m[2][2] = vLook.z; - // m[2][3] = -(camPos->x * vLook.x + camPos->y * vLook.y + camPos->z * vLook.z); + m[2][0] = vLook.x; + m[2][1] = vLook.y; + m[2][2] = vLook.z; + m[2][3] = -(camPos->x * vLook.x + camPos->y * vLook.y + camPos->z * vLook.z); } void C_MTXLightFrustum(Mtx m, float t, float b, float l, float r, float n, float scaleS, float scaleT, float transS, float transT) @@ -1269,28 +1254,28 @@ void C_MTXLightFrustum(Mtx m, float t, float b, float l, float r, float n, float void C_MTXLightPerspective(Mtx m, f32 fovY, f32 aspect, float scaleS, float scaleT, float transS, float transT) { - // f32 angle; - // f32 cot; + f32 angle; + f32 cot; - // angle = fovY * 0.5f; - // angle = MTXDegToRad(angle); + angle = fovY * 0.5f; + angle = MTXDegToRad(angle); - // cot = 1.0f / tanf(angle); + cot = 1.0f / tanf(angle); - // m[0][0] = (cot / aspect) * scaleS; - // m[0][1] = 0.0f; - // m[0][2] = -transS; - // m[0][3] = 0.0f; + m[0][0] = (cot / aspect) * scaleS; + m[0][1] = 0.0f; + m[0][2] = -transS; + m[0][3] = 0.0f; - // m[1][0] = 0.0f; - // m[1][1] = cot * scaleT; - // m[1][2] = -transT; - // m[1][3] = 0.0f; + m[1][0] = 0.0f; + m[1][1] = cot * scaleT; + m[1][2] = -transT; + m[1][3] = 0.0f; - // m[2][0] = 0.0f; - // m[2][1] = 0.0f; - // m[2][2] = -1.0f; - // m[2][3] = 0.0f; + m[2][0] = 0.0f; + m[2][1] = 0.0f; + m[2][2] = -1.0f; + m[2][3] = 0.0f; } void C_MTXLightOrtho(Mtx m, f32 t, f32 b, f32 l, f32 r, float scaleS, float scaleT, float transS, float transT) diff --git a/src/dolphin/mtx/quat.c b/src/dolphin/mtx/quat.c index 66964bf0..f3e15a87 100644 --- a/src/dolphin/mtx/quat.c +++ b/src/dolphin/mtx/quat.c @@ -1,3 +1,4 @@ +#include "dolphin/math.h" #include "dolphin/mtx.h" float acosf(float x); @@ -5,6 +6,28 @@ float acosf(float x); float sinf(float x); float cosf(float x); +void C_QUATAdd(const Quaternion *p, const Quaternion *q, Qtrn *r) +{ + r->x = p->x + q->x; + r->y = p->y + q->y; + r->z = p->z + q->z; + r->w = p->w + q->w; +} + +void PSQUATAdd(register const Quaternion *p, register const Quaternion *q, register Quaternion *r) +{ + asm { + psq_l f0, 0x0(r3), 0, 0 + psq_l f1, 0x0(r4), 0, 0 + ps_add f0, f0, f1 + psq_st f0, 0x0(r5), 0, 0 + psq_l f0, 0x8(r3), 0, 0 + psq_l f1, 0x8(r4), 0, 0 + ps_add f0, f0, f1 + psq_st f0, 0x8(r5), 0, 0 + } +} + void PSQUATMultiply(register const Quaternion *a, register const Quaternion *b, register Quaternion *ab) { asm { @@ -33,6 +56,77 @@ void PSQUATMultiply(register const Quaternion *a, register const Quaternion *b, } } +void PSQUATNormalize(const register Quaternion *src, register Quaternion *unit) +{ + // sdata2 + (void)0.00001f; + (void)0.0f; + (void)0.5; + (void)3.0; + (void)1.0f; + (void)0.5f; + (void)3.0f; + { + register f32 vv1, vv2, vv3; + register f32 vv4, vv5, vv6; + register f32 vv7, vv8; + register f32 vv9 = 0.00001f; + register f32 vvA = 0.5F; + register f32 vvB = 3.0F; + asm + { + psq_l vv1, 0(src), 0, 0; + ps_mul vv3, vv1, vv1; + psq_l vv2, 8(src), 0, 0; + ps_sub vv6, vv9, vv9; + ps_madd vv3, vv2, vv2, vv3; + ps_sum0 vv3, vv3, vv3, vv3; + frsqrte vv4, vv3; + ps_sub vv5, vv3, vv9; + fmul vv7, vv4, vv4; + fmul vv8, vv4, vvA; + fnmsub vv7, vv7, vv3, vvB; + fmul vv4, vv7, vv8; + ps_sel vv4, vv5, vv4, vv6; + ps_muls0 vv1, vv1, vv4; + ps_muls0 vv2, vv2, vv4; + psq_st vv1, 0(unit), 0, 0; + psq_st vv2, 8(unit), 0, 0; + } + } +} + +void PSQUATInverse(const register Quaternion *src, register Quaternion *inv) +{ + register f32 vv1, vv2, vv3, vv4; + register f32 vv5, vv6, vv7, vv8, vv9, vvA, vvB; + register f32 vvC = 1.0F; + asm { + psq_l vv1, 0(src), 0, 0; + ps_mul vv5, vv1, vv1; + psq_l vv2, 8(src), 0, 0; + ps_madd vv5, vv2, vv2, vv5; + ps_add vvA, vvC, vvC; + ps_sum0 vv5, vv5, vv5, vv5; + fres vv7, vv5; + ps_neg vv6, vv5; + ps_nmsub vv9, vv5, vv7, vvA; + ps_mul vv7, vv7, vv9; + ps_sel vv7, vv6, vvC, vv7 + b loc1; + loc0: + fmr vv7, vvC; + loc1: + ps_neg vv8, vv7; + ps_muls1 vv4, vv7, vv2; + ps_muls0 vv1, vv1, vv8; + psq_st vv4, 12(inv), 1, 0; + ps_muls0 vv3, vv2, vv8; + psq_st vv1, 0(inv), 0, 0; + psq_st vv3, 8(inv), 1, 0; + } +} + void C_QUATRotAxisRad(Quaternion *q, const Vec *axis, f32 rad) { f32 tmp, tmp2, tmp3; @@ -52,6 +146,42 @@ void C_QUATRotAxisRad(Quaternion *q, const Vec *axis, f32 rad) q->w = tmp3; } +void C_QUATMtx(Quaternion *r, const Mtx m) +{ + f32 vv0, vv1; + s32 i, j, k; + s32 idx[3] = { 1, 2, 0 }; + f32 vec[3]; + vv0 = m[0][0] + m[1][1] + m[2][2]; + if (vv0 > 0.0f) { + vv1 = (f32)sqrtf(vv0 + 1.0f); + r->w = vv1 * 0.5f; + vv1 = 0.5f / vv1; + r->x = (m[2][1] - m[1][2]) * vv1; + r->y = (m[0][2] - m[2][0]) * vv1; + r->z = (m[1][0] - m[0][1]) * vv1; + } + else { + i = 0; + if (m[1][1] > m[0][0]) + i = 1; + if (m[2][2] > m[i][i]) + i = 2; + j = idx[i]; + k = idx[j]; + vv1 = (f32)sqrtf((m[i][i] - (m[j][j] + m[k][k])) + 1.0f); + vec[i] = vv1 * 0.5f; + if (vv1 != 0.0f) + vv1 = 0.5f / vv1; + r->w = (m[k][j] - m[j][k]) * vv1; + vec[j] = (m[i][j] + m[j][i]) * vv1; + vec[k] = (m[i][k] + m[k][i]) * vv1; + r->x = vec[0]; + r->y = vec[1]; + r->z = vec[2]; + } +} + void C_QUATSlerp(const Quaternion *p, const Quaternion *q, Quaternion *r, f32 t) { f32 ratioA, ratioB; diff --git a/src/dolphin/mtx/vec.c b/src/dolphin/mtx/vec.c index 985a6196..de5ad450 100644 --- a/src/dolphin/mtx/vec.c +++ b/src/dolphin/mtx/vec.c @@ -210,23 +210,23 @@ void C_VECHalfAngle(const Vec *a, const Vec *b, Vec *half) void C_VECReflect(const Vec *src, const Vec *normal, Vec *dst) { - // Vec a0; - // Vec b0; - // f32 dot; + Vec a0; + Vec b0; + f32 dot; - // a0.x = -src->x; - // a0.y = -src->y; - // a0.z = -src->z; + a0.x = -src->x; + a0.y = -src->y; + a0.z = -src->z; - // VECNormalize(&a0, &a0); - // VECNormalize(normal, &b0); + VECNormalize(&a0, &a0); + VECNormalize(normal, &b0); - // dot = VECDotProduct(&a0, &b0); - // dst->x = b0.x * 2.0f * dot - a0.x; - // dst->y = b0.y * 2.0f * dot - a0.y; - // dst->z = b0.z * 2.0f * dot - a0.z; + dot = VECDotProduct(&a0, &b0); + dst->x = b0.x * 2.0f * dot - a0.x; + dst->y = b0.y * 2.0f * dot - a0.y; + dst->z = b0.z * 2.0f * dot - a0.z; - // VECNormalize(dst, dst); + VECNormalize(dst, dst); } asm f32 PSVECSquareDistance(register const Vec *a, register const Vec *b) { diff --git a/src/dolphin/pad/Padclamp.c b/src/dolphin/pad/Padclamp.c index a96d75c4..bdc9af39 100644 --- a/src/dolphin/pad/Padclamp.c +++ b/src/dolphin/pad/Padclamp.c @@ -103,17 +103,34 @@ static void ClampTrigger(u8 *trigger, u8 min, u8 max) } } -void PADClamp(PADStatus *status) +void PADClamp(PADStatus* status) { - // int i; - // for (i = 0; i < PAD_CHANMAX; i++, status++) { - // if (status->err != PAD_ERR_NONE) { - // continue; - // } + int i; + for (i = 0; i < PAD_CHANMAX; i++, status++) { + if (status->err != PAD_ERR_NONE) { + continue; + } - // ClampStick(&status->stickX, &status->stickY, ClampRegion.maxStick, ClampRegion.xyStick, ClampRegion.minStick); - // ClampStick(&status->substickX, &status->substickY, ClampRegion.maxSubstick, ClampRegion.xySubstick, ClampRegion.minSubstick); - // ClampTrigger(&status->triggerL, ClampRegion.minTrigger, ClampRegion.maxTrigger); - // ClampTrigger(&status->triggerR, ClampRegion.minTrigger, ClampRegion.maxTrigger); - // } + ClampStick(&status->stickX, &status->stickY, ClampRegion.maxStick, + ClampRegion.xyStick, ClampRegion.minStick); + ClampStick(&status->substickX, &status->substickY, + ClampRegion.maxSubstick, ClampRegion.xySubstick, + ClampRegion.minSubstick); + if (status->triggerL <= ClampRegion.minTrigger) { + status->triggerL = 0; + } else { + if (ClampRegion.maxTrigger < status->triggerL) { + status->triggerL = ClampRegion.maxTrigger; + } + status->triggerL -= ClampRegion.minTrigger; + } + if (status->triggerR <= ClampRegion.minTrigger) { + status->triggerR = 0; + } else { + if (ClampRegion.maxTrigger < status->triggerR) { + status->triggerR = ClampRegion.maxTrigger; + } + status->triggerR -= ClampRegion.minTrigger; + } + } } From f812abd06f3aeeaa79a02271df75c11fbc933f2c Mon Sep 17 00:00:00 2001 From: mrshigure Date: Mon, 13 Jan 2025 06:48:07 -0800 Subject: [PATCH 118/178] Matched most of msmse and msmmus (3 functions left) (#526) * Matched most of msmse (1 function left) * Matched most of msmmus (2 functions left) --- configure.py | 2 +- include/game/msm.h | 10 +- include/msm/msmmus.h | 19 +- include/msm/msmse.h | 21 +- include/msm/msmsys.h | 122 ++++++++++ src/msm/msmmus.c | 342 ++++++++++++++++++++++++++++ src/msm/msmse.c | 514 +++++++++++++++++++++++++++++++++++++++++++ src/msm/msmsys.c | 111 +--------- 8 files changed, 1022 insertions(+), 119 deletions(-) create mode 100755 include/msm/msmsys.h create mode 100755 src/msm/msmmus.c create mode 100755 src/msm/msmse.c diff --git a/configure.py b/configure.py index 22c85a12..5c54e7fc 100644 --- a/configure.py +++ b/configure.py @@ -834,7 +834,7 @@ config.libs = [ }, { "lib": "msm", - "mw_version": "GC/1.2.5n", + "mw_version": "GC/1.2.5", "cflags": cflags_msm, "host": False, "objects": [ diff --git a/include/game/msm.h b/include/game/msm.h index 9ab79e8e..5d7dfa11 100644 --- a/include/game/msm.h +++ b/include/game/msm.h @@ -42,9 +42,11 @@ #define MSM_ERR_INITFAIL -20 #define MSM_ERR_INVALID_AUXPARAM -31 #define MSM_ERR_PLAYFAIL -33 +#define MSM_ERR_22 -34 #define MSM_ERR_STREAMALLOC_FAIL -35 #define MSM_ERR_INSTALLED -36 #define MSM_ERR_GRP_NOTLOADED -103 +#define MSM_ERR_6F -111 #define MSM_ERR_INVALIDID -120 #define MSM_ERR_INVALIDFILE -121 #define MSM_ERR_REMOVEDID -122 @@ -173,7 +175,7 @@ s32 msmSysDelGroupBase(s32 grpNum); s32 msmSeSetParam(int seNo, MSM_SEPARAM *param); int msmSePlay(int seId, MSM_SEPARAM *param); s32 msmSeStop(int seNo, s32 speed); -s32 msmSePauseAll(BOOL pause, s32 speed); +void msmSePauseAll(BOOL pause, s32 speed); s32 msmSePause(int seNo, BOOL pause, s32 speed); void msmSeStopAll(BOOL checkGrp, s32 speed); s32 msmSeSetListener(Vec *pos, Vec *heading, float sndDist, float sndSpeed, MSM_SELISTENER *listener); @@ -181,11 +183,11 @@ s32 msmSeUpdataListener(Vec *pos, Vec *heading); void msmSeDelListener(void); s32 msmSeGetStatus(int seNo); s32 msmSeGetNumPlay(BOOL baseGrp); -s32 msmSeGetEntryID(s16 seId, int *seNo); +s32 msmSeGetEntryID(s32 seId, int *seNo); int msmMusPlay(int musId, MSM_MUSPARAM *musParam); s32 msmMusStop(int musNo, s32 speed); -s32 msmMusPauseAll(BOOL pause, s32 speed); +void msmMusPauseAll(BOOL pause, s32 speed); s32 msmMusPause(int musNo, BOOL pause, s32 speed); s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl); void msmMusStopAll(BOOL checkGrp, s32 speed); @@ -200,4 +202,4 @@ s32 msmStreamPause(int streamNo, BOOL pause, s32 speed); void msmStreamStopAll(s32 speed); s32 msmStreamGetStatus(int streamNo); -#endif \ No newline at end of file +#endif diff --git a/include/msm/msmmus.h b/include/msm/msmmus.h index 8d3554fc..a6951063 100644 --- a/include/msm/msmmus.h +++ b/include/msm/msmmus.h @@ -1,10 +1,23 @@ #ifndef MSMMUS_H #define MSMMUS_H -#include "dolphin.h" -#include "dolphin/types.h" +#include "game/msm.h" +#include "msm/msmsys.h" -s32 msmMusInit(s32 *, DVDFileInfo *); +#include "dolphin.h" + +void msmMusFdoutEnd(void); void msmMusPeriodicProc(void); +s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl); +s32 msmMusGetNumPlay(BOOL baseGrp); +s32 msmMusGetStatus(int musNo); +void msmMusSetMasterVolume(s32 arg0); +s32 msmMusSetParam(s32 arg0, MSM_MUSPARAM* arg1); +void msmMusPauseAll(BOOL pause, s32 speed); +s32 msmMusPause(int musNo, BOOL pause, s32 speed); +void msmMusStopAll(BOOL checkGrp, s32 speed); +s32 msmMusStop(int musNo, s32 speed); +int msmMusPlay(int musId, MSM_MUSPARAM* musParam); +s32 msmMusInit(sysData* arg0, DVDFileInfo* arg1); #endif diff --git a/include/msm/msmse.h b/include/msm/msmse.h index 10242362..e017f67e 100644 --- a/include/msm/msmse.h +++ b/include/msm/msmse.h @@ -1,10 +1,25 @@ #ifndef MSMSE_H #define MSMSE_H -#include "dolphin.h" -#include "dolphin/types.h" +#include "game/msm.h" +#include "msm/msmsys.h" + +#include "dolphin.h" -s32 msmSeInit(s32 *, DVDFileInfo *); void msmSePeriodicProc(void); +MSMSE* msmSeGetIndexPtr(s32 arg0); +void msmSeDelListener(void); +s32 msmSeUpdataListener(Vec* pos, Vec* heading); +s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_SELISTENER* listener); +s32 msmSeGetEntryID(s32 seId, int* seNo); +s32 msmSeGetNumPlay(BOOL baseGrp); +s32 msmSeGetStatus(int seNo); +void msmSeSetMasterVolume(s32 arg0); +s32 msmSeSetParam(int seNo, MSM_SEPARAM* param); +void msmSePauseAll(BOOL pause, s32 speed); +void msmSeStopAll(BOOL checkGrp, s32 speed); +s32 msmSeStop(int seNo, s32 speed); +int msmSePlay(int seId, MSM_SEPARAM *param); +s32 msmSeInit(sysData* arg0, DVDFileInfo* arg1); #endif diff --git a/include/msm/msmsys.h b/include/msm/msmsys.h new file mode 100755 index 00000000..fbd36f7e --- /dev/null +++ b/include/msm/msmsys.h @@ -0,0 +1,122 @@ +#ifndef MSMSYS_H +#define MSMSYS_H + +#include "dolphin.h" + +typedef struct _unkSubStruct { + s8 unk0; + union { + f32 unk4f[9]; + s32 unk4s[9]; + }; +} unkSubStruct; + +typedef struct _unkSubStruct2 { + char unk[0x3C]; + s32 unk3C; + s32 unk40; + s32 unk44; + s32 unk48; + s32 unk4C; + s32 unk50; + s32 unk54; + s32 unk58; + s32 unk5C; + char unk60[0x30]; + s32 unk90; + s32 unk94; + s32 unk98; + char unk9C[0xA0]; + u8 unk13C; + f32 unk140; + f32 unk144; + f32 unk148; + f32 unk14C; + f32 unk150; + char unk154[0x70]; + u8 unk1C4; + f32 unk1C8; + f32 unk1CC; + f32 unk1D0; + f32 unk1D4; + f32 unk1D8; + f32 unk1DC; +} unkSubStruct2; // sizeof unk1E0 + +typedef struct _unkSubStruct3 { + char unk[0x4]; + s32 unk4; + char unk8[0x8]; + s32 unk10; // offset + u32 unk14; // length + s32 unk18; // offset + u32 unk1C; // length + char unk20[8]; + s32 unk28; + s32 unk2C; + s32 unk30; + s32 unk34; + s32 unk38; + char unk3C[4]; + s32 unk40; + char unk44[4]; + s32 unk48; + char unk4C[0x14]; +} unkSubStruct3; // sizeof 0x60 + +typedef struct _unkStruct3 { + s32 unk0; + s32 unk4; + s32 unk8; +} unkStruct3; + +typedef struct _sndInitData { + s8 unk0; + s8 unk1; + s8 unk2; + char unk3[1]; + s16 unk4; + s16 unk6; + s8 unk8; + char unk9[5]; + s8 unkE; + s8 unkF; + u32 unk10; + s32 unk14; + char unk18[8]; + s32 unk20; + char unk24[5]; + s8 unk29[10]; // size unknown +} sndInitData; + +typedef struct _sysData { + s32 unk0; + s8 unk4; + s8 unk5; + s8 unk6; + s8 unk7; + s32 unk8; + unkSubStruct3 *unkC; + sndInitData *unk10; + unkSubStruct *unk14; + s8 unk18; + s8 unk19; + s8 unk1A; + s8 unk1B; + unkSubStruct2 unk1C; // userA + unkSubStruct2 unk1FC; // userB + char unk3DC[0x8]; + s32 unk3E4; + s32 unk3E8; + s32 unk3EC; + s32 unk3F0; + s8 unk3F4; + unkStruct3 *unk3F8; + char unk3FC[0xF0]; + s32 unk4EC; + BOOL unk4F0; + AIDCallback unk4F4; + s32 unk4F8; +} sysData; + +#endif diff --git a/src/msm/msmmus.c b/src/msm/msmmus.c new file mode 100755 index 00000000..8f87e7a5 --- /dev/null +++ b/src/msm/msmmus.c @@ -0,0 +1,342 @@ +#include "msm/msmmus.h" + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ s8 unk02; + /* 0x03 */ s8 unk03; + /* 0x04 */ s8 unk04; + /* 0x05 */ s8 unk05; + /* 0x06 */ char unk06[2]; + /* 0x08 */ SND_SEQID unk08; + /* 0x0C */ void* unk0C; + /* 0x10 */ void* unk10; + /* 0x14 */ volatile s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s8 unk1C; + /* 0x1D */ char unk1D[3]; + /* 0x20 */ volatile s32 unk20; + /* 0x24 */ s32 unk24; + /* 0x28 */ s8 unk28; + /* 0x29 */ char unk29[3]; + /* 0x2C */ volatile s32 unk2C; + /* 0x30 */ s32 unk30; + /* 0x34 */ char unk34[1]; + /* 0x35 */ volatile s8 unk35; + /* 0x36 */ s8 unk36; + /* 0x37 */ char unk37[1]; + /* 0x38 */ SND_PLAYPARA unk38; +} msmMusStruct00; // Size 0x58 + +typedef struct { + /* 0x00 */ u16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s8 unk0C; + /* 0x0D */ s8 unk0D; + /* 0x0E */ char unk0E[2]; +} msmMusStruct01; // Size 0x10 + +typedef struct { + /* 0x000 */ s16 unk00; + /* 0x002 */ s8 unk02; + /* 0x003 */ s8 unk03; + /* 0x004 */ s8 unk04; + /* 0x005 */ char unk05[3]; + /* 0x008 */ s32 unk08; + /* 0x00C */ msmMusStruct01* unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ void* unk14; + /* 0x018 */ msmMusStruct00 unk18[1]; // unknown length + /* 0x01C */ char unk70[0x108]; +} msmMusStruct02; // Size 0x178 + +static msmMusStruct02 mus; + +static void msmMusPauseSub(msmMusStruct00* arg0, BOOL pause, s32 speed) { + s32 temp_r30; + + temp_r30 = speed / 15; + if (pause) { + if (arg0->unk04 == 2) { + if (temp_r30 != 0) { + arg0->unk24 = temp_r30; + arg0->unk20 = temp_r30; + arg0->unk28 = 0x7F; + } else { + sndSeqPause(arg0->unk08); + arg0->unk28 = 0; + } + arg0->unk04 = 3; + } + } else { + if (arg0->unk04 == 3) { + if (temp_r30 != 0) { + if (arg0->unk20 != 0) { + arg0->unk20 = -temp_r30; + } else { + sndSeqContinue(arg0->unk08); + arg0->unk20 = -temp_r30; + arg0->unk24 = 0; + arg0->unk28 = 0; + } + } else { + sndSeqContinue(arg0->unk08); + arg0->unk28 = 0x7F; + sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + } + arg0->unk04 = 2; + } + } +} + +static void msmMusPauseFade(msmMusStruct00* arg0) { + if (arg0->unk20 > 0) { + if (--arg0->unk24 == 0) { + arg0->unk20 = 0; + arg0->unk28 = 0; + sndSeqPause(arg0->unk08); + } else { + arg0->unk28 = arg0->unk24 * 0x7F / arg0->unk20; + sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + } + } else if (arg0->unk20 < 0) { + if (++arg0->unk24 >= -arg0->unk20) { + arg0->unk20 = 0; + arg0->unk28 = 0x7F; + } else { + arg0->unk28 = arg0->unk24 * 0x7F / -arg0->unk20; + } + sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + } +} + +static void msmMusFade(msmMusStruct00* arg0) { + if (arg0->unk04 != 2) { + return; + } + if (arg0->unk14 > 0) { + if (--arg0->unk18 == 0) { + if (arg0->unk04 != 0) { + arg0->unk14 = 0; + if (arg0->unk14 != 0) { + arg0->unk18 = arg0->unk14; + arg0->unk1C = 0x7F; + } else { + sndSeqStop(arg0->unk08); + arg0->unk04 = 1; + } + } + } else { + arg0->unk1C = arg0->unk18 * 0x7F / arg0->unk14; + sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + } + } else if (arg0->unk14 < 0) { + if (++arg0->unk18 >= -arg0->unk14) { + arg0->unk14 = 0; + arg0->unk1C = 0x7F; + } else { + arg0->unk1C = arg0->unk18 * 0x7F / -arg0->unk14; + } + sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + } +} + +void msmMusFdoutEnd(void) { +} + +void msmMusPeriodicProc(void) { + s32 var_r26; + msmMusStruct00* temp_r25; + + mus.unk04 = mus.unk03 = 0; + for (var_r26 = 0; var_r26 < mus.unk02; var_r26++) { + temp_r25 = &mus.unk18[var_r26]; + if (temp_r25->unk05 != 0) { + continue; + } + switch (temp_r25->unk04) { + case 1: + case 2: + if (sndSeqGetValid(temp_r25->unk08) == FALSE) { + temp_r25->unk04 = 0; + } + break; + } + if (temp_r25->unk04 == 0) { + continue; + } + if (msmSysCheckBaseGroup(mus.unk0C[temp_r25->unk00].unk00) != 0) { + mus.unk04++; + } else { + mus.unk03++; + } + msmMusPauseFade(temp_r25); + if (temp_r25->unk04 == 2 && temp_r25->unk2C != 0) { + if (++temp_r25->unk30 >= temp_r25->unk2C) { + temp_r25->unk2C = 0; + temp_r25->unk02 = temp_r25->unk36; + } else { + temp_r25->unk02 = temp_r25->unk35 + temp_r25->unk30 * (temp_r25->unk36 - temp_r25->unk35) / temp_r25->unk2C; + } + sndSeqVolume(temp_r25->unk02 * temp_r25->unk03 * temp_r25->unk1C * temp_r25->unk28 / 2048383, 0, temp_r25->unk08, 0); + } + msmMusFade(temp_r25); + } +} + +s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl) { + msmMusStruct00* temp_ptr; + + if (musNo < 0 || musNo >= mus.unk02) { + return MSM_ERR_OUTOFMUS; + } + temp_ptr = &mus.unk18[musNo]; + if (sndSeqGetValid(temp_ptr->unk08) == TRUE) { + return sndSeqGetMidiCtrl(temp_ptr->unk08, channel & 0xF, ctrl); + } + return 0; +} + +s32 msmMusGetNumPlay(BOOL baseGrp) { + msmMusStruct02* mus_ptr = &mus; + + switch (baseGrp) { + case FALSE: + return mus_ptr->unk03 + mus_ptr->unk04; + default: + return mus_ptr->unk03; + } +} + +s32 msmMusGetStatus(int musNo) { + if (musNo < 0 || musNo >= mus.unk02) { + return MSM_ERR_OUTOFMUS; + } + return mus.unk18[musNo].unk04; +} + +void msmMusSetMasterVolume(s32 arg0) { + sndMasterVolume(arg0 & 0x7F, 0, 1, 0); +} + +s32 msmMusSetParam(s32 arg0, MSM_MUSPARAM* arg1) { + msmMusStruct00* temp_r31; + + if (arg0 < 0 || arg0 >= mus.unk02) { + return MSM_ERR_OUTOFMUS; + } + temp_r31 = &mus.unk18[arg0]; + if (arg1->flag & 2) { + temp_r31->unk2C = arg1->fadeSpeed / 15; + if (temp_r31->unk2C != 0) { + temp_r31->unk05 = 1; + temp_r31->unk30 = 0; + temp_r31->unk35 = temp_r31->unk02; + temp_r31->unk36 = arg1->vol & 0x7F; + temp_r31->unk05 = 0; + } else { + temp_r31->unk02 = arg1->vol & 0x7F; + sndSeqVolume(temp_r31->unk02 * temp_r31->unk03 * temp_r31->unk1C * temp_r31->unk28 / 2048383, 0, temp_r31->unk08, 0); + } + } + if (arg1->flag & 0x10) { + sndSeqSpeed(temp_r31->unk08, (arg1->speed << 8) / 100); + } + return 0; +} + +void msmMusPauseAll(BOOL pause, s32 speed) { + s32 var_r27; + msmMusStruct00* temp_r26; + + for (var_r27 = 0; var_r27 < mus.unk02; var_r27++) { + temp_r26 = &mus.unk18[var_r27]; + if (temp_r26->unk04 != 0) { + temp_r26->unk05 = 1; + msmMusPauseSub(temp_r26, pause, speed); + temp_r26->unk05 = 0; + } + } +} + +s32 msmMusPause(int musNo, BOOL pause, s32 speed) { + msmMusStruct00* temp_r31; + + if (musNo < 0 || musNo >= mus.unk02) { + return MSM_ERR_OUTOFMUS; + } + temp_r31 = &mus.unk18[musNo]; + temp_r31->unk05 = 1; + msmMusPauseSub(temp_r31, pause, speed); + temp_r31->unk05 = 0; + return 0; +} + +void msmMusStopAll(BOOL checkGrp, s32 speed) { + s32 var_r28; + msmMusStruct00* temp_r27; + + for (var_r28 = 0; var_r28 < mus.unk02; var_r28++) { + temp_r27 = &mus.unk18[var_r28]; + if (temp_r27->unk04 == 0) { + continue; + } + temp_r27->unk05 = 1; + switch (checkGrp) { + case FALSE: + if (temp_r27->unk04 != 0) { + temp_r27->unk14 = speed / 15; + if (temp_r27->unk14 != 0) { + temp_r27->unk18 = temp_r27->unk14; + temp_r27->unk1C = 0x7F; + } else { + sndSeqStop(temp_r27->unk08); + temp_r27->unk04 = 1; + } + } + break; + default: + if (msmSysCheckBaseGroup(mus.unk0C[temp_r27->unk00].unk00) == 0 && temp_r27->unk04 != 0) { + temp_r27->unk14 = speed / 15; + if (temp_r27->unk14 != 0) { + temp_r27->unk18 = temp_r27->unk14; + temp_r27->unk1C = 0x7F; + } else { + sndSeqStop(temp_r27->unk08); + temp_r27->unk04 = 1; + } + } + break; + } + temp_r27->unk05 = 0; + } +} + +s32 msmMusStop(int musNo, s32 speed) { + msmMusStruct00* temp_r30; + + if (musNo < 0 || musNo >= mus.unk02) { + return MSM_ERR_OUTOFMUS; + } + temp_r30 = &mus.unk18[musNo]; + temp_r30->unk05 = 1; + if (temp_r30->unk04 != 0) { + temp_r30->unk14 = speed / 15; + if (temp_r30->unk14 != 0) { + temp_r30->unk18 = temp_r30->unk14; + temp_r30->unk1C = 0x7F; + } else { + sndSeqStop(temp_r30->unk08); + temp_r30->unk04 = 1; + } + } + temp_r30->unk05 = 0; + return 0; +} + +// TODO: https://decomp.me/scratch/PGpbJ +// msmMusPlay + +// TODO: https://decomp.me/scratch/24daZ +// msmMusInit diff --git a/src/msm/msmse.c b/src/msm/msmse.c new file mode 100755 index 00000000..6582a572 --- /dev/null +++ b/src/msm/msmse.c @@ -0,0 +1,514 @@ +#include "msm/msmse.h" +#include "msm/msmfio.h" +#include "msm/msmmem.h" + +typedef struct { + /* 0x00 */ SND_VOICEID unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s16 unk08; + /* 0x0A */ s8 unk0A; + /* 0x0B */ s8 unk0B; + /* 0x0C */ s8 unk0C; + /* 0x0D */ s8 unk0D; + /* 0x0E */ s16 unk0E; + /* 0x10 */ s8 unk10; + /* 0x11 */ s8 unk11; + /* 0x12 */ s8 unk12; + /* 0x13 */ u8 unk13; + /* 0x14 */ SND_PARAMETER_INFO unk14; + /* 0x1C */ SND_PARAMETER unk1C[5]; + /* 0x30 */ s8 unk30; + /* 0x31 */ s8 unk31; + /* 0x32 */ s16 unk32; + /* 0x34 */ volatile s32 unk34; + /* 0x38 */ s32 unk38; + /* 0x3C */ s8 unk3C; + /* 0x3D */ char unk3D[3]; + /* 0x40 */ volatile s32 unk40; + /* 0x44 */ s32 unk44; + /* 0x48 */ s8 unk48; + /* 0x49 */ char unk49[3]; + /* 0x4C */ SND_EMITTER unk4C; + /* 0x9C */ SND_FVECTOR unk9C; + /* 0xA8 */ SND_FVECTOR unkA8; + /* 0xB4 */ s8 unkB4; + /* 0xB5 */ char unkB5[3]; +} msmSeStruct00; // Size 0xB8 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s8 unk04; + /* 0x05 */ s8 unk05; + /* 0x06 */ s8 unk06; + /* 0x07 */ char unk07[1]; + /* 0x08 */ s32 unk08; + /* 0x0C */ MSMSE* unk0C; + /* 0x10 */ msmSeStruct00* unk10; + /* 0x14 */ SND_LISTENER unk14; + /* 0xA4 */ SND_FVECTOR unkA4; + /* 0xB0 */ SND_FVECTOR unkB0; + /* 0xBC */ SND_FVECTOR unkBC; + /* 0xC8 */ SND_FVECTOR unkC8; + /* 0xD4 */ float unkD4; + /* 0xD8 */ u16 unkD8; + /* 0xDA */ u16 unkDA; +} msmSeStruct02; // Size 0xDC + +msmSeStruct02 se; + +static void msmSeFade(msmSeStruct00* arg0) { + u8 temp_r3; + + if (arg0->unk0A == 3) { + return; + } + if (arg0->unk34 > 0) { + if (--arg0->unk38 == 0) { + arg0->unk34 = 0; + arg0->unk34 = 0; + if (arg0->unk34 != 0) { + arg0->unk38 = arg0->unk34; + arg0->unk3C = 0x7F; + } else { + arg0->unk0A = 1; + if ((arg0->unk13 & 1) && arg0->unkB4 == 1) { + sndRemoveEmitter(&arg0->unk4C); + } else { + sndFXKeyOff(arg0->unk00); + } + } + } else { + arg0->unk3C = arg0->unk38 * 0x7F / arg0->unk34; + temp_r3 = arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383; + if ((arg0->unk13 & 1) && arg0->unkB4 == 1) { + arg0->unkA8.x = arg0->unkA8.y = arg0->unkA8.z = 0.0f; + sndUpdateEmitter(&arg0->unk4C, &arg0->unk9C, &arg0->unkA8, temp_r3, NULL); + } else { + sndFXVolume(arg0->unk00, temp_r3); + } + } + } else if (arg0->unk34 < 0) { + if (++arg0->unk38 >= -arg0->unk34) { + arg0->unk34 = 0; + arg0->unk3C = 0x7F; + } else { + arg0->unk3C = arg0->unk38 * 0x7F / -arg0->unk34; + } + temp_r3 = arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383; + if ((arg0->unk13 & 1) && arg0->unkB4 == 1) { + arg0->unkA8.x = arg0->unkA8.y = arg0->unkA8.z = 0.0f; + sndUpdateEmitter(&arg0->unk4C, &arg0->unk9C, &arg0->unkA8, temp_r3, NULL); + } else { + sndFXVolume(arg0->unk00, temp_r3); + } + } +} + +static void msmSePauseSub(msmSeStruct00* arg0, BOOL pause, s32 speed) { + s32 temp_r3; + + temp_r3 = speed / 15; + if (pause) { + if (arg0->unk0A == 2) { + if (temp_r3 != 0) { + arg0->unk40 = arg0->unk44 = temp_r3; + arg0->unk48 = 0x7F; + } else { + arg0->unk48 = 0; + sndFXVolume(arg0->unk00, arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383); + } + arg0->unk0A = 3; + } + } else { + if (arg0->unk0A == 3) { + if (temp_r3 != 0) { + if (arg0->unk40 != 0) { + arg0->unk40 = -temp_r3; + } else { + arg0->unk40 = -temp_r3; + arg0->unk44 = 0; + arg0->unk48 = 0; + } + } else { + arg0->unk48 = 0x7F; + sndFXVolume(arg0->unk00, arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383); + } + arg0->unk0A = 2; + } + } +} + +void msmSePeriodicProc(void) { + s32 var_r26; + msmSeStruct00* temp_r3; + u8 temp_r3_3; + + se.unk05 = se.unk06 = 0; + for (var_r26 = 0; var_r26 < se.unk04; var_r26++) { + temp_r3 = &se.unk10[var_r26]; + if (temp_r3->unk0B != 0) { + continue; + } + switch (temp_r3->unk0A) { + case 1: + case 2: + if ((temp_r3->unk13 & 1) && temp_r3->unkB4 == 1) { + if (!sndCheckEmitter(&temp_r3->unk4C)) { + temp_r3->unk0A = 0; + } + } else { + if (sndFXCheck(temp_r3->unk00) == SND_ID_ERROR) { + temp_r3->unk0A = 0; + } + } + break; + } + if (temp_r3->unk0A == 0) { + continue; + } + if (msmSysCheckBaseGroup(se.unk0C[temp_r3->unk08].groupId) != 0) { + se.unk05++; + } else { + se.unk06++; + } + if (temp_r3->unk40 > 0) { + if (--temp_r3->unk44 == 0) { + temp_r3->unk40 = 0; + temp_r3->unk48 = 0; + } else { + temp_r3->unk48 = temp_r3->unk44 * 0x7F / temp_r3->unk40; + } + } else if (temp_r3->unk40 < 0) { + if (++temp_r3->unk44 >= -temp_r3->unk40) { + temp_r3->unk40 = 0; + temp_r3->unk48 = 0x7F; + } else { + temp_r3->unk48 = temp_r3->unk44 * 0x7F / -temp_r3->unk40; + } + } + temp_r3_3 = temp_r3->unk0C * temp_r3->unk30 * temp_r3->unk3C * temp_r3->unk48 / 2048383; + if ((temp_r3->unk13 & 1) && temp_r3->unkB4 == 1) { + temp_r3->unkA8.x = temp_r3->unkA8.y = temp_r3->unkA8.z = 0.0f; + sndUpdateEmitter(&temp_r3->unk4C, &temp_r3->unk9C, &temp_r3->unkA8, temp_r3_3, NULL); + } else { + sndFXVolume(temp_r3->unk00, temp_r3_3); + } + msmSeFade(temp_r3); + } +} + +MSMSE* msmSeGetIndexPtr(s32 arg0) { + if (arg0 < 0 || arg0 >= se.unk00) { + return NULL; + } + return &se.unk0C[arg0]; +} + +void msmSeDelListener(void) { + if (se.unkDA != 0) { + sndRemoveListener(&se.unk14); + se.unkDA = 0; + } +} + +s32 msmSeUpdataListener(Vec* pos, Vec* heading) { + if (se.unkDA == 0) { + return MSM_ERR_22; + } + se.unkB0.x = pos->x - se.unkA4.x; + se.unkB0.y = pos->y - se.unkA4.y; + se.unkB0.z = pos->z - se.unkA4.z; + se.unkA4.x = pos->x; + se.unkA4.y = pos->y; + se.unkA4.z = pos->z; + se.unkBC.x = heading->x; + se.unkBC.y = heading->y; + se.unkBC.z = heading->z; + if (!sndUpdateListener(&se.unk14, &se.unkA4, &se.unkB0, &se.unkBC, &se.unkC8, 0x7F, NULL)) { + return MSM_ERR_22; + } + return 0; +} + +s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_SELISTENER* listener) { + msmSeStruct02* se_ptr = &se; + SND_FVECTOR* temp_b0; + SND_FVECTOR* temp_a4; + SND_FVECTOR* temp_c8; + SND_FVECTOR* temp_bc; + s32 var_r3; + float var_f4; + float var_f0; + float var_f0_2; + + temp_a4 = &se_ptr->unkA4; + temp_c8 = &se_ptr->unkC8; + temp_bc = &se_ptr->unkBC; + temp_b0 = &se_ptr->unkB0; + temp_a4->x = pos->x; + temp_a4->y = pos->y; + temp_a4->z = pos->z; + temp_c8->x = temp_c8->z = 0.0f; + temp_c8->y = 1.0f; + temp_bc->x = heading->x; + temp_bc->y = heading->y; + temp_bc->z = heading->z; + temp_b0->x = temp_b0->y = temp_b0->z = 0.0f; + se_ptr->unkD4 = sndDist; + var_r3 = (listener != NULL) ? listener->flag : 0; + var_f4 = (var_r3 & 1) ? listener->startDis : 0.0f; + var_f0 = (var_r3 & 2) ? listener->frontSurDis : (var_f4 + sndDist * 0.25f); + var_f0_2 = (var_r3 & 4) ? listener->backSurDis : (var_f4 + sndDist * 0.25f); + if ((s32) sndAddListenerEx(&se_ptr->unk14, temp_a4, temp_b0, temp_bc, temp_c8, + var_f0, var_f0_2, sndSpeed, -var_f4, 1, 0x7F, NULL) == FALSE) + { + se_ptr->unkDA = 0; + return MSM_ERR_22; + } + se_ptr->unkDA = 1; + return 0; +} + +s32 msmSeGetEntryID(s32 seId, int* seNo) { + msmSeStruct00* temp_r8; + s32 var_r9; + s32 var_r10; + + for (var_r9 = var_r10 = 0; var_r9 < se.unk04; var_r9++) { + temp_r8 = &se.unk10[var_r9]; + if (temp_r8->unk0A != 0 && temp_r8->unk08 == seId) { + if (seNo != NULL) { + seNo[var_r10] = temp_r8->unk04; + } + var_r10++; + } + } + return var_r10; +} + +s32 msmSeGetNumPlay(BOOL baseGrp) { + msmSeStruct02* se_ptr = &se; + + switch (baseGrp) { + case FALSE: + return se_ptr->unk06 + se_ptr->unk05; + default: + return se_ptr->unk06; + } +} + +static inline msmSeStruct00* msmSeGetStatus_inline(s32 seNo) { + msmSeStruct00* var_r4; + s32 var_ctr; + + for (var_ctr = 0; var_ctr < se.unk04; var_ctr++) { + var_r4 = &se.unk10[var_ctr]; + if (var_r4->unk0A != 0 && var_r4->unk04 == seNo) { + return var_r4; + } + } + return NULL; +} + +s32 msmSeGetStatus(int seNo) { + msmSeStruct00* var_r4; + + var_r4 = msmSeGetStatus_inline(seNo); + if (var_r4 == NULL) { + return 0; + } + return var_r4->unk0A; +} + +void msmSeSetMasterVolume(s32 arg0) { + sndMasterVolume(arg0 & 0x7F, 0, 0, 1); +} + +s32 msmSeSetParam(int seNo, MSM_SEPARAM* param) { + msmSeStruct00* var_r31; + s32 temp_r3; + s32 var_r0; + s32 var_r4; + + var_r31 = msmSeGetStatus_inline(seNo); + if (var_r31 == NULL) { + return MSM_ERR_6F; + } + if (param->flag & 1) { + var_r31->unk0B = 1; + var_r31->unk0C = param->vol; + if (!(var_r31->unk13 & 1) || var_r31->unkB4 != 1) { + sndFXVolume(var_r31->unk00, var_r31->unk0C * var_r31->unk30 * var_r31->unk3C * var_r31->unk48 / 2048383); + } + var_r31->unk0B = 0; + } + if (!(var_r31->unk13 & 1)) { + if (param->flag & 2) { + var_r31->unk0D = param->pan; + temp_r3 = var_r31->unk0D + var_r31->unk31 - 0x40; // TODO: inline? + var_r0 = temp_r3; + if (temp_r3 < 0) { + var_r0 = 0; + } + if (var_r0 > 0x7F) { + var_r0 = 0x7F; + } + sndFXPanning(var_r31->unk00, var_r0); + } + if (param->flag & 4) { + var_r31->unk0E = param->pitch; + var_r4 = var_r31->unk0E + var_r31->unk32 + 0x2000; + if (var_r4 < 0) { + var_r4 = 0; + } + if (var_r4 > 0x3FFF) { + var_r4 = 0x3FFF; + } + sndFXPitchBend(var_r31->unk00, var_r4); + } + if (param->flag & 8) { + var_r31->unk10 = param->span; + sndFXSurroundPanning(var_r31->unk00, var_r31->unk10); + } + } else if (var_r31->unkB4 == 1) { + var_r31->unk00 = sndEmitterVoiceID(&var_r31->unk4C); + if (param->flag & 0x40) { + var_r31->unk0B = 1; + var_r31->unkA8.x = param->pos.x - var_r31->unk9C.x; + var_r31->unkA8.y = param->pos.y - var_r31->unk9C.y; + var_r31->unkA8.z = param->pos.z - var_r31->unk9C.z; + var_r31->unk9C.x = param->pos.x; + var_r31->unk9C.y = param->pos.y; + var_r31->unk9C.z = param->pos.z; + sndUpdateEmitter(&var_r31->unk4C, &var_r31->unk9C, &var_r31->unkA8, var_r31->unk0C * var_r31->unk30 * var_r31->unk3C * var_r31->unk48 / 2048383, NULL); + var_r31->unk0B = 0; + } + } + if (param->flag & 0x10) { + var_r31->unk11 = param->auxAVol; + sndFXReverb(var_r31->unk00, var_r31->unk11); + } + if (param->flag & 0x20) { + var_r31->unk12 = param->auxBVol; + sndFXChorus(var_r31->unk00, var_r31->unk12); + } + if (param->flag & 0x80) { + sndSendMessage(var_r31->unk00, param->pad); + } + return 0; +} + +void msmSePauseAll(BOOL pause, s32 speed) { + s32 var_r27; + msmSeStruct00* temp_r26; + + for (var_r27 = 0; var_r27 < se.unk04; var_r27++) { + temp_r26 = &se.unk10[var_r27]; + temp_r26->unk0B = 1; + msmSePauseSub(temp_r26, pause, speed); + temp_r26->unk0B = 0; + } +} + +void msmSeStopAll(BOOL checkGrp, s32 speed) { + msmSeStruct02* se_ptr = &se; + msmSeStruct00* temp_r28; + s32 var_r27; + + for (var_r27 = 0; var_r27 < se_ptr->unk04; var_r27++) { + temp_r28 = &se_ptr->unk10[var_r27]; + if (temp_r28->unk0A == 0) { + continue; + } + temp_r28->unk0B = 1; + switch (checkGrp) { + case FALSE: + temp_r28->unk34 = speed / 15; + if (temp_r28->unk34 != 0) { + temp_r28->unk38 = temp_r28->unk34; + temp_r28->unk3C = 0x7F; + } else { + temp_r28->unk0A = 1; + if ((temp_r28->unk13 & 1) && temp_r28->unkB4 == 1) { + sndRemoveEmitter(&temp_r28->unk4C); + } else { + sndFXKeyOff(temp_r28->unk00); + } + } + break; + default: + if (msmSysCheckBaseGroup(se_ptr->unk0C[temp_r28->unk08].groupId) == 0) { + temp_r28->unk34 = speed / 15; + if (temp_r28->unk34 != 0) { + temp_r28->unk38 = temp_r28->unk34; + temp_r28->unk3C = 0x7F; + } else { + temp_r28->unk0A = 1; + if ((temp_r28->unk13 & 1) && temp_r28->unkB4 == 1) { + sndRemoveEmitter(&temp_r28->unk4C); + } else { + sndFXKeyOff(temp_r28->unk00); + } + } + } + break; + } + temp_r28->unk0B = 0; + } +} + +s32 msmSeStop(int seNo, s32 speed) { + msmSeStruct00* var_r31; + + var_r31 = msmSeGetStatus_inline(seNo); + if (var_r31 == NULL) { + return MSM_ERR_6F; + } + var_r31->unk0B = 1; + // TODO: this pattern could be an inline. + var_r31->unk34 = speed / 15; + if (var_r31->unk34 != 0) { + var_r31->unk38 = var_r31->unk34; + var_r31->unk3C = 0x7F; + } else { + var_r31->unk0A = 1; + if ((var_r31->unk13 & 1) && var_r31->unkB4 == 1) { + sndRemoveEmitter(&var_r31->unk4C); + } else { + sndFXKeyOff(var_r31->unk00); + } + } + var_r31->unk0B = 0; + return 0; +} + +// TODO: https://decomp.me/scratch/uhYSL +// msmSePlay + +s32 msmSeInit(sysData* arg0, DVDFileInfo* arg1) { + s32 temp_r29; + + se.unk04 = 0; + se.unk00 = 0; + se.unk05 = 0; + se.unk06 = 0; + se.unkDA = 0; + if (arg0->unk10->unk6 == 0) { + return 0; + } + if ((se.unk0C = msmMemAlloc(arg0->unkC->unk34)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + if (msmFioRead(arg1, se.unk0C, arg0->unkC->unk34, arg0->unkC->unk30) < 0) { + return MSM_ERR_READFAIL; + } + temp_r29 = arg0->unk10->unk2 * sizeof(*se.unk10); + if ((se.unk10 = msmMemAlloc(temp_r29)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + memset(se.unk10, 0, temp_r29); + se.unk00 = arg0->unk10->unk6; + se.unk04 = arg0->unk10->unk2; + se.unk08 = 1; + return 0; +} diff --git a/src/msm/msmsys.c b/src/msm/msmsys.c index 9c9aedda..b3165461 100644 --- a/src/msm/msmsys.c +++ b/src/msm/msmsys.c @@ -1,5 +1,4 @@ -#include "dolphin.h" -#include "dolphin/ai.h" +#include "msm/msmsys.h" #include "msm/msmfio.h" #include "msm/msmmem.h" #include "msm/msmmus.h" @@ -9,61 +8,6 @@ #include "game/msm.h" // TODO remove, only for decomp -typedef struct _unkSubStruct { - s8 unk0; - union { - f32 unk4f[9]; - s32 unk4s[9]; - }; -} unkSubStruct; - -typedef struct _unkSubStruct2 { - char unk[0x3C]; - s32 unk3C; - s32 unk40; - s32 unk44; - s32 unk48; - s32 unk4C; - s32 unk50; - s32 unk54; - s32 unk58; - s32 unk5C; - char unk60[0x30]; - s32 unk90; - s32 unk94; - s32 unk98; - char unk9C[0xA0]; - u8 unk13C; - f32 unk140; - f32 unk144; - f32 unk148; - f32 unk14C; - f32 unk150; - char unk154[0x70]; - u8 unk1C4; - f32 unk1C8; - f32 unk1CC; - f32 unk1D0; - f32 unk1D4; - f32 unk1D8; - f32 unk1DC; -} unkSubStruct2; // sizeof unk1E0 - -typedef struct _unkSubStruct3 { - char unk[0x4]; - s32 unk4; - char unk8[0x8]; - s32 unk10; // offset - u32 unk14; // length - s32 unk18; // offset - u32 unk1C; // length - char unk20[0x18]; - s32 unk38; - char unk3C[4]; - s32 unk40; - char unk44[0x1C]; -} unkSubStruct3; // sizeof 0x60 - typedef struct _unkStruct2 { char *unk0; s32 unk4; @@ -74,12 +18,6 @@ typedef struct _unkStruct2 { void *unk18; } unkStruct2; -typedef struct _unkStruct3 { - s32 unk0; - s32 unk4; - s32 unk8; -} unkStruct3; - typedef struct _unkStruct4 { SND_GROUPID unk0; s32 unk4; @@ -88,49 +26,6 @@ typedef struct _unkStruct4 { s32 unk10; } unkStruct4; -typedef struct _sndInitData { - s8 unk0; - s8 unk1; - s8 unk2; - char unk3[0xB]; - s8 unkE; - s8 unkF; - u32 unk10; - s32 unk14; - char unk18[0x11]; - s8 unk29[10]; // size unknown -} sndInitData; - -typedef struct _sysData { - s32 unk0; - s8 unk4; - s8 unk5; - s8 unk6; - s8 unk7; - s32 unk8; - unkSubStruct3 *unkC; - sndInitData *unk10; - unkSubStruct *unk14; - s8 unk18; - s8 unk19; - s8 unk1A; - s8 unk1B; - unkSubStruct2 unk1C; // userA - unkSubStruct2 unk1FC; // userB - char unk3DC[0x8]; - s32 unk3E4; - s32 unk3E8; - s32 unk3EC; - s32 unk3F0; - s8 unk3F4; - unkStruct3 *unk3F8; - char unk3FC[0xF0]; - s32 unk4EC; - BOOL unk4F0; - AIDCallback unk4F4; - s32 unk4F8; -} sysData; - static sysData sys; void msmSysServer(void) @@ -372,12 +267,12 @@ s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) msmFioClose(&sp10); return var_r26; } - var_r26 = msmMusInit(&sys.unk0, &sp10); + var_r26 = msmMusInit(&sys, &sp10); if (var_r26 != 0) { msmFioClose(&sp10); return var_r26; } - var_r26 = msmSeInit(&sys.unk0, &sp10); + var_r26 = msmSeInit(&sys, &sp10); if (var_r26 != 0) { msmFioClose(&sp10); return var_r26; From 6284cb61163c01e675c37b1a3e7b6ceb18595394 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Mon, 13 Jan 2025 20:07:10 -0800 Subject: [PATCH 119/178] Matched most of msmsys (5 functions left) (#528) --- include/game/msm.h | 4 +- include/msm/msmstream.h | 2 +- include/msm/msmsys.h | 141 +++++++---- src/msm/msmsys.c | 512 +++++++++++++++++++++++++++++++--------- 4 files changed, 491 insertions(+), 168 deletions(-) diff --git a/include/game/msm.h b/include/game/msm.h index 5d7dfa11..c99b7eb4 100644 --- a/include/game/msm.h +++ b/include/game/msm.h @@ -40,7 +40,9 @@ #define MSM_ERR_OUTOFMEM -10 #define MSM_ERR_OUTOFAMEM -20 #define MSM_ERR_INITFAIL -20 +#define MSM_ERR_1E -30 #define MSM_ERR_INVALID_AUXPARAM -31 +#define MSM_ERR_20 -32 #define MSM_ERR_PLAYFAIL -33 #define MSM_ERR_22 -34 #define MSM_ERR_STREAMALLOC_FAIL -35 @@ -166,7 +168,7 @@ typedef struct msmStreamParam_s { } MSM_STREAMPARAM; s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram); -void msmSysSetOutputMode(SND_OUTPUTMODE mode); +s32 msmSysSetOutputMode(SND_OUTPUTMODE mode); s32 msmSysDelGroupAll(void); s32 msmSysLoadGroup(s32 grp, void *buf, BOOL flag); s32 msmSysGetSampSize(BOOL baseGrp); diff --git a/include/msm/msmstream.h b/include/msm/msmstream.h index c21347b0..d1818803 100644 --- a/include/msm/msmstream.h +++ b/include/msm/msmstream.h @@ -4,7 +4,7 @@ #include "dolphin/types.h" void msmStreamPeriodicProc(void); -void msmStreamSetOutputMode(s8); +void msmStreamSetOutputMode(s32); void msmStreamAmemFree(void); s32 msmStreamAmemAlloc(void); s32 msmStreamInit(char *); diff --git a/include/msm/msmsys.h b/include/msm/msmsys.h index fbd36f7e..af06396f 100755 --- a/include/msm/msmsys.h +++ b/include/msm/msmsys.h @@ -1,47 +1,47 @@ #ifndef MSMSYS_H #define MSMSYS_H +#include "musyx/musyx.h" + #include "dolphin.h" +typedef struct { + u32 tempDisableFX; + f32 coloration; + f32 mix; + f32 time; + f32 damping; + f32 preDelay; + f32 crosstalk; +} SubStructRev; + +typedef struct { + u32 baseDelay; + u32 variation; + u32 period; +} SubStructCh; + +typedef struct { + u32 delay[3]; + u32 feedback[3]; + u32 output[3]; +} SubDelay; + typedef struct _unkSubStruct { s8 unk0; union { - f32 unk4f[9]; - s32 unk4s[9]; + SubStructRev rev; + SubStructCh ch; + SubDelay delay; }; } unkSubStruct; -typedef struct _unkSubStruct2 { - char unk[0x3C]; - s32 unk3C; - s32 unk40; - s32 unk44; - s32 unk48; - s32 unk4C; - s32 unk50; - s32 unk54; - s32 unk58; - s32 unk5C; - char unk60[0x30]; - s32 unk90; - s32 unk94; - s32 unk98; - char unk9C[0xA0]; - u8 unk13C; - f32 unk140; - f32 unk144; - f32 unk148; - f32 unk14C; - f32 unk150; - char unk154[0x70]; - u8 unk1C4; - f32 unk1C8; - f32 unk1CC; - f32 unk1D0; - f32 unk1D4; - f32 unk1D8; - f32 unk1DC; -} unkSubStruct2; // sizeof unk1E0 +typedef union { + SND_AUX_REVERBHI revHi; + SND_AUX_REVERBSTD revStd; + SND_AUX_CHORUS ch; + SND_AUX_DELAY delay; +} UnkSndAuxUnion; // Size 0x1E0 typedef struct _unkSubStruct3 { char unk[0x4]; @@ -51,7 +51,8 @@ typedef struct _unkSubStruct3 { u32 unk14; // length s32 unk18; // offset u32 unk1C; // length - char unk20[8]; + s32 unk20; + s32 unk24; s32 unk28; s32 unk2C; s32 unk30; @@ -61,7 +62,10 @@ typedef struct _unkSubStruct3 { s32 unk40; char unk44[4]; s32 unk48; - char unk4C[0x14]; + char unk4C[4]; + s32 unk50; + s32 unk54; + char unk58[8]; } unkSubStruct3; // sizeof 0x60 typedef struct _unkStruct3 { @@ -74,21 +78,44 @@ typedef struct _sndInitData { s8 unk0; s8 unk1; s8 unk2; - char unk3[1]; + s8 unk3; s16 unk4; s16 unk6; s8 unk8; - char unk9[5]; + s8 unk9; + s8 unkA; + s8 unkB; + char unkC[2]; s8 unkE; s8 unkF; u32 unk10; s32 unk14; - char unk18[8]; + s32 unk18; + s32 unk1C; s32 unk20; - char unk24[5]; + char unk24[4]; + s8 unk28; s8 unk29[10]; // size unknown } sndInitData; +typedef struct { + /* 0x00 */ s8 unk00; + /* 0x01 */ s8 unk01; + /* 0x02 */ char unk02[2]; + /* 0x04 */ u32 unk04; + /* 0x08 */ void *unk08; +} UnkStructSys43C; // Size 0xC + +typedef struct _unkStruct4 { + SND_GROUPID unk0; + s8 unk2; + s32 unk4; + s32 unk8; + s32 unkC; + s32 unk10; + char unk14[0xC]; +} unkStruct4; // Size 0x20 + typedef struct _sysData { s32 unk0; s8 unk4; @@ -99,20 +126,34 @@ typedef struct _sysData { unkSubStruct3 *unkC; sndInitData *unk10; unkSubStruct *unk14; - s8 unk18; - s8 unk19; + s8 unk18[2]; s8 unk1A; s8 unk1B; - unkSubStruct2 unk1C; // userA - unkSubStruct2 unk1FC; // userB - char unk3DC[0x8]; - s32 unk3E4; - s32 unk3E8; - s32 unk3EC; - s32 unk3F0; + UnkSndAuxUnion unk1C[2]; // 0: userA, 1: userB + s8 unk3DC; + char unk3DD[3]; + s32 unk3E0; + u32 unk3E4; + u32 unk3E8; + unkStruct4 *unk3EC; + void *unk3F0; s8 unk3F4; - unkStruct3 *unk3F8; - char unk3FC[0xF0]; + unkStruct3 *unk3F8[1]; // unknown array length + char unk3FC[0x38]; + s8 unk434; + s8 unk435; + s8 unk436; + char unk437[1]; + void *unk438; + UnkStructSys43C unk43C[1]; // unknown array length + char unk448[0x24]; + s8 unk46C; + s8 unk46D; + s8 unk46E; + char unk46F[1]; + void *unk470; + UnkStructSys43C unk474[1]; // unknown array length + char unk480[0x6C]; s32 unk4EC; BOOL unk4F0; AIDCallback unk4F4; diff --git a/src/msm/msmsys.c b/src/msm/msmsys.c index b3165461..2df1b11b 100644 --- a/src/msm/msmsys.c +++ b/src/msm/msmsys.c @@ -4,31 +4,12 @@ #include "msm/msmmus.h" #include "msm/msmse.h" #include "msm/msmstream.h" -#include "musyx/musyx.h" #include "game/msm.h" // TODO remove, only for decomp -typedef struct _unkStruct2 { - char *unk0; - s32 unk4; - void *unk8; - void *unkC; - void *unk10; - u32 unk14; - void *unk18; -} unkStruct2; - -typedef struct _unkStruct4 { - SND_GROUPID unk0; - s32 unk4; - s32 unk8; - s32 unkC; - s32 unk10; -} unkStruct4; - static sysData sys; -void msmSysServer(void) +static void msmSysServer(void) { if (sndIsInstalled() == 1) { if (--sys.unk4F8 == 0) { @@ -41,127 +22,190 @@ void msmSysServer(void) sys.unk4F4(); } -s32 msmSysSetAuxParam(s32 arg0, s32 arg1) +static s32 msmSysSetAuxParam(s32 arg0, s32 arg1) { - SND_AUX_CALLBACK sp24; - SND_AUX_CALLBACK sp20; - void **var_r26; - s32 var_r23; - unkSubStruct2 *temp_r3; - sysData *var_r25; - sysData *var_r27; - unkSubStruct *temp_r5; - u32 var_r0; - u8 temp_r5_2; + s32 unused_1[2]; + SND_AUX_CALLBACK sp20[2]; + s32 unused_2[2]; unkSubStruct *temp_r4_2; + UnkSndAuxUnion *temp_r3; + u32 var_r0; + s32 var_r23; - if ((sys.unk18 != -2) && (arg0 >= 0)) { - sys.unk18 = arg0; + if (sys.unk18[0] != -2 && arg0 >= 0) { + sys.unk18[0] = arg0; } - if ((sys.unk19 != -2) && (arg1 >= 0)) { - temp_r5->unk0 = arg1; + if (sys.unk18[1] != -2 && arg1 >= 0) { + sys.unk18[1] = arg1; } - if ((sys.unk18 < 0) && (temp_r5->unk0 < 0)) { + if (sys.unk18[0] < 0 && sys.unk18[1] < 0) { return 0; } - var_r27 = &sys; - var_r25 = &sys; - var_r26 = &sp20; - - // the for loop first sets sp20 and then sp24 - for (var_r23 = 0; var_r23 < 2; var_r23++, var_r27++, var_r26++, var_r25++) { - if (var_r27->unk18 < 0) { - *var_r26 = NULL; + for (var_r23 = 0; var_r23 < 2; var_r23++) { + if (sys.unk18[var_r23] < 0) { + sp20[var_r23] = NULL; continue; } - temp_r4_2 = &sys.unk14[var_r27->unk18]; - temp_r3 = &var_r25->unk1C; + temp_r4_2 = &sys.unk14[sys.unk18[var_r23]]; + temp_r3 = &sys.unk1C[var_r23]; switch (temp_r4_2->unk0) { case 0: - *var_r26 = &sndAuxCallbackReverbHI; - temp_r3->unk1C4 = temp_r4_2->unk4s[0]; - temp_r3->unk1C8 = temp_r4_2->unk4f[1]; - temp_r3->unk1CC = temp_r4_2->unk4f[2]; - temp_r3->unk1D0 = temp_r4_2->unk4f[3]; - temp_r3->unk1D4 = temp_r4_2->unk4f[4]; - temp_r3->unk1D8 = temp_r4_2->unk4f[5]; - temp_r3->unk1DC = temp_r4_2->unk4f[6]; - // var_r0 = sndAuxCallbackPrepareReverbHI(); + sp20[var_r23] = sndAuxCallbackReverbHI; + temp_r3->revHi.tempDisableFX = temp_r4_2->rev.tempDisableFX; + temp_r3->revHi.coloration = temp_r4_2->rev.coloration; + temp_r3->revHi.mix = temp_r4_2->rev.mix; + temp_r3->revHi.time = temp_r4_2->rev.time; + temp_r3->revHi.damping = temp_r4_2->rev.damping; + temp_r3->revHi.preDelay = temp_r4_2->rev.preDelay; + temp_r3->revHi.crosstalk = temp_r4_2->rev.crosstalk; + var_r0 = sndAuxCallbackPrepareReverbHI(&temp_r3->revHi); break; case 1: - *var_r26 = &sndAuxCallbackReverbSTD; - temp_r3->unk13C = temp_r4_2->unk4s[0]; - temp_r3->unk140 = temp_r4_2->unk4f[1]; - temp_r3->unk144 = temp_r4_2->unk4f[2]; - temp_r3->unk148 = temp_r4_2->unk4f[3]; - temp_r3->unk14C = temp_r4_2->unk4f[4]; - temp_r3->unk150 = temp_r4_2->unk4f[5]; - // var_r0 = sndAuxCallbackPrepareReverbSTD(); + sp20[var_r23] = sndAuxCallbackReverbSTD; + temp_r3->revStd.tempDisableFX = temp_r4_2->rev.tempDisableFX; + temp_r3->revStd.coloration = temp_r4_2->rev.coloration; + temp_r3->revStd.mix = temp_r4_2->rev.mix; + temp_r3->revStd.time = temp_r4_2->rev.time; + temp_r3->revStd.damping = temp_r4_2->rev.damping; + temp_r3->revStd.preDelay = temp_r4_2->rev.preDelay; + var_r0 = sndAuxCallbackPrepareReverbSTD(&temp_r3->revStd); break; case 2: - *var_r26 = &sndAuxCallbackChorus; - temp_r3->unk90 = temp_r4_2->unk4s[0]; - temp_r3->unk94 = temp_r4_2->unk4s[1]; - temp_r3->unk98 = temp_r4_2->unk4s[2]; - // var_r0 = sndAuxCallbackPrepareChorus(); + sp20[var_r23] = sndAuxCallbackChorus; + temp_r3->ch.baseDelay = temp_r4_2->ch.baseDelay; + temp_r3->ch.variation = temp_r4_2->ch.variation; + temp_r3->ch.period = temp_r4_2->ch.period; + var_r0 = sndAuxCallbackPrepareChorus(&temp_r3->ch); break; case 3: - *var_r26 = &sndAuxCallbackDelay; - temp_r3->unk3C = temp_r4_2->unk4s[0]; - temp_r3->unk48 = temp_r4_2->unk4s[3]; - temp_r3->unk54 = temp_r4_2->unk4s[6]; - temp_r3->unk40 = temp_r4_2->unk4s[1]; - temp_r3->unk4C = temp_r4_2->unk4s[4]; - temp_r3->unk58 = temp_r4_2->unk4s[7]; - temp_r3->unk44 = temp_r4_2->unk4s[2]; - temp_r3->unk50 = temp_r4_2->unk4s[5]; - temp_r3->unk5C = temp_r4_2->unk4s[8]; - // var_r0 = sndAuxCallbackPrepareDelay(); + sp20[var_r23] = sndAuxCallbackDelay; + temp_r3->delay.delay[0] = temp_r4_2->delay.delay[0]; + temp_r3->delay.feedback[0] = temp_r4_2->delay.feedback[0]; + temp_r3->delay.output[0] = temp_r4_2->delay.output[0]; + temp_r3->delay.delay[1] = temp_r4_2->delay.delay[1]; + temp_r3->delay.feedback[1] = temp_r4_2->delay.feedback[1]; + temp_r3->delay.output[1] = temp_r4_2->delay.output[1]; + temp_r3->delay.delay[2] = temp_r4_2->delay.delay[2]; + temp_r3->delay.feedback[2] = temp_r4_2->delay.feedback[2]; + temp_r3->delay.output[2] = temp_r4_2->delay.output[2]; + var_r0 = sndAuxCallbackPrepareDelay(&temp_r3->delay); break; } if (var_r0 == 0) { return 1; } } - sndSetAuxProcessingCallbacks(0, sp20, &sys.unk1C, 0xFF, 0, sp24, &sys.unk1FC, 0xFF, 0); + sndSetAuxProcessingCallbacks(0, sp20[0], &sys.unk1C[0], 0xFF, 0, sp20[1], &sys.unk1C[1], 0xFF, 0); return 0; } -s8 msmSysLoadBaseGroup(void *arg0) +static s8 msmSysLoadBaseGroup(void *arg0) { DVDFileInfo spC; - sysData *var_r30; s32 var_r28; unkStruct3 *temp_r27; unkStruct4 *temp_r25; if (msmFioOpen(sys.unk0, &spC) != 1) { - return -1; + return MSM_ERR_OPENFAIL; } - var_r30 = &sys; - for (var_r28 = 0; var_r28 < sys.unk3F4; var_r30 = (sysData *)((s32)var_r30 + 4), var_r28++, sys.unk8 += temp_r25->unk10) { - temp_r27 = var_r30->unk3F8; - temp_r25 = (unkStruct4 *)(sys.unk3EC + (sys.unk10->unk29[var_r28] << 5)); + for (var_r28 = 0; var_r28 < sys.unk3F4; var_r28++) { + temp_r27 = sys.unk3F8[var_r28]; + temp_r25 = &sys.unk3EC[sys.unk10->unk29[var_r28]]; if (msmFioRead(&spC, temp_r27, temp_r25->unk8, temp_r25->unk4 + sys.unkC->unk38) < 0) { msmFioClose(&spC); - return -2; + return MSM_ERR_READFAIL; } if (msmFioRead(&spC, arg0, temp_r25->unk10, temp_r25->unkC + sys.unkC->unk40) < 0) { msmFioClose(&spC); - return -2; + return MSM_ERR_READFAIL; } - if (sndPushGroup((void *)(temp_r27->unk4 + (s32)temp_r27), temp_r25->unk0, arg0, (void *)(temp_r27->unk8 + (s32)temp_r27), - (void *)(temp_r27->unk0 + (s32)temp_r27)) - == 0U) { + if (!sndPushGroup((void*) (temp_r27->unk4 + (u32) temp_r27), temp_r25->unk0, arg0, + (void*) (temp_r27->unk8 + (u32) temp_r27), (void*) (temp_r27->unk0 + (u32) temp_r27))) + { msmFioClose(&spC); - return -0x20; + return MSM_ERR_20; } + sys.unk8 += temp_r25->unk10; } msmFioClose(&spC); return 0; } -s32 msmSysGroupInit(DVDFileInfo *arg0); +// TODO: https://decomp.me/scratch/NWiuL +// msmSysSearchGroupStack + +s32 msmSysGroupInit(DVDFileInfo *arg0) +{ + s32 var_r7; + UnkStructSys43C *temp_43C; + unkStruct4 *temp_r20; + + sys.unk3DC = sys.unk10->unk3; + sys.unk3E0 = 1; + sys.unk3F4 = sys.unk10->unk28; + sys.unk434 = sys.unk10->unk9; + sys.unk435 = 0; + sys.unk436 = 0; + sys.unk46C = sys.unk10->unkA; + sys.unk46D = 0; + sys.unk46E = 0; + if ((sys.unk3EC = msmMemAlloc(sys.unkC->unk24)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + if (msmFioRead(arg0, sys.unk3EC, sys.unkC->unk24, sys.unkC->unk20) < 0) { + return MSM_ERR_READFAIL; + } + if ((sys.unk438 = msmMemAlloc(sys.unk10->unk18 * sys.unk434)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + if ((sys.unk470 = msmMemAlloc(sys.unk10->unk1C * sys.unk46C)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + if (sys.unkC->unk54) { + if ((sys.unk3F0 = msmMemAlloc(sys.unkC->unk54)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + if (msmFioRead(arg0, sys.unk3F0, sys.unkC->unk54, sys.unkC->unk50) < 0) { + return MSM_ERR_READFAIL; + } + } else { + sys.unk3F0 = NULL; + } + for (var_r7 = 0; var_r7 < sys.unk434; var_r7++) { + temp_43C = &sys.unk43C[var_r7]; + temp_43C->unk00 = temp_43C->unk01 = 0; + temp_43C->unk04 = 0; + temp_43C->unk08 = (void*) ((u32) sys.unk438 + sys.unk10->unk18 * var_r7); + } + for (var_r7 = 0; var_r7 < sys.unk46C; var_r7++) { + temp_43C = &sys.unk474[var_r7]; + temp_43C->unk00 = temp_43C->unk01 = 0; + temp_43C->unk04 = 0; + temp_43C->unk08 = (void*) ((u32) sys.unk470 + sys.unk10->unk1C * var_r7); + } + sys.unk3E4 = 0; + for (var_r7 = 0; var_r7 < sys.unk3F4; var_r7++) { + temp_r20 = &sys.unk3EC[sys.unk10->unk29[var_r7]]; + if ((sys.unk3F8[var_r7] = msmMemAlloc(temp_r20->unk8)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + if (sys.unk3E4 < temp_r20->unk10) { + sys.unk3E4 = temp_r20->unk10; + } + temp_r20->unk10 *= -1; + } + sys.unk3E8 = 0; + for (var_r7 = 1; var_r7 < sys.unk3DC; var_r7++) { + temp_r20 = &sys.unk3EC[var_r7]; + if (temp_r20->unk10 < 0) { + temp_r20->unk10 *= -1; + } else if (sys.unk3E8 < temp_r20->unk10) { + sys.unk3E8 = temp_r20->unk10; + } + } + return 0; +} void msmSysIrqDisable(void) { @@ -179,13 +223,138 @@ void msmSysIrqEnable(void) } } -void msmSysRegularProc(void); +BOOL msmSysCheckBaseGroup(s32 arg0) +{ + s32 var_r6; + + for (var_r6 = 0; var_r6 < sys.unk3F4 + sys.unk436 + sys.unk46E; var_r6++) { + if (sys.unk3EC[sys.unk10->unk29[var_r6]].unk0 == arg0) { + return TRUE; + } + } + return FALSE; +} + +void *msmSysGetGroupDataPtr(s32 arg0) +{ + UnkStructSys43C *temp_43C; + s32 var_r6; + + for (var_r6 = 0; var_r6 < sys.unk3F4; var_r6++) { + if (sys.unk10->unk29[var_r6] == arg0) { + return sys.unk3F8[var_r6]; + } + } + for (var_r6 = 0; var_r6 < sys.unk434; var_r6++) { + temp_43C = &sys.unk43C[var_r6]; + if (temp_43C->unk04 != 0 && temp_43C->unk00 == arg0) { + return temp_43C->unk08; + } + } + for (var_r6 = 0; var_r6 < sys.unk46C; var_r6++) { + temp_43C = &sys.unk474[var_r6]; + if (temp_43C->unk04 != 0 && temp_43C->unk00 == arg0) { + return temp_43C->unk08; + } + } + return NULL; +} + +BOOL msmSysCheckLoadGroupID(s32 arg0) +{ + UnkStructSys43C *temp_43C; + s32 var_r6; + + for (var_r6 = 0; var_r6 < sys.unk3F4 + sys.unk436 + sys.unk46E; var_r6++) { + if (sys.unk3EC[sys.unk10->unk29[var_r6]].unk0 == arg0) { + return TRUE; + } + } + for (var_r6 = 0; var_r6 < sys.unk434; var_r6++) { + temp_43C = &sys.unk43C[var_r6]; + if (temp_43C->unk04 != 0 && sys.unk3EC[temp_43C->unk00].unk0 == arg0) { + return TRUE; + } + } + for (var_r6 = 0; var_r6 < sys.unk46C; var_r6++) { + temp_43C = &sys.unk474[var_r6]; + if (temp_43C->unk04 != 0 && sys.unk3EC[temp_43C->unk00].unk0 == arg0) { + return TRUE; + } + } + return FALSE; +} + +void msmSysRegularProc(void) +{ +} s32 msmSysGetOutputMode(void) { return sys.unk4; } +s32 msmSysSetOutputMode(SND_OUTPUTMODE mode) +{ + SND_OUTPUTMODE var_r3; + s32 var_r30; + + var_r30 = 0; + sys.unk4 = mode; + switch (mode) { + case SND_OUTPUTMODE_MONO: + var_r3 = SND_OUTPUTMODE_MONO; + break; + case SND_OUTPUTMODE_SURROUND: + if (sys.unk10->unkB != 0) { + var_r3 = SND_OUTPUTMODE_SURROUND; + } else { + sys.unk4 = SND_OUTPUTMODE_STEREO; + var_r3 = SND_OUTPUTMODE_STEREO; + var_r30 = 1; + } + break; + case SND_OUTPUTMODE_STEREO: + default: + var_r3 = SND_OUTPUTMODE_STEREO; + break; + } + sndOutputMode(var_r3); + msmStreamSetOutputMode(sys.unk4); + OSSetSoundMode((mode != SND_OUTPUTMODE_MONO) ? 1 : 0); + return var_r30; +} + +s32 msmSysSetAux(s32 arg0, s32 arg1) +{ + s32 var_r28; + + sndSetAuxProcessingCallbacks(0, NULL, NULL, 0, 0, NULL, NULL, 0, 0); + for (var_r28 = 1; var_r28 >= 0; var_r28--) { + if (sys.unk18[var_r28] < 0) { + continue; + } + switch (sys.unk14[sys.unk18[var_r28]].unk0) { + case 0: + sndAuxCallbackShutdownReverbHI(&sys.unk1C[var_r28].revHi); + break; + case 1: + sndAuxCallbackShutdownReverbSTD(&sys.unk1C[var_r28].revStd); + break; + case 2: + sndAuxCallbackShutdownChorus(&sys.unk1C[var_r28].ch); + break; + case 3: + sndAuxCallbackShutdownDelay(&sys.unk1C[var_r28].delay); + break; + } + } + if (msmSysSetAuxParam(arg0, arg1) != 0) { + return MSM_ERR_INVALID_AUXPARAM; + } + return 0; +} + s32 msmSysGetSampSize(BOOL baseGrp) { if (baseGrp != 0) { @@ -194,6 +363,118 @@ s32 msmSysGetSampSize(BOOL baseGrp) return sys.unk3E4; } +s32 msmSysDelGroupAll(void) +{ + UnkStructSys43C *temp_r28; + s32 var_r29; + + for (var_r29 = 0; var_r29 < sys.unk46C; var_r29++) { + temp_r28 = &sys.unk474[var_r29]; + if (temp_r28->unk04 != 0 && temp_r28->unk01 == 0) { + temp_r28->unk04 = 0; + sndPopGroup(); + sys.unk8 -= sys.unk3EC[temp_r28->unk00].unk10; + sys.unk46D--; + } + } + for (var_r29 = 0; var_r29 < sys.unk434; var_r29++) { + temp_r28 = &sys.unk43C[var_r29]; + if (temp_r28->unk04 != 0 && temp_r28->unk01 == 0) { + temp_r28->unk04 = 0; + sndPopGroup(); + sys.unk8 -= sys.unk3EC[temp_r28->unk00].unk10; + sys.unk435--; + } + } + return 0; +} + +s32 msmSysDelGroupBase(s32 grpNum) +{ + s32 var_r4; + UnkStructSys43C *temp_r26; + s32 var_r27; + s8 var_r31; + s8 var_r25; + s32 var_r6; + + if (sys.unk436 + sys.unk46E == 0) { + return 0; + } + if (grpNum >= sys.unk436 + sys.unk46E) { + grpNum = 0; + } + if (grpNum != 0) { + msmSysDelGroupAll(); + for (var_r27 = 0; var_r27 < grpNum; var_r27++) { + var_r6 = 0; + for (var_r4 = 0; var_r4 < sys.unk434; var_r4++) { + temp_r26 = &sys.unk43C[var_r4]; + if (temp_r26->unk04 > var_r6) { + var_r6 = temp_r26->unk04; + var_r31 = var_r4; + var_r25 = 0; + } + } + for (var_r4 = 0; var_r4 < sys.unk46C; var_r4++) { + temp_r26 = &sys.unk474[var_r4]; + if (temp_r26->unk04 > var_r6) { + var_r6 = temp_r26->unk04; + var_r31 = var_r4; + var_r25 = 1; + } + } + if (var_r25 == 0) { + temp_r26 = &sys.unk43C[var_r31]; + sys.unk435--; + sys.unk436--; + } else { + temp_r26 = &sys.unk474[var_r31]; + sys.unk46D--; + sys.unk46E--; + } + sndPopGroup(); + sys.unk8 -= sys.unk3EC[temp_r26->unk00].unk10; + temp_r26->unk01 = 0; + temp_r26->unk04 = 0; + } + } else { + for (var_r27 = 0; var_r27 < sys.unk434; var_r27++) { + temp_r26 = &sys.unk43C[var_r27]; + if (temp_r26->unk04 != 0) { + sndPopGroup(); + sys.unk8 -= sys.unk3EC[temp_r26->unk00].unk10; + temp_r26->unk01 = 0; + temp_r26->unk04 = 0; + } + } + for (var_r27 = 0; var_r27 < sys.unk46C; var_r27++) { + temp_r26 = &sys.unk474[var_r27]; + if (temp_r26->unk04 != 0) { + sndPopGroup(); + sys.unk8 -= sys.unk3EC[temp_r26->unk00].unk10; + temp_r26->unk01 = 0; + temp_r26->unk04 = 0; + } + } + sys.unk46E = 0; + sys.unk46D = 0; + sys.unk436 = 0; + sys.unk435 = 0; + } + return 0; +} + +// TODO: https://decomp.me/scratch/zexTY +// msmSysLoadGroupBase + +// msmSysLoadGroupSet + +// msmSysLoadGroupSub + +// TODO: https://decomp.me/scratch/AhvXa +// msmSysLoadGroup + void msmSysCheckInit(void) { sndIsInstalled(); @@ -202,13 +483,12 @@ void msmSysCheckInit(void) s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) { s32 var_r26; - s32 temp_r3; void *temp_r3_8; SND_HOOKS sp4C = { msmMemAlloc, msmMemFree }; DVDFileInfo sp10; if (sndIsInstalled() == 1) { - return -0x24; + return MSM_ERR_INSTALLED; } var_r26 = 0; // retErr sys.unk4EC = 0; @@ -216,30 +496,30 @@ s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) msmFioInit(init->open, init->read, init->close); sys.unk0 = DVDConvertPathToEntrynum(init->msmPath); if (sys.unk0 < 0) { - return -1; + return MSM_ERR_OPENFAIL; } if (msmFioOpen(sys.unk0, &sp10) != 1) { - return -1; + return MSM_ERR_OPENFAIL; } if ((sys.unkC = msmMemAlloc(0x60)) == NULL) { msmFioClose(&sp10); - return -0xA; + return MSM_ERR_OUTOFMEM; } if (msmFioRead(&sp10, sys.unkC, 0x60, 0) < 0) { msmFioClose(&sp10); - return -2; + return MSM_ERR_READFAIL; } if (sys.unkC->unk4 != 2) { msmFioClose(&sp10); - return -0x79; + return MSM_ERR_INVALIDFILE; } if ((sys.unk10 = msmMemAlloc(sys.unkC->unk14)) == NULL) { msmFioClose(&sp10); - return -0xA; + return MSM_ERR_OUTOFMEM; } if (msmFioRead(&sp10, sys.unk10, sys.unkC->unk14, sys.unkC->unk10) < 0) { msmFioClose(&sp10); - return -2; + return MSM_ERR_READFAIL; } if (aram != NULL) { if (aram->skipARInit == 0) { @@ -248,14 +528,14 @@ s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) aram = (MSM_ARAM *)ARAlloc(sys.unk10->unk14); if ((u32)aram != ARGetBaseAddress()) { msmFioClose(&sp10); - return -0x14; + return MSM_ERR_OUTOFAMEM; } sys.unk7 = 0; } else { if ((sys.unk10->unk14 + ARGetBaseAddress()) > aram->aramEnd) { msmFioClose(&sp10); - return -0x14; + return MSM_ERR_OUTOFAMEM; } ARInit(NULL, 0); ARQInit(); @@ -277,18 +557,18 @@ s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) msmFioClose(&sp10); return var_r26; } - sys.unk18 = sys.unk10->unkE == -2 ? -2 : -1; - sys.unk19 = sys.unk10->unkF == -2 ? -2 : -1; + sys.unk18[0] = sys.unk10->unkE == -2 ? -2 : -1; + sys.unk18[1] = sys.unk10->unkF == -2 ? -2 : -1; if ((s32)sys.unkC->unk1C == 0) { var_r26 = 0; } else { if ((sys.unk14 = msmMemAlloc(sys.unkC->unk1C)) == NULL) { - var_r26 = -0xA; + var_r26 = MSM_ERR_OUTOFMEM; } else { if (msmFioRead(&sp10, sys.unk14, sys.unkC->unk1C, sys.unkC->unk18) < 0) { - var_r26 = -2; + var_r26 = MSM_ERR_READFAIL; } else { var_r26 = 0; @@ -300,14 +580,14 @@ s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) return var_r26; } msmFioClose(&sp10); - temp_r3 = msmStreamInit(init->pdtPath); - if (temp_r3 < 0) { - return temp_r3; + var_r26 = msmStreamInit(init->pdtPath); + if (var_r26 < 0) { + return var_r26; } AIInit(NULL); sndSetHooks(&sp4C); if (sndInit(sys.unk10->unk0, sys.unk10->unk1, sys.unk10->unk2, 1, 0, sys.unk10->unk14) != 0) { - return -0x1E; + return MSM_ERR_1E; } sys.unk4F4 = AIRegisterDMACallback(msmSysServer); sys.unk4F8 = 1; @@ -322,14 +602,14 @@ s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) if (temp_r3_8 == NULL) { msmStreamAmemFree(); sndQuit(); - return -0xA; + return MSM_ERR_OUTOFMEM; } msmMemFree(temp_r3_8); } if (msmSysSetAuxParam(sys.unk10->unkE, sys.unk10->unkF) != 0) { msmStreamAmemFree(); sndQuit(); - return -0x1F; + return MSM_ERR_INVALID_AUXPARAM; } msmSysSetOutputMode(OSGetSoundMode() == 0 ? SND_OUTPUTMODE_MONO : SND_OUTPUTMODE_STEREO); sndVolume(0x7F, 0, 0xFF); From 3edd72d33e3577f8c0ed7ae89ba34eba83b625b2 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 14 Jan 2025 06:44:01 -0800 Subject: [PATCH 120/178] Matched msmsys (#529) --- configure.py | 2 +- include/game/msm.h | 3 +- include/msm/msmsys.h | 13 +- src/msm/msmsys.c | 316 +++++++++++++++++++++++++++++++++++++++++-- 4 files changed, 318 insertions(+), 16 deletions(-) diff --git a/configure.py b/configure.py index 5c54e7fc..fdbbbc1a 100644 --- a/configure.py +++ b/configure.py @@ -838,7 +838,7 @@ config.libs = [ "cflags": cflags_msm, "host": False, "objects": [ - Object(NonMatching, "msm/msmsys.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmsys.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmmem.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmfio.c"), Object(NonMatching, "msm/msmmus.c"), diff --git a/include/game/msm.h b/include/game/msm.h index c99b7eb4..030dd77c 100644 --- a/include/game/msm.h +++ b/include/game/msm.h @@ -47,6 +47,8 @@ #define MSM_ERR_22 -34 #define MSM_ERR_STREAMALLOC_FAIL -35 #define MSM_ERR_INSTALLED -36 +#define MSM_ERR_64 -100 +#define MSM_ERR_65 -101 #define MSM_ERR_GRP_NOTLOADED -103 #define MSM_ERR_6F -111 #define MSM_ERR_INVALIDID -120 @@ -170,7 +172,6 @@ typedef struct msmStreamParam_s { s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram); s32 msmSysSetOutputMode(SND_OUTPUTMODE mode); s32 msmSysDelGroupAll(void); -s32 msmSysLoadGroup(s32 grp, void *buf, BOOL flag); s32 msmSysGetSampSize(BOOL baseGrp); s32 msmSysDelGroupBase(s32 grpNum); diff --git a/include/msm/msmsys.h b/include/msm/msmsys.h index af06396f..ffd86bae 100755 --- a/include/msm/msmsys.h +++ b/include/msm/msmsys.h @@ -109,6 +109,7 @@ typedef struct { typedef struct _unkStruct4 { SND_GROUPID unk0; s8 unk2; + s8 unk3; s32 unk4; s32 unk8; s32 unkC; @@ -116,6 +117,12 @@ typedef struct _unkStruct4 { char unk14[0xC]; } unkStruct4; // Size 0x20 +typedef struct { + /* 0x00 */ s8 unk00; + /* 0x01 */ s8 unk01; + /* 0x02 */ s8 unk02[1]; // unknown array length +} UnkSys3F0Struct; // Size unknown + typedef struct _sysData { s32 unk0; s8 unk4; @@ -136,19 +143,19 @@ typedef struct _sysData { u32 unk3E4; u32 unk3E8; unkStruct4 *unk3EC; - void *unk3F0; + UnkSys3F0Struct *unk3F0; s8 unk3F4; unkStruct3 *unk3F8[1]; // unknown array length char unk3FC[0x38]; s8 unk434; - s8 unk435; + u8 unk435; s8 unk436; char unk437[1]; void *unk438; UnkStructSys43C unk43C[1]; // unknown array length char unk448[0x24]; s8 unk46C; - s8 unk46D; + u8 unk46D; s8 unk46E; char unk46F[1]; void *unk470; diff --git a/src/msm/msmsys.c b/src/msm/msmsys.c index 2df1b11b..726a3a29 100644 --- a/src/msm/msmsys.c +++ b/src/msm/msmsys.c @@ -99,7 +99,7 @@ static s32 msmSysSetAuxParam(s32 arg0, s32 arg1) return 0; } -static s8 msmSysLoadBaseGroup(void *arg0) +static s32 msmSysLoadBaseGroup(void *buf) { DVDFileInfo spC; s32 var_r28; @@ -116,11 +116,11 @@ static s8 msmSysLoadBaseGroup(void *arg0) msmFioClose(&spC); return MSM_ERR_READFAIL; } - if (msmFioRead(&spC, arg0, temp_r25->unk10, temp_r25->unkC + sys.unkC->unk40) < 0) { + if (msmFioRead(&spC, buf, temp_r25->unk10, temp_r25->unkC + sys.unkC->unk40) < 0) { msmFioClose(&spC); return MSM_ERR_READFAIL; } - if (!sndPushGroup((void*) (temp_r27->unk4 + (u32) temp_r27), temp_r25->unk0, arg0, + if (!sndPushGroup((void*) (temp_r27->unk4 + (u32) temp_r27), temp_r25->unk0, buf, (void*) (temp_r27->unk8 + (u32) temp_r27), (void*) (temp_r27->unk0 + (u32) temp_r27))) { msmFioClose(&spC); @@ -132,8 +132,40 @@ static s8 msmSysLoadBaseGroup(void *arg0) return 0; } -// TODO: https://decomp.me/scratch/NWiuL -// msmSysSearchGroupStack +s32 msmSysSearchGroupStack(s32 arg0, s32 arg1) +{ + UnkStructSys43C *var_r3; + u32 var_r5; + s32 var_r6; + s32 var_r7; + s32 var_r8; + s32 var_r9; + s32 var_r0; + + var_r8 = -1; + var_r9 = 0; + if (sys.unk3EC[arg0].unk2 == 0) { + var_r3 = sys.unk43C; + var_r0 = sys.unk434; + } else { + var_r3 = sys.unk474; + var_r0 = sys.unk46C; + } + for (var_r6 = 0; var_r6 < var_r0; var_r3++, var_r6++) { + if (var_r6 == arg1) { + continue; + } + if ((var_r5 = var_r3->unk04) != 0) { + if (var_r3->unk01 == 0 && var_r5 > var_r9) { + var_r9 = var_r5; + var_r7 = -(var_r6 + 1); + } + } else { + var_r8 = var_r6; + } + } + return (var_r8 < 0) ? var_r7 : var_r8; +} s32 msmSysGroupInit(DVDFileInfo *arg0) { @@ -223,6 +255,18 @@ void msmSysIrqEnable(void) } } +static inline BOOL msmSysInline00(s32 arg0) +{ + s32 var_r6; + + for (var_r6 = 0; var_r6 < sys.unk3F4 + sys.unk436 + sys.unk46E; var_r6++) { + if (sys.unk10->unk29[var_r6] == arg0) { + return TRUE; + } + } + return FALSE; +} + BOOL msmSysCheckBaseGroup(s32 arg0) { s32 var_r6; @@ -465,15 +509,265 @@ s32 msmSysDelGroupBase(s32 grpNum) return 0; } -// TODO: https://decomp.me/scratch/zexTY -// msmSysLoadGroupBase +static inline s32 msmSysPushGroup(DVDFileInfo *arg0, void *buf, UnkStructSys43C *arg2, s32 arg3) +{ + unkStruct4 *temp_r30; + unkStruct3 *temp_r7; -// msmSysLoadGroupSet + temp_r30 = &sys.unk3EC[arg3]; + if (msmFioRead(arg0, arg2->unk08, temp_r30->unk8, temp_r30->unk4 + sys.unkC->unk38) < 0) { + return MSM_ERR_READFAIL; + } + if (msmFioRead(arg0, buf, temp_r30->unk10, temp_r30->unkC + sys.unkC->unk40) < 0) { + return MSM_ERR_READFAIL; + } + temp_r7 = arg2->unk08; + if (!sndPushGroup((void*) (temp_r7->unk4 + (u32) temp_r7), temp_r30->unk0, buf, + (void*) (temp_r7->unk8 + (u32) temp_r7), (void*) (temp_r7->unk0 + (u32) temp_r7))) + { + return MSM_ERR_20; + } + sys.unk8 += temp_r30->unk10; + arg2->unk00 = arg3; + arg2->unk04 = sys.unk3E0++; + return 0; +} -// msmSysLoadGroupSub +s32 msmSysLoadGroupBase(s32 arg0, void *arg1) +{ + s32 temp_r29; + s32 temp_r28; + s32 var_r23; + s32 temp_r3_2; + UnkStructSys43C *var_r24; + DVDFileInfo sp10; -// TODO: https://decomp.me/scratch/AhvXa -// msmSysLoadGroup + if (arg0 < 1 || arg0 >= sys.unk3DC) { + return MSM_ERR_64; + } + var_r23 = msmSysDelGroupAll(); + if (var_r23 != 0) { + return var_r23; + } + temp_r29 = sys.unk3F4 + sys.unk436 + sys.unk46E; + if (msmSysInline00(arg0)) { + return 0; + } + if (temp_r29 >= 0xF) { + return MSM_ERR_65; + } + temp_r3_2 = msmSysSearchGroupStack(arg0, -1); + if (temp_r3_2 < 0) { + return MSM_ERR_65; + } + temp_r28 = sys.unk3EC[arg0].unk2; + if (!temp_r28) { + var_r24 = &sys.unk43C[temp_r3_2]; + } else { + var_r24 = &sys.unk474[temp_r3_2]; + } + if (msmFioOpen(sys.unk0, &sp10) != 1) { + return MSM_ERR_OPENFAIL; + } + var_r23 = msmSysPushGroup(&sp10, arg1, var_r24, arg0); + if (var_r23 != 0) { + msmFioClose(&sp10); + return var_r23; + } + msmFioClose(&sp10); + sys.unk10->unk29[temp_r29] = arg0; + var_r24->unk01 = 1; + if (temp_r28 == 0) { + sys.unk436++; + sys.unk435++; + } else { + sys.unk46E++; + sys.unk46D++; + } + return 0; +} + +static inline s32 msmSysInline01(void) +{ + if (sys.unk3F0 != NULL) { + return sys.unk3F0->unk00; + } + return 0; +} + +s32 msmSysLoadGroupSet(s32 arg0, void *arg1) +{ + s8 sp4C[12]; // unknown length (5..12 works) + DVDFileInfo sp10; + s32 temp_r3; + s32 temp_r3_2; + s32 var_r19; + s32 var_r24; + s32 var_r31; + s8 *var_r19_2; + + if (msmSysInline01() == 0) { + return 0; + } + temp_r3 = msmSysDelGroupAll(); + if (temp_r3 != 0) { + return temp_r3; + } + var_r19_2 = &sys.unk3F0->unk02[sys.unk3F0->unk01 * arg0]; + if (msmFioOpen(sys.unk0, &sp10) != TRUE) { + return MSM_ERR_OPENFAIL; + } + sys.unk435 = sys.unk436; + var_r31 = 0; + for (; *var_r19_2 != 0; var_r19_2++) { + if (msmSysInline00(*var_r19_2)) { + continue; + } + if (sys.unk3EC[(s8) *var_r19_2].unk2 == 1) { + sp4C[var_r31++] = *var_r19_2; + } else { + temp_r3_2 = msmSysSearchGroupStack(*var_r19_2, -1); + if (temp_r3_2 < 0) { + msmFioClose(&sp10); + return MSM_ERR_65; + } + var_r19 = msmSysPushGroup(&sp10, arg1, &sys.unk43C[temp_r3_2], *var_r19_2); + if (var_r19 != 0) { + msmFioClose(&sp10); + return var_r19; + } + sys.unk435++; + } + } + sys.unk46D = sys.unk46E; + for (var_r24 = 0; var_r24 < var_r31; var_r24++) { + temp_r3_2 = msmSysSearchGroupStack(sp4C[var_r24], -1); + if (temp_r3_2 < 0) { + msmFioClose(&sp10); + return MSM_ERR_65; + } + var_r19 = msmSysPushGroup(&sp10, arg1, &sys.unk474[temp_r3_2], sp4C[var_r24]); + if (var_r19 != 0) { + msmFioClose(&sp10); + return var_r19; + } + sys.unk46D++; + } + msmFioClose(&sp10); + return 0; +} + +static s32 msmSysLoadGroupSub(DVDFileInfo *arg0, s32 arg1, void *arg2) +{ + s32 var_r30; + s32 var_r18; + s32 var_r19; + s32 var_r3; + u8 *var_r29; + UnkStructSys43C *var_r28; + unkStruct4 *temp_r23; + + var_r30 = 0; + temp_r23 = &sys.unk3EC[arg1]; + if (temp_r23->unk2 == 0) { + var_r28 = sys.unk43C; + var_r29 = &sys.unk435; + } else { + var_r28 = sys.unk474; + var_r29 = &sys.unk46D; + } + if (temp_r23->unk3 != 0) { + if (!msmSysCheckBaseGroup(sys.unk3EC[temp_r23->unk3].unk0)) { + var_r19 = -1; + for (var_r18 = 0; var_r18 < 2; var_r18++) { + var_r19 = msmSysSearchGroupStack(temp_r23->unk3, var_r19); + if (var_r19 < 0) { + var_r19 = -(var_r19 + 1); + (*var_r29)--; + sndPopGroup(); + sys.unk8 -= sys.unk3EC[var_r28[var_r19].unk00].unk10; + var_r30 = var_r28[var_r19].unk00; + var_r28[var_r19].unk04 = 0; + } + } + var_r3 = msmSysPushGroup(arg0, arg2, &var_r28[var_r19], temp_r23->unk3); + if (var_r3 != 0) { + return var_r3; + } + (*var_r29)++; + } + } + var_r19 = msmSysSearchGroupStack(arg1, -1); + if (var_r19 < 0) { + var_r19 = -(var_r19 + 1); + (*var_r29)--; + sndPopGroup(); + sys.unk8 -= sys.unk3EC[var_r28[var_r19].unk00].unk10; + var_r30 = var_r28[var_r19].unk00; + } + var_r3 = msmSysPushGroup(arg0, arg2, &var_r28[var_r19], arg1); + if (var_r3 == 0) { + var_r3 = var_r30; + } + (*var_r29)++; + return var_r3; +} + +static inline void msmSysPopGroup(s32 arg0) +{ + UnkStructSys43C *temp_r23; + + temp_r23 = &sys.unk474[arg0]; + if (temp_r23->unk04 != 0 && temp_r23->unk01 == 0) { + sndPopGroup(); + sys.unk8 -= sys.unk3EC[temp_r23->unk00].unk10; + } +} + +s32 msmSysLoadGroup(s32 grp, void *buf) +{ + UnkStructSys43C *temp_r23; + unkStruct4 *temp_r22; + s32 var_r31; + s32 var_r22; + s32 var_r21; + DVDFileInfo sp14; + s32 unused; + + if (buf == NULL) { + return 0; + } + if (grp == 0) { + return msmSysLoadBaseGroup(buf); + } + temp_r22 = &sys.unk3EC[grp]; + if (msmSysCheckLoadGroupID(temp_r22->unk0)) { + return 0; + } + if (msmFioOpen(sys.unk0, &sp14) != 1) { + return MSM_ERR_OPENFAIL; + } + if (temp_r22->unk2 == 0) { + for (var_r22 = 0; var_r22 < sys.unk46C; var_r22++) { + msmSysPopGroup(var_r22); + } + var_r21 = msmSysLoadGroupSub(&sp14, grp, buf); + for (var_r22 = 0; var_r22 < sys.unk46C; var_r22++) { + temp_r23 = &sys.unk474[var_r22]; + if (temp_r23->unk04 != 0 && temp_r23->unk01 == 0) { + var_r31 = msmSysPushGroup(&sp14, buf, temp_r23, temp_r23->unk00); + if (var_r31 != 0) { + msmFioClose(&sp14); + return var_r31; + } + } + } + } else { + var_r21 = msmSysLoadGroupSub(&sp14, grp, buf); + } + msmFioClose(&sp14); + return var_r21; +} void msmSysCheckInit(void) { From 58925bcf5d6d4a9781ca77dd505781c1980112a3 Mon Sep 17 00:00:00 2001 From: Alberto Mardegan Date: Tue, 14 Jan 2025 21:29:03 +0300 Subject: [PATCH 121/178] Fix vertex attributes (#527) * Use proper enum types for vertex attributes descriptions Positions, normals and texture coordinates are always given in integer or floating point formats, never as RGB. Also replace a couple of constants with sizeof(). * Use proper function names when specifying vertex attributes --- include/dolphin/gx/GXVert.h | 6 ++ src/game/hsfdraw.c | 150 ++++++++++++++++++------------------ 2 files changed, 81 insertions(+), 75 deletions(-) diff --git a/include/dolphin/gx/GXVert.h b/include/dolphin/gx/GXVert.h index 34745aaa..d57943b3 100644 --- a/include/dolphin/gx/GXVert.h +++ b/include/dolphin/gx/GXVert.h @@ -114,6 +114,12 @@ static inline void GXPosition3f32(const f32 x, const f32 y, const f32 z) { GXWGFifo.f32 = z; } +static inline void GXNormal3s16(const s16 x, const s16 y, const s16 z) { + GXWGFifo.s16 = x; + GXWGFifo.s16 = y; + GXWGFifo.s16 = z; +} + static inline void GXNormal3f32(const f32 x, const f32 y, const f32 z) { GXWGFifo.f32 = x; GXWGFifo.f32 = y; diff --git a/src/game/hsfdraw.c b/src/game/hsfdraw.c index 5320607c..fce142dd 100755 --- a/src/game/hsfdraw.c +++ b/src/game/hsfdraw.c @@ -482,15 +482,15 @@ static void FaceDraw(HsfDrawObject *arg0, HsfFace *arg1) { vtxModeBak = var_r22; GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, temp_r28->data.vertex->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r28->data.vertex->data, 3 * sizeof(float)); GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); if (temp_r29->hsfData->cenvCnt == 0) { - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGB8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_S8, 0); GXSetArray(GX_VA_NRM, temp_r28->data.normal->data, 3); } else { - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_NRM, temp_r28->data.normal->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, temp_r28->data.normal->data, 3 * sizeof(float)); } if (var_r22 & 4) { GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); @@ -555,24 +555,24 @@ static void FaceDraw(HsfDrawObject *arg0, HsfFace *arg1) { vtxModeBak = var_r22; GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, temp_r28->data.vertex->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r28->data.vertex->data, 3 * sizeof(float)); if (var_r22 & 2) { GXSetVtxDesc(GX_VA_NBT, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NBT, GX_NRM_NBT, GX_RGBA4, 8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NBT, GX_NRM_NBT, GX_S16, 8); } else { GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); if (temp_r29->hsfData->cenvCnt == 0) { - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGB8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_S8, 0); GXSetArray(GX_VA_NRM, temp_r28->data.normal->data, 3); } else { - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_NRM, temp_r28->data.normal->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, temp_r28->data.normal->data, 3 * sizeof(float)); } } GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); - GXSetArray(GX_VA_TEX0, temp_r28->data.st->data, 8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX0, temp_r28->data.st->data, 2 * sizeof(float)); if (var_r22 & 4) { GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); @@ -1643,15 +1643,15 @@ static void FaceDrawShadow(HsfDrawObject *arg0, HsfFace *arg1) { vtxModeBak = var_r30; GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, temp_r31->data.vertex->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r31->data.vertex->data, 3 * sizeof(float)); GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); if (temp_r28->hsfData->cenvCnt == 0) { - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGB8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_S8, 0); GXSetArray(GX_VA_NRM, temp_r31->data.normal->data, 3); } else { - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_NRM, temp_r31->data.normal->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, temp_r31->data.normal->data, 3 * sizeof(float)); } if (var_r30 & 4) { GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); @@ -1676,24 +1676,24 @@ static void FaceDrawShadow(HsfDrawObject *arg0, HsfFace *arg1) { vtxModeBak = var_r30; GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_POS, temp_r31->data.vertex->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, temp_r31->data.vertex->data, 3 * sizeof(float)); if (var_r30 & 2) { GXSetVtxDesc(GX_VA_NBT, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NBT, GX_NRM_NBT, GX_RGBA4, 8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NBT, GX_NRM_NBT, GX_S16, 8); } else { GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); if (temp_r28->hsfData->cenvCnt == 0) { GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGB8, 0); GXSetArray(GX_VA_NRM, temp_r31->data.normal->data, 3); } else { - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGBA6, 0); - GXSetArray(GX_VA_NRM, temp_r31->data.normal->data, 0xC); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, temp_r31->data.normal->data, 3 * sizeof(float)); } } GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); - GXSetArray(GX_VA_TEX0, temp_r31->data.st->data, 8); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX0, temp_r31->data.st->data, 2 * sizeof(float)); if (var_r30 & 4) { GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); @@ -2523,53 +2523,53 @@ static void MDFaceDraw(HsfObject *arg0, HsfFace *arg1) { case 2: GXBegin(GX_TRIANGLES, GX_VTXFMT0, faceNumBuf[drawCnt]); for (var_r27 = 0; var_r27 < faceNumBuf[drawCnt] / 3; var_r27++, arg1++) { - GXUnknownu16(arg1->indices[0][0]); + GXPosition1x16(arg1->indices[0][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[0][1]); + GXNormal1x16(arg1->indices[0][1]); } else { MakeCalcNBT(arg0, arg1, 0, 1); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[0][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[0][3]); + GXTexCoord1x16(arg1->indices[0][3]); } - GXUnknownu16(arg1->indices[2][0]); + GXPosition1x16(arg1->indices[2][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[2][1]); + GXNormal1x16(arg1->indices[2][1]); } else { MakeNBT(arg0, arg1, 2, 0); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[2][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[2][3]); + GXTexCoord1x16(arg1->indices[2][3]); } - GXUnknownu16(arg1->indices[1][0]); + GXPosition1x16(arg1->indices[1][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[1][1]); + GXNormal1x16(arg1->indices[1][1]); } else { MakeNBT(arg0, arg1, 1, 2); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[1][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[1][3]); + GXTexCoord1x16(arg1->indices[1][3]); } } faceCnt = faceNumBuf[drawCnt] / 3; @@ -2577,140 +2577,140 @@ static void MDFaceDraw(HsfObject *arg0, HsfFace *arg1) { case 3: GXBegin(GX_QUADS, GX_VTXFMT0, faceNumBuf[drawCnt]); for (var_r27 = 0; var_r27 < faceNumBuf[drawCnt] / 4; var_r27++, arg1++) { - GXUnknownu16(arg1->indices[0][0]); + GXPosition1x16(arg1->indices[0][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[0][1]); + GXNormal1x16(arg1->indices[0][1]); } else { MakeCalcNBT(arg0, arg1, 0, 1); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[0][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[0][3]); + GXTexCoord1x16(arg1->indices[0][3]); } - GXUnknownu16(arg1->indices[2][0]); + GXPosition1x16(arg1->indices[2][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[2][1]); + GXNormal1x16(arg1->indices[2][1]); } else { MakeNBT(arg0, arg1, 2, 0); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[2][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[2][3]); + GXTexCoord1x16(arg1->indices[2][3]); } - GXUnknownu16(arg1->indices[3][0]); + GXPosition1x16(arg1->indices[3][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[3][1]); + GXNormal1x16(arg1->indices[3][1]); } else { MakeNBT(arg0, arg1, 3, 2); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[3][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[3][3]); + GXTexCoord1x16(arg1->indices[3][3]); } - GXUnknownu16(arg1->indices[1][0]); + GXPosition1x16(arg1->indices[1][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[1][1]); + GXNormal1x16(arg1->indices[1][1]); } else { MakeNBT(arg0, arg1, 1, 3); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[1][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[1][3]); + GXTexCoord1x16(arg1->indices[1][3]); } } faceCnt = faceNumBuf[drawCnt] / 4; break; case 4: GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, faceNumBuf[drawCnt]); - GXUnknownu16(arg1->indices[0][0]); + GXPosition1x16(arg1->indices[0][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[0][1]); + GXNormal1x16(arg1->indices[0][1]); } else { MakeCalcNBT(arg0, arg1, 0, 1); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[0][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[0][3]); + GXTexCoord1x16(arg1->indices[0][3]); } - GXUnknownu16(arg1->indices[2][0]); + GXPosition1x16(arg1->indices[2][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[2][1]); + GXNormal1x16(arg1->indices[2][1]); } else { MakeNBT(arg0, arg1, 2, 0); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[2][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[2][3]); + GXTexCoord1x16(arg1->indices[2][3]); } - GXUnknownu16(arg1->indices[1][0]); + GXPosition1x16(arg1->indices[1][0]); if (var_r26 == -1) { - GXUnknownu16(arg1->indices[1][1]); + GXNormal1x16(arg1->indices[1][1]); } else { MakeNBT(arg0, arg1, 1, 2); } if (temp_r30->vtxMode == 5) { temp_r28 = arg1->indices[1][2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(arg1->indices[1][3]); + GXTexCoord1x16(arg1->indices[1][3]); } var_r24 = arg1->strip.data; for (var_r27 = 0; var_r27 < arg1->strip.count; var_r27++, var_r24 += 4) { - GXUnknownu16(var_r24[0]); + GXPosition1x16(var_r24[0]); if (var_r26 == -1) { - GXUnknownu16(var_r24[1]); + GXNormal1x16(var_r24[1]); } else { MakeCalcNBT(arg0, arg1, 0, 1); } if (temp_r30->vtxMode == 5) { temp_r28 = var_r24[2]; - GXUnknownu16(temp_r28); + GXColor1x16(temp_r28); if (((GXColor*) arg0->data.color->data)[temp_r28].a != 0xFF) { Hu3DObjInfoP->flags |= 0x4001; } } if (var_r25 != 0) { - GXUnknownu16(var_r24[3]); + GXTexCoord1x16(var_r24[3]); } } faceCnt = arg1->strip.count + 1; @@ -2755,9 +2755,9 @@ static s32 MakeCalcNBT(HsfObject *arg0, HsfFace *arg1, s16 arg2, s16 arg3) { NBTB.z = temp_r31[temp_r25].z - temp_r31[temp_r24].z; VECNormalize(&NBTB, &NBTB); VECCrossProduct(&NBTB, &sp10, &NBTT); - GXPosition3s16(sp10.x * 256.0f, sp10.y * 256.0f, sp10.z * 256.0f); - GXPosition3s16(NBTB.x * 256.0f, NBTB.y * 256.0f, NBTB.z * 256.0f); - GXPosition3s16(NBTT.x * 256.0f, NBTT.y * 256.0f, NBTT.z * 256.0f); + GXNormal3s16(sp10.x * 256.0f, sp10.y * 256.0f, sp10.z * 256.0f); + GXNormal3s16(NBTB.x * 256.0f, NBTB.y * 256.0f, NBTB.z * 256.0f); + GXNormal3s16(NBTT.x * 256.0f, NBTT.y * 256.0f, NBTT.z * 256.0f); } static s32 MakeNBT(HsfObject *arg0, HsfFace *arg1, s16 arg2, s16 arg3) { @@ -2781,9 +2781,9 @@ static s32 MakeNBT(HsfObject *arg0, HsfFace *arg1, s16 arg2, s16 arg3) { sp10.z = temp_r29[temp_r28][2]; VECNormalize(&sp10, &sp10); } - GXPosition3s16(sp10.x * 256.0f, sp10.y * 256.0f, sp10.z * 256.0f); - GXPosition3s16(NBTB.x * 256.0f, NBTB.y * 256.0f, NBTB.z * 256.0f); - GXPosition3s16(NBTT.x * 256.0f, NBTT.y * 256.0f, NBTT.z * 256.0f); + GXNormal3s16(sp10.x * 256.0f, sp10.y * 256.0f, sp10.z * 256.0f); + GXNormal3s16(NBTB.x * 256.0f, NBTB.y * 256.0f, NBTB.z * 256.0f); + GXNormal3s16(NBTT.x * 256.0f, NBTT.y * 256.0f, NBTT.z * 256.0f); } static void MDFaceCnt(HsfObject *arg0, HsfFace *arg1) { From c621824464d7574ff610227fc0f094eaf80e2f36 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Tue, 14 Jan 2025 22:36:09 +0100 Subject: [PATCH 122/178] Change back string.c/h, fix m434Dll, work on m433Dll/player.c (#530) * Change back string.h as the change breaks things * Fix m434Dll * Work on m433Dll/player.c --- config/GMPE01_00/rels/m433Dll/symbols.txt | 10 +- config/GMPE01_00/rels/m434Dll/symbols.txt | 6 +- config/GMPP01_00/rels/m434Dll/symbols.txt | 8 +- configure.py | 2 +- include/REL/m433Dll.h | 4 +- include/string.h | 17 +- src/MSL_C.PPCEABI.bare.H/string.c | 1 + src/REL/m433Dll/main.c | 4 +- src/REL/m433Dll/player.c | 4091 +++++++++++++++++++++ src/REL/m434Dll/player.c | 1 + 10 files changed, 4113 insertions(+), 31 deletions(-) create mode 100644 src/REL/m433Dll/player.c diff --git a/config/GMPE01_00/rels/m433Dll/symbols.txt b/config/GMPE01_00/rels/m433Dll/symbols.txt index df299b4f..11a976cf 100644 --- a/config/GMPE01_00/rels/m433Dll/symbols.txt +++ b/config/GMPE01_00/rels/m433Dll/symbols.txt @@ -242,7 +242,7 @@ lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data: lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 scope:local data:float lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float @@ -264,8 +264,8 @@ lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data: lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 scope:local data:4byte -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 scope:local data:float lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float @@ -311,7 +311,7 @@ lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data: lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:double lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 scope:local data:double -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x8 scope:local data:4byte lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 scope:local data:double lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 scope:local data:double lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float @@ -441,7 +441,7 @@ lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 scope:local data:str lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 scope:local data:string lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 scope:local data:string lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 scope:local data:string -lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 +lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 data:string jumptable_1_data_654 = .data:0x00000654; // type:object size:0x20 scope:local lbl_1_data_674 = .data:0x00000674; // type:object size:0xC lbl_1_data_680 = .data:0x00000680; // type:object size:0x8 diff --git a/config/GMPE01_00/rels/m434Dll/symbols.txt b/config/GMPE01_00/rels/m434Dll/symbols.txt index 63082c5e..288bd0ad 100644 --- a/config/GMPE01_00/rels/m434Dll/symbols.txt +++ b/config/GMPE01_00/rels/m434Dll/symbols.txt @@ -303,9 +303,9 @@ lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x18 lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x28 lbl_1_data_224 = .data:0x00000224; // type:object size:0x90 -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 data:string -lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 data:string -lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x3 data:string +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 scope:local data:string +lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 scope:local data:string +lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x3 scope:local data:string lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x8 lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m434Dll/symbols.txt b/config/GMPP01_00/rels/m434Dll/symbols.txt index 185c6a51..c3cfd4b9 100644 --- a/config/GMPP01_00/rels/m434Dll/symbols.txt +++ b/config/GMPP01_00/rels/m434Dll/symbols.txt @@ -187,7 +187,7 @@ lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data: lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float @@ -300,9 +300,9 @@ lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x18 lbl_1_data_1FC = .data:0x000001FC; // type:object size:0x28 lbl_1_data_224 = .data:0x00000224; // type:object size:0x90 -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 data:string -lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 data:string -lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x3 data:string +lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3 scope:local data:string +lbl_1_data_2B7 = .data:0x000002B7; // type:object size:0x3 scope:local data:string +lbl_1_data_2BA = .data:0x000002BA; // type:object size:0x3 scope:local data:string lbl_1_data_2C0 = .data:0x000002C0; // type:object size:0x8 lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:float lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index fdbbbc1a..e6026c86 100644 --- a/configure.py +++ b/configure.py @@ -1131,7 +1131,7 @@ config.libs = [ objects={ Object(Matching, "REL/m434Dll/main.c"), Object(Matching, "REL/m434Dll/map.c"), - Object(NonMatching, "REL/m434Dll/player.c"), + Object(Matching, "REL/m434Dll/player.c"), Object(Matching, "REL/m434Dll/fish.c"), }, ), diff --git a/include/REL/m433Dll.h b/include/REL/m433Dll.h index e2a18da8..5028045a 100644 --- a/include/REL/m433Dll.h +++ b/include/REL/m433Dll.h @@ -23,8 +23,8 @@ typedef struct M433DllWork { void fn_1_584(omObjData *object); void fn_1_618(omObjData *object); -s32 fn_1_216C(void); -s32 fn_1_2184(void); +u32 fn_1_216C(void); +u32 fn_1_2184(void); void fn_1_219C(s32 arg0, s32 arg1, s32 arg2); void fn_1_21E4(s32 arg0); void fn_1_2214(s32 arg0); diff --git a/include/string.h b/include/string.h index 92f8f122..6ba311ed 100644 --- a/include/string.h +++ b/include/string.h @@ -1,22 +1,11 @@ #ifndef _STRING_H_ #define _STRING_H_ -#include "stddef.h" +typedef unsigned long size_t; -#ifdef __MWERKS__ -__declspec(section ".init") void* memcpy(void* dest, const void* src, size_t n); -__declspec(section ".init") void __fill_mem(void* dest, int val, size_t count); -__declspec(section ".init") void* memset(void* dest, int val, size_t count); -#else -void* memcpy(void* dest, const void* src, size_t n); -void __fill_mem(void* dest, int val, size_t count); -void* memset(void* dest, int val, size_t count); -#endif +void* memcpy(void* dst, const void* src, size_t n); +void* memset(void* dst, int val, size_t n); -int memcmp(const void* lhs, const void* rhs, size_t count); -void* __memrchr(const void* ptr, int ch, size_t count); -void* memchr(const void* ptr, int ch, size_t count); -void* memmove(void* dst, const void* src, size_t n); char* strrchr(const char* str, int c); char* strchr(const char* str, int c); int strncmp(const char* str1, const char* str2, size_t n); diff --git a/src/MSL_C.PPCEABI.bare.H/string.c b/src/MSL_C.PPCEABI.bare.H/string.c index 833447df..4fbb776f 100644 --- a/src/MSL_C.PPCEABI.bare.H/string.c +++ b/src/MSL_C.PPCEABI.bare.H/string.c @@ -1,4 +1,5 @@ #include "string.h" +#include "stddef.h" static int K1 = 0x80808080; static int K2 = 0xFEFEFEFF; diff --git a/src/REL/m433Dll/main.c b/src/REL/m433Dll/main.c index 6e8975db..df35b851 100644 --- a/src/REL/m433Dll/main.c +++ b/src/REL/m433Dll/main.c @@ -353,12 +353,12 @@ s32 fn_1_2154(void) return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_0C; } -s32 fn_1_216C(void) +u32 fn_1_216C(void) { return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_14; } -s32 fn_1_2184(void) +u32 fn_1_2184(void) { return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_24; } diff --git a/src/REL/m433Dll/player.c b/src/REL/m433Dll/player.c new file mode 100644 index 00000000..cbe26c9a --- /dev/null +++ b/src/REL/m433Dll/player.c @@ -0,0 +1,4091 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/flag.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m433Dll.h" + +#ifndef __MWERKS__ +#include "game/esprite.h" +#include "game/frand.h" +#endif + +typedef struct M433PlayerWork { + s32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + char unk10[4]; + u32 unk_14; + u32 unk_18; + u32 unk_1C; + s32 unk_20; + float unk_24; + float unk_28; + s32 unk_2C; + s32 unk_30; + s32 unk_34; + s32 unk_38; + s32 unk_3C; + s32 unk_40; + s32 unk_44; + s32 unk_48; + s32 unk_4C; + char unk50[4]; + s32 unk_54; + char unk58[4]; + s32 unk_5C; + s32 unk_60; + s32 unk_64; + s32 unk_68; + s32 unk_6C; + s32 unk_70; + u32 unk_74; + u32 unk_78; + u32 unk_7C; + u32 unk_80; + u32 unk_84; + u32 unk_88; + s32 unk_8C; + u32 unk_90; + char unk94[4]; + float unk_98; + s16 unk_9C; + char unk9E[6]; + float unk_A4; + float unk_A8; + float unk_AC; + float unk_B0; + float unk_B4; + float unk_B8; + float unk_BC; + float unk_C0; + char unkC4[0x08]; + u32 unk_CC; + u32 unk_D0; + u32 unk_D4; + u32 unk_D8; + float unk_DC; + float unk_E0; + s32 unk_E4; + s32 unk_E8; + s32 unk_EC; + s32 unk_F0; + s32 unk_F4; + u32 unk_F8; + Vec unk_FC; + Vec unk_108; + Vec unk_114; + float unk_120; + float unk_124; + Vec unk_128; + Vec unk_134; + Vec unk_140; + omObjData *unk_14C; +} M433PlayerWork; /* size = 0x150 */ + +typedef struct M433PlayerWork2 { + char unk00[0x18]; + s16 unk_18; + char unk1A[0x16]; + float unk_30; + float unk_34; + float unk_38; + char unk3C[0x7C]; + float unk_B8; + float unk_BC; + float unk_C0; + float unk_C4; + Mtx unk_C8; + char unkF8[0x44]; +} M433PlayerWork2; /* size = 0x13C */ + +typedef struct M433PlayerWork3SubStruct { + char unk00[2]; + s16 unk_02[5]; +} M433PlayerWork3SubStruct; /* size = 0xC */ + +typedef struct M433PlayerWork3SubStruct2 { + char unk00[0x78]; + s16 unk_78; + s16 unk_7A; + char unk7C[0x28]; + s16 unk_A4; + s16 unk_A6; + char unkA8[0x3E8]; + s32 unk_490[2]; + char unk498[8]; +} M433PlayerWork3SubStruct2; /* size = 0x4A0 */ + +typedef struct M433PlayerWork3 { + s32 unk_00; + s32 unk_04; + s32 unk_08; + char unk0C[0xC]; + s32 unk_18; + s32 unk_1C; + char unk20[0xC]; + s32 unk_2C; + s32 unk_30; + char unk34[0x18]; + M433PlayerWork3SubStruct unk_4C[2]; + M433PlayerWork3SubStruct2 unk_64; +} M433PlayerWork3; /* size = 0x504 */ + +typedef struct M433DllPlayerData24CStruct { + /* 0x00 */ u16 unk_00; + /* 0x04 */ float unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ u32 unk_10; +} M433DllPlayerData24CStruct; /* size = 0x14 */ + +typedef struct M433DllPlayerData6C0Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ char pad_04[0xC]; /* maybe part of unk_00[4]? */ +} M433DllPlayerData6C0Struct; /* size = 0x10 */ + +typedef struct M433DllPlayerData794Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ s32 unk_08; +} M433DllPlayerData794Struct; /* size = 0x0C */ + +void fn_1_10130(Vec *arg0, u32 arg1); +void fn_1_10260(float arg8, float arg9, u32 arg0, s32 arg1, Vec *arg2); +s32 fn_1_10614(Vec *arg0); +void fn_1_1070C(void); +u32 fn_1_10740(Vec *arg0); +u32 fn_1_107B0(Vec *arg0); +float fn_1_10848(void); +u32 fn_1_108C4(void); +u32 fn_1_10900(void); +float fn_1_10B20(float arg8, Vec *arg0); +s32 fn_1_10D24(Vec *arg0); +u32 fn_1_10EA4(void); +u32 fn_1_10ECC(u32 arg0); +s32 fn_1_10F00(u32 arg0); +u32 fn_1_10F38(u32 arg0); +s32 fn_1_10F6C(u32 arg0); +u32 fn_1_10FDC(void); +s32 fn_1_11004(u32 arg0, s32 arg1); +s32 fn_1_11060(u32 arg0); +float fn_1_11130(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3); +void fn_1_5B98(omObjData *object); +void fn_1_6070(omObjData *object); +void fn_1_60C0(omObjData *object); +void fn_1_682C(omObjData *object); +void fn_1_722C(omObjData *object); +void fn_1_74D4(omObjData *object); +void fn_1_8408(omObjData *object); +void fn_1_873C(omObjData *object); +s32 fn_1_8938(u32 arg0, Vec *arg1); +void fn_1_8BD0(omObjData *object); +void fn_1_8F80(omObjData *object); +void fn_1_9688(omObjData *object); +void fn_1_A618(omObjData *object); +void fn_1_AB88(omObjData *object); +void fn_1_B194(omObjData *object); +void fn_1_B4D4(omObjData *object, u32 arg1); +s32 fn_1_B6E0(omObjData *object); +s32 fn_1_B7AC(omObjData *object); +s32 fn_1_BAE0(omObjData *object, u32 arg1); +void fn_1_BD48(omObjData *object); +void fn_1_C240(omObjData *object); +void fn_1_C6AC(omObjData *object); +s32 fn_1_C6B0(omObjData *object); +void fn_1_CB98(omObjData *object); +void fn_1_CDB8(float *arg0, Vec *arg1, Vec *arg2, u32 arg3, float arg8); +void fn_1_D180(float *arg0); +void fn_1_D338(float *arg0); +s32 fn_1_D4E0(float *arg0, Vec *arg1, Vec *arg2, float arg8); +void fn_1_D6A8(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_D888(Vec *arg0, float arg8); +void fn_1_DD70(Vec *arg0); +void fn_1_DE28(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_DF44(omObjData *object); +void fn_1_E11C(omObjData *object); +void fn_1_E5C0(M433PlayerWork3SubStruct *arg0, M433PlayerWork3SubStruct2 *arg1); +void fn_1_ECFC(void *arg0, void *arg1); +void fn_1_FE64(void *arg0, s32 arg1, s32 arg2, u32 arg3); +void fn_1_FE8C(Vec *arg0, u32 arg1, u32 arg2, s32 arg3); + +float lbl_1_data_E0[0xE] = { + 130.0f, + 130.0f, + 160.0f, + 130.0f, + 130.0f, + 160.0f, + 160.0f, + 180.0f, + 240.00002f, + 100.0f, + 130.0f, + 130.0f, + 120.00001f, + 130.0f, +}; +float lbl_1_data_118[0xE] = { + 50.0f, + 50.0f, + 50.0f, + 50.0f, + 50.0f, + 70.0f, + 50.0f, + 70.0f, + 110.0f, + 50.0f, + 50.0f, + 50.0f, + 50.0f, + 50.0f, +}; +s32 lbl_1_data_150[6][2] = { + { 0x3A, 0x3B }, + { 0x36, 0x38 }, + { 0x40, 0x42 }, + { 0x4B, 0x4D }, + { 0x46, 0x48 }, + { 0x3E, 0x3F }, +}; +s32 lbl_1_data_180[0x11] = { + 0x400061, + 0x400062, + 0x400063, + 0x400064, + 0x400065, + 0x400066, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, +}; +u32 lbl_1_data_1C4[0x11] = { + 0, + 2, + 3, + 0x400011, + 0x400019, + 0x400021, + 0x400029, + 0x400031, + 0x400039, + 0x400041, + 0x400049, + 0x400051, + 0x400059, + 0x17, + 0x18, + 0x48, + 0x49, +}; +s32 lbl_1_data_208[0x11] = { + 0x400067, + 0x40006D, + 0x400073, + 0x400079, + 0x40007F, + 0x400085, + 0x40008B, + 0x400091, + 0x400097, + 0x40009D, + 0x4000A3, + 0x4000A9, + 0x4000AF, + 0x4000B5, + 0x4000C1, + 0x4000BB, + 0x4000C7, +}; +M433DllPlayerData24CStruct lbl_1_data_24C[0x15] = { + { 0, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 1, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 2, 0.2f, 0.0f, -1.0f, 0x40000001 }, + { 3, 0.15f, 0.0f, 0.0f, 0 }, + { 3, 0.02f, 0.0f, -1.0f, 0 }, + { 4, 0.02f, 0.2f, -1.0f, 0 }, + { 5, 0.05f, 0.25f, -1.0f, 0 }, + { 6, 0.1f, 0.0f, -1.0f, 0 }, + { 7, 0.02f, 0.0f, -1.0f, 0 }, + { 0xB, 0.02f, 0.4f, -1.0f, 0 }, + { 0xC, 0.02f, 0.36666667f, -1.0f, 0 }, + { 8, 0.01f, 0.2f, -1.0f, 0 }, + { 9, 0.02f, 0.0f, -1.0f, 0 }, + { 0xA, 0.02f, 0.0f, -1.0f, 0 }, + { 5, 0.08f, 0.0f, 0.25f, 0 }, + { 0xB, 0.2f, 0.0f, 0.4f, 0 }, + { 0xC, 0.08f, 0.0f, 0.3f, 0 }, + { 0xD, 0.2f, 0.0f, -1.0f, 0 }, + { 0xE, 0.2f, 0.0f, -1.0f, 0 }, + { 0xF, 0.2f, 0.0f, -1.0f, 0 }, + { 0x10, 0.2f, 0.0f, -1.0f, 0 }, +}; +u32 lbl_1_data_3F0[0xE] = { + 0x32, + 0x32, + 0x3C, + 0x32, + 0x32, + 0x5A, + 0x32, + 0x3C, + 0x64, + 0x1E, + 0x32, + 0x1E, + 0x28, + 0x32, +}; +char *lbl_1_data_450[6] = { + "itemhook_R", + "itemhook_r", + "itemhook_R", + "itemhook_R", + "itemhook_r", + "itemhook_r", +}; +s32 lbl_1_data_468[9] = { 0, 0, 1, 1, 1, 1, 1, 0, 1 }; +float lbl_1_data_48C[0x12] = { + 0.0f, + 0.6666667f, + 2.1666667f, + 2.0f, + 1.0f, + 7.0000005f, + 1.5000001f, + 1.5000001f, + 3.0000002f, + 0.0f, + 0.0f, + 1e-45f, + 0.0f, + 0.0f, + 1e-45f, + 0.0f, + 0.0f, + 1e-45f, +}; +Vec lbl_1_data_4D4[9] = { + { 0.0f, 0.0f, 1.0f }, + { 0.0f, 1.5f, 1.0f }, + { 236.5f, 0.0f, 1300.0f }, + { 0.0f, 1.5f, 1.0f }, + { 0.0f, 1.8f, 1.0f }, + { 231.0f, 0.0f, 1500.0f }, + { 231.0f, 0.0f, 1000.0f }, + { 0.0f, 1.2f, 1.0f }, + { 0.0f, 0.8f, 1.0f }, +}; +float lbl_1_data_540[9] = { 1.0f, 1.0f, 3.0f, 1.0f, 1.0f, 4.0f, 2.0f, 1.0f, 1.0f }; +s8 lbl_1_data_564 = 0xA; +u16 lbl_1_data_674[6] = { 0, 1, 2, 3, 3, 0 }; +s32 lbl_1_data_680[2] = { 0x61001E, 0x61001F }; +Vec2f lbl_1_data_688[5] = { + { 0.0f, 0.0f }, + { 0.0f, 0.0f }, + { -23.0f, 0.0f }, + { 1.0f, 0.0f }, + { 21.0f, 0.0f }, +}; +Vec2f lbl_1_data_6B0[2] = { { 72.0f, 56.0f }, { 504.0f, 56.0f } }; +M433DllPlayerData6C0Struct lbl_1_data_6C0[0xB] = { + { 0x13000B }, + { 0x13000C }, + { 0x13000D }, + { 0x13000E }, + { 0x13000F }, + { 0x130010 }, + { 0x130011 }, + { 0x130012 }, + { 0x130013 }, + { 0x130014 }, + { 0x130099 }, +}; +s32 lbl_1_data_770[9] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +M433DllPlayerData794Struct lbl_1_data_794[9] = { + { 0, 0, 0 }, + { 0, 0, 0 }, + { 1, 1, 0 }, + { 1, 0, 1 }, + { 1, 0, 1 }, + { 1, 1, 0 }, + { 1, 1, 0 }, + { 1, 0, 1 }, + { 1, 0, 1 }, +}; +u32 lbl_1_data_800[9] = { 0, 1, 2, 1, 1, 2, 1, 1, 1 }; + +// M433PlayerWork +omObjData *lbl_1_bss_7D0[5]; +// M433PlayerWork2 +omObjData *lbl_1_bss_7CC; +// M433PlayerWork3 +omObjData *lbl_1_bss_7C8; +u32 lbl_1_bss_7B8[4]; + +void fn_1_5904(Process *process) +{ + u32 sp18[4]; + s32 sp8[4]; + + s16 var_r31; + s16 var_r30; + u32 var_r28; + omObjData *var_r27; + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + sp18[var_r31] = GWPlayerCfg[var_r31].group; + sp8[var_r31] = var_r31; + } + for (var_r31 = 0; var_r31 < 3; var_r31++) { + for (var_r30 = var_r31 + 1; var_r30 < 4; var_r30++) { + if (sp18[var_r31] > sp18[var_r30]) { + var_r28 = sp18[var_r31]; + sp18[var_r31] = sp18[var_r30]; + sp18[var_r30] = var_r28; + var_r28 = sp8[var_r31]; + sp8[var_r31] = sp8[var_r30]; + sp8[var_r30] = var_r28; + } + } + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_7B8[sp8[var_r31]] = var_r31; + } + lbl_1_bss_7C8 = omAddObjEx(process, 0x14, 0, 0, 0, fn_1_DF44); + lbl_1_bss_7CC = omAddObjEx(process, 0x15, 0x1F, 0, 0, fn_1_BD48); + omMakeGroupEx(process, 0, 4); + omGetGroupMemberListEx(process, 0); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + var_r27 = lbl_1_bss_7D0[var_r31] = omAddObjEx(process, 0x28, 2, 0x11, 0, fn_1_5B98); + var_r27->work[0] = var_r31; + } +} + +void fn_1_5B74(void) +{ + CharModelKill(-1); +} + +void fn_1_5B98(omObjData *object) +{ + s32 sp8; + M433PlayerWork *work; + s16 var_r29; + u32 var_r28; + s32 var_r27; + + float spC[4] = { 0.25f, 0.5f, 0.75f, 1.0f }; + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433PlayerWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M433PlayerWork)); + var_r27 = object->work[0]; + var_r28 = GWPlayerCfg[var_r27].character; + work->unk_00 = var_r28; + work->unk_04 = -1; + if (var_r28 >= 8) { + work->unk_04 = var_r28 - 8; + } + sp8 = work->unk_08 = 0; + work->unk_14 = (lbl_1_bss_7B8[object->work[0]] >> 1) & 1; + work->unk_18 = lbl_1_bss_7B8[object->work[0]] & 1; + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if ((var_r29 != object->work[0]) && (work->unk_14 == ((lbl_1_bss_7B8[var_r29] >> 1) & 1))) { + break; + } + } + work->unk_14C = lbl_1_bss_7D0[var_r29]; + work->unk_C0 = spC[GWPlayerCfg[var_r27].diff & 3]; + work->unk_2C = GWPlayerCfg[object->work[0]].iscom; + if (work->unk_04 < 0) { + object->model[0] = CharModelCreate(var_r28, 4); + CharModelStepTypeSet(var_r28, 2); + } + else { + object->model[0] = Hu3DModelCreateFile(lbl_1_data_180[work->unk_04]); + } + Hu3DModelShadowSet(object->model[0]); + object->model[1] = Hu3DModelCreateFile(0x400008); + Hu3DModelLayerSet(object->model[1], 1); + for (var_r29 = 0; var_r29 < 0x11; var_r29++) { + if (work->unk_04 < 0) { + if (lbl_1_data_1C4[var_r29] < 0x10000) { + object->motion[var_r29] = CharModelMotionCreate(var_r28, lbl_1_data_1C4[var_r29]); + } + else { + object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], var_r28 + lbl_1_data_1C4[var_r29]); + } + } + else { + object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], work->unk_04 + lbl_1_data_208[var_r29]); + } + } + if (work->unk_04 < 0) { + CharModelVoiceEnableSet(var_r28, object->motion[16], 0); + CharModelMotionDataClose(var_r28); + } + else { + CharModelEffectNpcInitSilent(object->model[0], object->motion[1], 0); + CharModelEffectNpcInitSilent(object->model[0], object->motion[2], 1); + } + object->trans.x = work->unk_128.x = (0.4f * (700.0f * (object->work[0] + 1))) - 700.0f; + object->trans.y = work->unk_128.y = 0.0f; + object->trans.z = work->unk_128.z = 0.0f; + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + work->unk_A4 = work->unk_A8 = 0.0f; + work->unk_AC = 0.0f; + work->unk_B0 = 0.02f; + work->unk_120 = lbl_1_data_118[var_r28]; + work->unk_0C = -1; + work->unk_70 = -1; + fn_1_B4D4(object, 0); + work->unk_74 = 0; + object->func = fn_1_6070; +} + +void fn_1_6070(omObjData *object) +{ + M433PlayerWork *work = object->data; + fn_1_722C(object); + work->unk_74 = 0; + object->func = fn_1_60C0; +} + +void fn_1_60C0(omObjData *object) +{ + Vec spC; + float var_f31; + float var_f30; + + M433PlayerWork *work; + s32 var_r29; + M433PlayerWork *var_r28; + + work = object->data; + var_r29 = 0; + var_r28 = work->unk_14C->data; + work->unk_1C = 0; + work->unk_20 = 0; + work->unk_28 = 0.0f; + work->unk_24 = 0.0f; + if ((work->unk_30 == 0) && (work->unk_70 != fn_1_10ECC(work->unk_14))) { + work->unk_70 = fn_1_10ECC(work->unk_14); + switch (fn_1_10ECC(work->unk_14)) { + case 0: + work->unk_6C = 0; + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + work->unk_74 = 0; + work->unk_38 = 0; + work->unk_3C = work->unk_40 = 0; + work->unk_128.y = 0.0f; + if (work->unk_18 == fn_1_10F38(work->unk_14)) { + if (fn_1_10F00(work->unk_14) != 0) { + work->unk_128.z = 0.0f; + work->unk_128.x = 840.00006f; + work->unk_74 = 1; + work->unk_38 = 1; + } + else { + work->unk_128.z = 140.0f; + work->unk_128.x = 540.2f; + } + } + else { + work->unk_128.z = -140.0f; + work->unk_128.x = 385.1f; + } + work->unk_A4 = work->unk_A8 = -90.0f; + work->unk_AC = 1.0f; + work->unk_B0 = 1.0f; + if (work->unk_14 == 0) { + work->unk_128.x *= -1.0f; + work->unk_A4 = work->unk_A8 = 90.0f; + } + work->unk_0C = -1; + work->unk_34 = 1; + work->unk_88 = work->unk_8C = 0; + work->unk_7C = work->unk_78 = work->unk_80 = 0; + break; + case 1: + case 2: + if (work->unk_74 == 1) { + work->unk_34 = 0; + }; + break; + case 3: + work->unk_74 = 2; + work->unk_7C = work->unk_78 = work->unk_80 = 0; + work->unk_34 = 0; + break; + case 4: + case 5: + work->unk_74 = 3; + break; + case 6: + case 7: + if (fn_1_10F6C(work->unk_14) != 0) { + fn_1_B4D4(object, 0x13); + if (work->unk_04 >= 0) { + HuAudFXPlay(lbl_1_data_150[work->unk_04][0]); + } + PSVECSubtract(&var_r28->unk_128, &work->unk_128, &spC); + work->unk_A8 = atan2d(spC.x, spC.z); + work->unk_AC = 0.15f; + work->unk_B0 = 0.0f; + } + else { + fn_1_B4D4(object, 0x14); + } + work->unk_74 = 4; + break; + default: + break; + } + } + if (fn_1_216C() == 2) { + if (work->unk_2C != 0) { + fn_1_74D4(object); + } + else { + work->unk_20 = HuPadBtn[GWPlayerCfg[object->work[0]].pad_idx]; + work->unk_1C = HuPadBtnDown[GWPlayerCfg[object->work[0]].pad_idx]; + var_f31 = HuPadStkX[GWPlayerCfg[object->work[0]].pad_idx]; + var_f30 = -HuPadStkY[GWPlayerCfg[object->work[0]].pad_idx]; + work->unk_28 = atan2d(var_f31, var_f30); + work->unk_24 = 0.013888889f * sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (work->unk_24 > 1.0f) { + work->unk_24 = 1.0f; + } + } + } + switch (work->unk_74) { + case 0: + fn_1_B4D4(object, 0); + var_r29 = 1; + break; + case 1: + fn_1_8F80(object); + break; + case 2: + fn_1_8BD0(object); + fn_1_AB88(object); + fn_1_9688(object); + break; + case 3: + fn_1_8BD0(object); + fn_1_A618(object); + fn_1_9688(object); + break; + case 4: + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + work->unk_30 = 0; + if (fn_1_B6E0(object) != 0) { + work->unk_30 = 0; + work->unk_74 = 0; + } + break; + } + PSVECAdd(&work->unk_128, &work->unk_134, &work->unk_128); + if (fn_1_10ECC(work->unk_14) >= 2) { + fn_1_B194(object); + } + fn_1_722C(object); + if ((fn_1_216C() == 3) && (var_r29 != 0)) { + work->unk_74 = 0; + object->func = fn_1_682C; + } +} + +void fn_1_682C(omObjData *object) +{ + Vec sp1C; + Vec sp10; + float sp8[2]; + float var_f31; + M433PlayerWork *var_r30; + M433PlayerWork *var_r29; + M433PlayerWork *var_r27; + Vec *var_r26; + s32 var_r25; + M433PlayerWork *var_r24; + s32 var_r23; + + M433PlayerWork *work = object->data; + { + Vec sp40[2] = { { 130.0f, 0.0f, -50.0f }, { 250.0f, 0.0f, 50.0f } }; + Vec sp28[2] = { { 150.0f, 0.0f, 100.0f }, { 300.0f, 0.0f, -100.0f } }; + var_r27 = work->unk_14C->data; + PSVECAdd(&work->unk_128, &work->unk_134, &work->unk_128); + fn_1_B194(object); + fn_1_722C(object); + switch (work->unk_74) { + case 0: + fn_1_B4D4(object, 0); + if (fn_1_2244() != 0) { + if (work->unk_18 == 0) { + var_r23 = 1; + if (work->unk_14 == 0) { + sp40[0].x *= -1.0f; + sp40[1].x *= -1.0f; + sp28[0].x *= -1.0f; + sp28[1].x *= -1.0f; + } + var_r30 = work; + var_r29 = var_r27; + var_r26 = sp40; + work->unk_84 = var_r27->unk_84 = 0; + if (lbl_1_data_3F0[var_r30->unk_00] != lbl_1_data_3F0[var_r29->unk_00]) { + if (lbl_1_data_3F0[var_r30->unk_00] < lbl_1_data_3F0[var_r29->unk_00]) { + var_r24 = var_r30; + var_r30 = var_r29; + var_r29 = var_r24; + } + var_f31 = fn_1_11130(&var_r30->unk_128, &sp40[0], &var_r29->unk_128, &sp40[1]); + sp8[0] = 0.8f * (var_r30->unk_120 + var_r29->unk_120); + if (var_f31 < sp8[0]) { + var_r26 = sp28; + work->unk_84 = var_r27->unk_84 = 1; + OSReport("Escape!\n"); + } + else { + var_r23 = 0; + OSReport("Direct!\n"); + } + } + if (var_r23 != 0) { + var_r30 = work; + var_r29 = var_r27; + for (var_r25 = 0; var_r25 < 2; var_r25++) { + sp8[var_r25] = fn_1_11130(&var_r30->unk_128, &var_r26[var_r25 & 1], &var_r29->unk_128, &var_r26[(var_r25 + 1) & 1]); + } + if (sp8[0] < sp8[1]) { + var_r24 = var_r30; + var_r30 = var_r29; + var_r29 = var_r24; + } + } + var_r30->unk_140 = var_r26[0]; + var_r30->unk_140.z -= var_r30->unk_120; + var_r29->unk_140 = var_r26[1]; + } + work->unk_30 = work->unk_60 = work->unk_34 = 0; + if (work->unk_84 != 0) { + work->unk_74++; + } + else { + work->unk_74 += 2; + } + work->unk_88 = 0; + break; + } + break; + case 1: + if (work->unk_84 == 1) { + PSVECSubtract(&work->unk_140, &work->unk_128, &sp10); + sp10.y = 0.0f; + var_f31 = PSVECMag(&sp10); + if (var_f31 < 20.0f) { + var_f31 = 0.01f; + work->unk_84++; + } + else { + if (PSVECMag(&sp10) >= 100.0f) { + var_f31 = 100.0f; + } + var_f31 = 0.2f + (0.008f * var_f31); + } + work->unk_28 = 180.0 * (atan2(sp10.x, sp10.z) / 3.141592653589793); + work->unk_24 = var_f31; + fn_1_8BD0(object); + } + else if (work->unk_84 == 2) { + fn_1_BAE0(object, 0); + if ((work->unk_18 == 0) && (var_r27->unk_84 != 0)) { + if (work->unk_14 == 0) { + sp40[0].x *= -1.0f; + sp40[1].x *= -1.0f; + } + var_r30 = work; + var_r29 = var_r27; + if (lbl_1_data_3F0[var_r30->unk_00] < lbl_1_data_3F0[var_r29->unk_00]) { + var_r24 = var_r30; + var_r30 = var_r29; + var_r29 = var_r24; + } + var_r30->unk_140 = sp40[0]; + var_r30->unk_140.z -= var_r30->unk_120; + var_r29->unk_140 = sp40[1]; + work->unk_84 = var_r27->unk_84 = 3; + } + } + if (work->unk_84 == 3) { + work->unk_74++; + work->unk_88 = 0; + return; + } + break; + case 2: + PSVECSubtract(&work->unk_140, &work->unk_128, &sp10); + sp10.y = 0.0f; + var_f31 = PSVECMag(&sp10); + if (var_f31 < 10.0f) { + var_f31 = 0.01f; + } + else { + if (PSVECMag(&sp10) >= 100.0f) { + var_f31 = 100.0f; + } + var_f31 = 0.2f + (0.008f * var_f31); + } + work->unk_28 = atan2d(sp10.x, sp10.z); + work->unk_24 = var_f31; + fn_1_8BD0(object); + if ((work->unk_24 < 0.02f) || (work->unk_88 > 300.0f)) { + work->unk_A8 = 0.0f; + work->unk_AC = 0.15f; + work->unk_B0 = 0.0f; + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + fn_1_21E4(object->work[0]); + work->unk_74++; + return; + } + break; + case 3: + if (fn_1_2184() == 1) { + if (fn_1_10FA4(work->unk_14) != 0) { + fn_1_B4D4(object, 0x11); + if (work->unk_04 >= 0) { + HuAudFXPlay(lbl_1_data_150[work->unk_04][0]); + } + } + else { + fn_1_B4D4(object, 0x12); + if (work->unk_04 >= 0) { + HuAudFXPlay(lbl_1_data_150[work->unk_04][1]); + } + } + work->unk_74++; + return; + } + fn_1_BAE0(object, 0); + return; + case 4: + if (fn_1_10FA4(work->unk_14) != 0) { + sp1C.x = Center.x + (CZoom * (sind(CRot.y) * cosd(CRot.x))); + sp1C.y = Center.y + (CZoom * -sind(CRot.x)); + sp1C.z = Center.z + (CZoom * (cosd(CRot.y) * cosd(CRot.x))); + PSVECSubtract(&sp1C, &work->unk_128, &sp10); + work->unk_A8 = atan2d(sp10.x, sp10.z); + } + if (fn_1_B6E0(object) != 0) { + fn_1_2214(object->work[0]); + work->unk_74++; + } + break; + } + } +} + +void fn_1_722C(omObjData *object) +{ + Vec sp8; + + M433PlayerWork *work = object->data; + work->unk_9C++; + work->unk_88++; + object->trans.x = work->unk_128.x; + object->trans.y = work->unk_128.y; + object->trans.z = work->unk_128.z; + work->unk_AC = work->unk_AC + work->unk_B0; + if (work->unk_AC > 0.45f) { + work->unk_AC = 0.45f; + } + work->unk_A4 = fn_1_26C4(work->unk_A4, work->unk_A8, work->unk_AC); + object->rot.y = work->unk_A4; + Hu3DModelPosSet(object->model[1], work->unk_128.x, 11.0f, work->unk_128.z); + work->unk_BC += 3.0000002f; + if (work->unk_BC >= 360.0f) { + work->unk_BC -= 360.0f; + } + Hu3DModelRotSet(object->model[1], 0.0f, work->unk_BC, 0.0f); + work->unk_B8 = 0.0f; + if (fn_1_216C() == 2) { + if (((fn_1_10EA4() == 4) || (fn_1_10EA4() == 3)) && (work->unk_14 == fn_1_10740(&sp8)) && (fn_1_10FDC() != 0) && (fn_1_10FDC() < 3) + && (work->unk_60 == 0) && (fn_1_11004(work->unk_14, work->unk_18) != 0)) { + work->unk_B8 = 1.0f; + } + if (work->unk_74 == 1) { + work->unk_B8 = 1.0f; + } + } + work->unk_B4 += 0.1f * (work->unk_B8 - work->unk_B4); + Hu3DModelScaleSet(object->model[1], work->unk_B4, 1.0f, work->unk_B4); + if ((work->unk_B8 <= 0.0f) && (work->unk_B4 < 0.1f)) { + Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); + work->unk_B4 = 0.0f; + return; + } + Hu3DModelAttrReset(object->model[1], HU3D_ATTR_DISPOFF); +} + +void fn_1_74D4(omObjData *object) +{ + Vec sp1C; + Vec sp10; + M433PlayerWork *spC; + s32 sp8; + float var_f31; + s32 var_r29; + + M433PlayerWork *work = object->data; + var_r29 = 1; + sp8 = 0; + spC = work->unk_14C->data; + switch (work->unk_74) { + case 0: + work->unk_6C = 0; + fn_1_873C(object); + break; + case 1: + if (work->unk_3C != 0) { + work->unk_1C = work->unk_1C | 0x100; + work->unk_DC = frandmod(0x168); + work->unk_E0 = 0.3f + (0.00040000002f * (work->unk_C0 * frandmod(0x3E8))); + work->unk_E4 = 0; + if (frandmod(0x3E8) > (300.0f + (500.0f * work->unk_C0))) { + work->unk_E4 = 1; + } + } + if (fn_1_10614(&sp1C) != 0) { + if (work->unk_E4 != 0) { + if ((fabs(sp1C.z) > 1.100000023841858) || (sp1C.x > 1.1f)) { + work->unk_E0 = 0.0f; + } + } + else { + if ((fabs(sp1C.z) > 0.949999988079071) || (sp1C.x > 0.95f)) { + work->unk_E0 = 0.0f; + } + } + } + work->unk_28 = work->unk_DC; + work->unk_24 = work->unk_E0; + if (work->unk_40 != 0) { + if (work->unk_D0++ >= work->unk_CC) { + work->unk_1C = work->unk_1C | 0x100; + } + } + else if (work->unk_60 != 0) { + work->unk_CC = ((60.0f * (0.35f * work->unk_C0)) / 1000.0f) * frandmod(0x3E8); + work->unk_D0 = 0; + } + fn_1_873C(object); + break; + case 2: + work->unk_F0 = 0; + if (frandmod(0x3E8) < (300.0f * work->unk_C0)) { + work->unk_F0 = 1; + } + fn_1_8408(object); + if (work->unk_F4 != 0) { + if (fn_1_10EA4() == 2) { + work->unk_F4 = 0; + work->unk_F8 = 0; + } + if (work->unk_14 == fn_1_107B0(&sp1C)) { + work->unk_D8++; + } + if ((work->unk_14 == fn_1_107B0(&sp1C)) && (work->unk_F8 == 0)) { + fn_1_10B20(0.9f, &work->unk_108); + work->unk_108.x = 115.0f; + if (work->unk_14 == 0) { + work->unk_108.x *= -1.0f; + } + work->unk_F8++; + } + if (work->unk_F8 == 1) { + if ((work->unk_D8 >= (0.5f * work->unk_D4)) && (fn_1_10D24(&work->unk_108) != 0)) { + work->unk_108.x = 115.0f; + if (work->unk_14 == 0) { + work->unk_108.x *= -1.0f; + } + work->unk_F8++; + } + } + else if ((work->unk_F8 == 2) && ((work->unk_D8 >= work->unk_D4) || (work->unk_14 == fn_1_10740(&sp1C)))) { + work->unk_1C = work->unk_1C | 0x200; + work->unk_F4 = 0; + work->unk_F8 = 0; + } + } + if ((work->unk_14 == fn_1_107B0(&sp1C)) && (fn_1_10900() >= (60.0f * (0.8f - (0.4f * work->unk_C0)))) && (work->unk_6C != 0)) { + PSVECSubtract(&sp1C, &work->unk_128, &sp10); + sp10.y = 0.0f; + var_f31 = PSVECMag(&sp10); + if (PSVECMag(&sp10) >= 20.0f) { + if (var_f31 >= 50.0f) { + var_f31 = 50.0f; + } + work->unk_28 = atan2d(sp10.x, sp10.z); + work->unk_24 = var_f31 / 50.0f; + } + if ((fn_1_10848() < (0.8f - (0.6f * work->unk_C0))) && ((work->unk_44 != 0) || ((work->unk_48 != 0) && (work->unk_EC != 0)))) { + work->unk_1C = work->unk_1C | 0x100; + } + var_r29 = 0; + } + if (work->unk_F8 != 0) { + PSVECSubtract(&work->unk_108, &work->unk_128, &sp10); + sp10.y = 0.0f; + var_f31 = PSVECMag(&sp10); + if (var_f31 >= 10.0f) { + if (var_f31 >= 50.0f) { + var_f31 = 50.0f; + } + work->unk_28 = atan2d(sp10.x, sp10.z); + work->unk_24 = var_f31 / 50.0f; + } + else { + work->unk_28 = 90.0f; + if (work->unk_14 != 0) { + work->unk_28 *= -1.0f; + } + work->unk_24 = 0.01f; + } + var_r29 = 0; + } + if (var_r29 != 0) { + PSVECSubtract(&work->unk_FC, &work->unk_128, &sp10); + sp10.y = 0.0f; + var_f31 = PSVECMag(&sp10); + var_f31 -= 100.0f * (1.25f * (2.0f - work->unk_C0)); + if (var_f31 >= 10.0f) { + if (var_f31 >= 70.0f) { + var_f31 = 70.0f; + } + work->unk_28 = atan2d(sp10.x, sp10.z); + work->unk_24 = var_f31 / 70.0f; + break; + } + work->unk_28 = 90.0f; + if (work->unk_14 != 0) { + work->unk_28 *= -1.0f; + break; + } + } + break; + case 3: + fn_1_8408(object); + fn_1_873C(object); + if (work->unk_14 == fn_1_10740(&sp1C)) { + if (work->unk_68 == 0) { + if (fn_1_11004(work->unk_14, work->unk_18) != 0) { + PSVECSubtract(&sp1C, &work->unk_128, &sp10); + sp10.y = 0.0f; + var_f31 = PSVECMag(&sp10); + if (var_f31 >= 30.000002f) { + if (var_f31 >= 70.0f) { + var_f31 = 70.0f; + } + work->unk_24 = var_f31 / 70.0f; + work->unk_28 = atan2d(sp10.x, sp10.z); + } + } + if ((((work->unk_6C == 0) && (fn_1_10EA4() == 3) && (work->unk_F0 != 0)) || ((work->unk_6C != 0) && (fn_1_10EA4() == 4))) + && (work->unk_5C != 0)) { + work->unk_1C = work->unk_1C | 0x200; + work->unk_E8 = 0; + if (frandmod(0x3E8) < (s32)(300.0f * (work->unk_C0 - 0.4f))) { + work->unk_E8 = fn_1_8938(work->unk_14, &work->unk_114); + work->unk_DC = 0.0f; + work->unk_E0 = 0.0f; + work->unk_E4 = 0; + } + if (work->unk_E8 == 0) { + work->unk_DC = frandmod(0x168); + work->unk_E0 = 0.3f + (0.00040000002f * (work->unk_C0 * frandmod(0x3E8))); + work->unk_E4 = 0; + if (frandmod(0x3E8) > (300.0f + (500.0f * work->unk_C0))) { + work->unk_E4 = 1; + } + } + } + if ((work->unk_4C != 0) || (work->unk_44 != 0) || (work->unk_48 != 0)) { + work->unk_1C = work->unk_1C | 0x100; + break; + } + } + else { + if (fn_1_10614(&sp1C) != 0) { + if (work->unk_E8 != 0) { + PSVECSubtract(&work->unk_114, &sp1C, &sp10); + sp10.y = 0.0f; + var_f31 = PSVECMag(&sp10); + if (var_f31 < 0.05f) { + work->unk_DC = 0.0f; + work->unk_E0 = 0.0f; + } + else { + if (work->unk_14 != 0) { + sp10.x *= -1.0f; + } + work->unk_DC = atan2d(sp10.x, sp10.z); + work->unk_E0 = 1.0f; + } + } + if (work->unk_E4 != 0) { + if ((fabs(sp1C.z) > 1.100000023841858) || (sp1C.x > 1.1f)) { + work->unk_E0 = 0.0f; + } + } + else { + if ((fabs(sp1C.z) > 0.949999988079071) || (sp1C.x > 0.95f)) { + work->unk_E0 = 0.0f; + } + } + } + work->unk_28 = work->unk_DC; + work->unk_24 = work->unk_E0; + if (work->unk_54 != 0) { + if (work->unk_D0++ >= work->unk_CC) { + work->unk_1C |= 0x100; + break; + } + } + else { + work->unk_CC = ((60.0f * (0.35f * work->unk_C0)) / 1000.0f) * frandmod(0x3E8); + work->unk_D0 = 0; + } + } + } + break; + } +} + +void fn_1_8408(omObjData *object) +{ + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + + M433PlayerWork *work = object->data; + M433PlayerWork *var_r30 = work->unk_14C->data; + + if (var_r30->unk_2C == 0) { + var_r30->unk_C0 = work->unk_C0 - 0.1f; + } + if ((work->unk_14 == fn_1_107B0(&sp14)) && (fn_1_108C4() >= 12.0f)) { + if (((var_r30->unk_6C == 0) && (work->unk_6C == 0)) || (fn_1_108C4() < 0x3E8)) { + if ((work->unk_30 == 0) || (var_r30->unk_30 == 0)) { + PSVECSubtract(&sp14, &work->unk_128, &sp8); + sp8.y = 0.0f; + var_f31 = PSVECMag(&sp8) - (100.0f * (2.0f * work->unk_C0)); + PSVECSubtract(&sp14, &var_r30->unk_128, &sp8); + sp8.y = 0.0f; + var_f30 = PSVECMag(&sp8) - (100.0f * (2.0f * var_r30->unk_C0)); + if ((work->unk_30 != 0) || (work->unk_60 != 0)) { + var_f31 = 2000.0f; + } + if ((var_r30->unk_30 != 0) || (var_r30->unk_60 != 0)) { + var_f30 = 2000.0f; + } + if (var_f31 >= 300.0f) { + var_r30->unk_F4 = 0; + } + if (var_f30 >= 300.0f) { + work->unk_F4 = 0; + } + if (work->unk_F4 != 0) { + var_f31 += 300.0f; + } + if (var_r30->unk_F4 != 0) { + var_f30 += 300.0f; + } + var_r30->unk_6C = work->unk_6C = 0; + if (var_f31 <= var_f30) { + work->unk_6C = 1; + work->unk_F4 = 0; + } + else { + var_r30->unk_6C = 1; + var_r30->unk_F4 = 0; + } + if (work->unk_F4 == 0) { + work->unk_F8 = 0; + } + if (var_r30->unk_F4 == 0) { + var_r30->unk_F8 = 0; + } + } + } + else if (fn_1_10FDC() == 1) { + work->unk_6C = fn_1_11004(work->unk_14, work->unk_18) == 0; + var_r30->unk_6C = work->unk_6C == 0; + } + } + else if (work->unk_14 != fn_1_10740(&sp14)) { + var_r30->unk_6C = work->unk_6C = 0; + } +} + +void fn_1_873C(omObjData *object) +{ + M433PlayerWork *work = object->data; + work->unk_EC = 0; + if (frandmod(0x3E8) < (600.0f * work->unk_C0)) { + work->unk_EC = 1; + } + work->unk_F4 = 0; + work->unk_F8 = 0; + if ((work->unk_18 != fn_1_10F38(work->unk_14)) && (work->unk_74 != 0) && (frandmod(0x3E8) < (500.0f * work->unk_C0))) { + work->unk_F4 = 1; + work->unk_D4 = ((60.0f * (0.5f * work->unk_C0)) / 1000.0f) * frandmod(0x3E8); + work->unk_D8 = 0; + } + if (work->unk_18 == fn_1_10F38(work->unk_14)) { + work->unk_FC.z = 140.0f; + work->unk_FC.x = 540.2f; + } + else { + work->unk_FC.z = -140.0f; + work->unk_FC.x = 300.5f; + } + if (work->unk_14 == 0) { + work->unk_FC.x *= -1.0f; + } +} + +s32 fn_1_8938(u32 var_r27, Vec *var_r29) +{ + Vec sp2C[2]; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + u32 var_r31; + u32 var_r30; + M433PlayerWork *work; + + for (var_r31 = 0, var_r30 = 0; (var_r30 < 4) && (var_r31 < 2); var_r30++) { + work = lbl_1_bss_7D0[var_r30]->data; + if (work->unk_14 != var_r27) { + sp2C[var_r31] = work->unk_128; + sp2C[var_r31].y = 0.0f; + var_r31++; + } + } + if (var_r31 < 2) { + return 0; + } + if (var_r27 == 1) { + sp2C[0].x *= -1.0f; + sp2C[1].x *= -1.0f; + } + var_f29 = 47.0f; + var_f28 = 70.0f; + var_f30 = -1.0f; + sp14.z = -350.0f; + sp14.y = 0.0f; + for (var_r30 = 0; var_r30 <= 0xA; var_r30++) { + sp14.x = 230.0f; + for (var_r31 = 0; var_r31 <= 0xA; var_r31++) { + PSVECSubtract(&sp14, &sp2C[0], &sp20); + var_f31 = PSVECMag(&sp20); + PSVECSubtract(&sp14, &sp2C[1], &sp20); + var_f31 *= PSVECMag(&sp20); + if (var_f31 > var_f30) { + var_f30 = var_f31; + sp8 = sp14; + } + sp14.x += var_f29; + } + sp14.z += var_f28; + } + *var_r29 = sp8; + var_r29->x -= 465.0f; + var_r29->x *= 0.004255319f; + var_r29->z *= 0.0028571428f; + return 1; +} + +void fn_1_8BD0(omObjData *object) +{ + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + s32 var_r29; + + M433PlayerWork *work = object->data; + var_r29 = 1; + if ((work->unk_30 == 0) && (work->unk_60 == 0)) { + if ((work->unk_24 > 0.0f) && (work->unk_34 == 0)) { + work->unk_A8 = work->unk_28; + } + if ((work->unk_24 > 0.05f) && (work->unk_34 == 0)) { + work->unk_134.x = 0.01666666753590107 * (550.0 * (work->unk_24 * sind(work->unk_28))); + work->unk_134.z = 0.01666666753590107 * (550.0 * (work->unk_24 * cosd(work->unk_28))); + if (work->unk_2C != 0) { + work->unk_AC = 0.1f; + } + else { + work->unk_AC = 0.2f; + } + work->unk_B0 = 0.0f; + if (fn_1_B7AC(object) != 0) { + var_f30 = 0.5f; + if (work->unk_0C == 2) { + var_f30 = 0.45f; + } + if (work->unk_24 > var_f30) { + fn_1_B4D4(object, 2); + var_f31 = work->unk_24; + } + else { + fn_1_B4D4(object, 1); + var_f31 = work->unk_24 / var_f30; + } + if (work->unk_04 < 0) { + CharModelMotionSpeedSet(work->unk_00, var_f31); + } + else { + Hu3DMotionSpeedSet(object->model[0], var_f31); + } + } + if ((work->unk_24 > 0.5f) && (((work->unk_88 + 0xF) & 0xF) == 0)) { + fn_1_D888(&work->unk_128, 0.2f); + } + } + else { + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + if ((work->unk_5C != 0) && (fn_1_10FDC() >= 2)) { + fn_1_B4D4(object, 0x10); + } + else if (work->unk_4C != 0) { + fn_1_B4D4(object, 0xF); + } + else if (work->unk_44 != 0) { + fn_1_B4D4(object, 0xE); + } + else { + fn_1_BAE0(object, 0); + } + if ((var_r29 != 0) && (work->unk_24 == 0.0f)) { + fn_1_10B20(0.0f, &sp14); + PSVECSubtract(&sp14, &work->unk_128, &sp8); + work->unk_A8 = atan2d(sp8.x, sp8.z); + work->unk_AC = 0.1f; + work->unk_B0 = 0.0f; + } + } + } +} + +void fn_1_8F80(omObjData *object) +{ + Vec sp1C; + Vec sp10; + float var_f31; + float var_f30; + s32 var_r29; + char *var_r28; + + M433PlayerWork *work = object->data; + var_r29 = work->unk_40; + { + s32 sp8[2] = { 0x6A4, 0x6A5 }; + work->unk_3C = 0; + work->unk_40 = 0; + if (work->unk_04 < 0) { + var_r28 = CharModelHookNameGet(work->unk_00, 4, 0); + Hu3DModelObjPosGet(object->model[0], var_r28, &sp10); + } + else { + Hu3DModelObjPosGet(object->model[0], lbl_1_data_450[work->unk_04], &sp10); + } + switch (work->unk_8C) { + case 0: + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + work->unk_8C++; + work->unk_88 = 0; + + case 1: + work->unk_30 = 0; + work->unk_38 = 1; + fn_1_B4D4(object, 3); + fn_1_FE8C(&sp10, 0, work->unk_14, work->unk_18); + if (fn_1_10ECC(work->unk_14) != 1) { + work->unk_88 = 0; + break; + } + if (work->unk_34 == 0) { + work->unk_3C = 1; + if ((work->unk_1C & 0x100) || (work->unk_88 > 300.0f)) { + fn_1_B4D4(object, 4); + work->unk_30 = 1; + work->unk_8C++; + work->unk_88 = 0; + } + } + break; + case 2: + if (work->unk_60 == 0) { + work->unk_134.x = 1.6666667461395264 * (2.0 * sind((10.0f + (4.285714f * work->unk_88)))); + if (work->unk_14 != 0) { + work->unk_134.x *= -1.0f; + } + } + if ((work->unk_88 >= 9.0f) && (work->unk_38 != 0)) { + if (work->unk_14 != 0) { + var_f30 = -1.0f; + } + else { + var_f30 = 1.0f; + } + sp1C.x = object->trans.x + (250.0f * var_f30); + sp1C.y = 80.0f + object->trans.y; + sp1C.z = sp10.z; + fn_1_FE8C(&sp1C, 1, work->unk_14, work->unk_18); + work->unk_38 = 0; + } + else if (work->unk_88 >= 28.0f) { + var_f31 = 0.5f; + work->unk_124 = (2.0f * -(350.0f - lbl_1_data_E0[work->unk_00])) / (var_f31 * var_f31); + work->unk_134.y = 0.016666668f * (-work->unk_124 * var_f31); + work->unk_60 = 1; + work->unk_8C++; + work->unk_88 = 0; + fn_1_D888(&work->unk_128, 0.5f); + } + if (work->unk_38 == 0) { + fn_1_10260(work->unk_28, work->unk_24, work->unk_14, 0, &sp1C); + break; + } + fn_1_FE8C(&sp10, 0, work->unk_14, work->unk_18); + break; + case 3: + work->unk_134.y += 0.016666668f * (0.016666668f * work->unk_124); + if ((work->unk_88 > 27.0f) && (work->unk_88 < 51.0f)) { + work->unk_40 = 1; + } + fn_1_10260(work->unk_28, work->unk_24, work->unk_14, work->unk_40, &sp1C); + if (((work->unk_40 != 0) && ((work->unk_1C & 0x100) != 0)) || ((work->unk_40 == 0) && (var_r29 != 0))) { + fn_1_B4D4(object, 5); + if (work->unk_40 == 0) { + fn_1_1070C(); + } + fn_1_FE8C(&sp1C, 2, work->unk_14, work->unk_18); + work->unk_40 = 0; + work->unk_8C = 5; + work->unk_88 = 0; + HuAudFXPlay(sp8[work->unk_14]); + } + break; + case 4: + if (work->unk_88 >= 12.0f) { + work->unk_60 = 0; + work->unk_8C = 1; + work->unk_88 = 0; + } + break; + case 5: + work->unk_134.y += 0.016666668f * (0.016666668f * work->unk_124); + if (work->unk_128.y <= 0.0f) { + work->unk_60 = 0; + fn_1_D888(&work->unk_128, 0.5f); + work->unk_30 = 0; + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + } + break; + } + } +} + +void fn_1_9688(omObjData *object) +{ + Vec sp2C; + Vec sp20; + s32 sp14; + s32 sp10; + s32 spC; + s32 sp8; + float var_f31; + float var_f30; + float var_f29; + M433PlayerWork *work; + M433PlayerWork *var_r29; + + work = object->data; + { + s32 sp38[3][3] = { { 3, 4, 6 }, { 3, 4, 6 }, { 3, 4, 7 } }; + s32 sp18[2] = { 0x6AD, 0x6AE }; + s32 sp10[2] = { 0x6A6, 0x6A7 }; + s32 sp8[2] = { 0x6AA, 0x6AB }; + var_r29 = work->unk_14C->data; + work->unk_4C = 0; + work->unk_44 = 0; + work->unk_48 = 0; + if (work->unk_60 == 0) { + switch (work->unk_7C) { + case 0: + if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) + && (work->unk_30 = 0, work->unk_64 = 0, ((work->unk_34 == 0) != 0)) && (work->unk_14 == fn_1_10740(&sp2C)) + && (fn_1_11004(work->unk_14, work->unk_18) != 0) && (fn_1_10FDC() < 3)) { + work->unk_140 = sp2C; + var_f31 = fn_1_10848(); + if ((var_f31 <= 0.8f) && (var_f31 >= 0.02f) && (var_r29->unk_64 == 0)) { + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + sp20.y = 0.0f; + var_f30 = PSVECMag(&sp20); + work->unk_98 = var_f30; + if (var_f30 <= 200.0f) { + if ((var_f31 >= 0.2f) && (var_f30 <= 70.0f) && (var_f31 >= (0.2f + (0.001f * var_f30))) && (fn_1_10FDC() >= 1)) { + work->unk_4C = 1; + } + if ((var_f31 >= 0.02f) && (var_f30 <= 100.0f) && (var_f31 >= (0.02f + (0.001f * var_f30)))) { + work->unk_44 = 1; + } + if ((var_f31 >= 0.1f) && (var_f31 <= 0.3f) && (var_f30 > 100.0f) && (var_f30 <= 200.0f) + && (var_f31 >= (0.1f + (0.0002f * (var_f30 - 100.0f))))) { + work->unk_48 = 1; + } + } + } + if ((work->unk_1C & 0x100) != 0) { + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + if (work->unk_4C != 0) { + work->unk_7C = 1; + var_f31 -= 0.12f; + work->unk_98 *= 0.014285714f; + fn_1_B4D4(object, 0xF); + fn_1_10B20(0.0f, &sp2C); + } + else if (work->unk_44 != 0) { + work->unk_7C = 2; + var_f31 -= 0.03f; + work->unk_98 *= 0.01f; + fn_1_B4D4(object, 0xE); + fn_1_10B20(0.0f, &sp2C); + } + else if (work->unk_48 != 0) { + work->unk_7C = 3; + var_f31 -= 0.03f; + work->unk_98 *= 0.005f; + fn_1_B4D4(object, 7); + fn_1_D888(&work->unk_128, 0.75f); + HuAudFXPlay(sp8[work->unk_14]); + } + else { + if (fn_1_10FDC() >= 1) { + fn_1_B4D4(object, 9); + } + else { + fn_1_B4D4(object, 6); + } + work->unk_7C = 4; + } + if (work->unk_7C < 4) { + work->unk_64 = 1; + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + work->unk_90 = 60.0f * var_f31; + } + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + work->unk_A8 = atan2d(sp20.x, sp20.z); + work->unk_AC = 0.2f; + work->unk_B0 = 0.0f; + work->unk_30 = 1; + work->unk_88 = 0; + } + } + break; + case 1: + if (work->unk_88 >= work->unk_90) { + if (work->unk_64 != 0) { + if (fn_1_10FDC() >= 2) { + sp2C.x = 350.0f; + sp2C.y = 11.0f; + sp2C.z = 0.0f; + if (work->unk_14 != 0) { + sp2C.x *= -1.0f; + } + } + else { + sp2C = var_r29->unk_128; + sp2C.y = 11.0f; + sp2C.x *= 0.5f; + } + var_f29 = frandmod(0x168); + var_f30 = 200.0f * work->unk_98; + sp2C.x += var_f30 * sind(var_f29); + sp2C.z += var_f30 * cosd(var_f29); + if (fn_1_10FDC() < 2) { + fn_1_10130(&sp2C, work->unk_14); + } + fn_1_FE8C(&sp2C, sp38[0][fn_1_10FDC()], work->unk_14, work->unk_18); + fn_1_D888(&work->unk_128, 0.0f); + HuAudFXPlay(sp10[work->unk_14]); + } + work->unk_64 = 0; + fn_1_B4D4(object, 9); + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + work->unk_A8 = atan2d(sp20.x, sp20.z); + work->unk_AC = 0.1f; + work->unk_90 = 0x186A0; + work->unk_88 = 0; + break; + } + if (work->unk_90 < 0x2710) { + work->unk_134.x = 0.07f * (work->unk_140.x - work->unk_128.x); + work->unk_134.z = 0.07f * (work->unk_140.z - work->unk_128.z); + if (work->unk_64 == 0) { + work->unk_90 = 0; + } + } + else { + work->unk_134.x *= 0.7f; + work->unk_134.z *= 0.7f; + if (fn_1_B6E0(object) != 0) { + work->unk_7C = 0; + } + } + break; + case 2: + if (work->unk_88 >= work->unk_90) { + if (work->unk_64 != 0) { + switch (fn_1_10FDC()) { + case 0: + sp2C = var_r29->unk_128; + sp2C.y = 11.0f; + break; + case 1: + sp2C = var_r29->unk_128; + sp2C.y = 11.0f; + sp2C.x *= 0.5f; + break; + case 2: + default: + sp2C.x = 350.0f; + sp2C.y = 11.0f; + sp2C.z = 0.0f; + if (work->unk_14 != 0) { + sp2C.x *= -1.0f; + } + break; + } + var_f29 = frandmod(0x168); + var_f30 = 200.0f * work->unk_98; + sp2C.x += var_f30 * sind(var_f29); + sp2C.z += var_f30 * cosd(var_f29); + if (fn_1_10FDC() < 2) { + fn_1_10130(&sp2C, work->unk_14); + } + fn_1_FE8C(&sp2C, sp38[1][fn_1_10FDC()], work->unk_14, work->unk_18); + fn_1_D888(&work->unk_128, 0.0f); + if (fn_1_10FDC() < 1) { + HuAudFXPlay(sp18[work->unk_14]); + } + else { + HuAudFXPlay(sp10[work->unk_14]); + } + } + work->unk_64 = 0; + fn_1_B4D4(object, 6); + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + work->unk_A8 = atan2d(sp20.x, sp20.z); + work->unk_AC = 0.1f; + work->unk_90 = 0x186A0; + work->unk_88 = 0; + break; + } + if (work->unk_90 < 0x2710) { + work->unk_134.x = 0.07f * (work->unk_140.x - work->unk_128.x); + work->unk_134.z = 0.07f * (work->unk_140.z - work->unk_128.z); + if (work->unk_64 == 0) { + work->unk_90 = 0; + break; + } + } + else { + work->unk_134.x *= 0.7f; + work->unk_134.z *= 0.7f; + if (fn_1_B6E0(object) != 0) { + work->unk_7C = 0; + break; + } + } + break; + case 3: + if (work->unk_88 >= work->unk_90) { + if (work->unk_64 != 0) { + sp2C = work->unk_128; + sp2C.y = 11.0f; + PSVECSubtract(&var_r29->unk_128, &work->unk_128, &sp20); + var_f29 = 180.0 + (atan2d(sp20.x, sp20.z)); + var_f29 += frandmod(0xB4) - 90.0f; + var_f30 = 200.0f * work->unk_98; + sp2C.x += var_f30 * sind(var_f29); + sp2C.z += var_f30 * cosd(var_f29); + fn_1_10130(&sp2C, work->unk_14); + fn_1_FE8C(&sp2C, sp38[2][fn_1_10FDC()], work->unk_14, work->unk_18); + if (fn_1_10FDC() < 1) { + HuAudFXPlay(sp18[work->unk_14]); + } + else { + HuAudFXPlay(sp10[work->unk_14]); + } + } + work->unk_64 = 0; + work->unk_90 = 0x186A0; + work->unk_88 = 0; + fn_1_D888(&work->unk_128, 1.3f); + break; + } + if (work->unk_90 < 0x2710) { + work->unk_134.x = 0.15f * (work->unk_140.x - work->unk_128.x); + work->unk_134.z = 0.15f * (work->unk_140.z - work->unk_128.z); + break; + } + work->unk_134.x *= 0.95f; + work->unk_134.z *= 0.95f; + if (fn_1_B6E0(object) != 0) { + fn_1_B4D4(object, 8); + work->unk_7C = 4; + } + break; + case 4: + work->unk_134.x *= 0.95f; + work->unk_134.z *= 0.95f; + if (fn_1_B6E0(object) != 0) { + work->unk_7C = 0; + } + break; + } + } + } +} + +struct _m2c_reg_fn_1_A618 { + M433PlayerWork *var_r31; + M433PlayerWork *sp8; +}; + +void fn_1_A618(omObjData *object) +{ + Vec sp20; + Vec sp14; + M433PlayerWork *sp8; + float var_f31; + float var_f30; + float var_f29; + M433PlayerWork *work = object->data; + { + s32 spC[2] = { 0x6A8, 0x6A9 }; + sp8 = work->unk_14C->data; + work->unk_54 = 0; + work->unk_5C = 0; + switch (work->unk_80) { + case 0: + if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) + && (work->unk_30 = 0, work->unk_68 = 0, ((work->unk_34 == 0) != 0)) && (fn_1_11004(work->unk_14, work->unk_18) != 0) + && (fn_1_10FDC() < 3) && (work->unk_14 == fn_1_10740(&sp20))) { + PSVECSubtract(&sp20, &work->unk_128, &sp14); + sp14.y = 0.0f; + if (!(PSVECMag(&sp14) > 500.0f)) { + fn_1_10B20(0.5f, &sp20); + sp20.y -= lbl_1_data_E0[work->unk_00]; + PSVECSubtract(&sp20, &work->unk_128, &sp14); + sp14.y = 0.0f; + if ((PSVECMag(&sp14) < 200.0f) && (sp20.y >= 50.0f)) { + work->unk_5C = 1; + } + if (((work->unk_1C & 0x200) != 0) && (work->unk_5C != 0)) { + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + fn_1_B4D4(object, 0xA); + work->unk_80 = 1; + work->unk_88 = 0; + work->unk_30 = 1; + if (work->unk_5C != 0) { + var_f30 = 0.5f; + work->unk_124 = (2.0f * -sp20.y) / (var_f30 * var_f30); + work->unk_134.y = 0.016666668f * (-work->unk_124 * var_f30); + PSVECSubtract(&sp20, &work->unk_128, &sp14); + sp14.y = 0.0f; + work->unk_134.x = 0.016666668f * (sp14.x / 0.5f); + work->unk_134.z = 0.016666668f * (sp14.z / 0.5f); + if (work->unk_14 != 0) { + var_f29 = -90.0f; + } + else { + var_f29 = 90.0f; + } + work->unk_A8 = var_f29; + work->unk_AC = 0.2f; + work->unk_B0 = 0.0f; + work->unk_68 = 1; + } + else { + work->unk_134.y = 14.833334f; + } + work->unk_60 = 1; + fn_1_D888(&work->unk_128, 0.75f); + } + } + } + break; + case 1: + work->unk_134.y += 0.016666668f * (0.016666668f * work->unk_124); + if (work->unk_68 != 0) { + var_f31 = (0.016666668f * work->unk_88) - 0.35f; + if ((var_f31 >= 0.0f) && (var_f31 < 0.4)) { + work->unk_54 = 1; + if ((work->unk_1C & 0x100) != 0) { + fn_1_B4D4(object, 0xB); + fn_1_10260(work->unk_28, work->unk_24, work->unk_14, work->unk_54, &sp20); + fn_1_FE8C(&sp20, 5, work->unk_14, work->unk_18); + work->unk_68 = 0; + work->unk_54 = 0; + HuAudFXPlay(spC[work->unk_14]); + } + } + else if (var_f31 > 0.0f) { + work->unk_68 = 0; + work->unk_54 = 0; + } + fn_1_10260(work->unk_28, work->unk_24, work->unk_14, work->unk_54, &sp20); + } + if (work->unk_128.y <= 0.0f) { + fn_1_D888(&work->unk_128, 0.75f); + work->unk_30 = 0; + work->unk_80 = 0; + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + work->unk_60 = 0; + work->unk_68 = 0; + } + break; + } + } +} + +// void fn_1_AB88(omObjData *object) +// { +// Vec sp1C; /* compiler-managed */ +// Vec sp10; +// s32 spC; +// s32 sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// void *var_r31; +// s32 var_r30; +// omObjData *var_r29; +// void *var_r28; +// s32 temp_r0; + +// var_r29 = object; +// var_r31 = var_r29->data; +// var_r30 = 0; +// sp8 = lbl_1_rodata_5A0.unk_00; +// spC = lbl_1_rodata_5A0.unk_04; +// var_r28 = var_r31->unk_14C->unk_5C; +// var_r31->unk_58 = 0; +// temp_r0 = var_r31->unk_78; +// switch (temp_r0) { +// case 0: +// if ((var_r31->unk_7C == 0) && (var_r31->unk_78 == 0) && (var_r31->unk_80 == 0) +// && (var_r31->unk_30 = 0, var_r31->unk_68 = 0, ((var_r31->unk_34 == 0) != 0)) && (var_r31->unk_14 == fn_1_107B0(&sp1C)) +// && (fn_1_11060(var_r31->unk_14) == 0)) { +// var_f31 = var_r31->unk_128; +// if (var_r31->unk_14 == 0) { +// var_f31 *= -1.0f; +// } +// if (!(var_f31 > 230.0f) && (fn_1_10EA4() != 2)) { +// if (fn_1_10D24(&sp1C) != 0) { +// var_r30 = 1; +// } +// if (var_r30 != 0) { +// var_f31 = sp1C.z - var_r31->unk_130; +// if (var_f31 > 100.0f) { +// var_f31 = 100.0f; +// } +// else if (var_f31 < -100.0f) { +// var_f31 = -100.0f; +// } +// else { +// var_r31->unk_58 = 1; +// } +// } +// if ((var_r31->unk_1C & 0x200) != 0) { +// var_r31->unk_13C = 0.0f; +// var_r31->unk_138 = 0.0f; +// var_r31->unk_134 = 0.0f; +// fn_1_B4D4(var_r29, 0xA); +// var_r31->unk_78 = 1; +// var_r31->unk_88 = 0; +// var_r31->unk_30 = 1; +// if (var_r31->unk_14 != 0) { +// var_f28 = -90.0f; +// } +// else { +// var_f28 = 90.0f; +// } +// var_r31->unk_A8 = var_f28; +// var_r31->unk_AC = 0.2f; +// var_r31->unk_B0 = 0.0f; +// fn_1_D888(&var_r31->unk_128, 0.75f); +// var_f30 = 0.5f; +// var_r31->unk_124 = (2.0f * -(350.0f - lbl_1_data_E0[var_r31->unk_00])) / (0.5f * 0.5f); +// var_r31->unk_138 = 0.016666668f * (-var_r31->unk_124 * 0.5f); +// var_r31->unk_134 = 0.016666668f * (-var_r31->unk_128 / 0.75f); +// if (var_r30 != 0) { +// var_r31->unk_13C = 0.016666668f * (var_f31 / 0.5f); +// } +// var_r31->unk_60 = 1; +// var_r31->unk_58 = 0; +// return; +// } +// } +// } +// else { +// return; +// } +// break; +// case 1: +// var_r31->unk_138 = var_r31->unk_138 + (0.016666668f * (0.016666668f * var_r31->unk_124)); +// if ((var_r31->unk_14 == fn_1_10740(&sp1C)) && (fn_1_10FDC() == 0)) { +// fn_1_10B20(0.0f, &sp1C); +// if ((sp1C * var_r31->unk_128) > 0.0f) { +// sp1C.y = var_r31->unk_12C; +// PSVECSubtract(&sp1C, &var_r31->unk_128, &sp10); +// if (PSVECMag(&sp10) < 60.000004f) { +// if (frandmod(0x64) < 0x1E) { +// fn_1_10740(&sp1C); +// sp1C = sp1C * -0.5f; +// fn_1_FE8C(&sp1C, 5, var_r31->unk_14, var_r31->unk_18); +// HuAudFXPlay((&sp8)[var_r31->unk_14]); +// } +// else { +// fn_1_10740(&sp1C); +// var_f29 = frandmod(0x168); +// sp1C = sp1C + (100.0 * (2.0 * sind(var_f29))); +// sp1C.z = sp1C.z + (100.0 * (2.0 * cosd(var_f29))); +// fn_1_10130(&sp1C, var_r31->unk_14); +// fn_1_FE8C(&sp1C, 8, var_r31->unk_14, var_r31->unk_18); +// HuAudFXPlay((&sp8)[var_r31->unk_14]); +// } +// fn_1_B4D4(var_r29, 0xD); +// var_r28->unk_64 = 0; +// } +// } +// } +// if (var_r31->unk_12C <= 0.0f) { +// fn_1_D888(&var_r31->unk_128, 0.75f); +// var_r31->unk_30 = 0; +// var_r31->unk_78 = 0; +// var_r31->unk_13C = 0.0f; +// var_r31->unk_138 = 0.0f; +// var_r31->unk_134 = 0.0f; +// var_r31->unk_60 = 0; +// } +// break; +// } +// } + +// void fn_1_B194(omObjData *object) +// { +// Vec sp8; +// float var_f31; +// void *var_r31; +// void *var_r30; +// s32 var_r29; +// s32 var_r28; +// s32 var_r27; + +// for (var_r27 = 0; var_r27 < 2; var_r27++) { +// for (var_r29 = 0; var_r29 < 4; var_r29++) { +// var_r31 = lbl_1_bss_7D0[var_r29]->data; +// for (var_r28 = 0; var_r28 < 4; var_r28++) { +// if (var_r29 != var_r28) { +// var_r30 = lbl_1_bss_7D0[var_r28]->data; +// PSVECSubtract(&var_r31->unk_128, var_r30 + 0x128, &sp8); +// sp8.y = 0.0f; +// var_f31 = PSVECMag(&sp8); +// if (var_f31 < (var_r31->unk_120 + var_r30->unk_120)) { +// if (var_f31 > 0.0f) { +// var_f31 = 0.5f * ((var_r31->unk_120 + var_r30->unk_120) - var_f31); +// } +// else { +// var_f31 = 0.5f * (var_r31->unk_120 + var_r30->unk_120); +// sp8 = frandmod(0x3E8) - 0x1F4; +// sp8.z = frandmod(0x3E8) - 0x1F4; +// } +// PSVECNormalize(&sp8, &sp8); +// PSVECScale(&sp8, &sp8, var_f31); +// PSVECAdd(&var_r31->unk_128, &sp8, &var_r31->unk_128); +// PSVECSubtract(var_r30 + 0x128, &sp8, var_r30 + 0x128); +// } +// } +// } +// if (var_r31->unk_12C < 0.0f) { +// var_r31->unk_12C = 0.0f; +// } +// if ((var_r31->unk_130 - var_r31->unk_120) < -500.0f) { +// var_r31->unk_130 = -500.0f + var_r31->unk_120; +// } +// else if ((var_r31->unk_130 + var_r31->unk_120) > 500.0f) { +// var_r31->unk_130 = 500.0f - var_r31->unk_120; +// } +// if (var_r31->unk_14 == 0) { +// var_r31->unk_128 = var_r31->unk_128 * -1.0f; +// } +// if ((var_r31->unk_128 - var_r31->unk_120) < 20.0f) { +// var_r31->unk_128 = 20.0f + var_r31->unk_120; +// } +// else if ((60.000004f + var_r31->unk_128) > 800.0f) { +// var_r31->unk_128 = 740.0f; +// } +// if (var_r31->unk_14 == 0) { +// var_r31->unk_128 = var_r31->unk_128 * -1.0f; +// } +// } +// } +// } + +// void fn_1_B4D4(omObjData *object, u32 arg1) +// { +// float var_f31; +// void *var_r31; +// u32 var_r30; +// omObjData *var_r29; + +// var_r29 = object; +// var_r30 = arg1; +// var_r31 = var_r29->data; +// if ((var_r31->unk_0C != var_r30) && (var_r30 < 0x15)) { +// var_f31 = 60.0f * lbl_1_data_24C[var_r30].unk_04; +// if (var_r31->unk_0C < 0) { +// var_f31 = 0.0f; +// } +// var_r31->unk_0C = var_r30; +// if (var_r31->unk_04 < 0) { +// CharModelMotionShiftSet(var_r31->unk_00, var_r29->motion[lbl_1_data_24C[var_r30].unk_00], 60.0f * lbl_1_data_24C[var_r30].unk_08, +// var_f31, +// lbl_1_data_24C[var_r30].unk_10); +// } +// else { +// Hu3DMotionShiftSet(var_r29->model[0], var_r29->motion[lbl_1_data_24C[var_r30].unk_00], 60.0f * lbl_1_data_24C[var_r30].unk_08, var_f31, +// lbl_1_data_24C[var_r30].unk_10); +// } +// if (lbl_1_data_24C[var_r30].unk_0C >= 0.0f) { +// Hu3DMotionShiftStartEndSet(var_r29->model[0], 60.0f * lbl_1_data_24C[var_r30].unk_08, 60.0f * lbl_1_data_24C[var_r30].unk_0C); +// } +// var_r31->unk_10 = 0; +// } +// } + +// s32 fn_1_B6E0(omObjData *object) +// { +// void *var_r31; +// omObjData *var_r30; +// s32 var_r29; + +// var_r30 = object; +// var_r31 = var_r30->data; +// var_r29 = 0; +// if (var_r31->unk_04 < 0) { +// if (((CharModelMotionEndCheck(var_r31->unk_00) != 0) || (var_r31->unk_10 != 0)) && (CharModelMotionShiftIDGet(var_r31->unk_00) < 0)) { +// var_r29 = 1; +// } +// } +// else if (((Hu3DMotionEndCheck(var_r30->model[0]) != 0) || (var_r31->unk_10 != 0)) && (Hu3DMotionShiftIDGet(var_r30->model[0]) < 0)) { +// var_r29 = 1; +// } +// return var_r29; +// } + +// s32 fn_1_B7AC(omObjData *object) +// { +// void *var_r31; +// s32 var_r30; +// omObjData *var_r29; + +// var_r29 = object; +// var_r31 = var_r29->data; +// var_r30 = 0; +// if (var_r31->unk_04 < 0) { +// if (CharModelMotionShiftIDGet(var_r31->unk_00) < 0) { +// var_r30 = 1; +// } +// } +// else if (Hu3DMotionShiftIDGet(var_r29->model[0]) < 0) { +// var_r30 = 1; +// } +// return var_r30; +// } + +// s32 fn_1_B838(void *arg0, u32 arg1) +// { +// float var_f31; +// void *var_r31; +// void *var_r30; +// u32 var_r29; +// void *var_r28; +// s32 var_r27; +// s32 var_r26; + +// var_r31 = arg0; +// var_r29 = arg1; +// var_r26 = 0; +// var_r28 = var_r31->unk_5C; +// var_r27 = 0; +// if (var_r28->unk_04 < 0) { +// if (((CharModelMotionEndCheck(var_r28->unk_00) != 0) || (var_r28->unk_10 != 0)) && (CharModelMotionShiftIDGet(var_r28->unk_00) < 0)) { +// var_r27 = 1; +// } +// } +// else if (((Hu3DMotionEndCheck(*var_r31->unk_40) != 0) || (var_r28->unk_10 != 0)) && (Hu3DMotionShiftIDGet(*var_r31->unk_40) < 0)) { +// var_r27 = 1; +// } +// if (var_r27 != 0) { +// var_r30 = var_r31->unk_5C; +// if ((var_r30->unk_0C != var_r29) && (var_r29 < 0x15)) { +// var_f31 = 60.0f * lbl_1_data_24C[var_r29].unk_04; +// if (var_r30->unk_0C < 0) { +// var_f31 = 0.0f; +// } +// var_r30->unk_0C = var_r29; +// if (var_r30->unk_04 < 0) { +// CharModelMotionShiftSet(var_r30->unk_00, *(var_r31->unk_48 + (lbl_1_data_24C[var_r29].unk_00 * 2)), +// 60.0f * lbl_1_data_24C[var_r29].unk_08, var_f31, lbl_1_data_24C[var_r29].unk_10); +// } +// else { +// Hu3DMotionShiftSet(*var_r31->unk_40, *(var_r31->unk_48 + (lbl_1_data_24C[var_r29].unk_00 * 2)), +// 60.0f * lbl_1_data_24C[var_r29].unk_08, var_f31, lbl_1_data_24C[var_r29].unk_10); +// } +// if (lbl_1_data_24C[var_r29].unk_0C >= 0.0f) { +// Hu3DMotionShiftStartEndSet(*var_r31->unk_40, 60.0f * lbl_1_data_24C[var_r29].unk_08, 60.0f * lbl_1_data_24C[var_r29].unk_0C); +// } +// var_r30->unk_10 = 0; +// } +// var_r26 = 1; +// } +// return var_r26; +// } + +// s32 fn_1_BAE0(omObjData *object, u32 arg1) +// { +// float var_f31; +// omObjData *var_r31; +// void *var_r30; +// u32 var_r29; +// void *var_r28; +// s32 var_r27; +// s32 var_r26; + +// var_r31 = object; +// var_r29 = arg1; +// var_r26 = 0; +// var_r28 = var_r31->data; +// var_r27 = 0; +// if (var_r28->unk_04 < 0) { +// if (CharModelMotionShiftIDGet(var_r28->unk_00) < 0) { +// var_r27 = 1; +// } +// } +// else if (Hu3DMotionShiftIDGet(var_r31->model[0]) < 0) { +// var_r27 = 1; +// } +// if (var_r27 != 0) { +// var_r30 = var_r31->data; +// if ((var_r30->unk_0C != var_r29) && (var_r29 < 0x15)) { +// var_f31 = 60.0f * lbl_1_data_24C[var_r29].unk_04; +// if (var_r30->unk_0C < 0) { +// var_f31 = 0.0f; +// } +// var_r30->unk_0C = var_r29; +// if (var_r30->unk_04 < 0) { +// CharModelMotionShiftSet(var_r30->unk_00, var_r31->motion[lbl_1_data_24C[var_r29].unk_00], 60.0f * lbl_1_data_24C[var_r29].unk_08, +// var_f31, lbl_1_data_24C[var_r29].unk_10); +// } +// else { +// Hu3DMotionShiftSet(var_r31->model[0], var_r31->motion[lbl_1_data_24C[var_r29].unk_00], 60.0f * lbl_1_data_24C[var_r29].unk_08, +// var_f31, lbl_1_data_24C[var_r29].unk_10); +// } +// if (lbl_1_data_24C[var_r29].unk_0C >= 0.0f) { +// Hu3DMotionShiftStartEndSet(var_r31->model[0], 60.0f * lbl_1_data_24C[var_r29].unk_08, 60.0f * lbl_1_data_24C[var_r29].unk_0C); +// } +// var_r30->unk_10 = 0; +// } +// var_r26 = 1; +// } +// return var_r26; +// } + +void fn_1_BD48(omObjData *object) +{ + M433PlayerWork2 *work; + s32 var_r29; + s32 var_r28; + HsfanimStruct01 *var_r27; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433PlayerWork2), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M433PlayerWork2)); + object->model[0] = Hu3DModelCreateFile(0x400000); + Hu3DModelShadowSet(object->model[0]); + object->model[1] = Hu3DModelCreateFile(0x400004); + Hu3DModelAttrSet(object->model[1], HU3D_MOTATTR_LOOP); + object->model[2] = Hu3DModelCreateFile(0x400004); + Hu3DModelAttrSet(object->model[2], HU3D_MOTATTR_LOOP); + object->model[3] = Hu3DModelCreateFile(0x400003); + Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); + object->model[4] = Hu3DModelCreateFile(0x400007); + Hu3DModelAttrSet(object->model[4], HU3D_ATTR_DISPOFF); + object->model[6] = Hu3DModelCreateFile(0x400005); + Hu3DModelAttrSet(object->model[6], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(object->model[6], 0.75f, 0.75f, 0.75f); + Hu3DModelLayerSet(object->model[6], 2); + object->model[7] = Hu3DModelCreateFile(0x400006); + Hu3DModelAttrSet(object->model[7], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(object->model[7], 0.75f, 0.75f, 0.75f); + Hu3DModelLayerSet(object->model[7], 2); + var_r28 = Hu3DParticleCreate(HuSprAnimRead(HuDataReadNum(0x120002, 0x10000000)), 1); + object->model[8] = var_r28; + Hu3DModelLayerSet(var_r28, 2); + Hu3DParticleHookSet(var_r28, fn_1_DE28); + Hu3DModelAttrSet(var_r28, HU3D_ATTR_DISPOFF); + var_r28 = Hu3DParticleCreate(HuSprAnimReadFile(0x400009), 0xC8); + object->model[5] = var_r28; + Hu3DModelLayerSet(var_r28, 2); + Hu3DParticleHookSet(var_r28, fn_1_D6A8); + for (var_r27 = ((ParticleData *)Hu3DData[var_r28].unk_120)->unk_48, var_r29 = 0; var_r29 < 0xC8; var_r29++, var_r27++) { + var_r27->unk2C = 0.0f; + var_r27->unk40.a = 0; + var_r27->unk00_s16 = 0; + } + object->model[9] = Hu3DModelCreateFile(0x400002); + Hu3DModelScaleSet(object->model[9], 1.05f, 1.05f, 1.05f); + Hu3DModelAttrSet(object->model[9], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[9], 1); + Hu3DModelShadowSet(object->model[9]); + for (var_r29 = 1; var_r29 < 0x15; var_r29++) { + if (var_r29 == 0xA) { + object->model[var_r29 + 9] = Hu3DModelCreateFile(0x400001); + } + else { + object->model[var_r29 + 9] = Hu3DModelLink(object->model[9]); + Hu3DModelLayerSet(object->model[var_r29 + 9], 1); + } + Hu3DModelShadowSet(object->model[var_r29 + 9]); + Hu3DModelScaleSet(object->model[var_r29 + 9], 1.05f, 1.05f, 1.05f); + Hu3DModelAttrSet(object->model[var_r29 + 9], HU3D_ATTR_DISPOFF); + } + object->trans.x = work->unk_30 = 0.0f; + object->trans.y = work->unk_34 = 0.0f; + object->trans.z = work->unk_38 = 0.0f; + work->unk_B8 = 0.0f; + work->unk_BC = work->unk_C0 = 0.0f; + work->unk_C4 = 1.0f; + PSMTXIdentity(work->unk_C8); + work->unk_18 = 0; + object->func = fn_1_C240; +} + +// void fn_1_C240(omObjData *object) +// { +// s32 sp8; +// s32 temp_r4; +// void *var_r31; +// omObjData *var_r30; +// s32 var_r29; +// u16 temp_r0; + +// var_r30 = object; +// var_r31 = var_r30->data; +// sp8 = 0; +// var_r31->unk_00 = 0; +// temp_r0 = var_r31->unk_18; +// switch (temp_r0) { +// case 0: +// var_r31->unk_04 = 1; +// break; +// case 1: +// var_r31->unk_B8 = 0.0f; +// var_r31->unk_C0 = 0.0f; +// var_r31->unk_BC = 0.0f; +// var_r31->unk_C4 = 1.0f; +// PSMTXIdentity(var_r31 + 0xC8); +// var_r31->unk_00 = 1; +// break; +// case 10: +// var_r31->unk_00 = 1; +// break; +// } +// var_r31->unk_8C++; +// if (var_r31->unk_90 != 0) { +// var_r31->unk_A0 = 1.0f; +// if (var_r31->unk_94 == 2) { +// var_r31->unk_A4 = var_r31->unk_A4 + 12.000001f; +// if (var_r31->unk_A4 >= 360.0f) { +// var_r31->unk_A4 = var_r31->unk_A4 - 360.0f; +// } +// var_r31->unk_A0 = 1.5f; +// var_r31->unk_A8 = var_r31->unk_A8 + 0.015000001f; +// Hu3DMotionSpeedSet(var_r30->model->unk_06, 2.5f); +// } +// else { +// Hu3DMotionTimeSet(var_r30->model->unk_06, 0.0f); +// Hu3DMotionSpeedSet(var_r30->model->unk_06, 0.0f); +// } +// Hu3DModelRotSet(var_r30->model->unk_06, 0.0f, var_r31->unk_A4, 0.0f); +// Hu3DModelAttrReset(var_r30->model->unk_06, HU3D_ATTR_DISPOFF); +// Hu3DModelPosSet(var_r30->model->unk_06, var_r31->unk_AC, 3.0f + var_r31->unk_B0, var_r31->unk_B4); +// var_r31->unk_98++; +// var_r31->unk_90 = 0; +// } +// else if (var_r31->unk_94 != 0) { +// var_r31->unk_94 = 0; +// var_r31->unk_A0 = 0.0f; +// } +// var_r31->unk_9C = var_r31->unk_9C + (0.2f * (var_r31->unk_A0 - var_r31->unk_9C)); +// Hu3DModelScaleSet(var_r30->model->unk_06, var_r31->unk_9C, 1.0f, var_r31->unk_9C); +// if ((var_r31->unk_A0 <= 0.0f) && (var_r31->unk_9C < 0.1f)) { +// Hu3DModelAttrSet(var_r30->model->unk_06, HU3D_ATTR_DISPOFF); +// var_r31->unk_9C = 0.0f; +// } +// for (var_r29 = 0; var_r29 < 2; var_r29++) { +// temp_r4 = (var_r29 * 4) + 0x7C; +// *(var_r31 + temp_r4) = *(var_r31 + temp_r4) + (0.3f * (*(var_r31 + ((var_r29 * 4) + 0x84)) - *(var_r31 + ((var_r29 * 4) + 0x7C)))); +// if (*(var_r31 + ((var_r29 * 4) + 0x84)) > 0.0f) { +// Hu3DModelAttrReset(var_r30->model[var_r29 + 1], HU3D_ATTR_DISPOFF); +// } +// else if (*(var_r31 + ((var_r29 * 4) + 0x7C)) < 0.1f) { +// Hu3DModelAttrSet(var_r30->model[var_r29 + 1], HU3D_ATTR_DISPOFF); +// } +// Hu3DModelScaleSet(var_r30->model[var_r29 + 1], *(var_r31 + ((var_r29 * 4) + 0x7C)), 1.0f, *(var_r31 + ((var_r29 * 4) + 0x7C))); +// } +// fn_1_C6B0(var_r30); +// fn_1_CB98(var_r30); +// var_r30->trans.x = var_r31->unk_30; +// var_r30->trans.y = var_r31->unk_34; +// var_r30->trans.z = var_r31->unk_38; +// if ((fn_1_216C() >= 3) && (var_r31->unk_04 != 0) && (fn_1_2244() != 0)) { +// fn_1_DD70(var_r31 + 0x30); +// Hu3DModelAttrSet(var_r30->model->unk_00, HU3D_ATTR_DISPOFF); +// var_r30->func = fn_1_C6AC; +// } +// } + +// void fn_1_C6AC(omObjData *object) { } + +// s32 fn_1_C6B0(omObjData *object) +// { +// Vec sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// float var_f27; +// float var_f26; +// void *var_r31; +// omObjData *var_r30; +// void *var_r29; +// s32 var_r28; + +// var_r30 = object; +// var_r31 = var_r30->data; +// if ((var_r31->unk_00 == 0) && (var_r31->unk_04 == 0) && (var_r31->unk_08 == 0)) { +// if (var_r31->unk_10 == 0) { +// fn_1_CDB8(var_r31 + 0xF8, var_r31 + 0x30, var_r31 + 0x3C, var_r31->unk_6C, var_r31->unk_A8); +// fn_1_D338(var_r31 + 0xF8); +// fn_1_D180(var_r31 + 0xF8); +// var_r31->unk_B8 = var_r31->unk_A8 * (8.0f * lbl_1_data_48C[var_r31->unk_6C]); +// PSVECSubtract(var_r31 + 0x3C, var_r31 + 0x30, &sp8); +// sp8.y = 0.0f; +// if (PSVECMag(&sp8) <= 0.0f) { +// var_r31->unk_C0 = 0.0f; +// var_r31->unk_BC = 0.0f; +// var_r31->unk_C4 = 1.0f; +// } +// else { +// PSVECNormalize(&sp8, &sp8); +// var_r31->unk_BC = -sp8.z; +// var_r31->unk_C0 = 0.0f; +// var_r31->unk_C4 = sp8; +// } +// var_r31->unk_48 = 0.0f; +// var_r28 = 0; +// if (var_r31->unk_84 > 0.0f) { +// var_r28 = 1; +// } +// Hu3DModelPosSet(var_r30->model[var_r28 + 1], var_r31->unk_130, 3.0f + var_r31->unk_134, var_r31->unk_138); +// if (var_r31->unk_9C <= 0.0f) { +// var_r31->unk_8C = 9; +// } +// if (lbl_1_data_468[var_r31->unk_6C] != 0) { +// *(var_r31 + ((var_r28 * 4) + 0x84)) = 1.0f; +// } +// *(var_r31 + (((1 - var_r28) * 4) + 0x84)) = 0.0f; +// } +// var_r31->unk_10 = 1; +// if (var_r31->unk_B8 != 0.0f) { +// PSMTXRotAxisRad(&sp14[0], var_r31 + 0xBC, 0.017453292f * var_r31->unk_B8); +// PSMTXConcat(&sp14[0], var_r31 + 0xC8, var_r31 + 0xC8); +// PSMTXCopy(var_r31 + 0xC8, Hu3DData[var_r30->model->unk_00].unk_F0[0]); +// } +// var_r31->unk_48 = var_r31->unk_48 + 0.016666668f; +// var_r31->unk_08 = fn_1_D4E0(var_r31 + 0xF8, var_r31 + 0x30, var_r31 + 0x4C, var_r31->unk_48); +// if (var_r31->unk_08 != 0) { +// var_r31->unk_88 = 0.0f; +// var_r31->unk_84 = 0.0f; +// if (var_r31->unk_34 <= 12.0f) { +// var_r29 = lbl_1_bss_7C8->data; +// var_r31->unk_78 = 0; +// Hu3DModelPosSetV(var_r30->model->unk_08, var_r31 + 0x30); +// Hu3DMotionTimeSet(var_r30->model->unk_08, 0.0f); +// if ((var_r31->unk_6C == 5) || (var_r31->unk_6C == 2)) { +// Hu3DMotionSpeedSet(var_r30->model->unk_08, 1.5f); +// fn_1_D888(var_r31 + 0x30, 1.0f); +// } +// else { +// Hu3DMotionSpeedSet(var_r30->model->unk_08, 1.0f); +// fn_1_D888(var_r31 + 0x30, 0.5f); +// var_r31->unk_34 = var_r31->unk_34 + 11.0f; +// } +// var_r31->unk_6C = 0; +// var_r31->unk_04 = 1; +// var_r29->unk_2C = 1; +// var_r29->unk_38 = -1; +// var_f31 = var_r31->unk_38; +// var_f29 = fabs(var_f31); +// var_f28 = var_f29; +// if (var_f28 < 350.0) { +// var_f30 = var_r31->unk_30; +// var_f27 = fabs(var_f30); +// var_f26 = var_f27; +// if (var_f26 < 700.0) { +// var_r29->unk_38 = 0; +// if (var_r31->unk_30 >= 0.0f) { +// var_r29->unk_38 = 1; +// } +// } +// } +// } +// } +// } +// else { +// var_r31->unk_10 = 0; +// } +// return var_r31->unk_08; +// } + +// void fn_1_CB98(omObjData *object) +// { +// Vec sp14; +// Vec sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// void *var_r31; +// omObjData *var_r30; +// s32 var_r29; + +// var_r30 = object; +// var_r31 = var_r30->data; +// if (var_r31->unk_78 != 0) { +// Hu3DModelAttrSet(var_r30->model[0], HU3D_ATTR_DISPOFF); +// var_f30 = var_r31->unk_FC; +// var_f29 = var_f30; +// var_f31 = var_f29 - (0.020000001f * var_r31->unk_A8); +// if (var_f31 < 0.0f) { +// var_f31 = 0.0f; +// } +// var_f31 = (var_f30 - var_f31) / 21.0f; +// PSMTXCopy(var_r31 + 0xC8, &sp20[0]); +// var_f28 = (var_r31->unk_B8 * (1.2f * var_r31->unk_A8)) / 21.0f; +// PSMTXRotAxisRad(&sp50[0], var_r31 + 0xBC, 0.017453292f * -var_f28); +// for (var_r29 = 0; var_r29 < 0x15; var_r29++) { +// Hu3DModelAttrReset(var_r30->model[var_r29 + 9], HU3D_ATTR_DISPOFF); +// fn_1_D4E0(var_r31 + 0xF8, &sp14, &sp8, var_f30); +// Hu3DModelPosSetV(var_r30->model[var_r29 + 9], &sp14); +// PSMTXCopy(&sp20[0], Hu3DData[var_r30->model[var_r29 + 9]].unk_F0[0]); +// PSMTXConcat(&sp50[0], &sp20[0], &sp20[0]); +// var_f30 -= var_f31; +// } +// var_r31->unk_FC = var_f29; +// return; +// } +// Hu3DModelAttrReset(var_r30->model[0], HU3D_ATTR_DISPOFF); +// for (var_r29 = 0; var_r29 < 0x15; var_r29++) { +// Hu3DModelAttrSet(var_r30->model[var_r29 + 9], HU3D_ATTR_DISPOFF); +// } +// } + +// void fn_1_CDB8(float *arg0, Vec *arg1, Vec *arg2, u32 arg3, float arg8) +// { +// Vec sp18; +// float sp14; +// float sp10; +// float spC; +// float sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// double var_f27; +// double var_f26; +// float *var_r31; +// Vec *var_r30; +// Vec *var_r29; +// u32 var_r28; + +// var_r31 = arg0; +// var_r30 = arg1; +// var_r29 = arg2; +// var_r28 = arg3; +// sp8 = arg8; +// var_r31->unk_0C = 0.0f; +// var_r31->unk_08 = 0.0f; +// var_f31 = lbl_1_data_4D4[var_r28].y; +// var_r31->unk_00 = var_f31; +// if (var_r31->unk_00 <= 0.0f) { +// if (((var_r29->x * var_r30->x) < 0.0f) && (var_r30->x != 0.0f) && (lbl_1_data_4D4[var_r28].x > 0.0f)) { +// var_r31->unk_0C = lbl_1_data_4D4[var_r28].x; +// var_f28 = var_r30->x / (var_r29->x - var_r30->x); +// var_f27 = fabs(var_f28); +// var_f26 = var_f27; +// var_r31->unk_08 = var_f26; +// var_f29 = var_r30->y + (var_r31->unk_08 * (var_r29->y - var_r30->y)); +// if (var_f29 < var_r31->unk_0C) { +// spC = var_r30->x + (var_r31->unk_08 * (var_r29->x - var_r30->x)); +// sp10 = var_r31->unk_0C; +// sp14 = var_r30->z + (var_r31->unk_08 * (var_r29->z - var_r30->z)); +// PSVECSubtract(var_r29, &spC, &sp18); +// var_f30 = PSVECMag(&sp18); +// PSVECSubtract(&spC, var_r30, &sp18); +// var_f30 += PSVECMag(&sp18); +// } +// else { +// PSVECSubtract(var_r29, var_r30, &sp18); +// var_f30 = PSVECMag(&sp18); +// } +// } +// else { +// PSVECSubtract(var_r29, var_r30, &sp18); +// var_f30 = PSVECMag(&sp18); +// } +// var_f31 = var_f30 / (sp8 * lbl_1_data_4D4[var_r28].z); +// var_r31->unk_00 = var_f31; +// } +// var_r31->unk_04 = 0.0f; +// var_r31->unk_2C = var_r30->x; +// var_r31->unk_30 = var_r30->y; +// var_r31->unk_34 = var_r30->z; +// var_r31->unk_38 = var_r29->x; +// var_r31->unk_3C = var_r29->y; +// var_r31->unk_40 = var_r29->z; +// var_r31->unk_1C = var_r29->y - var_r30->y; +// var_r31->unk_24 = -980.0f; +// PSVECSubtract(var_r29, var_r30, &sp18); +// sp18.y = 0.0f; +// var_r31->unk_10 = PSVECMag(&sp18); +// var_r31->unk_18 = 0.0f; +// if (var_f31 > 0.0f) { +// var_r31->unk_20 = (var_r31->unk_1C - (0.5f * (-980.0f * (var_f31 * var_f31)))) / var_f31; +// var_r31->unk_14 = var_r31->unk_10 / var_f31; +// } +// else { +// var_r31->unk_20 = var_r31->unk_1C; +// var_r31->unk_14 = var_r31->unk_10; +// } +// var_r31->unk_28 = lbl_1_data_540[var_r28]; +// } + +// void fn_1_D180(float *arg0) +// { +// float sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// float var_f27; +// float var_f26; +// float var_f25; +// s32 var_r31; + +// if (!(arg0->unk_0C <= 0.0f)) { +// var_f31 = arg0->unk_00; +// var_f28 = arg0->unk_00; +// var_f27 = 10.0f * arg0->unk_00; +// for (var_r31 = 0; var_r31 < 0x10; var_r31++) { +// var_f30 = 1.0f / var_f31; +// sp8 = arg0->unk_10 * var_f30; +// var_f26 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * var_f31); +// var_f29 = arg0->unk_08 * var_f31; +// var_f25 = arg0->unk_30 + ((var_f29 * (0.5f * arg0->unk_24 * var_f29)) + (var_f26 * var_f29)); +// if (arg0->unk_0C > var_f25) { +// var_f28 = var_f31; +// } +// else { +// var_f27 = var_f31; +// } +// var_f31 = 0.5f * (var_f28 + var_f27); +// } +// var_f30 = 1.0f / var_f31; +// arg0->unk_00 = var_f31; +// arg0->unk_14 = arg0->unk_10 * var_f30; +// arg0->unk_20 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * var_f31); +// } +// } + +// void fn_1_D338(float *arg0) +// { +// float sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// float var_f27; +// float var_f26; +// float var_f25; +// s32 var_r31; + +// if (!(arg0->unk_0C <= 0.0f)) { +// var_f29 = arg0->unk_08 * arg0->unk_00; +// var_f30 = 1.0f / arg0->unk_00; +// var_f31 = arg0->unk_24; +// var_f28 = arg0->unk_24; +// var_f27 = arg0->unk_24 * arg0->unk_28; +// for (var_r31 = 0; var_r31 < 0x10; var_r31++) { +// sp8 = arg0->unk_10 * var_f30; +// var_f26 = (arg0->unk_1C * var_f30) - (0.5f * var_f31 * arg0->unk_00); +// var_f25 = arg0->unk_30 + ((var_f29 * (0.5f * var_f31 * var_f29)) + (var_f26 * var_f29)); +// if (arg0->unk_0C > var_f25) { +// var_f28 = var_f31; +// } +// else { +// var_f27 = var_f31; +// } +// var_f31 = 0.5f * (var_f28 + var_f27); +// } +// arg0->unk_24 = var_f31; +// arg0->unk_14 = arg0->unk_10 * var_f30; +// arg0->unk_20 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * arg0->unk_00); +// } +// } + +// s32 fn_1_D4E0(float *arg0, Vec *arg1, Vec *arg2, float arg8) +// { +// float sp20; +// float sp1C; +// float sp18; +// Vec spC; +// Vec *sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float *var_r31; +// Vec *var_r30; + +// var_r31 = arg0; +// var_r30 = arg1; +// sp8 = arg2; +// var_f31 = arg8; +// if (var_f31 < 0.0f) { +// var_f31 = 0.0f; +// } +// if (var_f31 > var_r31->unk_00) { +// var_f31 = var_r31->unk_00; +// } +// var_r31->unk_04 = var_f31; +// if (var_r31->unk_10 > 0.0f) { +// PSVECSubtract(var_r31 + 0x38, var_r31 + 0x2C, &spC); +// spC.y = 0.0f; +// PSVECNormalize(&spC, &spC); +// } +// else { +// spC.z = 0.0f; +// spC.y = 0.0f; +// spC = 0.0f; +// } +// sp18 = var_r30->x; +// sp1C = var_r30->y; +// sp20 = var_r30->z; +// var_f30 = (var_f31 * (0.5f * var_r31->unk_18 * var_f31)) + (var_r31->unk_14 * var_f31); +// var_f29 = (var_f31 * (0.5f * var_r31->unk_24 * var_f31)) + (var_r31->unk_20 * var_f31); +// var_r30->x = var_r31->unk_2C + (spC * var_f30); +// var_r30->y = var_r31->unk_30 + var_f29; +// var_r30->z = var_r31->unk_34 + (spC.z * var_f30); +// PSVECSubtract(var_r30, &sp18, sp8); +// if (var_f31 >= var_r31->unk_00) { +// return 1; +// } +// return 0; +// } + +// void fn_1_D6A8(ModelData *model, ParticleData *particle, Mtx matrix) +// { +// HsfanimStruct01 *var_r31; +// ParticleData *var_r30; +// s32 var_r29; +// u16 temp_r0; + +// var_r30 = particle; +// for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r31 < var_r30->unk_30; var_r29++, var_r31 += 0x44) { +// if (var_r31->unk00 != 0) { +// PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); +// var_r31->unk08.x *= 0.92f; +// var_r31->unk08.z *= 0.92f; +// var_r31->unk08.y += -0.27222225f; +// var_r31->unk2C += 2.0f; +// var_r31->unk40.a = var_r31->unk40.a * 0.99f; +// if (var_r31->unk00 < 24.0f) { +// var_r31->unk40.a = 0.9f * var_r31->unk40.a; +// } +// temp_r0 = var_r31->unk00 - 1; +// var_r31->unk00 = temp_r0; +// if (temp_r0 == 0) { +// var_r31->unk00 = 0; +// var_r31->unk2C = 0.0f; +// var_r31->unk40.a = 0; +// } +// } +// } +// DCStoreRange(var_r30->unk_48, var_r30->unk_30 * 0x44); +// } + +// void fn_1_D888(Vec *arg0, float arg8) +// { +// float sp10; +// float spC; +// float sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// void *var_r31; +// Vec *var_r30; +// s32 var_r29; +// u32 var_r28; + +// var_r30 = arg0; +// var_f29 = arg8; +// var_r31 = Hu3DData[lbl_1_bss_7CC->model->unk_0A].unk_120->unk_48; +// var_r28 = 3.0f + (12.0f * var_f29); +// var_r29 = 0; +// loop_4: +// if (var_r29 < 0xC8) { +// if ((var_r31->unk_00 != 0) +// || (var_r31->unk_00 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))), var_f30 = frandmod(0x168), sp8 = sind(var_f30) / 180.0), +// spC = 0.0f, +// sp10 = cos((3.141592653589793 * var_f30), var_f31 = 0.030000001f * frandmod(0x3E8), var_r31->unk_34 = var_r30->x + (sp8 * var_f31), +// var_r31->unk_38 = 10.0f + (var_r30->y + (0.030000001f * frandmod(0x3E8))), var_r31->unk_3C = var_r30->z + (sp10 * var_f31), +// var_f31 = 0.8333334f + (0.0016666667f * frandmod(0x3E8)), var_f31 *= 1.0f + var_f29, var_r31->unk_08 = sp8 * var_f31, +// var_r31->unk_10 = sp10 * var_f31, var_r31->unk_0C = 0.50000006f + (0.0011666667f * frandmod(0x3E8)), +// var_r31->unk_0C = var_r31->unk_0C * (1.0f + var_f29), var_r31->unk_30 = frandmod(0x168), var_r31->unk_2C = 60.0f + frandmod(0x1E), +// var_r31->unk_43 = frandmod(0x64) + 0x78, var_f31 = 0.001f * frandmod(0x3E8), var_r31->unk_40 = 235.0f + (20.0f * var_f31), +// var_r31->unk_41 = 180.0f + (75.0f * var_f31), var_r31->unk_42 = 155.0f + (100.0f * var_f31), var_r28--, ((var_r28 < 1) == 0))) { +// var_r29++; +// var_r31 += 0x44; +// goto loop_4; +// } +// } +// } + +// void fn_1_DD70(Vec *arg0) +// { +// void *var_r31; +// void *var_r30; +// Vec *var_r29; + +// var_r29 = arg0; +// var_r31 = Hu3DData[lbl_1_bss_7CC->model->unk_10].unk_120; +// Hu3DModelAttrReset(lbl_1_bss_7CC->model->unk_10, HU3D_ATTR_DISPOFF); +// var_r30 = var_r31->unk_48; +// var_r31->unk_00 = 0; +// var_r31->unk_02 = 0x3C; +// var_r30->unk_2C = 100.0f; +// var_r30->unk_34 = var_r29->x; +// var_r30->unk_38 = var_r29->y; +// var_r30->unk_3C = var_r29->z; +// } + +// void fn_1_DE28(ModelData *model, ParticleData *particle, Mtx matrix) +// { +// ParticleData *var_r31; +// HsfanimStruct01 **var_r30; +// s32 var_r29; +// s8 var_r28; +// ModelData *var_r27; +// s16 temp_r0; + +// var_r27 = model; +// var_r31 = particle; +// if (var_r31->unk_00 == 0) { +// var_r31->unk_00 = 1; +// for (var_r30 = &var_r31->unk_48, var_r29 = 0; var_r30 < var_r31->unk_30; var_r29++, var_r30 += 0x44) { +// var_r30->unk_2C = 0.0f; +// } +// } +// var_r28 = 0.016666668f * (var_r31->unk_02 * 0xFF); +// for (var_r30 = var_r31->unk_48, var_r29 = 0; var_r30 < var_r31->unk_30; var_r29++, var_r30 += 0x44) { +// var_r30->unk_43 = var_r28; +// } +// temp_r0 = var_r31->unk_02 - 1; +// var_r31->unk_02 = temp_r0; +// if (temp_r0 == 0) { +// var_r27->attr |= 1; +// } +// DCStoreRange(var_r31->unk_48, var_r31->unk_30 * 0x44); +// } + +void fn_1_DF44(omObjData *var_r30) +{ + M433PlayerWork3 *var_r31; + + var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433PlayerWork3), MEMORY_DEFAULT_NUM); + var_r31 = var_r30->data; + memset(var_r31, 0, sizeof(M433PlayerWork3)); + var_r31->unk_00 = 0; + var_r31->unk_04 = -1; + var_r31->unk_08 = 0; + var_r31->unk_18 = var_r31->unk_1C = 0; + var_r31->unk_2C = var_r31->unk_30 = 0; + fn_1_E5C0(var_r31->unk_4C, &var_r31->unk_64); + var_r30->func = fn_1_E11C; +} + +// void fn_1_DFE4(void *arg0) +// { +// void *var_r31; +// void *var_r30; + +// var_r30 = arg0; +// var_r31 = var_r30->unk_5C; +// OSReport("\n"); +// OSReport("uGameEvent %d\n", var_r31->unk_00); +// OSReport("sWinGrp %d\n", var_r31->unk_04); +// OSReport("uServeGrp %d\n", var_r31->unk_08); +// OSReport("uPointGrp %d\n", var_r31->unk_0C); +// OSReport("auServeCel[2] %d,%d\n", var_r31->unk_10, var_r31->unk_14); +// OSReport("auEvents[2] %d,%d\n", var_r31->unk_18, var_r31->unk_1C); +// OSReport("uContactCnt %d\n", var_r31->unk_34); +// OSReport("sGroundGrp %d\n", var_r31->unk_38); +// OSReport("uContactGrp %d\n", var_r31->unk_3C); +// OSReport("sContactCel %d\n", var_r31->unk_40); +// OSReport(lbl_1_data_63E, var_r31->unk_44); +// OSReport("\n"); +// } + +// void fn_1_E11C(omObjData *arg0) +// { +// s32 sp8; +// s32 temp_r4; +// void *var_r31; +// u32 var_r30; +// s32 var_r29; +// s32 var_r28; +// s32 var_r27; +// s16 var_r26; +// s16 var_r25; +// omObjData *var_r24; +// u32 temp_r0; +// s32 temp_r0_2; + +// var_r24 = arg0; +// var_r31 = var_r24->data; +// sp8 = 0; +// var_r28 = 0; +// var_r31->unk_28++; +// var_r31->unk_4C = var_r31->unk_20; +// var_r31->unk_58 = var_r31->unk_24; +// if (fn_1_216C() >= 2) { +// fn_1_ECFC(var_r31 + 0x4C, var_r31 + 0x64); +// } +// temp_r0 = var_r31->unk_00; +// switch (temp_r0) { +// case 0: +// var_r31->unk_34 = 0; +// var_r31->unk_40 = -1; +// if (var_r31->unk_28 == 0xC) { +// fn_1_58D8(1); +// } +// if ((var_r31->unk_28 >= 30.0f) && (fn_1_216C() >= 2)) { +// var_r31->unk_00 = 1; +// var_r31->unk_28 = 0; +// var_r31->unk_1C = 1; +// var_r31->unk_18 = 1; +// } +// break; +// case 1: +// if (var_r31->unk_30 != 0) { +// var_r31->unk_48 = 0; +// var_r31->unk_40 = -1; +// var_r31->unk_34 = 0; +// var_r31->unk_00 = 2; +// var_r31->unk_28 = 0; +// var_r31->unk_1C = 3; +// var_r31->unk_18 = 3; +// if (var_r31->unk_44 != 0) { +// var_r26 = 5; +// } +// else { +// var_r26 = 6; +// } +// fn_1_58D8(var_r26); +// } +// break; +// case 2: +// case 5: +// if (var_r31->unk_30 != 0) { +// if (var_r31->unk_34 != 0) { +// var_r31->unk_48++; +// var_r31->unk_00 = 3; +// *(var_r31 + ((var_r31->unk_3C * 4) + 0x18)) = 4; +// if ((var_r31->unk_48 >= 6) && ((var_r31->unk_48 % 3) == 0)) { +// fn_1_58D8(3); +// } +// } +// var_r31->unk_28 = 0; +// } +// var_r28 = 1; +// break; +// case 3: +// case 4: +// if (var_r31->unk_30 != 0) { +// if (var_r31->unk_3C == var_r31->unk_44) { +// var_r31->unk_00 = 4; +// *(var_r31 + ((var_r31->unk_3C * 4) + 0x18)) = 5; +// } +// else { +// var_r31->unk_40 = -1; +// var_r31->unk_34 = 0; +// var_r31->unk_00 = 5; +// *(var_r31 + ((var_r31->unk_3C * 4) + 0x18)) = 3; +// if (var_r31->unk_44 != 0) { +// var_r25 = 5; +// } +// else { +// var_r25 = 6; +// } +// fn_1_58D8(var_r25); +// } +// var_r31->unk_28 = 0; +// } +// var_r28 = 1; +// break; +// case 6: +// if (var_r31->unk_28 >= 120.0f) { +// var_r31->unk_00 = 0; +// var_r31->unk_28 = 0; +// var_r31->unk_1C = 0; +// var_r31->unk_18 = 0; +// } +// break; +// } +// if ((var_r31->unk_2C != 0) && (var_r28 != 0)) { +// if (var_r31->unk_38 >= 0) { +// var_r30 = 1 - var_r31->unk_38; +// fn_1_58D8(1); +// } +// else { +// var_r30 = 1 - var_r31->unk_3C; +// fn_1_58D8(2); +// } +// var_r31->unk_0C = var_r30; +// temp_r4 = (var_r30 * 4) + 0x20; +// *(var_r31 + temp_r4) = *(var_r31 + temp_r4) + 1; +// if (var_r31->unk_08 != var_r30) { +// var_r31->unk_08 = var_r30; +// *(var_r31 + ((var_r31->unk_08 * 4) + 0x10)) = 1 - *(var_r31 + ((var_r31->unk_08 * 4) + 0x10)); +// } +// if (*(var_r31 + ((var_r30 * 4) + 0x20)) >= 5) { +// var_r31->unk_04 = var_r30; +// var_r31->unk_00 = 7; +// var_r31->unk_1C = 7; +// var_r31->unk_18 = 7; +// var_r27 = 0; +// for (var_r29 = 0; var_r29 < 4; var_r29++) { +// spC[var_r29] = -1; +// if (var_r31->unk_04 == lbl_1_bss_7D0[var_r29]->data->unk_14) { +// temp_r0_2 = var_r27; +// var_r27++; +// spC[temp_r0_2] = lbl_1_bss_7D0[var_r29]->work[0]; +// } +// } +// fn_1_219C(1, spC[0], sp10); +// fn_1_21E4(4); +// } +// else { +// var_r31->unk_00 = 6; +// var_r31->unk_1C = 6; +// var_r31->unk_18 = 6; +// fn_1_FE64(var_r31 + 0x64, var_r31->unk_20, var_r31->unk_24, var_r30); +// HuAudFXPlay(0x16); +// } +// var_r31->unk_28 = 0; +// } +// var_r31->unk_2C = 0; +// var_r31->unk_30 = 0; +// } + +void fn_1_E5C0(M433PlayerWork3SubStruct *var_r30, M433PlayerWork3SubStruct2 *var_r29) +{ + u32 var_r31; + s32 var_r28; + s32 var_r27; + + for (var_r28 = 0; var_r28 < 2; var_r28++, var_r30++) { + for (var_r31 = 0; var_r31 < 5; var_r31++) { + switch (lbl_1_data_674[var_r31]) { + case 0: + var_r30->unk_02[var_r31] = espEntry(lbl_1_data_680[var_r28], 1, 0); + espPriSet(var_r30->unk_02[var_r31], 0x100); + break; + case 1: + var_r30->unk_02[var_r31] = espEntry(0x610020, 1, 0); + espPriSet(var_r30->unk_02[var_r31], 0x101); + espColorSet(var_r30->unk_02[var_r31], 0, 0, 0); + espTPLvlSet(var_r30->unk_02[var_r31], 0.5); + break; + case 2: + var_r30->unk_02[var_r31] = espEntry(0x40000A, 1, 0); + espPriSet(var_r30->unk_02[var_r31], 0xFF); + break; + case 3: + var_r30->unk_02[var_r31] = espEntry(0x610033, 1, 0); + espPriSet(var_r30->unk_02[var_r31], 0xFF); + break; + } + espDispOff(var_r30->unk_02[var_r31]); + espDrawNoSet(var_r30->unk_02[var_r31], 0); + espAttrSet(var_r30->unk_02[var_r31], HUSPR_ATTR_NOANIM); + espAttrSet(var_r30->unk_02[var_r31], HUSPR_ATTR_LINEAR); + espPosSet(var_r30->unk_02[var_r31], lbl_1_data_6B0[var_r28].x + lbl_1_data_688[var_r31].x, + lbl_1_data_6B0[var_r28].y + lbl_1_data_688[var_r31].y); + } + } + HuDataDirClose(0x610000); + for (var_r28 = 0; var_r28 < 3; var_r28++) { + for (var_r31 = 0; var_r31 < 0x14; var_r31++) { + for (var_r27 = 0; var_r27 < 2; var_r27++) { + // if (*(&lbl_1_data_6C0[var_r31 % 10] + (var_r27 * 4)) != 0) { + // *(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0)) + // = espEntry(*(&lbl_1_data_6C0[var_r31 % 10] + (var_r27 * 4)), 2, 0); + // espAttrSet(*(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0)), HUSPR_ATTR_LINEAR); + // espDispOff(*(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0))); + // } + // else { + // *(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0)) = -1; + // } + } + } + } + for (var_r27 = 0; var_r27 < 2; var_r27++) { + // if ((lbl_1_data_6C0 + (var_r27 * 4))->unk_A0 != 0) { + // var_r29->unk_490[var_r27] = espEntry((lbl_1_data_6C0 + (var_r27 * 4))->unk_A0, 2, 0); + // espAttrSet(var_r29->unk_490[var_r27], HUSPR_ATTR_LINEAR); + // espDispOff(var_r29->unk_490[var_r27]); + // } + // else { + // var_r29->unk_490[var_r27] = -1; + // } + } + for (var_r28 = 0; var_r28 < 2; var_r28++) { + // *(var_r29 + ((var_r28 * 0x2C) + 0x20)) = -1; + // *(var_r29 + ((var_r28 * 0x2C) + 0x22)) = -1; + } + var_r29->unk_78 = -1; + var_r29->unk_7A = -1; + var_r29->unk_A4 = -1; + var_r29->unk_A6 = -1; + HuDataDirClose(lbl_1_data_6C0->unk_00); +} + +// void fn_1_EA8C(void *arg0) +// { +// double var_f31; +// double var_f30; +// void *var_r31; +// s32 var_r30; + +// var_r31 = arg0; +// for (var_r30 = 0; var_r30 < 2; var_r30++) { +// if (*(var_r31 + (var_r30 * 2)) >= 0) { +// espDispOn(*(var_r31 + (var_r30 * 2))); +// var_f31 = (*(var_r31 + ((var_r30 * 4) + 4)) * var_r31->unk_1C) * cosd(var_r31->unk_28); +// var_f31 = var_f31; +// var_f30 = (*(var_r31 + ((var_r30 * 4) + 4)) * var_r31->unk_1C) * sind(var_r31->unk_28); +// var_f30 = var_f30; +// espPosSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_0C + var_f31, var_r31->unk_10 + var_f30); +// espZRotSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_28); +// espScaleSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_1C, var_r31->unk_20); +// espTPLvlSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_24); +// } +// } +// } + +// void fn_1_EBE4(s32 arg0, void *arg1, s32 arg2) +// { +// s32 var_r31; +// u32 var_r30; + +// var_r31 = arg2 % 10; +// var_r30 = arg2 / 10; +// if (var_r30 == 0) { +// arg1->unk_00 = *(arg0 + (var_r31 * 0x10)); +// arg1->unk_02 = -1; +// arg1->unk_04 = 0.0f; +// } +// else { +// arg1->unk_00 = *(arg0 + ((var_r30 + 0xA) * 0x10)); +// arg1->unk_02 = *(arg0 + (var_r31 * 0x10)); +// arg1->unk_04 = -23.039999f; +// arg1->unk_08 = 23.039999f; +// } +// arg1->unk_10 = 0.0f; +// arg1->unk_0C = 0.0f; +// arg1->unk_18 = 0.0f; +// arg1->unk_14 = 0.0f; +// arg1->unk_20 = 1.5f; +// arg1->unk_1C = 1.5f; +// arg1->unk_24 = 1.0f; +// arg1->unk_28 = 0.0f; +// } + +// void fn_1_ECFC(void *arg0, void *arg1) +// { +// s32 sp1C; +// u32 sp18; +// s32 sp14; +// u32 sp10; +// s32 spC; +// s32 sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// double var_f27; +// double var_f26; +// double var_f25; +// double var_f24; +// double var_f23; +// double var_f22; +// double var_f21; +// double var_f20; +// void *var_r31; +// void *var_r30; +// void *var_r29; +// s32 var_r28; +// s32 var_r27; +// s32 var_r26; +// s32 var_r25; +// s32 var_r24; +// void *var_r23; +// s32 var_r22; +// u32 var_r21; +// s32 var_r20; +// s32 var_r19; +// u32 var_r18; +// s32 var_r17; +// s32 temp_r0; + +// var_r23 = arg0; +// var_r31 = arg1; +// var_r28 = 0; +// loop_5: +// if (var_r28 < 2) { +// for (var_r22 = 0; var_r22 < 5; var_r22++) { +// espDispOn(*(var_r23 + ((var_r22 * 2) + 2))); +// } +// espBankSet(var_r23->unk_08, var_r23->unk_00 / 10); +// espBankSet(var_r23->unk_0A, var_r23->unk_00 % 10); +// var_r28++; +// var_r23 += 0xC; +// goto loop_5; +// } +// var_f28 = 2.88f; +// if (var_r31->unk_1C == 0) { +// var_r30 = var_r31 + 0x20; +// } +// else { +// var_r30 = var_r31 + 0x4C; +// var_f28 = 2.88f * -1.0f; +// } +// temp_r0 = var_r31->unk_00; +// switch (temp_r0) { +// case 1: +// var_r19 = var_r31->unk_0C; +// var_r20 = var_r31->unk_0C % 10; +// var_r21 = var_r31->unk_0C / 10; +// if (var_r21 == 0) { +// var_r31->unk_20 = (var_r31 + (var_r20 * 0x10))->unk_D0; +// var_r31->unk_22 = -1; +// var_r31->unk_24 = 0.0f; +// } +// else { +// var_r31->unk_20 = (var_r31 + ((var_r21 + 0xA) * 0x10))->unk_D0; +// var_r31->unk_22 = (var_r31 + (var_r20 * 0x10))->unk_D0; +// var_r31->unk_24 = -23.039999f; +// var_r31->unk_28 = 23.039999f; +// } +// var_r31->unk_30 = 0.0f; +// var_r31->unk_2C = 0.0f; +// var_r31->unk_38 = 0.0f; +// var_r31->unk_34 = 0.0f; +// var_r31->unk_40 = 1.5f; +// var_r31->unk_3C = 1.5f; +// var_r31->unk_44 = 1.0f; +// var_r31->unk_48 = 0.0f; +// sp1C = var_r31->unk_10; +// var_r17 = sp1C % 10; +// var_r18 = sp1C / 10; +// if (var_r18 == 0) { +// var_r31->unk_4C = (var_r31 + (var_r17 * 0x10))->unk_210; +// var_r31->unk_4E = -1; +// var_r31->unk_50 = 0.0f; +// } +// else { +// var_r31->unk_4C = (var_r31 + ((var_r18 + 0xA) * 0x10))->unk_210; +// var_r31->unk_4E = (var_r31 + (var_r17 * 0x10))->unk_210; +// var_r31->unk_50 = -23.039999f; +// var_r31->unk_54 = 23.039999f; +// } +// var_r31->unk_5C = 0.0f; +// var_r31->unk_58 = 0.0f; +// var_r31->unk_64 = 0.0f; +// var_r31->unk_60 = 0.0f; +// var_r31->unk_6C = 1.5f; +// var_r31->unk_68 = 1.5f; +// var_r31->unk_70 = 1.0f; +// var_r31->unk_74 = 0.0f; +// sp14 = 0; +// sp18 = 0; +// if (sp18 == 0) { +// var_r31->unk_78 = (var_r31 + (sp14 * 0x10))->unk_490; +// var_r31->unk_7A = -1; +// var_r31->unk_7C = 0.0f; +// } +// else { +// var_r31->unk_78 = (var_r31 + ((sp18 + 0xA) * 0x10))->unk_490; +// var_r31->unk_7A = (var_r31 + (sp14 * 0x10))->unk_490; +// var_r31->unk_7C = -23.039999f; +// var_r31->unk_80 = 23.039999f; +// } +// var_r31->unk_88 = 0.0f; +// var_r31->unk_84 = 0.0f; +// var_r31->unk_90 = 0.0f; +// var_r31->unk_8C = 0.0f; +// var_r31->unk_98 = 1.5f; +// var_r31->unk_94 = 1.5f; +// var_r31->unk_9C = 1.0f; +// var_r31->unk_A0 = 0.0f; +// sp8 = *(var_r31 + ((var_r31->unk_1C * 4) + 0x14)); +// spC = sp8 % 10; +// sp10 = sp8 / 10; +// if (sp10 == 0) { +// var_r31->unk_A4 = (var_r31 + (spC * 0x10))->unk_350; +// var_r31->unk_A6 = -1; +// var_r31->unk_A8 = 0.0f; +// } +// else { +// var_r31->unk_A4 = (var_r31 + ((sp10 + 0xA) * 0x10))->unk_350; +// var_r31->unk_A6 = (var_r31 + (spC * 0x10))->unk_350; +// var_r31->unk_A8 = -23.039999f; +// var_r31->unk_AC = 23.039999f; +// } +// var_r31->unk_B4 = 0.0f; +// var_r31->unk_B0 = 0.0f; +// var_r31->unk_BC = 0.0f; +// var_r31->unk_B8 = 0.0f; +// var_r31->unk_C4 = 1.5f; +// var_r31->unk_C0 = 1.5f; +// var_r31->unk_C8 = 1.0f; +// var_r31->unk_CC = 0.0f; +// var_f30 = -48.0f; +// var_r31->unk_2C = 172.8f; +// var_r31->unk_30 = 360.0f - -48.0f; +// var_r31->unk_58 = 403.19998f; +// var_r31->unk_5C = 360.0f - -48.0f; +// var_r31->unk_84 = 288.0f; +// var_r31->unk_88 = 360.0f - -48.0f; +// var_r31->unk_9C = 0.0f; +// var_r31->unk_70 = 0.0f; +// var_r31->unk_44 = 0.0f; +// var_f30 = -48.0f / 19.199999f; +// var_r31->unk_38 = var_f30; +// var_r31->unk_64 = var_f30; +// var_r31->unk_90 = var_f30; +// var_r31->unk_B0 = 806.39996f; +// var_r31->unk_B4 = 144.0f; +// var_r31->unk_C0 = var_r31->unk_C0 + 0.5f; +// var_r31->unk_C4 = var_r31->unk_C4 - 0.5f; +// var_r31->unk_B8 = (403.19998f - var_r31->unk_B0) / 24.0f; +// var_r31->unk_BC = (360.0f - var_r31->unk_B4) / 24.0f; +// if (var_r31->unk_1C == 0) { +// var_r31->unk_B0 = -230.40001f; +// var_r31->unk_B8 = var_r31->unk_B8 * -1.0f; +// } +// var_r31->unk_00++; +// var_r31->unk_04 = 0; +// break; +// case 2: +// var_f31 = var_r31->unk_44; +// var_f31 += 0.055555556f; +// if (var_f31 > 0.95f) { +// var_f31 = 1.0f; +// } +// var_r31->unk_9C = var_f31; +// var_r31->unk_70 = var_f31; +// var_r31->unk_44 = var_f31; +// var_r31->unk_30 = var_r31->unk_30 + var_r31->unk_38; +// var_r31->unk_5C = var_r31->unk_5C + var_r31->unk_64; +// var_r31->unk_88 = var_r31->unk_88 + var_r31->unk_90; +// var_r31->unk_B0 = var_r31->unk_B0 + var_r31->unk_B8; +// var_r31->unk_B4 = var_r31->unk_B4 + var_r31->unk_BC; +// if (var_r31->unk_04 >= 19.199999f) { +// var_r30->unk_14 = var_f28; +// var_r30->unk_18 = -16.0f; +// var_r31->unk_00++; +// var_r31->unk_08 = 0; +// } +// break; +// case 3: +// if (var_r31->unk_04 <= 24.0f) { +// var_r31->unk_B0 = var_r31->unk_B0 + var_r31->unk_B8; +// var_r31->unk_B4 = var_r31->unk_B4 + var_r31->unk_BC; +// } +// if (var_r31->unk_08 < 24.0f) { +// var_r31->unk_08++; +// var_f31 = 33.75f * var_r31->unk_08; +// var_f29 = 0.041666668f * var_r31->unk_08; +// var_f29 = 0.5f * (1.0f - (var_f29 * var_f29)); +// if (var_r31->unk_08 == 24.0f) { +// var_f29 = 0.0f; +// } +// var_r31->unk_C0 = 1.5 + (var_f29 * cosd(var_f31)); +// var_r31->unk_C4 = 1.5 + (var_f29 * sind((var_f31 - 90.0f))); +// } +// var_r30->unk_1C = var_r31->unk_C4; +// var_r30->unk_20 = var_r31->unk_C0; +// var_r30->unk_0C = var_r30->unk_0C + var_r30->unk_14; +// var_r30->unk_10 = var_r30->unk_10 + var_r30->unk_18; +// var_r30->unk_18 = var_r30->unk_18 + 0.80000013f; +// var_r30->unk_28 = var_r30->unk_28 + 8.333334f; +// var_r30->unk_24 = var_r30->unk_24 - 0.017833335f; +// if (var_r30->unk_24 < 0.0f) { +// var_r30->unk_24 = 0.0f; +// } +// if (fn_1_10EA4() == 0) { +// var_r31->unk_00++; +// var_r31->unk_04 = 0; +// } +// break; +// case 4: +// var_f31 = var_r31->unk_C8; +// var_f31 -= 0.055555556f; +// if (var_f31 < 0.05f) { +// var_f31 = 0.0f; +// var_r31->unk_00++; +// var_r31->unk_04 = 0; +// } +// var_r31->unk_C8 = var_f31; +// var_r31->unk_9C = var_f31; +// var_r31->unk_70 = var_f31; +// var_r31->unk_44 = var_f31; +// break; +// default: +// for (var_r28 = 0; var_r28 < 2; var_r28++) { +// *(var_r31 + ((var_r28 * 0x2C) + 0x20)) = -1; +// *(var_r31 + ((var_r28 * 0x2C) + 0x22)) = -1; +// } +// var_r31->unk_78 = -1; +// var_r31->unk_7A = -1; +// var_r31->unk_A4 = -1; +// var_r31->unk_A6 = -1; +// var_r31->unk_00 = 0; +// break; +// } +// for (var_r28 = 0; var_r28 < 3; var_r28++) { +// var_r29 = (var_r28 * 0x140) + 0xD0; +// var_r29 += var_r31; +// var_r22 = 0; +// loop_60: +// if (var_r22 < 0x14) { +// if (var_r29->unk_00 >= 0) { +// espDispOff(var_r29->unk_00); +// } +// if (var_r29->unk_04 >= 0) { +// espDispOff(var_r29->unk_04); +// } +// var_r22++; +// var_r29 += 0x10; +// goto loop_60; +// } +// } +// var_r29 = var_r31 + 0x490; +// if (var_r29->unk_00 >= 0) { +// espDispOff(var_r29->unk_00); +// } +// if (var_r29->unk_04 >= 0) { +// espDispOff(var_r29->unk_04); +// } +// for (var_r27 = 0; var_r27 < 2; var_r27++) { +// if ((var_r31 + (var_r27 * 2))->unk_20 >= 0) { +// espDispOn((var_r31 + (var_r27 * 2))->unk_20); +// var_f26 = ((var_r31 + (var_r27 * 4))->unk_24 * var_r31->unk_3C) * cosd(var_r31->unk_48); +// var_f26 = var_f26; +// var_f27 = ((var_r31 + (var_r27 * 4))->unk_24 * var_r31->unk_3C) * sind(var_r31->unk_48); +// var_f27 = var_f27; +// espPosSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_2C + var_f26, var_r31->unk_30 + var_f27); +// espZRotSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_48); +// espScaleSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_3C, var_r31->unk_40); +// espTPLvlSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_44); +// } +// } +// for (var_r26 = 0; var_r26 < 2; var_r26++) { +// if ((var_r31 + (var_r26 * 2))->unk_4C >= 0) { +// espDispOn((var_r31 + (var_r26 * 2))->unk_4C); +// var_f24 = ((var_r31 + (var_r26 * 4))->unk_50 * var_r31->unk_68) * cosd(var_r31->unk_74); +// var_f24 = var_f24; +// var_f25 = ((var_r31 + (var_r26 * 4))->unk_50 * var_r31->unk_68) * sind(var_r31->unk_74); +// var_f25 = var_f25; +// espPosSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_58 + var_f24, var_r31->unk_5C + var_f25); +// espZRotSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_74); +// espScaleSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_68, var_r31->unk_6C); +// espTPLvlSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_70); +// } +// } +// for (var_r25 = 0; var_r25 < 2; var_r25++) { +// if ((var_r31 + (var_r25 * 2))->unk_78 >= 0) { +// espDispOn((var_r31 + (var_r25 * 2))->unk_78); +// var_f22 = ((var_r31 + (var_r25 * 4))->unk_7C * var_r31->unk_94) * cosd(var_r31->unk_A0); +// var_f22 = var_f22; +// var_f23 = ((var_r31 + (var_r25 * 4))->unk_7C * var_r31->unk_94) * sind(var_r31->unk_A0); +// var_f23 = var_f23; +// espPosSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_84 + var_f22, var_r31->unk_88 + var_f23); +// espZRotSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_A0); +// espScaleSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_94, var_r31->unk_98); +// espTPLvlSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_9C); +// } +// } +// for (var_r24 = 0; var_r24 < 2; var_r24++) { +// if ((var_r31 + (var_r24 * 2))->unk_A4 >= 0) { +// espDispOn((var_r31 + (var_r24 * 2))->unk_A4); +// var_f20 = ((var_r31 + (var_r24 * 4))->unk_A8 * var_r31->unk_C0) * cosd(var_r31->unk_CC); +// var_f20 = var_f20; +// var_f21 = ((var_r31 + (var_r24 * 4))->unk_A8 * var_r31->unk_C0) * sind(var_r31->unk_CC); +// var_f21 = var_f21; +// espPosSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_B0 + var_f20, var_r31->unk_B4 + var_f21); +// espZRotSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_CC); +// espScaleSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_C0, var_r31->unk_C4); +// espTPLvlSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_C8); +// } +// } +// var_r31->unk_04++; +// } + +// void fn_1_FE64(void *arg0, s32 arg1, s32 arg2, u32 arg3) +// { +// arg0->unk_00 = 1; +// arg0->unk_0C = arg0->unk_14; +// arg0->unk_10 = arg0->unk_18; +// arg0->unk_14 = arg1; +// arg0->unk_18 = arg2; +// arg0->unk_1C = arg3; +// } + +// void fn_1_FE8C(Vec *arg0, u32 arg1, u32 arg2, s32 arg3) +// { +// void *var_r31; +// void *var_r30; +// u32 var_r29; +// s32 var_r28; +// u32 var_r27; +// s32 var_r26; +// Vec *var_r25; + +// var_r25 = arg0; +// var_r29 = arg1; +// var_r27 = arg2; +// var_r26 = arg3; +// var_r31 = lbl_1_bss_7CC->data; +// var_r31->unk_18 = 0; +// if (var_r29 < 9) { +// var_r31->unk_18 = lbl_1_data_770[var_r29]; +// if (lbl_1_data_794[var_r29].unk_00 != 0) { +// var_r30 = lbl_1_bss_7C8->data; +// var_r30->unk_30 = 1; +// var_r30->unk_3C = var_r27; +// var_r30->unk_40 = var_r26; +// var_r30->unk_44 = var_r27; +// if (lbl_1_data_794[var_r29].unk_04 != 0) { +// var_r30->unk_44 = 1 - var_r30->unk_44; +// } +// if (lbl_1_data_794[var_r29].unk_08 != 0) { +// var_r30->unk_34++; +// } +// } +// } +// if (var_r29 == 5) { +// var_r28 = 6; +// if (var_r31->unk_6C == 5) { +// var_r28 = 7; +// } +// Hu3DModelPosSetV(lbl_1_bss_7CC->model[var_r28], var_r31 + 0x30); +// Hu3DModelAttrReset(lbl_1_bss_7CC->model[var_r28], HU3D_ATTR_DISPOFF); +// Hu3DMotionTimeSet(lbl_1_bss_7CC->model[var_r28], 0.0f); +// Hu3DMotionShapeTimeSet(lbl_1_bss_7CC->model[var_r28], 0.0f); +// } +// else if (var_r29 != 2) { +// var_r31->unk_A8 = 1.0f; +// } +// var_r31->unk_0C = 1; +// var_r31->unk_10 = 0; +// var_r31->unk_04 = 0; +// var_r31->unk_08 = 0; +// var_r31->unk_6C = var_r29; +// var_r31->unk_70 = var_r27; +// var_r31->unk_74 = var_r26; +// if (lbl_1_data_800[var_r29] != 0) { +// var_r31->unk_78 = lbl_1_data_800[var_r29]; +// } +// else if (var_r31->unk_78 != 0) { +// var_r31->unk_78--; +// } +// var_r31->unk_3C = var_r25->x; +// var_r31->unk_40 = var_r25->y; +// var_r31->unk_44 = var_r25->z; +// if (var_r29 == 0) { +// var_r31->unk_30 = var_r31->unk_3C; +// var_r31->unk_34 = var_r31->unk_40; +// var_r31->unk_38 = var_r31->unk_44; +// } +// var_r31->unk_F8 = 1.0f; +// var_r31->unk_F8 = 0.0f; +// } + +// void fn_1_10130(Vec *arg0, u32 arg1) +// { +// float var_f31; + +// var_f31 = 44.0f; +// if ((arg0->z - 44.0f) < -500.0f) { +// arg0->z = -500.0f + 44.0f; +// } +// else if ((arg0->z + 44.0f) > 500.0f) { +// arg0->z = 500.0f - 44.0f; +// } +// if (arg1 == 0) { +// arg0->x *= -1.0f; +// } +// if ((arg0->x - 44.0f) < 20.0f) { +// arg0->x = 20.0f + 44.0f; +// } +// else if ((arg0->x + 44.0f) > 800.0f) { +// arg0->x = 800.0f - 44.0f; +// } +// if (arg1 == 0) { +// arg0->x *= -1.0f; +// } +// } + +// void fn_1_10260(u32 arg0, s32 arg1, Vec *arg2, float arg8, float arg9) +// { +// s32 sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// void *var_r31; +// u32 var_r30; +// Vec *var_r29; + +// var_f29 = arg8; +// var_f30 = arg9; +// var_r30 = arg0; +// sp8 = arg1; +// var_r29 = arg2; +// var_r31 = lbl_1_bss_7CC->data; +// if (var_f30 > 1.0f) { +// var_f30 = 1.0f; +// } +// if (var_r31->unk_94 == 0) { +// var_r31->unk_AC = 465.0f; +// var_r31->unk_B0 = 11.0f; +// var_r31->unk_B4 = 0.0f; +// if (var_r30 != 0) { +// var_r31->unk_AC = var_r31->unk_AC * -1.0f; +// } +// var_r31->unk_94 = 1; +// var_r31->unk_98 = 0; +// var_r31->unk_A4 = 0.0f; +// var_r31->unk_8C = 0; +// var_r31->unk_A8 = 1.0f; +// } +// if (sp8 != 0) { +// var_r31->unk_94 = 2; +// var_f30 *= 1.5f; +// } +// var_r31->unk_90 = 1; +// var_r31->unk_AC = var_r31->unk_AC + (0.01666666753590107 * (800.0 * (var_f30 * sind(var_f29)))); +// var_r31->unk_B4 = var_r31->unk_B4 + (0.01666666753590107 * (800.0 * (var_f30 * cosd(var_f29)))); +// if (var_r30 != 0) { +// var_r31->unk_AC = var_r31->unk_AC * -1.0f; +// } +// if (var_r31->unk_AC < 230.0f) { +// var_r31->unk_AC = 230.0f; +// } +// if (var_r30 != 0) { +// var_r31->unk_AC = var_r31->unk_AC * -1.0f; +// } +// var_f31 = 44.0f; +// if ((var_r31->unk_B4 - 44.0f) < -500.0f) { +// var_r31->unk_B4 = -500.0f + 44.0f; +// } +// else if ((var_r31->unk_B4 + 44.0f) > 500.0f) { +// var_r31->unk_B4 = 500.0f - 44.0f; +// } +// if ((1 - var_r30) == 0) { +// var_r31->unk_AC = var_r31->unk_AC * -1.0f; +// } +// if ((var_r31->unk_AC - 44.0f) < 20.0f) { +// var_r31->unk_AC = 20.0f + 44.0f; +// } +// else if ((var_r31->unk_AC + 44.0f) > 800.0f) { +// var_r31->unk_AC = 800.0f - 44.0f; +// } +// if ((1 - var_r30) == 0) { +// var_r31->unk_AC = var_r31->unk_AC * -1.0f; +// } +// var_r29->x = var_r31->unk_AC; +// var_r29->y = var_r31->unk_B0; +// var_r29->z = var_r31->unk_B4; +// } + +// s32 fn_1_10614(Vec *arg0) +// { +// float var_f31; +// double var_f30; +// double var_f29; +// void *var_r31; + +// var_r31 = lbl_1_bss_7CC->data; +// arg0->z = 0.0f; +// arg0->y = 0.0f; +// arg0->x = 0.0f; +// if (var_r31->unk_94 == 0) { +// return 0; +// } +// arg0->x = var_r31->unk_AC; +// arg0->y = var_r31->unk_B0; +// arg0->z = var_r31->unk_B4; +// var_f31 = arg0->x; +// var_f30 = fabs(var_f31); +// var_f29 = var_f30; +// arg0->x = var_f29; +// arg0->x -= 465.0f; +// arg0->x *= 0.004255319f; +// arg0->z *= 0.0028571428f; +// return 1; +// } + +// void fn_1_1070C(void) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7CC->data; +// var_r31->unk_A8 = 1.0f; +// } + +// u32 fn_1_10740(Vec *arg0) +// { +// void *var_r31; +// u32 var_r30; + +// var_r31 = lbl_1_bss_7CC->data; +// arg0->x = var_r31->unk_3C; +// arg0->y = var_r31->unk_40; +// arg0->z = var_r31->unk_44; +// if (var_r31->unk_3C >= 0.0f) { +// var_r30 = 1; +// } +// else { +// var_r30 = 0; +// } +// return var_r30; +// } + +// u32 fn_1_107B0(Vec *arg0) +// { +// void *var_r31; +// u32 var_r30; + +// var_r31 = lbl_1_bss_7CC->data; +// if (var_r31->unk_94 != 0) { +// arg0->x = var_r31->unk_AC; +// arg0->y = var_r31->unk_B0; +// arg0->z = var_r31->unk_B4; +// } +// else { +// arg0->x = var_r31->unk_3C; +// arg0->y = var_r31->unk_40; +// arg0->z = var_r31->unk_44; +// } +// if (arg0->x >= 0.0f) { +// var_r30 = 1; +// } +// else { +// var_r30 = 0; +// } +// return var_r30; +// } + +// float fn_1_10848(void) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7CC->data; +// return var_r31->unk_F8 - var_r31->unk_FC; +// } + +// float fn_1_10878(void) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7CC->data; +// if (var_r31->unk_94 != 0) { +// return 1.5f; +// } +// return var_r31->unk_F8 - var_r31->unk_FC; +// } + +// u32 fn_1_108C4(void) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7CC->data; +// if (var_r31->unk_94 != 0) { +// return var_r31->unk_98; +// } +// return 0x2710; +// } + +// u32 fn_1_10900(void) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7CC->data; +// return var_r31->unk_8C; +// } + +// float fn_1_10928(float arg8) +// { +// float sp8; +// double var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// float var_f27; +// float var_f26; +// void *var_r31; +// void *var_r30; + +// var_r30 = lbl_1_bss_7CC->data; +// var_r31 = var_r30 + 0xF8; +// var_f28 = 1.0f / var_r31->unk_24; +// var_f30 = -var_r31->unk_20 * var_f28; +// var_f26 = var_r31->unk_30 + ((var_f30 * (0.5f * var_r31->unk_24 * var_f30)) + (var_r31->unk_20 * var_f30)); +// if (arg8 > var_f26) { +// return -1.0f; +// } +// var_f29 = (var_r31->unk_20 * var_r31->unk_20) - (2.0f * var_r31->unk_24 * (var_r31->unk_30 - arg8)); +// if (var_f29 > 0.0f) { +// var_f31 = __frsqrte(var_f29); +// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); +// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); +// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); +// sp8 = var_f29 * var_f31; +// var_f27 = sp8; +// } +// else { +// var_f27 = var_f29; +// } +// var_f30 = var_f28 * (-var_r31->unk_20 - var_f27); +// var_f30 -= var_r31->unk_04; +// return var_f30; +// } + +// float fn_1_10B20(float arg8, Vec *arg0) +// { +// Vec sp20; +// Vec sp14; +// float sp10; +// float spC; +// float sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// float var_f27; +// void *var_r31; +// Vec *var_r30; +// void *var_r29; + +// var_f27 = arg8; +// var_r30 = arg0; +// var_r29 = lbl_1_bss_7CC->data; +// var_r31 = var_r29 + 0xF8; +// var_f30 = var_r31->unk_04; +// var_f31 = var_f30 + var_f27; +// if (var_f31 < 0.0f) { +// var_f31 = 0.0f; +// } +// if (var_f31 > var_r31->unk_00) { +// var_f31 = var_r31->unk_00; +// } +// var_r31->unk_04 = var_f31; +// if (var_r31->unk_10 > 0.0f) { +// PSVECSubtract(var_r31 + 0x38, var_r31 + 0x2C, &sp14); +// sp14.y = 0.0f; +// PSVECNormalize(&sp14, &sp14); +// } +// else { +// sp14.z = 0.0f; +// sp14.y = 0.0f; +// sp14 = 0.0f; +// } +// sp8 = var_r30->x; +// spC = var_r30->y; +// sp10 = var_r30->z; +// var_f29 = (var_f31 * (0.5f * var_r31->unk_18 * var_f31)) + (var_r31->unk_14 * var_f31); +// var_f28 = (var_f31 * (0.5f * var_r31->unk_24 * var_f31)) + (var_r31->unk_20 * var_f31); +// var_r30->x = var_r31->unk_2C + (sp14 * var_f29); +// var_r30->y = var_r31->unk_30 + var_f28; +// var_r30->z = var_r31->unk_34 + (sp14.z * var_f29); +// PSVECSubtract(var_r30, &sp8, &sp20); +// var_r31->unk_04 = var_f30; +// return var_f30 + var_f27; +// } + +// s32 fn_1_10D24(Vec *arg0) +// { +// Vec sp18; +// s32 sp14; +// s32 sp10; +// float spC; +// Vec *sp8; +// float var_f31; +// float var_f30; +// double var_f29; +// double var_f28; +// void *var_r31; +// void *var_r30; + +// sp8 = arg0; +// var_r31 = lbl_1_bss_7CC->data; +// var_r30 = lbl_1_bss_7CC->data; +// if (var_r30->unk_94 != 0) { +// spC = var_r30->unk_AC; +// sp10 = var_r30->unk_B0; +// sp14 = var_r30->unk_B4; +// } +// else { +// spC = var_r30->unk_3C; +// sp10 = var_r30->unk_40; +// sp14 = var_r30->unk_44; +// } +// PSVECSubtract(&spC, var_r31 + 0x30, &sp18); +// if ((spC * var_r31->unk_30) >= 0.0f) { +// return 0; +// } +// if ((var_r31->unk_30 == 0.0f) || (sp18 == 0.0f)) { +// return 0; +// } +// var_f30 = var_r31->unk_30 / sp18; +// var_f29 = fabs(var_f30); +// var_f28 = var_f29; +// var_f31 = var_f28; +// PSVECScale(&sp18, &sp18, var_f31); +// PSVECAdd(var_r31 + 0x30, &sp18, sp8); +// return 1; +// } + +// u32 fn_1_10EA4(void) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return *var_r31; +// } + +// u32 fn_1_10ECC(u32 arg0) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return *(var_r31 + (((arg0 & 1) * 4) + 0x18)); +// } + +// s32 fn_1_10F00(u32 arg0) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return (arg0 & 1) == var_r31->unk_08; +// } + +// u32 fn_1_10F38(u32 arg0) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return *(var_r31 + (((arg0 & 1) * 4) + 0x10)); +// } + +// s32 fn_1_10F6C(u32 arg0) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return (arg0 & 1) == var_r31->unk_0C; +// } + +// s32 fn_1_10FA4(s32 arg0) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return (arg0 & 1) == var_r31->unk_04; +// } + +// u32 fn_1_10FDC(void) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return var_r31->unk_34; +// } + +// s32 fn_1_11004(u32 arg0, s32 arg1) +// { +// void *var_r31; +// s32 var_r30; + +// var_r31 = lbl_1_bss_7C8->data; +// var_r30 = 0; +// if ((var_r31->unk_3C == (arg0 & 1)) && (var_r31->unk_40 == (arg1 & 1))) { +// var_r30 = 1; +// } +// return var_r30 == 0; +// } + +// s32 fn_1_11060(u32 arg0) +// { +// void *var_r31; + +// var_r31 = lbl_1_bss_7C8->data; +// return (arg0 & 1) == var_r31->unk_3C; +// } + +// float fn_1_11098(Vec *arg0, Vec *arg1, Vec *arg2) +// { +// Vec sp10; +// Vec *spC; +// Vec *sp8; +// float var_f31; +// float var_f30; +// Vec *var_r31; + +// sp8 = arg0; +// spC = arg1; +// var_r31 = arg2; +// PSVECSubtract(spC, sp8, &sp10); +// var_f31 = PSVECDotProduct(&sp10, var_r31); +// var_f30 = -PSVECSquareMag(var_r31); +// if (var_f30 != 0.0f) { +// var_f31 /= var_f30; +// } +// return var_f31; +// } + +// float fn_1_11130(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) +// { +// float sp3C; +// float sp38; +// float sp34; +// Vec sp28; +// Vec sp1C; +// Vec sp10; +// Vec *spC; +// Vec *sp8; +// float var_f31; +// float var_f30; +// float var_f29; +// float var_f28; +// Vec *var_r31; +// Vec *var_r30; + +// var_r31 = arg0; +// sp8 = arg1; +// var_r30 = arg2; +// spC = arg3; +// PSVECSubtract(sp8, var_r31, &sp28); +// PSVECSubtract(spC, var_r30, &sp1C); +// PSVECSubtract(&sp28, &sp1C, &sp28); +// if (PSVECMag(&sp28) <= 0.0f) { +// sp34 = var_r31->x; +// sp38 = var_r31->y; +// sp3C = var_r31->z; +// } +// else { +// PSVECSubtract(var_r31, var_r30, &sp10); +// var_f30 = PSVECDotProduct(&sp10, &sp28); +// var_f29 = -PSVECSquareMag(&sp28); +// if (var_f29 != 0.0f) { +// var_f30 /= var_f29; +// } +// var_f28 = var_f30; +// var_f31 = var_f28; +// if (var_f31 < 0.0f) { +// var_f31 = 0.0f; +// } +// else if (var_f31 > 1.0f) { +// var_f31 = 1.0f; +// } +// PSVECScale(&sp28, &sp1C, var_f31); +// PSVECAdd(var_r31, &sp1C, &sp34); +// } +// PSVECSubtract(var_r30, &sp34, &sp28); +// return (bitwise s32)PSVECMag(&sp28); +// } diff --git a/src/REL/m434Dll/player.c b/src/REL/m434Dll/player.c index c2dd1f93..e08b307e 100644 --- a/src/REL/m434Dll/player.c +++ b/src/REL/m434Dll/player.c @@ -1,6 +1,7 @@ #include "game/audio.h" #include "game/chrman.h" #include "game/hsfman.h" +#include "game/hsfdraw.h" #include "game/hsfmotion.h" #include "game/object.h" #include "game/objsub.h" From ac43740d3dfb471b95b4d6a30259c3da29fd2a32 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 14 Jan 2025 15:57:30 -0800 Subject: [PATCH 123/178] Matched msmse (US) (#531) --- configure.py | 2 +- include/game/msm.h | 4 +- include/msm/msmse.h | 2 +- src/msm/msmse.c | 171 +++++++++++++++++++++++++++++++++++++++----- 4 files changed, 157 insertions(+), 22 deletions(-) diff --git a/configure.py b/configure.py index e6026c86..9115554a 100644 --- a/configure.py +++ b/configure.py @@ -842,7 +842,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmmem.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmfio.c"), Object(NonMatching, "msm/msmmus.c"), - Object(NonMatching, "msm/msmse.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmse.c"), Object(NonMatching, "msm/msmstream.c"), ], }, diff --git a/include/game/msm.h b/include/game/msm.h index 030dd77c..6a11b94a 100644 --- a/include/game/msm.h +++ b/include/game/msm.h @@ -12,6 +12,7 @@ #define MSM_SEPARAM_AUXVOLA (1 << 4) #define MSM_SEPARAM_AUXVOLB (1 << 5) #define MSM_SEPARAM_POS (1 << 6) +#define MSM_SEPARAM_PAD (1 << 7) #define MSM_LISTENER_NONE 0 #define MSM_LISTENER_STARTDIS (1 << 0) @@ -50,6 +51,7 @@ #define MSM_ERR_64 -100 #define MSM_ERR_65 -101 #define MSM_ERR_GRP_NOTLOADED -103 +#define MSM_ERR_6E -110 #define MSM_ERR_6F -111 #define MSM_ERR_INVALIDID -120 #define MSM_ERR_INVALIDFILE -121 @@ -138,7 +140,7 @@ typedef struct msmSe_s { u8 span; u8 reverb; u8 chorus; - u8 doppler; + s8 doppler; s8 comp; u8 pad[3]; } MSMSE; diff --git a/include/msm/msmse.h b/include/msm/msmse.h index e017f67e..383a3ebb 100644 --- a/include/msm/msmse.h +++ b/include/msm/msmse.h @@ -19,7 +19,7 @@ s32 msmSeSetParam(int seNo, MSM_SEPARAM* param); void msmSePauseAll(BOOL pause, s32 speed); void msmSeStopAll(BOOL checkGrp, s32 speed); s32 msmSeStop(int seNo, s32 speed); -int msmSePlay(int seId, MSM_SEPARAM *param); +int msmSePlay(int seId, MSM_SEPARAM* param); s32 msmSeInit(sysData* arg0, DVDFileInfo* arg1); #endif diff --git a/src/msm/msmse.c b/src/msm/msmse.c index 6582a572..33c906ab 100755 --- a/src/msm/msmse.c +++ b/src/msm/msmse.c @@ -326,15 +326,14 @@ void msmSeSetMasterVolume(s32 arg0) { s32 msmSeSetParam(int seNo, MSM_SEPARAM* param) { msmSeStruct00* var_r31; - s32 temp_r3; - s32 var_r0; + int temp_r3; s32 var_r4; var_r31 = msmSeGetStatus_inline(seNo); if (var_r31 == NULL) { return MSM_ERR_6F; } - if (param->flag & 1) { + if (param->flag & MSM_SEPARAM_VOL) { var_r31->unk0B = 1; var_r31->unk0C = param->vol; if (!(var_r31->unk13 & 1) || var_r31->unkB4 != 1) { @@ -343,19 +342,18 @@ s32 msmSeSetParam(int seNo, MSM_SEPARAM* param) { var_r31->unk0B = 0; } if (!(var_r31->unk13 & 1)) { - if (param->flag & 2) { + if (param->flag & MSM_SEPARAM_PAN) { var_r31->unk0D = param->pan; - temp_r3 = var_r31->unk0D + var_r31->unk31 - 0x40; // TODO: inline? - var_r0 = temp_r3; + temp_r3 = var_r31->unk0D + var_r31->unk31 - 0x40; if (temp_r3 < 0) { - var_r0 = 0; + temp_r3 = 0; } - if (var_r0 > 0x7F) { - var_r0 = 0x7F; + if (temp_r3 > 0x7F) { + temp_r3 = 0x7F; } - sndFXPanning(var_r31->unk00, var_r0); + sndFXPanning(var_r31->unk00, temp_r3); } - if (param->flag & 4) { + if (param->flag & MSM_SEPARAM_PITCH) { var_r31->unk0E = param->pitch; var_r4 = var_r31->unk0E + var_r31->unk32 + 0x2000; if (var_r4 < 0) { @@ -366,13 +364,13 @@ s32 msmSeSetParam(int seNo, MSM_SEPARAM* param) { } sndFXPitchBend(var_r31->unk00, var_r4); } - if (param->flag & 8) { + if (param->flag & MSM_SEPARAM_SPAN) { var_r31->unk10 = param->span; sndFXSurroundPanning(var_r31->unk00, var_r31->unk10); } } else if (var_r31->unkB4 == 1) { var_r31->unk00 = sndEmitterVoiceID(&var_r31->unk4C); - if (param->flag & 0x40) { + if (param->flag & MSM_SEPARAM_POS) { var_r31->unk0B = 1; var_r31->unkA8.x = param->pos.x - var_r31->unk9C.x; var_r31->unkA8.y = param->pos.y - var_r31->unk9C.y; @@ -384,15 +382,15 @@ s32 msmSeSetParam(int seNo, MSM_SEPARAM* param) { var_r31->unk0B = 0; } } - if (param->flag & 0x10) { + if (param->flag & MSM_SEPARAM_AUXVOLA) { var_r31->unk11 = param->auxAVol; sndFXReverb(var_r31->unk00, var_r31->unk11); } - if (param->flag & 0x20) { + if (param->flag & MSM_SEPARAM_AUXVOLB) { var_r31->unk12 = param->auxBVol; sndFXChorus(var_r31->unk00, var_r31->unk12); } - if (param->flag & 0x80) { + if (param->flag & MSM_SEPARAM_PAD) { sndSendMessage(var_r31->unk00, param->pad); } return 0; @@ -465,7 +463,6 @@ s32 msmSeStop(int seNo, s32 speed) { return MSM_ERR_6F; } var_r31->unk0B = 1; - // TODO: this pattern could be an inline. var_r31->unk34 = speed / 15; if (var_r31->unk34 != 0) { var_r31->unk38 = var_r31->unk34; @@ -482,8 +479,144 @@ s32 msmSeStop(int seNo, s32 speed) { return 0; } -// TODO: https://decomp.me/scratch/uhYSL -// msmSePlay +static inline BOOL msmSeInline00(msmSeStruct02* arg0, msmSeStruct00* arg1, MSM_SEPARAM* param) { + BOOL var_r0 = FALSE; + + if (param != NULL) { + if (param->flag & MSM_SEPARAM_VOL) { + arg1->unk0C = param->vol; + } + if (param->flag & MSM_SEPARAM_PAN) { + arg1->unk0D = param->pan; + } + if (param->flag & MSM_SEPARAM_PITCH) { + arg1->unk0E = param->pitch; + } + if (param->flag & MSM_SEPARAM_SPAN) { + arg1->unk10 = param->span; + } + if (param->flag & MSM_SEPARAM_AUXVOLA) { + arg1->unk11 = param->auxAVol; + } + if (param->flag & MSM_SEPARAM_AUXVOLB) { + arg1->unk12 = param->auxBVol; + } + if ((param->flag & MSM_SEPARAM_POS) && arg0->unkDA != 0) { + var_r0 = TRUE; + } + } + arg1->unk14.paraArray = arg1->unk1C; + return var_r0; +} + +int msmSePlay(int seId, MSM_SEPARAM* param) { + msmSeStruct00* var_r30; + SND_EMITTER* var_r29; + msmSeStruct02* se_ptr = &se; + MSMSE* temp_r9; + int var_r3_2; + s32 var_r4; + s32 var_r6; + s32 var_r6_2; + + if (seId < 0 || seId >= se.unk00) { + return MSM_ERR_INVALIDID; + } + temp_r9 = &se.unk0C[seId]; + if (temp_r9->groupId == 0xFFFF) { + return MSM_ERR_REMOVEDID; + } + for (var_r6 = 0; var_r6 < se.unk04; var_r6++) { + var_r30 = &se.unk10[var_r6]; + if (var_r30->unk0A == 0) { + break; + } + } + if (var_r6 == se.unk04) { + return MSM_ERR_6E; + } + var_r30->unk30 = temp_r9->vol; + var_r30->unk31 = temp_r9->pan; + var_r30->unk32 = temp_r9->pitchBend; + var_r30->unk0C = 0x7F; + var_r30->unk0D = 0x40; + var_r30->unk10 = temp_r9->span; + var_r30->unk0E = 0; + var_r30->unk11 = temp_r9->reverb; + var_r30->unk12 = temp_r9->chorus; + var_r30->unk40 = 0; + var_r30->unk34 = 0; + var_r30->unk48 = 0x7F; + var_r30->unk3C = 0x7F; + var_r30->unkB4 = 0; + if (msmSeInline00(se_ptr, var_r30, param)) { + var_r30->unk9C.x = param->pos.x; + var_r30->unk9C.y = param->pos.y; + var_r30->unk9C.z = param->pos.z; + var_r30->unk1C[0].ctrl = SND_MIDICTRL_REVERB; + var_r30->unk1C[0].paraData.value7 = var_r30->unk11; + var_r30->unk1C[1].ctrl = SND_MIDICTRL_CHORUS; + var_r30->unk1C[1].paraData.value7 = var_r30->unk12; + var_r30->unk14.numPara = 2; + var_r30->unkA8.x = var_r30->unkA8.y = var_r30->unkA8.z = 0.0f; + if (temp_r9->doppler == 1) { + var_r29 = &var_r30->unk4C; + var_r6_2 = 9; + } else { + var_r29 = NULL; + var_r6_2 = 8; + } + var_r30->unkB4 = temp_r9->doppler; + var_r30->unk00 = sndAddEmitterParaEx(var_r29, &var_r30->unk9C, &var_r30->unkA8, se_ptr->unkD4, temp_r9->comp / 127.0f, var_r6_2, temp_r9->fxId, se_ptr->unkD8++, var_r30->unk0C * var_r30->unk30 / 127, 0, NULL, &var_r30->unk14); + if (var_r29 != NULL) { + if (!sndCheckEmitter(var_r29)) { + return MSM_ERR_PLAYFAIL; + } + } else { + if (var_r30->unk00 == -1) { + return MSM_ERR_PLAYFAIL; + } + } + var_r30->unk13 |= 1; + } else { + var_r30->unk1C[0].ctrl = SND_MIDICTRL_VOLUME; + var_r30->unk1C[0].paraData.value14 = (var_r30->unk0C * var_r30->unk30 / 127) * 0x81; + var_r4 = var_r30->unk0D + var_r30->unk31 - 0x40; + if (var_r4 < 0) { + var_r4 = 0; + } + if (var_r4 > 0x7F) { + var_r4 = 0x7F; + } + var_r30->unk1C[1].ctrl = SND_MIDICTRL_PANNING; + var_r30->unk1C[1].paraData.value14 = var_r4 * 0x81; + var_r30->unk1C[2].ctrl = SND_MIDICTRL_REVERB; + var_r30->unk1C[2].paraData.value7 = var_r30->unk11; + var_r30->unk1C[3].ctrl = SND_MIDICTRL_CHORUS; + var_r30->unk1C[3].paraData.value7 = var_r30->unk12; + var_r3_2 = var_r30->unk0E + var_r30->unk32 + 0x2000; + if (var_r3_2 > 0x3FFF) { + var_r3_2 = 0x3FFF; + } else if (var_r3_2 < 0) { + var_r3_2 = 0; + } + var_r30->unk1C[4].ctrl = SND_MIDICTRL_PITCHBEND; + var_r30->unk1C[4].paraData.value14 = var_r3_2; + var_r30->unk14.numPara = 5; + var_r30->unk00 = sndFXStartParaInfo(temp_r9->fxId, 0xFF, 0xFF, 0, &var_r30->unk14); + if (var_r30->unk00 == -1) { + return MSM_ERR_PLAYFAIL; + } + sndFXSurroundPanning(var_r30->unk00, var_r30->unk10); + var_r30->unk13 &= ~1; + } + var_r30->unk0B = 1; + var_r30->unk08 = seId; + var_r30->unk04 = se_ptr->unk08++; + var_r30->unk0A = 2; + var_r30->unk0B = 0; + return var_r30->unk04; +} s32 msmSeInit(sysData* arg0, DVDFileInfo* arg1) { s32 temp_r29; From 897ff7b281fddd45459eefd6d3d38e36b9a5d9bd Mon Sep 17 00:00:00 2001 From: mrshigure Date: Wed, 15 Jan 2025 05:49:34 -0800 Subject: [PATCH 124/178] Fully matched msm (US) (#532) --- configure.py | 4 +- include/game/msm.h | 1 + include/msm/msmmus.h | 2 - include/msm/msmse.h | 2 - include/msm/msmstream.h | 16 +- include/msm/msmsys.h | 21 +- src/msm/msmmem.c | 3 - src/msm/msmmus.c | 144 +++++- src/msm/msmse.c | 55 +- src/msm/msmstream.c | 1057 +++++++++++++++++++++++++++++++++++++++ src/msm/msmsys.c | 2 - 11 files changed, 1252 insertions(+), 55 deletions(-) create mode 100755 src/msm/msmstream.c diff --git a/configure.py b/configure.py index 9115554a..83d74200 100644 --- a/configure.py +++ b/configure.py @@ -841,9 +841,9 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmsys.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmmem.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmfio.c"), - Object(NonMatching, "msm/msmmus.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmmus.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmse.c"), - Object(NonMatching, "msm/msmstream.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "msm/msmstream.c"), ], }, { diff --git a/include/game/msm.h b/include/game/msm.h index 6a11b94a..e7ae2ae2 100644 --- a/include/game/msm.h +++ b/include/game/msm.h @@ -58,6 +58,7 @@ #define MSM_ERR_REMOVEDID -122 #define MSM_ERR_MUSGRP_NOTLOADED -123 #define MSM_ERR_OUTOFMUS -130 +#define MSM_ERR_8C -140 #define MSM_VOL_MAX 127 #define MSM_PAN_LEFT 32 diff --git a/include/msm/msmmus.h b/include/msm/msmmus.h index a6951063..6428b067 100644 --- a/include/msm/msmmus.h +++ b/include/msm/msmmus.h @@ -4,8 +4,6 @@ #include "game/msm.h" #include "msm/msmsys.h" -#include "dolphin.h" - void msmMusFdoutEnd(void); void msmMusPeriodicProc(void); s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl); diff --git a/include/msm/msmse.h b/include/msm/msmse.h index 383a3ebb..feb1e462 100644 --- a/include/msm/msmse.h +++ b/include/msm/msmse.h @@ -4,8 +4,6 @@ #include "game/msm.h" #include "msm/msmsys.h" -#include "dolphin.h" - void msmSePeriodicProc(void); MSMSE* msmSeGetIndexPtr(s32 arg0); void msmSeDelListener(void); diff --git a/include/msm/msmstream.h b/include/msm/msmstream.h index d1818803..fb1bd9cd 100644 --- a/include/msm/msmstream.h +++ b/include/msm/msmstream.h @@ -1,12 +1,22 @@ #ifndef MSMSTREAM_H #define MSMSTREAM_H -#include "dolphin/types.h" +#include "game/msm.h" +s32 msmStreamGetStatus(int streamNo); +void msmStreamSetMasterVolume(s32 arg0); +void msmStreamStopAll(s32 speed); +s32 msmStreamStop(int streamNo, s32 speed); +int msmStreamPlay(int streamId, MSM_STREAMPARAM* streamParam); void msmStreamPeriodicProc(void); -void msmStreamSetOutputMode(s32); +void msmStreamSetOutputMode(s32 arg0); void msmStreamAmemFree(void); s32 msmStreamAmemAlloc(void); -s32 msmStreamInit(char *); +s32 msmStreamInit(char* arg0); +void msmStreamPauseOff(s32 arg0); +void msmStreamPauseOn(s32 streamNo, s32 arg1); +s32 msmStreamPackStartStereo(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2); +s32 msmStreamPackStartMono(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2); +void msmStreamSlotOff(s32 streamNo); #endif diff --git a/include/msm/msmsys.h b/include/msm/msmsys.h index ffd86bae..3ed5e134 100755 --- a/include/msm/msmsys.h +++ b/include/msm/msmsys.h @@ -1,7 +1,7 @@ #ifndef MSMSYS_H #define MSMSYS_H -#include "musyx/musyx.h" +#include "game/msm.h" // TODO remove, only for decomp #include "dolphin.h" @@ -167,4 +167,23 @@ typedef struct _sysData { s32 unk4F8; } sysData; +s32 msmSysSearchGroupStack(s32 arg0, s32 arg1); +s32 msmSysGroupInit(DVDFileInfo *arg0); +void msmSysIrqDisable(void); +void msmSysIrqEnable(void); +BOOL msmSysCheckBaseGroup(s32 arg0); +void *msmSysGetGroupDataPtr(s32 arg0); +BOOL msmSysCheckLoadGroupID(s32 arg0); +void msmSysRegularProc(void); +s32 msmSysGetOutputMode(void); +s32 msmSysSetOutputMode(SND_OUTPUTMODE mode); +s32 msmSysSetAux(s32 arg0, s32 arg1); +s32 msmSysGetSampSize(BOOL baseGrp); +s32 msmSysDelGroupAll(void); +s32 msmSysDelGroupBase(s32 grpNum); +s32 msmSysLoadGroupBase(s32 arg0, void *arg1); +s32 msmSysLoadGroupSet(s32 arg0, void *arg1); +void msmSysCheckInit(void); +s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram); + #endif diff --git a/src/msm/msmmem.c b/src/msm/msmmem.c index e8d52a88..cbe6e2be 100644 --- a/src/msm/msmmem.c +++ b/src/msm/msmmem.c @@ -54,15 +54,12 @@ void msmMemFree(void* arg0) { } void* msmMemAlloc(u32 arg0) { - unkMemStruct* memC; s32 temp_r0; u32 var_r5; u32 var_r7; unkStruct* temp_r5; unkStruct* var_r8; unkStruct* temp_r9; - unkStruct* temp_r6; - unkStruct* temp_r4; var_r7 = arg0 + 0x20; temp_r0 = var_r7 & 0x1F; diff --git a/src/msm/msmmus.c b/src/msm/msmmus.c index 8f87e7a5..3b70662d 100755 --- a/src/msm/msmmus.c +++ b/src/msm/msmmus.c @@ -1,4 +1,5 @@ #include "msm/msmmus.h" +#include "msm/msmmem.h" typedef struct { /* 0x00 */ s16 unk00; @@ -51,6 +52,11 @@ typedef struct { /* 0x01C */ char unk70[0x108]; } msmMusStruct02; // Size 0x178 +typedef struct { + /* 0x00 */ char unk00[0xC]; + /* 0x0C */ s32 unk0C; +} UnkGroupDataPtr; // Size unknown + static msmMusStruct02 mus; static void msmMusPauseSub(msmMusStruct00* arg0, BOOL pause, s32 speed) { @@ -199,13 +205,11 @@ s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl) { } s32 msmMusGetNumPlay(BOOL baseGrp) { - msmMusStruct02* mus_ptr = &mus; - switch (baseGrp) { case FALSE: - return mus_ptr->unk03 + mus_ptr->unk04; + return mus.unk03 + mus.unk04; default: - return mus_ptr->unk03; + return mus.unk03; } } @@ -227,7 +231,7 @@ s32 msmMusSetParam(s32 arg0, MSM_MUSPARAM* arg1) { return MSM_ERR_OUTOFMUS; } temp_r31 = &mus.unk18[arg0]; - if (arg1->flag & 2) { + if (arg1->flag & MSM_MUSPARAM_VOL) { temp_r31->unk2C = arg1->fadeSpeed / 15; if (temp_r31->unk2C != 0) { temp_r31->unk05 = 1; @@ -240,7 +244,7 @@ s32 msmMusSetParam(s32 arg0, MSM_MUSPARAM* arg1) { sndSeqVolume(temp_r31->unk02 * temp_r31->unk03 * temp_r31->unk1C * temp_r31->unk28 / 2048383, 0, temp_r31->unk08, 0); } } - if (arg1->flag & 0x10) { + if (arg1->flag & MSM_MUSPARAM_SPEED) { sndSeqSpeed(temp_r31->unk08, (arg1->speed << 8) / 100); } return 0; @@ -335,8 +339,128 @@ s32 msmMusStop(int musNo, s32 speed) { return 0; } -// TODO: https://decomp.me/scratch/PGpbJ -// msmMusPlay +int msmMusPlay(int musId, MSM_MUSPARAM* musParam) { + s32 var_r30; + int var_r29; + s32 temp_r3_3; + UnkGroupDataPtr* temp_r3_2; + msmMusStruct01* temp_r28; + msmMusStruct00* temp_r27; + DVDFileInfo sp10; -// TODO: https://decomp.me/scratch/24daZ -// msmMusInit + if (musId < 0 || musId >= mus.unk00) { + return MSM_ERR_INVALIDID; + } + temp_r28 = &mus.unk0C[musId]; + if (temp_r28->unk00 == 0xFFFF) { + return MSM_ERR_REMOVEDID; + } + if (msmSysCheckLoadGroupID(temp_r28->unk00) == 0) { + return MSM_ERR_GRP_NOTLOADED; + } + var_r30 = (musParam != NULL) ? musParam->flag : 0; + var_r29 = (var_r30 & MSM_MUSPARAM_CHAN) ? musParam->chan : 0; + if (var_r29 < 0 || var_r29 >= mus.unk02) { + return MSM_ERR_OUTOFMUS; + } + temp_r27 = &mus.unk18[var_r29]; + if (temp_r27->unk04 != 0) { + sndSeqStop(temp_r27->unk08); + } + if (temp_r28->unk0C < 0) { + if (temp_r27->unk00 != musId) { + if (msmFioOpen(mus.unk08, &sp10) != 1) { + return MSM_ERR_OPENFAIL; + } + if (msmFioRead(&sp10, temp_r27->unk0C, temp_r28->unk08, temp_r28->unk04 + mus.unk10) < 0) { + msmFioClose(&sp10); + return MSM_ERR_READFAIL; + } + msmFioClose(&sp10); + temp_r27->unk10 = temp_r27->unk0C; + } + } else { + temp_r3_2 = msmSysGetGroupDataPtr(temp_r28->unk0C); + if (temp_r3_2 == NULL) { + return MSM_ERR_MUSGRP_NOTLOADED; + } + temp_r27->unk10 = (void*) ((u32) temp_r3_2 + temp_r3_2->unk0C + temp_r28->unk04); + } + temp_r27->unk05 = 1; + temp_r27->unk03 = temp_r28->unk0D; + temp_r27->unk2C = 0; + temp_r27->unk20 = 0; + temp_r27->unk14 = 0; + temp_r27->unk28 = 0x7F; + temp_r27->unk1C = 0x7F; + temp_r27->unk38.flags = 4; + temp_r27->unk38.volume.time = 0; + temp_r27->unk02 = (var_r30 & MSM_MUSPARAM_VOL) ? musParam->vol : 0x7F; + temp_r27->unk38.volume.target = temp_r27->unk03 * temp_r27->unk1C * temp_r27->unk02 / 16129; + if (var_r30 & MSM_MUSPARAM_PAUSE) { + temp_r27->unk38.flags |= 0x10; + } + if (var_r30 & MSM_MUSPARAM_SPEED) { + temp_r27->unk38.flags |= 2; + temp_r27->unk38.speed = musParam->speed * 256 / 100; + } + if (var_r30 & MSM_MUSPARAM_FADESPEED) { + temp_r27->unk14 = -(musParam->fadeSpeed / 15); + if (temp_r27->unk14 != 0) { + temp_r27->unk18 = 0; + temp_r27->unk1C = 0; + temp_r27->unk38.volume.target = 0; + } + } + temp_r3_3 = sndSeqPlayEx(temp_r28->unk00, temp_r28->unk02, temp_r27->unk10, &temp_r27->unk38, 0); + if (temp_r3_3 == SND_ID_ERROR) { + temp_r27->unk05 = 0; + return MSM_ERR_PLAYFAIL; + } + temp_r27->unk08 = temp_r3_3; + temp_r27->unk00 = musId; + temp_r27->unk04 = (temp_r27->unk38.flags & 0x10) ? 3 : 2; + temp_r27->unk05 = 0; + return var_r29; +} + +s32 msmMusInit(sysData* arg0, DVDFileInfo* arg1) { + s32 temp_r4; + s32 var_r8; + + mus.unk00 = 0; + mus.unk02 = 0; + mus.unk04 = 0; + mus.unk03 = 0; + if (arg0->unk10->unk4 == 0) { + return 0; + } + temp_r4 = arg0->unkC->unk2C; + if (temp_r4 == 0) { + return 0; + } + if ((mus.unk0C = msmMemAlloc(temp_r4)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + if (msmFioRead(arg1, mus.unk0C, arg0->unkC->unk2C, arg0->unkC->unk28) < 0) { + return MSM_ERR_READFAIL; + } + temp_r4 = arg0->unk10->unk20; + if (temp_r4 != 0) { + if ((mus.unk14 = msmMemAlloc(temp_r4 * arg0->unk10->unk8)) == NULL) { + return MSM_ERR_OUTOFMEM; + } + } else { + mus.unk14 = NULL; + } + mus.unk00 = arg0->unk10->unk4; + mus.unk02 = arg0->unk10->unk8; + mus.unk10 = arg0->unkC->unk48; + mus.unk08 = arg0->unk0; + for (var_r8 = 0; var_r8 < mus.unk02; var_r8++) { + mus.unk18[var_r8].unk0C = (void*) ((u32) mus.unk14 + arg0->unk10->unk20 * var_r8); + mus.unk18[var_r8].unk00 = -1; + mus.unk18[var_r8].unk05 = 0; + } + return 0; +} diff --git a/src/msm/msmse.c b/src/msm/msmse.c index 33c906ab..1d6481ce 100755 --- a/src/msm/msmse.c +++ b/src/msm/msmse.c @@ -231,7 +231,6 @@ s32 msmSeUpdataListener(Vec* pos, Vec* heading) { } s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_SELISTENER* listener) { - msmSeStruct02* se_ptr = &se; SND_FVECTOR* temp_b0; SND_FVECTOR* temp_a4; SND_FVECTOR* temp_c8; @@ -241,10 +240,10 @@ s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_ float var_f0; float var_f0_2; - temp_a4 = &se_ptr->unkA4; - temp_c8 = &se_ptr->unkC8; - temp_bc = &se_ptr->unkBC; - temp_b0 = &se_ptr->unkB0; + temp_a4 = &se.unkA4; + temp_c8 = &se.unkC8; + temp_bc = &se.unkBC; + temp_b0 = &se.unkB0; temp_a4->x = pos->x; temp_a4->y = pos->y; temp_a4->z = pos->z; @@ -254,18 +253,18 @@ s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_ temp_bc->y = heading->y; temp_bc->z = heading->z; temp_b0->x = temp_b0->y = temp_b0->z = 0.0f; - se_ptr->unkD4 = sndDist; + se.unkD4 = sndDist; var_r3 = (listener != NULL) ? listener->flag : 0; var_f4 = (var_r3 & 1) ? listener->startDis : 0.0f; var_f0 = (var_r3 & 2) ? listener->frontSurDis : (var_f4 + sndDist * 0.25f); var_f0_2 = (var_r3 & 4) ? listener->backSurDis : (var_f4 + sndDist * 0.25f); - if ((s32) sndAddListenerEx(&se_ptr->unk14, temp_a4, temp_b0, temp_bc, temp_c8, + if ((s32) sndAddListenerEx(&se.unk14, temp_a4, temp_b0, temp_bc, temp_c8, var_f0, var_f0_2, sndSpeed, -var_f4, 1, 0x7F, NULL) == FALSE) { - se_ptr->unkDA = 0; + se.unkDA = 0; return MSM_ERR_22; } - se_ptr->unkDA = 1; + se.unkDA = 1; return 0; } @@ -287,13 +286,11 @@ s32 msmSeGetEntryID(s32 seId, int* seNo) { } s32 msmSeGetNumPlay(BOOL baseGrp) { - msmSeStruct02* se_ptr = &se; - switch (baseGrp) { case FALSE: - return se_ptr->unk06 + se_ptr->unk05; + return se.unk06 + se.unk05; default: - return se_ptr->unk06; + return se.unk06; } } @@ -409,12 +406,11 @@ void msmSePauseAll(BOOL pause, s32 speed) { } void msmSeStopAll(BOOL checkGrp, s32 speed) { - msmSeStruct02* se_ptr = &se; msmSeStruct00* temp_r28; s32 var_r27; - for (var_r27 = 0; var_r27 < se_ptr->unk04; var_r27++) { - temp_r28 = &se_ptr->unk10[var_r27]; + for (var_r27 = 0; var_r27 < se.unk04; var_r27++) { + temp_r28 = &se.unk10[var_r27]; if (temp_r28->unk0A == 0) { continue; } @@ -435,7 +431,7 @@ void msmSeStopAll(BOOL checkGrp, s32 speed) { } break; default: - if (msmSysCheckBaseGroup(se_ptr->unk0C[temp_r28->unk08].groupId) == 0) { + if (msmSysCheckBaseGroup(se.unk0C[temp_r28->unk08].groupId) == 0) { temp_r28->unk34 = speed / 15; if (temp_r28->unk34 != 0) { temp_r28->unk38 = temp_r28->unk34; @@ -479,40 +475,39 @@ s32 msmSeStop(int seNo, s32 speed) { return 0; } -static inline BOOL msmSeInline00(msmSeStruct02* arg0, msmSeStruct00* arg1, MSM_SEPARAM* param) { +static inline BOOL msmSeInline00(msmSeStruct00* arg0, MSM_SEPARAM* param) { BOOL var_r0 = FALSE; if (param != NULL) { if (param->flag & MSM_SEPARAM_VOL) { - arg1->unk0C = param->vol; + arg0->unk0C = param->vol; } if (param->flag & MSM_SEPARAM_PAN) { - arg1->unk0D = param->pan; + arg0->unk0D = param->pan; } if (param->flag & MSM_SEPARAM_PITCH) { - arg1->unk0E = param->pitch; + arg0->unk0E = param->pitch; } if (param->flag & MSM_SEPARAM_SPAN) { - arg1->unk10 = param->span; + arg0->unk10 = param->span; } if (param->flag & MSM_SEPARAM_AUXVOLA) { - arg1->unk11 = param->auxAVol; + arg0->unk11 = param->auxAVol; } if (param->flag & MSM_SEPARAM_AUXVOLB) { - arg1->unk12 = param->auxBVol; + arg0->unk12 = param->auxBVol; } - if ((param->flag & MSM_SEPARAM_POS) && arg0->unkDA != 0) { + if ((param->flag & MSM_SEPARAM_POS) && se.unkDA != 0) { var_r0 = TRUE; } } - arg1->unk14.paraArray = arg1->unk1C; + arg0->unk14.paraArray = arg0->unk1C; return var_r0; } int msmSePlay(int seId, MSM_SEPARAM* param) { msmSeStruct00* var_r30; SND_EMITTER* var_r29; - msmSeStruct02* se_ptr = &se; MSMSE* temp_r9; int var_r3_2; s32 var_r4; @@ -549,7 +544,7 @@ int msmSePlay(int seId, MSM_SEPARAM* param) { var_r30->unk48 = 0x7F; var_r30->unk3C = 0x7F; var_r30->unkB4 = 0; - if (msmSeInline00(se_ptr, var_r30, param)) { + if (msmSeInline00(var_r30, param)) { var_r30->unk9C.x = param->pos.x; var_r30->unk9C.y = param->pos.y; var_r30->unk9C.z = param->pos.z; @@ -567,7 +562,7 @@ int msmSePlay(int seId, MSM_SEPARAM* param) { var_r6_2 = 8; } var_r30->unkB4 = temp_r9->doppler; - var_r30->unk00 = sndAddEmitterParaEx(var_r29, &var_r30->unk9C, &var_r30->unkA8, se_ptr->unkD4, temp_r9->comp / 127.0f, var_r6_2, temp_r9->fxId, se_ptr->unkD8++, var_r30->unk0C * var_r30->unk30 / 127, 0, NULL, &var_r30->unk14); + var_r30->unk00 = sndAddEmitterParaEx(var_r29, &var_r30->unk9C, &var_r30->unkA8, se.unkD4, temp_r9->comp / 127.0f, var_r6_2, temp_r9->fxId, se.unkD8++, var_r30->unk0C * var_r30->unk30 / 127, 0, NULL, &var_r30->unk14); if (var_r29 != NULL) { if (!sndCheckEmitter(var_r29)) { return MSM_ERR_PLAYFAIL; @@ -612,7 +607,7 @@ int msmSePlay(int seId, MSM_SEPARAM* param) { } var_r30->unk0B = 1; var_r30->unk08 = seId; - var_r30->unk04 = se_ptr->unk08++; + var_r30->unk04 = se.unk08++; var_r30->unk0A = 2; var_r30->unk0B = 0; return var_r30->unk04; diff --git a/src/msm/msmstream.c b/src/msm/msmstream.c new file mode 100755 index 00000000..058835ab --- /dev/null +++ b/src/msm/msmstream.c @@ -0,0 +1,1057 @@ +#include "msm/msmstream.h" +#include "msm/msmmem.h" +#include "msm/msmsys.h" + +typedef struct { + /* 0x00 */ SND_STREAMID unk00; + /* 0x04 */ s16 unk04; + /* 0x06 */ u8 unk06; + /* 0x07 */ u8 unk07; + /* 0x08 */ u8 unk08; + /* 0x09 */ u8 unk09; + /* 0x0A */ u8 unk0A; + /* 0x0B */ u8 unk0B; + /* 0x0C */ u8 unk0C; + /* 0x0D */ u8 unk0D; + /* 0x0E */ s8 unk0E; + /* 0x0F */ s8 unk0F; + /* 0x10 */ u32 unk10; + /* 0x14 */ volatile s32 unk14; + /* 0x18 */ volatile s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ char unk20[4]; + /* 0x24 */ volatile s32 unk24; + /* 0x28 */ s32 unk28; + /* 0x2C */ s8 unk2C; + /* 0x2D */ s8 unk2D; + /* 0x2E */ s8 unk2E; + /* 0x2F */ char unk2F[1]; + /* 0x30 */ void* unk30; + /* 0x34 */ u32 unk34; + /* 0x38 */ u32 unk38; + /* 0x3C */ struct { + volatile u8 unk3C_0 : 1; + volatile u8 unk3C_1 : 1; + u8 unk3C_2 : 1; + u8 unk3C_3 : 1; + volatile u8 unk3C_4 : 1; + volatile u8 unk3C_5 : 1; + volatile u8 unk3C_6 : 1; + }; + /* 0x3D */ char unk3D[3]; + /* 0x40 */ s32 unk40; + /* 0x44 */ SND_ADPCMSTREAM_INFO* unk44; + /* 0x48 */ s32 unk48; + /* 0x4C */ u32 unk4C; + /* 0x50 */ u32 unk50; + /* 0X54 */ s32 unk54; + /* 0x58 */ u32 unk58; + /* 0x5C */ void* unk5C; + /* 0X60 */ s32 unk60; + /* 0x64 */ u32 unk64; + /* 0x68 */ s32 unk68; + /* 0x6C */ s32 unk6C; + /* 0x70 */ DVDFileInfo unk70; +} msmStreamUnk20Struct; // Size 0xAC + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ u32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s8 unk10; + /* 0x11 */ u8 unk11; + /* 0x12 */ u8 unk12; + /* 0x13 */ char unk13[1]; + /* 0x14 */ u32* unk14; + /* 0x18 */ s8* unk18; + /* 0x1C */ SND_ADPCMSTREAM_INFO* unk1C; + /* 0x20 */ msmStreamUnk20Struct* unk20; + /* 0x24 */ char unk24[0x1C]; + /* 0x40 */ s16 unk40; + /* 0x42 */ s16 unk42; + /* 0x44 */ s32 unk44; + /* 0x48 */ s32 unk48; + /* 0x4C */ s32 unk4C; + /* 0x50 */ s32 unk50; + /* 0x54 */ s32 unk54; + /* 0x58 */ s32 unk58; + /* 0x5C */ s32 unk5C; +} msmStreamStruct; // Size 0x60 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s16 unk04; + /* 0x06 */ char unk06[2]; +} StructSlotInitInnerArg1; // Size 8 + +typedef struct { + /* 0x00 */ s8 unk00; + /* 0x01 */ s8 unk01; + /* 0x02 */ s8 unk02; + /* 0x03 */ s8 unk03; + /* 0x04 */ s8 unk04; + /* 0x05 */ s8 unk05; + /* 0x06 */ u16 unk06; + /* 0x08 */ u32 unk08; + /* 0x0C */ u32 unk0C; + /* 0x10 */ StructSlotInitInnerArg1 unk10[2]; +} StructSlotInitArg1; // Size unknown + +typedef struct { + /* 0x00 */ u8 unk00; + /* 0x01 */ u8 unk01; + /* 0x02 */ u8 unk02; + /* 0x03 */ u8 unk03; + /* 0x04 */ u8 unk04; + /* 0x05 */ char unk05[3]; + /* 0x08 */ s32 unk08; +} StructSlotInitArg2; // Size unknown + +static void msmStreamPauseFade(s32 arg0); +static void msmStreamFade(s32 arg0); +static void msmStreamDvdCallback(s32 result, DVDFileInfo* fileInfo); +static void msmStreamStopSub(s32 streamNo, s32 speed); +static void msmStreamDvdCallback2(s32 arg0, DVDFileInfo* arg1); +static u32 msmStreamUpdateFunc(void* buffer1, u32 len1, void* buffer2, u32 len2, u32 user); +static s32 msmStreamSlotInit(msmStreamUnk20Struct* arg0, StructSlotInitArg1* arg1, StructSlotInitArg2* arg2, s32 arg3); + +static msmStreamStruct StreamInfo ATTRIBUTE_ALIGN(32); + +static inline void msmStreamInline00(s32 streamNo) { + msmStreamUnk20Struct* temp_ptr; + + temp_ptr = &StreamInfo.unk20[streamNo]; + DVDClose(&temp_ptr->unk70); + temp_ptr->unk06 = 0; +} + +s32 msmStreamGetStatus(int streamNo) { + msmStreamUnk20Struct* temp_r3; + s32 var_r4; + + if (streamNo < 0 || streamNo >= StreamInfo.unk44) { + return 0; + } + temp_r3 = &StreamInfo.unk20[streamNo]; + switch (temp_r3->unk06) { + case 4: + var_r4 = 2; + break; + case 2: + case 3: + var_r4 = 4; + break; + case 5: + var_r4 = 1; + break; + default: + var_r4 = 0; + break; + } + if (temp_r3->unk3C_5 == 1) { + var_r4 = 3; + } + if (var_r4 == 0 && temp_r3->unk0E != -1) { + var_r4 = msmStreamGetStatus(temp_r3->unk0E); + } + return var_r4; +} + +static inline void msmStreamInline04(msmStreamUnk20Struct* arg0) { + s32 var_r10; + s32 temp_var; + + if (StreamInfo.unk12 != 0) { + var_r10 = arg0->unk0C + arg0->unk0D - 0x40; + if (var_r10 < 0) { + var_r10 = 0; + } + if (var_r10 > 0x7F) { + var_r10 = 0x7F; + } + } else { + var_r10 = 0x40; + } + temp_var = arg0->unk08 * arg0->unk09 * arg0->unk0A * arg0->unk0B / 2048383; + sndStreamMixParameterEx(arg0->unk00, temp_var * StreamInfo.unk11 / 127, var_r10, arg0->unk2C, arg0->unk2D, arg0->unk2E); +} + +void msmStreamSetMasterVolume(s32 arg0) { + s32 var_r27; + + StreamInfo.unk11 = arg0 & 0x7F; + for (var_r27 = 0; var_r27 < StreamInfo.unk44; var_r27++) { + if (StreamInfo.unk20[var_r27].unk06 != 0) { + msmStreamInline04(&StreamInfo.unk20[var_r27]); + } + } +} + +static inline BOOL msmStreamInline01(msmStreamUnk20Struct* arg0) { + if (arg0->unk06 != 0 || arg0->unk3C_5 != 0) { + return TRUE; + } else { + return FALSE; + } +} + +void msmStreamStopAll(s32 speed) { + msmStreamUnk20Struct* temp_r29; + s32 var_r28; + + msmSysIrqDisable(); + for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { + if (var_r28 >= 0 && var_r28 < StreamInfo.unk44) { + temp_r29 = &StreamInfo.unk20[var_r28]; + if (msmStreamInline01(temp_r29)) { + msmSysIrqDisable(); + msmStreamStopSub(var_r28, speed); + if (temp_r29->unk0E != -1) { + msmStreamStopSub(temp_r29->unk0E, speed); + } + if (temp_r29->unk0F != -1) { + msmStreamStopSub(temp_r29->unk0F, speed); + } + msmSysIrqEnable(); + } + } + } + msmSysIrqEnable(); +} + +static inline void msmStreamInline03(int streamNo, s32 speed) { + msmStreamUnk20Struct* temp_ptr = &StreamInfo.unk20[streamNo]; + + if (temp_ptr->unk3C_5 != 0) { + temp_ptr->unk3C_5 = 0; + speed = 0; + } + temp_ptr->unk24 = speed / 15; + if (temp_ptr->unk24 != 0) { + temp_ptr->unk28 = temp_ptr->unk24; + temp_ptr->unk0A = 0x7F; + } else { + msmStreamSlotOff(streamNo); + } +} + +s32 msmStreamStop(int streamNo, s32 speed) { + msmStreamUnk20Struct* temp_r31; + s32 unused; + + if (streamNo < 0 || streamNo >= StreamInfo.unk44) { + return MSM_ERR_8C; + } + temp_r31 = &StreamInfo.unk20[streamNo]; + if (msmStreamInline01(temp_r31)) { + msmSysIrqDisable(); + msmStreamInline03(streamNo, speed); + if (temp_r31->unk0E != -1) { + msmStreamInline03(temp_r31->unk0E, speed); + } + if (temp_r31->unk0F != -1) { + msmStreamInline03(temp_r31->unk0F, speed); + } + msmSysIrqEnable(); + } + return 0; +} + +int msmStreamPlay(int streamId, MSM_STREAMPARAM* streamParam) { + if (streamId < 0 || streamId >= StreamInfo.unk42) { + return MSM_ERR_INVALIDID; + } + if (StreamInfo.unk14[streamId] == 0) { + return MSM_ERR_REMOVEDID; + } + if (StreamInfo.unk18[StreamInfo.unk14[streamId] - StreamInfo.unk58] & 1) { + return msmStreamPackStartStereo(streamId, streamParam, 0); + } else { + return msmStreamPackStartMono(streamId, streamParam, 0); + } +} + +void msmStreamPeriodicProc(void) { + msmStreamUnk20Struct* temp_r28; + s32 var_r27; + + StreamInfo.unk10 = 0; + for (var_r27 = 0; var_r27 < StreamInfo.unk44; var_r27++) { + temp_r28 = &StreamInfo.unk20[var_r27]; + msmStreamFade(var_r27); + msmStreamPauseOff(var_r27); + msmStreamPauseFade(var_r27); + if (temp_r28->unk06 != 0) { + StreamInfo.unk10++; + } + } +} + +void msmStreamSetOutputMode(s32 arg0) { + s32 var_r27; + + StreamInfo.unk12 = arg0; + for (var_r27 = 0; var_r27 < StreamInfo.unk44; var_r27++) { + if (StreamInfo.unk20[var_r27].unk06 != 0) { + msmStreamInline04(&StreamInfo.unk20[var_r27]); + } + } +} + +void msmStreamAmemFree(void) { + u32 var_r29; + + for (var_r29 = 0; var_r29 < StreamInfo.unk44; var_r29++) { + sndStreamFree(StreamInfo.unk20[var_r29].unk00); + } +} + +s32 msmStreamAmemAlloc(void) { + u32 var_r25; + msmStreamUnk20Struct* temp_r24; + + for (var_r25 = 0; var_r25 < StreamInfo.unk44; var_r25++) { + temp_r24 = &StreamInfo.unk20[var_r25]; + temp_r24->unk06 = 0; + temp_r24->unk0F = -1; + temp_r24->unk0E = -1; + temp_r24->unk30 = msmMemAlloc(StreamInfo.unk04); + if (temp_r24->unk30 == NULL) { + return MSM_ERR_OUTOFMEM; + } + temp_r24->unk34 = StreamInfo.unk04; + temp_r24->unk38 = StreamInfo.unk08; + temp_r24->unk00 = sndStreamAllocEx(0xFF, temp_r24->unk30, temp_r24->unk38, StreamInfo.unk48, 0, 0x40, 0, 0, 0, 0, 0x30001, msmStreamUpdateFunc, var_r25, NULL); + if (temp_r24->unk00 == -1) { + return MSM_ERR_STREAMALLOC_FAIL; + } + } + return StreamInfo.unk04 * StreamInfo.unk44; +} + +s32 msmStreamInit(char* arg0) { + DVDFileInfo spC; + s32 temp_r27; + + StreamInfo.unk42 = 0; + StreamInfo.unk44 = 0; + StreamInfo.unk11 = 0x7F; + StreamInfo.unk10 = 0; + if (arg0 == NULL) { + return 0; + } + StreamInfo.unk0C = DVDConvertPathToEntrynum(arg0); + if (StreamInfo.unk0C == -1) { + return MSM_ERR_OPENFAIL; + } + if (!msmFioOpen(StreamInfo.unk0C, &spC)) { + return MSM_ERR_OPENFAIL; + } + if (msmFioRead(&spC, &StreamInfo.unk40, 0x20, 0) < 0) { + msmFioClose(&spC); + return MSM_ERR_READFAIL; + } + if (StreamInfo.unk40 != 1) { + msmFioClose(&spC); + return MSM_ERR_INVALIDFILE; + } + if (StreamInfo.unk42 != 0) { + temp_r27 = (StreamInfo.unk54 - StreamInfo.unk50 + 0x1F) & ~0x1F; + StreamInfo.unk14 = msmMemAlloc(temp_r27); + if (StreamInfo.unk14 == NULL) { + msmFioClose(&spC); + return MSM_ERR_OUTOFMEM; + } + if (msmFioRead(&spC, StreamInfo.unk14, temp_r27, StreamInfo.unk50) < 0) { + msmFioClose(&spC); + return MSM_ERR_READFAIL; + } + temp_r27 = (StreamInfo.unk5C - StreamInfo.unk58 + 0x1F) & ~0x1F; + StreamInfo.unk18 = msmMemAlloc(temp_r27); + if (StreamInfo.unk18 == NULL) { + msmFioClose(&spC); + return MSM_ERR_OUTOFMEM; + } + if (msmFioRead(&spC, StreamInfo.unk18, temp_r27, StreamInfo.unk58) < 0) { + msmFioClose(&spC); + return MSM_ERR_READFAIL; + } + temp_r27 = StreamInfo.unk58 - StreamInfo.unk54; + StreamInfo.unk1C = msmMemAlloc(temp_r27); + if (StreamInfo.unk1C == NULL) { + msmFioClose(&spC); + return MSM_ERR_OUTOFMEM; + } + if (msmFioRead(&spC, StreamInfo.unk1C, temp_r27, StreamInfo.unk54) < 0) { + msmFioClose(&spC); + return MSM_ERR_READFAIL; + } + } + msmFioClose(&spC); + StreamInfo.unk00 = (StreamInfo.unk48 + 13) / 14; + StreamInfo.unk04 = (8 * StreamInfo.unk00 * StreamInfo.unk4C + 0x3F) & ~0x3F; + StreamInfo.unk08 = (StreamInfo.unk04 / 8) * 14; + StreamInfo.unk20 = msmMemAlloc(StreamInfo.unk44 * sizeof(*StreamInfo.unk20)); + memset(StreamInfo.unk20, 0, StreamInfo.unk44 * sizeof(*StreamInfo.unk20)); + return 0; +} + +void msmStreamPauseOff(s32 arg0) { + msmStreamUnk20Struct* temp_r31; + u32 temp_r3; + u32 var_r30; + + temp_r31 = &StreamInfo.unk20[arg0]; + if (temp_r31->unk14 == 0) { + return; + } + if (temp_r31->unk3C_5 == 0) { + temp_r31->unk14 = 0; + return; + } + if (temp_r31->unk18 != 0) { + temp_r31->unk18 = -(temp_r31->unk14 + 1); + if (temp_r31->unk18 == 0) { + temp_r31->unk0B = 0x7F; + msmStreamInline04(temp_r31); + } + temp_r31->unk14 = 0; + temp_r31->unk3C_5 = 0; + } else if (temp_r31->unk06 == 0 && DVDFastOpen(StreamInfo.unk0C, &temp_r31->unk70) == TRUE) { + if (--temp_r31->unk14 != 0) { + temp_r31->unk18 = -temp_r31->unk14; + temp_r31->unk1C = 0; + temp_r31->unk0B = 0; + } else { + temp_r31->unk0B = 0x7F; + } + temp_r31->unk14 = 0; + temp_r31->unk3C_1 = 1; + temp_r31->unk3C_2 = 0; + temp_r31->unk3C_4 = 0; + temp_r31->unk3C_5 = 0; + temp_r31->unk3C_6 = 0; + temp_r31->unk3C_0 = 1; + temp_r31->unk64 = temp_r31->unk68 = (temp_r31->unk10 / 8) * 14; + temp_r31->unk6C = 0; + temp_r31->unk4C = temp_r31->unk10; + var_r30 = temp_r31->unk34 / 2; + if ((temp_r3 = temp_r31->unk50 - temp_r31->unk4C) < temp_r31->unk34 / 2) { + var_r30 = temp_r3; + temp_r31->unk58 = temp_r31->unk34 / 2 - temp_r3; + temp_r31->unk5C = (void*) ((u32) temp_r31->unk30 + temp_r3); + memset(temp_r31->unk5C, 0, temp_r31->unk58); + } + temp_r31->unk06 = 2; + temp_r31->unk4C += var_r30; + temp_r31->unk3C_3 = 1; + DVDReadAsync(&temp_r31->unk70, temp_r31->unk30, var_r30, temp_r31->unk48 + (temp_r31->unk4C - var_r30), msmStreamDvdCallback); + } +} + +static inline void msmStreamInline05(s32 streamNo) { + msmStreamUnk20Struct* temp_r31; + + temp_r31 = &StreamInfo.unk20[streamNo]; + switch (temp_r31->unk06) { + case 2: + temp_r31->unk3C_4 = 1; + temp_r31->unk06 = 5; + break; + case 3: + msmStreamInline00(streamNo); + break; + case 4: + if (temp_r31->unk3C_2 == 0) { + sndStreamMixParameterEx(temp_r31->unk00, 0, 0x40, 0, 0, 0); + temp_r31->unk3C_2 = 1; + temp_r31->unk06 = 5; + } + break; + } +} + +void msmStreamPauseOn(s32 streamNo, s32 arg1) { + msmStreamUnk20Struct* temp_r31; + + temp_r31 = &StreamInfo.unk20[streamNo]; + temp_r31->unk14 = 0; + if (temp_r31->unk3C_5 != 0) { + return; + } + temp_r31->unk3C_5 = 1; + temp_r31->unk18 = arg1 / 15; + if (temp_r31->unk18 != 0) { + temp_r31->unk1C = temp_r31->unk18; + temp_r31->unk0B = 0x7F; + return; + } + temp_r31->unk10 = ((temp_r31->unk64 / 7) * 4) & ~7; + if (temp_r31->unk07 != 0) { + if (temp_r31->unk10 >= temp_r31->unk50 - temp_r31->unk34 / 4) { + temp_r31->unk10 = 0; + } + } else if (temp_r31->unk10 >= temp_r31->unk50) { + temp_r31->unk3C_5 = 0; + } + msmStreamInline05(streamNo); +} + +static void msmStreamPauseFade(s32 arg0) { + msmStreamUnk20Struct* temp_r5; + + temp_r5 = &StreamInfo.unk20[arg0]; + if (temp_r5->unk06 != 4) { + return; + } + if (temp_r5->unk18 > 0) { + if (--temp_r5->unk1C == 0) { + temp_r5->unk18 = 0; + temp_r5->unk3C_5 = 0; + msmStreamPauseOn(arg0, 0); + } else { + temp_r5->unk0B = temp_r5->unk1C * 0x7F / temp_r5->unk18; + msmStreamInline04(temp_r5); + } + } else if (temp_r5->unk18 < 0) { + if (++temp_r5->unk1C >= -temp_r5->unk18) { + temp_r5->unk18 = 0; + temp_r5->unk0B = 0x7F; + msmStreamInline04(temp_r5); + } else { + temp_r5->unk0B = temp_r5->unk1C * 0x7F / -temp_r5->unk18; + msmStreamInline04(temp_r5); + } + } +} + +static void msmStreamFade(s32 arg0) { + msmStreamUnk20Struct* temp_r5; + + temp_r5 = &StreamInfo.unk20[arg0]; + if (temp_r5->unk06 != 4) { + return; + } + if (temp_r5->unk24 > 0) { + if (--temp_r5->unk28 == 0) { + temp_r5->unk24 = 0; + msmStreamInline03(arg0, 0); + } else { + temp_r5->unk0A = temp_r5->unk28 * 0x7F / temp_r5->unk24; + msmStreamInline04(temp_r5); + } + } else if (temp_r5->unk24 < 0) { + if (++temp_r5->unk28 >= -temp_r5->unk24) { + temp_r5->unk24 = 0; + temp_r5->unk0A = 0x7F; + msmStreamInline04(temp_r5); + } else { + temp_r5->unk0A = temp_r5->unk28 * 0x7F / -temp_r5->unk24; + msmStreamInline04(temp_r5); + } + } +} + +static void msmStreamStopSub(s32 streamNo, s32 speed) { + msmStreamUnk20Struct* temp_r31; + s32 var_r4; + + var_r4 = speed; + temp_r31 = &StreamInfo.unk20[streamNo]; + if (temp_r31->unk3C_5 != 0) { + temp_r31->unk3C_5 = 0; + var_r4 = 0; + } + temp_r31->unk24 = var_r4 / 15; + if (temp_r31->unk24 != 0) { + temp_r31->unk28 = temp_r31->unk24; + temp_r31->unk0A = 0x7F; + return; + } + msmStreamInline05(streamNo); +} + +static void msmStreamSetParamSub(msmStreamUnk20Struct* arg0) { + int var_r10; + s32 temp_var; + + if (StreamInfo.unk12 != 0) { + var_r10 = arg0->unk0C + arg0->unk0D - 0x40; + if (var_r10 < 0) { + var_r10 = 0; + } + if (var_r10 > 0x7F) { + var_r10 = 0x7F; + } + } else { + var_r10 = 0x40; + } + temp_var = arg0->unk08 * arg0->unk09 * arg0->unk0A * arg0->unk0B / 2048383; + sndStreamMixParameterEx(arg0->unk00, temp_var * StreamInfo.unk11 / 127, var_r10, arg0->unk2C, arg0->unk2D, arg0->unk2E); +} + +s32 msmStreamPackStartStereo(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2) { + s32 var_r29; + s32 var_r28; + s32 var_r27; + u32 temp_r3_3; + u32 temp_r3_4; + StructSlotInitArg2 sp1C; + msmStreamUnk20Struct* temp_r25; + msmStreamUnk20Struct* temp_r24; + StructSlotInitArg1* temp_r23; + + var_r29 = (arg1 != NULL) ? arg1->flag : 0; + if (var_r29 & MSM_STREAMPARAM_CHAN) { + var_r28 = arg1->chan; + var_r27 = arg1->chan + 1; + if (var_r28 < 0 || var_r28 >= StreamInfo.unk44) { + return MSM_ERR_6E; + } + if (var_r27 < 0 || var_r27 >= StreamInfo.unk44) { + return MSM_ERR_6E; + } + if (msmStreamInline01(&StreamInfo.unk20[var_r28])) { + return MSM_ERR_6E; + } + if (msmStreamInline01(&StreamInfo.unk20[var_r27])) { + return MSM_ERR_6E; + } + } else { + for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { + if (!msmStreamInline01(&StreamInfo.unk20[var_r28])) { + break; + } + } + for (var_r27 = var_r28 + 1; var_r27 < StreamInfo.unk44; var_r27++) { + if (!msmStreamInline01(&StreamInfo.unk20[var_r27])) { + break; + } + } + if (var_r28 == StreamInfo.unk44 || var_r27 == StreamInfo.unk44) { + return MSM_ERR_6E; + } + } + temp_r25 = &StreamInfo.unk20[var_r28]; + temp_r24 = &StreamInfo.unk20[var_r27]; + temp_r23 = (StructSlotInitArg1*) ((u32) StreamInfo.unk18 + (StreamInfo.unk14[arg0] - StreamInfo.unk58)); + sp1C.unk00 = (var_r29 & MSM_STREAMPARAM_VOL) ? arg1->vol : 0x7F; + sp1C.unk02 = (var_r29 & MSM_STREAMPARAM_SPAN) ? arg1->span : (s32) temp_r23->unk03; + sp1C.unk03 = (var_r29 & MSM_STREAMPARAM_AUXA) ? arg1->auxA : (s32) temp_r23->unk04; + sp1C.unk04 = (var_r29 & MSM_STREAMPARAM_AUXB) ? arg1->auxB : (s32) temp_r23->unk05; + sp1C.unk08 = arg2; + msmSysIrqDisable(); + sp1C.unk01 = 0; + temp_r3_3 = msmStreamSlotInit(temp_r25, temp_r23, &sp1C, 0); + sp1C.unk01 = 0x7F; + temp_r3_4 = msmStreamSlotInit(temp_r24, temp_r23, &sp1C, 1); + temp_r25->unk04 = arg0; + temp_r24->unk04 = -1; + temp_r25->unk0E = var_r27; + temp_r24->unk0F = var_r28; + if ((var_r29 & MSM_STREAMPARAM_FADESPEED) && arg1->fadeSpeed != 0) { + temp_r25->unk24 = temp_r24->unk24 = -arg1->fadeSpeed / 15; + temp_r25->unk28 = temp_r24->unk28 = 0; + temp_r25->unk0A = temp_r24->unk0A = 0; + } + msmSysIrqEnable(); + if (temp_r3_3 == 0) { + return 0; + } + if (var_r29 & MSM_STREAMPARAM_PAUSE) { + temp_r25->unk3C_5 = temp_r24->unk3C_5 = 1; + temp_r25->unk06 = temp_r24->unk06 = 0; + return var_r28; + } + if (DVDFastOpen(StreamInfo.unk0C, &temp_r25->unk70) != 1) { + return MSM_ERR_OPENFAIL; + } + if (DVDFastOpen(StreamInfo.unk0C, &temp_r24->unk70) != 1) { + DVDClose(&temp_r25->unk70); + return MSM_ERR_OPENFAIL; + } + temp_r25->unk4C += temp_r3_3; + temp_r24->unk4C += temp_r3_4; + temp_r25->unk3C_3 = 1; + DVDReadAsync(&temp_r25->unk70, temp_r25->unk30, temp_r3_3, temp_r25->unk48 + (temp_r25->unk4C - temp_r3_3), msmStreamDvdCallback); + temp_r24->unk3C_3 = 1; + DVDReadAsync(&temp_r24->unk70, temp_r24->unk30, temp_r3_4, temp_r24->unk48 + (temp_r24->unk4C - temp_r3_4), msmStreamDvdCallback); + return var_r28; +} + +s32 msmStreamPackStartMono(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2) { + s32 var_r30; + s32 var_r29; + u32 temp_r3_2; + StructSlotInitArg2 sp18; + msmStreamUnk20Struct* temp_r27; + StructSlotInitArg1* temp_r25; + + var_r30 = (arg1 != NULL) ? arg1->flag : 0; + if (var_r30 & MSM_STREAMPARAM_CHAN) { + var_r29 = arg1->chan; + if (var_r29 < 0 || var_r29 >= StreamInfo.unk44) { + return MSM_ERR_6E; + } + if (msmStreamInline01(&StreamInfo.unk20[var_r29])) { + return MSM_ERR_6E; + } + } else { + for (var_r29 = 0; var_r29 < StreamInfo.unk44; var_r29++) { + if (!msmStreamInline01(&StreamInfo.unk20[var_r29])) { + break; + } + } + if (var_r29 == StreamInfo.unk44) { + return MSM_ERR_6E; + } + } + temp_r27 = &StreamInfo.unk20[var_r29]; + temp_r25 = (StructSlotInitArg1*) ((u32) StreamInfo.unk18 + (StreamInfo.unk14[arg0] - StreamInfo.unk58)); + sp18.unk00 = (var_r30 & MSM_STREAMPARAM_VOL) ? arg1->vol : 0x7F; + sp18.unk01 = (var_r30 & MSM_STREAMPARAM_PAN) ? arg1->pan : 0x40; + sp18.unk02 = (var_r30 & MSM_STREAMPARAM_SPAN) ? arg1->span : (s32) temp_r25->unk03; + sp18.unk03 = (var_r30 & MSM_STREAMPARAM_AUXA) ? arg1->auxA : (s32) temp_r25->unk04; + sp18.unk04 = (var_r30 & MSM_STREAMPARAM_AUXB) ? arg1->auxB : (s32) temp_r25->unk05; + sp18.unk08 = arg2; + msmSysIrqDisable(); + temp_r3_2 = msmStreamSlotInit(temp_r27, temp_r25, &sp18, 0); + temp_r27->unk04 = arg0; + if ((var_r30 & MSM_STREAMPARAM_FADESPEED) && arg1->fadeSpeed != 0) { + temp_r27->unk24 = -arg1->fadeSpeed / 15; + temp_r27->unk28 = 0; + temp_r27->unk0A = 0; + } + msmSysIrqEnable(); + if (temp_r3_2 == 0) { + return 0; + } + if (var_r30 & MSM_STREAMPARAM_PAUSE) { + temp_r27->unk3C_5 = 1; + temp_r27->unk06 = 0; + return var_r29; + } + if (DVDFastOpen(StreamInfo.unk0C, &temp_r27->unk70) != 1) { + return MSM_ERR_OPENFAIL; + } + temp_r27->unk4C += temp_r3_2; + temp_r27->unk3C_3 = 1; + DVDReadAsync(&temp_r27->unk70, temp_r27->unk30, temp_r3_2, temp_r27->unk48 + (temp_r27->unk4C - temp_r3_2), msmStreamDvdCallback); + return var_r29; +} + +// Note: identical to msmStreamInline05. +void msmStreamSlotOff(s32 streamNo) { + msmStreamUnk20Struct* temp_r31; + + temp_r31 = &StreamInfo.unk20[streamNo]; + switch (temp_r31->unk06) { + case 2: + temp_r31->unk3C_4 = 1; + temp_r31->unk06 = 5; + break; + case 3: + msmStreamInline00(streamNo); + break; + case 4: + if (temp_r31->unk3C_2 == 0) { + sndStreamMixParameterEx(temp_r31->unk00, 0, 0x40, 0, 0, 0); + temp_r31->unk3C_2 = 1; + temp_r31->unk06 = 5; + } + break; + } +} + +static inline void msmStreamInline06(s32 streamNo) { + msmStreamUnk20Struct* temp_r25; + + temp_r25 = &StreamInfo.unk20[streamNo]; + msmStreamSlotOff(streamNo); + sndStreamDeactivate(temp_r25->unk00); + if (temp_r25->unk3C_3 == 0) { + msmStreamInline00(streamNo); + } else { + temp_r25->unk3C_4 = 1; + } +} + +static void msmStreamData(s32 arg0) { + s32 temp_r5; + u32 var_r28; + void* var_r27; + msmStreamUnk20Struct* temp_r26; + s32 var_r24; + + temp_r26 = &StreamInfo.unk20[arg0]; + var_r28 = temp_r5 = temp_r26->unk34 / 2; + var_r27 = (temp_r26->unk3C_0 != 0) + ? (void*) ((u32) temp_r26->unk30 + temp_r5) + : temp_r26->unk30; + temp_r26->unk58 = var_r24 = 0; + if (temp_r26->unk4C + var_r28 > temp_r26->unk50) { + if (temp_r26->unk50 > temp_r26->unk4C) { + var_r28 = temp_r26->unk50 - temp_r26->unk4C; + temp_r26->unk58 = temp_r5 - var_r28; + temp_r26->unk5C = (void*) ((u32) var_r27 + var_r28); + } else if (temp_r26->unk07 != 0) { + temp_r26->unk4C = temp_r26->unk60; + } else { + memset(var_r27, 0, temp_r5); + if (temp_r26->unk3C_0 != 0) { + var_r24 = temp_r26->unk38 / 2; + } + sndStreamARAMUpdate(temp_r26->unk00, var_r24, temp_r26->unk38 / 2, 0, 0); + var_r28 = 0; + } + } + if (var_r28 != 0) { + if (DVDGetCommandBlockStatus(&temp_r26->unk70.cb) != 0) { + if (temp_r26->unk3C_6 != 1) { + temp_r26->unk3C_6 = 1; + sndStreamMixParameterEx(temp_r26->unk00, 0, 0x40, 0x40, 0, 0); + memset(temp_r26->unk30, 0, temp_r26->unk34); + sndStreamARAMUpdate(temp_r26->unk00, 0, temp_r26->unk38, 0, 0); + } + } else { + if (temp_r26->unk3C_6 == 1) { + temp_r26->unk3C_6 = 0; + msmStreamInline04(temp_r26); + } + temp_r26->unk4C += var_r28; + temp_r26->unk3C_3 = 1; + DVDReadAsync(&temp_r26->unk70, var_r27, var_r28, temp_r26->unk48 + (temp_r26->unk4C - var_r28), msmStreamDvdCallback); + } + } else if (temp_r26->unk3C_1 != 0) { + temp_r26->unk3C_1= 0; + } else { + msmStreamInline06(arg0); + } + temp_r26->unk3C_0 ^= 1; +} + +static inline BOOL msmStreamInline02(s32 streamNo) { + msmStreamUnk20Struct* temp_ptr; + + temp_ptr = &StreamInfo.unk20[streamNo]; + msmStreamSetParamSub(temp_ptr); + sndStreamFrq(temp_ptr->unk00, temp_ptr->unk40); + sndStreamADPCMParameter(temp_ptr->unk00, temp_ptr->unk44); + sndStreamARAMUpdate(temp_ptr->unk00, 0, temp_ptr->unk38 / 2, 0, 0); + if (sndStreamActivate(temp_ptr->unk00)) { + temp_ptr->unk06 = 4; + msmStreamData(streamNo); + return TRUE; + } else { + msmStreamInline00(streamNo); + return FALSE; + } +} + +static void msmStreamDvdCallback(s32 arg0, DVDFileInfo* arg1) { + s32 var_r28; + msmStreamUnk20Struct* temp_r27; + + for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { + if (&StreamInfo.unk20[var_r28].unk70 == arg1) { + break; + } + } + if (var_r28 == StreamInfo.unk44) { + return; + } + temp_r27 = &StreamInfo.unk20[var_r28]; + temp_r27->unk3C_3 = 0; + if (temp_r27->unk3C_4 != 0) { + temp_r27->unk3C_4 = 0; + msmStreamInline00(var_r28); + return; + } + if (DVDGetCommandBlockStatus(&arg1->cb) == 0) { + switch (temp_r27->unk06) { + case 2: + if (temp_r27->unk0E != -1) { + if (StreamInfo.unk20[temp_r27->unk0E].unk06 != 3) { + temp_r27->unk06 = 3; + break; + } + if (!msmStreamInline02(temp_r27->unk0E)) { + temp_r27->unk0E = -1; + } + } + if (temp_r27->unk0F != -1) { + if (StreamInfo.unk20[temp_r27->unk0F].unk06 != 3) { + temp_r27->unk06 = 3; + break; + } + if (!msmStreamInline02(temp_r27->unk0F)) { + temp_r27->unk0F = -1; + } + } + if (!msmStreamInline02(var_r28)) { + if (temp_r27->unk0E != -1) { + StreamInfo.unk20[temp_r27->unk0E].unk0F = -1; + } + if (temp_r27->unk0F != -1) { + StreamInfo.unk20[temp_r27->unk0F].unk0E = -1; + } + } + break; + case 4: + if (temp_r27->unk4C >= temp_r27->unk50) { + if (temp_r27->unk07 != 0) { + temp_r27->unk4C = temp_r27->unk60; + if (temp_r27->unk58 != 0) { + temp_r27->unk3C_3 = 1; + DVDReadAsync(arg1, temp_r27->unk5C, temp_r27->unk58, temp_r27->unk48 + temp_r27->unk4C, msmStreamDvdCallback2); + temp_r27->unk4C += temp_r27->unk58; + break; + } + } else if (temp_r27->unk58 != 0) { + memset(temp_r27->unk5C, 0, temp_r27->unk58); + } + } + sndStreamARAMUpdate(temp_r27->unk00, (temp_r27->unk3C_0 != 0) ? 0 : temp_r27->unk38 / 2, temp_r27->unk38 / 2, 0, 0); + break; + case 5: + temp_r27->unk3C_4 = 0; + msmStreamInline00(var_r28); + break; + } + } else { + if (temp_r27->unk06 == 4) { + sndStreamDeactivate(temp_r27->unk00); + } + msmStreamInline00(var_r28); + if (temp_r27->unk0E != -1) { + StreamInfo.unk20[temp_r27->unk0E].unk0F = -1; + } + if (temp_r27->unk0F != -1) { + StreamInfo.unk20[temp_r27->unk0F].unk0E = -1; + } + } +} + +static void msmStreamDvdCallback2(s32 arg0, DVDFileInfo* arg1) { + msmStreamUnk20Struct* var_r30; + s32 var_r28; + + for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { + var_r30 = &StreamInfo.unk20[var_r28]; + if (&var_r30->unk70 == arg1) { + break; + } + } + if (var_r28 == StreamInfo.unk44) { + return; + } + var_r30->unk3C_3 = 0; + if (var_r30->unk3C_4 != 0) { + var_r30->unk3C_4 = 0; + msmStreamInline00(var_r28); + } else if (DVDGetCommandBlockStatus(&arg1->cb) == 0) { + sndStreamARAMUpdate(var_r30->unk00, (var_r30->unk3C_0 != 0) ? 0 : var_r30->unk38 / 2, var_r30->unk38 / 2, 0, 0); + } else { + if (var_r30->unk06 == 4) { + sndStreamDeactivate(var_r30->unk00); + } + msmStreamInline00(var_r28); + if (var_r30->unk0E != -1) { + StreamInfo.unk20[var_r30->unk0E].unk0F = -1; + } + if (var_r30->unk0F != -1) { + StreamInfo.unk20[var_r30->unk0F].unk0E = -1; + } + } +} + +static u32 msmStreamUpdateFunc(void* buffer1, u32 len1, void* buffer2, u32 len2, u32 user) { + msmStreamUnk20Struct* temp_r31; + s32 temp_r4; + s32 temp_r0; + s32 var_r3; + + temp_r31 = &StreamInfo.unk20[user]; + if (temp_r31->unk3C_2 != 0) { + msmStreamInline06(user); + return 0; + } + temp_r0 = temp_r31->unk38 / 2; + if (len1 < temp_r0) { + var_r3 = 0; + temp_r31->unk64 = temp_r31->unk68 + (len1 - temp_r31->unk6C); + } else { + msmStreamData(user); + var_r3 = temp_r0; + temp_r4 = temp_r31->unk68 + (temp_r0 - temp_r31->unk6C); + temp_r31->unk68 = temp_r4; + temp_r31->unk64 = temp_r4; + temp_r31->unk6C = 0; + } + if (temp_r31->unk64 >= temp_r31->unk54) { + if (temp_r31->unk07 != 0) { + temp_r31->unk68 = 0; + temp_r31->unk64 -= temp_r31->unk54; + if (len1 < temp_r0) { + temp_r31->unk6C = len1 - temp_r31->unk64; + } + } else { + temp_r31->unk3C_2 = 1; + temp_r31->unk3C_5 = 0; + } + } + return var_r3; +} + +static s32 msmStreamSlotInit(msmStreamUnk20Struct* arg0, StructSlotInitArg1* arg1, StructSlotInitArg2* arg2, s32 arg3) { + StructSlotInitInnerArg1* temp_r10; + s32 temp_r3; + s32 var_r30; + + temp_r10 = &arg1->unk10[arg3]; + arg0->unk08 = arg1->unk01; + arg0->unk09 = arg2->unk00; + arg0->unk0A = arg0->unk0B = 0x7F; + arg0->unk0C = arg1->unk02; + arg0->unk0D = arg2->unk01; + arg0->unk2C = arg2->unk02; + arg0->unk2D = arg2->unk03; + arg0->unk2E = arg2->unk04; + arg0->unk07 = (arg1->unk00 >> 1) & 1; + arg0->unk48 = temp_r10->unk00; + arg0->unk60 = (arg1->unk0C >> 1) & ~7; + arg0->unk40 = arg1->unk06; + arg0->unk44 = &StreamInfo.unk1C[temp_r10->unk04]; + arg0->unk24 = 0; + arg0->unk18 = 0; + arg0->unk14 = 0; + arg0->unk10 = 0; + arg0->unk3C_1 = 1; + arg0->unk3C_2 = 0; + arg0->unk3C_4 = 0; + arg0->unk3C_5 = 0; + arg0->unk3C_6 = 0; + arg0->unk3C_0 = 1; + arg0->unk34 = (StreamInfo.unk48 * StreamInfo.unk4C * 8 / 14 + 0x3F) & ~0x3F; + if (arg0->unk34 > StreamInfo.unk04) { + arg0->unk34 = StreamInfo.unk04; + } + arg0->unk38 = (arg0->unk34 / 8) * 14; + arg0->unk50 = (arg1->unk08 >> 1) & ~0x1F; + arg0->unk54 = (arg0->unk50 / 8) * 14; + arg0->unk64 = arg0->unk68 = 0; + arg0->unk6C = 0; + arg0->unk0E = -1; + arg0->unk0F = -1; + arg0->unk4C = arg2->unk08; + var_r30 = arg0->unk34 / 2; + if ((temp_r3 = arg0->unk50 - arg0->unk4C) < arg0->unk34 / 2) { + var_r30 = temp_r3; + arg0->unk58 = arg0->unk34 / 2 - temp_r3; + arg0->unk5C = (void*) ((u32) arg0->unk30 + temp_r3); + memset(arg0->unk5C, 0, arg0->unk58); + } + arg0->unk06 = 2; + return var_r30; +} diff --git a/src/msm/msmsys.c b/src/msm/msmsys.c index 726a3a29..6dcd4ac9 100644 --- a/src/msm/msmsys.c +++ b/src/msm/msmsys.c @@ -5,8 +5,6 @@ #include "msm/msmse.h" #include "msm/msmstream.h" -#include "game/msm.h" // TODO remove, only for decomp - static sysData sys; static void msmSysServer(void) From ef9659fef21637911edcd09802a12d8ec69eeff1 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Wed, 15 Jan 2025 23:14:44 +0100 Subject: [PATCH 125/178] Finish m433Dll (#533) * Remove TODO * Finish m433Dll --- config/GMPE01_00/rels/m433Dll/symbols.txt | 6 +- configure.py | 2 +- src/REL/m433Dll/player.c | 4599 +++++++++------------ src/REL/m434Dll/player.c | 2 - 4 files changed, 2050 insertions(+), 2559 deletions(-) diff --git a/config/GMPE01_00/rels/m433Dll/symbols.txt b/config/GMPE01_00/rels/m433Dll/symbols.txt index 11a976cf..092ebc7d 100644 --- a/config/GMPE01_00/rels/m433Dll/symbols.txt +++ b/config/GMPE01_00/rels/m433Dll/symbols.txt @@ -428,8 +428,8 @@ lbl_1_data_445 = .data:0x00000445; // type:object size:0xB scope:local data:stri lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 lbl_1_data_468 = .data:0x00000468; // type:object size:0x24 lbl_1_data_48C = .data:0x0000048C; // type:object size:0x48 -lbl_1_data_4D4 = .data:0x000004D4; // type:object size:0x6C -lbl_1_data_540 = .data:0x00000540; // type:object size:0x24 +lbl_1_data_4D4 = .data:0x000004D4; // type:object size:0x6C data:float +lbl_1_data_540 = .data:0x00000540; // type:object size:0x24 data:float lbl_1_data_564 = .data:0x00000564; // type:object size:0x2 scope:local data:string lbl_1_data_566 = .data:0x00000566; // type:object size:0x15 scope:local data:string lbl_1_data_57B = .data:0x0000057B; // type:object size:0x15 scope:local data:string @@ -441,7 +441,7 @@ lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 scope:local data:str lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 scope:local data:string lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 scope:local data:string lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 scope:local data:string -lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 data:string +lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 scope:local data:string jumptable_1_data_654 = .data:0x00000654; // type:object size:0x20 scope:local lbl_1_data_674 = .data:0x00000674; // type:object size:0xC lbl_1_data_680 = .data:0x00000680; // type:object size:0x8 diff --git a/configure.py b/configure.py index 83d74200..e653b8d1 100644 --- a/configure.py +++ b/configure.py @@ -1123,7 +1123,7 @@ config.libs = [ objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m433Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m433Dll/map.c"), - Object(NonMatching, "REL/m433Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m433Dll/player.c"), }, ), Rel( diff --git a/src/REL/m433Dll/player.c b/src/REL/m433Dll/player.c index cbe26c9a..21b2ff60 100644 --- a/src/REL/m433Dll/player.c +++ b/src/REL/m433Dll/player.c @@ -1,3 +1,5 @@ +#include "datadir_enum.h" +#include "dolphin/mtx.h" #include "ext_math.h" #include "game/audio.h" #include "game/chrman.h" @@ -30,7 +32,7 @@ typedef struct M433PlayerWork { s32 unk_04; s32 unk_08; s32 unk_0C; - char unk10[4]; + u32 unk_10; u32 unk_14; u32 unk_18; u32 unk_1C; @@ -48,7 +50,7 @@ typedef struct M433PlayerWork { s32 unk_4C; char unk50[4]; s32 unk_54; - char unk58[4]; + s32 unk_58; s32 unk_5C; s32 unk_60; s32 unk_64; @@ -75,7 +77,7 @@ typedef struct M433PlayerWork { float unk_B8; float unk_BC; float unk_C0; - char unkC4[0x08]; + char unkC4[8]; u32 unk_CC; u32 unk_D0; u32 unk_D4; @@ -99,52 +101,112 @@ typedef struct M433PlayerWork { omObjData *unk_14C; } M433PlayerWork; /* size = 0x150 */ +typedef struct M433PlayerWork2Sub { + float unk_00; + float unk_04; + float unk_08; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + float unk_20; + float unk_24; + float unk_28; + Vec unk_2C; + Vec unk_38; +} M433PlayerWork2Sub; /* size = 0x44 */ + typedef struct M433PlayerWork2 { - char unk00[0x18]; - s16 unk_18; - char unk1A[0x16]; - float unk_30; - float unk_34; - float unk_38; - char unk3C[0x7C]; - float unk_B8; - float unk_BC; - float unk_C0; - float unk_C4; - Mtx unk_C8; - char unkF8[0x44]; -} M433PlayerWork2; /* size = 0x13C */ - -typedef struct M433PlayerWork3SubStruct { - char unk00[2]; - s16 unk_02[5]; -} M433PlayerWork3SubStruct; /* size = 0xC */ - -typedef struct M433PlayerWork3SubStruct2 { - char unk00[0x78]; - s16 unk_78; - s16 unk_7A; - char unk7C[0x28]; - s16 unk_A4; - s16 unk_A6; - char unkA8[0x3E8]; - s32 unk_490[2]; - char unk498[8]; -} M433PlayerWork3SubStruct2; /* size = 0x4A0 */ - -typedef struct M433PlayerWork3 { s32 unk_00; s32 unk_04; s32 unk_08; - char unk0C[0xC]; - s32 unk_18; - s32 unk_1C; - char unk20[0xC]; + s32 unk_0C; + s32 unk_10; + char unk14[4]; + u16 unk_18; + char unk1A[0x16]; + Vec unk_30; + Vec unk_3C; + float unk_48; + Vec unk_4C; + char unk58[0x14]; + u32 unk_6C; + s32 unk_70; + s32 unk_74; + u32 unk_78; + float unk_7C[2]; + float unk_84[2]; + s32 unk_8C; + u32 unk_90; + u32 unk_94; + s32 unk_98; + float unk_9C; + float unk_A0; + float unk_A4; + float unk_A8; + Vec unk_AC; + float unk_B8; + Vec unk_BC; + Mtx unk_C8; + M433PlayerWork2Sub unk_F8; +} M433PlayerWork2; /* size = 0x13C */ + +typedef struct M433PlayerWork3Sub { + s16 unk_00; + s16 unk_02[5]; +} M433PlayerWork3Sub; /* size = 0xC */ + +typedef struct M433PlayerWork3Sub2Sub { + s16 unk_00[2]; + float unk_04[2]; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + float unk_20; + float unk_24; + float unk_28; +} M433PlayerWork3Sub2Sub; /* size 0x2C */ + +typedef struct M433PlayerWork3Sub2Sub2 { + s32 unk_00[2]; + char unk08[8]; +} M433PlayerWork3Sub2Sub2; /* size 0x10 */ + +typedef struct M433PlayerWork3Sub2 { + s32 unk_00; + u32 unk_04; + u32 unk_08; + s32 unk_0C; + s32 unk_10; + s32 unk_14[2]; + u32 unk_1C; + M433PlayerWork3Sub2Sub unk_20[4]; + M433PlayerWork3Sub2Sub2 unk_D0[3][0x14]; + M433PlayerWork3Sub2Sub2 unk_490; +} M433PlayerWork3Sub2; /* size = 0x4A0 */ + +typedef struct M433PlayerWork3 { + u32 uGameEvent; + s32 sWinGrp; + u32 uServeGrp; + u32 uPointGrp; + u32 auServeCel[2]; + u32 auEvents[2]; + u32 unk_20[2]; + u32 unk_28; s32 unk_2C; s32 unk_30; - char unk34[0x18]; - M433PlayerWork3SubStruct unk_4C[2]; - M433PlayerWork3SubStruct2 unk_64; + u32 uContactCnt; + s32 sGroundGrp; + u32 uContactGrp; + u32 uContactCel; + u32 uTargetGrp; + u32 unk_48; + M433PlayerWork3Sub unk_4C[2]; + M433PlayerWork3Sub2 unk_64; } M433PlayerWork3; /* size = 0x504 */ typedef struct M433DllPlayerData24CStruct { @@ -155,11 +217,6 @@ typedef struct M433DllPlayerData24CStruct { /* 0x10 */ u32 unk_10; } M433DllPlayerData24CStruct; /* size = 0x14 */ -typedef struct M433DllPlayerData6C0Struct { - /* 0x00 */ s32 unk_00; - /* 0x04 */ char pad_04[0xC]; /* maybe part of unk_00[4]? */ -} M433DllPlayerData6C0Struct; /* size = 0x10 */ - typedef struct M433DllPlayerData794Struct { /* 0x00 */ s32 unk_00; /* 0x04 */ s32 unk_04; @@ -167,7 +224,7 @@ typedef struct M433DllPlayerData794Struct { } M433DllPlayerData794Struct; /* size = 0x0C */ void fn_1_10130(Vec *arg0, u32 arg1); -void fn_1_10260(float arg8, float arg9, u32 arg0, s32 arg1, Vec *arg2); +void fn_1_10260(float arg8, float arg9, u32 arg0, u32 arg1, Vec *arg2); s32 fn_1_10614(Vec *arg0); void fn_1_1070C(void); u32 fn_1_10740(Vec *arg0); @@ -210,21 +267,22 @@ void fn_1_C240(omObjData *object); void fn_1_C6AC(omObjData *object); s32 fn_1_C6B0(omObjData *object); void fn_1_CB98(omObjData *object); -void fn_1_CDB8(float *arg0, Vec *arg1, Vec *arg2, u32 arg3, float arg8); -void fn_1_D180(float *arg0); -void fn_1_D338(float *arg0); -s32 fn_1_D4E0(float *arg0, Vec *arg1, Vec *arg2, float arg8); +void fn_1_CDB8(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, u32 arg3, float arg8); +void fn_1_D180(M433PlayerWork2Sub *arg0); +void fn_1_D338(M433PlayerWork2Sub *arg0); +s32 fn_1_D4E0(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, float arg8); void fn_1_D6A8(ModelData *model, ParticleData *particle, Mtx matrix); void fn_1_D888(Vec *arg0, float arg8); void fn_1_DD70(Vec *arg0); void fn_1_DE28(ModelData *model, ParticleData *particle, Mtx matrix); void fn_1_DF44(omObjData *object); void fn_1_E11C(omObjData *object); -void fn_1_E5C0(M433PlayerWork3SubStruct *arg0, M433PlayerWork3SubStruct2 *arg1); -void fn_1_ECFC(void *arg0, void *arg1); -void fn_1_FE64(void *arg0, s32 arg1, s32 arg2, u32 arg3); +void fn_1_E5C0(M433PlayerWork3Sub *arg0, M433PlayerWork3Sub2 *arg1); +void fn_1_ECFC(M433PlayerWork3Sub *arg0, M433PlayerWork3Sub2 *arg1); +void fn_1_FE64(M433PlayerWork3Sub2 *arg0, s32 arg1, s32 arg2, u32 arg3); void fn_1_FE8C(Vec *arg0, u32 arg1, u32 arg2, s32 arg3); +s32 lbl_1_data_C8[6] = { 0, 1, 2, 3, 4, 5 }; float lbl_1_data_E0[0xE] = { 130.0f, 130.0f, @@ -266,12 +324,12 @@ s32 lbl_1_data_150[6][2] = { { 0x3E, 0x3F }, }; s32 lbl_1_data_180[0x11] = { - 0x400061, - 0x400062, - 0x400063, - 0x400064, - 0x400065, - 0x400066, + DATA_MAKE_NUM(DATADIR_M433, 97), + DATA_MAKE_NUM(DATADIR_M433, 98), + DATA_MAKE_NUM(DATADIR_M433, 99), + DATA_MAKE_NUM(DATADIR_M433, 100), + DATA_MAKE_NUM(DATADIR_M433, 101), + DATA_MAKE_NUM(DATADIR_M433, 102), 0, 0, 0, @@ -288,39 +346,39 @@ u32 lbl_1_data_1C4[0x11] = { 0, 2, 3, - 0x400011, - 0x400019, - 0x400021, - 0x400029, - 0x400031, - 0x400039, - 0x400041, - 0x400049, - 0x400051, - 0x400059, + DATA_MAKE_NUM(DATADIR_M433, 0x11), + DATA_MAKE_NUM(DATADIR_M433, 0x19), + DATA_MAKE_NUM(DATADIR_M433, 0x21), + DATA_MAKE_NUM(DATADIR_M433, 0x29), + DATA_MAKE_NUM(DATADIR_M433, 0x31), + DATA_MAKE_NUM(DATADIR_M433, 0x39), + DATA_MAKE_NUM(DATADIR_M433, 0x41), + DATA_MAKE_NUM(DATADIR_M433, 0x49), + DATA_MAKE_NUM(DATADIR_M433, 0x51), + DATA_MAKE_NUM(DATADIR_M433, 0x59), 0x17, 0x18, 0x48, 0x49, }; s32 lbl_1_data_208[0x11] = { - 0x400067, - 0x40006D, - 0x400073, - 0x400079, - 0x40007F, - 0x400085, - 0x40008B, - 0x400091, - 0x400097, - 0x40009D, - 0x4000A3, - 0x4000A9, - 0x4000AF, - 0x4000B5, - 0x4000C1, - 0x4000BB, - 0x4000C7, + DATA_MAKE_NUM(DATADIR_M433, 0x67), + DATA_MAKE_NUM(DATADIR_M433, 0x6D), + DATA_MAKE_NUM(DATADIR_M433, 0x73), + DATA_MAKE_NUM(DATADIR_M433, 0x79), + DATA_MAKE_NUM(DATADIR_M433, 0x7F), + DATA_MAKE_NUM(DATADIR_M433, 0x85), + DATA_MAKE_NUM(DATADIR_M433, 0x8B), + DATA_MAKE_NUM(DATADIR_M433, 0x91), + DATA_MAKE_NUM(DATADIR_M433, 0x97), + DATA_MAKE_NUM(DATADIR_M433, 0x9D), + DATA_MAKE_NUM(DATADIR_M433, 0xA3), + DATA_MAKE_NUM(DATADIR_M433, 0xA9), + DATA_MAKE_NUM(DATADIR_M433, 0xAF), + DATA_MAKE_NUM(DATADIR_M433, 0xB5), + DATA_MAKE_NUM(DATADIR_M433, 0xC1), + DATA_MAKE_NUM(DATADIR_M433, 0xBB), + DATA_MAKE_NUM(DATADIR_M433, 0xC7), }; M433DllPlayerData24CStruct lbl_1_data_24C[0x15] = { { 0, 0.2f, 0.0f, -1.0f, 0x40000001 }, @@ -361,84 +419,6 @@ u32 lbl_1_data_3F0[0xE] = { 0x28, 0x32, }; -char *lbl_1_data_450[6] = { - "itemhook_R", - "itemhook_r", - "itemhook_R", - "itemhook_R", - "itemhook_r", - "itemhook_r", -}; -s32 lbl_1_data_468[9] = { 0, 0, 1, 1, 1, 1, 1, 0, 1 }; -float lbl_1_data_48C[0x12] = { - 0.0f, - 0.6666667f, - 2.1666667f, - 2.0f, - 1.0f, - 7.0000005f, - 1.5000001f, - 1.5000001f, - 3.0000002f, - 0.0f, - 0.0f, - 1e-45f, - 0.0f, - 0.0f, - 1e-45f, - 0.0f, - 0.0f, - 1e-45f, -}; -Vec lbl_1_data_4D4[9] = { - { 0.0f, 0.0f, 1.0f }, - { 0.0f, 1.5f, 1.0f }, - { 236.5f, 0.0f, 1300.0f }, - { 0.0f, 1.5f, 1.0f }, - { 0.0f, 1.8f, 1.0f }, - { 231.0f, 0.0f, 1500.0f }, - { 231.0f, 0.0f, 1000.0f }, - { 0.0f, 1.2f, 1.0f }, - { 0.0f, 0.8f, 1.0f }, -}; -float lbl_1_data_540[9] = { 1.0f, 1.0f, 3.0f, 1.0f, 1.0f, 4.0f, 2.0f, 1.0f, 1.0f }; -s8 lbl_1_data_564 = 0xA; -u16 lbl_1_data_674[6] = { 0, 1, 2, 3, 3, 0 }; -s32 lbl_1_data_680[2] = { 0x61001E, 0x61001F }; -Vec2f lbl_1_data_688[5] = { - { 0.0f, 0.0f }, - { 0.0f, 0.0f }, - { -23.0f, 0.0f }, - { 1.0f, 0.0f }, - { 21.0f, 0.0f }, -}; -Vec2f lbl_1_data_6B0[2] = { { 72.0f, 56.0f }, { 504.0f, 56.0f } }; -M433DllPlayerData6C0Struct lbl_1_data_6C0[0xB] = { - { 0x13000B }, - { 0x13000C }, - { 0x13000D }, - { 0x13000E }, - { 0x13000F }, - { 0x130010 }, - { 0x130011 }, - { 0x130012 }, - { 0x130013 }, - { 0x130014 }, - { 0x130099 }, -}; -s32 lbl_1_data_770[9] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -M433DllPlayerData794Struct lbl_1_data_794[9] = { - { 0, 0, 0 }, - { 0, 0, 0 }, - { 1, 1, 0 }, - { 1, 0, 1 }, - { 1, 0, 1 }, - { 1, 1, 0 }, - { 1, 1, 0 }, - { 1, 0, 1 }, - { 1, 0, 1 }, -}; -u32 lbl_1_data_800[9] = { 0, 1, 2, 1, 1, 2, 1, 1, 1 }; // M433PlayerWork omObjData *lbl_1_bss_7D0[5]; @@ -530,7 +510,7 @@ void fn_1_5B98(omObjData *object) object->model[0] = Hu3DModelCreateFile(lbl_1_data_180[work->unk_04]); } Hu3DModelShadowSet(object->model[0]); - object->model[1] = Hu3DModelCreateFile(0x400008); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 8)); Hu3DModelLayerSet(object->model[1], 1); for (var_r29 = 0; var_r29 < 0x11; var_r29++) { if (work->unk_04 < 0) { @@ -582,13 +562,9 @@ void fn_1_60C0(omObjData *object) float var_f31; float var_f30; - M433PlayerWork *work; - s32 var_r29; - M433PlayerWork *var_r28; - - work = object->data; - var_r29 = 0; - var_r28 = work->unk_14C->data; + M433PlayerWork *work = object->data; + s32 var_r29 = 0; + M433PlayerWork *var_r28 = work->unk_14C->data; work->unk_1C = 0; work->unk_20 = 0; work->unk_28 = 0.0f; @@ -911,6 +887,48 @@ void fn_1_682C(omObjData *object) } } +char *lbl_1_data_450[6] = { + "itemhook_R", + "itemhook_r", + "itemhook_R", + "itemhook_R", + "itemhook_r", + "itemhook_r", +}; +s32 lbl_1_data_468[9] = { 0, 0, 1, 1, 1, 1, 1, 0, 1 }; +float lbl_1_data_48C[0x12] = { + 0.0f, + 0.6666667f, + 2.1666667f, + 2.0f, + 1.0f, + 7.0000005f, + 1.5000001f, + 1.5000001f, + 3.0000002f, + 0.0f, + 0.0f, + 1e-45f, + 0.0f, + 0.0f, + 1e-45f, + 0.0f, + 0.0f, + 1e-45f, +}; +Vec lbl_1_data_4D4[9] = { + { 0.0f, 0.0f, 1.0f }, + { 0.0f, 1.5f, 1.0f }, + { 236.5f, 0.0f, 1300.0f }, + { 0.0f, 1.5f, 1.0f }, + { 0.0f, 1.8f, 1.0f }, + { 231.0f, 0.0f, 1500.0f }, + { 231.0f, 0.0f, 1000.0f }, + { 0.0f, 1.2f, 1.0f }, + { 0.0f, 0.8f, 1.0f }, +}; +float lbl_1_data_540[9] = { 1.0f, 1.0f, 3.0f, 1.0f, 1.0f, 4.0f, 2.0f, 1.0f, 1.0f }; + void fn_1_722C(omObjData *object) { Vec sp8; @@ -958,13 +976,11 @@ void fn_1_74D4(omObjData *object) Vec sp1C; Vec sp10; M433PlayerWork *spC; - s32 sp8; float var_f31; - s32 var_r29; M433PlayerWork *work = object->data; - var_r29 = 1; - sp8 = 0; + s32 var_r29 = 1; + s32 sp8 = 0; spC = work->unk_14C->data; switch (work->unk_74) { case 0: @@ -1293,10 +1309,9 @@ s32 fn_1_8938(u32 var_r27, Vec *var_r29) float var_f28; u32 var_r31; u32 var_r30; - M433PlayerWork *work; for (var_r31 = 0, var_r30 = 0; (var_r30 < 4) && (var_r31 < 2); var_r30++) { - work = lbl_1_bss_7D0[var_r30]->data; + M433PlayerWork *work = lbl_1_bss_7D0[var_r30]->data; if (work->unk_14 != var_r27) { sp2C[var_r31] = work->unk_128; sp2C[var_r31].y = 0.0f; @@ -1343,10 +1358,9 @@ void fn_1_8BD0(omObjData *object) Vec sp8; float var_f31; float var_f30; - s32 var_r29; M433PlayerWork *work = object->data; - var_r29 = 1; + s32 var_r29 = 1; if ((work->unk_30 == 0) && (work->unk_60 == 0)) { if ((work->unk_24 > 0.0f) && (work->unk_34 == 0)) { work->unk_A8 = work->unk_28; @@ -1416,17 +1430,15 @@ void fn_1_8F80(omObjData *object) Vec sp10; float var_f31; float var_f30; - s32 var_r29; - char *var_r28; M433PlayerWork *work = object->data; - var_r29 = work->unk_40; + s32 var_r29 = work->unk_40; { s32 sp8[2] = { 0x6A4, 0x6A5 }; work->unk_3C = 0; work->unk_40 = 0; if (work->unk_04 < 0) { - var_r28 = CharModelHookNameGet(work->unk_00, 4, 0); + char *var_r28 = CharModelHookNameGet(work->unk_00, 4, 0); Hu3DModelObjPosGet(object->model[0], var_r28, &sp10); } else { @@ -1534,272 +1546,260 @@ void fn_1_9688(omObjData *object) { Vec sp2C; Vec sp20; - s32 sp14; - s32 sp10; - s32 spC; - s32 sp8; float var_f31; float var_f30; float var_f29; - M433PlayerWork *work; - M433PlayerWork *var_r29; - work = object->data; - { - s32 sp38[3][3] = { { 3, 4, 6 }, { 3, 4, 6 }, { 3, 4, 7 } }; - s32 sp18[2] = { 0x6AD, 0x6AE }; - s32 sp10[2] = { 0x6A6, 0x6A7 }; - s32 sp8[2] = { 0x6AA, 0x6AB }; - var_r29 = work->unk_14C->data; - work->unk_4C = 0; - work->unk_44 = 0; - work->unk_48 = 0; - if (work->unk_60 == 0) { - switch (work->unk_7C) { - case 0: - if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) - && (work->unk_30 = 0, work->unk_64 = 0, ((work->unk_34 == 0) != 0)) && (work->unk_14 == fn_1_10740(&sp2C)) - && (fn_1_11004(work->unk_14, work->unk_18) != 0) && (fn_1_10FDC() < 3)) { - work->unk_140 = sp2C; - var_f31 = fn_1_10848(); - if ((var_f31 <= 0.8f) && (var_f31 >= 0.02f) && (var_r29->unk_64 == 0)) { - PSVECSubtract(&sp2C, &work->unk_128, &sp20); - sp20.y = 0.0f; - var_f30 = PSVECMag(&sp20); - work->unk_98 = var_f30; - if (var_f30 <= 200.0f) { - if ((var_f31 >= 0.2f) && (var_f30 <= 70.0f) && (var_f31 >= (0.2f + (0.001f * var_f30))) && (fn_1_10FDC() >= 1)) { - work->unk_4C = 1; - } - if ((var_f31 >= 0.02f) && (var_f30 <= 100.0f) && (var_f31 >= (0.02f + (0.001f * var_f30)))) { - work->unk_44 = 1; - } - if ((var_f31 >= 0.1f) && (var_f31 <= 0.3f) && (var_f30 > 100.0f) && (var_f30 <= 200.0f) - && (var_f31 >= (0.1f + (0.0002f * (var_f30 - 100.0f))))) { - work->unk_48 = 1; - } + M433PlayerWork *work = object->data; + s32 sp38[3][3] = { { 3, 4, 6 }, { 3, 4, 6 }, { 3, 4, 7 } }; + s32 sp18[2] = { 0x6AD, 0x6AE }; + s32 sp10[2] = { 0x6A6, 0x6A7 }; + s32 sp8[2] = { 0x6AA, 0x6AB }; + M433PlayerWork *var_r29 = work->unk_14C->data; + + work->unk_4C = 0; + work->unk_44 = 0; + work->unk_48 = 0; + if (work->unk_60 == 0) { + switch (work->unk_7C) { + case 0: + if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) + && (work->unk_30 = 0, work->unk_64 = 0, ((work->unk_34 == 0) != 0)) && (work->unk_14 == fn_1_10740(&sp2C)) + && (fn_1_11004(work->unk_14, work->unk_18) != 0) && (fn_1_10FDC() < 3)) { + work->unk_140 = sp2C; + var_f31 = fn_1_10848(); + if ((var_f31 <= 0.8f) && (var_f31 >= 0.02f) && (var_r29->unk_64 == 0)) { + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + sp20.y = 0.0f; + var_f30 = PSVECMag(&sp20); + work->unk_98 = var_f30; + if (var_f30 <= 200.0f) { + if ((var_f31 >= 0.2f) && (var_f30 <= 70.0f) && (var_f31 >= (0.2f + (0.001f * var_f30))) && (fn_1_10FDC() >= 1)) { + work->unk_4C = 1; } - } - if ((work->unk_1C & 0x100) != 0) { - work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; - if (work->unk_4C != 0) { - work->unk_7C = 1; - var_f31 -= 0.12f; - work->unk_98 *= 0.014285714f; - fn_1_B4D4(object, 0xF); - fn_1_10B20(0.0f, &sp2C); + if ((var_f31 >= 0.02f) && (var_f30 <= 100.0f) && (var_f31 >= (0.02f + (0.001f * var_f30)))) { + work->unk_44 = 1; } - else if (work->unk_44 != 0) { - work->unk_7C = 2; - var_f31 -= 0.03f; - work->unk_98 *= 0.01f; - fn_1_B4D4(object, 0xE); - fn_1_10B20(0.0f, &sp2C); + if ((var_f31 >= 0.1f) && (var_f31 <= 0.3f) && (var_f30 > 100.0f) && (var_f30 <= 200.0f) + && (var_f31 >= (0.1f + (0.0002f * (var_f30 - 100.0f))))) { + work->unk_48 = 1; } - else if (work->unk_48 != 0) { - work->unk_7C = 3; - var_f31 -= 0.03f; - work->unk_98 *= 0.005f; - fn_1_B4D4(object, 7); - fn_1_D888(&work->unk_128, 0.75f); - HuAudFXPlay(sp8[work->unk_14]); - } - else { - if (fn_1_10FDC() >= 1) { - fn_1_B4D4(object, 9); - } - else { - fn_1_B4D4(object, 6); - } - work->unk_7C = 4; - } - if (work->unk_7C < 4) { - work->unk_64 = 1; - if (var_f31 < 0.0f) { - var_f31 = 0.0f; - } - work->unk_90 = 60.0f * var_f31; - } - PSVECSubtract(&sp2C, &work->unk_128, &sp20); - work->unk_A8 = atan2d(sp20.x, sp20.z); - work->unk_AC = 0.2f; - work->unk_B0 = 0.0f; - work->unk_30 = 1; - work->unk_88 = 0; } } + if ((work->unk_1C & 0x100) != 0) { + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + if (work->unk_4C != 0) { + work->unk_7C = 1; + var_f31 -= 0.12f; + work->unk_98 *= 0.014285714f; + fn_1_B4D4(object, 0xF); + fn_1_10B20(0.0f, &sp2C); + } + else if (work->unk_44 != 0) { + work->unk_7C = 2; + var_f31 -= 0.03f; + work->unk_98 *= 0.01f; + fn_1_B4D4(object, 0xE); + fn_1_10B20(0.0f, &sp2C); + } + else if (work->unk_48 != 0) { + work->unk_7C = 3; + var_f31 -= 0.03f; + work->unk_98 *= 0.005f; + fn_1_B4D4(object, 7); + fn_1_D888(&work->unk_128, 0.75f); + HuAudFXPlay(sp8[work->unk_14]); + } + else { + if (fn_1_10FDC() >= 1) { + fn_1_B4D4(object, 9); + } + else { + fn_1_B4D4(object, 6); + } + work->unk_7C = 4; + } + if (work->unk_7C < 4) { + work->unk_64 = 1; + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + work->unk_90 = 60.0f * var_f31; + } + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + work->unk_A8 = atan2d(sp20.x, sp20.z); + work->unk_AC = 0.2f; + work->unk_B0 = 0.0f; + work->unk_30 = 1; + work->unk_88 = 0; + } + } + break; + case 1: + if (work->unk_88 >= work->unk_90) { + if (work->unk_64 != 0) { + if (fn_1_10FDC() >= 2) { + sp2C.x = 350.0f; + sp2C.y = 11.0f; + sp2C.z = 0.0f; + if (work->unk_14 != 0) { + sp2C.x *= -1.0f; + } + } + else { + sp2C = var_r29->unk_128; + sp2C.y = 11.0f; + sp2C.x *= 0.5f; + } + var_f29 = frandmod(0x168); + var_f30 = 200.0f * work->unk_98; + sp2C.x += var_f30 * sind(var_f29); + sp2C.z += var_f30 * cosd(var_f29); + if (fn_1_10FDC() < 2) { + fn_1_10130(&sp2C, work->unk_14); + } + fn_1_FE8C(&sp2C, sp38[0][fn_1_10FDC()], work->unk_14, work->unk_18); + fn_1_D888(&work->unk_128, 0.0f); + HuAudFXPlay(sp10[work->unk_14]); + } + work->unk_64 = 0; + fn_1_B4D4(object, 9); + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + work->unk_A8 = atan2d(sp20.x, sp20.z); + work->unk_AC = 0.1f; + work->unk_90 = 0x186A0; + work->unk_88 = 0; break; - case 1: - if (work->unk_88 >= work->unk_90) { - if (work->unk_64 != 0) { - if (fn_1_10FDC() >= 2) { + } + if (work->unk_90 < 0x2710) { + work->unk_134.x = 0.07f * (work->unk_140.x - work->unk_128.x); + work->unk_134.z = 0.07f * (work->unk_140.z - work->unk_128.z); + if (work->unk_64 == 0) { + work->unk_90 = 0; + } + } + else { + work->unk_134.x *= 0.7f; + work->unk_134.z *= 0.7f; + if (fn_1_B6E0(object) != 0) { + work->unk_7C = 0; + } + } + break; + case 2: + if (work->unk_88 >= work->unk_90) { + if (work->unk_64 != 0) { + switch (fn_1_10FDC()) { + case 0: + sp2C = var_r29->unk_128; + sp2C.y = 11.0f; + break; + case 1: + sp2C = var_r29->unk_128; + sp2C.y = 11.0f; + sp2C.x *= 0.5f; + break; + case 2: + default: sp2C.x = 350.0f; sp2C.y = 11.0f; sp2C.z = 0.0f; if (work->unk_14 != 0) { sp2C.x *= -1.0f; } - } - else { - sp2C = var_r29->unk_128; - sp2C.y = 11.0f; - sp2C.x *= 0.5f; - } - var_f29 = frandmod(0x168); - var_f30 = 200.0f * work->unk_98; - sp2C.x += var_f30 * sind(var_f29); - sp2C.z += var_f30 * cosd(var_f29); - if (fn_1_10FDC() < 2) { - fn_1_10130(&sp2C, work->unk_14); - } - fn_1_FE8C(&sp2C, sp38[0][fn_1_10FDC()], work->unk_14, work->unk_18); - fn_1_D888(&work->unk_128, 0.0f); + break; + } + var_f29 = frandmod(0x168); + var_f30 = 200.0f * work->unk_98; + sp2C.x += var_f30 * sind(var_f29); + sp2C.z += var_f30 * cosd(var_f29); + if (fn_1_10FDC() < 2) { + fn_1_10130(&sp2C, work->unk_14); + } + fn_1_FE8C(&sp2C, sp38[1][fn_1_10FDC()], work->unk_14, work->unk_18); + fn_1_D888(&work->unk_128, 0.0f); + if (fn_1_10FDC() < 1) { + HuAudFXPlay(sp18[work->unk_14]); + } + else { HuAudFXPlay(sp10[work->unk_14]); } - work->unk_64 = 0; - fn_1_B4D4(object, 9); - PSVECSubtract(&sp2C, &work->unk_128, &sp20); - work->unk_A8 = atan2d(sp20.x, sp20.z); - work->unk_AC = 0.1f; - work->unk_90 = 0x186A0; - work->unk_88 = 0; - break; - } - if (work->unk_90 < 0x2710) { - work->unk_134.x = 0.07f * (work->unk_140.x - work->unk_128.x); - work->unk_134.z = 0.07f * (work->unk_140.z - work->unk_128.z); - if (work->unk_64 == 0) { - work->unk_90 = 0; - } - } - else { - work->unk_134.x *= 0.7f; - work->unk_134.z *= 0.7f; - if (fn_1_B6E0(object) != 0) { - work->unk_7C = 0; - } } + work->unk_64 = 0; + fn_1_B4D4(object, 6); + PSVECSubtract(&sp2C, &work->unk_128, &sp20); + work->unk_A8 = atan2d(sp20.x, sp20.z); + work->unk_AC = 0.1f; + work->unk_90 = 0x186A0; + work->unk_88 = 0; break; - case 2: - if (work->unk_88 >= work->unk_90) { - if (work->unk_64 != 0) { - switch (fn_1_10FDC()) { - case 0: - sp2C = var_r29->unk_128; - sp2C.y = 11.0f; - break; - case 1: - sp2C = var_r29->unk_128; - sp2C.y = 11.0f; - sp2C.x *= 0.5f; - break; - case 2: - default: - sp2C.x = 350.0f; - sp2C.y = 11.0f; - sp2C.z = 0.0f; - if (work->unk_14 != 0) { - sp2C.x *= -1.0f; - } - break; - } - var_f29 = frandmod(0x168); - var_f30 = 200.0f * work->unk_98; - sp2C.x += var_f30 * sind(var_f29); - sp2C.z += var_f30 * cosd(var_f29); - if (fn_1_10FDC() < 2) { - fn_1_10130(&sp2C, work->unk_14); - } - fn_1_FE8C(&sp2C, sp38[1][fn_1_10FDC()], work->unk_14, work->unk_18); - fn_1_D888(&work->unk_128, 0.0f); - if (fn_1_10FDC() < 1) { - HuAudFXPlay(sp18[work->unk_14]); - } - else { - HuAudFXPlay(sp10[work->unk_14]); - } - } - work->unk_64 = 0; - fn_1_B4D4(object, 6); - PSVECSubtract(&sp2C, &work->unk_128, &sp20); - work->unk_A8 = atan2d(sp20.x, sp20.z); - work->unk_AC = 0.1f; - work->unk_90 = 0x186A0; - work->unk_88 = 0; + } + if (work->unk_90 < 0x2710) { + work->unk_134.x = 0.07f * (work->unk_140.x - work->unk_128.x); + work->unk_134.z = 0.07f * (work->unk_140.z - work->unk_128.z); + if (work->unk_64 == 0) { + work->unk_90 = 0; break; } - if (work->unk_90 < 0x2710) { - work->unk_134.x = 0.07f * (work->unk_140.x - work->unk_128.x); - work->unk_134.z = 0.07f * (work->unk_140.z - work->unk_128.z); - if (work->unk_64 == 0) { - work->unk_90 = 0; - break; - } - } - else { - work->unk_134.x *= 0.7f; - work->unk_134.z *= 0.7f; - if (fn_1_B6E0(object) != 0) { - work->unk_7C = 0; - break; - } - } - break; - case 3: - if (work->unk_88 >= work->unk_90) { - if (work->unk_64 != 0) { - sp2C = work->unk_128; - sp2C.y = 11.0f; - PSVECSubtract(&var_r29->unk_128, &work->unk_128, &sp20); - var_f29 = 180.0 + (atan2d(sp20.x, sp20.z)); - var_f29 += frandmod(0xB4) - 90.0f; - var_f30 = 200.0f * work->unk_98; - sp2C.x += var_f30 * sind(var_f29); - sp2C.z += var_f30 * cosd(var_f29); - fn_1_10130(&sp2C, work->unk_14); - fn_1_FE8C(&sp2C, sp38[2][fn_1_10FDC()], work->unk_14, work->unk_18); - if (fn_1_10FDC() < 1) { - HuAudFXPlay(sp18[work->unk_14]); - } - else { - HuAudFXPlay(sp10[work->unk_14]); - } - } - work->unk_64 = 0; - work->unk_90 = 0x186A0; - work->unk_88 = 0; - fn_1_D888(&work->unk_128, 1.3f); - break; - } - if (work->unk_90 < 0x2710) { - work->unk_134.x = 0.15f * (work->unk_140.x - work->unk_128.x); - work->unk_134.z = 0.15f * (work->unk_140.z - work->unk_128.z); - break; - } - work->unk_134.x *= 0.95f; - work->unk_134.z *= 0.95f; - if (fn_1_B6E0(object) != 0) { - fn_1_B4D4(object, 8); - work->unk_7C = 4; - } - break; - case 4: - work->unk_134.x *= 0.95f; - work->unk_134.z *= 0.95f; + } + else { + work->unk_134.x *= 0.7f; + work->unk_134.z *= 0.7f; if (fn_1_B6E0(object) != 0) { work->unk_7C = 0; + break; } + } + break; + case 3: + if (work->unk_88 >= work->unk_90) { + if (work->unk_64 != 0) { + sp2C = work->unk_128; + sp2C.y = 11.0f; + PSVECSubtract(&var_r29->unk_128, &work->unk_128, &sp20); + var_f29 = 180.0 + (atan2d(sp20.x, sp20.z)); + var_f29 += frandmod(0xB4) - 90.0f; + var_f30 = 200.0f * work->unk_98; + sp2C.x += var_f30 * sind(var_f29); + sp2C.z += var_f30 * cosd(var_f29); + fn_1_10130(&sp2C, work->unk_14); + fn_1_FE8C(&sp2C, sp38[2][fn_1_10FDC()], work->unk_14, work->unk_18); + if (fn_1_10FDC() < 1) { + HuAudFXPlay(sp18[work->unk_14]); + } + else { + HuAudFXPlay(sp10[work->unk_14]); + } + } + work->unk_64 = 0; + work->unk_90 = 0x186A0; + work->unk_88 = 0; + fn_1_D888(&work->unk_128, 1.3f); break; - } + } + if (work->unk_90 < 0x2710) { + work->unk_134.x = 0.15f * (work->unk_140.x - work->unk_128.x); + work->unk_134.z = 0.15f * (work->unk_140.z - work->unk_128.z); + break; + } + work->unk_134.x *= 0.95f; + work->unk_134.z *= 0.95f; + if (fn_1_B6E0(object) != 0) { + fn_1_B4D4(object, 8); + work->unk_7C = 4; + } + break; + case 4: + work->unk_134.x *= 0.95f; + work->unk_134.z *= 0.95f; + if (fn_1_B6E0(object) != 0) { + work->unk_7C = 0; + } + break; } } } -struct _m2c_reg_fn_1_A618 { - M433PlayerWork *var_r31; - M433PlayerWork *sp8; -}; - void fn_1_A618(omObjData *object) { Vec sp20; @@ -1809,448 +1809,330 @@ void fn_1_A618(omObjData *object) float var_f30; float var_f29; M433PlayerWork *work = object->data; - { - s32 spC[2] = { 0x6A8, 0x6A9 }; - sp8 = work->unk_14C->data; - work->unk_54 = 0; - work->unk_5C = 0; - switch (work->unk_80) { - case 0: - if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) - && (work->unk_30 = 0, work->unk_68 = 0, ((work->unk_34 == 0) != 0)) && (fn_1_11004(work->unk_14, work->unk_18) != 0) - && (fn_1_10FDC() < 3) && (work->unk_14 == fn_1_10740(&sp20))) { + s32 spC[2] = { 0x6A8, 0x6A9 }; + sp8 = work->unk_14C->data; + work->unk_54 = 0; + work->unk_5C = 0; + switch (work->unk_80) { + case 0: + if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) && (work->unk_30 = 0, work->unk_68 = 0, ((work->unk_34 == 0) != 0)) + && (fn_1_11004(work->unk_14, work->unk_18) != 0) && (fn_1_10FDC() < 3) && (work->unk_14 == fn_1_10740(&sp20))) { + PSVECSubtract(&sp20, &work->unk_128, &sp14); + sp14.y = 0.0f; + if (!(PSVECMag(&sp14) > 500.0f)) { + fn_1_10B20(0.5f, &sp20); + sp20.y -= lbl_1_data_E0[work->unk_00]; PSVECSubtract(&sp20, &work->unk_128, &sp14); sp14.y = 0.0f; - if (!(PSVECMag(&sp14) > 500.0f)) { - fn_1_10B20(0.5f, &sp20); - sp20.y -= lbl_1_data_E0[work->unk_00]; - PSVECSubtract(&sp20, &work->unk_128, &sp14); - sp14.y = 0.0f; - if ((PSVECMag(&sp14) < 200.0f) && (sp20.y >= 50.0f)) { - work->unk_5C = 1; - } - if (((work->unk_1C & 0x200) != 0) && (work->unk_5C != 0)) { - work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; - fn_1_B4D4(object, 0xA); - work->unk_80 = 1; - work->unk_88 = 0; - work->unk_30 = 1; - if (work->unk_5C != 0) { - var_f30 = 0.5f; - work->unk_124 = (2.0f * -sp20.y) / (var_f30 * var_f30); - work->unk_134.y = 0.016666668f * (-work->unk_124 * var_f30); - PSVECSubtract(&sp20, &work->unk_128, &sp14); - sp14.y = 0.0f; - work->unk_134.x = 0.016666668f * (sp14.x / 0.5f); - work->unk_134.z = 0.016666668f * (sp14.z / 0.5f); - if (work->unk_14 != 0) { - var_f29 = -90.0f; - } - else { - var_f29 = 90.0f; - } - work->unk_A8 = var_f29; - work->unk_AC = 0.2f; - work->unk_B0 = 0.0f; - work->unk_68 = 1; + if ((PSVECMag(&sp14) < 200.0f) && (sp20.y >= 50.0f)) { + work->unk_5C = 1; + } + if (((work->unk_1C & 0x200) != 0) && (work->unk_5C != 0)) { + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + fn_1_B4D4(object, 0xA); + work->unk_80 = 1; + work->unk_88 = 0; + work->unk_30 = 1; + if (work->unk_5C != 0) { + var_f30 = 0.5f; + work->unk_124 = (2.0f * -sp20.y) / (var_f30 * var_f30); + work->unk_134.y = 0.016666668f * (-work->unk_124 * var_f30); + PSVECSubtract(&sp20, &work->unk_128, &sp14); + sp14.y = 0.0f; + work->unk_134.x = 0.016666668f * (sp14.x / 0.5f); + work->unk_134.z = 0.016666668f * (sp14.z / 0.5f); + if (work->unk_14 != 0) { + var_f29 = -90.0f; } else { - work->unk_134.y = 14.833334f; + var_f29 = 90.0f; } - work->unk_60 = 1; - fn_1_D888(&work->unk_128, 0.75f); + work->unk_A8 = var_f29; + work->unk_AC = 0.2f; + work->unk_B0 = 0.0f; + work->unk_68 = 1; } + else { + work->unk_134.y = 14.833334f; + } + work->unk_60 = 1; + fn_1_D888(&work->unk_128, 0.75f); } } - break; - case 1: - work->unk_134.y += 0.016666668f * (0.016666668f * work->unk_124); - if (work->unk_68 != 0) { - var_f31 = (0.016666668f * work->unk_88) - 0.35f; - if ((var_f31 >= 0.0f) && (var_f31 < 0.4)) { - work->unk_54 = 1; - if ((work->unk_1C & 0x100) != 0) { - fn_1_B4D4(object, 0xB); - fn_1_10260(work->unk_28, work->unk_24, work->unk_14, work->unk_54, &sp20); - fn_1_FE8C(&sp20, 5, work->unk_14, work->unk_18); - work->unk_68 = 0; - work->unk_54 = 0; - HuAudFXPlay(spC[work->unk_14]); - } - } - else if (var_f31 > 0.0f) { + } + break; + case 1: + work->unk_134.y += 0.016666668f * (0.016666668f * work->unk_124); + if (work->unk_68 != 0) { + var_f31 = (0.016666668f * work->unk_88) - 0.35f; + if ((var_f31 >= 0.0f) && (var_f31 < 0.4)) { + work->unk_54 = 1; + if ((work->unk_1C & 0x100) != 0) { + fn_1_B4D4(object, 0xB); + fn_1_10260(work->unk_28, work->unk_24, work->unk_14, work->unk_54, &sp20); + fn_1_FE8C(&sp20, 5, work->unk_14, work->unk_18); work->unk_68 = 0; work->unk_54 = 0; + HuAudFXPlay(spC[work->unk_14]); } - fn_1_10260(work->unk_28, work->unk_24, work->unk_14, work->unk_54, &sp20); } - if (work->unk_128.y <= 0.0f) { - fn_1_D888(&work->unk_128, 0.75f); - work->unk_30 = 0; - work->unk_80 = 0; - work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; - work->unk_60 = 0; + else if (var_f31 > 0.0f) { work->unk_68 = 0; + work->unk_54 = 0; } - break; + fn_1_10260(work->unk_28, work->unk_24, work->unk_14, work->unk_54, &sp20); + } + if (work->unk_128.y <= 0.0f) { + fn_1_D888(&work->unk_128, 0.75f); + work->unk_30 = 0; + work->unk_80 = 0; + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + work->unk_60 = 0; + work->unk_68 = 0; + } + break; + } +} + +void fn_1_AB88(omObjData *object) +{ + Vec sp1C; + Vec sp10; + float var_f29; + float var_f28; + + M433PlayerWork *work = object->data; + s32 var_r30 = 0; + s32 sp8[2] = { 0x6A8, 0x6A9 }; + M433PlayerWork *var_r28 = work->unk_14C->data; + + work->unk_58 = 0; + switch (work->unk_78) { + case 0: + if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) && (work->unk_30 = 0, work->unk_68 = 0, ((work->unk_34 == 0) != 0)) + && (work->unk_14 == fn_1_107B0(&sp1C)) && (fn_1_11060(work->unk_14) == 0)) { + float var_f31 = work->unk_128.x; + float var_f30; + if (work->unk_14 == 0) { + var_f31 *= -1.0f; + } + if (!(var_f31 > 230.0f) && (fn_1_10EA4() != 2)) { + if (fn_1_10D24(&sp1C) != 0) { + var_r30 = 1; + } + if (var_r30 != 0) { + var_f31 = sp1C.z - work->unk_128.z; + if (var_f31 > 100.0f) { + var_f31 = 100.0f; + } + else if (var_f31 < -100.0f) { + var_f31 = -100.0f; + } + else { + work->unk_58 = 1; + } + } + if ((work->unk_1C & 0x200) != 0) { + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + fn_1_B4D4(object, 0xA); + work->unk_78 = 1; + work->unk_88 = 0; + work->unk_30 = 1; + if (work->unk_14 != 0) { + var_f28 = -90.0f; + } + else { + var_f28 = 90.0f; + } + work->unk_A8 = var_f28; + work->unk_AC = 0.2f; + work->unk_B0 = 0.0f; + fn_1_D888(&work->unk_128, 0.75f); + var_f30 = 0.5f; + work->unk_124 = (2.0f * -(350.0f - lbl_1_data_E0[work->unk_00])) / (var_f30 * var_f30); + work->unk_134.y = 0.016666668f * (-work->unk_124 * var_f30); + work->unk_134.x = 0.016666668f * (-work->unk_128.x / 0.75f); + if (var_r30 != 0) { + work->unk_134.z = 0.016666668f * (var_f31 / 0.5f); + } + work->unk_60 = 1; + work->unk_58 = 0; + } + } + } + break; + case 1: + work->unk_134.y += 0.016666668f * (0.016666668f * work->unk_124); + if ((work->unk_14 == fn_1_10740(&sp1C)) && (fn_1_10FDC() == 0)) { + fn_1_10B20(0.0f, &sp1C); + if ((sp1C.x * work->unk_128.x) > 0.0f) { + sp1C.y = work->unk_128.y; + PSVECSubtract(&sp1C, &work->unk_128, &sp10); + if (PSVECMag(&sp10) < 60.000004f) { + if (frandmod(0x64) < 0x1E) { + fn_1_10740(&sp1C); + sp1C.x *= -0.5f; + fn_1_FE8C(&sp1C, 5, work->unk_14, work->unk_18); + HuAudFXPlay(sp8[work->unk_14]); + } + else { + fn_1_10740(&sp1C); + var_f29 = frandmod(0x168); + sp1C.x += 100.0 * (2.0 * sind(var_f29)); + sp1C.z += 100.0 * (2.0 * cosd(var_f29)); + fn_1_10130(&sp1C, work->unk_14); + fn_1_FE8C(&sp1C, 8, work->unk_14, work->unk_18); + HuAudFXPlay(sp8[work->unk_14]); + } + fn_1_B4D4(object, 0xD); + var_r28->unk_64 = 0; + } + } + } + if (work->unk_128.y <= 0.0f) { + fn_1_D888(&work->unk_128, 0.75f); + work->unk_30 = 0; + work->unk_78 = 0; + work->unk_134.x = work->unk_134.y = work->unk_134.z = 0.0f; + work->unk_60 = 0; + } + break; + } +} + +void fn_1_B194(omObjData *object) +{ + Vec sp8; + float var_f31; + M433PlayerWork *var_r31; + M433PlayerWork *var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + for (var_r27 = 0; var_r27 < 2; var_r27++) { + for (var_r29 = 0; var_r29 < 4; var_r29++) { + var_r31 = lbl_1_bss_7D0[var_r29]->data; + for (var_r28 = 0; var_r28 < 4; var_r28++) { + if (var_r29 != var_r28) { + var_r30 = lbl_1_bss_7D0[var_r28]->data; + PSVECSubtract(&var_r31->unk_128, &var_r30->unk_128, &sp8); + sp8.y = 0.0f; + var_f31 = PSVECMag(&sp8); + if (var_f31 < (var_r31->unk_120 + var_r30->unk_120)) { + if (var_f31 > 0.0f) { + var_f31 = 0.5f * ((var_r31->unk_120 + var_r30->unk_120) - var_f31); + } + else { + var_f31 = 0.5f * (var_r31->unk_120 + var_r30->unk_120); + sp8.x = frandmod(0x3E8) - 0x1F4; + sp8.z = frandmod(0x3E8) - 0x1F4; + } + PSVECNormalize(&sp8, &sp8); + PSVECScale(&sp8, &sp8, var_f31); + PSVECAdd(&var_r31->unk_128, &sp8, &var_r31->unk_128); + PSVECSubtract(&var_r30->unk_128, &sp8, &var_r30->unk_128); + } + } + } + if (var_r31->unk_128.y < 0.0f) { + var_r31->unk_128.y = 0.0f; + } + if ((var_r31->unk_128.z - var_r31->unk_120) < -500.0f) { + var_r31->unk_128.z = -500.0f + var_r31->unk_120; + } + else if ((var_r31->unk_128.z + var_r31->unk_120) > 500.0f) { + var_r31->unk_128.z = 500.0f - var_r31->unk_120; + } + if (var_r31->unk_14 == 0) { + var_r31->unk_128.x *= -1.0f; + } + if ((var_r31->unk_128.x - var_r31->unk_120) < 20.0f) { + var_r31->unk_128.x = 20.0f + var_r31->unk_120; + } + else if ((60.000004f + var_r31->unk_128.x) > 800.0f) { + var_r31->unk_128.x = 740.0f; + } + if (var_r31->unk_14 == 0) { + var_r31->unk_128.x *= -1.0f; + } } } } -// void fn_1_AB88(omObjData *object) -// { -// Vec sp1C; /* compiler-managed */ -// Vec sp10; -// s32 spC; -// s32 sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// void *var_r31; -// s32 var_r30; -// omObjData *var_r29; -// void *var_r28; -// s32 temp_r0; +void fn_1_B4D4(omObjData *object, u32 arg1) +{ + M433PlayerWork *work = object->data; + if ((work->unk_0C != arg1) && (arg1 < 0x15)) { + float var_f31 = 60.0f * lbl_1_data_24C[arg1].unk_04; + if (work->unk_0C < 0) { + var_f31 = 0.0f; + } + work->unk_0C = arg1; + if (work->unk_04 < 0) { + CharModelMotionShiftSet( + work->unk_00, object->motion[lbl_1_data_24C[arg1].unk_00], 60.0f * lbl_1_data_24C[arg1].unk_08, var_f31, lbl_1_data_24C[arg1].unk_10); + } + else { + Hu3DMotionShiftSet(object->model[0], object->motion[lbl_1_data_24C[arg1].unk_00], 60.0f * lbl_1_data_24C[arg1].unk_08, var_f31, + lbl_1_data_24C[arg1].unk_10); + } + if (lbl_1_data_24C[arg1].unk_0C >= 0.0f) { + Hu3DMotionShiftStartEndSet(object->model[0], 60.0f * lbl_1_data_24C[arg1].unk_08, 60.0f * lbl_1_data_24C[arg1].unk_0C); + } + work->unk_10 = 0; + } +} -// var_r29 = object; -// var_r31 = var_r29->data; -// var_r30 = 0; -// sp8 = lbl_1_rodata_5A0.unk_00; -// spC = lbl_1_rodata_5A0.unk_04; -// var_r28 = var_r31->unk_14C->unk_5C; -// var_r31->unk_58 = 0; -// temp_r0 = var_r31->unk_78; -// switch (temp_r0) { -// case 0: -// if ((var_r31->unk_7C == 0) && (var_r31->unk_78 == 0) && (var_r31->unk_80 == 0) -// && (var_r31->unk_30 = 0, var_r31->unk_68 = 0, ((var_r31->unk_34 == 0) != 0)) && (var_r31->unk_14 == fn_1_107B0(&sp1C)) -// && (fn_1_11060(var_r31->unk_14) == 0)) { -// var_f31 = var_r31->unk_128; -// if (var_r31->unk_14 == 0) { -// var_f31 *= -1.0f; -// } -// if (!(var_f31 > 230.0f) && (fn_1_10EA4() != 2)) { -// if (fn_1_10D24(&sp1C) != 0) { -// var_r30 = 1; -// } -// if (var_r30 != 0) { -// var_f31 = sp1C.z - var_r31->unk_130; -// if (var_f31 > 100.0f) { -// var_f31 = 100.0f; -// } -// else if (var_f31 < -100.0f) { -// var_f31 = -100.0f; -// } -// else { -// var_r31->unk_58 = 1; -// } -// } -// if ((var_r31->unk_1C & 0x200) != 0) { -// var_r31->unk_13C = 0.0f; -// var_r31->unk_138 = 0.0f; -// var_r31->unk_134 = 0.0f; -// fn_1_B4D4(var_r29, 0xA); -// var_r31->unk_78 = 1; -// var_r31->unk_88 = 0; -// var_r31->unk_30 = 1; -// if (var_r31->unk_14 != 0) { -// var_f28 = -90.0f; -// } -// else { -// var_f28 = 90.0f; -// } -// var_r31->unk_A8 = var_f28; -// var_r31->unk_AC = 0.2f; -// var_r31->unk_B0 = 0.0f; -// fn_1_D888(&var_r31->unk_128, 0.75f); -// var_f30 = 0.5f; -// var_r31->unk_124 = (2.0f * -(350.0f - lbl_1_data_E0[var_r31->unk_00])) / (0.5f * 0.5f); -// var_r31->unk_138 = 0.016666668f * (-var_r31->unk_124 * 0.5f); -// var_r31->unk_134 = 0.016666668f * (-var_r31->unk_128 / 0.75f); -// if (var_r30 != 0) { -// var_r31->unk_13C = 0.016666668f * (var_f31 / 0.5f); -// } -// var_r31->unk_60 = 1; -// var_r31->unk_58 = 0; -// return; -// } -// } -// } -// else { -// return; -// } -// break; -// case 1: -// var_r31->unk_138 = var_r31->unk_138 + (0.016666668f * (0.016666668f * var_r31->unk_124)); -// if ((var_r31->unk_14 == fn_1_10740(&sp1C)) && (fn_1_10FDC() == 0)) { -// fn_1_10B20(0.0f, &sp1C); -// if ((sp1C * var_r31->unk_128) > 0.0f) { -// sp1C.y = var_r31->unk_12C; -// PSVECSubtract(&sp1C, &var_r31->unk_128, &sp10); -// if (PSVECMag(&sp10) < 60.000004f) { -// if (frandmod(0x64) < 0x1E) { -// fn_1_10740(&sp1C); -// sp1C = sp1C * -0.5f; -// fn_1_FE8C(&sp1C, 5, var_r31->unk_14, var_r31->unk_18); -// HuAudFXPlay((&sp8)[var_r31->unk_14]); -// } -// else { -// fn_1_10740(&sp1C); -// var_f29 = frandmod(0x168); -// sp1C = sp1C + (100.0 * (2.0 * sind(var_f29))); -// sp1C.z = sp1C.z + (100.0 * (2.0 * cosd(var_f29))); -// fn_1_10130(&sp1C, var_r31->unk_14); -// fn_1_FE8C(&sp1C, 8, var_r31->unk_14, var_r31->unk_18); -// HuAudFXPlay((&sp8)[var_r31->unk_14]); -// } -// fn_1_B4D4(var_r29, 0xD); -// var_r28->unk_64 = 0; -// } -// } -// } -// if (var_r31->unk_12C <= 0.0f) { -// fn_1_D888(&var_r31->unk_128, 0.75f); -// var_r31->unk_30 = 0; -// var_r31->unk_78 = 0; -// var_r31->unk_13C = 0.0f; -// var_r31->unk_138 = 0.0f; -// var_r31->unk_134 = 0.0f; -// var_r31->unk_60 = 0; -// } -// break; -// } -// } +s32 fn_1_B6E0(omObjData *object) +{ + M433PlayerWork *work = object->data; + s32 var_r29 = 0; + if (work->unk_04 < 0) { + if (((CharModelMotionEndCheck(work->unk_00) != 0) || (work->unk_10 != 0)) && (CharModelMotionShiftIDGet(work->unk_00) < 0)) { + var_r29 = 1; + } + } + else if (((Hu3DMotionEndCheck(object->model[0]) != 0) || (work->unk_10 != 0)) && (Hu3DMotionShiftIDGet(object->model[0]) < 0)) { + var_r29 = 1; + } + return var_r29; +} -// void fn_1_B194(omObjData *object) -// { -// Vec sp8; -// float var_f31; -// void *var_r31; -// void *var_r30; -// s32 var_r29; -// s32 var_r28; -// s32 var_r27; +s32 fn_1_B7AC(omObjData *object) +{ + M433PlayerWork *work = object->data; + s32 var_r30 = 0; + if (work->unk_04 < 0) { + if (CharModelMotionShiftIDGet(work->unk_00) < 0) { + var_r30 = 1; + } + } + else if (Hu3DMotionShiftIDGet(object->model[0]) < 0) { + var_r30 = 1; + } + return var_r30; +} -// for (var_r27 = 0; var_r27 < 2; var_r27++) { -// for (var_r29 = 0; var_r29 < 4; var_r29++) { -// var_r31 = lbl_1_bss_7D0[var_r29]->data; -// for (var_r28 = 0; var_r28 < 4; var_r28++) { -// if (var_r29 != var_r28) { -// var_r30 = lbl_1_bss_7D0[var_r28]->data; -// PSVECSubtract(&var_r31->unk_128, var_r30 + 0x128, &sp8); -// sp8.y = 0.0f; -// var_f31 = PSVECMag(&sp8); -// if (var_f31 < (var_r31->unk_120 + var_r30->unk_120)) { -// if (var_f31 > 0.0f) { -// var_f31 = 0.5f * ((var_r31->unk_120 + var_r30->unk_120) - var_f31); -// } -// else { -// var_f31 = 0.5f * (var_r31->unk_120 + var_r30->unk_120); -// sp8 = frandmod(0x3E8) - 0x1F4; -// sp8.z = frandmod(0x3E8) - 0x1F4; -// } -// PSVECNormalize(&sp8, &sp8); -// PSVECScale(&sp8, &sp8, var_f31); -// PSVECAdd(&var_r31->unk_128, &sp8, &var_r31->unk_128); -// PSVECSubtract(var_r30 + 0x128, &sp8, var_r30 + 0x128); -// } -// } -// } -// if (var_r31->unk_12C < 0.0f) { -// var_r31->unk_12C = 0.0f; -// } -// if ((var_r31->unk_130 - var_r31->unk_120) < -500.0f) { -// var_r31->unk_130 = -500.0f + var_r31->unk_120; -// } -// else if ((var_r31->unk_130 + var_r31->unk_120) > 500.0f) { -// var_r31->unk_130 = 500.0f - var_r31->unk_120; -// } -// if (var_r31->unk_14 == 0) { -// var_r31->unk_128 = var_r31->unk_128 * -1.0f; -// } -// if ((var_r31->unk_128 - var_r31->unk_120) < 20.0f) { -// var_r31->unk_128 = 20.0f + var_r31->unk_120; -// } -// else if ((60.000004f + var_r31->unk_128) > 800.0f) { -// var_r31->unk_128 = 740.0f; -// } -// if (var_r31->unk_14 == 0) { -// var_r31->unk_128 = var_r31->unk_128 * -1.0f; -// } -// } -// } -// } +s32 fn_1_B838(omObjData *object, u32 arg1) +{ + s32 var_r26 = 0; + if (fn_1_B6E0(object)) { + fn_1_B4D4(object, arg1); + var_r26 = 1; + } + return var_r26; +} -// void fn_1_B4D4(omObjData *object, u32 arg1) -// { -// float var_f31; -// void *var_r31; -// u32 var_r30; -// omObjData *var_r29; - -// var_r29 = object; -// var_r30 = arg1; -// var_r31 = var_r29->data; -// if ((var_r31->unk_0C != var_r30) && (var_r30 < 0x15)) { -// var_f31 = 60.0f * lbl_1_data_24C[var_r30].unk_04; -// if (var_r31->unk_0C < 0) { -// var_f31 = 0.0f; -// } -// var_r31->unk_0C = var_r30; -// if (var_r31->unk_04 < 0) { -// CharModelMotionShiftSet(var_r31->unk_00, var_r29->motion[lbl_1_data_24C[var_r30].unk_00], 60.0f * lbl_1_data_24C[var_r30].unk_08, -// var_f31, -// lbl_1_data_24C[var_r30].unk_10); -// } -// else { -// Hu3DMotionShiftSet(var_r29->model[0], var_r29->motion[lbl_1_data_24C[var_r30].unk_00], 60.0f * lbl_1_data_24C[var_r30].unk_08, var_f31, -// lbl_1_data_24C[var_r30].unk_10); -// } -// if (lbl_1_data_24C[var_r30].unk_0C >= 0.0f) { -// Hu3DMotionShiftStartEndSet(var_r29->model[0], 60.0f * lbl_1_data_24C[var_r30].unk_08, 60.0f * lbl_1_data_24C[var_r30].unk_0C); -// } -// var_r31->unk_10 = 0; -// } -// } - -// s32 fn_1_B6E0(omObjData *object) -// { -// void *var_r31; -// omObjData *var_r30; -// s32 var_r29; - -// var_r30 = object; -// var_r31 = var_r30->data; -// var_r29 = 0; -// if (var_r31->unk_04 < 0) { -// if (((CharModelMotionEndCheck(var_r31->unk_00) != 0) || (var_r31->unk_10 != 0)) && (CharModelMotionShiftIDGet(var_r31->unk_00) < 0)) { -// var_r29 = 1; -// } -// } -// else if (((Hu3DMotionEndCheck(var_r30->model[0]) != 0) || (var_r31->unk_10 != 0)) && (Hu3DMotionShiftIDGet(var_r30->model[0]) < 0)) { -// var_r29 = 1; -// } -// return var_r29; -// } - -// s32 fn_1_B7AC(omObjData *object) -// { -// void *var_r31; -// s32 var_r30; -// omObjData *var_r29; - -// var_r29 = object; -// var_r31 = var_r29->data; -// var_r30 = 0; -// if (var_r31->unk_04 < 0) { -// if (CharModelMotionShiftIDGet(var_r31->unk_00) < 0) { -// var_r30 = 1; -// } -// } -// else if (Hu3DMotionShiftIDGet(var_r29->model[0]) < 0) { -// var_r30 = 1; -// } -// return var_r30; -// } - -// s32 fn_1_B838(void *arg0, u32 arg1) -// { -// float var_f31; -// void *var_r31; -// void *var_r30; -// u32 var_r29; -// void *var_r28; -// s32 var_r27; -// s32 var_r26; - -// var_r31 = arg0; -// var_r29 = arg1; -// var_r26 = 0; -// var_r28 = var_r31->unk_5C; -// var_r27 = 0; -// if (var_r28->unk_04 < 0) { -// if (((CharModelMotionEndCheck(var_r28->unk_00) != 0) || (var_r28->unk_10 != 0)) && (CharModelMotionShiftIDGet(var_r28->unk_00) < 0)) { -// var_r27 = 1; -// } -// } -// else if (((Hu3DMotionEndCheck(*var_r31->unk_40) != 0) || (var_r28->unk_10 != 0)) && (Hu3DMotionShiftIDGet(*var_r31->unk_40) < 0)) { -// var_r27 = 1; -// } -// if (var_r27 != 0) { -// var_r30 = var_r31->unk_5C; -// if ((var_r30->unk_0C != var_r29) && (var_r29 < 0x15)) { -// var_f31 = 60.0f * lbl_1_data_24C[var_r29].unk_04; -// if (var_r30->unk_0C < 0) { -// var_f31 = 0.0f; -// } -// var_r30->unk_0C = var_r29; -// if (var_r30->unk_04 < 0) { -// CharModelMotionShiftSet(var_r30->unk_00, *(var_r31->unk_48 + (lbl_1_data_24C[var_r29].unk_00 * 2)), -// 60.0f * lbl_1_data_24C[var_r29].unk_08, var_f31, lbl_1_data_24C[var_r29].unk_10); -// } -// else { -// Hu3DMotionShiftSet(*var_r31->unk_40, *(var_r31->unk_48 + (lbl_1_data_24C[var_r29].unk_00 * 2)), -// 60.0f * lbl_1_data_24C[var_r29].unk_08, var_f31, lbl_1_data_24C[var_r29].unk_10); -// } -// if (lbl_1_data_24C[var_r29].unk_0C >= 0.0f) { -// Hu3DMotionShiftStartEndSet(*var_r31->unk_40, 60.0f * lbl_1_data_24C[var_r29].unk_08, 60.0f * lbl_1_data_24C[var_r29].unk_0C); -// } -// var_r30->unk_10 = 0; -// } -// var_r26 = 1; -// } -// return var_r26; -// } - -// s32 fn_1_BAE0(omObjData *object, u32 arg1) -// { -// float var_f31; -// omObjData *var_r31; -// void *var_r30; -// u32 var_r29; -// void *var_r28; -// s32 var_r27; -// s32 var_r26; - -// var_r31 = object; -// var_r29 = arg1; -// var_r26 = 0; -// var_r28 = var_r31->data; -// var_r27 = 0; -// if (var_r28->unk_04 < 0) { -// if (CharModelMotionShiftIDGet(var_r28->unk_00) < 0) { -// var_r27 = 1; -// } -// } -// else if (Hu3DMotionShiftIDGet(var_r31->model[0]) < 0) { -// var_r27 = 1; -// } -// if (var_r27 != 0) { -// var_r30 = var_r31->data; -// if ((var_r30->unk_0C != var_r29) && (var_r29 < 0x15)) { -// var_f31 = 60.0f * lbl_1_data_24C[var_r29].unk_04; -// if (var_r30->unk_0C < 0) { -// var_f31 = 0.0f; -// } -// var_r30->unk_0C = var_r29; -// if (var_r30->unk_04 < 0) { -// CharModelMotionShiftSet(var_r30->unk_00, var_r31->motion[lbl_1_data_24C[var_r29].unk_00], 60.0f * lbl_1_data_24C[var_r29].unk_08, -// var_f31, lbl_1_data_24C[var_r29].unk_10); -// } -// else { -// Hu3DMotionShiftSet(var_r31->model[0], var_r31->motion[lbl_1_data_24C[var_r29].unk_00], 60.0f * lbl_1_data_24C[var_r29].unk_08, -// var_f31, lbl_1_data_24C[var_r29].unk_10); -// } -// if (lbl_1_data_24C[var_r29].unk_0C >= 0.0f) { -// Hu3DMotionShiftStartEndSet(var_r31->model[0], 60.0f * lbl_1_data_24C[var_r29].unk_08, 60.0f * lbl_1_data_24C[var_r29].unk_0C); -// } -// var_r30->unk_10 = 0; -// } -// var_r26 = 1; -// } -// return var_r26; -// } +s32 fn_1_BAE0(omObjData *object, u32 arg1) +{ + s32 var_r26 = 0; + if (fn_1_B7AC(object)) { + fn_1_B4D4(object, arg1); + var_r26 = 1; + } + return var_r26; +} void fn_1_BD48(omObjData *object) { @@ -2262,30 +2144,30 @@ void fn_1_BD48(omObjData *object) object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433PlayerWork2), MEMORY_DEFAULT_NUM); work = object->data; memset(work, 0, sizeof(M433PlayerWork2)); - object->model[0] = Hu3DModelCreateFile(0x400000); + object->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0)); Hu3DModelShadowSet(object->model[0]); - object->model[1] = Hu3DModelCreateFile(0x400004); + object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 4)); Hu3DModelAttrSet(object->model[1], HU3D_MOTATTR_LOOP); - object->model[2] = Hu3DModelCreateFile(0x400004); + object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 4)); Hu3DModelAttrSet(object->model[2], HU3D_MOTATTR_LOOP); - object->model[3] = Hu3DModelCreateFile(0x400003); + object->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 3)); Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); - object->model[4] = Hu3DModelCreateFile(0x400007); + object->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 7)); Hu3DModelAttrSet(object->model[4], HU3D_ATTR_DISPOFF); - object->model[6] = Hu3DModelCreateFile(0x400005); + object->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 5)); Hu3DModelAttrSet(object->model[6], HU3D_ATTR_DISPOFF); Hu3DModelScaleSet(object->model[6], 0.75f, 0.75f, 0.75f); Hu3DModelLayerSet(object->model[6], 2); - object->model[7] = Hu3DModelCreateFile(0x400006); + object->model[7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 6)); Hu3DModelAttrSet(object->model[7], HU3D_ATTR_DISPOFF); Hu3DModelScaleSet(object->model[7], 0.75f, 0.75f, 0.75f); Hu3DModelLayerSet(object->model[7], 2); - var_r28 = Hu3DParticleCreate(HuSprAnimRead(HuDataReadNum(0x120002, 0x10000000)), 1); + var_r28 = Hu3DParticleCreate(HuSprAnimRead(HuDataReadNum(0x120002, MEMORY_DEFAULT_NUM)), 1); object->model[8] = var_r28; Hu3DModelLayerSet(var_r28, 2); Hu3DParticleHookSet(var_r28, fn_1_DE28); Hu3DModelAttrSet(var_r28, HU3D_ATTR_DISPOFF); - var_r28 = Hu3DParticleCreate(HuSprAnimReadFile(0x400009), 0xC8); + var_r28 = Hu3DParticleCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M433, 9)), 0xC8); object->model[5] = var_r28; Hu3DModelLayerSet(var_r28, 2); Hu3DParticleHookSet(var_r28, fn_1_D6A8); @@ -2294,14 +2176,14 @@ void fn_1_BD48(omObjData *object) var_r27->unk40.a = 0; var_r27->unk00_s16 = 0; } - object->model[9] = Hu3DModelCreateFile(0x400002); + object->model[9] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 2)); Hu3DModelScaleSet(object->model[9], 1.05f, 1.05f, 1.05f); Hu3DModelAttrSet(object->model[9], HU3D_ATTR_DISPOFF); Hu3DModelLayerSet(object->model[9], 1); Hu3DModelShadowSet(object->model[9]); for (var_r29 = 1; var_r29 < 0x15; var_r29++) { if (var_r29 == 0xA) { - object->model[var_r29 + 9] = Hu3DModelCreateFile(0x400001); + object->model[var_r29 + 9] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 1)); } else { object->model[var_r29 + 9] = Hu3DModelLink(object->model[9]); @@ -2311,1781 +2193,1392 @@ void fn_1_BD48(omObjData *object) Hu3DModelScaleSet(object->model[var_r29 + 9], 1.05f, 1.05f, 1.05f); Hu3DModelAttrSet(object->model[var_r29 + 9], HU3D_ATTR_DISPOFF); } - object->trans.x = work->unk_30 = 0.0f; - object->trans.y = work->unk_34 = 0.0f; - object->trans.z = work->unk_38 = 0.0f; + object->trans.x = work->unk_30.x = 0.0f; + object->trans.y = work->unk_30.y = 0.0f; + object->trans.z = work->unk_30.z = 0.0f; work->unk_B8 = 0.0f; - work->unk_BC = work->unk_C0 = 0.0f; - work->unk_C4 = 1.0f; + work->unk_BC.x = work->unk_BC.y = 0.0f; + work->unk_BC.z = 1.0f; PSMTXIdentity(work->unk_C8); work->unk_18 = 0; object->func = fn_1_C240; } -// void fn_1_C240(omObjData *object) -// { -// s32 sp8; -// s32 temp_r4; -// void *var_r31; -// omObjData *var_r30; -// s32 var_r29; -// u16 temp_r0; - -// var_r30 = object; -// var_r31 = var_r30->data; -// sp8 = 0; -// var_r31->unk_00 = 0; -// temp_r0 = var_r31->unk_18; -// switch (temp_r0) { -// case 0: -// var_r31->unk_04 = 1; -// break; -// case 1: -// var_r31->unk_B8 = 0.0f; -// var_r31->unk_C0 = 0.0f; -// var_r31->unk_BC = 0.0f; -// var_r31->unk_C4 = 1.0f; -// PSMTXIdentity(var_r31 + 0xC8); -// var_r31->unk_00 = 1; -// break; -// case 10: -// var_r31->unk_00 = 1; -// break; -// } -// var_r31->unk_8C++; -// if (var_r31->unk_90 != 0) { -// var_r31->unk_A0 = 1.0f; -// if (var_r31->unk_94 == 2) { -// var_r31->unk_A4 = var_r31->unk_A4 + 12.000001f; -// if (var_r31->unk_A4 >= 360.0f) { -// var_r31->unk_A4 = var_r31->unk_A4 - 360.0f; -// } -// var_r31->unk_A0 = 1.5f; -// var_r31->unk_A8 = var_r31->unk_A8 + 0.015000001f; -// Hu3DMotionSpeedSet(var_r30->model->unk_06, 2.5f); -// } -// else { -// Hu3DMotionTimeSet(var_r30->model->unk_06, 0.0f); -// Hu3DMotionSpeedSet(var_r30->model->unk_06, 0.0f); -// } -// Hu3DModelRotSet(var_r30->model->unk_06, 0.0f, var_r31->unk_A4, 0.0f); -// Hu3DModelAttrReset(var_r30->model->unk_06, HU3D_ATTR_DISPOFF); -// Hu3DModelPosSet(var_r30->model->unk_06, var_r31->unk_AC, 3.0f + var_r31->unk_B0, var_r31->unk_B4); -// var_r31->unk_98++; -// var_r31->unk_90 = 0; -// } -// else if (var_r31->unk_94 != 0) { -// var_r31->unk_94 = 0; -// var_r31->unk_A0 = 0.0f; -// } -// var_r31->unk_9C = var_r31->unk_9C + (0.2f * (var_r31->unk_A0 - var_r31->unk_9C)); -// Hu3DModelScaleSet(var_r30->model->unk_06, var_r31->unk_9C, 1.0f, var_r31->unk_9C); -// if ((var_r31->unk_A0 <= 0.0f) && (var_r31->unk_9C < 0.1f)) { -// Hu3DModelAttrSet(var_r30->model->unk_06, HU3D_ATTR_DISPOFF); -// var_r31->unk_9C = 0.0f; -// } -// for (var_r29 = 0; var_r29 < 2; var_r29++) { -// temp_r4 = (var_r29 * 4) + 0x7C; -// *(var_r31 + temp_r4) = *(var_r31 + temp_r4) + (0.3f * (*(var_r31 + ((var_r29 * 4) + 0x84)) - *(var_r31 + ((var_r29 * 4) + 0x7C)))); -// if (*(var_r31 + ((var_r29 * 4) + 0x84)) > 0.0f) { -// Hu3DModelAttrReset(var_r30->model[var_r29 + 1], HU3D_ATTR_DISPOFF); -// } -// else if (*(var_r31 + ((var_r29 * 4) + 0x7C)) < 0.1f) { -// Hu3DModelAttrSet(var_r30->model[var_r29 + 1], HU3D_ATTR_DISPOFF); -// } -// Hu3DModelScaleSet(var_r30->model[var_r29 + 1], *(var_r31 + ((var_r29 * 4) + 0x7C)), 1.0f, *(var_r31 + ((var_r29 * 4) + 0x7C))); -// } -// fn_1_C6B0(var_r30); -// fn_1_CB98(var_r30); -// var_r30->trans.x = var_r31->unk_30; -// var_r30->trans.y = var_r31->unk_34; -// var_r30->trans.z = var_r31->unk_38; -// if ((fn_1_216C() >= 3) && (var_r31->unk_04 != 0) && (fn_1_2244() != 0)) { -// fn_1_DD70(var_r31 + 0x30); -// Hu3DModelAttrSet(var_r30->model->unk_00, HU3D_ATTR_DISPOFF); -// var_r30->func = fn_1_C6AC; -// } -// } - -// void fn_1_C6AC(omObjData *object) { } - -// s32 fn_1_C6B0(omObjData *object) -// { -// Vec sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// float var_f27; -// float var_f26; -// void *var_r31; -// omObjData *var_r30; -// void *var_r29; -// s32 var_r28; - -// var_r30 = object; -// var_r31 = var_r30->data; -// if ((var_r31->unk_00 == 0) && (var_r31->unk_04 == 0) && (var_r31->unk_08 == 0)) { -// if (var_r31->unk_10 == 0) { -// fn_1_CDB8(var_r31 + 0xF8, var_r31 + 0x30, var_r31 + 0x3C, var_r31->unk_6C, var_r31->unk_A8); -// fn_1_D338(var_r31 + 0xF8); -// fn_1_D180(var_r31 + 0xF8); -// var_r31->unk_B8 = var_r31->unk_A8 * (8.0f * lbl_1_data_48C[var_r31->unk_6C]); -// PSVECSubtract(var_r31 + 0x3C, var_r31 + 0x30, &sp8); -// sp8.y = 0.0f; -// if (PSVECMag(&sp8) <= 0.0f) { -// var_r31->unk_C0 = 0.0f; -// var_r31->unk_BC = 0.0f; -// var_r31->unk_C4 = 1.0f; -// } -// else { -// PSVECNormalize(&sp8, &sp8); -// var_r31->unk_BC = -sp8.z; -// var_r31->unk_C0 = 0.0f; -// var_r31->unk_C4 = sp8; -// } -// var_r31->unk_48 = 0.0f; -// var_r28 = 0; -// if (var_r31->unk_84 > 0.0f) { -// var_r28 = 1; -// } -// Hu3DModelPosSet(var_r30->model[var_r28 + 1], var_r31->unk_130, 3.0f + var_r31->unk_134, var_r31->unk_138); -// if (var_r31->unk_9C <= 0.0f) { -// var_r31->unk_8C = 9; -// } -// if (lbl_1_data_468[var_r31->unk_6C] != 0) { -// *(var_r31 + ((var_r28 * 4) + 0x84)) = 1.0f; -// } -// *(var_r31 + (((1 - var_r28) * 4) + 0x84)) = 0.0f; -// } -// var_r31->unk_10 = 1; -// if (var_r31->unk_B8 != 0.0f) { -// PSMTXRotAxisRad(&sp14[0], var_r31 + 0xBC, 0.017453292f * var_r31->unk_B8); -// PSMTXConcat(&sp14[0], var_r31 + 0xC8, var_r31 + 0xC8); -// PSMTXCopy(var_r31 + 0xC8, Hu3DData[var_r30->model->unk_00].unk_F0[0]); -// } -// var_r31->unk_48 = var_r31->unk_48 + 0.016666668f; -// var_r31->unk_08 = fn_1_D4E0(var_r31 + 0xF8, var_r31 + 0x30, var_r31 + 0x4C, var_r31->unk_48); -// if (var_r31->unk_08 != 0) { -// var_r31->unk_88 = 0.0f; -// var_r31->unk_84 = 0.0f; -// if (var_r31->unk_34 <= 12.0f) { -// var_r29 = lbl_1_bss_7C8->data; -// var_r31->unk_78 = 0; -// Hu3DModelPosSetV(var_r30->model->unk_08, var_r31 + 0x30); -// Hu3DMotionTimeSet(var_r30->model->unk_08, 0.0f); -// if ((var_r31->unk_6C == 5) || (var_r31->unk_6C == 2)) { -// Hu3DMotionSpeedSet(var_r30->model->unk_08, 1.5f); -// fn_1_D888(var_r31 + 0x30, 1.0f); -// } -// else { -// Hu3DMotionSpeedSet(var_r30->model->unk_08, 1.0f); -// fn_1_D888(var_r31 + 0x30, 0.5f); -// var_r31->unk_34 = var_r31->unk_34 + 11.0f; -// } -// var_r31->unk_6C = 0; -// var_r31->unk_04 = 1; -// var_r29->unk_2C = 1; -// var_r29->unk_38 = -1; -// var_f31 = var_r31->unk_38; -// var_f29 = fabs(var_f31); -// var_f28 = var_f29; -// if (var_f28 < 350.0) { -// var_f30 = var_r31->unk_30; -// var_f27 = fabs(var_f30); -// var_f26 = var_f27; -// if (var_f26 < 700.0) { -// var_r29->unk_38 = 0; -// if (var_r31->unk_30 >= 0.0f) { -// var_r29->unk_38 = 1; -// } -// } -// } -// } -// } -// } -// else { -// var_r31->unk_10 = 0; -// } -// return var_r31->unk_08; -// } - -// void fn_1_CB98(omObjData *object) -// { -// Vec sp14; -// Vec sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// void *var_r31; -// omObjData *var_r30; -// s32 var_r29; - -// var_r30 = object; -// var_r31 = var_r30->data; -// if (var_r31->unk_78 != 0) { -// Hu3DModelAttrSet(var_r30->model[0], HU3D_ATTR_DISPOFF); -// var_f30 = var_r31->unk_FC; -// var_f29 = var_f30; -// var_f31 = var_f29 - (0.020000001f * var_r31->unk_A8); -// if (var_f31 < 0.0f) { -// var_f31 = 0.0f; -// } -// var_f31 = (var_f30 - var_f31) / 21.0f; -// PSMTXCopy(var_r31 + 0xC8, &sp20[0]); -// var_f28 = (var_r31->unk_B8 * (1.2f * var_r31->unk_A8)) / 21.0f; -// PSMTXRotAxisRad(&sp50[0], var_r31 + 0xBC, 0.017453292f * -var_f28); -// for (var_r29 = 0; var_r29 < 0x15; var_r29++) { -// Hu3DModelAttrReset(var_r30->model[var_r29 + 9], HU3D_ATTR_DISPOFF); -// fn_1_D4E0(var_r31 + 0xF8, &sp14, &sp8, var_f30); -// Hu3DModelPosSetV(var_r30->model[var_r29 + 9], &sp14); -// PSMTXCopy(&sp20[0], Hu3DData[var_r30->model[var_r29 + 9]].unk_F0[0]); -// PSMTXConcat(&sp50[0], &sp20[0], &sp20[0]); -// var_f30 -= var_f31; -// } -// var_r31->unk_FC = var_f29; -// return; -// } -// Hu3DModelAttrReset(var_r30->model[0], HU3D_ATTR_DISPOFF); -// for (var_r29 = 0; var_r29 < 0x15; var_r29++) { -// Hu3DModelAttrSet(var_r30->model[var_r29 + 9], HU3D_ATTR_DISPOFF); -// } -// } - -// void fn_1_CDB8(float *arg0, Vec *arg1, Vec *arg2, u32 arg3, float arg8) -// { -// Vec sp18; -// float sp14; -// float sp10; -// float spC; -// float sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// double var_f27; -// double var_f26; -// float *var_r31; -// Vec *var_r30; -// Vec *var_r29; -// u32 var_r28; - -// var_r31 = arg0; -// var_r30 = arg1; -// var_r29 = arg2; -// var_r28 = arg3; -// sp8 = arg8; -// var_r31->unk_0C = 0.0f; -// var_r31->unk_08 = 0.0f; -// var_f31 = lbl_1_data_4D4[var_r28].y; -// var_r31->unk_00 = var_f31; -// if (var_r31->unk_00 <= 0.0f) { -// if (((var_r29->x * var_r30->x) < 0.0f) && (var_r30->x != 0.0f) && (lbl_1_data_4D4[var_r28].x > 0.0f)) { -// var_r31->unk_0C = lbl_1_data_4D4[var_r28].x; -// var_f28 = var_r30->x / (var_r29->x - var_r30->x); -// var_f27 = fabs(var_f28); -// var_f26 = var_f27; -// var_r31->unk_08 = var_f26; -// var_f29 = var_r30->y + (var_r31->unk_08 * (var_r29->y - var_r30->y)); -// if (var_f29 < var_r31->unk_0C) { -// spC = var_r30->x + (var_r31->unk_08 * (var_r29->x - var_r30->x)); -// sp10 = var_r31->unk_0C; -// sp14 = var_r30->z + (var_r31->unk_08 * (var_r29->z - var_r30->z)); -// PSVECSubtract(var_r29, &spC, &sp18); -// var_f30 = PSVECMag(&sp18); -// PSVECSubtract(&spC, var_r30, &sp18); -// var_f30 += PSVECMag(&sp18); -// } -// else { -// PSVECSubtract(var_r29, var_r30, &sp18); -// var_f30 = PSVECMag(&sp18); -// } -// } -// else { -// PSVECSubtract(var_r29, var_r30, &sp18); -// var_f30 = PSVECMag(&sp18); -// } -// var_f31 = var_f30 / (sp8 * lbl_1_data_4D4[var_r28].z); -// var_r31->unk_00 = var_f31; -// } -// var_r31->unk_04 = 0.0f; -// var_r31->unk_2C = var_r30->x; -// var_r31->unk_30 = var_r30->y; -// var_r31->unk_34 = var_r30->z; -// var_r31->unk_38 = var_r29->x; -// var_r31->unk_3C = var_r29->y; -// var_r31->unk_40 = var_r29->z; -// var_r31->unk_1C = var_r29->y - var_r30->y; -// var_r31->unk_24 = -980.0f; -// PSVECSubtract(var_r29, var_r30, &sp18); -// sp18.y = 0.0f; -// var_r31->unk_10 = PSVECMag(&sp18); -// var_r31->unk_18 = 0.0f; -// if (var_f31 > 0.0f) { -// var_r31->unk_20 = (var_r31->unk_1C - (0.5f * (-980.0f * (var_f31 * var_f31)))) / var_f31; -// var_r31->unk_14 = var_r31->unk_10 / var_f31; -// } -// else { -// var_r31->unk_20 = var_r31->unk_1C; -// var_r31->unk_14 = var_r31->unk_10; -// } -// var_r31->unk_28 = lbl_1_data_540[var_r28]; -// } - -// void fn_1_D180(float *arg0) -// { -// float sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// float var_f27; -// float var_f26; -// float var_f25; -// s32 var_r31; - -// if (!(arg0->unk_0C <= 0.0f)) { -// var_f31 = arg0->unk_00; -// var_f28 = arg0->unk_00; -// var_f27 = 10.0f * arg0->unk_00; -// for (var_r31 = 0; var_r31 < 0x10; var_r31++) { -// var_f30 = 1.0f / var_f31; -// sp8 = arg0->unk_10 * var_f30; -// var_f26 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * var_f31); -// var_f29 = arg0->unk_08 * var_f31; -// var_f25 = arg0->unk_30 + ((var_f29 * (0.5f * arg0->unk_24 * var_f29)) + (var_f26 * var_f29)); -// if (arg0->unk_0C > var_f25) { -// var_f28 = var_f31; -// } -// else { -// var_f27 = var_f31; -// } -// var_f31 = 0.5f * (var_f28 + var_f27); -// } -// var_f30 = 1.0f / var_f31; -// arg0->unk_00 = var_f31; -// arg0->unk_14 = arg0->unk_10 * var_f30; -// arg0->unk_20 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * var_f31); -// } -// } - -// void fn_1_D338(float *arg0) -// { -// float sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// float var_f27; -// float var_f26; -// float var_f25; -// s32 var_r31; - -// if (!(arg0->unk_0C <= 0.0f)) { -// var_f29 = arg0->unk_08 * arg0->unk_00; -// var_f30 = 1.0f / arg0->unk_00; -// var_f31 = arg0->unk_24; -// var_f28 = arg0->unk_24; -// var_f27 = arg0->unk_24 * arg0->unk_28; -// for (var_r31 = 0; var_r31 < 0x10; var_r31++) { -// sp8 = arg0->unk_10 * var_f30; -// var_f26 = (arg0->unk_1C * var_f30) - (0.5f * var_f31 * arg0->unk_00); -// var_f25 = arg0->unk_30 + ((var_f29 * (0.5f * var_f31 * var_f29)) + (var_f26 * var_f29)); -// if (arg0->unk_0C > var_f25) { -// var_f28 = var_f31; -// } -// else { -// var_f27 = var_f31; -// } -// var_f31 = 0.5f * (var_f28 + var_f27); -// } -// arg0->unk_24 = var_f31; -// arg0->unk_14 = arg0->unk_10 * var_f30; -// arg0->unk_20 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * arg0->unk_00); -// } -// } - -// s32 fn_1_D4E0(float *arg0, Vec *arg1, Vec *arg2, float arg8) -// { -// float sp20; -// float sp1C; -// float sp18; -// Vec spC; -// Vec *sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float *var_r31; -// Vec *var_r30; - -// var_r31 = arg0; -// var_r30 = arg1; -// sp8 = arg2; -// var_f31 = arg8; -// if (var_f31 < 0.0f) { -// var_f31 = 0.0f; -// } -// if (var_f31 > var_r31->unk_00) { -// var_f31 = var_r31->unk_00; -// } -// var_r31->unk_04 = var_f31; -// if (var_r31->unk_10 > 0.0f) { -// PSVECSubtract(var_r31 + 0x38, var_r31 + 0x2C, &spC); -// spC.y = 0.0f; -// PSVECNormalize(&spC, &spC); -// } -// else { -// spC.z = 0.0f; -// spC.y = 0.0f; -// spC = 0.0f; -// } -// sp18 = var_r30->x; -// sp1C = var_r30->y; -// sp20 = var_r30->z; -// var_f30 = (var_f31 * (0.5f * var_r31->unk_18 * var_f31)) + (var_r31->unk_14 * var_f31); -// var_f29 = (var_f31 * (0.5f * var_r31->unk_24 * var_f31)) + (var_r31->unk_20 * var_f31); -// var_r30->x = var_r31->unk_2C + (spC * var_f30); -// var_r30->y = var_r31->unk_30 + var_f29; -// var_r30->z = var_r31->unk_34 + (spC.z * var_f30); -// PSVECSubtract(var_r30, &sp18, sp8); -// if (var_f31 >= var_r31->unk_00) { -// return 1; -// } -// return 0; -// } - -// void fn_1_D6A8(ModelData *model, ParticleData *particle, Mtx matrix) -// { -// HsfanimStruct01 *var_r31; -// ParticleData *var_r30; -// s32 var_r29; -// u16 temp_r0; - -// var_r30 = particle; -// for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r31 < var_r30->unk_30; var_r29++, var_r31 += 0x44) { -// if (var_r31->unk00 != 0) { -// PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); -// var_r31->unk08.x *= 0.92f; -// var_r31->unk08.z *= 0.92f; -// var_r31->unk08.y += -0.27222225f; -// var_r31->unk2C += 2.0f; -// var_r31->unk40.a = var_r31->unk40.a * 0.99f; -// if (var_r31->unk00 < 24.0f) { -// var_r31->unk40.a = 0.9f * var_r31->unk40.a; -// } -// temp_r0 = var_r31->unk00 - 1; -// var_r31->unk00 = temp_r0; -// if (temp_r0 == 0) { -// var_r31->unk00 = 0; -// var_r31->unk2C = 0.0f; -// var_r31->unk40.a = 0; -// } -// } -// } -// DCStoreRange(var_r30->unk_48, var_r30->unk_30 * 0x44); -// } - -// void fn_1_D888(Vec *arg0, float arg8) -// { -// float sp10; -// float spC; -// float sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// void *var_r31; -// Vec *var_r30; -// s32 var_r29; -// u32 var_r28; - -// var_r30 = arg0; -// var_f29 = arg8; -// var_r31 = Hu3DData[lbl_1_bss_7CC->model->unk_0A].unk_120->unk_48; -// var_r28 = 3.0f + (12.0f * var_f29); -// var_r29 = 0; -// loop_4: -// if (var_r29 < 0xC8) { -// if ((var_r31->unk_00 != 0) -// || (var_r31->unk_00 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))), var_f30 = frandmod(0x168), sp8 = sind(var_f30) / 180.0), -// spC = 0.0f, -// sp10 = cos((3.141592653589793 * var_f30), var_f31 = 0.030000001f * frandmod(0x3E8), var_r31->unk_34 = var_r30->x + (sp8 * var_f31), -// var_r31->unk_38 = 10.0f + (var_r30->y + (0.030000001f * frandmod(0x3E8))), var_r31->unk_3C = var_r30->z + (sp10 * var_f31), -// var_f31 = 0.8333334f + (0.0016666667f * frandmod(0x3E8)), var_f31 *= 1.0f + var_f29, var_r31->unk_08 = sp8 * var_f31, -// var_r31->unk_10 = sp10 * var_f31, var_r31->unk_0C = 0.50000006f + (0.0011666667f * frandmod(0x3E8)), -// var_r31->unk_0C = var_r31->unk_0C * (1.0f + var_f29), var_r31->unk_30 = frandmod(0x168), var_r31->unk_2C = 60.0f + frandmod(0x1E), -// var_r31->unk_43 = frandmod(0x64) + 0x78, var_f31 = 0.001f * frandmod(0x3E8), var_r31->unk_40 = 235.0f + (20.0f * var_f31), -// var_r31->unk_41 = 180.0f + (75.0f * var_f31), var_r31->unk_42 = 155.0f + (100.0f * var_f31), var_r28--, ((var_r28 < 1) == 0))) { -// var_r29++; -// var_r31 += 0x44; -// goto loop_4; -// } -// } -// } - -// void fn_1_DD70(Vec *arg0) -// { -// void *var_r31; -// void *var_r30; -// Vec *var_r29; - -// var_r29 = arg0; -// var_r31 = Hu3DData[lbl_1_bss_7CC->model->unk_10].unk_120; -// Hu3DModelAttrReset(lbl_1_bss_7CC->model->unk_10, HU3D_ATTR_DISPOFF); -// var_r30 = var_r31->unk_48; -// var_r31->unk_00 = 0; -// var_r31->unk_02 = 0x3C; -// var_r30->unk_2C = 100.0f; -// var_r30->unk_34 = var_r29->x; -// var_r30->unk_38 = var_r29->y; -// var_r30->unk_3C = var_r29->z; -// } - -// void fn_1_DE28(ModelData *model, ParticleData *particle, Mtx matrix) -// { -// ParticleData *var_r31; -// HsfanimStruct01 **var_r30; -// s32 var_r29; -// s8 var_r28; -// ModelData *var_r27; -// s16 temp_r0; - -// var_r27 = model; -// var_r31 = particle; -// if (var_r31->unk_00 == 0) { -// var_r31->unk_00 = 1; -// for (var_r30 = &var_r31->unk_48, var_r29 = 0; var_r30 < var_r31->unk_30; var_r29++, var_r30 += 0x44) { -// var_r30->unk_2C = 0.0f; -// } -// } -// var_r28 = 0.016666668f * (var_r31->unk_02 * 0xFF); -// for (var_r30 = var_r31->unk_48, var_r29 = 0; var_r30 < var_r31->unk_30; var_r29++, var_r30 += 0x44) { -// var_r30->unk_43 = var_r28; -// } -// temp_r0 = var_r31->unk_02 - 1; -// var_r31->unk_02 = temp_r0; -// if (temp_r0 == 0) { -// var_r27->attr |= 1; -// } -// DCStoreRange(var_r31->unk_48, var_r31->unk_30 * 0x44); -// } - -void fn_1_DF44(omObjData *var_r30) +void fn_1_C240(omObjData *object) { - M433PlayerWork3 *var_r31; + s32 var_r29; - var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433PlayerWork3), MEMORY_DEFAULT_NUM); - var_r31 = var_r30->data; - memset(var_r31, 0, sizeof(M433PlayerWork3)); - var_r31->unk_00 = 0; - var_r31->unk_04 = -1; - var_r31->unk_08 = 0; - var_r31->unk_18 = var_r31->unk_1C = 0; - var_r31->unk_2C = var_r31->unk_30 = 0; - fn_1_E5C0(var_r31->unk_4C, &var_r31->unk_64); - var_r30->func = fn_1_E11C; + M433PlayerWork2 *work = object->data; + s32 sp8 = 0; + work->unk_00 = 0; + switch (work->unk_18) { + case 0: + work->unk_04 = 1; + break; + case 1: + work->unk_B8 = 0.0f; + work->unk_BC.x = work->unk_BC.y = 0.0f; + work->unk_BC.z = 1.0f; + PSMTXIdentity(work->unk_C8); + work->unk_00 = 1; + break; + case 10: + work->unk_00 = 1; + break; + } + work->unk_8C++; + if (work->unk_90 != 0) { + work->unk_A0 = 1.0f; + if (work->unk_94 == 2) { + work->unk_A4 += 12.000001f; + if (work->unk_A4 >= 360.0f) { + work->unk_A4 -= 360.0f; + } + work->unk_A0 = 1.5f; + work->unk_A8 += 0.015000001f; + Hu3DMotionSpeedSet(object->model[3], 2.5f); + } + else { + Hu3DMotionTimeSet(object->model[3], 0.0f); + Hu3DMotionSpeedSet(object->model[3], 0.0f); + } + Hu3DModelRotSet(object->model[3], 0.0f, work->unk_A4, 0.0f); + Hu3DModelAttrReset(object->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(object->model[3], work->unk_AC.x, 3.0f + work->unk_AC.y, work->unk_AC.z); + work->unk_98++; + work->unk_90 = 0; + } + else if (work->unk_94 != 0) { + work->unk_94 = 0; + work->unk_A0 = 0.0f; + } + work->unk_9C = work->unk_9C + (0.2f * (work->unk_A0 - work->unk_9C)); + Hu3DModelScaleSet(object->model[3], work->unk_9C, 1.0f, work->unk_9C); + if ((work->unk_A0 <= 0.0f) && (work->unk_9C < 0.1f)) { + Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF); + work->unk_9C = 0.0f; + } + for (var_r29 = 0; var_r29 < 2; var_r29++) { + work->unk_7C[var_r29] += (0.3f * (work->unk_84[var_r29] - work->unk_7C[var_r29])); + if (work->unk_84[var_r29] > 0.0f) { + Hu3DModelAttrReset(object->model[var_r29 + 1], HU3D_ATTR_DISPOFF); + } + else if (work->unk_7C[var_r29] < 0.1f) { + Hu3DModelAttrSet(object->model[var_r29 + 1], HU3D_ATTR_DISPOFF); + } + Hu3DModelScaleSet(object->model[var_r29 + 1], work->unk_7C[var_r29], 1.0f, work->unk_7C[var_r29]); + } + fn_1_C6B0(object); + fn_1_CB98(object); + object->trans.x = work->unk_30.x; + object->trans.y = work->unk_30.y; + object->trans.z = work->unk_30.z; + if ((fn_1_216C() >= 3) && (work->unk_04 != 0) && (fn_1_2244() != 0)) { + fn_1_DD70(&work->unk_30); + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); + object->func = fn_1_C6AC; + } } -// void fn_1_DFE4(void *arg0) -// { -// void *var_r31; -// void *var_r30; +void fn_1_C6AC(omObjData *object) { } -// var_r30 = arg0; -// var_r31 = var_r30->unk_5C; -// OSReport("\n"); -// OSReport("uGameEvent %d\n", var_r31->unk_00); -// OSReport("sWinGrp %d\n", var_r31->unk_04); -// OSReport("uServeGrp %d\n", var_r31->unk_08); -// OSReport("uPointGrp %d\n", var_r31->unk_0C); -// OSReport("auServeCel[2] %d,%d\n", var_r31->unk_10, var_r31->unk_14); -// OSReport("auEvents[2] %d,%d\n", var_r31->unk_18, var_r31->unk_1C); -// OSReport("uContactCnt %d\n", var_r31->unk_34); -// OSReport("sGroundGrp %d\n", var_r31->unk_38); -// OSReport("uContactGrp %d\n", var_r31->unk_3C); -// OSReport("sContactCel %d\n", var_r31->unk_40); -// OSReport(lbl_1_data_63E, var_r31->unk_44); -// OSReport("\n"); -// } - -// void fn_1_E11C(omObjData *arg0) -// { -// s32 sp8; -// s32 temp_r4; -// void *var_r31; -// u32 var_r30; -// s32 var_r29; -// s32 var_r28; -// s32 var_r27; -// s16 var_r26; -// s16 var_r25; -// omObjData *var_r24; -// u32 temp_r0; -// s32 temp_r0_2; - -// var_r24 = arg0; -// var_r31 = var_r24->data; -// sp8 = 0; -// var_r28 = 0; -// var_r31->unk_28++; -// var_r31->unk_4C = var_r31->unk_20; -// var_r31->unk_58 = var_r31->unk_24; -// if (fn_1_216C() >= 2) { -// fn_1_ECFC(var_r31 + 0x4C, var_r31 + 0x64); -// } -// temp_r0 = var_r31->unk_00; -// switch (temp_r0) { -// case 0: -// var_r31->unk_34 = 0; -// var_r31->unk_40 = -1; -// if (var_r31->unk_28 == 0xC) { -// fn_1_58D8(1); -// } -// if ((var_r31->unk_28 >= 30.0f) && (fn_1_216C() >= 2)) { -// var_r31->unk_00 = 1; -// var_r31->unk_28 = 0; -// var_r31->unk_1C = 1; -// var_r31->unk_18 = 1; -// } -// break; -// case 1: -// if (var_r31->unk_30 != 0) { -// var_r31->unk_48 = 0; -// var_r31->unk_40 = -1; -// var_r31->unk_34 = 0; -// var_r31->unk_00 = 2; -// var_r31->unk_28 = 0; -// var_r31->unk_1C = 3; -// var_r31->unk_18 = 3; -// if (var_r31->unk_44 != 0) { -// var_r26 = 5; -// } -// else { -// var_r26 = 6; -// } -// fn_1_58D8(var_r26); -// } -// break; -// case 2: -// case 5: -// if (var_r31->unk_30 != 0) { -// if (var_r31->unk_34 != 0) { -// var_r31->unk_48++; -// var_r31->unk_00 = 3; -// *(var_r31 + ((var_r31->unk_3C * 4) + 0x18)) = 4; -// if ((var_r31->unk_48 >= 6) && ((var_r31->unk_48 % 3) == 0)) { -// fn_1_58D8(3); -// } -// } -// var_r31->unk_28 = 0; -// } -// var_r28 = 1; -// break; -// case 3: -// case 4: -// if (var_r31->unk_30 != 0) { -// if (var_r31->unk_3C == var_r31->unk_44) { -// var_r31->unk_00 = 4; -// *(var_r31 + ((var_r31->unk_3C * 4) + 0x18)) = 5; -// } -// else { -// var_r31->unk_40 = -1; -// var_r31->unk_34 = 0; -// var_r31->unk_00 = 5; -// *(var_r31 + ((var_r31->unk_3C * 4) + 0x18)) = 3; -// if (var_r31->unk_44 != 0) { -// var_r25 = 5; -// } -// else { -// var_r25 = 6; -// } -// fn_1_58D8(var_r25); -// } -// var_r31->unk_28 = 0; -// } -// var_r28 = 1; -// break; -// case 6: -// if (var_r31->unk_28 >= 120.0f) { -// var_r31->unk_00 = 0; -// var_r31->unk_28 = 0; -// var_r31->unk_1C = 0; -// var_r31->unk_18 = 0; -// } -// break; -// } -// if ((var_r31->unk_2C != 0) && (var_r28 != 0)) { -// if (var_r31->unk_38 >= 0) { -// var_r30 = 1 - var_r31->unk_38; -// fn_1_58D8(1); -// } -// else { -// var_r30 = 1 - var_r31->unk_3C; -// fn_1_58D8(2); -// } -// var_r31->unk_0C = var_r30; -// temp_r4 = (var_r30 * 4) + 0x20; -// *(var_r31 + temp_r4) = *(var_r31 + temp_r4) + 1; -// if (var_r31->unk_08 != var_r30) { -// var_r31->unk_08 = var_r30; -// *(var_r31 + ((var_r31->unk_08 * 4) + 0x10)) = 1 - *(var_r31 + ((var_r31->unk_08 * 4) + 0x10)); -// } -// if (*(var_r31 + ((var_r30 * 4) + 0x20)) >= 5) { -// var_r31->unk_04 = var_r30; -// var_r31->unk_00 = 7; -// var_r31->unk_1C = 7; -// var_r31->unk_18 = 7; -// var_r27 = 0; -// for (var_r29 = 0; var_r29 < 4; var_r29++) { -// spC[var_r29] = -1; -// if (var_r31->unk_04 == lbl_1_bss_7D0[var_r29]->data->unk_14) { -// temp_r0_2 = var_r27; -// var_r27++; -// spC[temp_r0_2] = lbl_1_bss_7D0[var_r29]->work[0]; -// } -// } -// fn_1_219C(1, spC[0], sp10); -// fn_1_21E4(4); -// } -// else { -// var_r31->unk_00 = 6; -// var_r31->unk_1C = 6; -// var_r31->unk_18 = 6; -// fn_1_FE64(var_r31 + 0x64, var_r31->unk_20, var_r31->unk_24, var_r30); -// HuAudFXPlay(0x16); -// } -// var_r31->unk_28 = 0; -// } -// var_r31->unk_2C = 0; -// var_r31->unk_30 = 0; -// } - -void fn_1_E5C0(M433PlayerWork3SubStruct *var_r30, M433PlayerWork3SubStruct2 *var_r29) +s32 fn_1_C6B0(omObjData *object) { - u32 var_r31; + Mtx sp14; + Vec sp8; + M433PlayerWork3 *var_r29; + s32 var_r28; + + M433PlayerWork2 *work = object->data; + if ((work->unk_00 == 0) && (work->unk_04 == 0) && (work->unk_08 == 0)) { + if (work->unk_10 == 0) { + fn_1_CDB8(&work->unk_F8, &work->unk_30, &work->unk_3C, work->unk_6C, work->unk_A8); + fn_1_D338(&work->unk_F8); + fn_1_D180(&work->unk_F8); + work->unk_B8 = work->unk_A8 * (8.0f * lbl_1_data_48C[work->unk_6C]); + PSVECSubtract(&work->unk_3C, &work->unk_30, &sp8); + sp8.y = 0.0f; + if (PSVECMag(&sp8) <= 0.0f) { + work->unk_BC.x = work->unk_BC.y = 0.0f; + work->unk_BC.z = 1.0f; + } + else { + PSVECNormalize(&sp8, &sp8); + work->unk_BC.x = -sp8.z; + work->unk_BC.y = 0.0f; + work->unk_BC.z = sp8.x; + } + work->unk_48 = 0.0f; + var_r28 = 0; + if (work->unk_84[0] > 0.0f) { + var_r28++; + } + Hu3DModelPosSet(object->model[var_r28 + 1], work->unk_F8.unk_38.x, 3.0f + work->unk_F8.unk_38.y, work->unk_F8.unk_38.z); + if (work->unk_9C <= 0.0f) { + work->unk_8C = 9; + } + if (lbl_1_data_468[work->unk_6C] != 0) { + work->unk_84[var_r28] = 1.0f; + } + work->unk_84[1 - var_r28] = 0.0f; + } + work->unk_10 = 1; + if (work->unk_B8 != 0.0f) { + PSMTXRotAxisRad(sp14, &work->unk_BC, 0.017453292f * work->unk_B8); + PSMTXConcat(sp14, work->unk_C8, work->unk_C8); + PSMTXCopy(work->unk_C8, Hu3DData[object->model[0]].unk_F0); + } + work->unk_48 += 0.016666668f; + work->unk_08 = fn_1_D4E0(&work->unk_F8, &work->unk_30, &work->unk_4C, work->unk_48); + if (work->unk_08 != 0) { + work->unk_84[0] = work->unk_84[1] = 0.0f; + if (work->unk_30.y <= 12.0f) { + var_r29 = lbl_1_bss_7C8->data; + work->unk_78 = 0; + Hu3DModelPosSetV(object->model[4], &work->unk_30); + Hu3DMotionTimeSet(object->model[4], 0.0f); + if ((work->unk_6C == 5) || (work->unk_6C == 2)) { + Hu3DMotionSpeedSet(object->model[4], 1.5f); + fn_1_D888(&work->unk_30, 1.0f); + } + else { + Hu3DMotionSpeedSet(object->model[4], 1.0f); + fn_1_D888(&work->unk_30, 0.5f); + work->unk_30.y += 11.0f; + } + work->unk_6C = 0; + work->unk_04 = 1; + var_r29->unk_2C = 1; + var_r29->sGroundGrp = -1; + if (fabs(work->unk_30.z) < 350.0) { + if (fabs(work->unk_30.x) < 700.0) { + var_r29->sGroundGrp = 0; + if (work->unk_30.x >= 0.0f) { + var_r29->sGroundGrp = 1; + } + } + } + } + } + } + else { + work->unk_10 = 0; + } + return work->unk_08; +} + +void fn_1_CB98(omObjData *object) +{ + Mtx sp50; + Mtx sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + s32 var_r29; + + M433PlayerWork2 *work = object->data; + if (work->unk_78 != 0) { + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); + var_f30 = work->unk_F8.unk_04; + var_f29 = var_f30; + var_f31 = var_f29 - (0.020000001f * work->unk_A8); + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + var_f31 = (var_f30 - var_f31) / 21.0f; + PSMTXCopy(work->unk_C8, sp20); + var_f28 = (work->unk_B8 * (1.2f * work->unk_A8)) / 21.0f; + PSMTXRotAxisRad(sp50, &work->unk_BC, MTXDegToRad(-var_f28)); + for (var_r29 = 0; var_r29 < 0x15; var_r29++) { + Hu3DModelAttrReset(object->model[var_r29 + 9], HU3D_ATTR_DISPOFF); + fn_1_D4E0(&work->unk_F8, &sp14, &sp8, var_f30); + Hu3DModelPosSetV(object->model[var_r29 + 9], &sp14); + PSMTXCopy(sp20, Hu3DData[object->model[var_r29 + 9]].unk_F0); + PSMTXConcat(sp50, sp20, sp20); + var_f30 -= var_f31; + } + work->unk_F8.unk_04 = var_f29; + return; + } + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + for (var_r29 = 0; var_r29 < 0x15; var_r29++) { + Hu3DModelAttrSet(object->model[var_r29 + 9], HU3D_ATTR_DISPOFF); + } +} + +void fn_1_CDB8(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, u32 arg3, float arg8) +{ + Vec sp18; + Vec spC; + float var_f31; + float var_f30; + float var_f29; + + arg0->unk_0C = 0.0f; + arg0->unk_08 = 0.0f; + var_f31 = lbl_1_data_4D4[arg3].y; + arg0->unk_00 = var_f31; + if (arg0->unk_00 <= 0.0f) { + if (((arg2->x * arg1->x) < 0.0f) && (arg1->x != 0.0f) && (lbl_1_data_4D4[arg3].x > 0.0f)) { + arg0->unk_0C = lbl_1_data_4D4[arg3].x; + arg0->unk_08 = fabs(arg1->x / (arg2->x - arg1->x)); + var_f29 = arg1->y + (arg0->unk_08 * (arg2->y - arg1->y)); + if (var_f29 < arg0->unk_0C) { + spC.x = arg1->x + (arg0->unk_08 * (arg2->x - arg1->x)); + spC.y = arg0->unk_0C; + spC.z = arg1->z + (arg0->unk_08 * (arg2->z - arg1->z)); + PSVECSubtract(arg2, &spC, &sp18); + var_f30 = PSVECMag(&sp18); + PSVECSubtract(&spC, arg1, &sp18); + var_f30 += PSVECMag(&sp18); + } + else { + PSVECSubtract(arg2, arg1, &sp18); + var_f30 = PSVECMag(&sp18); + } + } + else { + PSVECSubtract(arg2, arg1, &sp18); + var_f30 = PSVECMag(&sp18); + } + var_f31 = var_f30 / (arg8 * lbl_1_data_4D4[arg3].z); + arg0->unk_00 = var_f31; + } + arg0->unk_04 = 0.0f; + arg0->unk_2C = *arg1; + arg0->unk_38 = *arg2; + arg0->unk_1C = arg2->y - arg1->y; + arg0->unk_24 = -980.0f; + PSVECSubtract(arg2, arg1, &sp18); + sp18.y = 0.0f; + arg0->unk_10 = PSVECMag(&sp18); + arg0->unk_18 = 0.0f; + if (var_f31 > 0.0f) { + arg0->unk_20 = (arg0->unk_1C - (0.5f * (-980.0f * (var_f31 * var_f31)))) / var_f31; + arg0->unk_14 = arg0->unk_10 / var_f31; + } + else { + arg0->unk_20 = arg0->unk_1C; + arg0->unk_14 = arg0->unk_10; + } + arg0->unk_28 = lbl_1_data_540[arg3]; +} + +void fn_1_D180(M433PlayerWork2Sub *arg0) +{ + float sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + s32 var_r31; + + if (!(arg0->unk_0C <= 0.0f)) { + var_f31 = arg0->unk_00; + var_f28 = arg0->unk_00; + var_f27 = 10.0f * arg0->unk_00; + for (var_r31 = 0; var_r31 < 0x10; var_r31++) { + var_f30 = 1.0f / var_f31; + sp8 = arg0->unk_10 * var_f30; + var_f26 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * var_f31); + var_f29 = arg0->unk_08 * var_f31; + var_f25 = arg0->unk_2C.y + ((var_f29 * (0.5f * arg0->unk_24 * var_f29)) + (var_f26 * var_f29)); + if (arg0->unk_0C > var_f25) { + var_f28 = var_f31; + } + else { + var_f27 = var_f31; + } + var_f31 = 0.5f * (var_f28 + var_f27); + } + var_f30 = 1.0f / var_f31; + arg0->unk_00 = var_f31; + arg0->unk_14 = arg0->unk_10 * var_f30; + arg0->unk_20 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * var_f31); + } +} + +void fn_1_D338(M433PlayerWork2Sub *arg0) +{ + float sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + s32 var_r31; + + if (!(arg0->unk_0C <= 0.0f)) { + var_f29 = arg0->unk_08 * arg0->unk_00; + var_f30 = 1.0f / arg0->unk_00; + var_f31 = arg0->unk_24; + var_f28 = arg0->unk_24; + var_f27 = arg0->unk_24 * arg0->unk_28; + for (var_r31 = 0; var_r31 < 0x10; var_r31++) { + sp8 = arg0->unk_10 * var_f30; + var_f26 = (arg0->unk_1C * var_f30) - (0.5f * var_f31 * arg0->unk_00); + var_f25 = arg0->unk_2C.y + ((var_f29 * (0.5f * var_f31 * var_f29)) + (var_f26 * var_f29)); + if (arg0->unk_0C > var_f25) { + var_f28 = var_f31; + } + else { + var_f27 = var_f31; + } + var_f31 = 0.5f * (var_f28 + var_f27); + } + arg0->unk_24 = var_f31; + arg0->unk_14 = arg0->unk_10 * var_f30; + arg0->unk_20 = (arg0->unk_1C * var_f30) - (0.5f * arg0->unk_24 * arg0->unk_00); + } +} + +s32 fn_1_D4E0(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, float arg8) +{ + Vec sp18; + Vec spC; + float var_f30; + float var_f29; + + if (arg8 < 0.0f) { + arg8 = 0.0f; + } + if (arg8 > arg0->unk_00) { + arg8 = arg0->unk_00; + } + arg0->unk_04 = arg8; + if (arg0->unk_10 > 0.0f) { + PSVECSubtract(&arg0->unk_38, &arg0->unk_2C, &spC); + spC.y = 0.0f; + PSVECNormalize(&spC, &spC); + } + else { + spC.x = spC.y = spC.z = 0.0f; + } + sp18 = *arg1; + var_f30 = (arg8 * (0.5f * arg0->unk_18 * arg8)) + (arg0->unk_14 * arg8); + var_f29 = (arg8 * (0.5f * arg0->unk_24 * arg8)) + (arg0->unk_20 * arg8); + arg1->x = arg0->unk_2C.x + (spC.x * var_f30); + arg1->y = arg0->unk_2C.y + var_f29; + arg1->z = arg0->unk_2C.z + (spC.z * var_f30); + PSVECSubtract(arg1, &sp18, arg2); + if (arg8 >= arg0->unk_00) { + return 1; + } + return 0; +} + +void fn_1_D6A8(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + s32 var_r29; + + for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + var_r31->unk08.x *= 0.92f; + var_r31->unk08.z *= 0.92f; + var_r31->unk08.y += -0.27222225f; + var_r31->unk2C += 2.0f; + var_r31->unk40.a *= 0.99f; + if (var_r31->unk00_s16 < 24.0f) { + var_r31->unk40.a = 0.9f * var_r31->unk40.a; + } + if (--var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + } + } + DCStoreRange(particle->unk_48, particle->unk_30 * 0x44); +} + +void fn_1_D888(Vec *arg0, float arg8) +{ + Vec sp8; + float var_f31; + float var_f30; + HsfanimStruct01 *var_r31; + s32 var_r29; + u32 var_r28; + + var_r31 = ((ParticleData *)Hu3DData[lbl_1_bss_7CC->model[5]].unk_120)->unk_48; + var_r28 = 3.0f + (12.0f * arg8); + for (var_r29 = 0; var_r29 < 0xC8; var_r29++, var_r31++) { + if (var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); + var_f30 = frandmod(0x168); + sp8.x = sind(var_f30); + sp8.y = 0.0f; + sp8.z = cosd(var_f30); + var_f31 = 0.030000001f * frandmod(0x3E8); + var_r31->unk34.x = arg0->x + (sp8.x * var_f31); + var_r31->unk34.y = 10.0f + (arg0->y + (0.030000001f * frandmod(0x3E8))); + var_r31->unk34.z = arg0->z + (sp8.z * var_f31); + var_f31 = 0.8333334f + (0.0016666667f * frandmod(0x3E8)); + var_f31 *= 1.0f + arg8; + var_r31->unk08.x = sp8.x * var_f31; + var_r31->unk08.z = sp8.z * var_f31; + var_r31->unk08.y = 0.50000006f + (0.0011666667f * frandmod(0x3E8)); + var_r31->unk08.y *= (1.0f + arg8); + var_r31->unk30 = frandmod(0x168); + var_r31->unk2C = 60.0f + frandmod(0x1E); + var_r31->unk40.a = frandmod(0x64) + 0x78; + var_f31 = 0.001f * frandmod(0x3E8); + var_r31->unk40.r = 235.0f + (20.0f * var_f31); + var_r31->unk40.g = 180.0f + (75.0f * var_f31); + var_r31->unk40.b = 155.0f + (100.0f * var_f31); + if (--var_r28 < 1) { + break; + } + } + } +} + +void fn_1_DD70(Vec *arg0) +{ + HsfanimStruct01 *var_r30; + + ParticleData *var_r31 = Hu3DData[lbl_1_bss_7CC->model[8]].unk_120; + Hu3DModelAttrReset(lbl_1_bss_7CC->model[8], HU3D_ATTR_DISPOFF); + var_r30 = var_r31->unk_48; + var_r31->unk_00 = 0; + var_r31->unk_02 = 0x3C; + var_r30->unk2C = 100.0f; + var_r30->unk34 = *arg0; +} + +void fn_1_DE28(ModelData *var_r27, ParticleData *var_r31, Mtx matrix) +{ + HsfanimStruct01 *var_r30; + s32 var_r29; + s8 var_r28; + + if (var_r31->unk_00 == 0) { + var_r31->unk_00 = 1; + for (var_r30 = (HsfanimStruct01 *)&var_r31->unk_48, var_r29 = 0; var_r29 < var_r31->unk_30; var_r29++, var_r30++) { + var_r30->unk2C = 0.0f; + } + } + var_r28 = 0.016666668f * (var_r31->unk_02 * 0xFF); + for (var_r30 = var_r31->unk_48, var_r29 = 0; var_r29 < var_r31->unk_30; var_r29++, var_r30++) { + var_r30->unk40.a = var_r28; + } + if (--var_r31->unk_02 == 0) { + var_r27->attr |= 1; + } + DCStoreRange(var_r31->unk_48, var_r31->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_DF44(omObjData *object) +{ + M433PlayerWork3 *work; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433PlayerWork3), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M433PlayerWork3)); + work->uGameEvent = 0; + work->sWinGrp = -1; + work->uServeGrp = 0; + work->auEvents[0] = work->auEvents[1] = 0; + work->unk_2C = work->unk_30 = 0; + fn_1_E5C0(work->unk_4C, &work->unk_64); + object->func = fn_1_E11C; +} + +void fn_1_DFE4(omObjData *var_r30) +{ + M433PlayerWork3 *work = var_r30->data; + OSReport("\n"); + OSReport("uGameEvent %d\n", work->uGameEvent); + OSReport("sWinGrp %d\n", work->sWinGrp); + OSReport("uServeGrp %d\n", work->uServeGrp); + OSReport("uPointGrp %d\n", work->uPointGrp); + OSReport("auServeCel[2] %d,%d\n", work->auServeCel[0], work->auServeCel[1]); + OSReport("auEvents[2] %d,%d\n", work->auEvents[0], work->auEvents[1]); + OSReport("uContactCnt %d\n", work->uContactCnt); + OSReport("sGroundGrp %d\n", work->sGroundGrp); + OSReport("uContactGrp %d\n", work->uContactGrp); + OSReport("sContactCel %d\n", work->uContactCel); + OSReport("uTargetGrp %d\n", work->uTargetGrp); + OSReport("\n"); +} + +void fn_1_E11C(omObjData *object) +{ + s32 spC[4]; + u32 var_r30; + s32 var_r29; + s32 var_r27; + s16 var_r26; + s16 var_r25; + + M433PlayerWork3 *work = object->data; + s32 sp8 = 0; + s32 var_r28 = 0; + work->unk_28++; + work->unk_4C[0].unk_00 = work->unk_20[0]; + work->unk_4C[1].unk_00 = work->unk_20[1]; + if (fn_1_216C() >= 2) { + fn_1_ECFC(work->unk_4C, &work->unk_64); + } + switch (work->uGameEvent) { + case 0: + work->uContactCnt = 0; + work->uContactCel = -1; + if (work->unk_28 == 0xC) { + fn_1_58D8(1); + } + if ((work->unk_28 >= 30.0f) && (fn_1_216C() >= 2)) { + work->uGameEvent = 1; + work->unk_28 = 0; + work->auEvents[0] = work->auEvents[1] = 1; + } + break; + case 1: + if (work->unk_30 != 0) { + work->unk_48 = 0; + work->uContactCel = -1; + work->uContactCnt = 0; + work->uGameEvent = 2; + work->unk_28 = 0; + work->auEvents[0] = work->auEvents[1] = 3; + if (work->uTargetGrp != 0) { + var_r26 = 5; + } + else { + var_r26 = 6; + } + fn_1_58D8(var_r26); + } + break; + case 2: + case 5: + if (work->unk_30 != 0) { + if (work->uContactCnt != 0) { + work->unk_48++; + work->uGameEvent = 3; + work->auEvents[work->uContactGrp] = 4; + if ((work->unk_48 >= 6) && ((work->unk_48 % 3) == 0)) { + fn_1_58D8(3); + } + } + work->unk_28 = 0; + } + var_r28 = 1; + break; + case 3: + case 4: + if (work->unk_30 != 0) { + if (work->uContactGrp == work->uTargetGrp) { + work->uGameEvent = 4; + work->auEvents[work->uContactGrp] = 5; + } + else { + work->uContactCel = -1; + work->uContactCnt = 0; + work->uGameEvent = 5; + work->auEvents[work->uContactGrp] = 3; + if (work->uTargetGrp != 0) { + var_r25 = 5; + } + else { + var_r25 = 6; + } + fn_1_58D8(var_r25); + } + work->unk_28 = 0; + } + var_r28 = 1; + break; + case 6: + if (work->unk_28 >= 120.0f) { + work->uGameEvent = 0; + work->unk_28 = 0; + work->auEvents[0] = work->auEvents[1] = 0; + } + break; + case 7: + break; + } + if ((work->unk_2C != 0) && (var_r28 != 0)) { + if (work->sGroundGrp >= 0) { + var_r30 = 1 - work->sGroundGrp; + fn_1_58D8(1); + } + else { + var_r30 = 1 - work->uContactGrp; + fn_1_58D8(2); + } + work->uPointGrp = var_r30; + work->unk_20[var_r30]++; + if (work->uServeGrp != var_r30) { + work->uServeGrp = var_r30; + work->auServeCel[work->uServeGrp] = 1 - work->auServeCel[work->uServeGrp]; + } + if (work->unk_20[var_r30] >= 5) { + work->sWinGrp = var_r30; + work->uGameEvent = 7; + work->auEvents[0] = work->auEvents[1] = 7; + var_r27 = 0; + for (var_r29 = 0; var_r29 < 4; var_r29++) { + spC[var_r29] = -1; + if (work->sWinGrp == OM_GET_DATA_PTR(lbl_1_bss_7D0[var_r29], M433PlayerWork)->unk_14) { + spC[var_r27++] = lbl_1_bss_7D0[var_r29]->work[0]; + } + } + fn_1_219C(1, spC[0], spC[1]); + fn_1_21E4(4); + } + else { + work->uGameEvent = 6; + work->auEvents[0] = work->auEvents[1] = 6; + fn_1_FE64(&work->unk_64, work->unk_20[0], work->unk_20[1], var_r30); + HuAudFXPlay(0x16); + } + work->unk_28 = 0; + } + work->unk_2C = 0; + work->unk_30 = 0; +} + +u16 lbl_1_data_674[6] = { 0, 1, 2, 3, 3, 0 }; +s32 lbl_1_data_680[2] = { 0x61001E, 0x61001F }; +Vec2f lbl_1_data_688[5] = { + { 0.0f, 0.0f }, + { 0.0f, 0.0f }, + { -23.0f, 0.0f }, + { 1.0f, 0.0f }, + { 21.0f, 0.0f }, +}; +Vec2f lbl_1_data_6B0[2] = { { 72.0f, 56.0f }, { 504.0f, 56.0f } }; +s32 lbl_1_data_6C0[0xB][4] = { + { 0x13000B, 0, 0, 0 }, + { 0x13000C, 0, 0, 0 }, + { 0x13000D, 0, 0, 0 }, + { 0x13000E, 0, 0, 0 }, + { 0x13000F, 0, 0, 0 }, + { 0x130010, 0, 0, 0 }, + { 0x130011, 0, 0, 0 }, + { 0x130012, 0, 0, 0 }, + { 0x130013, 0, 0, 0 }, + { 0x130014, 0, 0, 0 }, + { 0x130099, 0, 0, 0 }, +}; +s32 lbl_1_data_770[9] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +M433DllPlayerData794Struct lbl_1_data_794[9] = { + { 0, 0, 0 }, + { 0, 0, 0 }, + { 1, 1, 0 }, + { 1, 0, 1 }, + { 1, 0, 1 }, + { 1, 1, 0 }, + { 1, 1, 0 }, + { 1, 0, 1 }, + { 1, 0, 1 }, +}; +u32 lbl_1_data_800[9] = { 0, 1, 2, 1, 1, 2, 1, 1, 1 }; + +void fn_1_E5C0(M433PlayerWork3Sub *arg0, M433PlayerWork3Sub2 *arg1) +{ + s32 var_r31; s32 var_r28; s32 var_r27; - for (var_r28 = 0; var_r28 < 2; var_r28++, var_r30++) { - for (var_r31 = 0; var_r31 < 5; var_r31++) { + for (var_r28 = 0; var_r28 < 2; var_r28++, arg0++) { + for (var_r31 = 0; (u32)var_r31 < 5; var_r31++) { switch (lbl_1_data_674[var_r31]) { case 0: - var_r30->unk_02[var_r31] = espEntry(lbl_1_data_680[var_r28], 1, 0); - espPriSet(var_r30->unk_02[var_r31], 0x100); + arg0->unk_02[var_r31] = espEntry(lbl_1_data_680[var_r28], 1, 0); + espPriSet(arg0->unk_02[var_r31], 0x100); break; case 1: - var_r30->unk_02[var_r31] = espEntry(0x610020, 1, 0); - espPriSet(var_r30->unk_02[var_r31], 0x101); - espColorSet(var_r30->unk_02[var_r31], 0, 0, 0); - espTPLvlSet(var_r30->unk_02[var_r31], 0.5); + arg0->unk_02[var_r31] = espEntry(0x610020, 1, 0); + espPriSet(arg0->unk_02[var_r31], 0x101); + espColorSet(arg0->unk_02[var_r31], 0, 0, 0); + espTPLvlSet(arg0->unk_02[var_r31], 0.5); break; case 2: - var_r30->unk_02[var_r31] = espEntry(0x40000A, 1, 0); - espPriSet(var_r30->unk_02[var_r31], 0xFF); + arg0->unk_02[var_r31] = espEntry(DATA_MAKE_NUM(DATADIR_M433, 10), 1, 0); + espPriSet(arg0->unk_02[var_r31], 0xFF); break; case 3: - var_r30->unk_02[var_r31] = espEntry(0x610033, 1, 0); - espPriSet(var_r30->unk_02[var_r31], 0xFF); + arg0->unk_02[var_r31] = espEntry(0x610033, 1, 0); + espPriSet(arg0->unk_02[var_r31], 0xFF); break; } - espDispOff(var_r30->unk_02[var_r31]); - espDrawNoSet(var_r30->unk_02[var_r31], 0); - espAttrSet(var_r30->unk_02[var_r31], HUSPR_ATTR_NOANIM); - espAttrSet(var_r30->unk_02[var_r31], HUSPR_ATTR_LINEAR); - espPosSet(var_r30->unk_02[var_r31], lbl_1_data_6B0[var_r28].x + lbl_1_data_688[var_r31].x, - lbl_1_data_6B0[var_r28].y + lbl_1_data_688[var_r31].y); + espDispOff(arg0->unk_02[var_r31]); + espDrawNoSet(arg0->unk_02[var_r31], 0); + espAttrSet(arg0->unk_02[var_r31], HUSPR_ATTR_NOANIM); + espAttrSet(arg0->unk_02[var_r31], HUSPR_ATTR_LINEAR); + espPosSet( + arg0->unk_02[var_r31], lbl_1_data_6B0[var_r28].x + lbl_1_data_688[var_r31].x, lbl_1_data_6B0[var_r28].y + lbl_1_data_688[var_r31].y); } } HuDataDirClose(0x610000); for (var_r28 = 0; var_r28 < 3; var_r28++) { for (var_r31 = 0; var_r31 < 0x14; var_r31++) { for (var_r27 = 0; var_r27 < 2; var_r27++) { - // if (*(&lbl_1_data_6C0[var_r31 % 10] + (var_r27 * 4)) != 0) { - // *(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0)) - // = espEntry(*(&lbl_1_data_6C0[var_r31 % 10] + (var_r27 * 4)), 2, 0); - // espAttrSet(*(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0)), HUSPR_ATTR_LINEAR); - // espDispOff(*(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0))); - // } - // else { - // *(var_r29 + ((var_r28 * 0x140) + (var_r31 * 0x10) + (var_r27 * 4) + 0xD0)) = -1; - // } + if (lbl_1_data_6C0[var_r31 % 10][var_r27] != 0) { + arg1->unk_D0[var_r28][var_r31].unk_00[var_r27] = espEntry(lbl_1_data_6C0[var_r31 % 10][var_r27], 2, 0); + espAttrSet(arg1->unk_D0[var_r28][var_r31].unk_00[var_r27], HUSPR_ATTR_LINEAR); + espDispOff(arg1->unk_D0[var_r28][var_r31].unk_00[var_r27]); + } + else { + arg1->unk_D0[var_r28][var_r31].unk_00[var_r27] = -1; + } } } } for (var_r27 = 0; var_r27 < 2; var_r27++) { - // if ((lbl_1_data_6C0 + (var_r27 * 4))->unk_A0 != 0) { - // var_r29->unk_490[var_r27] = espEntry((lbl_1_data_6C0 + (var_r27 * 4))->unk_A0, 2, 0); - // espAttrSet(var_r29->unk_490[var_r27], HUSPR_ATTR_LINEAR); - // espDispOff(var_r29->unk_490[var_r27]); - // } - // else { - // var_r29->unk_490[var_r27] = -1; - // } + if (lbl_1_data_6C0[10][var_r27] != 0) { + arg1->unk_490.unk_00[var_r27] = espEntry(lbl_1_data_6C0[10][var_r27], 2, 0); + espAttrSet(arg1->unk_490.unk_00[var_r27], HUSPR_ATTR_LINEAR); + espDispOff(arg1->unk_490.unk_00[var_r27]); + } + else { + arg1->unk_490.unk_00[var_r27] = -1; + } } for (var_r28 = 0; var_r28 < 2; var_r28++) { - // *(var_r29 + ((var_r28 * 0x2C) + 0x20)) = -1; - // *(var_r29 + ((var_r28 * 0x2C) + 0x22)) = -1; + arg1->unk_20[var_r28].unk_00[0] = -1; + arg1->unk_20[var_r28].unk_00[1] = -1; } - var_r29->unk_78 = -1; - var_r29->unk_7A = -1; - var_r29->unk_A4 = -1; - var_r29->unk_A6 = -1; - HuDataDirClose(lbl_1_data_6C0->unk_00); + arg1->unk_20[2].unk_00[0] = -1; + arg1->unk_20[2].unk_00[1] = -1; + arg1->unk_20[3].unk_00[0] = -1; + arg1->unk_20[3].unk_00[1] = -1; + HuDataDirClose(lbl_1_data_6C0[0][0]); } -// void fn_1_EA8C(void *arg0) -// { -// double var_f31; -// double var_f30; -// void *var_r31; -// s32 var_r30; +void fn_1_EA8C(M433PlayerWork3Sub2Sub *var_r31) +{ + float var_f31; + float var_f30; + s32 var_r30; -// var_r31 = arg0; -// for (var_r30 = 0; var_r30 < 2; var_r30++) { -// if (*(var_r31 + (var_r30 * 2)) >= 0) { -// espDispOn(*(var_r31 + (var_r30 * 2))); -// var_f31 = (*(var_r31 + ((var_r30 * 4) + 4)) * var_r31->unk_1C) * cosd(var_r31->unk_28); -// var_f31 = var_f31; -// var_f30 = (*(var_r31 + ((var_r30 * 4) + 4)) * var_r31->unk_1C) * sind(var_r31->unk_28); -// var_f30 = var_f30; -// espPosSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_0C + var_f31, var_r31->unk_10 + var_f30); -// espZRotSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_28); -// espScaleSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_1C, var_r31->unk_20); -// espTPLvlSet(*(var_r31 + (var_r30 * 2)), var_r31->unk_24); -// } -// } -// } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + if (var_r31->unk_00[var_r30] >= 0) { + espDispOn(var_r31->unk_00[var_r30]); + var_f31 = (var_r31->unk_04[var_r30] * var_r31->unk_1C) * cosd(var_r31->unk_28); + var_f30 = (var_r31->unk_04[var_r30] * var_r31->unk_1C) * sind(var_r31->unk_28); + espPosSet(var_r31->unk_00[var_r30], var_r31->unk_0C + var_f31, var_r31->unk_10 + var_f30); + espZRotSet(var_r31->unk_00[var_r30], var_r31->unk_28); + espScaleSet(var_r31->unk_00[var_r30], var_r31->unk_1C, var_r31->unk_20); + espTPLvlSet(var_r31->unk_00[var_r30], var_r31->unk_24); + } + } +} -// void fn_1_EBE4(s32 arg0, void *arg1, s32 arg2) -// { -// s32 var_r31; -// u32 var_r30; +void fn_1_EBE4(M433PlayerWork3Sub2Sub2 *arg0, M433PlayerWork3Sub2Sub *arg1, u32 arg2) +{ + u32 var_r31; + u32 var_r30; -// var_r31 = arg2 % 10; -// var_r30 = arg2 / 10; -// if (var_r30 == 0) { -// arg1->unk_00 = *(arg0 + (var_r31 * 0x10)); -// arg1->unk_02 = -1; -// arg1->unk_04 = 0.0f; -// } -// else { -// arg1->unk_00 = *(arg0 + ((var_r30 + 0xA) * 0x10)); -// arg1->unk_02 = *(arg0 + (var_r31 * 0x10)); -// arg1->unk_04 = -23.039999f; -// arg1->unk_08 = 23.039999f; -// } -// arg1->unk_10 = 0.0f; -// arg1->unk_0C = 0.0f; -// arg1->unk_18 = 0.0f; -// arg1->unk_14 = 0.0f; -// arg1->unk_20 = 1.5f; -// arg1->unk_1C = 1.5f; -// arg1->unk_24 = 1.0f; -// arg1->unk_28 = 0.0f; -// } + var_r31 = arg2 % 10; + var_r30 = arg2 / 10; + if (var_r30 == 0) { + arg1->unk_00[0] = arg0[var_r31].unk_00[0]; + arg1->unk_00[1] = -1; + arg1->unk_04[0] = 0.0f; + } + else { + arg1->unk_00[0] = arg0[var_r30 + 0xA].unk_00[0]; + arg1->unk_00[1] = arg0[var_r31].unk_00[0]; + arg1->unk_04[0] = -23.039999f; + arg1->unk_04[1] = 23.039999f; + } + arg1->unk_0C = arg1->unk_10 = 0.0f; + arg1->unk_14 = arg1->unk_18 = 0.0f; + arg1->unk_1C = arg1->unk_20 = 1.5f; + arg1->unk_24 = 1.0f; + arg1->unk_28 = 0.0f; +} -// void fn_1_ECFC(void *arg0, void *arg1) -// { -// s32 sp1C; -// u32 sp18; -// s32 sp14; -// u32 sp10; -// s32 spC; -// s32 sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// double var_f27; -// double var_f26; -// double var_f25; -// double var_f24; -// double var_f23; -// double var_f22; -// double var_f21; -// double var_f20; -// void *var_r31; -// void *var_r30; -// void *var_r29; -// s32 var_r28; -// s32 var_r27; -// s32 var_r26; -// s32 var_r25; -// s32 var_r24; -// void *var_r23; -// s32 var_r22; -// u32 var_r21; -// s32 var_r20; -// s32 var_r19; -// u32 var_r18; -// s32 var_r17; -// s32 temp_r0; +void fn_1_ECFC(M433PlayerWork3Sub *arg0, M433PlayerWork3Sub2 *arg1) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + M433PlayerWork3Sub2Sub *var_r30; + M433PlayerWork3Sub2Sub2 *var_r29; + s32 var_r28; + s32 var_r22; -// var_r23 = arg0; -// var_r31 = arg1; -// var_r28 = 0; -// loop_5: -// if (var_r28 < 2) { -// for (var_r22 = 0; var_r22 < 5; var_r22++) { -// espDispOn(*(var_r23 + ((var_r22 * 2) + 2))); -// } -// espBankSet(var_r23->unk_08, var_r23->unk_00 / 10); -// espBankSet(var_r23->unk_0A, var_r23->unk_00 % 10); -// var_r28++; -// var_r23 += 0xC; -// goto loop_5; -// } -// var_f28 = 2.88f; -// if (var_r31->unk_1C == 0) { -// var_r30 = var_r31 + 0x20; -// } -// else { -// var_r30 = var_r31 + 0x4C; -// var_f28 = 2.88f * -1.0f; -// } -// temp_r0 = var_r31->unk_00; -// switch (temp_r0) { -// case 1: -// var_r19 = var_r31->unk_0C; -// var_r20 = var_r31->unk_0C % 10; -// var_r21 = var_r31->unk_0C / 10; -// if (var_r21 == 0) { -// var_r31->unk_20 = (var_r31 + (var_r20 * 0x10))->unk_D0; -// var_r31->unk_22 = -1; -// var_r31->unk_24 = 0.0f; -// } -// else { -// var_r31->unk_20 = (var_r31 + ((var_r21 + 0xA) * 0x10))->unk_D0; -// var_r31->unk_22 = (var_r31 + (var_r20 * 0x10))->unk_D0; -// var_r31->unk_24 = -23.039999f; -// var_r31->unk_28 = 23.039999f; -// } -// var_r31->unk_30 = 0.0f; -// var_r31->unk_2C = 0.0f; -// var_r31->unk_38 = 0.0f; -// var_r31->unk_34 = 0.0f; -// var_r31->unk_40 = 1.5f; -// var_r31->unk_3C = 1.5f; -// var_r31->unk_44 = 1.0f; -// var_r31->unk_48 = 0.0f; -// sp1C = var_r31->unk_10; -// var_r17 = sp1C % 10; -// var_r18 = sp1C / 10; -// if (var_r18 == 0) { -// var_r31->unk_4C = (var_r31 + (var_r17 * 0x10))->unk_210; -// var_r31->unk_4E = -1; -// var_r31->unk_50 = 0.0f; -// } -// else { -// var_r31->unk_4C = (var_r31 + ((var_r18 + 0xA) * 0x10))->unk_210; -// var_r31->unk_4E = (var_r31 + (var_r17 * 0x10))->unk_210; -// var_r31->unk_50 = -23.039999f; -// var_r31->unk_54 = 23.039999f; -// } -// var_r31->unk_5C = 0.0f; -// var_r31->unk_58 = 0.0f; -// var_r31->unk_64 = 0.0f; -// var_r31->unk_60 = 0.0f; -// var_r31->unk_6C = 1.5f; -// var_r31->unk_68 = 1.5f; -// var_r31->unk_70 = 1.0f; -// var_r31->unk_74 = 0.0f; -// sp14 = 0; -// sp18 = 0; -// if (sp18 == 0) { -// var_r31->unk_78 = (var_r31 + (sp14 * 0x10))->unk_490; -// var_r31->unk_7A = -1; -// var_r31->unk_7C = 0.0f; -// } -// else { -// var_r31->unk_78 = (var_r31 + ((sp18 + 0xA) * 0x10))->unk_490; -// var_r31->unk_7A = (var_r31 + (sp14 * 0x10))->unk_490; -// var_r31->unk_7C = -23.039999f; -// var_r31->unk_80 = 23.039999f; -// } -// var_r31->unk_88 = 0.0f; -// var_r31->unk_84 = 0.0f; -// var_r31->unk_90 = 0.0f; -// var_r31->unk_8C = 0.0f; -// var_r31->unk_98 = 1.5f; -// var_r31->unk_94 = 1.5f; -// var_r31->unk_9C = 1.0f; -// var_r31->unk_A0 = 0.0f; -// sp8 = *(var_r31 + ((var_r31->unk_1C * 4) + 0x14)); -// spC = sp8 % 10; -// sp10 = sp8 / 10; -// if (sp10 == 0) { -// var_r31->unk_A4 = (var_r31 + (spC * 0x10))->unk_350; -// var_r31->unk_A6 = -1; -// var_r31->unk_A8 = 0.0f; -// } -// else { -// var_r31->unk_A4 = (var_r31 + ((sp10 + 0xA) * 0x10))->unk_350; -// var_r31->unk_A6 = (var_r31 + (spC * 0x10))->unk_350; -// var_r31->unk_A8 = -23.039999f; -// var_r31->unk_AC = 23.039999f; -// } -// var_r31->unk_B4 = 0.0f; -// var_r31->unk_B0 = 0.0f; -// var_r31->unk_BC = 0.0f; -// var_r31->unk_B8 = 0.0f; -// var_r31->unk_C4 = 1.5f; -// var_r31->unk_C0 = 1.5f; -// var_r31->unk_C8 = 1.0f; -// var_r31->unk_CC = 0.0f; -// var_f30 = -48.0f; -// var_r31->unk_2C = 172.8f; -// var_r31->unk_30 = 360.0f - -48.0f; -// var_r31->unk_58 = 403.19998f; -// var_r31->unk_5C = 360.0f - -48.0f; -// var_r31->unk_84 = 288.0f; -// var_r31->unk_88 = 360.0f - -48.0f; -// var_r31->unk_9C = 0.0f; -// var_r31->unk_70 = 0.0f; -// var_r31->unk_44 = 0.0f; -// var_f30 = -48.0f / 19.199999f; -// var_r31->unk_38 = var_f30; -// var_r31->unk_64 = var_f30; -// var_r31->unk_90 = var_f30; -// var_r31->unk_B0 = 806.39996f; -// var_r31->unk_B4 = 144.0f; -// var_r31->unk_C0 = var_r31->unk_C0 + 0.5f; -// var_r31->unk_C4 = var_r31->unk_C4 - 0.5f; -// var_r31->unk_B8 = (403.19998f - var_r31->unk_B0) / 24.0f; -// var_r31->unk_BC = (360.0f - var_r31->unk_B4) / 24.0f; -// if (var_r31->unk_1C == 0) { -// var_r31->unk_B0 = -230.40001f; -// var_r31->unk_B8 = var_r31->unk_B8 * -1.0f; -// } -// var_r31->unk_00++; -// var_r31->unk_04 = 0; -// break; -// case 2: -// var_f31 = var_r31->unk_44; -// var_f31 += 0.055555556f; -// if (var_f31 > 0.95f) { -// var_f31 = 1.0f; -// } -// var_r31->unk_9C = var_f31; -// var_r31->unk_70 = var_f31; -// var_r31->unk_44 = var_f31; -// var_r31->unk_30 = var_r31->unk_30 + var_r31->unk_38; -// var_r31->unk_5C = var_r31->unk_5C + var_r31->unk_64; -// var_r31->unk_88 = var_r31->unk_88 + var_r31->unk_90; -// var_r31->unk_B0 = var_r31->unk_B0 + var_r31->unk_B8; -// var_r31->unk_B4 = var_r31->unk_B4 + var_r31->unk_BC; -// if (var_r31->unk_04 >= 19.199999f) { -// var_r30->unk_14 = var_f28; -// var_r30->unk_18 = -16.0f; -// var_r31->unk_00++; -// var_r31->unk_08 = 0; -// } -// break; -// case 3: -// if (var_r31->unk_04 <= 24.0f) { -// var_r31->unk_B0 = var_r31->unk_B0 + var_r31->unk_B8; -// var_r31->unk_B4 = var_r31->unk_B4 + var_r31->unk_BC; -// } -// if (var_r31->unk_08 < 24.0f) { -// var_r31->unk_08++; -// var_f31 = 33.75f * var_r31->unk_08; -// var_f29 = 0.041666668f * var_r31->unk_08; -// var_f29 = 0.5f * (1.0f - (var_f29 * var_f29)); -// if (var_r31->unk_08 == 24.0f) { -// var_f29 = 0.0f; -// } -// var_r31->unk_C0 = 1.5 + (var_f29 * cosd(var_f31)); -// var_r31->unk_C4 = 1.5 + (var_f29 * sind((var_f31 - 90.0f))); -// } -// var_r30->unk_1C = var_r31->unk_C4; -// var_r30->unk_20 = var_r31->unk_C0; -// var_r30->unk_0C = var_r30->unk_0C + var_r30->unk_14; -// var_r30->unk_10 = var_r30->unk_10 + var_r30->unk_18; -// var_r30->unk_18 = var_r30->unk_18 + 0.80000013f; -// var_r30->unk_28 = var_r30->unk_28 + 8.333334f; -// var_r30->unk_24 = var_r30->unk_24 - 0.017833335f; -// if (var_r30->unk_24 < 0.0f) { -// var_r30->unk_24 = 0.0f; -// } -// if (fn_1_10EA4() == 0) { -// var_r31->unk_00++; -// var_r31->unk_04 = 0; -// } -// break; -// case 4: -// var_f31 = var_r31->unk_C8; -// var_f31 -= 0.055555556f; -// if (var_f31 < 0.05f) { -// var_f31 = 0.0f; -// var_r31->unk_00++; -// var_r31->unk_04 = 0; -// } -// var_r31->unk_C8 = var_f31; -// var_r31->unk_9C = var_f31; -// var_r31->unk_70 = var_f31; -// var_r31->unk_44 = var_f31; -// break; -// default: -// for (var_r28 = 0; var_r28 < 2; var_r28++) { -// *(var_r31 + ((var_r28 * 0x2C) + 0x20)) = -1; -// *(var_r31 + ((var_r28 * 0x2C) + 0x22)) = -1; -// } -// var_r31->unk_78 = -1; -// var_r31->unk_7A = -1; -// var_r31->unk_A4 = -1; -// var_r31->unk_A6 = -1; -// var_r31->unk_00 = 0; -// break; -// } -// for (var_r28 = 0; var_r28 < 3; var_r28++) { -// var_r29 = (var_r28 * 0x140) + 0xD0; -// var_r29 += var_r31; -// var_r22 = 0; -// loop_60: -// if (var_r22 < 0x14) { -// if (var_r29->unk_00 >= 0) { -// espDispOff(var_r29->unk_00); -// } -// if (var_r29->unk_04 >= 0) { -// espDispOff(var_r29->unk_04); -// } -// var_r22++; -// var_r29 += 0x10; -// goto loop_60; -// } -// } -// var_r29 = var_r31 + 0x490; -// if (var_r29->unk_00 >= 0) { -// espDispOff(var_r29->unk_00); -// } -// if (var_r29->unk_04 >= 0) { -// espDispOff(var_r29->unk_04); -// } -// for (var_r27 = 0; var_r27 < 2; var_r27++) { -// if ((var_r31 + (var_r27 * 2))->unk_20 >= 0) { -// espDispOn((var_r31 + (var_r27 * 2))->unk_20); -// var_f26 = ((var_r31 + (var_r27 * 4))->unk_24 * var_r31->unk_3C) * cosd(var_r31->unk_48); -// var_f26 = var_f26; -// var_f27 = ((var_r31 + (var_r27 * 4))->unk_24 * var_r31->unk_3C) * sind(var_r31->unk_48); -// var_f27 = var_f27; -// espPosSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_2C + var_f26, var_r31->unk_30 + var_f27); -// espZRotSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_48); -// espScaleSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_3C, var_r31->unk_40); -// espTPLvlSet((var_r31 + (var_r27 * 2))->unk_20, var_r31->unk_44); -// } -// } -// for (var_r26 = 0; var_r26 < 2; var_r26++) { -// if ((var_r31 + (var_r26 * 2))->unk_4C >= 0) { -// espDispOn((var_r31 + (var_r26 * 2))->unk_4C); -// var_f24 = ((var_r31 + (var_r26 * 4))->unk_50 * var_r31->unk_68) * cosd(var_r31->unk_74); -// var_f24 = var_f24; -// var_f25 = ((var_r31 + (var_r26 * 4))->unk_50 * var_r31->unk_68) * sind(var_r31->unk_74); -// var_f25 = var_f25; -// espPosSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_58 + var_f24, var_r31->unk_5C + var_f25); -// espZRotSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_74); -// espScaleSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_68, var_r31->unk_6C); -// espTPLvlSet((var_r31 + (var_r26 * 2))->unk_4C, var_r31->unk_70); -// } -// } -// for (var_r25 = 0; var_r25 < 2; var_r25++) { -// if ((var_r31 + (var_r25 * 2))->unk_78 >= 0) { -// espDispOn((var_r31 + (var_r25 * 2))->unk_78); -// var_f22 = ((var_r31 + (var_r25 * 4))->unk_7C * var_r31->unk_94) * cosd(var_r31->unk_A0); -// var_f22 = var_f22; -// var_f23 = ((var_r31 + (var_r25 * 4))->unk_7C * var_r31->unk_94) * sind(var_r31->unk_A0); -// var_f23 = var_f23; -// espPosSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_84 + var_f22, var_r31->unk_88 + var_f23); -// espZRotSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_A0); -// espScaleSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_94, var_r31->unk_98); -// espTPLvlSet((var_r31 + (var_r25 * 2))->unk_78, var_r31->unk_9C); -// } -// } -// for (var_r24 = 0; var_r24 < 2; var_r24++) { -// if ((var_r31 + (var_r24 * 2))->unk_A4 >= 0) { -// espDispOn((var_r31 + (var_r24 * 2))->unk_A4); -// var_f20 = ((var_r31 + (var_r24 * 4))->unk_A8 * var_r31->unk_C0) * cosd(var_r31->unk_CC); -// var_f20 = var_f20; -// var_f21 = ((var_r31 + (var_r24 * 4))->unk_A8 * var_r31->unk_C0) * sind(var_r31->unk_CC); -// var_f21 = var_f21; -// espPosSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_B0 + var_f20, var_r31->unk_B4 + var_f21); -// espZRotSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_CC); -// espScaleSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_C0, var_r31->unk_C4); -// espTPLvlSet((var_r31 + (var_r24 * 2))->unk_A4, var_r31->unk_C8); -// } -// } -// var_r31->unk_04++; -// } + for (var_r28 = 0; var_r28 < 2; var_r28++, arg0++) { + for (var_r22 = 0; var_r22 < 5; var_r22++) { + espDispOn(arg0->unk_02[var_r22]); + } + espBankSet(arg0->unk_02[3], arg0->unk_00 / 10); + espBankSet(arg0->unk_02[4], arg0->unk_00 % 10); + } + var_f28 = 2.88f; + if (arg1->unk_1C == 0) { + var_r30 = arg1->unk_20; + } + else { + var_r30 = &arg1->unk_20[1]; + var_f28 *= -1.0f; + } + switch (arg1->unk_00) { + case 0: + break; + case 1: + fn_1_EBE4(&arg1->unk_D0[0][0], &arg1->unk_20[0], arg1->unk_0C); + fn_1_EBE4(&arg1->unk_D0[1][0], &arg1->unk_20[1], arg1->unk_10); + fn_1_EBE4(&arg1->unk_490, &arg1->unk_20[2], 0); + fn_1_EBE4(&arg1->unk_D0[2][0], &arg1->unk_20[3], arg1->unk_14[arg1->unk_1C]); -// void fn_1_FE64(void *arg0, s32 arg1, s32 arg2, u32 arg3) -// { -// arg0->unk_00 = 1; -// arg0->unk_0C = arg0->unk_14; -// arg0->unk_10 = arg0->unk_18; -// arg0->unk_14 = arg1; -// arg0->unk_18 = arg2; -// arg0->unk_1C = arg3; -// } + var_f30 = -48.0f; + arg1->unk_20[0].unk_0C = 172.8f; + arg1->unk_20[0].unk_10 = 360.0f - var_f30; + arg1->unk_20[1].unk_0C = 403.19998f; + arg1->unk_20[1].unk_10 = 360.0f - var_f30; + arg1->unk_20[2].unk_0C = 288.0f; + arg1->unk_20[2].unk_10 = 360.0f - var_f30; + arg1->unk_20[0].unk_24 = arg1->unk_20[1].unk_24 = arg1->unk_20[2].unk_24 = 0.0f; + var_f30 = var_f30 / 19.199999f; + arg1->unk_20[0].unk_18 = var_f30; + arg1->unk_20[1].unk_18 = var_f30; + arg1->unk_20[2].unk_18 = var_f30; + arg1->unk_20[3].unk_0C = 806.39996f; + arg1->unk_20[3].unk_10 = 144.0f; + arg1->unk_20[3].unk_1C += 0.5f; + arg1->unk_20[3].unk_20 -= 0.5f; + arg1->unk_20[3].unk_14 = (403.19998f - arg1->unk_20[3].unk_0C) / 24.0f; + arg1->unk_20[3].unk_18 = (360.0f - arg1->unk_20[3].unk_10) / 24.0f; + if (arg1->unk_1C == 0) { + arg1->unk_20[3].unk_0C = -230.40001f; + arg1->unk_20[3].unk_14 *= -1.0f; + } + arg1->unk_00++; + arg1->unk_04 = 0; + break; + case 2: + var_f31 = arg1->unk_20[0].unk_24; + var_f31 += 0.055555556f; + if (var_f31 > 0.95f) { + var_f31 = 1.0f; + } + arg1->unk_20[2].unk_24 = var_f31; + arg1->unk_20[1].unk_24 = var_f31; + arg1->unk_20[0].unk_24 = var_f31; + arg1->unk_20[0].unk_10 += arg1->unk_20[0].unk_18; + arg1->unk_20[1].unk_10 += arg1->unk_20[1].unk_18; + arg1->unk_20[2].unk_10 += arg1->unk_20[2].unk_18; + arg1->unk_20[3].unk_0C += arg1->unk_20[3].unk_14; + arg1->unk_20[3].unk_10 += arg1->unk_20[3].unk_18; + if (arg1->unk_04 >= 19.199999f) { + var_r30->unk_14 = var_f28; + var_r30->unk_18 = -16.0f; + arg1->unk_00++; + arg1->unk_08 = 0; + } + break; + case 3: + if (arg1->unk_04 <= 24.0f) { + arg1->unk_20[3].unk_0C += arg1->unk_20[3].unk_14; + arg1->unk_20[3].unk_10 += arg1->unk_20[3].unk_18; + } + if (arg1->unk_08 < 24.0f) { + arg1->unk_08++; + var_f31 = 33.75f * arg1->unk_08; + var_f29 = 0.041666668f * arg1->unk_08; + var_f29 = 0.5f * (1.0f - (var_f29 * var_f29)); + if (arg1->unk_08 == 24.0f) { + var_f29 = 0.0f; + } + arg1->unk_20[3].unk_1C = 1.5 + (var_f29 * cosd(var_f31)); + arg1->unk_20[3].unk_20 = 1.5 + (var_f29 * sind((var_f31 - 90.0f))); + } + var_r30->unk_1C = arg1->unk_20[3].unk_20; + var_r30->unk_20 = arg1->unk_20[3].unk_1C; + var_r30->unk_0C += var_r30->unk_14; + var_r30->unk_10 += var_r30->unk_18; + var_r30->unk_18 += 0.80000013f; + var_r30->unk_28 += 8.333334f; + var_r30->unk_24 -= 0.017833335f; + if (var_r30->unk_24 < 0.0f) { + var_r30->unk_24 = 0.0f; + } + if (fn_1_10EA4() == 0) { + arg1->unk_00++; + arg1->unk_04 = 0; + } + break; + case 4: + var_f31 = arg1->unk_20[3].unk_24; + var_f31 -= 0.055555556f; + if (var_f31 < 0.05f) { + var_f31 = 0.0f; + arg1->unk_00++; + arg1->unk_04 = 0; + } + arg1->unk_20[3].unk_24 = var_f31; + arg1->unk_20[2].unk_24 = var_f31; + arg1->unk_20[1].unk_24 = var_f31; + arg1->unk_20[0].unk_24 = var_f31; + break; + default: + for (var_r28 = 0; var_r28 < 2; var_r28++) { + arg1->unk_20[var_r28].unk_00[0] = -1; + arg1->unk_20[var_r28].unk_00[1] = -1; + } + arg1->unk_20[2].unk_00[0] = -1; + arg1->unk_20[2].unk_00[1] = -1; + arg1->unk_20[3].unk_00[0] = -1; + arg1->unk_20[3].unk_00[1] = -1; + arg1->unk_00 = 0; + break; + } + for (var_r28 = 0; var_r28 < 3; var_r28++) { + var_r29 = &arg1->unk_D0[var_r28][0]; + for (var_r22 = 0; var_r22 < 0x14; var_r22++, var_r29++) { + if (var_r29->unk_00[0] >= 0) { + espDispOff(var_r29->unk_00[0]); + } + if (var_r29->unk_00[1] >= 0) { + espDispOff(var_r29->unk_00[1]); + } + } + } + var_r29 = &arg1->unk_490; + if (var_r29->unk_00[0] >= 0) { + espDispOff(var_r29->unk_00[0]); + } + if (var_r29->unk_00[1] >= 0) { + espDispOff(var_r29->unk_00[1]); + } + fn_1_EA8C(&arg1->unk_20[0]); + fn_1_EA8C(&arg1->unk_20[1]); + fn_1_EA8C(&arg1->unk_20[2]); + fn_1_EA8C(&arg1->unk_20[3]); + arg1->unk_04++; +} -// void fn_1_FE8C(Vec *arg0, u32 arg1, u32 arg2, s32 arg3) -// { -// void *var_r31; -// void *var_r30; -// u32 var_r29; -// s32 var_r28; -// u32 var_r27; -// s32 var_r26; -// Vec *var_r25; +void fn_1_FE64(M433PlayerWork3Sub2 *arg0, s32 arg1, s32 arg2, u32 arg3) +{ + arg0->unk_00 = 1; + arg0->unk_0C = arg0->unk_14[0]; + arg0->unk_10 = arg0->unk_14[1]; + arg0->unk_14[0] = arg1; + arg0->unk_14[1] = arg2; + arg0->unk_1C = arg3; +} -// var_r25 = arg0; -// var_r29 = arg1; -// var_r27 = arg2; -// var_r26 = arg3; -// var_r31 = lbl_1_bss_7CC->data; -// var_r31->unk_18 = 0; -// if (var_r29 < 9) { -// var_r31->unk_18 = lbl_1_data_770[var_r29]; -// if (lbl_1_data_794[var_r29].unk_00 != 0) { -// var_r30 = lbl_1_bss_7C8->data; -// var_r30->unk_30 = 1; -// var_r30->unk_3C = var_r27; -// var_r30->unk_40 = var_r26; -// var_r30->unk_44 = var_r27; -// if (lbl_1_data_794[var_r29].unk_04 != 0) { -// var_r30->unk_44 = 1 - var_r30->unk_44; -// } -// if (lbl_1_data_794[var_r29].unk_08 != 0) { -// var_r30->unk_34++; -// } -// } -// } -// if (var_r29 == 5) { -// var_r28 = 6; -// if (var_r31->unk_6C == 5) { -// var_r28 = 7; -// } -// Hu3DModelPosSetV(lbl_1_bss_7CC->model[var_r28], var_r31 + 0x30); -// Hu3DModelAttrReset(lbl_1_bss_7CC->model[var_r28], HU3D_ATTR_DISPOFF); -// Hu3DMotionTimeSet(lbl_1_bss_7CC->model[var_r28], 0.0f); -// Hu3DMotionShapeTimeSet(lbl_1_bss_7CC->model[var_r28], 0.0f); -// } -// else if (var_r29 != 2) { -// var_r31->unk_A8 = 1.0f; -// } -// var_r31->unk_0C = 1; -// var_r31->unk_10 = 0; -// var_r31->unk_04 = 0; -// var_r31->unk_08 = 0; -// var_r31->unk_6C = var_r29; -// var_r31->unk_70 = var_r27; -// var_r31->unk_74 = var_r26; -// if (lbl_1_data_800[var_r29] != 0) { -// var_r31->unk_78 = lbl_1_data_800[var_r29]; -// } -// else if (var_r31->unk_78 != 0) { -// var_r31->unk_78--; -// } -// var_r31->unk_3C = var_r25->x; -// var_r31->unk_40 = var_r25->y; -// var_r31->unk_44 = var_r25->z; -// if (var_r29 == 0) { -// var_r31->unk_30 = var_r31->unk_3C; -// var_r31->unk_34 = var_r31->unk_40; -// var_r31->unk_38 = var_r31->unk_44; -// } -// var_r31->unk_F8 = 1.0f; -// var_r31->unk_F8 = 0.0f; -// } +void fn_1_FE8C(Vec *arg0, u32 arg1, u32 arg2, s32 arg3) +{ + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + var_r31->unk_18 = 0; + if (arg1 < 9) { + var_r31->unk_18 = lbl_1_data_770[arg1]; + if (lbl_1_data_794[arg1].unk_00 != 0) { + M433PlayerWork3 *var_r30 = lbl_1_bss_7C8->data; + var_r30->unk_30 = 1; + var_r30->uContactGrp = arg2; + var_r30->uContactCel = arg3; + var_r30->uTargetGrp = arg2; + if (lbl_1_data_794[arg1].unk_04 != 0) { + var_r30->uTargetGrp = 1 - var_r30->uTargetGrp; + } + if (lbl_1_data_794[arg1].unk_08 != 0) { + var_r30->uContactCnt++; + } + } + } + if (arg1 == 5) { + s32 var_r28 = 6; + if (var_r31->unk_6C == 5) { + var_r28++; + } + Hu3DModelPosSetV(lbl_1_bss_7CC->model[var_r28], &var_r31->unk_30); + Hu3DModelAttrReset(lbl_1_bss_7CC->model[var_r28], HU3D_ATTR_DISPOFF); + Hu3DMotionTimeSet(lbl_1_bss_7CC->model[var_r28], 0.0f); + Hu3DMotionShapeTimeSet(lbl_1_bss_7CC->model[var_r28], 0.0f); + } + else if (arg1 != 2) { + var_r31->unk_A8 = 1.0f; + } + var_r31->unk_0C = 1; + var_r31->unk_10 = 0; + var_r31->unk_04 = 0; + var_r31->unk_08 = 0; + var_r31->unk_6C = arg1; + var_r31->unk_70 = arg2; + var_r31->unk_74 = arg3; + if (lbl_1_data_800[arg1] != 0) { + var_r31->unk_78 = lbl_1_data_800[arg1]; + } + else if (var_r31->unk_78 != 0) { + var_r31->unk_78--; + } + var_r31->unk_3C = *arg0; + if (arg1 == 0) { + var_r31->unk_30 = var_r31->unk_3C; + } + var_r31->unk_F8.unk_00 = 1.0f; + var_r31->unk_F8.unk_00 = 0.0f; +} -// void fn_1_10130(Vec *arg0, u32 arg1) -// { -// float var_f31; +void fn_1_10130(Vec *arg0, u32 arg1) +{ + float var_f31 = 44.0f; + if ((arg0->z - var_f31) < -500.0f) { + arg0->z = -500.0f + var_f31; + } + else if ((arg0->z + var_f31) > 500.0f) { + arg0->z = 500.0f - var_f31; + } + if (arg1 == 0) { + arg0->x *= -1.0f; + } + if ((arg0->x - var_f31) < 20.0f) { + arg0->x = 20.0f + var_f31; + } + else if ((arg0->x + var_f31) > 800.0f) { + arg0->x = 800.0f - var_f31; + } + if (arg1 == 0) { + arg0->x *= -1.0f; + } +} -// var_f31 = 44.0f; -// if ((arg0->z - 44.0f) < -500.0f) { -// arg0->z = -500.0f + 44.0f; -// } -// else if ((arg0->z + 44.0f) > 500.0f) { -// arg0->z = 500.0f - 44.0f; -// } -// if (arg1 == 0) { -// arg0->x *= -1.0f; -// } -// if ((arg0->x - 44.0f) < 20.0f) { -// arg0->x = 20.0f + 44.0f; -// } -// else if ((arg0->x + 44.0f) > 800.0f) { -// arg0->x = 800.0f - 44.0f; -// } -// if (arg1 == 0) { -// arg0->x *= -1.0f; -// } -// } +void fn_1_10260(float var_f29, float var_f30, u32 var_r30, u32 sp8, Vec *var_r29) +{ + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + if (var_f30 > 1.0f) { + var_f30 = 1.0f; + } + if (var_r31->unk_94 == 0) { + var_r31->unk_AC.x = 465.0f; + var_r31->unk_AC.y = 11.0f; + var_r31->unk_AC.z = 0.0f; + if (var_r30 != 0) { + var_r31->unk_AC.x *= -1.0f; + } + var_r31->unk_94 = 1; + var_r31->unk_98 = 0; + var_r31->unk_A4 = 0.0f; + var_r31->unk_8C = 0; + var_r31->unk_A8 = 1.0f; + } + if (sp8 != 0) { + var_r31->unk_94 = 2; + var_f30 *= 1.5f; + } + var_r31->unk_90 = 1; + var_r31->unk_AC.x += 0.01666666753590107 * (800.0 * (var_f30 * sind(var_f29))); + var_r31->unk_AC.z += 0.01666666753590107 * (800.0 * (var_f30 * cosd(var_f29))); + if (var_r30 != 0) { + var_r31->unk_AC.x *= -1.0f; + } + if (var_r31->unk_AC.x < 230.0f) { + var_r31->unk_AC.x = 230.0f; + } + if (var_r30 != 0) { + var_r31->unk_AC.x *= -1.0f; + } + fn_1_10130(&var_r31->unk_AC, 1 - var_r30); + *var_r29 = var_r31->unk_AC; +} -// void fn_1_10260(u32 arg0, s32 arg1, Vec *arg2, float arg8, float arg9) -// { -// s32 sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// void *var_r31; -// u32 var_r30; -// Vec *var_r29; +s32 fn_1_10614(Vec *arg0) +{ + M433PlayerWork2 *work = lbl_1_bss_7CC->data; -// var_f29 = arg8; -// var_f30 = arg9; -// var_r30 = arg0; -// sp8 = arg1; -// var_r29 = arg2; -// var_r31 = lbl_1_bss_7CC->data; -// if (var_f30 > 1.0f) { -// var_f30 = 1.0f; -// } -// if (var_r31->unk_94 == 0) { -// var_r31->unk_AC = 465.0f; -// var_r31->unk_B0 = 11.0f; -// var_r31->unk_B4 = 0.0f; -// if (var_r30 != 0) { -// var_r31->unk_AC = var_r31->unk_AC * -1.0f; -// } -// var_r31->unk_94 = 1; -// var_r31->unk_98 = 0; -// var_r31->unk_A4 = 0.0f; -// var_r31->unk_8C = 0; -// var_r31->unk_A8 = 1.0f; -// } -// if (sp8 != 0) { -// var_r31->unk_94 = 2; -// var_f30 *= 1.5f; -// } -// var_r31->unk_90 = 1; -// var_r31->unk_AC = var_r31->unk_AC + (0.01666666753590107 * (800.0 * (var_f30 * sind(var_f29)))); -// var_r31->unk_B4 = var_r31->unk_B4 + (0.01666666753590107 * (800.0 * (var_f30 * cosd(var_f29)))); -// if (var_r30 != 0) { -// var_r31->unk_AC = var_r31->unk_AC * -1.0f; -// } -// if (var_r31->unk_AC < 230.0f) { -// var_r31->unk_AC = 230.0f; -// } -// if (var_r30 != 0) { -// var_r31->unk_AC = var_r31->unk_AC * -1.0f; -// } -// var_f31 = 44.0f; -// if ((var_r31->unk_B4 - 44.0f) < -500.0f) { -// var_r31->unk_B4 = -500.0f + 44.0f; -// } -// else if ((var_r31->unk_B4 + 44.0f) > 500.0f) { -// var_r31->unk_B4 = 500.0f - 44.0f; -// } -// if ((1 - var_r30) == 0) { -// var_r31->unk_AC = var_r31->unk_AC * -1.0f; -// } -// if ((var_r31->unk_AC - 44.0f) < 20.0f) { -// var_r31->unk_AC = 20.0f + 44.0f; -// } -// else if ((var_r31->unk_AC + 44.0f) > 800.0f) { -// var_r31->unk_AC = 800.0f - 44.0f; -// } -// if ((1 - var_r30) == 0) { -// var_r31->unk_AC = var_r31->unk_AC * -1.0f; -// } -// var_r29->x = var_r31->unk_AC; -// var_r29->y = var_r31->unk_B0; -// var_r29->z = var_r31->unk_B4; -// } + arg0->x = arg0->y = arg0->z = 0.0f; + if (work->unk_94 == 0) { + return 0; + } + *arg0 = work->unk_AC; + arg0->x = fabs(arg0->x); + arg0->x -= 465.0f; + arg0->x *= 0.004255319f; + arg0->z *= 0.0028571428f; + return 1; +} -// s32 fn_1_10614(Vec *arg0) -// { -// float var_f31; -// double var_f30; -// double var_f29; -// void *var_r31; +void fn_1_1070C(void) +{ + M433PlayerWork2 *work = lbl_1_bss_7CC->data; + work->unk_A8 = 1.0f; +} -// var_r31 = lbl_1_bss_7CC->data; -// arg0->z = 0.0f; -// arg0->y = 0.0f; -// arg0->x = 0.0f; -// if (var_r31->unk_94 == 0) { -// return 0; -// } -// arg0->x = var_r31->unk_AC; -// arg0->y = var_r31->unk_B0; -// arg0->z = var_r31->unk_B4; -// var_f31 = arg0->x; -// var_f30 = fabs(var_f31); -// var_f29 = var_f30; -// arg0->x = var_f29; -// arg0->x -= 465.0f; -// arg0->x *= 0.004255319f; -// arg0->z *= 0.0028571428f; -// return 1; -// } +u32 fn_1_10740(Vec *arg0) +{ + u32 var_r30; + M433PlayerWork2 *work = lbl_1_bss_7CC->data; + *arg0 = work->unk_3C; + if (work->unk_3C.x >= 0.0f) { + var_r30 = 1; + } + else { + var_r30 = 0; + } + return var_r30; +} -// void fn_1_1070C(void) -// { -// void *var_r31; +u32 fn_1_107B0(Vec *arg0) +{ + u32 var_r30; + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + if (var_r31->unk_94 != 0) { + *arg0 = var_r31->unk_AC; + } + else { + *arg0 = var_r31->unk_3C; + } + if (arg0->x >= 0.0f) { + var_r30 = 1; + } + else { + var_r30 = 0; + } + return var_r30; +} -// var_r31 = lbl_1_bss_7CC->data; -// var_r31->unk_A8 = 1.0f; -// } +float fn_1_10848(void) +{ + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + return var_r31->unk_F8.unk_00 - var_r31->unk_F8.unk_04; +} -// u32 fn_1_10740(Vec *arg0) -// { -// void *var_r31; -// u32 var_r30; +float fn_1_10878(void) +{ + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + if (var_r31->unk_94 != 0) { + return 1.5f; + } + return var_r31->unk_F8.unk_00 - var_r31->unk_F8.unk_04; +} -// var_r31 = lbl_1_bss_7CC->data; -// arg0->x = var_r31->unk_3C; -// arg0->y = var_r31->unk_40; -// arg0->z = var_r31->unk_44; -// if (var_r31->unk_3C >= 0.0f) { -// var_r30 = 1; -// } -// else { -// var_r30 = 0; -// } -// return var_r30; -// } +u32 fn_1_108C4(void) +{ + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + if (var_r31->unk_94 != 0) { + return var_r31->unk_98; + } + return 0x2710; +} -// u32 fn_1_107B0(Vec *arg0) -// { -// void *var_r31; -// u32 var_r30; +u32 fn_1_10900(void) +{ + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + return var_r31->unk_8C; +} -// var_r31 = lbl_1_bss_7CC->data; -// if (var_r31->unk_94 != 0) { -// arg0->x = var_r31->unk_AC; -// arg0->y = var_r31->unk_B0; -// arg0->z = var_r31->unk_B4; -// } -// else { -// arg0->x = var_r31->unk_3C; -// arg0->y = var_r31->unk_40; -// arg0->z = var_r31->unk_44; -// } -// if (arg0->x >= 0.0f) { -// var_r30 = 1; -// } -// else { -// var_r30 = 0; -// } -// return var_r30; -// } +float fn_1_10928(float arg8) +{ + float var_f30; + float var_f28; + float var_f26; + M433PlayerWork2Sub *var_r31; + M433PlayerWork2 *var_r30; -// float fn_1_10848(void) -// { -// void *var_r31; + var_r30 = lbl_1_bss_7CC->data; + var_r31 = &var_r30->unk_F8; + var_f28 = 1.0f / var_r31->unk_24; + var_f30 = -var_r31->unk_20 * var_f28; + var_f26 = var_r31->unk_2C.y + ((var_f30 * (0.5f * var_r31->unk_24 * var_f30)) + (var_r31->unk_20 * var_f30)); + if (arg8 > (var_f26)) { + return -1.0f; + } + var_f30 = var_f28 * (-var_r31->unk_20 - sqrtf((var_r31->unk_20 * var_r31->unk_20) - (2.0f * var_r31->unk_24 * (var_r31->unk_2C.y - arg8)))); + var_f30 -= var_r31->unk_04; + return var_f30; +} -// var_r31 = lbl_1_bss_7CC->data; -// return var_r31->unk_F8 - var_r31->unk_FC; -// } +float fn_1_10B20(float arg8, Vec *arg0) +{ + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + M433PlayerWork2Sub *var_r31; + M433PlayerWork2 *var_r29; -// float fn_1_10878(void) -// { -// void *var_r31; + var_r29 = lbl_1_bss_7CC->data; + var_r31 = &var_r29->unk_F8; + var_f30 = var_r31->unk_04; + var_f31 = var_f30 + arg8; + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + if (var_f31 > var_r31->unk_00) { + var_f31 = var_r31->unk_00; + } + var_r31->unk_04 = var_f31; + if (var_r31->unk_10 > 0.0f) { + PSVECSubtract(&var_r31->unk_38, &var_r31->unk_2C, &sp14); + sp14.y = 0.0f; + PSVECNormalize(&sp14, &sp14); + } + else { + sp14.x = sp14.y = sp14.z = 0.0f; + } + sp8 = *arg0; + var_f29 = (var_f31 * (0.5f * var_r31->unk_18 * var_f31)) + (var_r31->unk_14 * var_f31); + var_f28 = (var_f31 * (0.5f * var_r31->unk_24 * var_f31)) + (var_r31->unk_20 * var_f31); + arg0->x = var_r31->unk_2C.x + (sp14.x * var_f29); + arg0->y = var_r31->unk_2C.y + var_f28; + arg0->z = var_r31->unk_2C.z + (sp14.z * var_f29); + PSVECSubtract(arg0, &sp8, &sp20); + var_f31 >= var_r31->unk_00; + var_r31->unk_04 = var_f30; + return var_f30 + arg8; +} -// var_r31 = lbl_1_bss_7CC->data; -// if (var_r31->unk_94 != 0) { -// return 1.5f; -// } -// return var_r31->unk_F8 - var_r31->unk_FC; -// } +static inline float fn_1_10D24_inline(Vec *arg0) +{ + M433PlayerWork2 *var_r31 = lbl_1_bss_7CC->data; + if (var_r31->unk_94 != 0) { + *arg0 = var_r31->unk_AC; + } + else { + *arg0 = var_r31->unk_3C; + } +} -// u32 fn_1_108C4(void) -// { -// void *var_r31; +s32 fn_1_10D24(Vec *sp8) +{ + Vec sp18; + Vec spC; + float var_f31; + float var_f30; + M433PlayerWork2 *var_r31; + M433PlayerWork2 *var_r30; -// var_r31 = lbl_1_bss_7CC->data; -// if (var_r31->unk_94 != 0) { -// return var_r31->unk_98; -// } -// return 0x2710; -// } + var_r31 = lbl_1_bss_7CC->data; + fn_1_10D24_inline(&spC); + PSVECSubtract(&spC, &var_r31->unk_30, &sp18); + if ((spC.x * var_r31->unk_30.x) >= 0.0f) { + return 0; + } + if ((var_r31->unk_30.x == 0.0f) || (sp18.x == 0.0f)) { + return 0; + } + var_f31 = fabs(var_r31->unk_30.x / sp18.x); + PSVECScale(&sp18, &sp18, var_f31); + PSVECAdd(&var_r31->unk_30, &sp18, sp8); + return 1; +} -// u32 fn_1_10900(void) -// { -// void *var_r31; +u32 fn_1_10EA4(void) +{ + M433PlayerWork3 *var_r31 = lbl_1_bss_7C8->data; + return var_r31->uGameEvent; +} -// var_r31 = lbl_1_bss_7CC->data; -// return var_r31->unk_8C; -// } +u32 fn_1_10ECC(u32 arg0) +{ + M433PlayerWork3 *work = lbl_1_bss_7C8->data; + return work->auEvents[arg0 & 1]; +} -// float fn_1_10928(float arg8) -// { -// float sp8; -// double var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// float var_f27; -// float var_f26; -// void *var_r31; -// void *var_r30; +s32 fn_1_10F00(u32 arg0) +{ + M433PlayerWork3 *var_r31 = lbl_1_bss_7C8->data; + return var_r31->uServeGrp == (arg0 & 1); +} -// var_r30 = lbl_1_bss_7CC->data; -// var_r31 = var_r30 + 0xF8; -// var_f28 = 1.0f / var_r31->unk_24; -// var_f30 = -var_r31->unk_20 * var_f28; -// var_f26 = var_r31->unk_30 + ((var_f30 * (0.5f * var_r31->unk_24 * var_f30)) + (var_r31->unk_20 * var_f30)); -// if (arg8 > var_f26) { -// return -1.0f; -// } -// var_f29 = (var_r31->unk_20 * var_r31->unk_20) - (2.0f * var_r31->unk_24 * (var_r31->unk_30 - arg8)); -// if (var_f29 > 0.0f) { -// var_f31 = __frsqrte(var_f29); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); -// var_f31 = 0.5 * var_f31 * (3.0 - (var_f29 * (var_f31 * var_f31))); -// sp8 = var_f29 * var_f31; -// var_f27 = sp8; -// } -// else { -// var_f27 = var_f29; -// } -// var_f30 = var_f28 * (-var_r31->unk_20 - var_f27); -// var_f30 -= var_r31->unk_04; -// return var_f30; -// } +u32 fn_1_10F38(u32 arg0) +{ + M433PlayerWork3 *var_r31 = lbl_1_bss_7C8->data; + return var_r31->auServeCel[arg0 & 1]; +} -// float fn_1_10B20(float arg8, Vec *arg0) -// { -// Vec sp20; -// Vec sp14; -// float sp10; -// float spC; -// float sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// float var_f27; -// void *var_r31; -// Vec *var_r30; -// void *var_r29; +s32 fn_1_10F6C(u32 arg0) +{ + M433PlayerWork3 *work = lbl_1_bss_7C8->data; + return work->uPointGrp == (arg0 & 1); +} -// var_f27 = arg8; -// var_r30 = arg0; -// var_r29 = lbl_1_bss_7CC->data; -// var_r31 = var_r29 + 0xF8; -// var_f30 = var_r31->unk_04; -// var_f31 = var_f30 + var_f27; -// if (var_f31 < 0.0f) { -// var_f31 = 0.0f; -// } -// if (var_f31 > var_r31->unk_00) { -// var_f31 = var_r31->unk_00; -// } -// var_r31->unk_04 = var_f31; -// if (var_r31->unk_10 > 0.0f) { -// PSVECSubtract(var_r31 + 0x38, var_r31 + 0x2C, &sp14); -// sp14.y = 0.0f; -// PSVECNormalize(&sp14, &sp14); -// } -// else { -// sp14.z = 0.0f; -// sp14.y = 0.0f; -// sp14 = 0.0f; -// } -// sp8 = var_r30->x; -// spC = var_r30->y; -// sp10 = var_r30->z; -// var_f29 = (var_f31 * (0.5f * var_r31->unk_18 * var_f31)) + (var_r31->unk_14 * var_f31); -// var_f28 = (var_f31 * (0.5f * var_r31->unk_24 * var_f31)) + (var_r31->unk_20 * var_f31); -// var_r30->x = var_r31->unk_2C + (sp14 * var_f29); -// var_r30->y = var_r31->unk_30 + var_f28; -// var_r30->z = var_r31->unk_34 + (sp14.z * var_f29); -// PSVECSubtract(var_r30, &sp8, &sp20); -// var_r31->unk_04 = var_f30; -// return var_f30 + var_f27; -// } +s32 fn_1_10FA4(s32 arg0) +{ + M433PlayerWork3 *work = lbl_1_bss_7C8->data; + return work->sWinGrp == (arg0 & 1); +} -// s32 fn_1_10D24(Vec *arg0) -// { -// Vec sp18; -// s32 sp14; -// s32 sp10; -// float spC; -// Vec *sp8; -// float var_f31; -// float var_f30; -// double var_f29; -// double var_f28; -// void *var_r31; -// void *var_r30; +u32 fn_1_10FDC(void) +{ + M433PlayerWork3 *var_r31 = lbl_1_bss_7C8->data; + return var_r31->uContactCnt; +} -// sp8 = arg0; -// var_r31 = lbl_1_bss_7CC->data; -// var_r30 = lbl_1_bss_7CC->data; -// if (var_r30->unk_94 != 0) { -// spC = var_r30->unk_AC; -// sp10 = var_r30->unk_B0; -// sp14 = var_r30->unk_B4; -// } -// else { -// spC = var_r30->unk_3C; -// sp10 = var_r30->unk_40; -// sp14 = var_r30->unk_44; -// } -// PSVECSubtract(&spC, var_r31 + 0x30, &sp18); -// if ((spC * var_r31->unk_30) >= 0.0f) { -// return 0; -// } -// if ((var_r31->unk_30 == 0.0f) || (sp18 == 0.0f)) { -// return 0; -// } -// var_f30 = var_r31->unk_30 / sp18; -// var_f29 = fabs(var_f30); -// var_f28 = var_f29; -// var_f31 = var_f28; -// PSVECScale(&sp18, &sp18, var_f31); -// PSVECAdd(var_r31 + 0x30, &sp18, sp8); -// return 1; -// } +s32 fn_1_11004(u32 arg0, s32 arg1) +{ + M433PlayerWork3 *work = lbl_1_bss_7C8->data; + return !((work->uContactGrp == (arg0 & 1)) && (work->uContactCel == (arg1 & 1))); +} -// u32 fn_1_10EA4(void) -// { -// void *var_r31; +s32 fn_1_11060(u32 arg0) +{ + M433PlayerWork3 *work = lbl_1_bss_7C8->data; + return work->uContactGrp == (arg0 & 1); +} -// var_r31 = lbl_1_bss_7C8->data; -// return *var_r31; -// } +float fn_1_11098(Vec *arg0, Vec *arg1, Vec *arg2) +{ + Vec sp10; + float var_f31; + float var_f30; -// u32 fn_1_10ECC(u32 arg0) -// { -// void *var_r31; + PSVECSubtract(arg1, arg0, &sp10); + var_f31 = PSVECDotProduct(&sp10, arg2); + var_f30 = -PSVECSquareMag(arg2); + if (var_f30 != 0.0f) { + var_f31 /= var_f30; + } + return var_f31; +} -// var_r31 = lbl_1_bss_7C8->data; -// return *(var_r31 + (((arg0 & 1) * 4) + 0x18)); -// } +float fn_1_11130(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) +{ + Vec sp34; + Vec sp28; + Vec sp1C; + Vec sp10; + float var_f31; + float var_f30; + float var_f29; + float var_f28; -// s32 fn_1_10F00(u32 arg0) -// { -// void *var_r31; - -// var_r31 = lbl_1_bss_7C8->data; -// return (arg0 & 1) == var_r31->unk_08; -// } - -// u32 fn_1_10F38(u32 arg0) -// { -// void *var_r31; - -// var_r31 = lbl_1_bss_7C8->data; -// return *(var_r31 + (((arg0 & 1) * 4) + 0x10)); -// } - -// s32 fn_1_10F6C(u32 arg0) -// { -// void *var_r31; - -// var_r31 = lbl_1_bss_7C8->data; -// return (arg0 & 1) == var_r31->unk_0C; -// } - -// s32 fn_1_10FA4(s32 arg0) -// { -// void *var_r31; - -// var_r31 = lbl_1_bss_7C8->data; -// return (arg0 & 1) == var_r31->unk_04; -// } - -// u32 fn_1_10FDC(void) -// { -// void *var_r31; - -// var_r31 = lbl_1_bss_7C8->data; -// return var_r31->unk_34; -// } - -// s32 fn_1_11004(u32 arg0, s32 arg1) -// { -// void *var_r31; -// s32 var_r30; - -// var_r31 = lbl_1_bss_7C8->data; -// var_r30 = 0; -// if ((var_r31->unk_3C == (arg0 & 1)) && (var_r31->unk_40 == (arg1 & 1))) { -// var_r30 = 1; -// } -// return var_r30 == 0; -// } - -// s32 fn_1_11060(u32 arg0) -// { -// void *var_r31; - -// var_r31 = lbl_1_bss_7C8->data; -// return (arg0 & 1) == var_r31->unk_3C; -// } - -// float fn_1_11098(Vec *arg0, Vec *arg1, Vec *arg2) -// { -// Vec sp10; -// Vec *spC; -// Vec *sp8; -// float var_f31; -// float var_f30; -// Vec *var_r31; - -// sp8 = arg0; -// spC = arg1; -// var_r31 = arg2; -// PSVECSubtract(spC, sp8, &sp10); -// var_f31 = PSVECDotProduct(&sp10, var_r31); -// var_f30 = -PSVECSquareMag(var_r31); -// if (var_f30 != 0.0f) { -// var_f31 /= var_f30; -// } -// return var_f31; -// } - -// float fn_1_11130(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) -// { -// float sp3C; -// float sp38; -// float sp34; -// Vec sp28; -// Vec sp1C; -// Vec sp10; -// Vec *spC; -// Vec *sp8; -// float var_f31; -// float var_f30; -// float var_f29; -// float var_f28; -// Vec *var_r31; -// Vec *var_r30; - -// var_r31 = arg0; -// sp8 = arg1; -// var_r30 = arg2; -// spC = arg3; -// PSVECSubtract(sp8, var_r31, &sp28); -// PSVECSubtract(spC, var_r30, &sp1C); -// PSVECSubtract(&sp28, &sp1C, &sp28); -// if (PSVECMag(&sp28) <= 0.0f) { -// sp34 = var_r31->x; -// sp38 = var_r31->y; -// sp3C = var_r31->z; -// } -// else { -// PSVECSubtract(var_r31, var_r30, &sp10); -// var_f30 = PSVECDotProduct(&sp10, &sp28); -// var_f29 = -PSVECSquareMag(&sp28); -// if (var_f29 != 0.0f) { -// var_f30 /= var_f29; -// } -// var_f28 = var_f30; -// var_f31 = var_f28; -// if (var_f31 < 0.0f) { -// var_f31 = 0.0f; -// } -// else if (var_f31 > 1.0f) { -// var_f31 = 1.0f; -// } -// PSVECScale(&sp28, &sp1C, var_f31); -// PSVECAdd(var_r31, &sp1C, &sp34); -// } -// PSVECSubtract(var_r30, &sp34, &sp28); -// return (bitwise s32)PSVECMag(&sp28); -// } + PSVECSubtract(arg1, arg0, &sp28); + PSVECSubtract(arg3, arg2, &sp1C); + PSVECSubtract(&sp28, &sp1C, &sp28); + if (PSVECMag(&sp28) <= 0.0f) { + sp34 = *arg0; + } + else { + PSVECSubtract(arg0, arg2, &sp10); + var_f30 = PSVECDotProduct(&sp10, &sp28); + var_f29 = -PSVECSquareMag(&sp28); + if (var_f29 != 0.0f) { + var_f30 /= var_f29; + } + var_f28 = var_f30; + var_f31 = var_f28; + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + else if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + PSVECScale(&sp28, &sp1C, var_f31); + PSVECAdd(arg0, &sp1C, &sp34); + } + PSVECSubtract(arg2, &sp34, &sp28); + return PSVECMag(&sp28); +} diff --git a/src/REL/m434Dll/player.c b/src/REL/m434Dll/player.c index e08b307e..55ae04c8 100644 --- a/src/REL/m434Dll/player.c +++ b/src/REL/m434Dll/player.c @@ -212,8 +212,6 @@ void fn_1_64C0(omObjData *object); float fn_1_67AC(float arg0, float arg1); -// Issues with assignment of temp_f30 -// Scratch is at https://decomp.me/scratch/EqCuG void fn_1_4E50(omObjData *object) { float temp_f31; From f6ca7da9438cc94de545390dfae4bf3a5632176b Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Wed, 15 Jan 2025 19:59:55 -0500 Subject: [PATCH 126/178] complete m438Dll/map.c (#534) * get halfway through m424/ball * get halfway through m424/ball * get halfway through m424/ball * complete m424/ball * fix merge errors * Revert "complete m424/ball" This reverts commit acbc3196c585acc5e6328e53f4aaf31e1b52db73. * fix up ball, start claw * get halfway through m424/ball * complete m424/ball * Revert "complete m424/ball" This reverts commit acbc3196c585acc5e6328e53f4aaf31e1b52db73. * fix up ball, start claw * complete m424Dll * fix m424, begin m438/map * Start m438/map * complete m438/map * fix m424 --- .vscode/settings.json | 5 +- config/GMPE01_00/rels/m438Dll/symbols.txt | 71 +-- configure.py | 2 +- include/REL/m438Dll.h | 13 + src/REL/m424Dll/claw.c | 9 +- src/REL/m424Dll/main.c | 2 +- src/REL/m438Dll/main.c | 32 +- src/REL/m438Dll/map.c | 690 ++++++++++++++++++++++ 8 files changed, 756 insertions(+), 68 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index a155f802..d1282bec 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -36,7 +36,10 @@ "vcruntime.h": "c", "hsfmotion.h": "c", "m424dll.h": "c", - "chrman.h": "c" + "chrman.h": "c", + "os.h": "c", + "type_traits": "cpp", + "xutility": "cpp" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/config/GMPE01_00/rels/m438Dll/symbols.txt b/config/GMPE01_00/rels/m438Dll/symbols.txt index 94448680..c1e2961a 100644 --- a/config/GMPE01_00/rels/m438Dll/symbols.txt +++ b/config/GMPE01_00/rels/m438Dll/symbols.txt @@ -397,43 +397,43 @@ lbl_1_data_678 = .data:0x00000678; // type:object size:0x24 lbl_1_data_69C = .data:0x0000069C; // type:object size:0x6C lbl_1_data_708 = .data:0x00000708; // type:object size:0x24 lbl_1_data_72C = .data:0x0000072C; // type:object size:0x24 -lbl_1_data_750 = .data:0x00000750; // type:object size:0x7 data:string -lbl_1_data_757 = .data:0x00000757; // type:object size:0x7 data:string -lbl_1_data_75E = .data:0x0000075E; // type:object size:0x7 data:string -lbl_1_data_765 = .data:0x00000765; // type:object size:0x7 data:string -lbl_1_data_76C = .data:0x0000076C; // type:object size:0x7 data:string -lbl_1_data_773 = .data:0x00000773; // type:object size:0x7 data:string -lbl_1_data_77A = .data:0x0000077A; // type:object size:0x7 data:string -lbl_1_data_781 = .data:0x00000781; // type:object size:0x7 data:string -lbl_1_data_788 = .data:0x00000788; // type:object size:0x7 data:string -lbl_1_data_78F = .data:0x0000078F; // type:object size:0x8 data:string -lbl_1_data_797 = .data:0x00000797; // type:object size:0x8 data:string -lbl_1_data_79F = .data:0x0000079F; // type:object size:0x8 data:string -lbl_1_data_7A7 = .data:0x000007A7; // type:object size:0x8 data:string -lbl_1_data_7AF = .data:0x000007AF; // type:object size:0x8 data:string -lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x8 data:string -lbl_1_data_7BF = .data:0x000007BF; // type:object size:0x8 data:string -lbl_1_data_7C7 = .data:0x000007C7; // type:object size:0x8 data:string -lbl_1_data_7CF = .data:0x000007CF; // type:object size:0x8 data:string -lbl_1_data_7D7 = .data:0x000007D7; // type:object size:0x8 data:string -lbl_1_data_7DF = .data:0x000007DF; // type:object size:0x8 data:string -lbl_1_data_7E7 = .data:0x000007E7; // type:object size:0x8 data:string -lbl_1_data_7EF = .data:0x000007EF; // type:object size:0x8 data:string -lbl_1_data_7F7 = .data:0x000007F7; // type:object size:0x8 data:string -lbl_1_data_7FF = .data:0x000007FF; // type:object size:0x8 data:string -lbl_1_data_807 = .data:0x00000807; // type:object size:0x8 data:string -lbl_1_data_80F = .data:0x0000080F; // type:object size:0x8 data:string -lbl_1_data_817 = .data:0x00000817; // type:object size:0x8 data:string -lbl_1_data_81F = .data:0x0000081F; // type:object size:0x8 data:string -lbl_1_data_827 = .data:0x00000827; // type:object size:0x8 data:string -lbl_1_data_82F = .data:0x0000082F; // type:object size:0x8 data:string -lbl_1_data_837 = .data:0x00000837; // type:object size:0x8 data:string -lbl_1_data_83F = .data:0x0000083F; // type:object size:0x9 +lbl_1_data_750 = .data:0x00000750; // type:object size:0x7 scope:local data:string +lbl_1_data_757 = .data:0x00000757; // type:object size:0x7 scope:local data:string +lbl_1_data_75E = .data:0x0000075E; // type:object size:0x7 scope:local data:string +lbl_1_data_765 = .data:0x00000765; // type:object size:0x7 scope:local data:string +lbl_1_data_76C = .data:0x0000076C; // type:object size:0x7 scope:local data:string +lbl_1_data_773 = .data:0x00000773; // type:object size:0x7 scope:local data:string +lbl_1_data_77A = .data:0x0000077A; // type:object size:0x7 scope:local data:string +lbl_1_data_781 = .data:0x00000781; // type:object size:0x7 scope:local data:string +lbl_1_data_788 = .data:0x00000788; // type:object size:0x7 scope:local data:string +lbl_1_data_78F = .data:0x0000078F; // type:object size:0x8 scope:local data:string +lbl_1_data_797 = .data:0x00000797; // type:object size:0x8 scope:local data:string +lbl_1_data_79F = .data:0x0000079F; // type:object size:0x8 scope:local data:string +lbl_1_data_7A7 = .data:0x000007A7; // type:object size:0x8 scope:local data:string +lbl_1_data_7AF = .data:0x000007AF; // type:object size:0x8 scope:local data:string +lbl_1_data_7B7 = .data:0x000007B7; // type:object size:0x8 scope:local data:string +lbl_1_data_7BF = .data:0x000007BF; // type:object size:0x8 scope:local data:string +lbl_1_data_7C7 = .data:0x000007C7; // type:object size:0x8 scope:local data:string +lbl_1_data_7CF = .data:0x000007CF; // type:object size:0x8 scope:local data:string +lbl_1_data_7D7 = .data:0x000007D7; // type:object size:0x8 scope:local data:string +lbl_1_data_7DF = .data:0x000007DF; // type:object size:0x8 scope:local data:string +lbl_1_data_7E7 = .data:0x000007E7; // type:object size:0x8 scope:local data:string +lbl_1_data_7EF = .data:0x000007EF; // type:object size:0x8 scope:local data:string +lbl_1_data_7F7 = .data:0x000007F7; // type:object size:0x8 scope:local data:string +lbl_1_data_7FF = .data:0x000007FF; // type:object size:0x8 scope:local data:string +lbl_1_data_807 = .data:0x00000807; // type:object size:0x8 scope:local data:string +lbl_1_data_80F = .data:0x0000080F; // type:object size:0x8 scope:local data:string +lbl_1_data_817 = .data:0x00000817; // type:object size:0x8 scope:local data:string +lbl_1_data_81F = .data:0x0000081F; // type:object size:0x8 scope:local data:string +lbl_1_data_827 = .data:0x00000827; // type:object size:0x8 scope:local data:string +lbl_1_data_82F = .data:0x0000082F; // type:object size:0x8 scope:local data:string +lbl_1_data_837 = .data:0x00000837; // type:object size:0x8 scope:local data:string +lbl_1_data_83F = .data:0x0000083F; // type:object size:0x9 scope:local lbl_1_data_848 = .data:0x00000848; // type:object size:0x80 -lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x9 data:string -lbl_1_data_8D1 = .data:0x000008D1; // type:object size:0x7 data:string +lbl_1_data_8C8 = .data:0x000008C8; // type:object size:0x9 scope:local data:string +lbl_1_data_8D1 = .data:0x000008D1; // type:object size:0x7 scope:local data:string lbl_1_data_8D8 = .data:0x000008D8; // type:object size:0x60 -lbl_1_data_938 = .data:0x00000938; // type:object size:0xB data:string +lbl_1_data_938 = .data:0x00000938; // type:object size:0xB scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 data:4byte @@ -458,6 +458,7 @@ lbl_1_bss_DD8 = .bss:0x00000DD8; // type:object size:0x4 data:4byte lbl_1_bss_DDC = .bss:0x00000DDC; // type:object size:0x4 data:4byte lbl_1_bss_DE0 = .bss:0x00000DE0; // type:object size:0x4 data:4byte lbl_1_bss_DE4 = .bss:0x00000DE4; // type:object size:0x44 data:4byte +lbl_1_bss_E28 = .bss:0x00000E28; // type:object size:0x4 data:4byte lbl_1_bss_E2C = .bss:0x00000E2C; // type:object size:0x4 data:4byte lbl_1_bss_E30 = .bss:0x00000E30; // type:object size:0x4 data:4byte lbl_1_bss_E34 = .bss:0x00000E34; // type:object size:0x258 data:4byte diff --git a/configure.py b/configure.py index e653b8d1..54bb4561 100644 --- a/configure.py +++ b/configure.py @@ -1160,7 +1160,7 @@ config.libs = [ "m438Dll", # Chain Chomp Fever objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/main.c"), - Object(NonMatching, "REL/m438Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/map.c"), Object(NonMatching, "REL/m438Dll/fire.c"), }, ), diff --git a/include/REL/m438Dll.h b/include/REL/m438Dll.h index 798483ee..84847928 100644 --- a/include/REL/m438Dll.h +++ b/include/REL/m438Dll.h @@ -3,6 +3,19 @@ #include "game/object.h" +typedef struct M438MainWork4 { + u8 unk_00; + char unk01[0x3]; + s32 unk_04; + float unk_08; + float unk_0C; + Vec unk_10; + Vec unk_1C; + Vec unk_28; + Vec unk_34; + char unk40[0xC]; +} M438MainWork4; /* size = 0x4C */ + void fn_1_B4D8(Process *arg0); void fn_1_B548(); s32 fn_1_DA64(float arg8); diff --git a/src/REL/m424Dll/claw.c b/src/REL/m424Dll/claw.c index 2e6b061f..bae108e8 100644 --- a/src/REL/m424Dll/claw.c +++ b/src/REL/m424Dll/claw.c @@ -1,5 +1,6 @@ #include "REL/m424Dll.h" +#include "math.h" #include "ext_math.h" #include "game/audio.h" #include "game/chrman.h" @@ -7,8 +8,6 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/pad.h" -#include "math.h" - // STRUCT typedef struct _M424DllClawStruct { @@ -67,8 +66,8 @@ typedef struct _M424DllClawStruct3 { } M424DllClawStruct3; // sizeof 0x8 // BSS -Process *lbl_1_bss_6DC; -omObjData *lbl_1_bss_6D8; +Process* lbl_1_bss_6DC; +omObjData* lbl_1_bss_6D8; s32 lbl_1_bss_6D0[2]; s32 lbl_1_bss_6CC; s32 lbl_1_bss_6C8; @@ -179,7 +178,7 @@ void fn_1_94D0(omObjData *arg0) } var_r31->unk184 = -1; var_r31->unk30 = lbl_1_data_30C; - + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { var_r31->unk3C[var_r29] = lbl_1_data_30C; var_r31->unkCC[var_r29] = lbl_1_data_30C; diff --git a/src/REL/m424Dll/main.c b/src/REL/m424Dll/main.c index 00db5d94..8fb9218d 100644 --- a/src/REL/m424Dll/main.c +++ b/src/REL/m424Dll/main.c @@ -273,7 +273,7 @@ void fn_1_41C(omObjData* object) { void fn_1_EE0(omObjData* object) { if (WipeStatGet() == 0) { - Hu3DBGColorSet(0U, 0U, 0U); + Hu3DBGColorSet(0, 0, 0); fn_1_1B8C(); fn_1_2880(); fn_1_94A4(); diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index c7409d36..dc82ed96 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -121,24 +121,6 @@ typedef struct M438MainWork3 { u16 unk_188[3]; } M438MainWork3; /* size = */ -typedef struct M438MainWork4 { - u8 unk_00; - char unk01[0x7]; - float unk_08; - float unk_0C; - float unk_10; - float unk_14; - float unk_18; - float unk_1C; - float unk_20; - float unk_24; - char unk28[4]; - float unk_2C; - char unk30[4]; - Vec unk_34; - char unk40[0xC]; -} M438MainWork4; /* size = 0x4C */ - typedef struct M438StructBss298 { /* 0x00 */ u8 unk_00; u8 unk_01; @@ -1595,15 +1577,15 @@ void fn_1_4724(omObjData *object) var_r31 = fn_1_7BFC(sizeof(M438MainWork4)); object->data = var_r31; memset(var_r31, 0, sizeof(M438MainWork4)); - var_r31->unk_10 = 0.0f; - var_r31->unk_14 = -450.0f; - var_r31->unk_18 = -1550.0f; - var_r31->unk_1C = var_r31->unk_20 = var_r31->unk_24 = 0.0f; - var_r31->unk_2C = 35.0f; + var_r31->unk_10.x = 0.0f; + var_r31->unk_10.y = -450.0f; + var_r31->unk_10.z = -1550.0f; + var_r31->unk_1C.x = var_r31->unk_1C.y = var_r31->unk_1C.z = 0.0f; + var_r31->unk_28.y = 35.0f; var_r31->unk_0C = 0.0f; var_r31->unk_00 = 0; - omSetTra(object, var_r31->unk_10, var_r31->unk_14, var_r31->unk_18); - omSetRot(object, var_r31->unk_1C, var_r31->unk_20, var_r31->unk_24); + omSetTra(object, var_r31->unk_10.x, var_r31->unk_10.y, var_r31->unk_10.z); + omSetRot(object, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); omSetSca(object, 1.25f, 1.25f, 1.25f); object->func = fn_1_4984; } diff --git a/src/REL/m438Dll/map.c b/src/REL/m438Dll/map.c index e69de29b..ee37c2c3 100644 --- a/src/REL/m438Dll/map.c +++ b/src/REL/m438Dll/map.c @@ -0,0 +1,690 @@ +#include "REL/m438Dll.h" + +#include "ext_math.h" +#include "string.h" +#include "game/hsfanim.h" +#include "game/hsfmotion.h" +#include "game/sprite.h" +#include "game/wipe.h" + +// STRUCT +typedef struct M438MapStruct { + s32 unk0; + s32 unk4; + s32 unk8; + Vec unkC; + f32 unk18; + f32 unk1C; + f32 unk20; +} M438MapStruct; + +typedef struct M438MapStruct2 { + s32 unk0; + s32 unk4; + f32 unk8; + f32 unkC; + f32 unk10; + f32 unk14; + f32 unk18; + f32 unk1C; + f32 unk20; + Vec unk24; + Vec unk30; + Vec unk3C; + union { + M438MainWork4* unk48; + HsfObject* unk48o; + }; +} M438MapStruct2; + +typedef struct M438MapStruct3 { + u32 unk0; + M438MapStruct2 unk4; + char unk4C[0x934]; + M438MapStruct unk984; +} M438MapStruct3; + +// BSS +omObjData* lbl_1_bss_108C[6]; +HsfanimStruct01* lbl_1_bss_E34[0x96]; +s32 lbl_1_bss_E30; +s32 lbl_1_bss_E2C; +s32 lbl_1_bss_E28; + +// DATA +char* lbl_1_data_848[] = { + "iwa_s1", "iwa_s2", "iwa_s3", "iwa_s4", "iwa_s5", + "iwa_s6", "iwa_s7", "iwa_s8", "iwa_s9", + "iwa_s10", "iwa_s11", "iwa_s12", "iwa_s13", + "iwa_s14", "iwa_s15", "iwa_s16", "iwa_s17", + "iwa_s18", "iwa_s19", "iwa_s20", "iwa_s21", + "iwa_s22", "iwa_s23", "iwa_s24", "iwa_s25", + "iwa_s26", "iwa_s27", "iwa_s28", "iwa_s29", + "iwa_s30", "iwa_s31", "iwa_s32" +}; + +// PROTO +void fn_1_B54C(omObjData*); +void fn_1_BF20(omObjData*); +void fn_1_CAB0(f32); +void fn_1_C764(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_C8E8(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_D3FC(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_D57C(Vec*, f32); +void fn_1_E034(Mtx, Vec*); + +void fn_1_B4D8(Process* arg0) { + omObjData* var_r31; + + lbl_1_bss_E30 = 0; + var_r31 = lbl_1_bss_108C[0] = omAddObjEx(arg0, 0x20, 8, 0, -1, fn_1_B54C); + var_r31->work[0] = 0; +} + +void fn_1_B548(void) {} + +void fn_1_B54C(omObjData* arg0) { + Vec sp20; + Vec sp14; + Vec sp8; + s32 var_r30; + s32 var_r29; + HsfObject* var_r26; + s32 var_r27; + M438MapStruct2* var_r28; + HsfanimStruct01* var_r25; + M438MapStruct* var_r24; + M438MapStruct3* temp_r23; + + arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x108C, 0x10000000); + temp_r23 = arg0->data; + memset(temp_r23, 0, 0x108C); + arg0->model[0] = Hu3DModelCreateFile(0x450000); + Hu3DModelLayerSet(arg0->model[0], 0); + Hu3DModelAttrSet(arg0->model[0], 0x40000001); + Hu3DModelShadowMapSet(arg0->model[0]); + arg0->model[1] = Hu3DModelCreateFile(0x450001); + Hu3DModelLayerSet(arg0->model[1], 1); + Hu3DModelPosSet(arg0->model[1], 0.0f, -80.0f, 0.0f); + arg0->model[2] = Hu3DModelCreateFile(0x450002); + Hu3DModelLayerSet(arg0->model[2], 0); + Hu3DModelPosSet(arg0->model[2], 0.0f, -50.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[2], 0x40000001); + Hu3DMotionSpeedSet(arg0->model[2], 0.1f); + var_r29 = Hu3DTexScrollCreate(arg0->model[1], "lavafall"); + Hu3DTexScrollPosMoveSet(var_r29, 0.0f, -0.025000002f, 0.0f); + var_r29 = Hu3DTexScrollCreate(arg0->model[1], "lafall"); + Hu3DTexScrollPosMoveSet(var_r29, 0.0f, -(1.0f / 60.0f), 0.0f); + var_r29 = 0; + + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000C), 0x32); + arg0->model[3] = var_r27; + Hu3DModelLayerSet(var_r27, 3); + Hu3DParticleHookSet(var_r27, fn_1_C764); + for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r29++) { + lbl_1_bss_E34[var_r29] = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; + } + + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000D), 0x32); + arg0->model[4] = var_r27; + Hu3DModelLayerSet(var_r27, 3); + Hu3DParticleHookSet(var_r27, fn_1_C764); + for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r29++) { + lbl_1_bss_E34[var_r29] = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; + } + + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000E), 0x32); + arg0->model[5] = var_r27; + Hu3DModelLayerSet(var_r27, 3); + Hu3DParticleHookSet(var_r27, fn_1_C764); + for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r29++) { + lbl_1_bss_E34[var_r29] = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; + } + for (var_r30 = 0; var_r30 < 0x95; var_r30++) { + for (var_r29 = 1; var_r29 < 0x96; var_r29++) { + if (frandmod(0x3E8) < 0x1C2) { + var_r25 = lbl_1_bss_E34[var_r30]; + lbl_1_bss_E34[var_r30] = lbl_1_bss_E34[var_r29]; + lbl_1_bss_E34[var_r29] = var_r25; + } + } + } + + for (var_r30 = 0; var_r30 < 0x96; var_r30++) { + lbl_1_bss_E34[var_r30]->unk2C = 0.0f; + lbl_1_bss_E34[var_r30]->unk40.a = 0; + lbl_1_bss_E34[var_r30]->unk00 = 0; + } + + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000F), 0x32); + arg0->model[6] = var_r27; + Hu3DModelLayerSet(var_r27, 3); + Hu3DParticleHookSet(var_r27, fn_1_C8E8); + var_r25 = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[0]; + for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r25++) { + var_r25->unk2C = 0.0f; + var_r25->unk40.a = 0; + var_r25->unk00 = 0; + } + + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x450010), 0x1F4); + arg0->model[7] = var_r27; + Hu3DModelLayerSet(var_r27, 2); + Hu3DParticleBlendModeSet(var_r27, 1); + Hu3DParticleHookSet(var_r27, fn_1_D3FC); + var_r25 = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[0]; + for (var_r30 = 0; var_r30 < 0x1F4; var_r30++, var_r25++) { + var_r25->unk2C = 0.0f; + var_r25->unk40.a = 0; + var_r25->unk00 = 0; + } + var_r28 = &temp_r23->unk4; + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r28++) { + var_r28->unk0 = 1; + var_r28->unk4 = 0; + var_r28->unkC = var_r28->unk10 = 0.0f; + var_r28->unk14 = var_r28->unk18 = 0.0f; + var_r28->unk1C = var_r28->unk20 = 0.0f; + var_r26 = Hu3DModelObjPtrGet(arg0->model[0], lbl_1_data_848[var_r30]); + var_r28->unk48o = var_r26; + sp14.x = sp14.y = sp14.z = -100000.0f; + sp8.x = sp8.y = sp8.z = 100000.0f; + + for (var_r29 = 0; var_r29 < var_r26->data.vertex->count; var_r29++) { + if (((Vec*)var_r26->data.vertex->data)[var_r29].x > sp14.x) { + sp14.x = ((Vec*)var_r26->data.vertex->data)[var_r29].x; + } + if (((Vec*)var_r26->data.vertex->data)[var_r29].y > sp14.y) { + sp14.y = ((Vec*)var_r26->data.vertex->data)[var_r29].y; + } + if (((Vec*)var_r26->data.vertex->data)[var_r29].z > sp14.z) { + sp14.z = ((Vec*)var_r26->data.vertex->data)[var_r29].z; + } + if (((Vec*)var_r26->data.vertex->data)[var_r29].x < sp8.x) { + sp8.x = ((Vec*)var_r26->data.vertex->data)[var_r29].x; + } + if (((Vec*)var_r26->data.vertex->data)[var_r29].y < sp8.y) { + sp8.y = ((Vec*)var_r26->data.vertex->data)[var_r29].y; + } + if (((Vec*)var_r26->data.vertex->data)[var_r29].z < sp8.z) { + sp8.z = ((Vec*)var_r26->data.vertex->data)[var_r29].z; + } + } + PSVECAdd(&sp14, &sp8, &sp20); + PSVECScale(&sp20, &sp20, 0.5f); + var_r28->unk24 = sp20; + var_r28->unk30 = var_r28->unk24; + var_r28->unk8 = (360.0 + atan2d(sp20.x, sp20.z)); + if (var_r28->unk8 >= 360.0f) { + var_r28->unk8 -= 360.0f; + } + } + var_r27 = Hu3DModelCreateFile(0x45000B); + Hu3DModelLayerSet(var_r27, 2); + var_r24 = &temp_r23->unk984; + for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r24++) { + var_r24->unk0 = 0; + var_r24->unk8 = 0; + var_r24->unk18 = 0.0f; + var_r24->unk1C = var_r24->unk20 = 0.0f; + var_r24->unk4 = Hu3DModelLink(var_r27); + Hu3DModelLayerSet(var_r24->unk4, 2); + Hu3DModelAttrSet(var_r24->unk4, 1); + } + Hu3DModelKill(var_r27); + arg0->func = fn_1_BF20; +} + +Vec lbl_1_data_8D8[4][2] = { + { + { -967.0f, -80.0f, -312.0f }, + { -867.0f, -80.0f, -485.0f }, + }, + { + { -917.0f, -80.0f, -857.0f }, + { -817.0f, -80.0f, -1030.0f }, + }, + { + { 967.0f, -80.0f, -312.0f }, + { 867.0f, -80.0f, -485.0f }, + }, + { + { 917.0f, -80.0f, -857.0f }, + { 817.0f, -80.0f, -1030.0f }, + }, +}; + +void fn_1_BF20(omObjData* arg0) { + Mtx sp5C; + Mtx sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + f32 temp_f29; + f32 temp_f30; + f32 temp_f31; + s32 var_r29; + M438MapStruct2* var_r31; + M438MapStruct* var_r30; + M438MapStruct3* temp_r28; + + temp_r28 = arg0->data; + temp_r28->unk0++; + var_r31 = &temp_r28->unk4; + + for (var_r29 = 0; var_r29 < 0x20; var_r29++, var_r31++) { + if ((var_r31->unk0 == 0) && (var_r31->unk4 != 0)) { + temp_f29 = var_r31->unk30.y; + PSVECAdd(&var_r31->unk30, &var_r31->unk3C, &var_r31->unk30); + var_r31->unk3C.x *= 0.92f; + var_r31->unk3C.z *= 0.92f; + var_r31->unk3C.y += -0.27222225f; + if (temp_f29 > 0.0) { + if (var_r31->unk30.y <= 0.0) { + HuAudFXEmiterPlay(0x6FF, &var_r31->unk30); + } + } + var_r31->unkC += var_r31->unk10; + var_r31->unk14 += var_r31->unk18; + var_r31->unk1C += var_r31->unk20; + sp14.x = sind(90.0f + var_r31->unk8); + sp14.z = cosd(90.0f + var_r31->unk8); + sp14.y = 0.0f; + PSMTXRotAxisRad(sp5C, &sp14, MTXDegToRad(var_r31->unkC)); + sp14.x = sp14.z = 0.0f; + sp14.y = 1.0f; + PSMTXRotAxisRad(sp2C, &sp14, MTXDegToRad(var_r31->unk14)); + PSMTXConcat(sp2C, sp5C, sp5C); + sp14.x = sind(var_r31->unk8); + sp14.z = cosd(var_r31->unk8); + sp14.y = 0.0f; + PSMTXRotAxisRad(sp2C, &sp14, MTXDegToRad(var_r31->unk1C)); + PSMTXConcat(sp2C, sp5C, sp5C); + fn_1_E034(sp5C, &sp20); + var_r31->unk48->unk_28.x = sp20.x; + var_r31->unk48->unk_28.y = sp20.y; + var_r31->unk48->unk_28.z = sp20.z; + PSMTXInverse(sp5C, sp5C); + PSMTXMultVec(sp5C, &var_r31->unk24, &sp8); + var_r31->unk48->unk_1C.x = (var_r31->unk30.x - sp8.x); + var_r31->unk48->unk_1C.y = (var_r31->unk30.y - sp8.y); + var_r31->unk48->unk_1C.z = (var_r31->unk30.z - sp8.z); + if (var_r31->unk30.y < -500.0f) { + var_r31->unk4 = 0; + } + } + } + if ((temp_r28->unk0 & 1) == 0) { + var_r30 = &temp_r28->unk984; + + for (var_r29 = 0; var_r29 < 0x32; var_r29++, var_r30++) { + if (var_r30->unk0 != 0) continue; + var_r30->unk0 = 1; + var_r30->unk18 = frandmod(0x168); + if (frandmod(0x64) < 0x14) { + var_r30->unkC.x = (0.8f * (frandmod(0x7D0) - 0x3E8)); + var_r30->unkC.y = -80.0f; + var_r30->unkC.z = ((-1.2f * frandmod(0x3E8)) - 1000.0f); + } else { + temp_f31 = frandmod(0x168); + temp_f30 = 800.0f + (0.25f * frandmod(0x3E8)); + var_r30->unkC.x = (temp_f30 * sind(temp_f31)); + var_r30->unkC.y = -80.0f; + var_r30->unkC.z = (temp_f30 * cosd(temp_f31)); + } + var_r30->unk20 = (0.1f + (0.0005f * frandmod(0x3E8))); + var_r30->unk1C = 0.0f; + Hu3DModelAttrReset(var_r30->unk4, 1); + Hu3DModelPosSetV(var_r30->unk4, &var_r30->unkC); + Hu3DModelRotSet(var_r30->unk4, 0.0f, var_r30->unk18, 0.0f); + Hu3DModelScaleSet(var_r30->unk4, var_r30->unk1C, var_r30->unk1C, var_r30->unk1C); + break; + } + } + var_r30 = &temp_r28->unk984; + for (var_r29 = 0; var_r29 < 0x32; var_r29++, var_r30++) { + if (var_r30->unk0 != 0) { + var_r30->unk1C += 0.005f; + if (var_r30->unk1C > var_r30->unk20) { + var_r30->unk0 = 0; + Hu3DModelAttrSet(var_r30->unk4, 1); + fn_1_D57C(&Hu3DData[var_r30->unk4].pos, var_r30->unk20); + } + Hu3DModelScaleSet(var_r30->unk4, var_r30->unk1C, var_r30->unk1C, var_r30->unk1C); + } + } + + for (var_r29 = 0; var_r29 < 4; var_r29++) { + PSVECSubtract(&lbl_1_data_8D8[var_r29][1], &lbl_1_data_8D8[var_r29][0], &sp14); + temp_f31 = 0.001f * frandmod(0x3E8); + PSVECScale(&sp14, &sp14, temp_f31); + PSVECAdd(&lbl_1_data_8D8[var_r29][0], &sp14, &sp8); + PSVECScale(&sp8, &sp8, 0.98f); + fn_1_D57C(&sp8, 0.03f); + } + if ((lbl_1_bss_E30 == 0) && (WipeStatGet() == 0)) { + HuAudFXPlay(0x6F9); + HuAudFXPlay(0x6FD); + lbl_1_bss_E30 = 1; + } +} + +void fn_1_C764(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + s32 var_r29; + u16 temp_r0; + + var_r31 = particle->unk_48; + + for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + var_r31->unk08.x *= 0.95f; + var_r31->unk08.z *= 0.95f; + var_r31->unk08.y += -0.27222225f; + if (var_r31->unk00_s16 < 24.0f) { + var_r31->unk40.a = 0.9f * var_r31->unk40.a; + } + if (--var_r31->unk00_s16 == 0) { + var_r31->unk00 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + } + } + DCStoreRange(particle->unk_48, particle->unk_30 * 0x44); +} + +void fn_1_C8E8(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + s32 var_r29; + u16 temp_r0; + + var_r31 = particle->unk_48; + + for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + var_r31->unk08.x *= 0.92f; + var_r31->unk08.z *= 0.92f; + var_r31->unk2C += 5.0f; + var_r31->unk40.a *= 0.99f; + if (var_r31->unk00_s16 < 24.0f) { + var_r31->unk40.a = 0.9f * var_r31->unk40.a; + } + if (--var_r31->unk00_s16 == 0) { + var_r31->unk00 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + } + } + DCStoreRange(particle->unk_48, particle->unk_30 * 0x44); +} + +void fn_1_CAB0(f32 arg8) { + Vec sp8; + f32 temp_f31; + f32 temp_f30; + f32 temp_f28; + f32 temp_f27; + HsfanimStruct01* var_r31; + s32 var_r30; + u32 var_r29; + + temp_f28 = 20.0f; + temp_f27 = 7.0f; + var_r29 = 0x19; + + for (var_r30 = 0; var_r30 < 0x96; var_r30++) { + var_r31 = lbl_1_bss_E34[var_r30]; + if (var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); + temp_f31 = ((0.002f * frandmod(0x3E8)) - 1.0f); + temp_f31 = arg8 + (temp_f31 * temp_f28); + sp8.x = sind(temp_f31); + sp8.y = 0.0f; + sp8.z = cosd(temp_f31); + + temp_f31 = arg8 + (((0.002f * frandmod(0x3E8)) - 1.0f)) * temp_f27; + var_r31->unk34.x = 7.5 * sind(temp_f31) * 100.0; + var_r31->unk34.y = 0.2f * frandmod(0x3E8); + var_r31->unk34.z = 7.5 * cosd(temp_f31) * 100.0; + + temp_f30 = 1.6666667f * (4.0f + (0.014f * frandmod(0x3E8))); + var_r31->unk08.x = sp8.x * temp_f30; + var_r31->unk08.z = sp8.z * temp_f30; + var_r31->unk08.y = temp_f30 * ((0.0006f * frandmod(0x3E8)) - 0.2f); + + var_r31->unk30 = frandmod(0x168); + var_r31->unk2C = 10.0f + frandmod(0x32); + var_r31->unk40.a = 0xFA; + var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = 0xFF; + + var_r29--; + if (var_r29 < 1) break; + } + } + var_r31 = ((ParticleData*)(Hu3DData[lbl_1_bss_108C[0]->model[6]].unk_120))->unk_48; + var_r29 = 0xF; + for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r31++) { + if (var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); + temp_f31 = ((0.002f * frandmod(0x3E8)) - 1.0f); + temp_f31 = arg8 + (temp_f31 * temp_f28); + sp8.x = sind(temp_f31); + sp8.y = 0.0f; + sp8.z = cosd(temp_f31); + + temp_f31 = arg8 + (((0.002f * frandmod(0x3E8)) - 1.0f)) * temp_f27; + var_r31->unk34.x = 7.5 * sind(temp_f31) * 100.0; + var_r31->unk34.y = 0.2f * frandmod(0x3E8); + var_r31->unk34.z = 7.5 * cosd(temp_f31) * 100.0; + + temp_f30 = 1.6666667f * -(0.01f * frandmod(0x3E8)); + var_r31->unk08.x = sp8.x * temp_f30; + var_r31->unk08.z = sp8.z * temp_f30; + var_r31->unk08.y = temp_f30 * -((0.00020000001f * frandmod(0x3E8)) + 0.05f); + + var_r31->unk30 = frandmod(0x168); + var_r31->unk2C = 100.0f + frandmod(0x64); + var_r31->unk40.a = 0x50 + frandmod(0x50); + temp_f31 = frandmod(0x3E8) * 0.001f; + var_r31->unk40.r = (60.0f * temp_f31) + 80.0f; + var_r31->unk40.g = (60.0f * temp_f31) + 61.0f; + var_r31->unk40.b = (60.0f * temp_f31) + 54.0f; + + var_r29--; + if (var_r29 < 1) break; + } + } +} + +void fn_1_D3FC(ModelData* model, ParticleData* particle, Mtx matrix) { + HsfanimStruct01* var_r31; + s32 var_r29; + u16 temp_r0; + + lbl_1_bss_E2C = 0; + var_r31 = particle->unk_48; + for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (var_r31->unk00_s16 != 0) { + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + var_r31->unk08.y += -0.27222225f; + if (var_r31->unk00_s16 < 12.0f) { + var_r31->unk40.a = (0.8f * var_r31->unk40.a); + } + if (--var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 0; + var_r31->unk2C = 0.0f; + var_r31->unk40.a = 0; + } + lbl_1_bss_E2C++; + } + } + DCStoreRange(particle->unk_48, particle->unk_30 * 0x44); +} + +void fn_1_D57C(Vec* arg0, f32 arg1) { + Vec sp8; + f32 temp_f31; + f32 temp_f29; + HsfanimStruct01* var_r31; + s32 var_r30; + u32 var_r29; + + var_r31 = ((ParticleData*)(Hu3DData[lbl_1_bss_108C[0]->model[7]].unk_120))->unk_48; + var_r29 = (u32)(3.0f + (15.0f * arg1)); + + for (var_r30 = 0; var_r30 < 0x1F4; var_r30++, var_r31++) { + if (var_r31->unk00_s16 == 0) { + var_r31->unk00_s16 = 60.0f * (0.3f + (0.0003f * frandmod(0x3E8))); + var_r31->unk34 = *arg0; + var_r31->unk34.x += arg1 * (0.07f * (frandmod(0x3E8) - 0x1F4)); + var_r31->unk34.z += arg1 * (0.07f * (frandmod(0x3E8) - 0x1F4)); + + temp_f31 = frandmod(0x168); + sp8.x = sind(temp_f31); + sp8.y = 0.0f; + sp8.z = cosd(temp_f31); + + temp_f29 = 1.6666667f * (0.5f + (0.001f * frandmod(0x3E8))); + var_r31->unk08.x = sp8.x * temp_f29; + var_r31->unk08.z = sp8.z * temp_f29; + var_r31->unk08.y = 1.6666667f * ((2.0f * arg1) + (1.0f + (0.002f * frandmod(0x3E8)))); + var_r31->unk30 = frandmod(0x168); + var_r31->unk2C = (20.0f + frandmod(0x14)); + var_r31->unk40.a = (frandmod(0x46) + 0x64); + + temp_f31 = 0.001f * frandmod(0x3E8); + var_r31->unk40.r = 177.0f + (78.0f * temp_f31); + var_r31->unk40.g = 60.0f + (129.0f * temp_f31); + var_r31->unk40.b = 30.0f + (122.0f * temp_f31); + + var_r29--; + if (var_r29 < 1) break; + } + } +} + +s32 fn_1_DA64(f32 arg8) { + M438MapStruct3* var_r28; + s32 var_r29; + s32 var_r30; + M438MapStruct2* var_r31; + float var_f31; + float var_f29; + + var_r28 = lbl_1_bss_108C[0]->data; + var_r29 = 0; + var_r31 = &var_r28->unk4; + + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + var_f31 = fn_1_E5A4(var_r31->unk8, arg8); + if ((fabs(var_f31) < 12.0) && (var_r31->unk0 != 0)) { + var_r31->unk0 = 0; + var_r31->unk4 = 1; + var_r31->unk30 = var_r31->unk24; + var_r31->unk3C.y = (1.6666667f * (2.0f + (0.002f * frandmod(0x3E8)))); + var_r31->unk3C.x = (1.6666667461395264f * (sind(var_r31->unk8) * (10.0f + (0.006f * frandmod(0x3E8))))); + var_r31->unk3C.z = (1.6666667461395264f * (cosd(var_r31->unk8) * (10.0f + (0.006f * frandmod(0x3E8))))); + var_r31->unkC = var_r31->unk14 = var_r31->unk1C = 0.0f; + var_r31->unk10 = (0.016666668f * (10.0f + (0.05f * frandmod(0x3E8)))); + var_r31->unk18 = (0.016666668f * (30.0f + (0.05f * frandmod(0x3E8)))); + var_r31->unk20 = (0.016666668f * (10.0f + (0.02f * frandmod(0x3E8)))); + if (frandmod(0x64) < 0x50) { + var_r31->unk10 *= -1.0f; + } + if (frandmod(0x64) < 0x32) { + var_r31->unk18 *= -1.0f; + } + if (frandmod(0x64) < 0x32) { + var_r31->unk20 *= -1.0f; + } + fn_1_CAB0(var_r31->unk8); + var_r29 = 1; + } + } + return var_r29; +} + +s32 fn_1_DEA0(f32 arg8) { + M438MapStruct3* var_r28; + s32 var_r29; + s32 var_r30; + M438MapStruct2* var_r31; + f32 var_f31; + + var_r28 = lbl_1_bss_108C[0]->data; + var_r29 = 0; + var_r31 = &var_r28->unk4; + + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + var_f31 = fn_1_E5A4(var_r31->unk8, arg8); + if ((fabs(var_f31) < 8.0) && (var_r31->unk0 != 0)) { + var_r29 = 1; + break; + } + } + return var_r29; +} + +f32 fn_1_DF70(f32 arg8, f32 arg9) { + f32 temp_f30; + f32 var_f31; + + temp_f30 = 360.0f; + var_f31 = 180.0 * (atan2f(arg9, arg8) / M_PI); + if (var_f31 < 0.0f) { + var_f31 += temp_f30; + } else if (var_f31 >= temp_f30) { + var_f31 -= temp_f30; + } + return var_f31; +} + +void fn_1_E034(Mtx arg0, Vec* arg1) { + f32 var_f26; + f32 temp_f25; + + arg1->x = fn_1_DF70(arg0[2][2], arg0[1][2]); + arg1->z = fn_1_DF70(arg0[0][0], arg0[0][1]); + temp_f25 = -arg0[0][2]; + var_f26 = sqrtf(fabs(1.0 - (temp_f25 * temp_f25))); + if ((arg1->x > 90.0f) && (arg1->x < 270.0f) && (arg1->z > 90.0f) && (arg1->z < 270.0f)) { + arg1->x = fmod((180.0f + arg1->x), 360.0); + arg1->z = fmod((180.0f + arg1->z), 360.0); + var_f26 = -var_f26; + } + arg1->y = fn_1_DF70(var_f26, temp_f25); +} + +f32 fn_1_E488(f32 arg8, f32 arg9, f32 argA) { + f32 var_f31; + + var_f31 = fmodf((arg9 - arg8), 360.0); + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + var_f31 = fmodf((arg8 + (argA * var_f31)), 360.0); + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + return var_f31; +} + +f32 fn_1_E5A4(f32 arg8, f32 arg9) { + f32 var_f31; + + var_f31 = fmodf((arg9 - arg8), 360.0); + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} From 77da4907df14823f39216515325b5546afb53c4c Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Wed, 15 Jan 2025 23:40:36 -0600 Subject: [PATCH 127/178] Label much of MSM (#535) --- config/GMPE01_00/symbols.txt | 10 +- config/GMPE01_01/symbols.txt | 14 +- include/game/msm.h | 38 +- include/game/msm_data.h | 185 +++++ include/msm/msmmem.h | 6 +- include/msm/msmmus.h | 2 +- include/msm/msmse.h | 4 +- include/msm/msmstream.h | 6 +- include/msm/msmsys.h | 201 ++--- src/msm/msmmem.c | 181 +++-- src/msm/msmmus.c | 519 +++++++------ src/msm/msmse.c | 936 ++++++++++++----------- src/msm/msmstream.c | 1350 +++++++++++++++++----------------- src/msm/msmsys.c | 945 ++++++++++++------------ 14 files changed, 2207 insertions(+), 2190 deletions(-) create mode 100644 include/game/msm_data.h diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 3e84f320..1417c27e 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -3568,15 +3568,15 @@ msmStreamSetOutputMode = .text:0x8011A61C; // type:function size:0x114 msmStreamAmemFree = .text:0x8011A730; // type:function size:0x68 msmStreamAmemAlloc = .text:0x8011A798; // type:function size:0x10C msmStreamInit = .text:0x8011A8A4; // type:function size:0x2A8 -msmStreamPauseOff = .text:0x8011AB4C; // type:function size:0x2B8 -msmStreamPauseOn = .text:0x8011AE04; // type:function size:0x1AC +msmStreamPauseOff = .text:0x8011AB4C; // type:function size:0x2B8 scope:local +msmStreamPauseOn = .text:0x8011AE04; // type:function size:0x1AC scope:local msmStreamPauseFade = .text:0x8011AFB0; // type:function size:0x2E8 scope:local msmStreamFade = .text:0x8011B298; // type:function size:0x33C scope:local msmStreamStopSub = .text:0x8011B5D4; // type:function size:0x13C scope:local msmStreamSetParamSub = .text:0x8011B710; // type:function size:0xE0 scope:local -msmStreamPackStartStereo = .text:0x8011B7F0; // type:function size:0x448 -msmStreamPackStartMono = .text:0x8011BC38; // type:function size:0x2DC -msmStreamSlotOff = .text:0x8011BF14; // type:function size:0xD0 +msmStreamPackStartStereo = .text:0x8011B7F0; // type:function size:0x448 scope:local +msmStreamPackStartMono = .text:0x8011BC38; // type:function size:0x2DC scope:local +msmStreamSlotOff = .text:0x8011BF14; // type:function size:0xD0 scope:local msmStreamData = .text:0x8011BFE4; // type:function size:0x320 scope:local msmStreamDvdCallback = .text:0x8011C304; // type:function size:0x4A8 scope:local msmStreamDvdCallback2 = .text:0x8011C7AC; // type:function size:0x188 scope:local diff --git a/config/GMPE01_01/symbols.txt b/config/GMPE01_01/symbols.txt index ef9eff80..5bed188a 100644 --- a/config/GMPE01_01/symbols.txt +++ b/config/GMPE01_01/symbols.txt @@ -3568,15 +3568,15 @@ msmStreamSetOutputMode = .text:0x8011A61C; // type:function size:0x114 msmStreamAmemFree = .text:0x8011A730; // type:function size:0x68 msmStreamAmemAlloc = .text:0x8011A798; // type:function size:0x10C msmStreamInit = .text:0x8011A8A4; // type:function size:0x2A8 -msmStreamPauseOff = .text:0x8011AB4C; // type:function size:0x2B8 -msmStreamPauseOn = .text:0x8011AE04; // type:function size:0x1AC -msmStreamPauseFade = .text:0x8011AFB0; // type:function size:0x2E8 -msmStreamFade = .text:0x8011B298; // type:function size:0x33C +msmStreamPauseOff = .text:0x8011AB4C; // type:function size:0x2B8 scope:local +msmStreamPauseOn = .text:0x8011AE04; // type:function size:0x1AC scope:local +msmStreamPauseFade = .text:0x8011AFB0; // type:function size:0x2E8 scope:local +msmStreamFade = .text:0x8011B298; // type:function size:0x33C scope:local msmStreamStopSub = .text:0x8011B5D4; // type:function size:0x13C scope:local msmStreamSetParamSub = .text:0x8011B710; // type:function size:0xE0 scope:local -msmStreamPackStartStereo = .text:0x8011B7F0; // type:function size:0x448 -msmStreamPackStartMono = .text:0x8011BC38; // type:function size:0x2DC -msmStreamSlotOff = .text:0x8011BF14; // type:function size:0xD0 +msmStreamPackStartStereo = .text:0x8011B7F0; // type:function size:0x448 scope:local +msmStreamPackStartMono = .text:0x8011BC38; // type:function size:0x2DC scope:local +msmStreamSlotOff = .text:0x8011BF14; // type:function size:0xD0 scope:local msmStreamData = .text:0x8011BFE4; // type:function size:0x320 scope:local msmStreamDvdCallback = .text:0x8011C304; // type:function size:0x4A8 scope:local msmStreamDvdCallback2 = .text:0x8011C7AC; // type:function size:0x188 scope:local diff --git a/include/game/msm.h b/include/game/msm.h index e7ae2ae2..e5106677 100644 --- a/include/game/msm.h +++ b/include/game/msm.h @@ -3,6 +3,7 @@ #include "dolphin.h" #include "musyx/musyx.h" +#include "game/msm_data.h" #define MSM_SEPARAM_NONE 0 #define MSM_SEPARAM_VOL (1 << 0) @@ -40,25 +41,24 @@ #define MSM_ERR_READFAIL -2 #define MSM_ERR_OUTOFMEM -10 #define MSM_ERR_OUTOFAMEM -20 -#define MSM_ERR_INITFAIL -20 -#define MSM_ERR_1E -30 +#define MSM_ERR_INITFAIL -30 #define MSM_ERR_INVALID_AUXPARAM -31 -#define MSM_ERR_20 -32 +#define MSM_ERR_GRP_FAILPUSH -32 #define MSM_ERR_PLAYFAIL -33 -#define MSM_ERR_22 -34 +#define MSM_LISTENER_NO_UPDATA -34 #define MSM_ERR_STREAMALLOC_FAIL -35 #define MSM_ERR_INSTALLED -36 #define MSM_ERR_64 -100 -#define MSM_ERR_65 -101 +#define MSM_ERR_STACK_OVERFLOW -101 #define MSM_ERR_GRP_NOTLOADED -103 -#define MSM_ERR_6E -110 -#define MSM_ERR_6F -111 +#define MSM_ERR_CHANLIMIT -110 +#define MSM_ERR_INVALIDSE -111 #define MSM_ERR_INVALIDID -120 #define MSM_ERR_INVALIDFILE -121 #define MSM_ERR_REMOVEDID -122 #define MSM_ERR_MUSGRP_NOTLOADED -123 #define MSM_ERR_OUTOFMUS -130 -#define MSM_ERR_8C -140 +#define MSM_ERR_RANGE_STREAM -140 #define MSM_VOL_MAX 127 #define MSM_PAN_LEFT 32 @@ -132,19 +132,6 @@ typedef struct msmSeParam_s { Vec pos; } MSM_SEPARAM; -typedef struct msmSe_s { - u16 groupId; - u16 fxId; - s8 vol; - s8 pan; - s16 pitchBend; - u8 span; - u8 reverb; - u8 chorus; - s8 doppler; - s8 comp; - u8 pad[3]; -} MSMSE; typedef struct msmSeListener_s { s32 flag; @@ -173,10 +160,11 @@ typedef struct msmStreamParam_s { } MSM_STREAMPARAM; s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram); -s32 msmSysSetOutputMode(SND_OUTPUTMODE mode); +BOOL msmSysSetOutputMode(SND_OUTPUTMODE mode); s32 msmSysDelGroupAll(void); s32 msmSysGetSampSize(BOOL baseGrp); s32 msmSysDelGroupBase(s32 grpNum); +s32 msmSysSetAux(s32 auxA, s32 auxB); s32 msmSeSetParam(int seNo, MSM_SEPARAM *param); int msmSePlay(int seId, MSM_SEPARAM *param); @@ -190,6 +178,8 @@ void msmSeDelListener(void); s32 msmSeGetStatus(int seNo); s32 msmSeGetNumPlay(BOOL baseGrp); s32 msmSeGetEntryID(s32 seId, int *seNo); +void msmSeSetMasterVolume(s32 vol); +MSM_SE* msmSeGetIndexPtr(s32 seId); int msmMusPlay(int musId, MSM_MUSPARAM *musParam); s32 msmMusStop(int musNo, s32 speed); @@ -199,6 +189,8 @@ s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl); void msmMusStopAll(BOOL checkGrp, s32 speed); s32 msmMusGetStatus(int musNo); s32 msmMusGetNumPlay(BOOL baseGrp); +s32 msmMusSetParam(s32 musNo, MSM_MUSPARAM *param); +void msmMusSetMasterVolume(s32 vol); int msmStreamPlay(int streamId, MSM_STREAMPARAM *streamParam); s32 msmStreamStop(int streamNo, s32 speed); @@ -207,5 +199,7 @@ s32 msmStreamPause(int streamNo, BOOL pause, s32 speed); void msmStreamStopAll(s32 speed); s32 msmStreamGetStatus(int streamNo); +void msmStreamSetMasterVolume(s32 arg0); +void msmStreamSetOutputMode(s32 outputMode); #endif diff --git a/include/game/msm_data.h b/include/game/msm_data.h new file mode 100644 index 00000000..0c282ffb --- /dev/null +++ b/include/game/msm_data.h @@ -0,0 +1,185 @@ +#ifndef _MSM_DATA_H +#define _MSM_DATA_H + +#include "dolphin.h" +#include "musyx/musyx.h" + +#define MSM_STREAM_FLAG_STEREO 0x1 +#define MSM_STREAM_FLAG_LOOP 0x2 + +#define MSM_FILE_VERSION 2 +#define MSM_PDT_FILE_VERSION 1 + +typedef struct MSMHeader_s { + s32 magic; + s32 version; + s32 endOfs; + s32 endSize; + s32 infoOfs; + u32 infoSize; + s32 auxParamOfs; + u32 auxParamSize; + s32 grpInfoOfs; + s32 grpInfoSize; + s32 musOfs; + s32 musSize; + s32 seOfs; + s32 seSize; + s32 grpDataOfs; + s32 grpDataSize; + s32 sampOfs; + s32 sampSize; + s32 dummyMusOfs; + s32 dummyMusSize; + s32 grpSetOfs; + s32 grpSetSize; + s32 pad[2]; +} MSM_HEADER; // sizeof 0x60 + +typedef struct MSMInfo_s { + s8 voices; + s8 music; + s8 sfx; + s8 grpMax; + s16 musMax; + s16 seMax; + s8 musChanMax; + s8 stackDepthA; + s8 stackDepthB; + s8 surroundF; + s8 unkC[2]; + s8 auxParamA; + s8 auxParamB; + s32 minMem; + s32 aramSize; + s32 grpBufSizeA; + s32 grpBufSizeB; + s32 dummyMusSize; + s32 unk24; + s8 baseGrpNum; + s8 baseGrp[23]; +} MSM_INFO; + +typedef struct { + u32 tempDisableFX; + f32 coloration; + f32 mix; + f32 time; + f32 damping; + f32 preDelay; + f32 crosstalk; +} MSM_AUXPARAM_REVERBHI; + +typedef struct { + u32 tempDisableFX; + f32 coloration; + f32 mix; + f32 time; + f32 damping; + f32 preDelay; + f32 crosstalk; +} MSM_AUXPARAM_REVERBSTD; + +typedef struct { + u32 baseDelay; + u32 variation; + u32 period; +} MSM_AUXPARAM_CHORUS; + +typedef struct { + u32 delay[3]; + u32 feedback[3]; + u32 output[3]; +} MSM_AUXPARAM_DELAY; + +typedef struct MSMAuxParam_s { + s8 type; + u8 pad[3]; + union { + MSM_AUXPARAM_REVERBHI revHi; + MSM_AUXPARAM_REVERBSTD revStd; + MSM_AUXPARAM_CHORUS chorus; + MSM_AUXPARAM_DELAY delay; + }; +} MSM_AUXPARAM; + +typedef struct MSMSe_s { + SND_GROUPID gid; + SND_FXID fxId; + s8 vol; + s8 pan; + s16 pitchBend; + u8 span; + u8 reverb; + u8 chorus; + s8 emitterF; + s8 emiComp; + u8 pad[3]; +} MSM_SE; + +typedef struct MSMMus_s { + SND_GROUPID sgid; + SND_SONGID sid; + s32 songOfs; + s32 songSize; + s8 songGrp; + s8 vol; + u8 pad[2]; +} MSM_MUS; // Size 0x10 + +typedef struct MSMGrpHead_s { + s32 poolOfs; + s32 projOfs; + s32 sdirOfs; + s32 sngOfs; +} MSM_GRP_HEAD; + +typedef struct MSMGrpInfo_s { + SND_GROUPID gid; + s8 stackNo; + s8 subGrpId; + s32 dataOfs; + s32 dataSize; + s32 sampOfs; + s32 sampSize; + u8 pad[12]; +} MSM_GRP_INFO; + +typedef struct MSMGrpSet_s { + s8 numGrpSet; + s8 grpSetW; + s8 data[1]; +} MSM_GRP_SET; + +typedef struct MSMStreamHeader_s { + s16 version; + s16 streamMax; + s32 chanMax; + s32 sampleFrq; + s32 maxBufs; + u32 streamPackListOfs; + u32 adpcmParamOfs; + u32 streamPackOfs; + u32 sampleOfs; +} MSM_STREAM_HEADER; + +typedef struct MSMStream_s { + s32 sampleOfs; + s16 adpcmParamIdx; + u16 pad; +} MSM_STREAM; + +typedef struct MSMStreamPack_s { + s8 flag; + s8 vol; + s8 pan; + s8 span; + s8 auxA; + s8 auxB; + u16 frq; + u32 loopOfsEnd; + u32 loopOfsStart; + MSM_STREAM stream[2]; +} MSM_STREAM_PACK; // Size unknown + +#endif diff --git a/include/msm/msmmem.h b/include/msm/msmmem.h index 1acc500a..30d73f75 100644 --- a/include/msm/msmmem.h +++ b/include/msm/msmmem.h @@ -3,8 +3,8 @@ #include "dolphin/types.h" -void msmMemFree(void *); -void *msmMemAlloc(u32); -void msmMemInit(void *, u32); +void msmMemFree(void *ptr); +void *msmMemAlloc(u32 sze); +void msmMemInit(void *ptr, u32 size); #endif diff --git a/include/msm/msmmus.h b/include/msm/msmmus.h index 6428b067..586af22c 100644 --- a/include/msm/msmmus.h +++ b/include/msm/msmmus.h @@ -16,6 +16,6 @@ s32 msmMusPause(int musNo, BOOL pause, s32 speed); void msmMusStopAll(BOOL checkGrp, s32 speed); s32 msmMusStop(int musNo, s32 speed); int msmMusPlay(int musId, MSM_MUSPARAM* musParam); -s32 msmMusInit(sysData* arg0, DVDFileInfo* arg1); +s32 msmMusInit(MSM_SYS* arg0, DVDFileInfo* arg1); #endif diff --git a/include/msm/msmse.h b/include/msm/msmse.h index feb1e462..b765a771 100644 --- a/include/msm/msmse.h +++ b/include/msm/msmse.h @@ -5,7 +5,7 @@ #include "msm/msmsys.h" void msmSePeriodicProc(void); -MSMSE* msmSeGetIndexPtr(s32 arg0); +MSM_SE* msmSeGetIndexPtr(s32 arg0); void msmSeDelListener(void); s32 msmSeUpdataListener(Vec* pos, Vec* heading); s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_SELISTENER* listener); @@ -18,6 +18,6 @@ void msmSePauseAll(BOOL pause, s32 speed); void msmSeStopAll(BOOL checkGrp, s32 speed); s32 msmSeStop(int seNo, s32 speed); int msmSePlay(int seId, MSM_SEPARAM* param); -s32 msmSeInit(sysData* arg0, DVDFileInfo* arg1); +s32 msmSeInit(MSM_SYS* arg0, DVDFileInfo* arg1); #endif diff --git a/include/msm/msmstream.h b/include/msm/msmstream.h index fb1bd9cd..b86fcaad 100644 --- a/include/msm/msmstream.h +++ b/include/msm/msmstream.h @@ -13,10 +13,6 @@ void msmStreamSetOutputMode(s32 arg0); void msmStreamAmemFree(void); s32 msmStreamAmemAlloc(void); s32 msmStreamInit(char* arg0); -void msmStreamPauseOff(s32 arg0); -void msmStreamPauseOn(s32 streamNo, s32 arg1); -s32 msmStreamPackStartStereo(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2); -s32 msmStreamPackStartMono(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2); -void msmStreamSlotOff(s32 streamNo); + #endif diff --git a/include/msm/msmsys.h b/include/msm/msmsys.h index 3ed5e134..6a55a4c6 100755 --- a/include/msm/msmsys.h +++ b/include/msm/msmsys.h @@ -5,167 +5,63 @@ #include "dolphin.h" -typedef struct { - u32 tempDisableFX; - f32 coloration; - f32 mix; - f32 time; - f32 damping; - f32 preDelay; - f32 crosstalk; -} SubStructRev; +#define MSM_AUX_REVERBHI 0 +#define MSM_AUX_REVERBSTD 1 +#define MSM_AUX_CHORUS 2 +#define MSM_AUX_DELAY 3 -typedef struct { - u32 baseDelay; - u32 variation; - u32 period; -} SubStructCh; - -typedef struct { - u32 delay[3]; - u32 feedback[3]; - u32 output[3]; -} SubDelay; - -typedef struct _unkSubStruct { - s8 unk0; - union { - SubStructRev rev; - SubStructCh ch; - SubDelay delay; - }; -} unkSubStruct; +#define MSM_AUXNO_NULL -2 +#define MSM_AUXNO_UNSET -1 typedef union { SND_AUX_REVERBHI revHi; SND_AUX_REVERBSTD revStd; - SND_AUX_CHORUS ch; + SND_AUX_CHORUS chorus; SND_AUX_DELAY delay; -} UnkSndAuxUnion; // Size 0x1E0 +} MSM_AUX; // Size 0x1E0 -typedef struct _unkSubStruct3 { - char unk[0x4]; - s32 unk4; - char unk8[0x8]; - s32 unk10; // offset - u32 unk14; // length - s32 unk18; // offset - u32 unk1C; // length - s32 unk20; - s32 unk24; - s32 unk28; - s32 unk2C; - s32 unk30; - s32 unk34; - s32 unk38; - char unk3C[4]; - s32 unk40; - char unk44[4]; - s32 unk48; - char unk4C[4]; - s32 unk50; - s32 unk54; - char unk58[8]; -} unkSubStruct3; // sizeof 0x60 +typedef struct MSMGrpWork_s { + s8 grpId; + s8 baseGrpF; + u32 num; + void *buf; +} MSM_GRP_STACK; -typedef struct _unkStruct3 { - s32 unk0; - s32 unk4; - s32 unk8; -} unkStruct3; - -typedef struct _sndInitData { - s8 unk0; - s8 unk1; - s8 unk2; - s8 unk3; - s16 unk4; - s16 unk6; - s8 unk8; - s8 unk9; - s8 unkA; - s8 unkB; - char unkC[2]; - s8 unkE; - s8 unkF; - u32 unk10; - s32 unk14; - s32 unk18; - s32 unk1C; - s32 unk20; - char unk24[4]; - s8 unk28; - s8 unk29[10]; // size unknown -} sndInitData; - -typedef struct { - /* 0x00 */ s8 unk00; - /* 0x01 */ s8 unk01; - /* 0x02 */ char unk02[2]; - /* 0x04 */ u32 unk04; - /* 0x08 */ void *unk08; -} UnkStructSys43C; // Size 0xC - -typedef struct _unkStruct4 { - SND_GROUPID unk0; - s8 unk2; - s8 unk3; - s32 unk4; - s32 unk8; - s32 unkC; - s32 unk10; - char unk14[0xC]; -} unkStruct4; // Size 0x20 - -typedef struct { - /* 0x00 */ s8 unk00; - /* 0x01 */ s8 unk01; - /* 0x02 */ s8 unk02[1]; // unknown array length -} UnkSys3F0Struct; // Size unknown - -typedef struct _sysData { - s32 unk0; - s8 unk4; +typedef struct MSMSys_s { + s32 msmEntryNum; + s8 outputMode; s8 unk5; s8 unk6; - s8 unk7; - s32 unk8; - unkSubStruct3 *unkC; - sndInitData *unk10; - unkSubStruct *unk14; - s8 unk18[2]; - s8 unk1A; - s8 unk1B; - UnkSndAuxUnion unk1C[2]; // 0: userA, 1: userB - s8 unk3DC; - char unk3DD[3]; - s32 unk3E0; - u32 unk3E4; - u32 unk3E8; - unkStruct4 *unk3EC; - UnkSys3F0Struct *unk3F0; - s8 unk3F4; - unkStruct3 *unk3F8[1]; // unknown array length - char unk3FC[0x38]; - s8 unk434; - u8 unk435; - s8 unk436; - char unk437[1]; - void *unk438; - UnkStructSys43C unk43C[1]; // unknown array length - char unk448[0x24]; - s8 unk46C; - u8 unk46D; - s8 unk46E; - char unk46F[1]; - void *unk470; - UnkStructSys43C unk474[1]; // unknown array length - char unk480[0x6C]; - s32 unk4EC; - BOOL unk4F0; - AIDCallback unk4F4; - s32 unk4F8; -} sysData; + s8 arInitF; + s32 aramP; + MSM_HEADER *header; + MSM_INFO *info; + MSM_AUXPARAM *auxParam; + s8 auxParamNo[2]; + MSM_AUX aux[2]; // 0: userA, 1: userB + s8 grpMax; + s32 grpNum; + u32 sampSize; + u32 sampSizeBase; + MSM_GRP_INFO *grpInfo; + MSM_GRP_SET *grpSet; + s8 baseGrpNum; + MSM_GRP_HEAD *grpData[15]; + s8 grpStackAMax; + u8 grpStackADepth; + s8 grpStackAOfs; + void *grpBufA; + MSM_GRP_STACK grpStackA[4]; + s8 grpStackBMax; + u8 grpStackBDepth; + s8 grpStackBOfs; + void *grpBufB; + MSM_GRP_STACK grpStackB[10]; + s32 irqDepth; + BOOL irqState; + AIDCallback oldAIDCallback; + s32 timer; +} MSM_SYS; s32 msmSysSearchGroupStack(s32 arg0, s32 arg1); s32 msmSysGroupInit(DVDFileInfo *arg0); @@ -176,8 +72,7 @@ void *msmSysGetGroupDataPtr(s32 arg0); BOOL msmSysCheckLoadGroupID(s32 arg0); void msmSysRegularProc(void); s32 msmSysGetOutputMode(void); -s32 msmSysSetOutputMode(SND_OUTPUTMODE mode); -s32 msmSysSetAux(s32 arg0, s32 arg1); +BOOL msmSysSetOutputMode(SND_OUTPUTMODE mode); s32 msmSysGetSampSize(BOOL baseGrp); s32 msmSysDelGroupAll(void); s32 msmSysDelGroupBase(s32 grpNum); diff --git a/src/msm/msmmem.c b/src/msm/msmmem.c index cbe6e2be..1a587589 100644 --- a/src/msm/msmmem.c +++ b/src/msm/msmmem.c @@ -1,133 +1,132 @@ #include "msm/msmmem.h" -typedef struct _unkStruct { - struct _unkStruct* prev; - struct _unkStruct* next; - u32 unk8; - u32 unkC; - void* unk10; - void* unk14; - char unk18[0x8]; -} unkStruct; +typedef struct MSMBlock_s { + struct MSMBlock_s* prev; + struct MSMBlock_s* next; + u32 freeSize; + u32 size; + void* ptr; + char pad[12]; +} MSMBLOCK; -typedef struct _unkMemStruct { - unkStruct* unk0; - u32 unk4; - unkStruct* unk8; - unkStruct unkC; -} unkMemStruct; +typedef struct MSMMem_s { + void *ptr; + u32 size; + MSMBLOCK *head; + MSMBLOCK first; +} MSM_MEM; -static unkMemStruct mem; +static MSM_MEM mem; -void msmMemFree(void* arg0) { - unkStruct* temp_r6; - unkStruct* temp_r7; - unkStruct* temp_r8; - unkStruct* temp_r5; - unkStruct* temp; +void msmMemFree(void* ptr) { + MSMBLOCK* block; + MSMBLOCK* blockPrev; + MSMBLOCK* blockNext; + MSMBLOCK* blockHead; + MSMBLOCK* base; - temp = arg0; + base = ptr; - temp_r6 = &temp[-1]; - temp_r7 = temp_r6->prev; - temp_r8 = temp_r6->next; - if (mem.unk0 > temp_r6 || ((u32)mem.unk0 + (u32)mem.unk4) <= (u32)temp_r6) { + block = &base[-1]; + blockPrev = block->prev; + blockNext = block->next; + if (mem.ptr > block || ((u32)mem.ptr + (u32)mem.size) <= (u32)block) { return; } - if ((temp_r7->next != temp_r6) || (temp_r6->unk10 != arg0) || (temp_r8 && (temp_r8->prev != temp_r6))) { + if ((blockPrev->next != block) || (block->ptr != ptr) || (blockNext && (blockNext->prev != block))) { return; } - temp_r7->unkC += temp_r6->unk8 + temp_r6->unkC; - temp_r7->next = temp_r8; - temp_r5 = mem.unk8; - if ((temp_r5 == temp_r6) || (temp_r5->unkC < temp_r7->unkC)) { - mem.unk8 = temp_r7; + blockPrev->size += block->freeSize + block->size; + blockPrev->next = blockNext; + blockHead = mem.head; + if ((blockHead == block) || (blockHead->size < blockPrev->size)) { + mem.head = blockPrev; } - if (temp_r8) { - temp_r8->prev = temp_r7; - if (mem.unk8->unkC < temp_r8->unkC) { - mem.unk8 = temp_r8; + if (blockNext) { + blockNext->prev = blockPrev; + if (mem.head->size < blockNext->size) { + mem.head = blockNext; } } } -void* msmMemAlloc(u32 arg0) { - s32 temp_r0; - u32 var_r5; - u32 var_r7; - unkStruct* temp_r5; - unkStruct* var_r8; - unkStruct* temp_r9; +void* msmMemAlloc(u32 size) { + s32 alignOfs; + u32 freeSize; + u32 allocSize; + MSMBLOCK* block; + MSMBLOCK* blockPrev; + MSMBLOCK* blockNext; - var_r7 = arg0 + 0x20; - temp_r0 = var_r7 & 0x1F; - if (temp_r0 != 0) { - var_r7 += 0x20 - temp_r0; + allocSize = size + 0x20; + alignOfs = allocSize & 0x1F; + if (alignOfs) { + allocSize += 0x20 - alignOfs; } - if (mem.unk8->unkC >= var_r7) { - var_r8 = mem.unk8; + if (mem.head->size >= allocSize) { + blockPrev = mem.head; } else { - var_r8 = &mem.unkC; + blockPrev = &mem.first; do { - if (var_r8->unkC >= var_r7) break; - var_r8 = var_r8->next; - } while (var_r8); - if (!var_r8) { + if (blockPrev->size >= allocSize) break; + blockPrev = blockPrev->next; + } while (blockPrev); + if (!blockPrev) { return NULL; } } - var_r5 = var_r8->unk8; - if (var_r5 != 0) { - var_r5 -= 0x20; + freeSize = blockPrev->freeSize; + if (freeSize != 0) { + freeSize -= 0x20; } - temp_r5 = (void*)((u32)var_r8->unk10 + (var_r5)); - temp_r9 = var_r8->next; - if ((mem.unk0 > temp_r5) || ((void*)((u32)mem.unk0 + (u32)mem.unk4) <= temp_r5)) { + block = (void*)((u32)blockPrev->ptr + (freeSize)); + blockNext = blockPrev->next; + if ((mem.ptr > block) || ((void*)((u32)mem.ptr + (u32)mem.size) <= block)) { return NULL; } - temp_r5->unk8 = var_r7; - temp_r5->unkC = var_r8->unkC - var_r7; - temp_r5->unk10 = (temp_r5 + 1); - temp_r5->prev = var_r8; - temp_r5->next = temp_r9; - mem.unk8 = temp_r5; - var_r8->unkC = 0; - var_r8->next = temp_r5; - if (temp_r9) { - temp_r9->prev = temp_r5; - if (mem.unk8->unkC < temp_r9->unkC) { - mem.unk8 = temp_r9; + block->freeSize = allocSize; + block->size = blockPrev->size - allocSize; + block->ptr = (block + 1); + block->prev = blockPrev; + block->next = blockNext; + mem.head = block; + blockPrev->size = 0; + blockPrev->next = block; + if (blockNext) { + blockNext->prev = block; + if (mem.head->size < blockNext->size) { + mem.head = blockNext; } } - return temp_r5->unk10; + return block->ptr; } -void msmMemInit(void* arg0, u32 arg1) { - unkStruct* temp_r7; - s32 temp; +void msmMemInit(void* ptr, u32 size) { + MSMBLOCK* block; + s32 ofs; - temp = (s32)arg0 & 0x1F; - switch (temp) { + ofs = (s32)ptr & 0x1F; + switch (ofs) { default: - temp = 0x20 - temp; + ofs = 0x20 - ofs; break; case 0: - temp = 0; + ofs = 0; break; } - mem.unk0 = (void*)((s32)arg0 + temp); - temp = (s32)arg0 + arg1; - mem.unk4 = ((temp - (s32)mem.unk0) & ~0x1F); - temp_r7 = &mem.unkC; - temp_r7->unk8 = 0; - temp_r7->unkC = mem.unk4; - temp_r7->unk10 = mem.unk0; - temp_r7->prev = NULL; - temp_r7->next = NULL; - mem.unk8 = &mem.unkC; + mem.ptr = (void*)((s32)ptr + ofs); + ofs = (s32)ptr + size; + mem.size = ((ofs - (s32)mem.ptr) & ~0x1F); + block = &mem.first; + block->freeSize = 0; + block->size = mem.size; + block->ptr = mem.ptr; + block->prev = NULL; + block->next = NULL; + mem.head = &mem.first; } diff --git a/src/msm/msmmus.c b/src/msm/msmmus.c index 3b70662d..061da27a 100755 --- a/src/msm/msmmus.c +++ b/src/msm/msmmus.c @@ -1,150 +1,127 @@ #include "msm/msmmus.h" #include "msm/msmmem.h" -typedef struct { - /* 0x00 */ s16 unk00; - /* 0x02 */ s8 unk02; - /* 0x03 */ s8 unk03; - /* 0x04 */ s8 unk04; - /* 0x05 */ s8 unk05; - /* 0x06 */ char unk06[2]; - /* 0x08 */ SND_SEQID unk08; - /* 0x0C */ void* unk0C; - /* 0x10 */ void* unk10; - /* 0x14 */ volatile s32 unk14; - /* 0x18 */ s32 unk18; - /* 0x1C */ s8 unk1C; - /* 0x1D */ char unk1D[3]; - /* 0x20 */ volatile s32 unk20; - /* 0x24 */ s32 unk24; - /* 0x28 */ s8 unk28; - /* 0x29 */ char unk29[3]; - /* 0x2C */ volatile s32 unk2C; - /* 0x30 */ s32 unk30; - /* 0x34 */ char unk34[1]; - /* 0x35 */ volatile s8 unk35; - /* 0x36 */ s8 unk36; - /* 0x37 */ char unk37[1]; - /* 0x38 */ SND_PLAYPARA unk38; -} msmMusStruct00; // Size 0x58 +typedef struct MusPlayer_s { + /* 0x00 */ s16 musId; + /* 0x02 */ s8 baseVol; + /* 0x03 */ s8 vol; + /* 0x04 */ s8 status; + /* 0x05 */ s8 busyF; + /* 0x08 */ SND_SEQID seqId; + /* 0x0C */ void* songBuf; + /* 0x10 */ void* arrfile; + /* 0x14 */ volatile s32 fadeMaxTime; + /* 0x18 */ s32 fadeTime; + /* 0x1C */ s8 fadeVol; + /* 0x20 */ volatile s32 pauseOnMaxTime; + /* 0x24 */ s32 pauseOnTime; + /* 0x28 */ s8 pauseOnVol; + /* 0x2C */ volatile s32 pauseOffMaxTime; + /* 0x30 */ s32 pauseOffTime; + /* 0x28 */ s8 pauseOffVol; + /* 0x35 */ volatile s8 startVol; + /* 0x36 */ s8 targetVol; + /* 0x38 */ SND_PLAYPARA playPara; +} MUS_PLAYER; // Size 0x58 -typedef struct { - /* 0x00 */ u16 unk00; - /* 0x02 */ s16 unk02; - /* 0x04 */ s32 unk04; - /* 0x08 */ s32 unk08; - /* 0x0C */ s8 unk0C; - /* 0x0D */ s8 unk0D; - /* 0x0E */ char unk0E[2]; -} msmMusStruct01; // Size 0x10 +static struct { + /* 0x000 */ s16 musMax; + /* 0x002 */ s8 musChanMax; + /* 0x003 */ s8 baseGrpNumPlay; + /* 0x004 */ s8 numPlay; + /* 0x008 */ s32 msmEntryNum; + /* 0x00C */ MSM_MUS *musData; + /* 0x010 */ s32 dummyMusOfs; + /* 0x014 */ void* musBuf; + /* 0x018 */ MUS_PLAYER player[4]; +} mus; -typedef struct { - /* 0x000 */ s16 unk00; - /* 0x002 */ s8 unk02; - /* 0x003 */ s8 unk03; - /* 0x004 */ s8 unk04; - /* 0x005 */ char unk05[3]; - /* 0x008 */ s32 unk08; - /* 0x00C */ msmMusStruct01* unk0C; - /* 0x010 */ s32 unk10; - /* 0x014 */ void* unk14; - /* 0x018 */ msmMusStruct00 unk18[1]; // unknown length - /* 0x01C */ char unk70[0x108]; -} msmMusStruct02; // Size 0x178 +static void msmMusPauseSub(MUS_PLAYER* player, BOOL pause, s32 speed) { + s32 time; -typedef struct { - /* 0x00 */ char unk00[0xC]; - /* 0x0C */ s32 unk0C; -} UnkGroupDataPtr; // Size unknown - -static msmMusStruct02 mus; - -static void msmMusPauseSub(msmMusStruct00* arg0, BOOL pause, s32 speed) { - s32 temp_r30; - - temp_r30 = speed / 15; + time = speed / 15; if (pause) { - if (arg0->unk04 == 2) { - if (temp_r30 != 0) { - arg0->unk24 = temp_r30; - arg0->unk20 = temp_r30; - arg0->unk28 = 0x7F; + if (player->status == MSM_MUS_PLAY) { + if (time != 0) { + player->pauseOnTime = time; + player->pauseOnMaxTime = time; + player->pauseOnVol = 127; } else { - sndSeqPause(arg0->unk08); - arg0->unk28 = 0; + sndSeqPause(player->seqId); + player->pauseOnVol = 0; } - arg0->unk04 = 3; + player->status = MSM_MUS_PAUSE; } } else { - if (arg0->unk04 == 3) { - if (temp_r30 != 0) { - if (arg0->unk20 != 0) { - arg0->unk20 = -temp_r30; + if (player->status == MSM_MUS_PAUSE) { + if (time != 0) { + if (player->pauseOnMaxTime != 0) { + player->pauseOnMaxTime = -time; } else { - sndSeqContinue(arg0->unk08); - arg0->unk20 = -temp_r30; - arg0->unk24 = 0; - arg0->unk28 = 0; + sndSeqContinue(player->seqId); + player->pauseOnMaxTime = -time; + player->pauseOnTime = 0; + player->pauseOnVol = 0; } } else { - sndSeqContinue(arg0->unk08); - arg0->unk28 = 0x7F; - sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + sndSeqContinue(player->seqId); + player->pauseOnVol = 127; + sndSeqVolume(player->baseVol * player->vol * player->fadeVol * player->pauseOnVol / (127*127*127), 0, player->seqId, 0); } - arg0->unk04 = 2; + player->status = MSM_MUS_PLAY; } } } -static void msmMusPauseFade(msmMusStruct00* arg0) { - if (arg0->unk20 > 0) { - if (--arg0->unk24 == 0) { - arg0->unk20 = 0; - arg0->unk28 = 0; - sndSeqPause(arg0->unk08); +static void msmMusPauseFade(MUS_PLAYER *player) { + if (player->pauseOnMaxTime > 0) { + if (--player->pauseOnTime == 0) { + player->pauseOnMaxTime = 0; + player->pauseOnVol = 0; + sndSeqPause(player->seqId); } else { - arg0->unk28 = arg0->unk24 * 0x7F / arg0->unk20; - sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + player->pauseOnVol = player->pauseOnTime * 127 / player->pauseOnMaxTime; + sndSeqVolume(player->baseVol * player->vol * player->fadeVol * player->pauseOnVol / (127*127*127), 0, player->seqId, 0); } - } else if (arg0->unk20 < 0) { - if (++arg0->unk24 >= -arg0->unk20) { - arg0->unk20 = 0; - arg0->unk28 = 0x7F; + } else if (player->pauseOnMaxTime < 0) { + if (++player->pauseOnTime >= -player->pauseOnMaxTime) { + player->pauseOnMaxTime = 0; + player->pauseOnVol = 127; } else { - arg0->unk28 = arg0->unk24 * 0x7F / -arg0->unk20; + player->pauseOnVol = player->pauseOnTime * 127 / -player->pauseOnMaxTime; } - sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + sndSeqVolume(player->baseVol * player->vol * player->fadeVol * player->pauseOnVol / (127*127*127), 0, player->seqId, 0); } } -static void msmMusFade(msmMusStruct00* arg0) { - if (arg0->unk04 != 2) { +static void msmMusFade(MUS_PLAYER *player) { + if (player->status != MSM_MUS_PLAY) { return; } - if (arg0->unk14 > 0) { - if (--arg0->unk18 == 0) { - if (arg0->unk04 != 0) { - arg0->unk14 = 0; - if (arg0->unk14 != 0) { - arg0->unk18 = arg0->unk14; - arg0->unk1C = 0x7F; + if (player->fadeMaxTime > 0) { + if (--player->fadeTime == 0) { + if (player->status != 0) { + player->fadeMaxTime = 0; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - sndSeqStop(arg0->unk08); - arg0->unk04 = 1; + sndSeqStop(player->seqId); + player->status = 1; } } } else { - arg0->unk1C = arg0->unk18 * 0x7F / arg0->unk14; - sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + player->fadeVol = player->fadeTime * 127 / player->fadeMaxTime; + sndSeqVolume(player->baseVol * player->vol * player->fadeVol * player->pauseOnVol / (127*127*127), 0, player->seqId, 0); } - } else if (arg0->unk14 < 0) { - if (++arg0->unk18 >= -arg0->unk14) { - arg0->unk14 = 0; - arg0->unk1C = 0x7F; + } else if (player->fadeMaxTime < 0) { + if (++player->fadeTime >= -player->fadeMaxTime) { + player->fadeMaxTime = 0; + player->fadeVol = 127; } else { - arg0->unk1C = arg0->unk18 * 0x7F / -arg0->unk14; + player->fadeVol = player->fadeTime * 127 / -player->fadeMaxTime; } - sndSeqVolume(arg0->unk02 * arg0->unk03 * arg0->unk1C * arg0->unk28 / 2048383, 0, arg0->unk08, 0); + sndSeqVolume(player->baseVol * player->vol * player->fadeVol * player->pauseOnVol / (127*127*127), 0, player->seqId, 0); } } @@ -152,54 +129,54 @@ void msmMusFdoutEnd(void) { } void msmMusPeriodicProc(void) { - s32 var_r26; - msmMusStruct00* temp_r25; + s32 i; + MUS_PLAYER* player; - mus.unk04 = mus.unk03 = 0; - for (var_r26 = 0; var_r26 < mus.unk02; var_r26++) { - temp_r25 = &mus.unk18[var_r26]; - if (temp_r25->unk05 != 0) { + mus.numPlay = mus.baseGrpNumPlay = 0; + for (i = 0; i < mus.musChanMax; i++) { + player = &mus.player[i]; + if (player->busyF != FALSE) { continue; } - switch (temp_r25->unk04) { - case 1: - case 2: - if (sndSeqGetValid(temp_r25->unk08) == FALSE) { - temp_r25->unk04 = 0; + switch (player->status) { + case MSM_MUS_STOP: + case MSM_MUS_PLAY: + if (sndSeqGetValid(player->seqId) == FALSE) { + player->status = 0; } break; } - if (temp_r25->unk04 == 0) { + if (player->status == MSM_MUS_DONE) { continue; } - if (msmSysCheckBaseGroup(mus.unk0C[temp_r25->unk00].unk00) != 0) { - mus.unk04++; + if (msmSysCheckBaseGroup(mus.musData[player->musId].sgid) != 0) { + mus.numPlay++; } else { - mus.unk03++; + mus.baseGrpNumPlay++; } - msmMusPauseFade(temp_r25); - if (temp_r25->unk04 == 2 && temp_r25->unk2C != 0) { - if (++temp_r25->unk30 >= temp_r25->unk2C) { - temp_r25->unk2C = 0; - temp_r25->unk02 = temp_r25->unk36; + msmMusPauseFade(player); + if (player->status == MSM_MUS_PLAY && player->pauseOffMaxTime != 0) { + if (++player->pauseOffTime >= player->pauseOffMaxTime) { + player->pauseOffMaxTime = 0; + player->baseVol = player->targetVol; } else { - temp_r25->unk02 = temp_r25->unk35 + temp_r25->unk30 * (temp_r25->unk36 - temp_r25->unk35) / temp_r25->unk2C; + player->baseVol = player->startVol + player->pauseOffTime * (player->targetVol - player->startVol) / player->pauseOffMaxTime; } - sndSeqVolume(temp_r25->unk02 * temp_r25->unk03 * temp_r25->unk1C * temp_r25->unk28 / 2048383, 0, temp_r25->unk08, 0); + sndSeqVolume(player->baseVol * player->vol * player->fadeVol * player->pauseOnVol / (127*127*127), 0, player->seqId, 0); } - msmMusFade(temp_r25); + msmMusFade(player); } } s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl) { - msmMusStruct00* temp_ptr; + MUS_PLAYER *player; - if (musNo < 0 || musNo >= mus.unk02) { + if (musNo < 0 || musNo >= mus.musChanMax) { return MSM_ERR_OUTOFMUS; } - temp_ptr = &mus.unk18[musNo]; - if (sndSeqGetValid(temp_ptr->unk08) == TRUE) { - return sndSeqGetMidiCtrl(temp_ptr->unk08, channel & 0xF, ctrl); + player = &mus.player[musNo]; + if (sndSeqGetValid(player->seqId) == TRUE) { + return sndSeqGetMidiCtrl(player->seqId, channel & 0xF, ctrl); } return 0; } @@ -207,135 +184,135 @@ s32 msmMusGetMidiCtrl(int musNo, s32 channel, s32 ctrl) { s32 msmMusGetNumPlay(BOOL baseGrp) { switch (baseGrp) { case FALSE: - return mus.unk03 + mus.unk04; + return mus.baseGrpNumPlay + mus.numPlay; default: - return mus.unk03; + return mus.baseGrpNumPlay; } } s32 msmMusGetStatus(int musNo) { - if (musNo < 0 || musNo >= mus.unk02) { + if (musNo < 0 || musNo >= mus.musChanMax) { return MSM_ERR_OUTOFMUS; } - return mus.unk18[musNo].unk04; + return mus.player[musNo].status; } -void msmMusSetMasterVolume(s32 arg0) { - sndMasterVolume(arg0 & 0x7F, 0, 1, 0); +void msmMusSetMasterVolume(s32 vol) { + sndMasterVolume(vol & 127, 0, 1, 0); } -s32 msmMusSetParam(s32 arg0, MSM_MUSPARAM* arg1) { - msmMusStruct00* temp_r31; +s32 msmMusSetParam(s32 musNo, MSM_MUSPARAM *param) { + MUS_PLAYER* player; - if (arg0 < 0 || arg0 >= mus.unk02) { + if (musNo < 0 || musNo >= mus.musChanMax) { return MSM_ERR_OUTOFMUS; } - temp_r31 = &mus.unk18[arg0]; - if (arg1->flag & MSM_MUSPARAM_VOL) { - temp_r31->unk2C = arg1->fadeSpeed / 15; - if (temp_r31->unk2C != 0) { - temp_r31->unk05 = 1; - temp_r31->unk30 = 0; - temp_r31->unk35 = temp_r31->unk02; - temp_r31->unk36 = arg1->vol & 0x7F; - temp_r31->unk05 = 0; + player = &mus.player[musNo]; + if (param->flag & MSM_MUSPARAM_VOL) { + player->pauseOffMaxTime = param->fadeSpeed / 15; + if (player->pauseOffMaxTime != 0) { + player->busyF = 1; + player->pauseOffTime = 0; + player->startVol = player->baseVol; + player->targetVol = param->vol & 127; + player->busyF = 0; } else { - temp_r31->unk02 = arg1->vol & 0x7F; - sndSeqVolume(temp_r31->unk02 * temp_r31->unk03 * temp_r31->unk1C * temp_r31->unk28 / 2048383, 0, temp_r31->unk08, 0); + player->baseVol = param->vol & 127; + sndSeqVolume(player->baseVol * player->vol * player->fadeVol * player->pauseOnVol / (127*127*127), 0, player->seqId, 0); } } - if (arg1->flag & MSM_MUSPARAM_SPEED) { - sndSeqSpeed(temp_r31->unk08, (arg1->speed << 8) / 100); + if (param->flag & MSM_MUSPARAM_SPEED) { + sndSeqSpeed(player->seqId, (param->speed << 8) / 100); } return 0; } void msmMusPauseAll(BOOL pause, s32 speed) { s32 var_r27; - msmMusStruct00* temp_r26; + MUS_PLAYER* player; - for (var_r27 = 0; var_r27 < mus.unk02; var_r27++) { - temp_r26 = &mus.unk18[var_r27]; - if (temp_r26->unk04 != 0) { - temp_r26->unk05 = 1; - msmMusPauseSub(temp_r26, pause, speed); - temp_r26->unk05 = 0; + for (var_r27 = 0; var_r27 < mus.musChanMax; var_r27++) { + player = &mus.player[var_r27]; + if (player->status != MSM_MUS_DONE) { + player->busyF = TRUE; + msmMusPauseSub(player, pause, speed); + player->busyF = FALSE; } } } s32 msmMusPause(int musNo, BOOL pause, s32 speed) { - msmMusStruct00* temp_r31; + MUS_PLAYER *player; - if (musNo < 0 || musNo >= mus.unk02) { + if (musNo < 0 || musNo >= mus.musChanMax) { return MSM_ERR_OUTOFMUS; } - temp_r31 = &mus.unk18[musNo]; - temp_r31->unk05 = 1; - msmMusPauseSub(temp_r31, pause, speed); - temp_r31->unk05 = 0; + player = &mus.player[musNo]; + player->busyF = TRUE; + msmMusPauseSub(player, pause, speed); + player->busyF = FALSE; return 0; } void msmMusStopAll(BOOL checkGrp, s32 speed) { - s32 var_r28; - msmMusStruct00* temp_r27; + s32 i; + MUS_PLAYER *player; - for (var_r28 = 0; var_r28 < mus.unk02; var_r28++) { - temp_r27 = &mus.unk18[var_r28]; - if (temp_r27->unk04 == 0) { + for (i = 0; i < mus.musChanMax; i++) { + player = &mus.player[i]; + if (player->status == 0) { continue; } - temp_r27->unk05 = 1; + player->busyF = TRUE; switch (checkGrp) { case FALSE: - if (temp_r27->unk04 != 0) { - temp_r27->unk14 = speed / 15; - if (temp_r27->unk14 != 0) { - temp_r27->unk18 = temp_r27->unk14; - temp_r27->unk1C = 0x7F; + if (player->status != 0) { + player->fadeMaxTime = speed / 15; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - sndSeqStop(temp_r27->unk08); - temp_r27->unk04 = 1; + sndSeqStop(player->seqId); + player->status = 1; } } break; default: - if (msmSysCheckBaseGroup(mus.unk0C[temp_r27->unk00].unk00) == 0 && temp_r27->unk04 != 0) { - temp_r27->unk14 = speed / 15; - if (temp_r27->unk14 != 0) { - temp_r27->unk18 = temp_r27->unk14; - temp_r27->unk1C = 0x7F; + if (msmSysCheckBaseGroup(mus.musData[player->musId].sgid) == 0 && player->status != 0) { + player->fadeMaxTime = speed / 15; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - sndSeqStop(temp_r27->unk08); - temp_r27->unk04 = 1; + sndSeqStop(player->seqId); + player->status = 1; } } break; } - temp_r27->unk05 = 0; + player->busyF = FALSE; } } s32 msmMusStop(int musNo, s32 speed) { - msmMusStruct00* temp_r30; + MUS_PLAYER* player; - if (musNo < 0 || musNo >= mus.unk02) { + if (musNo < 0 || musNo >= mus.musChanMax) { return MSM_ERR_OUTOFMUS; } - temp_r30 = &mus.unk18[musNo]; - temp_r30->unk05 = 1; - if (temp_r30->unk04 != 0) { - temp_r30->unk14 = speed / 15; - if (temp_r30->unk14 != 0) { - temp_r30->unk18 = temp_r30->unk14; - temp_r30->unk1C = 0x7F; + player = &mus.player[musNo]; + player->busyF = TRUE; + if (player->status != 0) { + player->fadeMaxTime = speed / 15; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - sndSeqStop(temp_r30->unk08); - temp_r30->unk04 = 1; + sndSeqStop(player->seqId); + player->status = MSM_MUS_STOP; } } - temp_r30->unk05 = 0; + player->busyF = FALSE; return 0; } @@ -343,124 +320,124 @@ int msmMusPlay(int musId, MSM_MUSPARAM* musParam) { s32 var_r30; int var_r29; s32 temp_r3_3; - UnkGroupDataPtr* temp_r3_2; - msmMusStruct01* temp_r28; - msmMusStruct00* temp_r27; + MSM_GRP_HEAD* temp_r3_2; + MSM_MUS* temp_r28; + MUS_PLAYER* temp_r27; DVDFileInfo sp10; - if (musId < 0 || musId >= mus.unk00) { + if (musId < 0 || musId >= mus.musMax) { return MSM_ERR_INVALIDID; } - temp_r28 = &mus.unk0C[musId]; - if (temp_r28->unk00 == 0xFFFF) { + temp_r28 = &mus.musData[musId]; + if (temp_r28->sgid == 0xFFFF) { return MSM_ERR_REMOVEDID; } - if (msmSysCheckLoadGroupID(temp_r28->unk00) == 0) { + if (msmSysCheckLoadGroupID(temp_r28->sgid) == 0) { return MSM_ERR_GRP_NOTLOADED; } var_r30 = (musParam != NULL) ? musParam->flag : 0; var_r29 = (var_r30 & MSM_MUSPARAM_CHAN) ? musParam->chan : 0; - if (var_r29 < 0 || var_r29 >= mus.unk02) { + if (var_r29 < 0 || var_r29 >= mus.musChanMax) { return MSM_ERR_OUTOFMUS; } - temp_r27 = &mus.unk18[var_r29]; - if (temp_r27->unk04 != 0) { - sndSeqStop(temp_r27->unk08); + temp_r27 = &mus.player[var_r29]; + if (temp_r27->status != 0) { + sndSeqStop(temp_r27->seqId); } - if (temp_r28->unk0C < 0) { - if (temp_r27->unk00 != musId) { - if (msmFioOpen(mus.unk08, &sp10) != 1) { + if (temp_r28->songGrp < 0) { + if (temp_r27->musId != musId) { + if (msmFioOpen(mus.msmEntryNum, &sp10) != 1) { return MSM_ERR_OPENFAIL; } - if (msmFioRead(&sp10, temp_r27->unk0C, temp_r28->unk08, temp_r28->unk04 + mus.unk10) < 0) { + if (msmFioRead(&sp10, temp_r27->songBuf, temp_r28->songSize, temp_r28->songOfs + mus.dummyMusOfs) < 0) { msmFioClose(&sp10); return MSM_ERR_READFAIL; } msmFioClose(&sp10); - temp_r27->unk10 = temp_r27->unk0C; + temp_r27->arrfile = temp_r27->songBuf; } } else { - temp_r3_2 = msmSysGetGroupDataPtr(temp_r28->unk0C); + temp_r3_2 = msmSysGetGroupDataPtr(temp_r28->songGrp); if (temp_r3_2 == NULL) { return MSM_ERR_MUSGRP_NOTLOADED; } - temp_r27->unk10 = (void*) ((u32) temp_r3_2 + temp_r3_2->unk0C + temp_r28->unk04); + temp_r27->arrfile = (void*) ((u32) temp_r3_2 + temp_r3_2->sngOfs + temp_r28->songOfs); } - temp_r27->unk05 = 1; - temp_r27->unk03 = temp_r28->unk0D; - temp_r27->unk2C = 0; - temp_r27->unk20 = 0; - temp_r27->unk14 = 0; - temp_r27->unk28 = 0x7F; - temp_r27->unk1C = 0x7F; - temp_r27->unk38.flags = 4; - temp_r27->unk38.volume.time = 0; - temp_r27->unk02 = (var_r30 & MSM_MUSPARAM_VOL) ? musParam->vol : 0x7F; - temp_r27->unk38.volume.target = temp_r27->unk03 * temp_r27->unk1C * temp_r27->unk02 / 16129; + temp_r27->busyF = 1; + temp_r27->vol = temp_r28->vol; + temp_r27->pauseOffMaxTime = 0; + temp_r27->pauseOnMaxTime = 0; + temp_r27->fadeMaxTime = 0; + temp_r27->pauseOnVol = 127; + temp_r27->fadeVol = 127; + temp_r27->playPara.flags = 4; + temp_r27->playPara.volume.time = 0; + temp_r27->baseVol = (var_r30 & MSM_MUSPARAM_VOL) ? musParam->vol : 127; + temp_r27->playPara.volume.target = temp_r27->vol * temp_r27->fadeVol * temp_r27->baseVol / 16129; if (var_r30 & MSM_MUSPARAM_PAUSE) { - temp_r27->unk38.flags |= 0x10; + temp_r27->playPara.flags |= 0x10; } if (var_r30 & MSM_MUSPARAM_SPEED) { - temp_r27->unk38.flags |= 2; - temp_r27->unk38.speed = musParam->speed * 256 / 100; + temp_r27->playPara.flags |= 2; + temp_r27->playPara.speed = musParam->speed * 256 / 100; } if (var_r30 & MSM_MUSPARAM_FADESPEED) { - temp_r27->unk14 = -(musParam->fadeSpeed / 15); - if (temp_r27->unk14 != 0) { - temp_r27->unk18 = 0; - temp_r27->unk1C = 0; - temp_r27->unk38.volume.target = 0; + temp_r27->fadeMaxTime = -(musParam->fadeSpeed / 15); + if (temp_r27->fadeMaxTime != 0) { + temp_r27->fadeTime = 0; + temp_r27->fadeVol = 0; + temp_r27->playPara.volume.target = 0; } } - temp_r3_3 = sndSeqPlayEx(temp_r28->unk00, temp_r28->unk02, temp_r27->unk10, &temp_r27->unk38, 0); + temp_r3_3 = sndSeqPlay(temp_r28->sgid, temp_r28->sid, temp_r27->arrfile, &temp_r27->playPara); if (temp_r3_3 == SND_ID_ERROR) { - temp_r27->unk05 = 0; + temp_r27->busyF = 0; return MSM_ERR_PLAYFAIL; } - temp_r27->unk08 = temp_r3_3; - temp_r27->unk00 = musId; - temp_r27->unk04 = (temp_r27->unk38.flags & 0x10) ? 3 : 2; - temp_r27->unk05 = 0; + temp_r27->seqId = temp_r3_3; + temp_r27->musId = musId; + temp_r27->status = (temp_r27->playPara.flags & 0x10) ? 3 : 2; + temp_r27->busyF = 0; return var_r29; } -s32 msmMusInit(sysData* arg0, DVDFileInfo* arg1) { +s32 msmMusInit(MSM_SYS* arg0, DVDFileInfo* arg1) { s32 temp_r4; s32 var_r8; - mus.unk00 = 0; - mus.unk02 = 0; - mus.unk04 = 0; - mus.unk03 = 0; - if (arg0->unk10->unk4 == 0) { + mus.musMax = 0; + mus.musChanMax = 0; + mus.numPlay = 0; + mus.baseGrpNumPlay = 0; + if (arg0->info->musMax == 0) { return 0; } - temp_r4 = arg0->unkC->unk2C; + temp_r4 = arg0->header->musSize; if (temp_r4 == 0) { return 0; } - if ((mus.unk0C = msmMemAlloc(temp_r4)) == NULL) { + if ((mus.musData = msmMemAlloc(temp_r4)) == NULL) { return MSM_ERR_OUTOFMEM; } - if (msmFioRead(arg1, mus.unk0C, arg0->unkC->unk2C, arg0->unkC->unk28) < 0) { + if (msmFioRead(arg1, mus.musData, arg0->header->musSize, arg0->header->musOfs) < 0) { return MSM_ERR_READFAIL; } - temp_r4 = arg0->unk10->unk20; + temp_r4 = arg0->info->dummyMusSize; if (temp_r4 != 0) { - if ((mus.unk14 = msmMemAlloc(temp_r4 * arg0->unk10->unk8)) == NULL) { + if ((mus.musBuf = msmMemAlloc(temp_r4 * arg0->info->musChanMax)) == NULL) { return MSM_ERR_OUTOFMEM; } } else { - mus.unk14 = NULL; + mus.musBuf = NULL; } - mus.unk00 = arg0->unk10->unk4; - mus.unk02 = arg0->unk10->unk8; - mus.unk10 = arg0->unkC->unk48; - mus.unk08 = arg0->unk0; - for (var_r8 = 0; var_r8 < mus.unk02; var_r8++) { - mus.unk18[var_r8].unk0C = (void*) ((u32) mus.unk14 + arg0->unk10->unk20 * var_r8); - mus.unk18[var_r8].unk00 = -1; - mus.unk18[var_r8].unk05 = 0; + mus.musMax = arg0->info->musMax; + mus.musChanMax = arg0->info->musChanMax; + mus.dummyMusOfs = arg0->header->dummyMusOfs; + mus.msmEntryNum = arg0->msmEntryNum; + for (var_r8 = 0; var_r8 < mus.musChanMax; var_r8++) { + mus.player[var_r8].songBuf = (void*) ((u32) mus.musBuf + arg0->info->dummyMusSize * var_r8); + mus.player[var_r8].musId = -1; + mus.player[var_r8].busyF = 0; } return 0; } diff --git a/src/msm/msmse.c b/src/msm/msmse.c index 1d6481ce..cbacf34c 100755 --- a/src/msm/msmse.c +++ b/src/msm/msmse.c @@ -2,641 +2,637 @@ #include "msm/msmfio.h" #include "msm/msmmem.h" -typedef struct { - /* 0x00 */ SND_VOICEID unk00; - /* 0x04 */ s32 unk04; - /* 0x08 */ s16 unk08; - /* 0x0A */ s8 unk0A; - /* 0x0B */ s8 unk0B; - /* 0x0C */ s8 unk0C; - /* 0x0D */ s8 unk0D; - /* 0x0E */ s16 unk0E; - /* 0x10 */ s8 unk10; - /* 0x11 */ s8 unk11; - /* 0x12 */ s8 unk12; - /* 0x13 */ u8 unk13; - /* 0x14 */ SND_PARAMETER_INFO unk14; - /* 0x1C */ SND_PARAMETER unk1C[5]; - /* 0x30 */ s8 unk30; - /* 0x31 */ s8 unk31; - /* 0x32 */ s16 unk32; - /* 0x34 */ volatile s32 unk34; - /* 0x38 */ s32 unk38; - /* 0x3C */ s8 unk3C; - /* 0x3D */ char unk3D[3]; - /* 0x40 */ volatile s32 unk40; - /* 0x44 */ s32 unk44; - /* 0x48 */ s8 unk48; - /* 0x49 */ char unk49[3]; - /* 0x4C */ SND_EMITTER unk4C; - /* 0x9C */ SND_FVECTOR unk9C; - /* 0xA8 */ SND_FVECTOR unkA8; - /* 0xB4 */ s8 unkB4; - /* 0xB5 */ char unkB5[3]; -} msmSeStruct00; // Size 0xB8 +#define SE_PLAYER_EMIT (1 << 0) -typedef struct { - /* 0x00 */ s32 unk00; - /* 0x04 */ s8 unk04; - /* 0x05 */ s8 unk05; - /* 0x06 */ s8 unk06; - /* 0x07 */ char unk07[1]; - /* 0x08 */ s32 unk08; - /* 0x0C */ MSMSE* unk0C; - /* 0x10 */ msmSeStruct00* unk10; - /* 0x14 */ SND_LISTENER unk14; - /* 0xA4 */ SND_FVECTOR unkA4; - /* 0xB0 */ SND_FVECTOR unkB0; - /* 0xBC */ SND_FVECTOR unkBC; - /* 0xC8 */ SND_FVECTOR unkC8; - /* 0xD4 */ float unkD4; - /* 0xD8 */ u16 unkD8; - /* 0xDA */ u16 unkDA; -} msmSeStruct02; // Size 0xDC +typedef struct SePlayer_s { + SND_VOICEID vid; + s32 no; + s16 seId; + s8 status; + s8 busyF; + s8 vol; + s8 pan; + s16 pitch; + s8 span; + s8 auxAVol; + s8 auxBVol; + u8 flag; + SND_PARAMETER_INFO paramInfo; + SND_PARAMETER param[5]; + s8 baseVol; + s8 basePan; + s16 basePitch; + volatile s32 fadeMaxTime; + s32 fadeTime; + s8 fadeVol; + volatile s32 pauseMaxTime; + s32 pauseTime; + s8 pauseVol; + SND_EMITTER emitter; + SND_FVECTOR emiPos; + SND_FVECTOR emiDir; + s8 emitterF; +} SE_PLAYER; -msmSeStruct02 se; +static struct { + s32 seMax; + s8 sfx; + s8 baseGrpNumPlay; + s8 numPlay; + s32 no; + MSM_SE *seData; + SE_PLAYER *player; + SND_LISTENER listener; + SND_FVECTOR listenerPos; + SND_FVECTOR listenerDir; + SND_FVECTOR listenerHeading; + SND_FVECTOR listenerUp; + float sndDist; + u16 groupId; + u16 listenerF; +} se; -static void msmSeFade(msmSeStruct00* arg0) { - u8 temp_r3; +static void msmSeFade(SE_PLAYER *player) { + u8 vol; - if (arg0->unk0A == 3) { + if (player->status == MSM_SE_PAUSEOUT) { return; } - if (arg0->unk34 > 0) { - if (--arg0->unk38 == 0) { - arg0->unk34 = 0; - arg0->unk34 = 0; - if (arg0->unk34 != 0) { - arg0->unk38 = arg0->unk34; - arg0->unk3C = 0x7F; + if (player->fadeMaxTime > 0) { + if (--player->fadeTime == 0) { + player->fadeMaxTime = 0; + player->fadeMaxTime = 0; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - arg0->unk0A = 1; - if ((arg0->unk13 & 1) && arg0->unkB4 == 1) { - sndRemoveEmitter(&arg0->unk4C); + player->status = 1; + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == TRUE) { + sndRemoveEmitter(&player->emitter); } else { - sndFXKeyOff(arg0->unk00); + sndFXKeyOff(player->vid); } } } else { - arg0->unk3C = arg0->unk38 * 0x7F / arg0->unk34; - temp_r3 = arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383; - if ((arg0->unk13 & 1) && arg0->unkB4 == 1) { - arg0->unkA8.x = arg0->unkA8.y = arg0->unkA8.z = 0.0f; - sndUpdateEmitter(&arg0->unk4C, &arg0->unk9C, &arg0->unkA8, temp_r3, NULL); + player->fadeVol = player->fadeTime * 127 / player->fadeMaxTime; + vol = player->vol * player->baseVol * player->fadeVol * player->pauseVol / (127*127*127); + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == TRUE) { + player->emiDir.x = player->emiDir.y = player->emiDir.z = 0.0f; + sndUpdateEmitter(&player->emitter, &player->emiPos, &player->emiDir, vol, NULL); } else { - sndFXVolume(arg0->unk00, temp_r3); + sndFXVolume(player->vid, vol); } } - } else if (arg0->unk34 < 0) { - if (++arg0->unk38 >= -arg0->unk34) { - arg0->unk34 = 0; - arg0->unk3C = 0x7F; + } else if (player->fadeMaxTime < 0) { + if (++player->fadeTime >= -player->fadeMaxTime) { + player->fadeMaxTime = 0; + player->fadeVol = 127; } else { - arg0->unk3C = arg0->unk38 * 0x7F / -arg0->unk34; + player->fadeVol = player->fadeTime * 127 / -player->fadeMaxTime; } - temp_r3 = arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383; - if ((arg0->unk13 & 1) && arg0->unkB4 == 1) { - arg0->unkA8.x = arg0->unkA8.y = arg0->unkA8.z = 0.0f; - sndUpdateEmitter(&arg0->unk4C, &arg0->unk9C, &arg0->unkA8, temp_r3, NULL); + vol = player->vol * player->baseVol * player->fadeVol * player->pauseVol / (127*127*127); + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == 1) { + player->emiDir.x = player->emiDir.y = player->emiDir.z = 0.0f; + sndUpdateEmitter(&player->emitter, &player->emiPos, &player->emiDir, vol, NULL); } else { - sndFXVolume(arg0->unk00, temp_r3); + sndFXVolume(player->vid, vol); } } } -static void msmSePauseSub(msmSeStruct00* arg0, BOOL pause, s32 speed) { - s32 temp_r3; +static void msmSePauseSub(SE_PLAYER* player, BOOL pause, s32 speed) { + s32 time; - temp_r3 = speed / 15; + time = speed / 15; if (pause) { - if (arg0->unk0A == 2) { - if (temp_r3 != 0) { - arg0->unk40 = arg0->unk44 = temp_r3; - arg0->unk48 = 0x7F; + if (player->status == MSM_SE_PAUSEIN) { + if (time != 0) { + player->pauseMaxTime = player->pauseTime = time; + player->pauseVol = 127; } else { - arg0->unk48 = 0; - sndFXVolume(arg0->unk00, arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383); + player->pauseVol = 0; + sndFXVolume(player->vid, player->vol * player->baseVol * player->fadeVol * player->pauseVol / (127*127*127)); } - arg0->unk0A = 3; + player->status = MSM_SE_PAUSEOUT; } } else { - if (arg0->unk0A == 3) { - if (temp_r3 != 0) { - if (arg0->unk40 != 0) { - arg0->unk40 = -temp_r3; + if (player->status == MSM_SE_PAUSEOUT) { + if (time != 0) { + if (player->pauseMaxTime != 0) { + player->pauseMaxTime = -time; } else { - arg0->unk40 = -temp_r3; - arg0->unk44 = 0; - arg0->unk48 = 0; + player->pauseMaxTime = -time; + player->pauseTime = 0; + player->pauseVol = 0; } } else { - arg0->unk48 = 0x7F; - sndFXVolume(arg0->unk00, arg0->unk0C * arg0->unk30 * arg0->unk3C * arg0->unk48 / 2048383); + player->pauseVol = 127; + sndFXVolume(player->vid, player->vol * player->baseVol * player->fadeVol * player->pauseVol / (127*127*127)); } - arg0->unk0A = 2; + player->status = MSM_SE_PAUSEIN; } } } -void msmSePeriodicProc(void) { - s32 var_r26; - msmSeStruct00* temp_r3; - u8 temp_r3_3; +static SE_PLAYER* msmSeSearchEntry(s32 seNo) { + SE_PLAYER *player; + s32 i; - se.unk05 = se.unk06 = 0; - for (var_r26 = 0; var_r26 < se.unk04; var_r26++) { - temp_r3 = &se.unk10[var_r26]; - if (temp_r3->unk0B != 0) { - continue; - } - switch (temp_r3->unk0A) { - case 1: - case 2: - if ((temp_r3->unk13 & 1) && temp_r3->unkB4 == 1) { - if (!sndCheckEmitter(&temp_r3->unk4C)) { - temp_r3->unk0A = 0; - } - } else { - if (sndFXCheck(temp_r3->unk00) == SND_ID_ERROR) { - temp_r3->unk0A = 0; - } - } - break; - } - if (temp_r3->unk0A == 0) { - continue; - } - if (msmSysCheckBaseGroup(se.unk0C[temp_r3->unk08].groupId) != 0) { - se.unk05++; - } else { - se.unk06++; - } - if (temp_r3->unk40 > 0) { - if (--temp_r3->unk44 == 0) { - temp_r3->unk40 = 0; - temp_r3->unk48 = 0; - } else { - temp_r3->unk48 = temp_r3->unk44 * 0x7F / temp_r3->unk40; - } - } else if (temp_r3->unk40 < 0) { - if (++temp_r3->unk44 >= -temp_r3->unk40) { - temp_r3->unk40 = 0; - temp_r3->unk48 = 0x7F; - } else { - temp_r3->unk48 = temp_r3->unk44 * 0x7F / -temp_r3->unk40; - } - } - temp_r3_3 = temp_r3->unk0C * temp_r3->unk30 * temp_r3->unk3C * temp_r3->unk48 / 2048383; - if ((temp_r3->unk13 & 1) && temp_r3->unkB4 == 1) { - temp_r3->unkA8.x = temp_r3->unkA8.y = temp_r3->unkA8.z = 0.0f; - sndUpdateEmitter(&temp_r3->unk4C, &temp_r3->unk9C, &temp_r3->unkA8, temp_r3_3, NULL); - } else { - sndFXVolume(temp_r3->unk00, temp_r3_3); - } - msmSeFade(temp_r3); - } -} - -MSMSE* msmSeGetIndexPtr(s32 arg0) { - if (arg0 < 0 || arg0 >= se.unk00) { - return NULL; - } - return &se.unk0C[arg0]; -} - -void msmSeDelListener(void) { - if (se.unkDA != 0) { - sndRemoveListener(&se.unk14); - se.unkDA = 0; - } -} - -s32 msmSeUpdataListener(Vec* pos, Vec* heading) { - if (se.unkDA == 0) { - return MSM_ERR_22; - } - se.unkB0.x = pos->x - se.unkA4.x; - se.unkB0.y = pos->y - se.unkA4.y; - se.unkB0.z = pos->z - se.unkA4.z; - se.unkA4.x = pos->x; - se.unkA4.y = pos->y; - se.unkA4.z = pos->z; - se.unkBC.x = heading->x; - se.unkBC.y = heading->y; - se.unkBC.z = heading->z; - if (!sndUpdateListener(&se.unk14, &se.unkA4, &se.unkB0, &se.unkBC, &se.unkC8, 0x7F, NULL)) { - return MSM_ERR_22; - } - return 0; -} - -s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_SELISTENER* listener) { - SND_FVECTOR* temp_b0; - SND_FVECTOR* temp_a4; - SND_FVECTOR* temp_c8; - SND_FVECTOR* temp_bc; - s32 var_r3; - float var_f4; - float var_f0; - float var_f0_2; - - temp_a4 = &se.unkA4; - temp_c8 = &se.unkC8; - temp_bc = &se.unkBC; - temp_b0 = &se.unkB0; - temp_a4->x = pos->x; - temp_a4->y = pos->y; - temp_a4->z = pos->z; - temp_c8->x = temp_c8->z = 0.0f; - temp_c8->y = 1.0f; - temp_bc->x = heading->x; - temp_bc->y = heading->y; - temp_bc->z = heading->z; - temp_b0->x = temp_b0->y = temp_b0->z = 0.0f; - se.unkD4 = sndDist; - var_r3 = (listener != NULL) ? listener->flag : 0; - var_f4 = (var_r3 & 1) ? listener->startDis : 0.0f; - var_f0 = (var_r3 & 2) ? listener->frontSurDis : (var_f4 + sndDist * 0.25f); - var_f0_2 = (var_r3 & 4) ? listener->backSurDis : (var_f4 + sndDist * 0.25f); - if ((s32) sndAddListenerEx(&se.unk14, temp_a4, temp_b0, temp_bc, temp_c8, - var_f0, var_f0_2, sndSpeed, -var_f4, 1, 0x7F, NULL) == FALSE) - { - se.unkDA = 0; - return MSM_ERR_22; - } - se.unkDA = 1; - return 0; -} - -s32 msmSeGetEntryID(s32 seId, int* seNo) { - msmSeStruct00* temp_r8; - s32 var_r9; - s32 var_r10; - - for (var_r9 = var_r10 = 0; var_r9 < se.unk04; var_r9++) { - temp_r8 = &se.unk10[var_r9]; - if (temp_r8->unk0A != 0 && temp_r8->unk08 == seId) { - if (seNo != NULL) { - seNo[var_r10] = temp_r8->unk04; - } - var_r10++; - } - } - return var_r10; -} - -s32 msmSeGetNumPlay(BOOL baseGrp) { - switch (baseGrp) { - case FALSE: - return se.unk06 + se.unk05; - default: - return se.unk06; - } -} - -static inline msmSeStruct00* msmSeGetStatus_inline(s32 seNo) { - msmSeStruct00* var_r4; - s32 var_ctr; - - for (var_ctr = 0; var_ctr < se.unk04; var_ctr++) { - var_r4 = &se.unk10[var_ctr]; - if (var_r4->unk0A != 0 && var_r4->unk04 == seNo) { - return var_r4; + for (i = 0; i < se.sfx; i++) { + player = &se.player[i]; + if (player->status != MSM_SE_DONE && player->no == seNo) { + return player; } } return NULL; } -s32 msmSeGetStatus(int seNo) { - msmSeStruct00* var_r4; +void msmSePeriodicProc(void) { + s32 i; + SE_PLAYER* player; + u8 vol; - var_r4 = msmSeGetStatus_inline(seNo); - if (var_r4 == NULL) { - return 0; + se.baseGrpNumPlay = se.numPlay = 0; + for (i = 0; i < se.sfx; i++) { + player = &se.player[i]; + if (player->busyF != 0) { + continue; + } + switch (player->status) { + case MSM_SE_PLAY: + case MSM_SE_PAUSEIN: + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == TRUE) { + if (!sndCheckEmitter(&player->emitter)) { + player->status = 0; + } + } else { + if (sndFXCheck(player->vid) == SND_ID_ERROR) { + player->status = 0; + } + } + break; + } + if (player->status == 0) { + continue; + } + if (msmSysCheckBaseGroup(se.seData[player->seId].gid) != 0) { + se.baseGrpNumPlay++; + } else { + se.numPlay++; + } + if (player->pauseMaxTime > 0) { + if (--player->pauseTime == 0) { + player->pauseMaxTime = 0; + player->pauseVol = 0; + } else { + player->pauseVol = player->pauseTime * 127 / player->pauseMaxTime; + } + } else if (player->pauseMaxTime < 0) { + if (++player->pauseTime >= -player->pauseMaxTime) { + player->pauseMaxTime = 0; + player->pauseVol = 127; + } else { + player->pauseVol = player->pauseTime * 127 / -player->pauseMaxTime; + } + } + vol = player->vol * player->baseVol * player->fadeVol * player->pauseVol / (127*127*127); + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == TRUE) { + player->emiDir.x = player->emiDir.y = player->emiDir.z = 0.0f; + sndUpdateEmitter(&player->emitter, &player->emiPos, &player->emiDir, vol, NULL); + } else { + sndFXVolume(player->vid, vol); + } + msmSeFade(player); } - return var_r4->unk0A; } -void msmSeSetMasterVolume(s32 arg0) { - sndMasterVolume(arg0 & 0x7F, 0, 0, 1); +MSM_SE* msmSeGetIndexPtr(s32 seId) { + if (seId < 0 || seId >= se.seMax) { + return NULL; + } + return &se.seData[seId]; +} + +void msmSeDelListener(void) { + if (se.listenerF != 0) { + sndRemoveListener(&se.listener); + se.listenerF = 0; + } +} + +s32 msmSeUpdataListener(Vec* pos, Vec* heading) { + if (se.listenerF == 0) { + return MSM_LISTENER_NO_UPDATA; + } + se.listenerDir.x = pos->x - se.listenerPos.x; + se.listenerDir.y = pos->y - se.listenerPos.y; + se.listenerDir.z = pos->z - se.listenerPos.z; + se.listenerPos.x = pos->x; + se.listenerPos.y = pos->y; + se.listenerPos.z = pos->z; + se.listenerHeading.x = heading->x; + se.listenerHeading.y = heading->y; + se.listenerHeading.z = heading->z; + if (!sndUpdateListener(&se.listener, &se.listenerPos, &se.listenerDir, &se.listenerHeading, &se.listenerUp, 127, NULL)) { + return MSM_LISTENER_NO_UPDATA; + } + return 0; +} + +s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_SELISTENER* listener) { + SND_FVECTOR* listenerDir; + SND_FVECTOR* listenerPos; + SND_FVECTOR* listenerUp; + SND_FVECTOR* listenerHeading; + s32 flag; + float startDis; + float frontSurDis; + float backSurDis; + + listenerPos = &se.listenerPos; + listenerUp = &se.listenerUp; + listenerHeading = &se.listenerHeading; + listenerDir = &se.listenerDir; + listenerPos->x = pos->x; + listenerPos->y = pos->y; + listenerPos->z = pos->z; + listenerUp->x = listenerUp->z = 0.0f; + listenerUp->y = 1.0f; + listenerHeading->x = heading->x; + listenerHeading->y = heading->y; + listenerHeading->z = heading->z; + listenerDir->x = listenerDir->y = listenerDir->z = 0.0f; + se.sndDist = sndDist; + flag = (listener != NULL) ? listener->flag : MSM_LISTENER_NONE; + startDis = (flag & MSM_LISTENER_STARTDIS) ? listener->startDis : 0.0f; + frontSurDis = (flag & MSM_LISTENER_FRONTSURDIS) ? listener->frontSurDis : (startDis + sndDist * 0.25f); + backSurDis = (flag & MSM_LISTENER_BACKSURDIS) ? listener->backSurDis : (startDis + sndDist * 0.25f); + if ((s32) sndAddListenerEx(&se.listener, listenerPos, listenerDir, listenerHeading, listenerUp, + frontSurDis, backSurDis, sndSpeed, -startDis, SND_EMITTER_CONTINOUS, 127, NULL) == FALSE) + { + se.listenerF = FALSE; + return MSM_LISTENER_NO_UPDATA; + } + se.listenerF = TRUE; + return 0; +} + +s32 msmSeGetEntryID(s32 seId, int* seNo) { + SE_PLAYER* player; + s32 i; + s32 num; + + for (i = num = 0; i < se.sfx; i++) { + player = &se.player[i]; + if (player->status != 0 && player->seId == seId) { + if (seNo != NULL) { + seNo[num] = player->no; + } + num++; + } + } + return num; +} + +s32 msmSeGetNumPlay(BOOL baseGrp) { + switch (baseGrp) { + case FALSE: + return se.numPlay + se.baseGrpNumPlay; + default: + return se.numPlay; + } +} + +s32 msmSeGetStatus(int seNo) { + SE_PLAYER* pan; + + pan = msmSeSearchEntry(seNo); + if (pan == NULL) { + return 0; + } + return pan->status; +} + +void msmSeSetMasterVolume(s32 vol) { + sndMasterVolume(vol & 127, 0, 0, 1); } s32 msmSeSetParam(int seNo, MSM_SEPARAM* param) { - msmSeStruct00* var_r31; - int temp_r3; - s32 var_r4; + SE_PLAYER* player; + int pan; + s32 pitch; - var_r31 = msmSeGetStatus_inline(seNo); - if (var_r31 == NULL) { - return MSM_ERR_6F; + player = msmSeSearchEntry(seNo); + if (player == NULL) { + return MSM_ERR_INVALIDSE; } if (param->flag & MSM_SEPARAM_VOL) { - var_r31->unk0B = 1; - var_r31->unk0C = param->vol; - if (!(var_r31->unk13 & 1) || var_r31->unkB4 != 1) { - sndFXVolume(var_r31->unk00, var_r31->unk0C * var_r31->unk30 * var_r31->unk3C * var_r31->unk48 / 2048383); + player->busyF = TRUE; + player->vol = param->vol; + if (!(player->flag & SE_PLAYER_EMIT) || player->emitterF != TRUE) { + sndFXVolume(player->vid, player->vol * player->baseVol * player->fadeVol * player->pauseVol / (127*127*127)); } - var_r31->unk0B = 0; + player->busyF = FALSE; } - if (!(var_r31->unk13 & 1)) { + if (!(player->flag & SE_PLAYER_EMIT)) { if (param->flag & MSM_SEPARAM_PAN) { - var_r31->unk0D = param->pan; - temp_r3 = var_r31->unk0D + var_r31->unk31 - 0x40; - if (temp_r3 < 0) { - temp_r3 = 0; + player->pan = param->pan; + pan = player->pan + player->basePan - 64; + if (pan < 0) { + pan = 0; } - if (temp_r3 > 0x7F) { - temp_r3 = 0x7F; + if (pan > 127) { + pan = 127; } - sndFXPanning(var_r31->unk00, temp_r3); + sndFXPanning(player->vid, pan); } if (param->flag & MSM_SEPARAM_PITCH) { - var_r31->unk0E = param->pitch; - var_r4 = var_r31->unk0E + var_r31->unk32 + 0x2000; - if (var_r4 < 0) { - var_r4 = 0; + player->pitch = param->pitch; + pitch = player->pitch + player->basePitch + 8192; + if (pitch < 0) { + pitch = 0; } - if (var_r4 > 0x3FFF) { - var_r4 = 0x3FFF; + if (pitch > 16383) { + pitch = 16383; } - sndFXPitchBend(var_r31->unk00, var_r4); + sndFXPitchBend(player->vid, pitch); } if (param->flag & MSM_SEPARAM_SPAN) { - var_r31->unk10 = param->span; - sndFXSurroundPanning(var_r31->unk00, var_r31->unk10); + player->span = param->span; + sndFXSurroundPanning(player->vid, player->span); } - } else if (var_r31->unkB4 == 1) { - var_r31->unk00 = sndEmitterVoiceID(&var_r31->unk4C); + } else if (player->emitterF == TRUE) { + player->vid = sndEmitterVoiceID(&player->emitter); if (param->flag & MSM_SEPARAM_POS) { - var_r31->unk0B = 1; - var_r31->unkA8.x = param->pos.x - var_r31->unk9C.x; - var_r31->unkA8.y = param->pos.y - var_r31->unk9C.y; - var_r31->unkA8.z = param->pos.z - var_r31->unk9C.z; - var_r31->unk9C.x = param->pos.x; - var_r31->unk9C.y = param->pos.y; - var_r31->unk9C.z = param->pos.z; - sndUpdateEmitter(&var_r31->unk4C, &var_r31->unk9C, &var_r31->unkA8, var_r31->unk0C * var_r31->unk30 * var_r31->unk3C * var_r31->unk48 / 2048383, NULL); - var_r31->unk0B = 0; + player->busyF = TRUE; + player->emiDir.x = param->pos.x - player->emiPos.x; + player->emiDir.y = param->pos.y - player->emiPos.y; + player->emiDir.z = param->pos.z - player->emiPos.z; + player->emiPos.x = param->pos.x; + player->emiPos.y = param->pos.y; + player->emiPos.z = param->pos.z; + sndUpdateEmitter(&player->emitter, &player->emiPos, &player->emiDir, player->vol * player->baseVol * player->fadeVol * player->pauseVol / (127*127*127), NULL); + player->busyF = FALSE; } } if (param->flag & MSM_SEPARAM_AUXVOLA) { - var_r31->unk11 = param->auxAVol; - sndFXReverb(var_r31->unk00, var_r31->unk11); + player->auxAVol = param->auxAVol; + sndFXReverb(player->vid, player->auxAVol); } if (param->flag & MSM_SEPARAM_AUXVOLB) { - var_r31->unk12 = param->auxBVol; - sndFXChorus(var_r31->unk00, var_r31->unk12); + player->auxBVol = param->auxBVol; + sndFXChorus(player->vid, player->auxBVol); } if (param->flag & MSM_SEPARAM_PAD) { - sndSendMessage(var_r31->unk00, param->pad); + sndSendMessage(player->vid, param->pad); } return 0; } void msmSePauseAll(BOOL pause, s32 speed) { - s32 var_r27; - msmSeStruct00* temp_r26; + s32 i; + SE_PLAYER* player; - for (var_r27 = 0; var_r27 < se.unk04; var_r27++) { - temp_r26 = &se.unk10[var_r27]; - temp_r26->unk0B = 1; - msmSePauseSub(temp_r26, pause, speed); - temp_r26->unk0B = 0; + for (i = 0; i < se.sfx; i++) { + player = &se.player[i]; + player->busyF = TRUE; + msmSePauseSub(player, pause, speed); + player->busyF = FALSE; } } void msmSeStopAll(BOOL checkGrp, s32 speed) { - msmSeStruct00* temp_r28; - s32 var_r27; + SE_PLAYER* player; + s32 i; - for (var_r27 = 0; var_r27 < se.unk04; var_r27++) { - temp_r28 = &se.unk10[var_r27]; - if (temp_r28->unk0A == 0) { + for (i = 0; i < se.sfx; i++) { + player = &se.player[i]; + if (player->status == MSM_MUS_DONE) { continue; } - temp_r28->unk0B = 1; + player->busyF = TRUE; switch (checkGrp) { case FALSE: - temp_r28->unk34 = speed / 15; - if (temp_r28->unk34 != 0) { - temp_r28->unk38 = temp_r28->unk34; - temp_r28->unk3C = 0x7F; + player->fadeMaxTime = speed / 15; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - temp_r28->unk0A = 1; - if ((temp_r28->unk13 & 1) && temp_r28->unkB4 == 1) { - sndRemoveEmitter(&temp_r28->unk4C); + player->status = 1; + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == TRUE) { + sndRemoveEmitter(&player->emitter); } else { - sndFXKeyOff(temp_r28->unk00); + sndFXKeyOff(player->vid); } } break; default: - if (msmSysCheckBaseGroup(se.unk0C[temp_r28->unk08].groupId) == 0) { - temp_r28->unk34 = speed / 15; - if (temp_r28->unk34 != 0) { - temp_r28->unk38 = temp_r28->unk34; - temp_r28->unk3C = 0x7F; + if (msmSysCheckBaseGroup(se.seData[player->seId].gid) == 0) { + player->fadeMaxTime = speed / 15; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - temp_r28->unk0A = 1; - if ((temp_r28->unk13 & 1) && temp_r28->unkB4 == 1) { - sndRemoveEmitter(&temp_r28->unk4C); + player->status = 1; + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == TRUE) { + sndRemoveEmitter(&player->emitter); } else { - sndFXKeyOff(temp_r28->unk00); + sndFXKeyOff(player->vid); } } } break; } - temp_r28->unk0B = 0; + player->busyF = FALSE; } } s32 msmSeStop(int seNo, s32 speed) { - msmSeStruct00* var_r31; + SE_PLAYER* player; - var_r31 = msmSeGetStatus_inline(seNo); - if (var_r31 == NULL) { - return MSM_ERR_6F; + player = msmSeSearchEntry(seNo); + if (player == NULL) { + return MSM_ERR_INVALIDSE; } - var_r31->unk0B = 1; - var_r31->unk34 = speed / 15; - if (var_r31->unk34 != 0) { - var_r31->unk38 = var_r31->unk34; - var_r31->unk3C = 0x7F; + player->busyF = TRUE; + player->fadeMaxTime = speed / 15; + if (player->fadeMaxTime != 0) { + player->fadeTime = player->fadeMaxTime; + player->fadeVol = 127; } else { - var_r31->unk0A = 1; - if ((var_r31->unk13 & 1) && var_r31->unkB4 == 1) { - sndRemoveEmitter(&var_r31->unk4C); + player->status = MSM_MUS_STOP; + if ((player->flag & SE_PLAYER_EMIT) && player->emitterF == TRUE) { + sndRemoveEmitter(&player->emitter); } else { - sndFXKeyOff(var_r31->unk00); + sndFXKeyOff(player->vid); } } - var_r31->unk0B = 0; + player->busyF = FALSE; return 0; } -static inline BOOL msmSeInline00(msmSeStruct00* arg0, MSM_SEPARAM* param) { - BOOL var_r0 = FALSE; +static inline BOOL msmSeUpdateBaseParam(SE_PLAYER* player, MSM_SEPARAM* param) { + BOOL listenerF = FALSE; if (param != NULL) { if (param->flag & MSM_SEPARAM_VOL) { - arg0->unk0C = param->vol; + player->vol = param->vol; } if (param->flag & MSM_SEPARAM_PAN) { - arg0->unk0D = param->pan; + player->pan = param->pan; } if (param->flag & MSM_SEPARAM_PITCH) { - arg0->unk0E = param->pitch; + player->pitch = param->pitch; } if (param->flag & MSM_SEPARAM_SPAN) { - arg0->unk10 = param->span; + player->span = param->span; } if (param->flag & MSM_SEPARAM_AUXVOLA) { - arg0->unk11 = param->auxAVol; + player->auxAVol = param->auxAVol; } if (param->flag & MSM_SEPARAM_AUXVOLB) { - arg0->unk12 = param->auxBVol; + player->auxBVol = param->auxBVol; } - if ((param->flag & MSM_SEPARAM_POS) && se.unkDA != 0) { - var_r0 = TRUE; + if ((param->flag & MSM_SEPARAM_POS) && se.listenerF != 0) { + listenerF = TRUE; } } - arg0->unk14.paraArray = arg0->unk1C; - return var_r0; + player->paramInfo.paraArray = player->param; + return listenerF; } int msmSePlay(int seId, MSM_SEPARAM* param) { - msmSeStruct00* var_r30; - SND_EMITTER* var_r29; - MSMSE* temp_r9; - int var_r3_2; - s32 var_r4; - s32 var_r6; - s32 var_r6_2; + SE_PLAYER* player; + SND_EMITTER* emitter; + MSM_SE* seData; + int pitch; + s32 pan; + s32 i; + s32 emiFlag; - if (seId < 0 || seId >= se.unk00) { + if (seId < 0 || seId >= se.seMax) { return MSM_ERR_INVALIDID; } - temp_r9 = &se.unk0C[seId]; - if (temp_r9->groupId == 0xFFFF) { + seData = &se.seData[seId]; + if (seData->gid == 0xFFFF) { return MSM_ERR_REMOVEDID; } - for (var_r6 = 0; var_r6 < se.unk04; var_r6++) { - var_r30 = &se.unk10[var_r6]; - if (var_r30->unk0A == 0) { + for (i = 0; i < se.sfx; i++) { + player = &se.player[i]; + if (player->status == 0) { break; } } - if (var_r6 == se.unk04) { - return MSM_ERR_6E; + if (i == se.sfx) { + return MSM_ERR_CHANLIMIT; } - var_r30->unk30 = temp_r9->vol; - var_r30->unk31 = temp_r9->pan; - var_r30->unk32 = temp_r9->pitchBend; - var_r30->unk0C = 0x7F; - var_r30->unk0D = 0x40; - var_r30->unk10 = temp_r9->span; - var_r30->unk0E = 0; - var_r30->unk11 = temp_r9->reverb; - var_r30->unk12 = temp_r9->chorus; - var_r30->unk40 = 0; - var_r30->unk34 = 0; - var_r30->unk48 = 0x7F; - var_r30->unk3C = 0x7F; - var_r30->unkB4 = 0; - if (msmSeInline00(var_r30, param)) { - var_r30->unk9C.x = param->pos.x; - var_r30->unk9C.y = param->pos.y; - var_r30->unk9C.z = param->pos.z; - var_r30->unk1C[0].ctrl = SND_MIDICTRL_REVERB; - var_r30->unk1C[0].paraData.value7 = var_r30->unk11; - var_r30->unk1C[1].ctrl = SND_MIDICTRL_CHORUS; - var_r30->unk1C[1].paraData.value7 = var_r30->unk12; - var_r30->unk14.numPara = 2; - var_r30->unkA8.x = var_r30->unkA8.y = var_r30->unkA8.z = 0.0f; - if (temp_r9->doppler == 1) { - var_r29 = &var_r30->unk4C; - var_r6_2 = 9; + player->baseVol = seData->vol; + player->basePan = seData->pan; + player->basePitch = seData->pitchBend; + player->vol = 127; + player->pan = 64; + player->span = seData->span; + player->pitch = 0; + player->auxAVol = seData->reverb; + player->auxBVol = seData->chorus; + player->pauseMaxTime = 0; + player->fadeMaxTime = 0; + player->pauseVol = 127; + player->fadeVol = 127; + player->emitterF = 0; + if (msmSeUpdateBaseParam(player, param)) { + player->emiPos.x = param->pos.x; + player->emiPos.y = param->pos.y; + player->emiPos.z = param->pos.z; + player->param[0].ctrl = SND_MIDICTRL_REVERB; + player->param[0].paraData.value7 = player->auxAVol; + player->param[1].ctrl = SND_MIDICTRL_CHORUS; + player->param[1].paraData.value7 = player->auxBVol; + player->paramInfo.numPara = 2; + player->emiDir.x = player->emiDir.y = player->emiDir.z = 0.0f; + if (seData->emitterF == TRUE) { + emitter = &player->emitter; + emiFlag = SND_EMITTER_DOPPLERFX|SND_EMITTER_CONTINOUS; } else { - var_r29 = NULL; - var_r6_2 = 8; + emitter = NULL; + emiFlag = SND_EMITTER_DOPPLERFX; } - var_r30->unkB4 = temp_r9->doppler; - var_r30->unk00 = sndAddEmitterParaEx(var_r29, &var_r30->unk9C, &var_r30->unkA8, se.unkD4, temp_r9->comp / 127.0f, var_r6_2, temp_r9->fxId, se.unkD8++, var_r30->unk0C * var_r30->unk30 / 127, 0, NULL, &var_r30->unk14); - if (var_r29 != NULL) { - if (!sndCheckEmitter(var_r29)) { + player->emitterF = seData->emitterF; + player->vid = sndAddEmitterParaEx(emitter, &player->emiPos, &player->emiDir, se.sndDist, seData->emiComp / 127.0f, emiFlag, seData->fxId, se.groupId++, player->vol * player->baseVol / 127, 0, NULL, &player->paramInfo); + if (emitter != NULL) { + if (!sndCheckEmitter(emitter)) { return MSM_ERR_PLAYFAIL; } } else { - if (var_r30->unk00 == -1) { + if (player->vid == -1) { return MSM_ERR_PLAYFAIL; } } - var_r30->unk13 |= 1; + player->flag |= 1; } else { - var_r30->unk1C[0].ctrl = SND_MIDICTRL_VOLUME; - var_r30->unk1C[0].paraData.value14 = (var_r30->unk0C * var_r30->unk30 / 127) * 0x81; - var_r4 = var_r30->unk0D + var_r30->unk31 - 0x40; - if (var_r4 < 0) { - var_r4 = 0; + player->param[0].ctrl = SND_MIDICTRL_VOLUME; + player->param[0].paraData.value14 = (player->vol * player->baseVol / 127) * 129; + pan = player->pan + player->basePan - 64; + if (pan < 0) { + pan = 0; } - if (var_r4 > 0x7F) { - var_r4 = 0x7F; + if (pan > 127) { + pan = 127; } - var_r30->unk1C[1].ctrl = SND_MIDICTRL_PANNING; - var_r30->unk1C[1].paraData.value14 = var_r4 * 0x81; - var_r30->unk1C[2].ctrl = SND_MIDICTRL_REVERB; - var_r30->unk1C[2].paraData.value7 = var_r30->unk11; - var_r30->unk1C[3].ctrl = SND_MIDICTRL_CHORUS; - var_r30->unk1C[3].paraData.value7 = var_r30->unk12; - var_r3_2 = var_r30->unk0E + var_r30->unk32 + 0x2000; - if (var_r3_2 > 0x3FFF) { - var_r3_2 = 0x3FFF; - } else if (var_r3_2 < 0) { - var_r3_2 = 0; + player->param[1].ctrl = SND_MIDICTRL_PANNING; + player->param[1].paraData.value14 = pan * 129; + player->param[2].ctrl = SND_MIDICTRL_REVERB; + player->param[2].paraData.value7 = player->auxAVol; + player->param[3].ctrl = SND_MIDICTRL_CHORUS; + player->param[3].paraData.value7 = player->auxBVol; + pitch = player->pitch + player->basePitch + 8192; + if (pitch > 16383) { + pitch = 16383; + } else if (pitch < 0) { + pitch = 0; } - var_r30->unk1C[4].ctrl = SND_MIDICTRL_PITCHBEND; - var_r30->unk1C[4].paraData.value14 = var_r3_2; - var_r30->unk14.numPara = 5; - var_r30->unk00 = sndFXStartParaInfo(temp_r9->fxId, 0xFF, 0xFF, 0, &var_r30->unk14); - if (var_r30->unk00 == -1) { + player->param[4].ctrl = SND_MIDICTRL_PITCHBEND; + player->param[4].paraData.value14 = pitch; + player->paramInfo.numPara = 5; + player->vid = sndFXStartParaInfo(seData->fxId, 0xFF, 0xFF, 0, &player->paramInfo); + if (player->vid == -1) { return MSM_ERR_PLAYFAIL; } - sndFXSurroundPanning(var_r30->unk00, var_r30->unk10); - var_r30->unk13 &= ~1; + sndFXSurroundPanning(player->vid, player->span); + player->flag &= ~1; } - var_r30->unk0B = 1; - var_r30->unk08 = seId; - var_r30->unk04 = se.unk08++; - var_r30->unk0A = 2; - var_r30->unk0B = 0; - return var_r30->unk04; + player->busyF = 1; + player->seId = seId; + player->no = se.no++; + player->status = 2; + player->busyF = 0; + return player->no; } -s32 msmSeInit(sysData* arg0, DVDFileInfo* arg1) { - s32 temp_r29; +s32 msmSeInit(MSM_SYS* arg0, DVDFileInfo* arg1) { + s32 playerSize; - se.unk04 = 0; - se.unk00 = 0; - se.unk05 = 0; - se.unk06 = 0; - se.unkDA = 0; - if (arg0->unk10->unk6 == 0) { + se.sfx = 0; + se.seMax = 0; + se.baseGrpNumPlay = 0; + se.numPlay = 0; + se.listenerF = 0; + if (arg0->info->seMax == 0) { return 0; } - if ((se.unk0C = msmMemAlloc(arg0->unkC->unk34)) == NULL) { + if ((se.seData = msmMemAlloc(arg0->header->seSize)) == NULL) { return MSM_ERR_OUTOFMEM; } - if (msmFioRead(arg1, se.unk0C, arg0->unkC->unk34, arg0->unkC->unk30) < 0) { + if (msmFioRead(arg1, se.seData, arg0->header->seSize, arg0->header->seOfs) < 0) { return MSM_ERR_READFAIL; } - temp_r29 = arg0->unk10->unk2 * sizeof(*se.unk10); - if ((se.unk10 = msmMemAlloc(temp_r29)) == NULL) { + playerSize = arg0->info->sfx * sizeof(SE_PLAYER); + if ((se.player = msmMemAlloc(playerSize)) == NULL) { return MSM_ERR_OUTOFMEM; } - memset(se.unk10, 0, temp_r29); - se.unk00 = arg0->unk10->unk6; - se.unk04 = arg0->unk10->unk2; - se.unk08 = 1; + memset(se.player, 0, playerSize); + se.seMax = arg0->info->seMax; + se.sfx = arg0->info->sfx; + se.no = 1; return 0; } diff --git a/src/msm/msmstream.c b/src/msm/msmstream.c index 058835ab..2afade01 100755 --- a/src/msm/msmstream.c +++ b/src/msm/msmstream.c @@ -3,215 +3,187 @@ #include "msm/msmsys.h" typedef struct { - /* 0x00 */ SND_STREAMID unk00; - /* 0x04 */ s16 unk04; - /* 0x06 */ u8 unk06; - /* 0x07 */ u8 unk07; - /* 0x08 */ u8 unk08; - /* 0x09 */ u8 unk09; - /* 0x0A */ u8 unk0A; - /* 0x0B */ u8 unk0B; - /* 0x0C */ u8 unk0C; - /* 0x0D */ u8 unk0D; - /* 0x0E */ s8 unk0E; - /* 0x0F */ s8 unk0F; - /* 0x10 */ u32 unk10; - /* 0x14 */ volatile s32 unk14; - /* 0x18 */ volatile s32 unk18; - /* 0x1C */ s32 unk1C; - /* 0x20 */ char unk20[4]; - /* 0x24 */ volatile s32 unk24; - /* 0x28 */ s32 unk28; - /* 0x2C */ s8 unk2C; - /* 0x2D */ s8 unk2D; - /* 0x2E */ s8 unk2E; - /* 0x2F */ char unk2F[1]; - /* 0x30 */ void* unk30; - /* 0x34 */ u32 unk34; - /* 0x38 */ u32 unk38; + /* 0x00 */ SND_STREAMID stid; + /* 0x04 */ s16 streamId; + /* 0x06 */ u8 status; + /* 0x07 */ u8 stereoF; + /* 0x08 */ u8 volBase; + /* 0x09 */ u8 vol; + /* 0x0A */ u8 volFade; + /* 0x0B */ u8 pauseVol; + /* 0x0C */ u8 panBase; + /* 0x0D */ u8 pan; + /* 0x0E */ s8 slotL; + /* 0x0F */ s8 slotR; + /* 0x10 */ u32 pauseLen; + /* 0x14 */ volatile s32 pauseTime; + /* 0x18 */ volatile s32 pauseTimeMax; + /* 0x1C */ s32 fadeVol; + /* 0x20 */ s32 unk20; + /* 0x24 */ volatile s32 fadeMaxTime; + /* 0x28 */ s32 fadeTime; + /* 0x2C */ s8 span; + /* 0x2D */ s8 auxA; + /* 0x2E */ s8 auxB; + /* 0x30 */ void* streamBuf; + /* 0x34 */ u32 streamBufSize; + /* 0x38 */ u32 streamFrq; /* 0x3C */ struct { - volatile u8 unk3C_0 : 1; - volatile u8 unk3C_1 : 1; - u8 unk3C_2 : 1; - u8 unk3C_3 : 1; - volatile u8 unk3C_4 : 1; - volatile u8 unk3C_5 : 1; - volatile u8 unk3C_6 : 1; + volatile u8 bufNo : 1; + volatile u8 firstF : 1; + u8 streamOffF : 1; + u8 readBusyF : 1; + volatile u8 shutdownF : 1; + volatile u8 pauseF : 1; + volatile u8 updateAramF : 1; }; - /* 0x3D */ char unk3D[3]; - /* 0x40 */ s32 unk40; - /* 0x44 */ SND_ADPCMSTREAM_INFO* unk44; - /* 0x48 */ s32 unk48; - /* 0x4C */ u32 unk4C; - /* 0x50 */ u32 unk50; - /* 0X54 */ s32 unk54; - /* 0x58 */ u32 unk58; - /* 0x5C */ void* unk5C; - /* 0X60 */ s32 unk60; + s32 frq; + /* 0x44 */ SND_ADPCMSTREAM_INFO* adpcmInfo; + /* 0x48 */ s32 streamBaseOfs; + /* 0x4C */ u32 streamPos; + /* 0x50 */ u32 loopLen; + /* 0X54 */ s32 loopEndOfs; + /* 0x58 */ u32 streamReadSize; + /* 0x5C */ void* streamReadBuf; + /* 0X60 */ s32 streamPosStart; /* 0x64 */ u32 unk64; /* 0x68 */ s32 unk68; /* 0x6C */ s32 unk6C; - /* 0x70 */ DVDFileInfo unk70; -} msmStreamUnk20Struct; // Size 0xAC + /* 0x70 */ DVDFileInfo file; +} MSM_STREAM_SLOT; // Size 0xAC + +static struct { + /* 0x00 */ s32 sampleFrq; + /* 0x04 */ u32 bufSize; + /* 0x08 */ s32 frq; + /* 0x0C */ s32 pdtEntryNum; + /* 0x10 */ s8 time; + /* 0x11 */ u8 masterVol; + /* 0x12 */ u8 outputMode; + /* 0x14 */ u32* streamPackList; + /* 0x18 */ s8* streamPackFlag; + /* 0x1C */ SND_ADPCMSTREAM_INFO* adpcmParam; + /* 0x20 */ MSM_STREAM_SLOT* slot; + MSM_STREAM_HEADER header ATTRIBUTE_ALIGN(32); +} StreamInfo; // Size 0x60 typedef struct { - /* 0x00 */ s32 unk00; - /* 0x04 */ u32 unk04; - /* 0x08 */ s32 unk08; - /* 0x0C */ s32 unk0C; - /* 0x10 */ s8 unk10; - /* 0x11 */ u8 unk11; - /* 0x12 */ u8 unk12; - /* 0x13 */ char unk13[1]; - /* 0x14 */ u32* unk14; - /* 0x18 */ s8* unk18; - /* 0x1C */ SND_ADPCMSTREAM_INFO* unk1C; - /* 0x20 */ msmStreamUnk20Struct* unk20; - /* 0x24 */ char unk24[0x1C]; - /* 0x40 */ s16 unk40; - /* 0x42 */ s16 unk42; - /* 0x44 */ s32 unk44; - /* 0x48 */ s32 unk48; - /* 0x4C */ s32 unk4C; - /* 0x50 */ s32 unk50; - /* 0x54 */ s32 unk54; - /* 0x58 */ s32 unk58; - /* 0x5C */ s32 unk5C; -} msmStreamStruct; // Size 0x60 + /* 0x00 */ u8 vol; + /* 0x01 */ u8 pan; + /* 0x02 */ u8 span; + /* 0x03 */ u8 auxA; + /* 0x04 */ u8 auxB; + /* 0x08 */ s32 sampleOfs; +} STREAM_PARAM; -typedef struct { - /* 0x00 */ s32 unk00; - /* 0x04 */ s16 unk04; - /* 0x06 */ char unk06[2]; -} StructSlotInitInnerArg1; // Size 8 - -typedef struct { - /* 0x00 */ s8 unk00; - /* 0x01 */ s8 unk01; - /* 0x02 */ s8 unk02; - /* 0x03 */ s8 unk03; - /* 0x04 */ s8 unk04; - /* 0x05 */ s8 unk05; - /* 0x06 */ u16 unk06; - /* 0x08 */ u32 unk08; - /* 0x0C */ u32 unk0C; - /* 0x10 */ StructSlotInitInnerArg1 unk10[2]; -} StructSlotInitArg1; // Size unknown - -typedef struct { - /* 0x00 */ u8 unk00; - /* 0x01 */ u8 unk01; - /* 0x02 */ u8 unk02; - /* 0x03 */ u8 unk03; - /* 0x04 */ u8 unk04; - /* 0x05 */ char unk05[3]; - /* 0x08 */ s32 unk08; -} StructSlotInitArg2; // Size unknown - -static void msmStreamPauseFade(s32 arg0); -static void msmStreamFade(s32 arg0); +static void msmStreamPauseFade(s32 streamNo); +static void msmStreamFade(s32 streamNo); static void msmStreamDvdCallback(s32 result, DVDFileInfo* fileInfo); static void msmStreamStopSub(s32 streamNo, s32 speed); -static void msmStreamDvdCallback2(s32 arg0, DVDFileInfo* arg1); +static void msmStreamDvdCallback2(s32 result, DVDFileInfo* fileInfo); static u32 msmStreamUpdateFunc(void* buffer1, u32 len1, void* buffer2, u32 len2, u32 user); -static s32 msmStreamSlotInit(msmStreamUnk20Struct* arg0, StructSlotInitArg1* arg1, StructSlotInitArg2* arg2, s32 arg3); +static s32 msmStreamSlotInit(MSM_STREAM_SLOT* arg0, MSM_STREAM_PACK* arg1, STREAM_PARAM* arg2, s32 arg3); +static void msmStreamPauseOff(s32 streamNo); +static void msmStreamPauseOn(s32 streamNo, s32 arg1); +static s32 msmStreamPackStartStereo(s32 streamId, MSM_STREAMPARAM *param, s32 sampleOfs); +static s32 msmStreamPackStartMono(s32 streamId, MSM_STREAMPARAM *param, s32 sampleOfs); +static void msmStreamSlotOff(s32 streamNo); -static msmStreamStruct StreamInfo ATTRIBUTE_ALIGN(32); +static inline void msmStreamClose(s32 streamNo) { + MSM_STREAM_SLOT* slot; -static inline void msmStreamInline00(s32 streamNo) { - msmStreamUnk20Struct* temp_ptr; - - temp_ptr = &StreamInfo.unk20[streamNo]; - DVDClose(&temp_ptr->unk70); - temp_ptr->unk06 = 0; + slot = &StreamInfo.slot[streamNo]; + DVDClose(&slot->file); + slot->status = 0; } s32 msmStreamGetStatus(int streamNo) { - msmStreamUnk20Struct* temp_r3; - s32 var_r4; + MSM_STREAM_SLOT* slot; + s32 status; - if (streamNo < 0 || streamNo >= StreamInfo.unk44) { + if (streamNo < 0 || streamNo >= StreamInfo.header.chanMax) { return 0; } - temp_r3 = &StreamInfo.unk20[streamNo]; - switch (temp_r3->unk06) { + slot = &StreamInfo.slot[streamNo]; + switch (slot->status) { case 4: - var_r4 = 2; + status = MSM_STREAM_PLAY; break; case 2: case 3: - var_r4 = 4; + status = MSM_STREAM_PAUSEOUT; break; case 5: - var_r4 = 1; + status = MSM_STREAM_STOP; break; default: - var_r4 = 0; + status = MSM_STREAM_DONE; break; } - if (temp_r3->unk3C_5 == 1) { - var_r4 = 3; + if (slot->pauseF == TRUE) { + status = MSM_STREAM_PAUSEIN; } - if (var_r4 == 0 && temp_r3->unk0E != -1) { - var_r4 = msmStreamGetStatus(temp_r3->unk0E); + if (status == MSM_STREAM_DONE && slot->slotL != -1) { + status = msmStreamGetStatus(slot->slotL); } - return var_r4; + return status; } -static inline void msmStreamInline04(msmStreamUnk20Struct* arg0) { - s32 var_r10; - s32 temp_var; +static void msmStreamUpdateBaseParam(MSM_STREAM_SLOT* slot) { + s32 pan; + s32 vol; - if (StreamInfo.unk12 != 0) { - var_r10 = arg0->unk0C + arg0->unk0D - 0x40; - if (var_r10 < 0) { - var_r10 = 0; + if (StreamInfo.outputMode != 0) { + pan = slot->panBase + slot->pan - 64; + if (pan < 0) { + pan = 0; } - if (var_r10 > 0x7F) { - var_r10 = 0x7F; + if (pan > 127) { + pan = 127; } } else { - var_r10 = 0x40; + pan = 64; } - temp_var = arg0->unk08 * arg0->unk09 * arg0->unk0A * arg0->unk0B / 2048383; - sndStreamMixParameterEx(arg0->unk00, temp_var * StreamInfo.unk11 / 127, var_r10, arg0->unk2C, arg0->unk2D, arg0->unk2E); + vol = slot->volBase * slot->vol * slot->volFade * slot->pauseVol / (127*127*127); + sndStreamMixParameterEx(slot->stid, vol * StreamInfo.masterVol / 127, pan, slot->span, slot->auxA, slot->auxB); } -void msmStreamSetMasterVolume(s32 arg0) { - s32 var_r27; +void msmStreamSetMasterVolume(s32 vol) { + s32 i; - StreamInfo.unk11 = arg0 & 0x7F; - for (var_r27 = 0; var_r27 < StreamInfo.unk44; var_r27++) { - if (StreamInfo.unk20[var_r27].unk06 != 0) { - msmStreamInline04(&StreamInfo.unk20[var_r27]); + StreamInfo.masterVol = vol & 127; + for (i = 0; i < StreamInfo.header.chanMax; i++) { + if (StreamInfo.slot[i].status != 0) { + msmStreamUpdateBaseParam(&StreamInfo.slot[i]); } } } -static inline BOOL msmStreamInline01(msmStreamUnk20Struct* arg0) { - if (arg0->unk06 != 0 || arg0->unk3C_5 != 0) { +static inline BOOL msmStreamIsPlay(MSM_STREAM_SLOT* slot) { + if (slot->status != 0 || slot->pauseF != 0) { return TRUE; } else { return FALSE; } } -void msmStreamStopAll(s32 speed) { - msmStreamUnk20Struct* temp_r29; - s32 var_r28; +void msmStreamStopAll(s32 speed) +{ + MSM_STREAM_SLOT* slot; + s32 i; msmSysIrqDisable(); - for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { - if (var_r28 >= 0 && var_r28 < StreamInfo.unk44) { - temp_r29 = &StreamInfo.unk20[var_r28]; - if (msmStreamInline01(temp_r29)) { + for (i = 0; i < StreamInfo.header.chanMax; i++) { + if (i >= 0 && i < StreamInfo.header.chanMax) { + slot = &StreamInfo.slot[i]; + if (msmStreamIsPlay(slot)) { msmSysIrqDisable(); - msmStreamStopSub(var_r28, speed); - if (temp_r29->unk0E != -1) { - msmStreamStopSub(temp_r29->unk0E, speed); + msmStreamStopSub(i, speed); + if (slot->slotL != -1) { + msmStreamStopSub(slot->slotL, speed); } - if (temp_r29->unk0F != -1) { - msmStreamStopSub(temp_r29->unk0F, speed); + if (slot->slotR != -1) { + msmStreamStopSub(slot->slotR, speed); } msmSysIrqEnable(); } @@ -220,38 +192,38 @@ void msmStreamStopAll(s32 speed) { msmSysIrqEnable(); } -static inline void msmStreamInline03(int streamNo, s32 speed) { - msmStreamUnk20Struct* temp_ptr = &StreamInfo.unk20[streamNo]; +static inline void msmStreamSetFade(int streamNo, s32 speed) { + MSM_STREAM_SLOT* slot = &StreamInfo.slot[streamNo]; - if (temp_ptr->unk3C_5 != 0) { - temp_ptr->unk3C_5 = 0; + if (slot->pauseF != 0) { + slot->pauseF = 0; speed = 0; } - temp_ptr->unk24 = speed / 15; - if (temp_ptr->unk24 != 0) { - temp_ptr->unk28 = temp_ptr->unk24; - temp_ptr->unk0A = 0x7F; + slot->fadeMaxTime = speed / 15; + if (slot->fadeMaxTime != 0) { + slot->fadeTime = slot->fadeMaxTime; + slot->volFade = 127; } else { msmStreamSlotOff(streamNo); } } s32 msmStreamStop(int streamNo, s32 speed) { - msmStreamUnk20Struct* temp_r31; + MSM_STREAM_SLOT* slot; s32 unused; - if (streamNo < 0 || streamNo >= StreamInfo.unk44) { - return MSM_ERR_8C; + if (streamNo < 0 || streamNo >= StreamInfo.header.chanMax) { + return MSM_ERR_RANGE_STREAM; } - temp_r31 = &StreamInfo.unk20[streamNo]; - if (msmStreamInline01(temp_r31)) { + slot = &StreamInfo.slot[streamNo]; + if (msmStreamIsPlay(slot)) { msmSysIrqDisable(); - msmStreamInline03(streamNo, speed); - if (temp_r31->unk0E != -1) { - msmStreamInline03(temp_r31->unk0E, speed); + msmStreamSetFade(streamNo, speed); + if (slot->slotL != -1) { + msmStreamSetFade(slot->slotL, speed); } - if (temp_r31->unk0F != -1) { - msmStreamInline03(temp_r31->unk0F, speed); + if (slot->slotR != -1) { + msmStreamSetFade(slot->slotR, speed); } msmSysIrqEnable(); } @@ -259,13 +231,13 @@ s32 msmStreamStop(int streamNo, s32 speed) { } int msmStreamPlay(int streamId, MSM_STREAMPARAM* streamParam) { - if (streamId < 0 || streamId >= StreamInfo.unk42) { + if (streamId < 0 || streamId >= StreamInfo.header.streamMax) { return MSM_ERR_INVALIDID; } - if (StreamInfo.unk14[streamId] == 0) { + if (StreamInfo.streamPackList[streamId] == 0) { return MSM_ERR_REMOVEDID; } - if (StreamInfo.unk18[StreamInfo.unk14[streamId] - StreamInfo.unk58] & 1) { + if (StreamInfo.streamPackFlag[StreamInfo.streamPackList[streamId] - StreamInfo.header.streamPackOfs] & MSM_STREAM_FLAG_STEREO) { return msmStreamPackStartStereo(streamId, streamParam, 0); } else { return msmStreamPackStartMono(streamId, streamParam, 0); @@ -273,785 +245,785 @@ int msmStreamPlay(int streamId, MSM_STREAMPARAM* streamParam) { } void msmStreamPeriodicProc(void) { - msmStreamUnk20Struct* temp_r28; - s32 var_r27; + MSM_STREAM_SLOT* slot; + s32 i; - StreamInfo.unk10 = 0; - for (var_r27 = 0; var_r27 < StreamInfo.unk44; var_r27++) { - temp_r28 = &StreamInfo.unk20[var_r27]; - msmStreamFade(var_r27); - msmStreamPauseOff(var_r27); - msmStreamPauseFade(var_r27); - if (temp_r28->unk06 != 0) { - StreamInfo.unk10++; + StreamInfo.time = 0; + for (i = 0; i < StreamInfo.header.chanMax; i++) { + slot = &StreamInfo.slot[i]; + msmStreamFade(i); + msmStreamPauseOff(i); + msmStreamPauseFade(i); + if (slot->status != 0) { + StreamInfo.time++; } } } -void msmStreamSetOutputMode(s32 arg0) { - s32 var_r27; +void msmStreamSetOutputMode(s32 outputMode) { + s32 i; - StreamInfo.unk12 = arg0; - for (var_r27 = 0; var_r27 < StreamInfo.unk44; var_r27++) { - if (StreamInfo.unk20[var_r27].unk06 != 0) { - msmStreamInline04(&StreamInfo.unk20[var_r27]); + StreamInfo.outputMode = outputMode; + for (i = 0; i < StreamInfo.header.chanMax; i++) { + if (StreamInfo.slot[i].status != 0) { + msmStreamUpdateBaseParam(&StreamInfo.slot[i]); } } } void msmStreamAmemFree(void) { - u32 var_r29; + u32 i; - for (var_r29 = 0; var_r29 < StreamInfo.unk44; var_r29++) { - sndStreamFree(StreamInfo.unk20[var_r29].unk00); + for (i = 0; i < StreamInfo.header.chanMax; i++) { + sndStreamFree(StreamInfo.slot[i].stid); } } s32 msmStreamAmemAlloc(void) { - u32 var_r25; - msmStreamUnk20Struct* temp_r24; + u32 i; + MSM_STREAM_SLOT* slot; - for (var_r25 = 0; var_r25 < StreamInfo.unk44; var_r25++) { - temp_r24 = &StreamInfo.unk20[var_r25]; - temp_r24->unk06 = 0; - temp_r24->unk0F = -1; - temp_r24->unk0E = -1; - temp_r24->unk30 = msmMemAlloc(StreamInfo.unk04); - if (temp_r24->unk30 == NULL) { + for (i = 0; i < StreamInfo.header.chanMax; i++) { + slot = &StreamInfo.slot[i]; + slot->status = 0; + slot->slotR = -1; + slot->slotL = -1; + slot->streamBuf = msmMemAlloc(StreamInfo.bufSize); + if (slot->streamBuf == NULL) { return MSM_ERR_OUTOFMEM; } - temp_r24->unk34 = StreamInfo.unk04; - temp_r24->unk38 = StreamInfo.unk08; - temp_r24->unk00 = sndStreamAllocEx(0xFF, temp_r24->unk30, temp_r24->unk38, StreamInfo.unk48, 0, 0x40, 0, 0, 0, 0, 0x30001, msmStreamUpdateFunc, var_r25, NULL); - if (temp_r24->unk00 == -1) { + slot->streamBufSize = StreamInfo.bufSize; + slot->streamFrq = StreamInfo.frq; + slot->stid = sndStreamAllocEx(0xFF, slot->streamBuf, slot->streamFrq, StreamInfo.header.sampleFrq, 0, 64, 0, 0, 0, 0, 0x30001, msmStreamUpdateFunc, i, NULL); + if (slot->stid == -1) { return MSM_ERR_STREAMALLOC_FAIL; } } - return StreamInfo.unk04 * StreamInfo.unk44; + return StreamInfo.bufSize * StreamInfo.header.chanMax; } -s32 msmStreamInit(char* arg0) { - DVDFileInfo spC; - s32 temp_r27; +s32 msmStreamInit(char *pdtPath) { + DVDFileInfo file; + s32 size; - StreamInfo.unk42 = 0; - StreamInfo.unk44 = 0; - StreamInfo.unk11 = 0x7F; - StreamInfo.unk10 = 0; - if (arg0 == NULL) { + StreamInfo.header.streamMax = 0; + StreamInfo.header.chanMax = 0; + StreamInfo.masterVol = 127; + StreamInfo.time = 0; + if (pdtPath == NULL) { return 0; } - StreamInfo.unk0C = DVDConvertPathToEntrynum(arg0); - if (StreamInfo.unk0C == -1) { + StreamInfo.pdtEntryNum = DVDConvertPathToEntrynum(pdtPath); + if (StreamInfo.pdtEntryNum == -1) { return MSM_ERR_OPENFAIL; } - if (!msmFioOpen(StreamInfo.unk0C, &spC)) { + if (!msmFioOpen(StreamInfo.pdtEntryNum, &file)) { return MSM_ERR_OPENFAIL; } - if (msmFioRead(&spC, &StreamInfo.unk40, 0x20, 0) < 0) { - msmFioClose(&spC); + if (msmFioRead(&file, &StreamInfo.header, 0x20, 0) < 0) { + msmFioClose(&file); return MSM_ERR_READFAIL; } - if (StreamInfo.unk40 != 1) { - msmFioClose(&spC); + if (StreamInfo.header.version != MSM_PDT_FILE_VERSION) { + msmFioClose(&file); return MSM_ERR_INVALIDFILE; } - if (StreamInfo.unk42 != 0) { - temp_r27 = (StreamInfo.unk54 - StreamInfo.unk50 + 0x1F) & ~0x1F; - StreamInfo.unk14 = msmMemAlloc(temp_r27); - if (StreamInfo.unk14 == NULL) { - msmFioClose(&spC); + if (StreamInfo.header.streamMax != 0) { + size = (StreamInfo.header.adpcmParamOfs - StreamInfo.header.streamPackListOfs + 0x1F) & ~0x1F; + StreamInfo.streamPackList = msmMemAlloc(size); + if (StreamInfo.streamPackList == NULL) { + msmFioClose(&file); return MSM_ERR_OUTOFMEM; } - if (msmFioRead(&spC, StreamInfo.unk14, temp_r27, StreamInfo.unk50) < 0) { - msmFioClose(&spC); + if (msmFioRead(&file, StreamInfo.streamPackList, size, StreamInfo.header.streamPackListOfs) < 0) { + msmFioClose(&file); return MSM_ERR_READFAIL; } - temp_r27 = (StreamInfo.unk5C - StreamInfo.unk58 + 0x1F) & ~0x1F; - StreamInfo.unk18 = msmMemAlloc(temp_r27); - if (StreamInfo.unk18 == NULL) { - msmFioClose(&spC); + size = (StreamInfo.header.sampleOfs - StreamInfo.header.streamPackOfs + 0x1F) & ~0x1F; + StreamInfo.streamPackFlag = msmMemAlloc(size); + if (StreamInfo.streamPackFlag == NULL) { + msmFioClose(&file); return MSM_ERR_OUTOFMEM; } - if (msmFioRead(&spC, StreamInfo.unk18, temp_r27, StreamInfo.unk58) < 0) { - msmFioClose(&spC); + if (msmFioRead(&file, StreamInfo.streamPackFlag, size, StreamInfo.header.streamPackOfs) < 0) { + msmFioClose(&file); return MSM_ERR_READFAIL; } - temp_r27 = StreamInfo.unk58 - StreamInfo.unk54; - StreamInfo.unk1C = msmMemAlloc(temp_r27); - if (StreamInfo.unk1C == NULL) { - msmFioClose(&spC); + size = StreamInfo.header.streamPackOfs - StreamInfo.header.adpcmParamOfs; + StreamInfo.adpcmParam = msmMemAlloc(size); + if (StreamInfo.adpcmParam == NULL) { + msmFioClose(&file); return MSM_ERR_OUTOFMEM; } - if (msmFioRead(&spC, StreamInfo.unk1C, temp_r27, StreamInfo.unk54) < 0) { - msmFioClose(&spC); + if (msmFioRead(&file, StreamInfo.adpcmParam, size, StreamInfo.header.adpcmParamOfs) < 0) { + msmFioClose(&file); return MSM_ERR_READFAIL; } } - msmFioClose(&spC); - StreamInfo.unk00 = (StreamInfo.unk48 + 13) / 14; - StreamInfo.unk04 = (8 * StreamInfo.unk00 * StreamInfo.unk4C + 0x3F) & ~0x3F; - StreamInfo.unk08 = (StreamInfo.unk04 / 8) * 14; - StreamInfo.unk20 = msmMemAlloc(StreamInfo.unk44 * sizeof(*StreamInfo.unk20)); - memset(StreamInfo.unk20, 0, StreamInfo.unk44 * sizeof(*StreamInfo.unk20)); + msmFioClose(&file); + StreamInfo.sampleFrq = (StreamInfo.header.sampleFrq + (SND_STREAM_ADPCM_BLKSIZE-1)) / SND_STREAM_ADPCM_BLKSIZE ; + StreamInfo.bufSize = (8 * StreamInfo.sampleFrq * StreamInfo.header.maxBufs + 0x3F) & ~0x3F; + StreamInfo.frq = (StreamInfo.bufSize / SND_STREAM_ADPCM_BLKBYTES ) * SND_STREAM_ADPCM_BLKSIZE; + StreamInfo.slot = msmMemAlloc(StreamInfo.header.chanMax * sizeof(*StreamInfo.slot)); + memset(StreamInfo.slot, 0, StreamInfo.header.chanMax * sizeof(*StreamInfo.slot)); return 0; } -void msmStreamPauseOff(s32 arg0) { - msmStreamUnk20Struct* temp_r31; - u32 temp_r3; - u32 var_r30; +static void msmStreamPauseOff(s32 streamNo) { + MSM_STREAM_SLOT* slot; + u32 ofs; + u32 readSize; - temp_r31 = &StreamInfo.unk20[arg0]; - if (temp_r31->unk14 == 0) { + slot = &StreamInfo.slot[streamNo]; + if (slot->pauseTime == 0) { return; } - if (temp_r31->unk3C_5 == 0) { - temp_r31->unk14 = 0; + if (slot->pauseF == 0) { + slot->pauseTime = 0; return; } - if (temp_r31->unk18 != 0) { - temp_r31->unk18 = -(temp_r31->unk14 + 1); - if (temp_r31->unk18 == 0) { - temp_r31->unk0B = 0x7F; - msmStreamInline04(temp_r31); + if (slot->pauseTimeMax != 0) { + slot->pauseTimeMax = -(slot->pauseTime + 1); + if (slot->pauseTimeMax == 0) { + slot->pauseVol = 127; + msmStreamUpdateBaseParam(slot); } - temp_r31->unk14 = 0; - temp_r31->unk3C_5 = 0; - } else if (temp_r31->unk06 == 0 && DVDFastOpen(StreamInfo.unk0C, &temp_r31->unk70) == TRUE) { - if (--temp_r31->unk14 != 0) { - temp_r31->unk18 = -temp_r31->unk14; - temp_r31->unk1C = 0; - temp_r31->unk0B = 0; + slot->pauseTime = 0; + slot->pauseF = 0; + } else if (slot->status == 0 && DVDFastOpen(StreamInfo.pdtEntryNum, &slot->file) == TRUE) { + if (--slot->pauseTime != 0) { + slot->pauseTimeMax = -slot->pauseTime; + slot->fadeVol = 0; + slot->pauseVol = 0; } else { - temp_r31->unk0B = 0x7F; + slot->pauseVol = 127; } - temp_r31->unk14 = 0; - temp_r31->unk3C_1 = 1; - temp_r31->unk3C_2 = 0; - temp_r31->unk3C_4 = 0; - temp_r31->unk3C_5 = 0; - temp_r31->unk3C_6 = 0; - temp_r31->unk3C_0 = 1; - temp_r31->unk64 = temp_r31->unk68 = (temp_r31->unk10 / 8) * 14; - temp_r31->unk6C = 0; - temp_r31->unk4C = temp_r31->unk10; - var_r30 = temp_r31->unk34 / 2; - if ((temp_r3 = temp_r31->unk50 - temp_r31->unk4C) < temp_r31->unk34 / 2) { - var_r30 = temp_r3; - temp_r31->unk58 = temp_r31->unk34 / 2 - temp_r3; - temp_r31->unk5C = (void*) ((u32) temp_r31->unk30 + temp_r3); - memset(temp_r31->unk5C, 0, temp_r31->unk58); + slot->pauseTime = 0; + slot->firstF = TRUE; + slot->streamOffF = 0; + slot->shutdownF = 0; + slot->pauseF = 0; + slot->updateAramF = 0; + slot->bufNo = 1; + slot->unk64 = slot->unk68 = (slot->pauseLen / SND_STREAM_ADPCM_BLKBYTES) * SND_STREAM_ADPCM_BLKSIZE; + slot->unk6C = 0; + slot->streamPos = slot->pauseLen; + readSize = slot->streamBufSize / 2; + if ((ofs = slot->loopLen - slot->streamPos) < slot->streamBufSize / 2) { + readSize = ofs; + slot->streamReadSize = slot->streamBufSize / 2 - ofs; + slot->streamReadBuf = (void*) ((u32) slot->streamBuf + ofs); + memset(slot->streamReadBuf, 0, slot->streamReadSize); } - temp_r31->unk06 = 2; - temp_r31->unk4C += var_r30; - temp_r31->unk3C_3 = 1; - DVDReadAsync(&temp_r31->unk70, temp_r31->unk30, var_r30, temp_r31->unk48 + (temp_r31->unk4C - var_r30), msmStreamDvdCallback); + slot->status = 2; + slot->streamPos += readSize; + slot->readBusyF = TRUE; + DVDReadAsync(&slot->file, slot->streamBuf, readSize, slot->streamBaseOfs + (slot->streamPos - readSize), msmStreamDvdCallback); } } -static inline void msmStreamInline05(s32 streamNo) { - msmStreamUnk20Struct* temp_r31; +static inline void msmStreamOff(s32 streamNo) { + MSM_STREAM_SLOT* slot; - temp_r31 = &StreamInfo.unk20[streamNo]; - switch (temp_r31->unk06) { + slot = &StreamInfo.slot[streamNo]; + switch (slot->status) { case 2: - temp_r31->unk3C_4 = 1; - temp_r31->unk06 = 5; + slot->shutdownF = TRUE; + slot->status = 5; break; case 3: - msmStreamInline00(streamNo); + msmStreamClose(streamNo); break; case 4: - if (temp_r31->unk3C_2 == 0) { - sndStreamMixParameterEx(temp_r31->unk00, 0, 0x40, 0, 0, 0); - temp_r31->unk3C_2 = 1; - temp_r31->unk06 = 5; + if (slot->streamOffF == FALSE) { + sndStreamMixParameterEx(slot->stid, 0, 64, 0, 0, 0); + slot->streamOffF = TRUE; + slot->status = 5; } break; } } -void msmStreamPauseOn(s32 streamNo, s32 arg1) { - msmStreamUnk20Struct* temp_r31; +static void msmStreamPauseOn(s32 streamNo, s32 speed) { + MSM_STREAM_SLOT* slot; - temp_r31 = &StreamInfo.unk20[streamNo]; - temp_r31->unk14 = 0; - if (temp_r31->unk3C_5 != 0) { + slot = &StreamInfo.slot[streamNo]; + slot->pauseTime = 0; + if (slot->pauseF != 0) { return; } - temp_r31->unk3C_5 = 1; - temp_r31->unk18 = arg1 / 15; - if (temp_r31->unk18 != 0) { - temp_r31->unk1C = temp_r31->unk18; - temp_r31->unk0B = 0x7F; + slot->pauseF = TRUE; + slot->pauseTimeMax = speed / 15; + if (slot->pauseTimeMax != 0) { + slot->fadeVol = slot->pauseTimeMax; + slot->pauseVol = 127; return; } - temp_r31->unk10 = ((temp_r31->unk64 / 7) * 4) & ~7; - if (temp_r31->unk07 != 0) { - if (temp_r31->unk10 >= temp_r31->unk50 - temp_r31->unk34 / 4) { - temp_r31->unk10 = 0; + slot->pauseLen = ((slot->unk64 / 7) * 4) & ~7; + if (slot->stereoF != 0) { + if (slot->pauseLen >= slot->loopLen - slot->streamBufSize / 4) { + slot->pauseLen = 0; } - } else if (temp_r31->unk10 >= temp_r31->unk50) { - temp_r31->unk3C_5 = 0; + } else if (slot->pauseLen >= slot->loopLen) { + slot->pauseF = 0; } - msmStreamInline05(streamNo); + msmStreamOff(streamNo); } -static void msmStreamPauseFade(s32 arg0) { - msmStreamUnk20Struct* temp_r5; +static void msmStreamPauseFade(s32 streamNo) { + MSM_STREAM_SLOT* slot; - temp_r5 = &StreamInfo.unk20[arg0]; - if (temp_r5->unk06 != 4) { + slot = &StreamInfo.slot[streamNo]; + if (slot->status != 4) { return; } - if (temp_r5->unk18 > 0) { - if (--temp_r5->unk1C == 0) { - temp_r5->unk18 = 0; - temp_r5->unk3C_5 = 0; - msmStreamPauseOn(arg0, 0); + if (slot->pauseTimeMax > 0) { + if (--slot->fadeVol == 0) { + slot->pauseTimeMax = 0; + slot->pauseF = 0; + msmStreamPauseOn(streamNo, 0); } else { - temp_r5->unk0B = temp_r5->unk1C * 0x7F / temp_r5->unk18; - msmStreamInline04(temp_r5); + slot->pauseVol = slot->fadeVol * 127 / slot->pauseTimeMax; + msmStreamUpdateBaseParam(slot); } - } else if (temp_r5->unk18 < 0) { - if (++temp_r5->unk1C >= -temp_r5->unk18) { - temp_r5->unk18 = 0; - temp_r5->unk0B = 0x7F; - msmStreamInline04(temp_r5); + } else if (slot->pauseTimeMax < 0) { + if (++slot->fadeVol >= -slot->pauseTimeMax) { + slot->pauseTimeMax = 0; + slot->pauseVol = 127; + msmStreamUpdateBaseParam(slot); } else { - temp_r5->unk0B = temp_r5->unk1C * 0x7F / -temp_r5->unk18; - msmStreamInline04(temp_r5); + slot->pauseVol = slot->fadeVol * 127 / -slot->pauseTimeMax; + msmStreamUpdateBaseParam(slot); } } } -static void msmStreamFade(s32 arg0) { - msmStreamUnk20Struct* temp_r5; +static void msmStreamFade(s32 streamNo) { + MSM_STREAM_SLOT* slot; - temp_r5 = &StreamInfo.unk20[arg0]; - if (temp_r5->unk06 != 4) { + slot = &StreamInfo.slot[streamNo]; + if (slot->status != 4) { return; } - if (temp_r5->unk24 > 0) { - if (--temp_r5->unk28 == 0) { - temp_r5->unk24 = 0; - msmStreamInline03(arg0, 0); + if (slot->fadeMaxTime > 0) { + if (--slot->fadeTime == 0) { + slot->fadeMaxTime = 0; + msmStreamSetFade(streamNo, 0); } else { - temp_r5->unk0A = temp_r5->unk28 * 0x7F / temp_r5->unk24; - msmStreamInline04(temp_r5); + slot->volFade = slot->fadeTime * 127 / slot->fadeMaxTime; + msmStreamUpdateBaseParam(slot); } - } else if (temp_r5->unk24 < 0) { - if (++temp_r5->unk28 >= -temp_r5->unk24) { - temp_r5->unk24 = 0; - temp_r5->unk0A = 0x7F; - msmStreamInline04(temp_r5); + } else if (slot->fadeMaxTime < 0) { + if (++slot->fadeTime >= -slot->fadeMaxTime) { + slot->fadeMaxTime = 0; + slot->volFade = 127; + msmStreamUpdateBaseParam(slot); } else { - temp_r5->unk0A = temp_r5->unk28 * 0x7F / -temp_r5->unk24; - msmStreamInline04(temp_r5); + slot->volFade = slot->fadeTime * 127 / -slot->fadeMaxTime; + msmStreamUpdateBaseParam(slot); } } } static void msmStreamStopSub(s32 streamNo, s32 speed) { - msmStreamUnk20Struct* temp_r31; - s32 var_r4; + MSM_STREAM_SLOT* slot; + s32 time; - var_r4 = speed; - temp_r31 = &StreamInfo.unk20[streamNo]; - if (temp_r31->unk3C_5 != 0) { - temp_r31->unk3C_5 = 0; - var_r4 = 0; + time = speed; + slot = &StreamInfo.slot[streamNo]; + if (slot->pauseF != 0) { + slot->pauseF = 0; + time = 0; } - temp_r31->unk24 = var_r4 / 15; - if (temp_r31->unk24 != 0) { - temp_r31->unk28 = temp_r31->unk24; - temp_r31->unk0A = 0x7F; + slot->fadeMaxTime = time / 15; + if (slot->fadeMaxTime != 0) { + slot->fadeTime = slot->fadeMaxTime; + slot->volFade = 127; return; } - msmStreamInline05(streamNo); + msmStreamOff(streamNo); } -static void msmStreamSetParamSub(msmStreamUnk20Struct* arg0) { - int var_r10; - s32 temp_var; +static void msmStreamSetParamSub(MSM_STREAM_SLOT* slot) { + int pan; + s32 vol; - if (StreamInfo.unk12 != 0) { - var_r10 = arg0->unk0C + arg0->unk0D - 0x40; - if (var_r10 < 0) { - var_r10 = 0; + if (StreamInfo.outputMode != 0) { + pan = slot->panBase + slot->pan - 64; + if (pan < 0) { + pan = 0; } - if (var_r10 > 0x7F) { - var_r10 = 0x7F; + if (pan > 127) { + pan = 127; } } else { - var_r10 = 0x40; + pan = 64; } - temp_var = arg0->unk08 * arg0->unk09 * arg0->unk0A * arg0->unk0B / 2048383; - sndStreamMixParameterEx(arg0->unk00, temp_var * StreamInfo.unk11 / 127, var_r10, arg0->unk2C, arg0->unk2D, arg0->unk2E); + vol = slot->volBase * slot->vol * slot->volFade * slot->pauseVol / (127*127*127); + sndStreamMixParameterEx(slot->stid, vol * StreamInfo.masterVol / 127, pan, slot->span, slot->auxA, slot->auxB); } -s32 msmStreamPackStartStereo(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2) { - s32 var_r29; - s32 var_r28; - s32 var_r27; - u32 temp_r3_3; - u32 temp_r3_4; - StructSlotInitArg2 sp1C; - msmStreamUnk20Struct* temp_r25; - msmStreamUnk20Struct* temp_r24; - StructSlotInitArg1* temp_r23; +static s32 msmStreamPackStartStereo(s32 streamId, MSM_STREAMPARAM *param, s32 sampleOfs) { + s32 flag; + s32 chanL; + s32 chanR; + u32 sizeL; + u32 sizeR; + STREAM_PARAM streamParam; + MSM_STREAM_SLOT* slotL; + MSM_STREAM_SLOT* slotR; + MSM_STREAM_PACK* pack; - var_r29 = (arg1 != NULL) ? arg1->flag : 0; - if (var_r29 & MSM_STREAMPARAM_CHAN) { - var_r28 = arg1->chan; - var_r27 = arg1->chan + 1; - if (var_r28 < 0 || var_r28 >= StreamInfo.unk44) { - return MSM_ERR_6E; + flag = (param != NULL) ? param->flag : 0; + if (flag & MSM_STREAMPARAM_CHAN) { + chanL = param->chan; + chanR = param->chan + 1; + if (chanL < 0 || chanL >= StreamInfo.header.chanMax) { + return MSM_ERR_CHANLIMIT; } - if (var_r27 < 0 || var_r27 >= StreamInfo.unk44) { - return MSM_ERR_6E; + if (chanR < 0 || chanR >= StreamInfo.header.chanMax) { + return MSM_ERR_CHANLIMIT; } - if (msmStreamInline01(&StreamInfo.unk20[var_r28])) { - return MSM_ERR_6E; + if (msmStreamIsPlay(&StreamInfo.slot[chanL])) { + return MSM_ERR_CHANLIMIT; } - if (msmStreamInline01(&StreamInfo.unk20[var_r27])) { - return MSM_ERR_6E; + if (msmStreamIsPlay(&StreamInfo.slot[chanR])) { + return MSM_ERR_CHANLIMIT; } } else { - for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { - if (!msmStreamInline01(&StreamInfo.unk20[var_r28])) { + for (chanL = 0; chanL < StreamInfo.header.chanMax; chanL++) { + if (!msmStreamIsPlay(&StreamInfo.slot[chanL])) { break; } } - for (var_r27 = var_r28 + 1; var_r27 < StreamInfo.unk44; var_r27++) { - if (!msmStreamInline01(&StreamInfo.unk20[var_r27])) { + for (chanR = chanL + 1; chanR < StreamInfo.header.chanMax; chanR++) { + if (!msmStreamIsPlay(&StreamInfo.slot[chanR])) { break; } } - if (var_r28 == StreamInfo.unk44 || var_r27 == StreamInfo.unk44) { - return MSM_ERR_6E; + if (chanL == StreamInfo.header.chanMax || chanR == StreamInfo.header.chanMax) { + return MSM_ERR_CHANLIMIT; } } - temp_r25 = &StreamInfo.unk20[var_r28]; - temp_r24 = &StreamInfo.unk20[var_r27]; - temp_r23 = (StructSlotInitArg1*) ((u32) StreamInfo.unk18 + (StreamInfo.unk14[arg0] - StreamInfo.unk58)); - sp1C.unk00 = (var_r29 & MSM_STREAMPARAM_VOL) ? arg1->vol : 0x7F; - sp1C.unk02 = (var_r29 & MSM_STREAMPARAM_SPAN) ? arg1->span : (s32) temp_r23->unk03; - sp1C.unk03 = (var_r29 & MSM_STREAMPARAM_AUXA) ? arg1->auxA : (s32) temp_r23->unk04; - sp1C.unk04 = (var_r29 & MSM_STREAMPARAM_AUXB) ? arg1->auxB : (s32) temp_r23->unk05; - sp1C.unk08 = arg2; + slotL = &StreamInfo.slot[chanL]; + slotR = &StreamInfo.slot[chanR]; + pack = (MSM_STREAM_PACK*) ((u32) StreamInfo.streamPackFlag + (StreamInfo.streamPackList[streamId] - StreamInfo.header.streamPackOfs)); + streamParam.vol = (flag & MSM_STREAMPARAM_VOL) ? param->vol : 127; + streamParam.span = (flag & MSM_STREAMPARAM_SPAN) ? param->span : (s32) pack->span; + streamParam.auxA = (flag & MSM_STREAMPARAM_AUXA) ? param->auxA : (s32) pack->auxA; + streamParam.auxB = (flag & MSM_STREAMPARAM_AUXB) ? param->auxB : (s32) pack->auxB; + streamParam.sampleOfs = sampleOfs; msmSysIrqDisable(); - sp1C.unk01 = 0; - temp_r3_3 = msmStreamSlotInit(temp_r25, temp_r23, &sp1C, 0); - sp1C.unk01 = 0x7F; - temp_r3_4 = msmStreamSlotInit(temp_r24, temp_r23, &sp1C, 1); - temp_r25->unk04 = arg0; - temp_r24->unk04 = -1; - temp_r25->unk0E = var_r27; - temp_r24->unk0F = var_r28; - if ((var_r29 & MSM_STREAMPARAM_FADESPEED) && arg1->fadeSpeed != 0) { - temp_r25->unk24 = temp_r24->unk24 = -arg1->fadeSpeed / 15; - temp_r25->unk28 = temp_r24->unk28 = 0; - temp_r25->unk0A = temp_r24->unk0A = 0; + streamParam.pan = 0; + sizeL = msmStreamSlotInit(slotL, pack, &streamParam, 0); + streamParam.pan = 127; + sizeR = msmStreamSlotInit(slotR, pack, &streamParam, 1); + slotL->streamId = streamId; + slotR->streamId = -1; + slotL->slotL = chanR; + slotR->slotR = chanL; + if ((flag & MSM_STREAMPARAM_FADESPEED) && param->fadeSpeed != 0) { + slotL->fadeMaxTime = slotR->fadeMaxTime = -param->fadeSpeed / 15; + slotL->fadeTime = slotR->fadeTime = 0; + slotL->volFade = slotR->volFade = 0; } msmSysIrqEnable(); - if (temp_r3_3 == 0) { + if (sizeL == 0) { return 0; } - if (var_r29 & MSM_STREAMPARAM_PAUSE) { - temp_r25->unk3C_5 = temp_r24->unk3C_5 = 1; - temp_r25->unk06 = temp_r24->unk06 = 0; - return var_r28; + if (flag & MSM_STREAMPARAM_PAUSE) { + slotL->pauseF = slotR->pauseF = 1; + slotL->status = slotR->status = 0; + return chanL; } - if (DVDFastOpen(StreamInfo.unk0C, &temp_r25->unk70) != 1) { + if (DVDFastOpen(StreamInfo.pdtEntryNum, &slotL->file) != 1) { return MSM_ERR_OPENFAIL; } - if (DVDFastOpen(StreamInfo.unk0C, &temp_r24->unk70) != 1) { - DVDClose(&temp_r25->unk70); + if (DVDFastOpen(StreamInfo.pdtEntryNum, &slotR->file) != 1) { + DVDClose(&slotL->file); return MSM_ERR_OPENFAIL; } - temp_r25->unk4C += temp_r3_3; - temp_r24->unk4C += temp_r3_4; - temp_r25->unk3C_3 = 1; - DVDReadAsync(&temp_r25->unk70, temp_r25->unk30, temp_r3_3, temp_r25->unk48 + (temp_r25->unk4C - temp_r3_3), msmStreamDvdCallback); - temp_r24->unk3C_3 = 1; - DVDReadAsync(&temp_r24->unk70, temp_r24->unk30, temp_r3_4, temp_r24->unk48 + (temp_r24->unk4C - temp_r3_4), msmStreamDvdCallback); - return var_r28; + slotL->streamPos += sizeL; + slotR->streamPos += sizeR; + slotL->readBusyF = 1; + DVDReadAsync(&slotL->file, slotL->streamBuf, sizeL, slotL->streamBaseOfs + (slotL->streamPos - sizeL), msmStreamDvdCallback); + slotR->readBusyF = 1; + DVDReadAsync(&slotR->file, slotR->streamBuf, sizeR, slotR->streamBaseOfs + (slotR->streamPos - sizeR), msmStreamDvdCallback); + return chanL; } -s32 msmStreamPackStartMono(s32 arg0, MSM_STREAMPARAM* arg1, s32 arg2) { - s32 var_r30; - s32 var_r29; - u32 temp_r3_2; - StructSlotInitArg2 sp18; - msmStreamUnk20Struct* temp_r27; - StructSlotInitArg1* temp_r25; +static s32 msmStreamPackStartMono(s32 streamId, MSM_STREAMPARAM *param, s32 sampleOfs) { + s32 flag; + s32 chan; + u32 size; + STREAM_PARAM streamParam; + MSM_STREAM_SLOT* slot; + MSM_STREAM_PACK* pack; - var_r30 = (arg1 != NULL) ? arg1->flag : 0; - if (var_r30 & MSM_STREAMPARAM_CHAN) { - var_r29 = arg1->chan; - if (var_r29 < 0 || var_r29 >= StreamInfo.unk44) { - return MSM_ERR_6E; + flag = (param != NULL) ? param->flag : 0; + if (flag & MSM_STREAMPARAM_CHAN) { + chan = param->chan; + if (chan < 0 || chan >= StreamInfo.header.chanMax) { + return MSM_ERR_CHANLIMIT; } - if (msmStreamInline01(&StreamInfo.unk20[var_r29])) { - return MSM_ERR_6E; + if (msmStreamIsPlay(&StreamInfo.slot[chan])) { + return MSM_ERR_CHANLIMIT; } } else { - for (var_r29 = 0; var_r29 < StreamInfo.unk44; var_r29++) { - if (!msmStreamInline01(&StreamInfo.unk20[var_r29])) { + for (chan = 0; chan < StreamInfo.header.chanMax; chan++) { + if (!msmStreamIsPlay(&StreamInfo.slot[chan])) { break; } } - if (var_r29 == StreamInfo.unk44) { - return MSM_ERR_6E; + if (chan == StreamInfo.header.chanMax) { + return MSM_ERR_CHANLIMIT; } } - temp_r27 = &StreamInfo.unk20[var_r29]; - temp_r25 = (StructSlotInitArg1*) ((u32) StreamInfo.unk18 + (StreamInfo.unk14[arg0] - StreamInfo.unk58)); - sp18.unk00 = (var_r30 & MSM_STREAMPARAM_VOL) ? arg1->vol : 0x7F; - sp18.unk01 = (var_r30 & MSM_STREAMPARAM_PAN) ? arg1->pan : 0x40; - sp18.unk02 = (var_r30 & MSM_STREAMPARAM_SPAN) ? arg1->span : (s32) temp_r25->unk03; - sp18.unk03 = (var_r30 & MSM_STREAMPARAM_AUXA) ? arg1->auxA : (s32) temp_r25->unk04; - sp18.unk04 = (var_r30 & MSM_STREAMPARAM_AUXB) ? arg1->auxB : (s32) temp_r25->unk05; - sp18.unk08 = arg2; + slot = &StreamInfo.slot[chan]; + pack = (MSM_STREAM_PACK*) ((u32) StreamInfo.streamPackFlag + (StreamInfo.streamPackList[streamId] - StreamInfo.header.streamPackOfs)); + streamParam.vol = (flag & MSM_STREAMPARAM_VOL) ? param->vol : 127; + streamParam.pan = (flag & MSM_STREAMPARAM_PAN) ? param->pan : 64; + streamParam.span = (flag & MSM_STREAMPARAM_SPAN) ? param->span : (s32) pack->span; + streamParam.auxA = (flag & MSM_STREAMPARAM_AUXA) ? param->auxA : (s32) pack->auxA; + streamParam.auxB = (flag & MSM_STREAMPARAM_AUXB) ? param->auxB : (s32) pack->auxB; + streamParam.sampleOfs = sampleOfs; msmSysIrqDisable(); - temp_r3_2 = msmStreamSlotInit(temp_r27, temp_r25, &sp18, 0); - temp_r27->unk04 = arg0; - if ((var_r30 & MSM_STREAMPARAM_FADESPEED) && arg1->fadeSpeed != 0) { - temp_r27->unk24 = -arg1->fadeSpeed / 15; - temp_r27->unk28 = 0; - temp_r27->unk0A = 0; + size = msmStreamSlotInit(slot, pack, &streamParam, 0); + slot->streamId = streamId; + if ((flag & MSM_STREAMPARAM_FADESPEED) && param->fadeSpeed != 0) { + slot->fadeMaxTime = -param->fadeSpeed / 15; + slot->fadeTime = 0; + slot->volFade = 0; } msmSysIrqEnable(); - if (temp_r3_2 == 0) { + if (size == 0) { return 0; } - if (var_r30 & MSM_STREAMPARAM_PAUSE) { - temp_r27->unk3C_5 = 1; - temp_r27->unk06 = 0; - return var_r29; + if (flag & MSM_STREAMPARAM_PAUSE) { + slot->pauseF = TRUE; + slot->status = 0; + return chan; } - if (DVDFastOpen(StreamInfo.unk0C, &temp_r27->unk70) != 1) { + if (DVDFastOpen(StreamInfo.pdtEntryNum, &slot->file) != 1) { return MSM_ERR_OPENFAIL; } - temp_r27->unk4C += temp_r3_2; - temp_r27->unk3C_3 = 1; - DVDReadAsync(&temp_r27->unk70, temp_r27->unk30, temp_r3_2, temp_r27->unk48 + (temp_r27->unk4C - temp_r3_2), msmStreamDvdCallback); - return var_r29; + slot->streamPos += size; + slot->readBusyF = TRUE; + DVDReadAsync(&slot->file, slot->streamBuf, size, slot->streamBaseOfs + (slot->streamPos - size), msmStreamDvdCallback); + return chan; } -// Note: identical to msmStreamInline05. -void msmStreamSlotOff(s32 streamNo) { - msmStreamUnk20Struct* temp_r31; +// Note: identical to msmStreamOff. +static void msmStreamSlotOff(s32 streamNo) { + MSM_STREAM_SLOT* slot; - temp_r31 = &StreamInfo.unk20[streamNo]; - switch (temp_r31->unk06) { + slot = &StreamInfo.slot[streamNo]; + switch (slot->status) { case 2: - temp_r31->unk3C_4 = 1; - temp_r31->unk06 = 5; + slot->shutdownF = 1; + slot->status = 5; break; case 3: - msmStreamInline00(streamNo); + msmStreamClose(streamNo); break; case 4: - if (temp_r31->unk3C_2 == 0) { - sndStreamMixParameterEx(temp_r31->unk00, 0, 0x40, 0, 0, 0); - temp_r31->unk3C_2 = 1; - temp_r31->unk06 = 5; + if (slot->streamOffF == 0) { + sndStreamMixParameterEx(slot->stid, 0, 64, 0, 0, 0); + slot->streamOffF = TRUE; + slot->status = 5; } break; } } -static inline void msmStreamInline06(s32 streamNo) { - msmStreamUnk20Struct* temp_r25; +static void msmStreamShutdown(s32 streamNo) { + MSM_STREAM_SLOT* slot; - temp_r25 = &StreamInfo.unk20[streamNo]; + slot = &StreamInfo.slot[streamNo]; msmStreamSlotOff(streamNo); - sndStreamDeactivate(temp_r25->unk00); - if (temp_r25->unk3C_3 == 0) { - msmStreamInline00(streamNo); + sndStreamDeactivate(slot->stid); + if (slot->readBusyF == 0) { + msmStreamClose(streamNo); } else { - temp_r25->unk3C_4 = 1; + slot->shutdownF = 1; } } -static void msmStreamData(s32 arg0) { - s32 temp_r5; - u32 var_r28; - void* var_r27; - msmStreamUnk20Struct* temp_r26; - s32 var_r24; +static void msmStreamData(s32 streamNo) { + s32 dataSize; + u32 readSize; + void* dataPtr; + MSM_STREAM_SLOT* slot; + s32 off1; - temp_r26 = &StreamInfo.unk20[arg0]; - var_r28 = temp_r5 = temp_r26->unk34 / 2; - var_r27 = (temp_r26->unk3C_0 != 0) - ? (void*) ((u32) temp_r26->unk30 + temp_r5) - : temp_r26->unk30; - temp_r26->unk58 = var_r24 = 0; - if (temp_r26->unk4C + var_r28 > temp_r26->unk50) { - if (temp_r26->unk50 > temp_r26->unk4C) { - var_r28 = temp_r26->unk50 - temp_r26->unk4C; - temp_r26->unk58 = temp_r5 - var_r28; - temp_r26->unk5C = (void*) ((u32) var_r27 + var_r28); - } else if (temp_r26->unk07 != 0) { - temp_r26->unk4C = temp_r26->unk60; + slot = &StreamInfo.slot[streamNo]; + readSize = dataSize = slot->streamBufSize / 2; + dataPtr = (slot->bufNo != 0) + ? (void*) ((u32) slot->streamBuf + dataSize) + : slot->streamBuf; + slot->streamReadSize = off1 = 0; + if (slot->streamPos + readSize > slot->loopLen) { + if (slot->loopLen > slot->streamPos) { + readSize = slot->loopLen - slot->streamPos; + slot->streamReadSize = dataSize - readSize; + slot->streamReadBuf = (void*) ((u32) dataPtr + readSize); + } else if (slot->stereoF != 0) { + slot->streamPos = slot->streamPosStart; } else { - memset(var_r27, 0, temp_r5); - if (temp_r26->unk3C_0 != 0) { - var_r24 = temp_r26->unk38 / 2; + memset(dataPtr, 0, dataSize); + if (slot->bufNo != 0) { + off1 = slot->streamFrq / 2; } - sndStreamARAMUpdate(temp_r26->unk00, var_r24, temp_r26->unk38 / 2, 0, 0); - var_r28 = 0; + sndStreamARAMUpdate(slot->stid, off1, slot->streamFrq / 2, 0, 0); + readSize = 0; } } - if (var_r28 != 0) { - if (DVDGetCommandBlockStatus(&temp_r26->unk70.cb) != 0) { - if (temp_r26->unk3C_6 != 1) { - temp_r26->unk3C_6 = 1; - sndStreamMixParameterEx(temp_r26->unk00, 0, 0x40, 0x40, 0, 0); - memset(temp_r26->unk30, 0, temp_r26->unk34); - sndStreamARAMUpdate(temp_r26->unk00, 0, temp_r26->unk38, 0, 0); + if (readSize != 0) { + if (DVDGetCommandBlockStatus(&slot->file.cb) != 0) { + if (slot->updateAramF != TRUE) { + slot->updateAramF = TRUE; + sndStreamMixParameterEx(slot->stid, 0, 64, 64, 0, 0); + memset(slot->streamBuf, 0, slot->streamBufSize); + sndStreamARAMUpdate(slot->stid, 0, slot->streamFrq, 0, 0); } } else { - if (temp_r26->unk3C_6 == 1) { - temp_r26->unk3C_6 = 0; - msmStreamInline04(temp_r26); + if (slot->updateAramF == TRUE) { + slot->updateAramF = FALSE; + msmStreamUpdateBaseParam(slot); } - temp_r26->unk4C += var_r28; - temp_r26->unk3C_3 = 1; - DVDReadAsync(&temp_r26->unk70, var_r27, var_r28, temp_r26->unk48 + (temp_r26->unk4C - var_r28), msmStreamDvdCallback); + slot->streamPos += readSize; + slot->readBusyF = 1; + DVDReadAsync(&slot->file, dataPtr, readSize, slot->streamBaseOfs + (slot->streamPos - readSize), msmStreamDvdCallback); } - } else if (temp_r26->unk3C_1 != 0) { - temp_r26->unk3C_1= 0; + } else if (slot->firstF != 0) { + slot->firstF= 0; } else { - msmStreamInline06(arg0); + msmStreamShutdown(streamNo); } - temp_r26->unk3C_0 ^= 1; + slot->bufNo ^= 1; } -static inline BOOL msmStreamInline02(s32 streamNo) { - msmStreamUnk20Struct* temp_ptr; +static BOOL msmStreamActivateStream(s32 streamNo) { + MSM_STREAM_SLOT* slot; - temp_ptr = &StreamInfo.unk20[streamNo]; - msmStreamSetParamSub(temp_ptr); - sndStreamFrq(temp_ptr->unk00, temp_ptr->unk40); - sndStreamADPCMParameter(temp_ptr->unk00, temp_ptr->unk44); - sndStreamARAMUpdate(temp_ptr->unk00, 0, temp_ptr->unk38 / 2, 0, 0); - if (sndStreamActivate(temp_ptr->unk00)) { - temp_ptr->unk06 = 4; + slot = &StreamInfo.slot[streamNo]; + msmStreamSetParamSub(slot); + sndStreamFrq(slot->stid, slot->frq); + sndStreamADPCMParameter(slot->stid, slot->adpcmInfo); + sndStreamARAMUpdate(slot->stid, 0, slot->streamFrq / 2, 0, 0); + if (sndStreamActivate(slot->stid)) { + slot->status = 4; msmStreamData(streamNo); return TRUE; } else { - msmStreamInline00(streamNo); + msmStreamClose(streamNo); return FALSE; } } -static void msmStreamDvdCallback(s32 arg0, DVDFileInfo* arg1) { - s32 var_r28; - msmStreamUnk20Struct* temp_r27; +static void msmStreamDvdCallback(s32 result, DVDFileInfo* fileInfo) { + s32 readSize; + MSM_STREAM_SLOT* slot; - for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { - if (&StreamInfo.unk20[var_r28].unk70 == arg1) { + for (readSize = 0; readSize < StreamInfo.header.chanMax; readSize++) { + if (&StreamInfo.slot[readSize].file == fileInfo) { break; } } - if (var_r28 == StreamInfo.unk44) { + if (readSize == StreamInfo.header.chanMax) { return; } - temp_r27 = &StreamInfo.unk20[var_r28]; - temp_r27->unk3C_3 = 0; - if (temp_r27->unk3C_4 != 0) { - temp_r27->unk3C_4 = 0; - msmStreamInline00(var_r28); + slot = &StreamInfo.slot[readSize]; + slot->readBusyF = 0; + if (slot->shutdownF != 0) { + slot->shutdownF = 0; + msmStreamClose(readSize); return; } - if (DVDGetCommandBlockStatus(&arg1->cb) == 0) { - switch (temp_r27->unk06) { + if (DVDGetCommandBlockStatus(&fileInfo->cb) == 0) { + switch (slot->status) { case 2: - if (temp_r27->unk0E != -1) { - if (StreamInfo.unk20[temp_r27->unk0E].unk06 != 3) { - temp_r27->unk06 = 3; + if (slot->slotL != -1) { + if (StreamInfo.slot[slot->slotL].status != 3) { + slot->status = 3; break; } - if (!msmStreamInline02(temp_r27->unk0E)) { - temp_r27->unk0E = -1; + if (!msmStreamActivateStream(slot->slotL)) { + slot->slotL = -1; } } - if (temp_r27->unk0F != -1) { - if (StreamInfo.unk20[temp_r27->unk0F].unk06 != 3) { - temp_r27->unk06 = 3; + if (slot->slotR != -1) { + if (StreamInfo.slot[slot->slotR].status != 3) { + slot->status = 3; break; } - if (!msmStreamInline02(temp_r27->unk0F)) { - temp_r27->unk0F = -1; + if (!msmStreamActivateStream(slot->slotR)) { + slot->slotR = -1; } } - if (!msmStreamInline02(var_r28)) { - if (temp_r27->unk0E != -1) { - StreamInfo.unk20[temp_r27->unk0E].unk0F = -1; + if (!msmStreamActivateStream(readSize)) { + if (slot->slotL != -1) { + StreamInfo.slot[slot->slotL].slotR = -1; } - if (temp_r27->unk0F != -1) { - StreamInfo.unk20[temp_r27->unk0F].unk0E = -1; + if (slot->slotR != -1) { + StreamInfo.slot[slot->slotR].slotL = -1; } } break; case 4: - if (temp_r27->unk4C >= temp_r27->unk50) { - if (temp_r27->unk07 != 0) { - temp_r27->unk4C = temp_r27->unk60; - if (temp_r27->unk58 != 0) { - temp_r27->unk3C_3 = 1; - DVDReadAsync(arg1, temp_r27->unk5C, temp_r27->unk58, temp_r27->unk48 + temp_r27->unk4C, msmStreamDvdCallback2); - temp_r27->unk4C += temp_r27->unk58; + if (slot->streamPos >= slot->loopLen) { + if (slot->stereoF != 0) { + slot->streamPos = slot->streamPosStart; + if (slot->streamReadSize != 0) { + slot->readBusyF = 1; + DVDReadAsync(fileInfo, slot->streamReadBuf, slot->streamReadSize, slot->streamBaseOfs + slot->streamPos, msmStreamDvdCallback2); + slot->streamPos += slot->streamReadSize; break; } - } else if (temp_r27->unk58 != 0) { - memset(temp_r27->unk5C, 0, temp_r27->unk58); + } else if (slot->streamReadSize != 0) { + memset(slot->streamReadBuf, 0, slot->streamReadSize); } } - sndStreamARAMUpdate(temp_r27->unk00, (temp_r27->unk3C_0 != 0) ? 0 : temp_r27->unk38 / 2, temp_r27->unk38 / 2, 0, 0); + sndStreamARAMUpdate(slot->stid, (slot->bufNo != 0) ? 0 : slot->streamFrq / 2, slot->streamFrq / 2, 0, 0); break; case 5: - temp_r27->unk3C_4 = 0; - msmStreamInline00(var_r28); + slot->shutdownF = 0; + msmStreamClose(readSize); break; } } else { - if (temp_r27->unk06 == 4) { - sndStreamDeactivate(temp_r27->unk00); + if (slot->status == 4) { + sndStreamDeactivate(slot->stid); } - msmStreamInline00(var_r28); - if (temp_r27->unk0E != -1) { - StreamInfo.unk20[temp_r27->unk0E].unk0F = -1; + msmStreamClose(readSize); + if (slot->slotL != -1) { + StreamInfo.slot[slot->slotL].slotR = -1; } - if (temp_r27->unk0F != -1) { - StreamInfo.unk20[temp_r27->unk0F].unk0E = -1; + if (slot->slotR != -1) { + StreamInfo.slot[slot->slotR].slotL = -1; } } } -static void msmStreamDvdCallback2(s32 arg0, DVDFileInfo* arg1) { - msmStreamUnk20Struct* var_r30; - s32 var_r28; +static void msmStreamDvdCallback2(s32 result, DVDFileInfo* fileInfo) { + MSM_STREAM_SLOT* slot; + s32 readSize; - for (var_r28 = 0; var_r28 < StreamInfo.unk44; var_r28++) { - var_r30 = &StreamInfo.unk20[var_r28]; - if (&var_r30->unk70 == arg1) { + for (readSize = 0; readSize < StreamInfo.header.chanMax; readSize++) { + slot = &StreamInfo.slot[readSize]; + if (&slot->file == fileInfo) { break; } } - if (var_r28 == StreamInfo.unk44) { + if (readSize == StreamInfo.header.chanMax) { return; } - var_r30->unk3C_3 = 0; - if (var_r30->unk3C_4 != 0) { - var_r30->unk3C_4 = 0; - msmStreamInline00(var_r28); - } else if (DVDGetCommandBlockStatus(&arg1->cb) == 0) { - sndStreamARAMUpdate(var_r30->unk00, (var_r30->unk3C_0 != 0) ? 0 : var_r30->unk38 / 2, var_r30->unk38 / 2, 0, 0); + slot->readBusyF = FALSE; + if (slot->shutdownF != 0) { + slot->shutdownF = FALSE; + msmStreamClose(readSize); + } else if (DVDGetCommandBlockStatus(&fileInfo->cb) == 0) { + sndStreamARAMUpdate(slot->stid, (slot->bufNo != 0) ? 0 : slot->streamFrq / 2, slot->streamFrq / 2, 0, 0); } else { - if (var_r30->unk06 == 4) { - sndStreamDeactivate(var_r30->unk00); + if (slot->status == 4) { + sndStreamDeactivate(slot->stid); } - msmStreamInline00(var_r28); - if (var_r30->unk0E != -1) { - StreamInfo.unk20[var_r30->unk0E].unk0F = -1; + msmStreamClose(readSize); + if (slot->slotL != -1) { + StreamInfo.slot[slot->slotL].slotR = -1; } - if (var_r30->unk0F != -1) { - StreamInfo.unk20[var_r30->unk0F].unk0E = -1; + if (slot->slotR != -1) { + StreamInfo.slot[slot->slotR].slotL = -1; } } } static u32 msmStreamUpdateFunc(void* buffer1, u32 len1, void* buffer2, u32 len2, u32 user) { - msmStreamUnk20Struct* temp_r31; - s32 temp_r4; - s32 temp_r0; - s32 var_r3; + MSM_STREAM_SLOT* slot; + s32 len3; + s32 updateLen; + s32 len; - temp_r31 = &StreamInfo.unk20[user]; - if (temp_r31->unk3C_2 != 0) { - msmStreamInline06(user); + slot = &StreamInfo.slot[user]; + if (slot->streamOffF != 0) { + msmStreamShutdown(user); return 0; } - temp_r0 = temp_r31->unk38 / 2; - if (len1 < temp_r0) { - var_r3 = 0; - temp_r31->unk64 = temp_r31->unk68 + (len1 - temp_r31->unk6C); + updateLen = slot->streamFrq / 2; + if (len1 < updateLen) { + len = 0; + slot->unk64 = slot->unk68 + (len1 - slot->unk6C); } else { msmStreamData(user); - var_r3 = temp_r0; - temp_r4 = temp_r31->unk68 + (temp_r0 - temp_r31->unk6C); - temp_r31->unk68 = temp_r4; - temp_r31->unk64 = temp_r4; - temp_r31->unk6C = 0; + len = updateLen; + len3 = slot->unk68 + (updateLen - slot->unk6C); + slot->unk68 = len3; + slot->unk64 = len3; + slot->unk6C = 0; } - if (temp_r31->unk64 >= temp_r31->unk54) { - if (temp_r31->unk07 != 0) { - temp_r31->unk68 = 0; - temp_r31->unk64 -= temp_r31->unk54; - if (len1 < temp_r0) { - temp_r31->unk6C = len1 - temp_r31->unk64; + if (slot->unk64 >= slot->loopEndOfs) { + if (slot->stereoF != 0) { + slot->unk68 = 0; + slot->unk64 -= slot->loopEndOfs; + if (len1 < updateLen) { + slot->unk6C = len1 - slot->unk64; } } else { - temp_r31->unk3C_2 = 1; - temp_r31->unk3C_5 = 0; + slot->streamOffF = 1; + slot->pauseF = 0; } } - return var_r3; + return len; } -static s32 msmStreamSlotInit(msmStreamUnk20Struct* arg0, StructSlotInitArg1* arg1, StructSlotInitArg2* arg2, s32 arg3) { - StructSlotInitInnerArg1* temp_r10; +static s32 msmStreamSlotInit(MSM_STREAM_SLOT *slot, MSM_STREAM_PACK* pack, STREAM_PARAM* param, s32 no) { + MSM_STREAM *stream; s32 temp_r3; - s32 var_r30; + s32 ret; - temp_r10 = &arg1->unk10[arg3]; - arg0->unk08 = arg1->unk01; - arg0->unk09 = arg2->unk00; - arg0->unk0A = arg0->unk0B = 0x7F; - arg0->unk0C = arg1->unk02; - arg0->unk0D = arg2->unk01; - arg0->unk2C = arg2->unk02; - arg0->unk2D = arg2->unk03; - arg0->unk2E = arg2->unk04; - arg0->unk07 = (arg1->unk00 >> 1) & 1; - arg0->unk48 = temp_r10->unk00; - arg0->unk60 = (arg1->unk0C >> 1) & ~7; - arg0->unk40 = arg1->unk06; - arg0->unk44 = &StreamInfo.unk1C[temp_r10->unk04]; - arg0->unk24 = 0; - arg0->unk18 = 0; - arg0->unk14 = 0; - arg0->unk10 = 0; - arg0->unk3C_1 = 1; - arg0->unk3C_2 = 0; - arg0->unk3C_4 = 0; - arg0->unk3C_5 = 0; - arg0->unk3C_6 = 0; - arg0->unk3C_0 = 1; - arg0->unk34 = (StreamInfo.unk48 * StreamInfo.unk4C * 8 / 14 + 0x3F) & ~0x3F; - if (arg0->unk34 > StreamInfo.unk04) { - arg0->unk34 = StreamInfo.unk04; + stream = &pack->stream[no]; + slot->volBase = pack->vol; + slot->vol = param->vol; + slot->volFade = slot->pauseVol = 127; + slot->panBase = pack->pan; + slot->pan = param->pan; + slot->span = param->span; + slot->auxA = param->auxA; + slot->auxB = param->auxB; + slot->stereoF = (pack->flag >> 1) & 1; + slot->streamBaseOfs = stream->sampleOfs; + slot->streamPosStart = (pack->loopOfsStart >> 1) & ~7; + slot->frq = pack->frq; + slot->adpcmInfo = &StreamInfo.adpcmParam[stream->adpcmParamIdx]; + slot->fadeMaxTime = 0; + slot->pauseTimeMax = 0; + slot->pauseTime = 0; + slot->pauseLen = 0; + slot->firstF = 1; + slot->streamOffF = 0; + slot->shutdownF = 0; + slot->pauseF = 0; + slot->updateAramF = 0; + slot->bufNo = 1; + slot->streamBufSize = (StreamInfo.header.sampleFrq * StreamInfo.header.maxBufs * SND_STREAM_ADPCM_BLKBYTES / SND_STREAM_ADPCM_BLKSIZE + 0x3F) & ~0x3F; + if (slot->streamBufSize > StreamInfo.bufSize) { + slot->streamBufSize = StreamInfo.bufSize; } - arg0->unk38 = (arg0->unk34 / 8) * 14; - arg0->unk50 = (arg1->unk08 >> 1) & ~0x1F; - arg0->unk54 = (arg0->unk50 / 8) * 14; - arg0->unk64 = arg0->unk68 = 0; - arg0->unk6C = 0; - arg0->unk0E = -1; - arg0->unk0F = -1; - arg0->unk4C = arg2->unk08; - var_r30 = arg0->unk34 / 2; - if ((temp_r3 = arg0->unk50 - arg0->unk4C) < arg0->unk34 / 2) { - var_r30 = temp_r3; - arg0->unk58 = arg0->unk34 / 2 - temp_r3; - arg0->unk5C = (void*) ((u32) arg0->unk30 + temp_r3); - memset(arg0->unk5C, 0, arg0->unk58); + slot->streamFrq = (slot->streamBufSize / SND_STREAM_ADPCM_BLKBYTES) * SND_STREAM_ADPCM_BLKSIZE; + slot->loopLen = (pack->loopOfsEnd >> 1) & ~0x1F; + slot->loopEndOfs = (slot->loopLen / SND_STREAM_ADPCM_BLKBYTES) * SND_STREAM_ADPCM_BLKSIZE; + slot->unk64 = slot->unk68 = 0; + slot->unk6C = 0; + slot->slotL = -1; + slot->slotR = -1; + slot->streamPos = param->sampleOfs; + ret = slot->streamBufSize / 2; + if ((temp_r3 = slot->loopLen - slot->streamPos) < slot->streamBufSize / 2) { + ret = temp_r3; + slot->streamReadSize = slot->streamBufSize / 2 - temp_r3; + slot->streamReadBuf = (void*) ((u32) slot->streamBuf + temp_r3); + memset(slot->streamReadBuf, 0, slot->streamReadSize); } - arg0->unk06 = 2; - return var_r30; + slot->status = 2; + return ret; } diff --git a/src/msm/msmsys.c b/src/msm/msmsys.c index 6dcd4ac9..916e03b0 100644 --- a/src/msm/msmsys.c +++ b/src/msm/msmsys.c @@ -5,233 +5,236 @@ #include "msm/msmse.h" #include "msm/msmstream.h" -static sysData sys; +static MSM_SYS sys; static void msmSysServer(void) { if (sndIsInstalled() == 1) { - if (--sys.unk4F8 == 0) { - sys.unk4F8 = 3; + if (--sys.timer == 0) { + sys.timer = 3; msmMusPeriodicProc(); msmSePeriodicProc(); msmStreamPeriodicProc(); } } - sys.unk4F4(); + sys.oldAIDCallback(); } -static s32 msmSysSetAuxParam(s32 arg0, s32 arg1) +static s32 msmSysSetAuxParam(s32 auxA, s32 auxB) { s32 unused_1[2]; - SND_AUX_CALLBACK sp20[2]; + SND_AUX_CALLBACK auxcb[2]; s32 unused_2[2]; - unkSubStruct *temp_r4_2; - UnkSndAuxUnion *temp_r3; - u32 var_r0; - s32 var_r23; + MSM_AUXPARAM *auxParam; + MSM_AUX *aux; + u32 result; + s32 i; - if (sys.unk18[0] != -2 && arg0 >= 0) { - sys.unk18[0] = arg0; + if (sys.auxParamNo[0] != MSM_AUXNO_NULL && auxA >= 0) { + sys.auxParamNo[0] = auxA; } - if (sys.unk18[1] != -2 && arg1 >= 0) { - sys.unk18[1] = arg1; + if (sys.auxParamNo[1] != MSM_AUXNO_NULL && auxB >= 0) { + sys.auxParamNo[1] = auxB; } - if (sys.unk18[0] < 0 && sys.unk18[1] < 0) { + if (sys.auxParamNo[0] < 0 && sys.auxParamNo[1] < 0) { return 0; } - for (var_r23 = 0; var_r23 < 2; var_r23++) { - if (sys.unk18[var_r23] < 0) { - sp20[var_r23] = NULL; + for (i = 0; i < 2; i++) { + if (sys.auxParamNo[i] < 0) { + auxcb[i] = NULL; continue; } - temp_r4_2 = &sys.unk14[sys.unk18[var_r23]]; - temp_r3 = &sys.unk1C[var_r23]; - switch (temp_r4_2->unk0) { - case 0: - sp20[var_r23] = sndAuxCallbackReverbHI; - temp_r3->revHi.tempDisableFX = temp_r4_2->rev.tempDisableFX; - temp_r3->revHi.coloration = temp_r4_2->rev.coloration; - temp_r3->revHi.mix = temp_r4_2->rev.mix; - temp_r3->revHi.time = temp_r4_2->rev.time; - temp_r3->revHi.damping = temp_r4_2->rev.damping; - temp_r3->revHi.preDelay = temp_r4_2->rev.preDelay; - temp_r3->revHi.crosstalk = temp_r4_2->rev.crosstalk; - var_r0 = sndAuxCallbackPrepareReverbHI(&temp_r3->revHi); + auxParam = &sys.auxParam[sys.auxParamNo[i]]; + aux = &sys.aux[i]; + switch (auxParam->type) { + case MSM_AUX_REVERBHI: + auxcb[i] = sndAuxCallbackReverbHI; + aux->revHi.tempDisableFX = auxParam->revHi.tempDisableFX; + aux->revHi.coloration = auxParam->revHi.coloration; + aux->revHi.mix = auxParam->revHi.mix; + aux->revHi.time = auxParam->revHi.time; + aux->revHi.damping = auxParam->revHi.damping; + aux->revHi.preDelay = auxParam->revHi.preDelay; + aux->revHi.crosstalk = auxParam->revHi.crosstalk; + result = sndAuxCallbackPrepareReverbHI(&aux->revHi); break; - case 1: - sp20[var_r23] = sndAuxCallbackReverbSTD; - temp_r3->revStd.tempDisableFX = temp_r4_2->rev.tempDisableFX; - temp_r3->revStd.coloration = temp_r4_2->rev.coloration; - temp_r3->revStd.mix = temp_r4_2->rev.mix; - temp_r3->revStd.time = temp_r4_2->rev.time; - temp_r3->revStd.damping = temp_r4_2->rev.damping; - temp_r3->revStd.preDelay = temp_r4_2->rev.preDelay; - var_r0 = sndAuxCallbackPrepareReverbSTD(&temp_r3->revStd); + + case MSM_AUX_REVERBSTD: + auxcb[i] = sndAuxCallbackReverbSTD; + aux->revStd.tempDisableFX = auxParam->revStd.tempDisableFX; + aux->revStd.coloration = auxParam->revStd.coloration; + aux->revStd.mix = auxParam->revStd.mix; + aux->revStd.time = auxParam->revStd.time; + aux->revStd.damping = auxParam->revStd.damping; + aux->revStd.preDelay = auxParam->revStd.preDelay; + result = sndAuxCallbackPrepareReverbSTD(&aux->revStd); break; - case 2: - sp20[var_r23] = sndAuxCallbackChorus; - temp_r3->ch.baseDelay = temp_r4_2->ch.baseDelay; - temp_r3->ch.variation = temp_r4_2->ch.variation; - temp_r3->ch.period = temp_r4_2->ch.period; - var_r0 = sndAuxCallbackPrepareChorus(&temp_r3->ch); + + case MSM_AUX_CHORUS: + auxcb[i] = sndAuxCallbackChorus; + aux->chorus.baseDelay = auxParam->chorus.baseDelay; + aux->chorus.variation = auxParam->chorus.variation; + aux->chorus.period = auxParam->chorus.period; + result = sndAuxCallbackPrepareChorus(&aux->chorus); break; - case 3: - sp20[var_r23] = sndAuxCallbackDelay; - temp_r3->delay.delay[0] = temp_r4_2->delay.delay[0]; - temp_r3->delay.feedback[0] = temp_r4_2->delay.feedback[0]; - temp_r3->delay.output[0] = temp_r4_2->delay.output[0]; - temp_r3->delay.delay[1] = temp_r4_2->delay.delay[1]; - temp_r3->delay.feedback[1] = temp_r4_2->delay.feedback[1]; - temp_r3->delay.output[1] = temp_r4_2->delay.output[1]; - temp_r3->delay.delay[2] = temp_r4_2->delay.delay[2]; - temp_r3->delay.feedback[2] = temp_r4_2->delay.feedback[2]; - temp_r3->delay.output[2] = temp_r4_2->delay.output[2]; - var_r0 = sndAuxCallbackPrepareDelay(&temp_r3->delay); + + case MSM_AUX_DELAY: + auxcb[i] = sndAuxCallbackDelay; + aux->delay.delay[0] = auxParam->delay.delay[0]; + aux->delay.feedback[0] = auxParam->delay.feedback[0]; + aux->delay.output[0] = auxParam->delay.output[0]; + aux->delay.delay[1] = auxParam->delay.delay[1]; + aux->delay.feedback[1] = auxParam->delay.feedback[1]; + aux->delay.output[1] = auxParam->delay.output[1]; + aux->delay.delay[2] = auxParam->delay.delay[2]; + aux->delay.feedback[2] = auxParam->delay.feedback[2]; + aux->delay.output[2] = auxParam->delay.output[2]; + result = sndAuxCallbackPrepareDelay(&aux->delay); break; } - if (var_r0 == 0) { - return 1; + if (result == FALSE) { + return TRUE; } } - sndSetAuxProcessingCallbacks(0, sp20[0], &sys.unk1C[0], 0xFF, 0, sp20[1], &sys.unk1C[1], 0xFF, 0); - return 0; + sndSetAuxProcessingCallbacks(0, auxcb[0], &sys.aux[0], 0xFF, 0, auxcb[1], &sys.aux[1], 0xFF, 0); + return FALSE; } static s32 msmSysLoadBaseGroup(void *buf) { - DVDFileInfo spC; - s32 var_r28; - unkStruct3 *temp_r27; - unkStruct4 *temp_r25; + DVDFileInfo file; + s32 i; + MSM_GRP_HEAD *grpData; + MSM_GRP_INFO *grpInfo; - if (msmFioOpen(sys.unk0, &spC) != 1) { + if (msmFioOpen(sys.msmEntryNum, &file) != TRUE) { return MSM_ERR_OPENFAIL; } - for (var_r28 = 0; var_r28 < sys.unk3F4; var_r28++) { - temp_r27 = sys.unk3F8[var_r28]; - temp_r25 = &sys.unk3EC[sys.unk10->unk29[var_r28]]; - if (msmFioRead(&spC, temp_r27, temp_r25->unk8, temp_r25->unk4 + sys.unkC->unk38) < 0) { - msmFioClose(&spC); + for(i = 0; i < sys.baseGrpNum; i++) { + grpData = sys.grpData[i]; + grpInfo = &sys.grpInfo[sys.info->baseGrp[i]]; + if (msmFioRead(&file, grpData, grpInfo->dataSize, grpInfo->dataOfs + sys.header->grpDataOfs) < 0) { + msmFioClose(&file); return MSM_ERR_READFAIL; } - if (msmFioRead(&spC, buf, temp_r25->unk10, temp_r25->unkC + sys.unkC->unk40) < 0) { - msmFioClose(&spC); + if (msmFioRead(&file, buf, grpInfo->sampSize, grpInfo->sampOfs + sys.header->sampOfs) < 0) { + msmFioClose(&file); return MSM_ERR_READFAIL; } - if (!sndPushGroup((void*) (temp_r27->unk4 + (u32) temp_r27), temp_r25->unk0, buf, - (void*) (temp_r27->unk8 + (u32) temp_r27), (void*) (temp_r27->unk0 + (u32) temp_r27))) + if (!sndPushGroup((void*) (grpData->projOfs + (u32) grpData), grpInfo->gid, buf, + (void*) (grpData->sdirOfs + (u32) grpData), (void*) (grpData->poolOfs + (u32) grpData))) { - msmFioClose(&spC); - return MSM_ERR_20; + msmFioClose(&file); + return MSM_ERR_GRP_FAILPUSH; } - sys.unk8 += temp_r25->unk10; + sys.aramP += grpInfo->sampSize; } - msmFioClose(&spC); + msmFioClose(&file); return 0; } -s32 msmSysSearchGroupStack(s32 arg0, s32 arg1) +s32 msmSysSearchGroupStack(s32 grpId, s32 no) { - UnkStructSys43C *var_r3; - u32 var_r5; - s32 var_r6; - s32 var_r7; - s32 var_r8; - s32 var_r9; - s32 var_r0; + MSM_GRP_STACK *stack; + u32 stackNo; + s32 i; + s32 stackNoB; + s32 stackNoA; + s32 maxNo; + s32 stackMax; - var_r8 = -1; - var_r9 = 0; - if (sys.unk3EC[arg0].unk2 == 0) { - var_r3 = sys.unk43C; - var_r0 = sys.unk434; + stackNoA = -1; + maxNo = 0; + if (sys.grpInfo[grpId].stackNo == 0) { + stack = sys.grpStackA; + stackMax = sys.grpStackAMax; } else { - var_r3 = sys.unk474; - var_r0 = sys.unk46C; + stack = sys.grpStackB; + stackMax = sys.grpStackBMax; } - for (var_r6 = 0; var_r6 < var_r0; var_r3++, var_r6++) { - if (var_r6 == arg1) { + for (i = 0; i < stackMax; stack++, i++) { + if (i == no) { continue; } - if ((var_r5 = var_r3->unk04) != 0) { - if (var_r3->unk01 == 0 && var_r5 > var_r9) { - var_r9 = var_r5; - var_r7 = -(var_r6 + 1); + if ((stackNo = stack->num) != 0) { + if (stack->baseGrpF == 0 && stackNo > maxNo) { + maxNo = stackNo; + stackNoB = -(i + 1); } } else { - var_r8 = var_r6; + stackNoA = i; } } - return (var_r8 < 0) ? var_r7 : var_r8; + return (stackNoA < 0) ? stackNoB : stackNoA; } -s32 msmSysGroupInit(DVDFileInfo *arg0) +s32 msmSysGroupInit(DVDFileInfo *file) { - s32 var_r7; - UnkStructSys43C *temp_43C; - unkStruct4 *temp_r20; + s32 i; + MSM_GRP_STACK *stack; + MSM_GRP_INFO *grpInfo; - sys.unk3DC = sys.unk10->unk3; - sys.unk3E0 = 1; - sys.unk3F4 = sys.unk10->unk28; - sys.unk434 = sys.unk10->unk9; - sys.unk435 = 0; - sys.unk436 = 0; - sys.unk46C = sys.unk10->unkA; - sys.unk46D = 0; - sys.unk46E = 0; - if ((sys.unk3EC = msmMemAlloc(sys.unkC->unk24)) == NULL) { + sys.grpMax = sys.info->grpMax; + sys.grpNum = 1; + sys.baseGrpNum = sys.info->baseGrpNum; + sys.grpStackAMax = sys.info->stackDepthA; + sys.grpStackADepth = 0; + sys.grpStackAOfs = 0; + sys.grpStackBMax = sys.info->stackDepthB; + sys.grpStackBDepth = 0; + sys.grpStackBOfs = 0; + if ((sys.grpInfo = msmMemAlloc(sys.header->grpInfoSize)) == NULL) { return MSM_ERR_OUTOFMEM; } - if (msmFioRead(arg0, sys.unk3EC, sys.unkC->unk24, sys.unkC->unk20) < 0) { + if (msmFioRead(file, sys.grpInfo, sys.header->grpInfoSize, sys.header->grpInfoOfs) < 0) { return MSM_ERR_READFAIL; } - if ((sys.unk438 = msmMemAlloc(sys.unk10->unk18 * sys.unk434)) == NULL) { + if ((sys.grpBufA = msmMemAlloc(sys.info->grpBufSizeA * sys.grpStackAMax)) == NULL) { return MSM_ERR_OUTOFMEM; } - if ((sys.unk470 = msmMemAlloc(sys.unk10->unk1C * sys.unk46C)) == NULL) { + if ((sys.grpBufB = msmMemAlloc(sys.info->grpBufSizeB * sys.grpStackBMax)) == NULL) { return MSM_ERR_OUTOFMEM; } - if (sys.unkC->unk54) { - if ((sys.unk3F0 = msmMemAlloc(sys.unkC->unk54)) == NULL) { + if (sys.header->grpSetSize) { + if ((sys.grpSet = msmMemAlloc(sys.header->grpSetSize)) == NULL) { return MSM_ERR_OUTOFMEM; } - if (msmFioRead(arg0, sys.unk3F0, sys.unkC->unk54, sys.unkC->unk50) < 0) { + if (msmFioRead(file, sys.grpSet, sys.header->grpSetSize, sys.header->grpSetOfs) < 0) { return MSM_ERR_READFAIL; } } else { - sys.unk3F0 = NULL; + sys.grpSet = NULL; } - for (var_r7 = 0; var_r7 < sys.unk434; var_r7++) { - temp_43C = &sys.unk43C[var_r7]; - temp_43C->unk00 = temp_43C->unk01 = 0; - temp_43C->unk04 = 0; - temp_43C->unk08 = (void*) ((u32) sys.unk438 + sys.unk10->unk18 * var_r7); + for (i = 0; i < sys.grpStackAMax; i++) { + stack = &sys.grpStackA[i]; + stack->grpId = stack->baseGrpF = 0; + stack->num = 0; + stack->buf = (void*) ((u32) sys.grpBufA + sys.info->grpBufSizeA * i); } - for (var_r7 = 0; var_r7 < sys.unk46C; var_r7++) { - temp_43C = &sys.unk474[var_r7]; - temp_43C->unk00 = temp_43C->unk01 = 0; - temp_43C->unk04 = 0; - temp_43C->unk08 = (void*) ((u32) sys.unk470 + sys.unk10->unk1C * var_r7); + for (i = 0; i < sys.grpStackBMax; i++) { + stack = &sys.grpStackB[i]; + stack->grpId = stack->baseGrpF = 0; + stack->num = 0; + stack->buf = (void*) ((u32) sys.grpBufB + sys.info->grpBufSizeB * i); } - sys.unk3E4 = 0; - for (var_r7 = 0; var_r7 < sys.unk3F4; var_r7++) { - temp_r20 = &sys.unk3EC[sys.unk10->unk29[var_r7]]; - if ((sys.unk3F8[var_r7] = msmMemAlloc(temp_r20->unk8)) == NULL) { + sys.sampSize = 0; + for (i = 0; i < sys.baseGrpNum; i++) { + grpInfo = &sys.grpInfo[sys.info->baseGrp[i]]; + if ((sys.grpData[i] = msmMemAlloc(grpInfo->dataSize)) == NULL) { return MSM_ERR_OUTOFMEM; } - if (sys.unk3E4 < temp_r20->unk10) { - sys.unk3E4 = temp_r20->unk10; + if (sys.sampSize < grpInfo->sampSize) { + sys.sampSize = grpInfo->sampSize; } - temp_r20->unk10 *= -1; + grpInfo->sampSize *= -1; } - sys.unk3E8 = 0; - for (var_r7 = 1; var_r7 < sys.unk3DC; var_r7++) { - temp_r20 = &sys.unk3EC[var_r7]; - if (temp_r20->unk10 < 0) { - temp_r20->unk10 *= -1; - } else if (sys.unk3E8 < temp_r20->unk10) { - sys.unk3E8 = temp_r20->unk10; + sys.sampSizeBase = 0; + for (i = 1; i < sys.grpMax; i++) { + grpInfo = &sys.grpInfo[i]; + if (grpInfo->sampSize < 0) { + grpInfo->sampSize *= -1; + } else if (sys.sampSizeBase < grpInfo->sampSize) { + sys.sampSizeBase = grpInfo->sampSize; } } return 0; @@ -239,88 +242,88 @@ s32 msmSysGroupInit(DVDFileInfo *arg0) void msmSysIrqDisable(void) { - if (sys.unk4EC++ == 0) { - sys.unk4F0 = OSDisableInterrupts(); + if (sys.irqDepth++ == 0) { + sys.irqState = OSDisableInterrupts(); } } void msmSysIrqEnable(void) { - if (sys.unk4EC != 0) { - if (--sys.unk4EC == 0) { - OSRestoreInterrupts(sys.unk4F0); + if (sys.irqDepth != 0) { + if (--sys.irqDepth == 0) { + OSRestoreInterrupts(sys.irqState); } } } -static inline BOOL msmSysInline00(s32 arg0) +static BOOL msmSysCheckBaseGroupNo(s32 grpId) { - s32 var_r6; + s32 i; - for (var_r6 = 0; var_r6 < sys.unk3F4 + sys.unk436 + sys.unk46E; var_r6++) { - if (sys.unk10->unk29[var_r6] == arg0) { + for (i = 0; i < sys.baseGrpNum + sys.grpStackAOfs + sys.grpStackBOfs; i++) { + if (sys.info->baseGrp[i] == grpId) { return TRUE; } } return FALSE; } -BOOL msmSysCheckBaseGroup(s32 arg0) +BOOL msmSysCheckBaseGroup(s32 grpId) { - s32 var_r6; + s32 i; - for (var_r6 = 0; var_r6 < sys.unk3F4 + sys.unk436 + sys.unk46E; var_r6++) { - if (sys.unk3EC[sys.unk10->unk29[var_r6]].unk0 == arg0) { + for (i = 0; i < sys.baseGrpNum + sys.grpStackAOfs + sys.grpStackBOfs; i++) { + if (sys.grpInfo[sys.info->baseGrp[i]].gid == grpId) { return TRUE; } } return FALSE; } -void *msmSysGetGroupDataPtr(s32 arg0) +void *msmSysGetGroupDataPtr(s32 grpId) { - UnkStructSys43C *temp_43C; - s32 var_r6; + MSM_GRP_STACK *grp; + s32 i; - for (var_r6 = 0; var_r6 < sys.unk3F4; var_r6++) { - if (sys.unk10->unk29[var_r6] == arg0) { - return sys.unk3F8[var_r6]; + for (i = 0; i < sys.baseGrpNum; i++) { + if (sys.info->baseGrp[i] == grpId) { + return sys.grpData[i]; } } - for (var_r6 = 0; var_r6 < sys.unk434; var_r6++) { - temp_43C = &sys.unk43C[var_r6]; - if (temp_43C->unk04 != 0 && temp_43C->unk00 == arg0) { - return temp_43C->unk08; + for (i = 0; i < sys.grpStackAMax; i++) { + grp = &sys.grpStackA[i]; + if (grp->num != 0 && grp->grpId == grpId) { + return grp->buf; } } - for (var_r6 = 0; var_r6 < sys.unk46C; var_r6++) { - temp_43C = &sys.unk474[var_r6]; - if (temp_43C->unk04 != 0 && temp_43C->unk00 == arg0) { - return temp_43C->unk08; + for (i = 0; i < sys.grpStackBMax; i++) { + grp = &sys.grpStackB[i]; + if (grp->num != 0 && grp->grpId == grpId) { + return grp->buf; } } return NULL; } -BOOL msmSysCheckLoadGroupID(s32 arg0) +BOOL msmSysCheckLoadGroupID(s32 grpId) { - UnkStructSys43C *temp_43C; - s32 var_r6; + MSM_GRP_STACK *grp; + s32 i; - for (var_r6 = 0; var_r6 < sys.unk3F4 + sys.unk436 + sys.unk46E; var_r6++) { - if (sys.unk3EC[sys.unk10->unk29[var_r6]].unk0 == arg0) { + for (i = 0; i < sys.baseGrpNum + sys.grpStackAOfs + sys.grpStackBOfs; i++) { + if (sys.grpInfo[sys.info->baseGrp[i]].gid == grpId) { return TRUE; } } - for (var_r6 = 0; var_r6 < sys.unk434; var_r6++) { - temp_43C = &sys.unk43C[var_r6]; - if (temp_43C->unk04 != 0 && sys.unk3EC[temp_43C->unk00].unk0 == arg0) { + for (i = 0; i < sys.grpStackAMax; i++) { + grp = &sys.grpStackA[i]; + if (grp->num != 0 && sys.grpInfo[grp->grpId].gid == grpId) { return TRUE; } } - for (var_r6 = 0; var_r6 < sys.unk46C; var_r6++) { - temp_43C = &sys.unk474[var_r6]; - if (temp_43C->unk04 != 0 && sys.unk3EC[temp_43C->unk00].unk0 == arg0) { + for (i = 0; i < sys.grpStackBMax; i++) { + grp = &sys.grpStackB[i]; + if (grp->num != 0 && sys.grpInfo[grp->grpId].gid == grpId) { return TRUE; } } @@ -333,27 +336,27 @@ void msmSysRegularProc(void) s32 msmSysGetOutputMode(void) { - return sys.unk4; + return sys.outputMode; } -s32 msmSysSetOutputMode(SND_OUTPUTMODE mode) +BOOL msmSysSetOutputMode(SND_OUTPUTMODE mode) { SND_OUTPUTMODE var_r3; - s32 var_r30; + BOOL failF; - var_r30 = 0; - sys.unk4 = mode; + failF = 0; + sys.outputMode = mode; switch (mode) { case SND_OUTPUTMODE_MONO: var_r3 = SND_OUTPUTMODE_MONO; break; case SND_OUTPUTMODE_SURROUND: - if (sys.unk10->unkB != 0) { + if (sys.info->surroundF != 0) { var_r3 = SND_OUTPUTMODE_SURROUND; } else { - sys.unk4 = SND_OUTPUTMODE_STEREO; + sys.outputMode = SND_OUTPUTMODE_STEREO; var_r3 = SND_OUTPUTMODE_STEREO; - var_r30 = 1; + failF = 1; } break; case SND_OUTPUTMODE_STEREO: @@ -362,36 +365,36 @@ s32 msmSysSetOutputMode(SND_OUTPUTMODE mode) break; } sndOutputMode(var_r3); - msmStreamSetOutputMode(sys.unk4); + msmStreamSetOutputMode(sys.outputMode); OSSetSoundMode((mode != SND_OUTPUTMODE_MONO) ? 1 : 0); - return var_r30; + return failF; } -s32 msmSysSetAux(s32 arg0, s32 arg1) +s32 msmSysSetAux(s32 auxA, s32 auxB) { - s32 var_r28; + s32 i; sndSetAuxProcessingCallbacks(0, NULL, NULL, 0, 0, NULL, NULL, 0, 0); - for (var_r28 = 1; var_r28 >= 0; var_r28--) { - if (sys.unk18[var_r28] < 0) { + for (i = 1; i >= 0; i--) { + if (sys.auxParamNo[i] < 0) { continue; } - switch (sys.unk14[sys.unk18[var_r28]].unk0) { + switch (sys.auxParam[sys.auxParamNo[i]].type) { case 0: - sndAuxCallbackShutdownReverbHI(&sys.unk1C[var_r28].revHi); + sndAuxCallbackShutdownReverbHI(&sys.aux[i].revHi); break; case 1: - sndAuxCallbackShutdownReverbSTD(&sys.unk1C[var_r28].revStd); + sndAuxCallbackShutdownReverbSTD(&sys.aux[i].revStd); break; case 2: - sndAuxCallbackShutdownChorus(&sys.unk1C[var_r28].ch); + sndAuxCallbackShutdownChorus(&sys.aux[i].chorus); break; case 3: - sndAuxCallbackShutdownDelay(&sys.unk1C[var_r28].delay); + sndAuxCallbackShutdownDelay(&sys.aux[i].delay); break; } } - if (msmSysSetAuxParam(arg0, arg1) != 0) { + if (msmSysSetAuxParam(auxA, auxB) != 0) { return MSM_ERR_INVALID_AUXPARAM; } return 0; @@ -400,32 +403,32 @@ s32 msmSysSetAux(s32 arg0, s32 arg1) s32 msmSysGetSampSize(BOOL baseGrp) { if (baseGrp != 0) { - return sys.unk3E8; + return sys.sampSizeBase; } - return sys.unk3E4; + return sys.sampSize; } s32 msmSysDelGroupAll(void) { - UnkStructSys43C *temp_r28; - s32 var_r29; + MSM_GRP_STACK *grp; + s32 i; - for (var_r29 = 0; var_r29 < sys.unk46C; var_r29++) { - temp_r28 = &sys.unk474[var_r29]; - if (temp_r28->unk04 != 0 && temp_r28->unk01 == 0) { - temp_r28->unk04 = 0; + for (i = 0; i < sys.grpStackBMax; i++) { + grp = &sys.grpStackB[i]; + if (grp->num != 0 && grp->baseGrpF == 0) { + grp->num = 0; sndPopGroup(); - sys.unk8 -= sys.unk3EC[temp_r28->unk00].unk10; - sys.unk46D--; + sys.aramP -= sys.grpInfo[grp->grpId].sampSize; + sys.grpStackBDepth--; } } - for (var_r29 = 0; var_r29 < sys.unk434; var_r29++) { - temp_r28 = &sys.unk43C[var_r29]; - if (temp_r28->unk04 != 0 && temp_r28->unk01 == 0) { - temp_r28->unk04 = 0; + for (i = 0; i < sys.grpStackAMax; i++) { + grp = &sys.grpStackA[i]; + if (grp->num != 0 && grp->baseGrpF == 0) { + grp->num = 0; sndPopGroup(); - sys.unk8 -= sys.unk3EC[temp_r28->unk00].unk10; - sys.unk435--; + sys.aramP -= sys.grpInfo[grp->grpId].sampSize; + sys.grpStackADepth--; } } return 0; @@ -433,338 +436,338 @@ s32 msmSysDelGroupAll(void) s32 msmSysDelGroupBase(s32 grpNum) { - s32 var_r4; - UnkStructSys43C *temp_r26; - s32 var_r27; - s8 var_r31; - s8 var_r25; - s32 var_r6; + s32 j; + MSM_GRP_STACK *grp; + s32 i; + s8 level; + s8 stackBF; + s32 grpMaxNum; - if (sys.unk436 + sys.unk46E == 0) { + if (sys.grpStackAOfs + sys.grpStackBOfs == 0) { return 0; } - if (grpNum >= sys.unk436 + sys.unk46E) { + if (grpNum >= sys.grpStackAOfs + sys.grpStackBOfs) { grpNum = 0; } if (grpNum != 0) { msmSysDelGroupAll(); - for (var_r27 = 0; var_r27 < grpNum; var_r27++) { - var_r6 = 0; - for (var_r4 = 0; var_r4 < sys.unk434; var_r4++) { - temp_r26 = &sys.unk43C[var_r4]; - if (temp_r26->unk04 > var_r6) { - var_r6 = temp_r26->unk04; - var_r31 = var_r4; - var_r25 = 0; + for (i = 0; i < grpNum; i++) { + grpMaxNum = 0; + for (j = 0; j < sys.grpStackAMax; j++) { + grp = &sys.grpStackA[j]; + if (grp->num > grpMaxNum) { + grpMaxNum = grp->num; + level = j; + stackBF = FALSE; } } - for (var_r4 = 0; var_r4 < sys.unk46C; var_r4++) { - temp_r26 = &sys.unk474[var_r4]; - if (temp_r26->unk04 > var_r6) { - var_r6 = temp_r26->unk04; - var_r31 = var_r4; - var_r25 = 1; + for (j = 0; j < sys.grpStackBMax; j++) { + grp = &sys.grpStackB[j]; + if (grp->num > grpMaxNum) { + grpMaxNum = grp->num; + level = j; + stackBF = TRUE; } } - if (var_r25 == 0) { - temp_r26 = &sys.unk43C[var_r31]; - sys.unk435--; - sys.unk436--; + if (stackBF == FALSE) { + grp = &sys.grpStackA[level]; + sys.grpStackADepth--; + sys.grpStackAOfs--; } else { - temp_r26 = &sys.unk474[var_r31]; - sys.unk46D--; - sys.unk46E--; + grp = &sys.grpStackB[level]; + sys.grpStackBDepth--; + sys.grpStackBOfs--; } sndPopGroup(); - sys.unk8 -= sys.unk3EC[temp_r26->unk00].unk10; - temp_r26->unk01 = 0; - temp_r26->unk04 = 0; + sys.aramP -= sys.grpInfo[grp->grpId].sampSize; + grp->baseGrpF = 0; + grp->num = 0; } } else { - for (var_r27 = 0; var_r27 < sys.unk434; var_r27++) { - temp_r26 = &sys.unk43C[var_r27]; - if (temp_r26->unk04 != 0) { + for (i = 0; i < sys.grpStackAMax; i++) { + grp = &sys.grpStackA[i]; + if (grp->num != 0) { sndPopGroup(); - sys.unk8 -= sys.unk3EC[temp_r26->unk00].unk10; - temp_r26->unk01 = 0; - temp_r26->unk04 = 0; + sys.aramP -= sys.grpInfo[grp->grpId].sampSize; + grp->baseGrpF = 0; + grp->num = 0; } } - for (var_r27 = 0; var_r27 < sys.unk46C; var_r27++) { - temp_r26 = &sys.unk474[var_r27]; - if (temp_r26->unk04 != 0) { + for (i = 0; i < sys.grpStackBMax; i++) { + grp = &sys.grpStackB[i]; + if (grp->num != 0) { sndPopGroup(); - sys.unk8 -= sys.unk3EC[temp_r26->unk00].unk10; - temp_r26->unk01 = 0; - temp_r26->unk04 = 0; + sys.aramP -= sys.grpInfo[grp->grpId].sampSize; + grp->baseGrpF = 0; + grp->num = 0; } } - sys.unk46E = 0; - sys.unk46D = 0; - sys.unk436 = 0; - sys.unk435 = 0; + sys.grpStackBOfs = 0; + sys.grpStackBDepth = 0; + sys.grpStackAOfs = 0; + sys.grpStackADepth = 0; } return 0; } -static inline s32 msmSysPushGroup(DVDFileInfo *arg0, void *buf, UnkStructSys43C *arg2, s32 arg3) +static s32 msmSysPushGroup(DVDFileInfo *file, void *buf, MSM_GRP_STACK *grp, s32 grpId) { - unkStruct4 *temp_r30; - unkStruct3 *temp_r7; + MSM_GRP_INFO *grpInfo; + MSM_GRP_HEAD *grpBuf; - temp_r30 = &sys.unk3EC[arg3]; - if (msmFioRead(arg0, arg2->unk08, temp_r30->unk8, temp_r30->unk4 + sys.unkC->unk38) < 0) { + grpInfo = &sys.grpInfo[grpId]; + if (msmFioRead(file, grp->buf, grpInfo->dataSize, grpInfo->dataOfs + sys.header->grpDataOfs) < 0) { return MSM_ERR_READFAIL; } - if (msmFioRead(arg0, buf, temp_r30->unk10, temp_r30->unkC + sys.unkC->unk40) < 0) { + if (msmFioRead(file, buf, grpInfo->sampSize, grpInfo->sampOfs + sys.header->sampOfs) < 0) { return MSM_ERR_READFAIL; } - temp_r7 = arg2->unk08; - if (!sndPushGroup((void*) (temp_r7->unk4 + (u32) temp_r7), temp_r30->unk0, buf, - (void*) (temp_r7->unk8 + (u32) temp_r7), (void*) (temp_r7->unk0 + (u32) temp_r7))) + grpBuf = grp->buf; + if (!sndPushGroup((void*) (grpBuf->projOfs + (u32) grpBuf), grpInfo->gid, buf, + (void*) (grpBuf->sdirOfs + (u32) grpBuf), (void*) (grpBuf->poolOfs + (u32) grpBuf))) { - return MSM_ERR_20; + return MSM_ERR_GRP_FAILPUSH; } - sys.unk8 += temp_r30->unk10; - arg2->unk00 = arg3; - arg2->unk04 = sys.unk3E0++; + sys.aramP += grpInfo->sampSize; + grp->grpId = grpId; + grp->num = sys.grpNum++; return 0; } -s32 msmSysLoadGroupBase(s32 arg0, void *arg1) +s32 msmSysLoadGroupBase(s32 grpId, void *buf) { s32 temp_r29; s32 temp_r28; s32 var_r23; s32 temp_r3_2; - UnkStructSys43C *var_r24; + MSM_GRP_STACK *var_r24; DVDFileInfo sp10; - if (arg0 < 1 || arg0 >= sys.unk3DC) { + if (grpId < 1 || grpId >= sys.grpMax) { return MSM_ERR_64; } var_r23 = msmSysDelGroupAll(); if (var_r23 != 0) { return var_r23; } - temp_r29 = sys.unk3F4 + sys.unk436 + sys.unk46E; - if (msmSysInline00(arg0)) { + temp_r29 = sys.baseGrpNum + sys.grpStackAOfs + sys.grpStackBOfs; + if (msmSysCheckBaseGroupNo(grpId)) { return 0; } if (temp_r29 >= 0xF) { - return MSM_ERR_65; + return MSM_ERR_STACK_OVERFLOW; } - temp_r3_2 = msmSysSearchGroupStack(arg0, -1); + temp_r3_2 = msmSysSearchGroupStack(grpId, -1); if (temp_r3_2 < 0) { - return MSM_ERR_65; + return MSM_ERR_STACK_OVERFLOW; } - temp_r28 = sys.unk3EC[arg0].unk2; + temp_r28 = sys.grpInfo[grpId].stackNo; if (!temp_r28) { - var_r24 = &sys.unk43C[temp_r3_2]; + var_r24 = &sys.grpStackA[temp_r3_2]; } else { - var_r24 = &sys.unk474[temp_r3_2]; + var_r24 = &sys.grpStackB[temp_r3_2]; } - if (msmFioOpen(sys.unk0, &sp10) != 1) { + if (msmFioOpen(sys.msmEntryNum, &sp10) != 1) { return MSM_ERR_OPENFAIL; } - var_r23 = msmSysPushGroup(&sp10, arg1, var_r24, arg0); + var_r23 = msmSysPushGroup(&sp10, buf, var_r24, grpId); if (var_r23 != 0) { msmFioClose(&sp10); return var_r23; } msmFioClose(&sp10); - sys.unk10->unk29[temp_r29] = arg0; - var_r24->unk01 = 1; + sys.info->baseGrp[temp_r29] = grpId; + var_r24->baseGrpF = 1; if (temp_r28 == 0) { - sys.unk436++; - sys.unk435++; + sys.grpStackAOfs++; + sys.grpStackADepth++; } else { - sys.unk46E++; - sys.unk46D++; + sys.grpStackBOfs++; + sys.grpStackBDepth++; } return 0; } -static inline s32 msmSysInline01(void) +static s32 msmSysGetNumGroupSet(void) { - if (sys.unk3F0 != NULL) { - return sys.unk3F0->unk00; + if (sys.grpSet != NULL) { + return sys.grpSet->numGrpSet; } return 0; } s32 msmSysLoadGroupSet(s32 arg0, void *arg1) { - s8 sp4C[12]; // unknown length (5..12 works) - DVDFileInfo sp10; - s32 temp_r3; - s32 temp_r3_2; - s32 var_r19; - s32 var_r24; - s32 var_r31; - s8 *var_r19_2; + s8 grpId[10]; + DVDFileInfo file; + s32 result; + s32 stackLevel; + s32 pushResult; + s32 i; + s32 grpSetNum; + s8 *grpSet; - if (msmSysInline01() == 0) { + if (msmSysGetNumGroupSet() == 0) { return 0; } - temp_r3 = msmSysDelGroupAll(); - if (temp_r3 != 0) { - return temp_r3; + result = msmSysDelGroupAll(); + if (result != 0) { + return result; } - var_r19_2 = &sys.unk3F0->unk02[sys.unk3F0->unk01 * arg0]; - if (msmFioOpen(sys.unk0, &sp10) != TRUE) { + grpSet = &sys.grpSet->data[sys.grpSet->grpSetW * arg0]; + if (msmFioOpen(sys.msmEntryNum, &file) != TRUE) { return MSM_ERR_OPENFAIL; } - sys.unk435 = sys.unk436; - var_r31 = 0; - for (; *var_r19_2 != 0; var_r19_2++) { - if (msmSysInline00(*var_r19_2)) { + sys.grpStackADepth = sys.grpStackAOfs; + grpSetNum = 0; + for (; *grpSet != 0; grpSet++) { + if (msmSysCheckBaseGroupNo(*grpSet)) { continue; } - if (sys.unk3EC[(s8) *var_r19_2].unk2 == 1) { - sp4C[var_r31++] = *var_r19_2; + if (sys.grpInfo[(s8) *grpSet].stackNo == 1) { + grpId[grpSetNum++] = *grpSet; } else { - temp_r3_2 = msmSysSearchGroupStack(*var_r19_2, -1); - if (temp_r3_2 < 0) { - msmFioClose(&sp10); - return MSM_ERR_65; + stackLevel = msmSysSearchGroupStack(*grpSet, -1); + if (stackLevel < 0) { + msmFioClose(&file); + return MSM_ERR_STACK_OVERFLOW; } - var_r19 = msmSysPushGroup(&sp10, arg1, &sys.unk43C[temp_r3_2], *var_r19_2); - if (var_r19 != 0) { - msmFioClose(&sp10); - return var_r19; + pushResult = msmSysPushGroup(&file, arg1, &sys.grpStackA[stackLevel], *grpSet); + if (pushResult != 0) { + msmFioClose(&file); + return pushResult; } - sys.unk435++; + sys.grpStackADepth++; } } - sys.unk46D = sys.unk46E; - for (var_r24 = 0; var_r24 < var_r31; var_r24++) { - temp_r3_2 = msmSysSearchGroupStack(sp4C[var_r24], -1); - if (temp_r3_2 < 0) { - msmFioClose(&sp10); - return MSM_ERR_65; + sys.grpStackBDepth = sys.grpStackBOfs; + for (i = 0; i < grpSetNum; i++) { + stackLevel = msmSysSearchGroupStack(grpId[i], -1); + if (stackLevel < 0) { + msmFioClose(&file); + return MSM_ERR_STACK_OVERFLOW; } - var_r19 = msmSysPushGroup(&sp10, arg1, &sys.unk474[temp_r3_2], sp4C[var_r24]); - if (var_r19 != 0) { - msmFioClose(&sp10); - return var_r19; + pushResult = msmSysPushGroup(&file, arg1, &sys.grpStackB[stackLevel], grpId[i]); + if (pushResult != 0) { + msmFioClose(&file); + return pushResult; } - sys.unk46D++; + sys.grpStackBDepth++; } - msmFioClose(&sp10); + msmFioClose(&file); return 0; } -static s32 msmSysLoadGroupSub(DVDFileInfo *arg0, s32 arg1, void *arg2) +static s32 msmSysLoadGroupSub(DVDFileInfo *file, s32 grpId, void *buf) { - s32 var_r30; - s32 var_r18; - s32 var_r19; - s32 var_r3; - u8 *var_r29; - UnkStructSys43C *var_r28; - unkStruct4 *temp_r23; + s32 grpIdResult; + s32 i; + s32 stackLevel; + s32 result; + u8 *stackDepth; + MSM_GRP_STACK *grpStack; + MSM_GRP_INFO *temp_r23; - var_r30 = 0; - temp_r23 = &sys.unk3EC[arg1]; - if (temp_r23->unk2 == 0) { - var_r28 = sys.unk43C; - var_r29 = &sys.unk435; + grpIdResult = 0; + temp_r23 = &sys.grpInfo[grpId]; + if (temp_r23->stackNo == 0) { + grpStack = sys.grpStackA; + stackDepth = &sys.grpStackADepth; } else { - var_r28 = sys.unk474; - var_r29 = &sys.unk46D; + grpStack = sys.grpStackB; + stackDepth = &sys.grpStackBDepth; } - if (temp_r23->unk3 != 0) { - if (!msmSysCheckBaseGroup(sys.unk3EC[temp_r23->unk3].unk0)) { - var_r19 = -1; - for (var_r18 = 0; var_r18 < 2; var_r18++) { - var_r19 = msmSysSearchGroupStack(temp_r23->unk3, var_r19); - if (var_r19 < 0) { - var_r19 = -(var_r19 + 1); - (*var_r29)--; + if (temp_r23->subGrpId != 0) { + if (!msmSysCheckBaseGroup(sys.grpInfo[temp_r23->subGrpId].gid)) { + stackLevel = -1; + for (i = 0; i < 2; i++) { + stackLevel = msmSysSearchGroupStack(temp_r23->subGrpId, stackLevel); + if (stackLevel < 0) { + stackLevel = -(stackLevel + 1); + (*stackDepth)--; sndPopGroup(); - sys.unk8 -= sys.unk3EC[var_r28[var_r19].unk00].unk10; - var_r30 = var_r28[var_r19].unk00; - var_r28[var_r19].unk04 = 0; + sys.aramP -= sys.grpInfo[grpStack[stackLevel].grpId].sampSize; + grpIdResult = grpStack[stackLevel].grpId; + grpStack[stackLevel].num = 0; } } - var_r3 = msmSysPushGroup(arg0, arg2, &var_r28[var_r19], temp_r23->unk3); - if (var_r3 != 0) { - return var_r3; + result = msmSysPushGroup(file, buf, &grpStack[stackLevel], temp_r23->subGrpId); + if (result != 0) { + return result; } - (*var_r29)++; + (*stackDepth)++; } } - var_r19 = msmSysSearchGroupStack(arg1, -1); - if (var_r19 < 0) { - var_r19 = -(var_r19 + 1); - (*var_r29)--; + stackLevel = msmSysSearchGroupStack(grpId, -1); + if (stackLevel < 0) { + stackLevel = -(stackLevel + 1); + (*stackDepth)--; sndPopGroup(); - sys.unk8 -= sys.unk3EC[var_r28[var_r19].unk00].unk10; - var_r30 = var_r28[var_r19].unk00; + sys.aramP -= sys.grpInfo[grpStack[stackLevel].grpId].sampSize; + grpIdResult = grpStack[stackLevel].grpId; } - var_r3 = msmSysPushGroup(arg0, arg2, &var_r28[var_r19], arg1); - if (var_r3 == 0) { - var_r3 = var_r30; + result = msmSysPushGroup(file, buf, &grpStack[stackLevel], grpId); + if (result == 0) { + result = grpIdResult; } - (*var_r29)++; - return var_r3; + (*stackDepth)++; + return result; } -static inline void msmSysPopGroup(s32 arg0) +static void msmSysPopGroup(s32 no) { - UnkStructSys43C *temp_r23; + MSM_GRP_STACK *grp; - temp_r23 = &sys.unk474[arg0]; - if (temp_r23->unk04 != 0 && temp_r23->unk01 == 0) { + grp = &sys.grpStackB[no]; + if (grp->num != 0 && grp->baseGrpF == 0) { sndPopGroup(); - sys.unk8 -= sys.unk3EC[temp_r23->unk00].unk10; + sys.aramP -= sys.grpInfo[grp->grpId].sampSize; } } -s32 msmSysLoadGroup(s32 grp, void *buf) +s32 msmSysLoadGroup(s32 grpId, void *buf) { - UnkStructSys43C *temp_r23; - unkStruct4 *temp_r22; - s32 var_r31; - s32 var_r22; - s32 var_r21; - DVDFileInfo sp14; + MSM_GRP_STACK *grpStack; + MSM_GRP_INFO *grpInfo; + s32 pushResult; + s32 i; + s32 result; + DVDFileInfo file; s32 unused; if (buf == NULL) { return 0; } - if (grp == 0) { + if (grpId == 0) { return msmSysLoadBaseGroup(buf); } - temp_r22 = &sys.unk3EC[grp]; - if (msmSysCheckLoadGroupID(temp_r22->unk0)) { + grpInfo = &sys.grpInfo[grpId]; + if (msmSysCheckLoadGroupID(grpInfo->gid)) { return 0; } - if (msmFioOpen(sys.unk0, &sp14) != 1) { + if (msmFioOpen(sys.msmEntryNum, &file) != TRUE) { return MSM_ERR_OPENFAIL; } - if (temp_r22->unk2 == 0) { - for (var_r22 = 0; var_r22 < sys.unk46C; var_r22++) { - msmSysPopGroup(var_r22); + if (grpInfo->stackNo == 0) { + for (i = 0; i < sys.grpStackBMax; i++) { + msmSysPopGroup(i); } - var_r21 = msmSysLoadGroupSub(&sp14, grp, buf); - for (var_r22 = 0; var_r22 < sys.unk46C; var_r22++) { - temp_r23 = &sys.unk474[var_r22]; - if (temp_r23->unk04 != 0 && temp_r23->unk01 == 0) { - var_r31 = msmSysPushGroup(&sp14, buf, temp_r23, temp_r23->unk00); - if (var_r31 != 0) { - msmFioClose(&sp14); - return var_r31; + result = msmSysLoadGroupSub(&file, grpId, buf); + for (i = 0; i < sys.grpStackBMax; i++) { + grpStack = &sys.grpStackB[i]; + if (grpStack->num != 0 && grpStack->baseGrpF == 0) { + pushResult = msmSysPushGroup(&file, buf, grpStack, grpStack->grpId); + if (pushResult != 0) { + msmFioClose(&file); + return pushResult; } } } } else { - var_r21 = msmSysLoadGroupSub(&sp14, grp, buf); + result = msmSysLoadGroupSub(&file, grpId, buf); } - msmFioClose(&sp14); - return var_r21; + msmFioClose(&file); + return result; } void msmSysCheckInit(void) @@ -774,42 +777,42 @@ void msmSysCheckInit(void) s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) { - s32 var_r26; - void *temp_r3_8; + s32 result; + void *temp; - SND_HOOKS sp4C = { msmMemAlloc, msmMemFree }; + SND_HOOKS sndHooks = { msmMemAlloc, msmMemFree }; DVDFileInfo sp10; if (sndIsInstalled() == 1) { return MSM_ERR_INSTALLED; } - var_r26 = 0; // retErr - sys.unk4EC = 0; + result = 0; // retErr + sys.irqDepth = 0; msmMemInit(init->heap, init->heapSize); msmFioInit(init->open, init->read, init->close); - sys.unk0 = DVDConvertPathToEntrynum(init->msmPath); - if (sys.unk0 < 0) { + sys.msmEntryNum = DVDConvertPathToEntrynum(init->msmPath); + if (sys.msmEntryNum < 0) { return MSM_ERR_OPENFAIL; } - if (msmFioOpen(sys.unk0, &sp10) != 1) { + if (msmFioOpen(sys.msmEntryNum, &sp10) != 1) { return MSM_ERR_OPENFAIL; } - if ((sys.unkC = msmMemAlloc(0x60)) == NULL) { + if ((sys.header = msmMemAlloc(0x60)) == NULL) { msmFioClose(&sp10); return MSM_ERR_OUTOFMEM; } - if (msmFioRead(&sp10, sys.unkC, 0x60, 0) < 0) { + if (msmFioRead(&sp10, sys.header, 0x60, 0) < 0) { msmFioClose(&sp10); return MSM_ERR_READFAIL; } - if (sys.unkC->unk4 != 2) { + if (sys.header->version != MSM_FILE_VERSION) { msmFioClose(&sp10); return MSM_ERR_INVALIDFILE; } - if ((sys.unk10 = msmMemAlloc(sys.unkC->unk14)) == NULL) { + if ((sys.info = msmMemAlloc(sys.header->infoSize)) == NULL) { msmFioClose(&sp10); return MSM_ERR_OUTOFMEM; } - if (msmFioRead(&sp10, sys.unk10, sys.unkC->unk14, sys.unkC->unk10) < 0) { + if (msmFioRead(&sp10, sys.info, sys.header->infoSize, sys.header->infoOfs) < 0) { msmFioClose(&sp10); return MSM_ERR_READFAIL; } @@ -817,88 +820,88 @@ s32 msmSysInit(MSM_INIT *init, MSM_ARAM *aram) if (aram->skipARInit == 0) { ARInit(aram->stackIndex, aram->aramEnd); ARQInit(); - aram = (MSM_ARAM *)ARAlloc(sys.unk10->unk14); + aram = (MSM_ARAM *)ARAlloc(sys.info->aramSize); if ((u32)aram != ARGetBaseAddress()) { msmFioClose(&sp10); return MSM_ERR_OUTOFAMEM; } - sys.unk7 = 0; + sys.arInitF = FALSE; } else { - if ((sys.unk10->unk14 + ARGetBaseAddress()) > aram->aramEnd) { + if ((sys.info->aramSize + ARGetBaseAddress()) > aram->aramEnd) { msmFioClose(&sp10); return MSM_ERR_OUTOFAMEM; } ARInit(NULL, 0); ARQInit(); - sys.unk7 = 1; + sys.arInitF = TRUE; } } - var_r26 = msmSysGroupInit(&sp10); - if (var_r26 != 0) { + result = msmSysGroupInit(&sp10); + if (result != 0) { msmFioClose(&sp10); - return var_r26; + return result; } - var_r26 = msmMusInit(&sys, &sp10); - if (var_r26 != 0) { + result = msmMusInit(&sys, &sp10); + if (result != 0) { msmFioClose(&sp10); - return var_r26; + return result; } - var_r26 = msmSeInit(&sys, &sp10); - if (var_r26 != 0) { + result = msmSeInit(&sys, &sp10); + if (result != 0) { msmFioClose(&sp10); - return var_r26; + return result; } - sys.unk18[0] = sys.unk10->unkE == -2 ? -2 : -1; - sys.unk18[1] = sys.unk10->unkF == -2 ? -2 : -1; - if ((s32)sys.unkC->unk1C == 0) { - var_r26 = 0; + sys.auxParamNo[0] = sys.info->auxParamA == MSM_AUXNO_NULL ? MSM_AUXNO_NULL : MSM_AUXNO_UNSET; + sys.auxParamNo[1] = sys.info->auxParamB == MSM_AUXNO_NULL ? MSM_AUXNO_NULL : MSM_AUXNO_UNSET; + if ((s32)sys.header->auxParamSize == 0) { + result = 0; } else { - if ((sys.unk14 = msmMemAlloc(sys.unkC->unk1C)) == NULL) { - var_r26 = MSM_ERR_OUTOFMEM; + if ((sys.auxParam = msmMemAlloc(sys.header->auxParamSize)) == NULL) { + result = MSM_ERR_OUTOFMEM; } else { - if (msmFioRead(&sp10, sys.unk14, sys.unkC->unk1C, sys.unkC->unk18) < 0) { - var_r26 = MSM_ERR_READFAIL; + if (msmFioRead(&sp10, sys.auxParam, sys.header->auxParamSize, sys.header->auxParamOfs) < 0) { + result = MSM_ERR_READFAIL; } else { - var_r26 = 0; + result = 0; } } } - if (var_r26 != 0) { + if (result != 0) { msmFioClose(&sp10); - return var_r26; + return result; } msmFioClose(&sp10); - var_r26 = msmStreamInit(init->pdtPath); - if (var_r26 < 0) { - return var_r26; + result = msmStreamInit(init->pdtPath); + if (result < 0) { + return result; } AIInit(NULL); - sndSetHooks(&sp4C); - if (sndInit(sys.unk10->unk0, sys.unk10->unk1, sys.unk10->unk2, 1, 0, sys.unk10->unk14) != 0) { - return MSM_ERR_1E; + sndSetHooks(&sndHooks); + if (sndInit(sys.info->voices, sys.info->music, sys.info->sfx, 1, 0, sys.info->aramSize) != 0) { + return MSM_ERR_INITFAIL; } - sys.unk4F4 = AIRegisterDMACallback(msmSysServer); - sys.unk4F8 = 1; - var_r26 = msmStreamAmemAlloc(); - if (var_r26 < 0) { + sys.oldAIDCallback = AIRegisterDMACallback(msmSysServer); + sys.timer = 1; + result = msmStreamAmemAlloc(); + if (result < 0) { sndQuit(); - return var_r26; + return result; } - sys.unk8 = var_r26 + 0x500; - if ((s32)sys.unk10->unk10 != 0) { - temp_r3_8 = msmMemAlloc(sys.unk10->unk10 + 0x100); - if (temp_r3_8 == NULL) { + sys.aramP = result + 0x500; + if ((int)sys.info->minMem != 0) { + temp = msmMemAlloc(sys.info->minMem + 0x100); + if (temp == NULL) { msmStreamAmemFree(); sndQuit(); return MSM_ERR_OUTOFMEM; } - msmMemFree(temp_r3_8); + msmMemFree(temp); } - if (msmSysSetAuxParam(sys.unk10->unkE, sys.unk10->unkF) != 0) { + if (msmSysSetAuxParam(sys.info->auxParamA, sys.info->auxParamB) != 0) { msmStreamAmemFree(); sndQuit(); return MSM_ERR_INVALID_AUXPARAM; From 2a3c35302919a4ff226abdf452972ebc51aad51d Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sat, 18 Jan 2025 19:15:38 +0100 Subject: [PATCH 128/178] Minor clean ups and match m428Dll main.c and map.c (#536) * Minor cleanups and fixes * Match m428Dll main.c and map.c --- config/GMPE01_00/rels/m428Dll/splits.txt | 4 +- config/GMPE01_00/rels/m428Dll/symbols.txt | 421 +++---- configure.py | 4 +- include/REL/m428Dll.h | 31 + include/REL/m433Dll.h | 4 +- include/dolphin/gx/GXTransform.h | 2 + src/REL/m425Dll/main.c | 22 +- src/REL/m428Dll/main.c | 1094 ++++++++++++++++++ src/REL/m428Dll/map.c | 1275 +++++++++++++++++++++ src/REL/m438Dll/main.c | 2 +- src/REL/m453Dll/main.c | 15 +- src/REL/option/rumble.c | 30 +- 12 files changed, 2650 insertions(+), 254 deletions(-) create mode 100644 include/REL/m428Dll.h create mode 100644 src/REL/m428Dll/main.c create mode 100644 src/REL/m428Dll/map.c diff --git a/config/GMPE01_00/rels/m428Dll/splits.txt b/config/GMPE01_00/rels/m428Dll/splits.txt index 03f22ea9..3a44b731 100644 --- a/config/GMPE01_00/rels/m428Dll/splits.txt +++ b/config/GMPE01_00/rels/m428Dll/splits.txt @@ -10,13 +10,13 @@ REL/executor.c: .text start:0x00000000 end:0x000000A0 REL/m428Dll/main.c: - .text start:0x000000A0 end:0x000040A4 + .text start:0x000000A0 end:0x000043C8 .rodata start:0x00000000 end:0x000000D8 .data start:0x00000000 end:0x00000130 .bss start:0x00000000 end:0x00000090 REL/m428Dll/map.c: - .text start:0x000040A4 end:0x00009F5C + .text start:0x000043C8 end:0x00009F5C .rodata start:0x000000D8 end:0x00000228 .data start:0x00000130 end:0x00000150 .bss start:0x00000090 end:0x00000130 diff --git a/config/GMPE01_00/rels/m428Dll/symbols.txt b/config/GMPE01_00/rels/m428Dll/symbols.txt index eef0a9df..e88de8d7 100644 --- a/config/GMPE01_00/rels/m428Dll/symbols.txt +++ b/config/GMPE01_00/rels/m428Dll/symbols.txt @@ -124,222 +124,222 @@ fn_1_14560 = .text:0x00014560; // type:function size:0x98 fn_1_145F8 = .text:0x000145F8; // type:function size:0x98 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float -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_FC = .rodata:0x000000FC; // 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_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 scope:local data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:float +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_FC = .rodata:0x000000FC; // 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_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 scope:local data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 scope:local data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float lbl_1_data_54 = .data:0x00000054; // type:object size:0xC lbl_1_data_60 = .data:0x00000060; // type:object size:0xC lbl_1_data_6C = .data:0x0000006C; // type:object size:0xC -lbl_1_data_78 = .data:0x00000078; // type:object size:0x23 data:string +lbl_1_data_78 = .data:0x00000078; // type:object size:0x23 scope:local data:string lbl_1_data_9C = .data:0x0000009C; // type:object size:0xC lbl_1_data_A8 = .data:0x000000A8; // type:object size:0xC lbl_1_data_B4 = .data:0x000000B4; // type:object size:0x4 jumptable_1_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x44 data:byte -lbl_1_data_130 = .data:0x00000130; // type:object size:0x14 -lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x44 data:4byte +lbl_1_data_130 = .data:0x00000130; // type:object size:0x14 scope:local data:string +lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 scope:local data:string lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 data:4byte lbl_1_data_150 = .data:0x00000150; // type:object size:0x30 data:float lbl_1_data_180 = .data:0x00000180; // type:object size:0x30 @@ -360,9 +360,10 @@ lbl_1_data_69C = .data:0x0000069C; // type:object size:0x4 lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x2 data:2byte lbl_1_data_6A4 = .data:0x000006A4; // type:object size:0x30 lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x20 -lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x19 data:string -lbl_1_data_70D = .data:0x0000070D; // type:object size:0x5 data:string -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0xC data:4byte +lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x19 scope:local data:string +lbl_1_data_70D = .data:0x0000070D; // type:object size:0x5 scope:local data:string +lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x8 data:4byte lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 54bb4561..400de22c 100644 --- a/configure.py +++ b/configure.py @@ -1086,8 +1086,8 @@ config.libs = [ Rel( "m428Dll", # Cliffhangers objects={ - Object(NonMatching, "REL/m428Dll/main.c"), - Object(NonMatching, "REL/m428Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m428Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m428Dll/map.c"), Object(NonMatching, "REL/m428Dll/player.c"), }, ), diff --git a/include/REL/m428Dll.h b/include/REL/m428Dll.h new file mode 100644 index 00000000..9d30ded6 --- /dev/null +++ b/include/REL/m428Dll.h @@ -0,0 +1,31 @@ +#ifndef M428DLL_H +#define M428DLL_H + +#include "game/object.h" + +u32 fn_1_26E0(void); +void fn_1_4170(s16 arg0, s32 arg1); + +void fn_1_4324(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3); +void fn_1_43C8(Process *arg0); +void fn_1_4630(void); +u8 fn_1_9990(Vec *arg0); +void fn_1_9A30(u8 arg0, float arg8, Vec *arg1, Vec *arg2, float arg9); +void fn_1_9ADC(u8 arg0); +void fn_1_9DE8(u8 arg0, float arg8, s8 arg1); +void fn_1_9EA8(u8 arg0); + +omObjData *fn_1_9F5C(Process *process); +void fn_1_A0B0(void); +s32 fn_1_F354(void); +s32 fn_1_F3BC(s32 arg0); +void fn_1_F414(s32 arg0); +void fn_1_F454(s32 arg0, s32 arg1); +void fn_1_F46C(s32 arg0, s32 arg1); +void fn_1_F4B4(s32 arg0, s32 arg1, float arg8); +s32 fn_1_F4E8(s32 arg0); +void fn_1_116C4(s32 arg0, s32 arg1); +void fn_1_11754(s32 arg0, float arg8); +void fn_1_11798(s32 arg0); + +#endif diff --git a/include/REL/m433Dll.h b/include/REL/m433Dll.h index 5028045a..fc0407db 100644 --- a/include/REL/m433Dll.h +++ b/include/REL/m433Dll.h @@ -1,5 +1,5 @@ -#ifndef M4303LL_H -#define M4303LL_H +#ifndef M430DLL_H +#define M430DLL_H #include "game/object.h" diff --git a/include/dolphin/gx/GXTransform.h b/include/dolphin/gx/GXTransform.h index bc3bf107..70aa877c 100644 --- a/include/dolphin/gx/GXTransform.h +++ b/include/dolphin/gx/GXTransform.h @@ -20,6 +20,8 @@ void GXLoadPosMtxImm(f32 mtx[3][4], u32 id); void GXLoadNrmMtxImm(f32 mtx[3][4], u32 id); void GXLoadTexMtxImm(f32 mtx[][4], u32 id, GXTexMtxType type); #endif +void GXProject(f32 x, f32 y, f32 z, const f32 mtx[3][4], const f32 *pm, const f32 *vp, f32 *sx, f32 *sy, f32 *sz); +void GXGetViewportv(f32 *vp); void GXSetViewport(f32 left, f32 top, f32 wd, f32 ht, f32 nearz, f32 farz); void GXSetCurrentMtx(u32 id); void GXSetViewportJitter(f32 left, f32 top, f32 wd, f32 ht, f32 nearz, f32 farz, u32 field); diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c index 9fc806f3..2c2d321c 100644 --- a/src/REL/m425Dll/main.c +++ b/src/REL/m425Dll/main.c @@ -462,9 +462,6 @@ void fn_1_F48(omObjData *object) void fn_1_FA8(omObjData *object) { M425DllUnkBss10Struct *var_r31; - s32 var_ctr; - void *var_r4; - s32 temp_r3; s32 var_r30; s16 *var_r28; s32 var_r27; @@ -582,11 +579,8 @@ void fn_1_14CC(Mtx arg0, float arg8, float arg9, float argA) float fn_1_15EC(float arg8, float arg9) { - float var_f31; - float var_f30; - - var_f30 = 360.0f; - var_f31 = 180.0 * (atan2f(arg9, arg8) / M_PI); + float var_f30 = 360.0f; + float var_f31 = 180.0 * (atan2f(arg9, arg8) / M_PI); if (var_f31 < 0.0f) { var_f31 += var_f30; } @@ -684,6 +678,18 @@ void fn_1_1B40(omObjData *object) int x = 12; int y = 24; char *str = "%f"; + (void)x; + (void)x; + (void)x; + (void)x; + (void)y; + (void)y; + (void)y; + (void)y; + (void)str; + (void)str; + (void)str; + (void)str; print8(x, y, 1.5f, str, sqrtf(fn_1_15EC(object->trans.x, object->trans.y))); } var_r31->unk_38 = var_r31->unk_04 * sind(var_r31->unk_18); diff --git a/src/REL/m428Dll/main.c b/src/REL/m428Dll/main.c new file mode 100644 index 00000000..cd2f3688 --- /dev/null +++ b/src/REL/m428Dll/main.c @@ -0,0 +1,1094 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/init.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m428Dll.h" + +#ifndef __MWERKS__ +#include "game/ClusterExec.h" +#include "game/EnvelopeExec.h" +#include "game/ShapeExec.h" +#include "game/frand.h" +#endif + +typedef struct M428DllData0Struct { + /* 0x00 */ Vec unk_00; + /* 0x0C */ Vec unk_0C; + /* 0x18 */ float unk_18; +} M428DllData0Struct; /* size = 0x1C */ + +typedef struct M428DllUnkStruct2 { + s16 unk_00[0x10]; + float unk_20[0x10]; + s32 unk_60; +} M428DllUnkStruct2; /* size = 0x64 */ + +typedef struct M428DllUnkStruct { + M428DllUnkStruct2 unk_00[0x10]; + ShadowData unk_640[0x10]; + ShadowData unk_FC0; +} M428DllUnkStruct; /* size = 0x1058 */ + +void fn_1_478(omObjData *); +void fn_1_25CC(omObjData *object); +void fn_1_261C(omObjData *arg0); +void fn_1_29E8(omObjData *object); +void fn_1_2ACC(s32 arg0); +void fn_1_2B8(omObjData *object); +void fn_1_2C90(ModelData *, float[3][4]); +void fn_1_2E2C(s32 arg0); +void fn_1_40A4(void); + +M428DllData0Struct lbl_1_data_0[3] = { + { 65.0f, 0.0f, 0.0f, 0.0f, 400.0f, 0.0f, 2000.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 400.0f, 0.0f, 2000.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 400.0f, 0.0f, 1575.0f }, +}; + +Vec lbl_1_data_54 = { -1000.0f, 2000.0f, 1000.0f }; +Vec lbl_1_data_60 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_6C = { 0.0f, 0.0f, -450.0f }; + +Process *lbl_1_bss_88; +s32 lbl_1_bss_84; +s32 lbl_1_bss_80; +u32 lbl_1_bss_7C; +s32 lbl_1_bss_78; +s32 lbl_1_bss_74; +s32 lbl_1_bss_70; +s32 lbl_1_bss_6C; +s32 lbl_1_bss_68; +s32 lbl_1_bss_64; +s32 lbl_1_bss_60; +float lbl_1_bss_58[2]; +s16 lbl_1_bss_50[4]; +s16 lbl_1_bss_48[4]; +s32 lbl_1_bss_38[4]; +float lbl_1_bss_28[4]; +s32 lbl_1_bss_24; +s32 lbl_1_bss_20; +omObjData *lbl_1_bss_1C; +s32 lbl_1_bss_18; +omObjData *lbl_1_bss_14; +s32 lbl_1_bss_10; +s32 lbl_1_bss_C; +char lbl_1_bss_4[8]; +s32 lbl_1_bss_0; + +void ObjectSetup(void) +{ + s32 var_r31; + Process *var_r30; + s32 var_r29; + + OSReport("******* M428ObjectSetup *********\n"); + var_r30 = omInitObjMan(0x32, 0x2000); + lbl_1_bss_88 = var_r30; + omGameSysInit(var_r30); + Hu3DLightAllKill(); + Hu3DLighInit(); + lbl_1_bss_1C = omAddObjEx(var_r30, 0xFF, 2, 0, -1, fn_1_2B8); + lbl_1_bss_84 = lbl_1_bss_80 = -1; + HuAudSndGrpSet(0x35); + lbl_1_bss_7C = 0; + lbl_1_bss_78 = 0; + lbl_1_bss_68 = 0; + lbl_1_bss_64 = -1; + lbl_1_bss_60 = 0; + lbl_1_bss_24 = -1; + lbl_1_bss_20 = 0; + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_50[var_r31] = -1; + lbl_1_bss_48[var_r31] = -1; + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_38[var_r31] = -1; + } + var_r29 = GWGameStat.rumble; + lbl_1_bss_18 = var_r29; + Hu3DShadowCreate(45.0f, 1000.0f, 250000.0f); + Hu3DShadowTPLvlSet(0.5f); + Hu3DShadowPosSet(&lbl_1_data_54, &lbl_1_data_60, &lbl_1_data_6C); + fn_1_2ACC(3); +} + +Vec lbl_1_data_9C = { 0.0f, 0.0f, 0.0f }; +Vec lbl_1_data_A8 = { -1.0f, -2.0f, -1.0f }; +GXColor lbl_1_data_B4 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +void fn_1_2B8(omObjData *var_r27) +{ + s32 var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + var_r28 = Hu3DGLightCreateV(&lbl_1_data_9C, &lbl_1_data_A8, &lbl_1_data_B4); + Hu3DGLightStaticSet(var_r28, 1); + Hu3DGLightInfinitytSet(var_r28); + for (var_r31 = 0, var_r30 = 0, var_r29 = 0; var_r31 < 4; var_r31++) { + if (GWPlayerCfg[var_r31].group == 0) { + lbl_1_bss_50[var_r30] = var_r31; + lbl_1_bss_48[var_r30] = GWPlayerCfg[var_r31].character; + var_r30++; + } + else { + lbl_1_bss_50[var_r29 + 2] = var_r31; + lbl_1_bss_48[var_r29 + 2] = GWPlayerCfg[var_r31].character; + var_r29++; + } + } + if ((var_r30 != 2) || (var_r29 != 2)) { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_50[var_r31] = var_r31; + lbl_1_bss_48[var_r31] = GWPlayerCfg[var_r31].character; + } + } + fn_1_43C8(lbl_1_bss_88); + fn_1_9F5C(lbl_1_bss_88); + var_r27->func = fn_1_478; +} + +void fn_1_478(omObjData *object) +{ + Vec sp5C; + Vec sp50; + Vec sp44; + Vec sp38; + Vec sp2C; + float var_f31; + s32 var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + + switch (lbl_1_bss_7C) { + case 0: + lbl_1_bss_78++; + Hu3DCamera->fov = -1.0f; + Hu3DCamera[1].fov = -1.0f; + if (lbl_1_bss_78 > 3) { + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + lbl_1_bss_20 = 0; + fn_1_11798(1); + lbl_1_bss_38[0] = HuAudFXPlay(0x65F); + if ((lbl_1_bss_38[1] = HuAudFXPlay(0x660)) != -1) { + lbl_1_bss_28[1] = 0.0f; + HuAudFXVolSet(lbl_1_bss_38[1], (s32)(127.0f * lbl_1_bss_28[1])); + HuAudFXPitchSet(lbl_1_bss_38[1], (s32)(8191.0f * lbl_1_bss_28[1])); + } + if ((lbl_1_bss_38[2] = HuAudFXPlay(0x661)) != -1) { + lbl_1_bss_28[2] = 0.0f; + HuAudFXVolSet(lbl_1_bss_38[2], (s32)(127.0f * lbl_1_bss_28[2])); + HuAudFXPitchSet(lbl_1_bss_38[2], (s32)(8191.0f * lbl_1_bss_28[2])); + } + Hu3DCamera->fov = 45.0f; + Hu3DCamera[1].fov = 45.0f; + lbl_1_bss_7C = 1; + lbl_1_bss_78 = 0; + } + break; + case 1: + if (WipeStatGet() == 0) { + lbl_1_bss_7C = 2; + lbl_1_bss_78 = 0; + } + else { + sp2C.x = lbl_1_data_0->unk_00.x; + sp2C.y = lbl_1_data_0->unk_00.y; + sp2C.z = lbl_1_data_0->unk_00.z; + sp38.x = lbl_1_data_0->unk_0C.x; + sp38.y = lbl_1_data_0->unk_0C.y; + sp38.z = lbl_1_data_0->unk_0C.z; + fn_1_9A30(0, 1.0f, &sp38, &sp2C, lbl_1_data_0->unk_18); + fn_1_9A30(1, 1.0f, &sp38, &sp2C, lbl_1_data_0->unk_18); + } + break; + case 2: + if (++lbl_1_bss_78 == 0x78) { + sp2C.x = lbl_1_data_0[2].unk_00.x; + sp2C.y = lbl_1_data_0[2].unk_00.y; + sp2C.z = lbl_1_data_0[2].unk_00.z; + sp38.x = lbl_1_data_0[2].unk_0C.x; + sp38.y = lbl_1_data_0[2].unk_0C.y; + sp38.z = lbl_1_data_0[2].unk_0C.z; + fn_1_9A30(0, 300.0f, &sp38, &sp2C, lbl_1_data_0[2].unk_18); + fn_1_9A30(1, 300.0f, &sp38, &sp2C, lbl_1_data_0[2].unk_18); + } + if ((fn_1_F354() != 0) && (lbl_1_bss_78 >= 0x78)) { + sp2C.x = lbl_1_data_0[1].unk_00.x; + sp2C.y = lbl_1_data_0[1].unk_00.y; + sp2C.z = lbl_1_data_0[1].unk_00.z; + sp38.x = lbl_1_data_0[1].unk_0C.x; + sp38.y = lbl_1_data_0[1].unk_0C.y; + sp38.z = lbl_1_data_0[1].unk_0C.z; + fn_1_9A30(0, 42.0f, &sp38, &sp2C, lbl_1_data_0[1].unk_18); + fn_1_9A30(1, 42.0f, &sp38, &sp2C, lbl_1_data_0[1].unk_18); + lbl_1_bss_84 = MGSeqCreate(3, 0); + lbl_1_bss_7C = 3; + lbl_1_bss_78 = 0; + lbl_1_bss_68 = 0; + } + break; + case 3: + if (lbl_1_bss_84 != -1) { + var_r27 = MGSeqStatGet(lbl_1_bss_84); + if (((var_r27 & 0x10) != 0) && (lbl_1_bss_24 == -1)) { + lbl_1_bss_24 = HuAudSeqPlay(0x4B); + } + } + else { + var_r27 = 0; + } + if ((lbl_1_bss_84 == -1) || (var_r27 == 0)) { + lbl_1_bss_84 = -1; + lbl_1_bss_7C = 4; + lbl_1_bss_78 = 0; + lbl_1_bss_74 = 180.0f + 120.0f * (0.007874016f * (frand() & 0x7F)); + lbl_1_bss_70 = 90.0f + 60.0f * (0.007874016f * (frand() & 0x7F)); + lbl_1_bss_6C = 45.0f + (120.0f * (0.007874016f * (frand() & 0x7F))); + lbl_1_bss_58[0] = 15.0f; + lbl_1_bss_58[1] = 15.0f; + lbl_1_bss_68 = 0x4650; + } + break; + case 4: + if (++lbl_1_bss_78 >= lbl_1_bss_74) { + var_r29 = lbl_1_bss_78 - lbl_1_bss_74; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + if (lbl_1_bss_58[var_r31] < 60.0f) { + var_r30 = 0; + } + else { + var_r30 = 1; + } + if (var_r29 <= (15.0f + (21.0f + lbl_1_bss_6C))) { + fn_1_9DE8(var_r31, 15.0f, 1); + fn_1_11754(var_r31, 0.05f); + if (var_r29 == 0) { + fn_1_F46C(var_r31, 0); + } + else if (var_r29 < lbl_1_bss_6C) { + fn_1_F454(var_r31, 1); + if ((var_r30 == 1) && (fn_1_F4E8(var_r31) == 0)) { + lbl_1_bss_58[var_r31] = 15.0f; + } + } + else if (var_r29 == lbl_1_bss_6C) { + if (var_r30 == 1) { + fn_1_F46C(var_r31, var_r30); + } + } + else if (var_r29 == (21.0f + lbl_1_bss_6C)) { + if (var_r30 == 0) { + fn_1_F454(var_r31, 2); + } + else { + fn_1_F454(var_r31, 3); + if (lbl_1_bss_18 == 0) { + fn_1_116C4(var_r31, 1); + } + if (var_r30 != 0) { + fn_1_F4B4(var_r31, lbl_1_bss_70, 3.125f); + } + } + } + } + else { + fn_1_9DE8(var_r31, lbl_1_bss_58[var_r31], 1); + if ((var_r29 < ((15.0f + lbl_1_bss_6C + lbl_1_bss_70) - 6.0f)) && (var_r30 == 1)) { + var_f31 = 0.10000000149011612 * sind((20.0f * var_r29)); + fn_1_11754(var_r31, 0.3f + var_f31); + } + if (var_r30 == 0) { + fn_1_F454(var_r31, 4); + } + else { + fn_1_F454(var_r31, 5); + } + } + } + if (var_r29 == (15.0f + lbl_1_bss_6C + lbl_1_bss_70)) { + fn_1_F454(0, 6); + fn_1_F454(1, 6); + } + else if (var_r29 > (15.0f + lbl_1_bss_6C + lbl_1_bss_70)) { + fn_1_9EA8(0); + fn_1_9EA8(1); + fn_1_11754(0, 0.0f); + fn_1_11754(1, 0.0f); + fn_1_F46C(0, -1); + fn_1_F46C(1, -1); + fn_1_F454(0, 0); + fn_1_F454(1, 0); + if ((frand() & 3) == 0) { + lbl_1_bss_58[0] = lbl_1_bss_58[1] = 15.0f; + } + else { + lbl_1_bss_58[0] = lbl_1_bss_58[1] = 60.0f; + } + lbl_1_bss_78 = 0; + lbl_1_bss_74 = 180.0f + 120.0f * (0.007874016f * (frand() & 0x7F)); + lbl_1_bss_70 = 90.0f + 60.0f * (0.007874016f * (frand() & 0x7F)); + lbl_1_bss_6C = 45.0f + (120.0f * (0.007874016f * (frand() & 0x7F))); + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + if (lbl_1_bss_58[var_r31] < 60.0f) { + var_r30 = 0; + } + else { + var_r30 = 1; + } + if ((var_r29 <= (15.0f + (21.0f + lbl_1_bss_6C))) || (var_r30 < 1)) { + if (lbl_1_bss_28[var_r31 + 1] < 0.5f) { + lbl_1_bss_28[var_r31 + 1] += 0.1f; + } + if (lbl_1_bss_28[var_r31 + 1] > 0.5f) { + lbl_1_bss_28[var_r31 + 1] -= 0.1f; + } + } + else { + if (lbl_1_bss_28[var_r31 + 1] < 1.0f) { + lbl_1_bss_28[var_r31 + 1] += 0.1f; + } + if (lbl_1_bss_28[var_r31 + 1] > 1.0f) { + lbl_1_bss_28[var_r31 + 1] = 1.0f; + } + } + } + } + else { + if (lbl_1_bss_28[1] > 0.0f) { + lbl_1_bss_28[1] -= 0.01f; + } + if (lbl_1_bss_28[1] < 0.0f) { + lbl_1_bss_28[1] = 0.0f; + } + if (lbl_1_bss_28[2] > 0.0f) { + lbl_1_bss_28[2] -= 0.01f; + } + if (lbl_1_bss_28[2] < 0.0f) { + lbl_1_bss_28[2] = 0.0f; + } + } + if (lbl_1_bss_38[1] != -1) { + HuAudFXVolSet(lbl_1_bss_38[1], (s32)(127.0f * lbl_1_bss_28[1])); + HuAudFXPitchSet(lbl_1_bss_38[1], (s32)(8191.0f * lbl_1_bss_28[1])); + } + if (lbl_1_bss_38[2] != -1) { + HuAudFXVolSet(lbl_1_bss_38[2], (s32)(127.0f * lbl_1_bss_28[2])); + HuAudFXPitchSet(lbl_1_bss_38[2], (s32)(8191.0f * lbl_1_bss_28[2])); + } + if ((lbl_1_bss_68 <= 1800.0f) && (lbl_1_bss_80 == -1)) { + lbl_1_bss_80 = MGSeqCreate(1, lbl_1_bss_68 / 60, -1, -1); + } + if (lbl_1_bss_80 != -1) { + var_r28 = (lbl_1_bss_68 + 0x3B) / 60; + if (var_r28 < 0) { + var_r28 = 0; + } + MGSeqParamSet(lbl_1_bss_80, 1, var_r28); + } + var_r26 = fn_1_F3BC(0); + var_r25 = fn_1_F3BC(1); + if ((--lbl_1_bss_68 < -1) || (var_r26 != 0) || (var_r25 != 0)) { + if (lbl_1_bss_80 != -1) { + MGSeqParamSet(lbl_1_bss_80, 2, -1); + } + lbl_1_bss_80 = -1; + lbl_1_bss_84 = MGSeqCreate(3, 1); + fn_1_9EA8(0); + fn_1_9EA8(1); + fn_1_11754(0, 0.0f); + fn_1_11754(1, 0.0f); + fn_1_F46C(0, -1); + fn_1_F46C(1, -1); + fn_1_F454(0, 0); + fn_1_F454(1, 0); + if (lbl_1_bss_38[0] != -1) { + HuAudFXFadeOut(lbl_1_bss_38[0], 0x64); + } + if (lbl_1_bss_38[1] != -1) { + HuAudFXFadeOut(lbl_1_bss_38[1], 0x64); + } + if (lbl_1_bss_38[2] != -1) { + HuAudFXFadeOut(lbl_1_bss_38[2], 0x64); + } + if (lbl_1_bss_24 != -1) { + HuAudSeqFadeOut(lbl_1_bss_24, 0x64); + } + if ((var_r26 != 0) && (var_r25 != 0)) { + if ((frand() & 1) != 0) { + lbl_1_bss_64 = 0; + } + else { + lbl_1_bss_64 = 1; + } + } + else if (var_r26 != 0) { + lbl_1_bss_64 = 0; + } + else if (var_r25 != 0) { + lbl_1_bss_64 = 1; + } + lbl_1_bss_7C = 6; + lbl_1_bss_78 = 0; + } + break; + case 6: + if ((lbl_1_bss_64 == -1) || (lbl_1_bss_84 == -1) || (MGSeqStatGet(lbl_1_bss_84) == 0)) { + if (lbl_1_bss_64 != -1) { + lbl_1_bss_84 = -1; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x1E); + WipeColorSet(0xFF, 0xFF, 0xFF); + lbl_1_bss_20 = 1; + } + lbl_1_bss_7C = 5; + lbl_1_bss_78 = 0; + } + break; + case 5: + if (lbl_1_bss_64 != -1) { + if (WipeStatGet() == 0) { + lbl_1_bss_7C = 7; + lbl_1_bss_78 = 0; + } + } + else if ((lbl_1_bss_84 == -1) || (MGSeqStatGet(lbl_1_bss_84) == 0)) { + lbl_1_bss_84 = -1; + lbl_1_bss_7C = 8; + lbl_1_bss_78 = 0; + } + break; + case 7: + lbl_1_bss_78++; + if (lbl_1_bss_78 == 1) { + if (lbl_1_bss_64 == 0) { + fn_1_9ADC(0); + fn_1_F414(0); + lbl_1_bss_60 = 1; + fn_1_11798(0); + } + else if (lbl_1_bss_64 == 1) { + fn_1_9ADC(1); + fn_1_F414(1); + lbl_1_bss_60 = 1; + fn_1_11798(0); + } + } + else if (lbl_1_bss_78 >= 0xA) { + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 0x3C); + WipeColorSet(0xFF, 0xFF, 0xFF); + lbl_1_bss_20 = 0; + lbl_1_bss_38[3] = HuAudFXPlay(0x662); + lbl_1_bss_7C = 8; + lbl_1_bss_78 = 0; + } + break; + case 8: + if (lbl_1_bss_64 == 0) { + if (++lbl_1_bss_78 >= 120.0f) { + lbl_1_bss_7C = 9; + lbl_1_bss_78 = 0; + } + } + else if (lbl_1_bss_64 == 1) { + if (++lbl_1_bss_78 >= 120.0f) { + lbl_1_bss_7C = 9; + lbl_1_bss_78 = 0; + } + } + else { + if (++lbl_1_bss_78 >= 60.0f) { + lbl_1_bss_7C = 9; + lbl_1_bss_78 = 0; + } + } + break; + case 9: + if (lbl_1_bss_64 == 0) { + lbl_1_bss_84 = MGSeqCreate(5, 3, lbl_1_bss_48[0], lbl_1_bss_48[1], -1, -1); + GWPlayerCoinWinAdd(lbl_1_bss_50[0], 10); + GWPlayerCoinWinAdd(lbl_1_bss_50[1], 10); + HuAudSStreamPlay(1); + lbl_1_bss_7C = 0xA; + lbl_1_bss_68 = 0; + } + else if (lbl_1_bss_64 == 1) { + lbl_1_bss_84 = MGSeqCreate(5, 3, lbl_1_bss_48[2], lbl_1_bss_48[3], -1, -1); + GWPlayerCoinWinAdd(lbl_1_bss_50[2], 10); + GWPlayerCoinWinAdd(lbl_1_bss_50[3], 10); + HuAudSStreamPlay(1); + lbl_1_bss_7C = 0xA; + lbl_1_bss_68 = 0; + } + else { + lbl_1_bss_84 = MGSeqCreate(3, 2); + lbl_1_bss_7C = 0xA; + lbl_1_bss_68 = 0; + HuAudSStreamPlay(4); + } + break; + case 10: + if (++lbl_1_bss_68 >= 210.0f) { + lbl_1_bss_84 = -1; + lbl_1_bss_7C = 0xB; + lbl_1_bss_68 = 0; + } + break; + case 11: + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 0x3C); + lbl_1_bss_20 = 1; + if (lbl_1_bss_38[3] != -1) { + HuAudFXStop(lbl_1_bss_38[3]); + } + object->func = fn_1_25CC; + break; + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + sp50.x = CenterM[var_r31].x; + sp50.y = CenterM[var_r31].y; + sp50.z = CenterM[var_r31].z; + if (lbl_1_bss_60 == 0) { + sp5C.x = CenterM[var_r31].x - 1200.0f; + sp5C.y = 1200.0f + CenterM[var_r31].y; + sp5C.z = 1200.0f + CenterM[var_r31].z; + } + else { + sp5C.x = CenterM[var_r31].x - 600.0f; + sp5C.y = 1000.0f + CenterM[var_r31].y; + sp5C.z = 600.0f + CenterM[var_r31].z; + } + sp44.x = 0.0f; + sp44.y = 1.0f; + sp44.z = 0.0f; + fn_1_4324(var_r31, &sp5C, &sp44, &sp50); + } + fn_1_261C(object); +} + +void fn_1_25CC(omObjData *object) +{ + if (WipeStatGet() == 0) { + fn_1_4630(); + fn_1_A0B0(); + fn_1_40A4(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_261C(omObjData *object) +{ + s32 var_r30 = 0; + if ((WipeStatGet() != 0) || (object->func == fn_1_25CC)) { + return; + } + if (omSysExitReq != 0) { + var_r30 = 1; + } + if (var_r30 != 0) { + if (lbl_1_bss_20 == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + } + lbl_1_bss_20 = 1; + HuAudSeqAllFadeOut(0x64); + object->func = fn_1_25CC; + } +} + +u32 fn_1_26E0(void) +{ + return lbl_1_bss_7C; +} + +void fn_1_26F0(void) +{ + s32 var_r31; + omObjData *object; + + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, 45.0f, 50.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x140, 0x1E0); + Hu3DCameraCreate(2); + Hu3DCameraPerspectiveSet(2, 45.0f, 50.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(2, 0.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(2, 0, 0, 0x140, 0x1E0); + object = lbl_1_bss_14 = omAddObjEx(lbl_1_bss_88, 0x7FDA, 0, 0, -1, omOutViewMulti); + object->work[0] = 2; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + CRotM[var_r31].x = lbl_1_data_0->unk_00.x; + CRotM[var_r31].y = lbl_1_data_0->unk_00.y; + CRotM[var_r31].z = lbl_1_data_0->unk_00.z; + CenterM[var_r31].x = lbl_1_data_0->unk_0C.x; + CenterM[var_r31].y = lbl_1_data_0->unk_0C.y; + CenterM[var_r31].z = lbl_1_data_0->unk_0C.z; + CZoomM[var_r31] = lbl_1_data_0->unk_18; + } + lbl_1_bss_C = 0; + lbl_1_bss_10 = -1; + omAddObjEx(lbl_1_bss_88, 0xFE, 0, 0, -1, fn_1_29E8); +} + +void fn_1_29E8(omObjData *object) { } + +void fn_1_29EC(void) { } + +s32 fn_1_29F0(void) +{ + return lbl_1_bss_C; +} + +void fn_1_2A00(s32 arg0, s32 arg1, float arg8) +{ + M428DllData0Struct *var_r31; + M428DllData0Struct *var_r30; + + var_r31 = &lbl_1_data_0[arg0]; + var_r30 = &lbl_1_data_0[arg1]; + Center.x = var_r31->unk_0C.x + (arg8 * (var_r30->unk_0C.x - var_r31->unk_0C.x)); + Center.y = var_r31->unk_0C.y + (arg8 * (var_r30->unk_0C.y - var_r31->unk_0C.y)); + Center.z = var_r31->unk_0C.z + (arg8 * (var_r30->unk_0C.z - var_r31->unk_0C.z)); + CZoom = var_r31->unk_18 + (arg8 * (var_r30->unk_18 - var_r31->unk_18)); +} + +void fn_1_2ACC(s32 arg0) +{ + ShadowData *var_r31; + s32 var_r30; + M428DllUnkStruct2 *var_r29; + ModelData *var_r28; + M428DllUnkStruct *var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + u32 var_r23; + + lbl_1_bss_0 = var_r24 = Hu3DHookFuncCreate(fn_1_2C90); + var_r28 = &Hu3DData[var_r24]; + Hu3DModelLayerSet(var_r24, 0); + var_r27 = var_r28->unk_120 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M428DllUnkStruct), var_r28->unk_48); + memset(var_r27, 0, sizeof(M428DllUnkStruct)); + var_r27->unk_FC0 = Hu3DShadowData; + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + var_r29 = &var_r27->unk_00[var_r30]; + var_r31 = &var_r27->unk_640[var_r30]; + var_r23 = 1 << var_r30; + + *var_r31 = Hu3DShadowData; + for (var_r26 = 0; var_r26 < 0x10; var_r26++) { + var_r29->unk_00[var_r26] = -1; + var_r29->unk_20[var_r26] = 1.0f; + } + var_r29->unk_60 = 0; + if ((var_r23 & arg0) != 0) { + if (var_r30 == 0) { + var_r31->unk_04 = Hu3DShadowData.unk_04; + } + else { + var_r25 = var_r31->unk_02; + var_r31->unk_04 = HuMemDirectMallocNum(HEAP_DATA, var_r25 * var_r25, var_r28->unk_48); + } + } + else { + var_r31->unk_04 = NULL; + } + } + Hu3DShadowCamBit++; +} + +void fn_1_2C90(ModelData *model, Mtx matrix) +{ + ShadowData *var_r31; + s32 var_r30; + M428DllUnkStruct *var_r29; + M428DllUnkStruct2 *var_r28; + + var_r29 = model->unk_120; + if (Hu3DCameraNo == 0) { + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + var_r28 = &var_r29->unk_00[var_r30]; + var_r31 = &var_r29->unk_640[var_r30]; + if ((var_r31->unk_04 != NULL) && !(var_r31->unk_08.x <= 0.0f) && (var_r28->unk_60 > 0)) { + Hu3DShadowData = *var_r31; + fn_1_2E2C(var_r30); + *var_r31 = Hu3DShadowData; + } + } + HuSprDispInit(); + HuSprExec(0x7F); + } + var_r28 = &var_r29->unk_00[Hu3DCameraNo]; + var_r31 = &var_r29->unk_640[Hu3DCameraNo]; + if ((var_r31->unk_04 == NULL) || (var_r31->unk_08.x <= 0.0f)) { + return; + } + Hu3DShadowData = *var_r31; +} + +GXColor lbl_1_data_E8 = { 0, 0, 0, 0 }; + +void fn_1_2E2C(s32 var_r26) +{ + Mtx spBC; + Mtx sp8C; + Mtx sp5C; + Mtx44 sp1C; + ShadowData *sp18; + ModelData *var_r31; + s16 var_r30; + M428DllUnkStruct2 *var_r29; + M428DllUnkStruct *var_r28; + s32 var_r27; + s32 var_r25; + u32 var_r24; + + var_r31 = &Hu3DData[lbl_1_bss_0]; + var_r28 = var_r31->unk_120; + var_r29 = &var_r28->unk_00[var_r26]; + sp18 = &var_r28->unk_640[var_r26]; + var_r24 = Hu3DShadowData.unk_00; + if (var_r26 == 0) { + GXSetViewport(0.0f, 0.0f, RenderMode->fbWidth, RenderMode->xfbHeight, 0.0f, 1.0f); + GXSetScissor(0, 0, RenderMode->fbWidth, RenderMode->efbHeight); + C_MTXOrtho(sp1C, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f); + GXSetProjection(sp1C, GX_ORTHOGRAPHIC); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_U8, 0); + GXSetTevColor(GX_TEVREG0, BGColor); + GXSetNumTexGens(0); + GXSetNumTevStages(1); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumChans(0); + PSMTXIdentity(sp8C); + GXLoadPosMtxImm(sp8C, 0); + GXSetZMode(0, GX_ALWAYS, GX_TRUE); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(1); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(1); + GXPosition1x8(1); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(1); + GXPosition1x8(0); + } + Hu3DDrawPreInit(); + GXSetCopyClear(lbl_1_data_E8, 0xFFFFFF); + C_MTXPerspective(sp1C, Hu3DShadowData.unk_08.x, 1.2f, Hu3DShadowData.unk_08.y, Hu3DShadowData.unk_08.z); + GXSetProjection(sp1C, GX_PERSPECTIVE); + if (Hu3DShadowData.unk_02 <= 0xF0) { + GXSetScissor(2, 2, (Hu3DShadowData.unk_02 * 2) - 4, (Hu3DShadowData.unk_02 * 2) - 4); + GXSetViewport(0.0f, 0.0f, Hu3DShadowData.unk_02 * 2, Hu3DShadowData.unk_02 * 2, 0.0f, 1.0f); + var_r25 = (Hu3DShadowData.unk_02 / 2) * (Hu3DShadowData.unk_02 / 2); + } + else { + GXSetScissor(1, 1, Hu3DShadowData.unk_02 - 2, Hu3DShadowData.unk_02 - 2); + GXSetViewport(0.0f, 0.0f, Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, 0.0f, 1.0f); + var_r25 = Hu3DShadowData.unk_02 * Hu3DShadowData.unk_02; + } + C_MTXLookAt(Hu3DCameraMtx, &Hu3DShadowData.unk_14, &Hu3DShadowData.unk_2C, &Hu3DShadowData.unk_20); + PSMTXCopy(Hu3DCameraMtx, Hu3DShadowData.unk_38); + shadowModelDrawF = 1; + GXInvalidateTexAll(); + GXSetFog(GX_FOG_NONE, 0.0f, 0.0f, 0.0f, 0.0f, BGColor); + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + if (var_r29->unk_00[var_r30] != -1) { + var_r31 = &Hu3DData[var_r29->unk_00[var_r30]]; + if (((var_r31->attr & 1) == 0) && ((var_r31->attr & 0x8000) == 0)) { + if ((var_r31->attr & 8) != 0) { + var_r27 = 0; + if (var_r31->unk_08 != -1) { + Hu3DMotionExec(var_r30, var_r31->unk_08, var_r31->unk_64, 0); + } + if (var_r31->unk_0C != -1) { + Hu3DSubMotionExec(var_r30); + } + if (var_r31->unk_0A != -1) { + Hu3DMotionExec(var_r30, var_r31->unk_0A, var_r31->unk_74, 1); + } + if ((var_r31->attr & 0x400) != 0) { + ClusterMotionExec(var_r31); + var_r27 = 1; + } + if (var_r31->unk_0E != -1) { + if (var_r31->unk_08 == -1) { + Hu3DMotionExec(var_r30, var_r31->unk_0E, var_r31->unk_94, 0); + } + else { + Hu3DMotionExec(var_r30, var_r31->unk_0E, var_r31->unk_94, 1); + } + } + if (((var_r31->attr & 0x90) == 0) || ((var_r31->motion_attr & 0x40000002) == 0)) { + var_r27 = 1; + InitVtxParm(var_r31->hsfData); + if (var_r31->unk_0E != -1) { + ShapeProc(var_r31->hsfData); + } + if ((var_r31->attr & 0x400) != 0) { + ClusterProc(var_r31); + } + if (var_r31->hsfData->cenvCnt != 0) { + EnvelopeProc(var_r31->hsfData); + } + PPCSync(); + } + var_r31->attr |= 0x800; + } + Hu3DModelShadowSet(var_r29->unk_00[var_r30]); + Hu3DShadowData.unk_00 = (s8)(var_r29->unk_20[var_r30] * var_r24); + mtxRot(sp5C, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); + PSMTXScale(spBC, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + PSMTXConcat(sp5C, spBC, spBC); + mtxTransCat(spBC, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); + PSMTXConcat(Hu3DCameraMtx, spBC, sp8C); + PSMTXConcat(sp8C, var_r31->unk_F0, sp8C); + Hu3DDraw(var_r31, sp8C, &var_r31->scale); + Hu3DModelShadowReset(var_r29->unk_00[var_r30]); + } + } + } + Hu3DDrawPost(); + GXDrawDone(); + shadowModelDrawF = 0; + if (Hu3DShadowData.unk_02 <= 0xF0) { + GXSetTexCopySrc(0, 0, Hu3DShadowData.unk_02 * 2, Hu3DShadowData.unk_02 * 2); + GXSetTexCopyDst(Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, GX_CTF_R8, 1); + } + else { + GXSetTexCopySrc(0, 0, Hu3DShadowData.unk_02, Hu3DShadowData.unk_02); + GXSetTexCopyDst(Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, GX_CTF_R8, 0); + } + GXCopyTex(Hu3DShadowData.unk_04, 1); + GXSetViewport(0.0f, 0.0f, RenderMode->fbWidth, RenderMode->xfbHeight, 0.0f, 1.0f); + GXSetScissor(0, 0, RenderMode->fbWidth, RenderMode->efbHeight); + C_MTXOrtho(sp1C, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f); + GXSetProjection(sp1C, GX_ORTHOGRAPHIC); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_U8, 0); + GXSetTevColor(GX_TEVREG0, BGColor); + GXSetNumTexGens(0); + GXSetNumTevStages(1); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumChans(0); + PSMTXIdentity(sp8C); + GXLoadPosMtxImm(sp8C, 0); + GXSetZMode(0, GX_ALWAYS, 1); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(1); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(1); + GXPosition1x8(1); + GXPosition1x8(0); + GXPosition1x8(0); + GXPosition1x8(1); + GXPosition1x8(0); +} + +void fn_1_3B64(void) +{ + Mtx44 sp64; + Mtx sp34; + GXTexObj sp14; + ShadowData *sp10; + GXColor spC; + M428DllUnkStruct *var_r31; + M428DllUnkStruct2 *var_r30; + ModelData *var_r29; + u8 *var_r28; + + if (lbl_1_bss_0 != -1) { + var_r29 = &Hu3DData[lbl_1_bss_0]; + var_r31 = var_r29->unk_120; + var_r30 = &var_r31->unk_00[Hu3DCameraNo]; + sp10 = &var_r31->unk_640[Hu3DCameraNo]; + if (var_r30->unk_60 > 0) { + GXInitTexObj(&sp14, Hu3DShadowData.unk_04, Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, GX_TF_I8, GX_CLAMP, GX_CLAMP, 0); + GXInitTexObjLOD(&sp14, GX_NEAR, GX_NEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); + GXLoadTexObj(&sp14, GX_TEXMAP0); + C_MTXOrtho(sp64, 0.0f, 480.0f, 0.0f, 320.0f, 0.0f, 10.0f); + GXSetProjection(sp64, GX_ORTHOGRAPHIC); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + spC.a = 0x80; + GXSetTevColor(GX_TEVREG0, spC); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_TEXC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_A0); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumTexGens(1); + GXSetNumTevStages(1); + PSMTXIdentity(sp34); + GXLoadPosMtxImm(sp34, 0); + GXSetZMode(0, GX_LEQUAL, GX_FALSE); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(0.0f, 0.0f, 0.0f); + GXTexCoord2f32(0.0f, 0.0f); + GXPosition3f32(Hu3DShadowData.unk_02, 0.0f, 0.0f); + GXTexCoord2f32(1.0f, 0.0f); + GXPosition3f32(Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, 0.0f); + GXTexCoord2f32(1.0f, 1.0f); + GXPosition3f32(0.0f, Hu3DShadowData.unk_02, 0.0f); + GXTexCoord2f32(0.0f, 1.0f); + } + } +} + +s32 lbl_1_data_EC[] = { + 0, + 0, + 0x45ABE000, + 0xC576E000, + 0, + 0xBF333333, + 0x3F19999A, + 0xFFFFFFFF, + 0, + 0x45ABE000, + 0xC576E000, + 0, + 0x3F800000, + 0, + 0, + 0, + 0, +}; + +void fn_1_40A4(void) +{ + M428DllUnkStruct *var_r31; + ModelData *var_r30; + + var_r30 = &Hu3DData[lbl_1_bss_0]; + var_r31 = var_r30->unk_120; + Hu3DShadowData = var_r31->unk_FC0; + Hu3DModelKill(lbl_1_bss_0); + lbl_1_bss_0 = -1; + if (Hu3DShadowCamBit > 0) { + Hu3DShadowCamBit--; + } +} + +void fn_1_4170(s16 arg0, s32 arg1) +{ + ShadowData *sp8; + M428DllUnkStruct2 *var_r31; + s32 var_r30; + s32 var_r29; + M428DllUnkStruct *var_r28; + ModelData *var_r27; + u32 var_r26; + + var_r27 = &Hu3DData[lbl_1_bss_0]; + var_r28 = var_r27->unk_120; + for (var_r29 = 0; var_r29 < 0x10; var_r29++) { + var_r31 = &var_r28->unk_00[var_r29]; + sp8 = &var_r28->unk_640[var_r29]; + var_r26 = 1 << var_r29; + if ((var_r26 & arg1) != 0) { + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + if (arg0 != var_r31->unk_00[var_r30]) { + if (var_r31->unk_00[var_r30] == -1) { + var_r31->unk_00[var_r30] = arg0; + var_r31->unk_20[var_r30] = 1.0f; + var_r31->unk_60++; + break; + } + } + else { + break; + } + } + } + } +} + +void fn_1_4264(s16 arg0, s32 arg1, float arg8) +{ + ShadowData *sp8; + s32 var_r31; + s32 var_r30; + M428DllUnkStruct2 *var_r29; + M428DllUnkStruct *var_r28; + ModelData *var_r27; + u32 var_r26; + + var_r27 = &Hu3DData[lbl_1_bss_0]; + var_r28 = var_r27->unk_120; + for (var_r31 = 0; var_r31 < 0x10; var_r31++) { + var_r29 = &var_r28->unk_00[var_r31]; + sp8 = &var_r28->unk_640[var_r31]; + var_r26 = 1 << var_r31; + if ((var_r26 & arg1) != 0) { + for (var_r30 = 0; var_r30 < 0x10; var_r30++) { + if (arg0 == var_r29->unk_00[var_r30]) { + var_r29->unk_20[var_r30] = arg8; + } + } + } + } +} + +void fn_1_4324(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3) +{ + M428DllUnkStruct2 *sp8; + ShadowData *var_r31; + M428DllUnkStruct *var_r30; + ModelData *var_r29; + + var_r29 = &Hu3DData[lbl_1_bss_0]; + var_r30 = var_r29->unk_120; + sp8 = &var_r30->unk_00[arg0]; + var_r31 = &var_r30->unk_640[arg0]; + var_r31->unk_14 = *arg1; + var_r31->unk_20 = *arg3; + var_r31->unk_2C = *arg2; +} diff --git a/src/REL/m428Dll/map.c b/src/REL/m428Dll/map.c new file mode 100644 index 00000000..cadec1d3 --- /dev/null +++ b/src/REL/m428Dll/map.c @@ -0,0 +1,1275 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfformat.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/init.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m428Dll.h" + +#ifndef __MWERKS__ +#include "game/frand.h" +#endif + +typedef struct M433DllMapWork2 { + u8 unk_00; + Vec unk_04; + Vec unk_10; + Vec unk_1C; + Vec unk_28; + Vec unk_34; + Vec unk_40; + Vec unk_4C; + Vec unk_58; + Vec unk_64[3]; + Vec unk_88[3]; + Vec unk_AC[3]; + Vec unk_D0[3]; + float unk_F4[3]; + float unk_100[3]; + float unk_10C[3]; + float unk_118[3]; + float unk_124[3]; + float unk_130; + float unk_134; + float unk_138; + float unk_13C; + float unk_140; + float unk_144; + float unk_148; + float unk_14C[3]; + float unk_158[3]; + float unk_164[3]; + float unk_170[3]; + float unk_17C[3]; + u16 unk_188[3]; +} M433DllMapWork2; /* size = 0x190 */ + +typedef struct M433DllUnkStruct { + s16 unk_00; + s16 unk_02; + s16 unk_04; + s16 unk_06; + float unk_08; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + char unk20[0x28]; +} M433DllUnkStruct; /* size = 0x48 */ + +typedef struct M433DllUnkStruct4 { + Vec unk_00; + s32 unk_0C[3]; + s8 unk_18[4]; + s8 unk_1C; + float unk_20; + float unk_24; + float unk_28; + float unk_2C; + float unk_30; +} M433DllUnkStruct4; /* size = 0x34 */ + +typedef struct M433DllUnkStruct2 { + Vec *unk_00; + s32 unk_04; + s32 unk_08; + M433DllUnkStruct4 *unk_0C; +} M433DllUnkStruct2; /* size 0x10 */ + +typedef struct M433DllUnkStruct3 { + s32 unk_00; + M433DllUnkStruct2 *unk_04; +} M433DllUnkStruct3; /* size = 0x08 */ + +void fn_1_4650(omObjData *object); +void fn_1_475C(omObjData *object); +void fn_1_4F04(omObjData *object); +void fn_1_51E0(omObjData *object); +u8 fn_1_5370(M433DllUnkStruct2 *arg0, Vec *arg1); +void fn_1_5558(s32 arg0, M433DllUnkStruct3 *arg1); +void fn_1_5CCC(HsfData *arg0, HsfObject *arg1); +void fn_1_6280(ModelData *arg1, ParticleData *particle, Mtx matrix); +s16 fn_1_71AC(s32 arg0, s16 arg1, ParticleHook arg2); +void fn_1_7294(void); +void *fn_1_72D4(s32 arg0); +void fn_1_739C(M433DllUnkStruct2 *arg0); +void fn_1_7430(void); +s32 fn_1_7500(void); +void fn_1_8F90(float *arg0, float *arg1, float *arg2, s32 arg3); +float fn_1_9248(float arg8, float *arg0, float *arg1, float *arg2, s32 arg3); +void fn_1_939C(float *arg0, float (*arg1)[3], float (*arg2)[3], s32 arg3); +void fn_1_977C(float arg8, float *arg0, float *arg1, float (*arg2)[3], float (*arg3)[3], s32 arg4); + +M433DllUnkStruct3 *lbl_1_bss_12C; +M433DllUnkStruct2 *lbl_1_bss_128; +void *lbl_1_bss_A8[0x20]; +omObjData *lbl_1_bss_A4; +omObjData *lbl_1_bss_A0; +omObjData *lbl_1_bss_98[2]; +M433DllUnkStruct3 lbl_1_bss_90; + +void fn_1_43C8(Process *arg0) +{ + s32 var_r31; + omObjData *var_r30; + s32 var_r28; + + var_r28 = frand() & 0x1F; + for (var_r31 = 0; var_r31 < var_r28; var_r31++) { + fn_1_7500(); + } + fn_1_7294(); + Hu3DCameraCreate(3); + Hu3DCameraPerspectiveSet(1, 45.0f, 100.0f, 7500.0f, 0.6f); + Hu3DCameraPerspectiveSet(2, 45.0f, 100.0f, 7500.0f, 0.6f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraViewportSet(2, 320.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x140, 0x1E0); + Hu3DCameraScissorSet(2, 0x140, 0, 0x140, 0x1E0); + lbl_1_bss_A4 = omAddObjEx(arg0, 0x7FDA, 0, 0, -1, omOutViewMulti); + lbl_1_bss_A4->work[0] = 2; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r30 = omAddObjEx(arg0, 0xFE, 1, 0, -1, fn_1_4650); + lbl_1_bss_98[var_r31] = var_r30; + var_r30->work[0] = var_r31; + } + lbl_1_bss_A0 = omAddObjEx(arg0, 0x7F, 9, 0, -1, fn_1_4F04); +} + +void fn_1_4630(void) +{ + fn_1_7430(); +} + +void fn_1_4650(omObjData *object) +{ + M433DllMapWork2 *work; + + work = fn_1_72D4(0x190); + object->data = work; + work->unk_148 = work->unk_144 = 0.0f; + work->unk_140 = 1.0f; + work->unk_10.x = work->unk_28.x = 0.0f; + work->unk_10.y = work->unk_28.y = 0.0f; + work->unk_10.z = work->unk_28.z = 0.0f; + work->unk_04.x = work->unk_1C.x = 0.0f; + work->unk_04.y = work->unk_1C.y = 80.0f; + work->unk_04.z = work->unk_1C.z = 0.0f; + work->unk_130 = work->unk_134 = 600.0f; + work->unk_188[0] = work->unk_188[1] = work->unk_188[2] = 0; + object->func = fn_1_475C; +} + +void fn_1_475C(omObjData *object) +{ + float var_f31; + M433DllMapWork2 *work; + s32 var_r29; + + work = object->data; + if (work->unk_148 > 0.0f) { + work->unk_148 = work->unk_148 - work->unk_140; + var_f31 = (work->unk_144 - work->unk_148) / work->unk_144; + var_f31 = sind((90.0f * var_f31)); + if (work->unk_00 == 0) { + work->unk_04.x = work->unk_1C.x + (var_f31 * (work->unk_34.x - work->unk_1C.x)); + work->unk_04.y = work->unk_1C.y + (var_f31 * (work->unk_34.y - work->unk_1C.y)); + work->unk_04.z = work->unk_1C.z + (var_f31 * (work->unk_34.z - work->unk_1C.z)); + work->unk_10.x = work->unk_28.x + (var_f31 * (work->unk_40.x - work->unk_28.x)); + work->unk_10.y = work->unk_28.y + (var_f31 * (work->unk_40.y - work->unk_28.y)); + work->unk_10.z = work->unk_28.z + (var_f31 * (work->unk_40.z - work->unk_28.z)); + work->unk_130 = work->unk_134 + (var_f31 * (work->unk_138 - work->unk_134)); + } + else { + fn_1_977C(2.0f * var_f31, (float *)&work->unk_04, work->unk_F4, (float(*)[3])work->unk_64, (float(*)[3])work->unk_88, 3); + fn_1_977C(2.0f * var_f31, (float *)&work->unk_10, work->unk_100, (float(*)[3])work->unk_AC, (float(*)[3])work->unk_D0, 3); + work->unk_130 = fn_1_9248(2.0f * var_f31, work->unk_124, work->unk_10C, work->unk_118, 3); + } + } + CRotM[object->work[0]].x = work->unk_10.x; + CRotM[object->work[0]].y = work->unk_10.y; + CRotM[object->work[0]].z = work->unk_10.z; + CenterM[object->work[0]].x = work->unk_04.x; + CenterM[object->work[0]].y = work->unk_04.y; + CenterM[object->work[0]].z = work->unk_04.z; + CZoomM[object->work[0]] = work->unk_130; + for (var_r29 = 0; var_r29 < 3; var_r29++) { + work->unk_17C[var_r29] = 0.0f; + if (work->unk_188[var_r29] != 0) { + work->unk_17C[var_r29] = work->unk_14C[var_r29] * sind(work->unk_164[var_r29]); + work->unk_164[var_r29] += work->unk_170[var_r29]; + work->unk_14C[var_r29] *= work->unk_158[var_r29]; + work->unk_188[var_r29] -= 1; + } + } + CenterM[object->work[0]].x += work->unk_17C[0]; + CenterM[object->work[0]].y += work->unk_17C[1]; + CenterM[object->work[0]].z += work->unk_17C[2]; +} + +void fn_1_4B7C(u8 arg0, float arg1, Vec *arg2, Vec *arg3, float arg8, Vec *arg4, Vec *arg5, float arg9) +{ + float var_f31; + float var_f30; + M433DllMapWork2 *var_r31; + + var_r31 = lbl_1_bss_98[arg0]->data; + var_r31->unk_00 = 1; + var_r31->unk_148 = var_r31->unk_144 = arg1; + var_r31->unk_1C = var_r31->unk_04; + var_r31->unk_34.x = arg2->x; + var_r31->unk_34.y = arg2->y; + var_r31->unk_34.z = arg2->z; + var_r31->unk_4C.x = arg4->x; + var_r31->unk_4C.y = arg4->y; + var_r31->unk_4C.z = arg4->z; + var_r31->unk_28 = var_r31->unk_10; + var_r31->unk_40.x = arg3->x; + var_r31->unk_40.y = arg3->y; + var_r31->unk_40.z = arg3->z; + var_r31->unk_58.x = arg5->x; + var_r31->unk_58.y = arg5->y; + var_r31->unk_58.z = arg5->z; + var_r31->unk_134 = var_r31->unk_130; + var_r31->unk_138 = arg8; + var_r31->unk_13C = arg9; + var_r31->unk_64[0] = var_r31->unk_1C; + var_r31->unk_64[1] = var_r31->unk_4C; + var_r31->unk_64[2] = var_r31->unk_34; + var_r31->unk_AC[0] = var_r31->unk_28; + var_r31->unk_AC[1] = var_r31->unk_58; + var_r31->unk_AC[2] = var_r31->unk_40; + var_r31->unk_10C[0] = var_r31->unk_134; + var_r31->unk_10C[1] = var_r31->unk_13C; + var_r31->unk_10C[2] = var_r31->unk_138; + var_r31->unk_124[0] = 0.0f; + if ((var_r31->unk_10C[1] - var_r31->unk_10C[0]) < 0.0f) { + var_f31 = -(var_r31->unk_10C[1] - var_r31->unk_10C[0]); + } + else { + var_f31 = var_r31->unk_10C[1] - var_r31->unk_10C[0]; + } + var_r31->unk_124[1] = var_f31; + if ((var_r31->unk_10C[2] - var_r31->unk_10C[1]) < 0.0f) { + var_f30 = -(var_r31->unk_10C[2] - var_r31->unk_10C[1]); + } + else { + var_f30 = var_r31->unk_10C[2] - var_r31->unk_10C[1]; + } + var_r31->unk_124[2] = var_r31->unk_124[1] + var_f30; + fn_1_939C(var_r31->unk_F4, (float(*)[3])var_r31->unk_64, (float(*)[3])var_r31->unk_88, 3); + fn_1_939C(var_r31->unk_100, (float(*)[3])var_r31->unk_AC, (float(*)[3])var_r31->unk_D0, 3); + fn_1_8F90(var_r31->unk_124, var_r31->unk_10C, var_r31->unk_118, 3); +} + +void fn_1_4E44(u8 arg0, float arg8) +{ + M433DllMapWork2 *work = lbl_1_bss_98[arg0]->data; + work->unk_140 = arg8; +} + +void fn_1_4E78(u8 arg0, u8 arg1, u16 arg2, float arg8, float arg9, float argA) +{ + M433DllMapWork2 *var_r31 = lbl_1_bss_98[arg0]->data; + var_r31->unk_188[arg1] = arg2; + var_r31->unk_14C[arg1] = arg8; + var_r31->unk_158[arg1] = arg9; + var_r31->unk_170[arg1] = argA; + var_r31->unk_164[arg1] = 90.0f; +} + +static char lbl_1_data_130[20] = "goal"; // explicitly declared because of padding + +void fn_1_4F04(omObjData *object) +{ + s32 var_r31; + M433DllUnkStruct *var_r29; + s32 var_r28; + + var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 0)); + object->model[0] = var_r31; + Hu3DModelShadowMapSet(var_r31); + Hu3DModelLayerSet(var_r31, 2); + var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 1)); + object->model[1] = var_r31; + Hu3DModelAttrSet(var_r31, HU3D_ATTR_DISPOFF); + fn_1_5558(var_r31, &lbl_1_bss_90); + var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 2)); + object->model[2] = var_r31; + Hu3DModelLayerSet(var_r31, 2); + var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 3)); + object->model[3] = var_r31; + Hu3DModelAttrSet(var_r31, HU3D_ATTR_DISPOFF); + Hu3DModelShadowMapObjSet(var_r31, lbl_1_data_130); + Hu3DModelLayerSet(var_r31, 2); + var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 4)); + object->model[4] = var_r31; + Hu3DModelAttrSet(var_r31, HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r31, HU3D_MOTATTR_SHAPE_LOOP); + Hu3DModelLayerSet(var_r31, 2); + Hu3DModelCameraSet(var_r31, 1); + fn_1_4170(var_r31, 1); + var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 5)); + object->model[5] = var_r31; + Hu3DModelAttrSet(var_r31, HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r31, HU3D_MOTATTR_SHAPE_LOOP); + Hu3DModelLayerSet(var_r31, 2); + Hu3DModelCameraSet(var_r31, 2); + fn_1_4170(var_r31, 2); + for (var_r28 = 0; var_r28 < 2; var_r28++) { + var_r31 = fn_1_71AC(DATA_MAKE_NUM(DATADIR_M428, 6), 0x3E8, fn_1_6280); + object->model[var_r28 + 6] = var_r31; + Hu3DModelLayerSet(var_r31, 4); + Hu3DModelCameraSet(var_r31, 1 << var_r28); + var_r29 = ((ParticleData *)Hu3DData[var_r31].unk_120)->unk_1C; + var_r29->unk_08 = 400.0f; + var_r29->unk_0C = -400.0f; + var_r29->unk_10 = 1300.0f; + var_r29->unk_14 = -800.0f; + var_r29->unk_18 = 700.0f; + var_r29->unk_1C = 150.0f; + } + object->func = fn_1_51E0; +} + +void fn_1_51E0(omObjData *object) +{ + M433DllUnkStruct *var_r31; + s32 var_r30; + + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r31 = ((ParticleData *)Hu3DData[object->model[var_r30 + 6]].unk_120)->unk_1C; + var_r31->unk_08 = 500.0f + CenterM[var_r30].x; + var_r31->unk_0C = -500.0f + CenterM[var_r30].x; + var_r31->unk_10 = 900.0f + CenterM[var_r30].y; + var_r31->unk_14 = -1200.0f + CenterM[var_r30].y; + } +} + +void fn_1_52D8(omObjData *object) { } + +u8 fn_1_52DC(M433DllUnkStruct3 *arg0, Vec *arg1) +{ + u32 var_r30; + M433DllUnkStruct2 *var_r29; + s32 var_r28; + + var_r28 = 0; + for (var_r29 = arg0->unk_04, var_r30 = 0; var_r30 < arg0->unk_00; var_r30++, var_r29++) { + if (fn_1_5370(var_r29, arg1) != 0) { + break; + } + } + if (var_r30 < arg0->unk_00) { + var_r28 = 1; + } + return var_r28; +} + +u8 fn_1_5370(M433DllUnkStruct2 *arg0, Vec *arg1) +{ + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + M433DllUnkStruct4 *var_r31; + s32 var_r28; + u32 var_r27; + s32 var_r26; + Vec *var_r25; + s32 var_r24; + Vec *var_r23; + + var_r31 = arg0->unk_0C; + for (var_r27 = 0; var_r27 < arg0->unk_08; var_r27++, var_r31++) { + sp8 = *arg1; + sp8.y = 0.0f; + PSVECSubtract(&sp8, &var_r31->unk_00, &sp20); + var_f30 = PSVECMag(&sp20); + if (!(var_f30 > (400.0f + var_r31->unk_20)) && (var_r31->unk_2C != 0.0f)) { + var_r24 = 0; + for (var_r28 = 0; var_r28 < 3; var_r28++) { + var_r26 = var_r28 + 1; + if (var_r26 == 3) { + var_r26 = 0; + } + var_r23 = &arg0->unk_00[var_r31->unk_0C[var_r28]]; + var_r25 = &arg0->unk_00[var_r31->unk_0C[var_r26]]; + PSVECSubtract(var_r25, var_r23, &sp20); + PSVECSubtract(arg1, var_r25, &sp14); + var_f31 = (sp20.x * sp14.y) - (sp20.y * sp14.x); + if ((var_f31 * var_r31->unk_2C) < 0.0) { + var_r24 = 1; + break; + } + } + if (var_r24 == 0) { + arg1->z = ((var_r31->unk_30 - (var_r31->unk_24 * arg1->x)) - (var_r31->unk_28 * arg1->y)) / var_r31->unk_2C; + return 1; + } + } + } + return 0; +} + +void fn_1_5558(s32 arg0, M433DllUnkStruct3 *arg1) +{ + HsfData *var_r31; + u32 var_r30; + + var_r31 = Hu3DData[arg0].hsfData; + lbl_1_bss_12C = arg1; + lbl_1_bss_12C->unk_00 = 0; + lbl_1_bss_12C->unk_04 = fn_1_72D4(0x1000); + lbl_1_bss_128 = lbl_1_bss_12C->unk_04; + fn_1_5CCC(var_r31, var_r31->root); + var_r30 = lbl_1_bss_12C->unk_00 * 0x10; + lbl_1_bss_128 = lbl_1_bss_12C->unk_04; + lbl_1_bss_12C->unk_04 = fn_1_72D4(var_r30); + memcpy(lbl_1_bss_12C->unk_04, lbl_1_bss_128, var_r30); + fn_1_739C(lbl_1_bss_128); +} + +void fn_1_5684(HsfData *arg0, HsfObject *arg1) +{ + Vec sp18; + Vec spC; + float var_f31; + M433DllUnkStruct4 *var_r31; + HsfFace *var_r30; + HsfBuffer *var_r29; + s32 var_r28; + s32 var_r27; + HsfBuffer *var_r25; + + var_r29 = arg1->data.vertex; + var_r25 = arg1->data.face; + lbl_1_bss_128->unk_08 = var_r25->count; + lbl_1_bss_128->unk_04 = var_r29->count; + lbl_1_bss_128->unk_00 = var_r29->data; + lbl_1_bss_128->unk_0C = fn_1_72D4(lbl_1_bss_128->unk_08 * sizeof(M433DllUnkStruct4)); + var_r30 = var_r25->data; + var_r31 = lbl_1_bss_128->unk_0C; + for (var_r27 = 0; var_r27 < var_r25->count; var_r27++, var_r30++, var_r31++) { + switch (var_r30->type & 7) { + case 2: + var_r31->unk_1C = 3; + var_r31->unk_00.x = var_r31->unk_00.y = var_r31->unk_00.z = 0.0f; + for (var_r28 = 0; var_r28 < 3; var_r28++) { + var_r31->unk_0C[var_r28] = var_r30->indices[var_r28][0]; + var_r31->unk_00.x += ((Vec *)var_r29->data)[var_r30->indices[var_r28][0]].x; + var_r31->unk_00.y += ((Vec *)var_r29->data)[var_r30->indices[var_r28][0]].y; + var_r31->unk_00.z += ((Vec *)var_r29->data)[var_r30->indices[var_r28][0]].z; + } + var_r31->unk_00.x /= 3.0f; + var_r31->unk_00.y /= 3.0f; + var_r31->unk_00.z /= 3.0f; + var_r31->unk_20 = 0.0f; + for (var_r28 = 0; var_r28 < 3; var_r28++) { + PSVECSubtract(&((Vec *)var_r29->data)[var_r30->indices[var_r28][0]], &var_r31->unk_00, &sp18); + var_f31 = PSVECMag(&sp18); + if (var_f31 > var_r31->unk_20) { + var_r31->unk_20 = var_f31; + } + } + var_r31->unk_00.y = 0.0f; + PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &sp18); + PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[2][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &spC); + var_r31->unk_24 = (sp18.y * spC.z) - (sp18.z * spC.y); + var_r31->unk_28 = (sp18.z * spC.x) - (sp18.x * spC.z); + var_r31->unk_2C = (sp18.x * spC.y) - (sp18.y * spC.x); + var_r31->unk_30 = (var_r31->unk_2C * ((Vec *)var_r29->data)[var_r30->strip.indices[0][0]].z) + + ((var_r31->unk_24 * ((Vec *)var_r29->data)[var_r30->strip.indices[0][0]].x) + + (var_r31->unk_28 * ((Vec *)var_r29->data)[var_r30->strip.indices[0][0]].y)); + break; + case 3: + var_r31->unk_1C = 4; + var_r31->unk_00.x = var_r31->unk_00.y = var_r31->unk_00.z = 0.0f; + for (var_r28 = 0; var_r28 < 4; var_r28++) { + var_r31->unk_0C[var_r28] = var_r30->indices[var_r28][0]; + var_r31->unk_00.x += ((Vec *)var_r29->data)[var_r30->indices[var_r28][0]].x; + var_r31->unk_00.y += ((Vec *)var_r29->data)[var_r30->indices[var_r28][0]].y; + var_r31->unk_00.z += ((Vec *)var_r29->data)[var_r30->indices[var_r28][0]].z; + } + var_r31->unk_00.x *= 0.25f; + var_r31->unk_00.y *= 0.25f; + var_r31->unk_00.z *= 0.25f; + var_r31->unk_20 = 0.0f; + for (var_r28 = 0; var_r28 < 4; var_r28++) { + PSVECSubtract(&((Vec *)var_r29->data)[var_r30->indices[var_r28][0]], &var_r31->unk_00, &sp18); + var_f31 = PSVECMag(&sp18); + if (var_f31 > var_r31->unk_20) { + var_r31->unk_20 = var_f31; + } + } + PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &sp18); + PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[2][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &spC); + var_r31->unk_24 = (sp18.y * spC.z) - (sp18.z * spC.y); + var_r31->unk_28 = (sp18.z * spC.x) - (sp18.x * spC.z); + var_r31->unk_2C = (sp18.x * spC.y) - (sp18.y * spC.x); + var_r31->unk_30 = (var_r31->unk_24 * ((Vec *)var_r29->data)[var_r30->strip.indices[0][0]].x) + + ((var_r31->unk_28 * ((Vec *)var_r29->data)[var_r30->strip.indices[0][0]].y)) + + (var_r31->unk_2C * ((Vec *)var_r29->data)[var_r30->strip.indices[0][0]].z); + break; + default: + OSReport("Error\n"); + break; + } + } + for (var_r27 = 0; var_r27 < arg1->data.childrenCount; var_r27++) { + fn_1_5CCC(arg0, arg1->data.children[var_r27]); + } +} + +void fn_1_5CCC(HsfData *var_r31, HsfObject *var_r23) +{ + s16 var_r22; + + switch (var_r23->type) { + case 0: + case 1: + case 3: + case 4: + case 5: + case 6: + case 9: + for (var_r22 = 0; var_r22 < var_r23->data.childrenCount; var_r22++) { + fn_1_5CCC(var_r31, var_r23->data.children[var_r22]); + } + break; + case 2: + fn_1_5684(var_r31, var_r23); + lbl_1_bss_12C->unk_00++; + lbl_1_bss_128++; + break; + } +} + +void fn_1_6280(ModelData *arg1, ParticleData *particle, Mtx matrix) +{ + s32 sp3C; + s32 sp38; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + HsfanimStruct01 *var_r31; + M433DllUnkStruct *var_r30; + s32 var_r28; + s32 var_r27; + + var_r30 = particle->unk_1C; + var_f29 = var_r30->unk_08 - var_r30->unk_0C; + var_f30 = var_r30->unk_10 - var_r30->unk_14; + var_f28 = var_r30->unk_18 - var_r30->unk_1C; + switch (var_r30->unk_04) { + case 2: + break; + case 0: + for (var_r31 = particle->unk_48, var_r28 = 0; var_r28 < (0.3f * particle->unk_30); var_r28++, var_r31++) { + var_r31->unk00 = 1; + var_r31->unk34.x = var_r30->unk_0C + (var_f29 * (fn_1_7500() / 65536.0f)); + var_r31->unk34.y = (var_r30->unk_14 + ((200.0f + var_f30) * (fn_1_7500() / 65536.0f))) - 100.0f; + var_r31->unk34.z = var_r30->unk_1C + (var_f28 * (fn_1_7500() / 65536.0f)); + var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = var_r31->unk40.a = 0xFF; + var_r31->unk2C = 26.0f + (10.0f * (fn_1_7500() / 65536.0f)); + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = -1.6333333f * (fn_1_7500() / 65536.0f); + var_r31->unk08.z = 0.0f; + var_r31->unk14.x = var_r31->unk14.y = var_r31->unk14.z = 0.0f; + var_r31->unk30 = 360.0f * (fn_1_7500() / 65536.0f); + var_r31->unk02 = 0; + } + for (; var_r28 < particle->unk_30; var_r28++, var_r31++) { + var_r31->unk00 = 0; + var_r31->unk40.a = 0; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = -1.6333333f * (fn_1_7500() / 65536.0f); + var_r31->unk08.z = 0.0f; + var_r31->unk14.x = var_r31->unk14.y = var_r31->unk14.z = 0.0f; + } + particle->unk_04.x = particle->unk_04.y = particle->unk_04.z = 0.0f; + var_r30->unk_04++; + break; + case 1: + particle->unk_04.x = particle->unk_04.y = particle->unk_04.z = 0.0f; + var_r30->unk_06 = 0; + break; + case 3: + particle->unk_04.x *= 0.95f; + if (particle->unk_04.x < 0.0f) { + var_f27 = -particle->unk_04.x; + } + else { + var_f27 = particle->unk_04.x; + } + if (var_f27 < 0.01f) { + var_r30->unk_04 = 1; + } + break; + } + for (var_r31 = particle->unk_48, var_r27 = 0, var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { + switch (var_r31->unk00_s16) { + case 0: + if (((var_r28 > (0.4f * particle->unk_30)) && (particle->unk_04.x == 0.0f)) || (var_r27 >= (10.0f + (0.75f * particle->unk_04.x)))) { + var_r31->unk2C = 0.01f; + } + else { + if (((fn_1_7500() & 3) == 0) || (particle->unk_04.x == 0.0f)) { + var_r31->unk34.x = var_r30->unk_0C + (var_f29 * (fn_1_7500() / 65536.0f)); + var_r31->unk34.y = var_r30->unk_10 + (100.0f * (fn_1_7500() / 65536.0f)); + var_r31->unk40.a = 7; + } + else { + if (particle->unk_04.x > 0.0f) { + var_r31->unk34.x = var_r30->unk_0C - (100.0f * (fn_1_7500() / 65536.0f)); + } + else { + var_r31->unk34.x = var_r30->unk_08 + (100.0f * (fn_1_7500() / 65536.0f)); + } + var_r31->unk34.y = var_r30->unk_10 - (var_f30 * (fn_1_7500() / 65536.0f)); + var_r31->unk40.a = 0xFF; + } + var_r31->unk34.z = var_r30->unk_1C + (var_f28 * (fn_1_7500() / 65536.0f)); + var_r31->unk2C = 28.0f + (10.0f * (fn_1_7500() / 65536.0f)); + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = -1.6333333f * (fn_1_7500() / 65536.0f); + var_r31->unk08.z = 0.0f; + var_r31->unk08.x = 0.25f * var_r31->unk08.y * ((fn_1_7500() - 0x8000) / 32768.0f); + var_r31->unk14.x = var_r31->unk14.y = var_r31->unk14.z = 0.0f; + var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = 0xFF; + var_r31->unk02 = 0; + var_r27++; + var_r31->unk00_s16++; + } + break; + case 1: + var_r31->unk08.y += -1.6333333f; + var_r31->unk08.y += 0.19998f * (1.6333333f * (4.81f + (0.005f * var_r31->unk2C))); + if (var_r31->unk02 != 0) { + var_r31->unk02--; + var_r31->unk08.y *= 0.8f; + var_r31->unk08.y += 0.0025f * (-1.6333333f * var_r31->unk2C); + } + else if ((fn_1_7500() & 0x7F) == 0) { + var_r31->unk02 = (s32)(30.0f * (fn_1_7500() / 65536.0f)); + } + if (var_r31->unk08.x < 0.0f) { + var_f26 = -var_r31->unk08.x; + } + else { + var_f26 = var_r31->unk08.x; + } + if (var_f26 < 0.02f) { + var_r31->unk14.x = 0.025f * (var_r31->unk2C * (-1.6333333f * ((fn_1_7500() - 0x8000) / 32768.0f))); + if (var_r31->unk14.x > 0.0f) { + var_r31->unk08.x = 0.02f + (0.04f * var_r31->unk14.x); + } + else { + var_r31->unk08.x = (0.04f * var_r31->unk14.x) - 0.02f; + } + } + else { + var_f31 = var_r31->unk08.x - var_r31->unk14.x; + var_r31->unk08.x = var_r31->unk14.x + (0.98f * var_f31); + if (var_f31 < 0.0f) { + var_f25 = -var_f31; + } + else { + var_f25 = var_f31; + } + if (var_f25 < 0.02f) { + var_r31->unk14.x = 0.0f; + } + } + if ((var_r31->unk34.y < (var_r30->unk_14 - 100.0f)) || (var_r31->unk34.x > (100.0f + var_r30->unk_08)) + || (var_r31->unk34.x < (var_r30->unk_0C - 100.0f))) { + var_r31->unk00 = 0; + } + if (var_r31->unk34.y > (100.0f + var_r30->unk_10)) { + var_r31->unk34.y = var_r30->unk_14 - (100.0f * (fn_1_7500() / 65536.0f)); + } + if (var_r31->unk34.y < var_r30->unk_14) { + var_r31->unk40.a *= 0.9f; + } + else if (var_r31->unk40.a < 0xFF) { + var_r31->unk40.a += 8; + } + break; + } + PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + if (particle->unk_04.x != 0.0f) { + sp8 = particle->unk_04; + sp8.x *= var_r31->unk2C / 28.0f; + sp8.y = (((u8)var_r31->unk2C & 1) != 0 ? 1.0f : -1.0f) * (sp8.x * (0.05f + (s32)(0.2f * (fn_1_7500() / 65536.0f)))); + PSVECAdd(&var_r31->unk34, &sp8, &var_r31->unk34); + } + } + DCFlushRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); +} + +s16 fn_1_71AC(s32 arg0, s16 arg1, ParticleHook hook) +{ + HsfanimStruct01 *var_r31; + ParticleData *var_r30; + s32 var_r29; + s32 var_r28; + M433DllUnkStruct *var_r27; + AnimData *var_r25; + + var_r25 = HuSprAnimRead(HuDataReadNum(arg0, MEMORY_DEFAULT_NUM)); + var_r28 = Hu3DParticleCreate(var_r25, arg1); + Hu3DParticleHookSet(var_r28, hook); + var_r30 = Hu3DData[var_r28].unk_120; + var_r27 = fn_1_72D4(0x48); + var_r30->unk_1C = var_r27; + var_r27->unk_04 = 0; + var_r31 = var_r30->unk_48; + memset(var_r31, 0, arg1 * 0x44); + for (var_r29 = 0; var_r29 < arg1; var_r29++, var_r31++) { + var_r31->unk06 = -1; + var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = var_r31->unk40.a = 0xFF; + } + return var_r28; +} + +void fn_1_7294(void) +{ + s32 var_r31; + + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { + lbl_1_bss_A8[var_r31] = NULL; + } +} + +void *fn_1_72D4(s32 arg0) +{ + s32 i; + + for (i = 0; i < 0x20; i++) { + if (!lbl_1_bss_A8[i]) { + break; + } + } + if (i == 0x20) { + return NULL; + } + lbl_1_bss_A8[i] = HuMemDirectMallocNum(HEAP_SYSTEM, arg0, MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_A8[i], 0, arg0); + return lbl_1_bss_A8[i]; +} + +void fn_1_739C(M433DllUnkStruct2 *arg0) +{ + s32 var_r31; + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { + if (lbl_1_bss_A8[var_r31] == arg0) { + break; + } + } + if (var_r31 != 0x20) { + HuMemDirectFree(lbl_1_bss_A8[var_r31]); + lbl_1_bss_A8[var_r31] = NULL; + } +} + +void fn_1_7430(void) +{ + s32 var_r31; + + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { + if (lbl_1_bss_A8[var_r31]) { + HuMemDirectFree(lbl_1_bss_A8[var_r31]); + lbl_1_bss_A8[var_r31] = NULL; + } + } +} + +void fn_1_74B4(s16 arg0, Mtx arg1) +{ + ModelData *var_r31 = &Hu3DData[arg0]; + PSMTXCopy(arg1, var_r31->unk_F0); +} + +u32 lbl_1_data_14C = 0x41C64E6D; + +s32 fn_1_7500(void) +{ + lbl_1_data_14C *= 0x41C64E6D; + lbl_1_data_14C += 0x3039; + return lbl_1_data_14C >> 0x10; +} + +void fn_1_7554(s32 arg0, s32 *arg1) +{ + s32 var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + for (var_r31 = 0; var_r31 < arg0; var_r31++) { + arg1[var_r31] = var_r31; + } + for (var_r31 = 0; var_r31 < (arg0 - 1); var_r31++) { + lbl_1_data_14C *= 0x41C64E6D; + lbl_1_data_14C += 0x3039; + var_r28 = lbl_1_data_14C >> 0x10; + var_r27 = var_r28; + var_r30 = arg0 * (var_r27 / 65536.0f); + var_r29 = arg1[var_r31]; + arg1[var_r31] = arg1[var_r30]; + arg1[var_r30] = var_r29; + } +} + +float fn_1_7690(float arg8, float arg9, float argA) +{ + float var_f31; + + if (arg8 > 180.0f) { + arg8 -= 360.0f; + } + else if (arg8 <= -180.0f) { + arg8 += 360.0f; + } + if (arg9 > 180.0f) { + arg9 -= 360.0f; + } + else if (arg9 <= -180.0f) { + arg9 += 360.0f; + } + var_f31 = arg8 - arg9; + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + else if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } + arg8 = arg9 + (var_f31 * argA); + if (arg8 > 180.0f) { + return arg8 - 360.0f; + } + if (arg8 <= -180.0f) { + arg8 += 360.0f; + } + return arg8; +} + +void fn_1_77F8(Mtx arg0, float arg8, float arg9, float argA) +{ + Mtx sp38; + Mtx sp8; + + if (argA != 0.0f) { + PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + } + else { + PSMTXIdentity(arg0); + } + if (arg8 != 0.0f) { + PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + PSMTXConcat(sp38, arg0, arg0); + } + if (arg9 != 0.0f) { + PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + PSMTXConcat(sp8, arg0, arg0); + } +} + +void fn_1_7918(Mtx arg0, Vec *arg1) +{ + float var_f29; + float var_f28; + + arg1->x = atan2d(arg0[1][2], arg0[2][2]); + if (arg1->x < 0.0f) { + arg1->x += 360.0f; + } + arg1->z = atan2d(arg0[0][1], arg0[0][0]); + if (arg1->z < 0.0f) { + arg1->z += 360.0f; + } + var_f29 = -arg0[0][2]; + var_f28 = sqrtf((1.0 - (var_f29 * var_f29)) < 0.0 ? (-(1.0 - (var_f29 * var_f29))) : (1.0 - (var_f29 * var_f29))); + if ((arg1->x > 90.0f) && (arg1->x < 270.0f) && (arg1->z > 90.0f) && (arg1->z < 270.0f)) { + arg1->x = fmod(180.0f + arg1->x, 360.0); + arg1->z = fmod(180.0f + arg1->z, 360.0); + var_f28 = -var_f28; + } + arg1->y = atan2d(var_f29, var_f28); + if (arg1->y < 0.0f) { + arg1->y += 360.0f; + } +} + +void fn_1_7CB4(Mtx arg0, Vec *arg1) +{ + float var_f29; + float var_f27; + + arg1->z = atan2d(arg0[0][1], arg0[1][1]); + if (arg1->z < 0.0f) { + arg1->z += 360.0f; + } + arg1->y = atan2d(arg0[0][2], arg0[2][2]); + if (arg1->y < 0.0f) { + arg1->y += 360.0f; + } + var_f29 = -arg0[2][1]; + var_f27 = sqrtf((1.0 - (var_f29 * var_f29)) < 0.0 ? (-(1.0 - (var_f29 * var_f29))) : (1.0 - (var_f29 * var_f29))); + arg1->x = atan2d(var_f29, var_f27); + if (arg1->x < 0.0f) { + arg1->x += 360.0f; + } +} + +float fn_1_7F94(Vec *arg0) +{ + float var_f30 = (arg0->z * arg0->z) + ((arg0->x * arg0->x) + (arg0->y * arg0->y)); + var_f30 = sqrtf(var_f30); + if (var_f30 != 0.0f) { + float var_f29 = 1.0f / var_f30; + arg0->x = arg0->x * var_f29; + arg0->y = arg0->y * var_f29; + arg0->z = arg0->z * var_f29; + } + else { + arg0->x = arg0->y = arg0->z = 0.0f; + } + return var_f30; +} + +void fn_1_812C(Vec arg0, Vec arg1, Vec *arg2, float arg8) +{ + if (arg8 <= 0.0f) { + arg2->x = arg0.x; + arg2->y = arg0.y; + arg2->z = arg0.z; + arg8 = 0.0f; + } + else if (arg8 >= 1.0f) { + arg2->x = arg0.x + arg1.x; + arg2->y = arg0.y + arg1.y; + arg2->z = arg0.z + arg1.z; + arg8 = 1.0f; + } + else { + arg2->x = arg0.x + (arg8 * arg1.x); + arg2->y = arg0.y + (arg8 * arg1.y); + arg2->z = arg0.z + (arg8 * arg1.z); + } +} + +float fn_1_8204(Vec arg0, Vec arg1, Vec arg2) +{ + float var_f31; + float temp_f30; + + var_f31 = arg2.x * (arg1.x - arg0.x) + arg2.y * (arg1.y - arg0.y) + arg2.z * (arg1.z - arg0.z); + temp_f30 = -(arg2.x * arg2.x + arg2.y * arg2.y + arg2.z * arg2.z); + if (temp_f30 != 0.0f) { + var_f31 /= temp_f30; + } + return var_f31; +} + +float fn_1_82C0(Vec *arg0, Vec *arg1, Vec *arg2) +{ + Vec sp44; + float var_f31; + + if (arg2->x * arg2->x + arg2->y * arg2->y + arg2->z * arg2->z == 0.0f) { + return (arg0->x - arg1->x) * (arg0->x - arg1->x) + (arg0->y - arg1->y) * (arg0->y - arg1->y) + (arg0->z - arg1->z) * (arg0->z - arg1->z); + } + var_f31 = fn_1_8204(*arg0, *arg1, *arg2); + fn_1_812C(*arg1, *arg2, &sp44, var_f31); + return (arg0->x - sp44.x) * (arg0->x - sp44.x) + (arg0->y - sp44.y) * (arg0->y - sp44.y) + (arg0->z - sp44.z) * (arg0->z - sp44.z); +} + +float fn_1_85FC(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4) +{ + float var_f30; + + if (((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y))) == 0.0f) { + return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); + } + var_f30 = fn_1_8204(*arg0, *arg1, *arg2); + fn_1_812C(*arg1, *arg2, arg3, var_f30); + + arg4->x = arg0->x - arg3->x; + arg4->y = arg0->y - arg3->y; + arg4->z = arg0->z - arg3->z; + return fn_1_7F94(arg4); +} + +float fn_1_8AAC(float arg8, float arg9, float argA, float argB) +{ + float var_f31 = 1.0 - arg8; + float var_f30 = (argB * (arg8 * arg8)) + ((arg9 * (var_f31 * var_f31)) + (2.0 * (argA * (var_f31 * arg8)))); + return var_f30; +} + +void fn_1_8B24(float *arg0, float *arg1, float *arg2, float *arg3, float arg8) +{ + s32 var_r31; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + *arg3++ = fn_1_8AAC(arg8, *arg0++, *arg1++, *arg2++); + } +} + +float fn_1_8C40(float arg8, float arg9, float argA, float argB) +{ + float var_f31 = 2.0 * ((arg8 * argB) + (((arg8 - 1.0) * arg9) + ((1.0 - (2.0 * arg8)) * argA))); + return var_f31; +} + +void fn_1_8CB8(float *arg0, float *arg1, float *arg2, float *arg3, float arg8) +{ + float spC[3]; + float var_f29; + s32 var_r31; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + spC[var_r31] = fn_1_8C40(arg8, *arg0++, *arg1++, *arg2++); + } + var_f29 = sqrtf((spC[2] * spC[2]) + ((spC[0] * spC[0]) + (spC[1] * spC[1]))); + if (var_f29) { + var_f29 = 1.0 / var_f29; + for (var_r31 = 0; var_r31 < 3; var_r31++) { + *arg3++ = var_f29 * spC[var_r31]; + } + return; + } + *arg3++ = 0.0f; + *arg3++ = 0.0f; + *arg3++ = 1.0f; +} + +void fn_1_8F90(float *arg0, float *arg1, float *arg2, s32 arg3) +{ + float sp48[16]; + float sp8[16]; + double var_f31; + s32 var_r31; + + arg2[0] = 0.0f; + arg2[arg3 - 1] = 0.0f; + for (var_r31 = 0; var_r31 < (arg3 - 1); var_r31++) { + sp48[var_r31] = arg0[var_r31 + 1] - arg0[var_r31]; + if (sp48[var_r31] == 0.0f) { + sp8[var_r31 + 1] = 0.0f; + } + else { + sp8[var_r31 + 1] = (arg1[var_r31 + 1] - arg1[var_r31]) / sp48[var_r31]; + } + } + arg2[1] = sp8[2] - sp8[1]; + sp8[1] = 2.0f * (arg0[2] - arg0[0]); + for (var_r31 = 1; var_r31 < (arg3 - 2); var_r31++) { + var_f31 = sp48[var_r31] / sp8[var_r31]; + arg2[var_r31 + 1] = (sp8[var_r31 + 2] - sp8[var_r31 + 1]) - (var_f31 * arg2[var_r31]); + sp8[var_r31 + 1] = (2.0f * (arg0[var_r31 + 2] - arg0[var_r31])) - (var_f31 * sp48[var_r31]); + } + arg2[arg3 - 2] -= sp48[arg3 - 2] * arg2[arg3 - 1]; + for (var_r31 = arg3 - 2; var_r31 > 0; var_r31--) { + if (sp8[var_r31] == 0.0f) { + arg2[var_r31] = 0.0f; + } + else { + arg2[var_r31] = (arg2[var_r31] - (sp48[var_r31] * arg2[var_r31 + 1])) / sp8[var_r31]; + } + } +} + +float fn_1_9248(float arg8, float *arg0, float *arg1, float *arg2, s32 arg3) +{ + float var_f31; + float var_f30; + float var_f29; + + s32 var_r31 = arg8; + arg8 = arg8 - var_r31; + var_f31 = arg0[var_r31 + 1] - arg0[var_r31]; + var_f30 = var_f31 * arg8; + var_f29 = arg1[var_r31] + + (var_f30 + * ((var_f30 * ((3.0f * arg2[var_r31]) + ((var_f30 * (arg2[var_r31 + 1] - arg2[var_r31])) / var_f31))) + + (((arg1[var_r31 + 1] - arg1[var_r31]) / var_f31) - (var_f31 * ((2.0f * arg2[var_r31]) + arg2[var_r31 + 1]))))); + if (var_f31 == 0.0f) { + var_f29 = arg1[var_r31]; + } + return var_f29; +} + +void fn_1_939C(float *arg0, float (*arg1)[3], float (*arg2)[3], s32 var_r28) +{ + float spD4[16]; + float sp94[16]; + Vec sp8; + s32 var_r31; + s32 var_r30; + s32 var_r27; + + arg0[0] = 0.0f; + for (var_r30 = 1; var_r30 < var_r28; var_r30++) { + PSVECSubtract((Vec *)&arg1[var_r30], (Vec *)&arg1[var_r30 - 1], &sp8); + arg0[var_r30] = arg0[var_r30 - 1] + PSVECMag(&sp8); + } + for (var_r27 = 0; var_r27 < 3; var_r27++) { + for (var_r30 = 0; var_r30 < var_r28; var_r30++) { + spD4[var_r30] = arg1[var_r30][var_r27]; + } + fn_1_8F90(arg0, spD4, sp94, var_r28); + for (var_r30 = 0; var_r30 < var_r28; var_r30++) { + arg2[var_r30][var_r27] = sp94[var_r30]; + } + } +} + +void fn_1_977C(float arg8, float *arg0, float *arg1, float (*arg2)[3], float (*arg3)[3], s32 arg4) +{ + float sp48[16]; + float sp8[16]; + s32 var_r30; + s32 var_r29; + + for (var_r29 = 0; var_r29 < 3; var_r29++) { + for (var_r30 = 0; var_r30 < arg4; var_r30++) { + sp48[var_r30] = arg2[var_r30][var_r29]; + sp8[var_r30] = arg3[var_r30][var_r29]; + } + arg0[var_r29] = fn_1_9248(arg8, arg1, sp48, sp8, 3); + } +} + +u8 fn_1_9990(Vec *sp8) +{ + u32 var_r31; + M433DllUnkStruct2 *var_r30; + s32 var_r29; + + var_r29 = 0; + var_r30 = lbl_1_bss_90.unk_04; + for (var_r31 = 0; var_r31 < lbl_1_bss_90.unk_00; var_r31++, var_r30++) { + if (fn_1_5370(var_r30, sp8) != 0) { + break; + } + } + if (var_r31 < lbl_1_bss_90.unk_00) { + var_r29 = 1; + } + return var_r29; +} + +void fn_1_9A30(u8 arg0, float arg8, Vec *arg1, Vec *arg2, float arg9) +{ + M433DllMapWork2 *var_r31; + + var_r31 = lbl_1_bss_98[arg0]->data; + var_r31->unk_00 = 0; + var_r31->unk_144 = arg8; + var_r31->unk_148 = arg8; + var_r31->unk_1C = var_r31->unk_04; + var_r31->unk_34.x = arg1->x; + var_r31->unk_34.y = arg1->y; + var_r31->unk_34.z = arg1->z; + var_r31->unk_28 = var_r31->unk_10; + var_r31->unk_40.x = arg2->x; + var_r31->unk_40.y = arg2->y; + var_r31->unk_40.z = arg2->z; + var_r31->unk_134 = var_r31->unk_130; + var_r31->unk_138 = arg9; +} + +void fn_1_9ADC(u8 arg0) +{ + Vec sp14; + Vec sp8; + float var_f31; + M433DllMapWork2 *work; + omObjData *var_r30; + + sp14.x = 0.0f; + sp14.y = 80.0f; + sp14.z = 0.0f; + sp8.x = 0.0f; + sp8.y = 0.0f; + sp8.z = 0.0f; + var_f31 = 600.0f; + work = lbl_1_bss_98[arg0]->data; + work->unk_00 = 0; + work->unk_148 = work->unk_144 = 1.0f; + work->unk_1C = work->unk_04; + work->unk_34.x = sp14.x; + work->unk_34.y = sp14.y; + work->unk_34.z = sp14.z; + work->unk_28 = work->unk_10; + work->unk_40.x = sp8.x; + work->unk_40.y = sp8.y; + work->unk_40.z = sp8.z; + work->unk_134 = work->unk_130; + work->unk_138 = var_f31; + Hu3DCameraPerspectiveSet(1 << arg0, 45.0f, 100.0f, 5000.0f, 1.2f); + Hu3DCameraViewportSet(1 << arg0, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraViewportSet(2 >> arg0, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1 << arg0, 0, 0, 0x280, 0x1E0); + Hu3DCameraScissorSet(2 >> arg0, 0, 0, 0, 0); + var_r30 = lbl_1_bss_A0; + Hu3DModelAttrSet(var_r30->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r30->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r30->model[6], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r30->model[7], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(var_r30->model[3], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(var_r30->model[arg0 + 4], HU3D_ATTR_DISPOFF); + var_r30->func = fn_1_52D8; +} + +void fn_1_9DE8(u8 arg0, float arg8, s8 arg1) +{ + ParticleData *var_r31; + M433DllUnkStruct *var_r30; + + var_r31 = Hu3DData[lbl_1_bss_A0->model[arg0 + 6]].unk_120; + var_r30 = ((ParticleData *)Hu3DData[lbl_1_bss_A0->model[arg0 + 6]].unk_120)->unk_1C; + var_r30->unk_04 = 2; + var_r31->unk_04.x = arg8 * arg1; +} + +void fn_1_9EA8(u8 arg0) +{ + M433DllUnkStruct *var_r31 = ((ParticleData *)Hu3DData[lbl_1_bss_A0->model[arg0 + 6]].unk_120)->unk_1C; + if (var_r31->unk_04 == 2) { + var_r31->unk_04 = 3; + } +} + +u8 fn_1_9F08(u8 arg0) +{ + M433DllUnkStruct *var_r31 = ((ParticleData *)Hu3DData[lbl_1_bss_A0->model[arg0 + 6]].unk_120)->unk_1C; + return var_r31->unk_04; +} diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index dc82ed96..cb329774 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -119,7 +119,7 @@ typedef struct M438MainWork3 { float unk_170[3]; float unk_17C[3]; u16 unk_188[3]; -} M438MainWork3; /* size = */ +} M438MainWork3; /* size = 0x190 */ typedef struct M438StructBss298 { /* 0x00 */ u8 unk_00; diff --git a/src/REL/m453Dll/main.c b/src/REL/m453Dll/main.c index f72224c2..2c099d2d 100644 --- a/src/REL/m453Dll/main.c +++ b/src/REL/m453Dll/main.c @@ -1630,20 +1630,7 @@ void fn_1_5670(float arg8, float *arg0, float *arg1, float (*arg2)[3], float (*a sp48[var_r30] = arg2[var_r30][var_r29]; sp8[var_r30] = arg3[var_r30][var_r29]; } - var_f30 = arg8; - var_r31 = var_f30; - var_f30 -= var_r31; - var_f31 = arg1[var_r31 + 1] - arg1[var_r31]; - var_f29 = var_f31 * var_f30; - var_f28 = sp48[var_r31] - + (var_f29 - * ((var_f29 * ((3.0f * sp8[var_r31]) + ((var_f29 * (sp8[var_r31 + 1] - sp8[var_r31])) / var_f31))) - + (((sp48[var_r31 + 1] - sp48[var_r31]) / var_f31) - (var_f31 * ((2.0f * sp8[var_r31]) + sp8[var_r31 + 1]))))); - if (var_f31 == 0.0f) { - var_f28 = sp48[var_r31]; - } - var_f27 = var_f28; - arg0[var_r29] = var_f27; + arg0[var_r29] = fn_1_513C(arg8, arg1, sp48, sp8, 3); } } diff --git a/src/REL/option/rumble.c b/src/REL/option/rumble.c index 4a52323d..aeae0f72 100755 --- a/src/REL/option/rumble.c +++ b/src/REL/option/rumble.c @@ -197,12 +197,12 @@ static omObjData *CreateHand(void) return hand; } -static void KillHand(omObjData *hand) +static void KillHand(omObjData *object) { s32 i; for (i = 0; i < 1; i++) { - Hu3DModelKill(hand->model[i]); + Hu3DModelKill(object->model[i]); } } @@ -222,21 +222,21 @@ static omObjData *CreateSystem(void) return system; } -static void KillSystem(omObjData *system) +static void KillSystem(omObjData *object) { s32 i; for (i = 0; i < 1; i++) { - Hu3DModelKill(system->model[i]); + Hu3DModelKill(object->model[i]); } } -static void StartSystemMotion(omObjData *system, s32 rumbleF, BOOL slowF) +static void StartSystemMotion(omObjData *object, s32 rumbleF, BOOL slowF) { - s16 model = system->model[0]; + s16 model = object->model[0]; - Hu3DModelAttrReset(system->model[0], HU3D_MOTATTR_PAUSE); - Hu3DModelAttrReset(system->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); if (rumbleF) { Hu3DMotionStartEndSet(model, 60.0f, 120.0f); if (slowF) { @@ -267,24 +267,24 @@ static omObjData *CreatePad(void) return pad; } -static void KillPad(omObjData *pad) +static void KillPad(omObjData *object) { s32 i; for (i = 0; i < 1; i++) { - Hu3DModelKill(pad->model[i]); + Hu3DModelKill(object->model[i]); } } -static void ShakePad(omObjData *pad, BOOL on) +static void ShakePad(omObjData *object, BOOL on) { if (on) { - Hu3DModelAttrReset(pad->model[0], HU3D_MOTATTR_PAUSE); - Hu3DModelAttrSet(pad->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); } else { - Hu3DModelAttrSet(pad->model[0], HU3D_MOTATTR_PAUSE); - Hu3DModelAttrReset(pad->model[0], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); } } From accaf2085f76285581b13472cb16be67c077fca1 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sun, 19 Jan 2025 05:31:11 +0100 Subject: [PATCH 129/178] Port m426Dll to PAL, match m428Dll and remove PS prefixes (#537) * Port m426Dll to PAL * Remove PS prefix from mtx function usages * Match m428Dll --- config/GMPE01_00/rels/m428Dll/symbols.txt | 8 +- config/GMPP01_00/rels/m426Dll/splits.txt | 9 + config/GMPP01_00/rels/m426Dll/symbols.txt | 324 +- configure.py | 4 +- include/REL/m428Dll.h | 5 +- src/REL/m402Dll/main.c | 10 +- src/REL/m403Dll/main.c | 12 +- src/REL/m403Dll/scene.c | 28 +- src/REL/m405Dll/main.c | 58 +- src/REL/m406Dll/map.c | 40 +- src/REL/m406Dll/player.c | 76 +- src/REL/m409Dll/cursor.c | 530 ++-- src/REL/m409Dll/main.c | 6 +- src/REL/m410Dll/game.c | 40 +- src/REL/m410Dll/main.c | 2 +- src/REL/m410Dll/player.c | 32 +- src/REL/m415Dll/main.c | 10 +- src/REL/m415Dll/map.c | 538 ++-- src/REL/m417Dll/main.c | 14 +- src/REL/m417Dll/player.c | 34 +- src/REL/m417Dll/water.c | 46 +- src/REL/m419Dll/main.c | 540 ++-- src/REL/m421Dll/main.c | 4 +- src/REL/m422Dll/main.c | 747 ++--- src/REL/m423Dll/main.c | 1784 +++++------ src/REL/m424Dll/ball.c | 593 ++-- src/REL/m424Dll/claw.c | 141 +- src/REL/m424Dll/map.c | 128 +- src/REL/m425Dll/main.c | 20 +- src/REL/m425Dll/thwomp.c | 58 +- src/REL/m426Dll/main.c | 62 +- src/REL/m428Dll/main.c | 18 +- src/REL/m428Dll/map.c | 46 +- src/REL/m428Dll/player.c | 3401 +++++++++++++++++++++ src/REL/m429Dll/main.c | 4 +- src/REL/m430Dll/main.c | 2 +- src/REL/m430Dll/player.c | 10 +- src/REL/m430Dll/water.c | 195 +- src/REL/m431Dll/main.c | 2 +- src/REL/m433Dll/main.c | 4 +- src/REL/m433Dll/map.c | 12 +- src/REL/m433Dll/player.c | 190 +- src/REL/m438Dll/main.c | 442 +-- src/REL/m438Dll/map.c | 256 +- src/REL/m440Dll/main.c | 38 +- src/REL/m440Dll/object.c | 6 +- src/REL/m441Dll/main.c | 4 +- src/REL/m442Dll/main.c | 10 +- src/REL/m443Dll/main.c | 22 +- src/REL/m443Dll/map.c | 8 +- src/REL/m443Dll/player.c | 26 +- src/REL/m447dll/block.c | 14 +- src/REL/m448Dll/main.c | 6 +- src/REL/m449Dll/main.c | 20 +- src/REL/m453Dll/main.c | 38 +- src/REL/m453Dll/map.c | 76 +- src/REL/m455Dll/main.c | 2 +- src/REL/m456Dll/main.c | 4 +- src/REL/m458Dll/main.c | 4 +- src/REL/m460Dll/main.c | 28 +- src/REL/m460Dll/map.c | 14 +- src/REL/m460Dll/player.c | 16 +- src/REL/m461Dll/main.c | 7 +- src/REL/m462Dll/main.c | 305 +- src/REL/m463Dll/main.c | 328 +- src/REL/modeltestDll/main.c | 23 +- src/REL/w01Dll/main.c | 599 ++-- src/REL/w03Dll/condor.c | 28 +- src/REL/w03Dll/mg_item.c | 4 +- src/REL/w03Dll/statue.c | 191 +- src/REL/w06Dll/mg_item.c | 200 +- src/REL/ztardll/main.c | 8 +- 72 files changed, 8178 insertions(+), 4336 deletions(-) create mode 100644 src/REL/m428Dll/player.c diff --git a/config/GMPE01_00/rels/m428Dll/symbols.txt b/config/GMPE01_00/rels/m428Dll/symbols.txt index e88de8d7..5f9d1250 100644 --- a/config/GMPE01_00/rels/m428Dll/symbols.txt +++ b/config/GMPE01_00/rels/m428Dll/symbols.txt @@ -351,13 +351,13 @@ lbl_1_data_500 = .data:0x00000500; // type:object size:0x60 lbl_1_data_560 = .data:0x00000560; // type:object size:0x80 lbl_1_data_5E0 = .data:0x000005E0; // type:object size:0x60 lbl_1_data_640 = .data:0x00000640; // type:object size:0x10 -lbl_1_data_650 = .data:0x00000650; // type:object size:0x1 data:byte -lbl_1_data_654 = .data:0x00000654; // type:object size:0x1 data:byte -lbl_1_data_658 = .data:0x00000658; // type:object size:0x14 +lbl_1_data_650 = .data:0x00000650; // type:object size:0x4 data:byte +lbl_1_data_654 = .data:0x00000654; // type:object size:0x4 data:byte +lbl_1_data_658 = .data:0x00000658; // type:object size:0x14 scope:local data:string jumptable_1_data_66C = .data:0x0000066C; // type:object size:0x28 scope:local lbl_1_data_694 = .data:0x00000694; // type:object size:0x8 lbl_1_data_69C = .data:0x0000069C; // type:object size:0x4 -lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x2 data:2byte +lbl_1_data_6A0 = .data:0x000006A0; // type:object size:0x4 data:2byte lbl_1_data_6A4 = .data:0x000006A4; // type:object size:0x30 lbl_1_data_6D4 = .data:0x000006D4; // type:object size:0x20 lbl_1_data_6F4 = .data:0x000006F4; // type:object size:0x19 scope:local data:string diff --git a/config/GMPP01_00/rels/m426Dll/splits.txt b/config/GMPP01_00/rels/m426Dll/splits.txt index 531cd645..a7a72393 100644 --- a/config/GMPP01_00/rels/m426Dll/splits.txt +++ b/config/GMPP01_00/rels/m426Dll/splits.txt @@ -5,3 +5,12 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m426Dll/main.c: + .text start:0x000000A0 end:0x00009AC4 + .rodata start:0x00000000 end:0x000001DC + .data start:0x00000000 end:0x00000368 + .bss start:0x00000000 end:0x0000009C diff --git a/config/GMPP01_00/rels/m426Dll/symbols.txt b/config/GMPP01_00/rels/m426Dll/symbols.txt index fa92aeb2..81681170 100644 --- a/config/GMPP01_00/rels/m426Dll/symbols.txt +++ b/config/GMPP01_00/rels/m426Dll/symbols.txt @@ -1,170 +1,170 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x16C +ObjectSetup = .text:0x000000A0; // type:function size:0x16C fn_1_20C = .text:0x0000020C; // type:function size:0x124 fn_1_330 = .text:0x00000330; // type:function size:0xA80 -fn_1_DB0 = .text:0x00000DB0; // type:function size:0x60 -fn_1_E10 = .text:0x00000E10; // type:function size:0xA0 -fn_1_EB0 = .text:0x00000EB0; // type:function size:0x14C -fn_1_FFC = .text:0x00000FFC; // type:function size:0x178 -fn_1_1174 = .text:0x00001174; // type:function size:0x70 -fn_1_11E4 = .text:0x000011E4; // type:function size:0x70 -fn_1_1254 = .text:0x00001254; // type:function size:0x49C -fn_1_16F0 = .text:0x000016F0; // type:function size:0x13F4 -fn_1_2AE4 = .text:0x00002AE4; // type:function size:0x14 -fn_1_2AF8 = .text:0x00002AF8; // type:function size:0x98 -fn_1_2B90 = .text:0x00002B90; // type:function size:0x368 -fn_1_2EF8 = .text:0x00002EF8; // type:function size:0x80 -fn_1_2F78 = .text:0x00002F78; // type:function size:0x6F8 -fn_1_3670 = .text:0x00003670; // type:function size:0x70 -fn_1_36E0 = .text:0x000036E0; // type:function size:0x50 -fn_1_3730 = .text:0x00003730; // type:function size:0x7E8 -fn_1_3F18 = .text:0x00003F18; // type:function size:0x700 -fn_1_4618 = .text:0x00004618; // type:function size:0x48 -fn_1_4660 = .text:0x00004660; // type:function size:0x60 -fn_1_46C0 = .text:0x000046C0; // type:function size:0x94 -fn_1_4754 = .text:0x00004754; // type:function size:0x15C -fn_1_48B0 = .text:0x000048B0; // type:function size:0x5C -fn_1_490C = .text:0x0000490C; // type:function size:0x178 -fn_1_4A84 = .text:0x00004A84; // type:function size:0x8C -fn_1_4B10 = .text:0x00004B10; // type:function size:0x3D0 -fn_1_4EE0 = .text:0x00004EE0; // type:function size:0x50 -fn_1_4F30 = .text:0x00004F30; // type:function size:0x220 -fn_1_5150 = .text:0x00005150; // type:function size:0xA20 -fn_1_5B70 = .text:0x00005B70; // type:function size:0x14 -fn_1_5B84 = .text:0x00005B84; // type:function size:0x40 -fn_1_5BC4 = .text:0x00005BC4; // type:function size:0xE4 -fn_1_5CA8 = .text:0x00005CA8; // type:function size:0xD0 -fn_1_5D78 = .text:0x00005D78; // type:function size:0x130 -fn_1_5EA8 = .text:0x00005EA8; // type:function size:0x50 -fn_1_5EF8 = .text:0x00005EF8; // type:function size:0x14C -fn_1_6044 = .text:0x00006044; // type:function size:0x178 -fn_1_61BC = .text:0x000061BC; // type:function size:0x60 -fn_1_621C = .text:0x0000621C; // type:function size:0x68 -fn_1_6284 = .text:0x00006284; // type:function size:0xC8 -fn_1_634C = .text:0x0000634C; // type:function size:0xA8 -fn_1_63F4 = .text:0x000063F4; // type:function size:0x1DC -fn_1_65D0 = .text:0x000065D0; // type:function size:0x50 -fn_1_6620 = .text:0x00006620; // type:function size:0x120 -fn_1_6740 = .text:0x00006740; // type:function size:0x118 -fn_1_6858 = .text:0x00006858; // type:function size:0x28 -fn_1_6880 = .text:0x00006880; // type:function size:0x44 -fn_1_68C4 = .text:0x000068C4; // type:function size:0x15C -fn_1_6A20 = .text:0x00006A20; // type:function size:0x50 -fn_1_6A70 = .text:0x00006A70; // type:function size:0x38C -fn_1_6DFC = .text:0x00006DFC; // type:function size:0x410 -fn_1_720C = .text:0x0000720C; // type:function size:0xA8 -fn_1_72B4 = .text:0x000072B4; // type:function size:0xB0 -fn_1_7364 = .text:0x00007364; // type:function size:0xB4 -fn_1_7418 = .text:0x00007418; // type:function size:0x1B0 -fn_1_75C8 = .text:0x000075C8; // type:function size:0x20 -fn_1_75E8 = .text:0x000075E8; // type:function size:0x4 -fn_1_75EC = .text:0x000075EC; // type:function size:0xC -fn_1_75F8 = .text:0x000075F8; // type:function size:0x38 -fn_1_7630 = .text:0x00007630; // type:function size:0x118 -fn_1_7748 = .text:0x00007748; // type:function size:0x250 -fn_1_7998 = .text:0x00007998; // type:function size:0x46C -fn_1_7E04 = .text:0x00007E04; // type:function size:0x314 -fn_1_8118 = .text:0x00008118; // type:function size:0x7D8 -fn_1_88F0 = .text:0x000088F0; // type:function size:0x55C -fn_1_8E4C = .text:0x00008E4C; // type:function size:0x38 -fn_1_8E84 = .text:0x00008E84; // type:function size:0x2E8 -fn_1_916C = .text:0x0000916C; // type:function size:0x100 -fn_1_926C = .text:0x0000926C; // type:function size:0x314 -fn_1_9580 = .text:0x00009580; // type:function size:0x1D8 -fn_1_9758 = .text:0x00009758; // type:function size:0x7C -fn_1_97D4 = .text:0x000097D4; // type:function size:0x54 -fn_1_9828 = .text:0x00009828; // type:function size:0x7C -fn_1_98A4 = .text:0x000098A4; // type:function size:0x7C -fn_1_9920 = .text:0x00009920; // type:function size:0x78 -fn_1_9998 = .text:0x00009998; // type:function size:0x12C +fn_1_DB8 = .text:0x00000DB0; // type:function size:0x60 +fn_1_E18 = .text:0x00000E10; // type:function size:0xA0 +fn_1_EB8 = .text:0x00000EB0; // type:function size:0x14C +fn_1_1004 = .text:0x00000FFC; // type:function size:0x178 +fn_1_117C = .text:0x00001174; // type:function size:0x70 +fn_1_11EC = .text:0x000011E4; // type:function size:0x70 +fn_1_125C = .text:0x00001254; // type:function size:0x49C +fn_1_16F8 = .text:0x000016F0; // type:function size:0x13F4 +fn_1_2AC8 = .text:0x00002AE4; // type:function size:0x14 +fn_1_2ADC = .text:0x00002AF8; // type:function size:0x98 +fn_1_2B74 = .text:0x00002B90; // type:function size:0x368 +fn_1_2EDC = .text:0x00002EF8; // type:function size:0x80 +fn_1_2F5C = .text:0x00002F78; // type:function size:0x6F8 +fn_1_3654 = .text:0x00003670; // type:function size:0x70 +fn_1_36C4 = .text:0x000036E0; // type:function size:0x50 +fn_1_3714 = .text:0x00003730; // type:function size:0x7E8 +fn_1_3EFC = .text:0x00003F18; // type:function size:0x700 +fn_1_45FC = .text:0x00004618; // type:function size:0x48 +fn_1_4644 = .text:0x00004660; // type:function size:0x60 +fn_1_46A4 = .text:0x000046C0; // type:function size:0x94 +fn_1_4738 = .text:0x00004754; // type:function size:0x15C +fn_1_4894 = .text:0x000048B0; // type:function size:0x5C +fn_1_48F0 = .text:0x0000490C; // type:function size:0x178 +fn_1_4A68 = .text:0x00004A84; // type:function size:0x8C +fn_1_4AF4 = .text:0x00004B10; // type:function size:0x3D0 +fn_1_4EC4 = .text:0x00004EE0; // type:function size:0x50 +fn_1_4F14 = .text:0x00004F30; // type:function size:0x220 +fn_1_5134 = .text:0x00005150; // type:function size:0xA20 +fn_1_5B34 = .text:0x00005B70; // type:function size:0x14 +fn_1_5B48 = .text:0x00005B84; // type:function size:0x40 +fn_1_5B88 = .text:0x00005BC4; // type:function size:0xE4 +fn_1_5C6C = .text:0x00005CA8; // type:function size:0xD0 +fn_1_5D3C = .text:0x00005D78; // type:function size:0x130 +fn_1_5E6C = .text:0x00005EA8; // type:function size:0x50 +fn_1_5EBC = .text:0x00005EF8; // type:function size:0x14C +fn_1_6008 = .text:0x00006044; // type:function size:0x178 +fn_1_6180 = .text:0x000061BC; // type:function size:0x60 +fn_1_61E0 = .text:0x0000621C; // type:function size:0x68 +fn_1_6248 = .text:0x00006284; // type:function size:0xC8 +fn_1_6310 = .text:0x0000634C; // type:function size:0xA8 +fn_1_63B8 = .text:0x000063F4; // type:function size:0x1DC +fn_1_6594 = .text:0x000065D0; // type:function size:0x50 +fn_1_65E4 = .text:0x00006620; // type:function size:0x120 +fn_1_6704 = .text:0x00006740; // type:function size:0x118 +fn_1_681C = .text:0x00006858; // type:function size:0x28 +fn_1_6844 = .text:0x00006880; // type:function size:0x44 +fn_1_6888 = .text:0x000068C4; // type:function size:0x15C +fn_1_69E4 = .text:0x00006A20; // type:function size:0x50 +fn_1_6A34 = .text:0x00006A70; // type:function size:0x38C +fn_1_6DC0 = .text:0x00006DFC; // type:function size:0x410 +fn_1_71D0 = .text:0x0000720C; // type:function size:0xA8 +fn_1_7278 = .text:0x000072B4; // type:function size:0xB0 +fn_1_7328 = .text:0x00007364; // type:function size:0xB4 +fn_1_73DC = .text:0x00007418; // type:function size:0x1B0 +fn_1_758C = .text:0x000075C8; // type:function size:0x20 +fn_1_75AC = .text:0x000075E8; // type:function size:0x4 +fn_1_75B0 = .text:0x000075EC; // type:function size:0xC +fn_1_75BC = .text:0x000075F8; // type:function size:0x38 +fn_1_75F4 = .text:0x00007630; // type:function size:0x118 +fn_1_770C = .text:0x00007748; // type:function size:0x250 +fn_1_795C = .text:0x00007998; // type:function size:0x46C +fn_1_7DC8 = .text:0x00007E04; // type:function size:0x314 +fn_1_80DC = .text:0x00008118; // type:function size:0x7D8 +fn_1_88B4 = .text:0x000088F0; // type:function size:0x55C +fn_1_8E10 = .text:0x00008E4C; // type:function size:0x38 +fn_1_8E48 = .text:0x00008E84; // type:function size:0x2E8 +fn_1_9130 = .text:0x0000916C; // type:function size:0x100 +fn_1_9230 = .text:0x0000926C; // type:function size:0x314 +fn_1_9544 = .text:0x00009580; // type:function size:0x1D8 +fn_1_971C = .text:0x00009758; // type:function size:0x7C +fn_1_9798 = .text:0x000097D4; // type:function size:0x54 +fn_1_97EC = .text:0x00009828; // type:function size:0x7C +fn_1_9868 = .text:0x000098A4; // type:function size:0x7C +fn_1_98E4 = .text:0x00009920; // type:function size:0x78 +fn_1_995C = .text:0x00009998; // type:function size:0x12C _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:0x8 data:4byte -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:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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:0x8 data:double -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x1 data:byte +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:0x8 scope:local data:4byte +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:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x1 scope:local data:byte lbl_1_data_0 = .data:0x00000000; // type:object size:0x30 lbl_1_data_30 = .data:0x00000030; // type:object size:0xC lbl_1_data_3C = .data:0x0000003C; // type:object size:0xC @@ -173,7 +173,7 @@ lbl_1_data_4C = .data:0x0000004C; // type:object size:0x54 data:float lbl_1_data_A0 = .data:0x000000A0; // type:object size:0xC lbl_1_data_AC = .data:0x000000AC; // type:object size:0xC lbl_1_data_B8 = .data:0x000000B8; // type:object size:0xC -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x24 +lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x24 scope:local data:string jumptable_1_data_E8 = .data:0x000000E8; // type:object size:0x24 scope:local lbl_1_data_10C = .data:0x0000010C; // type:object size:0x4 lbl_1_data_110 = .data:0x00000110; // type:object size:0x60 data:4byte diff --git a/configure.py b/configure.py index 400de22c..691ad13d 100644 --- a/configure.py +++ b/configure.py @@ -1072,7 +1072,7 @@ config.libs = [ Rel( "m426Dll", # Revers-a-Bomb objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m426Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/m426Dll/main.c"), }, ), Rel( @@ -1088,7 +1088,7 @@ config.libs = [ objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m428Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m428Dll/map.c"), - Object(NonMatching, "REL/m428Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m428Dll/player.c"), }, ), Rel( diff --git a/include/REL/m428Dll.h b/include/REL/m428Dll.h index 9d30ded6..567c3f99 100644 --- a/include/REL/m428Dll.h +++ b/include/REL/m428Dll.h @@ -3,7 +3,7 @@ #include "game/object.h" -u32 fn_1_26E0(void); +s32 fn_1_26E0(void); void fn_1_4170(s16 arg0, s32 arg1); void fn_1_4324(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3); @@ -28,4 +28,7 @@ void fn_1_116C4(s32 arg0, s32 arg1); void fn_1_11754(s32 arg0, float arg8); void fn_1_11798(s32 arg0); +extern s16 lbl_1_bss_50[4]; +extern s32 lbl_1_bss_18; + #endif diff --git a/src/REL/m402Dll/main.c b/src/REL/m402Dll/main.c index d604cf04..e4044763 100755 --- a/src/REL/m402Dll/main.c +++ b/src/REL/m402Dll/main.c @@ -579,7 +579,7 @@ static void fn_1_1A60(Vec *arg0, s16 arg1, Vec *arg2) } temp_r31 = &Hu3DCamera[i]; C_MTXLookAt(sp1C, &temp_r31->pos, &temp_r31->up, &temp_r31->target); - PSMTXMultVec(sp1C, arg0, &sp10); + MTXMultVec(sp1C, arg0, &sp10); temp_f30 = sp10.z * (sind(temp_r31->fov / 2) / cosd(temp_r31->fov / 2)) * temp_r31->aspect; temp_f29 = sp10.z * (sind(temp_r31->fov / 2) / cosd(temp_r31->fov / 2)); temp_f28 = 0.9f * temp_r31->viewport_x; @@ -606,9 +606,9 @@ static void fn_1_1D70(s16 arg0, char *arg1, Vec *arg2, Mtx arg3) var_r30 = &Hu3DData[arg0]; Hu3DModelObjMtxGet(arg0, arg1, spC); - PSMTXConcat(var_r30->unk_F0, spC, spC); + MTXConcat(var_r30->unk_F0, spC, spC); if (NULL != arg3) { - PSMTXCopy(spC, arg3); + MTXCopy(spC, arg3); } arg2->x = spC[0][3]; arg2->y = spC[1][3]; @@ -1425,9 +1425,9 @@ static void fn_1_70E4(omObjData *arg0) spC.y = 0.0f; spC.z = var_f27; temp_r31->unk24.z *= 0.92f; - PSMTXIdentity(sp18); + MTXIdentity(sp18); mtxRot(sp18, temp_r31->unk24.x, temp_r31->unk24.y, 0.0f); - PSMTXMultVec(sp18, &spC, &spC); + MTXMultVec(sp18, &spC, &spC); VECAdd(&spC, &temp_r31->unk00, &temp_r31->unk00); omSetTra(arg0, temp_r31->unk00.x, temp_r31->unk00.y, temp_r31->unk00.z); Hu3DModelTPLvlSet(arg0->model[0], temp_r31->unk30); diff --git a/src/REL/m403Dll/main.c b/src/REL/m403Dll/main.c index a1e3fc91..af675a31 100755 --- a/src/REL/m403Dll/main.c +++ b/src/REL/m403Dll/main.c @@ -1384,18 +1384,18 @@ static void fn_1_46E4(Mtx arg0, float arg1, float arg2, float arg3) Mtx sp8; if (arg3 != 0.0f) { - PSMTXRotRad(arg0, 'Z', MTXDegToRad(arg3)); + MTXRotRad(arg0, 'Z', MTXDegToRad(arg3)); } else { - PSMTXIdentity(arg0); + MTXIdentity(arg0); } if (arg1 != 0.0f) { - PSMTXRotRad(sp38, 'X', MTXDegToRad(arg1)); - PSMTXConcat(sp38, arg0, arg0); + MTXRotRad(sp38, 'X', MTXDegToRad(arg1)); + MTXConcat(sp38, arg0, arg0); } if (arg2 != 0.0f) { - PSMTXRotRad(sp8, 'Y', MTXDegToRad(arg2)); - PSMTXConcat(sp8, arg0, arg0); + MTXRotRad(sp8, 'Y', MTXDegToRad(arg2)); + MTXConcat(sp8, arg0, arg0); } } diff --git a/src/REL/m403Dll/scene.c b/src/REL/m403Dll/scene.c index e87fd648..b71d445f 100755 --- a/src/REL/m403Dll/scene.c +++ b/src/REL/m403Dll/scene.c @@ -307,12 +307,12 @@ static void fn_1_6ED8(omObjData *arg0) Mtx sp8; s32 i; - PSMTXTrans(sp38, arg0->trans.x, arg0->trans.y, arg0->trans.z); + MTXTrans(sp38, arg0->trans.x, arg0->trans.y, arg0->trans.z); mtxRot(sp8, arg0->rot.x, arg0->rot.y, arg0->rot.z); - PSMTXConcat(sp38, sp8, sp38); + MTXConcat(sp38, sp8, sp38); for (i = 0; i < 6; i++) { - PSMTXTrans(sp8, lbl_1_data_A88[i].x, lbl_1_data_A88[i].y, lbl_1_data_A88[i].z); - PSMTXConcat(sp38, sp8, sp8); + MTXTrans(sp8, lbl_1_data_A88[i].x, lbl_1_data_A88[i].y, lbl_1_data_A88[i].z); + MTXConcat(sp38, sp8, sp8); Hu3DModelPosSet(arg0->model[i + 1], sp8[0][3], sp8[1][3], sp8[2][3]); Hu3DModelRotSet(arg0->model[i + 1], arg0->rot.x, arg0->rot.y, arg0->rot.z); } @@ -598,16 +598,16 @@ static s32 fn_1_7D04(float arg0, float arg1, Vec *arg2) temp_r28 -= 6; fn_1_7BD4(temp_r21, &sp10); sp10 = lbl_1_data_A88[temp_r21]; - PSMTXTrans(sp4C, temp_r31->trans.x, temp_r31->trans.y, temp_r31->trans.z); + MTXTrans(sp4C, temp_r31->trans.x, temp_r31->trans.y, temp_r31->trans.z); mtxRot(sp1C, temp_r31->rot.x, temp_r31->rot.y, temp_r31->rot.z); - PSMTXConcat(sp4C, sp1C, sp4C); - PSMTXTrans(sp1C, sp10.x, sp10.y, sp10.z); - PSMTXConcat(sp4C, sp1C, sp4C); + MTXConcat(sp4C, sp1C, sp4C); + MTXTrans(sp1C, sp10.x, sp10.y, sp10.z); + MTXConcat(sp4C, sp1C, sp4C); var_r30 = lbl_1_data_AFC[temp_r28]; temp_r23 = lbl_1_data_B14[temp_r28]; for (i = 0; i < temp_r23; i++) { - PSMTXTrans(sp1C, var_r30->x, var_r30->y, var_r30->z); - PSMTXConcat(sp4C, sp1C, sp1C); + MTXTrans(sp1C, var_r30->x, var_r30->y, var_r30->z); + MTXConcat(sp4C, sp1C, sp1C); arg2->x = sp1C[0][3]; arg2->y = sp1C[1][3]; arg2->z = sp1C[2][3]; @@ -703,17 +703,17 @@ s32 fn_1_8470(Vec *arg0) temp_r30 = lbl_1_bss_9C[lbl_1_bss_94]; temp_r27 = temp_r30->data; var_r25 = fn_1_8274(temp_r27, sp8); - PSMTXTrans(sp50, temp_r30->trans.x, temp_r30->trans.y, temp_r30->trans.z); + MTXTrans(sp50, temp_r30->trans.x, temp_r30->trans.y, temp_r30->trans.z); mtxRot(sp20, temp_r30->rot.x, temp_r30->rot.y, temp_r30->rot.z); - PSMTXConcat(sp50, sp20, sp50); + MTXConcat(sp50, sp20, sp50); for (i = 0; i < var_r25; i++) { fn_1_7BD4(sp8[i], arg0); temp_r26 = fn_1_7C20(temp_r27, sp8[i]) - 6; arg0->x += lbl_1_data_B2C[temp_r26].x; arg0->y += lbl_1_data_B2C[temp_r26].y; arg0->z += lbl_1_data_B2C[temp_r26].z; - PSMTXTrans(sp20, arg0->x, arg0->y, arg0->z); - PSMTXConcat(sp50, sp20, sp20); + MTXTrans(sp20, arg0->x, arg0->y, arg0->z); + MTXConcat(sp50, sp20, sp20); arg0->x = sp20[0][3]; arg0->y = sp20[1][3]; arg0->z = sp20[2][3]; diff --git a/src/REL/m405Dll/main.c b/src/REL/m405Dll/main.c index 610db76f..0eade3f2 100755 --- a/src/REL/m405Dll/main.c +++ b/src/REL/m405Dll/main.c @@ -571,7 +571,7 @@ void fn_1_1A60(Vec *arg0, s16 arg1, Vec *arg2) } temp_r31 = &Hu3DCamera[i]; C_MTXLookAt(sp1C, &temp_r31->pos, &temp_r31->up, &temp_r31->target); - PSMTXMultVec(sp1C, arg0, &sp10); + MTXMultVec(sp1C, arg0, &sp10); temp_f30 = sp10.z * (sind(temp_r31->fov / 2) / cosd(temp_r31->fov / 2)) * temp_r31->aspect; temp_f29 = sp10.z * (sind(temp_r31->fov / 2) / cosd(temp_r31->fov / 2)); temp_f28 = 0.9f * temp_r31->viewport_x; @@ -598,9 +598,9 @@ void fn_1_1D70(s16 arg0, char *arg1, Vec *arg2, Mtx arg3) var_r30 = &Hu3DData[arg0]; Hu3DModelObjMtxGet(arg0, arg1, spC); - PSMTXConcat(var_r30->unk_F0, spC, spC); + MTXConcat(var_r30->unk_F0, spC, spC); if (NULL != arg3) { - PSMTXCopy(spC, arg3); + MTXCopy(spC, arg3); } arg2->x = spC[0][3]; arg2->y = spC[1][3]; @@ -928,7 +928,7 @@ void fn_1_37A4(ModelData *arg0, Mtx arg1) UnkBss10Struct *temp_r31; GXLoadPosMtxImm(arg1, GX_PNMTX0); - PSMTXInvXpose(arg1, spEC); + MTXInvXpose(arg1, spEC); GXLoadNrmMtxImm(spEC, GX_PNMTX0); temp_r31 = &lbl_1_data_10[2]; GXInitTexObj(&spC, temp_r31->unk00, temp_r31->unk08, temp_r31->unk0A, GX_TF_RGB565, GX_CLAMP, GX_CLAMP, GX_FALSE); @@ -941,31 +941,31 @@ void fn_1_37A4(ModelData *arg0, Mtx arg1) GXLoadTexObj(&spC, GX_TEXMAP3); GXSetNumTexGens(4); C_MTXLightPerspective(sp2C, 30.0f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, spEC); - PSMTXConcat(spEC, arg1, spEC); - PSMTXConcat(sp2C, Hu3DCameraMtx, spBC); - PSMTXConcat(spBC, spEC, spBC); + MTXInverse(Hu3DCameraMtx, spEC); + MTXConcat(spEC, arg1, spEC); + MTXConcat(sp2C, Hu3DCameraMtx, spBC); + MTXConcat(spBC, spEC, spBC); GXLoadTexMtxImm(spBC, GX_TEXMTX0, GX_MTX3x4); C_MTXLightPerspective(sp2C, 30.0f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, spEC); - PSMTXConcat(spEC, arg1, spEC); - PSMTXConcat(sp2C, Hu3DCameraMtx, spBC); - PSMTXConcat(spBC, spEC, spBC); + MTXInverse(Hu3DCameraMtx, spEC); + MTXConcat(spEC, arg1, spEC); + MTXConcat(sp2C, Hu3DCameraMtx, spBC); + MTXConcat(spBC, spEC, spBC); GXLoadTexMtxImm(spBC, GX_TEXMTX1, GX_MTX3x4); - PSMTXRotRad(spEC, 'X', MTXDegToRad(-90)); + MTXRotRad(spEC, 'X', MTXDegToRad(-90)); var_f31 = 0.0004f; - PSMTXScale(sp8C, 0.00083333335f, var_f31, 0.0004f); - PSMTXConcat(sp8C, spEC, sp5C); - PSMTXTrans(spBC, 0.5f, 0.5f, 0.5f); - PSMTXConcat(spBC, sp5C, sp5C); + MTXScale(sp8C, 0.00083333335f, var_f31, 0.0004f); + MTXConcat(sp8C, spEC, sp5C); + MTXTrans(spBC, 0.5f, 0.5f, 0.5f); + MTXConcat(spBC, sp5C, sp5C); sp5C[0][1] = -0.01f; GXLoadTexMtxImm(sp5C, GX_TEXMTX2, GX_MTX2x4); - PSMTXRotRad(spEC, 'X', MTXDegToRad(-90)); + MTXRotRad(spEC, 'X', MTXDegToRad(-90)); var_f31 = 0.0004f; - PSMTXScale(sp8C, var_f31, var_f31, var_f31); - PSMTXConcat(sp8C, spEC, sp5C); - PSMTXTrans(spBC, 0.5f, 0.5f, 0.0f); - PSMTXConcat(spBC, sp5C, sp5C); + MTXScale(sp8C, var_f31, var_f31, var_f31); + MTXConcat(sp8C, spEC, sp5C); + MTXTrans(spBC, 0.5f, 0.5f, 0.0f); + MTXConcat(spBC, sp5C, sp5C); GXLoadTexMtxImm(sp5C, GX_TEXMTX3, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, GX_TEXMTX0, GX_FALSE, GX_PTIDENTITY); GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX3x4, GX_TG_POS, GX_TEXMTX1, GX_FALSE, GX_PTIDENTITY); @@ -974,12 +974,12 @@ void fn_1_37A4(ModelData *arg0, Mtx arg1) GXSetNumIndStages(2); GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD2, GX_TEXMAP2); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); - PSMTXScale(spBC, -0.2f, -0.2f, 0.2f); + MTXScale(spBC, -0.2f, -0.2f, 0.2f); GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spBC, -2); GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, GX_TRUE, GX_FALSE, GX_ITM_0); GXSetIndTexOrder(GX_INDTEXSTAGE1, GX_TEXCOORD3, GX_TEXMAP3); GXSetIndTexCoordScale(GX_INDTEXSTAGE1, GX_ITS_1, GX_ITS_1); - PSMTXScale(spBC, 0.5f, 0.5f, 0.5f); + MTXScale(spBC, 0.5f, 0.5f, 0.5f); GXSetIndTexMtx(GX_ITM_1, (float(*)[3])spBC, 0); GXSetTevIndWarp(GX_TEVSTAGE1, GX_INDTEXSTAGE1, GX_TRUE, GX_FALSE, GX_ITM_1); GXSetNumTevStages(2); @@ -1031,10 +1031,10 @@ void fn_1_4024(ModelData *arg0, Mtx arg1) fn_1_2714(1, GX_FALSE); GXLoadPosMtxImm(arg1, GX_PNMTX0); C_MTXLightPerspective(sp98, 30.0f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, sp68); - PSMTXConcat(sp68, arg1, sp68); - PSMTXConcat(sp98, Hu3DCameraMtx, sp38); - PSMTXConcat(sp38, sp68, sp68); + MTXInverse(Hu3DCameraMtx, sp68); + MTXConcat(sp68, arg1, sp68); + MTXConcat(sp98, Hu3DCameraMtx, sp38); + MTXConcat(sp38, sp68, sp68); GXLoadTexMtxImm(sp68, GX_TEXMTX0, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, GX_TEXMTX0, GX_FALSE, GX_PTIDENTITY); GXSetNumChans(1); @@ -1096,7 +1096,7 @@ void fn_1_4700(ModelData *arg0, Mtx arg1) C_MTXOrtho(sp20, 0.0f, 480.0f, 0.0f, 640.0f, 0.0f, 100.0f); GXSetProjection(sp20, GX_ORTHOGRAPHIC); - PSMTXIdentity(sp60); + MTXIdentity(sp60); GXLoadPosMtxImm(sp60, GX_PNMTX0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); diff --git a/src/REL/m406Dll/map.c b/src/REL/m406Dll/map.c index 7abe5b76..e995e73a 100644 --- a/src/REL/m406Dll/map.c +++ b/src/REL/m406Dll/map.c @@ -1083,7 +1083,7 @@ void fn_1_45BC(ModelData *arg0, Mtx arg1) } if (!var_r31->unk_28) { GXLoadPosMtxImm(arg1, 0); - PSMTXInvXpose(arg1, sp10); + MTXInvXpose(arg1, sp10); GXLoadNrmMtxImm(sp10, 0); var_r26 = fn_1_D06C(arg0, Hu3DCameraMtx, Hu3DCameraMtxXPose, 2.0f); GXSetNumTevStages(1); @@ -2149,7 +2149,7 @@ void fn_1_82C8(Mtx arg0, s32 arg1, float arg8) sp80.z = arg0[2][3]; sp74.x = sp74.z = 0.0f; sp74.y = atan2d(arg0[0][0], arg0[2][0]); - PSMTXCopy(arg0, sp8C); + MTXCopy(arg0, sp8C); sp8C[0][3] = sp8C[1][3] = sp8C[2][3] = sp8C[3][3] = 0.0f; sp68.x = -25.0f; sp68.z = -50.0f; @@ -2227,7 +2227,7 @@ void fn_1_8F98(void) var_r31->unk_10 = 0.0f; var_r31->unk_14 = 6.0f; var_r31->unk_18 = 1.0f; - PSMTXIdentity(var_r31->unk_1C); + MTXIdentity(var_r31->unk_1C); if (var_r30 == 0) { var_r31->unk_04 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M406, 59)); } @@ -2246,7 +2246,7 @@ void fn_1_8F98(void) var_r31->unk_10 = 0.0f; var_r31->unk_14 = 6.0f; var_r31->unk_18 = 1.0f; - PSMTXIdentity(var_r31->unk_1C); + MTXIdentity(var_r31->unk_1C); if (var_r30 == 0) { var_r31->unk_04 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M406, 60)); } @@ -2278,8 +2278,8 @@ void fn_1_91E0(void) var_f31 = var_r31->unk_18 * cosd((90.0f * var_f30)); var_f31 = var_f31; var_r30 = &Hu3DData[var_r31->unk_04]; - PSMTXScale(sp8, var_f31, var_f31, var_f31); - PSMTXConcat(var_r31->unk_1C, sp8, var_r30->unk_F0); + MTXScale(sp8, var_f31, var_f31, var_f31); + MTXConcat(var_r31->unk_1C, sp8, var_r30->unk_F0); var_r30->unk_F0[0][3] = var_r31->unk_1C[0][3]; var_r30->unk_F0[1][3] = var_r31->unk_1C[1][3]; var_r30->unk_F0[2][3] = var_r31->unk_1C[2][3]; @@ -2299,8 +2299,8 @@ void fn_1_91E0(void) var_f31 = var_r31->unk_18 * cosd((90.0f * var_f30)); var_f31 = var_f31; var_r30 = &Hu3DData[var_r31->unk_04]; - PSMTXScale(sp8, var_f31, var_f31, var_f31); - PSMTXConcat(var_r31->unk_1C, sp8, var_r30->unk_F0); + MTXScale(sp8, var_f31, var_f31, var_f31); + MTXConcat(var_r31->unk_1C, sp8, var_r30->unk_F0); var_r30->unk_F0[0][3] = var_r31->unk_1C[0][3]; var_r30->unk_F0[1][3] = var_r31->unk_1C[1][3]; var_r30->unk_F0[2][3] = var_r31->unk_1C[2][3]; @@ -2340,7 +2340,7 @@ s32 fn_1_94C0(Mtx arg0, s32 arg1, s32 arg2) sp64.z = arg0[2][3]; sp58.x = sp58.z = 0.0f; sp58.y = atan2d(arg0[0][0], arg0[2][0]); - PSMTXCopy(arg0, spA0); + MTXCopy(arg0, spA0); spA0[0][3] = spA0[1][3] = spA0[2][3] = spA0[3][3] = 0.0f; if (!arg2) { sp4C.x = 25.0f; @@ -2419,12 +2419,12 @@ s32 fn_1_94C0(Mtx arg0, s32 arg1, s32 arg2) var_r31->unk_10 = 1.0f; var_r31->unk_14 = 6.0f; var_r31->unk_18 = var_f31; - PSMTXCopy(arg0, var_r31->unk_1C); + MTXCopy(arg0, var_r31->unk_1C); Hu3DMotionTimeSet(var_r31->unk_04, 0.0f); Hu3DMotionSpeedSet(var_r31->unk_04, 0.0f); var_r27 = &Hu3DData[var_r31->unk_04]; - PSMTXScale(sp70, var_f31, var_f31, var_f31); - PSMTXConcat(arg0, sp70, var_r27->unk_F0); + MTXScale(sp70, var_f31, var_f31, var_f31); + MTXConcat(arg0, sp70, var_r27->unk_F0); var_r27->unk_F0[0][3] = arg0[0][3]; var_r27->unk_F0[1][3] = arg0[1][3]; var_r27->unk_F0[2][3] = arg0[2][3]; @@ -2630,7 +2630,7 @@ void fn_1_ADB4(ModelData *arg0, float (*arg1)[4]) GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_A0); GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); - PSMTXIdentity(sp50); + MTXIdentity(sp50); GXLoadPosMtxImm(sp50, 0); GXSetZMode(GX_FALSE, GX_ALWAYS, GX_TRUE); GXSetNumChans(1); @@ -2954,7 +2954,7 @@ void fn_1_BC18(ModelData *arg0, float (*arg1)[4]) GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); GXSetArray(GX_VA_TEX0, var_r31->unk_44, 8); if (HmfInverseMtxF3X3(arg1, sp128) == 0) { - PSMTXIdentity(sp128); + MTXIdentity(sp128); } PSMTXReorder(sp128, sp8); if (var_r31->unk_4C) { @@ -2993,9 +2993,9 @@ void fn_1_BC18(ModelData *arg0, float (*arg1)[4]) VECScale(&lbl_1_data_8E0[1], &sp98[1], var_r29->unk_28); VECScale(&lbl_1_data_8E0[2], &sp98[2], var_r29->unk_28); VECScale(&lbl_1_data_8E0[3], &sp98[3], var_r29->unk_28); - PSMTXRotRad(spC8, 90, var_r29->unk_2C); - PSMTXConcat(sp128, spC8, spF8); - PSMTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); + MTXRotRad(spC8, 90, var_r29->unk_2C); + MTXConcat(sp128, spC8, spF8); + MTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); VECAdd(&sp68[0], &var_r29->unk_30, var_r30++); VECAdd(&sp68[1], &var_r29->unk_30, var_r30++); VECAdd(&sp68[2], &var_r29->unk_30, var_r30++); @@ -3167,7 +3167,7 @@ void fn_1_C86C(ModelData *arg0, Mtx arg1) GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetArray(GX_VA_CLR0, &var_r31->unk_3C->unk_3C, 0x44); if (HmfInverseMtxF3X3(arg1, sp9C) == 0) { - PSMTXIdentity(sp9C); + MTXIdentity(sp9C); } PSMTXReorder(sp9C, spC); if (var_r31->unk_4C) { @@ -3362,8 +3362,8 @@ void fn_1_D13C(LightData *arg0, s16 arg1, Mtx arg2, Mtx arg3, float arg8) break; } if (arg0->unk_00 & 0x8000) { - PSMTXMultVec(arg2, &arg0->unk_28, &sp24); - PSMTXMultVec(arg3, &arg0->unk_1C, &sp18); + MTXMultVec(arg2, &arg0->unk_28, &sp24); + MTXMultVec(arg3, &arg0->unk_1C, &sp18); GXInitLightPos(&sp30, sp18.x, sp18.y, sp18.z); } else { diff --git a/src/REL/m406Dll/player.c b/src/REL/m406Dll/player.c index b484169b..9685aac0 100644 --- a/src/REL/m406Dll/player.c +++ b/src/REL/m406Dll/player.c @@ -666,11 +666,11 @@ void fn_1_E214(omObjData *object) } Hu3DModelScaleSet(object->model[5], var_f30, var_f30, var_f30); var_r31->unk_50 += VECMag(&var_r31->unk_2C) / 3.125f; - PSMTXTrans(sp94, -var_r31->unk_68, -var_r31->unk_6C, -var_r31->unk_70); - PSMTXRotRad(sp64, 0x78, 0.017453292f * var_r31->unk_50); - PSMTXConcat(sp64, sp94, sp34); - PSMTXTrans(sp94, var_r31->unk_68, var_r31->unk_6C, var_r31->unk_70); - PSMTXConcat(sp94, sp34, var_r26->unk_F0); + MTXTrans(sp94, -var_r31->unk_68, -var_r31->unk_6C, -var_r31->unk_70); + MTXRotRad(sp64, 0x78, 0.017453292f * var_r31->unk_50); + MTXConcat(sp64, sp94, sp34); + MTXTrans(sp94, var_r31->unk_68, var_r31->unk_6C, var_r31->unk_70); + MTXConcat(sp94, sp34, var_r26->unk_F0); var_r27 = 6; var_f31 = 2.0f; var_r25 = 0; @@ -690,14 +690,14 @@ void fn_1_E214(omObjData *object) var_r31->unk_2C.x = var_r31->unk_2C.y = var_r31->unk_2C.z = 0.0f; } var_r31->unk_50 = fn_1_13AF4(var_r31->unk_50, 0.0f, 0.5f); - PSMTXTrans(sp94, -var_r31->unk_68, -var_r31->unk_6C, -var_r31->unk_70); - PSMTXRotRad(sp64, 0x78, 0.017453292f * var_r31->unk_50); - PSMTXConcat(sp64, sp94, sp34); - PSMTXTrans(sp94, var_r31->unk_68, var_r31->unk_6C, var_r31->unk_70); - PSMTXConcat(sp94, sp34, var_r26->unk_F0); + MTXTrans(sp94, -var_r31->unk_68, -var_r31->unk_6C, -var_r31->unk_70); + MTXRotRad(sp64, 0x78, 0.017453292f * var_r31->unk_50); + MTXConcat(sp64, sp94, sp34); + MTXTrans(sp94, var_r31->unk_68, var_r31->unk_6C, var_r31->unk_70); + MTXConcat(sp94, sp34, var_r26->unk_F0); if (var_r31->unk_5E != 0) { - PSMTXTrans(sp94, 100.0f * (0.2f * (((var_r31->unk_5E & 1) * 2) - 1)), 0.0f, 0.0f); - PSMTXConcat(sp94, var_r26->unk_F0, var_r26->unk_F0); + MTXTrans(sp94, 100.0f * (0.2f * (((var_r31->unk_5E & 1) * 2) - 1)), 0.0f, 0.0f); + MTXConcat(sp94, var_r26->unk_F0, var_r26->unk_F0); if (--var_r31->unk_5E == 0) { if (++var_r31->unk_5C >= 4) { var_r31->unk_00_field3 = 0; @@ -708,7 +708,7 @@ void fn_1_E214(omObjData *object) Hu3DModelPosSet(object->model[6], object->trans.x + var_r31->unk_68, object->trans.y + var_r31->unk_6C, object->trans.z + var_r31->unk_70); Hu3DModelAttrReset(object->model[6], HU3D_ATTR_DISPOFF); - PSMTXIdentity(var_r26->unk_F0); + MTXIdentity(var_r26->unk_F0); fn_1_117BC(var_r31->unk_14.x, 25.0f, &var_r31->unk_44, &var_r31->unk_2C); } } @@ -733,7 +733,7 @@ void fn_1_E214(omObjData *object) if (fn_1_6A44(sp28) == 1) { var_r31->unk_00_field0 = 1; var_r26 = &Hu3DData[object->model[0]]; - PSMTXIdentity(var_r26->unk_F0); + MTXIdentity(var_r26->unk_F0); omVibrate(var_r31->unk_02, 0xC, 4, 2); HuAudCharVoicePlayPos(var_r31->unk_0C, 0x123, &object->trans); for (var_r24 = 0; var_r24 < 2; var_r24++) { @@ -804,13 +804,13 @@ void fn_1_F194(omObjData *object) mtxTransCat(sp80, var_r30->pos.x, var_r30->pos.y, var_r30->pos.z); VECCrossProduct(&sp44, &sp8, &sp44); if (sp44.y >= 0.0f) { - PSMTXTrans(sp50, -10.0f, 0.0f, 0.0f); - PSMTXConcat(sp50, sp80, sp80); + MTXTrans(sp50, -10.0f, 0.0f, 0.0f); + MTXConcat(sp50, sp80, sp80); fn_1_94C0(sp80, 10, 0); } else { - PSMTXTrans(sp50, 10.0f, 0.0f, 0.0f); - PSMTXConcat(sp50, sp80, sp80); + MTXTrans(sp50, 10.0f, 0.0f, 0.0f); + MTXConcat(sp50, sp80, sp80); fn_1_94C0(sp80, 10, 1); } } @@ -868,13 +868,13 @@ void fn_1_F694(omObjData *object) mtxTransCat(sp68, var_r30->pos.x, var_r30->pos.y, var_r30->pos.z); VECCrossProduct(&sp20, &sp14, &sp8); if (sp8.y >= 0.0f) { - PSMTXTrans(sp38, -10.0f, 0.0f, 0.0f); - PSMTXConcat(sp38, sp68, sp68); + MTXTrans(sp38, -10.0f, 0.0f, 0.0f); + MTXConcat(sp38, sp68, sp68); fn_1_94C0(sp68, 10, 0); } else { - PSMTXTrans(sp38, 10.0f, 0.0f, 0.0f); - PSMTXConcat(sp38, sp68, sp68); + MTXTrans(sp38, 10.0f, 0.0f, 0.0f); + MTXConcat(sp38, sp68, sp68); fn_1_94C0(sp68, 10, 1); } } @@ -1228,8 +1228,8 @@ void fn_1_10744(omObjData *object) if ((var_r31->unk_64 < 0x50) && (var_r31->unk_64 > 0x1E)) { mtxRot(sp48, var_r29->rot.x, var_r29->rot.y, var_r29->rot.z); mtxTransCat(sp48, var_r29->pos.x, var_r29->pos.y, var_r29->pos.z); - PSMTXTrans(sp18, 10.0f, 0.0f, 0.0f); - PSMTXConcat(sp18, sp48, sp48); + MTXTrans(sp18, 10.0f, 0.0f, 0.0f); + MTXConcat(sp18, sp48, sp48); fn_1_94C0(sp48, 10, 0); } var_r31->unk_2C.x = var_r31->unk_54 * (100.0 * (0.10000000149011612 * sind(180.0f + var_r31->unk_14.x))); @@ -1345,15 +1345,15 @@ void fn_1_114A0(omObjData *object) } mtxRot(sp9C, object->rot.x, object->rot.y, object->trans.z); mtxScaleCat(sp9C, object->scale.x, object->scale.y, object->scale.z); - PSMTXTrans(sp9C, object->trans.x, object->trans.y, object->trans.z); - PSMTXRotRad(sp6C, 0x78, 0.017453292f * var_r31->unk_50); - PSMTXConcat(sp9C, sp6C, sp9C); - PSMTXCopy(sp9C, spC); + MTXTrans(sp9C, object->trans.x, object->trans.y, object->trans.z); + MTXRotRad(sp6C, 0x78, 0.017453292f * var_r31->unk_50); + MTXConcat(sp9C, sp6C, sp9C); + MTXCopy(sp9C, spC); mtxScaleCat(spC, 2.0f, 2.0f, 2.0f); - PSMTXCopy(spC, Hu3DData[object->model[5]].unk_F0); - PSMTXTrans(sp3C, 0.0f, 110.0f, 0.0f); - PSMTXConcat(sp9C, sp3C, spC); - PSMTXCopy(spC, Hu3DData[object->model[7]].unk_F0); + MTXCopy(spC, Hu3DData[object->model[5]].unk_F0); + MTXTrans(sp3C, 0.0f, 110.0f, 0.0f); + MTXConcat(sp9C, sp3C, spC); + MTXCopy(spC, Hu3DData[object->model[7]].unk_F0); } void fn_1_117BC(float arg8, float arg9, UnkM406PlayerStruct2 *arg0, Vec *arg1) @@ -1753,7 +1753,7 @@ void fn_1_12BC4(omObjData *object) var_r30->target.z = Center.z; C_MTXLookAt(spA8, &var_r30->pos, &var_r30->up, &var_r30->target); for (var_r31 = 0; var_r31 < lbl_1_bss_1C4; var_r31++) { - PSMTXMultVec(spA8, &lbl_1_bss_104[var_r31], &sp198[var_r31]); + MTXMultVec(spA8, &lbl_1_bss_104[var_r31], &sp198[var_r31]); spD8[var_r31].x = sp198[var_r31].x / (sp198[var_r31].z * (sind((var_r30->fov / 2)) / cosd((var_r30->fov / 2)))); spD8[var_r31].y = sp198[var_r31].y / (sp198[var_r31].z * (sind((var_r30->fov / 2)) / cosd((var_r30->fov / 2)))); } @@ -1811,13 +1811,13 @@ s32 fn_1_136AC(HsfObject *arg0, Mtx arg1, char *arg2, Mtx arg3) HsfTransform *var_r31 = &arg0->data.curr; mtxRot(sp144, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); - PSMTXScale(sp174, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); - PSMTXConcat(sp144, sp174, sp174); + MTXScale(sp174, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + MTXConcat(sp144, sp174, sp174); mtxTransCat(sp174, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); - PSMTXConcat(arg1, sp174, sp174); + MTXConcat(arg1, sp174, sp174); strcpy(sp4A4, MakeObjectName(arg2)); if (strcmp(sp4A4, arg0->name) == 0) { - PSMTXCopy(sp174, arg3); + MTXCopy(sp174, arg3); return 1; } for (var_r23 = 0; var_r23 < arg0->data.childrenCount; var_r23++) { @@ -1838,7 +1838,7 @@ void fn_1_13A88(s16 arg0, char *arg1, Mtx arg2) var_r31 = &Hu3DData[arg0]; var_r30 = var_r31->hsfData; - PSMTXIdentity(sp14); + MTXIdentity(sp14); fn_1_136AC(var_r30->root, sp14, arg1, arg2); } diff --git a/src/REL/m409Dll/cursor.c b/src/REL/m409Dll/cursor.c index c007391c..76fbe60a 100644 --- a/src/REL/m409Dll/cursor.c +++ b/src/REL/m409Dll/cursor.c @@ -4,11 +4,12 @@ #include "game/hsfdraw.h" #include "game/sprite.h" -void fn_1_BF88(s16 arg0, s16 arg1) { +void fn_1_BF88(s16 arg0, s16 arg1) +{ s32 var_r31; s32 var_r31_2; - unkStruct8* var_r29; - unkStruct9Sub* var_r30; + unkStruct8 *var_r29; + unkStruct9Sub *var_r30; lbl_1_bss_F0.unk4 = Hu3DHookFuncCreate(fn_1_CB98); Hu3DModelLayerSet(lbl_1_bss_F0.unk4, 6); @@ -18,26 +19,27 @@ void fn_1_BF88(s16 arg0, s16 arg1) { lbl_1_bss_F0.unk2 = arg1; var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct9Sub), MEMORY_DEFAULT_NUM); lbl_1_bss_F0.unkC = var_r30; - + for (var_r31 = 0; var_r31 < arg0; var_r31++, var_r29++) { var_r29->unk8 = 0; } - + for (var_r31 = 0; var_r31 < arg1; var_r31++, var_r30++) { var_r30->unk6 = 0; var_r30->unk8 = 0; } - + lbl_1_bss_F0.unk6 = lbl_1_bss_F0.unk8 = lbl_1_bss_F0.unkA = 0; } -void fn_1_C0C0(void) { +void fn_1_C0C0(void) +{ s32 var_r31; for (var_r31 = 1; var_r31 < lbl_1_bss_F0.unk0; var_r31++) { fn_1_DDB8(var_r31); } - + for (var_r31 = 1; var_r31 < lbl_1_bss_F0.unk2; var_r31++) { fn_1_E228(var_r31); } @@ -48,7 +50,8 @@ void fn_1_C0C0(void) { extern u8 texMtxTbl[]; -void fn_1_C164(unkStruct8* arg0) { +void fn_1_C164(unkStruct8 *arg0) +{ ModelData spEC; Mtx spBC; Mtx sp8C; @@ -59,27 +62,27 @@ void fn_1_C164(unkStruct8* arg0) { GXColorSrc var_r25; s32 var_r26; s16 temp_r23; - unkStruct9Sub* temp_r28; + unkStruct9Sub *temp_r28; s16 var_r27; s16 var_r30; s32 var_r24; s32 var_r22; s32 var_r21; s32 var_r20; - unkStruct8Sub* var_r31; + unkStruct8Sub *var_r31; mtxRot(sp2C, arg0->unk18.x, arg0->unk18.y, arg0->unk18.z); - PSMTXScale(sp5C, arg0->unk24.x, arg0->unk24.y, arg0->unk24.z); - PSMTXConcat(sp2C, sp5C, sp5C); + MTXScale(sp5C, arg0->unk24.x, arg0->unk24.y, arg0->unk24.z); + MTXConcat(sp2C, sp5C, sp5C); mtxTransCat(sp5C, arg0->unkC.x, arg0->unkC.y, arg0->unkC.z); - PSMTXConcat(Hu3DCameraMtx, sp5C, sp8C); + MTXConcat(Hu3DCameraMtx, sp5C, sp8C); var_r30 = 0; var_r27 = 0; sp8 = 0; - + for (var_r26 = GX_TEXMAP0; var_r26 < arg0->unk4; var_r26++) { temp_r28 = &lbl_1_bss_F0.unkC[arg0->unk34[var_r26]]; - PSMTXRotRad(temp_r28->unk18, 0x5A, 0.0f); + MTXRotRad(temp_r28->unk18, 0x5A, 0.0f); mtxTransCat(temp_r28->unk18, temp_r28->unkC.x, temp_r28->unkC.y, temp_r28->unkC.z); switch (temp_r28->unk4) { case 0: @@ -91,11 +94,13 @@ void fn_1_C164(unkStruct8* arg0) { if ((temp_r28->unk0->bmp->dataFmt == 7) || (temp_r28->unk0->bmp->dataFmt == 8)) { GXSetTevColor(GX_TEVREG2, temp_r28->unk48); GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_C2, GX_CC_RASC, GX_CC_ZERO); - } else { + } + else { GXSetTevColorIn(var_r30, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); } GXSetTevAlphaIn(var_r30, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); - } else { + } + else { sp28.a = temp_r28->unk48.a; GXSetTevColor(GX_TEVREG2, sp28); GXSetTevColorIn(var_r30, GX_CC_CPREV, GX_CC_TEXC, GX_CC_A2, GX_CC_ZERO); @@ -150,39 +155,40 @@ void fn_1_C164(unkStruct8* arg0) { GXSetNumTevStages((s32)var_r30); GXSetNumTexGens((s32)var_r27); var_r31 = arg0->unk3C; - + for (var_r24 = 0; var_r24 < arg0->unk2; var_r24++, var_r31++) { if ((var_r31->unk34 != 0) && ((var_r31->unk34 & 4) == 0)) { switch (var_r31->unk30) { case 0: mtxRot(sp2C, var_r31->unkC.x, var_r31->unkC.y, var_r31->unkC.z); - PSMTXIdentity(sp5C); + MTXIdentity(sp5C); HmfInverseMtxF3X3(Hu3DCameraMtx, sp5C); - PSMTXConcat(sp5C, sp2C, sp2C); - PSMTXScale(sp5C, var_r31->unk18.x, var_r31->unk18.y, var_r31->unk18.z); - PSMTXConcat(sp2C, sp5C, sp5C); + MTXConcat(sp5C, sp2C, sp2C); + MTXScale(sp5C, var_r31->unk18.x, var_r31->unk18.y, var_r31->unk18.z); + MTXConcat(sp2C, sp5C, sp5C); mtxTransCat(sp5C, var_r31->unk0.x, var_r31->unk0.y, var_r31->unk0.z); - PSMTXConcat(Hu3DCameraMtx, sp5C, spBC); + MTXConcat(Hu3DCameraMtx, sp5C, spBC); break; case 1: - PSMTXCopy(sp8C, sp2C); + MTXCopy(sp8C, sp2C); mtxRotCat(sp2C, var_r31->unkC.x, var_r31->unkC.y, var_r31->unkC.z); - PSMTXScale(sp5C, var_r31->unk18.x, var_r31->unk18.y, var_r31->unk18.z); - PSMTXConcat(sp2C, sp5C, sp5C); + MTXScale(sp5C, var_r31->unk18.x, var_r31->unk18.y, var_r31->unk18.z); + MTXConcat(sp2C, sp5C, sp5C); mtxTransCat(sp5C, var_r31->unk0.x, var_r31->unk0.y, var_r31->unk0.z); - PSMTXCopy(sp5C, spBC); + MTXCopy(sp5C, spBC); break; } GXLoadPosMtxImm(spBC, 0); - PSMTXInverse(spBC, sp5C); - PSMTXTranspose(sp5C, sp2C); + MTXInverse(spBC, sp5C); + MTXTranspose(sp5C, sp2C); GXLoadNrmMtxImm(sp2C, 0); GXSetChanAmbColor(GX_COLOR0A0, var_r31->unk4C); GXSetChanMatColor(GX_COLOR0A0, var_r31->unk50); GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); if ((var_r31->unk34 & 0x10) != 0) { GXSetZMode(GX_FALSE, GX_LEQUAL, GX_TRUE); - } else { + } + else { GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); } spEC.attr = 0; @@ -190,7 +196,8 @@ void fn_1_C164(unkStruct8* arg0) { GXSetNumChans(1); if ((var_r31->unk34 & 8) != 0) { var_r25 = GX_SRC_VTX; - } else { + } + else { var_r25 = GX_SRC_REG; } switch (var_r31->unk31) { @@ -224,18 +231,19 @@ void fn_1_C164(unkStruct8* arg0) { } } -void fn_1_CB98(ModelData* model, Mtx matrix) { +void fn_1_CB98(ModelData *model, Mtx matrix) +{ Mtx sp38; Mtx sp8; s32 var_r30; - unkStruct8* var_r31; + unkStruct8 *var_r31; var_r31 = lbl_1_bss_F0.unk10; GXLoadPosMtxImm(matrix, 0); - PSMTXInverse(matrix, sp38); - PSMTXTranspose(sp38, sp8); + MTXInverse(matrix, sp38); + MTXTranspose(sp38, sp8); GXLoadNrmMtxImm(sp8, 0); - + for (var_r30 = 0; var_r30 < lbl_1_bss_F0.unk0; var_r30++, var_r31++) { if ((var_r31->unk8 == 0) || ((var_r31->unk8 & 2) == 0) || ((var_r31->unk8 & 4) != 0)) { continue; @@ -244,28 +252,33 @@ void fn_1_CB98(ModelData* model, Mtx matrix) { if (var_r31->unk30) { var_r31->unk30(var_r31); } - if (var_r31->unk8 == 0) continue; + if (var_r31->unk8 == 0) + continue; fn_1_D430(var_r31); - if (var_r31->unk8 == 0) continue; + if (var_r31->unk8 == 0) + continue; } fn_1_C164(var_r31); } } -unkStruct8* fn_1_CCB0(s16 idx) { +unkStruct8 *fn_1_CCB0(s16 idx) +{ return &lbl_1_bss_F0.unk10[idx]; } -unkStruct8Sub* fn_1_CCCC(s16 arg0, s16 arg1) { +unkStruct8Sub *fn_1_CCCC(s16 arg0, s16 arg1) +{ return &lbl_1_bss_F0.unk10[arg0].unk3C[arg1]; } -void fn_1_CCF8(unkStruct11** arg0, s16 arg1, f32 arg8, f32 arg9) { +void fn_1_CCF8(unkStruct11 **arg0, s16 arg1, f32 arg8, f32 arg9) +{ s32 var_r30; - unkStruct11* var_r31; - + unkStruct11 *var_r31; + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct11), MEMORY_DEFAULT_NUM); - + for (var_r30 = 0; var_r30 < arg1; var_r31++, var_r30++) { var_r31->unk0.x = (-0.5f * arg8); var_r31->unk0.y = (0.5f * arg9); @@ -282,13 +295,14 @@ void fn_1_CCF8(unkStruct11** arg0, s16 arg1, f32 arg8, f32 arg9) { } } -void fn_1_CE7C(Vec** arg0, s16 arg1, Vec* arg2) { +void fn_1_CE7C(Vec **arg0, s16 arg1, Vec *arg2) +{ s32 var_r29; s32 var_r28; - Vec* var_r31; + Vec *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec[4]), MEMORY_DEFAULT_NUM); - + for (var_r29 = 0; var_r29 < arg1; var_r29++) { for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { var_r31->x = arg2->x; @@ -298,13 +312,14 @@ void fn_1_CE7C(Vec** arg0, s16 arg1, Vec* arg2) { } } -void fn_1_CF1C(GXColor** arg0, s16 arg1, GXColor* arg2) { +void fn_1_CF1C(GXColor **arg0, s16 arg1, GXColor *arg2) +{ s32 var_r29; s32 var_r28; - GXColor* var_r31; + GXColor *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(GXColor[4]), MEMORY_DEFAULT_NUM); - + for (var_r29 = 0; var_r29 < arg1; var_r29++) { for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { var_r31->r = arg2->r; @@ -315,12 +330,13 @@ void fn_1_CF1C(GXColor** arg0, s16 arg1, GXColor* arg2) { } } -void fn_1_CFC4(Vec** arg0, s16 arg1, Vec* arg2) { +void fn_1_CFC4(Vec **arg0, s16 arg1, Vec *arg2) +{ s32 var_r29; - Vec* var_r31; + Vec *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec), MEMORY_DEFAULT_NUM); - + for (var_r29 = 0; var_r29 < arg1; var_r31++, arg2++, var_r29++) { var_r31->x = arg2->x; var_r31->y = arg2->y; @@ -328,10 +344,11 @@ void fn_1_CFC4(Vec** arg0, s16 arg1, Vec* arg2) { } } -void fn_1_D050(HsfVector2f** arg0, s16 arg1, HsfVector2f* arg2) { +void fn_1_D050(HsfVector2f **arg0, s16 arg1, HsfVector2f *arg2) +{ s32 var_r28; s32 var_r29; - HsfVector2f* var_r31; + HsfVector2f *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(HsfVector2f[4]), MEMORY_DEFAULT_NUM); @@ -343,31 +360,22 @@ void fn_1_D050(HsfVector2f** arg0, s16 arg1, HsfVector2f* arg2) { } } -void fn_1_D0E8(unkStruct8Sub* arg0) { - Vec sp18[4] = { - { -50.0f, 50.0f, 0.0f }, - { 50.0f, 50.0f, 0.0f }, - { 50.0f, -50.0f, 0.0f }, - { -50.0f, -50.0f, 0.0f } - }; - GXColor sp8[4] = { - { 0xFF, 0xFF, 0xFF, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF } - }; +void fn_1_D0E8(unkStruct8Sub *arg0) +{ + Vec sp18[4] = { { -50.0f, 50.0f, 0.0f }, { 50.0f, 50.0f, 0.0f }, { 50.0f, -50.0f, 0.0f }, { -50.0f, -50.0f, 0.0f } }; + GXColor sp8[4] = { { 0xFF, 0xFF, 0xFF, 0xFF }, { 0xFF, 0xFF, 0xFF, 0xFF }, { 0xFF, 0xFF, 0xFF, 0xFF }, { 0xFF, 0xFF, 0xFF, 0xFF } }; s32 var_r26; s32 var_r25; - void* temp_r3_3; - + void *temp_r3_3; + if (arg0->unk40 != NULL) { HuMemDirectFree(arg0->unk40); } - fn_1_CE7C((Vec**)&arg0->unk40, 1, &sp18[0]); + fn_1_CE7C((Vec **)&arg0->unk40, 1, &sp18[0]); if (arg0->unk44 != NULL) { HuMemDirectFree(arg0->unk44); } - fn_1_CF1C((GXColor**)&arg0->unk44, 1, &sp8[0]); + fn_1_CF1C((GXColor **)&arg0->unk44, 1, &sp8[0]); if (arg0->unk48 != NULL) { HuMemDirectFree(arg0->unk48); } @@ -383,12 +391,12 @@ void fn_1_D0E8(unkStruct8Sub* arg0) { DCFlushRange(arg0->unk3C, 0x1000); GXBeginDisplayList(temp_r3_3, 0x1000); GXBegin(GX_QUADS, GX_VTXFMT0, 4); - + for (var_r26 = 0; var_r26 < 4; var_r26++) { GXPosition1x16(var_r26); GXColor1x16(0); GXNormal1x16(var_r26); - + for (var_r25 = 0; var_r25 < arg0->unk32; var_r25++) { GXTexCoord1x16(var_r26); } @@ -396,23 +404,25 @@ void fn_1_D0E8(unkStruct8Sub* arg0) { arg0->unk38 = GXEndDisplayList(); } -void fn_1_D430(unkStruct8* arg0) { +void fn_1_D430(unkStruct8 *arg0) +{ s32 var_r25; s32 var_r26; s32 var_r27; - unkStruct8Sub* var_r28; - unkStruct12* var_r31; - unkStruct9Sub* temp_r30; + unkStruct8Sub *var_r28; + unkStruct12 *var_r31; + unkStruct9Sub *temp_r30; var_r27 = 0; var_r28 = arg0->unk3C; - + for (var_r25 = 0; var_r25 < arg0->unk2; var_r25++, var_r28++) { if ((var_r28->unk34 & 4) != 0) { var_r27++; - } else { + } + else { var_r31 = var_r28->unk54; - + for (var_r26 = 0; var_r26 < var_r28->unk32; var_r26++, var_r31++) { temp_r30 = &lbl_1_bss_F0.unkC[arg0->unk34[var_r26]]; var_r31->unk8 &= ~4; @@ -436,30 +446,37 @@ void fn_1_D430(unkStruct8* arg0) { if ((var_r31->unk8 & 0x10) != 0) { var_r31->unk8 |= 8; var_r31->unk0--; - } else if ((var_r31->unk8 & 0x40) != 0) { + } + else if ((var_r31->unk8 & 0x40) != 0) { var_r31->unk8 = (var_r31->unk8 & 0xF0) | 2; var_r31->unk0 -= 2; - } else if ((var_r31->unk8 & 0x20) != 0) { + } + else if ((var_r31->unk8 & 0x20) != 0) { var_r31->unk0 = 0; } var_r31->unk8 |= 4; - } else if (var_r31->unk0 < 0) { + } + else if (var_r31->unk0 < 0) { if ((var_r31->unk8 & 0x10) != 0) { var_r31->unk8 |= 8; var_r31->unk0 = 0; - } else if ((var_r31->unk8 & 0x20) != 0) { + } + else if ((var_r31->unk8 & 0x20) != 0) { if ((var_r31->unk8 & 0x40) != 0) { var_r31->unk8 = ((var_r31->unk8 & 0xF0) | 1); var_r31->unk0 = 1U; - } else { + } + else { var_r31->unk0 = (temp_r30->unk4C - 1); } - } else if ((var_r31->unk8 & 0x40) != 0) { + } + else if ((var_r31->unk8 & 0x40) != 0) { var_r31->unk8 |= 8; var_r31->unk0 = 0; } var_r31->unk8 |= 4; - } else { + } + else { var_r31->unk8 &= ~8; } if (var_r31->unk0 != var_r31->unk1) { @@ -483,11 +500,13 @@ void fn_1_D430(unkStruct8* arg0) { if ((var_r31->unk8 & 0x40) == 0) { if (var_r31->unk0 <= 0) { var_r31->unk0 = temp_r30->unk4C; - } else { + } + else { var_r31->unk0 = 0U; } } - } else if ((var_r28->unk34 & 0x80000000) != 0) { + } + else if ((var_r28->unk34 & 0x80000000) != 0) { fn_1_DDB8(arg0->unk0); } var_r27++; @@ -506,21 +525,23 @@ void fn_1_D430(unkStruct8* arg0) { } } -s16 fn_1_DA48(u8 arg0, u8 arg1) { +s16 fn_1_DA48(u8 arg0, u8 arg1) +{ s32 var_r29; s32 var_r28; - unkStruct8* var_r30; - unkStruct8Sub* var_r31; + unkStruct8 *var_r30; + unkStruct8Sub *var_r31; var_r30 = &lbl_1_bss_F0.unk10[1]; - + for (var_r29 = 1; var_r29 < lbl_1_bss_F0.unk0; var_r29++, var_r30++) { - if (var_r30->unk8 == 0) break; - + if (var_r30->unk8 == 0) + break; } - - if (var_r29 == lbl_1_bss_F0.unk0) return 0; - + + if (var_r29 == lbl_1_bss_F0.unk0) + return 0; + var_r30->unk0 = var_r29; var_r30->unk8 = 1; var_r30->unk30 = NULL; @@ -534,14 +555,14 @@ s16 fn_1_DA48(u8 arg0, u8 arg1) { var_r30->unk24.x = var_r30->unk24.y = var_r30->unk24.z = 1.0f; var_r30->unk54.x = var_r30->unk54.y = var_r30->unk54.z = 0.0f; var_r30->unk48.x = var_r30->unk48.y = var_r30->unk48.z = 0.0f; - + for (var_r29 = 0; var_r29 < 0x20; var_r29++) { var_r30->unk60[var_r29] = 0; } for (var_r29 = 0; var_r29 < arg1; var_r29++) { var_r30->unk34[var_r29] = 0; } - + for (var_r29 = 0; var_r29 < arg0; var_r29++, var_r31++) { var_r31->unk34 = 1; var_r31->unk32 = arg1; @@ -552,7 +573,7 @@ s16 fn_1_DA48(u8 arg0, u8 arg1) { var_r31->unk50.r = var_r31->unk50.g = var_r31->unk50.b = 0xFF; var_r31->unk50.a = 0xFF; var_r31->unk54 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct12), MEMORY_DEFAULT_NUM); - + for (var_r28 = 0; var_r28 < arg1; var_r28++) { var_r31->unk54[var_r28].unk0 = var_r31->unk54[var_r28].unk1 = 0; var_r31->unk54[var_r28].unk4 = NULL; @@ -564,7 +585,7 @@ s16 fn_1_DA48(u8 arg0, u8 arg1) { var_r31->unk18.x = var_r31->unk18.y = var_r31->unk18.z = 1.0f; var_r31->unk64.x = var_r31->unk64.y = var_r31->unk64.z = 0.0f; var_r31->unk58.x = var_r31->unk58.y = var_r31->unk58.z = 0.0f; - + for (var_r28 = 0; var_r28 < 0x10; var_r28++) { var_r31->unk70[var_r28] = 0; } @@ -575,17 +596,18 @@ s16 fn_1_DA48(u8 arg0, u8 arg1) { return var_r30->unk0; } -void fn_1_DDB8(s16 arg0) { - unkStruct12* var_r28; +void fn_1_DDB8(s16 arg0) +{ + unkStruct12 *var_r28; s32 var_r29; - unkStruct8* temp_r30; - unkStruct8Sub* var_r31; + unkStruct8 *temp_r30; + unkStruct8Sub *var_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; if (temp_r30->unk8 != 0) { var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { if (var_r31->unk40 != NULL) { HuMemDirectFree(var_r31->unk40); @@ -603,7 +625,7 @@ void fn_1_DDB8(s16 arg0) { HuMemDirectFree(var_r28->unk4); HuMemDirectFree(var_r31->unk54); } - + for (var_r29 = 0; var_r29 < temp_r30->unk4; var_r29++) { fn_1_E228(temp_r30->unk34[var_r29]); } @@ -615,32 +637,36 @@ void fn_1_DDB8(s16 arg0) { } } -void fn_1_DEF4(s16 arg0, s16 arg1, u8 arg2) { +void fn_1_DEF4(s16 arg0, s16 arg1, u8 arg2) +{ lbl_1_bss_F0.unk6 = arg0; lbl_1_bss_F0.unk8 = arg1; lbl_1_bss_F0.unkA = arg2; } -s16 fn_1_DF20(u32 arg0, s16 arg1, s16 arg2) { - AnimData* temp_r30; +s16 fn_1_DF20(u32 arg0, s16 arg1, s16 arg2) +{ + AnimData *temp_r30; f32 var_f31; f32 var_f30; s32 var_r29; - unkStruct9Sub* var_r31; + unkStruct9Sub *var_r31; var_r31 = &lbl_1_bss_F0.unkC[1]; - + for (var_r29 = 1; var_r29 < lbl_1_bss_F0.unk2; var_r29++, var_r31++) { - if ((var_r31->unk6 != 0) && (var_r31->unk8 == arg0)) break; + if ((var_r31->unk6 != 0) && (var_r31->unk8 == arg0)) + break; } if (var_r29 < lbl_1_bss_F0.unk2) { var_r31->unk6++; return var_r29; } var_r31 = &lbl_1_bss_F0.unkC[1]; - + for (var_r29 = 1; var_r29 < lbl_1_bss_F0.unk2; var_r29++, var_r31++) { - if (var_r31->unk6 == 0) break; + if (var_r31->unk6 == 0) + break; } var_r31->unk8 = arg0; var_r31->unk6 = 1; @@ -649,7 +675,8 @@ s16 fn_1_DF20(u32 arg0, s16 arg1, s16 arg2) { arg1 = temp_r30->bmp->sizeX; arg2 = temp_r30->bmp->sizeY; var_f31 = var_f30 = 1.0f; - } else { + } + else { var_f31 = arg1 / (f32)temp_r30->bmp->sizeX; var_f30 = arg2 / (f32)temp_r30->bmp->sizeY; } @@ -664,14 +691,15 @@ s16 fn_1_DF20(u32 arg0, s16 arg1, s16 arg2) { var_r31->unk4C = (temp_r30->bmp->sizeY / arg2); var_r31->unk48.r = var_r31->unk48.g = var_r31->unk48.b = 0xFF; var_r31->unk48.a = 0xFF; - PSMTXIdentity(var_r31->unk18); + MTXIdentity(var_r31->unk18); var_r31->unkC.x = var_r31->unkC.y = var_r31->unkC.z = 0.0f; return var_r29; } -void fn_1_E228(s16 arg0) { - unkStruct9Sub* temp_r31; - +void fn_1_E228(s16 arg0) +{ + unkStruct9Sub *temp_r31; + temp_r31 = &lbl_1_bss_F0.unkC[arg0]; if (temp_r31->unk8 != 0) { if (temp_r31->unk6 != 0) { @@ -684,17 +712,18 @@ void fn_1_E228(s16 arg0) { } } -s32 fn_1_E2A8(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) { +s32 fn_1_E2A8(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) +{ f32 temp_f31; f32 temp_f30; s32 var_r26; s32 var_r25; s32 var_r24; - unkStruct12* temp_r31; - unkStruct8* temp_r27; - unkStruct8Sub* var_r28; - unkStruct9Sub* temp_r30; - unkStruct11* var_r29; + unkStruct12 *temp_r31; + unkStruct8 *temp_r27; + unkStruct8Sub *var_r28; + unkStruct9Sub *temp_r30; + unkStruct11 *var_r29; if (arg0 == 0) { return 0; @@ -708,7 +737,7 @@ s32 fn_1_E2A8(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) { temp_r27->unk34[arg1] = var_r24; temp_r30 = &lbl_1_bss_F0.unkC[var_r24]; var_r28 = temp_r27->unk3C; - + for (var_r26 = 0; var_r26 < temp_r27->unk2; var_r26++, var_r28++) { if (arg1 == 0) { if (var_r28->unk40) { @@ -717,7 +746,7 @@ s32 fn_1_E2A8(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) { temp_f30 = temp_r30->unk50; temp_f31 = temp_r30->unk4E; var_r29 = var_r28->unk40 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x30, MEMORY_DEFAULT_NUM); - + for (var_r25 = 0; var_r25 < 1; var_r29++, var_r25++) { var_r29->unk0.x = (-0.5f * temp_f31); var_r29->unk0.y = (0.5f * temp_f30); @@ -757,15 +786,17 @@ s32 fn_1_E2A8(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) { return 1; } -s32 fn_1_E7C8(s16 arg0, u8 arg1, u32 arg2) { +s32 fn_1_E7C8(s16 arg0, u8 arg1, u32 arg2) +{ s32 var_r31; - + var_r31 = fn_1_E2A8(arg0, arg1, arg2, 0, 0); return var_r31; } -void fn_1_E818(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r31; +void fn_1_E818(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -775,9 +806,10 @@ void fn_1_E818(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_E85C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r30; - unkStruct8Sub* temp_r31; +void fn_1_E85C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r30; + unkStruct8Sub *temp_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; @@ -790,15 +822,16 @@ void fn_1_E85C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_E8CC(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_E8CC(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkStruct8* temp_r30; - unkStruct8Sub* var_r31; + unkStruct8 *temp_r30; + unkStruct8Sub *var_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { var_r31->unk0.x = arg8; var_r31->unk0.y = arg9; @@ -807,8 +840,9 @@ void fn_1_E8CC(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_E940(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r31; +void fn_1_E940(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -818,9 +852,10 @@ void fn_1_E940(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_E99C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r30; - unkStruct8Sub* temp_r31; +void fn_1_E99C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r30; + unkStruct8Sub *temp_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; @@ -833,15 +868,16 @@ void fn_1_E99C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_EA24(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_EA24(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkStruct8* temp_r30; - unkStruct8Sub* var_r31; + unkStruct8 *temp_r30; + unkStruct8Sub *var_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { var_r31->unk0.x += arg8; var_r31->unk0.y += arg9; @@ -850,8 +886,9 @@ void fn_1_EA24(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_EAB0(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r31; +void fn_1_EAB0(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -861,9 +898,10 @@ void fn_1_EAB0(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_EAF4(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r30; - unkStruct8Sub* temp_r31; +void fn_1_EAF4(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r30; + unkStruct8Sub *temp_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; @@ -876,15 +914,16 @@ void fn_1_EAF4(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_EB64(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_EB64(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkStruct8* temp_r30; - unkStruct8Sub* var_r31; + unkStruct8 *temp_r30; + unkStruct8Sub *var_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { var_r31->unkC.x = arg8; var_r31->unkC.y = arg9; @@ -893,8 +932,9 @@ void fn_1_EB64(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_EBD8(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r31; +void fn_1_EBD8(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -904,9 +944,10 @@ void fn_1_EBD8(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_EC1C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkStruct8* temp_r30; - unkStruct8Sub* temp_r31; +void fn_1_EC1C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkStruct8 *temp_r30; + unkStruct8Sub *temp_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; @@ -919,15 +960,16 @@ void fn_1_EC1C(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_EC8C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_EC8C(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkStruct8* temp_r30; - unkStruct8Sub* var_r31; + unkStruct8 *temp_r30; + unkStruct8Sub *var_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { var_r31->unk18.x = arg8; var_r31->unk18.y = arg9; @@ -936,8 +978,9 @@ void fn_1_EC8C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_ED00(s16 arg0, s32 arg1) { - unkStruct8* temp_r31; +void fn_1_ED00(s16 arg0, s32 arg1) +{ + unkStruct8 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -945,9 +988,10 @@ void fn_1_ED00(s16 arg0, s32 arg1) { } } -void fn_1_ED44(s16 arg0, s16 arg1, s32 arg2) { - unkStruct8* temp_r31; - unkStruct8Sub* temp_r30; +void fn_1_ED44(s16 arg0, s16 arg1, s32 arg2) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *temp_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -958,23 +1002,25 @@ void fn_1_ED44(s16 arg0, s16 arg1, s32 arg2) { } } -void fn_1_EDB4(s16 arg0, s32 arg1) { +void fn_1_EDB4(s16 arg0, s32 arg1) +{ s32 var_r30; - unkStruct8* temp_r31; - unkStruct8Sub* temp_r29; + unkStruct8 *temp_r31; + unkStruct8Sub *temp_r29; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; temp_r29 = temp_r31->unk3C; - + for (var_r30 = 0; var_r30 < temp_r31->unk2; var_r30++) { temp_r29->unk34 |= arg1; } } } -void fn_1_EE24(s16 arg0, u32 arg1) { - unkStruct8* temp_r31; +void fn_1_EE24(s16 arg0, u32 arg1) +{ + unkStruct8 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -982,9 +1028,10 @@ void fn_1_EE24(s16 arg0, u32 arg1) { } } -void fn_1_EE68(s16 arg0, s16 arg1, u32 arg2) { - unkStruct8* temp_r31; - unkStruct8Sub* temp_r30; +void fn_1_EE68(s16 arg0, s16 arg1, u32 arg2) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *temp_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -995,23 +1042,25 @@ void fn_1_EE68(s16 arg0, s16 arg1, u32 arg2) { } } -void fn_1_EED8(s16 arg0, u32 arg1) { +void fn_1_EED8(s16 arg0, u32 arg1) +{ s32 var_r30; - unkStruct8* temp_r31; - unkStruct8Sub* temp_r29; + unkStruct8 *temp_r31; + unkStruct8Sub *temp_r29; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; temp_r29 = temp_r31->unk3C; - + for (var_r30 = 0; var_r30 < temp_r31->unk2; var_r30++) { temp_r29->unk34 &= ~arg1; } } } -s32 fn_1_EF48(s16 arg0, s32 arg1) { - unkStruct8* var_r31; +s32 fn_1_EF48(s16 arg0, s32 arg1) +{ + unkStruct8 *var_r31; if (arg0 == 0) { return 0; @@ -1024,26 +1073,31 @@ s32 fn_1_EF48(s16 arg0, s32 arg1) { return 0; } -s32 fn_1_EFA4(s16 arg0, s16 arg1, s32 arg2) { - unkStruct8Sub* var_r30; - unkStruct8* temp_r31; +s32 fn_1_EFA4(s16 arg0, s16 arg1, s32 arg2) +{ + unkStruct8Sub *var_r30; + unkStruct8 *temp_r31; + + if (arg0 == 0) + return; - if (arg0 == 0) return; - temp_r31 = &lbl_1_bss_F0.unk10[arg0]; - if (temp_r31->unk2 <= arg1) return; - + if (temp_r31->unk2 <= arg1) + return; + var_r30 = &temp_r31->unk3C[arg1]; if ((var_r30->unk34 & arg2) != 0) { return 1; - } else { + } + else { return 0; } } -void fn_1_F024(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5) { - unkStruct8* temp_r30; - unkStruct8Sub* temp_r31; +void fn_1_F024(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5) +{ + unkStruct8 *temp_r30; + unkStruct8Sub *temp_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; @@ -1057,15 +1111,16 @@ void fn_1_F024(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5) { } } -void fn_1_F098(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) { +void fn_1_F098(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) +{ s32 var_r29; - unkStruct8* temp_r30; - unkStruct8Sub* var_r31; + unkStruct8 *temp_r30; + unkStruct8Sub *var_r31; if (arg0 != 0) { temp_r30 = &lbl_1_bss_F0.unk10[arg0]; var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { var_r31->unk50.r = arg1; var_r31->unk50.g = arg2; @@ -1075,9 +1130,10 @@ void fn_1_F098(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) { } } -void fn_1_F110(s16 arg0, s16 arg1, u8 arg2) { - unkStruct8* temp_r31; - unkStruct8Sub* var_r30; +void fn_1_F110(s16 arg0, s16 arg1, u8 arg2) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -1088,9 +1144,10 @@ void fn_1_F110(s16 arg0, s16 arg1, u8 arg2) { } } -void fn_1_F17C(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { - unkStruct8* temp_r31; - unkStruct8Sub* var_r30; +void fn_1_F17C(s16 arg0, s16 arg1, u8 arg2, u8 arg3) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -1101,17 +1158,18 @@ void fn_1_F17C(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { } } -void fn_1_F1F4(s16 arg0, u8 arg1) { +void fn_1_F1F4(s16 arg0, u8 arg1) +{ s32 var_r28; s32 var_r30; - unkStruct8* temp_r29; - unkStruct8Sub* var_r31; + unkStruct8 *temp_r29; + unkStruct8Sub *var_r31; if (arg0 != 0) { temp_r29 = &lbl_1_bss_F0.unk10[arg0]; var_r31 = (unkStruct8Sub *)(&temp_r29->unk3C); //! BAD WHY (void)temp_r29; - + for (var_r28 = 0; var_r28 < temp_r29->unk2; var_r28++, var_r31++) { for (var_r30 = 0; var_r30 < var_r31->unk32; var_r30++) { var_r31->unk54[var_r30].unk8 = arg1; @@ -1120,9 +1178,10 @@ void fn_1_F1F4(s16 arg0, u8 arg1) { } } -void fn_1_F28C(s16 arg0, s16 arg1, f32 arg8) { - unkStruct8* temp_r31; - unkStruct8Sub* var_r30; +void fn_1_F28C(s16 arg0, s16 arg1, f32 arg8) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -1133,9 +1192,10 @@ void fn_1_F28C(s16 arg0, s16 arg1, f32 arg8) { } } -void fn_1_F2F8(s16 arg0, s16 arg1, u8 arg2, f32 arg8) { - unkStruct8* temp_r31; - unkStruct8Sub* var_r30; +void fn_1_F2F8(s16 arg0, s16 arg1, u8 arg2, f32 arg8) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -1146,16 +1206,17 @@ void fn_1_F2F8(s16 arg0, s16 arg1, u8 arg2, f32 arg8) { } } -void fn_1_F370(s16 arg0, f32 arg8) { - unkStruct8* temp_r31; +void fn_1_F370(s16 arg0, f32 arg8) +{ + unkStruct8 *temp_r31; s32 var_r29; s32 var_r30; - unkStruct8Sub* volatile sp8; + unkStruct8Sub *volatile sp8; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; sp8 = &temp_r31->unk3C[0]; - + for (var_r29 = 0; var_r29 < temp_r31->unk2; var_r29++) { for (var_r30 = 0; var_r30 < sp8->unk32; var_r30++) { sp8->unk54[var_r30].unkC = arg8; @@ -1164,9 +1225,10 @@ void fn_1_F370(s16 arg0, f32 arg8) { } } -void fn_1_F408(s16 arg0, s16 arg1, u8 arg2) { - unkStruct8* temp_r31; - unkStruct8Sub* var_r30; +void fn_1_F408(s16 arg0, s16 arg1, u8 arg2) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -1177,9 +1239,10 @@ void fn_1_F408(s16 arg0, s16 arg1, u8 arg2) { } } -void fn_1_F478(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { - unkStruct8* temp_r31; - unkStruct8Sub* var_r30; +void fn_1_F478(s16 arg0, s16 arg1, u8 arg2, u8 arg3) +{ + unkStruct8 *temp_r31; + unkStruct8Sub *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_F0.unk10[arg0]; @@ -1190,10 +1253,11 @@ void fn_1_F478(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { } } -void fn_1_F4F0(s16 arg0, u8 arg1) { - unkStruct8Sub* volatile sp8; +void fn_1_F4F0(s16 arg0, u8 arg1) +{ + unkStruct8Sub *volatile sp8; s32 var_r29; - unkStruct8* temp_r31; + unkStruct8 *temp_r31; s32 var_r30; if (arg0 != 0) { diff --git a/src/REL/m409Dll/main.c b/src/REL/m409Dll/main.c index a1ee937d..70955a13 100644 --- a/src/REL/m409Dll/main.c +++ b/src/REL/m409Dll/main.c @@ -1416,9 +1416,9 @@ void fn_1_602C(ModelData *arg0, f32 (*arg1)[4]) } else { fn_1_6778(&temp_r30->unk2C, &sp38, &var_r29->unk34, 4); - PSMTXRotRad(spC8, 0x5A, 0.017453292f * var_r29->unk30); - PSMTXConcat(sp128, spC8, sp98); - PSMTXMultVecArray(sp98, &sp38, &sp8, 4); + MTXRotRad(spC8, 0x5A, 0.017453292f * var_r29->unk30); + MTXConcat(sp128, spC8, sp98); + MTXMultVecArray(sp98, &sp38, &sp8, 4); VECAdd(&sp8, &var_r29->unk40, var_r31++); VECAdd(&sp14, &var_r29->unk40, var_r31++); VECAdd(&sp20, &var_r29->unk40, var_r31++); diff --git a/src/REL/m410Dll/game.c b/src/REL/m410Dll/game.c index 303236d5..5d9671c5 100644 --- a/src/REL/m410Dll/game.c +++ b/src/REL/m410Dll/game.c @@ -956,9 +956,9 @@ void fn_1_6968(omObjData *object) sp8.z = -var_r31->unk_1C.x; var_f30 = VECMag(&sp8) / 30.000002f; if (var_f30 >= 0.001f) { - PSMTXRotAxisRad(sp14, &sp8, var_f30); + MTXRotAxisRad(sp14, &sp8, var_f30); var_r28 = &Hu3DData[object->model[var_r30]]; - PSMTXConcat(sp14, var_r28->unk_F0, var_r28->unk_F0); + MTXConcat(sp14, var_r28->unk_F0, var_r28->unk_F0); } } } @@ -1238,8 +1238,8 @@ s32 fn_1_79F8(s16 arg0, char *arg1, Mtx arg2) var_r30 = var_r31->hsfData; lbl_1_bss_30 = 0; mtxRot(sp14, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); - PSMTXScale(sp44, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); - PSMTXConcat(sp14, sp44, sp44); + MTXScale(sp44, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + MTXConcat(sp14, sp44, sp44); mtxTransCat(sp44, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); fn_1_7AC4(var_r30->root, sp44, arg1, arg2); return lbl_1_bss_30; @@ -1274,12 +1274,12 @@ void fn_1_7AC4(HsfObject *arg0, Mtx arg1, char *arg2, Mtx arg3) var_r31 = &arg0->data.curr; mtxRot(sp12C, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); - PSMTXScale(sp15C, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); - PSMTXConcat(sp12C, sp15C, sp15C); + MTXScale(sp15C, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + MTXConcat(sp12C, sp15C, sp15C); mtxTransCat(sp15C, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); - PSMTXConcat(arg1, sp15C, sp15C); + MTXConcat(arg1, sp15C, sp15C); if (!strcmp(arg2, arg0->name)) { - PSMTXCopy(sp15C, arg3); + MTXCopy(sp15C, arg3); lbl_1_bss_30 = 1; } @@ -1288,12 +1288,12 @@ void fn_1_7AC4(HsfObject *arg0, Mtx arg1, char *arg2, Mtx arg3) if (!lbl_1_bss_30) { var_r30 = &var_r27->data.curr; mtxRot(spFC, var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); - PSMTXScale(spCC, var_r30->scale.x, var_r30->scale.y, var_r30->scale.z); - PSMTXConcat(spFC, spCC, spCC); + MTXScale(spCC, var_r30->scale.x, var_r30->scale.y, var_r30->scale.z); + MTXConcat(spFC, spCC, spCC); mtxTransCat(spCC, var_r30->pos.x, var_r30->pos.y, var_r30->pos.z); - PSMTXConcat(sp15C, spCC, spCC); + MTXConcat(sp15C, spCC, spCC); if (!strcmp(arg2, var_r27->name)) { - PSMTXCopy(spCC, arg3); + MTXCopy(spCC, arg3); lbl_1_bss_30 = 1; } for (var_r22 = 0; var_r22 < var_r27->data.childrenCount; var_r22++) { @@ -1301,12 +1301,12 @@ void fn_1_7AC4(HsfObject *arg0, Mtx arg1, char *arg2, Mtx arg3) if (!lbl_1_bss_30) { var_r29 = &var_r26->data.curr; mtxRot(sp9C, var_r29->rot.x, var_r29->rot.y, var_r29->rot.z); - PSMTXScale(sp6C, var_r29->scale.x, var_r29->scale.y, var_r29->scale.z); - PSMTXConcat(sp9C, sp6C, sp6C); + MTXScale(sp6C, var_r29->scale.x, var_r29->scale.y, var_r29->scale.z); + MTXConcat(sp9C, sp6C, sp6C); mtxTransCat(sp6C, var_r29->pos.x, var_r29->pos.y, var_r29->pos.z); - PSMTXConcat(spCC, sp6C, sp6C); + MTXConcat(spCC, sp6C, sp6C); if (!strcmp(arg2, var_r26->name)) { - PSMTXCopy(sp6C, arg3); + MTXCopy(sp6C, arg3); lbl_1_bss_30 = 1; } @@ -1315,12 +1315,12 @@ void fn_1_7AC4(HsfObject *arg0, Mtx arg1, char *arg2, Mtx arg3) if (!lbl_1_bss_30) { var_r28 = &var_r25->data.curr; mtxRot(sp3C, var_r28->rot.x, var_r28->rot.y, var_r28->rot.z); - PSMTXScale(spC, var_r28->scale.x, var_r28->scale.y, var_r28->scale.z); - PSMTXConcat(sp3C, spC, spC); + MTXScale(spC, var_r28->scale.x, var_r28->scale.y, var_r28->scale.z); + MTXConcat(sp3C, spC, spC); mtxTransCat(spC, var_r28->pos.x, var_r28->pos.y, var_r28->pos.z); - PSMTXConcat(sp6C, spC, spC); + MTXConcat(sp6C, spC, spC); if (!strcmp(arg2, var_r25->name)) { - PSMTXCopy(spC, arg3); + MTXCopy(spC, arg3); lbl_1_bss_30 = 1; } diff --git a/src/REL/m410Dll/main.c b/src/REL/m410Dll/main.c index 42506076..e6855848 100644 --- a/src/REL/m410Dll/main.c +++ b/src/REL/m410Dll/main.c @@ -93,7 +93,7 @@ void ObjectSetup(void) sp8.x = sp8.z = 0.0f; sp8.y = lbl_1_data_18.z; mtxRot(sp20, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); - PSMTXMultVec(sp20, &sp8, &sp8); + MTXMultVec(sp20, &sp8, &sp8); Hu3DGLightPosAimSetV(lbl_1_bss_16, &sp8, &sp14); Hu3DShadowPosSet(&sp8, &lbl_1_data_34, &sp14); lbl_1_bss_14 = lbl_1_bss_12 = lbl_1_bss_10 = -1; diff --git a/src/REL/m410Dll/player.c b/src/REL/m410Dll/player.c index 133a5762..d4566bca 100644 --- a/src/REL/m410Dll/player.c +++ b/src/REL/m410Dll/player.c @@ -1075,8 +1075,8 @@ void fn_1_B140(ModelData *arg0, Mtx arg1) DCStoreRange(&sp10, 4); DCStoreRange(&lbl_1_data_294, 32); - PSMTXTrans(spF4, -400.0f, 400.0f, -700.0f); - PSMTXConcat(Hu3DCameraMtx, spF4, sp64); + MTXTrans(spF4, -400.0f, 400.0f, -700.0f); + MTXConcat(Hu3DCameraMtx, spF4, sp64); GXLoadPosMtxImm(sp64, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -1086,10 +1086,10 @@ void fn_1_B140(ModelData *arg0, Mtx arg1) HuSprTexLoad(lbl_1_bss_70, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); GXSetNumTexGens(2); C_MTXLightPerspective(sp94, 41.5f, 1.2f, 0.5555555f, -0.5f, 0.5555555f, 0.5f); - PSMTXConcat(sp94, Hu3DCameraMtx, sp94); - PSMTXInverse(Hu3DCameraMtx, sp34); - PSMTXConcat(sp34, sp64, sp124); - PSMTXConcat(sp94, sp124, spF4); + MTXConcat(sp94, Hu3DCameraMtx, sp94); + MTXInverse(Hu3DCameraMtx, sp34); + MTXConcat(sp34, sp64, sp124); + MTXConcat(sp94, sp124, spF4); GXLoadTexMtxImm(spF4, 30, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 30, GX_FALSE, 125); GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEXCOORD0, 33, GX_FALSE, 125); @@ -1097,7 +1097,7 @@ void fn_1_B140(ModelData *arg0, Mtx arg1) GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP1); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, GX_TRUE, GX_FALSE, GX_ITM_0); - PSMTXScale(spF4, -0.5f, -0.5f, 0.5f); + MTXScale(spF4, -0.5f, -0.5f, 0.5f); GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spF4, -1); GXSetNumTevStages(1); GXSetTevColor(GX_TEVREG1, sp10); @@ -1124,17 +1124,17 @@ void fn_1_B140(ModelData *arg0, Mtx arg1) if (var_r31->unk_00) { lbl_1_data_294[var_r31->unk_02].a = 255.0f * var_r31->unk_0C; GXSetTevColor(GX_TEVREG0, lbl_1_data_294[var_r31->unk_02]); - PSMTXTrans(spF4, var_r31->unk_10.x, var_r31->unk_10.y, var_r31->unk_10.z); - PSMTXRotRad(sp124, 90, 0.017453292f * var_r31->unk_08); - PSMTXConcat(spF4, sp124, spF4); - PSMTXScale(spC4, var_r31->unk_04, var_r31->unk_04, var_r31->unk_04); - PSMTXConcat(spF4, spC4, spF4); - PSMTXConcat(Hu3DCameraMtx, spF4, sp64); + MTXTrans(spF4, var_r31->unk_10.x, var_r31->unk_10.y, var_r31->unk_10.z); + MTXRotRad(sp124, 90, 0.017453292f * var_r31->unk_08); + MTXConcat(spF4, sp124, spF4); + MTXScale(spC4, var_r31->unk_04, var_r31->unk_04, var_r31->unk_04); + MTXConcat(spF4, spC4, spF4); + MTXConcat(Hu3DCameraMtx, spF4, sp64); GXLoadPosMtxImm(sp64, 0); - PSMTXConcat(sp34, sp64, sp124); - PSMTXConcat(sp94, sp124, spF4); + MTXConcat(sp34, sp64, sp124); + MTXConcat(sp94, sp124, spF4); GXLoadTexMtxImm(spF4, 30, GX_MTX3x4); - PSMTXRotRad(sp124, 90, 0.017453292f * -var_r31->unk_08); + MTXRotRad(sp124, 90, 0.017453292f * -var_r31->unk_08); GXLoadTexMtxImm(sp124, 33, GX_MTX2x4); GXCallDisplayList(var_r30->unk_120.unk_E5C, var_r30->unk_120.unk_E58); } diff --git a/src/REL/m415Dll/main.c b/src/REL/m415Dll/main.c index 971724b5..2053aed7 100644 --- a/src/REL/m415Dll/main.c +++ b/src/REL/m415Dll/main.c @@ -513,8 +513,8 @@ void fn_1_1A60(unkStruct3 *arg0) for (var_r31 = -1; var_r31 < 2; var_r31 += 2) { for (var_r29 = -1; var_r29 < 2; var_r29 += 2) { MTXRotDeg(sp118, 0x59, temp_f30); - PSMTXTrans(spE8, (var_r30 * var_r31), 0.0f, (var_r30 * var_r29)); - PSMTXConcat(sp118, spE8, spE8); + MTXTrans(spE8, (var_r30 * var_r31), 0.0f, (var_r30 * var_r29)); + MTXConcat(sp118, spE8, spE8); if ((spB8[0].y > spE8[2][3]) || ((spB8[0].y == spE8[2][3]) && (spB8[0].x > spE8[0][3]))) { spB8[0].x = spE8[0][3]; spB8[0].y = spE8[2][3]; @@ -1604,15 +1604,15 @@ void fn_1_6958(Mtx arg0, f32 arg8, f32 arg9, f32 argA) MTXRotDeg(arg0, 0x5A, argA); } else { - PSMTXIdentity(arg0); + MTXIdentity(arg0); } if (arg8 != 0.0f) { MTXRotDeg(sp38, 0x58, arg8); - PSMTXConcat(sp38, arg0, arg0); + MTXConcat(sp38, arg0, arg0); } if (arg9 != 0.0f) { MTXRotDeg(sp8, 0x59, arg9); - PSMTXConcat(sp8, arg0, arg0); + MTXConcat(sp8, arg0, arg0); } } diff --git a/src/REL/m415Dll/map.c b/src/REL/m415Dll/map.c index 31636233..6533a2dc 100644 --- a/src/REL/m415Dll/map.c +++ b/src/REL/m415Dll/map.c @@ -4,10 +4,11 @@ #include "game/hsfdraw.h" #include "game/sprite.h" -void fn_1_8780(s16 arg0, s16 arg1) { +void fn_1_8780(s16 arg0, s16 arg1) +{ s32 var_r31; - unkSubStruct2* var_r29; - unkSubStruct3* var_r30; + unkSubStruct2 *var_r29; + unkSubStruct3 *var_r30; lbl_1_bss_36C.unk34 = Hu3DHookFuncCreate(fn_1_95C0); Hu3DModelLayerSet(lbl_1_bss_36C.unk34, 6); @@ -15,11 +16,11 @@ void fn_1_8780(s16 arg0, s16 arg1) { lbl_1_bss_36C.unk40 = var_r29 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * sizeof(unkSubStruct2), MEMORY_DEFAULT_NUM); lbl_1_bss_36C.unk32 = arg1; lbl_1_bss_36C.unk3C = var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkSubStruct3), MEMORY_DEFAULT_NUM); - + for (var_r31 = 0; var_r31 < arg0; var_r31++, var_r29++) { var_r29->unk8 = 0; } - + for (var_r31 = 0; var_r31 < arg1; var_r31++, var_r30++) { var_r30->unk6 = 0; var_r30->unk8 = 0; @@ -27,7 +28,8 @@ void fn_1_8780(s16 arg0, s16 arg1) { lbl_1_bss_36C.unk36 = lbl_1_bss_36C.unk38 = lbl_1_bss_36C.unk3A = 0; } -void fn_1_88B8(unkSubStruct2* arg0) { +void fn_1_88B8(unkSubStruct2 *arg0) +{ ModelData sp120; Mtx spF0; Mtx spC0; @@ -46,8 +48,8 @@ void fn_1_88B8(unkSubStruct2* arg0) { s32 var_r21; s32 var_r20; s32 var_r19; - unkSubStruct3* temp_r26; - unkSubStruct* var_r31; + unkSubStruct3 *temp_r26; + unkSubStruct *var_r31; mtxRot(sp60, arg0->unk18.x, arg0->unk18.y, arg0->unk18.z); MTXScale(sp90, arg0->unk24.x, arg0->unk24.y, arg0->unk24.z); @@ -57,7 +59,7 @@ void fn_1_88B8(unkSubStruct2* arg0) { var_r29 = 0; var_r28 = 0; sp8 = 0; - + for (var_r27 = GX_TEXMAP0; var_r27 < arg0->unk4; var_r27++) { if (arg0->unk34[var_r27] != 0) { temp_r26 = &lbl_1_bss_36C.unk3C[arg0->unk34[var_r27]]; @@ -73,11 +75,13 @@ void fn_1_88B8(unkSubStruct2* arg0) { if ((temp_r26->unk0->bmp->dataFmt == 7) || (temp_r26->unk0->bmp->dataFmt == 8)) { GXSetTevColor(GX_TEVREG2, temp_r26->unk48); GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_C2, GX_CC_RASC, GX_CC_ZERO); - } else { + } + else { GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); } GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); - } else { + } + else { sp2C.a = temp_r26->unk48.a; GXSetTevColor(GX_TEVREG2, sp2C); GXSetTevColorIn(var_r29, GX_CC_CPREV, GX_CC_TEXC, GX_CC_A2, GX_CC_ZERO); @@ -141,7 +145,8 @@ void fn_1_88B8(unkSubStruct2* arg0) { if (var_r27 == GX_TEXMAP0) { GXSetTevColorIn(var_r29, GX_CC_ONE, GX_CC_ZERO, GX_CC_TEXC, GX_CC_ZERO); GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); - } else { + } + else { GXSetTevColorIn(var_r29, GX_CC_CPREV, GX_CC_ZERO, GX_CC_TEXC, GX_CC_ZERO); GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_APREV); } @@ -153,7 +158,8 @@ void fn_1_88B8(unkSubStruct2* arg0) { var_r28++; if (temp_r26->unk4D != 0) { HuSprTexLoad(temp_r26->unk0, 0, var_r27, 1, 1, 1); - } else { + } + else { HuSprTexLoad(temp_r26->unk0, 0, var_r27, 0, 0, 1); } } @@ -161,7 +167,7 @@ void fn_1_88B8(unkSubStruct2* arg0) { GXSetNumTevStages((s16)var_r29); GXSetNumTexGens((s16)var_r28); var_r31 = arg0->unk3C; - + for (var_r24 = 0; var_r24 < arg0->unk2; var_r24++, var_r31++) { if ((var_r31->unk34 != 0) && ((var_r31->unk34 & 4) == 0)) { switch (var_r31->unk30) { @@ -169,7 +175,8 @@ void fn_1_88B8(unkSubStruct2* arg0) { mtxRot(sp60, var_r31->unkC.x, var_r31->unkC.y, var_r31->unkC.z); if (var_r31->unk31 == 2) { MTXConcat(lbl_1_bss_36C.unk0, sp60, sp60); - } else if (var_r31->unk31 == 1) { + } + else if (var_r31->unk31 == 1) { MTXRotDeg(sp90, 0x59, CRot.y); MTXConcat(sp90, sp60, sp60); } @@ -185,7 +192,8 @@ void fn_1_88B8(unkSubStruct2* arg0) { MTXIdentity(sp90); } MTXConcat(sp90, sp60, sp60); - } else if (var_r31->unk31 == 1) { + } + else if (var_r31->unk31 == 1) { MTXRotDeg(sp90, 0x59, CRot.y); MTXConcat(sp90, sp60, sp60); } @@ -206,7 +214,8 @@ void fn_1_88B8(unkSubStruct2* arg0) { GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); if ((var_r31->unk34 & 0x10) != 0) { GXSetZMode(0, GX_LEQUAL, 1); - } else { + } + else { GXSetZMode(1, GX_LEQUAL, 0); } sp120.attr = 0; @@ -214,7 +223,8 @@ void fn_1_88B8(unkSubStruct2* arg0) { GXSetNumChans(1); if ((var_r31->unk34 & 8) != 0) { var_r25 = GX_SRC_VTX; - } else { + } + else { var_r25 = GX_SRC_REG; } switch (var_r31->unk32) { @@ -235,7 +245,7 @@ void fn_1_88B8(unkSubStruct2* arg0) { GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); GXSetArray(GX_VA_CLR0, var_r31->unk44, 4); - + for (var_r27 = 0; var_r27 < var_r31->unk33; var_r27++) { GXSetVtxDesc(var_r27 + GX_VA_TEX0, GX_INDEX16); GXSetVtxAttrFmt(GX_VTXFMT0, var_r27 + GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); @@ -249,52 +259,59 @@ void fn_1_88B8(unkSubStruct2* arg0) { } } -void fn_1_95C0(ModelData* arg0, Mtx arg1) { +void fn_1_95C0(ModelData *arg0, Mtx arg1) +{ Mtx sp38; Mtx sp8; s32 var_r30; - unkSubStruct2* var_r31; + unkSubStruct2 *var_r31; var_r31 = lbl_1_bss_36C.unk40; GXLoadPosMtxImm(arg1, 0); - PSMTXInverse(arg1, sp38); - PSMTXTranspose(sp38, sp8); + MTXInverse(arg1, sp38); + MTXTranspose(sp38, sp8); GXLoadNrmMtxImm(sp8, 0); HmfInverseMtxF3X3(Hu3DCameraMtx, lbl_1_bss_36C.unk0); - + for (var_r30 = 0; var_r30 < lbl_1_bss_36C.unk30; var_r30++, var_r31++) { if ((var_r31->unk8 != 0) && ((var_r31->unk8 & 2) != 0) && ((var_r31->unk8 & 4) == 0)) { if ((u8)omPauseChk() == 0) { if (var_r31->unk30) { var_r31->unk30(var_r31); } - if (var_r31->unk8 == 0) continue; + if (var_r31->unk8 == 0) + continue; fn_1_9DC8(var_r31); - if (var_r31->unk8 == 0) continue; + if (var_r31->unk8 == 0) + continue; } fn_1_88B8(var_r31); } } } -unkSubStruct2* fn_1_96EC(s16 arg0) { +unkSubStruct2 *fn_1_96EC(s16 arg0) +{ return &lbl_1_bss_36C.unk40[arg0]; } -unkSubStruct* fn_1_9708(s16 arg0, s16 arg1) { +unkSubStruct *fn_1_9708(s16 arg0, s16 arg1) +{ return &lbl_1_bss_36C.unk40[arg0].unk3C[arg1]; } -AnimData** fn_1_9734(s16 arg0) { +AnimData **fn_1_9734(s16 arg0) +{ return &lbl_1_bss_36C.unk3C[arg0].unk0; } -void fn_1_9750(unkStruct6** arg0, s16 arg1, f32 arg8, f32 arg9) { +void fn_1_9750(unkStruct6 **arg0, s16 arg1, f32 arg8, f32 arg9) +{ s32 var_r30; - unkStruct6* var_r31; - + unkStruct6 *var_r31; + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct6), MEMORY_DEFAULT_NUM); - + for (var_r30 = 0; var_r30 < arg1; var_r31++, var_r30++) { var_r31->unk0.x = (-0.5f * arg8); var_r31->unk0.y = (0.5f * arg9); @@ -311,13 +328,14 @@ void fn_1_9750(unkStruct6** arg0, s16 arg1, f32 arg8, f32 arg9) { } } -void fn_1_98D4(Vec** arg0, s16 arg1, Vec* arg2) { +void fn_1_98D4(Vec **arg0, s16 arg1, Vec *arg2) +{ s32 var_r29; s32 var_r28; - Vec* var_r31; + Vec *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec[4]), MEMORY_DEFAULT_NUM); - + for (var_r29 = 0; var_r29 < arg1; var_r29++) { for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { var_r31->x = arg2->x; @@ -327,13 +345,14 @@ void fn_1_98D4(Vec** arg0, s16 arg1, Vec* arg2) { } } -void fn_1_9974(GXColor** arg0, s16 arg1, GXColor* arg2) { +void fn_1_9974(GXColor **arg0, s16 arg1, GXColor *arg2) +{ s32 var_r29; s32 var_r28; - GXColor* var_r31; + GXColor *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(GXColor[4]), MEMORY_DEFAULT_NUM); - + for (var_r29 = 0; var_r29 < arg1; var_r29++) { for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { var_r31->r = arg2->r; @@ -344,12 +363,13 @@ void fn_1_9974(GXColor** arg0, s16 arg1, GXColor* arg2) { } } -void fn_1_9A1C(Vec** arg0, s16 arg1, Vec* arg2) { +void fn_1_9A1C(Vec **arg0, s16 arg1, Vec *arg2) +{ s32 var_r29; - Vec* var_r31; + Vec *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec), MEMORY_DEFAULT_NUM); - + for (var_r29 = 0; var_r29 < arg1; var_r31++, arg2++, var_r29++) { var_r31->x = arg2->x; var_r31->y = arg2->y; @@ -357,10 +377,11 @@ void fn_1_9A1C(Vec** arg0, s16 arg1, Vec* arg2) { } } -void fn_1_9AA8(HsfVector2f** arg0, s16 arg1, HsfVector2f* arg2) { +void fn_1_9AA8(HsfVector2f **arg0, s16 arg1, HsfVector2f *arg2) +{ s32 var_r28; s32 var_r29; - HsfVector2f* var_r31; + HsfVector2f *var_r31; var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(HsfVector2f[4]), MEMORY_DEFAULT_NUM); @@ -372,29 +393,20 @@ void fn_1_9AA8(HsfVector2f** arg0, s16 arg1, HsfVector2f* arg2) { } } -void fn_1_9B40(unkSubStruct* arg0) { - void* sp8; +void fn_1_9B40(unkSubStruct *arg0) +{ + void *sp8; s32 var_r29; s32 var_r31; - void* temp_r28; + void *temp_r28; + + Vec sp1C[4] = { { -50.0f, 50.0f, 0.0f }, { 50.0f, 50.0f, 0.0f }, { 50.0f, -50.0f, 0.0f }, { -50.0f, -50.0f, 0.0f } }; + GXColor spC[4] = { { 0xFF, 0xFF, 0xFF, 0xFF }, { 0xFF, 0xFF, 0xFF, 0xFF }, { 0xFF, 0xFF, 0xFF, 0xFF }, { 0xFF, 0xFF, 0xFF, 0xFF } }; - Vec sp1C[4] = { - { -50.0f, 50.0f, 0.0f }, - { 50.0f, 50.0f, 0.0f }, - { 50.0f, -50.0f, 0.0f }, - { -50.0f, -50.0f, 0.0f } - }; - GXColor spC[4] = { - { 0xFF, 0xFF, 0xFF, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF } - }; - for (var_r31 = 0; var_r31 < 4; var_r31++) { arg0->unk40[var_r31] = sp1C[var_r31]; } - + for (var_r31 = 0; var_r31 < 4; var_r31++) { arg0->unk44[var_r31] = spC[var_r31]; } @@ -405,7 +417,7 @@ void fn_1_9B40(unkSubStruct* arg0) { sp8 = temp_r28; GXBeginDisplayList(temp_r28, 0x100U); GXBegin(GX_QUADS, GX_VTXFMT0, 4); - + for (var_r31 = 0; var_r31 < 4; var_r31++) { GXPosition1x16(var_r31); GXNormal1x16(0); @@ -417,24 +429,26 @@ void fn_1_9B40(unkSubStruct* arg0) { arg0->unk38 = GXEndDisplayList(); } -void fn_1_9DC8(unkSubStruct2* arg0) { +void fn_1_9DC8(unkSubStruct2 *arg0) +{ s32 temp_r0; s32 var_r25; s32 var_r26; s32 var_r27; - unkSubStruct* var_r28; - unkSubStruct3* temp_r30; - unkSubStruct4* var_r31; + unkSubStruct *var_r28; + unkSubStruct3 *temp_r30; + unkSubStruct4 *var_r31; var_r27 = 0; var_r28 = arg0->unk3C; - + for (var_r25 = 0; var_r25 < arg0->unk2; var_r25++, var_r28++) { if ((var_r28->unk34 & 4) != 0) { var_r27++; - } else { + } + else { var_r31 = var_r28->unk54; - + for (var_r26 = 0; var_r26 < var_r28->unk33; var_r26++, var_r31++) { temp_r30 = &lbl_1_bss_36C.unk3C[arg0->unk34[var_r26]]; var_r31->unk24 &= ~4; @@ -458,30 +472,37 @@ void fn_1_9DC8(unkSubStruct2* arg0) { if ((var_r31->unk24 & 0x10) != 0) { var_r31->unk24 |= 8; var_r31->unk0--; - } else if ((var_r31->unk24 & 0x40) != 0) { + } + else if ((var_r31->unk24 & 0x40) != 0) { var_r31->unk24 = (var_r31->unk24 & 0xF0) | 2; var_r31->unk0 -= 2; - } else if ((var_r31->unk24 & 0x20) != 0) { + } + else if ((var_r31->unk24 & 0x20) != 0) { var_r31->unk0 = 0; } var_r31->unk24 |= 4; - } else if (var_r31->unk0 < 0) { + } + else if (var_r31->unk0 < 0) { if ((var_r31->unk24 & 0x10) != 0) { var_r31->unk24 |= 8; var_r31->unk0 = 0; - } else if ((var_r31->unk24 & 0x20) != 0) { + } + else if ((var_r31->unk24 & 0x20) != 0) { if ((var_r31->unk24 & 0x40) != 0) { var_r31->unk24 = (var_r31->unk24 & 0xF0) | 1; var_r31->unk0 = 1; - } else { + } + else { var_r31->unk0 = temp_r30->unk4C - 1; } - } else if ((var_r31->unk24 & 0x40) != 0) { + } + else if ((var_r31->unk24 & 0x40) != 0) { var_r31->unk24 |= 8; var_r31->unk0 = 0; } var_r31->unk24 |= 4; - } else { + } + else { var_r31->unk24 &= ~8; } if (var_r31->unk0 != var_r31->unk1) { @@ -501,11 +522,13 @@ void fn_1_9DC8(unkSubStruct2* arg0) { if ((var_r31->unk24 & 0x40) == 0) { if (var_r31->unk0 <= 0) { var_r31->unk0 = temp_r30->unk4C; - } else { + } + else { var_r31->unk0 = 0; } } - } else if ((var_r28->unk34 & 0x80000000) != 0) { + } + else if ((var_r28->unk34 & 0x80000000) != 0) { fn_1_A800(arg0->unk0); } var_r27++; @@ -524,15 +547,16 @@ void fn_1_9DC8(unkSubStruct2* arg0) { } } -s16 fn_1_A2D0(u8 arg0, u8 arg1) { +s16 fn_1_A2D0(u8 arg0, u8 arg1) +{ s32 var_r29; s32 var_r28; - unkSubStruct* var_r30; - unkSubStruct2* var_r31; - void* temp_r25; + unkSubStruct *var_r30; + unkSubStruct2 *var_r31; + void *temp_r25; var_r31 = lbl_1_bss_36C.unk40 + 1; - + for (var_r29 = 1; var_r29 < lbl_1_bss_36C.unk30; var_r29++, var_r31++) { if (var_r31->unk8 == 0) { break; @@ -562,7 +586,7 @@ s16 fn_1_A2D0(u8 arg0, u8 arg1) { var_r31->unk70.x = var_r31->unk70.y = var_r31->unk70.z = 0.0f; var_r31->unk64.x = var_r31->unk64.y = var_r31->unk64.z = 0.0f; var_r31->unk60 = 0; - + for (var_r29 = 0; var_r29 < 0x20; var_r29++) { var_r31->unk7C[var_r29] = 0; } @@ -575,8 +599,7 @@ s16 fn_1_A2D0(u8 arg0, u8 arg1) { var_r30->unk30 = 0; var_r30->unk31 = 2; var_r30->unk32 = 0; - - + var_r30->unk4C.r = var_r30->unk4C.g = var_r30->unk4C.b = 0; var_r30->unk4C.a = 0xFF; var_r30->unk50.r = var_r30->unk50.g = var_r30->unk50.b = 0xFF; @@ -587,14 +610,14 @@ s16 fn_1_A2D0(u8 arg0, u8 arg1) { var_r30->unk54[var_r28].unk28 = 1.0f; var_r30->unk54[var_r28].unk2C = 0.0f; } - + var_r30->unk0.x = var_r30->unk0.y = var_r30->unk0.z = 0.0f; var_r30->unkC.x = var_r30->unkC.y = var_r30->unkC.z = 0.0f; var_r30->unk18.x = var_r30->unk18.y = var_r30->unk18.z = 1.0f; var_r30->unk68.x = var_r30->unk68.y = var_r30->unk68.z = 0.0f; var_r30->unk5C.x = var_r30->unk5C.y = var_r30->unk5C.z = 0.0f; var_r30->unk58 = 0; - + for (var_r28 = 0; var_r28 < 0x10; var_r28++) { var_r30->unk74[var_r28] = 0; } @@ -615,7 +638,7 @@ s16 fn_1_A2D0(u8 arg0, u8 arg1) { DCFlushRangeNoSync(var_r31->unk4C, var_r31->unk48); var_r30 = var_r31->unk3C; var_r31->unk48 = 0; - + for (var_r29 = 0; var_r29 < arg0; var_r29++, var_r30++) { var_r30->unk3C = var_r31->unk4C + var_r31->unk48; var_r31->unk48 += var_r30->unk38; @@ -626,9 +649,10 @@ s16 fn_1_A2D0(u8 arg0, u8 arg1) { return var_r31->unk0; } -void fn_1_A800(s16 arg0) { +void fn_1_A800(s16 arg0) +{ s32 var_r30; - unkSubStruct2* temp_r31; + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -648,7 +672,7 @@ void fn_1_A800(s16 arg0) { if (temp_r31->unk5C != NULL) { HuMemDirectFree(temp_r31->unk5C); } - + for (var_r30 = 0; var_r30 < temp_r31->unk4; var_r30++) { fn_1_AF48(temp_r31->unk34[var_r30]); } @@ -659,23 +683,25 @@ void fn_1_A800(s16 arg0) { } } -void fn_1_A920(s16 arg0, s16 arg1, u8 arg2) { +void fn_1_A920(s16 arg0, s16 arg1, u8 arg2) +{ lbl_1_bss_36C.unk36 = arg0; lbl_1_bss_36C.unk38 = arg1; lbl_1_bss_36C.unk3A = arg2; } -s16 fn_1_A94C(u32 arg0, s16 arg1, s16 arg2) { - AnimData* var_r30; +s16 fn_1_A94C(u32 arg0, s16 arg1, s16 arg2) +{ + AnimData *var_r30; f32 var_f31; f32 var_f30; s32 var_r29; - unkSubStruct3* var_r31; + unkSubStruct3 *var_r31; var_r31 = lbl_1_bss_36C.unk3C + 1; for (var_r29 = 1; var_r29 < lbl_1_bss_36C.unk32; var_r29++, var_r31++) { if ((var_r31->unk6 != 0) && (var_r31->unk8 == arg0)) { - break; + break; } } if (var_r29 < lbl_1_bss_36C.unk32) { @@ -694,16 +720,18 @@ s16 fn_1_A94C(u32 arg0, s16 arg1, s16 arg2) { var_r30 = HuSprAnimMake(arg1, arg2, 2); var_r30->bmp->data = HuMemDirectMallocNum(HEAP_SYSTEM, arg2 * (arg1 * 2), MEMORY_DEFAULT_NUM); arg1 = arg2 = 0; - } else { + } + else { var_r30 = HuSprAnimRead(HuDataReadNum(arg0, 0x10000000)); } if ((arg1 == 0) || (arg2 == 0)) { arg1 = var_r30->bmp->sizeX; arg2 = var_r30->bmp->sizeY; var_f31 = var_f30 = 1.0f; - } else { - var_f31 = arg1 / (f32) var_r30->bmp->sizeX; - var_f30 = arg2 / (f32) var_r30->bmp->sizeY; + } + else { + var_f31 = arg1 / (f32)var_r30->bmp->sizeX; + var_f30 = arg2 / (f32)var_r30->bmp->sizeY; } var_r31->unk0 = var_r30; var_r31->unk4E = arg1; @@ -723,24 +751,25 @@ s16 fn_1_A94C(u32 arg0, s16 arg1, s16 arg2) { } var_r31->unk48.r = var_r31->unk48.g = var_r31->unk48.b = 0xFF; var_r31->unk48.a = 0xFF; - PSMTXIdentity(var_r31->unk18); + MTXIdentity(var_r31->unk18); var_r31->unkC.x = var_r31->unkC.y = var_r31->unkC.z = 0.0f; return var_r29; } -void fn_1_ACF4(s16 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5) { +void fn_1_ACF4(s16 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5) +{ f32 var_f31; f32 var_f30; - AnimData* var_r30; - unkSubStruct3* var_r31; + AnimData *var_r30; + unkSubStruct3 *var_r31; var_r31 = &lbl_1_bss_36C.unk3C[arg0]; HuSprAnimKill(var_r31->unk0); var_r31->unk8 |= 0xFFFF0000; var_r30 = HuSprAnimMake(arg2, arg3, arg1); var_r30->bmp->data = HuMemDirectMallocNum(HEAP_SYSTEM, arg3 * (var_r30->bmp->pixSize * arg2), 0x10000000U); - var_f31 = arg4 / (f32) var_r30->bmp->sizeX; - var_f30 = arg5 / (f32) var_r30->bmp->sizeY; + var_f31 = arg4 / (f32)var_r30->bmp->sizeX; + var_f30 = arg5 / (f32)var_r30->bmp->sizeY; var_r31->unk0 = var_r30; var_r31->unk4E = arg2; var_r31->unk50 = arg3; @@ -755,8 +784,9 @@ void fn_1_ACF4(s16 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5) { var_r31->unk48.a = 0xFF; } -void fn_1_AF48(s16 arg0) { - unkSubStruct3* temp_r31; +void fn_1_AF48(s16 arg0) +{ + unkSubStruct3 *temp_r31; temp_r31 = &lbl_1_bss_36C.unk3C[arg0]; if (temp_r31->unk8 != 0) { @@ -770,7 +800,8 @@ void fn_1_AF48(s16 arg0) { } } -u8 fn_1_AFC8(s16 arg0, u8 arg1, s32 arg2, s16 arg3, s16 arg4) { +u8 fn_1_AFC8(s16 arg0, u8 arg1, s32 arg2, s16 arg3, s16 arg4) +{ s32 temp_r3; temp_r3 = fn_1_A94C(arg2, arg3, arg4); @@ -781,14 +812,16 @@ u8 fn_1_AFC8(s16 arg0, u8 arg1, s32 arg2, s16 arg3, s16 arg4) { return temp_r3; } -u8 fn_1_B038(s16 arg0, u8 arg1, s32 arg2) { +u8 fn_1_B038(s16 arg0, u8 arg1, s32 arg2) +{ u8 var_r31; s32 var_r30; u8 var_r29; if ((var_r30 = fn_1_A94C(arg2, 0, 0)) == 0) { var_r31 = 0; - } else { + } + else { fn_1_B0B8(arg0, arg1, var_r30); var_r31 = var_r30; } @@ -796,12 +829,13 @@ u8 fn_1_B038(s16 arg0, u8 arg1, s32 arg2) { return var_r29; } -s32 fn_1_B0B8(s16 arg0, u8 arg1, s16 arg2) { +s32 fn_1_B0B8(s16 arg0, u8 arg1, s16 arg2) +{ s32 var_r27; - unkSubStruct* var_r29; - unkSubStruct2* temp_r28; - unkSubStruct3* temp_r30; - unkSubStruct4* temp_r31; + unkSubStruct *var_r29; + unkSubStruct2 *temp_r28; + unkSubStruct3 *temp_r30; + unkSubStruct4 *temp_r31; if (arg2 == 0) { return 0; @@ -814,7 +848,7 @@ s32 fn_1_B0B8(s16 arg0, u8 arg1, s16 arg2) { temp_r28->unk34[arg1] = arg2; temp_r30 = &lbl_1_bss_36C.unk3C[arg2]; var_r29 = temp_r28->unk3C; - + for (var_r27 = 0; var_r27 < temp_r28->unk2; var_r27++, var_r29++) { if (arg1 == 0) { var_r29->unk40[0].x = -0.5f * temp_r30->unk4E; @@ -851,13 +885,14 @@ s32 fn_1_B0B8(s16 arg0, u8 arg1, s16 arg2) { return 1; } -void fn_1_B634(s32 arg0) { +void fn_1_B634(s32 arg0) +{ s32 var_r28; s32 var_r27; s16 var_r26; - unkSubStruct2* temp_r31; - unkSubStruct3* temp_r30; - unkSubStruct3* temp_r29; + unkSubStruct2 *temp_r31; + unkSubStruct3 *temp_r30; + unkSubStruct3 *temp_r29; for (var_r28 = 1; var_r28 < lbl_1_bss_36C.unk30; var_r28++) { if ((s16)var_r28 != 0) { @@ -878,7 +913,7 @@ void fn_1_B634(s32 arg0) { if (temp_r31->unk5C != NULL) { HuMemDirectFree(temp_r31->unk5C); } - + for (var_r27 = 0; var_r27 < temp_r31->unk4; var_r27++) { var_r26 = temp_r31->unk34[var_r27]; temp_r29 = &lbl_1_bss_36C.unk3C[var_r26]; @@ -898,7 +933,7 @@ void fn_1_B634(s32 arg0) { } } } - + for (var_r28 = 1; var_r28 < lbl_1_bss_36C.unk32; var_r28++) { temp_r30 = &lbl_1_bss_36C.unk3C[(s16)var_r28]; if (temp_r30->unk8 != 0) { @@ -916,8 +951,9 @@ void fn_1_B634(s32 arg0) { Hu3DModelKill(lbl_1_bss_36C.unk34); } -void fn_1_B864(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct2* temp_r31; +void fn_1_B864(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -930,9 +966,10 @@ void fn_1_B864(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_B8D0(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct* temp_r31; - unkSubStruct2* temp_r30; +void fn_1_B8D0(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct *temp_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -945,10 +982,11 @@ void fn_1_B8D0(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_B940(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_B940(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkSubStruct* var_r31; - unkSubStruct2* temp_r30; + unkSubStruct *var_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -961,8 +999,9 @@ void fn_1_B940(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_B9B4(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct2* temp_r31; +void fn_1_B9B4(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -975,9 +1014,10 @@ void fn_1_B9B4(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BA38(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct* temp_r31; - unkSubStruct2* temp_r30; +void fn_1_BA38(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct *temp_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -990,15 +1030,16 @@ void fn_1_BA38(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BAC0(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_BAC0(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkSubStruct* var_r31; - unkSubStruct2* temp_r30; + unkSubStruct *var_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { var_r31->unk0.x += arg8; var_r31->unk0.y += arg9; @@ -1007,8 +1048,9 @@ void fn_1_BAC0(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BB4C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct2* temp_r31; +void fn_1_BB4C(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1021,9 +1063,10 @@ void fn_1_BB4C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BBB8(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct* temp_r31; - unkSubStruct2* temp_r30; +void fn_1_BBB8(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct *temp_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -1036,10 +1079,11 @@ void fn_1_BBB8(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BC28(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_BC28(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkSubStruct* var_r31; - unkSubStruct2* temp_r30; + unkSubStruct *var_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -1052,8 +1096,9 @@ void fn_1_BC28(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BC9C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct2* temp_r31; +void fn_1_BC9C(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1066,9 +1111,10 @@ void fn_1_BC9C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BD08(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { - unkSubStruct* temp_r31; - unkSubStruct2* temp_r30; +void fn_1_BD08(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) +{ + unkSubStruct *temp_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -1081,10 +1127,11 @@ void fn_1_BD08(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BD78(s16 arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_BD78(s16 arg0, f32 arg8, f32 arg9, f32 argA) +{ s32 var_r29; - unkSubStruct* var_r31; - unkSubStruct2* temp_r30; + unkSubStruct *var_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -1097,8 +1144,9 @@ void fn_1_BD78(s16 arg0, f32 arg8, f32 arg9, f32 argA) { } } -void fn_1_BDEC(s16 arg0, s32 arg1) { - unkSubStruct2* temp_r31; +void fn_1_BDEC(s16 arg0, s32 arg1) +{ + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1106,9 +1154,10 @@ void fn_1_BDEC(s16 arg0, s32 arg1) { } } -void fn_1_BE30(s16 arg0, s16 arg1, s32 arg2) { - unkSubStruct* temp_r30; - unkSubStruct2* temp_r31; +void fn_1_BE30(s16 arg0, s16 arg1, s32 arg2) +{ + unkSubStruct *temp_r30; + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1119,23 +1168,25 @@ void fn_1_BE30(s16 arg0, s16 arg1, s32 arg2) { } } -void fn_1_BEA0(s16 arg0, s32 arg1) { +void fn_1_BEA0(s16 arg0, s32 arg1) +{ s32 var_r30; - unkSubStruct* temp_r29; - unkSubStruct2* temp_r31; + unkSubStruct *temp_r29; + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; temp_r29 = temp_r31->unk3C; - + for (var_r30 = 0; var_r30 < temp_r31->unk2; var_r30++) { temp_r29->unk34 |= arg1; } } } -void fn_1_BF10(s16 arg0, u32 arg1) { - unkSubStruct2* temp_r31; +void fn_1_BF10(s16 arg0, u32 arg1) +{ + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1143,9 +1194,10 @@ void fn_1_BF10(s16 arg0, u32 arg1) { } } -void fn_1_BF54(s16 arg0, s16 arg1, u32 arg2) { - unkSubStruct* temp_r30; - unkSubStruct2* temp_r31; +void fn_1_BF54(s16 arg0, s16 arg1, u32 arg2) +{ + unkSubStruct *temp_r30; + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1156,10 +1208,11 @@ void fn_1_BF54(s16 arg0, s16 arg1, u32 arg2) { } } -void fn_1_BFC4(s16 arg0, u32 arg1) { +void fn_1_BFC4(s16 arg0, u32 arg1) +{ s32 var_r30; - unkSubStruct* temp_r29; - unkSubStruct2* temp_r31; + unkSubStruct *temp_r29; + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1171,9 +1224,10 @@ void fn_1_BFC4(s16 arg0, u32 arg1) { } } -s32 fn_1_C034(s16 arg0, s32 arg1) { - unkSubStruct2* temp_r31; - +s32 fn_1_C034(s16 arg0, s32 arg1) +{ + unkSubStruct2 *temp_r31; + if (arg0 == 0) { return 0; } @@ -1185,9 +1239,10 @@ s32 fn_1_C034(s16 arg0, s32 arg1) { return 0; } -s16 fn_1_C090(s16 arg0, s16 arg1, s32 arg2) { - unkSubStruct* temp_r30; - unkSubStruct2* temp_r31; +s16 fn_1_C090(s16 arg0, s16 arg1, s32 arg2) +{ + unkSubStruct *temp_r30; + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1195,7 +1250,8 @@ s16 fn_1_C090(s16 arg0, s16 arg1, s32 arg2) { temp_r30 = &temp_r31->unk3C[arg1]; if ((temp_r30->unk34 & arg2) != 0) { arg0 = 1; - } else { + } + else { arg0 = 0; } } @@ -1203,9 +1259,10 @@ s16 fn_1_C090(s16 arg0, s16 arg1, s32 arg2) { return arg0; } -void fn_1_C110(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5) { - unkSubStruct* temp_r31; - unkSubStruct2* temp_r30; +void fn_1_C110(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5) +{ + unkSubStruct *temp_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; @@ -1219,15 +1276,16 @@ void fn_1_C110(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5) { } } -void fn_1_C184(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) { +void fn_1_C184(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) +{ s32 var_r29; - unkSubStruct* var_r31; - unkSubStruct2* temp_r30; + unkSubStruct *var_r31; + unkSubStruct2 *temp_r30; if (arg0 != 0) { temp_r30 = &lbl_1_bss_36C.unk40[arg0]; var_r31 = temp_r30->unk3C; - + for (var_r29 = 0; var_r29 < temp_r30->unk2; var_r29++, var_r31++) { var_r31->unk50.r = arg1; var_r31->unk50.g = arg2; @@ -1237,9 +1295,10 @@ void fn_1_C184(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) { } } -void fn_1_C1FC(s16 arg0, s16 arg1, u8 arg2) { - unkSubStruct* temp_r30; - unkSubStruct2* temp_r31; +void fn_1_C1FC(s16 arg0, s16 arg1, u8 arg2) +{ + unkSubStruct *temp_r30; + unkSubStruct2 *temp_r31; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1250,24 +1309,26 @@ void fn_1_C1FC(s16 arg0, s16 arg1, u8 arg2) { } } -void fn_1_C264(s16 arg0, u8 arg1) { +void fn_1_C264(s16 arg0, u8 arg1) +{ s32 var_r29; - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; var_r30 = temp_r31->unk3C; - + for (var_r29 = 0; var_r29 < temp_r31->unk2; var_r29++, var_r30++) { var_r30->unk30 = arg1; } } } -void fn_1_C2D0(s16 arg0, s16 arg1, u8 arg2) { - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; +void fn_1_C2D0(s16 arg0, s16 arg1, u8 arg2) +{ + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1278,10 +1339,11 @@ void fn_1_C2D0(s16 arg0, s16 arg1, u8 arg2) { } } -void fn_1_C338(s16 arg0, u8 arg1) { +void fn_1_C338(s16 arg0, u8 arg1) +{ s32 var_r29; - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1293,9 +1355,10 @@ void fn_1_C338(s16 arg0, u8 arg1) { } } -void fn_1_C3A4(s16 arg0, s16 arg1, u8 arg2) { - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; +void fn_1_C3A4(s16 arg0, s16 arg1, u8 arg2) +{ + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1306,9 +1369,10 @@ void fn_1_C3A4(s16 arg0, s16 arg1, u8 arg2) { } } -void fn_1_C410(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; +void fn_1_C410(s16 arg0, s16 arg1, u8 arg2, u8 arg3) +{ + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1319,17 +1383,18 @@ void fn_1_C410(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { } } -void fn_1_C488(s16 arg0, u8 arg1) { +void fn_1_C488(s16 arg0, u8 arg1) +{ s32 var_r28; s32 var_r30; - unkSubStruct* var_r31; - unkSubStruct2* temp_r29; + unkSubStruct *var_r31; + unkSubStruct2 *temp_r29; if (arg0 != 0) { temp_r29 = &lbl_1_bss_36C.unk40[arg0]; - var_r31 = (unkSubStruct*)&temp_r29->unk3C; //! BAD WHY + var_r31 = (unkSubStruct *)&temp_r29->unk3C; //! BAD WHY (void)temp_r29; - + for (var_r28 = 0; var_r28 < temp_r29->unk2; var_r28++, var_r31++) { for (var_r30 = 0; var_r30 < var_r31->unk33; var_r30++) { var_r31->unk54[var_r30].unk24 = arg1; @@ -1338,9 +1403,10 @@ void fn_1_C488(s16 arg0, u8 arg1) { } } -void fn_1_C520(s16 arg0, s16 arg1, f32 arg8) { - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; +void fn_1_C520(s16 arg0, s16 arg1, f32 arg8) +{ + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1351,9 +1417,10 @@ void fn_1_C520(s16 arg0, s16 arg1, f32 arg8) { } } -void fn_1_C58C(s16 arg0, s16 arg1, u8 arg2, f32 arg8) { - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; +void fn_1_C58C(s16 arg0, s16 arg1, u8 arg2, f32 arg8) +{ + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1364,16 +1431,17 @@ void fn_1_C58C(s16 arg0, s16 arg1, u8 arg2, f32 arg8) { } } -void fn_1_C604(s16 arg0, f32 arg8) { - unkSubStruct* volatile sp8; +void fn_1_C604(s16 arg0, f32 arg8) +{ + unkSubStruct *volatile sp8; s32 var_r29; - unkSubStruct2* temp_r31; + unkSubStruct2 *temp_r31; s32 var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; sp8 = temp_r31->unk3C; - + for (var_r29 = 0; var_r29 < temp_r31->unk2; var_r29++) { for (var_r30 = 0; var_r30 < sp8->unk33; var_r30++) { sp8->unk54[var_r30].unk28 = arg8; @@ -1382,9 +1450,10 @@ void fn_1_C604(s16 arg0, f32 arg8) { } } -void fn_1_C69C(s16 arg0, s16 arg1, u8 arg2) { - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; +void fn_1_C69C(s16 arg0, s16 arg1, u8 arg2) +{ + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1395,9 +1464,10 @@ void fn_1_C69C(s16 arg0, s16 arg1, u8 arg2) { } } -void fn_1_C70C(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { - unkSubStruct2* temp_r31; - unkSubStruct* var_r30; +void fn_1_C70C(s16 arg0, s16 arg1, u8 arg2, u8 arg3) +{ + unkSubStruct2 *temp_r31; + unkSubStruct *var_r30; if (arg0 != 0) { temp_r31 = &lbl_1_bss_36C.unk40[arg0]; @@ -1410,10 +1480,11 @@ void fn_1_C70C(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { // ... -void fn_1_C784(s16 arg0, u8 arg1) { - unkSubStruct* volatile sp8; +void fn_1_C784(s16 arg0, u8 arg1) +{ + unkSubStruct *volatile sp8; s32 var_r29; - unkSubStruct2* temp_r31; + unkSubStruct2 *temp_r31; s32 var_r30; if (arg0 != 0) { @@ -1427,8 +1498,9 @@ void fn_1_C784(s16 arg0, u8 arg1) { } } -void fn_1_C81C(s16 arg0, u8 arg1) { - unkSubStruct3* var_r31; +void fn_1_C81C(s16 arg0, u8 arg1) +{ + unkSubStruct3 *var_r31; if (arg0 != 0) { var_r31 = &lbl_1_bss_36C.unk3C[arg0]; var_r31->unk4 = arg1; diff --git a/src/REL/m417Dll/main.c b/src/REL/m417Dll/main.c index 02a55063..db0d47a6 100644 --- a/src/REL/m417Dll/main.c +++ b/src/REL/m417Dll/main.c @@ -79,7 +79,7 @@ void ObjectSetup(void) sp8.x = sp8.z = 0.0f; sp8.y = lbl_1_data_18.z; mtxRot(sp38, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); - PSMTXMultVec(sp38, &sp8, &sp8); + MTXMultVec(sp38, &sp8, &sp8); Hu3DGLightPosAimSetV(lbl_1_bss_8[0], &sp8, &sp14); lbl_1_data_28.x = 200.0f; lbl_1_data_28.y = 3000.0f; @@ -481,18 +481,18 @@ void fn_1_310C(float arg8, float arg9, float argA, float *arg0, float *arg1, flo Mtx sp8; if (arg8 != 0.0f) { - PSMTXRotRad(sp38, 88, 0.017453292f * arg8); + MTXRotRad(sp38, 88, 0.017453292f * arg8); } else { - PSMTXIdentity(sp38); + MTXIdentity(sp38); } if (arg9 != 0.0f) { - PSMTXRotRad(sp8, 89, 0.017453292f * arg9); - PSMTXConcat(sp38, sp8, sp38); + MTXRotRad(sp8, 89, 0.017453292f * arg9); + MTXConcat(sp38, sp8, sp38); } if (argA != 0.0f) { - PSMTXRotRad(sp8, 90, 0.017453292f * argA); - PSMTXConcat(sp38, sp8, sp38); + MTXRotRad(sp8, 90, 0.017453292f * argA); + MTXConcat(sp38, sp8, sp38); } fn_1_30D8(NULL, arg0, arg1, arg2); } diff --git a/src/REL/m417Dll/player.c b/src/REL/m417Dll/player.c index ca8f7206..81f282b0 100644 --- a/src/REL/m417Dll/player.c +++ b/src/REL/m417Dll/player.c @@ -270,22 +270,22 @@ void fn_1_7C8C(omObjData *object) var_r31->unk_70 = 0.02f; if (var_r31->unk_0C) { Vec sp18 = { 0.0f, 1.0f, 0.0f }; - PSMTXRotAxisRad(var_r31->unk_1C4, &sp18, 0.017453292f * var_r31->unk_64); + MTXRotAxisRad(var_r31->unk_1C4, &sp18, 0.017453292f * var_r31->unk_64); } else { Vec spC = { 0.0f, 1.0f, 0.0f }; - PSMTXIdentity(var_r31->unk_1C4); + MTXIdentity(var_r31->unk_1C4); C_QUATRotAxisRad(&var_r31->unk_184, &spC, 0.0f); var_r31->unk_194 = var_r31->unk_184; - PSQUATInverse(&var_r31->unk_194, &var_r31->unk_1A4); + QUATInverse(&var_r31->unk_194, &var_r31->unk_1A4); var_r31->unk_1B4 = var_r31->unk_1A4; var_r31->unk_164 = var_r31->unk_194; var_r31->unk_174 = var_r31->unk_194; var_r31->unk_144 = 1.0f; var_r31->unk_D4.z += 50.0f; } - PSMTXInverse(var_r31->unk_1C4, var_r31->unk_1F4); - PSMTXCopy(var_r31->unk_1F4, var_r31->unk_224); + MTXInverse(var_r31->unk_1C4, var_r31->unk_1F4); + MTXCopy(var_r31->unk_1F4, var_r31->unk_224); var_r31->unk_134 = var_r31->unk_138 = 0.0f; var_r31->unk_12C = 1.0f; var_r31->unk_08 = -1; @@ -634,7 +634,7 @@ void fn_1_9298(omObjData *object) else if (var_r31->unk_B4.x < 0.0f) { var_r31->unk_B4.x += 360.0f; } - PSMTXRotAxisRad(var_r31->unk_1C4, &sp8, 0.017453292f * var_r31->unk_B4.x); + MTXRotAxisRad(var_r31->unk_1C4, &sp8, 0.017453292f * var_r31->unk_B4.x); } object->rot.y = var_r31->unk_68 = var_r31->unk_B4.x - 180.0f; object->trans.x = var_r31->unk_D4.x = var_r31->unk_F8.x = var_r31->unk_C8.x = var_r31->unk_B4.z * sind(var_r31->unk_B4.x); @@ -836,7 +836,7 @@ void fn_1_9C14(omObjData *object) if (fn_1_26F8() == 2) { sp1C.y += -5.8333335f * var_r31->unk_148; } - PSMTXMultVec(var_r31->unk_224, &sp1C, &sp1C); + MTXMultVec(var_r31->unk_224, &sp1C, &sp1C); VECAdd(&sp1C, &var_r31->unk_E0, &sp1C); sp10 = sp1C; sp10.y = 0.0f; @@ -849,13 +849,13 @@ void fn_1_9C14(omObjData *object) sp1C.y = 80.0f; var_r31->unk_EC = sp1C; spC = atan2d(sp1C.x, sp1C.z); - PSMTXMultVec(var_r31->unk_1C4, &sp1C, &sp1C); + MTXMultVec(var_r31->unk_1C4, &sp1C, &sp1C); VECAdd(&sp1C, &var_r31->unk_F8, &var_r31->unk_D4); if (var_r31->unk_13C >= 0.95f) { var_r31->unk_3C = 1; return; } - PSQUATNormalize(&var_r31->unk_194, &sp28); + QUATNormalize(&var_r31->unk_194, &sp28); if (sp28.w < cosd(25)) { var_r31->unk_3C = 1; } @@ -893,7 +893,7 @@ void fn_1_9FF0(omObjData *object) } } var_r31->unk_1B4 = var_r31->unk_1A4; - PSMTXCopy(var_r31->unk_1F4, var_r31->unk_224); + MTXCopy(var_r31->unk_1F4, var_r31->unk_224); var_r31->unk_104 = var_r31->unk_F8; var_f31 = fn_1_75BC(); for (var_r30 = 0; var_r30 < 8; var_r30++) { @@ -1054,12 +1054,12 @@ void fn_1_9FF0(omObjData *object) C_QUATRotAxisRad(&sp3C, &sp8, M_PI); C_QUATSlerp(&var_r31->unk_184, &sp3C, &var_r31->unk_184, 0.027777778f); } - PSQUATMultiply(&var_r31->unk_174, &var_r31->unk_184, &var_r31->unk_194); - PSQUATMultiply(&var_r31->unk_164, &var_r31->unk_194, &var_r31->unk_194); - PSQUATMultiply(&sp2C, &var_r31->unk_194, &var_r31->unk_194); - PSMTXQuat(var_r31->unk_1C4, &var_r31->unk_194); - PSMTXInverse(var_r31->unk_1C4, var_r31->unk_1F4); - PSQUATInverse(&var_r31->unk_194, &var_r31->unk_1A4); + QUATMultiply(&var_r31->unk_174, &var_r31->unk_184, &var_r31->unk_194); + QUATMultiply(&var_r31->unk_164, &var_r31->unk_194, &var_r31->unk_194); + QUATMultiply(&sp2C, &var_r31->unk_194, &var_r31->unk_194); + MTXQuat(var_r31->unk_1C4, &var_r31->unk_194); + MTXInverse(var_r31->unk_1C4, var_r31->unk_1F4); + QUATInverse(&var_r31->unk_194, &var_r31->unk_1A4); } } @@ -1071,7 +1071,7 @@ void fn_1_AD24(omObjData *object) Hu3DModelPosSetV(object->model[0], &var_r30->unk_D4); Hu3DModelRotSet(object->model[0], 0.0f, var_r30->unk_64, 0.0f); Hu3DModelPosSetV(object->model[1], &var_r30->unk_F8); - PSMTXCopy(var_r30->unk_1C4, Hu3DData[object->model[1]].unk_F0); + MTXCopy(var_r30->unk_1C4, Hu3DData[object->model[1]].unk_F0); } void fn_1_ADC4(omObjData *object) diff --git a/src/REL/m417Dll/water.c b/src/REL/m417Dll/water.c index 4313fa29..6217da9f 100644 --- a/src/REL/m417Dll/water.c +++ b/src/REL/m417Dll/water.c @@ -567,13 +567,13 @@ void fn_1_4E64(omObjData *object) var_r31->unk_24 = 1.0f; } } - PSMTXTrans(spC8, var_r31->unk_04.x, var_r31->unk_04.y, var_r31->unk_04.z); - PSMTXRotRad(sp98, 89, 0.017453292f * var_r31->unk_10); - PSMTXConcat(spC8, sp98, sp68); + MTXTrans(spC8, var_r31->unk_04.x, var_r31->unk_04.y, var_r31->unk_04.z); + MTXRotRad(sp98, 89, 0.017453292f * var_r31->unk_10); + MTXConcat(spC8, sp98, sp68); var_f31 = var_r31->unk_18 * var_r31->unk_1C; - PSMTXScale(spC8, var_f31, var_f31, var_f31 * var_r31->unk_28); - PSMTXConcat(sp68, spC8, sp98); - PSMTXInverse(sp98, spC8); + MTXScale(spC8, var_f31, var_f31, var_f31 * var_r31->unk_28); + MTXConcat(sp68, spC8, sp98); + MTXInverse(sp98, spC8); PSMTXReorder(spC8, sp38); PSMTXROMultVecArray(sp38, lbl_1_bss_178.unk_2C, lbl_1_bss_178.unk_34, lbl_1_bss_178.unk_18); sp2C.x = (0.15f * var_r31->unk_18) * (var_r31->unk_24 * sind(var_r31->unk_10)); @@ -761,7 +761,7 @@ void fn_1_604C(ModelData *arg0, Mtx arg1) DCStoreRangeNoSync(&sp10, 4); PPCSync(); GXLoadPosMtxImm(arg1, 0); - PSMTXInvXpose(arg1, sp98); + MTXInvXpose(arg1, sp98); GXLoadNrmMtxImm(sp98, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -773,29 +773,29 @@ void fn_1_604C(ModelData *arg0, Mtx arg1) HuSprTexLoad(lbl_1_bss_60, 0, 3, GX_MIRROR, GX_MIRROR, GX_LINEAR); GXSetNumTexGens(5); C_MTXLightPerspective(sp38, 35.0f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, sp98); - PSMTXConcat(sp98, arg1, sp98); - PSMTXConcat(sp38, Hu3DCameraMtx, sp68); - PSMTXConcat(sp68, sp98, sp68); + MTXInverse(Hu3DCameraMtx, sp98); + MTXConcat(sp98, arg1, sp98); + MTXConcat(sp38, Hu3DCameraMtx, sp68); + MTXConcat(sp68, sp98, sp68); sp68[1][3] -= 44.0f; GXLoadTexMtxImm(sp68, 30, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 30, GX_FALSE, 125); C_MTXLightPerspective(sp38, 70.0f, 1.0f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, sp98); - PSMTXConcat(sp98, arg1, sp98); - PSMTXConcat(sp38, Hu3DCameraMtx, sp68); - PSMTXConcat(sp68, sp98, sp68); + MTXInverse(Hu3DCameraMtx, sp98); + MTXConcat(sp98, arg1, sp98); + MTXConcat(sp38, Hu3DCameraMtx, sp68); + MTXConcat(sp68, sp98, sp68); GXLoadTexMtxImm(sp68, 36, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX3x4, GX_TG_POS, 36, GX_FALSE, 125); - PSMTXRotRad(sp68, 90, 0.017453292f * lbl_1_bss_178.unk_6B8); + MTXRotRad(sp68, 90, 0.017453292f * lbl_1_bss_178.unk_6B8); GXLoadTexMtxImm(sp68, 39, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD3, GX_TG_MTX2x4, GX_TG_TEXCOORD0, 39, GX_FALSE, 125); - PSMTXScale(sp98, 1.2f, -1.2f, 1.2f); - PSMTXConcat(sp68, sp98, sp68); + MTXScale(sp98, 1.2f, -1.2f, 1.2f); + MTXConcat(sp68, sp98, sp68); GXLoadTexMtxImm(sp68, 42, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD4, GX_TG_MTX2x4, GX_TG_TEXCOORD0, 42, GX_FALSE, 125); - PSMTXScale(sp98, 0.49f, -0.49f, 0.49f); - PSMTXConcat(sp98, Hu3DCameraMtx, sp68); + MTXScale(sp98, 0.49f, -0.49f, 0.49f); + MTXConcat(sp98, Hu3DCameraMtx, sp68); sp68[0][3] = 0.5f; sp68[1][3] = 0.5f; GXLoadTexMtxImm(sp68, 33, GX_MTX2x4); @@ -804,18 +804,18 @@ void fn_1_604C(ModelData *arg0, Mtx arg1) GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP1); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, GX_TRUE, GX_FALSE, GX_ITM_0); - PSMTXScale(sp68, -0.5f, -0.5f, 0.5f); + MTXScale(sp68, -0.5f, -0.5f, 0.5f); GXSetIndTexMtx(GX_ITM_0, (float(*)[3])sp68, -2); GXSetIndTexOrder(GX_INDTEXSTAGE1, GX_TEXCOORD1, GX_TEXMAP1); GXSetIndTexCoordScale(GX_INDTEXSTAGE1, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(GX_TEVSTAGE1, GX_INDTEXSTAGE1, GX_TRUE, GX_FALSE, GX_ITM_1); - PSMTXScale(sp68, 0.5f, 0.5f, 0.5f); + MTXScale(sp68, 0.5f, 0.5f, 0.5f); GXSetIndTexMtx(GX_ITM_1, (float(*)[3])sp68, 0); GXSetIndTexOrder(GX_INDTEXSTAGE2, GX_TEXCOORD1, GX_TEXMAP1); GXSetIndTexCoordScale(GX_INDTEXSTAGE2, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(GX_TEVSTAGE2, GX_INDTEXSTAGE2, GX_TRUE, GX_FALSE, GX_ITM_2); GXSetTevIndWarp(GX_TEVSTAGE3, GX_INDTEXSTAGE2, GX_TRUE, GX_FALSE, GX_ITM_2); - PSMTXScale(sp68, -0.65f, -0.65f, 0.65f); + MTXScale(sp68, -0.65f, -0.65f, 0.65f); GXSetIndTexMtx(GX_ITM_2, (float(*)[3])sp68, -3); GXSetNumTevStages(5); GXSetTevColor(GX_TEVREG0, sp14); diff --git a/src/REL/m419Dll/main.c b/src/REL/m419Dll/main.c index e0dfba50..83ae359e 100755 --- a/src/REL/m419Dll/main.c +++ b/src/REL/m419Dll/main.c @@ -17,7 +17,7 @@ #include "ext_math.h" typedef struct { - /* 0x00 */ omObjData* unk00; + /* 0x00 */ omObjData *unk00; /* 0x04 */ char unk04[0xB4]; } StructBssC8; // Size 0xB8 @@ -109,8 +109,8 @@ typedef struct { void fn_1_57C(s16 arg0); void fn_1_AD0(s16 arg0); void fn_1_F58(void); -void fn_1_2254(ModelData* model, ParticleData* particle, Mtx matrix); -void fn_1_2744(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_2254(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_2744(ModelData *model, ParticleData *particle, Mtx matrix); void fn_1_47E4(void); void fn_1_4B20(void); void fn_1_9AF0(void); @@ -135,52 +135,32 @@ s32 lbl_1_bss_580; StructBss200 lbl_1_bss_200[4]; StructBss1E8 lbl_1_bss_1E8[2]; StructBss190 lbl_1_bss_190[2]; -Process* lbl_1_bss_180[4]; +Process *lbl_1_bss_180[4]; StructBssC8 lbl_1_bss_C8; Vec lbl_1_bss_BC; Vec lbl_1_bss_B0; Vec lbl_1_bss_A4; -void* lbl_1_bss_84[8]; -void* lbl_1_bss_64[8]; +void *lbl_1_bss_84[8]; +void *lbl_1_bss_64[8]; u8 lbl_1_bss_60; Vec lbl_1_bss_0[8]; s32 lbl_1_data_0[] = { 0, 1, 2, 3, 4, 5, 6, 7 }; -s32 lbl_1_data_20[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 21), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 26), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), - DATA_MAKE_NUM(DATADIR_M419, 0), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 25), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 13), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 16) -}; +s32 lbl_1_data_20[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 21), DATA_MAKE_NUM(DATADIR_MARIOMOT, 26), DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), DATA_MAKE_NUM(DATADIR_M419, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 25), DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), DATA_MAKE_NUM(DATADIR_MARIOMOT, 13), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 16) }; -s32 lbl_1_data_4C[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 79), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 22) -}; +s32 lbl_1_data_4C[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 79), DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 22) }; -Vec lbl_1_data_5C[] = { - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f } -}; +Vec lbl_1_data_5C[] = { { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f } }; -void ObjectSetup(void) { - Process* temp_r3; +void ObjectSetup(void) +{ + Process *temp_r3; temp_r3 = omInitObjMan(50, 0x2000); omGameSysInit(temp_r3); @@ -218,7 +198,8 @@ void ObjectSetup(void) { WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); } -void fn_1_4A0(void) { +void fn_1_4A0(void) +{ s16 i; Hu3DLayerHookSet(1, fn_1_57C); @@ -229,10 +210,11 @@ void fn_1_4A0(void) { } } -void fn_1_57C(s16 arg0) { +void fn_1_57C(s16 arg0) +{ Vec sp14; Vec sp8; - ModelData* temp_r30; + ModelData *temp_r30; s16 var_r31; temp_r30 = &Hu3DData[lbl_1_bss_5BE]; @@ -266,14 +248,15 @@ void fn_1_57C(s16 arg0) { GXCopyTex(lbl_1_bss_64[lbl_1_bss_60], 0); } -void fn_1_848(ModelData* arg0, Mtx arg1) { +void fn_1_848(ModelData *arg0, Mtx arg1) +{ Mtx44 sp10; GXColor spC; s16 i; C_MTXOrtho(sp10, 0.0f, 480.0f, 0.0f, 640.0f, 0.0f, 8000.0f); GXSetProjection(sp10, GX_ORTHOGRAPHIC); - PSMTXIdentity(arg1); + MTXIdentity(arg1); GXLoadPosMtxImm(arg1, GX_PNMTX0); GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_DIRECT); @@ -302,7 +285,8 @@ void fn_1_848(ModelData* arg0, Mtx arg1) { GXSetZTexture(GX_ZT_DISABLE, GX_TF_Z8, 0); } -void fn_1_AD0(s16 arg0) { +void fn_1_AD0(s16 arg0) +{ GXTexObj sp58; GXTexObj sp38; Vec sp2C; @@ -341,16 +325,17 @@ void fn_1_AD0(s16 arg0) { GXEnd(); } -void fn_1_F58(void) { - void* var_r29; - StructBss1E8* temp_r26; - StructBss200* temp_r31; - Process* var_r25; +void fn_1_F58(void) +{ + void *var_r29; + StructBss1E8 *temp_r26; + StructBss200 *temp_r31; + Process *var_r25; float temp_f31; s16 var_r30; s32 var_r22; s32 var_r23; - AnimData* var_r21; + AnimData *var_r21; s32 i; s32 j; @@ -474,7 +459,8 @@ void fn_1_F58(void) { var_r25 = HuPrcChildCreate(fn_1_9AF0, 0x2000, 0x3000, 0, HuPrcCurrentGet()); var_r25->user_data = temp_r31; lbl_1_bss_180[i] = var_r25; - } else { + } + else { temp_r31->unk02 = CharModelCreate(lbl_1_data_0[GWPlayerCfg[i].character], 2); Hu3DModelLayerSet(temp_r31->unk00, 1); CharModelLayerSetAll(2); @@ -559,25 +545,30 @@ void fn_1_F58(void) { HuPrcChildCreate(fn_1_104A0, 0x1000, 0x1000, 0, HuPrcCurrentGet()); } -float fn_1_1F84(float arg0, float arg1) { +float fn_1_1F84(float arg0, float arg1) +{ float var_f31; float var_f30; if (arg0 > 600.0f - arg1) { var_f31 = 600.0f + 200.0f * ((800.0f - (arg0 + arg1)) / 200.0f); - } else if (arg0 < -(600.0f - arg1)) { + } + else if (arg0 < -(600.0f - arg1)) { var_f31 = 600.0f + 200.0f * ((800.0f - ABS_INV(arg0 - arg1)) / 200.0f); - } else { + } + else { var_f31 = 800.0f; } return var_f31; } -float fn_1_20AC(float arg0, float arg1) { +float fn_1_20AC(float arg0, float arg1) +{ return fn_1_1F84(arg0, arg1); } -float fn_1_21D4(float arg0) { +float fn_1_21D4(float arg0) +{ while (arg0 >= 360.0f || arg0 < 0.0f) { if (arg0 >= 360.0f) { arg0 -= 360.0f; @@ -589,9 +580,10 @@ float fn_1_21D4(float arg0) { return arg0; } -void fn_1_2254(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; - StructBss200* temp_r28; +void fn_1_2254(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + StructBss200 *temp_r28; float var_f31; float temp_f29; float var_f30; @@ -639,7 +631,7 @@ void fn_1_2254(ModelData* model, ParticleData* particle, Mtx matrix) { var_r31 = particle->unk_48; for (k = 0; k < particle->unk_30; k++, var_r31++) { if (var_r31->unk14.x != 0.0f) { - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); var_r31->unk08.x *= 0.95f; var_r31->unk08.z *= 0.95f; if (var_r31->unk08.y > 0.1f) { @@ -669,9 +661,10 @@ void fn_1_2254(ModelData* model, ParticleData* particle, Mtx matrix) { } } -void fn_1_2744(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; - StructBss200* temp_r28; +void fn_1_2744(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + StructBss200 *temp_r28; float temp_f31; float temp_f30; s32 var_r27; @@ -729,7 +722,7 @@ void fn_1_2744(ModelData* model, ParticleData* particle, Mtx matrix) { var_r31->unk20 = -1.0f; } if (var_r31->unk14.x != 0.0f && var_r31->unk24 != 0.0f) { - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); if (var_r31->unk08.y > 1.0f) { var_r31->unk08.y -= 0.3f; } @@ -754,8 +747,9 @@ void fn_1_2744(ModelData* model, ParticleData* particle, Mtx matrix) { } } -s32 fn_1_2BDC(StructBss190* arg0) { - StructBss200* temp_r31; +s32 fn_1_2BDC(StructBss190 *arg0) +{ + StructBss200 *temp_r31; Vec sp24; Vec sp18; Vec spC; @@ -777,7 +771,8 @@ s32 fn_1_2BDC(StructBss190* arg0) { return var_r28; } -void fn_1_2DFC(StructBss190* arg0) { +void fn_1_2DFC(StructBss190 *arg0) +{ float temp_f31; float var_f26; float var_f25; @@ -817,13 +812,14 @@ void fn_1_2DFC(StructBss190* arg0) { } } -void fn_1_32F8(void) { - StructBss200* temp_r31; +void fn_1_32F8(void) +{ + StructBss200 *temp_r31; float var_f31; s32 var_r29; s32 i; - var_r29 = (s32) HuPrcCurrentGet()->user_data; + var_r29 = (s32)HuPrcCurrentGet()->user_data; temp_r31 = &lbl_1_bss_200[var_r29]; for (i = 0, var_f31 = 1.0f; i < 30; i++, var_f31 -= 0.033333335f) { Hu3DModelAmbSet(temp_r31->unk00, 1.0f, var_f31, var_f31); @@ -844,9 +840,10 @@ void fn_1_32F8(void) { } } -void fn_1_344C(void) { - StructBss190* temp_r31; - StructBss200* temp_r30; +void fn_1_344C(void) +{ + StructBss190 *temp_r31; + StructBss200 *temp_r30; Vec spAC; Vec spA0; Vec sp94; @@ -887,7 +884,8 @@ void fn_1_344C(void) { Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04); Hu3DModelAttrSet(temp_r31->unk00, HU3D_MOTATTR_LOOP); Hu3DModelTPLvlSet(temp_r31->unk00, 1.0f); - } else { + } + else { Hu3DModelAttrReset(temp_r31->unk02, 1); } Hu3DModelAttrReset(temp_r31->unk00, 1); @@ -910,14 +908,16 @@ void fn_1_344C(void) { temp_r30 = &lbl_1_bss_200[var_r25]; if (GWPlayerCfg[temp_r30->unk28].group == 0) { sp5C = 150.0f; - } else { + } + else { sp5C = 400.0f; } if (temp_r31->unk18 < sp5C) { if (temp_r31->unk18 < sp5C && temp_r31->unk18 > sp5C - 50.0f) { var_f23 = 15.0f; sp58 = 0.9f; - } else { + } + else { sp6C = atan2d(temp_r31->unk14 - temp_r30->unk54, temp_r31->unk1C - temp_r30->unk5C); temp_r31->unk0C = fn_1_21D4(180.0f + temp_r31->unk0C); temp_r31->unk0C = sp6C - (temp_r31->unk0C - sp6C); @@ -985,12 +985,14 @@ void fn_1_344C(void) { temp_r30->unk94 = 3.0f; lbl_1_bss_5BC = 1; HuAudFXPlay(0x5E6); - } else { + } + else { temp_r30->unk90 = 6.75f; temp_r30->unk98 = 0.99f; HuAudFXPlay(0x5E2); } - } else if (temp_r30->unk24 == 0) { + } + else if (temp_r30->unk24 == 0) { temp_r30->unk34 = 4; HuAudPlayerVoicePlay(temp_r30->unk28, 0x128); HuAudFXPlay(0x5E9); @@ -1004,7 +1006,8 @@ void fn_1_344C(void) { } if (var_r24 & 1) { Hu3DModelAttrReset(var_r22, 1); - } else { + } + else { Hu3DModelAttrSet(var_r22, 1); } var_r24++; @@ -1024,7 +1027,8 @@ fn_1_344C_label: } Hu3DModelAttrSet(temp_r31->unk00, 1); Hu3DModelAttrSet(temp_r31->unk02, 1); - } else { + } + else { if (temp_r31->unk08 == 0) { temp_r30 = &lbl_1_bss_200[var_r25]; sp6C = atan2d(temp_r31->unk14 - temp_r30->unk54, temp_r31->unk1C - temp_r30->unk5C); @@ -1054,11 +1058,12 @@ fn_1_344C_label: } } -void fn_1_47E4(void) { - StructBss1E8* var_r31; - StructBss190* var_r30; - ModelData* temp_r29; - Process* temp_r3; +void fn_1_47E4(void) +{ + StructBss1E8 *var_r31; + StructBss190 *var_r30; + ModelData *temp_r29; + Process *temp_r3; s32 var_r27; var_r31 = &lbl_1_bss_1E8[0]; @@ -1077,7 +1082,8 @@ void fn_1_47E4(void) { lbl_1_bss_580++; var_r30 = &lbl_1_bss_190[1]; Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[4], 0.0f, 5.0f, HU3D_MOTATTR_NONE); - } else { + } + else { Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[3], 0.0f, 5.0f, HU3D_MOTATTR_NONE); } HuPrcVSleep(); @@ -1119,11 +1125,12 @@ void fn_1_47E4(void) { } } -void fn_1_4B20(void) { - StructBss1E8* var_r31; - StructBss190* var_r30; - Process* temp_r3; - ModelData* temp_r29; +void fn_1_4B20(void) +{ + StructBss1E8 *var_r31; + StructBss190 *var_r30; + Process *temp_r3; + ModelData *temp_r29; s32 var_r27; var_r31 = &lbl_1_bss_1E8[1]; @@ -1142,7 +1149,8 @@ void fn_1_4B20(void) { lbl_1_bss_580++; var_r30 = &lbl_1_bss_190[1]; Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[4], 0.0f, 5.0f, HU3D_MOTATTR_NONE); - } else { + } + else { Hu3DMotionShiftSet(var_r31->unk00, var_r31->unk02[3], 0.0f, 5.0f, HU3D_MOTATTR_NONE); } HuPrcVSleep(); @@ -1183,63 +1191,72 @@ void fn_1_4B20(void) { } } -s8 fn_1_4E54(s32 arg0, s32 arg1) { - StructBss200* temp_r31; +s8 fn_1_4E54(s32 arg0, s32 arg1) +{ + StructBss200 *temp_r31; s8 var_r30; temp_r31 = &lbl_1_bss_200[arg0]; if (GWPlayerCfg[arg0].iscom == 0) { (arg1 != 0) ? (var_r30 = HuPadStkY[temp_r31->unk30]) : (var_r30 = HuPadStkX[temp_r31->unk30]); - } else { + } + else { (arg1 != 0) ? (var_r30 = temp_r31->unkA1) : (var_r30 = temp_r31->unkA0); } return var_r30; } -u8 fn_1_4F0C(s32 arg0, s32 arg1) { - StructBss200* temp_r31; +u8 fn_1_4F0C(s32 arg0, s32 arg1) +{ + StructBss200 *temp_r31; s8 var_r30; temp_r31 = &lbl_1_bss_200[arg0]; if (GWPlayerCfg[arg0].iscom == 0) { (arg1 != 0) ? (var_r30 = HuPadTrigR[temp_r31->unk30]) : (var_r30 = HuPadTrigL[temp_r31->unk30]); - } else { + } + else { (arg1 != 0) ? (var_r30 = temp_r31->unkA2) : (var_r30 = temp_r31->unkA3); } return var_r30; } -u16 fn_1_4FCC(s32 arg0) { - StructBss200* temp_r31; +u16 fn_1_4FCC(s32 arg0) +{ + StructBss200 *temp_r31; u16 var_r30; temp_r31 = &lbl_1_bss_200[arg0]; if (GWPlayerCfg[arg0].iscom == 0) { var_r30 = HuPadBtnDown[temp_r31->unk30]; - } else { + } + else { var_r30 = temp_r31->unkA6; } return var_r30; } -u16 fn_1_5038(s32 arg0) { - StructBss200* temp_r31; +u16 fn_1_5038(s32 arg0) +{ + StructBss200 *temp_r31; u16 var_r30; temp_r31 = &lbl_1_bss_200[arg0]; if (GWPlayerCfg[arg0].iscom == 0) { var_r30 = HuPadBtn[temp_r31->unk30]; - } else { + } + else { var_r30 = temp_r31->unkA4; } return var_r30; } -s32 fn_1_50A4(StructBss200* arg0, float arg1, s32 arg2) { +s32 fn_1_50A4(StructBss200 *arg0, float arg1, s32 arg2) +{ Vec sp2C; Vec sp20; Vec sp14; - StructBss200* temp_r30; + StructBss200 *temp_r30; s32 var_r28; float var_f27; float var_f28; @@ -1261,7 +1278,8 @@ s32 fn_1_50A4(StructBss200* arg0, float arg1, s32 arg2) { return var_r28; } -s32 fn_1_52E8(StructBss200* arg0) { +s32 fn_1_52E8(StructBss200 *arg0) +{ float var_f25; float var_f24; s32 var_r28; @@ -1287,7 +1305,8 @@ s32 fn_1_52E8(StructBss200* arg0) { return var_r28; } -float fn_1_5858(float arg0, float arg1, float arg2) { +float fn_1_5858(float arg0, float arg1, float arg2) +{ float var_f31; float var_f30; @@ -1305,7 +1324,8 @@ float fn_1_5858(float arg0, float arg1, float arg2) { return var_f30; } -float fn_1_595C(float arg0, float arg1, StructBss200* arg2) { +float fn_1_595C(float arg0, float arg1, StructBss200 *arg2) +{ Vec sp2C; Vec sp20; Vec sp14; @@ -1316,28 +1336,33 @@ float fn_1_595C(float arg0, float arg1, StructBss200* arg2) { return VECMagXZ(&sp14); } -float fn_1_5AD8(float arg0, float arg1) { +float fn_1_5AD8(float arg0, float arg1) +{ float var_f31; if (arg0 > arg1) { var_f31 = fn_1_21D4(arg0 - arg1); if (var_f31 < 180.0f) { var_f31 = fn_1_21D4(arg1 + var_f31 + 180.0f); - } else { + } + else { var_f31 = fn_1_21D4(arg1 - var_f31); } - } else { + } + else { var_f31 = fn_1_21D4(arg1 - arg0); if (var_f31 < 180.0f) { var_f31 = fn_1_21D4(arg0 + var_f31 + 180.0f); - } else { + } + else { var_f31 = fn_1_21D4(arg0 - var_f31); } } return var_f31; } -s32 fn_1_5F34(StructBss200* arg0, float arg1) { +s32 fn_1_5F34(StructBss200 *arg0, float arg1) +{ s32 var_r31; float var_f25; float var_f24; @@ -1345,17 +1370,15 @@ s32 fn_1_5F34(StructBss200* arg0, float arg1) { var_f25 = fn_1_1F84(arg0->unk5C, arg0->unk8C); var_f24 = fn_1_1F84(arg0->unk54, arg0->unk8C); var_r31 = 0; - if (arg0->unk54 > var_f25 - arg0->unk8C - arg1 - || arg0->unk54 < -(var_f25 - arg0->unk8C - arg1) - || arg0->unk5C > var_f24 - arg0->unk8C - arg1 - || arg0->unk5C < -(var_f24 - arg0->unk8C - arg1)) - { + if (arg0->unk54 > var_f25 - arg0->unk8C - arg1 || arg0->unk54 < -(var_f25 - arg0->unk8C - arg1) || arg0->unk5C > var_f24 - arg0->unk8C - arg1 + || arg0->unk5C < -(var_f24 - arg0->unk8C - arg1)) { var_r31 = 1; } return var_r31; } -void fn_1_628C(StructBss200* arg0) { +void fn_1_628C(StructBss200 *arg0) +{ Vec spC; HuSetVecF(&spC, fn_1_4E54(arg0->unk28, 0) / 4.0f, 0.0, -fn_1_4E54(arg0->unk28, 1) / 4.0f); @@ -1373,10 +1396,11 @@ void fn_1_628C(StructBss200* arg0) { } } -void fn_1_65C0(Vec* arg0, StructBss200** arg1) { +void fn_1_65C0(Vec *arg0, StructBss200 **arg1) +{ float temp_f31; - StructBss200* temp_r31; - StructBss200* temp_r30; + StructBss200 *temp_r31; + StructBss200 *temp_r30; s32 var_r28; s32 i; @@ -1387,7 +1411,8 @@ void fn_1_65C0(Vec* arg0, StructBss200** arg1) { temp_f31 = ABS_INV(temp_r31->unk54 - temp_r30->unk54) / 2.0f; if (temp_r31->unk54 > temp_r30->unk54) { arg0[i].x = temp_r31->unk54 - temp_f31; - } else { + } + else { arg0[i].x = temp_r30->unk54 - temp_f31; } temp_r31 = arg1[i]; @@ -1396,14 +1421,16 @@ void fn_1_65C0(Vec* arg0, StructBss200** arg1) { temp_f31 = ABS_INV(temp_r31->unk5C - temp_r30->unk5C) / 2.0f; if (temp_r31->unk5C > temp_r30->unk5C) { arg0[i].z = temp_r31->unk5C - temp_f31; - } else { + } + else { arg0[i].z = temp_r30->unk5C - temp_f31; } } } -s32 fn_1_67A0(float arg0, float arg1, StructBss200* arg2, StructBss200** arg3) { - StructBss200* var_r31; +s32 fn_1_67A0(float arg0, float arg1, StructBss200 *arg2, StructBss200 **arg3) +{ + StructBss200 *var_r31; StructBss200 sp5C; float var_f29; s32 var_r27; @@ -1435,9 +1462,10 @@ s32 fn_1_67A0(float arg0, float arg1, StructBss200* arg2, StructBss200** arg3) { return var_r27; } -s32 fn_1_6D04(void) { - StructBss200* sp8[3]; - StructBss200* var_r29; +s32 fn_1_6D04(void) +{ + StructBss200 *sp8[3]; + StructBss200 *var_r29; s32 var_r30; s32 var_r28; s32 i; @@ -1445,7 +1473,8 @@ s32 fn_1_6D04(void) { for (i = 0, var_r30 = 0; i < 4; i++) { if (i == lbl_1_bss_5AC) { var_r29 = &lbl_1_bss_200[i]; - } else { + } + else { sp8[var_r30++] = &lbl_1_bss_200[i]; } } @@ -1489,13 +1518,14 @@ s32 fn_1_6D04(void) { return var_r28; } -float fn_1_6E9C(StructBss200* arg0) { +float fn_1_6E9C(StructBss200 *arg0) +{ s32 sp88[3]; s32 sp50[2]; float sp44; float var_f20; float sp48[2]; - StructBss200* sp7C[3]; + StructBss200 *sp7C[3]; s32 var_r29; s32 var_r28; s32 i; @@ -1510,7 +1540,8 @@ float fn_1_6E9C(StructBss200* arg0) { if (sp44 < arg0->unk8C + sp7C[i]->unk8C + 100.0f) { sp88[i] = 1; var_r28++; - } else { + } + else { sp88[i] = -1; } } @@ -1536,17 +1567,19 @@ float fn_1_6E9C(StructBss200* arg0) { var_f20 = fn_1_5AD8(sp48[0], sp48[1]); break; } - if (var_f20 != -1.0f); + if (var_f20 != -1.0f) + ; if (var_f20 != -1.0f) { var_f20 = fn_1_21D4(var_f20); } return var_f20; } -void fn_1_78B4(StructBss200* arg0) { - StructBss200* temp_r18; - StructBss200* var_r17; - StructBss200* sp224[3]; +void fn_1_78B4(StructBss200 *arg0) +{ + StructBss200 *temp_r18; + StructBss200 *var_r17; + StructBss200 *sp224[3]; Vec sp254[3]; Vec sp230[3]; s32 sp218[3]; @@ -1638,7 +1671,8 @@ void fn_1_78B4(StructBss200* arg0) { if (var_f26 > 700.0f) { sp218[var_r30] = 1; sp120++; - } else { + } + else { sp218[var_r30] = 0; } if (var_f26 > var_f30) { @@ -1659,7 +1693,8 @@ void fn_1_78B4(StructBss200* arg0) { } arg0->unkBC = var_r21; arg0->unkCC = var_f27; - } else { + } + else { var_r21 = arg0->unkBC; var_f27 = arg0->unkCC; } @@ -1676,7 +1711,8 @@ void fn_1_78B4(StructBss200* arg0) { var_f28 = 800.0 * cosd(arg0->unkC4); } } - } else { + } + else { arg0->unkAC = 0; arg0->unkB4 = 0; arg0->unkBC = -1; @@ -1703,11 +1739,13 @@ void fn_1_78B4(StructBss200* arg0) { var_f28 = 800.0 * cosd(arg0->unkC4); if (fn_1_5F34(arg0, 10.0f)) { arg0->unkB0 &= ~0x20; - } else { + } + else { arg0->unkB0 |= 0x20; } } - } else { + } + else { if (arg0->unk54 >= 0.0f && arg0->unk5C < 0.0f) { sp138[0] = 0; sp138[1] = 1; @@ -1790,17 +1828,21 @@ void fn_1_78B4(StructBss200* arg0) { if (frandmod(2) != 0) { arg0->unkB0 |= 4; arg0->unkC0 = 30; - } else { + } + else { arg0->unkB0 |= 8; arg0->unkC0 = 30; } - } else if (sp130[0] != 0) { + } + else if (sp130[0] != 0) { arg0->unkB0 |= 4; arg0->unkC0 = 30; - } else if (sp130[1] != 0) { + } + else if (sp130[1] != 0) { arg0->unkB0 |= 8; arg0->unkC0 = 30; - } else { + } + else { arg0->unkB0 |= 0x10; } } @@ -1808,12 +1850,14 @@ void fn_1_78B4(StructBss200* arg0) { var_f27 = fn_1_21D4(atan2d(arg0->unk54, arg0->unk5C)); if (arg0->unkB0 & 4) { var_f27 += 10.0f; - } else { + } + else { var_f27 -= 10.0f; } var_f29 = 800.0 * sind(var_f27); var_f28 = 800.0 * cosd(var_f27); - } else { + } + else { var_f29 = arg0->unk54; var_f28 = arg0->unk5C; } @@ -1830,7 +1874,8 @@ void fn_1_78B4(StructBss200* arg0) { } if (var_f26 < 30.0f) { sp128 = 10.0f; - } else { + } + else { sp128 = 50.0f; } var_f27 = fn_1_21D4(atan2d(var_f29 - arg0->unk54, var_f28 - arg0->unk5C)); @@ -1839,9 +1884,10 @@ void fn_1_78B4(StructBss200* arg0) { } } -void fn_1_9AF0(void) { - StructBss200* temp_r31; - StructBss200* temp_r29; +void fn_1_9AF0(void) +{ + StructBss200 *temp_r31; + StructBss200 *temp_r29; Vec sp6C; float sp44; float sp40; @@ -1895,7 +1941,8 @@ void fn_1_9AF0(void) { HuAudPlayerVoicePlay(temp_r31->unk28, 0x119); } temp_r31->unk44--; - } else { + } + else { CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[7], 0.0f, 10.0f, HU3D_MOTATTR_NONE); temp_r31->unk44 = 20; temp_r31->unk34 = 6; @@ -1905,7 +1952,8 @@ void fn_1_9AF0(void) { if (temp_r31->unk44 != 0) { Hu3DModelAttrReset(temp_r31->unk00, HU3D_MOTATTR_LOOP); temp_r31->unk44--; - } else if (Hu3DMotionEndCheck(temp_r31->unk00) == 1) { + } + else if (Hu3DMotionEndCheck(temp_r31->unk00) == 1) { CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[4], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); temp_r31->unk44 = 10; temp_r31->unk34 = 7; @@ -1914,7 +1962,8 @@ void fn_1_9AF0(void) { case 7: if (temp_r31->unk44 != 0) { temp_r31->unk44--; - } else { + } + else { CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 2.0f); temp_r31->unk34 = 0; } @@ -1935,15 +1984,19 @@ void fn_1_9AF0(void) { if (temp_r31->unk90 >= 8.0f) { if (temp_r31->unk34 != 3) { temp_r31->unk34 = 3; - CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + CharModelMotionShiftSet( + lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); } - } else if (temp_r31->unk34 != 2) { + } + else if (temp_r31->unk34 != 2) { temp_r31->unk34 = 2; - CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + CharModelMotionShiftSet( + lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); } temp_r31->unk54 += sp6C.x * temp_r31->unk94; temp_r31->unk5C += sp6C.z * temp_r31->unk94; - } else if (temp_r31->unk34 != 0) { + } + else if (temp_r31->unk34 != 0) { temp_r31->unk34 = 0; CharModelMotionSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk06[4]); CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 2.0f); @@ -1979,7 +2032,8 @@ void fn_1_9AF0(void) { HuPrcVSleep(); } Hu3DModelRotSet(temp_r31->unk00, temp_r31->unk68, 0.0f, temp_r31->unk70); - } else { + } + else { omVibrate(temp_r31->unk28, 12, 4, 2); HuAudPlayerVoicePlay(temp_r31->unk28, 0x123); HuAudFXPlay(0x5EC); @@ -1999,7 +2053,8 @@ void fn_1_9AF0(void) { var_f28 = fn_1_21D4(atan2d(temp_r31->unk54 - temp_r29->unk54, temp_r31->unk5C - temp_r29->unk5C)); if (ABS_INV(var_f28 - temp_r31->unk6C) > 90.0f && ABS_INV(var_f28 - temp_r31->unk6C) < 270.0f) { CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk18, 0.0f, 5.0f, HU3D_MOTATTR_NONE); - } else { + } + else { CharModelMotionShiftSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], temp_r31->unk1A, 0.0f, 5.0f, HU3D_MOTATTR_NONE); } sp44 = temp_r31->unk58; @@ -2026,7 +2081,8 @@ void fn_1_9AF0(void) { } } -float fn_1_ADFC(s32 arg0, float arg1, float arg2) { +float fn_1_ADFC(s32 arg0, float arg1, float arg2) +{ float temp_f31; float var_f29; @@ -2037,16 +2093,19 @@ float fn_1_ADFC(s32 arg0, float arg1, float arg2) { if (temp_f31 > 0.0f) { var_f29 = -var_f29; } - } else { + } + else { var_f29 = temp_f31 / arg0; } - } else { + } + else { var_f29 = temp_f31 / arg0; } return var_f29; } -void fn_1_B054(StructBss200* arg0) { +void fn_1_B054(StructBss200 *arg0) +{ StructBss200 sp23C; float sp230[3]; float sp198[2]; @@ -2067,9 +2126,9 @@ void fn_1_B054(StructBss200* arg0) { float var_f31; s32 var_r21; s32 var_r20; - StructBss200* temp_r30; - StructBss200* var_r29; - StructBss200* temp_r28; + StructBss200 *temp_r30; + StructBss200 *var_r29; + StructBss200 *temp_r28; s32 var_r19; s32 var_r18; s32 var_r17; @@ -2079,7 +2138,7 @@ void fn_1_B054(StructBss200* arg0) { arg0->unkA0 = arg0->unkA1 = 0; arg0->unkA3 = arg0->unkA2 = 0; arg0->unkA4 = arg0->unkA6 = 0; - switch(GWPlayerCfg[arg0->unk28].diff) { + switch (GWPlayerCfg[arg0->unk28].diff) { case 0: var_r19 = 60; break; @@ -2106,14 +2165,17 @@ void fn_1_B054(StructBss200* arg0) { sp230[2] = fn_1_21D4(sp230[0] - sp230[1]); if (sp230[2] < 180.0f) { sp230[2] = fn_1_21D4(sp230[1] + sp230[2] + 180.0f); - } else { + } + else { sp230[2] = fn_1_21D4(sp230[1] - sp230[2]); } - } else { + } + else { sp230[2] = fn_1_21D4(sp230[1] - sp230[0]); if (sp230[2] < 180.0f) { sp230[2] = fn_1_21D4(sp230[0] + sp230[2] + 180.0f); - } else { + } + else { sp230[2] = fn_1_21D4(sp230[0] - sp230[2]); } } @@ -2137,17 +2199,21 @@ void fn_1_B054(StructBss200* arg0) { if (arg0->unkAC != 2) { if (fn_1_6D04() != 0) { arg0->unkAC = 0; - } else { + } + else { if (ABS_INV(temp_r30->unk54) > 600.0f && ABS_INV(temp_r30->unk5C) > 600.0f) { if (var_r21 <= 0) { arg0->unkAC = 0; - } else { + } + else { arg0->unkAC = 2; } - } else { + } + else { if (var_r21 <= 0) { arg0->unkAC = 0; - } else { + } + else { arg0->unkAC = 1; } } @@ -2258,7 +2324,8 @@ void fn_1_B054(StructBss200* arg0) { } if (sp198[0] < sp198[1]) { sp180 += sp198[0]; - } else { + } + else { sp180 += sp198[1]; } sp180 = fn_1_21D4(sp180); @@ -2267,7 +2334,8 @@ void fn_1_B054(StructBss200* arg0) { var_f30 = arg0->unk54 + sp194 * sind(sp180); var_f29 = arg0->unk5C + sp194 * cosd(sp180); var_f31 = fn_1_21D4(atan2d(var_f30 - arg0->unk54, var_f29 - arg0->unk5C)); - } else { + } + else { arg0->unkAC = 1; } break; @@ -2297,7 +2365,8 @@ void fn_1_B054(StructBss200* arg0) { if (ABS_INV(fn_1_21D4(arg0->unk6C - var_f31)) > 180.0f) { arg0->unkA0 = -30; var_r29->unk9C = arg0->unk98; - } else { + } + else { arg0->unkA0 = 30; var_r29->unk9C = -arg0->unk98; } @@ -2309,7 +2378,8 @@ void fn_1_B054(StructBss200* arg0) { if (VECMagXZ(&sp20C) > 10.0f) { if (ABS_INV(arg0->unk6C - var_f31) < 90.0f || ABS_INV(arg0->unk6C - var_f31) > 270.0f) { arg0->unkA4 |= 0x100; - } else { + } + else { arg0->unkA4 |= 0x200; var_r29->unk9C = -var_r29->unk9C; } @@ -2350,15 +2420,18 @@ void fn_1_B054(StructBss200* arg0) { if (arg0->unkB8 == 0) { arg0->unkB8 = 60; } - } else if (var_r18 == -1) { + } + else if (var_r18 == -1) { arg0->unkAC = 2; if (ABS_INV(arg0->unk6C - var_f31) < 90.0f || ABS_INV(arg0->unk6C - var_f31) > 270.0f) { arg0->unkA4 |= 0x100; - } else { + } + else { arg0->unkA4 |= 0x200; var_r29->unk9C = -var_r29->unk9C; } - } else { + } + else { arg0->unkA0 = 30; } } @@ -2367,8 +2440,9 @@ void fn_1_B054(StructBss200* arg0) { } } -void fn_1_DECC(void) { - StructBss200* temp_r31; +void fn_1_DECC(void) +{ + StructBss200 *temp_r31; s32 i; temp_r31 = HuPrcCurrentGet()->user_data; @@ -2383,7 +2457,8 @@ void fn_1_DECC(void) { } } -s32 fn_1_DF3C(StructBss200* arg0) { +s32 fn_1_DF3C(StructBss200 *arg0) +{ s32 var_r31; s32 var_r30; @@ -2398,27 +2473,27 @@ s32 fn_1_DF3C(StructBss200* arg0) { return var_r31; } -void fn_1_DF98(void) { +void fn_1_DF98(void) +{ float var_f27; float var_f25; float var_f26; - StructBss200* temp_r31; - StructBss200* temp_r30; + StructBss200 *temp_r31; + StructBss200 *temp_r30; s32 var_r25; s32 var_r29; s32 var_r28; s32 sp90; - Process* sp8C; + Process *sp8C; s32 sp88; s32 sp84; s32 sp80; s32 sp7C; - Process* sp78; + Process *sp78; temp_r31 = HuPrcCurrentGet()->user_data; temp_r31->unk34 = 0; - temp_r31->unkA8 = temp_r31->unkAC = temp_r31->unkB0 - = temp_r31->unkB4 = temp_r31->unkB8 = temp_r31->unk50 = 0; + temp_r31->unkA8 = temp_r31->unkAC = temp_r31->unkB0 = temp_r31->unkB4 = temp_r31->unkB8 = temp_r31->unk50 = 0; temp_r31->unkC0 = 0; temp_r31->unk38 = 0; temp_r31->unkD0 = 0; @@ -2441,7 +2516,7 @@ void fn_1_DF98(void) { if (temp_r31->unk3C != 0) { if (temp_r31->unk48 == 300) { sp8C = HuPrcChildCreate(fn_1_32F8, 0x2000, 0x1000, 0, HuPrcCurrentGet()); - sp8C->user_data = (void*) temp_r31->unk28; + sp8C->user_data = (void *)temp_r31->unk28; } if (temp_r31->unk48-- == 0) { temp_r31->unk3C = 0; @@ -2456,7 +2531,8 @@ void fn_1_DF98(void) { case 8: if (temp_r31->unk44 != 0) { temp_r31->unk44--; - } else { + } + else { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); temp_r31->unk34 = 0; } @@ -2478,7 +2554,8 @@ void fn_1_DF98(void) { } if (temp_r31->unk44 != 0) { temp_r31->unk44--; - } else { + } + else { Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[5]); Hu3DModelAttrReset(temp_r31->unk00, HU3D_MOTATTR_LOOP); temp_r31->unk34 = 6; @@ -2520,7 +2597,8 @@ void fn_1_DF98(void) { if (fn_1_5038(temp_r31->unk28) & 0x100) { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); - } else { + } + else { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); } @@ -2529,14 +2607,16 @@ void fn_1_DF98(void) { HuAudFXStop(var_r25); } } - } else { + } + else { if (temp_r31->unk34 != 3) { temp_r31->unk34 = 3; temp_r31->unk50 = 0; if (fn_1_5038(temp_r31->unk28) & 0x100) { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); - } else { + } + else { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); } @@ -2549,7 +2629,8 @@ void fn_1_DF98(void) { if (temp_r31->unk3C != 1) { sp88 = 8; sp84 = 32; - } else { + } + else { sp88 = 7; sp84 = 22; } @@ -2564,12 +2645,14 @@ void fn_1_DF98(void) { if (temp_r31->unk50 >= 50) { temp_r31->unk50 -= 50; } - } else { + } + else { if (temp_r31->unk50 >= 30) { temp_r31->unk50 -= 30; } } - } else { + } + else { if (ABS_INV(fn_1_4E54(temp_r31->unk28, 0)) <= 20) { if (temp_r31->unk34 != 0) { temp_r31->unk34 = 0; @@ -2579,7 +2662,8 @@ void fn_1_DF98(void) { HuAudFXStop(var_r25); } } - } else { + } + else { if (temp_r31->unk34 != 1) { temp_r31->unk34 = 1; Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); @@ -2603,7 +2687,8 @@ void fn_1_DF98(void) { } temp_r31->unk54 = temp_r31->unk60; temp_r31->unk5C = temp_r31->unk64; - } else { + } + else { temp_r30->unk24 = 1; temp_r30->unk40 = temp_r31->unk28; } @@ -2622,7 +2707,8 @@ void fn_1_DF98(void) { } temp_r31->unk54 = temp_r31->unk60; temp_r31->unk5C = temp_r31->unk64; - } else { + } + else { temp_r30->unk24 = 1; temp_r30->unk40 = temp_r31->unk28; } @@ -2631,7 +2717,8 @@ void fn_1_DF98(void) { } if (temp_r31->unkD8 == temp_r31->unk54 && temp_r31->unkDC == temp_r31->unk5C) { temp_r31->unkD0++; - } else { + } + else { temp_r31->unkD8 = temp_r31->unk54; temp_r31->unkDC = temp_r31->unk5C; temp_r31->unkD0 = 0; @@ -2650,7 +2737,8 @@ void fn_1_DF98(void) { if (temp_r31->unk28 != 0) { HuAudFXPlay(0x5EA); } - } else { + } + else { if (temp_r31->unk28 == 0) { HuAudFXPlay(0x5EA); } @@ -2663,7 +2751,8 @@ void fn_1_DF98(void) { if (temp_r31->unk28 != 0) { HuAudFXPlay(0x5E3); } - } else { + } + else { if (temp_r31->unk28 == 0) { HuAudFXPlay(0x5E3); } @@ -2688,7 +2777,8 @@ void fn_1_DF98(void) { if (sp7C & 1) { Hu3DModelAttrReset(temp_r31->unk00, 1); Hu3DModelAttrReset(temp_r31->unk04, 1); - } else { + } + else { Hu3DModelAttrSet(temp_r31->unk00, 1); Hu3DModelAttrSet(temp_r31->unk04, 1); } @@ -2706,7 +2796,8 @@ void fn_1_DF98(void) { HuPrcVSleep(); } Hu3DModelAttrSet(temp_r31->unk00, 1); - } else { + } + else { var_f26 = temp_r31->unk98; Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); if (fn_1_21D4(temp_r31->unk6C) != 0.0f) { @@ -2737,8 +2828,9 @@ void fn_1_DF98(void) { } } -void fn_1_F73C(void) { - StructBss200* var_r31; +void fn_1_F73C(void) +{ + StructBss200 *var_r31; float var_f31; s32 var_r30; s32 var_r29; @@ -2772,8 +2864,9 @@ void fn_1_F73C(void) { } } -void fn_1_F9BC(void) { - StructBss200* temp_r31; +void fn_1_F9BC(void) +{ + StructBss200 *temp_r31; float temp_f26; float temp_f28; float temp_f27; @@ -2864,8 +2957,9 @@ void fn_1_F9BC(void) { CharModelMotionSpeedSet(lbl_1_data_0[GWPlayerCfg[temp_r31->unk28].character], 2.0f); } -void fn_1_10258(s32 arg0) { - StructBss200* var_r30; +void fn_1_10258(s32 arg0) +{ + StructBss200 *var_r30; float temp_f31; float temp_f30; float temp_f29; @@ -2891,7 +2985,8 @@ void fn_1_10258(s32 arg0) { } HuAudSStreamPlay(1); Hu3DMotionShiftSet(var_r30->unk00, var_r30->unk16, 0.0f, 5.0f, HU3D_MOTATTR_NONE); - } else { + } + else { for (lbl_1_bss_5A4 = 0; lbl_1_bss_5A4 < 60; lbl_1_bss_5A4++) { HuPrcVSleep(); } @@ -2899,7 +2994,8 @@ void fn_1_10258(s32 arg0) { } } -void fn_1_104A0(void) { +void fn_1_104A0(void) +{ while (TRUE) { if (omSysExitReq == 1) { WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); @@ -2915,7 +3011,8 @@ void fn_1_104A0(void) { } } -void fn_1_10500(void) { +void fn_1_10500(void) +{ s16 temp_r28; s16 temp_r30; s16 var_r29; @@ -2966,7 +3063,8 @@ void fn_1_10500(void) { if (lbl_1_bss_5A8 == lbl_1_bss_5AC) { GWPlayerCoinWinSet(lbl_1_bss_5A8, 10); temp_r30 = MGSeqWinCreate(GWPlayerCfg[lbl_1_bss_5A8].character, -1, -1, -1); - } else { + } + else { for (i = 0, var_r27 = 0; i < 4; i++) { if (i != lbl_1_bss_5AC) { sp8[var_r27++] = i; diff --git a/src/REL/m421Dll/main.c b/src/REL/m421Dll/main.c index 24d109e2..8ab50b74 100644 --- a/src/REL/m421Dll/main.c +++ b/src/REL/m421Dll/main.c @@ -131,7 +131,7 @@ void ObjectSetup(void) sp8.x = sp8.z = 0.0f; sp8.y = lbl_1_data_18.z; mtxRot(sp2C, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); - PSMTXMultVec(sp2C, &sp8, &lbl_1_data_28); + MTXMultVec(sp2C, &sp8, &lbl_1_data_28); Hu3DGLightPosAimSetV(lbl_1_bss_12[0], &lbl_1_data_28, &lbl_1_data_40); Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); lbl_1_bss_10 = lbl_1_bss_E = lbl_1_bss_C = -1; @@ -647,7 +647,7 @@ void fn_1_38FC(ModelData *model, Mtx mtx) float var_f30; float var_f29; - PSMTXIdentity(spC); + MTXIdentity(spC); GXLoadPosMtxImm(spC, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); diff --git a/src/REL/m422Dll/main.c b/src/REL/m422Dll/main.c index 15c1186f..b51c3e68 100755 --- a/src/REL/m422Dll/main.c +++ b/src/REL/m422Dll/main.c @@ -14,8 +14,9 @@ #include "game/sprite.h" #include "game/wipe.h" -#include "ext_math.h" #include "dolphin.h" +#include "ext_math.h" + typedef struct { /* 0x00 */ s32 unk00; @@ -62,16 +63,16 @@ typedef struct { /* 0x2C */ s32 unk2C; } StructDataF0; // Size 0x30 -void fn_1_B480(omObjData* arg0); +void fn_1_B480(omObjData *arg0); StructBss104 lbl_1_bss_104[3][8]; StructBss54 lbl_1_bss_54[11]; -omObjData* lbl_1_bss_50; -omObjData* lbl_1_bss_4C; -omObjData* lbl_1_bss_3C[4]; -omObjData* lbl_1_bss_38; +omObjData *lbl_1_bss_50; +omObjData *lbl_1_bss_4C; +omObjData *lbl_1_bss_3C[4]; +omObjData *lbl_1_bss_38; s32 lbl_1_bss_34; -Process* lbl_1_bss_30; +Process *lbl_1_bss_30; s16 lbl_1_bss_2E; s16 lbl_1_bss_2C; s32 lbl_1_bss_28; @@ -86,140 +87,59 @@ float lbl_1_bss_8; float lbl_1_bss_4; float lbl_1_bss_0; -const float lbl_1_rodata_10[12] = { - 25.0f, 95.0f, 25.0f, - 75.0f, 75.0f, 75.0f, - 35.0f, 35.0f, 35.0f, - 25.0f, 50.0f, 50.0f -}; +const float lbl_1_rodata_10[12] = { 25.0f, 95.0f, 25.0f, 75.0f, 75.0f, 75.0f, 35.0f, 35.0f, 35.0f, 25.0f, 50.0f, 50.0f }; -const float lbl_1_rodata_40[12] = { - 75.0f, 0.0f, 75.0f, - 0.0f, 0.0f, 0.0f, - 20.0f, 20.0f, 20.0f, - 50.0f, 0.0f, 0.0f -}; +const float lbl_1_rodata_40[12] = { 75.0f, 0.0f, 75.0f, 0.0f, 0.0f, 0.0f, 20.0f, 20.0f, 20.0f, 50.0f, 0.0f, 0.0f }; -const float lbl_1_rodata_70[12] = { - 75.0f, 0.0f, 37.0f, - 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, - 70.0f, 0.0f, 0.0f -}; +const float lbl_1_rodata_70[12] = { 75.0f, 0.0f, 37.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 70.0f, 0.0f, 0.0f }; -const float lbl_1_rodata_A0[12] = { - 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, - 75.0f, 50.0f, 0.0f -}; +const float lbl_1_rodata_A0[12] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 75.0f, 50.0f, 0.0f }; -const float lbl_1_rodata_D0[12] = { - 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f -}; +const float lbl_1_rodata_D0[12] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }; -const float lbl_1_rodata_100[12] = { - 30.0f, 30.0f, 30.0f, - 30.0f, 30.0f, 30.0f, - 40.0f, 40.0f, 40.0f, - 0.0f, 0.0f, 0.0f -}; +const float lbl_1_rodata_100[12] = { 30.0f, 30.0f, 30.0f, 30.0f, 30.0f, 30.0f, 40.0f, 40.0f, 40.0f, 0.0f, 0.0f, 0.0f }; -const float lbl_1_rodata_130[12] = { - 290.0f, 290.0f, 290.0f, - 370.0f, 370.0f, 370.0f, - 450.0f, 450.0f, 450.0f, - 0.0f, 0.0f, 0.0f -}; +const float lbl_1_rodata_130[12] = { 290.0f, 290.0f, 290.0f, 370.0f, 370.0f, 370.0f, 450.0f, 450.0f, 450.0f, 0.0f, 0.0f, 0.0f }; -s32 lbl_1_data_0[] = { - DATA_MAKE_NUM(DATADIR_MGCONST, 41), - DATA_MAKE_NUM(DATADIR_MGCONST, 40), - DATA_MAKE_NUM(DATADIR_MGCONST, 51), - DATA_MAKE_NUM(DATADIR_MGCONST, 51), - DATA_MAKE_NUM(DATADIR_MGCONST, 8), - DATA_MAKE_NUM(DATADIR_M422, 51), - DATA_MAKE_NUM(DATADIR_MGCONST, 0), - DATA_MAKE_NUM(DATADIR_MGCONST, 37), - DATA_MAKE_NUM(DATADIR_MGCONST, 36), - DATA_MAKE_NUM(DATADIR_MGCONST, 51), - DATA_MAKE_NUM(DATADIR_MGCONST, 51), - DATA_MAKE_NUM(DATADIR_MGCONST, 8), - DATA_MAKE_NUM(DATADIR_M422, 51), - DATA_MAKE_NUM(DATADIR_MGCONST, 12), - DATA_MAKE_NUM(DATADIR_MGCONST, 12), - DATA_MAKE_NUM(DATADIR_MGCONST, 12) -}; +s32 lbl_1_data_0[] = { DATA_MAKE_NUM(DATADIR_MGCONST, 41), DATA_MAKE_NUM(DATADIR_MGCONST, 40), DATA_MAKE_NUM(DATADIR_MGCONST, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 51), DATA_MAKE_NUM(DATADIR_MGCONST, 8), DATA_MAKE_NUM(DATADIR_M422, 51), DATA_MAKE_NUM(DATADIR_MGCONST, 0), + DATA_MAKE_NUM(DATADIR_MGCONST, 37), DATA_MAKE_NUM(DATADIR_MGCONST, 36), DATA_MAKE_NUM(DATADIR_MGCONST, 51), DATA_MAKE_NUM(DATADIR_MGCONST, 51), + DATA_MAKE_NUM(DATADIR_MGCONST, 8), DATA_MAKE_NUM(DATADIR_M422, 51), DATA_MAKE_NUM(DATADIR_MGCONST, 12), DATA_MAKE_NUM(DATADIR_MGCONST, 12), + DATA_MAKE_NUM(DATADIR_MGCONST, 12) }; -s32 lbl_1_data_40[] = { - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x005E0000, 0x00190000, 0x006C0000, 0x00890000, - 0x00840000, 0x00100000, 0x000C0000, 0x00800000 -}; +s32 lbl_1_data_40[] = { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x005E0000, 0x00190000, 0x006C0000, 0x00890000, 0x00840000, 0x00100000, + 0x000C0000, 0x00800000 }; -s32 lbl_1_data_A0[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), - DATA_MAKE_NUM(DATADIR_M422, 0), - DATA_MAKE_NUM(DATADIR_M422, 8), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 24) -}; +s32 lbl_1_data_A0[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), + DATA_MAKE_NUM(DATADIR_M422, 0), DATA_MAKE_NUM(DATADIR_M422, 8), DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 24) }; u32 lbl_1_data_C0[] = { 0, 0, 0, 1, 1, 0, 0, 0 }; u8 lbl_1_data_E0[] = { 0, 0, 0, 1, 0, 1, 1 }; u8 lbl_1_data_E7[] = { 8, 8, 8, 0, 12, 0, 8, 8, 0 }; StructDataF0 lbl_1_data_F0[12][10] = { 0 }; -char* lbl_1_data_1828[] = { - "m422al01-cube8", - "m422al02-cyl143", - "m422al03-cube11", - "m422am01-cyl76", - "m422am02-cube13", - "m422am03-cube12", - "m422as01-cube9", - "m422test11-cube9", - "m422test12-cube9", - "m422m09m-m422m09m", - "coin", - "m422a04-sphere2", - "m422m09m-m422m09m", - "m422m09m-m422m09m", - "m422m09m-m422m09m", - "m422m09m-m422m09m", - "m422m09m-m422m09m", - "m422m09m-m422m09m", - "m422m09m-m422m09m", - "m422m09m-m422m09m" -}; +char *lbl_1_data_1828[] + = { "m422al01-cube8", "m422al02-cyl143", "m422al03-cube11", "m422am01-cyl76", "m422am02-cube13", "m422am03-cube12", "m422as01-cube9", + "m422test11-cube9", "m422test12-cube9", "m422m09m-m422m09m", "coin", "m422a04-sphere2", "m422m09m-m422m09m", "m422m09m-m422m09m", + "m422m09m-m422m09m", "m422m09m-m422m09m", "m422m09m-m422m09m", "m422m09m-m422m09m", "m422m09m-m422m09m", "m422m09m-m422m09m" }; s32 lbl_1_data_1878[11] = { 0 }; s32 lbl_1_data_18A4[2] = { 0 }; s32 lbl_1_data_18AC = -1; s32 lbl_1_data_18B0 = -1; -float lbl_1_data_18B4[][4] = { - { 0.0f, 300.0f, 450.0f, 180.0f }, - { -200.0f, 0.0f, 1050.0f, 180.0f }, - { 0.0f, 0.0f, 1050.0f, 180.0f }, - { 200.0f, 0.0f, 1050.0f, 180.0f } -}; +float lbl_1_data_18B4[][4] + = { { 0.0f, 300.0f, 450.0f, 180.0f }, { -200.0f, 0.0f, 1050.0f, 180.0f }, { 0.0f, 0.0f, 1050.0f, 180.0f }, { 200.0f, 0.0f, 1050.0f, 180.0f } }; s32 lbl_1_data_18F4[] = { 0, 0 }; float lbl_1_data_18FC = 1.0f; // unused s32 lbl_1_data_1900 = -1; -void fn_1_A0(void) { +void fn_1_A0(void) +{ Center.x += 10.0 * (((HuPadBtn[0] & 2) != 0) - ((HuPadBtn[0] & 1) != 0)); Center.z -= 10.0 * (((HuPadBtn[0] & 8) != 0) - ((HuPadBtn[0] & 4) != 0)); Center.y += ((HuPadTrigL[0] - HuPadTrigR[0]) / 128.0) * 30.0; @@ -227,7 +147,8 @@ void fn_1_A0(void) { CRot.x += HuPadSubStkY[0] / -16.0; } -void fn_1_2FC(omObjData* arg0) { +void fn_1_2FC(omObjData *arg0) +{ Mtx sp254; s32 sp1CC; s32 sp1C8; @@ -260,9 +181,9 @@ void fn_1_2FC(omObjData* arg0) { float temp_f26; float phi_f29; float phi_f28; - StructDataF0* temp_r28; - StructDataF0* temp_r29; - StructBss3CData* temp_r31; + StructDataF0 *temp_r28; + StructDataF0 *temp_r29; + StructBss3CData *temp_r31; s32 var_r19; s32 phi_r23; s32 phi_r26; @@ -289,19 +210,19 @@ void fn_1_2FC(omObjData* arg0) { temp_f24 = lbl_1_data_18B4[temp_r31->unk00][2] - arg0->trans.z; sp14C = 270.0 + atan2d(temp_f25, temp_f24) - CRot.y; sp148 = sqrtf(temp_f25 * temp_f25 + temp_f24 * temp_f24); - sp148 = (sp148 > 100.0f) ? 72.0f - : (sp148 < 12.0f) ? 0.0f - : (72.0f * (sp148 / 100.0f)); + sp148 = (sp148 > 100.0f) ? 72.0f : (sp148 < 12.0f) ? 0.0f : (72.0f * (sp148 / 100.0f)); sp154 = sp148 * cosd(sp14C); sp150 = sp148 * sind(sp14C); if (sp148 == 0.0f) { temp_r31->unk20 = 0; } - } else if (temp_r31->unk20 == 1) { + } + else if (temp_r31->unk20 == 1) { if (temp_r31->unk0C != -1) { sp154 = HuPadStkX[temp_r31->unk0C]; sp150 = HuPadStkY[temp_r31->unk0C]; - } else { + } + else { float sp238[7] = { 0 }; float sp21C[7] = { 0 }; float sp1EC[] = { -400.0f, -550.0f, -700.0f, -800.0f }; @@ -319,20 +240,22 @@ void fn_1_2FC(omObjData* arg0) { sp144 = (i < 10) ? (i * 4 + 43 + phi_r23) : ((i - 10) * 10 + 83 + phi_r23); if (temp_r28->unk04 != 0 && !(temp_r28->unk14 < 0.0f)) { Hu3DModelObjPosGet(lbl_1_bss_38->model[sp144], lbl_1_data_1828[temp_r28->unk00], &sp1D0); - phi_r26 = (s32) (300.0f + sp1D0.x + 2000.0f) / 100 - 20; + phi_r26 = (s32)(300.0f + sp1D0.x + 2000.0f) / 100 - 20; phi_r26--; for (phi_r22 = 0; phi_r22 < 3; phi_r26++, phi_r22++) { if (phi_r26 >= 0 && phi_r26 < 7 && arg0->trans.z + 50.0f >= sp1D0.z - lbl_1_rodata_10[temp_r28->unk00] - lbl_1_rodata_70[temp_r28->unk00] - && sp1D0.x - lbl_1_rodata_10[temp_r28->unk00] - lbl_1_rodata_70[temp_r28->unk00] - 50.0f < (phi_r26 - 3) * 100 && sp1D0.x + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00] + 50.0f > (phi_r26 - 3) * 100) - { + && sp1D0.x - lbl_1_rodata_10[temp_r28->unk00] - lbl_1_rodata_70[temp_r28->unk00] - 50.0f < (phi_r26 - 3) * 100 + && sp1D0.x + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00] + 50.0f > (phi_r26 - 3) * 100) { if (temp_r28->unk00 < 10) { if (sp238[phi_r26] < sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00]) { sp238[phi_r26] = sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00]; } - } else { + } + else { if (sp21C[phi_r26] < sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00]) { - sp21C[phi_r26] = sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00] + (temp_r28->unk00 < 11); + sp21C[phi_r26] = sp1D0.z + lbl_1_rodata_10[temp_r28->unk00] + lbl_1_rodata_70[temp_r28->unk00] + + (temp_r28->unk00 < 11); } } } @@ -340,13 +263,12 @@ void fn_1_2FC(omObjData* arg0) { } } } - phi_r26 = (s32) (300.0f + arg0->trans.x + 2000.0f) / 100 - 20; - phi_r26 = (phi_r26 < 0) ? 0 - : (phi_r26 >= 7) ? 6 - : phi_r26; + phi_r26 = (s32)(300.0f + arg0->trans.x + 2000.0f) / 100 - 20; + phi_r26 = (phi_r26 < 0) ? 0 : (phi_r26 >= 7) ? 6 : phi_r26; for (i = 0, phi_r22 = phi_r26; i < 7; i++) { var_r19 = ((temp_r31->unk00 / 2) % 2 == 0) ? i : (6 - i); - if (sp21C[phi_r22] - 60.0 * fabs(phi_r22 - phi_r26) < sp21C[var_r19] - 60.0 * fabs(var_r19 - phi_r26) && sp238[var_r19] < sp21C[var_r19]) { + if (sp21C[phi_r22] - 60.0 * fabs(phi_r22 - phi_r26) < sp21C[var_r19] - 60.0 * fabs(var_r19 - phi_r26) + && sp238[var_r19] < sp21C[var_r19]) { phi_r22 = var_r19; } } @@ -359,8 +281,11 @@ void fn_1_2FC(omObjData* arg0) { } sp140 = arg0->trans.z - (temp_r31->unk00 == 0 ? -100.0f : 700.0f); sp13C = (((sp238[phi_r22] > sp140 - 400.0f || sp140 > 550.0f) ? phi_r23 - : (sp140 > 500.0f) ? ((sp140 - 500.0f) / 50.0f) * phi_r23 + (1.0f - (sp140 - 500.0f) / 50.0f) * phi_r22 - : phi_r22) - 3.0f) * 100.0f - arg0->trans.x; + : (sp140 > 500.0f) ? ((sp140 - 500.0f) / 50.0f) * phi_r23 + (1.0f - (sp140 - 500.0f) / 50.0f) * phi_r22 + : phi_r22) + - 3.0f) + * 100.0f + - arg0->trans.x; { float sp1C4[] = { -21.0f, 0.0f, 15.0f }; float sp1B8[] = { 60.0f, 65.0f, 53.0f }; @@ -370,23 +295,18 @@ void fn_1_2FC(omObjData* arg0) { var_r18 = (temp_r31->unk14 / 5) % 3; var_r18 = (temp_r31->unk00 == 0) ? (arg0->trans.z < 200.0f ? 0 : 1) : 2; sp13C /= 20.0f; - sp13C = (sp13C < -1.0f) ? sp13C - : (sp13C > 1.0f) ? 1.0f - : sp13C; + sp13C = (sp13C < -1.0f) ? sp13C : (sp13C > 1.0f) ? 1.0f : sp13C; sp138 = (sp13C < 0.0f) ? -sp13C : sp13C; sp134 = 1.0f - sp138; - sp154 = (sp13C < 0.0f) - ? (36.0f * sp134 + sp138 * sp1C4[var_r18]) - : (36.0f * sp134 + sp138 * sp1B8[var_r18]); - sp150 = (sp13C < 0.0f) - ? (42.0f * sp134 + sp138 * sp1AC[var_r18]) - : (42.0f * sp134 + sp138 * sp1A0[var_r18]); + sp154 = (sp13C < 0.0f) ? (36.0f * sp134 + sp138 * sp1C4[var_r18]) : (36.0f * sp134 + sp138 * sp1B8[var_r18]); + sp150 = (sp13C < 0.0f) ? (42.0f * sp134 + sp138 * sp1AC[var_r18]) : (42.0f * sp134 + sp138 * sp1A0[var_r18]); } temp_f23 = temp_r31->unk38 - sp154; temp_f22 = temp_r31->unk3C - sp150; if (sqrtf(temp_f23 * temp_f23 + temp_f22 * temp_f22) > 50.0f) { temp_r31->unk40++; - } else { + } + else { temp_r31->unk40 = 0; } if (temp_r31->unk40 >= 2) { @@ -404,40 +324,39 @@ void fn_1_2FC(omObjData* arg0) { sp12C = arg0->trans.z; phi_r25 = 4; arg0->trans.z += 9.375; - if (temp_r31->unk00 == 0 - && lbl_1_data_1900 != -1 - && arg0->trans.z > (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) + 50.0f - && sp12C <= (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) + 50.0f) - { + if (temp_r31->unk00 == 0 && lbl_1_data_1900 != -1 && arg0->trans.z > (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) + 50.0f + && sp12C <= (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) + 50.0f) { HuAudFXStop(lbl_1_data_1900); lbl_1_data_1900 = -1; } temp_r31->unk30 -= 1.0f; - arg0->trans.y += (arg0->trans.z > (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) - 50.0f) - ? temp_r31->unk30 : 0.0f; - if (temp_r31->unk00 == 0 && lbl_1_data_1900 == -1 && arg0->trans.z > 670.0f && arg0->trans.z < 1450.0f && arg0->trans.y == 0.0f && sp130 > 0.0f) { + arg0->trans.y += (arg0->trans.z > (arg0->trans.y > 0.0f ? 620.0f : 1400.0f) - 50.0f) ? temp_r31->unk30 : 0.0f; + if (temp_r31->unk00 == 0 && lbl_1_data_1900 == -1 && arg0->trans.z > 670.0f && arg0->trans.z < 1450.0f && arg0->trans.y == 0.0f + && sp130 > 0.0f) { lbl_1_data_1900 = HuAudFXPlay(0x612); } if (arg0->trans.z < 1400.0f && arg0->trans.y <= 0.0f) { arg0->trans.y = 0.0f; temp_r31->unk30 = 0.0f; } - arg0->rot.y += (arg0->rot.y < 0.0f) ? 360 - : (arg0->rot.y > 360.0f) ? -360 : 0; + arg0->rot.y += (arg0->rot.y < 0.0f) ? 360 : (arg0->rot.y > 360.0f) ? -360 : 0; arg0->rot.y = (arg0->rot.y > 140.0f && arg0->rot.y < 220.0f) ? 180.0f - : (arg0->rot.y < 180.0f) ? (40.0f + arg0->rot.y) - : (arg0->rot.y > 180.0f) ? (arg0->rot.y - 40.0f) - : arg0->trans.y;; + : (arg0->rot.y < 180.0f) ? (40.0f + arg0->rot.y) + : (arg0->rot.y > 180.0f) ? (arg0->rot.y - 40.0f) + : arg0->trans.y; + ; if (lbl_1_bss_C % 4 < 3) { Hu3DModelAttrReset(arg0->model[0], 1); - } else { + } + else { Hu3DModelAttrSet(arg0->model[0], 1); } if (arg0->trans.y < -500.0f) { temp_r31->unk20 = 3; Hu3DModelAttrSet(arg0->model[0], 1); } - } else if (temp_r31->unk20 != 3 && temp_r31->unk20 != 4) { + } + else if (temp_r31->unk20 != 3 && temp_r31->unk20 != 4) { if (temp_r31->unk20 == 5) { if (temp_r31->unk24 == 0) { phi_r25 = 3; @@ -453,7 +372,8 @@ void fn_1_2FC(omObjData* arg0) { if (temp_r31->unk24 >= 31 && temp_r31->unk24 <= 38) { arg0->trans.x -= 150.0 * -sind(arg0->rot.y) / 7.0; arg0->trans.z -= 150.0 * -cosd(arg0->rot.y) / 7.0; - } else { + } + else { arg0->trans.x = lbl_1_data_F0[9][temp_r31->unk00].unk0C; arg0->trans.y = (temp_r31->unk00 == 0) ? 300 : 0; arg0->trans.z = lbl_1_data_F0[9][temp_r31->unk00].unk14; @@ -464,15 +384,16 @@ void fn_1_2FC(omObjData* arg0) { if (temp_r31->unk24 == 38) { temp_r31->unk20 = 1; } - } else { + } + else { float temp_f31 = 0.25 * sp154; float temp_f30 = 0.25 * -sp150; Vec sp194 = { 0.0f, 0.0f, 0.0f }; sp194.x = temp_f31; sp194.z = temp_f30; - PSMTXRotRad(sp254, 'y', MTXDegToRad(CRot.y)); - PSMTXMultVec(sp254, &sp194, &sp194); + MTXRotRad(sp254, 'y', MTXDegToRad(CRot.y)); + MTXMultVec(sp254, &sp194, &sp194); temp_f31 = sp194.x; temp_f30 = sp194.z; sp158 = sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30); @@ -480,7 +401,8 @@ void fn_1_2FC(omObjData* arg0) { if (sp158 < 10.0f) { temp_r31->unk2C = temp_f31; temp_r31->unk34 += temp_f30; - } else { + } + else { temp_f31 /= sp158; temp_f30 /= sp158; sp158 = 10.0f; @@ -492,11 +414,13 @@ void fn_1_2FC(omObjData* arg0) { if (temp_r31->unk20 == 1) { if (temp_r31->unk28 >= 8.0f) { phi_r25 = 2; - } else { + } + else { phi_r25 = 1; } } - } else if (temp_r31->unk20 == 1) { + } + else if (temp_r31->unk20 == 1) { phi_r25 = 0; } if (lbl_1_bss_34 == 1005 && (temp_r31->unk20 == 1 || temp_r31->unk20 == 0)) { @@ -504,10 +428,7 @@ void fn_1_2FC(omObjData* arg0) { Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); temp_r31->unk20 = 0; if (lbl_1_bss_8 == 1.0f && lbl_1_data_18F4[temp_r31->unk00 == 0 ? 0 : 1] > 0) { - s32 sp1FC[] = { - 0x122, 0x162, 0x1A2, 0x1E2, - 0x222, 0x262, 0x2A2, 0x2E2 - }; + s32 sp1FC[] = { 0x122, 0x162, 0x1A2, 0x1E2, 0x222, 0x262, 0x2A2, 0x2E2 }; HuAudFXPlay(sp1FC[temp_r31->unk08]); } @@ -540,28 +461,26 @@ void fn_1_2FC(omObjData* arg0) { } if (lbl_1_bss_34 > 1001) { for (phi_r24 = 0; phi_r24 < 12; phi_r24++) { - if (phi_r24 == 9 && lbl_1_bss_34 <= 1001) { - } + if (phi_r24 == 9 && lbl_1_bss_34 <= 1001) { } for (phi_r20 = 0; phi_r20 < (phi_r24 < 10 ? 4 : 10); phi_r20++) { temp_r29 = &lbl_1_data_F0[phi_r24][phi_r20]; - sp124 = (phi_r24 < 10) ? (phi_r24 * 4 + 43 + phi_r20) - : ((phi_r24 - 10) * 10 + 83 + phi_r20); + sp124 = (phi_r24 < 10) ? (phi_r24 * 4 + 43 + phi_r20) : ((phi_r24 - 10) * 10 + 83 + phi_r20); if (temp_r29->unk04 != 0 && temp_r29->unk2C <= 0) { Vec sp188; Hu3DModelObjPosGet(lbl_1_bss_38->model[sp124], lbl_1_data_1828[temp_r29->unk00], &sp188); if (((temp_r29->unk04 == 3 || (temp_r29->unk04 == 4 && sp188.y >= 250.0f)) && temp_r31->unk00 == 0) - || (((temp_r29->unk04 == 4 && sp188.y < 250.0f) || temp_r29->unk04 == 5 || temp_r29->unk04 == 6) && temp_r31->unk00 != 0)) - { + || (((temp_r29->unk04 == 4 && sp188.y < 250.0f) || temp_r29->unk04 == 5 || temp_r29->unk04 == 6) + && temp_r31->unk00 != 0)) { sp11C = sp188.x; sp118 = sp188.z; if (lbl_1_rodata_40[temp_r29->unk00] > 0.0f || lbl_1_rodata_70[temp_r29->unk00] > 0.0f) { sp11C = (arg0->trans.x < sp11C - lbl_1_rodata_40[temp_r29->unk00]) ? (sp11C - lbl_1_rodata_40[temp_r29->unk00]) - : (arg0->trans.x > sp11C + lbl_1_rodata_40[temp_r29->unk00]) ? (sp11C + lbl_1_rodata_40[temp_r29->unk00]) - : arg0->trans.x; + : (arg0->trans.x > sp11C + lbl_1_rodata_40[temp_r29->unk00]) ? (sp11C + lbl_1_rodata_40[temp_r29->unk00]) + : arg0->trans.x; sp118 = (arg0->trans.z < sp118 - lbl_1_rodata_70[temp_r29->unk00]) ? (sp118 - lbl_1_rodata_70[temp_r29->unk00]) - : (arg0->trans.z > sp118 + lbl_1_rodata_70[temp_r29->unk00]) ? (sp118 + lbl_1_rodata_70[temp_r29->unk00]) - : arg0->trans.z; + : (arg0->trans.z > sp118 + lbl_1_rodata_70[temp_r29->unk00]) ? (sp118 + lbl_1_rodata_70[temp_r29->unk00]) + : arg0->trans.z; } temp_f26 = sp11C - arg0->trans.x; phi_f28 = sp118 - arg0->trans.z; @@ -575,7 +494,8 @@ void fn_1_2FC(omObjData* arg0) { phi_f28 *= (50.0f + lbl_1_rodata_10[temp_r29->unk00]) / sp120; arg0->trans.x = sp11C - temp_f26; arg0->trans.z = sp118 - phi_f28; - } else { + } + else { temp_r29->unk04 = 0; lbl_1_data_18F4[temp_r31->unk00 == 0 ? 0 : 1] += (phi_r24 == 10 ? 1 : 5); CharModelCoinEffectCreate(-1, &sp188); @@ -653,20 +573,20 @@ void fn_1_2FC(omObjData* arg0) { phi_r25 = 0; } arg0->trans.x = lbl_1_data_F0[9][sp114].unk0C; - arg0->trans.z = (lbl_1_bss_8 > 163.0f) ? arg0->trans.z - : (lbl_1_bss_8 > 155.0f) ? (arg0->trans.z - 18.75) - : lbl_1_data_F0[9][sp114].unk14; + arg0->trans.z = (lbl_1_bss_8 > 163.0f) ? arg0->trans.z : (lbl_1_bss_8 > 155.0f) ? (arg0->trans.z - 18.75) : lbl_1_data_F0[9][sp114].unk14; } if (temp_r31->unk1C >= 0) { phi_r25 = temp_r31->unk1C; } if (phi_r25 >= 0 && phi_r25 != temp_r31->unk18) { - Hu3DMotionShiftSet(arg0->model[0], arg0->motion[phi_r25], 0.0f, lbl_1_data_E7[phi_r25], (lbl_1_data_E0[phi_r25] != 0) ? HU3D_MOTATTR_NONE : HU3D_MOTATTR_LOOP); + Hu3DMotionShiftSet(arg0->model[0], arg0->motion[phi_r25], 0.0f, lbl_1_data_E7[phi_r25], + (lbl_1_data_E0[phi_r25] != 0) ? HU3D_MOTATTR_NONE : HU3D_MOTATTR_LOOP); temp_r31->unk18 = phi_r25; } } -s32 fn_1_34BC(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { +s32 fn_1_34BC(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) +{ Vec sp1C; float var_f27; float var_f28; @@ -675,7 +595,7 @@ s32 fn_1_34BC(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { float temp_f30; float var_f31; float sp18; - StructDataF0* temp_r31; + StructDataF0 *temp_r31; s32 var_r24; s32 i; s32 j; @@ -692,27 +612,19 @@ s32 fn_1_34BC(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { var_f25 = 50.0f + lbl_1_rodata_70[temp_r31->unk00]; var_f26 = 50.0f + lbl_1_rodata_70[temp_r31->unk00]; if (temp_r31->unk04 == 3) { - float sp28[][12] = { - { - -25.0f, -25.0f, -25.0f, - -6.6875f, -6.6875f, -6.6875f, - 62.765625f, 62.765625f, 62.765625f, - 51.99469f, 76.875f, 45.0f - }, - { - -27.647583f, -27.647583f, -27.647583f, - -9.64325f, -9.64325f, -9.64325f, - 60.49022f, 60.49022f, 60.49022f, - 51.99469f, 76.875f, 45.0f - } - }; + float sp28[][12] = { { -25.0f, -25.0f, -25.0f, -6.6875f, -6.6875f, -6.6875f, 62.765625f, 62.765625f, 62.765625f, 51.99469f, + 76.875f, 45.0f }, + { -27.647583f, -27.647583f, -27.647583f, -9.64325f, -9.64325f, -9.64325f, 60.49022f, 60.49022f, 60.49022f, 51.99469f, + 76.875f, 45.0f } }; var_f28 += sp28[temp_r31->unk08 == 0 ? 0 : 1][temp_r31->unk00]; var_f25 += 50.0f; var_f26 += 50.0f; - } else if (temp_r31->unk04 == 5 && temp_r31->unk08 == 0) { + } + else if (temp_r31->unk04 == 5 && temp_r31->unk08 == 0) { var_f28 += lbl_1_rodata_130[temp_r31->unk00]; - } else if (temp_r31->unk04 == 1) { + } + else if (temp_r31->unk04 == 1) { var_f27 = (temp_r31->unk0C < 0.0f ? -1 : 1) * 321; var_f28 = 880.0f - lbl_1_bss_0 * (100 - temp_r31->unk08); } @@ -721,11 +633,9 @@ s32 fn_1_34BC(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { } if (lbl_1_rodata_40[temp_r31->unk00] > 0.0f || var_f25 > 0.0f || var_f26 > 0.0f) { var_f27 = (arg0 < var_f27 - lbl_1_rodata_40[temp_r31->unk00]) ? (var_f27 - lbl_1_rodata_40[temp_r31->unk00]) - : (arg0 > var_f27 + lbl_1_rodata_40[temp_r31->unk00]) ? (var_f27 + lbl_1_rodata_40[temp_r31->unk00]) - : arg0; - var_f28 = (arg1 < var_f28 - var_f25) ? (var_f28 - var_f25) - : (arg1 > var_f28 + var_f26) ? (var_f28 + var_f26) - : arg1; + : (arg0 > var_f27 + lbl_1_rodata_40[temp_r31->unk00]) ? (var_f27 + lbl_1_rodata_40[temp_r31->unk00]) + : arg0; + var_f28 = (arg1 < var_f28 - var_f25) ? (var_f28 - var_f25) : (arg1 > var_f28 + var_f26) ? (var_f28 + var_f26) : arg1; } temp_f30 = var_f27 - arg0; var_f31 = var_f28 - arg1; @@ -743,8 +653,9 @@ s32 fn_1_34BC(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { return 0; } -void fn_1_3B74(omObjData* arg0) { - StructBss3CData* sp354[4]; +void fn_1_3B74(omObjData *arg0) +{ + StructBss3CData *sp354[4]; Vec sp348; s32 var_r20; s32 var_r19; @@ -773,7 +684,7 @@ void fn_1_3B74(omObjData* arg0) { float temp_f29; float temp_f30; float temp_f31; - StructDataF0* temp_r31; + StructDataF0 *temp_r31; s32 var_r21; s32 var_r28; s32 var_r27; @@ -786,10 +697,11 @@ void fn_1_3B74(omObjData* arg0) { } lbl_1_bss_C++; lbl_1_bss_0 = (lbl_1_bss_34 <= 1002) ? 1.5 - : (lbl_1_bss_34 == 1003) ? (7.5 * (lbl_1_bss_8 > 120.0f ? 1.0 : (0.2 + 0.8 * (lbl_1_bss_8 / 120.0)))) - : 0.0; - lbl_1_bss_4 = (lbl_1_bss_34 < 1005 && sp354[0]->unk20 >= 2 && sp354[0]->unk20 <= 5 - && !(lbl_1_bss_34 == 1003 && lbl_1_bss_8 <= 120.0f)) ? 7.5 : lbl_1_bss_0; + : (lbl_1_bss_34 == 1003) ? (7.5 * (lbl_1_bss_8 > 120.0f ? 1.0 : (0.2 + 0.8 * (lbl_1_bss_8 / 120.0)))) + : 0.0; + lbl_1_bss_4 = (lbl_1_bss_34 < 1005 && sp354[0]->unk20 >= 2 && sp354[0]->unk20 <= 5 && !(lbl_1_bss_34 == 1003 && lbl_1_bss_8 <= 120.0f)) + ? 7.5 + : lbl_1_bss_0; Hu3DMotionSpeedSet(arg0->model[1], 1.5 * lbl_1_bss_4 / 7.5); Hu3DMotionSpeedSet(arg0->model[3], 1.5 * lbl_1_bss_0 / 7.5); if (lbl_1_data_18B0 != -1) { @@ -798,9 +710,7 @@ void fn_1_3B74(omObjData* arg0) { HuAudFXVolSet(lbl_1_data_18B0, temp_f21 <= 0.001 ? 0 : 127); } if (lbl_1_bss_34 <= 1001) { - temp_f31 = (lbl_1_bss_34 == 1000 || lbl_1_bss_8 < 60.0f) ? 0.0 - : (lbl_1_bss_8 < 120.0f) ? (lbl_1_bss_8 - 60.0f) / 60.0 - : 1.0; + temp_f31 = (lbl_1_bss_34 == 1000 || lbl_1_bss_8 < 60.0f) ? 0.0 : (lbl_1_bss_8 < 120.0f) ? (lbl_1_bss_8 - 60.0f) / 60.0 : 1.0; temp_f31 = 1.0f - temp_f31; temp_f31 *= temp_f31; temp_f31 = 1.0f - temp_f31; @@ -844,15 +754,16 @@ void fn_1_3B74(omObjData* arg0) { var_r17 = sp22C + (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 38 && lbl_1_bss_28 > 120); sp228 = (lbl_1_bss_34 == 1003 && lbl_1_bss_C % 60 == 0) ? (rand8() % 2 + 2) : 0; while (var_r19 > 0 || var_r18 > 0 || var_r17 > 0 || sp228 > 0) { - var_r27 = (rand8() % 2 == 0) - ? ((var_r17 != 0) ? 3 - : (sp228 != 0) ? 4 - : (var_r19 != 0) ? 1 - : (var_r18 != 0) ? 2 : 0) - : ((var_r17 != 0) ? 3 - : (var_r19 != 0) ? 1 - : (sp228 != 0) ? 4 - : (var_r18 != 0) ? 2 : 0); + var_r27 = (rand8() % 2 == 0) ? ((var_r17 != 0) ? 3 + : (sp228 != 0) ? 4 + : (var_r19 != 0) ? 1 + : (var_r18 != 0) ? 2 + : 0) + : ((var_r17 != 0) ? 3 + : (var_r19 != 0) ? 1 + : (sp228 != 0) ? 4 + : (var_r18 != 0) ? 2 + : 0); sp224++; if (sp224 > 8) { var_r19 -= (var_r27 == 1); @@ -860,18 +771,28 @@ void fn_1_3B74(omObjData* arg0) { var_r17 -= (var_r27 == 3); sp228 -= (var_r27 == 4); sp224 = 0; - } else if (var_r27 == 1 || var_r27 == 2 || var_r27 == 3 || var_r27 == 4) { + } + else if (var_r27 == 1 || var_r27 == 2 || var_r27 == 3 || var_r27 == 4) { var_r28 = (var_r27 != 4) ? (rand8() % 9) : 10; if (var_r27 == 1 && var_r20 != 0) { var_r28 = 9; i = 0; - } else if (var_r27 == 3 && sp22C != 0) { + } + else if (var_r27 == 3 && sp22C != 0) { var_r28 = 9; - i = (sp354[(lbl_1_bss_C % 3) + 1]->unk20 == 3 && (lbl_1_data_F0[9][lbl_1_bss_C % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) ? (lbl_1_bss_C % 3 + 1) - : (sp354[(lbl_1_bss_C + 1) % 3 + 1]->unk20 == 3 && (lbl_1_data_F0[9][(lbl_1_bss_C + 1) % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) ? ((lbl_1_bss_C + 1) % 3 + 1) - : (sp354[(lbl_1_bss_C + 2) % 3 + 1]->unk20 == 3 && (lbl_1_data_F0[9][(lbl_1_bss_C + 2) % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) ? ((lbl_1_bss_C + 2) % 3 + 1) : 0; - } else { - if (var_r28 == 10 && (lbl_1_bss_28 / 60) / 15 + 1 <= 2 - lbl_1_bss_14 && rand8() % (((lbl_1_bss_28 / 60 - (1 - lbl_1_bss_14) * 15) * 3) + 1) == 0) { + i = (sp354[(lbl_1_bss_C % 3) + 1]->unk20 == 3 && (lbl_1_data_F0[9][lbl_1_bss_C % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) + ? (lbl_1_bss_C % 3 + 1) + : (sp354[(lbl_1_bss_C + 1) % 3 + 1]->unk20 == 3 + && (lbl_1_data_F0[9][(lbl_1_bss_C + 1) % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) + ? ((lbl_1_bss_C + 1) % 3 + 1) + : (sp354[(lbl_1_bss_C + 2) % 3 + 1]->unk20 == 3 + && (lbl_1_data_F0[9][(lbl_1_bss_C + 2) % 3 + 1].unk04 == 0 || lbl_1_bss_34 != 1003)) + ? ((lbl_1_bss_C + 2) % 3 + 1) + : 0; + } + else { + if (var_r28 == 10 && (lbl_1_bss_28 / 60) / 15 + 1 <= 2 - lbl_1_bss_14 + && rand8() % (((lbl_1_bss_28 / 60 - (1 - lbl_1_bss_14) * 15) * 3) + 1) == 0) { var_r28 = 11; } for (i = 0; i < (var_r27 != 4 ? 4 : 10); i++) { @@ -883,53 +804,45 @@ void fn_1_3B74(omObjData* arg0) { continue; } } - lbl_1_data_F0[var_r28][i].unk0C = (var_r27 != 3) - ? (rand8() % 7 - 3) * 100 - : ((rand8() % 2) * 2 - 1) * 1595; + lbl_1_data_F0[var_r28][i].unk0C = (var_r27 != 3) ? (rand8() % 7 - 3) * 100 : ((rand8() % 2) * 2 - 1) * 1595; if (i == 0 && lbl_1_bss_34 >= 1004 && var_r28 == 9) { lbl_1_data_F0[var_r28][i].unk0C = 0.0f; } - lbl_1_data_F0[var_r28][i].unk10 = (var_r27 == 1) ? 300 - : (var_r27 == 2) ? 0 - : (var_r27 == 3) ? 500 - : (var_r27 == 4) ? 300 : 0; - lbl_1_data_F0[var_r28][i].unk14 = (var_r27 == 1) ? -450 - : (var_r27 == 2) ? -450 - : (var_r27 == 3) ? 105 - : (var_r27 == 4) ? -150 : 0; + lbl_1_data_F0[var_r28][i].unk10 = (var_r27 == 1) ? 300 : (var_r27 == 2) ? 0 : (var_r27 == 3) ? 500 : (var_r27 == 4) ? 300 : 0; + lbl_1_data_F0[var_r28][i].unk14 = (var_r27 == 1) ? -450 : (var_r27 == 2) ? -450 : (var_r27 == 3) ? 105 : (var_r27 == 4) ? -150 : 0; lbl_1_data_F0[var_r28][i].unk14 += (var_r27 == 1) ? -(var_r28 <= 8 ? 0 : 0) - : (var_r27 == 2) ? -(var_r28 <= 8 ? (var_r28 / 3) * 80 : 0) - : (var_r27 == 4) ? -50 : 0; - lbl_1_data_F0[var_r28][i].unk14 += (var_r27 == 1) - ? ((var_r28 <= 2) ? 315.0 - : (var_r28 <= 5) ? 296.6875 - : (var_r28 <= 8) ? 227.234375 - : (var_r28 == 9) ? 200 : 0) : 0.0; + : (var_r27 == 2) ? -(var_r28 <= 8 ? (var_r28 / 3) * 80 : 0) + : (var_r27 == 4) ? -50 + : 0; + lbl_1_data_F0[var_r28][i].unk14 += (var_r27 == 1) ? ((var_r28 <= 2) ? 315.0 + : (var_r28 <= 5) ? 296.6875 + : (var_r28 <= 8) ? 227.234375 + : (var_r28 == 9) ? 200 + : 0) + : 0.0; if (var_r27 == 1 || var_r27 == 4) { - float sp3C4[] = { - -25.0f, -25.0f, -25.0f, - -6.6875f, -6.6875f, -6.6875f, - 62.765625f, 62.765625f, 62.765625f, - 51.99469f, 76.875f, 45.0f, - -27.647583f, -27.647583f, -27.647583f, - -9.64325f, -9.64325f, -9.64325f, - 60.49022f, 60.49022f, 60.49022f, - 51.99469f, 76.875f, 45.0f - }; + float sp3C4[] = { -25.0f, -25.0f, -25.0f, -6.6875f, -6.6875f, -6.6875f, 62.765625f, 62.765625f, 62.765625f, 51.99469f, 76.875f, 45.0f, + -27.647583f, -27.647583f, -27.647583f, -9.64325f, -9.64325f, -9.64325f, 60.49022f, 60.49022f, 60.49022f, 51.99469f, 76.875f, + 45.0f }; var_f25 = lbl_1_data_F0[var_r28][i].unk0C; var_f24 = sp3C4[var_r28] + lbl_1_data_F0[var_r28][i].unk14; - } else if (var_r27 == 2) { + } + else if (var_r27 == 2) { var_f25 = lbl_1_data_F0[var_r28][i].unk0C; var_f24 = lbl_1_rodata_130[var_r28] + lbl_1_data_F0[var_r28][i].unk14; - } else if (var_r27 == 3) { + } + else if (var_r27 == 3) { var_f25 = (lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? -335 : 335; var_f24 = 830.0f - 94.0f * lbl_1_bss_0; - } else { + } + else { var_f25 = lbl_1_data_F0[var_r28][i].unk0C; var_f24 = lbl_1_data_F0[var_r28][i].unk14; } - if (fn_1_34BC(var_f25, var_f24, lbl_1_rodata_10[lbl_1_data_F0[var_r28][i].unk00] + lbl_1_rodata_40[lbl_1_data_F0[var_r28][i].unk00], var_r28, 0) != 0) { + if (fn_1_34BC( + var_f25, var_f24, lbl_1_rodata_10[lbl_1_data_F0[var_r28][i].unk00] + lbl_1_rodata_40[lbl_1_data_F0[var_r28][i].unk00], var_r28, 0) + != 0) { continue; } if (var_r27 == 3 && lbl_1_data_18A4[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 0 : 1] > 0) { @@ -937,16 +850,12 @@ void fn_1_3B74(omObjData* arg0) { } if (var_r27 == 4) { for (var_r21 = 0; var_r21 < 10; var_r21++) { - if (lbl_1_data_F0[10][var_r21].unk04 != 0 - && fabs(lbl_1_data_F0[var_r28][i].unk14 - lbl_1_data_F0[10][var_r21].unk14) <= 100.0 - && fabs(lbl_1_data_F0[var_r28][i].unk0C - lbl_1_data_F0[10][var_r21].unk0C) <= 200.0) - { + if (lbl_1_data_F0[10][var_r21].unk04 != 0 && fabs(lbl_1_data_F0[var_r28][i].unk14 - lbl_1_data_F0[10][var_r21].unk14) <= 100.0 + && fabs(lbl_1_data_F0[var_r28][i].unk0C - lbl_1_data_F0[10][var_r21].unk0C) <= 200.0) { break; } - if (lbl_1_data_F0[11][var_r21].unk04 != 0 - && fabs(lbl_1_data_F0[var_r28][i].unk14 - lbl_1_data_F0[11][var_r21].unk14) <= 100.0 - && fabs(lbl_1_data_F0[var_r28][i].unk0C - lbl_1_data_F0[11][var_r21].unk0C) <= 200.0) - { + if (lbl_1_data_F0[11][var_r21].unk04 != 0 && fabs(lbl_1_data_F0[var_r28][i].unk14 - lbl_1_data_F0[11][var_r21].unk14) <= 100.0 + && fabs(lbl_1_data_F0[var_r28][i].unk0C - lbl_1_data_F0[11][var_r21].unk0C) <= 200.0) { break; } } @@ -961,10 +870,7 @@ void fn_1_3B74(omObjData* arg0) { lbl_1_bss_14++; } lbl_1_data_F0[var_r28][i].unk00 = var_r28; - lbl_1_data_F0[var_r28][i].unk04 = (var_r27 == 1) ? 3 - : (var_r27 == 2) ? 5 - : (var_r27 == 3) ? 1 - : (var_r27 == 4) ? 3 : 0; + lbl_1_data_F0[var_r28][i].unk04 = (var_r27 == 1) ? 3 : (var_r27 == 2) ? 5 : (var_r27 == 3) ? 1 : (var_r27 == 4) ? 3 : 0; lbl_1_data_F0[var_r28][i].unk08 = 0; lbl_1_data_F0[var_r28][i].unk2C = 0; lbl_1_data_F0[var_r28][i].unk18 = lbl_1_data_F0[var_r28][i].unk1C = lbl_1_data_F0[var_r28][i].unk20 = 0.0f; @@ -974,13 +880,15 @@ void fn_1_3B74(omObjData* arg0) { Hu3DModelAttrSet(arg0->model[sp220], HU3D_MOTATTR_PAUSE); Hu3DModelAttrReset(arg0->model[sp220], 1); Hu3DModelRotSet(arg0->model[sp220], 0.0f, 0.0f, 0.0f); - } else { + } + else { Hu3DModelAttrReset(arg0->model[i + (var_r28 == 10 ? 83 : 93)], 1); } if (var_r27 == 1 && var_r20 != 0) { var_r20--; sp354[0]->unk20 = 4; - } else if (var_r27 == 3 && sp22C != 0) { + } + else if (var_r27 == 3 && sp22C != 0) { sp22C--; sp354[i]->unk20 = 4; } @@ -988,7 +896,9 @@ void fn_1_3B74(omObjData* arg0) { lbl_1_data_18A4[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 0 : 1] = 85; Hu3DMotionTimeSet(arg0->model[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 6 : 5], 9.0f); if (var_r28 == 9 && lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk00 < 3) { - lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk04[lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk00] = 0.0f; + lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6] + .unk04[lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk00] + = 0.0f; lbl_1_bss_54[(lbl_1_data_F0[var_r28][i].unk0C < 0.0f) ? 7 : 6].unk00++; } } @@ -1008,29 +918,24 @@ void fn_1_3B74(omObjData* arg0) { for (i = 0; i < 12; i++) { for (j = 0; j < (i < 10 ? 4 : 10); j++) { temp_r31 = &lbl_1_data_F0[i][j]; - var_r25 = (i < 10) - ? (i * 4 + 43 + j) - : ((i - 10) * 10 + 83 + j); + var_r25 = (i < 10) ? (i * 4 + 43 + j) : ((i - 10) * 10 + 83 + j); sp348.x = sp348.y = sp348.z = 0.0f; if (temp_r31->unk04 == 0) { Hu3DModelAttrSet(arg0->model[var_r25], 1); - } else { + } + else { temp_r31->unk08++; temp_r31->unk24 += (temp_r31->unk00 == 10) ? 0 : 0; - temp_r31->unk24 += (temp_r31->unk24 < 0.0f) ? 360 - : (temp_r31->unk24 > 360.0f) ? -360 : 0; + temp_r31->unk24 += (temp_r31->unk24 < 0.0f) ? 360 : (temp_r31->unk24 > 360.0f) ? -360 : 0; Hu3DModelObjPosGet(arg0->model[var_r25], lbl_1_data_1828[temp_r31->unk00], &sp348); switch (temp_r31->unk04) { case 3: case 5: case 6: - if (temp_r31->unk00 >= 3 && temp_r31->unk00 >= 9 && temp_r31->unk04 == 3 - && temp_r31->unk14 < -120.0f && temp_r31->unk14 + lbl_1_bss_4 >= -120.0f) - { + if (temp_r31->unk00 >= 3 && temp_r31->unk00 >= 9 && temp_r31->unk04 == 3 && temp_r31->unk14 < -120.0f + && temp_r31->unk14 + lbl_1_bss_4 >= -120.0f) { sp218 = (500.0f + temp_r31->unk0C) / 100.0f; - sp218 = (sp218 < 0) ? 0 - : (sp218 >= 11) ? 10 - : sp218; + sp218 = (sp218 < 0) ? 0 : (sp218 >= 11) ? 10 : sp218; lbl_1_data_1878[sp218] = 15; Hu3DMotionShiftSet(arg0->model[sp218 + 8], arg0->motion[11], 20.0f, 15.0f, HU3D_MOTATTR_NONE); if (temp_r31->unk00 == 9 && lbl_1_bss_54[5].unk00 < 3) { @@ -1041,16 +946,14 @@ void fn_1_3B74(omObjData* arg0) { temp_r31->unk14 += (temp_r31->unk04 == 3 ? lbl_1_bss_4 : lbl_1_bss_0); if (lbl_1_bss_34 >= 1003 && lbl_1_bss_34 < 1005) { if ((temp_r31->unk04 == 3 && temp_r31->unk00 == 9 && temp_r31->unk14 >= 150.0f && temp_r31->unk14 - lbl_1_bss_4 < 150.0f) - || (temp_r31->unk04 == 6 && temp_r31->unk00 == 9 && temp_r31->unk08 == 1)) - { + || (temp_r31->unk04 == 6 && temp_r31->unk00 == 9 && temp_r31->unk08 == 1)) { sp354[j]->unk20 = 5; sp354[j]->unk24 = 0; lbl_1_bss_3C[j]->trans.x = temp_r31->unk0C; lbl_1_bss_3C[j]->trans.y = (j == 0 ? 300 : 0); lbl_1_bss_3C[j]->trans.z = temp_r31->unk14; - lbl_1_bss_3C[j]->rot.y = 180 + ((lbl_1_bss_20 == 4 && temp_r31->unk04 == 6) - ? (temp_r31->unk0C < 0.0f ? -45 : 45) - : 0); + lbl_1_bss_3C[j]->rot.y + = 180 + ((lbl_1_bss_20 == 4 && temp_r31->unk04 == 6) ? (temp_r31->unk0C < 0.0f ? -45 : 45) : 0); Hu3DMotionSpeedSet(arg0->model[j + 79], 1.0f); Hu3DMotionShiftSet(arg0->model[j + 79], arg0->motion[j + 22], 44.0f, 2.0f, HU3D_MOTATTR_NONE); Hu3DParticleCntSet(arg0->model[j + 39], j == 0 ? 15 : 0); @@ -1066,7 +969,8 @@ void fn_1_3B74(omObjData* arg0) { if (temp_r31->unk00 != 10) { if (temp_r31->unk00 != 9) { Hu3DMotionTimeSet(arg0->model[var_r25], 1.0f); - } else { + } + else { Hu3DMotionSet(arg0->model[var_r25], arg0->motion[j + 26]); Hu3DMotionTimeSet(arg0->model[var_r25], 1.0f); Hu3DMotionSpeedSet(arg0->model[var_r25], 1.0f); @@ -1081,22 +985,25 @@ void fn_1_3B74(omObjData* arg0) { temp_r31->unk1C = 0.0f; if (temp_r31->unk00 == 10) { Hu3DModelAttrSet(arg0->model[var_r25], HU3D_MOTATTR_LOOP); - } else if (temp_r31->unk00 != 9) { + } + else if (temp_r31->unk00 != 9) { Hu3DMotionTimeSet(arg0->model[var_r25], 2.0f); Hu3DModelAttrReset(arg0->model[var_r25], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); - } else { + } + else { Hu3DMotionSet(arg0->model[var_r25], arg0->motion[(temp_r31->unk04 == 6) ? (j + 26) : (j + 30)]); Hu3DMotionTimeSet(arg0->model[var_r25], 1.0f); Hu3DMotionSpeedSet(arg0->model[var_r25], 1.0f); } temp_r31->unk04 = 7; Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, temp_r31->unk10, temp_r31->unk14); - } else { - Hu3DModelPosSet(arg0->model[var_r25], - temp_r31->unk0C, + } + else { + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, ((temp_r31->unk00 >= 0 && temp_r31->unk00 < 10) - ? ((temp_r31->unk04 != 6 ? 300 : 0) + lbl_1_rodata_100[temp_r31->unk00]) - : temp_r31->unk10) + lbl_1_rodata_A0[temp_r31->unk00], + ? ((temp_r31->unk04 != 6 ? 300 : 0) + lbl_1_rodata_100[temp_r31->unk00]) + : temp_r31->unk10) + + lbl_1_rodata_A0[temp_r31->unk00], temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); } if (temp_r31->unk00 >= 10) { @@ -1105,31 +1012,24 @@ void fn_1_3B74(omObjData* arg0) { break; case 4: if (temp_r31->unk00 >= 0 && temp_r31->unk00 < 10) { - float sp394[] = { - 0.0f, 0.0f, 0.0f, 0.9f, 0.9f, 0.9f, - 1.75f, 1.75f, 1.75f, 0.0f, 0.0f, 0.0f - }; - s32 sp364[] = { - 42, 42, 42, 41, 41, 41, - 48, 48, 48, 27, 27, 27 - }; + float sp394[] = { 0.0f, 0.0f, 0.0f, 0.9f, 0.9f, 0.9f, 1.75f, 1.75f, 1.75f, 0.0f, 0.0f, 0.0f }; + s32 sp364[] = { 42, 42, 42, 41, 41, 41, 48, 48, 48, 27, 27, 27 }; if (temp_r31->unk00 >= 6 && temp_r31->unk00 <= 8) { temp_f29 = temp_r31->unk08; - temp_f27 = (temp_f29 <= 1.0f) ? 0.0 + temp_f27 = (temp_f29 <= 1.0f) ? 0.0 : (temp_f29 >= 30.0f && temp_f29 < 40.0f) ? -1.0 * (1.0 - (temp_f29 - 30.0f) / 9.0) - : (temp_f29 >= 40.0f) ? 1.0 - (temp_f29 - 40.0f) / 8.0 - : 1.0; - temp_f27 = (temp_f29 >= 40.0f) - ? -1.0 + (temp_f27 * 0.5 + temp_f27 * temp_f27 * 0.5) - : temp_f27; + : (temp_f29 >= 40.0f) ? 1.0 - (temp_f29 - 40.0f) / 8.0 + : 1.0; + temp_f27 = (temp_f29 >= 40.0f) ? -1.0 + (temp_f27 * 0.5 + temp_f27 * temp_f27 * 0.5) : temp_f27; temp_f27 = (temp_f29 <= 1.0f) ? 0.0 - : (temp_f29 < 23.0f) ? 1.0 - : (temp_f29 < 32.0f) ? 0.5 - : (temp_f29 < 40.0f) ? -0.8 - : (-1.0 - 0.4 * (1.0 - (temp_f29 - 40.0f) / 8.0)); + : (temp_f29 < 23.0f) ? 1.0 + : (temp_f29 < 32.0f) ? 0.5 + : (temp_f29 < 40.0f) ? -0.8 + : (-1.0 - 0.4 * (1.0 - (temp_f29 - 40.0f) / 8.0)); temp_r31->unk14 -= (lbl_1_bss_4 * sp394[temp_r31->unk00] / 4.0) * temp_f27; - } else { + } + else { temp_r31->unk14 -= lbl_1_bss_4 * sp394[temp_r31->unk00] / 4.0; } if (temp_r31->unk08 >= sp364[temp_r31->unk00]) { @@ -1137,14 +1037,16 @@ void fn_1_3B74(omObjData* arg0) { temp_r31->unk04 = 5; temp_r31->unk08 = 0; } - } else { + } + else { temp_r31->unk1C -= 1.0f; temp_r31->unk10 += temp_r31->unk1C; temp_r31->unk14 += 1.25 * lbl_1_bss_4; if (temp_r31->unk10 <= 0.0f) { if (temp_r31->unk1C < -10.0f && temp_r31->unk00 == 10) { temp_r31->unk1C = 9.0f; - } else { + } + else { temp_r31->unk1C = 0.0f; temp_r31->unk10 = 0.0f; temp_r31->unk04 = 5; @@ -1152,9 +1054,9 @@ void fn_1_3B74(omObjData* arg0) { } } } - Hu3DModelPosSet(arg0->model[var_r25], - temp_r31->unk0C, - lbl_1_rodata_A0[temp_r31->unk00] + ((temp_r31->unk00 >= 0 && temp_r31->unk00 < 10) ? (300.0f + lbl_1_rodata_100[temp_r31->unk00]) : temp_r31->unk10), + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, + lbl_1_rodata_A0[temp_r31->unk00] + + ((temp_r31->unk00 >= 0 && temp_r31->unk00 < 10) ? (300.0f + lbl_1_rodata_100[temp_r31->unk00]) : temp_r31->unk10), temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); if (temp_r31->unk00 >= 10) { Hu3DModelRotSet(arg0->model[var_r25], 0.0f, temp_r31->unk24, 0.0f); @@ -1176,14 +1078,9 @@ void fn_1_3B74(omObjData* arg0) { temp_r31->unk04 = 2; temp_r31->unk08 = 0; } - Hu3DModelPosSet(arg0->model[var_r25], - temp_r31->unk0C, - temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00], + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00], temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); - Hu3DModelRotSet(arg0->model[var_r25], - 9.0f, - (temp_r31->unk0C < 0.0f) ? -31 : 31, - (temp_r31->unk0C < 0.0f) ? -18 : 18); + Hu3DModelRotSet(arg0->model[var_r25], 9.0f, (temp_r31->unk0C < 0.0f) ? -31 : 31, (temp_r31->unk0C < 0.0f) ? -18 : 18); break; case 2: temp_r31->unk1C -= (temp_r31->unk00 != 9) ? 0.625 : 0.9; @@ -1195,15 +1092,14 @@ void fn_1_3B74(omObjData* arg0) { temp_r31->unk1C = 0.0f; temp_r31->unk04 = 6; temp_r31->unk08 = 0; - Hu3DModelPosSet(arg0->model[var_r25], - temp_r31->unk0C, - temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00] + lbl_1_rodata_100[temp_r31->unk00] + lbl_1_rodata_100[temp_r31->unk00], + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, + temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00] + lbl_1_rodata_100[temp_r31->unk00] + + lbl_1_rodata_100[temp_r31->unk00], temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); Hu3DModelRotSet(arg0->model[var_r25], 0.0f, (temp_r31->unk0C < 0.0f) ? -31 : 31, 0.0f); - } else { - Hu3DModelPosSet(arg0->model[var_r25], - temp_r31->unk0C, - temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00], + } + else { + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, temp_r31->unk10 + lbl_1_rodata_A0[temp_r31->unk00], temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); } break; @@ -1220,8 +1116,7 @@ void fn_1_3B74(omObjData* arg0) { } temp_r31->unk04 = 0; } - Hu3DModelPosSet(arg0->model[var_r25], - temp_r31->unk0C, + Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, (temp_r31->unk00 >= 0 && temp_r31->unk00 < 9) ? (300.0f + lbl_1_rodata_100[temp_r31->unk00]) : temp_r31->unk10, temp_r31->unk14 + lbl_1_rodata_D0[temp_r31->unk00]); Hu3DModelPosSet(arg0->model[var_r25], temp_r31->unk0C, temp_r31->unk10, temp_r31->unk14); @@ -1246,12 +1141,12 @@ void fn_1_3B74(omObjData* arg0) { } } if (i == 9 && lbl_1_bss_18 != 0) { - ModelData* sp204 = &Hu3DData[arg0->model[j + 39]]; - ParticleData* sp200 = sp204->unk_120; + ModelData *sp204 = &Hu3DData[arg0->model[j + 39]]; + ParticleData *sp200 = sp204->unk_120; if (sp200->unk_34 == 63) { - ModelData* temp_r23 = &Hu3DData[arg0->model[var_r25]]; - ModelData* temp_r22 = &Hu3DData[arg0->model[j + 39]]; + ModelData *temp_r23 = &Hu3DData[arg0->model[var_r25]]; + ModelData *temp_r22 = &Hu3DData[arg0->model[j + 39]]; temp_r22->pos.x = temp_r23->pos.x; temp_r22->pos.y = temp_r23->pos.y; @@ -1263,15 +1158,16 @@ void fn_1_3B74(omObjData* arg0) { } if (temp_r31->unk2C == 0 && (lbl_1_bss_34 == 1004 || lbl_1_bss_34 == 1005)) { if (temp_r31->unk00 != 9 - || (temp_r31->unk04 != 1 && temp_r31->unk04 != 2 && ((temp_r31->unk04 != 3 && temp_r31->unk04 != 6) || sp354[j]->unk20 > 5 || sp354[j]->unk20 < 3))) - { + || (temp_r31->unk04 != 1 && temp_r31->unk04 != 2 + && ((temp_r31->unk04 != 3 && temp_r31->unk04 != 6) || sp354[j]->unk20 > 5 || sp354[j]->unk20 < 3))) { temp_r31->unk2C = 1; } } temp_r31->unk2C += (temp_r31->unk2C > 0); if (temp_r31->unk2C != 0 && (temp_r31->unk2C % 2 == 0 || temp_r31->unk2C > 25)) { Hu3DModelAttrSet(arg0->model[var_r25], 1); - } else { + } + else { Hu3DModelAttrReset(arg0->model[var_r25], 1); } } @@ -1336,41 +1232,37 @@ void fn_1_3B74(omObjData* arg0) { espBankSet(lbl_1_data_40[i * 7 + 3], (lbl_1_data_18F4[i] / 10) % 10); } for (i = 0; i < 4; i++) { - ModelData* temp_r24 = &Hu3DData[lbl_1_bss_3C[i]->model[0]]; + ModelData *temp_r24 = &Hu3DData[lbl_1_bss_3C[i]->model[0]]; float temp_f19 = 0.0f; float sp1F0 = (temp_r24->unk_08 == lbl_1_bss_3C[i]->motion[3]) ? 0 : -1; float sp1EC = (temp_r24->unk_0C == lbl_1_bss_3C[i]->motion[3]) ? 0 : -1; - float sp1E8 = (sp1F0 == -1.0f) ? 0.0f - : (temp_r24->unk_64 < 4.0f) ? 0.0f + float sp1E8 = (sp1F0 == -1.0f) ? 0.0f + : (temp_r24->unk_64 < 4.0f) ? 0.0f : (temp_r24->unk_64 > 28.0f) ? 1.0f - : (temp_r24->unk_64 - 4.0f) / 24.0f; - float sp1E4 = (sp1EC == -1.0f) ? 0.0f - : (temp_r24->unk_84 < 4.0f) ? 0.0f + : (temp_r24->unk_64 - 4.0f) / 24.0f; + float sp1E4 = (sp1EC == -1.0f) ? 0.0f + : (temp_r24->unk_84 < 4.0f) ? 0.0f : (temp_r24->unk_84 > 28.0f) ? 1.0f - : (temp_r24->unk_84 - 4.0f) / 24.0f; - float temp_f18 = (temp_r24->unk_0C == -1) ? 0.0f - : (temp_r24->unk_80 == 0.0f) ? 1.0f - : (temp_r24->unk_7C / temp_r24->unk_80); + : (temp_r24->unk_84 - 4.0f) / 24.0f; + float temp_f18 = (temp_r24->unk_0C == -1) ? 0.0f : (temp_r24->unk_80 == 0.0f) ? 1.0f : (temp_r24->unk_7C / temp_r24->unk_80); temp_f19 = sp1E8 * (1.0f - temp_f18) + sp1E4 * temp_f18; if (!(temp_r24->attr & 1) && sp354[i]->unk20 != 3 && sp354[i]->unk20 != 4 && lbl_1_bss_3C[i]->trans.z < 1400.0f) { Hu3DModelAttrReset(lbl_1_bss_3C[i]->model[1], 1); - Hu3DModelPosSet(lbl_1_bss_3C[i]->model[1], - lbl_1_bss_3C[i]->trans.x, - (lbl_1_bss_3C[i]->trans.z < 620.0f) ? 5 : -295, + Hu3DModelPosSet(lbl_1_bss_3C[i]->model[1], lbl_1_bss_3C[i]->trans.x, (lbl_1_bss_3C[i]->trans.z < 620.0f) ? 5 : -295, lbl_1_bss_3C[i]->trans.z - 165.0f * temp_f19); - Hu3DModelScaleSet(lbl_1_bss_3C[i]->model[1], - 0.75 * (sp354[i]->unk08 == 5 ? 1.25 : 1.0), - 1.0f, - 1.25 * (sp354[i]->unk08 == 5 ? 1.25 : 1.0)); - } else { + Hu3DModelScaleSet( + lbl_1_bss_3C[i]->model[1], 0.75 * (sp354[i]->unk08 == 5 ? 1.25 : 1.0), 1.0f, 1.25 * (sp354[i]->unk08 == 5 ? 1.25 : 1.0)); + } + else { Hu3DModelAttrSet(lbl_1_bss_3C[i]->model[1], 1); } } } -void fn_1_89E0(omObjData* arg0) { - StructBss3CData* spC[4]; +void fn_1_89E0(omObjData *arg0) +{ + StructBss3CData *spC[4]; s32 sp8; s32 var_r29; s32 var_r30; @@ -1380,12 +1272,7 @@ void fn_1_89E0(omObjData* arg0) { spC[i] = lbl_1_bss_3C[i]->data; } for (i = 0; i < 11; i++) { - s32 sp1C[] = { - 0x60A, 0x60B, 0x60C, - 0x60D, 0x60E, 0x60F, - 0x611, 0x610, 0x007, - 0x013, 0x612 - }; + s32 sp1C[] = { 0x60A, 0x60B, 0x60C, 0x60D, 0x60E, 0x60F, 0x611, 0x610, 0x007, 0x013, 0x612 }; if (lbl_1_bss_54[i].unk00 > 3) { lbl_1_bss_54[i].unk00 = 3; @@ -1456,7 +1343,8 @@ void fn_1_89E0(omObjData* arg0) { if (lbl_1_data_18AC != -1) { HuAudSeqFadeOut(lbl_1_data_18AC, 100); } - } else { + } + else { var_r29 = 0; var_r30 = 0; for (i = 0; i < 4; i++) { @@ -1465,15 +1353,14 @@ void fn_1_89E0(omObjData* arg0) { } if (i == 0 && ((spC[0]->unk20 >= 2 && spC[0]->unk20 <= 4) || (spC[0]->unk20 == 4 && lbl_1_data_F0[9][0].unk14 < 70.0f))) { var_r30++; - } else if (i != 0 && spC[i]->unk20 >= 2 && spC[i]->unk20 <= 4) { + } + else if (i != 0 && spC[i]->unk20 >= 2 && spC[i]->unk20 <= 4) { var_r30++; } } if (MGSeqStatGet(lbl_1_bss_2E) == 0 - && ((lbl_1_bss_8 >= 150.0f && var_r29 == 0 && var_r30 == 0) - || (lbl_1_bss_8 >= 240.0f && var_r30 == 0) - || lbl_1_bss_8 >= 360.0f)) - { + && ((lbl_1_bss_8 >= 150.0f && var_r29 == 0 && var_r30 == 0) || (lbl_1_bss_8 >= 240.0f && var_r30 == 0) + || lbl_1_bss_8 >= 360.0f)) { lbl_1_bss_34++; lbl_1_bss_8 = 0.0f; GWPlayerCoinCollectSet(spC[0]->unk04, lbl_1_data_18F4[0]); @@ -1482,7 +1369,8 @@ void fn_1_89E0(omObjData* arg0) { GWPlayerCoinCollectSet(spC[3]->unk04, lbl_1_data_18F4[1]); if (lbl_1_data_18F4[0] == 0 && lbl_1_data_18F4[1] == 0) { HuAudSStreamPlay(4); - } else { + } + else { HuAudSStreamPlay(1); } } @@ -1504,8 +1392,9 @@ void fn_1_89E0(omObjData* arg0) { } } -void fn_1_9410(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; +void fn_1_9410(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; float temp_f31; float temp_f30; s16 i; @@ -1549,10 +1438,10 @@ void fn_1_9410(ModelData* model, ParticleData* particle, Mtx matrix) { var_r31->unk40.b = 0xFF; var_r31->unk40.a = 0x60; var_r31->unk2C = 50.0f; - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); } if (var_r31->unk00_s16 < 240) { - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); var_r31->unk08.x *= 0.9f; var_r31->unk08.z *= 0.9f; var_r31->unk08.y *= 0.9f; @@ -1571,7 +1460,8 @@ void fn_1_9410(ModelData* model, ParticleData* particle, Mtx matrix) { } } -void fn_1_9900(omObjData* arg0) { +void fn_1_9900(omObjData *arg0) +{ s32 temp_r28; s32 i; s32 j; @@ -1614,7 +1504,7 @@ void fn_1_9900(omObjData* arg0) { Hu3DMotionSet(arg0->model[i + 8], arg0->motion[0]); Hu3DModelAttrSet(arg0->model[i + 8], HU3D_MOTATTR_LOOP); Hu3DModelAttrReset(arg0->model[i + 8], HU3D_MOTATTR_PAUSE); - Hu3DMotionTimeSet(arg0->model[i + 8], rand8() % (s32) Hu3DMotionMaxTimeGet(arg0->model[i + 8])); + Hu3DMotionTimeSet(arg0->model[i + 8], rand8() % (s32)Hu3DMotionMaxTimeGet(arg0->model[i + 8])); } arg0->model[19] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M422, 26)); Hu3DModelPosSet(arg0->model[19], 1800.0f, 0.0f, -22.0f); @@ -1624,37 +1514,23 @@ void fn_1_9900(omObjData* arg0) { Hu3DModelAttrSet(arg0->model[20], HU3D_MOTATTR_LOOP); for (i = 0; i < 10; i++) { for (j = 0; j < 4; j++) { - s32 spD0[] = { - DATA_MAKE_NUM(DATADIR_M422, 41), - DATA_MAKE_NUM(DATADIR_M422, 42), - DATA_MAKE_NUM(DATADIR_M422, 43), - DATA_MAKE_NUM(DATADIR_M422, 44), - DATA_MAKE_NUM(DATADIR_M422, 45), - DATA_MAKE_NUM(DATADIR_M422, 46), - DATA_MAKE_NUM(DATADIR_M422, 47), - DATA_MAKE_NUM(DATADIR_M422, 48), - DATA_MAKE_NUM(DATADIR_M422, 49), - DATA_MAKE_NUM(DATADIR_M422, 30) - }; - s32 sp30[] = { - DATA_MAKE_NUM(DATADIR_M422, 30), - DATA_MAKE_NUM(DATADIR_M422, 31), - DATA_MAKE_NUM(DATADIR_M422, 32), - DATA_MAKE_NUM(DATADIR_M422, 33), - DATA_MAKE_NUM(DATADIR_M422, 34), - DATA_MAKE_NUM(DATADIR_M422, 35), - DATA_MAKE_NUM(DATADIR_M422, 37), - DATA_MAKE_NUM(DATADIR_M422, 36) - }; + s32 spD0[] = { DATA_MAKE_NUM(DATADIR_M422, 41), DATA_MAKE_NUM(DATADIR_M422, 42), DATA_MAKE_NUM(DATADIR_M422, 43), + DATA_MAKE_NUM(DATADIR_M422, 44), DATA_MAKE_NUM(DATADIR_M422, 45), DATA_MAKE_NUM(DATADIR_M422, 46), DATA_MAKE_NUM(DATADIR_M422, 47), + DATA_MAKE_NUM(DATADIR_M422, 48), DATA_MAKE_NUM(DATADIR_M422, 49), DATA_MAKE_NUM(DATADIR_M422, 30) }; + s32 sp30[] = { DATA_MAKE_NUM(DATADIR_M422, 30), DATA_MAKE_NUM(DATADIR_M422, 31), DATA_MAKE_NUM(DATADIR_M422, 32), + DATA_MAKE_NUM(DATADIR_M422, 33), DATA_MAKE_NUM(DATADIR_M422, 34), DATA_MAKE_NUM(DATADIR_M422, 35), DATA_MAKE_NUM(DATADIR_M422, 37), + DATA_MAKE_NUM(DATADIR_M422, 36) }; temp_r28 = i * 4 + 43 + j; if (i == 9) { - StructBss3CData* var_r23 = lbl_1_bss_3C[j]->data; + StructBss3CData *var_r23 = lbl_1_bss_3C[j]->data; arg0->model[temp_r28] = Hu3DModelCreateFile(sp30[var_r23->unk08]); - } else if (j == 0) { + } + else if (j == 0) { arg0->model[temp_r28] = Hu3DModelCreateFile(spD0[i]); - } else { + } + else { arg0->model[temp_r28] = Hu3DModelLink(arg0->model[temp_r28 - j]); } Hu3DModelAttrSet(arg0->model[temp_r28], HU3D_MOTATTR_LOOP | HU3D_MOTATTR_PAUSE); @@ -1678,15 +1554,13 @@ void fn_1_9900(omObjData* arg0) { } for (i = 0; i < 2; i++) { for (j = 0; j < 10; j++) { - s32 sp28[] = { - DATA_MAKE_NUM(DATADIR_M422, 28), - DATA_MAKE_NUM(DATADIR_M422, 29) - }; + s32 sp28[] = { DATA_MAKE_NUM(DATADIR_M422, 28), DATA_MAKE_NUM(DATADIR_M422, 29) }; temp_r28 = i * 10 + 83 + j; if (j == 0) { arg0->model[temp_r28] = Hu3DModelCreateFile(sp28[i]); - } else { + } + else { arg0->model[temp_r28] = Hu3DModelLink(arg0->model[temp_r28 - j]); } Hu3DModelAttrSet(arg0->model[temp_r28], HU3D_MOTATTR_LOOP); @@ -1706,14 +1580,11 @@ void fn_1_9900(omObjData* arg0) { s32 sp50[] = { 0, 0, 1, 1, 1, 1, -2, 0, 0, 9, 9, 9, 9, -14, 10, 10 }; if (lbl_1_data_0[i] == DATA_MAKE_NUM(DATADIR_MGCONST, 12) || lbl_1_data_0[i] == DATA_MAKE_NUM(DATADIR_MGCONST, 0)) { - StructBss3CData* var_r22 = lbl_1_bss_3C[ - (i == 6) ? 0 - : (i == 13) ? 1 - : (i == 14) ? 2 : 3 - ]->data; + StructBss3CData *var_r22 = lbl_1_bss_3C[(i == 6) ? 0 : (i == 13) ? 1 : (i == 14) ? 2 : 3]->data; lbl_1_data_40[i] = espEntry(lbl_1_data_0[i] + var_r22->unk08, 0, 0); - } else { + } + else { lbl_1_data_40[i] = espEntry(lbl_1_data_0[i], 0, 0); } espDrawNoSet(lbl_1_data_40[i], 0); @@ -1764,9 +1635,10 @@ void fn_1_9900(omObjData* arg0) { arg0->func = fn_1_3B74; } -void fn_1_AC4C(omObjData* arg0) { +void fn_1_AC4C(omObjData *arg0) +{ s32 sp8[] = { 0, 1, 2, 3 }; - StructBss3CData* temp_r31; + StructBss3CData *temp_r31; s32 var_r27; s32 j; s32 i; @@ -1816,14 +1688,16 @@ void fn_1_AC4C(omObjData* arg0) { arg0->func = fn_1_2FC; } -void fn_1_B004(omObjData* arg0) { +void fn_1_B004(omObjData *arg0) +{ lbl_1_bss_34 = 1000; WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); arg0->func = fn_1_89E0; } -void ObjectSetup(void) { - omObjData* var_r30; +void ObjectSetup(void) +{ + omObjData *var_r30; s32 i; OSReport("******* M422 ObjectSetup *********\n"); @@ -1868,8 +1742,9 @@ void ObjectSetup(void) { lbl_1_bss_50 = omAddObjEx(lbl_1_bss_30, 102, 0, 0, -1, fn_1_B004); } -void fn_1_B480(omObjData* arg0) { - StructBss3CData* var_r30; +void fn_1_B480(omObjData *arg0) +{ + StructBss3CData *var_r30; s32 i; if (WipeStatGet() == 0) { diff --git a/src/REL/m423Dll/main.c b/src/REL/m423Dll/main.c index c063e916..a511fc2d 100755 --- a/src/REL/m423Dll/main.c +++ b/src/REL/m423Dll/main.c @@ -26,7 +26,7 @@ typedef struct { /* 0x04 */ s32 unk04; /* 0x08 */ s32 unk08; /* 0x0C */ s32 unk0C; - /* 0x10 */ void* unk10; + /* 0x10 */ void *unk10; } StructBssD0Data; // Size 0x14 typedef struct { @@ -36,8 +36,8 @@ typedef struct { } StructData0; // Size 0x1C typedef struct { - /* 0x00 */ StructBssD0Data* unk00; - /* 0x04 */ AnimData* unk04; + /* 0x00 */ StructBssD0Data *unk00; + /* 0x04 */ AnimData *unk04; } StructM423_00; // Size 8 typedef struct { @@ -54,19 +54,19 @@ typedef struct { /* 0x04 */ s16 unk04; /* 0x06 */ char unk06[2]; /* 0x08 */ Vec unk08; - /* 0x14 */ Vec* unk14; - /* 0x18 */ Vec* unk18; - /* 0x1C */ GXColor* unk1C; - /* 0x20 */ StructM423_01* unk20; + /* 0x14 */ Vec *unk14; + /* 0x18 */ Vec *unk18; + /* 0x1C */ GXColor *unk1C; + /* 0x20 */ StructM423_01 *unk20; /* 0x24 */ float unk24[4]; /* 0x34 */ u32 unk34; - /* 0x38 */ void* unk38; + /* 0x38 */ void *unk38; } StructM423_02; // Size 0x3C typedef struct { /* 0x00 */ s16 unk00; /* 0x02 */ s16 unk02; - /* 0x04 */ StructM423_02* unk04; + /* 0x04 */ StructM423_02 *unk04; } StructM423_03; // Size 8 typedef struct { @@ -99,13 +99,13 @@ typedef struct struct_m423_05 { /* 0x2C */ s32 unk2C; /* 0x30 */ u32 unk30; /* 0x34 */ s32 unk34; - /* 0x38 */ AnimData* unk38; - /* 0x3C */ StructM423_04* unk3C; - /* 0x40 */ Vec* unk40; + /* 0x38 */ AnimData *unk38; + /* 0x3C */ StructM423_04 *unk3C; + /* 0x40 */ Vec *unk40; /* 0x44 */ float (*unk44)[2]; - /* 0x48 */ void* unk48; - /* 0x4C */ void* unk4C; - /* 0x50 */ ModelData* unk50; + /* 0x48 */ void *unk48; + /* 0x4C */ void *unk4C; + /* 0x50 */ ModelData *unk50; } StructM423_05; // Size 0x54 typedef struct { @@ -151,15 +151,15 @@ typedef struct { typedef struct { /* 0x000 */ StructM423_0A unk00[16]; - /* 0x200 */ AnimData* unk200; + /* 0x200 */ AnimData *unk200; /* 0x204 */ s32 unk204; - /* 0x208 */ void* unk208; - /* 0x20C */ StructM423_08* unk20C; - /* 0x210 */ StructM423_09* unk210; - /* 0x214 */ GXColor* unk214; + /* 0x208 */ void *unk208; + /* 0x20C */ StructM423_08 *unk20C; + /* 0x210 */ StructM423_09 *unk210; + /* 0x214 */ GXColor *unk214; /* 0x218 */ s32 unk218; /* 0x21C */ s32 unk21C; - /* 0x220 */ void* unk220; + /* 0x220 */ void *unk220; } StructM423_0B; // Size 0x224 typedef struct { @@ -284,100 +284,100 @@ typedef struct { typedef struct { /* 0x00 */ s32 unk00; /* 0x04 */ s32 unk04; - /* 0x08 */ AnimData* unk08; + /* 0x08 */ AnimData *unk08; } StructBssA4Data; // Size 0xC -void fn_1_318(omObjData* arg0); -void fn_1_3B0(omObjData* arg0); -void fn_1_DFC(omObjData* arg0); -void fn_1_E60(omObjData* arg0); +void fn_1_318(omObjData *arg0); +void fn_1_3B0(omObjData *arg0); +void fn_1_DFC(omObjData *arg0); +void fn_1_E60(omObjData *arg0); void fn_1_F10(void); -void fn_1_F60(omObjData* arg0); -void fn_1_11A4(omObjData* arg0); +void fn_1_F60(omObjData *arg0); +void fn_1_11A4(omObjData *arg0); void fn_1_1238(void); -void fn_1_12A0(ModelData* arg0, Mtx arg1); -s32 fn_1_13A0(StructBssD0Data* arg0); +void fn_1_12A0(ModelData *arg0, Mtx arg1); +s32 fn_1_13A0(StructBssD0Data *arg0); void fn_1_1444(s32 arg0); -void fn_1_14A0(ModelData* arg0, Mtx arg1); +void fn_1_14A0(ModelData *arg0, Mtx arg1); s32 fn_1_18FC(void); -void fn_1_1B5C(ModelData* arg0, StructM423_02* arg1); -void fn_1_1F5C(ModelData* arg0, StructM423_02* arg1); -void fn_1_2290(ModelData* arg0, StructM423_02* arg1); -void fn_1_2624(ModelData* arg0, StructM423_02* arg1); +void fn_1_1B5C(ModelData *arg0, StructM423_02 *arg1); +void fn_1_1F5C(ModelData *arg0, StructM423_02 *arg1); +void fn_1_2290(ModelData *arg0, StructM423_02 *arg1); +void fn_1_2624(ModelData *arg0, StructM423_02 *arg1); void fn_1_29B8(s32 arg0); -void fn_1_29BC(ModelData* arg0, Mtx arg1); +void fn_1_29BC(ModelData *arg0, Mtx arg1); void fn_1_2C08(s32 arg0); void fn_1_34D8(void); -void fn_1_3528(omObjData* arg0); -void fn_1_3898(omObjData* arg0); +void fn_1_3528(omObjData *arg0); +void fn_1_3898(omObjData *arg0); void fn_1_3A64(void); void fn_1_3A8C(void); void fn_1_3BFC(void); -void fn_1_3FE0(omObjData* arg0); -void fn_1_4778(omObjData* arg0); -void fn_1_5D18(omObjData* arg0); +void fn_1_3FE0(omObjData *arg0); +void fn_1_4778(omObjData *arg0); +void fn_1_5D18(omObjData *arg0); void fn_1_77D0(void); s32 fn_1_781C(void); s32 fn_1_791C(void); void fn_1_7AA8(s32 arg0); void fn_1_82C8(s32 arg0, s32 arg1, s32 arg2); -void fn_1_8338(omObjData* arg0); -void fn_1_8CB4(omObjData* arg0); +void fn_1_8338(omObjData *arg0); +void fn_1_8CB4(omObjData *arg0); void fn_1_95C4(void); -void fn_1_9614(omObjData* arg0); -void fn_1_98A0(omObjData* arg0); +void fn_1_9614(omObjData *arg0); +void fn_1_98A0(omObjData *arg0); void fn_1_A9AC(void); s32 fn_1_A9D4(s32 arg0, Vec arg1, Vec arg2); void fn_1_AC0C(s32 arg0, Vec arg1); void fn_1_AC80(s32 arg0, Vec arg1); s32 fn_1_AE64(s32 arg0); void fn_1_AEE8(s32 arg0); -StructBssA8Data* fn_1_B13C(s32 arg0); +StructBssA8Data *fn_1_B13C(s32 arg0); void fn_1_B1A4(void); -s32 fn_1_B304(StructBssA8Data** arg0); +s32 fn_1_B304(StructBssA8Data **arg0); void fn_1_B430(void); -void fn_1_BCD8(Vec* arg0, Vec* arg1, Vec* arg2, float arg3, s32 arg4, s32 arg5); -s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5); +void fn_1_BCD8(Vec *arg0, Vec *arg1, Vec *arg2, float arg3, s32 arg4, s32 arg5); +s32 fn_1_C498(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, float arg4, s32 arg5); void fn_1_D930(void); -void fn_1_DA38(omObjData* arg0); +void fn_1_DA38(omObjData *arg0); void fn_1_DBC8(void); s32 fn_1_DC24(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, GXColor arg5); s32 fn_1_DD70(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5, GXColor arg6); void fn_1_E1BC(void); -void fn_1_E290(omObjData* arg0); +void fn_1_E290(omObjData *arg0); void fn_1_E330(void); s32 fn_1_E334(Vec arg0, Vec arg1, float arg2); void fn_1_E460(void); -void fn_1_E4EC(omObjData* arg0); +void fn_1_E4EC(omObjData *arg0); void fn_1_E60C(void); s32 fn_1_E678(void); -void fn_1_EF44(ModelData* arg0, Mtx arg1); +void fn_1_EF44(ModelData *arg0, Mtx arg1); s32 fn_1_F574(Vec arg0, float arg1, s32 arg2); void fn_1_F690(void); -void fn_1_F6E0(omObjData* arg0); -void fn_1_FA40(omObjData* arg0); +void fn_1_F6E0(omObjData *arg0); +void fn_1_FA40(omObjData *arg0); void fn_1_FF98(void); void fn_1_10028(s32 arg0); void fn_1_100DC(void); -void fn_1_10480(omObjData* arg0); +void fn_1_10480(omObjData *arg0); void fn_1_10540(s32 arg0, s32 arg1, s32 arg2, float arg3); void fn_1_106D8(s32 arg0); void fn_1_10BC8(void); -void fn_1_11008(StructBssD0Data* arg0, void* arg1, s16 arg2, GXTexWrapMode arg3, s32 arg4, s32 arg5); -s16 fn_1_11114(AnimData* arg0, s16 arg1); -void fn_1_11900(ModelData* arg0, Mtx arg1); +void fn_1_11008(StructBssD0Data *arg0, void *arg1, s16 arg2, GXTexWrapMode arg3, s32 arg4, s32 arg5); +s16 fn_1_11114(AnimData *arg0, s16 arg1); +void fn_1_11900(ModelData *arg0, Mtx arg1); float fn_1_121DC(float arg0, float arg1); float fn_1_122F4(float arg0, float arg1, float arg2); float fn_1_12544(float arg0, float arg1, float arg2); -void fn_1_1293C(Mtx arg0, Vec* arg1); -s32 fn_1_12C6C(Vec* arg0, Vec* arg1, float* arg2); -float fn_1_12E68(Vec* arg0, Vec* arg1, s32 arg2); -void fn_1_129F0(Vec* arg0, Vec* arg1, Vec* arg2, float* arg3); -void fn_1_1334C(float* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4); -float fn_1_1367C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float* arg4); -s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5); +void fn_1_1293C(Mtx arg0, Vec *arg1); +s32 fn_1_12C6C(Vec *arg0, Vec *arg1, float *arg2); +float fn_1_12E68(Vec *arg0, Vec *arg1, s32 arg2); +void fn_1_129F0(Vec *arg0, Vec *arg1, Vec *arg2, float *arg3); +void fn_1_1334C(float *arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4); +float fn_1_1367C(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, float *arg4); +s32 fn_1_137C4(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, float arg4, s32 arg5); -Process* lbl_1_bss_120; +Process *lbl_1_bss_120; s32 lbl_1_bss_11C; s32 lbl_1_bss_118; s32 lbl_1_bss_114; @@ -390,73 +390,52 @@ s32 lbl_1_bss_FC; s32 lbl_1_bss_EC[4]; s32 lbl_1_bss_DC[4]; s32 lbl_1_bss_D8; -omObjData* lbl_1_bss_D4; -omObjData* lbl_1_bss_D0; -omObjData* lbl_1_bss_CC; -omObjData* lbl_1_bss_BC[4]; -omObjData* lbl_1_bss_B8; -omObjData* lbl_1_bss_AC[3]; -omObjData* lbl_1_bss_A8; -omObjData* lbl_1_bss_A4; -omObjData* lbl_1_bss_A0; -omObjData* lbl_1_bss_9C; -omObjData* lbl_1_bss_98; -StructBss94Data* lbl_1_bss_94; +omObjData *lbl_1_bss_D4; +omObjData *lbl_1_bss_D0; +omObjData *lbl_1_bss_CC; +omObjData *lbl_1_bss_BC[4]; +omObjData *lbl_1_bss_B8; +omObjData *lbl_1_bss_AC[3]; +omObjData *lbl_1_bss_A8; +omObjData *lbl_1_bss_A4; +omObjData *lbl_1_bss_A0; +omObjData *lbl_1_bss_9C; +omObjData *lbl_1_bss_98; +StructBss94Data *lbl_1_bss_94; s32 lbl_1_bss_90; -omObjData* lbl_1_bss_8C; +omObjData *lbl_1_bss_8C; s32 lbl_1_bss_88; s32 lbl_1_bss_84; s32 lbl_1_bss_80; s32 lbl_1_bss_7C; -StructBssA8Data* lbl_1_bss_40[15]; -StructBssA8Data* lbl_1_bss_4[15]; +StructBssA8Data *lbl_1_bss_40[15]; +StructBssA8Data *lbl_1_bss_4[15]; s32 lbl_1_bss_0; -StructData0 lbl_1_data_0[] = { - { { 342.45f, 0.0f, 0.0f }, { 0.0f, 275.0f, 128.0f }, 550.0f }, - { { 6.0f, 0.0f, 0.0f }, { 0.0f, 190.0f, 0.0f }, 550.0f } -}; +StructData0 lbl_1_data_0[] + = { { { 342.45f, 0.0f, 0.0f }, { 0.0f, 275.0f, 128.0f }, 550.0f }, { { 6.0f, 0.0f, 0.0f }, { 0.0f, 190.0f, 0.0f }, 550.0f } }; -StructData0 lbl_1_data_38[] = { - { { 22.0f, 180.0f, 0.0f }, { -250.0f, 120.00001f, 0.0f }, 160.0f }, - { { 22.0f, 180.0f, 0.0f }, { 0.0f, 120.00001f, 0.0f }, 160.0f }, - { { 22.0f, 180.0f, 0.0f }, { 250.0f, 120.00001f, 0.0f }, 160.0f }, - { { -45.0f, 180.0f, 0.0f }, { -250.0f, 75.0f, 0.0f }, 180.0f }, - { { -45.0f, 180.0f, 0.0f }, { 0.0f, 75.0f, 0.0f }, 180.0f }, - { { -45.0f, 180.0f, 0.0f }, { 250.0f, 75.0f, 0.0f }, 180.0f }, - { { -45.0f, 0.0f, 0.0f }, { -250.0f, 95.0f, 0.0f }, 150.0f }, - { { -45.0f, 0.0f, 0.0f }, { 0.0f, 95.0f, 0.0f }, 150.0f }, - { { -45.0f, 0.0f, 0.0f }, { 250.0f, 95.0f, 0.0f }, 150.0f }, - { { -45.0f, 0.0f, 0.0f }, { 0.0f, 95.0f, -850.0f }, 150.0f } -}; +StructData0 lbl_1_data_38[] + = { { { 22.0f, 180.0f, 0.0f }, { -250.0f, 120.00001f, 0.0f }, 160.0f }, { { 22.0f, 180.0f, 0.0f }, { 0.0f, 120.00001f, 0.0f }, 160.0f }, + { { 22.0f, 180.0f, 0.0f }, { 250.0f, 120.00001f, 0.0f }, 160.0f }, { { -45.0f, 180.0f, 0.0f }, { -250.0f, 75.0f, 0.0f }, 180.0f }, + { { -45.0f, 180.0f, 0.0f }, { 0.0f, 75.0f, 0.0f }, 180.0f }, { { -45.0f, 180.0f, 0.0f }, { 250.0f, 75.0f, 0.0f }, 180.0f }, + { { -45.0f, 0.0f, 0.0f }, { -250.0f, 95.0f, 0.0f }, 150.0f }, { { -45.0f, 0.0f, 0.0f }, { 0.0f, 95.0f, 0.0f }, 150.0f }, + { { -45.0f, 0.0f, 0.0f }, { 250.0f, 95.0f, 0.0f }, 150.0f }, { { -45.0f, 0.0f, 0.0f }, { 0.0f, 95.0f, -850.0f }, 150.0f } }; -Vec lbl_1_data_150[] = { - 0.0f, 0.0f, -850.0f, - -250.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, - 250.0f, 0.0f, 0.0f -}; +Vec lbl_1_data_150[] = { 0.0f, 0.0f, -850.0f, -250.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 250.0f, 0.0f, 0.0f }; -Vec lbl_1_data_180[] = { - 0.0f, 0.0f, -850.0f, - 850.0f, 0.0f, 0.0f, - 1200.0f, 0.0f, 0.0f, - 1650.0f, 0.0f, 0.0f -}; +Vec lbl_1_data_180[] = { 0.0f, 0.0f, -850.0f, 850.0f, 0.0f, 0.0f, 1200.0f, 0.0f, 0.0f, 1650.0f, 0.0f, 0.0f }; -Vec lbl_1_data_1B0[] = { - { -250.0f, 45.0f, 500.0f }, - { 0.0f, 45.0f, 500.0f }, - { 250.0f, 45.0f, 500.0f } -}; +Vec lbl_1_data_1B0[] = { { -250.0f, 45.0f, 500.0f }, { 0.0f, 45.0f, 500.0f }, { 250.0f, 45.0f, 500.0f } }; Vec lbl_1_data_1D4 = { 1000.0f, 2000.0f, 1000.0f }; Vec lbl_1_data_1E0 = { 0.0f, 1.0f, 0.0f }; Vec lbl_1_data_1EC = { 0.0f, 0.0f, -450.0f }; -void ObjectSetup(void) { - Process* var_r30; - CameraData* var_r29; +void ObjectSetup(void) +{ + Process *var_r30; + CameraData *var_r29; s32 i; OSReport("******* M426ObjectSetup *********\n"); @@ -499,7 +478,8 @@ Vec lbl_1_data_21C = { 0.0f, 0.0f, 0.0f }; Vec lbl_1_data_228 = { -1.0f, -2.0f, -1.0f }; GXColor lbl_1_data_234 = { 0xFF, 0xFF, 0xFF, 0xFF }; -void fn_1_318(omObjData* arg0) { +void fn_1_318(omObjData *arg0) +{ s32 var_r31; var_r31 = Hu3DGLightCreateV(&lbl_1_data_21C, &lbl_1_data_228, &lbl_1_data_234); @@ -520,8 +500,9 @@ void fn_1_318(omObjData* arg0) { s32 lbl_1_data_238[] = { 0, 4, 2, 3, 1, 5 }; s32 lbl_1_data_250[] = { 186, 186, 186, 240, 240, 240 }; -void fn_1_3B0(omObjData* arg0) { - CameraData* var_r28; +void fn_1_3B0(omObjData *arg0) +{ + CameraData *var_r28; float var_f31; s32 temp_r27; s32 var_r30; @@ -580,7 +561,8 @@ void fn_1_3B0(omObjData* arg0) { if ((var_r30 & 0x10) && lbl_1_bss_D8 == -1) { lbl_1_bss_D8 = HuAudSeqPlay(0x46); } - } else { + } + else { var_r30 = 0; } if (lbl_1_bss_11C == -1 || var_r30 == 0) { @@ -632,22 +614,27 @@ void fn_1_3B0(omObjData* arg0) { } if (lbl_1_bss_DC[0] > lbl_1_bss_DC[1] && lbl_1_bss_DC[0] > lbl_1_bss_DC[2]) { i = 0; - } else if (lbl_1_bss_DC[1] > lbl_1_bss_DC[0] && lbl_1_bss_DC[1] > lbl_1_bss_DC[2]) { + } + else if (lbl_1_bss_DC[1] > lbl_1_bss_DC[0] && lbl_1_bss_DC[1] > lbl_1_bss_DC[2]) { i = 1; - } else if (lbl_1_bss_DC[2] > lbl_1_bss_DC[0] && lbl_1_bss_DC[2] > lbl_1_bss_DC[1]) { + } + else if (lbl_1_bss_DC[2] > lbl_1_bss_DC[0] && lbl_1_bss_DC[2] > lbl_1_bss_DC[1]) { i = 2; - } else { + } + else { i = frand() & 3; if (i > 2) { i = 2; - } else if (i < 0) { + } + else if (i < 0) { i = 0; } } fn_1_106D8(i + 6); lbl_1_bss_114 = 10; lbl_1_bss_108 = 0; - } else { + } + else { lbl_1_bss_11C = MGSeqWinCreate(lbl_1_bss_EC[3], -1, -1, -1); fn_1_7AA8(0); for (i = 0; i < 4; i++) { @@ -678,7 +665,8 @@ void fn_1_3B0(omObjData* arg0) { fn_1_E60(arg0); } -void fn_1_DFC(omObjData* arg0) { +void fn_1_DFC(omObjData *arg0) +{ if (WipeStatGet() == 0) { fn_1_1238(); fn_1_3A64(); @@ -694,7 +682,8 @@ void fn_1_DFC(omObjData* arg0) { } } -void fn_1_E60(omObjData* arg0) { +void fn_1_E60(omObjData *arg0) +{ s32 var_r30; var_r30 = 0; @@ -711,17 +700,20 @@ void fn_1_E60(omObjData* arg0) { } } -s32 fn_1_F00(void) { +s32 fn_1_F00(void) +{ return lbl_1_bss_114; } -void fn_1_F10(void) { +void fn_1_F10(void) +{ lbl_1_bss_D0 = omAddObjEx(lbl_1_bss_120, 0x7F, 8, 0, -1, fn_1_F60); } -void fn_1_F60(omObjData* arg0) { - StructBssD0Data* temp_r30; - ModelData* temp_r29; +void fn_1_F60(omObjData *arg0) +{ + StructBssD0Data *temp_r30; + ModelData *temp_r29; temp_r30 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(*temp_r30), MEMORY_DEFAULT_NUM); memset(temp_r30, 0, sizeof(*temp_r30)); @@ -741,7 +733,7 @@ void fn_1_F60(omObjData* arg0) { temp_r30->unk00 = 160; temp_r30->unk04 = 160; temp_r30->unk08 = GXGetTexBufferSize(temp_r30->unk00, temp_r30->unk04, 5, 0, 0); - temp_r30->unk10 = HuMemDirectMallocNum(HEAP_DATA, temp_r30->unk08, (u32) temp_r29->unk_48); + temp_r30->unk10 = HuMemDirectMallocNum(HEAP_DATA, temp_r30->unk08, (u32)temp_r29->unk_48); temp_r30->unk0C = 0.0f; arg0->model[4] = fn_1_13A0(temp_r30); Hu3DModelCameraSet(arg0->model[4], 5); @@ -751,11 +743,13 @@ void fn_1_F60(omObjData* arg0) { arg0->func = fn_1_11A4; } -void fn_1_11A4(omObjData* arg0) { +void fn_1_11A4(omObjData *arg0) +{ fn_1_2C08(arg0->model[5]); } -void fn_1_11D8(omObjData* arg0) { +void fn_1_11D8(omObjData *arg0) +{ fn_1_1444(arg0->model[4]); arg0->model[4] = -1; fn_1_29B8(arg0->model[5]); @@ -763,15 +757,17 @@ void fn_1_11D8(omObjData* arg0) { arg0->func = NULL; } -void fn_1_1238(void) { +void fn_1_1238(void) +{ fn_1_11D8(lbl_1_bss_D0); } GXColor lbl_1_data_298 = { 0x00, 0x00, 0x00, 0xFF }; -void fn_1_12A0(ModelData* arg0, Mtx arg1) { - StructBssD0Data* temp_r31; - CameraData* var_r30; +void fn_1_12A0(ModelData *arg0, Mtx arg1) +{ + StructBssD0Data *temp_r31; + CameraData *var_r30; temp_r31 = arg0->unk_120; var_r30 = &Hu3DCamera[1]; @@ -788,9 +784,10 @@ void fn_1_12A0(ModelData* arg0, Mtx arg1) { fn_1_10BC8(); } -s32 fn_1_13A0(StructBssD0Data* arg0) { - StructM423_00* var_r31; - ModelData* temp_r30; +s32 fn_1_13A0(StructBssD0Data *arg0) +{ + StructM423_00 *var_r31; + ModelData *temp_r30; s32 var_r29; var_r29 = Hu3DHookFuncCreate(fn_1_14A0); @@ -802,9 +799,10 @@ s32 fn_1_13A0(StructBssD0Data* arg0) { return var_r29; } -void fn_1_1444(s32 arg0) { - StructM423_00* var_r31; - ModelData* var_r30; +void fn_1_1444(s32 arg0) +{ + StructM423_00 *var_r31; + ModelData *var_r30; if (arg0 >= 0) { var_r30 = &Hu3DData[arg0]; @@ -813,37 +811,21 @@ void fn_1_1444(s32 arg0) { } } -f32 lbl_1_data_29C[] = { - -400.0f, 400.0f, 0.0f, - 400.0f, 400.0f, 0.0f, - 400.0f, 0.0f, 0.0f, - -400.0f, 0.0f, 0.0f -}; +f32 lbl_1_data_29C[] = { -400.0f, 400.0f, 0.0f, 400.0f, 400.0f, 0.0f, 400.0f, 0.0f, 0.0f, -400.0f, 0.0f, 0.0f }; -f32 lbl_1_data_2CC[] = { - 0.0f, 0.0f, - 1.0f, 0.0f, - 1.0f, 0.75f, - 0.0f, 0.75f -}; +f32 lbl_1_data_2CC[] = { 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.75f, 0.0f, 0.75f }; -f32 lbl_1_data_2EC[] = { - 0.0f, 0.0f, - 1.2f, 0.0f, - 1.2f, 0.75f, - 0.0f, 0.75f -}; +f32 lbl_1_data_2EC[] = { 0.0f, 0.0f, 1.2f, 0.0f, 1.2f, 0.75f, 0.0f, 0.75f }; -GXColor lbl_1_data_30C[] = { - { 0x40, 0x40, 0x40, 0xFF } -}; +GXColor lbl_1_data_30C[] = { { 0x40, 0x40, 0x40, 0xFF } }; GXColor lbl_1_data_310 = { 0x00, 0x00, 0x00, 0x80 }; -void fn_1_14A0(ModelData* arg0, Mtx arg1) { - CameraData* var_r28; - StructM423_00* temp_r29; - StructBssD0Data* temp_r30; +void fn_1_14A0(ModelData *arg0, Mtx arg1) +{ + CameraData *var_r28; + StructM423_00 *temp_r29; + StructBssD0Data *temp_r30; Mtx spC; s16 i; @@ -855,7 +837,7 @@ void fn_1_14A0(ModelData* arg0, Mtx arg1) { return; } GXLoadPosMtxImm(arg1, GX_PNMTX0); - PSMTXInvXpose(arg1, spC); + MTXInvXpose(arg1, spC); GXLoadNrmMtxImm(spC, GX_PNMTX0); GXSetTevColor(GX_TEVREG2, lbl_1_data_310); GXSetNumTevStages(2); @@ -874,7 +856,8 @@ void fn_1_14A0(ModelData* arg0, Mtx arg1) { GXSetTevOp(GX_TEVSTAGE1, GX_REPLACE); GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_CPREV, GX_CC_C2, GX_CC_TEXA, GX_CC_ZERO); GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); - } else { + } + else { GXSetTevOp(GX_TEVSTAGE1, GX_REPLACE); GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_CPREV, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); @@ -912,21 +895,15 @@ void fn_1_14A0(ModelData* arg0, Mtx arg1) { } } -s32 lbl_1_data_314[][2] = { - { 20, 10 }, { 20, 7 }, { 10, 10 }, { 10, 10 } -}; +s32 lbl_1_data_314[][2] = { { 20, 10 }, { 20, 7 }, { 10, 10 }, { 10, 10 } }; -Vec lbl_1_data_334[] = { - { 0.0f, 100.0f, -1100.0f }, - { 0.0f, 200.0f, -1000.0f }, - { -225.0f, 100.0f, -1000.0f }, - { 225.0f, 100.0f, -1000.0f } -}; +Vec lbl_1_data_334[] = { { 0.0f, 100.0f, -1100.0f }, { 0.0f, 200.0f, -1000.0f }, { -225.0f, 100.0f, -1000.0f }, { 225.0f, 100.0f, -1000.0f } }; -s32 fn_1_18FC(void) { - ModelData* temp_r30; - StructM423_03* var_r29; - StructM423_02* temp_r31; +s32 fn_1_18FC(void) +{ + ModelData *temp_r30; + StructM423_03 *var_r29; + StructM423_02 *temp_r31; s32 var_r27; s32 i; @@ -970,23 +947,20 @@ s32 fn_1_18FC(void) { return var_r27; } -Vec lbl_1_data_364[] = { - { -200.0f, 0.0f, -1100.0f }, - { -200.0f, 200.0f, -1050.0f }, - { 200.0f, 200.0f, -1050.0f } -}; +Vec lbl_1_data_364[] = { { -200.0f, 0.0f, -1100.0f }, { -200.0f, 200.0f, -1050.0f }, { 200.0f, 200.0f, -1050.0f } }; GXColor lbl_1_data_388 = { 0xFF, 0xFF, 0xFF, 0xFF }; -void fn_1_1B5C(ModelData* arg0, StructM423_02* arg1) { +void fn_1_1B5C(ModelData *arg0, StructM423_02 *arg1) +{ float var_f31; float var_f30; float var_f29; - Vec* var_r27; - GXColor* var_r26; - StructM423_01* var_r28; - void* var_r25; - void* var_r23; + Vec *var_r27; + GXColor *var_r26; + StructM423_01 *var_r28; + void *var_r25; + void *var_r23; s32 i; s32 j; @@ -1006,7 +980,8 @@ void fn_1_1B5C(ModelData* arg0, StructM423_02* arg1) { var_r28->unk02 = i; if (i == 0 || i == 9 || j == 0 || j == 19) { var_r28->unk04 = 1; - } else { + } + else { var_r28->unk04 = 0; } var_r28->unk06 = 0; @@ -1050,14 +1025,15 @@ void fn_1_1B5C(ModelData* arg0, StructM423_02* arg1) { GXColor lbl_1_data_3AB = { 0xFF, 0xFF, 0xFF, 0xFF }; -void fn_1_1F5C(ModelData* arg0, StructM423_02* arg1) { +void fn_1_1F5C(ModelData *arg0, StructM423_02 *arg1) +{ float var_f31; float var_f30; float var_f29; - Vec* var_r27; - GXColor* var_r26; - void* var_r25; - void* var_r23; + Vec *var_r27; + GXColor *var_r26; + void *var_r25; + void *var_r23; s32 i; s32 j; @@ -1110,15 +1086,16 @@ void fn_1_1F5C(ModelData* arg0, StructM423_02* arg1) { GXColor lbl_1_data_3AF = { 0xFF, 0xFF, 0xFF, 0xFF }; -void fn_1_2290(ModelData* arg0, StructM423_02* arg1) { +void fn_1_2290(ModelData *arg0, StructM423_02 *arg1) +{ float var_f31; float var_f30; float var_f29; float var_f28; - Vec* var_r27; - GXColor* var_r26; - void* var_r25; - void* var_r23; + Vec *var_r27; + GXColor *var_r26; + void *var_r25; + void *var_r23; s32 i; s32 j; @@ -1175,15 +1152,16 @@ void fn_1_2290(ModelData* arg0, StructM423_02* arg1) { GXColor lbl_1_data_3B3 = { 0xFF, 0xFF, 0xFF, 0xFF }; -void fn_1_2624(ModelData* arg0, StructM423_02* arg1) { +void fn_1_2624(ModelData *arg0, StructM423_02 *arg1) +{ float var_f31; float var_f30; float var_f29; float var_f28; - Vec* var_r27; - GXColor* var_r26; - void* var_r25; - void* var_r23; + Vec *var_r27; + GXColor *var_r26; + void *var_r25; + void *var_r23; s32 i; s32 j; @@ -1238,18 +1216,18 @@ void fn_1_2624(ModelData* arg0, StructM423_02* arg1) { HuMemDirectFree(var_r25); } -void fn_1_29B8(s32 arg0) { -} +void fn_1_29B8(s32 arg0) { } -void fn_1_29BC(ModelData* arg0, Mtx arg1) { - StructM423_03* temp_r30; - StructM423_02* temp_r31; +void fn_1_29BC(ModelData *arg0, Mtx arg1) +{ + StructM423_03 *temp_r30; + StructM423_02 *temp_r31; Mtx sp8; s16 i; temp_r30 = arg0->unk_120; GXLoadPosMtxImm(arg1, GX_PNMTX0); - PSMTXInvXpose(arg1, sp8); + MTXInvXpose(arg1, sp8); GXLoadNrmMtxImm(sp8, GX_PNMTX0); GXSetLineWidth(6, GX_TO_ZERO); GXSetNumTevStages(1); @@ -1284,26 +1262,27 @@ void fn_1_29BC(ModelData* arg0, Mtx arg1) { } } -void fn_1_2C08(s32 arg0) { +void fn_1_2C08(s32 arg0) +{ Vec sp3C; Vec sp30; Vec sp24; - Vec* var_r25; - Vec* var_r24; - Vec* temp_r27; - Vec* temp_r29; + Vec *var_r25; + Vec *var_r24; + Vec *temp_r27; + Vec *temp_r29; float temp_f31; float temp_f28; float temp_f30; float var_f29; float var_f27; - StructM423_02* temp_r30; - StructM423_01* var_r28; - StructBssA8Data* var_r31; - StructM423_03* var_r17; - ModelData* sp20; - ModelData* sp1C; - StructM423_01* sp18; + StructM423_02 *temp_r30; + StructM423_01 *var_r28; + StructBssA8Data *var_r31; + StructM423_03 *var_r17; + ModelData *sp20; + ModelData *sp1C; + StructM423_01 *sp18; s32 var_r20; s32 temp_r19; s32 temp_r18; @@ -1330,30 +1309,28 @@ void fn_1_2C08(s32 arg0) { if (var_r28->unk04 != 0) { continue; } - PSVECSubtract(var_r24, var_r25, &sp30); - temp_f31 = PSVECMag(&sp30); + VECSubtract(var_r24, var_r25, &sp30); + temp_f31 = VECMag(&sp30); if (temp_f31 >= 0.0f) { - PSVECScale(&sp30, &sp30, 0.05f); - PSVECAdd(&var_r28->unk08, &sp30, &var_r28->unk08); - temp_f31 = PSVECMag(&var_r28->unk08); + VECScale(&sp30, &sp30, 0.05f); + VECAdd(&var_r28->unk08, &sp30, &var_r28->unk08); + temp_f31 = VECMag(&var_r28->unk08); if (temp_f31 > 10.0f) { - PSVECNormalize(&var_r28->unk08, &var_r28->unk08); - PSVECScale(&var_r28->unk08, &var_r28->unk08, 10.0f); + VECNormalize(&var_r28->unk08, &var_r28->unk08); + VECScale(&var_r28->unk08, &var_r28->unk08, 10.0f); } } - PSVECAdd(var_r25, &var_r28->unk08, var_r25); - PSVECScale(&var_r28->unk08, &var_r28->unk08, 0.5f); + VECAdd(var_r25, &var_r28->unk08, var_r25); + VECScale(&var_r28->unk08, &var_r28->unk08, 0.5f); } for (i = 0; i < 15; i++, var_r31++) { if (var_r31->unk06 == 0 || var_r31->unk0C != 3) { continue; } spC = 0; - PSVECSubtract(&var_r31->unk38, &var_r31->unk74, &sp30); - if (var_r31->unk38.x > -225.0f && var_r31->unk38.x < 225.0f - && var_r31->unk38.y > 0.0f && var_r31->unk38.y < 200.0f - && var_r31->unk38.z > -1150.0f && var_r31->unk38.z < -950.0f) - { + VECSubtract(&var_r31->unk38, &var_r31->unk74, &sp30); + if (var_r31->unk38.x > -225.0f && var_r31->unk38.x < 225.0f && var_r31->unk38.y > 0.0f && var_r31->unk38.y < 200.0f + && var_r31->unk38.z > -1150.0f && var_r31->unk38.z < -950.0f) { var_f27 = 0.005f * var_r31->unk38.y; var_f29 = -900.0f - (150.0f + var_f27 * 50.0f); if (var_r31->unk38.z - 20.0 < var_f29) { @@ -1375,14 +1352,14 @@ void fn_1_2C08(s32 arg0) { sp24.x = var_r31->unk5C.z; sp24.z = -var_r31->unk5C.x; sp24.y = 0.0f; - temp_f31 = 0.05 * PSVECMag(&sp24); + temp_f31 = 0.05 * VECMag(&sp24); if (temp_f31 > 0.00001f) { - PSMTXRotAxisRad(sp48, &sp24, temp_f31); - PSMTXConcat(sp48, sp1C->unk_F0, sp1C->unk_F0); + MTXRotAxisRad(sp48, &sp24, temp_f31); + MTXConcat(sp48, sp1C->unk_F0, sp1C->unk_F0); } temp_f31 = 0.0133333336f * fabs(var_f29 - (var_r31->unk38.z - 20.0)); - var_r31->unk50.z += temp_f31 * 0.4f; - PSVECScale(&var_r31->unk50, &var_r31->unk50, 0.95f); + var_r31->unk50.z += temp_f31 * 0.4f; + VECScale(&var_r31->unk50, &var_r31->unk50, 0.95f); var_r31->unk50.y *= 0.0f; var_r31->unk50.x *= 0.75f; sp14 = (var_r31->unk38.x - -225.0f) / 22.5f; @@ -1410,33 +1387,36 @@ void fn_1_2C08(s32 arg0) { } temp_r29 = &temp_r30->unk14[temp_r21]; temp_r27 = &temp_r30->unk18[temp_r21]; - PSVECSubtract(&sp3C, temp_r29, &sp30); + VECSubtract(&sp3C, temp_r29, &sp30); sp30.z = 0.0f; - temp_f31 = PSVECMag(&sp30); + temp_f31 = VECMag(&sp30); if (temp_f31 > 400.0f) { continue; } if (temp_f31 > 20.0) { temp_f30 = 0.0025f * (400.0f - temp_f31); temp_f30 = temp_f30 * temp_f30; - PSVECNormalize(&sp30, &sp30); - PSVECScale(&sp30, &sp30, 20.0f * (temp_f30 * temp_f30)); + VECNormalize(&sp30, &sp30); + VECScale(&sp30, &sp30, 20.0f * (temp_f30 * temp_f30)); temp_r29->x += 0.5f * (temp_r27->x + sp30.x - temp_r29->x); temp_r29->y += 0.5f * (temp_r27->y + sp30.y - temp_r29->y); temp_r29->z += 0.5f * (temp_r27->z - temp_f30 * temp_f28 - temp_r29->z); - } else { + } + else { temp_f30 = cosd(0.0025f * temp_f31 * 90.0f); if (temp_f31 != 0.0f) { - PSVECNormalize(&sp30, &sp30); - } else { + VECNormalize(&sp30, &sp30); + } + else { sp30.x = sp30.y = sp30.z = 0.0f; } - PSVECScale(&sp30, &sp30, temp_f30 * temp_f30 * 20.0f); + VECScale(&sp30, &sp30, temp_f30 * temp_f30 * 20.0f); temp_r29->z += 0.5f * (temp_r27->z - temp_f30 * temp_f28 - temp_r29->z); } } } - } else { + } + else { var_r31->unk10 = 0; } } @@ -1444,61 +1424,31 @@ void fn_1_2C08(s32 arg0) { PPCSync(); } -void fn_1_34D8(void) { +void fn_1_34D8(void) +{ lbl_1_bss_CC = omAddObjEx(lbl_1_bss_120, 0x81, 20, 6, -1, fn_1_3528); } -Vec lbl_1_data_3B8[] = { - -1300.0f, 300.0f, -2350.0f, - -800.0f, 200.0f, -2250.0f, - 800.0f, 200.0f, -2250.0f, - 1300.0f, 300.0f, -2350.0f, - -1000.0f, 300.0f, -2350.0f, - 1000.0f, 300.0f, -2350.0f, - -1200.0f, 400.0f, -2450.0f, - -800.0f, 400.0f, -2450.0f, - 800.0f, 400.0f, -2450.0f, - 1200.0f, 400.0f, -2450.0f, - -1400.0f, 200.0f, -2250.0f, - 1400.0f, 200.0f, -2250.0f, - -1400.0f, 400.0f, -2450.0f, - 1400.0f, 400.0f, -2450.0f, - -900.0f, 500.0f, -2550.0f, - 900.0f, 500.0f, -2550.0f, - -1200.0f, 500.0f, -2550.0f, - 1200.0f, 500.0f, -2550.0f, - -1100.0f, 200.0f, -2250.0f, - 1100.0f, 200.0f, -2250.0f -}; +Vec lbl_1_data_3B8[] = { -1300.0f, 300.0f, -2350.0f, -800.0f, 200.0f, -2250.0f, 800.0f, 200.0f, -2250.0f, 1300.0f, 300.0f, -2350.0f, -1000.0f, 300.0f, + -2350.0f, 1000.0f, 300.0f, -2350.0f, -1200.0f, 400.0f, -2450.0f, -800.0f, 400.0f, -2450.0f, 800.0f, 400.0f, -2450.0f, 1200.0f, 400.0f, -2450.0f, + -1400.0f, 200.0f, -2250.0f, 1400.0f, 200.0f, -2250.0f, -1400.0f, 400.0f, -2450.0f, 1400.0f, 400.0f, -2450.0f, -900.0f, 500.0f, -2550.0f, 900.0f, + 500.0f, -2550.0f, -1200.0f, 500.0f, -2550.0f, 1200.0f, 500.0f, -2550.0f, -1100.0f, 200.0f, -2250.0f, 1100.0f, 200.0f, -2250.0f }; -s32 lbl_1_data_4A8[] = { - 0, 1, 0, 1, 2, 2, 1, 0, - 1, 2, 0, 1, 2, 0, 1, 2, - 0, 1, 2, 1, 0 -}; +s32 lbl_1_data_4A8[] = { 0, 1, 0, 1, 2, 2, 1, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 1, 0 }; -s32 lbl_1_data_4FC[] = { - DATA_MAKE_NUM(DATADIR_M423, 12), - DATA_MAKE_NUM(DATADIR_M423, 15), - DATA_MAKE_NUM(DATADIR_M423, 18) -}; +s32 lbl_1_data_4FC[] = { DATA_MAKE_NUM(DATADIR_M423, 12), DATA_MAKE_NUM(DATADIR_M423, 15), DATA_MAKE_NUM(DATADIR_M423, 18) }; -s32 lbl_1_data_508[] = { - DATA_MAKE_NUM(DATADIR_M423, 13), - DATA_MAKE_NUM(DATADIR_M423, 14), - DATA_MAKE_NUM(DATADIR_M423, 16), - DATA_MAKE_NUM(DATADIR_M423, 17), - DATA_MAKE_NUM(DATADIR_M423, 19), - DATA_MAKE_NUM(DATADIR_M423, 20) -}; +s32 lbl_1_data_508[] = { DATA_MAKE_NUM(DATADIR_M423, 13), DATA_MAKE_NUM(DATADIR_M423, 14), DATA_MAKE_NUM(DATADIR_M423, 16), + DATA_MAKE_NUM(DATADIR_M423, 17), DATA_MAKE_NUM(DATADIR_M423, 19), DATA_MAKE_NUM(DATADIR_M423, 20) }; s16 lbl_1_data_520[] = { 0, 2, 4 }; -void fn_1_3528(omObjData* arg0) { +void fn_1_3528(omObjData *arg0) +{ float var_f30; float var_f29; float temp_f31; - StructBssCCData* var_r30; + StructBssCCData *var_r30; s32 temp_r27; s32 var_r28; s32 i; @@ -1525,7 +1475,8 @@ void fn_1_3528(omObjData* arg0) { Hu3DModelPosSet(var_r28, lbl_1_data_3B8[i].x, lbl_1_data_3B8[i].y, lbl_1_data_3B8[i].z); if (var_r30->unk00 != 1) { Hu3DModelRotSet(var_r28, 0.0f, temp_f31, 0.0f); - } else { + } + else { Hu3DModelRotSet(var_r28, 10.0f, temp_f31, 0.0f); } Hu3DModelScaleSet(var_r28, 1.8f, 1.8f, 1.8f); @@ -1541,8 +1492,9 @@ void fn_1_3528(omObjData* arg0) { s16 lbl_1_data_526[] = { 0, 2, 4 }; s16 lbl_1_data_52C[] = { 1, 3, 5, 0 }; -void fn_1_3898(omObjData* arg0) { - StructBssCCData* var_r31; +void fn_1_3898(omObjData *arg0) +{ + StructBssCCData *var_r31; s32 var_r28; s32 i; @@ -1552,13 +1504,16 @@ void fn_1_3898(omObjData* arg0) { if (var_r31->unk06 > 0) { var_r28 = 1; var_r31->unk06--; - } else if (var_r31->unk0A > 0) { + } + else if (var_r31->unk0A > 0) { if (var_r31->unk08 > 0) { var_r31->unk08--; - } else if (var_r31->unk0A > 0) { + } + else if (var_r31->unk0A > 0) { var_r28 = 1; var_r31->unk0A--; - } else { + } + else { var_r31->unk08 = 0; var_r31->unk0A = 0; } @@ -1567,24 +1522,28 @@ void fn_1_3898(omObjData* arg0) { var_r31->unk02 = var_r28; if (var_r31->unk02 == 0) { Hu3DMotionShiftSet(arg0->model[i], arg0->motion[lbl_1_data_526[var_r31->unk00]], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); - } else { + } + else { Hu3DMotionShiftSet(arg0->model[i], arg0->motion[lbl_1_data_52C[var_r31->unk00]], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); } } } } -void fn_1_3A58(omObjData* arg0) { +void fn_1_3A58(omObjData *arg0) +{ arg0->func = NULL; } -void fn_1_3A64(void) { +void fn_1_3A64(void) +{ fn_1_3A58(lbl_1_bss_CC); } -void fn_1_3A8C(void) { - omObjData* var_r29; - StructBssCCData* var_r31; +void fn_1_3A8C(void) +{ + omObjData *var_r29; + StructBssCCData *var_r31; s32 i; if (lbl_1_bss_CC == NULL) { @@ -1595,14 +1554,16 @@ void fn_1_3A8C(void) { for (i = 0; i < 20; i++, var_r31++) { if (var_r31->unk06 > 0 || var_r31->unk0A > 0) { var_r31->unk08 = 0; - } else { + } + else { var_r31->unk08 = (1.0f / 127) * frand7() * 0.25f * 60.0f; } var_r31->unk0A = ((1.0f / 127) * frand7() + 2.0f) * 60.0f; } } -void fn_1_3BFC(void) { +void fn_1_3BFC(void) +{ s32 sp8[4]; s32 temp_r28; s32 temp_r27; @@ -1618,7 +1579,8 @@ void fn_1_3BFC(void) { for (i = 0, var_r29 = 0; i < 4; i++) { if (GWPlayerCfgGroupGet(i) == 0) { sp8[3] = i; - } else { + } + else { sp8[var_r29] = i; var_r29++; } @@ -1633,10 +1595,11 @@ void fn_1_3BFC(void) { sp8[1] = 2; sp8[2] = 3; sp8[3] = 0; - } else { + } + else { for (i = 0; i < 32; i++) { - temp_r28 = (s16) (frand() & 0xFFF) % 3; - temp_r27 = (s16) (frand() & 0xFFF) % 3; + temp_r28 = (s16)(frand() & 0xFFF) % 3; + temp_r27 = (s16)(frand() & 0xFFF) % 3; if (temp_r28 != temp_r27) { var_r29 = sp8[temp_r27]; sp8[temp_r27] = sp8[temp_r28]; @@ -1655,7 +1618,8 @@ void fn_1_3BFC(void) { if (GWPlayerCfg[lbl_1_bss_BC[i]->work[0]].iscom) { lbl_1_bss_FC = 1; } - } else { + } + else { lbl_1_bss_EC[var_r26] = GWPlayerCfg[lbl_1_bss_BC[i]->work[0]].character; var_r26++; lbl_1_bss_BC[i]->work[1] = 1; @@ -1679,47 +1643,23 @@ void fn_1_3BFC(void) { } } -u32 lbl_1_data_534[][2] = { - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), -1 }, - { 0, 0 }, - { 0, 1 }, - { 0, 2 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 24), -1 } -}; +u32 lbl_1_data_534[][2] + = { { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), -1 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), -1 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), -1 }, { 0, 0 }, + { 0, 1 }, { 0, 2 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), -1 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 24), -1 } }; -s32 lbl_1_data_574[] = { - DATA_MAKE_NUM(DATADIR_M423, 58), - DATA_MAKE_NUM(DATADIR_M423, 26), - DATA_MAKE_NUM(DATADIR_M423, 34) -}; +s32 lbl_1_data_574[] = { DATA_MAKE_NUM(DATADIR_M423, 58), DATA_MAKE_NUM(DATADIR_M423, 26), DATA_MAKE_NUM(DATADIR_M423, 34) }; -u32 lbl_1_data_580[][2] = { - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), -1 }, - { 0, 0 }, - { 0, 1 }, - { 0, 2 }, - { 0, 3 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 11), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), -1 }, - { DATA_MAKE_NUM(DATADIR_MARIOMOT, 24), -1 } -}; +u32 lbl_1_data_580[][2] = { { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), -1 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), -1 }, { 0, 0 }, { 0, 1 }, { 0, 2 }, { 0, 3 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 11), -1 }, + { DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), -1 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), -1 }, { DATA_MAKE_NUM(DATADIR_MARIOMOT, 24), -1 } }; -s32 lbl_1_data_5D8[] = { - DATA_MAKE_NUM(DATADIR_M423, 42), - DATA_MAKE_NUM(DATADIR_M423, 66), - DATA_MAKE_NUM(DATADIR_M423, 50), - DATA_MAKE_NUM(DATADIR_M423, 74) -}; +s32 lbl_1_data_5D8[] + = { DATA_MAKE_NUM(DATADIR_M423, 42), DATA_MAKE_NUM(DATADIR_M423, 66), DATA_MAKE_NUM(DATADIR_M423, 50), DATA_MAKE_NUM(DATADIR_M423, 74) }; -void fn_1_3FE0(omObjData* arg0) { +void fn_1_3FE0(omObjData *arg0) +{ float var_f31; - StructBssBCData* temp_r31; + StructBssBCData *temp_r31; s32 i; temp_r31 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(*temp_r31), MEMORY_DEFAULT_NUM); @@ -1760,7 +1700,8 @@ void fn_1_3FE0(omObjData* arg0) { for (i = 0; i < 11; i++) { if (lbl_1_data_580[i][1] == -1) { arg0->motion[i] = CharModelMotionCreate(temp_r31->unk02, lbl_1_data_580[i][0]); - } else { + } + else { arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_5D8[lbl_1_data_580[i][1]] + temp_r31->unk02); } } @@ -1799,11 +1740,13 @@ void fn_1_3FE0(omObjData* arg0) { } temp_r31->unk84 = i; arg0->func = fn_1_5D18; - } else { + } + else { for (i = 0; i < 8; i++) { if (lbl_1_data_534[i][1] == -1) { arg0->motion[i] = CharModelMotionCreate(temp_r31->unk02, lbl_1_data_534[i][0]); - } else { + } + else { arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_574[lbl_1_data_534[i][1]] + temp_r31->unk02); } } @@ -1833,7 +1776,8 @@ Vec lbl_1_data_5E8 = { 0.0f, 20.0f, 50.0f }; GXColor lbl_1_data_5F4 = { 0xFF, 0xFF, 0xFF, 0x10 }; GXColor lbl_1_data_5F8 = { 0xFF, 0xFF, 0xFF, 0x40 }; -void fn_1_4778(omObjData* arg0) { +void fn_1_4778(omObjData *arg0) +{ Mtx sp11C; Vec sp110; Vec sp104; @@ -1842,8 +1786,8 @@ void fn_1_4778(omObjData* arg0) { float temp_f29; float temp_f30; float var_f25; - StructBssBCData* temp_r31; - ModelData* temp_r27; + StructBssBCData *temp_r31; + ModelData *temp_r27; s32 temp_r26; s16 var_r25; s16 var_r24; @@ -1975,7 +1919,8 @@ void fn_1_4778(omObjData* arg0) { temp_f30 = fabs(fn_1_121DC(arg0->rot.y, temp_r31->unk78)); if (temp_f30 < 10.0f) { arg0->rot.y += temp_f30; - } else { + } + else { arg0->rot.y += 10.0f; } sp104 = lbl_1_data_5E8; @@ -2059,8 +2004,8 @@ void fn_1_4778(omObjData* arg0) { if (temp_r26 == -1 || temp_r31->unk5C == -1) { temp_r31->unk18 = 3; } - PSVECSubtract(&temp_r31->unkD4, &temp_r31->unkC8, &spF8); - PSVECNormalize(&spF8, &spF8); + VECSubtract(&temp_r31->unkD4, &temp_r31->unkC8, &spF8); + VECNormalize(&spF8, &spF8); temp_f27 = 15.0f; spF8.x *= temp_r31->unk60 * cosd(temp_f27); spF8.z *= temp_r31->unk60 * cosd(temp_f27); @@ -2078,9 +2023,11 @@ void fn_1_4778(omObjData* arg0) { temp_f29 = (temp_r31->unk60 - 15.000001f) / 30.0f; if (temp_f29 > 0.66f) { HuAudFXPlay(0x61B); - } else if (temp_f29 > 0.33f) { + } + else if (temp_f29 > 0.33f) { HuAudFXPlay(0x61C); - } else { + } + else { HuAudFXPlay(0x61D); } temp_r31->unk18 = 9; @@ -2128,15 +2075,16 @@ void fn_1_4778(omObjData* arg0) { GXColor lbl_1_data_630 = { 0xFF, 0xFF, 0xFF, 0x14 }; -void fn_1_5D18(omObjData* arg0) { +void fn_1_5D18(omObjData *arg0) +{ Vec sp60; Vec sp54; Vec sp48; float var_f30; float var_f31; float var_f29; - StructBssBCData* temp_r31; - ModelData* temp_r27; + StructBssBCData *temp_r31; + ModelData *temp_r27; s16 var_r26; s16 var_r25; s16 var_r28; @@ -2181,7 +2129,8 @@ void fn_1_5D18(omObjData* arg0) { case 1: if (fabs(var_r28) > 8.0) { var_f30 = 0.125f * var_r28; - } else { + } + else { var_f30 = 0.0f; } temp_r31->unk1C[temp_r31->unk58] = var_f30; @@ -2194,14 +2143,17 @@ void fn_1_5D18(omObjData* arg0) { var_f30 *= 0.06666667f; if (var_f30 > 25.0f) { var_f30 = 25.0f; - } else if (var_f30 < -25.0f) { + } + else if (var_f30 < -25.0f) { var_f30 = -25.0f; } if (0.0f == var_f30) { var_r25 = 0; - } else if (fabs(var_f30) < 10.0) { + } + else if (fabs(var_f30) < 10.0) { var_r25 = 1; - } else { + } + else { var_r25 = 2; } if (temp_r31->unk16 != var_r25 && CharModelMotionShiftIDGet(temp_r31->unk02) == -1) { @@ -2217,9 +2169,11 @@ void fn_1_5D18(omObjData* arg0) { } if (var_r28 == 0.0f) { var_f29 = 0.0f; - } else if (var_r28 < 0.0f) { + } + else if (var_r28 < 0.0f) { var_f29 = -90.0f; - } else { + } + else { var_f29 = 90.0f; } if (arg0->rot.y < var_f29 && (arg0->rot.y += 20.0f) > var_f29) { @@ -2240,7 +2194,8 @@ void fn_1_5D18(omObjData* arg0) { if (fn_1_F00() >= 7) { temp_r31->unk18 = 9; temp_r31->unk68 = 0; - } else if (temp_r31->unk10 & PAD_BUTTON_A) { + } + else if (temp_r31->unk10 & PAD_BUTTON_A) { if (var_r28 > 0) { temp_r27->unk_0C = -1; temp_r31->unk16 = 3; @@ -2259,7 +2214,8 @@ void fn_1_5D18(omObjData* arg0) { } if (lbl_1_bss_40[0]->unk1C < 36.0f) { var_f31 = lbl_1_bss_40[0]->unk68.z - arg0->trans.z; - } else { + } + else { var_f31 = lbl_1_bss_40[0]->unk38.z - arg0->trans.z; } if (var_f31 < -100.0f) { @@ -2268,9 +2224,11 @@ void fn_1_5D18(omObjData* arg0) { var_f31 = fabs(var_f31); if (var_f31 >= 300.0f) { temp_r31->unk8C = 13.5f; - } else if (var_f31 <= 100.0f) { + } + else if (var_f31 <= 100.0f) { temp_r31->unk8C = 6.5f; - } else { + } + else { temp_r31->unk8C = 10.0f; } } @@ -2279,7 +2237,8 @@ void fn_1_5D18(omObjData* arg0) { temp_r31->unk8C = 10.0f; } temp_r31->unk18 = 2; - } else if (var_r28 < 0) { + } + else if (var_r28 < 0) { temp_r27->unk_0C = -1; temp_r31->unk16 = 5; CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); @@ -2297,7 +2256,8 @@ void fn_1_5D18(omObjData* arg0) { } if (lbl_1_bss_40[0]->unk1C < 36.0f) { var_f31 = lbl_1_bss_40[0]->unk68.z - arg0->trans.z; - } else { + } + else { var_f31 = lbl_1_bss_40[0]->unk38.z - arg0->trans.z; } if (var_f31 > 100.0f) { @@ -2306,9 +2266,11 @@ void fn_1_5D18(omObjData* arg0) { var_f31 = fabs(var_f31); if (var_f31 >= 300.0f) { temp_r31->unk8C = 13.5f; - } else if (var_f31 <= 100.0f) { + } + else if (var_f31 <= 100.0f) { temp_r31->unk8C = 6.5f; - } else { + } + else { temp_r31->unk8C = 10.0f; } } @@ -2317,7 +2279,8 @@ void fn_1_5D18(omObjData* arg0) { temp_r31->unk8C = 10.0f; } temp_r31->unk18 = 4; - } else { + } + else { temp_r27->unk_0C = -1; temp_r31->unk16 = 7; CharModelMotionSet(temp_r31->unk02, arg0->motion[temp_r31->unk16]); @@ -2488,11 +2451,13 @@ void fn_1_5D18(omObjData* arg0) { temp_r31->unkE8 = arg0->trans.z; } -void fn_1_77C4(omObjData* arg0) { +void fn_1_77C4(omObjData *arg0) +{ arg0->func = NULL; } -void fn_1_77D0(void) { +void fn_1_77D0(void) +{ s32 i; for (i = 0; i < 4; i++) { @@ -2500,9 +2465,10 @@ void fn_1_77D0(void) { } } -s32 fn_1_781C(void) { - omObjData* temp_r29; - StructBssBCData* temp_r31; +s32 fn_1_781C(void) +{ + omObjData *temp_r29; + StructBssBCData *temp_r31; s32 i; for (i = 0; i < 4; i++) { @@ -2512,7 +2478,8 @@ s32 fn_1_781C(void) { if (temp_r31->unk18 != 0 || fabs(fn_1_121DC(temp_r29->rot.y, 0.0f)) > 1.0) { break; } - } else { + } + else { if (temp_r31->unk18 < 5) { break; } @@ -2524,9 +2491,10 @@ s32 fn_1_781C(void) { return 0; } -s32 fn_1_791C(void) { - omObjData* temp_r30; - StructBssBCData* temp_r31; +s32 fn_1_791C(void) +{ + omObjData *temp_r30; + StructBssBCData *temp_r31; s32 i; for (i = 0; i < 4; i++) { @@ -2536,7 +2504,8 @@ s32 fn_1_791C(void) { if (temp_r31->unk18 != 10 || fabs(fn_1_121DC(temp_r30->rot.y, 0.0f)) > 1.0 || CharModelMotionShiftIDGet(temp_r31->unk02) != -1) { break; } - } else { + } + else { if (temp_r31->unk18 != 10 || fabs(fn_1_121DC(temp_r30->rot.y, 0.0f)) > 1.0 || CharModelMotionShiftIDGet(temp_r31->unk02) != -1) { break; } @@ -2548,9 +2517,10 @@ s32 fn_1_791C(void) { return 0; } -void fn_1_7AA8(s32 arg0) { - omObjData* var_r29; - StructBssBCData* temp_r31; +void fn_1_7AA8(s32 arg0) +{ + omObjData *var_r29; + StructBssBCData *temp_r31; s32 i; for (i = 0; i < 4; i++) { @@ -2559,20 +2529,24 @@ void fn_1_7AA8(s32 arg0) { if (temp_r31->unk0A == 0) { if (temp_r31->unk0A == arg0) { temp_r31->unk18 = 11; - } else { + } + else { temp_r31->unk18 = 12; } - } else { + } + else { if (temp_r31->unk0A == arg0) { temp_r31->unk18 = 11; - } else { + } + else { temp_r31->unk18 = 12; } } } } -s32 fn_1_7B48(Vec* arg0, Vec* arg1, Vec* arg2, float arg3) { +s32 fn_1_7B48(Vec *arg0, Vec *arg1, Vec *arg2, float arg3) +{ Vec spA8[4]; Vec sp78[4]; Vec sp48[4]; @@ -2586,9 +2560,9 @@ s32 fn_1_7B48(Vec* arg0, Vec* arg1, Vec* arg2, float arg3) { float var_f30; float var_f27; float var_f26; - omObjData* temp_r31; - StructBssBCData* temp_r28; - ModelData* sp8; + omObjData *temp_r31; + StructBssBCData *temp_r28; + ModelData *sp8; if (lbl_1_bss_B8 == NULL) { return 0; @@ -2636,12 +2610,12 @@ s32 fn_1_7B48(Vec* arg0, Vec* arg1, Vec* arg2, float arg3) { spA8[3].x = temp_r31->trans.x + 0.5f * var_f31; spA8[3].y = temp_r31->trans.y - var_f27; spA8[3].z = temp_r31->trans.z - 0.5f * var_f30; - PSVECNormalize(arg1, &spC); - PSVECScale(&spC, &spC, arg3); - PSVECAdd(arg0, arg1, &sp30); - PSVECAdd(arg0, arg1, &sp24); - PSVECAdd(arg0, &spC, &sp3C); - PSVECAdd(&sp30, &spC, &sp30); + VECNormalize(arg1, &spC); + VECScale(&spC, &spC, arg3); + VECAdd(arg0, arg1, &sp30); + VECAdd(arg0, arg1, &sp24); + VECAdd(arg0, &spC, &sp3C); + VECAdd(&sp30, &spC, &sp30); sp48[0] = sp78[0]; sp48[1] = sp78[1]; sp48[2] = sp78[2]; @@ -2652,26 +2626,27 @@ s32 fn_1_7B48(Vec* arg0, Vec* arg1, Vec* arg2, float arg3) { fn_1_82C8(15, 1, 0); return 1; } - if (sp24.x >= sp78[0].x - arg3 && sp24.x <= sp78[2].x + arg3 - && sp24.y <= sp78[0].y + arg3 && sp24.y >= sp78[2].y - arg3 - && sp24.z <= sp78[0].z + arg3 && sp24.z >= spA8[3].z - arg3) - { + if (sp24.x >= sp78[0].x - arg3 && sp24.x <= sp78[2].x + arg3 && sp24.y <= sp78[0].y + arg3 && sp24.y >= sp78[2].y - arg3 + && sp24.z <= sp78[0].z + arg3 && sp24.z >= spA8[3].z - arg3) { if (temp_r28->unkEC > 0.0f && sp24.x > temp_r31->trans.x) { spC = *arg1; spC.y = 0.0f; - var_f26 = PSVECMag(&spC); + var_f26 = VECMag(&spC); arg2->x = 0.5f * var_f26 + temp_r28->unkEC; arg2->z = 0.0f; - } else if (temp_r28->unkEC < 0.0f && sp24.x < temp_r31->trans.x) { + } + else if (temp_r28->unkEC < 0.0f && sp24.x < temp_r31->trans.x) { spC = *arg1; spC.y = 0.0f; - var_f26 = PSVECMag(&spC); + var_f26 = VECMag(&spC); arg2->x = -(0.5f * var_f26) + temp_r28->unkEC; arg2->z = 0.0f; - } else { + } + else { if (fabs(arg1->x) > fabs(arg1->z)) { arg2->x *= -1.0f; - } else { + } + else { arg2->z *= -1.0f; } arg2->x *= 0.5f; @@ -2683,9 +2658,10 @@ s32 fn_1_7B48(Vec* arg0, Vec* arg1, Vec* arg2, float arg3) { return 0; } -void fn_1_82C8(s32 arg0, s32 arg1, s32 arg2) { - omObjData* var_r31; - StructBssBCData* var_r30; +void fn_1_82C8(s32 arg0, s32 arg1, s32 arg2) +{ + omObjData *var_r31; + StructBssBCData *var_r30; if (lbl_1_bss_B8 != NULL) { var_r31 = lbl_1_bss_B8; @@ -2698,19 +2674,16 @@ void fn_1_82C8(s32 arg0, s32 arg1, s32 arg2) { s32 lbl_1_data_668[] = { 3, 4, 5, 6 }; float lbl_1_data_678[] = { 0.6f, 0.65f, 0.7f, 0.7f }; -s32 lbl_1_data_688[][2] = { - { 30, 60 }, { 24, 48 }, { 12, 24 }, { 0, 12 } -}; +s32 lbl_1_data_688[][2] = { { 30, 60 }, { 24, 48 }, { 12, 24 }, { 0, 12 } }; -s32 lbl_1_data_6A8[][2] = { - { 36, 84 }, { 36, 78 }, { 33, 72 }, { 33, 66 } -}; +s32 lbl_1_data_6A8[][2] = { { 36, 84 }, { 36, 78 }, { 33, 72 }, { 33, 66 } }; -void fn_1_8338(omObjData* arg0) { +void fn_1_8338(omObjData *arg0) +{ float var_f31; float temp_f30; - StructBssBCData* temp_r31; - ModelData* sp8; + StructBssBCData *temp_r31; + ModelData *sp8; s32 var_r29; temp_r31 = arg0->data; @@ -2731,11 +2704,14 @@ void fn_1_8338(omObjData* arg0) { temp_r31->unkA8 = (1.0f / 127) * frand7(); if (lbl_1_bss_B8->trans.x >= 270.0f) { temp_r31->unk88 = -(0.4f + 0.3f * temp_r31->unkA8); - } else if (lbl_1_bss_B8->trans.x <= -270.0f) { + } + else if (lbl_1_bss_B8->trans.x <= -270.0f) { temp_r31->unk88 = 0.4f + 0.3f * temp_r31->unkA8; - } else if (frand() & 1) { + } + else if (frand() & 1) { temp_r31->unk88 = -(0.3f + 0.1f * temp_r31->unkA8); - } else { + } + else { temp_r31->unk88 = 0.3f + 0.1f * temp_r31->unkA8; } var_f31 = lbl_1_data_6A8[3][0]; @@ -2745,10 +2721,12 @@ void fn_1_8338(omObjData* arg0) { temp_f30 = lbl_1_data_688[temp_r31->unk08][1]; temp_r31->unk74 = var_f31 + (1.0f / 127) * frand7() * (temp_f30 - var_f31); temp_r31->unk98++; - } else { + } + else { if (frand() & 1) { temp_r31->unk88 = (1.0f / 127) * frand7() * lbl_1_data_678[temp_r31->unk08]; - } else { + } + else { temp_r31->unk88 = -((1.0f / 127) * frand7()) * lbl_1_data_678[temp_r31->unk08]; } var_f31 = lbl_1_data_6A8[temp_r31->unk08][0]; @@ -2778,11 +2756,14 @@ void fn_1_8338(omObjData* arg0) { if (temp_r31->unkA4 != 0) { if (lbl_1_bss_B8->trans.x >= 148.5f) { temp_r31->unk88 = -(0.4f + 0.3f * temp_r31->unkA8); - } else if (lbl_1_bss_B8->trans.x <= -148.5f) { + } + else if (lbl_1_bss_B8->trans.x <= -148.5f) { temp_r31->unk88 = 0.4f + 0.3f * temp_r31->unkA8; - } else if (lbl_1_bss_B8->trans.x > 0.0f) { + } + else if (lbl_1_bss_B8->trans.x > 0.0f) { temp_r31->unk88 = -(0.5f + 0.2f * temp_r31->unkA8); - } else { + } + else { temp_r31->unk88 = 0.5f + 0.2f * temp_r31->unkA8; } } @@ -2793,7 +2774,8 @@ void fn_1_8338(omObjData* arg0) { temp_r31->unk70 = 0; temp_r31->unk74 = 0; temp_r31->unkA4 = 0; - } else { + } + else { temp_r31->unk0E |= PAD_BUTTON_A; } break; @@ -2805,19 +2787,14 @@ void fn_1_8338(omObjData* arg0) { s32 lbl_1_data_6C8[] = { 60, 45, 30, 15 }; -float lbl_1_data_6D8[][2] = { - { 200.0f, 150.0f }, { 125.0f, 100.0f }, { 0.0f, 0.0f }, { 0.0f, 0.0f } -}; +float lbl_1_data_6D8[][2] = { { 200.0f, 150.0f }, { 125.0f, 100.0f }, { 0.0f, 0.0f }, { 0.0f, 0.0f } }; -s32 lbl_1_data_6F8[][2] = { - { 48, 150 }, { 39, 114 }, { 33, 90 }, { 21, 42 } -}; +s32 lbl_1_data_6F8[][2] = { { 48, 150 }, { 39, 114 }, { 33, 90 }, { 21, 42 } }; -s32 lbl_1_data_718[][2] = { - { 27, 39 }, { 15, 27 }, { 9, 15 }, { 0, 3 } -}; +s32 lbl_1_data_718[][2] = { { 27, 39 }, { 15, 27 }, { 9, 15 }, { 0, 3 } }; -void fn_1_8CB4(omObjData* arg0) { +void fn_1_8CB4(omObjData *arg0) +{ Vec spC; float temp_f29; float temp_f28; @@ -2825,9 +2802,9 @@ void fn_1_8CB4(omObjData* arg0) { float var_f31; float var_f26; float temp_f27; - StructBssBCData* temp_r31; - ModelData* sp8; - StructBssA8Data* temp_r30; + StructBssBCData *temp_r31; + ModelData *sp8; + StructBssA8Data *temp_r30; s32 var_r28; s32 var_r24; s32 i, j; @@ -2842,10 +2819,12 @@ void fn_1_8CB4(omObjData* arg0) { if (temp_r30->unk0C != 3 || temp_r30->unk08 != 0 || temp_r30->unk38.z <= -900.0f) { var_r25 = 1; } - } else { + } + else { var_r25 = 1; } - } else { + } + else { var_r25 = 1; } if (var_r25 != 0) { @@ -2866,11 +2845,8 @@ void fn_1_8CB4(omObjData* arg0) { if (var_r24 != 0) { for (i = 0; i < var_r24; i++) { temp_r30 = lbl_1_bss_4[i]; - if (temp_r30 == NULL || temp_r30->unk06 == 0 - || 0.0f == temp_r30->unk50.z - || fabs(temp_r30->unk38.x) >= 325.0 - || temp_r30->unk14 < temp_r31->unk94) - { + if (temp_r30 == NULL || temp_r30->unk06 == 0 || 0.0f == temp_r30->unk50.z || fabs(temp_r30->unk38.x) >= 325.0 + || temp_r30->unk14 < temp_r31->unk94) { continue; } var_r28 = (var_f26 - temp_r30->unk38.z) / temp_r30->unk50.z; @@ -2925,7 +2901,8 @@ void fn_1_8CB4(omObjData* arg0) { var_r28 += temp_r31->unk90; var_f30 += temp_r31->unkD4.x; var_f31 += temp_r31->unkD4.y; - } else { + } + else { var_r28 = 0; var_f30 = temp_r30->unk38.x; var_f31 = temp_r30->unk38.y; @@ -2939,9 +2916,11 @@ void fn_1_8CB4(omObjData* arg0) { temp_f27 = fabs(var_f30 - arg0->trans.x); if (var_r28 < 10 && temp_f27 > 120.00001f) { temp_r31->unk10 |= 0x100; - } else if (var_r28 < 5 && temp_f27 < 25.0f && var_f31 > 100.0f) { + } + else if (var_r28 < 5 && temp_f27 < 25.0f && var_f31 > 100.0f) { temp_r31->unk10 |= 0x100; - } else if (var_r28 > 20 && temp_f27 < 50.0) { + } + else if (var_r28 > 20 && temp_f27 < 50.0) { temp_r31->unk10 /= 2; } if (++temp_r31->unk6C > lbl_1_data_6C8[temp_r31->unk08]) { @@ -2950,25 +2929,20 @@ void fn_1_8CB4(omObjData* arg0) { } } -void fn_1_95C4(void) { +void fn_1_95C4(void) +{ lbl_1_bss_A8 = omAddObjEx(lbl_1_bss_120, 0x50, 0, 0, -1, fn_1_9614); } -s32 lbl_1_data_738[] = { - DATA_MAKE_NUM(DATADIR_M423, 4), - DATA_MAKE_NUM(DATADIR_M423, 5), - DATA_MAKE_NUM(DATADIR_M423, 6), - DATA_MAKE_NUM(DATADIR_M423, 7), - DATA_MAKE_NUM(DATADIR_M423, 8), - DATA_MAKE_NUM(DATADIR_M423, 9), - DATA_MAKE_NUM(DATADIR_M423, 10), - DATA_MAKE_NUM(DATADIR_M423, 11) -}; +s32 lbl_1_data_738[] + = { DATA_MAKE_NUM(DATADIR_M423, 4), DATA_MAKE_NUM(DATADIR_M423, 5), DATA_MAKE_NUM(DATADIR_M423, 6), DATA_MAKE_NUM(DATADIR_M423, 7), + DATA_MAKE_NUM(DATADIR_M423, 8), DATA_MAKE_NUM(DATADIR_M423, 9), DATA_MAKE_NUM(DATADIR_M423, 10), DATA_MAKE_NUM(DATADIR_M423, 11) }; -void fn_1_9614(omObjData* arg0) { - StructBssA8Data* var_r28; - StructBssA8Data* var_r31; - ModelData* var_r27; +void fn_1_9614(omObjData *arg0) +{ + StructBssA8Data *var_r28; + StructBssA8Data *var_r31; + ModelData *var_r27; s32 i; if (lbl_1_bss_EC[0] == -1) { @@ -2999,7 +2973,8 @@ void fn_1_9614(omObjData* arg0) { var_r31->unk68.x = var_r31->unk68.y = var_r31->unk68.z = 0.0f; if (i < 3) { var_r31->unk00 = Hu3DModelCreateFile(lbl_1_data_738[lbl_1_bss_EC[var_r31->unk04]]); - } else { + } + else { var_r31->unk00 = Hu3DModelLink(var_r28[var_r31->unk04].unk00); } Hu3DModelScaleSet(var_r31->unk00, 0.8f, 0.8f, 0.8f); @@ -3007,13 +2982,14 @@ void fn_1_9614(omObjData* arg0) { Hu3DModelCameraSet(var_r31->unk00, 5); Hu3DModelShadowSet(var_r31->unk00); var_r27 = &Hu3DData[var_r31->unk00]; - PSMTXIdentity(var_r27->unk_F0); + MTXIdentity(var_r27->unk_F0); } fn_1_B430(); arg0->func = fn_1_98A0; } -void fn_1_98A0(omObjData* arg0) { +void fn_1_98A0(omObjData *arg0) +{ Mtx spC4; Vec spB8; Vec spAC; @@ -3024,9 +3000,9 @@ void fn_1_98A0(omObjData* arg0) { float var_f25; float var_f31; float var_f22; - StructBssA8Data* var_r31; - StructBssA8Data* var_r30; - ModelData* temp_r27; + StructBssA8Data *var_r31; + StructBssA8Data *var_r30; + ModelData *temp_r27; s32 i, j; s32 var_r25; s32 var_r23; @@ -3047,7 +3023,8 @@ void fn_1_98A0(omObjData* arg0) { var_r31->unk14++; if (temp_f30 > 1.0f) { var_f31 = 1.0f; - } else { + } + else { var_f31 = temp_f30; } var_r31->unk38.x = var_r31->unk20.x + var_f31 * (var_r31->unk2C.x - var_r31->unk20.x); @@ -3055,10 +3032,12 @@ void fn_1_98A0(omObjData* arg0) { if (temp_f30 < 0.6f) { var_f31 = temp_f30 / 0.6f; var_f25 = 100.0f; - } else if (temp_f30 < 1.0f) { + } + else if (temp_f30 < 1.0f) { var_f31 = (temp_f30 - 0.6f) / 0.4f; var_f25 = 50.0f; - } else { + } + else { var_f31 = (temp_f30 - 1.0f) / 0.25f; var_f25 = 10.0f; } @@ -3073,10 +3052,10 @@ void fn_1_98A0(omObjData* arg0) { spAC.x = var_r31->unk50.z; spAC.z = -var_r31->unk50.x; spAC.y = 0.0f; - var_f31 = 0.05 * PSVECMag(&spAC); + var_f31 = 0.05 * VECMag(&spAC); if (var_f31 > 0.00001f) { - PSMTXRotAxisRad(spC4, &spAC, var_f31); - PSMTXConcat(spC4, temp_r27->unk_F0, temp_r27->unk_F0); + MTXRotAxisRad(spC4, &spAC, var_f31); + MTXConcat(spC4, temp_r27->unk_F0, temp_r27->unk_F0); } } Hu3DModelPosSet(var_r31->unk00, var_r31->unk38.x, var_r31->unk38.y, var_r31->unk38.z); @@ -3094,8 +3073,7 @@ void fn_1_98A0(omObjData* arg0) { if (var_r28 & 0x8000) { var_r25 = 1; } - if (var_r28 & 0x2000) { - } + if (var_r28 & 0x2000) { } if ((var_r28 & 0x4000) && var_r31->unk12 == 0 && var_r31->unk08 == 0) { var_f31 = VECMagXZ(&var_r31->unk50); sp94.x = 0.0f; @@ -3109,13 +3087,15 @@ void fn_1_98A0(omObjData* arg0) { var_r31->unk50 = sp88; var_r31->unk8C = 0.975f; var_r31->unk90 = -0.5f; - } else { + } + else { if (fabs(var_r31->unk38.x) > 1000.0) { Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); var_r31->unk0C = 0; var_r31->unk06 = 0; var_r31->unk14 = 0; - } else { + } + else { var_r31->unk38.x += var_r31->unk50.x; var_r31->unk38.y += var_r31->unk50.y; var_r31->unk38.z += var_r31->unk50.z; @@ -3126,51 +3106,52 @@ void fn_1_98A0(omObjData* arg0) { if (i == j || var_r30->unk06 == 0 || var_r30->unk08 != 0 || var_r30->unk0C != 3) { continue; } - PSVECSubtract(&var_r31->unk38, &var_r30->unk38, &spAC); - var_f31 = PSVECMag(&spAC); + VECSubtract(&var_r31->unk38, &var_r30->unk38, &spAC); + var_f31 = VECMag(&spAC); if (var_f31 < 40.0) { spA0 = var_r31->unk38; if (var_f31 != 0.0f) { temp_f30 = 40.0 - var_f31; - PSVECNormalize(&spAC, &spAC); - PSVECScale(&spAC, &spAC, temp_f30); - PSVECAdd(&var_r31->unk38, &spAC, &var_r31->unk38); - } else { + VECNormalize(&spAC, &spAC); + VECScale(&spAC, &spAC, temp_f30); + VECAdd(&var_r31->unk38, &spAC, &var_r31->unk38); + } + else { var_r31->unk38.x += 40.0; } - temp_f30 = PSVECMag(&var_r31->unk50); - var_f22 = PSVECMag(&var_r30->unk50); + temp_f30 = VECMag(&var_r31->unk50); + var_f22 = VECMag(&var_r30->unk50); var_f31 = 0.5f * (temp_f30 + var_f22); - if (PSVECMag(&var_r31->unk50) == 0.0f) { + if (VECMag(&var_r31->unk50) == 0.0f) { var_r31->unk50.x = 1.0f; } - PSVECNormalize(&var_r31->unk50, &var_r31->unk50); - PSVECSubtract(&var_r31->unk38, &var_r30->unk38, &spAC); - if (PSVECMag(&spAC) == 0.0f) { + VECNormalize(&var_r31->unk50, &var_r31->unk50); + VECSubtract(&var_r31->unk38, &var_r30->unk38, &spAC); + if (VECMag(&spAC) == 0.0f) { spAC.x = 1.0f; } - PSVECNormalize(&spAC, &spAC); - PSVECAdd(&var_r31->unk50, &spAC, &var_r31->unk50); - if (PSVECMag(&var_r31->unk50) == 0.0f) { + VECNormalize(&spAC, &spAC); + VECAdd(&var_r31->unk50, &spAC, &var_r31->unk50); + if (VECMag(&var_r31->unk50) == 0.0f) { var_r31->unk50.x = 1.0f; } - PSVECNormalize(&var_r31->unk50, &var_r31->unk50); - PSVECScale(&var_r31->unk50, &var_r31->unk50, var_f31); - if (PSVECMag(&var_r30->unk50) == 0.0f) { + VECNormalize(&var_r31->unk50, &var_r31->unk50); + VECScale(&var_r31->unk50, &var_r31->unk50, var_f31); + if (VECMag(&var_r30->unk50) == 0.0f) { var_r30->unk50.x = -1.0f; } - PSVECNormalize(&var_r30->unk50, &var_r30->unk50); - PSVECSubtract(&var_r30->unk38, &var_r31->unk38, &spAC); - if (PSVECMag(&spAC) == 0.0f) { + VECNormalize(&var_r30->unk50, &var_r30->unk50); + VECSubtract(&var_r30->unk38, &var_r31->unk38, &spAC); + if (VECMag(&spAC) == 0.0f) { spAC.x = 1.0f; } - PSVECNormalize(&spAC, &spAC); - PSVECAdd(&var_r30->unk50, &spAC, &var_r30->unk50); - if (PSVECMag(&var_r30->unk50) == 0.0f) { + VECNormalize(&spAC, &spAC); + VECAdd(&var_r30->unk50, &spAC, &var_r30->unk50); + if (VECMag(&var_r30->unk50) == 0.0f) { var_r30->unk50.x = -1.0f; } - PSVECNormalize(&var_r30->unk50, &var_r30->unk50); - PSVECScale(&var_r30->unk50, &var_r30->unk50, var_f31); + VECNormalize(&var_r30->unk50, &var_r30->unk50); + VECScale(&var_r30->unk50, &var_r30->unk50, var_f31); if (var_r28 = fn_1_C498(&spA0, &spAC, &spB8, &sp88, 20.0f, 1)) { if (var_r28 & 0x8000) { var_r25 = 1; @@ -3185,17 +3166,15 @@ void fn_1_98A0(omObjData* arg0) { var_r31->unk38.y = 20.0f; var_r31->unk50.y *= var_r31->unk90; var_r23 = 1; - if (var_r31->unk38.x >= -225.0f && var_r31->unk38.x <= 225.0f - && var_r31->unk38.z >= -1100.0f && var_r31->unk38.z <= -900.0f) - { - var_r25 = 1; + if (var_r31->unk38.x >= -225.0f && var_r31->unk38.x <= 225.0f && var_r31->unk38.z >= -1100.0f && var_r31->unk38.z <= -900.0f) { + var_r25 = 1; } if (fabs(var_r31->unk50.y) < 0.05f) { var_r31->unk50.y = 0.0f; } } if (var_r31->unk08 == 0) { - PSVECSubtract(&var_r31->unk38, &var_r31->unk74, &spAC); + VECSubtract(&var_r31->unk38, &var_r31->unk74, &spAC); if (fn_1_7B48(&var_r31->unk38, &var_r31->unk50, &sp88, 20.0f) != 0) { var_r31->unk50 = sp88; var_r31->unk08 = 1; @@ -3210,7 +3189,8 @@ void fn_1_98A0(omObjData* arg0) { if (var_r23 == 0) { var_r31->unk50.x *= var_r31->unk8C; var_r31->unk50.z *= var_r31->unk8C; - } else { + } + else { var_r31->unk50.x *= 0.995f * var_r31->unk8C; var_r31->unk50.z *= 0.995f * var_r31->unk8C; } @@ -3221,7 +3201,8 @@ void fn_1_98A0(omObjData* arg0) { var_r31->unk18++; if (var_r31->unk18 & 1) { Hu3DModelAttrReset(var_r31->unk00, HU3D_ATTR_DISPOFF); - } else { + } + else { Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); } if (var_r31->unk18 >= 120.0f) { @@ -3247,10 +3228,10 @@ void fn_1_98A0(omObjData* arg0) { spAC.x = var_r31->unk50.z; spAC.z = -var_r31->unk50.x; spAC.y = 0.0f; - var_f31 = 0.05 * PSVECMag(&spAC); + var_f31 = 0.05 * VECMag(&spAC); if (var_f31 > 0.00001f) { - PSMTXRotAxisRad(spC4, &spAC, var_f31); - PSMTXConcat(spC4, temp_r27->unk_F0, temp_r27->unk_F0); + MTXRotAxisRad(spC4, &spAC, var_f31); + MTXConcat(spC4, temp_r27->unk_F0, temp_r27->unk_F0); } Hu3DModelPosSet(var_r31->unk00, var_r31->unk38.x, var_r31->unk38.y, var_r31->unk38.z); break; @@ -3258,7 +3239,8 @@ void fn_1_98A0(omObjData* arg0) { var_r31->unk18++; if (var_r31->unk18 & 1) { Hu3DModelAttrReset(var_r31->unk00, HU3D_ATTR_DISPOFF); - } else { + } + else { Hu3DModelAttrSet(var_r31->unk00, HU3D_ATTR_DISPOFF); } if (var_r31->unk18 >= 120.0f) { @@ -3273,17 +3255,20 @@ void fn_1_98A0(omObjData* arg0) { } } -void fn_1_A9A0(omObjData* arg0) { +void fn_1_A9A0(omObjData *arg0) +{ arg0->func = NULL; } -void fn_1_A9AC(void) { +void fn_1_A9AC(void) +{ fn_1_A9A0(lbl_1_bss_A8); } -s32 fn_1_A9D4(s32 arg0, Vec arg1, Vec arg2) { - StructBssA8Data* var_r31; - ModelData* temp_r26; +s32 fn_1_A9D4(s32 arg0, Vec arg1, Vec arg2) +{ + StructBssA8Data *var_r31; + ModelData *temp_r26; s32 var_r27; s32 i; @@ -3326,12 +3311,13 @@ s32 fn_1_A9D4(s32 arg0, Vec arg1, Vec arg2) { Hu3DModelPosSet(var_r31->unk00, var_r31->unk38.x, var_r31->unk38.y, var_r31->unk38.z); Hu3DModelRotSet(var_r31->unk00, var_r31->unk44, var_r31->unk48, var_r31->unk4C); Hu3DModelAttrReset(var_r31->unk00, HU3D_ATTR_DISPOFF); - PSMTXIdentity(temp_r26->unk_F0); + MTXIdentity(temp_r26->unk_F0); return i; } -void fn_1_AC0C(s32 arg0, Vec arg1) { - StructBssA8Data* var_r31; +void fn_1_AC0C(s32 arg0, Vec arg1) +{ + StructBssA8Data *var_r31; if (lbl_1_bss_A8 != NULL) { var_r31 = lbl_1_bss_A8->data; @@ -3342,12 +3328,13 @@ void fn_1_AC0C(s32 arg0, Vec arg1) { } } -void fn_1_AC80(s32 arg0, Vec arg1) { +void fn_1_AC80(s32 arg0, Vec arg1) +{ Vec sp14; Vec sp8; float var_f31; - StructBssA8Data* var_r28; - StructBssA8Data* temp_r31; + StructBssA8Data *var_r28; + StructBssA8Data *temp_r31; if (lbl_1_bss_A8 == NULL) { return; @@ -3368,15 +3355,17 @@ void fn_1_AC80(s32 arg0, Vec arg1) { sp14 = temp_r31->unk38; var_f31 = -800.0f - sp14.z; temp_r31->unk1C = fabs(var_f31 / temp_r31->unk50.z); - PSVECScale(&arg1, &sp8, temp_r31->unk1C); - PSVECAdd(&sp14, &sp8, &temp_r31->unk68); - } else { + VECScale(&arg1, &sp8, temp_r31->unk1C); + VECAdd(&sp14, &sp8, &temp_r31->unk68); + } + else { temp_r31->unk1C = 1000; } } -s32 fn_1_AE64(s32 arg0) { - StructBssA8Data* temp_r31; +s32 fn_1_AE64(s32 arg0) +{ + StructBssA8Data *temp_r31; if (lbl_1_bss_A8 == NULL) { return -1; @@ -3391,9 +3380,10 @@ s32 fn_1_AE64(s32 arg0) { return temp_r31[arg0].unk0C; } -void fn_1_AEE8(s32 arg0) { - StructBssA8Data* var_r26; - StructBssA8Data* temp_r31; +void fn_1_AEE8(s32 arg0) +{ + StructBssA8Data *var_r26; + StructBssA8Data *temp_r31; if (lbl_1_bss_A8 == NULL) { return; @@ -3413,9 +3403,10 @@ void fn_1_AEE8(s32 arg0) { lbl_1_bss_104--; } -StructBssA8Data* fn_1_B13C(s32 arg0) { - StructBssA8Data* temp_r31; - StructBssA8Data* sp8; +StructBssA8Data *fn_1_B13C(s32 arg0) +{ + StructBssA8Data *temp_r31; + StructBssA8Data *sp8; if (lbl_1_bss_A8 == NULL) { return NULL; @@ -3430,10 +3421,11 @@ StructBssA8Data* fn_1_B13C(s32 arg0) { GXColor lbl_1_data_758 = { 0xFF, 0xFF, 0xFF, 0xFF }; -void fn_1_B1A4(void) { +void fn_1_B1A4(void) +{ Vec sp2C; - StructBssA8Data* sp10; - StructBssA8Data* var_r31; + StructBssA8Data *sp10; + StructBssA8Data *var_r31; s32 spC; s32 i; @@ -3455,12 +3447,13 @@ void fn_1_B1A4(void) { } } -s32 fn_1_B304(StructBssA8Data** arg0) { +s32 fn_1_B304(StructBssA8Data **arg0) +{ s32 var_r29; s32 i; - StructBssA8Data* var_r30; - StructBssA8Data* var_r28; - StructBssA8Data* var_r27; + StructBssA8Data *var_r30; + StructBssA8Data *var_r28; + StructBssA8Data *var_r27; if (lbl_1_bss_A8 == NULL) { return; @@ -3485,12 +3478,13 @@ s32 fn_1_B304(StructBssA8Data** arg0) { return var_r29; } -void fn_1_B430(void) { +void fn_1_B430(void) +{ Vec sp2C[8]; Vec sp20; Vec sp14; Vec sp8; - StructBss94Data* var_r31; + StructBss94Data *var_r31; s32 i; var_r31 = lbl_1_bss_94 = HuMemDirectMallocNum(HEAP_SYSTEM, 16 * sizeof(*lbl_1_bss_94), MEMORY_DEFAULT_NUM); @@ -3614,17 +3608,15 @@ void fn_1_B430(void) { fn_1_BCD8(sp2C, NULL, NULL, 0.1f, 0, 0x8006); } -s16 lbl_1_data_75C[][3] = { - { 0, 1, 2 }, { 1, 3, 2 }, { 6, 5, 4 }, { 5, 6, 7 }, - { 0, 2, 4 }, { 2, 6, 4 }, { 3, 1, 7 }, { 7, 1, 5 }, - { 2, 3, 6 }, { 3, 7, 6 }, { 1, 0, 4 }, { 1, 4, 5 } -}; +s16 lbl_1_data_75C[][3] = { { 0, 1, 2 }, { 1, 3, 2 }, { 6, 5, 4 }, { 5, 6, 7 }, { 0, 2, 4 }, { 2, 6, 4 }, { 3, 1, 7 }, { 7, 1, 5 }, { 2, 3, 6 }, + { 3, 7, 6 }, { 1, 0, 4 }, { 1, 4, 5 } }; -void fn_1_BCD8(Vec* arg0, Vec* arg1, Vec* arg2, float arg3, s32 arg4, s32 arg5) { +void fn_1_BCD8(Vec *arg0, Vec *arg1, Vec *arg2, float arg3, s32 arg4, s32 arg5) +{ Vec sp24[8]; Vec sp18; float var_f29; - StructBss94Data* var_r30; + StructBss94Data *var_r30; s32 i; s32 j; @@ -3678,10 +3670,7 @@ void fn_1_BCD8(Vec* arg0, Vec* arg1, Vec* arg2, float arg3, s32 arg4, s32 arg5) sp24[7].y = arg0[0].y - arg1->y; sp24[7].z = arg0[0].z + arg1->z; for (j = 0; j < 12; j++) { - fn_1_129F0(&sp24[lbl_1_data_75C[j][0]], - &sp24[lbl_1_data_75C[j][1]], - &sp24[lbl_1_data_75C[j][2]], - var_r30->unk44[j]); + fn_1_129F0(&sp24[lbl_1_data_75C[j][0]], &sp24[lbl_1_data_75C[j][1]], &sp24[lbl_1_data_75C[j][2]], var_r30->unk44[j]); var_r30->unk104[j][0] = sp24[lbl_1_data_75C[j][0]]; var_r30->unk104[j][1] = sp24[lbl_1_data_75C[j][1]]; var_r30->unk104[j][2] = sp24[lbl_1_data_75C[j][2]]; @@ -3739,8 +3728,9 @@ void fn_1_BCD8(Vec* arg0, Vec* arg1, Vec* arg2, float arg3, s32 arg4, s32 arg5) s32 lbl_1_data_7C4[] = { 1, 1, 0, 0, 2, 2 }; -s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) { - StructBss94Data* var_r31; +s32 fn_1_C498(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, float arg4, s32 arg5) +{ + StructBss94Data *var_r31; Vec sp140[6]; Vec sp134; Vec sp128; @@ -3780,7 +3770,8 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) *arg2 = sp134; var_r26 = 0; } - } else { + } + else { if (arg0->x < var_r31->unk34 - arg4 && sp134.x >= var_r31->unk34 - arg4 - 1.0f) { sp134.x = var_r31->unk34 - arg4; *arg2 = sp134; @@ -3795,7 +3786,8 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) *arg2 = sp134; var_r26 = 1; } - } else { + } + else { if (arg0->y < var_r31->unk34 - arg4 && sp134.y >= var_r31->unk34 - arg4 - 1.0f) { sp134.y = var_r31->unk34 - arg4; *arg2 = sp134; @@ -3810,7 +3802,8 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) *arg2 = sp134; var_r26 = 2; } - } else { + } + else { if (arg0->z < var_r31->unk34 - arg4 && sp134.z >= var_r31->unk34 - arg4 - 1.0f) { sp134.z = var_r31->unk34 - arg4; *arg2 = sp134; @@ -3820,11 +3813,8 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) break; case 4: arg4 = 0.0f; - PSVECSubtract(&sp134, &var_r31->unk04, &sp128); - if (fabs(sp128.x) < var_r31->unk10.x + arg4 - && fabs(sp128.y) < var_r31->unk10.y + arg4 - && fabs(sp128.z) < var_r31->unk10.z + arg4) - { + VECSubtract(&sp134, &var_r31->unk04, &sp128); + if (fabs(sp128.x) < var_r31->unk10.x + arg4 && fabs(sp128.y) < var_r31->unk10.y + arg4 && fabs(sp128.z) < var_r31->unk10.z + arg4) { for (j = 0; j < 6; j++) { if (var_r31->unk40 & (1 << j)) { var_r24 = fn_1_12C6C(arg0, &sp134, var_r31->unk44[j * 2]); @@ -3869,9 +3859,11 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) sp110.z = fabs(var_r31->unk44[0][2]); if (sp110.x > sp110.y && sp110.x > sp110.z) { var_r24 = 0; - } else if (sp110.y > sp110.x && sp110.y > sp110.z) { + } + else if (sp110.y > sp110.x && sp110.y > sp110.z) { var_r24 = 1; - } else { + } + else { var_r24 = 2; } sp140[0] = var_r31->unk104[0][0]; @@ -3915,33 +3907,36 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) if (var_f19 >= var_r31->unk04.y && var_f19 <= var_r31->unk10.y) { spC8.z = spC8.y; spC8.y = 0.0f; - PSVECSubtract(&spC8, &var_r31->unk04, &sp128); + VECSubtract(&spC8, &var_r31->unk04, &sp128); sp128.y = 0.0f; - if (PSVECMag(&sp128) == 0.0f) { + if (VECMag(&sp128) == 0.0f) { sp128.z = 1.0f; - } else { - PSVECNormalize(&sp128, &sp128); } - PSVECScale(&sp128, &sp128, var_r31->unk34 + arg4 + 1.0f); + else { + VECNormalize(&sp128, &sp128); + } + VECScale(&sp128, &sp128, var_r31->unk34 + arg4 + 1.0f); arg2->x = sp128.x + var_r31->unk04.x; arg2->z = sp128.z + var_r31->unk04.z; arg2->y = var_f19; sp2C = var_f30; var_r26 = 99; } - } else { + } + else { sp2C = var_f30; - PSVECSubtract(&sp134, &var_r31->unk04, &sp128); + VECSubtract(&sp134, &var_r31->unk04, &sp128); var_f30 = VECMagXZ(&sp128); if (var_f30 < var_r31->unk34 + arg4 && sp134.y >= var_r31->unk04.y && sp134.y <= var_r31->unk10.y) { - PSVECSubtract(&sp134, &var_r31->unk04, &sp128); + VECSubtract(&sp134, &var_r31->unk04, &sp128); sp128.y = 0.0f; - if (PSVECMag(&sp128) == 0.0f) { + if (VECMag(&sp128) == 0.0f) { sp128.z = 1.0f; - } else { - PSVECNormalize(&sp128, &sp128); } - PSVECScale(&sp128, &sp128, var_r31->unk34 + arg4 + 1.0f); + else { + VECNormalize(&sp128, &sp128); + } + VECScale(&sp128, &sp128, var_r31->unk34 + arg4 + 1.0f); arg2->x = var_r31->unk04.x + sp128.x; arg2->z = var_r31->unk04.z + sp128.z; arg2->y = sp134.y; @@ -3958,7 +3953,8 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) var_f30 = 1.0f; sp128.x = 0.0f; sp128.z = 1.0f; - } else { + } + else { var_f30 = 1.0f / var_f30; } spC8.x = sp128.x * var_f30; @@ -3977,16 +3973,18 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) var_f30 = 1.0f; sp128.x = 0.0f; sp128.z = 1.0f; - } else { + } + else { var_f30 = 1.0f / var_f30; } sp128.x = sp128.x * var_f30 - spD4.x; sp128.z = sp128.z * var_f30 - spD4.z; sp128.y = 0.0f; - if (PSVECMag(&sp128) == 0.0f) { + if (VECMag(&sp128) == 0.0f) { sp128.z = 1.0f; - } else { - PSVECNormalize(&sp128, &sp128); + } + else { + VECNormalize(&sp128, &sp128); } var_f30 = VECMagXZ(arg1); arg3->x = sp128.x * var_f30 * var_r31->unk3C; @@ -4046,12 +4044,13 @@ s32 fn_1_C498(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) return 0; } -void fn_1_D930(void) { - omObjData* var_r30; - StructBssA4Data* var_r31; - AnimData* var_r27; - StructM423_05* var_r29; - ModelData* var_r28; +void fn_1_D930(void) +{ + omObjData *var_r30; + StructBssA4Data *var_r31; + AnimData *var_r27; + StructM423_05 *var_r29; + ModelData *var_r28; s32 sp8; var_r30 = lbl_1_bss_A4 = omAddObjEx(lbl_1_bss_120, 0xBF, 0, 0, -1, fn_1_DA38); @@ -4067,11 +4066,12 @@ void fn_1_D930(void) { var_r29->unk20 = 0; } -void fn_1_DA38(omObjData* arg0) { - StructBssA4Data* temp_r30; - ModelData* var_r27; - StructM423_05* temp_r29; - StructM423_04* var_r31; +void fn_1_DA38(omObjData *arg0) +{ + StructBssA4Data *temp_r30; + ModelData *var_r27; + StructM423_05 *temp_r29; + StructM423_04 *var_r31; s32 i; temp_r30 = arg0->data; @@ -4106,9 +4106,10 @@ void fn_1_DA38(omObjData* arg0) { } } -void fn_1_DBC8(void) { - omObjData* temp_r31; - StructBssA4Data* temp_r30; +void fn_1_DBC8(void) +{ + omObjData *temp_r31; + StructBssA4Data *temp_r30; temp_r31 = lbl_1_bss_A4; temp_r30 = temp_r31->data; @@ -4117,12 +4118,13 @@ void fn_1_DBC8(void) { temp_r31->func = NULL; } -inline s32 fn_1_DC24(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, GXColor arg5) { - omObjData* var_r27; - StructBssA4Data* temp_r28; - ModelData* var_r26; - StructM423_05* temp_r30; - StructM423_04* var_r31; +inline s32 fn_1_DC24(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, GXColor arg5) +{ + omObjData *var_r27; + StructBssA4Data *temp_r28; + ModelData *var_r26; + StructM423_05 *temp_r30; + StructM423_04 *var_r31; s32 i; var_r27 = lbl_1_bss_A4; @@ -4160,7 +4162,8 @@ inline s32 fn_1_DC24(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, GXC return i; } -s32 fn_1_DD70(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5, GXColor arg6) { +s32 fn_1_DD70(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5, GXColor arg6) +{ Vec sp60; Vec sp54; float temp_f31; @@ -4170,7 +4173,7 @@ s32 fn_1_DD70(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5 sp54.x = arg1.z; sp54.z = arg1.x; sp54.y = 0.0f; - PSVECNormalize(&sp54, &sp54); + VECNormalize(&sp54, &sp54); temp_f31 = 0.5f * arg4; sp60.x = arg0.x + sp54.x * temp_f31; sp60.y = arg0.y + sp54.y * temp_f31; @@ -4183,8 +4186,9 @@ s32 fn_1_DD70(Vec arg0, Vec arg1, float arg2, float arg3, float arg4, float arg5 return (sp20 << 16) | sp1C; } -void fn_1_E1BC(void) { - omObjData* var_r31; +void fn_1_E1BC(void) +{ + omObjData *var_r31; s32 var_r29; s32 i; @@ -4197,8 +4201,9 @@ void fn_1_E1BC(void) { var_r31->stat |= 0x100; } -void fn_1_E290(omObjData* arg0) { - ModelData* var_r28; +void fn_1_E290(omObjData *arg0) +{ + ModelData *var_r28; s32 temp_r30; s32 i; @@ -4211,12 +4216,12 @@ void fn_1_E290(omObjData* arg0) { } } -void fn_1_E330(void) { -} +void fn_1_E330(void) { } -s32 fn_1_E334(Vec arg0, Vec arg1, float arg2) { - omObjData* var_r31; - ModelData* var_r26; +s32 fn_1_E334(Vec arg0, Vec arg1, float arg2) +{ + omObjData *var_r31; + ModelData *var_r26; s32 temp_r29; s32 i; @@ -4240,8 +4245,9 @@ s32 fn_1_E334(Vec arg0, Vec arg1, float arg2) { return i; } -void fn_1_E460(void) { - omObjData* temp_r3; +void fn_1_E460(void) +{ + omObjData *temp_r3; temp_r3 = lbl_1_bss_9C = omAddObjEx(lbl_1_bss_120, 0xBF, 1, 0, -1, fn_1_E4EC); temp_r3->model[0] = fn_1_E678(); @@ -4249,10 +4255,11 @@ void fn_1_E460(void) { Hu3DModelLayerSet(temp_r3->model[0], 2); } -void fn_1_E4EC(omObjData* arg0) { - ModelData* var_r29; - StructM423_0B* var_r28; - StructM423_0A* var_r31; +void fn_1_E4EC(omObjData *arg0) +{ + ModelData *var_r29; + StructM423_0B *var_r28; + StructM423_0A *var_r31; s32 i; var_r29 = &Hu3DData[arg0->model[0]]; @@ -4265,7 +4272,8 @@ void fn_1_E4EC(omObjData* arg0) { var_r31->unk00++; if (var_r31->unk00 < 12.0f) { var_r31->unk04 += 0.058333337f; - } else { + } + else { var_r31->unk04 += 0.025000002f; var_r31->unk10 -= 0.050000004f; } @@ -4275,10 +4283,11 @@ void fn_1_E4EC(omObjData* arg0) { } } -void fn_1_E60C(void) { - omObjData* temp_r31; - ModelData* var_r30; - StructM423_0B* var_r29; +void fn_1_E60C(void) +{ + omObjData *temp_r31; + ModelData *var_r30; + StructM423_0B *var_r29; temp_r31 = lbl_1_bss_9C; var_r30 = &Hu3DData[temp_r31->model[0]]; @@ -4287,17 +4296,18 @@ void fn_1_E60C(void) { temp_r31->func = NULL; } -s32 fn_1_E678(void) { +s32 fn_1_E678(void) +{ float sp88[32][2]; float sp8[32]; float temp_f28; float temp_f30; float temp_f29; float var_f31; - ModelData* temp_r27; - StructM423_0B* var_r30; - StructM423_09* var_r29; - StructM423_08* var_r28; + ModelData *temp_r27; + StructM423_0B *var_r30; + StructM423_09 *var_r29; + StructM423_08 *var_r28; s32 var_r26; s32 i; @@ -4399,18 +4409,11 @@ s32 fn_1_E678(void) { return var_r26; } -GXColor lbl_1_data_7FC[] = { - { 0x66, 0x00, 0x00, 0xFF }, - { 0x00, 0x00, 0x66, 0xFF }, - { 0x66, 0x00, 0x5B, 0xFF }, - { 0x00, 0x66, 0x00, 0xFF }, - { 0x42, 0x00, 0x4C, 0xFF }, - { 0x47, 0x28, 0x00, 0xFF }, - { 0x66, 0x66, 0x00, 0xFF }, - { 0x00, 0x00, 0x00, 0xFF } -}; +GXColor lbl_1_data_7FC[] = { { 0x66, 0x00, 0x00, 0xFF }, { 0x00, 0x00, 0x66, 0xFF }, { 0x66, 0x00, 0x5B, 0xFF }, { 0x00, 0x66, 0x00, 0xFF }, + { 0x42, 0x00, 0x4C, 0xFF }, { 0x47, 0x28, 0x00, 0xFF }, { 0x66, 0x66, 0x00, 0xFF }, { 0x00, 0x00, 0x00, 0xFF } }; -void fn_1_EF44(ModelData* arg0, Mtx arg1) { +void fn_1_EF44(ModelData *arg0, Mtx arg1) +{ Mtx sp124; Mtx spF4; Mtx spC4; @@ -4419,8 +4422,8 @@ void fn_1_EF44(ModelData* arg0, Mtx arg1) { Mtx sp34; GXTexObj sp14; GXColor sp10 = { 0xCC, 0xCC, 0xCC, 0x7F }; - StructM423_0B* temp_r30; - StructM423_0A* var_r31; + StructM423_0B *temp_r30; + StructM423_0A *var_r31; s32 i; temp_r30 = arg0->unk_120; @@ -4428,8 +4431,8 @@ void fn_1_EF44(ModelData* arg0, Mtx arg1) { GXSetTexCopyDst(640, 480, GX_TF_RGB5A3, GX_FALSE); GXCopyTex(temp_r30->unk208, GX_FALSE); GXPixModeSync(); - PSMTXTrans(spF4, -400.0f, 400.0f, -700.0f); - PSMTXConcat(Hu3DCameraMtx, spF4, sp64); + MTXTrans(spF4, -400.0f, 400.0f, -700.0f); + MTXConcat(Hu3DCameraMtx, spF4, sp64); GXLoadPosMtxImm(sp64, GX_PNMTX0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_CLAMP, GX_AF_NONE); @@ -4439,10 +4442,10 @@ void fn_1_EF44(ModelData* arg0, Mtx arg1) { HuSprTexLoad(temp_r30->unk200, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); GXSetNumTexGens(2); C_MTXLightPerspective(sp94, 41.5f, 1.2f, 0.5555555f, -0.5f, 0.5555555f, 0.5f); - PSMTXConcat(sp94, Hu3DCameraMtx, sp94); - PSMTXInverse(Hu3DCameraMtx, sp34); - PSMTXConcat(sp34, sp64, sp124); - PSMTXConcat(sp94, sp124, spF4); + MTXConcat(sp94, Hu3DCameraMtx, sp94); + MTXInverse(Hu3DCameraMtx, sp34); + MTXConcat(sp34, sp64, sp124); + MTXConcat(sp94, sp124, spF4); GXLoadTexMtxImm(spF4, GX_TEXMTX0, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, GX_TEXMTX0, GX_FALSE, GX_PTIDENTITY); GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEXCOORD0, GX_TEXMTX1, GX_FALSE, GX_PTIDENTITY); @@ -4450,8 +4453,8 @@ void fn_1_EF44(ModelData* arg0, Mtx arg1) { GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP1); GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, GX_TRUE, GX_FALSE, GX_ITM_0); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); - PSMTXScale(spF4, -0.5f, -0.5f, 0.5f); - GXSetIndTexMtx(GX_ITM_0, (float(*)[3]) spF4, -1); + MTXScale(spF4, -0.5f, -0.5f, 0.5f); + GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spF4, -1); GXSetNumTevStages(1); GXSetTevColor(GX_TEVREG1, sp10); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); @@ -4478,17 +4481,17 @@ void fn_1_EF44(ModelData* arg0, Mtx arg1) { } lbl_1_data_7FC[var_r31->unk02].a = 255.0f * var_r31->unk10; GXSetTevColor(GX_TEVREG0, lbl_1_data_7FC[var_r31->unk02]); - PSMTXTrans(spF4, var_r31->unk14.x, var_r31->unk14.y, var_r31->unk14.z); - PSMTXRotRad(sp124, 'Z', MTXDegToRad(var_r31->unk0C)); - PSMTXConcat(spF4, sp124, spF4); - PSMTXScale(spC4, var_r31->unk04 * var_r31->unk08, var_r31->unk04 * var_r31->unk08, var_r31->unk04 * var_r31->unk08); - PSMTXConcat(spF4, spC4, spF4); - PSMTXConcat(Hu3DCameraMtx, spF4, sp64); + MTXTrans(spF4, var_r31->unk14.x, var_r31->unk14.y, var_r31->unk14.z); + MTXRotRad(sp124, 'Z', MTXDegToRad(var_r31->unk0C)); + MTXConcat(spF4, sp124, spF4); + MTXScale(spC4, var_r31->unk04 * var_r31->unk08, var_r31->unk04 * var_r31->unk08, var_r31->unk04 * var_r31->unk08); + MTXConcat(spF4, spC4, spF4); + MTXConcat(Hu3DCameraMtx, spF4, sp64); GXLoadPosMtxImm(sp64, GX_PNMTX0); - PSMTXConcat(sp34, sp64, sp124); - PSMTXConcat(sp94, sp124, spF4); + MTXConcat(sp34, sp64, sp124); + MTXConcat(sp94, sp124, spF4); GXLoadTexMtxImm(spF4, GX_TEXMTX0, GX_MTX3x4); - PSMTXRotRad(sp124, 'Z', MTXDegToRad(-var_r31->unk0C)); + MTXRotRad(sp124, 'Z', MTXDegToRad(-var_r31->unk0C)); GXLoadTexMtxImm(sp124, GX_TEXMTX1, GX_MTX2x4); GXCallDisplayList(temp_r30->unk220, temp_r30->unk21C); } @@ -4496,11 +4499,12 @@ void fn_1_EF44(ModelData* arg0, Mtx arg1) { GXSetTevDirect(GX_TEVSTAGE0); } -s32 fn_1_F574(Vec arg0, float arg1, s32 arg2) { - omObjData* var_r29; - ModelData* var_r28; - StructM423_0B* var_r26; - StructM423_0A* var_r31; +s32 fn_1_F574(Vec arg0, float arg1, s32 arg2) +{ + omObjData *var_r29; + ModelData *var_r28; + StructM423_0B *var_r26; + StructM423_0A *var_r31; s32 var_r27; s32 i; @@ -4527,34 +4531,24 @@ s32 fn_1_F574(Vec arg0, float arg1, s32 arg2) { } } -void fn_1_F690(void) { +void fn_1_F690(void) +{ lbl_1_bss_98 = omAddObjEx(lbl_1_bss_120, 0xFE, 0, 0, -1, fn_1_F6E0); } -s32 lbl_1_data_81C[] = { - DATA_MAKE_NUM(DATADIR_MGCONST, 12), - DATA_MAKE_NUM(DATADIR_MGCONST, 13), - DATA_MAKE_NUM(DATADIR_MGCONST, 14), - DATA_MAKE_NUM(DATADIR_MGCONST, 15), - DATA_MAKE_NUM(DATADIR_MGCONST, 16), - DATA_MAKE_NUM(DATADIR_MGCONST, 17), - DATA_MAKE_NUM(DATADIR_MGCONST, 18), - DATA_MAKE_NUM(DATADIR_MGCONST, 19) -}; +s32 lbl_1_data_81C[] = { DATA_MAKE_NUM(DATADIR_MGCONST, 12), DATA_MAKE_NUM(DATADIR_MGCONST, 13), DATA_MAKE_NUM(DATADIR_MGCONST, 14), + DATA_MAKE_NUM(DATADIR_MGCONST, 15), DATA_MAKE_NUM(DATADIR_MGCONST, 16), DATA_MAKE_NUM(DATADIR_MGCONST, 17), DATA_MAKE_NUM(DATADIR_MGCONST, 18), + DATA_MAKE_NUM(DATADIR_MGCONST, 19) }; s16 lbl_1_data_83C[] = { 0x7F, 0x7F, 0x7F, 0x100 }; -s16 lbl_1_data_844[][2] = { - { -75, 10 }, { -61, -14 }, { -47, 10 }, { 0, 0 }, - { -12, -8 }, { -12, -8 }, { 6, -8 }, { 6, -8 }, - { 24, -8 }, { 24, -8 }, { 42, -8 }, { 42, -8 }, - { 60, -8 }, { 60, -8 }, { -12, 10 }, { -12, 10 }, - { 6, 10 }, { 6, 10 }, { 24, 10 }, { 24, 10 }, - { 42, 10 }, { 42, 10 }, { 60, 10 }, { 60, 10 } -}; +s16 lbl_1_data_844[][2] = { { -75, 10 }, { -61, -14 }, { -47, 10 }, { 0, 0 }, { -12, -8 }, { -12, -8 }, { 6, -8 }, { 6, -8 }, { 24, -8 }, { 24, -8 }, + { 42, -8 }, { 42, -8 }, { 60, -8 }, { 60, -8 }, { -12, 10 }, { -12, 10 }, { 6, 10 }, { 6, 10 }, { 24, 10 }, { 24, 10 }, { 42, 10 }, { 42, 10 }, + { 60, 10 }, { 60, 10 } }; -void fn_1_F6E0(omObjData* arg0) { - StructM423_0C* var_r31; +void fn_1_F6E0(omObjData *arg0) +{ + StructM423_0C *var_r31; s32 sp8; s32 var_r29; s32 i; @@ -4586,7 +4580,8 @@ void fn_1_F6E0(omObjData* arg0) { if (!(i & 1)) { var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M423, 24), 0x40, 0); var_r31->unk10[i] = var_r29; - } else { + } + else { var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M423, 25), 0x20, 0); var_r31->unk10[i] = var_r29; } @@ -4609,12 +4604,13 @@ void fn_1_F6E0(omObjData* arg0) { } } -void fn_1_FA40(omObjData* arg0) { +void fn_1_FA40(omObjData *arg0) +{ float var_f31; float var_f28; float temp_f30; float temp_f29; - StructM423_0C* temp_r31; + StructM423_0C *temp_r31; s32 temp_r28; s32 temp_r29; s32 i; @@ -4627,7 +4623,8 @@ void fn_1_FA40(omObjData* arg0) { if (temp_r31->unk0C != 0) { var_f31 = 1.0 + 0.8f * sind(180.0f * (temp_r31->unk0C / 20.0f)); temp_r31->unk0C--; - } else { + } + else { var_f31 = 1.0f; } var_f31 = 1.0f; @@ -4644,11 +4641,13 @@ void fn_1_FA40(omObjData* arg0) { if (!(i & 1)) { espPosSet(temp_r31->unk10[i], temp_f30, temp_f29); espScaleSet(temp_r31->unk10[i], 1.0f, 1.0f); - } else { + } + else { temp_r29 = (i - 4) / 2; if (temp_r28 > temp_r29) { temp_r31->unk190[temp_r29][0] = 1; - } else { + } + else { temp_r31->unk190[temp_r29][0] = 0; } if (temp_r31->unk190[temp_r29][0] != 0) { @@ -4656,7 +4655,8 @@ void fn_1_FA40(omObjData* arg0) { temp_r31->unk190[temp_r29][1]++; var_f31 = 3.0f - 2.0f * (temp_r31->unk190[temp_r29][1] / 15.0f); var_f28 = temp_r31->unk190[temp_r29][1] / 15.0f; - } else { + } + else { var_f31 = 1.0f; var_f28 = 1.0f; } @@ -4664,15 +4664,17 @@ void fn_1_FA40(omObjData* arg0) { espPosSet(temp_r31->unk10[i], temp_f30, temp_f29); espTPLvlSet(temp_r31->unk10[i], var_f28); espScaleSet(temp_r31->unk10[i], var_f31, var_f31); - } else { + } + else { espDispOff(temp_r31->unk10[i]); } } } } -void fn_1_FF10(omObjData* arg0) { - StructM423_0C* temp_r29; +void fn_1_FF10(omObjData *arg0) +{ + StructM423_0C *temp_r29; s32 i; if (arg0 && arg0->data) { @@ -4685,19 +4687,22 @@ void fn_1_FF10(omObjData* arg0) { } } -void fn_1_FF98(void) { +void fn_1_FF98(void) +{ fn_1_FF10(lbl_1_bss_98); } -void fn_1_10028(s32 arg0) { - StructM423_0C* temp_r30; +void fn_1_10028(s32 arg0) +{ + StructM423_0C *temp_r30; s32 i; temp_r30 = lbl_1_bss_98->data; for (i = 0; i < 24; i++) { if (arg0 != 0) { espDispOn(temp_r30->unk10[i]); - } else { + } + else { espDispOff(temp_r30->unk10[i]); } if (i >= 4 && (i & 1)) { @@ -4706,8 +4711,9 @@ void fn_1_10028(s32 arg0) { } } -void fn_1_100DC(void) { - omObjData* temp_r3; +void fn_1_100DC(void) +{ + omObjData *temp_r3; s32 i; Hu3DCameraCreate(1); @@ -4738,7 +4744,8 @@ void fn_1_100DC(void) { omAddObjEx(lbl_1_bss_120, 0xFF, 0, 0, -1, fn_1_10480); } -void fn_1_10480(omObjData* arg0) { +void fn_1_10480(omObjData *arg0) +{ CRotM[1].x = CRotM[0].x; CRotM[1].y = CRotM[0].y; CRotM[1].z = CRotM[0].z; @@ -4748,16 +4755,17 @@ void fn_1_10480(omObjData* arg0) { CZoomM[1] = CZoomM[0]; } -void fn_1_1052C(void) { -} +void fn_1_1052C(void) { } -s32 fn_1_10530(void) { +s32 fn_1_10530(void) +{ return lbl_1_bss_84; } -void fn_1_10540(s32 arg0, s32 arg1, s32 arg2, f32 arg3) { - StructData0* temp_r31; - StructData0* temp_r30; +void fn_1_10540(s32 arg0, s32 arg1, s32 arg2, f32 arg3) +{ + StructData0 *temp_r31; + StructData0 *temp_r30; temp_r31 = &lbl_1_data_0[arg1]; temp_r30 = &lbl_1_data_0[arg2]; @@ -4770,13 +4778,12 @@ void fn_1_10540(s32 arg0, s32 arg1, s32 arg2, f32 arg3) { CZoomM[arg0] = temp_r31->unk18 + arg3 * (temp_r30->unk18 - temp_r31->unk18); } -float lbl_1_data_8A4[] = { - 95.0f, 95.0f, 135.0f, 95.0f, 95.0f, 125.0f, 135.0f, 125.0f -}; +float lbl_1_data_8A4[] = { 95.0f, 95.0f, 135.0f, 95.0f, 95.0f, 125.0f, 135.0f, 125.0f }; -void fn_1_106D8(s32 arg0) { +void fn_1_106D8(s32 arg0) +{ float var_f31; - StructBssBCData* var_r30; + StructBssBCData *var_r30; s32 var_r29; if (lbl_1_bss_90 != arg0) { @@ -4790,7 +4797,8 @@ void fn_1_106D8(s32 arg0) { lbl_1_bss_80 = 0; if (arg0 != 0) { lbl_1_bss_7C = frand(); - } else { + } + else { lbl_1_bss_7C = 0; } lbl_1_bss_90 = arg0; @@ -4802,9 +4810,10 @@ void fn_1_106D8(s32 arg0) { case 2: lbl_1_bss_80++; if (lbl_1_bss_7C & 1) { - var_f31 = cosd((float) lbl_1_bss_80); - } else { - var_f31 = -cosd((float) lbl_1_bss_80); + var_f31 = cosd((float)lbl_1_bss_80); + } + else { + var_f31 = -cosd((float)lbl_1_bss_80); } CRotM->y = 23.0f * var_f31 + lbl_1_data_38[arg0].unk00.y; break; @@ -4814,7 +4823,8 @@ void fn_1_106D8(s32 arg0) { lbl_1_bss_80++; if (lbl_1_bss_7C & 1) { CRotM->y = lbl_1_data_38[arg0].unk00.y - 45.0f + 0.5f * lbl_1_bss_80; - } else { + } + else { CRotM->y = lbl_1_data_38[arg0].unk00.y + 45.0f - 0.5f * lbl_1_bss_80; } break; @@ -4837,14 +4847,15 @@ void fn_1_106D8(s32 arg0) { } } -void fn_1_10BC8(void) { +void fn_1_10BC8(void) +{ Mtx44 sp64; Mtx sp34; Vec sp28; Vec sp1C; Vec sp10; GXColor spC; - CameraData* var_r31; + CameraData *var_r31; var_r31 = &Hu3DCamera[0]; if (var_r31->fov <= 0.0f) { @@ -4886,30 +4897,33 @@ void fn_1_10BC8(void) { GXEnd(); } -void fn_1_11008(StructBssD0Data* arg0, void* arg1, s16 arg2, GXTexWrapMode arg3, s32 arg4, s32 arg5) { +void fn_1_11008(StructBssD0Data *arg0, void *arg1, s16 arg2, GXTexWrapMode arg3, s32 arg4, s32 arg5) +{ GXTexObj sp18; - StructBssD0Data* var_r31; + StructBssD0Data *var_r31; var_r31 = arg0; GXInitTexObj(&sp18, arg1, var_r31->unk00, var_r31->unk04, GX_TF_RGB5A3, arg3, arg3, GX_FALSE); if (arg5 != 0) { GXInitTexObjLOD(&sp18, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); - } else { + } + else { GXInitTexObjLOD(&sp18, GX_NEAR, GX_NEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); } GXLoadTexObj(&sp18, arg2); } -s16 fn_1_11114(AnimData* arg0, s16 arg1) { +s16 fn_1_11114(AnimData *arg0, s16 arg1) +{ s16 var_r23; s16 i; - ModelData* temp_r27; - StructM423_05* var_r31; - StructM423_04* var_r29; - Vec* var_r25; - float (*var_r28)[2]; - void* var_r24; - void* var_r22; + ModelData *temp_r27; + StructM423_05 *var_r31; + StructM423_04 *var_r29; + Vec *var_r25; + float(*var_r28)[2]; + void *var_r24; + void *var_r22; var_r23 = Hu3DHookFuncCreate(fn_1_11900); temp_r27 = &Hu3DData[var_r23]; @@ -4987,17 +5001,18 @@ s16 fn_1_11114(AnimData* arg0, s16 arg1) { return var_r23; } -s16 fn_1_115C4(s16 arg0) { +s16 fn_1_115C4(s16 arg0) +{ s32 temp_r24; s16 var_r22; s16 i; - ModelData* temp_r23; - ModelData* temp_r27; - StructM423_05* temp_r26; - StructM423_05* var_r31; - StructM423_04* var_r30; - Vec* var_r25; - float (*var_r29)[2]; + ModelData *temp_r23; + ModelData *temp_r27; + StructM423_05 *temp_r26; + StructM423_05 *var_r31; + StructM423_04 *var_r30; + Vec *var_r25; + float(*var_r29)[2]; temp_r23 = &Hu3DData[arg0]; temp_r26 = temp_r23->unk_120; @@ -5051,21 +5066,12 @@ s16 fn_1_115C4(s16 arg0) { return var_r22; } -Vec lbl_1_data_8C4[] = { - { -0.5f, 0.5f, 0.0f }, - { 0.5f, 0.5f, 0.0f }, - { 0.5f, -0.5f, 0.0f }, - { -0.5f, -0.5f, 0.0f } -}; +Vec lbl_1_data_8C4[] = { { -0.5f, 0.5f, 0.0f }, { 0.5f, 0.5f, 0.0f }, { 0.5f, -0.5f, 0.0f }, { -0.5f, -0.5f, 0.0f } }; -float lbl_1_data_8F4[][2] = { - { 0.0f, 0.0f }, - { 0.25f, 0.0f }, - { 0.25f, 0.25f }, - { 0.0f, 0.25f } -}; +float lbl_1_data_8F4[][2] = { { 0.0f, 0.0f }, { 0.25f, 0.0f }, { 0.25f, 0.25f }, { 0.0f, 0.25f } }; -void fn_1_11900(ModelData* arg0, Mtx arg1) { +void fn_1_11900(ModelData *arg0, Mtx arg1) +{ Mtx sp128; Mtx spF8; Mtx spC8; @@ -5073,16 +5079,16 @@ void fn_1_11900(ModelData* arg0, Mtx arg1) { Vec sp68[4]; Vec sp38[4]; ROMtx sp8; - StructM423_05* temp_r31; - StructM423_04* var_r29; - Vec* var_r30; - float (*var_r28)[2]; - Vec* temp_r27; - Vec* temp_r24; + StructM423_05 *temp_r31; + StructM423_04 *var_r29; + Vec *var_r30; + float(*var_r28)[2]; + Vec *temp_r27; + Vec *temp_r24; s16 var_r21; s16 var_r20; s16 var_r19; - void (*var_r18)(ModelData*, struct struct_m423_05*, Mtx); + void (*var_r18)(ModelData *, struct struct_m423_05 *, Mtx); s16 i; s16 j; @@ -5101,18 +5107,22 @@ void fn_1_11900(ModelData* arg0, Mtx arg1) { if (shadowModelDrawF != 0) { GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ONE, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); - } else { + } + else { var_r21 = temp_r31->unk38->bmp->dataFmt & 0xF; if (var_r21 == 7 || var_r21 == 8) { GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ONE, GX_CC_RASC, GX_CC_ZERO); - } else { + } + else { GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); } if (temp_r31->unk22 & 1) { GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); - } else if (arg0->attr & 2) { + } + else if (arg0->attr & 2) { GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); - } else { + } + else { GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); } } @@ -5136,7 +5146,7 @@ void fn_1_11900(ModelData* arg0, Mtx arg1) { break; } if (HmfInverseMtxF3X3(arg1, sp128) == 0) { - PSMTXIdentity(sp128); + MTXIdentity(sp128); } PSMTXReorder(sp128, sp8); if (temp_r31->unk4C) { @@ -5157,29 +5167,31 @@ void fn_1_11900(ModelData* arg0, Mtx arg1) { var_r30++; var_r30->x = var_r30->y = var_r30->z = 0.0f; var_r30++; - } else if (!var_r29->unk34) { + } + else if (!var_r29->unk34) { temp_r27 = sp98; temp_r24 = sp38; - PSVECScale(temp_r24++, temp_r27, var_r29->unk30); - PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); - PSVECScale(temp_r24++, temp_r27, var_r29->unk30); - PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); - PSVECScale(temp_r24++, temp_r27, var_r29->unk30); - PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); - PSVECScale(temp_r24++, temp_r27, var_r29->unk30); - PSVECAdd(temp_r27++, &var_r29->unk38, var_r30++); - } else { - PSVECScale(&lbl_1_data_8C4[0], &sp98[0], var_r29->unk30); - PSVECScale(&lbl_1_data_8C4[1], &sp98[1], var_r29->unk30); - PSVECScale(&lbl_1_data_8C4[2], &sp98[2], var_r29->unk30); - PSVECScale(&lbl_1_data_8C4[3], &sp98[3], var_r29->unk30); - PSMTXRotRad(spC8, 'Z', var_r29->unk34); - PSMTXConcat(sp128, spC8, spF8); - PSMTXMultVecArray(spF8, sp98, sp68, 4); - PSVECAdd(&sp68[0], &var_r29->unk38, var_r30++); - PSVECAdd(&sp68[1], &var_r29->unk38, var_r30++); - PSVECAdd(&sp68[2], &var_r29->unk38, var_r30++); - PSVECAdd(&sp68[3], &var_r29->unk38, var_r30++); + VECScale(temp_r24++, temp_r27, var_r29->unk30); + VECAdd(temp_r27++, &var_r29->unk38, var_r30++); + VECScale(temp_r24++, temp_r27, var_r29->unk30); + VECAdd(temp_r27++, &var_r29->unk38, var_r30++); + VECScale(temp_r24++, temp_r27, var_r29->unk30); + VECAdd(temp_r27++, &var_r29->unk38, var_r30++); + VECScale(temp_r24++, temp_r27, var_r29->unk30); + VECAdd(temp_r27++, &var_r29->unk38, var_r30++); + } + else { + VECScale(&lbl_1_data_8C4[0], &sp98[0], var_r29->unk30); + VECScale(&lbl_1_data_8C4[1], &sp98[1], var_r29->unk30); + VECScale(&lbl_1_data_8C4[2], &sp98[2], var_r29->unk30); + VECScale(&lbl_1_data_8C4[3], &sp98[3], var_r29->unk30); + MTXRotRad(spC8, 'Z', var_r29->unk34); + MTXConcat(sp128, spC8, spF8); + MTXMultVecArray(spF8, sp98, sp68, 4); + VECAdd(&sp68[0], &var_r29->unk38, var_r30++); + VECAdd(&sp68[1], &var_r29->unk38, var_r30++); + VECAdd(&sp68[2], &var_r29->unk38, var_r30++); + VECAdd(&sp68[3], &var_r29->unk38, var_r30++); } } var_r29 = temp_r31->unk3C; @@ -5193,7 +5205,8 @@ void fn_1_11900(ModelData* arg0, Mtx arg1) { (*var_r28)[1] = 0.25f * var_r19 + lbl_1_data_8F4[j][1]; } } - } else { + } + else { for (i = 0; i < temp_r31->unk26; i++, var_r29++) { for (j = 0; j < 4; j++, var_r28++) { (*var_r28)[0] = 4.0f * lbl_1_data_8F4[j][0]; @@ -5230,40 +5243,47 @@ void fn_1_11900(ModelData* arg0, Mtx arg1) { } } -float fn_1_121DC(float arg0, float arg1) { +float fn_1_121DC(float arg0, float arg1) +{ float var_f31; if (arg0 >= 360.0f) { arg0 -= 360.0f; - } else if (arg0 < 0.0f) { + } + else if (arg0 < 0.0f) { arg0 += 360.0f; } if (arg1 >= 360.0f) { arg1 -= 360.0f; - } else if (arg1 < 0.0f) { + } + else if (arg1 < 0.0f) { arg1 += 360.0f; } var_f31 = arg0 - arg1; if (var_f31 <= -180.0f) { var_f31 += 360.0f; - } else if (var_f31 >= 180.0f) { + } + else if (var_f31 >= 180.0f) { var_f31 -= 360.0f; } return var_f31; } -float fn_1_122F4(float arg0, float arg1, float arg2) { +float fn_1_122F4(float arg0, float arg1, float arg2) +{ float var_f30; float var_f31; if (arg0 >= 360.0) { arg0 -= 360.0; - } else if (arg0 < 0.0) { + } + else if (arg0 < 0.0) { arg0 += 360.0; } if (arg1 >= 360.0) { arg1 -= 360.0; - } else if (arg1 < 0.0) { + } + else if (arg1 < 0.0) { arg1 += 360.0; } var_f30 = arg0 - arg1 + 360.0; @@ -5273,33 +5293,39 @@ float fn_1_122F4(float arg0, float arg1, float arg2) { if (var_f30 < 180.0) { if (var_f30 <= arg2) { var_f31 = var_f30; - } else { + } + else { var_f31 = arg2; } - } else { + } + else { if (360.0 - var_f30 <= arg2) { var_f31 = -(360.0 - var_f30); - } else { + } + else { var_f31 = -arg2; } } var_f31 += arg1; if (var_f31 >= 360.0) { var_f31 -= 360.0; - } else if (var_f31 < 0.0) { + } + else if (var_f31 < 0.0) { var_f31 += 360.0; } return var_f31; } -float fn_1_12544(float arg0, float arg1, float arg2) { +float fn_1_12544(float arg0, float arg1, float arg2) +{ float var_f28; var_f28 = fn_1_121DC(arg2, arg1); return fn_1_122F4(arg2, arg1, fabs(var_f28 * arg0)); } -void fn_1_1293C(Mtx arg0, Vec* arg1) { +void fn_1_1293C(Mtx arg0, Vec *arg1) +{ Vec sp8; sp8.x = arg0[0][0] * arg1->x + arg0[0][1] * arg1->y + arg0[0][2] * arg1->z; @@ -5308,7 +5334,8 @@ void fn_1_1293C(Mtx arg0, Vec* arg1) { *arg1 = sp8; } -void fn_1_129F0(Vec* arg0, Vec* arg1, Vec* arg2, float* arg3) { +void fn_1_129F0(Vec *arg0, Vec *arg1, Vec *arg2, float *arg3) +{ Vec sp18; Vec spC; float var_f30; @@ -5327,7 +5354,8 @@ void fn_1_129F0(Vec* arg0, Vec* arg1, Vec* arg2, float* arg3) { var_f30 = sqrtf(var_f29); if (var_f30 != 0.0f) { var_f30 = 1.0f / var_f30; - } else { + } + else { var_f30 = 0.0f; } arg3[0] *= var_f30; @@ -5336,7 +5364,8 @@ void fn_1_129F0(Vec* arg0, Vec* arg1, Vec* arg2, float* arg3) { arg3[3] = -(arg3[0] * arg0->x + arg3[1] * arg0->y + arg3[2] * arg0->z); } -s32 fn_1_12C6C(Vec* arg0, Vec* arg1, float* arg2) { +s32 fn_1_12C6C(Vec *arg0, Vec *arg1, float *arg2) +{ float temp_f31; float temp_f30; @@ -5351,7 +5380,8 @@ s32 fn_1_12C6C(Vec* arg0, Vec* arg1, float* arg2) { return 0; } -float fn_1_12D6C(Vec* arg0, Vec* arg1, s32 arg2, float arg3, float arg4) { +float fn_1_12D6C(Vec *arg0, Vec *arg1, s32 arg2, float arg3, float arg4) +{ float var_f31; float var_f30; float var_f29; @@ -5382,11 +5412,10 @@ float fn_1_12D6C(Vec* arg0, Vec* arg1, s32 arg2, float arg3, float arg4) { return var_f27; } -u8 lbl_1_data_914[][2] = { - { 0, 1 }, { 1, 2 }, { 2, 0 } -}; +u8 lbl_1_data_914[][2] = { { 0, 1 }, { 1, 2 }, { 2, 0 } }; -float fn_1_12E68(Vec* arg0, Vec* arg1, s32 arg2) { +float fn_1_12E68(Vec *arg0, Vec *arg1, s32 arg2) +{ float var_f31; float var_f30; float var_f29; @@ -5418,7 +5447,8 @@ float fn_1_12E68(Vec* arg0, Vec* arg1, s32 arg2) { } } return 1.0f; - } else { + } + else { for (i = 1; i < 3; i++) { var_f29 = fn_1_12D6C(&arg0[lbl_1_data_914[i][0]], &arg0[lbl_1_data_914[i][1]], arg2, var_f31, var_f30); if (var_f29 == 0.0f) { @@ -5432,7 +5462,8 @@ float fn_1_12E68(Vec* arg0, Vec* arg1, s32 arg2) { } } -void fn_1_1334C(float* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { +void fn_1_1334C(float *arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4) +{ float temp_f26; float temp_f25; float temp_f24; @@ -5469,7 +5500,8 @@ void fn_1_1334C(float* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { var_f28 = temp_f26 * temp_f31 + temp_f25 * temp_f30 + temp_f24 * temp_f29; if (var_f28 != 0.0f) { var_f28 = -(temp_f26 * (var_f22 - var_f19) + temp_f25 * (var_f21 - var_f18) + temp_f24 * (var_f20 - spC)) / var_f28; - } else { + } + else { var_f28 = 0.0f; } arg4->x = arg1->x + var_f28 * arg2->x; @@ -5477,7 +5509,8 @@ void fn_1_1334C(float* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { arg4->z = arg1->z + var_f28 * arg2->z; } -float fn_1_1367C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, f32* arg4) { +float fn_1_1367C(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, f32 *arg4) +{ Vec sp38; Vec sp2C; Vec sp20; @@ -5488,22 +5521,23 @@ float fn_1_1367C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, f32* arg4) { arg0->z = 0.0f; arg1->z = 0.0f; arg2->z = 0.0f; - PSVECSubtract(arg1, arg0, &sp2C); - PSVECSubtract(arg2, arg0, &sp20); + VECSubtract(arg1, arg0, &sp2C); + VECSubtract(arg2, arg0, &sp20); temp_f31 = (sp2C.x * sp20.x + sp2C.y * sp20.y) / (sp2C.x * sp2C.x + sp2C.y * sp2C.y); if (arg4 != NULL) { *arg4 = temp_f31; } - PSVECScale(&sp2C, &sp14, temp_f31); - PSVECAdd(&sp2C, &sp14, &sp38); + VECScale(&sp2C, &sp14, temp_f31); + VECAdd(&sp2C, &sp14, &sp38); if (arg3 != NULL) { *arg3 = sp38; } - PSVECSubtract(arg2, &sp38, &sp8); - return PSVECMag(&sp8); + VECSubtract(arg2, &sp38, &sp8); + return VECMag(&sp8); } -s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) { +s32 fn_1_137C4(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, float arg4, s32 arg5) +{ Vec sp40; Vec sp34; Vec sp28; @@ -5514,31 +5548,30 @@ s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) f32 temp_f28; f32 var_f31; - PSVECAdd(arg1, arg2, &sp28); + VECAdd(arg1, arg2, &sp28); *arg3 = sp28; - PSVECNormalize(arg2, &sp1C); - PSVECScale(&sp1C, &sp1C, arg4); - PSVECAdd(arg1, &sp1C, &sp40); - PSVECAdd(&sp28, &sp1C, &sp34); - PSVECNormalize(arg2, &sp1C); - PSVECScale(&sp1C, &sp10, -arg4); + VECNormalize(arg2, &sp1C); + VECScale(&sp1C, &sp1C, arg4); + VECAdd(arg1, &sp1C, &sp40); + VECAdd(&sp28, &sp1C, &sp34); + VECNormalize(arg2, &sp1C); + VECScale(&sp1C, &sp10, -arg4); switch (arg5) { case 0: if (sp40.y >= arg0[0].y && sp34.y < arg0[0].y) { if (sp1C.y == 0.0f) { var_f31 = 0.0f; - } else { + } + else { var_f31 = (arg0[0].y - arg1->y) / sp1C.y; } temp_f30 = arg1->x + var_f31 * sp1C.x; temp_f28 = arg1->z + var_f31 * sp1C.z; - if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x - && temp_f28 >= arg0[0].z && temp_f28 <= arg0[2].z) - { + if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x && temp_f28 >= arg0[0].z && temp_f28 <= arg0[2].z) { arg3->x = temp_f30; arg3->y = arg0[0].y + arg4 + 1.0f; arg3->z = temp_f28; - PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + VECAdd((Vec *)&arg3, &sp10, (Vec *)&arg3); return 1; } } @@ -5547,18 +5580,17 @@ s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) if (sp40.y <= arg0[0].y && sp34.y > arg0[0].y) { if (sp1C.y == 0.0f) { var_f31 = 0.0f; - } else { + } + else { var_f31 = (arg0[0].y - arg1->y) / sp1C.y; } temp_f30 = arg1->x + var_f31 * sp1C.x; temp_f28 = arg1->z + var_f31 * sp1C.z; - if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x - && temp_f28 <= arg0[0].z && temp_f28 >= arg0[2].z) - { + if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x && temp_f28 <= arg0[0].z && temp_f28 >= arg0[2].z) { arg3->x = temp_f30; arg3->y = arg0[0].y - arg4 - 1.0f; arg3->z = temp_f28; - PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + VECAdd((Vec *)&arg3, &sp10, (Vec *)&arg3); return 1; } } @@ -5567,18 +5599,17 @@ s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) if (sp40.x <= arg0[0].x && sp34.x > arg0[0].x) { if (sp1C.x == 0.0f) { var_f31 = 0.0f; - } else { + } + else { var_f31 = (arg0[0].x - arg1->x) / sp1C.x; } temp_f29 = arg1->y + var_f31 * sp1C.y; temp_f28 = arg1->z + var_f31 * sp1C.z; - if (temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y - && temp_f28 >= arg0[0].z && temp_f28 <= arg0[2].z) - { + if (temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y && temp_f28 >= arg0[0].z && temp_f28 <= arg0[2].z) { arg3->x = arg0[0].x - arg4 - 1.0f; arg3->y = temp_f29; arg3->z = temp_f28; - PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + VECAdd((Vec *)&arg3, &sp10, (Vec *)&arg3); return 1; } } @@ -5587,18 +5618,17 @@ s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) if (sp40.x >= arg0[0].x && sp34.x < arg0[0].x) { if (sp1C.x == 0.0f) { var_f31 = 0.0f; - } else { + } + else { var_f31 = (arg0[0].x - arg1->x) / sp1C.x; } temp_f29 = arg1->y + var_f31 * sp1C.y; temp_f28 = arg1->z + var_f31 * sp1C.z; - if (temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y - && temp_f28 <= arg0[0].z && temp_f28 >= arg0[2].z) - { + if (temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y && temp_f28 <= arg0[0].z && temp_f28 >= arg0[2].z) { arg3->x = arg0[0].x + arg4 + 1.0f; arg3->y = temp_f29; arg3->z = temp_f28; - PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + VECAdd((Vec *)&arg3, &sp10, (Vec *)&arg3); return 1; } } @@ -5607,18 +5637,17 @@ s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) if (sp40.z >= arg0[0].z && sp34.z < arg0[0].z) { if (sp1C.z == 0.0f) { var_f31 = 0.0f; - } else { + } + else { var_f31 = (arg0[0].z - arg1->z) / sp1C.z; } temp_f30 = arg1->x + var_f31 * sp1C.x; temp_f29 = arg1->y + var_f31 * sp1C.y; - if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x - && temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y) - { + if (temp_f30 >= arg0[0].x && temp_f30 <= arg0[2].x && temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y) { arg3->x = temp_f30; arg3->y = temp_f29; arg3->z = arg0[0].z + arg4 + 1.0f; - PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + VECAdd((Vec *)&arg3, &sp10, (Vec *)&arg3); return 1; } } @@ -5627,18 +5656,17 @@ s32 fn_1_137C4(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, float arg4, s32 arg5) if (sp40.z <= arg0[0].z && sp34.z > arg0[0].z) { if (sp1C.z == 0.0f) { var_f31 = 0.0f; - } else { + } + else { var_f31 = (arg0[0].z - arg1->z) / sp1C.z; } temp_f30 = arg1->x + var_f31 * sp1C.x; temp_f29 = arg1->y + var_f31 * sp1C.y; - if (temp_f30 <= arg0[0].x && temp_f30 >= arg0[2].x - && temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y) - { + if (temp_f30 <= arg0[0].x && temp_f30 >= arg0[2].x && temp_f29 <= arg0[0].y && temp_f29 >= arg0[2].y) { arg3->x = temp_f30; arg3->y = temp_f29; arg3->z = arg0[0].z - arg4 - 1.0f; - PSVECAdd((Vec*) &arg3, &sp10, (Vec*) &arg3); + VECAdd((Vec *)&arg3, &sp10, (Vec *)&arg3); return 1; } } diff --git a/src/REL/m424Dll/ball.c b/src/REL/m424Dll/ball.c index 800f1775..5114c552 100644 --- a/src/REL/m424Dll/ball.c +++ b/src/REL/m424Dll/ball.c @@ -1,7 +1,6 @@ #include "REL/m424Dll.h" #include "ext_math.h" -#include "string.h" #include "game/audio.h" #include "game/chrman.h" #include "game/data.h" @@ -11,6 +10,8 @@ #include "game/hsfmotion.h" #include "game/pad.h" #include "game/sprite.h" +#include "string.h" + // STRUCT typedef struct _M424DllBallStruct { @@ -45,10 +46,10 @@ typedef struct _M424DllBallStruct { Vec unk40; Vec unk4C; Vec unk58; - void* unk64; // sizeof 0x40 + void *unk64; // sizeof 0x40 char unk68[0x3C]; u8 unkA4; - void* unkA8; // sizeof 0x40 + void *unkA8; // sizeof 0x40 char unkAC[0x3C]; s32 unkE8; s32 unkEC; @@ -56,8 +57,8 @@ typedef struct _M424DllBallStruct { typedef struct _M424DllBallStruct3 { u8 unk0; - M424DllBallStruct2* unk4; - M424DllBallStruct2* unk8; + M424DllBallStruct2 *unk4; + M424DllBallStruct2 *unk8; } M424DllBallStruct3; typedef struct _M424BallStruct4 { @@ -73,45 +74,45 @@ typedef struct _M424BallStruct4 { } M424BallStruct4; // BSS -void* lbl_1_bss_5BC[0x20]; -omObjData* lbl_1_bss_5AC[4]; -omObjData* lbl_1_bss_594[6]; +void *lbl_1_bss_5BC[0x20]; +omObjData *lbl_1_bss_5AC[4]; +omObjData *lbl_1_bss_594[6]; M424DllBallStruct2 lbl_1_bss_60[9]; s32 lbl_1_bss_5C; u8 lbl_1_bss_58; // PROTO f32 fn_1_25C0(void); -void fn_1_28A0(omObjData* object); -void fn_1_2E3C(omObjData* object); -void fn_1_31C0(omObjData* object); -void fn_1_37FC(omObjData* object); -void fn_1_4220(omObjData* object); -void fn_1_469C(omObjData* object); -u8 fn_1_48D0(omObjData* object, u8, u8); +void fn_1_28A0(omObjData *object); +void fn_1_2E3C(omObjData *object); +void fn_1_31C0(omObjData *object); +void fn_1_37FC(omObjData *object); +void fn_1_4220(omObjData *object); +void fn_1_469C(omObjData *object); +u8 fn_1_48D0(omObjData *object, u8, u8); void fn_1_4A90(s16); void fn_1_6038(void); -void* fn_1_6078(s32); +void *fn_1_6078(s32); void fn_1_61AC(void); s32 fn_1_627C(void); void fn_1_6230(s16, Mtx); -void fn_1_62D0(s32, u32*); +void fn_1_62D0(s32, u32 *); f32 fn_1_640C(f32, f32, f32); f32 fn_1_6D10(Vec, Vec, f32, Vec, Vec, f32); f32 fn_1_709C(Vec, Vec, f32, f32); f32 fn_1_7420(Vec, Vec, f32, f32); -void fn_1_77C4(Vec, Vec, Vec, f32, Vec*, Vec*); -void fn_1_79FC(Vec*, Vec*, f32, Vec*, Vec*, f32, f32); -void fn_1_7CA0(Vec, Vec, f32, Vec*); +void fn_1_77C4(Vec, Vec, Vec, f32, Vec *, Vec *); +void fn_1_79FC(Vec *, Vec *, f32, Vec *, Vec *, f32, f32); +void fn_1_7CA0(Vec, Vec, f32, Vec *); void fn_1_8924(u8, u8); void fn_1_8AA8(s32, s32); s32 fn_1_8C78(s32, s32); -s32 fn_1_907C(Vec*, Vec*); +s32 fn_1_907C(Vec *, Vec *); - -void fn_1_2720(Process* arg0) { +void fn_1_2720(Process *arg0) +{ u32 sp8[10]; - omObjData* var_r30; + omObjData *var_r30; s32 temp_r28; s32 var_r29; s32 var_r31; @@ -122,7 +123,7 @@ void fn_1_2720(Process* arg0) { } fn_1_62D0(8, sp8); sp8[8] = 8; - + for (var_r31 = 0, var_r29 = 0; var_r31 < 4; var_r31++) { if (GWPlayerCfg[var_r31].group != 0) { var_r30 = omAddObjEx(arg0, 0x3E, 3, 11, 0, fn_1_28A0); @@ -132,7 +133,7 @@ void fn_1_2720(Process* arg0) { var_r29++; } } - + for (var_r31 = 0; var_r31 < 6; var_r29++, var_r31++) { var_r30 = omAddObjEx(arg0, 0x3F, 2, 5, 0, fn_1_4220); lbl_1_bss_594[var_r31] = var_r30; @@ -143,27 +144,20 @@ void fn_1_2720(Process* arg0) { fn_1_6038(); } -void fn_1_2880(void) { +void fn_1_2880(void) +{ fn_1_61AC(); } -u32 lbl_1_data_150[11] = { - 0, 2, 3, 8, 10, - 9, 20, 22, 23, 24, - 0x370021 -}; -Vec lbl_1_data_17C[4] = { - { -100.0f, 200.0f, -100.0f }, - { 300.0f, 200.0f, -100.0f }, - { -300.0f, 200.0f, 300.0f }, - { 300.0f, 200.0f, 0.0f } -}; +u32 lbl_1_data_150[11] = { 0, 2, 3, 8, 10, 9, 20, 22, 23, 24, 0x370021 }; +Vec lbl_1_data_17C[4] = { { -100.0f, 200.0f, -100.0f }, { 300.0f, 200.0f, -100.0f }, { -300.0f, 200.0f, 300.0f }, { 300.0f, 200.0f, 0.0f } }; -void fn_1_28A0(omObjData* object) { +void fn_1_28A0(omObjData *object) +{ Vec sp8; f32 temp_f31; f32 temp_f30; - M424DllBallStruct* var_r31; + M424DllBallStruct *var_r31; s32 var_r29; s32 temp_r28; s32 var_r27; @@ -212,9 +206,12 @@ void fn_1_28A0(omObjData* object) { for (var_r29 = 0; var_r29 < 11; var_r29++) { if (lbl_1_data_150[var_r29] + 0xFFC90000 != 0x21) { object->motion[var_r29] = CharModelMotionCreate(var_r31->unk1, lbl_1_data_150[var_r29]); - } else if (var_r31->unk1 == 5) { - object->motion[var_r29] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(var_r31->unk1 + lbl_1_data_150[var_r29], 0x10000000, HEAP_DATA)); - } else { + } + else if (var_r31->unk1 == 5) { + object->motion[var_r29] + = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(var_r31->unk1 + lbl_1_data_150[var_r29], 0x10000000, HEAP_DATA)); + } + else { object->motion[var_r29] = object->motion[0]; } if (lbl_1_data_150[var_r29] == 0x16 || lbl_1_data_150[var_r29] == 0x14) { @@ -230,11 +227,12 @@ void fn_1_28A0(omObjData* object) { object->func = fn_1_2E3C; } -void fn_1_2E38(void) {} +void fn_1_2E38(void) { } -void fn_1_2E3C(omObjData* object) { +void fn_1_2E3C(omObjData *object) +{ s32 temp_r29; - M424DllBallStruct* temp_r31; + M424DllBallStruct *temp_r31; temp_r29 = object->model[0]; temp_r31 = object->data; @@ -242,13 +240,15 @@ void fn_1_2E3C(omObjData* object) { if ((fn_1_FE0() == 4) && ((temp_r31->unk7 & 2) == 0)) { if (temp_r31->unk5 != 0) { fn_1_31C0(object); - } else { + } + else { temp_r31->unk10 = HuPadStkX[temp_r31->unk4]; temp_r31->unk12 = HuPadStkY[temp_r31->unk4]; temp_r31->unk14 = HuPadBtnDown[temp_r31->unk4]; temp_r31->unk16 = HuPadBtn[temp_r31->unk4]; } - } else { + } + else { temp_r31->unk10 = temp_r31->unk12 = 0; temp_r31->unk14 = temp_r31->unk16 = 0; } @@ -289,13 +289,15 @@ void fn_1_2E3C(omObjData* object) { temp_r31->unk18 = 7; temp_r31->unk34.x += fn_1_25C0(); temp_r31->unk34.y = 50.0f; - } else { + } + else { temp_r31->unkC = 0; temp_r31->unk20 += 3.0f; temp_r31->unk4C.y += -1.46f; if (temp_r31->unk1 != 5) { temp_r31->unk18 = 6; - } else { + } + else { temp_r31->unk18 = 0xA; } } @@ -308,13 +310,14 @@ void fn_1_2E3C(omObjData* object) { } } -void fn_1_31C0(omObjData* object) { +void fn_1_31C0(omObjData *object) +{ Vec sp10; s32 spC; s16 sp8; f32 temp_f31; f32 temp_f30; - M424DllBallStruct* temp_r31; + M424DllBallStruct *temp_r31; s16 temp_r30; s16 var_r29; s16 var_r28; @@ -325,7 +328,7 @@ void fn_1_31C0(omObjData* object) { spC = object->model[0]; sp8 = temp_r31->unk18; temp_r30 = temp_r31->unk6; - + var_r29 = var_r28 = var_r26 = var_r25 = 0; switch (temp_r31->unk8) { case 2: @@ -341,18 +344,22 @@ void fn_1_31C0(omObjData* object) { if (temp_f30 < 0.0f) { var_r29 = (-sp10.z * (48.0f + (6.0f * temp_r30))); var_r28 = (-sp10.x * (48.0f + (6.0f * temp_r30))); - } else { + } + else { var_r29 = (sp10.z * (48.0f + (6.0f * temp_r30))); var_r28 = (sp10.x * (48.0f + (6.0f * temp_r30))); } - } else if (temp_f30 < 0.0f) { + } + else if (temp_f30 < 0.0f) { var_r29 = (sp10.z * (48.0f + (6.0f * temp_r30))); var_r28 = (sp10.x * (48.0f + (6.0f * temp_r30))); - } else { + } + else { var_r29 = (-sp10.z * (48.0f + (6.0f * temp_r30))); var_r28 = (-sp10.x * (48.0f + (6.0f * temp_r30))); } - } else { + } + else { var_r29 = temp_r31->unk10; var_r28 = temp_r31->unk12; } @@ -364,7 +371,8 @@ void fn_1_31C0(omObjData* object) { sp10.z = cosd(temp_f31); var_r29 = (48.0f * sp10.x); var_r28 = (48.0f * sp10.z); - } else { + } + else { var_r29 = temp_r31->unk10; var_r28 = temp_r31->unk12; } @@ -376,13 +384,14 @@ void fn_1_31C0(omObjData* object) { temp_r31->unk16 = var_r25; } -void fn_1_37FC(omObjData* object) { +void fn_1_37FC(omObjData *object) +{ s16 spA; s16 sp8; f32 var_f30; f32 var_f28; f32 temp_f27; - M424DllBallStruct* temp_r31; + M424DllBallStruct *temp_r31; s16 temp_r30; s16 temp_r29; s16 var_r28; @@ -407,7 +416,8 @@ void fn_1_37FC(omObjData* object) { if (temp_r31->unk20 >= 6.0f) { var_r28 = 2; var_r27 = 1; - } else { + } + else { var_r28 = 1; var_r27 = 1; } @@ -419,7 +429,8 @@ void fn_1_37FC(omObjData* object) { temp_r31->unk28 -= 0.5f * temp_r31->unk2C; } temp_r31->unk20 *= 1.0 + 0.25 * cosd(90.0f * (temp_r31->unk28 / (0.5f * temp_r31->unk2C))); - } else { + } + else { temp_r31->unk28 = 0.0f; temp_r31->unk20 = 0.0f; var_r28 = 0; @@ -427,7 +438,8 @@ void fn_1_37FC(omObjData* object) { } if (temp_r31->unkC != 0) { temp_r31->unk4C.y = -2.4333334f; - } else { + } + else { temp_r31->unk4C.y += -2.4333334f; } break; @@ -435,7 +447,8 @@ void fn_1_37FC(omObjData* object) { var_r27 = 0; if ((Hu3DData[temp_r25].unk_0C == -1) && (CharModelMotionEndCheck(temp_r31->unk1) != 0)) { temp_r31->unk4C.y += -2.4333334f; - } else { + } + else { temp_r31->unk4C.y = 0.0f; } if (temp_r31->unkC != 0) { @@ -444,7 +457,8 @@ void fn_1_37FC(omObjData* object) { temp_r31->unkD = 0; var_r28 = 5; var_r27 = 0; - } else { + } + else { temp_r31->unk4C.y *= -0.1f; temp_r31->unkC = 0; var_r28 = 4; @@ -478,7 +492,8 @@ void fn_1_37FC(omObjData* object) { var_r27 = 1; if (temp_r31->unkE8 == 1) { temp_r31->unkEC = HuAudCharVoicePlay(temp_r31->unk1, 0x11A); - } else if ((temp_r31->unkE8 > 90.0f) && (temp_r31->unkEC != -1)) { + } + else if ((temp_r31->unkE8 > 90.0f) && (temp_r31->unkEC != -1)) { HuAudFXStop(temp_r31->unkEC); temp_r31->unkEC = -1; } @@ -506,7 +521,8 @@ void fn_1_37FC(omObjData* object) { if ((temp_r31->unk7 & 4) != 0) { if ((temp_r31->unkA & 2) != 0) { Hu3DModelAttrSet(temp_r25, 1); - } else { + } + else { Hu3DModelAttrReset(temp_r25, 1); } if (--temp_r31->unkA == 0) { @@ -544,18 +560,19 @@ void fn_1_37FC(omObjData* object) { omSetSca(object, temp_r31->unk1C, temp_r31->unk1C, temp_r31->unk1C); } -void fn_1_4220(omObjData* object) { +void fn_1_4220(omObjData *object) +{ s32 sp14[3] = { 0x370013, 0x370014, 0x370015 }; Vec sp8; f32 temp_f31; f32 temp_f30; - M424DllBallStruct* var_r31; + M424DllBallStruct *var_r31; s32 var_r29; s32 temp_r28; s32 var_r27; object->model[0] = var_r27 = Hu3DModelCreateFile(0x370012); - + for (var_r29 = 0; var_r29 < 3; var_r29++) { object->motion[var_r29] = Hu3DJointMotion(var_r27, HuDataSelHeapReadNum(sp14[var_r29], 0x10000000, HEAP_DATA)); } @@ -584,7 +601,8 @@ void fn_1_4220(omObjData* object) { sp8.x = 350.0f; sp8.y = 200.0f; sp8.z = 50.0f; - } else { + } + else { temp_f31 = 40.0f; temp_f31 = 105.0f + ((temp_f31 * temp_r28) + (temp_f31 * (fn_1_627C() / 65536.0f))); temp_f30 = 125.0f; @@ -608,21 +626,22 @@ void fn_1_4220(omObjData* object) { object->func = fn_1_469C; } -fn_1_4698(void) {} +fn_1_4698(void) { } -void fn_1_469C(omObjData* object) { +void fn_1_469C(omObjData *object) +{ s32 temp_r27; s16 var_r28; s16 var_r30; - M424DllBallStruct* temp_r31; + M424DllBallStruct *temp_r31; temp_r31 = object->data; temp_r27 = object->model[0]; var_r30 = temp_r31->unk18; temp_r31->unk58 = temp_r31->unk34; - + temp_r31->unk4C.x = temp_r31->unk4C.z = 0.0f; - switch (temp_r31->unk8) { /* irregular */ + switch (temp_r31->unk8) { /* irregular */ case 3: var_r30 = 2; var_r28 = 1; @@ -642,7 +661,7 @@ void fn_1_469C(omObjData* object) { case 2: var_r30 = 0; var_r28 = 1; - + temp_r31->unk4C.x = temp_r31->unk4C.z = 0.0f; temp_r31->unk4C.y += -0.97333336f; break; @@ -651,13 +670,14 @@ void fn_1_469C(omObjData* object) { if (var_r30 != temp_r31->unk1A) { temp_r31->unk1A = var_r30; temp_r31->unk18 = var_r30; - Hu3DMotionShiftSet(temp_r27, object->motion[temp_r31->unk18], 0.0f, 8.0f, (u32) var_r28); + Hu3DMotionShiftSet(temp_r27, object->motion[temp_r31->unk18], 0.0f, 8.0f, (u32)var_r28); temp_r31->unk2C = Hu3DMotionMaxTimeGet(temp_r31->unk1); } } -u8 fn_1_48D0(omObjData* object, u8 arg1, u8 arg2) { - M424DllBallStruct2* temp_r31; +u8 fn_1_48D0(omObjData *object, u8 arg1, u8 arg2) +{ + M424DllBallStruct2 *temp_r31; s32 var_r30; s32 var_r28; @@ -676,7 +696,7 @@ u8 fn_1_48D0(omObjData* object, u8 arg1, u8 arg2) { temp_r31->unkA = var_r30; Hu3DModelLayerSet(var_r30, 1); Hu3DModelShadowSet(var_r30); - PSMTXIdentity(temp_r31->unkC); + MTXIdentity(temp_r31->unkC); temp_r31->unk3C.x = object->trans.x; temp_r31->unk3C.y = 100.0f + object->trans.y; temp_r31->unk3C.z = object->trans.z; @@ -687,28 +707,30 @@ u8 fn_1_48D0(omObjData* object, u8 arg1, u8 arg2) { temp_r31->unk6 = 0; if (arg2 != 0) { temp_r31->unk91 = arg1; - } else { + } + else { temp_r31->unk91 = 0xFFU; } return var_r28; } -void fn_1_4A90(s16 arg0) { +void fn_1_4A90(s16 arg0) +{ Mtx sp50; Mtx sp20; Vec sp14; Vec sp8; f32 var_f31; f32 var_f30; - M424DllBallStruct2* var_r31; - M424DllBallStruct* temp_r30; + M424DllBallStruct2 *var_r31; + M424DllBallStruct *temp_r30; s32 var_r29; if (omPauseChk() == 0) { var_r31 = lbl_1_bss_60; var_f31 = fn_1_213C(); mtxRot(sp20, 0.0f, var_f31, 0.0f); - + for (var_r29 = 0; var_r29 < lbl_1_bss_58; var_r29++, var_r31++) { temp_r30 = var_r31->unk0->data; var_r31->unk48 = var_r31->unk54; @@ -716,20 +738,20 @@ void fn_1_4A90(s16 arg0) { var_r31->unk78.x = var_r31->unk78.y = var_r31->unk78.z = 0.0f; switch (var_r31->unk4) { case 1: - PSMTXTrans(sp50, var_r31->unk3C.x, var_r31->unk3C.y, var_r31->unk3C.z); - PSMTXConcat(sp20, sp50, sp50); + MTXTrans(sp50, var_r31->unk3C.x, var_r31->unk3C.y, var_r31->unk3C.z); + MTXConcat(sp20, sp50, sp50); var_r31->unk48.x = sp50[0][3]; var_r31->unk48.y = sp50[1][3]; var_r31->unk48.z = sp50[2][3]; - PSVECSubtract(&var_r31->unk48, &var_r31->unk3C, &var_r31->unk78); - PSVECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); - PSVECAdd(&temp_r30->unk4C, &sp14, &var_r31->unk84); - PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + VECSubtract(&var_r31->unk48, &var_r31->unk3C, &var_r31->unk78); + VECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); + VECAdd(&temp_r30->unk4C, &sp14, &var_r31->unk84); + VECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); var_r31->unk84.y = 0.0f; var_r31->unk4 = 2; break; case 3: - PSVECSubtract(&var_r31->unk3C, &var_r31->unk60, &var_r31->unk6C); + VECSubtract(&var_r31->unk3C, &var_r31->unk60, &var_r31->unk6C); var_r31->unk84 = var_r31->unk6C; break; case 4: @@ -740,15 +762,16 @@ void fn_1_4A90(s16 arg0) { case 2: var_r31->unk6C.y = 0.0f; var_r31->unk6C.x = var_r31->unk6C.z = 0.0f; - PSVECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); - PSVECAdd(&temp_r30->unk4C, &sp14, &var_r31->unk84); + VECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); + VECAdd(&temp_r30->unk4C, &sp14, &var_r31->unk84); var_r31->unk6C = var_r31->unk84; break; case 5: if ((var_r31->unk6 & 2) != 0) { Hu3DModelAttrSet(var_r31->unk8, 1); Hu3DModelAttrSet(var_r31->unkA, 1); - } else { + } + else { Hu3DModelAttrReset(var_r31->unk8, 1); Hu3DModelAttrReset(var_r31->unkA, 1); } @@ -766,18 +789,19 @@ void fn_1_4A90(s16 arg0) { for (var_r29 = 0; var_r29 < lbl_1_bss_58; var_r29++, var_r31++) { if (var_r31->unk4 != 6) { if (var_r31->unk4 == 1) { - PSVECSubtract(&var_r31->unk3C, &var_r31->unk48, &sp14); + VECSubtract(&var_r31->unk3C, &var_r31->unk48, &sp14); sp8.x = sp14.z; sp8.y = 0.0f; sp8.z = -sp14.x; - var_f30 = PSVECMag(&sp8); + var_f30 = VECMag(&sp8); if (var_f30 > 0.01f) { - PSMTXRotAxisRad(sp50, &sp8, MTXDegToRad(var_f30)); - PSMTXConcat(sp20, sp50, sp50); - } else { - PSMTXCopy(sp20, sp50); + MTXRotAxisRad(sp50, &sp8, MTXDegToRad(var_f30)); + MTXConcat(sp20, sp50, sp50); } - PSMTXConcat(sp50, var_r31->unkC, var_r31->unkC); + else { + MTXCopy(sp20, sp50); + } + MTXConcat(sp50, var_r31->unkC, var_r31->unkC); fn_1_6230(var_r31->unk8, var_r31->unkC); fn_1_6230(var_r31->unkA, var_r31->unkC); } @@ -789,7 +813,7 @@ void fn_1_4A90(s16 arg0) { } Hu3DModelPosSet(var_r31->unk8, var_r31->unk3C.x, var_r31->unk3C.y, var_r31->unk3C.z); Hu3DModelPosSet(var_r31->unkA, var_r31->unk3C.x, var_r31->unk3C.y, var_r31->unk3C.z); - PSVECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); + VECSubtract(&var_r31->unk3C, &var_r31->unk54, &sp14); var_r31->unk6C = sp14; var_r31->unk54 = var_r31->unk3C; temp_r30 = var_r31->unk0->data; @@ -806,7 +830,8 @@ void fn_1_4A90(s16 arg0) { } } -void fn_1_5018(void) { +void fn_1_5018(void) +{ M424DllBallStruct3 sp27C[32]; Vec sp270; Vec sp264; @@ -819,8 +844,8 @@ void fn_1_5018(void) { f32 var_f30; f32 var_f29; f32 temp_f28; - M424DllBallStruct2* var_r31; - M424DllBallStruct2* var_r30; + M424DllBallStruct2 *var_r31; + M424DllBallStruct2 *var_r30; s32 var_r29; s32 var_r28; s32 var_r27; @@ -831,7 +856,7 @@ void fn_1_5018(void) { for (var_r28 = 0; var_r28 < lbl_1_bss_58; var_r28++, var_r31++) { var_r31->unk90 = 1; } - + for (var_r26 = 0, var_f29 = 1.0f; var_r26 < 0x80; var_f29 -= var_f30, var_r26++) { var_r29 = 0; var_f30 = var_f29; @@ -861,7 +886,8 @@ void fn_1_5018(void) { } if (var_r31->unk4 == 1) { var_f31 = fn_1_7420(var_r31->unk60, var_r31->unk84, 100.0f, 700.0f); - } else { + } + else { var_f31 = fn_1_7420(var_r31->unk60, var_r31->unk6C, 100.0f, 700.0f); } if (var_f31 >= 0.0f && var_f31 <= var_f29) { @@ -879,7 +905,8 @@ void fn_1_5018(void) { } if (var_r31->unk4 == 1) { var_f31 = fn_1_709C(var_r31->unk60, var_r31->unk84, 100.0f, 250.0f); - } else { + } + else { var_f31 = fn_1_709C(var_r31->unk60, var_r31->unk6C, 100.0f, 250.0f); } if (var_f31 >= 0.0f && var_f31 <= var_f29) { @@ -896,26 +923,32 @@ void fn_1_5018(void) { } } } - + var_r30 = lbl_1_bss_60; for (var_r25 = 0; var_r25 < lbl_1_bss_58; var_r25++, var_r30++) { if ((var_r31 != var_r30) && (var_r30->unk4 < 4)) { if ((var_r31->unk4 == 1) && (var_r30->unk4 == 1)) { var_f31 = fn_1_6D10(var_r31->unk60, var_r31->unk84, 100.0f, var_r30->unk60, var_r30->unk84, 100.0f); - } else { + } + else { var_f31 = fn_1_6D10(var_r31->unk60, var_r31->unk6C, 100.0f, var_r30->unk60, var_r30->unk6C, 100.0f); } - if ((var_f31 < 0.0f) || (var_f31 > var_f29)) continue; + if ((var_f31 < 0.0f) || (var_f31 > var_f29)) + continue; var_r31->unk90 = 1; var_r30->unk90 = 1; - if (var_f31 > var_f30) continue; + if (var_f31 > var_f30) + continue; if (var_f31 < var_f30) { var_r29 = 0; - } else { + } + else { for (var_r27 = 0; var_r27 < var_r29; var_r27++) { - if ((sp27C[var_r27].unk4 == var_r30) && (sp27C[var_r27].unk8 == var_r31)) break; + if ((sp27C[var_r27].unk4 == var_r30) && (sp27C[var_r27].unk8 == var_r31)) + break; } - if (var_r27 < var_r29) continue; + if (var_r27 < var_r29) + continue; } sp27C[var_r29].unk0 = 3; sp27C[var_r29].unk4 = var_r31; @@ -926,7 +959,8 @@ void fn_1_5018(void) { } } } - if (var_r29 == 0) break; + if (var_r29 == 0) + break; var_r31 = lbl_1_bss_60; for (var_r28 = 0; var_r28 < lbl_1_bss_58; var_r28++, var_r31++) { var_r31->unk60.x += var_r31->unk6C.x * var_f30; @@ -947,11 +981,11 @@ void fn_1_5018(void) { var_r31 = sp27C[var_r28].unk4; sp240 = var_r31->unk60; sp240.y = 0.0f; - PSVECNormalize(&sp240, &sp228); + VECNormalize(&sp240, &sp228); sp228.x = -sp228.x; sp228.y = 0.0f; sp228.z = -sp228.z; - temp_f28 = PSVECMag(&sp240); + temp_f28 = VECMag(&sp240); temp_f28 -= 600.0f; var_r31->unk60.x += temp_f28 * sp228.x; var_r31->unk60.z += temp_f28 * sp228.z; @@ -960,8 +994,9 @@ void fn_1_5018(void) { if (var_r31->unk4 == 1) { fn_1_7CA0(var_r31->unk84, sp228, 0.8f, &sp24C); var_r31->unk84 = sp24C; - PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); - } else { + VECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + } + else { fn_1_7CA0(var_r31->unk6C, sp228, 0.8f, &sp24C); var_r31->unk6C = sp24C; var_r31->unk84 = var_r31->unk6C; @@ -971,8 +1006,8 @@ void fn_1_5018(void) { var_r31 = sp27C[var_r28].unk4; sp240 = var_r31->unk60; sp240.y = 0.0f; - PSVECNormalize(&sp240, &sp228); - temp_f28 = PSVECMag(&sp240); + VECNormalize(&sp240, &sp228); + temp_f28 = VECMag(&sp240); temp_f28 = 350.0f; var_r31->unk60.x = temp_f28 * sp228.x; var_r31->unk60.z = temp_f28 * sp228.z; @@ -981,8 +1016,9 @@ void fn_1_5018(void) { if (var_r31->unk4 == 1) { fn_1_7CA0(var_r31->unk84, sp228, 0.8f, &sp24C); var_r31->unk84 = sp24C; - PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); - } else { + VECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + } + else { fn_1_7CA0(var_r31->unk6C, sp228, 0.8f, &sp24C); var_r31->unk6C = sp24C; var_r31->unk84 = var_r31->unk6C; @@ -995,22 +1031,25 @@ void fn_1_5018(void) { fn_1_79FC(&var_r30->unk3C, &var_r30->unk6C, 100.0f, &var_r31->unk3C, &var_r31->unk6C, 100.0f, 0.8f); var_r31->unk84 = var_r31->unk6C; var_r30->unk84 = var_r30->unk6C; - } else if (var_r30->unk4 == 3) { + } + else if (var_r30->unk4 == 3) { fn_1_79FC(&var_r31->unk3C, &var_r31->unk6C, 100.0f, &var_r30->unk3C, &var_r30->unk6C, 100.0f, 0.8f); var_r31->unk84 = var_r31->unk6C; var_r30->unk84 = var_r30->unk6C; - } else if ((var_r31->unk4 == 1) && (var_r30->unk4 == 1)) { + } + else if ((var_r31->unk4 == 1) && (var_r30->unk4 == 1)) { fn_1_77C4(var_r31->unk60, var_r31->unk84, var_r30->unk60, 0.8f, &sp24C, &sp258); fn_1_77C4(var_r30->unk60, var_r30->unk84, var_r31->unk60, 0.8f, &sp270, &sp264); - PSVECAdd(&sp24C, &sp264, &var_r31->unk84); - PSVECAdd(&sp258, &sp270, &var_r30->unk84); - PSVECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); - PSVECAdd(&var_r30->unk84, &var_r30->unk78, &var_r30->unk6C); - } else { + VECAdd(&sp24C, &sp264, &var_r31->unk84); + VECAdd(&sp258, &sp270, &var_r30->unk84); + VECAdd(&var_r31->unk84, &var_r31->unk78, &var_r31->unk6C); + VECAdd(&var_r30->unk84, &var_r30->unk78, &var_r30->unk6C); + } + else { fn_1_77C4(var_r31->unk60, var_r31->unk6C, var_r30->unk60, 0.8f, &sp24C, &sp258); fn_1_77C4(var_r30->unk60, var_r30->unk6C, var_r31->unk60, 0.8f, &sp270, &sp264); - PSVECAdd(&sp24C, &sp264, &var_r31->unk6C); - PSVECAdd(&sp258, &sp270, &var_r30->unk6C); + VECAdd(&sp24C, &sp264, &var_r31->unk6C); + VECAdd(&sp258, &sp270, &var_r30->unk6C); var_r31->unk84 = var_r31->unk6C; var_r30->unk84 = var_r30->unk6C; } @@ -1026,19 +1065,22 @@ void fn_1_5018(void) { } } -void fn_1_6038(void) { +void fn_1_6038(void) +{ s32 var_r31; - + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { lbl_1_bss_5BC[var_r31] = 0; } } -void* fn_1_6078(s32 arg0) { +void *fn_1_6078(s32 arg0) +{ s32 var_r31; - + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { - if (lbl_1_bss_5BC[var_r31] == 0) break; + if (lbl_1_bss_5BC[var_r31] == 0) + break; } if (var_r31 == 0x20) { return NULL; @@ -1047,11 +1089,13 @@ void* fn_1_6078(s32 arg0) { return lbl_1_bss_5BC[var_r31]; } -void fn_1_6118(void* arg0) { +void fn_1_6118(void *arg0) +{ s32 var_r31; - + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { - if (lbl_1_bss_5BC[var_r31] == arg0) break; + if (lbl_1_bss_5BC[var_r31] == arg0) + break; } if (var_r31 != 0x20) { HuMemDirectFree(lbl_1_bss_5BC[var_r31]); @@ -1059,9 +1103,10 @@ void fn_1_6118(void* arg0) { } } -void fn_1_61AC(void) { +void fn_1_61AC(void) +{ s32 var_r31; - + for (var_r31 = 0; var_r31 < 0x20; var_r31++) { if (lbl_1_bss_5BC[var_r31]) { HuMemDirectFree(lbl_1_bss_5BC[var_r31]); @@ -1070,22 +1115,25 @@ void fn_1_61AC(void) { } } -void fn_1_6230(s16 arg0, Mtx arg1) { - ModelData* var_r31; +void fn_1_6230(s16 arg0, Mtx arg1) +{ + ModelData *var_r31; var_r31 = &Hu3DData[arg0]; - PSMTXCopy(arg1, var_r31->unk_F0); + MTXCopy(arg1, var_r31->unk_F0); } u32 lbl_1_data_1D8 = 0x41C64E6D; -s32 fn_1_627C(void) { +s32 fn_1_627C(void) +{ lbl_1_data_1D8 *= 0x41C64E6D; lbl_1_data_1D8 += 0x3039; return lbl_1_data_1D8 >> 0x10; } -void fn_1_62D0(s32 arg0, u32* arg1) { +void fn_1_62D0(s32 arg0, u32 *arg1) +{ s32 var_r31; s32 temp_r30; u32 temp_r29; @@ -1093,7 +1141,7 @@ void fn_1_62D0(s32 arg0, u32* arg1) { for (var_r31 = 0; var_r31 < arg0; var_r31++) { arg1[var_r31] = var_r31; } - + for (var_r31 = 0; var_r31 < arg0 - 1; var_r31++) { temp_r30 = (arg0 * (fn_1_627C() / 65536.0f)); temp_r29 = arg1[var_r31]; @@ -1102,19 +1150,22 @@ void fn_1_62D0(s32 arg0, u32* arg1) { } } -f32 fn_1_640C(f32 arg0, f32 arg1, f32 arg2) { +f32 fn_1_640C(f32 arg0, f32 arg1, f32 arg2) +{ f32 var_f31; if (arg0 > 180.0f) { arg0 -= 360.0f; - } else { + } + else { if (arg0 <= -180.0f) { arg0 += 360.0f; } } if (arg1 > 180.0f) { arg1 -= 360.0f; - } else { + } + else { if (arg1 <= -180.0f) { arg1 += 360.0f; } @@ -1122,7 +1173,8 @@ f32 fn_1_640C(f32 arg0, f32 arg1, f32 arg2) { var_f31 = arg0 - arg1; if (var_f31 > 180.0f) { var_f31 -= 360.0f; - } else { + } + else { if (var_f31 <= -180.0f) { var_f31 += 360.0f; } @@ -1137,26 +1189,29 @@ f32 fn_1_640C(f32 arg0, f32 arg1, f32 arg2) { return arg0; } -void fn_1_6574(Mtx arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_6574(Mtx arg0, f32 arg8, f32 arg9, f32 argA) +{ Mtx sp38; Mtx sp8; - + if (argA != 0.0f) { - PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); - } else { - PSMTXIdentity(arg0); + MTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + } + else { + MTXIdentity(arg0); } if (arg8 != 0.0f) { - PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); - PSMTXConcat(sp38, arg0, arg0); + MTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + MTXConcat(sp38, arg0, arg0); } if (arg9 != 0.0f) { - PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); - PSMTXConcat(sp8, arg0, arg0); + MTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + MTXConcat(sp8, arg0, arg0); } } -void fn_1_6694(M424BallStruct4* arg0, Vec* arg1) { +void fn_1_6694(M424BallStruct4 *arg0, Vec *arg1) +{ f32 temp_f29; f32 var_f28; @@ -1181,7 +1236,8 @@ void fn_1_6694(M424BallStruct4* arg0, Vec* arg1) { } } -void fn_1_6A30(M424BallStruct4* arg0, Vec* arg1) { +void fn_1_6A30(M424BallStruct4 *arg0, Vec *arg1) +{ f32 temp_f29; f32 var_f27; @@ -1201,7 +1257,8 @@ void fn_1_6A30(M424BallStruct4* arg0, Vec* arg1) { } } -f32 fn_1_6D10(Vec arg0, Vec arg1, f32 arg2, Vec arg3, Vec arg4, f32 arg5) { +f32 fn_1_6D10(Vec arg0, Vec arg1, f32 arg2, Vec arg3, Vec arg4, f32 arg5) +{ f32 temp_f30; f32 temp_f29; f32 temp_f28; @@ -1210,10 +1267,10 @@ f32 fn_1_6D10(Vec arg0, Vec arg1, f32 arg2, Vec arg3, Vec arg4, f32 arg5) { f32 temp_f25; f32 var_f23; - PSVECSubtract(&arg3, &arg0, &arg3); - PSVECSubtract(&arg4, &arg1, &arg4); + VECSubtract(&arg3, &arg0, &arg3); + VECSubtract(&arg4, &arg1, &arg4); temp_f29 = arg2 + arg5; - if (PSVECMag(&arg3) > temp_f29 + PSVECMag(&arg4)) { + if (VECMag(&arg3) > temp_f29 + VECMag(&arg4)) { return -1.0f; } temp_f29 *= temp_f29; @@ -1236,7 +1293,8 @@ f32 fn_1_6D10(Vec arg0, Vec arg1, f32 arg2, Vec arg3, Vec arg4, f32 arg5) { return temp_f28; } -f32 fn_1_709C(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { +f32 fn_1_709C(Vec arg0, Vec arg1, f32 arg2, f32 arg3) +{ Vec sp20; Vec sp14; f32 temp_f30; @@ -1252,7 +1310,7 @@ f32 fn_1_709C(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { sp14 = arg1; sp14.y = 0.0f; temp_f29 = arg3 + arg2; - if (PSVECMag(&sp20) > temp_f29 + PSVECMag(&sp14)) { + if (VECMag(&sp20) > temp_f29 + VECMag(&sp14)) { return -1.0f; } temp_f29 *= temp_f29; @@ -1275,7 +1333,8 @@ f32 fn_1_709C(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { return temp_f28; } -f32 fn_1_7420(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { +f32 fn_1_7420(Vec arg0, Vec arg1, f32 arg2, f32 arg3) +{ Vec sp20; Vec sp14; f32 temp_f30; @@ -1285,16 +1344,16 @@ f32 fn_1_7420(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { f32 temp_f26; f32 temp_f25; f32 var_f23; - + sp20 = arg0; sp20.y = 0.0f; sp14 = arg1; sp14.y = 0.0f; temp_f29 = arg3 - arg2; - if (PSVECMag(&sp20) > temp_f29) { + if (VECMag(&sp20) > temp_f29) { return 0.0f; } - if (PSVECMag(&sp20) > temp_f29 + PSVECMag(&sp14)) { + if (VECMag(&sp20) > temp_f29 + VECMag(&sp14)) { return -1.0f; } temp_f29 *= temp_f29; @@ -1317,7 +1376,8 @@ f32 fn_1_7420(Vec arg0, Vec arg1, f32 arg2, f32 arg3) { return temp_f28; } -void fn_1_77C4(Vec arg0, Vec arg1, Vec arg2, f32 arg3, Vec* arg4, Vec* arg5) { +void fn_1_77C4(Vec arg0, Vec arg1, Vec arg2, f32 arg3, Vec *arg4, Vec *arg5) +{ Vec sp38; Vec sp2C; Vec sp20; @@ -1328,17 +1388,17 @@ void fn_1_77C4(Vec arg0, Vec arg1, Vec arg2, f32 arg3, Vec* arg4, Vec* arg5) { f32 var_f28; sp38 = arg1; - var_f31 = PSVECMag(&sp38); + var_f31 = VECMag(&sp38); if (var_f31 < 0.01f) { arg4->x = arg4->y = arg4->z = 0.0f; arg5->x = arg5->y = arg5->z = 0.0f; return; } - PSVECNormalize(&sp38, &sp38); + VECNormalize(&sp38, &sp38); var_f31 = var_f31 * arg3; - PSVECSubtract(&arg2, &arg0, &sp2C); - PSVECNormalize(&sp2C, &sp2C); - var_f28 = PSVECDotProduct(&sp38, &sp2C); + VECSubtract(&arg2, &arg0, &sp2C); + VECNormalize(&sp2C, &sp2C); + var_f28 = VECDotProduct(&sp38, &sp2C); if (var_f28 < 0.0f) { arg4->x = arg1.x; arg4->y = arg1.y; @@ -1350,11 +1410,12 @@ void fn_1_77C4(Vec arg0, Vec arg1, Vec arg2, f32 arg3, Vec* arg4, Vec* arg5) { temp_f30 = var_f31 - temp_f29; if (temp_f30 < 0.01f) { arg4->x = arg4->y = arg4->z = 0.0f; - } else { - PSVECCrossProduct(&sp38, &sp2C, &sp14); - PSVECNormalize(&sp14, &sp14); - PSVECCrossProduct(&sp2C, &sp14, &sp20); - PSVECNormalize(&sp20, &sp20); + } + else { + VECCrossProduct(&sp38, &sp2C, &sp14); + VECNormalize(&sp14, &sp14); + VECCrossProduct(&sp2C, &sp14, &sp20); + VECNormalize(&sp20, &sp20); arg4->x = sp20.x * temp_f30; arg4->y = sp20.y * temp_f30; arg4->z = sp20.z * temp_f30; @@ -1364,7 +1425,8 @@ void fn_1_77C4(Vec arg0, Vec arg1, Vec arg2, f32 arg3, Vec* arg4, Vec* arg5) { arg5->z = sp2C.z * temp_f29; } -void fn_1_79FC(Vec* arg0, Vec* arg1, f32 arg2, Vec* arg3, Vec* arg4, f32 arg5, f32 arg6) { +void fn_1_79FC(Vec *arg0, Vec *arg1, f32 arg2, Vec *arg3, Vec *arg4, f32 arg5, f32 arg6) +{ Vec sp38; Vec sp2C; f32 temp_f31; @@ -1374,28 +1436,30 @@ void fn_1_79FC(Vec* arg0, Vec* arg1, f32 arg2, Vec* arg3, Vec* arg4, f32 arg5, f arg1->x *= arg6; arg1->y *= arg6; arg1->z *= arg6; - PSVECSubtract(arg0, arg3, &sp38); - PSVECNormalize(&sp38, &sp2C); - temp_f31 = (arg2 + arg5) - PSVECMag(&sp38); + VECSubtract(arg0, arg3, &sp38); + VECNormalize(&sp38, &sp2C); + temp_f31 = (arg2 + arg5) - VECMag(&sp38); if (temp_f31 > 0.01f) { - PSVECSubtract(arg1, arg4, &sp38); - if (PSVECMag(&sp38) < 0.01f) { + VECSubtract(arg1, arg4, &sp38); + if (VECMag(&sp38) < 0.01f) { arg0->x += sp2C.x * temp_f31; arg0->y += sp2C.y * temp_f31; arg0->z += sp2C.z * temp_f31; - } else { - PSVECNormalize(&sp38, &sp38); + } + else { + VECNormalize(&sp38, &sp38); arg0->x -= sp38.x * temp_f31; arg0->y -= sp38.y * temp_f31; arg0->z -= sp38.z * temp_f31; } } fn_1_7CA0(*arg1, sp2C, 1.0f, arg1); - PSVECSubtract(arg4, arg1, &sp38); - var_f30 = PSVECMag(&sp38); - if (var_f30 < 0.01f) return; - PSVECNormalize(&sp38, &sp38); - var_f29 = PSVECDotProduct(&sp2C, &sp38); + VECSubtract(arg4, arg1, &sp38); + var_f30 = VECMag(&sp38); + if (var_f30 < 0.01f) + return; + VECNormalize(&sp38, &sp38); + var_f29 = VECDotProduct(&sp2C, &sp38); if (var_f29 > 0.0f) { arg1->x += var_f30 * (sp2C.x * var_f29); arg1->y += var_f30 * (sp2C.y * var_f29); @@ -1403,14 +1467,15 @@ void fn_1_79FC(Vec* arg0, Vec* arg1, f32 arg2, Vec* arg3, Vec* arg4, f32 arg5, f } } -void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Point3d* arg3) { +void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Point3d *arg3) +{ f32 var_f31; *arg3 = arg0; arg3->x *= arg2; arg3->y *= arg2; arg3->z *= arg2; - var_f31 = PSVECDotProduct(&arg1, arg3); + var_f31 = VECDotProduct(&arg1, arg3); if (var_f31 < 0.0f) { arg3->x -= 2.0f * arg1.x * var_f31; arg3->y -= 2.0f * arg1.y * var_f31; @@ -1418,7 +1483,8 @@ void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Point3d* arg3) { } } -f32 fn_1_7DD0(Vec* arg0) { +f32 fn_1_7DD0(Vec *arg0) +{ f32 temp_f30; f32 temp_f29; @@ -1429,24 +1495,28 @@ f32 fn_1_7DD0(Vec* arg0) { arg0->x *= temp_f29; arg0->y *= temp_f29; arg0->z *= temp_f29; - } else { + } + else { arg0->x = arg0->y = arg0->z = 0.0f; } return temp_f30; } -f32 fn_1_7F68(Vec arg0, Vec arg1, Vec* arg2, f32 arg8) { +f32 fn_1_7F68(Vec arg0, Vec arg1, Vec *arg2, f32 arg8) +{ if (arg8 <= 0.0f) { arg2->x = arg0.x; arg2->y = arg0.y; arg2->z = arg0.z; arg8 = 0.0f; - } else if (arg8 >= 1.0f) { + } + else if (arg8 >= 1.0f) { arg2->x = (arg0.x + arg1.x); arg2->y = (arg0.y + arg1.y); arg2->z = (arg0.z + arg1.z); arg8 = 1.0f; - } else { + } + else { arg2->x = (arg0.x + (arg8 * arg1.x)); arg2->y = (arg0.y + (arg8 * arg1.y)); arg2->z = (arg0.z + (arg8 * arg1.z)); @@ -1454,7 +1524,8 @@ f32 fn_1_7F68(Vec arg0, Vec arg1, Vec* arg2, f32 arg8) { return arg8; } -f32 fn_1_8040(Vec arg0, Vec arg1, Vec arg2) { +f32 fn_1_8040(Vec arg0, Vec arg1, Vec arg2) +{ f32 temp_f30; f32 var_f31; @@ -1466,23 +1537,27 @@ f32 fn_1_8040(Vec arg0, Vec arg1, Vec arg2) { return var_f31; } -f32 fn_1_80FC(Vec* arg0, Vec* arg1, Vec* arg2) { +f32 fn_1_80FC(Vec *arg0, Vec *arg1, Vec *arg2) +{ Vec sp44; f32 var_f30; if (0.0f == (arg2->x * arg2->x) + (arg2->y * arg2->y) + (arg2->z * arg2->z)) { - return ((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y)) + ((arg0->z - arg1->z) * (arg0->z - arg1->z)); + return ((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y)) + + ((arg0->z - arg1->z) * (arg0->z - arg1->z)); } var_f30 = fn_1_8040(*arg0, *arg1, *arg2); fn_1_7F68(*arg1, *arg2, &sp44, var_f30); return ((arg0->x - sp44.x) * (arg0->x - sp44.x)) + ((arg0->y - sp44.y) * (arg0->y - sp44.y)) + ((arg0->z - sp44.z) * (arg0->z - sp44.z)); } -f32 fn_1_8438(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { +f32 fn_1_8438(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4) +{ f32 var_f27; if (0.0f == ((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y)))) { - return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); + return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); } var_f27 = fn_1_8040(*arg0, *arg1, *arg2); fn_1_7F68(*arg1, *arg2, arg3, var_f27); @@ -1492,8 +1567,9 @@ f32 fn_1_8438(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { return fn_1_7DD0(arg4); } -void fn_1_88E8(u8 arg0, f32 arg8, f32 arg9, f32 argA) { - M424DllBallStruct2* temp_r31; +void fn_1_88E8(u8 arg0, f32 arg8, f32 arg9, f32 argA) +{ + M424DllBallStruct2 *temp_r31; temp_r31 = &lbl_1_bss_60[arg0]; temp_r31->unk4 = 3; @@ -1502,51 +1578,58 @@ void fn_1_88E8(u8 arg0, f32 arg8, f32 arg9, f32 argA) { temp_r31->unk3C.z = argA; } -void fn_1_8924(u8 arg0, u8 arg1) { - M424DllBallStruct2* temp_r31; +void fn_1_8924(u8 arg0, u8 arg1) +{ + M424DllBallStruct2 *temp_r31; temp_r31 = &lbl_1_bss_60[arg0]; temp_r31->unk4 = arg1; } -u8 fn_1_8950(u8 arg0) { - M424DllBallStruct2* temp_r31; +u8 fn_1_8950(u8 arg0) +{ + M424DllBallStruct2 *temp_r31; temp_r31 = &lbl_1_bss_60[arg0]; return temp_r31->unk4; } -u8 fn_1_897C(u8 arg0) { - M424DllBallStruct2* temp_r31; +u8 fn_1_897C(u8 arg0) +{ + M424DllBallStruct2 *temp_r31; temp_r31 = &lbl_1_bss_60[arg0]; return temp_r31->unk5; } -u8 fn_1_89A8(u8 arg0) { - M424DllBallStruct2* temp_r31; +u8 fn_1_89A8(u8 arg0) +{ + M424DllBallStruct2 *temp_r31; temp_r31 = &lbl_1_bss_60[arg0]; return temp_r31->unk91; } -Vec* fn_1_89D4(u8 arg0) { - M424DllBallStruct2* temp_r31; +Vec *fn_1_89D4(u8 arg0) +{ + M424DllBallStruct2 *temp_r31; temp_r31 = &lbl_1_bss_60[arg0]; return &temp_r31->unk3C; } -Vec* fn_1_8A00(u8 arg0) { - M424DllBallStruct2* temp_r31; +Vec *fn_1_8A00(u8 arg0) +{ + M424DllBallStruct2 *temp_r31; temp_r31 = &lbl_1_bss_60[arg0]; return &temp_r31->unk6C; } -s32 fn_1_8A2C(void) { - M424DllBallStruct2* var_r31; - M424DllBallStruct* temp_r30; +s32 fn_1_8A2C(void) +{ + M424DllBallStruct2 *var_r31; + M424DllBallStruct *temp_r30; s32 var_r29; var_r31 = lbl_1_bss_60; @@ -1559,9 +1642,10 @@ s32 fn_1_8A2C(void) { return 1; } -void fn_1_8AA8(s32 arg0, s32 arg1) { +void fn_1_8AA8(s32 arg0, s32 arg1) +{ Vec spC; - M424DllBallStruct2* temp_r31; + M424DllBallStruct2 *temp_r31; s32 var_r27; s32 var_r29; s32 var_r30; @@ -1570,7 +1654,7 @@ void fn_1_8AA8(s32 arg0, s32 arg1) { for (var_r30 = 0; var_r30 < lbl_1_bss_58; var_r30++) { temp_r31 = &lbl_1_bss_60[var_r30]; if (temp_r31->unk4 != 6) { - PSVECAdd(&temp_r31->unk60, &temp_r31->unk6C, &temp_r31->unk3C); + VECAdd(&temp_r31->unk60, &temp_r31->unk6C, &temp_r31->unk3C); if ((temp_r31->unk4 < 3) && (fn_1_907C(&temp_r31->unk3C, &spC) != 0)) { temp_r31->unk3C = spC; } @@ -1583,7 +1667,7 @@ void fn_1_8AA8(s32 arg0, s32 arg1) { } } } - + for (var_r30 = 0, var_r29 = arg0; var_r30 < lbl_1_bss_58; var_r30++) { temp_r31 = &lbl_1_bss_60[var_r30]; var_r27 = 0; @@ -1594,7 +1678,8 @@ void fn_1_8AA8(s32 arg0, s32 arg1) { if ((var_r27 != 0) && (var_r29 > 0)) { var_r29 -= 1; var_r30 -= 1; - } else { + } + else { var_r29 = arg0; } } @@ -1602,27 +1687,28 @@ void fn_1_8AA8(s32 arg0, s32 arg1) { fn_1_C2E0(0); } -s32 fn_1_8C78(s32 arg0, s32 arg1) { +s32 fn_1_8C78(s32 arg0, s32 arg1) +{ Vec sp38; Vec sp2C; Vec sp20; Vec sp14; - Vec* sp10; + Vec *sp10; f32 temp_f31; f32 var_f30; s32 var_r31; - M424DllBallStruct2* temp_r30; - M424DllBallStruct2* temp_r29; - Vec* var_r28; - Vec* var_r27; - M424DllBallStruct* temp_r26; - M424DllBallStruct* temp_r25; + M424DllBallStruct2 *temp_r30; + M424DllBallStruct2 *temp_r29; + Vec *var_r28; + Vec *var_r27; + M424DllBallStruct *temp_r26; + M424DllBallStruct *temp_r25; temp_r30 = &lbl_1_bss_60[arg0]; temp_r26 = temp_r30->unk0->data; var_r28 = fn_1_89D4(arg0); sp38 = *var_r28; - + for (var_r31 = 0; var_r31 < lbl_1_bss_58; var_r31++) { if (var_r31 != arg0) { if (fn_1_8950(var_r31) < 3) { @@ -1630,23 +1716,24 @@ s32 fn_1_8C78(s32 arg0, s32 arg1) { temp_r25 = temp_r29->unk0->data; var_r27 = fn_1_89D4(var_r31); sp2C = *var_r27; - PSVECSubtract(&sp2C, &sp38, &sp20); - var_f30 = PSVECMag(&sp20); + VECSubtract(&sp2C, &sp38, &sp20); + var_f30 = VECMag(&sp20); if (var_f30 < 200.0f) { if (var_f30 > 0.0f) { temp_f31 = 1.0f / var_f30; sp20.x *= temp_f31; sp20.y *= temp_f31; sp20.z *= temp_f31; - } else { + } + else { sp20.x = 0.0f; sp20.y = 0.0f; sp20.z = 1.0f; } temp_f31 = 1.0f + (0.5f * (200.0f - var_f30)); if (temp_f31 > 0.0f) { - PSVECScale(&sp20, &sp20, temp_f31); - PSVECAdd(&sp2C, &sp20, &sp2C); + VECScale(&sp20, &sp20, temp_f31); + VECAdd(&sp2C, &sp20, &sp2C); *var_r27 = sp2C; if ((temp_r29->unk4 < 3) && (fn_1_907C(&sp2C, &sp14) != 0)) { sp2C = sp14; @@ -1657,8 +1744,8 @@ s32 fn_1_8C78(s32 arg0, s32 arg1) { } } if (temp_f31 > 0.0f) { - PSVECScale(&sp20, &sp20, -1.0f); - PSVECAdd(&sp38, &sp20, &sp38); + VECScale(&sp20, &sp20, -1.0f); + VECAdd(&sp38, &sp20, &sp38); *var_r28 = sp38; if ((temp_r30->unk4 < 3) && (fn_1_907C(&sp38, &sp14) != 0)) { sp38 = sp14; @@ -1679,7 +1766,8 @@ s32 fn_1_8C78(s32 arg0, s32 arg1) { return arg1; } -s32 fn_1_907C(Vec* arg0, Vec* arg1) { +s32 fn_1_907C(Vec *arg0, Vec *arg1) +{ Vec sp10; f32 temp_f29; f32 temp_f28; @@ -1695,7 +1783,8 @@ s32 fn_1_907C(Vec* arg0, Vec* arg1) { temp_f26 = 1.0f / var_f27; sp10.x *= temp_f26; sp10.z *= temp_f26; - } else { + } + else { sp10.x = 1.0f; sp10.z = 0.0f; } diff --git a/src/REL/m424Dll/claw.c b/src/REL/m424Dll/claw.c index bae108e8..b9472555 100644 --- a/src/REL/m424Dll/claw.c +++ b/src/REL/m424Dll/claw.c @@ -1,6 +1,5 @@ #include "REL/m424Dll.h" -#include "math.h" #include "ext_math.h" #include "game/audio.h" #include "game/chrman.h" @@ -8,6 +7,8 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/pad.h" +#include "math.h" + // STRUCT typedef struct _M424DllClawStruct { @@ -66,8 +67,8 @@ typedef struct _M424DllClawStruct3 { } M424DllClawStruct3; // sizeof 0x8 // BSS -Process* lbl_1_bss_6DC; -omObjData* lbl_1_bss_6D8; +Process *lbl_1_bss_6DC; +omObjData *lbl_1_bss_6D8; s32 lbl_1_bss_6D0[2]; s32 lbl_1_bss_6CC; s32 lbl_1_bss_6C8; @@ -178,7 +179,7 @@ void fn_1_94D0(omObjData *arg0) } var_r31->unk184 = -1; var_r31->unk30 = lbl_1_data_30C; - + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { var_r31->unk3C[var_r29] = lbl_1_data_30C; var_r31->unkCC[var_r29] = lbl_1_data_30C; @@ -608,13 +609,13 @@ void fn_1_9A64(omObjData *arg0) fn_1_C878(arg0->model[1], "hook1", sp74, 0); fn_1_C878(arg0->model[2], "hook2", sp74, 1); fn_1_C878(arg0->model[3], "hook3", sp74, 1); - PSMTXCopy(sp74, sp44); + MTXCopy(sp74, sp44); temp_r31->unk30.x = sp74[0][3]; temp_r31->unk30.y = sp74[1][3]; temp_r31->unk30.z = sp74[2][3]; for (var_r29 = 0; var_r29 < 0xC; var_r29++) { - PSMTXCopy(sp44, sp74); + MTXCopy(sp44, sp74); fn_1_C878(arg0->model[4], lbl_1_data_21C[var_r29], sp74, 1); temp_r31->unkCC[var_r29] = temp_r31->unk3C[var_r29]; temp_r31->unk3C[var_r29].x = sp74[0][3]; @@ -625,14 +626,14 @@ void fn_1_9A64(omObjData *arg0) sp2C.x = 0.0f; sp2C.y = temp_r31->unk174.y; sp2C.z = 0.0f; - PSVECSubtract(&temp_r31->unk174, &sp2C, &sp20); - var_f31 = PSVECMag(&sp20); + VECSubtract(&temp_r31->unk174, &sp2C, &sp20); + var_f31 = VECMag(&sp20); if (var_f31 != 0.0f) { - PSVECNormalize(&sp20, &sp20); - PSVECScale(&sp20, &sp20, 0.9f * var_f31); - PSVECAdd(&sp2C, &sp20, &temp_r31->unk174); + VECNormalize(&sp20, &sp20); + VECScale(&sp20, &sp20, 0.9f * var_f31); + VECAdd(&sp2C, &sp20, &temp_r31->unk174); } - PSVECAdd(&temp_r31->unk30, &temp_r31->unk174, &sp38); + VECAdd(&temp_r31->unk30, &temp_r31->unk174, &sp38); fn_1_88E8(temp_r31->unk168, sp38.x, sp38.y, sp38.z); } temp_r31->unk164 = 1; @@ -911,7 +912,7 @@ s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3) var_r28 = 0; var_r24 = lbl_1_bss_6D8; temp_r31 = var_r24->data; - PSVECAdd(arg0, arg1, &sp24); + VECAdd(arg0, arg1, &sp24); spC = *arg1; *arg2 = *arg0; temp_f30 = 5.0f + arg8; @@ -923,10 +924,10 @@ s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3) for (var_r29 = 0; var_r29 < 0xC; var_r29++) { if (var_r28 != 0) { sp24 = *arg2; - PSVECSubtract(&sp24, arg0, &spC); + VECSubtract(&sp24, arg0, &spC); } - PSVECSubtract(&sp24, &temp_r31->unk3C[var_r29], &sp18); - var_f29 = PSVECMag(&sp18); + VECSubtract(&sp24, &temp_r31->unk3C[var_r29], &sp18); + var_f29 = VECMag(&sp18); if (var_f29 < temp_f30) { if (0.0f == var_f29) { var_f29 = temp_f30; @@ -939,9 +940,9 @@ s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3) temp_r31->unk15C = 1; } else { - PSVECNormalize(&sp18, &sp18); - PSVECScale(&sp18, &sp18, temp_f30); - PSVECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); + VECNormalize(&sp18, &sp18); + VECScale(&sp18, &sp18, temp_f30); + VECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); } var_r28 = 1; } @@ -951,43 +952,43 @@ s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3) for (var_r29 = 0; var_r29 < 0xC; var_r29++) { if (var_r28 != 0) { sp24 = *arg2; - PSVECSubtract(&sp24, arg0, &spC); + VECSubtract(&sp24, arg0, &spC); } var_r26 = 0; sp60 = temp_r31->unk3C[var_r29]; - PSVECAdd(&temp_r31->unkCC[var_r29], &spC, &sp54); - PSVECSubtract(&sp60, &sp54, &sp18); - PSVECSubtract(&sp24, &sp54, &sp48); + VECAdd(&temp_r31->unkCC[var_r29], &spC, &sp54); + VECSubtract(&sp60, &sp54, &sp18); + VECSubtract(&sp24, &sp54, &sp48); temp_f26 = (sp18.z * sp18.z) + ((sp18.x * sp18.x) + (sp18.y * sp18.y)); if (temp_f26 != 0.0f) { var_f24 = (sp18.x * sp48.x) + (sp18.y * sp48.y) + (sp18.z * sp48.z); temp_f27 = var_f24 / temp_f26; if (temp_f27 >= 0.0f) { if (temp_f27 <= 1.0f) { - PSVECScale(&sp18, &sp18, temp_f27); - PSVECAdd(&sp54, &sp18, &sp3C); - PSVECSubtract(&sp24, &sp3C, &sp30); - var_f29 = PSVECMag(&sp30); + VECScale(&sp18, &sp18, temp_f27); + VECAdd(&sp54, &sp18, &sp3C); + VECSubtract(&sp24, &sp3C, &sp30); + var_f29 = VECMag(&sp30); if (var_f29 == 0.0f) { - if (PSVECMag(&sp18) <= 0.0f) { + if (VECMag(&sp18) <= 0.0f) { sp18.x = sp18.y = 0.0f; sp18.z = 1.0f; } - PSVECNormalize(&sp18, &sp30); - PSVECScale(&sp30, &sp30, temp_f30); - PSVECAdd(&sp60, &sp30, arg2); + VECNormalize(&sp18, &sp30); + VECScale(&sp30, &sp30, temp_f30); + VECAdd(&sp60, &sp30, arg2); var_r28 = 1; var_r26 = 1; } else if (var_f29 < temp_f30) { - if (PSVECMag(&sp30) <= 0.0f) { + if (VECMag(&sp30) <= 0.0f) { sp30.x = sp30.y = 0.0f; sp30.z = 1.0f; } - PSVECNormalize(&sp30, &sp30); - PSVECScale(&sp30, &sp30, temp_f30); - PSVECAdd(&sp3C, &sp30, arg2); + VECNormalize(&sp30, &sp30); + VECScale(&sp30, &sp30, temp_f30); + VECAdd(&sp3C, &sp30, arg2); var_r28 = 1; var_r26 = 1; } @@ -995,31 +996,31 @@ s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3) } } if (var_r26 == 0) { - PSVECSubtract(&sp24, &sp60, &sp18); - var_f29 = PSVECMag(&sp18); + VECSubtract(&sp24, &sp60, &sp18); + var_f29 = VECMag(&sp18); if (var_f29 < temp_f30) { if (var_f29 <= 0.0f) { sp18.x = sp18.y = 0.0f; sp18.z = 1.0f; } - PSVECNormalize(&sp18, &sp18); - PSVECScale(&sp18, &sp18, temp_f30); - PSVECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); + VECNormalize(&sp18, &sp18); + VECScale(&sp18, &sp18, temp_f30); + VECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); var_r28 = 1; var_r26 = 1; } } if (var_r26 == 0) { - PSVECSubtract(&sp24, &sp54, &sp18); - var_f29 = PSVECMag(&sp18); + VECSubtract(&sp24, &sp54, &sp18); + var_f29 = VECMag(&sp18); if (var_f29 < temp_f30) { if (var_f29 <= 0.0f) { sp18.x = sp18.y = 0.0f; sp18.z = 1.0f; } - PSVECNormalize(&sp18, &sp18); - PSVECScale(&sp18, &sp18, temp_f30); - PSVECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); + VECNormalize(&sp18, &sp18); + VECScale(&sp18, &sp18, temp_f30); + VECAdd(&temp_r31->unk3C[var_r29], &sp18, arg2); var_r28 = 1; var_r26 = 1; } @@ -1045,7 +1046,7 @@ s32 fn_1_B9E0(Vec *arg0, Vec *arg1, f32 arg8, Vec *arg2, s32 arg3) if (var_r28 != 0) { if (--arg3 > 0) { sp24 = *arg2; - PSVECSubtract(&sp24, arg0, &spC); + VECSubtract(&sp24, arg0, &spC); if (fn_1_B9E0(arg0, &spC, arg8, &sp24, arg3) != 0) { *arg2 = sp24; } @@ -1077,8 +1078,8 @@ s32 fn_1_C210(Vec *arg0) sp1C.x = temp_r31->unk30.x; sp1C.y = -120.00001f + temp_r31->unk30.y; sp1C.z = temp_r31->unk30.z; - PSVECSubtract(arg0, &sp1C, &sp10); - if ((spC = PSVECMag(&sp10)) < 50.0f) { + VECSubtract(arg0, &sp1C, &sp10); + if ((spC = VECMag(&sp10)) < 50.0f) { var_r29 = 1; } } @@ -1118,7 +1119,7 @@ void fn_1_C2E0(s32 arg0) spC = fn_1_8A00(var_r30); sp28 = *temp_r28; sp4C = temp_r27->unk60; - PSVECSubtract(temp_r28, &sp4C, &sp40); + VECSubtract(temp_r28, &sp4C, &sp40); if (fn_1_B9E0(&sp4C, &sp40, 100.0f, &sp34, 0x10) != 0) { *temp_r28 = sp34; sp4C = sp34; @@ -1141,7 +1142,7 @@ void fn_1_C2E0(s32 arg0) if (fn_1_C210(&sp4C) != 0) { temp_r31->unk168 = var_r30; temp_r31->unk170 = fn_1_897C(var_r30); - PSVECSubtract(&sp4C, &temp_r31->unk30, &temp_r31->unk174); + VECSubtract(&sp4C, &temp_r31->unk30, &temp_r31->unk174); fn_1_88E8(temp_r31->unk168, sp4C.x, sp4C.y, sp4C.z); } } @@ -1174,8 +1175,8 @@ void fn_1_C604(s32 arg0, s32 arg1) var_r28 = &lbl_1_bss_60[var_r30]; var_r31 = fn_1_89D4(var_r30); sp24 = *var_r31; - PSVECSubtract(&sp24, &sp30, &sp18); - var_f30 = PSVECMag(&sp18); + VECSubtract(&sp24, &sp30, &sp18); + var_f30 = VECMag(&sp18); if (var_f30 < 200.0f) { if (var_f30 > 0.0f) { temp_f31 = 1.0f / var_f30; @@ -1228,11 +1229,11 @@ s32 fn_1_C878(s16 arg0, const char *arg1, Mtx arg2, s32 arg3) lbl_1_bss_6C4 = 0; } mtxRot(sp14, temp_r31->rot.x, temp_r31->rot.y, temp_r31->rot.z); - PSMTXScale(sp44, temp_r31->scale.x, temp_r31->scale.y, temp_r31->scale.z); - PSMTXConcat(sp14, sp44, sp44); + MTXScale(sp44, temp_r31->scale.x, temp_r31->scale.y, temp_r31->scale.z); + MTXConcat(sp14, sp44, sp44); mtxTransCat(sp44, temp_r31->pos.x, temp_r31->pos.y, temp_r31->pos.z); if (arg3 != 0) { - PSMTXConcat(arg2, sp44, sp44); + MTXConcat(arg2, sp44, sp44); } fn_1_C99C(temp_r30->root, sp44, arg1, arg2); return lbl_1_bss_6C8; @@ -1263,21 +1264,21 @@ void fn_1_C99C(HsfObject *arg0, Mtx arg1, const char *arg2, Mtx arg3) var_r31 = &arg0->data.base; } if ((var_r31->scale.x <= 0.0f) && (var_r31->scale.y <= 0.0f) && (var_r31->scale.z <= 0.0f)) { - PSMTXCopy(arg1, spF8); + MTXCopy(arg1, spF8); OSReport("OBJ MTX CHECK ERROR %s \n", arg0->name); } else { mtxRot(spC8, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); - PSMTXScale(spF8, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); - PSMTXConcat(spC8, spF8, spF8); + MTXScale(spF8, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + MTXConcat(spC8, spF8, spF8); mtxTransCat(spF8, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); - PSMTXConcat(arg1, spF8, spF8); + MTXConcat(arg1, spF8, spF8); } if (lbl_1_bss_6C0 != 0) { OSReport("%s \n", arg0->name); } if (strcmp(arg2, arg0->name) == 0) { - PSMTXCopy(spF8, arg3); + MTXCopy(spF8, arg3); lbl_1_bss_6C8 = 1; } for (var_r25 = 0; var_r25 < arg0->data.childrenCount; var_r25++) { @@ -1290,21 +1291,21 @@ void fn_1_C99C(HsfObject *arg0, Mtx arg1, const char *arg2, Mtx arg3) var_r30 = &temp_r28->data.base; } if ((var_r30->scale.x <= 0.0f) && (var_r30->scale.y <= 0.0f) && (var_r30->scale.z <= 0.0f)) { - PSMTXCopy(spF8, sp68); + MTXCopy(spF8, sp68); OSReport("OBJ MTX CHECK ERROR %s \n", temp_r28->name); } else { mtxRot(sp98, var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); - PSMTXScale(sp68, var_r30->scale.x, var_r30->scale.y, var_r30->scale.z); - PSMTXConcat(sp98, sp68, sp68); + MTXScale(sp68, var_r30->scale.x, var_r30->scale.y, var_r30->scale.z); + MTXConcat(sp98, sp68, sp68); mtxTransCat(sp68, var_r30->pos.x, var_r30->pos.y, var_r30->pos.z); - PSMTXConcat(spF8, sp68, sp68); + MTXConcat(spF8, sp68, sp68); } if (lbl_1_bss_6C0 != 0) { OSReport("%s \n", temp_r28->name); } if (strcmp(arg2, temp_r28->name) == 0) { - PSMTXCopy(sp68, arg3); + MTXCopy(sp68, arg3); lbl_1_bss_6C8 = 1; } for (var_r24 = 0; var_r24 < temp_r28->data.childrenCount; var_r24++) { @@ -1317,21 +1318,21 @@ void fn_1_C99C(HsfObject *arg0, Mtx arg1, const char *arg2, Mtx arg3) var_r29 = &temp_r27->data.base; } if ((var_r29->scale.x <= 0.0f) && (var_r29->scale.y <= 0.0f) && (var_r29->scale.z <= 0.0f)) { - PSMTXCopy(sp68, sp8); + MTXCopy(sp68, sp8); OSReport("OBJ MTX CHECK ERROR %s \n", temp_r27->name); } else { mtxRot(sp38, var_r29->rot.x, var_r29->rot.y, var_r29->rot.z); - PSMTXScale(sp8, var_r29->scale.x, var_r29->scale.y, var_r29->scale.z); - PSMTXConcat(sp38, sp8, sp8); + MTXScale(sp8, var_r29->scale.x, var_r29->scale.y, var_r29->scale.z); + MTXConcat(sp38, sp8, sp8); mtxTransCat(sp8, var_r29->pos.x, var_r29->pos.y, var_r29->pos.z); - PSMTXConcat(sp68, sp8, sp8); + MTXConcat(sp68, sp8, sp8); } if (lbl_1_bss_6C0 != 0) { OSReport("%s \n", temp_r27->name); } if (strcmp(arg2, temp_r27->name) == 0) { - PSMTXCopy(sp8, arg3); + MTXCopy(sp8, arg3); lbl_1_bss_6C8 = 1; } for (var_r23 = 0; var_r23 < temp_r27->data.childrenCount; var_r23++) { diff --git a/src/REL/m424Dll/map.c b/src/REL/m424Dll/map.c index 7215c532..4536b396 100644 --- a/src/REL/m424Dll/map.c +++ b/src/REL/m424Dll/map.c @@ -1,9 +1,10 @@ #include "REL/m424Dll.h" -#include "math.h" #include "game/audio.h" #include "game/hsfman.h" #include "game/hsfmotion.h" +#include "math.h" + // STRUCT typedef struct _M424DllMapStruct { @@ -20,8 +21,8 @@ typedef struct _M424DllMapStruct { } M424DllMapStruct; // sizeof 0x54 // BSS -Process* lbl_1_bss_54; -omObjData* lbl_1_bss_50; +Process *lbl_1_bss_54; +omObjData *lbl_1_bss_50; // DATA Vec lbl_1_data_E0 = { 0.0f, 3000.0f, 1.0f }; @@ -29,12 +30,13 @@ Vec lbl_1_data_EC = { 0.0f, 1.0f, 0.0f }; Vec lbl_1_data_F8 = { 0.0f, 0.0f, 0.0f }; // PROTO -void fn_1_1BB8(omObjData*); -void fn_1_1E1C(omObjData*); -void fn_1_2130(omObjData*); +void fn_1_1BB8(omObjData *); +void fn_1_1E1C(omObjData *); +void fn_1_2130(omObjData *); void fn_1_2438(f32); -omObjData* fn_1_1AB8(Process* arg0) { +omObjData *fn_1_1AB8(Process *arg0) +{ lbl_1_bss_54 = arg0; lbl_1_bss_50 = omAddObjEx(arg0, 0x7F, 6, 0, -1, fn_1_1BB8); lbl_1_bss_50->data = NULL; @@ -44,12 +46,14 @@ omObjData* fn_1_1AB8(Process* arg0) { return lbl_1_bss_50; } -void fn_1_1B8C(void) { +void fn_1_1B8C(void) +{ fn_1_2130(lbl_1_bss_50); } -void fn_1_1BB8(omObjData* arg0) { - M424DllMapStruct* var_r30; +void fn_1_1BB8(omObjData *arg0) +{ + M424DllMapStruct *var_r30; var_r30 = arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x54, 0x10000000); memset(var_r30, 0, 0x54); @@ -82,9 +86,10 @@ void fn_1_1BB8(omObjData* arg0) { arg0->func = fn_1_1E1C; } -void fn_1_1E1C(omObjData* arg0) { +void fn_1_1E1C(omObjData *arg0) +{ f32 temp_f31; - M424DllMapStruct* temp_r31; + M424DllMapStruct *temp_r31; temp_r31 = arg0->data; if (temp_r31->unk40 > 0) { @@ -108,8 +113,9 @@ void fn_1_1E1C(omObjData* arg0) { if (temp_r31->unk0 > 0.04f) { temp_r31->unk0 = 0.04f; } - if (temp_r31->unk38 != -1) break; - + if (temp_r31->unk38 != -1) + break; + temp_r31->unk38 = HuAudFXPlay(0x626); break; default: @@ -120,8 +126,8 @@ void fn_1_1E1C(omObjData* arg0) { } temp_f31 = temp_r31->unk0 / 0.04f; if (temp_r31->unk38 != -1) { - HuAudFXVolSet(temp_r31->unk38, (s16) (-8191.0f * (1.0f - temp_f31))); - HuAudFXPitchSet(temp_r31->unk38, (s16) (127.0f * temp_f31)); + HuAudFXVolSet(temp_r31->unk38, (s16)(-8191.0f * (1.0f - temp_f31))); + HuAudFXPitchSet(temp_r31->unk38, (s16)(127.0f * temp_f31)); if (temp_f31 <= 0.0f) { HuAudFXStop(temp_r31->unk38); temp_r31->unk38 = -1; @@ -130,16 +136,18 @@ void fn_1_1E1C(omObjData* arg0) { } break; } - + if (temp_r31->unk48 != 0) { if (temp_r31->unk4C != 0) { temp_r31->unk4C = (temp_r31->unk4C - 1); - } else { + } + else { temp_r31->unk48 = (temp_r31->unk48 - 1); if (temp_r31->unk48 != 0) { Hu3DModelAttrReset(arg0->model[4], 1); Hu3DModelAttrSet(arg0->model[5], 1); - } else { + } + else { Hu3DModelAttrSet(arg0->model[4], 1); Hu3DModelAttrReset(arg0->model[5], 1); if (temp_r31->unk50 != -1) { @@ -150,16 +158,18 @@ void fn_1_1E1C(omObjData* arg0) { } } temp_r31->unk4 = (20.0f * temp_r31->unk0); - PSMTXRotRad(temp_r31->unk8, 0x59, MTXDegToRad(temp_r31->unk4)); + MTXRotRad(temp_r31->unk8, 0x59, MTXDegToRad(temp_r31->unk4)); Hu3DMotionSpeedSet(arg0->model[1], temp_r31->unk0); } -void fn_1_2130(omObjData* arg0) { +void fn_1_2130(omObjData *arg0) +{ arg0->func = NULL; } -f32 fn_1_213C(void) { - M424DllMapStruct* var_r31; +f32 fn_1_213C(void) +{ + M424DllMapStruct *var_r31; if (!lbl_1_bss_50) { return 0.0f; } @@ -170,17 +180,19 @@ f32 fn_1_213C(void) { return var_r31->unk4; } -void fn_1_21B0(Mtx arg0) { - M424DllMapStruct* var_r31; +void fn_1_21B0(Mtx arg0) +{ + M424DllMapStruct *var_r31; if (lbl_1_bss_50 && lbl_1_bss_50->data) { var_r31 = lbl_1_bss_50->data; - PSMTXCopy(var_r31->unk8, *(Mtx*)&arg0); + MTXCopy(var_r31->unk8, *(Mtx *)&arg0); } } -void fn_1_2220(Vec* arg0, Vec* arg1) { +void fn_1_2220(Vec *arg0, Vec *arg1) +{ Vec spC; - M424DllMapStruct* temp_r30; + M424DllMapStruct *temp_r30; if (lbl_1_bss_50 && lbl_1_bss_50->data) { temp_r30 = lbl_1_bss_50->data; @@ -188,23 +200,25 @@ void fn_1_2220(Vec* arg0, Vec* arg1) { spC.x = (temp_r30->unk8[0][0] * arg0->x) + (temp_r30->unk8[0][2] * arg0->z); spC.z = (temp_r30->unk8[2][0] * arg0->x) + (temp_r30->unk8[2][2] * arg0->z); spC.y = arg0->y; - } else { + } + else { spC = *arg0; } - PSVECSubtract(&spC, arg0, &spC); + VECSubtract(&spC, arg0, &spC); *arg1 = spC; } } -void fn_1_2438(f32 arg0) { - M424DllMapStruct* spC; - HsfAttribute* var_r31; - ModelData* temp_r30; - HsfData* temp_r29; +void fn_1_2438(f32 arg0) +{ + M424DllMapStruct *spC; + HsfAttribute *var_r31; + ModelData *temp_r30; + HsfData *temp_r29; s32 var_r28; - HsfBitmap* var_r27; - omObjData* var_r26; - + HsfBitmap *var_r27; + omObjData *var_r26; + if (lbl_1_bss_50 && lbl_1_bss_50->data) { var_r26 = lbl_1_bss_50; spC = lbl_1_bss_50->data; @@ -213,7 +227,8 @@ void fn_1_2438(f32 arg0) { var_r31 = temp_r30->hsfData->attribute; for (var_r28 = 0; var_r28 < temp_r29->attributeCnt; var_r28++, var_r31++) { var_r27 = var_r31->bitmap; - if (strcmp("cr_dk2", var_r27->name) == 0) break; + if (strcmp("cr_dk2", var_r27->name) == 0) + break; } if (var_r28 < temp_r29->attributeCnt) { var_r31->unk30 += arg0; @@ -221,9 +236,10 @@ void fn_1_2438(f32 arg0) { } } -void fn_1_252C(f32 arg8, s32 arg0) { - omObjData* sp10; - M424DllMapStruct* temp_r31; +void fn_1_252C(f32 arg8, s32 arg0) +{ + omObjData *sp10; + M424DllMapStruct *temp_r31; if (lbl_1_bss_50 && lbl_1_bss_50->data) { sp10 = lbl_1_bss_50; @@ -234,9 +250,10 @@ void fn_1_252C(f32 arg8, s32 arg0) { } } -f32 fn_1_25C0(void) { - omObjData* sp8; - M424DllMapStruct* temp_r31; +f32 fn_1_25C0(void) +{ + omObjData *sp8; + M424DllMapStruct *temp_r31; if (!lbl_1_bss_50) { return 0.0f; @@ -252,9 +269,10 @@ f32 fn_1_25C0(void) { return 0.0f; } -void fn_1_2670(s32 arg0, s32 arg1) { - omObjData* temp_r30; - M424DllMapStruct* temp_r31; +void fn_1_2670(s32 arg0, s32 arg1) +{ + omObjData *temp_r30; + M424DllMapStruct *temp_r31; if (lbl_1_bss_50 && lbl_1_bss_50->data) { temp_r30 = lbl_1_bss_50; @@ -267,17 +285,9 @@ void fn_1_2670(s32 arg0, s32 arg1) { } // UNUSED (guessing types) -M424DllMainStruct lbl_1_data_10C = { - { 0.0f, 0.0f, 5500.0f }, - { -3950.0f, 0.0f, -0.7f }, - 0.6f -}; +M424DllMainStruct lbl_1_data_10C = { { 0.0f, 0.0f, 5500.0f }, { -3950.0f, 0.0f, -0.7f }, 0.6f }; GXColor lbl_1_data_128 = { 0xFF, 0xFF, 0xFF, 0xFF }; -M424DllMainStruct lbl_1_data_12C = { - { 0.0f, 5500.0f, -3950.0f }, - { 0.0f, 1.0f, 0.0f }, - 0.0f -}; +M424DllMainStruct lbl_1_data_12C = { { 0.0f, 5500.0f, -3950.0f }, { 0.0f, 1.0f, 0.0f }, 0.0f }; -s32 lbl_1_data_148[2] = {0}; +s32 lbl_1_data_148[2] = { 0 }; diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c index 2c2d321c..b6762117 100644 --- a/src/REL/m425Dll/main.c +++ b/src/REL/m425Dll/main.c @@ -562,18 +562,18 @@ void fn_1_14CC(Mtx arg0, float arg8, float arg9, float argA) Mtx sp38; Mtx sp8; if (argA != 0.0f) { - PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + MTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); } else { - PSMTXIdentity(arg0); + MTXIdentity(arg0); } if (arg8 != 0.0f) { - PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); - PSMTXConcat(sp38, arg0, arg0); + MTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + MTXConcat(sp38, arg0, arg0); } if (arg9 != 0.0f) { - PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); - PSMTXConcat(sp8, arg0, arg0); + MTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + MTXConcat(sp8, arg0, arg0); } } @@ -1374,7 +1374,7 @@ void fn_1_5044(s16 sp8) var_r31->unk_2C[1].unk_04 = 0; var_r31->unk_2C[1].unk_48 = 0x80; for (var_r30 = 0; var_r30 < (var_r31->unk_28 * var_r31->unk_2A); var_r30++) { - PSMTXIdentity(var_r31->unk_2C[var_r30].unk_14); + MTXIdentity(var_r31->unk_2C[var_r30].unk_14); var_r31->unk_2C[var_r30].unk_08.x = var_r31->unk_2C[var_r30].unk_08.y = var_r31->unk_2C[var_r30].unk_08.z = 0.0f; } for (var_r30 = 0; var_r30 < var_r31->unk_28; var_r30++) { @@ -1503,8 +1503,8 @@ void fn_1_5C20(ModelData *var_r27, Mtx sp8) GXSetChanAmbColor(GX_COLOR0A0, var_r31->unk_20); GXSetChanMatColor(GX_COLOR0A0, var_r31->unk_24); GXLoadPosMtxImm(sp8, 0); - PSMTXInverse(sp8, sp5C); - PSMTXTranspose(sp5C, sp2C); + MTXInverse(sp8, sp5C); + MTXTranspose(sp5C, sp2C); GXLoadNrmMtxImm(sp2C, 0); GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); GXSetZMode(1, GX_LEQUAL, 1); @@ -1512,7 +1512,7 @@ void fn_1_5C20(ModelData *var_r27, Mtx sp8) var_r28 = 0; spC = 0; for (var_r29 = GX_TEXMAP0; var_r29 < var_r31->unk_28; var_r29++) { - PSMTXRotRad(var_r31->unk_2C[var_r29].unk_14, 0x5A, 0.0f); + MTXRotRad(var_r31->unk_2C[var_r29].unk_14, 0x5A, 0.0f); mtxTransCat( var_r31->unk_2C[var_r29].unk_14, var_r31->unk_2C[var_r29].unk_08.x, var_r31->unk_2C[var_r29].unk_08.y, var_r31->unk_2C[var_r29].unk_08.z); switch (var_r31->unk_2C[var_r29].unk_04) { diff --git a/src/REL/m425Dll/thwomp.c b/src/REL/m425Dll/thwomp.c index a47e9bd9..3f02dce6 100644 --- a/src/REL/m425Dll/thwomp.c +++ b/src/REL/m425Dll/thwomp.c @@ -1665,7 +1665,7 @@ void fn_1_DE3C(M425DllUnkStruct4 *arg0, ModelData *model) sp8.x = arg0->unk_180[var_r26].x - arg0->unk_180[var_r29].x; sp8.y = arg0->unk_180[var_r26].y - arg0->unk_180[var_r29].y; sp8.z = arg0->unk_180[var_r26].z - arg0->unk_180[var_r29].z; - PSVECCrossProduct(&sp14, &sp8, &sp20); + VECCrossProduct(&sp14, &sp8, &sp20); sp20.x *= -1.0f; sp20.y *= -1.0f; sp20.z *= -1.0f; @@ -1685,7 +1685,7 @@ void fn_1_DE3C(M425DllUnkStruct4 *arg0, ModelData *model) } } for (var_r30 = 0; var_r30 < arg0->unk_110; var_r30++) { - PSVECNormalize(&arg0->unk_188[var_r30], &arg0->unk_188[var_r30]); + VECNormalize(&arg0->unk_188[var_r30], &arg0->unk_188[var_r30]); } } @@ -1803,7 +1803,7 @@ void fn_1_E210(s32 arg0) sp8.x = sind(var_r31->unk_E4) * cosd(var_r31->unk_E0); sp8.z = cosd(var_r31->unk_E4) * cosd(var_r31->unk_E0); sp8.y = sind(var_r31->unk_E0); - PSVECNormalize(&sp8, &sp8); + VECNormalize(&sp8, &sp8); var_r28 = &Hu3DLocalLight[var_r27->unk_38[0]]; var_r28->unk_1C.x = 1000.0f * sp8.x; var_r28->unk_1C.y = 1000.0f * sp8.y; @@ -2093,7 +2093,7 @@ void fn_1_101C4(ModelData *var_r29, Mtx var_r28) var_r31 = var_r29->unk_120; GXLoadPosMtxImm(var_r28, 0); - PSMTXInvXpose(var_r28, sp50); + MTXInvXpose(var_r28, sp50); GXLoadNrmMtxImm(sp50, 0); var_r27 = fn_1_115D4(var_r29, Hu3DCameraMtx, Hu3DCameraMtxXPose, 4.0f); if (omPauseChk() == 0) { @@ -2129,7 +2129,7 @@ void fn_1_101C4(ModelData *var_r29, Mtx var_r28) GXSetZCompLoc(0); GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); if (HmfInverseMtxF3X3(var_r28, sp50) == 0) { - PSMTXIdentity(sp50); + MTXIdentity(sp50); } PSMTXReorder(sp50, sp20); GXClearVtxDesc(); @@ -2418,7 +2418,7 @@ void fn_1_112FC(void) var_r31->unk_04.y = var_r31->unk_10.y * var_r31->unk_1C; var_r31->unk_04.z = var_r31->unk_10.z * var_r31->unk_1C; var_r31->unk_1C *= 0.95f; - PSVECAdd(&var_r31->unk_30, &var_r31->unk_04, &var_r31->unk_30); + VECAdd(&var_r31->unk_30, &var_r31->unk_04, &var_r31->unk_30); if (++var_r31->unk_40 >= 0xF) { var_r31->unk_40 = 0; var_r31->unk_28 = 0.0f; @@ -2503,7 +2503,7 @@ void fn_1_116E4(ModelData *arg1, LightData *var_r31, s16 sp8, Mtx spC, Mtx sp10, break; case 1: GXInitLightAttn(&lbl_1_bss_688, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f); - PSVECScale(&var_r31->unk_28, &var_r31->unk_1C, -100000.0f); + VECScale(&var_r31->unk_28, &var_r31->unk_1C, -100000.0f); break; case 2: GXInitLightAttn(&lbl_1_bss_688, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); @@ -2511,8 +2511,8 @@ void fn_1_116E4(ModelData *arg1, LightData *var_r31, s16 sp8, Mtx spC, Mtx sp10, break; } if ((var_r31->unk_00 & 0x8000) != 0) { - PSMTXMultVec(spC, &var_r31->unk_28, &lbl_1_bss_67C); - PSMTXMultVec(sp10, &var_r31->unk_1C, &lbl_1_bss_670); + MTXMultVec(spC, &var_r31->unk_28, &lbl_1_bss_67C); + MTXMultVec(sp10, &var_r31->unk_1C, &lbl_1_bss_670); GXInitLightPos(&lbl_1_bss_688, lbl_1_bss_670.x, lbl_1_bss_670.y, lbl_1_bss_670.z); } else { @@ -2692,7 +2692,7 @@ void fn_1_11EE0(ModelData *var_r24, Mtx var_r21) GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); GXSetArray(GX_VA_TEX0, var_r31->unk_44, 8); if (HmfInverseMtxF3X3(var_r21, sp128) == 0) { - PSMTXIdentity(sp128); + MTXIdentity(sp128); } PSMTXReorder(sp128, &sp8[0]); if (var_r31->unk_4C) { @@ -2718,27 +2718,27 @@ void fn_1_11EE0(ModelData *var_r24, Mtx var_r21) if (!var_r29->unk_2C) { var_r28 = &sp98[0]; var_r27 = &sp38[0]; - PSVECScale(var_r27++, var_r28, var_r29->unk_28); - PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); - PSVECScale(var_r27++, var_r28, var_r29->unk_28); - PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); - PSVECScale(var_r27++, var_r28, var_r29->unk_28); - PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); - PSVECScale(var_r27++, var_r28, var_r29->unk_28); - PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++); + VECScale(var_r27++, var_r28, var_r29->unk_28); + VECAdd(var_r28++, &var_r29->unk_30, var_r30++); + VECScale(var_r27++, var_r28, var_r29->unk_28); + VECAdd(var_r28++, &var_r29->unk_30, var_r30++); + VECScale(var_r27++, var_r28, var_r29->unk_28); + VECAdd(var_r28++, &var_r29->unk_30, var_r30++); + VECScale(var_r27++, var_r28, var_r29->unk_28); + VECAdd(var_r28++, &var_r29->unk_30, var_r30++); } else { - PSVECScale(lbl_1_data_19C, &sp98[0], var_r29->unk_28); - PSVECScale(&lbl_1_data_19C[1], &sp98[1], var_r29->unk_28); - PSVECScale(&lbl_1_data_19C[2], &sp98[2], var_r29->unk_28); - PSVECScale(&lbl_1_data_19C[3], &sp98[3], var_r29->unk_28); - PSMTXRotRad(spC8, 0x5A, var_r29->unk_2C); - PSMTXConcat(sp128, spC8, spF8); - PSMTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); - PSVECAdd(&sp68[0], &var_r29->unk_30, var_r30++); - PSVECAdd(&sp68[1], &var_r29->unk_30, var_r30++); - PSVECAdd(&sp68[2], &var_r29->unk_30, var_r30++); - PSVECAdd(&sp68[3], &var_r29->unk_30, var_r30++); + VECScale(lbl_1_data_19C, &sp98[0], var_r29->unk_28); + VECScale(&lbl_1_data_19C[1], &sp98[1], var_r29->unk_28); + VECScale(&lbl_1_data_19C[2], &sp98[2], var_r29->unk_28); + VECScale(&lbl_1_data_19C[3], &sp98[3], var_r29->unk_28); + MTXRotRad(spC8, 0x5A, var_r29->unk_2C); + MTXConcat(sp128, spC8, spF8); + MTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); + VECAdd(&sp68[0], &var_r29->unk_30, var_r30++); + VECAdd(&sp68[1], &var_r29->unk_30, var_r30++); + VECAdd(&sp68[2], &var_r29->unk_30, var_r30++); + VECAdd(&sp68[3], &var_r29->unk_30, var_r30++); } var_r20 = var_r29->unk_40 & 3; var_r19 = (var_r29->unk_40 >> 2) & 3; diff --git a/src/REL/m426Dll/main.c b/src/REL/m426Dll/main.c index e91e3258..9a80a823 100644 --- a/src/REL/m426Dll/main.c +++ b/src/REL/m426Dll/main.c @@ -394,18 +394,18 @@ void fn_1_330(omObjData *object) if (!WipeStatGet()) { lbl_1_bss_54 = 1; lbl_1_bss_58 = 0; - lbl_1_bss_30 = 120; + lbl_1_bss_30 = 2 * REFRESH_RATE; } break; case 1: - if (++lbl_1_bss_58 >= 15.0f) { + if (++lbl_1_bss_58 >= REFRESH_RATE / 4.0f) { lbl_1_bss_54 = 2; lbl_1_bss_58 = 0; lbl_1_bss_38 = 1; } break; case 2: - var_f31 = 0.007246377f * lbl_1_bss_58; + var_f31 = (VERSION_NTSC ? 0.007246377f : 0.008695652f) * lbl_1_bss_58; var_f31 = sind(90.0f * var_f31); var_f31 *= var_f31; for (var_r31 = 0; var_r31 < 7; var_r31++) { @@ -418,7 +418,7 @@ void fn_1_330(omObjData *object) Center.y = sp10[4]; Center.z = sp10[5]; CZoom = sp10[6]; - if (++lbl_1_bss_58 >= 138.0f) { + if (++lbl_1_bss_58 >= (VERSION_NTSC ? 138.0f : 115.0f)) { CRot.x = lbl_1_data_4C[0][0]; CRot.y = lbl_1_data_4C[0][1]; CRot.z = lbl_1_data_4C[0][2]; @@ -431,7 +431,7 @@ void fn_1_330(omObjData *object) } break; case 3: - if (++lbl_1_bss_58 >= 30.0f) { + if (++lbl_1_bss_58 >= (REFRESH_RATE / 2.0f)) { lbl_1_bss_50 = MGSeqCreate(3, 0); lbl_1_bss_54 = 4; lbl_1_bss_58 = 0; @@ -452,9 +452,9 @@ void fn_1_330(omObjData *object) lbl_1_bss_40 = 1; lbl_1_bss_3C = 1; lbl_1_bss_54 = 5; - lbl_1_bss_58 = 1800; + lbl_1_bss_58 = 30 * REFRESH_RATE; fn_1_7328(1); - lbl_1_bss_4C = MGSeqCreate(1, lbl_1_bss_58 / 60, -1, -1); + lbl_1_bss_4C = MGSeqCreate(1, lbl_1_bss_58 / REFRESH_RATE, -1, -1); } break; case 5: @@ -463,10 +463,10 @@ void fn_1_330(omObjData *object) var_r25 = 0; } MGSeqParamSet(lbl_1_bss_4C, 1, var_r25); - if (lbl_1_bss_58 == 600) { + if (lbl_1_bss_58 == 10 * REFRESH_RATE) { lbl_1_bss_34 = 3.0f; } - else if (lbl_1_bss_58 == 1200) { + else if (lbl_1_bss_58 == 20 * REFRESH_RATE) { lbl_1_bss_34 = 2.5f; } if (--lbl_1_bss_58 < -1 || lbl_1_bss_1C[0] <= 0 || lbl_1_bss_1C[1] <= 0) { @@ -529,7 +529,7 @@ void fn_1_330(omObjData *object) } break; case 7: - if (++lbl_1_bss_58 > 210.0f) { + if (++lbl_1_bss_58 > 3.5f * REFRESH_RATE) { lbl_1_bss_50 = -1; lbl_1_bss_54 = 8; lbl_1_bss_58 = 0; @@ -946,8 +946,8 @@ void fn_1_16F8(omObjData *object) } else if (var_f27 != 0.0f) { var_f27 = 1.0f / var_f27; - object->trans.x += var_f28 * (var_f30 * var_f27); - object->trans.z += var_f28 * (var_f31 * var_f27); + object->trans.x += var_f28 * (var_f30 * var_f27) * (60.0f / REFRESH_RATE); + object->trans.z += var_f28 * (var_f31 * var_f27) * (60.0f / REFRESH_RATE); } } var_f30 = object->trans.x - var_f22; @@ -1041,16 +1041,16 @@ void fn_1_16F8(omObjData *object) break; case 6: var_r31->unk_2C++; - if (var_r31->unk_2C < 60.0f) { + if (var_r31->unk_2C < 1.0f * REFRESH_RATE) { if (lbl_1_bss_40 == 0) { - var_r31->unk_2C = 59; + var_r31->unk_2C = REFRESH_RATE - 1; } } - else if (var_r31->unk_2C == 60.0f) { + else if (var_r31->unk_2C == 1.0f * REFRESH_RATE) { var_r31->unk_28 = 7; CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_28], 0.0f, 8.0f, HU3D_MOTATTR_NONE); } - else if (var_r31->unk_2C >= 90.0f) { + else if (var_r31->unk_2C >= (VERSION_NTSC ? 90.0f : 80.0f)) { var_r31->unk_24 = 7; var_r31->unk_28 = 8; CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_28], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); @@ -1240,7 +1240,7 @@ void fn_1_2B74(Vec *arg0) var_r31->unk_2C = 0; var_r31->unk_24 = 3; var_r31->unk_AC = 32; - var_r31->unk_30 = 90; + var_r31->unk_30 = 1.5f * REFRESH_RATE; var_r31->unk_90 = var_r31->unk_94 = -1; if (!var_r29->unk_00) { var_r31->unk_9C.x = -1.0f; @@ -1370,7 +1370,7 @@ void fn_1_2F5C(omObjData *object, float *arg1, float *arg2, s32 *arg3) break; case 1: if (var_r31->unk_B0 != -1) { - if (++var_r31->unk_B4 < 120.0f) { + if (++var_r31->unk_B4 < 2.0f * REFRESH_RATE) { if (var_r31->unk_90 == var_r31->unk_B0) { var_r31->unk_B0 = -1; return; @@ -1389,12 +1389,12 @@ void fn_1_2F5C(omObjData *object, float *arg1, float *arg2, s32 *arg3) return; case 2: if (var_r31->unk_B0 != -1) { - if (++var_r31->unk_B4 < 120.0f && var_r31->unk_B0 != var_r28->unk_B0) { + if (++var_r31->unk_B4 < 2.0f * REFRESH_RATE && var_r31->unk_B0 != var_r28->unk_B0) { if (var_r31->unk_90 == var_r31->unk_B0) { *arg3 |= 256; var_r31->unk_B0 = -1; var_r31->unk_B4 = 0; - var_r31->unk_B8 = (50.0f + (frand() % 15)) - (var_r31->unk_18 * 10); + var_r31->unk_B8 = ((VERSION_NTSC ? 50.0f : 45.0f) + (frand() % 15)) - (var_r31->unk_18 * 10); var_r31->unk_BC = 0; return; } @@ -1585,7 +1585,7 @@ void fn_1_3714(omObjData *object) sp8.x = 0.0f; sp8.y = 500.0f; sp8.z = var_r31->unk_38; - var_r25 = 0.3f * (var_r31->unk_00 * 60); + var_r25 = 0.3f * (var_r31->unk_00 * REFRESH_RATE); var_r31->unk_34 = fn_1_5C6C(var_r31->unk_00, var_r25, &sp8); } lbl_1_bss_24 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M426, 1), MEMORY_DEFAULT_NUM)); @@ -1975,7 +1975,7 @@ void fn_1_5134(omObjData *object) } break; case 1: - if ((var_r31->unk_40 -= 50.0f) <= 50.0f) { + if ((var_r31->unk_40 -= (VERSION_NTSC ? 50.0f : 60.000004f)) <= 50.0f) { if (lbl_1_bss_54 <= 4) { fn_1_3654(0); fn_1_3654(1); @@ -2005,8 +2005,8 @@ void fn_1_5134(omObjData *object) } if (fabs(fn_1_75F4(var_f31, var_r31->unk_48)) < 5.0) { var_r31->unk_48 = var_f31; - if ((var_r31->unk_34 += 0.1f) > lbl_1_bss_34) { - var_r31->unk_34 = lbl_1_bss_34; + if ((var_r31->unk_34 += 0.1f) > lbl_1_bss_34 * (60.0f / REFRESH_RATE)) { + var_r31->unk_34 = lbl_1_bss_34 * (60.0f / REFRESH_RATE); } } else { @@ -2054,7 +2054,7 @@ void fn_1_5134(omObjData *object) if (lbl_1_bss_1C[1] < 0) { lbl_1_bss_1C[1] = 0; } - lbl_1_bss_30 = 60; + lbl_1_bss_30 = REFRESH_RATE; lbl_1_bss_28 = 1.0f; var_r31->unk_30 = 0; var_r31->unk_28 = 4; @@ -2476,7 +2476,7 @@ void fn_1_6704(omObjData *object) if (var_r31->unk_04) { Hu3DModelPosSet(var_r31->unk_00, var_r31->unk_0C, var_r31->unk_10, var_r31->unk_14); Hu3DModelRotSet(var_r31->unk_00, CRot.x, CRot.y, CRot.z); - if (++var_r31->unk_08 >= 120.0f) { + if (++var_r31->unk_08 >= 2.0f * REFRESH_RATE) { Hu3DModelAttrSet(var_r31->unk_00, HU3D_ATTR_DISPOFF); var_r31->unk_04 = 0; var_r31->unk_08 = 0; @@ -3043,7 +3043,7 @@ void fn_1_80DC(ModelData *arg0, Mtx arg1) GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); GXSetArray(GX_VA_TEX0, var_r31->unk_44, 8); if (!HmfInverseMtxF3X3(arg1, sp128)) { - PSMTXIdentity(sp128); + MTXIdentity(sp128); } PSMTXReorder(sp128, sp8); if (var_r31->unk_4C) { @@ -3083,9 +3083,9 @@ void fn_1_80DC(ModelData *arg0, Mtx arg1) VECScale(&lbl_1_data_22C[1], &sp98[1], var_r29->unk_28); VECScale(&lbl_1_data_22C[2], &sp98[2], var_r29->unk_28); VECScale(&lbl_1_data_22C[3], &sp98[3], var_r29->unk_28); - PSMTXRotRad(spC8, 90, var_r29->unk_2C); - PSMTXConcat(sp128, spC8, &spF8[0]); - PSMTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); + MTXRotRad(spC8, 90, var_r29->unk_2C); + MTXConcat(sp128, spC8, &spF8[0]); + MTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); VECAdd(&sp68[0], &var_r29->unk_30, var_r30++); VECAdd(&sp68[1], &var_r29->unk_30, var_r30++); VECAdd(&sp68[2], &var_r29->unk_30, var_r30++); @@ -3222,7 +3222,7 @@ void fn_1_8E48(ModelData *arg0, Mtx arg1) GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); - PSMTXIdentity(sp50); + MTXIdentity(sp50); GXLoadPosMtxImm(sp50, 0); GXSetZMode(GX_FALSE, GX_ALWAYS, GX_TRUE); GXSetNumChans(1); diff --git a/src/REL/m428Dll/main.c b/src/REL/m428Dll/main.c index cd2f3688..1ee62c82 100644 --- a/src/REL/m428Dll/main.c +++ b/src/REL/m428Dll/main.c @@ -617,7 +617,7 @@ void fn_1_261C(omObjData *object) } } -u32 fn_1_26E0(void) +s32 fn_1_26E0(void) { return lbl_1_bss_7C; } @@ -786,7 +786,7 @@ void fn_1_2E2C(s32 var_r26) GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); GXSetNumChans(0); - PSMTXIdentity(sp8C); + MTXIdentity(sp8C); GXLoadPosMtxImm(sp8C, 0); GXSetZMode(0, GX_ALWAYS, GX_TRUE); GXSetNumChans(1); @@ -820,7 +820,7 @@ void fn_1_2E2C(s32 var_r26) var_r25 = Hu3DShadowData.unk_02 * Hu3DShadowData.unk_02; } C_MTXLookAt(Hu3DCameraMtx, &Hu3DShadowData.unk_14, &Hu3DShadowData.unk_2C, &Hu3DShadowData.unk_20); - PSMTXCopy(Hu3DCameraMtx, Hu3DShadowData.unk_38); + MTXCopy(Hu3DCameraMtx, Hu3DShadowData.unk_38); shadowModelDrawF = 1; GXInvalidateTexAll(); GXSetFog(GX_FOG_NONE, 0.0f, 0.0f, 0.0f, 0.0f, BGColor); @@ -870,11 +870,11 @@ void fn_1_2E2C(s32 var_r26) Hu3DModelShadowSet(var_r29->unk_00[var_r30]); Hu3DShadowData.unk_00 = (s8)(var_r29->unk_20[var_r30] * var_r24); mtxRot(sp5C, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); - PSMTXScale(spBC, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); - PSMTXConcat(sp5C, spBC, spBC); + MTXScale(spBC, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + MTXConcat(sp5C, spBC, spBC); mtxTransCat(spBC, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); - PSMTXConcat(Hu3DCameraMtx, spBC, sp8C); - PSMTXConcat(sp8C, var_r31->unk_F0, sp8C); + MTXConcat(Hu3DCameraMtx, spBC, sp8C); + MTXConcat(sp8C, var_r31->unk_F0, sp8C); Hu3DDraw(var_r31, sp8C, &var_r31->scale); Hu3DModelShadowReset(var_r29->unk_00[var_r30]); } @@ -908,7 +908,7 @@ void fn_1_2E2C(s32 var_r26) GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); GXSetNumChans(0); - PSMTXIdentity(sp8C); + MTXIdentity(sp8C); GXLoadPosMtxImm(sp8C, 0); GXSetZMode(0, GX_ALWAYS, 1); GXSetNumChans(1); @@ -966,7 +966,7 @@ void fn_1_3B64(void) GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); GXSetNumTexGens(1); GXSetNumTevStages(1); - PSMTXIdentity(sp34); + MTXIdentity(sp34); GXLoadPosMtxImm(sp34, 0); GXSetZMode(0, GX_LEQUAL, GX_FALSE); GXBegin(GX_QUADS, GX_VTXFMT0, 4); diff --git a/src/REL/m428Dll/map.c b/src/REL/m428Dll/map.c index cadec1d3..ce4c7764 100644 --- a/src/REL/m428Dll/map.c +++ b/src/REL/m428Dll/map.c @@ -402,8 +402,8 @@ u8 fn_1_5370(M433DllUnkStruct2 *arg0, Vec *arg1) for (var_r27 = 0; var_r27 < arg0->unk_08; var_r27++, var_r31++) { sp8 = *arg1; sp8.y = 0.0f; - PSVECSubtract(&sp8, &var_r31->unk_00, &sp20); - var_f30 = PSVECMag(&sp20); + VECSubtract(&sp8, &var_r31->unk_00, &sp20); + var_f30 = VECMag(&sp20); if (!(var_f30 > (400.0f + var_r31->unk_20)) && (var_r31->unk_2C != 0.0f)) { var_r24 = 0; for (var_r28 = 0; var_r28 < 3; var_r28++) { @@ -413,8 +413,8 @@ u8 fn_1_5370(M433DllUnkStruct2 *arg0, Vec *arg1) } var_r23 = &arg0->unk_00[var_r31->unk_0C[var_r28]]; var_r25 = &arg0->unk_00[var_r31->unk_0C[var_r26]]; - PSVECSubtract(var_r25, var_r23, &sp20); - PSVECSubtract(arg1, var_r25, &sp14); + VECSubtract(var_r25, var_r23, &sp20); + VECSubtract(arg1, var_r25, &sp14); var_f31 = (sp20.x * sp14.y) - (sp20.y * sp14.x); if ((var_f31 * var_r31->unk_2C) < 0.0) { var_r24 = 1; @@ -484,15 +484,15 @@ void fn_1_5684(HsfData *arg0, HsfObject *arg1) var_r31->unk_00.z /= 3.0f; var_r31->unk_20 = 0.0f; for (var_r28 = 0; var_r28 < 3; var_r28++) { - PSVECSubtract(&((Vec *)var_r29->data)[var_r30->indices[var_r28][0]], &var_r31->unk_00, &sp18); - var_f31 = PSVECMag(&sp18); + VECSubtract(&((Vec *)var_r29->data)[var_r30->indices[var_r28][0]], &var_r31->unk_00, &sp18); + var_f31 = VECMag(&sp18); if (var_f31 > var_r31->unk_20) { var_r31->unk_20 = var_f31; } } var_r31->unk_00.y = 0.0f; - PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &sp18); - PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[2][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &spC); + VECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &sp18); + VECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[2][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &spC); var_r31->unk_24 = (sp18.y * spC.z) - (sp18.z * spC.y); var_r31->unk_28 = (sp18.z * spC.x) - (sp18.x * spC.z); var_r31->unk_2C = (sp18.x * spC.y) - (sp18.y * spC.x); @@ -514,14 +514,14 @@ void fn_1_5684(HsfData *arg0, HsfObject *arg1) var_r31->unk_00.z *= 0.25f; var_r31->unk_20 = 0.0f; for (var_r28 = 0; var_r28 < 4; var_r28++) { - PSVECSubtract(&((Vec *)var_r29->data)[var_r30->indices[var_r28][0]], &var_r31->unk_00, &sp18); - var_f31 = PSVECMag(&sp18); + VECSubtract(&((Vec *)var_r29->data)[var_r30->indices[var_r28][0]], &var_r31->unk_00, &sp18); + var_f31 = VECMag(&sp18); if (var_f31 > var_r31->unk_20) { var_r31->unk_20 = var_f31; } } - PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &sp18); - PSVECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[2][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &spC); + VECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[0][0]], &sp18); + VECSubtract(&((Vec *)var_r29->data)[var_r30->strip.indices[2][0]], &((Vec *)var_r29->data)[var_r30->strip.indices[1][0]], &spC); var_r31->unk_24 = (sp18.y * spC.z) - (sp18.z * spC.y); var_r31->unk_28 = (sp18.z * spC.x) - (sp18.x * spC.z); var_r31->unk_2C = (sp18.x * spC.y) - (sp18.y * spC.x); @@ -719,12 +719,12 @@ void fn_1_6280(ModelData *arg1, ParticleData *particle, Mtx matrix) } break; } - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); if (particle->unk_04.x != 0.0f) { sp8 = particle->unk_04; sp8.x *= var_r31->unk2C / 28.0f; sp8.y = (((u8)var_r31->unk2C & 1) != 0 ? 1.0f : -1.0f) * (sp8.x * (0.05f + (s32)(0.2f * (fn_1_7500() / 65536.0f)))); - PSVECAdd(&var_r31->unk34, &sp8, &var_r31->unk34); + VECAdd(&var_r31->unk34, &sp8, &var_r31->unk34); } } DCFlushRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); @@ -810,7 +810,7 @@ void fn_1_7430(void) void fn_1_74B4(s16 arg0, Mtx arg1) { ModelData *var_r31 = &Hu3DData[arg0]; - PSMTXCopy(arg1, var_r31->unk_F0); + MTXCopy(arg1, var_r31->unk_F0); } u32 lbl_1_data_14C = 0x41C64E6D; @@ -884,18 +884,18 @@ void fn_1_77F8(Mtx arg0, float arg8, float arg9, float argA) Mtx sp8; if (argA != 0.0f) { - PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + MTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); } else { - PSMTXIdentity(arg0); + MTXIdentity(arg0); } if (arg8 != 0.0f) { - PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); - PSMTXConcat(sp38, arg0, arg0); + MTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + MTXConcat(sp38, arg0, arg0); } if (arg9 != 0.0f) { - PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); - PSMTXConcat(sp8, arg0, arg0); + MTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + MTXConcat(sp8, arg0, arg0); } } @@ -1137,8 +1137,8 @@ void fn_1_939C(float *arg0, float (*arg1)[3], float (*arg2)[3], s32 var_r28) arg0[0] = 0.0f; for (var_r30 = 1; var_r30 < var_r28; var_r30++) { - PSVECSubtract((Vec *)&arg1[var_r30], (Vec *)&arg1[var_r30 - 1], &sp8); - arg0[var_r30] = arg0[var_r30 - 1] + PSVECMag(&sp8); + VECSubtract((Vec *)&arg1[var_r30], (Vec *)&arg1[var_r30 - 1], &sp8); + arg0[var_r30] = arg0[var_r30 - 1] + VECMag(&sp8); } for (var_r27 = 0; var_r27 < 3; var_r27++) { for (var_r30 = 0; var_r30 < var_r28; var_r30++) { diff --git a/src/REL/m428Dll/player.c b/src/REL/m428Dll/player.c new file mode 100644 index 00000000..4964e8a5 --- /dev/null +++ b/src/REL/m428Dll/player.c @@ -0,0 +1,3401 @@ +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXVert.h" +#include "dolphin/mtx/GeoTypes.h" +#include "ext_math.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfload.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/init.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m428Dll.h" + +#ifndef __MWERKS__ +#include "game/esprite.h" +#include "game/frand.h" +#endif + +typedef struct M428DllBss13CStruct { + /* 0x00 */ float unk_00; + /* 0x04 */ char pad_04[0x3C]; /* maybe part of unk_00[0x10]? */ +} M428DllBss13CStruct; /* size = 0x40 */ + +typedef struct M428DllData4B0Struct { + Vec unk_00; + float unk_0C; +} M428DllData4B0Struct; /* size = 0x10 */ + +typedef struct M428DllData500Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; +} M428DllData500Struct; /* size = 0x08 */ + +typedef struct M428DllPlayerWork { + omObjData *unk_00[2]; // M428DllPlayerWork2 + s16 unk_08[2]; + s16 unk_0C; + s16 unk_0E; + s16 unk_10; + s16 unk_12; + s32 unk_14; + s32 unk_18; + float unk_1C; + s32 unk_20; + s32 unk_24; + s32 unk_28; + float unk_2C; + float unk_30; + float unk_34; + s32 unk_38; + Vec unk_3C; + float unk_48; + float unk_4C[2]; + float unk_54[2]; + float unk_5C; + float unk_60; + Vec unk_64[2]; + Vec unk_7C; + Vec unk_88; + Vec unk_94; + Vec unk_A0; + Vec unk_AC; + s32 unk_B8; + s32 unk_BC; + s32 unk_C0; + s32 unk_C4; + float unk_C8; +} M428DllPlayerWork; /* size = 0xCC */ + +typedef struct M428DllPlayerWork2 { + s16 unk_00; + s16 unk_02; + s16 unk_04; + s16 unk_06; + s16 unk_08; + s16 unk_0A; + s16 unk_0C; + s16 unk_0E; + s16 unk_10; + float unk_14; + float unk_18; + s16 unk_1C; + s16 unk_1E; + s16 unk_20; + s16 unk_22; + s16 unk_24; + s16 unk_26; + float unk_28; + float unk_2C; + s32 unk_30; + s32 unk_34; + s32 unk_38; + Vec unk_3C; + Vec unk_48; + Vec unk_54; + Mtx unk_60; + Vec unk_90; + char unk_9C[0x100]; + s32 unk_19C; + s32 unk_1A0; + s32 unk_1A4; + s32 unk_1A8; + float unk_1AC; + s32 unk_1B0; + s32 unk_1B4; + Vec unk_1B8; +} M428DllPlayerWork2; /* size = 0x1C4 */ + +typedef struct M428DllPlayerWork3 { + s32 unk_00; + s32 unk_04[2]; + float unk_0C[2][2]; + s32 unk_1C[2]; + float unk_24[2][2]; + AnimData *unk_34; + AnimData *unk_38; + s32 unk_3C[2][2]; + s32 unk_4C[2][2]; +} M428DllPlayerWork3; /* size = 0x5C */ + +typedef struct M428DllPlayerUnkStruct { + s16 unk_00; + s16 unk_02; + s32 unk_04; + Vec unk_08[4]; +} M428DllPlayerUnkStruct; /* size = 0x38 */ + +typedef struct M428DllPlayerUnk120Struct { + s16 unk_00; + s16 unk_02; + float unk_04; + float unk_08; + s32 unk_0C; + s32 unk_10; + float unk_14; + float unk_18; + s32 unk_1C; + Vec unk_20; + Vec unk_2C; + Vec unk_38; + s32 unk_44; + float unk_48; + float unk_4C; + float unk_50; + M428DllPlayerUnkStruct *unk_54; +} M428DllPlayerUnk120Struct; /* size = 0x58 */ + +typedef struct M428DllPlayerUnkStruct2 { + s16 unk_00; + s16 unk_02; + float unk_04; + float unk_08; + float unk_0C; + char unk10[8]; + float unk_18; + char unk1C[0xC]; + float unk_28; + float unk_2C; + float unk_30; + float unk_34; + Vec unk_38; + GXColor unk_44; + s32 unk_48; +} M428DllPlayerUnkStruct2; /* size = 0x4C */ + +typedef void (*M428DllPlayerHook)(ModelData *model, struct M428DllPlayerUnk120Struct2 *arg1, Mtx matrix); + +typedef struct M428DllPlayerUnk120Struct2 { + s16 unk_00; + s16 unk_02; + char unk04[0x1C]; + u8 unk_20; + u8 unk_21; + u8 unk_22; + u8 unk_23; + char unk24[2]; + s16 unk_26; + s32 unk_28; + s32 unk_2C; + u32 unk_30; + u32 unk_34; + AnimData *unk_38; + M428DllPlayerUnkStruct2 *unk_3C; + Vec *unk_40; + Vec2f *unk_44; + void *unk_48; + M428DllPlayerHook unk_4C; + ModelData *unk_50; +} M428DllPlayerUnk120Struct2; /* size = 0x54 */ + +typedef struct M428DllPlayerWork4 { + s32 unk_00[2]; + s32 unk_08[2]; + AnimData *unk_10; +} M428DllPlayerWork4; /* size = 0x14 */ + +void fn_1_102A8(ModelData *modle, Mtx matrix); +void fn_1_10530(s32 arg0, Vec *arg1, Vec *arg2); +void fn_1_10590(s32 arg0, s32 arg1, s32 arg2, Vec *arg3); +void fn_1_105E8(s32 arg0, float arg8, float arg9); +s32 fn_1_10788(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3); +void fn_1_10A88(void); +void fn_1_11014(omObjData *object); +void fn_1_115F8(void); +void fn_1_118A8(s32 arg0, float arg8); +void fn_1_11930(void); +void fn_1_11A60(omObjData *object); +void fn_1_11C20(void); +s32 fn_1_11DE4(s32 arg0, Vec arg1, Vec arg2, float arg8, float arg9, float argA, float argB, GXColor arg3); +float fn_1_1236C(float arg8, float arg9, float argA); +void fn_1_129B4(float arg8, Vec *arg0, Vec *arg1, Vec *arg2); +void fn_1_12AA4(float arg8, Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3); +s16 fn_1_12CD4(AnimData *arg0, s16 arg1); +void fn_1_134C0(ModelData *model, Mtx matrix); +void fn_1_13D9C(s16 arg0, s16 arg1, s32 arg2); +void fn_1_13E14(s16 arg0, s16 arg1, Vec arg2); +void fn_1_13EC8(s16 arg0, s16 arg1, float arg8); +s32 fn_1_13F54(s16 arg0, char *arg1, Mtx arg2, s32 arg3); +void fn_1_14088(HsfObject *arg0, Mtx arg1, char *arg2, Mtx arg3); +void fn_1_A108(omObjData *object); +void fn_1_A4C8(omObjData *object); +void fn_1_B3D4(omObjData *object); +void fn_1_B43C(omObjData *object); +void fn_1_BBD0(omObjData *object); +void fn_1_E5F4(omObjData *object); +void fn_1_E600(omObjData *object); +s32 fn_1_F288(Vec *arg0, Vec *arg1, float arg8); +s32 fn_1_F538(Vec *arg0, Vec *arg1, Vec *arg2, float arg8); +s32 fn_1_FB8C(Vec *arg0, Vec *arg1, float arg8, s32 arg2, s32 arg3); + +extern u32 GlobalCounter; + +Vec lbl_1_data_150[4] = { + { -140.0f, -400.0f, 0.0f }, + { 140.0f, -300.0f, 0.0f }, + { -140.0f, -300.0f, 0.0f }, + { 140.0f, -400.0f, 0.0f }, +}; +Vec lbl_1_data_180[4] = { + { -100.0f, -10.0f, 150.0f }, + { 100.0f, -10.0f, 150.0f }, + { -100.0f, -10.0f, 150.0f }, + { 100.0f, -10.0f, 150.0f }, +}; +Vec lbl_1_data_1B0[4][0xE] = { + { + { -11.0f, 214.0f, 39.0f }, + { -11.0f, 400.0f, 46.0f }, + { -11.0f, 668.0f, 56.0f }, + { -11.0f, 931.0f, 42.0f }, + { 7.0f, 1131.0f, 65.0f }, + { -452.0f, 1449.0f, 57.0f }, + { -478.0f, 1763.0f, 48.0f }, + { -452.0f, 2001.0f, 44.0f }, + { -311.0f, 2120.0f, 55.0f }, + { -85.0f, 2442.0f, 42.0f }, + { -32.0f, 2876.0f, 43.0f }, + { -12.0f, 3300.0f, 48.0f }, + { -42.0f, 4500.0f, 48.0f }, + { -42.0f, 4500.0f, 48.0f }, + }, + { + { 16.0f, 203.0f, 40.0f }, + { 0.0f, 456.0f, 50.0f }, + { 15.0f, 650.0f, 58.0f }, + { -268.0f, 935.0f, 51.0f }, + { -463.0f, 1205.0f, 66.0f }, + { -663.0f, 1313.0f, 69.0f }, + { -460.0f, 1600.0f, 59.0f }, + { -333.0f, 1946.0f, 46.0f }, + { -82.0f, 2188.0f, 44.0f }, + { -76.0f, 2374.0f, 40.0f }, + { -108.0f, 2620.0f, 43.0f }, + { -95.0f, 2990.0f, 46.0f }, + { -270.0f, 3445.0f, 46.0f }, + { -42.0f, 4500.0f, 48.0f }, + }, + { + { 26.0f, 354.0f, 46.0f }, + { 29.0f, 604.0f, 57.0f }, + { 30.0f, 877.0f, 39.0f }, + { 51.0f, 1086.0f, 64.0f }, + { 360.0f, 1196.0f, 46.0f }, + { 398.0f, 1416.0f, 39.0f }, + { 468.0f, 1658.0f, 43.0f }, + { 468.0f, 1944.0f, 53.0f }, + { 135.0f, 2174.0f, 47.0f }, + { 107.0f, 2430.0f, 61.0f }, + { 98.0f, 2698.0f, 43.0f }, + { 90.0f, 2995.0f, 50.0f }, + { 0.0f, 4500.0f, 48.0f }, + { 0.0f, 4500.0f, 48.0f }, + }, + { + { -24.0f, 313.0f, 41.0f }, + { -11.0f, 529.0f, 51.0f }, + { -33.0f, 799.0f, 44.0f }, + { 7.0f, 990.0f, 53.0f }, + { 135.0f, 1196.0f, 57.0f }, + { 393.0f, 1379.0f, 39.0f }, + { 429.0f, 1457.0f, 42.0f }, + { 420.0f, 1984.0f, 54.0f }, + { 190.0f, 2239.0f, 53.0f }, + { 70.0f, 2532.0f, 55.0f }, + { 75.0f, 2933.0f, 44.0f }, + { 75.0f, 4500.0f, 48.0f }, + { 75.0f, 4500.0f, 48.0f }, + { 75.0f, 4500.0f, 48.0f }, + }, +}; +Vec lbl_1_data_450[4] = { + { -30.000002f, -10.0f, -90.0f }, + { 20.0f, -10.0f, -70.0f }, + { 0.0f, -10.0f, 0.0f }, + { 0.0f, -10.0f, 0.0f }, +}; +Vec lbl_1_data_480[4] = { + { 15.0f, 150.0f, 0.0f }, + { 15.0f, 210.0f, 0.0f }, + { 0.0f, 180.0f, 0.0f }, + { 0.0f, 180.0f, 0.0f }, +}; +M428DllData4B0Struct lbl_1_data_4B0[5] = { + { { -400.0f, 700.0f, 0.0f }, 200.0f }, + { { 400.0f, 900.0f, 0.0f }, 200.0f }, + { { 0.0f, 1800.0f, 0.0f }, 220.0f }, + { { -600.0f, 3100.0f, 0.0f }, 300.0f }, + { { 600.0f, 2880.0f, 0.0f }, 300.0f }, +}; +M428DllData500Struct lbl_1_data_500[0xC] = { + { 0x5F0000, 0 }, + { 0x5F0002, 0 }, + { 0x5F0003, 0 }, + { -1, 0 }, + { -1, 1 }, + { -1, 2 }, + { -1, 3 }, + { 0x5F0006, 0 }, + { 0x5F0014, 0 }, + { 0x5F005B, 0 }, + { 0x5F0017, 0 }, + { 0x5F0018, 0 }, +}; +s32 lbl_1_data_560[4][8] = { + { + DATA_MAKE_NUM(DATADIR_M428, 0x11), + DATA_MAKE_NUM(DATADIR_M428, 0x12), + DATA_MAKE_NUM(DATADIR_M428, 0x13), + DATA_MAKE_NUM(DATADIR_M428, 0x14), + DATA_MAKE_NUM(DATADIR_M428, 0x15), + DATA_MAKE_NUM(DATADIR_M428, 0x16), + DATA_MAKE_NUM(DATADIR_M428, 0x17), + DATA_MAKE_NUM(DATADIR_M428, 0x18), + }, + { + DATA_MAKE_NUM(DATADIR_M428, 0x19), + DATA_MAKE_NUM(DATADIR_M428, 0x1A), + DATA_MAKE_NUM(DATADIR_M428, 0x1B), + DATA_MAKE_NUM(DATADIR_M428, 0x1C), + DATA_MAKE_NUM(DATADIR_M428, 0x1D), + DATA_MAKE_NUM(DATADIR_M428, 0x1E), + DATA_MAKE_NUM(DATADIR_M428, 0x1F), + DATA_MAKE_NUM(DATADIR_M428, 0x20), + }, + { + DATA_MAKE_NUM(DATADIR_M428, 0x21), + DATA_MAKE_NUM(DATADIR_M428, 0x22), + DATA_MAKE_NUM(DATADIR_M428, 0x23), + DATA_MAKE_NUM(DATADIR_M428, 0x24), + DATA_MAKE_NUM(DATADIR_M428, 0x25), + DATA_MAKE_NUM(DATADIR_M428, 0x26), + DATA_MAKE_NUM(DATADIR_M428, 0x27), + DATA_MAKE_NUM(DATADIR_M428, 0x28), + }, + { + DATA_MAKE_NUM(DATADIR_M428, 0x29), + DATA_MAKE_NUM(DATADIR_M428, 0x2A), + DATA_MAKE_NUM(DATADIR_M428, 0x2B), + DATA_MAKE_NUM(DATADIR_M428, 0x2C), + DATA_MAKE_NUM(DATADIR_M428, 0x2D), + DATA_MAKE_NUM(DATADIR_M428, 0x2E), + DATA_MAKE_NUM(DATADIR_M428, 0x2F), + DATA_MAKE_NUM(DATADIR_M428, 0x30), + }, +}; +Vec lbl_1_data_5E0[8] = { + { 0.0f, -10.0f, -20.0f }, + { 0.0f, -10.0f, -20.0f }, + { 0.0f, -30.000002f, -20.0f }, + { 0.0f, -10.0f, -20.0f }, + { 0.0f, -10.0f, -20.0f }, + { 0.0f, 10.0f, -10.0f }, + { 0.0f, -30.000002f, -20.0f }, + { 0.0f, -10.0f, -20.0f }, +}; +s32 lbl_1_data_640[4] = { 0x80000000, 0x40000000, 0x20000000, 0x10000000 }; +GXColor lbl_1_data_650 = { 0xFF, 0xFF, 0xFF, 0x20 }; +GXColor lbl_1_data_654 = { 0xFF, 0xFF, 0xFF, 0x40 }; + +Process *lbl_1_bss_2D0; +// M428DllPlayerWork +omObjData *lbl_1_bss_2C8[2]; +omObjData *lbl_1_bss_2B8[4]; +// M428DllPlayerWork3 +omObjData *lbl_1_bss_2B4; +// M428DllPlayerWork4 +omObjData *lbl_1_bss_2B0; +M428DllPlayerWork *lbl_1_bss_2AC; +M428DllPlayerWork2 *lbl_1_bss_2A8; +s32 lbl_1_bss_2A4; +s32 lbl_1_bss_29C[2]; +Mtx lbl_1_bss_23C[2]; +M428DllBss13CStruct lbl_1_bss_1BC[2]; +M428DllBss13CStruct lbl_1_bss_13C[2]; +s32 lbl_1_bss_138; +s32 lbl_1_bss_134; +s32 lbl_1_bss_130; + +omObjData *fn_1_9F5C(Process *process) +{ + s32 var_r31; + + lbl_1_bss_2D0 = process; + lbl_1_bss_2A4 = 0; + lbl_1_bss_2AC = HuMemDirectMallocNum(HEAP_SYSTEM, 2 * sizeof(M428DllPlayerWork), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_2AC, 0, 2 * sizeof(M428DllPlayerWork)); + lbl_1_bss_2A8 = HuMemDirectMallocNum(HEAP_SYSTEM, 4 * sizeof(M428DllPlayerWork2), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_2A8, 0, 4 * sizeof(M428DllPlayerWork2)); + for (var_r31 = 0; var_r31 < 2; var_r31++) { + lbl_1_bss_2C8[var_r31] = omAddObjEx(process, 0x40, 1, 0, -1, fn_1_A108); + lbl_1_bss_2C8[var_r31]->work[0] = var_r31; + } + fn_1_10A88(); + fn_1_11798(0); + fn_1_11930(); + lbl_1_bss_29C[0] = lbl_1_bss_29C[1] = 0; + return lbl_1_bss_2C8[var_r31]; +} + +void fn_1_A0B0(void) +{ + s32 var_r31; + + fn_1_115F8(); + fn_1_11C20(); + for (var_r31 = 0; var_r31 < 2; var_r31++) { + fn_1_B3D4(lbl_1_bss_2C8[var_r31]); + } +} + +void fn_1_A108(omObjData *object) +{ + M428DllPlayerWork *work; + s32 var_r30; + s32 var_r28; + s32 var_r27; + + var_r28 = object->work[0]; + work = &lbl_1_bss_2AC[var_r28]; + object->data = work; + work->unk_0C = var_r28; + work->unk_0E = 0; + work->unk_10 = 0; + work->unk_12 = (u8)frand() % 4; + work->unk_14 = 0; + work->unk_18 = 0; + work->unk_1C = 0.0f; + work->unk_20 = 0; + work->unk_24 = 0; + work->unk_28 = 0; + work->unk_2C = 0.0f; + work->unk_30 = 0.0f; + work->unk_34 = 0.0f; + work->unk_B8 = 0; + work->unk_BC = -1; + work->unk_C0 = work->unk_C4 = 0; + work->unk_C8 = 0.0f; + work->unk_38 = -1; + work->unk_4C[0] = work->unk_4C[1] = 0.0f; + work->unk_48 = 400.0f; + work->unk_54[0] = work->unk_5C = 200.0f; + work->unk_54[1] = work->unk_60 = 200.0f; + work->unk_64[0].x = 0.5f * (lbl_1_data_150[0].x + lbl_1_data_150[1].x); + work->unk_64[0].y = 0.5f * (lbl_1_data_150[0].y + lbl_1_data_150[1].y); + work->unk_64[0].z = 0.5f * (lbl_1_data_150[0].z + lbl_1_data_150[1].z); + work->unk_64[1] = work->unk_64[0]; + work->unk_7C = work->unk_64[0]; + work->unk_88 = work->unk_64[1]; + work->unk_94.x = work->unk_94.y = work->unk_94.z = 0.0f; + work->unk_A0.x = work->unk_A0.y = work->unk_A0.z = 0.0f; + work->unk_AC.x = work->unk_AC.y = work->unk_AC.z = 0.0f; + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r27 = lbl_1_bss_50[var_r30 + (var_r28 * 2)]; + work->unk_08[var_r30] = var_r27; + work->unk_00[var_r30] = lbl_1_bss_2B8[var_r27] = omAddObjEx(lbl_1_bss_2D0, 0x41, 2, 0xC, -1, fn_1_B43C); + work->unk_00[var_r30]->data = NULL; + work->unk_00[var_r30]->work[0] = var_r27; + work->unk_00[var_r30]->work[1] = work->unk_0C; + work->unk_00[var_r30]->work[2] = var_r30; + } + object->model[0] = fn_1_FB8C(&lbl_1_data_150[0], &lbl_1_data_150[1], 400.0f, 0x30, work->unk_0C); + if (work->unk_0C == 0) { + Hu3DModelCameraSet(object->model[0], 1); + } + else { + Hu3DModelCameraSet(object->model[0], 2); + } + object->func = fn_1_A4C8; +} + +void fn_1_A4C8(omObjData *object) +{ + Vec sp50; + Vec sp44; + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + M428DllPlayerWork *var_r31; + M428DllPlayerWork2 *var_r30; + M428DllPlayerWork2 *var_r29; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + s32 var_r22; + s32 var_r21; + + var_r22 = 0; + var_r24 = 0; + var_r23 = 0; + var_r31 = object->data; + var_r30 = var_r31->unk_00[0]->data; + var_r29 = var_r31->unk_00[1]->data; + if (!var_r30 || !var_r29) { + return; + } + if ((fn_1_26E0() < 7) || (lbl_1_bss_2A4 == 0)) { + sp50.x = var_r30->unk_90.x; + sp50.y = var_r30->unk_90.y; + sp50.z = var_r30->unk_90.z; + sp44.x = var_r29->unk_90.x; + sp44.y = var_r29->unk_90.y; + sp44.z = var_r29->unk_90.z; + VECAdd(&sp50, &sp44, &sp2C); + VECScale(&sp2C, &sp2C, 0.5f); + var_r21 = fn_1_10788(object->model[0], &sp50, &sp44, &sp38); + if (var_r21 != -1) { + if (var_r31->unk_38 != var_r21) { + var_r31->unk_38 = var_r21; + var_r31->unk_3C = sp38; + var_r23 = 1; + } + else { + var_r23 = 0; + } + var_r31->unk_64[1] = var_r31->unk_3C; + var_r31->unk_64[0] = var_r31->unk_64[1]; + var_f31 = var_r31->unk_4C[0] + var_r31->unk_4C[1]; + if (var_f31 >= 400.0f) { + if (var_r23 != 0) { + var_r31->unk_48 = var_f31; + } + else { + var_r31->unk_48 + (400.0f - var_r31->unk_48) * 0.01f; // bug + (void)var_r22; + } + var_f31 = 1.0f / var_f31; + var_r31->unk_54[0] = var_r31->unk_48 * (var_r31->unk_4C[0] * var_f31); + var_r31->unk_54[1] = var_r31->unk_48 * (var_r31->unk_4C[1] * var_f31); + } + else { + var_f31 = 1.0f / var_f31; + var_r31->unk_54[0] = 400.0f * (var_r31->unk_4C[0] * var_f31); + var_r31->unk_54[1] = 400.0f * (var_r31->unk_4C[1] * var_f31); + var_r31->unk_48 = 400.0f; + } + var_f31 = var_r31->unk_54[0] + var_r31->unk_54[1]; + var_r26 = 48.0f * (var_r31->unk_54[0] / var_f31); + if (var_r26 < 1) { + var_r26 = 1; + } + else if (var_r26 > 0x2E) { + var_r26 = 0x2E; + } + fn_1_10590(object->model[0], 1, var_r26, &var_r31->unk_3C); + var_f31 = (var_r31->unk_4C[0] + var_r31->unk_4C[1]) / var_r31->unk_48; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + fn_1_105E8(object->model[0], 1.0f - var_f31, 1.0f - var_f31); + } + else { + var_r31->unk_38 = -1; + fn_1_10590(object->model[0], 0, 0x18, &var_r31->unk_3C); + var_f31 = (var_r31->unk_4C[0] + var_r31->unk_4C[1]) / 400.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + fn_1_105E8(object->model[0], 1.0f - var_f31, 1.0f - var_f31); + var_r31->unk_48 = 400.0f; + var_r31->unk_64[1] = sp2C; + var_r31->unk_64[0] = var_r31->unk_64[1]; + var_r31->unk_54[0] = 200.0f; + var_r31->unk_54[1] = 200.0f; + } + var_r31->unk_54[0] = var_r31->unk_5C + (0.01f * (var_r31->unk_54[0] - var_r31->unk_5C)); + var_r31->unk_54[1] = var_r31->unk_60 + (0.01f * (var_r31->unk_54[1] - var_r31->unk_60)); + fn_1_129B4(0.1f, &var_r31->unk_64[2], &var_r31->unk_64[0], &var_r31->unk_64[0]); + fn_1_129B4(0.1f, &var_r31->unk_88, &var_r31->unk_64[1], &var_r31->unk_64[1]); + var_r31->unk_5C = var_r31->unk_54[0]; + var_r31->unk_60 = var_r31->unk_54[1]; + var_r31->unk_7C = var_r31->unk_64[0]; + var_r31->unk_88 = var_r31->unk_64[1]; + if (var_r31->unk_38 != -1) { + var_r31->unk_94 = var_r31->unk_64[0]; + var_r31->unk_A0 = var_r31->unk_64[1]; + } + else if (var_r30->unk_20 == 4) { + var_r31->unk_94 = var_r29->unk_90; + var_r31->unk_A0 = var_r30->unk_90; + } + else if (var_r29->unk_20 == 4) { + var_r31->unk_94 = var_r30->unk_90; + var_r31->unk_A0 = var_r29->unk_90; + } + else { + var_r31->unk_94 = var_r31->unk_64[0]; + var_r31->unk_A0 = var_r31->unk_64[1]; + } + if (lbl_1_bss_29C[var_r31->unk_0C] == 5) { + var_r24 = 1; + } + if ((fn_1_26E0() != 4) || (var_r31->unk_18 != 0)) { + var_r24 = 0; + } + if (var_r24 != 0) { + var_r27 = -1; + if ((var_r30->unk_20 == 2) && (var_r29->unk_20 == 3)) { + var_r27 = 0; + } + else if ((var_r30->unk_20 == 3) && (var_r29->unk_20 == 2)) { + var_r27 = 1; + } + else if ((var_r30->unk_20 == 2) && (var_r29->unk_20 == 2)) { + if (sp50.y > sp44.y) { + var_r27 = 0; + } + else { + var_r27 = 1; + } + } + if (var_r27 == 0) { + var_r30->unk_20 = 4; + var_r30->unk_22 = 0; + var_r30->unk_34 = 0; + var_r30->unk_38 = 0; + var_r30->unk_3C.x = 0.0f; + var_r30->unk_3C.y = var_r30->unk_3C.z = 0.0f; + var_r31->unk_2C = sp50.y; + var_r31->unk_AC = sp50; + var_r31->unk_34 = 0.0f; + } + else if (var_r27 == 1) { + var_r29->unk_20 = 4; + var_r29->unk_22 = 0; + var_r29->unk_34 = 0; + var_r29->unk_38 = 0; + var_r29->unk_3C.x = 0.0f; + var_r29->unk_3C.y = var_r29->unk_3C.z = 0.0f; + var_r31->unk_2C = sp44.y; + var_r31->unk_AC = sp44; + var_r31->unk_34 = 0.0f; + } + } + if ((var_r30->unk_20 == 4) || (var_r29->unk_20 == 4)) { + var_r31->unk_24 = 1; + var_r31->unk_28 = 1; + } + else { + var_r31->unk_24 = 0; + } + if (lbl_1_bss_29C[var_r31->unk_0C] != 5) { + var_r31->unk_28 = 0; + } + sp50.x = var_r30->unk_90.x; + sp50.y = var_r30->unk_90.y; + sp50.z = var_r30->unk_90.z; + sp44.x = var_r29->unk_90.x; + sp44.y = var_r29->unk_90.y; + sp44.z = var_r29->unk_90.z; + fn_1_10530(object->model[0], &sp50, &sp44); + if (var_r31->unk_00[0]->trans.y > var_r31->unk_00[1]->trans.y) { + var_r31->unk_1C = var_r31->unk_00[0]->trans.y; + var_r31->unk_10 = 0; + } + else if (var_r31->unk_00[1]->trans.y > var_r31->unk_00[0]->trans.y) { + var_r31->unk_1C = var_r31->unk_00[1]->trans.y; + var_r31->unk_10 = 1; + } + else { + var_r25 = frand() & 1; + var_r31->unk_1C = var_r31->unk_00[var_r25]->trans.y; + var_r31->unk_10 = var_r25; + } + fn_1_118A8(var_r31->unk_0C, var_r31->unk_1C / 3800.0f); + if (fn_1_26E0() == 4) { + sp50.x = var_r31->unk_00[0]->trans.x; + sp50.y = var_r31->unk_00[0]->trans.y; + sp50.z = var_r31->unk_00[0]->trans.z; + sp44.x = var_r31->unk_00[1]->trans.x; + sp44.y = var_r31->unk_00[1]->trans.y; + sp44.z = var_r31->unk_00[1]->trans.z; + VECAdd(&sp50, &sp44, &sp2C); + VECScale(&sp2C, &sp2C, 0.5f); + VECSubtract(&sp50, &sp44, &sp20); + sp20.z = 0.0f; + var_f29 = VECMag(&sp20); + if (var_f29 < 100.0f) { + var_f27 = 0.0f; + } + else if (var_f29 >= 300.0f) { + var_f27 = 1.0f; + } + else { + var_f27 = (var_f29 - 100.0f) / 200.0f; + } + var_f29 = 1500.0f + (500.0f * var_f27); + var_f28 = sp2C.x; + if (var_f28 > 400.0f) { + var_f28 = 400.0f; + } + else if (var_f28 < -400.0f) { + var_f28 = -400.0f; + } + var_f26 = sp2C.y; + if (var_f26 < 400.0f) { + var_f26 = 400.0f; + } + var_f25 = var_r31->unk_1C; + if (var_f25 < 20.0f) { + var_f30 = 0.0f; + } + else { + var_f30 = (var_f25 - 20.0f) / 3780.0f; + if (var_f30 >= 1.0f) { + var_f30 = 1.0f; + } + } + sp14.x = var_f28; + sp14.y = var_f26; + sp14.z = 0.0f; + sp8.x = 70.0f * var_f30; + sp8.y = 0.0f; + sp8.z = 0.0f; + if (var_r31->unk_C4 > 0) { + var_f30 = var_r31->unk_C8 * ((float)var_r31->unk_C0 / var_r31->unk_C4); + var_r25 = (var_r31->unk_C0 * 0x2D) % 360; + var_f30 = var_f30 * sind(var_r25); + var_f30 = var_f30; + sp14.x += var_f30; + sp14.y += var_f30; + if (--var_r31->unk_C0 <= 0) { + var_r31->unk_C0 = var_r31->unk_C4 = 0; + } + var_r22 = 1; + } + if (var_r22 == 0) { + fn_1_9A30(var_r31->unk_0C, 12.0f, &sp14, &sp8, var_f29); + } + else { + fn_1_9A30(var_r31->unk_0C, 3.0f, &sp14, &sp8, var_f29); + } + } + if (var_r31->unk_BC != -1) { + if (var_r31->unk_BC == 0) { + var_r31->unk_B8++; + if (var_r31->unk_B8 == 1) { + omVibrate(var_r31->unk_08[0], 0xC, 6, 6); + omVibrate(var_r31->unk_08[1], 0xC, 6, 6); + return; + } + if (var_r31->unk_B8 >= 45.0f) { + var_r31->unk_B8 = 0; + } + } + else { + var_r31->unk_B8++; + if (var_r31->unk_B8 == 1) { + omVibrate(var_r31->unk_08[0], 0xC, 0xC, 0); + omVibrate(var_r31->unk_08[1], 0xC, 0xC, 0); + return; + } + if (var_r31->unk_B8 >= 6.0f) { + var_r31->unk_B8 = 0; + } + } + } + } + else { + switch (fn_1_26E0()) { + case 7: + if (lbl_1_bss_2A4 != 0) { + if (var_r31->unk_14 != 0) { + var_r30->unk_20 = 7; + var_r30->unk_22 = 0; + var_r29->unk_20 = 7; + var_r29->unk_22 = 0; + } + else { + var_r30->unk_20 = 9; + var_r30->unk_22 = 0; + var_r29->unk_20 = 9; + var_r29->unk_22 = 0; + } + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); + } + break; + case 8: + break; + case 9: + if ((var_r31->unk_14 != 0) && (lbl_1_bss_2A4 != 0)) { + var_r30->unk_20 = 8; + var_r30->unk_22 = 0; + var_r29->unk_20 = 8; + var_r29->unk_22 = 0; + } + break; + } + } +} + +void fn_1_B3D4(omObjData *object) +{ + s32 var_r31; + M428DllPlayerWork *work = object->data; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + fn_1_E5F4(work->unk_00[var_r31]); + work->unk_00[var_r31] = NULL; + } +} + +void fn_1_B43C(omObjData *object) +{ + M428DllPlayerWork2 *var_r31; + s32 var_r29; + s32 var_r28; + u32 var_r27; + M428DllPlayerWork *var_r26; + u32 var_r25; + u32 var_r24; + + var_r27 = object->work[0]; + var_r25 = object->work[1]; + var_r24 = object->work[2]; + var_r26 = &lbl_1_bss_2AC[var_r25]; + var_r31 = object->data = &lbl_1_bss_2A8[var_r27]; + var_r31->unk_00 = var_r27; + var_r31->unk_02 = var_r25; + var_r31->unk_04 = var_r24; + var_r31->unk_06 = GWPlayerCfg[var_r27].character; + var_r31->unk_08 = GWPlayerCfg[var_r27].pad_idx; + var_r31->unk_0A = GWPlayerCfg[var_r27].iscom; + var_r31->unk_0C = GWPlayerCfg[var_r27].diff; + if ((var_r31->unk_0A == 0) && ((lbl_1_data_640[var_r31->unk_08] & HuPadRumbleGet()) == 0)) { + lbl_1_bss_18 = 0; + } + if (var_r31->unk_0A != 0) { + var_r26->unk_0E = var_r26->unk_0E | (1 << var_r31->unk_04); + } + var_r31->unk_0E = var_r31->unk_10 = 0; + var_r31->unk_14 = var_r31->unk_18 = 0.0f; + var_r31->unk_1C = -1; + var_r31->unk_1E = 4; + var_r31->unk_20 = 0; + var_r31->unk_22 = var_r31->unk_24 = 0; + var_r31->unk_26 = 0; + var_r31->unk_28 = 200.0f; + var_r31->unk_2C = var_r31->unk_28; + var_r31->unk_30 = 0; + var_r31->unk_34 = 0; + var_r31->unk_38 = 0; + var_r31->unk_3C.x = var_r31->unk_3C.y = var_r31->unk_3C.z = 0.0f; + var_r31->unk_48.x = var_r31->unk_48.y = var_r31->unk_48.z = 0.0f; + var_r31->unk_54.x = 0.0f; + var_r31->unk_54.z = 0.0f; + var_r31->unk_54.y = 75.0f; + mtxRot(var_r31->unk_60, 0.0f, 0.0f, 0.0f); + mtxTransCat(var_r31->unk_60, lbl_1_data_5E0[var_r31->unk_06].x, lbl_1_data_5E0[var_r31->unk_06].y, lbl_1_data_5E0[var_r31->unk_06].z); + var_r31->unk_90.x = lbl_1_data_150[var_r31->unk_04].x; + var_r31->unk_90.y = 80.0f + lbl_1_data_150[var_r31->unk_04].y; + var_r31->unk_90.z = lbl_1_data_150[var_r31->unk_04].z; + strcpy(var_r31->unk_9C, MakeObjectName(CharModelHookNameGet(var_r31->unk_06, 4, 4))); + var_r31->unk_19C = -1; + var_r31->unk_1A0 = 30.0f * ((frand() & 0x7FFF) % 5); + var_r31->unk_1A4 = 0; + var_r31->unk_1A8 = 0; + var_r31->unk_1AC = 0.0f; + var_r31->unk_1B0 = 0; + var_r31->unk_1B4 = 0; + var_r31->unk_1B8.x = 0.5f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f)); + var_r31->unk_1B8.y = 0.5f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f)); + var_r31->unk_1B8.z = 0.5f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f)); + var_r29 = CharModelCreate(var_r31->unk_06, 4); + object->model[0] = var_r29; + if (var_r31->unk_02 == 0) { + Hu3DModelCameraSet(var_r29, 1); + fn_1_4170(var_r29, 1); + } + else { + Hu3DModelCameraSet(var_r29, 2); + fn_1_4170(var_r29, 2); + } + Hu3DModelLayerSet(var_r29, 2); + CharModelStepTypeSet(var_r31->unk_06, 0); + if (var_r31->unk_02 == 0) { + var_r29 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 0x07)); + object->model[1] = var_r29; + Hu3DModelCameraSet(var_r29, 1); + } + else { + var_r29 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M428, 0x08)); + object->model[1] = var_r29; + Hu3DModelCameraSet(var_r29, 2); + } + Hu3DModelLayerSet(var_r29, 2); + for (var_r28 = 0; var_r28 < 0xC; var_r28++) { + if (lbl_1_data_500[var_r28].unk_00 != 0xFFFFFFFF) { + object->motion[var_r28] = CharModelMotionCreate(var_r31->unk_06, lbl_1_data_500[var_r28].unk_00); + } + else { + object->motion[var_r28] = Hu3DJointMotionFile(object->model[0], lbl_1_data_560[lbl_1_data_500[var_r28].unk_04][var_r31->unk_06]); + } + } + var_r31->unk_1C = 3; + CharModelMotionSet(var_r31->unk_06, object->motion[var_r31->unk_1C]); + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + CharModelMotionDataClose(var_r31->unk_06); + object->trans.x = var_r31->unk_48.x = lbl_1_data_150[var_r31->unk_04].x; + object->trans.y = var_r31->unk_48.y = lbl_1_data_150[var_r31->unk_04].y; + object->trans.z = var_r31->unk_48.z = lbl_1_data_150[var_r31->unk_04].z; + object->rot.x = object->rot.z = 0.0f; + object->rot.y = 180.0f; + object->func = fn_1_BBD0; +} + +void fn_1_BBD0(omObjData *object) +{ + Mtx sp104; + Vec spF8; + Vec spEC; + Vec spE0; + float var_f31; + float var_f30; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f23; + float var_f22; + M428DllPlayerWork2 *var_r31; + M428DllPlayerWork *var_r29; + omObjData *var_r28; + M428DllPlayerWork2 *var_r27; + s32 var_r26; + ModelData *var_r25; + s32 var_r24; + s32 var_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + + var_r31 = object->data; + var_r29 = &lbl_1_bss_2AC[var_r31->unk_02]; + var_r22 = var_r31->unk_04 ^ 1; + var_r28 = var_r29->unk_00[var_r22]; + var_r27 = var_r28->data; + if (fn_1_26E0() == 4) { + if (var_r31->unk_0A != 0) { + var_r31->unk_0E = var_r31->unk_10 = 0; + var_r31->unk_14 = var_r31->unk_18 = 0.0f; + fn_1_E600(object); + } + else { + var_r31->unk_0E = HuPadBtnDown[var_r31->unk_08]; + var_r31->unk_10 = HuPadBtn[var_r31->unk_08]; + var_r31->unk_14 = HuPadStkX[var_r31->unk_08]; + var_r31->unk_18 = HuPadStkY[var_r31->unk_08]; + } + } + else { + var_r31->unk_0E = var_r31->unk_10 = 0; + var_r31->unk_14 = var_r31->unk_18 = 0.0f; + } + switch (var_r31->unk_20) { + case 0: + var_r31->unk_20 = 1; + var_r31->unk_22 = 0; + break; + case 1: + if (object->trans.y < 0.0f) { + object->trans.y += 1.6f; + var_r26 = 3; + if ((var_r26 != var_r31->unk_1C) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r31->unk_1C = var_r26; + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0x40000001); + } + } + else { + object->trans.y = 0.0f; + CharModelMotionSpeedSet(var_r31->unk_06, 0.0f); + } + spF8 = var_r31->unk_90; + VECSubtract(&spF8, &var_r29->unk_64[var_r31->unk_04], &spEC); + var_r31->unk_30 = 0; + var_f31 = VECMag(&spEC); + var_r29->unk_4C[var_r31->unk_04] = var_f31; + spF8.x = object->trans.x + var_r31->unk_54.x; + spF8.y = object->trans.y + var_r31->unk_54.y; + spF8.z = object->trans.z + var_r31->unk_54.z; + if (fn_1_9990(&spF8) != 0) { + object->trans.z = 50.0f + spF8.z; + } + if (fn_1_26E0() >= 4) { + var_r31->unk_20 = 2; + var_r31->unk_22 = 0; + } + break; + case 2: + if (((var_r31->unk_0E & 0x100) != 0) || (var_r29->unk_24 != 0) || (var_r29->unk_28 != 0)) { + if (var_r31->unk_1C == 4) { + var_r31->unk_1E = 5; + } + else { + var_r31->unk_1E = 4; + } + var_r31->unk_26 = 0; + var_r31->unk_20 = 3; + var_r31->unk_22 = 0; + } + else { + if (fabs(var_r31->unk_14) >= 8.0) { + var_f27 = 0.025f * var_r31->unk_14; + } + else { + var_f27 = 0.0f; + } + if (fabs(var_r31->unk_18) >= 8.0) { + var_f24 = 0.025f * var_r31->unk_18; + } + else { + var_f24 = 0.0f; + } + spE0.x = var_f27; + spE0.y = var_f24; + spE0.z = 0.0f; + if (VECMag(&spE0) > 0.0f) { + spF8.x = object->trans.x + var_r31->unk_54.x; + spF8.y = object->trans.y + var_r31->unk_54.y; + spF8.z = object->trans.z + var_r31->unk_54.z; + if (fn_1_F288(&spF8, &spE0, 75.0f) != 0) { + object->trans.x += spE0.x; + object->trans.y += spE0.y; + } + else { + object->trans.x = spF8.x - var_r31->unk_54.x; + object->trans.y = spF8.y - var_r31->unk_54.y; + } + if ((var_r27->unk_20 == 2) || (var_r27->unk_20 == 3)) { + spE0.x = (object->trans.x + var_r31->unk_54.x) - (var_r28->trans.x + var_r27->unk_54.x); + spE0.y = (object->trans.y + var_r31->unk_54.y) - (var_r28->trans.y + var_r27->unk_54.y); + spE0.z = (object->trans.z + var_r31->unk_54.z) - (var_r28->trans.z + var_r27->unk_54.z); + var_f30 = VECMag(&spE0); + if (var_f30 <= 200.0f) { + if (var_f30 <= 0.0f) { + spE0.y = -1.0f; + } + VECNormalize(&spE0, &spE0); + VECScale(&spE0, &spE0, 200.0f); + object->trans.x = spE0.x + (var_r28->trans.x + var_r27->unk_54.x); + object->trans.y = spE0.y + (var_r28->trans.y + var_r27->unk_54.x); + object->trans.z = spE0.z + (var_r28->trans.z + var_r27->unk_54.x); + } + } + } + spF8 = var_r31->unk_90; + VECSubtract(&spF8, &var_r29->unk_64[var_r31->unk_04], &spEC); + var_r31->unk_30 = 0; + var_f31 = VECMag(&spEC); + var_r29->unk_4C[var_r31->unk_04] = var_f31; + if (var_f31 > var_r29->unk_54[var_r31->unk_04]) { + var_r31->unk_30 = 1; + VECNormalize(&spEC, &spEC); + VECScale(&spEC, &spEC, var_r29->unk_54[var_r31->unk_04]); + VECAdd(&var_r29->unk_64[var_r31->unk_04], &spEC, &spF8); + object->trans.x += spF8.x - var_r31->unk_90.x; + object->trans.y += spF8.y - var_r31->unk_90.y; + object->trans.z += spF8.z - var_r31->unk_90.z; + var_r20 = 1; + } + if ((var_r20 != 0) || (object->trans.x != var_r31->unk_48.x) || (object->trans.y != var_r31->unk_48.y)) { + spF8.x = var_r31->unk_48.x + var_r31->unk_54.x; + spF8.y = var_r31->unk_48.y + var_r31->unk_54.y; + spF8.z = var_r31->unk_48.z + var_r31->unk_54.z; + spE0.x = (object->trans.x + var_r31->unk_54.x) - spF8.x; + spE0.y = (object->trans.y + var_r31->unk_54.y) - spF8.y; + spE0.z = (object->trans.z + var_r31->unk_54.z) - spF8.z; + if (fn_1_F288(&spF8, &spE0, 75.0f) == 0) { + object->trans.x = spF8.x - var_r31->unk_54.x; + object->trans.y = spF8.y - var_r31->unk_54.y; + var_r20 = 1; + } + } + if (object->trans.x < -700.0f) { + object->trans.x = -700.0f; + } + else if (object->trans.x > 700.0f) { + object->trans.x = 700.0f; + } + if (object->trans.y < -200.0f) { + object->trans.y = -200.0f; + } + spF8.x = object->trans.x + var_r31->unk_54.x; + spF8.y = object->trans.y + var_r31->unk_54.y; + spF8.z = object->trans.z + var_r31->unk_54.z; + if (fn_1_9990(&spF8) != 0) { + object->trans.z = 50.0f + spF8.z; + } + var_f31 = sqrtf((var_r31->unk_14 * var_r31->unk_14) + (var_r31->unk_18 * var_r31->unk_18)); + var_f31 *= 0.02f; + CharModelMotionSpeedSet(var_r31->unk_06, var_f31); + if ((var_f27 == 0.0f) && (var_f24 == 0.0f)) { + CharModelMotionSpeedSet(var_r31->unk_06, 0.0f); + if ((var_r31->unk_1C != 8) && (var_r31->unk_1C != 9) && (var_r31->unk_1C != 6)) { + var_r26 = var_r31->unk_1C; + } + else { + var_r26 = 4; + } + var_f22 = object->rot.z; + } + else { + if (fabs(var_f27) > (2.0 * fabs(var_f24))) { + if (var_f27 > 0.0f) { + var_r26 = 4; + } + else { + var_r26 = 5; + } + var_f22 = 0.0f; + } + else { + var_r26 = 3; + if (var_f24 > 0.0f) { + var_f22 = -30.0f * (var_f27 / 1.6f); + } + else { + var_f22 = -(-30.0f * (var_f27 / 1.6f)); + CharModelMotionSpeedSet(var_r31->unk_06, -var_f31); + } + } + } + if ((var_r26 != var_r31->unk_1C) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r23 = var_r31->unk_1C; + var_r31->unk_1C = var_r26; + if (var_r23 != 6) { + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0x40000001); + } + else { + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 25.0f, 0x40000001); + } + } + else { + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + } + object->rot.x = 0.0f; + object->rot.y = 180.0f; + object->rot.z = fn_1_1236C(var_f22, object->rot.z, 1.25f); + } + break; + case 3: + spF8 = var_r31->unk_90; + VECSubtract(&spF8, &var_r29->unk_64[var_r31->unk_04], &spEC); + var_r31->unk_30 = 0; + var_f31 = VECMag(&spEC); + var_r29->unk_4C[var_r31->unk_04] = var_f31; + if (fn_1_26E0() != 4) { + var_r31->unk_10 = 0; + var_r31->unk_26 = 0; + } + if (((var_r31->unk_10 & 0x100) != 0) || (var_r29->unk_24 != 0) || (var_r29->unk_28 != 0) || (var_r31->unk_26 != 0)) { + if (var_r31->unk_26 > 0) { + var_r31->unk_26--; + } + if (var_r29->unk_24 != 0) { + if (fabs(var_r29->unk_34) > 0.0) { + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.z; + var_r29->unk_A0.z = object->trans.z; + VECSubtract(&var_r29->unk_A0, &spF8, &spEC); + var_f30 = VECMag(&spEC); + if (var_f30 < var_r29->unk_34) { + var_r29->unk_34 = var_f30; + } + if (var_f30 > 0.0f) { + VECNormalize(&spEC, &spEC); + VECScale(&spEC, &spEC, var_r29->unk_34); + VECAdd(&spF8, &var_r31->unk_54, &spF8); + if (fn_1_F288(&spF8, &spEC, 75.0f) != 0) { + for (var_r24 = 0; var_r24 < 6; var_r24++) { + spF8.x = object->trans.x + (0.5f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f))); + spF8.y = 100.0f + object->trans.y + 0.5f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f)); + spF8.z = object->trans.z - 47.5f; + var_f31 = -22.5f + (45.0f * (0.007874016f * (frand() & 0x7F))); + spE0.x = 2.5 * sind(var_f31); + spE0.y = 2.5 * cosd(var_f31); + spE0.z = 0.0f; + fn_1_11DE4(var_r29->unk_0C, spF8, spE0, 50.0f, 5.0f, 100.0f, 0.5f, lbl_1_data_650); + } + object->trans.x += spEC.x; + object->trans.y += spEC.y; + } + } + } + } + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.z; + if (fn_1_9990(&spF8) != 0) { + object->trans.z = 50.0f + spF8.z; + } + if (object->trans.x < -700.0f) { + object->trans.x = -700.0f; + } + else if (object->trans.x > 700.0f) { + object->trans.x = 700.0f; + } + if (object->trans.y < -200.0f) { + object->trans.y = -200.0f; + } + if (lbl_1_bss_29C[var_r29->unk_0C] == 5) { + var_r26 = 6; + if ((object->rot.z > 180.0f) || (object->rot.z < 45.0f)) { + object->rot.z += 5.0f; + } + if (object->rot.z >= 360.0f) { + object->rot.z -= 360.0f; + } + } + else { + var_r26 = var_r31->unk_1E; + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); + } + if ((var_r26 != var_r31->unk_1C) && (var_r26 != -1) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r23 = var_r31->unk_1C; + var_r31->unk_1C = var_r26; + if (var_r31->unk_1C != 6) { + if (var_r23 != 6) { + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0); + } + else { + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 25.0f, 0); + } + CharModelMotionSpeedSet(var_r31->unk_06, 0.0f); + } + else { + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0x40000001); + } + } + if ((var_r31->unk_1C != 6) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + CharModelMotionTimeSet(var_r31->unk_06, 0.0f); + CharModelMotionSpeedSet(var_r31->unk_06, 0.0f); + } + if (var_r31->unk_1C == 6) { + CharModelMotionSpeedSet(var_r31->unk_06, 2.0f); + } + } + else { + var_r31->unk_20 = 2; + var_r31->unk_22 = 0; + } + break; + case 4: + spF8 = var_r31->unk_90; + VECSubtract(&spF8, &var_r29->unk_64[var_r31->unk_04], &spEC); + var_r31->unk_30 = 0; + var_f31 = VECMag(&spEC); + var_r29->unk_4C[var_r31->unk_04] = var_f31; + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.z; + var_r31->unk_3C.y -= 0.65333337f; + if (var_r29->unk_38 == -1) { + var_r29->unk_30 = 400.0f; + var_r29->unk_94.x = var_r28->trans.x + var_r27->unk_54.x; + var_r29->unk_94.y = var_r28->trans.y + var_r27->unk_54.y; + var_r29->unk_94.z = var_r28->trans.z + var_r27->unk_54.z; + } + else { + var_r29->unk_30 = var_r29->unk_48 - var_r29->unk_54[var_r22]; + } + VECAdd(&spF8, &var_r31->unk_54, &spF8); + if ((fn_1_F288(&spF8, &var_r31->unk_3C, 75.0f) != 0) && ((object->trans.y + var_r31->unk_3C.y) >= -200.0f)) { + spF8.x = object->trans.x + var_r31->unk_3C.x; + spF8.y = object->trans.y + var_r31->unk_3C.y; + spF8.z = object->trans.z + var_r31->unk_3C.z; + if (object->trans.x < -700.0f) { + object->trans.x = -700.0f; + } + else if (object->trans.x > 700.0f) { + object->trans.x = 700.0f; + } + if (object->trans.y < -200.0f) { + object->trans.y = -200.0f; + } + VECSubtract(&spF8, &var_r29->unk_94, &spEC); + var_f31 = VECMag(&spEC); + if (var_f31 > var_r29->unk_30) { + VECNormalize(&spEC, &spEC); + VECScale(&spEC, &spEC, var_r29->unk_30); + VECAdd(&var_r29->unk_94, &spEC, &spF8); + if (fabs(spEC.x) < 180.0) { + var_r31->unk_34 = 1; + } + } + object->trans.x = spF8.x; + object->trans.y = spF8.y; + object->trans.z = spF8.z; + } + else { + object->trans.x = spF8.x - var_r31->unk_54.x; + object->trans.y = spF8.y - var_r31->unk_54.y; + object->trans.z = spF8.z - var_r31->unk_54.z; + if ((object->trans.y + var_r31->unk_3C.y) >= -200.0f) { + for (var_r24 = 0; var_r24 < 6; var_r24++) { + var_f30 = -90.0f + (36.0f * var_r24); + spF8.x = object->trans.x + (12.5 * sind(var_f30)); + spF8.z = object->trans.z + 12.5 * cosd(var_f30); + spF8.y = (object->trans.y - 25.0f) + (0.25f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f))); + var_f31 = -22.5f + (45.0f * (0.007874016f * (frand() & 0x7F))); + var_f23 = 0.3f + (0.7f * (0.007874016f * (frand() & 0x7F))); + spE0.x = var_f23 * ((2.5 * sind(var_f30)) + (2.5 * sind(var_f31))); + spE0.y = var_f23 * (2.5 * cosd(var_f31)); + spE0.z = var_f23 * (2.5 * cosd(var_f30)); + fn_1_11DE4(var_r29->unk_0C, spF8, spE0, 100.0f, 5.0f, 100.0f, 0.5f * var_f23, lbl_1_data_654); + } + } + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.x; + var_r31->unk_38 = 1; + var_r31->unk_3C.x = var_r31->unk_3C.y = var_r31->unk_3C.z = 0.0f; + var_r29->unk_34 = 0.0f; + var_r31->unk_1E = 4; + var_r31->unk_26 = 0x12; + var_r31->unk_20 = 5; + var_r31->unk_22 = 0; + break; + } + if (var_r31->unk_34 == 0) { + var_r29->unk_34 = 0.0f; + var_r31->unk_22++; + var_r31->unk_24 = 0; + var_f31 = 2.0f * var_r31->unk_22; + if (var_f31 >= 90.0f) { + var_f31 = 90.0f; + } + if ((object->trans.z = object->trans.z + (10.0 * cosd(var_f31))) >= (150.0f + var_r29->unk_AC.z)) { + object->trans.z = 150.0f + var_r29->unk_AC.z; + } + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.z; + if (fn_1_9990(&spF8) != 0) { + spF8.z += 50.0f; + } + else { + spF8.z = 50.0f; + } + if (object->trans.z < spF8.z) { + object->trans.z = spF8.z; + } + var_r26 = 8; + if ((var_r26 != var_r31->unk_1C) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r31->unk_1C = var_r26; + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0); + CharModelMotionSpeedSet(var_r31->unk_06, 0.0f); + } + } + else { + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.z; + VECSubtract(&spF8, &var_r29->unk_94, &spEC); + if (fabs(spEC.x) < 100.0) { + if ((var_r31->unk_3C.y += 0.65333337f) > 0.0f) { + var_r31->unk_3C.y = 0.0f; + } + var_r31->unk_3C.x *= 0.96f; + var_r31->unk_3C.y *= 0.97f; + } + else { + var_r31->unk_22++; + } + var_r29->unk_34 = fabs(0.45f * sqrtf((var_r31->unk_3C.x * var_r31->unk_3C.x) + (var_r31->unk_3C.y * var_r31->unk_3C.y))); + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.z; + if (fn_1_9990(&spF8) != 0) { + spF8.z += 50.0f; + } + else { + spF8.z = 50.0f; + } + if ((object->trans.z -= 5.0f) < spF8.z) { + object->trans.z = 50.0f + spF8.z; + } + var_r26 = 9; + if ((var_r26 != var_r31->unk_1C) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r31->unk_1C = var_r26; + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0); + CharModelMotionSpeedSet(var_r31->unk_06, 0.0f); + } + if (++var_r31->unk_24 > var_r31->unk_22) { + var_r31->unk_1E = 4; + var_r31->unk_26 = 0x12; + var_r31->unk_20 = 5; + var_r31->unk_22 = 0; + } + } + + break; + case 5: + spF8 = var_r31->unk_90; + VECSubtract(&spF8, &var_r29->unk_64[var_r31->unk_04], &spEC); + var_r31->unk_30 = 0; + var_f31 = VECMag(&spEC); + var_r29->unk_4C[var_r31->unk_04] = var_f31; + if (var_r31->unk_38 != 0) { + var_r26 = 7; + if ((var_r26 != var_r31->unk_1C) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r31->unk_1C = var_r26; + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0); + CharModelMotionSpeedSet(var_r31->unk_06, 0.0f); + } + } + var_r21 = 0; + if ((var_r27->unk_20 == 2) || (var_r27->unk_20 == 3)) { + spE0.x = (object->trans.x + var_r31->unk_54.x) - (var_r28->trans.x + var_r27->unk_54.x); + spE0.y = (object->trans.y + var_r31->unk_54.y) - (var_r28->trans.y + var_r27->unk_54.y); + spE0.z = (object->trans.z + var_r31->unk_54.z) - (var_r28->trans.z + var_r27->unk_54.z); + var_f30 = VECMag(&spE0); + if (var_f30 <= 200.0f) { + if (object->trans.x > var_r28->trans.x) { + var_f30 = 10.0f; + } + else { + var_f30 = -10.0f; + } + spF8.x = object->trans.x + var_r31->unk_54.x; + spF8.y = object->trans.y + var_r31->unk_54.y; + spF8.z = object->trans.z + var_r31->unk_54.z; + spE0.x = var_f30; + spE0.y = spE0.z = 0.0f; + if (fn_1_F288(&spF8, &spE0, 75.0f) != 0) { + object->trans.x += spE0.x; + object->trans.y += spE0.y; + object->trans.z += spE0.z; + } + else { + object->trans.x = spF8.x - var_r31->unk_54.x; + object->trans.y = spF8.y - var_r31->unk_54.y; + object->trans.z = spF8.z - var_r31->unk_54.z; + } + spF8.x = var_r28->trans.x + var_r27->unk_54.x; + spF8.y = var_r28->trans.y + var_r27->unk_54.y; + spF8.z = var_r28->trans.z + var_r27->unk_54.z; + spE0.x = -var_f30; + spE0.y = spE0.z = 0.0f; + if (fn_1_F288(&spF8, &spE0, 75.0f) != 0) { + var_r28->trans.x += spE0.x; + var_r28->trans.y += spE0.y; + var_r28->trans.z += spE0.z; + } + else { + var_r28->trans.x = spF8.x - var_r27->unk_54.x; + var_r28->trans.y = spF8.y - var_r27->unk_54.y; + var_r28->trans.z = spF8.z - var_r27->unk_54.z; + } + var_r21 = 1; + } + } + if (object->trans.x < -700.0f) { + object->trans.x = -700.0f; + } + else if (object->trans.x > 700.0f) { + object->trans.x = 700.0f; + } + if (object->trans.y < -200.0f) { + object->trans.y = -200.0f; + } + spF8.x = object->trans.x; + spF8.y = object->trans.y; + spF8.z = object->trans.z; + if (fn_1_9990(&spF8) != 0) { + spF8.z += 50.0f; + } + else { + spF8.z = 50.0f; + } + if ((object->trans.z - spF8.z) > 30.000002f) { + object->trans.z -= 30.000002f; + } + else { + object->trans.z = spF8.z; + if (var_r21 == 0) { + var_r31->unk_20 = 3; + var_r31->unk_22 = 0; + } + } + break; + case 7: + object->trans.x = lbl_1_data_180[var_r31->unk_04].x; + object->trans.y = lbl_1_data_180[var_r31->unk_04].y; + object->trans.z = lbl_1_data_180[var_r31->unk_04].z; + object->rot.x = object->rot.y = object->rot.z = 0.0f; + var_r25 = &Hu3DData[object->model[0]]; + var_r25->unk_F0[0][3] = 0.0f; + var_r25->unk_F0[1][3] = 0.0f; + var_r25->unk_F0[2][3] = 0.0f; + var_r25 = &Hu3DData[object->model[1]]; + MTXIdentity(var_r25->unk_F0); + Hu3DModelPosSet( + object->model[1], lbl_1_data_450[var_r31->unk_04].x, lbl_1_data_450[var_r31->unk_04].y, lbl_1_data_450[var_r31->unk_04].z); + Hu3DModelRotSet( + object->model[1], lbl_1_data_480[var_r31->unk_04].x, lbl_1_data_480[var_r31->unk_04].y, lbl_1_data_480[var_r31->unk_04].z); + if (var_r31->unk_02 == 0) { + fn_1_4170(object->model[1], 1); + } + else { + fn_1_4170(object->model[1], 2); + } + var_r26 = 0; + if ((var_r26 != var_r31->unk_1C) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r31->unk_1C = var_r26; + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0x40000001); + } + break; + case 8: + var_r26 = 0xA; + if ((var_r26 != var_r31->unk_1C) && (CharModelMotionShiftIDGet(var_r31->unk_06) == -1)) { + var_r31->unk_1C = var_r26; + CharModelMotionShiftSet(var_r31->unk_06, object->motion[var_r31->unk_1C], 0.0f, 8.0f, 0); + } + break; + case 9: + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); + break; + } + var_r31->unk_48.x = object->trans.x; + var_r31->unk_48.y = object->trans.y; + var_r31->unk_48.z = object->trans.z; + if (var_r31->unk_20 < 7) { + if (fn_1_13F54(object->model[0], var_r31->unk_9C, sp104, 0) != 0) { + var_r25 = &Hu3DData[object->model[1]]; + MTXConcat(sp104, var_r31->unk_60, sp104); + MTXCopy(sp104, var_r25->unk_F0); + var_r31->unk_90.x = sp104[0][3]; + var_r31->unk_90.y = sp104[1][3]; + var_r31->unk_90.z = sp104[2][3]; + } + else { + OSReport("NO OBJECT %d %s \n", var_r31->unk_06, CharModelHookNameGet(var_r31->unk_06, 4, 4)); + } + spF8.x = 0.0f; + spF8.y = 100.0f; + spF8.z = 0.0f; + spE0.x = spF8.y * sind((180.0f + object->rot.z)); + spE0.y = spF8.y * sind((90.0f + object->rot.z)); + spE0.z = 0.0f; + VECSubtract(&spE0, &spF8, &spEC); + var_r25 = &Hu3DData[object->model[0]]; + var_r25->unk_F0[0][3] = spEC.x; + var_r25->unk_F0[1][3] = spEC.y; + var_r25->unk_F0[2][3] = spEC.z; + } +} + +void fn_1_E5F4(omObjData *object) +{ + object->func = NULL; +} + +void fn_1_E600(omObjData *object) +{ + Vec sp24; + Vec sp18; + Vec spC; + s32 sp8; + float var_f31; + float var_f30; + float var_f29; + M428DllPlayerWork2 *var_r31; + M428DllPlayerWork *var_r29; + omObjData *var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + + var_r31 = object->data; + var_r29 = &lbl_1_bss_2AC[var_r31->unk_02]; + var_r24 = var_r31->unk_04 ^ 1; + var_r28 = var_r29->unk_00[var_r24]; + if ((var_r29->unk_0E == 3) && (var_r29->unk_10 == var_r31->unk_04)) { + var_r26 = 1; + } + else { + var_r26 = 0; + } + if ((lbl_1_bss_29C[var_r31->unk_02] == 6) || (var_r31->unk_19C == -1)) { + if (var_r29->unk_0E != 3) { + var_r31->unk_19C = 2; + } + else { + var_r25 = (s32)(50.0f * (0.007874016f * (frand() & 0x7F))) + var_r31->unk_0C * 0xF + 5; + var_r31->unk_1A0 = (u8)frand() % 90; + if (var_r26 == 0) { + var_r31->unk_1A0 = (u8)frand() % 60; + } + if (var_r25 < 0x2D) { + var_r31->unk_19C = 0; + } + else if (var_r25 < 0x4B) { + var_r31->unk_19C = 1; + } + else { + var_r31->unk_19C = 2; + } + } + } + var_f31 = 1.0f; + switch (var_r31->unk_19C) { + case 0: + break; + case 1: + if (lbl_1_bss_29C[var_r31->unk_02] != 0) { + if (var_r31->unk_1A0 > 0) { + var_r31->unk_1A0--; + } + else { + var_r31->unk_0E |= 0x100; + var_r31->unk_10 |= 0x100; + } + } + break; + case 2: + if ((lbl_1_bss_29C[var_r31->unk_02] == 3) || (lbl_1_bss_29C[var_r31->unk_02] == 5)) { + var_r31->unk_0E |= 0x100; + var_r31->unk_10 |= 0x100; + } + break; + } + if (var_r26 != 0) { + for (var_r27 = 0; var_r27 < 0x10; var_r27++) { + if ((lbl_1_data_1B0[var_r29->unk_12][var_r27].y - 100.0f) > object->trans.y) { + break; + } + } + var_r31->unk_1B0 = var_r27; + sp18 = lbl_1_data_1B0[var_r29->unk_12][var_r31->unk_1B0]; + sp8 = var_r31->unk_1B0; + sp24.x = object->trans.x; + sp24.y = object->trans.y; + sp24.z = object->trans.z; + VECSubtract(&var_r31->unk_48, &sp24, &spC); + if ((VECMag(&spC) < 1.0f) && (lbl_1_bss_29C[var_r31->unk_02] != 0)) { + var_r31->unk_1B4++; + } + if (var_r31->unk_1B4 >= 180.0f) { + if (var_r31->unk_1B4 < 300.0f) { + if ((var_r31->unk_1B0 >= 2) && (var_r31->unk_1B0 <= 3)) { + if (fabs(object->trans.x) < 500.0) { + if (object->trans.x > 0.0f) { + var_r31->unk_14 = 64.0f; + } + else { + var_r31->unk_14 = -64.0f; + } + } + } + else { + if (fabs(object->trans.x) > 50.0) { + if (object->trans.x > 0.0f) { + var_r31->unk_14 = -64.0f; + } + else { + var_r31->unk_14 = 64.0f; + } + } + } + } + else if (var_r31->unk_1B0 > 0) { + var_r31->unk_1B0--; + var_r31->unk_1B4 = 0; + } + } + else { + var_r31->unk_1B4 = 0; + sp24.x = object->trans.x; + sp24.y = object->trans.y; + sp24.z = object->trans.z; + VECAdd(&sp18, &var_r31->unk_1B8, &sp18); + VECSubtract(&sp18, &sp24, &spC); + var_f30 = VECMag(&spC); + VECNormalize(&spC, &spC); + var_r31->unk_14 = 64.0f * (spC.x * var_f31); + var_r31->unk_18 = 64.0f * (spC.y * var_f31); + if (++var_r31->unk_1A4 > 180.0f) { + var_r31->unk_1B8.x = 0.5f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f)); + var_r31->unk_1B8.y = 0.5f * (100.0f * (0.007874016f * (frand() & 0x7F))); + var_r31->unk_1B8.z = 0.5f * (100.0f * ((0.007874016f * (frand() & 0x7F)) - 0.5f)); + var_r31->unk_1A4++; + } + } + } + else { + sp24.x = object->trans.x; + sp24.y = object->trans.y; + sp24.z = object->trans.z; + sp18.x = var_r28->trans.x; + sp18.y = var_r28->trans.y; + sp18.z = var_r28->trans.z; + VECSubtract(&sp18, &sp24, &spC); + var_f30 = VECMag(&spC); + if (var_f30 != 0.0f) { + var_f29 = atan2d(spC.x, spC.y); + } + else { + spC.y = 1.0f; + var_f29 = 0.0; + } + if (var_f30 < 230.0f) { + spC.x *= -1.0f; + spC.y *= -1.0f; + var_f29 += 180.0f; + } + if ((var_f30 >= 250.0f) || (var_f30 <= 230.0f)) { + VECNormalize(&spC, &spC); + if (var_f30 >= 250.0f) { + var_f31 = (var_f30 - 250.0f) / 20.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + } + else { + var_f31 = 1.0f; + } + sp24.x = object->trans.x; + sp24.y = object->trans.y; + sp24.z = object->trans.z; + VECAdd(&sp24, &var_r31->unk_54, &sp24); + var_f29 = var_f29 + var_r31->unk_1AC; + sp18.x = 64.0 * sind(var_f29); + sp18.y = 64.0 * cosd(var_f29); + sp18.z = 0.0f; + var_r31->unk_14 = sp18.x * var_f31; + var_r31->unk_18 = sp18.y * var_f31; + var_r31->unk_1A8 = 0; + } + } + var_r31->unk_1A4++; +} + +s32 fn_1_F080(Vec *arg0, Vec *arg1, float arg8) +{ + Vec sp24; + Vec sp18; + Vec spC; + float var_f31; + float var_f30; + s32 var_r31; + + if (VECMag(arg1) <= 0.0f) { + return 0; + } + var_f30 = atan2d(arg1->x, arg1->y); + var_f30 = var_f30; + sp24 = *arg0; + for (var_r31 = 0; var_r31 < 6; var_r31++) { + var_f31 = -45.0f + (15.0f * var_r31); + var_f31 += var_f30; + spC.x = sind(var_f31); + spC.y = cosd(var_f31); + spC.z = 0.0f; + VECNormalize(&spC, &spC); + VECScale(&spC, &spC, arg8); + VECAdd(arg0, &spC, &sp24); + if (fn_1_9990(&sp24) != 0) { + if (var_r31 == 3) { + sp18 = sp24; + } + } + else { + break; + } + } + if (var_r31 < 6) { + return 0; + } + return 1; +} + +s32 fn_1_F288(Vec *arg0, Vec *arg1, float arg2) +{ + Vec sp24; + Vec sp18; + Vec spC; + s32 var_r30; + + sp24 = *arg0; + sp18 = *arg1; + var_r30 = fn_1_F538(&sp24, &sp18, &spC, arg2); + if (var_r30 != 0) { + *arg0 = spC; + return 0; + } + *arg0 = sp24; + return 1; +} + +s32 fn_1_F354(void) +{ + s32 var_r31; + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_2B8[var_r31]->trans.y < 0.0f) { + break; + } + } + if (var_r31 < 4) { + return 0; + } + return 1; +} + +s32 fn_1_F3BC(s32 arg0) +{ + M428DllPlayerWork *var_r31 = &lbl_1_bss_2AC[arg0]; + if (var_r31->unk_1C >= 3800.0f) { + return var_r31->unk_18 = 1; + } + return var_r31->unk_18 = 0; +} + +void fn_1_F414(s32 arg0) +{ + M428DllPlayerWork *var_r31 = &lbl_1_bss_2AC[arg0]; + var_r31->unk_14 = 1; + lbl_1_bss_2A4 = 1; +} + +void fn_1_F454(s32 arg0, s32 arg1) +{ + lbl_1_bss_29C[arg0] = arg1; +} + +void fn_1_F46C(s32 arg0, s32 arg1) +{ + if (lbl_1_bss_18 != 0) { + M428DllPlayerWork *var_r31 = &lbl_1_bss_2AC[arg0]; + var_r31->unk_B8 = 0; + var_r31->unk_BC = arg1; + } +} + +void fn_1_F4B4(s32 arg0, s32 arg1, float arg8) +{ + M428DllPlayerWork *var_r31 = &lbl_1_bss_2AC[arg0]; + var_r31->unk_C4 = arg1; + var_r31->unk_C0 = arg1; + var_r31->unk_C8 = arg8; +} + +s32 fn_1_F4E8(s32 arg0) +{ + M428DllPlayerWork *var_r31 = &lbl_1_bss_2AC[arg0]; + if (var_r31->unk_1C >= 500.0f) { + return 1; + } + return 0; +} + +s32 fn_1_F538(Vec *arg0, Vec *arg1, Vec *arg2, float arg8) +{ + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f30; + float var_f29; + M428DllData4B0Struct *var_r30; + s32 var_r27; + + *arg2 = *arg0; + var_r30 = lbl_1_data_4B0; + for (var_r27 = 0; var_r27 < 5; var_r27++, var_r30++) { + sp38 = var_r30->unk_00; + VECAdd(arg0, arg1, &sp2C); + if ((arg0->y >= (sp38.y + arg8)) && (sp2C.y <= (sp38.y + arg8))) { + sp8.x = sp2C.y - arg0->y; + sp8.y = arg0->x - sp2C.x; + sp8.z = -((sp8.x * arg0->x) + (sp8.y * arg0->y)); + var_f29 = -((sp8.z + (sp8.y * (sp38.y + arg8))) / sp8.x); + if ((var_f29 >= (sp38.x - (var_r30->unk_0C + arg8))) && (var_f29 <= (sp38.x + (var_r30->unk_0C + arg8)))) { + arg2->x = arg0->x + arg1->x; + arg2->y = 0.1f + (sp38.y + arg8); + arg2->z = arg0->z + arg1->z; + return 1; + } + } + VECSubtract(&sp2C, &sp38, &sp20); + var_f30 = VECMag(&sp20); + if (var_f30 == 0.0f) { + sp20.y = 1.0f; + } + sp14 = sp20; + if ((var_f30 < (var_r30->unk_0C + arg8)) && (sp20.y < arg8)) { + sp38 = var_r30->unk_00; + sp2C = *arg0; + VECSubtract(&sp2C, &sp38, &sp20); + var_f30 = VECMag(&sp20); + if (var_f30 == 0.0f) { + sp20.y = 1.0f; + } + if (sp20.y <= arg8) { + VECNormalize(&sp14, &sp20); + VECScale(&sp20, &sp20, var_r30->unk_0C + arg8); + VECAdd(&sp38, &sp20, arg2); + return 1; + } + arg2->x = arg0->x + arg1->x; + arg2->y = 0.1f + (sp38.y + arg8); + arg2->z = arg0->z + arg1->z; + return 1; + } + } + return 0; +} + +s32 fn_1_F88C(Vec *arg0, Vec *arg1, Vec *arg2) +{ + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + M428DllData4B0Struct *var_r30; + s32 var_r27; + + *arg2 = *arg0; + var_r30 = lbl_1_data_4B0; + for (var_r27 = 0; var_r27 < 5; var_r27++, var_r30++) { + sp2C = var_r30->unk_00; + VECAdd(arg0, arg1, &sp20); + if ((arg0->y >= sp2C.y) && (sp20.y <= sp2C.y)) { + sp8.x = sp20.y - arg0->y; + sp8.y = arg0->x - sp20.x; + sp8.z = -((sp8.x * arg0->x) + (sp8.y * arg0->y)); + var_f30 = -((sp8.z + (sp8.y * sp2C.y)) / sp8.x); + if ((var_f30 >= (sp2C.x - var_r30->unk_0C)) && (var_f30 <= (sp2C.x + var_r30->unk_0C))) { + arg2->x = arg0->x + arg1->x; + arg2->y = sp2C.y; + arg2->z = arg0->z + arg1->z; + return 1; + } + } + VECSubtract(&sp20, &sp2C, &sp14); + var_f31 = VECMag(&sp14); + if (var_f31 == 0.0f) { + sp14.y = 1.0f; + } + if ((var_f31 < var_r30->unk_0C) && (sp14.y <= 0.0f)) { + sp2C = var_r30->unk_00; + sp20 = *arg0; + VECSubtract(&sp20, &sp2C, &sp14); + var_f31 = VECMag(&sp14); + if (var_f31 == 0.0f) { + sp14.y = 1.0f; + } + if (sp14.y <= 0.0f) { + VECNormalize(&sp14, &sp14); + VECScale(&sp14, &sp14, var_r30->unk_0C); + VECAdd(&sp2C, &sp14, arg2); + return var_r27; + } + arg2->x = arg0->x + arg1->x; + arg2->y = sp2C.y; + arg2->z = arg0->z + arg1->z; + return var_r27; + } + } + return -1; +} + +s32 fn_1_FB8C(Vec *arg0, Vec *arg1, float arg8, s32 arg2, s32 arg3) +{ + float var_f31; + M428DllPlayerUnk120Struct *var_r31; + M428DllPlayerUnkStruct *var_r30; + s32 var_r29; + ModelData *var_r28; + s32 var_r26; + + var_r26 = Hu3DHookFuncCreate(fn_1_102A8); + var_r28 = &Hu3DData[var_r26]; + Hu3DModelLayerSet(var_r26, 2); + var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M428DllPlayerUnk120Struct), var_r28->unk_48); + var_r28->unk_120 = var_r31; + memset(var_r31, 0, sizeof(M428DllPlayerUnk120Struct)); + var_r30 = HuMemDirectMallocNum(HEAP_DATA, arg2 * sizeof(M428DllPlayerUnkStruct), var_r28->unk_48); + var_r31->unk_54 = var_r30; + memset(var_r30, 0, arg2 * sizeof(M428DllPlayerUnkStruct)); + var_r31->unk_00 = var_r26; + var_r31->unk_02 = arg2; + var_r31->unk_04 = arg8; + var_r31->unk_08 = arg8 / (arg2 - 1); + var_r31->unk_0C = 0; + var_r31->unk_10 = arg3; + var_r31->unk_14 = 0.0f; + var_r31->unk_18 = 0.0f; + var_r31->unk_1C = 0; + var_r31->unk_20 = *arg0; + var_r31->unk_2C = *arg1; + var_r31->unk_38.x = var_r31->unk_38.y = var_r31->unk_38.z = 0.0f; + var_r31->unk_44 = -1; + var_r31->unk_48 = var_r31->unk_4C = var_r31->unk_50 = 0.0f; + for (var_r29 = 0; var_r29 < arg2; var_r29++, var_r30++) { + var_r30->unk_00 = var_r29; + if (var_r29 == 0) { + var_r30->unk_02 = 0; + } + else if (var_r29 == (arg2 - 1)) { + var_r30->unk_02 = 1; + } + else { + var_r30->unk_02 = -1; + } + var_r30->unk_04 = 0; + var_f31 = (float)var_r29 / (arg2 - 1); + var_r30->unk_08[0].x = var_r31->unk_20.x + (var_f31 * (var_r31->unk_2C.x - var_r31->unk_20.x)); + var_r30->unk_08[0].y = var_r31->unk_20.y + (var_f31 * (var_r31->unk_2C.y - var_r31->unk_20.y)); + var_r30->unk_08[0].z = var_r31->unk_20.z + (var_f31 * (var_r31->unk_2C.z - var_r31->unk_20.z)); + var_r30->unk_08[1] = var_r30->unk_08[0]; + var_r30->unk_08[2] = var_r30->unk_08[0]; + var_r30->unk_08[3].x = var_r30->unk_08[3].y = var_r30->unk_08[3].z = 0.0f; + } + return var_r26; +} + +void fn_1_FE98(M428DllPlayerUnk120Struct *arg0) +{ + Vec sp24; + Vec sp18; + Vec spC; + s32 sp8; + float var_f31; + float var_f30; + M428DllPlayerUnkStruct *var_r30; + s32 var_r29; + + if (arg0->unk_1C == 0) { + fn_1_129B4(0.5f, &arg0->unk_20, &arg0->unk_2C, &spC); + spC.y -= arg0->unk_14 * (0.75f * arg0->unk_04); + for (var_r30 = arg0->unk_54, var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r30++) { + var_f31 = (float)var_r29 / (arg0->unk_02 - 1); + fn_1_12AA4(var_f31, &arg0->unk_20, &spC, &arg0->unk_2C, &var_r30->unk_08[0]); + fn_1_129B4(var_f31, &arg0->unk_20, &arg0->unk_2C, &var_r30->unk_08[2]); + } + } + else { + arg0->unk_38.z = 0.5f * (arg0->unk_20.z + arg0->unk_2C.z); + fn_1_129B4(0.5f, &arg0->unk_20, &arg0->unk_38, &spC); + spC.y -= arg0->unk_14 * (0.375f * arg0->unk_04); + for (var_r30 = arg0->unk_54, var_r29 = 0; var_r29 < arg0->unk_44; var_r29++, var_r30++) { + var_f31 = (float)var_r29 / (arg0->unk_44 - 1); + fn_1_12AA4(var_f31, &arg0->unk_20, &spC, &arg0->unk_38, &var_r30->unk_08[0]); + fn_1_129B4(var_f31, &arg0->unk_20, &arg0->unk_38, &var_r30->unk_08[2]); + } + fn_1_129B4(0.1f, &arg0->unk_38, &arg0->unk_2C, &spC); + spC.y -= arg0->unk_18 * (0.375f * arg0->unk_04); + for (var_r30 = &arg0->unk_54[arg0->unk_44], var_r29 = arg0->unk_44; var_r29 < arg0->unk_02; var_r29++, var_r30++) { + var_f31 = (float)(var_r29 - arg0->unk_44) / ((arg0->unk_02 - arg0->unk_44) - 1); + fn_1_12AA4(var_f31, &arg0->unk_38, &spC, &arg0->unk_2C, &var_r30->unk_08[0]); + fn_1_129B4(var_f31, &arg0->unk_38, &arg0->unk_2C, &var_r30->unk_08[2]); + } + } + for (var_r29 = 0, var_r30 = arg0->unk_54; var_r29 < arg0->unk_02; var_r29++, var_r30++) { + PSVECSubtract(&var_r30->unk_08[0], &var_r30->unk_08[2], &sp24); + var_f30 = var_r30->unk_08[0].z; + if ((sp8 = fn_1_F88C(&var_r30->unk_08[2], &sp24, &sp18)) != -1) { + var_r30->unk_08[0] = sp18; + var_r30->unk_08[0].z = var_f30; + var_r30->unk_04 = 1; + } + else { + var_r30->unk_04 = 0; + } + if (var_r30->unk_02 == -1) { + fn_1_129B4(0.9f, &var_r30->unk_08[1], &var_r30->unk_08[0], &var_r30->unk_08[0]); + } + var_r30->unk_08[1] = var_r30->unk_08[0]; + } +} + +s32 lbl_1_data_694[2] = { 0xFFA040FF, 0xC8FFFF }; +s16 lbl_1_data_69C[2] = { -0x10, 0x10 }; +s16 lbl_1_data_6A0[2] = { 0x1A4, 0x60 }; +Vec lbl_1_data_6A4[4] = { + { -0.5f, 0.5f, 0.0f }, + { 0.5f, 0.5f, 0.0f }, + { 0.5f, -0.5f, 0.0f }, + { -0.5f, -0.5f, 0.0f }, +}; +Vec2f lbl_1_data_6D4[4] = { { 0.0f, 0.0f }, { 0.25f, 0.0f }, { 0.25f, 0.25f }, { 0.0f, 0.25f } }; + +void fn_1_102A8(ModelData *model, Mtx matrix) +{ + Mtx sp8; + s16 var_r30; + + M428DllPlayerUnk120Struct *var_r31 = model->unk_120; + if (omPauseChk() == 0) { + fn_1_FE98(var_r31); + } + GXLoadPosMtxImm(matrix, 0); + MTXInvXpose(matrix, sp8); + GXLoadNrmMtxImm(sp8, 0); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetNumChans(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_RASC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); + GXSetChanCtrl(GX_COLOR0A0, GX_TRUE, GX_SRC_VTX, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_SPEC); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + GXSetZCompLoc(GX_FALSE); + GXSetBlendMode(GX_BM_BLEND, GX_BL_ONE, GX_BL_ZERO, GX_LO_NOOP); + GXSetLineWidth(0x10, GX_TO_ZERO); + // bug, it should be var_r31->unk_54 + DCFlushRange(&var_r31->unk_54, var_r31->unk_02 * sizeof(M428DllPlayerUnkStruct)); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, var_r31->unk_54->unk_08, sizeof(M428DllPlayerUnkStruct)); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &lbl_1_data_694[var_r31->unk_10], 4); + GXBegin(GX_LINESTRIP, GX_VTXFMT0, var_r31->unk_02); + for (var_r30 = 0; var_r30 < var_r31->unk_02; var_r30++) { + GXPosition1x16(var_r30); + GXColor1x16(0); + } +} + +void fn_1_10530(s32 arg0, Vec *arg1, Vec *arg2) +{ + ModelData *var_r30 = &Hu3DData[arg0]; + M428DllPlayerUnk120Struct *var_r31 = var_r30->unk_120; + var_r31->unk_20 = *arg1; + var_r31->unk_2C = *arg2; +} + +void fn_1_10590(s32 arg0, s32 arg1, s32 arg2, Vec *arg3) +{ + ModelData *var_r30 = &Hu3DData[arg0]; + M428DllPlayerUnk120Struct *var_r31 = var_r30->unk_120; + var_r31->unk_1C = arg1; + if (arg1 != 0) { + var_r31->unk_38 = *arg3; + var_r31->unk_44 = arg2; + } +} + +void fn_1_105E8(s32 arg0, float arg8, float arg9) +{ + ModelData *var_r30 = &Hu3DData[arg0]; + M428DllPlayerUnk120Struct *var_r31 = var_r30->unk_120; + if (arg8 > 1.0f) { + arg8 = 1.0f; + } + else if (arg8 < 0.0f) { + arg8 = 0.0f; + } + if (arg9 > 1.0f) { + arg9 = 1.0f; + } + else if (arg9 < 0.0f) { + arg9 = 0.0f; + } + var_r31->unk_14 = arg8; + var_r31->unk_18 = arg9; +} + +s32 fn_1_106A8(s32 arg0, s32 arg1, Vec *arg2, float *arg3) +{ + M428DllPlayerUnkStruct *var_r30; + s32 var_r29; + + ModelData *var_r28 = &Hu3DData[arg0]; + M428DllPlayerUnk120Struct *var_r31 = var_r28->unk_120; + float var_f31 = 0.0f; + for (var_r29 = 0; var_r29 < var_r31->unk_02; var_f31 += var_r31->unk_08, var_r29++) { + if (arg1 == 0) { + var_r30 = &var_r31->unk_54[var_r29]; + } + else { + var_r30 = &var_r31->unk_54[(var_r31->unk_02 - 1) - var_r29]; + } + if (var_r30->unk_04 != 0) { + *arg2 = var_r30->unk_08[0]; + *arg3 = var_f31; + return 1; + } + } + return 0; +} + +s32 fn_1_10788(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3) +{ + Vec sp30; + Vec sp24; + Vec sp18; + Vec spC; + ModelData *sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + M428DllData4B0Struct *var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + sp8 = &Hu3DData[arg0]; + sp18.x = arg2->y - arg1->y; + sp18.y = arg1->x - arg2->x; + sp18.z = -((sp18.x * arg1->x) + (sp18.y * arg1->y)); + if (arg1->x < arg2->x) { + var_f27 = arg1->x; + var_f26 = arg2->x; + } + else { + var_f27 = arg2->x; + var_f26 = arg1->x; + } + if (arg1->y < arg2->y) { + var_f30 = arg1->y; + var_f29 = arg2->y; + } + else { + var_f30 = arg2->y; + var_f29 = arg1->y; + } + for (var_r30 = 0, var_r31 = lbl_1_data_4B0; var_r30 < 5; var_r30++, var_r31++) { + sp30 = var_r31->unk_00; + sp30.x -= var_r31->unk_0C; + sp24 = var_r31->unk_00; + sp24.x += var_r31->unk_0C; + spC.x = sp24.y - sp30.y; + spC.y = sp30.x - sp24.x; + spC.z = -((spC.x * sp30.x) + (spC.y * sp30.y)); + if ((var_r31->unk_00.y >= var_f30) && (var_r31->unk_00.y <= var_f29) && (sp18.x != 0.0f)) { + var_f31 = -((sp18.z + (sp18.y * var_r31->unk_00.y)) / sp18.x); + var_f28 = var_r31->unk_00.y; + if ((var_f31 >= sp30.x) && (var_f31 <= sp24.x)) { + var_r29 = 1; + } + else { + var_r29 = 0; + } + if ((var_f31 >= var_f27) && (var_f31 <= var_f26) && (var_f28 >= var_f30) && (var_f28 <= var_f29)) { + var_r28 = 1; + } + else { + var_r28 = 0; + } + if ((var_r29 != 0) && (var_r28 != 0)) { + if (var_f31 < var_r31->unk_00.x) { + *arg3 = sp30; + } + else { + *arg3 = sp24; + } + return var_r30; + } + } + } + return -1; +} + +void fn_1_10A88(void) +{ + M428DllPlayerWork3 *var_r31; + omObjData *var_r30; + s32 var_r29; + M428DllPlayerUnk120Struct2 *var_r28; + ModelData *var_r27; + s32 var_r26; + s32 var_r25; + + var_r30 = lbl_1_bss_2B4 = omAddObjEx(lbl_1_bss_2D0, 0x42, 0xA, 0, -1, fn_1_11014); + var_r31 = var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M428DllPlayerWork3), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, sizeof(M428DllPlayerWork3)); + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M428, 0x0E), 0x80, 0); + var_r31->unk_00 = var_r29; + espDispOn(var_r29); + espDrawNoSet(var_r29, 0); + espAttrSet(var_r29, HUSPR_ATTR_NOANIM); + espPosSet(var_r29, 288.0, 240.0); + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M428, 0x0C), 0x50, 0); + var_r31->unk_04[0] = var_r29; + espDispOn(var_r29); + espDrawNoSet(var_r29, 0); + espAttrSet(var_r29, HUSPR_ATTR_NOANIM); + espPosSet(var_r29, 288.0, 240.0); + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M428, 0x0D), 0x50, 0); + var_r31->unk_04[1] = var_r29; + espDispOn(var_r29); + espDrawNoSet(var_r29, 0); + espAttrSet(var_r29, HUSPR_ATTR_NOANIM); + espPosSet(var_r29, 288.0, 240.0); + var_r31->unk_0C[0][0] = var_r31->unk_0C[0][1] = 0.0f; + var_r31->unk_0C[1][0] = var_r31->unk_0C[1][1] = 0.0f; + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M428, 0x10), 0x100, 0); + var_r31->unk_1C[0] = var_r29; + espDispOn(var_r29); + espDrawNoSet(var_r29, 0); + espAttrSet(var_r29, HUSPR_ATTR_NOANIM); + espPosSet(var_r29, 144.0, 240.0); + espScaleSet(var_r29, 36.0, 60.0); + espColorSet(var_r29, 0xFF, 0xFF, 0xFF); + espTPLvlSet(var_r29, 0.0); + var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_M428, 0x10), 0x100, 0); + var_r31->unk_1C[1] = var_r29; + espDispOn(var_r29); + espDrawNoSet(var_r29, 0); + espAttrSet(var_r29, HUSPR_ATTR_NOANIM); + espPosSet(var_r29, 432.0, 240.0); + espScaleSet(var_r29, 36.0, 60.0); + espColorSet(var_r29, 0xFF, 0xFF, 0xFF); + espTPLvlSet(var_r29, 0.0); + var_r31->unk_24[0][0] = var_r31->unk_24[0][1] = 0.0f; + var_r31->unk_24[1][0] = var_r31->unk_24[1][1] = 0.0f; + var_r31->unk_34 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M428, 0x0A), MEMORY_DEFAULT_NUM)); + var_r31->unk_38 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M428, 0x0B), MEMORY_DEFAULT_NUM)); + var_r30->model[0] = fn_1_12CD4(var_r31->unk_34, 2); + Hu3DModelCameraSet(var_r30->model[0], 1); + Hu3DModelLayerSet(var_r30->model[0], 5); + fn_1_13D9C(var_r30->model[0], -1, 0); + var_r27 = &Hu3DData[var_r30->model[0]]; + var_r28 = var_r27->unk_120; + var_r28->unk_22 |= 3; + var_r30->model[1] = fn_1_12CD4(var_r31->unk_38, 2); + Hu3DModelCameraSet(var_r30->model[1], 1); + Hu3DModelLayerSet(var_r30->model[1], 5); + fn_1_13D9C(var_r30->model[1], -1, 0); + var_r27 = &Hu3DData[var_r30->model[1]]; + var_r28 = var_r27->unk_120; + var_r28->unk_22 |= 3; + var_r30->model[2] = fn_1_12CD4(var_r31->unk_34, 2); + Hu3DModelCameraSet(var_r30->model[2], 2); + Hu3DModelLayerSet(var_r30->model[2], 5); + fn_1_13D9C(var_r30->model[2], -1, 0); + var_r27 = &Hu3DData[var_r30->model[2]]; + var_r28 = var_r27->unk_120; + var_r28->unk_22 |= 3; + var_r30->model[3] = fn_1_12CD4(var_r31->unk_38, 2); + Hu3DModelCameraSet(var_r30->model[3], 2); + Hu3DModelLayerSet(var_r30->model[3], 5); + fn_1_13D9C(var_r30->model[3], -1, 0); + var_r27 = &Hu3DData[var_r30->model[3]]; + var_r28 = var_r27->unk_120; + var_r28->unk_22 |= 3; + for (var_r26 = 0; var_r26 < 2; var_r26++) { + for (var_r25 = 0; var_r25 < 2; var_r25++) { + var_r31->unk_3C[var_r26][var_r25] = var_r31->unk_4C[var_r26][var_r25] = -1; + } + } +} + +void fn_1_11014(omObjData *object) +{ + Vec sp20; + float var_f31; + float var_f30; + s32 var_r31; + s32 var_r29; + omObjData *var_r27; + M428DllPlayerWork *var_r26; + + M428DllPlayerWork3 *var_r30 = object->data; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r30->unk_0C[var_r31][0] = var_r30->unk_0C[var_r31][0] + (0.05f * (var_r30->unk_0C[var_r31][1] - var_r30->unk_0C[var_r31][0])); + var_f30 = lbl_1_data_6A0[0] + (var_r30->unk_0C[var_r31][0] * (lbl_1_data_6A0[1] - lbl_1_data_6A0[0])); + espPosSet(var_r30->unk_04[var_r31], 288.0f + lbl_1_data_69C[var_r31], var_f30); + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + var_r30->unk_24[var_r31][0] = var_r30->unk_24[var_r31][0] + (0.05f * (var_r30->unk_24[var_r31][1] - var_r30->unk_24[var_r31][0])); + espTPLvlSet(var_r30->unk_1C[var_r31], var_r30->unk_24[var_r31][0]); + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + for (var_r29 = 0; var_r29 < 2; var_r29++) { + var_r26 = lbl_1_bss_2C8[var_r31]->data; + var_r27 = var_r26->unk_00[var_r29]; + if (var_r30->unk_3C[var_r31][var_r29] > 0) { + var_f31 = (30.0f - var_r30->unk_3C[var_r31][var_r29]) / 6.0f; + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + else if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + var_f31 = sind((180.0f * var_f31)); + sp20.x = var_r27->trans.x; + sp20.y = 200.0f + var_r27->trans.y; + sp20.z = var_r27->trans.z; + fn_1_13E14(object->model[var_r31 * 2], var_r29, sp20); + fn_1_13EC8(object->model[var_r31 * 2], var_r29, 125.0f * (1.0f + var_f31)); + var_r30->unk_3C[var_r31][var_r29] -= 1; + } + else { + fn_1_13D9C(object->model[var_r31 * 2], var_r29, 0); + } + if (var_r30->unk_4C[var_r31][var_r29] > 0) { + var_f31 = (30.0f - var_r30->unk_4C[var_r31][var_r29]) / 6.0f; + if (var_f31 < 0.0f) { + var_f31 = 0.0f; + } + else if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + var_f31 = sind((180.0f * var_f31)); + sp20.x = var_r27->trans.x; + sp20.y = 200.0f + var_r27->trans.y; + sp20.z = var_r27->trans.z; + fn_1_13E14(object->model[(var_r31 * 2) + 1], var_r29, sp20); + fn_1_13EC8(object->model[(var_r31 * 2) + 1], var_r29, 125.0f * (1.0f + var_f31)); + var_r30->unk_4C[var_r31][var_r29] -= 1; + } + else { + fn_1_13D9C(object->model[(var_r31 * 2) + 1], var_r29, 0); + } + } + } +} + +void fn_1_115F8(void) +{ + M428DllPlayerWork3 *var_r31 = lbl_1_bss_2B4->data; + espKill(var_r31->unk_00); + espKill(var_r31->unk_04[0]); + espKill(var_r31->unk_04[1]); + espKill(var_r31->unk_1C[0]); + espKill(var_r31->unk_1C[1]); + Hu3DModelKill(lbl_1_bss_2B4->model[0]); + Hu3DModelKill(lbl_1_bss_2B4->model[1]); + Hu3DModelKill(lbl_1_bss_2B4->model[2]); + Hu3DModelKill(lbl_1_bss_2B4->model[3]); + HuSprAnimKill(var_r31->unk_34); + HuSprAnimKill(var_r31->unk_38); +} + +void fn_1_116C4(s32 arg0, s32 arg1) +{ + if (lbl_1_bss_2B4) { + s32 var_r31; + M428DllPlayerWork3 *var_r30 = lbl_1_bss_2B4->data; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + if (arg1 == 0) { + var_r30->unk_3C[arg0][var_r31] = 0x1E; + } + else { + var_r30->unk_4C[arg0][var_r31] = 0x1E; + } + } + } +} + +void fn_1_11754(s32 arg0, float arg8) +{ + if (lbl_1_bss_2B4) { + M428DllPlayerWork3 *var_r31 = lbl_1_bss_2B4->data; + var_r31->unk_24[arg0][1] = arg8; + } +} + +void fn_1_11798(s32 sp8) +{ + s32 var_r30; + s32 var_r29; + + if (lbl_1_bss_2B4) { + M428DllPlayerWork3 *work = lbl_1_bss_2B4->data; + if (sp8 == 0) { + espDispOff(work->unk_00); + espDispOff(work->unk_04[0]); + espDispOff(work->unk_04[1]); + espDispOff(work->unk_1C[0]); + espDispOff(work->unk_1C[1]); + } + else { + espDispOn(work->unk_00); + espDispOn(work->unk_04[0]); + espDispOn(work->unk_04[1]); + espDispOn(work->unk_1C[0]); + espDispOn(work->unk_1C[1]); + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + for (var_r29 = 0; var_r29 < 2; var_r29++) { + work->unk_3C[var_r30][var_r29] = work->unk_4C[var_r30][var_r29] = -1; + } + } + } +} + +void fn_1_118A8(s32 arg0, float var_f1) +{ + M428DllPlayerWork3 *var_r31; + if (lbl_1_bss_2B4) { + var_r31 = lbl_1_bss_2B4->data; + if (var_f1 < 0.0f) { + var_f1 = 0.0f; + } + else if (var_f1 > 1.0f) { + var_f1 = 1.0f; + } + var_r31->unk_0C[arg0][1] = var_f1; + } +} + +void fn_1_11930(void) +{ + M428DllPlayerWork4 *var_r31; + s32 var_r30; + s32 var_r29; + omObjData *var_r28; + M428DllPlayerUnk120Struct2 *var_r27; + ModelData *var_r26; + AnimData *var_r25; + + var_r28 = lbl_1_bss_2B0 = omAddObjEx(lbl_1_bss_2D0, 0xBF, 0, 0, -1, fn_1_11A60); + var_r31 = var_r28->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M428DllPlayerWork4), MEMORY_DEFAULT_NUM); + memset(var_r31, 0, sizeof(M428DllPlayerWork4)); + var_r25 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M428, 0x0F), MEMORY_DEFAULT_NUM)); + var_r31->unk_10 = var_r25; + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r29 = fn_1_12CD4(var_r25, 0x200); + var_r31->unk_00[var_r30] = var_r29; + if (var_r30 == 0) { + Hu3DModelCameraSet(var_r29, 1); + } + else { + Hu3DModelCameraSet(var_r29, 2); + } + Hu3DModelLayerSet(var_r29, 3); + var_r31->unk_08[var_r30] = 0; + var_r26 = &Hu3DData[var_r29]; + var_r27 = var_r26->unk_120; + var_r27->unk_20 = 0; + } +} + +void fn_1_11A60(omObjData *object) +{ + s32 temp_r4; + M428DllPlayerUnkStruct2 *var_r31; + M428DllPlayerWork4 *var_r30; + s32 var_r29; + M428DllPlayerUnk120Struct2 *var_r28; + s32 var_r27; + ModelData *var_r26; + + var_r30 = object->data; + for (var_r29 = 0; var_r29 < 2; var_r29++) { + if (var_r30->unk_08[var_r29] <= 0) { + Hu3DModelAttrSet(var_r30->unk_00[var_r29], HU3D_ATTR_DISPOFF); + } + else { + Hu3DModelAttrReset(var_r30->unk_00[var_r29], HU3D_ATTR_DISPOFF); + var_r26 = &Hu3DData[var_r30->unk_00[var_r29]]; + var_r28 = var_r26->unk_120; + var_r31 = var_r28->unk_3C; + var_r28->unk_23 = 0; + for (var_r27 = 0; var_r27 < var_r28->unk_26; var_r27++, var_r31++) { + if (!(var_r31->unk_30 <= 0.0f)) { + var_r31->unk_38.x += var_r31->unk_04; + var_r31->unk_38.y += var_r31->unk_08; + var_r31->unk_38.z += var_r31->unk_0C; + var_r31->unk_34 = var_r31->unk_34 + var_r31->unk_18; + if (var_r31->unk_34 >= 360.0f) { + var_r31->unk_34 = var_r31->unk_34 - 360.0f; + } + var_r31->unk_48 = var_r31->unk_28; + var_r31->unk_28 = var_r31->unk_28 + var_r31->unk_2C; + if (var_r31->unk_48 >= 0x10) { + var_r31->unk_48 = 0; + var_r31->unk_00 = 0; + var_r31->unk_30 = 0.0f; + var_r30->unk_08[var_r29] -= 1; + } + } + } + } + } +} + +void fn_1_11C20(void) +{ + + omObjData *var_r30 = lbl_1_bss_2B0; + M428DllPlayerWork4 *var_r31 = var_r30->data; + Hu3DModelAttrSet(var_r31->unk_00[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(var_r31->unk_00[1], HU3D_ATTR_DISPOFF); + HuSprAnimKill(var_r31->unk_10); + var_r30->func = NULL; +} + +s32 fn_1_11C8C(s32 arg0, Vec arg1, Vec arg2, GXColor arg3, float arg8, float arg9, float argA) +{ + M428DllPlayerUnkStruct2 *var_r31; + M428DllPlayerUnk120Struct2 *var_r30; + s32 var_r29; + M428DllPlayerWork4 *var_r28; + omObjData *var_r27; + ModelData *var_r26; + + var_r27 = lbl_1_bss_2B0; + var_r28 = var_r27->data; + var_r26 = &Hu3DData[var_r28->unk_00[arg0]]; + var_r30 = var_r26->unk_120; + for (var_r31 = var_r30->unk_3C, var_r29 = 0; var_r29 < var_r30->unk_26; var_r29++, var_r31++) { + if (var_r31->unk_30 <= 0.0f) { + break; + } + } + if (var_r29 >= var_r30->unk_26) { + return -1; + } + var_r31->unk_00 = var_r31->unk_02 = 0; + var_r31->unk_38.x = arg1.x; + var_r31->unk_38.y = arg1.y; + var_r31->unk_38.z = arg1.z; + var_r31->unk_04 = arg2.x; + var_r31->unk_08 = arg2.y; + var_r31->unk_0C = arg2.z; + var_r31->unk_18 = arg9; + var_r31->unk_30 = arg8; + var_r31->unk_44.r = arg3.r; + var_r31->unk_44.g = arg3.g; + var_r31->unk_44.b = arg3.b; + var_r31->unk_44.a = arg3.a; + var_r31->unk_34 = 0.0f; + var_r31->unk_48 = 0; + var_r31->unk_00 = 0; + var_r31->unk_28 = 0.0f; + var_r31->unk_2C = argA; + var_r28->unk_08[arg0]++; + return var_r29; +} + +static inline s32 fn_1_11C8C_inlined(s32 arg0, Vec arg1, Vec arg2, GXColor arg3, float arg8, float arg9, float argA) +{ + M428DllPlayerUnkStruct2 *var_r31; + M428DllPlayerUnk120Struct2 *var_r30; + s32 var_r29; + M428DllPlayerWork4 *var_r28; + omObjData *var_r27; + ModelData *var_r26; + + var_r27 = lbl_1_bss_2B0; + var_r28 = var_r27->data; + var_r26 = &Hu3DData[var_r28->unk_00[arg0]]; + var_r30 = var_r26->unk_120; + for (var_r31 = var_r30->unk_3C, var_r29 = 0; var_r29 < var_r30->unk_26; var_r29++, var_r31++) { + if (var_r31->unk_30 <= 0.0f) { + break; + } + } + if (var_r29 >= var_r30->unk_26) { + return -1; + } + var_r31->unk_00 = var_r31->unk_02 = 0; + var_r31->unk_38.x = arg1.x; + var_r31->unk_38.y = arg1.y; + var_r31->unk_38.z = arg1.z; + var_r31->unk_04 = arg2.x; + var_r31->unk_08 = arg2.y; + var_r31->unk_0C = arg2.z; + var_r31->unk_18 = arg9; + var_r31->unk_30 = arg8; + var_r31->unk_44.r = arg3.r; + var_r31->unk_44.g = arg3.g; + var_r31->unk_44.b = arg3.b; + var_r31->unk_44.a = arg3.a; + var_r31->unk_34 = 0.0f; + var_r31->unk_48 = 0; + var_r31->unk_00 = 0; + var_r31->unk_28 = 0.0f; + var_r31->unk_2C = argA; + var_r28->unk_08[arg0]++; + return var_r29; +} + +s32 fn_1_11DE4(s32 arg0, Vec arg1, Vec arg2, float arg8, float arg9, float argA, float argB, GXColor arg3) +{ + Vec sp64; + Vec sp58; + s32 sp24; + s32 sp20; + float var_f31; + + sp58.x = arg2.z; + sp58.z = arg2.x; + sp58.y = 0.0f; + VECNormalize(&sp58, &sp58); + var_f31 = 0.5f * argA; + sp64.x = arg1.x + (sp58.x * var_f31); + sp64.y = arg1.y + (sp58.y * var_f31); + sp64.z = arg1.z + (sp58.z * var_f31); + + sp24 = fn_1_11C8C_inlined(arg0, sp64, arg2, arg3, arg8, arg9, argB); + sp64.x = arg1.x - (sp58.x * var_f31); + sp64.y = arg1.y - (sp58.y * var_f31); + sp64.z = arg1.z - (sp58.z * var_f31); + + sp20 = fn_1_11C8C_inlined(arg0, sp64, arg2, arg3, arg8, -arg9, argB); + return (sp24 << 0x10) | sp20; +} + +float fn_1_12254(float arg8, float arg9) +{ + float var_f31; + + if (arg8 >= 360.0f) { + arg8 -= 360.0f; + } + else if (arg8 < 0.0f) { + arg8 += 360.0f; + } + if (arg9 >= 360.0f) { + arg9 -= 360.0f; + } + else if (arg9 < 0.0f) { + arg9 += 360.0f; + } + var_f31 = arg8 - arg9; + if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } + else if (var_f31 >= 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} + +float fn_1_1236C(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + + if (arg8 >= 360.0) { + arg8 -= 360.0; + } + else if (arg8 < 0.0) { + arg8 += 360.0; + } + if (arg9 >= 360.0) { + arg9 -= 360.0; + } + else if (arg9 < 0.0) { + arg9 += 360.0; + } + var_f30 = 360.0 + (arg8 - arg9); + if (fabs(var_f30) >= 360.0) { + var_f30 = fmod(var_f30, 360.0); + } + if (var_f30 < 180.0) { + if (var_f30 <= argA) { + var_f31 = var_f30; + } + else { + var_f31 = argA; + } + } + else if (360.0 - var_f30 <= argA) { + var_f31 = -(360.0 - var_f30); + } + else { + var_f31 = -argA; + } + var_f31 += arg9; + if (var_f31 >= 360.0) { + var_f31 -= 360.0; + } + else if (var_f31 < 0.0) { + var_f31 += 360.0; + } + return var_f31; +} + +float fn_1_125BC(float arg8, float arg9, float argA) +{ + float var_f24; + float var_f23; + + var_f23 = fn_1_12254(argA, arg9); + var_f24 = fabs(var_f23 * arg8); + return fn_1_1236C(argA, arg9, var_f24); +} + +void fn_1_129B4(float arg8, Vec *arg0, Vec *arg1, Vec *arg2) +{ + Vec sp8; + sp8.x = arg0->x + (arg8 * (arg1->x - arg0->x)); + sp8.y = arg0->y + (arg8 * (arg1->y - arg0->y)); + sp8.z = arg0->z + (arg8 * (arg1->z - arg0->z)); + *arg2 = sp8; +} + +float fn_1_12A2C(float arg8, float arg9, float argA, float argB) +{ + float var_f31; + float var_f30; + + var_f31 = 1.0 - arg8; + var_f30 = (argB * (arg8 * arg8)) + ((arg9 * (var_f31 * var_f31)) + (2.0 * (argA * (var_f31 * arg8)))); + return var_f30; +} + +void fn_1_12AA4(float arg8, Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) +{ + arg3->x = fn_1_12A2C(arg8, arg0->x, arg1->x, arg2->x); + arg3->y = fn_1_12A2C(arg8, arg0->y, arg1->y, arg2->y); + arg3->z = fn_1_12A2C(arg8, arg0->z, arg1->z, arg2->z); +} + +s16 fn_1_12CD4(AnimData *sp8, s16 var_r26) +{ + s16 var_r30; + M428DllPlayerUnkStruct2 *var_r29; + Vec2f *var_r28; + Vec *var_r25; + void *var_r24; + void *var_r22; + + s16 var_r23 = Hu3DHookFuncCreate(fn_1_134C0); + ModelData *var_r27 = &Hu3DData[var_r23]; + M428DllPlayerUnk120Struct2 *var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M428DllPlayerUnk120Struct2), var_r27->unk_48); + var_r27->unk_120 = var_r31; + var_r31->unk_38 = sp8; + var_r31->unk_26 = var_r26; + var_r31->unk_20 = 0; + var_r31->unk_22 = 0; + var_r31->unk_4C = 0; + var_r31->unk_50 = 0; + var_r31->unk_28 = 0; + var_r31->unk_21 = 0; + var_r31->unk_23 = 0; + var_r31->unk_30 = 0; + var_r31->unk_00 = var_r31->unk_02 = 0; + var_r29 = HuMemDirectMallocNum(HEAP_DATA, var_r26 * sizeof(M428DllPlayerUnkStruct2), var_r27->unk_48); + var_r31->unk_3C = var_r29; + memset(var_r29, 0, var_r26 * sizeof(M428DllPlayerUnkStruct2)); + for (var_r30 = 0; var_r30 < var_r26; var_r30++, var_r29++) { + var_r29->unk_30 = 0.0f; + var_r29->unk_34 = 0.0f; + var_r29->unk_28 = 0.0f; + var_r29->unk_2C = 1.0f; + var_r29->unk_38.x = ((frand() & 0x7F) - 0x40) * 0x14; + var_r29->unk_38.y = ((frand() & 0x7F) - 0x40) * 0x1E; + var_r29->unk_38.z = ((frand() & 0x7F) - 0x40) * 0x14; + var_r29->unk_44.r = var_r29->unk_44.g = var_r29->unk_44.b = var_r29->unk_44.a = 0xFF; + var_r29->unk_48 = 0; + } + var_r25 = HuMemDirectMallocNum(HEAP_DATA, var_r26 * sizeof(Vec) * 4, var_r27->unk_48); + var_r31->unk_40 = var_r25; + for (var_r30 = 0; var_r30 < (var_r26 * 4); var_r30++, var_r25++) { + var_r25->x = var_r25->y = var_r25->z = 0.0f; + } + var_r28 = HuMemDirectMallocNum(HEAP_DATA, var_r26 * sizeof(Vec2f) * 4, var_r27->unk_48); + var_r31->unk_44 = var_r28; + for (var_r30 = 0; var_r30 < var_r26; var_r30++) { + var_r28->x = 0.0f; + var_r28->y = 0.0f; + var_r28++; + var_r28->x = 1.0f; + var_r28->y = 0.0f; + var_r28++; + var_r28->x = 1.0f; + var_r28->y = 1.0f; + var_r28++; + var_r28->x = 0.0f; + var_r28->y = 1.0f; + var_r28++; + } + var_r24 = HuMemDirectMallocNum(HEAP_DATA, 0x10000, var_r27->unk_48); + var_r22 = var_r24; + DCFlushRange(var_r24, 0x10000); + GXBeginDisplayList(var_r22, 0x10000); + GXBegin(GX_QUADS, GX_VTXFMT0, var_r26 * 4); + for (var_r30 = 0; var_r30 < var_r26; var_r30++) { + GXUnknownu16(var_r30 * 4); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4); + GXUnknownu16(var_r30 * 4 + 1); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4 + 1); + GXUnknownu16(var_r30 * 4 + 2); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4 + 2); + GXUnknownu16(var_r30 * 4 + 3); + GXUnknownu16(var_r30); + GXUnknownu16(var_r30 * 4 + 3); + } + var_r31->unk_34 = GXEndDisplayList(); + var_r31->unk_48 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_34, var_r27->unk_48); + memcpy(var_r31->unk_48, var_r24, var_r31->unk_34); + DCFlushRange(var_r31->unk_48, var_r31->unk_34); + HuMemDirectFree(var_r24); + (void)var_r30; + (void)var_r26; + return var_r23; +} + +s16 fn_1_13184(s16 sp8) +{ + M428DllPlayerUnk120Struct2 *var_r31; + M428DllPlayerUnkStruct2 *var_r30; + Vec2f *var_r29; + s16 var_r28; + ModelData *var_r27; + M428DllPlayerUnk120Struct2 *var_r26; + Vec *var_r25; + s32 var_r24; + ModelData *var_r23; + s16 var_r22; + + var_r23 = &Hu3DData[sp8]; + var_r26 = var_r23->unk_120; + var_r22 = Hu3DHookFuncCreate(var_r23->hook); + var_r27 = &Hu3DData[var_r22]; + var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M428DllPlayerUnk120Struct2), var_r27->unk_48); + var_r27->unk_120 = var_r31; + var_r31->unk_38 = var_r26->unk_38; + var_r31->unk_26 = var_r26->unk_26; + var_r24 = var_r31->unk_26; + var_r31->unk_20 = 0; + var_r31->unk_22 = var_r26->unk_22; + var_r31->unk_4C = NULL; + var_r31->unk_50 = NULL; + var_r31->unk_28 = 0; + var_r31->unk_21 = 0; + var_r31->unk_30 = 0; + var_r31->unk_00 = var_r31->unk_02 = 0; + var_r30 = HuMemDirectMallocNum(HEAP_DATA, var_r24 * sizeof(M428DllPlayerUnkStruct2), var_r27->unk_48); + var_r31->unk_3C = var_r30; + for (var_r28 = 0; var_r28 < var_r24; var_r28++, var_r30++) { + var_r30->unk_30 = 0.0f; + var_r30->unk_34 = 0.0f; + var_r30->unk_28 = 0.0f; + var_r30->unk_2C = 1.0f; + var_r30->unk_38.x = ((frand() & 0x7F) - 0x40) * 0x14; + var_r30->unk_38.y = ((frand() & 0x7F) - 0x40) * 0x1E; + var_r30->unk_38.z = ((frand() & 0x7F) - 0x40) * 0x14; + var_r30->unk_44.r = var_r30->unk_44.g = var_r30->unk_44.b = var_r30->unk_44.a = 0xFF; + var_r30->unk_48 = 0; + } + var_r25 = HuMemDirectMallocNum(HEAP_DATA, var_r24 * sizeof(Vec) * 4, var_r27->unk_48); + var_r31->unk_40 = var_r25; + for (var_r28 = 0; var_r28 < (var_r24 * 4); var_r28++, var_r25++) { + var_r25->x = var_r25->y = var_r25->z = 0.0f; + } + var_r29 = HuMemDirectMallocNum(HEAP_DATA, var_r24 * sizeof(Vec2f) * 4, var_r27->unk_48); + var_r31->unk_44 = var_r29; + for (var_r28 = 0; var_r28 < var_r24; var_r28++) { + var_r29->x = 0.0f; + var_r29->y = 0.0f; + var_r29++; + var_r29->x = 1.0f; + var_r29->y = 0.0f; + var_r29++; + var_r29->x = 1.0f; + var_r29->y = 1.0f; + var_r29++; + var_r29->x = 0.0f; + var_r29->y = 1.0f; + var_r29++; + } + var_r31->unk_34 = var_r26->unk_34; + var_r31->unk_48 = var_r26->unk_48; + return var_r22; +} + +void fn_1_134C0(ModelData *var_r23, Mtx var_r22) +{ + Mtx sp128; + Mtx spF8; + Mtx spC8; + Vec sp98[4]; + Vec sp68[4]; + Vec sp38[4]; + ROMtx sp8; + M428DllPlayerUnk120Struct2 *var_r31; + Vec *var_r30; + M428DllPlayerUnkStruct2 *var_r29; + Vec2f *var_r28; + Vec *var_r27; + s16 var_r26; + s16 var_r25; + Vec *var_r24; + s16 var_r21; + s16 var_r20; + s16 var_r19; + M428DllPlayerHook var_r18; + + var_r31 = var_r23->unk_120; + if ((var_r31->unk_2C != GlobalCounter) || (shadowModelDrawF != 0)) { + if ((var_r31->unk_50) && (var_r31->unk_50 != var_r23)) { + fn_1_134C0(var_r31->unk_50, var_r22); + } + GXLoadPosMtxImm(var_r22, 0); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + if (shadowModelDrawF != 0) { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ONE, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); + } + else { + var_r21 = var_r31->unk_38->bmp->dataFmt & 0xF; + if ((var_r21 == 7) || (var_r21 == 8)) { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ONE, GX_CC_RASC, GX_CC_ZERO); + } + else { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); + } + if ((var_r31->unk_22 & 1) != 0) { + GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); + } + else if ((var_r23->attr & 2) != 0) { + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + } + else { + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + } + } + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + HuSprTexLoad(var_r31->unk_38, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(0); + switch (var_r31->unk_20) { + case 0: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + break; + case 1: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_NOOP); + break; + case 2: + GXSetBlendMode(GX_BM_BLEND, GX_BL_ZERO, GX_BL_INVDSTCLR, GX_LO_NOOP); + break; + } + if (HmfInverseMtxF3X3(var_r22, &sp128[0]) == 0) { + MTXIdentity(sp128); + } + PSMTXReorder(sp128, sp8); + if (var_r31->unk_4C) { + var_r18 = var_r31->unk_4C; + var_r18(var_r23, var_r31, var_r22); + } + var_r29 = var_r31->unk_3C; + var_r30 = var_r31->unk_40; + var_r28 = var_r31->unk_44; + PSMTXROMultVecArray(sp8, lbl_1_data_6A4, &sp38[0], 4); + for (var_r26 = 0; var_r26 < var_r31->unk_26; var_r26++, var_r29++) { + if (!var_r29->unk_30) { + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + var_r30->x = var_r30->y = var_r30->z = 0.0f; + var_r30++; + } + else if (!var_r29->unk_34) { + var_r27 = &sp98[0]; + var_r24 = &sp38[0]; + VECScale(var_r24++, var_r27, var_r29->unk_30); + VECAdd(var_r27++, &var_r29->unk_38, var_r30++); + VECScale(var_r24++, var_r27, var_r29->unk_30); + VECAdd(var_r27++, &var_r29->unk_38, var_r30++); + VECScale(var_r24++, var_r27, var_r29->unk_30); + VECAdd(var_r27++, &var_r29->unk_38, var_r30++); + VECScale(var_r24++, var_r27, var_r29->unk_30); + VECAdd(var_r27++, &var_r29->unk_38, var_r30++); + } + else { + VECScale(lbl_1_data_6A4, &sp98[0], var_r29->unk_30); + VECScale(&lbl_1_data_6A4[1], &sp98[1], var_r29->unk_30); + VECScale(&lbl_1_data_6A4[2], &sp98[2], var_r29->unk_30); + VECScale(&lbl_1_data_6A4[3], &sp98[3], var_r29->unk_30); + MTXRotRad(spC8, 0x5A, var_r29->unk_34); + MTXConcat(&sp128[0], spC8, spF8); + MTXMultVecArray(spF8, &sp98[0], &sp68[0], 4); + VECAdd(&sp68[0], &var_r29->unk_38, var_r30++); + VECAdd(&sp68[1], &var_r29->unk_38, var_r30++); + VECAdd(&sp68[2], &var_r29->unk_38, var_r30++); + VECAdd(&sp68[3], &var_r29->unk_38, var_r30++); + } + } + var_r29 = var_r31->unk_3C; + var_r28 = var_r31->unk_44; + if ((var_r31->unk_22 & 2) == 0) { + for (var_r26 = 0; var_r26 < var_r31->unk_26; var_r26++, var_r29++) { + var_r20 = var_r29->unk_48 & 3; + var_r19 = (var_r29->unk_48 >> 2) & 3; + for (var_r25 = 0; var_r25 < 4; var_r25++, var_r28++) { + var_r28->x = (0.25f * var_r20) + lbl_1_data_6D4[var_r25].x; + var_r28->y = (0.25f * var_r19) + lbl_1_data_6D4[var_r25].y; + } + } + } + else { + for (var_r26 = 0; var_r26 < var_r31->unk_26; var_r26++, var_r29++) { + for (var_r25 = 0; var_r25 < 4; var_r25++, var_r28++) { + var_r28->x = 4.0f * lbl_1_data_6D4[var_r25].x; + var_r28->y = 4.0f * lbl_1_data_6D4[var_r25].y; + } + } + } + DCFlushRangeNoSync(var_r31->unk_40, var_r31->unk_26 * 0xC * 4); + DCFlushRangeNoSync(var_r31->unk_44, var_r31->unk_26 * 8 * 4); + DCFlushRangeNoSync(var_r31->unk_3C, var_r31->unk_26 * 0x4C); + PPCSync(); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, var_r31->unk_40, sizeof(Vec)); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &var_r31->unk_3C->unk_44, sizeof(M428DllPlayerUnkStruct2)); // bug? + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX0, var_r31->unk_44, sizeof(Vec2f)); + GXCallDisplayList(var_r31->unk_48, var_r31->unk_34); + if (shadowModelDrawF == 0) { + if ((var_r31->unk_21 & 2) == 0) { + var_r31->unk_28++; + } + if ((var_r31->unk_30 != 0) && (var_r31->unk_30 <= var_r31->unk_28)) { + if ((var_r31->unk_21 & 1) != 0) { + var_r31->unk_28 = 0; + } + var_r31->unk_28 = var_r31->unk_30; + } + var_r31->unk_2C = GlobalCounter; + } + } +} + +void fn_1_13D9C(s16 arg0, s16 arg1, s32 arg2) +{ + if (arg2 == 0) { + fn_1_13EC8(arg0, arg1, 0.0f); + return; + } + fn_1_13EC8(arg0, arg1, 1.0f); +} + +void fn_1_13E14(s16 arg0, s16 arg1, Vec arg2) +{ + M428DllPlayerUnkStruct2 *var_r31; + M428DllPlayerUnk120Struct2 *var_r30; + s32 var_r29; + ModelData *var_r28; + + var_r28 = &Hu3DData[arg0]; + var_r30 = var_r28->unk_120; + if (arg1 != -1) { + var_r31 = &var_r30->unk_3C[arg1]; + var_r31->unk_38 = arg2; + return; + } + for (var_r31 = var_r30->unk_3C, var_r29 = 0; var_r29 < var_r30->unk_26; var_r29++, var_r31++) { + var_r31->unk_38 = arg2; + } +} + +void fn_1_13EC8(s16 arg0, s16 arg1, float arg8) +{ + M428DllPlayerUnkStruct2 *var_r31; + M428DllPlayerUnk120Struct2 *var_r30; + s32 var_r29; + ModelData *var_r28; + + var_r28 = &Hu3DData[arg0]; + var_r30 = var_r28->unk_120; + if (arg1 != -1) { + var_r31 = &var_r30->unk_3C[arg1]; + var_r31->unk_30 = arg8; + return; + } + for (var_r31 = var_r30->unk_3C, var_r29 = 0; var_r29 < var_r30->unk_26; var_r29++, var_r31++) { + var_r31->unk_30 = arg8; + } +} + +s32 fn_1_13F54(s16 arg0, char *arg1, Mtx arg2, s32 arg3) +{ + Mtx sp44; + Mtx sp14; + ModelData *var_r31; + HsfData *var_r30; + + var_r31 = &Hu3DData[arg0]; + var_r30 = var_r31->hsfData; + lbl_1_bss_130 = 0; + if (var_r31->unk_08 != -1) { + lbl_1_bss_134 = 1; + } + else { + lbl_1_bss_134 = 0; + } + mtxRot(sp14, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); + MTXScale(sp44, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + MTXConcat(sp14, sp44, sp44); + mtxTransCat(sp44, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); + MTXConcat(sp44, var_r31->unk_F0, sp44); + if (arg3 != 0) { + MTXConcat(arg2, sp44, sp44); + } + fn_1_14088(var_r30->root, sp44, arg1, arg2); + return lbl_1_bss_130; +} + +void fn_1_14088(HsfObject *arg0, Mtx arg1, char *arg2, Mtx arg3) +{ + Mtx spF8; + Mtx spC8; + Mtx sp98; + Mtx sp68; + Mtx sp38; + Mtx sp8; + HsfTransform *var_r31; + HsfTransform *var_r30; + HsfTransform *var_r29; + HsfObject *var_r28; + HsfObject *var_r27; + u32 var_r25; + u32 var_r24; + u32 var_r23; + + if (lbl_1_bss_130 == 0) { + if (lbl_1_bss_134 != 0) { + var_r31 = &arg0->data.curr; + } + else { + var_r31 = &arg0->data.base; + } + if ((var_r31->scale.x <= 0.0f) && (var_r31->scale.y <= 0.0f) && (var_r31->scale.z <= 0.0f)) { + MTXCopy(arg1, spF8); + OSReport("OBJ MTX CHECK ERROR %s \n", arg0->name); + } + else { + mtxRot(spC8, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); + MTXScale(spF8, var_r31->scale.x, var_r31->scale.y, var_r31->scale.z); + MTXConcat(spC8, spF8, spF8); + mtxTransCat(spF8, var_r31->pos.x, var_r31->pos.y, var_r31->pos.z); + MTXConcat(arg1, spF8, spF8); + } + if (lbl_1_bss_138 != 0) { + OSReport("%s \n", arg0->name); + } + if (strcmp(arg2, arg0->name) == 0) { + MTXCopy(spF8, arg3); + lbl_1_bss_130 = 1; + } + for (var_r25 = 0; var_r25 < arg0->data.childrenCount; var_r25++) { + var_r28 = arg0->data.children[var_r25]; + if (lbl_1_bss_130 == 0) { + if (lbl_1_bss_134 != 0) { + var_r30 = &var_r28->data.curr; + } + else { + var_r30 = &var_r28->data.base; + } + if ((var_r30->scale.x <= 0.0f) && (var_r30->scale.y <= 0.0f) && (var_r30->scale.z <= 0.0f)) { + MTXCopy(spF8, sp68); + OSReport("OBJ MTX CHECK ERROR %s \n", var_r28->name); + } + else { + mtxRot(&sp98[0], var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); + MTXScale(sp68, var_r30->scale.x, var_r30->scale.y, var_r30->scale.z); + MTXConcat(&sp98[0], sp68, sp68); + mtxTransCat(sp68, var_r30->pos.x, var_r30->pos.y, var_r30->pos.z); + MTXConcat(spF8, sp68, sp68); + } + if (lbl_1_bss_138 != 0) { + OSReport("%s \n", var_r28->name); + } + if (strcmp(arg2, var_r28->name) == 0) { + MTXCopy(sp68, arg3); + lbl_1_bss_130 = 1; + } + for (var_r24 = 0; var_r24 < var_r28->data.childrenCount; var_r24++) { + var_r27 = var_r28->data.children[var_r24]; + if (lbl_1_bss_130 == 0) { + if (lbl_1_bss_134 != 0) { + var_r29 = &var_r27->data.curr; + } + else { + var_r29 = &var_r27->data.base; + } + if ((var_r29->scale.x <= 0.0f) && (var_r29->scale.y <= 0.0f) && (var_r29->scale.z <= 0.0f)) { + MTXCopy(sp68, sp8); + OSReport("OBJ MTX CHECK ERROR %s \n", var_r27->name); + } + else { + mtxRot(sp38, var_r29->rot.x, var_r29->rot.y, var_r29->rot.z); + MTXScale(sp8, var_r29->scale.x, var_r29->scale.y, var_r29->scale.z); + MTXConcat(sp38, sp8, sp8); + mtxTransCat(sp8, var_r29->pos.x, var_r29->pos.y, var_r29->pos.z); + MTXConcat(sp68, sp8, sp8); + } + if (lbl_1_bss_138 != 0) { + OSReport("%s \n", var_r27->name); + } + if (strcmp(arg2, var_r27->name) == 0) { + MTXCopy(sp8, arg3); + lbl_1_bss_130 = 1; + } + for (var_r23 = 0; var_r23 < var_r27->data.childrenCount; var_r23++) { + fn_1_14088(var_r27->data.children[var_r23], sp8, arg2, arg3); + } + } + } + } + } + } +} + +void fn_1_14560(s16 arg0) +{ + CameraData *var_r31 = &Hu3DCamera[arg0]; + C_MTXLookAt(lbl_1_bss_23C[arg0], &var_r31->pos, &var_r31->up, &var_r31->target); + GXGetProjectionv(&lbl_1_bss_1BC[arg0].unk_00); + GXGetViewportv(&lbl_1_bss_13C[arg0].unk_00); +} + +void fn_1_145F8(s16 var_r29, Vec *var_r31, float *var_r30) +{ + GXProject(var_r31->x, var_r31->y, var_r31->z, lbl_1_bss_23C[var_r29], &lbl_1_bss_1BC[var_r29].unk_00, &lbl_1_bss_13C[var_r29].unk_00, var_r30, + &var_r30[1], &var_r30[2]); +} diff --git a/src/REL/m429Dll/main.c b/src/REL/m429Dll/main.c index e37af222..01040112 100644 --- a/src/REL/m429Dll/main.c +++ b/src/REL/m429Dll/main.c @@ -403,9 +403,9 @@ void fn_1_1D70(s16 arg0, char *arg1, Vec *arg2, Mtx arg3) var_r30 = &Hu3DData[arg0]; Hu3DModelObjMtxGet(arg0, arg1, spC); - PSMTXConcat(var_r30->unk_F0, spC, spC); + MTXConcat(var_r30->unk_F0, spC, spC); if (NULL != arg3) { - PSMTXCopy(spC, arg3); + MTXCopy(spC, arg3); } arg2->x = spC[0][3]; arg2->y = spC[1][3]; diff --git a/src/REL/m430Dll/main.c b/src/REL/m430Dll/main.c index f7320e52..d848689f 100644 --- a/src/REL/m430Dll/main.c +++ b/src/REL/m430Dll/main.c @@ -118,7 +118,7 @@ void ObjectSetup(void) sp8.x = sp8.z = 0.0f; sp8.y = lbl_1_data_18.z; mtxRot(sp20, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); - PSMTXMultVec(sp20, &sp8, &sp8); + MTXMultVec(sp20, &sp8, &sp8); Hu3DGLightPosAimSetV(lbl_1_bss_26, &sp8, &sp14); Hu3DShadowPosSet(&sp8, &lbl_1_data_34, &sp14); lbl_1_bss_24 = lbl_1_bss_22 = lbl_1_bss_20 = -1; diff --git a/src/REL/m430Dll/player.c b/src/REL/m430Dll/player.c index e42fbd99..ca486592 100644 --- a/src/REL/m430Dll/player.c +++ b/src/REL/m430Dll/player.c @@ -278,8 +278,8 @@ void fn_1_BBC4(Process *process) sp14.x = CenterM[0].x + (CZoomM[0] * (sind(CRotM[0].y) * cosd(CRotM[0].x))); sp14.y = CenterM[0].y + (CZoomM[0] * -sind(CRotM[0].x)); sp14.z = CenterM[0].z + (CZoomM[0] * (cosd(CRotM[0].y) * cosd(CRotM[0].x))); - PSVECSubtract(CenterM, &sp14, &sp8); - PSVECNormalize(&sp8, &sp8); + VECSubtract(CenterM, &sp14, &sp8); + VECNormalize(&sp8, &sp8); HuAudFXListnerSetEX(&sp14, &sp8, 100000.0f, 566.6667f, 0.0f, 300.0f, 300.0f); } @@ -296,8 +296,8 @@ void fn_1_BE24(omObjData *object) sp14.x = CenterM[0].x + (CZoomM[0] * (sind(CRotM[0].y) * cosd(CRotM[0].x))); sp14.y = CenterM[0].y + (CZoomM[0] * -sind(CRotM[0].x)); sp14.z = CenterM[0].z + (CZoomM[0] * (cosd(CRotM[0].y) * cosd(CRotM[0].x))); - PSVECSubtract(CenterM, &sp14, &sp8); - PSVECNormalize(&sp8, &sp8); + VECSubtract(CenterM, &sp14, &sp8); + VECNormalize(&sp8, &sp8); HuAudFXListnerUpdate(&sp14, &sp8); } @@ -1619,7 +1619,7 @@ void fn_1_10948(ModelData *var_r29, Mtx var_r30) Mtx sp8; M430PlayerBss170Struct *var_r31 = var_r29->unk_120; GXLoadPosMtxImm(var_r30, 0); - PSMTXInvXpose(var_r30, sp8); + MTXInvXpose(var_r30, sp8); GXLoadNrmMtxImm(sp8, 0); GXSetNumTevStages(1); GXSetNumTexGens(1); diff --git a/src/REL/m430Dll/water.c b/src/REL/m430Dll/water.c index f9b938a2..4cdcef5c 100644 --- a/src/REL/m430Dll/water.c +++ b/src/REL/m430Dll/water.c @@ -202,10 +202,13 @@ void fn_1_4CB4(omObjData *object) u32 spC[1] = { DATA_MAKE_NUM(DATADIR_M430, 0x01) }; s32 sp8[1]; - u32 sp90[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x0B), DATA_MAKE_NUM(DATADIR_M430, 0x0C), DATA_MAKE_NUM(DATADIR_M430, 0x0D), DATA_MAKE_NUM(DATADIR_M430, 0x0E) }; - u32 sp80[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x02), DATA_MAKE_NUM(DATADIR_M430, 0x02), DATA_MAKE_NUM(DATADIR_M430, 0x03), DATA_MAKE_NUM(DATADIR_M430, 0x03) }; + u32 sp90[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x0B), DATA_MAKE_NUM(DATADIR_M430, 0x0C), DATA_MAKE_NUM(DATADIR_M430, 0x0D), + DATA_MAKE_NUM(DATADIR_M430, 0x0E) }; + u32 sp80[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x02), DATA_MAKE_NUM(DATADIR_M430, 0x02), DATA_MAKE_NUM(DATADIR_M430, 0x03), + DATA_MAKE_NUM(DATADIR_M430, 0x03) }; u32 sp70[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x04), DATA_MAKE_NUM(DATADIR_M430, 0x04), 0, 0 }; - u32 sp60[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x06), DATA_MAKE_NUM(DATADIR_M430, 0x07), DATA_MAKE_NUM(DATADIR_M430, 0x08), DATA_MAKE_NUM(DATADIR_M430, 0x09) }; + u32 sp60[4] = { DATA_MAKE_NUM(DATADIR_M430, 0x06), DATA_MAKE_NUM(DATADIR_M430, 0x07), DATA_MAKE_NUM(DATADIR_M430, 0x08), + DATA_MAKE_NUM(DATADIR_M430, 0x09) }; s32 sp50[4]; s32 sp40[4]; s32 sp30[4]; @@ -481,10 +484,10 @@ void fn_1_6180(M430DllWork *work) sp28.x = sp1C.x; sp28.y = 0.0f; sp28.z = sp1C.z - 450000.0f; - PSVECSubtract(&sp28, &sp1C, &sp10); - PSVECNormalize(&sp10, &sp10); - PSVECScale(&sp10, &sp10, 6000.0f); - PSVECAdd(&sp1C, &sp10, &sp28); + VECSubtract(&sp28, &sp1C, &sp10); + VECNormalize(&sp10, &sp10); + VECScale(&sp10, &sp10, 6000.0f); + VECAdd(&sp1C, &sp10, &sp28); Hu3DModelPosSetV(work->unk_18, &sp28); if ((fn_1_4070() >= 2) && (fn_1_4030() != 0)) { if ((lbl_1_bss_40 != 0) && (lbl_1_bss_48 >= work->unk_04.x)) { @@ -494,10 +497,10 @@ void fn_1_6180(M430DllWork *work) sp28.x = 0.0f; sp28.y = 0.0f; sp28.z = work->unk_20 - fn_1_7FBC(work->unk_00); - PSVECSubtract(&sp28, &sp1C, &sp10); - PSVECNormalize(&sp10, &sp10); - PSVECScale(&sp10, &sp10, 5000.0f); - PSVECAdd(&sp1C, &sp10, &sp28); + VECSubtract(&sp28, &sp1C, &sp10); + VECNormalize(&sp10, &sp10); + VECScale(&sp10, &sp10, 5000.0f); + VECAdd(&sp1C, &sp10, &sp28); sp28.y += 237.5f; Hu3DModelPosSet(work->unk_1A, 0.0f, 593.75f, work->unk_20); var_r30 = ((ParticleData *)Hu3DData[work->unk_1A].unk_120)->unk_48; @@ -742,8 +745,8 @@ void fn_1_732C(omObjData *object, M430DllUnkStruct2 *arg1) var_r29 = 1; } else { - PSVECSubtract(&arg1->unk_18, &arg1->unk_0C, &sp8); - var_f31 = PSVECMag(&sp8); + VECSubtract(&arg1->unk_18, &arg1->unk_0C, &sp8); + var_f31 = VECMag(&sp8); if (var_f31 < 50.0f) { var_r29 = 1; } @@ -758,7 +761,7 @@ void fn_1_732C(omObjData *object, M430DllUnkStruct2 *arg1) arg1->unk_38 = 200.0f + frandmod(0x258); arg1->unk_28 = 400.0f; } - PSVECSubtract(&arg1->unk_18, &arg1->unk_0C, &sp8); + VECSubtract(&arg1->unk_18, &arg1->unk_0C, &sp8); arg1->unk_30 = atan2d(sp8.x, sp8.z); arg1->unk_2C = fn_1_48B0(arg1->unk_2C, arg1->unk_30, 0.08f); arg1->unk_28 += 0.05f * (300.0f - arg1->unk_28); @@ -822,7 +825,7 @@ void fn_1_7848(omObjData *object) var_r31->unk_08.x = var_f31 * sind(var_f30); var_r31->unk_08.y = 0.0f; var_r31->unk_08.z = var_f31 * cosd(var_f30); - PSVECAdd(&var_r31->unk_14, &var_r31->unk_08, &var_r31->unk_08); + VECAdd(&var_r31->unk_14, &var_r31->unk_08, &var_r31->unk_08); var_r31->unk_38 = 60.0f - (0.13483146f * var_f31); var_r31->unk_28 = frandmod(0x168); if (frandmod(0x3E8) < 0x1F4) { @@ -857,7 +860,7 @@ void fn_1_7CAC(omObjData *object) if (fn_1_4070() >= 4) { for (var_r29 = 0; var_r29 < var_r28; var_r29++, work++) { sp8 = 0; - PSVECSubtract(&work->unk_14, &work->unk_08, &spC); + VECSubtract(&work->unk_14, &work->unk_08, &spC); work->unk_2C = atan2d(spC.x, spC.z); work->unk_28 = fn_1_48B0(work->unk_28, work->unk_2C + work->unk_3C, 0.08f); work->unk_24 += (0.05f * (600.0f - work->unk_24)); @@ -883,9 +886,9 @@ void fn_1_7EAC(omObjData *object, M430DllWork2 *var_r31) for (var_r30 = 0; var_r30 < var_r28; var_r30++, var_r31++) { Hu3DModelPosSet(var_r31->unk_00, var_r31->unk_08.x, var_r31->unk_08.y, var_r31->unk_08.z + var_f31); var_r29 = &Hu3DData[var_r31->unk_00].unk_F0; - PSMTXRotRad(*var_r29, 0x59, 0.017453292f * var_r31->unk_28); - PSMTXRotRad(sp8, 0x5A, 0.017453292f * var_r31->unk_38); - PSMTXConcat(*var_r29, sp8, *var_r29); + MTXRotRad(*var_r29, 0x59, 0.017453292f * var_r31->unk_28); + MTXRotRad(sp8, 0x5A, 0.017453292f * var_r31->unk_38); + MTXConcat(*var_r29, sp8, *var_r29); Hu3DModelAttrReset(var_r31->unk_00, HU3D_ATTR_DISPOFF); } } @@ -1062,8 +1065,8 @@ void fn_1_86B4(omObjData *object, M430DllBss60Struct *arg1) sp14.z = 2000.0f + arg1->unk_24; if (lbl_1_bss_5C != 0) { for (var_r29 = 0; var_r29 < 0x1B8; var_r29++) { - PSVECSubtract(var_r28, &sp14, &sp8); - var_f31 = 0.00025f * PSVECMag(&sp8); + VECSubtract(var_r28, &sp14, &sp8); + var_f31 = 0.00025f * VECMag(&sp8); if (var_f31 < 0.3f) { var_r30->a = -1; } @@ -1080,8 +1083,8 @@ void fn_1_86B4(omObjData *object, M430DllBss60Struct *arg1) } else { for (var_r29 = 0; var_r29 < 0x1B8; var_r29++) { - PSVECSubtract(var_r28, &sp14, &sp8); - var_f31 = 0.00025f * PSVECMag(&sp8); + VECSubtract(var_r28, &sp14, &sp8); + var_f31 = 0.00025f * VECMag(&sp8); if (var_f31 < 0.25f) { var_r30->a = -0x1A; } @@ -1105,7 +1108,7 @@ void fn_1_86B4(omObjData *object, M430DllBss60Struct *arg1) var_r29 = (0x14 - var_r23) * 0x16; var_r27 = &arg1->unk_30[0x1B8 - var_r29]; while (var_r29-- != 0) { - PSVECAdd(var_r28, var_r27, var_r26); + VECAdd(var_r28, var_r27, var_r26); var_r28++; var_r27++; var_r26++; @@ -1113,7 +1116,7 @@ void fn_1_86B4(omObjData *object, M430DllBss60Struct *arg1) var_r29 = var_r23 * 0x16; var_r27 = arg1->unk_30; while (var_r29-- != 0) { - PSVECAdd(var_r28, var_r27, var_r26); + VECAdd(var_r28, var_r27, var_r26); var_r28++; var_r27++; var_r26++; @@ -1186,7 +1189,7 @@ void fn_1_8CE0(ModelData *model, Mtx matrix) } var_r31->unk_10 = 1; fn_1_963C(model, matrix, var_r31->unk_00); - PSMTXCopy(matrix, sp134); + MTXCopy(matrix, sp134); if (fn_1_4030() != 0) { var_f30 = 1.0f; var_f31 = fn_1_BB54(var_r31->unk_00); @@ -1195,12 +1198,12 @@ void fn_1_8CE0(ModelData *model, Mtx matrix) var_f30 = 1.5f; var_f31 = 0.0f; } - PSMTXTrans(sp164, var_f31 - fn_1_BB54(var_r31->unk_00), 0.0f, 0.0f); - PSMTXConcat(sp134, sp164, sp134); - PSMTXScale(sp194, var_f30, 1.0f, 1.0f); - PSMTXConcat(sp134, sp194, sp134); + MTXTrans(sp164, var_f31 - fn_1_BB54(var_r31->unk_00), 0.0f, 0.0f); + MTXConcat(sp134, sp164, sp134); + MTXScale(sp194, var_f30, 1.0f, 1.0f); + MTXConcat(sp134, sp194, sp134); GXLoadPosMtxImm(sp134, 0); - PSMTXInvXpose(sp134, sp194); + MTXInvXpose(sp134, sp194); GXLoadNrmMtxImm(sp194, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -1221,25 +1224,25 @@ void fn_1_8CE0(ModelData *model, Mtx matrix) else { C_MTXLightPerspective(sp104, 41.5f, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); } - PSMTXInverse(Hu3DCameraMtx, spD4); - PSMTXConcat(spD4, sp134, spD4); - PSMTXConcat(sp104, Hu3DCameraMtx, spA4); - PSMTXConcat(spA4, spD4, spD4); + MTXInverse(Hu3DCameraMtx, spD4); + MTXConcat(spD4, sp134, spD4); + MTXConcat(sp104, Hu3DCameraMtx, spA4); + MTXConcat(spA4, spD4, spD4); GXLoadTexMtxImm(spD4, 0x1E, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); C_MTXLightPerspective(sp104, 70.0f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, sp74); - PSMTXConcat(sp74, sp134, sp74); - PSMTXConcat(sp104, Hu3DCameraMtx, sp44); - PSMTXConcat(sp44, sp74, sp74); + MTXInverse(Hu3DCameraMtx, sp74); + MTXConcat(sp74, sp134, sp74); + MTXConcat(sp104, Hu3DCameraMtx, sp44); + MTXConcat(sp44, sp74, sp74); GXLoadTexMtxImm(sp74, 0x24, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX3x4, GX_TG_POS, 0x24, GX_FALSE, 0x7D); - PSMTXRotRad(sp164, 0x58, 1.5707964f); + MTXRotRad(sp164, 0x58, 1.5707964f); var_f31 = 0.00075f * var_f30; - PSMTXScale(sp194, var_f31, -0.003f, 0.00075f); - PSMTXConcat(sp164, sp194, sp164); - PSMTXTrans(sp194, (var_r31->unk_1C & 0x3FF) / (1024.0f * var_f31), 0.0f, (0.7f * var_r31->unk_28) - (0.3f * var_r31->unk_24)); - PSMTXConcat(sp164, sp194, sp164); + MTXScale(sp194, var_f31, -0.003f, 0.00075f); + MTXConcat(sp164, sp194, sp164); + MTXTrans(sp194, (var_r31->unk_1C & 0x3FF) / (1024.0f * var_f31), 0.0f, (0.7f * var_r31->unk_28) - (0.3f * var_r31->unk_24)); + MTXConcat(sp164, sp194, sp164); sp164[0][1] = -0.001f; GXLoadTexMtxImm(sp164, 0x21, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); @@ -1247,12 +1250,12 @@ void fn_1_8CE0(ModelData *model, Mtx matrix) GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP1); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(0, 0, GX_TRUE, GX_FALSE, 1); - PSMTXScale(sp164, -0.25f, -0.5f, 0.5f); + MTXScale(sp164, -0.25f, -0.5f, 0.5f); GXSetIndTexMtx(GX_ITM_0, (float(*)[3])sp164, -4); GXSetIndTexOrder(GX_INDTEXSTAGE1, GX_TEXCOORD1, GX_TEXMAP1); GXSetIndTexCoordScale(GX_INDTEXSTAGE1, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(1, 1, GX_TRUE, GX_FALSE, 2); - PSMTXScale(sp164, 0.4f, 0.5f, 0.5f); + MTXScale(sp164, 0.4f, 0.5f, 0.5f); GXSetIndTexMtx(GX_ITM_1, (float(*)[3])sp164, -1); GXSetNumTevStages(2); GXSetTevColor(GX_TEVREG0, sp14); @@ -1320,10 +1323,10 @@ void fn_1_963C(ModelData *model, Mtx matrix, u32 var_r31) var_f30 = 1.5f; var_f31 = 0.0f; } - PSMTXTrans(spD0, var_f31, 0.0f, ((lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24) - 2500.0f) - 2000.0f); - PSMTXScale(sp100, var_f30, 1.0f, 1.0f); - PSMTXConcat(spD0, sp100, spD0); - PSMTXConcat(Hu3DCameraMtx, spD0, spA0); + MTXTrans(spD0, var_f31, 0.0f, ((lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24) - 2500.0f) - 2000.0f); + MTXScale(sp100, var_f30, 1.0f, 1.0f); + MTXConcat(spD0, sp100, spD0); + MTXConcat(Hu3DCameraMtx, spD0, spA0); GXLoadPosMtxImm(spA0, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -1331,26 +1334,26 @@ void fn_1_963C(ModelData *model, Mtx matrix, u32 var_r31) HuSprTexLoad(lbl_1_bss_148, 0, 1, GX_CLAMP, GX_CLAMP, GX_LINEAR); GXSetNumTexGens(2); C_MTXLightPerspective(sp70, 70.0f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, sp40); - PSMTXConcat(sp40, spA0, sp40); - PSMTXConcat(sp70, Hu3DCameraMtx, sp10); - PSMTXConcat(sp10, sp40, sp40); + MTXInverse(Hu3DCameraMtx, sp40); + MTXConcat(sp40, spA0, sp40); + MTXConcat(sp70, Hu3DCameraMtx, sp10); + MTXConcat(sp10, sp40, sp40); GXLoadTexMtxImm(sp40, 0x21, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX3x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); - PSMTXRotRad(spD0, 0x58, 1.5707964f); + MTXRotRad(spD0, 0x58, 1.5707964f); var_f31 = 0.00075f * var_f30; - PSMTXScale(sp100, var_f31, -0.003f, 0.00075f); - PSMTXConcat(spD0, sp100, spD0); - PSMTXTrans(sp100, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (1024.0f * var_f31), 0.0f, + MTXScale(sp100, var_f31, -0.003f, 0.00075f); + MTXConcat(spD0, sp100, spD0); + MTXTrans(sp100, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (1024.0f * var_f31), 0.0f, 0.3f * (lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24)); - PSMTXConcat(spD0, sp100, spD0); + MTXConcat(spD0, sp100, spD0); GXLoadTexMtxImm(spD0, 0x1E, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); GXSetNumIndStages(1); GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, GX_TEXMAP0); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(0, 0, GX_TRUE, GX_FALSE, 1); - PSMTXScale(spD0, 0.5f, 0.6f, 0.6f); + MTXScale(spD0, 0.5f, 0.6f, 0.6f); GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spD0, -1); GXSetNumTevStages(1); GXSetTevColor(GX_TEVREG0, spC); @@ -1432,18 +1435,18 @@ void fn_1_9C90(ModelData *model, Mtx matrix) sp28.x = sp1C.x; sp28.y = 0.0f; sp28.z = sp1C.z - 450000.0f; - PSVECSubtract(&sp28, &sp1C, &sp10); - PSVECNormalize(&sp10, &sp10); - PSVECScale(&sp10, &sp10, 8000.0f); - PSVECAdd(&sp1C, &sp10, &sp28); - PSMTXTrans(spF4, sp28.x, sp28.y, sp28.z); + VECSubtract(&sp28, &sp1C, &sp10); + VECNormalize(&sp10, &sp10); + VECScale(&sp10, &sp10, 8000.0f); + VECAdd(&sp1C, &sp10, &sp28); + MTXTrans(spF4, sp28.x, sp28.y, sp28.z); var_f31 = 1.0f; if (fn_1_4030() == 0) { var_f31 = 1.5f; - PSMTXScale(sp124, var_f31, 1.0f, 1.0f); - PSMTXConcat(spF4, sp124, spF4); + MTXScale(sp124, var_f31, 1.0f, 1.0f); + MTXConcat(spF4, sp124, spF4); } - PSMTXConcat(Hu3DCameraMtx, spF4, spC4); + MTXConcat(Hu3DCameraMtx, spF4, spC4); GXLoadPosMtxImm(spC4, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -1451,24 +1454,24 @@ void fn_1_9C90(ModelData *model, Mtx matrix) HuSprTexLoad(lbl_1_bss_148, 0, 1, GX_CLAMP, GX_CLAMP, GX_LINEAR); GXSetNumTexGens(2); C_MTXLightPerspective(sp94, 70.0f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f); - PSMTXInverse(Hu3DCameraMtx, sp64); - PSMTXConcat(sp64, spC4, sp64); - PSMTXConcat(sp94, Hu3DCameraMtx, sp34); - PSMTXConcat(sp34, sp64, sp64); + MTXInverse(Hu3DCameraMtx, sp64); + MTXConcat(sp64, spC4, sp64); + MTXConcat(sp94, Hu3DCameraMtx, sp34); + MTXConcat(sp34, sp64, sp64); GXLoadTexMtxImm(sp64, 0x21, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX3x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); var_f30 = 0.00075f * var_f31; - PSMTXScale(spF4, var_f30, -0.005f, 0.00075f); - PSMTXTrans(sp124, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (1024.0f * var_f30), + MTXScale(spF4, var_f30, -0.005f, 0.00075f); + MTXTrans(sp124, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (1024.0f * var_f30), 0.03f * -(lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24), 0.0f); - PSMTXConcat(spF4, sp124, spF4); + MTXConcat(spF4, sp124, spF4); GXLoadTexMtxImm(spF4, 0x1E, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); GXSetNumIndStages(1); GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, GX_TEXMAP0); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); GXSetTevIndWarp(0, 0, GX_TRUE, GX_FALSE, 1); - PSMTXScale(spF4, 0.5f, 0.6f, 0.6f); + MTXScale(spF4, 0.5f, 0.6f, 0.6f); GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spF4, -1); GXSetNumTevStages(1); GXSetTevColor(GX_TEVREG0, spC); @@ -1522,37 +1525,37 @@ void fn_1_A3A8(ModelData *model, Mtx matrix) var_f31 = 0.0f; } if (lbl_1_bss_5C != 0) { - PSMTXTrans(sp18, var_f31, 0.0f, 300.0f + (lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24)); + MTXTrans(sp18, var_f31, 0.0f, 300.0f + (lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24)); GXSetTevColor(GX_TEVREG0, sp10); } else { - PSMTXTrans(sp18, var_f31, -150.0f, lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24); + MTXTrans(sp18, var_f31, -150.0f, lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24); GXSetTevColor(GX_TEVREG0, sp14); } - PSMTXScale(sp48, var_f30, 1.0f, 1.0f); - PSMTXConcat(sp18, sp48, sp18); - PSMTXConcat(Hu3DCameraMtx, sp18, sp18); + MTXScale(sp48, var_f30, 1.0f, 1.0f); + MTXConcat(sp18, sp48, sp18); + MTXConcat(Hu3DCameraMtx, sp18, sp18); GXLoadPosMtxImm(sp18, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); HuSprTexLoad(lbl_1_bss_144, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); HuSprTexLoad(lbl_1_bss_140, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); GXSetNumTexGens(2); - PSMTXRotRad(sp18, 0x58, 1.5707964f); + MTXRotRad(sp18, 0x58, 1.5707964f); var_f31 = 0.004f * var_f30; - PSMTXScale(sp48, var_f31, -0.004f, 0.004f); - PSMTXConcat(sp18, sp48, sp18); - PSMTXTrans(sp48, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (512.0f * var_f31), 0.0f, + MTXScale(sp48, var_f31, -0.004f, 0.004f); + MTXConcat(sp18, sp48, sp18); + MTXTrans(sp48, (lbl_1_bss_60[var_r31].unk_1C & 0x3FF) / (512.0f * var_f31), 0.0f, (1.2499999f * (lbl_1_bss_60[var_r31].unk_1C % 400)) + (lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24)); - PSMTXConcat(sp18, sp48, sp18); + MTXConcat(sp18, sp48, sp18); GXLoadTexMtxImm(sp18, 0x1E, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); - PSMTXRotRad(sp18, 0x58, 1.5707964f); + MTXRotRad(sp18, 0x58, 1.5707964f); var_f31 = 0.004f * var_f30; - PSMTXScale(sp48, var_f31, -0.004f, 0.004f); - PSMTXConcat(sp18, sp48, sp18); - PSMTXTrans(sp48, (lbl_1_bss_60[var_r31].unk_1C % 300) / (150.0f * var_f31), 0.0f, lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24); - PSMTXConcat(sp18, sp48, sp18); + MTXScale(sp48, var_f31, -0.004f, 0.004f); + MTXConcat(sp18, sp48, sp18); + MTXTrans(sp48, (lbl_1_bss_60[var_r31].unk_1C % 300) / (150.0f * var_f31), 0.0f, lbl_1_bss_60[var_r31].unk_28 + lbl_1_bss_60[var_r31].unk_24); + MTXConcat(sp18, sp48, sp18); GXLoadTexMtxImm(sp18, 0x21, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, 0x21, GX_FALSE, 0x7D); GXSetNumTevStages(2); @@ -1635,8 +1638,8 @@ void fn_1_AD04(ModelData *model, ParticleData *particle, Mtx matrix) } for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); - PSVECScale(&var_r31->unk08, &var_r31->unk08, 0.97f); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECScale(&var_r31->unk08, &var_r31->unk08, 0.97f); if (var_r31->unk00_s16 < 24.0f) { var_r31->unk40.a = 0.9f * var_r31->unk40.a; } @@ -1720,7 +1723,7 @@ void fn_1_B394(ModelData *model, ParticleData *var_r30, Mtx matrix) for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { var_r31->unk00_s16--; - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk2C += 0.5f; if (var_r31->unk00_s16 < 30.0) { var_r31->unk40.a = 0.98f * var_r31->unk40.a; @@ -1760,7 +1763,7 @@ void fn_1_B570(s32 arg0, Vec *arg1, float arg8, float arg9, Vec *arg2) if (!(frandmod(0x3E8) > (1000.0f * arg9))) { var_r27 = 2; var_f28 = 40.0f; - PSVECScale(arg2, &sp1C, 0.2f); + VECScale(arg2, &sp1C, 0.2f); sp1C.x = 0.0f; for (var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 == 0) { @@ -1778,7 +1781,7 @@ void fn_1_B570(s32 arg0, Vec *arg1, float arg8, float arg9, Vec *arg2) var_r31->unk08.x = sp28.x * var_f31; var_r31->unk08.z = sp28.z * var_f31; var_r31->unk08.y = 0.0f; - PSVECAdd(&var_r31->unk08, &sp1C, &var_r31->unk08); + VECAdd(&var_r31->unk08, &sp1C, &var_r31->unk08); var_f31 = 0.001f * frandmod(0x3E8); var_f31 += (1.0f - var_f31) * (0.3f * arg9); var_r31->unk30 = frandmod(0x168); diff --git a/src/REL/m431Dll/main.c b/src/REL/m431Dll/main.c index 44ae5974..4aec497d 100644 --- a/src/REL/m431Dll/main.c +++ b/src/REL/m431Dll/main.c @@ -1274,7 +1274,7 @@ void fn_1_4028(Work2110 *arg0) temp_r31->unk18++; temp_f31 = temp_r31->unk18 / (VERSION_NTSC ? 54.0f : 45.0f); if (temp_f31 >= 1.0f) { - temp_r31->unk18 = VERSION_NTSC ? 54 : 45; + temp_r31->unk18 = VERSION_NTSC ? 54 : 45; temp_f31 = 1.0f; } temp_f31 = cosd(temp_f31 * 90.0f); diff --git a/src/REL/m433Dll/main.c b/src/REL/m433Dll/main.c index df35b851..6e36fe20 100644 --- a/src/REL/m433Dll/main.c +++ b/src/REL/m433Dll/main.c @@ -395,12 +395,12 @@ void fn_1_227C(Vec *arg0, Vec *arg1) { Vec sp10; - PSVECSubtract(arg1, arg0, &sp10); + VECSubtract(arg1, arg0, &sp10); Center = *arg1; CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); CRot.y = atan2d(-sp10.x, -sp10.z); CRot.z = 0.0f; - CZoom = PSVECMag(&sp10); + CZoom = VECMag(&sp10); } void fn_1_2484(float arg8, float arg9, float argA, float argB, float argC, float argD) diff --git a/src/REL/m433Dll/map.c b/src/REL/m433Dll/map.c index 57695003..40aab323 100644 --- a/src/REL/m433Dll/map.c +++ b/src/REL/m433Dll/map.c @@ -779,18 +779,18 @@ void fn_1_541C(Mtx arg0, float arg8, float arg9, float argA) Mtx sp8; if (argA != 0.0f) { - PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + MTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); } else { - PSMTXIdentity(arg0); + MTXIdentity(arg0); } if (arg8 != 0.0f) { - PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); - PSMTXConcat(sp38, arg0, arg0); + MTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + MTXConcat(sp38, arg0, arg0); } if (arg9 != 0.0f) { - PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); - PSMTXConcat(sp8, arg0, arg0); + MTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + MTXConcat(sp8, arg0, arg0); } } diff --git a/src/REL/m433Dll/player.c b/src/REL/m433Dll/player.c index 21b2ff60..7b69466d 100644 --- a/src/REL/m433Dll/player.c +++ b/src/REL/m433Dll/player.c @@ -629,7 +629,7 @@ void fn_1_60C0(omObjData *object) if (work->unk_04 >= 0) { HuAudFXPlay(lbl_1_data_150[work->unk_04][0]); } - PSVECSubtract(&var_r28->unk_128, &work->unk_128, &spC); + VECSubtract(&var_r28->unk_128, &work->unk_128, &spC); work->unk_A8 = atan2d(spC.x, spC.z); work->unk_AC = 0.15f; work->unk_B0 = 0.0f; @@ -686,7 +686,7 @@ void fn_1_60C0(omObjData *object) } break; } - PSVECAdd(&work->unk_128, &work->unk_134, &work->unk_128); + VECAdd(&work->unk_128, &work->unk_134, &work->unk_128); if (fn_1_10ECC(work->unk_14) >= 2) { fn_1_B194(object); } @@ -716,7 +716,7 @@ void fn_1_682C(omObjData *object) Vec sp40[2] = { { 130.0f, 0.0f, -50.0f }, { 250.0f, 0.0f, 50.0f } }; Vec sp28[2] = { { 150.0f, 0.0f, 100.0f }, { 300.0f, 0.0f, -100.0f } }; var_r27 = work->unk_14C->data; - PSVECAdd(&work->unk_128, &work->unk_134, &work->unk_128); + VECAdd(&work->unk_128, &work->unk_134, &work->unk_128); fn_1_B194(object); fn_1_722C(object); switch (work->unk_74) { @@ -782,15 +782,15 @@ void fn_1_682C(omObjData *object) break; case 1: if (work->unk_84 == 1) { - PSVECSubtract(&work->unk_140, &work->unk_128, &sp10); + VECSubtract(&work->unk_140, &work->unk_128, &sp10); sp10.y = 0.0f; - var_f31 = PSVECMag(&sp10); + var_f31 = VECMag(&sp10); if (var_f31 < 20.0f) { var_f31 = 0.01f; work->unk_84++; } else { - if (PSVECMag(&sp10) >= 100.0f) { + if (VECMag(&sp10) >= 100.0f) { var_f31 = 100.0f; } var_f31 = 0.2f + (0.008f * var_f31); @@ -826,14 +826,14 @@ void fn_1_682C(omObjData *object) } break; case 2: - PSVECSubtract(&work->unk_140, &work->unk_128, &sp10); + VECSubtract(&work->unk_140, &work->unk_128, &sp10); sp10.y = 0.0f; - var_f31 = PSVECMag(&sp10); + var_f31 = VECMag(&sp10); if (var_f31 < 10.0f) { var_f31 = 0.01f; } else { - if (PSVECMag(&sp10) >= 100.0f) { + if (VECMag(&sp10) >= 100.0f) { var_f31 = 100.0f; } var_f31 = 0.2f + (0.008f * var_f31); @@ -875,7 +875,7 @@ void fn_1_682C(omObjData *object) sp1C.x = Center.x + (CZoom * (sind(CRot.y) * cosd(CRot.x))); sp1C.y = Center.y + (CZoom * -sind(CRot.x)); sp1C.z = Center.z + (CZoom * (cosd(CRot.y) * cosd(CRot.x))); - PSVECSubtract(&sp1C, &work->unk_128, &sp10); + VECSubtract(&sp1C, &work->unk_128, &sp10); work->unk_A8 = atan2d(sp10.x, sp10.z); } if (fn_1_B6E0(object) != 0) { @@ -1060,10 +1060,10 @@ void fn_1_74D4(omObjData *object) } } if ((work->unk_14 == fn_1_107B0(&sp1C)) && (fn_1_10900() >= (60.0f * (0.8f - (0.4f * work->unk_C0)))) && (work->unk_6C != 0)) { - PSVECSubtract(&sp1C, &work->unk_128, &sp10); + VECSubtract(&sp1C, &work->unk_128, &sp10); sp10.y = 0.0f; - var_f31 = PSVECMag(&sp10); - if (PSVECMag(&sp10) >= 20.0f) { + var_f31 = VECMag(&sp10); + if (VECMag(&sp10) >= 20.0f) { if (var_f31 >= 50.0f) { var_f31 = 50.0f; } @@ -1076,9 +1076,9 @@ void fn_1_74D4(omObjData *object) var_r29 = 0; } if (work->unk_F8 != 0) { - PSVECSubtract(&work->unk_108, &work->unk_128, &sp10); + VECSubtract(&work->unk_108, &work->unk_128, &sp10); sp10.y = 0.0f; - var_f31 = PSVECMag(&sp10); + var_f31 = VECMag(&sp10); if (var_f31 >= 10.0f) { if (var_f31 >= 50.0f) { var_f31 = 50.0f; @@ -1096,9 +1096,9 @@ void fn_1_74D4(omObjData *object) var_r29 = 0; } if (var_r29 != 0) { - PSVECSubtract(&work->unk_FC, &work->unk_128, &sp10); + VECSubtract(&work->unk_FC, &work->unk_128, &sp10); sp10.y = 0.0f; - var_f31 = PSVECMag(&sp10); + var_f31 = VECMag(&sp10); var_f31 -= 100.0f * (1.25f * (2.0f - work->unk_C0)); if (var_f31 >= 10.0f) { if (var_f31 >= 70.0f) { @@ -1121,9 +1121,9 @@ void fn_1_74D4(omObjData *object) if (work->unk_14 == fn_1_10740(&sp1C)) { if (work->unk_68 == 0) { if (fn_1_11004(work->unk_14, work->unk_18) != 0) { - PSVECSubtract(&sp1C, &work->unk_128, &sp10); + VECSubtract(&sp1C, &work->unk_128, &sp10); sp10.y = 0.0f; - var_f31 = PSVECMag(&sp10); + var_f31 = VECMag(&sp10); if (var_f31 >= 30.000002f) { if (var_f31 >= 70.0f) { var_f31 = 70.0f; @@ -1159,9 +1159,9 @@ void fn_1_74D4(omObjData *object) else { if (fn_1_10614(&sp1C) != 0) { if (work->unk_E8 != 0) { - PSVECSubtract(&work->unk_114, &sp1C, &sp10); + VECSubtract(&work->unk_114, &sp1C, &sp10); sp10.y = 0.0f; - var_f31 = PSVECMag(&sp10); + var_f31 = VECMag(&sp10); if (var_f31 < 0.05f) { work->unk_DC = 0.0f; work->unk_E0 = 0.0f; @@ -1219,12 +1219,12 @@ void fn_1_8408(omObjData *object) if ((work->unk_14 == fn_1_107B0(&sp14)) && (fn_1_108C4() >= 12.0f)) { if (((var_r30->unk_6C == 0) && (work->unk_6C == 0)) || (fn_1_108C4() < 0x3E8)) { if ((work->unk_30 == 0) || (var_r30->unk_30 == 0)) { - PSVECSubtract(&sp14, &work->unk_128, &sp8); + VECSubtract(&sp14, &work->unk_128, &sp8); sp8.y = 0.0f; - var_f31 = PSVECMag(&sp8) - (100.0f * (2.0f * work->unk_C0)); - PSVECSubtract(&sp14, &var_r30->unk_128, &sp8); + var_f31 = VECMag(&sp8) - (100.0f * (2.0f * work->unk_C0)); + VECSubtract(&sp14, &var_r30->unk_128, &sp8); sp8.y = 0.0f; - var_f30 = PSVECMag(&sp8) - (100.0f * (2.0f * var_r30->unk_C0)); + var_f30 = VECMag(&sp8) - (100.0f * (2.0f * var_r30->unk_C0)); if ((work->unk_30 != 0) || (work->unk_60 != 0)) { var_f31 = 2000.0f; } @@ -1333,10 +1333,10 @@ s32 fn_1_8938(u32 var_r27, Vec *var_r29) for (var_r30 = 0; var_r30 <= 0xA; var_r30++) { sp14.x = 230.0f; for (var_r31 = 0; var_r31 <= 0xA; var_r31++) { - PSVECSubtract(&sp14, &sp2C[0], &sp20); - var_f31 = PSVECMag(&sp20); - PSVECSubtract(&sp14, &sp2C[1], &sp20); - var_f31 *= PSVECMag(&sp20); + VECSubtract(&sp14, &sp2C[0], &sp20); + var_f31 = VECMag(&sp20); + VECSubtract(&sp14, &sp2C[1], &sp20); + var_f31 *= VECMag(&sp20); if (var_f31 > var_f30) { var_f30 = var_f31; sp8 = sp14; @@ -1415,7 +1415,7 @@ void fn_1_8BD0(omObjData *object) } if ((var_r29 != 0) && (work->unk_24 == 0.0f)) { fn_1_10B20(0.0f, &sp14); - PSVECSubtract(&sp14, &work->unk_128, &sp8); + VECSubtract(&sp14, &work->unk_128, &sp8); work->unk_A8 = atan2d(sp8.x, sp8.z); work->unk_AC = 0.1f; work->unk_B0 = 0.0f; @@ -1569,9 +1569,9 @@ void fn_1_9688(omObjData *object) work->unk_140 = sp2C; var_f31 = fn_1_10848(); if ((var_f31 <= 0.8f) && (var_f31 >= 0.02f) && (var_r29->unk_64 == 0)) { - PSVECSubtract(&sp2C, &work->unk_128, &sp20); + VECSubtract(&sp2C, &work->unk_128, &sp20); sp20.y = 0.0f; - var_f30 = PSVECMag(&sp20); + var_f30 = VECMag(&sp20); work->unk_98 = var_f30; if (var_f30 <= 200.0f) { if ((var_f31 >= 0.2f) && (var_f30 <= 70.0f) && (var_f31 >= (0.2f + (0.001f * var_f30))) && (fn_1_10FDC() >= 1)) { @@ -1626,7 +1626,7 @@ void fn_1_9688(omObjData *object) } work->unk_90 = 60.0f * var_f31; } - PSVECSubtract(&sp2C, &work->unk_128, &sp20); + VECSubtract(&sp2C, &work->unk_128, &sp20); work->unk_A8 = atan2d(sp20.x, sp20.z); work->unk_AC = 0.2f; work->unk_B0 = 0.0f; @@ -1664,7 +1664,7 @@ void fn_1_9688(omObjData *object) } work->unk_64 = 0; fn_1_B4D4(object, 9); - PSVECSubtract(&sp2C, &work->unk_128, &sp20); + VECSubtract(&sp2C, &work->unk_128, &sp20); work->unk_A8 = atan2d(sp20.x, sp20.z); work->unk_AC = 0.1f; work->unk_90 = 0x186A0; @@ -1727,7 +1727,7 @@ void fn_1_9688(omObjData *object) } work->unk_64 = 0; fn_1_B4D4(object, 6); - PSVECSubtract(&sp2C, &work->unk_128, &sp20); + VECSubtract(&sp2C, &work->unk_128, &sp20); work->unk_A8 = atan2d(sp20.x, sp20.z); work->unk_AC = 0.1f; work->unk_90 = 0x186A0; @@ -1756,7 +1756,7 @@ void fn_1_9688(omObjData *object) if (work->unk_64 != 0) { sp2C = work->unk_128; sp2C.y = 11.0f; - PSVECSubtract(&var_r29->unk_128, &work->unk_128, &sp20); + VECSubtract(&var_r29->unk_128, &work->unk_128, &sp20); var_f29 = 180.0 + (atan2d(sp20.x, sp20.z)); var_f29 += frandmod(0xB4) - 90.0f; var_f30 = 200.0f * work->unk_98; @@ -1817,14 +1817,14 @@ void fn_1_A618(omObjData *object) case 0: if ((work->unk_7C == 0) && (work->unk_78 == 0) && (work->unk_80 == 0) && (work->unk_30 = 0, work->unk_68 = 0, ((work->unk_34 == 0) != 0)) && (fn_1_11004(work->unk_14, work->unk_18) != 0) && (fn_1_10FDC() < 3) && (work->unk_14 == fn_1_10740(&sp20))) { - PSVECSubtract(&sp20, &work->unk_128, &sp14); + VECSubtract(&sp20, &work->unk_128, &sp14); sp14.y = 0.0f; - if (!(PSVECMag(&sp14) > 500.0f)) { + if (!(VECMag(&sp14) > 500.0f)) { fn_1_10B20(0.5f, &sp20); sp20.y -= lbl_1_data_E0[work->unk_00]; - PSVECSubtract(&sp20, &work->unk_128, &sp14); + VECSubtract(&sp20, &work->unk_128, &sp14); sp14.y = 0.0f; - if ((PSVECMag(&sp14) < 200.0f) && (sp20.y >= 50.0f)) { + if ((VECMag(&sp14) < 200.0f) && (sp20.y >= 50.0f)) { work->unk_5C = 1; } if (((work->unk_1C & 0x200) != 0) && (work->unk_5C != 0)) { @@ -1837,7 +1837,7 @@ void fn_1_A618(omObjData *object) var_f30 = 0.5f; work->unk_124 = (2.0f * -sp20.y) / (var_f30 * var_f30); work->unk_134.y = 0.016666668f * (-work->unk_124 * var_f30); - PSVECSubtract(&sp20, &work->unk_128, &sp14); + VECSubtract(&sp20, &work->unk_128, &sp14); sp14.y = 0.0f; work->unk_134.x = 0.016666668f * (sp14.x / 0.5f); work->unk_134.z = 0.016666668f * (sp14.z / 0.5f); @@ -1967,8 +1967,8 @@ void fn_1_AB88(omObjData *object) fn_1_10B20(0.0f, &sp1C); if ((sp1C.x * work->unk_128.x) > 0.0f) { sp1C.y = work->unk_128.y; - PSVECSubtract(&sp1C, &work->unk_128, &sp10); - if (PSVECMag(&sp10) < 60.000004f) { + VECSubtract(&sp1C, &work->unk_128, &sp10); + if (VECMag(&sp10) < 60.000004f) { if (frandmod(0x64) < 0x1E) { fn_1_10740(&sp1C); sp1C.x *= -0.5f; @@ -2016,9 +2016,9 @@ void fn_1_B194(omObjData *object) for (var_r28 = 0; var_r28 < 4; var_r28++) { if (var_r29 != var_r28) { var_r30 = lbl_1_bss_7D0[var_r28]->data; - PSVECSubtract(&var_r31->unk_128, &var_r30->unk_128, &sp8); + VECSubtract(&var_r31->unk_128, &var_r30->unk_128, &sp8); sp8.y = 0.0f; - var_f31 = PSVECMag(&sp8); + var_f31 = VECMag(&sp8); if (var_f31 < (var_r31->unk_120 + var_r30->unk_120)) { if (var_f31 > 0.0f) { var_f31 = 0.5f * ((var_r31->unk_120 + var_r30->unk_120) - var_f31); @@ -2028,10 +2028,10 @@ void fn_1_B194(omObjData *object) sp8.x = frandmod(0x3E8) - 0x1F4; sp8.z = frandmod(0x3E8) - 0x1F4; } - PSVECNormalize(&sp8, &sp8); - PSVECScale(&sp8, &sp8, var_f31); - PSVECAdd(&var_r31->unk_128, &sp8, &var_r31->unk_128); - PSVECSubtract(&var_r30->unk_128, &sp8, &var_r30->unk_128); + VECNormalize(&sp8, &sp8); + VECScale(&sp8, &sp8, var_f31); + VECAdd(&var_r31->unk_128, &sp8, &var_r31->unk_128); + VECSubtract(&var_r30->unk_128, &sp8, &var_r30->unk_128); } } } @@ -2199,7 +2199,7 @@ void fn_1_BD48(omObjData *object) work->unk_B8 = 0.0f; work->unk_BC.x = work->unk_BC.y = 0.0f; work->unk_BC.z = 1.0f; - PSMTXIdentity(work->unk_C8); + MTXIdentity(work->unk_C8); work->unk_18 = 0; object->func = fn_1_C240; } @@ -2219,7 +2219,7 @@ void fn_1_C240(omObjData *object) work->unk_B8 = 0.0f; work->unk_BC.x = work->unk_BC.y = 0.0f; work->unk_BC.z = 1.0f; - PSMTXIdentity(work->unk_C8); + MTXIdentity(work->unk_C8); work->unk_00 = 1; break; case 10: @@ -2296,14 +2296,14 @@ s32 fn_1_C6B0(omObjData *object) fn_1_D338(&work->unk_F8); fn_1_D180(&work->unk_F8); work->unk_B8 = work->unk_A8 * (8.0f * lbl_1_data_48C[work->unk_6C]); - PSVECSubtract(&work->unk_3C, &work->unk_30, &sp8); + VECSubtract(&work->unk_3C, &work->unk_30, &sp8); sp8.y = 0.0f; - if (PSVECMag(&sp8) <= 0.0f) { + if (VECMag(&sp8) <= 0.0f) { work->unk_BC.x = work->unk_BC.y = 0.0f; work->unk_BC.z = 1.0f; } else { - PSVECNormalize(&sp8, &sp8); + VECNormalize(&sp8, &sp8); work->unk_BC.x = -sp8.z; work->unk_BC.y = 0.0f; work->unk_BC.z = sp8.x; @@ -2324,9 +2324,9 @@ s32 fn_1_C6B0(omObjData *object) } work->unk_10 = 1; if (work->unk_B8 != 0.0f) { - PSMTXRotAxisRad(sp14, &work->unk_BC, 0.017453292f * work->unk_B8); - PSMTXConcat(sp14, work->unk_C8, work->unk_C8); - PSMTXCopy(work->unk_C8, Hu3DData[object->model[0]].unk_F0); + MTXRotAxisRad(sp14, &work->unk_BC, 0.017453292f * work->unk_B8); + MTXConcat(sp14, work->unk_C8, work->unk_C8); + MTXCopy(work->unk_C8, Hu3DData[object->model[0]].unk_F0); } work->unk_48 += 0.016666668f; work->unk_08 = fn_1_D4E0(&work->unk_F8, &work->unk_30, &work->unk_4C, work->unk_48); @@ -2389,15 +2389,15 @@ void fn_1_CB98(omObjData *object) var_f31 = 0.0f; } var_f31 = (var_f30 - var_f31) / 21.0f; - PSMTXCopy(work->unk_C8, sp20); + MTXCopy(work->unk_C8, sp20); var_f28 = (work->unk_B8 * (1.2f * work->unk_A8)) / 21.0f; - PSMTXRotAxisRad(sp50, &work->unk_BC, MTXDegToRad(-var_f28)); + MTXRotAxisRad(sp50, &work->unk_BC, MTXDegToRad(-var_f28)); for (var_r29 = 0; var_r29 < 0x15; var_r29++) { Hu3DModelAttrReset(object->model[var_r29 + 9], HU3D_ATTR_DISPOFF); fn_1_D4E0(&work->unk_F8, &sp14, &sp8, var_f30); Hu3DModelPosSetV(object->model[var_r29 + 9], &sp14); - PSMTXCopy(sp20, Hu3DData[object->model[var_r29 + 9]].unk_F0); - PSMTXConcat(sp50, sp20, sp20); + MTXCopy(sp20, Hu3DData[object->model[var_r29 + 9]].unk_F0); + MTXConcat(sp50, sp20, sp20); var_f30 -= var_f31; } work->unk_F8.unk_04 = var_f29; @@ -2430,19 +2430,19 @@ void fn_1_CDB8(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, u32 arg3, float a spC.x = arg1->x + (arg0->unk_08 * (arg2->x - arg1->x)); spC.y = arg0->unk_0C; spC.z = arg1->z + (arg0->unk_08 * (arg2->z - arg1->z)); - PSVECSubtract(arg2, &spC, &sp18); - var_f30 = PSVECMag(&sp18); - PSVECSubtract(&spC, arg1, &sp18); - var_f30 += PSVECMag(&sp18); + VECSubtract(arg2, &spC, &sp18); + var_f30 = VECMag(&sp18); + VECSubtract(&spC, arg1, &sp18); + var_f30 += VECMag(&sp18); } else { - PSVECSubtract(arg2, arg1, &sp18); - var_f30 = PSVECMag(&sp18); + VECSubtract(arg2, arg1, &sp18); + var_f30 = VECMag(&sp18); } } else { - PSVECSubtract(arg2, arg1, &sp18); - var_f30 = PSVECMag(&sp18); + VECSubtract(arg2, arg1, &sp18); + var_f30 = VECMag(&sp18); } var_f31 = var_f30 / (arg8 * lbl_1_data_4D4[arg3].z); arg0->unk_00 = var_f31; @@ -2452,9 +2452,9 @@ void fn_1_CDB8(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, u32 arg3, float a arg0->unk_38 = *arg2; arg0->unk_1C = arg2->y - arg1->y; arg0->unk_24 = -980.0f; - PSVECSubtract(arg2, arg1, &sp18); + VECSubtract(arg2, arg1, &sp18); sp18.y = 0.0f; - arg0->unk_10 = PSVECMag(&sp18); + arg0->unk_10 = VECMag(&sp18); arg0->unk_18 = 0.0f; if (var_f31 > 0.0f) { arg0->unk_20 = (arg0->unk_1C - (0.5f * (-980.0f * (var_f31 * var_f31)))) / var_f31; @@ -2555,9 +2555,9 @@ s32 fn_1_D4E0(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, float arg8) } arg0->unk_04 = arg8; if (arg0->unk_10 > 0.0f) { - PSVECSubtract(&arg0->unk_38, &arg0->unk_2C, &spC); + VECSubtract(&arg0->unk_38, &arg0->unk_2C, &spC); spC.y = 0.0f; - PSVECNormalize(&spC, &spC); + VECNormalize(&spC, &spC); } else { spC.x = spC.y = spC.z = 0.0f; @@ -2568,7 +2568,7 @@ s32 fn_1_D4E0(M433PlayerWork2Sub *arg0, Vec *arg1, Vec *arg2, float arg8) arg1->x = arg0->unk_2C.x + (spC.x * var_f30); arg1->y = arg0->unk_2C.y + var_f29; arg1->z = arg0->unk_2C.z + (spC.z * var_f30); - PSVECSubtract(arg1, &sp18, arg2); + VECSubtract(arg1, &sp18, arg2); if (arg8 >= arg0->unk_00) { return 1; } @@ -2582,7 +2582,7 @@ void fn_1_D6A8(ModelData *model, ParticleData *particle, Mtx matrix) for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.x *= 0.92f; var_r31->unk08.z *= 0.92f; var_r31->unk08.y += -0.27222225f; @@ -3421,9 +3421,9 @@ float fn_1_10B20(float arg8, Vec *arg0) } var_r31->unk_04 = var_f31; if (var_r31->unk_10 > 0.0f) { - PSVECSubtract(&var_r31->unk_38, &var_r31->unk_2C, &sp14); + VECSubtract(&var_r31->unk_38, &var_r31->unk_2C, &sp14); sp14.y = 0.0f; - PSVECNormalize(&sp14, &sp14); + VECNormalize(&sp14, &sp14); } else { sp14.x = sp14.y = sp14.z = 0.0f; @@ -3434,7 +3434,7 @@ float fn_1_10B20(float arg8, Vec *arg0) arg0->x = var_r31->unk_2C.x + (sp14.x * var_f29); arg0->y = var_r31->unk_2C.y + var_f28; arg0->z = var_r31->unk_2C.z + (sp14.z * var_f29); - PSVECSubtract(arg0, &sp8, &sp20); + VECSubtract(arg0, &sp8, &sp20); var_f31 >= var_r31->unk_00; var_r31->unk_04 = var_f30; return var_f30 + arg8; @@ -3462,7 +3462,7 @@ s32 fn_1_10D24(Vec *sp8) var_r31 = lbl_1_bss_7CC->data; fn_1_10D24_inline(&spC); - PSVECSubtract(&spC, &var_r31->unk_30, &sp18); + VECSubtract(&spC, &var_r31->unk_30, &sp18); if ((spC.x * var_r31->unk_30.x) >= 0.0f) { return 0; } @@ -3470,8 +3470,8 @@ s32 fn_1_10D24(Vec *sp8) return 0; } var_f31 = fabs(var_r31->unk_30.x / sp18.x); - PSVECScale(&sp18, &sp18, var_f31); - PSVECAdd(&var_r31->unk_30, &sp18, sp8); + VECScale(&sp18, &sp18, var_f31); + VECAdd(&var_r31->unk_30, &sp18, sp8); return 1; } @@ -3535,9 +3535,9 @@ float fn_1_11098(Vec *arg0, Vec *arg1, Vec *arg2) float var_f31; float var_f30; - PSVECSubtract(arg1, arg0, &sp10); - var_f31 = PSVECDotProduct(&sp10, arg2); - var_f30 = -PSVECSquareMag(arg2); + VECSubtract(arg1, arg0, &sp10); + var_f31 = VECDotProduct(&sp10, arg2); + var_f30 = -VECSquareMag(arg2); if (var_f30 != 0.0f) { var_f31 /= var_f30; } @@ -3555,16 +3555,16 @@ float fn_1_11130(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) float var_f29; float var_f28; - PSVECSubtract(arg1, arg0, &sp28); - PSVECSubtract(arg3, arg2, &sp1C); - PSVECSubtract(&sp28, &sp1C, &sp28); - if (PSVECMag(&sp28) <= 0.0f) { + VECSubtract(arg1, arg0, &sp28); + VECSubtract(arg3, arg2, &sp1C); + VECSubtract(&sp28, &sp1C, &sp28); + if (VECMag(&sp28) <= 0.0f) { sp34 = *arg0; } else { - PSVECSubtract(arg0, arg2, &sp10); - var_f30 = PSVECDotProduct(&sp10, &sp28); - var_f29 = -PSVECSquareMag(&sp28); + VECSubtract(arg0, arg2, &sp10); + var_f30 = VECDotProduct(&sp10, &sp28); + var_f29 = -VECSquareMag(&sp28); if (var_f29 != 0.0f) { var_f30 /= var_f29; } @@ -3576,9 +3576,9 @@ float fn_1_11130(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) else if (var_f31 > 1.0f) { var_f31 = 1.0f; } - PSVECScale(&sp28, &sp1C, var_f31); - PSVECAdd(arg0, &sp1C, &sp34); + VECScale(&sp28, &sp1C, var_f31); + VECAdd(arg0, &sp1C, &sp34); } - PSVECSubtract(arg2, &sp34, &sp28); - return PSVECMag(&sp28); + VECSubtract(arg2, &sp34, &sp28); + return VECMag(&sp28); } diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index cb329774..b8d481ff 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -158,7 +158,7 @@ typedef struct M438UnkStruct { s8 unk_55; s8 unk_56; u8 unk_57; - M438UnkSubStruct* unk_58; + M438UnkSubStruct *unk_58; u8 unk_5C; char unk5D[0x3]; Vec unk_60; @@ -175,7 +175,7 @@ typedef struct M438UnkStruct2 { Vec unk_0C; char unk18[0xC]; Vec unk_24; - void (*unk_30)(struct M438UnkStruct2*); + void (*unk_30)(struct M438UnkStruct2 *); char unk34[8]; M438UnkStruct *unk_3C; char unk40[0x20]; @@ -575,88 +575,51 @@ void fn_1_1174(omObjData *object) } } -Vec lbl_1_data_68[11][8] = { - { - { -528.6f, 0.0f, 350.7f }, - { -375.7f, 0.0f, 243.0f }, - { -214.2f, 0.0f, 331.4f }, - { -173.3f, 0.0f, 523.7f }, - { 15.000001f, 0.0f, 505.7f }, - { 148.59999f, 0.0f, 393.0f }, - { 0.0f, 1.0f, 0.0f }, - }, +Vec lbl_1_data_68[11][8] = { { + { -528.6f, 0.0f, 350.7f }, + { -375.7f, 0.0f, 243.0f }, + { -214.2f, 0.0f, 331.4f }, + { -173.3f, 0.0f, 523.7f }, + { 15.000001f, 0.0f, 505.7f }, + { 148.59999f, 0.0f, 393.0f }, + { 0.0f, 1.0f, 0.0f }, + }, { { -198.7f, 0.0f, -122.899994f }, - { -11.599999f, 0.0f, -177.1f }, - { 63.4f, 0.0f, -349.7f }, - { 277.09999f, 0.0f, -296.4f }, - { 397.5f, 0.0f, -470.2f }, - { 0.0f, 1.0f, 0.0f }, + { -11.599999f, 0.0f, -177.1f }, + { 63.4f, 0.0f, -349.7f }, + { 277.09999f, 0.0f, -296.4f }, + { 397.5f, 0.0f, -470.2f }, + { 0.0f, 1.0f, 0.0f }, }, { { -421.0f, 0.0f, -471.3f }, { -270.1f, 0.0f, -460.0f }, { -153.1f, 0.0f, -356.5f }, - { 12.4f, 0.0f, -473.99997f }, - { 0.0f, 1.0f, 0.0f }, + { 12.4f, 0.0f, -473.99997f }, + { 0.0f, 1.0f, 0.0f }, }, { - { -545.10004f, 0.0f, -318.9f }, + { -545.10004f, 0.0f, -318.9f }, { -469.0f, 0.0f, -154.1f }, - { -313.4, 0.0f, -170.09999f }, + { -313.4, 0.0f, -170.09999f }, { -250.0f, 0.0f, -32.8f }, - { 0.0f, 1.0f, 0.0f }, - }, - { - { -155.6f, 0.0f, 19.5f }, - { -34.3f, 0.0f, 96.6f }, - { -63.9f, 0.0f, 240.00002f }, - { 37.5f, 0.0f, 402.8f }, - { 0.0f, 1.0f, 0.0f } - }, - { - { 207.5f, 0.0f, -163.2f }, - { 270.1f, 0.0f, -104.799995f }, - { 402.19998f, 0.0f, -102.4f }, - { 511.49997f, 0.0f, -25.099998f }, - { 627.3f, 0.0f, -142.0f }, - { 0.0f, 1.0f, 0.0f } + { 0.0f, 1.0f, 0.0f }, }, + { { -155.6f, 0.0f, 19.5f }, { -34.3f, 0.0f, 96.6f }, { -63.9f, 0.0f, 240.00002f }, { 37.5f, 0.0f, 402.8f }, { 0.0f, 1.0f, 0.0f } }, + { { 207.5f, 0.0f, -163.2f }, { 270.1f, 0.0f, -104.799995f }, { 402.19998f, 0.0f, -102.4f }, { 511.49997f, 0.0f, -25.099998f }, + { 627.3f, 0.0f, -142.0f }, { 0.0f, 1.0f, 0.0f } }, { { -601.0f, 0.0f, 97.799995f }, - { -516.80005f, 0.0f, 60.000004f }, + { -516.80005f, 0.0f, 60.000004f }, { -417.7f, 0.0f, 92.9f }, - { -309.40002f, 0.0f, 76.1f }, - { 0.0f, 1.0f, 0.0f }, + { -309.40002f, 0.0f, 76.1f }, + { 0.0f, 1.0f, 0.0f }, }, - { - { 82.8f, 0.0f, 164.2f }, - { 179.40001f, 0.0f, 179.8f }, - { 241.00002f, 0.0f, 87.1f }, - { 323.0f, 0.0f, 38.800003f }, - { 0.0f, 1.0f, 0.0f } - }, - { - { 243.4f, 0.0f, 573.5f }, - { 227.7f, 0.0f, 461.2f }, - { 319.30002f, 0.0f, 400.6f }, - { 342.30002f, 0.0f, 310.0f }, - { 0.0f, 1.0f, 0.0f } - }, - { - { 357.69998f, 0.0f, 146.8f }, - { 418.80002f, 0.0f, 225.0f }, - { 503.2f, 0.0f, 234.69998f }, - { 548.1f, 0.0f, 321.19998f }, - { 0.0f, 1.0f, 0.0f } - }, - { - { -100.0f, 0.0f, 0.0f }, - { 0.0f, 0.0f, -100.0f }, - { 100.0f, 0.0f, 0.0f }, - { 0.0f, 1.0f, 0.0f } - } -}; + { { 82.8f, 0.0f, 164.2f }, { 179.40001f, 0.0f, 179.8f }, { 241.00002f, 0.0f, 87.1f }, { 323.0f, 0.0f, 38.800003f }, { 0.0f, 1.0f, 0.0f } }, + { { 243.4f, 0.0f, 573.5f }, { 227.7f, 0.0f, 461.2f }, { 319.30002f, 0.0f, 400.6f }, { 342.30002f, 0.0f, 310.0f }, { 0.0f, 1.0f, 0.0f } }, + { { 357.69998f, 0.0f, 146.8f }, { 418.80002f, 0.0f, 225.0f }, { 503.2f, 0.0f, 234.69998f }, { 548.1f, 0.0f, 321.19998f }, { 0.0f, 1.0f, 0.0f } }, + { { -100.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, -100.0f }, { 100.0f, 0.0f, 0.0f }, { 0.0f, 1.0f, 0.0f } } }; void fn_1_1204(omObjData *object) { M438StructBss298 *var_r31; @@ -951,7 +914,8 @@ void fn_1_2070(omObjData *object) var_r31->unk_10.y = var_r31->unk_28.y + (var_f31 * (var_r31->unk_40.y - var_r31->unk_28.y)); var_r31->unk_10.z = var_r31->unk_28.z + (var_f31 * (var_r31->unk_40.z - var_r31->unk_28.z)); var_r31->unk_130 = var_r31->unk_134 + (var_f31 * (var_r31->unk_138 - var_r31->unk_134)); - } else { + } + else { fn_1_9420(2.0f * var_f31, (float *)&var_r31->unk_04, var_r31->unk_F4, (float(*)[3]) & var_r31->unk_64, var_r31->unk_88, 3); fn_1_9420(2.0f * var_f31, (float *)&var_r31->unk_10, var_r31->unk_100, (float(*)[3]) & var_r31->unk_AC, var_r31->unk_D0, 3); var_r31->unk_130 = fn_1_8EEC(2.0f * var_f31, var_r31->unk_124, var_r31->unk_10C, var_r31->unk_118, 3); @@ -1473,12 +1437,14 @@ void fn_1_35C0(omObjData *object) var_r31->unk_22 = var_r28; var_r31->unk_20 = var_r28; CharModelMotionShiftSet(var_r31->unk_01, object->motion[8], 0.0f, 8.0f, var_r27); - } else { + } + else { switch (var_r28) { case 0: case 1: case 2: - if (var_r31->unk_20 != 0 && CharModelMotionShiftIDGet(var_r31->unk_01) >= 0) break; + if (var_r31->unk_20 != 0 && CharModelMotionShiftIDGet(var_r31->unk_01) >= 0) + break; default: var_r31->unk_22 = var_r28; var_r31->unk_20 = var_r28; @@ -1590,7 +1556,6 @@ void fn_1_4724(omObjData *object) object->func = fn_1_4984; } - void fn_1_4984(omObjData *object) { Vec sp8; @@ -1645,7 +1610,7 @@ void fn_1_4984(omObjData *object) } lbl_1_bss_4 = fn_1_10258(0x3C, 1); fn_1_11018(lbl_1_bss_4, 0, 0x45000F); - lbl_1_bss_DE4.unk_40[lbl_1_bss_4].unk_30 = fn_1_5D4C; + lbl_1_bss_DE4.unk_40[lbl_1_bss_4].unk_30 = fn_1_5D4C; fn_1_11890(lbl_1_bss_4, var_r31->unk_10.x, 50.0f + var_r31->unk_10.y, var_r31->unk_10.z); fn_1_124CC(lbl_1_bss_4, 1); lbl_1_bss_8++; @@ -1708,7 +1673,7 @@ void fn_1_4F50(omObjData *object) var_r31->unk_00++; case 1: var_r31->unk_34 = var_r31->unk_10; - + for (var_r28 = 0, var_r26 = 0; var_r28 < 4; var_r28++) { var_r29 = lbl_1_bss_DC4[var_r28]->data; if ((var_r29->unk_07 != 0) && ((var_r29->unk_07 & 2) == 0)) { @@ -1723,17 +1688,20 @@ void fn_1_4F50(omObjData *object) if (var_r31->unk_1C.y <= -180.0f) { var_r31->unk_1C.y += 360.0f; } - + for (var_r28 = 0; var_r28 < var_r26; var_r28++) { var_f31 = fn_1_E5A4(sp8[var_r28], object->rot.y); if (var_f31 < 0.0f) { var_f27 = -var_f31; - } else { + } + else { var_f27 = var_f31; } - if (var_f27 > (20.0f + object->work[1])) continue; + if (var_f27 > (20.0f + object->work[1])) + continue; object->work[0]--; - if (object->work[0] != 0 && ((fn_1_7DB4() & 0xF) != 0)) continue; + if (object->work[0] != 0 && ((fn_1_7DB4() & 0xF) != 0)) + continue; var_r31->unk_04.y = sp8[var_r28]; var_r31->unk_1C.y = sp8[var_r28]; var_r31->unk_28.y = 16.333334f; @@ -1781,7 +1749,8 @@ void fn_1_4F50(omObjData *object) sp18 = var_r31->unk_10; sp18.y = 0.0f; var_f30 = VECMag(&sp18); - if (var_f30 <= 700.0f) break; + if (var_f30 <= 700.0f) + break; var_r31->unk_02 = 1; if (fn_1_DA64(atan2d(sp18.x, sp18.z)) != 0) { var_r31->unk_02 = 0x78; @@ -1804,7 +1773,8 @@ void fn_1_4F50(omObjData *object) case 4: var_r31->unk_28.y += -3.0625f; var_r31->unk_10.y += var_r31->unk_28.y; - if (var_r31->unk_10.y > 0.0f) break; + if (var_r31->unk_10.y > 0.0f) + break; var_r31->unk_10.y = 0.0f; var_r31->unk_34 = var_r31->unk_10; Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); @@ -1848,7 +1818,8 @@ void fn_1_4F50(omObjData *object) var_r29 = lbl_1_bss_DC4[var_r28]->data; VECSubtract(&var_r29->unk_6C, &var_r31->unk_10, &sp18); var_f30 = VECMag(&sp18); - if (var_f30 >= 200.0f || var_r29->unk_20 == 7) continue; + if (var_f30 >= 200.0f || var_r29->unk_20 == 7) + continue; omVibrate(var_r29->unk_00, 0xC, 4, 2); var_r29->unk_07 |= 2; var_r29->unk_0D = 0; @@ -1860,7 +1831,8 @@ void fn_1_4F50(omObjData *object) if (fabs(fn_1_E5A4(var_r29->unk_28, var_r29->unk_7C)) > 90.0) { var_r29->unk_7C = 180.0f + var_r29->unk_28; var_r29->unk_14 = 0; - } else { + } + else { var_r29->unk_7C = var_r29->unk_28; var_r29->unk_14 = 1; } @@ -1875,7 +1847,8 @@ void fn_1_4F50(omObjData *object) omSetRot(object, var_r31->unk_1C.x, var_r31->unk_1C.y, var_r31->unk_1C.z); } -void fn_1_5D4C(M438UnkStruct2 *arg0) { +void fn_1_5D4C(M438UnkStruct2 *arg0) +{ s16 sp8; f32 temp_f31; f32 temp_f30; @@ -1883,13 +1856,13 @@ void fn_1_5D4C(M438UnkStruct2 *arg0) { f32 temp_f28; f32 temp_f27; s32 var_r29; - M438UnkStruct* var_r31; + M438UnkStruct *var_r31; sp8 = 0; - switch (arg0->unk_60) { /* irregular */ + switch (arg0->unk_60) { /* irregular */ case 0: temp_f27 = 360.0f / arg0->unk_02; - + var_r31 = &arg0->unk_3C[0]; for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { var_r31->unk_6C.x = sind(temp_f27 * var_r29) * (0.8f + (0.1f * (2.0f * ((1.0f / 32768.0f) * (fn_1_7DB4() - 0x8000))))); @@ -1909,7 +1882,7 @@ void fn_1_5D4C(M438UnkStruct2 *arg0) { arg0->unk_7C--; temp_f31 = (48.0f - arg0->unk_7C) / 48.0f; temp_f28 = arg0->unk_7C / 48.0f; - + var_r31 = arg0->unk_3C; for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { var_r31->unk_00.x += 12.5f * temp_f28 * var_r31->unk_6C.x; @@ -1935,7 +1908,7 @@ void fn_1_62BC(M438UnkStruct2 *arg0) s16 sp8; M438UnkStruct *var_r31; - + sp8 = 0; switch (arg0->unk_60) { case 0: @@ -1957,9 +1930,10 @@ void fn_1_62BC(M438UnkStruct2 *arg0) } } -void fn_1_63B0(M438UnkStruct2* arg0) { +void fn_1_63B0(M438UnkStruct2 *arg0) +{ Vec sp8; - M438UnkStruct* var_r31; + M438UnkStruct *var_r31; f32 var_f31; f32 temp_f30; f32 var_f29; @@ -1970,10 +1944,8 @@ void fn_1_63B0(M438UnkStruct2* arg0) { for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { switch (var_r31->unk_5C) { case 0: - var_f29 = atan2d(arg0->unk_80, arg0->unk_84) < 0 - ? -atan2d(arg0->unk_80, arg0->unk_84) - : atan2d(arg0->unk_80, arg0->unk_84); - + var_f29 = atan2d(arg0->unk_80, arg0->unk_84) < 0 ? -atan2d(arg0->unk_80, arg0->unk_84) : atan2d(arg0->unk_80, arg0->unk_84); + if (var_f29 > 90.0f) { var_f29 = 180.0f - var_f29; } @@ -1984,7 +1956,7 @@ void fn_1_63B0(M438UnkStruct2* arg0) { var_r31->unk_00.x = sp8.x; var_r31->unk_00.y = 0.0f; var_r31->unk_00.z = sp8.z; - + for (var_f31 = 0.0f, sp8.y = 0.0f; var_f31 < (arg0->unk_8C - 40.0f); var_f31 += sp8.y) { sp8.y += 0.8f; } @@ -2000,7 +1972,8 @@ void fn_1_63B0(M438UnkStruct2* arg0) { temp_f30 = 3.75f + (1.75f * ((1.0f / 65536.0f) * fn_1_7DB4())); var_r31->unk_60.x = (temp_f30 * (0.1f + ((0.9f * var_f29) / 90.0f))); var_r31->unk_60.y = var_r31->unk_60.z = temp_f30; - } else { + } + else { var_r31->unk_33 = 0; var_r31->unk_54 = 0; var_r31->unk_55 = 0; @@ -2044,9 +2017,10 @@ void fn_1_63B0(M438UnkStruct2* arg0) { } } -void fn_1_6A3C(M438UnkStruct2* arg0) { +void fn_1_6A3C(M438UnkStruct2 *arg0) +{ Vec sp8; - M438UnkStruct* var_r31; + M438UnkStruct *var_r31; f32 temp_f31; f32 temp_f30; f32 temp_f29; @@ -2056,7 +2030,7 @@ void fn_1_6A3C(M438UnkStruct2* arg0) { var_r31 = arg0->unk_3C; var_r28 = 0; - + for (var_r27 = 0; var_r27 < arg0->unk_02; var_r27++, var_r31++) { if ((arg0->unk_7C != 0) && (var_r31->unk_7A == 0)) { var_r31->unk_5C = 0; @@ -2077,7 +2051,8 @@ void fn_1_6A3C(M438UnkStruct2* arg0) { var_r31->unk_6C.z = 100.0f * (0.1f * sp8.z); var_r31->unk_78 = (s32)(24.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 1; var_r31->unk_7A = 1; - } else { + } + else { temp_f30 = (180.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) - 90.0f; temp_f29 = 125.0f * ((1.0f / 65536.0f) * fn_1_7DB4()); sp8.x = sind(temp_f30); @@ -2103,7 +2078,8 @@ void fn_1_6A3C(M438UnkStruct2* arg0) { var_r31->unk_18.x = temp_f31; var_r31->unk_18.y = temp_f31; var_r31->unk_18.z = temp_f31; - } else if (arg0->unk_7C != 0) { + } + else if (arg0->unk_7C != 0) { var_r31->unk_33 = 0; var_r31->unk_54 = 0; var_r31->unk_55 = 0; @@ -2113,10 +2089,11 @@ void fn_1_6A3C(M438UnkStruct2* arg0) { var_r31->unk_18.x = temp_f31; var_r31->unk_18.y = 1.5f * temp_f31; var_r31->unk_18.z = temp_f31; - } else { + } + else { var_r29 = fn_1_10258(8, 1); fn_1_11018(var_r29, 0, 0x45000A); - lbl_1_bss_DE4.unk_40[var_r29].unk_30 = (void (*)(M438UnkStruct2*)) fn_1_7300; + lbl_1_bss_DE4.unk_40[var_r29].unk_30 = (void (*)(M438UnkStruct2 *))fn_1_7300; fn_1_11890(var_r29, arg0->unk_0C.x + var_r31->unk_00.x, arg0->unk_0C.y + var_r31->unk_00.y, arg0->unk_0C.z + var_r31->unk_00.z); fn_1_12100(var_r29, 4); fn_1_124CC(var_r29, 1); @@ -2134,7 +2111,8 @@ void fn_1_6A3C(M438UnkStruct2* arg0) { var_r31->unk_58->unk_24 = 0x11; if (var_r31->unk_7A != 0) { var_r31->unk_58->unk_28 = 0.5f; - } else { + } + else { var_r31->unk_58->unk_28 = 0.5f; } var_r31->unk_58->unk_2C = 0.0f; @@ -2156,7 +2134,8 @@ void fn_1_6A3C(M438UnkStruct2* arg0) { if ((var_r31->unk_58->unk_24 & 8) != 0) { if (var_r31->unk_7A != 0) { var_r31->unk_5C = 3; - } else { + } + else { var_r31->unk_5C = 0; } } @@ -2171,9 +2150,10 @@ void fn_1_6A3C(M438UnkStruct2* arg0) { } } -void fn_1_7300(M438UnkStruct2* arg0) { +void fn_1_7300(M438UnkStruct2 *arg0) +{ Vec sp8; - M438UnkStruct* var_r31; + M438UnkStruct *var_r31; f32 temp_f29; f32 temp_f30; f32 temp_f31; @@ -2181,33 +2161,32 @@ void fn_1_7300(M438UnkStruct2* arg0) { s32 var_r29; var_r31 = arg0->unk_3C; - + switch (arg0->unk_60) { case 0: arg0->unk_24.x = arg0->unk_24.y = arg0->unk_24.z = temp_f31 = 0.01f; arg0->unk_7C = Hu3DModelCreateFile(0x45000B); arg0->unk_7E = (s32)(30.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 30; - + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { var_r31->unk_38 |= 4; } arg0->unk_60++; case 1: arg0->unk_24.z += 0.008f; - + arg0->unk_24.x = arg0->unk_24.y = arg0->unk_24.z; Hu3DModelPosSetV(arg0->unk_7C, &arg0->unk_0C); Hu3DModelScaleSetV(arg0->unk_7C, &arg0->unk_24); if (--arg0->unk_7E == 0) { Hu3DModelKill(arg0->unk_7C); arg0->unk_7C = 0; - + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { var_r31->unk_5C = 1; } arg0->unk_80 = arg0->unk_24.x; - - + arg0->unk_24.x = arg0->unk_24.y = arg0->unk_24.z = 1.0f; arg0->unk_60++; } @@ -2215,7 +2194,7 @@ void fn_1_7300(M438UnkStruct2* arg0) { } var_r28 = 0; var_r31 = arg0->unk_3C; - + for (var_r29 = 0; var_r29 < arg0->unk_02; var_r29++, var_r31++) { switch (var_r31->unk_5C) { case 1: @@ -2450,32 +2429,36 @@ float fn_1_7EDC(float arg8, float arg9, float argA) arg8 = arg9 + (var_f31 * argA); if (arg8 > 180.0f) { arg8 -= 360.0f; - } else if (arg8 <= -180.0f) { + } + else if (arg8 <= -180.0f) { arg8 += 360.0f; } return arg8; } -void fn_1_8044(Mtx arg0, f32 arg8, f32 arg9, f32 argA) { +void fn_1_8044(Mtx arg0, f32 arg8, f32 arg9, f32 argA) +{ Mtx sp38; Mtx sp8; - + if (0.0f != argA) { - PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); - } else { - PSMTXIdentity(arg0); + MTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + } + else { + MTXIdentity(arg0); } if (0.0f != arg8) { - PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); - PSMTXConcat(sp38, arg0, arg0); + MTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + MTXConcat(sp38, arg0, arg0); } if (0.0f != arg9) { - PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); - PSMTXConcat(sp8, arg0, arg0); + MTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + MTXConcat(sp8, arg0, arg0); } } -void fn_1_8164(Mtx arg0, Vec* arg1) { +void fn_1_8164(Mtx arg0, Vec *arg1) +{ f32 temp_f29; f32 var_f28; @@ -2500,7 +2483,8 @@ void fn_1_8164(Mtx arg0, Vec* arg1) { } } -void fn_1_8500(Mtx arg0, Vec* arg1) { +void fn_1_8500(Mtx arg0, Vec *arg1) +{ f32 temp_f29; f32 var_f28; @@ -2511,7 +2495,8 @@ void fn_1_8500(Mtx arg0, Vec* arg1) { arg1->x = atan2d(temp_f29, var_f28); } -f32 fn_1_8750(f32 arg8, f32 arg9, f32 argA, f32 argB) { +f32 fn_1_8750(f32 arg8, f32 arg9, f32 argA, f32 argB) +{ f32 temp_f31; f32 var_f30; @@ -2520,22 +2505,25 @@ f32 fn_1_8750(f32 arg8, f32 arg9, f32 argA, f32 argB) { return var_f30; } -void fn_1_87C8(f32* arg0, f32* arg1, f32* arg2, f32* arg3, f32 arg8) { +void fn_1_87C8(f32 *arg0, f32 *arg1, f32 *arg2, f32 *arg3, f32 arg8) +{ s32 var_r31; - + for (var_r31 = 0; var_r31 < 3; var_r31++) { *arg3++ = fn_1_8750(arg8, *arg0++, *arg1++, *arg2++); } } -f32 fn_1_88E4(f32 arg8, f32 arg9, f32 argA, f32 argB) { +f32 fn_1_88E4(f32 arg8, f32 arg9, f32 argA, f32 argB) +{ f32 var_f31; var_f31 = 2.0 * ((arg8 - 1.0) * arg9 + (1.0 - (2.0 * arg8)) * argA + (arg8 * argB)); return var_f31; } -void fn_1_895C(f32* arg0, f32* arg1, f32* arg2, f32* arg3, f32 arg8) { +void fn_1_895C(f32 *arg0, f32 *arg1, f32 *arg2, f32 *arg3, f32 arg8) +{ f32 spC[3]; f32 var_f29; s32 var_r31; @@ -2672,7 +2660,6 @@ void fn_1_9040(float *arg0, Vec *arg1, float arg2[3][3], s32 arg3) } } - void fn_1_9420(float arg8, float *arg0, float *arg1, float arg2[3][3], float arg3[3][3], s32 arg4) { float sp48[16]; @@ -2692,7 +2679,8 @@ void fn_1_9420(float arg8, float *arg0, float *arg1, float arg2[3][3], float arg } } -f32 fn_1_9634(Vec* arg0) { +f32 fn_1_9634(Vec *arg0) +{ f32 var_f30; f32 var_f29; var_f30 = (arg0->x * arg0->x) + (arg0->y * arg0->y) + (arg0->z * arg0->z); @@ -2702,24 +2690,28 @@ f32 fn_1_9634(Vec* arg0) { arg0->x *= var_f29; arg0->y *= var_f29; arg0->z *= var_f29; - } else { + } + else { arg0->x = arg0->y = arg0->z = 0.0f; } return var_f30; } -f32 fn_1_97CC(Vec arg0, Vec arg1, Vec* arg2, f32 arg8) { +f32 fn_1_97CC(Vec arg0, Vec arg1, Vec *arg2, f32 arg8) +{ if (arg8 <= 0.0f) { arg2->x = arg0.x; arg2->y = arg0.y; arg2->z = arg0.z; arg8 = 0.0f; - } else if (arg8 >= 1.0f) { + } + else if (arg8 >= 1.0f) { arg2->x = (arg0.x + arg1.x); arg2->y = (arg0.y + arg1.y); arg2->z = (arg0.z + arg1.z); arg8 = 1.0f; - } else { + } + else { arg2->x = (arg0.x + (arg8 * arg1.x)); arg2->y = (arg0.y + (arg8 * arg1.y)); arg2->z = (arg0.z + (arg8 * arg1.z)); @@ -2727,7 +2719,8 @@ f32 fn_1_97CC(Vec arg0, Vec arg1, Vec* arg2, f32 arg8) { return arg8; } -f32 fn_1_98A4(Vec arg0, Vec arg1, Vec arg2) { +f32 fn_1_98A4(Vec arg0, Vec arg1, Vec arg2) +{ f32 temp_f30; f32 var_f31; @@ -2739,21 +2732,24 @@ f32 fn_1_98A4(Vec arg0, Vec arg1, Vec arg2) { return var_f31; } -f32 fn_1_9960(Vec* arg0, Vec* arg1, Vec* arg2) { +f32 fn_1_9960(Vec *arg0, Vec *arg1, Vec *arg2) +{ Vec sp44; f32 var_f31; f32 var_f30; f32 temp_f29; if (0.0f == ((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y)))) { - return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); + return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); } var_f31 = fn_1_98A4(*arg0, *arg1, *arg2); fn_1_97CC(*arg1, *arg2, &sp44, var_f31); return ((arg0->z - sp44.z) * (arg0->z - sp44.z)) + (((arg0->x - sp44.x) * (arg0->x - sp44.x)) + ((arg0->y - sp44.y) * (arg0->y - sp44.y))); } -f32 fn_1_9C9C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { +f32 fn_1_9C9C(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4) +{ f32 sp44; f32 sp40; f32 sp3C; @@ -2778,7 +2774,8 @@ f32 fn_1_9C9C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { f64 temp_f31_3; if (0.0f == ((arg2->z * arg2->z) + ((arg2->x * arg2->x) + (arg2->y * arg2->y)))) { - return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); + return ((arg0->z - arg1->z) * (arg0->z - arg1->z)) + + (((arg0->x - arg1->x) * (arg0->x - arg1->x)) + ((arg0->y - arg1->y) * (arg0->y - arg1->y))); } var_f27 = fn_1_98A4(*arg0, *arg1, *arg2); fn_1_97CC(*arg1, *arg2, arg3, var_f27); @@ -2789,7 +2786,8 @@ f32 fn_1_9C9C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3, Vec* arg4) { return fn_1_9634(arg4); } -f32 fn_1_A14C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3) { +f32 fn_1_A14C(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) +{ f32 temp_f31; f32 var_f30; f32 var_f29; @@ -2809,14 +2807,17 @@ f32 fn_1_A14C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3) { if (var_f28 >= var_f27) { if (var_f28 >= var_f26) { var_r30 = 1; - } else { + } + else { var_r30 = 0x100; } var_r31 = var_r30; - } else { + } + else { if (var_f27 >= var_f26) { var_r29 = 0x10; - } else { + } + else { var_r29 = 0x100; } var_r31 = var_r29; @@ -2827,30 +2828,38 @@ f32 fn_1_A14C(Vec* arg0, Vec* arg1, Vec* arg2, Vec* arg3) { return var_f30; } var_f29 = ((arg3->z * (arg0->x - arg2->x)) - (arg3->x * (arg0->z - arg2->z))) / temp_f31; - } else if (0.0f == (temp_f31 = (arg3->y * arg1->x) - (arg3->x * arg1->y))) { + } + else if (0.0f == (temp_f31 = (arg3->y * arg1->x) - (arg3->x * arg1->y))) { return var_f30; - } else { + } + else { var_f29 = ((arg3->x * (arg0->y - arg2->y)) - (arg3->y * (arg0->x - arg2->x))) / temp_f31; } - } else if ((var_r31 & 0x30) != 0) { + } + else if ((var_r31 & 0x30) != 0) { if ((0.0f != arg1->x) || (0.0f != arg1->y)) { if (0.0f == (temp_f31 = (arg3->y * arg1->x) - (arg3->x * arg1->y))) { return var_f30; } var_f29 = ((arg3->x * (arg0->y - arg2->y)) - (arg3->y * (arg0->x - arg2->x))) / temp_f31; - } else if (0.0f == (temp_f31 = (arg3->z * arg1->y) - (arg3->y * arg1->z))) { + } + else if (0.0f == (temp_f31 = (arg3->z * arg1->y) - (arg3->y * arg1->z))) { return var_f30; - } else { + } + else { var_f29 = ((arg3->y * (arg0->z - arg2->z)) - (arg3->z * (arg0->y - arg2->y))) / temp_f31; } - } else if ((0.0f != arg1->x) || (0.0f != arg1->z)) { + } + else if ((0.0f != arg1->x) || (0.0f != arg1->z)) { if (0.0f == (temp_f31 = (arg3->x * arg1->z) - (arg3->z * arg1->x))) { return var_f30; } var_f29 = ((arg3->z * (arg0->x - arg2->x)) - (arg3->x * (arg0->z - arg2->z))) / temp_f31; - } else if (0.0f == (temp_f31 = (arg3->z * arg1->y) - (arg3->y * arg1->z))) { + } + else if (0.0f == (temp_f31 = (arg3->z * arg1->y) - (arg3->y * arg1->z))) { return var_f30; - } else { + } + else { var_f29 = ((arg3->y * (arg0->z - arg2->z)) - (arg3->z * (arg0->y - arg2->y))) / temp_f31; } return var_f29; @@ -2871,11 +2880,31 @@ void fn_1_A688(omObjData *object) { } Vec lbl_1_data_514 = { -850.0f, 0.0f, -850.0f }; s32 lbl_1_data_520[25] = { - -0x62, -0x61, -0x60, -0x5F, -0x5E, - -0x32, -0x31, -0x30, -0x2F, -0x2E, - -0x2, -0x1, 0x0, 0x1, 0x2, - 0x2E, 0x2F, 0x30, 0x31, 0x32, - 0x5E, 0x5F, 0x60, 0x61, 0x62, + -0x62, + -0x61, + -0x60, + -0x5F, + -0x5E, + -0x32, + -0x31, + -0x30, + -0x2F, + -0x2E, + -0x2, + -0x1, + 0x0, + 0x1, + 0x2, + 0x2E, + 0x2F, + 0x30, + 0x31, + 0x32, + 0x5E, + 0x5F, + 0x60, + 0x61, + 0x62, }; u32 lbl_1_data_584[25] = { @@ -2906,18 +2935,20 @@ u32 lbl_1_data_584[25] = { 0x50, }; -#define getData(v, off) &( &( *OM_GET_DATA_PTR(lbl_1_bss_DBC, M438UnkType) )[ (u32)(0.028235294f * (v.x - off)) ] )[ (u32)(0.028235294f * (v.z - off)) * 0x30 ] +#define getData(v, off) \ + &(&(*OM_GET_DATA_PTR(lbl_1_bss_DBC, M438UnkType))[(u32)(0.028235294f * (v.x - off))])[(u32)(0.028235294f * (v.z - off)) * 0x30] -void fn_1_A68C(ModelData* model, Mtx matrix) { +void fn_1_A68C(ModelData *model, Mtx matrix) +{ Vec sp14; Vec sp8; - M438StructBss298* var_r30; + M438StructBss298 *var_r30; f32 var_f31; - omObjData* temp_r27; + omObjData *temp_r27; s32 var_r28; s32 var_r29; - u8* temp_r26; - u8* var_r25; + u8 *temp_r26; + u8 *var_r25; M438MainWork *temp_r31; if ((u8)omPauseChk() == 0) { @@ -2929,9 +2960,9 @@ void fn_1_A68C(ModelData* model, Mtx matrix) { var_f31 = 0.0f; for (var_f31 = 0.0f; var_f31 < (35.416668f + var_r30->unk_14); var_f31 += 35.416668f) { - PSVECScale(&var_r30->unk_24, &sp8, var_f31); - PSVECAdd(&var_r30->unk_18, &sp8, &sp14); - PSVECSubtract(&sp14, &lbl_1_data_514, &sp14); + VECScale(&var_r30->unk_24, &sp8, var_f31); + VECAdd(&var_r30->unk_18, &sp8, &sp14); + VECSubtract(&sp14, &lbl_1_data_514, &sp14); // @todo make this look nicer // var_r25 = getData(sp14, 0); @@ -2946,12 +2977,12 @@ void fn_1_A68C(ModelData* model, Mtx matrix) { } } for (var_r29 = 0; var_r29 < 4; var_r29++) { - if ((omObjData* ) lbl_1_bss_DC4[var_r29]) { + if ((omObjData *)lbl_1_bss_DC4[var_r29]) { temp_r27 = lbl_1_bss_DC4[var_r29]; temp_r31 = temp_r27->data; if ((temp_r31) && (temp_r31->unk_68 != 0)) { temp_r31->unk_68 = 0; - PSVECAdd(&temp_r31->unk_6C, &temp_r31->unk_4C, &sp14); + VECAdd(&temp_r31->unk_6C, &temp_r31->unk_4C, &sp14); temp_r31->unk_64 = fn_1_AE18(temp_r27->work[0], temp_r31->unk_7C, &sp14, &temp_r31->unk_58); } } @@ -2960,7 +2991,8 @@ void fn_1_A68C(ModelData* model, Mtx matrix) { } } -u32 fn_1_A8FC(Vec* arg0, f32 arg8) { +u32 fn_1_A8FC(Vec *arg0, f32 arg8) +{ Vec sp2C; Vec sp20; Vec sp14; @@ -2976,11 +3008,11 @@ u32 fn_1_A8FC(Vec* arg0, f32 arg8) { var_r30 = 0; var_r28 = 0; temp_f28 = 100.0f * (4.5f - (2.0f * arg8)); - var_f31 = PSVECMag(arg0); + var_f31 = VECMag(arg0); if (var_f31 > 280.0f) { if (var_f31 > 560.0f) { var_r28 = 1; - PSVECNormalize(arg0, &sp14); + VECNormalize(arg0, &sp14); } var_f31 -= 280.0f; var_f31 *= 0.12987013f; @@ -2999,17 +3031,17 @@ u32 fn_1_A8FC(Vec* arg0, f32 arg8) { sp8.x = sind(temp_r31->unk_08); sp8.y = 0.0f; sp8.z = cosd(temp_r31->unk_08); - PSVECScale(&sp8, &sp20, 600.0f + (100.0f * (8.0f * arg8))); + VECScale(&sp8, &sp20, 600.0f + (100.0f * (8.0f * arg8))); var_f30 = fn_1_B440(arg0, &sp2C, &sp20); if (var_f30 > -0.2f && var_f30 < 1.0f) { - PSVECScale(&sp20, &sp20, var_f30); - PSVECAdd(&sp2C, &sp20, &sp2C); - PSVECSubtract(&sp2C, arg0, &sp20); - var_f31 = PSVECMag(&sp20); - if (var_f31 < temp_f28) { + VECScale(&sp20, &sp20, var_f30); + VECAdd(&sp2C, &sp20, &sp2C); + VECSubtract(&sp2C, arg0, &sp20); + var_f31 = VECMag(&sp20); + if (var_f31 < temp_f28) { var_f29 = 0.0f; if (var_r28 != 0) { - var_f29 = PSVECDotProduct(&sp14, &sp8); + var_f29 = VECDotProduct(&sp14, &sp8); var_f29 = 1.0 - fabs(var_f29); } var_f31 = (1.0f / temp_f28) * (temp_f28 - var_f31); @@ -3026,8 +3058,8 @@ u32 fn_1_A8FC(Vec* arg0, f32 arg8) { } break; default: - PSVECSubtract(arg0, &sp2C, &sp20); - var_f31 = PSVECMag(&sp20); + VECSubtract(arg0, &sp2C, &sp20); + var_f31 = VECMag(&sp20); if (var_f31 < 600.0f) { var_f31 = 800.0f - var_f31; var_f31 = 20.0f + (0.1f * var_f31); @@ -3073,14 +3105,15 @@ Vec lbl_1_data_69C[9] = { s32 lbl_1_data_708[9] = { 0, -19, -18, -17, -1, 1, 0x11, 0x12, 0x13 }; s32 lbl_1_data_72C[9] = { 0, -38, -54, -34, -3, 3, 0x22, 0x36, 0x26 }; -s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { +s32 fn_1_AE18(u32 arg0, f32 arg8, Vec *arg1, Vec *arg2) +{ s32 sp58[9]; Vec sp4C; Vec sp40; Vec sp34; Vec sp28; Vec sp1C; - u8* sp18; + u8 *sp18; u32 sp14; u32 sp10; f32 var_f31; @@ -3091,16 +3124,16 @@ s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { s32 var_r30; u32 var_r29; s32 var_r28; - u16* temp_r27; + u16 *temp_r27; s32 var_r26; M438MainWork *var_r25; - u8* temp_r24; + u8 *temp_r24; s32 var_r23; - u8* var_r22; - u16* var_r21; + u8 *var_r22; + u16 *var_r21; u32 var_r19; u32 var_r18; - u8* temp_r17; + u8 *temp_r17; memset(lbl_1_bss_C, 0, 0x288); sp40 = *arg1; @@ -3113,9 +3146,9 @@ s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { temp_f28 = var_r25->unk_3C; var_r19 = 0x2710; var_r18 = 0; - + for (var_r30 = 0; var_r30 < 9; var_r30++) { - PSVECAdd(&sp40, &lbl_1_data_60C[var_r30], &sp34); + VECAdd(&sp40, &lbl_1_data_60C[var_r30], &sp34); sp18 = temp_r17 + lbl_1_data_5E8[var_r30]; (void)temp_r17; var_r21 = &(&lbl_1_bss_C[lbl_1_data_708[var_r30]])[0xAB]; @@ -3123,12 +3156,13 @@ s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { var_r29 = 0; var_r22 = sp18; sp28 = sp34; - + for (var_r23 = 0; var_r23 < 3; var_r23++) { for (var_r28 = 0; var_r28 < 9; var_r28++) { temp_r24 = var_r22 + lbl_1_data_5E8[var_r28]; - PSVECAdd(&sp28, &lbl_1_data_60C[var_r28], &sp4C); - if ((lbl_1_bss_DBC->data <= temp_r24) && (((u8*)lbl_1_bss_DBC->data + 0x900 > temp_r24) && (fabs(sp4C.x) < 850.0) && (fabs(sp4C.z) < 850.0))) { + VECAdd(&sp28, &lbl_1_data_60C[var_r28], &sp4C); + if ((lbl_1_bss_DBC->data <= temp_r24) + && (((u8 *)lbl_1_bss_DBC->data + 0x900 > temp_r24) && (fabs(sp4C.x) < 850.0) && (fabs(sp4C.z) < 850.0))) { var_f31++; temp_r27 = &var_r21[lbl_1_data_708[var_r28]]; if (*temp_r27 == 0) { @@ -3142,9 +3176,9 @@ s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { for (var_r26 = 0; var_r26 < 4; var_r26++) { if (var_r26 != arg0) { var_r25 = lbl_1_bss_DC4[var_r26]->data; - PSVECSubtract(&sp4C, &var_r25->unk_6C, &sp1C); + VECSubtract(&sp4C, &var_r25->unk_6C, &sp1C); sp1C.y = 0.0f; - var_f30 = PSVECMag(&sp1C); + var_f30 = VECMag(&sp1C); if (var_f30 < var_f29) { var_f30 = var_f29 - var_f30; var_f30 *= (40.0f / var_f29); @@ -3153,7 +3187,8 @@ s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { } } *temp_r27 = ++var_r31; - } else { + } + else { var_r31 = *temp_r27; } var_r29 += var_r31; @@ -3163,7 +3198,7 @@ s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { } } } - PSVECAdd(&sp28, &lbl_1_data_69C[var_r30], &sp28); + VECAdd(&sp28, &lbl_1_data_69C[var_r30], &sp28); var_r22 += lbl_1_data_678[var_r30]; var_r21 = &var_r21[lbl_1_data_72C[var_r30]]; var_f31 *= 2.0f; @@ -3185,14 +3220,15 @@ s32 fn_1_AE18(u32 arg0, f32 arg8, Vec* arg1, Vec* arg2) { return 0; } -f32 fn_1_B440(Vec* arg0, Vec* arg1, Vec* arg2) { +f32 fn_1_B440(Vec *arg0, Vec *arg1, Vec *arg2) +{ Vec sp10; f32 temp_f30; f32 var_f31; - - PSVECSubtract(arg1, arg0, &sp10); - var_f31 = PSVECDotProduct(&sp10, arg2); - temp_f30 = -PSVECSquareMag(arg2); + + VECSubtract(arg1, arg0, &sp10); + var_f31 = VECDotProduct(&sp10, arg2); + temp_f30 = -VECSquareMag(arg2); if (temp_f30 != 0.0f) { var_f31 /= temp_f30; } diff --git a/src/REL/m438Dll/map.c b/src/REL/m438Dll/map.c index ee37c2c3..58f7e686 100644 --- a/src/REL/m438Dll/map.c +++ b/src/REL/m438Dll/map.c @@ -1,11 +1,12 @@ #include "REL/m438Dll.h" #include "ext_math.h" -#include "string.h" #include "game/hsfanim.h" #include "game/hsfmotion.h" #include "game/sprite.h" #include "game/wipe.h" +#include "string.h" + // STRUCT typedef struct M438MapStruct { @@ -32,8 +33,8 @@ typedef struct M438MapStruct2 { Vec unk30; Vec unk3C; union { - M438MainWork4* unk48; - HsfObject* unk48o; + M438MainWork4 *unk48; + HsfObject *unk48o; }; } M438MapStruct2; @@ -45,56 +46,51 @@ typedef struct M438MapStruct3 { } M438MapStruct3; // BSS -omObjData* lbl_1_bss_108C[6]; -HsfanimStruct01* lbl_1_bss_E34[0x96]; +omObjData *lbl_1_bss_108C[6]; +HsfanimStruct01 *lbl_1_bss_E34[0x96]; s32 lbl_1_bss_E30; s32 lbl_1_bss_E2C; s32 lbl_1_bss_E28; // DATA -char* lbl_1_data_848[] = { - "iwa_s1", "iwa_s2", "iwa_s3", "iwa_s4", "iwa_s5", - "iwa_s6", "iwa_s7", "iwa_s8", "iwa_s9", - "iwa_s10", "iwa_s11", "iwa_s12", "iwa_s13", - "iwa_s14", "iwa_s15", "iwa_s16", "iwa_s17", - "iwa_s18", "iwa_s19", "iwa_s20", "iwa_s21", - "iwa_s22", "iwa_s23", "iwa_s24", "iwa_s25", - "iwa_s26", "iwa_s27", "iwa_s28", "iwa_s29", - "iwa_s30", "iwa_s31", "iwa_s32" -}; +char *lbl_1_data_848[] = { "iwa_s1", "iwa_s2", "iwa_s3", "iwa_s4", "iwa_s5", "iwa_s6", "iwa_s7", "iwa_s8", "iwa_s9", "iwa_s10", "iwa_s11", "iwa_s12", + "iwa_s13", "iwa_s14", "iwa_s15", "iwa_s16", "iwa_s17", "iwa_s18", "iwa_s19", "iwa_s20", "iwa_s21", "iwa_s22", "iwa_s23", "iwa_s24", "iwa_s25", + "iwa_s26", "iwa_s27", "iwa_s28", "iwa_s29", "iwa_s30", "iwa_s31", "iwa_s32" }; // PROTO -void fn_1_B54C(omObjData*); -void fn_1_BF20(omObjData*); +void fn_1_B54C(omObjData *); +void fn_1_BF20(omObjData *); void fn_1_CAB0(f32); -void fn_1_C764(ModelData* model, ParticleData* particle, Mtx matrix); -void fn_1_C8E8(ModelData* model, ParticleData* particle, Mtx matrix); -void fn_1_D3FC(ModelData* model, ParticleData* particle, Mtx matrix); -void fn_1_D57C(Vec*, f32); -void fn_1_E034(Mtx, Vec*); +void fn_1_C764(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_C8E8(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_D3FC(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_D57C(Vec *, f32); +void fn_1_E034(Mtx, Vec *); -void fn_1_B4D8(Process* arg0) { - omObjData* var_r31; +void fn_1_B4D8(Process *arg0) +{ + omObjData *var_r31; lbl_1_bss_E30 = 0; var_r31 = lbl_1_bss_108C[0] = omAddObjEx(arg0, 0x20, 8, 0, -1, fn_1_B54C); var_r31->work[0] = 0; } -void fn_1_B548(void) {} +void fn_1_B548(void) { } -void fn_1_B54C(omObjData* arg0) { +void fn_1_B54C(omObjData *arg0) +{ Vec sp20; Vec sp14; Vec sp8; s32 var_r30; s32 var_r29; - HsfObject* var_r26; + HsfObject *var_r26; s32 var_r27; - M438MapStruct2* var_r28; - HsfanimStruct01* var_r25; - M438MapStruct* var_r24; - M438MapStruct3* temp_r23; + M438MapStruct2 *var_r28; + HsfanimStruct01 *var_r25; + M438MapStruct *var_r24; + M438MapStruct3 *temp_r23; arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x108C, 0x10000000); temp_r23 = arg0->data; @@ -116,29 +112,29 @@ void fn_1_B54C(omObjData* arg0) { var_r29 = Hu3DTexScrollCreate(arg0->model[1], "lafall"); Hu3DTexScrollPosMoveSet(var_r29, 0.0f, -(1.0f / 60.0f), 0.0f); var_r29 = 0; - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000C), 0x32); arg0->model[3] = var_r27; Hu3DModelLayerSet(var_r27, 3); Hu3DParticleHookSet(var_r27, fn_1_C764); for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r29++) { - lbl_1_bss_E34[var_r29] = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; + lbl_1_bss_E34[var_r29] = &((ParticleData *)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; } - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000D), 0x32); arg0->model[4] = var_r27; Hu3DModelLayerSet(var_r27, 3); Hu3DParticleHookSet(var_r27, fn_1_C764); for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r29++) { - lbl_1_bss_E34[var_r29] = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; + lbl_1_bss_E34[var_r29] = &((ParticleData *)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; } - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000E), 0x32); arg0->model[5] = var_r27; Hu3DModelLayerSet(var_r27, 3); Hu3DParticleHookSet(var_r27, fn_1_C764); for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r29++) { - lbl_1_bss_E34[var_r29] = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; + lbl_1_bss_E34[var_r29] = &((ParticleData *)(Hu3DData[var_r27].unk_120))->unk_48[var_r30]; } for (var_r30 = 0; var_r30 < 0x95; var_r30++) { for (var_r29 = 1; var_r29 < 0x96; var_r29++) { @@ -155,24 +151,24 @@ void fn_1_B54C(omObjData* arg0) { lbl_1_bss_E34[var_r30]->unk40.a = 0; lbl_1_bss_E34[var_r30]->unk00 = 0; } - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000F), 0x32); arg0->model[6] = var_r27; Hu3DModelLayerSet(var_r27, 3); Hu3DParticleHookSet(var_r27, fn_1_C8E8); - var_r25 = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[0]; + var_r25 = &((ParticleData *)(Hu3DData[var_r27].unk_120))->unk_48[0]; for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r25++) { var_r25->unk2C = 0.0f; var_r25->unk40.a = 0; var_r25->unk00 = 0; } - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x450010), 0x1F4); arg0->model[7] = var_r27; Hu3DModelLayerSet(var_r27, 2); Hu3DParticleBlendModeSet(var_r27, 1); Hu3DParticleHookSet(var_r27, fn_1_D3FC); - var_r25 = &((ParticleData*)(Hu3DData[var_r27].unk_120))->unk_48[0]; + var_r25 = &((ParticleData *)(Hu3DData[var_r27].unk_120))->unk_48[0]; for (var_r30 = 0; var_r30 < 0x1F4; var_r30++, var_r25++) { var_r25->unk2C = 0.0f; var_r25->unk40.a = 0; @@ -191,27 +187,27 @@ void fn_1_B54C(omObjData* arg0) { sp8.x = sp8.y = sp8.z = 100000.0f; for (var_r29 = 0; var_r29 < var_r26->data.vertex->count; var_r29++) { - if (((Vec*)var_r26->data.vertex->data)[var_r29].x > sp14.x) { - sp14.x = ((Vec*)var_r26->data.vertex->data)[var_r29].x; + if (((Vec *)var_r26->data.vertex->data)[var_r29].x > sp14.x) { + sp14.x = ((Vec *)var_r26->data.vertex->data)[var_r29].x; } - if (((Vec*)var_r26->data.vertex->data)[var_r29].y > sp14.y) { - sp14.y = ((Vec*)var_r26->data.vertex->data)[var_r29].y; + if (((Vec *)var_r26->data.vertex->data)[var_r29].y > sp14.y) { + sp14.y = ((Vec *)var_r26->data.vertex->data)[var_r29].y; } - if (((Vec*)var_r26->data.vertex->data)[var_r29].z > sp14.z) { - sp14.z = ((Vec*)var_r26->data.vertex->data)[var_r29].z; + if (((Vec *)var_r26->data.vertex->data)[var_r29].z > sp14.z) { + sp14.z = ((Vec *)var_r26->data.vertex->data)[var_r29].z; } - if (((Vec*)var_r26->data.vertex->data)[var_r29].x < sp8.x) { - sp8.x = ((Vec*)var_r26->data.vertex->data)[var_r29].x; + if (((Vec *)var_r26->data.vertex->data)[var_r29].x < sp8.x) { + sp8.x = ((Vec *)var_r26->data.vertex->data)[var_r29].x; } - if (((Vec*)var_r26->data.vertex->data)[var_r29].y < sp8.y) { - sp8.y = ((Vec*)var_r26->data.vertex->data)[var_r29].y; + if (((Vec *)var_r26->data.vertex->data)[var_r29].y < sp8.y) { + sp8.y = ((Vec *)var_r26->data.vertex->data)[var_r29].y; } - if (((Vec*)var_r26->data.vertex->data)[var_r29].z < sp8.z) { - sp8.z = ((Vec*)var_r26->data.vertex->data)[var_r29].z; + if (((Vec *)var_r26->data.vertex->data)[var_r29].z < sp8.z) { + sp8.z = ((Vec *)var_r26->data.vertex->data)[var_r29].z; } } - PSVECAdd(&sp14, &sp8, &sp20); - PSVECScale(&sp20, &sp20, 0.5f); + VECAdd(&sp14, &sp8, &sp20); + VECScale(&sp20, &sp20, 0.5f); var_r28->unk24 = sp20; var_r28->unk30 = var_r28->unk24; var_r28->unk8 = (360.0 + atan2d(sp20.x, sp20.z)); @@ -241,7 +237,7 @@ Vec lbl_1_data_8D8[4][2] = { { -867.0f, -80.0f, -485.0f }, }, { - { -917.0f, -80.0f, -857.0f }, + { -917.0f, -80.0f, -857.0f }, { -817.0f, -80.0f, -1030.0f }, }, { @@ -249,12 +245,13 @@ Vec lbl_1_data_8D8[4][2] = { { 867.0f, -80.0f, -485.0f }, }, { - { 917.0f, -80.0f, -857.0f }, + { 917.0f, -80.0f, -857.0f }, { 817.0f, -80.0f, -1030.0f }, }, }; -void fn_1_BF20(omObjData* arg0) { +void fn_1_BF20(omObjData *arg0) +{ Mtx sp5C; Mtx sp2C; Vec sp20; @@ -264,18 +261,18 @@ void fn_1_BF20(omObjData* arg0) { f32 temp_f30; f32 temp_f31; s32 var_r29; - M438MapStruct2* var_r31; - M438MapStruct* var_r30; - M438MapStruct3* temp_r28; + M438MapStruct2 *var_r31; + M438MapStruct *var_r30; + M438MapStruct3 *temp_r28; temp_r28 = arg0->data; temp_r28->unk0++; var_r31 = &temp_r28->unk4; - + for (var_r29 = 0; var_r29 < 0x20; var_r29++, var_r31++) { if ((var_r31->unk0 == 0) && (var_r31->unk4 != 0)) { temp_f29 = var_r31->unk30.y; - PSVECAdd(&var_r31->unk30, &var_r31->unk3C, &var_r31->unk30); + VECAdd(&var_r31->unk30, &var_r31->unk3C, &var_r31->unk30); var_r31->unk3C.x *= 0.92f; var_r31->unk3C.z *= 0.92f; var_r31->unk3C.y += -0.27222225f; @@ -290,22 +287,22 @@ void fn_1_BF20(omObjData* arg0) { sp14.x = sind(90.0f + var_r31->unk8); sp14.z = cosd(90.0f + var_r31->unk8); sp14.y = 0.0f; - PSMTXRotAxisRad(sp5C, &sp14, MTXDegToRad(var_r31->unkC)); + MTXRotAxisRad(sp5C, &sp14, MTXDegToRad(var_r31->unkC)); sp14.x = sp14.z = 0.0f; sp14.y = 1.0f; - PSMTXRotAxisRad(sp2C, &sp14, MTXDegToRad(var_r31->unk14)); - PSMTXConcat(sp2C, sp5C, sp5C); + MTXRotAxisRad(sp2C, &sp14, MTXDegToRad(var_r31->unk14)); + MTXConcat(sp2C, sp5C, sp5C); sp14.x = sind(var_r31->unk8); sp14.z = cosd(var_r31->unk8); sp14.y = 0.0f; - PSMTXRotAxisRad(sp2C, &sp14, MTXDegToRad(var_r31->unk1C)); - PSMTXConcat(sp2C, sp5C, sp5C); + MTXRotAxisRad(sp2C, &sp14, MTXDegToRad(var_r31->unk1C)); + MTXConcat(sp2C, sp5C, sp5C); fn_1_E034(sp5C, &sp20); var_r31->unk48->unk_28.x = sp20.x; var_r31->unk48->unk_28.y = sp20.y; var_r31->unk48->unk_28.z = sp20.z; - PSMTXInverse(sp5C, sp5C); - PSMTXMultVec(sp5C, &var_r31->unk24, &sp8); + MTXInverse(sp5C, sp5C); + MTXMultVec(sp5C, &var_r31->unk24, &sp8); var_r31->unk48->unk_1C.x = (var_r31->unk30.x - sp8.x); var_r31->unk48->unk_1C.y = (var_r31->unk30.y - sp8.y); var_r31->unk48->unk_1C.z = (var_r31->unk30.z - sp8.z); @@ -316,16 +313,18 @@ void fn_1_BF20(omObjData* arg0) { } if ((temp_r28->unk0 & 1) == 0) { var_r30 = &temp_r28->unk984; - + for (var_r29 = 0; var_r29 < 0x32; var_r29++, var_r30++) { - if (var_r30->unk0 != 0) continue; + if (var_r30->unk0 != 0) + continue; var_r30->unk0 = 1; var_r30->unk18 = frandmod(0x168); if (frandmod(0x64) < 0x14) { var_r30->unkC.x = (0.8f * (frandmod(0x7D0) - 0x3E8)); var_r30->unkC.y = -80.0f; var_r30->unkC.z = ((-1.2f * frandmod(0x3E8)) - 1000.0f); - } else { + } + else { temp_f31 = frandmod(0x168); temp_f30 = 800.0f + (0.25f * frandmod(0x3E8)); var_r30->unkC.x = (temp_f30 * sind(temp_f31)); @@ -353,13 +352,13 @@ void fn_1_BF20(omObjData* arg0) { Hu3DModelScaleSet(var_r30->unk4, var_r30->unk1C, var_r30->unk1C, var_r30->unk1C); } } - + for (var_r29 = 0; var_r29 < 4; var_r29++) { - PSVECSubtract(&lbl_1_data_8D8[var_r29][1], &lbl_1_data_8D8[var_r29][0], &sp14); + VECSubtract(&lbl_1_data_8D8[var_r29][1], &lbl_1_data_8D8[var_r29][0], &sp14); temp_f31 = 0.001f * frandmod(0x3E8); - PSVECScale(&sp14, &sp14, temp_f31); - PSVECAdd(&lbl_1_data_8D8[var_r29][0], &sp14, &sp8); - PSVECScale(&sp8, &sp8, 0.98f); + VECScale(&sp14, &sp14, temp_f31); + VECAdd(&lbl_1_data_8D8[var_r29][0], &sp14, &sp8); + VECScale(&sp8, &sp8, 0.98f); fn_1_D57C(&sp8, 0.03f); } if ((lbl_1_bss_E30 == 0) && (WipeStatGet() == 0)) { @@ -369,16 +368,17 @@ void fn_1_BF20(omObjData* arg0) { } } -void fn_1_C764(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; +void fn_1_C764(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; s32 var_r29; u16 temp_r0; var_r31 = particle->unk_48; - + for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.x *= 0.95f; var_r31->unk08.z *= 0.95f; var_r31->unk08.y += -0.27222225f; @@ -395,20 +395,21 @@ void fn_1_C764(ModelData* model, ParticleData* particle, Mtx matrix) { DCStoreRange(particle->unk_48, particle->unk_30 * 0x44); } -void fn_1_C8E8(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; +void fn_1_C8E8(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; s32 var_r29; u16 temp_r0; var_r31 = particle->unk_48; - + for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.x *= 0.92f; var_r31->unk08.z *= 0.92f; var_r31->unk2C += 5.0f; - var_r31->unk40.a *= 0.99f; + var_r31->unk40.a *= 0.99f; if (var_r31->unk00_s16 < 24.0f) { var_r31->unk40.a = 0.9f * var_r31->unk40.a; } @@ -422,20 +423,21 @@ void fn_1_C8E8(ModelData* model, ParticleData* particle, Mtx matrix) { DCStoreRange(particle->unk_48, particle->unk_30 * 0x44); } -void fn_1_CAB0(f32 arg8) { +void fn_1_CAB0(f32 arg8) +{ Vec sp8; f32 temp_f31; f32 temp_f30; f32 temp_f28; f32 temp_f27; - HsfanimStruct01* var_r31; + HsfanimStruct01 *var_r31; s32 var_r30; u32 var_r29; temp_f28 = 20.0f; temp_f27 = 7.0f; var_r29 = 0x19; - + for (var_r30 = 0; var_r30 < 0x96; var_r30++) { var_r31 = lbl_1_bss_E34[var_r30]; if (var_r31->unk00_s16 == 0) { @@ -445,12 +447,12 @@ void fn_1_CAB0(f32 arg8) { sp8.x = sind(temp_f31); sp8.y = 0.0f; sp8.z = cosd(temp_f31); - + temp_f31 = arg8 + (((0.002f * frandmod(0x3E8)) - 1.0f)) * temp_f27; var_r31->unk34.x = 7.5 * sind(temp_f31) * 100.0; var_r31->unk34.y = 0.2f * frandmod(0x3E8); var_r31->unk34.z = 7.5 * cosd(temp_f31) * 100.0; - + temp_f30 = 1.6666667f * (4.0f + (0.014f * frandmod(0x3E8))); var_r31->unk08.x = sp8.x * temp_f30; var_r31->unk08.z = sp8.z * temp_f30; @@ -462,10 +464,11 @@ void fn_1_CAB0(f32 arg8) { var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = 0xFF; var_r29--; - if (var_r29 < 1) break; + if (var_r29 < 1) + break; } } - var_r31 = ((ParticleData*)(Hu3DData[lbl_1_bss_108C[0]->model[6]].unk_120))->unk_48; + var_r31 = ((ParticleData *)(Hu3DData[lbl_1_bss_108C[0]->model[6]].unk_120))->unk_48; var_r29 = 0xF; for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r31++) { if (var_r31->unk00_s16 == 0) { @@ -475,12 +478,12 @@ void fn_1_CAB0(f32 arg8) { sp8.x = sind(temp_f31); sp8.y = 0.0f; sp8.z = cosd(temp_f31); - + temp_f31 = arg8 + (((0.002f * frandmod(0x3E8)) - 1.0f)) * temp_f27; var_r31->unk34.x = 7.5 * sind(temp_f31) * 100.0; var_r31->unk34.y = 0.2f * frandmod(0x3E8); var_r31->unk34.z = 7.5 * cosd(temp_f31) * 100.0; - + temp_f30 = 1.6666667f * -(0.01f * frandmod(0x3E8)); var_r31->unk08.x = sp8.x * temp_f30; var_r31->unk08.z = sp8.z * temp_f30; @@ -495,13 +498,15 @@ void fn_1_CAB0(f32 arg8) { var_r31->unk40.b = (60.0f * temp_f31) + 54.0f; var_r29--; - if (var_r29 < 1) break; + if (var_r29 < 1) + break; } } } -void fn_1_D3FC(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; +void fn_1_D3FC(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; s32 var_r29; u16 temp_r0; @@ -509,7 +514,7 @@ void fn_1_D3FC(ModelData* model, ParticleData* particle, Mtx matrix) { var_r31 = particle->unk_48; for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.y += -0.27222225f; if (var_r31->unk00_s16 < 12.0f) { var_r31->unk40.a = (0.8f * var_r31->unk40.a); @@ -525,17 +530,18 @@ void fn_1_D3FC(ModelData* model, ParticleData* particle, Mtx matrix) { DCStoreRange(particle->unk_48, particle->unk_30 * 0x44); } -void fn_1_D57C(Vec* arg0, f32 arg1) { +void fn_1_D57C(Vec *arg0, f32 arg1) +{ Vec sp8; f32 temp_f31; f32 temp_f29; - HsfanimStruct01* var_r31; + HsfanimStruct01 *var_r31; s32 var_r30; u32 var_r29; - var_r31 = ((ParticleData*)(Hu3DData[lbl_1_bss_108C[0]->model[7]].unk_120))->unk_48; + var_r31 = ((ParticleData *)(Hu3DData[lbl_1_bss_108C[0]->model[7]].unk_120))->unk_48; var_r29 = (u32)(3.0f + (15.0f * arg1)); - + for (var_r30 = 0; var_r30 < 0x1F4; var_r30++, var_r31++) { if (var_r31->unk00_s16 == 0) { var_r31->unk00_s16 = 60.0f * (0.3f + (0.0003f * frandmod(0x3E8))); @@ -557,28 +563,30 @@ void fn_1_D57C(Vec* arg0, f32 arg1) { var_r31->unk40.a = (frandmod(0x46) + 0x64); temp_f31 = 0.001f * frandmod(0x3E8); - var_r31->unk40.r = 177.0f + (78.0f * temp_f31); - var_r31->unk40.g = 60.0f + (129.0f * temp_f31); - var_r31->unk40.b = 30.0f + (122.0f * temp_f31); + var_r31->unk40.r = 177.0f + (78.0f * temp_f31); + var_r31->unk40.g = 60.0f + (129.0f * temp_f31); + var_r31->unk40.b = 30.0f + (122.0f * temp_f31); var_r29--; - if (var_r29 < 1) break; + if (var_r29 < 1) + break; } } } -s32 fn_1_DA64(f32 arg8) { - M438MapStruct3* var_r28; +s32 fn_1_DA64(f32 arg8) +{ + M438MapStruct3 *var_r28; s32 var_r29; s32 var_r30; - M438MapStruct2* var_r31; + M438MapStruct2 *var_r31; float var_f31; float var_f29; var_r28 = lbl_1_bss_108C[0]->data; var_r29 = 0; var_r31 = &var_r28->unk4; - + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { var_f31 = fn_1_E5A4(var_r31->unk8, arg8); if ((fabs(var_f31) < 12.0) && (var_r31->unk0 != 0)) { @@ -608,17 +616,18 @@ s32 fn_1_DA64(f32 arg8) { return var_r29; } -s32 fn_1_DEA0(f32 arg8) { - M438MapStruct3* var_r28; +s32 fn_1_DEA0(f32 arg8) +{ + M438MapStruct3 *var_r28; s32 var_r29; s32 var_r30; - M438MapStruct2* var_r31; + M438MapStruct2 *var_r31; f32 var_f31; var_r28 = lbl_1_bss_108C[0]->data; var_r29 = 0; var_r31 = &var_r28->unk4; - + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { var_f31 = fn_1_E5A4(var_r31->unk8, arg8); if ((fabs(var_f31) < 8.0) && (var_r31->unk0 != 0)) { @@ -629,7 +638,8 @@ s32 fn_1_DEA0(f32 arg8) { return var_r29; } -f32 fn_1_DF70(f32 arg8, f32 arg9) { +f32 fn_1_DF70(f32 arg8, f32 arg9) +{ f32 temp_f30; f32 var_f31; @@ -637,13 +647,15 @@ f32 fn_1_DF70(f32 arg8, f32 arg9) { var_f31 = 180.0 * (atan2f(arg9, arg8) / M_PI); if (var_f31 < 0.0f) { var_f31 += temp_f30; - } else if (var_f31 >= temp_f30) { + } + else if (var_f31 >= temp_f30) { var_f31 -= temp_f30; } return var_f31; } -void fn_1_E034(Mtx arg0, Vec* arg1) { +void fn_1_E034(Mtx arg0, Vec *arg1) +{ f32 var_f26; f32 temp_f25; @@ -659,7 +671,8 @@ void fn_1_E034(Mtx arg0, Vec* arg1) { arg1->y = fn_1_DF70(var_f26, temp_f25); } -f32 fn_1_E488(f32 arg8, f32 arg9, f32 argA) { +f32 fn_1_E488(f32 arg8, f32 arg9, f32 argA) +{ f32 var_f31; var_f31 = fmodf((arg9 - arg8), 360.0); @@ -676,7 +689,8 @@ f32 fn_1_E488(f32 arg8, f32 arg9, f32 argA) { return var_f31; } -f32 fn_1_E5A4(f32 arg8, f32 arg9) { +f32 fn_1_E5A4(f32 arg8, f32 arg9) +{ f32 var_f31; var_f31 = fmodf((arg9 - arg8), 360.0); diff --git a/src/REL/m440Dll/main.c b/src/REL/m440Dll/main.c index d7653b96..db82808e 100644 --- a/src/REL/m440Dll/main.c +++ b/src/REL/m440Dll/main.c @@ -1276,7 +1276,7 @@ void fn_1_57B4(unkStruct6 *arg0) var_r31->unkB8.z *= 0.5f; } } - PSMTXScale(sp14, var_r31->unk88.x, var_r31->unk88.y, var_r31->unk88.z); + MTXScale(sp14, var_r31->unk88.x, var_r31->unk88.y, var_r31->unk88.z); mtxTransCat(sp14, -var_r31->unk7C.x, -var_r31->unk7C.y, -var_r31->unk7C.z); mtxRotCat(sp14, var_r31->unkA0.x, var_r31->unkA0.y, var_r31->unkA0.z); mtxTransCat(sp14, var_r31->unk94.x + var_r31->unk7C.x, var_r31->unk94.y + var_r31->unk7C.y, var_r31->unk94.z + var_r31->unk7C.z); @@ -1288,14 +1288,14 @@ void fn_1_57B4(unkStruct6 *arg0) else { var_r29 = var_r31->unk18[var_r28]; } - PSMTXMultVec(sp14, &temp_r26[var_r29], &sp8); + MTXMultVec(sp14, &temp_r26[var_r29], &sp8); arg0->unkC[var_r29].x = sp8.x; arg0->unkC[var_r29].y = sp8.y; arg0->unkC[var_r29].z = sp8.z; } if ((arg0->unk2 & 2) != 0) { var_r29 = var_r31->unk1E; - PSMTXMultVec(sp14, &temp_r26[var_r29], &sp8); + MTXMultVec(sp14, &temp_r26[var_r29], &sp8); arg0->unkC[var_r29].x = sp8.x; arg0->unkC[var_r29].y = sp8.y; arg0->unkC[var_r29].z = sp8.z; @@ -1359,7 +1359,7 @@ void fn_1_5C2C(s16 arg0, HsfObject *arg1, unkStruct6 *arg2, u16 arg3) var_r22 = NULL; } var_r25 = &arg1->data.base; - PSMTXScale(sp68, var_r25->scale.x, var_r25->scale.y, var_r25->scale.z); + MTXScale(sp68, var_r25->scale.x, var_r25->scale.y, var_r25->scale.z); mtxRotCat(sp68, var_r25->rot.x, var_r25->rot.y, var_r25->rot.z); mtxTransCat(sp68, var_r25->pos.x, var_r25->pos.y, var_r25->pos.z); @@ -1375,7 +1375,7 @@ void fn_1_5C2C(s16 arg0, HsfObject *arg1, unkStruct6 *arg2, u16 arg3) var_r27 = arg2->unk24[var_r30].unk18[var_r28]; var_r23 = arg2->unk24[var_r30].unk0[var_r28].unk0; } - PSMTXMultVec(sp68, &((Vec *)(arg1->data.vertex->data))[var_r23], &sp38); + MTXMultVec(sp68, &((Vec *)(arg1->data.vertex->data))[var_r23], &sp38); arg2->unkC[var_r27] = sp38; sp44[var_r28] = arg2->unkC[var_r27]; arg2->unk14[var_r27] = arg2->unk18[var_r23]; @@ -1860,7 +1860,7 @@ void fn_1_806C(ModelData *arg0, Mtx arg1) temp_r27(temp_r31); } GXLoadPosMtxImm(arg1, 0); - PSMTXInvXpose(arg1, sp14); + MTXInvXpose(arg1, sp14); GXLoadNrmMtxImm(sp14, 0); fn_1_8AC4(arg1); sp10.r = (temp_r31->unk28->unkB[0] * arg0->unk_58.x); @@ -1974,7 +1974,7 @@ void fn_1_8470(unkStruct12 *arg0, unkStruct13 *arg1) if (var_f31 < 0.1) { var_f31 = 0.1f; } - PSMTXCopy(lbl_1_bss_30, sp10); + MTXCopy(lbl_1_bss_30, sp10); mtxScaleCat(sp10, var_f31, var_f31, var_f31); GXLoadTexMtxImm(sp10, 0x24, GX_MTX2x4); var_r31++; @@ -2050,31 +2050,31 @@ void fn_1_8AC4(Mtx arg0) var_r29 = &Hu3DGlobalLight[0]; sp34 = var_r29->unk_28; if ((var_r29->unk_00 & 0x8000) != 0) { - PSMTXMultVecSR(Hu3DCameraMtx, &sp34, &sp34); + MTXMultVecSR(Hu3DCameraMtx, &sp34, &sp34); } var_f30 = VECDotProduct(&sp34, &sp10); var_f30 *= 10000.0f; OSf32tos16(&var_f30, &temp_r31); if (temp_r31 == -0x2710) { - PSMTXScale(lbl_1_bss_30, 0.0f, 0.0f, 0.0f); + MTXScale(lbl_1_bss_30, 0.0f, 0.0f, 0.0f); return; } C_VECHalfAngle(&sp34, &sp10, &sp28); sp28.x = -sp28.x; sp28.y = -sp28.y; sp28.z = -sp28.z; - PSMTXInvXpose(arg0, sp70); + MTXInvXpose(arg0, sp70); if (temp_r31 == 0x2710) { - PSMTXIdentity(sp40); + MTXIdentity(sp40); } else { VECCrossProduct(&sp28, &sp10, &sp1C); var_f29 = acosf(VECDotProduct(&sp10, &sp28)); - PSMTXRotAxisRad(sp40, &sp1C, var_f29); + MTXRotAxisRad(sp40, &sp1C, var_f29); } - PSMTXConcat(sp40, sp70, spA0); - PSMTXTrans(sp40, 0.5f, 0.5f, 0.0f); - PSMTXConcat(sp40, spA0, lbl_1_bss_30); + MTXConcat(sp40, sp70, spA0); + MTXTrans(sp40, 0.5f, 0.5f, 0.0f); + MTXConcat(sp40, spA0, lbl_1_bss_30); } void fn_1_8D1C(void) @@ -2097,7 +2097,7 @@ void fn_1_8D1C(void) if (var_r30 == 5) { C_MTXOrtho(sp60, 0.0f, 480.0f, 0.0f, 640.0f, 0.0f, 10.0f); GXSetProjection(sp60, GX_ORTHOGRAPHIC); - PSMTXIdentity(sp30); + MTXIdentity(sp30); GXLoadPosMtxImm(sp30, 0); GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_DIRECT); @@ -2491,9 +2491,9 @@ void fn_1_9C04(ModelData *arg0, Mtx arg1) } else { fn_1_A328(&temp_r30->unk2C, &sp38, &var_r29->unk48, 4); - PSMTXRotRad(spC8, 0x5A, 0.017453292f * var_r29->unk44); - PSMTXConcat(sp128, spC8, sp98); - PSMTXMultVecArray(sp98, &sp38, &sp8, 4); + MTXRotRad(spC8, 0x5A, 0.017453292f * var_r29->unk44); + MTXConcat(sp128, spC8, sp98); + MTXMultVecArray(sp98, &sp38, &sp8, 4); VECAdd(&sp8, &var_r29->unk54, var_r31++); VECAdd(&sp14, &var_r29->unk54, var_r31++); VECAdd(&sp20, &var_r29->unk54, var_r31++); diff --git a/src/REL/m440Dll/object.c b/src/REL/m440Dll/object.c index 00d59251..5eb6cb5c 100644 --- a/src/REL/m440Dll/object.c +++ b/src/REL/m440Dll/object.c @@ -10,12 +10,10 @@ #include "string.h" #include "version.h" - #ifdef __MWERKS__ #include "game/audio.h" #endif - // bss omObjData *lbl_1_bss_C0[4]; s16 lbl_1_bss_B8[4]; @@ -1025,7 +1023,7 @@ u8 fn_1_E8AC(omObjData *arg0, unkObjStruct *arg1) arg1->unk24.z = (1050.0 * sind(var_f31)); } arg1->unk30.y = 0.0f; - PSMTXRotRad(temp_r29->unk_F0, 0x59, 0.017453292f * arg1->unk68); + MTXRotRad(temp_r29->unk_F0, 0x59, 0.017453292f * arg1->unk68); arg1->unk60++; if (lbl_1_data_1D8 == 0) { fn_1_18E0(); @@ -1044,7 +1042,7 @@ u8 fn_1_E8AC(omObjData *arg0, unkObjStruct *arg1) arg1->unk18.y = fn_1_93D0(lbl_1_bss_78.y, 1400.0f + lbl_1_bss_78.y, 0.0f, var_f31); arg1->unk18.z = lbl_1_bss_78.z + (var_f31 * (arg1->unk24.z - lbl_1_bss_78.x)); arg1->unk30.x = 180.0f * var_f31; - PSMTXRotRad(temp_r29->unk_F0, 0x59, 0.017453292f * arg1->unk68); + MTXRotRad(temp_r29->unk_F0, 0x59, 0.017453292f * arg1->unk68); break; case 3: fn_1_F4D4(arg1, 15, 8); diff --git a/src/REL/m441Dll/main.c b/src/REL/m441Dll/main.c index e6143406..bc0d7e77 100644 --- a/src/REL/m441Dll/main.c +++ b/src/REL/m441Dll/main.c @@ -403,9 +403,9 @@ void fn_1_1D70(s16 arg0, char *arg1, Vec *arg2, Mtx arg3) var_r30 = &Hu3DData[arg0]; Hu3DModelObjMtxGet(arg0, arg1, spC); - PSMTXConcat(var_r30->unk_F0, spC, spC); + MTXConcat(var_r30->unk_F0, spC, spC); if (NULL != arg3) { - PSMTXCopy(spC, arg3); + MTXCopy(spC, arg3); } arg2->x = spC[0][3]; arg2->y = spC[1][3]; diff --git a/src/REL/m442Dll/main.c b/src/REL/m442Dll/main.c index 28beaccd..53dd649a 100644 --- a/src/REL/m442Dll/main.c +++ b/src/REL/m442Dll/main.c @@ -1489,7 +1489,7 @@ void fn_1_485C(ModelData *model, Mtx mtx) var_r29 = Hu3DCamera; C_MTXOrtho(sp100, 0.0f, 480.0f, 0.0f, 640.0f, 0.0f, 100.0f); GXSetProjection(sp100, GX_ORTHOGRAPHIC); - PSMTXIdentity(spD0); + MTXIdentity(spD0); GXLoadPosMtxImm(spD0, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -1529,7 +1529,7 @@ void fn_1_485C(ModelData *model, Mtx mtx) GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); C_MTXPerspective(sp40, var_r29->fov, var_r29->aspect, var_r29->near, var_r29->far); GXSetProjection(sp40, GX_PERSPECTIVE); - PSMTXInverse(mtx, spA0); + MTXInverse(mtx, spA0); spA0[0][3] = spA0[1][3] = spA0[2][3] = 0.0f; PSMTXReorder(spA0, sp70); PSMTXROMultVecArray(sp70, &lbl_1_data_1C0[0], &sp10, 4); @@ -1585,7 +1585,7 @@ void fn_1_54C8(ModelData *model, Mtx mtx) fn_1_8520(&lbl_1_bss_C05C[1], 0); C_MTXOrtho(sp5C, 0.0f, 480.0f, 0.0f, 640.0f, 0.0f, 100.0f); GXSetProjection(sp5C, GX_ORTHOGRAPHIC); - PSMTXIdentity(sp2C); + MTXIdentity(sp2C); GXLoadPosMtxImm(sp2C, 0); GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE); GXSetNumTexGens(2); @@ -1734,9 +1734,9 @@ void fn_1_5EDC(ModelData *model, float (*mtx)[4]) s32 var_r30; var_r31 = model->unk_120; - PSMTXInverse(mtx, spC); + MTXInverse(mtx, spC); spC[0][3] = spC[1][3] = spC[2][3] = 0.0f; - PSMTXConcat(mtx, &spC[0], mtx); + MTXConcat(mtx, &spC[0], mtx); GXLoadPosMtxImm(mtx, 0); GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); GXSetNumTexGens(1); diff --git a/src/REL/m443Dll/main.c b/src/REL/m443Dll/main.c index 5b22d7c6..acf8f914 100644 --- a/src/REL/m443Dll/main.c +++ b/src/REL/m443Dll/main.c @@ -495,15 +495,15 @@ void fn_1_1D8C(omObjData *object) lbl_1_bss_4 = HuAudSStreamPlay(0xB); } var_f31 = (float)object->work[0] / lbl_1_data_F0[object->work[1]]; - PSVECSubtract(&lbl_1_data_60[object->work[1] + 1], &lbl_1_data_60[object->work[1]], &sp8); - PSVECScale(&sp8, &sp8, var_f31); - PSVECAdd(&lbl_1_data_60[object->work[1]], &sp8, &sp8); + VECSubtract(&lbl_1_data_60[object->work[1] + 1], &lbl_1_data_60[object->work[1]], &sp8); + VECScale(&sp8, &sp8, var_f31); + VECAdd(&lbl_1_data_60[object->work[1]], &sp8, &sp8); Center.x = sp8.x; Center.y = sp8.y; Center.z = sp8.z; - PSVECSubtract(&lbl_1_data_A8[object->work[1] + 1], &lbl_1_data_A8[object->work[1]], &sp8); - PSVECScale(&sp8, &sp8, var_f31); - PSVECAdd(&lbl_1_data_A8[object->work[1]], &sp8, &sp8); + VECSubtract(&lbl_1_data_A8[object->work[1] + 1], &lbl_1_data_A8[object->work[1]], &sp8); + VECScale(&sp8, &sp8, var_f31); + VECAdd(&lbl_1_data_A8[object->work[1]], &sp8, &sp8); CRot.x = sp8.x; CRot.y = sp8.y; CRot.z = 0.0f; @@ -922,7 +922,7 @@ void fn_1_3D78(ModelData *arg0, Mtx arg1) { Mtx spC; - PSMTXIdentity(spC); + MTXIdentity(spC); GXLoadPosMtxImm(spC, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -1094,13 +1094,13 @@ void fn_1_4444(Vec *arg0, Vec *arg1) Vec sp10; float var_f30; - PSVECSubtract(arg1, arg0, &sp10); + VECSubtract(arg1, arg0, &sp10); Center = *arg1; var_f30 = (sp10.x * sp10.x) + (sp10.z * sp10.z); CRot.x = atan2d(sp10.y, sqrtf(var_f30)); CRot.y = atan2d(-sp10.x, -sp10.z); CRot.z = 0.0f; - CZoom = PSVECMag(&sp10); + CZoom = VECMag(&sp10); } void fn_1_464C(float arg8, float arg9, float argA, float argB, float argC, float argD) @@ -1116,13 +1116,13 @@ void fn_1_464C(float arg8, float arg9, float argA, float argB, float argC, float sp30.x = argB; sp30.y = argC; sp30.z = argD; - PSVECSubtract(&sp30, &sp3C, &sp24); + VECSubtract(&sp30, &sp3C, &sp24); Center = sp30; var_f30 = (sp24.x * sp24.x) + (sp24.z * sp24.z); CRot.x = atan2d(sp24.y, sqrtf(var_f30)); CRot.y = atan2d(-sp24.x, -sp24.z); CRot.z = 0.0f; - CZoom = PSVECMag(&sp24); + CZoom = VECMag(&sp24); } float fn_1_488C(float arg8, float arg9, float argA) diff --git a/src/REL/m443Dll/map.c b/src/REL/m443Dll/map.c index 48aef505..d79414dc 100644 --- a/src/REL/m443Dll/map.c +++ b/src/REL/m443Dll/map.c @@ -132,11 +132,11 @@ void fn_1_4D14(omObjData *object) var_r30 = fn_1_40AC(lbl_1_data_240[var_r29 + 1]); mtxRot(sp5C, var_r30->unk_28.x, var_r30->unk_28.y, 0.0f); sp8.z = var_r30->unk_34; - PSMTXMultVec(sp5C, &sp8, &sp14); - PSVECAdd(&var_r30->unk_1C, &sp14, &sp20); + MTXMultVec(sp5C, &sp8, &sp14); + VECAdd(&var_r30->unk_1C, &sp14, &sp20); sp2C[var_r29].y += var_f31; - PSMTXMultVec(sp5C, &sp2C[var_r29], &sp14); - PSVECAdd(&sp20, &sp14, &sp20); + MTXMultVec(sp5C, &sp2C[var_r29], &sp14); + VECAdd(&sp20, &sp14, &sp20); Hu3DModelPosSetV(object->model[var_r29 + 9], &sp20); Hu3DModelRotSet(object->model[var_r29 + 9], var_r30->unk_28.x, var_r30->unk_28.y, 0.0f); Hu3DModelScaleSet(object->model[var_r29 + 9], 0.15f, 0.15f, 0.15f); diff --git a/src/REL/m443Dll/player.c b/src/REL/m443Dll/player.c index ee7e5237..fb293d09 100644 --- a/src/REL/m443Dll/player.c +++ b/src/REL/m443Dll/player.c @@ -382,7 +382,7 @@ void fn_1_5BD4(omObjData *object) break; } fn_1_7340(object); - PSVECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); + VECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); fn_1_7130(object); fn_1_69B4(object); @@ -428,11 +428,11 @@ void fn_1_6458(omObjData *object) var_r29 = 1; } fn_1_7340(object); - PSVECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); + VECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); fn_1_7130(object); fn_1_69B4(object); temp_r31->unk100->unk_1C = temp_r31->unkDC; - PSVECAdd(&temp_r31->unk100->unk_1C, &temp_r31->unk100->unk_54, &temp_r31->unk100->unk_1C); + VECAdd(&temp_r31->unk100->unk_1C, &temp_r31->unk100->unk_54, &temp_r31->unk100->unk_1C); if ((fn_1_42E4() == 3) && (var_r29 != 0)) { fn_1_43AC(object->work[0]); temp_r31->unk108 = 0; @@ -451,11 +451,11 @@ void fn_1_6674(omObjData *object) temp_r31->unk14 = 0; temp_r31->unk18 = 0.0f; fn_1_7340(object); - PSVECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); + VECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); fn_1_7130(object); fn_1_69B4(object); temp_r31->unk100->unk_1C = temp_r31->unkDC; - PSVECAdd(&temp_r31->unk100->unk_1C, &temp_r31->unk100->unk_54, &temp_r31->unk100->unk_1C); + VECAdd(&temp_r31->unk100->unk_1C, &temp_r31->unk100->unk_54, &temp_r31->unk100->unk_1C); if (fn_1_42E4() == 5) { temp_r31->unk1C = 0; temp_r31->unk34 = 0; @@ -468,7 +468,7 @@ void fn_1_6750(omObjData *object) M443DllWorkStruct *temp_r31; temp_r31 = object->data; - PSVECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); + VECAdd(&temp_r31->unkC4, &temp_r31->unkD0, &temp_r31->unkC4); fn_1_7130(object); fn_1_69B4(object); switch (temp_r31->unk34) { @@ -673,9 +673,9 @@ void fn_1_7130(omObjData *object) for (var_r28 = 0; var_r28 < 4; var_r28++) { if (var_r29 != var_r28) { temp_r30 = lbl_1_bss_90[var_r28]->data; - PSVECSubtract(&temp_r31->unkC4, &temp_r30->unkC4, &sp8); + VECSubtract(&temp_r31->unkC4, &temp_r30->unkC4, &sp8); sp8.y = 0.0f; - var_f31 = PSVECMag(&sp8); + var_f31 = VECMag(&sp8); if (var_f31 < (temp_r31->unkC0 + temp_r30->unkC0)) { if (var_f31 > 0.0f) { var_f31 = 0.5f * ((temp_r31->unkC0 + temp_r30->unkC0) - var_f31); @@ -685,10 +685,10 @@ void fn_1_7130(omObjData *object) sp8.x = (frandmod(0x3E8) - 0x1F4); sp8.z = (frandmod(0x3E8) - 0x1F4); } - PSVECNormalize(&sp8, &sp8); - PSVECScale(&sp8, &sp8, var_f31); - PSVECAdd(&temp_r31->unkC4, &sp8, &temp_r31->unkC4); - PSVECSubtract(&temp_r30->unkC4, &sp8, &temp_r30->unkC4); + VECNormalize(&sp8, &sp8); + VECScale(&sp8, &sp8, var_f31); + VECAdd(&temp_r31->unkC4, &sp8, &temp_r31->unkC4); + VECSubtract(&temp_r30->unkC4, &sp8, &temp_r30->unkC4); } } } @@ -1139,7 +1139,7 @@ void fn_1_8E34(s32 arg0) for (var_r29 = 0; var_r29 < temp_r30->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.z -= 0.3f; var_r31->unk2C += 2.0f; var_r31->unk40.a *= 0.98f; diff --git a/src/REL/m447dll/block.c b/src/REL/m447dll/block.c index fcd1280b..939c795b 100755 --- a/src/REL/m447dll/block.c +++ b/src/REL/m447dll/block.c @@ -161,13 +161,13 @@ void fn_1_9374(UnkM447Struct_01 *arg0) Mtx sp8; temp_r30 = &Hu3DData[arg0->unk58[arg0->unk00]]; - PSMTXIdentity(temp_r30->unk_F0); - PSMTXRotRad(sp8, 'x', MTXDegToRad(arg0->unk1C.x)); - PSMTXConcat(temp_r30->unk_F0, sp8, temp_r30->unk_F0); - PSMTXRotRad(sp8, 'y', MTXDegToRad(arg0->unk1C.y)); - PSMTXConcat(temp_r30->unk_F0, sp8, temp_r30->unk_F0); - PSMTXRotRad(sp8, 'z', MTXDegToRad(arg0->unk1C.z)); - PSMTXConcat(temp_r30->unk_F0, sp8, temp_r30->unk_F0); + MTXIdentity(temp_r30->unk_F0); + MTXRotRad(sp8, 'x', MTXDegToRad(arg0->unk1C.x)); + MTXConcat(temp_r30->unk_F0, sp8, temp_r30->unk_F0); + MTXRotRad(sp8, 'y', MTXDegToRad(arg0->unk1C.y)); + MTXConcat(temp_r30->unk_F0, sp8, temp_r30->unk_F0); + MTXRotRad(sp8, 'z', MTXDegToRad(arg0->unk1C.z)); + MTXConcat(temp_r30->unk_F0, sp8, temp_r30->unk_F0); Hu3DModelPosSet(arg0->unk58[arg0->unk00], arg0->unk10.x, arg0->unk10.y, arg0->unk10.z); Hu3DModelPosSet(arg0->unk58[20], arg0->unk10.x, arg0->unk10.y - 100.0f, arg0->unk10.z); Hu3DModelPosSet(arg0->unk58[21], arg0->unk10.x, arg0->unk10.y, arg0->unk10.z + 120.0f * arg0->unk54); diff --git a/src/REL/m448Dll/main.c b/src/REL/m448Dll/main.c index 1ee1eb09..0fccc340 100755 --- a/src/REL/m448Dll/main.c +++ b/src/REL/m448Dll/main.c @@ -201,7 +201,7 @@ void fn_1_4FC(ModelData *model, Mtx matrix) GXSetViewport(0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); C_MTXOrtho(sp98, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f); GXSetProjection(sp98, GX_ORTHOGRAPHIC); - PSMTXIdentity(spC8); + MTXIdentity(spC8); GXLoadPosMtxImm(spC8, GX_PNMTX0); GXSetNumTevStages(1); GXSetNumTexGens(1); @@ -454,8 +454,8 @@ void fn_1_1338(omObjData *arg0) sp178 = lbl_1_rodata_100; sp178.x = var_f20; sp178.z = -sp118; - PSMTXRotRad(sp184, 'y', MTXDegToRad(CRot.y)); - PSMTXMultVec(sp184, &sp178, &sp178); + MTXRotRad(sp184, 'y', MTXDegToRad(CRot.y)); + MTXMultVec(sp184, &sp178, &sp178); var_f20 = sp178.x; sp118 = -sp178.z; } diff --git a/src/REL/m449Dll/main.c b/src/REL/m449Dll/main.c index be72261b..be902879 100644 --- a/src/REL/m449Dll/main.c +++ b/src/REL/m449Dll/main.c @@ -1288,19 +1288,19 @@ void fn_1_758(omObjData *var_r29) sp124 = ((-90.175 <= lbl_1_bss_18) && (lbl_1_bss_18 <= -90.0f)) != 0 ? -90.175 : ((-90.0f <= lbl_1_bss_18) && (lbl_1_bss_18 <= -89.825) ? -89.825 : lbl_1_bss_18); - PSMTXRotRad(sp304, 0x78, 0.017453292f * (10.0f * var_r31->unk_5C)); - PSMTXRotRad(sp364, 0x7A, 0.017453292f * (10.0f * -var_r31->unk_58)); - PSMTXConcat(sp364, sp304, sp364); - PSMTXRotRad(sp304, 0x79, 0.017453292f * sp124); - PSMTXRotRad(sp334, 0x78, 0.017453292f * (15.0f * var_r31->unk_5C)); - PSMTXConcat(sp334, sp304, sp334); - PSMTXRotRad(sp304, 0x7A, 0.017453292f * (15.0f * -var_r31->unk_58)); - PSMTXConcat(sp304, sp334, sp334); + MTXRotRad(sp304, 0x78, 0.017453292f * (10.0f * var_r31->unk_5C)); + MTXRotRad(sp364, 0x7A, 0.017453292f * (10.0f * -var_r31->unk_58)); + MTXConcat(sp364, sp304, sp364); + MTXRotRad(sp304, 0x79, 0.017453292f * sp124); + MTXRotRad(sp334, 0x78, 0.017453292f * (15.0f * var_r31->unk_5C)); + MTXConcat(sp334, sp304, sp334); + MTXRotRad(sp304, 0x7A, 0.017453292f * (15.0f * -var_r31->unk_58)); + MTXConcat(sp304, sp334, sp334); Hu3DMtxRotGet(sp334, &sp2A8); sp2B4.x = var_r31->unk_60[var_r30]; sp2B4.y = var_r31->unk_70[var_r30]; sp2B4.z = var_r31->unk_80[var_r30]; - PSMTXMultVec(sp364, &sp2B4, &sp2B4); + MTXMultVec(sp364, &sp2B4, &sp2B4); Hu3DModelPosSet(var_r29->model[var_r30 + 0xC], sp2D8.x + sp2B4.x, sp2D8.y + sp2B4.y, sp2D8.z + sp2B4.z); Hu3DModelRotSet(var_r29->model[var_r30 + 0xC], 10.0f * var_r31->unk_5C, 0.0f, 10.0f * -var_r31->unk_58); Hu3DModelRotSet(var_r29->model[var_r30 + 0xC], sp2A8.x, sp2A8.y, sp2A8.z); @@ -1716,7 +1716,7 @@ void fn_1_7F94(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk2C = 50.0f; } if (var_r31->unk00_s16 < 0xF0) { - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); var_r31->unk08.x *= 0.9f; var_r31->unk08.z *= 0.9f; var_r31->unk08.y *= 0.9f; diff --git a/src/REL/m453Dll/main.c b/src/REL/m453Dll/main.c index 2c099d2d..9db313c7 100644 --- a/src/REL/m453Dll/main.c +++ b/src/REL/m453Dll/main.c @@ -941,8 +941,8 @@ void fn_1_23E0(omObjData *object) case 4: var_r24 = fn_1_82AC(sp38); for (var_r30 = 0; var_r30 < var_r24; var_r30++) { - PSVECSubtract(&sp38[var_r30], &var_r31->unk_2C, &sp8); - sp20[var_r30] = PSVECMag(&sp8); + VECSubtract(&sp38[var_r30], &var_r31->unk_2C, &sp8); + sp20[var_r30] = VECMag(&sp8); } for (var_r30 = 0; var_r30 < (var_r24 - 1); var_r30++) { for (var_r29 = var_r30 + 1; var_r29 < var_r24; var_r29++) { @@ -1144,14 +1144,14 @@ s32 fn_1_36DC(void) for (var_r29 = var_r30 + 1; var_r29 < 4; var_r29++) { var_r27 = lbl_1_bss_3C[var_r29]->data; if (var_r27->unk_07 != 0) { - PSVECSubtract(&var_r28->unk_2C, &var_r27->unk_2C, &sp8); - var_f31 = PSVECMag(&sp8); + VECSubtract(&var_r28->unk_2C, &var_r27->unk_2C, &sp8); + var_f31 = VECMag(&sp8); if (var_f31 < 80.0f) { - PSVECNormalize(&sp8, &sp8); + VECNormalize(&sp8, &sp8); var_f30 = 0.0001f + (0.5f * (80.0f - var_f31)); - PSVECScale(&sp8, &sp8, var_f30); - PSVECAdd(&sp14[var_r30], &sp8, &sp14[var_r30]); - PSVECSubtract(&sp14[var_r29], &sp8, &sp14[var_r29]); + VECScale(&sp8, &sp8, var_f30); + VECAdd(&sp14[var_r30], &sp8, &sp14[var_r30]); + VECSubtract(&sp14[var_r29], &sp8, &sp14[var_r29]); var_r28->unk_0E++; var_r27->unk_0E++; var_r26++; @@ -1164,7 +1164,7 @@ s32 fn_1_36DC(void) var_r25 = lbl_1_bss_3C[var_r30]; var_r31 = var_r25->data; if (var_r31->unk_07 != 0) { - PSVECAdd(&var_r31->unk_2C, &sp14[var_r30], &var_r31->unk_2C); + VECAdd(&var_r31->unk_2C, &sp14[var_r30], &var_r31->unk_2C); if (var_r31->unk_2C.x > 660.0f) { var_r31->unk_2C.x = 660.0f; } @@ -1237,8 +1237,8 @@ void fn_1_3BB4(Vec *arg0, Vec *arg1) var_r30 = fn_1_844C(sp18); var_f31 = 2000.0f; for (var_r31 = 0; var_r31 < var_r30; var_r31++) { - PSVECSubtract(&sp18[var_r31], arg0, &spC); - var_f30 = PSVECMag(&spC); + VECSubtract(&sp18[var_r31], arg0, &spC); + var_f30 = VECMag(&spC); if (!(var_f30 >= var_f31)) { var_f31 = var_f30; *arg1 = sp18[var_r31]; @@ -1403,18 +1403,18 @@ void fn_1_4574(Mtx arg0, float arg8, float arg9, float argA) Mtx sp38; Mtx sp8; if (argA != 0.0f) { - PSMTXRotRad(arg0, 0x5A, 0.017453292f * argA); + MTXRotRad(arg0, 0x5A, 0.017453292f * argA); } else { - PSMTXIdentity(arg0); + MTXIdentity(arg0); } if (arg8 != 0.0f) { - PSMTXRotRad(sp38, 0x58, 0.017453292f * arg8); - PSMTXConcat(sp38, arg0, arg0); + MTXRotRad(sp38, 0x58, 0.017453292f * arg8); + MTXConcat(sp38, arg0, arg0); } if (arg9 != 0.0f) { - PSMTXRotRad(sp8, 0x59, 0.017453292f * arg9); - PSMTXConcat(sp8, arg0, arg0); + MTXRotRad(sp8, 0x59, 0.017453292f * arg9); + MTXConcat(sp8, arg0, arg0); } } // TODO figue out type of arg0 @@ -1570,8 +1570,8 @@ void fn_1_5290(float *arg0, float (*arg1)[3], float (*arg2)[3], s32 arg3) arg0[0] = 0.0f; for (var_r30 = 1; var_r30 < arg3; var_r30++) { - PSVECSubtract((Vec *)&arg1[var_r30], (Vec *)&arg1[var_r30 - 1], &sp8); - arg0[var_r30] = arg0[var_r30 - 1] + PSVECMag(&sp8); + VECSubtract((Vec *)&arg1[var_r30], (Vec *)&arg1[var_r30 - 1], &sp8); + arg0[var_r30] = arg0[var_r30 - 1] + VECMag(&sp8); } for (var_r27 = 0; var_r27 < 3; var_r27++) { for (var_r30 = 0; var_r30 < arg3; var_r30++) { diff --git a/src/REL/m453Dll/map.c b/src/REL/m453Dll/map.c index 86a363d1..6771a755 100644 --- a/src/REL/m453Dll/map.c +++ b/src/REL/m453Dll/map.c @@ -514,12 +514,12 @@ void fn_1_6EB4(omObjData *object) Mtx sp8; s32 var_r30; - PSMTXTrans(sp38, object->trans.x, object->trans.y, object->trans.z); + MTXTrans(sp38, object->trans.x, object->trans.y, object->trans.z); mtxRot(sp8, object->rot.x, object->rot.y, object->rot.z); - PSMTXConcat(sp38, sp8, sp38); + MTXConcat(sp38, sp8, sp38); for (var_r30 = 0; var_r30 < 6; var_r30++) { - PSMTXTrans(sp8, lbl_1_data_A88[var_r30].x, lbl_1_data_A88[var_r30].y, lbl_1_data_A88[var_r30].z); - PSMTXConcat(sp38, sp8, sp8); + MTXTrans(sp8, lbl_1_data_A88[var_r30].x, lbl_1_data_A88[var_r30].y, lbl_1_data_A88[var_r30].z); + MTXConcat(sp38, sp8, sp8); Hu3DModelPosSet(object->model[var_r30 + 1], sp8[0][3], sp8[1][3], sp8[2][3]); Hu3DModelRotSet(object->model[var_r30 + 1], object->rot.x, object->rot.y, object->rot.z); } @@ -685,12 +685,12 @@ void fn_1_73C4(omObjData *object) break; } } - PSMTXTrans(sp8, object->trans.x, object->trans.y, object->trans.z); + MTXTrans(sp8, object->trans.x, object->trans.y, object->trans.z); mtxRot(sp38, object->rot.x, object->rot.y, object->rot.z); - PSMTXConcat(sp8, sp38, sp8); + MTXConcat(sp8, sp38, sp8); for (var_r28 = 0; var_r28 < 6; var_r28++) { - PSMTXTrans(sp38, lbl_1_data_A88[var_r28].x, lbl_1_data_A88[var_r28].y, lbl_1_data_A88[var_r28].z); - PSMTXConcat(sp8, sp38, sp38); + MTXTrans(sp38, lbl_1_data_A88[var_r28].x, lbl_1_data_A88[var_r28].y, lbl_1_data_A88[var_r28].z); + MTXConcat(sp8, sp38, sp38); Hu3DModelPosSet(object->model[var_r28 + 1], sp38[0][3], sp38[1][3], sp38[2][3]); Hu3DModelRotSet(object->model[var_r28 + 1], object->rot.x, object->rot.y, object->rot.z); } @@ -825,16 +825,16 @@ s32 fn_1_7CE0(float arg8, float arg9, Vec *arg0) var_r28 -= 6; fn_1_7BB0(var_r27, &sp10); sp10 = lbl_1_data_A88[var_r27]; - PSMTXTrans(sp4C, var_r31->trans.x, var_r31->trans.y, var_r31->trans.z); + MTXTrans(sp4C, var_r31->trans.x, var_r31->trans.y, var_r31->trans.z); mtxRot(sp1C, var_r31->rot.x, var_r31->rot.y, var_r31->rot.z); - PSMTXConcat(sp4C, sp1C, sp4C); - PSMTXTrans(sp1C, sp10.x, sp10.y, sp10.z); - PSMTXConcat(sp4C, sp1C, sp4C); + MTXConcat(sp4C, sp1C, sp4C); + MTXTrans(sp1C, sp10.x, sp10.y, sp10.z); + MTXConcat(sp4C, sp1C, sp4C); var_r30 = lbl_1_data_AFC[var_r28]; var_r23 = lbl_1_data_B14[var_r28]; for (var_r24 = 0; var_r24 < var_r23; var_r24++) { - PSMTXTrans(sp1C, var_r30->x, var_r30->y, var_r30->z); - PSMTXConcat(sp4C, sp1C, sp1C); + MTXTrans(sp1C, var_r30->x, var_r30->y, var_r30->z); + MTXConcat(sp4C, sp1C, sp1C); arg0->x = sp1C[0][3]; arg0->y = sp1C[1][3]; arg0->z = sp1C[2][3]; @@ -930,17 +930,17 @@ s32 fn_1_844C(Vec *arg0) var_r30 = lbl_1_bss_A4[lbl_1_bss_9C]; var_r27 = var_r30->data; var_r23 = fn_1_8250(var_r27, sp8); - PSMTXTrans(sp50, var_r30->trans.x, var_r30->trans.y, var_r30->trans.z); + MTXTrans(sp50, var_r30->trans.x, var_r30->trans.y, var_r30->trans.z); mtxRot(sp20, var_r30->rot.x, var_r30->rot.y, var_r30->rot.z); - PSMTXConcat(sp50, sp20, sp50); + MTXConcat(sp50, sp20, sp50); for (var_r29 = 0; var_r29 < var_r23; var_r29++) { fn_1_7BB0(sp8[var_r29], arg0); var_r26 = fn_1_7BFC(var_r27, sp8[var_r29]) - 6; arg0->x += lbl_1_data_B2C[var_r26].x; arg0->y += lbl_1_data_B2C[var_r26].y; arg0->z += lbl_1_data_B2C[var_r26].z; - PSMTXTrans(sp20, arg0->x, arg0->y, arg0->z); - PSMTXConcat(sp50, sp20, sp20); + MTXTrans(sp20, arg0->x, arg0->y, arg0->z); + MTXConcat(sp50, sp20, sp20); arg0->x = sp20[0][3]; arg0->y = sp20[1][3]; arg0->z = sp20[2][3]; @@ -991,7 +991,7 @@ s32 fn_1_867C(Vec *arg0, Vec *arg1) if ((var_r28->rot.x > 0.0f) || (var_r28->rot.x <= -90.0f)) { return 0; } - PSVECSubtract(arg0, &var_r28->trans, &sp3C); + VECSubtract(arg0, &var_r28->trans, &sp3C); sp3C.z = sp3C.z / cosd(var_r28->rot.x); var_f24 = arg0->z; var_f25 = arg0->x; @@ -1002,29 +1002,29 @@ s32 fn_1_867C(Vec *arg0, Vec *arg1) } var_r24 -= 6; sp48 = lbl_1_data_A88[var_r19]; - PSVECSubtract(&sp3C, &sp48, &sp3C); + VECSubtract(&sp3C, &sp48, &sp3C); var_r30 = lbl_1_data_B74[var_r24][0]; var_r29 = lbl_1_data_B74[var_r24][1]; var_r21 = lbl_1_data_BA4[var_r24]; for (var_r31 = 0; var_r31 < var_r21; var_r31++) { var_r27 = (var_r31 + 1) % var_r21; - PSVECSubtract(var_r30 + var_r27, var_r30 + var_r31, &sp24); - PSVECSubtract(&sp3C, var_r30 + var_r27, &sp18); - PSVECCrossProduct(&sp24, &sp18, &spC); + VECSubtract(var_r30 + var_r27, var_r30 + var_r31, &sp24); + VECSubtract(&sp3C, var_r30 + var_r27, &sp18); + VECCrossProduct(&sp24, &sp18, &spC); if (!(spC.y < 0.0f)) { - PSVECSubtract(var_r29 + var_r27, var_r30 + var_r27, &sp24); - PSVECSubtract(&sp3C, var_r29 + var_r27, &sp18); - PSVECCrossProduct(&sp24, &sp18, &spC); + VECSubtract(var_r29 + var_r27, var_r30 + var_r27, &sp24); + VECSubtract(&sp3C, var_r29 + var_r27, &sp18); + VECCrossProduct(&sp24, &sp18, &spC); if (!(spC.y < 0.0f)) { - PSVECSubtract(var_r29 + var_r31, var_r29 + var_r27, &sp24); - PSVECSubtract(&sp3C, var_r29 + var_r31, &sp18); - PSVECCrossProduct(&sp24, &sp18, &spC); + VECSubtract(var_r29 + var_r31, var_r29 + var_r27, &sp24); + VECSubtract(&sp3C, var_r29 + var_r31, &sp18); + VECCrossProduct(&sp24, &sp18, &spC); if (!(spC.y < 0.0f)) { - PSVECSubtract(var_r30 + var_r31, var_r29 + var_r31, &sp24); - PSVECSubtract(&sp3C, var_r30 + var_r31, &sp18); - PSVECCrossProduct(&sp24, &sp18, &spC); + VECSubtract(var_r30 + var_r31, var_r29 + var_r31, &sp24); + VECSubtract(&sp3C, var_r30 + var_r31, &sp18); + VECCrossProduct(&sp24, &sp18, &spC); if (!(spC.y < 0.0f)) { - PSVECSubtract(var_r30 + var_r27, var_r30 + var_r31, &sp24); + VECSubtract(var_r30 + var_r27, var_r30 + var_r31, &sp24); var_f30 = (((sp3C.z * sp24.z) + (((sp3C.y * sp24.y) + ((sp3C.x * sp24.x) - (sp24.x * var_r30[var_r31].x))) - (sp24.y * var_r30[var_r31].y))) - (sp24.z * var_r30[var_r31].z)) @@ -1032,9 +1032,9 @@ s32 fn_1_867C(Vec *arg0, Vec *arg1) sp30.x = var_r30[var_r31].x + (var_f30 * sp24.x); sp30.y = var_r30[var_r31].y + (var_f30 * sp24.y); sp30.z = var_r30[var_r31].z + (var_f30 * sp24.z); - PSVECSubtract(&sp30, &sp3C, &spC); - var_f28 = PSVECMag(&spC); - PSVECSubtract(var_r29 + var_r27, var_r29 + var_r31, &sp18); + VECSubtract(&sp30, &sp3C, &spC); + var_f28 = VECMag(&spC); + VECSubtract(var_r29 + var_r27, var_r29 + var_r31, &sp18); var_f29 = (((sp3C.z * sp18.z) + (((sp3C.y * sp18.y) + ((sp3C.x * sp18.x) - (sp18.x * var_r29[var_r31].x))) - (sp18.y * var_r29[var_r31].y))) - (sp18.z * var_r29[var_r31].z)) @@ -1042,8 +1042,8 @@ s32 fn_1_867C(Vec *arg0, Vec *arg1) sp30.x = var_r29[var_r31].x + (var_f29 * sp18.x); sp30.y = var_r29[var_r31].y + (var_f29 * sp18.y); sp30.z = var_r29[var_r31].z + (var_f29 * sp18.z); - PSVECSubtract(&sp30, &sp3C, &spC); - var_f27 = PSVECMag(&spC); + VECSubtract(&sp30, &sp3C, &spC); + var_f27 = VECMag(&spC); if (var_f28 == 0.0f) { var_f31 = var_f30; } diff --git a/src/REL/m455Dll/main.c b/src/REL/m455Dll/main.c index fa1c4b5b..667d1084 100644 --- a/src/REL/m455Dll/main.c +++ b/src/REL/m455Dll/main.c @@ -67,7 +67,7 @@ void ObjectSetup(void) lbl_1_bss_8.x = lbl_1_data_44.x - lbl_1_data_38.x; lbl_1_bss_8.y = lbl_1_data_44.y - lbl_1_data_38.y; lbl_1_bss_8.z = lbl_1_data_44.z - lbl_1_data_38.z; - PSVECNormalize(&lbl_1_bss_8, &lbl_1_bss_8); + VECNormalize(&lbl_1_bss_8, &lbl_1_bss_8); light = Hu3DGLightCreateV(&lbl_1_data_38, &lbl_1_bss_8, &lbl_1_data_50); Hu3DGLightInfinitytSet(light); Hu3DGLightStaticSet(light, 1); diff --git a/src/REL/m456Dll/main.c b/src/REL/m456Dll/main.c index 9c760c47..97e8ffb5 100644 --- a/src/REL/m456Dll/main.c +++ b/src/REL/m456Dll/main.c @@ -146,7 +146,7 @@ void ObjectSetup(void) lbl_1_bss_8.x = lbl_1_data_44.x - lbl_1_data_38.x; lbl_1_bss_8.y = lbl_1_data_44.y - lbl_1_data_38.y; lbl_1_bss_8.z = lbl_1_data_44.z - lbl_1_data_38.z; - PSVECNormalize(&lbl_1_bss_8, &lbl_1_bss_8); + VECNormalize(&lbl_1_bss_8, &lbl_1_bss_8); var_r29 = Hu3DGLightCreateV(&lbl_1_data_38, &lbl_1_bss_8, &lbl_1_data_50); Hu3DGLightInfinitytSet(var_r29); Hu3DGLightStaticSet(var_r29, 1); @@ -714,7 +714,7 @@ void fn_1_1304(omObjData *var_r30) var_r28 = 0x40000001; if ((fn_1_3B0() == 5) && (var_r31->unk_00_field3 == 0) && (lbl_1_bss_64 == 1)) { var_r25 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0); - PSVECSubtract(&var_r25[*lbl_1_bss_70]->trans, &var_r30->trans, &sp8); + VECSubtract(&var_r25[*lbl_1_bss_70]->trans, &var_r30->trans, &sp8); var_r30->rot.y = fn_1_2090(var_r30->rot.y, atan2d(sp8.x, sp8.z), 0.1f); } if (fn_1_3B0() == 0xB) { diff --git a/src/REL/m458Dll/main.c b/src/REL/m458Dll/main.c index f7242c46..3b261cd0 100644 --- a/src/REL/m458Dll/main.c +++ b/src/REL/m458Dll/main.c @@ -329,8 +329,8 @@ void fn_1_4C8(omObjData *object) Vec sp1B0 = { 0.0f, 0.0f, 0.0f }; sp1B0.x = var_f31; sp1B0.z = var_f30; - PSMTXRotRad(sp1E0, 0x79, 0.017453292f * CRot.y); - PSMTXMultVec(sp1E0, &sp1B0, &sp1B0); + MTXRotRad(sp1E0, 0x79, 0.017453292f * CRot.y); + MTXMultVec(sp1E0, &sp1B0, &sp1B0); var_f31 = sp1B0.x; var_f30 = sp1B0.z; } diff --git a/src/REL/m460Dll/main.c b/src/REL/m460Dll/main.c index 123f1c3e..52ca989b 100644 --- a/src/REL/m460Dll/main.c +++ b/src/REL/m460Dll/main.c @@ -153,7 +153,7 @@ void ObjectSetup(void) sp8.x = sp8.z = 0.0f; sp8.y = lbl_1_data_18.z; mtxRot(sp2C, lbl_1_data_18.x, lbl_1_data_18.y, 0.0f); - PSMTXMultVec(sp2C, &sp8, &lbl_1_data_28); + MTXMultVec(sp2C, &sp8, &lbl_1_data_28); Hu3DGLightPosAimSetV(lbl_1_bss_1A[0], &lbl_1_data_28, &lbl_1_data_40); Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); lbl_1_bss_18 = lbl_1_bss_16 = lbl_1_bss_14 = lbl_1_bss_12 = lbl_1_bss_10 = -1; @@ -474,15 +474,15 @@ void fn_1_2564(omObjData *object) var_f31 *= -1.0f; } var_f31 = object->work[0] / var_f31; - PSVECSubtract(&lbl_1_data_4C[object->work[1] + var_r24], &lbl_1_data_4C[object->work[1]], &sp20); - PSVECScale(&sp20, &sp20, var_f31); - PSVECAdd(&lbl_1_data_4C[object->work[1]], &sp20, &sp20); + VECSubtract(&lbl_1_data_4C[object->work[1] + var_r24], &lbl_1_data_4C[object->work[1]], &sp20); + VECScale(&sp20, &sp20, var_f31); + VECAdd(&lbl_1_data_4C[object->work[1]], &sp20, &sp20); Center.x = sp20.x; Center.y = sp20.y; Center.z = sp20.z; - PSVECSubtract(&lbl_1_data_70[object->work[1] + var_r24], &lbl_1_data_70[object->work[1]], &sp20); - PSVECScale(&sp20, &sp20, var_f31); - PSVECAdd(&lbl_1_data_70[object->work[1]], &sp20, &sp20); + VECSubtract(&lbl_1_data_70[object->work[1] + var_r24], &lbl_1_data_70[object->work[1]], &sp20); + VECScale(&sp20, &sp20, var_f31); + VECAdd(&lbl_1_data_70[object->work[1]], &sp20, &sp20); CRot.x = sp20.x; CRot.y = sp20.y; CRot.z = 0.0f; @@ -683,8 +683,8 @@ void fn_1_3618(omObjData *var_r28) sp10[2] = var_r31->unk_44.unk_08 * var_r31->unk_40; sp10[3] = var_r31->unk_44.unk_0C * var_r31->unk_40; Hu3DCameraPerspectiveSet(var_r31->unk_3C, var_r31->unk_10, var_r31->unk_14, var_r31->unk_18, var_f31); - Hu3DCameraViewportSet( - var_r31->unk_3C, var_r31->unk_44.unk_00 - (0.5f * sp10[2]), var_r31->unk_44.unk_04 - (0.5f * sp10[3]), sp10[2], sp10[3], 0.0f, 1.0f); + Hu3DCameraViewportSet(var_r31->unk_3C, var_r31->unk_44.unk_00 - (0.5f * sp10[2]), var_r31->unk_44.unk_04 - (0.5f * sp10[3]), sp10[2], + sp10[3], 0.0f, 1.0f); sp10[0] = var_r31->unk_44.unk_00 - (0.5f * sp10[2]); sp10[1] = var_r31->unk_44.unk_04 - (0.5f * sp10[3]); sp8[0] = var_r31->unk_44.unk_00 + (0.5f * sp10[2]); @@ -731,7 +731,7 @@ void fn_1_3BC0(ModelData *model, Mtx mtx) DCStoreRange(&lbl_1_data_B8, 4); C_MTXPerspective(spC, 41.5f, 1.2f, 100.0f, 5500.0f); GXSetProjection(spC, GX_PERSPECTIVE); - PSMTXIdentity(sp3C); + MTXIdentity(sp3C); GXLoadPosMtxImm(sp3C, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -948,12 +948,12 @@ void fn_1_4388(Vec *sp8, Vec *var_r31) float var_f30; float var_f29; - PSVECSubtract(var_r31, sp8, &sp10); + VECSubtract(var_r31, sp8, &sp10); Center = *var_r31; CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); CRot.y = atan2d(-sp10.x, -sp10.z); CRot.z = 0.0f; - CZoom = PSVECMag(&sp10); + CZoom = VECMag(&sp10); } void fn_1_4590(float arg8, float arg9, float argA, float argB, float argC, float argD) @@ -968,12 +968,12 @@ void fn_1_4590(float arg8, float arg9, float argA, float argB, float argC, float sp30.x = argB; sp30.y = argC; sp30.z = argD; - PSVECSubtract(&sp30, &sp3C, &sp24); + VECSubtract(&sp30, &sp3C, &sp24); Center = sp30; CRot.x = atan2d(sp24.y, sqrtf((sp24.x * sp24.x) + (sp24.z * sp24.z))); CRot.y = atan2d(-sp24.x, -sp24.z); CRot.z = 0.0f; - CZoom = PSVECMag(&sp24); + CZoom = VECMag(&sp24); } float fn_1_47D0(float arg8, float arg9, float argA) diff --git a/src/REL/m460Dll/map.c b/src/REL/m460Dll/map.c index c2fea221..609dad13 100644 --- a/src/REL/m460Dll/map.c +++ b/src/REL/m460Dll/map.c @@ -270,9 +270,9 @@ void fn_1_6C00(omObjData *object) fn_1_7DA8(object, &sp14, 1); } } - PSVECSubtract(&var_r31->unk_48, &var_r31->unk_3C, &sp8); - PSVECScale(&sp8, &sp8, 0.4f); - PSVECAdd(&var_r31->unk_3C, &sp8, &sp14); + VECSubtract(&var_r31->unk_48, &var_r31->unk_3C, &sp8); + VECScale(&sp8, &sp8, 0.4f); + VECAdd(&var_r31->unk_3C, &sp8, &sp14); sp14.y += var_r31->unk_34; Hu3DModelPosSetV(var_r31->unk_2C, &sp14); var_r31->unk_30++; @@ -366,7 +366,7 @@ void fn_1_7790(ModelData *model, Mtx mtx) DCStoreRange(&lbl_1_data_378, 4); C_MTXPerspective(sp2C, 41.5f, 1.2f, 100.0f, 5500.0f); GXSetProjection(sp2C, GX_PERSPECTIVE); - PSMTXIdentity(sp5C); + MTXIdentity(sp5C); GXLoadPosMtxImm(sp5C, 0); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); @@ -409,7 +409,7 @@ void fn_1_7B94(s32 arg0) var_r30 = Hu3DData[arg0].unk_120; for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { if (var_r31->unk00_s16 != 0) { - PSVECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); + VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); switch (var_r31->unk02) { case 0: var_r31->unk2C += 1.0f; @@ -464,7 +464,7 @@ void fn_1_7DA8(omObjData *object, Vec *arg1, u32 arg2) sp1C.x = 100.0f * ((0.0026f * frandmod(0x3E8)) - 1.3f); sp1C.y = 0.0f; sp1C.z = 100.0f * ((0.000100000005f * frandmod(0x3E8)) - 0.05f); - PSVECAdd(&sp1C, arg1, &var_r31->unk34); + VECAdd(&sp1C, arg1, &var_r31->unk34); var_r31->unk30 = 0.0031415902f * frandmod(0x3E8); switch (arg2) { case 0: @@ -485,7 +485,7 @@ void fn_1_7DA8(omObjData *object, Vec *arg1, u32 arg2) if (frandmod(0x3E8) < 0x1F4) { sp1C.x *= -1.0f; } - PSVECAdd(&sp1C, arg1, &var_r31->unk34); + VECAdd(&sp1C, arg1, &var_r31->unk34); var_r31->unk00 = 60.0f * (0.2f + (0.0005f * frandmod(0x3E8))); var_r31->unk08.x = 1.6666667f * ((0.000100000005f * frandmod(0x3E8)) - 0.05f); var_r31->unk08.y = -1.6666667f * (0.2f + (0.0003f * frandmod(0x3E8))); diff --git a/src/REL/m460Dll/player.c b/src/REL/m460Dll/player.c index 740af4a2..ccb4b58e 100644 --- a/src/REL/m460Dll/player.c +++ b/src/REL/m460Dll/player.c @@ -218,7 +218,7 @@ void fn_1_4F6C(omObjData *object) } break; } - PSVECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); + VECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); fn_1_57D8(object); if (fn_1_414C() == 2) { var_r31->unk_2C = 0; @@ -343,7 +343,7 @@ void fn_1_5168(omObjData *object) break; } } - PSVECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); + VECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); fn_1_57D8(object); if ((fn_1_4164() == 5) && (var_r27 != 0)) { var_r31->unk_2C = 0; @@ -390,7 +390,7 @@ void fn_1_55EC(omObjData *object) fn_1_5CE0(object, 0); break; } - PSVECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); + VECAdd(&var_r31->unk_60, &var_r31->unk_6C, &var_r31->unk_60); fn_1_57D8(object); if (var_r31->unk_84 >= 0) { sp8 = var_r31->unk_60; @@ -426,15 +426,15 @@ s32 fn_1_58C8(omObjData *object, float arg8, float arg9) var_r31 = object->data; var_r30 = 0; - PSVECSubtract(&var_r31->unk_78, &var_r31->unk_60, &spC); + VECSubtract(&var_r31->unk_78, &var_r31->unk_60, &spC); spC.y = 0.0f; - var_f31 = PSVECMag(&spC); + var_f31 = VECMag(&spC); if (var_f31 < arg9) { var_f31 = 0.0f; var_r30 = 1; } else { - if (PSVECMag(&spC) >= 100.0f) { + if (VECMag(&spC) >= 100.0f) { var_f31 = 100.0f; } var_f31 = 0.2f + (0.008f * var_f31); @@ -636,12 +636,12 @@ void fn_1_61F4(omObjData *object) object->trans.z += 11.666667f; } else { - var_f31 = PSVECMag(&sp10); + var_f31 = VECMag(&sp10); if (var_f31 < 20.0f) { var_f31 = 0.0f; } else { - if (PSVECMag(&sp10) >= 100.0f) { + if (VECMag(&sp10) >= 100.0f) { var_f31 = 100.0f; } var_f31 = 0.2f + (0.008f * var_f31); diff --git a/src/REL/m461Dll/main.c b/src/REL/m461Dll/main.c index 2c18e8cd..0d20a7d3 100644 --- a/src/REL/m461Dll/main.c +++ b/src/REL/m461Dll/main.c @@ -403,9 +403,9 @@ void fn_1_1D70(s16 arg0, char *arg1, Vec *arg2, Mtx arg3) var_r30 = &Hu3DData[arg0]; Hu3DModelObjMtxGet(arg0, arg1, spC); - PSMTXConcat(var_r30->unk_F0, spC, spC); + MTXConcat(var_r30->unk_F0, spC, spC); if (NULL != arg3) { - PSMTXCopy(spC, arg3); + MTXCopy(spC, arg3); } arg2->x = spC[0][3]; arg2->y = spC[1][3]; @@ -1186,7 +1186,8 @@ s32 lbl_1_data_128[8][5] = { s32 lbl_1_data_1C8[3] = { DATA_MAKE_NUM(DATADIR_M461, 0x02), DATA_MAKE_NUM(DATADIR_M461, 0x03), DATA_MAKE_NUM(DATADIR_M461, 0x08) }; -s32 lbl_1_data_1D4[4] = { DATA_MAKE_NUM(DATADIR_M461, 0x04), DATA_MAKE_NUM(DATADIR_M461, 0x05), DATA_MAKE_NUM(DATADIR_M461, 0x06), DATA_MAKE_NUM(DATADIR_M461, 0x07) }; +s32 lbl_1_data_1D4[4] + = { DATA_MAKE_NUM(DATADIR_M461, 0x04), DATA_MAKE_NUM(DATADIR_M461, 0x05), DATA_MAKE_NUM(DATADIR_M461, 0x06), DATA_MAKE_NUM(DATADIR_M461, 0x07) }; float lbl_1_data_1E4[3] = { 0.3f, 0.5f, 0.9f }; diff --git a/src/REL/m462Dll/main.c b/src/REL/m462Dll/main.c index 7efd0602..ff5c24f1 100755 --- a/src/REL/m462Dll/main.c +++ b/src/REL/m462Dll/main.c @@ -78,9 +78,9 @@ void fn_1_44D8(void); void fn_1_4BC4(void); void fn_1_69C0(void); void fn_1_7D40(void); -void fn_1_545C(ModelData* model, ParticleData* particle, Mtx matrix); -void fn_1_594C(ModelData* model, ParticleData* particle, Mtx matrix); -void fn_1_5DE4(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_545C(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_594C(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_5DE4(ModelData *model, ParticleData *particle, Mtx matrix); void fn_1_7DA0(void); s32 fn_1_1880(float arg0, float arg1, float arg2, s32 arg3, s32 arg4); @@ -93,48 +93,28 @@ s32 lbl_1_bss_3D8; StructBss340 lbl_1_bss_340[1]; StructBss70 lbl_1_bss_70[10]; StructBss70 lbl_1_bss_28; -omObjData* lbl_1_bss_24; +omObjData *lbl_1_bss_24; Vec lbl_1_bss_18; Vec lbl_1_bss_C; Vec lbl_1_bss_0; s32 lbl_1_data_0[] = { 0, 1, 2, 3, 4, 5, 6, 7 }; -s32 lbl_1_data_20[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 79), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 22) -}; +s32 lbl_1_data_20[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 79), DATA_MAKE_NUM(DATADIR_MARIOMOT, 27), DATA_MAKE_NUM(DATADIR_MARIOMOT, 75), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 22) }; -Vec lbl_1_data_30[] = { - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f }, - { 0.0f, 0.0f, 35.0f } -}; +Vec lbl_1_data_30[] = { { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, + { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f }, { 0.0f, 0.0f, 35.0f } }; -Vec lbl_1_data_90[] = { - { -900.0f, 143.0f, -1020.0f }, - { -677.0f, 143.0f, -1020.0f }, - { 900.0f, 0.0f, -1150.0f }, - { -307.0f, 182.0f, -1575.0f } -}; +Vec lbl_1_data_90[] = { { -900.0f, 143.0f, -1020.0f }, { -677.0f, 143.0f, -1020.0f }, { 900.0f, 0.0f, -1150.0f }, { -307.0f, 182.0f, -1575.0f } }; -s32 lbl_1_data_C0[][5] = { - { 50, 80, 90, 95, 100 }, - { 5, 55, 85, 95, 100 }, - { 0, 5, 55, 90, 100 } -}; +s32 lbl_1_data_C0[][5] = { { 50, 80, 90, 95, 100 }, { 5, 55, 85, 95, 100 }, { 0, 5, 55, 90, 100 } }; float lbl_1_data_FC[] = { 0.3f, 0.5f, 0.7f, 0.9f, 1.0f }; -void ObjectSetup(void) { - Process* temp_r3; +void ObjectSetup(void) +{ + Process *temp_r3; temp_r3 = omInitObjMan(50, 0x2000); omGameSysInit(temp_r3); @@ -172,15 +152,16 @@ void ObjectSetup(void) { WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); } -void fn_1_4A0(void) { +void fn_1_4A0(void) +{ float temp_f31; float temp_f30; - void* var_r27; - StructBss340* temp_r31; - StructBss70* temp_r29; - Process* var_r25; - AnimData* var_r24; - AnimData* spC[4]; + void *var_r27; + StructBss340 *temp_r31; + StructBss70 *temp_r29; + Process *var_r25; + AnimData *var_r24; + AnimData *spC[4]; s16 var_r30; s16 var_r23; s16 sp8; @@ -292,7 +273,8 @@ void fn_1_4A0(void) { var_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M462, 12), MEMORY_DEFAULT_NUM, HEAP_DATA); var_r30 = Hu3DModelCreate(var_r27); var_r23 = var_r30; - } else { + } + else { var_r30 = Hu3DModelLink(var_r23); } temp_r29->unk00 = var_r30; @@ -389,7 +371,8 @@ void fn_1_4A0(void) { HuPrcChildCreate(fn_1_7D40, 0x1000, 0x1000, 0, HuPrcCurrentGet()); } -float fn_1_14B4(float arg0) { +float fn_1_14B4(float arg0) +{ while (arg0 >= 360.0f || arg0 < 0.0f) { if (arg0 >= 360.0f) { arg0 -= 360.0f; @@ -401,24 +384,29 @@ float fn_1_14B4(float arg0) { return arg0; } -float fn_1_1534(float arg0, float arg1) { +float fn_1_1534(float arg0, float arg1) +{ float var_f31; if (arg0 > 750.0f - arg1) { var_f31 = 750.0f; - } else if (arg0 < -(750.0f - arg1)) { + } + else if (arg0 < -(750.0f - arg1)) { var_f31 = 750.0f; - } else { + } + else { var_f31 = 750.0f; } return var_f31; } -float fn_1_15B4(float arg0, float arg1) { +float fn_1_15B4(float arg0, float arg1) +{ return fn_1_1534(arg0, arg1); } -void fn_1_1634(void) { +void fn_1_1634(void) +{ float var_f31; float temp_f30; s32 i; @@ -434,7 +422,8 @@ void fn_1_1634(void) { } } -void fn_1_16F8(void) { +void fn_1_16F8(void) +{ s32 i; for (i = 0; i < 6; i++) { @@ -442,7 +431,8 @@ void fn_1_16F8(void) { } } -void fn_1_174C(void) { +void fn_1_174C(void) +{ s32 i; for (i = 0; i < 6; i++) { @@ -450,12 +440,14 @@ void fn_1_174C(void) { } } -void fn_1_17A0(s32 arg0, s32 arg1) { +void fn_1_17A0(s32 arg0, s32 arg1) +{ s32 var_r31; if (arg1 != 0) { var_r31 = 2; - } else { + } + else { var_r31 = 4; } HuSprBankSet(lbl_1_bss_3DC, var_r31, arg0 % 10); @@ -463,13 +455,14 @@ void fn_1_17A0(s32 arg0, s32 arg1) { HuSprAttrReset(lbl_1_bss_3DC, var_r31 + 1, HUSPR_ATTR_DISPOFF); } -s32 fn_1_1880(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { +s32 fn_1_1880(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) +{ Vec sp34; Vec sp28; Vec sp1C; s32 i; - StructBss70* temp_r30; - StructBss340* var_r29; + StructBss70 *temp_r30; + StructBss340 *var_r29; if (arg3 > 10) { arg3 = 10; @@ -498,7 +491,8 @@ s32 fn_1_1880(float arg0, float arg1, float arg2, s32 arg3, s32 arg4) { return 0; } -s32 fn_1_1BD4(StructBss70* arg0) { +s32 fn_1_1BD4(StructBss70 *arg0) +{ float var_f31; float var_f30; s32 var_r31; @@ -525,7 +519,8 @@ s32 fn_1_1BD4(StructBss70* arg0) { return var_r31; } -void fn_1_1E10(StructBss70* arg0) { +void fn_1_1E10(StructBss70 *arg0) +{ Vec sp104; Vec spF8; Vec spEC; @@ -541,8 +536,8 @@ void fn_1_1E10(StructBss70* arg0) { float spB0; float spAC; float spA0; - StructBss70* var_r30; - StructBss70* temp_r28; + StructBss70 *var_r30; + StructBss70 *temp_r28; s32 temp_r19; s32 var_r21; s32 i; @@ -583,7 +578,8 @@ void fn_1_1E10(StructBss70* arg0) { spC0 = var_f19 - var_f26; if (spC0 > 0.0f) { spBC = -0.5f; - } else { + } + else { spBC = 0.5f; } if (ABS_INV(var_f19 - var_f26) > 180.0f) { @@ -626,13 +622,14 @@ block_end: arg0->unk14.z = spB4; } -void fn_1_2FDC(StructBss70* arg0) { +void fn_1_2FDC(StructBss70 *arg0) +{ Vec spF0; Vec spE4; Vec spD8; s32 i; - StructBss340* var_r30; - StructBss70* temp_r25; + StructBss340 *var_r30; + StructBss70 *temp_r25; float var_f31; s32 var_r23; s32 var_r20; @@ -655,12 +652,14 @@ void fn_1_2FDC(StructBss70* arg0) { var_f31 += 30.0f * frandf() - 60.0f; var_f31 = fn_1_14B4(var_f31); arg0->unk20 = var_f31; - } else if (ABS_INV(arg0->unk14.x) > 550.0f) { + } + else if (ABS_INV(arg0->unk14.x) > 550.0f) { var_f31 = fn_1_14B4(180.0 + atan2d(arg0->unk14.x, 0.0)); var_f31 += 10.0f * frandf() - 20.0f; var_f31 = fn_1_14B4(var_f31); arg0->unk20 = var_f31; - } else if (frandmod(3) != 0) { + } + else if (frandmod(3) != 0) { for (i = 0, var_r23 = 0; i < 10; i++) { if (i == arg0->unk0C) { continue; @@ -679,13 +678,15 @@ void fn_1_2FDC(StructBss70* arg0) { if (var_r23 == 1 && ABS_INV(var_r30->unk4C.x) < 650.0f) { temp_r25 = &lbl_1_bss_70[spAC[0]]; var_f31 = fn_1_14B4(atan2d(arg0->unk40 - arg0->unk14.x, arg0->unk44 - arg0->unk14.z)); - } else { + } + else { var_f31 = fn_1_14B4(180.0 + atan2d(arg0->unk14.x, arg0->unk14.z)); var_f31 += 30.0f * frandf() - 60.0f; var_f31 = fn_1_14B4(var_f31); arg0->unk20 = var_f31; } - } else { + } + else { var_f31 = 360.0f * frandf(); arg0->unk20 = var_f31; } @@ -713,15 +714,15 @@ void fn_1_2FDC(StructBss70* arg0) { var_f31 = fn_1_14B4(atan2d(arg0->unk40 - arg0->unk14.x, arg0->unk44 - arg0->unk14.z)); arg0->unk14.x += arg0->unk34 * sind(var_f31); arg0->unk14.z += arg0->unk34 * cosd(var_f31); - if (fn_1_1BD4(arg0)) { - } + if (fn_1_1BD4(arg0)) { } if (fn_1_1880(arg0->unk14.x, arg0->unk14.z, 50.0f, 10, arg0->unk0C) != 0) { arg0->unk14.x = arg0->unk24; arg0->unk14.z = arg0->unk28; arg0->unk38 = 100; arg0->unk3C = 0; } - } else { + } + else { arg0->unk38 = 100; arg0->unk3C = 0; } @@ -735,8 +736,9 @@ void fn_1_2FDC(StructBss70* arg0) { } } -void fn_1_44D8(void) { - StructBss70* temp_r31; +void fn_1_44D8(void) +{ + StructBss70 *temp_r31; float temp_f30; float var_f31; s32 i; @@ -763,7 +765,8 @@ void fn_1_44D8(void) { } } -void fn_1_4644(StructBss70* arg0) { +void fn_1_4644(StructBss70 *arg0) +{ float temp_f26; float temp_f25; float var_f27; @@ -778,7 +781,8 @@ void fn_1_4644(StructBss70* arg0) { arg0->unk20 = 90.0f; var_f27 = -700.0f + temp_f26 - 500.0f; var_f24 = 8.333333f; - } else { + } + else { arg0->unk14.x = 700.0f - temp_f26; arg0->unk20 = 270.0f; var_f27 = 700.0f - temp_f26 + 500.0f; @@ -808,7 +812,8 @@ void fn_1_4644(StructBss70* arg0) { Hu3DModelPosSet(arg0->unk00, arg0->unk14.x, 0.0f, arg0->unk14.z); } -void fn_1_4BC4(void) { +void fn_1_4BC4(void) +{ s32 spC; float sp8; float temp_f23; @@ -816,9 +821,9 @@ void fn_1_4BC4(void) { float var_f28; float var_f30; float var_f29; - StructBss70* temp_r31; - StructBss340* var_r28; - StructBss340* var_r30; + StructBss70 *temp_r31; + StructBss340 *var_r28; + StructBss340 *var_r30; s32 temp_r27; s32 temp_r24; s32 var_r26; @@ -843,7 +848,8 @@ loop_1: } } if (i > 4) { - while (TRUE); + while (TRUE) + ; } temp_r31->unk34 = 6.75f * lbl_1_data_FC[i]; temp_r31->unk38 = 0; @@ -854,8 +860,8 @@ loop_1: fn_1_4644(temp_r31); temp_r31->unk10 = 0; if (FALSE) { - default: - fn_1_2FDC(temp_r31); + default: + fn_1_2FDC(temp_r31); } Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk14.x, temp_r31->unk14.y, temp_r31->unk14.z); Hu3DModelRotSet(temp_r31->unk00, 0.0f, temp_r31->unk20, 0.0f); @@ -869,19 +875,23 @@ loop_1: if (ABS_INV(var_r28->unk4C.z - temp_r31->unk14.z) > 250.0f) { if (temp_r31->unk14.x > 0.0f) { var_f30 = 10.0f; - } else { + } + else { var_f30 = -10.0f; } - } else { + } + else { if (var_r28->unk4C.x > temp_r31->unk14.x) { var_f30 = -10.0f; - } else { + } + else { var_f30 = 10.0f; } } if (var_f30 > 0.0f) { Hu3DModelRotSet(temp_r31->unk00, 0.0f, 90.0f, 0.0f); - } else { + } + else { Hu3DModelRotSet(temp_r31->unk00, 0.0f, 270.0f, 0.0f); } Hu3DMotionSet(temp_r31->unk00, temp_r31->unk04[1]); @@ -911,7 +921,8 @@ loop_1: temp_r31->unk2C = fn_1_14B4(atan2d(temp_r31->unk14.x - var_r30->unk4C.x, temp_r31->unk14.z - var_r30->unk4C.z)); Hu3DMotionTimeSet(temp_r31->unk02, 0.0f); Hu3DModelAttrReset(temp_r31->unk02, HU3D_ATTR_DISPOFF); - Hu3DModelPosSet(temp_r31->unk02, var_r30->unk4C.x + var_r30->unk84 * sind(temp_r31->unk2C), temp_r31->unk14.y + 50.0f, var_r30->unk4C.z + var_r30->unk84 * cosd(temp_r31->unk2C)); + Hu3DModelPosSet(temp_r31->unk02, var_r30->unk4C.x + var_r30->unk84 * sind(temp_r31->unk2C), temp_r31->unk14.y + 50.0f, + var_r30->unk4C.z + var_r30->unk84 * cosd(temp_r31->unk2C)); i = 0; var_f29 = temp_r31->unk14.x; var_f28 = temp_r31->unk14.z; @@ -943,9 +954,10 @@ loop_1: } } -void fn_1_545C(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; - StructBss340* temp_r28; +void fn_1_545C(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + StructBss340 *temp_r28; float var_f30; float var_f31; float temp_f29; @@ -996,7 +1008,7 @@ void fn_1_545C(ModelData* model, ParticleData* particle, Mtx matrix) { if (var_r31->unk14.x == 0.0f) { continue; } - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); var_r31->unk08.x *= 0.95f; var_r31->unk08.z *= 0.95f; if (var_r31->unk08.y > 0.1f) { @@ -1025,9 +1037,10 @@ void fn_1_545C(ModelData* model, ParticleData* particle, Mtx matrix) { } } -void fn_1_594C(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; - StructBss340* temp_r28; +void fn_1_594C(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + StructBss340 *temp_r28; float temp_f31; float temp_f30; s32 var_r27; @@ -1088,7 +1101,7 @@ void fn_1_594C(ModelData* model, ParticleData* particle, Mtx matrix) { if (var_r31->unk14.x == 0.0f || var_r31->unk24 == 0.0f) { continue; } - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); if (var_r31->unk08.y > 1.0f) { var_r31->unk08.y -= 0.3f; } @@ -1112,9 +1125,10 @@ void fn_1_594C(ModelData* model, ParticleData* particle, Mtx matrix) { } } -void fn_1_5DE4(ModelData* model, ParticleData* particle, Mtx matrix) { - HsfanimStruct01* var_r31; - StructBss340* temp_r28; +void fn_1_5DE4(ModelData *model, ParticleData *particle, Mtx matrix) +{ + HsfanimStruct01 *var_r31; + StructBss340 *temp_r28; float temp_f31; float temp_f30; s32 var_r27; @@ -1175,7 +1189,7 @@ void fn_1_5DE4(ModelData* model, ParticleData* particle, Mtx matrix) { if (var_r31->unk14.x == 0.0f || var_r31->unk24 == 0.0f) { continue; } - PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); if (var_r31->unk08.y > 1.0f) { var_r31->unk08.y -= 0.3f; } @@ -1199,8 +1213,9 @@ void fn_1_5DE4(ModelData* model, ParticleData* particle, Mtx matrix) { } } -s8 fn_1_627C(s32 arg0, s32 arg1) { - StructBss340* temp_r31; +s8 fn_1_627C(s32 arg0, s32 arg1) +{ + StructBss340 *temp_r31; s8 var_r30; temp_r31 = &lbl_1_bss_340[arg0]; @@ -1208,8 +1223,9 @@ s8 fn_1_627C(s32 arg0, s32 arg1) { return var_r30; } -u8 fn_1_62F0(s32 arg0, s32 arg1) { - StructBss340* temp_r31; +u8 fn_1_62F0(s32 arg0, s32 arg1) +{ + StructBss340 *temp_r31; s8 var_r30; temp_r31 = &lbl_1_bss_340[arg0]; @@ -1217,8 +1233,9 @@ u8 fn_1_62F0(s32 arg0, s32 arg1) { return var_r30; } -u16 fn_1_636C(s32 arg0) { - StructBss340* temp_r31; +u16 fn_1_636C(s32 arg0) +{ + StructBss340 *temp_r31; u16 var_r30; temp_r31 = &lbl_1_bss_340[arg0]; @@ -1226,8 +1243,9 @@ u16 fn_1_636C(s32 arg0) { return var_r30; } -u16 fn_1_63B4(s32 arg0) { - StructBss340* temp_r31; +u16 fn_1_63B4(s32 arg0) +{ + StructBss340 *temp_r31; u16 var_r30; temp_r31 = &lbl_1_bss_340[arg0]; @@ -1235,11 +1253,12 @@ u16 fn_1_63B4(s32 arg0) { return var_r30; } -s32 fn_1_63FC(StructBss340* arg0) { +s32 fn_1_63FC(StructBss340 *arg0) +{ Vec sp24; Vec sp18; Vec spC; - StructBss70* temp_r31; + StructBss70 *temp_r31; s32 var_r28; s32 i; @@ -1257,7 +1276,8 @@ s32 fn_1_63FC(StructBss340* arg0) { return var_r28; } -s32 fn_1_65D0(StructBss340* arg0) { +s32 fn_1_65D0(StructBss340 *arg0) +{ float var_f31; float var_f30; s32 sp8; @@ -1279,7 +1299,8 @@ s32 fn_1_65D0(StructBss340* arg0) { return sp8; } -float fn_1_67F0(float arg0, float arg1, float arg2) { +float fn_1_67F0(float arg0, float arg1, float arg2) +{ float var_f30; float var_f31; @@ -1297,8 +1318,9 @@ float fn_1_67F0(float arg0, float arg1, float arg2) { return var_f30; } -void fn_1_68F4(void) { - StructBss340* temp_r31; +void fn_1_68F4(void) +{ + StructBss340 *temp_r31; s32 i; temp_r31 = HuPrcCurrentGet()->user_data; @@ -1313,19 +1335,21 @@ void fn_1_68F4(void) { } } -s32 fn_1_6964(StructBss340* arg0) { +s32 fn_1_6964(StructBss340 *arg0) +{ return (arg0->unk2C == 4 || arg0->unk2C == 5 || arg0->unk2C == 6); } -void fn_1_69C0(void) { +void fn_1_69C0(void) +{ float var_f23; float var_f27; float var_f26; - StructBss340* temp_r31; + StructBss340 *temp_r31; s16 var_r29; s32 var_r24; s32 var_r23; - Process* var_r22; + Process *var_r22; s32 var_r26; s32 var_r25; s32 var_r28; @@ -1353,7 +1377,8 @@ void fn_1_69C0(void) { case 8: if (temp_r31->unk3C != 0) { temp_r31->unk3C--; - } else { + } + else { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[0], 0.0f, 5.0f, HU3D_MOTATTR_LOOP); temp_r31->unk2C = 0; } @@ -1374,7 +1399,8 @@ void fn_1_69C0(void) { } if (temp_r31->unk3C != 0) { temp_r31->unk3C--; - } else { + } + else { Hu3DMotionSet(temp_r31->unk00, temp_r31->unk06[5]); Hu3DModelAttrReset(temp_r31->unk00, HU3D_MOTATTR_LOOP); temp_r31->unk2C = 6; @@ -1416,7 +1442,8 @@ void fn_1_69C0(void) { if (fn_1_63B4(temp_r31->unk20) & PAD_BUTTON_A) { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); - } else { + } + else { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[1], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); } @@ -1424,14 +1451,16 @@ void fn_1_69C0(void) { HuAudFXStop(var_r29); } } - } else { + } + else { if (temp_r31->unk2C != 3) { temp_r31->unk2C = 3; temp_r31->unk48 = 0; if (fn_1_63B4(temp_r31->unk20) & PAD_BUTTON_A) { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); - } else { + } + else { Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[2], 0.0f, 8.0f, HU3D_MOTATTR_LOOP | HU3D_MOTATTR_REV); Hu3DMotionShiftSpeedSet(temp_r31->unk00, 2.0f); } @@ -1443,7 +1472,8 @@ void fn_1_69C0(void) { if (temp_r31->unk34 != 1) { var_r24 = 8; var_r23 = 32; - } else { + } + else { var_r24 = 7; var_r23 = 22; } @@ -1458,12 +1488,14 @@ void fn_1_69C0(void) { if (temp_r31->unk48 >= 50) { temp_r31->unk48 -= 50; } - } else { + } + else { if (temp_r31->unk48 >= 30) { temp_r31->unk48 -= 30; } } - } else { + } + else { if (ABS_INV(fn_1_627C(temp_r31->unk20, 0)) <= 20) { if (temp_r31->unk2C != 0) { temp_r31->unk2C = 0; @@ -1472,7 +1504,8 @@ void fn_1_69C0(void) { HuAudFXStop(var_r29); } } - } else { + } + else { if (temp_r31->unk2C != 1) { temp_r31->unk2C = 1; Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); @@ -1481,10 +1514,8 @@ void fn_1_69C0(void) { } } } - if (fn_1_63FC(temp_r31) != -1) { - } - if ((spA4 = fn_1_65D0(temp_r31)) != -1) { - } + if (fn_1_63FC(temp_r31) != -1) { } + if ((spA4 = fn_1_65D0(temp_r31)) != -1) { } break; } Hu3DModelPosSet(temp_r31->unk00, temp_r31->unk4C.x, temp_r31->unk4C.y, temp_r31->unk4C.z); @@ -1522,7 +1553,8 @@ void fn_1_69C0(void) { if (var_r25 & 1) { Hu3DModelAttrReset(temp_r31->unk00, HU3D_ATTR_DISPOFF); Hu3DModelAttrReset(temp_r31->unk04, HU3D_ATTR_DISPOFF); - } else { + } + else { Hu3DModelAttrSet(temp_r31->unk00, HU3D_ATTR_DISPOFF); Hu3DModelAttrSet(temp_r31->unk04, HU3D_ATTR_DISPOFF); } @@ -1542,7 +1574,8 @@ void fn_1_69C0(void) { Hu3DModelAttrSet(temp_r31->unk00, HU3D_ATTR_DISPOFF); HuAudSStreamPlay(4); HuPrcSleep(180); - } else { + } + else { var_f26 = temp_r31->unk90; Hu3DMotionShiftSet(temp_r31->unk00, temp_r31->unk06[3], 0.0f, 2.0f, HU3D_MOTATTR_LOOP); if (fn_1_14B4(temp_r31->unk60.y) != 0.0f) { @@ -1576,10 +1609,10 @@ void fn_1_69C0(void) { } } -void fn_1_7D3C(void) { -} +void fn_1_7D3C(void) { } -void fn_1_7D40(void) { +void fn_1_7D40(void) +{ while (TRUE) { if (omSysExitReq == 1) { WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); @@ -1595,7 +1628,8 @@ void fn_1_7D40(void) { } } -void fn_1_7DA0(void) { +void fn_1_7DA0(void) +{ s16 temp_r31; s16 var_r30; s16 temp_r26; @@ -1644,7 +1678,8 @@ void fn_1_7DA0(void) { HuPrcVSleep(); } lbl_1_bss_3E4 = 5; - } else { + } + else { lbl_1_bss_3E4 = 5; } while (lbl_1_bss_3E4 < 6) { diff --git a/src/REL/m463Dll/main.c b/src/REL/m463Dll/main.c index a964b9ca..8304c1b3 100755 --- a/src/REL/m463Dll/main.c +++ b/src/REL/m463Dll/main.c @@ -68,14 +68,14 @@ typedef struct { } StructData134; // Size 0x18 s16 fn_1_4474(void); -void fn_1_659C(omObjData* arg0); +void fn_1_659C(omObjData *arg0); StructBss51C lbl_1_bss_51C[9]; StructBss35C lbl_1_bss_35C[28]; -omObjData* lbl_1_bss_358; -omObjData* lbl_1_bss_354; -omObjData* lbl_1_bss_330[9]; -omObjData* lbl_1_bss_32C; +omObjData *lbl_1_bss_358; +omObjData *lbl_1_bss_354; +omObjData *lbl_1_bss_330[9]; +omObjData *lbl_1_bss_32C; HsfanimStruct00 lbl_1_bss_5C[9]; s32 lbl_1_bss_58; s32 lbl_1_bss_54; @@ -83,7 +83,7 @@ s32 lbl_1_bss_50; char lbl_1_bss_4C[4]; // unused s32 lbl_1_bss_48; s32 lbl_1_bss_44; -Process* lbl_1_bss_40; +Process *lbl_1_bss_40; s32 lbl_1_bss_3C; s32 lbl_1_bss_38; s32 lbl_1_bss_34; @@ -101,17 +101,9 @@ char lbl_1_bss_8[4]; // unused s32 lbl_1_bss_4; s32 lbl_1_bss_0; -s32 lbl_1_data_0[9] = { - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38), - DATA_MAKE_NUM(DATADIR_M458, 38) -}; +s32 lbl_1_data_0[9] = { DATA_MAKE_NUM(DATADIR_M458, 38), DATA_MAKE_NUM(DATADIR_M458, 38), DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), DATA_MAKE_NUM(DATADIR_M458, 38), DATA_MAKE_NUM(DATADIR_M458, 38), DATA_MAKE_NUM(DATADIR_M458, 38), + DATA_MAKE_NUM(DATADIR_M458, 38), DATA_MAKE_NUM(DATADIR_M458, 38) }; s32 lbl_1_data_24[9] = { 0 }; @@ -129,17 +121,8 @@ s32 lbl_1_data_48[9] = { u32 lbl_1_data_6C[9] = { 0, 0, 0, 0, 0, 0, 0, 1, 0 }; -u32 lbl_1_data_90[] = { - DATA_MAKE_NUM(DATADIR_BKOOPA, 8), - 0, - 0, - DATA_MAKE_NUM(DATADIR_BKOOPA, 10), - 0, - DATA_MAKE_NUM(DATADIR_M458, 42), - DATA_MAKE_NUM(DATADIR_M458, 40), - DATA_MAKE_NUM(DATADIR_M458, 41), - DATA_MAKE_NUM(DATADIR_M458, 39) -}; +u32 lbl_1_data_90[] = { DATA_MAKE_NUM(DATADIR_BKOOPA, 8), 0, 0, DATA_MAKE_NUM(DATADIR_BKOOPA, 10), 0, DATA_MAKE_NUM(DATADIR_M458, 42), + DATA_MAKE_NUM(DATADIR_M458, 40), DATA_MAKE_NUM(DATADIR_M458, 41), DATA_MAKE_NUM(DATADIR_M458, 39) }; u8 lbl_1_data_B4[9] = { 0, 0, 0, 1, 1, 1, 0, 1, 1 }; u8 lbl_1_data_BD[9] = { 0, 0, 0, 1, 1, 1, 0, 1, 1 }; @@ -157,7 +140,8 @@ s32 lbl_1_data_154 = -1; // unused float lbl_1_data_158[] = { -90.0f, 0.0f, 525.0f, 180.0f, 90.0f, 0.0f, 525.0f, 180.0f }; -void fn_1_A0(void) { +void fn_1_A0(void) +{ if (HuPadBtnDown[0] & PAD_BUTTON_B) { Center.x = lbl_1_bss_330[0]->trans.x; Center.y = lbl_1_bss_330[0]->trans.y; @@ -176,9 +160,10 @@ void fn_1_A0(void) { s32 lbl_1_data_184 = -1; -void fn_1_4C8(omObjData* arg0) { - ModelData* temp_r24; - ModelData* temp_r29; +void fn_1_4C8(omObjData *arg0) +{ + ModelData *temp_r24; + ModelData *temp_r29; float temp_f31; float temp_f30; float var_f28; @@ -190,17 +175,17 @@ void fn_1_4C8(omObjData* arg0) { float var_f22; float var_f21; float var_f20; - StructBss330Data* temp_r31; + StructBss330Data *temp_r31; s16 var_r28; s32 temp_r27; s32 var_r26; s32 var_r25; s32 var_r23; s32 var_r22; - StructBss330Data* temp_r21; + StructBss330Data *temp_r21; s32 var_r20; s32 var_r19; - StructBss330Data* temp_r18; + StructBss330Data *temp_r18; s32 var_r17; float sp180[2]; s32 spE0; @@ -210,18 +195,18 @@ void fn_1_4C8(omObjData* arg0) { s32 spD0; s32 spCC; s32 spC8; - StructBss330Data* spC4; + StructBss330Data *spC4; s32 spC0; s32 spBC; - StructBss330Data* spB8; + StructBss330Data *spB8; s32 spB4; u32 spB0; float spAC; s32 spA8; s32 spA4; s32 spA0; - StructBss330Data* sp9C; - ModelData* sp98; + StructBss330Data *sp9C; + ModelData *sp98; float sp94; float sp90; s32 sp8C; @@ -240,7 +225,8 @@ void fn_1_4C8(omObjData* arg0) { } if (temp_r31->unk0C != -1) { var_r22 = (HuPadBtnDown[temp_r31->unk0C] & PAD_BUTTON_A) ? 1 : 0; - } else { + } + else { temp_r31->unk14 += (temp_r31->unk14 < 0x10000); if (temp_r31->unk14 == 30) { var_r22 = 1; @@ -251,12 +237,11 @@ void fn_1_4C8(omObjData* arg0) { var_r26 = 0; var_r25 = 0; if (temp_r31->unk0C != -1) { - var_r26 = (HuPadStkX[temp_r31->unk0C] < -20) ? -1 - : (HuPadStkX[temp_r31->unk0C] > 20) ? 1 : 0; - var_r25 = (-HuPadStkY[temp_r31->unk0C] < -20) ? -1 - : (-HuPadStkY[temp_r31->unk0C] > 20) ? 1 : 0; + var_r26 = (HuPadStkX[temp_r31->unk0C] < -20) ? -1 : (HuPadStkX[temp_r31->unk0C] > 20) ? 1 : 0; + var_r25 = (-HuPadStkY[temp_r31->unk0C] < -20) ? -1 : (-HuPadStkY[temp_r31->unk0C] > 20) ? 1 : 0; var_r22 = (HuPadBtnDown[temp_r31->unk0C] & PAD_BUTTON_A) ? 1 : 0; - } else { + } + else { if (lbl_1_bss_54 == 1) { temp_r31->unk14 = rand8() % 64 + 30; } @@ -278,16 +263,16 @@ void fn_1_4C8(omObjData* arg0) { spCC = 0; if (var_r17 != temp_r31->unk00) { if (fabs(500.0 * temp_r31->unk3C - arg0->trans.x) < 10.0) { - spE0 = spDC = (arg0->trans.x < -250.0) ? -1 - : (arg0->trans.x > 250.0) ? 1 : 0; - } else { + spE0 = spDC = (arg0->trans.x < -250.0) ? -1 : (arg0->trans.x > 250.0) ? 1 : 0; + } + else { spE0 = (arg0->trans.x < 0.0f) ? -1 : 0; spDC = spE0 + 1; } if (fabs(500.0 * temp_r31->unk40 - arg0->trans.z) < 10.0) { - spD8 = spD4 = (arg0->trans.z < -250.0) ? -1 - : (arg0->trans.z > 250.0) ? 1 : 0; - } else { + spD8 = spD4 = (arg0->trans.z < -250.0) ? -1 : (arg0->trans.z > 250.0) ? 1 : 0; + } + else { spD8 = (arg0->trans.z < 0.0f) ? -1 : 0; spD4 = spD8 + 1; } @@ -309,14 +294,16 @@ void fn_1_4C8(omObjData* arg0) { if (var_r26 * (500.0 * temp_r31->unk3C - arg0->trans.x) < 0.0) { temp_r31->unk3C += var_r26; } - if (fabs(500.0 * temp_r31->unk3C - arg0->trans.x) < 10.0 && var_r26 != 0 && temp_r31->unk3C + var_r26 >= -1 && temp_r31->unk3C + var_r26 <= 1) { + if (fabs(500.0 * temp_r31->unk3C - arg0->trans.x) < 10.0 && var_r26 != 0 && temp_r31->unk3C + var_r26 >= -1 + && temp_r31->unk3C + var_r26 <= 1) { temp_r31->unk3C += var_r26; } var_f23 = ((500.0 * temp_r31->unk3C - arg0->trans.x) / 0.25) / 1.75; if (var_r25 * (500.0 * temp_r31->unk40 - arg0->trans.z) < 0.0) { temp_r31->unk40 += var_r25; } - if (fabs(500.0 * temp_r31->unk40 - arg0->trans.z) < 10.0 && var_r25 != 0 && temp_r31->unk40 + var_r25 >= -1 && temp_r31->unk40 + var_r25 <= 1) { + if (fabs(500.0 * temp_r31->unk40 - arg0->trans.z) < 10.0 && var_r25 != 0 && temp_r31->unk40 + var_r25 >= -1 + && temp_r31->unk40 + var_r25 <= 1) { temp_r31->unk40 += var_r25; } var_f22 = ((500.0 * temp_r31->unk40 - arg0->trans.z) / -0.25) / 1.75; @@ -332,8 +319,8 @@ void fn_1_4C8(omObjData* arg0) { sp1A0.x = temp_f31; sp1A0.z = temp_f30; - PSMTXRotRad(sp1D0, 'y', MTXDegToRad(CRot.y)); - PSMTXMultVec(sp1D0, &sp1A0, &sp1A0); + MTXRotRad(sp1D0, 'y', MTXDegToRad(CRot.y)); + MTXMultVec(sp1D0, &sp1A0, &sp1A0); temp_f31 = sp1A0.x; temp_f30 = sp1A0.z; var_f28 = sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30); @@ -341,7 +328,8 @@ void fn_1_4C8(omObjData* arg0) { if (var_f28 < 10.0f) { temp_r31->unk2C = temp_f31; temp_r31->unk34 += temp_f30; - } else { + } + else { temp_f31 /= var_f28; temp_f30 /= var_f28; var_f28 = 10.0f; @@ -352,10 +340,12 @@ void fn_1_4C8(omObjData* arg0) { arg0->rot.y = atan2d(temp_r31->unk2C, temp_r31->unk34); if (temp_r31->unk28 >= 8.0f) { var_r28 = 2; - } else { + } + else { var_r28 = 2; } - } else { + } + else { var_r28 = 0; } } @@ -372,14 +362,13 @@ void fn_1_4C8(omObjData* arg0) { if (lbl_1_bss_54 == 0) { Hu3DModelAttrReset(arg0->model[0], HU3D_ATTR_DISPOFF); if (temp_r31->unk00 < 4) { - temp_r31->unk38 = (temp_r31->unk00 == 0) ? 0 - : (temp_r31->unk00 == 1) ? 2 - : (temp_r31->unk00 == 2) ? 6 : 8; + temp_r31->unk38 = (temp_r31->unk00 == 0) ? 0 : (temp_r31->unk00 == 1) ? 2 : (temp_r31->unk00 == 2) ? 6 : 8; temp_r31->unk3C = temp_r31->unk38 % 3 - 1; temp_r31->unk40 = temp_r31->unk38 / 3 - 1; arg0->trans.x = 500.0 * temp_r31->unk3C; arg0->trans.z = 500.0 * temp_r31->unk40; - } else { + } + else { do { temp_r31->unk38 = rand8() % 9; for (spC8 = 0; spC8 < temp_r31->unk00; spC8++) { @@ -446,9 +435,7 @@ void fn_1_4C8(omObjData* arg0) { for (var_r23 = 0; var_r23 < 4; var_r23++) { temp_r18 = lbl_1_bss_330[var_r23]->data; if (!(fabs(500.0 * temp_r18->unk3C - lbl_1_bss_330[var_r23]->trans.x) < 1.0) - || !(fabs(500.0 * temp_r18->unk40 - lbl_1_bss_330[var_r23]->trans.z) < 1.0) - || temp_r18->unk20 != 0) - { + || !(fabs(500.0 * temp_r18->unk40 - lbl_1_bss_330[var_r23]->trans.z) < 1.0) || temp_r18->unk20 != 0) { break; } } @@ -461,7 +448,8 @@ void fn_1_4C8(omObjData* arg0) { if (temp_r31->unk5C != 0) { if (arg0->trans.y < -15000.0f) { Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); - } else { + } + else { arg0->trans.y -= 77.0f; } } @@ -503,8 +491,7 @@ void fn_1_4C8(omObjData* arg0) { temp_f26 = (lbl_1_bss_54 - 210) / 4.0; temp_f26 = (temp_f26 > 1.0f) ? 1.0f : temp_f26; espAttrReset(lbl_1_data_24[temp_r31->unk38], HUSPR_ATTR_DISPOFF); - espPosSet(lbl_1_data_24[temp_r31->unk38], - 290.0f + spB4 * sp194[spB0], + espPosSet(lbl_1_data_24[temp_r31->unk38], 290.0f + spB4 * sp194[spB0], sp188[spB0] + 0.5 * (64.0f * (1.0f - spAC) * 0.5 + sp1AC[temp_r31->unk08 != -1 ? temp_r31->unk08 : 8])); espScaleSet(lbl_1_data_24[temp_r31->unk38], 0.5 * temp_f26, 0.5 * temp_f26); } @@ -534,9 +521,11 @@ void fn_1_4C8(omObjData* arg0) { if (temp_r31->unk08 == -1 && lbl_1_bss_54 == 1) { HuAudFXPlay(0x3A); } - } else if (arg0->trans.y < -40000.0f) { + } + else if (arg0->trans.y < -40000.0f) { Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); - } else { + } + else { arg0->trans.y -= 77.0f; } break; @@ -549,7 +538,8 @@ void fn_1_4C8(omObjData* arg0) { temp_r31->unk1C++; if (temp_r31->unk1C <= 60) { arg0->rot.y = -180.0 * (temp_r31->unk1C / 60.0); - } else { + } + else { Hu3DMotionTimeSet(arg0->model[0], 120.0f); var_r28 = 0; temp_r31->unk18 = 0; @@ -583,22 +573,25 @@ void fn_1_4C8(omObjData* arg0) { if (temp_r31->unk1C < 180) { var_f20 = 0.0f; var_f21 = 1.0f; - } else { + } + else { var_f20 = 1.0f; var_f21 = 0.5f; } - temp_r24->scale.x = var_f20 + var_f21 * sind((float) (temp_r31->unk1C % 180)); + temp_r24->scale.x = var_f20 + var_f21 * sind((float)(temp_r31->unk1C % 180)); temp_r24->scale.y = temp_r24->scale.z = temp_r24->scale.x; if (temp_r31->unk1C < 180) { temp_r31->unk1C += 6; - } else { + } + else { temp_r31->unk1C += 18; } if (temp_r31->unk1C >= 360) { temp_r31->unk1C = 360; Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); } - } else { + } + else { sp98 = &Hu3DData[arg0->model[1]]; temp_r31->unk1C += 4; if (temp_r31->unk1C > 720) { @@ -640,7 +633,8 @@ void fn_1_4C8(omObjData* arg0) { temp_r31->unk58 = 150; } Hu3DModelAttrSet(arg0->model[1], HU3D_ATTR_DISPOFF); - } else if (temp_r27 > 8) { + } + else if (temp_r27 > 8) { if (temp_r31->unk20 == 5) { if (Hu3DMotionTimeGet(arg0->model[0]) >= Hu3DMotionMaxTimeGet(arg0->model[0])) { var_r28 = 0; @@ -667,12 +661,14 @@ void fn_1_4C8(omObjData* arg0) { temp_r31->unk18 = 0; temp_r31->unk1C = 0; } - } else { + } + else { if (temp_r27 < 4) { temp_r29->pos.y += 10.0f + 0.5f * temp_r27; temp_r29->scale.x += 0.1f * sind(4.0f * temp_r27); temp_r29->scale.y = temp_r29->scale.z = temp_r29->scale.x; - } else { + } + else { var_f24 = 255 - (temp_r27 << 5); var_f24 = var_f24 * (1.0f / 255); Hu3DModelTPLvlSet(arg0->model[1], var_f24); @@ -734,13 +730,11 @@ void fn_1_4C8(omObjData* arg0) { var_r28 = temp_r31->unk24; } if (var_r28 >= 0 && var_r28 != temp_r31->unk20) { - Hu3DMotionShiftSet(arg0->model[0], - arg0->motion[var_r28], - lbl_1_data_EC[var_r28], + Hu3DMotionShiftSet(arg0->model[0], arg0->motion[var_r28], lbl_1_data_EC[var_r28], (temp_r31->unk08 != -1) ? lbl_1_data_C8[var_r28] : lbl_1_data_110[var_r28], - (var_r28 == 7) ? HU3D_MOTATTR_PAUSE + (var_r28 == 7) ? HU3D_MOTATTR_PAUSE : (temp_r31->unk08 != -1 ? lbl_1_data_B4[var_r28] : lbl_1_data_BD[var_r28]) ? 0 - : HU3D_MOTATTR_LOOP); + : HU3D_MOTATTR_LOOP); temp_r31->unk20 = var_r28; } temp_r31->unk58 -= (temp_r31->unk58 > -1); @@ -759,15 +753,16 @@ float lbl_1_data_1B8 = 3500.0f; float lbl_1_data_1BC = 100.0f; float lbl_1_data_1C0 = -59.0f; -void fn_1_3264(omObjData* arg0) { +void fn_1_3264(omObjData *arg0) +{ float temp_f29; float var_f31; float temp_f26; float temp_f27; float temp_f28; - StructBss330Data* spC[9]; - ModelData* temp_r29; - ModelData* temp_r28; + StructBss330Data *spC[9]; + ModelData *temp_r29; + ModelData *temp_r28; s32 var_r27; s32 i; s32 j; @@ -807,10 +802,8 @@ void fn_1_3264(omObjData* arg0) { } for (i = 0; i < 9; i++) { temp_r28 = &Hu3DData[lbl_1_bss_32C->model[i + 1]]; - Hu3DModelPosSet(lbl_1_bss_32C->model[i + 1], - (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk00 - 1), - 0.9 * temp_r28->pos.y + 0.1 * lbl_1_bss_51C[spC[0]->unk38].unk08, - (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk04 - 1)); + Hu3DModelPosSet(lbl_1_bss_32C->model[i + 1], (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk00 - 1), + 0.9 * temp_r28->pos.y + 0.1 * lbl_1_bss_51C[spC[0]->unk38].unk08, (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk04 - 1)); for (j = 0; j < 9; j++) { if (i == spC[j]->unk38) { lbl_1_bss_330[j]->trans.x = (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk00 - 1); @@ -824,14 +817,9 @@ void fn_1_3264(omObjData* arg0) { } { s32 var_r26 = lbl_1_data_1B4; - float sp30[][6] = { - { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, - { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, - { 3800.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, - { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, - { 4000.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, - { 2700.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } - }; + float sp30[][6] = { { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 3800.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + { 4000.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, { 2700.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } }; if (lbl_1_bss_38 != -1 && lbl_1_bss_38 != 9) { sp30[5][1] = lbl_1_bss_330[lbl_1_bss_38]->trans.x; @@ -878,7 +866,8 @@ void fn_1_3264(omObjData* arg0) { if (lbl_1_bss_1C == 0) { lbl_1_bss_20 = 1.0 - 0.95 * (1.0f - lbl_1_bss_20); var_f31 = lbl_1_bss_20; - } else { + } + else { lbl_1_bss_20 += 0.008333333333333333; lbl_1_bss_20 = (lbl_1_bss_20 > 1.0f) ? 1.0f : lbl_1_bss_20; var_f31 = 0.5 + -0.5 * cosd(180.0f * lbl_1_bss_20); @@ -902,53 +891,31 @@ void fn_1_3264(omObjData* arg0) { lbl_1_data_134.unk10 = 2.0 * (rand8() / 255.0) - 1.0; lbl_1_data_134.unk14 = 2.0 * (rand8() / 255.0) - 1.0; lbl_1_data_134.unk10 = 0.0f; - temp_f28 = (lbl_1_data_134.unk10 - lbl_1_data_134.unk08) * (lbl_1_data_134.unk10 - lbl_1_data_134.unk08) + (lbl_1_data_134.unk14 - lbl_1_data_134.unk0C) * (lbl_1_data_134.unk14 - lbl_1_data_134.unk0C); + temp_f28 = (lbl_1_data_134.unk10 - lbl_1_data_134.unk08) * (lbl_1_data_134.unk10 - lbl_1_data_134.unk08) + + (lbl_1_data_134.unk14 - lbl_1_data_134.unk0C) * (lbl_1_data_134.unk14 - lbl_1_data_134.unk0C); } while (sqrtf(temp_f28) < 0.75); } - lbl_1_data_134.unk04 = (lbl_1_data_134.unk04 > 24) ? 24 - : (lbl_1_data_134.unk04 > 0) ? lbl_1_data_134.unk04 : 0; + lbl_1_data_134.unk04 = (lbl_1_data_134.unk04 > 24) ? 24 : (lbl_1_data_134.unk04 > 0) ? lbl_1_data_134.unk04 : 0; temp_f26 = lbl_1_data_134.unk08; temp_f27 = lbl_1_data_134.unk0C; temp_f26 *= lbl_1_data_134.unk04 * 2; temp_f27 *= lbl_1_data_134.unk04 * 2; lbl_1_data_134.unk00 = !lbl_1_data_134.unk00; - lbl_1_data_134.unk04 = (lbl_1_data_134.unk04 > 24) ? 23 - : (lbl_1_data_134.unk04 - 1 > 0) ? (lbl_1_data_134.unk04 - 1) : 0; + lbl_1_data_134.unk04 = (lbl_1_data_134.unk04 > 24) ? 23 : (lbl_1_data_134.unk04 - 1 > 0) ? (lbl_1_data_134.unk04 - 1) : 0; Center.x = 0.0f; Center.y = 100.0f + temp_f27; } } -s16 fn_1_4474(void) { - AnimData* var_r29; - void* var_r28; +s16 fn_1_4474(void) +{ + AnimData *var_r29; + void *var_r28; s16 var_r31; s16 var_r30; - HsfanimStruct00 sp8 = { - 0x96, - { 0x00, 0x00 }, - 50.0f, - 0.0f, - 65.0f, - { 0.0f, -0.195f, 0.0f }, - 80.0f, - 0.99f, - 40.0f, - 0.999f, - 4, - { - { 0xFF, 0xFF, 0x20, 0xFF }, - { 0xFF, 0xFF, 0x00, 0xFF }, - { 0xFF, 0xFF, 0x80, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF } - }, - { - { 0xFF, 0xFF, 0xFF, 0x00 }, - { 0xFF, 0xFF, 0xFF, 0x00 }, - { 0xFF, 0xFF, 0xFF, 0x00 }, - { 0xFF, 0xFF, 0xFF, 0x00 } - } - }; + HsfanimStruct00 sp8 = { 0x96, { 0x00, 0x00 }, 50.0f, 0.0f, 65.0f, { 0.0f, -0.195f, 0.0f }, 80.0f, 0.99f, 40.0f, 0.999f, 4, + { { 0xFF, 0xFF, 0x20, 0xFF }, { 0xFF, 0xFF, 0x00, 0xFF }, { 0xFF, 0xFF, 0x80, 0xFF }, { 0xFF, 0xFF, 0xFF, 0xFF } }, + { { 0xFF, 0xFF, 0xFF, 0x00 }, { 0xFF, 0xFF, 0xFF, 0x00 }, { 0xFF, 0xFF, 0xFF, 0x00 }, { 0xFF, 0xFF, 0xFF, 0x00 } } }; lbl_1_bss_5C[lbl_1_bss_58] = sp8; var_r28 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_BOARD, 107), MEMORY_DEFAULT_NUM, HEAP_DATA); @@ -963,8 +930,9 @@ s16 fn_1_4474(void) { return var_r31; } -void fn_1_45F8(omObjData* arg0) { - StructBss330Data* sp14[9]; +void fn_1_45F8(omObjData *arg0) +{ + StructBss330Data *sp14[9]; float spC[2]; s32 sp8; s32 var_r29; @@ -974,15 +942,8 @@ void fn_1_45F8(omObjData* arg0) { s32 i; for (i = 0; i < 28; i++) { - s32 sp38[] = { - 0x7F1, 0x7F2, 0x7F7, 0x7F8, - 0x7F9, 0x7FA, 0x7FB, 0x7FC, - 0x7FD, 0x7FE, 0x7FF, 0x800, - 0x801, 0x802, 0x803, 0x804, - 0x7FB, 0x7FC, 0x7FD, 0x7FE, - 0x7FF, 0x800, 0x801, 0x802, - 0x803, 0x804, 0x7FB, 0x7FC - }; + s32 sp38[] = { 0x7F1, 0x7F2, 0x7F7, 0x7F8, 0x7F9, 0x7FA, 0x7FB, 0x7FC, 0x7FD, 0x7FE, 0x7FF, 0x800, 0x801, 0x802, 0x803, 0x804, 0x7FB, 0x7FC, + 0x7FD, 0x7FE, 0x7FF, 0x800, 0x801, 0x802, 0x803, 0x804, 0x7FB, 0x7FC }; if (lbl_1_bss_35C[i].unk00 > 3) { lbl_1_bss_35C[i].unk00 = 3; @@ -1056,7 +1017,8 @@ void fn_1_45F8(omObjData* arg0) { if (lbl_1_bss_51C[sp14[i]->unk38].unk0C != 0) { sp14[i]->unk18 = 3; sp14[i]->unk1C = 0; - } else { + } + else { sp14[i]->unk5C = 1; } } @@ -1082,7 +1044,8 @@ void fn_1_45F8(omObjData* arg0) { if (var_r29 >= 9 || lbl_1_bss_0 == 0) { MGSeqParamSet(lbl_1_data_14E, 2, -1); lbl_1_data_14E = -1; - } else { + } + else { lbl_1_bss_0 -= (lbl_1_bss_0 > 0); MGSeqParamSet(lbl_1_data_14E, 1, (lbl_1_bss_0 + 59) / 60); } @@ -1140,7 +1103,8 @@ void fn_1_45F8(omObjData* arg0) { lbl_1_bss_50 = 1007; lbl_1_bss_54 = 0; } - } else { + } + else { lbl_1_bss_50 = 1005; lbl_1_bss_54 = 0; } @@ -1152,13 +1116,15 @@ void fn_1_45F8(omObjData* arg0) { if (lbl_1_bss_38 != 9) { if (lbl_1_bss_38 < 9) { HuAudSStreamPlay(1); - } else { + } + else { HuAudSStreamPlay(1); } if (lbl_1_bss_38 < 4 && sp14[lbl_1_bss_38]->unk04 != -1) { GWPlayerCoinWinSet(sp14[lbl_1_bss_38]->unk04, 10); } - } else if (lbl_1_bss_38 == 9) { + } + else if (lbl_1_bss_38 == 9) { HuAudSStreamPlay(4); } } @@ -1175,8 +1141,9 @@ void fn_1_45F8(omObjData* arg0) { } } -void fn_1_53A0(omObjData* arg0) { - StructBss330Data* sp50[9]; +void fn_1_53A0(omObjData *arg0) +{ + StructBss330Data *sp50[9]; s32 i; for (i = 0; i < 9; i++) { @@ -1191,10 +1158,7 @@ void fn_1_53A0(omObjData* arg0) { lbl_1_bss_51C[i].unk04 = i / 3; lbl_1_bss_51C[i].unk08 = 0.0f; lbl_1_bss_51C[i].unk0C = 1; - Hu3DModelPosSet(lbl_1_bss_32C->model[i + 1], - 500.0 * (lbl_1_bss_51C[i].unk00 - 1), - -16.666666f, - 500.0 * (lbl_1_bss_51C[i].unk04 - 1)); + Hu3DModelPosSet(lbl_1_bss_32C->model[i + 1], 500.0 * (lbl_1_bss_51C[i].unk00 - 1), -16.666666f, 500.0 * (lbl_1_bss_51C[i].unk04 - 1)); Hu3DModelScaleSet(lbl_1_bss_32C->model[i + 1], 1.6666666f, 1.6666666f, 1.6666666f); Hu3DModelAttrSet(arg0->model[i + 1], HU3D_MOTATTR_PAUSE); Hu3DModelShadowMapSet(arg0->model[i + 1]); @@ -1215,22 +1179,13 @@ void fn_1_53A0(omObjData* arg0) { arg0->func = fn_1_3264; } -s32 lbl_1_data_1E4[] = { - DATA_MAKE_NUM(DATADIR_M458, 19), - DATA_MAKE_NUM(DATADIR_M458, 20), - DATA_MAKE_NUM(DATADIR_M458, 21), - DATA_MAKE_NUM(DATADIR_M458, 22), - DATA_MAKE_NUM(DATADIR_M458, 23), - DATA_MAKE_NUM(DATADIR_M458, 24), - DATA_MAKE_NUM(DATADIR_M458, 25), - DATA_MAKE_NUM(DATADIR_M458, 26), - DATA_MAKE_NUM(DATADIR_M458, 27), - DATA_MAKE_NUM(DATADIR_M458, 28), - DATA_MAKE_NUM(DATADIR_M458, 29) -}; +s32 lbl_1_data_1E4[] = { DATA_MAKE_NUM(DATADIR_M458, 19), DATA_MAKE_NUM(DATADIR_M458, 20), DATA_MAKE_NUM(DATADIR_M458, 21), + DATA_MAKE_NUM(DATADIR_M458, 22), DATA_MAKE_NUM(DATADIR_M458, 23), DATA_MAKE_NUM(DATADIR_M458, 24), DATA_MAKE_NUM(DATADIR_M458, 25), + DATA_MAKE_NUM(DATADIR_M458, 26), DATA_MAKE_NUM(DATADIR_M458, 27), DATA_MAKE_NUM(DATADIR_M458, 28), DATA_MAKE_NUM(DATADIR_M458, 29) }; -void fn_1_5850(omObjData* arg0) { - StructBss330Data* temp_r31; +void fn_1_5850(omObjData *arg0) +{ + StructBss330Data *temp_r31; s32 sp10[] = { 0, 1, 2, 3 }; s32 var_r25; s32 var_r28; @@ -1246,13 +1201,15 @@ void fn_1_5850(omObjData* arg0) { for (i = 0; i <= temp_r31->unk00 - 4; i++) { do { var_r28++; - } while (GWPlayerCfg[0].character == var_r28 || GWPlayerCfg[1].character == var_r28 || GWPlayerCfg[2].character == var_r28 || GWPlayerCfg[3].character == var_r28); + } while (GWPlayerCfg[0].character == var_r28 || GWPlayerCfg[1].character == var_r28 || GWPlayerCfg[2].character == var_r28 + || GWPlayerCfg[3].character == var_r28); } temp_r31->unk08 = (var_r28 == 8) ? -1 : var_r28; temp_r31->unk0C = -1; temp_r31->unk04 = -1; temp_r31->unk10 = 0; - } else { + } + else { for (i = 0; i < 4; i++) { for (j = 0; j < 4; j++) { if (i == GWPlayerCfg[j].group) { @@ -1277,13 +1234,15 @@ void fn_1_5850(omObjData* arg0) { temp_r31->unk48 = -1; if (temp_r31->unk08 != -1) { arg0->model[0] = CharModelCreate(temp_r31->unk08, 4); - } else { + } + else { arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 7)); } omSetTra(arg0, 0.0f, temp_r31->unk00 == 0 ? 0 : 300, 0.0f); if (temp_r31->unk08 != -1) { omSetSca(arg0, 2.5f, 2.5f, 2.5f); - } else { + } + else { omSetSca(arg0, 2.0f, 2.0f, 2.0f); } for (i = 0; i < 9; i++) { @@ -1291,7 +1250,8 @@ void fn_1_5850(omObjData* arg0) { if (temp_r31->unk00 < 4 || (i != 1 && i != 2)) { arg0->motion[i] = CharModelMotionCreate(temp_r31->unk08, lbl_1_data_48[i] + (lbl_1_data_6C[i] ? temp_r31->unk08 : 0)); } - } else if (lbl_1_data_90[i] != 0) { + } + else if (lbl_1_data_90[i] != 0) { arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_90[i]); } } @@ -1314,7 +1274,8 @@ void fn_1_5850(omObjData* arg0) { for (i = 0; i < 9; i++) { if (temp_r31->unk00 == 0) { arg0->model[i + 2] = Hu3DModelCreateFile(lbl_1_data_1E4[i]); - } else { + } + else { arg0->model[i + 2] = Hu3DModelLink(lbl_1_bss_330[0]->model[i + 2]); } Hu3DMotionTimeSet(arg0->model[i + 2], 10.0f); @@ -1328,7 +1289,8 @@ void fn_1_5850(omObjData* arg0) { arg0->func = fn_1_4C8; } -void fn_1_60A4(omObjData* arg0) { +void fn_1_60A4(omObjData *arg0) +{ lbl_1_bss_50 = 1000; lbl_1_bss_54 = 0; lbl_1_bss_48 = 0; @@ -1338,8 +1300,9 @@ void fn_1_60A4(omObjData* arg0) { arg0->func = fn_1_45F8; } -void ObjectSetup(void) { - omObjData* var_r30; +void ObjectSetup(void) +{ + omObjData *var_r30; s32 i; OSReport("******* M463 ObjectSetup *********\n"); @@ -1396,9 +1359,10 @@ void ObjectSetup(void) { lbl_1_bss_358 = omAddObjEx(lbl_1_bss_40, 103, 0, 0, -1, fn_1_60A4); } -void fn_1_659C(omObjData* arg0) { - StructBss330Data* spC[9]; - void* sp8; +void fn_1_659C(omObjData *arg0) +{ + StructBss330Data *spC[9]; + void *sp8; s32 var_r31; s32 var_r30; diff --git a/src/REL/modeltestDll/main.c b/src/REL/modeltestDll/main.c index b2887739..2b99a635 100644 --- a/src/REL/modeltestDll/main.c +++ b/src/REL/modeltestDll/main.c @@ -308,8 +308,7 @@ void fn_1_29C(omObjData *arg0) lbl_1_bss_864[var_r31] = Hu3DParManCreate(temp_r28, 0x1F4, &lbl_1_data_168[0]); Hu3DParManAttrSet(lbl_1_bss_864[var_r31], 0x864); Hu3DParticleBlendModeSet(Hu3DParManModelIDGet(lbl_1_bss_864[var_r31]), 1U); - Hu3DParManPosSet( - lbl_1_bss_864[var_r31], (100.0 * sind(36.0f * var_r31)), 0.0f, 100.0 * cosd(36.0f * var_r31)); + Hu3DParManPosSet(lbl_1_bss_864[var_r31], (100.0 * sind(36.0f * var_r31)), 0.0f, 100.0 * cosd(36.0f * var_r31)); Hu3DParManRotSet(lbl_1_bss_864[var_r31], -90.0f, 0.0f, 0.0f); } @@ -596,10 +595,10 @@ void fn_1_20F4(void) Hu3DModelObjMtxGet(temp_r3, lbl_1_data_D8[(var_r29 * 2) + 1], spC0); Hu3DMtxTransGet(spC0, &sp18); - PSMTXInverse(sp30, sp60); + MTXInverse(sp30, sp60); Hu3DModelObjMtxGet(temp_r3, lbl_1_data_D8[(var_r29 * 2) + 1], spC0); Hu3DMtxTransGet(spC0, &sp18); - PSMTXMultVec(sp60, &sp18, &sp18); + MTXMultVec(sp60, &sp18, &sp18); temp_f27 = atan2d(sp18.z, sp18.x); temp_r31 = &lbl_1_bss_40[var_r29 * 2]; @@ -654,7 +653,7 @@ void fn_1_28F8(Point3d *arg0, Point3d *arg1) cam = &Hu3DCamera[0]; C_MTXLookAt(sp18, &cam->pos, &cam->up, &cam->target); - PSMTXMultVec(sp18, arg0, &spC); + MTXMultVec(sp18, arg0, &spC); temp_f31 = (1.2f * (spC.z * (sind(cam->fov / 2) / (cosd(cam->fov / 2))))); temp_f30 = (spC.z * (sind(cam->fov / 2) / (cosd(cam->fov / 2)))); @@ -795,10 +794,10 @@ void fn_1_2B68(ModelData *mdl, Mtx arg1) GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); GXSetAlphaCompare(GX_GEQUAL, 1U, GX_AOP_AND, GX_GEQUAL, 1U); GXSetZCompLoc(0U); - PSMTXIdentity(arg1); + MTXIdentity(arg1); GXLoadPosMtxImm(arg1, 0U); - PSMTXInvXpose(arg1, sp90); + MTXInvXpose(arg1, sp90); GXLoadNrmMtxImm(sp90, 0); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); @@ -812,7 +811,7 @@ void fn_1_2B68(ModelData *mdl, Mtx arg1) GXLoadTexObj(&sp30, GX_TEXMAP0); GXSetNumIndStages(1U); - PSMTXScale(sp150, 0.1f, 0.1f, 0.0f); + MTXScale(sp150, 0.1f, 0.1f, 0.0f); sp18[0][0] = sp150[0][0]; sp18[0][1] = sp150[0][1]; sp18[0][2] = 0.0f; @@ -820,12 +819,12 @@ void fn_1_2B68(ModelData *mdl, Mtx arg1) sp18[1][1] = sp150[1][1]; sp18[1][2] = 0.0f; - PSMTXRotRad(spF0, 0x58, -1.5707964f); + MTXRotRad(spF0, 0x58, -1.5707964f); mtxRot(spF0, 0.0f, 0.0f, 0.0f); temp_f31 = 0.0015625f; - PSMTXScale(sp120, temp_f31, temp_f31, temp_f31); - PSMTXConcat(sp120, spF0, sp150); - PSMTXTrans(spC0, 0.5f, 0.0f, 0.5f); + MTXScale(sp120, temp_f31, temp_f31, temp_f31); + MTXConcat(sp120, spF0, sp150); + MTXTrans(spC0, 0.5f, 0.0f, 0.5f); GXLoadTexMtxImm(sp150, 0x1EU, GX_MTX2x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_POS, 0x1EU, 0U, 0x7DU); GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, GX_TEXMAP1); diff --git a/src/REL/w01Dll/main.c b/src/REL/w01Dll/main.c index 350880e2..6cf2beb7 100755 --- a/src/REL/w01Dll/main.c +++ b/src/REL/w01Dll/main.c @@ -1,6 +1,20 @@ -#include "REL/w01Dll.h" +#include "game/board/main.h" #include "REL/board_executor.h" +#include "REL/w01Dll.h" #include "game/audio.h" +#include "game/board/audio.h" +#include "game/board/boo_house.h" +#include "game/board/com.h" +#include "game/board/lottery.h" +#include "game/board/map_object.h" +#include "game/board/model.h" +#include "game/board/player.h" +#include "game/board/shop.h" +#include "game/board/space.h" +#include "game/board/star.h" +#include "game/board/ui.h" +#include "game/board/view.h" +#include "game/board/window.h" #include "game/chrman.h" #include "game/data.h" #include "game/gamework_data.h" @@ -13,20 +27,6 @@ #include "game/process.h" #include "game/window.h" #include "game/wipe.h" -#include "game/board/audio.h" -#include "game/board/boo_house.h" -#include "game/board/com.h" -#include "game/board/lottery.h" -#include "game/board/main.h" -#include "game/board/model.h" -#include "game/board/player.h" -#include "game/board/shop.h" -#include "game/board/space.h" -#include "game/board/star.h" -#include "game/board/ui.h" -#include "game/board/view.h" -#include "game/board/window.h" -#include "game/board/map_object.h" #include "dolphin.h" #include "ext_math.h" @@ -162,42 +162,40 @@ static void fn_1_9920(omObjData *arg0); static void fn_1_9A24(Bss20Work *arg0); static void fn_1_9BBC(Bss20Work *arg0); - -static BoardMapObject lbl_1_data_0[MAPOBJ_MAX] = { - { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 8) }, - { { 0.0f, 700.0f, 300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 9) }, - { { -2025.0f, 100.0f, 1950.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, - { { 1725.0f, 200.0f, -1650.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, - { { 2757.974f, 200.0f, -536.781f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, - { { -2750.0f, 300.0f, -2150.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 12) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 13) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 14) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 15) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 16) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 16) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 16) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 17) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 18) }, - { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 18) }, - { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 21) }, - { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 22) }, - { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 23) }, - { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 24) }, - { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 25) }, - { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 26) }, - { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 27) }, - { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 3) }, - { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, - { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, - { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, - { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 5) }, - { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 3) }, - { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, - { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, - { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, - { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 5) } -}; +static BoardMapObject lbl_1_data_0[MAPOBJ_MAX] + = { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 8) }, + { { 0.0f, 700.0f, 300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 9) }, + { { -2025.0f, 100.0f, 1950.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, + { { 1725.0f, 200.0f, -1650.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, + { { 2757.974f, 200.0f, -536.781f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, + { { -2750.0f, 300.0f, -2150.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 12) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 13) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 14) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 15) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 16) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 16) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 16) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 17) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 18) }, + { { -2550.0f, 300.0f, -2250.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 18) }, + { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 21) }, + { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 22) }, + { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 23) }, + { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 24) }, + { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 25) }, + { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 26) }, + { { 3000.0f, 200.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 27) }, + { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 3) }, + { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, + { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, + { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, + { { 1200.0f, 0.0f, 1200.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 5) }, + { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 3) }, + { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, + { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, + { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, + { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 5) } }; s16 lbl_1_bss_6C4[MAPOBJ_MAX]; @@ -249,23 +247,18 @@ static s16 lbl_1_data_52C = -1; static s16 lbl_1_data_52E = -1; static s16 lbl_1_data_530 = -1; -static s32 lbl_1_data_534[] = { - DATA_MAKE_NUM(DATADIR_W01, 30), - -1 -}; +static s32 lbl_1_data_534[] = { DATA_MAKE_NUM(DATADIR_W01, 30), -1 }; -static s32 lbl_1_data_53C[] = { - DATA_MAKE_NUM(DATADIR_BGUEST, 1), - -1 -}; +static s32 lbl_1_data_53C[] = { DATA_MAKE_NUM(DATADIR_BGUEST, 1), -1 }; -void BoardCreate(void) { +void BoardCreate(void) +{ BoardMapObject *temp_r30; s32 sp8; s32 i; sp8 = GWBoardGet(); - lbl_1_bss_0 = (UnkBoardDataStruct*) GWSystem.board_data; + lbl_1_bss_0 = (UnkBoardDataStruct *)GWSystem.board_data; BoardSpaceInit(DATA_MAKE_NUM(DATADIR_W01, 0)); lbl_1_data_528 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 1), NULL, 0); fn_8006DDE8(lbl_1_data_528, -1.0f); @@ -289,7 +282,8 @@ void BoardCreate(void) { if (temp_r30->data_num != -1) { if (i == 2 || i == 3 || i == 4 || i == 5) { lbl_1_bss_6C0 = lbl_1_data_53C; - } else { + } + else { lbl_1_bss_6C0 = NULL; } lbl_1_bss_6C4[i] = BoardModelCreate(temp_r30->data_num, lbl_1_bss_6C0, 0); @@ -317,7 +311,8 @@ void BoardCreate(void) { BoardJunctionMaskSet(0x3000); } -void BoardDestroy(void) { +void BoardDestroy(void) +{ s32 i; fn_1_4864(); @@ -351,17 +346,18 @@ void BoardDestroy(void) { BoardSpaceDestroy(); } -static void fn_1_730(void) { +static void fn_1_730(void) +{ s16 var_r31; var_r31 = BoardModelIDGet(lbl_1_data_528); Hu3DModelLightInfoSet(var_r31, 1); } -static void fn_1_774(void) { -} +static void fn_1_774(void) { } -static s32 fn_1_778(void) { +static s32 fn_1_778(void) +{ s32 temp_r31; s32 temp_r30; u32 temp_r29; @@ -371,12 +367,14 @@ static s32 fn_1_778(void) { temp_r29 = BoardSpaceFlagGet(0, temp_r30); if (temp_r29 & 0x800) { fn_1_77EC(temp_r31, temp_r30); - } else if (temp_r29 & 0x400) { + } + else if (temp_r29 & 0x400) { fn_1_7528(temp_r31, temp_r30); } } -static s32 fn_1_814(void) { +static s32 fn_1_814(void) +{ s32 temp_r27; s32 var_r30; s32 var_r29; @@ -394,7 +392,8 @@ static s32 fn_1_814(void) { if (lbl_1_bss_0->unk00_field0 != 0) { return 0; } - } else if (temp_r31->flag & 0x1000) { + } + else if (temp_r31->flag & 0x1000) { if (lbl_1_bss_0->unk00_field0 != 1) { return 0; } @@ -410,7 +409,8 @@ static s32 fn_1_814(void) { var_r29 = 0; var_r26 = temp_r31->link[var_r30]; break; - } else if (temp_r28->flag & 0x4000) { + } + else if (temp_r28->flag & 0x4000) { var_r29 = 1; var_r26 = temp_r31->link[var_r30]; break; @@ -424,7 +424,8 @@ static s32 fn_1_814(void) { return 0; } -static void fn_1_9E8(void) { +static void fn_1_9E8(void) +{ BoardModelVisibilitySet(lbl_1_bss_6C4[6], 1); BoardModelVisibilitySet(lbl_1_bss_6C4[7], 0); BoardModelVisibilitySet(lbl_1_bss_6C4[8], 0); @@ -459,10 +460,10 @@ static void fn_1_9E8(void) { BoardModelHookSet(lbl_1_bss_6C4[21], "m_goraund_01-flag1", lbl_1_bss_6C4[22]); } -static void fn_1_D00(void) { -} +static void fn_1_D00(void) { } -static void fn_1_D04(void) { +static void fn_1_D04(void) +{ Vec sp3C; Vec sp30; Vec sp24; @@ -526,7 +527,8 @@ static void fn_1_D04(void) { if (GWPlayer[temp_r30].com) { if (var_r26 != 0) { BoardComKeySetLeft(); - } else { + } + else { BoardComKeySetRight(); } } @@ -578,13 +580,15 @@ static void fn_1_D04(void) { HuPrcEnd(); } -static void fn_1_1254(void) { +static void fn_1_1254(void) +{ BoardWinKill(); CharModelDataClose(-1); lbl_1_bss_4 = NULL; } -static void fn_1_128C(void) { +static void fn_1_128C(void) +{ lbl_1_bss_4 = HuPrcChildCreate(fn_1_D04, 0x2003, 0x2000, 0, boardMainProc); HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1254); while (lbl_1_bss_4) { @@ -592,7 +596,8 @@ static void fn_1_128C(void) { } } -static void fn_1_130C(void) { +static void fn_1_130C(void) +{ Vec sp20; Vec sp14; Vec sp8; @@ -644,7 +649,8 @@ static void fn_1_130C(void) { BoardPlayerMotionStart(temp_r31, 1, 0x40000001); } -static s32 fn_1_157C(void) { +static s32 fn_1_157C(void) +{ s32 temp_r31; s16 temp_curr; @@ -653,23 +659,27 @@ static s32 fn_1_157C(void) { BoardRollDispSet(0); if (temp_r31 == 0x200000) { fn_1_130C(); - } else if (temp_r31 == 0x400000) { + } + else if (temp_r31 == 0x400000) { fn_1_128C(); } BoardRollDispSet(1); } -static void fn_1_1670(void) { +static void fn_1_1670(void) +{ if (lbl_1_bss_0->unk00_field0 == 0) { BoardModelVisibilitySet(lbl_1_bss_6C4[2], 1); BoardModelVisibilitySet(lbl_1_bss_6C4[3], 0); - } else { + } + else { BoardModelVisibilitySet(lbl_1_bss_6C4[2], 0); BoardModelVisibilitySet(lbl_1_bss_6C4[3], 1); } } -static void fn_1_1700(void) { +static void fn_1_1700(void) +{ Vec sp8; Mtx sp14; @@ -683,7 +693,8 @@ static void fn_1_1700(void) { BoardSpaceFlagPosGet(1, 0x2000, &sp8); BoardModelMotionTimeSet(lbl_1_bss_6AE, lbl_1_bss_644); lbl_1_bss_63C = -90.0f; - } else { + } + else { BoardSpaceFlagPosGet(1, 0x1000, &sp8); BoardModelMotionTimeSet(lbl_1_bss_6AE, 0.0f); lbl_1_bss_63C = 90.0f; @@ -694,13 +705,14 @@ static void fn_1_1700(void) { BoardModelExistDupe(lbl_1_bss_6C4[0], 1); BoardModelExistDupe(lbl_1_bss_6C4[1], 1); fn_8006DDE8(lbl_1_bss_6C4[1], 500.0f); - PSMTXIdentity(sp14); + MTXIdentity(sp14); BoardModelMtxSet(lbl_1_bss_6C4[0], &sp14); fn_1_1670(); } } -static void fn_1_1990(void) { +static void fn_1_1990(void) +{ Vec sp10; float var_f31; s32 var_r29; @@ -715,7 +727,8 @@ static void fn_1_1990(void) { temp_r31 = BoardSpaceGet(1, var_r29); if (lbl_1_bss_0->unk00_field0 == 0) { var_r30 = temp_r31->link[0]; - } else { + } + else { BoardSpaceLinkTargetListGet(1, var_r29, sp8); var_r30 = sp8[0]; } @@ -736,18 +749,21 @@ static void fn_1_1990(void) { } if (temp_r31->flag & 8) { lbl_1_bss_6B3 = 1; - } else { + } + else { lbl_1_bss_6B3 = 0; } } -static void fn_1_1AD8(BoardCameraData *camera) { +static void fn_1_1AD8(BoardCameraData *camera) +{ camera->pos = lbl_1_bss_630; camera->up = lbl_1_bss_624; camera->target = lbl_1_bss_618; } -static void fn_1_1B3C(void) { +static void fn_1_1B3C(void) +{ Vec sp3C; Vec sp30; Vec sp24; @@ -763,25 +779,28 @@ static void fn_1_1B3C(void) { sp24 = lbl_1_bss_648; spC = lbl_1_bss_654; BoardMTXCalcLookAt(sp48, &spC, &sp18, &sp24); - PSMTXTranspose(sp48, lbl_1_bss_678); - PSMTXRotRad(sp48, 'z', MTXDegToRad(lbl_1_bss_660.z)); - PSMTXConcat(lbl_1_bss_678, sp48, lbl_1_bss_678); - } else { + MTXTranspose(sp48, lbl_1_bss_678); + MTXRotRad(sp48, 'z', MTXDegToRad(lbl_1_bss_660.z)); + MTXConcat(lbl_1_bss_678, sp48, lbl_1_bss_678); + } + else { if (sp30.z != 0.0f || sp30.x != 0.0f) { lbl_1_bss_660.y = atan2d(sp30.x, sp30.z); lbl_1_bss_660.x = -atan2d(sp30.y, VECMagXZ(&sp30)); - } else { + } + else { lbl_1_bss_660.x = lbl_1_bss_660.y = 0.0f; } - PSMTXRotRad(lbl_1_bss_678, 'z', MTXDegToRad(lbl_1_bss_660.z)); - PSMTXRotRad(sp48, 'x', MTXDegToRad(lbl_1_bss_660.x)); - PSMTXConcat(sp48, lbl_1_bss_678, lbl_1_bss_678); - PSMTXRotRad(sp48, 'y', MTXDegToRad(lbl_1_bss_660.y)); - PSMTXConcat(sp48, lbl_1_bss_678, lbl_1_bss_678); + MTXRotRad(lbl_1_bss_678, 'z', MTXDegToRad(lbl_1_bss_660.z)); + MTXRotRad(sp48, 'x', MTXDegToRad(lbl_1_bss_660.x)); + MTXConcat(sp48, lbl_1_bss_678, lbl_1_bss_678); + MTXRotRad(sp48, 'y', MTXDegToRad(lbl_1_bss_660.y)); + MTXConcat(sp48, lbl_1_bss_678, lbl_1_bss_678); } } -static void fn_1_1EE4(void) { +static void fn_1_1EE4(void) +{ Bss10Work *temp_r31; if (lbl_1_bss_10) { @@ -790,7 +809,8 @@ static void fn_1_1EE4(void) { } } -static void fn_1_1F2C(omObjData *arg0) { +static void fn_1_1F2C(omObjData *arg0) +{ Bss10Work *temp_r31 = OM_GET_WORK_PTR(arg0, Bss10Work); if (temp_r31->unk00_field0 != 0 || BoardIsKill()) { @@ -801,7 +821,8 @@ static void fn_1_1F2C(omObjData *arg0) { fn_1_1FA4(); } -static void fn_1_1FA4(void) { +static void fn_1_1FA4(void) +{ Vec sp18; Vec spC; float temp_f28; @@ -818,7 +839,8 @@ static void fn_1_1FA4(void) { if (spC.x != 0.0f || spC.z != 0.0f) { temp_f29 = atan2f(spC.y, VECMagXZ(&spC)); temp_f28 = atan2f(-spC.x, -spC.z); - } else { + } + else { temp_f29 = temp_f28 = 0.0f; return; } @@ -830,7 +852,8 @@ static void fn_1_1FA4(void) { BoardModelPosGet(lbl_1_bss_6C4[1], &sp18); if (lbl_1_bss_0->unk00_field0 == 0) { var_f27 = -2500.0f; - } else { + } + else { var_f27 = 2500.0f; } sp18.x = sp18.x + var_f27 * sin(1.4137166738510132); // TODO: should be sind(81) @@ -839,7 +862,8 @@ static void fn_1_1FA4(void) { VECSubtract(&sp18, &lbl_1_bss_630, &spC); VECScale(&spC, &spC, lbl_1_bss_66C); VECAdd(&spC, &lbl_1_bss_630, &lbl_1_bss_630); - } else { + } + else { if (lbl_1_bss_66C < 0.08f) { lbl_1_bss_66C += 0.00066666666f; } @@ -853,7 +877,8 @@ static void fn_1_1FA4(void) { } } -static float fn_1_2524(void) { +static float fn_1_2524(void) +{ Vec sp24; Vec sp18; Vec spC; @@ -883,10 +908,12 @@ static float fn_1_2524(void) { var_f30 = atan2d(spC.x, spC.z); if (var_f30 > 0.0f) { var_f30 = 45.0f; - } else { + } + else { var_f30 = -45.0f; } - } else { + } + else { var_r29 = GWPlayer[lbl_1_bss_6B4].port; sp8 = HuPadStkX[var_r29]; OSs16tof32(&sp8, &var_f30); @@ -895,7 +922,8 @@ static float fn_1_2524(void) { return var_f30; } -static void fn_1_276C(void) { +static void fn_1_276C(void) +{ Vec sp58; Vec sp40; Vec sp34; @@ -916,16 +944,19 @@ static void fn_1_276C(void) { if (lbl_1_bss_660.z > 22.5f) { BoardPlayerMotionStart(lbl_1_bss_6B4, lbl_1_bss_5CC[1], 0); BoardPlayerMotionTimeSet(lbl_1_bss_6B4, temp_f26); - } else if (lbl_1_bss_660.z < -22.5f) { + } + else if (lbl_1_bss_660.z < -22.5f) { BoardPlayerMotionStart(lbl_1_bss_6B4, lbl_1_bss_5CC[1], 0); BoardPlayerMotionTimeSet(lbl_1_bss_6B4, temp_f26); - } else { + } + else { BoardPlayerMotionShiftSet(lbl_1_bss_6B4, lbl_1_bss_5CC[0], 0.0f, 10.0f, HU3D_MOTATTR_LOOP); } fn_1_2F18(); } -static void fn_1_2F18(void) { +static void fn_1_2F18(void) +{ Vec sp3C; Vec sp30; Vec sp24; @@ -948,16 +979,17 @@ static void fn_1_2F18(void) { if (sp18.z != 0.0f || sp18.x != 0.0f) { sp24.y = atan2d(sp18.x, sp18.z); sp24.x = -atan2d(sp18.y, VECMagXZ(&sp18)); - } else { + } + else { sp24.x = sp24.y = 0.0f; } - PSMTXTrans(spD8, 0.0f, 180.0f, 0.0f); - PSMTXRotRad(spA8, 'x', MTXDegToRad(sp24.x)); - PSMTXRotRad(sp78, 'y', MTXDegToRad(sp24.y)); - PSMTXRotRad(sp48, 'z', MTXDegToRad(var_f29)); - PSMTXConcat(spA8, sp48, sp48); - PSMTXConcat(sp78, sp48, sp48); - PSMTXConcat(sp48, spD8, spD8); + MTXTrans(spD8, 0.0f, 180.0f, 0.0f); + MTXRotRad(spA8, 'x', MTXDegToRad(sp24.x)); + MTXRotRad(sp78, 'y', MTXDegToRad(sp24.y)); + MTXRotRad(sp48, 'z', MTXDegToRad(var_f29)); + MTXConcat(spA8, sp48, sp48); + MTXConcat(sp78, sp48, sp48); + MTXConcat(sp48, spD8, spD8); sp30.x = spD8[0][3]; sp30.y = spD8[1][3]; sp30.z = spD8[2][3]; @@ -984,7 +1016,8 @@ static void fn_1_2F18(void) { static s16 lbl_1_data_580 = -1; -static void fn_1_3350(void) { +static void fn_1_3350(void) +{ Vec sp8; s16 temp_r3; ModelData *temp_r30; @@ -993,7 +1026,8 @@ static void fn_1_3350(void) { lbl_1_bss_674 += 0.002f; if (lbl_1_bss_670 > 0.18f) { lbl_1_bss_670 = 0.18f; - } else if (lbl_1_bss_670 < 0.18f) { + } + else if (lbl_1_bss_670 < 0.18f) { lbl_1_bss_670 += lbl_1_bss_674; } temp_r3 = BoardModelIDGet(lbl_1_bss_6AE); @@ -1008,18 +1042,14 @@ static void fn_1_3350(void) { lbl_1_bss_640 += VECMag(&sp8); } -static s32 lbl_1_data_594[8][2] = { - { DATA_MAKE_NUM(DATADIR_W01, 34), DATA_MAKE_NUM(DATADIR_W01, 42) }, - { DATA_MAKE_NUM(DATADIR_W01, 35), DATA_MAKE_NUM(DATADIR_W01, 43) }, - { DATA_MAKE_NUM(DATADIR_W01, 36), DATA_MAKE_NUM(DATADIR_W01, 44) }, - { DATA_MAKE_NUM(DATADIR_W01, 37), DATA_MAKE_NUM(DATADIR_W01, 45) }, - { DATA_MAKE_NUM(DATADIR_W01, 38), DATA_MAKE_NUM(DATADIR_W01, 46) }, - { DATA_MAKE_NUM(DATADIR_W01, 39), DATA_MAKE_NUM(DATADIR_W01, 47) }, - { DATA_MAKE_NUM(DATADIR_W01, 40), DATA_MAKE_NUM(DATADIR_W01, 48) }, - { DATA_MAKE_NUM(DATADIR_W01, 41), DATA_MAKE_NUM(DATADIR_W01, 49) } -}; +static s32 lbl_1_data_594[8][2] + = { { DATA_MAKE_NUM(DATADIR_W01, 34), DATA_MAKE_NUM(DATADIR_W01, 42) }, { DATA_MAKE_NUM(DATADIR_W01, 35), DATA_MAKE_NUM(DATADIR_W01, 43) }, + { DATA_MAKE_NUM(DATADIR_W01, 36), DATA_MAKE_NUM(DATADIR_W01, 44) }, { DATA_MAKE_NUM(DATADIR_W01, 37), DATA_MAKE_NUM(DATADIR_W01, 45) }, + { DATA_MAKE_NUM(DATADIR_W01, 38), DATA_MAKE_NUM(DATADIR_W01, 46) }, { DATA_MAKE_NUM(DATADIR_W01, 39), DATA_MAKE_NUM(DATADIR_W01, 47) }, + { DATA_MAKE_NUM(DATADIR_W01, 40), DATA_MAKE_NUM(DATADIR_W01, 48) }, { DATA_MAKE_NUM(DATADIR_W01, 41), DATA_MAKE_NUM(DATADIR_W01, 49) } }; -static void fn_1_3514(s32 arg0) { +static void fn_1_3514(s32 arg0) +{ s32 temp_r30; s32 i; @@ -1029,7 +1059,8 @@ static void fn_1_3514(s32 arg0) { } } -static void fn_1_35B4(s32 arg0) { +static void fn_1_35B4(s32 arg0) +{ s32 i; for (i = 0; i < 2; i++) { @@ -1038,7 +1069,8 @@ static void fn_1_35B4(s32 arg0) { } } -static void fn_1_3624(void) { +static void fn_1_3624(void) +{ Mtx sp48; Vec sp3C; Vec sp30; @@ -1075,7 +1107,8 @@ static void fn_1_3624(void) { lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x2000, &sp3C); var_r25 = BoardSpaceFlagSearch(0, 0x1000); var_f30 = -1.0f; - } else { + } + else { BoardModelMotionTimeSet(lbl_1_bss_6AE, 0.0f); lbl_1_bss_63C = 90.0f; lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x1000, &sp3C); @@ -1099,7 +1132,7 @@ static void fn_1_3624(void) { lbl_1_bss_630.x = lbl_1_bss_618.x + 1000.0 * (sind(sp30.y) * cosd(sp30.x)); lbl_1_bss_630.y = lbl_1_bss_618.y + 1000.0 * -sind(sp30.x); lbl_1_bss_630.z = lbl_1_bss_618.z + 1000.0 * (cosd(sp30.y) * cosd(sp30.x)); - PSMTXRotRad(lbl_1_bss_678, 'y', MTXDegToRad(lbl_1_bss_63C)); + MTXRotRad(lbl_1_bss_678, 'y', MTXDegToRad(lbl_1_bss_63C)); BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); BoardPlayerMtxSet(lbl_1_bss_6B4, &lbl_1_bss_678); BoardModelRotSet(lbl_1_bss_6C4[0], 0.0f, 0.0f, 0.0f); @@ -1124,16 +1157,18 @@ static void fn_1_3624(void) { BoardModelPosSetV(lbl_1_bss_6C4[0], &lbl_1_bss_654); BoardPlayerPosSetV(lbl_1_bss_6B4, &lbl_1_bss_654); if (BoardPlayerSizeGet(lbl_1_bss_6B4) != 1) { - PSMTXTrans(sp48, 0.0f, 30.0f, 0.0f); - } else { - PSMTXTrans(sp48, 0.0f, 400.0f, 250.0f); + MTXTrans(sp48, 0.0f, 30.0f, 0.0f); + } + else { + MTXTrans(sp48, 0.0f, 400.0f, 250.0f); } BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); - PSMTXConcat(lbl_1_bss_678, sp48, sp48); + MTXConcat(lbl_1_bss_678, sp48, sp48); BoardPlayerMtxSet(lbl_1_bss_6B4, &sp48); if (lbl_1_bss_0->unk00_field0 == 0) { var_f29 = -lbl_1_bss_670; - } else { + } + else { var_f29 = lbl_1_bss_670; } BoardModelMotionSpeedSet(lbl_1_bss_6AE, var_f29); @@ -1141,22 +1176,24 @@ static void fn_1_3624(void) { if (BoardModelMotionTimeGet(lbl_1_bss_6AE) <= 0.0f) { break; } - } else { + } + else { if (BoardModelMotionTimeGet(lbl_1_bss_6AE) >= lbl_1_bss_644) { break; } } HuPrcVSleep(); } - PSMTXIdentity(lbl_1_bss_678); + MTXIdentity(lbl_1_bss_678); fn_1_4864(); HuAudFXStop(temp_r19); fn_1_1EE4(); fn_1_98EC(); if (BoardPlayerSizeGet(lbl_1_bss_6B4) == 1) { - PSMTXTrans(sp48, 0.0f, 400.0f, 250.0f); - } else { - PSMTXTrans(sp48, 0.0f, 30.0f, 0.0f); + MTXTrans(sp48, 0.0f, 400.0f, 250.0f); + } + else { + MTXTrans(sp48, 0.0f, 30.0f, 0.0f); } BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); BoardPlayerMtxSet(lbl_1_bss_6B4, &sp48); @@ -1196,11 +1233,13 @@ static void fn_1_3624(void) { lbl_1_bss_6B2 = 1; } -static void fn_1_45F4(void) { +static void fn_1_45F4(void) +{ if (lbl_1_bss_6B2 != 0) { if (lbl_1_bss_0->unk00_field0 == 0) { lbl_1_bss_0->unk00_field0 = 1; - } else { + } + else { lbl_1_bss_0->unk00_field0 = 0; } lbl_1_bss_6B2 = 0; @@ -1220,7 +1259,8 @@ static void fn_1_45F4(void) { BoardStatusShowSetAll(1); } -static void fn_1_4774(void) { +static void fn_1_4774(void) +{ float sp8[2]; float var_f31; float var_f30; @@ -1234,14 +1274,16 @@ static void fn_1_4774(void) { HuWinMesSet(lbl_1_data_580, MAKE_MESSID(13, 5)); } -static void fn_1_4864(void) { +static void fn_1_4864(void) +{ if (lbl_1_data_580 != -1) { HuWinKill(lbl_1_data_580); lbl_1_data_580 = -1; } } -static s32 fn_1_48B4(void) { +static s32 fn_1_48B4(void) +{ Vec sp20; Vec sp14; Vec sp8; @@ -1286,7 +1328,8 @@ static s32 fn_1_48B4(void) { if (GWPlayer[lbl_1_bss_6B4].com) { if (BoardPlayerCoinsGet(lbl_1_bss_6B4) >= 5) { BoardComKeySetUp(); - } else { + } + else { BoardComKeySetDown(); } } @@ -1340,7 +1383,8 @@ static s32 fn_1_48B4(void) { return 0; } -static void fn_1_4E14(void) { +static void fn_1_4E14(void) +{ if (fn_1_48B4() != 0) { fn_1_3624(); fn_1_45F4(); @@ -1348,12 +1392,14 @@ static void fn_1_4E14(void) { HuPrcEnd(); } -static void fn_1_4FA8(void) { +static void fn_1_4FA8(void) +{ BoardWinKill(); lbl_1_bss_8 = NULL; } -static void fn_1_4FD8(void) { +static void fn_1_4FD8(void) +{ lbl_1_bss_6B4 = GWSystem.player_curr; BoardRollDispSet(0); if (BoardPlayerSizeGet(lbl_1_bss_6B4) == 2 || GWPlayer[lbl_1_bss_6B4].bowser_suit) { @@ -1367,7 +1413,8 @@ static void fn_1_4FD8(void) { BoardRollDispSet(1); } -static void fn_1_50D4(void) { +static void fn_1_50D4(void) +{ Vec sp20; Vec sp14; Vec sp8; @@ -1398,11 +1445,13 @@ static void fn_1_50D4(void) { } if (!(temp_r31->flag & 0x80)) { sp14 = temp_r31->pos; - } else { + } + else { if (var_r29 >= 3) { if (BoardRandFloat() < 0.5f) { var_r26 = 1; - } else { + } + else { var_r26 = 0; } var_r27 = var_r26; @@ -1426,7 +1475,8 @@ static void fn_1_50D4(void) { } } -static void fn_1_53B8(void) { +static void fn_1_53B8(void) +{ s32 i; for (i = 0; i < 24; i++) { @@ -1440,21 +1490,14 @@ static void fn_1_53B8(void) { static s32 lbl_1_data_5D4 = -1; static s32 lbl_1_data_5D8 = -1; -static s16 lbl_1_data_5DC[2][4] = { - { 24, 25, 26, 27 }, - { 29, 30, 31, 32 } -}; +static s16 lbl_1_data_5DC[2][4] = { { 24, 25, 26, 27 }, { 29, 30, 31, 32 } }; -static char *lbl_1_data_604[] = { - "chara1", "chara2", "chara3" -}; +static char *lbl_1_data_604[] = { "chara1", "chara2", "chara3" }; -static float lbl_1_data_610[2][2] = { - { 90.0f, 0.0f }, - { 0.0f, 270.0f } -}; +static float lbl_1_data_610[2][2] = { { 90.0f, 0.0f }, { 0.0f, 270.0f } }; -static void fn_1_543C(void) { +static void fn_1_543C(void) +{ float var_f31; s16 temp_r28; s16 temp_r29; @@ -1477,19 +1520,22 @@ static void fn_1_543C(void) { } if (lbl_1_bss_0->unk01[0] != 0) { var_f31 = 0.0f; - } else { + } + else { var_f31 = 90.0f; } BoardModelRotSet(lbl_1_bss_6C4[27], 0.0f, var_f31, 0.0f); if (lbl_1_bss_0->unk01[1] != 0) { var_f31 = -90.0f; - } else { + } + else { var_f31 = 0.0f; } BoardModelRotSet(lbl_1_bss_6C4[32], 0.0f, var_f31, 0.0f); } -static void fn_1_5694(s32 arg0) { +static void fn_1_5694(s32 arg0) +{ s16 temp_r29; s16 temp_r30; s16 i; @@ -1504,7 +1550,8 @@ static void fn_1_5694(s32 arg0) { BoardModelMotionSpeedSet(temp_r30, 1.0f); BoardModelAttrReset(temp_r30, 0x40000002); } - } else { + } + else { BoardModelMotionSpeedSet(temp_r29, 0.0f); BoardModelAttrSet(temp_r29, 0x40000002); for (i = 0; i < 3; i++) { @@ -1515,7 +1562,8 @@ static void fn_1_5694(s32 arg0) { } } -static void fn_1_586C(s32 arg0, s32 arg1) { +static void fn_1_586C(s32 arg0, s32 arg1) +{ lbl_1_bss_29 = arg0; lbl_1_bss_26 = arg1; BoardRollDispSet(0); @@ -1527,7 +1575,8 @@ static void fn_1_586C(s32 arg0, s32 arg1) { BoardRollDispSet(1); } -static void fn_1_592C(void) { +static void fn_1_592C(void) +{ s16 temp_r30; s16 var_r28; @@ -1536,7 +1585,8 @@ static void fn_1_592C(void) { BoardPlayerIdleSet(GWSystem.player_curr); if (lbl_1_bss_29 == 0) { var_r28 = lbl_1_bss_6C4[23]; - } else { + } + else { var_r28 = lbl_1_bss_6C4[28]; } BoardCameraTargetModelSet(var_r28); @@ -1553,11 +1603,13 @@ static void fn_1_592C(void) { HuPrcEnd(); } -static void fn_1_5B2C(void) { +static void fn_1_5B2C(void) +{ lbl_1_bss_14 = NULL; } -static void fn_1_5B40(void) { +static void fn_1_5B40(void) +{ s16 spC[] = { 27, 32 }; s16 temp_r30; s32 temp_r31; @@ -1579,11 +1631,13 @@ static void fn_1_5B40(void) { } } -static BOOL fn_1_5CD0(void) { +static BOOL fn_1_5CD0(void) +{ return lbl_1_bss_18 ? FALSE : TRUE; } -static void fn_1_5D08(void) { +static void fn_1_5D08(void) +{ Bss18Work *temp_r31; float var_f30; float var_f31; @@ -1593,7 +1647,8 @@ static void fn_1_5D08(void) { if (lbl_1_bss_29 == 0) { var_r28 = lbl_1_bss_6C4[23]; - } else { + } + else { var_r28 = lbl_1_bss_6C4[28]; } while (TRUE) { @@ -1632,12 +1687,14 @@ static void fn_1_5D08(void) { temp_r31->unk04 = var_r28; if (BoardPlayerSizeGet(GWSystem.player_curr) == 2) { temp_r31->unk00_field3 = 1; - } else { + } + else { temp_r31->unk00_field3 = 0; } } -static void fn_1_6098(omObjData *arg0) { +static void fn_1_6098(omObjData *arg0) +{ Bss18Work *temp_r31 = OM_GET_WORK_PTR(arg0, Bss18Work); s32 temp_r0; @@ -1666,7 +1723,8 @@ static void fn_1_6098(omObjData *arg0) { } } -static void fn_1_6194(Bss18Work *arg0, omObjData *arg1) { +static void fn_1_6194(Bss18Work *arg0, omObjData *arg1) +{ Mtx sp38; Vec sp2C; Vec sp20; @@ -1704,7 +1762,8 @@ static void fn_1_6194(Bss18Work *arg0, omObjData *arg1) { arg0->unk01 = 0; } -static void fn_1_63F0(Bss18Work *arg0, omObjData *arg1) { +static void fn_1_63F0(Bss18Work *arg0, omObjData *arg1) +{ Vec sp10; float temp_f29; float var_f27; @@ -1716,7 +1775,8 @@ static void fn_1_63F0(Bss18Work *arg0, omObjData *arg1) { BoardPlayerIdleSet(GWSystem.player_curr); if (GWPlayer[GWSystem.player_curr].bowser_suit) { BoardModelHookSet(arg0->unk04, lbl_1_data_604[lbl_1_bss_28], BoardBowserSuitModelGet()); - } else { + } + else { BoardModelHookSet(arg0->unk04, lbl_1_data_604[lbl_1_bss_28], BoardPlayerModelGet(GWSystem.player_curr)); } var_r24 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][lbl_1_bss_28]]; @@ -1763,7 +1823,8 @@ static void fn_1_63F0(Bss18Work *arg0, omObjData *arg1) { arg0->unk01++; } -static void fn_1_6A14(Bss18Work *arg0, omObjData *arg1) { +static void fn_1_6A14(Bss18Work *arg0, omObjData *arg1) +{ Vec sp20; Vec sp14; Vec sp8; @@ -1784,7 +1845,8 @@ static void fn_1_6A14(Bss18Work *arg0, omObjData *arg1) { arg0->unk01 = 0; } -static void fn_1_6BC0(Bss18Work *arg0, omObjData *arg1) { +static void fn_1_6BC0(Bss18Work *arg0, omObjData *arg1) +{ Vec sp14; Vec sp8; float var_f28; @@ -1831,7 +1893,8 @@ static void fn_1_6BC0(Bss18Work *arg0, omObjData *arg1) { arg0->unk01++; } -static void fn_1_6FB4(Bss18Work *arg0, omObjData *arg1) { +static void fn_1_6FB4(Bss18Work *arg0, omObjData *arg1) +{ Vec sp40; Vec sp34; Vec sp28; @@ -1864,7 +1927,8 @@ static void fn_1_6FB4(Bss18Work *arg0, omObjData *arg1) { } if (lbl_1_bss_29 == 0) { var_r24 = lbl_1_bss_0->unk01[lbl_1_bss_29] ^ 1; - } else { + } + else { var_r24 = lbl_1_bss_0->unk01[lbl_1_bss_29]; } temp_r29 = BoardSpaceGet(0, lbl_1_bss_26); @@ -1889,7 +1953,8 @@ static void fn_1_6FB4(Bss18Work *arg0, omObjData *arg1) { } } -static void fn_1_7528(s32 arg0, s32 arg1) { +static void fn_1_7528(s32 arg0, s32 arg1) +{ Vec sp30; Vec sp24; Vec sp18; @@ -1905,7 +1970,8 @@ static void fn_1_7528(s32 arg0, s32 arg1) { temp_f30 = VECDistance(&sp18, &sp30); if (temp_f31 < temp_f30) { lbl_1_bss_29 = 0; - } else { + } + else { lbl_1_bss_29 = 1; } BoardCameraTargetModelSet(lbl_1_bss_6C4[sp14[lbl_1_bss_29]]); @@ -1917,7 +1983,8 @@ static void fn_1_7528(s32 arg0, s32 arg1) { HuPrcSleep(12); } -static void fn_1_77EC(s32 arg0, s32 arg1) { +static void fn_1_77EC(s32 arg0, s32 arg1) +{ lbl_1_bss_6B4 = arg0; lbl_1_bss_6B0 = 0; lbl_1_bss_8 = HuPrcChildCreate(fn_1_7894, 0x2003, 0x2000, 0, boardMainProc); @@ -1927,7 +1994,8 @@ static void fn_1_77EC(s32 arg0, s32 arg1) { } } -static void fn_1_7894(void) { +static void fn_1_7894(void) +{ lbl_1_bss_6B1 = 1; WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 21); @@ -1939,7 +2007,8 @@ static void fn_1_7894(void) { HuPrcEnd(); } -static void fn_1_7A64(void) { +static void fn_1_7A64(void) +{ Vec sp34; Vec sp28; Vec sp1C; @@ -1969,7 +2038,8 @@ static void fn_1_7A64(void) { lbl_1_bss_63C = -90.0f; lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x2000, &sp34); var_r20 = BoardSpaceFlagSearch(1, 0x1000); - } else { + } + else { BoardModelMotionTimeSet(lbl_1_bss_6AE, 0.0f); lbl_1_bss_63C = 90.0f; lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x1000, &sp34); @@ -1977,7 +2047,7 @@ static void fn_1_7A64(void) { } lbl_1_bss_654 = sp34; BoardCameraMotionStartEx(lbl_1_bss_6C4[0], NULL, NULL, 2400.0f, -1.0f, 2); - PSMTXRotRad(lbl_1_bss_678, 'y', MTXDegToRad(lbl_1_bss_63C)); + MTXRotRad(lbl_1_bss_678, 'y', MTXDegToRad(lbl_1_bss_63C)); BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); BoardModelRotSet(lbl_1_bss_6C4[0], 0.0f, 0.0f, 0.0f); fn_1_3350(); @@ -1998,7 +2068,8 @@ static void fn_1_7A64(void) { BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); if (lbl_1_bss_0->unk00_field0 == 0) { var_f30 = -lbl_1_bss_670; - } else { + } + else { var_f30 = lbl_1_bss_670; } BoardModelMotionSpeedSet(lbl_1_bss_6AE, var_f30); @@ -2008,7 +2079,8 @@ static void fn_1_7A64(void) { WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); var_r28 = 1; } - } else { + } + else { if (BoardModelMotionTimeGet(lbl_1_bss_6AE) >= lbl_1_bss_644 - 20.0f && var_r28 == 0) { WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); @@ -2026,7 +2098,7 @@ static void fn_1_7A64(void) { while (lbl_1_bss_C) { HuPrcVSleep(); } - PSMTXIdentity(lbl_1_bss_678); + MTXIdentity(lbl_1_bss_678); BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); lbl_1_bss_660.x = 0.0f; lbl_1_bss_660.z = 0.0f; @@ -2044,7 +2116,8 @@ static void fn_1_7A64(void) { static s8 lbl_1_data_633 = -1; -static void fn_1_852C(void) { +static void fn_1_852C(void) +{ BssCWork *temp_r30; BssCData *temp_r31; Vec spC; @@ -2083,7 +2156,8 @@ static void fn_1_852C(void) { if (lbl_1_bss_0->unk00_field0 == 0) { temp_r31->unk08 = -0.18f; BoardModelMotionTimeSet(temp_r31->unk04, temp_f31); - } else { + } + else { temp_r31->unk08 = 0.18f; BoardModelMotionTimeSet(temp_r31->unk04, 0.0f); } @@ -2094,13 +2168,15 @@ static void fn_1_852C(void) { BoardCameraTargetModelSet(lbl_1_bss_6C4[0]); } -static void fn_1_87AC(void) { +static void fn_1_87AC(void) +{ if (lbl_1_bss_C) { OM_GET_WORK_PTR(lbl_1_bss_C, BssCWork)->unk00_field0 = 1; } } -static void fn_1_87E0(omObjData *arg0) { +static void fn_1_87E0(omObjData *arg0) +{ BssCWork *temp_r30 = OM_GET_WORK_PTR(arg0, BssCWork); BssCData *temp_r31; s32 i; @@ -2121,7 +2197,8 @@ static void fn_1_87E0(omObjData *arg0) { temp_r31 = &temp_r30->unk04[i]; if (temp_r31->unk02 != 0) { temp_r31->unk02--; - } else { + } + else { switch (temp_r31->unk00) { case 0: fn_1_8988(temp_r31, arg0); @@ -2146,7 +2223,8 @@ static void fn_1_87E0(omObjData *arg0) { } } -static void fn_1_8988(BssCData *arg0, omObjData *arg1) { +static void fn_1_8988(BssCData *arg0, omObjData *arg1) +{ Vec sp20; Vec sp14; Vec sp8; @@ -2161,18 +2239,10 @@ static void fn_1_8988(BssCData *arg0, omObjData *arg1) { arg0->unk00 = 1; } -static s32 lbl_1_data_634[8] = { - 0x00000123, - 0x00000163, - 0x000001A3, - 0x000001E3, - 0x00000223, - 0x00000263, - 0x000002A3, - 0x000002E3 -}; +static s32 lbl_1_data_634[8] = { 0x00000123, 0x00000163, 0x000001A3, 0x000001E3, 0x00000223, 0x00000263, 0x000002A3, 0x000002E3 }; -static void fn_1_8A50(BssCData *arg0, omObjData *arg1) { +static void fn_1_8A50(BssCData *arg0, omObjData *arg1) +{ if (lbl_1_data_633 == -1) { BoardCameraTargetPlayerSet(arg0->unk01); lbl_1_data_633 = arg0->unk01; @@ -2186,7 +2256,8 @@ static void fn_1_8A50(BssCData *arg0, omObjData *arg1) { omVibrate(arg0->unk01, 12, 4, 2); } -static void fn_1_8B6C(BssCData *arg0, omObjData *arg1) { +static void fn_1_8B6C(BssCData *arg0, omObjData *arg1) +{ ModelData *temp_r29; HsfObject *var_r30; Vec sp20; @@ -2233,7 +2304,8 @@ static void fn_1_8B6C(BssCData *arg0, omObjData *arg1) { BoardModelMotionTimeSet(lbl_1_bss_6AE, temp_f30); } -static void fn_1_8DDC(BssCData *arg0, omObjData *arg1) { +static void fn_1_8DDC(BssCData *arg0, omObjData *arg1) +{ ModelData *temp_r29; HsfObject *var_r30; Vec *var_r27; @@ -2262,17 +2334,19 @@ static void fn_1_8DDC(BssCData *arg0, omObjData *arg1) { var_r27 = &arg0->unk14; var_r26 = &sp30; BoardMTXCalcLookAt(sp54, var_r26, &sp48, var_r27); - PSMTXTranspose(sp54, arg0->unk20); - } else { + MTXTranspose(sp54, arg0->unk20); + } + else { if (sp24.z != 0.0f || sp24.x != 0.0f) { sp3C.y = atan2d(sp24.x, sp24.z); sp3C.x = -atan2d(sp24.y, VECMagXZ(&sp24)); - } else { + } + else { sp3C.x = sp3C.y = 0.0f; } - PSMTXRotRad(sp54, 'x', MTXDegToRad(sp3C.x)); - PSMTXRotRad(arg0->unk20, 'y', MTXDegToRad(sp3C.y)); - PSMTXConcat(arg0->unk20, sp54, arg0->unk20); + MTXRotRad(sp54, 'x', MTXDegToRad(sp3C.x)); + MTXRotRad(arg0->unk20, 'y', MTXDegToRad(sp3C.y)); + MTXConcat(arg0->unk20, sp54, arg0->unk20); } BoardPlayerPosSetV(arg0->unk01, &sp30); BoardPlayerRotSet(arg0->unk01, 0.0f, 0.0f, 0.0f); @@ -2284,13 +2358,14 @@ static void fn_1_8DDC(BssCData *arg0, omObjData *arg1) { } } -static void fn_1_918C(BssCData *arg0, omObjData *arg1) { +static void fn_1_918C(BssCData *arg0, omObjData *arg1) +{ Vec sp20; Vec sp14; Vec sp8; s32 var_r30; - PSMTXIdentity(arg0->unk20); + MTXIdentity(arg0->unk20); var_r30 = BoardSpaceLinkFlagSearch(0, arg0->unk06, 0x40); BoardSpacePosGet(0, var_r30, &sp20); BoardPlayerPosGet(arg0->unk01, &sp14); @@ -2301,7 +2376,8 @@ static void fn_1_918C(BssCData *arg0, omObjData *arg1) { arg0->unk00 = 5; } -static void fn_1_927C(BssCData *arg0, omObjData *arg1) { +static void fn_1_927C(BssCData *arg0, omObjData *arg1) +{ s32 temp_r3; if (!GWPlayer[arg0->unk01].moving) { @@ -2313,7 +2389,8 @@ static void fn_1_927C(BssCData *arg0, omObjData *arg1) { } } -static void fn_1_932C(BssCData *arg0) { +static void fn_1_932C(BssCData *arg0) +{ BoardSpace *temp_r30; BoardSpace *var_r26; Vec sp20[2]; @@ -2340,7 +2417,8 @@ static void fn_1_932C(BssCData *arg0) { } if (lbl_1_bss_0->unk00_field0 == 0) { BoardSpaceFlagPosGet(0, 0x1000, &sp14); - } else { + } + else { BoardSpaceFlagPosGet(0, 0x2000, &sp14); } for (i = 0; i < 2; i++) { @@ -2348,12 +2426,14 @@ static void fn_1_932C(BssCData *arg0) { } if (spC[0] < spC[1]) { arg0->unk06 = sp8[0]; - } else { + } + else { arg0->unk06 = sp8[1]; } } -static s32 fn_1_94A8(BssCData *arg0) { +static s32 fn_1_94A8(BssCData *arg0) +{ Vec sp14; s16 spC[4]; float sp8; @@ -2373,7 +2453,8 @@ static s32 fn_1_94A8(BssCData *arg0) { var_r31 = BoardSpaceGet(1, var_r30); if (lbl_1_bss_0->unk00_field0 == 0) { var_r29 = var_r31->link[0]; - } else { + } + else { BoardSpaceLinkTargetListGet(1, var_r30, spC); var_r29 = spC[0]; } @@ -2389,7 +2470,8 @@ static s32 fn_1_94A8(BssCData *arg0) { if (var_r28) { var_r31 = var_r28; break; - } else { + } + else { var_r28 = var_r31; } } @@ -2398,12 +2480,14 @@ static s32 fn_1_94A8(BssCData *arg0) { } if (var_r31->flag & 8) { return 1; - } else { + } + else { return 0; } } -static void fn_1_95F4(BssCData *arg0) { +static void fn_1_95F4(BssCData *arg0) +{ HsfObject *var_r30; ModelData *temp_r29; Vec sp2C; @@ -2418,7 +2502,8 @@ static void fn_1_95F4(BssCData *arg0) { if (lbl_1_bss_0->unk00_field0 == 0) { BoardModelMotionTimeSet(arg0->unk04, temp_f30); BoardModelMotionSpeedSet(arg0->unk04, -0.18f); - } else { + } + else { BoardModelMotionTimeSet(arg0->unk04, 0.0f); BoardModelMotionSpeedSet(arg0->unk04, 0.18f); } @@ -2448,7 +2533,8 @@ static void fn_1_95F4(BssCData *arg0) { arg0->unk10 = var_f31; } -static void fn_1_97F4(void) { +static void fn_1_97F4(void) +{ Bss20Work *temp_r30; Bss20Data *var_r31; s32 i; @@ -2468,13 +2554,15 @@ static void fn_1_97F4(void) { } } -static void fn_1_98EC(void) { +static void fn_1_98EC(void) +{ if (lbl_1_bss_20) { OM_GET_WORK_PTR(lbl_1_bss_20, Bss20Work)->unk00_field0 = 1; } } -static void fn_1_9920(omObjData *arg0) { +static void fn_1_9920(omObjData *arg0) +{ Bss20Work *temp_r31; s32 i; @@ -2493,25 +2581,28 @@ static void fn_1_9920(omObjData *arg0) { } if (temp_r31->unk01 != 0) { temp_r31->unk01--; - } else { + } + else { temp_r31->unk01 = 2; fn_1_9A24(temp_r31); } fn_1_9BBC(temp_r31); } -static void fn_1_9A24(Bss20Work *arg0) { +static void fn_1_9A24(Bss20Work *arg0) +{ Bss20Data *temp_r31; Mtx sp8; s32 i; s32 j; if (lbl_1_bss_6B1 != 0) { - PSMTXTrans(sp8, 0.0f, 50.0f, -100.0f); - } else { - PSMTXTrans(sp8, 0.0f, 70.0f, -100.0f); + MTXTrans(sp8, 0.0f, 50.0f, -100.0f); } - PSMTXConcat(lbl_1_bss_678, sp8, sp8); + else { + MTXTrans(sp8, 0.0f, 70.0f, -100.0f); + } + MTXConcat(lbl_1_bss_678, sp8, sp8); for (i = 0; i < 4; i++) { for (j = 0; j < 20; j++) { temp_r31 = &arg0->unk04[j]; @@ -2532,7 +2623,8 @@ static void fn_1_9A24(Bss20Work *arg0) { } } -static void fn_1_9BBC(Bss20Work *arg0) { +static void fn_1_9BBC(Bss20Work *arg0) +{ Bss20Data *temp_r31; s32 i; @@ -2545,7 +2637,8 @@ static void fn_1_9BBC(Bss20Work *arg0) { if (temp_r31->unk00 == 0) { temp_r31->unk00 = -1; BoardModelVisibilitySet(temp_r31->unk02, 0); - } else { + } + else { if (temp_r31->unk00 <= 3) { temp_r31->unk04 = sind(30.0f * temp_r31->unk00); } diff --git a/src/REL/w03Dll/condor.c b/src/REL/w03Dll/condor.c index 4c8327dd..c42f53b3 100644 --- a/src/REL/w03Dll/condor.c +++ b/src/REL/w03Dll/condor.c @@ -482,7 +482,7 @@ void fn_1_3F5C(s32 arg0) BoardModelMotionStart(lbl_1_data_310, 2, 0x40000001); BoardModelMotionStart(lbl_1_data_310, 1, 0x40000001); BoardModelRotYSet(lbl_1_data_310, 0.0f); - PSMTXIdentity(sp38); + MTXIdentity(sp38); BoardModelMtxSet(lbl_1_data_310, &sp38); sp20.x = 0.0f; @@ -624,13 +624,13 @@ void fn_1_4424(w03StructUnk2 *arg0) sp30 = sp48; sp18 = sp54; BoardMTXCalcLookAt(spA8, &sp18, &sp24, &sp30); - PSMTXTranspose(spA8, spA8); + MTXTranspose(spA8, spA8); MTXRotDeg(spD8, 'z', temp_f30); - PSMTXTrans(sp108, 0.0f, -350.0f, 0.0f); - PSMTXConcat(spD8, sp108, sp108); - PSMTXConcat(spA8, sp108, sp108); - PSMTXTrans(sp78, sp54.x, sp54.y, sp54.z); - PSMTXConcat(sp78, sp108, sp78); + MTXTrans(sp108, 0.0f, -350.0f, 0.0f); + MTXConcat(spD8, sp108, sp108); + MTXConcat(spA8, sp108, sp108); + MTXTrans(sp78, sp54.x, sp54.y, sp54.z); + MTXConcat(sp78, sp108, sp78); Hu3DMtxTransGet(sp78, &temp_r27->unk_08); BoardModelPosSetV(temp_r27->model, &temp_r27->unk_08); BoardModelVisibilitySet(temp_r27->model, 1); @@ -1078,16 +1078,16 @@ void fn_1_5C5C(omObjData *arg0, w03UnkStruct5 *arg1) sp20.y = 1.0f; BoardMTXCalcLookAt(sp110, &sp14, &sp20, &sp8); - PSMTXTranspose(sp110, sp110); + MTXTranspose(sp110, sp110); MTXRotDeg(spE0, 'z', -arg1->unk_04); - PSMTXTrans(sp50, 0.0f, -600.0f, 0.0f); - PSMTXConcat(spE0, sp50, sp50); - PSMTXConcat(sp110, sp50, sp50); - PSMTXTrans(sp80, sp44.x, sp44.y, sp44.z); - PSMTXConcat(sp80, sp50, sp80); + MTXTrans(sp50, 0.0f, -600.0f, 0.0f); + MTXConcat(spE0, sp50, sp50); + MTXConcat(sp110, sp50, sp50); + MTXTrans(sp80, sp44.x, sp44.y, sp44.z); + MTXConcat(sp80, sp50, sp80); Hu3DMtxTransGet(sp80, &sp44); MTXRotDeg(spB0, 'y', atan2d(-sp2C.x, -sp2C.z)); - PSMTXConcat(spB0, spE0, sp110); + MTXConcat(spB0, spE0, sp110); BoardModelMtxSet(lbl_1_data_310, &sp110); BoardModelPosSetV(lbl_1_data_310, &sp44); BoardCameraRotSet(-20.0f, atan2d(sp2C.x, sp2C.z)); diff --git a/src/REL/w03Dll/mg_item.c b/src/REL/w03Dll/mg_item.c index 18332aa2..a7d31165 100644 --- a/src/REL/w03Dll/mg_item.c +++ b/src/REL/w03Dll/mg_item.c @@ -742,12 +742,12 @@ void fn_1_B0A4(s32 arg0) } if (temp_r29 == 5) { - PSMTXTrans(sp18, 0.0f, -50.0f, 0.0f); + MTXTrans(sp18, 0.0f, -50.0f, 0.0f); BoardModelMtxSet(temp_r30->unk_06[i], &sp18); } if ((temp_r29 == 6) || (temp_r29 == 7)) { - PSMTXTrans(sp18, 0.0f, 0.0f, 8.0f); + MTXTrans(sp18, 0.0f, 0.0f, 8.0f); BoardModelMtxSet(temp_r30->unk_06[i], &sp18); } } diff --git a/src/REL/w03Dll/statue.c b/src/REL/w03Dll/statue.c index de10197b..a31fc5a8 100644 --- a/src/REL/w03Dll/statue.c +++ b/src/REL/w03Dll/statue.c @@ -1,17 +1,18 @@ -#include "dolphin.h" #include "REL/executor.h" -#include "game/process.h" -#include "game/data.h" -#include "game/gamework_data.h" #include "REL/w03Dll.h" +#include "dolphin.h" #include "game/audio.h" +#include "game/board/main.h" #include "game/board/model.h" #include "game/board/player.h" #include "game/board/space.h" #include "game/board/ui.h" +#include "game/data.h" +#include "game/gamework_data.h" #include "game/hsfman.h" -#include "game/board/main.h" #include "game/objsub.h" +#include "game/process.h" + #include "ext_math.h" @@ -29,17 +30,16 @@ void fn_1_2818(void); void fn_1_2A40(void); void fn_1_2B44(void); -//data +// data s16 lbl_1_data_280 = -1; s16 lbl_1_data_282 = -1; s16 lbl_1_data_284 = -1; s16 lbl_1_data_286 = -1; s32 lbl_1_data_288 = -1; -//BSS Extern +// BSS Extern - -//BSS +// BSS s8 lbl_1_bss_6F; s8 lbl_1_bss_6E; s16 lbl_1_bss_6C; @@ -48,12 +48,13 @@ s16 lbl_1_bss_68; GXTexObj lbl_1_bss_48; char lbl_1_bss_44[4]; char lbl_1_bss_38[12]; -void* lbl_1_bss_34; +void *lbl_1_bss_34; f32 lbl_1_bss_30; s8 lbl_1_bss_2C; -Process* lbl_1_bss_28; +Process *lbl_1_bss_28; -void fn_1_12C8(void) { +void fn_1_12C8(void) +{ BoardRollDispSet(0); lbl_1_bss_28 = HuPrcChildCreate(&fn_1_1358, 0x2003, 0x2000, 0, boardMainProc); HuPrcDestructorSet2(lbl_1_bss_28, &fn_1_152C); @@ -65,7 +66,8 @@ void fn_1_12C8(void) { BoardRollDispSet(1); } -void fn_1_1358(void) { +void fn_1_1358(void) +{ s32 cur_player_index; s32 unkC; @@ -76,7 +78,8 @@ void fn_1_1358(void) { if ((BoardSpaceFlagGet(0, GWPlayer[cur_player_index].space_curr) & 0x2000)) { lbl_1_bss_6E = 0; lbl_1_bss_6C = lbl_1_bss_C[3]; - } else { + } + else { lbl_1_bss_6E = 1; lbl_1_bss_6C = lbl_1_bss_C[4]; } @@ -84,7 +87,8 @@ void fn_1_1358(void) { if (fn_1_1650(cur_player_index) != 0) { if (fn_1_1D1C() != 0) { fn_1_1ED4(cur_player_index); - } else { + } + else { fn_1_20E0(cur_player_index); } if (lbl_1_bss_2C) { @@ -106,7 +110,8 @@ void fn_1_1358(void) { HuPrcEnd(); } -void fn_1_152C(void) { +void fn_1_152C(void) +{ BoardConfettiKill(); if (lbl_1_data_282 != -1) { @@ -123,7 +128,8 @@ void fn_1_152C(void) { lbl_1_bss_28 = NULL; } -s32 fn_1_15E8(void) { +s32 fn_1_15E8(void) +{ BoardModelVisibilitySet(lbl_1_bss_6C, 1); if (lbl_1_data_284 != -1) { @@ -134,7 +140,8 @@ s32 fn_1_15E8(void) { return 1; } -s32 fn_1_1650(s32 arg0) { +s32 fn_1_1650(s32 arg0) +{ Point3d sp38; Point3d sp2C; Point3d sp20; @@ -144,14 +151,14 @@ s32 fn_1_1650(s32 arg0) { s32 temp2; BoardPlayerIdleSet(arg0); - + if (lbl_1_bss_0->unk2) { BoardWinCreate(0, MAKE_MESSID(22, 0), -1); BoardWinWait(); BoardWinKill(); return 0; } - + temp2 = BoardSpaceLinkFlagSearch(0, GWPlayer[arg0].space_curr, 0x02000000); BoardSpacePosGet(0, temp2, &sp38); BoardPlayerPosGet(arg0, &sp2C); @@ -170,14 +177,14 @@ s32 fn_1_1650(s32 arg0) { while (GWPlayer[arg0].moving) { HuPrcVSleep(); } - + BoardStatusShowSetAll(0); BoardPlayerMotBlendSet(arg0, 0xB4, 0xF); while (BoardPlayerMotBlendCheck(arg0) == 0) { HuPrcVSleep(); } - + BoardPlayerIdleSet(arg0); BoardWinCreate(2, MAKE_MESSID(22, 1), 2); BoardWinWait(); @@ -187,7 +194,8 @@ s32 fn_1_1650(s32 arg0) { if (GWPlayer[arg0].com) { if (BoardRandMod(0x64) > 0x32U) { BoardComKeySetLeft(); - } else { + } + else { BoardComKeySetRight(); } } @@ -200,56 +208,35 @@ s32 fn_1_1650(s32 arg0) { BoardMusStart(1, 0x19, 0x7F, 0); HuAudFXPlay(0x435); sp8.y = BoardModelRotYGet(lbl_1_bss_6C); - + while (BoardDAngleCalcRange(&sp8.y, 180.0f, 2.0f) == 0) { BoardModelRotYSet(lbl_1_bss_6C, sp8.y); HuPrcVSleep(); } - + HuAudFXPlay(0x445); BoardModelRotYSet(lbl_1_bss_6C, 180.0f); - + while (BoardMusStatusGet(1) != 0) { HuPrcVSleep(); } return 1; } -s32 lbl_1_data_290[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 98), - DATA_MAKE_NUM(DATADIR_LUIGIMOT, 98), - DATA_MAKE_NUM(DATADIR_PEACHMOT, 98), - DATA_MAKE_NUM(DATADIR_YOSHIMOT, 98), - DATA_MAKE_NUM(DATADIR_WARIOMOT, 98), - DATA_MAKE_NUM(DATADIR_DONKEYMOT, 98), - DATA_MAKE_NUM(DATADIR_DAISYMOT, 98), - DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 98) -}; +s32 lbl_1_data_290[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 98), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 98), DATA_MAKE_NUM(DATADIR_PEACHMOT, 98), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 98), DATA_MAKE_NUM(DATADIR_WARIOMOT, 98), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 98), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 98), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 98) }; -s32 lbl_1_data_2B0[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 51), - DATA_MAKE_NUM(DATADIR_LUIGIMOT, 51), - DATA_MAKE_NUM(DATADIR_PEACHMOT, 51), - DATA_MAKE_NUM(DATADIR_YOSHIMOT, 51), - DATA_MAKE_NUM(DATADIR_WARIOMOT, 51), - DATA_MAKE_NUM(DATADIR_DONKEYMOT, 51), - DATA_MAKE_NUM(DATADIR_DAISYMOT, 51), - DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 51) -}; +s32 lbl_1_data_2B0[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 51), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 51), DATA_MAKE_NUM(DATADIR_PEACHMOT, 51), + DATA_MAKE_NUM(DATADIR_YOSHIMOT, 51), DATA_MAKE_NUM(DATADIR_WARIOMOT, 51), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 51), + DATA_MAKE_NUM(DATADIR_DAISYMOT, 51), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 51) }; -s32 lbl_1_data_2D0[] = { - 0x00000125, 0x00000165, 0x000001A5, - 0x000001E5, 0x00000225, 0x00000265, - 0x000002A5, 0x000002E5 -}; +s32 lbl_1_data_2D0[] = { 0x00000125, 0x00000165, 0x000001A5, 0x000001E5, 0x00000225, 0x00000265, 0x000002A5, 0x000002E5 }; -s32 lbl_1_data_2F0[] = { - 0x0000012E, 0x0000016E, 0x000001AE, - 0x000001EE, 0x0000022E, 0x0000026E, - 0x000002AE, 0x000002EE -}; +s32 lbl_1_data_2F0[] = { 0x0000012E, 0x0000016E, 0x000001AE, 0x000001EE, 0x0000022E, 0x0000026E, 0x000002AE, 0x000002EE }; -void fn_1_19DC(s32 arg0, s32 arg1) { +void fn_1_19DC(s32 arg0, s32 arg1) +{ s32 temp_r30; s32 temp_r5; s32 temp_r5_2; @@ -263,7 +250,8 @@ void fn_1_19DC(s32 arg0, s32 arg1) { lbl_1_bss_6A = 8; lbl_1_bss_68 = lbl_1_data_282; var_r29 = lbl_1_data_2F0[GWPlayer[arg0].character]; - } else { + } + else { lbl_1_bss_6A = 7; lbl_1_bss_68 = 1; var_r29 = lbl_1_data_2D0[GWPlayer[arg0].character]; @@ -284,11 +272,10 @@ void fn_1_19DC(s32 arg0, s32 arg1) { while (BoardPlayerMotionEndCheck(arg0) == 0) { HuPrcVSleep(); - } HuPrcSleep(60); - + if (arg1 != 0) { BoardPlayerMotionShiftSet(arg0, lbl_1_bss_68, 0.0f, 8.0f, HU3D_MOTATTR_NONE); HuPrcSleep(9); @@ -315,7 +302,8 @@ void fn_1_19DC(s32 arg0, s32 arg1) { } } -s32 fn_1_1D1C(void) { +s32 fn_1_1D1C(void) +{ s32 sp34; s32 sp30; s32 sp2C; @@ -330,11 +318,7 @@ s32 fn_1_1D1C(void) { s32 maxTurn; s32 sp8[3] = { 70, 50, 45 }; - s32 sp14[3][3] = { - {3, 5, 22}, - {5, 10, 35}, - {5, 15, 35} - }; + s32 sp14[3][3] = { { 3, 5, 22 }, { 5, 10, 35 }, { 5, 15, 35 } }; while (BoardMusStatusGet(1) != 0) { HuPrcVSleep(); @@ -352,23 +336,26 @@ s32 fn_1_1D1C(void) { } modRand = BoardRandMod(100); - if (modRand < sp8[var_r31] ) { + if (modRand < sp8[var_r31]) { return 1; } modRand2 = BoardRandMod(100 - sp8[var_r31]); if (modRand2 < sp14[var_r31][0]) { lbl_1_bss_2C = 3; - } else if (modRand2 < sp14[var_r31][1]) { + } + else if (modRand2 < sp14[var_r31][1]) { lbl_1_bss_2C = 2; - } else { + } + else { lbl_1_bss_2C = 1; } return 0; } -void fn_1_1ED4(s32 arg0) { +void fn_1_1ED4(s32 arg0) +{ Point3d spC; f32 sp8; @@ -383,12 +370,12 @@ void fn_1_1ED4(s32 arg0) { spC.y += 700.0f; BoardConfettiCreate(&spC, 0x64, 300.0f); sp8 = BoardModelRotYGet(lbl_1_bss_6C); - + while (BoardDAngleCalcRange(&sp8, 0.0f, 30.0f) == 0) { BoardModelRotYSet(lbl_1_data_284, sp8); HuPrcVSleep(); } - + omVibrate(arg0, 0xC, 4, 2); BoardMusStart(1, 0x1A, 0x7F, 0); BoardModelRotYSet(lbl_1_data_284, 0.0f); @@ -399,7 +386,7 @@ void fn_1_1ED4(s32 arg0) { } BoardPlayerIdleSet(arg0); - + while (BoardMusStatusGet(1) != 0) { HuPrcVSleep(); } @@ -411,7 +398,8 @@ void fn_1_1ED4(s32 arg0) { BoardConfettiStop(); } -void fn_1_20E0(s32 arg0) { +void fn_1_20E0(s32 arg0) +{ Point3d sp24; Point3d sp18; Point3d spC; @@ -436,28 +424,28 @@ void fn_1_20E0(s32 arg0) { omVibrate(arg0, 0xC, 4, 2); BoardModelRotYSet(lbl_1_data_284, 0.0f); BoardModelRotYSet(lbl_1_bss_6C, 0.0f); - + while (BoardFilterFadePauseCheck() == 0) { HuPrcVSleep(); } - + BoardMusStart(1, 0x1B, 0x7F, 0); HuAudFXPlay(0x44A); fn_1_2A40(); lbl_1_bss_30 = 0.0f; - + while (lbl_1_bss_30 < 128.0f) { HuPrcVSleep(); lbl_1_bss_30 += 12.0f; } - + if (lbl_1_bss_30 > 128.0f) { lbl_1_bss_30 = 128.0f; } HuPrcSleep(40); lbl_1_bss_30 = 128.0f; - + while (lbl_1_bss_30 > 0.0f) { HuPrcVSleep(); lbl_1_bss_30 -= 12.0f; @@ -475,13 +463,13 @@ void fn_1_20E0(s32 arg0) { BoardCameraMotionStartEx(-1, NULL, NULL, 1360.0f, -1.0f, 13); BoardCameraMotionWait(); } - + BoardPlayerIdleSet(arg0); while (BoardMusStatusGet(1) != 0) { HuPrcVSleep(); } - + BoardAudSeqPause(0, 0, 1000); BoardWinCreate(2, MAKE_MESSID(22, 5), 2); BoardWinWait(); @@ -504,16 +492,16 @@ void fn_1_20E0(s32 arg0) { for (var_f31 = 100.0f; var_f31 > 0.0f; var_f31 -= 2.0f) { BoardCameraQuakeSet(0xA, var_f31); - HuPrcVSleep(); + HuPrcVSleep(); } - + BoardCameraQuakeReset(); if (lbl_1_data_288 != 0) { HuAudFXStop(lbl_1_data_288); lbl_1_data_288 = -1; } - + fn_1_2818(); omVibrate(arg0, 0xC, 0xC, 0); HuAudFXPlay(0x438); @@ -530,7 +518,8 @@ void fn_1_20E0(s32 arg0) { HuPrcSleep(0x3C); } -void fn_1_26E0(s32 arg0) { +void fn_1_26E0(s32 arg0) +{ Point3d sp20; Point3d sp14; Point3d sp8; @@ -555,11 +544,12 @@ void fn_1_26E0(s32 arg0) { BoardPlayerIdleSet(arg0); } -void fn_1_2818(void) { +void fn_1_2818(void) +{ s16 temp_r29; s16 temp_r30; s16 j; - s16 sp8[3] = {0x0002, 0x003E, 0x007A}; + s16 sp8[3] = { 0x0002, 0x003E, 0x007A }; temp_r29 = (4 - lbl_1_bss_2C) * 60; BoardModelMotionStart(lbl_1_bss_C[1], 0, 0); @@ -570,19 +560,21 @@ void fn_1_2818(void) { for (j = 0; j < ARRAY_COUNT(sp8); j++) { if (temp_r30 == sp8[j]) { HuAudFXPlay(0x446); - } + } } HuPrcVSleep(); - } else { + } + else { break; - } + } } BoardModelAttrSet(lbl_1_bss_C[1], 0x40000002); HuPrcSleep(0x3C); } -s32 fn_1_2930(s32 arg0) { +s32 fn_1_2930(s32 arg0) +{ lbl_1_bss_0->unk0--; if (lbl_1_bss_0->unk0 <= 0) { @@ -605,14 +597,16 @@ s32 fn_1_2930(s32 arg0) { return 0; } -void fn_1_2A40(void) { +void fn_1_2A40(void) +{ lbl_1_bss_30 = 0.0f; lbl_1_bss_34 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x96000, MEMORY_DEFAULT_NUM); - lbl_1_data_286 = Hu3DHookFuncCreate((void*)&fn_1_2B44); + lbl_1_data_286 = Hu3DHookFuncCreate((void *)&fn_1_2B44); Hu3DModelLayerSet(lbl_1_data_286, 3); } -void fn_1_2AC0(void) { +void fn_1_2AC0(void) +{ if (lbl_1_bss_34) { HuMemDirectFree(lbl_1_bss_34); lbl_1_bss_34 = NULL; @@ -624,15 +618,16 @@ void fn_1_2AC0(void) { } } -void fn_1_2B44(void) { +void fn_1_2B44(void) +{ Mtx44 sp50; Mtx sp20; GXColor sp14; GXColor sp10; GXColor spC; u8 sp8; - GXColor sp1C = {0xFF, 0xFF, 0xFF, 0xFF}; - GXColor sp18 = {0xFF, 0xFF, 0xFF, 0xFF}; + GXColor sp1C = { 0xFF, 0xFF, 0xFF, 0xFF }; + GXColor sp18 = { 0xFF, 0xFF, 0xFF, 0xFF }; f32 temp_f28 = 0.0f; f32 temp_f30 = 640.0f; @@ -644,7 +639,7 @@ void fn_1_2B44(void) { GXLoadTexObj(&lbl_1_bss_48, GX_TEXMAP0); C_MTXOrtho(sp50, temp_f27, temp_f29, temp_f28, temp_f30, 0.0f, 10.0f); GXSetProjection(sp50, GX_ORTHOGRAPHIC); - PSMTXIdentity(sp20); + MTXIdentity(sp20); GXLoadPosMtxImm(sp20, 0); GXSetCurrentMtx(0); GXSetViewport(0.0f, 0.0f, temp_f30, 1.0f + temp_f29, 0.0f, 1.0f); diff --git a/src/REL/w06Dll/mg_item.c b/src/REL/w06Dll/mg_item.c index 0c83a033..6313eb6d 100755 --- a/src/REL/w06Dll/mg_item.c +++ b/src/REL/w06Dll/mg_item.c @@ -1,6 +1,15 @@ #include "REL/w06Dll.h" #include "game/audio.h" +#include "game/board/audio.h" +#include "game/board/com.h" +#include "game/board/main.h" +#include "game/board/model.h" +#include "game/board/player.h" +#include "game/board/space.h" +#include "game/board/ui.h" +#include "game/board/window.h" #include "game/data.h" +#include "game/frand.h" #include "game/gamework_data.h" #include "game/hsfanim.h" #include "game/hsfman.h" @@ -10,15 +19,7 @@ #include "game/process.h" #include "game/sprite.h" #include "game/window.h" -#include "game/frand.h" -#include "game/board/audio.h" -#include "game/board/com.h" -#include "game/board/main.h" -#include "game/board/model.h" -#include "game/board/player.h" -#include "game/board/space.h" -#include "game/board/ui.h" -#include "game/board/window.h" + #include "dolphin.h" #include "ext_math.h" @@ -132,7 +133,8 @@ static s8 lbl_1_data_1AD[3] = { 0, 0, 0 }; static s16 lbl_1_data_1B0 = -1; static omObjData *lbl_1_data_1B4[3] = { NULL, NULL, NULL }; -void fn_1_D70(void) { +void fn_1_D70(void) +{ Vec sp20; Vec sp14; Vec sp8; @@ -157,7 +159,8 @@ void fn_1_D70(void) { } } -void fn_1_F6C(void) { +void fn_1_F6C(void) +{ s32 i; for (i = 0; i < 3; i++) { @@ -173,7 +176,8 @@ void fn_1_F6C(void) { } } -void fn_1_1054(void) { +void fn_1_1054(void) +{ BoardRollDispSet(0); lbl_1_bss_18 = HuPrcChildCreate(fn_1_1148, 0x2003, 0x3800, 0, boardMainProc); HuPrcDestructorSet2(lbl_1_bss_18, fn_1_10E4); @@ -183,7 +187,8 @@ void fn_1_1054(void) { BoardRollDispSet(1); } -static void fn_1_10E4(void) { +static void fn_1_10E4(void) +{ fn_1_43DC(); if (lbl_1_data_1A8 != -1) { HuWinKill(lbl_1_data_1A8); @@ -192,7 +197,8 @@ static void fn_1_10E4(void) { lbl_1_bss_18 = NULL; } -static void fn_1_1148(void) { +static void fn_1_1148(void) +{ s32 temp_r3; s32 temp_r31; @@ -205,7 +211,8 @@ static void fn_1_1148(void) { HuPrcEnd(); } -static void fn_1_11B0(void) { +static void fn_1_11B0(void) +{ float sp8[2]; float var_f31; float var_f30; @@ -219,7 +226,8 @@ static void fn_1_11B0(void) { HuWinMesSet(lbl_1_data_1A8, MAKE_MESSID(48, 25)); } -static s32 fn_1_12A0(s32 arg0) { +static s32 fn_1_12A0(s32 arg0) +{ Vec sp38; Vec sp2C; Vec sp20; @@ -285,7 +293,8 @@ static s32 fn_1_12A0(s32 arg0) { return 1; } -static void fn_1_15CC(s32 arg0) { +static void fn_1_15CC(s32 arg0) +{ s8 sp8[] = { 80, 50 }; s32 var_r28; s16 temp_r26; @@ -343,7 +352,8 @@ static void fn_1_15CC(s32 arg0) { BoardWinCreate(2, MAKE_MESSID(48, 41), 6); BoardWinWait(); BoardWinKill(); - } else { + } + else { for (var_r31 = 0; var_r31 < 3; var_r31++) { if (lbl_1_bss_30[var_r31] == 0) { lbl_1_bss_33 = var_r31; @@ -400,7 +410,8 @@ static void fn_1_15CC(s32 arg0) { } } -static void fn_1_1BE0(s32 arg0, s32 arg1) { +static void fn_1_1BE0(s32 arg0, s32 arg1) +{ Vec sp18; Vec spC; s16 temp_r30; @@ -420,7 +431,8 @@ static void fn_1_1BE0(s32 arg0, s32 arg1) { fn_1_2048(-1, 4); } -static void fn_1_1CB0(s32 arg0) { +static void fn_1_1CB0(s32 arg0) +{ while (!BoardModelMotionEndCheck(lbl_1_bss_3C[arg0])) { HuPrcVSleep(); } @@ -430,7 +442,8 @@ static void fn_1_1CB0(s32 arg0) { } } -static void fn_1_1D5C(s32 arg0) { +static void fn_1_1D5C(s32 arg0) +{ s8 spC[] = { 0x20, 0x40, 0x60 }; s16 sp10[] = { -100, 0, 100 }; s32 sp8; @@ -442,7 +455,8 @@ static void fn_1_1D5C(s32 arg0) { } } -static void fn_1_1E30(s32 arg0) { +static void fn_1_1E30(s32 arg0) +{ s8 spC[] = { 0x20, 0x40, 0x60 }; s16 sp10[] = { -100, 0, 100 }; s32 sp8; @@ -454,7 +468,8 @@ static void fn_1_1E30(s32 arg0) { } } -static void fn_1_1F08(s32 arg0) { +static void fn_1_1F08(s32 arg0) +{ s32 i; s32 j; @@ -477,7 +492,8 @@ static void fn_1_1F08(s32 arg0) { } } -static void fn_1_2048(s32 arg0, s32 arg1) { +static void fn_1_2048(s32 arg0, s32 arg1) +{ Data1B4Work *temp_r30; s32 i; @@ -490,7 +506,8 @@ static void fn_1_2048(s32 arg0, s32 arg1) { } } -static void fn_1_20CC(s32 arg0) { +static void fn_1_20CC(s32 arg0) +{ Data1B4Work *temp_r30; s32 i; @@ -504,7 +521,8 @@ static void fn_1_20CC(s32 arg0) { } } -static s32 fn_1_2174(s32 arg0) { +static s32 fn_1_2174(s32 arg0) +{ Data1B4Work *temp_r31; if (!lbl_1_data_1B4[arg0]) { @@ -514,7 +532,8 @@ static s32 fn_1_2174(s32 arg0) { return temp_r31->unk02; } -static s16 fn_1_21CC(s32 arg0) { +static s16 fn_1_21CC(s32 arg0) +{ Data1B4Work *temp_r31; if (!lbl_1_data_1B4[arg0]) { @@ -524,7 +543,8 @@ static s16 fn_1_21CC(s32 arg0) { return temp_r31->unk06; } -static void fn_1_2220(s32 arg0, s32 arg1, s32 arg2) { +static void fn_1_2220(s32 arg0, s32 arg1, s32 arg2) +{ Mtx sp18; Vec spC; omObjData *temp_r3; @@ -555,7 +575,7 @@ static void fn_1_2220(s32 arg0, s32 arg1, s32 arg2) { temp_r3->rot.y = 0.0f; temp_r3->rot.z = 0.0f; if (arg2 == 5) { - PSMTXTrans(sp18, 0.0f, -50.0f, 0.0f); + MTXTrans(sp18, 0.0f, -50.0f, 0.0f); BoardModelMtxSet(temp_r31->unk06, &sp18); } BoardModelPosSet(temp_r31->unk06, temp_r3->trans.x, temp_r3->trans.y, temp_r3->trans.z); @@ -563,7 +583,8 @@ static void fn_1_2220(s32 arg0, s32 arg1, s32 arg2) { BoardModelLayerSet(temp_r31->unk06, 2); } -static void fn_1_243C(omObjData *arg0) { +static void fn_1_243C(omObjData *arg0) +{ Vec sp14; Vec sp8; Data1B4Work *temp_r31; @@ -592,7 +613,8 @@ static void fn_1_243C(omObjData *arg0) { sp8.y += 200.0f; arg0->trans.y = (sp8.y - sp14.y) / 30.0f; arg0->rot.z = 0.01f; - } else { + } + else { arg0->rot.z += 0.033333335f; if (arg0->rot.z > 1.0f) { arg0->rot.z = 1.0f; @@ -617,7 +639,8 @@ static void fn_1_243C(omObjData *arg0) { BoardModelPosGet(lbl_1_bss_3C[temp_r31->unk00_field2], &sp8); arg0->trans.y = (sp8.y - sp14.y) / 30.0f; arg0->rot.z = 1.0f; - } else { + } + else { arg0->rot.z -= 0.033333335f; if (arg0->rot.z < 0.001f) { arg0->rot.z = 0.001f; @@ -644,11 +667,13 @@ static void fn_1_243C(omObjData *arg0) { BoardPlayerPosGet(temp_r31->unk00_field1, &sp8); arg0->rot.x = (sp8.x - sp14.x) / 30.0f; arg0->rot.z = (sp8.z - sp14.z) / 30.0f; - } else if (temp_r31->unk08 < 30) { + } + else if (temp_r31->unk08 < 30) { sp14.x += arg0->rot.x; sp14.z += arg0->rot.z; BoardModelPosSetV(temp_r31->unk06, &sp14); - } else { + } + else { BoardPlayerPosGet(temp_r31->unk00_field1, &sp8); arg0->trans.x = sp8.x; arg0->trans.y = sp8.y; @@ -669,13 +694,10 @@ static void fn_1_243C(omObjData *arg0) { } } -static s8 lbl_1_data_1C5[14] = { - 1, 1, 3, 3, 2, - 2, 2, 1, 2, 3, - 0, 4, 5, 0 -}; +static s8 lbl_1_data_1C5[14] = { 1, 1, 3, 3, 2, 2, 2, 1, 2, 3, 0, 4, 5, 0 }; -static s32 fn_1_2A1C(s32 arg0) { +static s32 fn_1_2A1C(s32 arg0) +{ s32 var_r29; s32 var_r28; s32 var_r30; @@ -696,24 +718,30 @@ static s32 fn_1_2A1C(s32 arg0) { if (var_r29 > var_r28) { if (var_r29 > var_r30) { var_r31 = 0; - } else if (var_r30 > var_r28) { + } + else if (var_r30 > var_r28) { var_r31 = 2; - } else { + } + else { var_r31 = 1; } - } else { + } + else { if (var_r28 > var_r30) { var_r31 = 1; - } else if (var_r30 > var_r29) { + } + else if (var_r30 > var_r29) { var_r31 = 2; - } else { + } + else { var_r31 = 0; } } return var_r31; } -static void fn_1_2B60(s32 arg0) { +static void fn_1_2B60(s32 arg0) +{ omObjData *temp_r3; Bss24Work *temp_r31; @@ -728,7 +756,8 @@ static void fn_1_2B60(s32 arg0) { temp_r31->unk02 = 1; } -static void fn_1_2C18(void) { +static void fn_1_2C18(void) +{ Bss24Work *var_r27; if (lbl_1_bss_24) { @@ -737,7 +766,8 @@ static void fn_1_2C18(void) { } } -static void fn_1_2D90(s32 arg0) { +static void fn_1_2D90(s32 arg0) +{ Bss24Work *var_r31; if (lbl_1_bss_24) { @@ -746,7 +776,8 @@ static void fn_1_2D90(s32 arg0) { } } -static s32 fn_1_2DD0(void) { +static s32 fn_1_2DD0(void) +{ Bss24Work *var_r31; if (!lbl_1_bss_24) { @@ -756,7 +787,8 @@ static s32 fn_1_2DD0(void) { return var_r31->unk01; } -static u32 fn_1_2E18(Bss24Work *arg0) { +static u32 fn_1_2E18(Bss24Work *arg0) +{ s32 temp_r31; s32 var_r30; @@ -774,7 +806,8 @@ static u32 fn_1_2E18(Bss24Work *arg0) { return var_r30; } -static void fn_1_2EF4(omObjData *arg0) { +static void fn_1_2EF4(omObjData *arg0) +{ Vec sp14; Vec sp8; float var_f30; @@ -794,12 +827,14 @@ static void fn_1_2EF4(omObjData *arg0) { } if (lbl_1_bss_30[0] != 0) { var_r25 = 1; - } else { + } + else { var_r25 = 0; } if (lbl_1_bss_30[2] != 0) { var_r26 = 1; - } else { + } + else { var_r26 = 2; } switch (temp_r30->unk01) { @@ -820,13 +855,16 @@ static void fn_1_2EF4(omObjData *arg0) { if (lbl_1_bss_30[0] == 0 && lbl_1_bss_30[1] == 0) { if (BoardRandMod(100) < 50) { var_r29 = 1; - } else { + } + else { var_r29 = 2; } - } else { + } + else { if (lbl_1_bss_30[0] == 0) { var_r29 = 2; - } else if (lbl_1_bss_30[1] == 0) { + } + else if (lbl_1_bss_30[1] == 0) { var_r29 = 1; } } @@ -884,7 +922,8 @@ static void fn_1_2EF4(omObjData *arg0) { } } -static void fn_1_3470(void) { +static void fn_1_3470(void) +{ omObjData *temp_r3; Bss28Work *temp_r31; @@ -901,7 +940,8 @@ static void fn_1_3470(void) { temp_r31->unk0A = BoardModelMotionCreate(lbl_1_bss_C[4], DATA_MAKE_NUM(DATADIR_W06, 23)); } -static void fn_1_3560(s32 arg0) { +static void fn_1_3560(s32 arg0) +{ Bss28Work *temp_r31; if (!lbl_1_bss_28) { @@ -910,13 +950,15 @@ static void fn_1_3560(s32 arg0) { temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_28, Bss28Work); temp_r31->unk00_field1 = arg0; if (arg0 != 1) { - (void) 0; - } else { + (void)0; + } + else { temp_r31->unk06 = 20; } } -static s32 fn_1_35BC(void) { +static s32 fn_1_35BC(void) +{ Bss28Work *temp_r31; if (!lbl_1_bss_28) { @@ -926,7 +968,8 @@ static s32 fn_1_35BC(void) { return temp_r31->unk00_field1; } -static void fn_1_3604(s32 arg0) { +static void fn_1_3604(s32 arg0) +{ Bss28Work *temp_r31; if (!lbl_1_bss_28) { @@ -949,7 +992,8 @@ static void fn_1_3604(s32 arg0) { } } -static void fn_1_3698(s8 arg0) { +static void fn_1_3698(s8 arg0) +{ Vec sp24; Vec sp18; Vec spC; @@ -976,7 +1020,8 @@ static void fn_1_3698(s8 arg0) { if (ABS(temp_f31) >= 300.0f) { var_f30 = 40.0f; temp_r31->unk06 *= 2; - } else { + } + else { var_f30 = 20.0f; } VECSubtract(&sp18, &sp24, &spC); @@ -986,7 +1031,8 @@ static void fn_1_3698(s8 arg0) { BoardModelMotionSpeedSet(lbl_1_bss_C[4], 2.0f); } -static void fn_1_3974(omObjData *arg0) { +static void fn_1_3974(omObjData *arg0) +{ Vec sp30; Vec sp24; s32 sp8; @@ -1012,7 +1058,8 @@ static void fn_1_3974(omObjData *arg0) { fn_1_3560(4); return; } - } else { + } + else { temp_r31->unk03++; } fn_1_3560(1); @@ -1062,7 +1109,8 @@ static void fn_1_3974(omObjData *arg0) { } } -static void fn_1_4070(void) { +static void fn_1_4070(void) +{ Bss2CWork *temp_r31; lbl_1_bss_1C = 0; @@ -1074,7 +1122,8 @@ static void fn_1_4070(void) { temp_r31->unk04 = MGSeqTimerCreateXY(temp_r31->unk01, 288, 64); } -static void fn_1_4124(void) { +static void fn_1_4124(void) +{ Bss2CWork *temp_r31; if (!lbl_1_bss_2C) { @@ -1086,7 +1135,8 @@ static void fn_1_4124(void) { temp_r31->unk00_field0 = 1; } -static void fn_1_4194(omObjData *arg0) { +static void fn_1_4194(omObjData *arg0) +{ Bss2CWork *temp_r31; temp_r31 = OM_GET_WORK_PTR(arg0, Bss2CWork); @@ -1107,7 +1157,8 @@ static void fn_1_4194(omObjData *arg0) { } if (temp_r31->unk01 != 0) { temp_r31->unk01--; - } else { + } + else { MGSeqParamSet(temp_r31->unk04, 2, -1); temp_r31->unk04 = -1; lbl_1_bss_1C = 1; @@ -1117,7 +1168,8 @@ static void fn_1_4194(omObjData *arg0) { temp_r31->unk02 = 60; } -static void fn_1_42AC(s16 arg0) { +static void fn_1_42AC(s16 arg0) +{ ParticleData *var_r31; lbl_1_bss_20 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 0)); @@ -1132,7 +1184,8 @@ static void fn_1_42AC(s16 arg0) { var_r31->unk_02 = arg0; } -static void fn_1_43DC(void) { +static void fn_1_43DC(void) +{ if (lbl_1_data_1B0 != -1) { Hu3DModelKill(lbl_1_data_1B0); lbl_1_data_1B0 = -1; @@ -1143,7 +1196,8 @@ static void fn_1_43DC(void) { } } -static void fn_1_4460(ModelData *model, ParticleData *particle, Mtx matrix) { +static void fn_1_4460(ModelData *model, ParticleData *particle, Mtx matrix) +{ HsfanimStruct01 *var_r31; Vec sp8; float var_f31; diff --git a/src/REL/ztardll/main.c b/src/REL/ztardll/main.c index e1e91168..0d20bade 100644 --- a/src/REL/ztardll/main.c +++ b/src/REL/ztardll/main.c @@ -1515,10 +1515,10 @@ void fn_1_7414(ModelData *model, Mtx matrix) GXInitTexObj(&spC, Hu3DShadowData.unk_04, Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, 1, GX_CLAMP, GX_CLAMP, GX_FALSE); GXInitTexObjLOD(&spC, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); GXLoadTexObj(&spC, GX_TEXMAP0); - PSMTXInverse(Hu3DCameraMtx, sp5C); - PSMTXConcat(sp5C, matrix, sp8C); - PSMTXConcat(Hu3DShadowData.unk_68, Hu3DShadowData.unk_38, sp2C); - PSMTXConcat(sp2C, sp8C, sp8C); + MTXInverse(Hu3DCameraMtx, sp5C); + MTXConcat(sp5C, matrix, sp8C); + MTXConcat(Hu3DShadowData.unk_68, Hu3DShadowData.unk_38, sp2C); + MTXConcat(sp2C, sp8C, sp8C); GXLoadTexMtxImm(sp8C, 0x39, GX_MTX3x4); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 0x39, GX_FALSE, 0x7D); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); From 6406dde2ccca48b3581955867351cf62e9f0e6c4 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sun, 19 Jan 2025 07:40:22 -0800 Subject: [PATCH 130/178] Matched mstory3Dll (US) (#538) --- config/GMPE01_00/rels/mstory3Dll/symbols.txt | 600 ++-- configure.py | 8 +- include/REL/mstory3Dll.h | 99 + include/game/gamework.h | 6 +- include/game/gamework_data.h | 5 + src/REL/mstory3Dll/main.c | 1044 +++++++ src/REL/mstory3Dll/result.c | 1617 ++++++++++ src/REL/mstory3Dll/result_seq.c | 2928 ++++++++++++++++++ src/REL/mstory3Dll/win_effect.c | 322 ++ src/game/gamework.c | 6 +- 10 files changed, 6325 insertions(+), 310 deletions(-) create mode 100755 include/REL/mstory3Dll.h create mode 100755 src/REL/mstory3Dll/main.c create mode 100755 src/REL/mstory3Dll/result.c create mode 100755 src/REL/mstory3Dll/result_seq.c create mode 100755 src/REL/mstory3Dll/win_effect.c diff --git a/config/GMPE01_00/rels/mstory3Dll/symbols.txt b/config/GMPE01_00/rels/mstory3Dll/symbols.txt index a6159435..4863cac3 100644 --- a/config/GMPE01_00/rels/mstory3Dll/symbols.txt +++ b/config/GMPE01_00/rels/mstory3Dll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 _prolog = .text:0x0000036C; // type:function size:0x54 scope:global _epilog = .text:0x000003C0; // type:function size:0x4C scope:global fn_1_40C = .text:0x0000040C; // type:function size:0xE4 -fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +ObjectSetup = .text:0x000004F0; // type:function size:0xE4 fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 fn_1_5FC = .text:0x000005FC; // type:function size:0x20 fn_1_61C = .text:0x0000061C; // type:function size:0xD8 @@ -202,315 +202,315 @@ fn_1_1E558 = .text:0x0001E558; // type:function size:0x2C8 fn_1_1E820 = .text:0x0001E820; // type:function size:0x8E0 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x20 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte -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_214 = .rodata:0x00000214; // 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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x28 data:4byte -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x20 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 scope:local data:float +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_214 = .rodata:0x00000214; // 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:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 scope:local +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x28 scope:local data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 scope:local data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 scope:local data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 scope:local data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 scope:local data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 scope:local data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string -lbl_1_data_95 = .data:0x00000095; // type:object size:0xD data:string +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 scope:local data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xD scope:local data:string lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string -lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string -lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string -lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string -lbl_1_data_11B = .data:0x0000011B; // type:object size:0xE data:string +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 scope:local data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 scope:local data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A scope:local data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A scope:local data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0xE scope:local data:string lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 -lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string -lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string -lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string -lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string -lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string -lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string -lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string -lbl_1_data_346 = .data:0x00000346; // type:object size:0x1C data:string -lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte -lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string -lbl_1_data_387 = .data:0x00000387; // type:object size:0x10 data:string +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 scope:local data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 scope:local data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 scope:local data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 scope:local data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 scope:local data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 scope:local data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 scope:local data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF scope:local data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D scope:local data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1C scope:local data:string +lbl_1_data_364 = .data:0x00000364; // type:object size:0x4 data:4byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC data:float +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF scope:local data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x10 scope:local data:string jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string -lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string -lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string -lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string -lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string -lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string -lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string -lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string -lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string -lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string -lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 scope:local data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 scope:local data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 scope:local data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 scope:local data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 scope:local data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 scope:local data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 scope:local data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 scope:local data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 scope:local data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 scope:local data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 scope:local data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x10 scope:local data:string lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 -lbl_1_data_78C = .data:0x0000078C; // type:object size:0x5 -lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string -lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string -lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string -lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string -lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string -lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string -lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string -lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string -lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string -lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string -lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string -lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string -lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string -lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string -lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string -lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string -lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string -lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string -lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B -lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string -lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_data_78C = .data:0x0000078C; // type:object size:0x50 +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 scope:local data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 scope:local data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 scope:local data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 scope:local data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 scope:local data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 scope:local data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 scope:local data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 scope:local data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF scope:local data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C scope:local data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D scope:local data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 scope:local data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 scope:local data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 scope:local data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 scope:local data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 scope:local data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A scope:local data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A scope:local data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x19 scope:local data:string +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 scope:local data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:float lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:float -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:float @@ -542,7 +542,7 @@ lbl_1_bss_18F4 = .bss:0x000018F4; // type:object size:0xA0 lbl_1_bss_1994 = .bss:0x00001994; // type:object size:0x28 data:4byte lbl_1_bss_19BC = .bss:0x000019BC; // type:object size:0x28 data:4byte lbl_1_bss_19E4 = .bss:0x000019E4; // type:object size:0x28 data:4byte -lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2DC data:float +lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2D8 data:float lbl_1_bss_1CE8 = .bss:0x00001CE8; // type:object size:0x2 data:2byte lbl_1_bss_1CEC = .bss:0x00001CEC; // type:object size:0x4 data:4byte lbl_1_bss_1CF0 = .bss:0x00001CF0; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 691ad13d..abfd9d0f 100644 --- a/configure.py +++ b/configure.py @@ -1396,10 +1396,10 @@ config.libs = [ Rel( "mstory3Dll", objects={ - Object(NonMatching, "REL/mstory3Dll/main.c"), - Object(NonMatching, "REL/mstory3Dll/result_seq.c"), - Object(NonMatching, "REL/mstory3Dll/result.c"), - Object(NonMatching, "REL/mstory3Dll/win_effect.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/main.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/result_seq.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/result.c"), + Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/win_effect.c"), }, ), Rel( diff --git a/include/REL/mstory3Dll.h b/include/REL/mstory3Dll.h new file mode 100755 index 00000000..8ca3ed77 --- /dev/null +++ b/include/REL/mstory3Dll.h @@ -0,0 +1,99 @@ +#ifndef MSTORY3DLL_H +#define MSTORY3DLL_H + +#include "game/object.h" +#include "game/process.h" + +#include "dolphin.h" + +// For future reference: seems to be identical to StructFn352C in mstoryDll. +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ s32 unk20; + /* 0x24 */ s32 unk24; + /* 0x28 */ s32 unk28; + /* 0x2C */ s32 unk2C; + /* 0x30 */ char unk30[4]; +} StructFn352C; // Size 0x34 + +// For future reference: seems to be identical to StructBss4 in mstoryDll. +typedef struct { + /* 0x00 */ void (*unk00)(void); + /* 0x04 */ void (*unk04)(void); + /* 0x08 */ Vec unk08; + /* 0x14 */ float unk14; + /* 0x18 */ float unk18; + /* 0x1C */ float unk1C; + /* 0x20 */ Vec unk20; + /* 0x2C */ float unk2C; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; + /* 0x38 */ float unk38; + /* 0x3C */ float unk3C; + /* 0x40 */ s32 unk40; +} StructBss4; // Size 0x44 + +typedef struct { + /* 0x00 */ omObjData* unk00; + /* 0x04 */ void (*unk04)(omObjData*, ...); + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; + /* 0x20 */ char unk20[8]; +} StructBss1530; // Size 0x28 + +// main.c +float fn_1_5D4(float arg8, float arg9, float argA, float argB); +float fn_1_5FC(float arg8, float arg9, float argA); +float fn_1_61C(float arg0, float arg1, float arg2, float arg3); +float fn_1_6F4(float arg0, float arg1, float arg2, float arg3); +float fn_1_7BC(float arg0, float arg1, float arg2, float arg3); +float fn_1_878(float arg0, float arg1, float arg2, float arg3); +void fn_1_938(void); +void fn_1_958(s32 arg0); +void fn_1_9A0(void); +void fn_1_9C4(void); +s32 fn_1_1624(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +s32 fn_1_1834(u32 arg0, s32 arg1); +void fn_1_1A24(s32 arg0); +void fn_1_1AB0(s32 arg0); +void fn_1_1B18(s32 arg0, s32 arg1); +void fn_1_1D44(s32 arg0, s32 arg1); +void fn_1_1E28(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_2280(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3); +void fn_1_2310(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3); +void fn_1_2420(s32 arg0, s32 arg1); +void fn_1_2834(void (*arg0)(void)); +void fn_1_290C(Process* arg0, void (*arg1)(void)); +void fn_1_2DD4(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5); +void fn_1_35C8(s16 arg0); +void fn_1_3650(StructFn352C* arg0, s32 arg1); +s32 fn_1_36E4(void); +s32 fn_1_373C(void); +s32 fn_1_37C8(s32 arg0); +void fn_1_38B4(void); +void fn_1_39B4(StructBss4* arg0); +void fn_1_4400(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4); +void fn_1_4CC0(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3); +void fn_1_514C(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4); + +// result_seq.c +void fn_1_6E34(Process* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); + +// result.c +void fn_1_157F0(Process* arg0, s32 arg1, s32 arg2, s32 arg3); + +extern StructBss4 lbl_1_bss_4; +extern s32 lbl_1_data_0[][4]; + +#endif diff --git a/include/game/gamework.h b/include/game/gamework.h index 869cfad1..722ba147 100644 --- a/include/game/gamework.h +++ b/include/game/gamework.h @@ -15,10 +15,10 @@ void GWCharColorGet(s32 character, GXColor *color); void GWBoardPlayCountSet(s32 board, u8 value); void GWBoardPlayCountAdd(s32 board, u8 value); u8 GWBoardPlayCountGet(s32 board); -void GWBoardMaxStarsSet(s32 board, s32 value); -u16 GWBoardMaxStarsGet(s32 board); +void GWBoardMaxStarsSet(s32 board, s16 value); +s32 GWBoardMaxStarsGet(s32 board); void GWBoardMaxCoinsSet(s32 board, s32 value); -u16 GWBoardMaxCoinsGet(s32 board); +s32 GWBoardMaxCoinsGet(s32 board); s32 GWBoardWinCountInc(s32 character, s32 board); s32 GWBoardWinCountGet(s32 character, s32 board); void GWBoardWinCountSet(s32 character, s32 board, s32 value); diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index 0e2c8254..b3615e85 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -325,6 +325,11 @@ static inline s32 GWPlayerTeamGet(s32 player) return GWPlayer[player].team; } +static inline s32 GWPlayerHandicapGet(s32 player) +{ + return GWPlayer[player].handicap; +} + static inline s32 GWLuckyValueGet(void) { return GWSystem.lucky_value; diff --git a/src/REL/mstory3Dll/main.c b/src/REL/mstory3Dll/main.c new file mode 100755 index 00000000..c1e4f1bf --- /dev/null +++ b/src/REL/mstory3Dll/main.c @@ -0,0 +1,1044 @@ +#include "REL/mstory3Dll.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/window.h" +#include "game/wipe.h" + +#include "ext_math.h" + +u8 lbl_1_bss_48[0x10]; // unused +StructBss4 lbl_1_bss_4; +Process* lbl_1_bss_0; + +s32 lbl_1_data_0[][4] = { + { 0x37, 0x38, 0x36, 0x39 }, + { 0x43, 0x45, 0x44, 0x43 }, + { 0x40, 0x42, 0x41, 0x40 }, + { 0x4B, 0x4D, 0x4C, 0x4B }, + { 0x46, 0x48, 0x47, 0x46 }, + { 0x3E, 0x3F, 0x3E, 0x3E }, + { 0x3A, 0x3B, 0x3C, -1 } +}; + +char* lbl_1_data_A4[] = { + "S-1 : ALL STORY - BOARD RESULT EVENT", + "--- : RESULT" +}; + +void fn_1_0(omObjData* arg0) { + if (WipeStatGet() == 0) { + arg0->func = NULL; + omOvlReturnEx(1, 1); + } +} + +void fn_1_4C(omObjData* arg0) { + if (omSysExitReq != 0) { + arg0->func = fn_1_0; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + } +} + +void fn_1_A4(void) { + s32 sp14; + s32 sp10; + s32 spC; + s32 sp8; + s32 var_r29; + s32 var_r30; + s32 var_r31; + + sp14 = 0; + var_r30 = 0; + var_r31 = 0; + sp10 = 1; + spC = 1; + sp8 = 1; + omAddObjEx(lbl_1_bss_0, 0x2000, 0, 0, -1, fn_1_4C); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } + while (TRUE) { + if (HuPadBtnDown[0] & PAD_BUTTON_A) { + break; + } + if (HuPadBtnDown[0] & PAD_BUTTON_DOWN) { + var_r30++; + if (var_r30 >= 2) { + var_r30 = 0; + } + } + if (HuPadBtnDown[0] & PAD_BUTTON_UP) { + var_r30--; + if (var_r30 < 0) { + var_r30 = 1; + } + } + if (HuPadStkX[0] <= -30) { + var_r31++; + if (var_r31 > 6) { + var_r31 = 0; + } + } + if (HuPadStkX[0] >= 30) { + var_r31--; + if (var_r31 < 0) { + var_r31 = 5; + } + } + fontcolor = FONT_COLOR_WHITE; + print8(24, 100, 1.5f, ">>>>> MPGC STORY 3 - EVENT SELECT <<<<<"); + print8(24, 130, 1.5f, "MAP NUMBER : %d", var_r31 + 1); + for (var_r29 = 0; var_r29 < 2; var_r29++) { + fontcolor = FONT_COLOR_WHITE; + if (var_r30 == var_r29) { + fontcolor = FONT_COLOR_CYAN; + } + print8(24, 160 + var_r29 * 15, 1.5f, "%s", lbl_1_data_A4[var_r29]); + } + fn_1_938(); + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } + GWSystem.board = var_r31; + switch (var_r30) { + case 0: + fn_1_6E34(lbl_1_bss_0, var_r31, 1, 0, 0); + break; + case 1: + fn_1_157F0(lbl_1_bss_0, var_r31, 0, 0); + break; + } + while (TRUE) { + fn_1_938(); + } +} + +#include "src/REL/executor.c" + +void fn_1_40C(void) { + lbl_1_bss_0 = omInitObjMan(62, 0x2000); + omGameSysInit(lbl_1_bss_0); + switch (omovlevtno) { + case 0: + fn_1_6E34(lbl_1_bss_0, GWSystem.board, GWSystem.bonus_star, GWSystem.party, 0); + break; + case 1: + fn_1_157F0(lbl_1_bss_0, GWSystem.board, GWSystem.party, 0); + break; + } +} + +void ObjectSetup(void) { + fn_1_40C(); +} + +float fn_1_5D4(float arg8, float arg9, float argA, float argB) { + if (argB <= argA) { + return arg9; + } + return arg8 + (argA / argB) * (arg9 - arg8); +} + +float fn_1_5FC(float arg8, float arg9, float argA) { + return (arg9 + arg8 * (argA - 1.0f)) / argA; +} + +float fn_1_61C(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg1; + } + return arg0 + (arg1 - arg0) * (1.0 - cosd((90.0f / arg3) * arg2)); +} + +float fn_1_6F4(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg1; + } + return arg0 + (arg1 - arg0) * sind((90.0f / arg3) * arg2); +} + +float fn_1_7BC(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg0; + } + return arg0 + (arg1 - arg0) * sind((180.0f / arg3) * arg2); +} + +float fn_1_878(float arg0, float arg1, float arg2, float arg3) { + if (arg2 >= arg3) { + return arg0; + } + return arg0 + (arg1 - arg0) * sind((360.0f / arg3) * arg2); +} + +void fn_1_934(void) { +} + +void fn_1_938(void) { + HuPrcVSleep(); +} + +void fn_1_958(s32 arg0) { + HuPrcSleep(arg0); +} + +void fn_1_980(void) { + HuPrcEnd(); +} + +void fn_1_9A0(void) { + HuWinInit(1); +} + +void fn_1_9C4(void) { + HuWinAllKill(); +} + +void fn_1_9E4(s32 arg0, float arg1, float arg2, s32 arg3) { + WindowData* temp_r29; + float temp_f29; + float temp_f28; + float temp_f25; + float temp_f24; + float temp_f31; + float temp_f27; + float temp_f30; + float temp_f26; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + s32 i; + + temp_r29 = &winData[arg0]; + temp_f29 = temp_r29->pos_x; + temp_f28 = temp_r29->pos_y; + temp_f25 = temp_r29->w; + temp_f24 = temp_r29->h; + temp_f31 = temp_f29 + temp_f25 * arg1; + temp_f27 = 4.0f / temp_f25; + if (temp_f31 + 4.0f - (temp_f29 + temp_f25) >= 0.0f) { + temp_f31 = (temp_f29 + temp_f25) - 4.0f; + } else if (temp_f29 - (temp_f31 - 2.0f) >= 0.0f) { + temp_f31 = temp_f29; + } else { + temp_f31 -= 2.0f; + } + temp_f30 = temp_f28 + temp_f24 * arg2; + temp_f26 = 4.0f / temp_f24; + if (temp_f30 + 4.0f - (temp_f28 + temp_f24) >= 0.0f) { + temp_f30 = (temp_f28 + temp_f24) - 4.0f; + } else if (temp_f28 - (temp_f30 - 2.0f) >= 0.0f) { + temp_f30 = temp_f28; + } else { + temp_f30 -= 2.0f; + } + if (arg3 != 0) { + HuWinPosSet(arg0, temp_f31, temp_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + var_f23 = temp_f31; + var_f21 = temp_f27; + var_f22 = temp_f30; + var_f20 = temp_f26; + } else { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + var_f23 = temp_f29; + var_f21 = 1.0f; + var_f22 = temp_f28; + var_f20 = 1.0f; + } + HuWinDispOn(arg0); + for (i = 0; i <= 15; i++) { + HuPrcVSleep(); + if (arg3 != 0) { + if (i <= 10) { + var_f23 = fn_1_6F4(temp_f31, temp_f29, i, 10.0f); + var_f21 = fn_1_6F4(temp_f27, 1.0f, i, 10.0f);; + } else { + var_f22 = fn_1_6F4(temp_f30, temp_f28, i - 10, 5.0f); + var_f20 = fn_1_6F4(temp_f26, 1.0f, i - 10, 5.0f); + } + } else { + if (i <= 10) { + var_f22 = fn_1_6F4(temp_f28, temp_f30, i, 10.0f); + var_f20 = fn_1_6F4(1.0f, temp_f26, i, 10.0f); + } else { + var_f23 = fn_1_6F4(temp_f29, temp_f31, i - 10, 5.0f); + var_f21 = fn_1_6F4(1.0f, temp_f27, i - 10, 5.0f); + } + } + HuWinPosSet(arg0, var_f23, var_f22); + HuWinScaleSet(arg0, var_f21, var_f20); + } + if (arg3 != 0) { + HuWinPosSet(arg0, temp_f29, temp_f28); + HuWinScaleSet(arg0, 1.0f, 1.0f); + } else { + HuWinPosSet(arg0, temp_f31, temp_f30); + HuWinScaleSet(arg0, temp_f27, temp_f26); + } + HuPrcVSleep(); +} + +s32 fn_1_142C(s32 arg0, s32 arg1, s32 arg2, s32 arg3, float arg8, float arg9, s32 arg4) { + s32 temp_r3; + + arg2 = arg2 * 21 + 16; + arg3 = arg3 * 26 + 16; + if (arg0 == 0) { + arg0 = 550 - arg2; + } else { + arg0 = 1.0f + (576.0f - arg2) / 2; + } + if (arg1 == 0) { + arg1 = 430 - arg3; + } else { + arg1 = 445 - arg3; + } + temp_r3 = HuWinExCreateStyled(arg0, arg1, arg2, arg3, -1, 1); + HuWinMesPalSet(temp_r3, 7, 0, 0, 0); + if (arg4 != -1) { + if (GWSystem.party != 1) { + winData[temp_r3].active_pad = 1; + } else { + winData[temp_r3].active_pad = 0xF; + } + } else { + winData[temp_r3].active_pad = 0xFF; + } + fn_1_9E4(temp_r3, arg8, arg9, 1); + if (arg1 != 0) { + HuWinPriSet(temp_r3, 50); + } + return temp_r3; +} + +s32 fn_1_1624(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + return fn_1_142C(arg0, arg1, arg2, arg3, 0.5f, 0.5f, arg4); +} + +s32 fn_1_1834(u32 arg0, s32 arg1) { + float sp8[2]; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + s32 temp_r3; + + if (arg1 == 0) { + HuWinMesMaxSizeGet(1, sp8, arg0); + } + var_f31 = sp8[0]; + var_f30 = sp8[1]; + var_f29 = (576.0f - var_f31) / 2; + var_f28 = 445.0f - var_f30; + if (arg1 != 0) { + var_f31 = 352.0f; + var_f30 = 94.0f; + var_f29 = 550.0f - var_f31; + var_f28 = 445.0f - var_f30; + } + temp_r3 = HuWinExCreateStyled(var_f29, var_f28, var_f31, var_f30, -1, 1); + HuWinMesPalSet(temp_r3, 7, 0, 0, 0); + if (arg1 == 0) { + HuWinBGTPLvlSet(temp_r3, 0.0f); + HuWinMesSet(temp_r3, arg0); + HuWinMesSpeedSet(temp_r3, 0); + HuWinDispOn(temp_r3); + HuWinMesPalSet(temp_r3, 7, 0xFF, 0xFF, 0xFF); + } else { + HuWinPriSet(temp_r3, 50); + fn_1_9E4(temp_r3, 0.5f, 0.5f, 1); + HuWinMesSpeedSet(temp_r3, 0); + } + return temp_r3; +} + +void fn_1_1A24(s32 arg0) { + HuWinExCleanup(arg0); +} + +void fn_1_1A50(s32 arg0, float arg1, float arg2) { + HuWinMesSet(arg0, MAKE_MESSID(37, 4)); + HuPrcVSleep(); + fn_1_9E4(arg0, arg1, arg2, 0); + HuWinExCleanup(arg0); +} + +void fn_1_1AB0(s32 arg0) { + fn_1_1A50(arg0, 0.5f, 0.5f); +} + +void fn_1_1B18(s32 arg0, s32 arg1) { + s32 i; + + if (arg1 > 0) { + HuPrcSleep(arg1); + return; + } + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xFF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesWait(arg0); + HuWinComKeyReset(); +} + +s32 fn_1_1BC4(s32 arg0, s32 arg1) { + s32 spC; + s32 temp_r31; + s32 var_r30; + + spC = 0; + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xFF) { + for (var_r30 = 0; var_r30 < 10; var_r30++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + temp_r31 = HuWinChoiceGet(arg0, arg1); + HuWinComKeyReset(); + if (temp_r31 != 0) { + temp_r31 = 0; + } else { + temp_r31 = 1; + } + return temp_r31; +} + +s32 fn_1_1C88(s32 arg0) { + return fn_1_1BC4(arg0, 0); +} + +void fn_1_1D44(s32 arg0, s32 arg1) { + HuWinMesSet(arg0, arg1); +} + +void fn_1_1D78(s32 arg0, s32 arg1, s32 arg2) { + HuWinInsertMesSet(arg0, arg1, arg2); +} + +void fn_1_1DB8(s16 arg0) { + ModelData* var_r28; + HsfMaterial* var_r31; + HsfData* temp_r30; + s16 var_r27; + s32 i; + + var_r28 = &Hu3DData[arg0]; + temp_r30 = var_r28->hsfData; + var_r27 = temp_r30->materialCnt; + var_r31 = temp_r30->material; + for (i = 0; i < var_r27; var_r31++, i++) { + var_r31->vtxMode = 1; + } +} + +void fn_1_1E28(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + switch (arg4) { + case 0: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_NONE); + break; + case 1: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_LOOP); + break; + case 2: + Hu3DMotionShiftSet(arg0->model[arg1], arg0->motion[arg2], 0.0f, arg3, HU3D_MOTATTR_PAUSE); + break; + } +} + +void fn_1_1FA0(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + if (arg0->motion[arg2] == Hu3DMotionIDGet(arg0->model[arg1])) { + return; + } + if (arg0->motion[arg2] == Hu3DMotionShiftIDGet(arg0->model[arg1])) { + return; + } + fn_1_1FA0(arg0, arg1, arg2, arg3, arg4); +} + +void fn_1_2280(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3) { + HuPrcSleep(arg3 + 1); + do { + HuPrcVSleep(); + } while (arg0->motion[arg2] != Hu3DMotionIDGet(arg0->model[arg1]) || !Hu3DMotionEndCheck(arg0->model[arg1])); +} + +void fn_1_2310(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3) { + HuPrcSleep(arg3 + 1); + do { + HuPrcVSleep(); + } while (arg0->motion[arg2] != Hu3DMotionIDGet(arg0->model[arg1]) || !(Hu3DMotionMaxTimeGet(arg0->model[arg1]) - 20.0f <= Hu3DMotionTimeGet(arg0->model[arg1]))); +} + +s32 fn_1_23D8(s32 arg0) { + s32 i; + + for (i = 0; i < 4; i++) { + if (arg0 == GWPlayerCfg[i].group) { + break; + } + } + return i; +} + +void fn_1_2420(s32 arg0, s32 arg1) { + while (TRUE) { + if (arg1 & HuPadBtnDown[arg0]) { + break; + } + HuPrcVSleep(); + } +} + +void fn_1_2474(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + if (HuPadBtn[0] & PAD_BUTTON_B) { + if (HuPadBtn[0] & PAD_TRIGGER_R) { + var_r31->unk08.z -= HuPadStkY[0] / 10.0f; + } else { + var_r31->unk08.x += HuPadStkX[0] / 10.0f; + var_r31->unk08.y += HuPadStkY[0] / 10.0f; + } + } + if (HuPadBtn[0] & PAD_BUTTON_Y) { + var_r31->unk20.x -= HuPadStkY[0] / 100.0f; + var_r31->unk20.y += HuPadStkX[0] / 100.0f; + if (var_r31->unk20.x < 0.0f) { + var_r31->unk20.x += 360.0f; + } + if (var_r31->unk20.x >= 360.0f) { + var_r31->unk20.x -= 360.0f; + } + if (var_r31->unk20.y < 0.0f) { + var_r31->unk20.y += 360.0f; + } + if (var_r31->unk20.y >= 360.0f) { + var_r31->unk20.y -= 360.0f; + } + } + if (HuPadBtn[0] & PAD_BUTTON_X) { + var_r31->unk38 -= HuPadStkY[0] / 10.0f; + } + print8(24, 40, 1.5f, "CENTER : %.2f, %.2f, %.2f", var_r31->unk08.x, var_r31->unk08.y, var_r31->unk08.z); + print8(24, 55, 1.5f, "ROT : %.2f, %.2f, %.2f", var_r31->unk20.x, var_r31->unk20.y, var_r31->unk20.z); + print8(24, 70, 1.5f, "ZOOM : %.2f", var_r31->unk38); +} + +void fn_1_2834(void (*arg0)(void)) { + lbl_1_bss_4.unk00 = arg0; +} + +void fn_1_2844(void (*arg0)(void)) { + lbl_1_bss_4.unk04 = arg0; +} + +void fn_1_2854(omObjData* arg0) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + if (var_r31->unk00 != NULL) { + var_r31->unk00(); + } + Center.x = var_r31->unk08.x; + Center.y = var_r31->unk08.y; + Center.z = var_r31->unk08.z; + CRot.x = var_r31->unk20.x; + CRot.y = var_r31->unk20.y; + CRot.z = var_r31->unk20.z; + CZoom = var_r31->unk38; +} + +void fn_1_290C(Process* arg0, void (*arg1)(void)) { + Hu3DCameraCreate(1); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraPerspectiveSet(1, 42.0f, 1.0f, 2000.0f, 1.2f); + lbl_1_bss_4.unk00 = arg1; + lbl_1_bss_4.unk04 = fn_1_2474; + omAddObjEx(arg0, 0x7FDA, 0, 0, -1, omOutView); + omAddObjEx(arg0, 0x7FD9, 0, 0, -1, fn_1_2854); +} + +void fn_1_2A2C(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5) { + Vec sp4C; + Vec sp40; + Vec sp34; + Vec sp28; + float sp24; + float sp20; + float sp1C; + s32 sp18; + s32 sp14; + float var_f31; + + sp40.x = Hu3DData[arg0->model[arg1]].pos.x; + sp4C.y = sp40.y = Hu3DData[arg0->model[arg1]].pos.y; + sp40.z = Hu3DData[arg0->model[arg1]].pos.z; + sp34.x = arg2.x; + sp34.y = arg2.y; + sp34.z = arg2.z; + sp18 = arg4; + sp28.x = Hu3DData[arg0->model[arg1]].rot.x; + sp28.y = Hu3DData[arg0->model[arg1]].rot.y; + sp28.z = Hu3DData[arg0->model[arg1]].rot.z; + sp1C = 0.0f; + sp20 = arg3; + sp24 = 0.0f; + sp14 = arg5; + var_f31 = -1.1025f; + Hu3DMotionShiftSet(arg0->model[1], arg0->motion[3], 0.0f, 5.0f, 0U); + HuPrcSleep(10); + while (TRUE) { + if (var_f31 >= 1.7f) { + var_f31 = 1.7f; + } + sp4C.y += var_f31 * var_f31 * (var_f31 >= 0.0f ? -17.5f : 17.5f); + if (sp4C.y <= 0.0f && var_f31 > 0.0f) { + sp4C.y = 0.0f; + } + sp4C.x = sp40.x += 6.0 * sind(sp28.y); + sp4C.z = sp40.z += 6.0 * cosd(sp28.y); + Hu3DModelPosSet(arg0->model[1], sp4C.x, sp4C.y, sp4C.z); + Hu3DModelRotSet(arg0->model[1], sp28.x, sp28.y, sp28.z); + HuPrcVSleep(); + if (sp4C.y <= arg2.y && var_f31 > 0.0f) { + break; + } + var_f31 += 0.11f; + } +} + +void fn_1_2DD4(omObjData* arg0, s32 arg1, Vec arg2, float arg3, float arg4, float arg5) { + Vec sp54; + Vec sp48; + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; + s32 sp14; + s32 temp_r27; + s32 var_r26; + s32 var_r25; + s32 var_r24; + s32 var_r23; + s32 i; + + var_r26 = 0; + var_r25 = 0; + sp48.x = Hu3DData[arg0->model[arg1]].pos.x; + sp48.y = Hu3DData[arg0->model[arg1]].pos.y; + sp48.z = Hu3DData[arg0->model[arg1]].pos.z; + sp3C.x = arg2.x; + sp3C.y = arg2.y; + sp3C.z = arg2.z; + sp14 = arg4; + sp24.x = Hu3DData[arg0->model[arg1]].rot.x; + sp24.y = Hu3DData[arg0->model[arg1]].rot.y; + sp24.z = Hu3DData[arg0->model[arg1]].rot.z; + sp18.x = 0.0f; + sp18.y = arg3; + sp18.z = 0.0f; + if (sp3C.x - sp48.x >= 0.0f) { + var_r24 = 1; + } else { + var_r24 = 0; + } + if (sp3C.z - sp48.z >= 0.0f) { + var_r23 = 1; + } else { + var_r23 = 0; + } + temp_r27 = arg5; + do { + sp30.y = -(atan2d(sp3C.z - sp48.z, sp3C.x - sp48.x) - 90.0); + if (sp30.y < 0.0f) { + sp30.y += 360.0f; + } else if (sp30.y >= 360.0f) { + sp30.y -= 360.0f; + } + if (sp30.y >= 180.0f) { + if (sp24.y - sp30.y >= 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp30.y < -180.0f) { + sp24.y += 360.0f; + } + } else { + if (sp24.y - sp30.y > 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp30.y <= -180.0f) { + sp24.y += 360.0f; + } + } + sp54.x = sp48.x += 6.0 * sind(sp30.y); + sp54.z = sp48.z += 6.0 * cosd(sp30.y); + if (var_r24 != 0) { + if (sp48.x >= sp3C.x) { + sp54.x = sp48.x = sp3C.x; + var_r26 = 1; + } + } else { + if (sp48.x <= sp3C.x) { + sp54.x = sp48.x = sp3C.x; + var_r26 = 1; + } + } + if (var_r23 != 0) { + if (sp48.z >= sp3C.z) { + sp54.z = sp48.z = sp3C.z; + var_r25 = 1; + } + } else { + if (sp48.z <= sp3C.z) { + sp54.z = sp48.z = sp3C.z; + var_r25 = 1; + } + } + sp24.y = fn_1_5FC(sp24.y, sp30.y, 10.0f); + Hu3DModelPosSet(arg0->model[1], sp54.x, sp48.y, sp54.z); + Hu3DModelRotSet(arg0->model[1], sp24.x, sp24.y, sp24.z); + HuPrcVSleep(); + } while (var_r25 != 1 || var_r26 != 1); + sp24.y = Hu3DData[arg0->model[arg1]].rot.y; + for (i = 0; i <= temp_r27; i++) { + if (sp18.y >= 180.0f) { + if (sp24.y - sp18.y >= 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp18.y < -180.0f) { + sp24.y += 360.0f; + } + } else { + if (sp24.y - sp18.y > 180.0f) { + sp24.y -= 360.0f; + } + if (sp24.y - sp18.y <= -180.0f) { + sp24.y += 360.0f; + } + } + sp24.y = fn_1_5D4(sp24.y, sp18.y, i, temp_r27); + Hu3DModelRotSet(arg0->model[1], sp24.x, sp24.y, sp24.z); + HuPrcVSleep(); + } +} + +void fn_1_35C8(s16 arg0) { + ModelData* var_r28; + HsfData* temp_r30; + HsfMaterial* var_r31; + s16 var_r27; + s32 i; + + var_r28 = &Hu3DData[arg0]; + temp_r30 = var_r28->hsfData; + var_r27 = temp_r30->materialCnt; + var_r31 = temp_r30->material; + for (i = 0; i < var_r27; var_r31++, i++) { + var_r31->vtxMode = 1; + var_r31->litColor[0] = 0xFF; + var_r31->litColor[1] = 0xFF; + var_r31->litColor[2] = 0xFF; + } +} + +void fn_1_3650(StructFn352C* arg0, s32 arg1) { + arg0->unk00 = arg1; + arg0->unk04 = GWPlayerCfg[arg0->unk00].group; + arg0->unk08 = GWPlayerCfg[arg0->unk00].iscom; + arg0->unk0C = GWPlayerCfg[arg0->unk00].diff; + arg0->unk10 = GWPlayerCfg[arg0->unk00].character; + arg0->unk14 = GWPlayerCfg[arg0->unk00].pad_idx; +} + +s32 fn_1_36E4(void) { + s32 i; + + for (i = 0; i < 4; i++) { + if (!GWPlayerCfg[i].iscom) { + break; + } + } + if (i == 4) { + return -1; + } + return i; +} + +s32 fn_1_373C(void) { + s32 var_r30; + s32 var_r31; + + var_r30 = 0; + do { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (var_r30 == GWPlayerCfg[var_r31].pad_idx) { + break; + } + } + if (!GWPlayerCfg[var_r31].iscom) { + break; + } + var_r30++; + } while (var_r30 != 5); + if (var_r30 == 5) { + return -1; + } + return var_r31; +} + +s32 fn_1_37C8(s32 arg0) { + s32 temp_r3 = 0; + + temp_r3 = Hu3DGLightCreate(0.0f, 700.0f, 1200.0f, 0.0f, -1.0f, 0.0f, arg0, arg0, arg0); + Hu3DGLightPosAimSet(temp_r3, 0.0f, 700.0f, 1200.0f, 0.0f, 0.0f, 640.0f); + Hu3DGLightInfinitytSet(temp_r3); + return temp_r3; +} + +void fn_1_38B4(void) { + Vec sp20 = { 0.0f, 3000.0f, 800.0f }; + Vec sp14 = { 0.0f, 0.0f, 640.0f }; + Vec sp8 = { 0.0f, 1.0f, 0.0f }; + + Hu3DShadowCreate(45.0f, 2000.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.8f); + Hu3DShadowPosSet(&sp20, &sp8, &sp14); +} + +void fn_1_3978(StructBss4* arg0) { + arg0->unk08.x = arg0->unk14; + arg0->unk08.y = arg0->unk18; + arg0->unk08.z = arg0->unk1C; + arg0->unk20.x = arg0->unk2C; + arg0->unk20.y = arg0->unk30; + arg0->unk20.z = arg0->unk34; + arg0->unk38 = arg0->unk3C; +} + +void fn_1_39B4(StructBss4* arg0) { + arg0->unk40 = 0; + arg0->unk14 = arg0->unk08.x; + arg0->unk18 = arg0->unk08.y; + arg0->unk1C = arg0->unk08.z; + arg0->unk2C = arg0->unk20.x; + arg0->unk30 = arg0->unk20.y; + arg0->unk34 = arg0->unk20.z; + arg0->unk3C = arg0->unk38; +} + +void fn_1_39F8(StructBss4* arg0, StructBss4* arg1, float arg2) { + arg0->unk08.x = fn_1_5FC(arg0->unk08.x, arg1->unk14, arg2); + arg0->unk08.y = fn_1_5FC(arg0->unk08.y, arg1->unk18, arg2); + arg0->unk08.z = fn_1_5FC(arg0->unk08.z, arg1->unk1C, arg2); + arg0->unk20.x = fn_1_5FC(arg0->unk20.x, arg1->unk2C, arg2); + arg0->unk20.y = fn_1_5FC(arg0->unk20.y, arg1->unk30, arg2); + arg0->unk20.z = fn_1_5FC(arg0->unk20.z, arg1->unk34, arg2); + arg0->unk38 = fn_1_5FC(arg0->unk38, arg1->unk3C, arg2); +} + +void fn_1_3C64(StructBss4* arg0, float arg1) { + fn_1_39F8(arg0, arg0, arg1); +} + +void fn_1_3ED0(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_5D4(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_5D4(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_5D4(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_5D4(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_5D4(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_5D4(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_5D4(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_414C(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + fn_1_3ED0(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_4400(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4) { + fn_1_3ED0(arg0, arg1, arg2, arg3); + fn_1_39F8(arg0, arg1, arg4); +} + +void fn_1_486C(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_6F4(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_6F4(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_6F4(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_6F4(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_6F4(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_6F4(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_6F4(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_4CC0(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + fn_1_486C(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_514C(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4) { + fn_1_486C(arg0, arg1, arg2, arg3); + fn_1_39F8(arg0, arg1, arg4); +} + +void fn_1_57A4(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + arg1->unk14 = fn_1_61C(arg0->unk14, arg1->unk08.x, arg2, arg3); + arg1->unk18 = fn_1_61C(arg0->unk18, arg1->unk08.y, arg2, arg3); + arg1->unk1C = fn_1_61C(arg0->unk1C, arg1->unk08.z, arg2, arg3); + arg1->unk2C = fn_1_61C(arg0->unk2C, arg1->unk20.x, arg2, arg3); + arg1->unk30 = fn_1_61C(arg0->unk30, arg1->unk20.y, arg2, arg3); + arg1->unk34 = fn_1_61C(arg0->unk34, arg1->unk20.z, arg2, arg3); + arg1->unk3C = fn_1_61C(arg0->unk3C, arg1->unk38, arg2, arg3); +} + +void fn_1_5C68(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3) { + fn_1_57A4(arg0, arg1, arg2, arg3); + arg0->unk08.x = arg1->unk14; + arg0->unk08.y = arg1->unk18; + arg0->unk08.z = arg1->unk1C; + arg0->unk20.x = arg1->unk2C; + arg0->unk20.y = arg1->unk30; + arg0->unk20.z = arg1->unk34; + arg0->unk38 = arg1->unk3C; +} + +void fn_1_6164(StructBss4* arg0, StructBss4* arg1, float arg2, float arg3, float arg4) { + fn_1_57A4(arg0, arg1, arg2, arg3); + fn_1_39F8(arg0, arg1, arg4); +} + +void fn_1_682C(omObjData* arg0) { + s32 var_r30; + + if (arg0->work[0] == 0) { + return; + } + if (arg0->work[2] != 0) { + arg0->work[2]--; + return; + } + if (arg0->work[2] == 0 && Hu3DMotionEndCheck(arg0->model[1])) { + var_r30 = arg0->work[1]; + Hu3DMotionShiftSet(arg0->model[1], arg0->motion[var_r30], 0.0f, 15.0f, HU3D_MOTATTR_LOOP); + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + } +} + +void fn_1_68F0(omObjData* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + fn_1_1E28(arg0, 1, arg1, arg3, arg4); + if (arg4 == 0) { + arg0->work[0] = 1; + arg0->work[1] = arg2; + arg0->work[2] = arg3 + 1; + } +} + +void fn_1_6A78(s32 arg0, s32 arg1) { + HuWinMesSet(arg0, arg1); +} + +void fn_1_6AAC(s32 arg0, s32 arg1, s32 arg2) { + HuWinInsertMesSet(arg0, arg1, arg2); +} + +void fn_1_6AEC(s32 arg0, s32 arg1) { + fn_1_1B18(arg0, arg1); +} + +void fn_1_6B98(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { + s32 temp_r28 = 0; + s32 var_r29 = 0; + s32 i; + + temp_r28 = HuWinKeyWaitNumGet(arg1); + if (arg2 == -1 || arg2 >= temp_r28 - 1) { + arg2 = temp_r28 - 1; + } + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xFF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesSet(arg0, arg1); + for (i = 0; i < temp_r28; i++) { + var_r29 = 0; + do { + HuPrcVSleep(); + } while (HuWinStatGet(arg0) != 1); + if (i == arg2) { + HuWinAttrSet(arg0, 0x400); + var_r29 = 1; + } + while (TRUE) { + HuPrcVSleep(); + if (var_r29 != 0) { + if (var_r29 == 1 && HuWinStatGet(arg0) != 1) { + var_r29 = 2; + } else if (var_r29 == 2) { + HuPrcSleep(arg3); + HuWinAttrReset(arg0, 0x400); + HuWinKeyWaitEntry(arg0); + break; + } + } else if (HuWinStatGet(arg0) != 1) { + break; + } + } + } + fn_1_6AEC(arg0, 0); + HuWinMesSet(arg0, MAKE_MESSID(37, 4)); + HuWinComKeyReset(); +} + +BOOL fn_1_6D80(s32 arg0) { + s32 var_r31; + s32 i; + + HuWinComKeyReset(); + if (winData[arg0].active_pad == 0xFF) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + var_r31 = HuWinChoiceGet(arg0, 0); + HuWinComKeyReset(); + if (var_r31 != 0) { + var_r31 = FALSE; + } else { + var_r31 = TRUE; + } + return var_r31; +} diff --git a/src/REL/mstory3Dll/result.c b/src/REL/mstory3Dll/result.c new file mode 100755 index 00000000..f9fb785b --- /dev/null +++ b/src/REL/mstory3Dll/result.c @@ -0,0 +1,1617 @@ +#include "REL/mstory3Dll.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/saveload.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ s32 unk0C; + /* 0x10 */ s32 unk10; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ char unk1C[0x18]; + /* 0x34 */ s32 unk34[4][2]; + /* 0x54 */ s32 unk54; + /* 0x58 */ char unk58[4]; + /* 0x5C */ s32 unk5C; + /* 0x60 */ char unk60[4]; + /* 0x64 */ s32 unk64; + /* 0x68 */ char unk68[4]; + /* 0x6C */ s32 unk6C; + /* 0x70 */ char unk70[4]; + /* 0x74 */ s32 unk74; + /* 0x78 */ char unk78[4]; + /* 0x7C */ s32 unk7C; + /* 0x80 */ char unk80[4]; + /* 0x84 */ s32 unk84; + /* 0x88 */ char unk88[4]; + /* 0x8C */ s32 unk8C; + /* 0x90 */ char unk90[4]; +} StructUnk38Bss1A0C; // Size 0x94 + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ s32 unk18; + /* 0x01C */ char unk1C[8]; + /* 0x024 */ s32 unk24; + /* 0x028 */ char unk28[0x10]; + /* 0x038 */ StructUnk38Bss1A0C unk38[4]; + /* 0x288 */ Vec unk288[5]; + /* 0x2C4 */ s32 unk2C4; + /* 0x2C8 */ s32 unk2C8; + /* 0x2CC */ s32 unk2CC; + /* 0x2D0 */ s32 unk2D0; + /* 0x2D4 */ s32 unk2D4; +} StructBss1A0C; // Size 0x2D8 + +void fn_1_15C0C(void); +void fn_1_16ED4(void); +void fn_1_18080(void); +void fn_1_184E8(void); +void fn_1_18558(void); +void fn_1_18F98(void); +void fn_1_19144(void); +void fn_1_19214(void); +void fn_1_194A0(void); +void fn_1_197B4(s32 arg0); +void fn_1_1C2F4(void); +void fn_1_1C460(void); +void fn_1_1CA98(void); +void fn_1_1CB7C(void); +void fn_1_1CC5C(void); +void fn_1_1CD60(void); +void fn_1_1D63C(void); +void fn_1_1D77C(void); +void fn_1_1D964(void); +void fn_1_1DA64(void); +void fn_1_1DAAC(void); +void fn_1_1DE4C(void); + +StructBss1A0C lbl_1_bss_1A0C; +StructBss1530 lbl_1_bss_19E4; +StructBss1530 lbl_1_bss_19BC; +StructBss1530 lbl_1_bss_1994; +StructBss1530 lbl_1_bss_18F4[4]; +AnimData* lbl_1_bss_18EC[2]; +AnimData* lbl_1_bss_18E4[2]; +AnimData* lbl_1_bss_18D8[3]; +s32 lbl_1_bss_18D4; +Process* lbl_1_bss_18D0; + +void fn_1_157F0(Process* arg0, s32 arg1, s32 arg2, s32 arg3) { + s32 var_r31; + + lbl_1_bss_18D0 = arg0; + lbl_1_bss_1A0C.unk00 = arg1; + lbl_1_bss_1A0C.unk08 = GWSystem.max_turn; + arg3 = lbl_1_bss_1A0C.unk14 = fn_1_373C(); + lbl_1_bss_1A0C.unk2D4 = arg2; + lbl_1_bss_1A0C.unk2CC = GWSystem.team; + if (_CheckFlag(FLAG_ID_MAKE(1, 29))) { + lbl_1_bss_1A0C.unk2D0 = 0; + } else { + lbl_1_bss_1A0C.unk2D0 = 1; + } + fn_1_9A0(); + fn_1_37C8(0xFF); + fn_1_290C(lbl_1_bss_18D0, fn_1_1DE4C); + fn_1_15C0C(); + fn_1_197B4(arg3); + fn_1_194A0(); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + HuPrcChildCreate(fn_1_1CC5C, 100, 0x2000, 0, HuPrcCurrentGet()); + } + HuPrcChildCreate(fn_1_19214, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_1DAAC, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_18080, 90, 0x2000, 0, HuPrcCurrentGet()); +} + +void fn_1_159A4(void) { + s32 var_r29; + s32 var_r30; + s32 i; + + for (i = 0; i < 4; i++) { + var_r29 = GWPlayer[i].stars - GWPlayerHandicapGet(i); + if (var_r29 <= 0) { + var_r29 = 0; + } + GWTotalStarsAdd(var_r29); + } + GWBoardPlayCountAdd(lbl_1_bss_1A0C.unk00, 1); + if (lbl_1_bss_1A0C.unk2CC == 1) { + if (lbl_1_bss_1A0C.unk38[0].unk08 == 0) { + GWBoardWinCountInc(lbl_1_bss_1A0C.unk38[0].unk10, lbl_1_bss_1A0C.unk00); + } + if (lbl_1_bss_1A0C.unk38[1].unk08 == 0) { + GWBoardWinCountInc(lbl_1_bss_1A0C.unk38[1].unk10, lbl_1_bss_1A0C.unk00); + } + } else if (lbl_1_bss_1A0C.unk38[0].unk08 == 0) { + GWBoardWinCountInc(lbl_1_bss_1A0C.unk38[0].unk10, lbl_1_bss_1A0C.unk00); + } + for (i = 0; i < 4; i++) { + var_r30 = GWPlayer[i].stars_max - GWPlayerHandicapGet(i); + if (var_r30 <= 0) { + var_r30 = 0; + } + if (GWBoardMaxStarsGet(lbl_1_bss_1A0C.unk00) <= var_r30 && !GWPlayer[i].com) { + GWBoardMaxStarsSet(lbl_1_bss_1A0C.unk00, var_r30); + } + } + for (i = 0; i < 4; i++) { + if (GWBoardMaxCoinsGet(lbl_1_bss_1A0C.unk00) <= GWPlayer[i].coins_max && !GWPlayer[i].com) { + GWBoardMaxCoinsSet(lbl_1_bss_1A0C.unk00, GWPlayer[i].coins_max); + } + } +} + +void fn_1_15C0C(void) { + lbl_1_bss_18EC[0] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 95), MEMORY_DEFAULT_NUM)); + lbl_1_bss_18EC[1] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 96), MEMORY_DEFAULT_NUM)); + lbl_1_bss_18D8[0] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 93), MEMORY_DEFAULT_NUM)); + lbl_1_bss_18D8[1] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 94), MEMORY_DEFAULT_NUM)); + lbl_1_bss_18D8[2] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 97), MEMORY_DEFAULT_NUM)); + lbl_1_bss_18E4[0] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 136), MEMORY_DEFAULT_NUM)); + lbl_1_bss_18E4[1] = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 137), MEMORY_DEFAULT_NUM)); +} + +void fn_1_15D08(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5) { + HuSprPosSet(arg0, arg1, arg2 + arg4 / 2, arg3 + arg5 / 2); +} + +void fn_1_15DC8(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6, s32 arg7) { + s32 var_r31; + s32 temp_r28; + + var_r31 = 0; + if (arg7 < 2) { + if ((temp_r28 = arg2 / 100) == 0) { + if (arg7 != 0) { + var_r31++; + } + HuSprBankSet(arg0, arg1, temp_r28); + fn_1_15D08(arg0, arg1, -1000, -1000, arg5, arg6); + } else { + HuSprBankSet(arg0, arg1, temp_r28); + fn_1_15D08(arg0, arg1, arg3 + arg5 * var_r31, arg4, arg5, arg6); + var_r31++; + } + } else { + arg1--; + } + if ((temp_r28 = (arg2 % 100) / 10) == 0 && arg2 / 100 == 0) { + if (arg7 != 0) { + var_r31++; + } + HuSprBankSet(arg0, arg1 + 1, temp_r28); + fn_1_15D08(arg0, arg1 + 1, -1000, -1000, arg5, arg6); + } else { + HuSprBankSet(arg0, arg1 + 1, temp_r28); + fn_1_15D08(arg0, arg1 + 1, arg3 + arg5 * var_r31, arg4, arg5, arg6); + var_r31++; + } + temp_r28 = arg2 % 10; + HuSprBankSet(arg0, arg1 + 2, temp_r28); + fn_1_15D08(arg0, arg1 + 2, arg3 + arg5 * var_r31, arg4, arg5, arg6); + var_r31++; +} + +void fn_1_161B8(void) { + s32 var_r30 = 16; + s32 var_r29 = 40; + s32 var_r28 = 0; + GXColor sp10 = { 0x00, 0x00, 0x80, 0x80 }; + s32 i; + + while (TRUE) { + fn_1_938(); + if (HuPadBtnDown[0] & PAD_TRIGGER_R) { + var_r28++; + var_r28 %= 2; + } + if (var_r28 == 0) { + continue; + } + printWin(var_r30, var_r29, 220, 150, &sp10); + if (lbl_1_bss_19E4.unk04 == NULL) { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> FALSE"); + } else { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> TRUE"); + } + if (lbl_1_bss_19BC.unk04 == NULL) { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> FALSE"); + } else { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> TRUE"); + } + if (lbl_1_bss_1994.unk04 == NULL) { + print8(var_r30, var_r29 + 20, 1.0f, "PROC_SUB -> FALSE"); + } else { + print8(var_r30, var_r29 + 20, 1.0f, "PROC_SUB -> TRUE"); + } + for (i = 0; i < 4; i++) { + if (lbl_1_bss_18F4[i].unk04 == NULL) { + print8(var_r30, var_r29 + 30 + i * 10, 1.0f, "PROC_PLAYER%d -> FALSE", i); + } else { + print8(var_r30, var_r29 + 30 + i * 10, 1.0f, "PROC_PLAYER%d -> TRUE", i); + } + } + print8(var_r30, var_r29 + 80, 1.0f, "M:%d P:%d W:%d", lbl_1_bss_1A0C.unk00, lbl_1_bss_1A0C.unk04, lbl_1_bss_1A0C.unk14); + print8(var_r30, var_r29 + 100, 1.0f, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (i = 0; i < 4; i++) { + print8(var_r30, var_r29 + 110 + i * 10, 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", i, + lbl_1_bss_1A0C.unk38[i].unk00, lbl_1_bss_1A0C.unk38[i].unk04, lbl_1_bss_1A0C.unk38[i].unk08, + lbl_1_bss_1A0C.unk38[i].unk0C, lbl_1_bss_1A0C.unk38[i].unk14, lbl_1_bss_1A0C.unk38[i].unk10); + } + } +} + +void fn_1_16574(void) { + fn_1_958(30); + fn_1_16ED4(); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + do { + fn_1_938(); + } while (WipeStatGet() != 0); + fn_1_958(60); +} + +void fn_1_165C8(void) { + s32 sp8[5]; + s32 i; + + for (i = 0; i < 5; i++) { + sp8[i] = 0; + fn_1_1E28(lbl_1_bss_1994.unk00, i * 3 + 1, i * 3 + 2, 0, 1); + Hu3DData[lbl_1_bss_1994.unk00->model[i * 3 + 1]].rot.y = -90.0f; + } + do { + fn_1_938(); + for (i = 0; i < 5; i++) { + if (sp8[i] == 0) { + lbl_1_bss_1A0C.unk288[i].x -= 5.0f; + if (i == 0) { + if (lbl_1_bss_1A0C.unk288[i].x <= -175.0f) { + sp8[i] = 1; + lbl_1_bss_1A0C.unk288[i].x = -175.0f; + fn_1_1E28(lbl_1_bss_1994.unk00, i * 3 + 1, i * 3 + 1, 15, 1); + } + } else { + if (lbl_1_bss_1A0C.unk288[i].x <= -240.0f) { + sp8[i] = 1; + lbl_1_bss_1A0C.unk288[i].x = -240.0f; + fn_1_1E28(lbl_1_bss_1994.unk00, i * 3 + 1, i * 3 + 1, 15, 1); + } + } + } else if (sp8[i] == 1) { + Hu3DData[lbl_1_bss_1994.unk00->model[i * 3 + 1]].rot.y = fn_1_5FC(Hu3DData[lbl_1_bss_1994.unk00->model[i * 3 + 1]].rot.y, 17.5f, 10.0f); + if (Hu3DData[lbl_1_bss_1994.unk00->model[i * 3 + 1]].rot.y >= 14.9f) { + sp8[i] = 2; + } + } + } + for (i = 0; i < 5; i++) { + if (sp8[i] != 2) { + break; + } + } + } while (i != 5); + lbl_1_bss_1A0C.unk0C = fn_1_1834(MAKE_MESSID(38, 12), 0); +} + +s32 fn_1_16924(void) { + s32 var_r31; + s32 var_r30; + + var_r31 = 0; + var_r30 = 0; + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1A0C.unk14 != -1) { + if (HuPadBtnDown[lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14] & PAD_BUTTON_A) { + HuAudFXPlay(0x1C); + break; + } else if (HuPadBtnDown[lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14] & PAD_BUTTON_MENU) { + HuAudFXPlay(1); + var_r31 = 1; + break; + } + } else if (var_r30++ >= 300) { + var_r31 = 1; + break; + } + } + if (var_r31 == 0) { + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_CROSS, 1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } + fn_1_1A24(lbl_1_bss_1A0C.unk0C); + fn_1_1C460(); + fn_1_1CA98(); + fn_1_18558(); + fn_1_18F98(); + fn_1_1D77C(); + fn_1_1D964(); + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_CROSS, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } + lbl_1_bss_1A0C.unk10 = fn_1_1834(-1, 1); + } +} + +void fn_1_16AD4(void) { + lbl_1_bss_1A0C.unk24 = 1; + fn_1_1D44(lbl_1_bss_1A0C.unk10, MAKE_MESSID(38, lbl_1_bss_1A0C.unk2C8)); + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1A0C.unk24++ > 5 && (HuPadBtnDown[lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14] & PAD_BUTTON_B)) { + HuAudFXPlay(3); + break; + } + if (HuPadStkX[lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14] >= 5 || (HuPadBtn[lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14] & PAD_BUTTON_RIGHT)) { + if (lbl_1_bss_1A0C.unk2C8 != 11) { + lbl_1_bss_1A0C.unk24 = 0; + } + lbl_1_bss_1A0C.unk2C4++; + if (lbl_1_bss_1A0C.unk2C4 >= 6) { + lbl_1_bss_1A0C.unk2C4 = 5; + } + lbl_1_bss_1A0C.unk2C8++; + if (lbl_1_bss_1A0C.unk2C8 >= 12) { + lbl_1_bss_1A0C.unk2C8 = 11; + } else { + fn_1_1CD60(); + fn_1_1D44(lbl_1_bss_1A0C.unk10, MAKE_MESSID(38, lbl_1_bss_1A0C.unk2C8)); + HuAudFXPlay(0); + fn_1_958(10); + } + } + if (HuPadStkX[lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14] <= -5 || (HuPadBtn[lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14] & PAD_BUTTON_LEFT)) { + if (lbl_1_bss_1A0C.unk2C8 != 0) { + lbl_1_bss_1A0C.unk24 = 0; + } + lbl_1_bss_1A0C.unk2C4--; + if (lbl_1_bss_1A0C.unk2C4 < 0) { + lbl_1_bss_1A0C.unk2C4 = 0; + } + lbl_1_bss_1A0C.unk2C8--; + if (lbl_1_bss_1A0C.unk2C8 < 0) { + lbl_1_bss_1A0C.unk2C8 = 0; + } else { + fn_1_1CD60(); + fn_1_1D44(lbl_1_bss_1A0C.unk10, MAKE_MESSID(38, lbl_1_bss_1A0C.unk2C8)); + HuAudFXPlay(0); + fn_1_958(10); + } + } + } + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_CROSS, 1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } + fn_1_1A24(lbl_1_bss_1A0C.unk10); + fn_1_1CB7C(); + fn_1_1C2F4(); + fn_1_19144(); + fn_1_184E8(); + fn_1_1DA64(); + fn_1_1D63C(); + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_CROSS, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } + lbl_1_bss_1A0C.unk0C = fn_1_1834(MAKE_MESSID(38, 12), 0); +} + +void fn_1_16ED4(void) { + s32 var_r30; + s32 i; + + for (i = 0; i < 5; i++) { + if (i == 0) { + lbl_1_bss_1A0C.unk288[i].x = 1800.0f; + lbl_1_bss_1A0C.unk288[i].y = 157.5f; + } else if (lbl_1_bss_1A0C.unk2CC == 1) { + if (i <= 2) { + var_r30 = 0; + } else { + var_r30 = 2; + } + lbl_1_bss_1A0C.unk288[i].x = 900.0f - 100.0f * var_r30; + lbl_1_bss_1A0C.unk288[i].y = 75.0f - 82.5f * (i - 1); + } else { + lbl_1_bss_1A0C.unk288[i].x = 900.0f - 100.0f * i; + lbl_1_bss_1A0C.unk288[i].y = 75.0f - 82.5f * (i - 1); + } + } + lbl_1_bss_1A0C.unk2C4 = 0; + lbl_1_bss_1A0C.unk2C8 = 0; + fn_1_1CB7C(); + fn_1_1C2F4(); + fn_1_19144(); + fn_1_184E8(); + fn_1_1DA64(); + fn_1_1D63C(); +} + +void fn_1_1712C(void) { + s32 temp_r3; + + Hu3DAllKill(); + HuSprClose(); + HuSprInit(); + if (SLSaveFlagGet() == 0) { + saveExecF = 0; + lbl_1_bss_18D4 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } + } + espInit(); + HuPrcVSleep(); + temp_r3 = espEntry(DATA_MAKE_NUM(DATADIR_WIN, 32), 5000, 0); + espPosSet(temp_r3, 288.0f, 240.0f); + espAttrReset(temp_r3, 4); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + fn_1_159A4(); + if (saveExecF == 1) { + GWGameStat.party_continue = 0; + } + SLCommonSet(); + if (SLSaveFlagGet() == 1) { + SLSave(); + } + saveExecF = 0; + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_18D4 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_1728C(void) { + float sp8[2]; + s32 temp_r30 = 1; + s32 var_r29; + s32 var_r31; + + Hu3DAllKill(); + HuSprClose(); + HuSprInit(); + if (SLSaveFlagGet() == 0) { + lbl_1_bss_18D4 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } + } + espInit(); + HuPrcVSleep(); + espPosSet(var_r29 = espEntry(DATA_MAKE_NUM(DATADIR_WIN, 32), 5000, 0), 288.0f, 240.0f); + espAttrReset(var_r29, HUSPR_ATTR_DISPOFF); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + if (SLSaveFlagGet() == 1) { + HuWinInit(1); + HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(30, 22)); + var_r31 = HuWinExCreateStyled(-10000.0f, 150.0f, sp8[0], sp8[1], -1, 2); + winData[var_r31].active_pad = 1; + HuWinAttrSet(var_r31, 0x10); + HuWinExAnimIn(var_r31); + HuWinMesSet(var_r31, MAKE_MESSID(30, 22)); + temp_r30 = HuWinChoiceGet(var_r31, 0); + HuWinExAnimOut(var_r31); + HuWinExCleanup(var_r31); + if (SLSaveFlagGet() == 1 && temp_r30 == 0) { + SLCommonSet(); + SLSaveBoardStory(); + SLSave(); + } + } + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20); + while (WipeStatGet() != 0) { + HuPrcVSleep(); + } + lbl_1_bss_18D4 = 1; + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +s32 fn_1_17484(s32 arg0) { + if (arg0 == 0 && _CheckFlag(FLAG_ID_MAKE(0, 2))) { + return 1; + } + if (arg0 == 1 && _CheckFlag(FLAG_ID_MAKE(0, 3))) { + return 1; + } + if (arg0 == 2 && _CheckFlag(FLAG_ID_MAKE(0, 4))) { + return 1; + } + if (arg0 == 3 && _CheckFlag(FLAG_ID_MAKE(0, 5))) { + return 1; + } + if (arg0 == 4 && _CheckFlag(FLAG_ID_MAKE(0, 6))) { + return 1; + } + if (arg0 == 5 && _CheckFlag(FLAG_ID_MAKE(0, 7))) { + return 1; + } + return 0; +} + +void fn_1_17570(void) { + s32 var_r30; + s32 i; + + var_r30 = 0; + WipeColorSet(0, 0, 0); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + do { + fn_1_938(); + } while (WipeStatGet() != 0); + CharModelKill(-1); + HuAudSeqAllFadeOut(1000); + HuAudSStreamAllFadeOut(1000); + lbl_1_bss_19E4.unk04 = NULL; + lbl_1_bss_19BC.unk04 = NULL; + lbl_1_bss_1994.unk04 = NULL; + for (i = 0; i < 4; i++) { + lbl_1_bss_18F4[i].unk04 = NULL; + } + if (GWPartyGet() == 1) { + HuPrcChildCreate(fn_1_1712C, 100, 0x2000, 0, HuPrcCurrentGet()); + do { + fn_1_938(); + } while (lbl_1_bss_18D4 != 1); + fn_1_958(30); + omOvlReturnEx(1, 1); + } else { + fn_1_159A4(); + for (i = 0; i < 4; i++) { + if (lbl_1_bss_1A0C.unk38[i].unk10 != GWUnkB1Get()) { + continue; + } + _SetFlag(9); + switch (lbl_1_bss_1A0C.unk00) { + case 0: + if (_CheckFlag(2) == 0) { + _SetFlag(2); + var_r30 = 1; + } + break; + case 1: + if (_CheckFlag(3) == 0) { + _SetFlag(3); + var_r30 = 1; + } + break; + case 2: + if (_CheckFlag(4) == 0) { + _SetFlag(4); + var_r30 = 1; + } + break; + case 3: + if (_CheckFlag(5) == 0) { + _SetFlag(5); + var_r30 = 1; + } + break; + case 4: + if (_CheckFlag(6) == 0) { + _SetFlag(6); + var_r30 = 1; + } + break; + case 5: + if (_CheckFlag(7) == 0) { + _SetFlag(7); + var_r30 = 1; + } + break; + } + if (var_r30 == 1) { + if (lbl_1_bss_1A0C.unk38[i].unk18 == 0) { + if (lbl_1_bss_1A0C.unk00 == 5) { + GWGameStat.open_w06 = 1; + } + _ClearFlag(9); + OSReport("########## Next to BoardClear Event 10 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, _CheckFlag(2), _CheckFlag(9)); + fn_1_958(120); + HuPrcChildCreate(fn_1_1728C, 100, 0x2000, 0, HuPrcCurrentGet()); + do { + fn_1_938(); + } while (lbl_1_bss_18D4 != 1); + if (lbl_1_bss_1A0C.unk00 != 5) { + omOvlGotoEx(OVL_MSTORY, 1, 0, 0); + } else { + omOvlGotoEx(OVL_MSTORY2, 1, 1, 0); + } + } else { + switch (lbl_1_bss_1A0C.unk00) { + case 0: + _ClearFlag(2); + break; + case 1: + _ClearFlag(3); + break; + case 2: + _ClearFlag(4); + break; + case 3: + _ClearFlag(5); + break; + case 4: + _ClearFlag(6); + break; + case 5: + _ClearFlag(7); + break; + } + OSReport("########## Next to BoardMiss Event 01 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_17484(GWSystem.board), _CheckFlag(9)); + fn_1_958(120); + HuPrcChildCreate(fn_1_1728C, 100, 0x2000, 0, HuPrcCurrentGet()); + do { + fn_1_938(); + } while (lbl_1_bss_18D4 != 1); + if (lbl_1_bss_1A0C.unk00 != 5) { + omOvlGotoEx(OVL_MSTORY, 1, 1, 0); + } else { + omOvlGotoEx(OVL_MSTORY2, 1, 2, 0); + } + } + } else { + GWPlayerCfg->group = 0; + GWPlayerCfg->character = lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk10; + GWPlayerCfg->pad_idx = lbl_1_bss_1A0C.unk38[lbl_1_bss_1A0C.unk04].unk14; + GWPlayerCfg->iscom = 0; + for (i = 0; i < 4; i++) { + GWPlayer[i].character = GWPlayerCfg[i].character; + GWPlayer[i].port = GWPlayerCfg[i].pad_idx; + GWPlayer[i].com = GWPlayerCfg[i].iscom; + GWPlayer[i].team = GWPlayerCfg[i].group; + } + OSReport("########## Next to MapSelect Event 11 -> MapNo:%d, MapFlg:%d, MgFlg:%d\n", GWSystem.board, fn_1_17484(GWSystem.board), _CheckFlag(9)); + fn_1_958(120); + HuPrcChildCreate(fn_1_1728C, 100, 0x2000, 0, HuPrcCurrentGet()); + do { + fn_1_938(); + } while (lbl_1_bss_18D4 != 1); + omOvlGotoEx(OVL_MENT, 1, 10, 0); + } + } + } + while (TRUE) { + fn_1_938(); + } +} + +void fn_1_17DC0(omObjData* arg0, StructBss1530* arg1) { + fn_1_16574(); + fn_1_165C8(); + while (TRUE) { + fn_1_938(); + if (fn_1_16924() != 0) { + break; + } + fn_1_16AD4(); + } + fn_1_17570(); + arg1->unk04 = 0; +} + +void fn_1_18080(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_18D0, 0x100, 0x10, 0x10, -1, NULL); + lbl_1_bss_19E4.unk00 = temp_r3; + lbl_1_bss_19E4.unk04 = (void*) fn_1_17DC0; + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_19E4.unk04 != NULL) { + lbl_1_bss_19E4.unk04(temp_r3, &lbl_1_bss_19E4); + } + } +} + +void fn_1_1811C(omObjData* arg0, s32 arg1) { + s32 var_r29; + s32 i; + + arg0->work[0] = HuSprGrpCreate(1); + var_r29 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 75) + arg1, MEMORY_DEFAULT_NUM)), 1000, 0); + HuSprGrpMemberSet(arg0->work[0], 0, var_r29); + // TODO: figure out the actual args of this fn_1_15D08 call. + // It will match as long as the values (arg2 + arg4 / 2) and (arg3 + arg5 / 2) are preserved. + fn_1_15D08(arg0->work[0], 0, 288, 240, 0, 0); + HuSprGrpPosSet(arg0->work[0], 0.0f, 0.0f); + HuSprGrpDrawNoSet(arg0->work[0], 0x7F); + { + s32 spC[] = { + DATA_MAKE_NUM(DATADIR_MSTORY3, 104), + DATA_MAKE_NUM(DATADIR_MSTORY3, 105), + DATA_MAKE_NUM(DATADIR_MSTORY3, 106), + DATA_MAKE_NUM(DATADIR_MSTORY3, 107), + DATA_MAKE_NUM(DATADIR_MSTORY3, 108), + DATA_MAKE_NUM(DATADIR_MSTORY3, 109), + DATA_MAKE_NUM(DATADIR_MSTORY3, 106) + }; + + for (i = 0; i < 7; i++) { + arg0->model[i + 1] = Hu3DModelCreateFile(spC[i]); + Hu3DModelPosSet(arg0->model[i + 1], -122.5 + 42.5 * i, 185.0f, -10.0f); + Hu3DModelRotSet(arg0->model[i + 1], 0.0f, 1980.0f, 0.0f); + } + } +} + +void fn_1_18334(omObjData* arg0, s32* arg1) { + s32 sp8 = 0; + s32 i; + + for (i = 0; i < 7; i++) { + if (arg1[2] == 0 && Hu3DData[arg0->model[i + 1]].pos.x >= lbl_1_bss_1A0C.unk288[0].x) { + Hu3DData[arg0->model[i + 1]].rot.y = fn_1_5FC(Hu3DData[arg0->model[i + 1]].rot.y, 0.0f, 20.0f); + } else if (arg1[2] == 1 && Hu3DData[arg0->model[i + 1]].pos.x <= lbl_1_bss_1A0C.unk288[0].x) { + Hu3DData[arg0->model[i + 1]].rot.y = fn_1_5FC(Hu3DData[arg0->model[i + 1]].rot.y, 1980.0f, 20.0f); + } + } +} + +void fn_1_184E8(void) { + s32 i; + + for (i = 0; i < 7; i++) { + Hu3DModelAttrReset(lbl_1_bss_19BC.unk00->model[i + 1], HU3D_ATTR_DISPOFF); + } + lbl_1_bss_19BC.unk04 = (void*) fn_1_18334; +} + +void fn_1_18558(void) { + s32 i; + + for (i = 0; i < 7; i++) { + Hu3DModelAttrSet(lbl_1_bss_19BC.unk00->model[i + 1], HU3D_ATTR_DISPOFF); + } + for (i = 0; i < 7; i++) { + if (lbl_1_bss_19BC.unk08 != 0) { + Hu3DData[lbl_1_bss_19BC.unk00->model[i + 1]].rot.y = 1980.0f; + } else { + Hu3DData[lbl_1_bss_19BC.unk00->model[i + 1]].rot.y = 0.0f; + } + } + lbl_1_bss_19BC.unk04 = NULL; +} + +void fn_1_18668(omObjData* arg0, s32 arg1) { + s32 var_r30; + s32 i; + + // TODO: figure out the actual args of fn_1_15D08 calls. + // It will match as long as the values (arg2 + arg4 / 2) and (arg3 + arg5 / 2) are preserved. + arg0->work[1] = HuSprGrpCreate(8); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 116), MEMORY_DEFAULT_NUM)), 900, 0); + HuSprGrpMemberSet(arg0->work[1], 0, var_r30); + fn_1_15D08(arg0->work[1], 0, 368, 171, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 117), MEMORY_DEFAULT_NUM)), 600, 0); + HuSprGrpMemberSet(arg0->work[1], 1, var_r30); + fn_1_15D08(arg0->work[1], 1, 292, 168, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 118), MEMORY_DEFAULT_NUM)), 500, 0); + HuSprGrpMemberSet(arg0->work[1], 2, var_r30); + fn_1_15D08(arg0->work[1], 2, 292, 168, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 119), MEMORY_DEFAULT_NUM)), 500, 0); + HuSprGrpMemberSet(arg0->work[1], 3, var_r30); + fn_1_15D08(arg0->work[1], 3, 292, 168, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(arg1 + DATA_MAKE_NUM(DATADIR_MSTORY3, 110), MEMORY_DEFAULT_NUM)), 500, 0); + HuSprGrpMemberSet(arg0->work[1], 4, var_r30); + fn_1_15D08(arg0->work[1], 4, 96, 53, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 138), MEMORY_DEFAULT_NUM)), 500, 0); + HuSprGrpMemberSet(arg0->work[1], 5, var_r30); + fn_1_15D08(arg0->work[1], 5, 407, 37, 0, 0); + for (i = 0; i < 2; i++) { + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 139), MEMORY_DEFAULT_NUM)), 500, 0); + HuSprGrpMemberSet(arg0->work[1], i + 6, var_r30); + } + // TODO: figure out the actual value of arg7. It will match as long as arg7 >= 2. + fn_1_15DC8(arg0->work[1], 6, lbl_1_bss_1A0C.unk08, 293, 19, 36, 36, 2); + arg0->work[2] = HuSprGrpCreate(2); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 120), MEMORY_DEFAULT_NUM)), 800, 0); + HuSprGrpMemberSet(arg0->work[2], 0, var_r30); + fn_1_15D08(arg0->work[2], 0, 34, 119, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 121), MEMORY_DEFAULT_NUM)), 400, 0); + HuSprGrpMemberSet(arg0->work[2], 1, var_r30); + fn_1_15D08(arg0->work[2], 1, 36, 121, 0, 0); + arg0->work[3] = HuSprGrpCreate(12); + for (i = 0; i < 12; i++) { + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(i + DATA_MAKE_NUM(DATADIR_MSTORY3, 124), MEMORY_DEFAULT_NUM)), 700, 0); + HuSprGrpMemberSet(arg0->work[3], i, var_r30); + fn_1_15D08(arg0->work[3], i, i * 66, 16, 58, 0); + } + HuSprGrpPosSet(arg0->work[2], 164 + lbl_1_bss_1A0C.unk2C4 * 66, 78.0f); + HuSprGrpDrawNoSet(arg0->work[1], 0x7F); + HuSprGrpDrawNoSet(arg0->work[2], 0x7F); + HuSprGrpDrawNoSet(arg0->work[3], 0x7F); +} + +void fn_1_18CFC(omObjData* arg0) { + float temp_f31; + float var_f30; + s32 var_r29; + s32 var_r28; + s32 var_r30; + + var_r28 = lbl_1_bss_1A0C.unk2C8 - lbl_1_bss_1A0C.unk2C4; + if (var_r28 < 0) { + var_r28 = 0; + } + temp_f31 = HuSprGrpData[arg0->work[2]].x; + var_f30 = 164 + lbl_1_bss_1A0C.unk2C4 * 66; + temp_f31 = fn_1_5FC(temp_f31, var_f30, 2.0f); + HuSprGrpPosSet(arg0->work[1], -5.0f, 25.0f); + HuSprGrpPosSet(arg0->work[2], temp_f31, 78.0f); + HuSprGrpPosSet(arg0->work[3], 169 - var_r28 * 66, 82.0f); + for (var_r30 = 0; var_r30 < 12; var_r30++) { + if (var_r30 < var_r28 || var_r30 > var_r28 + 5) { + HuSprAttrSet(arg0->work[3], var_r30, HUSPR_ATTR_DISPOFF); + } else { + HuSprAttrReset(arg0->work[3], var_r30, HUSPR_ATTR_DISPOFF); + } + } + var_r29 = lbl_1_bss_1A0C.unk2C8 - lbl_1_bss_1A0C.unk2C4; + if (var_r29 < 0) { + var_r29 = 0; + } + if (var_r29 == 0) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 2, 2); + } else if (var_r29 == 1) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 2, 0); + } + if (var_r29 == 6) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 3, 2); + } else if (var_r29 == 5) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 3, 0); + } +} + +void fn_1_18F98(void) { + s32 var_r30; + s32 i; + + for (i = 0; i < 8; i++) { + HuSprAttrReset(lbl_1_bss_19BC.unk00->work[1], i, HUSPR_ATTR_DISPOFF); + } + for (i = 0; i < 2; i++) { + HuSprAttrReset(lbl_1_bss_19BC.unk00->work[2], i, HUSPR_ATTR_DISPOFF); + } + for (i = 0; i < 12; i++) { + HuSprAttrReset(lbl_1_bss_19BC.unk00->work[3], i, HUSPR_ATTR_DISPOFF); + } + var_r30 = lbl_1_bss_1A0C.unk2C8 - lbl_1_bss_1A0C.unk2C4; + if (var_r30 < 0) { + var_r30 = 0; + } + if (var_r30 == 0) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 2, 2); + } else if (var_r30 == 1) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 2, 0); + } + if (var_r30 == 6) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 3, 2); + } else if (var_r30 == 5) { + HuSprBankSet(lbl_1_bss_19BC.unk00->work[1], 3, 0); + } + lbl_1_bss_19BC.unk04 = (void*) fn_1_18CFC; +} + +void fn_1_19144(void) { + s32 i; + + for (i = 0; i < 8; i++) { + HuSprAttrSet(lbl_1_bss_19BC.unk00->work[1], i, HUSPR_ATTR_DISPOFF); + } + for (i = 0; i < 2; i++) { + HuSprAttrSet(lbl_1_bss_19BC.unk00->work[2], i, HUSPR_ATTR_DISPOFF); + } + for (i = 0; i < 12; i++) { + HuSprAttrSet(lbl_1_bss_19BC.unk00->work[3], i, HUSPR_ATTR_DISPOFF); + } + lbl_1_bss_19BC.unk04 = NULL; +} + +void fn_1_19214(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_18D0, 0x100, 0x10, 0x10, -1, NULL); + lbl_1_bss_19BC.unk00 = temp_r3; + lbl_1_bss_19BC.unk04 = NULL; + fn_1_1811C(temp_r3, lbl_1_bss_1A0C.unk00); + fn_1_18668(temp_r3, lbl_1_bss_1A0C.unk00); + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_19BC.unk04 != NULL) { + lbl_1_bss_19BC.unk04(temp_r3, &lbl_1_bss_19BC); + } + } +} + +void fn_1_194A0(void) { + s32 var_r29; + s32 i; + s32 j; + + for (i = 0; i < 12; i++) { + var_r29 = 0; + for (j = 0; j < 4; j++) { + if (var_r29 <= lbl_1_bss_1A0C.unk38[j].unk34[i][0]) { + var_r29 = lbl_1_bss_1A0C.unk38[j].unk34[i][0]; + } + } + if (var_r29 > 0) { + for (j = 0; j < 4; j++) { + if (var_r29 == lbl_1_bss_1A0C.unk38[j].unk34[i][0]) { + lbl_1_bss_1A0C.unk38[j].unk34[i][1] = 1; + } + } + } + } +} + +void fn_1_19590(StructUnk38Bss1A0C* arg0, s32 arg1, s32 arg2) { + arg0->unk00 = arg1; + arg0->unk04 = GWPlayerCfg[arg0->unk00].group; + arg0->unk08 = GWPlayerCfg[arg0->unk00].iscom; + arg0->unk0C = GWPlayerCfg[arg0->unk00].diff; + arg0->unk10 = GWPlayerCfg[arg0->unk00].character; + arg0->unk14 = GWPlayerCfg[arg0->unk00].pad_idx; + arg0->unk18 = GWPlayer[arg0->unk00].rank; + arg0->unk34[0][0] = GWPlayer[arg0->unk00].stars; + arg0->unk34[1][0] = GWPlayer[arg0->unk00].coins; + arg0->unk34[2][0] = GWPlayer[arg0->unk00].coins_mg; + arg0->unk34[3][0] = GWPlayer[arg0->unk00].coins_max; + arg0->unk54 = GWPlayer[arg0->unk00].blue_count; + arg0->unk5C = GWPlayer[arg0->unk00].red_count; + arg0->unk64 = GWPlayer[arg0->unk00].question_count; + arg0->unk6C = GWPlayer[arg0->unk00].fortune_count; + arg0->unk74 = GWPlayer[arg0->unk00].bowser_count; + arg0->unk7C = GWPlayer[arg0->unk00].battle_count; + arg0->unk84 = GWPlayer[arg0->unk00].mushroom_count; + arg0->unk8C = GWPlayer[arg0->unk00].warp_count; +} + +void fn_1_197B4(s32 arg0) { + s32 sp74[4][2]; + s32 sp54[4][2]; + s32 sp44[4]; + s32 sp34[4]; + s32 sp24[4]; + s32 var_r28; + s32 var_r29; + s32 j; + s32 i; + + var_r28 = 0; + sp44[0] = 0; + for (i = 1; i < 4; i++) { + sp44[i] = sp44[i - 1] + 1; + if (sp44[i] >= 4) { + sp44[i] = 0; + } + } + for (i = 0; i < 4; i++) { + sp34[i] = GWPlayer[sp44[i]].rank; + } + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + if (i == sp34[j]) { + sp74[var_r28][0] = sp44[j]; + sp74[var_r28][1] = sp34[j]; + var_r28++; + } + } + } + if (lbl_1_bss_1A0C.unk2CC == 1) { + var_r29 = lbl_1_bss_1A0C.unk2D0; + for (i = 0; i < 4; i++) { + sp24[0] = GWPlayer[sp74[0][0]].team; + sp24[1] = GWPlayer[sp74[1][0]].team; + sp24[2] = GWPlayer[sp74[2][0]].team; + sp24[3] = GWPlayer[sp74[3][0]].team; + sp54[i][0] = sp74[i][0]; + sp54[i][1] = sp74[i][1]; + } + OSReport("########## Sort Start WIN:%d IDX (%d,%d,%d), (%d,%d,%d), (%d,%d,%d), (%d,%d,%d)\n", var_r29, + sp24[0], sp74[0][0], sp74[0][1], sp24[1], sp74[1][0], sp74[1][1], + sp24[2], sp74[2][0], sp74[2][1], sp24[3], sp74[3][0], sp74[3][1]); + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + if (sp24[j] != -1 && var_r29 == sp24[j]) { + sp24[j] = -1; + sp74[i][0] = sp54[j][0]; + sp74[i][1] = sp54[j][1]; + break; + } + } + if (i == 1) { + var_r29++; + var_r29 %= 2; + } + } + OSReport("########## Sort End WIN:%d IDX %d, %d, %d, %d\n", var_r29, sp74[0][0], sp74[1][0], sp74[2][0], sp74[3][0]); + OSReport("########## Sort End RANK %d, %d, %d, %d,\n", sp74[0][1], sp74[1][1], sp74[2][1], sp74[3][1]); + } + for (i = 0; i < 4; i++) { + fn_1_19590(&lbl_1_bss_1A0C.unk38[i], sp74[i][0], sp74[i][1]); + if (arg0 == sp74[i][0]) { + lbl_1_bss_1A0C.unk04 = i; + } + } +} + +void fn_1_1A008(omObjData* arg0, s32 arg1) { + s32 spDC; + s32 spD8; + s32 spD4; + s32 spD0; + s32 spCC; + s32 spC8; + StructUnk38Bss1A0C* temp_r27; + s32 var_r30; + s32 var_r29; + s32 var_r28; + + // TODO: figure out the actual args of fn_1_15D08 calls. + // It will match as long as the values (arg2 + arg4 / 2) and (arg3 + arg5 / 2) are preserved. + temp_r27 = &lbl_1_bss_1A0C.unk38[arg1]; + if (lbl_1_bss_1A0C.unk2CC == 1) { + spD4 = lbl_1_bss_1A0C.unk2D0; + if (arg1 > 1) { + spD4++; + spD4 %= 2; + } + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 140) + spD4); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 142) + spD4); + arg0->motion[2] = Hu3DMotionIDGet(arg0->model[2]); + if (arg1 <= 1) { + spD4 = 0; + } else { + spD4 = 1; + } + arg0->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 100) + spD4); + Hu3DModelHookSet(arg0->model[1], "results_flag04-hook_cubes", arg0->model[3]); + } else { + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 98)); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 99)); + arg0->motion[2] = Hu3DMotionIDGet(arg0->model[2]); + arg0->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 100) + temp_r27->unk18); + Hu3DModelHookSet(arg0->model[1], "results_flag04-hook_cubes", arg0->model[3]); + } + arg0->work[0] = HuSprGrpCreate(12); + if (lbl_1_bss_1A0C.unk2CC == 1) { + spD0 = 35; + spCC = 10; + spC8 = 65; + if (arg1 <= 1) { + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 81), MEMORY_DEFAULT_NUM)), 900, 0); + } else { + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 82), MEMORY_DEFAULT_NUM)), 900, 0); + } + HuSprGrpMemberSet(arg0->work[0], 0, var_r30); + fn_1_15D08(arg0->work[0], 0, 40, spD0 + 36, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 85) + temp_r27->unk10, MEMORY_DEFAULT_NUM)), 900, 0); + HuSprGrpMemberSet(arg0->work[0], 1, var_r30); + if (arg1 % 2 == 0) { + fn_1_15D08(arg0->work[0], 1, 119, spD0 + 34, 0, 0); + } else { + fn_1_15D08(arg0->work[0], 1, 189, -spD0 + 24, 0, 0); + } + var_r30 = HuSprCreate(lbl_1_bss_18D8[0], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 2, var_r30); + fn_1_15D08(arg0->work[0], 2, 262, spCC + 29, 0, 0); + var_r30 = HuSprCreate(lbl_1_bss_18D8[2], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 3, var_r30); + fn_1_15D08(arg0->work[0], 3, 312, spCC + 29, 0, 0); + for (var_r28 = 0; var_r28 < 3; var_r28++) { + spDC = lbl_1_bss_1A0C.unk38[0].unk34[0][0] + lbl_1_bss_1A0C.unk38[1].unk34[0][0]; + spD8 = lbl_1_bss_1A0C.unk38[2].unk34[0][0] + lbl_1_bss_1A0C.unk38[3].unk34[0][0]; + if (arg1 <= 1) { + if (spDC >= spD8) { + var_r30 = HuSprCreate(lbl_1_bss_18EC[1], 900, 0); + } else { + var_r30 = HuSprCreate(lbl_1_bss_18EC[0], 900, 0); + } + } else { + if (spDC <= spD8) { + var_r30 = HuSprCreate(lbl_1_bss_18EC[1], 900, 0); + } else { + var_r30 = HuSprCreate(lbl_1_bss_18EC[0], 900, 0); + } + } + HuSprGrpMemberSet(arg0->work[0], var_r28 + 4, var_r30); + } + if (arg1 <= 1) { + var_r29 = lbl_1_bss_1A0C.unk38[0].unk34[0][0] + lbl_1_bss_1A0C.unk38[1].unk34[0][0]; + if (var_r29 >= 999) { + var_r29 = 999; + } + fn_1_15DC8(arg0->work[0], 4, var_r29, 340, spCC + 11, 26, 36, 0); + } else { + var_r29 = lbl_1_bss_1A0C.unk38[2].unk34[0][0] + lbl_1_bss_1A0C.unk38[3].unk34[0][0]; + if (var_r29 >= 999) { + var_r29 = 999; + } + fn_1_15DC8(arg0->work[0], 4, var_r29, 340, spCC + 11, 26, 36, 0); + } + var_r30 = HuSprCreate(lbl_1_bss_18D8[1], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 7, var_r30); + fn_1_15D08(arg0->work[0], 7, 262, spC8 + 29, 0, 0); + var_r30 = HuSprCreate(lbl_1_bss_18D8[2], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 8, var_r30); + fn_1_15D08(arg0->work[0], 8, 312, spC8 + 29, 0, 0); + for (var_r28 = 0; var_r28 < 3; var_r28++) { + spDC = lbl_1_bss_1A0C.unk38[0].unk34[1][0] + lbl_1_bss_1A0C.unk38[1].unk34[1][0]; + spD8 = lbl_1_bss_1A0C.unk38[2].unk34[1][0] + lbl_1_bss_1A0C.unk38[3].unk34[1][0]; + if (arg1 <= 1) { + if (spDC >= spD8) { + var_r30 = HuSprCreate(lbl_1_bss_18EC[1], 900, 0); + } else { + var_r30 = HuSprCreate(lbl_1_bss_18EC[0], 900, 0); + } + } else { + if (spDC <= spD8) { + var_r30 = HuSprCreate(lbl_1_bss_18EC[1], 900, 0); + } else { + var_r30 = HuSprCreate(lbl_1_bss_18EC[0], 900, 0); + } + } + HuSprGrpMemberSet(arg0->work[0], var_r28 + 9, var_r30); + } + if (arg1 <= 1) { + var_r29 = lbl_1_bss_1A0C.unk38[0].unk34[1][0] + lbl_1_bss_1A0C.unk38[1].unk34[1][0]; + if (var_r29 >= 999) { + var_r29 = 999; + } + fn_1_15DC8(arg0->work[0], 9, var_r29, 340, spC8 + 11, 26, 36, 0); + } else { + var_r29 = lbl_1_bss_1A0C.unk38[2].unk34[1][0] + lbl_1_bss_1A0C.unk38[3].unk34[1][0]; + if (var_r29 >= 999) { + var_r29 = 999; + } + fn_1_15DC8(arg0->work[0], 9, var_r29, 340, spC8 + 11, 26, 36, 0); + } + } else { + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 81) + temp_r27->unk18, MEMORY_DEFAULT_NUM)), 900, 0); + HuSprGrpMemberSet(arg0->work[0], 0, var_r30); + fn_1_15D08(arg0->work[0], 0, 25, 37, 0, 0); + var_r30 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 85) + temp_r27->unk10, MEMORY_DEFAULT_NUM)), 900, 0); + HuSprGrpMemberSet(arg0->work[0], 1, var_r30); + fn_1_15D08(arg0->work[0], 1, 87, 29, 0, 0); + var_r30 = HuSprCreate(lbl_1_bss_18D8[0], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 2, var_r30); + fn_1_15D08(arg0->work[0], 2, 144, 29, 0, 0); + var_r30 = HuSprCreate(lbl_1_bss_18D8[2], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 3, var_r30); + fn_1_15D08(arg0->work[0], 3, 178, 29, 0, 0); + for (var_r28 = 0; var_r28 < 3; var_r28++) { + var_r30 = HuSprCreate(lbl_1_bss_18EC[temp_r27->unk34[0][1]], 900, 0); + HuSprGrpMemberSet(arg0->work[0], (var_r28 + 4), var_r30); + } + fn_1_15DC8(arg0->work[0], 4, temp_r27->unk34[0][0], 190, 11, 26, 36, 0); + var_r30 = HuSprCreate(lbl_1_bss_18D8[1], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 7, var_r30); + fn_1_15D08(arg0->work[0], 7, 304, 29, 0, 0); + var_r30 = HuSprCreate(lbl_1_bss_18D8[2], 900, 0); + HuSprGrpMemberSet(arg0->work[0], 8, var_r30); + fn_1_15D08(arg0->work[0], 8, 338, 29, 0, 0); + for (var_r28 = 0; var_r28 < 3; var_r28++) { + var_r30 = HuSprCreate(lbl_1_bss_18EC[temp_r27->unk34[1][1]], 900, 0); + HuSprGrpMemberSet(arg0->work[0], var_r28 + 9, var_r30); + } + fn_1_15DC8(arg0->work[0], 9, temp_r27->unk34[1][0], 350, 11, 26, 36, 0); + } + lbl_1_bss_18F4[var_r28].unk14 = 1000 + rand8() * 5; +} + +void fn_1_1BEFC(omObjData* arg0, StructBss1530* arg1) { + Mtx sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + s32 var_r29; + + if (lbl_1_bss_1A0C.unk2CC == 1) { + if (arg1->unk08 % 2 == 1) { + Hu3DModelAttrSet(arg0->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(arg0->model[3], HU3D_ATTR_DISPOFF); + for (var_r29 = 0; var_r29 < 12; var_r29++) { + HuSprAttrSet(arg0->work[0], var_r29, 4); + } + } + HuSprAttrReset(arg0->work[0], 1, HUSPR_ATTR_DISPOFF); + Hu3DModelPosSet(arg0->model[1], lbl_1_bss_1A0C.unk288[arg1->unk08 + 1].x + 15.0f, lbl_1_bss_1A0C.unk288[arg1->unk08 + 1].y + 25.0f - 35.0f, lbl_1_bss_1A0C.unk288[arg1->unk08 + 1].z); + } else { + Hu3DModelPosSet(arg0->model[1], lbl_1_bss_1A0C.unk288[arg1->unk08 + 1].x + 15.0f, lbl_1_bss_1A0C.unk288[arg1->unk08 + 1].y + 25.0f, lbl_1_bss_1A0C.unk288[arg1->unk08 + 1].z); + } + if (Hu3DData[arg0->model[1]].pos.x <= -195.0f) { + Hu3DData[arg0->model[1]].pos.x = -195.0f; + } + Hu3DModelObjMtxGet(arg0->model[1], "results_flag04-hook_flag", sp2C); + Hu3DModelPosSet(arg0->model[2], sp2C[0][3], sp2C[1][3], sp2C[2][3]); + if (arg1->unk0C++ >= arg1->unk14) { + arg1->unk0C = 0; + arg1->unk14 = rand8() * 5 + 1000; + fn_1_1E28(arg0, 2, 2, 0, 0); + } + Hu3DModelRotSet(arg0->model[3], 0.0f, arg1->unk10 += 3, 0.0f); + if (arg1->unk10 >= 360) { + arg1->unk10 -= 360; + } + sp8.x = Hu3DData[arg0->model[1]].pos.x; + sp8.y = lbl_1_bss_1A0C.unk288[arg1->unk08 + 1].y + 25.0f; + sp8.z = Hu3DData[arg0->model[1]].pos.z; + sp20.x = sp8.x + 24.0f; + sp20.y = sp8.y + 40.0f; + sp20.z = sp8.z; + Hu3D3Dto2D(&sp20, 1, &sp14); + HuSprGrpPosSet(arg0->work[0], sp14.x, sp14.y); +} + +void fn_1_1C2F4(void) { + s32 var_r30; + s32 var_r31; + + for (var_r30 = 0; var_r30 < 4; var_r30++) { + for (var_r31 = 0; var_r31 < 3; var_r31++) { + Hu3DModelAttrReset(lbl_1_bss_18F4[var_r30].unk00->model[var_r31 + 1], HU3D_ATTR_DISPOFF); + } + if (lbl_1_bss_1A0C.unk2CC == 1) { + if (var_r30 % 2 == 0) { + for (var_r31 = 0; var_r31 < 12; var_r31++) { + HuSprAttrReset(lbl_1_bss_18F4[var_r30].unk00->work[0], var_r31, HUSPR_ATTR_DISPOFF); + } + } + HuSprAttrReset(lbl_1_bss_18F4[var_r30].unk00->work[0], 1, HUSPR_ATTR_DISPOFF); + } else { + for (var_r31 = 0; var_r31 < 12; var_r31++) { + HuSprAttrReset(lbl_1_bss_18F4[var_r30].unk00->work[0], var_r31, HUSPR_ATTR_DISPOFF); + } + } + lbl_1_bss_18F4[var_r30].unk04 = (void*) fn_1_1BEFC; + } +} + +void fn_1_1C460(void) { + s32 var_r30; + s32 var_r31; + + for (var_r30 = 0; var_r30 < 4; var_r30++) { + for (var_r31 = 0; var_r31 < 3; var_r31++) { + Hu3DModelAttrSet(lbl_1_bss_18F4[var_r30].unk00->model[var_r31 + 1], HU3D_ATTR_DISPOFF); + } + for (var_r31 = 0; var_r31 < 12; var_r31++) { + HuSprAttrSet(lbl_1_bss_18F4[var_r30].unk00->work[0], var_r31, HUSPR_ATTR_DISPOFF); + } + lbl_1_bss_18F4[var_r30].unk04 = NULL; + } +} + +void fn_1_1C534(omObjData* arg0, s32 arg1) { + StructUnk38Bss1A0C* temp_r25; + s32 var_r22; + s32 i; + s32 j; + + temp_r25 = &lbl_1_bss_1A0C.unk38[arg1]; + arg0->work[1] = HuSprGrpCreate(1); + var_r22 = HuSprCreate(HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MSTORY3, 122), MEMORY_DEFAULT_NUM)), 700, 0); + HuSprGrpMemberSet(arg0->work[1], 0, var_r22); + HuSprBankSet(arg0->work[1], 0, temp_r25->unk10); + // TODO: figure out the actual args of this fn_1_15D08 call. + // It will match as long as the values (arg2 + arg4 / 2) and (arg3 + arg5 / 2) are preserved. + fn_1_15D08(arg0->work[1], 0, 66, 21, 0, 0); + arg0->work[2] = HuSprGrpCreate(0x24); + for (i = 0; i < 12; i++) { + for (j = 0; j < 3; j++) { + var_r22 = HuSprCreate(lbl_1_bss_18E4[temp_r25->unk34[i][1]], 700, 0); + HuSprGrpMemberSet(arg0->work[2], j + i * 3, var_r22); + } + fn_1_15DC8(arg0->work[2], i * 3, temp_r25->unk34[i][0], i * 66, 0, 20, 32, 1); + } + HuSprGrpDrawNoSet(arg0->work[1], 0x7F); + HuSprGrpDrawNoSet(arg0->work[2], 0x7F); +} + +void fn_1_1C914(omObjData* arg0, StructBss1530* arg1) { + s32 i; + s32 j; + s32 var_r28; + + var_r28 = lbl_1_bss_1A0C.unk2C8 - lbl_1_bss_1A0C.unk2C4; + if (var_r28 < 0) { + var_r28 = 0; + } + HuSprGrpPosSet(arg0->work[1], 17.0f, arg1->unk08 * 48 + 118); + HuSprGrpPosSet(arg0->work[2], 169 - var_r28 * 66, arg1->unk08 * 48 + 123); + for (i = 0; i < 12; i++) { + for (j = 0; j < 3; j++) { + if (i < var_r28 || i > var_r28 + 5) { + HuSprAttrSet(arg0->work[2], j + i * 3, HUSPR_ATTR_DISPOFF); + } else { + HuSprAttrReset(arg0->work[2], j + i * 3, HUSPR_ATTR_DISPOFF); + } + } + } +} + +void fn_1_1CA98(void) { + s32 i, j, k; + + for (i = 0; i < 4; i++) { + HuSprAttrReset(lbl_1_bss_18F4[i].unk00->work[1], 0, HUSPR_ATTR_DISPOFF); + for (j = 0; j < 12; j++) { + for (k = 0; k < 3; k++) { + HuSprAttrReset(lbl_1_bss_18F4[i].unk00->work[2], k + j * 3, HUSPR_ATTR_DISPOFF); + } + } + lbl_1_bss_18F4[i].unk04 = (void*) fn_1_1C914; + } +} + +void fn_1_1CB7C(void) { + s32 i, j, k; + + for (i = 0; i < 4; i++) { + HuSprAttrSet(lbl_1_bss_18F4[i].unk00->work[1], 0, HUSPR_ATTR_DISPOFF); + for (j = 0; j < 12; j++) { + for (k = 0; k < 3; k++) { + HuSprAttrSet(lbl_1_bss_18F4[i].unk00->work[2], k + j * 3, HUSPR_ATTR_DISPOFF); + } + } + lbl_1_bss_18F4[i].unk04 = NULL; + } +} + +void fn_1_1CC5C(void) { + omObjData* temp_r3; + s32 temp_r31; + + temp_r31 = lbl_1_bss_1A0C.unk18++; + temp_r3 = omAddObjEx(lbl_1_bss_18D0, 0x100, 0x10, 0x10, -1, NULL); + lbl_1_bss_18F4[temp_r31].unk00 = temp_r3; + lbl_1_bss_18F4[temp_r31].unk04 = NULL; + lbl_1_bss_18F4[temp_r31].unk08 = temp_r31; + fn_1_1A008(temp_r3, temp_r31); + fn_1_1C534(temp_r3, temp_r31); + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_18F4[temp_r31].unk04 != NULL) { + lbl_1_bss_18F4[temp_r31].unk04(temp_r3, &lbl_1_bss_18F4[temp_r31]); + } + } +} + +void fn_1_1CD60(void) { + if (lbl_1_bss_1994.unk00->work[0] != 1) { + fn_1_1E28(lbl_1_bss_1994.unk00, 4, 6, 15, 0); + lbl_1_bss_1994.unk00->work[0] = 1; + lbl_1_bss_1994.unk00->work[1] = 4; + lbl_1_bss_1994.unk00->work[2] = 16; + } +} + +void fn_1_1CDF0(omObjData* arg0) { + s32 sp20[] = { + DATA_MAKE_NUM(DATADIR_MSTORY3, 46), + DATA_MAKE_NUM(DATADIR_MSTORY3, 40), + DATA_MAKE_NUM(DATADIR_MSTORY3, 52), + DATA_MAKE_NUM(DATADIR_MSTORY3, 58), + DATA_MAKE_NUM(DATADIR_MSTORY3, 64) + }; + s32 sp34[][3] = { + { DATA_MAKE_NUM(DATADIR_MSTORY3, 47), DATA_MAKE_NUM(DATADIR_MSTORY3, 48), DATA_MAKE_NUM(DATADIR_MSTORY3, 49) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 41), DATA_MAKE_NUM(DATADIR_MSTORY3, 42), DATA_MAKE_NUM(DATADIR_MSTORY3, 43) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 53), DATA_MAKE_NUM(DATADIR_MSTORY3, 54), DATA_MAKE_NUM(DATADIR_MSTORY3, 55) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 59), DATA_MAKE_NUM(DATADIR_MSTORY3, 60), DATA_MAKE_NUM(DATADIR_MSTORY3, 61) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 65), DATA_MAKE_NUM(DATADIR_MSTORY3, 66), DATA_MAKE_NUM(DATADIR_MSTORY3, 67) } + }; + s32 i; + + for (i = 0; i < 5; i++) { + arg0->model[i * 3 + 1] = Hu3DModelCreateFile(sp20[i]); + arg0->motion[i * 3 + 1] = Hu3DJointMotionFile(arg0->model[i * 3 + 1], sp34[i][0]); + arg0->motion[i * 3 + 2] = Hu3DJointMotionFile(arg0->model[i * 3 + 1], sp34[i][1]); + arg0->motion[i * 3 + 3] = Hu3DJointMotionFile(arg0->model[i * 3 + 1], sp34[i][2]); + Hu3DModelRotSet(arg0->model[i * 3 + 1], 17.5f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[i * 3 + 1], 0.575f, 0.575f, 0.575f); + fn_1_1E28(arg0, i * 3 + 1, i * 3 + 1, 0, 1); + { + s32 sp8[] = { 9, 14, 10, 11, 12, 13 }; + + if (i != 3) { + CharModelEffectNpcInit(arg0->model[i * 3 + 1], arg0->motion[i * 3 + 2], 1, sp8[i]); + CharModelEffectEnableSet(sp8[i], 0); + } + } + } +} + +void fn_1_1D124(omObjData* arg0, StructBss1530* arg1) { + s32 i; + + for (i = 0; i < 5; i++) { + Hu3DModelPosSet(arg0->model[i * 3 + 1], lbl_1_bss_1A0C.unk288[i].x, lbl_1_bss_1A0C.unk288[i].y, lbl_1_bss_1A0C.unk288[i].z); + if (i == 3) { + Hu3DData[arg0->model[i * 3 + 1]].pos.y += 20.0f; + } + } + if (arg1->unk08++ >= 3000) { + arg1->unk08 = 0; + arg1->unk0C = 1; + lbl_1_bss_19BC.unk08++; + lbl_1_bss_19BC.unk08 %= 2; + fn_1_1E28(lbl_1_bss_1994.unk00, 1, 2, 15, 1); + } + if (arg1->unk0C == 1) { + lbl_1_bss_1A0C.unk288[0].x += -5.0f + 10.0f * lbl_1_bss_19BC.unk08; + if (lbl_1_bss_19BC.unk08 != 0) { + Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y = fn_1_5FC(Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y, 90.0f, 5.0f); + if (lbl_1_bss_1A0C.unk288[0].x >= 185.0f) { + arg1->unk0C = 2; + lbl_1_bss_1A0C.unk288[0].x = 185.0f; + fn_1_1E28(lbl_1_bss_1994.unk00, 1, 1, 15, 1); + } + } else { + Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y = fn_1_5FC(Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y, -90.0f, 5.0f); + if (lbl_1_bss_1A0C.unk288[0].x <= -175.0f) { + arg1->unk0C = 2; + lbl_1_bss_1A0C.unk288[0].x = -175.0f; + fn_1_1E28(lbl_1_bss_1994.unk00, 1, 1, 15, 1); + } + } + } else if (arg1->unk0C == 2) { + if (lbl_1_bss_19BC.unk08 != 0) { + Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y = fn_1_5FC(Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y, -15.0f, 15.0f); + if (Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y <= -14.9f) { + arg1->unk0C = 0; + } + } else { + Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y = fn_1_5FC(Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y, 15.0f, 15.0f); + if (Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y >= 14.9f) { + arg1->unk0C = 0; + } + } + } +} + +void fn_1_1D63C(void) { + s32 i; + + for (i = 0; i < 5; i++) { + Hu3DModelAttrReset(lbl_1_bss_1994.unk00->model[(i * 3) + 1], HU3D_ATTR_DISPOFF); + } + Hu3DModelRotSet(lbl_1_bss_1994.unk00->model[4], 17.5f, 15.0f, 0.0f); + Hu3DModelScaleSet(lbl_1_bss_1994.unk00->model[4], 0.575f, 0.575f, 0.575f); + fn_1_1E28(lbl_1_bss_1994.unk00, 4, 4, 0, 1); + lbl_1_bss_1994.unk00->work[0] = lbl_1_bss_1994.unk00->work[1] = lbl_1_bss_1994.unk00->work[2] = 0; + lbl_1_bss_1994.unk04 = (void*) fn_1_1D124; +} + +void fn_1_1D77C(void) { + s32 i; + + for (i = 0; i < 5; i++) { + Hu3DModelAttrSet(lbl_1_bss_1994.unk00->model[i * 3 + 1], HU3D_ATTR_DISPOFF); + } + fn_1_1E28(lbl_1_bss_1994.unk00, 1, 1, 0, 1); + if (lbl_1_bss_19BC.unk08 != 0) { + lbl_1_bss_1A0C.unk288[0].x = 185.0f; + Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y = -15.0f; + } else { + lbl_1_bss_1A0C.unk288[0].x = -175.0f; + Hu3DData[lbl_1_bss_1994.unk00->model[1]].rot.y = 15.0f; + } + lbl_1_bss_1994.unk0C = 0; + lbl_1_bss_1994.unk04 = NULL; +} + +void fn_1_1D8CC(omObjData* arg0, StructBss1530* arg1) { + if (arg0->work[0] != 0) { + if (arg0->work[2] != 0) { + arg0->work[2]--; + return; + } + if (arg0->work[2] == 0 && Hu3DMotionEndCheck(arg0->model[4])) { + fn_1_1E28(arg0, 4, arg0->work[1], 15, 1); + arg0->work[0] = arg0->work[1] = arg0->work[2] = 0; + } + } +} + +void fn_1_1D964(void) { + Hu3DModelAttrReset(lbl_1_bss_1994.unk00->model[4], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(lbl_1_bss_1994.unk00->model[4], -185.0f, -225.0f, 0.0f); + Hu3DModelRotSet(lbl_1_bss_1994.unk00->model[4], 0.0f, 15.0f, 0.0f); + Hu3DModelScaleSet(lbl_1_bss_1994.unk00->model[4], 1.0f, 1.0f, 1.0f); + lbl_1_bss_1994.unk04 = (void*) fn_1_1D8CC; +} + +void fn_1_1DA64(void) { + Hu3DModelAttrSet(lbl_1_bss_1994.unk00->model[4], HU3D_ATTR_DISPOFF); + lbl_1_bss_1994.unk04 = NULL; +} + +void fn_1_1DAAC(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_18D0, 0x100, 0x10, 0x10, -1, NULL); + lbl_1_bss_1994.unk00 = temp_r3; + lbl_1_bss_1994.unk04 = NULL; + fn_1_1CDF0(temp_r3); + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1994.unk04 != NULL) { + lbl_1_bss_1994.unk04(temp_r3, &lbl_1_bss_1994); + } + } +} + +void fn_1_1DE4C(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 0.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20.x = 0.0f; + var_r31->unk20.y = 0.0f; + var_r31->unk20.z = 0.0f; + var_r31->unk38 = 650.0f; +} diff --git a/src/REL/mstory3Dll/result_seq.c b/src/REL/mstory3Dll/result_seq.c new file mode 100755 index 00000000..b4aa06c9 --- /dev/null +++ b/src/REL/mstory3Dll/result_seq.c @@ -0,0 +1,2928 @@ +#include "REL/mstory3Dll.h" +#include "game/chrman.h" +#include "game/data.h" +#include "game/esprite.h" +#include "game/flag.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "msm/msmse.h" + +#include "ext_math.h" + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ char unk08[0xC]; +} StructUnk24Bss1580; // Size 0x14 + +typedef struct { + /* 0x00 */ StructFn352C unk00; + /* 0x34 */ char unk34[0x60]; +} StructUnkC4Bss1580; // Size 0x94 + +typedef struct { + /* 0x000 */ s32 unk00; + /* 0x004 */ s32 unk04; + /* 0x008 */ s32 unk08; + /* 0x00C */ s32 unk0C; + /* 0x010 */ s32 unk10; + /* 0x014 */ s32 unk14; + /* 0x018 */ s32 unk18; + /* 0x01C */ s32 unk1C; + /* 0x020 */ s32 unk20; + /* 0x024 */ StructUnk24Bss1580 unk24[4]; + /* 0x074 */ char unk74[0x50]; + /* 0x0C4 */ StructUnkC4Bss1580 unkC4[4]; + /* 0x314 */ s32 unk314; + /* 0x318 */ char unk318[0xC]; + /* 0x324 */ s32 unk324; + /* 0x328 */ char unk328[0xC]; + /* 0x334 */ s32 unk334[1]; // array length unknown + /* 0x338 */ char unk338[0xC]; + /* 0x344 */ s32 unk344; + /* 0x348 */ s32 unk348; + /* 0x34C */ char unk34C[4]; +} StructBss1580; // Size 0x350 + +typedef struct { + /* 0x00 */ s32 unk00; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 unk08; + /* 0x0C */ char unk0C[4]; + /* 0x10 */ float unk10; + /* 0x14 */ float unk14; + /* 0x18 */ float unk18; + /* 0x1C */ char unk1C[4]; + /* 0x20 */ float unk20; + /* 0x24 */ float unk24; + /* 0x28 */ float unk28; + /* 0x2C */ float unk2C; + /* 0x30 */ float unk30; + /* 0x34 */ float unk34; +} StructBssC8; // Size 0x38 + +void fn_1_7E88(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); +void fn_1_82E0(void); +s32 fn_1_B670(void); +void fn_1_D48C(void); +void fn_1_D718(omObjData* arg0); +void fn_1_D7D8(omObjData* arg0); +void fn_1_FE80(void); +void fn_1_FF7C(s32 arg0); +void fn_1_1036C(omObjData* arg0); +void fn_1_10D74(omObjData* arg0); +void fn_1_11794(omObjData* arg0); +void fn_1_11834(omObjData* arg0); +void fn_1_123D8(omObjData* arg0); +void fn_1_1241C(omObjData* arg0); +void fn_1_12420(omObjData* arg0); +void fn_1_12A98(s32 arg0); +void fn_1_12C08(s32 arg0); +void fn_1_12DAC(void); +void fn_1_13908(void); +void fn_1_130A8(void); +void fn_1_1317C(void); +void fn_1_13A38(omObjData* arg0); +void fn_1_13A3C(s32 arg0, s32 arg1, s32 arg2, s32 arg3); +void fn_1_13C78(s32 arg0, s32 arg1, s32 arg2); +void fn_1_13D38(s32 arg0, s32 arg1, s32 arg2); +void fn_1_140A0(void); +void fn_1_15450(s32 arg0); + +StructBss1580 lbl_1_bss_1580; +StructBss1530 lbl_1_bss_1558; +StructBss1530 lbl_1_bss_1530; +StructBss1530 lbl_1_bss_1490[4]; +StructBss1530 lbl_1_bss_1468; +s32 lbl_1_bss_1458[4]; +s32 lbl_1_bss_1448[4]; +s32 lbl_1_bss_1438[4]; +s32 lbl_1_bss_1428[4]; +float lbl_1_bss_1424; +s32 lbl_1_bss_1420; +float lbl_1_bss_1408[3][2]; +StructBssC8 lbl_1_bss_C8[88]; +float lbl_1_bss_C4; +float lbl_1_bss_C0; +float lbl_1_bss_BC; +s32 lbl_1_bss_B8; +s32 lbl_1_bss_B4; +float lbl_1_bss_B0; +float lbl_1_bss_AC; +Process* lbl_1_bss_A8; +s32 lbl_1_bss_68[16]; +u8 lbl_1_bss_5C[0xC]; // unused +s32 lbl_1_bss_58; + +Vec lbl_1_data_130[] = { + { -300.0f, 0.0f, 460.0f }, + { -100.0f, 0.0f, 460.0f }, + { 100.0f, 0.0f, 460.0f }, + { 300.0f, 0.0f, 460.0f } +}; + +HsfanimStruct00 lbl_1_data_160 = { + 60, { 0, 0 }, + 1000.0f, 0.0f, 180.0f, + { 0.0f, -0.009f, 0.0f }, + 30.0f, 0.9f, 20.0f, 0.99f, 4, + { + { 0xFF, 0xFF, 0x00, 0xFF }, + { 0xFF, 0xFF, 0x20, 0xFF }, + { 0xFF, 0xFF, 0x80, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF } + }, + { + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 } + } +}; + +HsfanimStruct00 lbl_1_data_1B0 = { + 60, { 0, 0 }, + 1000.0f, 0.0f, 180.0f, + { 0.0f, -0.009f, 0.0f }, + 30.0f, 0.9f, 20.0f, 0.99f, 4, + { + { 0xFF, 0xFF, 0x00, 0xFF }, + { 0xFF, 0xFF, 0x20, 0xFF }, + { 0xFF, 0xFF, 0x80, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF } + }, + { + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 } + } +}; + +HsfanimStruct00 lbl_1_data_200 = { + 500, { 0, 0 }, + 0.25f, 0.0f, 30.0f, + { 0.0f, -0.009f, 0.001f }, + 30.0f, 0.9f, 20.0f, 0.999f, 4, + { + { 0xFF, 0xFF, 0x00, 0xFF }, + { 0xFF, 0xFF, 0x20, 0xFF }, + { 0xFF, 0xFF, 0x80, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF } + }, + { + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 } + } +}; + +void fn_1_6E34(Process* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + s32 var_r31; + + lbl_1_bss_A8 = arg0; + lbl_1_bss_1580.unk00 = arg1; + lbl_1_bss_1580.unk04 = arg2; + if (arg3 == 1) { + lbl_1_bss_1580.unk08 = 0; + } else { + lbl_1_bss_1580.unk08 = 1; + lbl_1_bss_1580.unk04 = 1; + } + lbl_1_bss_1580.unk14 = fn_1_36E4(); + lbl_1_bss_1580.unk344 = GWSystem.team; + _ClearFlag(FLAG_ID_MAKE(1, 29)); + lbl_1_bss_1580.unk348 = -1; + fn_1_9A0(); + fn_1_290C(lbl_1_bss_A8, fn_1_82E0); + lbl_1_bss_1580.unk1C = fn_1_37C8(lbl_1_bss_1580.unk20 = 0xFF); + fn_1_FF7C(arg4); + fn_1_38B4(); + fn_1_12DAC(); + HuPrcChildCreate(fn_1_FE80, 100, 0x2000, 0, HuPrcCurrentGet()); + HuPrcChildCreate(fn_1_140A0, 100, 0x2000, 0, HuPrcCurrentGet()); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + HuPrcChildCreate(fn_1_13908, 200, 0x2000, 0, HuPrcCurrentGet()); + } + HuPrcChildCreate(fn_1_D48C, 100, 0x2000, 0, HuPrcCurrentGet()); +} + +void fn_1_7004(s32 arg0, s32 arg1, s32 arg2) { + s32 sp1C[4]; + s32 spC[4]; + s32 temp_r27; + s32 var_r26; + s32 var_r30; + s32 var_r31; + + temp_r27 = lbl_1_bss_1580.unk20; + var_r26 = arg0; + lbl_1_bss_1530.unk04 = (void*) fn_1_D718; + for (var_r30 = 0; var_r30 < 4; var_r30++) { + lbl_1_bss_1490[var_r30].unk04 = (void*) fn_1_1241C; + } + lbl_1_bss_1468.unk04 = (void*) fn_1_13A38; + if (arg2 != 0) { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + sp1C[var_r31] = lbl_1_bss_1490[var_r31].unk00->work[0]; + spC[var_r31] = 0xFF; + } + } + for (var_r30 = 0; var_r30 < arg1; var_r30++) { + fn_1_938(); + lbl_1_bss_1580.unk20 = fn_1_5D4(temp_r27, var_r26, var_r30, arg1); + Hu3DGLightColorSet(lbl_1_bss_1580.unk1C, lbl_1_bss_1580.unk20, lbl_1_bss_1580.unk20, lbl_1_bss_1580.unk20, 0xFF); + if (arg2 != 0) { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_7E88(sp1C[var_r31], spC[var_r31], var_r30, arg1, var_r31); + } + } + } + if (arg2 != 0) { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk00->work[0] = 0; + lbl_1_bss_1490[var_r31].unk00->work[1] = 0; + Hu3DModelAttrSet(lbl_1_bss_1490[var_r31].unk00->model[6], 1); + Hu3DLLightColorSet(lbl_1_bss_1490[var_r31].unk00->model[1], lbl_1_bss_1580.unk24[var_r31].unk00, 0, 0, 0, 0xFF); + Hu3DLLightColorSet(lbl_1_bss_1490[var_r31].unk00->model[2], lbl_1_bss_1580.unk24[var_r31].unk04, 0, 0, 0, 0xFF); + } + } + lbl_1_bss_1530.unk04 = NULL; + for (var_r30 = 0; var_r30 < 4; var_r30++) { + lbl_1_bss_1490[var_r30].unk04 = NULL; + } + lbl_1_bss_1468.unk04 = NULL; +} + +void fn_1_7398(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { + float temp_f31; + float temp_f30; + s32 sp10; + s32 spC; + s32 temp_r29; + s32 var_r28; + + sp10 = lbl_1_bss_1490[arg2].unk00->work[0]; + spC = arg0; + Hu3DModelPosSet(lbl_1_bss_1490[arg2].unk00->model[6], lbl_1_data_130[arg2].x, 500.0f + lbl_1_data_130[arg2].y + lbl_1_bss_AC, lbl_1_data_130[arg2].z + 0.1f * lbl_1_bss_AC); + Hu3DModelScaleSet(lbl_1_bss_1490[arg2].unk00->model[6], 0.0f, 1.25f, 0.0f); + Hu3DModelTPLvlSet(lbl_1_bss_1490[arg2].unk00->model[6], 0.0f); + Hu3DModelAttrReset(lbl_1_bss_1490[arg2].unk00->model[6], 1); + Hu3DModelPosSet(lbl_1_bss_1490[arg3].unk00->model[6], lbl_1_data_130[arg3].x, 500.0f + lbl_1_data_130[arg3].y + lbl_1_bss_AC, lbl_1_data_130[arg3].z + 0.1f * lbl_1_bss_AC); + Hu3DModelScaleSet(lbl_1_bss_1490[arg3].unk00->model[6], 0.0f, 1.25f, 0.0f); + Hu3DModelTPLvlSet(lbl_1_bss_1490[arg3].unk00->model[6], 0.0f); + Hu3DModelAttrReset(lbl_1_bss_1490[arg3].unk00->model[6], 1); + for (var_r28 = 0; var_r28 <= arg1; var_r28++) { + fn_1_938(); + temp_f31 = fn_1_6F4(0.0f, 1.5f, var_r28, arg1); + temp_f30 = fn_1_6F4(0.0f, 0.5f, var_r28, arg1); + temp_r29 = fn_1_6F4(0.0f, 128.0f, var_r28, arg1); + Hu3DModelScaleSet(lbl_1_bss_1490[arg2].unk00->model[6], temp_f31, 1.25f, temp_f31); + Hu3DModelTPLvlSet(lbl_1_bss_1490[arg2].unk00->model[6], temp_f30); + Hu3DModelScaleSet(lbl_1_bss_1490[arg3].unk00->model[6], temp_f31, 1.25f, temp_f31); + Hu3DModelTPLvlSet(lbl_1_bss_1490[arg3].unk00->model[6], temp_f30); + Hu3DLLightColorSet(lbl_1_bss_1490[arg2].unk00->model[1], lbl_1_bss_1580.unk24[arg2].unk00, temp_r29, temp_r29, temp_r29, 0xFF); + Hu3DLLightColorSet(lbl_1_bss_1490[arg2].unk00->model[2], lbl_1_bss_1580.unk24[arg2].unk04, temp_r29, temp_r29, temp_r29, 0xFF); + Hu3DLLightColorSet(lbl_1_bss_1490[arg3].unk00->model[1], lbl_1_bss_1580.unk24[arg3].unk00, temp_r29, temp_r29, temp_r29, 0xFF); + Hu3DLLightColorSet(lbl_1_bss_1490[arg3].unk00->model[2], lbl_1_bss_1580.unk24[arg3].unk04, temp_r29, temp_r29, temp_r29, 0xFF); + } + lbl_1_bss_1490[arg2].unk00->work[1] = 1; + lbl_1_bss_1490[arg3].unk00->work[1] = 1; +} + +void fn_1_79D8(s32 arg0, s32 arg1, s32 arg2) { + float temp_f31; + float temp_f30; + s32 temp_r27; + s32 var_r26; + s32 temp_r29; + s32 var_r30; + + temp_r27 = lbl_1_bss_1490[arg2].unk00->work[0]; + var_r26 = arg0; + Hu3DModelPosSet(lbl_1_bss_1490[arg2].unk00->model[6], lbl_1_data_130[arg2].x, 500.0f + lbl_1_data_130[arg2].y + lbl_1_bss_AC, lbl_1_data_130[arg2].z + 0.1f * lbl_1_bss_AC); + Hu3DModelScaleSet(lbl_1_bss_1490[arg2].unk00->model[6], 0.0f, 1.25f, 0.0f); + Hu3DModelTPLvlSet(lbl_1_bss_1490[arg2].unk00->model[6], 0.0f); + Hu3DModelAttrReset(lbl_1_bss_1490[arg2].unk00->model[6], 1); + for (var_r30 = 0; var_r30 <= arg1; var_r30++) { + fn_1_938(); + lbl_1_bss_1490[arg2].unk00->work[0] = fn_1_6F4(temp_r27, var_r26, var_r30, arg1); + temp_f31 = fn_1_6F4(0.0f, 1.5f, var_r30, arg1); + temp_f30 = fn_1_6F4(0.0f, 0.5f, var_r30, arg1); + temp_r29 = fn_1_6F4(0.0f, 128.0f, var_r30, arg1); + Hu3DModelScaleSet(lbl_1_bss_1490[arg2].unk00->model[6], temp_f31, 1.25f, temp_f31); + Hu3DModelTPLvlSet(lbl_1_bss_1490[arg2].unk00->model[6], temp_f30); + Hu3DLLightColorSet(lbl_1_bss_1490[arg2].unk00->model[1], lbl_1_bss_1580.unk24[arg2].unk00, temp_r29, temp_r29, temp_r29, 0xFF); + Hu3DLLightColorSet(lbl_1_bss_1490[arg2].unk00->model[2], lbl_1_bss_1580.unk24[arg2].unk04, temp_r29, temp_r29, temp_r29, 0xFF); + } + lbl_1_bss_1490[arg2].unk00->work[1] = 1; +} + +void fn_1_7E88(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) { + float var_f31; + s32 temp_r31; + + if (lbl_1_bss_1490[arg4].unk00->work[1] != 0) { + lbl_1_bss_1490[arg4].unk00->work[0] = fn_1_5D4(arg0, arg1, arg2, arg3); + var_f31 = fn_1_5D4(0.5f, 0.0f, arg2, arg3); + Hu3DModelTPLvlSet(lbl_1_bss_1490[arg4].unk00->model[6], var_f31); + temp_r31 = fn_1_5D4(128.0f, 0.0f, arg2, arg3); + Hu3DLLightColorSet(lbl_1_bss_1490[arg4].unk00->model[1], lbl_1_bss_1580.unk24[arg4].unk00, temp_r31, temp_r31, temp_r31, 0xFF); + Hu3DLLightColorSet(lbl_1_bss_1490[arg4].unk00->model[2], lbl_1_bss_1580.unk24[arg4].unk04, temp_r31, temp_r31, temp_r31, 0xFF); + } +} + +s32 fn_1_814C(s32 arg0) { + s32 var_r31; + + if (arg0 == 0) { + var_r31 = Hu3DParManCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 1)), 100, &lbl_1_data_160); + } else if (arg0 == 1) { + var_r31 = Hu3DParManCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 1)), 500, &lbl_1_data_1B0); + } else if (arg0 == 2) { + var_r31 = Hu3DParManCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 1)), 250, &lbl_1_data_200); + } + if (arg0 != 2) { + Hu3DParManTimeLimitSet(var_r31, 60); + Hu3DParManAttrSet(var_r31, 4 | 0x40); + Hu3DParticleBlendModeSet(Hu3DParManModelIDGet(var_r31), 1); + } else { + Hu3DParManAttrSet(var_r31, 4 | 0x40); + } + return var_r31; +} + +s32 fn_1_8264(void) { + return fn_1_814C(0); +} + +void fn_1_82E0(void) { + StructBss4* var_r31; + + var_r31 = &lbl_1_bss_4; + var_r31->unk08.x = 0.0f; + var_r31->unk08.y = 125.0f; + var_r31->unk08.z = 0.0f; + var_r31->unk20.x = -5.0f; + var_r31->unk20.y = 0.0f; + var_r31->unk20.z = 0.0f; + var_r31->unk38 = 1750.0f; +} + +void fn_1_836C(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 170.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1700.0f; + fn_1_514C(var_r31, &sp8, var_r31->unk40++, 60.0f, 30.0f); +} + +void fn_1_845C(void) { + StructBss4* var_r31 = &lbl_1_bss_4; + StructBss4 sp28; + float sp8[] = { + 530.0f, 530.0f, 540.0f, 530.0f, + 530.0f, 580.0f, 540.0f, 630.0f + }; + + if (lbl_1_bss_1580.unk344 == 1) { + if (lbl_1_bss_1580.unk348 == 0) { + sp28.unk08.x = 100.0f + Hu3DData[lbl_1_bss_1490[0].unk00->model[1]].pos.x; + } else { + sp28.unk08.x = 100.0f + Hu3DData[lbl_1_bss_1490[2].unk00->model[1]].pos.x; + } + } else { + sp28.unk08.x = Hu3DData[lbl_1_bss_1490[lbl_1_bss_1458[1]].unk00->model[1]].pos.x; + lbl_1_bss_B4 = lbl_1_bss_1580.unkC4[lbl_1_bss_1458[1]].unk00.unk10; + } + if (lbl_1_bss_1580.unk344 == 1) { + sp28.unk08.y = 570.0f; + sp28.unk08.z = -700.0f; + sp28.unk20.x = 15.0f; + sp28.unk20.y = 0.0f; + sp28.unk20.z = 0.0f; + sp28.unk38 = 1750.0f; + fn_1_4CC0(var_r31, &sp28, var_r31->unk40++, 120.0f); + } else { + sp28.unk08.y = sp8[lbl_1_bss_B4]; + sp28.unk08.z = -700.0f; + sp28.unk20.x = 15.0f; + sp28.unk20.y = 0.0f; + sp28.unk20.z = 0.0f; + sp28.unk38 = 1600.0f; + fn_1_4CC0(var_r31, &sp28, var_r31->unk40++, 120.0f); + } +} + +void fn_1_8758(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = lbl_1_bss_1424; + sp8.unk08.y = 125.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1250.0f; + sp8.unk38 = 1350.0f; + fn_1_514C(var_r31, &sp8, var_r31->unk40++, 10.0f, 5.0f); +} + +void fn_1_8858(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 170.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1700.0f; + fn_1_514C(var_r31, &sp8, var_r31->unk40++, 30.0f, 10.0f); +} + +void fn_1_8948(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 300.0f; + sp8.unk08.y = 100.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1000.0f; + fn_1_4400(var_r31, &sp8, var_r31->unk40++, 60.0f, 10.0f); +} + +void fn_1_8A38(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = -300.0f; + sp8.unk08.y = 100.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1000.0f; + fn_1_4400(var_r31, &sp8, var_r31->unk40++, 180.0f, 10.0f); +} + +void fn_1_8B28(void) { + StructBss4* var_r31; + StructBss4 sp8; + + var_r31 = &lbl_1_bss_4; + sp8.unk08.x = 0.0f; + sp8.unk08.y = 170.0f; + sp8.unk08.z = 0.0f; + sp8.unk20.x = -5.0f; + sp8.unk20.y = 0.0f; + sp8.unk20.z = 0.0f; + sp8.unk38 = 1700.0f; + fn_1_4400(var_r31, &sp8, var_r31->unk40++, 120.0f, 10.0f); +} + +void fn_1_8C18(void) { + fn_1_39B4(&lbl_1_bss_4); + fn_1_2834(fn_1_8948); + fn_1_958(120); + fn_1_39B4(&lbl_1_bss_4); + fn_1_2834(fn_1_8A38); + fn_1_958(210); + fn_1_39B4(&lbl_1_bss_4); + fn_1_2834(fn_1_8B28); + fn_1_958(120); +} + +void fn_1_8C94(void) { + s32 var_r30 = 16; + s32 var_r29 = 40; + s32 var_r28 = 0; + GXColor sp10 = { 0x00, 0x00, 0x80, 0x80 }; + s32 var_r31; + + while (TRUE) { + fn_1_938(); + if (HuPadBtnDown[0] & PAD_TRIGGER_R) { + var_r28++; + var_r28 %= 2; + } + if (var_r28 == 0) { + continue; + } + printWin(var_r30, var_r29, 220, 200, &sp10); + if (lbl_1_bss_1558.unk04 == NULL) { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> FALSE"); + } else { + print8(var_r30, var_r29, 1.0f, "PROC_MAIN -> TRUE"); + } + if (lbl_1_bss_1530.unk04 == NULL) { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> FALSE"); + } else { + print8(var_r30, var_r29 + 10, 1.0f, "PROC_MAP -> TRUE"); + } + if (lbl_1_bss_1468.unk04 == NULL) { + print8(var_r30, var_r29 + 20, 1.0f, "PROC_SUB -> FALSE"); + } else { + print8(var_r30, var_r29 + 20, 1.0f, "PROC_SUB -> TRUE"); + } + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1490[var_r31].unk04 == NULL) { + print8(var_r30, var_r29 + 30 + var_r31 * 10, 1.0f, "PROC_PLAYER%d -> FALSE", var_r31); + } else { + print8(var_r30, var_r29 + 30 + var_r31 * 10, 1.0f, "PROC_PLAYER%d -> TRUE", var_r31); + } + } + print8(var_r30, var_r29 + 80, 1.0f, "M:%d P:%d W:%d", lbl_1_bss_1580.unk00, lbl_1_bss_1580.unk0C, lbl_1_bss_1580.unk14); + print8(var_r30, var_r29 + 100, 1.0f, "NO) IDX:GRP:COM:DIF:PAD:CHR"); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + print8(var_r30, var_r29 + 110 + var_r31 * 10, 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", var_r31, + lbl_1_bss_1580.unkC4[var_r31].unk00.unk00, lbl_1_bss_1580.unkC4[var_r31].unk00.unk04, lbl_1_bss_1580.unkC4[var_r31].unk00.unk08, + lbl_1_bss_1580.unkC4[var_r31].unk00.unk0C, lbl_1_bss_1580.unkC4[var_r31].unk00.unk14, lbl_1_bss_1580.unkC4[var_r31].unk00.unk10); + } + print8(var_r30, var_r29 + 150, 1.0f, "NO) RNK:STA:COI:MGS:COS:HAS"); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + print8(var_r30, var_r29 + 160 + var_r31 * 10, 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", var_r31, + lbl_1_bss_1580.unkC4[var_r31].unk00.unk18, lbl_1_bss_1580.unkC4[var_r31].unk00.unk20, lbl_1_bss_1580.unkC4[var_r31].unk00.unk1C, + lbl_1_bss_1580.unkC4[var_r31].unk00.unk24, lbl_1_bss_1580.unkC4[var_r31].unk00.unk28, lbl_1_bss_1580.unkC4[var_r31].unk00.unk2C); + } + } +} + +void fn_1_9140(void) { + WipeColorSet(0xFF, 0xFF, 0xFF); + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } + fn_1_9C4(); + CharModelKill(-1); + MGSeqKillAll(); + HuAudSStreamAllStop(); + msmSeStopAll(0, 1000); + omOvlGotoEx(OVL_MSTORY3, 1, 1, 0); +} + +void fn_1_91C8(void) { + lbl_1_bss_58 = HuAudSeqPlay(0x31); + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); + while (TRUE) { + if (WipeStatGet() == 0) { + break; + } + fn_1_938(); + } +} + +void fn_1_9220(void) { + Vec sp14 = { -320.0f, 0.0f, 910.0f }; + + fn_1_958(60); + lbl_1_bss_1580.unk10 = fn_1_1624(1, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][0]); + fn_1_13C78(lbl_1_bss_1580.unk10, 0, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + fn_1_39B4(&lbl_1_bss_4); + fn_1_2834(fn_1_836C); + fn_1_1E28(lbl_1_bss_1530.unk00, 2, 2, 0, 0); + fn_1_1E28(lbl_1_bss_1468.unk00, 1, 2, 15, 1); + fn_1_2DD4(lbl_1_bss_1468.unk00, 1, sp14, 30.0f, 60.0f, 10.0f); + fn_1_1E28(lbl_1_bss_1468.unk00, 1, 1, 15, 1); + fn_1_2280(lbl_1_bss_1530.unk00, 2, 2, 0); +} + +void fn_1_93D0(omObjData* arg0) { + StructBss1530* temp_r31; + + temp_r31 = arg0->data; + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + fn_1_13A3C(lbl_1_bss_1580.unk10, 1, -1, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + temp_r31->unk04 = 0; +} + +void fn_1_9488(void) { + s32 var_r31; + + lbl_1_bss_1530.unk04 = (void*) fn_1_93D0; + do { + fn_1_938(); + } while (lbl_1_bss_1580.unk18 != 99); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk04 = (void*) fn_1_1036C; + lbl_1_bss_1490[var_r31].unk18 = lbl_1_bss_1490[var_r31].unk1C = 0; + } + fn_1_12A98(0); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + if (lbl_1_bss_1580.unkC4[lbl_1_bss_1448[var_r31]].unk00.unk20 != 0) { + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk1C = 1; + } + } + HuAudFXPlay(0xB9); + do { + fn_1_938(); + } while (lbl_1_bss_1530.unk04 != NULL); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk18 = 1; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1490[var_r31].unk18 != 2) { + break; + } + } + } while (var_r31 < 4); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk18 = 3; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1490[var_r31].unk04 != NULL) { + break; + } + } + } while (var_r31 < 4); +} + +void fn_1_96B0(omObjData* arg0) { + StructBss1530* temp_r31; + + temp_r31 = arg0->data; + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + fn_1_13A3C(lbl_1_bss_1580.unk10, 2, -1, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + temp_r31->unk04 = 0; +} + +void fn_1_9768(void) { + s32 var_r31; + + lbl_1_bss_1530.unk04 = (void*) fn_1_96B0; + do { + fn_1_938(); + } while (lbl_1_bss_1580.unk18 != 99); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk04 = (void*) fn_1_10D74; + lbl_1_bss_1490[var_r31].unk18 = lbl_1_bss_1490[var_r31].unk1C = 0; + } + fn_1_12A98(1); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + if (lbl_1_bss_1580.unkC4[lbl_1_bss_1448[var_r31]].unk00.unk1C != 0) { + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk1C = 1; + } + } + HuAudFXPlay(0xB8); + do { + fn_1_938(); + } while (lbl_1_bss_1530.unk04 != NULL); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk18 = 1; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1490[var_r31].unk18 != 2) { + break; + } + } + } while (var_r31 < 4); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk18 = 3; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1490[var_r31].unk04 != NULL) { + break; + } + } + } while (var_r31 < 4); +} + +void fn_1_9990(omObjData* arg0) { + StructBss1530* temp_r31; + + temp_r31 = arg0->data; + HuAudFXPlay(0x9A); + fn_1_13A3C(lbl_1_bss_1580.unk10, lbl_1_bss_1420, -1, 4); + fn_1_1AB0(lbl_1_bss_1580.unk10); + temp_r31->unk04 = 0; +} + +void fn_1_9A08(omObjData* arg0) { + StructBss1530* temp_r31; + + temp_r31 = arg0->data; + fn_1_958(60); + HuAudSeqPause(lbl_1_bss_58, 0, 1000); + temp_r31->unk04 = 0; +} + +void fn_1_9A64(s32 arg0) { + s32 var_r28; + s32 var_r27; + s32 var_r30; + s32 var_r31; + + var_r28 = 9999; + var_r27 = -1; + lbl_1_bss_1420 = arg0; + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + fn_1_13C78(lbl_1_bss_1580.unk10, arg0 * 3 + 3, 3); + fn_1_12C08(arg0); + lbl_1_bss_1424 = 0.0f; + switch (lbl_1_bss_1458[0]) { + case 1: + lbl_1_bss_1424 = lbl_1_data_130[lbl_1_bss_1448[0]].x; + break; + case 2: + lbl_1_bss_1424 = (lbl_1_data_130[lbl_1_bss_1448[0]].x + lbl_1_data_130[lbl_1_bss_1448[1]].x) / 2; + fn_1_13C78(lbl_1_bss_1580.unk10, arg0 * 3 + 4, 3); + break; + case 3: + for (var_r31 = 0; var_r31 < 3; var_r31++) { + if (var_r28 >= lbl_1_bss_1448[var_r31]) { + var_r28 = lbl_1_bss_1448[var_r31]; + } + if (var_r27 <= lbl_1_bss_1448[var_r31]) { + var_r27 = lbl_1_bss_1448[var_r31]; + } + } + lbl_1_bss_1424 = (lbl_1_data_130[var_r27].x + lbl_1_data_130[var_r28].x) / 2; + fn_1_13C78(lbl_1_bss_1580.unk10, arg0 * 3 + 5, 3); + break; + case 4: + break; + } + fn_1_1AB0(lbl_1_bss_1580.unk10); + HuAudSeqPause(lbl_1_bss_58, 1, 1000); + lbl_1_bss_68[0] = HuAudFXPlay(0x9E); + fn_1_7004(0x40, 30, 0); + fn_1_958(60); + if (lbl_1_bss_1458[0] < 4) { + fn_1_39B4(&lbl_1_bss_4); + fn_1_2834(fn_1_8758); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + for (var_r30 = 0; var_r30 < 4; var_r30++) { + if (var_r31 == lbl_1_bss_1448[var_r30]) { + lbl_1_bss_1490[var_r31].unk04 = (void*) fn_1_11834; + lbl_1_bss_1490[var_r31].unk18 = 0; + break; + } + } + if (var_r30 == 4) { + lbl_1_bss_1490[var_r31].unk04 = (void*) fn_1_11794; + lbl_1_bss_1490[var_r31].unk18 = 0; + } + } + } else { + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk04 = (void*) fn_1_11794; + lbl_1_bss_1490[var_r31].unk18 = 0; + } + } + if (lbl_1_bss_1458[0] != 4) { + lbl_1_bss_1580.unk10 = fn_1_1624(1, 0, 21, 2, lbl_1_bss_1580.unk14); + } else { + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + } + if (lbl_1_bss_1458[0] <= 3) { + HuAudFXPlay(0x9F); + } + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + switch (lbl_1_bss_1458[0]) { + case 1: + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[0], 0); + lbl_1_bss_1420 = 12; + lbl_1_bss_1530.unk04 = (void*) fn_1_9990; + lbl_1_bss_1468.unk04 = (void*) fn_1_9A08; + break; + case 2: + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[0], 0); + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[1], 1); + lbl_1_bss_1420 = 13; + lbl_1_bss_1530.unk04 = (void*) fn_1_9990; + lbl_1_bss_1468.unk04 = (void*) fn_1_9A08; + break; + case 3: + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[0], 0); + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[1], 1); + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[2], 2); + lbl_1_bss_1420 = 14; + lbl_1_bss_1530.unk04 = (void*) fn_1_9990; + lbl_1_bss_1468.unk04 = (void*) fn_1_9A08; + break; + case 4: + HuAudFXFadeOut(lbl_1_bss_68[0], 500); + lbl_1_bss_1468.unk04 = (void*) fn_1_9A08; + if (lbl_1_bss_1580.unkC4[lbl_1_bss_1448[0]].unk00.unk2C == 0 && arg0 == 2) { + fn_1_13C78(lbl_1_bss_1580.unk10, 26, 3); + } else { + fn_1_13C78(lbl_1_bss_1580.unk10, 15, 3); + } + fn_1_1AB0(lbl_1_bss_1580.unk10); + break; + } + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk18 = 1; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + if (lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk04 != NULL) { + break; + } + } + } while (var_r31 < lbl_1_bss_1458[0]); + lbl_1_bss_1580.unk18 = 1; + for (var_r31 = 0; var_r31 < 4; var_r31++) { + Hu3DModelAttrReset(lbl_1_bss_1490[var_r31].unk00->model[1], HU3D_MOTATTR_PAUSE); + } + fn_1_958(10); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_1E28(lbl_1_bss_1490[var_r31].unk00, 1, 1, 15, 1); + } + do { + fn_1_938(); + } while (lbl_1_bss_1530.unk04 != NULL); + fn_1_12DAC(); + HuAudSeqPause(lbl_1_bss_58, 0, 1000); + fn_1_39B4(&lbl_1_bss_4); + fn_1_2834(fn_1_8858); + fn_1_7004(0xFF, 30, 1); + fn_1_958(60); +} + +s32 fn_1_A314(void) { + s32 var_r31 = 0; + + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x10, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + fn_1_12DAC(); + fn_1_130A8(); + if (lbl_1_bss_1580.unk344 == 1) { + var_r31 = fn_1_B670(); + } + if (var_r31 != -1 && lbl_1_bss_1458[0] <= 1) { + HuAudSeqFadeOut(lbl_1_bss_58, 1000); + } else { + HuAudSeqPause(lbl_1_bss_58, 1, 1000); + } + lbl_1_bss_68[0] = HuAudFXPlay(0x9E); + lbl_1_bss_B0 = 1.0f; + lbl_1_bss_1530.unk04 = (void*) fn_1_D7D8; + fn_1_7004(0x40, 30, 0); + fn_1_8C18(); + lbl_1_bss_AC = 125.0f; + return var_r31; +} + +void fn_1_A4F0(void) { + s32 var_r31; + + HuAudSeqPause(lbl_1_bss_58, 0, 1000); + HuAudFXFadeOut(lbl_1_bss_68[0], 1000); + lbl_1_bss_B0 = 0.0f; + fn_1_7004(0xFF, 30, 1); + fn_1_958(60); + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][1]); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x11, 3); + switch (lbl_1_bss_1458[0]) { + case 1: + break; + case 2: + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[0], 0); + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[1], 1); + fn_1_13C78(lbl_1_bss_1580.unk10, 13, 3); + break; + case 3: + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[0], 0); + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[1], 1); + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1448[2], 2); + fn_1_13C78(lbl_1_bss_1580.unk10, 14, 3); + break; + case 4: + fn_1_13C78(lbl_1_bss_1580.unk10, 0x12, 3); + break; + } + fn_1_13C78(lbl_1_bss_1580.unk10, 0x13, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1438[var_r31] = lbl_1_bss_1428[var_r31] = -1; + } + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk04 = (void*) fn_1_123D8; + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk18 = 0; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + if (lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk18 != 1) { + break; + } + } + } while (var_r31 < lbl_1_bss_1458[0]); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk18 = 2; + } + fn_1_958(0x96); + fn_1_1317C(); + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1458[1], 0); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x14, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + if (lbl_1_bss_1458[1] == lbl_1_bss_1448[var_r31]) { + fn_1_1E28(lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk00, 1, 14, 15, 0); + } else { + fn_1_1E28(lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk00, 1, 15, 15, 0); + } + } + fn_1_958(0x23); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_1E28(lbl_1_bss_1490[var_r31].unk00, 1, 1, 15, 1); + } + fn_1_958(0x55); + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][3]); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x15, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_1E28(lbl_1_bss_1490[var_r31].unk00, 1, 1, 15, 1); + } + HuAudSeqFadeOut(lbl_1_bss_58, 1000); + lbl_1_bss_68[0] = HuAudFXPlay(0x9E); + lbl_1_bss_B0 = 1.0f; + fn_1_7004(0x40, 30, 0); + fn_1_8C18(); +} + +void fn_1_ABAC(void) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1490[var_r31].unk04 = (void*) fn_1_12420; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1490[var_r31].unk04 != NULL) { + break; + } + } + } while (var_r31 < 4); + lbl_1_bss_B0 = 0.0f; + fn_1_958(15); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1580.unkC4[var_r31].unk00.unk18 == 1) { + break; + } + } + if (lbl_1_bss_1580.unk344 == 1) { + if (lbl_1_bss_1580.unk348 == 0) { + fn_1_7398(0xFF, 5, 0, 1); + } else { + fn_1_7398(0xFF, 5, 2, 3); + } + } else { + fn_1_79D8(0xFF, 5.0f, var_r31); + } + HuAudFXPlay(0x9F); + HuAudSeqPlay(0x32); + fn_1_958(30); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (lbl_1_bss_1580.unk344 == 1) { + if (lbl_1_bss_1580.unk348 == 0) { + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[0].unk00.unk10, lbl_1_bss_1490[0].unk00->motion[3], 0); + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[1].unk00.unk10, lbl_1_bss_1490[1].unk00->motion[3], 0); + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[2].unk00.unk10, lbl_1_bss_1490[2].unk00->motion[4], 0); + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[3].unk00.unk10, lbl_1_bss_1490[3].unk00->motion[4], 0); + fn_1_1E28(lbl_1_bss_1490[0].unk00, 1, 3, 15, 0); + fn_1_1E28(lbl_1_bss_1490[1].unk00, 1, 3, 15, 0); + fn_1_1E28(lbl_1_bss_1490[2].unk00, 1, 4, 15, 0); + fn_1_1E28(lbl_1_bss_1490[3].unk00, 1, 4, 15, 0); + lbl_1_bss_1580.unk0C = 0; + } else { + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[0].unk00.unk10, lbl_1_bss_1490[0].unk00->motion[4], 0); + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[1].unk00.unk10, lbl_1_bss_1490[1].unk00->motion[4], 0); + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[2].unk00.unk10, lbl_1_bss_1490[2].unk00->motion[3], 0); + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[3].unk00.unk10, lbl_1_bss_1490[3].unk00->motion[3], 0); + fn_1_1E28(lbl_1_bss_1490[0].unk00, 1, 4, 15, 0); + fn_1_1E28(lbl_1_bss_1490[1].unk00, 1, 4, 15, 0); + fn_1_1E28(lbl_1_bss_1490[2].unk00, 1, 3, 15, 0); + fn_1_1E28(lbl_1_bss_1490[3].unk00, 1, 3, 15, 0); + lbl_1_bss_1580.unk0C = 2; + } + } else if (lbl_1_bss_1580.unkC4[var_r31].unk00.unk18 == 1) { + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[var_r31].unk00.unk10, lbl_1_bss_1490[var_r31].unk00->motion[3], 0); + fn_1_1E28(lbl_1_bss_1490[var_r31].unk00, 1, 3, 15, 0); + lbl_1_bss_1580.unk0C = var_r31; + } else { + CharModelVoiceEnableSet(lbl_1_bss_1580.unkC4[var_r31].unk00.unk10, lbl_1_bss_1490[var_r31].unk00->motion[4], 0); + fn_1_1E28(lbl_1_bss_1490[var_r31].unk00, 1, 4, 15, 0); + } + GWPlayer[lbl_1_bss_1580.unkC4[var_r31].unk00.unk00].rank = lbl_1_bss_1580.unkC4[var_r31].unk00.unk18 - 1; + } + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + if (lbl_1_bss_1580.unk344 == 1) { + if (lbl_1_bss_1580.unk348 == 0) { + fn_1_13D38(lbl_1_bss_1580.unk10, 0, 0); + fn_1_13D38(lbl_1_bss_1580.unk10, 1, 1); + _SetFlag(FLAG_ID_MAKE(1, 29)); + } else { + fn_1_13D38(lbl_1_bss_1580.unk10, 2, 0); + fn_1_13D38(lbl_1_bss_1580.unk10, 3, 1); + } + fn_1_13C78(lbl_1_bss_1580.unk10, 0x19, 5); + } else { + fn_1_13D38(lbl_1_bss_1580.unk10, lbl_1_bss_1458[1], 0); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x16, 5); + } + fn_1_1AB0(lbl_1_bss_1580.unk10); +} + +s32 fn_1_B670(void) { + s32 var_r31; + s32 temp_r30; + s32 temp_r29; + s32 temp_r28; + s32 temp_r27; + + var_r31 = 1; + temp_r30 = lbl_1_bss_1580.unkC4[0].unk00.unk20 + lbl_1_bss_1580.unkC4[1].unk00.unk20; + temp_r29 = lbl_1_bss_1580.unkC4[2].unk00.unk20 + lbl_1_bss_1580.unkC4[3].unk00.unk20; + temp_r28 = lbl_1_bss_1580.unkC4[0].unk00.unk1C + lbl_1_bss_1580.unkC4[1].unk00.unk1C; + temp_r27 = lbl_1_bss_1580.unkC4[2].unk00.unk1C + lbl_1_bss_1580.unkC4[3].unk00.unk1C; + if (temp_r30 > temp_r29) { + lbl_1_bss_1580.unk348 = 0; + } else if (temp_r30 < temp_r29) { + lbl_1_bss_1580.unk348 = 1; + } else if (temp_r28 > temp_r27) { + lbl_1_bss_1580.unk348 = 0; + } else if (temp_r28 < temp_r27) { + lbl_1_bss_1580.unk348 = 1; + } else { + var_r31 = -1; + } + return var_r31; +} + +void fn_1_B788(void) { + s32 var_r31; + + HuAudSeqPause(lbl_1_bss_58, 0, 1000); + HuAudFXFadeOut(lbl_1_bss_68[0], 1000); + lbl_1_bss_B0 = 0.0f; + fn_1_7004(0xFF, 30, 1); + fn_1_958(60); + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][1]); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x17, 3); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x13, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + lbl_1_bss_1438[var_r31] = lbl_1_bss_1428[var_r31] = -1; + } + lbl_1_bss_1458[0] = 2; + lbl_1_bss_1448[0] = 0; + lbl_1_bss_1448[1] = 2; + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk04 = (void*) fn_1_123D8; + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk18 = 0; + } + do { + fn_1_938(); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + if (lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk18 != 1) { + break; + } + } + } while (var_r31 < lbl_1_bss_1458[0]); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + lbl_1_bss_1490[lbl_1_bss_1448[var_r31]].unk18 = 2; + } + fn_1_958(150); + if (lbl_1_bss_1428[0] > lbl_1_bss_1428[2]) { + lbl_1_bss_1580.unk348 = 0; + } else { + lbl_1_bss_1580.unk348 = 1; + } + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][2]); + if (lbl_1_bss_1580.unk348 == 0) { + fn_1_13D38(lbl_1_bss_1580.unk10, 0, 0); + fn_1_13D38(lbl_1_bss_1580.unk10, 1, 1); + } else { + fn_1_13D38(lbl_1_bss_1580.unk10, 2, 0); + fn_1_13D38(lbl_1_bss_1580.unk10, 3, 1); + } + fn_1_13C78(lbl_1_bss_1580.unk10, 0x18, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + for (var_r31 = 0; var_r31 < lbl_1_bss_1458[0]; var_r31++) { + if (lbl_1_bss_1580.unk348 == 0) { + fn_1_1E28(lbl_1_bss_1490[0].unk00, 1, 14, 15, 0); + fn_1_1E28(lbl_1_bss_1490[1].unk00, 1, 14, 15, 0); + fn_1_1E28(lbl_1_bss_1490[2].unk00, 1, 15, 15, 0); + fn_1_1E28(lbl_1_bss_1490[3].unk00, 1, 15, 15, 0); + } else { + fn_1_1E28(lbl_1_bss_1490[0].unk00, 1, 15, 15, 0); + fn_1_1E28(lbl_1_bss_1490[1].unk00, 1, 15, 15, 0); + fn_1_1E28(lbl_1_bss_1490[2].unk00, 1, 14, 15, 0); + fn_1_1E28(lbl_1_bss_1490[3].unk00, 1, 14, 15, 0); + } + } + fn_1_958(35); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_1E28(lbl_1_bss_1490[var_r31].unk00, 1, 1, 15, 1); + } + fn_1_958(85); + lbl_1_bss_1580.unk10 = fn_1_1624(0, 0, 21, 2, lbl_1_bss_1580.unk14); + HuAudFXPlay(lbl_1_data_0[lbl_1_bss_1580.unk00][3]); + fn_1_13C78(lbl_1_bss_1580.unk10, 0x15, 3); + fn_1_1AB0(lbl_1_bss_1580.unk10); + for (var_r31 = 0; var_r31 < 4; var_r31++) { + fn_1_1E28(lbl_1_bss_1490[var_r31].unk00, 1, 1, 15, 1); + } + HuAudSeqFadeOut(lbl_1_bss_58, 1000); + lbl_1_bss_68[0] = HuAudFXPlay(0x9E); + lbl_1_bss_B0 = 1.0f; + fn_1_7004(0x40, 30, 0); + fn_1_8C18(); +} + +void fn_1_BE5C(void) { + float var_f31; + + var_f31 = fn_1_878(0.0f, 0.1f, lbl_1_bss_B8, 180.0f); + Hu3DData[lbl_1_bss_1530.unk00->model[20]].pos.y += var_f31; + lbl_1_bss_B8++; + if (lbl_1_bss_B8 >= 180) { + lbl_1_bss_B8 -= 180; + } +} + +void fn_1_BF60(void) { + float temp_f1; + + temp_f1 = fn_1_878(1.0f, 1.1f, lbl_1_bss_B8, 60.0f); + Hu3DModelScaleSet(lbl_1_bss_1530.unk00->model[23], temp_f1, temp_f1, 1.0f); + lbl_1_bss_B8++; + if (lbl_1_bss_B8 >= 60) { + lbl_1_bss_B8 -= 60; + } +} + +s32 lbl_1_data_364 = -1; +s32 lbl_1_data_368 = -1; // unused + +void fn_1_C060(float arg8) { + float sp20[] = { + 50.0f, 50.0f, 60.0f, 50.0f, + 50.0f, 80.0f, 60.0f, 120.0f + }; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float temp_f29; + float var_f28; + float temp_f27; + float var_f26; + s32 var_r31; + + lbl_1_bss_BC = arg8; + fn_1_938(); + var_f31 = arg8; + var_f30 = 0.0f; + temp_f29 = 3600.0f; + Hu3DModelPosSet(lbl_1_bss_1530.unk00->model[20], var_f31, 1000.0f, 460.0f); + Hu3DModelScaleSet(lbl_1_bss_1530.unk00->model[20], 0.5f, 0.5f, 0.5f); + Hu3DModelAttrReset(lbl_1_bss_1530.unk00->model[20], HU3D_ATTR_DISPOFF); + fn_1_1E28(lbl_1_bss_1530.unk00, 20, 20, 0, 2); + Hu3DModelPosSet(lbl_1_bss_1530.unk00->model[21], var_f31, 1000.0f, 460.0f); + Hu3DModelScaleSet(lbl_1_bss_1530.unk00->model[21], 0.5f, 0.5f, 0.5f); + fn_1_1E28(lbl_1_bss_1530.unk00, 21, 21, 0, 2); + Hu3DModelPosSet(lbl_1_bss_1530.unk00->model[22], var_f31, 1000.0f, 460.0f); + Hu3DModelScaleSet(lbl_1_bss_1530.unk00->model[22], 0.5f, 0.5f, 0.5f); + Hu3DMotionShapeSpeedSet(lbl_1_bss_1530.unk00->model[22], 2.0f); + Hu3DMotionSpeedSet(lbl_1_bss_1530.unk00->model[22], 2.0f); + Hu3DMotionShiftSpeedSet(lbl_1_bss_1530.unk00->model[22], 2.0f); + fn_1_1E28(lbl_1_bss_1530.unk00, 22, 22, 0, 2); + Hu3DModelScaleSet(lbl_1_bss_1530.unk00->model[23], 0.0f, 0.0f, 1.0f); + Hu3DModelAttrSet(lbl_1_bss_1530.unk00->model[23], HU3D_ATTR_DISPOFF); + fn_1_958(60); + fn_1_39B4(&lbl_1_bss_4); + fn_1_2834(fn_1_845C); + for (var_r31 = 0; var_r31 <= 120; var_r31++) { + fn_1_938(); + if (lbl_1_bss_1580.unk344 == 0) { + var_f30 = fn_1_6F4(1000.0f, 250.0f + sp20[lbl_1_bss_1580.unkC4[lbl_1_bss_1458[1]].unk00.unk10], var_r31, 120.0f); + } else { + var_f30 = fn_1_6F4(1000.0f, 350.0f, var_r31, 120.0f); + } + temp_f29 = fn_1_6F4(1800.0f, 0.0f, var_r31, 120.0f); + var_f28 = fn_1_6F4(1.0f, 0.0f, var_r31, 120.0f); + Hu3DModelPosSet(lbl_1_bss_1530.unk00->model[20], var_f31, var_f30, 460.0f); + Hu3DModelRotSet(lbl_1_bss_1530.unk00->model[20], 0.0f, temp_f29, 0.0f); + } + lbl_1_bss_1530.unk04 = (void*) fn_1_BE5C; + fn_1_958(30); + fn_1_1E28(lbl_1_bss_1530.unk00, 20, 20, 0, 0); + fn_1_958(30); + HuAudFXPlay(0x33B); + fn_1_958(30); + Hu3DModelPosSet(lbl_1_bss_1530.unk00->model[22], var_f31, Hu3DData[lbl_1_bss_1530.unk00->model[20]].pos.y - 10.0f, 460.0f); + Hu3DModelAttrReset(lbl_1_bss_1530.unk00->model[22], HU3D_ATTR_DISPOFF); + fn_1_1E28(lbl_1_bss_1530.unk00, 22, 22, 0, 0); + sp14.x = var_f31; + sp14.y = Hu3DData[lbl_1_bss_1530.unk00->model[20]].pos.y; + sp14.z = 460.0f; + sp8.x = 288.0f; + sp8.y = 100.0f; + sp8.z = 500.0f; + fn_1_1DED8(DATA_MAKE_NUM(DATADIR_MSTORY3, 0), &sp14, &sp8, 100); + fn_1_1E0F4(); + fn_1_958(15); + if (lbl_1_bss_1580.unk344 == 1) { + if (lbl_1_bss_1580.unk348 == 0) { + HuAudCharVoicePlay(lbl_1_bss_1580.unkC4[0].unk00.unk10, 0x12B); + HuAudCharVoicePlay(lbl_1_bss_1580.unkC4[1].unk00.unk10, 0x12B); + } else { + HuAudCharVoicePlay(lbl_1_bss_1580.unkC4[2].unk00.unk10, 0x12B); + HuAudCharVoicePlay(lbl_1_bss_1580.unkC4[3].unk00.unk10, 0x12B); + } + } else { + HuAudCharVoicePlay(lbl_1_bss_1580.unkC4[lbl_1_bss_1458[1]].unk00.unk10, 0x12B); + } + HuAudFXPlay(0xBA); + HuAudFXPlay(0x9A); + Hu3DModelPosSet(lbl_1_bss_1530.unk00->model[21], var_f31, Hu3DData[lbl_1_bss_1530.unk00->model[20]].pos.y, 510.0f); + Hu3DModelAttrReset(lbl_1_bss_1530.unk00->model[21], HU3D_ATTR_DISPOFF); + fn_1_1E28(lbl_1_bss_1530.unk00, 21, 21, 0, 0); + fn_1_958(5); + lbl_1_data_364 = fn_1_814C(1); + Hu3DParManPosSet(lbl_1_data_364, var_f31, Hu3DData[lbl_1_bss_1530.unk00->model[21]].pos.y, 510.0f); + Hu3DModelAttrSet(lbl_1_bss_1530.unk00->model[20], HU3D_ATTR_DISPOFF); + lbl_1_bss_C0 = 1.0f; + for (var_r31 = 0; var_r31 <= 30; var_r31++) { + fn_1_938(); + temp_f27 = fn_1_5D4(0.0f, 1.0f, var_r31, 30.0f); + var_f30 = fn_1_5D4(0.0f, 75.0f, var_r31, 30.0f); + var_f26 = fn_1_5D4(550.0f, 640.0f, var_r31, 30.0f); + Hu3DModelPosSet(lbl_1_bss_1530.unk00->model[23], var_f31, Hu3DData[lbl_1_bss_1530.unk00->model[20]].pos.y - var_f30, var_f26); + Hu3DModelScaleSet(lbl_1_bss_1530.unk00->model[23], temp_f27, temp_f27, 1.0f); + var_f28 = fn_1_5D4(1.0f, 0.0f, var_r31, 30.0f); + Hu3DModelTPLvlSet(lbl_1_bss_1530.unk00->model[22], var_f28); + } + lbl_1_bss_B8 = 0; + lbl_1_bss_1530.unk04 = (void*) fn_1_BF60; + fn_1_958(30); + Hu3DParManKill(lbl_1_data_364); + lbl_1_data_364 = -1; + fn_1_958(240); + fn_1_1834(MAKE_MESSID(36, 7), 0); + if (lbl_1_bss_1580.unk344 == 1) { + if (lbl_1_bss_1580.unk348 == 0) { + if (lbl_1_bss_1580.unkC4[0].unk00.unk08 == 1 && lbl_1_bss_1580.unkC4[1].unk00.unk08 == 1) { + fn_1_958(30); + } else { + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1580.unkC4[0].unk00.unk08 == 0 && (HuPadBtnDown[lbl_1_bss_1580.unkC4[0].unk00.unk14] & PAD_BUTTON_A)) { + break; + } + if (lbl_1_bss_1580.unkC4[1].unk00.unk08 == 0 && (HuPadBtnDown[lbl_1_bss_1580.unkC4[1].unk00.unk14] & PAD_BUTTON_A)) { + break; + } + } + } + } else { + if (lbl_1_bss_1580.unkC4[2].unk00.unk08 == 1 && lbl_1_bss_1580.unkC4[3].unk00.unk08 == 1) { + fn_1_958(30); + } else { + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1580.unkC4[0].unk00.unk08 == 0 && (HuPadBtnDown[lbl_1_bss_1580.unkC4[0].unk00.unk14] & PAD_BUTTON_A)) { + break; + } + if (lbl_1_bss_1580.unkC4[1].unk00.unk08 == 0 && (HuPadBtnDown[lbl_1_bss_1580.unkC4[1].unk00.unk14] & PAD_BUTTON_A)) { + break; + } + } + } + } + } else if (lbl_1_bss_1580.unk08 == 0) { + if (lbl_1_bss_1580.unkC4[lbl_1_bss_1580.unk0C].unk00.unk08 != 1) { + fn_1_2420(lbl_1_bss_1580.unkC4[lbl_1_bss_1580.unk0C].unk00.unk14, PAD_BUTTON_A); + } else { + fn_1_958(30); + } + } else { + fn_1_2420(0, PAD_BUTTON_A); + } + HuAudFXPlay(0x1C); +} + +void fn_1_CE6C(omObjData* arg0) { + StructBss1530* sp8 = arg0->data; + s32 var_r31; + + fn_1_91C8(); + fn_1_9220(); + fn_1_9488(); + fn_1_9768(); + if (lbl_1_bss_1580.unk04 != 0) { + fn_1_9A64(0); + fn_1_9A64(1); + fn_1_9A64(2); + } + var_r31 = fn_1_A314(); + if (lbl_1_bss_1580.unk344 == 1) { + if (var_r31 == -1) { + fn_1_B788(); + } + } else if (lbl_1_bss_1458[0] > 1) { + fn_1_A4F0(); + } + fn_1_ABAC(); + if (lbl_1_bss_1580.unk344 == 1) { + if (lbl_1_bss_1580.unk348 == 0) { + fn_1_C060(lbl_1_data_130[0].x + 100.0f); + } else { + fn_1_C060(lbl_1_data_130[2].x + 100.0f); + } + } else { + fn_1_C060(lbl_1_data_130[lbl_1_bss_1458[1]].x); + } + fn_1_958(60); + fn_1_9140(); +} + +void fn_1_D48C(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_A8, 0x100, 16, 16, -1, NULL); + lbl_1_bss_1558.unk00 = temp_r3; + lbl_1_bss_1558.unk04 = (void*) fn_1_CE6C; + lbl_1_bss_1558.unk00->data = &lbl_1_bss_1558; + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1558.unk04 != NULL) { + lbl_1_bss_1558.unk04(temp_r3); + } + } +} + +void fn_1_D538(omObjData* arg0) { + float sp8; + float var_f30; + float var_f31; + StructBss1530* temp_r31; + s32 var_r30; + s32 var_r29; + + temp_r31 = arg0->data; + var_f31 = 1.75f; + sp8 = 0.5f; + var_r29 = 0; + HuAudFXPlay(0xBA); + HuAudFXPlay(0x9A); + lbl_1_bss_1580.unk324 = 1; + espDispOn(temp_r31->unk14); + espScaleSet(temp_r31->unk14, 0.0f, 0.0f); + for (var_r30 = 0; var_r30 < 120; var_r30++) { + fn_1_938(); + if (var_r30 < 60) { + var_f30 = fn_1_6F4(0.0f, 1.75f, var_r30, 60.0f); + } else { + var_f30 = fn_1_7BC(var_f31, 1.0f, var_r29, 15.0f); + var_r29++; + if (var_r29 == 15) { + if (var_f31 > 1.25f) { + var_f31 -= 0.1f; + } + var_r29 = 0; + } + } + espScaleSet(temp_r31->unk14, var_f30, var_f30); + } + temp_r31->unk04 = 0; +} + +void fn_1_D718(omObjData* arg0) { + float temp_f31; + + temp_f31 = lbl_1_bss_1580.unk20 / 255.0f; + Hu3DModelAmbSet(arg0->model[1], temp_f31, temp_f31, temp_f31); + Hu3DModelAmbSet(arg0->model[2], temp_f31, temp_f31, temp_f31); + Hu3DModelAmbSet(arg0->model[3], temp_f31, temp_f31, temp_f31); +} + +float lbl_1_data_36C[] = { 0.0f, 120.0f, 240.0f }; + +void fn_1_D7D8(omObjData* arg0) { + s32 var_r30; + + if (lbl_1_bss_B0 == 1.0f) { + Hu3DModelAttrReset(arg0->model[4], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(arg0->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(arg0->model[6], HU3D_ATTR_DISPOFF); + lbl_1_bss_C4 += 0.033333335f; + if (lbl_1_bss_C4 >= 0.5f) { + lbl_1_bss_C4 = 0.5f; + } + } else { + if (lbl_1_bss_B0 == 0.0f) { + lbl_1_bss_C4 -= 0.033333335f; + if (lbl_1_bss_C4 <= 0.0f) { + lbl_1_bss_C4 = 0.0f; + Hu3DModelAttrSet(arg0->model[4], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(arg0->model[6], HU3D_ATTR_DISPOFF); + return; + } + } else { + Hu3DModelAttrSet(arg0->model[4], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(arg0->model[6], HU3D_ATTR_DISPOFF); + return; + } + } + for (var_r30 = 0; var_r30 < 3; var_r30++) { + Hu3DModelTPLvlSet(arg0->model[var_r30 + 4], lbl_1_bss_C4); + Hu3DModelRotSet(arg0->model[var_r30 + 4], 0.0f, 0.0f, lbl_1_bss_1408[var_r30][1]); + lbl_1_bss_1408[var_r30][0] = 10.0 * cosd(11.0f * lbl_1_data_36C[var_r30]); + lbl_1_bss_1408[var_r30][1] = 30.0 * sind(8.0f * lbl_1_data_36C[var_r30]); + if ((lbl_1_data_36C[var_r30] += 0.4f) >= 360.0f) { + lbl_1_data_36C[var_r30] -= 360.0f; + } + } +} + +void fn_1_DB68(omObjData* arg0, s32 arg1, s32 arg2) { + s32 sp8[] = { DATA_MAKE_NUM(DATADIR_MSTORY3, 6), DATA_MAKE_NUM(DATADIR_MSTORY3, 5) }; + s32 var_r30; + + if (arg2 < 5) { + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 4)); + arg0->motion[0] = Hu3DMotionIDGet(arg0->model[1]); + fn_1_1E28(arg0, 1, 0, 0, 2); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 8)); + arg0->model[3] = Hu3DModelCreateFile(sp8[arg1]); + arg0->motion[3] = Hu3DMotionIDGet(arg0->model[3]); + fn_1_1E28(arg0, 3, 3, 0, 1); + Hu3DModelShadowMapObjSet(arg0->model[1], "base_fix9-base"); + } else { + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 7)); + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 8)); + arg0->model[3] = Hu3DModelCreateFile(sp8[arg1]); + Hu3DModelAttrSet(arg0->model[3], HU3D_ATTR_DISPOFF); + arg0->motion[3] = Hu3DMotionIDGet(arg0->model[1]); + fn_1_1E28(arg0, 1, 3, 0, 1); + Hu3DModelShadowMapObjSet(arg0->model[1], "base_story-base"); + } + for (var_r30 = 4; var_r30 < 7; var_r30++) { + arg0->model[var_r30] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 11)); + Hu3DModelTPLvlSet(arg0->model[var_r30], 0.0f); + Hu3DModelPosSet(arg0->model[var_r30], -200.0f + 200.0f * (var_r30 - 4), 750.0f, 500.0f); + Hu3DModelScaleSet(arg0->model[var_r30], 1.25f, 2.0f, 1.25f); + Hu3DModelAttrSet(arg0->model[var_r30], HU3D_ATTR_DISPOFF); + } + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY3, 9)); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[2], DATA_MAKE_NUM(DATADIR_MSTORY3, 10)); + lbl_1_bss_1530.unk14 = espEntry(DATA_MAKE_NUM(DATADIR_MSTORY3, 30), 0, 0); + espPosSet(lbl_1_bss_1530.unk14, 288.0f, 110.0f); + espDispOff(lbl_1_bss_1530.unk14); + fn_1_1E28(arg0, 2, 2, 0, 2); + fn_1_35C8(arg0->model[1]); + fn_1_35C8(arg0->model[2]); + fn_1_35C8(arg0->model[3]); + arg0->model[20] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 31) + arg2); + arg0->motion[20] = Hu3DMotionIDGet(arg0->model[20]); + Hu3DModelPosSet(arg0->model[20], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[20], HU3D_ATTR_DISPOFF); + fn_1_1E28(arg0, 20, 20, 0, 2); + arg0->model[21] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 37)); + arg0->motion[21] = Hu3DMotionIDGet(arg0->model[21]); + Hu3DModelPosSet(arg0->model[21], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[21], HU3D_ATTR_DISPOFF); + fn_1_1E28(arg0, 21, 21, 0, 2); + arg0->model[22] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 38)); + arg0->motion[22] = Hu3DMotionIDGet(arg0->model[22]); + Hu3DModelPosSet(arg0->model[22], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[22], HU3D_ATTR_DISPOFF); + fn_1_1E28(arg0, 22, 22, 0, 2); + arg0->model[23] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 39)); + Hu3DModelPosSet(arg0->model[23], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrSet(arg0->model[23], HU3D_ATTR_DISPOFF); +} + +void fn_1_E160(omObjData* arg0) { + s32 var_r28; + s32 var_r29; + s32 var_r31; + + if (lbl_1_bss_C0 == 0.0f) { + return; + } + Hu3DGLightColorSet(lbl_1_bss_1580.unk1C, lbl_1_bss_1580.unk20, lbl_1_bss_1580.unk20, lbl_1_bss_1580.unk20, 0xFF); + lbl_1_bss_1580.unk20++; + if (lbl_1_bss_1580.unk20 >= 128) { + lbl_1_bss_1580.unk20 = 128; + } + for (var_r31 = 1; var_r31 < 80; var_r31++) { + switch (lbl_1_bss_C8[var_r31].unk00) { + case 0: + lbl_1_bss_C8[var_r31].unk30 = Hu3DData[arg0->model[var_r31]].pos.y = 450.0f + rand8() % 150; + lbl_1_bss_C8[var_r31].unk00 = 1; + break; + case 3: + lbl_1_bss_C8[var_r31].unk30 = Hu3DData[arg0->model[var_r31]].pos.y = 500.0f; + /* fallthrough */ + case 1: + if (var_r31 % 3 != 0) { + var_r28 = rand8() % 4; + } else { + var_r28 = 5; + } + switch (var_r28) { + case 0: + Hu3DModelAmbSet(arg0->model[var_r31], 1.0f, 1.0f, 1.0f); + break; + case 1: + Hu3DModelAmbSet(arg0->model[var_r31], 1.0f, 0.0f, 0.0f); + break; + case 2: + Hu3DModelAmbSet(arg0->model[var_r31], 0.0f, 1.0f, 0.0f); + break; + case 3: + Hu3DModelAmbSet(arg0->model[var_r31], 0.0f, 0.0f, 1.0f); + break; + case 5: + break; + } + Hu3DModelAttrReset(arg0->model[var_r31], HU3D_ATTR_DISPOFF); + if (lbl_1_bss_1580.unk344 == 0) { + lbl_1_bss_C8[var_r31].unk2C = Hu3DData[arg0->model[var_r31]].pos.x = -50.0f + lbl_1_bss_BC + rand8() % 100; + } else { + lbl_1_bss_C8[var_r31].unk2C = Hu3DData[arg0->model[var_r31]].pos.x = -100.0f + lbl_1_bss_BC + rand8() % 200; + } + lbl_1_bss_C8[var_r31].unk34 = Hu3DData[arg0->model[var_r31]].pos.z = 460.0f; + Hu3DData[arg0->model[var_r31]].rot.x = rand8(); + Hu3DData[arg0->model[var_r31]].rot.y = rand8(); + Hu3DData[arg0->model[var_r31]].rot.z = rand8(); + lbl_1_bss_C8[var_r31].unk20 = (rand8() % 50 + -1.0f) / 100.0f; + if (var_r31 % 2 == 0) { + lbl_1_bss_C8[var_r31].unk20 *= -1.0f; + } + lbl_1_bss_C8[var_r31].unk24 = ((rand8() % 100 + 100) / 100.0f) * -1.0f; + lbl_1_bss_C8[var_r31].unk28 = (rand8() % 100 - 1) / 100; + lbl_1_bss_C8[var_r31].unk10 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk14 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk18 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk00 = 2; + break; + case 2: + if (lbl_1_bss_C8[var_r31].unk04-- <= 0) { + lbl_1_bss_C8[var_r31].unk04 = rand8() % 30 + 30; + lbl_1_bss_C8[var_r31].unk20 = (rand8() % 50 + -1.0f) / 100.0f; + if (var_r31 % 2 == 0) { + lbl_1_bss_C8[var_r31].unk20 *= -1.0f; + } + lbl_1_bss_C8[var_r31].unk24 = ((rand8() % 100 + 100) / 100.0f) *-1.0f; + lbl_1_bss_C8[var_r31].unk28 = (rand8() % 100 - 1) / 100; + lbl_1_bss_C8[var_r31].unk10 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk14 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk18 = (rand8() % 100 - 50) / 5; + } + lbl_1_bss_C8[var_r31].unk2C += lbl_1_bss_C8[var_r31].unk20; + lbl_1_bss_C8[var_r31].unk30 += lbl_1_bss_C8[var_r31].unk24; + lbl_1_bss_C8[var_r31].unk34 += lbl_1_bss_C8[var_r31].unk28; + Hu3DData[arg0->model[var_r31]].rot.x += lbl_1_bss_C8[var_r31].unk10; + Hu3DData[arg0->model[var_r31]].rot.y += lbl_1_bss_C8[var_r31].unk14; + Hu3DData[arg0->model[var_r31]].rot.z += lbl_1_bss_C8[var_r31].unk18; + if (Hu3DData[arg0->model[var_r31]].pos.y <= 0.0f) { + lbl_1_bss_C8[var_r31].unk00 = 3; + } + break; + case 10: + Hu3DModelAttrReset(arg0->model[var_r31], HU3D_ATTR_DISPOFF); + if (var_r31 % 3 != 0) { + var_r28 = rand8() % 4; + } else { + var_r28 = 5; + } + switch (var_r28) { + case 0: + Hu3DModelAmbSet(arg0->model[var_r31], 1.0f, 1.0f, 1.0f); + break; + case 1: + Hu3DModelAmbSet(arg0->model[var_r31], 1.0f, 0.0f, 0.0f); + break; + case 2: + Hu3DModelAmbSet(arg0->model[var_r31], 0.0f, 1.0f, 0.0f); + break; + case 3: + Hu3DModelAmbSet(arg0->model[var_r31], 0.0f, 0.0f, 1.0f); + break; + case 5: + break; + } + lbl_1_bss_C8[var_r31].unk2C = Hu3DData[arg0->model[var_r31]].pos.x = lbl_1_bss_BC; + lbl_1_bss_C8[var_r31].unk30 = Hu3DData[arg0->model[var_r31]].pos.y = 375.0f; + lbl_1_bss_C8[var_r31].unk34 = Hu3DData[arg0->model[var_r31]].pos.z = 460.0f; + var_r29 = rand8(); + if (rand8() % 2 == 0) { + var_r29 *= -1; + } + lbl_1_bss_C8[var_r31].unk2C += var_r29; + var_r29 = rand8(); + if (rand8() % 2 == 0) { + var_r29 *= -1; + } + lbl_1_bss_C8[var_r31].unk30 += var_r29; + var_r29 = rand8() % 50; + if (rand8() % 2 == 0) { + var_r29 *= -1; + } + lbl_1_bss_C8[var_r31].unk34 += var_r29; + lbl_1_bss_C8[var_r31].unk20 = (rand8() % 50 + -1.0f) / 100.0f; + if (var_r31 % 2 == 0) { + lbl_1_bss_C8[var_r31].unk20 *= -1.0f; + } + lbl_1_bss_C8[var_r31].unk24 = ((rand8() % 100 + 100) / 100.0f) * -1.0f; + lbl_1_bss_C8[var_r31].unk28 = (rand8() % 100 - 1) / 100; + lbl_1_bss_C8[var_r31].unk10 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk14 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk18 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk08 = 0; + lbl_1_bss_C8[var_r31].unk04 = rand8() % 30 + 30; + lbl_1_bss_C8[var_r31].unk00 = 11; + break; + case 11: + if (lbl_1_bss_C8[var_r31].unk04-- <= 0) { + lbl_1_bss_C8[var_r31].unk04 = rand8() % 30 + 30; + lbl_1_bss_C8[var_r31].unk20 = (rand8() % 50 + -1.0f) / 100.0f; + if (var_r31 % 2 == 0) { + lbl_1_bss_C8[var_r31].unk20 *= -1.0f; + } + lbl_1_bss_C8[var_r31].unk24 = ((rand8() % 100 + 100) / 100.0f) * -1.0f; + lbl_1_bss_C8[var_r31].unk28 = (rand8() % 100 - 1) / 100; + lbl_1_bss_C8[var_r31].unk10 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk14 = (rand8() % 100 - 50) / 5; + lbl_1_bss_C8[var_r31].unk18 = (rand8() % 100 - 50) / 5; + } + lbl_1_bss_C8[var_r31].unk2C += lbl_1_bss_C8[var_r31].unk20; + lbl_1_bss_C8[var_r31].unk30 += lbl_1_bss_C8[var_r31].unk24 / 2; + lbl_1_bss_C8[var_r31].unk34 += lbl_1_bss_C8[var_r31].unk28; + Hu3DData[arg0->model[var_r31]].rot.x += lbl_1_bss_C8[var_r31].unk10; + Hu3DData[arg0->model[var_r31]].rot.y += lbl_1_bss_C8[var_r31].unk14; + Hu3DData[arg0->model[var_r31]].rot.z += lbl_1_bss_C8[var_r31].unk18; + if (lbl_1_bss_C8[var_r31].unk08++ >= 50) { + lbl_1_bss_C8[var_r31].unk00 = 2; + } + break; + } + Hu3DData[arg0->model[var_r31]].pos.x = fn_1_5FC(Hu3DData[arg0->model[var_r31]].pos.x, lbl_1_bss_C8[var_r31].unk2C, 30.0f); + Hu3DData[arg0->model[var_r31]].pos.y = fn_1_5FC(Hu3DData[arg0->model[var_r31]].pos.y, lbl_1_bss_C8[var_r31].unk30, 30.0f); + Hu3DData[arg0->model[var_r31]].pos.z = fn_1_5FC(Hu3DData[arg0->model[var_r31]].pos.z, lbl_1_bss_C8[var_r31].unk34, 30.0f); + } +} + +void fn_1_FD30(omObjData* arg0) { + s32 var_r30; + + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 17)); + arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 18)); + Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); + for (var_r30 = 2; var_r30 < 80; var_r30++) { + if (var_r30 % 3 == 0) { + arg0->model[var_r30] = Hu3DModelLink(arg0->model[1]); + } else { + arg0->model[var_r30] = Hu3DModelLink(arg0->model[0]); + } + Hu3DModelAttrSet(arg0->model[var_r30], HU3D_ATTR_DISPOFF); + lbl_1_bss_C8[var_r30].unk04 = lbl_1_bss_C8[var_r30].unk08 = 0; + lbl_1_bss_C8[var_r30].unk00 = 10; + } + arg0->func = fn_1_E160; +} + +void fn_1_FE80(void) { + omObjData* temp_r31; + omObjData* sp8; + + temp_r31 = omAddObjEx(lbl_1_bss_A8, 0x100, 0x20, 0x20, -1, NULL); + sp8 = omAddObjEx(lbl_1_bss_A8, 0x100, 0x80, 0, -1, fn_1_FD30); + lbl_1_bss_1530.unk00 = temp_r31; + lbl_1_bss_1530.unk04 = NULL; + lbl_1_bss_1530.unk00->data = &lbl_1_bss_1530; + fn_1_DB68(temp_r31, lbl_1_bss_1580.unk08, lbl_1_bss_1580.unk00); + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1530.unk04 != NULL) { + lbl_1_bss_1530.unk04(temp_r31); + } + fn_1_D7D8(temp_r31); + } +} + +void fn_1_FF7C(s32 arg0) { + s32 sp30[4]; + s32 sp20[4]; + s32 sp10[4]; + s32 i, j; + s32 var_r29; + + sp30[0] = 0; + for (i = 1; i < 4; i++) { + sp30[i] = sp30[i - 1] + 1; + if (sp30[i] >= 4) { + sp30[i] = 0; + } + if (arg0 == sp30[i]) { + lbl_1_bss_1580.unk0C = i; + } + } + if (lbl_1_bss_1580.unk08 != 0) { + lbl_1_bss_1580.unk14 = arg0; + } + if (lbl_1_bss_1580.unk344 == 1) { + var_r29 = 0; + for (i = 0; i < 4; i++) { + sp10[0] = GWPlayer[sp30[0]].team; + sp10[1] = GWPlayer[sp30[1]].team; + sp10[2] = GWPlayer[sp30[2]].team; + sp10[3] = GWPlayer[sp30[3]].team; + sp20[i] = sp30[i]; + } + OSReport("########## Sort Start WIN:%d IDX (%d,%d), (%d,%d), (%d,%d), (%d,%d)\n", + var_r29, sp10[0], sp30[0], sp10[1], sp30[1], sp10[2], sp30[2], sp10[3], sp30[3]); + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + if (sp10[j] != -1 && var_r29 == sp10[j]) { + sp10[j] = -1; + sp30[i] = sp20[j]; + break; + } + } + if (i == 1) { + var_r29++; + var_r29 %= 2; + } + } + OSReport("########## Sort End WIN:%d IDX %d, %d, %d, %d\n", var_r29, sp30[0], sp30[1], sp30[2], sp30[3]); + } + for (i = 0; i < 4; i++) { + fn_1_3650(&lbl_1_bss_1580.unkC4[i].unk00, sp30[i]); + } + for (i = 0; i < 4; i++) { + lbl_1_bss_1580.unkC4[i].unk00.unk1C = GWPlayer[sp30[i]].coins; + lbl_1_bss_1580.unkC4[i].unk00.unk20 = GWPlayer[sp30[i]].stars; + lbl_1_bss_1580.unkC4[i].unk00.unk24 = GWPlayer[sp30[i]].coins_mg; + lbl_1_bss_1580.unkC4[i].unk00.unk28 = GWPlayer[sp30[i]].coins_max; + lbl_1_bss_1580.unkC4[i].unk00.unk2C = GWPlayer[sp30[i]].question_count; + } +} + +void fn_1_1036C(omObjData* arg0) { + float var_f29; + float var_f30; + float temp_f31; + s32 temp_r25; + s32 var_r26; + s32 var_r27 = 3; + StructBss1530* temp_r30 = arg0->data; + char* sp98[][3] = { + { "submit07-star_null3", "submit07-star_null1", "submit07-star_null1" }, + { "submit07-star_null4", "submit07-star_null2", "submit07-star_null1" }, + { "submit07-star_null5", "submit07-star_null3", "submit07-star_null1" } + }; + Mtx sp68; + Mtx sp38; + Mtx sp8; + s32 var_r28; + s32 var_r29; + + Hu3DModelPosSet(arg0->model[3], lbl_1_data_130[temp_r30->unk08].x, 100.0f, lbl_1_data_130[temp_r30->unk08].z - 20.0f); + Hu3DModelRotSet(arg0->model[3], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[3], 0.0f, 0.0f, 0.0f); + if ((temp_r25 = lbl_1_bss_1580.unkC4[temp_r30->unk08].unk00.unk20 / 100) == 0) { + var_r27 = 2; + } else { + Hu3DMotionTimeSet(arg0->model[9], (temp_r25 + 1) % 10); + } + if ((temp_r25 = (lbl_1_bss_1580.unkC4[temp_r30->unk08].unk00.unk20 % 100) / 10) == 0 && var_r27 == 2) { + var_r27 = 1; + } else { + Hu3DMotionTimeSet(arg0->model[8], (temp_r25 + 1) % 10); + } + temp_r25 = lbl_1_bss_1580.unkC4[temp_r30->unk08].unk00.unk20 % 10; + Hu3DMotionTimeSet(arg0->model[7], (temp_r25 + 1) % 10); + Hu3DModelAttrReset(arg0->model[3], HU3D_ATTR_DISPOFF); + for (var_r28 = 0; var_r28 < 90; var_r28++) { + fn_1_938(); + var_f29 = fn_1_6F4(100.0f, 300.0f, var_r28, 90.0f); + var_f30 = fn_1_6F4(0.0f, 1080.0f, var_r28, 90.0f); + temp_f31 = fn_1_6F4(0.0f, 0.75f, var_r28, 90.0f); + Hu3DModelPosSet(arg0->model[3], lbl_1_data_130[temp_r30->unk08].x, var_f29, lbl_1_data_130[temp_r30->unk08].z - 20.0f); + Hu3DModelRotSet(arg0->model[3], 0.0f, var_f30, 0.0f); + Hu3DModelScaleSet(arg0->model[3], temp_f31, temp_f31, temp_f31); + for (var_r29 = 0; var_r29 < var_r27; var_r29++) { + if (var_f30 >= 900.0f) { + Hu3DModelAttrReset(arg0->model[var_r29 + 7], HU3D_ATTR_DISPOFF); + } + Hu3DModelObjMtxGet(arg0->model[3], sp98[var_r27 - 1][var_r29], sp68); + Hu3DModelPosSet(arg0->model[var_r29 + 7], sp68[0][3], sp68[1][3], sp68[2][3]); + Hu3DModelRotSet(arg0->model[var_r29 + 7], 0.0f, var_f30, 0.0f); + Hu3DModelScaleSet(arg0->model[var_r29 + 7], temp_f31, temp_f31, temp_f31); + } + } + var_r28 = var_r29 = var_r26 = 0; + if (temp_r30->unk1C == 1) { + fn_1_1E28(arg0, 1, 14, 5, 0); + } else { + fn_1_1E28(arg0, 1, 15, 5, 0); + } + do { + fn_1_938(); + if (temp_r30->unk1C == 1) { + temp_f31 = fn_1_878(0.75f, 1.0f, var_r26, 30.0f); + if (var_r26++ >= 29) { + var_r26 = 0; + } + Hu3DModelScaleSet(arg0->model[3], temp_f31, temp_f31, temp_f31); + for (var_r29 = 0; var_r29 < var_r27; var_r29++) { + Hu3DModelObjMtxGet(arg0->model[3], sp98[var_r27 - 1][var_r29], sp38); + Hu3DModelPosSet(arg0->model[var_r29 + 7], sp38[0][3], sp38[1][3], sp38[2][3]); + Hu3DModelRotSet(arg0->model[var_r29 + 7], 0.0f, var_f30, 0.0f); + Hu3DModelScaleSet(arg0->model[var_r29 + 7], temp_f31, temp_f31, temp_f31); + } + } + if (var_r28 == 60) { + fn_1_1E28(arg0, 1, 1, 15, 1); + } + if (var_r28 == 120) { + lbl_1_bss_1580.unk18 = 1; + } + if (var_r28++ >= 120 && (var_r26 == 0 || var_r26 == 15) && temp_r30->unk18 == 1) { + temp_r30->unk18 = 2; + } + } while (temp_r30->unk18 != 3); + HuAudFXPlay(0xBB); + for (var_r28 = 0; var_r28 < 60; var_r28++) { + fn_1_938(); + if (var_r28 > 30) { + var_f29 = fn_1_61C(300.0f, 600.0f, var_r28 - 30, 30.0f); + } + var_f30 = fn_1_61C(0.0f, 360.0f, var_r28, 60.0f); + Hu3DModelPosSet(arg0->model[3], lbl_1_data_130[temp_r30->unk08].x, var_f29, lbl_1_data_130[temp_r30->unk08].z - 20.0f); + Hu3DModelRotSet(arg0->model[3], 0.0f, var_f30, 0.0f); + for (var_r29 = 0; var_r29 < var_r27; var_r29++) { + if (var_f30 >= 180.0f) { + Hu3DModelAttrSet(arg0->model[var_r29 + 7], HU3D_ATTR_DISPOFF); + } + Hu3DModelObjMtxGet(arg0->model[3], sp98[var_r27 - 1][var_r29], sp8); + Hu3DModelPosSet(arg0->model[var_r29 + 7], sp8[0][3], sp8[1][3], sp8[2][3]); + Hu3DModelRotSet(arg0->model[var_r29 + 7], 0.0f, var_f30, 0.0f); + } + } + Hu3DModelAttrSet(arg0->model[3], HU3D_ATTR_DISPOFF); + for (var_r28 = 0; var_r28 < 3; var_r28++) { + Hu3DModelAttrSet(arg0->model[var_r28 + 7], HU3D_ATTR_DISPOFF); + } + temp_r30->unk04 = 0; +} + +void fn_1_10D74(omObjData* arg0) { + float var_f29; + float var_f30; + float temp_f31; + s32 temp_r25; + s32 var_r26; + s32 var_r27 = 3; + StructBss1530* temp_r30 = arg0->data; + char* sp98[][3] = { + { "coin-coin-null3", "coin-coin_null1", "coin-coin-null1" }, + { "coin-coin-null4", "coin-coin-null2", "coin-coin-null1" }, + { "coin-coin-null5", "coin-coin-null3", "coin-coin-null1" } + }; + Mtx sp68; + Mtx sp38; + Mtx sp8; + s32 var_r28; + s32 var_r29; + + Hu3DModelPosSet(arg0->model[4], lbl_1_data_130[temp_r30->unk08].x, 100.0f, lbl_1_data_130[temp_r30->unk08].z - 20.0f); + Hu3DModelRotSet(arg0->model[4], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[4], 0.0f, 0.0f, 0.0f); + if ((temp_r25 = lbl_1_bss_1580.unkC4[temp_r30->unk08].unk00.unk1C / 100) == 0) { + var_r27 = 2; + } else { + Hu3DMotionTimeSet(arg0->model[9], (temp_r25 + 1) % 10); + } + if ((temp_r25 = (lbl_1_bss_1580.unkC4[temp_r30->unk08].unk00.unk1C % 100) / 10) == 0 && var_r27 == 2) { + var_r27 = 1; + } else { + Hu3DMotionTimeSet(arg0->model[8], (temp_r25 + 1) % 10); + } + temp_r25 = lbl_1_bss_1580.unkC4[temp_r30->unk08].unk00.unk1C % 10; + Hu3DMotionTimeSet(arg0->model[7], (temp_r25 + 1) % 10); + Hu3DModelAttrReset(arg0->model[4], HU3D_ATTR_DISPOFF); + for (var_r28 = 0; var_r28 < 90; var_r28++) { + fn_1_938(); + var_f29 = fn_1_6F4(100.0f, 300.0f, var_r28, 90.0f); + var_f30 = fn_1_6F4(0.0f, 1080.0f, var_r28, 90.0f); + temp_f31 = fn_1_6F4(0.0f, 0.75f, var_r28, 90.0f); + Hu3DModelPosSet(arg0->model[4], lbl_1_data_130[temp_r30->unk08].x, var_f29, lbl_1_data_130[temp_r30->unk08].z - 20.0f); + Hu3DModelRotSet(arg0->model[4], 0.0f, var_f30, 0.0f); + Hu3DModelScaleSet(arg0->model[4], temp_f31, temp_f31, temp_f31); + for (var_r29 = 0; var_r29 < var_r27; var_r29++) { + if (var_f30 >= 900.0f) { + Hu3DModelAttrReset(arg0->model[var_r29 + 7], HU3D_ATTR_DISPOFF); + } + Hu3DModelObjMtxGet(arg0->model[4], sp98[var_r27 - 1][var_r29], sp68); + Hu3DModelPosSet(arg0->model[var_r29 + 7], sp68[0][3], sp68[1][3], sp68[2][3]); + Hu3DModelRotSet(arg0->model[var_r29 + 7], 0.0f, var_f30, 0.0f); + Hu3DModelScaleSet(arg0->model[var_r29 + 7], temp_f31, temp_f31, temp_f31); + } + } + var_r28 = var_r29 = var_r26 = 0; + if (temp_r30->unk1C == 1) { + fn_1_1E28(arg0, 1, 14, 5, 0); + } else { + fn_1_1E28(arg0, 1, 15, 5, 0); + } + do { + fn_1_938(); + if (temp_r30->unk1C == 1) { + temp_f31 = fn_1_878(0.75f, 1.0f, var_r26, 30.0f); + if (var_r26++ >= 29) { + var_r26 = 0; + } + Hu3DModelScaleSet(arg0->model[4], temp_f31, temp_f31, temp_f31); + for (var_r29 = 0; var_r29 < var_r27; var_r29++) { + Hu3DModelObjMtxGet(arg0->model[4], sp98[var_r27 - 1][var_r29], sp38); + Hu3DModelPosSet(arg0->model[var_r29 + 7], sp38[0][3], sp38[1][3], sp38[2][3]); + Hu3DModelRotSet(arg0->model[var_r29 + 7], 0.0f, var_f30, 0.0f); + Hu3DModelScaleSet(arg0->model[var_r29 + 7], temp_f31, temp_f31, temp_f31); + } + } + if (var_r28 == 60) { + fn_1_1E28(arg0, 1, 1, 15, 1); + } + if (var_r28 == 120) { + lbl_1_bss_1580.unk18 = 1; + } + if (var_r28++ >= 120 && (var_r26 == 0 || var_r26 == 15) && temp_r30->unk18 == 1) { + temp_r30->unk18 = 2; + } + } while (temp_r30->unk18 != 3); + fn_1_1E28(arg0, 1, 1, 15, 1); + HuAudFXPlay(0xBC); + for (var_r28 = 0; var_r28 < 60; var_r28++) { + fn_1_938(); + if (var_r28 > 30) { + var_f29 = fn_1_61C(300.0f, 600.0f, var_r28 - 30, 30.0f); + } + var_f30 = fn_1_61C(0.0f, 360.0f, var_r28, 60.0f); + Hu3DModelPosSet(arg0->model[4], lbl_1_data_130[temp_r30->unk08].x, var_f29, lbl_1_data_130[temp_r30->unk08].z - 20.0f); + Hu3DModelRotSet(arg0->model[4], 0.0f, var_f30, 0.0f); + for (var_r29 = 0; var_r29 < var_r27; var_r29++) { + if (var_f30 >= 180.0f) { + Hu3DModelAttrSet(arg0->model[var_r29 + 7], HU3D_ATTR_DISPOFF); + } + Hu3DModelObjMtxGet(arg0->model[4], sp98[var_r27 - 1][var_r29], sp8); + Hu3DModelPosSet(arg0->model[var_r29 + 7], sp8[0][3], sp8[1][3], sp8[2][3]); + Hu3DModelRotSet(arg0->model[var_r29 + 7], 0.0f, var_f30, 0.0f); + } + } + Hu3DModelAttrSet(arg0->model[4], HU3D_ATTR_DISPOFF); + for (var_r28 = 0; var_r28 < 3; var_r28++) { + Hu3DModelAttrSet(arg0->model[var_r28 + 7], HU3D_ATTR_DISPOFF); + } + temp_r30->unk04 = 0; +} + +void fn_1_11794(omObjData* arg0) { + StructBss1530* temp_r30; + + temp_r30 = arg0->data; + fn_1_958(25); + fn_1_1E28(arg0, 1, 15, 5, 0); + fn_1_958(10); + while (TRUE) { + fn_1_938(); + if (Hu3DMotionTimeGet(arg0->model[1]) >= 40.0f) { + break; + } + } + Hu3DModelAttrSet(arg0->model[1], HU3D_MOTATTR_PAUSE); + temp_r30->unk04 = 0; +} + +void fn_1_11834(omObjData* arg0) { + float var_f31; + float var_f30; + float temp_f26; + float temp_f27; + float temp_f25; + float temp_f29; + float temp_f28; + StructBss1530* temp_r31; + s32 temp_r29; + s32 var_r24; + s32 temp_r23; + s32 var_r27; + s32 temp_r25; + s32 var_r28; + + var_f30 = 0.0f; + temp_r31 = arg0->data; + temp_r29 = temp_r31->unk08; + temp_r23 = lbl_1_bss_1490[temp_r29].unk00->work[0]; + var_r24 = 0xFF; + Hu3DModelPosSet(lbl_1_bss_1490[temp_r29].unk00->model[6], lbl_1_data_130[temp_r29].x, 500.0f + lbl_1_data_130[temp_r29].y + lbl_1_bss_AC, lbl_1_data_130[temp_r29].z + 0.1f * lbl_1_bss_AC); + Hu3DModelScaleSet(lbl_1_bss_1490[temp_r29].unk00->model[6], 0.0f, 1.25f, 0.0f); + Hu3DModelTPLvlSet(lbl_1_bss_1490[temp_r29].unk00->model[6], 0.0f); + Hu3DModelAttrReset(lbl_1_bss_1490[temp_r29].unk00->model[6], HU3D_ATTR_DISPOFF); + for (var_r27 = 0; var_r27 <= 5; var_r27++) { + fn_1_938(); + lbl_1_bss_1490[temp_r29].unk00->work[0] = fn_1_6F4(temp_r23, var_r24, var_r27, 5.0f); + temp_f27 = fn_1_6F4(0.0f, 1.5f, var_r27, 5.0f); + temp_f25 = fn_1_6F4(0.0f, 0.5f, var_r27, 5.0f); + temp_r25 = fn_1_6F4(0.0f, 128.0f, var_r27, 5.0f); + Hu3DModelScaleSet(lbl_1_bss_1490[temp_r29].unk00->model[6], temp_f27, 1.25f, temp_f27); + Hu3DModelTPLvlSet(lbl_1_bss_1490[temp_r29].unk00->model[6], temp_f25); + Hu3DLLightColorSet(lbl_1_bss_1490[temp_r29].unk00->model[1], lbl_1_bss_1580.unk24[temp_r29].unk00, temp_r25, temp_r25, temp_r25, 0xFF); + Hu3DLLightColorSet(lbl_1_bss_1490[temp_r29].unk00->model[2], lbl_1_bss_1580.unk24[temp_r29].unk04, temp_r25, temp_r25, temp_r25, 0xFF); + } + lbl_1_bss_1490[temp_r29].unk00->work[1] = 1; + fn_1_958(20); + fn_1_1E28(arg0, 1, 3, 15, 0); + fn_1_2310(arg0, 1, 3, 15); + do { + fn_1_938(); + } while (temp_r31->unk18 == 0); + Hu3DModelPosSet(arg0->model[5], lbl_1_data_130[temp_r31->unk08].x, 300.0f, lbl_1_data_130[temp_r31->unk08].z - 50.0f); + Hu3DModelRotSet(arg0->model[5], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[5], 0.0f, 0.0f, 0.0f); + Hu3DModelAttrReset(arg0->model[5], HU3D_ATTR_DISPOFF); + HuAudFXPlay(0x338); + for (var_r28 = 0; var_r28 < 60; var_r28++) { + fn_1_938(); + temp_f29 = 10.0 + 10.0 * sind(var_f30); + temp_f28 = 10.0 * sind(2.0f * var_f30); + if (var_r28 < 10) { + var_f31 = fn_1_61C(0.0f, 1.0f, var_r28, 10.0f); + } else { + var_f31 = fn_1_61C(1.0f, 0.5f, var_r28 - 10, 5.0f); + } + if (var_r28 == 10) { + lbl_1_bss_1580.unk334[temp_r31->unk08] = fn_1_8264(); + Hu3DParManPosSet(lbl_1_bss_1580.unk334[temp_r31->unk08], lbl_1_data_130[temp_r31->unk08].x, 300.0f + temp_f29, lbl_1_data_130[temp_r31->unk08].z); + } + if ((var_f30 += 2.0f) >= 360.0f) { + var_f30 -= 360.0f; + } + Hu3DModelPosSet(arg0->model[5], lbl_1_data_130[temp_r31->unk08].x, 300.0f + temp_f29, lbl_1_data_130[temp_r31->unk08].z - 50.0f); + Hu3DModelRotSet(arg0->model[5], 0.0f, temp_f28, 0.0f); + Hu3DModelScaleSet(arg0->model[5], var_f31, var_f31, var_f31); + } + Hu3DParManKill(lbl_1_bss_1580.unk334[temp_r31->unk08]); + lbl_1_bss_1580.unk334[temp_r31->unk08] = -1; + temp_f29 = Hu3DData[arg0->model[5]].pos.y; + temp_f26 = temp_f29; + temp_f28 = Hu3DData[arg0->model[5]].rot.y; + var_f31 = 0.5f; + var_f30 = 0.0f; + for (var_r28 = 0; var_r28 < 90; var_r28++) { + fn_1_938(); + if (var_r28 == 45) { + HuAudFXPlay(0x339); + } + if (var_r28 > 45) { + temp_f29 = fn_1_61C(temp_f26, 100.0f, var_r28 - 45, 45.0f); + var_f31 = fn_1_61C(0.5f, 0.0f, var_r28 - 45, 45.0f); + } + temp_f28 += var_f30 += 0.25f; + Hu3DModelPosSet(arg0->model[5], lbl_1_data_130[temp_r31->unk08].x, temp_f29, lbl_1_data_130[temp_r31->unk08].z - 50.0f); + Hu3DModelRotSet(arg0->model[5], 0.0f, temp_f28, 0.0f); + Hu3DModelScaleSet(arg0->model[5], var_f31, var_f31, var_f31); + } + Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); + HuAudFXPlay(8); + lbl_1_bss_1580.unkC4[temp_r31->unk08].unk00.unk20++; + GWPlayer[lbl_1_bss_1580.unkC4[temp_r31->unk08].unk00.unk00].stars++; + if (GWPlayer[lbl_1_bss_1580.unkC4[temp_r31->unk08].unk00.unk00].stars >= 999) { + GWPlayer[lbl_1_bss_1580.unkC4[temp_r31->unk08].unk00.unk00].stars = 999; + } + temp_r31->unk04 = 0; +} + +void fn_1_123D8(omObjData* arg0) { + StructBss1530* temp_r31; + + temp_r31 = arg0->data; + fn_1_15450(temp_r31->unk08); + temp_r31->unk04 = 0; +} + +void fn_1_1241C(omObjData* arg0) { +} + +void fn_1_12420(omObjData* arg0) { + float sp8[] = { 0.0f, -30.0f, -60.0f, -90.0f }; + float temp_f31; + StructBss1530* temp_r31; + s32 var_r27; + s32 var_r29; + s32 var_r28; + + temp_r31 = arg0->data; + if (lbl_1_bss_1580.unk344 == 1) { + var_r27 = 0; + if (lbl_1_bss_1580.unk348 == 1) { + var_r27 = 2; + } + if ((lbl_1_bss_1580.unk348 == 0 && temp_r31->unk08 <= 1) || (lbl_1_bss_1580.unk348 == 1 && temp_r31->unk08 >= 2)) { + Hu3DModelPosSet(arg0->model[2], 100.0f + lbl_1_data_130[temp_r31->unk08].x, -90.0f, lbl_1_data_130[temp_r31->unk08].z); + fn_1_958(90); + if (temp_r31->unk08 == var_r27) { + Hu3DModelAttrReset(arg0->model[2], HU3D_ATTR_DISPOFF); + } + if (arg0->work[0] == 0) { + HuAudFXPlay(0xA8); + } + for (var_r28 = 0; var_r28 <= 30; var_r28++) { + fn_1_938(); + temp_f31 = fn_1_6F4(-90.0f, 0.0f, var_r28, 30.0f); + Hu3DModelPosSet(arg0->model[1], lbl_1_data_130[temp_r31->unk08].x, 90.0f + temp_f31, lbl_1_data_130[temp_r31->unk08].z - 20.0f); + Hu3DModelPosSet(arg0->model[2], 100.0f + lbl_1_data_130[temp_r31->unk08].x, temp_f31, lbl_1_data_130[temp_r31->unk08].z - 20.0f); + } + } + } else { + Hu3DModelPosSet(arg0->model[2], lbl_1_data_130[temp_r31->unk08].x, -90.0f, lbl_1_data_130[temp_r31->unk08].z); + if (lbl_1_bss_1580.unkC4[temp_r31->unk08].unk00.unk18 != 4) { + } + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (arg0->work[0] == 0 && var_r29 >= 1) { + HuAudFXPlay(0xA5 + var_r29); + } + if (var_r29 != 3) { + for (var_r28 = 0; var_r28 < 30; var_r28++) { + fn_1_938(); + if (sp8[lbl_1_bss_1580.unkC4[temp_r31->unk08].unk00.unk18 - 1] >= sp8[3 - var_r29] && 4 - var_r29 < 4) { + temp_f31 = fn_1_6F4(sp8[4 - var_r29], sp8[3 - var_r29], var_r28, 30.0f); + if (var_r29 == 1) { + Hu3DModelAttrReset(arg0->model[2], HU3D_ATTR_DISPOFF); + } + Hu3DModelPosSet(arg0->model[1], lbl_1_data_130[temp_r31->unk08].x, 90.0f + temp_f31, lbl_1_data_130[temp_r31->unk08].z - 20.0f); + Hu3DModelPosSet(arg0->model[2], lbl_1_data_130[temp_r31->unk08].x, temp_f31, lbl_1_data_130[temp_r31->unk08].z - 20.0f); + } + } + } else { + for (var_r28 = 0; var_r28 < 10; var_r28++) { + fn_1_938(); + if ((sp8[lbl_1_bss_1580.unkC4[temp_r31->unk08].unk00.unk18 - 1] >= sp8[3 - var_r29]) && ((4 - var_r29) < 4)) { + temp_f31 = fn_1_6F4(sp8[4 - var_r29], sp8[3 - var_r29], var_r28, 10.0f); + if (var_r29 == 1) { + Hu3DModelAttrReset(arg0->model[2], HU3D_ATTR_DISPOFF); + } + Hu3DModelPosSet(arg0->model[1], lbl_1_data_130[temp_r31->unk08].x, 90.0f + temp_f31, lbl_1_data_130[temp_r31->unk08].z - 20.0f); + Hu3DModelPosSet(arg0->model[2], lbl_1_data_130[temp_r31->unk08].x, temp_f31, lbl_1_data_130[temp_r31->unk08].z - 20.0f); + } + } + } + if (var_r29 == 2) { + fn_1_958(120); + } else if (var_r29 != 3) { + fn_1_958(60); + } + } + } + temp_r31->unk04 = 0; +} + +void fn_1_12A98(s32 arg0) { + s32 sp8[4]; + s32 var_r29; + s32 var_r30; + s32 i; + + var_r29 = 0; + var_r30 = -1; + for (i = 0; i < 4; i++) { + lbl_1_bss_1458[i] = lbl_1_bss_1448[i] = 0; + } + for (i = 0; i < 4; i++) { + switch (arg0) { + case 0: + sp8[i] = lbl_1_bss_1580.unkC4[i].unk00.unk20; + break; + case 1: + sp8[i] = lbl_1_bss_1580.unkC4[i].unk00.unk1C; + break; + } + } + for (i = 0; i < 4; i++) { + if (var_r30 <= sp8[i]) { + var_r30 = sp8[i]; + } + } + for (i = 0; i < 4; i++) { + if (var_r30 == sp8[i]) { + lbl_1_bss_1458[0]++; + lbl_1_bss_1448[var_r29++] = i; + } + } +} + +void fn_1_12C08(s32 arg0) { + s32 sp8[4]; + s32 var_r29; + s32 var_r30; + s32 i; + + var_r29 = 0; + var_r30 = -1; + for (i = 0; i < 4; i++) { + lbl_1_bss_1458[i] = 0; + lbl_1_bss_1448[i] = -1; + } + for (i = 0; i < 4; i++) { + switch (arg0) { + case 0: + sp8[i] = lbl_1_bss_1580.unkC4[i].unk00.unk24; + break; + case 1: + sp8[i] = lbl_1_bss_1580.unkC4[i].unk00.unk28; + break; + case 2: + sp8[i] = lbl_1_bss_1580.unkC4[i].unk00.unk2C; + break; + } + } + for (i = 0; i < 4; i++) { + if (var_r30 <= sp8[i]) { + var_r30 = sp8[i]; + } + } + for (i = 0; i < 4; i++) { + if (var_r30 == sp8[i]) { + lbl_1_bss_1458[0]++; + lbl_1_bss_1448[var_r29++] = i; + } + } +} + +void fn_1_12DAC(void) { + s32 sp8[4]; + s32 var_r29; + s32 i; + s32 j; + + for (i = 0; i < 4; i++) { + sp8[i] = i; + } + for (i = 0; i < 4; i++) { + for (j = i; j < 4; j++) { + if (lbl_1_bss_1580.unkC4[sp8[j]].unk00.unk20 >= lbl_1_bss_1580.unkC4[sp8[i]].unk00.unk20) { + var_r29 = sp8[i]; + sp8[i] = sp8[j]; + sp8[j] = var_r29; + } + } + } + for (i = 0; i < 4; i++) { + for (j = i; j < 4; j++) { + if ((lbl_1_bss_1580.unkC4[sp8[j]].unk00.unk20 == lbl_1_bss_1580.unkC4[sp8[i]].unk00.unk20) && (lbl_1_bss_1580.unkC4[sp8[j]].unk00.unk1C >= lbl_1_bss_1580.unkC4[sp8[i]].unk00.unk1C)) { + var_r29 = sp8[i]; + sp8[i] = sp8[j]; + sp8[j] = var_r29; + } + } + } + lbl_1_bss_1580.unkC4[sp8[0]].unk00.unk18 = j = 1; + for (i = 1; i < 4; i++) { + j++; + lbl_1_bss_1580.unkC4[sp8[i]].unk00.unk18 = j; + if ((lbl_1_bss_1580.unkC4[sp8[i]].unk00.unk20 == lbl_1_bss_1580.unkC4[sp8[i - 1]].unk00.unk20) && (lbl_1_bss_1580.unkC4[sp8[i]].unk00.unk1C == lbl_1_bss_1580.unkC4[sp8[i - 1]].unk00.unk1C)) { + lbl_1_bss_1580.unkC4[sp8[i]].unk00.unk18 = lbl_1_bss_1580.unkC4[sp8[i - 1]].unk00.unk18; + } + } +} + +void fn_1_130A8(void) { + s32 var_r30; + s32 i; + + var_r30 = 0; + for (i = 0; i < 4; i++) { + lbl_1_bss_1458[i] = lbl_1_bss_1448[i] = 0; + } + for (i = 0; i < 4; i++) { + if (lbl_1_bss_1580.unkC4[i].unk00.unk18 == 1) { + lbl_1_bss_1458[0]++; + lbl_1_bss_1448[var_r30++] = i; + lbl_1_bss_1458[1] = i; + } + } +} + +void fn_1_1317C(void) { + s32 sp8[4]; + s32 var_r30; + s32 i; + + var_r30 = -1; + for (i = 0; i < 4; i++) { + sp8[i] = lbl_1_bss_1428[i]; + } + for (i = 0; i < 4; i++) { + if (var_r30 <= sp8[i]) { + var_r30 = sp8[i]; + } + } + for (i = 0; i < 4; i++) { + if (var_r30 == sp8[i]) { + lbl_1_bss_1458[1] = i; + } + } + for (i = 0; i < lbl_1_bss_1458[0]; i++) { + if (lbl_1_bss_1458[1] != lbl_1_bss_1448[i]) { + lbl_1_bss_1580.unkC4[lbl_1_bss_1448[i]].unk00.unk18 = 2; + } + } +} + +void fn_1_132AC(omObjData* arg0, s32 arg1) { + StructFn352C* temp_r30; + s32 var_r28; + + temp_r30 = &lbl_1_bss_1580.unkC4[arg1].unk00; + arg0->model[1] = CharModelCreate(temp_r30->unk10, 4); + arg0->motion[1] = CharModelMotionCreate(temp_r30->unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); + arg0->motion[2] = CharModelMotionCreate(temp_r30->unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 72)); + arg0->motion[5] = CharModelMotionCreate(temp_r30->unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 47)); + arg0->motion[3] = CharModelMotionCreate(temp_r30->unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 23)); + arg0->motion[4] = CharModelMotionCreate(temp_r30->unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 24)); + arg0->motion[14] = CharModelMotionCreate(temp_r30->unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 72)); + arg0->motion[15] = CharModelMotionCreate(temp_r30->unk10, DATA_MAKE_NUM(DATADIR_MARIOMOT, 73)); + CharModelMotionDataClose(temp_r30->unk10); + Hu3DModelPosSet(arg0->model[1], lbl_1_data_130[arg1].x, lbl_1_data_130[arg1].y, lbl_1_data_130[arg1].z - 20.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1E28(arg0, 1, 1, 0, 1); + if (lbl_1_bss_1580.unk344 == 1) { + var_r28 = 0; + if (arg1 > 1) { + var_r28 = 1; + } + arg0->model[2] = Hu3DModelCreateFile(var_r28 + DATA_MAKE_NUM(DATADIR_MSTORY3, 144)); + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(arg0->model[2], 1.25f, 1.0f, 1.5f); + Hu3DModelShadowMapSet(arg0->model[2]); + } else { + arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 12)); + Hu3DModelScaleSet(arg0->model[2], 1.5f, 1.0f, 1.5f); + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + Hu3DModelShadowMapSet(arg0->model[2]); + } + arg0->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 14)); + Hu3DModelAttrSet(arg0->model[3], HU3D_ATTR_DISPOFF); + arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 15)); + Hu3DModelAttrSet(arg0->model[4], HU3D_ATTR_DISPOFF); + arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 13)); + Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); + arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 11)); + Hu3DModelAttrSet(arg0->model[6], HU3D_ATTR_DISPOFF); + for (arg1 = 0; arg1 < 3; arg1++) { + arg0->model[arg1 + 7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 16)); + Hu3DModelAttrSet(arg0->model[arg1 + 7], HU3D_ATTR_DISPOFF); + Hu3DMotionSpeedSet(arg0->model[arg1 + 7], 0.0f); + } + lbl_1_bss_1580.unk24[arg1].unk00 = Hu3DLLightCreate(arg0->model[1], 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0, 0, 0); + Hu3DLLightInfinitytSet(arg0->model[1], lbl_1_bss_1580.unk24[arg1].unk00); + Hu3DLLightPosAimSet(arg0->model[1], lbl_1_bss_1580.unk24[arg1].unk00, 0.0f, 700.0f, 1200.0f, 0.0f, 0.0f, 640.0f); + lbl_1_bss_1580.unk24[arg1].unk04 = Hu3DLLightCreate(arg0->model[2], 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0, 0, 0); + Hu3DLLightInfinitytSet(arg0->model[2], lbl_1_bss_1580.unk24[arg1].unk04); + Hu3DLLightPosAimSet(arg0->model[2], lbl_1_bss_1580.unk24[arg1].unk04, 0.0f, 700.0f, 1200.0f, 0.0f, 0.0f, 640.0f); +} + +void fn_1_13908(void) { + omObjData* var_r30; + s32 temp_r31; + + temp_r31 = lbl_1_bss_1580.unk314++; + var_r30 = omAddObjEx(lbl_1_bss_A8, 0x100, 0x10, 0x10, -1, NULL); + lbl_1_bss_1490[temp_r31].unk00 = var_r30; + lbl_1_bss_1490[temp_r31].unk04 = NULL; + lbl_1_bss_1490[temp_r31].unk08 = temp_r31; + lbl_1_bss_1490[temp_r31].unk00->data = &lbl_1_bss_1490[temp_r31]; + fn_1_132AC(lbl_1_bss_1490[temp_r31].unk00, temp_r31); + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1490[temp_r31].unk04 != NULL) { + lbl_1_bss_1490[temp_r31].unk04(lbl_1_bss_1490[temp_r31].unk00); + } + } +} + +void fn_1_13A38(omObjData* arg0) { +} + +s32 lbl_1_data_504[][27] = { + { + MAKE_MESSID(37, 0x00), MAKE_MESSID(37, 0x01), MAKE_MESSID(37, 0x02), + MAKE_MESSID(37, 0x03), MAKE_MESSID(37, 0x05), MAKE_MESSID(37, 0x06), + MAKE_MESSID(37, 0x0B), MAKE_MESSID(37, 0x0C), MAKE_MESSID(37, 0x0D), + MAKE_MESSID(37, 0x0E), MAKE_MESSID(37, 0x0F), MAKE_MESSID(37, 0x10), + MAKE_MESSID(37, 0x07), MAKE_MESSID(37, 0x08), MAKE_MESSID(37, 0x09), + MAKE_MESSID(37, 0x0A), MAKE_MESSID(37, 0x11), MAKE_MESSID(37, 0x12), + MAKE_MESSID(37, 0x13), MAKE_MESSID(37, 0x14), MAKE_MESSID(37, 0x15), + MAKE_MESSID(37, 0x16), MAKE_MESSID(37, 0x17), MAKE_MESSID(37, 0x8C), + MAKE_MESSID(37, 0x8D), MAKE_MESSID(37, 0x8E), MAKE_MESSID(37, 0x9E) + }, + { + MAKE_MESSID(37, 0x19), MAKE_MESSID(37, 0x1A), MAKE_MESSID(37, 0x1B), + MAKE_MESSID(37, 0x1C), MAKE_MESSID(37, 0x1D), MAKE_MESSID(37, 0x1E), + MAKE_MESSID(37, 0x23), MAKE_MESSID(37, 0x24), MAKE_MESSID(37, 0x25), + MAKE_MESSID(37, 0x26), MAKE_MESSID(37, 0x27), MAKE_MESSID(37, 0x28), + MAKE_MESSID(37, 0x1F), MAKE_MESSID(37, 0x20), MAKE_MESSID(37, 0x21), + MAKE_MESSID(37, 0x22), MAKE_MESSID(37, 0x29), MAKE_MESSID(37, 0x2A), + MAKE_MESSID(37, 0x2B), MAKE_MESSID(37, 0x2C), MAKE_MESSID(37, 0x2D), + MAKE_MESSID(37, 0x2E), MAKE_MESSID(37, 0x2F), MAKE_MESSID(37, 0x8F), + MAKE_MESSID(37, 0x90), MAKE_MESSID(37, 0x91), MAKE_MESSID(37, 0x9F) + }, + { + MAKE_MESSID(37, 0x30), MAKE_MESSID(37, 0x31), MAKE_MESSID(37, 0x32), + MAKE_MESSID(37, 0x33), MAKE_MESSID(37, 0x34), MAKE_MESSID(37, 0x35), + MAKE_MESSID(37, 0x3A), MAKE_MESSID(37, 0x3B), MAKE_MESSID(37, 0x3C), + MAKE_MESSID(37, 0x3D), MAKE_MESSID(37, 0x3E), MAKE_MESSID(37, 0x3F), + MAKE_MESSID(37, 0x36), MAKE_MESSID(37, 0x37), MAKE_MESSID(37, 0x38), + MAKE_MESSID(37, 0x39), MAKE_MESSID(37, 0x40), MAKE_MESSID(37, 0x41), + MAKE_MESSID(37, 0x42), MAKE_MESSID(37, 0x43), MAKE_MESSID(37, 0x44), + MAKE_MESSID(37, 0x45), MAKE_MESSID(37, 0x46), MAKE_MESSID(37, 0x92), + MAKE_MESSID(37, 0x93), MAKE_MESSID(37, 0x94), MAKE_MESSID(37, 0xA0) + }, + { + MAKE_MESSID(37, 0x47), MAKE_MESSID(37, 0x48), MAKE_MESSID(37, 0x49), + MAKE_MESSID(37, 0x4A), MAKE_MESSID(37, 0x4B), MAKE_MESSID(37, 0x4C), + MAKE_MESSID(37, 0x51), MAKE_MESSID(37, 0x52), MAKE_MESSID(37, 0x53), + MAKE_MESSID(37, 0x54), MAKE_MESSID(37, 0x55), MAKE_MESSID(37, 0x56), + MAKE_MESSID(37, 0x4D), MAKE_MESSID(37, 0x4E), MAKE_MESSID(37, 0x4F), + MAKE_MESSID(37, 0x50), MAKE_MESSID(37, 0x57), MAKE_MESSID(37, 0x58), + MAKE_MESSID(37, 0x59), MAKE_MESSID(37, 0x5A), MAKE_MESSID(37, 0x5B), + MAKE_MESSID(37, 0x5C), MAKE_MESSID(37, 0x5D), MAKE_MESSID(37, 0x95), + MAKE_MESSID(37, 0x96), MAKE_MESSID(37, 0x97), MAKE_MESSID(37, 0xA1) + }, + { + MAKE_MESSID(37, 0x5E), MAKE_MESSID(37, 0x5F), MAKE_MESSID(37, 0x60), + MAKE_MESSID(37, 0x61), MAKE_MESSID(37, 0x62), MAKE_MESSID(37, 0x63), + MAKE_MESSID(37, 0x68), MAKE_MESSID(37, 0x69), MAKE_MESSID(37, 0x6A), + MAKE_MESSID(37, 0x6B), MAKE_MESSID(37, 0x6C), MAKE_MESSID(37, 0x6D), + MAKE_MESSID(37, 0x64), MAKE_MESSID(37, 0x65), MAKE_MESSID(37, 0x66), + MAKE_MESSID(37, 0x67), MAKE_MESSID(37, 0x6E), MAKE_MESSID(37, 0x6F), + MAKE_MESSID(37, 0x70), MAKE_MESSID(37, 0x71), MAKE_MESSID(37, 0x72), + MAKE_MESSID(37, 0x73), MAKE_MESSID(37, 0x74), MAKE_MESSID(37, 0x98), + MAKE_MESSID(37, 0x99), MAKE_MESSID(37, 0x9A), MAKE_MESSID(37, 0xA2) + }, + { + MAKE_MESSID(37, 0x75), MAKE_MESSID(37, 0x76), MAKE_MESSID(37, 0x77), + MAKE_MESSID(37, 0x78), MAKE_MESSID(37, 0x79), MAKE_MESSID(37, 0x7A), + MAKE_MESSID(37, 0x7F), MAKE_MESSID(37, 0x80), MAKE_MESSID(37, 0x81), + MAKE_MESSID(37, 0x82), MAKE_MESSID(37, 0x83), MAKE_MESSID(37, 0x84), + MAKE_MESSID(37, 0x7B), MAKE_MESSID(37, 0x7C), MAKE_MESSID(37, 0x7D), + MAKE_MESSID(37, 0x7E), MAKE_MESSID(37, 0x85), MAKE_MESSID(37, 0x86), + MAKE_MESSID(37, 0x87), MAKE_MESSID(37, 0x88), MAKE_MESSID(37, 0x89), + MAKE_MESSID(37, 0x8A), MAKE_MESSID(37, 0x8B), MAKE_MESSID(37, 0x9B), + MAKE_MESSID(37, 0x9C), MAKE_MESSID(37, 0x9D), MAKE_MESSID(37, 0xA3) + } +}; + +void fn_1_13A3C(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { + s32 var_r29 = 0; + s32 temp_r28 = 0; + s32 i; + + lbl_1_bss_1580.unk18 = 0; + fn_1_1E28(lbl_1_bss_1468.unk00, 1, arg3, 15, 1); + temp_r28 = (s16) HuWinKeyWaitNumGet(lbl_1_data_504[lbl_1_bss_1580.unk00][arg1]); + if (arg2 == -1) { + arg2 = temp_r28 - 1; + } + HuWinComKeyReset(); + if (lbl_1_bss_1580.unk14 == -1) { + for (i = 0; i < 10; i++) { + HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, GWMessDelayGet()); + } + } + HuWinMesSet(arg0, lbl_1_data_504[lbl_1_bss_1580.unk00][arg1]); + for (i = 0; i < temp_r28; i++) { + var_r29 = 0; + do { + HuPrcVSleep(); + } while (HuWinStatGet(arg0) != 1); + if (i == arg2) { + HuWinAttrSet(arg0, 0x400); + var_r29 = 1; + lbl_1_bss_1580.unk18 = 99; + } + while (TRUE) { + HuPrcVSleep(); + if (var_r29 != 0) { + if (var_r29 == 1) { + if (HuWinStatGet(arg0) != 1) { + var_r29 = 2; + continue; + } + } + if (var_r29 == 2) { + do { + fn_1_938(); + } while (lbl_1_bss_1580.unk18 != 1); + HuWinAttrReset(arg0, 0x400); + HuWinKeyWaitEntry(arg0); + break; + } + } else if (HuWinStatGet(arg0) != 1) { + break; + } + } + } + fn_1_1B18(arg0, -1); + fn_1_1D44(arg0, MAKE_MESSID(37, 4)); + HuWinComKeyReset(); + fn_1_1E28(lbl_1_bss_1468.unk00, 1, 1, 15, 1); +} + +void fn_1_13C78(s32 arg0, s32 arg1, s32 arg2) { + fn_1_1E28(lbl_1_bss_1468.unk00, 1, arg2, 15, 1); + fn_1_1D44(arg0, lbl_1_data_504[lbl_1_bss_1580.unk00][arg1]); + fn_1_1B18(arg0, -1); + fn_1_1D44(arg0, MAKE_MESSID(37, 4)); + fn_1_1E28(lbl_1_bss_1468.unk00, 1, 1, 15, 1); +} + +void fn_1_13D38(s32 arg0, s32 arg1, s32 arg2) { + s32 var_r31; + + var_r31 = lbl_1_bss_1580.unkC4[arg1].unk00.unk10; + HuWinInsertMesSet(arg0, var_r31, arg2); +} + +void fn_1_13D98(omObjData* arg0, s32 arg1) { + s32 sp20[] = { + DATA_MAKE_NUM(DATADIR_MSTORY3, 40), + DATA_MAKE_NUM(DATADIR_MSTORY3, 46), + DATA_MAKE_NUM(DATADIR_MSTORY3, 52), + DATA_MAKE_NUM(DATADIR_MSTORY3, 58), + DATA_MAKE_NUM(DATADIR_MSTORY3, 64), + DATA_MAKE_NUM(DATADIR_MSTORY3, 70) + }; + s32 sp38[][5] = { + { DATA_MAKE_NUM(DATADIR_MSTORY3, 0x29), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x2A), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x2B), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x2C), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x2D) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 0x2F), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x30), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x31), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x32), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x33) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 0x35), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x36), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x37), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x38), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x39) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 0x3B), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x3C), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x3D), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x3E), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x3F) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 0x41), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x42), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x43), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x44), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x45) }, + { DATA_MAKE_NUM(DATADIR_MSTORY3, 0x47), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x48), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x49), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x4A), DATA_MAKE_NUM(DATADIR_MSTORY3, 0x4A) } + }; + + arg0->model[1] = Hu3DModelCreateFile(sp20[arg1]); + arg0->motion[1] = Hu3DJointMotionFile(arg0->model[1], sp38[arg1][0]); + arg0->motion[2] = Hu3DJointMotionFile(arg0->model[1], sp38[arg1][1]); + arg0->motion[3] = Hu3DJointMotionFile(arg0->model[1], sp38[arg1][2]); + arg0->motion[4] = Hu3DJointMotionFile(arg0->model[1], sp38[arg1][3]); + arg0->motion[5] = Hu3DJointMotionFile(arg0->model[1], sp38[arg1][4]); + Hu3DModelPosSet(arg0->model[1], 0.0f, 0.0f, 670.0f); + Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); + if (arg1 == 3) { + Hu3DData[arg0->model[1]].pos.y = 50.0f; + } + Hu3DModelShadowSet(arg0->model[1]); + fn_1_1E28(arg0, 1, 1, 0, 1); + { + s32 sp8[] = { 9, 14, 10, 11, 12, 13 }; + + if (arg1 != 3) { + CharModelEffectNpcInit(arg0->model[1], arg0->motion[2], 1, sp8[arg1]); + } + } +} + +void fn_1_140A0(void) { + omObjData* temp_r3; + + temp_r3 = omAddObjEx(lbl_1_bss_A8, 0x100, 0x10, 0x10, -1, NULL); + lbl_1_bss_1468.unk00 = temp_r3; + lbl_1_bss_1468.unk04 = NULL; + lbl_1_bss_1468.unk00->data = &lbl_1_bss_1468; + fn_1_13D98(temp_r3, lbl_1_bss_1580.unk00); + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1468.unk04 != NULL) { + lbl_1_bss_1468.unk04(temp_r3); + } + } +} + +void fn_1_1442C(s32 arg0) { + s32 var_r31; + + var_r31 = -1; + if (GWPlayerCfg[lbl_1_bss_1580.unkC4[arg0].unk00.unk00].iscom) { + var_r31 = rand8() % 120 + 60; + } + do { + fn_1_938(); + if (!GWPlayerCfg[lbl_1_bss_1580.unkC4[arg0].unk00.unk00].iscom && (HuPadBtnDown[GWPlayerCfg[lbl_1_bss_1580.unkC4[arg0].unk00.unk00].pad_idx] & PAD_BUTTON_A)) { + break; + } + } while (var_r31-- != 0); + fn_1_1E28(lbl_1_bss_1490[arg0].unk00, 1, 5, 15, 0); +} + +void fn_1_1456C(s32 arg0) { + while (TRUE) { + fn_1_938(); + if (lbl_1_bss_1490[arg0].unk00->motion[5] != Hu3DMotionShiftIDGet(lbl_1_bss_1490[arg0].unk00->model[1]) + && lbl_1_bss_1490[arg0].unk00->motion[5] == Hu3DMotionIDGet(lbl_1_bss_1490[arg0].unk00->model[1]) + && Hu3DMotionTimeGet(lbl_1_bss_1490[arg0].unk00->model[1]) >= 27.0f) + { + break; + } + } + HuAudFXStop(lbl_1_bss_68[arg0 + 1]); + HuAudFXPlay(0x303); +} + +HsfanimStruct00 lbl_1_data_78C = { + 60, { 0, 0 }, + 1000.0f, 0.0f, 180.0f, + { 0.0f, 0.0f, 0.0f }, + 50.0f, 0.9f, 20.0f, 0.99f, 4, + { + { 0xFF, 0xFF, 0x00, 0xFF }, + { 0xFF, 0xFF, 0x20, 0xFF }, + { 0xFF, 0xFF, 0x80, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF } + }, + { + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 }, + { 0xFF, 0xFF, 0xFF, 0x00 } + } +}; + +s32 fn_1_14684(void) { + s32 temp_r3; + + temp_r3 = Hu3DParManCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 1)), 250, &lbl_1_data_78C); + Hu3DParManTimeLimitSet(temp_r3, 60); + Hu3DParManAttrSet(temp_r3, 4 | 0x40); + Hu3DParticleBlendModeSet(Hu3DParManModelIDGet(temp_r3), 1); + return temp_r3; +} + +void fn_1_14700(omObjData* arg0) { + Hu3DModelKill(arg0->model[0]); + omDelObjEx(lbl_1_bss_A8, arg0); +} + +void fn_1_14748(omObjData* arg0) { + float temp_f31; + s32 sp8[3]; + s32 temp_r27; + s32 var_r26; + s32 var_r30; + s32 temp_r25; + s32 var_r29; + + switch (arg0->work[1]) { + case 0: + if (arg0->work[2] >= 1080) { + arg0->work[1] = 1; + arg0->rot.y = 0.0f; + arg0->scale.x = arg0->scale.y = arg0->scale.z = 1.0f; + arg0->work[2] = arg0->work[3] = 0; + lbl_1_bss_68[arg0->work[0] + 1] = HuAudFXPlay(0x300); + } else { + arg0->rot.y = arg0->work[2] % 360; + arg0->work[2] += 25; + if (arg0->work[3] < 180) { + arg0->scale.x = sind(arg0->work[3] % 180); + arg0->work[3] += 6; + } else { + arg0->scale.x = 1.0 + 0.5 * sind(arg0->work[3] % 180); + arg0->work[3] += 18; + } + arg0->scale.y = arg0->scale.z = arg0->scale.x; + if (arg0->work[3] > 360) { + arg0->work[3] = 360; + } + } + break; + case 1: + if (arg0->work[2] >= 40) { + arg0->work[1] = 2; + } + /* fallthrough */ + case 2: + arg0->trans.y += 0.2f * sind(arg0->work[2]); + if ((arg0->work[2] += 4) > 360) { + arg0->work[2] -= 360; + } + break; + case 3: + if (arg0->work[3]++ >= 8) { + arg0->work[1] = 4; + arg0->work[3] = 0; + Hu3DModelAttrSet(arg0->model[0], 1); + } else { + temp_f31 = fn_1_5D4(1.0f, 0.0f, arg0->work[3], 8.0f); + if (arg0->work[3] == 1) { + arg0->work[2] = fn_1_14684(); + Hu3DParManPosSet(arg0->work[2], arg0->trans.x, 275.0f, arg0->trans.z); + } + arg0->trans.y = 250.0f + fn_1_5D4(0.0f, 25.0f, arg0->work[3], 4.0f); + arg0->scale.x = 1.0f + 0.5f * (1.0f - temp_f31); + arg0->scale.y = arg0->scale.z = arg0->scale.x; + Hu3DModelTPLvlSet(arg0->model[0], temp_f31); + } + break; + case 4: + if (arg0->work[3]++ >= 60) { + Hu3DParManKill(arg0->work[2]); + arg0->work[2] = -1; + arg0->func = NULL; + } + break; + } + if (arg0->work[1] >= 3) { + var_r26 = 0; + if (lbl_1_bss_1428[arg0->work[0]] == -1) { + var_r30 = lbl_1_bss_1438[arg0->work[0]]; + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (var_r29 != arg0->work[0]) { + sp8[var_r26++] = lbl_1_bss_1428[var_r29]; + } + } + while (TRUE) { + if (var_r30 != sp8[0] && var_r30 != sp8[1] && var_r30 != sp8[2]) { + lbl_1_bss_1428[arg0->work[0]] = var_r30; + break; + } + var_r30 = rand8() % 10 + 1; + } + Hu3DMotionTimeSet(arg0->model[0], lbl_1_bss_1428[arg0->work[0]] - 1 + 0.5f); + } + } else { + temp_r25 = lbl_1_bss_1438[arg0->work[0]] - 1; + do { + temp_r27 = rand8() % 10; + } while (temp_r25 == temp_r27); + lbl_1_bss_1438[arg0->work[0]] = temp_r27 + 1; + Hu3DMotionTimeSet(arg0->model[0], temp_r27 + 0.5f); + } +} + +void fn_1_14E6C(omObjData* arg0) { + s32 temp_r30; + + temp_r30 = arg0->work[0]; + arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_MSTORY3, 19)); + omSetTra(arg0, lbl_1_data_130[temp_r30].x, 250.0f, lbl_1_data_130[temp_r30].z); + omSetRot(arg0, 0.0f, 0.0f, 0.0f); + omSetSca(arg0, 0.0f, 0.0f, 0.0f); + Hu3DMotionSpeedSet(arg0->model[0], 0.0f); + HuAudFXPlay(0x302); + arg0->func = fn_1_14748; +} + +void fn_1_14F80(omObjData* arg0) { + Hu3DModelKill(arg0->model[1]); + Hu3DModelKill(arg0->model[2]); + omDelObjEx(lbl_1_bss_A8, arg0); +} + +void fn_1_14FD4(omObjData* arg0) { + s32 temp_r29; + s32 var_r30; + + temp_r29 = arg0->work[0]; + for (var_r30 = 1; var_r30 < 3; var_r30++) { + if (arg0->work[3] <= 40) { + Hu3DData[arg0->model[var_r30]].rot.y = fn_1_6F4(0.0f, 360.0f, arg0->work[3], 40.0f); + } else { + Hu3DData[arg0->model[var_r30]].rot.y = fn_1_61C(360.0f, 0.0f, arg0->work[3] - 40, 20.0f); + } + if (arg0->work[1] / 10 == 0) { + Hu3DData[arg0->model[var_r30]].pos.x = lbl_1_data_130[temp_r29].x; + } else { + Hu3DData[arg0->model[var_r30]].pos.x = lbl_1_data_130[temp_r29].x + fn_1_5D4(0.0f, 40.0f + -80.0f * (var_r30 - 1), arg0->work[3], 20.0f); + } + Hu3DData[arg0->model[var_r30]].pos.y = 275.0f + fn_1_5D4(0.0f, 50.0f, arg0->work[3], 20.0f); + Hu3DData[arg0->model[var_r30]].pos.z = lbl_1_data_130[temp_r29].z; + } + if (arg0->work[3]++ >= 60) { + arg0->func = NULL; + } +} + +void fn_1_152F0(omObjData* arg0) { + s32 sp8[] = { + DATA_MAKE_NUM(DATADIR_MSTORY3, 20), + DATA_MAKE_NUM(DATADIR_MSTORY3, 21), + DATA_MAKE_NUM(DATADIR_MSTORY3, 22), + DATA_MAKE_NUM(DATADIR_MSTORY3, 23), + DATA_MAKE_NUM(DATADIR_MSTORY3, 24), + DATA_MAKE_NUM(DATADIR_MSTORY3, 25), + DATA_MAKE_NUM(DATADIR_MSTORY3, 26), + DATA_MAKE_NUM(DATADIR_MSTORY3, 27), + DATA_MAKE_NUM(DATADIR_MSTORY3, 28), + DATA_MAKE_NUM(DATADIR_MSTORY3, 29) + }; + + arg0->model[1] = Hu3DModelCreateFile(sp8[arg0->work[1] % 10]); + arg0->model[2] = Hu3DModelCreateFile(sp8[arg0->work[1] / 10]); + Hu3DMotionSpeedSet(arg0->model[1], 0.0f); + Hu3DMotionSpeedSet(arg0->model[2], 0.0f); + if (arg0->work[1] / 10 == 0) { + Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + } + arg0->func = fn_1_14FD4; +} + +void fn_1_15450(s32 arg0) { + omObjData* temp_r3; + omObjData* temp_r3_2; + + temp_r3 = omAddObjEx(lbl_1_bss_A8, 0x2000, 0x10, 0x10, -1, fn_1_14E6C); + temp_r3->work[0] = arg0; + do { + fn_1_938(); + } while (temp_r3->work[1] != 2); + fn_1_1442C(arg0); + fn_1_1456C(arg0); + temp_r3->work[1] = 3; + fn_1_938(); + temp_r3_2 = omAddObjEx(lbl_1_bss_A8, 0x2000, 0x10, 0x10, -1, fn_1_152F0); + temp_r3_2->work[0] = arg0; + temp_r3_2->work[1] = lbl_1_bss_1428[arg0]; + fn_1_958(10); + fn_1_1E28(lbl_1_bss_1490[arg0].unk00, 1, 1, 15, 1); + do { + fn_1_938(); + } while (temp_r3_2->func); + lbl_1_bss_1490[arg0].unk18 = 1; + do { + fn_1_938(); + } while (lbl_1_bss_1490[arg0].unk18 != 2); + fn_1_958(150); + fn_1_14700(temp_r3); + fn_1_14F80(temp_r3_2); +} diff --git a/src/REL/mstory3Dll/win_effect.c b/src/REL/mstory3Dll/win_effect.c new file mode 100755 index 00000000..48590c1b --- /dev/null +++ b/src/REL/mstory3Dll/win_effect.c @@ -0,0 +1,322 @@ +#include "REL/mstory3Dll.h" +#include "game/data.h" +#include "game/hsfanim.h" +#include "game/hsfex.h" +#include "game/hsfman.h" +#include "game/memory.h" +#include "game/sprite.h" + +#include "ext_math.h" + +#define frand5() (((s32)frand() & 0x1F)) +#define frand8() (((s32)frand() & 0xFF)) + +typedef struct { + /* 0x00 */ Vec* unk00; + /* 0x04 */ Vec unk04; + /* 0x10 */ Vec unk10; + /* 0x1C */ u16 unk1C; + /* 0x1E */ u16 unk1E; + /* 0x20 */ u16 unk20; + /* 0x22 */ s16 unk22; + /* 0x24 */ float unk24; + /* 0x28 */ AnimData* unk28; +} StructBss1CF8; // Size 0x2C + +typedef struct { + /* 0x00 */ s16 unk00; + /* 0x02 */ char unk02[0x1A]; + /* 0x1C */ StructBss1CF8* unk1C; +} StructFn1E13C; // Size unknown + +void fn_1_1E13C(s32 arg0, s32 arg1, StructBss1CF8* arg2, Vec* arg3); +void fn_1_1E558(void); +void fn_1_1E820(ModelData* model, ParticleData* particle, Mtx matrix); + +StructBss1CF8 lbl_1_bss_1CF8[2]; +s32 lbl_1_bss_1CF4; +s32 lbl_1_bss_1CF0; +s32 lbl_1_bss_1CEC; +s16 lbl_1_bss_1CE8; + +void fn_1_1DED8(s32 arg0, Vec* arg1, Vec* arg2, s16 arg3) { + AnimData* temp_r28; + s16 var_r27; + + fn_1_1E13C(arg0 + 1, arg0 + 3, &lbl_1_bss_1CF8[0], arg2); + lbl_1_bss_1CF8[0].unk04 = *arg1; + lbl_1_bss_1CF8[0].unk24 = arg3 - 20; + fn_1_1E13C(arg0 + 2, arg0 + 3, &lbl_1_bss_1CF8[1], arg2); + lbl_1_bss_1CF8[1].unk04 = *arg1; + lbl_1_bss_1CF8[1].unk24 = arg3 - 20; + temp_r28 = HuSprAnimReadFile(arg0); + lbl_1_bss_1CE8 = HuSprGrpCreate(1); + var_r27 = HuSprCreate(temp_r28, 0, 0); + HuSprGrpMemberSet(lbl_1_bss_1CE8, 0, var_r27); + HuSprPosSet(lbl_1_bss_1CE8, 0, arg2->x, arg2->y); + HuSprTPLvlSet(lbl_1_bss_1CE8, 0, 0.0f); + HuSprAttrSet(lbl_1_bss_1CE8, 0, 8); + HuPrcChildCreate(fn_1_1E558, 100, 0x2000, 0, HuPrcCurrentGet()); + lbl_1_bss_1CF4 = 0; + lbl_1_bss_1CF0 = 0; + lbl_1_bss_1CEC = 0; +} + +void fn_1_1E0F4(void) { + lbl_1_bss_1CF4 = 1; +} + +s32 fn_1_1E108(void) { + return lbl_1_bss_1CF0; +} + +void fn_1_1E118(void) { + lbl_1_bss_1CEC = 1; +} + +s32 fn_1_1E12C(void) { + return lbl_1_bss_1CE8; +} + +void fn_1_1E13C(s32 arg0, s32 arg1, StructBss1CF8* arg2, Vec* arg3) { + Vec sp14; + AnimBmpData* temp_r31; + s32 sp10; + s32 var_r27; + s32 var_r26; + u16* var_r25; + AnimData* var_r24; + Vec* var_r22; + StructFn1E13C* temp_r23; + s16 var_r29; + s16 var_r28; + + var_r24 = HuSprAnimReadFile(arg0); + arg2->unk28 = var_r24; + temp_r31 = var_r24->bmp; + sp10 = temp_r31->sizeX * temp_r31->sizeY; + var_r25 = temp_r31->data; + for (var_r28 = var_r26 = 0; var_r28 < temp_r31->sizeY; var_r28 += 2) { + for (var_r29 = 0; var_r29 < temp_r31->sizeX; var_r29 += 2) { + var_r25 = (u16*) temp_r31->data + ((var_r28 % 4) * 4 + (var_r28 / 4) * temp_r31->sizeX * 4 + (var_r29 / 4) * 16 + var_r29 % 4); + if (*var_r25 != 0x8000) { + var_r26++; + } + } + } + arg2->unk20 = var_r26; + var_r22 = arg2->unk00 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r26 * sizeof(*var_r22), MEMORY_DEFAULT_NUM); + arg2->unk1C = temp_r31->sizeX; + arg2->unk1E = temp_r31->sizeY; + Hu3D2Dto3D(arg3, 1, &arg2->unk10); + for (var_r28 = 0; var_r28 < temp_r31->sizeY; var_r28 += 2) { + for (var_r29 = 0; var_r29 < temp_r31->sizeX; var_r29 += 2) { + var_r25 = (u16*) temp_r31->data + ((var_r28 % 4) * 4 + (var_r28 / 4) * temp_r31->sizeX * 4 + (var_r29 / 4) * 16 + var_r29 % 4); + if (*var_r25 != 0x8000) { + sp14 = *arg3; + sp14.x = sp14.x + var_r29 - temp_r31->sizeX / 2; + sp14.y = sp14.y + var_r28 - temp_r31->sizeY / 2; + Hu3D2Dto3D(&sp14, 1, var_r22); + var_r22++; + } + } + } + HuSprAnimKill(var_r24); + var_r24 = HuSprAnimRead(HuDataRead(arg1)); + var_r27 = Hu3DParticleCreate(var_r24, var_r26); + arg2->unk22 = var_r27; + Hu3DModelPosSet(var_r27, 0.0f, 0.0f, 0.0f); + Hu3DModelLayerSet(var_r27, 1); + Hu3DParticleColSet(var_r27, 0xFF, 0xFF, 0xA); + Hu3DParticleScaleSet(var_r27, 20.0f); + Hu3DParticleHookSet(var_r27, fn_1_1E820); + Hu3DParticleBlendModeSet(var_r27, 1); + Hu3DParticleAttrSet(var_r27, 2); + temp_r23 = Hu3DData[var_r27].unk_120; + temp_r23->unk1C = arg2; + temp_r23->unk00 = 0; + OSReport("Particle Count %d\n", var_r26); +} + +void fn_1_1E558(void) { + float var_f31; + float var_f30; + float temp_f29; + s16* temp_r30; + s16* temp_r29; + s16 i; + + var_f31 = 0.0f; + var_f30 = 0.0f; + while (lbl_1_bss_1CF4 == 0) { + HuPrcVSleep(); + } + Hu3DParticleAttrReset(lbl_1_bss_1CF8->unk22, 2); + HuPrcSleep(20); + Hu3DParticleAttrReset(lbl_1_bss_1CF8[1].unk22, 2); + temp_r30 = Hu3DData[lbl_1_bss_1CF8[0].unk22].unk_120; + temp_r29 = Hu3DData[lbl_1_bss_1CF8[1].unk22].unk_120; + while (*temp_r30 == 0 || *temp_r29 == 0) { + HuPrcVSleep(); + } + for (i = 0; i <= 20; i++) { + temp_f29 = i / 20.0f; + HuSprTPLvlSet(lbl_1_bss_1CE8, 0, temp_f29); + HuPrcVSleep(); + } + OSReport("Finish\n"); + for (i = 0; i < 2; i++) { + Hu3DModelKill(lbl_1_bss_1CF8[i].unk22); + HuSprAnimKill(lbl_1_bss_1CF8[i].unk28); + } + lbl_1_bss_1CF0 = 1; + while (TRUE) { + if (lbl_1_bss_1CEC != 0) { + break; + } + var_f31 += var_f30; + if (var_f31 > 360.0f) { + var_f31 -= 360.0f; + } + var_f30 += 0.5; + if (var_f30 > 10.0f) { + var_f30 = 10.0f; + } + temp_f29 = 1.0 + 0.25 * sind(var_f31); + HuSprScaleSet(lbl_1_bss_1CE8, 0, temp_f29, temp_f29); + HuPrcVSleep(); + } + HuSprGrpKill(lbl_1_bss_1CE8); + HuPrcEnd(); + while (TRUE) { + HuPrcVSleep(); + } +} + +void fn_1_1E820(ModelData* model, ParticleData* particle, Mtx matrix) { + Vec sp8; + float temp_f30; + float temp_f31; + s16 var_r22; + s16 var_r29; + StructBss1CF8* temp_r28; + HsfanimStruct01* var_r31; + s16 var_r27; + s16 temp_r25; + s16 temp_r24; + s16 temp_r21; + s16 temp_r26; + s16 temp_r20; + s16 var_r23; + + temp_r28 = particle->unk_1C; + if (particle->unk_34 == 0) { + var_r31 = particle->unk_48; + for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + var_r31->unk2C = 0.0f; + } + } + if (particle->unk_2D & 2) { + return; + } + temp_r21 = temp_r28->unk24 - (temp_r28->unk24 / 5.0f); + temp_r26 = temp_r21 / 2; + temp_r20 = temp_r21 - temp_r26; + PSVECSubtract(&temp_r28->unk04, &temp_r28->unk10, &sp8); + temp_f31 = PSVECMag(&sp8) / temp_r20; + for (var_r22 = 0; var_r22 < particle->unk_30 / (temp_r28->unk24 / 5.0f); var_r22++) { + var_r31 = particle->unk_48; + for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (!var_r31->unk2C) { + break; + } + } + if (var_r29 == particle->unk_30) { + break; + } + var_r31->unk34 = temp_r28->unk04; + var_r27 = (frand8() * 360) >> 8; + temp_f30 = 0.2 * frand5(); + var_r31->unk08.x = temp_f30 * sind(var_r27); + var_r31->unk08.y = 0.1 * (frand5() + 100); + var_r31->unk08.z = temp_f30 * cosd(var_r27); + var_r31->unk40.r = 0xF0; + var_r31->unk40.g = 0x80; + var_r31->unk40.b = 0x60; + var_r31->unk2C = 10.0f; + var_r31->unk00 = 0; + var_r31->unk02 = 0; + var_r31->unk14.x = frandmod(360); + } + var_r31 = particle->unk_48; + for (var_r29 = var_r23 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { + if (!var_r31->unk2C) { + continue; + } + if (var_r31->unk00_s16 == 0) { + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + var_r31->unk08.x *= 0.999f; + var_r31->unk08.y -= 0.5f; + var_r31->unk08.z *= 0.999f; + if (var_r31->unk02 > temp_r26 - (temp_r26 / 5.0)) { + PSVECScale(&var_r31->unk08, &var_r31->unk08, 1.0 - ((var_r31->unk02 - (temp_r26 - temp_r26 / 5.0)) / (temp_r26 / 5.0))); + } + if (var_r31->unk02 == temp_r26) { + var_r31->unk00_s16++; + } + if (var_r31->unk34.y <= 0.0f) { + var_r31->unk08.y = 0.5f * -var_r31->unk08.y; + var_r31->unk34.y = 0.0f; + } + } else if (var_r31->unk00_s16 == 1) { + sp8 = temp_r28->unk00[var_r29]; + PSVECSubtract(&sp8, &var_r31->unk34, &sp8); + if (PSVECMag(&sp8) <= 1.0 + temp_f31) { + var_r23++; + var_r31->unk34 = temp_r28->unk00[var_r29]; + var_r31->unk00_s16++; + continue; + } + PSVECNormalize(&sp8, &sp8); + var_r31->unk08.x = sp8.x * temp_f31 + sind(var_r31->unk14.x); + var_r31->unk08.y = sp8.y * temp_f31; + var_r31->unk08.z = sp8.z * temp_f31; + PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); + var_r31->unk14.x += 20.0f; + } else { + var_r23++; + } + if (var_r31->unk00_s16 >= 1) { + var_r27 = var_r31->unk40.r; + var_r27 += (var_r27 - 0xFF) / 20; + if (var_r27 > 0xFF) { + var_r31->unk40.r = 0xFF; + } else { + var_r31->unk40.r = var_r27; + } + temp_r25 = var_r31->unk40.g; + temp_r25 += (temp_r25 - 0xFF) / 20; + if (temp_r25 > 0xFF) { + var_r31->unk40.g = 0xFF; + } else { + var_r31->unk40.g = temp_r25; + } + temp_r24 = var_r31->unk40.b; + temp_r24 += (temp_r24 - 0x80) / 20; + if (temp_r24 > 0x80) { + var_r31->unk40.b = 0x80; + } else { + var_r31->unk40.b = temp_r24; + } + } + var_r31->unk2C -= 0.2f; + if (var_r31->unk2C < 5.0f) { + var_r31->unk2C = 5.0f; + } + var_r31->unk02++; + } + DCStoreRange(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); + if (var_r23 >= particle->unk_30) { + particle->unk_00++; + } +} diff --git a/src/game/gamework.c b/src/game/gamework.c index 68c1783c..887d977b 100644 --- a/src/game/gamework.c +++ b/src/game/gamework.c @@ -212,12 +212,12 @@ u8 GWBoardPlayCountGet(s32 board) return GWGameStat.board_play_count[board]; } -void GWBoardMaxStarsSet(s32 board, s32 value) +void GWBoardMaxStarsSet(s32 board, s16 value) { GWGameStat.board_max_stars[board] = value; } -u16 GWBoardMaxStarsGet(s32 board) +s32 GWBoardMaxStarsGet(s32 board) { return GWGameStat.board_max_stars[board]; } @@ -227,7 +227,7 @@ void GWBoardMaxCoinsSet(s32 board, s32 value) GWGameStat.board_max_coins[board] = value; } -u16 GWBoardMaxCoinsGet(s32 board) +s32 GWBoardMaxCoinsGet(s32 board) { return GWGameStat.board_max_coins[board]; } From edacd760156102242c283766a5c33d413bf6aedf Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sun, 19 Jan 2025 09:25:39 -0800 Subject: [PATCH 131/178] Matched the last function in m425Dll (US) (#540) --- configure.py | 4 +-- src/REL/m425Dll/main.c | 67 ++++++++++++++++++++++++++++++++---------- 2 files changed, 53 insertions(+), 18 deletions(-) diff --git a/configure.py b/configure.py index abfd9d0f..6b56c797 100644 --- a/configure.py +++ b/configure.py @@ -1065,8 +1065,8 @@ config.libs = [ Rel( "m425Dll", # The Great Deflate objects={ - Object(NonMatching, "REL/m425Dll/main.c"), - Object(NonMatching, "REL/m425Dll/thwomp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m425Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m425Dll/thwomp.c"), }, ), Rel( diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c index b6762117..2853e783 100644 --- a/src/REL/m425Dll/main.c +++ b/src/REL/m425Dll/main.c @@ -675,22 +675,57 @@ void fn_1_1B40(omObjData *object) break; } if (0) { - int x = 12; - int y = 24; - char *str = "%f"; - (void)x; - (void)x; - (void)x; - (void)x; - (void)y; - (void)y; - (void)y; - (void)y; - (void)str; - (void)str; - (void)str; - (void)str; - print8(x, y, 1.5f, str, sqrtf(fn_1_15EC(object->trans.x, object->trans.y))); + s32 var_r31; + s32 var_r30; + s32 var_r29; + float var_f31; + float var_f20; + float var_f19; + float var_f18; + + (void) object; + (void) object; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r31; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r30; + (void) var_r29; + (void) var_r29; + (void) var_r29; + (void) var_r29; + (void) var_r29; + (void) var_r29; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f31; + (void) var_f20; + (void) var_f20; + (void) var_f20; + (void) var_f19; + (void) var_f19; + (void) var_f19; + (void) var_f18; + (void) var_f18; + (void) var_f18; } var_r31->unk_38 = var_r31->unk_04 * sind(var_r31->unk_18); var_r31->unk_40 = var_r31->unk_04 * cosd(var_r31->unk_18); From 6575f573f63b10623c9ddba28f06f2c4d8d659b5 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Sun, 19 Jan 2025 21:54:38 +0100 Subject: [PATCH 132/178] Match OSReboot.c and some of TRK + port mstory3Dll (#541) * Match OSReboot.c and match some of TRK * Port mstory3Dll --- config/GMPE01_00/splits.txt | 2 +- config/GMPE01_00/symbols.txt | 2 +- config/GMPE01_01/rels/mstory3Dll/symbols.txt | 590 ++++++++-------- config/GMPE01_01/splits.txt | 2 +- config/GMPJ01_00/rels/mstory3Dll/splits.txt | 24 + config/GMPJ01_00/rels/mstory3Dll/symbols.txt | 603 ++++++++-------- config/GMPP01_00/rels/mstory3Dll/splits.txt | 24 + config/GMPP01_00/rels/mstory3Dll/symbols.txt | 603 ++++++++-------- config/GMPP01_02/rels/mstory3Dll/splits.txt | 24 + config/GMPP01_02/rels/mstory3Dll/symbols.txt | 681 ++++++++++--------- configure.py | 14 +- include/dolphin/dvd.h | 1 + include/dolphin/os/OSBootInfo.h | 2 +- include/dolphin/os/OSPriv.h | 3 + src/REL/mstory3Dll/result.c | 3 + src/TRK_MINNOW_DOLPHIN/dolphin_trk.c | 5 +- src/TRK_MINNOW_DOLPHIN/targsupp.s | 25 + src/dolphin/os/OSReboot.c | 117 +++- 18 files changed, 1438 insertions(+), 1287 deletions(-) create mode 100644 src/TRK_MINNOW_DOLPHIN/targsupp.s diff --git a/config/GMPE01_00/splits.txt b/config/GMPE01_00/splits.txt index fc3ba2b8..d7d8237a 100644 --- a/config/GMPE01_00/splits.txt +++ b/config/GMPE01_00/splits.txt @@ -1221,7 +1221,7 @@ TRK_MINNOW_DOLPHIN/targimpl.c: .data start:0x8013EA58 end:0x8013EA88 .bss start:0x801A9138 end:0x801A96B8 -TRK_MINNOW_DOLPHIN/targsupp.c: +TRK_MINNOW_DOLPHIN/targsupp.s: .text start:0x800F1CF0 end:0x800F1D10 TRK_MINNOW_DOLPHIN/__exception.s: diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 1417c27e..e2763245 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -5719,7 +5719,7 @@ __OSLastInterrupt = .sbss:0x801D4308; // type:object size:0x2 scope:global data: __OSLastInterruptTime = .sbss:0x801D4310; // type:object size:0x8 scope:global data:4byte SaveStart = .sbss:0x801D4318; // type:object size:0x4 scope:local data:4byte SaveEnd = .sbss:0x801D431C; // type:object size:0x4 scope:local data:4byte -Prepared = .sbss:0x801D4320; // type:object size:0x8 scope:local data:4byte +Prepared = .sbss:0x801D4320; // type:object size:0x4 scope:local data:4byte ResetFunctionQueue = .sbss:0x801D4328; // type:object size:0x8 scope:local data:4byte ResetCallback = .sbss:0x801D4330; // type:object size:0x4 data:4byte Down = .sbss:0x801D4334; // type:object size:0x4 data:4byte diff --git a/config/GMPE01_01/rels/mstory3Dll/symbols.txt b/config/GMPE01_01/rels/mstory3Dll/symbols.txt index e0915adf..3113f967 100644 --- a/config/GMPE01_01/rels/mstory3Dll/symbols.txt +++ b/config/GMPE01_01/rels/mstory3Dll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 _prolog = .text:0x0000036C; // type:function size:0x54 scope:global _epilog = .text:0x000003C0; // type:function size:0x4C scope:global fn_1_40C = .text:0x0000040C; // type:function size:0xE4 -fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +ObjectSetup = .text:0x000004F0; // type:function size:0xE4 fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 fn_1_5FC = .text:0x000005FC; // type:function size:0x20 fn_1_61C = .text:0x0000061C; // type:function size:0xD8 @@ -202,311 +202,311 @@ fn_1_1E558 = .text:0x0001E570; // type:function size:0x2C8 fn_1_1E820 = .text:0x0001E838; // type:function size:0x8E0 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x20 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte -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_214 = .rodata:0x00000214; // 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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x28 data:4byte -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x20 scope:local data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 scope:local data:4byte +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_214 = .rodata:0x00000214; // 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:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 scope:local +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x28 scope:local data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 scope:local data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 scope:local data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 scope:local data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 scope:local data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 scope:local data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string -lbl_1_data_95 = .data:0x00000095; // type:object size:0xD data:string +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 scope:local data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xD scope:local data:string lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string -lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string -lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string -lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string -lbl_1_data_11B = .data:0x0000011B; // type:object size:0xE data:string +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 scope:local data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 scope:local data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A scope:local data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A scope:local data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0xE scope:local data:string lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 -lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string -lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string -lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string -lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string -lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string -lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string -lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string -lbl_1_data_346 = .data:0x00000346; // type:object size:0x1C data:string +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 scope:local data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 scope:local data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 scope:local data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 scope:local data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 scope:local data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 scope:local data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 scope:local data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF scope:local data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D scope:local data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1C scope:local data:string lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string -lbl_1_data_387 = .data:0x00000387; // type:object size:0x10 data:string +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF scope:local data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x10 scope:local data:string jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string -lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string -lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string -lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string -lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string -lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string -lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string -lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string -lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string -lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string -lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 scope:local data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 scope:local data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 scope:local data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 scope:local data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 scope:local data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 scope:local data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 scope:local data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 scope:local data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 scope:local data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 scope:local data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 scope:local data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 scope:local lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 lbl_1_data_78C = .data:0x0000078C; // type:object size:0x5 -lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string -lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string -lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string -lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string -lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string -lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string -lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string -lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string -lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string -lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string -lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string -lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string -lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string -lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string -lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string -lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string -lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string -lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string -lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B -lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string -lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 scope:local data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 scope:local data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 scope:local data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 scope:local data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 scope:local data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 scope:local data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 scope:local data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 scope:local data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF scope:local data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C scope:local data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D scope:local data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 scope:local data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 scope:local data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 scope:local data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 scope:local data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 scope:local data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A scope:local data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A scope:local data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B scope:local +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 scope:local data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:float lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:float diff --git a/config/GMPE01_01/splits.txt b/config/GMPE01_01/splits.txt index fc3ba2b8..d7d8237a 100644 --- a/config/GMPE01_01/splits.txt +++ b/config/GMPE01_01/splits.txt @@ -1221,7 +1221,7 @@ TRK_MINNOW_DOLPHIN/targimpl.c: .data start:0x8013EA58 end:0x8013EA88 .bss start:0x801A9138 end:0x801A96B8 -TRK_MINNOW_DOLPHIN/targsupp.c: +TRK_MINNOW_DOLPHIN/targsupp.s: .text start:0x800F1CF0 end:0x800F1D10 TRK_MINNOW_DOLPHIN/__exception.s: diff --git a/config/GMPJ01_00/rels/mstory3Dll/splits.txt b/config/GMPJ01_00/rels/mstory3Dll/splits.txt index 531cd645..6d23734f 100644 --- a/config/GMPJ01_00/rels/mstory3Dll/splits.txt +++ b/config/GMPJ01_00/rels/mstory3Dll/splits.txt @@ -5,3 +5,27 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstory3Dll/main.c: + .text start:0x00000000 end:0x00006E34 + .rodata start:0x00000000 end:0x00000110 + .data start:0x00000000 end:0x00000130 + .bss start:0x00000000 end:0x00000058 + +REL/mstory3Dll/result_seq.c: + .text start:0x00006E34 end:0x000157F0 + .rodata start:0x00000110 end:0x00000418 + .data start:0x00000130 end:0x000007E0 + .bss start:0x00000058 end:0x000018D0 + +REL/mstory3Dll/result.c: + .text start:0x000157F0 end:0x0001DED8 + .rodata start:0x00000418 end:0x000005D0 + .data start:0x000007E0 end:0x00000A90 + .bss start:0x000018D0 end:0x00001CE8 + +REL/mstory3Dll/win_effect.c: + .text start:0x0001DED8 end:0x0001F100 + .rodata start:0x000005D0 end:0x00000644 + .data start:0x00000A90 end:0x00000AAB + .bss start:0x00001CE8 end:0x00001D50 diff --git a/config/GMPJ01_00/rels/mstory3Dll/symbols.txt b/config/GMPJ01_00/rels/mstory3Dll/symbols.txt index 9835d8ae..4863cac3 100644 --- a/config/GMPJ01_00/rels/mstory3Dll/symbols.txt +++ b/config/GMPJ01_00/rels/mstory3Dll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 _prolog = .text:0x0000036C; // type:function size:0x54 scope:global _epilog = .text:0x000003C0; // type:function size:0x4C scope:global fn_1_40C = .text:0x0000040C; // type:function size:0xE4 -fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +ObjectSetup = .text:0x000004F0; // type:function size:0xE4 fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 fn_1_5FC = .text:0x000005FC; // type:function size:0x20 fn_1_61C = .text:0x0000061C; // type:function size:0xD8 @@ -202,314 +202,315 @@ fn_1_1E558 = .text:0x0001E558; // type:function size:0x2C8 fn_1_1E820 = .text:0x0001E820; // type:function size:0x8E0 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x20 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte -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_214 = .rodata:0x00000214; // 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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x2C data:4byte -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x20 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 scope:local data:float +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_214 = .rodata:0x00000214; // 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:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 scope:local +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x28 scope:local data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 scope:local data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 scope:local data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 scope:local data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 scope:local data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 scope:local data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string -lbl_1_data_95 = .data:0x00000095; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 scope:local data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xD scope:local data:string lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string -lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string -lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string -lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string -lbl_1_data_11B = .data:0x0000011B; // type:object size:0x15 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 scope:local data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 scope:local data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A scope:local data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A scope:local data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0xE scope:local data:string lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 -lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string -lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string -lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string -lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string -lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string -lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string -lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string -lbl_1_data_346 = .data:0x00000346; // type:object size:0x1E -lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte -lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string -lbl_1_data_387 = .data:0x00000387; // type:object size:0x11 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 scope:local data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 scope:local data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 scope:local data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 scope:local data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 scope:local data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 scope:local data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 scope:local data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF scope:local data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D scope:local data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1C scope:local data:string +lbl_1_data_364 = .data:0x00000364; // type:object size:0x4 data:4byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC data:float +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF scope:local data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x10 scope:local data:string jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string -lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string -lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string -lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string -lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string -lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string -lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string -lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string -lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string -lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string -lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 scope:local data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 scope:local data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 scope:local data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 scope:local data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 scope:local data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 scope:local data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 scope:local data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 scope:local data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 scope:local data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 scope:local data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 scope:local data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x10 scope:local data:string lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 -lbl_1_data_78C = .data:0x0000078C; // type:object size:0x54 -lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string -lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string -lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string -lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string -lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string -lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string -lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string -lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string -lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string -lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string -lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string -lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string -lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string -lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string -lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string -lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string -lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string -lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string -lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B -lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string -lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_data_78C = .data:0x0000078C; // type:object size:0x50 +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 scope:local data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 scope:local data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 scope:local data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 scope:local data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 scope:local data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 scope:local data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 scope:local data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 scope:local data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF scope:local data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C scope:local data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D scope:local data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 scope:local data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 scope:local data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 scope:local data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 scope:local data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 scope:local data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A scope:local data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A scope:local data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x19 scope:local data:string +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 scope:local data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:float -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:float @@ -541,7 +542,7 @@ lbl_1_bss_18F4 = .bss:0x000018F4; // type:object size:0xA0 lbl_1_bss_1994 = .bss:0x00001994; // type:object size:0x28 data:4byte lbl_1_bss_19BC = .bss:0x000019BC; // type:object size:0x28 data:4byte lbl_1_bss_19E4 = .bss:0x000019E4; // type:object size:0x28 data:4byte -lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2DC data:float +lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2D8 data:float lbl_1_bss_1CE8 = .bss:0x00001CE8; // type:object size:0x2 data:2byte lbl_1_bss_1CEC = .bss:0x00001CEC; // type:object size:0x4 data:4byte lbl_1_bss_1CF0 = .bss:0x00001CF0; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/mstory3Dll/splits.txt b/config/GMPP01_00/rels/mstory3Dll/splits.txt index 531cd645..6d23734f 100644 --- a/config/GMPP01_00/rels/mstory3Dll/splits.txt +++ b/config/GMPP01_00/rels/mstory3Dll/splits.txt @@ -5,3 +5,27 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstory3Dll/main.c: + .text start:0x00000000 end:0x00006E34 + .rodata start:0x00000000 end:0x00000110 + .data start:0x00000000 end:0x00000130 + .bss start:0x00000000 end:0x00000058 + +REL/mstory3Dll/result_seq.c: + .text start:0x00006E34 end:0x000157F0 + .rodata start:0x00000110 end:0x00000418 + .data start:0x00000130 end:0x000007E0 + .bss start:0x00000058 end:0x000018D0 + +REL/mstory3Dll/result.c: + .text start:0x000157F0 end:0x0001DED8 + .rodata start:0x00000418 end:0x000005D0 + .data start:0x000007E0 end:0x00000A90 + .bss start:0x000018D0 end:0x00001CE8 + +REL/mstory3Dll/win_effect.c: + .text start:0x0001DED8 end:0x0001F100 + .rodata start:0x000005D0 end:0x00000644 + .data start:0x00000A90 end:0x00000AAB + .bss start:0x00001CE8 end:0x00001D50 diff --git a/config/GMPP01_00/rels/mstory3Dll/symbols.txt b/config/GMPP01_00/rels/mstory3Dll/symbols.txt index 9835d8ae..4863cac3 100644 --- a/config/GMPP01_00/rels/mstory3Dll/symbols.txt +++ b/config/GMPP01_00/rels/mstory3Dll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 _prolog = .text:0x0000036C; // type:function size:0x54 scope:global _epilog = .text:0x000003C0; // type:function size:0x4C scope:global fn_1_40C = .text:0x0000040C; // type:function size:0xE4 -fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +ObjectSetup = .text:0x000004F0; // type:function size:0xE4 fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 fn_1_5FC = .text:0x000005FC; // type:function size:0x20 fn_1_61C = .text:0x0000061C; // type:function size:0xD8 @@ -202,314 +202,315 @@ fn_1_1E558 = .text:0x0001E558; // type:function size:0x2C8 fn_1_1E820 = .text:0x0001E820; // type:function size:0x8E0 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x20 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte -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_214 = .rodata:0x00000214; // 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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x2C data:4byte -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x20 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 scope:local data:float +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_214 = .rodata:0x00000214; // 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:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 scope:local +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x28 scope:local data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 scope:local data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 scope:local data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 scope:local data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 scope:local data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 scope:local data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string -lbl_1_data_95 = .data:0x00000095; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 scope:local data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xD scope:local data:string lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string -lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string -lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string -lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string -lbl_1_data_11B = .data:0x0000011B; // type:object size:0x15 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 scope:local data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 scope:local data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A scope:local data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A scope:local data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0xE scope:local data:string lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 -lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string -lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string -lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string -lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string -lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string -lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string -lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string -lbl_1_data_346 = .data:0x00000346; // type:object size:0x1E -lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte -lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string -lbl_1_data_387 = .data:0x00000387; // type:object size:0x11 +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 scope:local data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 scope:local data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 scope:local data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 scope:local data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 scope:local data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 scope:local data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 scope:local data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF scope:local data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D scope:local data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1C scope:local data:string +lbl_1_data_364 = .data:0x00000364; // type:object size:0x4 data:4byte +lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC data:float +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF scope:local data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x10 scope:local data:string jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string -lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string -lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string -lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string -lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string -lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string -lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string -lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string -lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string -lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string -lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 scope:local data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 scope:local data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 scope:local data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 scope:local data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 scope:local data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 scope:local data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 scope:local data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 scope:local data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 scope:local data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 scope:local data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 scope:local data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x10 scope:local data:string lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 -lbl_1_data_78C = .data:0x0000078C; // type:object size:0x54 -lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string -lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string -lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string -lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string -lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string -lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string -lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string -lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string -lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string -lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string -lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string -lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string -lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string -lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string -lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string -lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string -lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string -lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string -lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B -lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string -lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_data_78C = .data:0x0000078C; // type:object size:0x50 +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 scope:local data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 scope:local data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 scope:local data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 scope:local data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 scope:local data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 scope:local data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 scope:local data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 scope:local data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF scope:local data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C scope:local data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D scope:local data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 scope:local data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 scope:local data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 scope:local data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 scope:local data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 scope:local data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A scope:local data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A scope:local data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x19 scope:local data:string +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 scope:local data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:float -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:float +lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte lbl_1_bss_AC = .bss:0x000000AC; // type:object size:0x4 data:float @@ -541,7 +542,7 @@ lbl_1_bss_18F4 = .bss:0x000018F4; // type:object size:0xA0 lbl_1_bss_1994 = .bss:0x00001994; // type:object size:0x28 data:4byte lbl_1_bss_19BC = .bss:0x000019BC; // type:object size:0x28 data:4byte lbl_1_bss_19E4 = .bss:0x000019E4; // type:object size:0x28 data:4byte -lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2DC data:float +lbl_1_bss_1A0C = .bss:0x00001A0C; // type:object size:0x2D8 data:float lbl_1_bss_1CE8 = .bss:0x00001CE8; // type:object size:0x2 data:2byte lbl_1_bss_1CEC = .bss:0x00001CEC; // type:object size:0x4 data:4byte lbl_1_bss_1CF0 = .bss:0x00001CF0; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_02/rels/mstory3Dll/splits.txt b/config/GMPP01_02/rels/mstory3Dll/splits.txt index 531cd645..5251d4d5 100644 --- a/config/GMPP01_02/rels/mstory3Dll/splits.txt +++ b/config/GMPP01_02/rels/mstory3Dll/splits.txt @@ -5,3 +5,27 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/mstory3Dll/main.c: + .text start:0x00000000 end:0x00006E34 + .rodata start:0x00000000 end:0x00000110 + .data start:0x00000000 end:0x00000130 + .bss start:0x00000000 end:0x00000058 + +REL/mstory3Dll/result_seq.c: + .text start:0x00006E34 end:0x000157F0 + .rodata start:0x00000110 end:0x00000418 + .data start:0x00000130 end:0x000007E0 + .bss start:0x00000058 end:0x000018D0 + +REL/mstory3Dll/result.c: + .text start:0x000157F0 end:0x0001DEF0 + .rodata start:0x00000418 end:0x000005D0 + .data start:0x000007E0 end:0x00000A90 + .bss start:0x000018D0 end:0x00001CE8 + +REL/mstory3Dll/win_effect.c: + .text start:0x0001DEF0 end:0x0001F118 + .rodata start:0x000005D0 end:0x00000644 + .data start:0x00000A90 end:0x00000AAB + .bss start:0x00001CE8 end:0x00001D50 diff --git a/config/GMPP01_02/rels/mstory3Dll/symbols.txt b/config/GMPP01_02/rels/mstory3Dll/symbols.txt index 21c07213..3113f967 100644 --- a/config/GMPP01_02/rels/mstory3Dll/symbols.txt +++ b/config/GMPP01_02/rels/mstory3Dll/symbols.txt @@ -4,7 +4,7 @@ fn_1_A4 = .text:0x000000A4; // type:function size:0x2C8 _prolog = .text:0x0000036C; // type:function size:0x54 scope:global _epilog = .text:0x000003C0; // type:function size:0x4C scope:global fn_1_40C = .text:0x0000040C; // type:function size:0xE4 -fn_1_4F0 = .text:0x000004F0; // type:function size:0xE4 +ObjectSetup = .text:0x000004F0; // type:function size:0xE4 fn_1_5D4 = .text:0x000005D4; // type:function size:0x28 fn_1_5FC = .text:0x000005FC; // type:function size:0x20 fn_1_61C = .text:0x0000061C; // type:function size:0xD8 @@ -157,358 +157,359 @@ fn_1_16AD4 = .text:0x00016AD4; // type:function size:0x400 fn_1_16ED4 = .text:0x00016ED4; // type:function size:0x258 fn_1_1712C = .text:0x0001712C; // type:function size:0x160 fn_1_1728C = .text:0x0001728C; // type:function size:0x210 -fn_1_1749C = .text:0x0001749C; // type:function size:0xEC -fn_1_17588 = .text:0x00017588; // type:function size:0x850 -fn_1_17DD8 = .text:0x00017DD8; // type:function size:0x2C0 -fn_1_18098 = .text:0x00018098; // type:function size:0x9C -fn_1_18134 = .text:0x00018134; // type:function size:0x218 -fn_1_1834C = .text:0x0001834C; // type:function size:0x1B4 -fn_1_18500 = .text:0x00018500; // type:function size:0x70 -fn_1_18570 = .text:0x00018570; // type:function size:0x110 -fn_1_18680 = .text:0x00018680; // type:function size:0x694 -fn_1_18D14 = .text:0x00018D14; // type:function size:0x29C -fn_1_18FB0 = .text:0x00018FB0; // type:function size:0x1AC -fn_1_1915C = .text:0x0001915C; // type:function size:0xD0 -fn_1_1922C = .text:0x0001922C; // type:function size:0x28C -fn_1_194B8 = .text:0x000194B8; // type:function size:0xF0 -fn_1_195A8 = .text:0x000195A8; // type:function size:0x224 -fn_1_197CC = .text:0x000197CC; // type:function size:0x854 -fn_1_1A020 = .text:0x0001A020; // type:function size:0x1EF4 -fn_1_1BF14 = .text:0x0001BF14; // type:function size:0x3F8 -fn_1_1C30C = .text:0x0001C30C; // type:function size:0x16C -fn_1_1C478 = .text:0x0001C478; // type:function size:0xD4 -fn_1_1C54C = .text:0x0001C54C; // type:function size:0x3E0 -fn_1_1C92C = .text:0x0001C92C; // type:function size:0x184 -fn_1_1CAB0 = .text:0x0001CAB0; // type:function size:0xE4 -fn_1_1CB94 = .text:0x0001CB94; // type:function size:0xE0 -fn_1_1CC74 = .text:0x0001CC74; // type:function size:0x104 -fn_1_1CD78 = .text:0x0001CD78; // type:function size:0x90 -fn_1_1CE08 = .text:0x0001CE08; // type:function size:0x334 -fn_1_1D13C = .text:0x0001D13C; // type:function size:0x518 -fn_1_1D654 = .text:0x0001D654; // type:function size:0x140 -fn_1_1D794 = .text:0x0001D794; // type:function size:0x150 -fn_1_1D8E4 = .text:0x0001D8E4; // type:function size:0x98 -fn_1_1D97C = .text:0x0001D97C; // type:function size:0x100 -fn_1_1DA7C = .text:0x0001DA7C; // type:function size:0x48 -fn_1_1DAC4 = .text:0x0001DAC4; // type:function size:0x3A0 -fn_1_1DE64 = .text:0x0001DE64; // type:function size:0x8C -fn_1_1DEF0 = .text:0x0001DEF0; // type:function size:0x21C -fn_1_1E10C = .text:0x0001E10C; // type:function size:0x14 -fn_1_1E120 = .text:0x0001E120; // type:function size:0x10 -fn_1_1E130 = .text:0x0001E130; // type:function size:0x14 -fn_1_1E144 = .text:0x0001E144; // type:function size:0x10 -fn_1_1E154 = .text:0x0001E154; // type:function size:0x41C -fn_1_1E570 = .text:0x0001E570; // type:function size:0x2C8 -fn_1_1E838 = .text:0x0001E838; // type:function size:0x8E0 +fn_1_17484 = .text:0x0001749C; // type:function size:0xEC +fn_1_17570 = .text:0x00017588; // type:function size:0x850 +fn_1_17DC0 = .text:0x00017DD8; // type:function size:0x2C0 +fn_1_18080 = .text:0x00018098; // type:function size:0x9C +fn_1_1811C = .text:0x00018134; // type:function size:0x218 +fn_1_18334 = .text:0x0001834C; // type:function size:0x1B4 +fn_1_184E8 = .text:0x00018500; // type:function size:0x70 +fn_1_18558 = .text:0x00018570; // type:function size:0x110 +fn_1_18668 = .text:0x00018680; // type:function size:0x694 +fn_1_18CFC = .text:0x00018D14; // type:function size:0x29C +fn_1_18F98 = .text:0x00018FB0; // type:function size:0x1AC +fn_1_19144 = .text:0x0001915C; // type:function size:0xD0 +fn_1_19214 = .text:0x0001922C; // type:function size:0x28C +fn_1_194A0 = .text:0x000194B8; // type:function size:0xF0 +fn_1_19590 = .text:0x000195A8; // type:function size:0x224 +fn_1_197B4 = .text:0x000197CC; // type:function size:0x854 +fn_1_1A008 = .text:0x0001A020; // type:function size:0x1EF4 +fn_1_1BEFC = .text:0x0001BF14; // type:function size:0x3F8 +fn_1_1C2F4 = .text:0x0001C30C; // type:function size:0x16C +fn_1_1C460 = .text:0x0001C478; // type:function size:0xD4 +fn_1_1C534 = .text:0x0001C54C; // type:function size:0x3E0 +fn_1_1C914 = .text:0x0001C92C; // type:function size:0x184 +fn_1_1CA98 = .text:0x0001CAB0; // type:function size:0xE4 +fn_1_1CB7C = .text:0x0001CB94; // type:function size:0xE0 +fn_1_1CC5C = .text:0x0001CC74; // type:function size:0x104 +fn_1_1CD60 = .text:0x0001CD78; // type:function size:0x90 +fn_1_1CDF0 = .text:0x0001CE08; // type:function size:0x334 +fn_1_1D124 = .text:0x0001D13C; // type:function size:0x518 +fn_1_1D63C = .text:0x0001D654; // type:function size:0x140 +fn_1_1D77C = .text:0x0001D794; // type:function size:0x150 +fn_1_1D8CC = .text:0x0001D8E4; // type:function size:0x98 +fn_1_1D964 = .text:0x0001D97C; // type:function size:0x100 +fn_1_1DA64 = .text:0x0001DA7C; // type:function size:0x48 +fn_1_1DAAC = .text:0x0001DAC4; // type:function size:0x3A0 +fn_1_1DE4C = .text:0x0001DE64; // type:function size:0x8C +fn_1_1DED8 = .text:0x0001DEF0; // type:function size:0x21C +fn_1_1E0F4 = .text:0x0001E10C; // type:function size:0x14 +fn_1_1E108 = .text:0x0001E120; // type:function size:0x10 +fn_1_1E118 = .text:0x0001E130; // type:function size:0x14 +fn_1_1E12C = .text:0x0001E144; // type:function size:0x10 +fn_1_1E13C = .text:0x0001E154; // type:function size:0x41C +fn_1_1E558 = .text:0x0001E570; // type:function size:0x2C8 +fn_1_1E820 = .text:0x0001E838; // type:function size:0x8E0 _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:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC data:4byte -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC data:4byte -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x20 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 data:byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC data:4byte -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 data:4byte -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_214 = .rodata:0x00000214; // 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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 data:4byte -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 data:4byte -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 data:4byte -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 data:4byte -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x2C data:4byte -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 data:byte -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C data:4byte -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C data:4byte -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 data:4byte -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 data:double -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 data:double -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 data:double -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 data:double -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 data:double -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 data:double -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 data:double -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x20 scope:local data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x20 scope:local data:4byte +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_214 = .rodata:0x00000214; // 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:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x78 scope:local +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x28 scope:local data:4byte +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x8 scope:local data:double +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x8 scope:local data:double +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x8 scope:local data:double +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x8 scope:local data:double +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x8 scope:local data:double +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x8 scope:local data:double +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 data:string -lbl_1_data_95 = .data:0x00000095; // type:object size:0xF +lbl_1_data_70 = .data:0x00000070; // type:object size:0x25 scope:local data:string +lbl_1_data_95 = .data:0x00000095; // type:object size:0xD scope:local data:string lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x8 -lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 data:string -lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 data:string -lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 data:string -lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A data:string -lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A data:string -lbl_1_data_11B = .data:0x0000011B; // type:object size:0x15 +lbl_1_data_AC = .data:0x000000AC; // type:object size:0x28 scope:local data:string +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x10 scope:local data:string +lbl_1_data_E4 = .data:0x000000E4; // type:object size:0x3 scope:local data:string +lbl_1_data_E7 = .data:0x000000E7; // type:object size:0x1A scope:local data:string +lbl_1_data_101 = .data:0x00000101; // type:object size:0x1A scope:local data:string +lbl_1_data_11B = .data:0x0000011B; // type:object size:0xE scope:local data:string lbl_1_data_130 = .data:0x00000130; // type:object size:0x30 data:float lbl_1_data_160 = .data:0x00000160; // type:object size:0x50 lbl_1_data_1B0 = .data:0x000001B0; // type:object size:0x50 lbl_1_data_200 = .data:0x00000200; // type:object size:0x50 -lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 data:string -lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 data:string -lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 data:string -lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 data:string -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 data:string -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 data:string -lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 data:string -lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 data:string -lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF data:string -lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C data:string -lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D data:string -lbl_1_data_346 = .data:0x00000346; // type:object size:0x1E +lbl_1_data_250 = .data:0x00000250; // type:object size:0x16 scope:local data:string +lbl_1_data_266 = .data:0x00000266; // type:object size:0x15 scope:local data:string +lbl_1_data_27B = .data:0x0000027B; // type:object size:0x16 scope:local data:string +lbl_1_data_291 = .data:0x00000291; // type:object size:0x15 scope:local data:string +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x16 scope:local data:string +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x15 scope:local data:string +lbl_1_data_2D1 = .data:0x000002D1; // type:object size:0x17 scope:local data:string +lbl_1_data_2E8 = .data:0x000002E8; // type:object size:0x16 scope:local data:string +lbl_1_data_2FE = .data:0x000002FE; // type:object size:0xF scope:local data:string +lbl_1_data_30D = .data:0x0000030D; // type:object size:0x1C scope:local data:string +lbl_1_data_329 = .data:0x00000329; // type:object size:0x1D scope:local data:string +lbl_1_data_346 = .data:0x00000346; // type:object size:0x1C scope:local data:string lbl_1_data_364 = .data:0x00000364; // type:object size:0x8 data:4byte lbl_1_data_36C = .data:0x0000036C; // type:object size:0xC -lbl_1_data_378 = .data:0x00000378; // type:object size:0xF data:string -lbl_1_data_387 = .data:0x00000387; // type:object size:0x11 +lbl_1_data_378 = .data:0x00000378; // type:object size:0xF scope:local data:string +lbl_1_data_387 = .data:0x00000387; // type:object size:0x10 scope:local data:string jumptable_1_data_398 = .data:0x00000398; // type:object size:0x30 scope:local -lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 data:string -lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 data:string -lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 data:string -lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 data:string -lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 data:string -lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 data:string -lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 data:string -lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 data:string -lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 data:string -lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 data:string -lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 data:string -lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 data:string -lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 +lbl_1_data_3C8 = .data:0x000003C8; // type:object size:0x46 scope:local data:string +lbl_1_data_40E = .data:0x0000040E; // type:object size:0x30 scope:local data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x14 scope:local data:string +lbl_1_data_452 = .data:0x00000452; // type:object size:0x14 scope:local data:string +lbl_1_data_466 = .data:0x00000466; // type:object size:0x14 scope:local data:string +lbl_1_data_47A = .data:0x0000047A; // type:object size:0x14 scope:local data:string +lbl_1_data_48E = .data:0x0000048E; // type:object size:0x14 scope:local data:string +lbl_1_data_4A2 = .data:0x000004A2; // type:object size:0x10 scope:local data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x10 scope:local data:string +lbl_1_data_4C2 = .data:0x000004C2; // type:object size:0x10 scope:local data:string +lbl_1_data_4D2 = .data:0x000004D2; // type:object size:0x10 scope:local data:string +lbl_1_data_4E2 = .data:0x000004E2; // type:object size:0x10 scope:local data:string +lbl_1_data_4F2 = .data:0x000004F2; // type:object size:0x12 scope:local lbl_1_data_504 = .data:0x00000504; // type:object size:0x288 -lbl_1_data_78C = .data:0x0000078C; // type:object size:0x54 -lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 data:string -lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 data:string -lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 data:string -lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 data:string -lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 data:string -lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 data:string -lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 data:string -lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 data:string -lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF data:string -lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C data:string -lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D data:string -lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 data:string -lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 data:string -lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 data:string -lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 data:string -lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 data:string -lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A data:string -lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A data:string -lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B -lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 data:string -lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 data:string +lbl_1_data_78C = .data:0x0000078C; // type:object size:0x5 +lbl_1_data_7E0 = .data:0x000007E0; // type:object size:0x16 scope:local data:string +lbl_1_data_7F6 = .data:0x000007F6; // type:object size:0x15 scope:local data:string +lbl_1_data_80B = .data:0x0000080B; // type:object size:0x16 scope:local data:string +lbl_1_data_821 = .data:0x00000821; // type:object size:0x15 scope:local data:string +lbl_1_data_836 = .data:0x00000836; // type:object size:0x16 scope:local data:string +lbl_1_data_84C = .data:0x0000084C; // type:object size:0x15 scope:local data:string +lbl_1_data_861 = .data:0x00000861; // type:object size:0x17 scope:local data:string +lbl_1_data_878 = .data:0x00000878; // type:object size:0x16 scope:local data:string +lbl_1_data_88E = .data:0x0000088E; // type:object size:0xF scope:local data:string +lbl_1_data_89D = .data:0x0000089D; // type:object size:0x1C scope:local data:string +lbl_1_data_8B9 = .data:0x000008B9; // type:object size:0x1D scope:local data:string +lbl_1_data_8D6 = .data:0x000008D6; // type:object size:0x49 scope:local data:string +lbl_1_data_91F = .data:0x0000091F; // type:object size:0x48 scope:local data:string +lbl_1_data_967 = .data:0x00000967; // type:object size:0x48 scope:local data:string +lbl_1_data_9AF = .data:0x000009AF; // type:object size:0x52 scope:local data:string +lbl_1_data_A01 = .data:0x00000A01; // type:object size:0x30 scope:local data:string +lbl_1_data_A31 = .data:0x00000A31; // type:object size:0x2A scope:local data:string +lbl_1_data_A5B = .data:0x00000A5B; // type:object size:0x1A scope:local data:string +lbl_1_data_A75 = .data:0x00000A75; // type:object size:0x1B scope:local +lbl_1_data_A90 = .data:0x00000A90; // type:object size:0x13 scope:local data:string +lbl_1_data_AA3 = .data:0x00000AA3; // type:object size:0x8 scope:local data:string lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x54 data:float +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x44 data:float +lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x10 data:float lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x10 data:4byte lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x40 data:4byte lbl_1_bss_A8 = .bss:0x000000A8; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 6b56c797..2a75498c 100644 --- a/configure.py +++ b/configure.py @@ -509,7 +509,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSMessage.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSMemory.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSMutex.c"), - Object(NonMatching, "dolphin/os/OSReboot.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSReboot.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSReset.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSResetSW.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "dolphin/os/OSRtc.c"), @@ -749,9 +749,9 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/flush_cache.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/mem_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/targimpl.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/targsupp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/targsupp.s"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/__exception.s"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/dolphin_trk.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/dolphin_trk.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/main_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c"), @@ -1396,10 +1396,10 @@ config.libs = [ Rel( "mstory3Dll", objects={ - Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/main.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/result_seq.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/result.c"), - Object(MatchingFor("GMPE01_00"), "REL/mstory3Dll/win_effect.c"), + Object(Matching, "REL/mstory3Dll/main.c"), + Object(Matching, "REL/mstory3Dll/result_seq.c"), + Object(Matching, "REL/mstory3Dll/result.c"), + Object(Matching, "REL/mstory3Dll/win_effect.c"), }, ), Rel( diff --git a/include/dolphin/dvd.h b/include/dolphin/dvd.h index cc6e1fa9..d8149fa2 100644 --- a/include/dolphin/dvd.h +++ b/include/dolphin/dvd.h @@ -89,6 +89,7 @@ void DVDInit(); BOOL DVDClose(DVDFileInfo* f); BOOL DVDSetAutoFatalMessaging(BOOL); void DVDReset(); +int DVDSetAutoInvalidation(int autoInval); s32 DVDCancel(DVDCommandBlock* block); BOOL DVDOpen(char* fileName, DVDFileInfo* fileInfo); BOOL DVDFastOpen(s32 entrynum, DVDFileInfo* fileInfo); diff --git a/include/dolphin/os/OSBootInfo.h b/include/dolphin/os/OSBootInfo.h index 19d4dfb5..2ed59d35 100644 --- a/include/dolphin/os/OSBootInfo.h +++ b/include/dolphin/os/OSBootInfo.h @@ -45,6 +45,6 @@ typedef struct BI2Debug { #define OS_DVD_MAGIC_NINTENDO 0xC2339F3D #define OS_THREAD_STACK_MAGIC 0xDEADBABE -#define OS_BOOTROM_ADDR 0x81300000 +#define OS_BOOTROM_ADDR ((void*)0x81300000) #endif // _DOLPHIN_OSBOOTINFO diff --git a/include/dolphin/os/OSPriv.h b/include/dolphin/os/OSPriv.h index 11eeec59..6d24df24 100644 --- a/include/dolphin/os/OSPriv.h +++ b/include/dolphin/os/OSPriv.h @@ -40,6 +40,9 @@ __OSExceptionHandler __OSGetExceptionHandler(__OSException exception); OSTime __OSGetSystemTime(); OSTime __OSTimeToSystemTime(OSTime); +// OSReset.c +void __OSDoHotReset(s32); + // OSReboot void __OSReboot(u32 resetCode, u32 bootDol); diff --git a/src/REL/mstory3Dll/result.c b/src/REL/mstory3Dll/result.c index f9fb785b..a9104387 100755 --- a/src/REL/mstory3Dll/result.c +++ b/src/REL/mstory3Dll/result.c @@ -549,6 +549,9 @@ void fn_1_1728C(void) { HuWinExAnimOut(var_r31); HuWinExCleanup(var_r31); if (SLSaveFlagGet() == 1 && temp_r30 == 0) { +#if VERSION_REV1 + GWGameStat.story_continue = 1; +#endif SLCommonSet(); SLSaveBoardStory(); SLSave(); diff --git a/src/TRK_MINNOW_DOLPHIN/dolphin_trk.c b/src/TRK_MINNOW_DOLPHIN/dolphin_trk.c index 31153cd6..b8ffd29d 100644 --- a/src/TRK_MINNOW_DOLPHIN/dolphin_trk.c +++ b/src/TRK_MINNOW_DOLPHIN/dolphin_trk.c @@ -10,6 +10,7 @@ #define EXCEPTIONMASK_ADDR 0x80000044 static u32 lc_base; +extern u32 _db_stack_addr; static u32 TRK_ISR_OFFSETS[15] = { PPC_SystemReset, PPC_MachineCheck, @@ -64,8 +65,8 @@ asm void InitMetroTRK() mtspr 0x3f2, r0 mtspr 0x3f5, r0 //Restore stack pointer - lis r1, 0x80426008@h - ori r1, r1, 0x80426008@l + lis r1, _db_stack_addr@h + ori r1, r1, _db_stack_addr@l mr r3, r5 bl InitMetroTRKCommTable //Initialize comm table /* diff --git a/src/TRK_MINNOW_DOLPHIN/targsupp.s b/src/TRK_MINNOW_DOLPHIN/targsupp.s new file mode 100644 index 00000000..670f691f --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/targsupp.s @@ -0,0 +1,25 @@ +.include "macros.inc" +.file "targsupp.s" + +.text +.balign 4 + +.fn TRKAccessFile, global + twui r0, 0x0 + blr +.endfn TRKAccessFile + +.fn TRKOpenFile, global + twui r0, 0x0 + blr +.endfn TRKOpenFile + +.fn TRKCloseFile, global + twui r0, 0x0 + blr +.endfn TRKCloseFile + +.fn TRKPositionFile, global + twui r0, 0x0 + blr +.endfn TRKPositionFile diff --git a/src/dolphin/os/OSReboot.c b/src/dolphin/os/OSReboot.c index 381d39c4..5331e90a 100644 --- a/src/dolphin/os/OSReboot.c +++ b/src/dolphin/os/OSReboot.c @@ -3,6 +3,7 @@ #include #include #include +#include typedef struct ApploaderHeader { // total size: 0x20 @@ -13,18 +14,7 @@ typedef struct ApploaderHeader { u32 reserved2; // offset 0x1C, size 0x4 } ApploaderHeader; -struct { - // total size: 0x1C - int valid; // offset 0x0, size 0x4 - unsigned long restartCode; // offset 0x4, size 0x4 - unsigned long bootDol; // offset 0x8, size 0x4 - void *regionStart; // offset 0xC, size 0x4 - void *regionEnd; // offset 0x10, size 0x4 - int argsUseDefault; // offset 0x14, size 0x4 - void *argsAddr; // offset 0x18, size 0x4 -} __OSRebootParams; // size: 0x1C, address: 0x0 - -static ApploaderHeader Header; +static ApploaderHeader Header ATTRIBUTE_ALIGN(32); extern void *__OSSavedRegionStart; extern void *__OSSavedRegionEnd; @@ -34,22 +24,25 @@ static void *SaveEnd = NULL; volatile u8 DAT_800030e2 : 0x800030e2; -extern u32 BOOT_REGION_START AT_ADDRESS(0x812FDFF0); //(*(u32 *)0x812fdff0) -extern u32 BOOT_REGION_END AT_ADDRESS(0x812FDFEC); //(*(u32 *)0x812fdfec) +extern void *BOOT_REGION_START AT_ADDRESS(0x812FDFF0); //(*(u32 *)0x812fdff0) +extern void *BOOT_REGION_END AT_ADDRESS(0x812FDFEC); //(*(u32 *)0x812fdfec) extern u32 UNK_HOT_RESET1 AT_ADDRESS(0x817ffff8); extern u32 UNK_HOT_RESET2 AT_ADDRESS(0x817ffffc); -// extern u32 OS_RESET_CODE AT_ADDRESS(0x800030F0); -// extern u8 OS_REBOOT_BOOL AT_ADDRESS(0x800030E2); // unknown function, set to true by __OSReboot +extern u32 OS_RESET_CODE AT_ADDRESS(0x800030F0); +extern u8 OS_REBOOT_BOOL AT_ADDRESS(0x800030E2); // unknown function, set to true by __OSReboot +extern u32 UNK_817FFFF8 AT_ADDRESS(0x817FFFF8); +extern u32 UNK_817FFFFC AT_ADDRESS(0x817FFFFC); -extern u32 __OSIsGcam; - -static BOOL Prepared = FALSE; +static volatile BOOL Prepared = FALSE; extern void __DVDPrepareResetAsync(DVDCBCallback callback); extern BOOL DVDCheckDisk(void); extern BOOL DVDReadAbsAsyncForBS(DVDCommandBlock *block, void *addr, s32 length, s32 offset, DVDCBCallback callback); -void Run(register u32 addr) +#pragma dont_inline on +// peephole bug with mwcc +static asm void myFunc() { } +static void Run(register void (*addr)()) { OSDisableInterrupts(); ICFlashInvalidate(); @@ -62,33 +55,83 @@ void Run(register u32 addr) } // clang-format on } +#pragma dont_inline reset static void Callback() { Prepared = TRUE; } -void ReadApploader(OSTime time1) { } +inline void ReadApploader(DVDCommandBlock *dvdCmd, void *addr, u32 offset, u32 numBytes) +{ + /* Not sure if this inline is correct - might need to call other inlines */ + while (Prepared == FALSE) { } + DVDReadAbsAsyncForBS(dvdCmd, addr, numBytes, offset + 0x2440, NULL); + + while (TRUE) { + switch (dvdCmd->state) { + case 0: + break; + case 1: + default: + continue; + case -1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + __OSDoHotReset(UNK_817FFFFC); + continue; + } + break; + } +} void __OSReboot(u32 resetCode, u32 bootDol) { - // TODO -} + OSContext exceptionContext; + DVDCommandBlock dvdCmd; + DVDCommandBlock dvdCmd2; + u32 numBytes; + u32 offset; -void OSSetSaveRegion(void *start, void *end) -{ - SaveStart = start; - SaveEnd = end; -} + OSDisableInterrupts(); -void OSGetSaveRegion(void **start, void **end) -{ - *start = SaveStart; - *end = SaveEnd; -} + UNK_817FFFFC = 0; + UNK_817FFFF8 = 0; + OS_REBOOT_BOOL = TRUE; + BOOT_REGION_START = SaveStart; + BOOT_REGION_END = SaveEnd; + OSClearContext(&exceptionContext); + OSSetCurrentContext(&exceptionContext); + DVDInit(); + DVDSetAutoInvalidation(TRUE); -void OSGetSavedRegion(void **start, void **end) -{ - *start = __OSSavedRegionStart; - *end = __OSSavedRegionEnd; + __DVDPrepareResetAsync(Callback); + + if (!DVDCheckDisk()) { + __OSDoHotReset(UNK_817FFFFC); + } + + __OSMaskInterrupts(0xffffffe0); + __OSUnmaskInterrupts(0x400); + + OSEnableInterrupts(); + + offset = 0; + numBytes = 32; + ReadApploader(&dvdCmd, (void *)&Header, offset, numBytes); + + offset = Header.size + 0x20; + numBytes = OSRoundUp32B(Header.rebootSize); + ReadApploader(&dvdCmd2, OS_BOOTROM_ADDR, offset, numBytes); + + ICInvalidateRange(OS_BOOTROM_ADDR, numBytes); + Run(OS_BOOTROM_ADDR); } From 494380826313569add7459bb7ae0c081e175da24 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sun, 19 Jan 2025 19:51:03 -0500 Subject: [PATCH 133/178] Complete m438Dll (#542) * get halfway through m424/ball * get halfway through m424/ball * get halfway through m424/ball * complete m424/ball * fix merge errors * Revert "complete m424/ball" This reverts commit acbc3196c585acc5e6328e53f4aaf31e1b52db73. * fix up ball, start claw * get halfway through m424/ball * complete m424/ball * Revert "complete m424/ball" This reverts commit acbc3196c585acc5e6328e53f4aaf31e1b52db73. * fix up ball, start claw * complete m424Dll * fix m424, begin m438/map * Start m438/map * complete m438/map * fix m424 * start fire.c * adapt main.c * continued work on fire.c * complete fire.c --- .vscode/settings.json | 10 +- include/REL/m438Dll.h | 153 +++- src/REL/m424Dll/claw.c | 9 +- src/REL/m438Dll/fire.c | 1554 ++++++++++++++++++++++++++++++++++++++++ src/REL/m438Dll/main.c | 134 +--- src/REL/m438Dll/map.c | 21 +- 6 files changed, 1758 insertions(+), 123 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index d1282bec..43011608 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -39,7 +39,15 @@ "chrman.h": "c", "os.h": "c", "type_traits": "cpp", - "xutility": "cpp" + "xutility": "cpp", + "xtr1common": "c", + "hsfdraw.h": "c", + "dolphin.h": "c", + "hsfman.h": "c", + "hsfformat.h": "c", + "hsfanim.h": "c", + "memory.h": "c", + "animdata.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/include/REL/m438Dll.h b/include/REL/m438Dll.h index 84847928..8279e1f2 100644 --- a/include/REL/m438Dll.h +++ b/include/REL/m438Dll.h @@ -1,6 +1,8 @@ #ifndef M438DLL_H #define M438DLL_H +#include "game/animdata.h" +#include "game/hsfformat.h" #include "game/object.h" typedef struct M438MainWork4 { @@ -16,6 +18,141 @@ typedef struct M438MainWork4 { char unk40[0xC]; } M438MainWork4; /* size = 0x4C */ +typedef struct M438UnkSubStruct { + s8 unk_00; + s8 unk_01; + char unk02[0x2]; + f32 unk_04; + f32 unk_08; + f32 unk_0C; + f32 unk_10; + f32 unk_14; + f32 unk_18; + f32 unk_1C; + f32 unk_20; + u8 unk_24; + float unk_28; + float unk_2C; +} M438UnkSubStruct; + +typedef struct M438UnkStruct { + Vec unk_00; + Vec unk_0C; + Vec unk_18; + Vec unk_24; + u8 unk_30; + u8 unk_31; + u8 unk_32; + u8 unk_33; + u8 unk_34; + u32 unk_38; + s16 unk_3C; + void* unk_40; + Vec* unk_44; + GXColor* unk_48; + Vec* unk_4C; + GXColor unk_50; + GXColor unk_54; + M438UnkSubStruct* unk_58; + u8 unk_5C; + char unk5D[0x3]; + Vec unk_60; + Vec unk_6C; + s16 unk_78[0x10]; +} M438UnkStruct; /* size = 0x98 */ + +typedef struct M438FireStruct { + Vec unk0; + Vec unkC; + Vec unk18; + Vec unk24; +} M438FireStruct; // sizeof 0x30 + +typedef struct M438FireStruct2 { + GXColor unk0; + GXColor unk4; + GXColor unk8; + GXColor unkC; +} M438FireStruct2; // sizeof 0x10 + +typedef struct M438FireStruct3 { + HsfVector2f unk0; + HsfVector2f unk8; + HsfVector2f unk10; + HsfVector2f unk18; +} M438FireStruct3; // sizeof 0x20 + +typedef struct M438UnkStruct2 { + s16 unk_00; + s16 unk_02; + u8 unk_04; + u32 unk_08; + Vec unk_0C; + Vec unk_18; + Vec unk_24; + void (*unk_30)(struct M438UnkStruct2*); + s16* unk_34; + char unk_38[0x4]; + M438UnkStruct *unk_3C; + char unk40[0x8]; + s16 unk_48; + void* unk_4C; + Vec* unk_50; + GXColor* unk_54; + Vec* unk_58; + M438UnkSubStruct* unk_5C; + u8 unk_60; + char unk61[0x3]; + Vec unk_64; + Vec unk_70; + union { + s16 unk_7Ca[0x20]; + struct { + s16 unk_7C; + s16 unk_7E; + float unk_80; + float unk_84; + float unk_88; + float unk_8C; + float unk_90; + char unk94[0x28]; + }; + }; +} M438UnkStruct2; /* size = 0xBC */ + +typedef struct M438UnkStruct3 { + AnimData* unk_00; + s16 unk_04; + s16 unk_06; + u32 unk_08; + Vec unk_0C; + Mtx unk_18; + GXColor unk_48; + u8 unk_4C; + u8 unk_4D; + s16 unk_4E; + s16 unk_50; + char unk52[0x2]; + f32 unk_54; + f32 unk_58; + f32 unk_5C; + f32 unk_60; +} M438UnkStruct3; /* size = 0x64 */ + +typedef struct M438StructBssDE4 { + Mtx unk_00; + s16 unk_30; + s16 unk_32; + s16 unk_34; + s16 unk_36; + s16 unk_38; + s16 unk_3A; + M438UnkStruct3 *unk_3C; + M438UnkStruct2 *unk_40; +} M438StructBssDE4; /* size = */ + +extern M438StructBssDE4 lbl_1_bss_DE4; + void fn_1_B4D8(Process *arg0); void fn_1_B548(); s32 fn_1_DA64(float arg8); @@ -24,11 +161,11 @@ float fn_1_E488(float arg8, float arg9, float argA); float fn_1_E5A4(float arg8, float arg9); void fn_1_E658(s16 arg0, s16 arg1); -s16 fn_1_10258(s32 arg0, s32 arg1); +s16 fn_1_10258(u8 arg0, u8 arg1); void fn_1_107BC(s16 arg0); -void fn_1_108E4(s16 arg0, s32 arg1, s32 arg2); +void fn_1_108E4(s16 arg0, s16 arg1, u8 arg2); s16 fn_1_10910(u32 arg0, s16 arg1, s16 arg2); -s8 fn_1_11018(s16 arg0, u8 arg1, u32 arg2); +u8 fn_1_11018(s16 arg0, u8 arg1, u32 arg2); void fn_1_11658(void); void fn_1_11890(s16 arg0, float arg8, float arg9, float argA); void fn_1_118FC(s16 arg0, s16 arg1, float arg8, float arg9, float argA); @@ -39,11 +176,11 @@ void fn_1_11F68(s16 arg0, s16 arg1, float arg8, float arg9, float argA); void fn_1_1204C(s16 arg0, s32 arg1); void fn_1_12090(s16 arg0, s16 arg1, s32 arg2); void fn_1_12100(s16 arg0, s32 arg1); -void fn_1_12174(s16 arg0, s32 arg1); -void fn_1_12378(s16 arg0, s16 arg1, s8 arg2, s8 arg3, s8 arg4, u8 arg5); -void fn_1_124CC(s16 arg0, s8 arg1); -void fn_1_12538(s16 arg0, s16 arg1, s8 arg2); -void fn_1_1274C(s16 arg0, s16 arg1, u8 arg2, s8 arg3); +void fn_1_12174(s16 arg0, u32 arg1); +void fn_1_12378(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5); +void fn_1_124CC(s16 arg0, u8 arg1); +void fn_1_12538(s16 arg0, s16 arg1, u8 arg2); +void fn_1_1274C(s16 arg0, s16 arg1, u8 arg2, u8 arg3); void fn_1_128C8(s16 arg0, s16 arg1, u8 arg2, float arg8); #endif diff --git a/src/REL/m424Dll/claw.c b/src/REL/m424Dll/claw.c index b9472555..b6061580 100644 --- a/src/REL/m424Dll/claw.c +++ b/src/REL/m424Dll/claw.c @@ -1,5 +1,6 @@ #include "REL/m424Dll.h" +#include "math.h" #include "ext_math.h" #include "game/audio.h" #include "game/chrman.h" @@ -7,8 +8,6 @@ #include "game/hsfman.h" #include "game/hsfmotion.h" #include "game/pad.h" -#include "math.h" - // STRUCT typedef struct _M424DllClawStruct { @@ -67,8 +66,8 @@ typedef struct _M424DllClawStruct3 { } M424DllClawStruct3; // sizeof 0x8 // BSS -Process *lbl_1_bss_6DC; -omObjData *lbl_1_bss_6D8; +Process* lbl_1_bss_6DC; +omObjData* lbl_1_bss_6D8; s32 lbl_1_bss_6D0[2]; s32 lbl_1_bss_6CC; s32 lbl_1_bss_6C8; @@ -179,7 +178,7 @@ void fn_1_94D0(omObjData *arg0) } var_r31->unk184 = -1; var_r31->unk30 = lbl_1_data_30C; - + for (var_r29 = 0; var_r29 < 0xC; var_r29++) { var_r31->unk3C[var_r29] = lbl_1_data_30C; var_r31->unkCC[var_r29] = lbl_1_data_30C; diff --git a/src/REL/m438Dll/fire.c b/src/REL/m438Dll/fire.c index e69de29b..349febca 100644 --- a/src/REL/m438Dll/fire.c +++ b/src/REL/m438Dll/fire.c @@ -0,0 +1,1554 @@ +#include "REL/m438Dll.h" + +#include "game/hsfdraw.h" +#define HUSPR_USE_OLD_DEFS +#include "game/sprite.h" + +extern u8 texMtxTbl[]; + +// PROTO +void fn_1_E790(M438UnkStruct2*); +void fn_1_F538(ModelData*, Mtx); +void fn_1_FAB8(M438UnkStruct*); +void fn_1_FD40(M438UnkStruct2*); +void fn_1_10F0C(s16); +s32 fn_1_110B4(s16, u8, s16); + +void fn_1_E658(s16 arg0, s16 arg1) { + M438UnkStruct2* var_r29; + s32 var_r31; + M438UnkStruct3* var_r30; + + lbl_1_bss_DE4.unk_34 = Hu3DHookFuncCreate(fn_1_F538); + Hu3DModelLayerSet(lbl_1_bss_DE4.unk_34, 6); + lbl_1_bss_DE4.unk_30 = arg0; + var_r29 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * sizeof(M438UnkStruct2), 0x10000000); + lbl_1_bss_DE4.unk_40 = var_r29; + lbl_1_bss_DE4.unk_32 = arg1; + var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(M438UnkStruct3), 0x10000000); + lbl_1_bss_DE4.unk_3C = var_r30; + + for (var_r31 = 0; var_r31 < arg0; var_r31++, var_r29++) { + var_r29->unk_08 = 0; + } + + for (var_r31 = 0; var_r31 < arg1; var_r31++, var_r30++) { + var_r30->unk_06 = 0; + var_r30->unk_08 = 0; + } + lbl_1_bss_DE4.unk_36 = lbl_1_bss_DE4.unk_38 = lbl_1_bss_DE4.unk_3A = 0; +} + +void fn_1_E790(M438UnkStruct2* arg0) { + ModelData sp120; + Mtx spF0; + Mtx spC0; + Mtx sp90; + Mtx sp60; + Mtx sp30; + GXColor sp2C; + s16 sp8; + M438UnkStruct* var_r31; + s16 var_r29; + s16 var_r28; + s32 var_r27; + M438UnkStruct3* temp_r26; + s32 var_r25; + s32 var_r24; + s16 temp_r23; + s32 var_r22; + s32 var_r21; + s32 var_r20; + s32 var_r19; + + mtxRot(sp60, arg0->unk_18.x, arg0->unk_18.y, arg0->unk_18.z); + PSMTXScale(sp90, arg0->unk_24.x, arg0->unk_24.y, arg0->unk_24.z); + PSMTXConcat(sp60, sp90, sp90); + mtxTransCat(sp90, arg0->unk_0C.x, arg0->unk_0C.y, arg0->unk_0C.z); + PSMTXConcat(Hu3DCameraMtx, sp90, spC0); + var_r29 = 0; + var_r28 = 0; + sp8 = 0; + for (var_r27 = GX_TEXMAP0; var_r27 < arg0->unk_04; var_r27++) { + if (arg0->unk_34[var_r27] != 0) { + temp_r26 = &lbl_1_bss_DE4.unk_3C[arg0->unk_34[var_r27]]; + PSMTXCopy(temp_r26->unk_18, sp30); + mtxTransCat(sp30, temp_r26->unk_0C.x, temp_r26->unk_0C.y, temp_r26->unk_0C.z); + switch (temp_r26->unk_04) { + case 0: + GXLoadTexMtxImm(sp30, texMtxTbl[var_r28], GX_MTX2x4); + var_r22 = texMtxTbl[var_r28]; + GXSetTexCoordGen2(var_r28, GX_TG_MTX2x4, var_r27 + 4, var_r22, 0, 0x7D); + GXSetTevOrder(var_r29, var_r28, var_r27, GX_COLOR0A0); + if (var_r27 == GX_TEXMAP0) { + if ((temp_r26->unk_00->bmp->dataFmt == 7) || (temp_r26->unk_00->bmp->dataFmt == 8)) { + GXSetTevColor(GX_TEVREG2, temp_r26->unk_48); + GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_C2, GX_CC_RASC, GX_CC_ZERO); + } else { + GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); + } + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); + } else { + sp2C.a = temp_r26->unk_48.a; + GXSetTevColor(GX_TEVREG2, sp2C); + GXSetTevColorIn(var_r29, GX_CC_CPREV, GX_CC_TEXC, GX_CC_A2, GX_CC_ZERO); + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_TEXA, GX_CA_APREV, GX_CA_ZERO); + } + GXSetTevColorOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + break; + case 1: + GXLoadTexMtxImm(sp30, texMtxTbl[var_r28], GX_MTX2x4); + var_r21 = texMtxTbl[var_r28]; + GXSetTexCoordGen2(var_r28, GX_TG_MTX2x4, var_r27 + 4, var_r21, 0, 0x7D); + GXSetTevOrder(var_r29, var_r28, var_r27, GX_COLOR0A0); + GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_CPREV, GX_CC_TEXA, GX_CC_ZERO); + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_TEXA, GX_CA_APREV, GX_CA_ZERO); + GXSetTevColorOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + break; + case 2: + sp2C.a = 0xE0; + GXSetTevColor(GX_TEVREG1, sp2C); + GXSetTexCoordGen2(var_r28 + 1, GX_TG_BUMP0, var_r28, 0x3C, 0, 0x7D); + GXSetTevOrder(var_r29, var_r28, var_r27, GX_COLOR0A0); + GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A1, GX_CC_RASC); + GXSetTevColorOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 0, GX_TEVPREV); + var_r29++; + GXSetTevOrder(var_r29, var_r28 + 1, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A1, GX_CC_CPREV); + GXSetTevColorOp(var_r29, GX_TEV_SUB, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 0, GX_TEVPREV); + break; + case 3: + var_r28--; + GXLoadTexMtxImm(sp30, texMtxTbl[var_r28], GX_MTX2x4); + var_r20 = texMtxTbl[var_r28]; + GXSetTexCoordGen2(var_r28, GX_TG_MTX2x4, var_r27 + 4, var_r20, 0, 0x7D); + GXSetTevOrder(var_r29, var_r28, var_r27, GX_COLOR0A0); + GXSetTevColorIn(var_r29, GX_CC_ZERO, GX_CC_CPREV, GX_CC_TEXC, GX_CC_ZERO); + GXSetTevColorOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); + GXSetTevAlphaOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + var_r28++; + break; + case 4: + mtxRot(sp60, arg0->unk_18.x, arg0->unk_18.y, arg0->unk_18.z); + PSMTXScale(sp90, arg0->unk_24.x, arg0->unk_24.y, arg0->unk_24.z); + PSMTXConcat(sp60, sp90, sp90); + mtxTransCat(sp90, arg0->unk_0C.x, arg0->unk_0C.y, arg0->unk_0C.z); + PSMTXConcat(Hu3DCameraMtx, sp90, sp30); + PSMTXInverse(Hu3DCameraMtx, sp60); + PSMTXConcat(sp60, sp30, sp60); + PSMTXConcat(Hu3DShadowData.unk_68, Hu3DShadowData.unk_38, sp90); + PSMTXConcat(sp90, sp60, sp30); + GXLoadTexMtxImm(sp30, texMtxTbl[var_r28], GX_MTX3x4); + var_r19 = texMtxTbl[var_r28]; + GXSetTexCoordGen2(var_r28, GX_TG_MTX3x4, GX_TG_POS, var_r19, 0, 0x7D); + GXSetTevOrder(var_r29, var_r28, var_r27, GX_COLOR0A0); + if (var_r27 == GX_TEXMAP0) { + GXSetTevColorIn(var_r29, GX_CC_ONE, GX_CC_ZERO, GX_CC_TEXC, GX_CC_ZERO); + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); + } else { + GXSetTevColorIn(var_r29, GX_CC_CPREV, GX_CC_ZERO, GX_CC_TEXC, GX_CC_ZERO); + GXSetTevAlphaIn(var_r29, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_APREV); + } + GXSetTevColorOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaOp(var_r29, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 0, GX_TEVPREV); + break; + } + var_r29++; + var_r28++; + if (temp_r26->unk_4D != 0) { + HuSprTexLoad(temp_r26->unk_00, 0, var_r27, 1, 1, 1); + } else { + HuSprTexLoad(temp_r26->unk_00, 0, var_r27, 0, 0, 1); + } + } + } + GXSetNumTevStages((s16)var_r29); + GXSetNumTexGens((s16)var_r28); + var_r31 = arg0->unk_3C; + for (var_r24 = 0; var_r24 < arg0->unk_02; var_r24++, var_r31++) { + if ((var_r31->unk_38 != 0) && ((var_r31->unk_38 & 4) == 0)) { + switch (var_r31->unk_30) { + case 0: + mtxRot(sp60, var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + if (var_r31->unk_31 == 2) { + PSMTXConcat(lbl_1_bss_DE4.unk_00, sp60, sp60); + } else if (var_r31->unk_31 == 1) { + PSMTXRotRad(sp90, 0x59, MTXDegToRad(CRot.y)); + PSMTXConcat(sp90, sp60, sp60); + } + PSMTXScale(sp90, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); + PSMTXTrans(sp30, var_r31->unk_24.x, var_r31->unk_24.y, var_r31->unk_24.z); + PSMTXConcat(sp90, sp30, sp90); + PSMTXConcat(sp60, sp90, sp90); + mtxTransCat(sp90, var_r31->unk_00.x, var_r31->unk_00.y, var_r31->unk_00.z); + PSMTXConcat(Hu3DCameraMtx, sp90, spF0); + break; + case 1: + mtxRot(sp60, var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + if (var_r31->unk_31 == 2) { + if (HmfInverseMtxF3X3(spC0, sp90) == 0) { + PSMTXIdentity(sp90); + } + PSMTXConcat(sp90, sp60, sp60); + } else if (var_r31->unk_31 == 1) { + PSMTXRotRad(sp90, 0x59, MTXDegToRad(CRot.y)); + PSMTXConcat(sp90, sp60, sp60); + } + PSMTXScale(sp90, var_r31->unk_18.x, var_r31->unk_18.y, var_r31->unk_18.z); + PSMTXTrans(sp30, var_r31->unk_24.x, var_r31->unk_24.y, var_r31->unk_24.z); + PSMTXConcat(sp90, sp30, sp90); + PSMTXConcat(sp60, sp90, sp90); + mtxTransCat(sp90, var_r31->unk_00.x, var_r31->unk_00.y, var_r31->unk_00.z); + PSMTXConcat(spC0, sp90, spF0); + break; + } + GXLoadPosMtxImm(spF0, 0); + PSMTXInverse(spF0, sp90); + PSMTXTranspose(sp90, sp60); + GXLoadNrmMtxImm(sp60, 0); + GXSetChanAmbColor(GX_COLOR0A0, var_r31->unk_50); + GXSetChanMatColor(GX_COLOR0A0, var_r31->unk_54); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(0); + switch (var_r31->unk_33) { + case 0: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + break; + case 1: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_NOOP); + break; + case 2: + GXSetBlendMode(GX_BM_BLEND, GX_BL_ZERO, GX_BL_INVDSTCLR, GX_LO_NOOP); + break; + } + if ((var_r31->unk_38 & 0x10) != 0) { + GXSetZMode(0, GX_LEQUAL, 1); + } else { + GXSetZMode(1, GX_LEQUAL, 0); + } + sp120.attr = 0; + temp_r23 = Hu3DLightSet(&sp120, &Hu3DCameraMtx, &Hu3DCameraMtxXPose, 0.0f); + GXSetNumChans(1); + if ((var_r31->unk_38 & 8) != 0) { + var_r25 = GX_SRC_VTX; + } else { + var_r25 = GX_SRC_REG; + } + switch (var_r31->unk_32) { + case 0: + GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, var_r25, 0, GX_DF_CLAMP, GX_AF_NONE); + break; + case 1: + GXSetChanCtrl(GX_COLOR0A0, 1, GX_SRC_REG, var_r25, temp_r23, GX_DF_CLAMP, GX_AF_SPOT); + break; + case 2: + GXSetChanCtrl(GX_COLOR0A0, 1, GX_SRC_REG, var_r25, temp_r23, GX_DF_CLAMP, GX_AF_SPEC); + break; + } + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_RGBA6, 0); + GXSetArray(GX_VA_POS, var_r31->unk_44, 12); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, var_r31->unk_48, 4); + for (var_r27 = 0; var_r27 < var_r31->unk_34; var_r27++) { + GXSetVtxDesc(var_r27 + GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, var_r27 + GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(var_r27 + GX_VA_TEX0, &var_r31->unk_58[var_r27].unk_04, 8); + } + GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_RGBA6, 0U); + GXSetArray(GX_VA_NRM, var_r31->unk_4C, 12); + GXCallDisplayList(var_r31->unk_40, var_r31->unk_3C); + } + } +} + +void fn_1_F538(ModelData* arg0, Mtx arg1) { + Mtx sp38; + Mtx sp8; + M438UnkStruct2* var_r31; + s32 var_r30; + + var_r31 = lbl_1_bss_DE4.unk_40; + GXLoadPosMtxImm(arg1, 0); + PSMTXInverse(arg1, sp38); + PSMTXTranspose(sp38, sp8); + GXLoadNrmMtxImm(sp8, 0); + HmfInverseMtxF3X3(Hu3DCameraMtx, lbl_1_bss_DE4.unk_00); + + for (var_r30 = 0; var_r30 < lbl_1_bss_DE4.unk_30; var_r30++, var_r31++) { + if ((var_r31->unk_08 != 0) && ((var_r31->unk_08 & 2) != 0) && ((var_r31->unk_08 & 4) == 0)) { + if ((u8)omPauseChk() == 0) { + if (var_r31->unk_30) { + var_r31->unk_30(var_r31); + } + if (var_r31->unk_08 == 0) continue; + fn_1_FD40(var_r31); + if (var_r31->unk_08 == 0) continue; + } + fn_1_E790(var_r31); + } + } +} + +M438UnkStruct2* fn_1_F664(s16 arg0) { + return &lbl_1_bss_DE4.unk_40[arg0]; +} + +M438UnkStruct* fn_1_F680(s16 arg0, s16 arg1) { + return &lbl_1_bss_DE4.unk_40[arg0].unk_3C[arg1]; +} + +M438UnkStruct3* fn_1_F6AC(s16 arg0) { + return &lbl_1_bss_DE4.unk_3C[arg0]; +} + +void fn_1_F6C8(M438FireStruct** arg0, s16 arg1, f32 arg8, f32 arg9) { + s32 var_r30; + M438FireStruct* var_r31; + + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(M438FireStruct), 0x10000000); + + for (var_r30 = 0; var_r30 < arg1; var_r31++, var_r30++) { + var_r31->unk0.x = (-0.5f * arg8); + var_r31->unk0.y = (0.5f * arg9); + var_r31->unk0.z = 0.0f; + var_r31->unkC.x = (0.5f * arg8); + var_r31->unkC.y = (0.5f * arg9); + var_r31->unkC.z = 0.0f; + var_r31->unk18.x = (0.5f * arg8); + var_r31->unk18.y = (-0.5f * arg9); + var_r31->unk18.z = 0.0f; + var_r31->unk24.x = (-0.5f * arg8); + var_r31->unk24.y = (-0.5f * arg9); + var_r31->unk24.z = 0.0f; + } +} + +void fn_1_F84C(M438FireStruct** arg0, s16 arg1, Vec* arg2) { + Vec* var_r31; + s32 var_r29; + s32 var_r28; + + var_r31 = (Vec*)*arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(M438FireStruct), 0x10000000); + + for (var_r29 = 0; var_r29 < arg1; var_r29++) { + for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { + var_r31->x = arg2->x; + var_r31->y = arg2->y; + var_r31->z = arg2->z; + } + } +} + +void fn_1_F8EC(M438FireStruct2** arg0, s16 arg1, GXColor* arg2) { + GXColor* var_r31; + s32 var_r29; + s32 var_r28; + + var_r31 = (GXColor*)*arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(M438FireStruct2), 0x10000000U); + + for (var_r29 = 0; var_r29 < arg1; var_r29++) { + for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { + var_r31->r = arg2->r; + var_r31->g = arg2->g; + var_r31->b = arg2->b; + var_r31->a = arg2->a; + } + } +} + +void fn_1_F994(Vec** arg0, s16 arg1, Vec* arg2) { + s32 var_r29; + Vec* var_r31; + + var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec), 0x10000000); + + for (var_r29 = 0; var_r29 < arg1; var_r31++, arg2++, var_r29++) { + var_r31->x = arg2->x; + var_r31->y = arg2->y; + var_r31->z = arg2->z; + } +} + +void fn_1_FA20(M438FireStruct3** arg0, s16 arg1, HsfVector2f* arg2) { + HsfVector2f* var_r31; + s32 var_r29; + s32 var_r28; + + var_r31 = (HsfVector2f*)*arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(M438FireStruct3), 0x10000000); + + for (var_r29 = 0; var_r29 < arg1; var_r29++) { + for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) { + var_r31->x = arg2->x; + var_r31->y = arg2->y; + } + } +} + +void fn_1_FAB8(M438UnkStruct* arg0) { + Vec sp1C[4] = { + { -50.0f, 50.0f, 0.0f }, + { 50.0f, 50.0f, 0.0f }, + { 50.0f, -50.0f, 0.0f }, + { -50.0f, -50.0f, 0.0f } + }; + GXColor spC[4] = { + { 0xFF, 0xFF, 0xFF, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF }, + { 0xFF, 0xFF, 0xFF, 0xFF } + }; + + void* sp8; + s32 var_r31; + s32 var_r29; + void* temp_r28; + + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + arg0->unk_44[var_r31] = sp1C[var_r31]; + } + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + arg0->unk_48[var_r31] = spC[var_r31]; + } + arg0->unk_4C->x = 0.0f; + arg0->unk_4C->y = 0.0f; + arg0->unk_4C->z = 1.0f; + temp_r28 = arg0->unk_40; + sp8 = temp_r28; + GXBeginDisplayList(temp_r28, 0x100); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + GXPosition1x16(var_r31); + GXColor1x16(0); + GXNormal1x16(var_r31); + for (var_r29 = 0; var_r29 < arg0->unk_34; var_r29++) { + GXTexCoord1x16(var_r31); + } + } + arg0->unk_3C = GXEndDisplayList(); +} + +void fn_1_FD40(M438UnkStruct2* arg0) { + M438UnkStruct* var_r28; + M438UnkStruct3* temp_r30; + M438UnkSubStruct* var_r31; + s32 temp_r0; + s32 var_r25; + s32 var_r26; + s32 var_r27; + + var_r27 = 0; + + var_r28 = arg0->unk_3C; + for (var_r25 = 0; var_r25 < arg0->unk_02; var_r25++, var_r28++) { + if ((var_r28->unk_38 & 4) != 0) { + var_r27++; + } else { + var_r31 = var_r28->unk_58; + for (var_r26 = 0; var_r26 < var_r28->unk_34; var_r26++, var_r31++) { + temp_r30 = &lbl_1_bss_DE4.unk_3C[arg0->unk_34[var_r26]]; + var_r31->unk_24 &= ~4; + switch (var_r31->unk_24 & 0xF) { + case 1: + var_r31->unk_2C += var_r31->unk_28; + if (var_r31->unk_2C >= 1.0f) { + var_r31->unk_00++; + var_r31->unk_2C -= 1.0f; + } + break; + case 2: + var_r31->unk_2C += var_r31->unk_28; + if (var_r31->unk_2C >= 1.0f) { + var_r31->unk_00 -= 1; + var_r31->unk_2C -= 1.0f; + } + break; + } + if (var_r31->unk_00 >= temp_r30->unk_4C) { + if ((var_r31->unk_24 & 0x10) != 0) { + var_r31->unk_24 |= 8; + var_r31->unk_00 -= 1; + } else if ((var_r31->unk_24 & 0x40) != 0) { + var_r31->unk_24 = (var_r31->unk_24 & 0xF0) | 2; + var_r31->unk_00 -= 2; + } else if ((var_r31->unk_24 & 0x20) != 0) { + var_r31->unk_00 = 0; + } + var_r31->unk_24 |= 4; + } else if (var_r31->unk_00 < 0) { + if ((var_r31->unk_24 & 0x10) != 0) { + var_r31->unk_24 |= 8; + var_r31->unk_00 = 0; + } else if ((var_r31->unk_24 & 0x20) != 0) { + if ((var_r31->unk_24 & 0x40) != 0) { + var_r31->unk_24 = (var_r31->unk_24 & 0xF0) | 1; + var_r31->unk_00 = 1; + } else { + var_r31->unk_00 = temp_r30->unk_4C - 1; + } + } else if ((var_r31->unk_24 & 0x40) != 0) { + var_r31->unk_24 |= 8; + var_r31->unk_00 = 0; + } + var_r31->unk_24 |= 4; + } else { + var_r31->unk_24 &= ~8; + } + if (var_r31->unk_00 != var_r31->unk_01) { + var_r31->unk_08 = (var_r31->unk_00 * temp_r30->unk_58); + var_r31->unk_10 = (var_r31->unk_00 * temp_r30->unk_58); + var_r31->unk_18 = ((var_r31->unk_00 + 1) * temp_r30->unk_58); + var_r31->unk_20 = ((var_r31->unk_00 + 1) * temp_r30->unk_58); + if ((var_r31->unk_00 + 1) < temp_r30->unk_4C) { + var_r31->unk_18 -= temp_r30->unk_60; + var_r31->unk_20 -= temp_r30->unk_60; + } + var_r31->unk_01 = var_r31->unk_00; + DCFlushRangeNoSync(&var_r31->unk_04, 0x20); + } + if ((var_r31->unk_24 & 8) != 0) { + if ((var_r28->unk_38 & 0x40000000) != 0) { + var_r28->unk_38 |= 4; + if ((var_r31->unk_24 & 0x40) == 0) { + if (var_r31->unk_00 <= 0) { + var_r31->unk_00 = temp_r30->unk_4C; + } else { + var_r31->unk_00 = 0; + } + } + } else if ((var_r28->unk_38 & 0x80000000) != 0) { + fn_1_107BC(arg0->unk_00); + } + var_r27++; + } + } + } + } + if (var_r27 >= arg0->unk_02) { + if ((arg0->unk_08 & 0x40000000) != 0) { + arg0->unk_08 |= 4; + } else if ((arg0->unk_08 & 0x80000000) != 0) { + fn_1_107BC(arg0->unk_00); + } + } + PPCSync(); +} + +s16 fn_1_10258(u8 arg0, u8 arg1) { + M438UnkStruct* var_r30; + M438UnkStruct2* var_r31; + s32 var_r29; + s32 var_r28; + void* temp_r25; + + var_r31 = &lbl_1_bss_DE4.unk_40[1]; + + for (var_r29 = 1; var_r29 < lbl_1_bss_DE4.unk_30; var_r29++, var_r31++) { + if (var_r31->unk_08 == 0) break; + } + if (var_r29 == lbl_1_bss_DE4.unk_30) { + OSReport("OVER BILL\n"); + return 0; + } + var_r31->unk_00 = var_r29; + var_r31->unk_08 = 1; + var_r31->unk_30 = NULL; + var_r31->unk_02 = arg0; + var_r31->unk_04 = arg1; + var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * 0x98, 0x10000000); + var_r31->unk_3C = var_r30; + var_r31->unk_34 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * 2, 0x10000000); + var_r31->unk_48 = 0; + var_r31->unk_4C = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 << 8, 0x10000000); + var_r31->unk_50 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * 0x30, 0x10000000); + var_r31->unk_54 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * 0x10, 0x10000000); + var_r31->unk_58 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * 0xC, 0x10000000); + var_r31->unk_5C = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * (arg0 * 0x30), 0x10000000); + DCFlushRangeNoSync(var_r31->unk_4C, arg0 << 8); + var_r31->unk_0C.x = var_r31->unk_0C.y = var_r31->unk_0C.z = 0.0f; + var_r31->unk_18.x = var_r31->unk_18.y = var_r31->unk_18.z = 0.0f; + var_r31->unk_24.x = var_r31->unk_24.y = var_r31->unk_24.z = 1.0f; + var_r31->unk_70.x = var_r31->unk_70.y = var_r31->unk_70.z = 0.0f; + var_r31->unk_64.x = var_r31->unk_64.y = var_r31->unk_64.z = 0.0f; + var_r31->unk_60 = 0; + + for (var_r29 = 0; var_r29 < 0x20; var_r29++) { + var_r31->unk_7Ca[var_r29] = 0; + } + + for (var_r29 = 0; var_r29 < arg1; var_r29++) { + var_r31->unk_34[var_r29] = 0; + } + + for (var_r29 = 0; var_r29 < arg0; var_r29++, var_r30++) { + var_r30->unk_38 = 1; + var_r30->unk_34 = arg1; + var_r30->unk_30 = 0; + var_r30->unk_31 = 2; + var_r30->unk_32 = 0; + var_r30->unk_33 = 0; + var_r30->unk_50.r = var_r30->unk_50.g = var_r30->unk_50.b = 0; + var_r30->unk_50.a = 0xFF; + var_r30->unk_54.r = var_r30->unk_54.g = var_r30->unk_54.b = 0xFF; + var_r30->unk_54.a = 0xFF; + var_r30->unk_58 = &var_r31->unk_5C[var_r29 * arg1]; + + for (var_r28 = 0; var_r28 < arg1; var_r28++) { + var_r30->unk_58[var_r28].unk_00 = var_r30->unk_58[var_r28].unk_01 = 0; + var_r30->unk_58[var_r28].unk_28 = 1.0f; + var_r30->unk_58[var_r28].unk_2C = 0.0f; + } + var_r30->unk_00.x = var_r30->unk_00.y = var_r30->unk_00.z = 0.0f; + var_r30->unk_0C.x = var_r30->unk_0C.y = var_r30->unk_0C.z = 0.0f; + var_r30->unk_18.x = var_r30->unk_18.y = var_r30->unk_18.z = 1.0f; + var_r30->unk_6C.x = var_r30->unk_6C.y = var_r30->unk_6C.z = 0.0f; + var_r30->unk_24.x = var_r30->unk_24.y = var_r30->unk_24.z = 0.0f; + var_r30->unk_60.x = var_r30->unk_60.y = var_r30->unk_60.z = 0.0f; + var_r30->unk_5C = 0; + + for (var_r28 = 0; var_r28 < 0x10; var_r28++) { + var_r30->unk_78[var_r28] = 0; + } + var_r30->unk_44 = &var_r31->unk_50[var_r29 * 4]; + var_r30->unk_48 = &var_r31->unk_54[var_r29 * 4]; + var_r30->unk_4C = &var_r31->unk_58[var_r29]; + var_r30->unk_40 = ((char*)var_r31->unk_4C) + var_r31->unk_48; + fn_1_FAB8(var_r30); + var_r31->unk_48 += var_r30->unk_3C; + } + temp_r25 = var_r31->unk_4C; + var_r31->unk_4C = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_48, 0x10000000); + memcpy(var_r31->unk_4C, temp_r25, var_r31->unk_48); + HuMemDirectFree(temp_r25); + DCFlushRangeNoSync(var_r31->unk_50, arg0 * 0x30); + DCFlushRangeNoSync(var_r31->unk_54, arg0 * 0x10); + DCFlushRangeNoSync(var_r31->unk_58, arg0 * 0xC); + DCFlushRangeNoSync(var_r31->unk_4C, var_r31->unk_48); + var_r30 = var_r31->unk_3C; + var_r31->unk_48 = 0; + + for (var_r29 = 0; var_r29 < arg0; var_r29++, var_r30++) { + var_r30->unk_40 = ((char*)var_r31->unk_4C) + var_r31->unk_48; + var_r31->unk_48 += var_r30->unk_3C; + } + lbl_1_bss_DE4.unk_36 = var_r31->unk_00; + lbl_1_bss_DE4.unk_38 = 0; + lbl_1_bss_DE4.unk_3A = 0; + PPCSync(); + return var_r31->unk_00; +} + +void fn_1_107BC(s16 arg0) { + M438UnkStruct2* temp_r31; + s32 var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if ((u32) temp_r31->unk_08 != 0) { + if (temp_r31->unk_50 != NULL) { + HuMemDirectFree(temp_r31->unk_50); + } + if (temp_r31->unk_54 != NULL) { + HuMemDirectFree(temp_r31->unk_54); + } + if (temp_r31->unk_58 != NULL) { + HuMemDirectFree(temp_r31->unk_58); + } + if (temp_r31->unk_4C != NULL) { + HuMemDirectFree(temp_r31->unk_4C); + } + if (temp_r31->unk_5C != NULL) { + HuMemDirectFree(temp_r31->unk_5C); + } + + for (var_r30 = 0; var_r30 < temp_r31->unk_04; var_r30++) { + fn_1_10F0C(temp_r31->unk_34[var_r30]); + } + HuMemDirectFree(temp_r31->unk_3C); + HuMemDirectFree(temp_r31->unk_34); + temp_r31->unk_08 = 0; + temp_r31->unk_00 = 0; + } + } +} + +void fn_1_108E4(s16 arg0, s16 arg1, u8 arg2) { + lbl_1_bss_DE4.unk_36 = arg0; + lbl_1_bss_DE4.unk_38 = arg1; + lbl_1_bss_DE4.unk_3A = arg2; +} + +#include "game/sprite.h" + +s16 fn_1_10910(u32 arg0, s16 arg1, s16 arg2) { + f32 var_f31; + f32 var_f30; + AnimData* var_r30; + M438UnkStruct3* var_r31; + s32 var_r29; + + var_r31 = &lbl_1_bss_DE4.unk_3C[1]; + for (var_r29 = 1; var_r29 < lbl_1_bss_DE4.unk_32; var_r29++, var_r31++) { + if ((var_r31->unk_06 != 0) && (var_r31->unk_08 == arg0)) break; + } + if (var_r29 < lbl_1_bss_DE4.unk_32) { + var_r31->unk_06++; + return var_r29; + } + + var_r31 = &lbl_1_bss_DE4.unk_3C[1]; + for (var_r29 = 1; var_r29 < lbl_1_bss_DE4.unk_32; var_r29++, var_r31++) { + if (var_r31->unk_06 == 0) break; + } + var_r31->unk_08 = arg0; + var_r31->unk_06 = 1; + if (((arg0 & 0xFFFF0000) + 0x10000) == 0) { + var_r30 = HuSprAnimMake(arg1, arg2, 2); + var_r30->bmp->data = HuMemDirectMallocNum(HEAP_SYSTEM, arg2 * (arg1 * 2), 0x10000000); + arg1 = arg2 = 0; + } else { + var_r30 = HuSprAnimRead(HuDataReadNum(arg0, 0x10000000)); + } + if ((arg1 == 0) || (arg2 == 0)) { + arg1 = var_r30->bmp->sizeX; + arg2 = var_r30->bmp->sizeY; + var_f31 = var_f30 = 1.0f; + } else { + var_f31 = arg1 / (f32)var_r30->bmp->sizeX; + var_f30 = arg2 / (f32)var_r30->bmp->sizeY; + } + var_r31->unk_00 = var_r30; + var_r31->unk_4E = arg1; + var_r31->unk_50 = arg2; + var_r31->unk_54 = var_f31; + var_r31->unk_58 = var_f30; + var_r31->unk_5C = 1.0f / var_r30->bmp->sizeX; + var_r31->unk_60 = 1.0f / var_r30->bmp->sizeY; + var_r31->unk_04 = 0; + var_r31->unk_4C = var_r30->bmp->sizeY / arg2; + if (var_r31->unk_4C < 1) { + var_r31->unk_4C = 1; + } + var_r31->unk_4D = 0; + if ((arg1 > var_r30->bmp->sizeX) || (arg2 > var_r30->bmp->sizeY)) { + var_r31->unk_4D = 1; + } + var_r31->unk_48.r = var_r31->unk_48.g = var_r31->unk_48.b = 0xFF; + var_r31->unk_48.a = 0xFF; + PSMTXIdentity(var_r31->unk_18); + var_r31->unk_0C.x = var_r31->unk_0C.y = var_r31->unk_0C.z = 0.0f; + return var_r29; +} + +void fn_1_10CB8(s16 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5) { + f32 var_f31; + f32 var_f30; + M438UnkStruct3* temp_r31; + AnimData* temp_r30; + + temp_r31 = &lbl_1_bss_DE4.unk_3C[arg0]; + HuSprAnimKill(temp_r31->unk_00); + temp_r31->unk_08 |= 0xFFFF0000; + temp_r30 = HuSprAnimMake(arg2, arg3, arg1); + temp_r30->bmp->data = HuMemDirectMallocNum(HEAP_SYSTEM, arg3 * (temp_r30->bmp->pixSize * arg2), 0x10000000U); + var_f31 = arg4 / (f32) temp_r30->bmp->sizeX; + var_f30 = arg5 / (f32) temp_r30->bmp->sizeY; + temp_r31->unk_00 = temp_r30; + temp_r31->unk_4E = arg2; + temp_r31->unk_50 = arg3; + temp_r31->unk_54 = var_f31; + temp_r31->unk_58 = var_f30; + temp_r31->unk_5C = 1.0f / (f32) temp_r30->bmp->sizeX; + temp_r31->unk_60 = 1.0f / (f32) temp_r30->bmp->sizeY; + temp_r31->unk_04 = 0; + temp_r31->unk_4C = temp_r30->bmp->sizeY / arg5; + temp_r31->unk_4D = 0; + temp_r31->unk_48.r = temp_r31->unk_48.g = temp_r31->unk_48.b = 0xFF; + temp_r31->unk_48.a = 0xFF; +} + +void fn_1_10F0C(s16 arg0) { + M438UnkStruct3* temp_r31; + + temp_r31 = &lbl_1_bss_DE4.unk_3C[arg0]; + if (temp_r31->unk_08 != 0) { + if (temp_r31->unk_06 != 0) { + temp_r31->unk_06 -= 1; + } + if (temp_r31->unk_06 == 0) { + HuSprAnimKill(temp_r31->unk_00); + temp_r31->unk_08 = 0; + } + } +} + +u8 fn_1_10F8C(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) { + s32 var_r31; + + if (arg0 == 0) return 0; + + var_r31 = fn_1_10910(arg2, arg3, arg4); + if (var_r31 == 0) return 0; + + fn_1_110B4(arg0, arg1, var_r31); + return var_r31; +} + +u8 fn_1_11018(s16 arg0, u8 arg1, u32 arg2) { + u8 var_r31; + + var_r31 = fn_1_10F8C(arg0, arg1, arg2, 0, 0); + + return var_r31; +} + +s32 fn_1_110B4(s16 arg0, u8 arg1, s16 arg2) { + M438UnkStruct* var_r29; + M438UnkStruct2* temp_r28; + M438UnkStruct3* temp_r30; + M438UnkSubStruct* temp_r31; + s32 var_r26; + + if (arg2 == 0) { + return 0; + } + if (arg0 == 0) { + return 0; + } + temp_r28 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r28->unk_08 |= 2; + if (arg2 == temp_r28->unk_34[arg1]) { + return 1; + } + temp_r28->unk_34[arg1] = arg2; + temp_r30 = &lbl_1_bss_DE4.unk_3C[arg2]; + + var_r29 = temp_r28->unk_3C; + for (var_r26 = 0; var_r26 < temp_r28->unk_02; var_r26++, var_r29++) { + if (arg1 == 0) { + var_r29->unk_44[0].x = -0.5f * temp_r30->unk_4E; + var_r29->unk_44[0].y = 0.5f * temp_r30->unk_50; + var_r29->unk_44[1].x = (0.5f * temp_r30->unk_4E); + var_r29->unk_44[1].y = (0.5f * temp_r30->unk_50); + var_r29->unk_44[2].x = (0.5f * temp_r30->unk_4E); + var_r29->unk_44[2].y = (-0.5f * temp_r30->unk_50); + var_r29->unk_44[3].x = (-0.5f * temp_r30->unk_4E); + var_r29->unk_44[3].y = (-0.5f * temp_r30->unk_50); + var_r29->unk_44[0].z = var_r29->unk_44[1].z = var_r29->unk_44[2].z = var_r29->unk_44[3].z = 0.0f; + } + temp_r31 = &var_r29->unk_58[arg1]; + temp_r31->unk_24 = 0; + temp_r31->unk_00 = temp_r31->unk_01 = 0; + temp_r31->unk_28 = 1.0f; + temp_r31->unk_2C = 0.0f; + temp_r31->unk_04 = temp_r31->unk_00 * temp_r30->unk_54; + temp_r31->unk_08 = temp_r31->unk_00 * temp_r30->unk_58; + temp_r31->unk_0C = (temp_r31->unk_00 + 1) * temp_r30->unk_54; + temp_r31->unk_10 = temp_r31->unk_00 * temp_r30->unk_58; + temp_r31->unk_14 = (temp_r31->unk_00 + 1) * temp_r30->unk_54; + temp_r31->unk_18 = (temp_r31->unk_00 + 1) * temp_r30->unk_58; + temp_r31->unk_1C = (temp_r31->unk_00 * temp_r30->unk_54); + temp_r31->unk_20 = (temp_r31->unk_00 + 1) * temp_r30->unk_58; + if ((temp_r31->unk_00 + 1) < temp_r30->unk_4C) { + temp_r31->unk_18 -= temp_r30->unk_60; + temp_r31->unk_20 -= temp_r30->unk_60; + } + DCFlushRangeNoSync(&temp_r31->unk_04, 0x20); + } + lbl_1_bss_DE4.unk_36 = arg0; + lbl_1_bss_DE4.unk_3A = arg1; + PPCSync(); + return 1; +} + +void fn_1_11658(void) { + M438UnkStruct2* temp_r31; + M438UnkStruct3* temp_r30; + M438UnkStruct3* temp_r29; + s32 var_r28; + s32 var_r27; + s16 var_r26; + + for (var_r28 = 1; var_r28 < lbl_1_bss_DE4.unk_30; var_r28++) { + if ((s16)var_r28 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[(s16)var_r28]; + if (temp_r31->unk_08 != 0) { + if (temp_r31->unk_50 != NULL) { + HuMemDirectFree(temp_r31->unk_50); + } + if (temp_r31->unk_54 != NULL) { + HuMemDirectFree(temp_r31->unk_54); + } + if (temp_r31->unk_58 != NULL) { + HuMemDirectFree(temp_r31->unk_58); + } + if (temp_r31->unk_4C != NULL) { + HuMemDirectFree(temp_r31->unk_4C); + } + if (temp_r31->unk_5C != NULL) { + HuMemDirectFree(temp_r31->unk_5C); + } + + for (var_r27 = 0; var_r27 < temp_r31->unk_04; var_r27++) { + var_r26 = temp_r31->unk_34[var_r27]; + temp_r29 = &lbl_1_bss_DE4.unk_3C[var_r26]; + if (temp_r29->unk_08 != 0) { + if (temp_r29->unk_06 != 0) { + temp_r29->unk_06 -= 1; + } + if (temp_r29->unk_06 == 0) { + HuSprAnimKill(temp_r29->unk_00); + temp_r29->unk_08 = 0; + } + } + } + HuMemDirectFree(temp_r31->unk_3C); + HuMemDirectFree(temp_r31->unk_34); + temp_r31->unk_08 = 0; + temp_r31->unk_00 = 0; + } + } + } + + for (var_r28 = 1; var_r28 < lbl_1_bss_DE4.unk_32; var_r28++) { + temp_r30 = &lbl_1_bss_DE4.unk_3C[(s16)var_r28]; + if (temp_r30->unk_08 != 0U) { + if (temp_r30->unk_06 != 0) { + temp_r30->unk_06 -= 1; + } + if (temp_r30->unk_06 == 0) { + HuSprAnimKill(temp_r30->unk_00); + temp_r30->unk_08 = 0; + } + } + } + HuMemDirectFree(lbl_1_bss_DE4.unk_40); + HuMemDirectFree(lbl_1_bss_DE4.unk_3C); + Hu3DModelKill(lbl_1_bss_DE4.unk_34); +} + +void fn_1_11890(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r31->unk_0C.x = arg8; + temp_r31->unk_0C.y = arg9; + temp_r31->unk_0C.z = argA; + if (temp_r31->unk_02 == 1) { + temp_r31->unk_3C->unk_00 = temp_r31->unk_0C; + } + } +} + +void fn_1_118FC(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* temp_r31; + M438UnkStruct2* temp_r30; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r30->unk_02 > arg1) { + temp_r31 = &temp_r30->unk_3C[arg1]; + temp_r31->unk_00.x = arg8; + temp_r31->unk_00.y = arg9; + temp_r31->unk_00.z = argA; + } + } +} + +void fn_1_1196C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + for (var_r29 = 0; var_r29 < temp_r30->unk_02; var_r29++, var_r31++) { + var_r31->unk_00.x = arg8; + var_r31->unk_00.y = arg9; + var_r31->unk_00.z = argA; + } + } +} + +void fn_1_119E0(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r31->unk_0C.x += arg8; + temp_r31->unk_0C.y += arg9; + temp_r31->unk_0C.z += argA; + if (temp_r31->unk_02 == 1) { + temp_r31->unk_3C->unk_00 = temp_r31->unk_0C; + } + } +} + +void fn_1_11A64(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* temp_r31; + M438UnkStruct2* temp_r30; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r30->unk_02 > arg1) { + temp_r31 = &temp_r30->unk_3C[arg1]; + temp_r31->unk_00.x += arg8; + temp_r31->unk_00.y += arg9; + temp_r31->unk_00.z += argA; + } + } +} + +void fn_1_11AEC(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + for (var_r29 = 0; var_r29 < temp_r30->unk_02; var_r29++, var_r31++) { + var_r31->unk_00.x += arg8; + var_r31->unk_00.y += arg9; + var_r31->unk_00.z += argA; + } + } +} + +void fn_1_11B78(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* temp_r31; + M438UnkStruct2* temp_r30; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r30->unk_02 > arg1) { + temp_r31 = &temp_r30->unk_3C[arg1]; + temp_r31->unk_24.x = arg8; + temp_r31->unk_24.y = arg9; + temp_r31->unk_24.z = argA; + } + } +} + +void fn_1_11BE8(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + for (var_r29 = 0; var_r29 < temp_r30->unk_02; var_r29++, var_r31++) { + var_r31->unk_24.x = arg8; + var_r31->unk_24.y = arg9; + var_r31->unk_24.z = argA; + } + } +} + +void fn_1_11C5C(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r31->unk_70.x = arg8; + temp_r31->unk_70.y = arg9; + temp_r31->unk_70.z = argA; + if (temp_r31->unk_02 == 1) { + temp_r31->unk_3C->unk_6C = temp_r31->unk_70; + } + } +} + +void fn_1_11CC8(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* temp_r31; + M438UnkStruct2* temp_r30; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r30->unk_02 > arg1) { + temp_r31 = &temp_r30->unk_3C[arg1]; + temp_r31->unk_6C.x = arg8; + temp_r31->unk_6C.y = arg9; + temp_r31->unk_6C.z = argA; + } + } +} + +void fn_1_11D38(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + for (var_r29 = 0; var_r29 < temp_r30->unk_02; var_r29++, var_r31++) { + var_r31->unk_6C.x = arg8; + var_r31->unk_6C.y = arg9; + var_r31->unk_6C.z = argA; + } + } +} + +void fn_1_11DAC(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r31->unk_18.x = arg8; + temp_r31->unk_18.y = arg9; + temp_r31->unk_18.z = argA; + if (temp_r31->unk_02 == 1) { + temp_r31->unk_3C->unk_0C = temp_r31->unk_18; + } + } +} + +void fn_1_11E18(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* temp_r31; + M438UnkStruct2* temp_r30; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r30->unk_02 > arg1) { + temp_r31 = &temp_r30->unk_3C[arg1]; + temp_r31->unk_0C.x = arg8; + temp_r31->unk_0C.y = arg9; + temp_r31->unk_0C.z = argA; + } + } +} + +void fn_1_11E88(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + for (var_r29 = 0; var_r29 < temp_r30->unk_02; var_r29++, var_r31++) { + var_r31->unk_0C.x = arg8; + var_r31->unk_0C.y = arg9; + var_r31->unk_0C.z = argA; + } + } +} + +void fn_1_11EFC(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r31->unk_24.x = arg8; + temp_r31->unk_24.y = arg9; + temp_r31->unk_24.z = argA; + if (temp_r31->unk_02 == 1) { + temp_r31->unk_3C->unk_18 = temp_r31->unk_24; + } + } +} + +void fn_1_11F68(s16 arg0, s16 arg1, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* temp_r31; + M438UnkStruct2* temp_r30; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r30->unk_02 > arg1) { + temp_r31 = &temp_r30->unk_3C[arg1]; + temp_r31->unk_18.x = arg8; + temp_r31->unk_18.y = arg9; + temp_r31->unk_18.z = argA; + } + } +} + +void fn_1_11FD8(s16 arg0, f32 arg8, f32 arg9, f32 argA) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + for (var_r29 = 0; var_r29 < temp_r30->unk_02; var_r29++, var_r31++) { + var_r31->unk_18.x = arg8; + var_r31->unk_18.y = arg9; + var_r31->unk_18.z = argA; + } + } +} + +void fn_1_1204C(s16 arg0, s32 arg1) { + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r31->unk_08 |= arg1; + } +} + +void fn_1_12090(s16 arg0, s16 arg1, s32 arg2) { + M438UnkStruct* temp_r30; + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + temp_r30 = &temp_r31->unk_3C[arg1]; + temp_r30->unk_38 |= arg2; + } + } +} + +void fn_1_12100(s16 arg0, s32 arg1) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r30 = temp_r31->unk_3C; + for (var_r29 = 0; var_r29 < temp_r31->unk_02; var_r29++, var_r30++) { + var_r30->unk_38 |= arg1; + } + } +} + +void fn_1_12174(s16 arg0, u32 arg1) { + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + temp_r31->unk_08 &= ~arg1; + } +} + +void fn_1_121B8(s16 arg0, s16 arg1, u32 arg2) { + M438UnkStruct* temp_r30; + M438UnkStruct2* temp_r31; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if ((s16) temp_r31->unk_02 > arg1) { + temp_r30 = &temp_r31->unk_3C[arg1]; + temp_r30->unk_38 &= ~arg2; + } + } +} + +void fn_1_12228(s16 arg0, u32 arg1) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r30 = temp_r31->unk_3C; + for (var_r29 = 0; var_r29 < temp_r31->unk_02; var_r29++, var_r30++) { + var_r30->unk_38 &= ~arg1; + } + } +} + +s32 fn_1_1229C(s16 arg0, s32 arg1) { + M438UnkStruct2* var_r31; + + if (arg0 == 0) { + return 0; + } + + var_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if ((var_r31->unk_08 & arg1) != 0) { + return 1; + } + return 0; +} + +s16 fn_1_122F8(s16 arg0, s16 arg1, s32 arg2) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + if ((var_r30->unk_38 & arg2) != 0) { + return 1; + } + arg0 = 0; + } + } + return arg0; +} + +void fn_1_12378(s16 arg0, s16 arg1, u8 arg2, u8 arg3, u8 arg4, u8 arg5) { + M438UnkStruct* temp_r31; + M438UnkStruct2* temp_r30; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r30->unk_02 > arg1) { + temp_r31 = &temp_r30->unk_3C[arg1]; + temp_r31->unk_54.r = arg2; + temp_r31->unk_54.g = arg3; + temp_r31->unk_54.b = arg4; + temp_r31->unk_54.a = arg5; + } + } +} + +void fn_1_123EC(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + for (var_r29 = 0; var_r29 < temp_r30->unk_02; var_r29++, var_r31++) { + var_r31->unk_54.r = arg1; + var_r31->unk_54.g = arg2; + var_r31->unk_54.b = arg3; + var_r31->unk_54.a = arg4; + } + } +} + +void fn_1_12464(s16 arg0, s16 arg1, u8 arg2) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_30 = arg2; + } + } +} + +void fn_1_124CC(s16 arg0, u8 arg1) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r30 = temp_r31->unk_3C; + for (var_r29 = 0; var_r29 < temp_r31->unk_02; var_r29++, var_r30++) { + var_r30->unk_30 = arg1; + } + } +} + +void fn_1_12538(s16 arg0, s16 arg1, u8 arg2) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_31 = arg2; + } + } +} + +void fn_1_125A0(s16 arg0, u8 arg1) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r30 = temp_r31->unk_3C; + for (var_r29 = 0; var_r29 < temp_r31->unk_02; var_r29++, var_r30++) { + var_r30->unk_31 = arg1; + } + } +} + +void fn_1_1260C(s16 arg0, s16 arg1, u8 arg2) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_33 = arg2; + } + } +} + +void fn_1_12674(s16 arg0, u8 arg1) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + s32 var_r29; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r30 = temp_r31->unk_3C; + for (var_r29 = 0; var_r29 < temp_r31->unk_02; var_r29++, var_r30++) { + var_r30->unk_33 = arg1; + } + } +} + +void fn_1_126E0(s16 arg0, s16 arg1, u8 arg2) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_58[0].unk_24 = arg2; + } + } +} + +void fn_1_1274C(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_58[arg2].unk_24 = arg3; + } + } +} + +void fn_1_127C4(s16 arg0, u8 arg1) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r29; + s32 var_r28; + s32 var_r30; + + if (arg0 != 0) { + temp_r29 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = (M438UnkStruct*)&temp_r29->unk_3C; //! bug + for (var_r28 = 0; var_r28 < temp_r29->unk_02; var_r28++, var_r31++) { + for (var_r30 = 0; var_r30 < var_r31->unk_34; var_r30++) { + var_r31->unk_58[var_r30].unk_24 = arg1; + } + } + } +} + +void fn_1_1285C(s16 arg0, s16 arg1, f32 arg8) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_58[0].unk_28 = arg8; + } + } +} + +void fn_1_128C8(s16 arg0, s16 arg1, u8 arg2, f32 arg8) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_58[arg2].unk_28 = arg8; + } + } +} + +void fn_1_12940(s16 arg0, f32 arg8) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r28; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + + for (var_r28 = 0; var_r28 < temp_r30->unk_02; var_r28++, var_r31++) { + for (var_r29 = 0; var_r29 < var_r31->unk_34; var_r29++) { + var_r31->unk_58[var_r29].unk_28 = arg8; + } + } + } +} + +void fn_1_129D8(s16 arg0, s16 arg1, u8 arg2) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_58[0].unk_00 = arg2; + } + } +} + +void fn_1_12A48(s16 arg0, s16 arg1, u8 arg2, u8 arg3) { + M438UnkStruct2* temp_r31; + M438UnkStruct* var_r30; + + if (arg0 != 0) { + temp_r31 = &lbl_1_bss_DE4.unk_40[arg0]; + if (temp_r31->unk_02 > arg1) { + var_r30 = &temp_r31->unk_3C[arg1]; + var_r30->unk_58[arg2].unk_00 = arg3; + } + } +} + +void fn_1_12AC0(s16 arg0, u8 arg1) { + M438UnkStruct* var_r31; + M438UnkStruct2* temp_r30; + s32 var_r28; + s32 var_r29; + + if (arg0 != 0) { + temp_r30 = &lbl_1_bss_DE4.unk_40[arg0]; + var_r31 = temp_r30->unk_3C; + + for (var_r28 = 0; var_r28 < temp_r30->unk_02; var_r28++, var_r31++) { + for (var_r29 = 0; var_r29 < var_r31->unk_34; var_r29++) { + var_r31->unk_58[var_r29].unk_00 = arg1; + } + } + } +} + +void fn_1_12B58(s16 arg0, u8 arg1) { + M438UnkStruct3* var_r31; + + if (arg0 != 0) { + var_r31 = &lbl_1_bss_DE4.unk_3C[arg0]; + var_r31->unk_04 = arg1; + } +} diff --git a/src/REL/m438Dll/main.c b/src/REL/m438Dll/main.c index b8d481ff..861c653d 100644 --- a/src/REL/m438Dll/main.c +++ b/src/REL/m438Dll/main.c @@ -137,70 +137,6 @@ typedef struct M438StructBss298 { Vec unk_24; } M438StructBss298; /* size = 0x30 */ -typedef struct M438UnkSubStruct { - u8 unk_00; - char unk01[0x23]; - u8 unk_24; - float unk_28; - float unk_2C; -} M438UnkSubStruct; - -typedef struct M438UnkStruct { - Vec unk_00; - char unk0C[0xC]; - Vec unk_18; - char unk24[0xF]; - s8 unk_33; - char unk34[0x4]; - s32 unk_38; - char unk_3C[0x18]; - s8 unk_54; - s8 unk_55; - s8 unk_56; - u8 unk_57; - M438UnkSubStruct *unk_58; - u8 unk_5C; - char unk5D[0x3]; - Vec unk_60; - Vec unk_6C; - s16 unk_78; - s16 unk_7A; - char unk7C[0x1C]; -} M438UnkStruct; /* size = 0x98 */ - -typedef struct M438UnkStruct2 { - s16 unk_00; - s16 unk_02; - char unk04[0x8]; - Vec unk_0C; - char unk18[0xC]; - Vec unk_24; - void (*unk_30)(struct M438UnkStruct2 *); - char unk34[8]; - M438UnkStruct *unk_3C; - char unk40[0x20]; - u8 unk_60; - char unk61[0x3]; - char unk64[0x18]; - s16 unk_7C; - s16 unk_7E; - float unk_80; - float unk_84; - float unk_88; - float unk_8C; - float unk_90; - char unk94[0x28]; -} M438UnkStruct2; /* size = 0xBC */ - -typedef struct M438StructBssDE4 { - /* 0x00 */ char unk00[0x36]; - s16 unk_36; - s16 unk_38; - s16 unk_3A; - char unk3C[4]; - M438UnkStruct2 *unk_40; -} M438StructBssDE4; /* size = */ - typedef u8 M438UnkType[0x30]; void fn_1_4DC(omObjData *object); @@ -1872,9 +1808,9 @@ void fn_1_5D4C(M438UnkStruct2 *arg0) var_r31->unk_00.y = 6.0f; var_r31->unk_00.z = (40.0f * var_r31->unk_6C.z); temp_f29 = 0.01f * (100.0f * ((1.0f / 65536.0f) * fn_1_7DB4())); - var_r31->unk_54 = (80.0f + 60.0f * temp_f29); - var_r31->unk_55 = (64.0f + 60.0f * temp_f29); - var_r31->unk_56 = (56.0f + 60.0f * temp_f29); + var_r31->unk_54.r = (80.0f + 60.0f * temp_f29); + var_r31->unk_54.g = (64.0f + 60.0f * temp_f29); + var_r31->unk_54.b = (56.0f + 60.0f * temp_f29); } arg0->unk_7C = 0x30; arg0->unk_60++; @@ -1891,7 +1827,7 @@ void fn_1_5D4C(M438UnkStruct2 *arg0) var_r31->unk_18.x = temp_f30; var_r31->unk_18.y = temp_f30; var_r31->unk_18.z = temp_f30; - var_r31->unk_57 = (96.0f * (1.0f - (temp_f31 * temp_f31))); + var_r31->unk_54.a = (96.0f * (1.0f - (temp_f31 * temp_f31))); } if (arg0->unk_7C == 0) { arg0->unk_60++; @@ -1965,29 +1901,29 @@ void fn_1_63B0(M438UnkStruct2 *arg0) var_r31->unk_6C.z = 0.0f; if ((fn_1_7DB4() & 7) != 0) { var_r31->unk_33 = 1; - var_r31->unk_54 = 0x40; - var_r31->unk_55 = 0x10; - var_r31->unk_56 = 4; - var_r31->unk_57 = 0xFF; + var_r31->unk_54.r = 0x40; + var_r31->unk_54.g = 0x10; + var_r31->unk_54.b = 4; + var_r31->unk_54.a = 0xFF; temp_f30 = 3.75f + (1.75f * ((1.0f / 65536.0f) * fn_1_7DB4())); var_r31->unk_60.x = (temp_f30 * (0.1f + ((0.9f * var_f29) / 90.0f))); var_r31->unk_60.y = var_r31->unk_60.z = temp_f30; } else { var_r31->unk_33 = 0; - var_r31->unk_54 = 0; - var_r31->unk_55 = 0; - var_r31->unk_56 = 0; - var_r31->unk_57 = 0xFF; + var_r31->unk_54.r = 0; + var_r31->unk_54.g = 0; + var_r31->unk_54.b = 0; + var_r31->unk_54.a = 0xFF; temp_f30 = 0.25f + (0.25f * ((1.0f / 65536.0f) * fn_1_7DB4())); var_r31->unk_60.y = (1.5f * temp_f30); var_r31->unk_60.x = var_r31->unk_60.z = temp_f30; } var_r31->unk_58->unk_24 = 0; - var_r31->unk_78 = (s32)((60.0f * ((1.0f / 65536.0f) * fn_1_7DB4()))) + 1; + var_r31->unk_78[0] = (s32)((60.0f * ((1.0f / 65536.0f) * fn_1_7DB4()))) + 1; var_r31->unk_5C++; case 1: - if (--var_r31->unk_78 == 0) { + if (--var_r31->unk_78[0] == 0) { var_r31->unk_58->unk_24 = 0x11U; var_r31->unk_58->unk_28 = 0.5f; var_r31->unk_58->unk_2C = 0.0f; @@ -2032,7 +1968,7 @@ void fn_1_6A3C(M438UnkStruct2 *arg0) var_r28 = 0; for (var_r27 = 0; var_r27 < arg0->unk_02; var_r27++, var_r31++) { - if ((arg0->unk_7C != 0) && (var_r31->unk_7A == 0)) { + if ((arg0->unk_7C != 0) && (var_r31->unk_78[1] == 0)) { var_r31->unk_5C = 0; } switch (var_r31->unk_5C) { @@ -2049,8 +1985,8 @@ void fn_1_6A3C(M438UnkStruct2 *arg0) var_r31->unk_6C.x = 100.0f * (0.1f * sp8.x); var_r31->unk_6C.y = sp8.y + (2.5f * ((1.0f / 65536.0f) * fn_1_7DB4())); var_r31->unk_6C.z = 100.0f * (0.1f * sp8.z); - var_r31->unk_78 = (s32)(24.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 1; - var_r31->unk_7A = 1; + var_r31->unk_78[0] = (s32)(24.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 1; + var_r31->unk_78[1] = 1; } else { temp_f30 = (180.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) - 90.0f; @@ -2064,16 +2000,16 @@ void fn_1_6A3C(M438UnkStruct2 *arg0) var_r31->unk_6C.x = (100.0 * (0.015 * sp8.x)); var_r31->unk_6C.y = sp8.y + ((1.0f / 65536.0f) * fn_1_7DB4()); var_r31->unk_6C.z = 100.0f * (0.015f * sp8.z); - var_r31->unk_78 = (s32)(60.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 1; - var_r31->unk_7A = 0; + var_r31->unk_78[0] = (s32)(60.0f * ((1.0f / 65536.0f) * fn_1_7DB4())) + 1; + var_r31->unk_78[1] = 0; } var_r31->unk_38 &= ~4; if ((fn_1_7DB4() & 0xF) != 0) { var_r31->unk_33 = 1; - var_r31->unk_54 = 0x40; - var_r31->unk_55 = 0x10; - var_r31->unk_56 = 4; - var_r31->unk_57 = 0xFF; + var_r31->unk_54.r = 0x40; + var_r31->unk_54.g = 0x10; + var_r31->unk_54.b = 4; + var_r31->unk_54.a = 0xFF; temp_f31 = 1.8f + ((1.0f / 65536.0f) * fn_1_7DB4()); var_r31->unk_18.x = temp_f31; var_r31->unk_18.y = temp_f31; @@ -2081,10 +2017,10 @@ void fn_1_6A3C(M438UnkStruct2 *arg0) } else if (arg0->unk_7C != 0) { var_r31->unk_33 = 0; - var_r31->unk_54 = 0; - var_r31->unk_55 = 0; - var_r31->unk_56 = 0; - var_r31->unk_57 = 0xFF; + var_r31->unk_54.r = 0; + var_r31->unk_54.g = 0; + var_r31->unk_54.b = 0; + var_r31->unk_54.a = 0xFF; temp_f31 = 0.25f + (0.25f * ((1.0f / 65536.0f) * fn_1_7DB4())); var_r31->unk_18.x = temp_f31; var_r31->unk_18.y = 1.5f * temp_f31; @@ -2104,12 +2040,12 @@ void fn_1_6A3C(M438UnkStruct2 *arg0) var_r31->unk_5C++; break; case 1: - if (var_r31->unk_7A != 0) { + if (var_r31->unk_78[1] != 0) { var_r31->unk_6C.y -= 0.5f; } - if (--var_r31->unk_78 == 0) { + if (--var_r31->unk_78[0] == 0) { var_r31->unk_58->unk_24 = 0x11; - if (var_r31->unk_7A != 0) { + if (var_r31->unk_78[1] != 0) { var_r31->unk_58->unk_28 = 0.5f; } else { @@ -2132,7 +2068,7 @@ void fn_1_6A3C(M438UnkStruct2 *arg0) var_r31->unk_18.z *= 0.95f; var_r31->unk_6C.y -= 1.5f; if ((var_r31->unk_58->unk_24 & 8) != 0) { - if (var_r31->unk_7A != 0) { + if (var_r31->unk_78[1] != 0) { var_r31->unk_5C = 3; } else { @@ -2200,10 +2136,10 @@ void fn_1_7300(M438UnkStruct2 *arg0) case 1: var_r31->unk_38 &= ~4; var_r31->unk_33 = 1; - var_r31->unk_54 = 0x60; - var_r31->unk_55 = 0x20; - var_r31->unk_56 = 0x10; - var_r31->unk_57 = 0xFF; + var_r31->unk_54.r = 0x60; + var_r31->unk_54.g = 0x20; + var_r31->unk_54.b = 0x10; + var_r31->unk_54.a = 0xFF; temp_f31 = 0.4f + (0.15f * ((1.0f / 65536.0f) * fn_1_7DB4())); var_r31->unk_18.x = temp_f31; var_r31->unk_18.y = temp_f31; diff --git a/src/REL/m438Dll/map.c b/src/REL/m438Dll/map.c index 58f7e686..b0da050e 100644 --- a/src/REL/m438Dll/map.c +++ b/src/REL/m438Dll/map.c @@ -112,7 +112,7 @@ void fn_1_B54C(omObjData *arg0) var_r29 = Hu3DTexScrollCreate(arg0->model[1], "lafall"); Hu3DTexScrollPosMoveSet(var_r29, 0.0f, -(1.0f / 60.0f), 0.0f); var_r29 = 0; - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000C), 0x32); arg0->model[3] = var_r27; Hu3DModelLayerSet(var_r27, 3); @@ -151,7 +151,7 @@ void fn_1_B54C(omObjData *arg0) lbl_1_bss_E34[var_r30]->unk40.a = 0; lbl_1_bss_E34[var_r30]->unk00 = 0; } - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x45000F), 0x32); arg0->model[6] = var_r27; Hu3DModelLayerSet(var_r27, 3); @@ -162,7 +162,7 @@ void fn_1_B54C(omObjData *arg0) var_r25->unk40.a = 0; var_r25->unk00 = 0; } - + var_r27 = Hu3DParticleCreate(HuSprAnimReadFile(0x450010), 0x1F4); arg0->model[7] = var_r27; Hu3DModelLayerSet(var_r27, 2); @@ -437,7 +437,7 @@ void fn_1_CAB0(f32 arg8) temp_f28 = 20.0f; temp_f27 = 7.0f; var_r29 = 0x19; - + for (var_r30 = 0; var_r30 < 0x96; var_r30++) { var_r31 = lbl_1_bss_E34[var_r30]; if (var_r31->unk00_s16 == 0) { @@ -447,12 +447,12 @@ void fn_1_CAB0(f32 arg8) sp8.x = sind(temp_f31); sp8.y = 0.0f; sp8.z = cosd(temp_f31); - + temp_f31 = arg8 + (((0.002f * frandmod(0x3E8)) - 1.0f)) * temp_f27; var_r31->unk34.x = 7.5 * sind(temp_f31) * 100.0; var_r31->unk34.y = 0.2f * frandmod(0x3E8); var_r31->unk34.z = 7.5 * cosd(temp_f31) * 100.0; - + temp_f30 = 1.6666667f * (4.0f + (0.014f * frandmod(0x3E8))); var_r31->unk08.x = sp8.x * temp_f30; var_r31->unk08.z = sp8.z * temp_f30; @@ -478,12 +478,12 @@ void fn_1_CAB0(f32 arg8) sp8.x = sind(temp_f31); sp8.y = 0.0f; sp8.z = cosd(temp_f31); - + temp_f31 = arg8 + (((0.002f * frandmod(0x3E8)) - 1.0f)) * temp_f27; var_r31->unk34.x = 7.5 * sind(temp_f31) * 100.0; var_r31->unk34.y = 0.2f * frandmod(0x3E8); var_r31->unk34.z = 7.5 * cosd(temp_f31) * 100.0; - + temp_f30 = 1.6666667f * -(0.01f * frandmod(0x3E8)); var_r31->unk08.x = sp8.x * temp_f30; var_r31->unk08.z = sp8.z * temp_f30; @@ -586,7 +586,7 @@ s32 fn_1_DA64(f32 arg8) var_r28 = lbl_1_bss_108C[0]->data; var_r29 = 0; var_r31 = &var_r28->unk4; - + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { var_f31 = fn_1_E5A4(var_r31->unk8, arg8); if ((fabs(var_f31) < 12.0) && (var_r31->unk0 != 0)) { @@ -627,7 +627,7 @@ s32 fn_1_DEA0(f32 arg8) var_r28 = lbl_1_bss_108C[0]->data; var_r29 = 0; var_r31 = &var_r28->unk4; - + for (var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { var_f31 = fn_1_E5A4(var_r31->unk8, arg8); if ((fabs(var_f31) < 8.0) && (var_r31->unk0 != 0)) { @@ -647,6 +647,7 @@ f32 fn_1_DF70(f32 arg8, f32 arg9) var_f31 = 180.0 * (atan2f(arg9, arg8) / M_PI); if (var_f31 < 0.0f) { var_f31 += temp_f30; + } else if (var_f31 >= temp_f30) { var_f31 -= temp_f30; From a517ff0ae13d5d433c13925837eb8f7bcf95ebac Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sun, 19 Jan 2025 19:58:58 -0500 Subject: [PATCH 134/178] actually link the file --- configure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.py b/configure.py index 2a75498c..c19df3fd 100644 --- a/configure.py +++ b/configure.py @@ -1161,7 +1161,7 @@ config.libs = [ objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/map.c"), - Object(NonMatching, "REL/m438Dll/fire.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/fire.c"), }, ), Rel( From 02e288327297f6aba77d59c1715af60cfdcc5f36 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sun, 19 Jan 2025 20:01:58 -0500 Subject: [PATCH 135/178] actually link the file (#543) --- configure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.py b/configure.py index 2a75498c..c19df3fd 100644 --- a/configure.py +++ b/configure.py @@ -1161,7 +1161,7 @@ config.libs = [ objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/map.c"), - Object(NonMatching, "REL/m438Dll/fire.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m438Dll/fire.c"), }, ), Rel( From 627f9e4dd73a8b41f1e6fbd0a7c9e7d6bab4101b Mon Sep 17 00:00:00 2001 From: CreateSource Date: Tue, 21 Jan 2025 00:24:31 -0500 Subject: [PATCH 136/178] match MSL_C/abort_exit and MSL_C/mem --- .vscode/settings.json | 10 +++++++++- configure.py | 4 ++-- src/MSL_C.PPCEABI.bare.H/abort_exit.c | 15 ++++++++++++++- src/MSL_C.PPCEABI.bare.H/mem.c | 17 +++++++++++++++++ 4 files changed, 42 insertions(+), 4 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 43011608..69bd81ee 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -47,7 +47,15 @@ "hsfformat.h": "c", "hsfanim.h": "c", "memory.h": "c", - "animdata.h": "c" + "animdata.h": "c", + "abort_exit.h": "c", + "critical_regions.h": "c", + "stddef.h": "c", + "nmwexception.h": "c", + "signal.h": "c", + "gx.h": "c", + "dol2asm.h": "c", + "__mem.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/configure.py b/configure.py index c19df3fd..35693671 100644 --- a/configure.py +++ b/configure.py @@ -680,7 +680,7 @@ config.libs = [ "cflags": cflags_msl, "host": False, "objects": [ - Object(NonMatching, "MSL_C.PPCEABI.bare.H/abort_exit.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/abort_exit.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/alloc.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/errno.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/ansi_files.c"), @@ -692,7 +692,7 @@ config.libs = [ Object(NonMatching, "MSL_C.PPCEABI.bare.H/file_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/FILE_POS.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/mbstring.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/mem.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/mem.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/mem_funcs.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/misc_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/printf.c"), diff --git a/src/MSL_C.PPCEABI.bare.H/abort_exit.c b/src/MSL_C.PPCEABI.bare.H/abort_exit.c index 1c9ca4d2..b54f4742 100644 --- a/src/MSL_C.PPCEABI.bare.H/abort_exit.c +++ b/src/MSL_C.PPCEABI.bare.H/abort_exit.c @@ -1,5 +1,6 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h" #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/critical_regions.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/signal.h" #include "stddef.h" #include "PowerPC_EABI_Support/Runtime/NMWException.h" @@ -20,7 +21,19 @@ void (*__console_exit)(void) = 0; void abort(void) { - // TODO + void (**var_r31)(void); + + raise(1); + __aborting = 1; + var_r31 = &__atexit_funcs[0]; + while (__atexit_curr_func > 0) { + var_r31[--__atexit_curr_func](); + } + if (__console_exit != 0) { + __console_exit(); + __console_exit = 0; + } + _ExitProcess(); } void exit(int status) diff --git a/src/MSL_C.PPCEABI.bare.H/mem.c b/src/MSL_C.PPCEABI.bare.H/mem.c index 63a4434f..fc160cd5 100644 --- a/src/MSL_C.PPCEABI.bare.H/mem.c +++ b/src/MSL_C.PPCEABI.bare.H/mem.c @@ -60,6 +60,23 @@ void* memchr(const void* ptr, int ch, size_t count) return NULL; } +unsigned char* __memrchr(unsigned char* s, int c, size_t n){ // credit to CelestialAmber + int n_count; + size_t char_check; + + char_check = (unsigned char)c; + s = &s[n]; + n_count = n + 1; + + while(--n_count){ + if(*--s == char_check){ + return s; + } + } + + return 0; +} + int memcmp(const void* lhs, const void* rhs, size_t count) { const unsigned char* p1; From d72f538b875d929d44e4507655eef12c6d1e8cf2 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Tue, 21 Jan 2025 14:50:16 -0500 Subject: [PATCH 137/178] match acos, asin, fmod, and math_ppc (#545) --- .vscode/settings.json | 5 +- configure.py | 10 +- .../MSL_C/MSL_Common_Embedded/Math/fdlibm.h | 2 +- src/MSL_C.PPCEABI.bare.H/e_acos.c | 69 ++++ src/MSL_C.PPCEABI.bare.H/e_asin.c | 70 +++- src/MSL_C.PPCEABI.bare.H/e_fmod.c | 140 ++++++++ src/MSL_C.PPCEABI.bare.H/e_pow.c | 308 ++++++++++++++++++ src/MSL_C.PPCEABI.bare.H/math_ppc.c | 25 ++ 8 files changed, 621 insertions(+), 8 deletions(-) create mode 100644 src/MSL_C.PPCEABI.bare.H/e_acos.c create mode 100644 src/MSL_C.PPCEABI.bare.H/e_fmod.c create mode 100644 src/MSL_C.PPCEABI.bare.H/e_pow.c create mode 100644 src/MSL_C.PPCEABI.bare.H/math_ppc.c diff --git a/.vscode/settings.json b/.vscode/settings.json index 69bd81ee..f41b8dff 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -55,7 +55,10 @@ "signal.h": "c", "gx.h": "c", "dol2asm.h": "c", - "__mem.h": "c" + "__mem.h": "c", + "fdlibm.h": "c", + "float.h": "c", + "corecrt_math_defines.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/configure.py b/configure.py index 35693671..ce80b976 100644 --- a/configure.py +++ b/configure.py @@ -701,10 +701,10 @@ config.libs = [ Object(NonMatching, "MSL_C.PPCEABI.bare.H/string.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/uart_console_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/wchar_io.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_acos.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_asin.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_atan2.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_fmod.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_acos.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_asin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_atan2.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_fmod.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_pow.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_rem_pio2.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/k_cos.c"), @@ -725,7 +725,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/w_atan2.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_fmod.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_pow.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/math_ppc.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/math_ppc.c"), ], }, { diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h index 1f654aa7..1eef34b4 100644 --- a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h @@ -126,7 +126,7 @@ extern double sqrt __P((double)); extern double ceil __P((double)); extern double fabs __P((double)); // NOTE: I have no idea how they got it to mangle like this -extern double fabs__Fd(double); +static inline double fabs__Fd(double v) { return __fabs(v); } extern double floor __P((double)); extern double fmod __P((double, double)); diff --git a/src/MSL_C.PPCEABI.bare.H/e_acos.c b/src/MSL_C.PPCEABI.bare.H/e_acos.c new file mode 100644 index 00000000..4842c54b --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/e_acos.c @@ -0,0 +1,69 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" +#include "math.h" + +#ifdef __STDC__ +static const double +#else +static double +#endif +one= 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */ +pi = 3.14159265358979311600e+00, /* 0x400921FB, 0x54442D18 */ +pio2_hi = 1.57079632679489655800e+00, /* 0x3FF921FB, 0x54442D18 */ +pio2_lo = 6.12323399573676603587e-17, /* 0x3C91A626, 0x33145C07 */ +pS0 = 1.66666666666666657415e-01, /* 0x3FC55555, 0x55555555 */ +pS1 = -3.25565818622400915405e-01, /* 0xBFD4D612, 0x03EB6F7D */ +pS2 = 2.01212532134862925881e-01, /* 0x3FC9C155, 0x0E884455 */ +pS3 = -4.00555345006794114027e-02, /* 0xBFA48228, 0xB5688F3B */ +pS4 = 7.91534994289814532176e-04, /* 0x3F49EFE0, 0x7501B288 */ +pS5 = 3.47933107596021167570e-05, /* 0x3F023DE1, 0x0DFDF709 */ +qS1 = -2.40339491173441421878e+00, /* 0xC0033A27, 0x1C8A2D4B */ +qS2 = 2.02094576023350569471e+00, /* 0x40002AE5, 0x9C598AC8 */ +qS3 = -6.88283971605453293030e-01, /* 0xBFE6066C, 0x1B8D0159 */ +qS4 = 7.70381505559019352791e-02; /* 0x3FB3B8C5, 0xB12E9282 */ + +#ifdef __STDC__ + double __ieee754_acos(double x) +#else + double __ieee754_acos(x) + double x; +#endif +{ + double z,p,q,r,w,s,c,df; + int hx,ix; + hx = __HI(x); + ix = hx&0x7fffffff; + if(ix>=0x3ff00000) { /* |x| >= 1 */ + if(((ix-0x3ff00000)|__LO(x))==0) { /* |x|==1 */ + if(hx>0) return 0.0; /* acos(1) = 0 */ + else return pi+2.0*pio2_lo; /* acos(-1)= pi */ + } + return NAN; /* acos(|x|>1) is NaN */ + } + if(ix<0x3fe00000) { /* |x| < 0.5 */ + if(ix<=0x3c600000) return pio2_hi+pio2_lo;/*if|x|<2**-57*/ + z = x*x; + p = z*(pS0+z*(pS1+z*(pS2+z*(pS3+z*(pS4+z*pS5))))); + q = one+z*(qS1+z*(qS2+z*(qS3+z*qS4))); + r = p/q; + return pio2_hi - (x - (pio2_lo-x*r)); + } else if (hx<0) { /* x < -0.5 */ + z = (one+x)*0.5; + p = z*(pS0+z*(pS1+z*(pS2+z*(pS3+z*(pS4+z*pS5))))); + q = one+z*(qS1+z*(qS2+z*(qS3+z*qS4))); + s = sqrt(z); + r = p/q; + w = r*s-pio2_lo; + return pi - 2.0*(s+w); + } else { /* x > 0.5 */ + z = (one-x)*0.5; + s = sqrt(z); + df = s; + __LO(df) = 0; + c = (z-df*df)/(s+df); + p = z*(pS0+z*(pS1+z*(pS2+z*(pS3+z*(pS4+z*pS5))))); + q = one+z*(qS1+z*(qS2+z*(qS3+z*qS4))); + r = p/q; + w = r*s+c; + return 2.0*(df+w); + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/e_asin.c b/src/MSL_C.PPCEABI.bare.H/e_asin.c index bc5754f4..4abcf49d 100644 --- a/src/MSL_C.PPCEABI.bare.H/e_asin.c +++ b/src/MSL_C.PPCEABI.bare.H/e_asin.c @@ -1,3 +1,71 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" +#include "math.h" -double fabs__Fd(double v) { return __fabs(v); } +#ifdef __STDC__ +static const double +#else +static double +#endif +one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */ +huge = 1.000e+300, +pio2_hi = 1.57079632679489655800e+00, /* 0x3FF921FB, 0x54442D18 */ +pio2_lo = 6.12323399573676603587e-17, /* 0x3C91A626, 0x33145C07 */ +pio4_hi = 7.85398163397448278999e-01, /* 0x3FE921FB, 0x54442D18 */ + /* coefficient for R(x^2) */ +pS0 = 1.66666666666666657415e-01, /* 0x3FC55555, 0x55555555 */ +pS1 = -3.25565818622400915405e-01, /* 0xBFD4D612, 0x03EB6F7D */ +pS2 = 2.01212532134862925881e-01, /* 0x3FC9C155, 0x0E884455 */ +pS3 = -4.00555345006794114027e-02, /* 0xBFA48228, 0xB5688F3B */ +pS4 = 7.91534994289814532176e-04, /* 0x3F49EFE0, 0x7501B288 */ +pS5 = 3.47933107596021167570e-05, /* 0x3F023DE1, 0x0DFDF709 */ +qS1 = -2.40339491173441421878e+00, /* 0xC0033A27, 0x1C8A2D4B */ +qS2 = 2.02094576023350569471e+00, /* 0x40002AE5, 0x9C598AC8 */ +qS3 = -6.88283971605453293030e-01, /* 0xBFE6066C, 0x1B8D0159 */ +qS4 = 7.70381505559019352791e-02; /* 0x3FB3B8C5, 0xB12E9282 */ + +#ifdef __STDC__ + double __ieee754_asin(double x) +#else + double __ieee754_asin(x) + double x; +#endif +{ + double t,w,p,q,c,r,s; + int hx,ix; + hx = __HI(x); + ix = hx&0x7fffffff; + if(ix>= 0x3ff00000) { /* |x|>= 1 */ + if(((ix-0x3ff00000)|__LO(x))==0) + /* asin(1)=+-pi/2 with inexact */ + return x*pio2_hi+x*pio2_lo; + return NAN; /* asin(|x|>1) is NaN */ + } else if (ix<0x3fe00000) { /* |x|<0.5 */ + if(ix<0x3e400000) { /* if |x| < 2**-27 */ + if(huge+x>one) return x;/* return x with inexact if x!=0*/ + } else + t = x*x; + p = t*(pS0+t*(pS1+t*(pS2+t*(pS3+t*(pS4+t*pS5))))); + q = one+t*(qS1+t*(qS2+t*(qS3+t*qS4))); + w = p/q; + return x+x*w; + } + /* 1> |x|>= 0.5 */ + w = one-fabs(x); + t = w*0.5; + p = t*(pS0+t*(pS1+t*(pS2+t*(pS3+t*(pS4+t*pS5))))); + q = one+t*(qS1+t*(qS2+t*(qS3+t*qS4))); + s = sqrt(t); + if(ix>=0x3FEF3333) { /* if |x| > 0.975 */ + w = p/q; + t = pio2_hi-(2.0*(s+s*w)-pio2_lo); + } else { + w = s; + __LO(w) = 0; + c = (t-w*w)/(s+w); + r = p/q; + p = 2.0*s*r-(pio2_lo-2.0*c); + q = pio4_hi-2.0*w; + t = pio4_hi-(p-q); + } + if(hx>0) return t; else return -t; +} diff --git a/src/MSL_C.PPCEABI.bare.H/e_fmod.c b/src/MSL_C.PPCEABI.bare.H/e_fmod.c new file mode 100644 index 00000000..311d2f08 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/e_fmod.c @@ -0,0 +1,140 @@ + +/* @(#)e_fmod.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * __ieee754_fmod(x,y) + * Return x mod y in exact arithmetic + * Method: shift and subtract + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double one = 1.0, Zero[] = {0.0, -0.0,}; +#else +static double one = 1.0, Zero[] = {0.0, -0.0,}; +#endif + +#ifdef __STDC__ + double __ieee754_fmod(double x, double y) +#else + double __ieee754_fmod(x,y) + double x,y ; +#endif +{ + int n,hx,hy,hz,ix,iy,sx,i; + unsigned lx,ly,lz; + + hx = __HI(x); /* high word of x */ + lx = __LO(x); /* low word of x */ + hy = __HI(y); /* high word of y */ + ly = __LO(y); /* low word of y */ + sx = hx&0x80000000; /* sign of x */ + hx ^=sx; /* |x| */ + hy &= 0x7fffffff; /* |y| */ + + /* purge off exception values */ + if((hy|ly)==0||(hx>=0x7ff00000)|| /* y=0,or x not finite */ + ((hy|((ly|-ly)>>31))>0x7ff00000)) /* or y is NaN */ + return (x*y)/(x*y); + if(hx<=hy) { + if((hx>31]; /* |x|=|y| return x*0*/ + } + + /* determine ix = ilogb(x) */ + if(hx<0x00100000) { /* subnormal x */ + if(hx==0) { + for (ix = -1043, i=lx; i>0; i<<=1) ix -=1; + } else { + for (ix = -1022,i=(hx<<11); i>0; i<<=1) ix -=1; + } + } else ix = (hx>>20)-1023; + + /* determine iy = ilogb(y) */ + if(hy<0x00100000) { /* subnormal y */ + if(hy==0) { + for (iy = -1043, i=ly; i>0; i<<=1) iy -=1; + } else { + for (iy = -1022,i=(hy<<11); i>0; i<<=1) iy -=1; + } + } else iy = (hy>>20)-1023; + + /* set up {hx,lx}, {hy,ly} and align y to x */ + if(ix >= -1022) + hx = 0x00100000|(0x000fffff&hx); + else { /* subnormal x, shift x to normal */ + n = -1022-ix; + if(n<=31) { + hx = (hx<>(32-n)); + lx <<= n; + } else { + hx = lx<<(n-32); + lx = 0; + } + } + if(iy >= -1022) + hy = 0x00100000|(0x000fffff&hy); + else { /* subnormal y, shift y to normal */ + n = -1022-iy; + if(n<=31) { + hy = (hy<>(32-n)); + ly <<= n; + } else { + hy = ly<<(n-32); + ly = 0; + } + } + + /* fix point fmod */ + n = ix - iy; + while(n--) { + hz=hx-hy;lz=lx-ly; if(lx>31); lx = lx+lx;} + else { + if((hz|lz)==0) /* return sign(x)*0 */ + return Zero[(unsigned)sx>>31]; + hx = hz+hz+(lz>>31); lx = lz+lz; + } + } + hz=hx-hy;lz=lx-ly; if(lx=0) {hx=hz;lx=lz;} + + /* convert back to floating value and restore the sign */ + if((hx|lx)==0) /* return sign(x)*0 */ + return Zero[(unsigned)sx>>31]; + while(hx<0x00100000) { /* normalize x */ + hx = hx+hx+(lx>>31); lx = lx+lx; + iy -= 1; + } + if(iy>= -1022) { /* normalize output */ + hx = ((hx-0x00100000)|((iy+1023)<<20)); + __HI(x) = hx|sx; + __LO(x) = lx; + } else { /* subnormal output */ + n = -1022 - iy; + if(n<=20) { + lx = (lx>>n)|((unsigned)hx<<(32-n)); + hx >>= n; + } else if (n<=31) { + lx = (hx<<(32-n))|(lx>>n); hx = sx; + } else { + lx = hx>>(n-32); hx = sx; + } + __HI(x) = hx|sx; + __LO(x) = lx; + x *= one; /* create necessary signal */ + } + return x; /* exact output */ +} diff --git a/src/MSL_C.PPCEABI.bare.H/e_pow.c b/src/MSL_C.PPCEABI.bare.H/e_pow.c new file mode 100644 index 00000000..47b8f4e8 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/e_pow.c @@ -0,0 +1,308 @@ +/* @(#)e_pow.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* __ieee754_pow(x,y) return x**y + * + * n + * Method: Let x = 2 * (1+f) + * 1. Compute and return log2(x) in two pieces: + * log2(x) = w1 + w2, + * where w1 has 53-24 = 29 bit trailing zeros. + * 2. Perform y*log2(x) = n+y' by simulating muti-precision + * arithmetic, where |y'|<=0.5. + * 3. Return x**y = 2**n*exp(y'*log2) + * + * Special cases: + * 1. (anything) ** 0 is 1 + * 2. (anything) ** 1 is itself + * 3. (anything) ** NAN is NAN + * 4. NAN ** (anything except 0) is NAN + * 5. +-(|x| > 1) ** +INF is +INF + * 6. +-(|x| > 1) ** -INF is +0 + * 7. +-(|x| < 1) ** +INF is +0 + * 8. +-(|x| < 1) ** -INF is +INF + * 9. +-1 ** +-INF is NAN + * 10. +0 ** (+anything except 0, NAN) is +0 + * 11. -0 ** (+anything except 0, NAN, odd integer) is +0 + * 12. +0 ** (-anything except 0, NAN) is +INF + * 13. -0 ** (-anything except 0, NAN, odd integer) is +INF + * 14. -0 ** (odd integer) = -( +0 ** (odd integer) ) + * 15. +INF ** (+anything except 0,NAN) is +INF + * 16. +INF ** (-anything except 0,NAN) is +0 + * 17. -INF ** (anything) = -0 ** (-anything) + * 18. (-anything) ** (integer) is (-1)**(integer)*(+anything**integer) + * 19. (-anything except 0 and inf) ** (non-integer) is NAN + * + * Accuracy: + * pow(x,y) returns x**y nearly rounded. In particular + * pow(integer,integer) + * always returns the correct integer provided it is + * representable. + * + * Constants : + * The hexadecimal values are the intended ones for the following + * constants. The decimal values may be used, provided that the + * compiler will convert from decimal to binary accurately enough + * to produce the hexadecimal values shown. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h" +#include "math.h" + +#ifdef __STDC__ +static const double +#else +static double +#endif +bp[] = {1.0, 1.5,}, +dp_h[] = { 0.0, 5.84962487220764160156e-01,}, /* 0x3FE2B803, 0x40000000 */ +dp_l[] = { 0.0, 1.35003920212974897128e-08,}, /* 0x3E4CFDEB, 0x43CFD006 */ +zero = 0.0, +one = 1.0, +two = 2.0, +two53 = 9007199254740992.0, /* 0x43400000, 0x00000000 */ +huge = 1.0e300, +tiny = 1.0e-300, + /* poly coefs for (3/2)*(log(x)-2s-2/3*s**3 */ +L1 = 5.99999999999994648725e-01, /* 0x3FE33333, 0x33333303 */ +L2 = 4.28571428578550184252e-01, /* 0x3FDB6DB6, 0xDB6FABFF */ +L3 = 3.33333329818377432918e-01, /* 0x3FD55555, 0x518F264D */ +L4 = 2.72728123808534006489e-01, /* 0x3FD17460, 0xA91D4101 */ +L5 = 2.30660745775561754067e-01, /* 0x3FCD864A, 0x93C9DB65 */ +L6 = 2.06975017800338417784e-01, /* 0x3FCA7E28, 0x4A454EEF */ +P1 = 1.66666666666666019037e-01, /* 0x3FC55555, 0x5555553E */ +P2 = -2.77777777770155933842e-03, /* 0xBF66C16C, 0x16BEBD93 */ +P3 = 6.61375632143793436117e-05, /* 0x3F11566A, 0xAF25DE2C */ +P4 = -1.65339022054652515390e-06, /* 0xBEBBBD41, 0xC5D26BF1 */ +P5 = 4.13813679705723846039e-08, /* 0x3E663769, 0x72BEA4D0 */ +lg2 = 6.93147180559945286227e-01, /* 0x3FE62E42, 0xFEFA39EF */ +lg2_h = 6.93147182464599609375e-01, /* 0x3FE62E43, 0x00000000 */ +lg2_l = -1.90465429995776804525e-09, /* 0xBE205C61, 0x0CA86C39 */ +ovt = 8.0085662595372944372e-0017, /* -(1024-log2(ovfl+.5ulp)) */ +cp = 9.61796693925975554329e-01, /* 0x3FEEC709, 0xDC3A03FD =2/(3ln2) */ +cp_h = 9.61796700954437255859e-01, /* 0x3FEEC709, 0xE0000000 =(float)cp */ +cp_l = -7.02846165095275826516e-09, /* 0xBE3E2FE0, 0x145B01F5 =tail of cp_h*/ +ivln2 = 1.44269504088896338700e+00, /* 0x3FF71547, 0x652B82FE =1/ln2 */ +ivln2_h = 1.44269502162933349609e+00, /* 0x3FF71547, 0x60000000 =24b 1/ln2*/ +ivln2_l = 1.92596299112661746887e-08; /* 0x3E54AE0B, 0xF85DDF44 =1/ln2 tail*/ + +#ifdef __STDC__ + double __ieee754_pow(double x, double y) +#else + double __ieee754_pow(x,y) + double x, y; +#endif +{ + double z,ax,z_h,z_l,p_h,p_l; + double y1,t1,t2,r,s,t,u,v,w; + int i,j,k,yisint,n; + int hx,hy,ix,iy; + unsigned lx,ly; + + hx = __HI(x); lx = __LO(x); + hy = __HI(y); ly = __LO(y); + ix = hx&0x7fffffff; iy = hy&0x7fffffff; + + /* y==zero: x**0 = 1 */ + if((iy|ly)==0) return one; + + /* +-NaN return x+y */ + if(ix > 0x7ff00000 || ((ix==0x7ff00000)&&(lx!=0)) || + iy > 0x7ff00000 || ((iy==0x7ff00000)&&(ly!=0))) + return x+y; + + /* determine if y is an odd int when x < 0 + * yisint = 0 ... y is not an integer + * yisint = 1 ... y is an odd int + * yisint = 2 ... y is an even int + */ + yisint = 0; + if(hx<0) { + if(iy>=0x43400000) yisint = 2; /* even integer y */ + else if(iy>=0x3ff00000) { + k = (iy>>20)-0x3ff; /* exponent */ + if(k>20) { + j = ly>>(52-k); + if((j<<(52-k))==ly) yisint = 2-(j&1); + } else if(ly==0) { + j = iy>>(20-k); + if((j<<(20-k))==iy) yisint = 2-(j&1); + } + } + } + + /* special value of y */ + if(ly==0) { + if (iy==0x7ff00000) { /* y is +-inf */ + if(((ix-0x3ff00000)|lx)==0) + return y - y; /* inf**+-1 is NaN */ + else if (ix >= 0x3ff00000)/* (|x|>1)**+-inf = inf,0 */ + return (hy>=0)? y: zero; + else /* (|x|<1)**-,+inf = inf,0 */ + return (hy<0)?-y: zero; + } + if(iy==0x3ff00000) { /* y is +-1 */ + if(hy<0) return one/x; else return x; + } + if(hy==0x40000000) return x*x; /* y is 2 */ + if(hy==0x3fe00000) { /* y is 0.5 */ + if(hx>=0) /* x >= +0 */ + return sqrt(x); + } + } + + ax = fabs(x); + /* special value of x */ + if(lx==0) { + if(ix==0x7ff00000||ix==0||ix==0x3ff00000){ + z = ax; /*x is +-0,+-inf,+-1*/ + if(hy<0) z = one/z; /* z = (1/|x|) */ + if(hx<0) { + if(((ix-0x3ff00000)|yisint)==0) { + z = (z-z)/(z-z); /* (-1)**non-int is NaN */ + } else if(yisint==1) + z = -z; /* (x<0)**odd = -(|x|**odd) */ + } + return z; + } + } + + /* (x<0)**(non-int) is NaN */ + if((((hx>>31)+1)|yisint)==0) { + errno = 0x21; + return NAN; + } + + /* |y| is huge */ + if(iy>0x41e00000) { /* if |y| > 2**31 */ + if(iy>0x43f00000){ /* if |y| > 2**64, must o/uflow */ + if(ix<=0x3fefffff) return (hy<0)? huge*huge:tiny*tiny; + if(ix>=0x3ff00000) return (hy>0)? huge*huge:tiny*tiny; + } + /* over/underflow if x is not close to one */ + if(ix<0x3fefffff) return (hy<0)? huge*huge:tiny*tiny; + if(ix>0x3ff00000) return (hy>0)? huge*huge:tiny*tiny; + /* now |1-x| is tiny <= 2**-20, suffice to compute + log(x) by x-x^2/2+x^3/3-x^4/4 */ + t = x-1; /* t has 20 trailing zeros */ + w = (t*t)*(0.5-t*(0.3333333333333333333333-t*0.25)); + u = ivln2_h*t; /* ivln2_h has 21 sig. bits */ + v = t*ivln2_l-w*ivln2; + t1 = u+v; + __LO(t1) = 0; + t2 = v-(t1-u); + } else { + double s2,s_h,s_l,t_h,t_l; + n = 0; + /* take care subnormal number */ + if(ix<0x00100000) + {ax *= two53; n -= 53; ix = __HI(ax); } + n += ((ix)>>20)-0x3ff; + j = ix&0x000fffff; + /* determine interval */ + ix = j|0x3ff00000; /* normalize ix */ + if(j<=0x3988E) k=0; /* |x|>1)|0x20000000)+0x00080000+(k<<18); + t_l = ax - (t_h-bp[k]); + s_l = v*((u-s_h*t_h)-s_h*t_l); + /* compute log(ax) */ + s2 = s*s; + r = s2*s2*(L1+s2*(L2+s2*(L3+s2*(L4+s2*(L5+s2*L6))))); + r += s_l*(s_h+s); + s2 = s_h*s_h; + t_h = 3.0+s2+r; + __LO(t_h) = 0; + t_l = r-((t_h-3.0)-s2); + /* u+v = s*(1+...) */ + u = s_h*t_h; + v = s_l*t_h+t_l*s; + /* 2/(3log2)*(s+...) */ + p_h = u+v; + __LO(p_h) = 0; + p_l = v-(p_h-u); + z_h = cp_h*p_h; /* cp_h+cp_l = 2/(3*log2) */ + z_l = cp_l*p_h+p_l*cp+dp_l[k]; + /* log2(ax) = (s+..)*2/(3*log2) = n + dp_h + z_h + z_l */ + t = (double)n; + t1 = (((z_h+z_l)+dp_h[k])+t); + __LO(t1) = 0; + t2 = z_l-(((t1-t)-dp_h[k])-z_h); + } + + s = one; /* s (sign of result -ve**odd) = -1 else = 1 */ + if((((hx>>31)+1)|(yisint-1))==0) s = -one;/* (-ve)**(odd int) */ + + /* split up y into y1+y2 and compute (y1+y2)*(t1+t2) */ + y1 = y; + __LO(y1) = 0; + p_l = (y-y1)*t1+y*t2; + p_h = y1*t1; + z = p_l+p_h; + j = __HI(z); + i = __LO(z); + if (j>=0x40900000) { /* z >= 1024 */ + if(((j-0x40900000)|i)!=0) /* if z > 1024 */ + return s*huge*huge; /* overflow */ + else { + if(p_l+ovt>z-p_h) return s*huge*huge; /* overflow */ + } + } else if((j&0x7fffffff)>=0x4090cc00 ) { /* z <= -1075 */ + if(((j-0xc090cc00)|i)!=0) /* z < -1075 */ + return s*tiny*tiny; /* underflow */ + else { + if(p_l<=z-p_h) return s*tiny*tiny; /* underflow */ + } + } + /* + * compute 2**(p_h+p_l) + */ + i = j&0x7fffffff; + k = (i>>20)-0x3ff; + n = 0; + if(i>0x3fe00000) { /* if |z| > 0.5, set n = [z+0.5] */ + n = j+(0x00100000>>(k+1)); + k = ((n&0x7fffffff)>>20)-0x3ff; /* new k for n */ + t = zero; + __HI(t) = (n&~(0x000fffff>>k)); + n = ((n&0x000fffff)|0x00100000)>>(20-k); + if(j<0) n = -n; + p_h -= t; + } + t = p_l+p_h; + __LO(t) = 0; + u = t*lg2_h; + v = (p_l-(t-p_h))*lg2+t*lg2_l; + z = u+v; + w = v-(z-u); + t = z*z; + t1 = z - t*(P1+t*(P2+t*(P3+t*(P4+t*P5)))); + r = (z*t1)/(t1-two)-(w+z*w); + z = one-(r-z); + j = __HI(z); + j += (n<<20); + if((j>>20)<=0) z = scalbn(z,n); /* subnormal output */ + else __HI(z) += (n<<20); + return s*z; +} diff --git a/src/MSL_C.PPCEABI.bare.H/math_ppc.c b/src/MSL_C.PPCEABI.bare.H/math_ppc.c new file mode 100644 index 00000000..100dbfa0 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/math_ppc.c @@ -0,0 +1,25 @@ +extern double tan(double); +extern double sin(double); +extern double cos(double); +extern double atan2(double); +extern double acos(double); + +float acosf(float arg0) { + return (float) acos(arg0); +} + +float atan2f(float arg0) { + return (float) atan2(arg0); +} + +float cosf(float arg0) { + return (float) cos(arg0); +} + +float sinf(float arg0) { + return (float) sin(arg0); +} + +float tanf(float arg0) { + return (float) tan(arg0); +} From d6da17b6041e23030edc83aaa36dfe9c87f7f540 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Fri, 24 Jan 2025 10:48:59 -0500 Subject: [PATCH 138/178] Big MSL_C update (#546) * match acos, asin, fmod, and math_ppc * match many files in MSL_C math_ppc, s_copysign, s_cos, s_modf, s_sin, s_tan, w_acos, w_asin, w_fmod, w_pow --- .vscode/settings.json | 4 +- configure.py | 18 ++--- .../Msl/MSL_C/MSL_Common/math_ppc.h | 5 ++ src/MSL_C.PPCEABI.bare.H/math_ppc.c | 7 +- src/MSL_C.PPCEABI.bare.H/s_copysign.c | 30 +++++++ src/MSL_C.PPCEABI.bare.H/s_cos.c | 78 ++++++++++++++++++ src/MSL_C.PPCEABI.bare.H/s_ldexp.c | 27 +++++++ src/MSL_C.PPCEABI.bare.H/s_modf.c | 80 +++++++++++++++++++ src/MSL_C.PPCEABI.bare.H/s_sin.c | 78 ++++++++++++++++++ src/MSL_C.PPCEABI.bare.H/s_tan.c | 72 +++++++++++++++++ src/MSL_C.PPCEABI.bare.H/w_acos.c | 38 +++++++++ src/MSL_C.PPCEABI.bare.H/w_asin.c | 38 +++++++++ src/MSL_C.PPCEABI.bare.H/w_fmod.c | 37 +++++++++ src/MSL_C.PPCEABI.bare.H/w_pow.c | 60 ++++++++++++++ 14 files changed, 556 insertions(+), 16 deletions(-) create mode 100644 include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math_ppc.h create mode 100644 src/MSL_C.PPCEABI.bare.H/s_copysign.c create mode 100644 src/MSL_C.PPCEABI.bare.H/s_cos.c create mode 100644 src/MSL_C.PPCEABI.bare.H/s_ldexp.c create mode 100644 src/MSL_C.PPCEABI.bare.H/s_modf.c create mode 100644 src/MSL_C.PPCEABI.bare.H/s_sin.c create mode 100644 src/MSL_C.PPCEABI.bare.H/s_tan.c create mode 100644 src/MSL_C.PPCEABI.bare.H/w_acos.c create mode 100644 src/MSL_C.PPCEABI.bare.H/w_asin.c create mode 100644 src/MSL_C.PPCEABI.bare.H/w_fmod.c create mode 100644 src/MSL_C.PPCEABI.bare.H/w_pow.c diff --git a/.vscode/settings.json b/.vscode/settings.json index f41b8dff..3322a6d7 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -58,7 +58,9 @@ "__mem.h": "c", "fdlibm.h": "c", "float.h": "c", - "corecrt_math_defines.h": "c" + "corecrt_math_defines.h": "c", + "math_ppc.h": "c", + "errno.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/configure.py b/configure.py index ce80b976..62f50acb 100644 --- a/configure.py +++ b/configure.py @@ -712,19 +712,19 @@ config.libs = [ Object(NonMatching, "MSL_C.PPCEABI.bare.H/k_sin.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/k_tan.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_atan.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_copysign.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_cos.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_copysign.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_cos.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_floor.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_frexp.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_ldexp.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_modf.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_sin.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_tan.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_acos.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_asin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_modf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_sin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_tan.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/w_acos.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/w_asin.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/w_atan2.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_fmod.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/w_pow.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/w_fmod.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/w_pow.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/math_ppc.c"), ], }, diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math_ppc.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math_ppc.h new file mode 100644 index 00000000..325c4527 --- /dev/null +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math_ppc.h @@ -0,0 +1,5 @@ +double acos(double x); +double tan(double); +double sin(double); +double cos(double); +double atan2(double); diff --git a/src/MSL_C.PPCEABI.bare.H/math_ppc.c b/src/MSL_C.PPCEABI.bare.H/math_ppc.c index 100dbfa0..ab157318 100644 --- a/src/MSL_C.PPCEABI.bare.H/math_ppc.c +++ b/src/MSL_C.PPCEABI.bare.H/math_ppc.c @@ -1,9 +1,4 @@ -extern double tan(double); -extern double sin(double); -extern double cos(double); -extern double atan2(double); -extern double acos(double); - +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math_ppc.h" float acosf(float arg0) { return (float) acos(arg0); } diff --git a/src/MSL_C.PPCEABI.bare.H/s_copysign.c b/src/MSL_C.PPCEABI.bare.H/s_copysign.c new file mode 100644 index 00000000..d3313078 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_copysign.c @@ -0,0 +1,30 @@ +/* @(#)s_copysign.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * copysign(double x, double y) + * copysign(x,y) returns a value with the magnitude of x and + * with the sign bit of y. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ + double copysign(double x, double y) +#else + double copysign(x,y) + double x,y; +#endif +{ + __HI(x) = (__HI(x)&0x7fffffff)|(__HI(y)&0x80000000); + return x; +} diff --git a/src/MSL_C.PPCEABI.bare.H/s_cos.c b/src/MSL_C.PPCEABI.bare.H/s_cos.c new file mode 100644 index 00000000..0ceb1875 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_cos.c @@ -0,0 +1,78 @@ + +/* @(#)s_cos.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* cos(x) + * Return cosine function of x. + * + * kernel function: + * __kernel_sin ... sine function on [-pi/4,pi/4] + * __kernel_cos ... cosine function on [-pi/4,pi/4] + * __ieee754_rem_pio2 ... argument reduction routine + * + * Method. + * Let S,C and T denote the sin, cos and tan respectively on + * [-PI/4, +PI/4]. Reduce the argument x to y1+y2 = x-k*pi/2 + * in [-pi/4 , +pi/4], and let n = k mod 4. + * We have + * + * n sin(x) cos(x) tan(x) + * ---------------------------------------------------------- + * 0 S C T + * 1 C -S -1/T + * 2 -S -C T + * 3 -C S -1/T + * ---------------------------------------------------------- + * + * Special cases: + * Let trig be any of sin, cos, or tan. + * trig(+-INF) is NaN, with signals; + * trig(NaN) is that NaN; + * + * Accuracy: + * TRIG(x) returns trig(x) nearly rounded + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ + double cos(double x) +#else + double cos(x) + double x; +#endif +{ + double y[2],z=0.0; + int n, ix; + + /* High word of x. */ + ix = __HI(x); + + /* |x| ~< pi/4 */ + ix &= 0x7fffffff; + if(ix <= 0x3fe921fb) return __kernel_cos(x,z); + + /* cos(Inf or NaN) is NaN */ + else if (ix>=0x7ff00000) return x-x; + + /* argument reduction needed */ + else { + n = __ieee754_rem_pio2(x,y); + switch(n&3) { + case 0: return __kernel_cos(y[0],y[1]); + case 1: return -__kernel_sin(y[0],y[1],1); + case 2: return -__kernel_cos(y[0],y[1]); + default: + return __kernel_sin(y[0],y[1],1); + } + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/s_ldexp.c b/src/MSL_C.PPCEABI.bare.H/s_ldexp.c new file mode 100644 index 00000000..c43f64fb --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_ldexp.c @@ -0,0 +1,27 @@ +/* @(#)s_ldexp.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h" + +#ifdef __STDC__ + double ldexp(double value, int exp) +#else + double ldexp(value, exp) + double value; int exp; +#endif +{ + if(!finite(value)||value==0.0) return value; + value = scalbn(value,exp); + if(!finite(value)||value==0.0) errno = ERANGE; + return value; +} diff --git a/src/MSL_C.PPCEABI.bare.H/s_modf.c b/src/MSL_C.PPCEABI.bare.H/s_modf.c new file mode 100644 index 00000000..8c957d21 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_modf.c @@ -0,0 +1,80 @@ + +/* @(#)s_modf.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * modf(double x, double *iptr) + * return fraction part of x, and return x's integral part in *iptr. + * Method: + * Bit twiddling. + * + * Exception: + * No exception. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double one = 1.0; +#else +static double one = 1.0; +#endif + +#ifdef __STDC__ + double modf(double x, double *iptr) +#else + double modf(x, iptr) + double x,*iptr; +#endif +{ + int i0,i1,j0; + unsigned i; + i0 = __HI(x); /* high x */ + i1 = __LO(x); /* low x */ + j0 = ((i0>>20)&0x7ff)-0x3ff; /* exponent of x */ + if(j0<20) { /* integer part in high x */ + if(j0<0) { /* |x|<1 */ + __HIp(iptr) = i0&0x80000000; + __LOp(iptr) = 0; /* *iptr = +-0 */ + return x; + } else { + i = (0x000fffff)>>j0; + if(((i0&i)|i1)==0) { /* x is integral */ + *iptr = x; + __HI(x) &= 0x80000000; + __LO(x) = 0; /* return +-0 */ + return x; + } else { + __HIp(iptr) = i0&(~i); + __LOp(iptr) = 0; + return x - *iptr; + } + } + } else if (j0>51) { /* no fraction part */ + *iptr = x*one; + __HI(x) &= 0x80000000; + __LO(x) = 0; /* return +-0 */ + return x; + } else { /* fraction part in low x */ + i = ((unsigned)(0xffffffff))>>(j0-20); + if((i1&i)==0) { /* x is integral */ + *iptr = x; + __HI(x) &= 0x80000000; + __LO(x) = 0; /* return +-0 */ + return x; + } else { + __HIp(iptr) = i0; + __LOp(iptr) = i1&(~i); + return x - *iptr; + } + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/s_sin.c b/src/MSL_C.PPCEABI.bare.H/s_sin.c new file mode 100644 index 00000000..5f09b616 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_sin.c @@ -0,0 +1,78 @@ + +/* @(#)s_sin.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* sin(x) + * Return sine function of x. + * + * kernel function: + * __kernel_sin ... sine function on [-pi/4,pi/4] + * __kernel_cos ... cose function on [-pi/4,pi/4] + * __ieee754_rem_pio2 ... argument reduction routine + * + * Method. + * Let S,C and T denote the sin, cos and tan respectively on + * [-PI/4, +PI/4]. Reduce the argument x to y1+y2 = x-k*pi/2 + * in [-pi/4 , +pi/4], and let n = k mod 4. + * We have + * + * n sin(x) cos(x) tan(x) + * ---------------------------------------------------------- + * 0 S C T + * 1 C -S -1/T + * 2 -S -C T + * 3 -C S -1/T + * ---------------------------------------------------------- + * + * Special cases: + * Let trig be any of sin, cos, or tan. + * trig(+-INF) is NaN, with signals; + * trig(NaN) is that NaN; + * + * Accuracy: + * TRIG(x) returns trig(x) nearly rounded + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ + double sin(double x) +#else + double sin(x) + double x; +#endif +{ + double y[2],z=0.0; + int n, ix; + + /* High word of x. */ + ix = __HI(x); + + /* |x| ~< pi/4 */ + ix &= 0x7fffffff; + if(ix <= 0x3fe921fb) return __kernel_sin(x,z,0); + + /* sin(Inf or NaN) is NaN */ + else if (ix>=0x7ff00000) return x-x; + + /* argument reduction needed */ + else { + n = __ieee754_rem_pio2(x,y); + switch(n&3) { + case 0: return __kernel_sin(y[0],y[1],1); + case 1: return __kernel_cos(y[0],y[1]); + case 2: return -__kernel_sin(y[0],y[1],1); + default: + return -__kernel_cos(y[0],y[1]); + } + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/s_tan.c b/src/MSL_C.PPCEABI.bare.H/s_tan.c new file mode 100644 index 00000000..8a0b9292 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_tan.c @@ -0,0 +1,72 @@ + +/* @(#)s_tan.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* tan(x) + * Return tangent function of x. + * + * kernel function: + * __kernel_tan ... tangent function on [-pi/4,pi/4] + * __ieee754_rem_pio2 ... argument reduction routine + * + * Method. + * Let S,C and T denote the sin, cos and tan respectively on + * [-PI/4, +PI/4]. Reduce the argument x to y1+y2 = x-k*pi/2 + * in [-pi/4 , +pi/4], and let n = k mod 4. + * We have + * + * n sin(x) cos(x) tan(x) + * ---------------------------------------------------------- + * 0 S C T + * 1 C -S -1/T + * 2 -S -C T + * 3 -C S -1/T + * ---------------------------------------------------------- + * + * Special cases: + * Let trig be any of sin, cos, or tan. + * trig(+-INF) is NaN, with signals; + * trig(NaN) is that NaN; + * + * Accuracy: + * TRIG(x) returns trig(x) nearly rounded + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ + double tan(double x) +#else + double tan(x) + double x; +#endif +{ + double y[2],z=0.0; + int n, ix; + + /* High word of x. */ + ix = __HI(x); + + /* |x| ~< pi/4 */ + ix &= 0x7fffffff; + if(ix <= 0x3fe921fb) return __kernel_tan(x,z,1); + + /* tan(Inf or NaN) is NaN */ + else if (ix>=0x7ff00000) return x-x; /* NaN */ + + /* argument reduction needed */ + else { + n = __ieee754_rem_pio2(x,y); + return __kernel_tan(y[0],y[1],1-((n&1)<<1)); /* 1 -- n even + -1 -- n odd */ + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/w_acos.c b/src/MSL_C.PPCEABI.bare.H/w_acos.c new file mode 100644 index 00000000..dfc4c031 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/w_acos.c @@ -0,0 +1,38 @@ + +/* @(#)w_acos.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * wrap_acos(x) + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ + double acos(double x) /* wrapper acos */ +#else + double acos(x) /* wrapper acos */ + double x; +#endif +{ +#ifdef _IEEE_LIBM + return __ieee754_acos(x); +#else + double z; + z = __ieee754_acos(x); + if(_LIB_VERSION == _IEEE_ || isnan(x)) return z; + if(fabs(x)>1.0) { + return __kernel_standard(x,x,1); /* acos(|x|>1) */ + } else + return z; +#endif +} diff --git a/src/MSL_C.PPCEABI.bare.H/w_asin.c b/src/MSL_C.PPCEABI.bare.H/w_asin.c new file mode 100644 index 00000000..d21c6ce6 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/w_asin.c @@ -0,0 +1,38 @@ +/* @(#)w_asin.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + * + */ + +/* + * wrapper asin(x) + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ + double asin(double x) /* wrapper asin */ +#else + double asin(x) /* wrapper asin */ + double x; +#endif +{ +#ifdef _IEEE_LIBM + return __ieee754_asin(x); +#else + double z; + z = __ieee754_asin(x); + if(_LIB_VERSION == _IEEE_ || isnan(x)) return z; + if(fabs(x)>1.0) { + return __kernel_standard(x,x,2); /* asin(|x|>1) */ + } else + return z; +#endif +} diff --git a/src/MSL_C.PPCEABI.bare.H/w_fmod.c b/src/MSL_C.PPCEABI.bare.H/w_fmod.c new file mode 100644 index 00000000..57c5cc16 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/w_fmod.c @@ -0,0 +1,37 @@ +/* @(#)w_fmod.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * wrapper fmod(x,y) + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ + double fmod(double x, double y) /* wrapper fmod */ +#else + double fmod(x,y) /* wrapper fmod */ + double x,y; +#endif +{ +#ifdef _IEEE_LIBM + return __ieee754_fmod(x,y); +#else + double z; + z = __ieee754_fmod(x,y); + if(_LIB_VERSION == _IEEE_ ||isnan(y)||isnan(x)) return z; + if(y==0.0) { + return __kernel_standard(x,y,27); /* fmod(x,0) */ + } else + return z; +#endif +} diff --git a/src/MSL_C.PPCEABI.bare.H/w_pow.c b/src/MSL_C.PPCEABI.bare.H/w_pow.c new file mode 100644 index 00000000..99c8e3b9 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/w_pow.c @@ -0,0 +1,60 @@ + + +/* @(#)w_pow.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * wrapper pow(x,y) return x**y + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + + +#ifdef __STDC__ + double pow(double x, double y) /* wrapper pow */ +#else + double pow(x,y) /* wrapper pow */ + double x,y; +#endif +{ +#ifdef _IEEE_LIBM + return __ieee754_pow(x,y); +#else + double z; + z=__ieee754_pow(x,y); + if(_LIB_VERSION == _IEEE_|| isnan(y)) return z; + if(isnan(x)) { + if(y==0.0) + return __kernel_standard(x,y,42); /* pow(NaN,0.0) */ + else + return z; + } + if(x==0.0){ + if(y==0.0) + return __kernel_standard(x,y,20); /* pow(0.0,0.0) */ + if(finite(y)&&y<0.0) + return __kernel_standard(x,y,23); /* pow(0.0,negative) */ + return z; + } + if(!finite(z)) { + if(finite(x)&&finite(y)) { + if(isnan(z)) + return __kernel_standard(x,y,24); /* pow neg**non-int */ + else + return __kernel_standard(x,y,21); /* pow overflow */ + } + } + if(z==0.0&&finite(x)&&finite(y)) + return __kernel_standard(x,y,22); /* pow underflow */ + return z; +#endif +} From 2ab9cd144e1e78419303952a574a56b8f27d42da Mon Sep 17 00:00:00 2001 From: CreateSource Date: Fri, 24 Jan 2025 15:58:42 -0500 Subject: [PATCH 139/178] match m427/main --- include/REL/m427Dll.h | 12 + src/REL/m427Dll/main.c | 958 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 970 insertions(+) create mode 100644 include/REL/m427Dll.h create mode 100644 src/REL/m427Dll/main.c diff --git a/include/REL/m427Dll.h b/include/REL/m427Dll.h new file mode 100644 index 00000000..fe879974 --- /dev/null +++ b/include/REL/m427Dll.h @@ -0,0 +1,12 @@ +#include "dolphin.h" +#include "game/object.h" + +void fn_1_32F4(Process*); +void fn_1_3A88(void); +void fn_1_E98C(Process*); +void fn_1_EC54(void); +void fn_1_110E8(s32, s32*); +void fn_1_111C0(s32, s32*); +void fn_1_11298(f32); +s32 fn_1_113F0(s32); +f32 fn_1_168FC(f32, f32, f32); diff --git a/src/REL/m427Dll/main.c b/src/REL/m427Dll/main.c new file mode 100644 index 00000000..84bcb03b --- /dev/null +++ b/src/REL/m427Dll/main.c @@ -0,0 +1,958 @@ +#include "REL/m427Dll.h" + +#include "ext_math.h" +#include "game/audio.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfformat.h" +#include "game/hsfman.h" +#include "game/minigame_seq.h" +#include "game/objsub.h" +#include "game/wipe.h" + +typedef struct M427DllStruct { + s32 unk0; + s32 unk4; +} M427DllStruct; + +typedef struct M427DllStruct2 { + s32 unk0[3]; + s32 unkC; + s32 unk10; + s32 unk14[7]; + s32 unk30[7]; + HsfVector2f unk4C[7]; + f32 unk84; + f32 unk88; + s32 unk8C; + f32 unk90; + f32 unk94; + f32 unk98; + s32 unk9C; + s32 unkA0; +} M427DllStruct2; // sizeof 0xA4 + +typedef struct M427DllStruct3 { + Vec rot; + Vec cen; + f32 zoom; +} M427DllStruct3; + +Process* lbl_1_bss_8C; +omObjData* lbl_1_bss_88; +s32 lbl_1_bss_84; +s32 lbl_1_bss_80; +s32 lbl_1_bss_7C; +s32 lbl_1_bss_78; +s32 lbl_1_bss_74; +f32 lbl_1_bss_6C[2]; +s32 lbl_1_bss_68; +s32 lbl_1_bss_64; +s32 lbl_1_bss_60; +s32 lbl_1_bss_5C; +s32 lbl_1_bss_58; +s32 lbl_1_bss_54; +s32 lbl_1_bss_50; +s32 lbl_1_bss_4C; +omObjData* lbl_1_bss_48; +s32 lbl_1_bss_44; +M427DllStruct2* lbl_1_bss_40; +M427DllStruct lbl_1_bss_0[8]; + +void fn_1_29C(omObjData*); +void fn_1_300(omObjData*); +void fn_1_1664(omObjData*); +void fn_1_16C4(omObjData*); +void fn_1_1864(s32); +void fn_1_1954(void); +void fn_1_1F34(void); +void fn_1_2188(void); +void fn_1_21E8(s32, s32); +void fn_1_232C(s32); +void fn_1_2518(s32); +void fn_1_2704(void); +void fn_1_272C(void); +void fn_1_2790(void); +void fn_1_2B20(omObjData* object); +void fn_1_2B28(void); +void fn_1_2CE8(f32); +void fn_1_2EE0(void); +void fn_1_2F6C(f32); +void fn_1_3164(void); + +M427DllStruct3 lbl_1_data_0[4] = { + { + { -25.0f, 0.0f, 0.0f }, + { 0.0f, 275.0f, 0.0f }, + 1975.0f + }, + { + { 4.0f, 167.0f, 0.0f }, + { 57.0f, 475.0f, 198.0f }, + 3375.0f + }, + { + { -0.0f, -190.0f, 0.0f }, + { -90.0f, 50.0f, 800.0f }, + 1700.0f + }, + { + { 2.0f, 170.0f, 0.0f }, + { -400.0f, 175.0f, 127.0f }, + 2425.0f + } +}; + +void ObjectSetup(void) { + Process* var_r30; + s32 var_r31; + + OSReport("******* M426ObjectSetup *********\n"); + var_r30 = omInitObjMan(0x32, 0x2000); + lbl_1_bss_8C = var_r30; + omGameSysInit(var_r30); + fn_1_2790(); + Hu3DLightAllKill(); + Hu3DLighInit(); + HuAudSndGrpSet(0x34); + lbl_1_bss_88 = omAddObjEx(var_r30, 0xFF, 2, 0, -1, fn_1_29C); + lbl_1_bss_84 = 0; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + lbl_1_bss_78 = lbl_1_bss_74 = GWMGRecordGet(2); + if (lbl_1_bss_78 <= 0) { + lbl_1_bss_78 = lbl_1_bss_74 = 0xE10; + } + + lbl_1_bss_68 = lbl_1_bss_64 = 0; + + lbl_1_bss_60 = lbl_1_bss_5C = -1; + lbl_1_bss_58 = -1; + lbl_1_bss_54 = lbl_1_bss_50 = -1; + + for (var_r31 = 0; var_r31 < 2; var_r31++) { + lbl_1_bss_6C[var_r31] = 0.0f; + } + + for (var_r31 = 0; var_r31 < 8; var_r31++) { + lbl_1_bss_0[var_r31].unk0 = -1; + lbl_1_bss_0[var_r31].unk4 = 0; + } +} + +void fn_1_29C(omObjData* arg0) { + fn_1_32F4(lbl_1_bss_8C); + fn_1_E98C(lbl_1_bss_8C); + fn_1_1954(); + fn_1_21E8(0, 1); + arg0->func = fn_1_300; +} + +void fn_1_300(omObjData* arg0) { + s32 sp10[2]; + s32 sp8[2]; + f32 var_f31; + f32 var_f30; + s32 var_r31; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r26; + + switch (lbl_1_bss_84) { + case 0: + lbl_1_bss_80++; + if (lbl_1_bss_80 == 3) { + WipeCreate(1, 0, 0x3C); + lbl_1_bss_4C = 0; + fn_1_21E8(1, 1); + fn_1_2B28(); + } else if ((lbl_1_bss_80 > 3) && (WipeStatGet() == 0)) { + lbl_1_bss_54 = HuAudFXPlay(0x657); + lbl_1_bss_50 = HuAudFXPlay(0x651); + lbl_1_bss_84 = 1; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 1: + lbl_1_bss_80++; + var_f31 = lbl_1_bss_80 / 300.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + fn_1_11298(sind(90.0f * var_f31)); + if (++lbl_1_bss_7C >= 60.0f) { + lbl_1_bss_84 = 2; + lbl_1_bss_7C = 0; + } + break; + case 2: + lbl_1_bss_80++; + var_f31 = lbl_1_bss_80 / 300.0f; + if (var_f31 > 1.0f) { + var_f31 = 1.0f; + } + fn_1_11298(sind(90.0f * var_f31)); + var_f30 = sind(90.0f * (lbl_1_bss_7C / 240.0f)); + fn_1_2CE8(var_f30 * var_f30); + if (++lbl_1_bss_7C >= 240.0f) { + lbl_1_bss_60 = MGSeqCreate(3, 0); + fn_1_2EE0(); + lbl_1_bss_84 = 3; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 3: + if (lbl_1_bss_60 != -1) { + var_r28 = MGSeqStatGet(lbl_1_bss_60); + if (((var_r28 & 0x10) != 0) && (lbl_1_bss_58 == -1)) { + lbl_1_bss_58 = HuAudSeqPlay(0x49); + } + } else { + var_r28 = 0; + } + if ((lbl_1_bss_60 == -1) || (var_r28 == 0)) { + lbl_1_bss_84 = 4; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 4: + lbl_1_bss_80++; + var_r30 = lbl_1_bss_80; + if (var_r30 > 0x4650) { + var_r30 = 0x4650; + } + + fn_1_2518(var_r30); + for (var_r31 = 0; var_r31 < 8; var_r31++) { + if (lbl_1_bss_0[var_r31].unk0 != -1) { + if (--lbl_1_bss_0[var_r31].unk4 <= 0) { + lbl_1_bss_0[var_r31].unk0 = -1; + lbl_1_bss_0[var_r31].unk4 = 0; + } + } + } + if (lbl_1_bss_80 == 0x3F48) { + lbl_1_bss_5C = MGSeqCreate(1, 0x708, -1, -1); + } + if (lbl_1_bss_5C != -1) { + var_r26 = (0x4650 - lbl_1_bss_80); + var_r30 = (var_r26 + 0x3A) / 60; + if (var_r30 < 0) { + var_r30 = 0; + } + MGSeqParamSet(lbl_1_bss_5C, 1, var_r30); + } + if (lbl_1_bss_68 != 0) { + if (lbl_1_bss_68 != 1 && lbl_1_bss_68 != 2) { + if (((s32)frand() & 1) != 0) { + lbl_1_bss_68 = 1; + } else { + lbl_1_bss_68 = 2; + } + } + if (lbl_1_bss_5C != -1) { + MGSeqParamSet(lbl_1_bss_5C, 2, -1); + } + lbl_1_bss_5C = -1; + lbl_1_bss_60 = MGSeqCreate(3, 1); + if (lbl_1_bss_58 != -1) { + HuAudSeqFadeOut(lbl_1_bss_58, 0x64); + } + + for (var_r31 = 0; var_r31 < 8; var_r31++) { + if ((lbl_1_bss_0[var_r31].unk0 != -1) && (lbl_1_bss_0[var_r31].unk4 > 0)) { + HuAudFXFadeOut(lbl_1_bss_0[var_r31].unk0, 0x64); + } + } + HuAudFXFadeOut(lbl_1_bss_54, 0x64); + HuAudFXFadeOut(lbl_1_bss_50, 0x64); + if ((lbl_1_bss_68 != 0) && (lbl_1_bss_80 < lbl_1_bss_78)) { + if (lbl_1_bss_68 == 1) { + var_r29 = 0; + } else { + var_r29 = 1; + } + if (fn_1_113F0(var_r29) == 0) { + lbl_1_bss_74 = lbl_1_bss_80; + } + } + if ((lbl_1_bss_68 != 0) && (lbl_1_bss_80 <= 0xA8C)) { + if (lbl_1_bss_68 == 1) { + var_r29 = 0; + } else { + var_r29 = 1; + } + if (fn_1_113F0(var_r29) == 0) { + GWGameStat.present[0x34] = 1; + } + } + lbl_1_bss_84 = 5; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } else { + if (lbl_1_bss_80 >= 0x4651) { + MGSeqParamSet(lbl_1_bss_5C, 1, 0); + MGSeqParamSet(lbl_1_bss_5C, 2, -1); + lbl_1_bss_5C = -1; + lbl_1_bss_60 = MGSeqCreate(3, 1); + if (lbl_1_bss_58 != -1) { + HuAudSeqFadeOut(lbl_1_bss_58, 0x64); + } + + for (var_r31 = 0; var_r31 < 8; var_r31++) { + if ((lbl_1_bss_0[var_r31].unk0 != -1) && (lbl_1_bss_0[var_r31].unk4 > 0)) { + HuAudFXFadeOut(lbl_1_bss_0[var_r31].unk0, 0x64); + } + } + HuAudFXFadeOut(lbl_1_bss_54, 0x64); + HuAudFXFadeOut(lbl_1_bss_50, 0x64); + lbl_1_bss_64 = 1; + lbl_1_bss_84 = 5; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + } + break; + case 5: + if (lbl_1_bss_68 != 0) { + WipeCreate(2, 0, 0x3C); + WipeColorSet(0xFF, 0xFF, 0xFF); + lbl_1_bss_4C = 1; + lbl_1_bss_84 = 6; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } else if ((lbl_1_bss_60 == -1) || (MGSeqStatGet(lbl_1_bss_60) == 0)) { + lbl_1_bss_84 = 0xA; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 6: + if ((WipeStatGet() == 0) && ((lbl_1_bss_60 == -1) || (MGSeqStatGet(lbl_1_bss_60) == 0))) { + lbl_1_bss_60 = -1; + fn_1_21E8(0, 0); + fn_1_3164(); + HuAudFXAllStop(); + HuAudFXPlay(0x65E); + lbl_1_bss_84 = 7; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 7: + if (++lbl_1_bss_80 > 5) { + WipeCreate(1, 0, 0x1E); + WipeColorSet(0xFF, 0xFF, 0xFF); + lbl_1_bss_4C = 0; + HuAudAUXVolSet(-1, -1); + fn_1_272C(); + lbl_1_bss_84 = 8; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 8: + if (WipeStatGet() == 0) { + lbl_1_bss_84 = 0xA; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 10: + if (lbl_1_bss_68 != 0) { + var_f31 = sind((90.0f * (lbl_1_bss_80 / 180.0f))); + if (var_f31 >= 1.0f) { + var_f31 = 1.0f; + } + fn_1_11298(var_f31); + if (lbl_1_bss_80 > 30.0f) { + var_f30 = lbl_1_bss_7C / 150.0f; + lbl_1_bss_7C++; + if (var_f30 >= 1.0f) { + var_f30 = 1.0f; + } + var_f30 = sind(90.0f * var_f30); + fn_1_2F6C(var_f30); + } + if (++lbl_1_bss_80 > 180.0f) { + if (lbl_1_bss_68 == 1) { + fn_1_110E8(0, sp10); + fn_1_111C0(0, sp8); + } else { + fn_1_110E8(1, sp10); + fn_1_111C0(1, sp8); + } + GWPlayerCoinWinAdd(sp8[0], 10); + GWPlayerCoinWinAdd(sp8[1], 10); + if (lbl_1_bss_74 < lbl_1_bss_78) { + lbl_1_bss_78 = lbl_1_bss_74; + fn_1_232C(lbl_1_bss_78); + GWMGRecordSet(2, lbl_1_bss_78); + fn_1_2704(); + lbl_1_bss_60 = MGSeqCreate(0xE, lbl_1_bss_78); + lbl_1_bss_7C = 0xB4; + lbl_1_bss_84 = 0xB; + lbl_1_bss_80 = 0; + } else { + lbl_1_bss_60 = MGSeqCreate(5, 3, sp10[0], sp10[1], -1, -1); + HuAudSStreamPlay(1); + lbl_1_bss_7C = 0xB4; + lbl_1_bss_84 = 0xC; + lbl_1_bss_80 = 0; + } + } + } else { + lbl_1_bss_60 = MGSeqCreate(3, 2); + HuAudSStreamPlay(4); + lbl_1_bss_7C = 0xB4; + lbl_1_bss_84 = 0xC; + lbl_1_bss_80 = 0; + } + break; + case 11: + if ((lbl_1_bss_60 == -1) || (MGSeqStatGet(lbl_1_bss_60) == 0)) { + if (lbl_1_bss_68 == 1) { + fn_1_110E8(0, sp10); + } else { + fn_1_110E8(1, sp10); + } + lbl_1_bss_60 = MGSeqCreate(5, 3, sp10[0], sp10[1], -1, -1); + HuAudSStreamPlay(1); + lbl_1_bss_7C = 0xB4; + lbl_1_bss_84 = 0xC; + lbl_1_bss_80 = 0; + } + break; + case 12: + if (++lbl_1_bss_80 >= 210.0f) { + WipeCreate(2, 0, 0x3C); + lbl_1_bss_4C = 1; + lbl_1_bss_84 = 0xD; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 13: + if (WipeStatGet() == 0) { + lbl_1_bss_84 = 0xE; + lbl_1_bss_80 = 0; + lbl_1_bss_7C = 0; + } + break; + case 14: + arg0->func = fn_1_1664; + break; + } + fn_1_1F34(); + fn_1_16C4(arg0); +} + +void fn_1_1664(omObjData* arg0) { + if (WipeStatGet() == 0) { + fn_1_EC54(); + fn_1_3A88(); + fn_1_2188(); + CharModelKill(-1); + HuDataDirClose(0x3A0000); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_16C4(omObjData* arg0) { + s32 var_r30; + + var_r30 = 0; + if ((WipeStatGet() != 0) || (arg0->func == fn_1_1664)) { + return; + } + if (omSysExitReq != 0) { + var_r30 = 1; + } + if (var_r30 != 0) { + if ((s32) lbl_1_bss_4C == 0) { + WipeCreate(2, 0, 0x3C); + } + lbl_1_bss_4C = 1; + HuAudStreamFadeOut(0x1E); + arg0->func = fn_1_1664; + } +} + +s32 fn_1_1788(void) { + return lbl_1_bss_84; +} + +void fn_1_1798(s32 arg0, f32 arg8) { + + if (arg8 < 0.0f) { + arg8 = 0.0f; + } else if (arg8 > 1.0f) { + arg8 = 1.0f; + } + lbl_1_bss_6C[arg0] = arg8; + if (lbl_1_bss_6C[arg0] >= 1.0f) { + fn_1_1864(1 << arg0); + } +} + +void fn_1_1864(s32 arg0) { + lbl_1_bss_68 |= arg0; +} + +s32 fn_1_1884(void) { + if (lbl_1_bss_68 != 0) { + if (lbl_1_bss_68 != 1 && lbl_1_bss_68 != 2) { + if (((s32)frand() & 1) != 0) { + lbl_1_bss_68 = 1; + } else { + lbl_1_bss_68 = 2; + } + } + if (lbl_1_bss_68 == 1) { + return 0; + } else { + return 1; + } + } else { + if (lbl_1_bss_64 != 0) { + return 3; + } else { + return -1; + } + } +} + +s32 lbl_1_data_D0[2] = { 0x3A0029, 0x3A002A }; +s16 lbl_1_data_D8[2] = { -24, 24 }; +s16 lbl_1_data_DC[2] = { -10, 10 }; +s16 lbl_1_data_E0[2] = { 350, 96 }; + +void fn_1_1954(void) { + f32 temp_f28; + f32 temp_f29; + f32 var_f31; + f32 var_f30; + s32 var_r29; + s32 var_r31; + M427DllStruct2* var_r30; + + var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xA4, 0x10000000); + lbl_1_bss_40 = var_r30; + var_r30->unk9C = 0; + var_r30->unkA0 = 0; + var_r31 = espEntry(0x3A0028, 1, 0); + var_r30->unk0[0] = var_r31; + espPriSet(var_r31, 0xFF); + espDispOn(var_r31); + espDrawNoSet(var_r31, 0); + espAttrSet(var_r31, 1); + espBankSet(var_r31, 0); + espPosSet(var_r31, 288.0, 240.0); + + for (var_r29 = 0; var_r29 < 2; var_r29++) { + var_r31 = espEntry(lbl_1_data_D0[var_r29], 1, 0); + var_r30->unk0[var_r29 + 1] = var_r31; + espPriSet(var_r31, 0xC8); + espDispOn(var_r31); + espDrawNoSet(var_r31, 0); + espAttrSet(var_r31, 1); + espBankSet(var_r31, 0); + espPosSet(var_r31, 288.0f + lbl_1_data_D8[var_r29], 240.0); + } + + temp_f28 = 288.0f; + temp_f29 = 400.0f; + var_f31 = 288.0f; + var_f30 = temp_f29; + var_r31 = espEntry(0x3A002B, 1, 0); + var_r30->unkC = var_r31; + espPriSet(var_r31, 0xBE); + espDispOn(var_r31); + espDrawNoSet(var_r31, 0); + espAttrSet(var_r31, 1); + espBankSet(var_r31, 0); + espTPLvlSet(var_r31, 0.5); + espColorSet(var_r31, 0x80, 0x80, 0x80); + espScaleSet(var_r31, 1.25, 1.5); + espPosSet(var_r31, var_f31, var_f30); + var_f31 = 248.0f; + var_f30 = temp_f29 - 8.0f; + var_r31 = espEntry(0x610037, 1, 0); + var_r30->unk10 = var_r31; + espPriSet(var_r31, 0xBE); + espDispOn(var_r31); + espDrawNoSet(var_r31, 0); + espAttrSet(var_r31, 1); + espBankSet(var_r31, 0); + espScaleSet(var_r31, 1.0, 1.0); + espPosSet(var_r31, var_f31 - 18.0f, var_f30); + var_r30->unk84 = ((var_f31 - 18.0f) - temp_f28); + var_r30->unk88 = (var_f30 - temp_f29); + var_r30->unk8C = -1; + var_r30->unk98 = 1.0f; + var_r30->unk90 = temp_f28; + var_r30->unk94 = temp_f29; + var_f31 = 248.0f; + var_f30 = temp_f29 - 8.0f; + + for (var_r29 = 0; var_r29 < 7; var_r29++) { + var_r31 = espEntry(0x610030, 1, 0); + var_r30->unk14[var_r29] = var_r31; + espPriSet(var_r31, 0xB4); + espDispOn(var_r31); + espDrawNoSet(var_r31, 0); + espAttrSet(var_r31, 9); + espScaleSet(var_r31, 1.0, 1.0); + espPosSet(var_r31, var_f31, var_f30); + if (var_r29 == 1) { + espBankSet(var_r31, 10); + } else if (var_r29 == 4) { + espBankSet(var_r31, 11); + } else { + espBankSet(var_r31, 0); + } + var_r30->unk4C[var_r29].x = var_f31 - temp_f28; + var_r30->unk4C[var_r29].y = var_f30 - temp_f29; + var_f31 += 16.0f; + } + var_f31 = 248.0f; + var_f30 = 8.0f + temp_f29; + + for (var_r29 = 0; var_r29 < 7; var_r29++) { + var_r31 = espEntry(0x610031, 1, 0); + var_r30->unk30[var_r29] = var_r31; + espPriSet(var_r31, 0xB4); + espDispOn(var_r31); + espDrawNoSet(var_r31, 0); + espAttrSet(var_r31, 1); + espScaleSet(var_r31, 1.0, 1.0); + espPosSet(var_r31, var_f31, var_f30); + if (var_r29 == 1) { + espBankSet(var_r31, 10); + } else if (var_r29 == 4) { + espBankSet(var_r31, 11); + } else { + espBankSet(var_r31, 0); + } + var_f31 += 16.0f; + } + fn_1_232C(lbl_1_bss_78); + fn_1_2518(0); +} + +void fn_1_1F34(void) { + f32 var_f30; + f32 temp_f31; + s32 var_r29; + s32 var_r30; + M427DllStruct2* temp_r31; + + temp_r31 = lbl_1_bss_40; + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r29 = temp_r31->unk0[var_r30 + 1]; + var_f30 = lbl_1_data_E0[0] + (lbl_1_bss_6C[var_r30] * (lbl_1_data_E0[1] - lbl_1_data_E0[0])); + espPosSet(var_r29, 288.0f + lbl_1_data_DC[var_r30], var_f30); + } + if (temp_r31->unk8C != -1) { + if (temp_r31->unk8C == 0) { + if ((temp_r31->unk98 += 0.02f) >= 1.2f) { + temp_r31->unk98 = 1.2f; + temp_r31->unk8C = 1; + } + } else { + if ((temp_r31->unk98 -= 0.04f) <= 1.0f) { + temp_r31->unk98 = 1.0f; + temp_r31->unk8C = 0; + } + } + temp_f31 = temp_r31->unk98; + + for (var_r30 = 0; var_r30 < 7; var_r30++) { + var_r29 = temp_r31->unk14[var_r30]; + espScaleSet(var_r29, temp_f31, temp_f31); + } + var_r29 = temp_r31->unk10; + espScaleSet(var_r29, temp_f31, temp_f31); + } +} + +void fn_1_2188(void) { + M427DllStruct2* temp_r31; + s32 var_r30; + + temp_r31 = lbl_1_bss_40; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + espKill(temp_r31->unk0[var_r30]); + } + espKill(temp_r31->unkC); +} + +void fn_1_21E8(s32 arg0, s32 arg1) { + M427DllStruct2* temp_r31; + s32 var_r30; + + temp_r31 = lbl_1_bss_40; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + if (arg0 == 0) { + espDispOff(temp_r31->unk0[var_r30]); + } else { + espDispOn(temp_r31->unk0[var_r30]); + } + } + if (arg1 != 0) { + if (arg0 == 0) { + espDispOff(temp_r31->unkC); + } else { + espDispOn(temp_r31->unkC); + } + if (arg0 == 0) { + espDispOff(temp_r31->unk10); + } else { + espDispOn(temp_r31->unk10); + } + + for (var_r30 = 0; var_r30 < 7; var_r30++) { + if (arg0 == 0) { + espDispOff(temp_r31->unk14[var_r30]); + } else { + espDispOn(temp_r31->unk14[var_r30]); + } + } + + for (var_r30 = 0; var_r30 < 7; var_r30++) { + if (arg0 == 0) { + espDispOff(temp_r31->unk30[var_r30]); + } else { + espDispOn(temp_r31->unk30[var_r30]); + } + } + } +} + +void fn_1_232C(s32 arg0) { + M427DllStruct2* temp_r29; + f32 temp_f0; + s32 var_r31; + + temp_r29 = lbl_1_bss_40; + temp_r29->unk9C = arg0; + var_r31 = arg0 / 3600; + arg0 -= var_r31 * 3600; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk14[0], var_r31); + var_r31 = (arg0 / 600); + arg0 -= var_r31 * 600; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk14[2], var_r31); + var_r31 = arg0 / 60; + arg0 -= var_r31 * 60; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk14[3], var_r31); + arg0 = 100.0f * (arg0 / 60.0f); + var_r31 = arg0 / 10; + arg0 -= var_r31 * 10; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk14[5], var_r31); + var_r31 = arg0; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk14[6], var_r31); +} + +void fn_1_2518(s32 arg0) { + M427DllStruct2* temp_r29; + f32 temp_f0; + s32 var_r31; + + temp_r29 = lbl_1_bss_40; + temp_r29->unkA0 = arg0; + var_r31 = arg0 / 3600; + arg0 -= var_r31 * 3600; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk30[0], var_r31); + var_r31 = (arg0 / 600); + arg0 -= var_r31 * 600; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk30[2], var_r31); + var_r31 = arg0 / 60; + arg0 -= var_r31 * 60; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk30[3], var_r31); + arg0 = 100.0f * (arg0 / 60.0f); + var_r31 = arg0 / 10; + arg0 -= var_r31 * 10; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk30[5], var_r31); + var_r31 = arg0; + if (var_r31 > 9) { + var_r31 = 9; + } else if (var_r31 < 0) { + var_r31 = 0; + } + espBankSet(temp_r29->unk30[6], var_r31); +} + +void fn_1_2704(void) { + M427DllStruct2* var_r31; + + var_r31 = lbl_1_bss_40; + var_r31->unk8C = 0; +} + +void fn_1_272C(void) { + M427DllStruct2* var_r31; + s32 temp_r30; + + var_r31 = lbl_1_bss_40; + temp_r30 = var_r31->unkC; + espTPLvlSet(temp_r30, 0.5); + espColorSet(temp_r30, 0, 0, 0); +} + +void fn_1_2790(void) { + omObjData* var_r30; + s32 var_r31; + + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, -1.0f, 300.0f, 50000.0f, 0.6f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x140, 0x1E0); + Hu3DCameraCreate(2); + Hu3DCameraPerspectiveSet(2, -1.0f, 300.0f, 50000.0f, 0.6f); + Hu3DCameraViewportSet(2, 320.0f, 0.0f, 320.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(2, 0x140, 0, 0x140, 0x1E0); + Hu3DCameraCreate(4); + Hu3DCameraPerspectiveSet(4, -1.0f, 100.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(4, 0.0f, 0.0f, 576.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(4, 0, 0, 0x280, 0x1E0); + var_r30 = lbl_1_bss_48 = omAddObjEx(lbl_1_bss_8C, 0x7FDA, 0, 0, -1, omOutViewMulti); + var_r30->work[0] = 3; + + for (var_r31 = 0; var_r31 < 3; var_r31++) { + CRotM[var_r31].x = lbl_1_data_0[0].rot.x; + CRotM[var_r31].y = lbl_1_data_0[0].rot.y; + CRotM[var_r31].z = lbl_1_data_0[0].rot.z; + CenterM[var_r31].x = lbl_1_data_0[0].cen.x; + CenterM[var_r31].y = lbl_1_data_0[0].cen.y; + CenterM[var_r31].z = lbl_1_data_0[0].cen.z; + CZoomM[var_r31] = lbl_1_data_0[0].zoom; + } + lbl_1_bss_44 = 0; + omAddObjEx(lbl_1_bss_8C, 0x3F, 0, 0, -1, fn_1_2B20); +} + +void fn_1_2B20(omObjData* object) {} + +void fn_1_2B24(void) {} + +void fn_1_2B28(void) { + s32 var_r31; + + Hu3DCameraPerspectiveSet(1, 45.0f, 300.0f, 50000.0f, 0.6f); + Hu3DCameraPerspectiveSet(2, 45.0f, 300.0f, 50000.0f, 0.6f); + Hu3DCameraPerspectiveSet(4, 45.0f, 100.0f, 50000.0f, 1.2f); + + for (var_r31 = 0; var_r31 < 2; var_r31++) { + CRotM[var_r31].x = lbl_1_data_0[2].rot.x; + CRotM[var_r31].y = lbl_1_data_0[2].rot.y; + CRotM[var_r31].z = lbl_1_data_0[2].rot.z; + CenterM[var_r31].x = lbl_1_data_0[2].cen.x; + CenterM[var_r31].y = lbl_1_data_0[2].cen.y; + CenterM[var_r31].z = lbl_1_data_0[2].cen.z; + CZoomM[var_r31] = lbl_1_data_0[2].zoom; + } +} + +void fn_1_2CE8(f32 arg0) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 2; var_r31++) { + CRotM[var_r31].x = fn_1_168FC(arg0, lbl_1_data_0[2].rot.x, lbl_1_data_0->rot.x); + CRotM[var_r31].y = fn_1_168FC(arg0, lbl_1_data_0[2].rot.y, lbl_1_data_0->rot.z); + CRotM[var_r31].z = fn_1_168FC(arg0, lbl_1_data_0[2].rot.z, lbl_1_data_0->rot.z); + CenterM[var_r31].x = lbl_1_data_0[2].cen.x + (arg0 * (lbl_1_data_0->cen.x - lbl_1_data_0[2].cen.x)); + CenterM[var_r31].y = lbl_1_data_0[2].cen.y + (arg0 * (lbl_1_data_0->cen.y - lbl_1_data_0[2].cen.y)); + CenterM[var_r31].z = lbl_1_data_0[2].cen.z + (arg0 * (lbl_1_data_0->cen.z - lbl_1_data_0[2].cen.z)); + CZoomM[var_r31] = lbl_1_data_0[2].zoom + (arg0 * (lbl_1_data_0->zoom - lbl_1_data_0[2].zoom)); + } +} + +void fn_1_2EE0(void) { + Hu3DCameraPerspectiveSet(1, 45.0f, 700.0f, 50000.0f, 0.6f); + Hu3DCameraPerspectiveSet(2, 45.0f, 700.0f, 50000.0f, 0.6f); +} + +void fn_1_2F6C(f32 arg0) { + s32 var_r31; + + for (var_r31 = 0; var_r31 < 2; var_r31++) { + CRotM[var_r31].x = fn_1_168FC(arg0, lbl_1_data_0[1].rot.x, lbl_1_data_0[3].rot.x); + CRotM[var_r31].y = fn_1_168FC(arg0, lbl_1_data_0[1].rot.y, lbl_1_data_0[3].rot.y); + CRotM[var_r31].z = fn_1_168FC(arg0, lbl_1_data_0[1].rot.z, lbl_1_data_0[3].rot.z); + CenterM[var_r31].x = lbl_1_data_0[1].cen.x + (arg0 * (lbl_1_data_0[3].cen.x - lbl_1_data_0[1].cen.x)); + CenterM[var_r31].y = lbl_1_data_0[1].cen.y + (arg0 * (lbl_1_data_0[3].cen.y - lbl_1_data_0[1].cen.y)); + CenterM[var_r31].z = lbl_1_data_0[1].cen.z + (arg0 * (lbl_1_data_0[3].cen.z - lbl_1_data_0[1].cen.z)); + CZoomM[var_r31] = lbl_1_data_0[1].zoom + (arg0 * (lbl_1_data_0[3].zoom - lbl_1_data_0[1].zoom)); + } +} + +void fn_1_3164(void) { + lbl_1_bss_48->work[0] = 1; + Hu3DCameraKill(2); + Hu3DCameraKill(4); + Hu3DCameraPerspectiveSet(1, 45.0f, 100.0f, 50000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + Hu3DCameraScissorSet(1, 0, 0, 0x280, 0x1E0); + CRotM->x = lbl_1_data_0[1].rot.x; + CRotM->y = lbl_1_data_0[1].rot.y; + CRotM->z = lbl_1_data_0[1].rot.z; + CenterM->x = lbl_1_data_0[1].cen.x; + CenterM->y = lbl_1_data_0[1].cen.y; + CenterM->z = lbl_1_data_0[1].cen.z; + *CZoomM = lbl_1_data_0[1].zoom; +} + +s32 fn_1_32EC(void) { + return 0; +} From b0662c272c84826aba814216d3a0ce7e3f71497c Mon Sep 17 00:00:00 2001 From: CreateSource Date: Fri, 24 Jan 2025 16:08:48 -0500 Subject: [PATCH 140/178] fix symbol scope --- config/GMPE01_00/rels/m427Dll/symbols.txt | 406 +++++++++++----------- configure.py | 2 +- 2 files changed, 204 insertions(+), 204 deletions(-) diff --git a/config/GMPE01_00/rels/m427Dll/symbols.txt b/config/GMPE01_00/rels/m427Dll/symbols.txt index a8b25f76..bc2a2d73 100644 --- a/config/GMPE01_00/rels/m427Dll/symbols.txt +++ b/config/GMPE01_00/rels/m427Dll/symbols.txt @@ -144,210 +144,210 @@ fn_1_172F0 = .text:0x000172F0; // type:function size:0x140 fn_1_17430 = .text:0x00017430; // type:function size:0xA4 _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_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float -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:0xC data:2byte -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x3C data:4byte -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x6 data:2byte -lbl_1_rodata_136 = .rodata:0x00000136; // type:object size:0xC data:2byte -lbl_1_rodata_142 = .rodata:0x00000142; // type:object size:0x1A data:2byte -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x24 data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x30 data:4byte -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC data:4byte -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC data:4byte -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x1 data:byte -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:byte -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:byte -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x2 data:byte -lbl_1_rodata_38A = .rodata:0x0000038A; // type:object size:0x2 data:byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +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_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:float +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:0xC scope:local data:2byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x6 scope:local data:2byte +lbl_1_rodata_136 = .rodata:0x00000136; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_142 = .rodata:0x00000142; // type:object size:0x1A scope:local data:2byte +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 scope:local data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:byte +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x2 scope:local data:byte +lbl_1_rodata_38A = .rodata:0x0000038A; // type:object size:0x2 scope:local data:byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 scope:local data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:float -lbl_1_data_70 = .data:0x00000070; // type:object size:0x23 data:string +lbl_1_data_70 = .data:0x00000070; // type:object size:0x23 scope:local data:string jumptable_1_data_94 = .data:0x00000094; // type:object size:0x3C scope:local lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x8 lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x4 diff --git a/configure.py b/configure.py index 62f50acb..613dd441 100644 --- a/configure.py +++ b/configure.py @@ -1078,7 +1078,7 @@ config.libs = [ Rel( "m427Dll", # Right Oar Left? objects={ - Object(NonMatching, "REL/m427Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m427Dll/main.c"), Object(NonMatching, "REL/m427Dll/map.c"), Object(NonMatching, "REL/m427Dll/player.c"), }, From 32fdc38925bb72fc5a1228e2a3799d6e0601c952 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sun, 26 Jan 2025 15:26:13 -0800 Subject: [PATCH 141/178] Fix HsfanimStruct01 union shenanigans (#548) --- include/game/hsfanim.h | 5 +---- include/game/hsfdraw.h | 2 +- include/game/hsfformat.h | 2 +- src/REL/m408Dll/camera.c | 26 +++++++++++----------- src/REL/m408Dll/main.c | 4 ++-- src/REL/m408Dll/object.c | 8 +++---- src/REL/m408Dll/stage.c | 38 ++++++++++++++++----------------- src/REL/m416Dll/main.c | 28 ++++++++++++------------ src/REL/m417Dll/water.c | 12 +++++------ src/REL/m421Dll/player.c | 10 ++++----- src/REL/m422Dll/main.c | 10 ++++----- src/REL/m425Dll/main.c | 8 +++---- src/REL/m428Dll/map.c | 4 ++-- src/REL/m430Dll/player.c | 2 +- src/REL/m430Dll/water.c | 26 +++++++++++----------- src/REL/m433Dll/player.c | 14 ++++++------ src/REL/m438Dll/map.c | 32 +++++++++++++-------------- src/REL/m443Dll/player.c | 10 ++++----- src/REL/m447dll/block.c | 4 ++-- src/REL/m447dll/stage.c | 2 +- src/REL/m448Dll/main.c | 14 ++++++------ src/REL/m449Dll/main.c | 8 +++---- src/REL/m455Dll/stage.c | 14 ++++++------ src/REL/m456Dll/stage.c | 12 +++++------ src/REL/m460Dll/map.c | 10 ++++----- src/REL/mstory3Dll/win_effect.c | 10 ++++----- src/game/board/item.c | 6 +++--- src/game/chrman.c | 32 +++++++++++++-------------- src/game/hsfanim.c | 36 +++++++++++++++---------------- 29 files changed, 193 insertions(+), 196 deletions(-) diff --git a/include/game/hsfanim.h b/include/game/hsfanim.h index 198a4fc6..32c9c4cc 100644 --- a/include/game/hsfanim.h +++ b/include/game/hsfanim.h @@ -11,10 +11,7 @@ typedef struct particle_data ParticleData; typedef void (*ParticleHook)(ModelData *model, ParticleData *particle, Mtx matrix); typedef struct { - /* 0x00 */ union { - u16 unk00; - s16 unk00_s16; - }; + /* 0x00 */ s16 unk00; /* 0x02 */ s16 unk02; /* 0x04 */ s16 unk04; /* 0x06 */ s16 unk06; diff --git a/include/game/hsfdraw.h b/include/game/hsfdraw.h index 94b16a6b..d3b46df6 100755 --- a/include/game/hsfdraw.h +++ b/include/game/hsfdraw.h @@ -6,7 +6,7 @@ typedef struct model_data ModelData; -typedef struct { +typedef struct hsfdraw_struct_01 { /* 0x00 */ u16 unk00; /* 0x02 */ s16 unk02; /* 0x04 */ s16 unk04; diff --git a/include/game/hsfformat.h b/include/game/hsfformat.h index 04f3d458..36c083a9 100644 --- a/include/game/hsfformat.h +++ b/include/game/hsfformat.h @@ -99,7 +99,7 @@ typedef struct hsf_palette { typedef struct hsf_attribute { char *name; - void *unk04; + struct hsfdraw_struct_01 *unk04; u8 unk8[4]; float unk0C; u8 unk10[4]; diff --git a/src/REL/m408Dll/camera.c b/src/REL/m408Dll/camera.c index d0f693ea..370848c4 100644 --- a/src/REL/m408Dll/camera.c +++ b/src/REL/m408Dll/camera.c @@ -449,15 +449,15 @@ void fn_1_A37C(ModelData *model, ParticleData *particle, Mtx matrix) else { temp_r31 = particle->unk_48; for (temp_r29 = 0; temp_r29 < particle->unk_30; temp_r29++, temp_r31++) { - if (temp_r31->unk00_s16) { + if (temp_r31->unk00) { temp_r31->unk34.x += temp_r31->unk08.x; temp_r31->unk34.y += temp_r31->unk08.y; temp_r31->unk34.z += temp_r31->unk08.z; temp_r31->unk2C += temp_r31->unk14.x; temp_r31->unk14.y -= temp_r31->unk14.z; temp_r31->unk40.a = temp_r31->unk14.y; - if (--temp_r31->unk00_s16 == 0) { - temp_r31->unk00_s16 = 0; + if (--temp_r31->unk00 == 0) { + temp_r31->unk00 = 0; temp_r31->unk2C = 0; temp_r31->unk40.a = 0; } @@ -477,10 +477,10 @@ void fn_1_A4E8(s32 arg0, Vec *arg1, u32 arg2) if (temp_r30->unk_00) { temp_r31 = temp_r30->unk_48; for (temp_r29 = 0; temp_r29 < temp_r30->unk_30; temp_r29++, temp_r31++) { - if (temp_r31->unk00_s16 != 0) { + if (temp_r31->unk00 != 0) { continue; } - temp_r31->unk00_s16 = 60.0f * (((1.5f / 1000.0f) * frandmod(1000)) + 1.0f); + temp_r31->unk00 = 60.0f * (((1.5f / 1000.0f) * frandmod(1000)) + 1.0f); temp_r31->unk34.x = arg1->x; temp_r31->unk34.y = 12000; temp_r31->unk34.z = arg1->z; @@ -491,7 +491,7 @@ void fn_1_A4E8(s32 arg0, Vec *arg1, u32 arg2) temp_r31->unk2C = 10; temp_r31->unk40.a = frandmod(127) + 64; temp_r31->unk14.y = temp_r31->unk40.a; - temp_r31->unk14.z = temp_r31->unk14.y * (1.0f / temp_r31->unk00_s16); + temp_r31->unk14.z = temp_r31->unk14.y * (1.0f / temp_r31->unk00); temp_f31 = frandmod(1000) * (1.0f / 1000.0f); temp_r31->unk40.r = (temp_f31 * 55) + 200; temp_r31->unk40.g = (temp_f31 * 50) + 205; @@ -549,7 +549,7 @@ void fn_1_A894(ModelData *model, ParticleData *particle, Mtx matrix) else { temp_r31 = particle->unk_48; for (temp_r29 = 0; temp_r29 < particle->unk_30; temp_r29++, temp_r31++) { - if (temp_r31->unk00_s16 == 0) { + if (temp_r31->unk00 == 0) { continue; } sp8.x = sind(CRot.y) * cosd(CRot.x); @@ -649,7 +649,7 @@ void fn_1_AFF4(ModelData *model, ParticleData *particle, Mtx matrix) temp_r30 = particle->unk_48; temp_f30 = 0; for (temp_r29 = 0; temp_r29 < particle->unk_30; temp_r29++, temp_r30++) { - if (temp_r30->unk00_s16 == 0) { + if (temp_r30->unk00 == 0) { continue; } temp_f30 += 1.0f / particle->unk_30; @@ -751,15 +751,15 @@ void fn_1_BDE0(void) Vec sp14; Vec sp8; temp_r31 = lbl_1_bss_A4[0]; - temp_r31->unk00_s16++; - if (temp_r31->unk00_s16 < 339.0f) { + temp_r31->unk00++; + if (temp_r31->unk00 < 339.0f) { return; } - if (temp_r31->unk00_s16 >= 600.0f) { - temp_r31->unk00_s16 = 601; + if (temp_r31->unk00 >= 600.0f) { + temp_r31->unk00 = 601; for (temp_r30 = 0; temp_r30 < lbl_1_bss_A0; temp_r30++) { temp_r31 = lbl_1_bss_A4[temp_r30]; - temp_r31->unk00_s16 = 0; + temp_r31->unk00 = 0; temp_r31->unk2C = 0; temp_r31->unk40.a = 0; } diff --git a/src/REL/m408Dll/main.c b/src/REL/m408Dll/main.c index 38ab51b1..7494d1eb 100644 --- a/src/REL/m408Dll/main.c +++ b/src/REL/m408Dll/main.c @@ -1127,7 +1127,7 @@ void fn_1_5AB4(ModelData *model, ParticleData *particle, Mtx matrix) } temp_r31 = particle->unk_48; for (temp_r29 = 0; temp_r29 < particle->unk_30; temp_r29++, temp_r31++) { - if (temp_r31->unk00_s16 == 0 || temp_r31->unk00_s16 != 1) { + if (temp_r31->unk00 == 0 || temp_r31->unk00 != 1) { continue; } temp_r31->unk02++; @@ -1163,7 +1163,7 @@ void fn_1_5DCC(s32 arg0, Vec *arg1, u32 arg2) if (temp_r29->unk_00 != 0) { temp_r31 = temp_r29->unk_48; for (temp_r28 = 0; temp_r28 < temp_r29->unk_30; temp_r28++, temp_r31++) { - if (temp_r31->unk00_s16) { + if (temp_r31->unk00) { continue; } temp_r31->unk00 = 1; diff --git a/src/REL/m408Dll/object.c b/src/REL/m408Dll/object.c index 817ec9e3..a7db6c04 100644 --- a/src/REL/m408Dll/object.c +++ b/src/REL/m408Dll/object.c @@ -1332,8 +1332,8 @@ void fn_1_15658(ModelData *model, ParticleData *particle, Mtx matrix) } temp_r31->unk40.a = temp_r29; } - temp_r31->unk00_s16--; - if (temp_r31->unk00_s16 <= 0) { + temp_r31->unk00--; + if (temp_r31->unk00 <= 0) { temp_r31->unk2C = 0; } } @@ -1501,8 +1501,8 @@ void fn_1_15D64(ModelData *model, ParticleData *particle, Mtx matrix) } temp_r31->unk40.a = temp_r28; } - temp_r31->unk00_s16--; - if (temp_r31->unk00_s16 <= 0) { + temp_r31->unk00--; + if (temp_r31->unk00 <= 0) { temp_r31->unk2C = 0; } } diff --git a/src/REL/m408Dll/stage.c b/src/REL/m408Dll/stage.c index 06fc40fb..71b8bafd 100644 --- a/src/REL/m408Dll/stage.c +++ b/src/REL/m408Dll/stage.c @@ -413,7 +413,7 @@ s16 fn_1_D978(AnimData *arg0, s16 arg1, ParticleHook arg2) } temp_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(HsfanimStruct01), MEMORY_DEFAULT_NUM); temp_r29->unk_1C = temp_r30; - temp_r30->unk00_s16 = temp_r28; + temp_r30->unk00 = temp_r28; temp_r30->unk02 = 0; for (temp_r31 = 0; temp_r31 < 32; temp_r31++) { // Ugly expression to match store without new type @@ -449,7 +449,7 @@ void fn_1_DA6C(ModelData *model, ParticleData *particle, Mtx matrix) for (temp_r28 = 0; temp_r28 < 100; temp_r28++) { temp_r31 = particle->unk_48; for (temp_r27 = 0; temp_r27 < particle->unk_30; temp_r27++, temp_r31++) { - if (!temp_r31->unk00_s16) { + if (!temp_r31->unk00) { break; } } @@ -472,13 +472,13 @@ void fn_1_DA6C(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk2C = (0.01 * (frand() % 2000)) + 30.0; temp_r31->unk2C *= 0.1f; temp_r31->unk40.a = 255; - temp_r31->unk00_s16 = 30; + temp_r31->unk00 = 30; } break; } temp_r31 = particle->unk_48; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r28++, temp_r31++) { - if (temp_r31->unk00_s16 == 0) { + if (temp_r31->unk00 == 0) { continue; } temp_f30 = temp_r31->unk14.x; @@ -493,7 +493,7 @@ void fn_1_DA6C(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk08.y += 0.1f; if (temp_r31->unk40.a < 2) { temp_r31->unk40.a = 0; - temp_r31->unk00_s16 = 0; + temp_r31->unk00 = 0; particle->unk_00++; } } @@ -566,7 +566,7 @@ void fn_1_E310(ModelData *model, ParticleData *particle, Mtx matrix) temp_f30 = 360.0f / particle->unk_30; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r28++, temp_r31++) { - temp_r31->unk00_s16 = (s32)(360.0 * ((1.0 / 65536.0) * (float)fn_1_11670())); + temp_r31->unk00 = (s32)(360.0 * ((1.0 / 65536.0) * (float)fn_1_11670())); temp_r31->unk34.x = temp_r31->unk34.y = temp_r31->unk34.z = 0; temp_r26 = (temp_f30 * temp_r28) + (int)((temp_f30 * 0.5f) * ((1.0 / 32768.0) * (float)(fn_1_11670() - 32768))); temp_r31->unk20 = temp_r26; @@ -598,15 +598,15 @@ void fn_1_E310(ModelData *model, ParticleData *particle, Mtx matrix) case 1: temp_r31 = particle->unk_48; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r28++, temp_r31++) { - temp_r31->unk00_s16 += 4; - if (temp_r31->unk00_s16 >= 360) { - temp_r31->unk00_s16 -= 360; + temp_r31->unk00 += 4; + if (temp_r31->unk00 >= 360) { + temp_r31->unk00 -= 360; } temp_r31->unk34.x = temp_r31->unk14.x; temp_r31->unk34.y = temp_r31->unk14.y; temp_r31->unk34.z = temp_r31->unk14.z; temp_r31->unk30 = M_PI * (90 + (temp_r31->unk20 + temp_r29->unk_04.z)) / 180; - temp_r31->unk2C = temp_r31->unk24 * ((0.1f * sind(temp_r31->unk00_s16)) + 1.0); + temp_r31->unk2C = temp_r31->unk24 * ((0.1f * sind(temp_r31->unk00)) + 1.0); } break; } @@ -627,7 +627,7 @@ void fn_1_E9B4(ModelData *model, ParticleData *particle, Mtx matrix) case 0: temp_r31 = particle->unk_48; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r28++, temp_r31++) { - temp_r31->unk00_s16 = fn_1_11670() % 360; + temp_r31->unk00 = fn_1_11670() % 360; temp_r31->unk34.x = temp_r31->unk34.y = temp_r31->unk34.z = 0; temp_r27 = fn_1_11670() % 360; temp_r31->unk20 = temp_r27; @@ -653,14 +653,14 @@ void fn_1_E9B4(ModelData *model, ParticleData *particle, Mtx matrix) case 1: temp_r31 = particle->unk_48; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r28++, temp_r31++) { - temp_r31->unk00_s16 += 2; - if (temp_r31->unk00_s16 >= 360) { - temp_r31->unk00_s16 -= 360; + temp_r31->unk00 += 2; + if (temp_r31->unk00 >= 360) { + temp_r31->unk00 -= 360; } temp_r31->unk34.x = temp_r31->unk14.x; temp_r31->unk34.y = temp_r31->unk14.y; temp_r31->unk34.z = temp_r31->unk14.z; - temp_r31->unk2C = temp_r31->unk24 * ((0.1f * sind(temp_r31->unk00_s16)) + 1.0); + temp_r31->unk2C = temp_r31->unk24 * ((0.1f * sind(temp_r31->unk00)) + 1.0); } break; } @@ -718,7 +718,7 @@ void fn_1_F06C(ModelData *model, ParticleData *particle, Mtx matrix) case 0: temp_r31 = particle->unk_48; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r28++, temp_r31++) { - temp_r31->unk00_s16 = temp_r31->unk02 = 0; + temp_r31->unk00 = temp_r31->unk02 = 0; } temp_r29->unk_02++; break; @@ -726,8 +726,8 @@ void fn_1_F06C(ModelData *model, ParticleData *particle, Mtx matrix) case 1: temp_r31 = particle->unk_48; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r28++, temp_r31++) { - if (temp_r31->unk00_s16) { - temp_r31->unk00_s16--; + if (temp_r31->unk00) { + temp_r31->unk00--; continue; } if (temp_r31->unk02 == 0) { @@ -739,7 +739,7 @@ void fn_1_F06C(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk40.r = temp_r31->unk40.g = temp_r31->unk40.b = temp_r31->unk40.a = 192; temp_r31->unk40.b = 160; temp_r31->unk2C = 0; - temp_r31->unk00_s16 = (s32)(90.0 * ((1.0 / 65536.0) * (float)fn_1_11670())); + temp_r31->unk00 = (s32)(90.0 * ((1.0 / 65536.0) * (float)fn_1_11670())); temp_r31->unk02 = 60; } temp_r31->unk40.a = 248 * sind(temp_r31->unk02 * 3); diff --git a/src/REL/m416Dll/main.c b/src/REL/m416Dll/main.c index 33fe0518..0364445e 100644 --- a/src/REL/m416Dll/main.c +++ b/src/REL/m416Dll/main.c @@ -1609,7 +1609,7 @@ void fn_1_613C(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk34.y = (64.0f * ((1.0f / 256.0f) * frand8())); temp_r31->unk34.z = (4.0f * (((1.0f / 256.0f) * ((s32)frand() & 0x1FF)) - 1)); temp_r31->unk30 = 360.0f * ((1.0f / 256.0f) * frand8()); - temp_r31->unk00_s16 = frand8(); + temp_r31->unk00 = frand8(); temp_r31->unk02 = (frand() & 0x3) + 4; } temp_f29 = temp_f28 = 0; @@ -1620,7 +1620,7 @@ void fn_1_613C(ModelData *model, ParticleData *particle, Mtx matrix) } temp_r31 = particle->unk_48; for (temp_r29 = 0; temp_r29 < particle->unk_30; temp_r31++, temp_r29++) { - temp_f30 = temp_r31->unk00_s16 / 255.0f; + temp_f30 = temp_r31->unk00 / 255.0f; temp_f31 = temp_f30 * temp_f30; temp_r31->unk34.x += temp_f29 * temp_f31; temp_r31->unk34.y = 60.0f * temp_f30; @@ -1628,12 +1628,12 @@ void fn_1_613C(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk40.a = 255.0f * (1.0f - temp_f30); temp_f31 = 0.5 * (1 + sind(270.0f * temp_f30)); temp_r31->unk2C = temp_f31 * (temp_r31->unk08.x * temp_f31); - temp_r31->unk00_s16 += temp_r31->unk02; - if (temp_r31->unk00_s16 > 255) { + temp_r31->unk00 += temp_r31->unk02; + if (temp_r31->unk00 > 255) { temp_r31->unk34.x = (4.0f * (((1.0f / 256.0f) * ((s32)frand() & 0x1FF)) - 1)); temp_r31->unk34.y = 0; temp_r31->unk34.z = (4.0f * (((1.0f / 256.0f) * ((s32)frand() & 0x1FF)) - 1)); - temp_r31->unk00_s16 = 0; + temp_r31->unk00 = 0; } } DCStoreRangeNoSync(particle->unk_48, particle->unk_30 * sizeof(HsfanimStruct01)); @@ -1664,7 +1664,7 @@ void fn_1_6640(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk08.z = temp_f30 * cosd(temp_f31); temp_r31->unk40.r = temp_r31->unk40.g = temp_r31->unk40.b = 255; temp_r31->unk40.a = 0; - temp_r31->unk00_s16 = ((float)particle->unk_3C) * ((float)temp_r28 / (float)particle->unk_30); + temp_r31->unk00 = ((float)particle->unk_3C) * ((float)temp_r28 / (float)particle->unk_30); } } else { @@ -1674,25 +1674,25 @@ void fn_1_6640(ModelData *model, ParticleData *particle, Mtx matrix) temp_r27 = 0; temp_r31 = particle->unk_48; for (temp_r28 = 0; temp_r28 < particle->unk_30; temp_r31++, temp_r28++) { - if (temp_r31->unk00_s16 >= 0) { - if (temp_r31->unk00_s16 == 0) { + if (temp_r31->unk00 >= 0) { + if (temp_r31->unk00 == 0) { temp_r31->unk34.x += temp_r31->unk08.x + temp_f29; temp_r31->unk34.y += temp_r31->unk08.y; temp_r31->unk34.z += temp_r31->unk08.z + temp_f28; temp_r31->unk08.y += -1.0000001f; if (temp_r31->unk40.a) { if (--temp_r31->unk40.a == 0) { - temp_r31->unk00_s16 = -1; + temp_r31->unk00 = -1; } } if (temp_r31->unk34.y < 0.0f) { temp_r31->unk34.y = 0; - temp_r31->unk00_s16 = -1; + temp_r31->unk00 = -1; temp_r31->unk40.a = 0; } } else { - if (--temp_r31->unk00_s16 == 0) { + if (--temp_r31->unk00 == 0) { temp_r31->unk40.a = 255; } } @@ -1728,12 +1728,12 @@ void fn_1_6AE8(ModelData *model, ParticleData *particle, Mtx matrix) temp_r31->unk08.y = 100.0f * (0.05f * (((1.0f / 256.0f) * ((s32)frand() & 0x1FF)) - 1.0f)); temp_r31->unk08.z = 100.0f * (0.05f * (((1.0f / 256.0f) * ((s32)frand() & 0x1FF)) - 1.0f)); temp_r31->unk40.a = 128; - temp_r31->unk00_s16 = 0; + temp_r31->unk00 = 0; } } temp_r31 = particle->unk_48; for (temp_r29 = 0; temp_r29 < particle->unk_30; temp_r29++, temp_r31++) { - if (temp_r31->unk00_s16 < 0) { + if (temp_r31->unk00 < 0) { temp_r27++; continue; } @@ -1746,7 +1746,7 @@ void fn_1_6AE8(ModelData *model, ParticleData *particle, Mtx matrix) temp_r28 = temp_r31->unk40.a; temp_r28 -= 4; if (temp_r28 < 0) { - temp_r31->unk00_s16 = -1; + temp_r31->unk00 = -1; temp_r28 = 0; } temp_r31->unk40.a = temp_r28; diff --git a/src/REL/m417Dll/water.c b/src/REL/m417Dll/water.c index 6217da9f..85cdcaea 100644 --- a/src/REL/m417Dll/water.c +++ b/src/REL/m417Dll/water.c @@ -892,7 +892,7 @@ void fn_1_6B94(ModelData *model, ParticleData *particle, float (*matrix)[4]) particle->unk_00++; var_r31 = particle->unk_48; for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - var_r31->unk00_s16 = 0; + var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; } @@ -900,16 +900,16 @@ void fn_1_6B94(ModelData *model, ParticleData *particle, float (*matrix)[4]) } var_r31 = particle->unk_48; for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16) { + if (var_r31->unk00) { var_r31->unk34.x += var_r31->unk08.x; var_r31->unk34.y += var_r31->unk08.y; var_r31->unk34.z += var_r31->unk08.z; var_r31->unk08.y += -0.27222225f; - if (var_r31->unk00_s16 < 12.0f) { + if (var_r31->unk00 < 12.0f) { var_r31->unk40.a = 0.88f * var_r31->unk40.a; } - if (!(--var_r31->unk00_s16)) { - var_r31->unk00_s16 = 0; + if (!(--var_r31->unk00)) { + var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; } @@ -951,7 +951,7 @@ void fn_1_6D64(s32 arg0, u32 arg1, float arg8, float arg9, float argA) var_f27 = 0.0f; } for (var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16) { + if (var_r31->unk00) { continue; } var_r31->unk00 = 60.0f * (1.0f + (0.0005f * frandmod(1000))); diff --git a/src/REL/m421Dll/player.c b/src/REL/m421Dll/player.c index 4735d112..ce14a94c 100644 --- a/src/REL/m421Dll/player.c +++ b/src/REL/m421Dll/player.c @@ -1606,14 +1606,14 @@ void fn_1_9C38(ModelData *model, ParticleData *particle, Mtx matrix) s32 var_r29; for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk2C += 2.0f; var_r31->unk40.a *= 0.98f; - if (var_r31->unk00_s16 < 24.0f) { + if (var_r31->unk00 < 24.0f) { var_r31->unk40.a = 0.9f * var_r31->unk40.a; } - if (--var_r31->unk00_s16 == 0) { + if (--var_r31->unk00 == 0) { var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; @@ -1649,10 +1649,10 @@ void fn_1_9DD0(omObjData *object, Vec *arg1) spC[2] = (220.0f + (0.13725491f * sp14.b)) - sp10[2]; var_r26 = 0x64; for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { continue; } - var_r31->unk00_s16 = 60.0f * (0.6f + (0.0005f * frandmod(0x3E8))); + var_r31->unk00 = 60.0f * (0.6f + (0.0005f * frandmod(0x3E8))); var_f31 = frandmod(0x168); var_f30 = frandmod(0x168); sp18.y = sind(var_f31); diff --git a/src/REL/m422Dll/main.c b/src/REL/m422Dll/main.c index b51c3e68..79b64b3c 100755 --- a/src/REL/m422Dll/main.c +++ b/src/REL/m422Dll/main.c @@ -1402,7 +1402,7 @@ void fn_1_9410(ModelData *model, ParticleData *particle, Mtx matrix) if (particle->unk_34 < 50) { var_r31 = particle->unk_48; for (i = 0; i < particle->unk_30; i++, var_r31++) { - var_r31->unk00_s16 = particle->unk_34 + 41; + var_r31->unk00 = particle->unk_34 + 41; var_r31->unk40.a = 0; var_r31->unk2C = 0.0f; } @@ -1410,7 +1410,7 @@ void fn_1_9410(ModelData *model, ParticleData *particle, Mtx matrix) if (particle->unk_34 >= 255) { var_r31 = particle->unk_48; for (i = 0; i < particle->unk_30; i++, var_r31++) { - var_r31->unk00_s16 = 255; + var_r31->unk00 = 255; var_r31->unk40.a = 0; var_r31->unk2C = 0.0f; } @@ -1423,7 +1423,7 @@ void fn_1_9410(ModelData *model, ParticleData *particle, Mtx matrix) } var_r31 = particle->unk_48; for (i = 0; i < particle->unk_30; i++, var_r31++) { - if (var_r31->unk00_s16 == 104) { + if (var_r31->unk00 == 104) { var_r31->unk34.x = var_r31->unk34.z = 0.0f; var_r31->unk34.y = 72.0f; temp_f31 = frandu8() * 360 / 256; @@ -1440,7 +1440,7 @@ void fn_1_9410(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk2C = 50.0f; VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); } - if (var_r31->unk00_s16 < 240) { + if (var_r31->unk00 < 240) { VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); var_r31->unk08.x *= 0.9f; var_r31->unk08.z *= 0.9f; @@ -1456,7 +1456,7 @@ void fn_1_9410(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk2C = 0.0f; } } - var_r31->unk00_s16 += (var_r31->unk00_s16 < 0x8000); + var_r31->unk00 += (var_r31->unk00 < 0x8000); } } diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c index 2853e783..01182261 100644 --- a/src/REL/m425Dll/main.c +++ b/src/REL/m425Dll/main.c @@ -1300,14 +1300,14 @@ void fn_1_4A88(ModelData *model, ParticleData *particle, Mtx matrix) switch (var_r29->unk_04) { case 0: for (var_r31 = particle->unk_48, var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { - var_r31->unk00_s16 = var_r31->unk02 = 0; + var_r31->unk00 = var_r31->unk02 = 0; } var_r29->unk_04++; break; case 1: for (var_r31 = particle->unk_48, var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { - if (var_r31->unk00_s16 != 0) { - var_r31->unk00_s16--; + if (var_r31->unk00 != 0) { + var_r31->unk00--; } else { if (var_r31->unk02 == 0) { @@ -1325,7 +1325,7 @@ void fn_1_4A88(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = var_r31->unk40.a = 0xC0; var_r31->unk40.b = 0xA0; var_r31->unk2C = 0.0f; - var_r31->unk00_s16 = (s32)(90.0 * (1.52587890625e-05 * (float)fn_1_64D4())); + var_r31->unk00 = (s32)(90.0 * (1.52587890625e-05 * (float)fn_1_64D4())); var_r31->unk02 = 0x3C; var_r31->unk40.r = 0xC0; var_r31->unk40.g = 0xE0; diff --git a/src/REL/m428Dll/map.c b/src/REL/m428Dll/map.c index ce4c7764..925c04bc 100644 --- a/src/REL/m428Dll/map.c +++ b/src/REL/m428Dll/map.c @@ -631,7 +631,7 @@ void fn_1_6280(ModelData *arg1, ParticleData *particle, Mtx matrix) break; } for (var_r31 = particle->unk_48, var_r27 = 0, var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { - switch (var_r31->unk00_s16) { + switch (var_r31->unk00) { case 0: if (((var_r28 > (0.4f * particle->unk_30)) && (particle->unk_04.x == 0.0f)) || (var_r27 >= (10.0f + (0.75f * particle->unk_04.x)))) { var_r31->unk2C = 0.01f; @@ -662,7 +662,7 @@ void fn_1_6280(ModelData *arg1, ParticleData *particle, Mtx matrix) var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = 0xFF; var_r31->unk02 = 0; var_r27++; - var_r31->unk00_s16++; + var_r31->unk00++; } break; case 1: diff --git a/src/REL/m430Dll/player.c b/src/REL/m430Dll/player.c index ca486592..baa21d63 100644 --- a/src/REL/m430Dll/player.c +++ b/src/REL/m430Dll/player.c @@ -2044,7 +2044,7 @@ void fn_1_11D70(void) var_r25 = &Hu3DData[var_r31->unk_04]; var_r29 = var_r25->unk_120; for (var_r30 = var_r29->unk_48, var_r27 = 0; var_r27 < var_r29->unk_30; var_r27++, var_r30++) { - if (++var_r30->unk00_s16 > var_r30->unk02) { + if (++var_r30->unk00 > var_r30->unk02) { var_r24 = var_r30->unk40.a - 9; if (var_r24 < 0) { var_r30->unk2C = 0.0f; diff --git a/src/REL/m430Dll/water.c b/src/REL/m430Dll/water.c index 4cdcef5c..cfb782c7 100644 --- a/src/REL/m430Dll/water.c +++ b/src/REL/m430Dll/water.c @@ -1637,15 +1637,15 @@ void fn_1_AD04(ModelData *model, ParticleData *particle, Mtx matrix) return; } for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); VECScale(&var_r31->unk08, &var_r31->unk08, 0.97f); - if (var_r31->unk00_s16 < 24.0f) { + if (var_r31->unk00 < 24.0f) { var_r31->unk40.a = 0.9f * var_r31->unk40.a; } var_r31->unk2C += 1.5f; - if (--var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 0; + if (--var_r31->unk00 == 0) { + var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; } @@ -1676,7 +1676,7 @@ void fn_1_AEE0(s32 arg0, Vec *arg1, float arg8, float arg9) var_r27 = 1; var_f28 = 30.0f; for (var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 == 0) { + if (var_r31->unk00 == 0) { var_r31->unk00 = 60.0f * (0.5f + (0.0005f * frandmod(0x3E8))); var_f30 = (0.002f * frandmod(0x3E8)) - 1.0f; var_f30 = arg8 + (var_f30 * var_f28); @@ -1714,22 +1714,22 @@ void fn_1_B394(ModelData *model, ParticleData *var_r30, Mtx matrix) if ((var_r30->unk_00 == 0) || (lbl_1_bss_5C != 0)) { var_r30->unk_00++; for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { - var_r31->unk00_s16 = 0; + var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; } return; } for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { - var_r31->unk00_s16--; + if (var_r31->unk00 != 0) { + var_r31->unk00--; VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk2C += 0.5f; - if (var_r31->unk00_s16 < 30.0) { + if (var_r31->unk00 < 30.0) { var_r31->unk40.a = 0.98f * var_r31->unk40.a; } - if ((var_r31->unk34.y < -40.0f) || (var_r31->unk00_s16 == 0)) { - var_r31->unk00_s16 = 0; + if ((var_r31->unk34.y < -40.0f) || (var_r31->unk00 == 0)) { + var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; } @@ -1766,8 +1766,8 @@ void fn_1_B570(s32 arg0, Vec *arg1, float arg8, float arg9, Vec *arg2) VECScale(arg2, &sp1C, 0.2f); sp1C.x = 0.0f; for (var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 60.0f * (0.5f + (0.0005f * frandmod(0x3E8))); + if (var_r31->unk00 == 0) { + var_r31->unk00 = 60.0f * (0.5f + (0.0005f * frandmod(0x3E8))); var_f30 = (0.002f * frandmod(0x3E8)) - 1.0f; var_f30 = arg8 + sp14[var_r29 & 1] + (var_f30 * var_f28); sp28.x = sind(var_f30); diff --git a/src/REL/m433Dll/player.c b/src/REL/m433Dll/player.c index 7b69466d..b6ef317c 100644 --- a/src/REL/m433Dll/player.c +++ b/src/REL/m433Dll/player.c @@ -2174,7 +2174,7 @@ void fn_1_BD48(omObjData *object) for (var_r27 = ((ParticleData *)Hu3DData[var_r28].unk_120)->unk_48, var_r29 = 0; var_r29 < 0xC8; var_r29++, var_r27++) { var_r27->unk2C = 0.0f; var_r27->unk40.a = 0; - var_r27->unk00_s16 = 0; + var_r27->unk00 = 0; } object->model[9] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 2)); Hu3DModelScaleSet(object->model[9], 1.05f, 1.05f, 1.05f); @@ -2581,18 +2581,18 @@ void fn_1_D6A8(ModelData *model, ParticleData *particle, Mtx matrix) s32 var_r29; for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.x *= 0.92f; var_r31->unk08.z *= 0.92f; var_r31->unk08.y += -0.27222225f; var_r31->unk2C += 2.0f; var_r31->unk40.a *= 0.99f; - if (var_r31->unk00_s16 < 24.0f) { + if (var_r31->unk00 < 24.0f) { var_r31->unk40.a = 0.9f * var_r31->unk40.a; } - if (--var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 0; + if (--var_r31->unk00 == 0) { + var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; } @@ -2613,8 +2613,8 @@ void fn_1_D888(Vec *arg0, float arg8) var_r31 = ((ParticleData *)Hu3DData[lbl_1_bss_7CC->model[5]].unk_120)->unk_48; var_r28 = 3.0f + (12.0f * arg8); for (var_r29 = 0; var_r29 < 0xC8; var_r29++, var_r31++) { - if (var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); + if (var_r31->unk00 == 0) { + var_r31->unk00 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); var_f30 = frandmod(0x168); sp8.x = sind(var_f30); sp8.y = 0.0f; diff --git a/src/REL/m438Dll/map.c b/src/REL/m438Dll/map.c index b0da050e..ea4ba2d0 100644 --- a/src/REL/m438Dll/map.c +++ b/src/REL/m438Dll/map.c @@ -377,15 +377,15 @@ void fn_1_C764(ModelData *model, ParticleData *particle, Mtx matrix) var_r31 = particle->unk_48; for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.x *= 0.95f; var_r31->unk08.z *= 0.95f; var_r31->unk08.y += -0.27222225f; - if (var_r31->unk00_s16 < 24.0f) { + if (var_r31->unk00 < 24.0f) { var_r31->unk40.a = 0.9f * var_r31->unk40.a; } - if (--var_r31->unk00_s16 == 0) { + if (--var_r31->unk00 == 0) { var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; @@ -404,16 +404,16 @@ void fn_1_C8E8(ModelData *model, ParticleData *particle, Mtx matrix) var_r31 = particle->unk_48; for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.x *= 0.92f; var_r31->unk08.z *= 0.92f; var_r31->unk2C += 5.0f; var_r31->unk40.a *= 0.99f; - if (var_r31->unk00_s16 < 24.0f) { + if (var_r31->unk00 < 24.0f) { var_r31->unk40.a = 0.9f * var_r31->unk40.a; } - if (--var_r31->unk00_s16 == 0) { + if (--var_r31->unk00 == 0) { var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; @@ -440,8 +440,8 @@ void fn_1_CAB0(f32 arg8) for (var_r30 = 0; var_r30 < 0x96; var_r30++) { var_r31 = lbl_1_bss_E34[var_r30]; - if (var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); + if (var_r31->unk00 == 0) { + var_r31->unk00 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); temp_f31 = ((0.002f * frandmod(0x3E8)) - 1.0f); temp_f31 = arg8 + (temp_f31 * temp_f28); sp8.x = sind(temp_f31); @@ -471,8 +471,8 @@ void fn_1_CAB0(f32 arg8) var_r31 = ((ParticleData *)(Hu3DData[lbl_1_bss_108C[0]->model[6]].unk_120))->unk_48; var_r29 = 0xF; for (var_r30 = 0; var_r30 < 0x32; var_r30++, var_r31++) { - if (var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); + if (var_r31->unk00 == 0) { + var_r31->unk00 = 60.0f * (0.6f + (0.0006f * frandmod(0x3E8))); temp_f31 = ((0.002f * frandmod(0x3E8)) - 1.0f); temp_f31 = arg8 + (temp_f31 * temp_f28); sp8.x = sind(temp_f31); @@ -513,14 +513,14 @@ void fn_1_D3FC(ModelData *model, ParticleData *particle, Mtx matrix) lbl_1_bss_E2C = 0; var_r31 = particle->unk_48; for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.y += -0.27222225f; - if (var_r31->unk00_s16 < 12.0f) { + if (var_r31->unk00 < 12.0f) { var_r31->unk40.a = (0.8f * var_r31->unk40.a); } - if (--var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 0; + if (--var_r31->unk00 == 0) { + var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; } @@ -543,8 +543,8 @@ void fn_1_D57C(Vec *arg0, f32 arg1) var_r29 = (u32)(3.0f + (15.0f * arg1)); for (var_r30 = 0; var_r30 < 0x1F4; var_r30++, var_r31++) { - if (var_r31->unk00_s16 == 0) { - var_r31->unk00_s16 = 60.0f * (0.3f + (0.0003f * frandmod(0x3E8))); + if (var_r31->unk00 == 0) { + var_r31->unk00 = 60.0f * (0.3f + (0.0003f * frandmod(0x3E8))); var_r31->unk34 = *arg0; var_r31->unk34.x += arg1 * (0.07f * (frandmod(0x3E8) - 0x1F4)); var_r31->unk34.z += arg1 * (0.07f * (frandmod(0x3E8) - 0x1F4)); diff --git a/src/REL/m443Dll/player.c b/src/REL/m443Dll/player.c index fb293d09..b0f2554d 100644 --- a/src/REL/m443Dll/player.c +++ b/src/REL/m443Dll/player.c @@ -1138,15 +1138,15 @@ void fn_1_8E34(s32 arg0) var_r31 = temp_r30->unk_48; for (var_r29 = 0; var_r29 < temp_r30->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); var_r31->unk08.z -= 0.3f; var_r31->unk2C += 2.0f; var_r31->unk40.a *= 0.98f; - if (var_r31->unk00_s16 < 24.0f) { + if (var_r31->unk00 < 24.0f) { var_r31->unk40.a = var_r31->unk40.a * 0.9f; } - if (--var_r31->unk00_s16 == 0) { + if (--var_r31->unk00 == 0) { var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; @@ -1183,10 +1183,10 @@ void fn_1_8FFC(u32 arg0, Point3d *arg1, f32 arg2, f32 arg3) var_r31 = temp_r29->unk_48; for (var_r28 = 0; var_r28 < temp_r29->unk_30; var_r28++, var_r31++) { - if (var_r31->unk00_s16 != 0) + if (var_r31->unk00 != 0) continue; - var_r31->unk00_s16 = (60.0f * (0.6f + (0.0005f * frandmod(0x3E8)))); + var_r31->unk00 = (60.0f * (0.6f + (0.0005f * frandmod(0x3E8)))); var_f29 = isEven(var_r27); temp_f31 = 0.030000001f * frandmod(0x3E8); var_r31->unk34.x = arg1->x + var_f29 * (70.0f + (0.07f * frandmod(0x3E8))); diff --git a/src/REL/m447dll/block.c b/src/REL/m447dll/block.c index 939c795b..335a8091 100755 --- a/src/REL/m447dll/block.c +++ b/src/REL/m447dll/block.c @@ -391,7 +391,7 @@ void fn_1_9F40(ModelData *model, ParticleData *particle, Mtx matrix) if (particle->unk_00 == 0) { particle->unk_00 = 1; for (i = 0, var_r31 = particle->unk_48; i < particle->unk_30; i++, var_r31++) { - var_r31->unk00_s16 = i * 5; + var_r31->unk00 = i * 5; var_r31->unk02 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.r = sp8.r; @@ -401,7 +401,7 @@ void fn_1_9F40(ModelData *model, ParticleData *particle, Mtx matrix) } } for (i = 0, var_r27 = 0, var_r31 = particle->unk_48; i < particle->unk_30; i++, var_r31++) { - if (var_r31->unk00_s16 > 0 && --var_r31->unk00_s16 > 0) { + if (var_r31->unk00 > 0 && --var_r31->unk00 > 0) { continue; } if (var_r31->unk02 == 0 && temp_r29->unk04 == 5 && temp_r29->unk10.z > -700.0f) { diff --git a/src/REL/m447dll/stage.c b/src/REL/m447dll/stage.c index b0ac0d86..f1a456fa 100755 --- a/src/REL/m447dll/stage.c +++ b/src/REL/m447dll/stage.c @@ -444,7 +444,7 @@ void fn_1_2DAC(ModelData *model, ParticleData *particle, Mtx matrix) } } for (i = 0, var_r31 = particle->unk_48; i < particle->unk_30; i++, var_r31++) { - if (var_r31->unk00_s16 < 0) { + if (var_r31->unk00 < 0) { continue; } var_r31->unk34.x += var_r31->unk08.x; diff --git a/src/REL/m448Dll/main.c b/src/REL/m448Dll/main.c index 0fccc340..961f27be 100755 --- a/src/REL/m448Dll/main.c +++ b/src/REL/m448Dll/main.c @@ -1498,7 +1498,7 @@ void fn_1_7DC4(ModelData *model, ParticleData *particle, Mtx matrix) if (particle->unk_34 == 0) { var_r31 = particle->unk_48; for (i = 0; i < particle->unk_30; i++, var_r31++) { - var_r31->unk00_s16 = i * 2 + 100; + var_r31->unk00 = i * 2 + 100; var_r31->unk40.a = 0; var_r31->unk2C = 0.0f; } @@ -1511,8 +1511,8 @@ void fn_1_7DC4(ModelData *model, ParticleData *particle, Mtx matrix) } var_r31 = particle->unk_48; for (i = 0; i < particle->unk_30; i++, var_r31++) { - if (var_r31->unk00_s16 == 100) { - var_r31->unk00_s16 = (lbl_1_data_1DC[0] == 0.0f && lbl_1_data_1DC[1] == 0.0f && lbl_1_data_1DC[2] == 0.0f) ? 0 : var_r31->unk00_s16; + if (var_r31->unk00 == 100) { + var_r31->unk00 = (lbl_1_data_1DC[0] == 0.0f && lbl_1_data_1DC[1] == 0.0f && lbl_1_data_1DC[2] == 0.0f) ? 0 : var_r31->unk00; var_r31->unk34.x = lbl_1_data_1DC[0] + 75.0 * (rand8() / 255.0); var_r31->unk34.y = lbl_1_data_1DC[1] + 75.0 * (rand8() / 255.0); var_r31->unk34.z = lbl_1_data_1DC[2] + 75.0 * (rand8() / 255.0); @@ -1523,14 +1523,14 @@ void fn_1_7DC4(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk30 = 0.785f; var_r31->unk2C = 40.0f; } - if (var_r31->unk00_s16 <= 100) { + if (var_r31->unk00 <= 100) { var_r31->unk34.y -= 3.0f; - var_r31->unk2C = ((var_r31->unk00_s16 > 50) ? (var_r31->unk00_s16 - 50) / 50.0 : 0.0) * (rand8() * 80 / 255.0); + var_r31->unk2C = ((var_r31->unk00 > 50) ? (var_r31->unk00 - 50) / 50.0 : 0.0) * (rand8() * 80 / 255.0); } - if (var_r31->unk00_s16 == 0) { + if (var_r31->unk00 == 0) { var_r31->unk2C = 0.0f; } - var_r31->unk00_s16 -= (var_r31->unk00_s16 > 0); + var_r31->unk00 -= (var_r31->unk00 > 0); } } diff --git a/src/REL/m449Dll/main.c b/src/REL/m449Dll/main.c index be902879..02d13d79 100644 --- a/src/REL/m449Dll/main.c +++ b/src/REL/m449Dll/main.c @@ -1697,7 +1697,7 @@ void fn_1_7F94(ModelData *model, ParticleData *particle, Mtx matrix) } } for (var_r31 = particle->unk_48, var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 == 1) { + if (var_r31->unk00 == 1) { var_f31 = ((frand() & 0xFF) * 0x168) >> 8; var_f30 = 0.5 + (1.5 * (rand8() / 256.0)); var_r31->unk08.x = 2.5 * (var_f30 * sind(var_f31)); @@ -1715,7 +1715,7 @@ void fn_1_7F94(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk40.a = 0xFF; var_r31->unk2C = 50.0f; } - if (var_r31->unk00_s16 < 0xF0) { + if (var_r31->unk00 < 0xF0) { VECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); var_r31->unk08.x *= 0.9f; var_r31->unk08.z *= 0.9f; @@ -1730,8 +1730,8 @@ void fn_1_7F94(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk2C = 0.0f; } } - var_r31->unk00_s16 += var_r31->unk00_s16 < 0x8000; - if (var_r31->unk00_s16 >= 0xF0) { + var_r31->unk00 += var_r31->unk00 < 0x8000; + if (var_r31->unk00 >= 0xF0) { var_r31->unk40.a = 0; var_r31->unk2C = 0.0f; } diff --git a/src/REL/m455Dll/stage.c b/src/REL/m455Dll/stage.c index c7873251..ff708c84 100644 --- a/src/REL/m455Dll/stage.c +++ b/src/REL/m455Dll/stage.c @@ -1096,7 +1096,7 @@ void fn_1_6A6C(omObjData *object) HsfanimStruct01 *data = particleP->unk_48; s32 j; for(j=0; junk_30; j++, data++) { - if(++data->unk00_s16 > data->unk02) { + if(++data->unk00 > data->unk02) { s32 alpha = data->unk40.a-1; if(alpha < 0) { data->unk2C = 0; @@ -1163,7 +1163,7 @@ s32 fn_1_6CB0(Vec *arg0, float arg1) temp_r30->unk08.x = temp_f31*(0.65f*(50.0*(temp_f28*sind(temp_f29)))); temp_r30->unk08.z = temp_f31*(0.65f*(50.0*(temp_f28*cosd(temp_f29)))); temp_r30->unk08.y = temp_f31*(50*temp_f26*temp_f25); - temp_r30->unk00_s16 = 0; + temp_r30->unk00 = 0; temp_r30->unk02 = ((s32)frand()%16)+45; temp_r30->unk30 = (s32)frand()%360; temp_r30->unk2C = 145; @@ -1280,10 +1280,10 @@ void fn_1_76B0(omObjData *object) if(temp_r30->unk2C <= 0.0f) { continue; } - if(++temp_r30->unk00_s16 > 360) { - temp_r30->unk00_s16 -= 360; + if(++temp_r30->unk00 > 360) { + temp_r30->unk00 -= 360; } - temp_r30->unk34.x += temp_r30->unk08.x*sind(2.0f*temp_r30->unk00_s16); + temp_r30->unk34.x += temp_r30->unk08.x*sind(2.0f*temp_r30->unk00); temp_r30->unk34.y += temp_r30->unk08.y; if(temp_r30->unk34.y >= 0.0f) { fn_1_6698(&temp_r30->unk34, 0.00625f*temp_r30->unk2C, 1, 15); @@ -1322,7 +1322,7 @@ s32 fn_1_79C8(Vec *pos, float scale) temp_r31->unk08.x = (1.5f+(0.2f*(0.007874016f*((s32)frand() & 0x7F))))*0.5f; temp_r31->unk08.z = (1.5f+(0.2f*(0.007874016f*((s32)frand() & 0x7F)))); temp_r31->unk08.y = (1.5f+(0.2f*(0.007874016f*((s32)frand() & 0x7F))))*2.0f; - temp_r31->unk00_s16 = (s32)frand()%360; + temp_r31->unk00 = (s32)frand()%360; temp_r31->unk2C = 20*scale; return i; } @@ -1804,4 +1804,4 @@ float fn_1_9F18(float start, float end, float max) } return angle; -} \ No newline at end of file +} diff --git a/src/REL/m456Dll/stage.c b/src/REL/m456Dll/stage.c index 072377d8..8e13a6cf 100644 --- a/src/REL/m456Dll/stage.c +++ b/src/REL/m456Dll/stage.c @@ -991,7 +991,7 @@ void fn_1_659C(omObjData *object) HsfanimStruct01 *data = particleP->unk_48; s32 j; for (j = 0; j < particleP->unk_30; j++, data++) { - if (++data->unk00_s16 > data->unk02) { + if (++data->unk00 > data->unk02) { s32 alpha = data->unk40.a - 1; if (alpha < 0) { data->unk2C = 0; @@ -1060,7 +1060,7 @@ s32 fn_1_67E0(Vec *arg0, float arg1) temp_r30->unk08.x = temp_f31 * (0.65f * (50.0 * (temp_f28 * sind(temp_f29)))); temp_r30->unk08.z = temp_f31 * (0.65f * (50.0 * (temp_f28 * cosd(temp_f29)))); temp_r30->unk08.y = temp_f31 * (50 * temp_f26 * temp_f25); - temp_r30->unk00_s16 = 0; + temp_r30->unk00 = 0; temp_r30->unk02 = ((s32)frand() % 16) + 45; temp_r30->unk30 = (s32)frand() % 360; temp_r30->unk2C = 145.0f; @@ -1174,10 +1174,10 @@ void fn_1_71E0(omObjData *object) if (temp_r30->unk2C <= 0.0f) { continue; } - if (++temp_r30->unk00_s16 > 360) { - temp_r30->unk00_s16 -= 360; + if (++temp_r30->unk00 > 360) { + temp_r30->unk00 -= 360; } - temp_r30->unk34.x += temp_r30->unk08.x * sind(2.0f * temp_r30->unk00_s16); + temp_r30->unk34.x += temp_r30->unk08.x * sind(2.0f * temp_r30->unk00); temp_r30->unk34.y += temp_r30->unk08.y; if (temp_r30->unk34.y >= 0.0f) { fn_1_61C8(&temp_r30->unk34, 0.00625f * temp_r30->unk2C, 1, REFRESH_RATE / 4); @@ -1221,7 +1221,7 @@ s32 fn_1_74F8(Vec *pos, float scale) temp_r31->unk08.z = (1.5f + (0.2f * (0.007874016f * ((s32)frand() & 0x7F)))); temp_r31->unk08.y = (1.5f + (0.2f * (0.007874016f * ((s32)frand() & 0x7F)))) * 2.0f; #endif - temp_r31->unk00_s16 = (s32)frand() % 360; + temp_r31->unk00 = (s32)frand() % 360; temp_r31->unk2C = 20 * scale; return i; } diff --git a/src/REL/m460Dll/map.c b/src/REL/m460Dll/map.c index 609dad13..15fa7f53 100644 --- a/src/REL/m460Dll/map.c +++ b/src/REL/m460Dll/map.c @@ -408,7 +408,7 @@ void fn_1_7B94(s32 arg0) var_r30 = Hu3DData[arg0].unk_120; for (var_r31 = var_r30->unk_48, var_r29 = 0; var_r29 < var_r30->unk_30; var_r29++, var_r31++) { - if (var_r31->unk00_s16 != 0) { + if (var_r31->unk00 != 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); switch (var_r31->unk02) { case 0: @@ -425,11 +425,11 @@ void fn_1_7B94(s32 arg0) var_r31->unk20 *= 0.995f; break; } - if (var_r31->unk00_s16 < 12.0f) { + if (var_r31->unk00 < 12.0f) { var_r31->unk20 = 0.9f * var_r31->unk20; } var_r31->unk40.a = var_r31->unk20; - if (--var_r31->unk00_s16 == 0) { + if (--var_r31->unk00 == 0) { var_r31->unk00 = 0; var_r31->unk2C = 0.0f; var_r31->unk40.a = 0; @@ -459,7 +459,7 @@ void fn_1_7DA8(omObjData *object, Vec *arg1, u32 arg2) } var_r27 = sp10[arg2]; for (var_r31 = var_r30->unk_48, var_r28 = 0; var_r28 < var_r30->unk_30; var_r28++, var_r31++) { - if (var_r31->unk00_s16 == 0) { + if (var_r31->unk00 == 0) { var_r31->unk02 = arg2; sp1C.x = 100.0f * ((0.0026f * frandmod(0x3E8)) - 1.3f); sp1C.y = 0.0f; @@ -468,7 +468,7 @@ void fn_1_7DA8(omObjData *object, Vec *arg1, u32 arg2) var_r31->unk30 = 0.0031415902f * frandmod(0x3E8); switch (arg2) { case 0: - var_r31->unk00_s16 = 60.0f * (0.8f + (0.0007f * frandmod(0x3E8))); + var_r31->unk00 = 60.0f * (0.8f + (0.0007f * frandmod(0x3E8))); var_r31->unk08.x = 1.6666667f * (0.000100000005f * frandmod(0x3E8) - 0.05f); var_r31->unk08.y = 1.6666667f * (0.05f + (0.00020000001f * frandmod(0x3E8))); var_r31->unk08.z = 1.6666667f * (0.1f + (0.0006f * frandmod(0x3E8))); diff --git a/src/REL/mstory3Dll/win_effect.c b/src/REL/mstory3Dll/win_effect.c index 48590c1b..2a86dd6c 100755 --- a/src/REL/mstory3Dll/win_effect.c +++ b/src/REL/mstory3Dll/win_effect.c @@ -253,7 +253,7 @@ void fn_1_1E820(ModelData* model, ParticleData* particle, Mtx matrix) { if (!var_r31->unk2C) { continue; } - if (var_r31->unk00_s16 == 0) { + if (var_r31->unk00 == 0) { PSVECAdd(&var_r31->unk08, &var_r31->unk34, &var_r31->unk34); var_r31->unk08.x *= 0.999f; var_r31->unk08.y -= 0.5f; @@ -262,19 +262,19 @@ void fn_1_1E820(ModelData* model, ParticleData* particle, Mtx matrix) { PSVECScale(&var_r31->unk08, &var_r31->unk08, 1.0 - ((var_r31->unk02 - (temp_r26 - temp_r26 / 5.0)) / (temp_r26 / 5.0))); } if (var_r31->unk02 == temp_r26) { - var_r31->unk00_s16++; + var_r31->unk00++; } if (var_r31->unk34.y <= 0.0f) { var_r31->unk08.y = 0.5f * -var_r31->unk08.y; var_r31->unk34.y = 0.0f; } - } else if (var_r31->unk00_s16 == 1) { + } else if (var_r31->unk00 == 1) { sp8 = temp_r28->unk00[var_r29]; PSVECSubtract(&sp8, &var_r31->unk34, &sp8); if (PSVECMag(&sp8) <= 1.0 + temp_f31) { var_r23++; var_r31->unk34 = temp_r28->unk00[var_r29]; - var_r31->unk00_s16++; + var_r31->unk00++; continue; } PSVECNormalize(&sp8, &sp8); @@ -286,7 +286,7 @@ void fn_1_1E820(ModelData* model, ParticleData* particle, Mtx matrix) { } else { var_r23++; } - if (var_r31->unk00_s16 >= 1) { + if (var_r31->unk00 >= 1) { var_r27 = var_r31->unk40.r; var_r27 += (var_r27 - 0xFF) / 20; if (var_r27 > 0xFF) { diff --git a/src/game/board/item.c b/src/game/board/item.c index 4386a4a7..d2341c9c 100755 --- a/src/game/board/item.c +++ b/src/game/board/item.c @@ -1942,7 +1942,7 @@ static void LampParticleUpdate(ModelData *model, ParticleData *particle, Mtx mat var_r31->unk2C = 25.0f; temp_f30 = 175.0f + frand8() * 0x50 * 0.003921569f; var_r31->unk40.r = var_r31->unk40.g = var_r31->unk40.b = temp_f30; - var_r31->unk00_s16 = 0; + var_r31->unk00 = 0; } } } @@ -1952,7 +1952,7 @@ static void LampParticleUpdate(ModelData *model, ParticleData *particle, Mtx mat var_r31 = particle->unk_48; for (i = 0; i < particle->unk_30; i++, var_r31++) { if (var_r31->unk2C != 0.0f) { - if (var_r31->unk00_s16 == 0) { + if (var_r31->unk00 == 0) { VECAdd(&var_r31->unk34, &var_r31->unk08, &var_r31->unk34); VECScale(&var_r31->unk08, &var_r31->unk08, 0.95f); var_r31->unk2C += 8.0f; @@ -1963,7 +1963,7 @@ static void LampParticleUpdate(ModelData *model, ParticleData *particle, Mtx mat var_r31->unk08.x = 6.0 * cosd(temp_f31); var_r31->unk08.y = -4.0f; var_r31->unk08.z = 6.0 * sind(temp_f31); - var_r31->unk00_s16 = 1; + var_r31->unk00 = 1; } var_r31->unk40.a = var_r31->unk14.y; } diff --git a/src/game/chrman.c b/src/game/chrman.c index aa090cf3..e98f50e1 100755 --- a/src/game/chrman.c +++ b/src/game/chrman.c @@ -911,7 +911,7 @@ static void UpdateEffect(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk40.a = var_r28; if (var_r31->unk2C) { if (temp_r30[i].unk00 & 1) { - var_r31->unk2C = var_r31->unk28 * (((var_r31->unk00_s16 + i) & 1) ? 1.0 : 0.5); + var_r31->unk2C = var_r31->unk28 * (((var_r31->unk00 + i) & 1) ? 1.0 : 0.5); } else { var_r31->unk2C = var_r31->unk28; @@ -921,7 +921,7 @@ static void UpdateEffect(ModelData *model, ParticleData *particle, Mtx matrix) var_r31->unk2C = 0.0f; } } - var_r31->unk00_s16++; + var_r31->unk00++; } else { switch (var_r31->unk02) { @@ -947,11 +947,11 @@ static void RotateEffect(HsfanimStruct01 *arg0) float var_f31; temp_r30 = &Hu3DData[(s32)arg0->unk08.x]; - if (arg0->unk00_s16 < 8) { - var_f31 = 0.3 + sind(40.0f + 10.0f * (arg0->unk00_s16 + 1)); + if (arg0->unk00 < 8) { + var_f31 = 0.3 + sind(40.0f + 10.0f * (arg0->unk00 + 1)); arg0->unk2C = 50.0f * var_f31 * temp_r30->scale.x; arg0->unk40.a = 0xFF; - var_f31 = 0.3 + sind(15.0f * (arg0->unk00_s16 + 1)); + var_f31 = 0.3 + sind(15.0f * (arg0->unk00 + 1)); } else { var_f31 = 0.3 + sind(135); @@ -960,14 +960,14 @@ static void RotateEffect(HsfanimStruct01 *arg0) arg0->unk34.x = temp_r30->pos.x + arg0->unk14.x * var_f31; arg0->unk34.y = temp_r30->pos.y + arg0->unk08.y * temp_r30->scale.x + arg0->unk14.y * var_f31; arg0->unk34.z = temp_r30->pos.z + arg0->unk14.z * var_f31; - if (arg0->unk00_s16 > 0x14) { + if (arg0->unk00 > 0x14) { arg0->unk40.a -= 0x20; arg0->unk2C -= 8.0f * temp_r30->scale.x; if (arg0->unk2C < 0.0f) { arg0->unk2C = 0.0f; } } - arg0->unk00_s16++; + arg0->unk00++; } static float voiceParam[16] @@ -984,7 +984,7 @@ static void PlayEffectSound(HsfanimStruct01 *arg0) temp_r28 = arg0->unk08.x; temp_r29 = &charInstance[temp_r28]; temp_r30 = &Hu3DData[temp_r29->unk00]; - if (arg0->unk00_s16 < 0x14 && arg0->unk2C < 40.0f * temp_r30->scale.x) { + if (arg0->unk00 < 0x14 && arg0->unk2C < 40.0f * temp_r30->scale.x) { arg0->unk2C += 4.0f * temp_r30->scale.x; } arg0->unk40.a = 0xFF; @@ -994,15 +994,15 @@ static void PlayEffectSound(HsfanimStruct01 *arg0) else { var_r25 = voiceParam[temp_r28 * 2 + 1]; } - temp_r26 = (arg0->unk00_s16 * 5) % 360; + temp_r26 = (arg0->unk00 * 5) % 360; arg0->unk34.x = temp_r30->pos.x + 40.0 * sind(arg0->unk08.y + temp_r26) * temp_r30->scale.x; arg0->unk34.y = temp_r30->pos.y + var_r25 * temp_r30->scale.x; arg0->unk34.z = temp_r30->pos.z + 40.0 * cosd(arg0->unk08.y + temp_r26) * temp_r30->scale.x; - arg0->unk00_s16++; - if (arg0->unk00_s16 >= 0x8F) { - arg0->unk00_s16 = 0x48; + arg0->unk00++; + if (arg0->unk00 >= 0x8F) { + arg0->unk00 = 0x48; } - if (temp_r29->unk04 != 0x15 && temp_r29->unk04 != 0x16 && temp_r29->unk04 != 0x79 && arg0->unk00_s16 > 0x1E) { + if (temp_r29->unk04 != 0x15 && temp_r29->unk04 != 0x16 && temp_r29->unk04 != 0x79 && arg0->unk00 > 0x1E) { arg0->unk2C -= 4.0f * temp_r30->scale.x; if (arg0->unk2C < 0.0f) { arg0->unk2C = 0.0f; @@ -1501,7 +1501,7 @@ static void OrbitEffect(HsfanimStruct01 *arg0) float var_f30; s16 temp_r30; - var_f30 = 20.0f + 3.75f * arg0->unk00_s16; + var_f30 = 20.0f + 3.75f * arg0->unk00; if (var_f30 > 90.0f) { var_f30 = 90.0f; } @@ -1514,7 +1514,7 @@ static void OrbitEffect(HsfanimStruct01 *arg0) if (arg0->unk20 < 1.0f) { arg0->unk20 = 1.0f; } - if (arg0->unk00_s16 > 8) { + if (arg0->unk00 > 8) { temp_r30 = arg0->unk40.a; temp_r30 -= 8; if (temp_r30 < 0) { @@ -1525,7 +1525,7 @@ static void OrbitEffect(HsfanimStruct01 *arg0) arg0->unk40.a = temp_r30; } } - arg0->unk00_s16++; + arg0->unk00++; } static EffectParamData coinParticleParam diff --git a/src/game/hsfanim.c b/src/game/hsfanim.c index 7de7763f..b5a73d37 100755 --- a/src/game/hsfanim.c +++ b/src/game/hsfanim.c @@ -55,7 +55,7 @@ s16 Hu3DAnimCreate(void *arg0, s16 arg1, char *arg2) { Hu3DTexAnimDataStruct *var_r31; HsfAttribute *var_r29; HsfData *temp_r27; - HsfanimStruct01 *var_r30; + HsfdrawStruct01 *var_r30; s16 i; s16 var_r25; s16 var_r28; @@ -75,7 +75,7 @@ s16 Hu3DAnimCreate(void *arg0, s16 arg1, char *arg2) { for (i = var_r25 = 0; i < temp_r27->attributeCnt; i++, var_r29++) { if (strcmp(arg2, var_r29->bitmap->name) == 0) { if (!var_r29->unk04) { - var_r30 = HuMemDirectMallocNum(HEAP_DATA, sizeof(HsfanimStruct01), (u32) Hu3DData[arg1].unk_48); + var_r30 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r30), (u32) Hu3DData[arg1].unk_48); var_r29->unk04 = var_r30; var_r30->unk00 = 0; } else { @@ -84,7 +84,7 @@ s16 Hu3DAnimCreate(void *arg0, s16 arg1, char *arg2) { var_r30->unk00 |= 1; var_r30->unk02 = var_r28; var_r30->unk2C = var_r30->unk30 = 1.0f; - var_r30->unk34.x = var_r30->unk34.y = 0.0f; + var_r30->unk34 = var_r30->unk38 = 0.0f; var_r25++; } } @@ -112,7 +112,7 @@ s16 Hu3DAnimLink(s16 arg0, s16 arg1, char *arg2) { AnimData *temp_r4; HsfAttribute *var_r29; HsfData *temp_r27; - HsfanimStruct01 *var_r30; + HsfdrawStruct01 *var_r30; s16 var_r28; s16 i; s16 var_r25; @@ -132,14 +132,14 @@ s16 Hu3DAnimLink(s16 arg0, s16 arg1, char *arg2) { for (i = var_r25 = 0; i < temp_r27->attributeCnt; i++, var_r29++) { if (strcmp(arg2, var_r29->bitmap->name) == 0) { if (!var_r29->unk04) { - var_r30 = HuMemDirectMallocNum(HEAP_DATA, sizeof(HsfanimStruct01), (u32) Hu3DData[arg1].unk_48); + var_r30 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r30), (u32) Hu3DData[arg1].unk_48); var_r29->unk04 = var_r30; } else { var_r30 = var_r29->unk04; } var_r30->unk02 = var_r28; var_r30->unk2C = var_r30->unk30 = 1.0f; - var_r30->unk34.x = var_r30->unk34.y = 0.0f; + var_r30->unk34 = var_r30->unk38 = 0.0f; var_r25++; } } @@ -162,7 +162,7 @@ void Hu3DAnimKill(s16 arg0) { Hu3DTexAnimDataStruct *temp_r31 = &Hu3DTexAnimData[arg0]; HsfData *temp_r28 = Hu3DData[temp_r31->unk06].hsfData; HsfAttribute *var_r30; - HsfanimStruct01 *temp_r29; + HsfdrawStruct01 *temp_r29; s16 i; if (temp_r28) { @@ -242,7 +242,7 @@ void Hu3DAnmNoSet(s16 arg0, u16 arg1) { } s32 Hu3DAnimSet(ModelData *arg0, HsfAttribute *arg1, s16 arg2) { - HsfanimStruct01 *temp_r30; + HsfdrawStruct01 *temp_r30; Hu3DTexAnimDataStruct *temp_r29; AnimData *temp_r27; AnimBmpData *temp_r28; @@ -268,8 +268,8 @@ s32 Hu3DAnimSet(ModelData *arg0, HsfAttribute *arg1, s16 arg2) { (arg0->attr & HU3D_ATTR_TEX_NEAR) ? GX_NEAR : GX_LINEAR); temp_r30->unk2C = (float) temp_r31->sizeX / temp_r28->sizeX; temp_r30->unk30 = (float) temp_r31->sizeY / temp_r28->sizeY; - temp_r30->unk34.x = (float) temp_r31->startX / temp_r28->sizeX; - temp_r30->unk34.y = (float) temp_r31->startY / temp_r28->sizeY; + temp_r30->unk34 = (float) temp_r31->startX / temp_r28->sizeX; + temp_r30->unk38 = (float) temp_r31->startY / temp_r28->sizeY; return 1; } @@ -359,7 +359,7 @@ s16 Hu3DTexScrollCreate(s16 arg0, char *arg1) { Hu3DTexScrDataStruct *var_r31; HsfData *temp_r27; HsfAttribute *var_r29; - HsfanimStruct01 *var_r30; + HsfdrawStruct01 *var_r30; s16 i; s16 var_r25; s16 var_r28; @@ -379,7 +379,7 @@ s16 Hu3DTexScrollCreate(s16 arg0, char *arg1) { for (i = var_r25 = 0; i < temp_r27->attributeCnt; i++, var_r29++) { if (strcmp(arg1, var_r29->bitmap->name) == 0) { if (!var_r29->unk04) { - var_r30 = HuMemDirectMallocNum(HEAP_DATA, sizeof(HsfanimStruct01), (u32) Hu3DData[arg0].unk_48); + var_r30 = HuMemDirectMallocNum(HEAP_DATA, sizeof(*var_r30), (u32) Hu3DData[arg0].unk_48); var_r29->unk04 = var_r30; var_r30->unk00 = 0; } else { @@ -388,7 +388,7 @@ s16 Hu3DTexScrollCreate(s16 arg0, char *arg1) { var_r30->unk00 |= 2; var_r30->unk04 = var_r28; var_r30->unk2C = var_r30->unk30 = 1.0f; - var_r30->unk34.x = var_r30->unk34.y = 0.0f; + var_r30->unk34 = var_r30->unk38 = 0.0f; var_r25++; } } @@ -408,7 +408,7 @@ void Hu3DTexScrollKill(s16 arg0) { Hu3DTexScrDataStruct *temp_r28 = &Hu3DTexScrData[arg0]; HsfData *temp_r29 = Hu3DData[temp_r28->unk02].hsfData; HsfAttribute *var_r31; - HsfanimStruct01 *temp_r30; + HsfdrawStruct01 *temp_r30; s16 i; if (temp_r29) { @@ -1241,7 +1241,7 @@ static void ParManHook(ModelData *model, ParticleData *particle, Mtx matrix) { var_r29->unk2C = var_r29->unk28; } if (!(temp_r28->unk02 & 0x80)) { - sp8 = var_r29->unk00_s16; + sp8 = var_r29->unk00; var_r29->unk34.x += var_r29->unk08.x + var_r29->unk14.x; var_r29->unk34.y += var_r29->unk08.y + var_r29->unk14.y; var_r29->unk34.z += var_r29->unk08.z + var_r29->unk14.z; @@ -1261,7 +1261,7 @@ static void ParManHook(ModelData *model, ParticleData *particle, Mtx matrix) { } } var_r29->unk28 *= temp_r26->unk28; - var_f30 = (float) var_r29->unk00_s16 / temp_r26->unk00; + var_f30 = (float) var_r29->unk00 / temp_r26->unk00; if (var_f30 > 1.0f) { var_f30 = 1.0f; } @@ -1272,10 +1272,10 @@ static void ParManHook(ModelData *model, ParticleData *particle, Mtx matrix) { var_r29->unk40.g = temp_r27->g + var_f30 * (temp_r24->g - temp_r27->g); var_r29->unk40.b = temp_r27->b + var_f30 * (temp_r24->b - temp_r27->b); var_r29->unk40.a = temp_r27->a + var_f30 * (temp_r24->a - temp_r27->a); - if (var_r29->unk2C < 0.01 || var_r29->unk00_s16 >= temp_r26->unk00) { + if (var_r29->unk2C < 0.01 || var_r29->unk00 >= temp_r26->unk00) { var_r29->unk2C = 0.0f; } - var_r29->unk00_s16++; + var_r29->unk00++; } } } From 2309176a5cddc65c145c4f3a682046fa1940bb3c Mon Sep 17 00:00:00 2001 From: mrshigure Date: Mon, 27 Jan 2025 16:50:48 -0800 Subject: [PATCH 142/178] Making some MSL_C progress (#549) --- configure.py | 42 +-- .../Msl/MSL_C/MSL_Common/ansi_files.h | 10 +- .../Msl/MSL_C/MSL_Common/stdio.h | 6 +- src/MSL_C.PPCEABI.bare.H/FILE_POS.c | 97 ++++++ src/MSL_C.PPCEABI.bare.H/ansi_files.c | 198 ++++++----- src/MSL_C.PPCEABI.bare.H/arith.c | 13 + src/MSL_C.PPCEABI.bare.H/direct_io.c | 222 ++++++------ src/MSL_C.PPCEABI.bare.H/e_acos.c | 2 +- src/MSL_C.PPCEABI.bare.H/e_asin.c | 2 +- src/MSL_C.PPCEABI.bare.H/e_pow.c | 4 +- src/MSL_C.PPCEABI.bare.H/e_rem_pio2.c | 175 ++++++++++ src/MSL_C.PPCEABI.bare.H/file_io.c | 58 ++++ src/MSL_C.PPCEABI.bare.H/k_cos.c | 91 +++++ src/MSL_C.PPCEABI.bare.H/k_rem_pio2.c | 316 ++++++++++++++++++ src/MSL_C.PPCEABI.bare.H/k_sin.c | 73 ++++ src/MSL_C.PPCEABI.bare.H/k_tan.c | 134 ++++++++ src/MSL_C.PPCEABI.bare.H/mbstring.c | 76 ++++- src/MSL_C.PPCEABI.bare.H/misc_io.c | 7 +- src/MSL_C.PPCEABI.bare.H/s_floor.c | 78 +++++ src/MSL_C.PPCEABI.bare.H/s_ldexp.c | 55 ++- src/MSL_C.PPCEABI.bare.H/signal.c | 26 ++ src/MSL_C.PPCEABI.bare.H/uart_console_io.c | 32 ++ src/MSL_C.PPCEABI.bare.H/wchar_io.c | 2 +- 23 files changed, 1456 insertions(+), 263 deletions(-) create mode 100755 src/MSL_C.PPCEABI.bare.H/FILE_POS.c create mode 100755 src/MSL_C.PPCEABI.bare.H/arith.c create mode 100755 src/MSL_C.PPCEABI.bare.H/e_rem_pio2.c create mode 100755 src/MSL_C.PPCEABI.bare.H/file_io.c create mode 100755 src/MSL_C.PPCEABI.bare.H/k_cos.c create mode 100755 src/MSL_C.PPCEABI.bare.H/k_rem_pio2.c create mode 100755 src/MSL_C.PPCEABI.bare.H/k_sin.c create mode 100755 src/MSL_C.PPCEABI.bare.H/k_tan.c create mode 100755 src/MSL_C.PPCEABI.bare.H/s_floor.c create mode 100755 src/MSL_C.PPCEABI.bare.H/signal.c create mode 100755 src/MSL_C.PPCEABI.bare.H/uart_console_io.c diff --git a/configure.py b/configure.py index 613dd441..c95c4390 100644 --- a/configure.py +++ b/configure.py @@ -676,47 +676,47 @@ config.libs = [ }, { "lib": "MSL_C.PPCEABI.bare.H", - "mw_version": config.linker_version, + "mw_version": "GC/1.3", "cflags": cflags_msl, "host": False, "objects": [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/abort_exit.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/alloc.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/errno.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/ansi_files.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/ansi_files.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/ansi_fp.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/arith.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/buffer_io.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/arith.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/buffer_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/ctype.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/direct_io.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/file_io.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/FILE_POS.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/mbstring.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/direct_io.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/file_io.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/FILE_POS.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/mbstring.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/mem.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/mem_funcs.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/misc_io.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/mem_funcs.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/misc_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/printf.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/float.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/signal.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/string.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/uart_console_io.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/wchar_io.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/uart_console_io.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/wchar_io.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_acos.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_asin.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_atan2.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_fmod.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_pow.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/e_rem_pio2.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/k_cos.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/k_rem_pio2.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/k_sin.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/k_tan.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_atan.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_pow.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_rem_pio2.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/k_cos.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/k_rem_pio2.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/k_sin.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/k_tan.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_atan.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_copysign.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_cos.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_floor.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_floor.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_frexp.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/s_ldexp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_ldexp.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_modf.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_sin.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/s_tan.c"), diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h index f06c55df..d101a4bb 100644 --- a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h @@ -85,6 +85,7 @@ typedef struct _FILE { file_modes file_mode; file_states file_state; + char is_dynamically_allocated; char char_buffer; char char_buffer_overflow; char ungetc_buffer[2]; @@ -104,19 +105,14 @@ typedef struct _FILE { __io_proc write_fn; __close_proc close_fn; __idle_proc idle_fn; + struct _FILE* next_file_struct; } FILE; -typedef struct _files { - FILE _stdin; - FILE _stdout; - FILE _stderr; -} files; - #define _IONBF 0 #define _IOLBF 1 #define _IOFBF 2 -extern files __files; +extern FILE __files[]; extern int __close_console(__file_handle file); extern int __write_console(__file_handle file, unsigned char* buf, size_t* count, __idle_proc idle_fn); diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h index 89806588..01097a0c 100644 --- a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/stdio.h @@ -6,8 +6,8 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/printf.h" // IWYU pragma: export #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/extras.h" // IWYU pragma: export -#define stdin (&__files._stdin) -#define stdout (&__files._stdout) -#define stderr (&__files._stderr) +#define stdin (&__files[0]) +#define stdout (&__files[1]) +#define stderr (&__files[2]) #endif diff --git a/src/MSL_C.PPCEABI.bare.H/FILE_POS.c b/src/MSL_C.PPCEABI.bare.H/FILE_POS.c new file mode 100755 index 00000000..f0b5e933 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/FILE_POS.c @@ -0,0 +1,97 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h" + +inline fpos_t _ftell(FILE* file) { + int charsInUndoBuffer = 0; + fpos_t position; + unsigned char tmp_kind = file->file_mode.file_kind; + + if (!(tmp_kind == __disk_file || tmp_kind == __console_file) || file->file_state.error) { + errno = EFPOS; + return -1; + } + + if (file->file_state.io_state == __neutral) + return (file->position); + + position = file->buffer_position + (file->buffer_ptr - file->buffer); + + if (file->file_state.io_state >= __rereading) { + charsInUndoBuffer = file->file_state.io_state - __rereading + 1; + position -= charsInUndoBuffer; + } + + return (position); +} + +long ftell(FILE* file) { + long retval; + + retval = (long)_ftell(file); + + return retval; +} + +int _fseek(FILE* file, fpos_t offset, int file_mode) { + fpos_t position; + __pos_proc pos_proc; + unsigned char tmp_kind = file->file_mode.file_kind; + + if (!(tmp_kind == __disk_file) || file->file_state.error) { + errno = EFPOS; + return (-1); + } + + if (file->file_state.io_state == __writing) { + if (__flush_buffer(file, NULL) != __no_io_error) { + set_error(file); + errno = EFPOS; + return (-1); + } + } + + if (file_mode == SEEK_CUR) { + file_mode = SEEK_SET; + if ((position = _ftell(file)) < 0) + position = 0; + offset += position; + } + + if ((file_mode != SEEK_END) && (file->file_mode.io_mode != __read_write) && + ((file->file_state.io_state == __reading) || (file->file_state.io_state == __rereading))) + { + if (offset >= file->position || offset < file->buffer_position) { + file->file_state.io_state = __neutral; + } else { + file->buffer_ptr = file->buffer + (offset - file->buffer_position); + file->buffer_length = file->position - offset; + file->file_state.io_state = __reading; + } + } else { + file->file_state.io_state = __neutral; + } + + if (file->file_state.io_state == __neutral) { + if ((pos_proc = file->position_fn) != NULL && pos_proc(file->handle, &offset, file_mode, file->idle_fn)) { + set_error(file); + errno = EFPOS; + return -1; + } + + file->file_state.eof = 0; + file->position = offset; + file->buffer_length = 0; + } + + return 0; +} + +int fseek(FILE * file, long offset, int file_mode) +{ + fpos_t real_offset = (fpos_t)offset; + int retval; + + retval = _fseek(file, real_offset, file_mode); + + return(retval); +} diff --git a/src/MSL_C.PPCEABI.bare.H/ansi_files.c b/src/MSL_C.PPCEABI.bare.H/ansi_files.c index f0113bf4..76ffbe61 100644 --- a/src/MSL_C.PPCEABI.bare.H/ansi_files.c +++ b/src/MSL_C.PPCEABI.bare.H/ansi_files.c @@ -1,95 +1,111 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h" -extern files __files = { - { - 0, - 0, - 1, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - { 0, 0 }, - { 0, 0 }, - 0, - (unsigned char*)&__files._stdin.char_buffer, - 1, - (unsigned char*)&__files._stdin.char_buffer, - 0, - 0, - 0, - 0, - NULL, - __read_console, - __write_console, - __close_console, - NULL, - }, - { - 0, - 0, - 2, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - { 0, 0 }, - { 0, 0 }, - 0, - (unsigned char*)&__files._stdout.char_buffer, - 1, - (unsigned char*)&__files._stdout.char_buffer, - 0, - 0, - 0, - 0, - NULL, - __read_console, - __write_console, - __close_console, - NULL, - }, - { - 0, - 0, - 2, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - { 0, 0 }, - { 0, 0 }, - 0, - (unsigned char*)&__files._stderr.char_buffer, - 1, - (unsigned char*)&__files._stderr.char_buffer, - 0, - 0, - 0, - 0, - NULL, - __read_console, - __write_console, - __close_console, - NULL, - }, +static unsigned char stdin_buff[0x100]; +static unsigned char stdout_buff[0x100]; +static unsigned char stderr_buff[0x100]; + +FILE __files[4] = { + {0, + {0, 1, 1, 2, 0}, + {0, 0, 0, 0}, + 0, + 0, + 0, + {0, 0}, + {0, 0}, + 0, + stdin_buff, + sizeof(stdin_buff), + stdin_buff, + 0, + 0, + 0, + 0, + NULL, + &__read_console, + &__write_console, + &__close_console, + 0, + &__files[1]}, + {1, + {0, 2, 1, 2, 0}, + {0, 0, 0, 0}, + 0, + 0, + 0, + {0, 0}, + {0, 0}, + 0, + stdout_buff, + sizeof(stdout_buff), + stdout_buff, + 0, + 0, + 0, + 0, + NULL, + &__read_console, + &__write_console, + &__close_console, + 0, + &__files[2]}, + {2, + {0, 2, 0, 2, 0}, + {0, 0, 0, 0}, + 0, + 0, + 0, + {0, 0}, + {0, 0}, + 0, + stderr_buff, + sizeof(stderr_buff), + stderr_buff, + 0, + 0, + 0, + 0, + NULL, + &__read_console, + &__write_console, + &__close_console, + 0, + &__files[3]}, }; + +void __close_all() { + FILE* p = &__files[0]; + FILE* plast; + + while (p != NULL) { + if (p->file_mode.file_kind != __closed_file) { + fclose(p); + } + + plast = p; + p = p->next_file_struct; + if (plast->is_dynamically_allocated) + free(plast); + else { + plast->file_mode.file_kind = __string_file; + if ((p != NULL) && p->is_dynamically_allocated) + plast->next_file_struct = NULL; + } + } +} + +unsigned int __flush_all() { + unsigned int retval = 0; + FILE* __stream; + + __stream = &__files[0]; + while (__stream) { + if ((__stream->file_mode.file_kind) && (fflush(__stream))) { + retval = -1; + } + __stream = __stream->next_file_struct; + }; + + return retval; +} diff --git a/src/MSL_C.PPCEABI.bare.H/arith.c b/src/MSL_C.PPCEABI.bare.H/arith.c new file mode 100755 index 00000000..974c95c2 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/arith.c @@ -0,0 +1,13 @@ +int abs(int n) { + if (n < 0) + return (-n); + else + return (n); +} + +long labs(long n) { + if (n < 0) + return (-n); + else + return (n); +} diff --git a/src/MSL_C.PPCEABI.bare.H/direct_io.c b/src/MSL_C.PPCEABI.bare.H/direct_io.c index 51184220..4cfa5184 100644 --- a/src/MSL_C.PPCEABI.bare.H/direct_io.c +++ b/src/MSL_C.PPCEABI.bare.H/direct_io.c @@ -1,114 +1,114 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/direct_io.h" -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/buffer_io.h" -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/misc_io.h" -#include "string.h" -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/wchar_io.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" -size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream) -{ - unsigned char* write_ptr; - size_t num_bytes, bytes_to_go, bytes_written; - int ioresult, always_buffer; - - if (fwide(stream, 0) == 0) - fwide(stream, -1); - - bytes_to_go = size * count; - - if (!bytes_to_go || stream->file_state.error - || stream->file_mode.file_kind == __closed_file) - return 0; - - if ((int)stream->file_mode.file_kind == __console_file) - __stdio_atexit(); - - always_buffer = !stream->file_mode.binary_io - || (int)stream->file_mode.file_kind == __string_file - || stream->file_mode.buffer_mode == _IOFBF - || stream->file_mode.buffer_mode == _IOLBF; - - if (stream->file_state.io_state == __neutral) { - if (stream->file_mode.io_mode & __write) { - stream->file_state.io_state = __writing; - - __prep_buffer(stream); - } - } - - if (stream->file_state.io_state != __writing) { - set_error(stream); - return 0; - } - - write_ptr = (unsigned char*)buffer; - bytes_written = 0; - - if (bytes_to_go - && (stream->buffer_ptr != stream->buffer || always_buffer)) { - stream->buffer_length - = stream->buffer_size - (stream->buffer_ptr - stream->buffer); - - do { - unsigned char* newline = NULL; - - num_bytes = stream->buffer_length; - - if (num_bytes > bytes_to_go) - num_bytes = bytes_to_go; - - if (num_bytes) { - memcpy(stream->buffer_ptr, write_ptr, num_bytes); - - write_ptr += num_bytes; - bytes_written += num_bytes; - bytes_to_go -= num_bytes; - - stream->buffer_ptr += num_bytes; - stream->buffer_length -= num_bytes; - } - - if (!stream->buffer_length - && (int)stream->file_mode.file_kind == __string_file) { - bytes_written += bytes_to_go; - break; - } - - if (!stream->buffer_length || newline != NULL - || (stream->file_mode.buffer_mode == _IONBF)) { - ioresult = __flush_buffer(stream, NULL); - - if (ioresult) { - set_error(stream); - bytes_to_go = 0; - break; - } - } - } while (bytes_to_go && always_buffer); - } - - if (bytes_to_go && !always_buffer) { - unsigned char* save_buffer = stream->buffer; - size_t save_size = stream->buffer_size; - - stream->buffer = write_ptr; - stream->buffer_size = bytes_to_go; - stream->buffer_ptr = write_ptr + bytes_to_go; - - if (__flush_buffer(stream, &num_bytes) != __no_io_error) - set_error(stream); - - bytes_written += num_bytes; - - stream->buffer = save_buffer; - stream->buffer_size = save_size; - - __prep_buffer(stream); - - stream->buffer_length = 0; - } - - if (stream->file_mode.buffer_mode != _IOFBF) - stream->buffer_length = 0; - - return ((bytes_written + size - 1) / size); +size_t fwrite(const void* ptr, size_t memb_size, size_t num_memb, FILE* file) { + size_t retval; + retval = __fwrite(ptr, memb_size, num_memb, file); + return (retval); +} + +size_t __fwrite(const void* ptr, size_t memb_size, size_t num_memb, FILE* file) { + unsigned char* write_ptr; + size_t num_bytes, bytes_to_go, bytes_written; + int ioresult, always_buffer; + +#ifndef __NO_WIDE_CHAR + if (fwide(file, 0) == 0) + fwide(file, -1); +#endif + + bytes_to_go = memb_size * num_memb; + + if (!bytes_to_go || file->file_state.error || file->file_mode.file_kind == __closed_file) + return 0; + + if (file->file_mode.file_kind == __console_file) + __stdio_atexit(); + + always_buffer = + !file->file_mode.binary_io || file->file_mode.buffer_mode == _IOFBF || file->file_mode.buffer_mode == _IOLBF; + + if (file->file_state.io_state == __neutral) { + if (file->file_mode.io_mode & __write) { + if (file->file_mode.io_mode & __append) { + if (fseek(file, 0, SEEK_END)) + return 0; + } + file->file_state.io_state = __writing; + + __prep_buffer(file); + } + } + + if (file->file_state.io_state != __writing) { + set_error(file); + return 0; + } + + write_ptr = (unsigned char*)ptr; + bytes_written = 0; + + if (bytes_to_go && (file->buffer_ptr != file->buffer || always_buffer)) { + file->buffer_length = file->buffer_size - (file->buffer_ptr - file->buffer); + + do { + unsigned char* newline = NULL; + + num_bytes = file->buffer_length; + + if (num_bytes > bytes_to_go) + num_bytes = bytes_to_go; + if (file->file_mode.buffer_mode == _IOLBF && num_bytes) + if ((newline = (unsigned char*)__memrchr(write_ptr, '\n', num_bytes)) != NULL) + num_bytes = newline + 1 - write_ptr; + + if (num_bytes) { + memcpy(file->buffer_ptr, write_ptr, num_bytes); + + write_ptr += num_bytes; + bytes_written += num_bytes; + bytes_to_go -= num_bytes; + + file->buffer_ptr += num_bytes; + file->buffer_length -= num_bytes; + } + if (!file->buffer_length || newline != NULL || + (file->file_mode.buffer_mode == _IONBF)) + { + ioresult = __flush_buffer(file, NULL); + + if (ioresult) { + set_error(file); + bytes_to_go = 0; + break; + } + } + } while (bytes_to_go && always_buffer); + } + + if (bytes_to_go && !always_buffer) { + unsigned char* save_buffer = file->buffer; + size_t save_size = file->buffer_size; + + file->buffer = write_ptr; + file->buffer_size = bytes_to_go; + file->buffer_ptr = write_ptr + bytes_to_go; + + if (__flush_buffer(file, &num_bytes) != __no_io_error) + set_error(file); + + bytes_written += num_bytes; + + file->buffer = save_buffer; + file->buffer_size = save_size; + + __prep_buffer(file); + + file->buffer_length = 0; + } + + if (file->file_mode.buffer_mode != _IOFBF) + file->buffer_length = 0; + + return ((bytes_written + memb_size - 1) / memb_size); } diff --git a/src/MSL_C.PPCEABI.bare.H/e_acos.c b/src/MSL_C.PPCEABI.bare.H/e_acos.c index 4842c54b..01bba5e0 100644 --- a/src/MSL_C.PPCEABI.bare.H/e_acos.c +++ b/src/MSL_C.PPCEABI.bare.H/e_acos.c @@ -1,5 +1,5 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" -#include "math.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h" #ifdef __STDC__ static const double diff --git a/src/MSL_C.PPCEABI.bare.H/e_asin.c b/src/MSL_C.PPCEABI.bare.H/e_asin.c index 4abcf49d..743d78d5 100644 --- a/src/MSL_C.PPCEABI.bare.H/e_asin.c +++ b/src/MSL_C.PPCEABI.bare.H/e_asin.c @@ -1,5 +1,5 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" -#include "math.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h" #ifdef __STDC__ static const double diff --git a/src/MSL_C.PPCEABI.bare.H/e_pow.c b/src/MSL_C.PPCEABI.bare.H/e_pow.c index 47b8f4e8..55b9b1c1 100644 --- a/src/MSL_C.PPCEABI.bare.H/e_pow.c +++ b/src/MSL_C.PPCEABI.bare.H/e_pow.c @@ -57,7 +57,7 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h" -#include "math.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h" #ifdef __STDC__ static const double @@ -302,7 +302,7 @@ ivln2_l = 1.92596299112661746887e-08; /* 0x3E54AE0B, 0xF85DDF44 =1/ln2 tail*/ z = one-(r-z); j = __HI(z); j += (n<<20); - if((j>>20)<=0) z = scalbn(z,n); /* subnormal output */ + if((j>>20)<=0) z = ldexp(z,n); /* subnormal output */ else __HI(z) += (n<<20); return s*z; } diff --git a/src/MSL_C.PPCEABI.bare.H/e_rem_pio2.c b/src/MSL_C.PPCEABI.bare.H/e_rem_pio2.c new file mode 100755 index 00000000..ee1a50fa --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/e_rem_pio2.c @@ -0,0 +1,175 @@ +/* @(#)e_rem_pio2.c 1.4 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + * + */ + +/* __ieee754_rem_pio2(x,y) + * + * return the remainder of x rem pi/2 in y[0]+y[1] + * use __kernel_rem_pio2() + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h" + +/* + * Table of constants for 2/pi, 396 Hex digits (476 decimal) of 2/pi + */ +#ifdef __STDC__ +static const int two_over_pi[] = { +#else +static int two_over_pi[] = { +#endif +0xA2F983, 0x6E4E44, 0x1529FC, 0x2757D1, 0xF534DD, 0xC0DB62, +0x95993C, 0x439041, 0xFE5163, 0xABDEBB, 0xC561B7, 0x246E3A, +0x424DD2, 0xE00649, 0x2EEA09, 0xD1921C, 0xFE1DEB, 0x1CB129, +0xA73EE8, 0x8235F5, 0x2EBB44, 0x84E99C, 0x7026B4, 0x5F7E41, +0x3991D6, 0x398353, 0x39F49C, 0x845F8B, 0xBDF928, 0x3B1FF8, +0x97FFDE, 0x05980F, 0xEF2F11, 0x8B5A0A, 0x6D1F6D, 0x367ECF, +0x27CB09, 0xB74F46, 0x3F669E, 0x5FEA2D, 0x7527BA, 0xC7EBE5, +0xF17B3D, 0x0739F7, 0x8A5292, 0xEA6BFB, 0x5FB11F, 0x8D5D08, +0x560330, 0x46FC7B, 0x6BABF0, 0xCFBC20, 0x9AF436, 0x1DA9E3, +0x91615E, 0xE61B08, 0x659985, 0x5F14A0, 0x68408D, 0xFFD880, +0x4D7327, 0x310606, 0x1556CA, 0x73A8C9, 0x60E27B, 0xC08C6B, +}; + +#ifdef __STDC__ +static const int npio2_hw[] = { +#else +static int npio2_hw[] = { +#endif +0x3FF921FB, 0x400921FB, 0x4012D97C, 0x401921FB, 0x401F6A7A, 0x4022D97C, +0x4025FDBB, 0x402921FB, 0x402C463A, 0x402F6A7A, 0x4031475C, 0x4032D97C, +0x40346B9C, 0x4035FDBB, 0x40378FDB, 0x403921FB, 0x403AB41B, 0x403C463A, +0x403DD85A, 0x403F6A7A, 0x40407E4C, 0x4041475C, 0x4042106C, 0x4042D97C, +0x4043A28C, 0x40446B9C, 0x404534AC, 0x4045FDBB, 0x4046C6CB, 0x40478FDB, +0x404858EB, 0x404921FB, +}; + +/* + * invpio2: 53 bits of 2/pi + * pio2_1: first 33 bit of pi/2 + * pio2_1t: pi/2 - pio2_1 + * pio2_2: second 33 bit of pi/2 + * pio2_2t: pi/2 - (pio2_1+pio2_2) + * pio2_3: third 33 bit of pi/2 + * pio2_3t: pi/2 - (pio2_1+pio2_2+pio2_3) + */ + +#ifdef __STDC__ +static const double +#else +static double +#endif +zero = 0.00000000000000000000e+00, /* 0x00000000, 0x00000000 */ +half = 5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */ +two24 = 1.67772160000000000000e+07, /* 0x41700000, 0x00000000 */ +invpio2 = 6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */ +pio2_1 = 1.57079632673412561417e+00, /* 0x3FF921FB, 0x54400000 */ +pio2_1t = 6.07710050650619224932e-11, /* 0x3DD0B461, 0x1A626331 */ +pio2_2 = 6.07710050630396597660e-11, /* 0x3DD0B461, 0x1A600000 */ +pio2_2t = 2.02226624879595063154e-21, /* 0x3BA3198A, 0x2E037073 */ +pio2_3 = 2.02226624871116645580e-21, /* 0x3BA3198A, 0x2E000000 */ +pio2_3t = 8.47842766036889956997e-32; /* 0x397B839A, 0x252049C1 */ + +#ifdef __STDC__ + int __ieee754_rem_pio2(double x, double *y) +#else + int __ieee754_rem_pio2(x,y) + double x,y[]; +#endif +{ + double z,w,t,r,fn; + double tx[3]; + int e0,i,j,nx,n,ix,hx; + + hx = __HI(x); /* high word of x */ + ix = hx&0x7fffffff; + if(ix<=0x3fe921fb) /* |x| ~<= pi/4 , no need for reduction */ + {y[0] = x; y[1] = 0; return 0;} + if(ix<0x4002d97c) { /* |x| < 3pi/4, special case with n=+-1 */ + if(hx>0) { + z = x - pio2_1; + if(ix!=0x3ff921fb) { /* 33+53 bit pi is good enough */ + y[0] = z - pio2_1t; + y[1] = (z-y[0])-pio2_1t; + } else { /* near pi/2, use 33+33+53 bit pi */ + z -= pio2_2; + y[0] = z - pio2_2t; + y[1] = (z-y[0])-pio2_2t; + } + return 1; + } else { /* negative x */ + z = x + pio2_1; + if(ix!=0x3ff921fb) { /* 33+53 bit pi is good enough */ + y[0] = z + pio2_1t; + y[1] = (z-y[0])+pio2_1t; + } else { /* near pi/2, use 33+33+53 bit pi */ + z += pio2_2; + y[0] = z + pio2_2t; + y[1] = (z-y[0])+pio2_2t; + } + return -1; + } + } + if(ix<=0x413921fb) { /* |x| ~<= 2^19*(pi/2), medium size */ + t = fabs(x); + n = (int) (t*invpio2+half); + fn = (double)n; + r = t-fn*pio2_1; + w = fn*pio2_1t; /* 1st round good to 85 bit */ + if(n<32&&ix!=npio2_hw[n-1]) { + y[0] = r-w; /* quick check no cancellation */ + } else { + j = ix>>20; + y[0] = r-w; + i = j-(((__HI(y[0]))>>20)&0x7ff); + if(i>16) { /* 2nd iteration needed, good to 118 */ + t = r; + w = fn*pio2_2; + r = t-w; + w = fn*pio2_2t-((t-r)-w); + y[0] = r-w; + i = j-(((__HI(y[0]))>>20)&0x7ff); + if(i>49) { /* 3rd iteration need, 151 bits acc */ + t = r; /* will cover all possible cases */ + w = fn*pio2_3; + r = t-w; + w = fn*pio2_3t-((t-r)-w); + y[0] = r-w; + } + } + } + y[1] = (r-y[0])-w; + if(hx<0) {y[0] = -y[0]; y[1] = -y[1]; return -n;} + else return n; + } + /* + * all other (large) arguments + */ + if(ix>=0x7ff00000) { /* x is inf or NaN */ + y[0]=y[1]=x-x; return 0; + } + /* set z = scalbn(|x|,ilogb(x)-23) */ + __LO(z) = __LO(x); + e0 = (ix>>20)-1046; /* e0 = ilogb(z)-23; */ + __HI(z) = ix - (e0<<20); + for(i=0;i<2;i++) { + tx[i] = (double)((int)(z)); + z = (z-tx[i])*two24; + } + tx[2] = z; + nx = 3; + while(tx[nx-1]==zero) nx--; /* skip zero term */ + n = __kernel_rem_pio2(tx,y,e0,nx,2,two_over_pi); + if(hx<0) {y[0] = -y[0]; y[1] = -y[1]; return -n;} + return n; +} diff --git a/src/MSL_C.PPCEABI.bare.H/file_io.c b/src/MSL_C.PPCEABI.bare.H/file_io.c new file mode 100755 index 00000000..6ca5b36a --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/file_io.c @@ -0,0 +1,58 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/file_io.h" + +int fclose(FILE* file) { + int flush_result, close_result; + + if (file == NULL) { + return -1; + } + if (file->file_mode.file_kind == __closed_file) { + return 0; + } + flush_result = fflush(file); + close_result = file->close_fn(file->handle); + file->file_mode.file_kind = __closed_file; + file->handle = NULL; + if (file->file_state.free_buffer) { + free(file->buffer); + } + return (flush_result || close_result) ? -1 : 0; +} + +int fflush(FILE* file) { + unsigned long pos; + + if (file == NULL) { + return __flush_all(); + } + if (file->file_state.error != 0 || file->file_mode.file_kind == __closed_file) { + return -1; + } + if (file->file_mode.io_mode == __read) { + return 0; + } + if (file->file_state.io_state >= __rereading) { + file->file_state.io_state = __reading; + } + if (file->file_state.io_state == __reading) { + file->buffer_length = 0; + } + if (file->file_state.io_state != __writing) { + file->file_state.io_state = __neutral; + return 0; + } + if (file->file_mode.file_kind != __disk_file) { + pos = 0; + } else { + pos = ftell(file); + } + if (__flush_buffer(file, 0) != __no_io_error) { + file->file_state.error = 1; + file->buffer_length = 0; + return -1; + } + file->file_state.io_state = __neutral; + file->position = pos; + file->buffer_length = 0; + return 0; +} diff --git a/src/MSL_C.PPCEABI.bare.H/k_cos.c b/src/MSL_C.PPCEABI.bare.H/k_cos.c new file mode 100755 index 00000000..2f69d256 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/k_cos.c @@ -0,0 +1,91 @@ +/* @(#)k_cos.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * __kernel_cos( x, y ) + * kernel cos function on [-pi/4, pi/4], pi/4 ~ 0.785398164 + * Input x is assumed to be bounded by ~pi/4 in magnitude. + * Input y is the tail of x. + * + * Algorithm + * 1. Since cos(-x) = cos(x), we need only to consider positive x. + * 2. if x < 2^-27 (hx<0x3e400000 0), return 1 with inexact if x!=0. + * 3. cos(x) is approximated by a polynomial of degree 14 on + * [0,pi/4] + * 4 14 + * cos(x) ~ 1 - x*x/2 + C1*x + ... + C6*x + * where the remez error is + * + * | 2 4 6 8 10 12 14 | -58 + * |cos(x)-(1-.5*x +C1*x +C2*x +C3*x +C4*x +C5*x +C6*x )| <= 2 + * | | + * + * 4 6 8 10 12 14 + * 4. let r = C1*x +C2*x +C3*x +C4*x +C5*x +C6*x , then + * cos(x) = 1 - x*x/2 + r + * since cos(x+y) ~ cos(x) - sin(x)*y + * ~ cos(x) - x*y, + * a correction term is necessary in cos(x) and hence + * cos(x+y) = 1 - (x*x/2 - (r - x*y)) + * For better accuracy when x > 0.3, let qx = |x|/4 with + * the last 32 bits mask off, and if x > 0.78125, let qx = 0.28125. + * Then + * cos(x+y) = (1-qx) - ((x*x/2-qx) - (r-x*y)). + * Note that 1-qx and (x*x/2-qx) is EXACT here, and the + * magnitude of the latter is at least a quarter of x*x/2, + * thus, reducing the rounding error in the subtraction. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double +#else +static double +#endif +one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */ +C1 = 4.16666666666666019037e-02, /* 0x3FA55555, 0x5555554C */ +C2 = -1.38888888888741095749e-03, /* 0xBF56C16C, 0x16C15177 */ +C3 = 2.48015872894767294178e-05, /* 0x3EFA01A0, 0x19CB1590 */ +C4 = -2.75573143513906633035e-07, /* 0xBE927E4F, 0x809C52AD */ +C5 = 2.08757232129817482790e-09, /* 0x3E21EE9E, 0xBDB4B1C4 */ +C6 = -1.13596475577881948265e-11; /* 0xBDA8FAE9, 0xBE8838D4 */ + +#ifdef __STDC__ + double __kernel_cos(double x, double y) +#else + double __kernel_cos(x, y) + double x,y; +#endif +{ + double a,hz,z,r,qx; + int ix; + ix = __HI(x)&0x7fffffff; /* ix = |x|'s high word*/ + if(ix<0x3e400000) { /* if x < 2**27 */ + if(((int)x)==0) return one; /* generate inexact */ + } + z = x*x; + r = z*(C1+z*(C2+z*(C3+z*(C4+z*(C5+z*C6))))); + if(ix < 0x3FD33333) /* if |x| < 0.3 */ + return one - (0.5*z - (z*r - x*y)); + else { + if(ix > 0x3fe90000) { /* x > 0.78125 */ + qx = 0.28125; + } else { + __HI(qx) = ix-0x00200000; /* x/4 */ + __LO(qx) = 0; + } + hz = 0.5*z-qx; + a = one-qx; + return a - (hz - (z*r-x*y)); + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/k_rem_pio2.c b/src/MSL_C.PPCEABI.bare.H/k_rem_pio2.c new file mode 100755 index 00000000..b14d7d2a --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/k_rem_pio2.c @@ -0,0 +1,316 @@ + +/* @(#)k_rem_pio2.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * __kernel_rem_pio2(x,y,e0,nx,prec,ipio2) + * double x[],y[]; int e0,nx,prec; int ipio2[]; + * + * __kernel_rem_pio2 return the last three digits of N with + * y = x - N*pi/2 + * so that |y| < pi/2. + * + * The method is to compute the integer (mod 8) and fraction parts of + * (2/pi)*x without doing the full multiplication. In general we + * skip the part of the product that are known to be a huge integer ( + * more accurately, = 0 mod 8 ). Thus the number of operations are + * independent of the exponent of the input. + * + * (2/pi) is represented by an array of 24-bit integers in ipio2[]. + * + * Input parameters: + * x[] The input value (must be positive) is broken into nx + * pieces of 24-bit integers in double precision format. + * x[i] will be the i-th 24 bit of x. The scaled exponent + * of x[0] is given in input parameter e0 (i.e., x[0]*2^e0 + * match x's up to 24 bits. + * + * Example of breaking a double positive z into x[0]+x[1]+x[2]: + * e0 = ilogb(z)-23 + * z = ldexp(z,-e0) + * for i = 0,1,2 + * x[i] = floor(z) + * z = (z-x[i])*2**24 + * + * + * y[] ouput result in an array of double precision numbers. + * The dimension of y[] is: + * 24-bit precision 1 + * 53-bit precision 2 + * 64-bit precision 2 + * 113-bit precision 3 + * The actual value is the sum of them. Thus for 113-bit + * precison, one may have to do something like: + * + * long double t,w,r_head, r_tail; + * t = (long double)y[2] + (long double)y[1]; + * w = (long double)y[0]; + * r_head = t+w; + * r_tail = w - (r_head - t); + * + * e0 The exponent of x[0] + * + * nx dimension of x[] + * + * prec an integer indicating the precision: + * 0 24 bits (single) + * 1 53 bits (double) + * 2 64 bits (extended) + * 3 113 bits (quad) + * + * ipio2[] + * integer array, contains the (24*i)-th to (24*i+23)-th + * bit of 2/pi after binary point. The corresponding + * floating value is + * + * ipio2[i] * 2^(-24(i+1)). + * + * External function: + * double ldexp(), floor(); + * + * + * Here is the description of some local variables: + * + * jk jk+1 is the initial number of terms of ipio2[] needed + * in the computation. The recommended value is 2,3,4, + * 6 for single, double, extended,and quad. + * + * jz local integer variable indicating the number of + * terms of ipio2[] used. + * + * jx nx - 1 + * + * jv index for pointing to the suitable ipio2[] for the + * computation. In general, we want + * ( 2^e0*x[0] * ipio2[jv-1]*2^(-24jv) )/8 + * is an integer. Thus + * e0-3-24*jv >= 0 or (e0-3)/24 >= jv + * Hence jv = max(0,(e0-3)/24). + * + * jp jp+1 is the number of terms in PIo2[] needed, jp = jk. + * + * q[] double array with integral value, representing the + * 24-bits chunk of the product of x and 2/pi. + * + * q0 the corresponding exponent of q[0]. Note that the + * exponent for q[i] would be q0-24*i. + * + * PIo2[] double precision array, obtained by cutting pi/2 + * into 24 bits chunks. + * + * f[] ipio2[] in floating point + * + * iq[] integer array by breaking up q[] in 24-bits chunk. + * + * fq[] final product of x*(2/pi) in fq[0],..,fq[jk] + * + * ih integer. If >0 it indicates q[] is >= 0.5, hence + * it also indicates the *sign* of the result. + * + */ + + +/* + * Constants: + * The hexadecimal values are the intended ones for the following + * constants. The decimal values may be used, provided that the + * compiler will convert from decimal to binary accurately enough + * to produce the hexadecimal values shown. + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const int init_jk[] = {2,3,4,6}; /* initial value for jk */ +#else +static int init_jk[] = {2,3,4,6}; +#endif + +#ifdef __STDC__ +static const double PIo2[] = { +#else +static double PIo2[] = { +#endif + 1.57079625129699707031e+00, /* 0x3FF921FB, 0x40000000 */ + 7.54978941586159635335e-08, /* 0x3E74442D, 0x00000000 */ + 5.39030252995776476554e-15, /* 0x3CF84698, 0x80000000 */ + 3.28200341580791294123e-22, /* 0x3B78CC51, 0x60000000 */ + 1.27065575308067607349e-29, /* 0x39F01B83, 0x80000000 */ + 1.22933308981111328932e-36, /* 0x387A2520, 0x40000000 */ + 2.73370053816464559624e-44, /* 0x36E38222, 0x80000000 */ + 2.16741683877804819444e-51, /* 0x3569F31D, 0x00000000 */ +}; + +#ifdef __STDC__ +static const double +#else +static double +#endif +zero = 0.0, +one = 1.0, +two24 = 1.67772160000000000000e+07, /* 0x41700000, 0x00000000 */ +twon24 = 5.96046447753906250000e-08; /* 0x3E700000, 0x00000000 */ + +#ifdef __STDC__ + int __kernel_rem_pio2(double *x, double *y, int e0, int nx, int prec, const int *ipio2) +#else + int __kernel_rem_pio2(x,y,e0,nx,prec,ipio2) + double x[], y[]; int e0,nx,prec; int ipio2[]; +#endif +{ + int jz,jx,jv,jp,jk,carry,n,iq[20],i,j,k,m,q0,ih; + double z,fw,f[20],fq[20],q[20]; + + /* initialize jk*/ + jk = init_jk[prec]; + jp = jk; + + /* determine jx,jv,q0, note that 3>q0 */ + jx = nx-1; + jv = (e0-3)/24; if(jv<0) jv=0; + q0 = e0-24*(jv+1); + + /* set up f[0] to f[jx+jk] where f[jx+jk] = ipio2[jv+jk] */ + j = jv-jx; m = jx+jk; + for(i=0;i<=m;i++,j++) f[i] = (j<0)? zero : (double) ipio2[j]; + + /* compute q[0],q[1],...q[jk] */ + for (i=0;i<=jk;i++) { + for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; + } + + jz = jk; +recompute: + /* distill q[] into iq[] reversingly */ + for(i=0,j=jz,z=q[jz];j>0;i++,j--) { + fw = (double)((int)(twon24* z)); + iq[i] = (int)(z-two24*fw); + z = q[j-1]+fw; + } + + /* compute n */ + z = ldexp(z,q0); /* actual value of z */ + z -= 8.0*floor(z*0.125); /* trim off integer >= 8 */ + n = (int) z; + z -= (double)n; + ih = 0; + if(q0>0) { /* need iq[jz-1] to determine n */ + i = (iq[jz-1]>>(24-q0)); n += i; + iq[jz-1] -= i<<(24-q0); + ih = iq[jz-1]>>(23-q0); + } + else if(q0==0) ih = iq[jz-1]>>23; + else if(z>=0.5) ih=2; + + if(ih>0) { /* q > 0.5 */ + n += 1; carry = 0; + for(i=0;i0) { /* rare case: chance is 1 in 12 */ + switch(q0) { + case 1: + iq[jz-1] &= 0x7fffff; break; + case 2: + iq[jz-1] &= 0x3fffff; break; + } + } + if(ih==2) { + z = one - z; + if(carry!=0) z -= ldexp(one,q0); + } + } + + /* check if recomputation is needed */ + if(z==zero) { + j = 0; + for (i=jz-1;i>=jk;i--) j |= iq[i]; + if(j==0) { /* need recomputation */ + for(k=1;iq[jk-k]==0;k++); /* k = no. of terms needed */ + + for(i=jz+1;i<=jz+k;i++) { /* add q[jz+1] to q[jz+k] */ + f[jx+i] = (double) ipio2[jv+i]; + for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; + q[i] = fw; + } + jz += k; + goto recompute; + } + } + + /* chop off zero terms */ + if(z==0.0) { + jz -= 1; q0 -= 24; + while(iq[jz]==0) { jz--; q0-=24;} + } else { /* break z into 24-bit if necessary */ + z = ldexp(z,-q0); + if(z>=two24) { + fw = (double)((int)(twon24*z)); + iq[jz] = (int)(z-two24*fw); + jz += 1; q0 += 24; + iq[jz] = (int) fw; + } else iq[jz] = (int) z ; + } + + /* convert integer "bit" chunk to floating-point value */ + fw = ldexp(one,q0); + for(i=jz;i>=0;i--) { + q[i] = fw*(double)iq[i]; fw*=twon24; + } + + /* compute PIo2[0,...,jp]*q[jz,...,0] */ + for(i=jz;i>=0;i--) { + for(fw=0.0,k=0;k<=jp&&k<=jz-i;k++) fw += PIo2[k]*q[i+k]; + fq[jz-i] = fw; + } + + /* compress fq[] into y[] */ + switch(prec) { + case 0: + fw = 0.0; + for (i=jz;i>=0;i--) fw += fq[i]; + y[0] = (ih==0)? fw: -fw; + break; + case 1: + case 2: + fw = 0.0; + for (i=jz;i>=0;i--) fw += fq[i]; + y[0] = (ih==0)? fw: -fw; + fw = fq[0]-fw; + for (i=1;i<=jz;i++) fw += fq[i]; + y[1] = (ih==0)? fw: -fw; + break; + case 3: /* painful */ + for (i=jz;i>0;i--) { + fw = fq[i-1]+fq[i]; + fq[i] += fq[i-1]-fw; + fq[i-1] = fw; + } + for (i=jz;i>1;i--) { + fw = fq[i-1]+fq[i]; + fq[i] += fq[i-1]-fw; + fq[i-1] = fw; + } + for (fw=0.0,i=jz;i>=2;i--) fw += fq[i]; + if(ih==0) { + y[0] = fq[0]; y[1] = fq[1]; y[2] = fw; + } else { + y[0] = -fq[0]; y[1] = -fq[1]; y[2] = -fw; + } + } + return n&7; +} diff --git a/src/MSL_C.PPCEABI.bare.H/k_sin.c b/src/MSL_C.PPCEABI.bare.H/k_sin.c new file mode 100755 index 00000000..b136909a --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/k_sin.c @@ -0,0 +1,73 @@ +/* @(#)k_sin.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* __kernel_sin( x, y, iy) + * kernel sin function on [-pi/4, pi/4], pi/4 ~ 0.7854 + * Input x is assumed to be bounded by ~pi/4 in magnitude. + * Input y is the tail of x. + * Input iy indicates whether y is 0. (if iy=0, y assume to be 0). + * + * Algorithm + * 1. Since sin(-x) = -sin(x), we need only to consider positive x. + * 2. if x < 2^-27 (hx<0x3e400000 0), return x with inexact if x!=0. + * 3. sin(x) is approximated by a polynomial of degree 13 on + * [0,pi/4] + * 3 13 + * sin(x) ~ x + S1*x + ... + S6*x + * where + * + * |sin(x) 2 4 6 8 10 12 | -58 + * |----- - (1+S1*x +S2*x +S3*x +S4*x +S5*x +S6*x )| <= 2 + * | x | + * + * 4. sin(x+y) = sin(x) + sin'(x')*y + * ~ sin(x) + (1-x*x/2)*y + * For better accuracy, let + * 3 2 2 2 2 + * r = x *(S2+x *(S3+x *(S4+x *(S5+x *S6)))) + * then 3 2 + * sin(x) = x + (S1*x + (x *(r-y/2)+y)) + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double +#else +static double +#endif +half = 5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */ +S1 = -1.66666666666666324348e-01, /* 0xBFC55555, 0x55555549 */ +S2 = 8.33333333332248946124e-03, /* 0x3F811111, 0x1110F8A6 */ +S3 = -1.98412698298579493134e-04, /* 0xBF2A01A0, 0x19C161D5 */ +S4 = 2.75573137070700676789e-06, /* 0x3EC71DE3, 0x57B1FE7D */ +S5 = -2.50507602534068634195e-08, /* 0xBE5AE5E6, 0x8A2B9CEB */ +S6 = 1.58969099521155010221e-10; /* 0x3DE5D93A, 0x5ACFD57C */ + +#ifdef __STDC__ + double __kernel_sin(double x, double y, int iy) +#else + double __kernel_sin(x, y, iy) + double x,y; int iy; /* iy=0 if y is zero */ +#endif +{ + double z,r,v; + int ix; + ix = __HI(x)&0x7fffffff; /* high word of x */ + if(ix<0x3e400000) /* |x| < 2**-27 */ + {if((int)x==0) return x;} /* generate inexact */ + z = x*x; + v = z*x; + r = S2+z*(S3+z*(S4+z*(S5+z*S6))); + if(iy==0) return x+v*(S1+z*r); + else return x-((z*(half*y-v*r)-y)-v*S1); +} diff --git a/src/MSL_C.PPCEABI.bare.H/k_tan.c b/src/MSL_C.PPCEABI.bare.H/k_tan.c new file mode 100755 index 00000000..d7dec7f5 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/k_tan.c @@ -0,0 +1,134 @@ +/* + * ==================================================== + * Copyright 2004 Sun Microsystems, Inc. All Rights Reserved. + * + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* INDENT OFF */ +/* __kernel_tan( x, y, k ) + * kernel tan function on [-pi/4, pi/4], pi/4 ~ 0.7854 + * Input x is assumed to be bounded by ~pi/4 in magnitude. + * Input y is the tail of x. + * Input k indicates whether tan (if k = 1) or -1/tan (if k = -1) is returned. + * + * Algorithm + * 1. Since tan(-x) = -tan(x), we need only to consider positive x. + * 2. if x < 2^-28 (hx<0x3e300000 0), return x with inexact if x!=0. + * 3. tan(x) is approximated by a odd polynomial of degree 27 on + * [0,0.67434] + * 3 27 + * tan(x) ~ x + T1*x + ... + T13*x + * where + * + * |tan(x) 2 4 26 | -59.2 + * |----- - (1+T1*x +T2*x +.... +T13*x )| <= 2 + * | x | + * + * Note: tan(x+y) = tan(x) + tan'(x)*y + * ~ tan(x) + (1+x*x)*y + * Therefore, for better accuracy in computing tan(x+y), let + * 3 2 2 2 2 + * r = x *(T2+x *(T3+x *(...+x *(T12+x *T13)))) + * then + * 3 2 + * tan(x+y) = x + (T1*x + (x *(r+y)+y)) + * + * 4. For x in [0.67434,pi/4], let y = pi/4 - x, then + * tan(x) = tan(pi/4-y) = (1-tan(y))/(1+tan(y)) + * = 1 - 2*(tan(y) - (tan(y)^2)/(1+tan(y))) + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/math.h" + +static const double xxx[] = { + 3.33333333333334091986e-01, /* 3FD55555, 55555563 */ + 1.33333333333201242699e-01, /* 3FC11111, 1110FE7A */ + 5.39682539762260521377e-02, /* 3FABA1BA, 1BB341FE */ + 2.18694882948595424599e-02, /* 3F9664F4, 8406D637 */ + 8.86323982359930005737e-03, /* 3F8226E3, E96E8493 */ + 3.59207910759131235356e-03, /* 3F6D6D22, C9560328 */ + 1.45620945432529025516e-03, /* 3F57DBC8, FEE08315 */ + 5.88041240820264096874e-04, /* 3F4344D8, F2F26501 */ + 2.46463134818469906812e-04, /* 3F3026F7, 1A8D1068 */ + 7.81794442939557092300e-05, /* 3F147E88, A03792A6 */ + 7.14072491382608190305e-05, /* 3F12B80F, 32F0A7E9 */ + -1.85586374855275456654e-05, /* BEF375CB, DB605373 */ + 2.59073051863633712884e-05, /* 3EFB2A70, 74BF7AD4 */ +}; +#define pio4 7.85398163397448278999e-01 +#define pio4lo 3.06161699786838301793e-17 +#define T xxx +/* INDENT ON */ + +double +__kernel_tan(double x, double y, int iy) { + double z, r, v, w, s; + int ix, hx; + + hx = __HI(x); /* high word of x */ + ix = hx & 0x7fffffff; /* high word of |x| */ + if (ix < 0x3e300000) { /* x < 2**-28 */ + if ((int) x == 0) { /* generate inexact */ + if (((ix | __LO(x)) | (iy + 1)) == 0) + return 1 / fabs(x); + else { + if (iy == 1) + return x; + else + return -1 / x; + } + } + } + if (ix >= 0x3FE59428) { /* |x| >= 0.6744 */ + if (hx < 0) { + x = -x; + y = -y; + } + z = pio4 - x; + w = pio4lo - y; + x = z + w; + y = 0.0; + } + z = x * x; + w = z * z; + /* + * Break x^5*(T[1]+x^2*T[2]+...) into + * x^5(T[1]+x^4*T[3]+...+x^20*T[11]) + + * x^5(x^2*(T[2]+x^4*T[4]+...+x^22*[T12])) + */ + r = T[1] + w * (T[3] + w * (T[5] + w * (T[7] + w * (T[9] + + w * T[11])))); + v = z * (T[2] + w * (T[4] + w * (T[6] + w * (T[8] + w * (T[10] + + w * T[12]))))); + s = z * x; + r = y + z * (s * (r + v) + y); + r += T[0] * s; + w = x + r; + if (ix >= 0x3FE59428) { + v = (double) iy; + return (double) (1 - ((hx >> 30) & 2)) * + (v - 2.0 * (x - (w * w / (w + v) - r))); + } + if (iy == 1) + return w; + else { + /* + * if allow error up to 2 ulp, simply return + * -1.0 / (x+r) here + */ + /* compute -1.0 / (x+r) accurately */ + double a, t; + z = w; + __LO(z) = 0; + v = r - (z - x); /* z+v = r+x */ + t = a = -1.0 / w; /* a = -1.0/w */ + __LO(t) = 0; + s = 1.0 + t * z; + return t + a * (s + t * v); + } +} diff --git a/src/MSL_C.PPCEABI.bare.H/mbstring.c b/src/MSL_C.PPCEABI.bare.H/mbstring.c index fa77c660..0364afa3 100644 --- a/src/MSL_C.PPCEABI.bare.H/mbstring.c +++ b/src/MSL_C.PPCEABI.bare.H/mbstring.c @@ -1,18 +1,64 @@ -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/mbstring.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" -size_t wcstombs(char* s, const wchar_t* pwcs, size_t n) -{ - wchar_t next; - size_t chars_written; - int i; +static int unicode_to_UTF8(char* s, wchar_t wchar) { + int number_of_bytes; + char* target_ptr; + char first_byte_mark[4] = {0x00, 0x00, 0xc0, 0xe0}; - chars_written = 0; - for (i = 0; i < n; ++i) { - next = *pwcs++; - *s++ = (char)next; - if ((char)next == '\0') - break; - ++chars_written; - } - return chars_written; + if (!s) { + return 0; + } + + if (wchar < 0x0080) + number_of_bytes = 1; + else if (wchar < 0x0800) + number_of_bytes = 2; + else + number_of_bytes = 3; + + target_ptr = s + number_of_bytes; + + switch (number_of_bytes) { + case 3: + *--target_ptr = (wchar & 0x003f) | 0x80; + wchar >>= 6; + case 2: + *--target_ptr = (wchar & 0x003f) | 0x80; + wchar >>= 6; + case 1: + *--target_ptr = wchar | first_byte_mark[number_of_bytes]; + } + + return (number_of_bytes); +} + +static inline int wctomb(char* s, wchar_t wchar) { + return (unicode_to_UTF8(s, wchar)); +} + +size_t wcstombs(char* s, const wchar_t* pwcs, size_t n) { + int chars_written = 0; + int result; + char temp[3]; + wchar_t* source; + + if (!s || !pwcs) + return (0); + + source = (wchar_t*)pwcs; + while (chars_written <= n) { + if (!*source) { + *(s + chars_written) = '\0'; + break; + } else { + result = wctomb(temp, *source++); + if ((chars_written + result) <= n) { + strcat(s + chars_written, temp, result); + chars_written += result; + } else + break; + } + } + + return (chars_written); } diff --git a/src/MSL_C.PPCEABI.bare.H/misc_io.c b/src/MSL_C.PPCEABI.bare.H/misc_io.c index 2b6c9913..06827814 100644 --- a/src/MSL_C.PPCEABI.bare.H/misc_io.c +++ b/src/MSL_C.PPCEABI.bare.H/misc_io.c @@ -1 +1,6 @@ -void __stdio_atexit(void) { } +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/abort_exit.h" + +void __stdio_atexit(void) { + __stdio_exit = __close_all; +} diff --git a/src/MSL_C.PPCEABI.bare.H/s_floor.c b/src/MSL_C.PPCEABI.bare.H/s_floor.c new file mode 100755 index 00000000..70001539 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/s_floor.c @@ -0,0 +1,78 @@ +/* @(#)s_floor.c 1.3 95/01/18 */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunSoft, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* + * floor(x) + * Return x rounded toward -inf to integral value + * Method: + * Bit twiddling. + * Exception: + * Inexact flag raised if x not equal to floor(x). + */ + +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common_Embedded/Math/fdlibm.h" + +#ifdef __STDC__ +static const double huge = 1.0e300; +#else +static double huge = 1.0e300; +#endif + +#ifdef __STDC__ + double floor(double x) +#else + double floor(x) + double x; +#endif +{ + int i0,i1,j0; + unsigned i,j; + i0 = __HI(x); + i1 = __LO(x); + j0 = ((i0>>20)&0x7ff)-0x3ff; + if(j0<20) { + if(j0<0) { /* raise inexact if x != 0 */ + if(huge+x>0.0) {/* return 0*sign(x) if |x|<1 */ + if(i0>=0) {i0=i1=0;} + else if(((i0&0x7fffffff)|i1)!=0) + { i0=0xbff00000;i1=0;} + } + } else { + i = (0x000fffff)>>j0; + if(((i0&i)|i1)==0) return x; /* x is integral */ + if(huge+x>0.0) { /* raise inexact flag */ + if(i0<0) i0 += (0x00100000)>>j0; + i0 &= (~i); i1=0; + } + } + } else if (j0>51) { + if(j0==0x400) return x+x; /* inf or NaN */ + else return x; /* x is integral */ + } else { + i = ((unsigned)(0xffffffff))>>(j0-20); + if((i1&i)==0) return x; /* x is integral */ + if(huge+x>0.0) { /* raise inexact flag */ + if(i0<0) { + if(j0==20) i0+=1; + else { + j = i1+(1<<(52-j0)); + if(j>20; /* extract exponent */ + if (k==0) { /* 0 or subnormal x */ + if ((lx|(hx&0x7fffffff))==0) return x; /* +-0 */ + x *= two54; + hx = __HI(x); + k = ((hx&0x7ff00000)>>20) - 54; + if (n< -50000) return tiny*x; /*underflow*/ + } + if (k==0x7ff) return x+x; /* NaN or Inf */ + k = k+n; + if (k > 0x7fe) return huge*copysign(huge,x); /* overflow */ + if (k > 0) /* normal result */ + {__HI(x) = (hx&0x800fffff)|(k<<20); return x;} + if (k <= -54) + if (n > 50000) /* in case integer overflow in n+k */ + return huge*copysign(huge,x); /*overflow*/ + else return tiny*copysign(tiny,x); /*underflow*/ + k += 54; /* subnormal result */ + __HI(x) = (hx&0x800fffff)|(k<<20); + return x*twom54; } diff --git a/src/MSL_C.PPCEABI.bare.H/signal.c b/src/MSL_C.PPCEABI.bare.H/signal.c new file mode 100755 index 00000000..9d5da4ee --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/signal.c @@ -0,0 +1,26 @@ +#include + +void* signal_funcs[6]; + +// regalloc: https://decomp.me/scratch/ufAYK +int raise(int arg0) { + void (*temp_r31)(int); + void** temp_r3; + + if (arg0 < 1 || arg0 > 6) { + return -1; + } + temp_r3 = &signal_funcs[arg0]; + temp_r31 = *(--temp_r3); + if ((unsigned long) temp_r31 != 1) { + *temp_r3 = NULL; + } + if ((unsigned long) temp_r31 == 1 || (temp_r31 == NULL && arg0 == 1)) { + return 0; + } + if (temp_r31 == NULL) { + exit(0); + } + temp_r31(arg0); + return 0; +} diff --git a/src/MSL_C.PPCEABI.bare.H/uart_console_io.c b/src/MSL_C.PPCEABI.bare.H/uart_console_io.c new file mode 100755 index 00000000..e26388da --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/uart_console_io.c @@ -0,0 +1,32 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h" + +static inline int __init_uart_console(void) { + int err = 0; + static int initialized = 0; + + if (initialized == 0) { + err = InitializeUART(57600); + if (err == 0) + initialized = 1; + } + + return (err); +} + +int __write_console(__file_handle handle, unsigned char* buffer, size_t* count, __idle_proc idle_proc) { + if (__init_uart_console() != 0) { + return 1; + } + + if (WriteUARTN(buffer, *count) != 0) { + *count = 0; + return 1; + } + + __TRK_write_console(handle, buffer, count, idle_proc); + return 0; +} + +int __close_console() { + return 0; +} diff --git a/src/MSL_C.PPCEABI.bare.H/wchar_io.c b/src/MSL_C.PPCEABI.bare.H/wchar_io.c index 4d5d32b5..77f4b5fa 100644 --- a/src/MSL_C.PPCEABI.bare.H/wchar_io.c +++ b/src/MSL_C.PPCEABI.bare.H/wchar_io.c @@ -2,7 +2,7 @@ int fwide(FILE* file, int mode) { - if (file->file_mode.file_kind == __closed_file) { + if (!file || file->file_mode.file_kind == __closed_file) { return 0; } From 6347294c144b2aafb6a8edfec24de52f932eb0ce Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 28 Jan 2025 11:33:09 -0800 Subject: [PATCH 143/178] Matched ansi_fp.c (US) (#550) --- config/GMPE01_00/symbols.txt | 2 +- configure.py | 2 +- .../Msl/MSL_C/MSL_Common/ansi_fp.h | 11 +- src/MSL_C.PPCEABI.bare.H/ansi_fp.c | 393 ++++++++++++++++++ 4 files changed, 396 insertions(+), 12 deletions(-) create mode 100755 src/MSL_C.PPCEABI.bare.H/ansi_fp.c diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index e2763245..d4d7595a 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -3653,7 +3653,7 @@ lbl_8011E580 = .rodata:0x8011E580; // type:object size:0x20 lbl_8011E5A0 = .rodata:0x8011E5A0; // type:object size:0x38 lbl_8011E5D8 = .rodata:0x8011E5D8; // type:object size:0x40 fix_pool_sizes = .rodata:0x8011E618; // type:object size:0x18 scope:local data:4byte -lbl_8011E630 = .rodata:0x8011E630; // type:object size:0xE0 +lbl_8011E630 = .rodata:0x8011E630; // type:object size:0xE0 data:string @stringBase0 = .rodata:0x8011E710; // type:object size:0x25 scope:local data:string_table Zero = .rodata:0x8011E738; // type:object size:0x10 scope:local bp = .rodata:0x8011E748; // type:object size:0x10 scope:local data:double diff --git a/configure.py b/configure.py index c95c4390..b1766149 100644 --- a/configure.py +++ b/configure.py @@ -684,7 +684,7 @@ config.libs = [ Object(NonMatching, "MSL_C.PPCEABI.bare.H/alloc.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/errno.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/ansi_files.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/ansi_fp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/ansi_fp.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/arith.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/buffer_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/ctype.c"), diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h index 90ba7acf..a7a5cc67 100644 --- a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h @@ -22,15 +22,6 @@ typedef struct decform { short digits; } decform; -/* void __ull2dec(decimal*, u64); -void __timesdec(decimal*, const decimal*, const decimal*); -void __str2dec(decimal*, const char*, short); -void __two_exp(decimal*, s16); -BOOL __equals_dec(const decimal*, const decimal*); -BOOL __less_dec(const decimal*, const decimal*); -void __minus_dec(decimal*, const decimal*, const decimal*); -void __num2dec_internal(decimal*, f64); -void __num2dec(const decform*, f64, decimal*); -f64 __dec2num(const decimal*); */ +void __num2dec(const decform* form, double x, decimal* d); #endif diff --git a/src/MSL_C.PPCEABI.bare.H/ansi_fp.c b/src/MSL_C.PPCEABI.bare.H/ansi_fp.c new file mode 100755 index 00000000..e8d7f0c7 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/ansi_fp.c @@ -0,0 +1,393 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_fp.h" + +static int __count_trailing_zerol(unsigned int arg0) { + int var_r4; + int var_r5; + int var_r6; + int var_r7; + unsigned int var_r8; + + var_r5 = 0x20; + var_r8 = 0xFFFF; + var_r6 = 0x10; + var_r4 = 0; + var_r7 = 0x10; + while (var_r5 != 0) { + if (!(arg0 & var_r8)) { + var_r4 += var_r7; + arg0 >>= var_r7; + var_r5 -= var_r7; + } else if (var_r8 == 1) { + break; + } + if (var_r6 > 1) { + var_r6 /= 2; + } + if (var_r8 > 1) { + var_r8 >>= var_r6; + var_r7 -= var_r6; + } + } + return var_r4; +} + +static inline int __count_trailing_zero(double n){ + if (__LO(n) != 0U) { + return __count_trailing_zerol(__LO(n)); + } else { + return 32 + __count_trailing_zerol(__HI(n) | 0x100000); + } +} + +static void __ull2dec(decimal* result, unsigned long long val) { + result->sign = 0; + + if (val == 0) { + result->exp = 0; + result->sig.length = 1; + result->sig.text[0] = 0; + return; + } + + result->sig.length = 0; + + for(; val != 0; val /= 10) { + result->sig.text[result->sig.length++] = val % 10; + } + + { + unsigned char* i = result->sig.text; + unsigned char* j = result->sig.text + result->sig.length; + + for (; i < --j; ++i) { + unsigned char t = *i; + *i = *j; + *j = t; + } + } + + result->exp = result->sig.length - 1; +} + +static inline void __dorounddecup(decimal* d, int digits){ + unsigned char* b = d->sig.text; + unsigned char* i = b + digits - 1; + + while(1){ + if (*i < 9) { + *i += 1; + break; + } + if (i == b) { + *i = 1; + d->exp++; + break; + } + *i-- = 0; + } +} + +static void __timesdec(decimal* result, const decimal* x, const decimal* y) { + unsigned int accumulator = 0; + unsigned char mantissa[SIGDIGLEN * 2]; + int i = x->sig.length + y->sig.length - 1; + unsigned char* pDigit; + unsigned char* ip = mantissa + i + 1; + unsigned char* ep = ip; + + result->sign = 0; + + for(; i > 0; i--) { + int k = y->sig.length - 1; + int j = i - k - 1; + int l; + int t; + const unsigned char* jp; + const unsigned char* kp; + + if (j < 0) { + j = 0; + k = i - 1; + } + + jp = x->sig.text + j; + kp = y->sig.text + k; + l = k + 1; + t = x->sig.length - j; + + if (l > t) l = t; + + for (; l > 0; l--, jp++, kp--) { + accumulator += *jp * *kp; + } + + *--ip = accumulator % 10; + accumulator /= 10; + } + + result->exp = (short)(x->exp + y->exp); + + if (accumulator) { + *--ip = accumulator; + result->exp++; + } + + for (i = 0; i < SIGDIGLEN && ip < ep; i++, ip++) { + result->sig.text[i] = *ip; + } + result->sig.length = i; + + if (ip < ep && *ip >= 5){ + if (*ip == 5){ + unsigned char* jp = ip + 1; + for (; jp < ep; jp++) { + if (*jp != 0) goto round; + } + if ((ip[-1] & 1) == 0) return; + } + round: + __dorounddecup(result, result->sig.length); + } +} + +static void __str2dec(decimal* d, const signed char* s, short exp) { + int i; + + d->exp = exp; + d->sign = 0; + + for (i = 0; i < SIGDIGLEN && *s; ) { + d->sig.text[i++] = *s++ - '0'; + } + d->sig.length = i; + + if (*s != 0 && *s >= 5) { + const signed char* p = s + 1; + + for (; *p != 0; p++) { + if (*p != '0') goto round; + } + + if ((d->sig.text[i - 1] & 1) == 0) return; + round: + __dorounddecup(d, d->sig.length); + } +} + +// TODO: ideally, these strings should be used as literals in the function below. +// However, the first one (179769313486231580793729011405303420, corresponding to +// 2^1024) is not used in the function and messes up alignment. + +const signed char lbl_8011E630[] = + "179769313486231580793729011405303420\000" \ + "542101086242752217003726400434970855712890625\000" \ + "11102230246251565404236316680908203125\000" \ + "23283064365386962890625\000" \ + "152587890625\000" \ + "390625\000" \ + "78125\000" \ + "15625\000" \ + "3125\000" \ + "625\000" \ + "125\000" \ + "25\000" \ + "5\000" \ + "1\000" \ + "2\000" \ + "4\000" \ + "8\000" \ + "16\000" \ + "32\000" \ + "64\000" \ + "128\000" \ + "256"; + +static void __two_exp(decimal* result, short exp) { + decimal sp8C; + decimal sp60; + decimal sp34; + decimal sp8; + + switch (exp) { + case -64: + __str2dec(result, lbl_8011E630 + 0x25, -20); + break; + case -53: + __str2dec(result, lbl_8011E630 + 0x53, -16); + break; + case -32: + __str2dec(result, lbl_8011E630 + 0x7A, -10); + break; + case -16: + __str2dec(result, lbl_8011E630 + 0x92, -5); + break; + case -8: + __str2dec(result, lbl_8011E630 + 0x9F, -3); + break; + case -7: + __str2dec(result, lbl_8011E630 + 0xA6, -3); + break; + case -6: + __str2dec(result, lbl_8011E630 + 0xAC, -2); + break; + case -5: + __str2dec(result, lbl_8011E630 + 0xB2, -2); + break; + case -4: + __str2dec(result, lbl_8011E630 + 0xB7, -2); + break; + case -3: + __str2dec(result, lbl_8011E630 + 0xBB, -1); + break; + case -2: + __str2dec(result, lbl_8011E630 + 0xBF, -1); + break; + case -1: + __str2dec(result, lbl_8011E630 + 0xC2, -1); + break; + case 0: + __str2dec(result, lbl_8011E630 + 0xC4, 0); + break; + case 1: + __str2dec(result, lbl_8011E630 + 0xC6, 0); + break; + case 2: + __str2dec(result, lbl_8011E630 + 0xC8, 0); + break; + case 3: + __str2dec(result, lbl_8011E630 + 0xCA, 0); + break; + case 4: + __str2dec(result, lbl_8011E630 + 0xCC, 1); + break; + case 5: + __str2dec(result, lbl_8011E630 + 0xCF, 1); + break; + case 6: + __str2dec(result, lbl_8011E630 + 0xD2, 1); + break; + case 7: + __str2dec(result, lbl_8011E630 + 0xD5, 2); + break; + case 8: + __str2dec(result, lbl_8011E630 + 0xD9, 2); + break; + default: + __two_exp(&sp8C, exp / 2); + __timesdec(result, &sp8C, &sp8C); + if (exp & 1) { + sp60 = *result; + if (exp > 0) { + __str2dec(&sp34, lbl_8011E630 + 0xC6, 0); + __timesdec(result, &sp60, &sp34); + } else { + __str2dec(&sp8, lbl_8011E630 + 0xC2, -1); + __timesdec(result, &sp60, &sp8); + } + } + break; + } +} + +static void __num2dec_internal(decimal* d, double x) { + signed char sign = (signbit(x) != 0); + + if (x == 0) { + d->sign = sign; + d->exp = 0; + d->sig.length = 1; + d->sig.text[0] = 0; + return; + } + + if (!isfinite(x)) { + d->sign = sign; + d->exp = 0; + d->sig.length = 1; + d->sig.text[0] = (fpclassify(x) == 1) ? 'N' : 'I'; + return; + } + + if (sign != 0) { + x = -x; + } + + { + int exp; + double frac = frexp(x, &exp); + short num_bits_extract = DBL_MANT_DIG - __count_trailing_zero(frac); + decimal int_d, pow2_d; + double sp30; + + __two_exp(&pow2_d, exp - num_bits_extract); + modf(ldexp(frac, num_bits_extract), &sp30); + __ull2dec(&int_d, sp30); + __timesdec(d, &int_d, &pow2_d); + d->sign = sign; + } +} + +static inline int __must_round(const decimal* d, int digits){ + unsigned char const* i = d->sig.text + digits; + + if (*i > 5) { + return 1; + } + + if (*i < 5) { + return -1; + } + + { + unsigned char const* e = d->sig.text + d->sig.length; + + for(i++; i < e; i++){ + if (*i != 0) { + return 1; + } + } + } + + if (d->sig.text[digits - 1] & 1) { + return 1; + } + + return -1; +} + +static inline void __rounddec(decimal* d, int digits){ + if (digits > 0 && digits < d->sig.length) { + int unkBool = __must_round(d,digits); + d->sig.length = digits; + + if (unkBool >= 0) { + __dorounddecup(d, digits); + } + } +} + +void __num2dec(const decform* form, double x, decimal* d) { + short digits = form->digits; + int i; + __num2dec_internal(d, x); + + if (d->sig.text[0] > 9) { + return; + } + + if (digits > SIGDIGLEN) { + digits = SIGDIGLEN; + } + + __rounddec(d, digits); + + while(d->sig.length < digits){ + d->sig.text[d->sig.length++] = 0; + } + + d->exp -= d->sig.length - 1; + + for(i = 0; i < d->sig.length; i++) { + d->sig.text[i] += '0'; + } +} From b353af7d237c0cc596f8a917bb3c62b939891f00 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Wed, 29 Jan 2025 14:19:43 -0800 Subject: [PATCH 144/178] MSL: match alloc/signal/string and most of printf --- configure.py | 7 +- .../Msl/MSL_C/MSL_Common/ansi_files.h | 2 +- include/string.h | 2 +- src/MSL_C.PPCEABI.bare.H/alloc.c | 410 ++++ src/MSL_C.PPCEABI.bare.H/printf.c | 1711 +++++++++-------- src/MSL_C.PPCEABI.bare.H/signal.c | 20 +- src/MSL_C.PPCEABI.bare.H/string.c | 52 +- 7 files changed, 1346 insertions(+), 858 deletions(-) create mode 100755 src/MSL_C.PPCEABI.bare.H/alloc.c diff --git a/configure.py b/configure.py index b1766149..b8bbca9e 100644 --- a/configure.py +++ b/configure.py @@ -227,6 +227,7 @@ cflags_thp = [ # Metrowerks library flags cflags_msl = [ *cflags_base, + "-char signed", "-use_lmw_stmw on", "-str reuse,pool,readonly", "-common off", @@ -681,7 +682,7 @@ config.libs = [ "host": False, "objects": [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/abort_exit.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/alloc.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/alloc.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/errno.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/ansi_files.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/ansi_fp.c"), @@ -697,8 +698,8 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/misc_io.c"), Object(NonMatching, "MSL_C.PPCEABI.bare.H/printf.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/float.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/signal.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/string.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/signal.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/string.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/uart_console_io.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/wchar_io.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/e_acos.c"), diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h index d101a4bb..a1fb6fdc 100644 --- a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h @@ -85,7 +85,7 @@ typedef struct _FILE { file_modes file_mode; file_states file_state; - char is_dynamically_allocated; + unsigned char is_dynamically_allocated; char char_buffer; char char_buffer_overflow; char ungetc_buffer[2]; diff --git a/include/string.h b/include/string.h index 6ba311ed..863a4f97 100644 --- a/include/string.h +++ b/include/string.h @@ -10,7 +10,7 @@ char* strrchr(const char* str, int c); char* strchr(const char* str, int c); int strncmp(const char* str1, const char* str2, size_t n); int strcmp(const char* str1, const char* str2); -char* strcat(char* dst, const char* src); +char* strcat(char* dst, const char* src, size_t n); char* strncpy(char* dst, const char* src, size_t n); char* strcpy(char* dst, const char* src); size_t strlen(const char* str); diff --git a/src/MSL_C.PPCEABI.bare.H/alloc.c b/src/MSL_C.PPCEABI.bare.H/alloc.c new file mode 100755 index 00000000..ba041356 --- /dev/null +++ b/src/MSL_C.PPCEABI.bare.H/alloc.c @@ -0,0 +1,410 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/alloc.h" + +typedef struct Block { + struct Block* prev; + struct Block* next; + unsigned long max_size; + unsigned long size; +} Block; + +typedef struct SubBlock { + unsigned long size; + Block* block; + struct SubBlock* prev; + struct SubBlock* next; +} SubBlock; + +struct FixSubBlock; + +typedef struct FixBlock { + struct FixBlock* prev_; + struct FixBlock* next_; + unsigned long client_size_; + struct FixSubBlock* start_; + unsigned long n_allocated_; +} FixBlock; + +typedef struct FixSubBlock { + FixBlock* block_; + struct FixSubBlock* next_; +} FixSubBlock; + +typedef struct FixStart { + FixBlock* tail_; + FixBlock* head_; +} FixStart; + +typedef struct __mem_pool_obj { + Block* start_; + FixStart fix_start[6]; +} __mem_pool_obj; + +typedef struct __mem_pool { + void* reserved[14]; +} __mem_pool; + +typedef signed long tag_word; + +typedef struct block_header { + tag_word tag; + struct block_header * prev; + struct block_header * next; +} block_header; + +typedef struct list_header { + block_header * rover; + block_header header; +} list_header; + +typedef struct heap_header { + struct heap_header* prev; + struct heap_header* next; +} heap_header; + +struct mem_pool_obj; +typedef void * (*sys_alloc_ptr)(unsigned long, struct mem_pool_obj*); +typedef void (*sys_free_ptr)(void *, struct mem_pool_obj*); + +typedef struct pool_options{ + sys_alloc_ptr sys_alloc_func; + sys_free_ptr sys_free_func; + unsigned long min_heap_size; + int always_search_first; +} pool_options; + +typedef struct mem_pool_obj { + list_header free_list; + pool_options options; + heap_header* heap_list; + void* userData; + +} mem_pool_obj; + +mem_pool_obj __malloc_pool; +static int initialized = 0; + +static SubBlock* SubBlock_merge_prev(SubBlock*, SubBlock**); +static void SubBlock_merge_next(SubBlock* , SubBlock** ); + +static const unsigned long fix_pool_sizes[] = {4, 12, 20, 36, 52, 68}; + +#define SubBlock_size(ths) ((ths)->size & 0xFFFFFFF8) +#define SubBlock_block(ths) ((Block*)((unsigned long)((ths)->block) & ~0x1)) +#define Block_size(ths) ((ths)->size & 0xFFFFFFF8) +#define Block_start(ths) (*(SubBlock**)((char*)(ths) + Block_size((ths)) - sizeof(unsigned long))) + +#define SubBlock_set_free(ths) \ + unsigned long this_size = SubBlock_size((ths)); \ + (ths)->size &= ~0x2; \ + *(unsigned long*)((char*)(ths) + this_size) &= ~0x4; \ + *(unsigned long*)((char*)(ths) + this_size - sizeof(unsigned long)) = this_size + + +#define SubBlock_is_free(ths) !((ths)->size & 2) +#define SubBlock_set_size(ths, sz) \ + (ths)->size &= ~0xFFFFFFF8; \ + (ths)->size |= (sz) & 0xFFFFFFF8; \ + if (SubBlock_is_free((ths))) \ + *(unsigned long*)((char*)(ths) + (sz) - sizeof(unsigned long)) = (sz) + +#define SubBlock_from_pointer(ptr) ((SubBlock*)((char*)(ptr) - 8)) +#define FixSubBlock_from_pointer(ptr) ((FixSubBlock*)((char*)(ptr) - 4)) + +#define FixBlock_client_size(ths) ((ths)->client_size_) +#define FixSubBlock_size(ths) (FixBlock_client_size((ths)->block_)) + +#define classify(ptr) (*(unsigned long*)((char*)(ptr) - sizeof(unsigned long)) & 1) +#define __msize_inline(ptr) (!classify(ptr) ? FixSubBlock_size(FixSubBlock_from_pointer(ptr)) : SubBlock_size(SubBlock_from_pointer(ptr)) - 8) + +#define Block_empty(ths) \ + (_sb = (SubBlock*)((char*)(ths) + 16)), \ + SubBlock_is_free(_sb) && SubBlock_size(_sb) == Block_size((ths)) - 24 + +//unused +void Block_subBlock(){ +} + +void Block_link(Block* ths, SubBlock* sb) { + SubBlock** st; + SubBlock_set_free(sb); + st = &Block_start(ths); + + if (*st != 0) + { + sb->prev = (*st)->prev; + sb->prev->next = sb; + sb->next = *st; + (*st)->prev = sb; + *st = sb; + *st = SubBlock_merge_prev(*st, st); + SubBlock_merge_next(*st, st); + } + else + { + *st = sb; + sb->prev = sb; + sb->next = sb; + } + if (ths->max_size < SubBlock_size(*st)) + ths->max_size = SubBlock_size(*st); +} + +static SubBlock* SubBlock_merge_prev(SubBlock *ths, SubBlock **start) { + unsigned long prevsz; + SubBlock* p; + + if (!(ths->size & 0x04)) + { + prevsz = *(unsigned long*)((char*)ths - sizeof(unsigned long)); + if (prevsz & 0x2) + return ths; + p = (SubBlock*)((char*)ths - prevsz); + SubBlock_set_size(p, prevsz + SubBlock_size(ths)); + + if (*start == ths) + *start = (*start)->next; + ths->next->prev = ths->prev; + ths->next->prev->next = ths->next; + return p; + } + return ths; +} + + +static void SubBlock_merge_next(SubBlock *pBlock, SubBlock **pStart) { + SubBlock* next_sub_block; + unsigned long this_cur_size; + + next_sub_block = (SubBlock*)((char*)pBlock + (pBlock->size & 0xFFFFFFF8)); + + if (!(next_sub_block->size & 2)) { + this_cur_size = (pBlock->size & 0xFFFFFFF8) + (next_sub_block->size & 0xFFFFFFF8); + + pBlock->size &= ~0xFFFFFFF8; + pBlock->size |= this_cur_size & 0xFFFFFFF8; + + if (!(pBlock->size & 2)) { + *(unsigned long*)((char*)(pBlock) + (this_cur_size) - 4) = (this_cur_size); + } + + if (!(pBlock->size & 2)) { + *(unsigned long *)((char*)pBlock + this_cur_size) &= ~4; + } + else { + *(unsigned long *)((char*)pBlock + this_cur_size) |= 4; + } + + if (*pStart == next_sub_block) { + *pStart = (*pStart)->next; + } + + if (*pStart == next_sub_block) { + *pStart = 0; + } + + next_sub_block->next->prev = next_sub_block->prev; + next_sub_block->prev->next = next_sub_block->next; + } +} + +static Block* __unlink(__mem_pool_obj* pool_obj, Block* bp) { + Block* result = bp->next; + if (result == bp) { + result = 0; + } + + if (pool_obj->start_ == bp) { + pool_obj->start_ = result; + } + + if (result != 0) { + result->prev = bp->prev; + result->prev->next = result; + } + + bp->next = 0; + bp->prev = 0; + return result; +} + +//unused +void allocate_from_var_pools(){ +} + +//unused +void soft_allocate_from_var_pools(){ +} + +static void deallocate_from_var_pools(__mem_pool_obj* pool_obj, void *ptr) { + SubBlock* sb = SubBlock_from_pointer(ptr); + SubBlock* _sb; + + Block* bp = SubBlock_block(sb); + Block_link(bp, sb); + + if (Block_empty(bp)) { + __unlink(pool_obj, bp); + __sys_free(bp); + } +} + +//unused +void FixBlock_construct(){ +} + +void __init_pool_obj(__mem_pool* pool_obj) { + memset(pool_obj, 0, sizeof(__mem_pool_obj)); +} + + +static __mem_pool* get_malloc_pool(void) { + static __mem_pool protopool; + static unsigned char init = 0; + if (!init) { + __init_pool_obj(&protopool); + init = 1; + } + + return &protopool; +} + +//unused +void allocate_from_fixed_pools(){ +} + +void deallocate_from_fixed_pools(__mem_pool_obj* pool_obj, void* ptr, unsigned long size) { + unsigned long i = 0; + FixSubBlock* p; + FixBlock* b; + FixStart* fs; + + while (size > fix_pool_sizes[i]) { + ++i; + } + + fs = &pool_obj->fix_start[i]; + p = FixSubBlock_from_pointer(ptr); + b = p->block_; + + if (b->start_ == 0 && fs->head_ != b) { + if (fs->tail_ == b) { + fs->head_ = fs->head_->prev_; + fs->tail_ = fs->tail_->prev_; + } + else { + b->prev_->next_ = b->next_; + b->next_->prev_ = b->prev_; + b->next_ = fs->head_; + b->prev_ = b->next_->prev_; + b->prev_->next_ = b; + b->next_->prev_ = b; + fs->head_ = b; + } + } + + p->next_ = b->start_; + b->start_ = p; + + if (--b->n_allocated_ == 0) { + if (fs->head_ == b) { + fs->head_ = b->next_; + } + + if (fs->tail_ == b) { + fs->tail_ = b->prev_; + } + + b->prev_->next_ = b->next_; + b->next_->prev_ = b->prev_; + + if (fs->head_ == b) { + fs->head_ = 0; + } + + if (fs->tail_ == b) { + fs->tail_ = 0; + } + + deallocate_from_var_pools(pool_obj, b); + } +} + +//unused +void __pool_allocate_resize(){ +} + +//unused +void __msize(){ +} + +//unused +void __pool_alloc(){ +} + +//unused +void __allocate_size(){ +} + +//unused +void __allocate(){ +} + +//unused +void __allocate_resize(){ +} + +//unused +void __allocate_expand(){ +} + +void __pool_free(__mem_pool *pool, void *ptr) { + __mem_pool_obj* pool_obj; + unsigned long size; + + if (ptr == 0) { + return; + } + + pool_obj = (__mem_pool_obj*)pool; + size = __msize_inline(ptr); + + if (size <= 68) { + deallocate_from_fixed_pools(pool_obj, ptr, size); + } + else { + deallocate_from_var_pools(pool_obj, ptr); + } +} + +//unused +void __pool_realloc(){ +} + +//unused +void __pool_alloc_clear(){ +} + +//unused +void malloc(){ +} + +void free(void *ptr) { + __pool_free(get_malloc_pool(), ptr); +} + + +//unused +void realloc(){ +} + +//unused +void calloc(){ +} + +//unused +void __pool_free_all(){ +} + +//unused +void __malloc_free_all(){ +} diff --git a/src/MSL_C.PPCEABI.bare.H/printf.c b/src/MSL_C.PPCEABI.bare.H/printf.c index 21d248da..9fa17473 100644 --- a/src/MSL_C.PPCEABI.bare.H/printf.c +++ b/src/MSL_C.PPCEABI.bare.H/printf.c @@ -17,1060 +17,1123 @@ extern void __num2dec(const decform*, double, decimal*); #define TARGET_FLOAT_MANT_DIG LDBL_MANT_DIG #define TARGET_FLOAT_IMPLICIT_J_BIT 1 #define TARGET_FLOAT_MANT_BITS \ - (TARGET_FLOAT_MANT_DIG - TARGET_FLOAT_IMPLICIT_J_BIT) + (TARGET_FLOAT_MANT_DIG - TARGET_FLOAT_IMPLICIT_J_BIT) #define TARGET_FLOAT_EXP_BITS (TARGET_FLOAT_BITS - TARGET_FLOAT_MANT_BITS - 1) enum justification_options { - left_justification, - right_justification, - zero_fill + left_justification, + right_justification, + zero_fill }; enum sign_options { only_minus, sign_always, space_holder }; enum argument_options { - normal_argument, - char_argument, - short_argument, - long_argument, - long_long_argument, - long_double_argument, - wchar_argument + normal_argument, + char_argument, + short_argument, + long_argument, + long_long_argument, + long_double_argument, + wchar_argument }; typedef struct { - unsigned char justification_options; - unsigned char sign_options; - unsigned char precision_specified; - unsigned char alternate_form; - unsigned char argument_options; - unsigned char conversion_char; - int field_width; - int precision; + unsigned char justification_options; + unsigned char sign_options; + unsigned char precision_specified; + unsigned char alternate_form; + unsigned char argument_options; + unsigned char conversion_char; + int field_width; + int precision; } print_format; -static const char* parse_format(const char* format_string, va_list* arg, - print_format* format) -{ - print_format f; - const char* s = format_string; - int c; - int flag_found; - f.justification_options = right_justification; - f.sign_options = only_minus; - f.precision_specified = 0; - f.alternate_form = 0; - f.argument_options = normal_argument; - f.field_width = 0; - f.precision = 0; +static const char* parse_format(const char *format_string, va_list *arg, print_format *format) { + print_format f; + const char* s = format_string; + int c; + int flag_found; + f.justification_options = right_justification; + f.sign_options = only_minus; + f.precision_specified = 0; + f.alternate_form = 0; + f.argument_options = normal_argument; + f.field_width = 0; + f.precision = 0; - if ((c = *++s) == '%') { - f.conversion_char = c; - *format = f; - return ((const char*)s + 1); - } + if ((c = *++s) == '%') { + f.conversion_char = c; + *format = f; + return ((const char*)s + 1); + } - for (;;) { - flag_found = 1; + for (;;) { + flag_found = 1; - switch (c) { - case '-': - f.justification_options = left_justification; - break; - case '+': - f.sign_options = sign_always; - break; - case ' ': - if (f.sign_options != sign_always) { - f.sign_options = space_holder; - } - break; - case '#': - f.alternate_form = 1; - break; - case '0': - if (f.justification_options != left_justification) { - f.justification_options = zero_fill; - } - break; - default: - flag_found = 0; - break; - } + switch (c) { + case '-': + f.justification_options = left_justification; + break; + case '+': + f.sign_options = sign_always; + break; + case ' ': + if (f.sign_options != sign_always) { + f.sign_options = space_holder; + } + break; + case '#': + f.alternate_form = 1; + break; + case '0': + if (f.justification_options != left_justification) { + f.justification_options = zero_fill; + } + break; + default: + flag_found = 0; + break; + } - if (flag_found) { - c = *++s; - } else { - break; - } - } + if (flag_found) { + c = *++s; + } + else { + break; + } + } - if (c == '*') { - if ((f.field_width = va_arg(*arg, int)) < 0) { - f.justification_options = left_justification; - f.field_width = -f.field_width; - } + if (c == '*') { + if ((f.field_width = va_arg(*arg, int)) < 0) { + f.justification_options = left_justification; + f.field_width = -f.field_width; + } - c = *++s; - } else { - while (isdigit(c)) { - f.field_width = (f.field_width * 10) + (c - '0'); - c = *++s; - } - } + c = *++s; + } + else { + while (isdigit(c)) { + f.field_width = (f.field_width * 10) + (c - '0'); + c = *++s; + } + } - if (f.field_width > 509) { - f.conversion_char = 0xFF; - *format = f; - return ((const char*)s + 1); - } + if (f.field_width > 509) { + f.conversion_char = 0xFF; + *format = f; + return ((const char*)s + 1); + } - if (c == '.') { - f.precision_specified = 1; + if (c == '.') { + f.precision_specified = 1; - if ((c = *++s) == '*') { - if ((f.precision = va_arg(*arg, int)) < 0) { - f.precision_specified = 0; - } + if ((c = *++s) == '*') { + if ((f.precision = va_arg(*arg, int)) < 0) { + f.precision_specified = 0; + } - c = *++s; - } else { - while (isdigit(c)) { - f.precision = (f.precision * 10) + (c - '0'); - c = *++s; - } - } - } + c = *++s; + } + else { + while (isdigit(c)) { + f.precision = (f.precision * 10) + (c - '0'); + c = *++s; + } + } + } - flag_found = 1; + flag_found = 1; - switch (c) { - case 'h': - f.argument_options = short_argument; + switch (c) { + case 'h': + f.argument_options = short_argument; - if (s[1] == 'h') { - f.argument_options = char_argument; - c = *++s; - } + if (s[1] == 'h') { + f.argument_options = char_argument; + c = *++s; + } - break; + break; - case 'l': - f.argument_options = long_argument; + case 'l': + f.argument_options = long_argument; - if (s[1] == 'l') { - f.argument_options = long_long_argument; - c = *++s; - } + if (s[1] == 'l') { + f.argument_options = long_long_argument; + c = *++s; + } - break; + break; - case 'L': - f.argument_options = long_double_argument; - break; - default: - flag_found = 0; - break; - } + case 'L': + f.argument_options = long_double_argument; + break; + default: + flag_found = 0; + break; + } - if (flag_found) { - c = *++s; - } + if (flag_found) { + c = *++s; + } - f.conversion_char = c; + f.conversion_char = c; - switch (c) { - case 'd': - case 'i': - case 'u': - case 'o': - case 'x': - case 'X': - if (f.argument_options == long_double_argument) { - f.conversion_char = 0xFF; - break; - } + switch (c) { + case 'd': + case 'i': + case 'u': + case 'o': + case 'x': + case 'X': + if (f.argument_options == long_double_argument) { + f.conversion_char = 0xFF; + break; + } - if (!f.precision_specified) { - f.precision = 1; - } else if (f.justification_options == zero_fill) { - f.justification_options = right_justification; - } - break; + if (!f.precision_specified) { + f.precision = 1; + } + else if (f.justification_options == zero_fill) { + f.justification_options = right_justification; + } + break; - case 'f': - if (f.argument_options == short_argument - || f.argument_options == long_long_argument) { - f.conversion_char = 0xFF; - break; - } + case 'f': + case 'F': + if (f.argument_options == short_argument || f.argument_options == long_long_argument) { + f.conversion_char = 0xFF; + break; + } - if (!f.precision_specified) { - f.precision = 6; - } - break; + if (!f.precision_specified) { + f.precision = 6; + } + break; - case 'g': - case 'G': - if (!f.precision) { - f.precision = 1; - } + case 'a': + case 'A': + if (!f.precision_specified) { + f.precision = 0xD; + } - case 'e': - case 'E': - if (f.argument_options == short_argument - || f.argument_options == long_long_argument - || f.argument_options == char_argument) { - f.conversion_char = 0xFF; - break; - } + if (f.argument_options == short_argument || f.argument_options == long_long_argument || f.argument_options == char_argument) { + f.conversion_char = 0xFF; + } - if (!f.precision_specified) { - f.precision = 6; - } - break; + break; - case 'p': - f.conversion_char = 'x'; - f.alternate_form = 1; - f.argument_options = long_argument; - f.precision = 8; - break; + case 'g': + case 'G': + if (!f.precision) { + f.precision = 1; + } - case 'c': - if (f.argument_options == long_argument) { - f.argument_options = wchar_argument; - } else { - if (f.precision_specified - || f.argument_options != normal_argument) { - f.conversion_char = 0xFF; - } - } + case 'e': + case 'E': + if (f.argument_options == short_argument || f.argument_options == long_long_argument || f.argument_options == char_argument) { + f.conversion_char = 0xFF; + break; + } - break; + if (!f.precision_specified) { + f.precision = 6; + } + break; - case 's': - if (f.argument_options == long_argument) { - f.argument_options = wchar_argument; - } else { - if (f.argument_options != normal_argument) { - f.conversion_char = 0xFF; - } - } + case 'p': + f.conversion_char = 'x'; + f.alternate_form = 1; + f.argument_options = long_argument; + f.precision = 8; + break; - break; + case 'c': + if (f.argument_options == long_argument) { + f.argument_options = wchar_argument; + } + else { + if (f.precision_specified || f.argument_options != normal_argument) { + f.conversion_char = 0xFF; + } + } - case 'n': - if (f.argument_options == long_double_argument) { - f.conversion_char = 0xFF; - } + break; - break; + case 's': + if (f.argument_options == long_argument) { + f.argument_options = wchar_argument; + } + else { + if (f.argument_options != normal_argument) { + f.conversion_char = 0xFF; + } + } - default: - f.conversion_char = 0xFF; - break; - } + break; - *format = f; - return ((const char*)s + 1); + case 'n': + if (f.argument_options == long_double_argument) { + f.conversion_char = 0xFF; + } + + break; + + default: + f.conversion_char = 0xFF; + break; + } + + *format = f; + return ((const char*)s + 1); } -static char* long2str(signed long num, char* buff, print_format* format) +static char* long2str(long num, char* buff, print_format format) { - unsigned long unsigned_num, base; - char* p; - int n, digits; - int minus = 0; - unsigned_num = num; - minus = 0; + unsigned long unsigned_num, base; + char* p; + int n, digits; + int minus = 0; + unsigned_num = num; + minus = 0; - p = buff; - *--p = 0; - digits = 0; + p = buff; + *--p = 0; + digits = 0; - if (!num && !format->precision - && !(format->alternate_form && format->conversion_char == 'o')) { - return p; - } + if (!num && !format.precision + && !(format.alternate_form && format.conversion_char == 'o')) { + return p; + } - switch (format->conversion_char) { - case 'd': - case 'i': - base = 10; + switch (format.conversion_char) { + case 'd': + case 'i': + base = 10; - if (num < 0) { - unsigned_num = -unsigned_num; - minus = 1; - } - break; + if (num < 0) { + unsigned_num = -unsigned_num; + minus = 1; + } + break; - case 'o': - base = 8; - format->sign_options = only_minus; - break; + case 'o': + base = 8; + format.sign_options = only_minus; + break; - case 'u': - base = 10; - format->sign_options = only_minus; - break; + case 'u': + base = 10; + format.sign_options = only_minus; + break; - case 'x': - case 'X': - base = 16; - format->sign_options = only_minus; - break; - } + case 'x': + case 'X': + base = 16; + format.sign_options = only_minus; + break; + } - do { - n = unsigned_num % base; - unsigned_num /= base; + do { + n = unsigned_num % base; + unsigned_num /= base; - if (n < 10) { - n += '0'; - } else { - n -= 10; + if (n < 10) { + n += '0'; + } else { + n -= 10; - if (format->conversion_char == 'x') { - n += 'a'; - } else { - n += 'A'; - } - } + if (format.conversion_char == 'x') { + n += 'a'; + } else { + n += 'A'; + } + } - *--p = n; - ++digits; - } while (unsigned_num != 0); + *--p = n; + ++digits; + } while (unsigned_num != 0); - if (base == 8 && format->alternate_form && *p != '0') { - *--p = '0'; - ++digits; - } + if (base == 8 && format.alternate_form && *p != '0') { + *--p = '0'; + ++digits; + } - if (format->justification_options == zero_fill) { - format->precision = format->field_width; + if (format.justification_options == zero_fill) { + format.precision = format.field_width; - if (minus || format->sign_options != only_minus) - --format->precision; + if (minus || format.sign_options != only_minus) + --format.precision; - if (base == 16 && format->alternate_form) - format->precision -= 2; - } + if (base == 16 && format.alternate_form) + format.precision -= 2; + } - if (buff - p + format->precision > 509) - return (0); + if (buff - p + format.precision > 509) + return (0); - while (digits < format->precision) { - *--p = '0'; - ++digits; - } + while (digits < format.precision) { + *--p = '0'; + ++digits; + } - if (base == 16 && format->alternate_form) { - *--p = format->conversion_char; - *--p = '0'; - } + if (base == 16 && format.alternate_form) { + *--p = format.conversion_char; + *--p = '0'; + } - if (minus) { - *--p = '-'; - } else if (format->sign_options == sign_always) { - *--p = '+'; - } else if (format->sign_options == space_holder) { - *--p = ' '; - } + if (minus) { + *--p = '-'; + } else if (format.sign_options == sign_always) { + *--p = '+'; + } else if (format.sign_options == space_holder) { + *--p = ' '; + } - return p; + return p; } -static char* longlong2str(signed long long num, char* pBuf, print_format* fmt) +static char* longlong2str(long long num, char* pBuf, print_format fmt) { - unsigned long long unsigned_num, base; - char* p; - int n, digits; - int minus = 0; - unsigned_num = num; - minus = 0; - p = pBuf; - *--p = 0; - digits = 0; + unsigned long long unsigned_num, base; + char* p; + int n, digits; + int minus = 0; + unsigned_num = num; + minus = 0; + p = pBuf; + *--p = 0; + digits = 0; - if (!num && !fmt->precision - && !(fmt->alternate_form && fmt->conversion_char == 'o')) { - return p; - } + if (!num && !fmt.precision + && !(fmt.alternate_form && fmt.conversion_char == 'o')) { + return p; + } - switch (fmt->conversion_char) { - case 'd': - case 'i': - base = 10; + switch (fmt.conversion_char) { + case 'd': + case 'i': + base = 10; - if (num < 0) { - unsigned_num = -unsigned_num; - minus = 1; - } - break; - case 'o': - base = 8; - fmt->sign_options = only_minus; - break; - case 'u': - base = 10; - fmt->sign_options = only_minus; - break; - case 'x': - case 'X': - base = 16; - fmt->sign_options = only_minus; - break; - } + if (num < 0) { + unsigned_num = -unsigned_num; + minus = 1; + } + break; + case 'o': + base = 8; + fmt.sign_options = only_minus; + break; + case 'u': + base = 10; + fmt.sign_options = only_minus; + break; + case 'x': + case 'X': + base = 16; + fmt.sign_options = only_minus; + break; + } - do { - n = unsigned_num % base; - unsigned_num /= base; + do { + n = unsigned_num % base; + unsigned_num /= base; - if (n < 10) { - n += '0'; - } else { - n -= 10; - if (fmt->conversion_char == 'x') { - n += 'a'; - } else { - n += 'A'; - } - } + if (n < 10) { + n += '0'; + } else { + n -= 10; + if (fmt.conversion_char == 'x') { + n += 'a'; + } else { + n += 'A'; + } + } - *--p = n; - ++digits; - } while (unsigned_num != 0); + *--p = n; + ++digits; + } while (unsigned_num != 0); - if (base == 8 && fmt->alternate_form && *p != '0') { - *--p = '0'; - ++digits; - } + if (base == 8 && fmt.alternate_form && *p != '0') { + *--p = '0'; + ++digits; + } - if (fmt->justification_options == zero_fill) { - fmt->precision = fmt->field_width; + if (fmt.justification_options == zero_fill) { + fmt.precision = fmt.field_width; - if (minus || fmt->sign_options != only_minus) { - --fmt->precision; - } + if (minus || fmt.sign_options != only_minus) { + --fmt.precision; + } - if (base == 16 && fmt->alternate_form) { - fmt->precision -= 2; - } - } + if (base == 16 && fmt.alternate_form) { + fmt.precision -= 2; + } + } - if (pBuf - p + fmt->precision > 509) { - return 0; - } + if (pBuf - p + fmt.precision > 509) { + return 0; + } - while (digits < fmt->precision) { - *--p = '0'; - ++digits; - } + while (digits < fmt.precision) { + *--p = '0'; + ++digits; + } - if (base == 16 && fmt->alternate_form) { - *--p = fmt->conversion_char; - *--p = '0'; - } + if (base == 16 && fmt.alternate_form) { + *--p = fmt.conversion_char; + *--p = '0'; + } - if (minus) { - *--p = '-'; - } else if (fmt->sign_options == sign_always) { - *--p = '+'; - } else if (fmt->sign_options == space_holder) { - *--p = ' '; - } + if (minus) { + *--p = '-'; + } else if (fmt.sign_options == sign_always) { + *--p = '+'; + } else if (fmt.sign_options == space_holder) { + *--p = ' '; + } - return p; + return p; } +static char * double2hex(long double num, char * buff, print_format format); + static void round_decimal(decimal* dec, int new_length) { - char c; - char* p; - int carry; + char c; + char* p; + int carry; - if (new_length < 0) { - return_zero: - dec->sign = 0; - dec->exp = 0; - dec->sig.length = 1; - *dec->sig.text = '0'; - return; - } + if (new_length < 0) { + return_zero: + dec->exp = 0; + dec->sig.length = 1; + *dec->sig.text = '0'; + return; + } - if (new_length >= dec->sig.length) { - return; - } + if (new_length >= dec->sig.length) { + return; + } - p = (char*)dec->sig.text + new_length + 1; - c = *--p - '0'; + p = (char*)dec->sig.text + new_length + 1; + c = *--p - '0'; - if (c == 5) { - char* q = &((char*)dec->sig.text)[dec->sig.length]; + if (c == 5) { + char* q = &((char*)dec->sig.text)[dec->sig.length]; - while (--q > p && *q == '0') - ; - carry = (q == p) ? p[-1] & 1 : 1; - } else { - carry = (c > 5); - } + while (--q > p && *q == '0') + ; + carry = (q == p) ? p[-1] & 1 : 1; + } else { + carry = (c > 5); + } - while (new_length != 0) { - c = *--p - '0' + carry; + while (new_length != 0) { + c = *--p - '0' + carry; - if ((carry = (c > 9)) != 0 || c == 0) { - --new_length; - } else { - *p = c + '0'; - break; - } - } + if ((carry = (c > 9)) != 0 || c == 0) { + --new_length; + } else { + *p = c + '0'; + break; + } + } - if (carry != 0) { - dec->exp += 1; - dec->sig.length = 1; - *dec->sig.text = '1'; - return; - } else if (new_length == 0) { - goto return_zero; - } + if (carry != 0) { + dec->exp += 1; + dec->sig.length = 1; + *dec->sig.text = '1'; + return; + } else if (new_length == 0) { + goto return_zero; + } - dec->sig.length = new_length; + dec->sig.length = new_length; } -static char* float2str(va_list arg, char* buff, print_format* format, - int vecIndex) -{ - decimal dec; - decform form; - char* p; - char* q; - int n, digits, sign; - int int_digits, frac_digits; - long double num; +static char* float2str(long double num, char *buff, print_format format) { + decimal dec; + decform form; + char* p; + char* q; + int n, digits, sign; + int int_digits, frac_digits; - if (format->argument_options == long_double_argument) { - num = va_arg(arg, long double); - } else { - num = va_arg(arg, double); - } + if (format.precision > 509) { + return 0; + } - if (format->precision > 509) { - return 0; - } + form.style = 0; + form.digits = 0x20; + __num2dec(&form, num, &dec); + p = (char*)dec.sig.text + dec.sig.length; - form.style = 0; - form.digits = 0x20; - __num2dec(&form, num, &dec); - p = (char*)dec.sig.text + dec.sig.length; + while (dec.sig.length > 1 && *--p == '0') { + --dec.sig.length; + ++dec.exp; + } - while (dec.sig.length > 1 && *--p == '0') { - --dec.sig.length; - ++dec.exp; - } + switch (*dec.sig.text) { + case '0': + dec.exp = 0; + break; + case 'I': + if (num < 0) { + p = buff - 5; - switch (*dec.sig.text) { - case '0': - dec.exp = 0; - break; - case 'I': - if (num < 0) { - p = buff - 5; - strcpy(p, "-Inf"); - } else { - p = buff - 4; - strcpy(p, "Inf"); - } + if (isupper(format.conversion_char)) { + strcpy(p, "-INF"); + } + else { + strcpy(p, "-inf"); + } + } + else { + p = buff - 4; + if (isupper(format.conversion_char)) { + strcpy(p, "INF"); + } + else { + strcpy(p, "inf"); + } + } - return p; + return p; - case 'N': - p = buff - 4; - strcpy(p, "NaN"); - return p; - } + case 'N': + if (dec.sign) { + p = buff - 5; - dec.exp += dec.sig.length - 1; - p = buff; - *--p = 0; + if (isupper(format.conversion_char)) { + strcpy(p, "-NAN"); + } + else { + strcpy(p, "-nan"); + } + } + else { + p = buff - 4; + if (isupper(format.conversion_char)) { + strcpy(p, "NAN"); + } + else { + strcpy(p, "nan"); + } + } - switch (format->conversion_char) { - case 'g': - case 'G': + return p; + } - if (dec.sig.length > format->precision) { - round_decimal(&dec, format->precision); - } + dec.exp += dec.sig.length - 1; + p = buff; + *--p = 0; - if (dec.exp < -4 || dec.exp >= format->precision) { - if (format->alternate_form) { - --format->precision; - } else { - format->precision = dec.sig.length - 1; - } + switch (format.conversion_char) + { + case 'g': + case 'G': - if (format->conversion_char == 'g') { - format->conversion_char = 'e'; - } else { - format->conversion_char = 'E'; - } + if (dec.sig.length > format.precision) { + round_decimal(&dec, format.precision); + } - goto e_format; - } + if (dec.exp < -4 || dec.exp >= format.precision) + { + if (format.alternate_form) { + --format.precision; + } + else { + format.precision = dec.sig.length - 1; + } - if (format->alternate_form) { - format->precision -= dec.exp + 1; - } else { - if ((format->precision = dec.sig.length - (dec.exp + 1)) < 0) { - format->precision = 0; - } - } + if (format.conversion_char == 'g') { + format.conversion_char = 'e'; + } + else { + format.conversion_char = 'E'; + } - goto f_format; + goto e_format; + } - case 'e': - case 'E': - e_format: + if (format.alternate_form) { + format.precision -= dec.exp + 1; + } + else { + if ((format.precision = dec.sig.length - (dec.exp + 1)) < 0) { + format.precision = 0; + } + } - if (dec.sig.length > format->precision + 1) { - round_decimal(&dec, format->precision + 1); - } + goto f_format; - n = dec.exp; - sign = '+'; + case 'e': + case 'E': + e_format: - if (n < 0) { - n = -n; - sign = '-'; - } + if (dec.sig.length > format.precision + 1) { + round_decimal(&dec, format.precision + 1); + } - for (digits = 0; n || digits < 2; ++digits) { - *--p = n % 10 + '0'; - n /= 10; - } + n = dec.exp; + sign = '+'; - *--p = sign; - *--p = format->conversion_char; + if (n < 0) { + n = -n; + sign = '-'; + } - if (buff - p + format->precision > 509) { - return 0; - } + for (digits = 0; n || digits < 2; ++digits) { + *--p = n % 10 + '0'; + n /= 10; + } - if (dec.sig.length < format->precision + 1) { - for (n = format->precision + 1 - dec.sig.length + 1; --n;) { - *--p = '0'; - } - } + *--p = sign; + *--p = format.conversion_char; - for (n = dec.sig.length, q = (char*)dec.sig.text + dec.sig.length; - --n;) { - *--p = *--q; - } + if (buff - p + format.precision > 509) { + return 0; + } - if (format->precision || format->alternate_form) { - *--p = '.'; - } + if (dec.sig.length < format.precision + 1) { + for (n = format.precision + 1 - dec.sig.length + 1; --n;) { + *--p = '0'; + } + } - *--p = *dec.sig.text; + for (n = dec.sig.length, q = (char*)dec.sig.text + dec.sig.length; --n;) { + *--p = *--q; + } - if (dec.sign) - *--p = '-'; - else if (format->sign_options == sign_always) - *--p = '+'; - else if (format->sign_options == space_holder) - *--p = ' '; + if (format.precision || format.alternate_form) { + *--p = '.'; + } - break; + *--p = *dec.sig.text; - case 'f': - f_format: + if (dec.sign) + *--p = '-'; + else if (format.sign_options == sign_always) + *--p = '+'; + else if (format.sign_options == space_holder) + *--p = ' '; - if ((frac_digits = -dec.exp + dec.sig.length - 1) < 0) - frac_digits = 0; + break; - if (frac_digits > format->precision) { - round_decimal(&dec, - dec.sig.length - (frac_digits - format->precision)); + case 'f': + case 'F': + f_format: - if ((frac_digits = -dec.exp + dec.sig.length - 1) < 0) - frac_digits = 0; - } + if ((frac_digits = -dec.exp + dec.sig.length - 1) < 0) + frac_digits = 0; - if ((int_digits = dec.exp + 1) < 0) - int_digits = 0; + if (frac_digits > format.precision) { + round_decimal(&dec, dec.sig.length - (frac_digits - format.precision)); - if (int_digits + frac_digits > 509) - return 0; + if ((frac_digits = -dec.exp + dec.sig.length - 1) < 0) + frac_digits = 0; + } - q = (char*)dec.sig.text + dec.sig.length; + if ((int_digits = dec.exp + 1) < 0) + int_digits = 0; - for (digits = 0; digits < (format->precision - frac_digits); ++digits) - *--p = '0'; + if (int_digits + frac_digits > 509) + return 0; - for (digits = 0; digits < frac_digits && digits < dec.sig.length; - ++digits) - *--p = *--q; + q = (char *) dec.sig.text + dec.sig.length; - for (; digits < frac_digits; ++digits) - *--p = '0'; + for (digits = 0; digits < (format.precision - frac_digits); ++digits) + *--p = '0'; - if (format->precision || format->alternate_form) - *--p = '.'; + for (digits = 0; digits < frac_digits && digits < dec.sig.length; ++digits) + *--p = *--q; - if (int_digits) { - for (digits = 0; digits < int_digits - dec.sig.length; ++digits) { - *--p = '0'; - } + for (; digits < frac_digits; ++digits) + *--p = '0'; - for (; digits < int_digits; ++digits) { - *--p = *--q; - } - } else { - *--p = '0'; - } + if (format.precision || format.alternate_form) + *--p = '.'; - if (dec.sign) { - *--p = '-'; - } else if (format->sign_options == sign_always) { - *--p = '+'; - } else if (format->sign_options == space_holder) { - *--p = ' '; - } + if (int_digits) { + for (digits = 0; digits < int_digits - dec.sig.length; ++digits) { + *--p = '0'; + } - break; - } + for (; digits < int_digits; ++digits) { + *--p = *--q; + } + } + else { + *--p = '0'; + } - return p; + if (dec.sign) { + *--p = '-'; + } + else if (format.sign_options == sign_always) { + *--p = '+'; + } + else if (format.sign_options == space_holder) { + *--p = ' '; + } + + break; + } + + return p; } -static int __pformatter(void* (*WriteProc)(void*, const char*, size_t), - void* WriteProcArg, const char* format_str, va_list arg) -{ - int num_chars, chars_written, field_width; - const char* format_ptr; - const char* curr_format; - print_format format; - signed long long_num; - signed long long long_long_num; - char buff[512]; - char* buff_ptr; - char* string_end; - char fill_char = ' '; +static int __pformatter(void *(*WriteProc)(void *, const char *, size_t), void *WriteProcArg, const char * format_str, va_list arg) { + int num_chars, chars_written, field_width; + const char* format_ptr; + const char* curr_format; + print_format format; + long long_num; + long long long_long_num; + long double long_double_num; + char buff[512]; + char* buff_ptr; + char* string_end; + char fill_char = ' '; - format_ptr = format_str; - chars_written = 0; + format_ptr = format_str; + chars_written = 0; - while (*format_ptr) { - if (!(curr_format = strchr(format_ptr, '%'))) { - num_chars = strlen(format_ptr); - chars_written += num_chars; + while (*format_ptr) { + if (!(curr_format = strchr(format_ptr, '%'))) { + num_chars = strlen(format_ptr); + chars_written += num_chars; - if (num_chars - && !(*WriteProc)(WriteProcArg, format_ptr, num_chars)) { - return -1; - } + if (num_chars && !(*WriteProc)(WriteProcArg, format_ptr, num_chars)) { + return -1; + } - break; - } + break; + } - num_chars = curr_format - format_ptr; - chars_written += num_chars; + num_chars = curr_format - format_ptr; + chars_written += num_chars; - if (num_chars && !(*WriteProc)(WriteProcArg, format_ptr, num_chars)) { - return -1; - } + if (num_chars && !(*WriteProc)(WriteProcArg, format_ptr, num_chars)) { + return -1; + } - format_ptr = curr_format; - format_ptr = parse_format(format_ptr, (va_list*)arg, &format); + format_ptr = curr_format; + format_ptr = parse_format(format_ptr, (va_list*)arg, &format); - switch (format.conversion_char) { - case 'd': - case 'i': - if (format.argument_options == long_argument) { - long_num = va_arg(arg, signed long); - } else if (format.argument_options == long_long_argument) { - long_long_num = va_arg(arg, signed long long); - } else { - long_num = va_arg(arg, int); - } + switch (format.conversion_char) { + case 'd': + case 'i': + if (format.argument_options == long_argument) { + long_num = va_arg(arg, long); + } + else if (format.argument_options == long_long_argument) { + long_long_num = va_arg(arg, long long); + } + else { + long_num = va_arg(arg, int); + } - if (format.argument_options == short_argument) { - long_num = (signed short)long_num; - } + if (format.argument_options == short_argument) { + long_num = (short)long_num; + } - if (format.argument_options == char_argument) { - long_num = (signed char)long_num; - } + if (format.argument_options == char_argument) { + long_num = (signed char)long_num; + } - if (format.argument_options == long_long_argument) { - if (!(buff_ptr - = longlong2str(long_long_num, buff + 512, &format))) { - goto conversion_error; - } - } else { - if (!(buff_ptr = long2str(long_num, buff + 512, &format))) { - goto conversion_error; - } - } + if (format.argument_options == long_long_argument) { + if (!(buff_ptr = longlong2str(long_long_num, buff + 512, format))) { + goto conversion_error; + } + } + else { + if (!(buff_ptr = long2str(long_num, buff + 512, format))) { + goto conversion_error; + } + } - num_chars = buff + 512 - 1 - buff_ptr; - break; + num_chars = buff + 512 - 1 - buff_ptr; + break; - case 'o': - case 'u': - case 'x': - case 'X': - if (format.argument_options == long_argument) { - long_num = va_arg(arg, unsigned long); - } else if (format.argument_options == long_long_argument) { - long_long_num = va_arg(arg, signed long long); - } else { - long_num = va_arg(arg, unsigned int); - } + case 'o': + case 'u': + case 'x': + case 'X': + if (format.argument_options == long_argument) { + long_num = va_arg(arg, unsigned long); + } + else if (format.argument_options == long_long_argument) { + long_long_num = va_arg(arg, long long); + } + else { + long_num = va_arg(arg, unsigned int); + } - if (format.argument_options == short_argument) { - long_num = (unsigned short)long_num; - } + if (format.argument_options == short_argument) { + long_num = (unsigned short)long_num; + } - if (format.argument_options == char_argument) { - long_num = (unsigned char)long_num; - } + if (format.argument_options == char_argument) { + long_num = (unsigned char)long_num; + } - if (format.argument_options == long_long_argument) { - if (!(buff_ptr - = longlong2str(long_long_num, buff + 512, &format))) { - goto conversion_error; - } - } else { - if (!(buff_ptr = long2str(long_num, buff + 512, &format))) { - goto conversion_error; - } - } + if (format.argument_options == long_long_argument) { + if (!(buff_ptr = longlong2str(long_long_num, buff + 512, format))) { + goto conversion_error; + } + } + else { + if (!(buff_ptr = long2str(long_num, buff + 512, format))) { + goto conversion_error; + } + } - num_chars = buff + 512 - 1 - buff_ptr; - break; + num_chars = buff + 512 - 1 - buff_ptr; + break; - case 'f': - case 'e': - case 'E': - case 'g': - case 'G': - if (!(buff_ptr = float2str(arg, buff + 512, &format, 0))) { - goto conversion_error; - } + case 'f': + case 'F': + case 'e': + case 'E': + case 'g': + case 'G': + if (format.argument_options == long_double_argument) { + long_double_num = va_arg(arg, long double); + } + else { + long_double_num = va_arg(arg, double); + } - num_chars = buff + 512 - 1 - buff_ptr; - break; + if (!(buff_ptr = float2str(long_double_num, buff + 512, format))) { + goto conversion_error; + } - case 's': - if (format.argument_options == wchar_argument) { - wchar_t* wcs_ptr = va_arg(arg, wchar_t*); + num_chars = buff + 512 - 1 - buff_ptr; + break; - if (wcs_ptr == NULL) { - wcs_ptr = L""; - } + case 'a': + case 'A': + if (format.argument_options == long_double_argument) { + long_double_num = va_arg(arg, long double); + } + else { + long_double_num = va_arg(arg, double); + } - if ((num_chars = wcstombs(buff, wcs_ptr, sizeof(buff))) < 0) { - goto conversion_error; - } + if (!(buff_ptr = double2hex(long_double_num, buff + 512, format))) { + goto conversion_error; + } - buff_ptr = &buff[0]; - } else { - buff_ptr = va_arg(arg, char*); - } + num_chars = buff + 512 - 1 - buff_ptr; + break; - if (buff_ptr == NULL) { - buff_ptr = ""; - } + case 's': + if (format.argument_options == wchar_argument) { + wchar_t* wcs_ptr = va_arg(arg, wchar_t*); - if (format.alternate_form) { - num_chars = (unsigned char)*buff_ptr++; + if(wcs_ptr == NULL){ + wcs_ptr = L""; + } - if (format.precision_specified - && num_chars > format.precision) { - num_chars = format.precision; - } - } else if (format.precision_specified) { - num_chars = format.precision; + if ((num_chars = wcstombs(buff, wcs_ptr, sizeof(buff))) < 0) { + goto conversion_error; + } - if ((string_end - = (char*)memchr((unsigned char*)buff_ptr, 0, num_chars)) - != 0) { - num_chars = string_end - buff_ptr; - } - } else { - num_chars = strlen(buff_ptr); - } + buff_ptr = &buff[0]; + } + else { + buff_ptr = va_arg(arg, char *); + } - break; + if (buff_ptr == NULL) { + buff_ptr = ""; + } - case 'n': - buff_ptr = va_arg(arg, char*); + if (format.alternate_form) { + num_chars = (unsigned char)*buff_ptr++; - switch (format.argument_options) { - case normal_argument: - *(int*)buff_ptr = chars_written; - break; - case short_argument: - *(signed short*)buff_ptr = chars_written; - break; - case long_argument: - *(signed long*)buff_ptr = chars_written; - break; - case long_long_argument: - *(signed long long*)buff_ptr = chars_written; - break; - } + if (format.precision_specified && num_chars > format.precision) { + num_chars = format.precision; + } + } + else if (format.precision_specified) { + num_chars = format.precision; - continue; + if ((string_end = (char*)memchr((unsigned char*)buff_ptr, 0, num_chars)) != 0) { + num_chars = string_end - buff_ptr; + } + } + else { + num_chars = strlen(buff_ptr); + } - case 'c': - buff_ptr = buff; - *buff_ptr = va_arg(arg, int); - num_chars = 1; - break; + break; - case '%': - buff_ptr = buff; - *buff_ptr = '%'; - num_chars = 1; - break; + case 'n': + buff_ptr = va_arg(arg, char *); - case 0xFF: - default: - conversion_error: - num_chars = strlen(curr_format); - chars_written += num_chars; + switch (format.argument_options) { + case normal_argument: + *(int*)buff_ptr = chars_written; + break; + case short_argument: + *(short*)buff_ptr = chars_written; + break; + case long_argument: + *(long*)buff_ptr = chars_written; + break; + case long_long_argument: + *(long long*)buff_ptr = chars_written; + break; + } - if (num_chars - && !(*WriteProc)(WriteProcArg, curr_format, num_chars)) { - return -1; - } + continue; - return chars_written; - break; - } + case 'c': + buff_ptr = buff; + *buff_ptr = va_arg(arg, int); + num_chars = 1; + break; - field_width = num_chars; + case '%': + buff_ptr = buff; + *buff_ptr = '%'; + num_chars = 1; + break; - if (format.justification_options != left_justification) { - fill_char = (format.justification_options == zero_fill) ? '0' : ' '; + case 0xFF: + default: + conversion_error: + num_chars = strlen(curr_format); + chars_written += num_chars; - if (((*buff_ptr == '+') || (*buff_ptr == '-')) - && (fill_char == '0')) { - if ((*WriteProc)(WriteProcArg, buff_ptr, 1) == 0) { - return -1; - } + if (num_chars && !(*WriteProc)(WriteProcArg, curr_format, num_chars)) { + return -1; + } - ++buff_ptr; - num_chars--; - } + return chars_written; + break; + } - while (field_width < format.field_width) { - if ((*WriteProc)(WriteProcArg, &fill_char, 1) == 0) { - return -1; - } + field_width = num_chars; - ++field_width; - } - } + if (format.justification_options != left_justification) { + fill_char = (format.justification_options == zero_fill) ? '0' : ' '; - if (num_chars && !(*WriteProc)(WriteProcArg, buff_ptr, num_chars)) { - return -1; - } + if (((*buff_ptr == '+') || (*buff_ptr == '-') || (*buff_ptr == ' ')) && (fill_char == '0')) { + if ((*WriteProc)(WriteProcArg, buff_ptr, 1) == 0) { + return -1; + } - if (format.justification_options == left_justification) { - while (field_width < format.field_width) { - char blank = ' '; + ++buff_ptr; + num_chars--; + } - if ((*WriteProc)(WriteProcArg, &blank, 1) == 0) { - return -1; - } + while (field_width < format.field_width) { + if ((*WriteProc)(WriteProcArg, &fill_char, 1) == 0) { + return -1; + } - ++field_width; - } - } + ++field_width; + } + } - chars_written += field_width; - } + if (num_chars && !(*WriteProc)(WriteProcArg, buff_ptr, num_chars)) { + return -1; + } - return chars_written; + if (format.justification_options == left_justification) { + while (field_width < format.field_width) { + char blank = ' '; + + if ((*WriteProc)(WriteProcArg, &blank, 1) == 0) { + return -1; + } + + ++field_width; + } + } + + chars_written += field_width; + } + + return chars_written; } -static void* __FileWrite(void* pFile, const char* pBuffer, size_t char_num) +void* __FileWrite(void* pFile, const char* pBuffer, size_t char_num) { - return (fwrite(pBuffer, 1, char_num, (FILE*)pFile) == char_num ? pFile : 0); + return (fwrite(pBuffer, 1, char_num, (FILE*)pFile) == char_num ? pFile : 0); } -static void* __StringWrite(void* pCtrl, const char* pBuffer, size_t char_num) +void* __StringWrite(void* pCtrl, const char* pBuffer, size_t char_num) { - size_t chars; - __OutStrCtrl* ctrl = (__OutStrCtrl*)pCtrl; - void* res; + size_t chars; + __OutStrCtrl* ctrl = (__OutStrCtrl*)pCtrl; - chars = ((ctrl->CharsWritten + char_num) <= ctrl->MaxCharCount) - ? char_num - : ctrl->MaxCharCount - ctrl->CharsWritten; - res = memcpy(ctrl->CharStr + ctrl->CharsWritten, pBuffer, chars); - ctrl->CharsWritten += chars; - return res; + chars = ((ctrl->CharsWritten + char_num) <= ctrl->MaxCharCount) + ? char_num + : ctrl->MaxCharCount - ctrl->CharsWritten; + memcpy(ctrl->CharStr + ctrl->CharsWritten, pBuffer, chars); + ctrl->CharsWritten += chars; + return (void*) 1; } int printf(const char* format, ...) { - int res; + int res; - if (fwide(stdout, -1) >= 0) { - return -1; - } + if (fwide(stdout, -1) >= 0) { + return -1; + } - { - va_list args; - va_start(args, format); - res = __pformatter(&__FileWrite, (void*)stdout, format, args); - } + { + va_list args; + va_start(args, format); + res = __pformatter(&__FileWrite, (void*)stdout, format, args); + } - return res; + return res; } int vprintf(const char* format, va_list arg) { - int ret; + int ret; - if (fwide(stdout, -1) >= 0) { - return -1; - } + if (fwide(stdout, -1) >= 0) { + return -1; + } - ret = __pformatter(&__FileWrite, (void*)stdout, format, arg); - return ret; + ret = __pformatter(&__FileWrite, (void*)stdout, format, arg); + return ret; } int vsnprintf(char* s, size_t n, const char* format, va_list arg) { - int end; - __OutStrCtrl osc; - osc.CharStr = s; - osc.MaxCharCount = n; - osc.CharsWritten = 0; + int end; + __OutStrCtrl osc; + osc.CharStr = s; + osc.MaxCharCount = n; + osc.CharsWritten = 0; - end = __pformatter(&__StringWrite, &osc, format, arg); + end = __pformatter(&__StringWrite, &osc, format, arg); - s[(end < n) ? end : n - 1] = '\0'; + if (s) { + s[(end < n) ? end : n - 1] = '\0'; + } - return end; + return end; } -int snprintf(char* s, size_t n, const char* format, ...) -{ - va_list args; - va_start(args, format); - return vsnprintf(s, n, format, args); +int vsprintf(char *s, const char *format, va_list arg) { + return vsnprintf(s, 0xFFFFFFFF, format, arg); } int sprintf(char* s, const char* format, ...) { - va_list args; - va_start(args, format); - return vsnprintf(s, 0xFFFFFFFF, format, args); + va_list args; + va_start(args, format); + return vsnprintf(s, 0xFFFFFFFF, format, args); } diff --git a/src/MSL_C.PPCEABI.bare.H/signal.c b/src/MSL_C.PPCEABI.bare.H/signal.c index 9d5da4ee..3967650d 100755 --- a/src/MSL_C.PPCEABI.bare.H/signal.c +++ b/src/MSL_C.PPCEABI.bare.H/signal.c @@ -1,26 +1,24 @@ #include +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/signal.h" -void* signal_funcs[6]; +__signal_func_ptr signal_funcs[6]; -// regalloc: https://decomp.me/scratch/ufAYK -int raise(int arg0) { - void (*temp_r31)(int); - void** temp_r3; +int raise(int sig) { + __signal_func_ptr temp_r31; - if (arg0 < 1 || arg0 > 6) { + if (sig < 1 || sig > 6) { return -1; } - temp_r3 = &signal_funcs[arg0]; - temp_r31 = *(--temp_r3); + temp_r31 = signal_funcs[sig - 1]; if ((unsigned long) temp_r31 != 1) { - *temp_r3 = NULL; + signal_funcs[sig - 1] = NULL; } - if ((unsigned long) temp_r31 == 1 || (temp_r31 == NULL && arg0 == 1)) { + if ((unsigned long) temp_r31 == 1 || (temp_r31 == NULL && sig == 1)) { return 0; } if (temp_r31 == NULL) { exit(0); } - temp_r31(arg0); + temp_r31(sig); return 0; } diff --git a/src/MSL_C.PPCEABI.bare.H/string.c b/src/MSL_C.PPCEABI.bare.H/string.c index 4fbb776f..895f6662 100644 --- a/src/MSL_C.PPCEABI.bare.H/string.c +++ b/src/MSL_C.PPCEABI.bare.H/string.c @@ -1,8 +1,8 @@ #include "string.h" #include "stddef.h" -static int K1 = 0x80808080; -static int K2 = 0xFEFEFEFF; +#define K1 0x80808080 +#define K2 0xFEFEFEFF size_t strlen(const char* str) { @@ -20,8 +20,6 @@ char* strcpy(char* dst, const char* src) { register unsigned char *destb, *fromb; register unsigned long w, t, align; - register unsigned int k1; - register unsigned int k2; fromb = (unsigned char*)src; destb = (unsigned char*)dst; @@ -44,14 +42,11 @@ char* strcpy(char* dst, const char* src) ++fromb; } - k1 = K1; - k2 = K2; - w = *((int*)(fromb)); - t = w + k2; + t = w + K2; - t &= k1; + t &= K1; if (t) { goto bytecopy; } @@ -61,8 +56,8 @@ char* strcpy(char* dst, const char* src) *(++((int*)(destb))) = w; w = *(++((int*)(fromb))); - t = w + k2; - t &= k1; + t = w + K2; + t &= K1; if (t) { goto adjust; } @@ -103,16 +98,21 @@ char* strncpy(char* dst, const char* src, size_t n) return dst; } -char* strcat(char* dst, const char* src) +// TODO: same implementation as strncpy? +char* strcat(char* dst, const char* src, size_t n) { - const unsigned char* p = (unsigned char*)src - 1; + const unsigned char* p = (const unsigned char*)src - 1; unsigned char* q = (unsigned char*)dst - 1; - while (*++q) { } - - q--; - - while (*++q = *++p) { } + n++; + while (--n) { + if (!(*++q = *++p)) { + while (--n) { + *++q = 0; + } + break; + } + } return dst; } @@ -196,6 +196,22 @@ bytecopy: } while (1); } +int strncmp(const char* str1, const char* str2, size_t n) +{ + const unsigned char* p1 = (unsigned char*)str1 - 1; + const unsigned char* p2 = (unsigned char*)str2 - 1; + unsigned long c1, c2; + + n++; + + while (--n) + if ((c1 = *++p1) != (c2 = *++p2)) + return (c1 - c2); + else if (!c1) + break; + return 0; +} + char* strchr(const char* str, int c) { const unsigned char* p = (unsigned char*)str - 1; From 5e45589b3e9ec1fe723a58e3b7fc29be9d430bba Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 2 Feb 2025 18:38:55 +0100 Subject: [PATCH 145/178] Remove TODO --- src/REL/m412Dll/main.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/REL/m412Dll/main.c b/src/REL/m412Dll/main.c index d71592b2..35f10b6a 100644 --- a/src/REL/m412Dll/main.c +++ b/src/REL/m412Dll/main.c @@ -1425,7 +1425,6 @@ static inline void PadInline(void) (void)var_f27; } -// fn_1_6814: https://decomp.me/scratch/WQPjD void fn_1_6814(unkStruct3 *arg0) { Vec sp104; From 28ce8f9696fd5eb22a43025fa261a574fd32c838 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 2 Feb 2025 18:39:29 +0100 Subject: [PATCH 146/178] Match m427Dll/player.c --- config/GMPE01_00/rels/m427Dll/symbols.txt | 5 +- configure.py | 2 +- include/REL/m427Dll.h | 10 +- src/REL/m427Dll/player.c | 2367 +++++++++++++++++++++ 4 files changed, 2380 insertions(+), 4 deletions(-) create mode 100644 src/REL/m427Dll/player.c diff --git a/config/GMPE01_00/rels/m427Dll/symbols.txt b/config/GMPE01_00/rels/m427Dll/symbols.txt index bc2a2d73..d075d6af 100644 --- a/config/GMPE01_00/rels/m427Dll/symbols.txt +++ b/config/GMPE01_00/rels/m427Dll/symbols.txt @@ -370,13 +370,14 @@ lbl_1_data_203 = .data:0x00000203; // type:object size:0x10 data:string lbl_1_data_213 = .data:0x00000213; // type:object size:0x26 data:string lbl_1_data_239 = .data:0x00000239; // type:object size:0x25 lbl_1_data_260 = .data:0x00000260; // type:object size:0x15C -lbl_1_data_3BC = .data:0x000003BC; // type:object size:0x178 +lbl_1_data_3BC = .data:0x000003BC; // type:object size:0x15C +lbl_1_data_518 = .data:0x00000518; // type:object size:0x1C lbl_1_data_534 = .data:0x00000534; // type:object size:0x18 lbl_1_data_54C = .data:0x0000054C; // type:object size:0x18 data:float lbl_1_data_564 = .data:0x00000564; // type:object size:0xC data:float lbl_1_data_570 = .data:0x00000570; // type:object size:0xC data:float lbl_1_data_57C = .data:0x0000057C; // type:object size:0x4 -lbl_1_data_580 = .data:0x00000580; // type:object size:0xE data:string +lbl_1_data_580 = .data:0x00000580; // type:object size:0xE scope:local data:string lbl_1_data_590 = .data:0x00000590; // type:object size:0x1C lbl_1_data_5AC = .data:0x000005AC; // type:object size:0x1C lbl_1_data_5C8 = .data:0x000005C8; // type:object size:0x8 diff --git a/configure.py b/configure.py index b8bbca9e..ccea1eaa 100644 --- a/configure.py +++ b/configure.py @@ -1081,7 +1081,7 @@ config.libs = [ objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m427Dll/main.c"), Object(NonMatching, "REL/m427Dll/map.c"), - Object(NonMatching, "REL/m427Dll/player.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m427Dll/player.c"), }, ), Rel( diff --git a/include/REL/m427Dll.h b/include/REL/m427Dll.h index fe879974..d47b25bf 100644 --- a/include/REL/m427Dll.h +++ b/include/REL/m427Dll.h @@ -1,8 +1,16 @@ #include "dolphin.h" #include "game/object.h" -void fn_1_32F4(Process*); +s32 fn_1_1788(void); +void fn_1_1798(s32 arg0, float arg8); +s32 fn_1_1884(void); +s32 fn_1_32EC(void); + +void fn_1_32F4(Process* arg0); +void fn_1_3B20(s8 arg0, s16 arg1); void fn_1_3A88(void); +void fn_1_91E0(s16 arg0, float arg8, float arg9, float argA, float argB); +float fn_1_AE78(s16 arg0, float arg8, float arg9); void fn_1_E98C(Process*); void fn_1_EC54(void); void fn_1_110E8(s32, s32*); diff --git a/src/REL/m427Dll/player.c b/src/REL/m427Dll/player.c new file mode 100644 index 00000000..228f59f2 --- /dev/null +++ b/src/REL/m427Dll/player.c @@ -0,0 +1,2367 @@ +#include "REL/m427Dll.h" + +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXStruct.h" +#include "dolphin/gx/GXVert.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework.h" +#include "game/gamework_data.h" +#include "game/hsfdraw.h" +#include "game/hsfformat.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/wipe.h" +#include "string.h" + +#ifndef __MWERKS__ +#include "game/frand.h" +#endif + +typedef struct M427DllPlayerWork2 { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ s32 unk_08; + /* 0x0C */ s32 unk_0C; + /* 0x10 */ s32 unk_10; + /* 0x14 */ s32 unk_14; + /* 0x18 */ s32 unk_18; + /* 0x1C */ s32 unk_1C; + /* 0x20 */ s32 unk_20; + /* 0x24 */ s32 unk_24; + /* 0x28 */ s32 unk_28; + /* 0x2C */ s32 unk_2C; + /* 0x30 */ s32 unk_30; + /* 0x34 */ s32 unk_34; + /* 0x38 */ s32 unk_38; + /* 0x3C */ s32 unk_3C; + /* 0x40 */ s32 unk_40; + /* 0x44 */ s32 unk_44; + /* 0x48 */ s32 unk_48; + /* 0x4C */ s32 unk_4C; + /* 0x50 */ s32 unk_50; + /* 0x54 */ s32 unk_54; + /* 0x58 */ s32 unk_58; + /* 0x5C */ s32 unk_5C; + /* 0x60 */ s32 unk_60; + /* 0x64 */ s32 unk_64; + /* 0x68 */ float unk_68; + /* 0x6C */ float unk_6C; + /* 0x70 */ float unk_70; +} M427DllPlayerWork2; /* size = 0x74 */ + +typedef struct M427DllPlayerWork { + /* 0x00 */ omObjData *unk_00[2]; + /* 0x08 */ M427DllPlayerWork2 *unk_08[2]; + /* 0x10 */ s32 unk_10; + /* 0x14 */ s32 unk_14; + /* 0x18 */ s32 unk_18; + /* 0x1C */ s32 unk_1C; + /* 0x20 */ s32 unk_20; + /* 0x24 */ s32 unk_24; + /* 0x28 */ float unk_28; + /* 0x2C */ float unk_2C; + /* 0x30 */ s32 unk_30[5]; + /* 0x34 */ char unk44[8]; + /* 0x4C */ float unk_4C; + /* 0x50 */ float unk_50; + /* 0x54 */ float unk_54; + /* 0x58 */ float unk_58; + /* 0x5C */ float unk_5C; + /* 0x60 */ s32 unk_60; + /* 0x64 */ float unk_64; + /* 0x68 */ s32 unk_68; + /* 0x6C */ char unk6C[4]; +} M427DllPlayerWork; /* size = 0x70 */ + +typedef struct M427DllBss57CStruct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ s32 unk_08; + /* 0x0C */ s32 unk_0C; + /* 0x10 */ s32 unk_10; + /* 0x14 */ s32 unk_14; + /* 0x18 */ s32 unk_18; + /* 0x1C */ Vec unk_1C; + /* 0x28 */ Vec unk_28; + /* 0x34 */ float unk_34; + /* 0x38 */ char unk38[4]; +} M427DllBss57CStruct; /* size = 0x3C */ + +typedef struct M427DllBss590Struct { + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ s32 unk_08; + /* 0x0C */ float unk_0C; + /* 0x10 */ float unk_10; + /* 0x14 */ Vec unk_14; + /* 0x20 */ float unk_20; + /* 0x24 */ float unk_24; + /* 0x28 */ float unk_28; + /* 0x2C */ Vec unk_2C; + /* 0x38 */ float unk_38; + /* 0x3C */ float unk_3C; + /* 0x40 */ float unk_40; + /* 0x44 */ Vec unk_44; + /* 0x50 */ float unk_50; + /* 0x54 */ float unk_54; + /* 0x58 */ float unk_58; + /* 0x5C */ float unk_5C; + /* 0x60 */ float unk_60; + /* 0x64 */ float unk_64; + /* 0x68 */ float unk_68; + /* 0x6C */ float unk_6C; + /* 0x70 */ float unk_70; + /* 0x74 */ float unk_74; + /* 0x78 */ Vec *unk_78; + /* 0x7C */ Vec *unk_7C; + /* 0x80 */ Vec *unk_80; +} M427DllBss590Struct; /* size = 0x84 */ + +void fn_1_10830(omObjData *object); +void fn_1_1143C(omObjData *object); +void fn_1_115B4(omObjData *object); +void fn_1_119C0(omObjData *object); +void fn_1_11A74(omObjData *object); +void fn_1_11ED8(omObjData *object); +void fn_1_12514(omObjData *object); +void fn_1_12518(omObjData *object); +void fn_1_12580(omObjData *object); +void fn_1_12B08(void); +void fn_1_13F24(void); +void fn_1_13FB8(void); +s32 fn_1_155E0(float arg8, float arg9, float argA, float *arg0); +float fn_1_15714(float arg8, float arg9); +void fn_1_158D8(float arg8, float arg9, Vec *arg0); +s32 fn_1_15AF0(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4); +void fn_1_1607C(s32 arg0); +s32 fn_1_160D4(s32 arg0, Vec *arg1, float arg8); +s32 fn_1_16260(s32 arg0, Vec *arg2, Vec *arg3, Vec *arg4, float arg8); +float fn_1_16594(float arg8, float arg9); +void fn_1_16E3C(Vec *arg0, Vec *arg1, Vec *arg2, s32 arg3); +void fn_1_17048(Vec *arg0, float *arg1, Vec *arg2, Vec *arg3); +void fn_1_1723C(Mtx arg0, Vec *arg1); +void fn_1_172F0(s32 arg0, float arg8); +s32 fn_1_17430(s32 arg0, s32 arg1, s32 arg2); +void fn_1_EC74(omObjData *object); +void fn_1_EC94(omObjData *object); +void fn_1_F0E0(omObjData *object); + +Vec lbl_1_data_260[0x1D] = { + { -900.0f, 0.0f, 2000.0f }, + { -900.0f, 0.0f, 0.0f }, + { -900.0f, 0.0f, -2000.0f }, + { -900.0f, 0.0f, -4000.0f }, + { -1300.0f, 0.0f, -4500.0f }, + { -1600.0f, 0.0f, -5000.0f }, + { -1800.0f, 0.0f, -5500.0f }, + { -1900.0f, 0.0f, -6000.0f }, + { -1800.0f, 0.0f, -6500.0f }, + { -1600.0f, -100.0f, -7000.0f }, + { -1300.0f, -200.0f, -7500.0f }, + { -900.0f, -300.0f, -8000.0f }, + { -900.0f, -300.0f, -8500.0f }, + { -500.0f, -300.0f, -9000.0f }, + { -500.0f, -300.0f, -10000.0f }, + { -500.0f, -300.0f, -11000.0f }, + { -900.0f, -300.0f, -11500.0f }, + { -900.0f, -300.0f, -12000.0f }, + { -500.0f, -300.0f, -12500.0f }, + { -200.0f, -300.0f, -13000.0f }, + { -0.0f, -300.0f, -13500.0f }, + { 100.0f, -300.0f, -14000.0f }, + { 0.0f, -300.0f, -14500.0f }, + { -200.0f, -400.0f, -15000.0f }, + { -500.0f, -500.0f, -15500.0f }, + { -900.0f, -600.0f, -16000.0f }, + { -900.0f, -600.0f, -18000.0f }, + { -900.0f, -600.0f, -20000.0f }, + { -900.0f, -600.0f, -22000.0f }, +}; +Vec lbl_1_data_3BC[29] = { + { 900.0f, 0.0f, 2000.0f }, + { 900.0f, 0.0f, -0.0f }, + { 900.0f, 0.0f, -2000.0f }, + { 900.0f, 0.0f, -4000.0f }, + { 500.0f, 0.0f, -4500.0f }, + { 200.0f, 0.0f, -5000.0f }, + { 0.0f, 0.0f, -5500.0f }, + { -100.0f, 0.0f, -6000.0f }, + { 0.0f, 0.0f, -6500.0f }, + { 200.0f, -100.0f, -7000.0f }, + { 500.0f, -200.0f, -7500.0f }, + { 900.0f, -300.0f, -8000.0f }, + { 900.0f, -300.0f, -8500.0f }, + { 500.0f, -300.0f, -9000.0f }, + { 500.0f, -300.0f, -10000.0f }, + { 500.0f, -300.0f, -11000.0f }, + { 900.0f, -300.0f, -11500.0f }, + { 900.0f, -300.0f, -12000.0f }, + { 1300.0f, -300.0f, -12500.0f }, + { 1600.0f, -300.0f, -13000.0f }, + { 1800.0f, -300.0f, -13500.0f }, + { 1900.0f, -300.0f, -14000.0f }, + { 1800.0f, -300.0f, -14500.0f }, + { 1600.0f, -400.0f, -15000.0f }, + { 1300.0f, -500.0f, -15500.0f }, + { 900.0f, -600.0f, -16000.0f }, + { 900.0f, -600.0f, -18000.0f }, + { 900.0f, -600.0f, -20000.0f }, + { 900.0f, -600.0f, -22000.0f }, +}; +s32 lbl_1_data_518[7] = { 0, 1, 2, 3, 4, 5, 6 }; +Vec lbl_1_data_534[2] = { { 0.0f, -25.0f, 50.0f }, { 0.0f, -25.0f, -50.0f } }; +Vec lbl_1_data_54C[2] = { { 0.0f, 0.0f, 1900.0f }, { 0.0f, 20.0f, 20.0f } }; +Vec lbl_1_data_564 = { 0.0f, 240.00002f, 360.0f }; +Vec lbl_1_data_570 = { 0.0f, 1.0f, 1.5f }; +GXColor lbl_1_data_57C = { 0xFF, 0xFF, 0xFF, 0xFF }; + +Process *lbl_1_bss_594; +M427DllBss590Struct *lbl_1_bss_590; +Vec *lbl_1_bss_58C; +Vec *lbl_1_bss_588; +Vec *lbl_1_bss_584; +s32 lbl_1_bss_580; +M427DllBss57CStruct *lbl_1_bss_57C; +M427DllPlayerWork *lbl_1_bss_578; +M427DllPlayerWork2 *lbl_1_bss_574; +omObjData *lbl_1_bss_56C[2]; +char lbl_1_bss_55C[0x10]; +Vec *lbl_1_bss_558; +Vec *lbl_1_bss_554; +Vec *lbl_1_bss_550; + +void fn_1_E98C(Process *sp8) +{ + s32 sp10; + omObjData *object; + s32 var_r30; + s32 var_r29; + s32 var_r28; + s32 var_r27; + s32 var_r26; + + s8 spE[2] = { 0xFF, 0xFF }; + s8 spC[2] = { 0xFF, 0xFF }; + sp10 = 0; + OSReport("Init Player \n"); + lbl_1_bss_594 = sp8; + object = omAddObjEx(lbl_1_bss_594, 0x42, 0, 0, -1, fn_1_EC74); + omMakeGroupEx(lbl_1_bss_594, 0, 4); + omGetGroupMemberListEx(lbl_1_bss_594, 0); + for (var_r30 = 0, var_r28 = 0, var_r27 = 0, var_r29 = 0; var_r30 < 4; var_r30++) { + var_r26 = GWPlayerCfg[var_r30].group; + switch (var_r26) { + case 0: + if (var_r28 >= 2) { + var_r29 = 1; + } + else { + spE[var_r28] = var_r30; + var_r28++; + } + break; + case 1: + if (var_r27 >= 2) { + var_r29 = 1; + } + else { + spC[var_r27] = var_r30; + var_r27++; + } + break; + default: + var_r29 = 1; + break; + } + if (var_r29 != 0) { + break; + } + } + lbl_1_bss_578 = HuMemDirectMallocNum(HEAP_SYSTEM, 2 * sizeof(M427DllPlayerWork), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_578, 0, 0xE0); + lbl_1_bss_574 = HuMemDirectMallocNum(HEAP_SYSTEM, 4 * sizeof(M427DllPlayerWork2), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_574, 0, 0x1D0); + memset(lbl_1_bss_56C, 0, 8); + memset(lbl_1_bss_55C, 0, 0x10); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + object = lbl_1_bss_56C[var_r30] = omAddObjEx(lbl_1_bss_594, 0x41, 0xE, 0, -1, fn_1_EC94); + object->work[0] = var_r30; + if (var_r29 != 0) { + object->work[1] = var_r30 * 2; + object->work[2] = (var_r30 * 2) + 1; + } + else if (var_r30 == 0) { + object->work[1] = spE[0]; + object->work[2] = spE[1]; + } + else { + object->work[1] = spC[0]; + object->work[2] = spC[1]; + } + } + fn_1_12B08(); +} + +s32 lbl_1_data_590[7] = { 0x3A001C, 0x3A001D, 0x3A001E, 0x3A001F, 0x3A0020, 0x3A0026, 0x3A0027 }; +s32 lbl_1_data_5AC[7] = { 0x3A0021, 0x3A0022, 0x3A0023, 0x3A0024, 0x3A0025, 0x3A0026, 0x3A0027 }; +s32 lbl_1_data_5C8[2] = { 1, 3 }; +s32 lbl_1_data_5D0[2] = { 2, 4 }; + +void fn_1_EC54(void) +{ + fn_1_13FB8(); +} + +void fn_1_EC74(omObjData *object) +{ + fn_1_13F24(); +} + +void fn_1_EC94(omObjData *object) +{ + M427DllPlayerWork *work; + s32 var_r29; + s32 var_r28; + s32 var_r27; + + work = &lbl_1_bss_578[object->work[0]]; + object->data = work; + work->unk_10 = object->work[0]; + work->unk_14 = 0; + work->unk_18 = 0; + work->unk_1C = 0; + work->unk_20 = 0; + work->unk_24 = 0; + work->unk_28 = 0.0f; + work->unk_2C = 0.0f; + work->unk_4C = 0.0f; + work->unk_50 = 0.0f; + work->unk_54 = 0.0f; + work->unk_58 = 0.0f; + work->unk_5C = 0.0f; + work->unk_60 = 0; + work->unk_64 = 180.0f; + work->unk_68 = 0; + object->trans.x = lbl_1_data_54C->x; + object->trans.y = lbl_1_data_54C->y; + object->trans.z = lbl_1_data_54C->z; + for (var_r29 = 0; var_r29 < 7; var_r29++) { + if (work->unk_10 == 0) { + object->model[var_r29] = Hu3DModelCreateFile(lbl_1_data_590[var_r29]); + } + else { + object->model[var_r29] = Hu3DModelCreateFile(lbl_1_data_5AC[var_r29]); + } + Hu3DModelLayerSet(object->model[var_r29], 2); + if (work->unk_10 == 0) { + Hu3DModelCameraSet(object->model[var_r29], 1); + } + else { + Hu3DModelCameraSet(object->model[var_r29], 2); + } + if (var_r29 < 5) { + Hu3DMotionSpeedSet(object->model[var_r29], 2.0f); + } + } + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(object->model[0], 2.0f); + Hu3DModelLayerSet(object->model[5], 5); + Hu3DModelAttrSet(object->model[5], HU3D_MOTATTR_LOOP); + for (var_r29 = 0; var_r29 < 5; var_r29++) { + if (var_r29 == 0) { + var_r28 = object->model[var_r29]; + var_r27 = Hu3DLLightCreateV(var_r28, &lbl_1_data_564, &lbl_1_data_570, &lbl_1_data_57C); + work->unk_30[var_r29] = var_r27; + Hu3DLLightStaticSet(var_r28, var_r27, 1); + Hu3DLLightPointSet(var_r28, var_r27, 80.0f, 0.95f, 3); + Hu3DLLightColorSet(var_r28, var_r27, 0xFF, 0xF0, 0xDC, 0xFF); + Hu3DLLightPosSet( + var_r28, var_r27, lbl_1_data_564.x, lbl_1_data_564.y, lbl_1_data_564.z, lbl_1_data_570.x, lbl_1_data_570.y, lbl_1_data_570.z); + } + else { + var_r28 = object->model[var_r29]; + work->unk_30[var_r29] = fn_1_17430(object->model[0], work->unk_30[0], var_r28); + } + fn_1_172F0(var_r28, 0.1f); + } + for (var_r29 = 0; var_r29 < 2; var_r29++) { + work->unk_00[var_r29] = omAddObjEx(lbl_1_bss_594, 0x40, 2, 4, -1, fn_1_11A74); + work->unk_00[var_r29]->work[0] = object->work[var_r29 + 1]; + work->unk_00[var_r29]->work[1] = work->unk_10; + work->unk_00[var_r29]->work[2] = var_r29; + } + object->func = fn_1_F0E0; +} + +void fn_1_F0E0(omObjData *object) +{ + Mtx sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + float var_f29; + M427DllPlayerWork *work; + s32 var_r29; + s32 var_r28; + + work = object->data; + if ((work->unk_00[0] == NULL) || (work->unk_08[0] == NULL)) { + return; + } + sp2C.x = object->trans.x; + sp2C.y = object->trans.y; + sp2C.z = object->trans.z; + switch (work->unk_1C) { + case 0: + object->rot.y = work->unk_64 = 180.0f; + for (var_r29 = 0; var_r29 < 2; var_r29++) { + if ((work->unk_08[var_r29]->unk_30 != 0) && (Hu3DMotionEndCheck(object->model[lbl_1_data_5C8[var_r29]]) != 0)) { + fn_1_3B20(var_r29 * 2, work->unk_10); + Hu3DMotionTimeSet(object->model[lbl_1_data_5C8[var_r29]], 0.0f); + if (work->unk_10 == 0) { + HuAudFXPlay(0x655); + } + else { + HuAudFXPlay(0x656); + } + } + if ((work->unk_08[var_r29]->unk_34 != 0) && (Hu3DMotionEndCheck(object->model[lbl_1_data_5D0[var_r29]]) != 0)) { + fn_1_3B20((var_r29 * 2) + 1, work->unk_10); + Hu3DMotionTimeSet(object->model[lbl_1_data_5D0[var_r29]], 0.0f); + if (work->unk_10 == 0) { + HuAudFXPlay(0x655); + } + else { + HuAudFXPlay(0x656); + } + } + } + if (sp2C.z != object->trans.z) { + work->unk_60 = 2; + } + else { + work->unk_60 = 0; + } + if (fn_1_1788() == 3) { + work->unk_1C = 1; + } + break; + case 1: + if (sp2C.z != object->trans.z) { + work->unk_60 = 2; + } + else { + work->unk_60 = 0; + } + if (fn_1_1788() == 4) { + work->unk_1C = 2; + } + break; + case 2: + for (var_r29 = 0; var_r29 < 2; var_r29++) { + if (work->unk_08[var_r29]->unk_30 != 0) { + work->unk_58 += 0.1f; + if (Hu3DMotionEndCheck(object->model[lbl_1_data_5C8[var_r29]]) != 0) { + fn_1_3B20(var_r29 * 2, work->unk_10); + Hu3DMotionTimeSet(object->model[lbl_1_data_5C8[var_r29]], 0.0f); + if (work->unk_10 == 0) { + HuAudFXPlay(0x655); + } + else { + HuAudFXPlay(0x656); + } + } + } + if (work->unk_08[var_r29]->unk_34 != 0) { + work->unk_5C += 0.1f; + if (Hu3DMotionEndCheck(object->model[lbl_1_data_5D0[var_r29]]) != 0) { + fn_1_3B20((var_r29 * 2) + 1, work->unk_10); + Hu3DMotionTimeSet(object->model[lbl_1_data_5D0[var_r29]], 0.0f); + if (work->unk_10 == 0) { + HuAudFXPlay(0x655); + } + else { + HuAudFXPlay(0x656); + } + } + } + } + fn_1_158D8(object->trans.x, object->trans.z, &sp8); + work->unk_4C += 0.15f * sp8.x; + work->unk_54 += 0.15f * sp8.z; + work->unk_58 *= 0.995f; + work->unk_5C *= 0.995f; + work->unk_4C *= 0.99f; + work->unk_54 *= 0.99f; + work->unk_60 = work->unk_58 + work->unk_5C; + if (work->unk_60 < -5.0f) { + work->unk_60 = -5; + } + else if (work->unk_60 > 5.0f) { + work->unk_60 = 5; + } + var_f30 = 0.25f * (work->unk_58 - work->unk_5C); + if (var_f30 > 20.0f) { + var_f30 = 20.0f; + } + else if (var_f30 < -20.0f) { + var_f30 = -20.0f; + } + work->unk_64 += var_f30; + if (work->unk_64 > 360.0f) { + work->unk_64 -= 360.0f; + } + else if (work->unk_64 < 0.0f) { + work->unk_64 += 360.0f; + } + if (work->unk_64 > 270.0f) { + work->unk_64 = 270.0f; + } + else if (work->unk_64 < 90.0f) { + work->unk_64 = 90.0f; + } + object->rot.y = work->unk_64; + var_f31 = work->unk_60; + object->trans.x = object->trans.x + (2.0 * (var_f31 * sind(work->unk_64))); + object->trans.z = object->trans.z + (2.0 * (var_f31 * cosd(work->unk_64))); + object->trans.x += work->unk_4C; + object->trans.z += work->unk_54; + if (work->unk_68 > 0) { + work->unk_68--; + } + for (var_r29 = 0, var_r28 = 1; (var_r28 == 1) && (var_r29 < 6); var_r29++) { + var_r28 = 0; + sp20.x = object->trans.x; + sp20.y = object->trans.y; + sp20.z = object->trans.z; + if (fn_1_15AF0(-1, &sp2C, &sp20, &sp14, &sp8) != 0) { + var_r28 = 1; + sp2C = sp20; + object->trans.x = sp14.x; + object->trans.y = sp14.y; + object->trans.z = sp14.z; + if ((work->unk_68 == 0) && (fn_1_1788() <= 4)) { + if (work->unk_10 == 0) { + HuAudFXPlay(0x65C); + } + else { + HuAudFXPlay(0x65D); + } + } + work->unk_68 = 5; + } + sp20.x = object->trans.x; + sp20.y = object->trans.y; + sp20.z = object->trans.z; + if (fn_1_16260(work->unk_10, &sp2C, &sp20, &sp14, 200.0f) != 0) { + var_r28 = 1; + sp2C = sp20; + object->trans.x = sp14.x; + object->trans.y = sp14.y; + object->trans.z = sp14.z; + } + } + if (work->unk_20 <= 0) { + sp20.x = object->trans.x; + sp20.y = object->trans.y; + sp20.z = object->trans.z; + if (fn_1_160D4(work->unk_10, &sp20, 200.0f) != 0) { + omVibrate(work->unk_08[0]->unk_00, 0xC, 6, 6); + omVibrate(work->unk_08[1]->unk_00, 0xC, 6, 6); + HuAudCharVoicePlay(work->unk_08[0]->unk_0C, 0x123); + HuAudCharVoicePlay(work->unk_08[1]->unk_0C, 0x123); + work->unk_24 = 0x78; + work->unk_1C = 3; + work->unk_28 = 5.0f; + work->unk_2C = 360.0f * ((frand() & 0x7F) / 127.0f); + work->unk_18 = 0; + } + } + else { + work->unk_20--; + } + fn_1_119C0(object); + if (fn_1_1788() >= 5) { + work->unk_1C = 4; + } + break; + case 3: + work->unk_58 = 0.0f; + work->unk_5C = 0.0f; + work->unk_4C = 0.0f; + work->unk_54 = 0.0f; + work->unk_60 = work->unk_58 + work->unk_5C; + if (work->unk_60 < -5.0f) { + work->unk_60 = -5; + } + else if (work->unk_60 > 5.0f) { + work->unk_60 = 5; + } + var_f31 = work->unk_60 / 5.0f; + var_f31 = 5.0f * (var_f31 * var_f31); + object->trans.x = object->trans.x + (2.0 * (var_f31 * sind(work->unk_64))); + object->trans.z = object->trans.z + (2.0 * (var_f31 * cosd(work->unk_64))); + object->trans.x += work->unk_4C; + object->trans.z += work->unk_54; + for (var_r29 = 0, var_r28 = 1; (var_r28 == 1) && (var_r29 < 6); var_r29++) { + var_r28 = 0; + sp20.x = object->trans.x; + sp20.y = object->trans.y; + sp20.z = object->trans.z; + if (fn_1_15AF0(-1, &sp2C, &sp20, &sp14, &sp8) != 0) { + var_r28 = 1; + sp2C = sp20; + object->trans.x = sp14.x; + object->trans.y = sp14.y; + object->trans.z = sp14.z; + } + sp20.x = object->trans.x; + sp20.y = object->trans.y; + sp20.z = object->trans.z; + if (fn_1_16260(work->unk_10, &sp2C, &sp20, &sp14, 200.0f) != 0) { + var_r28 = 1; + sp2C = sp20; + object->trans.x = sp14.x; + object->trans.y = sp14.y; + object->trans.z = sp14.z; + } + } + if ((--work->unk_24 > 0) && ((work->unk_18 & 3) == 0)) { + omVibrate(work->unk_08[0]->unk_00, 0xC, 6, 6); + omVibrate(work->unk_08[1]->unk_00, 0xC, 6, 6); + } + if (work->unk_18 >= 120.0f) { + work->unk_1C = 2; + work->unk_20 = 0xB4; + work->unk_18 = 0; + } + fn_1_119C0(object); + if (fn_1_1788() >= 7) { + work->unk_20 = 0; + work->unk_18 = 0; + work->unk_1C = 4; + object->func = fn_1_10830; + } + break; + case 4: + work->unk_58 *= 0.993f; + work->unk_5C *= 0.993f; + work->unk_4C *= 0.993f; + work->unk_54 *= 0.993f; + work->unk_60 = work->unk_58 + work->unk_5C; + if (work->unk_60 < -5.0f) { + work->unk_60 = -5; + } + else if (work->unk_60 > 5.0f) { + work->unk_60 = 5; + } + var_f31 = work->unk_60 / 5.0f; + var_f31 = 5.0f * (var_f31 * var_f31); + object->trans.x = object->trans.x + (2.0 * (var_f31 * sind(work->unk_64))); + object->trans.z = object->trans.z + (2.0 * (var_f31 * cosd(work->unk_64))); + object->trans.x += work->unk_4C; + object->trans.z += work->unk_54; + for (var_r29 = 0, var_r28 = 1; (var_r28 == 1) && (var_r29 < 6); var_r29++) { + var_r28 = 0; + sp20.x = object->trans.x; + sp20.y = object->trans.y; + sp20.z = object->trans.z; + if (fn_1_15AF0(-1, &sp2C, &sp20, &sp14, &sp8) != 0) { + var_r28 = 1; + sp2C = sp20; + object->trans.x = sp14.x; + object->trans.y = sp14.y; + object->trans.z = sp14.z; + } + sp20.x = object->trans.x; + sp20.y = object->trans.y; + sp20.z = object->trans.z; + if (fn_1_16260(work->unk_10, &sp2C, &sp20, &sp14, 200.0f) != 0) { + var_r28 = 1; + sp2C = sp20; + object->trans.x = sp14.x; + object->trans.y = sp14.y; + object->trans.z = sp14.z; + } + } + work->unk_20 = 0; + if (fn_1_1788() >= 7) { + work->unk_18 = 0; + work->unk_1C = 4; + object->func = fn_1_10830; + } + break; + case 5: + if (sp2C.z != object->trans.z) { + work->unk_60 = 2; + } + else { + work->unk_60 = 0; + } + break; + case 6: + break; + case 7: + break; + } + var_f31 = work->unk_60 / 5.0f; + Hu3DMotionSpeedSet(object->model[0], 2.0f * var_f31); + if (work->unk_1C == 3) { + work->unk_2C += (frand() & 3) + 2; + object->rot.x = 0.0f; + object->rot.z = 0.0f; + work->unk_28 = 5.0f - (5.0f * (0.008333334f * work->unk_18)); + var_f29 = 7.0 * (work->unk_28 * sind((10.0f * work->unk_18))); + object->rot.x = object->rot.x + (var_f29 * sind(work->unk_2C)); + object->rot.z = object->rot.z + (var_f29 * cosd(work->unk_2C)); + } + if (((work->unk_1C == 3) || (work->unk_20 != 0)) && ((work->unk_18 & 1) != 0)) { + for (var_r29 = 0; var_r29 < 7; var_r29++) { + Hu3DModelAttrSet(object->model[var_r29], HU3D_ATTR_DISPOFF); + } + for (var_r29 = 0; var_r29 < 2; var_r29++) { + if (work->unk_00[var_r29]->model[0] != -1) { + Hu3DModelAttrSet(*work->unk_00[var_r29]->model, HU3D_ATTR_DISPOFF); + } + } + } + else { + for (var_r29 = 0; var_r29 < 7; var_r29++) { + Hu3DModelAttrReset(object->model[var_r29], HU3D_ATTR_DISPOFF); + } + for (var_r29 = 0; var_r29 < 2; var_r29++) { + if (work->unk_00[var_r29]->model[0] != -1) { + Hu3DModelAttrReset(*work->unk_00[var_r29]->model, HU3D_ATTR_DISPOFF); + } + } + } + for (var_r29 = 0; var_r29 < 2; var_r29++) { + work->unk_08[var_r29]->unk_24 = work->unk_1C; + } + object->trans.y = fn_1_AE78(work->unk_10, object->trans.x, object->trans.z); + mtxRot(sp38, object->rot.x, object->rot.y, object->rot.z); + sp38[1][0] *= object->scale.y; + sp38[1][1] *= object->scale.y; + sp38[1][2] *= object->scale.z; + sp20.x = 0.0f; + sp20.y = 0.0f; + sp20.z = 100.0f; + fn_1_1723C(sp38, &sp20); + sp20.x += object->trans.x; + sp20.y += object->trans.y; + sp20.z += object->trans.z; + fn_1_91E0(work->unk_10, sp20.x, sp20.y, sp20.z, 180.0f + object->rot.y); + for (var_r29 = 0; var_r29 < 2; var_r29++) { + sp20 = lbl_1_data_534[var_r29]; + fn_1_1723C(sp38, &sp20); + work->unk_00[var_r29]->trans.x = object->trans.x + sp20.x; + work->unk_00[var_r29]->trans.y = object->trans.y + sp20.y; + work->unk_00[var_r29]->trans.z = object->trans.z + sp20.z; + work->unk_00[var_r29]->rot.x = object->rot.x; + work->unk_00[var_r29]->rot.y = object->rot.y; + work->unk_00[var_r29]->rot.z = object->rot.z; + } + for (var_r29 = 0; var_r29 < 7; var_r29++) { + Hu3DModelPosSet(object->model[var_r29], object->trans.x, object->trans.y, object->trans.z); + Hu3DModelRotSet(object->model[var_r29], object->rot.x, object->rot.y, object->rot.z); + } + fn_1_1143C(object); + if ((fn_1_32EC() == 0) && (object->func != fn_1_10830) && ((work->unk_1C == 2) || (work->unk_1C == 3))) { + fn_1_115B4(object); + } + work->unk_18++; +} + +s32 lbl_1_data_5F8[2] = { 1, 3 }; +s32 lbl_1_data_600[2] = { 2, 4 }; +s32 lbl_1_data_608[4] = { 0x3A002F, 0x3A0037, 0x3A003F, 0x3A0047 }; +s32 lbl_1_data_618[4] = { 15, 10, 6, 5 }; + +void fn_1_10830(omObjData *object) +{ + Mtx sp14; + Vec sp8; + s32 var_r30; + M427DllPlayerWork *work; + s32 var_r28; + s32 var_r27; + + work = object->data; + switch (work->unk_1C) { + case 4: + var_r27 = fn_1_1884(); + if (var_r27 == 3) { + break; + } + if (var_r27 == work->unk_10) { + for (var_r30 = 0; var_r30 < 2; var_r30++) { + Hu3DModelCameraSet(*work->unk_00[var_r30]->model, 1); + Hu3DModelLayerSet(*work->unk_00[var_r30]->model, 3); + fn_1_172F0(work->unk_00[var_r30]->model[0], 5.0f); + } + for (var_r30 = 0; var_r30 < 7; var_r30++) { + Hu3DModelCameraSet(object->model[var_r30], 1); + Hu3DModelLayerSet(object->model[var_r30], 3); + if (var_r30 < 5) { + fn_1_172F0(object->model[var_r30], 5.0f); + } + } + Hu3DModelAttrSet(object->model[5], HU3D_ATTR_DISPOFF); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + work->unk_00[var_r30]->model[1] = Hu3DModelLink(*work->unk_00[var_r30]->model); + Hu3DModelCameraSet(work->unk_00[var_r30]->model[1], 1); + Hu3DModelLayerSet(work->unk_00[var_r30]->model[1], 1); + } + for (var_r30 = 0; var_r30 < 7; var_r30++) { + object->model[var_r30 + 7] = Hu3DModelLink(object->model[var_r30]); + Hu3DModelCameraSet(object->model[var_r30 + 7], 1); + Hu3DModelLayerSet(object->model[var_r30 + 7], 1); + } + object->trans.x = object->trans.y = object->trans.z = 0.0f; + object->rot.x = object->rot.z = 0.0f; + object->rot.y = 180.0f; + work->unk_1C = 5; + break; + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + Hu3DModelAttrSet(work->unk_00[var_r30]->model[0], HU3D_ATTR_DISPOFF); + work->unk_00[var_r30]->func = NULL; + } + for (var_r30 = 0; var_r30 < 7; var_r30++) { + Hu3DModelAttrSet(object->model[var_r30], HU3D_ATTR_DISPOFF); + } + object->func = NULL; + return; + case 5: + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r28 = lbl_1_data_5F8[var_r30]; + if ((work->unk_08[var_r30]->unk_30 != 0) && (Hu3DMotionEndCheck(object->model[var_r28]) != 0)) { + fn_1_3B20(var_r30 * 2, work->unk_10); + Hu3DMotionTimeSet(object->model[var_r28], 0.0f); + if (work->unk_10 == 0) { + HuAudFXPlay(0x655); + } + else { + HuAudFXPlay(0x656); + } + } + var_r28 = lbl_1_data_600[var_r30]; + if ((work->unk_08[var_r30]->unk_34 != 0) && (Hu3DMotionEndCheck(object->model[var_r28]) != 0)) { + fn_1_3B20((var_r30 * 2) + 1, work->unk_10); + Hu3DMotionTimeSet(object->model[var_r28], 0.0f); + if (work->unk_10 == 0) { + HuAudFXPlay(0x655); + } + else { + HuAudFXPlay(0x656); + } + } + } + if (fn_1_1788() >= 0xC) { + work->unk_1C = 6; + } + break; + case 6: + case 7: + break; + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + work->unk_08[var_r30]->unk_24 = work->unk_1C; + } + mtxRot(sp14, object->rot.x, object->rot.y, object->rot.z); + sp14[1][0] *= object->scale.y; + sp14[1][1] *= object->scale.y; + sp14[1][2] *= object->scale.z; + sp8.x = 0.0f; + sp8.y = 0.0f; + sp8.z = 100.0f; + fn_1_1723C(sp14, &sp8); + sp8.x += object->trans.x; + sp8.y += object->trans.y; + sp8.z += object->trans.z; + fn_1_91E0(work->unk_10, sp8.x, sp8.y, sp8.z, 180.0f + object->rot.y); + object->trans.y = fn_1_AE78(work->unk_10, object->trans.x, object->trans.z); + for (var_r30 = 0; var_r30 < 2; var_r30++) { + sp8 = lbl_1_data_534[var_r30]; + fn_1_1723C(sp14, &sp8); + work->unk_00[var_r30]->trans.x = object->trans.x + sp8.x; + work->unk_00[var_r30]->trans.y = object->trans.y + sp8.y; + work->unk_00[var_r30]->trans.z = object->trans.z + sp8.z; + work->unk_00[var_r30]->rot.x = object->rot.x; + work->unk_00[var_r30]->rot.y = object->rot.y; + work->unk_00[var_r30]->rot.z = object->rot.z; + if (work->unk_00[var_r30]->model[1] != -1) { + Hu3DModelPosSet( + work->unk_00[var_r30]->model[1], -work->unk_00[var_r30]->trans.x, work->unk_00[var_r30]->trans.y, work->unk_00[var_r30]->trans.z); + Hu3DModelRotSet( + work->unk_00[var_r30]->model[1], work->unk_00[var_r30]->rot.x, -work->unk_00[var_r30]->rot.y, work->unk_00[var_r30]->rot.z); + } + } + for (var_r30 = 0; var_r30 < 0xE; var_r30++) { + if (object->model[var_r30] != -1) { + if (var_r30 < 7) { + Hu3DModelPosSet(object->model[var_r30], object->trans.x, object->trans.y, object->trans.z); + Hu3DModelRotSet(object->model[var_r30], object->rot.x, object->rot.y, object->rot.z); + } + else { + Hu3DModelPosSet(object->model[var_r30], -object->trans.x, object->trans.y, object->trans.z); + Hu3DModelRotSet(object->model[var_r30], object->rot.x, -object->rot.y, object->rot.z); + } + } + } + work->unk_64 = 200.0f; + fn_1_1143C(object); + work->unk_18++; +} + +void fn_1_10F8C(omObjData *object) +{ + s32 var_r31; + M427DllPlayerWork *work = object->data; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + fn_1_12514(work->unk_00[var_r31]); + } +} + +s32 fn_1_10FE8(s32 arg0, s32 *arg1) +{ + s32 var_r31; + M427DllPlayerWork *var_r30; + omObjData *var_r29; + + var_r29 = lbl_1_bss_56C[arg0]; + var_r30 = &lbl_1_bss_578[arg0]; + if ((var_r29 == NULL) || (var_r30 == NULL)) { + return -1; + } + if ((var_r30->unk_00[0] == NULL) || (var_r30->unk_08[0] == NULL)) { + return -1; + } + for (var_r31 = 0; var_r31 < 7; var_r31++) { + if (var_r31 < 5) { + arg1[var_r31] = var_r29->model[var_r31]; + } + else if (var_r31 < 6) { + arg1[var_r31] = var_r30->unk_00[0]->model[0]; + } + else { + arg1[var_r31] = var_r30->unk_00[1]->model[0]; + } + } + return var_r31; +} + +void fn_1_110E8(s32 arg0, s32 *arg1) +{ + s32 var_r31; + M427DllPlayerWork *var_r30; + omObjData *var_r29; + + var_r29 = lbl_1_bss_56C[arg0]; + var_r30 = &lbl_1_bss_578[arg0]; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + arg1[var_r31] = 0; + } + if ((var_r29 == NULL) || (var_r30 == NULL)) { + return; + } + if ((var_r30->unk_00[0] == NULL) || (var_r30->unk_08[0] == NULL)) { + return; + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + arg1[var_r31] = var_r30->unk_08[var_r31]->unk_0C; + } +} + +void fn_1_111C0(s32 arg0, s32 *arg1) +{ + s32 var_r31; + M427DllPlayerWork *var_r30; + omObjData *var_r29; + + var_r29 = lbl_1_bss_56C[arg0]; + var_r30 = &lbl_1_bss_578[arg0]; + for (var_r31 = 0; var_r31 < 2; var_r31++) { + arg1[var_r31] = 0; + } + if ((var_r29 == NULL) || (var_r30 == NULL)) { + return; + } + if ((var_r30->unk_00[0] == NULL) || (var_r30->unk_08[0] == NULL)) { + return; + } + for (var_r31 = 0; var_r31 < 2; var_r31++) { + arg1[var_r31] = var_r30->unk_08[var_r31]->unk_00; + } +} + +void fn_1_11298(float var_f30) +{ + float var_f31; + omObjData *object; + s32 var_r30; + + if (fn_1_1788() < 4) { + for (var_r30 = 0; var_r30 < 2; var_r30++) { + object = lbl_1_bss_56C[var_r30]; + if (object) { + object->trans.z = 1900.0f + (-1800.0f * var_f30); + } + } + return; + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + object = lbl_1_bss_56C[var_r30]; + if (object) { + object->trans.z = -1800.0f * var_f30; + if (object->trans.z < -1500.0f) { + var_f31 = (object->trans.z - -1500.0f) / 300.0f; + object->rot.y = 180.0f - (30.0f * var_f31); + } + } + } +} + +s32 fn_1_113F0(s32 arg0) +{ + M427DllPlayerWork *work; + omObjData *object; + + object = lbl_1_bss_56C[arg0]; + work = object->data; + if (work->unk_14 == 3) { + return 1; + } + return 0; +} + +void fn_1_1143C(omObjData *object) +{ + Mtx sp20; + Vec sp14; + Vec sp8; + M427DllPlayerWork *work; + s32 var_r29; + + work = object->data; + mtxRot(sp20, 0.0f, work->unk_64, 0.0f); + sp14 = lbl_1_data_564; + fn_1_1723C(sp20, &sp14); + sp14.x += object->trans.x; + sp14.y += object->trans.y; + sp14.z += object->trans.z; + sp8.x = sp8.z = 0.0f; + sp8.y = 1.0f; + Hu3DLLightPosSet(object->model[0], work->unk_30[0], sp14.x, sp14.y, sp14.z, sp8.x, sp8.y, sp8.z); + for (var_r29 = 0; var_r29 < 2; var_r29++) { + if (*work->unk_00[var_r29]->model != -1) { + Hu3DLLightPosSet(work->unk_00[var_r29]->model[0], work->unk_08[var_r29]->unk_14, sp14.x, sp14.y, sp14.z, sp8.x, sp8.y, sp8.z); + } + } +} + +void fn_1_115B4(omObjData *object) +{ + Vec spC; + float sp8; + float var_f31; + float var_f30; + float var_f29; + M427DllBss590Struct *var_r31; + M427DllPlayerWork *work; + s32 var_r28; + + work = object->data; + var_r28 = fn_1_155E0(object->trans.x, object->trans.y, object->trans.z, &sp8); + if ((var_r28 < 0) || (var_r28 >= (lbl_1_bss_580 - 1))) { + return; + } + var_r31 = &lbl_1_bss_590[var_r28]; + spC.x = var_r31->unk_44.x + (sp8 * var_r31->unk_50); + spC.y = 275.0f + (var_r31->unk_44.y + (sp8 * var_r31->unk_54)); + spC.z = var_r31->unk_44.z + (sp8 * var_r31->unk_58); + var_f29 = object->trans.x - spC.x; + spC.x += 0.4f * var_f29; + if (var_f29 < 0.0f) { + var_f30 = fabs(var_r31->unk_5C + (sp8 * (var_r31->unk_64 - var_r31->unk_5C))); + } + else { + var_f30 = fabs(var_r31->unk_60 + (sp8 * (var_r31->unk_68 - var_r31->unk_60))); + } + CenterM[work->unk_10].x = CenterM[work->unk_10].x + (0.06666667f * (spC.x - CenterM[work->unk_10].x)); + CenterM[work->unk_10].y = CenterM[work->unk_10].y + (0.06666667f * (spC.y - CenterM[work->unk_10].y)); + CenterM[work->unk_10].z = CenterM[work->unk_10].z + (0.06666667f * (spC.z - CenterM[work->unk_10].z)); + var_f31 = var_r31->unk_0C; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + var_f31 = 180.0f + (0.25f * (var_f31 - 180.0f)); + if (var_f30 != 0.0f) { + var_f30 = var_f29 / var_f30; + } + var_f31 -= 30.0f * var_f30; + CRotM[work->unk_10].y = fn_1_168FC(0.020000001f, CRotM[work->unk_10].y, 180.0f + var_f31); +} + +void fn_1_119C0(omObjData *object) +{ + float var_f31; + float var_f30; + M427DllBss590Struct *var_r31; + M427DllPlayerWork *work; + M427DllBss590Struct *var_r28; + + work = object->data; + var_r31 = &lbl_1_bss_590[1]; + var_r28 = &lbl_1_bss_590[27]; + var_f31 = var_r28->unk_80->z - var_r31->unk_80->z; + var_f30 = object->trans.z - var_r31->unk_80->z; + fn_1_1798(work->unk_10, var_f30 / var_f31); +} + +void fn_1_11A74(omObjData *object) +{ + M427DllPlayerWork2 *var_r31; + s32 var_r29; + s32 var_r28; + s32 var_r27; + M427DllPlayerWork *var_r26; + + var_r31 = &lbl_1_bss_574[object->work[0]]; + object->data = var_r31; + var_r26 = &lbl_1_bss_578[object->work[1]]; + lbl_1_bss_578[object->work[1]].unk_08[object->work[2]] = var_r31; + var_r31->unk_00 = object->work[0]; + var_r31->unk_04 = object->work[1]; + var_r31->unk_08 = GWPlayerCfg[var_r31->unk_00].pad_idx; + var_r31->unk_0C = GWPlayerCfg[var_r31->unk_00].character; + var_r31->unk_10 = object->work[2]; + var_r31->unk_18 = GWPlayerCfg[var_r31->unk_00].iscom; + var_r31->unk_1C = GWPlayerCfg[var_r31->unk_00].diff; + var_r31->unk_20 = 0; + var_r31->unk_24 = 0; + var_r31->unk_28 = 0; + var_r31->unk_30 = 0; + var_r31->unk_34 = 0; + var_r31->unk_38 = 0; + var_r31->unk_3C = 0; + var_r31->unk_40 = var_r31->unk_44 = 0; + var_r31->unk_48 = var_r31->unk_4C = 0; + var_r31->unk_50 = 0; + var_r31->unk_54 = 0; + var_r31->unk_60 = lbl_1_data_618[var_r31->unk_1C]; + var_r31->unk_58 = frand() % var_r31->unk_60; + var_r31->unk_5C = frand() % 7; + var_r31->unk_64 = -1; + var_r31->unk_68 = var_r31->unk_6C = var_r31->unk_70 = 0.0f; + if (var_r31->unk_18 != 0) { + var_r26->unk_14 |= 1 << var_r31->unk_10; + } + var_r27 = var_r31->unk_0C; + object->model[0] = CharModelCreate(var_r27, 4); + Hu3DModelLayerSet(object->model[0], 2); + if (var_r31->unk_04 == 0) { + Hu3DModelCameraSet(object->model[0], 1); + } + else { + Hu3DModelCameraSet(object->model[0], 2); + } + if (var_r31->unk_10 != 0) { + fn_1_172F0(object->model[0], 0.3f); + } + else { + fn_1_172F0(object->model[0], 0.3f); + } + CharModelStepTypeSet(var_r27, 3); + for (var_r29 = 0; var_r29 < 4; var_r29++) { + object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], var_r31->unk_0C + lbl_1_data_608[var_r29]); + } + var_r31->unk_2C = 0; + CharModelMotionSet(var_r31->unk_0C, object->motion[0]); + CharModelMotionDataClose(var_r27); + var_r28 = Hu3DLLightCreateV(object->model[0], &lbl_1_data_564, &lbl_1_data_570, &lbl_1_data_57C); + var_r31->unk_14 = var_r28; + Hu3DLLightStaticSet(object->model[0], var_r28, 1); + if (var_r31->unk_10 == 0) { + Hu3DLLightPointSet(object->model[0], var_r28, 80.0f, 0.95f, 3); + } + else { + Hu3DLLightPointSet(object->model[0], var_r28, 80.0f, 0.95f, 3); + } + Hu3DLLightColorSet(object->model[0], var_r28, 0xFF, 0xFF, 0xFF, 0xFF); + Hu3DLLightPosSet( + object->model[0], var_r28, lbl_1_data_564.x, lbl_1_data_564.y, lbl_1_data_564.z, lbl_1_data_570.x, lbl_1_data_570.y, lbl_1_data_570.z); + object->func = fn_1_11ED8; + (void)var_r29; +} + +void fn_1_11ED8(omObjData *object) +{ + M427DllPlayerWork2 *var_r31; + s32 var_r29; + M427DllPlayerWork *var_r28; + omObjData *var_r27; + + var_r31 = object->data; + var_r28 = &lbl_1_bss_578[var_r31->unk_04]; + var_r27 = lbl_1_bss_56C[var_r31->unk_04]; + var_r31->unk_40 = HuPadBtn[var_r31->unk_08]; + var_r31->unk_44 = HuPadBtnDown[var_r31->unk_08]; + if ((var_r31->unk_18 != 0) && (var_r31->unk_24 == 2)) { + if (var_r28->unk_14 == 3) { + fn_1_12580(object); + } + else { + fn_1_12518(object); + } + } + var_r31->unk_38 = var_r31->unk_3C = 0; + if (var_r31->unk_30 != 0) { + var_r31->unk_38 = 1; + } + if (var_r31->unk_34 != 0) { + var_r31->unk_3C = 1; + } + var_r31->unk_30 = var_r31->unk_34 = 0; + switch (var_r31->unk_24) { + case 0: + if (((var_r31->unk_20 & 0xF) == 0) && (var_r27->trans.z > 100.0f)) { + var_r31->unk_30 = 1; + var_r31->unk_34 = 1; + } + var_r29 = 1; + if (var_r29 != var_r31->unk_2C) { + var_r31->unk_2C = var_r29; + CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_2C], 0.0f, 8.0f, 0x40000001); + } + break; + case 1: + var_r29 = 0; + if ((var_r29 != var_r31->unk_2C) && (CharModelMotionShiftIDGet(var_r31->unk_0C) == -1)) { + var_r31->unk_2C = var_r29; + CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_2C], 0.0f, 8.0f, 0x40000001); + var_r31->unk_28 = 0; + } + break; + case 2: + if (fn_1_32EC() == 0) { + if ((var_r31->unk_44 & 0x100) != 0) { + var_r31->unk_30 = 1; + } + if ((var_r31->unk_44 & 0x200) != 0) { + var_r31->unk_34 = 1; + } + } + var_r31->unk_48 = var_r31->unk_40; + var_r31->unk_4C = var_r31->unk_44; + if ((var_r31->unk_30 != 0) || (var_r31->unk_34 != 0)) { + var_r29 = 1; + } + else { + var_r29 = 0; + } + if ((CharModelMotionShiftIDGet(var_r31->unk_0C) == -1) + && ((var_r29 != var_r31->unk_2C) || (CharModelMotionEndCheck(var_r31->unk_0C) == 1))) { + if (var_r31->unk_2C == var_r29) { + CharModelMotionTimeSet(var_r31->unk_0C, 0.0f); + } + else { + var_r31->unk_2C = var_r29; + CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_2C], 0.0f, 8.0f, 0); + } + } + break; + case 3: + var_r29 = 2; + if ((var_r29 != var_r31->unk_2C) && (CharModelMotionShiftIDGet(var_r31->unk_0C) == -1)) { + var_r31->unk_2C = var_r29; + CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_2C], 0.0f, 8.0f, 0x40000001); + var_r31->unk_28 = 0; + } + if (var_r31->unk_2C == 2) { + if (++var_r31->unk_28 >= 240.0f) { + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_LOOP); + } + } + break; + case 4: + var_r29 = 0; + if ((var_r29 != var_r31->unk_2C) && (CharModelMotionShiftIDGet(var_r31->unk_0C) == -1)) { + var_r31->unk_2C = var_r29; + if (object->model[1] != -1) { + Hu3DMotionShiftSet(object->model[1], object->motion[var_r31->unk_2C], 0.0f, 8.0f, HU3D_MOTATTR_LOOP); + } + else { + CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_2C], 0.0f, 8.0f, 0x40000001); + } + var_r31->unk_28 = 0; + } + break; + case 5: + if (object->trans.z > -1300.0f) { + if ((var_r31->unk_20 & 0xF) == 0) { + var_r31->unk_30 = 1; + var_r31->unk_34 = 1; + } + var_r29 = 1; + } + else { + var_r29 = 0; + } + if (var_r31->unk_2C == 1) { + Hu3DModelAttrSet(object->model[0], HU3D_MOTATTR_LOOP); + } + if ((CharModelMotionShiftIDGet(var_r31->unk_0C) == -1) && (var_r29 != var_r31->unk_2C)) { + var_r31->unk_2C = var_r29; + CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_2C], 0.0f, 8.0f, 0x40000001); + } + break; + case 6: + var_r29 = 3; + if ((var_r29 != var_r31->unk_2C) && (CharModelMotionShiftIDGet(var_r31->unk_0C) == -1)) { + var_r31->unk_2C = var_r29; + CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_2C], 0.0f, 8.0f, 0); + HuAudCharVoicePlay(var_r31->unk_0C, 0x124); + var_r31->unk_28 = 0; + } + break; + case 7: + break; + } + var_r31->unk_20++; +} + +void fn_1_12514(omObjData *object) { } + +void fn_1_12518(omObjData *object) +{ + M427DllPlayerWork *var_r31; + M427DllPlayerWork2 *var_r30; + M427DllPlayerWork2 *var_r29; + + var_r30 = object->data; + var_r31 = &lbl_1_bss_578[var_r30->unk_04]; + if (var_r31->unk_14 == 1) { + var_r29 = var_r31->unk_08[1]; + } + else { + var_r29 = var_r31->unk_08[0]; + } + var_r30->unk_40 = var_r29->unk_48; + var_r30->unk_44 = var_r29->unk_4C; +} + +void fn_1_12580(omObjData *var_r24) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + M427DllPlayerWork2 *var_r31; + M427DllBss590Struct *var_r30; + omObjData *var_r29; + M427DllPlayerWork *var_r28; + s32 var_r27; + s32 var_r26; + s32 var_r25; + + var_r31 = var_r24->data; + var_r28 = &lbl_1_bss_578[var_r31->unk_04]; + var_r29 = lbl_1_bss_56C[var_r31->unk_04]; + var_r31->unk_40 = 0; + var_r31->unk_44 = 0; + var_r26 = fn_1_155E0(var_r29->trans.x, var_r29->trans.y, var_r29->trans.z, NULL); + if ((var_r31->unk_64 != var_r26) || (var_r31->unk_54 > 180.0f)) { + var_r31->unk_64 = var_r26; + switch (var_r31->unk_1C) { + case 0: + var_r27 = 2; + break; + case 1: + var_r27 = 2; + break; + case 2: + var_r27 = 3; + break; + case 3: + var_r27 = 4; + break; + } + if ((var_r31->unk_64 >= 0) && (var_r31->unk_64 < (lbl_1_bss_580 - var_r27)) && (var_r31->unk_64 <= (lbl_1_bss_580 - 2))) { + var_r26 = var_r31->unk_64 + var_r27; + var_r30 = &lbl_1_bss_590[var_r26]; + var_f31 = 0.5f * (var_r30->unk_64 + var_r30->unk_68); + var_f30 = (0.6f - (0.1f * var_r31->unk_1C)) - (0.1f * var_r31->unk_1C * ((frand() & 0x7F) / 127.0f)); + if (var_f30 > 1.0f) { + var_f30 = 1.0f; + } + else if (var_f30 < 0.0f) { + var_f30 = 0.0f; + } + var_f31 *= var_f30; + if ((frand() & 1) != 0) { + var_f31 *= -1.0f; + } + var_r31->unk_68 = var_r30->unk_80->x + var_f31; + var_r31->unk_6C = var_r30->unk_80->y; + var_r31->unk_70 = var_r30->unk_80->z; + } + else { + var_r30 = &lbl_1_bss_590[lbl_1_bss_580 - 1]; + var_r31->unk_68 = var_r30->unk_80->x; + var_r31->unk_6C = var_r30->unk_80->y; + var_r31->unk_70 = var_r30->unk_80->z; + } + var_r31->unk_54 = 0; + } + var_r25 = var_r31->unk_60 + var_r31->unk_5C; + if (var_r28->unk_20 != 0) { + var_r25 = 5; + } + if (++var_r31->unk_58 > var_r25) { + var_r31->unk_58 = 0; + var_r31->unk_5C = frand() % 7; + var_f28 = var_r31->unk_68 - var_r29->trans.x; + var_f27 = var_r31->unk_70 - var_r29->trans.z; + var_f31 = fn_1_16594(atan2d(var_f28, var_f27), var_r28->unk_64); + if (fabs(var_f31) < (30.0f - (5.0f * var_r31->unk_1C))) { + if (var_r31->unk_1C > 2) { + var_f29 = 0.25f * (var_r28->unk_58 - var_r28->unk_5C); + if (var_f29 > 10.0f) { + var_r31->unk_44 |= 0x100; + } + else if (var_f29 < -10.0f) { + var_r31->unk_44 |= 0x200; + } + else { + var_r31->unk_44 |= 0x300; + } + } + else { + var_r31->unk_44 |= 0x300; + } + } + else if (var_f31 < 0.0f) { + var_r31->unk_44 |= 0x200; + } + else { + var_r31->unk_44 |= 0x100; + } + } + var_r31->unk_50++; + var_r31->unk_54++; +} + +void fn_1_12B08(void) +{ + Vec sp20; + float sp1C; + float sp18; + float sp14; + float sp10; + float spC; + float sp8; + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + float var_f26; + float var_f25; + float var_f24; + float var_f23; + float var_f22; + float var_f21; + float var_f20; + float var_f19; + float var_f18; + M427DllBss590Struct *var_r31; + s32 var_r30; + M427DllBss57CStruct *var_r29; + + lbl_1_bss_580 = 0x1D; + lbl_1_bss_584 = HuMemDirectMallocNum(HEAP_SYSTEM, lbl_1_bss_580 * sizeof(Vec), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_584, 0, lbl_1_bss_580 * sizeof(Vec)); + for (var_r30 = 0; var_r30 < lbl_1_bss_580; var_r30++) { + lbl_1_bss_584[var_r30].x = 0.5f * (lbl_1_data_260[var_r30].x + lbl_1_data_3BC[var_r30].x); + lbl_1_bss_584[var_r30].y = 0.5f * (lbl_1_data_260[var_r30].y + lbl_1_data_3BC[var_r30].y); + lbl_1_bss_584[var_r30].z = 0.5f * (lbl_1_data_260[var_r30].z + lbl_1_data_3BC[var_r30].z); + } + lbl_1_bss_58C = HuMemDirectMallocNum(HEAP_SYSTEM, lbl_1_bss_580 * sizeof(Vec), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_58C, 0, lbl_1_bss_580 * sizeof(Vec)); + for (var_r30 = 0; var_r30 < lbl_1_bss_580; var_r30++) { + VECSubtract(&lbl_1_bss_584[var_r30], &lbl_1_data_260[var_r30], &lbl_1_bss_58C[var_r30]); + VECNormalize(&lbl_1_bss_58C[var_r30], &lbl_1_bss_58C[var_r30]); + VECScale(&lbl_1_bss_58C[var_r30], &lbl_1_bss_58C[var_r30], 200.0f); + VECAdd(&lbl_1_bss_58C[var_r30], &lbl_1_data_260[var_r30], &lbl_1_bss_58C[var_r30]); + } + lbl_1_bss_588 = HuMemDirectMallocNum(HEAP_SYSTEM, lbl_1_bss_580 * sizeof(Vec), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_588, 0, lbl_1_bss_580 * sizeof(Vec)); + for (var_r30 = 0; var_r30 < lbl_1_bss_580; var_r30++) { + VECSubtract(&lbl_1_bss_584[var_r30], &lbl_1_data_3BC[var_r30], &lbl_1_bss_588[var_r30]); + VECNormalize(&lbl_1_bss_588[var_r30], &lbl_1_bss_588[var_r30]); + VECScale(&lbl_1_bss_588[var_r30], &lbl_1_bss_588[var_r30], 200.0f); + VECAdd(&lbl_1_bss_588[var_r30], &lbl_1_data_3BC[var_r30], &lbl_1_bss_588[var_r30]); + } + var_r31 = lbl_1_bss_590 = HuMemDirectMallocNum(HEAP_SYSTEM, lbl_1_bss_580 * sizeof(M427DllBss590Struct), MEMORY_DEFAULT_NUM); + memset(lbl_1_bss_590, 0, lbl_1_bss_580 * sizeof(M427DllBss590Struct)); + for (var_r30 = 0; var_r30 < lbl_1_bss_580; var_r30++, var_r31++) { + var_r31->unk_00 = var_r30; + var_r31->unk_04 = var_r30 + 1; + var_r31->unk_08 = var_r30 - 1; + if (var_r31->unk_04 >= lbl_1_bss_580) { + var_r31->unk_04 = -1; + } + if (var_r31->unk_08 >= lbl_1_bss_580) { + var_r31->unk_08 = -1; + } + var_r31->unk_78 = &lbl_1_bss_58C[var_r30]; + var_r31->unk_7C = &lbl_1_bss_588[var_r30]; + var_r31->unk_80 = &lbl_1_bss_584[var_r30]; + if (var_r31->unk_04 < 0) { + var_r31->unk_0C = 180.0f; + var_r31->unk_70 = 180.0f; + var_r31->unk_74 = 180.0f; + } + else { + var_r31->unk_0C + = atan2d(lbl_1_bss_584[var_r31->unk_04].x - lbl_1_bss_584[var_r30].x, lbl_1_bss_584[var_r31->unk_04].z - lbl_1_bss_584[var_r30].z); + var_r31->unk_70 + = atan2d(lbl_1_bss_58C[var_r31->unk_04].x - lbl_1_bss_58C[var_r30].x, lbl_1_bss_58C[var_r31->unk_04].z - lbl_1_bss_58C[var_r30].z); + var_r31->unk_74 + = atan2d(lbl_1_bss_588[var_r31->unk_04].x - lbl_1_bss_588[var_r30].x, lbl_1_bss_588[var_r31->unk_04].z - lbl_1_bss_588[var_r30].z); + } + if (var_r31->unk_08 < 0) { + var_r31->unk_10 = 0.0f; + } + else { + var_r31->unk_10 + = atan2d(lbl_1_bss_584[var_r31->unk_08].x - lbl_1_bss_584[var_r30].x, lbl_1_bss_584[var_r31->unk_08].z - lbl_1_bss_584[var_r30].z); + } + if (var_r31->unk_04 < 0) { + var_r31->unk_6C = 0.0f; + sp20.x = lbl_1_bss_58C[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_20; + sp20.y = lbl_1_bss_58C[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_24; + sp20.z = lbl_1_bss_58C[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_28; + fn_1_16E3C(&lbl_1_data_260[var_r30], &sp20, &var_r31->unk_14, 0); + sp20.x = lbl_1_bss_588[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_38; + sp20.y = lbl_1_bss_588[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_3C; + sp20.z = lbl_1_bss_588[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_40; + fn_1_16E3C(&lbl_1_data_3BC[var_r30], &sp20, &var_r31->unk_2C, 0); + sp20.x = lbl_1_bss_584[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_50; + sp20.y = lbl_1_bss_584[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_54; + sp20.z = lbl_1_bss_584[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_58; + fn_1_16E3C(&lbl_1_bss_584[var_r30], &sp20, &var_r31->unk_44, 0); + } + else { + sp20.x = lbl_1_bss_584[var_r30 + 1].x - lbl_1_bss_584[var_r30].x; + sp20.y = lbl_1_bss_584[var_r30 + 1].y - lbl_1_bss_584[var_r30].y; + sp20.z = lbl_1_bss_584[var_r30 + 1].z - lbl_1_bss_584[var_r30].z; + var_r31->unk_6C = sqrtf((sp20.z * sp20.z) + ((sp20.x * sp20.x) + (sp20.y * sp20.y))); + fn_1_16E3C(&lbl_1_bss_58C[var_r30], &lbl_1_bss_58C[var_r31->unk_04], &var_r31->unk_14, 0); + fn_1_16E3C(&lbl_1_bss_588[var_r30], &lbl_1_bss_588[var_r31->unk_04], &var_r31->unk_2C, 0); + fn_1_16E3C(&lbl_1_bss_584[var_r30], &lbl_1_bss_584[var_r31->unk_04], &var_r31->unk_44, 0); + } + sp20.x = lbl_1_bss_58C[var_r30].x - lbl_1_bss_584[var_r30].x; + sp20.z = lbl_1_bss_58C[var_r30].z - lbl_1_bss_584[var_r30].z; + sp20.y = 0.0f; + var_r31->unk_5C = sqrtf((sp20.z * sp20.z) + ((sp20.x * sp20.x) + (sp20.y * sp20.y))); + sp20.x = lbl_1_bss_588[var_r30].x - lbl_1_bss_584[var_r30].x; + sp20.z = lbl_1_bss_588[var_r30].z - lbl_1_bss_584[var_r30].z; + sp20.y = 0.0f; + var_r31->unk_60 = sqrtf((sp20.z * sp20.z) + ((sp20.x * sp20.x) + (sp20.y * sp20.y))); + if (var_r31->unk_04 < 0) { + var_r31->unk_64 = var_r31->unk_5C; + var_r31->unk_68 = var_r31->unk_60; + } + else { + sp20.x = lbl_1_bss_58C[var_r31->unk_04].x - lbl_1_bss_584[var_r31->unk_04].x; + sp20.z = lbl_1_bss_58C[var_r31->unk_04].z - lbl_1_bss_584[var_r31->unk_04].z; + sp20.y = 0.0f; + var_r31->unk_64 = sqrtf((sp20.z * sp20.z) + ((sp20.x * sp20.x) + (sp20.y * sp20.y))); + sp20.x = lbl_1_bss_588[var_r31->unk_04].x - lbl_1_bss_584[var_r31->unk_04].x; + sp20.z = lbl_1_bss_588[var_r31->unk_04].z - lbl_1_bss_584[var_r31->unk_04].z; + sp20.y = 0.0f; + var_r31->unk_68 = sqrtf((sp20.z * sp20.z) + ((sp20.x * sp20.x) + (sp20.y * sp20.y))); + } + } + lbl_1_bss_558 = lbl_1_data_260; + lbl_1_bss_554 = lbl_1_data_3BC; + lbl_1_bss_550 = lbl_1_bss_584; + var_r29 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x40 * sizeof(M427DllBss57CStruct), MEMORY_DEFAULT_NUM); + lbl_1_bss_57C = var_r29; + memset(lbl_1_bss_57C, 0, 0x40 * sizeof(M427DllBss57CStruct)); + for (var_r30 = 0; var_r30 < 0x40; var_r30++, var_r29++) { + var_r29->unk_00 = var_r30; + var_r29->unk_04 = -1; + var_r29->unk_08 = -1; + var_r29->unk_0C = 0; + var_r29->unk_10 = 0; + var_r29->unk_14 = var_r29->unk_18 = 0; + } +} + +void fn_1_13F24(void) +{ + M427DllBss57CStruct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_57C, var_r30 = 0; var_r30 < 0x40; var_r30 += 1, var_r31++) { + if ((var_r31->unk_04 >= 0) && (var_r31->unk_08 >= 0) && (var_r31->unk_18 >= 0)) { + if (++var_r31->unk_14 > var_r31->unk_18) { + fn_1_1607C(var_r30); + } + } + } +} + +void fn_1_13FB8(void) { } + +GXColor lbl_1_data_648 = { 0xFF, 0xFF, 0xFF, 0xFF }; +GXColor lbl_1_data_64C = { 0xFF, 0, 0, 0xFF }; +GXColor lbl_1_data_650 = { 0xFF, 0xFF, 0, 0xFF }; + +void fn_1_13FBC(ModelData *model, Mtx matrix) +{ + Mtx sp70; + float var_f31; + float var_f30; + float var_f29; + M427DllBss57CStruct *var_r31; + M427DllBss590Struct *var_r30; + s16 var_r29; + s16 var_r28; + M427DllPlayerWork *var_r27; + M427DllPlayerWork2 *var_r26; + s32 *var_r25; + omObjData *var_r24; + + var_r25 = model->unk_120; + var_r27 = &lbl_1_bss_578[*var_r25]; + var_r24 = lbl_1_bss_56C[*var_r25]; + GXLoadPosMtxImm(matrix, 0); + PSMTXInvXpose(matrix, sp70); + GXLoadNrmMtxImm(sp70, 0); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetNumChans(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevOp(GX_TEVSTAGE0, GX_REPLACE); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_RASC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_KONST); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); + GXSetChanCtrl(GX_COLOR0A0, 1, GX_SRC_VTX, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_SPEC); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + GXSetZCompLoc(GX_FALSE); + GXSetBlendMode(GX_BM_BLEND, GX_BL_ONE, GX_BL_ZERO, GX_LO_NOOP); + GXSetLineWidth(0x10, GX_TO_ZERO); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_POS, lbl_1_data_260, sizeof(Vec)); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &lbl_1_data_648, sizeof(GXColor)); + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 0x1D); + for (var_r29 = 0; var_r29 < 0x1DU; var_r29++) { + GXPosition1x16(var_r29); + GXColor1x16(0); + } + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, &lbl_1_data_3BC, sizeof(Vec)); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &lbl_1_data_648, sizeof(GXColor)); + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 0x1D); + for (var_r29 = 0; var_r29 < 0x1DU; var_r29++) { + GXPosition1x16(var_r29); + GXColor1x16(0); + } + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, lbl_1_bss_584, sizeof(Vec)); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, &lbl_1_data_650, sizeof(GXColor)); + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 0x1D); + for (var_r29 = 0; var_r29 < lbl_1_bss_580; var_r29++) { + GXPosition1x16(var_r29); + GXColor1x16(0); + } + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_CLR0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXBegin(GX_LINES, GX_VTXFMT0, lbl_1_bss_580 * 4); + for (var_r30 = lbl_1_bss_590, var_r29 = 0; var_r29 < lbl_1_bss_580; var_r29++, var_r30++) { + GXPosition3f32(var_r30->unk_78->x, var_r30->unk_78->y, var_r30->unk_78->z); + GXColor4u8(lbl_1_data_64C.r, lbl_1_data_64C.g, lbl_1_data_64C.b, lbl_1_data_64C.a); + GXPosition3f32(var_r30->unk_80->x, var_r30->unk_80->y, var_r30->unk_80->z); + GXColor4u8(lbl_1_data_64C.r, lbl_1_data_64C.g, lbl_1_data_64C.b, lbl_1_data_64C.a); + GXPosition3f32(var_r30->unk_7C->x, var_r30->unk_7C->y, var_r30->unk_7C->z); + GXColor4u8(lbl_1_data_64C.r, lbl_1_data_64C.g, lbl_1_data_64C.b, lbl_1_data_64C.a); + GXPosition3f32(var_r30->unk_80->x, var_r30->unk_80->y, var_r30->unk_80->z); + GXColor4u8(lbl_1_data_64C.r, lbl_1_data_64C.g, lbl_1_data_64C.b, lbl_1_data_64C.a); + } + for (var_r29 = 0, var_r31 = lbl_1_bss_57C; var_r29 < 0x40; var_r29++, var_r31++) { + if ((var_r31->unk_04 >= 0) && (var_r31->unk_08 >= 0) && (var_r31->unk_10 == *var_r25) && (var_r31->unk_04 == 1)) { + switch (var_r31->unk_08) { + case 0: + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 5); + var_f31 = 200.0f + fn_1_15714(var_r31->unk_1C.x, var_r31->unk_1C.z); + GXPosition3f32(var_r31->unk_1C.x, var_f31, var_r31->unk_1C.z); + GXColor4u8(0, 0xFF, 0, 0xFF); + GXPosition3f32(var_r31->unk_28.x, var_f31, var_r31->unk_1C.z); + GXColor4u8(0, 0xFF, 0, 0xFF); + GXPosition3f32(var_r31->unk_28.x, var_f31, var_r31->unk_28.z); + GXColor4u8(0, 0xFF, 0, 0xFF); + GXPosition3f32(var_r31->unk_1C.x, var_f31, var_r31->unk_28.z); + GXColor4u8(0, 0xFF, 0, 0xFF); + GXPosition3f32(var_r31->unk_1C.x, var_f31, var_r31->unk_1C.z); + GXColor4u8(0, 0xFF, 0, 0xFF); + break; + case 1: + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 0xA); + var_f31 = 200.0f + fn_1_15714(var_r31->unk_1C.x, var_r31->unk_1C.z); + for (var_r28 = 0; var_r28 < 0xA; var_r28++) { + var_f30 = var_r31->unk_1C.x + (var_r31->unk_34 * sind((40.0f * var_r28))); + var_f29 = var_r31->unk_1C.z + (var_r31->unk_34 * cosd((40.0f * var_r28))); + GXPosition3f32(var_f30, var_f31, var_f29); + GXColor4u8(0, 0xFF, 0, 0xFF); + } + break; + } + } + } + for (var_r29 = 0, var_r31 = lbl_1_bss_57C; var_r29 < 0x40; var_r29++, var_r31++) { + if ((var_r31->unk_04 >= 0) && (var_r31->unk_08 >= 0) && (var_r31->unk_10 == *var_r25) && (var_r31->unk_04 == 0)) { + switch (var_r31->unk_08) { + case 0: + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 5); + var_f31 = 200.0f + fn_1_15714(var_r31->unk_1C.x, var_r31->unk_1C.z); + GXPosition3f32(var_r31->unk_1C.x, var_f31, var_r31->unk_1C.z); + GXColor4u8(0, 0, 0xFF, 0xFF); + GXPosition3f32(var_r31->unk_28.x, var_f31, var_r31->unk_1C.z); + GXColor4u8(0, 0, 0xFF, 0xFF); + GXPosition3f32(var_r31->unk_28.x, var_f31, var_r31->unk_28.z); + GXColor4u8(0, 0, 0xFF, 0xFF); + GXPosition3f32(var_r31->unk_1C.x, var_f31, var_r31->unk_28.z); + GXColor4u8(0, 0, 0xFF, 0xFF); + GXPosition3f32(var_r31->unk_1C.x, var_f31, var_r31->unk_1C.z); + GXColor4u8(0, 0, 0xFF, 0xFF); + break; + case 1: + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 0xA); + var_f31 = 200.0f + fn_1_15714(var_r31->unk_1C.x, var_r31->unk_1C.z); + for (var_r28 = 0; var_r28 < 0xA; var_r28++) { + var_f30 = var_r31->unk_1C.x + (var_r31->unk_34 * sind((40.0f * var_r28))); + var_f29 = var_r31->unk_1C.z + (var_r31->unk_34 * cosd((40.0f * var_r28))); + GXPosition3f32(var_f30, var_f31, var_f29); + GXColor4u8(0, 0, 0xFF, 0xFF); + } + break; + } + } + } + if ((var_r24 == NULL) || (var_r27 == NULL)) { + return; + } + if ((var_r27->unk_00[0] == NULL) || (var_r27->unk_08[0] == NULL)) { + return; + } + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 0xA); + var_f31 = 100.0f + var_r24->trans.y; + for (var_r28 = 0; var_r28 < 0xA; var_r28++) { + var_f30 = var_r24->trans.x + (200.0 * sind((40.0f * var_r28))); + var_f30 = var_f30; + var_f29 = var_r24->trans.z + (200.0 * cosd((40.0f * var_r28))); + var_f29 = var_f29; + GXPosition3f32(var_f30, var_f31, var_f29); + GXColor4u8(0xFF, 0, 0xFF, 0xFF); + } + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 4); + var_r26 = var_r27->unk_08[0]; + var_f30 = var_r26->unk_68; + var_f29 = var_r26->unk_70; + var_f31 = 100.0f + fn_1_15714(var_f30, var_f29); + GXPosition3f32(var_f30, var_f31, var_f29); + GXColor4u8(0xFF, 0x80, 0, 0xFF); + GXPosition3f32(100.0f + var_f30, 200.0f + var_f31, var_f29); + GXColor4u8(0xFF, 0x80, 0, 0xFF); + GXPosition3f32(var_f30 - 100.0f, 200.0f + var_f31, var_f29); + GXColor4u8(0xFF, 0x80, 0, 0xFF); + GXPosition3f32(var_f30, var_f31, var_f29); + GXColor4u8(0xFF, 0x80, 0, 0xFF); + GXBegin(GX_LINESTRIP, GX_VTXFMT0, 4); + var_r26 = var_r27->unk_08[1]; + var_f30 = var_r26->unk_68; + var_f29 = var_r26->unk_70; + var_f31 = 100.0f + fn_1_15714(var_f30, var_f29); + GXPosition3f32(var_f30, var_f31, var_f29); + GXColor4u8(0, 0x80, 0xFF, 0xFF); + GXPosition3f32(100.0f + var_f30, 200.0f + var_f31, var_f29); + GXColor4u8(0, 0x80, 0xFF, 0xFF); + GXPosition3f32(var_f30 - 100.0f, 200.0f + var_f31, var_f29); + GXColor4u8(0, 0x80, 0xFF, 0xFF); + GXPosition3f32(var_f30, var_f31, var_f29); + GXColor4u8(0, 0x80, 0xFF, 0xFF); +} + +void fn_1_154B8(void) { } + +s32 fn_1_154BC(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + float var_f27; + s32 var_r31; + s32 var_r30; + + var_r30 = -1; + var_f27 = 1e7f; + for (var_r31 = 0; var_r31 < lbl_1_bss_580; var_r31++) { + var_f31 = lbl_1_bss_590[var_r31].unk_80->x - arg8; + var_f30 = lbl_1_bss_590[var_r31].unk_80->y - arg9; + var_f29 = lbl_1_bss_590[var_r31].unk_80->z - argA; + var_f28 = (var_f29 * var_f29) + ((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f28 < var_f27) { + var_r30 = var_r31; + var_f27 = var_f28; + } + } + return var_r30; +} + +s32 fn_1_155E0(float arg8, float arg9, float argA, float *arg0) +{ + float var_f31; + float var_f30; + double var_f29; + double var_f28; + M427DllBss590Struct *var_r31; + s32 var_r30; + M427DllBss590Struct *var_r29; + + for (var_r30 = 0; var_r30 < (lbl_1_bss_580 - 1); var_r30++) { + var_r31 = &lbl_1_bss_590[var_r30]; + var_r29 = &lbl_1_bss_590[var_r30 + 1]; + if ((argA < var_r31->unk_80->z) && (argA >= var_r29->unk_80->z)) { + var_f31 = var_r29->unk_80->z - var_r31->unk_80->z; + if ((arg0 != NULL) && (var_f31 != 0.0f)) { + *arg0 = fabs((argA - var_r31->unk_80->z) / var_f31); + } + break; + } + } + return var_r30; +} + +float fn_1_15714(float arg8, float arg9) +{ + float sp8; + M427DllBss590Struct *var_r31; + s32 var_r28; + M427DllBss590Struct *var_r26; + + var_r28 = fn_1_155E0(0.0f, 0.0f, arg9, &sp8); + var_r31 = &lbl_1_bss_590[var_r28]; + if ((var_r28 < 0) || (var_r28 >= (lbl_1_bss_580 - 1))) { + return var_r31->unk_80->y; + } + var_r26 = &lbl_1_bss_590[var_r28 + 1]; + return var_r31->unk_80->y + (sp8 * (var_r26->unk_80->y - var_r31->unk_80->y)); +} + +void fn_1_158D8(float arg8, float var_f30, Vec *var_r31) +{ + float sp8; + M427DllBss590Struct *var_r30; + M427DllBss590Struct *var_r29; + s32 var_r26; + + var_r31->x = var_r31->y = var_r31->z = 0.0f; + var_r26 = fn_1_155E0(0.0f, 0.0f, var_f30, &sp8); + var_r30 = &lbl_1_bss_590[var_r26]; + if ((var_r26 < 0) || (var_r26 >= (lbl_1_bss_580 - 1))) { + return; + } + var_r29 = &lbl_1_bss_590[var_r26 + 1]; + if (var_r30->unk_80->y > var_r29->unk_80->y) { + var_r31->x = var_r29->unk_80->x - var_r30->unk_80->x; + var_r31->z = var_r29->unk_80->z - var_r30->unk_80->z; + VECNormalize(var_r31, var_r31); + } +} + +s32 fn_1_15AF0(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4) +{ + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; + Vec spC; + float sp8; + float var_f31; + float var_f29; + M427DllBss590Struct *var_r30; + + *arg3 = *arg2; + arg4->x = arg4->y = arg4->z = 0.0f; + if (arg0 < 0) { + arg0 = fn_1_155E0(0.0f, 0.0f, arg2->z, &sp8); + } + if ((arg0 < 0) || (arg0 >= (lbl_1_bss_580 - 1))) { + return 0; + } + var_r30 = &lbl_1_bss_590[arg0]; + sp3C.x = arg2->x - arg1->x; + sp3C.y = arg2->y - arg1->y; + sp3C.z = arg2->z - arg1->z; + VECNormalize(&sp3C, &sp3C); + spC.x = var_r30->unk_44.x + (sp8 * var_r30->unk_50); + spC.y = var_r30->unk_44.y + (sp8 * var_r30->unk_54); + spC.z = var_r30->unk_44.z + (sp8 * var_r30->unk_58); + var_f29 = fabs(arg2->x - spC.x); + if (arg2->x < spC.x) { + var_f31 = var_r30->unk_5C + (sp8 * (var_r30->unk_64 - var_r30->unk_5C)); + if (var_f29 > var_f31) { + sp30 = *arg2; + fn_1_17048(&var_r30->unk_14, NULL, &sp30, &sp24); + arg3->x = sp24.x; + arg3->y = sp24.y; + arg3->z = sp24.z; + arg4->x = arg3->x - arg2->x; + arg4->y = arg3->y - arg2->y; + arg4->z = arg3->z - arg2->z; + return 1; + } + goto block_18; + } + var_f31 = var_r30->unk_60 + (sp8 * (var_r30->unk_68 - var_r30->unk_60)); + if (var_f29 > var_f31) { + sp30 = *arg2; + fn_1_17048(&var_r30->unk_2C, NULL, &sp30, &sp18); + arg3->x = sp18.x; + arg3->y = sp18.y; + arg3->z = sp18.z; + arg4->x = arg3->x - arg2->x; + arg4->y = arg3->y - arg2->y; + arg4->z = arg3->z - arg2->z; + return 1; + } +block_18: + return 0; +} + +s32 fn_1_15F10(Vec *arg0, Vec *arg1, s32 arg2, s32 arg3, s32 arg4) +{ + M427DllBss57CStruct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_57C, var_r30 = 0; var_r30 < 0x40; var_r30++, var_r31++) { + if ((var_r31->unk_04 < 0) || (var_r31->unk_08 < 0)) { + break; + } + } + if (var_r30 >= 0x40) { + return -1; + } + var_r31->unk_04 = arg2; + var_r31->unk_08 = 0; + var_r31->unk_0C = 0; + var_r31->unk_10 = arg4; + var_r31->unk_18 = arg3; + var_r31->unk_14 = 0; + var_r31->unk_1C = *arg0; + var_r31->unk_28 = *arg1; + return var_r30; +} + +s32 fn_1_15FD0(Vec *arg0, s32 arg1, s32 arg2, s32 arg3, float arg8) +{ + M427DllBss57CStruct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_57C, var_r30 = 0; var_r30 < 0x40; var_r30++, var_r31++) { + if ((var_r31->unk_04 < 0) || (var_r31->unk_08 < 0)) { + break; + } + } + if (var_r30 >= 0x40) { + return -1; + } + var_r31->unk_04 = arg1; + var_r31->unk_08 = 1; + var_r31->unk_0C = 0; + var_r31->unk_10 = arg3; + var_r31->unk_18 = arg2; + var_r31->unk_14 = 0; + var_r31->unk_1C = *arg0; + var_r31->unk_34 = arg8; + return var_r30; +} + +void fn_1_1607C(s32 arg0) +{ + M427DllBss57CStruct *var_r31; + + if ((arg0 < 0) || (arg0 >= 0x40)) { + return; + } + var_r31 = &lbl_1_bss_57C[arg0]; + var_r31->unk_04 = -1; + var_r31->unk_08 = -1; + var_r31->unk_14 = var_r31->unk_18 = 0; +} + +s32 fn_1_160D4(s32 arg0, Vec *arg1, float arg8) +{ + float var_f31; + float var_f30; + float var_f29; + M427DllBss57CStruct *var_r31; + s32 var_r30; + + for (var_r31 = lbl_1_bss_57C, var_r30 = 0; var_r30 < 0x40; var_r30++, var_r31++) { + if ((var_r31->unk_04 >= 0) && (var_r31->unk_08 >= 0) && (var_r31->unk_10 == arg0) && ((var_r31->unk_04 == 1) || (var_r31->unk_04 == 2))) { + switch (var_r31->unk_08) { + case 0: + var_f31 = arg1->x - var_r31->unk_1C.x; + var_f30 = arg1->z - var_r31->unk_1C.z; + if ((arg1->x >= (var_r31->unk_1C.x - arg8)) && (arg1->x <= (var_r31->unk_28.x + arg8)) && (arg1->z >= (var_r31->unk_1C.z - arg8)) + && (arg1->z <= (var_r31->unk_28.z + arg8))) { + return 1; + } + break; + case 1: + var_f31 = arg1->x - var_r31->unk_1C.x; + var_f30 = arg1->z - var_r31->unk_1C.z; + var_f29 = var_r31->unk_34 + arg8; + if (((var_f31 * var_f31) + (var_f30 * var_f30)) < (var_f29 * var_f29)) { + return 1; + } + break; + } + } + } + return 0; +} + +s32 fn_1_16260(s32 arg0, Vec *arg2, Vec *arg3, Vec *arg4, float arg8) +{ + float var_f31; + float var_f30; + float var_f28; + M427DllBss57CStruct *var_r31; + s32 var_r30; + + *arg4 = *arg3; + for (var_r31 = lbl_1_bss_57C, var_r30 = 0; var_r30 < 0x40; var_r30++, var_r31++) { + if ((var_r31->unk_04 >= 0) && (var_r31->unk_08 >= 0) && (var_r31->unk_10 == arg0) && ((var_r31->unk_04 == 0) || (var_r31->unk_04 == 2))) { + switch (var_r31->unk_08) { + case 0: + var_f31 = arg3->x - var_r31->unk_1C.x; + var_f30 = arg3->z - var_r31->unk_1C.z; + if ((arg3->x >= (var_r31->unk_1C.x - arg8)) && (arg3->x <= (var_r31->unk_28.x + arg8)) && (arg3->z >= (var_r31->unk_1C.z - arg8)) + && (arg3->z <= (var_r31->unk_28.z + arg8))) { + return 1; + } + break; + case 1: + var_f31 = arg3->x - var_r31->unk_1C.x; + var_f30 = arg3->z - var_r31->unk_1C.z; + var_f28 = var_r31->unk_34 + arg8; + if (((var_f31 * var_f31) + (var_f30 * var_f30)) < (var_f28 * var_f28)) { + var_f28 = sqrtf((var_f31 * var_f31) + (var_f30 * var_f30)); + if (var_f28 == 0.0f) { + var_f31 = 0.0f; + var_f30 = 1.0f; + } + else { + var_f31 /= var_f28; + var_f30 /= var_f28; + } + var_f28 = var_r31->unk_34 + arg8; + arg4->x = var_r31->unk_1C.x + (var_f31 * var_f28); + arg4->z = var_r31->unk_1C.z + (var_f30 * var_f28); + arg4->y = arg3->y; + return 1; + } + break; + } + } + } + return 0; +} + +float fn_1_16594(float arg8, float arg9) +{ + float var_f31; + + if (arg8 >= 360.0f) { + arg8 -= 360.0f; + } + else if (arg8 < 0.0f) { + arg8 += 360.0f; + } + if (arg9 >= 360.0f) { + arg9 -= 360.0f; + } + else if (arg9 < 0.0f) { + arg9 += 360.0f; + } + var_f31 = arg8 - arg9; + if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } + else if (var_f31 >= 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} + +float fn_1_166AC(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f26; + + if (arg8 >= 360.0) { + arg8 -= 360.0; + } + else if (arg8 < 0.0) { + arg8 += 360.0; + } + if (arg9 >= 360.0) { + arg9 -= 360.0; + } + else if (arg9 < 0.0) { + arg9 += 360.0; + } + var_f30 = 360.0 + (arg8 - arg9); + if (fabs(var_f30) >= 360.0) { + var_f30 = fmod(var_f30, 360.0); + } + if (var_f30 < 180.0) { + if (var_f30 <= argA) { + var_f31 = var_f30; + } + else { + var_f31 = argA; + } + } + else if ((360.0 - var_f30) <= argA) { + var_f31 = -(360.0 - var_f30); + } + else { + var_f31 = -argA; + } + var_f31 += arg9; + if (var_f31 >= 360.0) { + var_f31 -= 360.0; + } + else if (var_f31 < 0.0) { + var_f31 += 360.0; + } + return var_f31; +} + +float fn_1_168FC(float arg8, float arg9, float argA) +{ + float var_f24; + float var_f23; + + var_f23 = fn_1_16594(argA, arg9); + var_f24 = fabs(var_f23 * arg8); + return fn_1_166AC(argA, arg9, var_f24); +} + +void fn_1_16CF4(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) +{ + Vec sp14; + Vec sp8; + + sp14.x = arg1->x - arg0->x; + sp14.y = arg1->y - arg0->y; + sp14.z = arg1->z - arg0->z; + sp8.x = arg2->x - arg0->x; + sp8.y = arg2->y - arg0->y; + sp8.z = arg2->z - arg0->z; + arg3->x = (sp14.y * sp8.z) - (sp14.z * sp8.y); + arg3->y = (sp14.z * sp8.x) - (sp14.x * sp8.z); + arg3->z = (sp14.x * sp8.y) - (sp14.y * sp8.x); + VECNormalize(arg3, arg3); + arg3[1].x = (arg3->z * arg0->z) + ((arg3->x * arg0->x) + (arg3->y * arg0->y)); +} + +void fn_1_16E3C(Vec *arg0, Vec *arg1, Vec *arg2, s32 arg3) +{ + Vec spC; + + spC.x = arg1->x - arg0->x; + spC.y = arg1->y - arg0->y; + spC.z = arg1->z - arg0->z; + if (arg3 != 0) { + VECNormalize(&spC, &spC); + } + arg2->x = arg0->x; + arg2->y = arg0->y; + arg2->z = arg0->z; + arg2[1].x = spC.x; + arg2[1].y = spC.y; + arg2[1].z = spC.z; +} + +void fn_1_16EF8(Vec *arg0, float *arg1, Vec *arg2, Vec *arg3) +{ + float var_f31; + float var_f30; + float var_f29; + + var_f30 = (arg0[1].z * arg0[1].z) + ((arg0[1].x * arg0[1].x) + (arg0[1].y * arg0[1].y)); + var_f29 = (-arg0[0].z * arg0[1].z) + (arg2->z * arg0[1].z) + + ((-arg0[0].x * arg0[1].x) + (arg2->x * arg0[1].x) + ((-arg0[0].y * arg0[1].y) + (arg2->y * arg0[1].y))); + if (var_f30 != 0.0f) { + var_f31 = var_f29 / var_f30; + } + else { + var_f31 = 0.0f; + } + if (arg3 != NULL) { + arg3->x = arg0[0].x + (var_f31 * arg0[1].x); + arg3->y = arg0[0].y + (var_f31 * arg0[1].y); + arg3->z = arg0[0].z + (var_f31 * arg0[1].z); + } + if (arg1 != NULL) { + *arg1 = var_f31; + } +} + +typedef struct Vec3d { + double x; + double y; + double z; +} Vec3d; + +void fn_1_17048(Vec *arg0, float *arg1, Vec *arg2, Vec *arg3) +{ + Vec3d sp38; + Vec3d sp20; + Vec3d sp8; + double var_f31; + double var_f30; + double var_f29; + + sp20.x = 0.0; + sp20.y = 0.0; + sp20.z = 0.0; + sp38.x = arg0[1].x; + sp38.y = arg0[1].y; + sp38.z = arg0[1].z; + sp8.x = arg2->x - arg0->x; + sp8.y = arg2->y - arg0->y; + sp8.z = arg2->z - arg0->z; + + var_f30 = (sp38.z * arg0[1].z) + ((sp38.x * arg0[1].x) + (sp38.y * arg0[1].y)); + var_f29 = (-sp20.z * sp38.z) + (sp8.z * sp38.z) + ((-sp20.x * sp38.x) + (sp8.x * sp38.x) + ((-sp20.y * sp38.y) + (sp8.y * sp38.y))); + if (0.0 != var_f30) { + var_f31 = var_f29 / var_f30; + } + else { + var_f31 = 0.0; + } + if (arg3 != NULL) { + arg3->x = arg0->x + (float)(sp20.x + (var_f31 * sp38.x)); + arg3->y = arg0->y + (float)(sp20.y + (var_f31 * sp38.y)); + arg3->z = arg0->z + (float)(sp20.z + (var_f31 * sp38.z)); + } + if (arg1 != NULL) { + *arg1 = var_f31; + } +} + +void fn_1_17238(void) { } + +void fn_1_1723C(Mtx arg0, Vec *arg1) +{ + Vec sp8; + + sp8.x = (arg0[0][2] * arg1->z) + ((arg0[0][0] * arg1->x) + (arg0[0][1] * arg1->y)); + sp8.y = (arg0[1][2] * arg1->z) + ((arg0[1][0] * arg1->x) + (arg0[1][1] * arg1->y)); + sp8.z = (arg0[2][2] * arg1->z) + ((arg0[2][0] * arg1->x) + (arg0[2][1] * arg1->y)); + *arg1 = sp8; +} + +void fn_1_172F0(s32 arg0, float arg8) +{ + HsfMaterial *var_r31; + s32 var_r30; + HsfData *var_r29; + s32 var_r28; + ModelData *var_r27; + s32 var_r26; + + var_r27 = &Hu3DData[arg0]; + var_r29 = var_r27->hsfData; + var_r31 = var_r29->material; + var_r26 = var_r29->materialCnt; + for (var_r28 = 0; var_r28 < var_r26; var_r28++, var_r31++) { + var_r31->vtxMode = 1; + var_r30 = var_r31->litColor[0] * arg8; + if (var_r30 > 0xFF) { + var_r30 = 0xFF; + } + var_r31->litColor[0] = var_r30; + var_r30 = var_r31->litColor[1] * arg8; + if (var_r30 > 0xFF) { + var_r30 = 0xFF; + } + var_r31->litColor[1] = var_r30; + var_r30 = var_r31->litColor[2] * arg8; + if (var_r30 > 0xFF) { + var_r30 = 0xFF; + } + var_r31->litColor[2] = var_r30; + } +} + +s32 fn_1_17430(s32 arg0, s32 arg1, s32 arg2) +{ + s32 var_r31; + ModelData *var_r30; + ModelData *var_r29; + + var_r29 = &Hu3DData[arg0]; + var_r30 = &Hu3DData[arg2]; + for (var_r31 = 0; var_r31 < 8; var_r31++) { + if (var_r30->unk_38[var_r31] == -1) { + break; + } + } + if (var_r31 == 8) { + return -1; + } + var_r30->unk_38[var_r31] = var_r29->unk_38[arg1]; + var_r30->attr |= 0x1000; + return var_r31; +} From 6484845b183ec8295eb062aab0030e8f905fecb5 Mon Sep 17 00:00:00 2001 From: dbalatoni13 Date: Sun, 2 Feb 2025 18:46:26 +0100 Subject: [PATCH 147/178] m427Dll/player.c cleanup --- src/REL/m427Dll/player.c | 34 ++++++++++++++-------------------- 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/src/REL/m427Dll/player.c b/src/REL/m427Dll/player.c index 228f59f2..b27e5584 100644 --- a/src/REL/m427Dll/player.c +++ b/src/REL/m427Dll/player.c @@ -100,14 +100,8 @@ typedef struct M427DllBss590Struct { /* 0x08 */ s32 unk_08; /* 0x0C */ float unk_0C; /* 0x10 */ float unk_10; - /* 0x14 */ Vec unk_14; - /* 0x20 */ float unk_20; - /* 0x24 */ float unk_24; - /* 0x28 */ float unk_28; - /* 0x2C */ Vec unk_2C; - /* 0x38 */ float unk_38; - /* 0x3C */ float unk_3C; - /* 0x40 */ float unk_40; + /* 0x14 */ Vec unk_14[2]; + /* 0x2C */ Vec unk_2C[2]; /* 0x44 */ Vec unk_44; /* 0x50 */ float unk_50; /* 0x54 */ float unk_54; @@ -1551,14 +1545,14 @@ void fn_1_12B08(void) } if (var_r31->unk_04 < 0) { var_r31->unk_6C = 0.0f; - sp20.x = lbl_1_bss_58C[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_20; - sp20.y = lbl_1_bss_58C[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_24; - sp20.z = lbl_1_bss_58C[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_28; - fn_1_16E3C(&lbl_1_data_260[var_r30], &sp20, &var_r31->unk_14, 0); - sp20.x = lbl_1_bss_588[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_38; - sp20.y = lbl_1_bss_588[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_3C; - sp20.z = lbl_1_bss_588[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_40; - fn_1_16E3C(&lbl_1_data_3BC[var_r30], &sp20, &var_r31->unk_2C, 0); + sp20.x = lbl_1_bss_58C[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_14[1].x; + sp20.y = lbl_1_bss_58C[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_14[1].y; + sp20.z = lbl_1_bss_58C[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_14[1].z; + fn_1_16E3C(&lbl_1_data_260[var_r30], &sp20, &var_r31->unk_14[0], 0); + sp20.x = lbl_1_bss_588[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_2C[1].x; + sp20.y = lbl_1_bss_588[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_2C[1].y; + sp20.z = lbl_1_bss_588[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_2C[1].z; + fn_1_16E3C(&lbl_1_data_3BC[var_r30], &sp20, &var_r31->unk_2C[0], 0); sp20.x = lbl_1_bss_584[var_r30].x + lbl_1_bss_590[var_r30 - 1].unk_50; sp20.y = lbl_1_bss_584[var_r30].y + lbl_1_bss_590[var_r30 - 1].unk_54; sp20.z = lbl_1_bss_584[var_r30].z + lbl_1_bss_590[var_r30 - 1].unk_58; @@ -1569,8 +1563,8 @@ void fn_1_12B08(void) sp20.y = lbl_1_bss_584[var_r30 + 1].y - lbl_1_bss_584[var_r30].y; sp20.z = lbl_1_bss_584[var_r30 + 1].z - lbl_1_bss_584[var_r30].z; var_r31->unk_6C = sqrtf((sp20.z * sp20.z) + ((sp20.x * sp20.x) + (sp20.y * sp20.y))); - fn_1_16E3C(&lbl_1_bss_58C[var_r30], &lbl_1_bss_58C[var_r31->unk_04], &var_r31->unk_14, 0); - fn_1_16E3C(&lbl_1_bss_588[var_r30], &lbl_1_bss_588[var_r31->unk_04], &var_r31->unk_2C, 0); + fn_1_16E3C(&lbl_1_bss_58C[var_r30], &lbl_1_bss_58C[var_r31->unk_04], &var_r31->unk_14[0], 0); + fn_1_16E3C(&lbl_1_bss_588[var_r30], &lbl_1_bss_588[var_r31->unk_04], &var_r31->unk_2C[0], 0); fn_1_16E3C(&lbl_1_bss_584[var_r30], &lbl_1_bss_584[var_r31->unk_04], &var_r31->unk_44, 0); } sp20.x = lbl_1_bss_58C[var_r30].x - lbl_1_bss_584[var_r30].x; @@ -1946,7 +1940,7 @@ s32 fn_1_15AF0(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4) var_f31 = var_r30->unk_5C + (sp8 * (var_r30->unk_64 - var_r30->unk_5C)); if (var_f29 > var_f31) { sp30 = *arg2; - fn_1_17048(&var_r30->unk_14, NULL, &sp30, &sp24); + fn_1_17048(var_r30->unk_14, NULL, &sp30, &sp24); arg3->x = sp24.x; arg3->y = sp24.y; arg3->z = sp24.z; @@ -1960,7 +1954,7 @@ s32 fn_1_15AF0(s32 arg0, Vec *arg1, Vec *arg2, Vec *arg3, Vec *arg4) var_f31 = var_r30->unk_60 + (sp8 * (var_r30->unk_68 - var_r30->unk_60)); if (var_f29 > var_f31) { sp30 = *arg2; - fn_1_17048(&var_r30->unk_2C, NULL, &sp30, &sp18); + fn_1_17048(var_r30->unk_2C, NULL, &sp30, &sp18); arg3->x = sp18.x; arg3->y = sp18.y; arg3->z = sp18.z; From a144a790f1b32eda6a2a8c28ced32cd2906a0303 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sun, 2 Feb 2025 20:44:39 -0500 Subject: [PATCH 148/178] map progress --- .vscode/settings.json | 4 +- include/REL/m427Dll.h | 1 + src/REL/m427Dll/map.c | 890 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 894 insertions(+), 1 deletion(-) create mode 100644 src/REL/m427Dll/map.c diff --git a/.vscode/settings.json b/.vscode/settings.json index 3322a6d7..77816237 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -60,7 +60,9 @@ "float.h": "c", "corecrt_math_defines.h": "c", "math_ppc.h": "c", - "errno.h": "c" + "errno.h": "c", + "m427dll.h": "c", + "sprite.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/include/REL/m427Dll.h b/include/REL/m427Dll.h index fe879974..cef5b491 100644 --- a/include/REL/m427Dll.h +++ b/include/REL/m427Dll.h @@ -5,6 +5,7 @@ void fn_1_32F4(Process*); void fn_1_3A88(void); void fn_1_E98C(Process*); void fn_1_EC54(void); +s32 fn_1_10FE8(s16, s32*); void fn_1_110E8(s32, s32*); void fn_1_111C0(s32, s32*); void fn_1_11298(f32); diff --git a/src/REL/m427Dll/map.c b/src/REL/m427Dll/map.c new file mode 100644 index 00000000..acbbb20e --- /dev/null +++ b/src/REL/m427Dll/map.c @@ -0,0 +1,890 @@ +#include "REL/m427Dll.h" + +#include "ext_math.h" +#include "game/animdata.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/sprite.h" + +#define FABS(value) ((value < 0) ? -(value) : (value)) + +typedef struct M427DllStruct { + s32 unk0; + s32 unk4; +} M427DllStruct; + +typedef struct M427DllStruct2 { + s32 unk0[3]; + s32 unkC; + s32 unk10; + s32 unk14[7]; + s32 unk30[7]; + HsfVector2f unk4C[7]; + f32 unk84; + f32 unk88; + s32 unk8C; + f32 unk90; + f32 unk94; + f32 unk98; + s32 unk9C; + s32 unkA0; +} M427DllStruct2; // sizeof 0xA4 + +typedef struct M427DllStruct3 { + Vec rot; + Vec cen; + f32 zoom; +} M427DllStruct3; + +typedef struct M427DllMapStruct { + char unk_0[0x2]; + s16 unk2; + s16 unk4; + char unk_6[0x2]; + AnimData* unk8; + char unk_C[0x74]; + void* unk80; + char unk_84[0x14]; +} M427DllMapStruct; // sizeof 0x98 + +typedef struct M427DllMapStruct2 { + s8 unk0; + s16 unk2; + s16 unk4; +} M427DllMapStruct2; + +typedef struct M427DllMapSubstruct { + s16 unk0; + Vec unk4; +} M427DllMapSubstruct; // sizeof 0x10 + +typedef struct M427DllMapSubstruct2 { + s16 unk0; + Vec unk4; + s16 unk10; + s16 unk12; + s16 unk14[4]; +} M427DllMapSubstruct2; // sizeof 0x1C + +typedef struct M427DllMapSubstruct4 { + char unk[0x28]; + AnimData* unk28; +} M427DllMapSubstruct4; + +typedef struct M427DllMapSubstruct7 { + s16 unk0; + s32 unk4; + void* unk8; +} M427DllMapSubstruct7; + +typedef struct M427DllMapUNKBA { + s16 unk0; + char unk[0x2E]; +} M427DllMapUNKBA; + +typedef struct M427DllMapUNK180 { + s16 unk0; + s16 unk2; +} M427DllMapUNK180; + +typedef struct M427DllMapSubstruct3 { + s16 unk0; + s16 unk2[11]; + s16 unk18; + s16 unk1A; + s16 unk1C; + s16 unk1E; + s16 unk20; + char unk_22[0x3A]; + s16 unk5C; + char unk_5E[0x1A]; + Vec unk78; + Vec unk84; + f32 unk90; + char unk_94[0x4]; + void* unk98; + M427DllMapSubstruct7* unk9C; + char unk_A0[0xC]; + M427DllMapSubstruct4* unkAC; + char unk_B0[0xA]; + M427DllMapUNKBA unkBA[2][2]; + char unk_17A[0x6]; + M427DllMapUNK180 unk180[2][2]; + char unk_190[0x8]; +} M427DllMapSubstruct3; // sizeof 0x198 + +typedef struct M427DllMapStruct3 { + u8 unk0; + M427DllMapSubstruct3 unk4[2]; + AnimData* unk334; + AnimData* unk338; + char unk_33C[0x10]; + M427DllMapSubstruct2 unk34C[3]; + M427DllMapSubstruct unk3A0[5]; +} M427DllMapStruct3; // sizeof 0x3F0 + +typedef struct M427DllMapSubstruct5 { + s16 unk0; + s16 unk2; + s16 unk4; + s16 unk6; + Vec unk8; + char unk[0x8]; +} M427DllMapSubstruct5; + +typedef struct M427DllMapStruct4 { + s16 unk0; + Vec* unk4; + Vec2f* unk8; + Vec* unkC; + GXColor* unk10; + s16 unk14; + s16 unk16; + s16 unk18; + M427DllMapSubstruct5* unk1C; + void* unk20; + u32 unk24; + void* unk28; + u32 unk2C; + void* unk30; + u32 unk34; + f32 unk38; + f32 unk3C; + f32 unk40; + f32 unk44; + s16 unk48[1]; + s16 unk4A; +} M427DllMapStruct4; + +typedef struct M427DllMapStruct5 { + f32 unk0; + f32 unk4; + f32 unk8; + f32 unkC; + f32 unk10; +} M427DllMapStruct5; // sizeof 0x14 + +omObjData* lbl_1_bss_548; +M427DllMapStruct3 lbl_1_bss_158; +M427DllMapStruct2 lbl_1_bss_F8[0x10]; +M427DllMapStruct* lbl_1_bss_F0; +s16 lbl_1_bss_EC[2]; +s16 lbl_1_bss_E8[2]; +M427DllMapStruct5* lbl_1_bss_E4; +M427DllMapStruct4 lbl_1_bss_98; +f32 lbl_1_bss_94; + +void fn_1_372C(void); +void fn_1_4218(omObjData*); +void fn_1_44F4(f32, f32, f32, f32, f32); +void fn_1_48EC(ModelData*, Mtx); +void fn_1_4D7C(ModelData*, Mtx); +void fn_1_50A0(ModelData*, Mtx); +void fn_1_510C(s32, s16, s16); +void fn_1_558C(M427DllMapStruct4*); +void fn_1_618C(ModelData*, Mtx); +void fn_1_6760(omObjData*); +void fn_1_C2C8(Vec*, Vec*, Vec*, void*); +void fn_1_D22C(void); +s16 fn_1_D63C(AnimData*, s32, f32, s32, s32); +void fn_1_DB80(s16); +void fn_1_DC64(s16, void (*)(void)); +void fn_1_DC9C(s16, s32); + + +void fn_1_32F4(Process* arg0) { + s16 var_r31; + AnimData* temp_r30; + s32 var_r29; + s32 var_r28; + + lbl_1_bss_158.unk0 = 0; + lbl_1_bss_548 = omAddObjEx(arg0, 0x7F, 0, 0, -1, fn_1_6760); + lbl_1_bss_F0 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x10 * sizeof(M427DllMapStruct), 0x10000000); + + for (var_r31 = 0; var_r31 < 0x10; var_r31++) { + lbl_1_bss_F0[var_r31].unk2 = -1; + } + temp_r30 = HuSprAnimRead(HuDataReadNum(0x3A0017, MEMORY_DEFAULT_NUM)); + for (var_r31 = 0; var_r31 < 2; var_r31++) { + lbl_1_bss_EC[var_r31] = fn_1_D63C(temp_r30, 0x200, 80.0f, 0x40, 0x40); + fn_1_DC64(lbl_1_bss_EC[var_r31], &fn_1_D22C); + fn_1_DC9C(lbl_1_bss_EC[var_r31], 1); + Hu3DModelLayerSet(lbl_1_bss_EC[var_r31], 7); + if (var_r31 == 0) { + var_r29 = 1; + } else { + var_r29 = 2; + } + Hu3DModelCameraSet(lbl_1_bss_EC[var_r31], var_r29); + } + temp_r30 = HuSprAnimRead(HuDataReadNum(0x3A001A, MEMORY_DEFAULT_NUM)); + for (var_r31 = 0; var_r31 < 2; var_r31++) { + lbl_1_bss_E8[var_r31] = fn_1_D63C(temp_r30, 4, 120.0f, 0, 0); + fn_1_DC9C(lbl_1_bss_E8[var_r31], 1); + Hu3DModelLayerSet(lbl_1_bss_E8[var_r31], 7); + if (var_r31 == 0) { + var_r28 = 1; + } else { + var_r28 = 2; + } + Hu3DModelCameraSet(lbl_1_bss_E8[var_r31], var_r28); + } + fn_1_372C(); + + for (var_r31 = 0; var_r31 < 0x10; var_r31++) { + lbl_1_bss_F8[var_r31].unk0 = -1; + lbl_1_bss_F8[var_r31].unk2 = Hu3DModelCreateFile(0x3A0012); + Hu3DModelAttrSet(lbl_1_bss_F8[var_r31].unk2, 1); + Hu3DModelScaleSet(lbl_1_bss_F8[var_r31].unk2, 0.75f, 0.75f, 0.75f); + Hu3DModelLayerSet(lbl_1_bss_F8[var_r31].unk2, 4); + Hu3DMotionSpeedSet(lbl_1_bss_F8[var_r31].unk2, 2.0f); + lbl_1_bss_F8[var_r31].unk4 = Hu3DAnimCreate(HuDataReadNum(0x3A001B, MEMORY_DEFAULT_NUM), lbl_1_bss_F8[var_r31].unk2, "db91"); + Hu3DAnimSpeedSet(lbl_1_bss_F8[var_r31].unk4, 2.0f); + } +} + +void fn_1_372C(void) { + M427DllMapSubstruct* var_r29 = &lbl_1_bss_158.unk3A0[0]; + M427DllMapSubstruct2* var_r30 = &lbl_1_bss_158.unk34C[0]; + s16 sp1A[5] = { 0, 0, 1, 1, 0 }; + Vec sp60[5] = { + { -700.0f, -150.0f, -7000.0f }, + { 0.0f, -300.0f, -12000.0f }, + { 800.0f, -350.0f, -12700.0f }, + { 600.0f, -350.0f, -13700.0f }, + { 825.0f, -450.0f, -15000.0f } + }; + s16 sp8[3] = { 1, 1, 0 }; + s16 spE[3][2] = { { 4, 5 }, { 8, -1 }, { 9, -1 } }; + s16 sp24[3][4] = { + { 180, 120, 60, 60 }, + { 90, 180, 60, 60 }, + { 90, 180, 60, 60 } + }; + Vec sp3C[3] = { + -350.0f, -300.0f, -10000.0f, + -700.0f, -600.0f, -17000.0f, + 700.0f, -600.0f, -19000.0f + }; + s16 var_r28; + s16 var_r31; + + for (var_r31 = 0; var_r31 < 5; var_r31++, var_r29++) { + var_r29->unk0 = sp1A[var_r31]; + var_r29->unk4.x = sp60[var_r31].x; + var_r29->unk4.y = sp60[var_r31].y; + var_r29->unk4.z = sp60[var_r31].z; + } + + for (var_r31 = 0; var_r31 < 3; var_r31++, var_r30++) { + var_r30->unk0 = sp8[var_r31]; + var_r30->unk4.x = sp3C[var_r31].x; + var_r30->unk4.y = sp3C[var_r31].y; + var_r30->unk4.z = sp3C[var_r31].z; + var_r30->unk10 = spE[var_r31][0]; + var_r30->unk12 = spE[var_r31][1]; + for (var_r28 = 0; var_r28 < 4; var_r28++) { + var_r30->unk14[var_r28] = sp24[var_r31][var_r28]; + } + } +} + +void fn_1_3A88(void) { + M427DllMapStruct* sp8; + s16 var_r30; + M427DllMapSubstruct3* var_r31; + + sp8 = lbl_1_bss_F0; + HuSprAnimKill(lbl_1_bss_158.unk334); + HuSprAnimKill(lbl_1_bss_158.unk338); + + for (var_r30 = 0, var_r31 = &lbl_1_bss_158.unk4[0]; var_r30 < 2; var_r30++, var_r31++) { + if (var_r31->unk98) { + HuMemDirectFree(var_r31->unk98); + } + } +} + +void fn_1_3B20(s8 arg0, s16 arg1) { + M427DllMapStruct2* var_r31 = &lbl_1_bss_F8[0]; + M427DllMapSubstruct3* temp_r30 = &lbl_1_bss_158.unk4[arg1]; + Vec sp54[4] = { + { 110.0f, -20.0f, 0.0f }, + { -110.0f, -20.0f, 0.0f }, + { 110.0f, -20.0f, 190.0f }, + { -110.0f, -20.0f, 190.0f } + }; + Mtx sp24; + f32 sp14[4] = { 135.0f, 225.0f, 45.0f, 315.0f }; + Point3d sp8; + f32 temp_f31; + s16 var_r29; + s32 var_r27; + + for (var_r29 = 0; var_r29 < 0x10; var_r29++, var_r31++) { + if (var_r31->unk0 == -1) break; + } + if (var_r29 != 0x10) { + var_r31->unk0 = arg0; + temp_f31 = temp_r30->unk90; + PSMTXRotRad(sp24, 0x59, MTXDegToRad(temp_f31)); + PSMTXMultVec(sp24, &sp54[arg0], &sp8); + sp8.x += temp_r30->unk84.x; + sp8.y += temp_r30->unk84.y; + sp8.z += temp_r30->unk84.z; + Hu3DModelAttrReset(var_r31->unk2, 1); + if (arg1 == 0) { + var_r27 = 1; + } else { + var_r27 = 2; + } + Hu3DModelCameraSet(var_r31->unk2, var_r27); + Hu3DModelPosSet(var_r31->unk2, sp8.x, sp8.y, sp8.z); + Hu3DModelRotSet(var_r31->unk2, 0.0f, temp_f31 + sp14[arg0], 0.0f); + Hu3DMotionTimeSet(var_r31->unk2, 0.0f); + if (arg0 < 2) { + Hu3DModelAmbSet(var_r31->unk2, 1.0f, 1.0f, 1.0f); + } else { + Hu3DModelAmbSet(var_r31->unk2, 0.5f, 0.5f, 0.5f); + } + Hu3DAnimBankSet(var_r31->unk4, 0); + } +} + +void fn_1_3DBC(void) { + M427DllMapStruct2* var_r31; + s16 var_r30; + f32 temp_f31; + + var_r31 = &lbl_1_bss_F8[0]; + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (var_r31->unk0 != -1) { + temp_f31 = Hu3DMotionMaxTimeGet(var_r31->unk2); + if (Hu3DMotionTimeGet(var_r31->unk2) >= temp_f31) { + var_r31->unk0 = -1; + Hu3DModelAttrSet(var_r31->unk2, 1U); + } + } + } +} + +void fn_1_3E58(omObjData* arg0) { + s32 sp8[8]; + M427DllMapStruct* var_r26; + M427DllMapSubstruct3* var_r31; + ModelData* temp_r25; + s16 var_r30; + M427DllMapStruct4* var_r29; + s16 var_r28; + s16 var_r27; + + var_r29 = &lbl_1_bss_98; + for (var_r28 = 0, var_r31 = lbl_1_bss_158.unk4; var_r28 < 2; var_r28++, var_r31++) { + var_r27 = fn_1_10FE8(var_r31->unk0, &sp8[0]); + + for (var_r30 = 0; var_r30 < var_r27; var_r30++) { + temp_r25 = &Hu3DData[sp8[var_r30]]; + temp_r25->unk_38[4] = temp_r25->unk_38[5] = temp_r25->unk_38[6] = temp_r25->unk_38[7] = -1; + } + + for (var_r30 = 0; var_r30 < 2; var_r30++) { + for (var_r27 = 0; var_r27 < 2; var_r27++) { + Hu3DModelKill(var_r31->unk180[var_r30][var_r27].unk0); + } + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + for (var_r27 = 0; var_r27 < 2; var_r27++) { + Hu3DModelKill(var_r31->unkBA[var_r30][var_r27].unk0); + } + } + HuSprAnimKill(var_r31->unkAC->unk28); + Hu3DModelKill(var_r31->unk1A); + Hu3DModelKill(var_r31->unk1C); + HuMemDirectFree(var_r31->unk98); + var_r31->unk98 = NULL; + fn_1_DB80(lbl_1_bss_EC[var_r28]); + fn_1_DB80(lbl_1_bss_E8[var_r28]); + + for (var_r30 = 0; var_r30 < 11; var_r30++) { + Hu3DModelKill(var_r31->unk2[var_r30]); + } + Hu3DModelKill(var_r31->unk1E); + Hu3DModelKill(var_r31->unk20); + } + for (var_r28 = 0, var_r26 = lbl_1_bss_F0; var_r28 < 0x10; var_r28++, var_r26++) { + if (var_r26->unk2 != -1) { + Hu3DModelKill(var_r26->unk4); + HuSprAnimKill(var_r26->unk8); + HuMemDirectFree(var_r26->unk80); + } + } + HuMemDirectFree(lbl_1_bss_F0); + Hu3DFogClear(); + var_r30 = Hu3DModelCreateFile(0x3A0011); + Hu3DModelCameraSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 1); + Hu3DModelPosSet(var_r30, 0.0f, 0.0f, 0.0f); + var_r29->unk0 = Hu3DModelCreateFile(0x3A0010); + Hu3DModelCameraSet(var_r29->unk0, 1); + Hu3DModelLayerSet(var_r29->unk0, 3); + Hu3DModelPosSet(var_r29->unk0, 0.0f, 0.0f, 0.0f); + lbl_1_bss_158.unk0 = 1; + var_r29->unk48[0] = 0; + var_r29->unk4A = 0; + var_r29->unk4 = 0; + lbl_1_bss_E4 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x10 * sizeof(M427DllMapStruct5), MEMORY_DEFAULT_NUM); + for (var_r28 = 0; var_r28 < 0x10; var_r28++) { + lbl_1_bss_E4[var_r28].unk10 = -1.0f; + } + fn_1_510C(0, 0x32, 0x32); + arg0->func = fn_1_4218; +} + +void fn_1_4218(omObjData* arg0) { + f32 var_f31; + f32 temp_f30; + f32 var_f29; + M427DllMapStruct5* var_r31; + s16 var_r30; + M427DllMapStruct4* var_r29; + s32 temp_r28; + + var_r29 = &lbl_1_bss_98; + var_r31 = &lbl_1_bss_E4[0]; + for (var_r30 = 0; var_r30 < 1; var_r30++) { + if (--var_r29->unk48[var_r30] < 0.0f) { + var_r29->unk48[var_r30] = (f32)((((rand8() << 8) | rand8()) % 241) + 0x78); + var_f31 = ((((rand8() << 8) | rand8()) % 4001) - 0x7D0); + temp_f30 = -3000.0f; + var_f29 = ((((rand8() << 8) | rand8()) % 21) + 0xA); + fn_1_44F4(var_f31, 0.0f, temp_f30, var_f29, 0.0f); + } + } + + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (-1.0f != var_r31->unk10) { + var_r31->unkC += 20.0f; + var_r31->unk10 -= 0.2f; + if (var_r31->unk10 < 0.0f) { + var_r31->unk10 = -1.0f; + } + } + } +} + +void fn_1_44F4(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { + M427DllMapStruct5* var_r31; + s16 var_r30; + + var_r31 = &lbl_1_bss_E4[0]; + + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (-1.0f == var_r31->unk10) break; + } + if (var_r30 != 0x10) { + var_r31->unk0 = arg0; + var_r31->unk4 = arg1; + var_r31->unk8 = arg2; + var_r31->unkC = arg4; + var_r31->unk10 = arg3; + } +} + +f32 lbl_1_data_F4 = 450.0f; + +f32 fn_1_4570(Vec* arg0) { + f32 temp_f31; + f32 temp_f30; + f32 var_f28; + f32 var_f27; + f32 var_f23; + M427DllMapStruct5* var_r31; + s16 var_r30; + + var_r31 = &lbl_1_bss_E4[0]; + var_f27 = 0.0f; + + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (-1.0f != var_r31->unk10) { + temp_f31 = arg0->x - var_r31->unk0; + temp_f30 = arg0->z - var_r31->unk8; + if (FABS(temp_f31) > (var_r31->unkC + lbl_1_data_F4)) { + if (FABS(temp_f30) > (var_r31->unkC + lbl_1_data_F4)) { + continue; + } + } + var_f28 = sqrtf((temp_f31 * temp_f31) + (temp_f30 * temp_f30)); + var_f23 = FABS(var_f28 - var_r31->unkC); + var_f28 = 1.0f - (var_f23 / lbl_1_data_F4); + if (var_f28 < 0.0f) { + var_f28 = 0.0f; + } + var_f27 += var_r31->unk10 * sind(90.0f * var_f28); + } + } + return var_f27; +} + +void fn_1_48EC(ModelData* arg0, Mtx arg1) { + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; + Vec spC; + f32 sp8; + f32 temp_f29; + f32 temp_f30; + f32 temp_f31; + + sp3C.x = CenterM->x; + sp3C.y = CenterM->y; + sp3C.z = CenterM->z; + sp30.x = CRotM->x; + sp30.y = CRotM->y; + sp30.z = CRotM->z; + temp_f29 = *CZoomM; + CenterM->x = -CenterM->x; + CenterM->y = -CenterM->y; + CenterM->z = CenterM->z; + CRotM->x = 180.0f + CRotM->x; + CRotM->y = 180.0f + -CRotM->y; + CRotM->z = CRotM->z; + *CZoomM = *CZoomM; + temp_f31 = CRotM->x; + temp_f30 = CRotM->y; + sp8 = CRotM->z; + sp24.x = (CenterM->x + (*CZoomM * (sind(temp_f30) * cosd(temp_f31)))); + sp24.y = (CenterM->y + (*CZoomM * -sind(temp_f31))); + sp24.z = (CenterM->z + (*CZoomM * (cosd(temp_f30) * cosd(temp_f31)))); + spC.x = CenterM->x; + spC.y = CenterM->y; + spC.z = CenterM->z; + sp18.x = (sind(temp_f30) * sind(temp_f31)); + sp18.y = cosd(temp_f31); + sp18.z = (cosd(temp_f30) * sind(temp_f31)); + Hu3DCameraPosSetV(1, &sp24, &sp18, &spC); + CenterM->x = sp3C.x; + CenterM->y = sp3C.y; + CenterM->z = sp3C.z; + CRotM->x = sp30.x; + CRotM->y = sp30.y; + CRotM->z = sp30.z; + *CZoomM = temp_f29; +} + +void fn_1_4D7C(ModelData* arg0, Mtx arg1) { + Vec sp24; + Vec sp18; + Vec spC; + f32 sp8; + f32 temp_f30; + f32 temp_f31; + + temp_f31 = CRotM->x; + temp_f30 = CRotM->y; + sp8 = CRotM->z; + sp24.x = CenterM->x + sind(temp_f30) * cosd(temp_f31) * *CZoomM; + sp24.y = CenterM->y + *CZoomM * -sind(temp_f31); + sp24.z = CenterM->z + cosd(temp_f30) * cosd(temp_f31) * *CZoomM; + sp18.x = CenterM->x; + sp18.y = CenterM->y; + sp18.z = CenterM->z; + spC.x = sind(temp_f30) * sind(temp_f31); + spC.y = cosd(temp_f31); + spC.z = cosd(temp_f30) * sind(temp_f31); + Hu3DCameraPosSetV(1, &sp24, &spC, &sp18); + if (lbl_1_bss_98.unk30) { + GXSetTexCopySrc(0, 0, 0x280, 0x1E0); + GXSetTexCopyDst(0x280, 0x1E0, GX_TF_RGB5A3, 0); + GXCopyTex(lbl_1_bss_98.unk30, 1); + } +} + +void fn_1_50A0(ModelData* arg0, Mtx arg1) { + if (lbl_1_bss_98.unk28) { + GXSetTexCopySrc(0, 0, 0x280, 0x1E0); + GXSetTexCopyDst(0x280, 0x1E0, GX_TF_RGB5A3, 0); + GXCopyTex(lbl_1_bss_98.unk28, 0); + } +} + +void fn_1_510C(s32 arg0, s16 arg1, s16 arg2) { + s16 sp12; + s16 sp10; + s16 spE; + s16 spC; + s16 spA; + s16 sp8; + M427DllMapStruct4* var_r31; + M427DllMapSubstruct5* var_r30; + s16 var_r29; + ModelData* temp_r28; + s16 var_r27; + M427DllMapSubstruct5* var_r26; + M427DllMapSubstruct5* var_r23; + + var_r31 = &lbl_1_bss_98; + var_r29 = Hu3DHookFuncCreate(fn_1_618C); + Hu3DModelCameraSet(var_r29, 1); + Hu3DModelLayerSet(var_r29, 5); + temp_r28 = &Hu3DData[var_r29]; + var_r29 = Hu3DHookFuncCreate(fn_1_48EC); + Hu3DModelCameraSet(var_r29, 1); + Hu3DModelLayerSet(var_r29, 0); + var_r29 = Hu3DHookFuncCreate(fn_1_4D7C); + Hu3DModelCameraSet(var_r29, 1); + Hu3DModelLayerSet(var_r29, 2); + var_r29 = Hu3DHookFuncCreate(fn_1_50A0); + Hu3DModelCameraSet(var_r29, 1); + Hu3DModelLayerSet(var_r29, 4); + var_r31->unk38 = var_r31->unk3C = 0.0f; + var_r31->unk34 = GXGetTexBufferSize(0x280, 0x1E0, 5, 0, 0); + var_r31->unk30 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk34, temp_r28->unk_48); + var_r31->unk2C = GXGetTexBufferSize(0x280, 0x1E0, 5, 0, 0); + var_r31->unk28 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk2C, temp_r28->unk_48); + var_r31->unk16 = arg1 + 1; + var_r31->unk18 = arg2 + 1; + var_r31->unk14 = var_r31->unk16 * var_r31->unk18; + var_r31->unk4 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk14 * sizeof(Vec), temp_r28->unk_48); + var_r31->unk8 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk14 * sizeof(Vec2f), temp_r28->unk_48); + var_r31->unkC = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk14 * sizeof(Vec), temp_r28->unk_48); + var_r31->unk10 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk14 * sizeof(Vec), temp_r28->unk_48); + var_r31->unk1C = HuMemDirectMallocNum(HEAP_DATA, arg2 * (arg1 * sizeof(M427DllMapSubstruct5)), temp_r28->unk_48); + var_r30 = var_r31->unk1C; + var_r23 = var_r26 = HuMemDirectMallocNum(HEAP_DATA, 0x20000, temp_r28->unk_48); + DCFlushRange(var_r26, 0x20000); + GXBeginDisplayList(var_r23, 0x20000); + GXBegin(GX_QUADS, GX_VTXFMT0, (arg1 * arg2 * 4)); + + for (var_r29 = 0; var_r29 < arg2; var_r29++) { + for (var_r27 = 0; var_r27 < arg1; var_r30++, var_r27++) { + var_r30->unk0 = var_r27 + var_r29 * var_r31->unk16; + var_r30->unk2 = (var_r29 * var_r31->unk16) + var_r27 + 1; + var_r30->unk4 = ((var_r29 + 1) * var_r31->unk16) + var_r27 + 1; + var_r30->unk6 = var_r27 + ((var_r29 + 1) * var_r31->unk16); + GXPosition1x16(var_r30->unk0); + GXPosition1x16(var_r30->unk0); + GXPosition1x16(var_r30->unk0); + GXPosition1x16(var_r30->unk2); + GXPosition1x16(var_r30->unk2); + GXPosition1x16(var_r30->unk2); + GXPosition1x16(var_r30->unk4); + GXPosition1x16(var_r30->unk4); + GXPosition1x16(var_r30->unk4); + GXPosition1x16(var_r30->unk6); + GXPosition1x16(var_r30->unk6); + GXPosition1x16(var_r30->unk6); + fn_1_C2C8(&var_r31->unk4[var_r30->unk0], &var_r31->unk4[var_r30->unk2], &var_r31->unk4[var_r30->unk4], &var_r30->unk8); + } + } + var_r31->unk24 = GXEndDisplayList(); + var_r31->unk20 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk24, temp_r28->unk_48); + memcpy(var_r31->unk20, var_r26, var_r31->unk24); + DCFlushRange(var_r31->unk20, var_r31->unk24); + HuMemDirectFree(var_r26); + fn_1_558C(var_r31); +} + +f32 lbl_1_data_F8 = -1.0f; + +void fn_1_558C(M427DllMapStruct4* arg0) { + Mtx spAC; + Mtx sp7C; + Mtx sp4C; + Vec2f sp44; + Vec2f sp3C; + Vec2f sp34; + Vec2f sp2C; + f32 sp28; + f32 sp24; + f32 sp20; + f32 var_f26; + f32 var_f25; + f32 var_f20; + M427DllMapSubstruct5* var_r30; + Vec* var_r29; + Vec* var_r28; + s16 var_r27; + M427DllMapStruct5* var_r26; + Vec2f* var_r25; + s16 var_r24; + CameraData* var_r23; + s16 var_r22; + + var_r23 = &Hu3DCamera[0]; + if (lbl_1_data_F8 == -1.0f) { + lbl_1_bss_94 = 720.0f / arg0->unk16; + lbl_1_data_F8 = 1440.0f / arg0->unk18; + } + if (omPauseChk() == 0) { + arg0->unk40 += 1.0f; + arg0->unk44 += 1.5f; + } + if (arg0->unk40 >= 360.0f) { + arg0->unk40 -= 360.0f; + } + if (arg0->unk44 >= 360.0f) { + arg0->unk44 -= 360.0f; + } + var_r28 = arg0->unk4; + var_r29 = arg0->unkC; + sp3C.x = 2000.0f; + sp3C.y = -2000.0f; + sp44.x = 1000.0f; + sp44.y = -2500.0f; + sp2C.x = sp44.x; + sp2C.y = (sp44.y - sp44.x) / (arg0->unk18 - 1); + var_f25 = arg0->unk44; + + for (var_r27 = 0; var_r27 < arg0->unk18; var_r27++) { + sp34.x = sp3C.x; + sp34.y = (sp3C.y - sp3C.x) / (arg0->unk16 - 1); + var_f26 = arg0->unk40; + + for (var_r24 = 0; var_r24 < arg0->unk16; var_r28++, var_r29++, var_r24++) { + var_r28->x = sp34.x; + var_r28->z = sp2C.x; + sp24 = 5.0 * sind(var_f26) + 10.0 * sind(var_f25); + sp34.x += sp34.y; + var_f26 += lbl_1_bss_94; + if (var_f26 >= 360.0f) { + var_f26 -= 360.0f; + } + var_r28->y = sp24 + fn_1_4570(var_r28); + var_r29->x = var_r29->y = var_r29->z = 0.0f; + } + sp2C.x += sp2C.y; + var_f25 += lbl_1_data_F8; + if (var_f25 >= 360.0f) { + var_f25 -= 360.0f; + } + } + var_r30 = arg0->unk1C; + var_r24 = (arg0->unk16 - 1) * (arg0->unk18 - 1); + + for (var_r27 = 0; var_r27 < var_r24; var_r27++, var_r30++) { + fn_1_C2C8(&arg0->unk4[var_r30->unk0], &arg0->unk4[var_r30->unk2], &arg0->unk4[var_r30->unk4], &var_r30->unk8); + arg0->unkC[var_r30->unk0].x += var_r30->unk8.x; + arg0->unkC[var_r30->unk0].y += var_r30->unk8.y; + arg0->unkC[var_r30->unk0].z += var_r30->unk8.z; + arg0->unkC[var_r30->unk2].x += var_r30->unk8.x; + arg0->unkC[var_r30->unk2].y += var_r30->unk8.y; + arg0->unkC[var_r30->unk2].z += var_r30->unk8.z; + arg0->unkC[var_r30->unk4].x += var_r30->unk8.x; + arg0->unkC[var_r30->unk4].y += var_r30->unk8.y; + arg0->unkC[var_r30->unk4].z += var_r30->unk8.z; + arg0->unkC[var_r30->unk6].x += var_r30->unk8.x; + arg0->unkC[var_r30->unk6].y += var_r30->unk8.y; + arg0->unkC[var_r30->unk6].z += var_r30->unk8.z; + } + + var_r29 = arg0->unkC; + for (var_r27 = 0; var_r27 < arg0->unk14; var_r27++, var_r29++) { + var_f20 = sqrtf((var_r29->x * var_r29->x) + (var_r29->y * var_r29->y) + (var_r29->z * var_r29->z)); + var_r29->x /= var_f20; + var_r29->y /= var_f20; + var_r29->z /= var_f20; + } + var_r28 = arg0->unk4; + var_r25 = arg0->unk8; + C_MTXLookAt(spAC, &var_r23->pos, &var_r23->up, &var_r23->target); + GXGetProjectionv(&sp7C[0][0]); + GXGetViewportv(&sp4C[0][0]); + + for (var_r27 = 0; var_r27 < arg0->unk14; var_r27++, var_r28++, var_r25++) { + GXProject(var_r28->x, var_r28->y, var_r28->z, spAC, &sp7C[0][0], &sp4C[0][0], &sp28, &sp24, &sp20); + var_r25->x = 0.0015625f * sp28; + var_r25->y = 0.0020833f * sp24; + var_r25->x += 0.05f * arg0->unkC[var_r27].x; + var_r25->y += 0.05f * arg0->unkC[var_r27].z; + arg0->unk10[var_r27].r = 0xFF; + arg0->unk10[var_r27].g = 0xFF; + arg0->unk10[var_r27].b = 0xFF; + arg0->unk10[var_r27].a = 0xFF; + } + DCFlushRangeNoSync(arg0->unk4, arg0->unk14 * 0xC); + DCFlushRangeNoSync(arg0->unkC, arg0->unk14 * 0xC); + DCFlushRangeNoSync(arg0->unk8, arg0->unk14 * 8); + DCFlushRangeNoSync(arg0->unk10, arg0->unk14 * 4); + PPCSync(); +} + +void fn_1_618C(ModelData* arg0, Mtx arg1) { + Mtx sp64; + Mtx sp34; + GXTexObj sp14; + GXColor spC; + M427DllMapStruct4* var_r31 = &lbl_1_bss_98; + AnimData** var_r30 = &lbl_1_bss_158.unk334; + + fn_1_558C(var_r31); + GXLoadPosMtxImm(arg1, 0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_POS, var_r31->unk4, 0xC); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_TEX0, var_r31->unk8, 8); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_TEX_ST, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, var_r31->unk10, 4); + GXInitTexObj(&sp14, var_r31->unk30, 0x280, 0x1E0, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, 0); + GXInitTexObjLOD(&sp14, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, 0, 0, GX_ANISO_1); + GXLoadTexObj(&sp14, GX_TEXMAP0); + GXInitTexObj(&sp14, var_r31->unk28, 0x280, 0x1E0, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, 0); + GXInitTexObjLOD(&sp14, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, 0, 0, GX_ANISO_1); + GXLoadTexObj(&sp14, GX_TEXMAP1); + HuSprTexLoad(*var_r30, 0, 2, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetNumTevStages(3); + spC.r = 0; + spC.g = 0x10; + spC.b = 0x1E; + spC.a = 0x4C; + GXSetTevColor(GX_TEVREG2, spC); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_ONE, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG0); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG0); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_TEXC, GX_CC_C0, GX_CC_A2, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG1); + GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG1); + GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE2, GX_CC_C1, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C2); + GXSetTevColorOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE2, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetNumIndStages(1); + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP2); + GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, 1, 0, GX_ITM_0); + GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); + PSMTXScale(sp64, -0.1f, 0.0f, 1.0f); + GXSetIndTexMtx(GX_ITM_0, (f32(*)[3])(sp64), 0); + GXSetNumTexGens(2); + if (omPauseChk() == 0) { + var_r31->unk38 += 0.001f; + var_r31->unk3C += 0.0005f; + } + PSMTXRotRad(sp64, 0x58, 1.5707964f); + PSMTXScale(sp34, 0.001f, 0.001f, 0.001f); + PSMTXConcat(sp64, sp34, sp64); + mtxTransCat(sp64, var_r31->unk38, var_r31->unk3C, 0.0f); + GXLoadTexMtxImm(sp64, 0x1E, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, 0, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, 0x1E, 0, 0x7D); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + GXSetZMode(1, GX_LEQUAL, 1); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(0); + GXSetBlendMode(GX_BM_NONE, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + GXCallDisplayList(var_r31->unk20, var_r31->unk24); + GXSetNumIndStages(0); + GXSetTevDirect(GX_TEVSTAGE0); + GXSetTevDirect(GX_TEVSTAGE1); +} From 1b37639dc67ca803871f38125bda72c5b36dde40 Mon Sep 17 00:00:00 2001 From: CreateSource Date: Mon, 3 Feb 2025 18:38:17 -0500 Subject: [PATCH 149/178] fix build error --- include/REL/m427Dll.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/REL/m427Dll.h b/include/REL/m427Dll.h index 1678efc2..c8290376 100644 --- a/include/REL/m427Dll.h +++ b/include/REL/m427Dll.h @@ -13,7 +13,7 @@ void fn_1_91E0(s16 arg0, float arg8, float arg9, float argA, float argB); float fn_1_AE78(s16 arg0, float arg8, float arg9); void fn_1_E98C(Process*); void fn_1_EC54(void); -s32 fn_1_10FE8(s16, s32*); +s32 fn_1_10FE8(s32 arg0, s32 *arg1); void fn_1_110E8(s32, s32*); void fn_1_111C0(s32, s32*); void fn_1_11298(f32); From ea1d89dbde05e647edfd7e01086f7ced154d62ec Mon Sep 17 00:00:00 2001 From: CreateSource Date: Mon, 3 Feb 2025 22:32:48 -0500 Subject: [PATCH 150/178] start naming m463 --- src/REL/m463Dll/main.c | 757 +++++++++++++++++++++-------------------- 1 file changed, 379 insertions(+), 378 deletions(-) diff --git a/src/REL/m463Dll/main.c b/src/REL/m463Dll/main.c index 8304c1b3..a483b214 100755 --- a/src/REL/m463Dll/main.c +++ b/src/REL/m463Dll/main.c @@ -1,3 +1,5 @@ +// Panel Panic 9 Player + #include "game/audio.h" #include "game/chrman.h" #include "game/data.h" @@ -31,20 +33,18 @@ typedef struct { } StructBss35C; // Size 0x10 typedef struct { - /* 0x00 */ s32 unk00; - /* 0x00 */ s32 unk04; - /* 0x08 */ s32 unk08; - /* 0x0C */ s32 unk0C; - /* 0x10 */ s32 unk10; + /* 0x00 */ s32 player; + /* 0x00 */ s32 playerCfg; + /* 0x08 */ s32 character; + /* 0x0C */ s32 padIdx; + /* 0x10 */ s32 diff; /* 0x14 */ s32 unk14; /* 0x18 */ s32 unk18; /* 0x1C */ s32 unk1C; /* 0x20 */ s32 unk20; /* 0x24 */ s32 unk24; /* 0x28 */ float unk28; - /* 0x2C */ float unk2C; - /* 0x30 */ char unk30[4]; - /* 0x34 */ float unk34; + /* 0x2C */ Vec unk2C; /* 0x38 */ s32 unk38; /* 0x3C */ s32 unk3C; /* 0x40 */ s32 unk40; @@ -52,11 +52,10 @@ typedef struct { /* 0x48 */ s32 unk48; /* 0x48 */ s32 unk4C; /* 0x50 */ s32 unk50; - /* 0x54 */ s16 unk54; - /* 0x56 */ char unk56[2]; - /* 0x58 */ s32 unk58; + /* 0x54 */ s16 particle; + /* 0x58 */ s32 particleTimer; /* 0x5C */ s32 unk5C; -} StructBss330Data; // Size 0x60 +} M463PlayerData; // Size 0x60 typedef struct { /* 0x00 */ s32 unk00; @@ -74,12 +73,12 @@ StructBss51C lbl_1_bss_51C[9]; StructBss35C lbl_1_bss_35C[28]; omObjData *lbl_1_bss_358; omObjData *lbl_1_bss_354; -omObjData *lbl_1_bss_330[9]; +omObjData *playerObjs[9]; omObjData *lbl_1_bss_32C; HsfanimStruct00 lbl_1_bss_5C[9]; s32 lbl_1_bss_58; s32 lbl_1_bss_54; -s32 lbl_1_bss_50; +s32 lbl_1_bss_50; //// TODO: setup enum when what this is gets figured out char lbl_1_bss_4C[4]; // unused s32 lbl_1_bss_48; s32 lbl_1_bss_44; @@ -143,9 +142,9 @@ float lbl_1_data_158[] = { -90.0f, 0.0f, 525.0f, 180.0f, 90.0f, 0.0f, 525.0f, 18 void fn_1_A0(void) { if (HuPadBtnDown[0] & PAD_BUTTON_B) { - Center.x = lbl_1_bss_330[0]->trans.x; - Center.y = lbl_1_bss_330[0]->trans.y; - Center.z = lbl_1_bss_330[0]->trans.z; + Center.x = playerObjs[0]->trans.x; + Center.y = playerObjs[0]->trans.y; + Center.z = playerObjs[0]->trans.z; } Center.x += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_RIGHT) != 0) - ((HuPadBtn[0] & PAD_BUTTON_LEFT) != 0)); Center.z -= 10.0 * (((HuPadBtn[0] & PAD_BUTTON_UP) != 0) - ((HuPadBtn[0] & PAD_BUTTON_DOWN) != 0)); @@ -160,10 +159,10 @@ void fn_1_A0(void) s32 lbl_1_data_184 = -1; -void fn_1_4C8(omObjData *arg0) +void fn_1_4C8(omObjData *object) { - ModelData *temp_r24; - ModelData *temp_r29; + ModelData *model; + ModelData *model2; float temp_f31; float temp_f30; float var_f28; @@ -175,18 +174,18 @@ void fn_1_4C8(omObjData *arg0) float var_f22; float var_f21; float var_f20; - StructBss330Data *temp_r31; + M463PlayerData *data; s16 var_r28; s32 temp_r27; s32 var_r26; s32 var_r25; s32 var_r23; s32 var_r22; - StructBss330Data *temp_r21; + M463PlayerData *iPlayerData; s32 var_r20; s32 var_r19; - StructBss330Data *temp_r18; - s32 var_r17; + M463PlayerData *temp_r18; + s32 player; float sp180[2]; s32 spE0; s32 spDC; @@ -195,122 +194,122 @@ void fn_1_4C8(omObjData *arg0) s32 spD0; s32 spCC; s32 spC8; - StructBss330Data *spC4; + M463PlayerData *spC4; s32 spC0; s32 spBC; - StructBss330Data *spB8; + M463PlayerData *spB8; s32 spB4; u32 spB0; float spAC; s32 spA8; s32 spA4; s32 spA0; - StructBss330Data *sp9C; + M463PlayerData *sp9C; ModelData *sp98; float sp94; float sp90; s32 sp8C; s32 sp88; - temp_r31 = arg0->data; + data = object->data; var_f23 = 0.0f; var_f22 = 0.0f; var_f28 = 0.0f; var_r22 = 0; var_r28 = -1; - temp_r31->unk2C = temp_r31->unk34 = 0.0f; - if (lbl_1_bss_50 == 1005 && temp_r31->unk18 == 3 && temp_r31->unk1C >= 360) { - if (temp_r31->unk1C == 360) { - temp_r31->unk14 = rand8() % 15; + data->unk2C.x = data->unk2C.z = 0.0f; + if (lbl_1_bss_50 == 1005 && data->unk18 == 3 && data->unk1C >= 360) { + if (data->unk1C == 360) { + data->unk14 = rand8() % 15; } - if (temp_r31->unk0C != -1) { - var_r22 = (HuPadBtnDown[temp_r31->unk0C] & PAD_BUTTON_A) ? 1 : 0; + if (data->padIdx != -1) { + var_r22 = (HuPadBtnDown[data->padIdx] & PAD_BUTTON_A) ? 1 : 0; } else { - temp_r31->unk14 += (temp_r31->unk14 < 0x10000); - if (temp_r31->unk14 == 30) { + data->unk14 += (data->unk14 < 0x10000); + if (data->unk14 == 30) { var_r22 = 1; } } } - if (temp_r31->unk00 < 4 && lbl_1_bss_50 == 1002) { + if (data->player < 4 && lbl_1_bss_50 == 1002) { var_r26 = 0; var_r25 = 0; - if (temp_r31->unk0C != -1) { - var_r26 = (HuPadStkX[temp_r31->unk0C] < -20) ? -1 : (HuPadStkX[temp_r31->unk0C] > 20) ? 1 : 0; - var_r25 = (-HuPadStkY[temp_r31->unk0C] < -20) ? -1 : (-HuPadStkY[temp_r31->unk0C] > 20) ? 1 : 0; - var_r22 = (HuPadBtnDown[temp_r31->unk0C] & PAD_BUTTON_A) ? 1 : 0; + if (data->padIdx != -1) { + var_r26 = (HuPadStkX[data->padIdx] < -20) ? -1 : (HuPadStkX[data->padIdx] > 20) ? 1 : 0; + var_r25 = (-HuPadStkY[data->padIdx] < -20) ? -1 : (-HuPadStkY[data->padIdx] > 20) ? 1 : 0; + var_r22 = (HuPadBtnDown[data->padIdx] & PAD_BUTTON_A) ? 1 : 0; } else { if (lbl_1_bss_54 == 1) { - temp_r31->unk14 = rand8() % 64 + 30; + data->unk14 = rand8() % 64 + 30; } - temp_r31->unk14 -= (temp_r31->unk14 > 0); - if (temp_r31->unk14 == 1) { - var_r26 = (temp_r31->unk3C > 0 ? -1 : 1) * (rand8() % 2); - var_r25 = (temp_r31->unk40 > 0 ? -1 : 1) * (rand8() % 2); + data->unk14 -= (data->unk14 > 0); + if (data->unk14 == 1) { + var_r26 = (data->unk3C > 0 ? -1 : 1) * (rand8() % 2); + var_r25 = (data->unk40 > 0 ? -1 : 1) * (rand8() % 2); } - if (temp_r31->unk14 == 0) { + if (data->unk14 == 0) { var_r22 = (rand8() % 64 == 1) ? 1 : 0; } } - if (lbl_1_bss_54 >= 50 || temp_r31->unk50 != 0) { + if (lbl_1_bss_54 >= 50 || data->unk50 != 0) { var_r26 = var_r25 = 0; } - for (var_r17 = 0; var_r17 < 4; var_r17++) { - temp_r21 = lbl_1_bss_330[var_r17]->data; + for (player = 0; player < 4; player++) { + iPlayerData = playerObjs[player]->data; spD0 = 0; spCC = 0; - if (var_r17 != temp_r31->unk00) { - if (fabs(500.0 * temp_r31->unk3C - arg0->trans.x) < 10.0) { - spE0 = spDC = (arg0->trans.x < -250.0) ? -1 : (arg0->trans.x > 250.0) ? 1 : 0; + if (player != data->player) { + if (fabs(500.0 * data->unk3C - object->trans.x) < 10.0) { + spE0 = spDC = (object->trans.x < -250.0) ? -1 : (object->trans.x > 250.0) ? 1 : 0; } else { - spE0 = (arg0->trans.x < 0.0f) ? -1 : 0; + spE0 = (object->trans.x < 0.0f) ? -1 : 0; spDC = spE0 + 1; } - if (fabs(500.0 * temp_r31->unk40 - arg0->trans.z) < 10.0) { - spD8 = spD4 = (arg0->trans.z < -250.0) ? -1 : (arg0->trans.z > 250.0) ? 1 : 0; + if (fabs(500.0 * data->unk40 - object->trans.z) < 10.0) { + spD8 = spD4 = (object->trans.z < -250.0) ? -1 : (object->trans.z > 250.0) ? 1 : 0; } else { - spD8 = (arg0->trans.z < 0.0f) ? -1 : 0; + spD8 = (object->trans.z < 0.0f) ? -1 : 0; spD4 = spD8 + 1; } for (var_r20 = spE0; var_r20 <= spDC; var_r20++) { for (var_r19 = spD8; var_r19 <= spD4; var_r19++) { - if (temp_r21->unk38 == (1 + var_r20 + var_r26) + (1 + var_r19 + var_r25) * 3) { + if (iPlayerData->unk38 == (1 + var_r20 + var_r26) + (1 + var_r19 + var_r25) * 3) { var_r26 = var_r25 = 0; } - if (temp_r21->unk38 == (1 + var_r20 + var_r26) + (1 + var_r19) * 3) { + if (iPlayerData->unk38 == (1 + var_r20 + var_r26) + (1 + var_r19) * 3) { var_r26 = 0; } - if (temp_r21->unk38 == (1 + var_r20) + (1 + var_r19 + var_r25) * 3) { + if (iPlayerData->unk38 == (1 + var_r20) + (1 + var_r19 + var_r25) * 3) { var_r25 = 0; } } } } } - if (var_r26 * (500.0 * temp_r31->unk3C - arg0->trans.x) < 0.0) { - temp_r31->unk3C += var_r26; + if (var_r26 * (500.0 * data->unk3C - object->trans.x) < 0.0) { + data->unk3C += var_r26; } - if (fabs(500.0 * temp_r31->unk3C - arg0->trans.x) < 10.0 && var_r26 != 0 && temp_r31->unk3C + var_r26 >= -1 - && temp_r31->unk3C + var_r26 <= 1) { - temp_r31->unk3C += var_r26; + if (fabs(500.0 * data->unk3C - object->trans.x) < 10.0 && var_r26 != 0 && data->unk3C + var_r26 >= -1 + && data->unk3C + var_r26 <= 1) { + data->unk3C += var_r26; } - var_f23 = ((500.0 * temp_r31->unk3C - arg0->trans.x) / 0.25) / 1.75; - if (var_r25 * (500.0 * temp_r31->unk40 - arg0->trans.z) < 0.0) { - temp_r31->unk40 += var_r25; + var_f23 = ((500.0 * data->unk3C - object->trans.x) / 0.25) / 1.75; + if (var_r25 * (500.0 * data->unk40 - object->trans.z) < 0.0) { + data->unk40 += var_r25; } - if (fabs(500.0 * temp_r31->unk40 - arg0->trans.z) < 10.0 && var_r25 != 0 && temp_r31->unk40 + var_r25 >= -1 - && temp_r31->unk40 + var_r25 <= 1) { - temp_r31->unk40 += var_r25; + if (fabs(500.0 * data->unk40 - object->trans.z) < 10.0 && var_r25 != 0 && data->unk40 + var_r25 >= -1 + && data->unk40 + var_r25 <= 1) { + data->unk40 += var_r25; } - var_f22 = ((500.0 * temp_r31->unk40 - arg0->trans.z) / -0.25) / 1.75; - temp_r31->unk38 = (temp_r31->unk3C + 1) + (temp_r31->unk40 + 1) * 3; + var_f22 = ((500.0 * data->unk40 - object->trans.z) / -0.25) / 1.75; + data->unk38 = (data->unk3C + 1) + (data->unk40 + 1) * 3; } - if (temp_r31->unk18 == 0) { - if (lbl_1_bss_50 > (temp_r31->unk00 < 4 ? 1001 : 1003) && lbl_1_bss_50 < 1006) { + if (data->unk18 == 0) { + if (lbl_1_bss_50 > (data->player < 4 ? 1001 : 1003) && lbl_1_bss_50 < 1006) { temp_f31 = 0.25 * var_f23; temp_f30 = 0.25 * -var_f22; { @@ -326,19 +325,19 @@ void fn_1_4C8(omObjData *arg0) var_f28 = sqrtf(temp_f31 * temp_f31 + temp_f30 * temp_f30); if (var_f28 >= 0.5f) { if (var_f28 < 10.0f) { - temp_r31->unk2C = temp_f31; - temp_r31->unk34 += temp_f30; + data->unk2C.x = temp_f31; + data->unk2C.z += temp_f30; } else { temp_f31 /= var_f28; temp_f30 /= var_f28; var_f28 = 10.0f; - temp_r31->unk2C = temp_f31 * var_f28; - temp_r31->unk34 = temp_f30 * var_f28; + data->unk2C.x = temp_f31 * var_f28; + data->unk2C.z = temp_f30 * var_f28; } - temp_r31->unk28 = var_f28; - arg0->rot.y = atan2d(temp_r31->unk2C, temp_r31->unk34); - if (temp_r31->unk28 >= 8.0f) { + data->unk28 = var_f28; + object->rot.y = atan2d(data->unk2C.x, data->unk2C.z); + if (data->unk28 >= 8.0f) { var_r28 = 2; } else { @@ -351,65 +350,65 @@ void fn_1_4C8(omObjData *arg0) } } } - arg0->trans.x += 1.75f * temp_r31->unk2C; - arg0->trans.z += 1.75f * temp_r31->unk34; + object->trans.x += 1.75f * data->unk2C.x; + object->trans.z += 1.75f * data->unk2C.z; switch (lbl_1_bss_50) { case 1001: case 1003: - if (lbl_1_bss_50 != (temp_r31->unk00 < 4 ? 1001 : 1003)) { + if (lbl_1_bss_50 != (data->player < 4 ? 1001 : 1003)) { break; } if (lbl_1_bss_54 == 0) { - Hu3DModelAttrReset(arg0->model[0], HU3D_ATTR_DISPOFF); - if (temp_r31->unk00 < 4) { - temp_r31->unk38 = (temp_r31->unk00 == 0) ? 0 : (temp_r31->unk00 == 1) ? 2 : (temp_r31->unk00 == 2) ? 6 : 8; - temp_r31->unk3C = temp_r31->unk38 % 3 - 1; - temp_r31->unk40 = temp_r31->unk38 / 3 - 1; - arg0->trans.x = 500.0 * temp_r31->unk3C; - arg0->trans.z = 500.0 * temp_r31->unk40; + Hu3DModelAttrReset(object->model[0], HU3D_ATTR_DISPOFF); + if (data->player < 4) { + data->unk38 = (data->player == 0) ? 0 : (data->player == 1) ? 2 : (data->player == 2) ? 6 : 8; + data->unk3C = data->unk38 % 3 - 1; + data->unk40 = data->unk38 / 3 - 1; + object->trans.x = 500.0 * data->unk3C; + object->trans.z = 500.0 * data->unk40; } else { do { - temp_r31->unk38 = rand8() % 9; - for (spC8 = 0; spC8 < temp_r31->unk00; spC8++) { - spC4 = lbl_1_bss_330[spC8]->data; - if (temp_r31->unk38 == spC4->unk38) { + data->unk38 = rand8() % 9; + for (spC8 = 0; spC8 < data->player; spC8++) { + spC4 = playerObjs[spC8]->data; + if (data->unk38 == spC4->unk38) { break; } } - } while (spC8 != temp_r31->unk00); - temp_r31->unk3C = temp_r31->unk38 % 3 - 1; - temp_r31->unk40 = temp_r31->unk38 / 3 - 1; - arg0->trans.x = 500.0 * temp_r31->unk3C; - arg0->trans.z = 500.0 * temp_r31->unk40; + } while (spC8 != data->player); + data->unk3C = data->unk38 % 3 - 1; + data->unk40 = data->unk38 / 3 - 1; + object->trans.x = 500.0 * data->unk3C; + object->trans.z = 500.0 * data->unk40; } } if (lbl_1_bss_54 <= 30) { - if (temp_r31->unk08 == -1) { - Hu3DMotionTimeSet(arg0->model[0], 138.0f); + if (data->character == -1) { + Hu3DMotionTimeSet(object->model[0], 138.0f); } - arg0->trans.y = 2400.0 * (1.0 - lbl_1_bss_54 / 30.0); + object->trans.y = 2400.0 * (1.0 - lbl_1_bss_54 / 30.0); } - if (temp_r31->unk08 != -1 && lbl_1_bss_54 == 30) { + if (data->character != -1 && lbl_1_bss_54 == 30) { var_r28 = 4; } - if (lbl_1_bss_54 == (temp_r31->unk08 != -1 ? 10 : 60) + 30) { + if (lbl_1_bss_54 == (data->character != -1 ? 10 : 60) + 30) { var_r28 = 0; } if (lbl_1_bss_54 == 30) { lbl_1_data_134.unk04 += 50; } - if (lbl_1_bss_54 == 30 && (temp_r31->unk00 == 0 || temp_r31->unk00 == 4)) { + if (lbl_1_bss_54 == 30 && (data->player == 0 || data->player == 4)) { HuAudFXPlay(0x33D); } break; case 1002: - if (lbl_1_bss_54 != 0 && temp_r31->unk00 < 4 && (var_r22 != 0 || lbl_1_bss_0 == 0) && temp_r31->unk50 == 0) { - temp_r31->unk50 = 1; + if (lbl_1_bss_54 != 0 && data->player < 4 && (var_r22 != 0 || lbl_1_bss_0 == 0) && data->unk50 == 0) { + data->unk50 = 1; lbl_1_bss_14++; - lbl_1_bss_51C[temp_r31->unk38].unk08 = 83.333336f; + lbl_1_bss_51C[data->unk38].unk08 = 83.333336f; } - if (temp_r31->unk00 != 0) { + if (data->player != 0) { break; } if (lbl_1_bss_54 == 0) { @@ -433,9 +432,9 @@ void fn_1_4C8(omObjData *arg0) } if (lbl_1_bss_54 == 50) { for (var_r23 = 0; var_r23 < 4; var_r23++) { - temp_r18 = lbl_1_bss_330[var_r23]->data; - if (!(fabs(500.0 * temp_r18->unk3C - lbl_1_bss_330[var_r23]->trans.x) < 1.0) - || !(fabs(500.0 * temp_r18->unk40 - lbl_1_bss_330[var_r23]->trans.z) < 1.0) || temp_r18->unk20 != 0) { + temp_r18 = playerObjs[var_r23]->data; + if (!(fabs(500.0 * temp_r18->unk3C - playerObjs[var_r23]->trans.x) < 1.0) + || !(fabs(500.0 * temp_r18->unk40 - playerObjs[var_r23]->trans.z) < 1.0) || temp_r18->unk20 != 0) { break; } } @@ -445,132 +444,132 @@ void fn_1_4C8(omObjData *arg0) } break; case 1005: - if (temp_r31->unk5C != 0) { - if (arg0->trans.y < -15000.0f) { - Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); + if (data->unk5C != 0) { + if (object->trans.y < -15000.0f) { + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); } else { - arg0->trans.y -= 77.0f; + object->trans.y -= 77.0f; } } break; case 1006: if (lbl_1_bss_54 <= 1) { - Hu3DModelAttrSet(arg0->model[temp_r31->unk44 + 2], HU3D_ATTR_DISPOFF); - lbl_1_bss_51C[temp_r31->unk44].unk0C = 0; + Hu3DModelAttrSet(object->model[data->unk44 + 2], HU3D_ATTR_DISPOFF); + lbl_1_bss_51C[data->unk44].unk0C = 0; } - if (lbl_1_bss_51C[temp_r31->unk38].unk0C != 0 || temp_r31->unk5C != 0) { + if (lbl_1_bss_51C[data->unk38].unk0C != 0 || data->unk5C != 0) { break; } if (lbl_1_bss_54 == 120) { - Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk38 + 1], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(lbl_1_bss_32C->model[data->unk38 + 1], HU3D_MOTATTR_PAUSE); } if (lbl_1_bss_54 == 153) { - Hu3DModelAttrSet(lbl_1_bss_32C->model[temp_r31->unk38 + 1], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrSet(lbl_1_bss_32C->model[data->unk38 + 1], HU3D_MOTATTR_PAUSE); } if (lbl_1_bss_54 == 183) { - Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk38 + 1], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(lbl_1_bss_32C->model[data->unk38 + 1], HU3D_MOTATTR_PAUSE); } if (lbl_1_bss_54 == 210) { spBC = 0; for (spC0 = 0; spC0 < 9; spC0++) { - spB8 = lbl_1_bss_330[spC0]->data; + spB8 = playerObjs[spC0]->data; spBC += (lbl_1_bss_51C[spB8->unk38].unk0C == 0 && spB8->unk5C == 0); } var_r28 = 7; - HuAudFXPlayVol(0x7F7 + (temp_r31->unk08 != -1 ? temp_r31->unk08 : 8), 1651 / (spBC + 12)); + HuAudFXPlayVol(0x7F7 + (data->character != -1 ? data->character : 8), 1651 / (spBC + 12)); } if (lbl_1_bss_54 >= 210 && lbl_1_bss_54 <= 214) { s32 sp1AC[] = { 0, -12, -36, 0, 0, -12, -36, -48, 0 }; float sp194[] = { 150.0f, 175.0f, 205.0f }; float sp188[] = { 100.0f, 170.0f, 260.0f }; - spB4 = temp_r31->unk38 % 3 - 1; - spB0 = temp_r31->unk38 / 3; + spB4 = data->unk38 % 3 - 1; + spB0 = data->unk38 / 3; spAC = (lbl_1_bss_54 - 210) / 4.0; temp_f26 = (lbl_1_bss_54 - 210) / 4.0; temp_f26 = (temp_f26 > 1.0f) ? 1.0f : temp_f26; - espAttrReset(lbl_1_data_24[temp_r31->unk38], HUSPR_ATTR_DISPOFF); - espPosSet(lbl_1_data_24[temp_r31->unk38], 290.0f + spB4 * sp194[spB0], - sp188[spB0] + 0.5 * (64.0f * (1.0f - spAC) * 0.5 + sp1AC[temp_r31->unk08 != -1 ? temp_r31->unk08 : 8])); - espScaleSet(lbl_1_data_24[temp_r31->unk38], 0.5 * temp_f26, 0.5 * temp_f26); + espAttrReset(lbl_1_data_24[data->unk38], HUSPR_ATTR_DISPOFF); + espPosSet(lbl_1_data_24[data->unk38], 290.0f + spB4 * sp194[spB0], + sp188[spB0] + 0.5 * (64.0f * (1.0f - spAC) * 0.5 + sp1AC[data->character != -1 ? data->character : 8])); + espScaleSet(lbl_1_data_24[data->unk38], 0.5 * temp_f26, 0.5 * temp_f26); } if (lbl_1_bss_54 == 270) { - Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_PAUSE); - espAttrSet(lbl_1_data_24[temp_r31->unk38], HUSPR_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[0], HU3D_MOTATTR_PAUSE); + espAttrSet(lbl_1_data_24[data->unk38], HUSPR_ATTR_DISPOFF); } if (lbl_1_bss_54 == 290) { spA0 = 0; for (spA4 = 0; spA4 < 9; spA4++) { - sp9C = lbl_1_bss_330[spA4]->data; + sp9C = playerObjs[spA4]->data; spA0 += (lbl_1_bss_51C[sp9C->unk38].unk0C == 0 && sp9C->unk5C == 0); } - spA8 = HuAudFXPlayVol(0x800 + (temp_r31->unk08 != -1 ? temp_r31->unk08 : 8), 1651 / (spA0 + 12)); + spA8 = HuAudFXPlayVol(0x800 + (data->character != -1 ? data->character : 8), 1651 / (spA0 + 12)); HuAudFXFadeOut(spA8, 0x9C4); } if (lbl_1_bss_54 >= 315) { - arg0->trans.y -= 77.0f; + object->trans.y -= 77.0f; } break; case 1007: - if (temp_r31->unk00 == lbl_1_bss_38) { + if (data->player == lbl_1_bss_38) { var_r28 = 8; - if (temp_r31->unk00 >= 4 && temp_r31->unk08 != -1 && lbl_1_bss_54 == 1) { - HuAudFXPlay(0x809 + temp_r31->unk08); + if (data->player >= 4 && data->character != -1 && lbl_1_bss_54 == 1) { + HuAudFXPlay(0x809 + data->character); } - if (temp_r31->unk08 == -1 && lbl_1_bss_54 == 1) { + if (data->character == -1 && lbl_1_bss_54 == 1) { HuAudFXPlay(0x3A); } } - else if (arg0->trans.y < -40000.0f) { - Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); + else if (object->trans.y < -40000.0f) { + Hu3DModelAttrSet(object->model[0], HU3D_ATTR_DISPOFF); } else { - arg0->trans.y -= 77.0f; + object->trans.y -= 77.0f; } break; } - switch (temp_r31->unk18) { + switch (data->unk18) { case 0: - temp_r31->unk1C++; + data->unk1C++; break; case 1: - temp_r31->unk1C++; - if (temp_r31->unk1C <= 60) { - arg0->rot.y = -180.0 * (temp_r31->unk1C / 60.0); + data->unk1C++; + if (data->unk1C <= 60) { + object->rot.y = -180.0 * (data->unk1C / 60.0); } else { - Hu3DMotionTimeSet(arg0->model[0], 120.0f); + Hu3DMotionTimeSet(object->model[0], 120.0f); var_r28 = 0; - temp_r31->unk18 = 0; - temp_r31->unk1C = 0; + data->unk18 = 0; + data->unk1C = 0; } break; case 2: - temp_r31->unk1C++; + data->unk1C++; break; case 3: - if (temp_r31->unk1C == 0) { - temp_r31->unk48 = 6; - temp_r31->unk4C = 0; + if (data->unk1C == 0) { + data->unk48 = 6; + data->unk4C = 0; } - if (temp_r31->unk1C < 360) { - temp_r24 = &Hu3DData[arg0->model[1]]; - if (temp_r31->unk1C == 0) { - Hu3DModelAttrReset(arg0->model[1], HU3D_ATTR_DISPOFF); - Hu3DModelPosSet(arg0->model[1], arg0->trans.x, arg0->trans.y + 625.0f, arg0->trans.z); - Hu3DModelScaleSet(arg0->model[1], 0.1f, 0.1f, 0.1f); - Hu3DModelTPLvlSet(arg0->model[1], 1.0f); - temp_r31->unk4C = 0; + if (data->unk1C < 360) { + model = &Hu3DData[object->model[1]]; + if (data->unk1C == 0) { + Hu3DModelAttrReset(object->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(object->model[1], object->trans.x, object->trans.y + 625.0f, object->trans.z); + Hu3DModelScaleSet(object->model[1], 0.1f, 0.1f, 0.1f); + Hu3DModelTPLvlSet(object->model[1], 1.0f); + data->unk4C = 0; if (lbl_1_bss_18 == 0) { HuAudFXPlay(0x7F4); lbl_1_data_184 = HuAudFXPlay(0x7F3); } lbl_1_bss_18++; } - temp_r24->rot.y = temp_r31->unk4C % 360; - temp_r31->unk4C += 25; - if (temp_r31->unk1C < 180) { + model->rot.y = data->unk4C % 360; + data->unk4C += 25; + if (data->unk1C < 180) { var_f20 = 0.0f; var_f21 = 1.0f; } @@ -578,46 +577,46 @@ void fn_1_4C8(omObjData *arg0) var_f20 = 1.0f; var_f21 = 0.5f; } - temp_r24->scale.x = var_f20 + var_f21 * sind((float)(temp_r31->unk1C % 180)); - temp_r24->scale.y = temp_r24->scale.z = temp_r24->scale.x; - if (temp_r31->unk1C < 180) { - temp_r31->unk1C += 6; + model->scale.x = var_f20 + var_f21 * sind((float)(data->unk1C % 180)); + model->scale.y = model->scale.z = model->scale.x; + if (data->unk1C < 180) { + data->unk1C += 6; } else { - temp_r31->unk1C += 18; + data->unk1C += 18; } - if (temp_r31->unk1C >= 360) { - temp_r31->unk1C = 360; - Hu3DModelRotSet(arg0->model[1], 0.0f, 0.0f, 0.0f); + if (data->unk1C >= 360) { + data->unk1C = 360; + Hu3DModelRotSet(object->model[1], 0.0f, 0.0f, 0.0f); } } else { - sp98 = &Hu3DData[arg0->model[1]]; - temp_r31->unk1C += 4; - if (temp_r31->unk1C > 720) { - temp_r31->unk1C -= 360; + sp98 = &Hu3DData[object->model[1]]; + data->unk1C += 4; + if (data->unk1C > 720) { + data->unk1C -= 360; } - sp98->pos.y += 0.2f * sind(temp_r31->unk1C - 360); + sp98->pos.y += 0.2f * sind(data->unk1C - 360); if (var_r22 != 0 || lbl_1_bss_0 == 0) { lbl_1_bss_54 = 50; - temp_r31->unk18 = 4; - temp_r31->unk1C = 0; + data->unk18 = 4; + data->unk1C = 0; var_r28 = 5; } } break; case 4: - temp_r31->unk1C++; - if (temp_r31->unk1C < 27) { + data->unk1C++; + if (data->unk1C < 27) { break; } - temp_r29 = &Hu3DData[arg0->model[1]]; - temp_r27 = temp_r31->unk1C - 27; + model2 = &Hu3DData[object->model[1]]; + temp_r27 = data->unk1C - 27; if (temp_r27 == 0) { - if (temp_r31->unk04 != -1) { - omVibrate(temp_r31->unk04, 12, 4, 2); + if (data->playerCfg != -1) { + omVibrate(data->playerCfg, 12, 4, 2); } - temp_r31->unk48 = -1; + data->unk48 = -1; lbl_1_bss_18--; if (lbl_1_bss_18 == 0 && lbl_1_data_184 != -1) { HuAudFXStop(lbl_1_data_184); @@ -626,17 +625,17 @@ void fn_1_4C8(omObjData *arg0) HuAudFXPlay(0x7F5); } if (temp_r27 == 8) { - if (temp_r31->unk54 == -1) { - lbl_1_bss_58 = temp_r31->unk00; - temp_r31->unk54 = fn_1_4474(); - Hu3DParManPosSet(temp_r31->unk54, temp_r29->pos.x, temp_r29->pos.y, temp_r29->pos.z); - temp_r31->unk58 = 150; + if (data->particle == -1) { + lbl_1_bss_58 = data->player; + data->particle = fn_1_4474(); + Hu3DParManPosSet(data->particle, model2->pos.x, model2->pos.y, model2->pos.z); + data->particleTimer = 150; } - Hu3DModelAttrSet(arg0->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); } else if (temp_r27 > 8) { - if (temp_r31->unk20 == 5) { - if (Hu3DMotionTimeGet(arg0->model[0]) >= Hu3DMotionMaxTimeGet(arg0->model[0])) { + if (data->unk20 == 5) { + if (Hu3DMotionTimeGet(object->model[0]) >= Hu3DMotionMaxTimeGet(object->model[0])) { var_r28 = 0; } } @@ -644,106 +643,106 @@ void fn_1_4C8(omObjData *arg0) temp_f27 = (temp_r27 - 8) / 10.0; sp94 = (temp_r27 - 8) * 18; temp_f27 = (temp_f27 > 1.0f) ? 2.5 : (2.5 * temp_f27); - Hu3DModelAttrReset(arg0->model[temp_r31->unk44 + 2], HU3D_ATTR_DISPOFF); - Hu3DModelPosSet(arg0->model[temp_r31->unk44 + 2], temp_r29->pos.x, temp_r29->pos.y, temp_r29->pos.z); - Hu3DModelScaleSet(arg0->model[temp_r31->unk44 + 2], temp_f27, temp_f27, temp_f27); + Hu3DModelAttrReset(object->model[data->unk44 + 2], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(object->model[data->unk44 + 2], model2->pos.x, model2->pos.y, model2->pos.z); + Hu3DModelScaleSet(object->model[data->unk44 + 2], temp_f27, temp_f27, temp_f27); } if (temp_r27 >= 45 && temp_r27 <= 65) { temp_f25 = (temp_r27 - 45) / 5.0; sp90 = (temp_r27 - 45) * 18; temp_f25 = (temp_f25 > 1.0f) ? 1.0f : temp_f25; temp_f25 = 0.0f; - Hu3DModelAttrReset(arg0->model[temp_r31->unk44 + 2], HU3D_ATTR_DISPOFF); - Hu3DModelPosSet(arg0->model[temp_r31->unk44 + 2], temp_r29->pos.x, temp_r29->pos.y - 30.0f * temp_f25, temp_r29->pos.z); - temp_r31->unk1C += 5; + Hu3DModelAttrReset(object->model[data->unk44 + 2], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(object->model[data->unk44 + 2], model2->pos.x, model2->pos.y - 30.0f * temp_f25, model2->pos.z); + data->unk1C += 5; } if (temp_r27 == 158) { - temp_r31->unk18 = 0; - temp_r31->unk1C = 0; + data->unk18 = 0; + data->unk1C = 0; } } else { if (temp_r27 < 4) { - temp_r29->pos.y += 10.0f + 0.5f * temp_r27; - temp_r29->scale.x += 0.1f * sind(4.0f * temp_r27); - temp_r29->scale.y = temp_r29->scale.z = temp_r29->scale.x; + model2->pos.y += 10.0f + 0.5f * temp_r27; + model2->scale.x += 0.1f * sind(4.0f * temp_r27); + model2->scale.y = model2->scale.z = model2->scale.x; } else { var_f24 = 255 - (temp_r27 << 5); var_f24 = var_f24 * (1.0f / 255); - Hu3DModelTPLvlSet(arg0->model[1], var_f24); + Hu3DModelTPLvlSet(object->model[1], var_f24); } - temp_r29->pos.y += -0.49f * temp_r27 * temp_r27; + model2->pos.y += -0.49f * temp_r27 * temp_r27; } break; case 5: - if (temp_r31->unk1C == 0) { - Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk44 + 1], HU3D_MOTATTR_PAUSE); - lbl_1_bss_51C[temp_r31->unk44].unk0C = 0; + if (data->unk1C == 0) { + Hu3DModelAttrReset(lbl_1_bss_32C->model[data->unk44 + 1], HU3D_MOTATTR_PAUSE); + lbl_1_bss_51C[data->unk44].unk0C = 0; if (lbl_1_bss_35C->unk00 < 3) { lbl_1_bss_35C->unk04[lbl_1_bss_35C->unk00] = 0.0f; lbl_1_bss_35C->unk00++; } } - temp_r31->unk1C++; - if (temp_r31->unk1C == 60 && temp_r31->unk54 != -1) { - Hu3DParManKill(temp_r31->unk54); - temp_r31->unk54 = -1; + data->unk1C++; + if (data->unk1C == 60 && data->particle != -1) { + Hu3DParManKill(data->particle); + data->particle = -1; } - if (temp_r31->unk1C == 33) { - Hu3DModelAttrSet(lbl_1_bss_32C->model[temp_r31->unk44 + 1], HU3D_MOTATTR_PAUSE); + if (data->unk1C == 33) { + Hu3DModelAttrSet(lbl_1_bss_32C->model[data->unk44 + 1], HU3D_MOTATTR_PAUSE); } - if (temp_r31->unk1C == 63) { - Hu3DModelAttrReset(lbl_1_bss_32C->model[temp_r31->unk44 + 1], HU3D_MOTATTR_PAUSE); + if (data->unk1C == 63) { + Hu3DModelAttrReset(lbl_1_bss_32C->model[data->unk44 + 1], HU3D_MOTATTR_PAUSE); } - if (temp_r31->unk1C == 68 && lbl_1_bss_35C[1].unk00 < 3) { + if (data->unk1C == 68 && lbl_1_bss_35C[1].unk00 < 3) { lbl_1_bss_35C[1].unk04[lbl_1_bss_35C[1].unk00] = 0.0f; lbl_1_bss_35C[1].unk00++; } - if (temp_r31->unk1C == 130) { - temp_r31->unk18 = 0; - temp_r31->unk1C = 0; + if (data->unk1C == 130) { + data->unk18 = 0; + data->unk1C = 0; } break; } - if ((temp_r31->unk18 == 3 || temp_r31->unk18 == 4) && temp_r31->unk48 >= 0) { - temp_r31->unk48++; - if (temp_r31->unk48 >= 6) { - sp88 = temp_r31->unk44; + if ((data->unk18 == 3 || data->unk18 == 4) && data->unk48 >= 0) { + data->unk48++; + if (data->unk48 >= 6) { + sp88 = data->unk44; for (sp8C = 0; sp8C < 50; sp8C++) { do { - temp_r31->unk44 = rand8() % 9; - if (temp_r31->unk44 >= 9) { + data->unk44 = rand8() % 9; + if (data->unk44 >= 9) { break; } - } while (lbl_1_bss_51C[temp_r31->unk44].unk0C == 0); - if (sp88 != temp_r31->unk44) { + } while (lbl_1_bss_51C[data->unk44].unk0C == 0); + if (sp88 != data->unk44) { break; } } - sp88 = temp_r31->unk44; - temp_r31->unk48 = 0; - Hu3DMotionTimeSet(arg0->model[1], 0.5 + sp88); + sp88 = data->unk44; + data->unk48 = 0; + Hu3DMotionTimeSet(object->model[1], 0.5 + sp88); } } - if (temp_r31->unk24 >= 0) { - var_r28 = temp_r31->unk24; + if (data->unk24 >= 0) { + var_r28 = data->unk24; } - if (var_r28 >= 0 && var_r28 != temp_r31->unk20) { - Hu3DMotionShiftSet(arg0->model[0], arg0->motion[var_r28], lbl_1_data_EC[var_r28], - (temp_r31->unk08 != -1) ? lbl_1_data_C8[var_r28] : lbl_1_data_110[var_r28], + if (var_r28 >= 0 && var_r28 != data->unk20) { + Hu3DMotionShiftSet(object->model[0], object->motion[var_r28], lbl_1_data_EC[var_r28], + (data->character != -1) ? lbl_1_data_C8[var_r28] : lbl_1_data_110[var_r28], (var_r28 == 7) ? HU3D_MOTATTR_PAUSE - : (temp_r31->unk08 != -1 ? lbl_1_data_B4[var_r28] : lbl_1_data_BD[var_r28]) ? 0 + : (data->character != -1 ? lbl_1_data_B4[var_r28] : lbl_1_data_BD[var_r28]) ? 0 : HU3D_MOTATTR_LOOP); - temp_r31->unk20 = var_r28; + data->unk20 = var_r28; } - temp_r31->unk58 -= (temp_r31->unk58 > -1); - if (temp_r31->unk58 == 0) { - if (temp_r31->unk54 != -1) { - Hu3DParManKill(temp_r31->unk54); - temp_r31->unk54 = -1; + data->particleTimer -= (data->particleTimer > -1); + if (data->particleTimer == 0) { + if (data->particle != -1) { + Hu3DParManKill(data->particle); + data->particle = -1; } - temp_r31->unk58 = -1; + data->particleTimer = -1; } } @@ -753,14 +752,81 @@ float lbl_1_data_1B8 = 3500.0f; float lbl_1_data_1BC = 100.0f; float lbl_1_data_1C0 = -59.0f; +static inline void fn3264_unkInline(void) { + float var_f31; + s32 var_r26 = lbl_1_data_1B4; + float sp30[][6] = { { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 3800.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + { 4000.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, { 2700.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } }; + + if (lbl_1_bss_38 != -1 && lbl_1_bss_38 != 9) { + sp30[5][1] = playerObjs[lbl_1_bss_38]->trans.x; + sp30[5][3] = playerObjs[lbl_1_bss_38]->trans.z; + } + if (lbl_1_data_1B4 == -1) { + lbl_1_data_1B4 = 0; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 1.0f; + } + if (lbl_1_data_1B4 == 0) { + lbl_1_data_1B4 = 1; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 0.5f; + } + if (lbl_1_bss_50 == 1004 && lbl_1_bss_54 >= 1 && lbl_1_data_1B4 == 1) { + lbl_1_data_1B4 = 2; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if (lbl_1_bss_50 == 1006 && lbl_1_bss_54 >= 270 && lbl_1_data_1B4 == 2) { + lbl_1_data_1B4 = 4; + lbl_1_bss_1C = 1; + lbl_1_bss_20 = 1.0f; + } + if (lbl_1_bss_50 == 1005 && lbl_1_data_1B4 == 4) { + lbl_1_data_1B4 = 2; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if (lbl_1_bss_50 == 1007 && lbl_1_bss_38 != 9 && lbl_1_data_1B4 == 4) { + lbl_1_data_1B4 = 5; + lbl_1_bss_1C = 0; + lbl_1_bss_20 = 0.0f; + } + if (var_r26 != lbl_1_data_1B4 && var_r26 != -1) { + lbl_1_data_1B8 = CZoom; + lbl_1_data_1BC = Center.y; + lbl_1_bss_28 = Center.z; + lbl_1_data_1C0 = CRot.x; + lbl_1_bss_2C = CRot.y; + } + if (lbl_1_bss_20 <= 1.0f) { + if (lbl_1_bss_1C == 0) { + lbl_1_bss_20 = 1.0 - 0.95 * (1.0f - lbl_1_bss_20); + var_f31 = lbl_1_bss_20; + } + else { + lbl_1_bss_20 += 0.008333333333333333; + lbl_1_bss_20 = (lbl_1_bss_20 > 1.0f) ? 1.0f : lbl_1_bss_20; + var_f31 = 0.5 + -0.5 * cosd(180.0f * lbl_1_bss_20); + } + lbl_1_bss_20 = (lbl_1_bss_20 > 1.0f) ? 1.0f : lbl_1_bss_20; + CZoom = var_f31 * sp30[lbl_1_data_1B4][0] + lbl_1_data_1B8 * (1.0f - var_f31); + Center.x = var_f31 * sp30[lbl_1_data_1B4][1] + lbl_1_bss_24 * (1.0f - var_f31); + Center.y = var_f31 * sp30[lbl_1_data_1B4][2] + lbl_1_data_1BC * (1.0f - var_f31); + Center.z = var_f31 * sp30[lbl_1_data_1B4][3] + lbl_1_bss_28 * (1.0f - var_f31); + CRot.x = var_f31 * sp30[lbl_1_data_1B4][4] + lbl_1_data_1C0 * (1.0f - var_f31); + CRot.y = var_f31 * sp30[lbl_1_data_1B4][5] + lbl_1_bss_2C * (1.0f - var_f31); + } +} + void fn_1_3264(omObjData *arg0) { float temp_f29; - float var_f31; float temp_f26; float temp_f27; float temp_f28; - StructBss330Data *spC[9]; + M463PlayerData *spC[9]; ModelData *temp_r29; ModelData *temp_r28; s32 var_r27; @@ -768,7 +834,7 @@ void fn_1_3264(omObjData *arg0) s32 j; for (i = 0; i < 9; i++) { - spC[i] = lbl_1_bss_330[i]->data; + spC[i] = playerObjs[i]->data; } lbl_1_bss_4++; switch (lbl_1_bss_50) { @@ -789,8 +855,8 @@ void fn_1_3264(omObjData *arg0) HuAudFXPlay(0x7F6); } temp_r29->pos.y = 0.9 * temp_r29->pos.y + 0.1 * lbl_1_bss_51C[spC[i]->unk38].unk08; - lbl_1_bss_330[i]->trans.y = temp_r29->pos.y - -16.666666666666668; - lbl_1_bss_330[i]->rot.y = 0.0f; + playerObjs[i]->trans.y = temp_r29->pos.y - -16.666666666666668; + playerObjs[i]->rot.y = 0.0f; } break; case 1004: @@ -806,81 +872,16 @@ void fn_1_3264(omObjData *arg0) 0.9 * temp_r28->pos.y + 0.1 * lbl_1_bss_51C[spC[0]->unk38].unk08, (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk04 - 1)); for (j = 0; j < 9; j++) { if (i == spC[j]->unk38) { - lbl_1_bss_330[j]->trans.x = (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk00 - 1); - lbl_1_bss_330[j]->trans.y = temp_r28->pos.y - -16.666666666666668; - lbl_1_bss_330[j]->trans.z = (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk04 - 1); + playerObjs[j]->trans.x = (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk00 - 1); + playerObjs[j]->trans.y = temp_r28->pos.y - -16.666666666666668; + playerObjs[j]->trans.z = (500.0 + 200.0f * temp_f29) * (lbl_1_bss_51C[i].unk04 - 1); } } } } break; } - { - s32 var_r26 = lbl_1_data_1B4; - float sp30[][6] = { { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, - { 3800.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, - { 4000.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, { 2700.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } }; - - if (lbl_1_bss_38 != -1 && lbl_1_bss_38 != 9) { - sp30[5][1] = lbl_1_bss_330[lbl_1_bss_38]->trans.x; - sp30[5][3] = lbl_1_bss_330[lbl_1_bss_38]->trans.z; - } - if (lbl_1_data_1B4 == -1) { - lbl_1_data_1B4 = 0; - lbl_1_bss_1C = 1; - lbl_1_bss_20 = 1.0f; - } - if (lbl_1_data_1B4 == 0) { - lbl_1_data_1B4 = 1; - lbl_1_bss_1C = 1; - lbl_1_bss_20 = 0.5f; - } - if (lbl_1_bss_50 == 1004 && lbl_1_bss_54 >= 1 && lbl_1_data_1B4 == 1) { - lbl_1_data_1B4 = 2; - lbl_1_bss_1C = 0; - lbl_1_bss_20 = 0.0f; - } - if (lbl_1_bss_50 == 1006 && lbl_1_bss_54 >= 270 && lbl_1_data_1B4 == 2) { - lbl_1_data_1B4 = 4; - lbl_1_bss_1C = 1; - lbl_1_bss_20 = 1.0f; - } - if (lbl_1_bss_50 == 1005 && lbl_1_data_1B4 == 4) { - lbl_1_data_1B4 = 2; - lbl_1_bss_1C = 0; - lbl_1_bss_20 = 0.0f; - } - if (lbl_1_bss_50 == 1007 && lbl_1_bss_38 != 9 && lbl_1_data_1B4 == 4) { - lbl_1_data_1B4 = 5; - lbl_1_bss_1C = 0; - lbl_1_bss_20 = 0.0f; - } - if (var_r26 != lbl_1_data_1B4 && var_r26 != -1) { - lbl_1_data_1B8 = CZoom; - lbl_1_data_1BC = Center.y; - lbl_1_bss_28 = Center.z; - lbl_1_data_1C0 = CRot.x; - lbl_1_bss_2C = CRot.y; - } - if (lbl_1_bss_20 <= 1.0f) { - if (lbl_1_bss_1C == 0) { - lbl_1_bss_20 = 1.0 - 0.95 * (1.0f - lbl_1_bss_20); - var_f31 = lbl_1_bss_20; - } - else { - lbl_1_bss_20 += 0.008333333333333333; - lbl_1_bss_20 = (lbl_1_bss_20 > 1.0f) ? 1.0f : lbl_1_bss_20; - var_f31 = 0.5 + -0.5 * cosd(180.0f * lbl_1_bss_20); - } - lbl_1_bss_20 = (lbl_1_bss_20 > 1.0f) ? 1.0f : lbl_1_bss_20; - CZoom = var_f31 * sp30[lbl_1_data_1B4][0] + lbl_1_data_1B8 * (1.0f - var_f31); - Center.x = var_f31 * sp30[lbl_1_data_1B4][1] + lbl_1_bss_24 * (1.0f - var_f31); - Center.y = var_f31 * sp30[lbl_1_data_1B4][2] + lbl_1_data_1BC * (1.0f - var_f31); - Center.z = var_f31 * sp30[lbl_1_data_1B4][3] + lbl_1_bss_28 * (1.0f - var_f31); - CRot.x = var_f31 * sp30[lbl_1_data_1B4][4] + lbl_1_data_1C0 * (1.0f - var_f31); - CRot.y = var_f31 * sp30[lbl_1_data_1B4][5] + lbl_1_bss_2C * (1.0f - var_f31); - } - } + fn3264_unkInline(); if (lbl_1_bss_50 == 1001 || lbl_1_bss_50 == 1003) { temp_f26 = 0.0f; temp_f27 = 0.0f; @@ -932,7 +933,7 @@ s16 fn_1_4474(void) void fn_1_45F8(omObjData *arg0) { - StructBss330Data *sp14[9]; + M463PlayerData *sp14[9]; float spC[2]; s32 sp8; s32 var_r29; @@ -954,7 +955,7 @@ void fn_1_45F8(omObjData *arg0) } } for (i = 0; i < 9; i++) { - sp14[i] = lbl_1_bss_330[i]->data; + sp14[i] = playerObjs[i]->data; } if (omSysExitReq != 0 && WipeStatGet() == 0) { WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); @@ -968,9 +969,9 @@ void fn_1_45F8(omObjData *arg0) lbl_1_bss_50++; lbl_1_bss_54 = 0; for (i = 0; i < 9; i++) { - if (sp14[i]->unk54 != -1) { - Hu3DParManKill(sp14[i]->unk54); - sp14[i]->unk54 = -1; + if (sp14[i]->particle != -1) { + Hu3DParManKill(sp14[i]->particle); + sp14[i]->particle = -1; } } break; @@ -996,9 +997,9 @@ void fn_1_45F8(omObjData *arg0) break; case 1003: lbl_1_bss_54++; - if (lbl_1_bss_54 == (sp14[1]->unk08 == -1 ? 120 : 60) + 30) { + if (lbl_1_bss_54 == (sp14[1]->character == -1 ? 120 : 60) + 30) { lbl_1_bss_50++; - if (sp14[1]->unk08 == -1) { + if (sp14[1]->character == -1) { lbl_1_bss_50++; } lbl_1_bss_54 = 0; @@ -1120,8 +1121,8 @@ void fn_1_45F8(omObjData *arg0) else { HuAudSStreamPlay(1); } - if (lbl_1_bss_38 < 4 && sp14[lbl_1_bss_38]->unk04 != -1) { - GWPlayerCoinWinSet(sp14[lbl_1_bss_38]->unk04, 10); + if (lbl_1_bss_38 < 4 && sp14[lbl_1_bss_38]->playerCfg != -1) { + GWPlayerCoinWinSet(sp14[lbl_1_bss_38]->playerCfg, 10); } } else if (lbl_1_bss_38 == 9) { @@ -1143,11 +1144,11 @@ void fn_1_45F8(omObjData *arg0) void fn_1_53A0(omObjData *arg0) { - StructBss330Data *sp50[9]; + M463PlayerData *sp50[9]; s32 i; for (i = 0; i < 9; i++) { - sp50[i] = lbl_1_bss_330[i]->data; + sp50[i] = playerObjs[i]->data; } arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M458, 8)); Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_LOOP); @@ -1185,7 +1186,7 @@ s32 lbl_1_data_1E4[] = { DATA_MAKE_NUM(DATADIR_M458, 19), DATA_MAKE_NUM(DATADIR_ void fn_1_5850(omObjData *arg0) { - StructBss330Data *temp_r31; + M463PlayerData *data; s32 sp10[] = { 0, 1, 2, 3 }; s32 var_r25; s32 var_r28; @@ -1193,21 +1194,21 @@ void fn_1_5850(omObjData *arg0) s32 j; var_r25 = 0; - temp_r31 = arg0->data; - memset(temp_r31, 0, sizeof(*temp_r31)); - temp_r31->unk00 = arg0->work[0]; - if (temp_r31->unk00 >= 4) { + data = arg0->data; + memset(data, 0, sizeof(*data)); + data->player = arg0->work[0]; + if (data->player >= 4) { var_r28 = -1; - for (i = 0; i <= temp_r31->unk00 - 4; i++) { + for (i = 0; i <= data->player - 4; i++) { do { var_r28++; } while (GWPlayerCfg[0].character == var_r28 || GWPlayerCfg[1].character == var_r28 || GWPlayerCfg[2].character == var_r28 || GWPlayerCfg[3].character == var_r28); } - temp_r31->unk08 = (var_r28 == 8) ? -1 : var_r28; - temp_r31->unk0C = -1; - temp_r31->unk04 = -1; - temp_r31->unk10 = 0; + data->character = (var_r28 == 8) ? -1 : var_r28; + data->padIdx = -1; + data->playerCfg = -1; + data->diff = 0; } else { for (i = 0; i < 4; i++) { @@ -1218,52 +1219,52 @@ void fn_1_5850(omObjData *arg0) } } } - temp_r31->unk00 = arg0->work[0]; - temp_r31->unk04 = sp10[temp_r31->unk00]; - if (temp_r31->unk04 == 4) { + data->player = arg0->work[0]; + data->playerCfg = sp10[data->player]; + if (data->playerCfg == 4) { OSReport("m463:wrong player group\n"); - temp_r31->unk04 = temp_r31->unk00; + data->playerCfg = data->player; } - temp_r31->unk08 = GWPlayerCfg[temp_r31->unk04].character; - temp_r31->unk0C = (temp_r31->unk08 == -1 || GWPlayerCfg[temp_r31->unk04].iscom) ? -1 : GWPlayerCfg[temp_r31->unk04].pad_idx; - temp_r31->unk10 = (temp_r31->unk0C != -1) ? 0 : GWPlayerCfg[temp_r31->unk04].diff; + data->character = GWPlayerCfg[data->playerCfg].character; + data->padIdx = (data->character == -1 || GWPlayerCfg[data->playerCfg].iscom) ? -1 : GWPlayerCfg[data->playerCfg].pad_idx; + data->diff = (data->padIdx != -1) ? 0 : GWPlayerCfg[data->playerCfg].diff; } - temp_r31->unk18 = 0; - temp_r31->unk20 = 3; - temp_r31->unk24 = -1; - temp_r31->unk48 = -1; - if (temp_r31->unk08 != -1) { - arg0->model[0] = CharModelCreate(temp_r31->unk08, 4); + data->unk18 = 0; + data->unk20 = 3; + data->unk24 = -1; + data->unk48 = -1; + if (data->character != -1) { + arg0->model[0] = CharModelCreate(data->character, 4); } else { arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 7)); } - omSetTra(arg0, 0.0f, temp_r31->unk00 == 0 ? 0 : 300, 0.0f); - if (temp_r31->unk08 != -1) { + omSetTra(arg0, 0.0f, data->player == 0 ? 0 : 300, 0.0f); + if (data->character != -1) { omSetSca(arg0, 2.5f, 2.5f, 2.5f); } else { omSetSca(arg0, 2.0f, 2.0f, 2.0f); } for (i = 0; i < 9; i++) { - if (temp_r31->unk08 != -1) { - if (temp_r31->unk00 < 4 || (i != 1 && i != 2)) { - arg0->motion[i] = CharModelMotionCreate(temp_r31->unk08, lbl_1_data_48[i] + (lbl_1_data_6C[i] ? temp_r31->unk08 : 0)); + if (data->character != -1) { + if (data->player < 4 || (i != 1 && i != 2)) { + arg0->motion[i] = CharModelMotionCreate(data->character, lbl_1_data_48[i] + (lbl_1_data_6C[i] ? data->character : 0)); } } else if (lbl_1_data_90[i] != 0) { arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_90[i]); } } - Hu3DMotionSet(arg0->model[0], arg0->motion[temp_r31->unk20]); + Hu3DMotionSet(arg0->model[0], arg0->motion[data->unk20]); Hu3DMotionTimeSet(arg0->model[0], 10.0f); Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); Hu3DModelShadowSet(arg0->model[0]); Hu3DModelAttrSet(arg0->model[0], 1U); Hu3DModelLayerSet(arg0->model[0], 1); CharModelLayerSetAll2(1); - if (temp_r31->unk08 != -1) { - CharModelDataClose(temp_r31->unk08); + if (data->character != -1) { + CharModelDataClose(data->character); } arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M458, 9)); Hu3DModelAttrSet(arg0->model[1], HU3D_MOTATTR_LOOP); @@ -1272,20 +1273,20 @@ void fn_1_5850(omObjData *arg0) Hu3DModelLayerSet(arg0->model[1], 1); Hu3DMotionSpeedSet(arg0->model[1], 0.0f); for (i = 0; i < 9; i++) { - if (temp_r31->unk00 == 0) { + if (data->player == 0) { arg0->model[i + 2] = Hu3DModelCreateFile(lbl_1_data_1E4[i]); } else { - arg0->model[i + 2] = Hu3DModelLink(lbl_1_bss_330[0]->model[i + 2]); + arg0->model[i + 2] = Hu3DModelLink(playerObjs[0]->model[i + 2]); } Hu3DMotionTimeSet(arg0->model[i + 2], 10.0f); Hu3DMotionSpeedSet(arg0->model[i + 2], 0.0f); Hu3DModelAttrSet(arg0->model[i + 2], HU3D_ATTR_DISPOFF); Hu3DModelLayerSet(arg0->model[i + 2], 1); } - lbl_1_bss_58 = temp_r31->unk00; - temp_r31->unk54 = fn_1_4474(); - Hu3DParManPosSet(temp_r31->unk54, 10000.0f, -10000.0f, 10000.0f); + lbl_1_bss_58 = data->player; + data->particle = fn_1_4474(); + Hu3DParManPosSet(data->particle, 10000.0f, -10000.0f, 10000.0f); arg0->func = fn_1_4C8; } @@ -1351,8 +1352,8 @@ void ObjectSetup(void) HuWinInit(1); lbl_1_bss_32C = omAddObjEx(lbl_1_bss_40, 0x65, 10, 0, 1, fn_1_53A0); for (i = 0; i < 9; i++) { - var_r30 = lbl_1_bss_330[i] = omAddObjEx(lbl_1_bss_40, 100, 11, 9, 0, fn_1_5850); - var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(StructBss330Data), MEMORY_DEFAULT_NUM); + var_r30 = playerObjs[i] = omAddObjEx(lbl_1_bss_40, 100, 11, 9, 0, fn_1_5850); + var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M463PlayerData), MEMORY_DEFAULT_NUM); var_r30->work[0] = i; } lbl_1_bss_354 = omAddObjEx(lbl_1_bss_40, 0x7FDA, 0, 0, -1, omOutView); @@ -1361,21 +1362,21 @@ void ObjectSetup(void) void fn_1_659C(omObjData *arg0) { - StructBss330Data *spC[9]; + M463PlayerData *spC[9]; void *sp8; s32 var_r31; s32 var_r30; for (var_r31 = 0; var_r31 < 9; var_r31++) { - spC[var_r31] = lbl_1_bss_330[var_r31]->data; - if (spC[var_r31]->unk54 != -1) { - Hu3DParManKill(spC[var_r31]->unk54); - spC[var_r31]->unk54 = -1; + spC[var_r31] = playerObjs[var_r31]->data; + if (spC[var_r31]->particle != -1) { + Hu3DParManKill(spC[var_r31]->particle); + spC[var_r31]->particle = -1; } } if (WipeStatGet() == 0) { for (var_r30 = 0; var_r30 < 9; var_r30++) { - sp8 = lbl_1_bss_330[var_r30]->data; + sp8 = playerObjs[var_r30]->data; } if (lbl_1_data_14C >= 0) { MGSeqKill(lbl_1_data_14C); From 328d10121f59c82c5f5c665699a9346144ed24ec Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 4 Feb 2025 00:44:37 -0800 Subject: [PATCH 151/178] MSL: matched printf.c (US) --- configure.py | 2 +- src/MSL_C.PPCEABI.bare.H/printf.c | 120 +++++++++++++++++++++++++++++- 2 files changed, 120 insertions(+), 2 deletions(-) diff --git a/configure.py b/configure.py index ccea1eaa..e3d65804 100644 --- a/configure.py +++ b/configure.py @@ -696,7 +696,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/mem.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/mem_funcs.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/misc_io.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/printf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/printf.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/float.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/signal.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/string.c"), diff --git a/src/MSL_C.PPCEABI.bare.H/printf.c b/src/MSL_C.PPCEABI.bare.H/printf.c index 9fa17473..5879d452 100644 --- a/src/MSL_C.PPCEABI.bare.H/printf.c +++ b/src/MSL_C.PPCEABI.bare.H/printf.c @@ -497,7 +497,125 @@ static char* longlong2str(long long num, char* pBuf, print_format fmt) return p; } -static char * double2hex(long double num, char * buff, print_format format); +static char * double2hex(long double num, char * buff, print_format format) { + char *p; + unsigned char *q; + unsigned char temp_r7; + char working_byte; + long double ld; + long exp; + print_format exp_format; + int hex_precision; + decform form; + decimal dec; + + p = buff; + ld = num; + + if (format.precision > 509) { + return 0; + } + + form.style = (char) 0; + form.digits = 0x20; + __num2dec(&form, num, &dec); + + if (*dec.sig.text == 'I') { + if (*(short*) &ld & 0x8000) { + p = buff - 5; + if (format.conversion_char == 'A') strcpy(p, "-INF"); + else strcpy(p, "-inf"); + } + else { + p = buff - 4; + if (format.conversion_char == 'A') strcpy(p, "INF"); + else strcpy(p, "inf"); + } + + return p; + } + if (*dec.sig.text == 'N') { + if (*(unsigned char*) &num & 0x80) { + p = buff - 5; + if (format.conversion_char == 'A') strcpy(p, "-NAN"); + else strcpy(p, "-nan"); + } + else { + p = buff - 4; + if (format.conversion_char == 'A') strcpy(p, "NAN"); + else strcpy(p, "nan"); + } + + return p; + } + + exp_format.justification_options = right_justification; + exp_format.sign_options = sign_always; + exp_format.precision_specified = 0; + exp_format.alternate_form = 0; + exp_format.argument_options = normal_argument; + exp_format.field_width = 0; + exp_format.precision = 1; + exp_format.conversion_char = 'd'; + + exp = (short) ((*(short*) &ld & 0x7FFF) >> 4) - 0x3FF; + p = long2str(exp, buff, exp_format); + if (format.conversion_char == 'a') + *--p = 'p'; + else + *--p = 'P'; + q = (unsigned char*) # + + for (hex_precision = format.precision; hex_precision >= 1; hex_precision--) { + temp_r7 = *(q + (hex_precision / 2 + 1)); + if (hex_precision % 2) { + working_byte = temp_r7 & 0xF; + } else { + working_byte = (temp_r7 >> 4); + } + + if (working_byte < 10) { + working_byte += '0'; + } + else + if (format.conversion_char == 'a') { + working_byte += 'a' - 10; + } + else { + working_byte += 'A' - 10; + } + + *--p = working_byte; + } + + if (TARGET_FLOAT_IMPLICIT_J_BIT){ + if (format.precision || format.alternate_form) { + *--p = '.'; + } + *--p = '1'; + } + + if (format.conversion_char == 'a') { + *--p = 'x'; + } + else { + *--p = 'X'; + } + + *--p = '0'; + + if (*((short*) &ld) & 0x8000) { + *--p = '-'; + } + else if (format.sign_options == sign_always) { + *--p = '+'; + } + else if (format.sign_options == space_holder) { + *--p = ' '; + } + + return p; +} static void round_decimal(decimal* dec, int new_length) { From 74cae4f16eb0d99c2d7f1a8dc032e3af152a8af8 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 4 Feb 2025 10:11:22 -0800 Subject: [PATCH 152/178] Fully matched MSL files (#555) --- configure.py | 2 +- .../Msl/MSL_C/MSL_Common/ctype.h | 8 +- src/MSL_C.PPCEABI.bare.H/ctype.c | 25 +-- src/MSL_C.PPCEABI.bare.H/strtoul.c | 199 ------------------ 4 files changed, 14 insertions(+), 220 deletions(-) delete mode 100644 src/MSL_C.PPCEABI.bare.H/strtoul.c diff --git a/configure.py b/configure.py index e3d65804..b3b128bd 100644 --- a/configure.py +++ b/configure.py @@ -688,7 +688,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/ansi_fp.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/arith.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/buffer_io.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/ctype.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/ctype.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/direct_io.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/file_io.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "MSL_C.PPCEABI.bare.H/FILE_POS.c"), diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h index 0bb0356e..d6a1b29d 100644 --- a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h @@ -7,9 +7,9 @@ extern "C" { #define EOF -1L -extern const unsigned char __ctype_map[]; -extern const unsigned char __lower_map[]; -extern const unsigned char __upper_map[]; +extern unsigned char __ctype_map[]; +extern unsigned char __lower_map[]; +extern unsigned char __upper_map[]; #define __control_char 0x01 #define __motion_char 0x02 @@ -31,7 +31,7 @@ extern const unsigned char __upper_map[]; int tolower(int c); int toupper(int c); -inline int isalpha(int c) +inline int _isalpha(int c) { return (int)(__ctype_map[(unsigned char)c] & __letter); } diff --git a/src/MSL_C.PPCEABI.bare.H/ctype.c b/src/MSL_C.PPCEABI.bare.H/ctype.c index e0a797cb..0a0ce04b 100644 --- a/src/MSL_C.PPCEABI.bare.H/ctype.c +++ b/src/MSL_C.PPCEABI.bare.H/ctype.c @@ -12,7 +12,7 @@ #define uhex (hexd | uppc) #define lhex (hexd | lowc) -const unsigned char __ctype_map[256] = { +unsigned char __ctype_map[256] = { // clang-format off ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, motn, motn, motn, motn, motn, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, ctrl, @@ -25,7 +25,7 @@ const unsigned char __ctype_map[256] = { // clang-format on }; -const unsigned char __lower_map[256] = { +unsigned char __lower_map[256] = { // clang-format off 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, @@ -46,7 +46,7 @@ const unsigned char __lower_map[256] = { // clang-format on }; -const unsigned char __upper_map[256] = { +unsigned char __upper_map[256] = { // clang-format off 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, @@ -67,19 +67,12 @@ const unsigned char __upper_map[256] = { // clang-format on }; +int isalpha(int __c) +{ + return __ctype_map[(unsigned char)__c] & __letter; +} + int tolower(int __c) { - if (__c == -1) - return -1; - - return __lower_map[__c & 0xff]; -} - -int toupper(int __c) -{ - - if (__c == -1) - return -1; - - return __upper_map[__c & 0xff]; + return __c == -1 ? -1 : __lower_map[(unsigned char)__c]; } diff --git a/src/MSL_C.PPCEABI.bare.H/strtoul.c b/src/MSL_C.PPCEABI.bare.H/strtoul.c deleted file mode 100644 index e40b9fac..00000000 --- a/src/MSL_C.PPCEABI.bare.H/strtoul.c +++ /dev/null @@ -1,199 +0,0 @@ -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/strtoul.h" -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ctype.h" -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/errno.h" -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/limits.h" -#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/scanf.h" - -enum scan_states { - start = 0x01, - check_for_zero = 0x02, - leading_zero = 0x04, - need_digit = 0x08, - digit_loop = 0x10, - finished = 0x20, - failure = 0x40 -}; - -#define final_state(scan_state) (scan_state & (finished | failure)) -#define success(scan_state) \ - (scan_state & (leading_zero | digit_loop | finished)) -#define fetch() (count++, (*ReadProc)(ReadProcArg, 0, __GetAChar)) -#define unfetch(c) (*ReadProc)(ReadProcArg, c, __UngetAChar) - -unsigned long __strtoul(int base, int max_width, - int (*ReadProc)(void*, int, int), void* ReadProcArg, - int* chars_scanned, int* negative, int* overflow) -{ - int scan_state = start; - int count = 0; - unsigned long value = 0; - unsigned long value_max = 0; - int c; - - *negative = *overflow = 0; - - if (base < 0 || base == 1 || base > 36 || max_width < 1) { - scan_state = failure; - } else { - c = fetch(); - } - - if (base != 0) - value_max = ULONG_MAX / base; - - while (count <= max_width && c != -1 && !final_state(scan_state)) { - switch (scan_state) { - case start: - if (isspace(c)) { - c = fetch(); - break; - } - - if (c == '+') { - c = fetch(); - } else if (c == '-') { - c = fetch(); - *negative = 1; - } - - scan_state = check_for_zero; - break; - - case check_for_zero: - if (base == 0 || base == 16) { - if (c == '0') { - scan_state = leading_zero; - c = fetch(); - break; - } - } - - scan_state = need_digit; - break; - - case 4: - if (c == 'X' || c == 'x') { - base = 16; - scan_state = need_digit; - c = fetch(); - break; - } - - if (base == 0) - base = 8; - - scan_state = digit_loop; - break; - - case need_digit: - case digit_loop: - if (base == 0) - base = 10; - - if (!value_max) { - value_max = ULONG_MAX / base; - } - - if (isdigit(c)) { - if ((c -= '0') >= base) { - if (scan_state == digit_loop) - scan_state = finished; - else - scan_state = failure; - - c += '0'; - break; - } - } else if (!isalpha(c) || (toupper(c) - 'A' + 10) >= base) { - if (scan_state == digit_loop) - scan_state = finished; - else - scan_state = failure; - - break; - } else { - c = toupper(c) - 'A' + 10; - } - - if (value > value_max) - *overflow = 1; - - value *= base; - - if (c > (ULONG_MAX - value)) - *overflow = 1; - - value += c; - scan_state = digit_loop; - c = fetch(); - break; - } - } - - if (!success(scan_state)) { - value = 0; - count = 0; - } else { - count--; - } - - *chars_scanned = count; - - unfetch(c); - - return value; -} - -unsigned long strtoul(const char* str, char** end, int base) -{ - unsigned long value; - int count, negative, overflow; - - __InStrCtrl isc; - isc.NextChar = (char*)str; - isc.NullCharDetected = 0; - - value = __strtoul(base, 0x7FFFFFFF, &__StringRead, (void*)&isc, &count, - &negative, &overflow); - - if (end) { - *end = (char*)str + count; - } - - if (overflow) { - value = ULONG_MAX; - errno = 0x22; - } else if (negative) { - value = -value; - } - - return value; -} - -long strtol(const char* str, char** end, int base) -{ - unsigned long uvalue; - long svalue; - int count, negative, overflow; - - __InStrCtrl isc; - isc.NextChar = (char*)str; - isc.NullCharDetected = 0; - - uvalue = __strtoul(base, 0x7FFFFFFF, &__StringRead, (void*)&isc, &count, - &negative, &overflow); - - if (end) { - *end = (char*)str + count; - } - - if (overflow || (!negative && uvalue > LONG_MAX) - || (negative && uvalue > -LONG_MIN)) { - svalue = (negative ? -LONG_MIN : LONG_MAX); - errno = ERANGE; - } else { - svalue = (negative ? (long)-uvalue : (long)uvalue); - } - - return svalue; -} From c15173cc669c29590dcc1f1b5117080d8c168c91 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Tue, 4 Feb 2025 15:00:13 -0500 Subject: [PATCH 153/178] name board/start.c, some m463 (#556) * end naming m463, start naming board/start.c * name everything in start, fix m463 particle names * lol fix --- .vscode/settings.json | 4 +- src/REL/m463Dll/main.c | 46 +-- src/game/board/start.c | 653 ++++++++++++++++++++--------------------- 3 files changed, 352 insertions(+), 351 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 77816237..8b2e4ab0 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -62,7 +62,9 @@ "math_ppc.h": "c", "errno.h": "c", "m427dll.h": "c", - "sprite.h": "c" + "sprite.h": "c", + "gamework_data.h": "c", + "roll.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/src/REL/m463Dll/main.c b/src/REL/m463Dll/main.c index a483b214..159940f0 100755 --- a/src/REL/m463Dll/main.c +++ b/src/REL/m463Dll/main.c @@ -52,8 +52,8 @@ typedef struct { /* 0x48 */ s32 unk48; /* 0x48 */ s32 unk4C; /* 0x50 */ s32 unk50; - /* 0x54 */ s16 particle; - /* 0x58 */ s32 particleTimer; + /* 0x54 */ s16 parMan; + /* 0x58 */ s32 parManTimer; /* 0x5C */ s32 unk5C; } M463PlayerData; // Size 0x60 @@ -625,11 +625,11 @@ void fn_1_4C8(omObjData *object) HuAudFXPlay(0x7F5); } if (temp_r27 == 8) { - if (data->particle == -1) { + if (data->parMan == -1) { lbl_1_bss_58 = data->player; - data->particle = fn_1_4474(); - Hu3DParManPosSet(data->particle, model2->pos.x, model2->pos.y, model2->pos.z); - data->particleTimer = 150; + data->parMan = fn_1_4474(); + Hu3DParManPosSet(data->parMan, model2->pos.x, model2->pos.y, model2->pos.z); + data->parManTimer = 150; } Hu3DModelAttrSet(object->model[1], HU3D_ATTR_DISPOFF); } @@ -685,9 +685,9 @@ void fn_1_4C8(omObjData *object) } } data->unk1C++; - if (data->unk1C == 60 && data->particle != -1) { - Hu3DParManKill(data->particle); - data->particle = -1; + if (data->unk1C == 60 && data->parMan != -1) { + Hu3DParManKill(data->parMan); + data->parMan = -1; } if (data->unk1C == 33) { Hu3DModelAttrSet(lbl_1_bss_32C->model[data->unk44 + 1], HU3D_MOTATTR_PAUSE); @@ -736,13 +736,13 @@ void fn_1_4C8(omObjData *object) : HU3D_MOTATTR_LOOP); data->unk20 = var_r28; } - data->particleTimer -= (data->particleTimer > -1); - if (data->particleTimer == 0) { - if (data->particle != -1) { - Hu3DParManKill(data->particle); - data->particle = -1; + data->parManTimer -= (data->parManTimer > -1); + if (data->parManTimer == 0) { + if (data->parMan != -1) { + Hu3DParManKill(data->parMan); + data->parMan = -1; } - data->particleTimer = -1; + data->parManTimer = -1; } } @@ -969,9 +969,9 @@ void fn_1_45F8(omObjData *arg0) lbl_1_bss_50++; lbl_1_bss_54 = 0; for (i = 0; i < 9; i++) { - if (sp14[i]->particle != -1) { - Hu3DParManKill(sp14[i]->particle); - sp14[i]->particle = -1; + if (sp14[i]->parMan != -1) { + Hu3DParManKill(sp14[i]->parMan); + sp14[i]->parMan = -1; } } break; @@ -1285,8 +1285,8 @@ void fn_1_5850(omObjData *arg0) Hu3DModelLayerSet(arg0->model[i + 2], 1); } lbl_1_bss_58 = data->player; - data->particle = fn_1_4474(); - Hu3DParManPosSet(data->particle, 10000.0f, -10000.0f, 10000.0f); + data->parMan = fn_1_4474(); + Hu3DParManPosSet(data->parMan, 10000.0f, -10000.0f, 10000.0f); arg0->func = fn_1_4C8; } @@ -1369,9 +1369,9 @@ void fn_1_659C(omObjData *arg0) for (var_r31 = 0; var_r31 < 9; var_r31++) { spC[var_r31] = playerObjs[var_r31]->data; - if (spC[var_r31]->particle != -1) { - Hu3DParManKill(spC[var_r31]->particle); - spC[var_r31]->particle = -1; + if (spC[var_r31]->parMan != -1) { + Hu3DParManKill(spC[var_r31]->parMan); + spC[var_r31]->parMan = -1; } } if (WipeStatGet() == 0) { diff --git a/src/game/board/start.c b/src/game/board/start.c index 61b854db..bb8617b7 100755 --- a/src/game/board/start.c +++ b/src/game/board/start.c @@ -25,21 +25,20 @@ typedef struct { struct { - u8 unk00_field0 : 1; - u8 unk00_field1 : 3; - u8 unk00_field2 : 2; - u8 unk00_field3 : 1; - u8 unk00_field4 : 1; + u8 isBoardVisible : 1; + u8 state : 3; + u8 index : 2; + u8 isActionable : 1; + u8 hasRolled : 1; }; - u8 unk01; - u8 unk02; + u8 delay; + u8 time; s8 unk03; - s8 unk04; - char unk05[1]; - s16 unk06; - s16 unk08; - s16 unk0A; - s16 unk0C; + s8 digit; + s16 yRot; + s16 diceMdl; + s16 model; + s16 diceParManId; s8 unk0E; } PlayerStartWork; @@ -134,7 +133,7 @@ static void DestroyStart(void) { } static void ExecStart(void) { - Vec sp8; + Vec pos; s32 i; BoardCameraNearFarSet(100.0f, 23000.0f); @@ -180,8 +179,8 @@ static void ExecStart(void) { for (i = 0; i < 4; i++) { BoardPlayerCornerPosSet(i); } - BoardSpacePosGet(0, GWPlayer->space_curr, &sp8); - BoardPlayerPosSetV(0, &sp8); + BoardSpacePosGet(0, GWPlayer->space_curr, &pos); + BoardPlayerPosSetV(0, &pos); BoardCameraMoveSet(0); BoardCameraViewSet(2); BoardCameraMotionWait(); @@ -225,10 +224,10 @@ static void ExecStart(void) { } static void ShowLogo(void) { - float temp_f28; - float var_f27; - s16 spA; - s16 sp8; + float scale; + float angleF; + s16 angleS; + s16 anglePosY; logoSprGrp = HuSprGrpCreate(1); BoardSpriteCreate(logoSprTbl[GWBoardGet()], 1000, 0, &logoSpr); @@ -237,26 +236,26 @@ static void ShowLogo(void) { HuSprAttrSet(logoSprGrp, 0, 8); HuSprScaleSet(logoSprGrp, 0, 0.01f, 0.01f); HuSprGrpPosSet(logoSprGrp, 288.0f, 240.0f); - for (spA = 0; spA < 90; spA += 4) { - OSs16tof32(&spA, &var_f27); - temp_f28 = sind(var_f27); - HuSprScaleSet(logoSprGrp, 0, temp_f28, temp_f28); + for (angleS = 0; angleS < 90; angleS += 4) { + OSs16tof32(&angleS, &angleF); + scale = sind(angleF); + HuSprScaleSet(logoSprGrp, 0, scale, scale); HuPrcVSleep(); } HuSprScaleSet(logoSprGrp, 0, 1.0f, 1.0f); - for (spA = 0; spA < 540; spA += 4) { - sp8 = spA % 180; - OSs16tof32(&sp8, &var_f27); - temp_f28 = 1.0 + 0.7f * sind(var_f27); - HuSprScaleSet(logoSprGrp, 0, temp_f28, temp_f28); + for (angleS = 0; angleS < 540; angleS += 4) { + anglePosY = angleS % 180; + OSs16tof32(&anglePosY, &angleF); + scale = 1.0 + 0.7f * sind(angleF); + HuSprScaleSet(logoSprGrp, 0, scale, scale); HuPrcVSleep(); } HuSprScaleSet(logoSprGrp, 0, 1.0f, 1.0f); HuPrcSleep(0x78); - for (spA = 0; spA < 90; spA += 4) { - OSs16tof32(&spA, &var_f27); - temp_f28 = cosd(var_f27); - HuSprScaleSet(logoSprGrp, 0, temp_f28, temp_f28); + for (angleS = 0; angleS < 90; angleS += 4) { + OSs16tof32(&angleS, &angleF); + scale = cosd(angleF); + HuSprScaleSet(logoSprGrp, 0, scale, scale); HuPrcVSleep(); } HuSprGrpKill(logoSprGrp); @@ -264,75 +263,75 @@ static void ShowLogo(void) { } static void FocusStart(void) { - Vec sp2C; - Vec sp20; - Vec sp14; - Vec sp8; - float var_f31; - u32 var_r31; + Vec boardPos; + Vec offset; + Vec offset2; + Vec camRot; + float zoom; + u32 i; - for (var_f31 = 14000.0f; var_f31 >= 2000.0f; var_f31 -= 50.0f) { - BoardCameraZoomSet(var_f31); + for (zoom = 14000.0f; zoom >= 2000.0f; zoom -= 50.0f) { + BoardCameraZoomSet(zoom); HuPrcVSleep(); } BoardCameraZoomSet(2000.0f); - BoardModelPosGet(camFocus, &sp2C); - sp20.x = spacePos.x + 150.0f; - sp20.y = spacePos.y + 100.0f; - sp20.z = spacePos.z + 150.0f; - VECSubtract(&sp20, &sp2C, &sp14); - sp14.x /= 120.0f; - sp14.y /= 120.0f; - sp14.z /= 120.0f; + BoardModelPosGet(camFocus, &boardPos); + offset.x = spacePos.x + 150.0f; + offset.y = spacePos.y + 100.0f; + offset.z = spacePos.z + 150.0f; + VECSubtract(&offset, &boardPos, &offset2); + offset2.x /= 120.0f; + offset2.y /= 120.0f; + offset2.z /= 120.0f; HuAudSStreamFadeOut(streamStatus, 0x1388); - for (var_r31 = 0; var_r31 < 120; var_r31++) { - VECAdd(&sp14, &sp2C, &sp2C); - BoardModelPosSetV(camFocus, &sp2C); + for (i = 0; i < 120; i++) { + VECAdd(&offset2, &boardPos, &boardPos); + BoardModelPosSetV(camFocus, &boardPos); HuPrcVSleep(); } - BoardModelPosSetV(camFocus, &sp20); - sp8.x = -22.0f; - sp8.y = 0.0f; - sp8.z = 0.0f; - BoardCameraMotionStartEx(camFocus, &sp8, NULL, 1500.0f, -1.0f, 21); + BoardModelPosSetV(camFocus, &offset); + camRot.x = -22.0f; + camRot.y = 0.0f; + camRot.z = 0.0f; + BoardCameraMotionStartEx(camFocus, &camRot, NULL, 1500.0f, -1.0f, 21); } static void CreatePlayerStart(void) { - Vec spC; - float temp_f30; - omObjData *var_r29; - PlayerStartWork *var_r30; + Vec boardPos; + float offsetX; + omObjData *boardObj; + PlayerStartWork *boardData; s8 i; - BoardModelPosGet(camFocus, &spC); + BoardModelPosGet(camFocus, &boardPos); for (i = 0; i < 4; i++) { playerOrderOld[i] = i; - var_r29 = omAddObjEx(boardObjMan, 0x100, 0, 0, -1, ExecPlayerStart); - playerStartObj[i] = var_r29; - var_r30 = OM_GET_WORK_PTR(var_r29, PlayerStartWork); - var_r30->unk00_field0 = 0; - var_r30->unk00_field2 = i; - var_r30->unk03 = -1; - var_r30->unk0A = -1; - var_r30->unk0C = -1; - var_r30->unk00_field1 = 1; - var_r30->unk01 = i * 30; - var_r30->unk00_field3 = 0; - var_r30->unk00_field4 = 0; - var_r30->unk06 = 2; - var_r30->unk04 = 1; - var_r30->unk0E = 0x3C; - var_r30->unk08 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x18), NULL, 0); - BoardModelVisibilitySet(var_r30->unk08, 0); - BoardModelMotionSpeedSet(var_r30->unk08, 0.0f); - OSs8tof32(&i, &temp_f30); - temp_f30 = 135.0f * (temp_f30 - 2.0f + 0.5f); - BoardModelVisibilitySet(BoardPlayerModelGet(playerOrderOld[var_r30->unk00_field2]), 1); - var_r29->trans.x = spC.x + temp_f30; - var_r29->trans.y = spC.y + 700.0f; - var_r29->trans.z = spC.z + 100.0f; - BoardPlayerPosSet(playerOrderOld[var_r30->unk00_field2], var_r29->trans.x, var_r29->trans.y, var_r29->trans.z); - BoardPlayerMotionShiftSet(playerOrderOld[var_r30->unk00_field2], 4, 10.0f, 1.0f, HU3D_MOTATTR_NONE); + boardObj = omAddObjEx(boardObjMan, 0x100, 0, 0, -1, ExecPlayerStart); + playerStartObj[i] = boardObj; + boardData = OM_GET_WORK_PTR(boardObj, PlayerStartWork); + boardData->isBoardVisible = 0; + boardData->index = i; + boardData->unk03 = -1; + boardData->model = -1; + boardData->diceParManId = -1; + boardData->state = 1; + boardData->delay = i * 30; + boardData->isActionable = 0; + boardData->hasRolled = 0; + boardData->yRot = 2; + boardData->digit = 1; + boardData->unk0E = 0x3C; + boardData->diceMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x18), NULL, 0); + BoardModelVisibilitySet(boardData->diceMdl, 0); + BoardModelMotionSpeedSet(boardData->diceMdl, 0.0f); + OSs8tof32(&i, &offsetX); + offsetX = 135.0f * (offsetX - 2.0f + 0.5f); + BoardModelVisibilitySet(BoardPlayerModelGet(playerOrderOld[boardData->index]), 1); + boardObj->trans.x = boardPos.x + offsetX; + boardObj->trans.y = boardPos.y + 700.0f; + boardObj->trans.z = boardPos.z + 100.0f; + BoardPlayerPosSet(playerOrderOld[boardData->index], boardObj->trans.x, boardObj->trans.y, boardObj->trans.z); + BoardPlayerMotionShiftSet(playerOrderOld[boardData->index], 4, 10.0f, 1.0f, HU3D_MOTATTR_NONE); } if (!_CheckFlag(FLAG_ID_MAKE(1, 11))) { BoardMusStart(0, 0xC, 0x7F, 0); @@ -342,107 +341,107 @@ static void CreatePlayerStart(void) { } } -static void ExecPlayerStart(omObjData *arg0) { - PlayerStartWork *temp_r31 = OM_GET_WORK_PTR(arg0, PlayerStartWork); +static void ExecPlayerStart(omObjData *object) { + PlayerStartWork *data = OM_GET_WORK_PTR(object, PlayerStartWork); - if (temp_r31->unk00_field0 != 0 || BoardIsKill()) { - if (hitFX[temp_r31->unk00_field2] != -1) { - HuAudFXStop(hitFX[temp_r31->unk00_field2]); - hitFX[temp_r31->unk00_field2] = -1; + if (data->isBoardVisible != 0 || BoardIsKill()) { + if (hitFX[data->index] != -1) { + HuAudFXStop(hitFX[data->index]); + hitFX[data->index] = -1; } - playerStartObj[temp_r31->unk00_field2] = NULL; - omDelObjEx(HuPrcCurrentGet(), arg0); + playerStartObj[data->index] = NULL; + omDelObjEx(HuPrcCurrentGet(), object); return; } - if (temp_r31->unk01 != 0) { - temp_r31->unk01--; + if (data->delay != 0) { + data->delay--; return; } - switch (temp_r31->unk00_field1) { + switch (data->state) { case 0: break; case 1: - PlayerFall(arg0, temp_r31); + PlayerFall(object, data); break; case 2: - PlayerWaitSpeak(arg0, temp_r31); + PlayerWaitSpeak(object, data); break; case 3: - PlayerDiceFall(arg0, temp_r31); + PlayerDiceFall(object, data); break; case 4: - PlayerDiceRoll(arg0, temp_r31); + PlayerDiceRoll(object, data); break; case 5: - PlayerDiceNumShow(arg0, temp_r31); + PlayerDiceNumShow(object, data); break; case 6: - PlayerDiceNumHide(arg0, temp_r31); + PlayerDiceNumHide(object, data); break; } } -static void PlayerFall(omObjData *arg0, PlayerStartWork *arg1) { +static void PlayerFall(omObjData *object, PlayerStartWork *data) { float temp_f31; - if (arg1->unk00_field3 != 0) { - SetPlayerStartState(playerOrderOld[arg1->unk00_field2], 0); - BoardPlayerIdleSet(playerOrderOld[arg1->unk00_field2]); - if (_CheckFlag(FLAG_ID_MAKE(1, 11)) && arg1->unk00_field2 == 3) { + if (data->isActionable != 0) { + SetPlayerStartState(playerOrderOld[data->index], 0); + BoardPlayerIdleSet(playerOrderOld[data->index]); + if (_CheckFlag(FLAG_ID_MAKE(1, 11)) && data->index == 3) { BoardTutorialHookExec(0, 0); } return; } - if (arg1->unk02 > 200) { - arg1->unk02 = -56; + if (data->time > 200) { + data->time = -56; } - OSu8tof32(&arg1->unk02, &temp_f31); - arg0->trans.y += -0.08166667f * temp_f31 * temp_f31; - if (arg0->trans.y < spacePos.y) { - arg0->trans.y = spacePos.y; - arg1->unk02 = 0; - BoardPlayerMotionShiftSet(playerOrderOld[arg1->unk00_field2], 5, 0.0f, 4.0f, HU3D_MOTATTR_NONE); - arg1->unk01 = 0xC; - arg1->unk00_field3 = 1; + OSu8tof32(&data->time, &temp_f31); + object->trans.y += -0.08166667f * temp_f31 * temp_f31; + if (object->trans.y < spacePos.y) { + object->trans.y = spacePos.y; + data->time = 0; + BoardPlayerMotionShiftSet(playerOrderOld[data->index], 5, 0.0f, 4.0f, HU3D_MOTATTR_NONE); + data->delay = 0xC; + data->isActionable = 1; } - arg1->unk02++; - BoardPlayerPosSet(playerOrderOld[arg1->unk00_field2], arg0->trans.x, arg0->trans.y, arg0->trans.z); + data->time++; + BoardPlayerPosSet(playerOrderOld[data->index], object->trans.x, object->trans.y, object->trans.z); } -static void PlayerWaitSpeak(omObjData *arg0, PlayerStartWork *arg1) { - float var_f31; +static void PlayerWaitSpeak(omObjData *object, PlayerStartWork *data) { + float yRot; - if (arg1->unk02 == 0) { - var_f31 = 180.0f + BoardPlayerRotYGet(playerOrderOld[arg1->unk00_field2]); - BoardPlayerMotBlendSet(playerOrderOld[arg1->unk00_field2], var_f31, 0xF); - arg1->unk02 = 1; + if (data->time == 0) { + yRot = 180.0f + BoardPlayerRotYGet(playerOrderOld[data->index]); + BoardPlayerMotBlendSet(playerOrderOld[data->index], yRot, 0xF); + data->time = 1; return; } - if (BoardPlayerMotBlendCheck(playerOrderOld[arg1->unk00_field2])) { - BoardPlayerIdleSet(playerOrderOld[arg1->unk00_field2]); - SetPlayerStartState(playerOrderOld[arg1->unk00_field2], 0); + if (BoardPlayerMotBlendCheck(playerOrderOld[data->index])) { + BoardPlayerIdleSet(playerOrderOld[data->index]); + SetPlayerStartState(playerOrderOld[data->index], 0); } } -static void PlayerDiceFall(omObjData *arg0, PlayerStartWork *arg1) { - Vec sp8; - float var_f31; - float var_f30; +static void PlayerDiceFall(omObjData *object, PlayerStartWork *data) { + Vec boardPos; + float max; + float min; s32 i; - if (arg1->unk02 == 0) { + if (data->time == 0) { HuAudFXPlay(0x302); - BoardPlayerPosGet(playerOrderOld[arg1->unk00_field2], &sp8); - var_f30 = 250.0f; - var_f31 = 700.0f; - arg0->rot.x = (var_f30 - var_f31) / 30.0f; - sp8.y += var_f31; - BoardModelPosSetV(arg1->unk08, &sp8); - BoardModelVisibilitySet(arg1->unk08, 1); + BoardPlayerPosGet(playerOrderOld[data->index], &boardPos); + min = 250.0f; + max = 700.0f; + object->rot.x = (min - max) / 30.0f; + boardPos.y += max; + BoardModelPosSetV(data->diceMdl, &boardPos); + BoardModelVisibilitySet(data->diceMdl, 1); } else { - if (arg1->unk02 > 30.0f) { + if (data->time > 30.0f) { if (_CheckFlag(FLAG_ID_MAKE(1, 11))) { - if (arg1->unk00_field2 == 3) { + if (data->index == 3) { BoardTutorialHookExec(1, 0); for (i = 0; i < 4; i++) { SetPlayerStartState(playerOrderOld[i], 4); @@ -450,14 +449,14 @@ static void PlayerDiceFall(omObjData *arg0, PlayerStartWork *arg1) { } return; } - SetPlayerStartState(playerOrderOld[arg1->unk00_field2], 4); + SetPlayerStartState(playerOrderOld[data->index], 4); return; } - BoardModelPosGet(arg1->unk08, &sp8); - sp8.y += arg0->rot.x; - BoardModelPosSetV(arg1->unk08, &sp8); + BoardModelPosGet(data->diceMdl, &boardPos); + boardPos.y += object->rot.x; + BoardModelPosSetV(data->diceMdl, &boardPos); } - arg1->unk02++; + data->time++; } static s32 digitMdlTbl[9] = { @@ -472,177 +471,177 @@ static s32 playerOrderMesTbl[3] = { MAKE_MESSID(0x15, 0x15) }; -static void PlayerDiceRoll(omObjData *arg0, PlayerStartWork *arg1) { - Vec sp8; - float var_f30; - u32 var_r28; - s8 var_r29; - s8 temp_r26; +static void PlayerDiceRoll(omObjData *object, PlayerStartWork *data) { + Vec boardPos; + float time; + u32 jumpCheck; + s8 player; + s8 digit; - var_r28 = 0; - if (arg1->unk02 > arg1->unk06) { - arg1->unk02 = 0; - temp_r26 = arg1->unk04; + jumpCheck = 0; + if (data->time > data->yRot) { + data->time = 0; + digit = data->digit; do { - arg1->unk04 = BoardRandMod(9); - } while (arg1->unk04 == temp_r26); - OSs8tof32(&arg1->unk04, &var_f30); - BoardModelMotionTimeSet(arg1->unk08, var_f30 + 0.5f); + data->digit = BoardRandMod(9); + } while (data->digit == digit); + OSs8tof32(&data->digit, &time); + BoardModelMotionTimeSet(data->diceMdl, time + 0.5f); } - if (arg1->unk00_field4 == 0) { - if (GWPlayer[playerOrderOld[arg1->unk00_field2]].com) { + if (data->hasRolled == 0) { + if (GWPlayer[playerOrderOld[data->index]].com) { if (_CheckFlag(FLAG_ID_MAKE(1, 11))) { - if (arg1->unk0E != 0) { - arg1->unk0E--; + if (data->unk0E != 0) { + data->unk0E--; } else { - var_r28 = 0x100; + jumpCheck = PAD_BUTTON_A; } } else if (BoardRandMod(100) < 5) { - var_r28 = 0x100; + jumpCheck = PAD_BUTTON_A; } } else { - var_r28 = HuPadBtnDown[GWPlayer[playerOrderOld[arg1->unk00_field2]].port]; + jumpCheck = HuPadBtnDown[GWPlayer[playerOrderOld[data->index]].port]; } - if (var_r28 == 0x100) { - BoardPlayerDiceJumpStart(playerOrderOld[arg1->unk00_field2]); - arg1->unk00_field4 = 1; + if (jumpCheck == PAD_BUTTON_A) { + BoardPlayerDiceJumpStart(playerOrderOld[data->index]); + data->hasRolled = 1; } } else { - if (BoardPlayerDiceJumpCheck(playerOrderOld[arg1->unk00_field2])) { - SetPlayerStartState(playerOrderOld[arg1->unk00_field2], 5); - arg1->unk06 = 360; - arg0->rot.x = arg0->rot.y = 1.0f; - arg1->unk04 = BoardRandMod(9); + if (BoardPlayerDiceJumpCheck(playerOrderOld[data->index])) { + SetPlayerStartState(playerOrderOld[data->index], 5); + data->yRot = 360; + object->rot.x = object->rot.y = 1.0f; + data->digit = BoardRandMod(9); HuAudFXPlay(0x303); - if (hitFX[arg1->unk00_field2] != -1) { - HuAudFXStop(hitFX[arg1->unk00_field2]); - hitFX[arg1->unk00_field2] = -1; + if (hitFX[data->index] != -1) { + HuAudFXStop(hitFX[data->index]); + hitFX[data->index] = -1; } - var_r29 = 0; - while (var_r29 < 4) { - if (playerOrderNew[var_r29] == arg1->unk04 && var_r29 != playerOrderOld[arg1->unk00_field2]) { - arg1->unk04 = BoardRandMod(9); - var_r29 = 0; + player = 0; + while (player < 4) { + if (playerOrderNew[player] == data->digit && player != playerOrderOld[data->index]) { + data->digit = BoardRandMod(9); + player = 0; } else { - var_r29++; + player++; } } if (_CheckFlag(FLAG_ID_MAKE(1, 11))) { - arg1->unk04 = tutorialRollTbl[arg1->unk00_field2]; + data->digit = tutorialRollTbl[data->index]; } - playerOrderNew[playerOrderOld[arg1->unk00_field2]] = arg1->unk04; - arg1->unk0A = BoardModelCreate(digitMdlTbl[arg1->unk04], NULL, 0); - BoardModelPosGet(arg1->unk08, &sp8); - sp8.x += 50.0 * sin(0.0); - sp8.z += 50.0 * cos(0.0); - BoardModelPosSetV(arg1->unk0A, &sp8); - BoardModelMotionStart(arg1->unk0A, 0, 0); - BoardModelMotionSpeedSet(arg1->unk0A, 0.0f); - BoardModelMotionTimeSet(arg1->unk0A, 0.0f); - BoardModelLayerSet(arg1->unk0A, 2); - arg1->unk0C = BoardDiceEffectCreate(); - Hu3DParManPosSet(arg1->unk0C, sp8.x, sp8.y, sp8.z); - Hu3DParManTimeLimitSet(arg1->unk0C, 0x96); - BoardModelVisibilitySet(arg1->unk08, 0); + playerOrderNew[playerOrderOld[data->index]] = data->digit; + data->model = BoardModelCreate(digitMdlTbl[data->digit], NULL, 0); + BoardModelPosGet(data->diceMdl, &boardPos); + boardPos.x += 50.0 * sin(0.0); + boardPos.z += 50.0 * cos(0.0); + BoardModelPosSetV(data->model, &boardPos); + BoardModelMotionStart(data->model, 0, 0); + BoardModelMotionSpeedSet(data->model, 0.0f); + BoardModelMotionTimeSet(data->model, 0.0f); + BoardModelLayerSet(data->model, 2); + data->diceParManId = BoardDiceEffectCreate(); + Hu3DParManPosSet(data->diceParManId, boardPos.x, boardPos.y, boardPos.z); + Hu3DParManTimeLimitSet(data->diceParManId, 0x96); + BoardModelVisibilitySet(data->diceMdl, 0); return; } } - arg1->unk02++; + data->time++; } -static void PlayerDiceNumShow(omObjData *arg0, PlayerStartWork *arg1) { - float var_f30; +static void PlayerDiceNumShow(omObjData *object, PlayerStartWork *data) { + float yRot; - arg1->unk06 -= 18; - if (arg1->unk06 < 0) { - arg1->unk06 = 0; - SetPlayerStartState(playerOrderOld[arg1->unk00_field2], 0); + data->yRot -= 18; + if (data->yRot < 0) { + data->yRot = 0; + SetPlayerStartState(playerOrderOld[data->index], 0); if (_CheckFlag(FLAG_ID_MAKE(1, 11))) { BoardTutorialHookExec(2, 0); } } - OSs16tof32(&arg1->unk06, &var_f30); - BoardModelRotYSet(arg1->unk0A, var_f30); + OSs16tof32(&data->yRot, &yRot); + BoardModelRotYSet(data->model, yRot); } -static void PlayerDiceNumHide(omObjData *arg0, PlayerStartWork *arg1) { - float var_f28; +static void PlayerDiceNumHide(omObjData *object, PlayerStartWork *data) { + float yRot; - switch (arg1->unk02) { + switch (data->time) { case 0: - arg1->unk06 += 18; - if (arg1->unk06 > 360) { - arg1->unk06 = 0; - arg1->unk02 = 1; - arg0->rot.x = 1.0f; - arg0->rot.y = 1.0f; + data->yRot += 18; + if (data->yRot > 360) { + data->yRot = 0; + data->time = 1; + object->rot.x = 1.0f; + object->rot.y = 1.0f; } - OSs16tof32(&arg1->unk06, &var_f28); - BoardModelRotYSet(arg1->unk0A, var_f28); + OSs16tof32(&data->yRot, &yRot); + BoardModelRotYSet(data->model, yRot); return; case 1: - arg1->unk06 += 9; - if (arg1->unk06 > 180) { - arg1->unk06 = 0; - arg1->unk02 = 2; + data->yRot += 9; + if (data->yRot > 180) { + data->yRot = 0; + data->time = 2; } - OSs16tof32(&arg1->unk06, &var_f28); - arg0->rot.x = 1.0 + 1.3f * sind(var_f28); + OSs16tof32(&data->yRot, &yRot); + object->rot.x = 1.0 + 1.3f * sind(yRot); break; case 2: - arg1->unk06 += 9; - if (arg1->unk06 > 180) { - arg1->unk06 = 179; - arg1->unk02 = 3; + data->yRot += 9; + if (data->yRot > 180) { + data->yRot = 179; + data->time = 3; } - OSs16tof32(&arg1->unk06, &var_f28); - arg0->rot.x = cosd(0.5f * var_f28); - arg0->rot.y = 1.0 + 1.3f * sind(var_f28); + OSs16tof32(&data->yRot, &yRot); + object->rot.x = cosd(0.5f * yRot); + object->rot.y = 1.0 + 1.3f * sind(yRot); break; case 3: - BoardModelVisibilitySet(arg1->unk0A, 0); - arg1->unk00_field0 = 1; + BoardModelVisibilitySet(data->model, 0); + data->isBoardVisible = 1; return; } - BoardModelScaleSet(arg1->unk0A, arg0->rot.x, arg0->rot.y, 1.0f); + BoardModelScaleSet(data->model, object->rot.x, object->rot.y, 1.0f); } -static void SetPlayerStartState(s32 arg0, s32 arg1) { - PlayerStartWork *temp_r31; - omObjData *temp_r30; +static void SetPlayerStartState(s32 player, s32 state) { + PlayerStartWork *data; + omObjData *object; - temp_r30 = playerStartObj[arg0]; - temp_r31 = OM_GET_WORK_PTR(temp_r30, PlayerStartWork); - temp_r31->unk00_field1 = arg1; - temp_r31->unk02 = 0; - temp_r31->unk01 = 0; - switch (arg1) { + object = playerStartObj[player]; + data = OM_GET_WORK_PTR(object, PlayerStartWork); + data->state = state; + data->time = 0; + data->delay = 0; + switch (state) { case 4: - hitFX[arg0] = HuAudFXPlay(0x300); + hitFX[player] = HuAudFXPlay(0x300); break; case 5: break; case 6: - temp_r31->unk06 = 0; + data->yRot = 0; break; } } -static s32 GetPlayerStartState(s32 arg0) { - PlayerStartWork *temp_r31; - omObjData *temp_r30; +static s32 GetPlayerStartState(s32 player) { + PlayerStartWork *data; + omObjData *object; - temp_r30 = playerStartObj[arg0]; - temp_r31 = OM_GET_WORK_PTR(temp_r30, PlayerStartWork); - return temp_r31->unk00_field1; + object = playerStartObj[player]; + data = OM_GET_WORK_PTR(object, PlayerStartWork); + return data->state; } static void ExecStartRoll(void) { s32 sp84[] = { 0, 1, 2, 3, 4, 5, 6, 7 }; - s32 var_r29; - s32 var_r23; - s32 var_r22; - s32 var_r24; + s32 id; + s32 time; + s32 coinCount; + s32 j; s32 i; if (!_CheckFlag(FLAG_ID_MAKE(1, 11))) { @@ -653,11 +652,11 @@ static void ExecStartRoll(void) { HuPrcVSleep(); } _CheckFlag(FLAG_ID_MAKE(1, 11)); - var_r29 = startMesTbl[GWBoardGet()][0]; - BoardWinCreate(2, var_r29, BoardWinPortraitGetStar()); + id = startMesTbl[GWBoardGet()][0]; + BoardWinCreate(2, id, BoardWinPortraitGetStar()); BoardWinWait(); - var_r29 = startMesTbl[GWBoardGet()][1]; - BoardWinCreate(2, var_r29, BoardWinPortraitGetStar()); + id = startMesTbl[GWBoardGet()][1]; + BoardWinCreate(2, id, BoardWinPortraitGetStar()); BoardWinWait(); BoardWinKill(); for (i = 0; i < 4; i++) { @@ -695,11 +694,11 @@ static void ExecStartRoll(void) { BoardTutorialHookExec(3, i); } else { if (i == 0) { - var_r29 = startMesTbl[GWBoardGet()][2]; + id = startMesTbl[GWBoardGet()][2]; } else { - var_r29 = playerOrderMesTbl[i - 1]; + id = playerOrderMesTbl[i - 1]; } - BoardWinCreate(0, var_r29, -1); + BoardWinCreate(0, id, -1); BoardWinInsertMesSet(BoardPlayerGetCharMess(i), i); BoardWinWait(); } @@ -716,23 +715,23 @@ static void ExecStartRoll(void) { BoardPlayerIdleSet(i); } if (!_CheckFlag(FLAG_ID_MAKE(1, 11))) { - var_r29 = startMesTbl[GWBoardGet()][3]; - BoardWinCreate(2, var_r29, BoardWinPortraitGetStar()); + id = startMesTbl[GWBoardGet()][3]; + BoardWinCreate(2, id, BoardWinPortraitGetStar()); BoardWinWait(); HuPrcSleep(30); if (GWBoardGet() == BOARD_ID_EXTRA1 || GWBoardGet() == BOARD_ID_EXTRA2) { - var_r22 = 100; - var_r23 = 1; + coinCount = 100; + time = 1; } else { - var_r22 = 10; - var_r23 = 6; + coinCount = 10; + time = 6; } - for (i = 0; i < var_r22; i++) { - for (var_r24 = 0; var_r24 < 4; var_r24++) { - BoardPlayerCoinsAdd(var_r24, 1); + for (i = 0; i < coinCount; i++) { + for (j = 0; j < 4; j++) { + BoardPlayerCoinsAdd(j, 1); } HuAudFXPlay(7); - HuPrcSleep(var_r23); + HuPrcSleep(time); } for (i = 0; i < 4; i++) { BoardPlayerMotionShiftSet(i, 7, 0.0f, 8.0f, HU3D_MOTATTR_NONE); @@ -749,16 +748,16 @@ static void ExecStartRoll(void) { for (i = 0; i < 4; i++) { BoardPlayerIdleSet(i); } - var_r29 = startMesTbl[GWBoardGet()][4]; - BoardWinCreate(2, var_r29, BoardWinPortraitGetStar()); + id = startMesTbl[GWBoardGet()][4]; + BoardWinCreate(2, id, BoardWinPortraitGetStar()); BoardWinWait(); BoardWinKill(); } } static void InitCamera(void) { - Vec sp14; - Vec sp8; + Vec offset; + Vec rotTarget; camStartFocusPos.x = 0.0f; camStartFocusPos.y = 100.0f; @@ -793,96 +792,96 @@ static void InitCamera(void) { BoardModelPosSetV(camFocus, &camStartFocusPos); if (_CheckFlag(FLAG_ID_MAKE(1, 11))) { BoardCameraMoveSet(0); - sp14.x = spacePos.x + 150.0f; - sp14.y = spacePos.y + 100.0f; - sp14.z = spacePos.z + 150.0f; - BoardModelPosSetV(camFocus, &sp14); - sp8.x = -22.0f; - sp8.y = 0.0f; - sp8.z = 0.0f; - sp14.x = sp14.y = sp14.z = 0.0f; - BoardCameraMotionStartEx(camFocus, &sp8, NULL, 1500.0f, -1.0f, 1); + offset.x = spacePos.x + 150.0f; + offset.y = spacePos.y + 100.0f; + offset.z = spacePos.z + 150.0f; + BoardModelPosSetV(camFocus, &offset); + rotTarget.x = -22.0f; + rotTarget.y = 0.0f; + rotTarget.z = 0.0f; + offset.x = offset.y = offset.z = 0.0f; + BoardCameraMotionStartEx(camFocus, &rotTarget, NULL, 1500.0f, -1.0f, 1); BoardCameraMotionWait(); BoardCameraMoveSet(1); } else { - sp14.x = 0.0f; - sp14.y = 0.0f; - sp14.z = 0.0f; - sp8.x = -70.0f; - sp8.y = 0.0f; - sp8.z = 0.0f; + offset.x = 0.0f; + offset.y = 0.0f; + offset.z = 0.0f; + rotTarget.x = -70.0f; + rotTarget.y = 0.0f; + rotTarget.z = 0.0f; BoardCameraMoveSet(0); - BoardCameraMotionStartEx(camFocus, &sp8, &sp14, 14000.0f, -1.0f, 1); + BoardCameraMotionStartEx(camFocus, &rotTarget, &offset, 14000.0f, -1.0f, 1); BoardCameraMotionWait(); BoardCameraMoveSet(1); } } static void InitHost(void) { - Vec sp8; + Vec newPos; if (!_CheckFlag(FLAG_ID_MAKE(1, 11))) { hostMdl = BoardStarHostMdlGet(); - sp8.x = spacePos.x + 150.0f; - sp8.y = spacePos.y; - sp8.z = spacePos.z - 50.0f; - BoardModelPosSetV(hostMdl, &sp8); + newPos.x = spacePos.x + 150.0f; + newPos.y = spacePos.y; + newPos.z = spacePos.z - 50.0f; + BoardModelPosSetV(hostMdl, &newPos); BoardModelVisibilitySet(hostMdl, 1); BoardModelMotionStart(hostMdl, 1, 0x40000001); } } static void CreateTapWin(void) { - float sp8[2]; - float var_f31; - float var_f30; - s32 var_r31; + float dimensions[2]; + float x; + float y; + s32 id; if (!_CheckFlag(FLAG_ID_MAKE(1, 11))) { - var_r31 = MAKE_MESSID(0x12, 0x14); - HuWinMesMaxSizeGet(1, sp8, var_r31); - var_f31 = -10000.0f; - var_f30 = 368.0f; - tapWin = HuWinCreate(var_f31, var_f30, sp8[0], sp8[1], 0); + id = MAKE_MESSID(0x12, 0x14); + HuWinMesMaxSizeGet(1, dimensions, id); + x = -10000.0f; + y = 368.0f; + tapWin = HuWinCreate(x, y, dimensions[0], dimensions[1], 0); HuWinBGTPLvlSet(tapWin, 0.0f); HuWinMesSpeedSet(tapWin, 0); - HuWinMesSet(tapWin, var_r31); + HuWinMesSet(tapWin, id); HuWinDispOff(tapWin); } } static void OrderPlayers(void) { - s32 temp_r29; - PlayerConfig *temp_r28; - PlayerState *temp_r27; + s32 pOrderTemp; + PlayerConfig *playerCfg; + PlayerState *state; s32 i; s32 j; - temp_r28 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(GWPlayerCfg), MEMORY_DEFAULT_NUM); - temp_r27 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(GWPlayer), MEMORY_DEFAULT_NUM); + playerCfg = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(GWPlayerCfg), MEMORY_DEFAULT_NUM); + state = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(GWPlayer), MEMORY_DEFAULT_NUM); for (i = 0; i < 4; i++) { playerOrderOld[i] = i; - memcpy(temp_r28 + i, &GWPlayerCfg[i], sizeof(PlayerConfig)); - memcpy(temp_r27 + i, &GWPlayer[i], sizeof(PlayerState)); + memcpy(playerCfg + i, &GWPlayerCfg[i], sizeof(PlayerConfig)); + memcpy(state + i, &GWPlayer[i], sizeof(PlayerState)); } for (i = 0; i < 3; i++) { for (j = 3; j > i; j--) { if (playerOrderNew[j - 1] < playerOrderNew[j]) { - temp_r29 = playerOrderNew[j]; + pOrderTemp = playerOrderNew[j]; playerOrderNew[j] = playerOrderNew[j - 1]; - playerOrderNew[j - 1] = temp_r29; - temp_r29 = playerOrderOld[j]; + playerOrderNew[j - 1] = pOrderTemp; + pOrderTemp = playerOrderOld[j]; playerOrderOld[j] = playerOrderOld[j - 1]; - playerOrderOld[j - 1] = temp_r29; + playerOrderOld[j - 1] = pOrderTemp; } } } for (i = 0; i < 4; i++) { - memcpy(&GWPlayerCfg[i], temp_r28 + playerOrderOld[i], sizeof(PlayerConfig)); - memcpy(&GWPlayer[i], temp_r27 + playerOrderOld[i], sizeof(PlayerState)); + memcpy(&GWPlayerCfg[i], playerCfg + playerOrderOld[i], sizeof(PlayerConfig)); + memcpy(&GWPlayer[i], state + playerOrderOld[i], sizeof(PlayerState)); GWPlayer[i].port = GWPlayerCfg[i].pad_idx; GWPlayerCfg[i].pad_idx = GWPlayerCfg[i].pad_idx; } - HuMemDirectFree(temp_r28); - HuMemDirectFree(temp_r27); + HuMemDirectFree(playerCfg); + HuMemDirectFree(state); } From d340ccf0618f81b0d83a91c7a514f0194fc0a580 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Tue, 4 Feb 2025 17:54:29 -0800 Subject: [PATCH 154/178] Making some Runtime progress (#557) --- config/GMPE01_00/rels/m463Dll/symbols.txt | 2 +- config/GMPE01_00/splits.txt | 4 +- config/GMPE01_00/symbols.txt | 8 +- config/GMPE01_01/splits.txt | 4 +- configure.py | 12 +- .../Runtime/Gecko_ExceptionPPC.h | 231 ++++ .../Runtime/NMWException.h | 22 +- .../PowerPC_EABI_Support/Runtime/exception.h | 38 + src/MSL_C.PPCEABI.bare.H/abort_exit.c | 1 - src/Runtime.PPCEABI.H/GCN_mem_alloc.c | 30 + src/Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp | 1052 +++++++++++++++++ src/Runtime.PPCEABI.H/NMWException.cpp | 157 +++ 12 files changed, 1537 insertions(+), 24 deletions(-) create mode 100755 include/PowerPC_EABI_Support/Runtime/Gecko_ExceptionPPC.h create mode 100755 include/PowerPC_EABI_Support/Runtime/exception.h create mode 100755 src/Runtime.PPCEABI.H/GCN_mem_alloc.c create mode 100755 src/Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp create mode 100755 src/Runtime.PPCEABI.H/NMWException.cpp diff --git a/config/GMPE01_00/rels/m463Dll/symbols.txt b/config/GMPE01_00/rels/m463Dll/symbols.txt index 351f689b..e336c47f 100644 --- a/config/GMPE01_00/rels/m463Dll/symbols.txt +++ b/config/GMPE01_00/rels/m463Dll/symbols.txt @@ -157,7 +157,7 @@ lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x2D0 lbl_1_bss_32C = .bss:0x0000032C; // type:object size:0x4 data:4byte -lbl_1_bss_330 = .bss:0x00000330; // type:object size:0x24 data:4byte +lbl_1_bss_330 = .bss:0x00000330; // type:object size:0x24 scope:local data:4byte lbl_1_bss_354 = .bss:0x00000354; // type:object size:0x4 data:4byte lbl_1_bss_358 = .bss:0x00000358; // type:object size:0x4 data:4byte lbl_1_bss_35C = .bss:0x0000035C; // type:object size:0x1C0 data:4byte diff --git a/config/GMPE01_00/splits.txt b/config/GMPE01_00/splits.txt index d7d8237a..4751f858 100644 --- a/config/GMPE01_00/splits.txt +++ b/config/GMPE01_00/splits.txt @@ -955,7 +955,7 @@ Runtime.PPCEABI.H/NewMore.cp: .data start:0x8013E208 end:0x8013E218 .sdata start:0x801D39A0 end:0x801D39A8 -Runtime.PPCEABI.H/NMWException.cp: +Runtime.PPCEABI.H/NMWException.cpp: extab start:0x80005650 end:0x80005670 extabindex start:0x80005718 end:0x80005748 .text start:0x800E2108 end:0x800E23CC @@ -971,7 +971,7 @@ Runtime.PPCEABI.H/__init_cpp_exceptions.cpp: .dtors start:0x8011DCE0 end:0x8011DCE8 .sdata start:0x801D39B0 end:0x801D39B8 -Runtime.PPCEABI.H/Gecko_ExceptionPPC.cp: +Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp: extab start:0x80005670 end:0x800056E4 extabindex start:0x80005748 end:0x8000579C .text start:0x800E2B24 end:0x800E3F5C diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index d4d7595a..43ae5aae 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -3646,10 +3646,10 @@ __THPAANScaleFactor = .rodata:0x8011E490; // type:object size:0x40 data:byte lbl_8011E4D0 = .rodata:0x8011E4D0; // type:object size:0x10 lbl_8011E4E0 = .rodata:0x8011E4E0; // type:object size:0x10 __constants = .rodata:0x8011E4F0; // type:object size:0x18 scope:local data:double -lbl_8011E508 = .rodata:0x8011E508; // type:object size:0x54 -lbl_8011E55C = .rodata:0x8011E55C; // type:object size:0x14 -lbl_8011E570 = .rodata:0x8011E570; // type:object size:0x10 -lbl_8011E580 = .rodata:0x8011E580; // type:object size:0x20 +lbl_8011E508 = .rodata:0x8011E508; // type:object size:0x54 data:string +lbl_8011E55C = .rodata:0x8011E55C; // type:object size:0x14 data:string +lbl_8011E570 = .rodata:0x8011E570; // type:object size:0x10 data:string +lbl_8011E580 = .rodata:0x8011E580; // type:object size:0x20 data:string lbl_8011E5A0 = .rodata:0x8011E5A0; // type:object size:0x38 lbl_8011E5D8 = .rodata:0x8011E5D8; // type:object size:0x40 fix_pool_sizes = .rodata:0x8011E618; // type:object size:0x18 scope:local data:4byte diff --git a/config/GMPE01_01/splits.txt b/config/GMPE01_01/splits.txt index d7d8237a..4751f858 100644 --- a/config/GMPE01_01/splits.txt +++ b/config/GMPE01_01/splits.txt @@ -955,7 +955,7 @@ Runtime.PPCEABI.H/NewMore.cp: .data start:0x8013E208 end:0x8013E218 .sdata start:0x801D39A0 end:0x801D39A8 -Runtime.PPCEABI.H/NMWException.cp: +Runtime.PPCEABI.H/NMWException.cpp: extab start:0x80005650 end:0x80005670 extabindex start:0x80005718 end:0x80005748 .text start:0x800E2108 end:0x800E23CC @@ -971,7 +971,7 @@ Runtime.PPCEABI.H/__init_cpp_exceptions.cpp: .dtors start:0x8011DCE0 end:0x8011DCE8 .sdata start:0x801D39B0 end:0x801D39B8 -Runtime.PPCEABI.H/Gecko_ExceptionPPC.cp: +Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp: extab start:0x80005670 end:0x800056E4 extabindex start:0x80005748 end:0x8000579C .text start:0x800E2B24 end:0x800E3F5C diff --git a/configure.py b/configure.py index b3b128bd..6d5e0024 100644 --- a/configure.py +++ b/configure.py @@ -209,7 +209,7 @@ else: cflags_runtime = [ *cflags_base, "-use_lmw_stmw on", - "-str reuse,pool,readonly", + "-str reuse,readonly", "-common off", "-inline auto,deferred", ] @@ -668,11 +668,15 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__mem.c"), Object(NonMatching, "Runtime.PPCEABI.H/New.cp"), Object(NonMatching, "Runtime.PPCEABI.H/NewMore.cp"), - Object(NonMatching, "Runtime.PPCEABI.H/NMWException.cp"), + Object(NonMatching, "Runtime.PPCEABI.H/NMWException.cpp"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/runtime.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__init_cpp_exceptions.cpp"), - Object(NonMatching, "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cp"), - Object(NonMatching, "Runtime.PPCEABI.H/GCN_mem_alloc.c"), + Object( + NonMatching, + "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp", + extra_cflags=["-Cpp_exceptions on"] + ), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/GCN_mem_alloc.c"), ], }, { diff --git a/include/PowerPC_EABI_Support/Runtime/Gecko_ExceptionPPC.h b/include/PowerPC_EABI_Support/Runtime/Gecko_ExceptionPPC.h new file mode 100755 index 00000000..a864ea0d --- /dev/null +++ b/include/PowerPC_EABI_Support/Runtime/Gecko_ExceptionPPC.h @@ -0,0 +1,231 @@ +#ifndef _RUNTIME_GECKO_EXCEPTIONPPC_H +#define _RUNTIME_GECKO_EXCEPTIONPPC_H + +#include + +typedef u8 exaction_type; + +#define EXACTION_ENDBIT 0x80 +#define EXACTION_MASK 0x7F + +// EXAction structs + +#define EXACTION_ENDOFLIST 0 +#define EXACTION_BRANCH 1 + +typedef struct ex_branch { + exaction_type action; + u8 unused; + u16 target; +} ex_branch; + +#define EXACTION_DESTROYLOCAL 2 + +typedef struct ex_destroylocal { + exaction_type action; + u8 unused; + s16 local; + void* dtor; +} ex_destroylocal; + +#define EXACTION_DESTROYLOCALCOND 3 + +typedef struct ex_destroylocalcond { + exaction_type action; + u8 dlc_field; + s16 cond; + s16 local; + void* dtor; +} ex_destroylocalcond; + +#define ex_destroylocalcond_MakeField(regcond) (((regcond) << 7)) +#define ex_destroylocalcond_GetRegCond(field) ((field) >> 7) + +#define EXACTION_DESTROYLOCALPOINTER 4 + +typedef struct ex_destroylocalpointer { + exaction_type action; + u8 dlp_field; + s16 pointer; + void* dtor; +} ex_destroylocalpointer; + +#define ex_destroylocalpointer_MakeField(regpointer) (((regpointer) << 7)) +#define ex_destroylocalpointer_GetRegPointer(field) ((field) >> 7) + +#define EXACTION_DESTROYLOCALARRAY 5 + +typedef struct ex_destroylocalarray { + exaction_type action; + u8 unused; + s16 localarray; + u16 elements; + u16 element_size; + void* dtor; +} ex_destroylocalarray; + +#define EXACTION_DESTROYBASE 6 +#define EXACTION_DESTROYMEMBER 7 + +typedef struct ex_destroymember { + exaction_type action; + u8 dm_field; + s16 objectptr; + s32 offset; + void* dtor; +} ex_destroymember; + +#define ex_destroymember_MakeField(regpointer) (((regpointer) << 7)) +#define ex_destroymember_GetRegPointer(field) ((field) >> 7) + +#define EXACTION_DESTROYMEMBERCOND 8 + +typedef struct ex_destroymembercond { + exaction_type action; + u8 dmc_field; + s16 cond; + s16 objectptr; + s32 offset; + void* dtor; +} ex_destroymembercond; + +#define ex_destroymembercond_MakeField(regcond, regpointer) (((regcond) << 7) | (((regpointer)&0x1) << 6)) +#define ex_destroymembercond_GetRegCond(field) ((field) >> 7) +#define ex_destroymembercond_GetRegPointer(field) (((field) >> 6) & 0x1) + +#define EXACTION_DESTROYMEMBERARRAY 9 + +typedef struct ex_destroymemberarray { + exaction_type action; + u8 dma_field; + s16 objectptr; + s32 offset; + s32 elements; + s32 element_size; + void* dtor; +} ex_destroymemberarray; + +#define ex_destroymemberarray_MakeField(regpointer) (((regpointer) << 7)) +#define ex_destroymemberarray_GetRegPointer(field) ((field) >> 7) + +#define EXACTION_DELETEPOINTER 10 + +typedef struct ex_deletepointer { + exaction_type action; + u8 dp_field; + s16 objectptr; + void* deletefunc; +} ex_deletepointer; + +#define ex_deletepointer_MakeField(regpointer) (((regpointer) << 7)) +#define ex_deletepointer_GetRegPointer(field) ((field) >> 7) + +#define EXACTION_DELETEPOINTERCOND 11 + +typedef struct ex_deletepointercond { + exaction_type action; + u8 dpc_field; + s16 cond; + s16 objectptr; + void* deletefunc; +} ex_deletepointercond; + +#define ex_deletepointercond_MakeField(regcond, regpointer) (((regcond) << 7) | (((regpointer)&0x1) << 6)) +#define ex_deletepointercond_GetRegCond(field) ((field) >> 7) +#define ex_deletepointercond_GetRegPointer(field) (((field) >> 6) & 0x1) + +#define EXACTION_CATCHBLOCK 12 + +typedef struct ex_catchblock { + exaction_type action; + u8 unused; + char* catch_type; + u16 catch_pcoffset; + s16 cinfo_ref; +} ex_catchblock; + +#define EXACTION_ACTIVECATCHBLOCK 13 + +typedef struct ex_activecatchblock { + exaction_type action; + u8 unused; + s16 cinfo_ref; +} ex_activecatchblock; + +#define EXACTION_TERMINATE 14 + +typedef struct ex_terminate { + exaction_type action; + u8 unused; +} ex_terminate; + +#define EXACTION_SPECIFICATION 15 + +typedef struct ex_specification { + exaction_type action; + u8 unused; + u16 specs; + s32 pcoffset; + s32 cinfo_ref; + char* spec[]; +} ex_specification; + +#define EXACTION_CATCHBLOCK_32 16 + +typedef struct ex_catchblock_32 { + exaction_type action; + u8 unused; + char* catch_type; + s32 catch_pcoffset; + s32 cinfo_ref; +} ex_catchblock_32; + +// Other structs + +typedef struct ExceptionRangeSmall { + u16 start; + u16 end; + u16 action; +} ExceptionRangeSmall; + +typedef struct ExceptionTableSmall { + u16 et_field; + ExceptionRangeSmall ranges[0]; +} ExceptionTableSmall; + +typedef struct ExceptionRangeLarge { + u32 start; + u16 size; + u16 action; +} ExceptionRangeLarge; + +typedef struct ExceptionTableLarge { + u16 et_field; + u16 et_field2; + ExceptionRangeLarge ranges[]; +} ExceptionTableLarge; + +#define ET_MakeField(savedGPRs, savedFPRs, savedCR, hasframeptr, isLarge) \ + (((savedGPRs) << 11) | ((savedFPRs & 0x1f) << 6) | ((savedCR & 0x1) << 5) | ((hasframeptr & 0x1) << 4) | ((isLarge & 1) << 3)) + +#define ET_GetSavedGPRs(field) ((field) >> 11) +#define ET_GetSavedFPRs(field) (((field) >> 6) & 0x1f) +#define ET_GetSavedCR(field) (((field) >> 5) & 0x1) +#define ET_GetHasFramePtr(field) (((field) >> 4) & 0x1) +#define ET_IsLargeTable(field) (((field) >> 3) & 0x1) +#define ET_ClearLargeBit(field) ((field) & ~(1 << 3)) +#define ET_SetLargeBit(field) ((field) | (1 << 3)) + +#define ET_HasElfVector(field) (((field) >> 1) & 0x1) + +typedef struct ExceptionTableIndex { + u32 functionoffset; + u32 eti_field; + u32 exceptionoffset; +} ExceptionTableIndex; + +#define ETI_MakeField(direct, fsize) ((((s32)(direct)) << 31) | ((fsize)&0x7fffffff)) +#define ETI_GetDirectStore(field) ((field) >> 31) +#define ETI_GetFunctionSize(field) ((field)&0x7fffffff) + +#endif diff --git a/include/PowerPC_EABI_Support/Runtime/NMWException.h b/include/PowerPC_EABI_Support/Runtime/NMWException.h index 2358f785..aba83f4d 100644 --- a/include/PowerPC_EABI_Support/Runtime/NMWException.h +++ b/include/PowerPC_EABI_Support/Runtime/NMWException.h @@ -1,7 +1,15 @@ #ifndef _NMWEXCEPTION #define _NMWEXCEPTION -typedef short vbase_ctor_arg_type; +#include "types.h" +#include "PowerPC_EABI_Support/Runtime/exception.h" +#include "PowerPC_EABI_Support/Runtime/__ppc_eabi_linker.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef s16 vbase_ctor_arg_type; typedef char local_cond_type; typedef struct CatchInfo { @@ -9,7 +17,7 @@ typedef struct CatchInfo { void* typeinfo; void* dtor; void* sublocation; - long pointercopy; + s32 pointercopy; void* stacktop; } CatchInfo; @@ -19,18 +27,12 @@ typedef struct DestructorChain { void* object; } DestructorChain; -#ifdef __cplusplus -extern "C" { -#endif - -extern void* __register_global_object(void* object, void* destructor, - void* registration); +extern void* __register_global_object(void* object, void* destructor, void* registration); extern void __destroy_global_chain(void); extern void __end__catch(CatchInfo* catchinfo); extern void __throw(char* throwtype, void* location, void* dtor); -extern char __throw_catch_compare(const char* throwtype, const char* catchtype, - long* offset_result); +extern char __throw_catch_compare(const char* throwtype, const char* catchtype, s32* offset_result); extern void __unexpected(CatchInfo* catchinfo); extern int __register_fragment(struct __eti_init_info* info, char* TOC); diff --git a/include/PowerPC_EABI_Support/Runtime/exception.h b/include/PowerPC_EABI_Support/Runtime/exception.h new file mode 100755 index 00000000..2530b3de --- /dev/null +++ b/include/PowerPC_EABI_Support/Runtime/exception.h @@ -0,0 +1,38 @@ +#ifndef _EXCEPTION +#define _EXCEPTION + +namespace std { +class exception { +public: + exception() { } + virtual ~exception() { } + virtual const char* what() const { return "exception"; } +}; + +class bad_exception : public exception { +public: + bad_exception() { } + virtual ~bad_exception() { } + virtual const char* what() const { return "bad_exception"; } +}; + +typedef void (*unexpected_handler)(); +unexpected_handler set_unexpected(unexpected_handler handler); +void unexpected(); + +typedef void (*terminate_handler)(); +terminate_handler set_terminate(terminate_handler handler); +void terminate(); + +} // namespace std + +using std::bad_exception; +using std::exception; +using std::set_terminate; +using std::set_unexpected; +using std::terminate; +using std::terminate_handler; +using std::unexpected; +using std::unexpected_handler; + +#endif diff --git a/src/MSL_C.PPCEABI.bare.H/abort_exit.c b/src/MSL_C.PPCEABI.bare.H/abort_exit.c index b54f4742..4432d145 100644 --- a/src/MSL_C.PPCEABI.bare.H/abort_exit.c +++ b/src/MSL_C.PPCEABI.bare.H/abort_exit.c @@ -2,7 +2,6 @@ #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/critical_regions.h" #include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/signal.h" #include "stddef.h" -#include "PowerPC_EABI_Support/Runtime/NMWException.h" void _ExitProcess(); diff --git a/src/Runtime.PPCEABI.H/GCN_mem_alloc.c b/src/Runtime.PPCEABI.H/GCN_mem_alloc.c new file mode 100755 index 00000000..c36465e2 --- /dev/null +++ b/src/Runtime.PPCEABI.H/GCN_mem_alloc.c @@ -0,0 +1,30 @@ +#include "dolphin/os.h" + +inline static void InitDefaultHeap(void) { + void* arenaLo; + void* arenaHi; + + OSReport("GCN_Mem_Alloc.c : InitDefaultHeap. No Heap Available\n"); + OSReport("Metrowerks CW runtime library initializing default heap\n"); + + arenaLo = OSGetArenaLo(); + arenaHi = OSGetArenaHi(); + + arenaLo = OSInitAlloc(arenaLo, arenaHi, 1); + OSSetArenaLo(arenaLo); + + arenaLo = OSRoundUpPtr(arenaLo, 0x20); + arenaHi = OSRoundDownPtr(arenaHi, 0x20); + + OSSetCurrentHeap(OSCreateHeap(arenaLo, arenaHi)); + OSSetArenaLo(arenaLo = arenaHi); +} + +/* 80362914-803629CC 35D254 00B8+00 0/0 1/1 0/0 .text __sys_free */ +void __sys_free(void* p) { + if (__OSCurrHeap == -1) { + InitDefaultHeap(); + } + + OSFreeToHeap(__OSCurrHeap, p); +} diff --git a/src/Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp b/src/Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp new file mode 100755 index 00000000..faa1385f --- /dev/null +++ b/src/Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp @@ -0,0 +1,1052 @@ +#include "PowerPC_EABI_Support/Runtime/MWCPlusLib.h" +#include "PowerPC_EABI_Support/Runtime/Gecko_ExceptionPPC.h" +#include "PowerPC_EABI_Support/Runtime/NMWException.h" +#include "PowerPC_EABI_Support/Runtime/__ppc_eabi_linker.h" + +#define RETURN_ADDRESS 4 + +union MWE_GeckoVector64 { + f64 d; + f32 f[2]; +}; + +typedef union MWE_GeckoVector64 MWE_GeckoVector64; + +struct GeckoFPRContext { + f64 d; + MWE_GeckoVector64 v; +}; + +typedef struct GeckoFPRContext GeckoFPRContext; + +typedef struct ThrowContext { + GeckoFPRContext FPR[32]; + s32 GPR[32]; + s32 CR; + char* SP; + char* FP; + char* throwSP; + char* returnaddr; + char* throwtype; + void* location; + void* dtor; + CatchInfo* catchinfo; +} ThrowContext; + +typedef ThrowContext* ThrowContextPtr; + +typedef struct MWExceptionInfo { + ExceptionTableSmall* exception_record; + char* current_function; + char* action_pointer; + char* code_section; + char* data_section; + char* TOC; +} MWExceptionInfo; + +typedef struct FragmentInfo { + ExceptionTableIndex* exception_start; + ExceptionTableIndex* exception_end; + char* code_start; + char* code_end; + char* data_start; + char* data_end; + char* TOC; + int active; +} FragmentInfo; + +typedef struct ProcessInfo { + __eti_init_info* exception_info; + char* TOC; + int active; +} ProcessInfo; + +typedef struct ActionIterator { + MWExceptionInfo info; + char* current_SP; + char* current_FP; + s32 current_R31; +} ActionIterator; + +#define MAXFRAGMENTS 1 +static ProcessInfo fragmentinfo[MAXFRAGMENTS]; + +typedef void (*DeleteFunc)(void*); + +/** + * @note Address: 0x800C2374 + * @note Size: 0x34 + */ +int __register_fragment(struct __eti_init_info* info, char* TOC) +{ + + ProcessInfo* f = fragmentinfo; + int i; + + for (i = 0; i < MAXFRAGMENTS; i++, f++) { + if (f->active == 0) { + f->exception_info = info; + f->TOC = TOC; + f->active = 1; + return i; + } + } + + return -1; +} + +/** + * @note Address: 0x800C2340 + * @note Size: 0x34 + */ +void __unregister_fragment(int fragmentID) +{ + ProcessInfo* f; + + if (fragmentID >= 0 && fragmentID < MAXFRAGMENTS) { + f = &fragmentinfo[fragmentID]; + f->exception_info = 0; + f->TOC = 0; + f->active = 0; + } +} + +/** + * @note Address: N/A + * @note Size: 0x88 + */ +static inline int ExPPC_FindExceptionFragment(char* returnaddr, FragmentInfo* frag) +{ + ProcessInfo* f; + int i; + __eti_init_info* eti_info; + + for (i = 0, f = fragmentinfo; i < MAXFRAGMENTS; ++i, ++f) { + if (f->active) { + eti_info = f->exception_info; + while (1) { + if (eti_info->code_size == 0) + break; + if (returnaddr >= eti_info->code_start && returnaddr < (char*)eti_info->code_start + eti_info->code_size) { + frag->exception_start = (ExceptionTableIndex*)eti_info->eti_start; + frag->exception_end = (ExceptionTableIndex*)eti_info->eti_end; + frag->code_start = 0; + frag->code_end = 0; + frag->data_start = 0; + frag->data_end = 0; + frag->TOC = f->TOC; + frag->active = f->active; + return 1; + } + eti_info++; + } + } + } + + return 0; +} + +/** + * @note Address: N/A + * @note Size: 0x204 + */ +static void ExPPC_FindExceptionRecord(char* returnaddr, MWExceptionInfo* info) +{ + FragmentInfo* fragment; + FragmentInfo frag; + ExceptionTableIndex *exceptionindex, *p; + u32 returnoffset; + s32 i, m, n; + + info->exception_record = 0; + info->action_pointer = 0; + + if ((ExPPC_FindExceptionFragment(returnaddr, &frag)) == 0) + return; + fragment = &frag; + + info->code_section = fragment->code_start; + info->data_section = fragment->data_start; + info->TOC = fragment->TOC; + + returnoffset = returnaddr - fragment->code_start; + exceptionindex = fragment->exception_start; + for (i = 0, n = fragment->exception_end - fragment->exception_start;;) { + if (i > n) + return; + p = &exceptionindex[m = (i + n) / 2]; + + if (returnoffset < p->functionoffset) { + n = m - 1; + } else if (returnoffset > p->functionoffset + ETI_GetFunctionSize(p->eti_field)) { + i = m + 1; + } else + break; + } + info->current_function = fragment->code_start + p->functionoffset; + info->exception_record = ETI_GetDirectStore(p->eti_field) ? (ExceptionTableSmall*)(&p->exceptionoffset) + : (ExceptionTableSmall*)(fragment->data_start + p->exceptionoffset); + + returnoffset -= p->functionoffset; + + if (ET_IsLargeTable(info->exception_record->et_field)) { + ExceptionTableLarge* etl = (ExceptionTableLarge*)info->exception_record; + ExceptionRangeLarge* erl; + + for (erl = etl->ranges; erl->start != 0; erl++) { + u32 range_end = erl->start + (erl->size * 4); + + if (erl->start <= returnoffset && range_end >= returnoffset) { + info->action_pointer = (char*)etl + erl->action; + break; + } + } + } else { + ExceptionTableSmall* ets = (ExceptionTableSmall*)info->exception_record; + ExceptionRangeSmall* ers; + + for (ers = ets->ranges; ers->start != 0; ers++) { + if (ers->start <= returnoffset && ers->end >= returnoffset) { + info->action_pointer = (char*)ets + ers->action; + break; + } + } + } +} + +/** + * @note Address: N/A + * @note Size: 0x18 + */ +static inline s32 ExPPC_PopR31(char* SP, MWExceptionInfo* info) +{ + f64* FPR_save_area; + s32* GPR_save_area; + int saved_GPRs, saved_FPRs; + + saved_FPRs = ET_GetSavedFPRs(info->exception_record->et_field); + FPR_save_area = (f64*)(SP - saved_FPRs * 8); + saved_GPRs = ET_GetSavedGPRs(info->exception_record->et_field); + GPR_save_area = (s32*)FPR_save_area; + + return GPR_save_area[-1]; +} + +/** + * @note Address: N/A + * @note Size: 0x20 + */ +static inline exaction_type ExPPC_CurrentAction(const ActionIterator* iter) +{ + if (iter->info.action_pointer == 0) { + return EXACTION_ENDOFLIST; + } + + return ((ex_destroylocal*)iter->info.action_pointer)->action & EXACTION_MASK; +} + +/** + * @note Address: N/A + * @note Size: 0x1C0 + */ +static exaction_type ExPPC_NextAction(ActionIterator* iter) +{ + exaction_type action; + + for (;;) { + if (iter->info.action_pointer == 0 || ((action = ((ex_destroylocal*)iter->info.action_pointer)->action) & EXACTION_ENDBIT) != 0) { + char *return_addr, *callers_SP; + + callers_SP = *(char**)iter->current_SP; + + if (ET_GetSavedGPRs(iter->info.exception_record->et_field)) { + iter->current_R31 = ExPPC_PopR31(callers_SP, &iter->info); + } + + return_addr = *(char**)(callers_SP + RETURN_ADDRESS); + + ExPPC_FindExceptionRecord(return_addr, &iter->info); + + if (iter->info.exception_record == 0) { + terminate(); + } + + iter->current_SP = callers_SP; + iter->current_FP = (ET_GetHasFramePtr(iter->info.exception_record->et_field)) ? (char*)iter->current_R31 : iter->current_SP; + + if (iter->info.action_pointer == 0) + continue; + } else { + switch (action) { + case EXACTION_DESTROYLOCAL: + iter->info.action_pointer += sizeof(ex_destroylocal); + break; + case EXACTION_DESTROYLOCALCOND: + iter->info.action_pointer += sizeof(ex_destroylocalcond); + break; + case EXACTION_DESTROYLOCALPOINTER: + iter->info.action_pointer += sizeof(ex_destroylocalpointer); + break; + case EXACTION_DESTROYLOCALARRAY: + iter->info.action_pointer += sizeof(ex_destroylocalarray); + break; + case EXACTION_DESTROYBASE: + case EXACTION_DESTROYMEMBER: + iter->info.action_pointer += sizeof(ex_destroymember); + break; + case EXACTION_DESTROYMEMBERCOND: + iter->info.action_pointer += sizeof(ex_destroymembercond); + break; + case EXACTION_DESTROYMEMBERARRAY: + iter->info.action_pointer += sizeof(ex_destroymemberarray); + break; + case EXACTION_DELETEPOINTER: + iter->info.action_pointer += sizeof(ex_deletepointer); + break; + case EXACTION_DELETEPOINTERCOND: + iter->info.action_pointer += sizeof(ex_deletepointercond); + break; + case EXACTION_CATCHBLOCK: + iter->info.action_pointer += sizeof(ex_catchblock); + break; + case EXACTION_CATCHBLOCK_32: + iter->info.action_pointer += sizeof(ex_catchblock_32); + break; + case EXACTION_ACTIVECATCHBLOCK: + iter->info.action_pointer += sizeof(ex_activecatchblock); + break; + case EXACTION_SPECIFICATION: + iter->info.action_pointer + += sizeof(ex_specification) + ((ex_specification*)iter->info.action_pointer)->specs * sizeof(void*); + break; + default: + terminate(); + } + } + + action = ((ex_destroylocal*)iter->info.action_pointer)->action & EXACTION_MASK; + + if (action == EXACTION_BRANCH) { + iter->info.action_pointer = ((char*)iter->info.exception_record) + ((ex_branch*)iter->info.action_pointer)->target; + action = ((ex_destroylocal*)iter->info.action_pointer)->action & EXACTION_MASK; + } + return action; + } +} + +/** + * @note Address: N/A + * @note Size: 0x248 + */ +static char* ExPPC_PopStackFrame(ThrowContext* context, MWExceptionInfo* info) +{ + char *SP, *callers_SP; + f64* FPR_save_area; + s32* GPR_save_area; + int saved_GPRs, saved_FPRs; + GeckoFPRContext* Vector_save_area; + int i, j; + + SP = context->SP; + callers_SP = *(char**)SP; + saved_FPRs = ET_GetSavedFPRs(info->exception_record->et_field); + + if (ET_HasElfVector(info->exception_record->et_field)) { + Vector_save_area = (GeckoFPRContext*)(callers_SP - saved_FPRs * 16); + FPR_save_area = (f64*)Vector_save_area; + } else { + FPR_save_area = (f64*)(callers_SP - saved_FPRs * 8); + } + + if (ET_HasElfVector(info->exception_record->et_field)) { + for (i = 32 - saved_FPRs, j = 0; i < 32; ++i, ++j) { + context->FPR[i].v.f[0] = Vector_save_area[j].v.f[0]; + context->FPR[i].v.f[1] = Vector_save_area[j].v.f[1]; + context->FPR[i].d = Vector_save_area[j].d; + } + } else { + for (i = 32 - saved_FPRs, j = 0; i < 32; ++i, ++j) { + context->FPR[i].d = FPR_save_area[j]; + } + } + + saved_GPRs = ET_GetSavedGPRs(info->exception_record->et_field); + GPR_save_area = (s32*)FPR_save_area; + GPR_save_area -= saved_GPRs; + + for (i = 32 - saved_GPRs, j = 0; i < 32; ++i, ++j) { + context->GPR[i] = GPR_save_area[j]; + } + + context->SP = callers_SP; + return *(char**)(callers_SP + RETURN_ADDRESS); +} + +/** + * @note Address: N/A + * @note Size: 0x3C + */ +static inline void ExPPC_DestroyLocal(ThrowContext* context, const ex_destroylocal* ex) { DTORCALL_COMPLETE(ex->dtor, context->FP + ex->local); } + +/** + * @note Address: N/A + * @note Size: 0x74 + */ +static inline void ExPPC_DestroyLocalCond(ThrowContext* context, const ex_destroylocalcond* ex) +{ + int cond = ex_destroylocalcond_GetRegCond(ex->dlc_field) ? (local_cond_type)context->GPR[ex->cond] + : *(local_cond_type*)(context->FP + ex->cond); + + if (cond) { + DTORCALL_COMPLETE(ex->dtor, context->FP + ex->local); + } +} + +/** + * @note Address: N/A + * @note Size: 0x58 + */ +static inline void ExPPC_DestroyLocalPointer(ThrowContext* context, const ex_destroylocalpointer* ex) +{ + void* pointer + = ex_destroylocalpointer_GetRegPointer(ex->dlp_field) ? (void*)context->GPR[ex->pointer] : *(void**)(context->FP + ex->pointer); + + DTORCALL_COMPLETE(ex->dtor, pointer); +} + +/** + * @note Address: N/A + * @note Size: 0x84 + */ +static inline void ExPPC_DestroyLocalArray(ThrowContext* context, const ex_destroylocalarray* ex) +{ + char* ptr = context->FP + ex->localarray; + s32 n = ex->elements; + s32 size = ex->element_size; + + for (ptr = ptr + size * n; n > 0; n--) { + ptr -= size; + DTORCALL_COMPLETE(ex->dtor, ptr); + } +} + +/** + * @note Address: N/A + * @note Size: 0x64 + */ +static inline void ExPPC_DestroyMember(ThrowContext* context, const ex_destroymember* ex) +{ + char* objectptr + = ex_destroymember_GetRegPointer(ex->dm_field) ? (char*)context->GPR[ex->objectptr] : *(char**)(context->FP + ex->objectptr); + + DTORCALL_COMPLETE(ex->dtor, objectptr + ex->offset); +} + +/** + * @note Address: N/A + * @note Size: 0x64 + */ +static inline void ExPPC_DestroyBase(ThrowContext* context, const ex_destroymember* ex) +{ + char* objectptr + = ex_destroymember_GetRegPointer(ex->dm_field) ? (char*)context->GPR[ex->objectptr] : *(char**)(context->FP + ex->objectptr); + + DTORCALL_PARTIAL(ex->dtor, objectptr + ex->offset); +} + +/** + * @note Address: N/A + * @note Size: 0x98 + */ +static inline void ExPPC_DestroyMemberCond(ThrowContext* context, const ex_destroymembercond* ex) +{ + char* objectptr + = ex_destroymembercond_GetRegPointer(ex->dmc_field) ? (char*)context->GPR[ex->objectptr] : *(char**)(context->FP + ex->objectptr); + int cond = ex_destroymembercond_GetRegCond(ex->dmc_field) ? (vbase_ctor_arg_type)context->GPR[ex->cond] + : *(vbase_ctor_arg_type*)(context->FP + ex->cond); + + if (cond) { + DTORCALL_PARTIAL(ex->dtor, objectptr + ex->offset); + } +} + +/** + * @note Address: N/A + * @note Size: 0xAC + */ +static inline void ExPPC_DestroyMemberArray(ThrowContext* context, const ex_destroymemberarray* ex) +{ + char* ptr + = ex_destroymemberarray_GetRegPointer(ex->dma_field) ? (char*)context->GPR[ex->objectptr] : *(char**)(context->FP + ex->objectptr); + s32 n = ex->elements; + s32 size = ex->element_size; + + ptr += ex->offset; + + for (ptr = ptr + size * n; n > 0; n--) { + ptr -= size; + DTORCALL_COMPLETE(ex->dtor, ptr); + } +} + +/** + * @note Address: N/A + * @note Size: 0x54 + */ +static inline void ExPPC_DeletePointer(ThrowContext* context, const ex_deletepointer* ex) +{ + char* objectptr + = ex_deletepointer_GetRegPointer(ex->dp_field) ? (char*)context->GPR[ex->objectptr] : *(char**)(context->FP + ex->objectptr); + + ((DeleteFunc)ex->deletefunc)(objectptr); +} + +/** + * @note Address: N/A + * @note Size: 0x8C + */ +static inline void ExPPC_DeletePointerCond(ThrowContext* context, const ex_deletepointercond* ex) +{ + char* objectptr + = ex_deletepointercond_GetRegPointer(ex->dpc_field) ? (char*)context->GPR[ex->objectptr] : *(char**)(context->FP + ex->objectptr); + int cond = ex_deletepointercond_GetRegCond(ex->dpc_field) ? (local_cond_type)context->GPR[ex->cond] + : *(local_cond_type*)(context->FP + ex->cond); + + if (cond) { + ((DeleteFunc)ex->deletefunc)(objectptr); + } +} + +/** + * @note Address: N/A + * @note Size: 0x50C + */ +static void ExPPC_UnwindStack(ThrowContext* context, MWExceptionInfo* info, void* catcher) +{ + exaction_type action; + +#pragma exception_terminate + + for (;;) { + if (info->action_pointer == 0) { + char* return_addr; + + return_addr = ExPPC_PopStackFrame(context, info); + ExPPC_FindExceptionRecord(return_addr, info); + + if (info->exception_record == 0) { + terminate(); + } + + context->FP = (ET_GetHasFramePtr(info->exception_record->et_field)) ? (char*)context->GPR[31] : context->SP; + continue; + } + + action = ((ex_destroylocal*)info->action_pointer)->action; + + switch (action & EXACTION_MASK) { + case EXACTION_BRANCH: + info->action_pointer = ((char*)info->exception_record) + ((ex_branch*)info->action_pointer)->target; + break; + case EXACTION_DESTROYLOCAL: + ExPPC_DestroyLocal(context, (ex_destroylocal*)info->action_pointer); + info->action_pointer += sizeof(ex_destroylocal); + break; + case EXACTION_DESTROYLOCALCOND: + ExPPC_DestroyLocalCond(context, (ex_destroylocalcond*)info->action_pointer); + info->action_pointer += sizeof(ex_destroylocalcond); + break; + case EXACTION_DESTROYLOCALPOINTER: + ExPPC_DestroyLocalPointer(context, (ex_destroylocalpointer*)info->action_pointer); + info->action_pointer += sizeof(ex_destroylocalpointer); + break; + case EXACTION_DESTROYLOCALARRAY: + ExPPC_DestroyLocalArray(context, (ex_destroylocalarray*)info->action_pointer); + info->action_pointer += sizeof(ex_destroylocalarray); + break; + case EXACTION_DESTROYBASE: + ExPPC_DestroyBase(context, (ex_destroymember*)info->action_pointer); + info->action_pointer += sizeof(ex_destroymember); + break; + case EXACTION_DESTROYMEMBER: + ExPPC_DestroyMember(context, (ex_destroymember*)info->action_pointer); + info->action_pointer += sizeof(ex_destroymember); + break; + case EXACTION_DESTROYMEMBERCOND: + ExPPC_DestroyMemberCond(context, (ex_destroymembercond*)info->action_pointer); + info->action_pointer += sizeof(ex_destroymembercond); + break; + case EXACTION_DESTROYMEMBERARRAY: + ExPPC_DestroyMemberArray(context, (ex_destroymemberarray*)info->action_pointer); + info->action_pointer += sizeof(ex_destroymemberarray); + break; + case EXACTION_DELETEPOINTER: + ExPPC_DeletePointer(context, (ex_deletepointer*)info->action_pointer); + info->action_pointer += sizeof(ex_deletepointer); + break; + case EXACTION_DELETEPOINTERCOND: + ExPPC_DeletePointerCond(context, (ex_deletepointercond*)info->action_pointer); + info->action_pointer += sizeof(ex_deletepointercond); + break; + case EXACTION_CATCHBLOCK: + if (catcher == (void*)info->action_pointer) + return; + info->action_pointer += sizeof(ex_catchblock); + break; + case EXACTION_CATCHBLOCK_32: + if (catcher == (void*)info->action_pointer) + return; + info->action_pointer += sizeof(ex_catchblock_32); + break; + case EXACTION_ACTIVECATCHBLOCK: { + CatchInfo* catchinfo; + + catchinfo = (CatchInfo*)(context->FP + ((ex_activecatchblock*)info->action_pointer)->cinfo_ref); + + if (catchinfo->dtor) { + if (context->location == catchinfo->location) { + context->dtor = catchinfo->dtor; + } else { + DTORCALL_COMPLETE(catchinfo->dtor, catchinfo->location); + } + } + info->action_pointer += sizeof(ex_activecatchblock); + } break; + case EXACTION_SPECIFICATION: + if (catcher == (void*)info->action_pointer) + return; + info->action_pointer += sizeof(ex_specification) + ((ex_specification*)info->action_pointer)->specs * sizeof(void*); + break; + default: + terminate(); + } + + if (action & EXACTION_ENDBIT) + info->action_pointer = 0; + } +} + +/** + * @note Address: N/A + * @note Size: 0x88 + */ +static inline int ExPPC_IsInSpecification(char* extype, ex_specification* spec) +{ + s32 i, offset; + + for (i = 0; i < spec->specs; i++) { + if (__throw_catch_compare(extype, spec->spec[i], &offset)) + return 1; + } + + return 0; +} + +/** + * @note Address: N/A + * @note Size: 0x1B4 + */ +extern void __unexpected(CatchInfo* catchinfo) +{ + ex_specification* unexp = (ex_specification*)catchinfo->stacktop; + +#pragma exception_magic // allow access to __exception_magic in try/catch blocks + + try { + unexpected(); + } catch (...) { + if (ExPPC_IsInSpecification((char*)((CatchInfo*)&__exception_magic)->typeinfo, unexp)) { + throw; + } + if (ExPPC_IsInSpecification("!bad_exception!!", unexp)) { + throw bad_exception(); + } + if (ExPPC_IsInSpecification("!std::bad_exception!!", unexp)) { + throw bad_exception(); + } + } + terminate(); +} + +/** + * @note Address: N/A + * @note Size: 0x104 + */ +asm static void ExPPC_LongJump(register ThrowContext* context, register void* newRTOC, register void* newPC) +{ +#ifdef __MWERKS__ // clang-format off + nofralloc + + mr r8, newPC + mr RTOC, newRTOC + lwz r0, context->CR + mtcrf 255, r0 + + lmw r13, context->GPR[13] + + la r7, context->FPR[14].v + psq_lx fp14, 0, r7, 0, 0 + lfd fp14, context->FPR[14].d + + la r7, context->FPR[15].v + psq_lx fp15, 0, r7, 0, 0 + lfd fp15, context->FPR[15].d + + la r7, context->FPR[16].v + psq_lx fp16, 0, r7, 0, 0 + lfd fp16, context->FPR[16].d + + la r7, context->FPR[17].v + psq_lx fp17, 0, r7, 0, 0 + lfd fp17, context->FPR[17].d + + la r7, context->FPR[18].v + psq_lx fp18, 0, r7, 0, 0 + lfd fp18, context->FPR[18].d + + la r7, context->FPR[19].v + psq_lx fp19, 0, r7, 0, 0 + lfd fp19, context->FPR[19].d + + la r7, context->FPR[20].v + psq_lx fp20, 0, r7, 0, 0 + lfd fp20, context->FPR[20].d + + la r7, context->FPR[21].v + psq_lx fp21, 0, r7, 0, 0 + lfd fp21, context->FPR[21].d + + la r7, context->FPR[22].v + psq_lx fp22, 0, r7, 0, 0 + lfd fp22, context->FPR[22].d + + la r7, context->FPR[23].v + psq_lx fp23, 0, r7, 0, 0 + lfd fp23, context->FPR[23].d + + la r7, context->FPR[24].v + psq_lx fp24, 0, r7, 0, 0 + lfd fp24, context->FPR[24].d + + la r7, context->FPR[25].v + psq_lx fp25, 0, r7, 0, 0 + lfd fp25, context->FPR[25].d + + la r7, context->FPR[26].v + psq_lx fp26, 0, r7, 0, 0 + lfd fp26, context->FPR[26].d + + la r7, context->FPR[27].v + psq_lx fp27, 0, r7, 0, 0 + lfd fp27, context->FPR[27].d + + la r7, context->FPR[28].v + psq_lx fp28, 0, r7, 0, 0 + lfd fp28, context->FPR[28].d + + la r7, context->FPR[29].v + psq_lx fp29, 0, r7, 0, 0 + lfd fp29, context->FPR[29].d + + la r7, context->FPR[30].v + psq_lx fp30, 0, r7, 0, 0 + lfd fp30, context->FPR[30].d + + la r7, context->FPR[31].v + psq_lx fp31, 0, r7, 0, 0 + lfd fp31, context->FPR[31].d + + mtlr r8 + + lwz SP, context->throwSP + lwz r3, context->SP + lwz r3, 0(r3) + stw r3, 0(SP) + blr +#endif // clang-format on +} + +/** + * @note Address: N/A + * @note Size: 0x84 + */ +static inline void ExPPC_HandleUnexpected(ThrowContext* context, MWExceptionInfo* info, ex_specification* unexp) +{ + CatchInfo* catchinfo; + +#pragma exception_terminate + + ExPPC_UnwindStack(context, info, unexp); + + catchinfo = (CatchInfo*)(context->FP + unexp->cinfo_ref); + catchinfo->location = context->location; + catchinfo->typeinfo = context->throwtype; + catchinfo->dtor = context->dtor; + catchinfo->stacktop = unexp; + + ExPPC_LongJump(context, info->TOC, info->current_function + unexp->pcoffset); +} + +/** + * @note Address: N/A + * @note Size: 0x410 + */ +static void ExPPC_ThrowHandler(ThrowContext* context) +{ + ActionIterator iter; + MWExceptionInfo info; + exaction_type action; + CatchInfo* catchinfo; + s32 offset; + + ExPPC_FindExceptionRecord(context->returnaddr, &info); + + if (info.exception_record == 0) { + terminate(); + } + + context->FP = (ET_GetHasFramePtr(info.exception_record->et_field)) ? (char*)context->GPR[31] : context->SP; + + if (context->throwtype == 0) { + iter.info = info; + iter.current_SP = context->SP; + iter.current_FP = context->FP; + iter.current_R31 = context->GPR[31]; + + for (action = ExPPC_CurrentAction(&iter);; action = ExPPC_NextAction(&iter)) { + switch (action) { + case EXACTION_ACTIVECATCHBLOCK: + break; + case EXACTION_ENDOFLIST: + case EXACTION_DESTROYLOCAL: + case EXACTION_DESTROYLOCALCOND: + case EXACTION_DESTROYLOCALPOINTER: + case EXACTION_DESTROYLOCALARRAY: + case EXACTION_DESTROYBASE: + case EXACTION_DESTROYMEMBER: + case EXACTION_DESTROYMEMBERCOND: + case EXACTION_DESTROYMEMBERARRAY: + case EXACTION_DELETEPOINTER: + case EXACTION_DELETEPOINTERCOND: + case EXACTION_CATCHBLOCK: + case EXACTION_CATCHBLOCK_32: + case EXACTION_SPECIFICATION: + continue; + case EXACTION_TERMINATE: + default: + terminate(); + } + break; + } + + catchinfo = (CatchInfo*)(iter.current_FP + ((ex_activecatchblock*)iter.info.action_pointer)->cinfo_ref); + context->throwtype = (char*)catchinfo->typeinfo; + context->location = catchinfo->location; + context->dtor = 0; + context->catchinfo = catchinfo; + } else { + context->catchinfo = 0L; + } + + iter.info = info; + iter.current_SP = context->SP; + iter.current_FP = context->FP; + iter.current_R31 = context->GPR[31]; + + for (action = ExPPC_CurrentAction(&iter);; action = ExPPC_NextAction(&iter)) { + switch (action) { + case EXACTION_CATCHBLOCK_32: + if (__throw_catch_compare(context->throwtype, ((ex_catchblock_32*)iter.info.action_pointer)->catch_type, &offset)) { + break; + } + continue; + case EXACTION_CATCHBLOCK: + if (__throw_catch_compare(context->throwtype, ((ex_catchblock*)iter.info.action_pointer)->catch_type, &offset)) { + break; + } + continue; + case EXACTION_SPECIFICATION: + if (!ExPPC_IsInSpecification(context->throwtype, (ex_specification*)iter.info.action_pointer)) { + ExPPC_HandleUnexpected(context, &info, (ex_specification*)iter.info.action_pointer); + } + continue; + case EXACTION_ENDOFLIST: + case EXACTION_DESTROYLOCAL: + case EXACTION_DESTROYLOCALCOND: + case EXACTION_DESTROYLOCALPOINTER: + case EXACTION_DESTROYLOCALARRAY: + case EXACTION_DESTROYBASE: + case EXACTION_DESTROYMEMBER: + case EXACTION_DESTROYMEMBERCOND: + case EXACTION_DESTROYMEMBERARRAY: + case EXACTION_DELETEPOINTER: + case EXACTION_DELETEPOINTERCOND: + case EXACTION_ACTIVECATCHBLOCK: + continue; + case EXACTION_TERMINATE: + default: + terminate(); + } + break; + } + + if (action == EXACTION_CATCHBLOCK_32) { + ex_catchblock_32* catchblock_32; + catchblock_32 = (ex_catchblock_32*)iter.info.action_pointer; + + ExPPC_UnwindStack(context, &info, catchblock_32); + + catchinfo = (CatchInfo*)(context->FP + catchblock_32->cinfo_ref); + catchinfo->location = context->location; + catchinfo->typeinfo = context->throwtype; + catchinfo->dtor = context->dtor; + + if (*context->throwtype == '*') { + catchinfo->sublocation = &catchinfo->pointercopy; + catchinfo->pointercopy = *(s32*)context->location + offset; + } else { + catchinfo->sublocation = (char*)context->location + offset; + } + + ExPPC_LongJump(context, info.TOC, info.current_function + catchblock_32->catch_pcoffset); + } else { + ex_catchblock* catchblock; + + catchblock = (ex_catchblock*)iter.info.action_pointer; + ExPPC_UnwindStack(context, &info, catchblock); + + catchinfo = (CatchInfo*)(context->FP + catchblock->cinfo_ref); + catchinfo->location = context->location; + catchinfo->typeinfo = context->throwtype; + catchinfo->dtor = context->dtor; + + if (*context->throwtype == '*') { + catchinfo->sublocation = &catchinfo->pointercopy; + catchinfo->pointercopy = *(s32*)context->location + offset; + } else { + catchinfo->sublocation = (char*)context->location + offset; + } + + ExPPC_LongJump(context, info.TOC, info.current_function + catchblock->catch_pcoffset); + } +} + +/** + * @note Address: N/A + * @note Size: 0x44 + */ +void __end__catch(CatchInfo* catchinfo) +{ + if (catchinfo->location && catchinfo->dtor) { + DTORCALL_COMPLETE(catchinfo->dtor, catchinfo->location); + } +} + +/** + * @note Address: N/A + * @note Size: 0x144 + */ +asm void __throw(char* throwtype, void* location, void* dtor) +{ +#ifdef __MWERKS__ // clang-format off + ThrowContext throwcontext; + + fralloc + + stmw r13, throwcontext.GPR[13] + + stfd fp14, throwcontext.FPR[14].d + la r3, throwcontext.FPR[14].v + psq_stx fp14, 0, r3,0,0 + + stfd fp15, throwcontext.FPR[15].d + la r3, throwcontext.FPR[15].v + psq_stx fp15, 0, r3, 0, 0 + + stfd fp16, throwcontext.FPR[16].d + la r3, throwcontext.FPR[16].v + psq_stx fp16, 0, r3, 0, 0 + + stfd fp17, throwcontext.FPR[17].d + la r3, throwcontext.FPR[17].v + psq_stx fp17, 0, r3, 0, 0 + + stfd fp18, throwcontext.FPR[18].d + la r3, throwcontext.FPR[18].v + psq_stx fp18, 0, r3, 0, 0 + + stfd fp19, throwcontext.FPR[19].d + la r3, throwcontext.FPR[19].v + psq_stx fp19, 0, r3, 0, 0 + + stfd fp20, throwcontext.FPR[20].d + la r3, throwcontext.FPR[20].v + psq_stx fp20, 0, r3, 0, 0 + + stfd fp21, throwcontext.FPR[21].d + la r3, throwcontext.FPR[21].v + psq_stx fp21, 0, r3, 0, 0 + + stfd fp22, throwcontext.FPR[22].d + la r3, throwcontext.FPR[22].v + psq_stx fp22, 0, r3, 0, 0 + + stfd fp23, throwcontext.FPR[23].d + la r3, throwcontext.FPR[23].v + psq_stx fp23, 0, r3, 0, 0 + + stfd fp24, throwcontext.FPR[24].d + la r3, throwcontext.FPR[24].v + psq_stx fp24, 0, r3, 0, 0 + + stfd fp25, throwcontext.FPR[25].d + la r3, throwcontext.FPR[25].v + psq_stx fp25, 0, r3, 0, 0 + + stfd fp26, throwcontext.FPR[26].d + la r3, throwcontext.FPR[26].v + psq_stx fp26, 0, r3, 0, 0 + + stfd fp27, throwcontext.FPR[27].d + la r3, throwcontext.FPR[27].v + psq_stx fp27, 0, r3, 0, 0 + + stfd fp28, throwcontext.FPR[28].d + la r3, throwcontext.FPR[28].v + psq_stx fp28, 0, r3, 0, 0 + + stfd fp29, throwcontext.FPR[29].d + la r3, throwcontext.FPR[29].v + psq_stx fp29, 0, r3, 0, 0 + + stfd fp30, throwcontext.FPR[30].d + la r3, throwcontext.FPR[30].v + psq_stx fp30, 0, r3, 0, 0 + + stfd fp31, throwcontext.FPR[31].d + la r3, throwcontext.FPR[31].v + psq_stx fp31, 0, r3, 0, 0 + + + mfcr r3 + stw r3, throwcontext.CR; + + lwz r3, 0(sp) + lwz r4, RETURN_ADDRESS(r3) + stw r3, throwcontext.SP; + stw r3, throwcontext.throwSP; + stw r4, throwcontext.returnaddr; + + lwz r3,throwtype + stw r3, throwcontext.throwtype + lwz r3,location + stw r3, throwcontext.location + lwz r3,dtor + stw r3, throwcontext.dtor + la r3, throwcontext + bl ExPPC_ThrowHandler + nop + frfree + blr +#endif // clang-format on +} diff --git a/src/Runtime.PPCEABI.H/NMWException.cpp b/src/Runtime.PPCEABI.H/NMWException.cpp new file mode 100755 index 00000000..b5f722de --- /dev/null +++ b/src/Runtime.PPCEABI.H/NMWException.cpp @@ -0,0 +1,157 @@ +#include "PowerPC_EABI_Support/Runtime/NMWException.h" +#include "PowerPC_EABI_Support/Runtime/MWCPlusLib.h" + +#define ARRAY_HEADER_SIZE 16 + +extern "C" { +extern void abort(); +} + +namespace std { +/** + * @note Address: N/A + * @note Size: 0x20 + */ +static void dthandler() { abort(); } + +static terminate_handler thandler = dthandler; + +/** + * @note Address: N/A + * @note Size: 0x28 + */ +static void duhandler() { terminate(); } + +static unexpected_handler uhandler = duhandler; + +/** + * @note Address: N/A + * @note Size: 0x28 + */ +extern void terminate() { thandler(); } + +/** + * @note Address: N/A + * @note Size: 0x28 + */ +extern void unexpected() { uhandler(); } +} // namespace std + +/** + * @note Address: N/A + * @note Size: 0x22C + */ +extern char __throw_catch_compare(const char* throwtype, const char* catchtype, s32* offset_result) +{ + const char *cptr1, *cptr2; + + *offset_result = 0; + + if ((cptr2 = catchtype) == 0) { + return true; + } + + cptr1 = throwtype; + + if (*cptr2 == 'P') { + cptr2++; + if (*cptr2 == 'C') + cptr2++; + if (*cptr2 == 'V') + cptr2++; + if (*cptr2 == 'v') { + if (*cptr1 == 'P' || *cptr1 == '*') { + return true; + } + } + cptr2 = catchtype; + } + + switch (*cptr1) { + case '*': + case '!': + if (*cptr1++ != *cptr2++) + return false; + for (;;) { + if (*cptr1 == *cptr2++) { + if (*cptr1++ == '!') { + s32 offset; + + for (offset = 0; *cptr1 != '!';) { + offset = offset * 10 + *cptr1++ - '0'; + } + *offset_result = offset; + return true; + } + } else { + while (*cptr1++ != '!') { } + while (*cptr1++ != '!') { } + if (*cptr1 == 0) + return false; + + cptr2 = catchtype + 1; + } + } + return false; + } + + while ((*cptr1 == 'P' || *cptr1 == 'R') && *cptr1 == *cptr2) { + cptr1++; + cptr2++; + + if (*cptr2 == 'C') { + if (*cptr1 == 'C') + cptr1++; + cptr2++; + } + if (*cptr1 == 'C') + return false; + + if (*cptr2 == 'V') { + if (*cptr1 == 'V') + cptr1++; + cptr2++; + } + if (*cptr1 == 'V') + return false; + } + + for (; *cptr1 == *cptr2; cptr1++, cptr2++) { + if (*cptr1 == 0) + return true; + } + + return false; +} + +class __partial_array_destructor { +private: + void* p; + size_t size; + size_t n; + ConstructorDestructor dtor; + +public: + size_t i; + + __partial_array_destructor(void* array, size_t elementsize, size_t nelements, ConstructorDestructor destructor) + { + p = array; + size = elementsize; + n = nelements; + dtor = destructor; + i = n; + } + + ~__partial_array_destructor() + { + char* ptr; + + if (i < n && dtor) { + for (ptr = (char*)p + size * i; i > 0; i--) { + ptr -= size; + DTORCALL_COMPLETE(dtor, ptr); + } + } + } +}; From 312f8471c8ebce75a58edbabebec89ae5118216a Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Wed, 5 Feb 2025 03:08:50 +0100 Subject: [PATCH 155/178] Finish m427Dll (#558) --- config/GMPE01_00/rels/m427Dll/symbols.txt | 16 +- configure.py | 2 +- include/REL/m427Dll.h | 36 +- src/REL/m427Dll/main.c | 5 - src/REL/m427Dll/map.c | 2645 +++++++++++++++++++-- src/REL/m427Dll/player.c | 10 +- 6 files changed, 2495 insertions(+), 219 deletions(-) diff --git a/config/GMPE01_00/rels/m427Dll/symbols.txt b/config/GMPE01_00/rels/m427Dll/symbols.txt index d075d6af..96db2763 100644 --- a/config/GMPE01_00/rels/m427Dll/symbols.txt +++ b/config/GMPE01_00/rels/m427Dll/symbols.txt @@ -271,11 +271,11 @@ lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data: lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC scope:local data:float lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:byte lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float @@ -353,8 +353,8 @@ lbl_1_data_D0 = .data:0x000000D0; // type:object size:0x8 lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x4 lbl_1_data_DC = .data:0x000000DC; // type:object size:0x4 lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x4 data:2byte -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:2byte -lbl_1_data_EC = .data:0x000000EC; // type:object size:0x5 data:string +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x4 data:byte +lbl_1_data_EC = .data:0x000000EC; // type:object size:0x5 scope:local data:string lbl_1_data_F4 = .data:0x000000F4; // type:object size:0x4 data:float lbl_1_data_F8 = .data:0x000000F8; // type:object size:0x4 data:float lbl_1_data_FC = .data:0x000000FC; // type:object size:0x30 @@ -365,10 +365,10 @@ lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x8 lbl_1_data_1DC = .data:0x000001DC; // type:object size:0x8 lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x8 lbl_1_data_1EC = .data:0x000001EC; // type:object size:0x4 -lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x13 data:string -lbl_1_data_203 = .data:0x00000203; // type:object size:0x10 data:string -lbl_1_data_213 = .data:0x00000213; // type:object size:0x26 data:string -lbl_1_data_239 = .data:0x00000239; // type:object size:0x25 +lbl_1_data_1F0 = .data:0x000001F0; // type:object size:0x13 scope:local data:string +lbl_1_data_203 = .data:0x00000203; // type:object size:0x10 scope:local data:string +lbl_1_data_213 = .data:0x00000213; // type:object size:0x26 scope:local data:string +lbl_1_data_239 = .data:0x00000239; // type:object size:0x24 scope:local data:string lbl_1_data_260 = .data:0x00000260; // type:object size:0x15C lbl_1_data_3BC = .data:0x000003BC; // type:object size:0x15C lbl_1_data_518 = .data:0x00000518; // type:object size:0x1C diff --git a/configure.py b/configure.py index 6d5e0024..1a3c04d9 100644 --- a/configure.py +++ b/configure.py @@ -1084,7 +1084,7 @@ config.libs = [ "m427Dll", # Right Oar Left? objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m427Dll/main.c"), - Object(NonMatching, "REL/m427Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m427Dll/map.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m427Dll/player.c"), }, ), diff --git a/include/REL/m427Dll.h b/include/REL/m427Dll.h index c8290376..ceda94c3 100644 --- a/include/REL/m427Dll.h +++ b/include/REL/m427Dll.h @@ -1,21 +1,35 @@ #include "dolphin.h" #include "game/object.h" -s32 fn_1_1788(void); -void fn_1_1798(s32 arg0, float arg8); -s32 fn_1_1884(void); -s32 fn_1_32EC(void); +typedef struct M427DllStruct { + s32 unk0; + s32 unk4; +} M427DllStruct; -void fn_1_32F4(Process* arg0); -void fn_1_3B20(s8 arg0, s16 arg1); +s32 fn_1_1788(void); +void fn_1_1798(s32 arg0, float arg8); +s32 fn_1_1884(void); +s32 fn_1_32EC(void); + +void fn_1_32F4(Process *arg0); +void fn_1_3B20(s8 arg0, s16 arg1); void fn_1_3A88(void); -void fn_1_91E0(s16 arg0, float arg8, float arg9, float argA, float argB); -float fn_1_AE78(s16 arg0, float arg8, float arg9); -void fn_1_E98C(Process*); +void fn_1_91E0(s16 arg0, float arg8, float arg9, float argA, float argB); +float fn_1_AE78(s16 arg0, float arg8, float arg9); +void fn_1_E98C(Process *); void fn_1_EC54(void); s32 fn_1_10FE8(s32 arg0, s32 *arg1); -void fn_1_110E8(s32, s32*); -void fn_1_111C0(s32, s32*); +void fn_1_110E8(s32, s32 *); +void fn_1_111C0(s32, s32 *); void fn_1_11298(f32); s32 fn_1_113F0(s32); f32 fn_1_168FC(f32, f32, f32); + +s32 fn_1_15F10(Vec arg0, Vec arg1, s32 arg2, s32 arg3, s32 arg4); +s32 fn_1_15FD0(Vec arg0, float arg8, s32 arg1, s32 arg2, s32 arg3); + +extern s32 lbl_1_bss_580; +extern Vec *lbl_1_bss_558; +extern Vec *lbl_1_bss_554; +extern Vec *lbl_1_bss_550; +extern M427DllStruct lbl_1_bss_0[8]; diff --git a/src/REL/m427Dll/main.c b/src/REL/m427Dll/main.c index 84bcb03b..fdf0de2d 100644 --- a/src/REL/m427Dll/main.c +++ b/src/REL/m427Dll/main.c @@ -10,11 +10,6 @@ #include "game/objsub.h" #include "game/wipe.h" -typedef struct M427DllStruct { - s32 unk0; - s32 unk4; -} M427DllStruct; - typedef struct M427DllStruct2 { s32 unk0[3]; s32 unkC; diff --git a/src/REL/m427Dll/map.c b/src/REL/m427Dll/map.c index acbbb20e..1678f422 100644 --- a/src/REL/m427Dll/map.c +++ b/src/REL/m427Dll/map.c @@ -1,19 +1,27 @@ #include "REL/m427Dll.h" +#include "dolphin/gx/GXEnum.h" +#include "dolphin/gx/GXStruct.h" +#include "dolphin/gx/GXVert.h" +#include "dolphin/pad.h" #include "ext_math.h" #include "game/animdata.h" +#include "game/audio.h" +#include "game/hsfanim.h" #include "game/hsfdraw.h" #include "game/hsfman.h" #include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/object.h" +#include "game/pad.h" #include "game/sprite.h" +#include "string.h" + +extern s32 rand8(void); +extern LightData Hu3DLocalLight[0x20]; #define FABS(value) ((value < 0) ? -(value) : (value)) -typedef struct M427DllStruct { - s32 unk0; - s32 unk4; -} M427DllStruct; - typedef struct M427DllStruct2 { s32 unk0[3]; s32 unkC; @@ -35,24 +43,38 @@ typedef struct M427DllStruct3 { Vec rot; Vec cen; f32 zoom; -} M427DllStruct3; +} M427DllStruct3; // sizeof 0x1C typedef struct M427DllMapStruct { - char unk_0[0x2]; + u8 unk0; + char unk_1; s16 unk2; s16 unk4; char unk_6[0x2]; - AnimData* unk8; - char unk_C[0x74]; - void* unk80; - char unk_84[0x14]; + AnimData *unk8; + Vec unkC; + Vec unk18; + Vec unk24; + Vec unk30; + Vec2f unk3C; + Vec2f unk44; + Vec2f unk4C; + Vec2f unk54; + Vec2f unk5C[4]; + GXColor unk7C; + void *unk80; + s32 unk84; + float unk88; + float unk8C; + float unk90; + float unk94; } M427DllMapStruct; // sizeof 0x98 typedef struct M427DllMapStruct2 { s8 unk0; s16 unk2; s16 unk4; -} M427DllMapStruct2; +} M427DllMapStruct2; // sizeof 0x6 typedef struct M427DllMapSubstruct { s16 unk0; @@ -62,31 +84,46 @@ typedef struct M427DllMapSubstruct { typedef struct M427DllMapSubstruct2 { s16 unk0; Vec unk4; - s16 unk10; - s16 unk12; + s16 unk10[2]; s16 unk14[4]; } M427DllMapSubstruct2; // sizeof 0x1C -typedef struct M427DllMapSubstruct4 { - char unk[0x28]; - AnimData* unk28; -} M427DllMapSubstruct4; - typedef struct M427DllMapSubstruct7 { s16 unk0; s32 unk4; - void* unk8; -} M427DllMapSubstruct7; + void *unk8; +} M427DllMapSubstruct7; // sizeof 0xC -typedef struct M427DllMapUNKBA { - s16 unk0; - char unk[0x2E]; -} M427DllMapUNKBA; - -typedef struct M427DllMapUNK180 { +typedef struct M427DllMapUNKB8 { s16 unk0; s16 unk2; -} M427DllMapUNK180; + s16 unk4; + s16 unk6; + u8 unk8; + s16 unkA; + float unkC; + float unk_10; + float unk_14; + s16 unk18; + s16 unk1A; + s16 unk1C; + s16 unk1E; + float unk20; + float unk24; + float unk28; + float unk2C; +} M427DllMapUNKB8; // sizeof 0x30 + +typedef struct M427DllMapUNK17E { + s16 unk0; + s16 unk2; +} M427DllMapUNK17E; // sizeof 0x4 + +typedef struct M427DllMapSubstruct3Sub { + s16 unk0; + void *unk4; + u32 unk8; +} M427DllMapSubstruct3Sub; // sizeof 0xC typedef struct M427DllMapSubstruct3 { s16 unk0; @@ -96,30 +133,44 @@ typedef struct M427DllMapSubstruct3 { s16 unk1C; s16 unk1E; s16 unk20; - char unk_22[0x3A]; + char unk_22[2]; + float unk24[4]; + s16 unk34[4]; + s16 unk3C[4]; + s16 unk44[0xB]; + s16 unk5A; s16 unk5C; - char unk_5E[0x1A]; + char unk_5E[2]; + Vec unk_60; + Vec unk_6C; Vec unk78; Vec unk84; f32 unk90; - char unk_94[0x4]; - void* unk98; - M427DllMapSubstruct7* unk9C; + M427DllMapSubstruct3Sub unk94; char unk_A0[0xC]; - M427DllMapSubstruct4* unkAC; - char unk_B0[0xA]; - M427DllMapUNKBA unkBA[2][2]; - char unk_17A[0x6]; - M427DllMapUNK180 unk180[2][2]; - char unk_190[0x8]; + struct M427DllMapStruct6 *unkAC; + s16 unkB0[1]; + char unk_B2[0x6]; + M427DllMapUNKB8 unkB8[2][2]; + s16 unk178[3]; + M427DllMapUNK17E unk17E[2][2]; + s16 unk18E[2]; + char unk194[4]; } M427DllMapSubstruct3; // sizeof 0x198 +typedef struct M427DllMapStruct3Sub { + AnimData *unk_00; + AnimData *unk_04; + float unk_08; + float unk_0C; + float unk_10; + float unk_14; +} M427DllMapStruct3Sub; // sizeof 0x18 + typedef struct M427DllMapStruct3 { u8 unk0; M427DllMapSubstruct3 unk4[2]; - AnimData* unk334; - AnimData* unk338; - char unk_33C[0x10]; + M427DllMapStruct3Sub unk334; M427DllMapSubstruct2 unk34C[3]; M427DllMapSubstruct unk3A0[5]; } M427DllMapStruct3; // sizeof 0x3F0 @@ -130,24 +181,24 @@ typedef struct M427DllMapSubstruct5 { s16 unk4; s16 unk6; Vec unk8; - char unk[0x8]; -} M427DllMapSubstruct5; + char unk14[0x8]; +} M427DllMapSubstruct5; // sizeof 0x1C typedef struct M427DllMapStruct4 { s16 unk0; - Vec* unk4; - Vec2f* unk8; - Vec* unkC; - GXColor* unk10; + Vec *unk4; + Vec2f *unk8; + Vec *unkC; + GXColor *unk10; s16 unk14; s16 unk16; s16 unk18; - M427DllMapSubstruct5* unk1C; - void* unk20; + M427DllMapSubstruct5 *unk1C; + void *unk20; u32 unk24; - void* unk28; + void *unk28; u32 unk2C; - void* unk30; + void *unk30; u32 unk34; f32 unk38; f32 unk3C; @@ -155,7 +206,7 @@ typedef struct M427DllMapStruct4 { f32 unk44; s16 unk48[1]; s16 unk4A; -} M427DllMapStruct4; +} M427DllMapStruct4; // sizeof 0x4C typedef struct M427DllMapStruct5 { f32 unk0; @@ -165,56 +216,193 @@ typedef struct M427DllMapStruct5 { f32 unk10; } M427DllMapStruct5; // sizeof 0x14 -omObjData* lbl_1_bss_548; +typedef struct M427DllMapStruct6 { + s16 unk_00; + Vec *unk_04; + Vec *unk_08; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + float unk_20; + float unk_24; + AnimData *unk_28; + Vec *unk_2C; + Vec2f *unk_30; + Vec *unk_34; + s16 unk_38; + s16 unk_3A; + s16 unk_3C; + char pad_3E[2]; + void *unk_40; + u32 unk_44; + M427DllMapSubstruct5 *unk_48; + float unk_4C; + float unk_50; + float unk_54; + float unk_58; + float unk_5C; + /* 0x60 */ float unk_60; +} M427DllMapStruct6; /* size = 0x64, stored in unk_120 */ + +typedef struct M427DllMapSubstruct6 { + /* 0x00 */ float unk_00; + /* 0x04 */ float unk_04; + /* 0x08 */ float unk_08; + /* 0x0C */ char pad_0C[0xC]; /* maybe part of unk_08[4]? */ + /* 0x18 */ float unk_18; + /* 0x1C */ float unk_1C; + /* 0x20 */ float unk_20; + /* 0x24 */ float unk_24; + /* 0x28 */ float unk_28; + /* 0x2C */ float unk_2C; + /* 0x30 */ float unk_30; + /* 0x34 */ s16 unk_34; + /* 0x36 */ s16 unk_36; + /* 0x38 */ s16 unk_38; + /* 0x3A */ char pad_3A[2]; + /* 0x3C */ s32 unk_3C; + /* 0x40 */ s16 unk_40; + /* 0x42 */ char pad_42[2]; + /* 0x44 */ float unk_44; + /* 0x48 */ Vec unk_48; + /* 0x54 */ Vec unk_54; + /* 0x60 */ s16 unk_60; + /* 0x62 */ s8 unk_62; + /* 0x63 */ char pad_63[1]; +} M427DllMapSubstruct6; // sizeof 0x64 + +typedef void (*M427DllHook)(ModelData *model, struct M427DllMapStruct7 *particle, Mtx matrix); + +typedef struct M427DllMapStruct7 { + /* 0x00 */ s16 unk_00; + /* 0x02 */ char pad_02[2]; + /* 0x04 */ u32 unk_04; + /* 0x08 */ u8 unk_08; + /* 0x09 */ char pad_09[3]; /* maybe part of unk_08[4]? */ + /* 0x0C */ M427DllHook unk_0C; + /* 0x10 */ AnimData *unk_10; + /* 0x14 */ s16 unk_14; + /* 0x16 */ char pad_16[2]; + /* 0x18 */ M427DllMapSubstruct6 *unk_18; + /* 0x1C */ Vec *unk_1C; + /* 0x20 */ Vec2f *unk_20; + /* 0x24 */ GXColor *unk_24; + /* 0x28 */ void *unk_28; + /* 0x2C */ Vec unk_2C; + /* 0x38 */ float unk_38; + /* 0x3C */ float unk_3C; + /* 0x40 */ float unk_40; + /* 0x44 */ float unk_44; + /* 0x48 */ float unk_48; + /* 0x4C */ float unk_4C; + /* 0x50 */ float unk_50; + /* 0x54 */ float unk_54; + /* 0x58 */ float unk_58; + /* 0x5C */ Vec2f *unk_5C; + /* 0x60 */ float unk_60; + /* 0x64 */ float unk_64; +} M427DllMapStruct7; /* size = 0x68, stored in unk_120 */ + +GXColor lbl_1_data_E8 = { 0xFF, 0xFF, 0xFF, 0xFF }; + +omObjData *lbl_1_bss_548; M427DllMapStruct3 lbl_1_bss_158; M427DllMapStruct2 lbl_1_bss_F8[0x10]; -M427DllMapStruct* lbl_1_bss_F0; +AnimData *lbl_1_bss_F4; +M427DllMapStruct *lbl_1_bss_F0; s16 lbl_1_bss_EC[2]; s16 lbl_1_bss_E8[2]; -M427DllMapStruct5* lbl_1_bss_E4; +M427DllMapStruct5 *lbl_1_bss_E4; M427DllMapStruct4 lbl_1_bss_98; f32 lbl_1_bss_94; +s8 lbl_1_bss_91; +s8 lbl_1_bss_90; void fn_1_372C(void); -void fn_1_4218(omObjData*); +void fn_1_4218(omObjData *object); void fn_1_44F4(f32, f32, f32, f32, f32); -void fn_1_48EC(ModelData*, Mtx); -void fn_1_4D7C(ModelData*, Mtx); -void fn_1_50A0(ModelData*, Mtx); +void fn_1_48EC(ModelData *model, Mtx matrix); +void fn_1_4D7C(ModelData *model, Mtx matrix); +void fn_1_50A0(ModelData *model, Mtx matrix); void fn_1_510C(s32, s16, s16); -void fn_1_558C(M427DllMapStruct4*); -void fn_1_618C(ModelData*, Mtx); -void fn_1_6760(omObjData*); -void fn_1_C2C8(Vec*, Vec*, Vec*, void*); -void fn_1_D22C(void); -s16 fn_1_D63C(AnimData*, s32, f32, s32, s32); +void fn_1_558C(M427DllMapStruct4 *); +void fn_1_618C(ModelData *model, Mtx matrix); +void fn_1_6760(omObjData *object); +void fn_1_C2C8(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3); +void fn_1_D22C(ModelData *model, struct M427DllMapStruct7 *arg1, Mtx matrix); +s16 fn_1_D63C(AnimData *arg0, s16 arg1, float arg8, s16 arg2, s16 arg3); void fn_1_DB80(s16); -void fn_1_DC64(s16, void (*)(void)); -void fn_1_DC9C(s16, s32); +void fn_1_DC64(s16, M427DllHook); +void fn_1_DC9C(s16, u8); +void fn_1_72E4(omObjData *arg0); +void fn_1_73BC(void); +void fn_1_794C(M427DllMapSubstruct3 *arg0, s16 arg1); +void fn_1_7C34(void); +void fn_1_7E60(s16 arg0, M427DllMapSubstruct3 *arg1); +void fn_1_7F38(void); +void fn_1_85D4(s16 arg0, M427DllMapSubstruct3 *arg1); +void fn_1_8768(M427DllMapSubstruct3 *arg0, M427DllMapUNKB8 *arg1, s16 arg2, float arg8, float arg9); +void fn_1_8E1C(u8 arg0, M427DllMapSubstruct3 *arg1, M427DllMapUNKB8 *arg2); +void fn_1_8F90(omObjData *object); +void fn_1_9240(void); +void fn_1_9318(s16 *arg0, s16 arg1); +void fn_1_93EC(s32 arg0, s32 arg1, float arg8, float arg9, float argA, float argB); +s16 fn_1_95E8(s32 arg0, s16 arg1, s16 arg2, float arg8, float arg9, float argA, float argB, float argC); +void fn_1_9958(s16 arg0, u8 arg1); +void fn_1_999C(s16 arg0, u8 arg1); +void fn_1_99E4(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4); +void fn_1_9A2C(s16 arg0, float arg8, float arg9, float argA); +void fn_1_9AA0(s16 arg0, float arg8, float arg9, float argA); +void fn_1_9B14(s16 arg0, float arg8, float arg9, float argA); +void fn_1_9B88(ModelData *model, Mtx matrix); +void fn_1_A148(ModelData *model, Mtx matrix); +s16 fn_1_A1F4(s32 arg0, s16 arg1, s16 arg2, s16 arg3, float arg8, Vec *arg4, Vec *arg5); +void fn_1_A7F8(M427DllMapStruct6 *arg0); +void fn_1_B194(M427DllMapStruct6 *arg0, float arg8, Vec *arg1); +void fn_1_B3CC(ModelData *model, Mtx matrix); +void fn_1_C154(ModelData *model, Mtx matrix); +void fn_1_C200(ModelData *model, Mtx matrix); +void fn_1_C2AC(Vec *arg0, float arg8, float arg9, float argA); +void fn_1_C2BC(Vec2f *arg0, float arg8, float arg9); +s16 fn_1_C41C(float arg8, float arg9, float argA, float argB, float argC, float argD, u8 arg0, u8 arg1, u8 arg2); +void fn_1_C528(s16 arg0, s16 arg1, float arg8, float arg9, float argA, float argB, float argC, float argD, u8 arg2, u8 arg3, u8 arg4); +void fn_1_C68C(LightData *arg0, Vec *arg1, Vec *arg2, GXColor *arg3); +void fn_1_C76C(u8 arg0, float arg8, float arg9, float argA, s16 arg1, float argB, float argC, s16 arg2); +s16 fn_1_D430(float arg8, float arg9, float argA, s16 arg0); +M427DllMapSubstruct6 *fn_1_D4FC(s16 arg0, Vec *arg1, Vec *arg2, float arg8, GXColor *arg3); +M427DllMapSubstruct6 *fn_1_DC0C(s16 arg0, s16 arg1); +void fn_1_DCD4(ModelData *model, Mtx matrix); +void fn_1_E2B0(Vec2f *arg0, s16 arg1, s16 arg2, float arg8, float arg9); +void fn_1_E37C(Vec2f *arg0, Vec2f *arg1, s16 arg2, float arg8, float arg9); +void fn_1_E420(Vec *arg0, Vec *arg1, Vec *arg2, s16 arg3); -void fn_1_32F4(Process* arg0) { +void fn_1_32F4(Process *arg0) +{ s16 var_r31; - AnimData* temp_r30; + AnimData *temp_r30; s32 var_r29; s32 var_r28; lbl_1_bss_158.unk0 = 0; lbl_1_bss_548 = omAddObjEx(arg0, 0x7F, 0, 0, -1, fn_1_6760); - lbl_1_bss_F0 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x10 * sizeof(M427DllMapStruct), 0x10000000); - + lbl_1_bss_F0 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x10 * sizeof(M427DllMapStruct), MEMORY_DEFAULT_NUM); + for (var_r31 = 0; var_r31 < 0x10; var_r31++) { lbl_1_bss_F0[var_r31].unk2 = -1; } - temp_r30 = HuSprAnimRead(HuDataReadNum(0x3A0017, MEMORY_DEFAULT_NUM)); + temp_r30 = HuSprAnimRead(HuDataReadNum(0x3A0017, MEMORY_DEFAULT_NUM)); for (var_r31 = 0; var_r31 < 2; var_r31++) { lbl_1_bss_EC[var_r31] = fn_1_D63C(temp_r30, 0x200, 80.0f, 0x40, 0x40); - fn_1_DC64(lbl_1_bss_EC[var_r31], &fn_1_D22C); + fn_1_DC64(lbl_1_bss_EC[var_r31], fn_1_D22C); fn_1_DC9C(lbl_1_bss_EC[var_r31], 1); Hu3DModelLayerSet(lbl_1_bss_EC[var_r31], 7); if (var_r31 == 0) { var_r29 = 1; - } else { + } + else { var_r29 = 2; } Hu3DModelCameraSet(lbl_1_bss_EC[var_r31], var_r29); @@ -226,13 +414,14 @@ void fn_1_32F4(Process* arg0) { Hu3DModelLayerSet(lbl_1_bss_E8[var_r31], 7); if (var_r31 == 0) { var_r28 = 1; - } else { + } + else { var_r28 = 2; } Hu3DModelCameraSet(lbl_1_bss_E8[var_r31], var_r28); } fn_1_372C(); - + for (var_r31 = 0; var_r31 < 0x10; var_r31++) { lbl_1_bss_F8[var_r31].unk0 = -1; lbl_1_bss_F8[var_r31].unk2 = Hu3DModelCreateFile(0x3A0012); @@ -245,77 +434,62 @@ void fn_1_32F4(Process* arg0) { } } -void fn_1_372C(void) { - M427DllMapSubstruct* var_r29 = &lbl_1_bss_158.unk3A0[0]; - M427DllMapSubstruct2* var_r30 = &lbl_1_bss_158.unk34C[0]; +void fn_1_372C(void) +{ + M427DllMapSubstruct *var_r29 = &lbl_1_bss_158.unk3A0[0]; + M427DllMapSubstruct2 *var_r30 = &lbl_1_bss_158.unk34C[0]; s16 sp1A[5] = { 0, 0, 1, 1, 0 }; - Vec sp60[5] = { - { -700.0f, -150.0f, -7000.0f }, - { 0.0f, -300.0f, -12000.0f }, - { 800.0f, -350.0f, -12700.0f }, - { 600.0f, -350.0f, -13700.0f }, - { 825.0f, -450.0f, -15000.0f } - }; + Vec sp60[5] = { { -700.0f, -150.0f, -7000.0f }, { 0.0f, -300.0f, -12000.0f }, { 800.0f, -350.0f, -12700.0f }, { 600.0f, -350.0f, -13700.0f }, + { 825.0f, -450.0f, -15000.0f } }; s16 sp8[3] = { 1, 1, 0 }; - s16 spE[3][2] = { { 4, 5 }, { 8, -1 }, { 9, -1 } }; - s16 sp24[3][4] = { - { 180, 120, 60, 60 }, - { 90, 180, 60, 60 }, - { 90, 180, 60, 60 } - }; - Vec sp3C[3] = { - -350.0f, -300.0f, -10000.0f, - -700.0f, -600.0f, -17000.0f, - 700.0f, -600.0f, -19000.0f - }; + s16 spE[3][2] = { { 4, 5 }, { 8, -1 }, { 9, -1 } }; + s16 sp24[3][4] = { { 180, 120, 60, 60 }, { 90, 180, 60, 60 }, { 90, 180, 60, 60 } }; + Vec sp3C[3] = { -350.0f, -300.0f, -10000.0f, -700.0f, -600.0f, -17000.0f, 700.0f, -600.0f, -19000.0f }; s16 var_r28; s16 var_r31; - + for (var_r31 = 0; var_r31 < 5; var_r31++, var_r29++) { var_r29->unk0 = sp1A[var_r31]; var_r29->unk4.x = sp60[var_r31].x; var_r29->unk4.y = sp60[var_r31].y; var_r29->unk4.z = sp60[var_r31].z; } - + for (var_r31 = 0; var_r31 < 3; var_r31++, var_r30++) { var_r30->unk0 = sp8[var_r31]; var_r30->unk4.x = sp3C[var_r31].x; var_r30->unk4.y = sp3C[var_r31].y; var_r30->unk4.z = sp3C[var_r31].z; - var_r30->unk10 = spE[var_r31][0]; - var_r30->unk12 = spE[var_r31][1]; + var_r30->unk10[0] = spE[var_r31][0]; + var_r30->unk10[1] = spE[var_r31][1]; for (var_r28 = 0; var_r28 < 4; var_r28++) { var_r30->unk14[var_r28] = sp24[var_r31][var_r28]; } } } -void fn_1_3A88(void) { - M427DllMapStruct* sp8; +void fn_1_3A88(void) +{ + M427DllMapStruct *sp8; s16 var_r30; - M427DllMapSubstruct3* var_r31; + M427DllMapSubstruct3 *var_r31; sp8 = lbl_1_bss_F0; - HuSprAnimKill(lbl_1_bss_158.unk334); - HuSprAnimKill(lbl_1_bss_158.unk338); - + HuSprAnimKill(lbl_1_bss_158.unk334.unk_00); + HuSprAnimKill(lbl_1_bss_158.unk334.unk_04); + for (var_r30 = 0, var_r31 = &lbl_1_bss_158.unk4[0]; var_r30 < 2; var_r30++, var_r31++) { - if (var_r31->unk98) { - HuMemDirectFree(var_r31->unk98); + if (var_r31->unk94.unk4) { + HuMemDirectFree(var_r31->unk94.unk4); } } } -void fn_1_3B20(s8 arg0, s16 arg1) { - M427DllMapStruct2* var_r31 = &lbl_1_bss_F8[0]; - M427DllMapSubstruct3* temp_r30 = &lbl_1_bss_158.unk4[arg1]; - Vec sp54[4] = { - { 110.0f, -20.0f, 0.0f }, - { -110.0f, -20.0f, 0.0f }, - { 110.0f, -20.0f, 190.0f }, - { -110.0f, -20.0f, 190.0f } - }; +void fn_1_3B20(s8 arg0, s16 arg1) +{ + M427DllMapStruct2 *var_r31 = &lbl_1_bss_F8[0]; + M427DllMapSubstruct3 *temp_r30 = &lbl_1_bss_158.unk4[arg1]; + Vec sp54[4] = { { 110.0f, -20.0f, 0.0f }, { -110.0f, -20.0f, 0.0f }, { 110.0f, -20.0f, 190.0f }, { -110.0f, -20.0f, 190.0f } }; Mtx sp24; f32 sp14[4] = { 135.0f, 225.0f, 45.0f, 315.0f }; Point3d sp8; @@ -324,20 +498,22 @@ void fn_1_3B20(s8 arg0, s16 arg1) { s32 var_r27; for (var_r29 = 0; var_r29 < 0x10; var_r29++, var_r31++) { - if (var_r31->unk0 == -1) break; + if (var_r31->unk0 == -1) + break; } if (var_r29 != 0x10) { var_r31->unk0 = arg0; temp_f31 = temp_r30->unk90; - PSMTXRotRad(sp24, 0x59, MTXDegToRad(temp_f31)); - PSMTXMultVec(sp24, &sp54[arg0], &sp8); + MTXRotRad(sp24, 0x59, MTXDegToRad(temp_f31)); + MTXMultVec(sp24, &sp54[arg0], &sp8); sp8.x += temp_r30->unk84.x; sp8.y += temp_r30->unk84.y; sp8.z += temp_r30->unk84.z; Hu3DModelAttrReset(var_r31->unk2, 1); if (arg1 == 0) { var_r27 = 1; - } else { + } + else { var_r27 = 2; } Hu3DModelCameraSet(var_r31->unk2, var_r27); @@ -346,15 +522,17 @@ void fn_1_3B20(s8 arg0, s16 arg1) { Hu3DMotionTimeSet(var_r31->unk2, 0.0f); if (arg0 < 2) { Hu3DModelAmbSet(var_r31->unk2, 1.0f, 1.0f, 1.0f); - } else { + } + else { Hu3DModelAmbSet(var_r31->unk2, 0.5f, 0.5f, 0.5f); } Hu3DAnimBankSet(var_r31->unk4, 0); } } -void fn_1_3DBC(void) { - M427DllMapStruct2* var_r31; +void fn_1_3DBC(void) +{ + M427DllMapStruct2 *var_r31; s16 var_r30; f32 temp_f31; @@ -370,13 +548,14 @@ void fn_1_3DBC(void) { } } -void fn_1_3E58(omObjData* arg0) { +void fn_1_3E58(omObjData *arg0) +{ s32 sp8[8]; - M427DllMapStruct* var_r26; - M427DllMapSubstruct3* var_r31; - ModelData* temp_r25; + M427DllMapStruct *var_r26; + M427DllMapSubstruct3 *var_r31; + ModelData *temp_r25; s16 var_r30; - M427DllMapStruct4* var_r29; + M427DllMapStruct4 *var_r29; s16 var_r28; s16 var_r27; @@ -388,22 +567,22 @@ void fn_1_3E58(omObjData* arg0) { temp_r25 = &Hu3DData[sp8[var_r30]]; temp_r25->unk_38[4] = temp_r25->unk_38[5] = temp_r25->unk_38[6] = temp_r25->unk_38[7] = -1; } - + for (var_r30 = 0; var_r30 < 2; var_r30++) { for (var_r27 = 0; var_r27 < 2; var_r27++) { - Hu3DModelKill(var_r31->unk180[var_r30][var_r27].unk0); + Hu3DModelKill(var_r31->unk17E[var_r30][var_r27].unk2); } } for (var_r30 = 0; var_r30 < 2; var_r30++) { for (var_r27 = 0; var_r27 < 2; var_r27++) { - Hu3DModelKill(var_r31->unkBA[var_r30][var_r27].unk0); + Hu3DModelKill(var_r31->unkB8[var_r30][var_r27].unk2); } } - HuSprAnimKill(var_r31->unkAC->unk28); + HuSprAnimKill(var_r31->unkAC->unk_28); Hu3DModelKill(var_r31->unk1A); Hu3DModelKill(var_r31->unk1C); - HuMemDirectFree(var_r31->unk98); - var_r31->unk98 = NULL; + HuMemDirectFree(var_r31->unk94.unk4); + var_r31->unk94.unk4 = NULL; fn_1_DB80(lbl_1_bss_EC[var_r28]); fn_1_DB80(lbl_1_bss_E8[var_r28]); @@ -442,13 +621,14 @@ void fn_1_3E58(omObjData* arg0) { arg0->func = fn_1_4218; } -void fn_1_4218(omObjData* arg0) { +void fn_1_4218(omObjData *arg0) +{ f32 var_f31; f32 temp_f30; f32 var_f29; - M427DllMapStruct5* var_r31; + M427DllMapStruct5 *var_r31; s16 var_r30; - M427DllMapStruct4* var_r29; + M427DllMapStruct4 *var_r29; s32 temp_r28; var_r29 = &lbl_1_bss_98; @@ -462,7 +642,7 @@ void fn_1_4218(omObjData* arg0) { fn_1_44F4(var_f31, 0.0f, temp_f30, var_f29, 0.0f); } } - + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { if (-1.0f != var_r31->unk10) { var_r31->unkC += 20.0f; @@ -474,14 +654,16 @@ void fn_1_4218(omObjData* arg0) { } } -void fn_1_44F4(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { - M427DllMapStruct5* var_r31; +void fn_1_44F4(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4) +{ + M427DllMapStruct5 *var_r31; s16 var_r30; var_r31 = &lbl_1_bss_E4[0]; - + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { - if (-1.0f == var_r31->unk10) break; + if (-1.0f == var_r31->unk10) + break; } if (var_r30 != 0x10) { var_r31->unk0 = arg0; @@ -494,18 +676,19 @@ void fn_1_44F4(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { f32 lbl_1_data_F4 = 450.0f; -f32 fn_1_4570(Vec* arg0) { +f32 fn_1_4570(Vec *arg0) +{ f32 temp_f31; f32 temp_f30; f32 var_f28; f32 var_f27; f32 var_f23; - M427DllMapStruct5* var_r31; + M427DllMapStruct5 *var_r31; s16 var_r30; var_r31 = &lbl_1_bss_E4[0]; var_f27 = 0.0f; - + for (var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { if (-1.0f != var_r31->unk10) { temp_f31 = arg0->x - var_r31->unk0; @@ -527,7 +710,8 @@ f32 fn_1_4570(Vec* arg0) { return var_f27; } -void fn_1_48EC(ModelData* arg0, Mtx arg1) { +void fn_1_48EC(ModelData *arg0, Mtx arg1) +{ Vec sp3C; Vec sp30; Vec sp24; @@ -548,7 +732,7 @@ void fn_1_48EC(ModelData* arg0, Mtx arg1) { CenterM->x = -CenterM->x; CenterM->y = -CenterM->y; CenterM->z = CenterM->z; - CRotM->x = 180.0f + CRotM->x; + CRotM->x = 180.0f + CRotM->x; CRotM->y = 180.0f + -CRotM->y; CRotM->z = CRotM->z; *CZoomM = *CZoomM; @@ -574,7 +758,8 @@ void fn_1_48EC(ModelData* arg0, Mtx arg1) { *CZoomM = temp_f29; } -void fn_1_4D7C(ModelData* arg0, Mtx arg1) { +void fn_1_4D7C(ModelData *arg0, Mtx arg1) +{ Vec sp24; Vec sp18; Vec spC; @@ -602,7 +787,8 @@ void fn_1_4D7C(ModelData* arg0, Mtx arg1) { } } -void fn_1_50A0(ModelData* arg0, Mtx arg1) { +void fn_1_50A0(ModelData *arg0, Mtx arg1) +{ if (lbl_1_bss_98.unk28) { GXSetTexCopySrc(0, 0, 0x280, 0x1E0); GXSetTexCopyDst(0x280, 0x1E0, GX_TF_RGB5A3, 0); @@ -610,20 +796,21 @@ void fn_1_50A0(ModelData* arg0, Mtx arg1) { } } -void fn_1_510C(s32 arg0, s16 arg1, s16 arg2) { +void fn_1_510C(s32 arg0, s16 arg1, s16 arg2) +{ s16 sp12; s16 sp10; s16 spE; s16 spC; s16 spA; s16 sp8; - M427DllMapStruct4* var_r31; - M427DllMapSubstruct5* var_r30; + M427DllMapStruct4 *var_r31; + M427DllMapSubstruct5 *var_r30; s16 var_r29; - ModelData* temp_r28; + ModelData *temp_r28; s16 var_r27; - M427DllMapSubstruct5* var_r26; - M427DllMapSubstruct5* var_r23; + M427DllMapSubstruct5 *var_r26; + M427DllMapSubstruct5 *var_r23; var_r31 = &lbl_1_bss_98; var_r29 = Hu3DHookFuncCreate(fn_1_618C); @@ -657,7 +844,7 @@ void fn_1_510C(s32 arg0, s16 arg1, s16 arg2) { DCFlushRange(var_r26, 0x20000); GXBeginDisplayList(var_r23, 0x20000); GXBegin(GX_QUADS, GX_VTXFMT0, (arg1 * arg2 * 4)); - + for (var_r29 = 0; var_r29 < arg2; var_r29++) { for (var_r27 = 0; var_r27 < arg1; var_r30++, var_r27++) { var_r30->unk0 = var_r27 + var_r29 * var_r31->unk16; @@ -689,7 +876,8 @@ void fn_1_510C(s32 arg0, s16 arg1, s16 arg2) { f32 lbl_1_data_F8 = -1.0f; -void fn_1_558C(M427DllMapStruct4* arg0) { +void fn_1_558C(M427DllMapStruct4 *arg0) +{ Mtx spAC; Mtx sp7C; Mtx sp4C; @@ -703,14 +891,14 @@ void fn_1_558C(M427DllMapStruct4* arg0) { f32 var_f26; f32 var_f25; f32 var_f20; - M427DllMapSubstruct5* var_r30; - Vec* var_r29; - Vec* var_r28; + M427DllMapSubstruct5 *var_r30; + Vec *var_r29; + Vec *var_r28; s16 var_r27; - M427DllMapStruct5* var_r26; - Vec2f* var_r25; + M427DllMapStruct5 *var_r26; + Vec2f *var_r25; s16 var_r24; - CameraData* var_r23; + CameraData *var_r23; s16 var_r22; var_r23 = &Hu3DCamera[0]; @@ -737,12 +925,12 @@ void fn_1_558C(M427DllMapStruct4* arg0) { sp2C.x = sp44.x; sp2C.y = (sp44.y - sp44.x) / (arg0->unk18 - 1); var_f25 = arg0->unk44; - + for (var_r27 = 0; var_r27 < arg0->unk18; var_r27++) { sp34.x = sp3C.x; sp34.y = (sp3C.y - sp3C.x) / (arg0->unk16 - 1); var_f26 = arg0->unk40; - + for (var_r24 = 0; var_r24 < arg0->unk16; var_r28++, var_r29++, var_r24++) { var_r28->x = sp34.x; var_r28->z = sp2C.x; @@ -763,7 +951,7 @@ void fn_1_558C(M427DllMapStruct4* arg0) { } var_r30 = arg0->unk1C; var_r24 = (arg0->unk16 - 1) * (arg0->unk18 - 1); - + for (var_r27 = 0; var_r27 < var_r24; var_r27++, var_r30++) { fn_1_C2C8(&arg0->unk4[var_r30->unk0], &arg0->unk4[var_r30->unk2], &arg0->unk4[var_r30->unk4], &var_r30->unk8); arg0->unkC[var_r30->unk0].x += var_r30->unk8.x; @@ -779,7 +967,7 @@ void fn_1_558C(M427DllMapStruct4* arg0) { arg0->unkC[var_r30->unk6].y += var_r30->unk8.y; arg0->unkC[var_r30->unk6].z += var_r30->unk8.z; } - + var_r29 = arg0->unkC; for (var_r27 = 0; var_r27 < arg0->unk14; var_r27++, var_r29++) { var_f20 = sqrtf((var_r29->x * var_r29->x) + (var_r29->y * var_r29->y) + (var_r29->z * var_r29->z)); @@ -792,7 +980,7 @@ void fn_1_558C(M427DllMapStruct4* arg0) { C_MTXLookAt(spAC, &var_r23->pos, &var_r23->up, &var_r23->target); GXGetProjectionv(&sp7C[0][0]); GXGetViewportv(&sp4C[0][0]); - + for (var_r27 = 0; var_r27 < arg0->unk14; var_r27++, var_r28++, var_r25++) { GXProject(var_r28->x, var_r28->y, var_r28->z, spAC, &sp7C[0][0], &sp4C[0][0], &sp28, &sp24, &sp20); var_r25->x = 0.0015625f * sp28; @@ -811,14 +999,15 @@ void fn_1_558C(M427DllMapStruct4* arg0) { PPCSync(); } -void fn_1_618C(ModelData* arg0, Mtx arg1) { +void fn_1_618C(ModelData *arg0, Mtx arg1) +{ Mtx sp64; Mtx sp34; GXTexObj sp14; GXColor spC; - M427DllMapStruct4* var_r31 = &lbl_1_bss_98; - AnimData** var_r30 = &lbl_1_bss_158.unk334; - + M427DllMapStruct4 *var_r31 = &lbl_1_bss_98; + M427DllMapStruct3Sub *var_r30 = &lbl_1_bss_158.unk334; + fn_1_558C(var_r31); GXLoadPosMtxImm(arg1, 0); GXClearVtxDesc(); @@ -837,7 +1026,7 @@ void fn_1_618C(ModelData* arg0, Mtx arg1) { GXInitTexObj(&sp14, var_r31->unk28, 0x280, 0x1E0, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, 0); GXInitTexObjLOD(&sp14, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, 0, 0, GX_ANISO_1); GXLoadTexObj(&sp14, GX_TEXMAP1); - HuSprTexLoad(*var_r30, 0, 2, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(var_r30->unk_00, 0, 2, GX_REPEAT, GX_REPEAT, GX_LINEAR); GXSetNumTevStages(3); spC.r = 0; spC.g = 0x10; @@ -846,40 +1035,40 @@ void fn_1_618C(ModelData* arg0, Mtx arg1) { GXSetTevColor(GX_TEVREG2, spC); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_ONE, GX_CC_ZERO); - GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); - GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG0); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR0A0); GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_TEXC, GX_CC_C0, GX_CC_A2, GX_CC_ZERO); - GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG1); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG1); GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); - GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVREG1); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG1); GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR0A0); GXSetTevColorIn(GX_TEVSTAGE2, GX_CC_C1, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C2); - GXSetTevColorOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevColorOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); GXSetTevAlphaIn(GX_TEVSTAGE2, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); - GXSetTevAlphaOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV); + GXSetTevAlphaOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); GXSetNumIndStages(1); GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD1, GX_TEXMAP2); GXSetTevIndWarp(GX_TEVSTAGE0, GX_INDTEXSTAGE0, 1, 0, GX_ITM_0); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); - PSMTXScale(sp64, -0.1f, 0.0f, 1.0f); + MTXScale(sp64, -0.1f, 0.0f, 1.0f); GXSetIndTexMtx(GX_ITM_0, (f32(*)[3])(sp64), 0); GXSetNumTexGens(2); if (omPauseChk() == 0) { var_r31->unk38 += 0.001f; var_r31->unk3C += 0.0005f; } - PSMTXRotRad(sp64, 0x58, 1.5707964f); - PSMTXScale(sp34, 0.001f, 0.001f, 0.001f); - PSMTXConcat(sp64, sp34, sp64); + MTXRotRad(sp64, 0x58, 1.5707964f); + MTXScale(sp34, 0.001f, 0.001f, 0.001f); + MTXConcat(sp64, sp34, sp64); mtxTransCat(sp64, var_r31->unk38, var_r31->unk3C, 0.0f); GXLoadTexMtxImm(sp64, 0x1E, GX_MTX2x4); - GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, 0, 0x7D); - GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, 0x1E, 0, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); GXSetNumChans(1); GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); - GXSetZMode(1, GX_LEQUAL, 1); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); GXSetZCompLoc(0); GXSetBlendMode(GX_BM_NONE, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); @@ -888,3 +1077,2081 @@ void fn_1_618C(ModelData* arg0, Mtx arg1) { GXSetTevDirect(GX_TEVSTAGE0); GXSetTevDirect(GX_TEVSTAGE1); } + +s32 lbl_1_data_FC[0xC] = { + 0x3A0000, + 0x3A0001, + 0x3A0002, + 0x3A0003, + 0x3A0004, + 0x3A0005, + 0x3A0006, + 0x3A0007, + 0x3A0008, + 0x3A0009, + 0x3A000A, + 0x3A000B, +}; +s32 lbl_1_data_12C[2] = { 0x3A000C, 0x3A000D }; +s32 lbl_1_data_134[4] = { 0x3A000E, 0x3A000F, 0x3F800000, 0x01000000 }; + +void fn_1_6760(omObjData *object) +{ + s16 sp14[2][0x20]; + s16 sp10[2]; + s16 spC[2]; + s16 sp8[2]; + M427DllMapSubstruct3 *var_r31; + s16 var_r30; + M427DllMapUNKB8 *var_r29; + s16 var_r28; + M427DllMapUNK17E *var_r27; + s16 var_r26; + M427DllMapSubstruct3Sub *var_r25; + M427DllMapStruct3 *var_r24; + u16 var_r23; + + var_r24 = &lbl_1_bss_158; + Hu3DFogSet(3500.0f, 20000.0f, 0, 0, 0); + for (var_r28 = 0, var_r31 = &var_r24->unk4[0]; var_r28 < 2; var_r28++, var_r31++) { + var_r31->unk0 = var_r28; + sp10[var_r28] = 0; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + var_r31->unk178[var_r30] = 0; + } + for (var_r30 = 0; var_r30 < 0xB; var_r30++) { + var_r31->unk2[var_r30] = Hu3DModelCreateFile(lbl_1_data_FC[var_r30]); + var_r31->unk44[var_r30] = -1; + if (var_r30 < 0xA) { + Hu3DModelLayerSet(var_r31->unk2[var_r30], 2); + } + else { + Hu3DModelLayerSet(var_r31->unk2[var_r30], 5); + } + Hu3DModelAmbSet(var_r31->unk2[var_r30], 0.1f, 0.1f, 0.1f); + if (var_r28 == 0) { + Hu3DModelCameraSet(var_r31->unk2[var_r30], 1); + } + else { + Hu3DModelCameraSet(var_r31->unk2[var_r30], 2); + } + sp14[var_r28][sp10[var_r28]++] = var_r31->unk2[var_r30]; + } + var_r30 = Hu3DHookFuncCreate(fn_1_C154); + var_r31->unk1E = var_r30; + Hu3DModelLayerSet(var_r30, 4); + if (var_r28 == 0) { + Hu3DModelCameraSet(var_r30, 1); + } + else { + Hu3DModelCameraSet(var_r30, 2); + } + var_r30 = Hu3DHookFuncCreate(fn_1_C200); + var_r31->unk20 = var_r30; + Hu3DModelLayerSet(var_r30, 6); + if (var_r28 == 0) { + Hu3DModelCameraSet(var_r30, 1); + } + else { + Hu3DModelCameraSet(var_r30, 2); + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r29 = var_r31->unkB8[var_r30]; + for (var_r26 = 0; var_r26 < 2; var_r26++, var_r29++) { + if ((var_r28 == 0) && (var_r26 == 0)) { + var_r29->unk2 = spC[var_r30] = Hu3DModelCreateFile(lbl_1_data_134[var_r30]); + } + else { + var_r29->unk2 = Hu3DModelLink(spC[var_r30]); + } + Hu3DModelAttrSet(var_r29->unk2, HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(var_r29->unk2, 2); + Hu3DModelAmbSet(var_r29->unk2, 0.0f, 0.0f, 0.0f); + if (var_r28 == 0) { + Hu3DModelCameraSet(var_r29->unk2, 1); + } + else { + Hu3DModelCameraSet(var_r29->unk2, 2); + } + sp14[var_r28][sp10[var_r28]++] = var_r29->unk2; + var_r29->unk6 = fn_1_95E8(0x3A0018, var_r28, 0, 0.0f, -400.0f, 700.0f, 800.0f, -5.0f); + fn_1_9958(var_r29->unk6, 1); + fn_1_99E4(var_r29->unk6, 0xFF, 0xFF, 0xFF, 0); + var_r29->unk4 = 2 * var_r30 + 4 + var_r26; + fn_1_C528(var_r29->unk2, var_r29->unk4, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0xFF, 0xA0, 0x60); + Hu3DLLightStaticSet(var_r29->unk2, var_r29->unk4, 1); + Hu3DLLightPointSet(var_r29->unk2, var_r29->unk4, 1.0f, 0.6f, 3); + } + } + for (var_r30 = 0; var_r30 < 2; var_r30++) { + var_r27 = var_r31->unk17E[var_r30]; + for (var_r26 = 0; var_r26 < 2; var_r26++, var_r27++) { + if ((var_r28 == 0) && (var_r26 == 0)) { + var_r27->unk2 = sp8[var_r30] = Hu3DModelCreateFile(lbl_1_data_12C[var_r30]); + } + else { + var_r27->unk2 = Hu3DModelLink(sp8[var_r30]); + } + Hu3DModelAttrSet(var_r27->unk2, HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(var_r27->unk2, 2); + Hu3DModelAmbSet(var_r27->unk2, 0.0f, 0.0f, 0.0f); + if (var_r28 == 0) { + Hu3DModelCameraSet(var_r27->unk2, 1); + } + else { + Hu3DModelCameraSet(var_r27->unk2, 2); + } + sp14[var_r28][sp10[var_r28]++] = var_r27->unk2; + } + } + for (var_r30 = 0; var_r30 < 4; var_r30++) { + var_r31->unk34[var_r30] = fn_1_C41C(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0xFF, 0xFF, 0xFF); + var_r31->unk24[var_r30] = -1.0f; + } + } + for (var_r28 = 0, var_r31 = var_r24->unk4; var_r28 < 2; var_r28++, var_r31++) { + var_r31->unk5C = Hu3DLLightCreate(var_r31->unk2[0], 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0xFA, 0xF0, 0xD2); + Hu3DLLightSpotSet(var_r31->unk2[0], var_r31->unk5C, 37.5f, 4); + Hu3DLLightStaticSet(var_r31->unk2[0], var_r31->unk5C, 1); + var_r31->unk78.x = 0.0f; + var_r31->unk78.y = 0.0f; + var_r31->unk78.z = 0.0f; + var_r31->unk84.x = 0.0f; + var_r31->unk84.y = 0.0f; + var_r31->unk84.z = 0.0f; + var_r31->unk90 = 0.0f; + } + fn_1_93EC(0x3A0016, 0x3A0014, 2000.0f, 6000.0f, 4.0f, 9.0f); + for (var_r28 = 0, var_r31 = var_r24->unk4; var_r28 < 2; var_r28++, var_r31++) { + var_r31->unkB0[0] = fn_1_95E8(0x3A0015, var_r28, 0.0f, 0.0f, -900.0f, 500.0f, 700.0f, -10.0f); + var_r25 = &var_r31->unk94; + var_r25->unk0 = var_r28; + var_r25->unk8 = GXGetTexBufferSize(0x140, 0x1E0, 5, 0, 0); + var_r25->unk4 = HuMemDirectMalloc(HEAP_DATA, var_r25->unk8); + var_r30 = Hu3DHookFuncCreate(fn_1_A148); + var_r31->unk1C = var_r30; + Hu3DModelCameraSet(var_r30, var_r28 ? 2 : 1); + Hu3DModelLayerSet(var_r30, 1); + Hu3DData[var_r30].unk_120 = var_r25; + var_r31->unk1A = fn_1_A1F4(0x3A0013, 0xA, 0x1E, var_r28, 6000.0f, lbl_1_bss_554, lbl_1_bss_558); + fn_1_C528(var_r31->unk1A, 1, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0xC8, 0xF0, 0xA0); + Hu3DLLightStaticSet(var_r31->unk1A, 1, 1); + Hu3DLLightPointSet(var_r31->unk1A, 1, 125.0f, 0.5f, 3); + fn_1_C528(var_r31->unk1A, 2, 0.0f, -500.0f, -23500.0f, 0.0f, 0.0f, 0.0f, 0xFA, 0xF0, 0xD2); + Hu3DLLightStaticSet(var_r31->unk1A, 2, 1); + Hu3DLLightPointSet(var_r31->unk1A, 2, 800.0f, 0.5f, 3); + sp14[var_r28][sp10[var_r28]++] = var_r31->unk1A; + fn_1_9318(sp14[var_r28], sp10[var_r28]); + } + object->func = fn_1_72E4; +} + +void fn_1_72E4(omObjData *object) +{ + float var_f31; + M427DllMapStruct2 *var_r31; + s16 var_r30; + + if (fn_1_1788() == 7) { + object->func = fn_1_3E58; + } + fn_1_73BC(); + fn_1_7C34(); + fn_1_7F38(); + fn_1_8F90(object); + fn_1_9240(); + for (var_r31 = lbl_1_bss_F8, var_r30 = 0; var_r30 < 0x10; var_r30++, var_r31++) { + if (var_r31->unk0 != -1) { + var_f31 = Hu3DMotionMaxTimeGet(var_r31->unk2); + if (Hu3DMotionTimeGet(var_r31->unk2) >= var_f31) { + var_r31->unk0 = -1; + Hu3DModelAttrSet(var_r31->unk2, HU3D_ATTR_DISPOFF); + } + } + } +} + +void fn_1_73BC(void) +{ + float var_f31; + M427DllMapSubstruct3 *var_r31; + M427DllMapSubstruct6 *var_r30; + s16 var_r29; + ModelData *var_r28; + s16 var_r27; + + for (var_r27 = 0, var_r31 = lbl_1_bss_158.unk4; var_r27 < 2; var_r27++, var_r31++) { + for (var_r29 = 0; var_r29 < 0xA; var_r29++) { + var_r28 = &Hu3DData[var_r31->unk2[var_r29]]; + var_r30 = fn_1_DC0C(lbl_1_bss_E8[var_r31->unk0], var_r31->unk3C[var_r31->unk44[var_r29]]); + var_f31 = -2000.0f * var_r29; + if (((var_r31->unk84.z - 25000.0f) < var_f31) && ((3000.0f + var_r31->unk84.z) > var_f31)) { + if (var_r31->unk44[var_r29] == -1) { + fn_1_794C(var_r31, var_r29); + var_r28->attr &= 0xFFFFFFFE; + } + else { + if (var_r30) { + var_r30->unk_24 += 5.0f; + if (var_r30->unk_24 >= 360.0f) { + var_r30->unk_24 -= 360.0f; + } + var_r30->unk_48.x = var_r30->unk_48.y = var_r30->unk_48.z = 1.0 + (0.05000000074505806 * sind(var_r30->unk_24)); + } + var_r31->unk24[var_r31->unk44[var_r29]] += 5.0f; + if (var_r31->unk24[var_r31->unk44[var_r29]] >= 360.0f) { + var_r31->unk24[var_r31->unk44[var_r29]] -= 360.0f; + } + var_f31 = 50.0 * sind(var_r31->unk24[var_r31->unk44[var_r29]]); + var_f31 = var_f31; + Hu3DLLightPointSet(var_r31->unk2[var_r29], 1, 400.0f + var_f31, 0.5f, 3); + if (var_r29 == 0) { + var_r30 = fn_1_DC0C(lbl_1_bss_E8[var_r31->unk0], var_r31->unk5A); + if (var_r30->unk_24 >= 360.0f) { + var_r30->unk_24 -= 360.0f; + } + var_r30->unk_48.x = var_r30->unk_48.y = var_r30->unk_48.z = 1.0 + (0.05000000074505806 * sind(var_r30->unk_24)); + var_r31->unk24[1] += 5.0f; + if (var_r31->unk24[1] >= 360.0f) { + var_r31->unk24[1] -= 360.0f; + } + var_f31 = 50.0 * sind(var_r31->unk24[1]); + var_f31 = var_f31; + Hu3DLLightPointSet(var_r31->unk2[var_r29], 2, 400.0f + var_f31, 0.5f, 3); + } + } + } + else { + if (var_r31->unk44[var_r29] != -1) { + if (var_r30) { + var_r30->unk_62 = 0; + } + var_r28->unk_38[1] = -1; + var_r31->unk24[var_r31->unk44[var_r29]] = -1.0f; + var_r31->unk44[var_r29] = -1; + if (var_r29 == 0) { + var_r30 = fn_1_DC0C(lbl_1_bss_E8[var_r31->unk0], var_r31->unk5A); + var_r30->unk_62 = 0; + var_r28->unk_38[2] = -1; + var_r31->unk24[1] = -1.0f; + } + } + var_r28->attr |= 1; + } + } + } +} + +Vec lbl_1_data_144[0xC] = { + { -670.0f, 400.0f, 1750.0f }, + { 930.0f, 400.0f, -1000.0f }, + { -930.0f, 400.0f, -3000.0f }, + { 230.0f, 400.0f, -5000.0f }, + { -1630.0f, 300.0f, -7000.0f }, + { 530.0f, 100.0f, -9000.0f }, + { -530.0f, 100.0f, -11000.0f }, + { 1630.0f, 100.0f, -13000.0f }, + { -230.0f, 0.0f, -15000.0f }, + { 930.0f, -200.0f, -17000.0f }, + { -930.0f, -200.0f, -19000.0f }, + { 930.0f, -200.0f, -21000.0f }, +}; + +void fn_1_794C(M427DllMapSubstruct3 *arg0, s16 arg1) +{ + Vec sp14; + s16 var_r30; + ModelData *var_r28; + + var_r28 = &Hu3DData[arg0->unk2[arg1]]; + { + Vec sp8 = { 0.0f, 0.0f, 0.0f }; + if (arg1 != 0xA) { + for (var_r30 = 0; var_r30 < 4; var_r30++) { + if (arg0->unk24[var_r30] == -1.0f) { + break; + } + } + if (var_r30 != 4) { + var_r28->unk_38[1] = arg0->unk34[var_r30]; + arg0->unk24[var_r30] = 0.0f; + arg0->unk44[arg1] = var_r30; + if (var_r28->unk_38[1] != -1) { + sp14.x = lbl_1_data_144[arg1 + 1].x; + sp14.y = lbl_1_data_144[arg1 + 1].y; + sp14.z = lbl_1_data_144[arg1 + 1].z; + Hu3DLLightPointSet(arg0->unk2[arg1], 1, 400.0f, 0.5f, 3); + Hu3DLLightPosSetV(arg0->unk2[arg1], 1, &sp14, &sp8); + } + arg0->unk3C[var_r30] = fn_1_D430(sp14.x, sp14.y, sp14.z, lbl_1_bss_E8[arg0->unk0]); + if (arg1 == 0) { + var_r30 = 1; + var_r28->unk_38[2] = arg0->unk34[var_r30]; + arg0->unk24[var_r30] = 0.0f; + sp14.x = lbl_1_data_144[0].x; + sp14.y = lbl_1_data_144[0].y; + sp14.z = lbl_1_data_144[0].z; + Hu3DLLightPointSet(arg0->unk2[0], 2, 400.0f, 0.5f, 3); + Hu3DLLightPosSetV(arg0->unk2[0], 2, &sp14, &sp8); + arg0->unk5A = fn_1_D430(sp14.x, sp14.y, sp14.z, lbl_1_bss_E8[arg0->unk0]); + } + } + } + } +} + +float lbl_1_data_1D4[2] = { 50.0f, 80.0f }; + +void fn_1_7C34(void) +{ + Vec sp14; + M427DllMapSubstruct3 *var_r31; + ModelData *var_r30; + s16 var_r29; + s16 var_r28; + M427DllMapUNK17E *var_r27; + M427DllMapSubstruct *var_r26; + s16 var_r25; + + for (var_r26 = lbl_1_bss_158.unk3A0, var_r29 = 0; var_r29 < 5; var_r29++, var_r26++) { + for (var_r28 = 0, var_r31 = lbl_1_bss_158.unk4; var_r28 < 2; var_r28++, var_r31++) { + if ((var_r31->unk18E[var_r29] == 0) && ((var_r31->unk84.z - 7000.0f) < var_r26->unk4.z) + && ((1000.0f + var_r31->unk84.z) > var_r26->unk4.z)) { + fn_1_7E60(var_r29, var_r31); + } + } + } + for (var_r29 = 0, var_r31 = lbl_1_bss_158.unk4; var_r29 < 2; var_r29++, var_r31++) { + for (var_r28 = 0; var_r28 < 2; var_r28++) { + var_r27 = var_r31->unk17E[var_r28]; + for (var_r25 = 0; var_r25 < 2; var_r25++, var_r27++) { + var_r30 = &Hu3DData[var_r27->unk2]; + if ((var_r30->attr & 1) == 0) { + if (((var_r31->unk84.z - 7000.0f) > var_r30->pos.z) || ((1000.0f + var_r31->unk84.z) < var_r30->pos.z)) { + var_r30->attr |= 1; + var_r31->unk18E[var_r27->unk0] = 0; + } + else { + sp14.x = var_r30->pos.x; + sp14.z = var_r30->pos.z; + fn_1_15FD0(sp14, lbl_1_data_1D4[var_r28], 0, 1, var_r31->unk0); + } + } + } + } + } +} + +void fn_1_7E60(s16 arg0, M427DllMapSubstruct3 *arg1) +{ + M427DllMapUNK17E *var_r31; + M427DllMapSubstruct *var_r30; + s16 var_r29; + ModelData *var_r28; + + var_r30 = &lbl_1_bss_158.unk3A0[arg0]; + var_r31 = arg1->unk17E[var_r30->unk0]; + for (var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) { + var_r28 = &Hu3DData[var_r31->unk2]; + if ((var_r28->attr & 1) != 0) { + Hu3DModelAttrReset(var_r31->unk2, HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(var_r31->unk2, var_r30->unk4.x, var_r30->unk4.y, var_r30->unk4.z); + var_r31->unk0 = arg0; + arg1->unk18E[arg0] = 1; + return; + } + } +} + +void fn_1_7F38(void) +{ + Vec sp14; + float var_f31; + M427DllMapUNKB8 *var_r31; + M427DllMapSubstruct3 *var_r30; + ModelData *var_r29; + s16 var_r28; + s16 var_r27; + M427DllMapSubstruct2 *var_r26; + s16 var_r25; + s32 var_r24; + s32 var_r23; + + for (var_r26 = lbl_1_bss_158.unk34C, var_r27 = 0; var_r27 < 3; var_r27++, var_r26++) { + for (var_r28 = 0, var_r30 = lbl_1_bss_158.unk4; var_r28 < 2; var_r28++, var_r30++) { + if ((var_r30->unk178[var_r27] == 0) && ((var_r30->unk84.z - 7000.0f) < var_r26->unk4.z) + && ((1000.0f + var_r30->unk84.z) > var_r26->unk4.z)) { + fn_1_85D4(var_r27, var_r30); + } + } + } + for (var_r27 = 0, var_r30 = lbl_1_bss_158.unk4; var_r27 < 2; var_r27++, var_r30++) { + for (var_r28 = 0; var_r28 < 2; var_r28++) { + var_r31 = var_r30->unkB8[var_r28]; + for (var_r25 = 0; var_r25 < 2; var_r25++, var_r31++) { + var_r29 = &Hu3DData[var_r31->unk2]; + if ((var_r29->attr & 1) == 0) { + if (((var_r30->unk84.z - 7000.0f) > var_r29->pos.z) || ((1000.0f + var_r30->unk84.z) < var_r29->pos.z)) { + if (var_r31->unk8 == 0) { + fn_1_8E1C(1, var_r30, var_r31); + fn_1_9958(var_r31->unk6, 1); + var_r29->attr |= 1; + var_r31->unk8 = 0x63; + var_r30->unk178[var_r31->unk0] = 0; + } + else if (var_r31->unk8 != 2) { + var_r31->unkA = 0; + var_r31->unk8 = 2; + } + } + switch (var_r31->unk8) { + case 0: + if (++var_r31->unkA > var_r31->unk18) { + var_r31->unkA = 0; + var_r31->unkC = 0.0f; + var_r31->unk20 = ((rand8() << 8) | rand8()) % 361; + var_r31->unk24 = ((rand8() << 8) | rand8()) % 361; + var_r31->unk28 = 1.0f; + var_r31->unk2C = 0.0f; + var_r31->unk8++; + } + break; + case 1: + if (++var_r31->unkA > var_r31->unk1E) { + var_r31->unkA = 0; + var_r31->unk8++; + if (fn_1_1788() <= 4) { + if (var_r27 == 0) { + var_r24 = HuAudFXPlay(0x65A); + } + else { + var_r24 = HuAudFXPlay(0x65B); + } + var_r23 = var_r27 * 4 + var_r28 * 2 + var_r25; + lbl_1_bss_0[var_r23].unk0 = var_r24; + lbl_1_bss_0[var_r23].unk4 = 0x78; + } + } + var_r31->unk_14 = 0.1f; + fn_1_8768(var_r30, var_r31, var_r28, 0.2f, var_r31->unk_14); + break; + case 2: + if (++var_r31->unkA > var_r31->unk1A) { + var_r31->unkA = 0; + var_r31->unk8++; + } + if (var_r31->unk_14 < 1.0f) { + var_r31->unk_14 += 0.05f; + } + if (var_r31->unk_14 > 1.0f) { + var_r31->unk_14 = 1.0f; + } + var_r31->unk_10 += 40.0f; + var_r31->unkC += 0.05f; + fn_1_8768(var_r30, var_r31, var_r28, 1.0f, var_r31->unk_14); + break; + case 3: + var_r31->unkA++; + var_f31 = 1.0f - ((float)var_r31->unkA / var_r31->unk1C); + if (var_r31->unkA > var_r31->unk1C) { + var_r31->unkA = 0; + var_f31 = 0.0f; + var_r31->unk8 = 0; + } + var_r31->unk_10 = 400.0 * sind((90.0f * var_f31)); + var_r31->unkC = 1.2f * var_f31; + var_r31->unk_14 = var_f31; + fn_1_8768(var_r30, var_r31, var_r28, var_f31, var_r31->unk_14); + break; + } + sp14.x = var_r29->pos.x; + sp14.z = var_r29->pos.z; + fn_1_15FD0(sp14, 50.0f, 0, 1, var_r30->unk0); + } + } + } + } +} + +void fn_1_85D4(s16 arg0, M427DllMapSubstruct3 *arg1) +{ + float var_f31; + M427DllMapUNKB8 *var_r31; + M427DllMapSubstruct2 *var_r30; + s16 var_r29; + ModelData *var_r27; + + var_r30 = &lbl_1_bss_158.unk34C[arg0]; + var_r31 = arg1->unkB8[var_r30->unk0]; + for (var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) { + var_r27 = &Hu3DData[var_r31->unk2]; + if ((var_r27->attr & 1) != 0) { + Hu3DModelAttrReset(var_r31->unk2, HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(var_r31->unk2, var_r30->unk4.x, var_r30->unk4.y, var_r30->unk4.z); + var_r31->unk8 = 0; + var_r31->unkA = 0; + var_r31->unk18 = var_r30->unk14[0]; + var_r31->unk1A = var_r30->unk14[1]; + var_r31->unk1C = var_r30->unk14[2]; + var_r31->unk1E = var_r30->unk14[3]; + var_r31->unk0 = arg0; + arg1->unk178[arg0] = 1; + fn_1_9A2C(var_r31->unk6, var_r30->unk4.x, var_r30->unk4.y, var_r30->unk4.z); + if (var_r30->unk0 == 0) { + var_f31 = 90.0f; + } + else { + var_f31 = 270.0f; + } + fn_1_9B14(var_r31->unk6, 0.0f, var_f31, 0.0f); + fn_1_999C(var_r31->unk6, 1); + fn_1_8E1C(0, arg1, var_r31); + return; + } + } +} + +float lbl_1_data_1DC[2] = { -1.0f, 1.0f }; +float lbl_1_data_1E4[2] = { 270.0f, 90.0f }; + +void fn_1_8768(M427DllMapSubstruct3 *var_r28, M427DllMapUNKB8 *var_r31, s16 var_r27, float var_f28, float var_f29) +{ + Vec sp50; + Vec sp44; + Vec sp38; + Vec sp2C; + Vec sp20; + float var_f31; + float var_f30; + ModelData *var_r30; + M427DllMapStruct *var_r29; + + var_r30 = &Hu3DData[var_r31->unk2]; + var_f31 = var_f28 * var_r31->unk28; + sp50.x = var_r30->pos.x + (60.0f * lbl_1_data_1DC[var_r27]); + sp50.y = 80.0f + var_r30->pos.y; + sp50.z = var_r30->pos.z; + if (var_r31->unk8 == 1) { + fn_1_C76C(0, sp50.x, sp50.y, sp50.z, 1, lbl_1_data_1E4[var_r27], var_f31, lbl_1_bss_EC[var_r28->unk0]); + return; + } + fn_1_C76C(1, sp50.x, sp50.y, sp50.z, 1, lbl_1_data_1E4[var_r27], var_f31, lbl_1_bss_EC[var_r28->unk0]); + if (var_r31->unk_10 > (400.0f * var_r31->unk28)) { + var_r31->unk_10 = 400.0f * var_r31->unk28; + } + else if (var_r31->unk_10 < 1.0f) { + var_r31->unk_10 = 1.0f; + } + var_r31->unk2C += 30.0f; + if (var_r31->unk2C >= 360.0f) { + var_r31->unk2C -= 360.0f; + } + sp50.x = var_r30->pos.x + (240.0f * lbl_1_data_1DC[var_r27]); + sp50.y = 100.0f + var_r30->pos.y; + sp50.z = var_r30->pos.z; + sp44.x = sp44.y = sp44.z = 0.0f; + var_f30 = var_r31->unk_10 + (var_f28 * (50.0 * sind(var_r31->unk2C))); + Hu3DLLightPointSet(var_r31->unk2, var_r31->unk4, var_f30, 0.5f, 3); + Hu3DLLightPosSetV(var_r31->unk2, var_r31->unk4, &sp50, &sp44); + var_r29 = &lbl_1_bss_F0[var_r31->unk6]; + var_r29->unk90 -= 0.0005f; + var_r29->unk8C += 0.005f; + var_r29->unk94 += 0.001f; + if (var_r31->unkC > 1.0f) { + var_r31->unkC = 1.0f; + } + else if (var_r31->unkC < 0.0f) { + var_r31->unkC = 0.0f; + } + fn_1_99E4(var_r31->unk6, 0xFF, 0xA0, 0x60, 255.0f * var_r31->unkC); + var_r31->unk20 += 2.0f; + var_r31->unk24 += (((rand8() << 8) | rand8()) % 5) + 4; + if (var_r31->unk20 >= 360.0f) { + var_r31->unk20 -= 360.0f; + } + if (var_r31->unk24 >= 360.0f) { + var_r31->unk24 -= 360.0f; + } + sp38.x = 1.0 + (0.009999999776482582 * sind(var_r31->unk24)); + sp38.z = var_r31->unk28 + (0.009999999776482582 * sind(var_r31->unk20)); + fn_1_9AA0(var_r31->unk6, sp38.x, 1.0f, sp38.z); + if (var_r27 == 0) { + sp2C.x = var_r30->pos.x - (700.0f * var_f31 * var_f29); + sp20.x = var_r30->pos.x - 50.0f; + } + else { + sp2C.x = 50.0f + var_r30->pos.x; + sp20.x = var_r30->pos.x + (700.0f * var_f31 * var_f29); + } + sp2C.z = var_r30->pos.z - 30.0f; + sp20.z = 30.0f + var_r30->pos.z; + fn_1_15F10(sp2C, sp20, 1, 1, var_r28->unk0); +} + +void fn_1_8E1C(u8 arg0, M427DllMapSubstruct3 *arg1, M427DllMapUNKB8 *arg2) +{ + s32 spC[8]; + s16 var_r30; + ModelData *var_r29; + M427DllMapSubstruct2 *var_r27; + s16 var_r26; + ModelData *var_r25; + s16 var_r24; + + var_r27 = &lbl_1_bss_158.unk34C[arg2->unk0]; + var_r25 = &Hu3DData[arg2->unk2]; + if (arg0 == 0) { + var_r26 = var_r25->unk_38[arg2->unk4]; + } + else { + var_r26 = -1; + } + var_r24 = fn_1_10FE8(arg1->unk0, spC); + for (var_r30 = 0; var_r30 < var_r24; var_r30++) { + var_r29 = &Hu3DData[spC[var_r30]]; + var_r29->unk_38[arg2->unk4] = var_r26; + } + var_r29 = &Hu3DData[arg1->unk1A]; + var_r29->unk_38[arg2->unk4] = var_r26; + for (var_r30 = 0; var_r30 < 2; var_r30++) { + if (var_r27->unk10[var_r30] != -1) { + var_r29 = &Hu3DData[arg1->unk2[var_r27->unk10[var_r30]]]; + var_r29->unk_38[arg2->unk4] = var_r26; + } + } +} + +void fn_1_8F90(omObjData *object) +{ + Vec sp14; + Vec sp8; + float var_f31; + float var_f30; + M427DllMapSubstruct3 *var_r31; + s16 var_r30; + M427DllMapStruct3 *var_r29; + + var_r29 = &lbl_1_bss_158; + for (var_r30 = 0, var_r31 = var_r29->unk4; var_r30 < 2; var_r30++, var_r31++) { + var_f31 = sind(var_r31->unk90); + var_f30 = cosd(var_r31->unk90); + var_r31->unk_60.x = var_r31->unk84.x - (25.0f * var_f31); + var_r31->unk_60.y = 100.0f + var_r31->unk84.y; + var_r31->unk_60.z = var_r31->unk84.z - (25.0f * var_f30); + var_r31->unk_6C.x = var_r31->unk_60.x - (50.0f * var_f31); + var_r31->unk_6C.y = var_r31->unk_60.y; + var_r31->unk_6C.z = var_r31->unk_60.z - (50.0f * var_f30); + Hu3DLLightPosSet(var_r31->unk2[0], var_r31->unk5C, var_r31->unk_60.x, var_r31->unk_60.y, var_r31->unk_60.z, 0.0f, 0.0f, 0.0f); + Hu3DLLightPosAimSetV(var_r31->unk2[0], var_r31->unk5C, &var_r31->unk_60, &var_r31->unk_6C); + fn_1_9A2C(var_r31->unkB0[0], var_r31->unk84.x, var_r31->unk84.y, var_r31->unk84.z); + fn_1_9B14(var_r31->unkB0[0], 0.0f, var_r31->unk90, 0.0f); + sp14.x = var_r31->unk84.x; + sp14.y = 100.0f + var_r31->unk84.y; + sp14.z = 50.0f + var_r31->unk84.z; + sp8.x = sp8.y = sp8.z = 0.0f; + Hu3DLLightPosSetV(var_r31->unk1A, 1, &sp14, &sp8); + } +} + +void fn_1_91E0(s16 arg0, float arg8, float arg9, float argA, float argB) +{ + M427DllMapSubstruct3 *var_r31; + + var_r31 = &lbl_1_bss_158.unk4[arg0]; + var_r31->unk84.x = arg8; + var_r31->unk84.y = arg9; + var_r31->unk84.z = argA; + var_r31->unk90 = argB; + if (var_r31->unkAC) { + var_r31->unkAC->unk_0C = 1500.0f + argA; + } +} + +void fn_1_9240(void) +{ + M427DllMapStruct *var_r31; + M427DllMapSubstruct3 *var_r30; + s16 var_r29; + s16 var_r28; + + for (var_r30 = lbl_1_bss_158.unk4, var_r28 = 0; var_r28 < 2; var_r28++, var_r30++) { + for (var_r29 = 0; var_r29 < 1; var_r29++) { + var_r31 = &lbl_1_bss_F0[var_r30->unkB0[var_r29]]; + var_r31->unk90 -= 0.0005f; + var_r31->unk8C += 0.0005f; + var_r31->unk94 += 0.0005f; + } + } +} + +void fn_1_9318(s16 *arg0, s16 arg1) +{ + s16 var_r31; + ModelData *var_r30; + ModelData *var_r29; + s16 var_r28; + + var_r30 = &Hu3DData[*arg0]; + for (var_r28 = 1; var_r28 < arg1; var_r28++) { + var_r29 = &Hu3DData[arg0[var_r28]]; + for (var_r31 = 0; var_r31 < 8; var_r31++) { + if (var_r30->unk_38[var_r31] != -1) { + var_r29->unk_38[var_r31] = var_r30->unk_38[var_r31]; + } + } + var_r29->attr |= 0x1000; + } +} + +void fn_1_93EC(s32 sp8, s32 spC, float var_f30, float var_f31, float sp10, float sp14) +{ + M427DllMapStruct3Sub *var_r31; + + var_r31 = &lbl_1_bss_158.unk334; + var_r31->unk_00 = HuSprAnimRead(HuDataReadNum(sp8, MEMORY_DEFAULT_NUM)); + var_r31->unk_04 = HuSprAnimRead(HuDataReadNum(spC, MEMORY_DEFAULT_NUM)); + var_r31->unk_08 = 0.5f * var_f30; + var_r31->unk_0C = 0.5f * var_f31; + var_r31->unk_10 = sp10 / var_f30; + var_r31->unk_14 = sp14 / var_f31; +} + +void fn_1_94BC(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3, float arg8, Vec2f *arg4, s16 arg5) +{ + Mtx sp58; + Mtx sp28; + Vec sp1C; + Vec sp10; + M427DllMapStruct3Sub *var_r31; + s16 var_r28; + + var_r31 = &lbl_1_bss_158.unk334; + for (var_r28 = 0; var_r28 < arg5; var_r28++, arg2++, arg4++) { + MTXScale(sp58, arg3->x, arg3->y, arg3->z); + MTXRotRad(sp28, 0x59, MTXDegToRad(arg8)); + MTXConcat(sp58, sp28, sp58); + MTXMultVec(sp58, arg2, &sp1C); + sp10.x = var_r31->unk_08 + ((sp1C.x + arg1->x) - arg0->x); + sp10.z = var_r31->unk_0C + ((sp1C.z + arg1->z) - arg0->z); + arg4->x = sp10.x * var_r31->unk_10; + arg4->y = sp10.z * var_r31->unk_14; + } +} + +s16 fn_1_95E8(s32 arg0, s16 arg1, s16 arg2, float arg8, float arg9, float argA, float argB, float argC) +{ + M427DllMapStruct *var_r31; + s16 var_r30; + s16 var_r29; + void *var_r28; + void *var_r26; + + for (var_r31 = lbl_1_bss_F0, var_r29 = 0; var_r29 < 0x10; var_r29++, var_r31++) { + if (var_r31->unk2 == -1) { + break; + } + } + if (var_r29 == 0x10) { + return -1; + } + var_r31->unk4 = Hu3DHookFuncCreate(fn_1_9B88); + Hu3DModelCameraSet(var_r31->unk4, arg1 ? 2 : 1); + Hu3DModelLayerSet(var_r31->unk4, arg2); + Hu3DData[var_r31->unk4].unk_120 = var_r31; + Hu3DModelPosSet(var_r31->unk4, 0.0f, 0.0f, -2000.0f); + var_r31->unk0 = 0; + var_r31->unk2 = arg1; + var_r31->unk7C.r = var_r31->unk7C.g = var_r31->unk7C.b = var_r31->unk7C.a = 0xFF; + var_r31->unk88 = var_r31->unk8C = 0.0f; + var_r31->unk90 = var_r31->unk94 = 0.0f; + var_r31->unk8 = HuSprAnimRead(HuDataReadNum(arg0, MEMORY_DEFAULT_NUM)); + fn_1_C2AC(&var_r31->unkC, arg8 - argA, argC, arg9 - argB); + fn_1_C2BC(&var_r31->unk3C, 0.0f, 0.0f); + fn_1_C2AC(&var_r31->unk18, arg8 + argA, argC, arg9 - argB); + fn_1_C2BC(&var_r31->unk44, 1.0f, 0.0f); + fn_1_C2AC(&var_r31->unk24, arg8 + argA, argC, arg9 + argB); + fn_1_C2BC(&var_r31->unk4C, 1.0f, 1.0f); + fn_1_C2AC(&var_r31->unk30, arg8 - argA, argC, arg9 + argB); + fn_1_C2BC(&var_r31->unk54, 0.0f, 1.0f); + DCFlushRangeNoSync(&var_r31->unkC, 0x30); + DCFlushRangeNoSync(&var_r31->unk3C, 0x20); + PPCSync(); + var_r28 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1000, MEMORY_DEFAULT_NUM); + var_r26 = var_r28; + DCFlushRange(var_r28, 0x1000); + GXBeginDisplayList(var_r26, 0x1000); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + for (var_r30 = 0; var_r30 < 4; var_r30++) { + GXPosition1x16(var_r30); + GXPosition1x16(var_r30); + GXPosition1x16(var_r30); + } + var_r31->unk84 = GXEndDisplayList(); + var_r31->unk80 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk84, MEMORY_DEFAULT_NUM); + memcpy(var_r31->unk80, var_r28, var_r31->unk84); + DCFlushRange(var_r31->unk80, var_r31->unk84); + HuMemDirectFree(var_r28); + return var_r29; +} + +void fn_1_9958(s16 arg0, u8 arg1) +{ + M427DllMapStruct *var_r31; + + if (arg0 != -1) { + var_r31 = &lbl_1_bss_F0[arg0]; + var_r31->unk0 |= arg1; + } +} + +void fn_1_999C(s16 arg0, u8 arg1) +{ + M427DllMapStruct *var_r31; + + if (arg0 != -1) { + var_r31 = &lbl_1_bss_F0[arg0]; + var_r31->unk0 &= ~arg1; + } +} + +void fn_1_99E4(s16 arg0, u8 arg1, u8 arg2, u8 arg3, u8 arg4) +{ + M427DllMapStruct *var_r31; + + if (arg0 != -1) { + var_r31 = &lbl_1_bss_F0[arg0]; + var_r31->unk7C.r = arg1; + var_r31->unk7C.g = arg2; + var_r31->unk7C.b = arg3; + var_r31->unk7C.a = arg4; + } +} + +void fn_1_9A2C(s16 arg0, float arg8, float arg9, float argA) +{ + M427DllMapStruct *var_r31; + + if (arg0 != -1) { + var_r31 = &lbl_1_bss_F0[arg0]; + Hu3DModelPosSet(var_r31->unk4, arg8, arg9, argA); + } +} + +void fn_1_9AA0(s16 arg0, float arg8, float arg9, float argA) +{ + M427DllMapStruct *var_r31; + + if (arg0 != -1) { + var_r31 = &lbl_1_bss_F0[arg0]; + Hu3DModelScaleSet(var_r31->unk4, arg8, arg9, argA); + } +} + +void fn_1_9B14(s16 arg0, float arg8, float arg9, float argA) +{ + M427DllMapStruct *var_r31; + + if (arg0 != -1) { + var_r31 = &lbl_1_bss_F0[arg0]; + Hu3DModelRotSet(var_r31->unk4, arg8, arg9, argA); + } +} + +void fn_1_9B88(ModelData *model, Mtx matrix) +{ + Mtx sp88; + M427DllMapStruct *var_r31; + M427DllMapSubstruct3 *var_r27; + M427DllMapStruct3Sub *var_r26; + + var_r31 = model->unk_120; + var_r27 = &lbl_1_bss_158.unk4[var_r31->unk2]; + var_r26 = &lbl_1_bss_158.unk334; + if ((var_r31->unk0 & 1) == 0) { + fn_1_94BC(&var_r27->unk78, &model->pos, &var_r31->unkC, &model->scale, model->rot.y, var_r31->unk5C, 4); + DCFlushRangeNoSync(var_r31->unk5C, 4 * sizeof(Vec2f)); + PPCSync(); + GXLoadPosMtxImm(matrix, 0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_POS, &var_r31->unkC, sizeof(Vec)); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_TEX0, &var_r31->unk3C, sizeof(Vec2f)); + GXSetVtxDesc(GX_VA_TEX1, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX1, GX_TEX_ST, GX_RGBA6, 0); + GXSetArray(GX_VA_TEX1, var_r31->unk5C, sizeof(Vec2f)); + HuSprTexLoad(var_r31->unk8, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(var_r26->unk_04, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(var_r26->unk_00, 0, 2, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetNumTexGens(3); + MTXScale(sp88, 1.0f, 1.0f, 1.0f); + mtxTransCat(sp88, var_r31->unk88, var_r31->unk90, 0.0f); + GXLoadTexMtxImm(sp88, 0x1E, GX_MTX2x4); + MTXScale(sp88, 1.0f, 1.0f, 1.0f); + mtxTransCat(sp88, var_r31->unk8C, var_r31->unk94, 0.0f); + GXLoadTexMtxImm(sp88, 0x21, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, 0, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, 0x1E, 0, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX2x4, GX_TG_TEX0, 0x21, 0, 0x7D); + GXSetNumTevStages(2); + GXSetTevColor(GX_TEVREG1, var_r31->unk7C); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR_NULL); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_C1, GX_CC_TEXA, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_ZERO, GX_CC_C0, GX_CC_TEXA, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_A1, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumIndStages(1); + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD2, GX_TEXMAP2); + GXSetTevIndWarp(0, 0, 1, 0, 1); + MTXScale(sp88, 0.1f, 0.10000000149011612 * -sind(model->rot.y), 1.0f); + GXSetIndTexMtx(GX_ITM_0, (float(*)[3])sp88, 0); + GXSetNumChans(0); + GXSetZMode(0, GX_LEQUAL, 0); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(0); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_NOOP); + GXCallDisplayList(var_r31->unk80, var_r31->unk84); + GXSetNumIndStages(0); + GXSetTevDirect(GX_TEVSTAGE0); + GXSetTevDirect(GX_TEVSTAGE1); + } +} + +void fn_1_A148(ModelData *model, Mtx matrix) +{ + M427DllMapSubstruct3Sub *var_r31; + + var_r31 = model->unk_120; + if (var_r31->unk0 == 0) { + GXSetTexCopySrc(0, 0, 0x140, 0x1E0); + GXSetTexCopyDst(0x140, 0x1E0, GX_TF_RGB5A3, 0); + } + else { + GXSetTexCopySrc(0x140, 0, 0x140, 0x1E0); + GXSetTexCopyDst(0x140, 0x1E0, GX_TF_RGB5A3, 0); + } + GXCopyTex(var_r31->unk4, 1); + DCFlushRange(var_r31->unk4, var_r31->unk8); +} + +s16 fn_1_A1F4(s32 arg0, s16 arg1, s16 arg2, s16 arg3, float arg8, Vec *arg4, Vec *arg5) +{ + float var_f31; + float var_f30; + float var_f29; + float var_f28; + M427DllMapStruct6 *var_r31; + M427DllMapSubstruct5 *var_r30; + ModelData *var_r29; + s16 var_r28; + s16 var_r27; + Vec2f *var_r26; + void *var_r25; + M427DllMapStruct3 *var_r22; + u16 var_r21; + s16 var_r19; + void *var_r18; + + var_r22 = &lbl_1_bss_158; + var_r28 = Hu3DHookFuncCreate(fn_1_B3CC); + var_r19 = var_r28; + Hu3DModelCameraSet(var_r28, arg3 ? 2 : 1); + Hu3DModelLayerSet(var_r28, 5); + var_r29 = &Hu3DData[var_r28]; + var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M427DllMapStruct6), var_r29->unk_48); + var_r29->unk_120 = var_r31; + var_r22->unk4[arg3].unkAC = var_r31; + var_r31->unk_00 = arg3; + var_r31->unk_0C = 0.0f; + var_r31->unk_10 = arg8; + var_r31->unk_04 = arg4; + var_r31->unk_08 = arg5; + var_r31->unk_14 = var_r31->unk_18 = 0.0f; + var_r31->unk_1C = var_r31->unk_20 = 0.0f; + var_r31->unk_4C = var_r31->unk_50 = 0.0f; + var_r31->unk_54 = 120.0f; + var_r31->unk_58 = 72.0f; + var_r31->unk_5C = 10.0f; + var_r31->unk_60 = 10.0f; + var_r31->unk_28 = HuSprAnimRead(HuDataReadNum(arg0, MEMORY_DEFAULT_NUM)); + var_r31->unk_3A = arg1 + 1; + var_r31->unk_3C = arg2 + 1; + var_r31->unk_38 = var_r31->unk_3A * var_r31->unk_3C; + var_r31->unk_2C = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_38 * sizeof(Vec), var_r29->unk_48); + var_r26 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_38 * sizeof(Vec2f), var_r29->unk_48); + var_r31->unk_30 = var_r26; + var_r31->unk_34 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_38 * sizeof(Vec), var_r29->unk_48); + var_r30 = HuMemDirectMallocNum(HEAP_DATA, arg2 * (arg1 * sizeof(M427DllMapSubstruct5)), var_r29->unk_48); + var_r31->unk_48 = var_r30; + var_r25 = HuMemDirectMallocNum(HEAP_DATA, 0x20000, var_r29->unk_48); + var_r18 = var_r25; + DCFlushRange(var_r25, 0x20000); + GXBeginDisplayList(var_r18, 0x20000); + GXBegin(GX_QUADS, GX_VTXFMT0, arg1 * arg2 * 4); + for (var_r28 = 0; var_r28 < arg2; var_r28++) { + for (var_r27 = 0; var_r27 < arg1; var_r27++) { + var_r30->unk0 = var_r27 + (var_r28 * var_r31->unk_3A); + var_r30->unk2 = var_r27 + var_r28 * var_r31->unk_3A + 1; + var_r30->unk4 = var_r27 + ((var_r28 + 1) * var_r31->unk_3A) + 1; + var_r30->unk6 = var_r27 + ((var_r28 + 1) * var_r31->unk_3A); + GXPosition1x16(var_r30->unk0); + GXPosition1x16(var_r30->unk0); + GXPosition1x16(var_r30->unk0); + GXPosition1x16(var_r30->unk2); + GXPosition1x16(var_r30->unk2); + GXPosition1x16(var_r30->unk2); + GXPosition1x16(var_r30->unk4); + GXPosition1x16(var_r30->unk4); + GXPosition1x16(var_r30->unk4); + GXPosition1x16(var_r30->unk6); + GXPosition1x16(var_r30->unk6); + GXPosition1x16(var_r30->unk6); + fn_1_C2C8(&var_r31->unk_2C[var_r30->unk0], &var_r31->unk_2C[var_r30->unk2], &var_r31->unk_2C[var_r30->unk4], &var_r30->unk8); + var_r30++; + } + } + var_r31->unk_44 = GXEndDisplayList(); + var_r31->unk_40 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_44, var_r29->unk_48); + memcpy(var_r31->unk_40, var_r25, var_r31->unk_44); + DCFlushRange(var_r31->unk_40, var_r31->unk_44); + HuMemDirectFree(var_r25); + fn_1_A7F8(var_r31); + var_f29 = 3.0f / (var_r31->unk_3A - 1); + var_f28 = 5.0f / (var_r31->unk_3C - 1); + var_f30 = 0.0f; + for (var_r28 = 0; var_r28 < var_r31->unk_3C; var_r28++) { + var_f31 = 0.0f; + for (var_r27 = 0; var_r27 < var_r31->unk_3A; var_r27++) { + var_r26->x = var_f31; + var_r26->y = var_f30; + var_f31 += var_f29; + var_r26++; + } + var_f30 += var_f28; + } + DCFlushRangeNoSync(var_r31->unk_30, var_r31->unk_38 * 8); + PPCSync(); + return var_r19; +} + +void fn_1_A7F8(M427DllMapStruct6 *var_r31) +{ + Vec sp1C; + float sp14[2]; + float spC[2]; + float var_f29; + float var_f28; + float var_f27; + M427DllMapSubstruct5 *var_r30; + Vec *var_r29; + s16 var_r28; + Vec *var_r27; + s16 var_r26; + s16 var_r25; + + if (omPauseChk() == 0) { + var_r31->unk_4C += 1.0f; + var_r31->unk_50 += 1.5f; + } + if (var_r31->unk_4C >= 360.0f) { + var_r31->unk_4C -= 360.0f; + } + if (var_r31->unk_50 >= 360.0f) { + var_r31->unk_50 -= 360.0f; + } + var_r27 = var_r31->unk_2C; + var_r29 = var_r31->unk_34; + spC[0] = var_r31->unk_0C - var_r31->unk_10; + spC[1] = var_r31->unk_10 / (var_r31->unk_3C - 1); + var_f28 = var_r31->unk_50; + for (var_r28 = 0; var_r28 < var_r31->unk_3C; var_r28++) { + fn_1_B194(var_r31, spC[0], &sp1C); + sp14[0] = sp1C.x; + sp14[1] = (sp1C.y - sp1C.x) / (var_r31->unk_3A - 1); + var_f29 = var_r31->unk_4C; + for (var_r26 = 0; var_r26 < var_r31->unk_3A; var_r26++) { + var_r27->x = sp14[0]; + var_r27->y = sp1C.z + (var_r31->unk_5C * sind(var_f29)) + var_r31->unk_60 * sind(var_f28); + var_r27->z = spC[0]; + sp14[0] += sp14[1]; + var_r27++; + var_r29->x = var_r29->y = var_r29->z = 0.0f; + var_r29++; + var_f29 += var_r31->unk_54; + if (var_f29 >= 360.0f) { + var_f29 -= 360.0f; + } + } + spC[0] += spC[1]; + var_f28 += var_r31->unk_58; + if (var_f28 >= 360.0f) { + var_f28 -= 360.0f; + } + } + var_r30 = var_r31->unk_48; + var_r25 = (var_r31->unk_3A - 1) * (var_r31->unk_3C - 1); + for (var_r28 = 0; var_r28 < var_r25; var_r28++) { + fn_1_C2C8(&var_r31->unk_2C[var_r30->unk0], &var_r31->unk_2C[var_r30->unk2], &var_r31->unk_2C[var_r30->unk4], &var_r30->unk8); + var_r31->unk_34[var_r30->unk0].x += var_r30->unk8.x; + var_r31->unk_34[var_r30->unk0].y += var_r30->unk8.y; + var_r31->unk_34[var_r30->unk0].z += var_r30->unk8.z; + + var_r31->unk_34[var_r30->unk2].x += var_r30->unk8.x; + var_r31->unk_34[var_r30->unk2].y += var_r30->unk8.y; + var_r31->unk_34[var_r30->unk2].z += var_r30->unk8.z; + + var_r31->unk_34[var_r30->unk4].x += var_r30->unk8.x; + var_r31->unk_34[var_r30->unk4].y += var_r30->unk8.y; + var_r31->unk_34[var_r30->unk4].z += var_r30->unk8.z; + + var_r31->unk_34[var_r30->unk6].x += var_r30->unk8.x; + var_r31->unk_34[var_r30->unk6].y += var_r30->unk8.y; + var_r31->unk_34[var_r30->unk6].z += var_r30->unk8.z; + var_r30++; + } + var_r29 = var_r31->unk_34; + for (var_r28 = 0; var_r28 < var_r31->unk_38; var_r28++) { + var_f27 = sqrtf((var_r29->z * var_r29->z) + ((var_r29->x * var_r29->x) + (var_r29->y * var_r29->y))); + var_r29->x /= var_f27; + var_r29->y /= var_f27; + var_r29->z /= var_f27; + var_r29++; + } + DCFlushRangeNoSync(var_r31->unk_2C, var_r31->unk_38 * sizeof(Vec)); + DCFlushRangeNoSync(var_r31->unk_34, var_r31->unk_38 * sizeof(Vec)); + PPCSync(); +} + +s16 lbl_1_data_1EC[2] = { 0, 0 }; + +float fn_1_AE78(s16 arg0, float arg8, float arg9) +{ + float sp8[2]; + float var_f31; + float var_f30; + Vec *var_r31; + s16 var_r30; + M427DllMapSubstruct3 *var_r29; + Vec *var_r28; + s16 var_r27; + s16 var_r26; + + var_r29 = &lbl_1_bss_158.unk4[arg0]; + if (lbl_1_bss_158.unk0 != 0) { + if (lbl_1_bss_158.unk0 == 1) { + lbl_1_data_1EC[arg0] = 0; + lbl_1_bss_158.unk0 = 2; + } + if (!lbl_1_bss_98.unk4) { + return 0.0f; + } + var_r28 = lbl_1_bss_98.unk4; + var_r31 = &lbl_1_bss_98.unk4[lbl_1_data_1EC[arg0]]; + var_r27 = lbl_1_bss_98.unk14; + var_r26 = lbl_1_bss_98.unk16; + for (var_r30 = lbl_1_data_1EC[arg0]; var_r30 < var_r27; var_r30++, var_r31++) { + if (arg9 >= var_r31->z && arg8 >= var_r31->x) { + break; + } + } + if (var_r30 == var_r27) { + return 0.0f; + } + } + else { + if (!var_r29->unkAC) { + return 0.0f; + } + var_r28 = var_r29->unkAC->unk_2C; + var_r31 = &var_r29->unkAC->unk_2C[lbl_1_data_1EC[arg0]]; + var_r27 = var_r29->unkAC->unk_38; + var_r26 = var_r29->unkAC->unk_3A; + for (var_r30 = lbl_1_data_1EC[arg0]; var_r30 < var_r27; var_r30++, var_r31++) { + if (arg9 <= var_r31->z && arg8 <= var_r31->x) { + break; + } + } + if (var_r30 == var_r27) { + return 0.0f; + } + } + sp8[0] = var_r31->x - var_r28[var_r30 - 1].x; + sp8[1] = arg8 - var_r28[var_r30 - 1].x; + var_f30 = sp8[1] / sp8[0]; + var_f31 = var_r31->y - var_r28[var_r30 - 1].y; + var_f31 = var_r28[var_r30 - 1].y + (var_f31 * var_f30); + lbl_1_data_1EC[arg0] = var_r30 - (var_r26 * 2); + return 20.0f + var_f31; +} + +void fn_1_B194(M427DllMapStruct6 *arg0, float arg8, Vec *arg1) +{ + float sp10[2]; + float sp8[2]; + float var_f31; + s16 var_r31; + + for (var_r31 = lbl_1_bss_580; var_r31 != 0;) { + var_r31--; + if (arg0->unk_04[var_r31].z >= arg8) { + if (var_r31 == (lbl_1_bss_580 - 1)) { + arg1->x = arg0->unk_08[var_r31].x; + arg1->y = arg0->unk_04[var_r31].x; + arg1->z = arg0->unk_04[var_r31].y; + } + else { + var_f31 = (arg0->unk_04[var_r31].z - arg8) / (arg0->unk_04[var_r31].z - arg0->unk_04[var_r31 + 1].z); + sp10[0] = arg0->unk_08[var_r31].x - 100.0f; + sp10[1] = arg0->unk_08[var_r31 + 1].x - 100.0f; + sp8[0] = 100.0f + arg0->unk_04[var_r31].x; + sp8[1] = 100.0f + arg0->unk_04[var_r31 + 1].x; + arg1->x = sp10[0] + (var_f31 * (sp10[1] - sp10[0])); + arg1->y = sp8[0] + (var_f31 * (sp8[1] - sp8[0])); + arg1->z = arg0->unk_04[var_r31].y + (var_f31 * (arg0->unk_04[var_r31 + 1].y - arg0->unk_04[var_r31].y)); + } + return; + } + } +} + +void fn_1_B3CC(ModelData *model, Mtx matrix) +{ + Mtx sp154; + Mtx sp124; + Mtx spF4; + Mtx spC4; + GXTexObj sp44; + Vec2f sp18; + GXColor sp14; + float var_f31; + M427DllMapStruct6 *var_r31; + M427DllMapSubstruct3 *var_r30; + M427DllMapSubstruct3Sub *var_r27; + M427DllMapStruct3Sub *var_r24; + s16 var_r21; + + var_r31 = model->unk_120; + var_r30 = &lbl_1_bss_158.unk4[var_r31->unk_00]; + var_r27 = &var_r30->unk94; + var_r24 = &lbl_1_bss_158.unk334; + fn_1_A7F8(var_r31); + GXLoadPosMtxImm(matrix, 0); + MTXInvXpose(matrix, spF4); + GXLoadNrmMtxImm(spF4, 0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, var_r31->unk_2C, sizeof(Vec)); + GXSetVtxDesc(GX_VA_NRM, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetArray(GX_VA_NRM, var_r31->unk_34, sizeof(Vec)); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX0, var_r31->unk_30, 8); + if (var_r31->unk_00 == 0) { + GXInitTexObj(&sp44, var_r27->unk4, 0x140, 0x1E0, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, 0); + } + else { + GXInitTexObj(&sp44, var_r27->unk4, 0x140, 0x1E0, GX_TF_RGB5A3, GX_CLAMP, GX_CLAMP, 0); + } + GXInitTexObjLOD(&sp44, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, 0, 0, GX_ANISO_1); + GXLoadTexObj(&sp44, GX_TEXMAP0); + HuSprTexLoad(var_r31->unk_28, 0, 1, GX_REPEAT, GX_REPEAT, GX_LINEAR); + HuSprTexLoad(var_r24->unk_00, 0, 2, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetNumTevStages(3); + sp14.r = 0; + sp14.g = 0xB6; + sp14.b = 0xCC; + sp14.a = 0x40; + GXSetTevColor(GX_TEVREG2, sp14); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_4, GX_TRUE, GX_TEVREG0); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG0); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD1, GX_TEXMAP1, GX_COLOR_NULL); + GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_ZERO, GX_CC_TEXA, GX_CC_C2, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG1); + GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVREG1); + GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); + GXSetTevColorIn(GX_TEVSTAGE2, GX_CC_ZERO, GX_CC_C1, GX_CC_RASC, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE2, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE2, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumIndStages(1); + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD2, GX_TEXMAP2); + GXSetTevIndWarp(1, 0, 1, 0, 1); + MTXScale(spF4, -0.1f, 0.1f, 1.0f); + GXSetIndTexMtx(GX_ITM_0, (float(*)[3])spF4, 0); + GXSetNumTexGens(3); + C_MTXLightPerspective(sp154, 45.0f, 0.6f, 0.5f, -0.5f, 0.5f, 0.5f); + MTXCopy(matrix, sp124); + MTXInverse(Hu3DCameraMtx, spF4); + MTXConcat(spF4, sp124, spF4); + MTXConcat(sp154, Hu3DCameraMtx, spC4); + MTXConcat(spC4, spF4, spF4); + GXLoadTexMtxImm(spF4, 0x1E, GX_MTX3x4); + { + Vec sp38 = { 1.0f, 1.0f, 1.0f }; + var_f31 = 0.0f; + fn_1_94BC(&var_r30->unk78, &var_r30->unk84, var_r31->unk_2C, &sp38, var_f31, &sp18, 1); + } + if (omPauseChk() == 0) { + var_r31->unk_20 = var_r31->unk_20 - 0.001f; + } + MTXScale(spF4, 1.0f, 1.0f, 1.0f); + mtxTransCat(spF4, 0.0f, var_r31->unk_20 + (0.3f * sp18.y), 0.0f); + GXLoadTexMtxImm(spF4, 0x21, GX_MTX2x4); + if (omPauseChk() == 0) { + var_r31->unk_24 += 0.05f; + } + if (var_r31->unk_24 >= 360.0f) { + var_r31->unk_24 -= 360.0f; + } + var_r31->unk_14 = sind(var_r31->unk_24); + if (omPauseChk() == 0) { + var_r31->unk_1C += 0.0005f; + } + MTXScale(spF4, 0.5f, 0.5f, 0.5f); + mtxTransCat(spF4, var_r31->unk_14, var_r31->unk_1C, 0.0f); + GXLoadTexMtxImm(spF4, 0x24, GX_MTX2x4); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, 0x1E, GX_FALSE, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, 0x21, GX_FALSE, 0x7D); + GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX2x4, GX_TG_TEX0, 0x24, GX_FALSE, 0x7D); + GXSetNumChans(1); + var_r21 = Hu3DLightSet(model, &Hu3DCameraMtx, &Hu3DCameraMtxXPose, 0.0f); + GXSetChanCtrl(GX_COLOR0A0, GX_TRUE, GX_SRC_REG, GX_SRC_REG, var_r21, GX_DF_CLAMP, GX_AF_SPOT); + sp14.r = sp14.g = sp14.b = 0x10; + sp14.a = 0xFF; + GXSetChanAmbColor(GX_COLOR0A0, sp14); + sp14.r = sp14.g = sp14.b = 0xFF; + sp14.a = 0xFF; + GXSetChanMatColor(GX_COLOR0A0, sp14); + GXSetZMode(1, GX_LEQUAL, GX_TRUE); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(0); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_NOOP); + GXCallDisplayList(var_r31->unk_40, var_r31->unk_44); + GXSetNumIndStages(0); + GXSetTevDirect(GX_TEVSTAGE0); + GXSetTevDirect(GX_TEVSTAGE1); +} + +void fn_1_BD2C(ModelData *model, Mtx matrix) +{ + GXColor sp14 = { 0, 0, 0, 0xFF }; + GXSetFog(GX_FOG_EXP, 10000.0f, 20000.0f, 300.0f, 50000.0f, sp14); + GXLoadPosMtxImm(matrix, 0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + HuSprTexLoad(lbl_1_bss_F4, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetNumTevStages(1); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_TEXC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_KONST, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumTexGens(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetNumChans(0); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(GX_FALSE); + GXSetBlendMode(GX_BM_NONE, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(-1000.0f, 1000.0f, -24000.0f); + GXTexCoord2f32(0.0f, 0.0f); + + GXPosition3f32(1000.0f, 1000.0f, -24000.0f); + GXTexCoord2f32(1.0f, 0.0f); + + GXPosition3f32(1000.0f, -1000.0f, -24000.0f); + GXTexCoord2f32(1.0f, 1.0f); + + GXPosition3f32(-1000.0f, -1000.0f, -24000.0f); + GXTexCoord2f32(0.0f, 1.0f); + + GXSetFog(GX_FOG_EXP, 3500.0f, 20000.0f, 300.0f, 50000.0f, sp14); +} + +void fn_1_C154(ModelData *model, Mtx matrix) +{ + GXColor spC = { 0, 0, 0, 255 }; + GXSetFog(GX_FOG_EXP, 10000.0f, 20000.0f, 300.0f, 50000.0f, spC); +} + +void fn_1_C200(ModelData *model, Mtx matrix) +{ + GXColor spC = { 0, 0, 0, 255 }; + GXSetFog(GX_FOG_EXP, 3500.0f, 20000.0f, 300.0f, 50000.0f, spC); +} + +void fn_1_C2AC(Vec *arg0, float arg8, float arg9, float argA) +{ + arg0->x = arg8; + arg0->y = arg9; + arg0->z = argA; +} + +void fn_1_C2BC(Vec2f *arg0, float arg8, float arg9) +{ + arg0->x = arg8; + arg0->y = arg9; +} + +void fn_1_C2C8(Vec *arg0, Vec *arg1, Vec *arg2, Vec *arg3) +{ + Vec sp14; + Vec sp8; + + sp14.x = arg1->x - arg0->x; + sp14.y = arg1->y - arg0->y; + sp14.z = arg1->z - arg0->z; + sp8.x = arg2->x - arg1->x; + sp8.y = arg2->y - arg1->y; + sp8.z = arg2->z - arg1->z; + arg3->x = -((sp14.y * sp8.z) - (sp14.z * sp8.y)); + arg3->y = -((sp14.z * sp8.x) - (sp14.x * sp8.z)); + arg3->z = -((sp14.x * sp8.y) - (sp14.y * sp8.x)); +} + +// is this one of the structs? +void fn_1_C3A0(float *arg0, float *arg1) +{ + arg1[0] = arg0[0]; + arg1[4] = arg0[1]; + arg1[8] = arg0[2]; + arg1[1] = arg0[4]; + arg1[5] = arg0[5]; + arg1[9] = arg0[6]; + arg1[2] = arg0[8]; + arg1[6] = arg0[9]; + arg1[10] = arg0[10]; + arg1[3] = 0.0f; + arg1[7] = 0.0f; + arg1[11] = 0.0f; +} + +s16 fn_1_C41C(float x1, float y1, float z1, float x2, float y2, float z2, u8 r, u8 g, u8 b) +{ + Vec sp34; + Vec sp28; + GXColor sp23; + LightData *var_r31; + s16 var_r30; + + sp34.x = x1; + sp34.y = y1; + sp34.z = z1; + sp28.x = x2; + sp28.y = y2; + sp28.z = z2; + sp23.r = r; + sp23.g = g; + sp23.b = b; + sp23.a = 0xFF; + for (var_r31 = Hu3DLocalLight, var_r30 = 0; var_r30 < 0x20; var_r30++, var_r31++) { + if (var_r31->unk_00 == -1) { + break; + } + } + if (var_r30 == 0x20) { + return -1; + } + fn_1_C68C(var_r31, &sp34, &sp28, &sp23); + var_r31->unk_00 |= 0x8000; + return var_r30; +} + +void fn_1_C528(s16 sp8, s16 var_r28, float x1, float y1, float z1, float x2, float y2, float z2, u8 r, u8 g, u8 b) +{ + Vec sp38; + Vec sp2C; + GXColor sp27; + ModelData *var_r31; + LightData *var_r30; + s16 var_r29; + + var_r31 = &Hu3DData[sp8]; + sp38.x = x1; + sp38.y = y1; + sp38.z = z1; + sp2C.x = x2; + sp2C.y = y2; + sp2C.z = z2; + sp27.r = r; + sp27.g = g; + sp27.b = b; + sp27.a = 0xFF; + for (var_r30 = Hu3DLocalLight, var_r29 = 0; var_r29 < 0x20; var_r29++, var_r30++) { + if (var_r30->unk_00 == -1) { + break; + } + } + if (var_r29 == 0x20) { + OSReport("Light Entry Over!\n"); + return; + } + fn_1_C68C(var_r30, &sp38, &sp2C, &sp27); + if (var_r31->unk_38[var_r28] == -1) { + var_r31->unk_38[var_r28] = var_r29; + var_r31->attr |= 0x1000; + } +} + +void fn_1_C68C(LightData *arg0, Vec *arg1, Vec *arg2, GXColor *arg3) +{ + arg0->unk_00 = 0; + arg0->unk_1C = *arg1; + arg0->unk_28 = *arg2; + arg0->unk_34.x = arg0->unk_34.y = arg0->unk_34.z = 0.0f; + arg0->unk_04 = 30.0f; + arg0->unk_02 = 2; + VECNormalize(&arg0->unk_28, &arg0->unk_28); + arg0->color.r = arg3->r; + arg0->color.g = arg3->g; + arg0->color.b = arg3->b; + arg0->color.a = arg3->a; +} + +void fn_1_C76C(u8 arg0, float arg8, float arg9, float argA, s16 arg1, float argB, float argC, s16 arg2) +{ + Vec sp24; + Vec sp18; + float sp10[2]; + GXColor spC; + M427DllMapSubstruct6 *var_r31; + s16 var_r30; + + if (arg0 != 0) { + argB += (((rand8() << 8) | rand8()) % 21) - 0xA; + } + else { + argB += (((rand8() << 8) | rand8()) % 61) - 0x1E; + } + sp10[0] = sind(argB); + sp10[1] = cosd(argB); + for (var_r30 = 0; var_r30 < arg1; var_r30++) { + if (arg0 != 0) { + sp24.x = arg8 + ((((rand8() << 8) | rand8()) % 21) - 0xA); + sp24.y = arg9 + ((((rand8() << 8) | rand8()) % 21) - 0xA); + sp24.z = argA + ((((rand8() << 8) | rand8()) % 21) - 0xA); + } + else { + sp24.x = arg8 + ((((rand8() << 8) | rand8()) % 41) - 0x14); + sp24.y = arg9 + ((((rand8() << 8) | rand8()) % 41) - 0x14); + sp24.z = argA + ((((rand8() << 8) | rand8()) % 41) - 0x14); + } + sp18.x = sp18.y = sp18.z = 0.0f; + spC.r = spC.g = spC.b = spC.a = 0xFF; + var_r31 = fn_1_D4FC(arg2, &sp24, &sp18, 0.0f, &spC); + if (!var_r31) { + break; + } + var_r31->unk_38 = arg0; + if (arg0 != 0) { + var_r31->unk_34 = 0; + var_r31->unk_36 = 3; + var_r31->unk_00 = argC * (sp10[0] * (0.1f * ((((rand8() << 8) | rand8()) % 151) + 0x96))); + var_r31->unk_04 = 0.1f * ((((rand8() << 8) | rand8()) % 31) - 0x14); + var_r31->unk_08 = argC * (sp10[1] * (0.1f * ((((rand8() << 8) | rand8()) % 151) + 0x96))); + var_r31->unk_18 = 0.01f * var_r31->unk_00; + var_r31->unk_1C = 0.1f; + var_r31->unk_20 = 0.01f * var_r31->unk_08; + var_r31->unk_24 = argC * (0.1f * ((((rand8() << 8) | rand8()) % 11) + 0xA)); + var_r31->unk_28 = argC * (0.01f * ((((rand8() << 8) | rand8()) % 101) + 0x32) / (var_r31->unk_36 * 0xE)); + } + else { + var_r31->unk_34 = 0; + var_r31->unk_36 = 2; + var_r31->unk_00 = sp10[0] * (0.1f * ((((rand8() << 8) | rand8()) % 31) + 0x32)); + var_r31->unk_04 = 0.1f * ((((rand8() << 8) | rand8()) % 31) - 0x14); + var_r31->unk_08 = sp10[1] * (0.1f * (((((rand8() << 8) | rand8()) % 31)) + 0x32)); + var_r31->unk_18 = 0.0f; + var_r31->unk_1C = 0.1f; + var_r31->unk_20 = 0.0f; + var_r31->unk_24 = 0.3f * (0.1f * ((((rand8() << 8) | rand8()) % 11) + 0xA)); + var_r31->unk_28 = 0.4f * ((0.01f * ((((rand8() << 8) | rand8()) % 51) + 0x32)) / (var_r31->unk_36 * 0xE)); + } + var_r31->unk_2C = 1024.0f * argC; + var_r31->unk_30 = var_r31->unk_2C / (var_r31->unk_36 * 0xE); + } +} + +void fn_1_D22C(ModelData *model, M427DllMapStruct7 *arg1, Mtx matrix) +{ + M427DllMapSubstruct6 *var_r31; + GXColor *var_r30; + s16 var_r29; + u8 var_r28; + + var_r31 = arg1->unk_18; + var_r30 = arg1->unk_24; + for (var_r29 = 0; var_r29 < arg1->unk_00; var_r29++, var_r31++, var_r30++) { + if (var_r31->unk_62 != 0) { + var_r31->unk_54.x += var_r31->unk_00; + var_r31->unk_54.y += var_r31->unk_04; + var_r31->unk_54.z += var_r31->unk_08; + if (var_r31->unk_38 != 0) { + var_r31->unk_00 -= var_r31->unk_18; + var_r31->unk_04 += var_r31->unk_1C; + var_r31->unk_08 -= var_r31->unk_20; + var_r31->unk_18 = 0.01f * var_r31->unk_00; + var_r31->unk_1C *= 1.04f; + var_r31->unk_20 = 0.01f * var_r31->unk_08; + } + else { + var_r31->unk_04 += var_r31->unk_1C; + var_r31->unk_1C *= 1.1f; + } + var_r31->unk_24 += var_r31->unk_28; + var_r31->unk_48.x = var_r31->unk_48.y = var_r31->unk_48.z = var_r31->unk_24; + var_r31->unk_2C -= var_r31->unk_30; + if (var_r31->unk_2C > 255.0f) { + var_r28 = 0xFF; + } + else { + var_r28 = (s32)var_r31->unk_2C; + } + var_r30->a = (s32)var_r28; + var_r31->unk_34++; + if (var_r31->unk_34 >= var_r31->unk_36) { + var_r31->unk_34 = 0; + var_r31->unk_60++; + } + if (var_r31->unk_60 >= arg1->unk_14) { + var_r31->unk_62 = 0; + } + } + } +} + +s16 fn_1_D430(float arg8, float arg9, float argA, s16 arg0) +{ + Vec sp28; + Vec sp1C; + GXColor sp16; + M427DllMapSubstruct6 *var_r31; + + sp28.x = arg8; + sp28.y = arg9; + sp28.z = argA; + sp1C.x = sp1C.y = sp1C.z = 1.0f; + sp16.r = 0xFF; + sp16.g = 0xA0; + sp16.b = 0x60; + sp16.a = 0xFF; + var_r31 = fn_1_D4FC(arg0, &sp28, &sp1C, 0.0f, &sp16); + if (!var_r31) { + return -1; + } + var_r31->unk_24 = 0.0f; + return var_r31->unk_40; +} + +M427DllMapSubstruct6 *fn_1_D4FC(s16 arg0, Vec *arg1, Vec *arg2, float arg8, GXColor *arg3) +{ + M427DllMapSubstruct6 *var_r31; + M427DllMapStruct7 *var_r30; + s16 var_r29; + ModelData *var_r28; + + var_r28 = &Hu3DData[arg0]; + var_r30 = var_r28->unk_120; + for (var_r29 = 0, var_r31 = var_r30->unk_18; var_r29 < var_r30->unk_00; var_r29++, var_r31++) { + if (var_r31->unk_62 == 0) { + break; + } + } + if (var_r29 == var_r30->unk_00) { + return NULL; + } + var_r30->unk_24[var_r29].r = arg3->r; + var_r30->unk_24[var_r29].g = arg3->g; + var_r30->unk_24[var_r29].b = arg3->b; + var_r30->unk_24[var_r29].a = arg3->a; + var_r31->unk_40 = var_r29; + var_r31->unk_44 = arg8; + var_r31->unk_48 = *arg2; + var_r31->unk_54 = *arg1; + var_r31->unk_60 = 0; + var_r31->unk_3C = 0; + var_r31->unk_62 = 1; + return var_r31; +} + +s16 fn_1_D63C(AnimData *arg0, s16 arg1, float arg8, s16 arg2, s16 arg3) +{ + float temp_f0; + M427DllMapStruct7 *var_r31; + s16 var_r30; + Vec2f *var_r29; + ModelData *var_r28; + GXColor *var_r27; + Vec *var_r25; + M427DllMapSubstruct6 *var_r24; + s16 var_r22; + void *var_r21; + s16 var_r20; + s16 var_r19; + void *var_r18; + + var_r20 = Hu3DHookFuncCreate(fn_1_DCD4); + var_r28 = &Hu3DData[var_r20]; + var_r31 = HuMemDirectMallocNum(HEAP_DATA, sizeof(M427DllMapStruct7), var_r28->unk_48); + var_r28->unk_120 = var_r31; + arg0->useNum++; + var_r31->unk_10 = arg0; + var_r31->unk_00 = arg1; + var_r31->unk_08 = 0; + var_r31->unk_0C = 0; + var_r24 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(M427DllMapSubstruct6), var_r28->unk_48); + var_r31->unk_18 = var_r24; + for (var_r30 = 0; var_r30 < arg1; var_r30++, var_r24++) { + var_r24->unk_60 = -1; + var_r24->unk_62 = 0; + } + var_r25 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(Vec) * 4, var_r28->unk_48); + var_r31->unk_1C = var_r25; + for (var_r30 = 0; var_r30 < (arg1 * 4); var_r30++, var_r25++) { + var_r25->x = var_r25->y = var_r25->z = 0.0f; + } + var_r27 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(GXColor), var_r28->unk_48); + var_r31->unk_24 = var_r27; + for (var_r30 = 0; var_r30 < arg1; var_r30++, var_r27++) { + var_r27->r = var_r27->g = var_r27->b = var_r27->a = 0xFF; + } + var_r29 = HuMemDirectMallocNum(HEAP_DATA, arg1 * sizeof(Vec2f) * 4, var_r28->unk_48); + var_r31->unk_20 = var_r29; + for (var_r30 = 0; var_r30 < arg1; var_r30++) { + var_r29->x = 0.0f; + var_r29->y = 0.0f; + var_r29++; + var_r29->x = 1.0f; + var_r29->y = 0.0f; + var_r29++; + var_r29->x = 1.0f; + var_r29->y = 1.0f; + var_r29++; + var_r29->x = 0.0f; + var_r29->y = 1.0f; + var_r29++; + } + if ((arg2 != 0) || (arg3 != 0)) { + var_r22 = arg0->bmp->sizeX / arg2; + var_r19 = arg0->bmp->sizeY / arg3; + var_r31->unk_14 = var_r22 * var_r19; + var_r31->unk_60 = 1.0f / var_r22; + var_r31->unk_64 = 1.0f / var_r19; + } + else { + var_r22 = 1; + var_r31->unk_14 = 1; + var_r31->unk_60 = 1.0f; + var_r31->unk_64 = 1.0f; + } + var_r31->unk_5C = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_14 * sizeof(Vec2f), var_r28->unk_48); + fn_1_E2B0(var_r31->unk_5C, var_r31->unk_14, var_r22, var_r31->unk_60, var_r31->unk_64); + var_r31->unk_2C.x = var_r31->unk_50 = var_r31->unk_48 = var_r31->unk_54 = -arg8; + var_r31->unk_38 = var_r31->unk_44 = var_r31->unk_2C.y = var_r31->unk_3C = arg8; + var_r31->unk_2C.z = var_r31->unk_40 = var_r31->unk_4C = var_r31->unk_58 = 0.0f; + var_r21 = HuMemDirectMallocNum(HEAP_DATA, 0x20000, var_r28->unk_48); + var_r18 = var_r21; + DCFlushRange(var_r21, 0x20000); + GXBeginDisplayList(var_r18, 0x20000); + GXBegin(GX_QUADS, GX_VTXFMT0, arg1 * 4); + for (var_r30 = 0; var_r30 < arg1; var_r30++) { + GXPosition1x16(var_r30 * 4); + GXPosition1x16(var_r30); + GXPosition1x16(var_r30 * 4); + GXPosition1x16(var_r30 * 4 + 1); + GXPosition1x16(var_r30); + GXPosition1x16(var_r30 * 4 + 1); + GXPosition1x16(var_r30 * 4 + 2); + GXPosition1x16(var_r30); + GXPosition1x16(var_r30 * 4 + 2); + GXPosition1x16(var_r30 * 4 + 3); + GXPosition1x16(var_r30); + GXPosition1x16(var_r30 * 4 + 3); + } + var_r31->unk_04 = GXEndDisplayList(); + var_r31->unk_28 = HuMemDirectMallocNum(HEAP_DATA, var_r31->unk_04, var_r28->unk_48); + memcpy(var_r31->unk_28, var_r21, var_r31->unk_04); + DCFlushRange(var_r31->unk_28, var_r31->unk_04); + HuMemDirectFree(var_r21); + return var_r20; +} + +void fn_1_DB80(s16 arg0) +{ + ModelData *var_r31; + M427DllMapStruct7 *var_r30; + + var_r31 = &Hu3DData[arg0]; + var_r30 = var_r31->unk_120; + HuSprAnimKill(var_r30->unk_10); + Hu3DModelKill(arg0); +} + +void *fn_1_DBE0(s16 arg0) +{ + ModelData *var_r31; + + var_r31 = &Hu3DData[arg0]; + return var_r31->unk_120; +} + +M427DllMapSubstruct6 *fn_1_DC0C(s16 arg0, s16 arg1) +{ + ModelData *var_r31; + M427DllMapStruct7 *var_r30; + + var_r31 = &Hu3DData[arg0]; + var_r30 = var_r31->unk_120; + if (arg1 == -1) { + return NULL; + } + return &var_r30->unk_18[arg1]; +} + +void fn_1_DC64(s16 arg0, M427DllHook arg1) +{ + ModelData *var_r31; + M427DllMapStruct7 *var_r30; + + var_r31 = &Hu3DData[arg0]; + var_r30 = var_r31->unk_120; + var_r30->unk_0C = arg1; +} + +void fn_1_DC9C(s16 arg0, u8 arg1) +{ + ModelData *var_r31; + M427DllMapStruct7 *var_r30; + + var_r31 = &Hu3DData[arg0]; + var_r30 = var_r31->unk_120; + var_r30->unk_08 = arg1; +} + +void fn_1_DCD4(ModelData *model, Mtx matrix) +{ + Mtx sp128; + ROMtx spF8; + Mtx spC8; + Mtx sp98; + Vec sp68[4]; + Vec sp5C; + Vec sp50; + Vec sp44; + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; + Vec *var_r31; + M427DllMapStruct7 *var_r30; + M427DllMapSubstruct6 *var_r29; + Vec2f *var_r26; + s16 var_r25; + s16 var_r24; + M427DllHook var_r23; + + var_r30 = model->unk_120; + GXLoadPosMtxImm(matrix, 0); + GXSetNumTevStages(1); + GXSetNumTexGens(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C, GX_FALSE, 0x7D); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); + var_r24 = var_r30->unk_10->bmp->dataFmt & 0xF; + if ((var_r24 == 7) || (var_r24 == 8)) { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXA, GX_CC_RASC, GX_CC_ZERO); + } + else { + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO); + } + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_TEXA, GX_CA_RASA, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, 0, GX_DF_CLAMP, GX_AF_NONE); + if ((model->attr & 2) != 0) { + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + } + else { + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE); + } + HuSprTexLoad(var_r30->unk_10, 0, 0, GX_REPEAT, GX_REPEAT, GX_LINEAR); + GXSetAlphaCompare(GX_GEQUAL, 1, GX_AOP_AND, GX_GEQUAL, 1); + GXSetZCompLoc(0); + switch (var_r30->unk_08) { + case 0: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_NOOP); + break; + case 1: + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_NOOP); + break; + case 2: + GXSetBlendMode(GX_BM_BLEND, GX_BL_ZERO, GX_BL_INVDSTCLR, GX_LO_NOOP); + break; + } + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetArray(GX_VA_POS, var_r30->unk_1C, 0xC); + GXSetVtxDesc(GX_VA_CLR0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetArray(GX_VA_CLR0, var_r30->unk_24, 4); + GXSetVtxDesc(GX_VA_TEX0, GX_INDEX16); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0); + GXSetArray(GX_VA_TEX0, var_r30->unk_20, 8); + sp128[0][0] = matrix[0][0]; + sp128[1][0] = matrix[0][1]; + sp128[2][0] = matrix[0][2]; + sp128[0][1] = matrix[1][0]; + sp128[1][1] = matrix[1][1]; + sp128[2][1] = matrix[1][2]; + sp128[0][2] = matrix[2][0]; + sp128[1][2] = matrix[2][1]; + sp128[2][2] = matrix[2][2]; + sp128[0][3] = 0.0f; + sp128[1][3] = 0.0f; + sp128[2][3] = 0.0f; + PSMTXReorder(sp128, spF8); + if ((omPauseChk() == 0) && (var_r30->unk_0C)) { + var_r23 = var_r30->unk_0C; + var_r23(model, var_r30, matrix); + } + var_r29 = var_r30->unk_18; + var_r31 = var_r30->unk_1C; + var_r26 = var_r30->unk_20; + PSMTXROMultVecArray(spF8, &var_r30->unk_2C, sp68, 4); + for (var_r25 = 0; var_r25 < var_r30->unk_00; var_r25++, var_r29++, var_r26 += 4) { + if (var_r29->unk_62 == 0) { + var_r31->x = var_r31->y = var_r31->z = 0.0f; + var_r31++; + var_r31->x = var_r31->y = var_r31->z = 0.0f; + var_r31++; + var_r31->x = var_r31->y = var_r31->z = 0.0f; + var_r31++; + var_r31->x = var_r31->y = var_r31->z = 0.0f; + var_r31++; + } + else { + if (var_r29->unk_44 == 0.0f) { + fn_1_E420(sp68, &sp38, &var_r29->unk_48, 4); + PSVECAdd(&sp38, &var_r29->unk_54, var_r31++); + PSVECAdd(&sp44, &var_r29->unk_54, var_r31++); + PSVECAdd(&sp50, &var_r29->unk_54, var_r31++); + PSVECAdd(&sp5C, &var_r29->unk_54, var_r31++); + } + else { + fn_1_E420(&var_r30->unk_2C, &sp38, &var_r29->unk_48, 4); + PSMTXRotRad(spC8, 0x5A, MTXDegToRad(var_r29->unk_44)); + PSMTXConcat(sp128, spC8, sp98); + PSMTXMultVecArray(sp98, &sp38, &sp8, 4); + PSVECAdd(&sp8, &var_r29->unk_54, var_r31++); + PSVECAdd(&sp14, &var_r29->unk_54, var_r31++); + PSVECAdd(&sp20, &var_r29->unk_54, var_r31++); + PSVECAdd(&sp2C, &var_r29->unk_54, var_r31++); + } + if (var_r29->unk_60 != -1) { + fn_1_E37C(var_r26, var_r30->unk_5C, var_r29->unk_60, var_r30->unk_60, var_r30->unk_64); + } + } + } + DCFlushRangeNoSync(var_r30->unk_1C, var_r30->unk_00 * sizeof(Vec) * 4); + DCFlushRangeNoSync(var_r30->unk_20, var_r30->unk_00 * sizeof(Vec2f) * 4); + PPCSync(); + GXCallDisplayList(var_r30->unk_28, var_r30->unk_04); +} + +void fn_1_E2B0(Vec2f *arg0, s16 arg1, s16 arg2, float arg8, float arg9) +{ + s16 var_r31; + s16 var_r30; + s16 var_r29; + + for (var_r31 = 0; var_r31 < arg1; var_r31++, arg0++) { + var_r30 = var_r31 % arg2; + var_r29 = var_r31 / arg2; + arg0->x = var_r30 * arg8; + arg0->y = var_r29 * arg9; + } +} + +void fn_1_E37C(Vec2f *arg0, Vec2f *arg1, s16 arg2, float arg8, float arg9) +{ + arg0[0].x = arg1[arg2].x; + arg0[0].y = arg1[arg2].y; + arg0[1].x = arg8 + arg1[arg2].x; + arg0[1].y = arg1[arg2].y; + arg0[2].x = arg8 + arg1[arg2].x; + arg0[2].y = arg9 + arg1[arg2].y; + arg0[3].x = arg1[arg2].x; + arg0[3].y = arg9 + arg1[arg2].y; +} + +void fn_1_E420(Vec *arg0, Vec *arg1, Vec *arg2, s16 arg3) +{ + s16 var_r31; + + for (var_r31 = 0; var_r31 < arg3; var_r31++, arg0++, arg1++) { + arg1->x = arg0->x * arg2->x; + arg1->y = arg0->y * arg2->y; + arg1->z = arg0->z * arg2->z; + } +} + +void fn_1_E488(void) +{ + if ((HuPadBtnDown[0] & PAD_TRIGGER_L) != 0) { + lbl_1_bss_91 ^= 1; + } + if (lbl_1_bss_91 != 0) { + if ((HuPadBtnDown[0] & PAD_TRIGGER_Z) != 0) { + lbl_1_bss_90 = lbl_1_bss_90 ^ 1; + } + if ((HuPadBtn[0] & PAD_BUTTON_LEFT) != 0) { + CRotM[lbl_1_bss_90].y += 1.0f; + } + if ((HuPadBtn[0] & PAD_BUTTON_RIGHT) != 0) { + CRotM[lbl_1_bss_90].y -= 1.0f; + } + if ((HuPadBtn[0] & PAD_BUTTON_UP) != 0) { + CRotM[lbl_1_bss_90].x -= 1.0f; + } + if ((HuPadBtn[0] & PAD_BUTTON_DOWN) != 0) { + CRotM[lbl_1_bss_90].x += 1.0f; + } + CenterM[lbl_1_bss_90].x += HuPadSubStkX[0]; + if ((HuPadBtn[0] & PAD_TRIGGER_R) != 0) { + CenterM[lbl_1_bss_90].y += HuPadSubStkY[0]; + } + else { + CenterM[lbl_1_bss_90].z += HuPadSubStkY[0]; + } + if ((HuPadBtn[0] & PAD_BUTTON_X) != 0) { + CZoomM[lbl_1_bss_90] += 10.0f; + } + if ((HuPadBtn[0] & PAD_BUTTON_Y) != 0) { + CZoomM[lbl_1_bss_90] -= 10.0f; + } + if ((HuPadBtnDown[0] & PAD_BUTTON_A) != 0) { + OSReport("\nCZoom = %.2f \n", CZoomM[lbl_1_bss_90]); + OSReport("Center x = %.2f: y = %.2f: z = %.2f \n", CenterM[lbl_1_bss_90].x, CenterM[lbl_1_bss_90].y, CenterM[lbl_1_bss_90].z); + OSReport("CRot x = %.2f: y = %.2f: z = %.2f \n", CRotM[lbl_1_bss_90].x, CRotM[lbl_1_bss_90].y, CRotM[lbl_1_bss_90].z); + } + } +} diff --git a/src/REL/m427Dll/player.c b/src/REL/m427Dll/player.c index b27e5584..fe097531 100644 --- a/src/REL/m427Dll/player.c +++ b/src/REL/m427Dll/player.c @@ -1967,7 +1967,7 @@ block_18: return 0; } -s32 fn_1_15F10(Vec *arg0, Vec *arg1, s32 arg2, s32 arg3, s32 arg4) +s32 fn_1_15F10(Vec arg0, Vec arg1, s32 arg2, s32 arg3, s32 arg4) { M427DllBss57CStruct *var_r31; s32 var_r30; @@ -1986,12 +1986,12 @@ s32 fn_1_15F10(Vec *arg0, Vec *arg1, s32 arg2, s32 arg3, s32 arg4) var_r31->unk_10 = arg4; var_r31->unk_18 = arg3; var_r31->unk_14 = 0; - var_r31->unk_1C = *arg0; - var_r31->unk_28 = *arg1; + var_r31->unk_1C = arg0; + var_r31->unk_28 = arg1; return var_r30; } -s32 fn_1_15FD0(Vec *arg0, s32 arg1, s32 arg2, s32 arg3, float arg8) +s32 fn_1_15FD0(Vec arg0, float arg8, s32 arg1, s32 arg2, s32 arg3) { M427DllBss57CStruct *var_r31; s32 var_r30; @@ -2010,7 +2010,7 @@ s32 fn_1_15FD0(Vec *arg0, s32 arg1, s32 arg2, s32 arg3, float arg8) var_r31->unk_10 = arg3; var_r31->unk_18 = arg2; var_r31->unk_14 = 0; - var_r31->unk_1C = *arg0; + var_r31->unk_1C = arg0; var_r31->unk_34 = arg8; return var_r30; } From 721c0d4e412f46215a77d7981dd3f3c5b46f2811 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Wed, 5 Feb 2025 17:25:23 +0100 Subject: [PATCH 156/178] Fix m435Dll linking (#559) --- configure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.py b/configure.py index 1a3c04d9..bd9561f0 100644 --- a/configure.py +++ b/configure.py @@ -1144,7 +1144,7 @@ config.libs = [ "m435Dll", # Darts of Doom objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m435Dll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01" "GMPJ01_00"), "REL/m435Dll/sequence.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/m435Dll/sequence.c"), }, ), Rel( From da072c209a2998d4fb39c178ccb29c9bbdd3f729 Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Wed, 5 Feb 2025 18:07:12 -0600 Subject: [PATCH 157/178] Label most of w01Dll (#560) --- config/GMPE01_00/rels/w01Dll/splits.txt | 4 +- config/GMPE01_00/rels/w01Dll/symbols.txt | 488 ++-- config/GMPP01_00/rels/w01Dll/splits.txt | 4 +- include/REL/w01Dll.h | 52 +- src/REL/w01Dll/main.c | 3258 +++++++++++----------- src/REL/w01Dll/mg_coin.c | 1302 +++++---- src/REL/w01Dll/mg_item.c | 1216 ++++---- 7 files changed, 3152 insertions(+), 3172 deletions(-) diff --git a/config/GMPE01_00/rels/w01Dll/splits.txt b/config/GMPE01_00/rels/w01Dll/splits.txt index 7baca9d9..8e0a4285 100644 --- a/config/GMPE01_00/rels/w01Dll/splits.txt +++ b/config/GMPE01_00/rels/w01Dll/splits.txt @@ -11,13 +11,13 @@ REL/board_executor.c: .rodata start:0x00000000 end:0x00000010 REL/w01Dll/main.c: - .text start:0x000000E0 end:0x00009D00 + .text start:0x000000E0 end:0x00009DD8 .rodata start:0x00000010 end:0x00000198 .data start:0x00000000 end:0x00000658 .bss start:0x00000000 end:0x00000708 REL/w01Dll/mg_coin.c: - .text start:0x00009D00 end:0x0000D740 + .text start:0x00009DD8 end:0x0000D740 .rodata start:0x00000198 end:0x000002C8 .data start:0x00000658 end:0x00000F08 .bss start:0x00000708 end:0x000007A0 diff --git a/config/GMPE01_00/rels/w01Dll/symbols.txt b/config/GMPE01_00/rels/w01Dll/symbols.txt index ad0e3d24..66542f00 100644 --- a/config/GMPE01_00/rels/w01Dll/symbols.txt +++ b/config/GMPE01_00/rels/w01Dll/symbols.txt @@ -3,137 +3,137 @@ _prolog = .text:0x00000030; // type:function size:0x64 scope:global _epilog = .text:0x00000094; // type:function size:0x4C scope:global BoardCreate = .text:0x000000E0; // type:function size:0x4BC BoardDestroy = .text:0x0000059C; // type:function size:0x194 -fn_1_730 = .text:0x00000730; // type:function size:0x44 scope:local -fn_1_774 = .text:0x00000774; // type:function size:0x4 scope:local -fn_1_778 = .text:0x00000778; // type:function size:0x9C scope:local -fn_1_814 = .text:0x00000814; // type:function size:0x1D4 scope:local -fn_1_9E8 = .text:0x000009E8; // type:function size:0x318 scope:local +LightSetHook = .text:0x00000730; // type:function size:0x44 scope:local +LightResetHook = .text:0x00000774; // type:function size:0x4 scope:local +LandEvent = .text:0x00000778; // type:function size:0x9C scope:local +WalkEvent = .text:0x00000814; // type:function size:0x1D4 scope:local +MapObjDispSet = .text:0x000009E8; // type:function size:0x318 scope:local fn_1_D00 = .text:0x00000D00; // type:function size:0x4 scope:local -fn_1_D04 = .text:0x00000D04; // type:function size:0x550 scope:local -fn_1_1254 = .text:0x00001254; // type:function size:0x38 scope:local -fn_1_128C = .text:0x0000128C; // type:function size:0x80 scope:local -fn_1_130C = .text:0x0000130C; // type:function size:0x270 scope:local -fn_1_157C = .text:0x0000157C; // type:function size:0xF4 scope:local -fn_1_1670 = .text:0x00001670; // type:function size:0x90 scope:local -fn_1_1700 = .text:0x00001700; // type:function size:0x290 scope:local -fn_1_1990 = .text:0x00001990; // type:function size:0x148 scope:local -fn_1_1AD8 = .text:0x00001AD8; // type:function size:0x64 scope:local -fn_1_1B3C = .text:0x00001B3C; // type:function size:0x3A8 scope:local -fn_1_1EE4 = .text:0x00001EE4; // type:function size:0x48 scope:local -fn_1_1F2C = .text:0x00001F2C; // type:function size:0x78 scope:local -fn_1_1FA4 = .text:0x00001FA4; // type:function size:0x580 scope:local -fn_1_2524 = .text:0x00002524; // type:function size:0x248 scope:local -fn_1_276C = .text:0x0000276C; // type:function size:0x7AC scope:local -fn_1_2F18 = .text:0x00002F18; // type:function size:0x438 scope:local -fn_1_3350 = .text:0x00003350; // type:function size:0x1C4 scope:local -fn_1_3514 = .text:0x00003514; // type:function size:0xA0 scope:local -fn_1_35B4 = .text:0x000035B4; // type:function size:0x70 scope:local -fn_1_3624 = .text:0x00003624; // type:function size:0xFD0 scope:local -fn_1_45F4 = .text:0x000045F4; // type:function size:0x180 scope:local -fn_1_4774 = .text:0x00004774; // type:function size:0xF0 scope:local -fn_1_4864 = .text:0x00004864; // type:function size:0x50 scope:local -fn_1_48B4 = .text:0x000048B4; // type:function size:0x560 scope:local -fn_1_4E14 = .text:0x00004E14; // type:function size:0x194 scope:local -fn_1_4FA8 = .text:0x00004FA8; // type:function size:0x30 scope:local -fn_1_4FD8 = .text:0x00004FD8; // type:function size:0xFC scope:local -fn_1_50D4 = .text:0x000050D4; // type:function size:0x2E4 scope:local -fn_1_53B8 = .text:0x000053B8; // type:function size:0x84 scope:local -fn_1_543C = .text:0x0000543C; // type:function size:0x258 scope:local -fn_1_5694 = .text:0x00005694; // type:function size:0x1D8 scope:local -fn_1_586C = .text:0x0000586C; // type:function size:0xC0 scope:local -fn_1_592C = .text:0x0000592C; // type:function size:0x200 scope:local -fn_1_5B2C = .text:0x00005B2C; // type:function size:0x14 scope:local -fn_1_5B40 = .text:0x00005B40; // type:function size:0x190 scope:local -fn_1_5CD0 = .text:0x00005CD0; // type:function size:0x38 scope:local -fn_1_5D08 = .text:0x00005D08; // type:function size:0x390 scope:local -fn_1_6098 = .text:0x00006098; // type:function size:0xFC scope:local -fn_1_6194 = .text:0x00006194; // type:function size:0x25C scope:local -fn_1_63F0 = .text:0x000063F0; // type:function size:0x624 scope:local -fn_1_6A14 = .text:0x00006A14; // type:function size:0x1AC scope:local -fn_1_6BC0 = .text:0x00006BC0; // type:function size:0x3F4 scope:local -fn_1_6FB4 = .text:0x00006FB4; // type:function size:0x574 scope:local -fn_1_7528 = .text:0x00007528; // type:function size:0x2C4 scope:local -fn_1_77EC = .text:0x000077EC; // type:function size:0xA8 scope:local -fn_1_7894 = .text:0x00007894; // type:function size:0x1D0 scope:local -fn_1_7A64 = .text:0x00007A64; // type:function size:0xAC8 scope:local -fn_1_852C = .text:0x0000852C; // type:function size:0x280 scope:local -fn_1_87AC = .text:0x000087AC; // type:function size:0x34 scope:local -fn_1_87E0 = .text:0x000087E0; // type:function size:0x1A8 scope:local -fn_1_8988 = .text:0x00008988; // type:function size:0xC8 scope:local -fn_1_8A50 = .text:0x00008A50; // type:function size:0x11C scope:local -fn_1_8B6C = .text:0x00008B6C; // type:function size:0x270 scope:local -fn_1_8DDC = .text:0x00008DDC; // type:function size:0x3B0 scope:local -fn_1_918C = .text:0x0000918C; // type:function size:0xF0 scope:local -fn_1_927C = .text:0x0000927C; // type:function size:0xB0 scope:local -fn_1_932C = .text:0x0000932C; // type:function size:0x17C scope:local -fn_1_94A8 = .text:0x000094A8; // type:function size:0x14C scope:local -fn_1_95F4 = .text:0x000095F4; // type:function size:0x200 scope:local -fn_1_97F4 = .text:0x000097F4; // type:function size:0xF8 scope:local -fn_1_98EC = .text:0x000098EC; // type:function size:0x34 scope:local -fn_1_9920 = .text:0x00009920; // type:function size:0x104 scope:local -fn_1_9A24 = .text:0x00009A24; // type:function size:0x198 scope:local -fn_1_9BBC = .text:0x00009BBC; // type:function size:0x144 scope:local -fn_1_9D00 = .text:0x00009D00; // type:function size:0xD8 -fn_1_9DD8 = .text:0x00009DD8; // type:function size:0x6E0 -fn_1_A4B8 = .text:0x0000A4B8; // type:function size:0x9C scope:local -fn_1_A554 = .text:0x0000A554; // type:function size:0xA8 scope:local -fn_1_A5FC = .text:0x0000A5FC; // type:function size:0xE4 scope:local -fn_1_A6E0 = .text:0x0000A6E0; // type:function size:0x938 scope:local -fn_1_B018 = .text:0x0000B018; // type:function size:0x70 scope:local -fn_1_B088 = .text:0x0000B088; // type:function size:0x144 scope:local -fn_1_B1CC = .text:0x0000B1CC; // type:function size:0x1EC scope:local -fn_1_B3B8 = .text:0x0000B3B8; // type:function size:0xC0 scope:local -fn_1_B478 = .text:0x0000B478; // type:function size:0x680 scope:local -fn_1_BAF8 = .text:0x0000BAF8; // type:function size:0x1E4 scope:local -fn_1_BCDC = .text:0x0000BCDC; // type:function size:0x224 scope:local -fn_1_BF00 = .text:0x0000BF00; // type:function size:0x68 scope:local -fn_1_BF68 = .text:0x0000BF68; // type:function size:0x98 scope:local -fn_1_C000 = .text:0x0000C000; // type:function size:0xFC scope:local -fn_1_C0FC = .text:0x0000C0FC; // type:function size:0x160 scope:local -fn_1_C25C = .text:0x0000C25C; // type:function size:0x5E8 scope:local -fn_1_C844 = .text:0x0000C844; // type:function size:0x50 scope:local -fn_1_C894 = .text:0x0000C894; // type:function size:0xB8 scope:local -fn_1_C94C = .text:0x0000C94C; // type:function size:0x4C scope:local -fn_1_C998 = .text:0x0000C998; // type:function size:0x1AC scope:local -fn_1_CB44 = .text:0x0000CB44; // type:function size:0x380 scope:local -fn_1_CEC4 = .text:0x0000CEC4; // type:function size:0x170 scope:local -fn_1_D034 = .text:0x0000D034; // type:function size:0x48 scope:local -fn_1_D07C = .text:0x0000D07C; // type:function size:0x98 scope:local -fn_1_D114 = .text:0x0000D114; // type:function size:0x62C scope:local -fn_1_D740 = .text:0x0000D740; // type:function size:0x644 -fn_1_DD84 = .text:0x0000DD84; // type:function size:0x110 -fn_1_DE94 = .text:0x0000DE94; // type:function size:0x26C -fn_1_E100 = .text:0x0000E100; // type:function size:0x54 scope:local -fn_1_E154 = .text:0x0000E154; // type:function size:0x164 scope:local -fn_1_E2B8 = .text:0x0000E2B8; // type:function size:0x194 scope:local -fn_1_E44C = .text:0x0000E44C; // type:function size:0x4C8 scope:local -fn_1_E914 = .text:0x0000E914; // type:function size:0x3C0 scope:local -fn_1_ECD4 = .text:0x0000ECD4; // type:function size:0x1CC scope:local -fn_1_EEA0 = .text:0x0000EEA0; // type:function size:0x38 scope:local -fn_1_EED8 = .text:0x0000EED8; // type:function size:0x1C4 scope:local -fn_1_F09C = .text:0x0000F09C; // type:function size:0x2AC scope:local -fn_1_F348 = .text:0x0000F348; // type:function size:0xB0 scope:local -fn_1_F3F8 = .text:0x0000F3F8; // type:function size:0x2F0 scope:local -fn_1_F6E8 = .text:0x0000F6E8; // type:function size:0x1A8 scope:local -fn_1_F890 = .text:0x0000F890; // type:function size:0x18C scope:local -fn_1_FA1C = .text:0x0000FA1C; // type:function size:0xA0 scope:local -fn_1_FABC = .text:0x0000FABC; // type:function size:0x9C scope:local -fn_1_FB58 = .text:0x0000FB58; // type:function size:0xE4 scope:local -fn_1_FC3C = .text:0x0000FC3C; // type:function size:0xB0 scope:local -fn_1_FCEC = .text:0x0000FCEC; // type:function size:0x50 scope:local -fn_1_FD3C = .text:0x0000FD3C; // type:function size:0x108 scope:local -fn_1_FE44 = .text:0x0000FE44; // type:function size:0x8C scope:local -fn_1_FED0 = .text:0x0000FED0; // type:function size:0x14C scope:local -fn_1_1001C = .text:0x0001001C; // type:function size:0x19C scope:local -fn_1_101B8 = .text:0x000101B8; // type:function size:0x4AC scope:local -fn_1_10664 = .text:0x00010664; // type:function size:0x1BC scope:local -fn_1_10820 = .text:0x00010820; // type:function size:0x2C8 scope:local -fn_1_10AE8 = .text:0x00010AE8; // type:function size:0xC8 scope:local -fn_1_10BB0 = .text:0x00010BB0; // type:function size:0x140 scope:local -fn_1_10CF0 = .text:0x00010CF0; // type:function size:0x1C8 scope:local -fn_1_10EB8 = .text:0x00010EB8; // type:function size:0x1AC scope:local -fn_1_11064 = .text:0x00011064; // type:function size:0x420 scope:local -fn_1_11484 = .text:0x00011484; // type:function size:0x56C scope:local +RoundItemMain = .text:0x00000D04; // type:function size:0x550 scope:local +RoundItemDestroy = .text:0x00001254; // type:function size:0x38 scope:local +RoundItemEvent = .text:0x0000128C; // type:function size:0x80 scope:local +SpaceAmidaEvent = .text:0x0000130C; // type:function size:0x270 scope:local +WalkMiniEvent = .text:0x0000157C; // type:function size:0xF4 scope:local +UpdateHostDisp = .text:0x00001670; // type:function size:0x90 scope:local +CoasterInit = .text:0x00001700; // type:function size:0x290 scope:local +CoasterPathUpdate = .text:0x00001990; // type:function size:0x148 scope:local +CoasterPosCalc = .text:0x00001AD8; // type:function size:0x64 scope:local +CoasterCameraUpdate = .text:0x00001B3C; // type:function size:0x3A8 scope:local +CoasterCameraObjKill = .text:0x00001EE4; // type:function size:0x48 scope:local +CoasterCameraObjMain = .text:0x00001F2C; // type:function size:0x78 scope:local +CoasterCameraObjUpdate = .text:0x00001FA4; // type:function size:0x580 scope:local +CoasterStickRotGet = .text:0x00002524; // type:function size:0x248 scope:local +CoasterRotUpdate = .text:0x0000276C; // type:function size:0x7AC scope:local +CoasterCoinCheck = .text:0x00002F18; // type:function size:0x438 scope:local +CoasterPathMotUpdate = .text:0x00003350; // type:function size:0x1C4 scope:local +CoasterMotCreate = .text:0x00003514; // type:function size:0xA0 scope:local +CoasterMotKill = .text:0x000035B4; // type:function size:0x70 scope:local +CoasterExec = .text:0x00003624; // type:function size:0xFD0 scope:local +CoasterExit = .text:0x000045F4; // type:function size:0x180 scope:local +CoasterWinCreate = .text:0x00004774; // type:function size:0xF0 scope:local +CoasterWinKill = .text:0x00004864; // type:function size:0x50 scope:local +CoasterHostExec = .text:0x000048B4; // type:function size:0x560 scope:local +CoasterMain = .text:0x00004E14; // type:function size:0x194 scope:local +CoasterDestroy = .text:0x00004FA8; // type:function size:0x30 scope:local +CoasterEvent = .text:0x00004FD8; // type:function size:0xFC scope:local +CoasterCoinCreate = .text:0x000050D4; // type:function size:0x2E4 scope:local +CoasterCoinKill = .text:0x000053B8; // type:function size:0x84 scope:local +CupInit = .text:0x0000543C; // type:function size:0x258 scope:local +CupMotOnSet = .text:0x00005694; // type:function size:0x1D8 scope:local +CupEvent = .text:0x0000586C; // type:function size:0xC0 scope:local +CupMain = .text:0x0000592C; // type:function size:0x200 scope:local +CupDestroy = .text:0x00005B2C; // type:function size:0x14 scope:local +CupExec = .text:0x00005B40; // type:function size:0x190 scope:local +CupObjCheck = .text:0x00005CD0; // type:function size:0x38 scope:local +CupObjCreate = .text:0x00005D08; // type:function size:0x390 scope:local +CupObjMain = .text:0x00006098; // type:function size:0xFC scope:local +CupObjInit = .text:0x00006194; // type:function size:0x25C scope:local +CupObjJumpWait = .text:0x000063F0; // type:function size:0x624 scope:local +CupObjHookReset = .text:0x00006A14; // type:function size:0x1AC scope:local +CupObjStop = .text:0x00006BC0; // type:function size:0x3F4 scope:local +CupObjRotate = .text:0x00006FB4; // type:function size:0x574 scope:local +CupLandEvent = .text:0x00007528; // type:function size:0x2C4 scope:local +CoasterLandEvent = .text:0x000077EC; // type:function size:0xA8 scope:local +CoasterLandMain = .text:0x00007894; // type:function size:0x1D0 scope:local +CoasterLandExec = .text:0x00007A64; // type:function size:0xAC8 scope:local +CoasterPlayerManCreate = .text:0x0000852C; // type:function size:0x280 scope:local +CoasterPlayerManKill = .text:0x000087AC; // type:function size:0x34 scope:local +CoasterPlayerManUpdate = .text:0x000087E0; // type:function size:0x1A8 scope:local +CoasterPlayerWait = .text:0x00008988; // type:function size:0xC8 scope:local +CoasterPlayerChaseBegin = .text:0x00008A50; // type:function size:0x11C scope:local +CoasterPlayerChasePathSet = .text:0x00008B6C; // type:function size:0x270 scope:local +CoasterPlayerChase = .text:0x00008DDC; // type:function size:0x3B0 scope:local +CoasterPlayerStop = .text:0x0000918C; // type:function size:0xF0 scope:local +CoasterPlayerEnd = .text:0x0000927C; // type:function size:0xB0 scope:local +CoasterPlayerEndSet = .text:0x0000932C; // type:function size:0x17C scope:local +CoasterPlayerLoopCheck = .text:0x000094A8; // type:function size:0x14C scope:local +CoasterPlayerTimeInit = .text:0x000095F4; // type:function size:0x200 scope:local +CoasterEffCreate = .text:0x000097F4; // type:function size:0xF8 scope:local +CoasterEffKill = .text:0x000098EC; // type:function size:0x34 scope:local +CoasterEffUpdate = .text:0x00009920; // type:function size:0x104 scope:local +CoasterEffAdd = .text:0x00009A24; // type:function size:0x198 scope:local +CoasterEffModelUpdate = .text:0x00009BBC; // type:function size:0x144 scope:local +CoasterHostComKeySet = .text:0x00009D00; // type:function size:0xD8 scope:local +SpaceAmidaExec = .text:0x00009DD8; // type:function size:0x6E0 +SpaceAmidaMainUpdate = .text:0x0000A4B8; // type:function size:0x9C scope:local +SpaceAmidaStop = .text:0x0000A554; // type:function size:0xA8 scope:local +SpaceAmidaKill = .text:0x0000A5FC; // type:function size:0xE4 scope:local +SpaceAmidaRocketObjUpdate = .text:0x0000A6E0; // type:function size:0x938 scope:local +SpaceAmidaMapLenGet = .text:0x0000B018; // type:function size:0x70 scope:local +SpaceAmidaComChoiceSet = .text:0x0000B088; // type:function size:0x144 scope:local +SpaceAmidaComInputGet = .text:0x0000B1CC; // type:function size:0x1EC scope:local +SpaceAmidaGameOpen = .text:0x0000B3B8; // type:function size:0xC0 scope:local +SpaceAmidaGameUpdate = .text:0x0000B478; // type:function size:0x680 scope:local +SpaceAmidaRocketJump = .text:0x0000BAF8; // type:function size:0x1E4 scope:local +SpaceAmidaRocketKemuriExec = .text:0x0000BCDC; // type:function size:0x224 scope:local +SpaceAmidaRocketWait = .text:0x0000BF00; // type:function size:0x68 scope:local +SpaceAmidaRocketUp = .text:0x0000BF68; // type:function size:0x98 scope:local +SpaceAmidaCoinWin = .text:0x0000C000; // type:function size:0xFC scope:local +SpaceAmidaJumpDown = .text:0x0000C0FC; // type:function size:0x160 scope:local +SpaceAmidaCoinRainMain = .text:0x0000C25C; // type:function size:0x5E8 scope:local +SpaceAmidaReturnWinMain = .text:0x0000C844; // type:function size:0x50 scope:local +SpaceAmidaGameStop = .text:0x0000C894; // type:function size:0xB8 scope:local +SpaceAmidaDirGet = .text:0x0000C94C; // type:function size:0x4C scope:local +SpaceAmidaAngleGet = .text:0x0000C998; // type:function size:0x1AC scope:local +SpaceAmidaPlayerRotAdd = .text:0x0000CB44; // type:function size:0x380 scope:local +SpaceAmidaEffCreate = .text:0x0000CEC4; // type:function size:0x170 scope:local +SpaceAmidaEffKill = .text:0x0000D034; // type:function size:0x48 scope:local +SpaceAmidaEffUpdate = .text:0x0000D07C; // type:function size:0x98 scope:local +SpaceAmidaEffParticleHook = .text:0x0000D114; // type:function size:0x62C scope:local +RoundItemInit = .text:0x0000D740; // type:function size:0x644 +RoundItemKill = .text:0x0000DD84; // type:function size:0x110 +RoundItemEventStart = .text:0x0000DE94; // type:function size:0x26C +RoundItemEnd = .text:0x0000E100; // type:function size:0x54 scope:local +RoundItemClose = .text:0x0000E154; // type:function size:0x164 scope:local +RoundItemMainUpdate = .text:0x0000E2B8; // type:function size:0x194 scope:local +RoundItemUmaStop = .text:0x0000E44C; // type:function size:0x4C8 scope:local +RoundItemPlayerJump = .text:0x0000E914; // type:function size:0x3C0 scope:local +RoundItemStartWait = .text:0x0000ECD4; // type:function size:0x1CC scope:local +RoundItemComInputGet = .text:0x0000EEA0; // type:function size:0x38 scope:local +RoundItemInputWait = .text:0x0000EED8; // type:function size:0x1C4 scope:local +RoundItemStop = .text:0x0000F09C; // type:function size:0x2AC scope:local +RoundItemLightFlicker = .text:0x0000F348; // type:function size:0xB0 scope:local +RoundItemUmaJumpWait = .text:0x0000F3F8; // type:function size:0x2F0 scope:local +RoundItemUmaJump = .text:0x0000F6E8; // type:function size:0x1A8 scope:local +RoundItemRotatePlayer = .text:0x0000F890; // type:function size:0x18C scope:local +RoundItemStreamWait = .text:0x0000FA1C; // type:function size:0xA0 scope:local +RoundItemWinWait = .text:0x0000FABC; // type:function size:0x9C scope:local +ItemGetWinExec = .text:0x0000FB58; // type:function size:0xE4 scope:local +ItemGetShrinkWait = .text:0x0000FC3C; // type:function size:0xB0 scope:local +ItemGetReturnWinExec = .text:0x0000FCEC; // type:function size:0x50 scope:local +RoundItemGameClose = .text:0x0000FD3C; // type:function size:0x108 scope:local +RoundItemGameEnd = .text:0x0000FE44; // type:function size:0x8C scope:local +RoundItemItemUpdate = .text:0x0000FED0; // type:function size:0x14C scope:local +RoundItemItemGet = .text:0x0001001C; // type:function size:0x19C scope:local +ItemGetCreate = .text:0x000101B8; // type:function size:0x4AC scope:local +ItemGetObjUpdate = .text:0x00010664; // type:function size:0x1BC scope:local +ItemGetPlayerMove = .text:0x00010820; // type:function size:0x2C8 scope:local +ItemGetShrink = .text:0x00010AE8; // type:function size:0xC8 scope:local +RoundItemUmaRotYGet = .text:0x00010BB0; // type:function size:0x140 scope:local +RoundItemUmaPlayerSet = .text:0x00010CF0; // type:function size:0x1C8 scope:local +RoundItemAngleGet = .text:0x00010EB8; // type:function size:0x1AC scope:local +ItemGetEff1Hook = .text:0x00011064; // type:function size:0x420 scope:local +ItemGetEff2Hook = .text:0x00011484; // type:function size:0x56C scope:local _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 scope:local data:float @@ -334,136 +334,136 @@ lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data: lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x528 scope:local -lbl_1_data_528 = .data:0x00000528; // type:object size:0x2 scope:local data:2byte -lbl_1_data_52A = .data:0x0000052A; // type:object size:0x2 scope:local data:2byte -lbl_1_data_52C = .data:0x0000052C; // type:object size:0x2 scope:local data:2byte -lbl_1_data_52E = .data:0x0000052E; // type:object size:0x2 scope:local data:2byte -lbl_1_data_530 = .data:0x00000530; // type:object size:0x2 scope:local data:2byte -lbl_1_data_534 = .data:0x00000534; // type:object size:0x8 scope:local -lbl_1_data_53C = .data:0x0000053C; // type:object size:0x8 scope:local +mapObjData = .data:0x00000000; // type:object size:0x528 scope:local +bgMdl = .data:0x00000528; // type:object size:0x2 scope:local data:2byte +fgMdl = .data:0x0000052A; // type:object size:0x2 scope:local data:2byte +starHostMdl = .data:0x0000052C; // type:object size:0x2 scope:local data:2byte +hostMdl = .data:0x0000052E; // type:object size:0x2 scope:local data:2byte +syuppouMdl = .data:0x00000530; // type:object size:0x2 scope:local data:2byte +starHostMotTbl = .data:0x00000534; // type:object size:0x8 scope:local +hostMotTbl = .data:0x0000053C; // type:object size:0x8 scope:local lbl_1_data_544 = .data:0x00000544; // type:object size:0x14 scope:local data:string lbl_1_data_558 = .data:0x00000558; // type:object size:0x14 scope:local data:string lbl_1_data_56C = .data:0x0000056C; // type:object size:0x13 scope:local data:string -lbl_1_data_580 = .data:0x00000580; // type:object size:0x2 scope:local data:2byte +coasterWinId = .data:0x00000580; // type:object size:0x2 scope:local data:2byte lbl_1_data_582 = .data:0x00000582; // type:object size:0x12 scope:local -lbl_1_data_594 = .data:0x00000594; // type:object size:0x40 scope:local -lbl_1_data_5D4 = .data:0x000005D4; // type:object size:0x4 scope:local data:4byte -lbl_1_data_5D8 = .data:0x000005D8; // type:object size:0x4 scope:local data:4byte -lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x10 scope:local data:2byte +coasterMotTbl = .data:0x00000594; // type:object size:0x40 scope:local +cupMoveSeNo = .data:0x000005D4; // type:object size:0x4 scope:local data:4byte +decaStompSeNo = .data:0x000005D8; // type:object size:0x4 scope:local data:4byte +cupMapObj = .data:0x000005DC; // type:object size:0x10 scope:local data:2byte lbl_1_data_5EC = .data:0x000005EC; // type:object size:0x7 scope:local data:string lbl_1_data_5F3 = .data:0x000005F3; // type:object size:0x7 scope:local data:string lbl_1_data_5FA = .data:0x000005FA; // type:object size:0x7 scope:local data:string -lbl_1_data_604 = .data:0x00000604; // type:object size:0xC scope:local -lbl_1_data_610 = .data:0x00000610; // type:object size:0x10 scope:local +cupHookTbl = .data:0x00000604; // type:object size:0xC scope:local +cupArrowRot = .data:0x00000610; // type:object size:0x10 scope:local lbl_1_data_620 = .data:0x00000620; // type:object size:0x5 scope:local data:string lbl_1_data_625 = .data:0x00000625; // type:object size:0x5 scope:local data:string lbl_1_data_62A = .data:0x0000062A; // type:object size:0x5 scope:local data:string lbl_1_data_62F = .data:0x0000062F; // type:object size:0x4 scope:local data:string -lbl_1_data_633 = .data:0x00000633; // type:object size:0x1 scope:local data:byte -lbl_1_data_634 = .data:0x00000634; // type:object size:0x24 scope:local -lbl_1_data_658 = .data:0x00000658; // type:object size:0x24 scope:local -lbl_1_data_67C = .data:0x0000067C; // type:object size:0x12 scope:local data:2byte -lbl_1_data_690 = .data:0x00000690; // type:object size:0x2D0 scope:local -lbl_1_data_960 = .data:0x00000960; // type:object size:0x2D0 scope:local -lbl_1_data_C30 = .data:0x00000C30; // type:object size:0x2D0 scope:local +coasterChasePlayer = .data:0x00000633; // type:object size:0x1 scope:local data:byte +coasterChaseSe = .data:0x00000634; // type:object size:0x24 scope:local +effPosTbl = .data:0x00000658; // type:object size:0x24 scope:local +spaceAmidaCoinNumTbl = .data:0x0000067C; // type:object size:0x12 scope:local data:2byte +spaceAmidaMap1 = .data:0x00000690; // type:object size:0x2D0 scope:local +spaceAmidaMap2 = .data:0x00000960; // type:object size:0x2D0 scope:local +spaceAmidaMap3 = .data:0x00000C30; // type:object size:0x2D0 scope:local lbl_1_data_F00 = .data:0x00000F00; // type:object size:0x3 scope:local data:string -lbl_1_data_F08 = .data:0x00000F08; // type:object size:0x38 scope:local -lbl_1_data_F40 = .data:0x00000F40; // type:object size:0x20 scope:local -lbl_1_data_F60 = .data:0x00000F60; // type:object size:0x20 scope:local +itemMdlTbl = .data:0x00000F08; // type:object size:0x38 scope:local +itemGetMotTbl = .data:0x00000F40; // type:object size:0x20 scope:local +jumpMotTbl = .data:0x00000F60; // type:object size:0x20 scope:local lbl_1_data_F80 = .data:0x00000F80; // type:object size:0x7 scope:local data:string lbl_1_data_F87 = .data:0x00000F87; // type:object size:0x5 scope:local data:string lbl_1_data_F8C = .data:0x00000F8C; // type:object size:0x5 scope:local data:string lbl_1_data_F91 = .data:0x00000F91; // type:object size:0x5 scope:local data:string lbl_1_data_F96 = .data:0x00000F96; // type:object size:0x5 scope:local data:string -lbl_1_data_F9C = .data:0x00000F9C; // type:object size:0x10 scope:local data:4byte -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x1 scope:local data:byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_26 = .bss:0x00000026; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x1 scope:local data:byte -lbl_1_bss_29 = .bss:0x00000029; // type:object size:0x1 scope:local data:byte +umaHookTbl = .data:0x00000F9C; // type:object size:0x10 scope:local data:4byte +boardWork = .bss:0x00000000; // type:object size:0x4 data:4byte +roundItemProc = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +coasterProc = .bss:0x00000008; // type:object size:0x4 scope:local data:4byte +coasterPlayerManObj = .bss:0x0000000C; // type:object size:0x4 scope:local data:4byte +coasterCameraObj = .bss:0x00000010; // type:object size:0x4 scope:local data:4byte +cupProc = .bss:0x00000014; // type:object size:0x4 scope:local data:4byte +cupObj = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +coasterPlayerChaseNum = .bss:0x0000001C; // type:object size:0x1 scope:local data:byte +coasterEffObj = .bss:0x00000020; // type:object size:0x4 scope:local data:4byte +cupSpaceEnd = .bss:0x00000024; // type:object size:0x2 scope:local data:2byte +cupSpaceStart = .bss:0x00000026; // type:object size:0x2 scope:local data:2byte +cupHookNo = .bss:0x00000028; // type:object size:0x1 scope:local data:byte +cupSide = .bss:0x00000029; // type:object size:0x1 scope:local data:byte lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x5A0 scope:local -lbl_1_bss_5CC = .bss:0x000005CC; // type:object size:0x4 scope:local data:2byte -lbl_1_bss_5D0 = .bss:0x000005D0; // type:object size:0x30 scope:local -lbl_1_bss_600 = .bss:0x00000600; // type:object size:0x18 scope:local -lbl_1_bss_618 = .bss:0x00000618; // type:object size:0xC scope:local data:4byte -lbl_1_bss_624 = .bss:0x00000624; // type:object size:0xC scope:local data:float -lbl_1_bss_630 = .bss:0x00000630; // type:object size:0xC scope:local data:4byte -lbl_1_bss_63C = .bss:0x0000063C; // type:object size:0x4 scope:local data:float -lbl_1_bss_640 = .bss:0x00000640; // type:object size:0x4 scope:local data:float -lbl_1_bss_644 = .bss:0x00000644; // type:object size:0x4 scope:local data:float -lbl_1_bss_648 = .bss:0x00000648; // type:object size:0xC scope:local data:4byte -lbl_1_bss_654 = .bss:0x00000654; // type:object size:0xC scope:local data:float -lbl_1_bss_660 = .bss:0x00000660; // type:object size:0xC scope:local data:float -lbl_1_bss_66C = .bss:0x0000066C; // type:object size:0x4 scope:local data:float -lbl_1_bss_670 = .bss:0x00000670; // type:object size:0x4 scope:local data:float -lbl_1_bss_674 = .bss:0x00000674; // type:object size:0x4 scope:local data:float -lbl_1_bss_678 = .bss:0x00000678; // type:object size:0x30 scope:local +coasterMotId = .bss:0x000005CC; // type:object size:0x4 scope:local data:2byte +coasterCoinMdlId = .bss:0x000005D0; // type:object size:0x30 scope:local +coasterCoinF = .bss:0x00000600; // type:object size:0x18 scope:local +coasterCameraTarget = .bss:0x00000618; // type:object size:0xC scope:local data:4byte +coasterCameraUp = .bss:0x00000624; // type:object size:0xC scope:local data:float +coasterCameraPos = .bss:0x00000630; // type:object size:0xC scope:local data:4byte +coasterBaseRotY = .bss:0x0000063C; // type:object size:0x4 scope:local data:float +coasterTime = .bss:0x00000640; // type:object size:0x4 scope:local data:float +coasterMaxTime = .bss:0x00000644; // type:object size:0x4 scope:local data:float +coasterPosOld = .bss:0x00000648; // type:object size:0xC scope:local data:4byte +coasterPos = .bss:0x00000654; // type:object size:0xC scope:local data:float +coasterRot = .bss:0x00000660; // type:object size:0xC scope:local data:float +coasterCamSpeed = .bss:0x0000066C; // type:object size:0x4 scope:local data:float +coasterSpeed = .bss:0x00000670; // type:object size:0x4 scope:local data:float +coasterAccel = .bss:0x00000674; // type:object size:0x4 scope:local data:float +coasterMtx = .bss:0x00000678; // type:object size:0x30 scope:local lbl_1_bss_6A8 = .bss:0x000006A8; // type:object size:0x4 scope:local data:float -lbl_1_bss_6AC = .bss:0x000006AC; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_6AE = .bss:0x000006AE; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_6B0 = .bss:0x000006B0; // type:object size:0x1 scope:local data:byte -lbl_1_bss_6B1 = .bss:0x000006B1; // type:object size:0x1 scope:local data:byte -lbl_1_bss_6B2 = .bss:0x000006B2; // type:object size:0x1 scope:local data:byte -lbl_1_bss_6B3 = .bss:0x000006B3; // type:object size:0x1 scope:local data:byte -lbl_1_bss_6B4 = .bss:0x000006B4; // type:object size:0x1 scope:local data:byte -lbl_1_bss_6B6 = .bss:0x000006B6; // type:object size:0xA scope:local data:2byte -lbl_1_bss_6C0 = .bss:0x000006C0; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_6C4 = .bss:0x000006C4; // type:object size:0x42 data:2byte -lbl_1_bss_708 = .bss:0x00000708; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_70C = .bss:0x0000070C; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_710 = .bss:0x00000710; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_714 = .bss:0x00000714; // type:object size:0xC scope:local -lbl_1_bss_720 = .bss:0x00000720; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_724 = .bss:0x00000724; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_72A = .bss:0x0000072A; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_72C = .bss:0x0000072C; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_730 = .bss:0x00000730; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_734 = .bss:0x00000734; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_738 = .bss:0x00000738; // type:object size:0xC scope:local data:float -lbl_1_bss_744 = .bss:0x00000744; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_748 = .bss:0x00000748; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_74C = .bss:0x0000074C; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_750 = .bss:0x00000750; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_754 = .bss:0x00000754; // type:object size:0x4 scope:local data:float -lbl_1_bss_758 = .bss:0x00000758; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_75C = .bss:0x0000075C; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_760 = .bss:0x00000760; // type:object size:0x28 scope:local -lbl_1_bss_788 = .bss:0x00000788; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_78A = .bss:0x0000078A; // type:object size:0x6 scope:local data:2byte -lbl_1_bss_790 = .bss:0x00000790; // type:object size:0x6 scope:local data:2byte -lbl_1_bss_796 = .bss:0x00000796; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_798 = .bss:0x00000798; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_79C = .bss:0x0000079C; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7A0 = .bss:0x000007A0; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7A4 = .bss:0x000007A4; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7A8 = .bss:0x000007A8; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_7AA = .bss:0x000007AA; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_7AC = .bss:0x000007AC; // type:object size:0x8 scope:local data:4byte -lbl_1_bss_7B4 = .bss:0x000007B4; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_7B8 = .bss:0x000007B8; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7BC = .bss:0x000007BC; // type:object size:0x8 scope:local data:4byte -lbl_1_bss_7C4 = .bss:0x000007C4; // type:object size:0xC scope:local data:float -lbl_1_bss_7D0 = .bss:0x000007D0; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_7D2 = .bss:0x000007D2; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_7D4 = .bss:0x000007D4; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_7D6 = .bss:0x000007D6; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_7D8 = .bss:0x000007D8; // type:object size:0xC scope:local data:4byte -lbl_1_bss_7E4 = .bss:0x000007E4; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7E8 = .bss:0x000007E8; // type:object size:0x4 scope:local data:float -lbl_1_bss_7EC = .bss:0x000007EC; // type:object size:0x4 scope:local data:float -lbl_1_bss_7F0 = .bss:0x000007F0; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7F4 = .bss:0x000007F4; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7F8 = .bss:0x000007F8; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_7FC = .bss:0x000007FC; // type:object size:0x10 scope:local data:4byte -lbl_1_bss_80C = .bss:0x0000080C; // type:object size:0xC scope:local data:float -lbl_1_bss_818 = .bss:0x00000818; // type:object size:0x4 scope:local data:4byte +coasterStartSpace = .bss:0x000006AC; // type:object size:0x2 scope:local data:2byte +coasterPathMdlId = .bss:0x000006AE; // type:object size:0x2 scope:local data:2byte +coasterType = .bss:0x000006B0; // type:object size:0x1 scope:local data:byte +coasterLandF = .bss:0x000006B1; // type:object size:0x1 scope:local data:byte +coasterDoneF = .bss:0x000006B2; // type:object size:0x1 scope:local data:byte +coasterLoopF = .bss:0x000006B3; // type:object size:0x1 scope:local data:byte +eventPlayer = .bss:0x000006B4; // type:object size:0x1 scope:local data:byte +roundItemTbl = .bss:0x000006B6; // type:object size:0xA scope:local data:2byte +mapObjMotTbl = .bss:0x000006C0; // type:object size:0x4 scope:local data:4byte +mapObjMdlId = .bss:0x000006C4; // type:object size:0x42 data:2byte +spaceAmidaSeqStopF = .bss:0x00000708; // type:object size:0x2 scope:local data:2byte +spaceAmidaEffAnim = .bss:0x0000070C; // type:object size:0x4 scope:local data:4byte +spaceAmidaEffObj = .bss:0x00000710; // type:object size:0x4 scope:local data:4byte +rocketObj = .bss:0x00000714; // type:object size:0xC scope:local +spaceAmidaGameObj = .bss:0x00000720; // type:object size:0x4 scope:local data:4byte +spaceAmidaSeNo = .bss:0x00000724; // type:object size:0x4 scope:local data:4byte +spaceAmidaCoinNum = .bss:0x00000728; // type:object size:0x2 scope:local data:2byte +spaceAmidaStopF = .bss:0x0000072A; // type:object size:0x2 scope:local data:2byte +rocketWarpF = .bss:0x0000072C; // type:object size:0x4 scope:local data:4byte +spaceAmidaPath = .bss:0x00000730; // type:object size:0x4 scope:local data:4byte +spaceAmidaMapNo = .bss:0x00000734; // type:object size:0x4 scope:local data:4byte +spaceAmidaPos = .bss:0x00000738; // type:object size:0xC scope:local data:float +timerSeqId = .bss:0x00000744; // type:object size:0x2 scope:local data:2byte +timerFrame = .bss:0x00000748; // type:object size:0x4 scope:local data:4byte +timerSec = .bss:0x0000074C; // type:object size:0x4 scope:local data:4byte +kemuriMdlId = .bss:0x00000750; // type:object size:0x2 scope:local data:2byte +spaceAmidaTime = .bss:0x00000754; // type:object size:0x4 scope:local data:float +spaceAmidaMainObj = .bss:0x00000758; // type:object size:0x4 scope:local data:4byte +coinWinProc = .bss:0x0000075C; // type:object size:0x4 scope:local data:4byte +coinMdlId = .bss:0x00000760; // type:object size:0x28 scope:local +spaceAmidaEffMdlId = .bss:0x00000788; // type:object size:0x2 scope:local data:2byte +rocketMdlId = .bss:0x0000078A; // type:object size:0x6 scope:local data:2byte +mapMdlId = .bss:0x00000790; // type:object size:0x6 scope:local data:2byte +spaceAmidaMdlId = .bss:0x00000796; // type:object size:0x2 scope:local data:2byte +spaceAmidaPlayerNo = .bss:0x00000798; // type:object size:0x4 scope:local data:4byte +spaceAmidaPadNo = .bss:0x0000079C; // type:object size:0x4 scope:local data:4byte +roundItemEffAnim = .bss:0x000007A0; // type:object size:0x4 scope:local data:4byte +roundItemStreamId = .bss:0x000007A4; // type:object size:0x4 scope:local data:4byte +umaStopTimer = .bss:0x000007A8; // type:object size:0x2 scope:local data:2byte +roundItemStopF = .bss:0x000007AA; // type:object size:0x2 scope:local data:2byte +itemGetSeNo = .bss:0x000007AC; // type:object size:0x4 scope:local data:4byte +umaStopF = .bss:0x000007B4; // type:object size:0x2 scope:local data:2byte +jumpMotId = .bss:0x000007B8; // type:object size:0x4 scope:local data:4byte +itemGetMotId = .bss:0x000007BC; // type:object size:0x8 scope:local data:4byte +playerPos = .bss:0x000007C4; // type:object size:0xC scope:local data:float +timerFrame = .bss:0x000007D0; // type:object size:0x2 scope:local data:2byte +timerSec = .bss:0x000007D2; // type:object size:0x2 scope:local data:2byte +timerSeqId = .bss:0x000007D4; // type:object size:0x2 scope:local data:2byte +seqStartId = .bss:0x000007D6; // type:object size:0x2 scope:local data:2byte +umaPos = .bss:0x000007D8; // type:object size:0xC scope:local data:4byte +roundItemPlayer = .bss:0x000007E4; // type:object size:0x4 scope:local data:4byte +borderSpeed = .bss:0x000007E8; // type:object size:0x4 scope:local data:float +umaSpeed = .bss:0x000007EC; // type:object size:0x4 scope:local data:float +itemGetObj = .bss:0x000007F0; // type:object size:0x4 scope:local data:4byte +roundItemMainObj = .bss:0x000007F4; // type:object size:0x4 scope:local data:4byte +roundItemUmaObj = .bss:0x000007F8; // type:object size:0x4 scope:local data:4byte +itemObj = .bss:0x000007FC; // type:object size:0x10 scope:local data:4byte +roundItemPos = .bss:0x0000080C; // type:object size:0xC scope:local data:float +itemAnim = .bss:0x00000818; // type:object size:0x4 scope:local data:4byte diff --git a/config/GMPP01_00/rels/w01Dll/splits.txt b/config/GMPP01_00/rels/w01Dll/splits.txt index 7baca9d9..8e0a4285 100644 --- a/config/GMPP01_00/rels/w01Dll/splits.txt +++ b/config/GMPP01_00/rels/w01Dll/splits.txt @@ -11,13 +11,13 @@ REL/board_executor.c: .rodata start:0x00000000 end:0x00000010 REL/w01Dll/main.c: - .text start:0x000000E0 end:0x00009D00 + .text start:0x000000E0 end:0x00009DD8 .rodata start:0x00000010 end:0x00000198 .data start:0x00000000 end:0x00000658 .bss start:0x00000000 end:0x00000708 REL/w01Dll/mg_coin.c: - .text start:0x00009D00 end:0x0000D740 + .text start:0x00009DD8 end:0x0000D740 .rodata start:0x00000198 end:0x000002C8 .data start:0x00000658 end:0x00000F08 .bss start:0x00000708 end:0x000007A0 diff --git a/include/REL/w01Dll.h b/include/REL/w01Dll.h index f3e1e5d6..c8c44f3b 100755 --- a/include/REL/w01Dll.h +++ b/include/REL/w01Dll.h @@ -4,24 +4,56 @@ #include "dolphin/types.h" enum { + MAPOBJ_COASTER, + MAPOBJ_COASTER_RAIL, + MAPOBJ_HOST1, + MAPOBJ_HOST2, + MAPOBJ_HOST3, + MAPOBJ_HOST4, + MAPOBJ_SPACEAMIDA, + MAPOBJ_SPACEAMIDA_MAP1, + MAPOBJ_SPACEAMIDA_MAP2, + MAPOBJ_SPACEAMIDA_MAP3, + MAPOBJ_SPACEAMIDA_ROCKET1, + MAPOBJ_SPACEAMIDA_ROCKET2, + MAPOBJ_SPACEAMIDA_ROCKET3, + MAPOBJ_SPACEAMIDA_LIGHTEFF, + MAPOBJ_SPACEAMIDA_LAMP1, + MAPOBJ_SPACEAMIDA_LAMP2, + MAPOBJ_ROUNDITEM, + MAPOBJ_ROUNDITEM_UMA, + MAPOBJ_ROUNDITEM_BORDER, + MAPOBJ_ROUNDITEM_ITEM, + MAPOBJ_ROUNDITEM_ITEM_LIGHT, + MAPOBJ_ROUNDITEM_ITEM_UP, + MAPOBJ_ROUNDITEM_ITEM_DENSYOKU, + MAPOBJ_CUPR_DISH, + MAPOBJ_CUPR1, + MAPOBJ_CUPR2, + MAPOBJ_CUPR3, + MAPOBJ_CUPR_ARROW, + MAPOBJ_CUPL_DISH, + MAPOBJ_CUPL1, + MAPOBJ_CUPL2, + MAPOBJ_CUPL3, + MAPOBJ_CUPL_ARROW, MAPOBJ_MAX = 33 }; typedef struct { /* 0x00 */ struct { - u8 unk00_field0 : 1; + u8 hostSide : 1; }; - /* 0x01 */ s8 unk01[2]; -} UnkBoardDataStruct; // Size unknown + /* 0x01 */ s8 cupDir[2]; +} W01BoardWork; -extern void fn_1_9D00(s32 arg0); -extern void fn_1_9DD8(void); +extern void SpaceAmidaExec(void); -extern void fn_1_D740(s16 *arg0); -extern void fn_1_DD84(void); -extern void fn_1_DE94(void); +extern void RoundItemInit(s16 *itemTbl); +extern void RoundItemKill(void); +extern void RoundItemEventStart(void); -extern s16 lbl_1_bss_6C4[MAPOBJ_MAX]; -extern UnkBoardDataStruct *lbl_1_bss_0; +extern s16 mapObjMdlId[MAPOBJ_MAX]; +extern W01BoardWork *boardWork; #endif diff --git a/src/REL/w01Dll/main.c b/src/REL/w01Dll/main.c index 6cf2beb7..f1d1e39f 100755 --- a/src/REL/w01Dll/main.c +++ b/src/REL/w01Dll/main.c @@ -33,136 +33,133 @@ typedef struct { struct { - u8 unk00_field0 : 1; + u8 killF : 1; }; -} Bss10Work; +} CoasterCameraWork; typedef struct { struct { - u8 unk00_field0 : 1; - u8 unk00_field1 : 3; - u8 unk00_field2 : 1; - u8 unk00_field3 : 1; + u8 killF : 1; + u8 mode : 3; + u8 stopF : 1; + u8 decaF : 1; }; - u8 unk01; - u8 unk02; - char unk03[1]; - s16 unk04; - char unk06[2]; - float unk08; -} Bss18Work; + u8 time; + u8 delay; + s16 dishMdlId; + float dishSpeed; +} CupObjWork; typedef struct { - /* 0x00 */ s8 unk00; - /* 0x01 */ s8 unk01; - /* 0x02 */ s16 unk02; - /* 0x04 */ s16 unk04; - /* 0x06 */ s16 unk06; - /* 0x08 */ float unk08; - /* 0x0C */ char unk0C[4]; - /* 0x10 */ float unk10; - /* 0x14 */ Vec unk14; - /* 0x20 */ Mtx unk20; -} BssCData; // Size 0x50 + s8 mode; + s8 playerNo; + s16 delay; + s16 pathMdlId; + s16 endSpace; + float speed; + float unk0C; + float time; + Vec pos; + Mtx matrix; +} CoasterPlayerWork; // Size 0x50 typedef struct { struct { - u8 unk00_field0 : 1; + u8 killF : 1; }; - s8 unk01; - char unk02[2]; - BssCData *unk04; -} BssCWork; + s8 playerNum; + CoasterPlayerWork *player; +} CoasterPlayerManWork; typedef struct { - /* 0x00 */ s16 unk00; - /* 0x02 */ s16 unk02; - /* 0x04 */ float unk04; - /* 0x08 */ Vec unk08; - /* 0x14 */ Vec unk14; -} Bss20Data; // Size 0x20 + /* 0x00 */ s16 time; + /* 0x02 */ s16 mdlId; + /* 0x04 */ float scale; + /* 0x08 */ Vec pos; + /* 0x14 */ Vec vel; +} CoasterEffData; // Size 0x20 typedef struct { struct { - u8 unk00_field0 : 1; + u8 killF : 1; }; - u8 unk01; - char unk02[2]; - Bss20Data *unk04; -} Bss20Work; + u8 delay; + CoasterEffData *data; +} CoasterEffWork; -static void fn_1_730(void); -static void fn_1_774(void); -static s32 fn_1_778(void); -static s32 fn_1_814(void); -static void fn_1_9E8(void); +static void LightSetHook(void); +static void LightResetHook(void); +static s32 LandEvent(void); +static s32 WalkEvent(void); +static void MapObjDispSet(void); static void fn_1_D00(void); -static void fn_1_D04(void); -static void fn_1_1254(void); -static void fn_1_128C(void); -static void fn_1_130C(void); -static s32 fn_1_157C(void); -static void fn_1_1670(void); -static void fn_1_1700(void); -static void fn_1_1990(void); -static void fn_1_1AD8(BoardCameraData *camera); -static void fn_1_1B3C(void); -static void fn_1_1EE4(void); -static void fn_1_1F2C(omObjData *arg0); -static void fn_1_1FA4(void); -static float fn_1_2524(void); -static void fn_1_276C(void); -static void fn_1_2F18(void); -static void fn_1_3350(void); -static void fn_1_3514(s32 arg0); -static void fn_1_35B4(s32 arg0); -static void fn_1_3624(void); -static void fn_1_45F4(void); -static void fn_1_4774(void); -static void fn_1_4864(void); -static s32 fn_1_48B4(void); -static void fn_1_4E14(void); -static void fn_1_4FA8(void); -static void fn_1_4FD8(void); -static void fn_1_50D4(void); -static void fn_1_53B8(void); -static void fn_1_543C(void); -static void fn_1_5694(s32 arg0); -static void fn_1_586C(s32 arg0, s32 arg1); -static void fn_1_592C(void); -static void fn_1_5B2C(void); -static void fn_1_5B40(void); -static BOOL fn_1_5CD0(void); -static void fn_1_5D08(void); -static void fn_1_6098(omObjData *arg0); -static void fn_1_6194(Bss18Work *arg0, omObjData *arg1); -static void fn_1_63F0(Bss18Work *arg0, omObjData *arg1); -static void fn_1_6A14(Bss18Work *arg0, omObjData *arg1); -static void fn_1_6BC0(Bss18Work *arg0, omObjData *arg1); -static void fn_1_6FB4(Bss18Work *arg0, omObjData *arg1); -static void fn_1_7528(s32 arg0, s32 arg1); -static void fn_1_77EC(s32 arg0, s32 arg1); -static void fn_1_7894(void); -static void fn_1_7A64(void); -static void fn_1_852C(void); -static void fn_1_87AC(void); -static void fn_1_87E0(omObjData *arg0); -static void fn_1_8988(BssCData *arg0, omObjData *arg1); -static void fn_1_8A50(BssCData *arg0, omObjData *arg1); -static void fn_1_8B6C(BssCData *arg0, omObjData *arg1); -static void fn_1_8DDC(BssCData *arg0, omObjData *arg1); -static void fn_1_918C(BssCData *arg0, omObjData *arg1); -static void fn_1_927C(BssCData *arg0, omObjData *arg1); -static void fn_1_932C(BssCData *arg0); -static s32 fn_1_94A8(BssCData *arg0); -static void fn_1_95F4(BssCData *arg0); -static void fn_1_97F4(void); -static void fn_1_98EC(void); -static void fn_1_9920(omObjData *arg0); -static void fn_1_9A24(Bss20Work *arg0); -static void fn_1_9BBC(Bss20Work *arg0); +static void RoundItemMain(void); +static void RoundItemDestroy(void); +static void RoundItemEvent(void); +static void SpaceAmidaEvent(void); +static s32 WalkMiniEvent(void); +static void UpdateHostDisp(void); +static void CoasterInit(void); +static void CoasterPathUpdate(void); +static void CoasterPosCalc(BoardCameraData *camera); +static void CoasterCameraUpdate(void); +static void CoasterCameraObjKill(void); +static void CoasterCameraObjMain(omObjData *obj); +static void CoasterCameraObjUpdate(void); +static float CoasterStickRotGet(void); +static void CoasterRotUpdate(void); +static void CoasterCoinCheck(void); +static void CoasterPathMotUpdate(void); +static void CoasterMotCreate(s32 playerNo); +static void CoasterMotKill(s32 playerNo); +static void CoasterExec(void); +static void CoasterExit(void); +static void CoasterWinCreate(void); +static void CoasterWinKill(void); +static s32 CoasterHostExec(void); +static void CoasterMain(void); +static void CoasterDestroy(void); +static void CoasterEvent(void); +static void CoasterCoinCreate(void); +static void CoasterCoinKill(void); +static void CupInit(void); +static void CupMotOnSet(s32 stopF); +static void CupEvent(s32 side, s32 spaceStart); +static void CupMain(void); +static void CupDestroy(void); +static void CupExec(void); +static BOOL CupObjCheck(void); +static void CupObjCreate(void); +static void CupObjMain(omObjData *obj); +static void CupObjInit(CupObjWork *work, omObjData *obj); +static void CupObjJumpWait(CupObjWork *work, omObjData *obj); +static void CupObjHookReset(CupObjWork *work, omObjData *obj); +static void CupObjStop(CupObjWork *work, omObjData *obj); +static void CupObjRotate(CupObjWork *work, omObjData *obj); +static void CupLandEvent(s32 playerNo, s32 spaceId); +static void CoasterLandEvent(s32 playerNo, s32 spaceId); +static void CoasterLandMain(void); +static void CoasterLandExec(void); +static void CoasterPlayerManCreate(void); +static void CoasterPlayerManKill(void); +static void CoasterPlayerManUpdate(omObjData *obj); +static void CoasterPlayerWait(CoasterPlayerWork *work, omObjData *obj); +static void CoasterPlayerChaseBegin(CoasterPlayerWork *work, omObjData *obj); +static void CoasterPlayerChasePathSet(CoasterPlayerWork *work, omObjData *obj); +static void CoasterPlayerChase(CoasterPlayerWork *work, omObjData *obj); +static void CoasterPlayerStop(CoasterPlayerWork *work, omObjData *obj); +static void CoasterPlayerEnd(CoasterPlayerWork *work, omObjData *obj); +static void CoasterPlayerEndSet(CoasterPlayerWork *work); +static s32 CoasterPlayerLoopCheck(CoasterPlayerWork *work); +static void CoasterPlayerTimeInit(CoasterPlayerWork *work); +static void CoasterEffCreate(void); +static void CoasterEffKill(void); +static void CoasterEffUpdate(omObjData *obj); +static void CoasterEffAdd(CoasterEffWork *work); +static void CoasterEffModelUpdate(CoasterEffWork *work); +extern void CoasterHostComKeySet(s32 playerNo); -static BoardMapObject lbl_1_data_0[MAPOBJ_MAX] +static BoardMapObject mapObjData[MAPOBJ_MAX] = { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 8) }, { { 0.0f, 700.0f, 300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 9) }, { { -2025.0f, 100.0f, 1950.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0) }, @@ -197,116 +194,116 @@ static BoardMapObject lbl_1_data_0[MAPOBJ_MAX] { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 4) }, { { -1800.0f, 200.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W01, 5) } }; -s16 lbl_1_bss_6C4[MAPOBJ_MAX]; +s16 mapObjMdlId[MAPOBJ_MAX]; -static s32 *lbl_1_bss_6C0; -static s16 lbl_1_bss_6B6[5]; -static s8 lbl_1_bss_6B4; -static s8 lbl_1_bss_6B3; -static s8 lbl_1_bss_6B2; -static s8 lbl_1_bss_6B1; -static s8 lbl_1_bss_6B0; -static s16 lbl_1_bss_6AE; -static s16 lbl_1_bss_6AC; +static s32 *mapObjMotTbl; +static s16 roundItemTbl[5]; +static s8 eventPlayer; +static s8 coasterLoopF; +static s8 coasterDoneF; +static s8 coasterLandF; +static s8 coasterType; +static s16 coasterPathMdlId; +static s16 coasterStartSpace; static float lbl_1_bss_6A8; -static Mtx lbl_1_bss_678; -static float lbl_1_bss_674; -static float lbl_1_bss_670; -static float lbl_1_bss_66C; -static Vec lbl_1_bss_660; -static Vec lbl_1_bss_654; -static Vec lbl_1_bss_648; -static float lbl_1_bss_644; -static float lbl_1_bss_640; -static float lbl_1_bss_63C; -static Vec lbl_1_bss_630; -static Vec lbl_1_bss_624; -static Vec lbl_1_bss_618; -static s8 lbl_1_bss_600[24]; -static s16 lbl_1_bss_5D0[24]; -static s16 lbl_1_bss_5CC[2]; +static Mtx coasterMtx; +static float coasterAccel; +static float coasterSpeed; +static float coasterCamSpeed; +static Vec coasterRot; +static Vec coasterPos; +static Vec coasterPosOld; +static float coasterMaxTime; +static float coasterTime; +static float coasterBaseRotY; +static Vec coasterCameraPos; +static Vec coasterCameraUp; +static Vec coasterCameraTarget; +static s8 coasterCoinF[24]; +static s16 coasterCoinMdlId[24]; +static s16 coasterMotId[2]; static s8 lbl_1_bss_2C[1440]; static s8 lbl_1_bss_2A[2]; // padding -static s8 lbl_1_bss_29; -static s8 lbl_1_bss_28; -static s16 lbl_1_bss_26; -static s16 lbl_1_bss_24; -static omObjData *lbl_1_bss_20; -static s8 lbl_1_bss_1C; -static omObjData *lbl_1_bss_18; -static Process *lbl_1_bss_14; -static omObjData *lbl_1_bss_10; -static omObjData *lbl_1_bss_C; -static Process *lbl_1_bss_8; -static Process *lbl_1_bss_4; -UnkBoardDataStruct *lbl_1_bss_0; +static s8 cupSide; +static s8 cupHookNo; +static s16 cupSpaceStart; +static s16 cupSpaceEnd; +static omObjData *coasterEffObj; +static s8 coasterPlayerChaseNum; +static omObjData *cupObj; +static Process *cupProc; +static omObjData *coasterCameraObj; +static omObjData *coasterPlayerManObj; +static Process *coasterProc; +static Process *roundItemProc; +W01BoardWork *boardWork; -static s16 lbl_1_data_528 = -1; -static s16 lbl_1_data_52A = -1; -static s16 lbl_1_data_52C = -1; -static s16 lbl_1_data_52E = -1; -static s16 lbl_1_data_530 = -1; +static s16 bgMdl = -1; +static s16 fgMdl = -1; +static s16 starHostMdl = -1; +static s16 hostMdl = -1; +static s16 syuppouMdl = -1; -static s32 lbl_1_data_534[] = { DATA_MAKE_NUM(DATADIR_W01, 30), -1 }; +static s32 starHostMotTbl[] = { DATA_MAKE_NUM(DATADIR_W01, 30), -1 }; -static s32 lbl_1_data_53C[] = { DATA_MAKE_NUM(DATADIR_BGUEST, 1), -1 }; +static s32 hostMotTbl[] = { DATA_MAKE_NUM(DATADIR_BGUEST, 1), -1 }; void BoardCreate(void) { - BoardMapObject *temp_r30; - s32 sp8; + BoardMapObject *mapObj; + s32 boardNo; s32 i; - sp8 = GWBoardGet(); - lbl_1_bss_0 = (UnkBoardDataStruct *)GWSystem.board_data; + boardNo = GWBoardGet(); + boardWork = (W01BoardWork *)GWSystem.board_data; BoardSpaceInit(DATA_MAKE_NUM(DATADIR_W01, 0)); - lbl_1_data_528 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 1), NULL, 0); - fn_8006DDE8(lbl_1_data_528, -1.0f); - BoardModelPosSet(lbl_1_data_528, 0.0f, 0.0f, 0.0f); - BoardModelMotionStart(lbl_1_data_528, 0, 0x40000001); - lbl_1_data_52A = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 2), NULL, 0); - fn_8006DDE8(lbl_1_data_52A, -1.0f); - BoardModelPosSet(lbl_1_data_52A, 0.0f, 0.0f, 0.0f); - BoardModelMotionStart(lbl_1_data_52A, 0, 0x40000001); - lbl_1_data_52C = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 29), lbl_1_data_534, 0); - BoardModelPosSet(lbl_1_data_52C, 0.0f, 0.0f, 0.0f); - BoardModelMotionStart(lbl_1_data_52C, 1, 0x40000001); - lbl_1_data_52E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BGUEST, 0), lbl_1_data_53C, 0); - BoardModelPosSet(lbl_1_data_52E, 0.0f, 0.0f, 0.0f); - BoardModelMotionStart(lbl_1_data_52E, 1, 0x40000001); - lbl_1_data_530 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 11), NULL, 0); - BoardModelMotionStart(lbl_1_data_530, 0, 0x40000001); - BoardLightHookSet(fn_1_730, fn_1_774); + bgMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 1), NULL, 0); + fn_8006DDE8(bgMdl, -1.0f); + BoardModelPosSet(bgMdl, 0.0f, 0.0f, 0.0f); + BoardModelMotionStart(bgMdl, 0, HU3D_MOTATTR_LOOP); + fgMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 2), NULL, 0); + fn_8006DDE8(fgMdl, -1.0f); + BoardModelPosSet(fgMdl, 0.0f, 0.0f, 0.0f); + BoardModelMotionStart(fgMdl, 0, HU3D_MOTATTR_LOOP); + starHostMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 29), starHostMotTbl, 0); + BoardModelPosSet(starHostMdl, 0.0f, 0.0f, 0.0f); + BoardModelMotionStart(starHostMdl, 1, HU3D_MOTATTR_LOOP); + hostMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BGUEST, 0), hostMotTbl, 0); + BoardModelPosSet(hostMdl, 0.0f, 0.0f, 0.0f); + BoardModelMotionStart(hostMdl, 1, HU3D_MOTATTR_LOOP); + syuppouMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 11), NULL, 0); + BoardModelMotionStart(syuppouMdl, 0, HU3D_MOTATTR_LOOP); + BoardLightHookSet(LightSetHook, LightResetHook); for (i = 0; i < MAPOBJ_MAX; i++) { - temp_r30 = &lbl_1_data_0[i]; - if (temp_r30->data_num != -1) { - if (i == 2 || i == 3 || i == 4 || i == 5) { - lbl_1_bss_6C0 = lbl_1_data_53C; + mapObj = &mapObjData[i]; + if (mapObj->data_num != -1) { + if (i == MAPOBJ_HOST1 || i == MAPOBJ_HOST2 || i == MAPOBJ_HOST3 || i == MAPOBJ_HOST4) { + mapObjMotTbl = hostMotTbl; } else { - lbl_1_bss_6C0 = NULL; + mapObjMotTbl = NULL; } - lbl_1_bss_6C4[i] = BoardModelCreate(temp_r30->data_num, lbl_1_bss_6C0, 0); - BoardModelPosSetV(lbl_1_bss_6C4[i], &temp_r30->pos); - BoardModelRotSetV(lbl_1_bss_6C4[i], &temp_r30->rot); - BoardModelScaleSetV(lbl_1_bss_6C4[i], &temp_r30->scale); - BoardModelVisibilitySet(lbl_1_bss_6C4[i], 1); + mapObjMdlId[i] = BoardModelCreate(mapObj->data_num, mapObjMotTbl, 0); + BoardModelPosSetV(mapObjMdlId[i], &mapObj->pos); + BoardModelRotSetV(mapObjMdlId[i], &mapObj->rot); + BoardModelScaleSetV(mapObjMdlId[i], &mapObj->scale); + BoardModelVisibilitySet(mapObjMdlId[i], 1); } } - BoardModelMotionStart(lbl_1_bss_6C4[2], 1, 0x40000001); - BoardModelMotionStart(lbl_1_bss_6C4[3], 1, 0x40000001); - BoardModelMotionStart(lbl_1_bss_6C4[4], 1, 0x40000001); - BoardModelMotionStart(lbl_1_bss_6C4[5], 1, 0x40000001); - fn_1_543C(); - fn_1_9E8(); - fn_1_1700(); - BoardSpaceWalkEventFuncSet(fn_1_814); - BoardSpaceWalkMiniEventFuncSet(fn_1_157C); - BoardSpaceLandEventFuncSet(fn_1_778); - BoardStarHostSet(lbl_1_data_52C); - BoardBooHouseHostSet(lbl_1_data_52E); - BoardLotteryHostSet(lbl_1_data_52E); - BoardShopHostSet(lbl_1_data_52E); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_HOST1], 1, HU3D_MOTATTR_LOOP); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_HOST2], 1, HU3D_MOTATTR_LOOP); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_HOST3], 1, HU3D_MOTATTR_LOOP); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_HOST4], 1, HU3D_MOTATTR_LOOP); + CupInit(); + MapObjDispSet(); + CoasterInit(); + BoardSpaceWalkEventFuncSet(WalkEvent); + BoardSpaceWalkMiniEventFuncSet(WalkMiniEvent); + BoardSpaceLandEventFuncSet(LandEvent); + BoardStarHostSet(starHostMdl); + BoardBooHouseHostSet(hostMdl); + BoardLotteryHostSet(hostMdl); + BoardShopHostSet(hostMdl); BoardJunctionMaskSet(0xC000); BoardJunctionMaskSet(0x3000); } @@ -315,217 +312,217 @@ void BoardDestroy(void) { s32 i; - fn_1_4864(); + CoasterWinKill(); fn_1_D00(); - for (i = 0; i < 33; i++) { - if (lbl_1_bss_6C4[i] != 0) { - BoardModelKill(lbl_1_bss_6C4[i]); - lbl_1_bss_6C4[i] = 0; + for (i = 0; i < MAPOBJ_MAX; i++) { + if (mapObjMdlId[i] != 0) { + BoardModelKill(mapObjMdlId[i]); + mapObjMdlId[i] = 0; } } - if (lbl_1_data_530 != -1) { - BoardModelKill(lbl_1_data_530); - lbl_1_data_530 = -1; + if (syuppouMdl != -1) { + BoardModelKill(syuppouMdl); + syuppouMdl = -1; } - if (lbl_1_data_52E != -1) { - BoardModelKill(lbl_1_data_52E); - lbl_1_data_52E = -1; + if (hostMdl != -1) { + BoardModelKill(hostMdl); + hostMdl = -1; } - if (lbl_1_data_52C != -1) { - BoardModelKill(lbl_1_data_52C); - lbl_1_data_52C = -1; + if (starHostMdl != -1) { + BoardModelKill(starHostMdl); + starHostMdl = -1; } - if (lbl_1_data_528 != -1) { - BoardModelKill(lbl_1_data_528); - lbl_1_data_528 = -1; + if (bgMdl != -1) { + BoardModelKill(bgMdl); + bgMdl = -1; } - if (lbl_1_data_52A != -1) { - BoardModelKill(lbl_1_data_52A); - lbl_1_data_52A = -1; + if (fgMdl != -1) { + BoardModelKill(fgMdl); + fgMdl = -1; } BoardSpaceDestroy(); } -static void fn_1_730(void) +static void LightSetHook(void) { - s16 var_r31; + s16 modelId; - var_r31 = BoardModelIDGet(lbl_1_data_528); - Hu3DModelLightInfoSet(var_r31, 1); + modelId = BoardModelIDGet(bgMdl); + Hu3DModelLightInfoSet(modelId, 1); } -static void fn_1_774(void) { } +static void LightResetHook(void) { } -static s32 fn_1_778(void) +static s32 LandEvent(void) { - s32 temp_r31; - s32 temp_r30; - u32 temp_r29; + s32 playerNo; + s32 spaceId; + u32 flag; - temp_r31 = GWSystem.player_curr; - temp_r30 = GWPlayer[temp_r31].space_curr; - temp_r29 = BoardSpaceFlagGet(0, temp_r30); - if (temp_r29 & 0x800) { - fn_1_77EC(temp_r31, temp_r30); + playerNo = GWSystem.player_curr; + spaceId = GWPlayer[playerNo].space_curr; + flag = BoardSpaceFlagGet(0, spaceId); + if (flag & 0x800) { + CoasterLandEvent(playerNo, spaceId); } - else if (temp_r29 & 0x400) { - fn_1_7528(temp_r31, temp_r30); + else if (flag & 0x400) { + CupLandEvent(playerNo, spaceId); } } -static s32 fn_1_814(void) +static s32 WalkEvent(void) { - s32 temp_r27; - s32 var_r30; - s32 var_r29; - s32 var_r26; - BoardSpace *temp_r31; - BoardSpace *temp_r28; + s32 playerNo; + s32 i; + s32 type; + s32 spaceLinkId; + BoardSpace *space; + BoardSpace *spaceLink; - temp_r27 = GWSystem.player_curr; - temp_r31 = BoardSpaceGet(0, GWPlayer[temp_r27].space_curr); - if (temp_r31->flag & 0x3000) { - if (BoardPlayerSizeGet(temp_r27) == 2 || GWPlayer[temp_r27].bowser_suit) { + playerNo = GWSystem.player_curr; + space = BoardSpaceGet(0, GWPlayer[playerNo].space_curr); + if (space->flag & 0x3000) { + if (BoardPlayerSizeGet(playerNo) == 2 || GWPlayer[playerNo].bowser_suit) { return 0; } - if (temp_r31->flag & 0x2000) { - if (lbl_1_bss_0->unk00_field0 != 0) { + if (space->flag & 0x2000) { + if (boardWork->hostSide != 0) { return 0; } } - else if (temp_r31->flag & 0x1000) { - if (lbl_1_bss_0->unk00_field0 != 1) { + else if (space->flag & 0x1000) { + if (boardWork->hostSide != 1) { return 0; } } - fn_1_4FD8(); + CoasterEvent(); return 1; } - var_r29 = -1; - for (var_r30 = 0; var_r30 < temp_r31->link_cnt; var_r30++) { - if (temp_r31->link[var_r30] != -1) { - temp_r28 = BoardSpaceGet(0, temp_r31->link[var_r30]); - if (temp_r28->flag & 0x8000) { - var_r29 = 0; - var_r26 = temp_r31->link[var_r30]; + type = -1; + for (i = 0; i < space->link_cnt; i++) { + if (space->link[i] != -1) { + spaceLink = BoardSpaceGet(0, space->link[i]); + if (spaceLink->flag & 0x8000) { + type = 0; + spaceLinkId = space->link[i]; break; } - else if (temp_r28->flag & 0x4000) { - var_r29 = 1; - var_r26 = temp_r31->link[var_r30]; + else if (spaceLink->flag & 0x4000) { + type = 1; + spaceLinkId = space->link[i]; break; } } } - if (var_r29 != -1) { - fn_1_586C(var_r29, var_r26); + if (type != -1) { + CupEvent(type, spaceLinkId); return 1; } return 0; } -static void fn_1_9E8(void) +static void MapObjDispSet(void) { - BoardModelVisibilitySet(lbl_1_bss_6C4[6], 1); - BoardModelVisibilitySet(lbl_1_bss_6C4[7], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[8], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[9], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[10], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[11], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[12], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[13], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[14], 1); - BoardModelVisibilitySet(lbl_1_bss_6C4[15], 1); - BoardModelMotionStart(lbl_1_bss_6C4[6], 0, 0); - BoardModelMotionSpeedSet(lbl_1_bss_6C4[6], 0.0f); - BoardModelMotionStart(lbl_1_bss_6C4[14], 0, 0x40000001); - BoardModelMotionStart(lbl_1_bss_6C4[15], 0, 0x40000001); - BoardModelHookSet(lbl_1_bss_6C4[6], "amida_ban_07-sirenr", lbl_1_bss_6C4[14]); - BoardModelHookSet(lbl_1_bss_6C4[6], "amida_ban_07-sirenl", lbl_1_bss_6C4[15]); - BoardModelVisibilitySet(lbl_1_bss_6C4[16], 1); - BoardModelVisibilitySet(lbl_1_bss_6C4[17], 1); - BoardModelVisibilitySet(lbl_1_bss_6C4[18], 1); - BoardModelVisibilitySet(lbl_1_bss_6C4[19], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[20], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[21], 1); - BoardModelVisibilitySet(lbl_1_bss_6C4[22], 1); - BoardModelMotionStart(lbl_1_bss_6C4[21], 0, 0); - BoardModelMotionSpeedSet(lbl_1_bss_6C4[21], 0.0f); - BoardModelMotionStart(lbl_1_bss_6C4[18], 0, 0); - BoardModelMotionSpeedSet(lbl_1_bss_6C4[18], 0.0f); - BoardModelExistDupe(lbl_1_bss_6C4[16], 0); - BoardModelMotionStart(lbl_1_bss_6C4[16], 0, 0x40000001); - BoardModelMotionStart(lbl_1_bss_6C4[17], 0, 0x40000001); - BoardModelMotionStart(lbl_1_bss_6C4[22], 0, 0x40000001); - BoardModelHookSet(lbl_1_bss_6C4[21], "m_goraund_01-flag1", lbl_1_bss_6C4[22]); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_MAP1], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_MAP2], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_MAP3], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_ROCKET1], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_ROCKET2], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_ROCKET3], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_LIGHTEFF], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_LAMP1], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_SPACEAMIDA_LAMP2], 1); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_SPACEAMIDA], 0, 0); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_SPACEAMIDA], 0.0f); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_SPACEAMIDA_LAMP1], 0, HU3D_MOTATTR_LOOP); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_SPACEAMIDA_LAMP2], 0, HU3D_MOTATTR_LOOP); + BoardModelHookSet(mapObjMdlId[MAPOBJ_SPACEAMIDA], "amida_ban_07-sirenr", mapObjMdlId[MAPOBJ_SPACEAMIDA_LAMP1]); + BoardModelHookSet(mapObjMdlId[MAPOBJ_SPACEAMIDA], "amida_ban_07-sirenl", mapObjMdlId[MAPOBJ_SPACEAMIDA_LAMP2]); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_DENSYOKU], 1); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], 0, 0); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], 0.0f); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], 0, 0); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], 0.0f); + BoardModelExistDupe(mapObjMdlId[MAPOBJ_ROUNDITEM], 0); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM], 0, HU3D_MOTATTR_LOOP); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA], 0, HU3D_MOTATTR_LOOP); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_DENSYOKU], 0, HU3D_MOTATTR_LOOP); + BoardModelHookSet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], "m_goraund_01-flag1", mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_DENSYOKU]); } static void fn_1_D00(void) { } -static void fn_1_D04(void) +static void RoundItemMain(void) { - Vec sp3C; - Vec sp30; - Vec sp24; - Vec sp18; - Vec spC; - s8 sp8[4]; - s32 temp_r28; - s32 temp_r3; - s32 var_r26; - s32 var_r25; - s32 temp_r30; + Vec spacePos; + s8 comItem[4]; + s32 spaceStart; + s32 spaceEnd; + s32 comPlayF; + s32 choice; + s32 playerNo; s32 i; s32 j; - temp_r30 = GWSystem.player_curr; - var_r26 = 0; - if (BoardPlayerItemCount(temp_r30) == 3) { + playerNo = GWSystem.player_curr; + comPlayF = FALSE; + if (BoardPlayerItemCount(playerNo) == 3) { BoardWinCreate(0, MAKE_MESSID(10, 9), 0); BoardWinWait(); BoardWinKill(); HuPrcEnd(); } - lbl_1_bss_6B6[0] = 0; + roundItemTbl[0] = 0; i = 1; while (i < 4) { - lbl_1_bss_6B6[i] = frandmod(14); - if (lbl_1_bss_6B6[i] != 10 && lbl_1_bss_6B6[i] != 13) { + roundItemTbl[i] = frandmod(14); + if (roundItemTbl[i] != 10 && roundItemTbl[i] != 13) { for (j = 0; j < i; j++) { - if (lbl_1_bss_6B6[i] == lbl_1_bss_6B6[j]) { - lbl_1_bss_6B6[i] = -1; + if (roundItemTbl[i] == roundItemTbl[j]) { + roundItemTbl[i] = -1; } } - if (lbl_1_bss_6B6[i] != -1) { + if (roundItemTbl[i] != -1) { i++; } } } - fn_1_D740(lbl_1_bss_6B6); + RoundItemInit(roundItemTbl); for (i = 0; i < 4; i++) { - sp8[i] = lbl_1_bss_6B6[i]; + comItem[i] = roundItemTbl[i]; } - if (BoardComPreferItemGet(temp_r30, sp8, 4) != -1) { - var_r26 = 1; + if (BoardComPreferItemGet(playerNo, comItem, 4) != -1) { + comPlayF = TRUE; } HuAudFXPlay(0x40D); HuAudFXPlay(0x40E); - BoardModelAttrReset(lbl_1_bss_6C4[21], 0x40000004); - BoardModelMotionStart(lbl_1_bss_6C4[21], 0, 0); - temp_r28 = GWPlayer[temp_r30].space_curr; - temp_r3 = BoardSpaceLinkFlagSearch(0, temp_r28, 0x02000000); - BoardSpacePosGet(0, temp_r3, &sp3C); - sp30.x = 150.0f; - sp30.y = 0.0f; - sp30.z = 0.0f; - sp24.x = -45.0f; - sp24.y = 0.0f; - sp24.z = 0.0f; - BoardCameraMotionStartEx(lbl_1_bss_6C4[4], &sp24, &sp30, 1880.0f, -1.0f, 21); + BoardModelAttrReset(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], HU3D_MOTATTR_REV); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], 0, 0); + spaceStart = GWPlayer[playerNo].space_curr; + spaceEnd = BoardSpaceLinkFlagSearch(0, spaceStart, 0x02000000); + BoardSpacePosGet(0, spaceEnd, &spacePos); + { + Vec cameraOfs; + Vec cameraRot; + cameraOfs.x = 150.0f; + cameraOfs.y = 0.0f; + cameraOfs.z = 0.0f; + cameraRot.x = -45.0f; + cameraRot.y = 0.0f; + cameraRot.z = 0.0f; + BoardCameraMotionStartEx(mapObjMdlId[MAPOBJ_HOST3], &cameraRot, &cameraOfs, 1880.0f, -1.0f, 21); + } BoardCameraMotionWait(); BoardWinCreateChoice(2, MAKE_MESSID(10, 0), 0, 0); - if (GWPlayer[temp_r30].com) { - if (var_r26 != 0) { + if (GWPlayer[playerNo].com) { + if (comPlayF != 0) { BoardComKeySetLeft(); } else { @@ -534,369 +531,376 @@ static void fn_1_D04(void) } BoardWinWait(); BoardWinKill(); - var_r25 = BoardWinChoiceGet(); - if (var_r25 != 0) { + choice = BoardWinChoiceGet(); + if (choice != 0) { BoardWinCreate(2, MAKE_MESSID(10, 4), 0); BoardWinWait(); BoardWinKill(); BoardMGExit(); HuAudFXPlay(0x40F); - BoardModelMotionStart(lbl_1_bss_6C4[21], 0, 0x40000004); - while (!BoardModelMotionEndCheck(lbl_1_bss_6C4[21])) { + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], 0, HU3D_MOTATTR_REV); + while (!BoardModelMotionEndCheck(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP])) { HuPrcVSleep(); } - BoardModelMotionSpeedSet(lbl_1_bss_6C4[21], 0.0f); - BoardModelAttrReset(lbl_1_bss_6C4[21], 0x40000004); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], 0.0f); + BoardModelAttrReset(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], HU3D_MOTATTR_REV); while (BoardMGDoneFlagGet() != 1) { HuPrcVSleep(); } BoardMGDoneFlagSet(0); - fn_1_DD84(); + RoundItemKill(); HuPrcEnd(); } - BoardPlayerMoveBetween(temp_r30, temp_r28, temp_r3); - while (GWPlayer[temp_r30].moving) { + BoardPlayerMoveBetween(playerNo, spaceStart, spaceEnd); + while (GWPlayer[playerNo].moving) { HuPrcVSleep(); } - BoardPlayerMotionStart(temp_r30, 1, 0x40000001); - sp18.x = 0.0f; - sp18.y = 0.0f; - sp18.z = 0.0f; - spC.x = -45.0f; - spC.y = 0.0f; - spC.z = 0.0f; - BoardCameraMotionStartEx(lbl_1_bss_6C4[21], &spC, &sp18, 1200.0f, -1.0f, 21); + BoardPlayerMotionStart(playerNo, 1, HU3D_MOTATTR_LOOP); + { + Vec cameraOfs; + Vec cameraRot; + cameraOfs.x = 0.0f; + cameraOfs.y = 0.0f; + cameraOfs.z = 0.0f; + cameraRot.x = -45.0f; + cameraRot.y = 0.0f; + cameraRot.z = 0.0f; + BoardCameraMotionStartEx(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], &cameraRot, &cameraOfs, 1200.0f, -1.0f, 21); + } BoardCameraMotionWait(); - fn_1_DE94(); + RoundItemEventStart(); while (BoardEventFlagGet() != 0) { HuPrcVSleep(); } BoardCameraMotionWait(); BoardAudSeqPause(0, 0, 1000); - while (GWPlayer[temp_r30].moving) { + while (GWPlayer[playerNo].moving) { HuPrcVSleep(); } - BoardPlayerMotionStart(temp_r30, 1, 0x40000001); + BoardPlayerMotionStart(playerNo, 1, HU3D_MOTATTR_LOOP); HuPrcEnd(); } -static void fn_1_1254(void) +static void RoundItemDestroy(void) { BoardWinKill(); CharModelDataClose(-1); - lbl_1_bss_4 = NULL; + roundItemProc = NULL; } -static void fn_1_128C(void) +static void RoundItemEvent(void) { - lbl_1_bss_4 = HuPrcChildCreate(fn_1_D04, 0x2003, 0x2000, 0, boardMainProc); - HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1254); - while (lbl_1_bss_4) { + roundItemProc = HuPrcChildCreate(RoundItemMain, 0x2003, 0x2000, 0, boardMainProc); + HuPrcDestructorSet2(roundItemProc, RoundItemDestroy); + while (roundItemProc) { HuPrcVSleep(); } } -static void fn_1_130C(void) +static void SpaceAmidaEvent(void) { - Vec sp20; - Vec sp14; - Vec sp8; - s32 temp_r31; - s32 var_r28; - s32 temp_r30; - s32 temp_r3; + Vec spacePos; + s32 playerNo; + s32 choice; + s32 spaceStart; + s32 spaceEnd; - temp_r31 = GWSystem.player_curr; + playerNo = GWSystem.player_curr; BoardWinCreateChoice(2, MAKE_MESSID(11, 0), 0, 0); - if (GWPlayer[temp_r31].com) { + if (GWPlayer[playerNo].com) { BoardComKeySetLeft(); } BoardWinWait(); BoardWinKill(); - var_r28 = BoardWinChoiceGet(); - if (var_r28 != 0) { + choice = BoardWinChoiceGet(); + if (choice != 0) { BoardWinCreate(2, MAKE_MESSID(11, 4), 0); BoardWinWait(); BoardWinKill(); BoardMGExit(); return; } - BoardModelMotionStart(lbl_1_bss_6C4[6], 0, 0); - sp14.x = 0.0f; - sp14.y = 0.0f; - sp14.z = 0.0f; - sp8.x = 0.0f; - sp8.y = 170.0f; - sp8.z = 0.0f; - BoardCameraMotionStartEx(lbl_1_bss_6C4[6], &sp14, &sp8, 1200.0f, 25.0f, 21); - temp_r30 = GWPlayer[temp_r31].space_curr; - temp_r3 = BoardSpaceLinkFlagSearch(0, temp_r30, 0x02000000); - BoardSpacePosGet(0, temp_r3, &sp20); - BoardPlayerMoveBetween(temp_r31, temp_r30, temp_r3); - BoardPlayerMotionStart(temp_r31, 1, 0x40000001); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_SPACEAMIDA], 0, 0); + { + Vec cameraOfs; + Vec cameraRot; + cameraOfs.x = 0.0f; + cameraOfs.y = 0.0f; + cameraOfs.z = 0.0f; + cameraRot.x = 0.0f; + cameraRot.y = 170.0f; + cameraRot.z = 0.0f; + BoardCameraMotionStartEx(mapObjMdlId[MAPOBJ_SPACEAMIDA], &cameraOfs, &cameraRot, 1200.0f, 25.0f, 21); + } + + spaceStart = GWPlayer[playerNo].space_curr; + spaceEnd = BoardSpaceLinkFlagSearch(0, spaceStart, 0x02000000); + BoardSpacePosGet(0, spaceEnd, &spacePos); + BoardPlayerMoveBetween(playerNo, spaceStart, spaceEnd); + BoardPlayerMotionStart(playerNo, 1, HU3D_MOTATTR_LOOP); BoardAudSeqPause(0, 1, 1000); - fn_1_9DD8(); - while (GWPlayer[temp_r31].moving) { + SpaceAmidaExec(); + while (GWPlayer[playerNo].moving) { HuPrcVSleep(); } while (BoardEventFlagGet() != 0) { HuPrcVSleep(); } BoardAudSeqPause(0, 0, 1000); - while (GWPlayer[temp_r31].moving) { + while (GWPlayer[playerNo].moving) { HuPrcVSleep(); } - BoardPlayerMotionStart(temp_r31, 1, 0x40000001); + BoardPlayerMotionStart(playerNo, 1, HU3D_MOTATTR_LOOP); } -static s32 fn_1_157C(void) +static s32 WalkMiniEvent(void) { - s32 temp_r31; - s16 temp_curr; + s32 flag; + s16 spaceId; - temp_curr = GWPlayer[GWSystem.player_curr].space_curr; - temp_r31 = BoardSpaceFlagGet(0, temp_curr) & 0x600000; + spaceId = GWPlayer[GWSystem.player_curr].space_curr; + flag = BoardSpaceFlagGet(0, spaceId) & 0x600000; BoardRollDispSet(0); - if (temp_r31 == 0x200000) { - fn_1_130C(); + if (flag == 0x200000) { + SpaceAmidaEvent(); } - else if (temp_r31 == 0x400000) { - fn_1_128C(); + else if (flag == 0x400000) { + RoundItemEvent(); } BoardRollDispSet(1); } -static void fn_1_1670(void) +static void UpdateHostDisp(void) { - if (lbl_1_bss_0->unk00_field0 == 0) { - BoardModelVisibilitySet(lbl_1_bss_6C4[2], 1); - BoardModelVisibilitySet(lbl_1_bss_6C4[3], 0); + if (boardWork->hostSide == 0) { + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_HOST1], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_HOST2], 0); } else { - BoardModelVisibilitySet(lbl_1_bss_6C4[2], 0); - BoardModelVisibilitySet(lbl_1_bss_6C4[3], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_HOST1], 0); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_HOST2], 1); } } -static void fn_1_1700(void) +static void CoasterInit(void) { - Vec sp8; - Mtx sp14; + Vec pos; + Mtx matrix; - lbl_1_bss_6B1 = 0; - lbl_1_bss_6AE = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 10), NULL, 0); - lbl_1_bss_644 = BoardModelMotionMaxTimeGet(lbl_1_bss_6AE); - BoardModelVisibilitySet(lbl_1_bss_6AE, 0); + coasterLandF = 0; + coasterPathMdlId = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 10), NULL, 0); + coasterMaxTime = BoardModelMotionMaxTimeGet(coasterPathMdlId); + BoardModelVisibilitySet(coasterPathMdlId, 0); memset(lbl_1_bss_2C, 0, sizeof(lbl_1_bss_2C)); if (BoardSpaceRead(1, DATA_MAKE_NUM(DATADIR_W01, 6)) == 0) { - if (lbl_1_bss_0->unk00_field0 == 0) { - BoardSpaceFlagPosGet(1, 0x2000, &sp8); - BoardModelMotionTimeSet(lbl_1_bss_6AE, lbl_1_bss_644); - lbl_1_bss_63C = -90.0f; + if (boardWork->hostSide == 0) { + BoardSpaceFlagPosGet(1, 0x2000, &pos); + BoardModelMotionTimeSet(coasterPathMdlId, coasterMaxTime); + coasterBaseRotY = -90.0f; } else { - BoardSpaceFlagPosGet(1, 0x1000, &sp8); - BoardModelMotionTimeSet(lbl_1_bss_6AE, 0.0f); - lbl_1_bss_63C = 90.0f; + BoardSpaceFlagPosGet(1, 0x1000, &pos); + BoardModelMotionTimeSet(coasterPathMdlId, 0.0f); + coasterBaseRotY = 90.0f; } - lbl_1_bss_654 = sp8; - BoardModelPosSetV(lbl_1_bss_6C4[0], &sp8); - BoardModelRotSet(lbl_1_bss_6C4[0], 0.0f, lbl_1_bss_63C, 0.0f); - BoardModelExistDupe(lbl_1_bss_6C4[0], 1); - BoardModelExistDupe(lbl_1_bss_6C4[1], 1); - fn_8006DDE8(lbl_1_bss_6C4[1], 500.0f); - MTXIdentity(sp14); - BoardModelMtxSet(lbl_1_bss_6C4[0], &sp14); - fn_1_1670(); + coasterPos = pos; + BoardModelPosSetV(mapObjMdlId[MAPOBJ_COASTER], &pos); + BoardModelRotSet(mapObjMdlId[MAPOBJ_COASTER], 0.0f, coasterBaseRotY, 0.0f); + BoardModelExistDupe(mapObjMdlId[MAPOBJ_COASTER], 1); + BoardModelExistDupe(mapObjMdlId[MAPOBJ_COASTER_RAIL], 1); + fn_8006DDE8(mapObjMdlId[MAPOBJ_COASTER_RAIL], 500.0f); + MTXIdentity(matrix); + BoardModelMtxSet(mapObjMdlId[MAPOBJ_COASTER], &matrix); + UpdateHostDisp(); } } -static void fn_1_1990(void) +static void CoasterPathUpdate(void) { - Vec sp10; - float var_f31; - s32 var_r29; - s32 var_r30; - s16 sp8[3]; - BoardSpace *temp_r31; - BoardSpace *temp_r3; + Vec diff; + float time; + s32 spaceId; + s32 spaceIdLink; + s16 linkTbl[3]; + BoardSpace *space; + BoardSpace *spaceLink; - var_r29 = lbl_1_bss_6AC; - var_f31 = 0.0f; + spaceId = coasterStartSpace; + time = 0.0f; while (TRUE) { - temp_r31 = BoardSpaceGet(1, var_r29); - if (lbl_1_bss_0->unk00_field0 == 0) { - var_r30 = temp_r31->link[0]; + space = BoardSpaceGet(1, spaceId); + if (boardWork->hostSide == 0) { + spaceIdLink = space->link[0]; } else { - BoardSpaceLinkTargetListGet(1, var_r29, sp8); - var_r30 = sp8[0]; + BoardSpaceLinkTargetListGet(1, spaceId, linkTbl); + spaceIdLink = linkTbl[0]; } - if (var_r30 == 0) { + if (spaceIdLink == 0) { break; } - temp_r3 = BoardSpaceGet(1, var_r30); - if (!temp_r3) { - temp_r3 = temp_r31; + spaceLink = BoardSpaceGet(1, spaceIdLink); + if (!spaceLink) { + spaceLink = space; break; } - VECSubtract(&temp_r3->pos, &temp_r31->pos, &sp10); - var_f31 += VECMag(&sp10); - if (var_f31 >= lbl_1_bss_640) { + VECSubtract(&spaceLink->pos, &space->pos, &diff); + time += VECMag(&diff); + if (time >= coasterTime) { break; } - var_r29 = var_r30; + spaceId = spaceIdLink; } - if (temp_r31->flag & 8) { - lbl_1_bss_6B3 = 1; + if (space->flag & 8) { + coasterLoopF = 1; } else { - lbl_1_bss_6B3 = 0; + coasterLoopF = 0; } } -static void fn_1_1AD8(BoardCameraData *camera) +static void CoasterPosCalc(BoardCameraData *camera) { - camera->pos = lbl_1_bss_630; - camera->up = lbl_1_bss_624; - camera->target = lbl_1_bss_618; + camera->pos = coasterCameraPos; + camera->up = coasterCameraUp; + camera->target = coasterCameraTarget; } -static void fn_1_1B3C(void) +static void CoasterCameraUpdate(void) { - Vec sp3C; - Vec sp30; - Vec sp24; - Vec sp18; - Vec spC; - Mtx sp48; + Vec modelPos; + Vec diff; + Vec target; + Vec up; + Vec pos; + Mtx matrix; - VECSubtract(&lbl_1_bss_654, &lbl_1_bss_648, &sp30); - if (lbl_1_bss_6B3 != 0) { - BoardModelPosGet(lbl_1_bss_6C4[1], &sp3C); - VECSubtract(&sp3C, &lbl_1_bss_654, &sp18); - VECNormalize(&sp18, &sp18); - sp24 = lbl_1_bss_648; - spC = lbl_1_bss_654; - BoardMTXCalcLookAt(sp48, &spC, &sp18, &sp24); - MTXTranspose(sp48, lbl_1_bss_678); - MTXRotRad(sp48, 'z', MTXDegToRad(lbl_1_bss_660.z)); - MTXConcat(lbl_1_bss_678, sp48, lbl_1_bss_678); + VECSubtract(&coasterPos, &coasterPosOld, &diff); + if (coasterLoopF != 0) { + BoardModelPosGet(mapObjMdlId[MAPOBJ_COASTER_RAIL], &modelPos); + VECSubtract(&modelPos, &coasterPos, &up); + VECNormalize(&up, &up); + target = coasterPosOld; + pos = coasterPos; + BoardMTXCalcLookAt(matrix, &pos, &up, &target); + MTXTranspose(matrix, coasterMtx); + MTXRotRad(matrix, 'z', MTXDegToRad(coasterRot.z)); + MTXConcat(coasterMtx, matrix, coasterMtx); } else { - if (sp30.z != 0.0f || sp30.x != 0.0f) { - lbl_1_bss_660.y = atan2d(sp30.x, sp30.z); - lbl_1_bss_660.x = -atan2d(sp30.y, VECMagXZ(&sp30)); + if (diff.z != 0.0f || diff.x != 0.0f) { + coasterRot.y = atan2d(diff.x, diff.z); + coasterRot.x = -atan2d(diff.y, VECMagXZ(&diff)); } else { - lbl_1_bss_660.x = lbl_1_bss_660.y = 0.0f; + coasterRot.x = coasterRot.y = 0.0f; } - MTXRotRad(lbl_1_bss_678, 'z', MTXDegToRad(lbl_1_bss_660.z)); - MTXRotRad(sp48, 'x', MTXDegToRad(lbl_1_bss_660.x)); - MTXConcat(sp48, lbl_1_bss_678, lbl_1_bss_678); - MTXRotRad(sp48, 'y', MTXDegToRad(lbl_1_bss_660.y)); - MTXConcat(sp48, lbl_1_bss_678, lbl_1_bss_678); + MTXRotRad(coasterMtx, 'z', MTXDegToRad(coasterRot.z)); + MTXRotRad(matrix, 'x', MTXDegToRad(coasterRot.x)); + MTXConcat(matrix, coasterMtx, coasterMtx); + MTXRotRad(matrix, 'y', MTXDegToRad(coasterRot.y)); + MTXConcat(matrix, coasterMtx, coasterMtx); } } -static void fn_1_1EE4(void) +static void CoasterCameraObjKill(void) { - Bss10Work *temp_r31; + CoasterCameraWork *work; - if (lbl_1_bss_10) { - temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_10, Bss10Work); - temp_r31->unk00_field0 = 1; + if (coasterCameraObj) { + work = OM_GET_WORK_PTR(coasterCameraObj, CoasterCameraWork); + work->killF = TRUE; } } -static void fn_1_1F2C(omObjData *arg0) +static void CoasterCameraObjMain(omObjData *obj) { - Bss10Work *temp_r31 = OM_GET_WORK_PTR(arg0, Bss10Work); + CoasterCameraWork *work = OM_GET_WORK_PTR(obj, CoasterCameraWork); - if (temp_r31->unk00_field0 != 0 || BoardIsKill()) { - omDelObjEx(HuPrcCurrentGet(), arg0); - lbl_1_bss_10 = NULL; + if (work->killF != 0 || BoardIsKill()) { + omDelObjEx(HuPrcCurrentGet(), obj); + coasterCameraObj = NULL; return; } - fn_1_1FA4(); + CoasterCameraObjUpdate(); } -static void fn_1_1FA4(void) +static void CoasterCameraObjUpdate(void) { - Vec sp18; - Vec spC; - float temp_f28; - float temp_f29; - float var_f27; + Vec modelPos; + Vec pos; + float angleY; + float angleX; + float radius; - spC.x = lbl_1_bss_648.x; - spC.y = lbl_1_bss_648.y + 200.0f; - spC.z = lbl_1_bss_648.z; - VECSubtract(&spC, &lbl_1_bss_618, &spC); - VECScale(&spC, &spC, 0.08f); - VECAdd(&spC, &lbl_1_bss_618, &lbl_1_bss_618); - VECSubtract(&lbl_1_bss_654, &lbl_1_bss_648, &spC); - if (spC.x != 0.0f || spC.z != 0.0f) { - temp_f29 = atan2f(spC.y, VECMagXZ(&spC)); - temp_f28 = atan2f(-spC.x, -spC.z); + pos.x = coasterPosOld.x; + pos.y = coasterPosOld.y + 200.0f; + pos.z = coasterPosOld.z; + VECSubtract(&pos, &coasterCameraTarget, &pos); + VECScale(&pos, &pos, 0.08f); + VECAdd(&pos, &coasterCameraTarget, &coasterCameraTarget); + VECSubtract(&coasterPos, &coasterPosOld, &pos); + if (pos.x != 0.0f || pos.z != 0.0f) { + angleX = atan2f(pos.y, VECMagXZ(&pos)); + angleY = atan2f(-pos.x, -pos.z); } else { - temp_f29 = temp_f28 = 0.0f; + angleX = angleY = 0.0f; return; } - temp_f29 += -0.27925268f; - if (lbl_1_bss_6B3 != 0) { - if (lbl_1_bss_66C < 0.08f) { - lbl_1_bss_66C -= 0.00033333333f; + angleX += -0.27925268f; + if (coasterLoopF != 0) { + if (coasterCamSpeed < 0.08f) { + coasterCamSpeed -= 0.00033333333f; } - BoardModelPosGet(lbl_1_bss_6C4[1], &sp18); - if (lbl_1_bss_0->unk00_field0 == 0) { - var_f27 = -2500.0f; + BoardModelPosGet(mapObjMdlId[MAPOBJ_COASTER_RAIL], &modelPos); + if (boardWork->hostSide == 0) { + radius = -2500.0f; } else { - var_f27 = 2500.0f; + radius = 2500.0f; } - sp18.x = sp18.x + var_f27 * sin(1.4137166738510132); // TODO: should be sind(81) - sp18.y = sp18.y + -150.0f; - sp18.z = sp18.z + var_f27 * cos(1.4137166738510132); // TODO: should be cosd(81) - VECSubtract(&sp18, &lbl_1_bss_630, &spC); - VECScale(&spC, &spC, lbl_1_bss_66C); - VECAdd(&spC, &lbl_1_bss_630, &lbl_1_bss_630); + modelPos.x = modelPos.x + radius * sin(1.4137166738510132); // TODO: should be sind(81) + modelPos.y = modelPos.y + -150.0f; + modelPos.z = modelPos.z + radius * cos(1.4137166738510132); // TODO: should be cosd(81) + VECSubtract(&modelPos, &coasterCameraPos, &pos); + VECScale(&pos, &pos, coasterCamSpeed); + VECAdd(&pos, &coasterCameraPos, &coasterCameraPos); } else { - if (lbl_1_bss_66C < 0.08f) { - lbl_1_bss_66C += 0.00066666666f; + if (coasterCamSpeed < 0.08f) { + coasterCamSpeed += 0.00066666666f; } - spC.x = 400.0 * (sin(temp_f28) * cos(temp_f29)); - spC.y = 400.0 * -sin(temp_f29); - spC.z = 400.0 * (cos(temp_f28) * cos(temp_f29)); - VECAdd(&lbl_1_bss_618, &spC, &spC); - VECSubtract(&spC, &lbl_1_bss_630, &spC); - VECScale(&spC, &spC, lbl_1_bss_66C); - VECAdd(&spC, &lbl_1_bss_630, &lbl_1_bss_630); + pos.x = 400.0 * (sin(angleY) * cos(angleX)); + pos.y = 400.0 * -sin(angleX); + pos.z = 400.0 * (cos(angleY) * cos(angleX)); + VECAdd(&coasterCameraTarget, &pos, &pos); + VECSubtract(&pos, &coasterCameraPos, &pos); + VECScale(&pos, &pos, coasterCamSpeed); + VECAdd(&pos, &coasterCameraPos, &coasterCameraPos); } } -static float fn_1_2524(void) +static float CoasterStickRotGet(void) { - Vec sp24; - Vec sp18; - Vec spC; - float var_f30; - s16 sp8; - s32 var_r29; + Vec basePos; + Vec modelPos; + Vec diff; + float stickRot; + s16 stkX; + s32 padNo; s32 i; - sp24 = lbl_1_bss_654; - if (GWPlayer[lbl_1_bss_6B4].com) { - if (lbl_1_bss_6B3 != 0) { + basePos = coasterPos; + if (GWPlayer[eventPlayer].com) { + if (coasterLoopF != 0) { return 0.0f; } for (i = 0; i < 24; i++) { - if (lbl_1_bss_600[i] == 0) { - BoardModelPosGet(lbl_1_bss_5D0[i], &sp18); - VECSubtract(&sp18, &sp24, &spC); - if (!(VECMag(&spC) > 400.0f)) { + if (coasterCoinF[i] == 0) { + BoardModelPosGet(coasterCoinMdlId[i], &modelPos); + VECSubtract(&modelPos, &basePos, &diff); + if (!(VECMag(&diff) > 400.0f)) { break; } } @@ -904,109 +908,104 @@ static float fn_1_2524(void) if (i == 24) { return 0.0f; } - VECSubtract(&sp18, &sp24, &spC); - var_f30 = atan2d(spC.x, spC.z); - if (var_f30 > 0.0f) { - var_f30 = 45.0f; + VECSubtract(&modelPos, &basePos, &diff); + stickRot = atan2d(diff.x, diff.z); + if (stickRot > 0.0f) { + stickRot = 45.0f; } else { - var_f30 = -45.0f; + stickRot = -45.0f; } } else { - var_r29 = GWPlayer[lbl_1_bss_6B4].port; - sp8 = HuPadStkX[var_r29]; - OSs16tof32(&sp8, &var_f30); - var_f30 = var_f30 * 0.625f; + padNo = GWPlayer[eventPlayer].port; + stkX = HuPadStkX[padNo]; + OSs16tof32(&stkX, &stickRot); + stickRot = stickRot * 0.625f; } - return var_f30; + return stickRot; } -static void fn_1_276C(void) +static void CoasterRotUpdate(void) { - Vec sp58; - Vec sp40; - Vec sp34; - Vec sp28; - Vec sp1C; - float temp_f26; - float var_f27; + float motTime; + float stickRot; Mtx sp70; - fn_1_1B3C(); - if (lbl_1_bss_6B1 != 0) { - lbl_1_bss_660.z = 0.0f; + CoasterCameraUpdate(); + if (coasterLandF != 0) { + coasterRot.z = 0.0f; return; } - var_f27 = fn_1_2524(); - BoardDAngleCalcRange(&lbl_1_bss_660.z, var_f27, 5.0f); - temp_f26 = 6.0f + 6.0f * (lbl_1_bss_660.z / 45.0f) - 1.0f; - if (lbl_1_bss_660.z > 22.5f) { - BoardPlayerMotionStart(lbl_1_bss_6B4, lbl_1_bss_5CC[1], 0); - BoardPlayerMotionTimeSet(lbl_1_bss_6B4, temp_f26); + stickRot = CoasterStickRotGet(); + BoardDAngleCalcRange(&coasterRot.z, stickRot, 5.0f); + motTime = 6.0f + 6.0f * (coasterRot.z / 45.0f) - 1.0f; + if (coasterRot.z > 22.5f) { + BoardPlayerMotionStart(eventPlayer, coasterMotId[1], 0); + BoardPlayerMotionTimeSet(eventPlayer, motTime); } - else if (lbl_1_bss_660.z < -22.5f) { - BoardPlayerMotionStart(lbl_1_bss_6B4, lbl_1_bss_5CC[1], 0); - BoardPlayerMotionTimeSet(lbl_1_bss_6B4, temp_f26); + else if (coasterRot.z < -22.5f) { + BoardPlayerMotionStart(eventPlayer, coasterMotId[1], 0); + BoardPlayerMotionTimeSet(eventPlayer, motTime); } else { - BoardPlayerMotionShiftSet(lbl_1_bss_6B4, lbl_1_bss_5CC[0], 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + BoardPlayerMotionShiftSet(eventPlayer, coasterMotId[0], 0.0f, 10.0f, HU3D_MOTATTR_LOOP); } - fn_1_2F18(); + CoasterCoinCheck(); } -static void fn_1_2F18(void) +static void CoasterCoinCheck(void) { - Vec sp3C; - Vec sp30; - Vec sp24; - Vec sp18; - Vec spC; - float var_f29; - Mtx spD8; - Mtx spA8; - Mtx sp78; - Mtx sp48; + Vec coinPos; + Vec ofs; + Vec angle; + Vec diff; + Vec mdlCoasterPos; + float rotZ; + Mtx matrix; + Mtx mtxRotX; + Mtx mtxRotY; + Mtx mtxRotZ; s32 i; - if (lbl_1_bss_6B3 == 0) { - var_f29 = lbl_1_bss_660.z; - if (var_f29 > 180.0f) { - var_f29 -= 360.0f; + if (coasterLoopF == 0) { + rotZ = coasterRot.z; + if (rotZ > 180.0f) { + rotZ -= 360.0f; } - BoardModelPosGet(lbl_1_bss_6C4[0], &spC); - VECSubtract(&lbl_1_bss_654, &lbl_1_bss_648, &sp18); - if (sp18.z != 0.0f || sp18.x != 0.0f) { - sp24.y = atan2d(sp18.x, sp18.z); - sp24.x = -atan2d(sp18.y, VECMagXZ(&sp18)); + BoardModelPosGet(mapObjMdlId[MAPOBJ_COASTER], &mdlCoasterPos); + VECSubtract(&coasterPos, &coasterPosOld, &diff); + if (diff.z != 0.0f || diff.x != 0.0f) { + angle.y = atan2d(diff.x, diff.z); + angle.x = -atan2d(diff.y, VECMagXZ(&diff)); } else { - sp24.x = sp24.y = 0.0f; + angle.x = angle.y = 0.0f; } - MTXTrans(spD8, 0.0f, 180.0f, 0.0f); - MTXRotRad(spA8, 'x', MTXDegToRad(sp24.x)); - MTXRotRad(sp78, 'y', MTXDegToRad(sp24.y)); - MTXRotRad(sp48, 'z', MTXDegToRad(var_f29)); - MTXConcat(spA8, sp48, sp48); - MTXConcat(sp78, sp48, sp48); - MTXConcat(sp48, spD8, spD8); - sp30.x = spD8[0][3]; - sp30.y = spD8[1][3]; - sp30.z = spD8[2][3]; - VECAdd(&sp30, &spC, &sp30); - if (var_f29 < 27.000002f && var_f29 > -27.000002f) { + MTXTrans(matrix, 0.0f, 180.0f, 0.0f); + MTXRotRad(mtxRotX, 'x', MTXDegToRad(angle.x)); + MTXRotRad(mtxRotY, 'y', MTXDegToRad(angle.y)); + MTXRotRad(mtxRotZ, 'z', MTXDegToRad(rotZ)); + MTXConcat(mtxRotX, mtxRotZ, mtxRotZ); + MTXConcat(mtxRotY, mtxRotZ, mtxRotZ); + MTXConcat(mtxRotZ, matrix, matrix); + ofs.x = matrix[0][3]; + ofs.y = matrix[1][3]; + ofs.z = matrix[2][3]; + VECAdd(&ofs, &mdlCoasterPos, &ofs); + if (rotZ < 27.000002f && rotZ > -27.000002f) { return; } for (i = 0; i < 24; i++) { - if (lbl_1_bss_600[i] == 0) { - BoardModelPosGet(lbl_1_bss_5D0[i], &sp3C); - if (BoardVecMaxDistXZCheck(&sp3C, &sp30, 180.0f)) { + if (coasterCoinF[i] == 0) { + BoardModelPosGet(coasterCoinMdlId[i], &coinPos); + if (BoardVecMaxDistXZCheck(&coinPos, &ofs, 180.0f)) { CharModelLayerSetAll(2); - CharModelCoinEffectCreate(1, &sp3C); - BoardModelVisibilitySet(lbl_1_bss_5D0[i], 0); - BoardPlayerCoinsAdd(lbl_1_bss_6B4, 1); + CharModelCoinEffectCreate(1, &coinPos); + BoardModelVisibilitySet(coasterCoinMdlId[i], 0); + BoardPlayerCoinsAdd(eventPlayer, 1); HuAudFXPlay(7); - lbl_1_bss_600[i] = 1; + coasterCoinF[i] = 1; break; } } @@ -1014,239 +1013,236 @@ static void fn_1_2F18(void) } } -static s16 lbl_1_data_580 = -1; +static s16 coasterWinId = -1; -static void fn_1_3350(void) +static void CoasterPathMotUpdate(void) { - Vec sp8; - s16 temp_r3; - ModelData *temp_r30; - HsfObject *temp_r31; + Vec diff; + s16 modelId; + ModelData *modelP; + HsfObject *obj; - lbl_1_bss_674 += 0.002f; - if (lbl_1_bss_670 > 0.18f) { - lbl_1_bss_670 = 0.18f; + coasterAccel += 0.002f; + if (coasterSpeed > 0.18f) { + coasterSpeed = 0.18f; } - else if (lbl_1_bss_670 < 0.18f) { - lbl_1_bss_670 += lbl_1_bss_674; + else if (coasterSpeed < 0.18f) { + coasterSpeed += coasterAccel; } - temp_r3 = BoardModelIDGet(lbl_1_bss_6AE); - temp_r30 = &Hu3DData[temp_r3]; - Hu3DMotionExec(temp_r3, temp_r30->unk_08, temp_r30->unk_64, 0); - temp_r31 = Hu3DModelObjPtrGet(temp_r3, "looppath-cube1"); - lbl_1_bss_648 = lbl_1_bss_654; - lbl_1_bss_654.x = temp_r31->data.curr.pos.x; - lbl_1_bss_654.y = temp_r31->data.curr.pos.y; - lbl_1_bss_654.z = temp_r31->data.curr.pos.z; - VECSubtract(&lbl_1_bss_648, &lbl_1_bss_654, &sp8); - lbl_1_bss_640 += VECMag(&sp8); + modelId = BoardModelIDGet(coasterPathMdlId); + modelP = &Hu3DData[modelId]; + Hu3DMotionExec(modelId, modelP->unk_08, modelP->unk_64, 0); + obj = Hu3DModelObjPtrGet(modelId, "looppath-cube1"); + coasterPosOld = coasterPos; + coasterPos.x = obj->data.curr.pos.x; + coasterPos.y = obj->data.curr.pos.y; + coasterPos.z = obj->data.curr.pos.z; + VECSubtract(&coasterPosOld, &coasterPos, &diff); + coasterTime += VECMag(&diff); } -static s32 lbl_1_data_594[8][2] +static s32 coasterMotTbl[8][2] = { { DATA_MAKE_NUM(DATADIR_W01, 34), DATA_MAKE_NUM(DATADIR_W01, 42) }, { DATA_MAKE_NUM(DATADIR_W01, 35), DATA_MAKE_NUM(DATADIR_W01, 43) }, { DATA_MAKE_NUM(DATADIR_W01, 36), DATA_MAKE_NUM(DATADIR_W01, 44) }, { DATA_MAKE_NUM(DATADIR_W01, 37), DATA_MAKE_NUM(DATADIR_W01, 45) }, { DATA_MAKE_NUM(DATADIR_W01, 38), DATA_MAKE_NUM(DATADIR_W01, 46) }, { DATA_MAKE_NUM(DATADIR_W01, 39), DATA_MAKE_NUM(DATADIR_W01, 47) }, { DATA_MAKE_NUM(DATADIR_W01, 40), DATA_MAKE_NUM(DATADIR_W01, 48) }, { DATA_MAKE_NUM(DATADIR_W01, 41), DATA_MAKE_NUM(DATADIR_W01, 49) } }; -static void fn_1_3514(s32 arg0) +static void CoasterMotCreate(s32 playerNo) { - s32 temp_r30; + s32 charNo; s32 i; - temp_r30 = GWPlayer[arg0].character; + charNo = GWPlayer[playerNo].character; for (i = 0; i < 2; i++) { - lbl_1_bss_5CC[i] = BoardPlayerMotionCreate(arg0, lbl_1_data_594[temp_r30][i]); + coasterMotId[i] = BoardPlayerMotionCreate(playerNo, coasterMotTbl[charNo][i]); } } -static void fn_1_35B4(s32 arg0) +static void CoasterMotKill(s32 playerNo) { s32 i; for (i = 0; i < 2; i++) { - BoardPlayerMotionKill(arg0, lbl_1_bss_5CC[i]); - lbl_1_bss_5CC[i] = -1; + BoardPlayerMotionKill(playerNo, coasterMotId[i]); + coasterMotId[i] = -1; } } -static void fn_1_3624(void) +static void CoasterExec(void) { - Mtx sp48; - Vec sp3C; - Vec sp30; - Vec sp24; - Vec sp18; - float temp_f28; - float var_f30; - float var_f29; - s32 temp_r19; - Bss10Work *temp_r18; - s16 sp10; - s16 var_r25; + Mtx playerMtx; + Vec spacePos; + Vec cameraRot; + float coasterRotSpeed; + float coasterRotDir; + float coasterMotSpeed; + s32 seNo; + CoasterCameraWork *camWork; + s16 endSpace; s16 i; - lbl_1_bss_674 = lbl_1_bss_670 = 0.0f; - lbl_1_bss_640 = 0.0f; - lbl_1_bss_660.x = 0.0f; - lbl_1_bss_660.y = 0.0f; - lbl_1_bss_660.z = 0.0f; + coasterAccel = coasterSpeed = 0.0f; + coasterTime = 0.0f; + coasterRot.x = 0.0f; + coasterRot.y = 0.0f; + coasterRot.z = 0.0f; lbl_1_bss_6A8 = 0.0f; - lbl_1_bss_6B3 = 0; - lbl_1_bss_624.x = 0.0f; - lbl_1_bss_624.z = 0.0f; - lbl_1_bss_624.y = 1.0f; - lbl_1_bss_66C = 0.08f; - fn_1_3514(lbl_1_bss_6B4); - BoardPlayerMotionStart(lbl_1_bss_6B4, lbl_1_bss_5CC[0], 0x40000001); + coasterLoopF = 0; + coasterCameraUp.x = 0.0f; + coasterCameraUp.z = 0.0f; + coasterCameraUp.y = 1.0f; + coasterCamSpeed = 0.08f; + CoasterMotCreate(eventPlayer); + BoardPlayerMotionStart(eventPlayer, coasterMotId[0], HU3D_MOTATTR_LOOP); BoardSpaceAttrSet(0, 1); - fn_1_97F4(); - BoardModelMotionStart(lbl_1_bss_6AE, 0, 0); - if (lbl_1_bss_0->unk00_field0 == 0) { - BoardModelMotionTimeSet(lbl_1_bss_6AE, lbl_1_bss_644); - lbl_1_bss_63C = -90.0f; - lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x2000, &sp3C); - var_r25 = BoardSpaceFlagSearch(0, 0x1000); - var_f30 = -1.0f; + CoasterEffCreate(); + BoardModelMotionStart(coasterPathMdlId, 0, 0); + if (boardWork->hostSide == 0) { + BoardModelMotionTimeSet(coasterPathMdlId, coasterMaxTime); + coasterBaseRotY = -90.0f; + coasterStartSpace = BoardSpaceFlagPosGet(1, 0x2000, &spacePos); + endSpace = BoardSpaceFlagSearch(0, 0x1000); + coasterRotDir = -1.0f; } else { - BoardModelMotionTimeSet(lbl_1_bss_6AE, 0.0f); - lbl_1_bss_63C = 90.0f; - lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x1000, &sp3C); - var_r25 = BoardSpaceFlagSearch(0, 0x2000); - var_f30 = 1.0f; + BoardModelMotionTimeSet(coasterPathMdlId, 0.0f); + coasterBaseRotY = 90.0f; + coasterStartSpace = BoardSpaceFlagPosGet(1, 0x1000, &spacePos); + endSpace = BoardSpaceFlagSearch(0, 0x2000); + coasterRotDir = 1.0f; } - lbl_1_bss_654 = sp3C; - lbl_1_bss_648 = lbl_1_bss_654; - BoardModelMotionSpeedSet(lbl_1_bss_6AE, lbl_1_bss_670); - BoardPlayerPosSetV(lbl_1_bss_6B4, &lbl_1_bss_654); - BoardCameraPosCalcFuncSet(fn_1_1AD8); - lbl_1_bss_10 = omAddObjEx(boardObjMan, 0x7E02, 0, 0, -1, fn_1_1F2C); - temp_r18 = OM_GET_WORK_PTR(lbl_1_bss_10, Bss10Work); - temp_r18->unk00_field0 = 0; - sp30.x = -40.0f; - sp30.z = 0.0f; - sp30.y = -lbl_1_bss_63C; - BoardCameraMotionStartEx(lbl_1_bss_6C4[0], &sp30, NULL, 150.0f, -1.0f, 2); + coasterPos = spacePos; + coasterPosOld = coasterPos; + BoardModelMotionSpeedSet(coasterPathMdlId, coasterSpeed); + BoardPlayerPosSetV(eventPlayer, &coasterPos); + BoardCameraPosCalcFuncSet(CoasterPosCalc); + coasterCameraObj = omAddObjEx(boardObjMan, 0x7E02, 0, 0, -1, CoasterCameraObjMain); + camWork = OM_GET_WORK_PTR(coasterCameraObj, CoasterCameraWork); + camWork->killF = FALSE; + cameraRot.x = -40.0f; + cameraRot.z = 0.0f; + cameraRot.y = -coasterBaseRotY; + BoardCameraMotionStartEx(mapObjMdlId[MAPOBJ_COASTER], &cameraRot, NULL, 150.0f, -1.0f, 2); BoardCameraMotionWait(); - BoardModelPosGet(lbl_1_bss_6C4[0], &lbl_1_bss_618); - lbl_1_bss_630.x = lbl_1_bss_618.x + 1000.0 * (sind(sp30.y) * cosd(sp30.x)); - lbl_1_bss_630.y = lbl_1_bss_618.y + 1000.0 * -sind(sp30.x); - lbl_1_bss_630.z = lbl_1_bss_618.z + 1000.0 * (cosd(sp30.y) * cosd(sp30.x)); - MTXRotRad(lbl_1_bss_678, 'y', MTXDegToRad(lbl_1_bss_63C)); - BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); - BoardPlayerMtxSet(lbl_1_bss_6B4, &lbl_1_bss_678); - BoardModelRotSet(lbl_1_bss_6C4[0], 0.0f, 0.0f, 0.0f); - BoardPlayerRotSet(lbl_1_bss_6B4, 0.0f, 0.0f, 0.0f); - BoardPlayerExistCheck(lbl_1_bss_6B4, 0); + BoardModelPosGet(mapObjMdlId[MAPOBJ_COASTER], &coasterCameraTarget); + coasterCameraPos.x = coasterCameraTarget.x + 1000.0 * (sind(cameraRot.y) * cosd(cameraRot.x)); + coasterCameraPos.y = coasterCameraTarget.y + 1000.0 * -sind(cameraRot.x); + coasterCameraPos.z = coasterCameraTarget.z + 1000.0 * (cosd(cameraRot.y) * cosd(cameraRot.x)); + MTXRotRad(coasterMtx, 'y', MTXDegToRad(coasterBaseRotY)); + BoardModelMtxSet(mapObjMdlId[MAPOBJ_COASTER], &coasterMtx); + BoardPlayerMtxSet(eventPlayer, &coasterMtx); + BoardModelRotSet(mapObjMdlId[MAPOBJ_COASTER], 0.0f, 0.0f, 0.0f); + BoardPlayerRotSet(eventPlayer, 0.0f, 0.0f, 0.0f); + BoardPlayerExistCheck(eventPlayer, 0); BoardMusStart(1, 0x10, 0x7F, 0); - fn_1_50D4(); - BoardStatusShowSetForce(lbl_1_bss_6B4); - BoardStatusShowSet(lbl_1_bss_6B4, 1); - while (!BoardStatusStopCheck(lbl_1_bss_6B4)) { + CoasterCoinCreate(); + BoardStatusShowSetForce(eventPlayer); + BoardStatusShowSet(eventPlayer, 1); + while (!BoardStatusStopCheck(eventPlayer)) { HuPrcVSleep(); } - temp_r19 = HuAudFXPlay(0x40C); - fn_1_4774(); + seNo = HuAudFXPlay(0x40C); + CoasterWinCreate(); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); - lbl_1_bss_6B0 = 1; + coasterType = 1; HuAudFXPlay(0x413); while (TRUE) { - fn_1_1990(); - fn_1_3350(); - fn_1_276C(); - BoardModelPosSetV(lbl_1_bss_6C4[0], &lbl_1_bss_654); - BoardPlayerPosSetV(lbl_1_bss_6B4, &lbl_1_bss_654); - if (BoardPlayerSizeGet(lbl_1_bss_6B4) != 1) { - MTXTrans(sp48, 0.0f, 30.0f, 0.0f); + CoasterPathUpdate(); + CoasterPathMotUpdate(); + CoasterRotUpdate(); + BoardModelPosSetV(mapObjMdlId[MAPOBJ_COASTER], &coasterPos); + BoardPlayerPosSetV(eventPlayer, &coasterPos); + if (BoardPlayerSizeGet(eventPlayer) != 1) { + MTXTrans(playerMtx, 0.0f, 30.0f, 0.0f); } else { - MTXTrans(sp48, 0.0f, 400.0f, 250.0f); + MTXTrans(playerMtx, 0.0f, 400.0f, 250.0f); } - BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); - MTXConcat(lbl_1_bss_678, sp48, sp48); - BoardPlayerMtxSet(lbl_1_bss_6B4, &sp48); - if (lbl_1_bss_0->unk00_field0 == 0) { - var_f29 = -lbl_1_bss_670; + BoardModelMtxSet(mapObjMdlId[MAPOBJ_COASTER], &coasterMtx); + MTXConcat(coasterMtx, playerMtx, playerMtx); + BoardPlayerMtxSet(eventPlayer, &playerMtx); + if (boardWork->hostSide == 0) { + coasterMotSpeed = -coasterSpeed; } else { - var_f29 = lbl_1_bss_670; + coasterMotSpeed = coasterSpeed; } - BoardModelMotionSpeedSet(lbl_1_bss_6AE, var_f29); - if (lbl_1_bss_0->unk00_field0 == 0) { - if (BoardModelMotionTimeGet(lbl_1_bss_6AE) <= 0.0f) { + BoardModelMotionSpeedSet(coasterPathMdlId, coasterMotSpeed); + if (boardWork->hostSide == 0) { + if (BoardModelMotionTimeGet(coasterPathMdlId) <= 0.0f) { break; } } else { - if (BoardModelMotionTimeGet(lbl_1_bss_6AE) >= lbl_1_bss_644) { + if (BoardModelMotionTimeGet(coasterPathMdlId) >= coasterMaxTime) { break; } } HuPrcVSleep(); } - MTXIdentity(lbl_1_bss_678); - fn_1_4864(); - HuAudFXStop(temp_r19); - fn_1_1EE4(); - fn_1_98EC(); - if (BoardPlayerSizeGet(lbl_1_bss_6B4) == 1) { - MTXTrans(sp48, 0.0f, 400.0f, 250.0f); + MTXIdentity(coasterMtx); + CoasterWinKill(); + HuAudFXStop(seNo); + CoasterCameraObjKill(); + CoasterEffKill(); + if (BoardPlayerSizeGet(eventPlayer) == 1) { + MTXTrans(playerMtx, 0.0f, 400.0f, 250.0f); } else { - MTXTrans(sp48, 0.0f, 30.0f, 0.0f); + MTXTrans(playerMtx, 0.0f, 30.0f, 0.0f); } - BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); - BoardPlayerMtxSet(lbl_1_bss_6B4, &sp48); - lbl_1_bss_660.x = lbl_1_bss_660.z = 0.0f; + BoardModelMtxSet(mapObjMdlId[MAPOBJ_COASTER], &coasterMtx); + BoardPlayerMtxSet(eventPlayer, &playerMtx); + coasterRot.x = coasterRot.z = 0.0f; BoardAudSeqFadeOut(1, 1000); WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); HuAudFXPlay(0x401); - temp_f28 = (-lbl_1_bss_63C - lbl_1_bss_660.y) / 30.0f; + coasterRotSpeed = (-coasterBaseRotY - coasterRot.y) / 30.0f; for (i = 0; i < 30; i++) { - BoardModelRotSetV(lbl_1_bss_6C4[0], &lbl_1_bss_660); - BoardPlayerRotSetV(lbl_1_bss_6B4, &lbl_1_bss_660); - lbl_1_bss_660.y += temp_f28 * var_f30; + BoardModelRotSetV(mapObjMdlId[MAPOBJ_COASTER], &coasterRot); + BoardPlayerRotSetV(eventPlayer, &coasterRot); + coasterRot.y += coasterRotSpeed * coasterRotDir; HuPrcVSleep(); } - lbl_1_bss_660.y = -lbl_1_bss_63C; - BoardModelRotSetV(lbl_1_bss_6C4[0], &lbl_1_bss_660); - BoardPlayerRotSetV(lbl_1_bss_6B4, &lbl_1_bss_660); - BoardStatusShowSet(lbl_1_bss_6B4, 0); + coasterRot.y = -coasterBaseRotY; + BoardModelRotSetV(mapObjMdlId[MAPOBJ_COASTER], &coasterRot); + BoardPlayerRotSetV(eventPlayer, &coasterRot); + BoardStatusShowSet(eventPlayer, 0); BoardSpaceAttrReset(0, 1); - fn_1_53B8(); + CoasterCoinKill(); BoardCameraMoveSet(0); - BoardCameraTargetPlayerSet(lbl_1_bss_6B4); + BoardCameraTargetPlayerSet(eventPlayer); BoardCameraViewSet(1); BoardCameraMotionWait(); do { HuPrcVSleep(); } while (WipeStatGet() != 0); - BoardPlayerIdleSet(lbl_1_bss_6B4); - BoardPlayerMtxSet(lbl_1_bss_6B4, &lbl_1_bss_678); + BoardPlayerIdleSet(eventPlayer); + BoardPlayerMtxSet(eventPlayer, &coasterMtx); BoardCameraPosCalcFuncSet(NULL); - BoardPlayerExistCheck(lbl_1_bss_6B4, 1); - BoardSpacePosGet(0, var_r25, &sp3C); - GWPlayer[lbl_1_bss_6B4].space_curr = var_r25; - BoardPlayerPosSetV(lbl_1_bss_6B4, &sp3C); - fn_1_35B4(lbl_1_bss_6B4); - lbl_1_bss_6B2 = 1; + BoardPlayerExistCheck(eventPlayer, 1); + BoardSpacePosGet(0, endSpace, &spacePos); + GWPlayer[eventPlayer].space_curr = endSpace; + BoardPlayerPosSetV(eventPlayer, &spacePos); + CoasterMotKill(eventPlayer); + coasterDoneF = 1; } -static void fn_1_45F4(void) +static void CoasterExit(void) { - if (lbl_1_bss_6B2 != 0) { - if (lbl_1_bss_0->unk00_field0 == 0) { - lbl_1_bss_0->unk00_field0 = 1; + if (coasterDoneF != 0) { + if (boardWork->hostSide == 0) { + boardWork->hostSide = 1; } else { - lbl_1_bss_0->unk00_field0 = 0; + boardWork->hostSide = 0; } - lbl_1_bss_6B2 = 0; - fn_1_1670(); + coasterDoneF = 0; + UpdateHostDisp(); } - fn_1_87AC(); - while (lbl_1_bss_C) { + CoasterPlayerManKill(); + while (coasterPlayerManObj) { HuPrcVSleep(); } BoardAudSeqPause(0, 0, 1000); @@ -1259,50 +1255,50 @@ static void fn_1_45F4(void) BoardStatusShowSetAll(1); } -static void fn_1_4774(void) +static void CoasterWinCreate(void) { - float sp8[2]; - float var_f31; - float var_f30; + float winSize[2]; + float winX; + float winY; - HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(13, 5)); - var_f31 = -10000.0f; - var_f30 = 352.0f; - lbl_1_data_580 = HuWinCreate(var_f31, var_f30, sp8[0], sp8[1], 0); - HuWinBGTPLvlSet(lbl_1_data_580, 0.0f); - HuWinMesSpeedSet(lbl_1_data_580, 0); - HuWinMesSet(lbl_1_data_580, MAKE_MESSID(13, 5)); + HuWinMesMaxSizeGet(1, winSize, MAKE_MESSID(13, 5)); + winX = -10000.0f; + winY = 352.0f; + coasterWinId = HuWinCreate(winX, winY, winSize[0], winSize[1], 0); + HuWinBGTPLvlSet(coasterWinId, 0.0f); + HuWinMesSpeedSet(coasterWinId, 0); + HuWinMesSet(coasterWinId, MAKE_MESSID(13, 5)); } -static void fn_1_4864(void) +static void CoasterWinKill(void) { - if (lbl_1_data_580 != -1) { - HuWinKill(lbl_1_data_580); - lbl_1_data_580 = -1; + if (coasterWinId != -1) { + HuWinKill(coasterWinId); + coasterWinId = -1; } } -static s32 fn_1_48B4(void) +static s32 CoasterHostExec(void) { - Vec sp20; - Vec sp14; - Vec sp8; - float var_f31; - u32 var_r31; + Vec startPos; + Vec endPos; + Vec dir; + float angle; + u32 mess; s32 i; - s32 temp_r28; - s32 temp_r30; + s32 spaceEnd; + s32 spaceStart; - var_r31 = 0; - lbl_1_bss_6B0 = 0; - lbl_1_bss_6B1 = 0; - lbl_1_bss_6B2 = 0; - lbl_1_bss_6B4 = GWSystem.player_curr; - temp_r30 = GWPlayer[lbl_1_bss_6B4].space_curr; - BoardPlayerMotionShiftSet(lbl_1_bss_6B4, 1, 0.0f, 14.0f, HU3D_MOTATTR_LOOP); + mess = 0; + coasterType = 0; + coasterLandF = 0; + coasterDoneF = 0; + eventPlayer = GWSystem.player_curr; + spaceStart = GWPlayer[eventPlayer].space_curr; + BoardPlayerMotionShiftSet(eventPlayer, 1, 0.0f, 14.0f, HU3D_MOTATTR_LOOP); BoardWinCreateChoice(0, MAKE_MESSID(13, 0), -1, 0); - if (GWPlayer[lbl_1_bss_6B4].com) { - fn_1_9D00(lbl_1_bss_6B4); + if (GWPlayer[eventPlayer].com) { + CoasterHostComKeySet(eventPlayer); } BoardWinWait(); if (BoardWinChoiceGet() != 0) { @@ -1310,23 +1306,23 @@ static s32 fn_1_48B4(void) } BoardWinCreate(2, 0xD0006, 0); BoardWinWait(); - temp_r28 = BoardSpaceLinkFlagSearch(0, temp_r30, 0x02000000); - BoardSpacePosGet(0, temp_r30, &sp20); - BoardSpacePosGet(0, temp_r28, &sp14); - VECSubtract(&sp14, &sp20, &sp8); - VECNormalize(&sp8, &sp8); - var_f31 = atan2d(-sp8.x, -sp8.z); - BoardPlayerRotSet(lbl_1_bss_6B4, 0.0f, var_f31, 0.0f); - BoardPlayerMoveBetween(lbl_1_bss_6B4, temp_r30, temp_r28); - while (GWPlayer[lbl_1_bss_6B4].moving) { + spaceEnd = BoardSpaceLinkFlagSearch(0, spaceStart, 0x02000000); + BoardSpacePosGet(0, spaceStart, &startPos); + BoardSpacePosGet(0, spaceEnd, &endPos); + VECSubtract(&endPos, &startPos, &dir); + VECNormalize(&dir, &dir); + angle = atan2d(-dir.x, -dir.z); + BoardPlayerRotSet(eventPlayer, 0.0f, angle, 0.0f); + BoardPlayerMoveBetween(eventPlayer, spaceStart, spaceEnd); + while (GWPlayer[eventPlayer].moving) { HuPrcVSleep(); } - BoardPlayerIdleSet(lbl_1_bss_6B4); + BoardPlayerIdleSet(eventPlayer); while (TRUE) { BoardWinCreateChoice(1, MAKE_MESSID(13, 1), 0, 0); BoardWinAttrSet(0x10); - if (GWPlayer[lbl_1_bss_6B4].com) { - if (BoardPlayerCoinsGet(lbl_1_bss_6B4) >= 5) { + if (GWPlayer[eventPlayer].com) { + if (BoardPlayerCoinsGet(eventPlayer) >= 5) { BoardComKeySetUp(); } else { @@ -1335,19 +1331,19 @@ static s32 fn_1_48B4(void) } BoardWinWait(); if (BoardWinChoiceGet() == 1) { - var_r31 = MAKE_MESSID(13, 3); + mess = MAKE_MESSID(13, 3); break; } if (BoardWinChoiceGet() == 2) { - BoardViewMapExec(lbl_1_bss_6B4); + BoardViewMapExec(eventPlayer); continue; } - if (BoardPlayerCoinsGet(lbl_1_bss_6B4) < 5) { - var_r31 = MAKE_MESSID(13, 4); + if (BoardPlayerCoinsGet(eventPlayer) < 5) { + mess = MAKE_MESSID(13, 4); break; } for (i = 0; i < 5; i++) { - BoardPlayerCoinsAdd(lbl_1_bss_6B4, -1); + BoardPlayerCoinsAdd(eventPlayer, -1); HuAudFXPlay(0xE); HuPrcSleep(6); } @@ -1363,1122 +1359,1118 @@ static s32 fn_1_48B4(void) while (WipeStatGet() != 0) { HuPrcVSleep(); } - fn_1_852C(); - return 1; + CoasterPlayerManCreate(); + return TRUE; } - if (var_r31 != 0) { - BoardWinCreate(1, var_r31, 0); + if (mess != 0) { + BoardWinCreate(1, mess, 0); BoardWinWait(); BoardWinKill(); } - BoardCameraTargetPlayerSet(lbl_1_bss_6B4); - VECSubtract(&sp20, &sp14, &sp8); - VECNormalize(&sp8, &sp8); - var_f31 = atan2d(-sp8.x, -sp8.z); - BoardPlayerRotSet(lbl_1_bss_6B4, 0.0f, var_f31, 0.0f); - BoardPlayerMoveBetween(lbl_1_bss_6B4, temp_r28, temp_r30); - while (GWPlayer[lbl_1_bss_6B4].moving) { + BoardCameraTargetPlayerSet(eventPlayer); + VECSubtract(&startPos, &endPos, &dir); + VECNormalize(&dir, &dir); + angle = atan2d(-dir.x, -dir.z); + BoardPlayerRotSet(eventPlayer, 0.0f, angle, 0.0f); + BoardPlayerMoveBetween(eventPlayer, spaceEnd, spaceStart); + while (GWPlayer[eventPlayer].moving) { HuPrcVSleep(); } - return 0; + return FALSE; } -static void fn_1_4E14(void) +static void CoasterMain(void) { - if (fn_1_48B4() != 0) { - fn_1_3624(); - fn_1_45F4(); + if (CoasterHostExec() != 0) { + CoasterExec(); + CoasterExit(); } HuPrcEnd(); } -static void fn_1_4FA8(void) +static void CoasterDestroy(void) { BoardWinKill(); - lbl_1_bss_8 = NULL; + coasterProc = NULL; } -static void fn_1_4FD8(void) +static void CoasterEvent(void) { - lbl_1_bss_6B4 = GWSystem.player_curr; + eventPlayer = GWSystem.player_curr; BoardRollDispSet(0); - if (BoardPlayerSizeGet(lbl_1_bss_6B4) == 2 || GWPlayer[lbl_1_bss_6B4].bowser_suit) { + if (BoardPlayerSizeGet(eventPlayer) == 2 || GWPlayer[eventPlayer].bowser_suit) { return; } - lbl_1_bss_8 = HuPrcChildCreate(fn_1_4E14, 0x2003, 0x2000, 0, boardMainProc); - HuPrcDestructorSet2(lbl_1_bss_8, fn_1_4FA8); - while (lbl_1_bss_8) { + coasterProc = HuPrcChildCreate(CoasterMain, 0x2003, 0x2000, 0, boardMainProc); + HuPrcDestructorSet2(coasterProc, CoasterDestroy); + while (coasterProc) { HuPrcVSleep(); } BoardRollDispSet(1); } -static void fn_1_50D4(void) +static void CoasterCoinCreate(void) { - Vec sp20; - Vec sp14; - Vec sp8; - float temp_f30; - float var_f31; - BoardSpace *temp_r31; - s32 var_r27; - s32 var_r26; - s32 var_r29; - s32 var_r28; + Vec pos; + Vec posSpace; + Vec dir; + float radius; + float angle; + BoardSpace *space; + s32 side; + s32 newSide; + s32 coinNum; + s32 spaceId; s32 i; for (i = 0; i < 24; i++) { - lbl_1_bss_5D0[i] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 9), NULL, 0); - BoardModelVisibilitySet(lbl_1_bss_5D0[i], 0); - BoardModelMotionStart(lbl_1_bss_5D0[i], 0, 0x40000001); - lbl_1_bss_600[i] = 0; + coasterCoinMdlId[i] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 9), NULL, 0); + BoardModelVisibilitySet(coasterCoinMdlId[i], 0); + BoardModelMotionStart(coasterCoinMdlId[i], 0, HU3D_MOTATTR_LOOP); + coasterCoinF[i] = 0; } - temp_f30 = 180.0f; - var_r28 = BoardSpaceFlagPosGet(1, 0x2000, &sp20); - var_r27 = BoardRand() & 1; - var_r29 = i = 0; + radius = 180.0f; + spaceId = BoardSpaceFlagPosGet(1, 0x2000, &pos); + side = BoardRand() & 1; + coinNum = i = 0; while (i < 24) { - temp_r31 = BoardSpaceGet(1, var_r28); - var_r28 = temp_r31->link[0]; - if (var_r28 == -1 || temp_r31->link_cnt == 0) { + space = BoardSpaceGet(1, spaceId); + spaceId = space->link[0]; + if (spaceId == -1 || space->link_cnt == 0) { break; } - if (!(temp_r31->flag & 0x80)) { - sp14 = temp_r31->pos; + if (!(space->flag & 0x80)) { + posSpace = space->pos; } else { - if (var_r29 >= 3) { + if (coinNum >= 3) { if (BoardRandFloat() < 0.5f) { - var_r26 = 1; + newSide = 1; } else { - var_r26 = 0; + newSide = 0; } - var_r27 = var_r26; - var_r29 = 0; + side = newSide; + coinNum = 0; } - VECSubtract(&sp14, &temp_r31->pos, &sp8); - VECNormalize(&sp8, &sp8); - var_f31 = atan2d(sp8.z, sp8.x); - if (var_r27 != 0) { - var_f31 += 180.0f; + VECSubtract(&posSpace, &space->pos, &dir); + VECNormalize(&dir, &dir); + angle = atan2d(dir.z, dir.x); + if (side != 0) { + angle += 180.0f; } - sp20.x = temp_r31->pos.x + temp_f30 * sind(var_f31); - sp20.y = temp_r31->pos.y + 80.0f; - sp20.z = temp_r31->pos.z + temp_f30 * cosd(var_f31); - BoardModelPosSetV(lbl_1_bss_5D0[i], &sp20); - BoardModelVisibilitySet(lbl_1_bss_5D0[i], 1); - sp14 = temp_r31->pos; + pos.x = space->pos.x + radius * sind(angle); + pos.y = space->pos.y + 80.0f; + pos.z = space->pos.z + radius * cosd(angle); + BoardModelPosSetV(coasterCoinMdlId[i], &pos); + BoardModelVisibilitySet(coasterCoinMdlId[i], 1); + posSpace = space->pos; i++; - var_r29++; + coinNum++; } } } -static void fn_1_53B8(void) +static void CoasterCoinKill(void) { s32 i; for (i = 0; i < 24; i++) { - if (lbl_1_bss_5D0[i] != -1) { - BoardModelKill(lbl_1_bss_5D0[i]); - lbl_1_bss_5D0[i] = -1; + if (coasterCoinMdlId[i] != -1) { + BoardModelKill(coasterCoinMdlId[i]); + coasterCoinMdlId[i] = -1; } } } -static s32 lbl_1_data_5D4 = -1; -static s32 lbl_1_data_5D8 = -1; +static s32 cupMoveSeNo = -1; +static s32 decaStompSeNo = -1; -static s16 lbl_1_data_5DC[2][4] = { { 24, 25, 26, 27 }, { 29, 30, 31, 32 } }; +static s16 cupMapObj[2][4] = { + { MAPOBJ_CUPR1, MAPOBJ_CUPR2, MAPOBJ_CUPR3, MAPOBJ_CUPR_ARROW }, + { MAPOBJ_CUPL1, MAPOBJ_CUPL2, MAPOBJ_CUPL3, MAPOBJ_CUPL_ARROW } +}; -static char *lbl_1_data_604[] = { "chara1", "chara2", "chara3" }; +static char *cupHookTbl[] = { "chara1", "chara2", "chara3" }; -static float lbl_1_data_610[2][2] = { { 90.0f, 0.0f }, { 0.0f, 270.0f } }; +static float cupArrowRot[2][2] = { { 90.0f, 0.0f }, { 0.0f, 270.0f } }; -static void fn_1_543C(void) +static void CupInit(void) { - float var_f31; - s16 temp_r28; - s16 temp_r29; + float rotY; + s16 mdlIdDish; + s16 mdlId; s32 i; s32 j; - char *sp10[] = { "cup1", "cup2", "cup3", "ya1" }; - s32 sp8[] = { 23, 28 }; + char *hookName[] = { "cup1", "cup2", "cup3", "ya1" }; + s32 dishMapObj[] = { MAPOBJ_CUPR_DISH, MAPOBJ_CUPL_DISH }; for (i = 0; i < 2; i++) { - temp_r28 = lbl_1_bss_6C4[sp8[i]]; - BoardModelMotionStart(temp_r28, 0, 0x40000001); - BoardModelExistDupe(temp_r28, 0); + mdlIdDish = mapObjMdlId[dishMapObj[i]]; + BoardModelMotionStart(mdlIdDish, 0, HU3D_MOTATTR_LOOP); + BoardModelExistDupe(mdlIdDish, 0); for (j = 0; j < 4; j++) { - temp_r29 = lbl_1_bss_6C4[lbl_1_data_5DC[i][j]]; - BoardModelExistDupe(temp_r29, 1); - BoardModelHookSet(temp_r28, sp10[j], temp_r29); - BoardModelMotionStart(temp_r29, 0, 0x40000001); - BoardModelRotSet(temp_r29, 0.0f, 360.0f * BoardRandFloat(), 0.0f); + mdlId = mapObjMdlId[cupMapObj[i][j]]; + BoardModelExistDupe(mdlId, 1); + BoardModelHookSet(mdlIdDish, hookName[j], mdlId); + BoardModelMotionStart(mdlId, 0, HU3D_MOTATTR_LOOP); + BoardModelRotSet(mdlId, 0.0f, 360.0f * BoardRandFloat(), 0.0f); } } - if (lbl_1_bss_0->unk01[0] != 0) { - var_f31 = 0.0f; + if (boardWork->cupDir[0] != 0) { + rotY = 0.0f; } else { - var_f31 = 90.0f; + rotY = 90.0f; } - BoardModelRotSet(lbl_1_bss_6C4[27], 0.0f, var_f31, 0.0f); - if (lbl_1_bss_0->unk01[1] != 0) { - var_f31 = -90.0f; + BoardModelRotSet(mapObjMdlId[MAPOBJ_CUPR_ARROW], 0.0f, rotY, 0.0f); + if (boardWork->cupDir[1] != 0) { + rotY = -90.0f; } else { - var_f31 = 0.0f; + rotY = 0.0f; } - BoardModelRotSet(lbl_1_bss_6C4[32], 0.0f, var_f31, 0.0f); + BoardModelRotSet(mapObjMdlId[MAPOBJ_CUPL_ARROW], 0.0f, rotY, 0.0f); } -static void fn_1_5694(s32 arg0) +static void CupMotOnSet(s32 stopF) { - s16 temp_r29; - s16 temp_r30; + s16 dishMdlId; + s16 cupMdlId; s16 i; - s32 spC[] = { 23, 28 }; + s32 dishMapObj[] = { MAPOBJ_CUPR_DISH, MAPOBJ_CUPL_DISH }; - temp_r29 = lbl_1_bss_6C4[spC[lbl_1_bss_29]]; - if (arg0 != 0) { - BoardModelMotionSpeedSet(temp_r29, 1.0f); - BoardModelAttrReset(temp_r29, 0x40000002); + dishMdlId = mapObjMdlId[dishMapObj[cupSide]]; + if (stopF != 0) { + BoardModelMotionSpeedSet(dishMdlId, 1.0f); + BoardModelAttrReset(dishMdlId, HU3D_MOTATTR_PAUSE); for (i = 0; i < 3; i++) { - temp_r30 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][i]]; - BoardModelMotionSpeedSet(temp_r30, 1.0f); - BoardModelAttrReset(temp_r30, 0x40000002); + cupMdlId = mapObjMdlId[cupMapObj[cupSide][i]]; + BoardModelMotionSpeedSet(cupMdlId, 1.0f); + BoardModelAttrReset(cupMdlId, HU3D_MOTATTR_PAUSE); } } else { - BoardModelMotionSpeedSet(temp_r29, 0.0f); - BoardModelAttrSet(temp_r29, 0x40000002); + BoardModelMotionSpeedSet(dishMdlId, 0.0f); + BoardModelAttrSet(dishMdlId, HU3D_MOTATTR_PAUSE); for (i = 0; i < 3; i++) { - temp_r30 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][i]]; - BoardModelMotionSpeedSet(temp_r30, 0.0f); - BoardModelAttrSet(temp_r30, 0x40000002); + cupMdlId = mapObjMdlId[cupMapObj[cupSide][i]]; + BoardModelMotionSpeedSet(cupMdlId, 0.0f); + BoardModelAttrSet(cupMdlId, HU3D_MOTATTR_PAUSE); } } } -static void fn_1_586C(s32 arg0, s32 arg1) +static void CupEvent(s32 side, s32 spaceStart) { - lbl_1_bss_29 = arg0; - lbl_1_bss_26 = arg1; + cupSide = side; + cupSpaceStart = spaceStart; BoardRollDispSet(0); - lbl_1_bss_14 = HuPrcChildCreate(fn_1_592C, 0x2003, 0x2000, 0, boardMainProc); - HuPrcDestructorSet2(lbl_1_bss_14, fn_1_5B2C); - while (lbl_1_bss_14) { + cupProc = HuPrcChildCreate(CupMain, 0x2003, 0x2000, 0, boardMainProc); + HuPrcDestructorSet2(cupProc, CupDestroy); + while (cupProc) { HuPrcVSleep(); } BoardRollDispSet(1); } -static void fn_1_592C(void) +static void CupMain(void) { - s16 temp_r30; - s16 var_r28; + s16 dishMdlId; - lbl_1_data_5D4 = -1; - lbl_1_data_5D8 = -1; + cupMoveSeNo = -1; + decaStompSeNo = -1; BoardPlayerIdleSet(GWSystem.player_curr); - if (lbl_1_bss_29 == 0) { - var_r28 = lbl_1_bss_6C4[23]; + if (cupSide == 0) { + dishMdlId = mapObjMdlId[MAPOBJ_CUPR_DISH]; } else { - var_r28 = lbl_1_bss_6C4[28]; + dishMdlId = mapObjMdlId[MAPOBJ_CUPL_DISH]; } - BoardCameraTargetModelSet(var_r28); + BoardCameraTargetModelSet(dishMdlId); BoardCameraOffsetSet(0.0f, 0.0f, 0.0f); - fn_1_5D08(); - while (!fn_1_5CD0()) { + CupObjCreate(); + while (!CupObjCheck()) { HuPrcVSleep(); } - fn_1_5B40(); - fn_1_5694(1); + CupExec(); + CupMotOnSet(1); BoardCameraTargetPlayerSet(GWSystem.player_curr); BoardCameraViewSet(1); BoardCameraMotionWait(); HuPrcEnd(); } -static void fn_1_5B2C(void) +static void CupDestroy(void) { - lbl_1_bss_14 = NULL; + cupProc = NULL; } -static void fn_1_5B40(void) +static void CupExec(void) { - s16 spC[] = { 27, 32 }; - s16 temp_r30; - s32 temp_r31; - float sp8; - float temp_f31; + s16 cupArrowMapObj[] = { MAPOBJ_CUPR_ARROW, MAPOBJ_CUPL_ARROW }; + s16 cupArrowMdlId; + s32 cupDir; + float rotY; + float rotYNew; - temp_r31 = lbl_1_bss_0->unk01[lbl_1_bss_29]; - lbl_1_bss_0->unk01[lbl_1_bss_29] ^= 1; - temp_r30 = lbl_1_bss_6C4[spC[lbl_1_bss_29]]; - sp8 = lbl_1_data_610[lbl_1_bss_29][temp_r31]; - temp_f31 = lbl_1_data_610[lbl_1_bss_29][temp_r31 ^ 1]; + cupDir = boardWork->cupDir[cupSide]; + boardWork->cupDir[cupSide] ^= 1; + cupArrowMdlId = mapObjMdlId[cupArrowMapObj[cupSide]]; + rotY = cupArrowRot[cupSide][cupDir]; + rotYNew = cupArrowRot[cupSide][cupDir ^ 1]; HuAudFXPlay(0x403); while (TRUE) { HuPrcVSleep(); - if (BoardDAngleCalcRange(&sp8, temp_f31, 3.0f) != 0) { + if (BoardDAngleCalcRange(&rotY, rotYNew, 3.0f) != 0) { break; } - BoardModelRotSet(temp_r30, 0.0f, sp8, 0.0f); + BoardModelRotSet(cupArrowMdlId, 0.0f, rotY, 0.0f); } } -static BOOL fn_1_5CD0(void) +static BOOL CupObjCheck(void) { - return lbl_1_bss_18 ? FALSE : TRUE; + return cupObj ? FALSE : TRUE; } -static void fn_1_5D08(void) +static void CupObjCreate(void) { - Bss18Work *temp_r31; - float var_f30; - float var_f31; - s16 var_r28; - s16 var_r25; + CupObjWork *work; + float time; + float speed; + s16 dishMdlId; + s16 cupMdlId; s32 i; - if (lbl_1_bss_29 == 0) { - var_r28 = lbl_1_bss_6C4[23]; + if (cupSide == 0) { + dishMdlId = mapObjMdlId[MAPOBJ_CUPR_DISH]; } else { - var_r28 = lbl_1_bss_6C4[28]; + dishMdlId = mapObjMdlId[MAPOBJ_CUPL_DISH]; } while (TRUE) { - var_f30 = BoardModelMotionTimeGet(var_r28); - if (var_f30 >= 209.0f && var_f30 <= 211.0f) { + time = BoardModelMotionTimeGet(dishMdlId); + if (time >= 209.0f && time <= 211.0f) { break; } - if (var_f30 >= 129.0f && var_f30 <= 131.0f) { + if (time >= 129.0f && time <= 131.0f) { break; } - if (var_f30 >= 49.0f && var_f30 <= 51.0f) { + if (time >= 49.0f && time <= 51.0f) { break; } HuPrcVSleep(); } - var_f31 = 1.0f; - while (var_f31 > 0.01f) { - var_f31 *= 0.9f; - if (var_f31 <= 0.01f) { - var_f31 = 0.0f; + speed = 1.0f; + while (speed > 0.01f) { + speed *= 0.9f; + if (speed <= 0.01f) { + speed = 0.0f; } - BoardModelMotionSpeedSet(var_r28, var_f31); + BoardModelMotionSpeedSet(dishMdlId, speed); for (i = 0; i < 3; i++) { - var_r25 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][i]]; - BoardModelMotionSpeedSet(var_r25, var_f31); + cupMdlId = mapObjMdlId[cupMapObj[cupSide][i]]; + BoardModelMotionSpeedSet(cupMdlId, speed); } HuPrcVSleep(); } - fn_1_5694(0); - lbl_1_bss_18 = omAddObjEx(boardObjMan, 0x103, 0, 0, -1, fn_1_6098); - temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_18, Bss18Work); - temp_r31->unk00_field0 = 0; - temp_r31->unk01 = 0; - temp_r31->unk02 = 0; - temp_r31->unk00_field2 = 0; - temp_r31->unk04 = var_r28; + CupMotOnSet(0); + cupObj = omAddObjEx(boardObjMan, 0x103, 0, 0, -1, CupObjMain); + work = OM_GET_WORK_PTR(cupObj, CupObjWork); + work->killF = 0; + work->time = 0; + work->delay = 0; + work->stopF = 0; + work->dishMdlId = dishMdlId; if (BoardPlayerSizeGet(GWSystem.player_curr) == 2) { - temp_r31->unk00_field3 = 1; + work->decaF = TRUE; } else { - temp_r31->unk00_field3 = 0; + work->decaF = FALSE; } } -static void fn_1_6098(omObjData *arg0) +static void CupObjMain(omObjData *obj) { - Bss18Work *temp_r31 = OM_GET_WORK_PTR(arg0, Bss18Work); - s32 temp_r0; + CupObjWork *work = OM_GET_WORK_PTR(obj, CupObjWork); - if (temp_r31->unk00_field0 != 0 || BoardIsKill()) { - lbl_1_bss_18 = NULL; - omDelObjEx(HuPrcCurrentGet(), arg0); + if (work->killF != 0 || BoardIsKill()) { + cupObj = NULL; + omDelObjEx(HuPrcCurrentGet(), obj); return; } - if (temp_r31->unk02 != 0) { - temp_r31->unk02--; + if (work->delay != 0) { + work->delay--; return; } - switch (temp_r31->unk00_field1) { + switch (work->mode) { case 0: - fn_1_6194(temp_r31, arg0); + CupObjInit(work, obj); break; case 2: - fn_1_63F0(temp_r31, arg0); + CupObjJumpWait(work, obj); break; case 3: - fn_1_6BC0(temp_r31, arg0); + CupObjStop(work, obj); break; case 1: - fn_1_6FB4(temp_r31, arg0); + CupObjRotate(work, obj); break; } } -static void fn_1_6194(Bss18Work *arg0, omObjData *arg1) +static void CupObjInit(CupObjWork *work, omObjData *obj) { - Mtx sp38; - Vec sp2C; - Vec sp20; - Vec sp14; - Vec sp8; + Mtx objMtx; + Vec objPosPrev; + Vec playerPos; + Vec objRot; + Vec objPos; float temp_f31; float var_f30; s32 var_r28; s32 i; - BoardPlayerPosGet(GWSystem.player_curr, &sp20); + BoardPlayerPosGet(GWSystem.player_curr, &playerPos); var_f30 = 1000000.0f; for (i = 0; i < 3; i++) { - Hu3DModelObjPosGet(BoardModelIDGet(arg0->unk04), lbl_1_data_604[i], &sp8); - temp_f31 = VECSquareDistance(&sp8, &sp20); + Hu3DModelObjPosGet(BoardModelIDGet(work->dishMdlId), cupHookTbl[i], &objPos); + temp_f31 = VECSquareDistance(&objPos, &playerPos); if (temp_f31 < var_f30) { var_f30 = temp_f31; - lbl_1_bss_28 = i; - sp2C = sp8; + cupHookNo = i; + objPosPrev = objPos; } } - Hu3DModelObjMtxGet(BoardModelIDGet(arg0->unk04), lbl_1_data_604[lbl_1_bss_28], sp38); - Hu3DMtxRotGet(&sp38, &sp14); - sp14.y = 180.0f; - VECSubtract(&sp2C, &sp20, &sp8); - arg1->trans.x = sp8.x / 25.0f; - arg1->trans.z = sp8.z / 25.0f; + Hu3DModelObjMtxGet(BoardModelIDGet(work->dishMdlId), cupHookTbl[cupHookNo], objMtx); + Hu3DMtxRotGet(&objMtx, &objRot); + objRot.y = 180.0f; + VECSubtract(&objPosPrev, &playerPos, &objPos); + obj->trans.x = objPos.x / 25.0f; + obj->trans.z = objPos.z / 25.0f; var_r28 = BoardPlayerRotYGet(GWSystem.player_curr); - arg1->trans.y = BoardDAngleCalc(sp14.y - var_r28) / 25.0f; - arg1->scale.x = sp2C.x; - arg1->scale.y = sp2C.y; - arg1->scale.z = sp2C.z; + obj->trans.y = BoardDAngleCalc(objRot.y - var_r28) / 25.0f; + obj->scale.x = objPosPrev.x; + obj->scale.y = objPosPrev.y; + obj->scale.z = objPosPrev.z; BoardPlayerMotionShiftSet(GWSystem.player_curr, 4, 15.0f, 5.0f, HU3D_MOTATTR_NONE); - arg0->unk00_field1 = 2; - arg0->unk01 = 0; + work->mode = 2; + work->time = 0; } -static void fn_1_63F0(Bss18Work *arg0, omObjData *arg1) +static void CupObjJumpWait(CupObjWork *work, omObjData *obj) { - Vec sp10; - float temp_f29; - float var_f27; - float var_f28; + Vec pos; + float time; + float rotY; + float scaleY; s16 var_r24; - if (arg0->unk01 >= 55) { + if (work->time >= 55) { BoardPlayerRotSet(GWSystem.player_curr, 0.0f, 0.0f, 0.0f); BoardPlayerIdleSet(GWSystem.player_curr); if (GWPlayer[GWSystem.player_curr].bowser_suit) { - BoardModelHookSet(arg0->unk04, lbl_1_data_604[lbl_1_bss_28], BoardBowserSuitModelGet()); + BoardModelHookSet(work->dishMdlId, cupHookTbl[cupHookNo], BoardBowserSuitModelGet()); } else { - BoardModelHookSet(arg0->unk04, lbl_1_data_604[lbl_1_bss_28], BoardPlayerModelGet(GWSystem.player_curr)); + BoardModelHookSet(work->dishMdlId, cupHookTbl[cupHookNo], BoardPlayerModelGet(GWSystem.player_curr)); } - var_r24 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][lbl_1_bss_28]]; - if (arg0->unk00_field3 != 0) { + var_r24 = mapObjMdlId[cupMapObj[cupSide][cupHookNo]]; + if (work->decaF != 0) { BoardModelScaleSet(var_r24, 1.0f, 0.1f, 1.0f); } - fn_1_5694(1); - lbl_1_data_5D4 = HuAudFXPlay(0x410); - arg0->unk01 = 0; - arg0->unk00_field1 = 1; + CupMotOnSet(1); + cupMoveSeNo = HuAudFXPlay(0x410); + work->time = 0; + work->mode = 1; return; } - if (arg0->unk01 == 25) { - BoardPlayerPosSet(GWSystem.player_curr, arg1->scale.x, arg1->scale.y, arg1->scale.z); + if (work->time == 25) { + BoardPlayerPosSet(GWSystem.player_curr, obj->scale.x, obj->scale.y, obj->scale.z); BoardPlayerMotionShiftSet(GWSystem.player_curr, 5, 0.0f, 8.0f, HU3D_MOTATTR_NONE); } - if (arg0->unk01 < 25) { - OSu8tof32(&arg0->unk01, &temp_f29); - BoardPlayerPosGet(GWSystem.player_curr, &sp10); - sp10.x += arg1->trans.x; - sp10.z += arg1->trans.z; - sp10.y += 15.0f + -0.08166667f * temp_f29 * temp_f29; - if (sp10.y <= arg1->scale.y) { - sp10.y = arg1->scale.y; + if (work->time < 25) { + OSu8tof32(&work->time, &time); + BoardPlayerPosGet(GWSystem.player_curr, &pos); + pos.x += obj->trans.x; + pos.z += obj->trans.z; + pos.y += 15.0f + -0.08166667f * time * time; + if (pos.y <= obj->scale.y) { + pos.y = obj->scale.y; } - var_f27 = arg1->trans.y + BoardPlayerRotYGet(GWSystem.player_curr); - BoardPlayerRotYSet(GWSystem.player_curr, var_f27); - BoardPlayerPosSetV(GWSystem.player_curr, &sp10); - if (arg0->unk01 > 12 && arg0->unk00_field3 != 0) { - if (lbl_1_data_5D8 == -1) { - lbl_1_data_5D8 = HuAudFXPlay(0x411); + rotY = obj->trans.y + BoardPlayerRotYGet(GWSystem.player_curr); + BoardPlayerRotYSet(GWSystem.player_curr, rotY); + BoardPlayerPosSetV(GWSystem.player_curr, &pos); + if (work->time > 12 && work->decaF != 0) { + if (decaStompSeNo == -1) { + decaStompSeNo = HuAudFXPlay(0x411); } - OSu8tof32(&arg0->unk01, &temp_f29); - temp_f29 -= 12.0f; - temp_f29 = 90.0f * (temp_f29 / 12.5f); - var_f28 = cosd(temp_f29); - if (var_f28 < 0.1f) { - var_f28 = 0.1f; + OSu8tof32(&work->time, &time); + time -= 12.0f; + time = 90.0f * (time / 12.5f); + scaleY = cosd(time); + if (scaleY < 0.1f) { + scaleY = 0.1f; } - var_r24 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][lbl_1_bss_28]]; - BoardModelScaleSet(var_r24, 1.0f, var_f28, 1.0f); + var_r24 = mapObjMdlId[cupMapObj[cupSide][cupHookNo]]; + BoardModelScaleSet(var_r24, 1.0f, scaleY, 1.0f); } } - arg0->unk01++; + work->time++; } -static void fn_1_6A14(Bss18Work *arg0, omObjData *arg1) +static void CupObjHookReset(CupObjWork *work, omObjData *obj) { - Vec sp20; - Vec sp14; - Vec sp8; + Vec endPos; + Vec startPos; + Vec diff; - BoardModelHookObjReset(arg0->unk04, lbl_1_data_604[lbl_1_bss_28]); - Hu3DModelObjPosGet(BoardModelIDGet(arg0->unk04), lbl_1_data_604[lbl_1_bss_28], &sp14); - BoardPlayerPosSetV(GWSystem.player_curr, &sp14); - BoardSpacePosGet(0, lbl_1_bss_24, &sp20); - VECSubtract(&sp20, &sp14, &sp8); - arg1->trans.x = sp8.x / 25.0f; - arg1->trans.z = sp8.z / 25.0f; - arg1->scale.x = sp20.x; - arg1->scale.y = sp20.y; - arg1->scale.z = sp20.z; + BoardModelHookObjReset(work->dishMdlId, cupHookTbl[cupHookNo]); + Hu3DModelObjPosGet(BoardModelIDGet(work->dishMdlId), cupHookTbl[cupHookNo], &startPos); + BoardPlayerPosSetV(GWSystem.player_curr, &startPos); + BoardSpacePosGet(0, cupSpaceEnd, &endPos); + VECSubtract(&endPos, &startPos, &diff); + obj->trans.x = diff.x / 25.0f; + obj->trans.z = diff.z / 25.0f; + obj->scale.x = endPos.x; + obj->scale.y = endPos.y; + obj->scale.z = endPos.z; BoardPlayerMotionShiftSet(GWSystem.player_curr, 4, 15.0f, 5.0f, HU3D_MOTATTR_NONE); - BoardPlayerRotYSet(GWSystem.player_curr, atan2d(sp8.x, sp8.z)); - arg0->unk00_field1 = 3; - arg0->unk01 = 0; + BoardPlayerRotYSet(GWSystem.player_curr, atan2d(diff.x, diff.z)); + work->mode = 3; + work->time = 0; } -static void fn_1_6BC0(Bss18Work *arg0, omObjData *arg1) +static void CupObjStop(CupObjWork *work, omObjData *obj) { - Vec sp14; - Vec sp8; - float var_f28; - float temp_f29; - s16 var_r27; + Vec pos; + Vec spacePos; + float angle; + float time; + s16 mdlId; - if (arg0->unk01 >= 55) { - BoardSpacePosGet(0, lbl_1_bss_24, &sp8); - GWPlayer[GWSystem.player_curr].space_curr = lbl_1_bss_24; - BoardPlayerPosSetV(GWSystem.player_curr, &sp8); + if (work->time >= 55) { + BoardSpacePosGet(0, cupSpaceEnd, &spacePos); + GWPlayer[GWSystem.player_curr].space_curr = cupSpaceEnd; + BoardPlayerPosSetV(GWSystem.player_curr, &spacePos); BoardPlayerIdleSet(GWSystem.player_curr); - var_r27 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][lbl_1_bss_28]]; - if (arg0->unk00_field3 != 0) { - BoardModelScaleSet(var_r27, 1.0f, 1.0f, 1.0f); + mdlId = mapObjMdlId[cupMapObj[cupSide][cupHookNo]]; + if (work->decaF != 0) { + BoardModelScaleSet(mdlId, 1.0f, 1.0f, 1.0f); } - arg0->unk00_field0 = 1; + work->killF = 1; } - if (arg0->unk01 == 25) { - BoardPlayerPosSet(GWSystem.player_curr, arg1->scale.x, arg1->scale.y, arg1->scale.z); + if (work->time == 25) { + BoardPlayerPosSet(GWSystem.player_curr, obj->scale.x, obj->scale.y, obj->scale.z); BoardPlayerMotionShiftSet(GWSystem.player_curr, 5, 0.0f, 8.0f, HU3D_MOTATTR_NONE); } - if (arg0->unk01 < 25) { - OSu8tof32(&arg0->unk01, &temp_f29); - BoardPlayerPosGet(GWSystem.player_curr, &sp14); - sp14.x += arg1->trans.x; - sp14.z += arg1->trans.z; - sp14.y += 15.0f + -0.08166667f * temp_f29 * temp_f29; - if (sp14.y <= arg1->scale.y) { - sp14.y = arg1->scale.y; + if (work->time < 25) { + OSu8tof32(&work->time, &time); + BoardPlayerPosGet(GWSystem.player_curr, &pos); + pos.x += obj->trans.x; + pos.z += obj->trans.z; + pos.y += 15.0f + -0.08166667f * time * time; + if (pos.y <= obj->scale.y) { + pos.y = obj->scale.y; } - BoardPlayerPosSetV(GWSystem.player_curr, &sp14); - if (arg0->unk01 > 12 && arg0->unk00_field3 != 0) { - OSu8tof32(&arg0->unk01, &temp_f29); - temp_f29 -= 12.0f; - temp_f29 = 90.0f * (temp_f29 / 12.5f); - var_f28 = sind(temp_f29); - if (var_f28 < 0.1f) { - var_f28 = 0.1f; + BoardPlayerPosSetV(GWSystem.player_curr, &pos); + if (work->time > 12 && work->decaF != 0) { + OSu8tof32(&work->time, &time); + time -= 12.0f; + time = 90.0f * (time / 12.5f); + angle = sind(time); + if (angle < 0.1f) { + angle = 0.1f; } - var_r27 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][lbl_1_bss_28]]; - BoardModelScaleSet(var_r27, 1.0f, var_f28, 1.0f); + mdlId = mapObjMdlId[cupMapObj[cupSide][cupHookNo]]; + BoardModelScaleSet(mdlId, 1.0f, angle, 1.0f); } } - arg0->unk01++; + work->time++; } -static void fn_1_6FB4(Bss18Work *arg0, omObjData *arg1) +static void CupObjRotate(CupObjWork *work, omObjData *obj) { - Vec sp40; - Vec sp34; - Vec sp28; - Vec sp1C; - Vec sp10; - float var_f31; - BoardSpace *temp_r29; - s16 var_r22; - u32 temp_r3; - s32 var_r24; + Vec spacePos; + Vec objPos; + + float dist; + BoardSpace *space; + s16 mdlId; + u32 flag; + s32 cupDir; s32 i; - if (arg0->unk00_field2 != 0) { - arg0->unk08 *= 0.9f; - if (arg0->unk08 <= 0.01f) { - arg0->unk08 = 0.0f; - fn_1_5694(0); - if (lbl_1_data_5D4 != -1) { - HuAudFXStop(lbl_1_data_5D4); - lbl_1_data_5D4 = -1; + if (work->stopF != 0) { + work->dishSpeed *= 0.9f; + if (work->dishSpeed <= 0.01f) { + work->dishSpeed = 0.0f; + CupMotOnSet(0); + if (cupMoveSeNo != -1) { + HuAudFXStop(cupMoveSeNo); + cupMoveSeNo = -1; } - fn_1_6A14(arg0, arg1); + CupObjHookReset(work, obj); } - BoardModelMotionSpeedSet(arg0->unk04, arg0->unk08); + BoardModelMotionSpeedSet(work->dishMdlId, work->dishSpeed); for (i = 0; i < 3; i++) { - var_r22 = lbl_1_bss_6C4[lbl_1_data_5DC[lbl_1_bss_29][i]]; - BoardModelMotionSpeedSet(var_r22, arg0->unk08); + mdlId = mapObjMdlId[cupMapObj[cupSide][i]]; + BoardModelMotionSpeedSet(mdlId, work->dishSpeed); } return; } - if (lbl_1_bss_29 == 0) { - var_r24 = lbl_1_bss_0->unk01[lbl_1_bss_29] ^ 1; + if (cupSide == 0) { + cupDir = boardWork->cupDir[cupSide] ^ 1; } else { - var_r24 = lbl_1_bss_0->unk01[lbl_1_bss_29]; + cupDir = boardWork->cupDir[cupSide]; } - temp_r29 = BoardSpaceGet(0, lbl_1_bss_26); - lbl_1_bss_24 = -1; - for (i = 0; i < temp_r29->link_cnt; i++) { - if (temp_r29->link[i] != -1) { - temp_r3 = BoardSpaceFlagGet(0, temp_r29->link[i]); - if ((temp_r3 & 0x200) && var_r24 == 0) { - lbl_1_bss_24 = temp_r29->link[i]; + space = BoardSpaceGet(0, cupSpaceStart); + cupSpaceEnd = -1; + for (i = 0; i < space->link_cnt; i++) { + if (space->link[i] != -1) { + flag = BoardSpaceFlagGet(0, space->link[i]); + if ((flag & 0x200) && cupDir == 0) { + cupSpaceEnd = space->link[i]; } - if ((temp_r3 & 0x100) && var_r24 != 0) { - lbl_1_bss_24 = temp_r29->link[i]; + if ((flag & 0x100) && cupDir != 0) { + cupSpaceEnd = space->link[i]; } } } - BoardSpacePosGet(0, lbl_1_bss_24, &sp40); - Hu3DModelObjPosGet(BoardModelIDGet(arg0->unk04), lbl_1_data_604[lbl_1_bss_28], &sp34); - var_f31 = BoardVecDistXZCalc(&sp40, &sp34); - if (var_f31 <= 300.0f) { - arg0->unk00_field2 = 1; - arg0->unk08 = 1.0f; + BoardSpacePosGet(0, cupSpaceEnd, &spacePos); + Hu3DModelObjPosGet(BoardModelIDGet(work->dishMdlId), cupHookTbl[cupHookNo], &objPos); + dist = BoardVecDistXZCalc(&spacePos, &objPos); + if (dist <= 300.0f) { + work->stopF = TRUE; + work->dishSpeed = 1.0f; } } -static void fn_1_7528(s32 arg0, s32 arg1) +static void CupLandEvent(s32 playerNo, s32 spaceId) { - Vec sp30; - Vec sp24; - Vec sp18; - float temp_f31; - float temp_f30; - s16 sp14[] = { 23, 28 }; + Vec spacePos; + Vec cupRPos; + Vec cupLPos; + float cupRDist; + float cupLDist; + s16 sp14[] = { MAPOBJ_CUPR_DISH, MAPOBJ_CUPL_DISH }; BoardPlayerIdleSet(GWSystem.player_curr); - BoardSpacePosGet(0, arg1, &sp30); - BoardModelPosGet(lbl_1_bss_6C4[23], &sp24); - BoardModelPosGet(lbl_1_bss_6C4[28], &sp18); - temp_f31 = VECDistance(&sp24, &sp30); - temp_f30 = VECDistance(&sp18, &sp30); - if (temp_f31 < temp_f30) { - lbl_1_bss_29 = 0; + BoardSpacePosGet(0, spaceId, &spacePos); + BoardModelPosGet(mapObjMdlId[MAPOBJ_CUPR_DISH], &cupRPos); + BoardModelPosGet(mapObjMdlId[MAPOBJ_CUPL_DISH], &cupLPos); + cupRDist = VECDistance(&cupRPos, &spacePos); + cupLDist = VECDistance(&cupLPos, &spacePos); + if (cupRDist < cupLDist) { + cupSide = 0; } else { - lbl_1_bss_29 = 1; + cupSide = 1; } - BoardCameraTargetModelSet(lbl_1_bss_6C4[sp14[lbl_1_bss_29]]); + BoardCameraTargetModelSet(mapObjMdlId[sp14[cupSide]]); BoardCameraMotionWait(); HuPrcSleep(42); - fn_1_5B40(); + CupExec(); BoardCameraTargetPlayerSet(GWSystem.player_curr); BoardCameraMotionWait(); HuPrcSleep(12); } -static void fn_1_77EC(s32 arg0, s32 arg1) +static void CoasterLandEvent(s32 playerNo, s32 spaceId) { - lbl_1_bss_6B4 = arg0; - lbl_1_bss_6B0 = 0; - lbl_1_bss_8 = HuPrcChildCreate(fn_1_7894, 0x2003, 0x2000, 0, boardMainProc); - HuPrcDestructorSet2(lbl_1_bss_8, fn_1_4FA8); - while (lbl_1_bss_8) { + eventPlayer = playerNo; + coasterType = 0; + coasterProc = HuPrcChildCreate(CoasterLandMain, 0x2003, 0x2000, 0, boardMainProc); + HuPrcDestructorSet2(coasterProc, CoasterDestroy); + while (coasterProc) { HuPrcVSleep(); } } -static void fn_1_7894(void) +static void CoasterLandMain(void) { - lbl_1_bss_6B1 = 1; + coasterLandF = 1; WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 21); while (WipeStatGet() != 0) { HuPrcVSleep(); } - fn_1_7A64(); - fn_1_45F4(); + CoasterLandExec(); + CoasterExit(); HuPrcEnd(); } -static void fn_1_7A64(void) +static void CoasterLandExec(void) { - Vec sp34; - Vec sp28; - Vec sp1C; - Vec sp10; - float var_f30; - s16 var_r20; - s32 temp_r19; - s32 var_r28; + Vec spacePos; + float motSpeed; + s16 spaceId; + s32 seNo; + s32 endF; - var_r28 = 0; - lbl_1_bss_674 = lbl_1_bss_670 = 0.18f; - lbl_1_bss_640 = 0.0f; - lbl_1_bss_660.x = 0.0f; - lbl_1_bss_660.y = 0.0f; - lbl_1_bss_660.z = 0.0f; + endF = 0; + coasterAccel = coasterSpeed = 0.18f; + coasterTime = 0.0f; + coasterRot.x = 0.0f; + coasterRot.y = 0.0f; + coasterRot.z = 0.0f; lbl_1_bss_6A8 = 0.0f; - lbl_1_bss_6B3 = 0; - lbl_1_bss_624.x = 0.0f; - lbl_1_bss_624.z = 0.0f; - lbl_1_bss_624.y = 1.0f; - lbl_1_bss_66C = 0.04f; + coasterLoopF = 0; + coasterCameraUp.x = 0.0f; + coasterCameraUp.z = 0.0f; + coasterCameraUp.y = 1.0f; + coasterCamSpeed = 0.04f; BoardSpaceAttrSet(0, 1); - fn_1_97F4(); - BoardModelMotionStart(lbl_1_bss_6AE, 0, 0); - if (lbl_1_bss_0->unk00_field0 == 0) { - BoardModelMotionTimeSet(lbl_1_bss_6AE, lbl_1_bss_644); - lbl_1_bss_63C = -90.0f; - lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x2000, &sp34); - var_r20 = BoardSpaceFlagSearch(1, 0x1000); + CoasterEffCreate(); + BoardModelMotionStart(coasterPathMdlId, 0, 0); + if (boardWork->hostSide == 0) { + BoardModelMotionTimeSet(coasterPathMdlId, coasterMaxTime); + coasterBaseRotY = -90.0f; + coasterStartSpace = BoardSpaceFlagPosGet(1, 0x2000, &spacePos); + spaceId = BoardSpaceFlagSearch(1, 0x1000); } else { - BoardModelMotionTimeSet(lbl_1_bss_6AE, 0.0f); - lbl_1_bss_63C = 90.0f; - lbl_1_bss_6AC = BoardSpaceFlagPosGet(1, 0x1000, &sp34); - var_r20 = BoardSpaceFlagSearch(1, 0x2000); + BoardModelMotionTimeSet(coasterPathMdlId, 0.0f); + coasterBaseRotY = 90.0f; + coasterStartSpace = BoardSpaceFlagPosGet(1, 0x1000, &spacePos); + spaceId = BoardSpaceFlagSearch(1, 0x2000); } - lbl_1_bss_654 = sp34; - BoardCameraMotionStartEx(lbl_1_bss_6C4[0], NULL, NULL, 2400.0f, -1.0f, 2); - MTXRotRad(lbl_1_bss_678, 'y', MTXDegToRad(lbl_1_bss_63C)); - BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); - BoardModelRotSet(lbl_1_bss_6C4[0], 0.0f, 0.0f, 0.0f); - fn_1_3350(); - lbl_1_bss_648 = lbl_1_bss_654; - lbl_1_bss_618 = lbl_1_bss_654; - lbl_1_bss_630 = lbl_1_bss_654; - fn_1_852C(); - BoardModelMotionSpeedSet(lbl_1_bss_6AE, lbl_1_bss_670); + coasterPos = spacePos; + BoardCameraMotionStartEx(mapObjMdlId[MAPOBJ_COASTER], NULL, NULL, 2400.0f, -1.0f, 2); + MTXRotRad(coasterMtx, 'y', MTXDegToRad(coasterBaseRotY)); + BoardModelMtxSet(mapObjMdlId[MAPOBJ_COASTER], &coasterMtx); + BoardModelRotSet(mapObjMdlId[MAPOBJ_COASTER], 0.0f, 0.0f, 0.0f); + CoasterPathMotUpdate(); + coasterPosOld = coasterPos; + coasterCameraTarget = coasterPos; + coasterCameraPos = coasterPos; + CoasterPlayerManCreate(); + BoardModelMotionSpeedSet(coasterPathMdlId, coasterSpeed); BoardCameraMotionWait(); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, -1); - lbl_1_bss_6B0 = 1; - temp_r19 = HuAudFXPlay(0x412); + coasterType = 1; + seNo = HuAudFXPlay(0x412); while (TRUE) { - fn_1_1990(); - fn_1_3350(); - fn_1_276C(); - BoardModelPosSetV(lbl_1_bss_6C4[0], &lbl_1_bss_654); - BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); - if (lbl_1_bss_0->unk00_field0 == 0) { - var_f30 = -lbl_1_bss_670; + CoasterPathUpdate(); + CoasterPathMotUpdate(); + CoasterRotUpdate(); + BoardModelPosSetV(mapObjMdlId[MAPOBJ_COASTER], &coasterPos); + BoardModelMtxSet(mapObjMdlId[MAPOBJ_COASTER], &coasterMtx); + if (boardWork->hostSide == 0) { + motSpeed = -coasterSpeed; } else { - var_f30 = lbl_1_bss_670; + motSpeed = coasterSpeed; } - BoardModelMotionSpeedSet(lbl_1_bss_6AE, var_f30); - if (lbl_1_bss_0->unk00_field0 == 0) { - if (BoardModelMotionTimeGet(lbl_1_bss_6AE) <= 20.0f && var_r28 == 0) { + BoardModelMotionSpeedSet(coasterPathMdlId, motSpeed); + if (boardWork->hostSide == 0) { + if (BoardModelMotionTimeGet(coasterPathMdlId) <= 20.0f && endF == 0) { WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - var_r28 = 1; + endF = 1; } } else { - if (BoardModelMotionTimeGet(lbl_1_bss_6AE) >= lbl_1_bss_644 - 20.0f && var_r28 == 0) { + if (BoardModelMotionTimeGet(coasterPathMdlId) >= coasterMaxTime - 20.0f && endF == 0) { WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); - var_r28 = 1; + endF = 1; } } - if (var_r28 != 0 && WipeStatGet() == 0) { + if (endF != 0 && WipeStatGet() == 0) { break; } HuPrcVSleep(); } - HuAudFXStop(temp_r19); - fn_1_98EC(); - fn_1_87AC(); - while (lbl_1_bss_C) { + HuAudFXStop(seNo); + CoasterEffKill(); + CoasterPlayerManKill(); + while (coasterPlayerManObj) { HuPrcVSleep(); } - MTXIdentity(lbl_1_bss_678); - BoardModelMtxSet(lbl_1_bss_6C4[0], &lbl_1_bss_678); - lbl_1_bss_660.x = 0.0f; - lbl_1_bss_660.z = 0.0f; - lbl_1_bss_660.y = -lbl_1_bss_63C; - BoardModelRotSetV(lbl_1_bss_6C4[0], &lbl_1_bss_660); - BoardSpacePosGet(1, var_r20, &sp34); - BoardModelPosSetV(lbl_1_bss_6C4[0], &sp34); + MTXIdentity(coasterMtx); + BoardModelMtxSet(mapObjMdlId[MAPOBJ_COASTER], &coasterMtx); + coasterRot.x = 0.0f; + coasterRot.z = 0.0f; + coasterRot.y = -coasterBaseRotY; + BoardModelRotSetV(mapObjMdlId[MAPOBJ_COASTER], &coasterRot); + BoardSpacePosGet(1, spaceId, &spacePos); + BoardModelPosSetV(mapObjMdlId[MAPOBJ_COASTER], &spacePos); BoardSpaceAttrReset(0, 1); BoardCameraMoveSet(0); - BoardCameraTargetPlayerSet(lbl_1_bss_6B4); + BoardCameraTargetPlayerSet(eventPlayer); BoardCameraViewSet(1); BoardCameraMotionWait(); - lbl_1_bss_6B2 = 1; + coasterDoneF = 1; } -static s8 lbl_1_data_633 = -1; +static s8 coasterChasePlayer = -1; -static void fn_1_852C(void) +static void CoasterPlayerManCreate(void) { - BssCWork *temp_r30; - BssCData *temp_r31; - Vec spC; - float temp_f31; - s16 sp8; - s16 var_r28; + CoasterPlayerManWork *work; + CoasterPlayerWork *workPlayer; + Vec playerPos; + float motTime; + s16 charNo; + s16 spaceId; s16 i; - u32 var_r27; + u32 spaceFlag; - lbl_1_bss_C = omAddObjEx(boardObjMan, 0x103, 0, 0, -1, fn_1_87E0); - temp_r30 = OM_GET_WORK_PTR(lbl_1_bss_C, BssCWork); - temp_r30->unk00_field0 = 0; - temp_r30->unk04 = HuMemDirectMallocNum(HEAP_SYSTEM, 4 * sizeof(BssCData), MEMORY_DEFAULT_NUM); - memset(temp_r30->unk04, 0, 4 * sizeof(BssCData)); - lbl_1_data_633 = -1; - lbl_1_bss_1C = 0; - for (temp_r30->unk01 = i = 0; i < 4; i++) { - temp_r31 = &temp_r30->unk04[temp_r30->unk01]; - var_r28 = GWPlayer[i].space_curr; - sp8 = GWPlayer[i].character; - var_r27 = BoardSpaceFlagGet(0, var_r28); - if (!(var_r27 & 1)) { - temp_r31->unk00 = -1; + coasterPlayerManObj = omAddObjEx(boardObjMan, 0x103, 0, 0, -1, CoasterPlayerManUpdate); + work = OM_GET_WORK_PTR(coasterPlayerManObj, CoasterPlayerManWork); + work->killF = 0; + work->player = HuMemDirectMallocNum(HEAP_SYSTEM, 4 * sizeof(CoasterPlayerWork), MEMORY_DEFAULT_NUM); + memset(work->player, 0, 4 * sizeof(CoasterPlayerWork)); + coasterChasePlayer = -1; + coasterPlayerChaseNum = 0; + for (work->playerNum = i = 0; i < 4; i++) { + workPlayer = &work->player[work->playerNum]; + spaceId = GWPlayer[i].space_curr; + charNo = GWPlayer[i].character; + spaceFlag = BoardSpaceFlagGet(0, spaceId); + if (!(spaceFlag & 1)) { + workPlayer->mode = -1; continue; } - temp_r31->unk00 = 0; - temp_r31->unk01 = i; - temp_r31->unk02 = 0; - BoardPlayerPosGet(temp_r31->unk01, &spC); - temp_r31->unk04 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 10), NULL, 0); - temp_f31 = BoardModelMotionMaxTimeGet(temp_r31->unk04); - BoardModelVisibilitySet(temp_r31->unk04, 0); - fn_1_95F4(temp_r31); - BoardModelMotionStart(temp_r31->unk04, 0, 0); - BoardModelMotionSpeedSet(temp_r31->unk04, 0.0f); - if (lbl_1_bss_0->unk00_field0 == 0) { - temp_r31->unk08 = -0.18f; - BoardModelMotionTimeSet(temp_r31->unk04, temp_f31); + workPlayer->mode = 0; + workPlayer->playerNo = i; + workPlayer->delay = 0; + BoardPlayerPosGet(workPlayer->playerNo, &playerPos); + workPlayer->pathMdlId = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 10), NULL, 0); + motTime = BoardModelMotionMaxTimeGet(workPlayer->pathMdlId); + BoardModelVisibilitySet(workPlayer->pathMdlId, 0); + CoasterPlayerTimeInit(workPlayer); + BoardModelMotionStart(workPlayer->pathMdlId, 0, 0); + BoardModelMotionSpeedSet(workPlayer->pathMdlId, 0.0f); + if (boardWork->hostSide == 0) { + workPlayer->speed = -0.18f; + BoardModelMotionTimeSet(workPlayer->pathMdlId, motTime); } else { - temp_r31->unk08 = 0.18f; - BoardModelMotionTimeSet(temp_r31->unk04, 0.0f); + workPlayer->speed = 0.18f; + BoardModelMotionTimeSet(workPlayer->pathMdlId, 0.0f); } - fn_1_932C(temp_r31); - temp_r30->unk01++; + CoasterPlayerEndSet(workPlayer); + work->playerNum++; } BoardCameraMoveSet(1); - BoardCameraTargetModelSet(lbl_1_bss_6C4[0]); + BoardCameraTargetModelSet(mapObjMdlId[MAPOBJ_COASTER]); } -static void fn_1_87AC(void) +static void CoasterPlayerManKill(void) { - if (lbl_1_bss_C) { - OM_GET_WORK_PTR(lbl_1_bss_C, BssCWork)->unk00_field0 = 1; + if (coasterPlayerManObj) { + OM_GET_WORK_PTR(coasterPlayerManObj, CoasterPlayerManWork)->killF = 1; } } -static void fn_1_87E0(omObjData *arg0) +static void CoasterPlayerManUpdate(omObjData *obj) { - BssCWork *temp_r30 = OM_GET_WORK_PTR(arg0, BssCWork); - BssCData *temp_r31; + CoasterPlayerManWork *work = OM_GET_WORK_PTR(obj, CoasterPlayerManWork); + CoasterPlayerWork *workPlayer; s32 i; - if (temp_r30->unk00_field0 != 0 || BoardIsKill()) { - for (i = 0; i < temp_r30->unk01; i++) { - temp_r31 = &temp_r30->unk04[i]; + if (work->killF != 0 || BoardIsKill()) { + for (i = 0; i < work->playerNum; i++) { + workPlayer = &work->player[i]; } - HuMemDirectFree(temp_r30->unk04); - lbl_1_bss_C = NULL; - omDelObjEx(HuPrcCurrentGet(), arg0); + HuMemDirectFree(work->player); + coasterPlayerManObj = NULL; + omDelObjEx(HuPrcCurrentGet(), obj); return; } - if (lbl_1_bss_6B0 == 0) { + if (coasterType == 0) { return; } - for (i = 0; i < temp_r30->unk01; i++) { - temp_r31 = &temp_r30->unk04[i]; - if (temp_r31->unk02 != 0) { - temp_r31->unk02--; + for (i = 0; i < work->playerNum; i++) { + workPlayer = &work->player[i]; + if (workPlayer->delay != 0) { + workPlayer->delay--; } else { - switch (temp_r31->unk00) { + switch (workPlayer->mode) { case 0: - fn_1_8988(temp_r31, arg0); + CoasterPlayerWait(workPlayer, obj); break; case 1: - fn_1_8A50(temp_r31, arg0); + CoasterPlayerChaseBegin(workPlayer, obj); break; case 2: - fn_1_8B6C(temp_r31, arg0); + CoasterPlayerChasePathSet(workPlayer, obj); break; case 3: - fn_1_8DDC(temp_r31, arg0); + CoasterPlayerChase(workPlayer, obj); break; case 4: - fn_1_918C(temp_r31, arg0); + CoasterPlayerStop(workPlayer, obj); break; case 5: - fn_1_927C(temp_r31, arg0); + CoasterPlayerEnd(workPlayer, obj); break; } } } } -static void fn_1_8988(BssCData *arg0, omObjData *arg1) +static void CoasterPlayerWait(CoasterPlayerWork *work, omObjData *obj) { - Vec sp20; - Vec sp14; - Vec sp8; + Vec mdlCoasterPos; + Vec playerPos; + Vec dir; - if (arg0->unk10 - lbl_1_bss_640 > 900.0f) { + if (work->time - coasterTime > 900.0f) { return; } - BoardModelPosGet(*lbl_1_bss_6C4, &sp20); - BoardPlayerPosGet(arg0->unk01, &sp14); - VECSubtract(&sp20, &sp14, &sp8); - BoardPlayerRotYSet(arg0->unk01, atan2d(sp8.x, sp8.z)); - arg0->unk00 = 1; + BoardModelPosGet(mapObjMdlId[MAPOBJ_COASTER], &mdlCoasterPos); + BoardPlayerPosGet(work->playerNo, &playerPos); + VECSubtract(&mdlCoasterPos, &playerPos, &dir); + BoardPlayerRotYSet(work->playerNo, atan2d(dir.x, dir.z)); + work->mode = 1; } -static s32 lbl_1_data_634[8] = { 0x00000123, 0x00000163, 0x000001A3, 0x000001E3, 0x00000223, 0x00000263, 0x000002A3, 0x000002E3 }; +static s32 coasterChaseSe[8] = { 0x00000123, 0x00000163, 0x000001A3, 0x000001E3, 0x00000223, 0x00000263, 0x000002A3, 0x000002E3 }; -static void fn_1_8A50(BssCData *arg0, omObjData *arg1) +static void CoasterPlayerChaseBegin(CoasterPlayerWork *work, omObjData *obj) { - if (lbl_1_data_633 == -1) { - BoardCameraTargetPlayerSet(arg0->unk01); - lbl_1_data_633 = arg0->unk01; + if (coasterChasePlayer == -1) { + BoardCameraTargetPlayerSet(work->playerNo); + coasterChasePlayer = work->playerNo; } - HuAudFXPlay(lbl_1_data_634[GWPlayer[arg0->unk01].character]); - BoardPlayerMotionStart(arg0->unk01, 9, 0); - BoardPlayerMotionSpeedSet(arg0->unk01, 2.0f); - arg0->unk02 = lbl_1_bss_1C * 3 + 9; - arg0->unk00 = 2; - lbl_1_bss_1C++; - omVibrate(arg0->unk01, 12, 4, 2); + HuAudFXPlay(coasterChaseSe[GWPlayer[work->playerNo].character]); + BoardPlayerMotionStart(work->playerNo, 9, 0); + BoardPlayerMotionSpeedSet(work->playerNo, 2.0f); + work->delay = coasterPlayerChaseNum * 3 + 9; + work->mode = 2; + coasterPlayerChaseNum++; + omVibrate(work->playerNo, 12, 4, 2); } -static void fn_1_8B6C(BssCData *arg0, omObjData *arg1) +static void CoasterPlayerChasePathSet(CoasterPlayerWork *work, omObjData *obj) { - ModelData *temp_r29; - HsfObject *var_r30; - Vec sp20; - Vec sp14; - Vec sp8; - float temp_f30; - float var_f31; - s16 var_r28; + ModelData *modelP; + HsfObject *modelObj; + Vec mdlCoasterPos; + Vec dir; + Vec objPos; + float motTime; + float time; + s16 modelId; - BoardPlayerPosGet(arg0->unk01, &arg0->unk14); - BoardModelPosGet(lbl_1_bss_6C4[0], &sp20); - VECSubtract(&sp20, &arg0->unk14, &sp14); - BoardPlayerRotYSet(arg0->unk01, -atan2d(sp14.x, sp14.z)); - BoardPlayerMotionStart(arg0->unk01, 3, 0x40000001); - BoardPlayerMotionSpeedSet(arg0->unk01, 2.0f); - temp_f30 = BoardModelMotionTimeGet(lbl_1_bss_6AE); - var_r28 = BoardModelIDGet(lbl_1_bss_6AE); - temp_r29 = &Hu3DData[var_r28]; - Hu3DMotionExec(var_r28, temp_r29->unk_08, temp_r29->unk_64, 0); - var_r30 = Hu3DModelObjPtrGet(var_r28, "looppath-cube1"); - sp8.x = var_r30->data.curr.pos.x; - sp8.y = var_r30->data.curr.pos.y; - sp8.z = var_r30->data.curr.pos.z; - var_f31 = lbl_1_bss_640; + BoardPlayerPosGet(work->playerNo, &work->pos); + BoardModelPosGet(mapObjMdlId[MAPOBJ_COASTER], &mdlCoasterPos); + VECSubtract(&mdlCoasterPos, &work->pos, &dir); + BoardPlayerRotYSet(work->playerNo, -atan2d(dir.x, dir.z)); + BoardPlayerMotionStart(work->playerNo, 3, HU3D_MOTATTR_LOOP); + BoardPlayerMotionSpeedSet(work->playerNo, 2.0f); + motTime = BoardModelMotionTimeGet(coasterPathMdlId); + modelId = BoardModelIDGet(coasterPathMdlId); + modelP = &Hu3DData[modelId]; + Hu3DMotionExec(modelId, modelP->unk_08, modelP->unk_64, 0); + modelObj = Hu3DModelObjPtrGet(modelId, "looppath-cube1"); + objPos.x = modelObj->data.curr.pos.x; + objPos.y = modelObj->data.curr.pos.y; + objPos.z = modelObj->data.curr.pos.z; + time = coasterTime; while (TRUE) { - Hu3DMotionExec(var_r28, temp_r29->unk_08, temp_r29->unk_64, 0); - var_r30 = Hu3DModelObjPtrGet(var_r28, "looppath-cube1"); - sp14.x = sp8.x - var_r30->data.curr.pos.x; - sp14.y = sp8.y - var_r30->data.curr.pos.y; - sp14.z = sp8.z - var_r30->data.curr.pos.z; - var_f31 += VECMag(&sp14); - if (var_f31 >= arg0->unk10) { + Hu3DMotionExec(modelId, modelP->unk_08, modelP->unk_64, 0); + modelObj = Hu3DModelObjPtrGet(modelId, "looppath-cube1"); + dir.x = objPos.x - modelObj->data.curr.pos.x; + dir.y = objPos.y - modelObj->data.curr.pos.y; + dir.z = objPos.z - modelObj->data.curr.pos.z; + time += VECMag(&dir); + if (time >= work->time) { break; } - sp8.x = var_r30->data.curr.pos.x; - sp8.y = var_r30->data.curr.pos.y; - sp8.z = var_r30->data.curr.pos.z; - temp_r29->unk_64 += arg0->unk08; + objPos.x = modelObj->data.curr.pos.x; + objPos.y = modelObj->data.curr.pos.y; + objPos.z = modelObj->data.curr.pos.z; + modelP->unk_64 += work->speed; } - BoardModelMotionStart(arg0->unk04, 0, 0); - BoardModelMotionTimeSet(arg0->unk04, temp_r29->unk_64); - BoardModelMotionSpeedSet(arg0->unk04, temp_r29->unk_68); - arg0->unk00 = 3; - BoardModelMotionTimeSet(lbl_1_bss_6AE, temp_f30); + BoardModelMotionStart(work->pathMdlId, 0, 0); + BoardModelMotionTimeSet(work->pathMdlId, modelP->unk_64); + BoardModelMotionSpeedSet(work->pathMdlId, modelP->unk_68); + work->mode = 3; + BoardModelMotionTimeSet(coasterPathMdlId, motTime); } -static void fn_1_8DDC(BssCData *arg0, omObjData *arg1) +static void CoasterPlayerChase(CoasterPlayerWork *work, omObjData *obj) { - ModelData *temp_r29; - HsfObject *var_r30; - Vec *var_r27; - Vec *var_r26; - Vec sp48; - Vec sp3C; - Vec sp30; - Vec sp24; - Vec sp18; - Vec spC; - Mtx sp54; - s16 var_r28; + ModelData *modelP; + HsfObject *modelObj; + Vec *pos; + Vec *target; + Vec up; + Vec rot; + Vec objPos; + Vec diff; + Vec railPos; + Vec spacePos; + Mtx matrix; + s16 modelId; - var_r28 = BoardModelIDGet(arg0->unk04); - temp_r29 = &Hu3DData[var_r28]; - Hu3DMotionExec(var_r28, temp_r29->unk_08, temp_r29->unk_64, 0); - var_r30 = Hu3DModelObjPtrGet(var_r28, "looppath-cube1"); - sp30.x = var_r30->data.curr.pos.x; - sp30.y = var_r30->data.curr.pos.y; - sp30.z = var_r30->data.curr.pos.z; - VECSubtract(&sp30, &arg0->unk14, &sp24); - if (fn_1_94A8(arg0) != 0) { - BoardModelPosGet(lbl_1_bss_6C4[1], &sp18); - VECSubtract(&sp18, &sp30, &sp48); - VECNormalize(&sp48, &sp48); - var_r27 = &arg0->unk14; - var_r26 = &sp30; - BoardMTXCalcLookAt(sp54, var_r26, &sp48, var_r27); - MTXTranspose(sp54, arg0->unk20); + modelId = BoardModelIDGet(work->pathMdlId); + modelP = &Hu3DData[modelId]; + Hu3DMotionExec(modelId, modelP->unk_08, modelP->unk_64, 0); + modelObj = Hu3DModelObjPtrGet(modelId, "looppath-cube1"); + objPos.x = modelObj->data.curr.pos.x; + objPos.y = modelObj->data.curr.pos.y; + objPos.z = modelObj->data.curr.pos.z; + VECSubtract(&objPos, &work->pos, &diff); + if (CoasterPlayerLoopCheck(work) != 0) { + BoardModelPosGet(mapObjMdlId[MAPOBJ_COASTER_RAIL], &railPos); + VECSubtract(&railPos, &objPos, &up); + VECNormalize(&up, &up); + pos = &work->pos; + target = &objPos; + BoardMTXCalcLookAt(matrix, target, &up, pos); + MTXTranspose(matrix, work->matrix); } else { - if (sp24.z != 0.0f || sp24.x != 0.0f) { - sp3C.y = atan2d(sp24.x, sp24.z); - sp3C.x = -atan2d(sp24.y, VECMagXZ(&sp24)); + if (diff.z != 0.0f || diff.x != 0.0f) { + rot.y = atan2d(diff.x, diff.z); + rot.x = -atan2d(diff.y, VECMagXZ(&diff)); } else { - sp3C.x = sp3C.y = 0.0f; + rot.x = rot.y = 0.0f; } - MTXRotRad(sp54, 'x', MTXDegToRad(sp3C.x)); - MTXRotRad(arg0->unk20, 'y', MTXDegToRad(sp3C.y)); - MTXConcat(arg0->unk20, sp54, arg0->unk20); + MTXRotRad(matrix, 'x', MTXDegToRad(rot.x)); + MTXRotRad(work->matrix, 'y', MTXDegToRad(rot.y)); + MTXConcat(work->matrix, matrix, work->matrix); } - BoardPlayerPosSetV(arg0->unk01, &sp30); - BoardPlayerRotSet(arg0->unk01, 0.0f, 0.0f, 0.0f); - BoardPlayerMtxSet(arg0->unk01, &arg0->unk20); - arg0->unk14 = sp30; - BoardSpacePosGet(0, arg0->unk06, &spC); - if (BoardVecMaxDistXZCheck(&spC, &sp30, 200.0f)) { - arg0->unk00 = 4; + BoardPlayerPosSetV(work->playerNo, &objPos); + BoardPlayerRotSet(work->playerNo, 0.0f, 0.0f, 0.0f); + BoardPlayerMtxSet(work->playerNo, &work->matrix); + work->pos = objPos; + BoardSpacePosGet(0, work->endSpace, &spacePos); + if (BoardVecMaxDistXZCheck(&spacePos, &objPos, 200.0f)) { + work->mode = 4; } } -static void fn_1_918C(BssCData *arg0, omObjData *arg1) +static void CoasterPlayerStop(CoasterPlayerWork *work, omObjData *obj) { - Vec sp20; - Vec sp14; - Vec sp8; - s32 var_r30; + Vec spacePos; + Vec playerPos; + Vec dir; + s32 spaceEnd; - MTXIdentity(arg0->unk20); - var_r30 = BoardSpaceLinkFlagSearch(0, arg0->unk06, 0x40); - BoardSpacePosGet(0, var_r30, &sp20); - BoardPlayerPosGet(arg0->unk01, &sp14); - BoardPlayerMtxSet(arg0->unk01, &arg0->unk20); - VECSubtract(&sp20, &sp14, &sp8); - BoardPlayerRotYSet(arg0->unk01, atan2d(-sp8.z, -sp8.x)); - BoardPlayerPosLerpStart(arg0->unk01, &sp14, &sp20, 20); - arg0->unk00 = 5; + MTXIdentity(work->matrix); + spaceEnd = BoardSpaceLinkFlagSearch(0, work->endSpace, 0x40); + BoardSpacePosGet(0, spaceEnd, &spacePos); + BoardPlayerPosGet(work->playerNo, &playerPos); + BoardPlayerMtxSet(work->playerNo, &work->matrix); + VECSubtract(&spacePos, &playerPos, &dir); + BoardPlayerRotYSet(work->playerNo, atan2d(-dir.z, -dir.x)); + BoardPlayerPosLerpStart(work->playerNo, &playerPos, &spacePos, 20); + work->mode = 5; } -static void fn_1_927C(BssCData *arg0, omObjData *arg1) +static void CoasterPlayerEnd(CoasterPlayerWork *work, omObjData *obj) { - s32 temp_r3; + s32 spaceEnd; - if (!GWPlayer[arg0->unk01].moving) { - BoardPlayerIdleSet(arg0->unk01); - temp_r3 = BoardSpaceLinkFlagSearch(0, arg0->unk06, 0x40); - GWPlayer[arg0->unk01].space_curr = temp_r3; - arg0->unk00 = -1; - BoardPlayerMoveAwayStartCurr(temp_r3, 0); + if (!GWPlayer[work->playerNo].moving) { + BoardPlayerIdleSet(work->playerNo); + spaceEnd = BoardSpaceLinkFlagSearch(0, work->endSpace, 0x40); + GWPlayer[work->playerNo].space_curr = spaceEnd; + work->mode = -1; + BoardPlayerMoveAwayStartCurr(spaceEnd, 0); } } -static void fn_1_932C(BssCData *arg0) +static void CoasterPlayerEndSet(CoasterPlayerWork *work) { - BoardSpace *temp_r30; - BoardSpace *var_r26; - Vec sp20[2]; - Vec sp14; - float spC[2]; - s16 sp8[2]; - s32 var_r29; - s32 var_r28; + BoardSpace *space; + BoardSpace *linkSpace; + Vec spacePos[2]; + Vec beginPos; + float spaceDist[2]; + s16 spaceId[2]; + s32 j; + s32 no; s32 i; - for (var_r28 = i = 0; i < BoardSpaceCountGet(0); i++) { - temp_r30 = BoardSpaceGet(0, i + 1); - for (var_r29 = 0; var_r29 < temp_r30->link_cnt; var_r29++) { - var_r26 = BoardSpaceGet(0, temp_r30->link[var_r29]); - if (var_r26->flag & 0x40) { - sp8[var_r28] = i + 1; - BoardSpacePosGet(0, temp_r30->link[var_r29], &sp20[var_r28]); - var_r28++; + for (no = i = 0; i < BoardSpaceCountGet(0); i++) { + space = BoardSpaceGet(0, i + 1); + for (j = 0; j < space->link_cnt; j++) { + linkSpace = BoardSpaceGet(0, space->link[j]); + if (linkSpace->flag & 0x40) { + spaceId[no] = i + 1; + BoardSpacePosGet(0, space->link[j], &spacePos[no]); + no++; } } - if (var_r28 >= 2) { + if (no >= 2) { break; } } - if (lbl_1_bss_0->unk00_field0 == 0) { - BoardSpaceFlagPosGet(0, 0x1000, &sp14); + if (boardWork->hostSide == 0) { + BoardSpaceFlagPosGet(0, 0x1000, &beginPos); } else { - BoardSpaceFlagPosGet(0, 0x2000, &sp14); + BoardSpaceFlagPosGet(0, 0x2000, &beginPos); } for (i = 0; i < 2; i++) { - spC[i] = VECSquareDistance(&sp14, &sp20[i]); + spaceDist[i] = VECSquareDistance(&beginPos, &spacePos[i]); } - if (spC[0] < spC[1]) { - arg0->unk06 = sp8[0]; + if (spaceDist[0] < spaceDist[1]) { + work->endSpace = spaceId[0]; } else { - arg0->unk06 = sp8[1]; + work->endSpace = spaceId[1]; } } -static s32 fn_1_94A8(BssCData *arg0) +static s32 CoasterPlayerLoopCheck(CoasterPlayerWork *arg0) { - Vec sp14; - s16 spC[4]; + Vec playerPos; + s16 linkTbl[4]; float sp8; - s32 var_r30; - s32 var_r29; - s32 var_r26; - BoardSpace *var_r31; - BoardSpace *var_r27; - BoardSpace *var_r28; + s32 spaceId; + s32 spaceIdLink; + s32 spaceIdPrev; + BoardSpace *space; + BoardSpace *spaceLink; + BoardSpace *spacePrev; - BoardPlayerPosGet(arg0->unk01, &sp14); - var_r28 = NULL; - var_r26 = -1; - var_r30 = lbl_1_bss_6AC; + BoardPlayerPosGet(arg0->playerNo, &playerPos); + spacePrev = NULL; + spaceIdPrev = -1; + spaceId = coasterStartSpace; sp8 = 0.0f; while (TRUE) { - var_r31 = BoardSpaceGet(1, var_r30); - if (lbl_1_bss_0->unk00_field0 == 0) { - var_r29 = var_r31->link[0]; + space = BoardSpaceGet(1, spaceId); + if (boardWork->hostSide == 0) { + spaceIdLink = space->link[0]; } else { - BoardSpaceLinkTargetListGet(1, var_r30, spC); - var_r29 = spC[0]; + BoardSpaceLinkTargetListGet(1, spaceId, linkTbl); + spaceIdLink = linkTbl[0]; } - var_r27 = BoardSpaceGet(1, var_r29); - if (!var_r27) { - var_r27 = var_r31; + spaceLink = BoardSpaceGet(1, spaceIdLink); + if (!spaceLink) { + spaceLink = space; break; } - if (BoardVecMaxDistXZCheck(&var_r31->pos, &sp14, 200.0f)) { - if (BoardVecMaxDistXZCheck(&var_r31->pos, &sp14, 100.0f)) { + if (BoardVecMaxDistXZCheck(&space->pos, &playerPos, 200.0f)) { + if (BoardVecMaxDistXZCheck(&space->pos, &playerPos, 100.0f)) { break; } - if (var_r28) { - var_r31 = var_r28; + if (spacePrev) { + space = spacePrev; break; } else { - var_r28 = var_r31; + spacePrev = space; } } - var_r26 = var_r30; - var_r30 = var_r29; + spaceIdPrev = spaceId; + spaceId = spaceIdLink; } - if (var_r31->flag & 8) { + if (space->flag & 8) { return 1; } else { @@ -2486,166 +2478,198 @@ static s32 fn_1_94A8(BssCData *arg0) } } -static void fn_1_95F4(BssCData *arg0) +static void CoasterPlayerTimeInit(CoasterPlayerWork *work) { - HsfObject *var_r30; - ModelData *temp_r29; - Vec sp2C; - Vec sp20; - Vec sp14; - Vec sp8; - float temp_f30; - float var_f31; - s16 var_r28; + HsfObject *modelObj; + ModelData *modelP; + Vec pos; + Vec prevPos; + Vec playerPos; + Vec diff; + float maxTime; + float time; + s16 modelId; - temp_f30 = BoardModelMotionMaxTimeGet(arg0->unk04); - if (lbl_1_bss_0->unk00_field0 == 0) { - BoardModelMotionTimeSet(arg0->unk04, temp_f30); - BoardModelMotionSpeedSet(arg0->unk04, -0.18f); + maxTime = BoardModelMotionMaxTimeGet(work->pathMdlId); + if (boardWork->hostSide == 0) { + BoardModelMotionTimeSet(work->pathMdlId, maxTime); + BoardModelMotionSpeedSet(work->pathMdlId, -0.18f); } else { - BoardModelMotionTimeSet(arg0->unk04, 0.0f); - BoardModelMotionSpeedSet(arg0->unk04, 0.18f); + BoardModelMotionTimeSet(work->pathMdlId, 0.0f); + BoardModelMotionSpeedSet(work->pathMdlId, 0.18f); } - BoardPlayerPosGet(arg0->unk01, &sp14); - var_r28 = BoardModelIDGet(arg0->unk04); - temp_r29 = &Hu3DData[var_r28]; - Hu3DMotionExec(var_r28, temp_r29->unk_08, temp_r29->unk_64, 0); - var_r30 = Hu3DModelObjPtrGet(var_r28, "looppath-cube1"); - sp20.x = var_r30->data.curr.pos.x; - sp20.y = var_r30->data.curr.pos.y; - sp20.z = var_r30->data.curr.pos.z; - var_f31 = 0.0f; + BoardPlayerPosGet(work->playerNo, &playerPos); + modelId = BoardModelIDGet(work->pathMdlId); + modelP = &Hu3DData[modelId]; + Hu3DMotionExec(modelId, modelP->unk_08, modelP->unk_64, 0); + modelObj = Hu3DModelObjPtrGet(modelId, "looppath-cube1"); + prevPos.x = modelObj->data.curr.pos.x; + prevPos.y = modelObj->data.curr.pos.y; + prevPos.z = modelObj->data.curr.pos.z; + time = 0.0f; while (TRUE) { - Hu3DMotionExec(var_r28, temp_r29->unk_08, temp_r29->unk_64, 0); - var_r30 = Hu3DModelObjPtrGet(var_r28, "looppath-cube1"); - sp2C.x = var_r30->data.curr.pos.x; - sp2C.y = var_r30->data.curr.pos.y; - sp2C.z = var_r30->data.curr.pos.z; - VECSubtract(&sp2C, &sp20, &sp8); - var_f31 += VECMag(&sp8); - if (BoardVecMinDistCheck(&sp14, &sp2C, 150.0f)) { + Hu3DMotionExec(modelId, modelP->unk_08, modelP->unk_64, 0); + modelObj = Hu3DModelObjPtrGet(modelId, "looppath-cube1"); + pos.x = modelObj->data.curr.pos.x; + pos.y = modelObj->data.curr.pos.y; + pos.z = modelObj->data.curr.pos.z; + VECSubtract(&pos, &prevPos, &diff); + time += VECMag(&diff); + if (BoardVecMinDistCheck(&playerPos, &pos, 150.0f)) { break; } - sp20 = sp2C; - temp_r29->unk_64 += temp_r29->unk_68; + prevPos = pos; + modelP->unk_64 += modelP->unk_68; } - arg0->unk10 = var_f31; + work->time = time; } -static void fn_1_97F4(void) +static void CoasterEffCreate(void) { - Bss20Work *temp_r30; - Bss20Data *var_r31; + CoasterEffWork *work; + CoasterEffData *data; s32 i; - if (lbl_1_bss_20) { + if (coasterEffObj) { return; } - lbl_1_bss_20 = omAddObjEx(boardObjMan, 0x101, 1, 0, -1, fn_1_9920); - temp_r30 = OM_GET_WORK_PTR(lbl_1_bss_20, Bss20Work); - temp_r30->unk00_field0 = 0; - temp_r30->unk04 = HuMemDirectMallocNum(HEAP_SYSTEM, 20 * sizeof(Bss20Data), MEMORY_DEFAULT_NUM); - var_r31 = temp_r30->unk04; - for (i = 0; i < 20; var_r31++, i++) { - var_r31->unk00 = -1; - var_r31->unk02 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 7), NULL, 0); - BoardModelVisibilitySet(var_r31->unk02, 0); + coasterEffObj = omAddObjEx(boardObjMan, 0x101, 1, 0, -1, CoasterEffUpdate); + work = OM_GET_WORK_PTR(coasterEffObj, CoasterEffWork); + work->killF = 0; + work->data = HuMemDirectMallocNum(HEAP_SYSTEM, 20 * sizeof(CoasterEffData), MEMORY_DEFAULT_NUM); + data = work->data; + for (i = 0; i < 20; data++, i++) { + data->time = -1; + data->mdlId = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 7), NULL, 0); + BoardModelVisibilitySet(data->mdlId, 0); } } -static void fn_1_98EC(void) +static void CoasterEffKill(void) { - if (lbl_1_bss_20) { - OM_GET_WORK_PTR(lbl_1_bss_20, Bss20Work)->unk00_field0 = 1; + if (coasterEffObj) { + OM_GET_WORK_PTR(coasterEffObj, CoasterEffWork)->killF = TRUE; } } -static void fn_1_9920(omObjData *arg0) +static void CoasterEffUpdate(omObjData *obj) { - Bss20Work *temp_r31; + CoasterEffWork *work; s32 i; - temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_20, Bss20Work); - if (temp_r31->unk00_field0 != 0 || BoardIsKill()) { + work = OM_GET_WORK_PTR(coasterEffObj, CoasterEffWork); + if (work->killF != 0 || BoardIsKill()) { for (i = 0; i < 20; i++) { - BoardModelKill(temp_r31->unk04[i].unk02); + BoardModelKill(work->data[i].mdlId); } - HuMemDirectFree(temp_r31->unk04); - lbl_1_bss_20 = 0; - omDelObjEx(HuPrcCurrentGet(), arg0); + HuMemDirectFree(work->data); + coasterEffObj = 0; + omDelObjEx(HuPrcCurrentGet(), obj); return; } - if (lbl_1_bss_640 < 10.0f) { + if (coasterTime < 10.0f) { return; } - if (temp_r31->unk01 != 0) { - temp_r31->unk01--; + if (work->delay != 0) { + work->delay--; } else { - temp_r31->unk01 = 2; - fn_1_9A24(temp_r31); + work->delay = 2; + CoasterEffAdd(work); } - fn_1_9BBC(temp_r31); + CoasterEffModelUpdate(work); } -static void fn_1_9A24(Bss20Work *arg0) +static void CoasterEffAdd(CoasterEffWork *work) { - Bss20Data *temp_r31; - Mtx sp8; + CoasterEffData *data; + Mtx matrix; s32 i; s32 j; - if (lbl_1_bss_6B1 != 0) { - MTXTrans(sp8, 0.0f, 50.0f, -100.0f); + if (coasterLandF != 0) { + MTXTrans(matrix, 0.0f, 50.0f, -100.0f); } else { - MTXTrans(sp8, 0.0f, 70.0f, -100.0f); + MTXTrans(matrix, 0.0f, 70.0f, -100.0f); } - MTXConcat(lbl_1_bss_678, sp8, sp8); + MTXConcat(coasterMtx, matrix, matrix); for (i = 0; i < 4; i++) { for (j = 0; j < 20; j++) { - temp_r31 = &arg0->unk04[j]; - if (temp_r31->unk00 == -1) { - temp_r31->unk00 = 10; - Hu3DMtxTransGet(sp8, &temp_r31->unk08); - VECAdd(&lbl_1_bss_654, &temp_r31->unk08, &temp_r31->unk08); - temp_r31->unk14.x = 0.0f; - temp_r31->unk14.y = 0.0f; - temp_r31->unk14.z = 0.001f; - temp_r31->unk04 = 1.0f; - BoardModelVisibilitySet(temp_r31->unk02, 1); - BoardModelLayerSet(temp_r31->unk02, 2); - BoardModelPosSetV(temp_r31->unk02, &temp_r31->unk08); + data = &work->data[j]; + if (data->time == -1) { + data->time = 10; + Hu3DMtxTransGet(matrix, &data->pos); + VECAdd(&coasterPos, &data->pos, &data->pos); + data->vel.x = 0.0f; + data->vel.y = 0.0f; + data->vel.z = 0.001f; + data->scale = 1.0f; + BoardModelVisibilitySet(data->mdlId, 1); + BoardModelLayerSet(data->mdlId, 2); + BoardModelPosSetV(data->mdlId, &data->pos); break; } } } } -static void fn_1_9BBC(Bss20Work *arg0) +static void CoasterEffModelUpdate(CoasterEffWork *work) { - Bss20Data *temp_r31; + CoasterEffData *data; s32 i; for (i = 0; i < 20; i++) { - temp_r31 = &arg0->unk04[i]; - if (temp_r31->unk00 == -1) { + data = &work->data[i]; + if (data->time == -1) { continue; } - temp_r31->unk00--; - if (temp_r31->unk00 == 0) { - temp_r31->unk00 = -1; - BoardModelVisibilitySet(temp_r31->unk02, 0); + data->time--; + if (data->time == 0) { + data->time = -1; + BoardModelVisibilitySet(data->mdlId, 0); } else { - if (temp_r31->unk00 <= 3) { - temp_r31->unk04 = sind(30.0f * temp_r31->unk00); + if (data->time <= 3) { + data->scale = sind(30.0f * data->time); } - VECAdd(&temp_r31->unk08, &temp_r31->unk14, &temp_r31->unk08); - BoardModelMtxSet(temp_r31->unk02, &lbl_1_bss_678); - BoardModelPosSetV(temp_r31->unk02, &temp_r31->unk08); - BoardModelScaleSet(temp_r31->unk02, temp_r31->unk04, temp_r31->unk04, temp_r31->unk04); + VECAdd(&data->pos, &data->vel, &data->pos); + BoardModelMtxSet(data->mdlId, &coasterMtx); + BoardModelPosSetV(data->mdlId, &data->pos); + BoardModelScaleSet(data->mdlId, data->scale, data->scale, data->scale); } } } + +static void CoasterHostComKeySet(s32 playerNo) +{ + s32 starPos; + s32 yesF; + + starPos = GWSystem.star_pos; + yesF = 0; + if (boardWork->hostSide != 0) { + if (starPos == 0 || starPos == 1 || starPos == 7) { + yesF = 0; + } + else { + yesF = 1; + } + } + else if (starPos == 0 || starPos == 1 || starPos == 7) { + yesF = 1; + } + else { + yesF = 0; + } + if (BoardPlayerCoinsGet(playerNo) < 5) { + yesF = 0; + } + if (yesF != 0) { + BoardComKeySetLeft(); + } + else { + BoardComKeySetRight(); + } +} \ No newline at end of file diff --git a/src/REL/w01Dll/mg_coin.c b/src/REL/w01Dll/mg_coin.c index c24ee595..f07a4b3b 100755 --- a/src/REL/w01Dll/mg_coin.c +++ b/src/REL/w01Dll/mg_coin.c @@ -25,102 +25,98 @@ #include "ext_math.h" typedef struct { - /* 0x00 */ Vec unk00; - /* 0x0C */ float unk0C; -} Data690InnerStruct; // Size 0x10 + /* 0x00 */ Vec pos; + /* 0x0C */ float len; +} SpaceAmidaPathPoint; // Size 0x10 -typedef Data690InnerStruct Data690Block[15]; +typedef SpaceAmidaPathPoint SpaceAmidaMap[15]; typedef struct { /* 0x00 */ s16 unk00; /* 0x02 */ s16 unk02; - /* 0x04 */ Vec unk04; - /* 0x10 */ Vec unk10; - /* 0x1C */ u16 unk1C; - /* 0x1E */ char unk1E[2]; - /* 0x20 */ float unk20; - /* 0x24 */ u16 unk24; - /* 0x26 */ s16 unk26; - /* 0x28 */ s16 unk28; - /* 0x2A */ char unk2A[2]; -} Bss720Data; // Size 0x2C + /* 0x04 */ Vec rocketPos; + /* 0x10 */ Vec jumpDir; + /* 0x1C */ u16 waitTime; + /* 0x20 */ float jumpTime; + /* 0x24 */ u16 comDelay; + /* 0x26 */ s16 comChoice; + /* 0x28 */ s16 comInputTimer; +} SpaceAmidaGameWork; // Size 0x2C typedef struct { /* 0x00 */ char unk00[4]; - /* 0x04 */ Data690Block *unk04; - /* 0x08 */ u16 unk08; - /* 0x0A */ char unk0A[2]; - /* 0x0C */ float unk0C; - /* 0x10 */ float unk10; - /* 0x14 */ float unk14; - /* 0x18 */ float unk18; - /* 0x1C */ float unk1C; - /* 0x20 */ Vec unk20; - /* 0x2C */ Vec unk2C; - /* 0x38 */ float unk38; + /* 0x04 */ SpaceAmidaMap *map; + /* 0x08 */ u16 mapCursor; + /* 0x0C */ float len; + /* 0x10 */ float speed; + /* 0x14 */ float maxSpeed; + /* 0x18 */ float rocketXOfs; + /* 0x1C */ float kemuriSize; + /* 0x20 */ Vec kemuriScale; + /* 0x2C */ Vec kemuriScaleVel; + /* 0x38 */ float kemuriTPLvl; /* 0x3C */ float unk3C; - /* 0x40 */ s16 unk40; - /* 0x42 */ char unk42[2]; -} Bss714Data; // Size 0x44 + /* 0x40 */ s16 targetNo; +} RocketWork; // Size 0x44 -static void fn_1_A4B8(omObjData *arg0); -static void fn_1_A554(void); -static void fn_1_A5FC(void); -static void fn_1_A6E0(omObjData *arg0); -static float fn_1_B018(Data690Block *arg0); -static void fn_1_B088(omObjData *arg0); -static void fn_1_B1CC(omObjData *arg0, u16 *arg1, u16 *arg2); -static void fn_1_B3B8(omObjData *arg0); -static void fn_1_B478(omObjData *arg0); -static void fn_1_BAF8(omObjData *arg0); -static void fn_1_BCDC(omObjData *arg0); -static void fn_1_BF00(omObjData *arg0); -static void fn_1_BF68(omObjData *arg0); -static void fn_1_C000(void); -static void fn_1_C0FC(omObjData *arg0); -static void fn_1_C25C(void); -static void fn_1_C844(void); -static void fn_1_C894(omObjData *arg0); -static void fn_1_C94C(Vec *arg0, Vec *arg1, Vec *arg2); -static float fn_1_C998(Vec *arg0); -static u32 fn_1_CB44(Vec *arg0, float arg1); -static void fn_1_CEC4(void); -static void fn_1_D034(void); -static void fn_1_D07C(omObjData *arg0); -static void fn_1_D114(ModelData *model, ParticleData *particle, Mtx matrix); +static void SpaceAmidaMainUpdate(omObjData *obj); +static void SpaceAmidaStop(void); +static void SpaceAmidaKill(void); +static void SpaceAmidaRocketObjUpdate(omObjData *obj); +static float SpaceAmidaMapLenGet(SpaceAmidaMap *obj); +static void SpaceAmidaComChoiceSet(omObjData *obj); +static void SpaceAmidaComInputGet(omObjData *obj, u16 *stkBtn, u16 *btn); +static void SpaceAmidaGameOpen(omObjData *obj); +static void SpaceAmidaGameUpdate(omObjData *obj); +static void SpaceAmidaRocketJump(omObjData *obj); +static void SpaceAmidaRocketKemuriExec(omObjData *obj); +static void SpaceAmidaRocketWait(omObjData *obj); +static void SpaceAmidaRocketUp(omObjData *obj); +static void SpaceAmidaCoinWin(void); +static void SpaceAmidaJumpDown(omObjData *obj); +static void SpaceAmidaCoinRainMain(void); +static void SpaceAmidaReturnWinMain(void); +static void SpaceAmidaGameStop(omObjData *obj); +static void SpaceAmidaDirGet(Vec *a, Vec *b, Vec *result); +static float SpaceAmidaAngleGet(Vec *dir); +static u32 SpaceAmidaPlayerRotAdd(Vec *rocketPos, float delta); +static void SpaceAmidaEffCreate(void); +static void SpaceAmidaEffKill(void); +static void SpaceAmidaEffUpdate(omObjData *arg0); +static void SpaceAmidaEffParticleHook(ModelData *model, ParticleData *particle, Mtx matrix); -static s32 lbl_1_bss_79C; -static s32 lbl_1_bss_798; -static s16 lbl_1_bss_796; -static s16 lbl_1_bss_790[3]; -static s16 lbl_1_bss_78A[3]; -static s16 lbl_1_bss_788; -static s16 lbl_1_bss_760[20]; -static Process *lbl_1_bss_75C; -static omObjData *lbl_1_bss_758; -static float lbl_1_bss_754; -static s16 lbl_1_bss_750; -static s32 lbl_1_bss_74C; -static s32 lbl_1_bss_748; -static s16 lbl_1_bss_744; -static Vec lbl_1_bss_738; -static s32 lbl_1_bss_734; -static s32 lbl_1_bss_730; -static s32 lbl_1_bss_72C; -static u16 lbl_1_bss_72A; -static u16 lbl_1_bss_728; -static s32 lbl_1_bss_724; -static omObjData *lbl_1_bss_720; -static omObjData *lbl_1_bss_714[3]; -static omObjData *lbl_1_bss_710; -static AnimData *lbl_1_bss_70C; -static s16 lbl_1_bss_708; +static s32 spaceAmidaPadNo; +static s32 spaceAmidaPlayerNo; +static s16 spaceAmidaMdlId; +static s16 mapMdlId[3]; +static s16 rocketMdlId[3]; +static s16 spaceAmidaEffMdlId; +static s16 coinMdlId[20]; +static Process *coinWinProc; +static omObjData *spaceAmidaMainObj; +static float spaceAmidaTime; +static s16 kemuriMdlId; +static s32 timerSec; +static s32 timerFrame; +static s16 timerSeqId; +static Vec spaceAmidaPos; +static s32 spaceAmidaMapNo; +static s32 spaceAmidaPath; +static s32 rocketWarpF; +static u16 spaceAmidaStopF; +static u16 spaceAmidaCoinNum; +static s32 spaceAmidaSeNo; +static omObjData *spaceAmidaGameObj; +static omObjData *rocketObj[3]; +static omObjData *spaceAmidaEffObj; +static AnimData *spaceAmidaEffAnim; +static s16 spaceAmidaSeqStopF; -static Vec lbl_1_data_658[3] = { { -50.0f, 238.0f, 0.0f }, { 0.0f, 275.5f, 0.0f }, { 50.0f, 238.0f, 0.0f } }; +static Vec effPosTbl[3] = { { -50.0f, 238.0f, 0.0f }, { 0.0f, 275.5f, 0.0f }, { 50.0f, 238.0f, 0.0f } }; -static u16 lbl_1_data_67C[3][3] = { { 10, 5, 20 }, { 10, 5, 20 }, { 5, 20, 10 } }; +static u16 spaceAmidaCoinNumTbl[3][3] = { { 10, 5, 20 }, { 10, 5, 20 }, { 5, 20, 10 } }; -static Data690Block lbl_1_data_690[3] +static SpaceAmidaMap spaceAmidaMap1[3] = { { { { -50.0f, -12.0f, 0.0f }, 75.0f }, { { -50.0f, 63.0f, 0.0f }, 50.0f }, { { 0.0f, 63.0f, 0.0f }, 25.0f }, { { 0.0f, 88.0f, 0.0f }, 50.0f }, { { 50.0f, 88.0f, 0.0f }, 87.5f }, { { 50.0f, 175.5f, 0.0f }, 0.0f } }, { { { 0.0f, -12.0f, 0.0f }, 75.0f }, { { 0.0f, 63.0f, 0.0f }, 50.0f }, { { -50.0f, 63.0f, 0.0f }, 50.0f }, @@ -130,7 +126,7 @@ static Data690Block lbl_1_data_690[3] { { 0.0f, 113.0f, 0.0f }, 50.0f }, { { -50.0f, 113.0f, 0.0f }, 50.0f }, { { -50.0f, 163.0f, 0.0f }, 50.0f }, { { 0.0f, 163.0f, 0.0f }, 50.0f }, { { 0.0f, 213.0f, 0.0f }, 0.0f } } }; -static Data690Block lbl_1_data_960[3] +static SpaceAmidaMap spaceAmidaMap2[3] = { { { { -50.0f, -12.0f, 0.0f }, 125.0f }, { { -50.0f, 113.0f, 0.0f }, 50.0f }, { { 0.0f, 113.0f, 0.0f }, 25.0f }, { { 0.0f, 138.0f, 0.0f }, 50.0f }, { { 50.0f, 138.0f, 0.0f }, 37.5f }, { { 50.0f, 175.5f, 0.0f }, 0.0f } }, { { { 0.0f, -12.0f, 0.0f }, 75.0f }, { { 0.0f, 63.0f, 0.0f }, 50.0f }, { { 50.0f, 63.0f, 0.0f }, 75.0f }, @@ -140,7 +136,7 @@ static Data690Block lbl_1_data_960[3] { { 0.0f, 113.0f, 0.0f }, 50.0f }, { { -50.0f, 113.0f, 0.0f }, 50.0f }, { { -50.0f, 163.0f, 0.0f }, 50.0f }, { { 0.0f, 163.0f, 0.0f }, 50.0f }, { { 0.0f, 213.0f, 0.0f }, 0.0f } } }; -static Data690Block lbl_1_data_C30[3] +static SpaceAmidaMap spaceAmidaMap3[3] = { { { { -50.0f, -12.0f, 0.0f }, 100.0f }, { { -50.0f, 88.0f, 0.0f }, 50.0f }, { { 0.0f, 88.0f, 0.0f }, 50.0f }, { { 0.0f, 138.0f, 0.0f }, 50.0f }, { { -50.0f, 138.0f, 0.0f }, 37.5f }, { { -50.0f, 175.5f, 0.0f }, 0.0f } }, { { { 0.0f, -12.0f, 0.0f }, 75.0f }, { { 0.0f, 63.0f, 0.0f }, 50.0f }, { { 50.0f, 63.0f, 0.0f }, 100.0f }, @@ -149,911 +145,867 @@ static Data690Block lbl_1_data_C30[3] { { -50.0f, 88.0f, 0.0f }, 50.0f }, { { -50.0f, 138.0f, 0.0f }, 50.0f }, { { 0.0f, 138.0f, 0.0f }, 25.0f }, { { 0.0f, 163.0f, 0.0f }, 50.0f }, { { 50.0f, 163.0f, 0.0f }, 12.5f }, { { 50.0f, 175.5f, 0.0f }, 0.0f } } }; -void fn_1_9D00(s32 arg0) +void SpaceAmidaExec(void) { - s32 temp_r31; - s32 var_r30; - - temp_r31 = GWSystem.star_pos; - var_r30 = 0; - if (lbl_1_bss_0->unk00_field0 != 0) { - if (temp_r31 == 0 || temp_r31 == 1 || temp_r31 == 7) { - var_r30 = 0; - } - else { - var_r30 = 1; - } - } - else if (temp_r31 == 0 || temp_r31 == 1 || temp_r31 == 7) { - var_r30 = 1; - } - else { - var_r30 = 0; - } - if (BoardPlayerCoinsGet(arg0) < 5) { - var_r30 = 0; - } - if (var_r30 != 0) { - BoardComKeySetLeft(); - } - else { - BoardComKeySetRight(); - } -} - -void fn_1_9DD8(void) -{ - Vec sp2C[3]; - Vec sp20; - Vec sp14; - Vec sp8; - Bss720Data *temp_r30; - Bss714Data *temp_r29; + Vec rocketMdlOfs[3]; + Vec pos; + Vec rocketPos; + Vec scale; + SpaceAmidaGameWork *gameObjWork; + RocketWork *rocketWork; s32 i; - lbl_1_bss_79C = GWPlayer[GWSystem.player_curr].port; - lbl_1_bss_796 = lbl_1_bss_6C4[6]; - lbl_1_bss_790[0] = lbl_1_bss_6C4[7]; - lbl_1_bss_790[1] = lbl_1_bss_6C4[8]; - lbl_1_bss_790[2] = lbl_1_bss_6C4[9]; - lbl_1_bss_78A[0] = lbl_1_bss_6C4[10]; - lbl_1_bss_78A[1] = lbl_1_bss_6C4[11]; - lbl_1_bss_78A[2] = lbl_1_bss_6C4[12]; - BoardModelVisibilitySet(lbl_1_bss_790[0], 0); - BoardModelVisibilitySet(lbl_1_bss_790[1], 0); - BoardModelVisibilitySet(lbl_1_bss_790[2], 0); - lbl_1_bss_734 = rand8() % 3; - BoardModelVisibilitySet(lbl_1_bss_790[lbl_1_bss_734], 1); - BoardModelMotionStart(lbl_1_bss_790[lbl_1_bss_734], 0, 0x40000001); - BoardModelPosGet(lbl_1_bss_796, &sp20); - sp8.x = sp8.y = sp8.z = 1.0f; + spaceAmidaPadNo = GWPlayer[GWSystem.player_curr].port; + spaceAmidaMdlId = mapObjMdlId[MAPOBJ_SPACEAMIDA]; + mapMdlId[0] = mapObjMdlId[MAPOBJ_SPACEAMIDA_MAP1]; + mapMdlId[1] = mapObjMdlId[MAPOBJ_SPACEAMIDA_MAP2]; + mapMdlId[2] = mapObjMdlId[MAPOBJ_SPACEAMIDA_MAP3]; + rocketMdlId[0] = mapObjMdlId[MAPOBJ_SPACEAMIDA_ROCKET1]; + rocketMdlId[1] = mapObjMdlId[MAPOBJ_SPACEAMIDA_ROCKET2]; + rocketMdlId[2] = mapObjMdlId[MAPOBJ_SPACEAMIDA_ROCKET3]; + BoardModelVisibilitySet(mapMdlId[0], 0); + BoardModelVisibilitySet(mapMdlId[1], 0); + BoardModelVisibilitySet(mapMdlId[2], 0); + spaceAmidaMapNo = rand8() % 3; + BoardModelVisibilitySet(mapMdlId[spaceAmidaMapNo], 1); + BoardModelMotionStart(mapMdlId[spaceAmidaMapNo], 0, HU3D_MOTATTR_LOOP); + BoardModelPosGet(spaceAmidaMdlId, &pos); + scale.x = scale.y = scale.z = 1.0f; for (i = 0; i < 3; i++) { - sp2C[i] = lbl_1_data_690[i][0].unk00; - sp2C[i].y -= -12.0f; - BoardModelPosSet(lbl_1_bss_78A[i], sp20.x + sp2C[i].x, sp20.y + sp2C[i].y, sp20.z + 30.0f); - BoardModelVisibilitySet(lbl_1_bss_78A[i], 1); - BoardModelScaleSetV(lbl_1_bss_78A[i], &sp8); + rocketMdlOfs[i] = spaceAmidaMap1[i][0].pos; + rocketMdlOfs[i].y -= -12.0f; + BoardModelPosSet(rocketMdlId[i], pos.x + rocketMdlOfs[i].x, pos.y + rocketMdlOfs[i].y, pos.z + 30.0f); + BoardModelVisibilitySet(rocketMdlId[i], 1); + BoardModelScaleSetV(rocketMdlId[i], &scale); } - lbl_1_bss_798 = GWSystem.player_curr; - BoardModelPosGet(lbl_1_bss_796, &lbl_1_bss_738); - lbl_1_bss_730 = 1; - BoardModelPosGet(lbl_1_bss_78A[lbl_1_bss_730], &sp14); - BoardPlayerPosGet(lbl_1_bss_798, &sp20); - lbl_1_bss_758 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_A4B8); - lbl_1_bss_720 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_B3B8); - lbl_1_bss_720->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Bss720Data), MEMORY_DEFAULT_NUM); - temp_r30 = lbl_1_bss_720->data; - temp_r30->unk02 = 0; - temp_r30->unk04 = sp14; - temp_r30->unk28 = 0; - fn_1_CB44(&sp14, 0.0f); - fn_1_B088(lbl_1_bss_720); - lbl_1_bss_750 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_W01, 19)); - Hu3DModelAttrSet(lbl_1_bss_750, HU3D_ATTR_DISPOFF); + spaceAmidaPlayerNo = GWSystem.player_curr; + BoardModelPosGet(spaceAmidaMdlId, &spaceAmidaPos); + spaceAmidaPath = 1; + BoardModelPosGet(rocketMdlId[spaceAmidaPath], &rocketPos); + BoardPlayerPosGet(spaceAmidaPlayerNo, &pos); + spaceAmidaMainObj = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, SpaceAmidaMainUpdate); + spaceAmidaGameObj = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, SpaceAmidaGameOpen); + spaceAmidaGameObj->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(SpaceAmidaGameWork), MEMORY_DEFAULT_NUM); + gameObjWork = spaceAmidaGameObj->data; + gameObjWork->unk02 = 0; + gameObjWork->rocketPos = rocketPos; + gameObjWork->comInputTimer = 0; + SpaceAmidaPlayerRotAdd(&rocketPos, 0.0f); + SpaceAmidaComChoiceSet(spaceAmidaGameObj); + kemuriMdlId = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_W01, 19)); + Hu3DModelAttrSet(kemuriMdlId, HU3D_ATTR_DISPOFF); for (i = 0; i < 3; i++) { - lbl_1_bss_714[i] = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_A6E0); - lbl_1_bss_714[i]->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Bss714Data), MEMORY_DEFAULT_NUM); - lbl_1_bss_714[i]->work[0] = lbl_1_bss_78A[i]; - lbl_1_bss_714[i]->work[1] = 0; - lbl_1_bss_714[i]->work[3] = 0; - temp_r29 = lbl_1_bss_714[i]->data; - if (i == lbl_1_bss_730) { - lbl_1_bss_714[i]->work[2] = 1; + rocketObj[i] = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, SpaceAmidaRocketObjUpdate); + rocketObj[i]->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(RocketWork), MEMORY_DEFAULT_NUM); + rocketObj[i]->work[0] = rocketMdlId[i]; + rocketObj[i]->work[1] = 0; + rocketObj[i]->work[3] = 0; + rocketWork = rocketObj[i]->data; + if (i == spaceAmidaPath) { + rocketObj[i]->work[2] = 1; } else { - lbl_1_bss_714[i]->work[2] = 0; + rocketObj[i]->work[2] = 0; } - temp_r29->unk18 = 1.0f; - temp_r29->unk1C = 0.0f; + rocketWork->rocketXOfs = 1.0f; + rocketWork->kemuriSize = 0.0f; } - lbl_1_bss_72C = 0; - lbl_1_bss_74C = 5; - lbl_1_bss_748 = REFRESH_RATE; - lbl_1_bss_72A = 0; - fn_1_CEC4(); - lbl_1_bss_788 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 17), NULL, 0); - BoardModelMotionUpdateSet(lbl_1_bss_788, 1); - BoardModelVisibilitySet(lbl_1_bss_788, 0); + rocketWarpF = 0; + timerSec = 5; + timerFrame = REFRESH_RATE; + spaceAmidaStopF = 0; + SpaceAmidaEffCreate(); + spaceAmidaEffMdlId = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W01, 17), NULL, 0); + BoardModelMotionUpdateSet(spaceAmidaEffMdlId, 1); + BoardModelVisibilitySet(spaceAmidaEffMdlId, 0); for (i = 0; i < 20; i++) { - lbl_1_bss_760[i] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 10), NULL, 1); - BoardModelVisibilitySet(lbl_1_bss_760[i], 0); + coinMdlId[i] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 10), NULL, 1); + BoardModelVisibilitySet(coinMdlId[i], 0); } } -static void fn_1_A4B8(omObjData *arg0) +static void SpaceAmidaMainUpdate(omObjData *obj) { - if (lbl_1_bss_72A == 0) { + if (spaceAmidaStopF == 0) { return; } if (BoardMGDoneFlagGet() == 1) { - if (lbl_1_bss_754 <= 0.0f) { - fn_1_A5FC(); - omDelObjEx(HuPrcCurrentGet(), arg0); + if (spaceAmidaTime <= 0.0f) { + SpaceAmidaKill(); + omDelObjEx(HuPrcCurrentGet(), obj); } } - lbl_1_bss_754 -= 1.0f; + spaceAmidaTime -= 1.0f; } -static void fn_1_A554(void) +static void SpaceAmidaStop(void) { - float temp_f1; + float time; - lbl_1_bss_72A = 1; + spaceAmidaStopF = 1; BoardMGExit(); - temp_f1 = BoardModelMotionTimeGet(lbl_1_bss_796); - lbl_1_bss_754 = temp_f1; - BoardModelMotionStart(lbl_1_bss_796, 0, 0); - BoardModelMotionTimeSet(lbl_1_bss_796, temp_f1); - BoardModelMotionSpeedSet(lbl_1_bss_796, -1.0f); + time = BoardModelMotionTimeGet(spaceAmidaMdlId); + spaceAmidaTime = time; + BoardModelMotionStart(spaceAmidaMdlId, 0, 0); + BoardModelMotionTimeSet(spaceAmidaMdlId, time); + BoardModelMotionSpeedSet(spaceAmidaMdlId, -1.0f); } -static void fn_1_A5FC(void) +static void SpaceAmidaKill(void) { s32 i; for (i = 0; i < 3; i++) { - BoardModelVisibilitySet(lbl_1_bss_790[i], 0); - BoardModelVisibilitySet(lbl_1_bss_78A[i], 0); - omDelObjEx(HuPrcCurrentGet(), lbl_1_bss_714[i]); + BoardModelVisibilitySet(mapMdlId[i], 0); + BoardModelVisibilitySet(rocketMdlId[i], 0); + omDelObjEx(HuPrcCurrentGet(), rocketObj[i]); } for (i = 0; i < 20; i++) { - BoardModelKill(lbl_1_bss_760[i]); + BoardModelKill(coinMdlId[i]); } - fn_1_D034(); - BoardModelKill(lbl_1_bss_788); + SpaceAmidaEffKill(); + BoardModelKill(spaceAmidaEffMdlId); BoardMGDoneFlagSet(0); - Hu3DModelKill(lbl_1_bss_750); + Hu3DModelKill(kemuriMdlId); } -static void fn_1_A6E0(omObjData *arg0) +static void SpaceAmidaRocketObjUpdate(omObjData *obj) { - Bss714Data *temp_r31; - Vec sp2C; - Vec sp20; - Vec sp14; - Vec sp8; - float var_f31; + RocketWork *work; + Vec scale; + Vec pos; + Vec rocketPos; + Vec dir; + float len; - temp_r31 = arg0->data; - BoardModelScaleGet(arg0->work[0], &sp2C); - switch (arg0->work[2]) { + work = obj->data; + BoardModelScaleGet(obj->work[0], &scale); + switch (obj->work[2]) { case 1: - if ((sp2C.x += 0.08f) >= 1.5f) { - sp2C.x = 1.5f; - sp2C.y = 1.5f; - if (arg0->work[3] == 1) { - arg0->work[2] = 0; + if ((scale.x += 0.08f) >= 1.5f) { + scale.x = 1.5f; + scale.y = 1.5f; + if (obj->work[3] == 1) { + obj->work[2] = 0; } else { - arg0->work[2] = 2; + obj->work[2] = 2; } } else { - sp2C.y += 0.08f; + scale.y += 0.08f; } - BoardModelScaleSetV(arg0->work[0], &sp2C); + BoardModelScaleSetV(obj->work[0], &scale); break; case 2: - if ((sp2C.x -= 0.08f) <= 1.0f) { - sp2C.x = 1.0f; - sp2C.y = 1.0f; - if (arg0->work[1] == 1) { - arg0->work[2] = 0; - arg0->work[1] = 0; + if ((scale.x -= 0.08f) <= 1.0f) { + scale.x = 1.0f; + scale.y = 1.0f; + if (obj->work[1] == 1) { + obj->work[2] = 0; + obj->work[1] = 0; } else { - arg0->work[2] = 1; + obj->work[2] = 1; } } else { - sp2C.y -= 0.08f; + scale.y -= 0.08f; } - BoardModelScaleSetV(arg0->work[0], &sp2C); + BoardModelScaleSetV(obj->work[0], &scale); break; case 3: - switch (lbl_1_bss_734) { + switch (spaceAmidaMapNo) { case 0: - temp_r31->unk04 = &lbl_1_data_690[lbl_1_bss_730]; + work->map = &spaceAmidaMap1[spaceAmidaPath]; break; case 1: - temp_r31->unk04 = &lbl_1_data_960[lbl_1_bss_730]; + work->map = &spaceAmidaMap2[spaceAmidaPath]; break; case 2: - temp_r31->unk04 = &lbl_1_data_C30[lbl_1_bss_730]; + work->map = &spaceAmidaMap3[spaceAmidaPath]; break; } - BoardModelPosGet(arg0->work[0], &sp14); - sp14.x = lbl_1_bss_738.x + ((*temp_r31->unk04)[0].unk00.x + temp_r31->unk18); - temp_r31->unk18 = -temp_r31->unk18; - BoardModelPosSetV(arg0->work[0], &sp14); - sp14.y += 5.0f; - BoardPlayerPosSetV(lbl_1_bss_798, &sp14); - temp_r31->unk1C += 0.022222223f; - temp_r31->unk38 -= 0.011111111f; - if (temp_r31->unk38 < 0.0f) { - temp_r31->unk38 = 0.0f; + BoardModelPosGet(obj->work[0], &rocketPos); + rocketPos.x = spaceAmidaPos.x + ((*work->map)[0].pos.x + work->rocketXOfs); + work->rocketXOfs = -work->rocketXOfs; + BoardModelPosSetV(obj->work[0], &rocketPos); + rocketPos.y += 5.0f; + BoardPlayerPosSetV(spaceAmidaPlayerNo, &rocketPos); + work->kemuriSize += 0.022222223f; + work->kemuriTPLvl -= 0.011111111f; + if (work->kemuriTPLvl < 0.0f) { + work->kemuriTPLvl = 0.0f; } - Hu3DModelTPLvlSet(lbl_1_bss_750, temp_r31->unk38); - if (temp_r31->unk1C > 1.0f) { - temp_r31->unk1C = 1.0f; + Hu3DModelTPLvlSet(kemuriMdlId, work->kemuriTPLvl); + if (work->kemuriSize > 1.0f) { + work->kemuriSize = 1.0f; } - VECAdd(&temp_r31->unk20, &temp_r31->unk2C, &temp_r31->unk20); - if (temp_r31->unk20.y >= 4.0f) { - temp_r31->unk20.y = 4.0f; - temp_r31->unk2C.y = -0.1f; + VECAdd(&work->kemuriScale, &work->kemuriScaleVel, &work->kemuriScale); + if (work->kemuriScale.y >= 4.0f) { + work->kemuriScale.y = 4.0f; + work->kemuriScaleVel.y = -0.1f; } - if (temp_r31->unk20.y < 1.0f) { - temp_r31->unk20.y = 1.0f; + if (work->kemuriScale.y < 1.0f) { + work->kemuriScale.y = 1.0f; } - Hu3DModelScaleSet(lbl_1_bss_750, temp_r31->unk20.x, temp_r31->unk20.y, temp_r31->unk20.z); + Hu3DModelScaleSet(kemuriMdlId, work->kemuriScale.x, work->kemuriScale.y, work->kemuriScale.z); break; case 4: - Hu3DModelAttrSet(lbl_1_bss_750, HU3D_ATTR_DISPOFF); - arg0->work[2] = 5; - temp_r31->unk08 = 0; - temp_r31->unk0C = 12.0f; - temp_r31->unk14 = (fn_1_B018(temp_r31->unk04) - temp_r31->unk0C) / 90.0f; - temp_r31->unk10 = temp_r31->unk14 / 20.0f; + Hu3DModelAttrSet(kemuriMdlId, HU3D_ATTR_DISPOFF); + obj->work[2] = 5; + work->mapCursor = 0; + work->len = 12.0f; + work->maxSpeed = (SpaceAmidaMapLenGet(work->map) - work->len) / 90.0f; + work->speed = work->maxSpeed / 20.0f; HuAudFXPlay(0x406); HuAudFXPlay(0x407); - HuAudFXStop(lbl_1_bss_724); + HuAudFXStop(spaceAmidaSeNo); break; case 5: - var_f31 = temp_r31->unk0C + temp_r31->unk10; - temp_r31->unk0C = var_f31; - temp_r31->unk10 *= 1.04f; - if (temp_r31->unk10 > temp_r31->unk14) { - temp_r31->unk10 = temp_r31->unk14; + len = work->len + work->speed; + work->len = len; + work->speed *= 1.04f; + if (work->speed > work->maxSpeed) { + work->speed = work->maxSpeed; } - BoardModelPosGet(arg0->work[0], &sp20); - while (var_f31 >= (*temp_r31->unk04)[temp_r31->unk08].unk0C) { - var_f31 -= (*temp_r31->unk04)[temp_r31->unk08].unk0C; - temp_r31->unk08++; - if ((*temp_r31->unk04)[temp_r31->unk08].unk0C == 0.0f) { - omVibrate(lbl_1_bss_798, 12, 6, 6); - var_f31 = 0.0f; - lbl_1_bss_72C = 1; - lbl_1_bss_724 = HuAudFXPlay(0x332); - lbl_1_bss_708 = 0; - arg0->work[2] = 6; - if (sp20.x - lbl_1_bss_738.x < -25.0f) { - temp_r31->unk40 = 0; - lbl_1_bss_728 = 5; + BoardModelPosGet(obj->work[0], &pos); + while (len >= (*work->map)[work->mapCursor].len) { + len -= (*work->map)[work->mapCursor].len; + work->mapCursor++; + if ((*work->map)[work->mapCursor].len == 0.0f) { + omVibrate(spaceAmidaPlayerNo, 12, 6, 6); + len = 0.0f; + rocketWarpF = 1; + spaceAmidaSeNo = HuAudFXPlay(0x332); + spaceAmidaSeqStopF = 0; + obj->work[2] = 6; + if (pos.x - spaceAmidaPos.x < -25.0f) { + work->targetNo = 0; + spaceAmidaCoinNum = 5; } - else if (sp20.x - lbl_1_bss_738.x > 25.0f) { - temp_r31->unk40 = 2; - lbl_1_bss_728 = 10; + else if (pos.x - spaceAmidaPos.x > 25.0f) { + work->targetNo = 2; + spaceAmidaCoinNum = 10; } else { - temp_r31->unk40 = 1; - lbl_1_bss_728 = 20; + work->targetNo = 1; + spaceAmidaCoinNum = 20; } break; } } - temp_r31->unk0C = var_f31; - sp14.x = sp14.y = sp14.z = 0.0f; - if (lbl_1_bss_72C == 0) { - fn_1_C94C(&(*temp_r31->unk04)[temp_r31->unk08].unk00, &(*temp_r31->unk04)[temp_r31->unk08 + 1].unk00, &sp8); - sp20.x = lbl_1_bss_738.x + (sp8.x * var_f31 + (*temp_r31->unk04)[temp_r31->unk08].unk00.x); - sp20.y = lbl_1_bss_738.y + (sp8.y * var_f31 + (*temp_r31->unk04)[temp_r31->unk08].unk00.y); + work->len = len; + rocketPos.x = rocketPos.y = rocketPos.z = 0.0f; + if (rocketWarpF == 0) { + SpaceAmidaDirGet(&(*work->map)[work->mapCursor].pos, &(*work->map)[work->mapCursor + 1].pos, &dir); + pos.x = spaceAmidaPos.x + (dir.x * len + (*work->map)[work->mapCursor].pos.x); + pos.y = spaceAmidaPos.y + (dir.y * len + (*work->map)[work->mapCursor].pos.y); } else { - sp20.x = lbl_1_bss_738.x + (*temp_r31->unk04)[temp_r31->unk08].unk00.x; - sp20.y = lbl_1_bss_738.y + (*temp_r31->unk04)[temp_r31->unk08].unk00.y; + pos.x = spaceAmidaPos.x + (*work->map)[work->mapCursor].pos.x; + pos.y = spaceAmidaPos.y + (*work->map)[work->mapCursor].pos.y; } - BoardModelPosSetV(arg0->work[0], &sp20); - sp20.y += 5.0f; - BoardPlayerPosSetV(lbl_1_bss_798, &sp20); - BoardModelRotSetV(arg0->work[0], &sp14); - BoardPlayerRotSetV(lbl_1_bss_798, &sp14); + BoardModelPosSetV(obj->work[0], &pos); + pos.y += 5.0f; + BoardPlayerPosSetV(spaceAmidaPlayerNo, &pos); + BoardModelRotSetV(obj->work[0], &rocketPos); + BoardPlayerRotSetV(spaceAmidaPlayerNo, &rocketPos); break; case 6: - if (lbl_1_bss_708 == 0 && (HuAudFXStatusGet(lbl_1_bss_724) == 1 || HuAudFXStatusGet(lbl_1_bss_724) == 0)) { + if (spaceAmidaSeqStopF == 0 && (HuAudFXStatusGet(spaceAmidaSeNo) == 1 || HuAudFXStatusGet(spaceAmidaSeNo) == 0)) { BoardAudSeqPause(0, 0, 1000); - lbl_1_bss_708 = 1; + spaceAmidaSeqStopF = 1; } - BoardModelVisibilitySet(lbl_1_bss_788, 1); - sp20.x = lbl_1_bss_738.x + lbl_1_data_658[temp_r31->unk40].x; - sp20.y = lbl_1_bss_738.y + lbl_1_data_658[temp_r31->unk40].y; - sp20.z = lbl_1_bss_738.z + lbl_1_data_658[temp_r31->unk40].z; - BoardModelPosSetV(lbl_1_bss_788, &sp20); - temp_r31->unk1C -= 0.05f; - if (temp_r31->unk1C <= 0.0f) { - temp_r31->unk1C = 0.0f; + BoardModelVisibilitySet(spaceAmidaEffMdlId, 1); + pos.x = spaceAmidaPos.x + effPosTbl[work->targetNo].x; + pos.y = spaceAmidaPos.y + effPosTbl[work->targetNo].y; + pos.z = spaceAmidaPos.z + effPosTbl[work->targetNo].z; + BoardModelPosSetV(spaceAmidaEffMdlId, &pos); + work->kemuriSize -= 0.05f; + if (work->kemuriSize <= 0.0f) { + work->kemuriSize = 0.0f; } break; } } -static float fn_1_B018(Data690Block *arg0) +static float SpaceAmidaMapLenGet(SpaceAmidaMap *arg0) { - float var_f31; + float len; s32 i; - var_f31 = 0.0f; + len = 0.0f; i = 0; while (TRUE) { - if ((*arg0)[i].unk0C == 0.0f) { + if ((*arg0)[i].len == 0.0f) { break; } - var_f31 += (*arg0)[i].unk0C; + len += (*arg0)[i].len; i++; } - return var_f31; + return len; } -static void fn_1_B088(omObjData *arg0) +static void SpaceAmidaComChoiceSet(omObjData *obj) { - Bss720Data *temp_r31; - u16 sp8[] = { 20, 60, 120, 190 }; + SpaceAmidaGameWork *work; + u16 chance[] = { 20, 60, 120, 190 }; s32 i; - temp_r31 = arg0->data; - if (rand8() < sp8[GWPlayerCfg[lbl_1_bss_798].diff]) { + work = obj->data; + if (rand8() < chance[GWPlayerCfg[spaceAmidaPlayerNo].diff]) { for (i = 0; i < 3; i++) { - if (lbl_1_data_67C[lbl_1_bss_734][i] == 20) { - temp_r31->unk26 = i; + if (spaceAmidaCoinNumTbl[spaceAmidaMapNo][i] == 20) { + work->comChoice = i; } } } else { - temp_r31->unk26 = rand8() % 3; + work->comChoice = rand8() % 3; } - temp_r31->unk24 = rand8() % 20 + 20; + work->comDelay = rand8() % 20 + 20; } -static void fn_1_B1CC(omObjData *arg0, u16 *arg1, u16 *arg2) +static void SpaceAmidaComInputGet(omObjData *obj, u16 *stkBtn, u16 *btn) { - Bss720Data *temp_r31; + SpaceAmidaGameWork *work; - temp_r31 = arg0->data; - *arg1 = *arg2 = 0; - if (temp_r31->unk24 != 0) { - temp_r31->unk24--; + work = obj->data; + *stkBtn = *btn = 0; + if (work->comDelay != 0) { + work->comDelay--; return; } - if (temp_r31->unk28 >= 4 || (rand8() & 1)) { - if (temp_r31->unk26 == lbl_1_bss_730) { - *arg2 |= 0x100; + if (work->comInputTimer >= 4 || (rand8() & 1)) { + if (work->comChoice == spaceAmidaPath) { + *btn |= PAD_BUTTON_A; } - else if (temp_r31->unk26 < lbl_1_bss_730) { - *arg1 |= 1; + else if (work->comChoice < spaceAmidaPath) { + *stkBtn |= PAD_BUTTON_LEFT; } else { - *arg1 |= 2; + *stkBtn |= PAD_BUTTON_RIGHT; } - temp_r31->unk24 = rand8() % 10 + 10; + work->comDelay = rand8() % 10 + 10; } else { - temp_r31->unk28++; - temp_r31->unk24 = rand8() % 10 + 20; - if (lbl_1_bss_730 == 0) { - *arg1 |= 2; + work->comInputTimer++; + work->comDelay = rand8() % 10 + 20; + if (spaceAmidaPath == 0) { + *stkBtn |= PAD_BUTTON_RIGHT; } - else if (lbl_1_bss_730 == 2) { - *arg1 |= 1; + else if (spaceAmidaPath == 2) { + *stkBtn |= PAD_BUTTON_LEFT; } else if (rand8() & 1) { - *arg1 |= 1; + *stkBtn |= PAD_BUTTON_LEFT; } else { - *arg1 |= 2; + *stkBtn |= PAD_BUTTON_RIGHT; } } } -static void fn_1_B3B8(omObjData *arg0) +static void SpaceAmidaGameOpen(omObjData *obj) { - float temp_f31; - - temp_f31 = BoardModelMotionMaxTimeGet(lbl_1_bss_796); - if (BoardModelMotionTimeGet(lbl_1_bss_796) >= temp_f31) { - lbl_1_bss_744 = MGSeqCreate(1, lbl_1_bss_74C, 0x120, 0x40); - lbl_1_bss_720->func = fn_1_B478; + if (BoardModelMotionTimeGet(spaceAmidaMdlId) >= BoardModelMotionMaxTimeGet(spaceAmidaMdlId)) { + timerSeqId = MGSeqCreate(1, timerSec, 0x120, 0x40); + spaceAmidaGameObj->func = SpaceAmidaGameUpdate; BoardMusStart(1, 0xF, 0x7F, 0); - lbl_1_bss_724 = HuAudFXPlay(0x408); + spaceAmidaSeNo = HuAudFXPlay(0x408); } } -static void fn_1_B478(omObjData *arg0) +static void SpaceAmidaGameUpdate(omObjData *obj) { - Bss720Data *temp_r31; - Vec sp18; - Vec spC; - float var_f28; - u16 var_r27; - u16 var_r29; + SpaceAmidaGameWork *work; + Vec rocketPos; + Vec playerPos; + float jumpDist; + u16 btn; + u16 stkBtn; - temp_r31 = arg0->data; - if ((--lbl_1_bss_748) == 0) { - if ((--lbl_1_bss_74C) >= 0) { - MGSeqParamSet(lbl_1_bss_744, 1, lbl_1_bss_74C); + work = obj->data; + if ((--timerFrame) == 0) { + if ((--timerSec) >= 0) { + MGSeqParamSet(timerSeqId, 1, timerSec); } - lbl_1_bss_748 = REFRESH_RATE; + timerFrame = REFRESH_RATE; } - if (GWPlayerCfg[lbl_1_bss_798].iscom == 1) { - fn_1_B1CC(arg0, &var_r29, &var_r27); + if (GWPlayerCfg[spaceAmidaPlayerNo].iscom == 1) { + SpaceAmidaComInputGet(obj, &stkBtn, &btn); } else { - var_r29 = HuPadDStkRep[lbl_1_bss_79C]; - var_r27 = HuPadBtnDown[lbl_1_bss_79C]; + stkBtn = HuPadDStkRep[spaceAmidaPadNo]; + btn = HuPadBtnDown[spaceAmidaPadNo]; } - if ((var_r29 & 1) && lbl_1_bss_730 != 0) { - lbl_1_bss_714[lbl_1_bss_730]->work[1] = 1; - lbl_1_bss_714[lbl_1_bss_730]->work[2] = 2; - lbl_1_bss_730--; - lbl_1_bss_714[lbl_1_bss_730]->work[2] = 1; + if ((stkBtn & PAD_BUTTON_LEFT) && spaceAmidaPath != 0) { + rocketObj[spaceAmidaPath]->work[1] = 1; + rocketObj[spaceAmidaPath]->work[2] = 2; + spaceAmidaPath--; + rocketObj[spaceAmidaPath]->work[2] = 1; } - if ((var_r29 & 2) && lbl_1_bss_730 != 2) { - lbl_1_bss_714[lbl_1_bss_730]->work[1] = 1; - lbl_1_bss_714[lbl_1_bss_730]->work[2] = 2; - lbl_1_bss_730++; - lbl_1_bss_714[lbl_1_bss_730]->work[2] = 1; + if ((stkBtn & PAD_BUTTON_RIGHT) && spaceAmidaPath != 2) { + rocketObj[spaceAmidaPath]->work[1] = 1; + rocketObj[spaceAmidaPath]->work[2] = 2; + spaceAmidaPath++; + rocketObj[spaceAmidaPath]->work[2] = 1; } - BoardModelPosGet(lbl_1_bss_78A[lbl_1_bss_730], &sp18); - BoardPlayerPosGet(lbl_1_bss_798, &spC); - fn_1_CB44(&sp18, 0.0f); - temp_r31->unk04 = sp18; - if (lbl_1_bss_74C < 0 || (var_r27 & 0x100)) { - MGSeqParamSet(lbl_1_bss_744, 2, -1); - lbl_1_bss_714[lbl_1_bss_730]->work[1] = 1; - BoardPlayerPosGet(lbl_1_bss_798, &spC); - var_f28 = VECDistanceXZ(&temp_r31->unk04, &spC); - fn_1_C94C(&spC, &temp_r31->unk04, &temp_r31->unk10); - temp_r31->unk10.y = 0.0f; - temp_r31->unk10.x *= var_f28 / 30.0f; - temp_r31->unk10.z *= var_f28 / 30.0f; - temp_r31->unk00 = 0; - temp_r31->unk20 = 0.0f; - arg0->func = fn_1_BAF8; + BoardModelPosGet(rocketMdlId[spaceAmidaPath], &rocketPos); + BoardPlayerPosGet(spaceAmidaPlayerNo, &playerPos); + SpaceAmidaPlayerRotAdd(&rocketPos, 0.0f); + work->rocketPos = rocketPos; + if (timerSec < 0 || (btn & PAD_BUTTON_A)) { + MGSeqParamSet(timerSeqId, 2, -1); + rocketObj[spaceAmidaPath]->work[1] = 1; + BoardPlayerPosGet(spaceAmidaPlayerNo, &playerPos); + jumpDist = VECDistanceXZ(&work->rocketPos, &playerPos); + SpaceAmidaDirGet(&playerPos, &work->rocketPos, &work->jumpDir); + work->jumpDir.y = 0.0f; + work->jumpDir.x *= jumpDist / 30.0f; + work->jumpDir.z *= jumpDist / 30.0f; + work->unk00 = 0; + work->jumpTime = 0.0f; + obj->func = SpaceAmidaRocketJump; } } -static void fn_1_BAF8(omObjData *arg0) +static void SpaceAmidaRocketJump(omObjData *obj) { - Bss720Data *temp_r31; - Vec sp14; - Vec sp8; + SpaceAmidaGameWork *work; + Vec playerPos; + Vec rocketPos; - temp_r31 = arg0->data; - if (lbl_1_bss_714[lbl_1_bss_730]->work[2] != 0) { + work = obj->data; + if (rocketObj[spaceAmidaPath]->work[2] != 0) { return; } - BoardPlayerMotionStart(lbl_1_bss_798, 4, 0); - BoardPlayerPosGet(lbl_1_bss_798, &sp14); - sp14.x += temp_r31->unk10.x; - sp14.z += temp_r31->unk10.z; - sp14.y = lbl_1_bss_738.y + 80.0 * sind(6.0f * temp_r31->unk20); - BoardModelPosGet(lbl_1_bss_714[lbl_1_bss_730]->work[0], &sp8); - if ((temp_r31->unk20 += 1.0f) == 30.0f) { - sp14.y = sp8.y + 5.0f; - BoardPlayerPosSetV(lbl_1_bss_798, &sp14); - BoardPlayerMotionShiftSet(lbl_1_bss_798, 2, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - arg0->func = fn_1_BCDC; + BoardPlayerMotionStart(spaceAmidaPlayerNo, 4, 0); + BoardPlayerPosGet(spaceAmidaPlayerNo, &playerPos); + playerPos.x += work->jumpDir.x; + playerPos.z += work->jumpDir.z; + playerPos.y = spaceAmidaPos.y + 80.0 * sind(6.0f * work->jumpTime); + BoardModelPosGet(rocketObj[spaceAmidaPath]->work[0], &rocketPos); + if ((++work->jumpTime) == 30.0f) { + playerPos.y = rocketPos.y + 5.0f; + BoardPlayerPosSetV(spaceAmidaPlayerNo, &playerPos); + BoardPlayerMotionShiftSet(spaceAmidaPlayerNo, 2, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + obj->func = SpaceAmidaRocketKemuriExec; } - BoardPlayerPosSetV(lbl_1_bss_798, &sp14); + BoardPlayerPosSetV(spaceAmidaPlayerNo, &playerPos); } -static void fn_1_BCDC(omObjData *arg0) +static void SpaceAmidaRocketKemuriExec(omObjData *obj) { - Bss720Data *temp_r29; - Bss714Data *temp_r31; - Vec sp14; - Vec sp8; + SpaceAmidaGameWork *work; + RocketWork *rocketWork; + Vec playerPos; + Vec kemuriPos; - temp_r29 = arg0->data; - BoardPlayerPosGet(lbl_1_bss_798, &sp14); - sp8 = sp14; - sp8.z += 100.0f; - if (fn_1_CB44(&sp8, 10.0f) == 1) { - BoardPlayerMotionShiftSet(lbl_1_bss_798, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - temp_r29->unk1C = 90; - lbl_1_bss_710->work[0] = 1; - lbl_1_bss_714[lbl_1_bss_730]->work[2] = 3; - temp_r31 = lbl_1_bss_714[lbl_1_bss_730]->data; - Hu3DModelAttrReset(lbl_1_bss_750, HU3D_ATTR_DISPOFF); - Hu3DModelPosSet(lbl_1_bss_750, sp14.x, sp14.y, sp14.z); - temp_r31->unk20.x = 1.4f; - temp_r31->unk20.y = 1.4f; - temp_r31->unk20.z = 1.4f; - temp_r31->unk2C.x = 0.055999998f; - temp_r31->unk2C.y = 0.08088889f; - temp_r31->unk2C.z = 0.055999998f; - temp_r31->unk38 = 1.0f; - temp_r31->unk3C = 0.0f; - Hu3DModelScaleSet(lbl_1_bss_750, 1.4f, 1.4f, 1.4f); - arg0->func = fn_1_BF00; + work = obj->data; + BoardPlayerPosGet(spaceAmidaPlayerNo, &playerPos); + kemuriPos = playerPos; + kemuriPos.z += 100.0f; + if (SpaceAmidaPlayerRotAdd(&kemuriPos, 10.0f) == 1) { + BoardPlayerMotionShiftSet(spaceAmidaPlayerNo, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + work->waitTime = 90; + spaceAmidaEffObj->work[0] = 1; + rocketObj[spaceAmidaPath]->work[2] = 3; + rocketWork = rocketObj[spaceAmidaPath]->data; + Hu3DModelAttrReset(kemuriMdlId, HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(kemuriMdlId, playerPos.x, playerPos.y, playerPos.z); + rocketWork->kemuriScale.x = 1.4f; + rocketWork->kemuriScale.y = 1.4f; + rocketWork->kemuriScale.z = 1.4f; + rocketWork->kemuriScaleVel.x = 0.055999998f; + rocketWork->kemuriScaleVel.y = 0.08088889f; + rocketWork->kemuriScaleVel.z = 0.055999998f; + rocketWork->kemuriTPLvl = 1.0f; + rocketWork->unk3C = 0.0f; + Hu3DModelScaleSet(kemuriMdlId, 1.4f, 1.4f, 1.4f); + obj->func = SpaceAmidaRocketWait; } } -static void fn_1_BF00(omObjData *arg0) +static void SpaceAmidaRocketWait(omObjData *obj) { - Bss720Data *temp_r31; + SpaceAmidaGameWork *work; - temp_r31 = arg0->data; - if (temp_r31->unk1C == 0) { - lbl_1_bss_714[lbl_1_bss_730]->work[2] = 4; - arg0->func = fn_1_BF68; + work = obj->data; + if (work->waitTime == 0) { + rocketObj[spaceAmidaPath]->work[2] = 4; + obj->func = SpaceAmidaRocketUp; } else { - temp_r31->unk1C--; + work->waitTime--; } } -static void fn_1_BF68(omObjData *arg0) +static void SpaceAmidaRocketUp(omObjData *obj) { - Bss720Data *sp8; + SpaceAmidaGameWork *work; - sp8 = arg0->data; - if (lbl_1_bss_714[lbl_1_bss_730]->work[2] == 6) { - lbl_1_bss_75C = HuPrcCreate(fn_1_C000, 0x2004, 0x1000, 0); - lbl_1_bss_75C->user_data = arg0; - arg0->func = NULL; + work = obj->data; + if (rocketObj[spaceAmidaPath]->work[2] == 6) { + coinWinProc = HuPrcCreate(SpaceAmidaCoinWin, 0x2004, 0x1000, 0); + coinWinProc->user_data = obj; + obj->func = NULL; } } -static void fn_1_C000(void) +static void SpaceAmidaCoinWin(void) { - char sp8[16]; // array size may range between 1 and 16 (inclusive) - omObjData *temp_r30; - Bss720Data *temp_r31; + char mess[16]; // array size may range between 1 and 16 (inclusive) + omObjData *obj; + SpaceAmidaGameWork *work; BoardAudSeqFadeOut(1, 100); - sprintf(&sp8, "%d", lbl_1_bss_728); + sprintf(&mess, "%d", spaceAmidaCoinNum); BoardWinCreate(2, MAKE_MESSID(11, 6), 0); - BoardWinInsertMesSet(MAKE_MESSID_PTR(sp8), 0); + BoardWinInsertMesSet(MAKE_MESSID_PTR(mess), 0); BoardWinWait(); BoardWinKill(); - temp_r30 = HuPrcCurrentGet()->user_data; - temp_r31 = temp_r30->data; - temp_r31->unk10.x = 0.0f; - temp_r31->unk10.y = 10.0f; - temp_r31->unk10.z = 3.0f; - temp_r31->unk20 = 0.0f; - BoardPlayerMotionShiftSet(lbl_1_bss_798, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - temp_r30->func = fn_1_C0FC; + obj = HuPrcCurrentGet()->user_data; + work = obj->data; + work->jumpDir.x = 0.0f; + work->jumpDir.y = 10.0f; + work->jumpDir.z = 3.0f; + work->jumpTime = 0.0f; + BoardPlayerMotionShiftSet(spaceAmidaPlayerNo, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + obj->func = SpaceAmidaJumpDown; HuPrcKill(NULL); while (TRUE) { HuPrcVSleep(); } } -static void fn_1_C0FC(omObjData *arg0) +static void SpaceAmidaJumpDown(omObjData *obj) { - Bss720Data *temp_r31; - Vec sp8; + SpaceAmidaGameWork *work; + Vec pos; - temp_r31 = arg0->data; - BoardPlayerPosGet(lbl_1_bss_798, &sp8); - sp8.x += temp_r31->unk10.x; - sp8.y += temp_r31->unk10.y - 0.029166667f * temp_r31->unk20 * temp_r31->unk20; - sp8.z += temp_r31->unk10.z; - temp_r31->unk20 += 1.0f; - if (sp8.y <= lbl_1_bss_738.y) { - BoardPlayerMotionShiftSet(lbl_1_bss_798, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); - sp8.y = lbl_1_bss_738.y; - lbl_1_bss_75C = HuPrcCreate(fn_1_C25C, 0x2004, 0x1000, 0); - lbl_1_bss_75C->user_data = arg0; - arg0->func = NULL; + work = obj->data; + BoardPlayerPosGet(spaceAmidaPlayerNo, &pos); + pos.x += work->jumpDir.x; + pos.y += work->jumpDir.y - 0.029166667f * work->jumpTime * work->jumpTime; + pos.z += work->jumpDir.z; + work->jumpTime += 1.0f; + if (pos.y <= spaceAmidaPos.y) { + BoardPlayerMotionShiftSet(spaceAmidaPlayerNo, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + pos.y = spaceAmidaPos.y; + coinWinProc = HuPrcCreate(SpaceAmidaCoinRainMain, 0x2004, 0x1000, 0); + coinWinProc->user_data = obj; + obj->func = NULL; } - BoardPlayerPosSetV(lbl_1_bss_798, &sp8); + BoardPlayerPosSetV(spaceAmidaPlayerNo, &pos); } -static void fn_1_C25C(void) +static void SpaceAmidaCoinRainMain(void) { - Vec sp11C[20]; - Vec sp2C[20]; - Vec sp20; - Vec sp14; - Vec sp8; - float var_f31; - s16 var_r30; + Vec coinPos[20]; + Vec coinRot[20]; + Vec playerPos; + Vec scale; + Vec coinEffPos; + float velY; + s16 coinNum; s16 i; - var_r30 = 0; - BoardPlayerPosGet(lbl_1_bss_798, &sp20); - sp14.x = sp14.y = sp14.z = 1.0f; - for (i = 0; i < lbl_1_bss_728; i++) { - BoardModelVisibilitySet(lbl_1_bss_760[i], 1); - sp11C[i] = sp20; - sp11C[i].y += 600.0f + i * 120; - sp11C[i].x += -25.0f + 50.0f * frand8() * 0.003921569f; - sp11C[i].z += -25.0f + 50.0f * frand8() * 0.003921569f; - sp2C[i].x = sp2C[i].z = 0.0f; - sp2C[i].y = 360.0f * frand8() * 0.003921569f; - BoardModelPosSetV(lbl_1_bss_760[i], &sp11C[i]); - BoardModelScaleSetV(lbl_1_bss_760[i], &sp14); - BoardModelRotSetV(lbl_1_bss_760[i], &sp2C[i]); + coinNum = 0; + BoardPlayerPosGet(spaceAmidaPlayerNo, &playerPos); + scale.x = scale.y = scale.z = 1.0f; + for (i = 0; i < spaceAmidaCoinNum; i++) { + BoardModelVisibilitySet(coinMdlId[i], 1); + coinPos[i] = playerPos; + coinPos[i].y += 600.0f + i * 120; + coinPos[i].x += -25.0f + 50.0f * frand8() * 0.003921569f; + coinPos[i].z += -25.0f + 50.0f * frand8() * 0.003921569f; + coinRot[i].x = coinRot[i].z = 0.0f; + coinRot[i].y = 360.0f * frand8() * 0.003921569f; + BoardModelPosSetV(coinMdlId[i], &coinPos[i]); + BoardModelScaleSetV(coinMdlId[i], &scale); + BoardModelRotSetV(coinMdlId[i], &coinRot[i]); } - var_f31 = -1.0f; + velY = -1.0f; while (TRUE) { - for (i = 0; i < lbl_1_bss_728; i++) { - if (i >= var_r30) { - sp11C[i].y += var_f31; - BoardModelPosSetV(lbl_1_bss_760[i], &sp11C[i]); - sp2C[i].y += 45.0f; - if (sp2C[i].y >= 360.0f) { - sp2C[i].y -= 360.0f; + for (i = 0; i < spaceAmidaCoinNum; i++) { + if (i >= coinNum) { + coinPos[i].y += velY; + BoardModelPosSetV(coinMdlId[i], &coinPos[i]); + coinRot[i].y += 45.0f; + if (coinRot[i].y >= 360.0f) { + coinRot[i].y -= 360.0f; } - BoardModelRotSetV(lbl_1_bss_760[i], &sp2C[i]); - if (sp11C[i].y <= sp20.y + 80.0f) { - sp8 = sp11C[i]; - CharModelCoinEffectCreate(1, &sp8); - BoardModelVisibilitySet(lbl_1_bss_760[i], 0); - var_r30++; - BoardPlayerCoinsAdd(lbl_1_bss_798, 1); + BoardModelRotSetV(coinMdlId[i], &coinRot[i]); + if (coinPos[i].y <= playerPos.y + 80.0f) { + Vec pos = coinPos[i]; + CharModelCoinEffectCreate(1, &pos); + BoardModelVisibilitySet(coinMdlId[i], 0); + coinNum++; + BoardPlayerCoinsAdd(spaceAmidaPlayerNo, 1); HuAudFXPlay(7); - omVibrate(lbl_1_bss_798, 0xC, 6, 6); + omVibrate(spaceAmidaPlayerNo, 0xC, 6, 6); } } } - var_f31 *= 1.05f; - if (var_f31 < -20.0f) { - var_f31 = -20.0f; + velY *= 1.05f; + if (velY < -20.0f) { + velY = -20.0f; } - if (var_r30 == lbl_1_bss_728) { - BoardPlayerMotionShiftSet(lbl_1_bss_798, 7, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + if (coinNum == spaceAmidaCoinNum) { + BoardPlayerMotionShiftSet(spaceAmidaPlayerNo, 7, 0.0f, 10.0f, HU3D_MOTATTR_NONE); break; } HuPrcVSleep(); } - while (!BoardPlayerMotionEndCheck(lbl_1_bss_798)) { + while (!BoardPlayerMotionEndCheck(spaceAmidaPlayerNo)) { HuPrcVSleep(); } - lbl_1_bss_75C = HuPrcCreate(fn_1_C844, 0x2004, 0x1000, 0); - lbl_1_bss_75C->user_data = HuPrcCurrentGet()->user_data; + coinWinProc = HuPrcCreate(SpaceAmidaReturnWinMain, 0x2004, 0x1000, 0); + coinWinProc->user_data = HuPrcCurrentGet()->user_data; HuPrcKill(NULL); while (TRUE) { HuPrcVSleep(); } } -static void fn_1_C844(void) +static void SpaceAmidaReturnWinMain(void) { - omObjData *var_r31; + omObjData *obj; BoardWinCreate(2, MAKE_MESSID(11, 7), 0); BoardWinWait(); BoardWinKill(); - var_r31 = HuPrcCurrentGet()->user_data; - var_r31->func = fn_1_C894; + obj = HuPrcCurrentGet()->user_data; + obj->func = SpaceAmidaGameStop; HuPrcKill(NULL); while (TRUE) { HuPrcVSleep(); } } -static void fn_1_C894(omObjData *arg0) +static void SpaceAmidaGameStop(omObjData *obj) { - float temp_f31; - - lbl_1_bss_72A = 1; - BoardMGExit(); - temp_f31 = BoardModelMotionTimeGet(lbl_1_bss_796); - lbl_1_bss_754 = temp_f31; - BoardModelMotionStart(lbl_1_bss_796, 0, 0); - BoardModelMotionTimeSet(lbl_1_bss_796, temp_f31); - BoardModelMotionSpeedSet(lbl_1_bss_796, -1.0f); - omDelObjEx(HuPrcCurrentGet(), arg0); + SpaceAmidaStop(); + omDelObjEx(HuPrcCurrentGet(), obj); } -static void fn_1_C94C(Vec *arg0, Vec *arg1, Vec *arg2) +static void SpaceAmidaDirGet(Vec *b, Vec *a, Vec *result) { - VECSubtract(arg1, arg0, arg2); - VECNormalize(arg2, arg2); + VECSubtract(a, b, result); + VECNormalize(result, result); } -static float fn_1_C998(Vec *arg0) +static float SpaceAmidaAngleGet(Vec *dir) { - float temp_f31; + float angle; - if (arg0->x || arg0->z) { - if (arg0->x == 0.0f) { - if (arg0->z > 0.0f) { + if (dir->x || dir->z) { + if (dir->x == 0.0f) { + if (dir->z > 0.0f) { return 0.0f; } else { return 180.0f; } } - if (arg0->z == 0.0f) { - if (arg0->x > 0.0f) { + if (dir->z == 0.0f) { + if (dir->x > 0.0f) { return 90.0f; } else { return 270.0f; } } - temp_f31 = atan2d(arg0->z, arg0->x); - if (arg0->z < 0.0f) { - temp_f31 = 90.0f - temp_f31; + angle = atan2d(dir->z, dir->x); + if (dir->z < 0.0f) { + angle = 90.0f - angle; } else { - temp_f31 = 90.0f - temp_f31; - if (temp_f31 < 0.0f) { - temp_f31 += 360.0f; + angle = 90.0f - angle; + if (angle < 0.0f) { + angle += 360.0f; } } - return temp_f31; + return angle; } return -1.0f; } -static u32 fn_1_CB44(Vec *arg0, float arg1) +static u32 SpaceAmidaPlayerRotAdd(Vec *rocketPos, float delta) { - Vec sp24; - Vec sp18; - Vec spC; - float var_f28; - float var_f30; - float var_f31; + Vec dir; + Vec playerPos; + Vec playerRot; + float rocketAngle; + float angleDelta; + float rotY; - BoardPlayerPosGet(lbl_1_bss_798, &sp18); - VECSubtract(arg0, &sp18, &sp24); - VECNormalize(&sp24, &sp24); - var_f28 = fn_1_C998(&sp24); - BoardPlayerRotGet(lbl_1_bss_798, &spC); - var_f31 = spC.y; - var_f30 = var_f28 - var_f31; - if (arg1 == 0.0f) { - var_f31 = var_f28; + BoardPlayerPosGet(spaceAmidaPlayerNo, &playerPos); + SpaceAmidaDirGet(&playerPos, rocketPos, &dir); + rocketAngle = SpaceAmidaAngleGet(&dir); + BoardPlayerRotGet(spaceAmidaPlayerNo, &playerRot); + rotY = playerRot.y; + angleDelta = rocketAngle - rotY; + if (delta == 0.0f) { + rotY = rocketAngle; } - else if (fabs(var_f30) > arg1) { - if (var_f30 < 0.0f) { - var_f30 += 360.0f; + else if (fabs(angleDelta) > delta) { + if (angleDelta < 0.0f) { + angleDelta += 360.0f; } - if (var_f30 < 180.0f) { - if (var_f30 > arg1) { - var_f31 += arg1; + if (angleDelta < 180.0f) { + if (angleDelta > delta) { + rotY += delta; } else { - var_f31 += var_f30; + rotY += angleDelta; } } - else if (360.0f - var_f30 > arg1) { - var_f31 -= arg1; + else if (360.0f - angleDelta > delta) { + rotY -= delta; } else { - var_f31 -= 360.0f - var_f30; + rotY -= 360.0f - angleDelta; } } else { - var_f31 = var_f28; + rotY = rocketAngle; } - if (var_f31 >= 360.0f) { - var_f31 -= 360.0f; + if (rotY >= 360.0f) { + rotY -= 360.0f; } - if (var_f31 < 0.0f) { - var_f31 += 360.0f; + if (rotY < 0.0f) { + rotY += 360.0f; } - BoardPlayerRotYSet(lbl_1_bss_798, var_f31); - if (var_f31 == var_f28) { - return 1; + BoardPlayerRotYSet(spaceAmidaPlayerNo, rotY); + if (rotY == rocketAngle) { + return TRUE; } else { - return 0; + return FALSE; } } -static void fn_1_CEC4(void) +static void SpaceAmidaEffCreate(void) { - lbl_1_bss_70C = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_W01, 20)); - lbl_1_bss_710 = omAddObjEx(boardObjMan, 0x101, 1, 0, -1, fn_1_D07C); - lbl_1_bss_710->data = HuMemDirectMallocNum(HEAP_SYSTEM, 12, MEMORY_DEFAULT_NUM); - lbl_1_bss_710->model[0] = Hu3DParticleCreate(lbl_1_bss_70C, 0x320); - Hu3DParticleColSet(lbl_1_bss_710->model[0], 0xFF, 0, 0); - Hu3DParticleScaleSet(lbl_1_bss_710->model[0], 5.0f); - Hu3DParticleHookSet(lbl_1_bss_710->model[0], fn_1_D114); - Hu3DParticleBlendModeSet(lbl_1_bss_710->model[0], 1); - Hu3DModelAttrSet(lbl_1_bss_710->model[0], HU3D_ATTR_DISPOFF); - lbl_1_bss_710->work[0] = 0; + spaceAmidaEffAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_W01, 20)); + spaceAmidaEffObj = omAddObjEx(boardObjMan, 0x101, 1, 0, -1, SpaceAmidaEffUpdate); + spaceAmidaEffObj->data = HuMemDirectMallocNum(HEAP_SYSTEM, 12, MEMORY_DEFAULT_NUM); + spaceAmidaEffObj->model[0] = Hu3DParticleCreate(spaceAmidaEffAnim, 0x320); + Hu3DParticleColSet(spaceAmidaEffObj->model[0], 255, 0, 0); + Hu3DParticleScaleSet(spaceAmidaEffObj->model[0], 5.0f); + Hu3DParticleHookSet(spaceAmidaEffObj->model[0], SpaceAmidaEffParticleHook); + Hu3DParticleBlendModeSet(spaceAmidaEffObj->model[0], 1); + Hu3DModelAttrSet(spaceAmidaEffObj->model[0], HU3D_ATTR_DISPOFF); + spaceAmidaEffObj->work[0] = 0; } -static void fn_1_D034(void) +static void SpaceAmidaEffKill(void) { - Hu3DModelKill(lbl_1_bss_710->model[0]); - omDelObjEx(HuPrcCurrentGet(), lbl_1_bss_710); + Hu3DModelKill(spaceAmidaEffObj->model[0]); + omDelObjEx(HuPrcCurrentGet(), spaceAmidaEffObj); } -static void fn_1_D07C(omObjData *arg0) +static void SpaceAmidaEffUpdate(omObjData *obj) { - void *sp8; + void *work; - sp8 = arg0->data; - switch (arg0->work[0]) { + work = obj->data; + switch (obj->work[0]) { case 0: break; case 1: - arg0->work[0] = 2; - Hu3DModelAttrReset(arg0->model[0], HU3D_ATTR_DISPOFF); - Hu3DModelScaleSet(arg0->model[0], 10.0f, 10.0f, 10.0f); + obj->work[0] = 2; + Hu3DModelAttrReset(obj->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(obj->model[0], 10.0f, 10.0f, 10.0f); break; case 2: break; } } -static void fn_1_D114(ModelData *model, ParticleData *particle, Mtx matrix) +static void SpaceAmidaEffParticleHook(ModelData *model, ParticleData *particle, Mtx matrix) { - Bss714Data *temp_r28; - HsfanimStruct01 *var_r31; - Vec sp8; - float temp_f31; + RocketWork *work; + HsfanimStruct01 *particleDataP; + Vec pos; + float size; s32 i; s32 j; - s32 temp_r26; + s32 relSize; - BoardModelPosGet(lbl_1_bss_714[lbl_1_bss_730]->work[0], &sp8); - temp_r28 = lbl_1_bss_714[lbl_1_bss_730]->data; + BoardModelPosGet(rocketObj[spaceAmidaPath]->work[0], &pos); + work = rocketObj[spaceAmidaPath]->data; if (particle->unk_34 == 0) { - var_r31 = particle->unk_48; - for (i = 0; i < particle->unk_30; i++, var_r31++) { - var_r31->unk2C = 0.0f; + particleDataP = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, particleDataP++) { + particleDataP->unk2C = 0.0f; } particle->unk_1C = (void *)1; } - if (temp_r28->unk1C > 0.0f) { - for (i = 0; i < 80.0f * temp_r28->unk1C; i++) { - var_r31 = particle->unk_48; - for (j = 0; j < particle->unk_30; j++, var_r31++) { - if (var_r31->unk2C == 0.0f) { + if (work->kemuriSize > 0.0f) { + for (i = 0; i < 80.0f * work->kemuriSize; i++) { + particleDataP = particle->unk_48; + for (j = 0; j < particle->unk_30; j++, particleDataP++) { + if (particleDataP->unk2C == 0.0f) { break; } } if (j != particle->unk_30) { - temp_r26 = frand16(); - temp_f31 = (-15.0f + 30.0f * (temp_r26 / 65536.0f)) * temp_r28->unk1C; - var_r31->unk08.x = sp8.x + temp_f31; - var_r31->unk08.y = sp8.y; - var_r31->unk08.z = sp8.z; - var_r31->unk14.x = 255.0f; - var_r31->unk14.y = 155.0f; - var_r31->unk14.z = 55.0f; - var_r31->unk40.a = 0xFF; - var_r31->unk20 = 0.0f; - var_r31->unk24 = temp_r28->unk1C * (-3.0 + (2.0 * (fabs(temp_f31) / 15.0))); - var_r31->unk28 = 0.0f; - var_r31->unk2C = 7.3f; + relSize = frand16(); + size = (-15.0f + 30.0f * (relSize / 65536.0f)) * work->kemuriSize; + particleDataP->unk08.x = pos.x + size; + particleDataP->unk08.y = pos.y; + particleDataP->unk08.z = pos.z; + particleDataP->unk14.x = 255.0f; + particleDataP->unk14.y = 155.0f; + particleDataP->unk14.z = 55.0f; + particleDataP->unk40.a = 0xFF; + particleDataP->unk20 = 0.0f; + particleDataP->unk24 = work->kemuriSize * (-3.0 + (2.0 * (fabs(size) / 15.0))); + particleDataP->unk28 = 0.0f; + particleDataP->unk2C = 7.3f; } } } - var_r31 = particle->unk_48; - for (i = 0; i < particle->unk_30; i++, var_r31++) { - if (var_r31->unk2C == 0.0f) { + particleDataP = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, particleDataP++) { + if (particleDataP->unk2C == 0.0f) { continue; } - var_r31->unk34.x = var_r31->unk08.x; - var_r31->unk34.y = var_r31->unk08.y; - var_r31->unk34.z = var_r31->unk08.z; - var_r31->unk08.x += var_r31->unk20; - var_r31->unk08.y += var_r31->unk24; - var_r31->unk08.z += var_r31->unk28; - if (var_r31->unk08.y <= lbl_1_bss_738.y) { - var_r31->unk08.y = lbl_1_bss_738.y; - var_r31->unk24 = -var_r31->unk24 - 0.3f; - if (var_r31->unk24 < 0.0f) { - var_r31->unk24 = 0.0f; + particleDataP->unk34.x = particleDataP->unk08.x; + particleDataP->unk34.y = particleDataP->unk08.y; + particleDataP->unk34.z = particleDataP->unk08.z; + particleDataP->unk08.x += particleDataP->unk20; + particleDataP->unk08.y += particleDataP->unk24; + particleDataP->unk08.z += particleDataP->unk28; + if (particleDataP->unk08.y <= spaceAmidaPos.y) { + particleDataP->unk08.y = spaceAmidaPos.y; + particleDataP->unk24 = -particleDataP->unk24 - 0.3f; + if (particleDataP->unk24 < 0.0f) { + particleDataP->unk24 = 0.0f; } - temp_r26 = 80.0f * (2.0f * ((sp8.x - var_r31->unk08.x) / 15.0f) - rand8() / 255.0f); - var_r31->unk20 = 8.0 * sind(temp_r26); - var_r31->unk28 = 8.0 * cosd(temp_r26); + relSize = 80.0f * (2.0f * ((pos.x - particleDataP->unk08.x) / 15.0f) - rand8() / 255.0f); + particleDataP->unk20 = 8.0 * sind(relSize); + particleDataP->unk28 = 8.0 * cosd(relSize); } - var_r31->unk24 -= 0.35f; - if ((var_r31->unk14.x -= 25.5f) < 0.0f) { - var_r31->unk14.x = 0.0f; + particleDataP->unk24 -= 0.35f; + if ((particleDataP->unk14.x -= 25.5f) < 0.0f) { + particleDataP->unk14.x = 0.0f; } - if ((var_r31->unk14.y -= 36.42857f) < 0.0f) { - var_r31->unk14.y = 0.0f; + if ((particleDataP->unk14.y -= 36.42857f) < 0.0f) { + particleDataP->unk14.y = 0.0f; } - if ((var_r31->unk14.z -= 63.75f) < 0.0f) { - var_r31->unk14.z = 0.0f; + if ((particleDataP->unk14.z -= 63.75f) < 0.0f) { + particleDataP->unk14.z = 0.0f; } - var_r31->unk40.r = var_r31->unk14.x; - var_r31->unk40.g = var_r31->unk14.y; - var_r31->unk40.b = var_r31->unk14.z; - if (var_r31->unk40.r == 0 && var_r31->unk40.g == 0 && var_r31->unk40.b == 0) { - var_r31->unk2C = 0.0f; + particleDataP->unk40.r = particleDataP->unk14.x; + particleDataP->unk40.g = particleDataP->unk14.y; + particleDataP->unk40.b = particleDataP->unk14.z; + if (particleDataP->unk40.r == 0 && particleDataP->unk40.g == 0 && particleDataP->unk40.b == 0) { + particleDataP->unk2C = 0.0f; } } } diff --git a/src/REL/w01Dll/mg_item.c b/src/REL/w01Dll/mg_item.c index 6830c410..6a61927a 100755 --- a/src/REL/w01Dll/mg_item.c +++ b/src/REL/w01Dll/mg_item.c @@ -25,63 +25,63 @@ #include "dolphin.h" #include "ext_math.h" -static void fn_1_E100(void); -static void fn_1_E154(void); -static void fn_1_E2B8(omObjData *arg0); -static void fn_1_E44C(omObjData *arg0); -static void fn_1_E914(omObjData *arg0); -static void fn_1_ECD4(omObjData *arg0); -static void fn_1_EEA0(omObjData *arg0, u16 *arg1); -static void fn_1_EED8(omObjData *arg0); -static void fn_1_F09C(omObjData *arg0); -static void fn_1_F348(omObjData *arg0); -static void fn_1_F3F8(omObjData *arg0); -static void fn_1_F6E8(omObjData *arg0); -static void fn_1_F890(omObjData *arg0); -static void fn_1_FA1C(omObjData *arg0); -static void fn_1_FABC(omObjData *arg0); -static void fn_1_FB58(void); -static void fn_1_FC3C(omObjData *arg0); -static void fn_1_FCEC(void); -static void fn_1_FD3C(omObjData *arg0); -static void fn_1_FE44(omObjData *arg0); -static void fn_1_FED0(omObjData *arg0); -static s16 fn_1_1001C(u32 arg0); -static void fn_1_101B8(s16 arg0); -static void fn_1_10664(omObjData *arg0); -static void fn_1_10820(omObjData *arg0); -static void fn_1_10AE8(omObjData *arg0); -static float fn_1_10BB0(u32 arg0); -static void fn_1_10CF0(u32 arg0); -static float fn_1_10EB8(Vec *arg0); -static void fn_1_11064(ModelData *model, ParticleData *particle, Mtx matrix); -static void fn_1_11484(ModelData *model, ParticleData *particle, Mtx matrix); +static void RoundItemEnd(void); +static void RoundItemClose(void); +static void RoundItemMainUpdate(omObjData *obj); +static void RoundItemUmaStop(omObjData *obj); +static void RoundItemPlayerJump(omObjData *obj); +static void RoundItemStartWait(omObjData *obj); +static void RoundItemComInputGet(omObjData *obj, u16 *btn); +static void RoundItemInputWait(omObjData *obj); +static void RoundItemStop(omObjData *obj); +static void RoundItemLightFlicker(omObjData *obj); +static void RoundItemUmaJumpWait(omObjData *obj); +static void RoundItemUmaJump(omObjData *obj); +static void RoundItemRotatePlayer(omObjData *obj); +static void RoundItemStreamWait(omObjData *obj); +static void RoundItemWinWait(omObjData *obj); +static void ItemGetWinExec(void); +static void ItemGetShrinkWait(omObjData *obj); +static void ItemGetReturnWinExec(void); +static void RoundItemGameClose(omObjData *obj); +static void RoundItemGameEnd(omObjData *obj); +static void RoundItemItemUpdate(omObjData *obj); +static s16 RoundItemItemGet(u32 umaNo); +static void ItemGetCreate(s16 itemNo); +static void ItemGetObjUpdate(omObjData *obj); +static void ItemGetPlayerMove(omObjData *obj); +static void ItemGetShrink(omObjData *obj); +static float RoundItemUmaRotYGet(u32 umaNo); +static void RoundItemUmaPlayerSet(u32 umaNo); +static float RoundItemAngleGet(Vec *arg0); +static void ItemGetEff1Hook(ModelData *model, ParticleData *particle, Mtx matrix); +static void ItemGetEff2Hook(ModelData *model, ParticleData *particle, Mtx matrix); -static void *lbl_1_bss_818; -static Vec lbl_1_bss_80C; -static omObjData *lbl_1_bss_7FC[4]; -static omObjData *lbl_1_bss_7F8; -static omObjData *lbl_1_bss_7F4; -static omObjData *lbl_1_bss_7F0; -static float lbl_1_bss_7EC; -static float lbl_1_bss_7E8; -static s32 lbl_1_bss_7E4; -static Vec lbl_1_bss_7D8; -static s16 lbl_1_bss_7D6; -static s16 lbl_1_bss_7D4; -static s16 lbl_1_bss_7D2; -static s16 lbl_1_bss_7D0; -static Vec lbl_1_bss_7C4; +static void *itemAnim; +static Vec roundItemPos; +static omObjData *itemObj[4]; +static omObjData *roundItemUmaObj; +static omObjData *roundItemMainObj; +static omObjData *itemGetObj; +static float umaSpeed; +static float borderSpeed; +static s32 roundItemPlayer; +static Vec umaPos; +static s16 seqStartId; +static s16 timerSeqId; +static s16 timerSec; +static s16 timerFrame; +static Vec roundItemPlayerPos; static s32 lbl_1_bss_7C0_pad; -static s32 lbl_1_bss_7BC; -static s32 lbl_1_bss_7B8; -static s16 lbl_1_bss_7B4; +static s32 itemGetMotId; +static s32 jumpMotId; +static s16 umaStopF; static s32 lbl_1_bss_7B0_pad; -static s32 lbl_1_bss_7AC; -static s16 lbl_1_bss_7AA; -static s16 lbl_1_bss_7A8; -static s32 lbl_1_bss_7A4; -static AnimData *lbl_1_bss_7A0; +static s32 itemGetSeNo; +static s16 roundItemStopF; +static s16 umaStopTimer; +static s32 roundItemStreamId; +static AnimData *roundItemEffAnim; #if VERSION_JP #define MDL_ID_SHIFT 0 @@ -89,7 +89,7 @@ static AnimData *lbl_1_bss_7A0; #define MDL_ID_SHIFT 1 #endif -static s32 lbl_1_data_F08[] = { +static s32 itemMdlTbl[] = { DATA_MAKE_NUM(DATADIR_BOARD, 108 + MDL_ID_SHIFT), DATA_MAKE_NUM(DATADIR_BOARD, 109 + MDL_ID_SHIFT), DATA_MAKE_NUM(DATADIR_BOARD, 110 + MDL_ID_SHIFT), @@ -106,884 +106,856 @@ static s32 lbl_1_data_F08[] = { DATA_MAKE_NUM(DATADIR_BOARD, 122 + MDL_ID_SHIFT), }; -static s32 lbl_1_data_F40[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 23), DATA_MAKE_NUM(DATADIR_PEACHMOT, 23), +static s32 itemGetMotTbl[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 23), DATA_MAKE_NUM(DATADIR_PEACHMOT, 23), DATA_MAKE_NUM(DATADIR_YOSHIMOT, 23), DATA_MAKE_NUM(DATADIR_WARIOMOT, 23), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 23), DATA_MAKE_NUM(DATADIR_DAISYMOT, 23), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 23) }; -static s32 lbl_1_data_F60[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 64), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 64), DATA_MAKE_NUM(DATADIR_PEACHMOT, 64), +static s32 jumpMotTbl[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 64), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 64), DATA_MAKE_NUM(DATADIR_PEACHMOT, 64), DATA_MAKE_NUM(DATADIR_YOSHIMOT, 64), DATA_MAKE_NUM(DATADIR_WARIOMOT, 64), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 64), DATA_MAKE_NUM(DATADIR_DAISYMOT, 64), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 64) }; -void fn_1_D740(s16 *arg0) +void RoundItemInit(s16 *itemTbl) { - s16 sp10[14]; - s16 sp8[4]; - float temp_f30; - float temp_f29; - float var_f31; - s32 var_r28; - s32 var_r30; + s16 itemOrderTbl[14]; + s16 itemMdlId[4]; + float borderTime; + float borderMaxTime; + float itemAngle; + s32 itemOrderNum; + s32 itemNum; s32 i; s32 j; - lbl_1_bss_818 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_W01, 28), MEMORY_DEFAULT_NUM, HEAP_DATA); - BoardModelPosGet(lbl_1_bss_6C4[16], &lbl_1_bss_80C); - sp8[0] = BoardModelIDGet(lbl_1_bss_6C4[19]); - BoardModelVisibilitySet(lbl_1_bss_6C4[19], 1); + itemAnim = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_W01, 28), MEMORY_DEFAULT_NUM, HEAP_DATA); + BoardModelPosGet(mapObjMdlId[MAPOBJ_ROUNDITEM], &roundItemPos); + itemMdlId[0] = BoardModelIDGet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM]); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM], 1); for (i = 1; i < 4; i++) { - sp8[i] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_W01, 24)); + itemMdlId[i] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_W01, 24)); } - var_r30 = 0; + itemNum = 0; for (i = 0; i < 4; i++) { - lbl_1_bss_7FC[i] = omAddObjEx(boardObjMan, 0x165, 2, 0, -1, NULL); - if (arg0[i] != -1) { - lbl_1_bss_7FC[var_r30++]->work[1] = arg0[i]; + itemObj[i] = omAddObjEx(boardObjMan, 0x165, 2, 0, -1, NULL); + if (itemTbl[i] != -1) { + itemObj[itemNum++]->work[1] = itemTbl[i]; } } - while (var_r30 != 4) { - var_r28 = 0; + while (itemNum != 4) { + itemOrderNum = 0; for (i = 0; i < 14; i++) { - for (j = 0; j < var_r30; j++) { - if (i == lbl_1_bss_7FC[j]->work[1]) { + for (j = 0; j < itemNum; j++) { + if (i == itemObj[j]->work[1]) { break; } } - if (j == var_r30) { - sp10[var_r28++] = i; + if (j == itemNum) { + itemOrderTbl[itemOrderNum++] = i; } } - lbl_1_bss_7FC[var_r30++]->work[1] = sp10[rand8() % var_r28]; + itemObj[itemNum++]->work[1] = itemOrderTbl[rand8() % itemOrderNum]; } - temp_f30 = BoardModelMotionTimeGet(lbl_1_bss_6C4[18]); - temp_f29 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[18]); + borderTime = BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]); + borderMaxTime = BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]); for (i = 0; i < 4; i++) { - lbl_1_bss_7FC[i]->model[0] = sp8[i]; - lbl_1_bss_7FC[i]->model[1] = Hu3DModelCreateFile(lbl_1_data_F08[lbl_1_bss_7FC[i]->work[1]]); - if (lbl_1_bss_7FC[i]->work[1] == 5) { - Hu3DData[lbl_1_bss_7FC[i]->model[1]].unk_F0[1][3] = -50.0f; + itemObj[i]->model[0] = itemMdlId[i]; + itemObj[i]->model[1] = Hu3DModelCreateFile(itemMdlTbl[itemObj[i]->work[1]]); + if (itemObj[i]->work[1] == 5) { + Hu3DData[itemObj[i]->model[1]].unk_F0[1][3] = -50.0f; } - if (lbl_1_bss_7FC[i]->work[1] == 11) { - Hu3DModelAttrSet(lbl_1_bss_7FC[i]->model[1], HU3D_MOTATTR_LOOP); + if (itemObj[i]->work[1] == 11) { + Hu3DModelAttrSet(itemObj[i]->model[1], HU3D_MOTATTR_LOOP); } - if (lbl_1_bss_7FC[i]->work[1] == 4) { - Hu3DMotionSpeedSet(lbl_1_bss_7FC[i]->model[1], 0.0f); + if (itemObj[i]->work[1] == 4) { + Hu3DMotionSpeedSet(itemObj[i]->model[1], 0.0f); } - Hu3DModelAttrReset(sp8[i], HU3D_ATTR_DISPOFF); - Hu3DModelAttrSet(lbl_1_bss_7FC[i]->model[1], HU3D_ATTR_DISPOFF); - Hu3DModelAttrSet(lbl_1_bss_7FC[i]->model[1], HU3D_MOTATTR_PAUSE); - omSetTra(lbl_1_bss_7FC[i], lbl_1_bss_80C.x, lbl_1_bss_80C.y + 66.0f, lbl_1_bss_80C.z); - var_f31 = 90.0f - 90.0f * i + 360.0f * (temp_f30 / temp_f29); - if (var_f31 >= 360.0f) { - var_f31 -= 360.0f; + Hu3DModelAttrReset(itemMdlId[i], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(itemObj[i]->model[1], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(itemObj[i]->model[1], HU3D_MOTATTR_PAUSE); + omSetTra(itemObj[i], roundItemPos.x, roundItemPos.y + 66.0f, roundItemPos.z); + itemAngle = 90.0f - 90.0f * i + 360.0f * (borderTime / borderMaxTime); + if (itemAngle >= 360.0f) { + itemAngle -= 360.0f; } - if (var_f31 < 0.0f) { - var_f31 += 360.0f; + if (itemAngle < 0.0f) { + itemAngle += 360.0f; } - omSetRot(lbl_1_bss_7FC[i], 0.0f, var_f31, 0.0f); - lbl_1_bss_7FC[i]->work[0] = Hu3DAnimCreate(lbl_1_bss_818, lbl_1_bss_7FC[i]->model[0], "item01"); - Hu3DAnimAttrSet(lbl_1_bss_7FC[i]->work[0], 1); - lbl_1_bss_7FC[i]->work[2] = i; + omSetRot(itemObj[i], 0.0f, itemAngle, 0.0f); + itemObj[i]->work[0] = Hu3DAnimCreate(itemAnim, itemObj[i]->model[0], "item01"); + Hu3DAnimAttrSet(itemObj[i]->work[0], 1); + itemObj[i]->work[2] = i; } for (i = 0; i < 4; i++) { - Hu3DAnmNoSet(lbl_1_bss_7FC[i]->work[0], lbl_1_bss_7FC[i]->work[1]); + Hu3DAnmNoSet(itemObj[i]->work[0], itemObj[i]->work[1]); } } -void fn_1_DD84(void) +void RoundItemKill(void) { s32 i; for (i = 0; i < 4; i++) { if (i != 0) { - Hu3DModelKill(lbl_1_bss_7FC[i]->model[0]); + Hu3DModelKill(itemObj[i]->model[0]); } else { - BoardModelVisibilitySet(lbl_1_bss_6C4[19], 0); - Hu3DAnimKill(lbl_1_bss_7FC[i]->work[0]); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM], 0); + Hu3DAnimKill(itemObj[i]->work[0]); } - Hu3DModelKill(lbl_1_bss_7FC[i]->model[1]); - omDelObjEx(boardObjMan, lbl_1_bss_7FC[i]); + Hu3DModelKill(itemObj[i]->model[1]); + omDelObjEx(boardObjMan, itemObj[i]); } - if (lbl_1_bss_7A0) { - HuSprAnimKill(lbl_1_bss_7A0); - lbl_1_bss_7A0 = NULL; + if (roundItemEffAnim) { + HuSprAnimKill(roundItemEffAnim); + roundItemEffAnim = NULL; } } -void fn_1_DE94(void) +void RoundItemEventStart(void) { s32 i; - BoardModelPosGet(lbl_1_bss_6C4[16], &lbl_1_bss_80C); + BoardModelPosGet(mapObjMdlId[MAPOBJ_ROUNDITEM], &roundItemPos); for (i = 0; i < 4; i++) { - lbl_1_bss_7FC[i]->func = fn_1_FED0; + itemObj[i]->func = RoundItemItemUpdate; } - lbl_1_bss_7F4 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_E2B8); - lbl_1_bss_7F8 = omAddObjEx(boardObjMan, 0x133, 0, 0, -1, fn_1_E44C); - lbl_1_bss_7F8->work[3] = rand8() % 200 + 10; - lbl_1_bss_7E4 = GWSystem.player_curr; - BoardPlayerPosGet(lbl_1_bss_7E4, &lbl_1_bss_7C4); - lbl_1_bss_7EC = 1.0f; - lbl_1_bss_7E8 = 1.0f; - lbl_1_bss_7AA = 0; - lbl_1_bss_7BC = BoardPlayerMotionCreate(lbl_1_bss_7E4, lbl_1_data_F40[GWPlayer[lbl_1_bss_7E4].character]); - lbl_1_bss_7B8 = BoardPlayerMotionCreate(lbl_1_bss_7E4, lbl_1_data_F60[GWPlayer[lbl_1_bss_7E4].character]); - lbl_1_bss_7A0 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 0)); - HuSprAnimLock(lbl_1_bss_7A0); - lbl_1_bss_7B4 = 0; + roundItemMainObj = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, RoundItemMainUpdate); + roundItemUmaObj = omAddObjEx(boardObjMan, 0x133, 0, 0, -1, RoundItemUmaStop); + roundItemUmaObj->work[3] = rand8() % 200 + 10; + roundItemPlayer = GWSystem.player_curr; + BoardPlayerPosGet(roundItemPlayer, &roundItemPlayerPos); + umaSpeed = 1.0f; + borderSpeed = 1.0f; + roundItemStopF = 0; + itemGetMotId = BoardPlayerMotionCreate(roundItemPlayer, itemGetMotTbl[GWPlayer[roundItemPlayer].character]); + jumpMotId = BoardPlayerMotionCreate(roundItemPlayer, jumpMotTbl[GWPlayer[roundItemPlayer].character]); + roundItemEffAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 0)); + HuSprAnimLock(roundItemEffAnim); + umaStopF = 0; } -static void fn_1_E100(void) +static void RoundItemEnd(void) { - lbl_1_bss_7AA = 1; + roundItemStopF = 1; BoardMGExit(); HuAudFXPlay(0x40F); - BoardModelMotionStart(lbl_1_bss_6C4[21], 0, 0x40000004); + BoardModelMotionStart(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP], 0, HU3D_MOTATTR_REV); } -static void fn_1_E154(void) +static void RoundItemClose(void) { - fn_1_DD84(); - BoardPlayerMotionKill(lbl_1_bss_7E4, lbl_1_bss_7BC); - BoardPlayerMotionKill(lbl_1_bss_7E4, lbl_1_bss_7B8); - BoardModelVisibilitySet(lbl_1_bss_6C4[20], 0); + RoundItemKill(); + BoardPlayerMotionKill(roundItemPlayer, itemGetMotId); + BoardPlayerMotionKill(roundItemPlayer, jumpMotId); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], 0); BoardMGDoneFlagSet(0); } -static void fn_1_E2B8(omObjData *arg0) +static void RoundItemMainUpdate(omObjData *obj) { - if (lbl_1_bss_7AA == 1 && BoardMGDoneFlagGet() == 1) { - fn_1_E154(); - omDelObjEx(HuPrcCurrentGet(), arg0); + if (roundItemStopF == 1 && BoardMGDoneFlagGet() == 1) { + RoundItemClose(); + omDelObjEx(HuPrcCurrentGet(), obj); } } -static char *lbl_1_data_F9C[] = { "uma1", "uma2", "uma3", "uma4" }; +static char *umaHookTbl[] = { "uma1", "uma2", "uma3", "uma4" }; -static void fn_1_E44C(omObjData *arg0) +static void RoundItemUmaStop(omObjData *obj) { - Vec sp18; - Vec spC; - float temp_f27; - float var_f29; - float temp_f28; - float var_f26; - float var_f24; + Vec playerPos; + Vec objPos; + float umaDist; + float motTime; + float motMaxTime; + float umaMinDist; s32 i; - temp_f28 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[17]); - var_f29 = BoardModelMotionTimeGet(lbl_1_bss_6C4[17]); - if (var_f29 >= temp_f28) { - var_f29 -= temp_f28; + motMaxTime = BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]); + motTime = BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]); + if (motTime >= motMaxTime) { + motTime -= motMaxTime; } - var_f24 = fmod(var_f29, temp_f28 / 4); - if (var_f24 >= temp_f28 / 4 - 30.0f && lbl_1_bss_7B4 == 0) { - lbl_1_bss_7B4 = 1; - lbl_1_bss_7A8 = 90; + if (fmodf(motTime, motMaxTime / 4) >= motMaxTime / 4 - 30.0f && umaStopF == 0) { + umaStopF = 1; + umaStopTimer = 90; } - if (lbl_1_bss_7B4 != 0) { - lbl_1_bss_7EC *= 0.97f; - lbl_1_bss_7A8--; + if (umaStopF != 0) { + umaSpeed *= 0.97f; + umaStopTimer--; } - if (lbl_1_bss_7EC != 1.0f && lbl_1_bss_7A8 == 0) { - lbl_1_bss_7EC = 0.0f; + if (umaSpeed != 1.0f && umaStopTimer == 0) { + umaSpeed = 0.0f; BoardAudSeqPause(0, 1, 1000); - BoardPlayerPosGet(lbl_1_bss_7E4, &sp18); - Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_6C4[17]), lbl_1_data_F9C[0], &spC); - var_f26 = VECSquareDistance(&sp18, &spC); - arg0->work[2] = 0; + BoardPlayerPosGet(roundItemPlayer, &playerPos); + Hu3DModelObjPosGet(BoardModelIDGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]), umaHookTbl[0], &objPos); + umaMinDist = VECSquareDistance(&playerPos, &objPos); + obj->work[2] = 0; for (i = 1; i < 4; i++) { - Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_6C4[17]), lbl_1_data_F9C[i], &spC); - temp_f27 = VECSquareDistance(&sp18, &spC); - if (temp_f27 < var_f26) { - var_f26 = temp_f27; - arg0->work[2] = i; + Hu3DModelObjPosGet(BoardModelIDGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]), umaHookTbl[i], &objPos); + umaDist = VECSquareDistance(&playerPos, &objPos); + if (umaDist < umaMinDist) { + umaMinDist = umaDist; + obj->work[2] = i; } } - Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_6C4[17]), lbl_1_data_F9C[arg0->work[2]], &lbl_1_bss_7D8); - VECSubtract(&lbl_1_bss_7D8, &sp18, &spC); - VECNormalize(&spC, &spC); - arg0->trans.x = spC.x; - arg0->trans.y = spC.y; - arg0->trans.z = spC.z; - arg0->rot.x = VECDistanceXZ(&lbl_1_bss_7D8, &sp18); - arg0->rot.y = 10.0f; - arg0->rot.z = sp18.y; - arg0->scale.x = 0.0f; - BoardPlayerMotionShiftSet(lbl_1_bss_7E4, 4, 0.0f, 5.0f, HU3D_MOTATTR_NONE); - arg0->func = fn_1_E914; + Hu3DModelObjPosGet(BoardModelIDGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]), umaHookTbl[obj->work[2]], &umaPos); + VECSubtract(&umaPos, &playerPos, &objPos); + VECNormalize(&objPos, &objPos); + obj->trans.x = objPos.x; + obj->trans.y = objPos.y; + obj->trans.z = objPos.z; + obj->rot.x = VECDistanceXZ(&umaPos, &playerPos); + obj->rot.y = 10.0f; + obj->rot.z = playerPos.y; + obj->scale.x = 0.0f; + BoardPlayerMotionShiftSet(roundItemPlayer, 4, 0.0f, 5.0f, HU3D_MOTATTR_NONE); + obj->func = RoundItemPlayerJump; } - BoardModelMotionSpeedSet(lbl_1_bss_6C4[17], lbl_1_bss_7EC); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA], umaSpeed); } -static void fn_1_E914(omObjData *arg0) +static void RoundItemPlayerJump(omObjData *obj) { - Vec spC; + Vec pos; s32 i; - BoardPlayerPosGet(lbl_1_bss_7E4, &spC); - spC.x += arg0->trans.x * arg0->rot.x / 32.760002f; - spC.z += arg0->trans.z * arg0->rot.x / 32.760002f; - spC.y += arg0->rot.y - 0.016666668f * arg0->scale.x * arg0->scale.x; - arg0->scale.x += 1.0f; - if (VECDistanceXZ(&lbl_1_bss_7D8, &spC) < 2.0f) { - spC = lbl_1_bss_7D8; - BoardPlayerRotSet(lbl_1_bss_7E4, 0.0f, fn_1_10BB0(arg0->work[2]), 0.0f); - lbl_1_bss_7EC = 0.05f; - lbl_1_bss_7E8 = 0.05f; - BoardModelAttrReset(lbl_1_bss_6C4[18], 0x40000002); - BoardModelAttrSet(lbl_1_bss_6C4[18], 0x40000001); - BoardModelMotionSpeedSet(lbl_1_bss_6C4[18], 0.0f); + BoardPlayerPosGet(roundItemPlayer, &pos); + pos.x += obj->trans.x * obj->rot.x / 32.760002f; + pos.z += obj->trans.z * obj->rot.x / 32.760002f; + pos.y += obj->rot.y - 0.016666668f * obj->scale.x * obj->scale.x; + obj->scale.x += 1.0f; + if (VECDistanceXZ(&umaPos, &pos) < 2.0f) { + pos = umaPos; + BoardPlayerRotSet(roundItemPlayer, 0.0f, RoundItemUmaRotYGet(obj->work[2]), 0.0f); + umaSpeed = 0.05f; + borderSpeed = 0.05f; + BoardModelAttrReset(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], HU3D_MOTATTR_PAUSE); + BoardModelAttrSet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], HU3D_MOTATTR_LOOP); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], 0.0f); for (i = 0; i < 4; i++) { - lbl_1_bss_7FC[i]->func = fn_1_FED0; + itemObj[i]->func = RoundItemItemUpdate; } - BoardPlayerMotionShiftSet(lbl_1_bss_7E4, lbl_1_bss_7B8, 0.0f, 5.0f, HU3D_MOTATTR_LOOP); - lbl_1_bss_7D6 = MGSeqStartCreate(); + BoardPlayerMotionShiftSet(roundItemPlayer, jumpMotId, 0.0f, 5.0f, HU3D_MOTATTR_LOOP); + seqStartId = MGSeqStartCreate(); BoardMusStart(1, 0xE, 0x7F, 0); - arg0->func = fn_1_ECD4; + obj->func = RoundItemStartWait; } - BoardPlayerPosSetV(lbl_1_bss_7E4, &spC); + BoardPlayerPosSetV(roundItemPlayer, &pos); } -static void fn_1_ECD4(omObjData *arg0) +static void RoundItemStartWait(omObjData *obj) { - lbl_1_bss_7EC *= 1.05f; - lbl_1_bss_7E8 *= 1.05f; - if (lbl_1_bss_7EC > 2.0f) { - lbl_1_bss_7EC = 2.0f; + umaSpeed *= 1.05f; + borderSpeed *= 1.05f; + if (umaSpeed > 2.0f) { + umaSpeed = 2.0f; } - if (lbl_1_bss_7E8 > 4.0f) { - lbl_1_bss_7E8 = 4.0f; + if (borderSpeed > 4.0f) { + borderSpeed = 4.0f; } - if (MGSeqStatGet(lbl_1_bss_7D6) == 0) { - lbl_1_bss_7EC = 2.0f; - lbl_1_bss_7E8 = 4.0f; - arg0->func = fn_1_EED8; - lbl_1_bss_7D2 = 5; - lbl_1_bss_7D0 = REFRESH_RATE; - lbl_1_bss_7D4 = MGSeqTimerCreateXY(lbl_1_bss_7D2, 288, 64); + if (MGSeqStatGet(seqStartId) == 0) { + umaSpeed = 2.0f; + borderSpeed = 4.0f; + obj->func = RoundItemInputWait; + timerSec = 5; + timerFrame = REFRESH_RATE; + timerSeqId = MGSeqTimerCreateXY(timerSec, 288, 64); } - BoardModelMotionSpeedSet(lbl_1_bss_6C4[17], lbl_1_bss_7EC); - BoardModelMotionSpeedSet(lbl_1_bss_6C4[18], lbl_1_bss_7E8); - fn_1_10CF0(arg0->work[2]); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA], umaSpeed); + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], borderSpeed); + RoundItemUmaPlayerSet(obj->work[2]); } -static void fn_1_EEA0(omObjData *arg0, u16 *arg1) +static void RoundItemComInputGet(omObjData *obj, u16 *btn) { - *arg1 = 0; - if (arg0->work[3] != 0) { - arg0->work[3]--; + *btn = 0; + if (obj->work[3] != 0) { + obj->work[3]--; } else { - *arg1 |= 0x100; + *btn |= PAD_BUTTON_A; } } -static void fn_1_EED8(omObjData *arg0) +static void RoundItemInputWait(omObjData *obj) { - s16 temp_r29; - u16 var_r30; + s16 padNo; + u16 btn; - fn_1_10CF0(arg0->work[2]); - temp_r29 = GWPlayer[lbl_1_bss_7E4].port; - if ((--lbl_1_bss_7D0) == 0) { - if ((--lbl_1_bss_7D2) >= 0) { - MGSeqParamSet(lbl_1_bss_7D4, 1, lbl_1_bss_7D2); + RoundItemUmaPlayerSet(obj->work[2]); + padNo = GWPlayer[roundItemPlayer].port; + if ((--timerFrame) == 0) { + if ((--timerSec) >= 0) { + MGSeqParamSet(timerSeqId, 1, timerSec); } - lbl_1_bss_7D0 = REFRESH_RATE; + timerFrame = REFRESH_RATE; } - if (GWPlayerCfg[lbl_1_bss_7E4].iscom == 1) { - fn_1_EEA0(arg0, &var_r30); + if (GWPlayerCfg[roundItemPlayer].iscom == 1) { + RoundItemComInputGet(obj, &btn); } else { - var_r30 = HuPadBtnDown[temp_r29]; + btn = HuPadBtnDown[padNo]; } - if (lbl_1_bss_7D2 < 0 || (var_r30 & 0x100)) { - BoardModelMotionSpeedSet(lbl_1_bss_6C4[17], 0.0f); - MGSeqParamSet(lbl_1_bss_7D4, 2, -1); - arg0->scale.y = 0.0f; - arg0->func = fn_1_F09C; + if (timerSec < 0 || (btn & PAD_BUTTON_A)) { + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA], 0.0f); + MGSeqParamSet(timerSeqId, 2, -1); + obj->scale.y = 0.0f; + obj->func = RoundItemStop; } } -static void fn_1_F09C(omObjData *arg0) +static void RoundItemStop(omObjData *obj) { - float temp_f31; - float var_f30; + float maxTime; + float time; - temp_f31 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[18]); - arg0->scale.y += lbl_1_bss_7E8; - if (arg0->scale.y >= temp_f31 - 150.0f) { - lbl_1_bss_7E8 *= 0.9745f; - if (lbl_1_bss_7E8 < 0.08f) { - lbl_1_bss_7E8 = 0.08f; + maxTime = BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]); + obj->scale.y += borderSpeed; + if (obj->scale.y >= maxTime - 150.0f) { + borderSpeed *= 0.9745f; + if (borderSpeed < 0.08f) { + borderSpeed = 0.08f; } } - BoardModelMotionSpeedSet(lbl_1_bss_6C4[18], lbl_1_bss_7E8); - if (arg0->scale.y >= temp_f31) { - BoardModelMotionSpeedSet(lbl_1_bss_6C4[18], 0.0f); - var_f30 = arg0->scale.y - temp_f31 + BoardModelMotionTimeGet(lbl_1_bss_6C4[18]); - if (var_f30 > temp_f31) { - var_f30 -= temp_f31; + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], borderSpeed); + if (obj->scale.y >= maxTime) { + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], 0.0f); + time = obj->scale.y - maxTime + BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]); + if (time > maxTime) { + time -= maxTime; } - BoardModelMotionTimeSet(lbl_1_bss_6C4[18], var_f30); - arg0->work[0] = fn_1_1001C(arg0->work[2]); - BoardModelVisibilitySet(lbl_1_bss_6C4[20], 1); - BoardModelPosSet(lbl_1_bss_6C4[20], lbl_1_bss_7FC[arg0->work[0]]->trans.x, lbl_1_bss_7FC[arg0->work[0]]->trans.y + 1.0f, - lbl_1_bss_7FC[arg0->work[0]]->trans.z); + BoardModelMotionTimeSet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER], time); + obj->work[0] = RoundItemItemGet(obj->work[2]); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], 1); + BoardModelPosSet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], itemObj[obj->work[0]]->trans.x, itemObj[obj->work[0]]->trans.y + 1.0f, + itemObj[obj->work[0]]->trans.z); BoardModelRotSet( - lbl_1_bss_6C4[20], lbl_1_bss_7FC[arg0->work[0]]->rot.x, lbl_1_bss_7FC[arg0->work[0]]->rot.y + 1.0f, lbl_1_bss_7FC[arg0->work[0]]->rot.z); - arg0->work[1] = 60; + mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], itemObj[obj->work[0]]->rot.x, itemObj[obj->work[0]]->rot.y + 1.0f, itemObj[obj->work[0]]->rot.z); + obj->work[1] = 60; BoardAudSeqFadeOut(1, 100); - arg0->func = fn_1_F348; + obj->func = RoundItemLightFlicker; HuAudFXPlay(0x40A); } } -static void fn_1_F348(omObjData *arg0) +static void RoundItemLightFlicker(omObjData *obj) { - if ((arg0->work[1] / 4) & 1) { - BoardModelVisibilitySet(lbl_1_bss_6C4[20], 0); + if ((obj->work[1] / 4) & 1) { + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], 0); } else { - BoardModelVisibilitySet(lbl_1_bss_6C4[20], 1); + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], 1); } - if ((arg0->work[1] -= 1) == 0) { - BoardModelVisibilitySet(lbl_1_bss_6C4[20], 0); - fn_1_101B8(arg0->work[0]); + if ((--obj->work[1]) == 0) { + BoardModelVisibilitySet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_LIGHT], 0); + ItemGetCreate(obj->work[0]); HuAudFXPlay(0x310); - arg0->func = fn_1_F3F8; + obj->func = RoundItemUmaJumpWait; } } -static void fn_1_F3F8(omObjData *arg0) +static void RoundItemUmaJumpWait(omObjData *obj) { - Vec sp18; - Vec spC; + Vec playerPos; + Vec dir; - if (lbl_1_bss_7F0->work[0] != 1) { + if (itemGetObj->work[0] != 1) { return; } - BoardPlayerPosGet(lbl_1_bss_7E4, &sp18); - VECSubtract(&lbl_1_bss_7C4, &sp18, &spC); - VECNormalize(&spC, &spC); - arg0->trans.x = spC.x; - arg0->trans.y = spC.y; - arg0->trans.z = spC.z; - arg0->rot.x = VECDistanceXZ(&lbl_1_bss_7C4, &sp18); - arg0->scale.y = 20.0f + 40.0f * (arg0->rot.x / 445.0f); - arg0->rot.y = 0.016666668f * (arg0->scale.y / 2) * (arg0->scale.y / 2); - arg0->rot.z = sp18.y; - arg0->scale.x = 0.0f; - BoardPlayerMotionShiftSet(lbl_1_bss_7E4, 4, 0.0f, 5.0f, HU3D_MOTATTR_NONE); - VECSubtract(&lbl_1_bss_7C4, &sp18, &spC); - VECNormalize(&spC, &spC); - BoardPlayerRotSet(lbl_1_bss_7E4, 0.0f, fn_1_10EB8(&spC), 0.0f); - arg0->func = fn_1_F6E8; + BoardPlayerPosGet(roundItemPlayer, &playerPos); + VECSubtract(&roundItemPlayerPos, &playerPos, &dir); + VECNormalize(&dir, &dir); + obj->trans.x = dir.x; + obj->trans.y = dir.y; + obj->trans.z = dir.z; + obj->rot.x = VECDistanceXZ(&roundItemPlayerPos, &playerPos); + obj->scale.y = 20.0f + 40.0f * (obj->rot.x / 445.0f); + obj->rot.y = 0.016666668f * (obj->scale.y / 2) * (obj->scale.y / 2); + obj->rot.z = playerPos.y; + obj->scale.x = 0.0f; + BoardPlayerMotionShiftSet(roundItemPlayer, 4, 0.0f, 5.0f, HU3D_MOTATTR_NONE); + VECSubtract(&roundItemPlayerPos, &playerPos, &dir); + VECNormalize(&dir, &dir); + BoardPlayerRotSet(roundItemPlayer, 0.0f, RoundItemAngleGet(&dir), 0.0f); + obj->func = RoundItemUmaJump; } -static void fn_1_F6E8(omObjData *arg0) +static void RoundItemUmaJump(omObjData *obj) { - Vec sp8; + Vec pos; - BoardPlayerPosGet(lbl_1_bss_7E4, &sp8); - sp8.x += arg0->trans.x * arg0->rot.x / arg0->scale.y; - sp8.z += arg0->trans.z * arg0->rot.x / arg0->scale.y; - sp8.y += arg0->rot.y - 0.016666668f * arg0->scale.x * arg0->scale.x; - arg0->scale.x += 1.0f; - if (sp8.y < lbl_1_bss_80C.y || arg0->scale.x >= arg0->scale.y) { - sp8.y = lbl_1_bss_80C.y; - BoardCameraMotionStart(BoardPlayerModelGet(lbl_1_bss_7E4), NULL, 700.0f, -1.0f); - BoardPlayerMotionStart(lbl_1_bss_7E4, 2, 0x40000001); - arg0->func = fn_1_F890; + BoardPlayerPosGet(roundItemPlayer, &pos); + pos.x += obj->trans.x * obj->rot.x / obj->scale.y; + pos.z += obj->trans.z * obj->rot.x / obj->scale.y; + pos.y += obj->rot.y - 0.016666668f * obj->scale.x * obj->scale.x; + obj->scale.x += 1.0f; + if (pos.y < roundItemPos.y || obj->scale.x >= obj->scale.y) { + pos.y = roundItemPos.y; + BoardCameraMotionStart(BoardPlayerModelGet(roundItemPlayer), NULL, 700.0f, -1.0f); + BoardPlayerMotionStart(roundItemPlayer, 2, HU3D_MOTATTR_LOOP); + obj->func = RoundItemRotatePlayer; } - BoardPlayerPosSetV(lbl_1_bss_7E4, &sp8); + BoardPlayerPosSetV(roundItemPlayer, &pos); } -static void fn_1_F890(omObjData *arg0) +static void RoundItemRotatePlayer(omObjData *obj) { - Vec sp8; + Vec rot; - BoardPlayerRotGet(lbl_1_bss_7E4, &sp8); - if (sp8.y == 0.0f) { - BoardPlayerMotionShiftSet(lbl_1_bss_7E4, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); - lbl_1_bss_7F0->work[0] = 0; - lbl_1_bss_7F0->func = fn_1_10820; - arg0->func = fn_1_FA1C; + BoardPlayerRotGet(roundItemPlayer, &rot); + if (rot.y == 0.0f) { + BoardPlayerMotionShiftSet(roundItemPlayer, 1, 0.0f, 10.0f, HU3D_MOTATTR_LOOP); + itemGetObj->work[0] = 0; + itemGetObj->func = ItemGetPlayerMove; + obj->func = RoundItemStreamWait; } - else if (sp8.y > 180.0f) { - if (360.0f - sp8.y < 3.0f) { - sp8.y = 0.0f; + else if (rot.y > 180.0f) { + if (360.0f - rot.y < 3.0f) { + rot.y = 0.0f; } else { - sp8.y += 3.0f; + rot.y += 3.0f; } } else { - if (sp8.y < 3.0f) { - sp8.y = 0.0f; + if (rot.y < 3.0f) { + rot.y = 0.0f; } else { - sp8.y -= 3.0f; + rot.y -= 3.0f; } } - BoardPlayerRotSetV(lbl_1_bss_7E4, &sp8); + BoardPlayerRotSetV(roundItemPlayer, &rot); } -static void fn_1_FA1C(omObjData *arg0) +static void RoundItemStreamWait(omObjData *obj) { - if (lbl_1_bss_7F0->work[0] == 1) { - BoardPlayerMotionShiftSet(lbl_1_bss_7E4, lbl_1_bss_7BC, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - arg0->work[0] = 30; - lbl_1_bss_7A4 = HuAudSStreamPlay(2); - arg0->func = fn_1_FABC; + if (itemGetObj->work[0] == 1) { + BoardPlayerMotionShiftSet(roundItemPlayer, itemGetMotId, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + obj->work[0] = 30; + roundItemStreamId = HuAudSStreamPlay(2); + obj->func = RoundItemWinWait; } } -static void fn_1_FABC(omObjData *arg0) +static void RoundItemWinWait(omObjData *obj) { - Process *var_r30; + Process *proc; - if (arg0->work[0] == 0) { - if (HuAudSStreamStatGet(lbl_1_bss_7A4) == 0) { - var_r30 = HuPrcCreate(fn_1_FB58, 0x2004, 0x1000, 0); - var_r30->user_data = arg0; + if (obj->work[0] == 0) { + if (HuAudSStreamStatGet(roundItemStreamId) == 0) { + proc = HuPrcCreate(ItemGetWinExec, 0x2004, 0x1000, 0); + proc->user_data = obj; BoardAudSeqPause(0, 0, 1000); - arg0->func = NULL; + obj->func = NULL; } } else { - arg0->work[0]--; + obj->work[0]--; } } -static void fn_1_FB58(void) +static void ItemGetWinExec(void) { - omObjData *temp_r31; + omObjData *obj; BoardWinCreate(2, MAKE_MESSID(10, 6), 0); - BoardWinInsertMesSet(MAKE_MESSID(8, lbl_1_bss_7F0->work[1]), 0); + BoardWinInsertMesSet(MAKE_MESSID(8, itemGetObj->work[1]), 0); BoardWinWait(); BoardWinKill(); - temp_r31 = HuPrcCurrentGet()->user_data; - BoardPlayerMotionShiftSet(lbl_1_bss_7E4, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); - lbl_1_bss_7F0->work[0] = 0; + obj = HuPrcCurrentGet()->user_data; + BoardPlayerMotionShiftSet(roundItemPlayer, 1, 0.0f, 10.0f, HU3D_MOTATTR_NONE); + itemGetObj->work[0] = 0; HuAudFXPlay(0x30D); - HuAudFXFadeOut(lbl_1_bss_7AC, 1000); - lbl_1_bss_7F0->func = fn_1_10AE8; - temp_r31->func = fn_1_FC3C; + HuAudFXFadeOut(itemGetSeNo, 1000); + itemGetObj->func = ItemGetShrink; + obj->func = ItemGetShrinkWait; HuPrcKill(NULL); while (TRUE) { HuPrcVSleep(); } } -static void fn_1_FC3C(omObjData *arg0) +static void ItemGetShrinkWait(omObjData *obj) { - Process *var_r31; + Process *proc; - if (lbl_1_bss_7F0->work[0] == 1) { - BoardPlayerItemAdd(lbl_1_bss_7E4, lbl_1_bss_7F0->work[1]); - omVibrate(lbl_1_bss_7E4, 12, 6, 6); - var_r31 = HuPrcCreate(fn_1_FCEC, 0x2004, 0x1000, 0); - var_r31->user_data = arg0; - arg0->func = NULL; + if (itemGetObj->work[0] == 1) { + BoardPlayerItemAdd(roundItemPlayer, itemGetObj->work[1]); + omVibrate(roundItemPlayer, 12, 6, 6); + proc = HuPrcCreate(ItemGetReturnWinExec, 0x2004, 0x1000, 0); + proc->user_data = obj; + obj->func = NULL; } } -static void fn_1_FCEC(void) +static void ItemGetReturnWinExec(void) { - omObjData *var_r31; + omObjData *obj; BoardWinCreate(2, MAKE_MESSID(10, 7), 0); BoardWinWait(); BoardWinKill(); - var_r31 = HuPrcCurrentGet()->user_data; - var_r31->func = fn_1_FD3C; + obj = HuPrcCurrentGet()->user_data; + obj->func = RoundItemGameClose; HuPrcKill(NULL); while (TRUE) { HuPrcVSleep(); } } -static void fn_1_FD3C(omObjData *arg0) +static void RoundItemGameClose(omObjData *obj) { BoardStatusShowSetAll(1); - BoardCameraTargetModelSet(lbl_1_bss_6C4[21]); + BoardCameraTargetModelSet(mapObjMdlId[MAPOBJ_ROUNDITEM_ITEM_UP]); BoardCameraOffsetSet(0.0f, 0.0f, 0.0f); BoardCameraXRotZoomSet(1200.0f, -45.0f); - BoardModelMotionSpeedSet(lbl_1_bss_6C4[17], 1.0f); - Hu3DModelKill(lbl_1_bss_7F0->model[0]); - Hu3DModelKill(lbl_1_bss_7F0->model[1]); - Hu3DModelKill(lbl_1_bss_7F0->model[2]); - omDelObjEx(HuPrcCurrentGet(), lbl_1_bss_7F0); - arg0->func = fn_1_FE44; + BoardModelMotionSpeedSet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA], 1.0f); + Hu3DModelKill(itemGetObj->model[0]); + Hu3DModelKill(itemGetObj->model[1]); + Hu3DModelKill(itemGetObj->model[2]); + omDelObjEx(HuPrcCurrentGet(), itemGetObj); + obj->func = RoundItemGameEnd; } -static void fn_1_FE44(omObjData *arg0) +static void RoundItemGameEnd(omObjData *obj) { - if (BoardStatusStopCheck(lbl_1_bss_7E4) && BoardCameraMotionIsDone()) { - lbl_1_bss_7AA = 1; - BoardMGExit(); - HuAudFXPlay(0x40F); - BoardModelMotionStart(lbl_1_bss_6C4[21], 0, 0x40000004); - arg0->func = NULL; + if (BoardStatusStopCheck(roundItemPlayer) && BoardCameraMotionIsDone()) { + RoundItemEnd(); + obj->func = NULL; } } -static void fn_1_FED0(omObjData *arg0) +static void RoundItemItemUpdate(omObjData *obj) { - float temp_f30; - float var_f31; - float var_f29; + float time; + float rotY; + float maxTime; - temp_f30 = BoardModelMotionTimeGet(lbl_1_bss_6C4[18]); - var_f29 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[18]); - var_f31 = 90.0f - 90.0f * arg0->work[2] + 360.0f * (temp_f30 / var_f29); - if (var_f31 >= 360.0f) { - var_f31 -= 360.0f; + time = BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]); + maxTime = BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]); + rotY = 90.0f - 90.0f * obj->work[2] + 360.0f * (time / maxTime); + if (rotY >= 360.0f) { + rotY -= 360.0f; } - if (var_f31 < 0.0f) { - var_f31 += 360.0f; + if (rotY < 0.0f) { + rotY += 360.0f; } - omSetRot(arg0, 0.0f, var_f31, 0.0f); + omSetRot(obj, 0.0f, rotY, 0.0f); } -static s16 fn_1_1001C(u32 arg0) +static s16 RoundItemItemGet(u32 umaNo) { - float var_f29; - float var_f28; - float temp_f27; - float temp_f26; - float var_f31; - float var_f30; + float umaMaxTime; + float umaAngle; + float borderAngle; + float angle; + float umaTime; - temp_f26 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[18]); - temp_f27 = 360.0f - 360.0f * (BoardModelMotionTimeGet(lbl_1_bss_6C4[18]) / temp_f26); - var_f30 = BoardModelMotionTimeGet(lbl_1_bss_6C4[17]); - var_f29 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[17]); - var_f30 = var_f30 - (var_f29 / 4) * arg0; - if (var_f30 < 0.0f) { - var_f30 += var_f29; + borderAngle = 360.0f - 360.0f * (BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]) / BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER])); + umaTime = BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]); + umaMaxTime = BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]); + umaTime = umaTime - (umaMaxTime / 4) * umaNo; + if (umaTime < 0.0f) { + umaTime += umaMaxTime; } - var_f28 = 360.0f * (var_f30 / var_f29); - var_f31 = var_f28 - temp_f27; - if (var_f31 < 0.0f) { - var_f31 += 360.0f; + umaAngle = 360.0f * (umaTime / umaMaxTime); + angle = umaAngle - borderAngle; + if (angle < 0.0f) { + angle += 360.0f; } - var_f31 /= 90.0f; - return var_f31; + angle /= 90.0f; + return angle; } -static void fn_1_101B8(s16 arg0) +static void ItemGetCreate(s16 itemNo) { - omObjData *var_r31; - float *var_r30; - float var_f27; - float temp_f26; - float temp_f30; - float temp_f29; - float temp_f28; - float var_f31; + omObjData *obj; + float *data; + float borderAngle; + float posX; + float posY; + float posZ; + float angle; - var_r31 = lbl_1_bss_7F0 = omAddObjEx(boardObjMan, 0x165, 3, 0, -1, fn_1_10664); - var_r31->model[0] = lbl_1_bss_7FC[arg0]->model[1]; - Hu3DModelAttrReset(var_r31->model[0], HU3D_ATTR_DISPOFF); - lbl_1_bss_7F0->work[1] = lbl_1_bss_7FC[arg0]->work[1]; - lbl_1_bss_7F0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 3 * sizeof(float), MEMORY_DEFAULT_NUM); - var_r30 = lbl_1_bss_7F0->data; - omSetRot(var_r31, 0.0f, 0.0f, 0.0f); - omSetSca(var_r31, 0.0f, 0.0f, 0.0f); - temp_f26 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[18]); - var_f27 = 360.0f - 360.0f * (BoardModelMotionTimeGet(lbl_1_bss_6C4[18]) / temp_f26); - var_f31 = 45.0f + var_f27 + 90.0f * arg0; - if (var_f31 >= 360.0f) { - var_f31 -= 360.0f; + obj = itemGetObj = omAddObjEx(boardObjMan, 0x165, 3, 0, -1, ItemGetObjUpdate); + obj->model[0] = itemObj[itemNo]->model[1]; + Hu3DModelAttrReset(obj->model[0], HU3D_ATTR_DISPOFF); + itemGetObj->work[1] = itemObj[itemNo]->work[1]; + itemGetObj->data = HuMemDirectMallocNum(HEAP_SYSTEM, 3 * sizeof(float), MEMORY_DEFAULT_NUM); + data = itemGetObj->data; + omSetRot(obj, 0.0f, 0.0f, 0.0f); + omSetSca(obj, 0.0f, 0.0f, 0.0f); + borderAngle = 360.0f - 360.0f * (BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER]) / BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_BORDER])); + angle = 45.0f + borderAngle + 90.0f * itemNo; + if (angle >= 360.0f) { + angle -= 360.0f; } - temp_f30 = lbl_1_bss_80C.x - 100.0 * cosd(var_f31); - temp_f28 = lbl_1_bss_80C.z - 100.0 * sind(var_f31); - temp_f29 = lbl_1_bss_80C.y + 66.0f + 1.0f; - omSetTra(var_r31, temp_f30, temp_f29, temp_f28); - var_r31->work[0] = 0; - var_r30[0] = 0.1f; - var_r30[2] = 20.0f; - var_r30[1] = 0.0f; - var_r31->model[1] = Hu3DParticleCreate(lbl_1_bss_7A0, 200); - var_r31->model[2] = Hu3DParticleCreate(lbl_1_bss_7A0, 100); - Hu3DParticleHookSet(var_r31->model[1], fn_1_11064); - Hu3DParticleHookSet(var_r31->model[2], fn_1_11484); - Hu3DParticleColSet(var_r31->model[1], 0xFF, 0xFF, 0); - Hu3DParticleColSet(var_r31->model[2], 0xFF, 0xFF, 0); - Hu3DModelPosSet(var_r31->model[1], 0.0f, 0.0f, 0.0f); - Hu3DModelPosSet(var_r31->model[2], temp_f30, temp_f29, temp_f28); - Hu3DParticleBlendModeSet(var_r31->model[1], 1); - Hu3DParticleBlendModeSet(var_r31->model[2], 1); - Hu3DModelLayerSet(var_r31->model[1], 3); - Hu3DModelLayerSet(var_r31->model[2], 3); - lbl_1_bss_7AC = HuAudFXPlay(0x35F); + posX = roundItemPos.x - 100.0 * cosd(angle); + posZ = roundItemPos.z - 100.0 * sind(angle); + posY = roundItemPos.y + 66.0f + 1.0f; + omSetTra(obj, posX, posY, posZ); + obj->work[0] = 0; + data[0] = 0.1f; + data[2] = 20.0f; + data[1] = 0.0f; + obj->model[1] = Hu3DParticleCreate(roundItemEffAnim, 200); + obj->model[2] = Hu3DParticleCreate(roundItemEffAnim, 100); + Hu3DParticleHookSet(obj->model[1], ItemGetEff1Hook); + Hu3DParticleHookSet(obj->model[2], ItemGetEff2Hook); + Hu3DParticleColSet(obj->model[1], 0xFF, 0xFF, 0); + Hu3DParticleColSet(obj->model[2], 0xFF, 0xFF, 0); + Hu3DModelPosSet(obj->model[1], 0.0f, 0.0f, 0.0f); + Hu3DModelPosSet(obj->model[2], posX, posY, posZ); + Hu3DParticleBlendModeSet(obj->model[1], 1); + Hu3DParticleBlendModeSet(obj->model[2], 1); + Hu3DModelLayerSet(obj->model[1], 3); + Hu3DModelLayerSet(obj->model[2], 3); + itemGetSeNo = HuAudFXPlay(0x35F); } -static void fn_1_10664(omObjData *arg0) +static void ItemGetObjUpdate(omObjData *obj) { - float *temp_r31; - float var_f31; + float *data; + float scale; - temp_r31 = arg0->data; - var_f31 = temp_r31[0]; - if (arg0->work[0] == 0) { - if (var_f31 > 1.0f) { - var_f31 = 1.0f; + data = obj->data; + scale = data[0]; + if (obj->work[0] == 0) { + if (scale > 1.0f) { + scale = 1.0f; } else { - temp_r31[0] += 0.025f; + data[0] += 0.025f; } - arg0->trans.y += temp_r31[2]; - temp_r31[2] -= 1.0f; - if (temp_r31[2] < 0.0f && arg0->trans.y < lbl_1_bss_80C.y + 66.0f + 1.0f + 90.0f) { - arg0->work[0] = 1; + obj->trans.y += data[2]; + data[2] -= 1.0f; + if (data[2] < 0.0f && obj->trans.y < roundItemPos.y + 66.0f + 1.0f + 90.0f) { + obj->work[0] = 1; } - omSetSca(arg0, var_f31, var_f31, var_f31); + omSetSca(obj, scale, scale, scale); } else { - arg0->trans.y += sind(temp_r31[1]); - temp_r31[1] += 4.0f; - if (temp_r31[1] >= 360.0f) { - temp_r31[1] -= 360.0f; + obj->trans.y += sind(data[1]); + data[1] += 4.0f; + if (data[1] >= 360.0f) { + data[1] -= 360.0f; } } } -static void fn_1_10820(omObjData *arg0) +static void ItemGetPlayerMove(omObjData *obj) { - Vec sp24; - Vec sp18; - Vec spC; + Vec playerPos; + Vec objPos; + Vec dir; float var_f28; - float *temp_r30; + float *data; - temp_r30 = arg0->data; - if (arg0->work[0] == 0) { - BoardPlayerPosGet(lbl_1_bss_7E4, &sp24); - sp18.x = arg0->trans.x; - sp18.y = 0.0f; - sp18.z = arg0->trans.z; - sp24.y = 0.0f; - VECSubtract(&sp24, &sp18, &spC); - VECNormalize(&spC, &spC); - var_f28 = VECDistanceXZ(&sp24, &sp18); + data = obj->data; + if (obj->work[0] == 0) { + BoardPlayerPosGet(roundItemPlayer, &playerPos); + objPos.x = obj->trans.x; + objPos.y = 0.0f; + objPos.z = obj->trans.z; + playerPos.y = 0.0f; + VECSubtract(&playerPos, &objPos, &dir); + VECNormalize(&dir, &dir); + var_f28 = VECDistanceXZ(&playerPos, &objPos); if (var_f28 < 8.0f) { - arg0->trans.x = sp24.x; - arg0->trans.z = sp24.z; - arg0->work[0] = 1; + obj->trans.x = playerPos.x; + obj->trans.z = playerPos.z; + obj->work[0] = 1; } else { - arg0->trans.x += 8.0f * spC.x; - arg0->trans.z += 8.0f * spC.z; + obj->trans.x += 8.0f * dir.x; + obj->trans.z += 8.0f * dir.z; } } - arg0->trans.y += sind(temp_r30[1]); - temp_r30[1] += 4.0f; - if (temp_r30[1] >= 360.0f) { - temp_r30[1] -= 360.0f; + obj->trans.y += sind(data[1]); + data[1] += 4.0f; + if (data[1] >= 360.0f) { + data[1] -= 360.0f; } } -static void fn_1_10AE8(omObjData *arg0) +static void ItemGetShrink(omObjData *obj) { - float *temp_r31; + float *data; - temp_r31 = arg0->data; - if (arg0->work[0] == 0) { - temp_r31[0] -= 0.016666668f; - if (temp_r31[0] <= 0.0f) { - temp_r31[0] = 0.0f; - arg0->work[0] = 1; - HuAudFXStop(lbl_1_bss_7AC); + data = obj->data; + if (obj->work[0] == 0) { + data[0] -= 0.016666668f; + if (data[0] <= 0.0f) { + data[0] = 0.0f; + obj->work[0] = 1; + HuAudFXStop(itemGetSeNo); } - arg0->trans.y -= 2.1666667f; + obj->trans.y -= 2.1666667f; } - omSetSca(arg0, temp_r31[0], temp_r31[0], temp_r31[0]); + omSetSca(obj, data[0], data[0], data[0]); } -static float fn_1_10BB0(u32 arg0) +static float RoundItemUmaRotYGet(u32 umaNo) { - float var_f30; - float temp_f29; - float var_f31; + float time; + float maxTime; + float rotY; - var_f30 = BoardModelMotionTimeGet(lbl_1_bss_6C4[17]); - temp_f29 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[17]); - var_f30 = var_f30 - (temp_f29 / 4) * arg0; - if (var_f30 < 0.0f) { - var_f30 += temp_f29; + time = BoardModelMotionTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]); + maxTime = BoardModelMotionMaxTimeGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]); + time = time - (maxTime / 4) * umaNo; + if (time < 0.0f) { + time += maxTime; } - var_f31 = 180.0f + -360.0f * (var_f30 / temp_f29); - if (var_f31 >= 360.0f) { - var_f31 -= 360.0f; + rotY = 180.0f + -360.0f * (time / maxTime); + if (rotY >= 360.0f) { + rotY -= 360.0f; } - if (var_f31 < 0.0f) { - var_f31 += 360.0f; + if (rotY < 0.0f) { + rotY += 360.0f; } - return var_f31; + return rotY; } -static void fn_1_10CF0(u32 arg0) +static void RoundItemUmaPlayerSet(u32 umaNo) { - float var_f30; - float temp_f29; - float var_f31; - float var_f28; - - Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_6C4[17]), lbl_1_data_F9C[arg0], &lbl_1_bss_7D8); - BoardPlayerPosSetV(lbl_1_bss_7E4, &lbl_1_bss_7D8); - var_f30 = BoardModelMotionTimeGet(lbl_1_bss_6C4[17]); - temp_f29 = BoardModelMotionMaxTimeGet(lbl_1_bss_6C4[17]); - var_f30 = var_f30 - (temp_f29 / 4) * arg0; - if (var_f30 < 0.0f) { - var_f30 += temp_f29; - } - var_f31 = 180.0f + -360.0f * (var_f30 / temp_f29); - if (var_f31 >= 360.0f) { - var_f31 -= 360.0f; - } - if (var_f31 < 0.0f) { - var_f31 += 360.0f; - } - var_f28 = var_f31; - BoardPlayerRotSet(lbl_1_bss_7E4, 0.0f, var_f28, 0.0f); + Hu3DModelObjPosGet(BoardModelIDGet(mapObjMdlId[MAPOBJ_ROUNDITEM_UMA]), umaHookTbl[umaNo], &umaPos); + BoardPlayerPosSetV(roundItemPlayer, &umaPos); + BoardPlayerRotSet(roundItemPlayer, 0.0f, RoundItemUmaRotYGet(umaNo), 0.0f); } -static float fn_1_10EB8(Vec *arg0) +static float RoundItemAngleGet(Vec *dir) { - float var_f31; + float angle; - if (arg0->x || arg0->z) { - if (arg0->x == 0.0f) { - if (arg0->z > 0.0f) { + if (dir->x || dir->z) { + if (dir->x == 0.0f) { + if (dir->z > 0.0f) { return 0.0f; } else { return 180.0f; } } - if (arg0->z == 0.0f) { - if (arg0->x > 0.0f) { + if (dir->z == 0.0f) { + if (dir->x > 0.0f) { return 90.0f; } else { return 270.0f; } } - var_f31 = atan2d(arg0->z, arg0->x); - if (arg0->z < 0.0f) { - var_f31 = 90.0f - var_f31; + angle = atan2d(dir->z, dir->x); + if (dir->z < 0.0f) { + angle = 90.0f - angle; } else { - var_f31 = 90.0f - var_f31; - if (var_f31 < 0.0f) { - var_f31 += 360.0f; + angle = 90.0f - angle; + if (angle < 0.0f) { + angle += 360.0f; } } - return var_f31; + return angle; } return -1.0f; } -static void fn_1_11064(ModelData *model, ParticleData *particle, Mtx matrix) +static void ItemGetEff1Hook(ModelData *model, ParticleData *particle, Mtx matrix) { - HsfanimStruct01 *var_r31; - float temp_f30; - float temp_f29; - float temp_f31; - s32 var_r28; + HsfanimStruct01 *particleDataP; + float angle; + float radius; + float radiusBase; + s32 j; s32 i; if (particle->unk_34 == 0) { - var_r31 = particle->unk_48; - for (i = 0; i < particle->unk_30; i++, var_r31++) { - var_r31->unk40.a = 0; - var_r31->unk2C = 0.0f; + particleDataP = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, particleDataP++) { + particleDataP->unk40.a = 0; + particleDataP->unk2C = 0.0f; } particle->unk_00 = 0; } - temp_f31 = lbl_1_bss_7F0->scale.x; + radiusBase = itemGetObj->scale.x; for (i = 0; i < 30; i++) { - var_r31 = particle->unk_48; - for (var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { - if (var_r31->unk2C == 0.0f) { + particleDataP = particle->unk_48; + for (j = 0; j < particle->unk_30; j++, particleDataP++) { + if (particleDataP->unk2C == 0.0f) { break; } } - if (var_r28 != particle->unk_30) { - temp_f30 = 0.003921569f * frand8() * 360.0f; - temp_f29 = 0.003921569f * frand8() * 70.0f * temp_f31; - var_r31->unk34.x = lbl_1_bss_7F0->trans.x + temp_f29 * sind(temp_f30); - var_r31->unk34.z = lbl_1_bss_7F0->trans.z + temp_f29 * cosd(temp_f30); - var_r31->unk34.y = lbl_1_bss_7F0->trans.y + temp_f31 * (-30.0f + 0.003921569f * frand8() * 60.0f); - var_r31->unk08.x = 0.5f + 0.003921569f * frand8() * 3.0f; - var_r31->unk08.y = 0.3f + 0.003921569f * frand8() * 2.0f; - var_r31->unk40.a = 0xB4; - var_r31->unk2C = 15.0f * temp_f31; + if (j != particle->unk_30) { + angle = 0.003921569f * frand8() * 360.0f; + radius = 0.003921569f * frand8() * 70.0f * radiusBase; + particleDataP->unk34.x = itemGetObj->trans.x + radius * sind(angle); + particleDataP->unk34.z = itemGetObj->trans.z + radius * cosd(angle); + particleDataP->unk34.y = itemGetObj->trans.y + radiusBase * (-30.0f + 0.003921569f * frand8() * 60.0f); + particleDataP->unk08.x = 0.5f + 0.003921569f * frand8() * 3.0f; + particleDataP->unk08.y = 0.3f + 0.003921569f * frand8() * 2.0f; + particleDataP->unk40.a = 0xB4; + particleDataP->unk2C = 15.0f * radiusBase; } } - var_r31 = particle->unk_48; - for (i = 0; i < particle->unk_30; i++, var_r31++) { - if (var_r31->unk2C != 0.0f) { - var_r31->unk34.y -= var_r31->unk08.x; - var_r31->unk2C -= var_r31->unk08.y; - if (var_r31->unk2C <= 0.0f) { - var_r31->unk2C = 0.0f; + particleDataP = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, particleDataP++) { + if (particleDataP->unk2C != 0.0f) { + particleDataP->unk34.y -= particleDataP->unk08.x; + particleDataP->unk2C -= particleDataP->unk08.y; + if (particleDataP->unk2C <= 0.0f) { + particleDataP->unk2C = 0.0f; } } } } -static void fn_1_11484(ModelData *model, ParticleData *particle, Mtx matrix) +static void ItemGetEff2Hook(ModelData *model, ParticleData *particle, Mtx matrix) { - HsfanimStruct01 *var_r31; - float temp_f29; - float temp_f30; - float temp_f31; - s32 var_r28; - s32 var_r29; + HsfanimStruct01 *particleDataP; + float angle2; + float angle; + float radius; + s32 j; + s32 i; if (particle->unk_34 == 0) { - var_r31 = particle->unk_48; - for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - var_r31->unk40.a = 0; - var_r31->unk2C = 0.0f; + particleDataP = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, particleDataP++) { + particleDataP->unk40.a = 0; + particleDataP->unk2C = 0.0f; } particle->unk_00 = 0; } if (particle->unk_00 == 0) { - var_r31 = particle->unk_48; - for (var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) { - temp_f30 = 0.003921569f * frand8() * 360.0f; - temp_f31 = 0.003921569f * frand8() * 50.0f; - var_r31->unk08.x = temp_f31 * cosd(temp_f30); - var_r31->unk08.y = 2.0f + 0.003921569f * frand8() * 4.0f; - var_r31->unk08.z = temp_f31 * sind(temp_f30); - temp_f29 = 60.0f + 20.0f * frand8() * 0.003921569f; - temp_f31 = 4.0f + 5.0f * frand8() * 0.003921569f; - var_r31->unk14.x = temp_f31 * sind(temp_f30) * cosd(temp_f29); - var_r31->unk14.y = temp_f31 * sind(temp_f29); - var_r31->unk14.z = temp_f31 * cosd(temp_f30) * cosd(temp_f29); - var_r31->unk20 = 1.0f; - var_r31->unk40.a = 0xB4; - var_r31->unk2C = 9.0f + 0.003921569f * frand8() * 4.0f; + particleDataP = particle->unk_48; + for (j = 0; j < particle->unk_30; j++, particleDataP++) { + angle = 0.003921569f * frand8() * 360.0f; + radius = 0.003921569f * frand8() * 50.0f; + particleDataP->unk08.x = radius * cosd(angle); + particleDataP->unk08.y = 2.0f + 0.003921569f * frand8() * 4.0f; + particleDataP->unk08.z = radius * sind(angle); + angle2 = 60.0f + 20.0f * frand8() * 0.003921569f; + radius = 4.0f + 5.0f * frand8() * 0.003921569f; + particleDataP->unk14.x = radius * sind(angle) * cosd(angle2); + particleDataP->unk14.y = radius * sind(angle2); + particleDataP->unk14.z = radius * cosd(angle) * cosd(angle2); + particleDataP->unk20 = 1.0f; + particleDataP->unk40.a = 0xB4; + particleDataP->unk2C = 9.0f + 0.003921569f * frand8() * 4.0f; } particle->unk_00 = 1; } - var_r31 = particle->unk_48; - for (var_r29 = 0; var_r29 < particle->unk_30; var_r29++, var_r31++) { - if (var_r31->unk2C != 0.0f) { - var_r31->unk34.x = var_r31->unk08.x + var_r31->unk14.x * var_r31->unk20; - var_r31->unk34.z = var_r31->unk08.z + var_r31->unk14.z * var_r31->unk20; - var_r31->unk34.y = var_r31->unk08.y + var_r31->unk14.y * var_r31->unk20 - 0.2f * var_r31->unk20 * var_r31->unk20; - var_r31->unk2C -= 0.25f; - var_r31->unk20 += 1.0f; - if (var_r31->unk2C <= 0.0f) { - var_r31->unk2C = 0.0f; + particleDataP = particle->unk_48; + for (i = 0; i < particle->unk_30; i++, particleDataP++) { + if (particleDataP->unk2C != 0.0f) { + particleDataP->unk34.x = particleDataP->unk08.x + particleDataP->unk14.x * particleDataP->unk20; + particleDataP->unk34.z = particleDataP->unk08.z + particleDataP->unk14.z * particleDataP->unk20; + particleDataP->unk34.y = particleDataP->unk08.y + particleDataP->unk14.y * particleDataP->unk20 - 0.2f * particleDataP->unk20 * particleDataP->unk20; + particleDataP->unk2C -= 0.25f; + particleDataP->unk20 += 1.0f; + if (particleDataP->unk2C <= 0.0f) { + particleDataP->unk2C = 0.0f; } } } From ea3af4e95ab738b27ae899957140ab189c66ffb7 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Wed, 5 Feb 2025 22:02:56 -0500 Subject: [PATCH 158/178] name audio.c and board/audio.c (#561) --- include/game/audio.h | 50 +++---- include/game/board/audio.h | 14 +- src/game/audio.c | 262 ++++++++++++++++++------------------- src/game/board/audio.c | 90 ++++++------- 4 files changed, 208 insertions(+), 208 deletions(-) diff --git a/include/game/audio.h b/include/game/audio.h index 16738144..f5ca39f0 100644 --- a/include/game/audio.h +++ b/include/game/audio.h @@ -30,41 +30,41 @@ void HuAudFXFadeOut(int seNo, s32 speed); void HuAudFXPanning(int seNo, s16 pan); void HuAudFXListnerSet(Vec *pos, Vec *heading, float sndDist, float sndSpeed); void HuAudFXListnerSetEX(Vec *pos, Vec *heading, float sndDist, float sndSpeed, float startDis, float frontSurDis, float backSurDis); -void HuAudFXListnerUpdate(Vec *arg0, Vec *arg1); +void HuAudFXListnerUpdate(Vec *pos, Vec *heading); int HuAudFXEmiterPlay(int seId, Vec *pos); void HuAudFXEmiterUpDate(int seNo, Vec *pos); void HuAudFXListnerKill(void); -void HuAudFXPauseAll(s32 arg0); +void HuAudFXPauseAll(s32 pause); s32 HuAudFXStatusGet(int seNo); s32 HuAudFXPitchSet(int seNo, s16 pitch); s32 HuAudFXVolSet(int seNo, s16 vol); -s32 HuAudSeqPlay(s16 arg0); -void HuAudSeqStop(s32 arg0); -void HuAudSeqFadeOut(s32 arg0, s32 arg1); -void HuAudSeqAllFadeOut(s32 arg0); +s32 HuAudSeqPlay(s16 musId); +void HuAudSeqStop(s32 musNo); +void HuAudSeqFadeOut(s32 musNo, s32 speed); +void HuAudSeqAllFadeOut(s32 speed); void HuAudSeqAllStop(void); -void HuAudSeqPauseAll(s32 arg0); -void HuAudSeqPause(s32 arg0, s32 arg1, s32 arg2); -s32 HuAudSeqMidiCtrlGet(s32 arg0, s8 arg1, s8 arg2); -s32 HuAudSStreamPlay(s16 arg0); -void HuAudSStreamStop(s32 arg0); -void HuAudSStreamFadeOut(s32 arg0, s32 arg1); -void HuAudSStreamAllFadeOut(s32 arg0); +void HuAudSeqPauseAll(s32 pause); +void HuAudSeqPause(s32 musNo, s32 pause, s32 speed); +s32 HuAudSeqMidiCtrlGet(s32 musNo, s8 channel, s8 ctrl); +s32 HuAudSStreamPlay(s16 streamId); +void HuAudSStreamStop(s32 seNo); +void HuAudSStreamFadeOut(s32 seNo, s32 speed); +void HuAudSStreamAllFadeOut(s32 speed); void HuAudSStreamAllStop(void); -s32 HuAudSStreamStatGet(s32 arg0); +s32 HuAudSStreamStatGet(s32 seNo); void HuAudDllSndGrpSet(u16 ovl); -void HuAudSndGrpSetSet(s16 arg0); -void HuAudSndGrpSet(s16 arg0); -void HuAudSndCommonGrpSet(s16 arg0, s32 arg1); -void HuAudAUXSet(s32 arg0, s32 arg1); -void HuAudAUXVolSet(s8 arg0, s8 arg1); +void HuAudSndGrpSetSet(s16 data_size); +void HuAudSndGrpSet(s16 grpId); +void HuAudSndCommonGrpSet(s16 grpId, s32 groupCheck); +void HuAudAUXSet(s32 auxA, s32 auxB); +void HuAudAUXVolSet(s8 auxA, s8 auxB); void HuAudVoiceInit(s16 ovl); -s32 HuAudPlayerVoicePlay(s16 arg0, s16 arg1); -s32 HuAudPlayerVoicePlayPos(s16 arg0, s16 arg1, Vec *arg2); -void HuAudPlayerVoicePlayEntry(s16 arg0, s16 arg1); -s32 HuAudCharVoicePlay(s16 arg0, s16 arg1); -s32 HuAudCharVoicePlayPos(s16 arg0, s16 arg1, Vec *arg2); -void HuAudCharVoicePlayEntry(s16 arg0, s16 arg1); +s32 HuAudPlayerVoicePlay(s16 player, s16 seId); +s32 HuAudPlayerVoicePlayPos(s16 player, s16 seId, Vec *pos); +void HuAudPlayerVoicePlayEntry(s16 player, s16 seId); +s32 HuAudCharVoicePlay(s16 charNo, s16 seId); +s32 HuAudCharVoicePlayPos(s16 charNo, s16 seId, Vec *pos); +void HuAudCharVoicePlayEntry(s16 charNo, s16 seId); extern float Snd3DBackSurDisOffset; extern float Snd3DFrontSurDisOffset; diff --git a/include/game/board/audio.h b/include/game/board/audio.h index a3b617b9..714e97fa 100755 --- a/include/game/board/audio.h +++ b/include/game/board/audio.h @@ -4,13 +4,13 @@ #include "dolphin/types.h" void BoardMusStartBoard(void); -void BoardMusStart(s32 arg0, s32 arg1, s8 arg2, u16 arg3); -void BoardAudSeqFadeOutFast(s32 arg0); -void BoardAudSeqFadeOut(s32 arg0, u16 arg1); -void BoardMusLoudSet(s32 arg0, s32 arg1); -void BoardMusVolPanSet(s32 arg0, s8 arg1, u16 arg2); -void BoardAudSeqPause(s32 arg0, s32 arg1, u16 arg2); -s32 BoardMusStatusGet(s32 arg0); +void BoardMusStart(s32 boardNo, s32 musId, s8 vol, u16 speed); +void BoardAudSeqFadeOutFast(s32 boardNo); +void BoardAudSeqFadeOut(s32 boardNo, u16 speed); +void BoardMusLoudSet(s32 boardNo, s32 isQuieter); +void BoardMusVolPanSet(s32 boardNo, s8 vol, u16 fadeSpeed); +void BoardAudSeqPause(s32 boardNo, s32 pause, u16 speed); +s32 BoardMusStatusGet(s32 boardNo); void BoardAudSeqClear(void); void BoardAudSeqFadeOutAll(void); void BoardAudFXPlay(void); diff --git a/src/game/audio.c b/src/game/audio.c index 8b01f192..83f5f259 100644 --- a/src/game/audio.c +++ b/src/game/audio.c @@ -100,10 +100,10 @@ void HuAudAllStop(void) { HuAudSStreamAllStop(); } -void HuAudFadeOut(s32 arg0) { +void HuAudFadeOut(s32 speed) { HuAudFXAllStop(); - HuAudSeqAllFadeOut(arg0); - HuAudSStreamAllFadeOut(arg0); + HuAudSeqAllFadeOut(speed); + HuAudSStreamAllFadeOut(speed); } int HuAudFXPlay(int seId) @@ -228,8 +228,8 @@ void HuAudFXListnerKill(void) { msmSeDelListener(); } -void HuAudFXPauseAll(s32 arg0) { - msmSePauseAll(arg0, 0x64); +void HuAudFXPauseAll(s32 pause) { + msmSePauseAll(pause, 0x64); } s32 HuAudFXStatusGet(int seNo) { @@ -259,35 +259,35 @@ s32 HuAudFXVolSet(int seNo, s16 vol) return msmSeSetParam(seNo, ¶m); } -s32 HuAudSeqPlay(s16 arg0) { - s32 temp_r31; +s32 HuAudSeqPlay(s16 musId) { + s32 channel; if (musicOffF != 0 || omSysExitReq != 0) { return 0; } - temp_r31 = msmMusPlay(arg0, NULL); - return temp_r31; + channel = msmMusPlay(musId, NULL); + return channel; } -void HuAudSeqStop(s32 arg0) { +void HuAudSeqStop(s32 musNo) { if (musicOffF != 0 || omSysExitReq != 0) { return; } - msmMusStop(arg0, 0); + msmMusStop(musNo, 0); } -void HuAudSeqFadeOut(s32 arg0, s32 arg1) { +void HuAudSeqFadeOut(s32 musNo, s32 speed) { if (musicOffF == 0) { - msmMusStop(arg0, arg1); + msmMusStop(musNo, speed); } } -void HuAudSeqAllFadeOut(s32 arg0) { +void HuAudSeqAllFadeOut(s32 speed) { s16 i; for (i = 0; i < 4; i++) { if (msmMusGetStatus(i) == 2) { - msmMusStop(i, arg0); + msmMusStop(i, speed); } } } @@ -296,22 +296,22 @@ void HuAudSeqAllStop(void) { msmMusStopAll(0, 0); } -void HuAudSeqPauseAll(s32 arg0) { - msmMusPauseAll(arg0, 0x64); +void HuAudSeqPauseAll(s32 pause) { + msmMusPauseAll(pause, 0x64); } -void HuAudSeqPause(s32 arg0, s32 arg1, s32 arg2) { +void HuAudSeqPause(s32 musNo, s32 pause, s32 speed) { if (musicOffF != 0 || omSysExitReq != 0) { return; } - msmMusPause(arg0, arg1, arg2); + msmMusPause(musNo, pause, speed); } -s32 HuAudSeqMidiCtrlGet(s32 arg0, s8 arg1, s8 arg2) { +s32 HuAudSeqMidiCtrlGet(s32 musNo, s8 channel, s8 ctrl) { if (musicOffF != 0 || omSysExitReq != 0) { return 0; } - return msmMusGetMidiCtrl(arg0, arg1, arg2); + return msmMusGetMidiCtrl(musNo, channel, ctrl); } s32 HuAudSStreamPlay(s16 streamId) { @@ -326,28 +326,28 @@ s32 HuAudSStreamPlay(s16 streamId) { return result; } -void HuAudSStreamStop(s32 arg0) { +void HuAudSStreamStop(s32 seNo) { if (musicOffF == 0) { - msmStreamStop(arg0, 0); + msmStreamStop(seNo, 0); } } -void HuAudSStreamFadeOut(s32 arg0, s32 arg1) { +void HuAudSStreamFadeOut(s32 seNo, s32 speed) { if (musicOffF == 0) { - msmStreamStop(arg0, arg1); + msmStreamStop(seNo, speed); } } -void HuAudSStreamAllFadeOut(s32 arg0) { - msmStreamStopAll(arg0); +void HuAudSStreamAllFadeOut(s32 speed) { + msmStreamStopAll(speed); } void HuAudSStreamAllStop(void) { msmStreamStopAll(0); } -s32 HuAudSStreamStatGet(s32 arg0) { - return msmStreamGetStatus(arg0); +s32 HuAudSStreamStatGet(s32 seNo) { + return msmStreamGetStatus(seNo); } SNDGRPTBL sndGrpTable[] = { @@ -445,75 +445,75 @@ SNDGRPTBL sndGrpTable[] = { }; void HuAudDllSndGrpSet(u16 ovl) { - SNDGRPTBL *var_r31; - s16 var_r29; + SNDGRPTBL *sndGrp; + s16 grpSet; - var_r31 = sndGrpTable; + sndGrp = sndGrpTable; while (1) { - if (var_r31->ovl == ovl) { - var_r29 = var_r31->grpSet; + if (sndGrp->ovl == ovl) { + grpSet = sndGrp->grpSet; break; } - if (var_r31->ovl == OVL_INVALID) { - var_r29 = 0x12; + if (sndGrp->ovl == OVL_INVALID) { + grpSet = 0x12; break; } - var_r31++; + sndGrp++; } - if (var_r29 != -1) { + if (grpSet != -1) { OSReport("SOUND ##########################\n"); - HuAudSndGrpSetSet(var_r29); - if (var_r31->auxANo != auxANoBak || var_r31->auxBNo != auxBNoBak) { - msmSysSetAux(var_r31->auxANo, var_r31->auxBNo); - OSReport("Change AUX %d,%d\n", var_r31->auxANo, var_r31->auxBNo); - auxANoBak = var_r31->auxANo; - auxBNoBak = var_r31->auxBNo; + HuAudSndGrpSetSet(grpSet); + if (sndGrp->auxANo != auxANoBak || sndGrp->auxBNo != auxBNoBak) { + msmSysSetAux(sndGrp->auxANo, sndGrp->auxBNo); + OSReport("Change AUX %d,%d\n", sndGrp->auxANo, sndGrp->auxBNo); + auxANoBak = sndGrp->auxANo; + auxBNoBak = sndGrp->auxBNo; HuPrcVSleep(); } - HuAudAUXVolSet(var_r31->auxAVol, var_r31->auxBVol); + HuAudAUXVolSet(sndGrp->auxAVol, sndGrp->auxBVol); OSReport("##########################\n"); } } -void HuAudSndGrpSetSet(s16 arg0) { - void *temp_r3; - OSTick temp_r31; - s32 temp_r26; - s32 temp_r27; +void HuAudSndGrpSetSet(s16 data_size) { + void *buf; + OSTick osTick; + s32 numPlay; + s32 err; - if (sndGroupBak != arg0) { + if (sndGroupBak != data_size) { msmMusStopAll(1, 0); msmSeStopAll(1, 0); - temp_r31 = OSGetTick(); + osTick = OSGetTick(); while ((msmMusGetNumPlay(1) != 0 || msmSeGetNumPlay(1) != 0) - && OSTicksToMilliseconds(OSGetTick() - temp_r31) < 500); - OSReport("%d\n", OSTicksToMilliseconds(OSGetTick() - temp_r31)); - if (OSTicksToMilliseconds(OSGetTick() - temp_r31) >= 500) { - temp_r26 = msmSeGetNumPlay(1); - OSReport("Timed Out! Mus %d:SE %d\n", msmMusGetNumPlay(1), temp_r26); + && OSTicksToMilliseconds(OSGetTick() - osTick) < 500); + OSReport("%d\n", OSTicksToMilliseconds(OSGetTick() - osTick)); + if (OSTicksToMilliseconds(OSGetTick() - osTick) >= 500) { + numPlay = msmSeGetNumPlay(1); + OSReport("Timed Out! Mus %d:SE %d\n", msmMusGetNumPlay(1), numPlay); } - OSReport("GroupSet %d\n", arg0); - sndGroupBak = arg0; - temp_r27 = msmSysDelGroupAll(); - temp_r3 = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(1)); - temp_r27 = msmSysLoadGroupSet(arg0, temp_r3); - OSReport("***********GroupSet Error %d\n", temp_r27); - HuMemDirectFree(temp_r3); + OSReport("GroupSet %d\n", data_size); + sndGroupBak = data_size; + err = msmSysDelGroupAll(); + buf = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(1)); + err = msmSysLoadGroupSet(data_size, buf); + OSReport("***********GroupSet Error %d\n", err); + HuMemDirectFree(buf); } } -void HuAudSndGrpSet(s16 arg0) { - void *temp_r3; +void HuAudSndGrpSet(s16 grpId) { + void *buf; - temp_r3 = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(arg0)); - msmSysLoadGroup(arg0, temp_r3, 0); - HuMemDirectFree(temp_r3); + buf = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(grpId)); + msmSysLoadGroup(grpId, buf, 0); + HuMemDirectFree(buf); } -void HuAudSndCommonGrpSet(s16 arg0, s32 arg1) { - s16 temp_r30; - OSTick temp_r27; - void *temp_r3; +void HuAudSndCommonGrpSet(s16 grpId, s32 groupCheck) { + s16 err; + OSTick osTick; + void *buf; s16 i; for (i = 0; i < 8; i++) { @@ -521,75 +521,75 @@ void HuAudSndCommonGrpSet(s16 arg0, s32 arg1) { } msmMusStopAll(1, 0); msmSeStopAll(1, 0); - temp_r27 = OSGetTick(); + osTick = OSGetTick(); while ((msmMusGetNumPlay(1) != 0 || msmSeGetNumPlay(1) != 0) - && OSTicksToMilliseconds(OSGetTick() - temp_r27) < 500); - OSReport("CommonGrpSet %d\n", arg0); - if (arg1 != 0) { - temp_r30 = msmSysDelGroupBase(0); - if (temp_r30 < 0) { - OSReport("Del Group Error %d\n", temp_r30); + && OSTicksToMilliseconds(OSGetTick() - osTick) < 500); + OSReport("CommonGrpSet %d\n", grpId); + if (groupCheck != 0) { + err = msmSysDelGroupBase(0); + if (err < 0) { + OSReport("Del Group Error %d\n", err); } } - temp_r3 = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(arg0)); - msmSysLoadGroupBase(arg0, temp_r3); - HuMemDirectFree(temp_r3); + buf = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(grpId)); + msmSysLoadGroupBase(grpId, buf); + HuMemDirectFree(buf); sndGroupBak = -1; } -void HuAudAUXSet(s32 arg0, s32 arg1) { - if (arg0 == -1) { - arg0 = 0; +void HuAudAUXSet(s32 auxA, s32 auxB) { + if (auxA == -1) { + auxA = 0; } - if (arg1 == -1) { - arg1 = 1; + if (auxB == -1) { + auxB = 1; } - msmSysSetAux(arg0, arg1); + msmSysSetAux(auxA, auxB); } -void HuAudAUXVolSet(s8 arg0, s8 arg1) { - HuAuxAVol = arg0; - HuAuxBVol = arg1; +void HuAudAUXVolSet(s8 auxA, s8 auxB) { + HuAuxAVol = auxA; + HuAuxBVol = auxB; } void HuAudVoiceInit(s16 ovl) { - SNDGRPTBL *var_r29; - OSTick temp_r23; - s16 var_r27; - s16 temp_r26; + SNDGRPTBL *sndGrp; + OSTick osTick; + s16 numNotChars; + s16 grpId; s16 temp_r25; - s16 temp_r30; + s16 character; - void *temp_r3; + void *buf; s16 i; if (ovl != OVL_INVALID) { - var_r29 = sndGrpTable; + sndGrp = sndGrpTable; while (1) { - if (var_r29->ovl == ovl && var_r29->grpSet == -1) { + if (sndGrp->ovl == ovl && sndGrp->grpSet == -1) { return; } - if (var_r29->ovl == OVL_INVALID) { + if (sndGrp->ovl == OVL_INVALID) { break; } - var_r29++; + sndGrp++; } } - for (i = var_r27 = 0; i < 4; i++) { - temp_r30 = GWPlayerCfg[i].character; - if (temp_r30 < 0 || temp_r30 >= 8 || temp_r30 == 0xFF || charVoiceGroupStat[temp_r30] != 0) { - var_r27++; + for (i = numNotChars = 0; i < 4; i++) { + character = GWPlayerCfg[i].character; + if (character < 0 || character >= 8 || character == 0xFF || charVoiceGroupStat[character] != 0) { + numNotChars++; } } - if (var_r27 < 4) { + if (numNotChars < 4) { for (i = 0; i < 8; i++) { charVoiceGroupStat[i] = 0; } msmMusStopAll(1, 0); msmSeStopAll(1, 0); - temp_r23 = OSGetTick(); + osTick = OSGetTick(); while ((msmMusGetNumPlay(1) != 0 || msmSeGetNumPlay(1) != 0) - && OSTicksToMilliseconds(OSGetTick() - temp_r23) < 500); + && OSTicksToMilliseconds(OSGetTick() - osTick) < 500); OSReport("############CharGrpSet\n"); temp_r25 = msmSysDelGroupBase(0); if (temp_r25 < 0) { @@ -598,39 +598,39 @@ void HuAudVoiceInit(s16 ovl) { OSReport("Del Group OK\n"); } for (i = 0; i < 4; i++) { - temp_r30 = GWPlayerCfg[i].character; - if (temp_r30 >= 0 && temp_r30 < 8 && temp_r30 != 0xFF) { - charVoiceGroupStat[temp_r30] = 1; - temp_r26 = temp_r30 + 0xA; - temp_r3 = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(temp_r26)); + character = GWPlayerCfg[i].character; + if (character >= 0 && character < 8 && character != 0xFF) { + charVoiceGroupStat[character] = 1; + grpId = character + 10; + buf = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(grpId)); #if VERSION_NTSC - msmSysLoadGroupBase(temp_r26, temp_r3); + msmSysLoadGroupBase(grpId, buf); #else - temp_r25 = msmSysLoadGroupBase(temp_r26, temp_r3); + temp_r25 = msmSysLoadGroupBase(grpId, buf); #endif - HuMemDirectFree(temp_r3); + HuMemDirectFree(buf); } } sndGroupBak = -1; } } -s32 HuAudPlayerVoicePlay(s16 arg0, s16 arg1) { - s16 temp_r31 = GWPlayerCfg[arg0].character; +s32 HuAudPlayerVoicePlay(s16 player, s16 seId) { + s16 charNo = GWPlayerCfg[player].character; - return HuAudCharVoicePlay(temp_r31, arg1); + return HuAudCharVoicePlay(charNo, seId); } -s32 HuAudPlayerVoicePlayPos(s16 arg0, s16 arg1, Vec *arg2) { - s16 temp_r31 = GWPlayerCfg[arg0].character; +s32 HuAudPlayerVoicePlayPos(s16 player, s16 seId, Vec *pos) { + s16 charNo = GWPlayerCfg[player].character; - return HuAudCharVoicePlayPos(temp_r31, arg1, arg2); + return HuAudCharVoicePlayPos(charNo, seId, pos); } -void HuAudPlayerVoicePlayEntry(s16 arg0, s16 arg1) { - s16 temp_r31 = GWPlayerCfg[arg0].character; +void HuAudPlayerVoicePlayEntry(s16 player, s16 seId) { + s16 charNo = GWPlayerCfg[player].character; - HuAudCharVoicePlayEntry(temp_r31, arg1); + HuAudCharVoicePlayEntry(charNo, seId); } s32 HuAudCharVoicePlay(s16 charNo, s16 seId) @@ -676,14 +676,14 @@ s32 HuAudCharVoicePlayPos(s16 charNo, s16 seId, Vec *pos) { } void HuAudCharVoicePlayEntry(s16 charNo, s16 seId) { - int spC[MSM_ENTRY_SENO_MAX]; // size unknown (min: 30, max: 33) - u16 temp_r29; + int seNoTbl[MSM_ENTRY_SENO_MAX]; // size unknown (min: 30, max: 33) + u16 id; u16 i; seId += (charNo << 6); - temp_r29 = msmSeGetEntryID(seId, spC); - for (i = 0; i < temp_r29; i++) { - msmSeStop(spC[i], 0); + id = msmSeGetEntryID(seId, seNoTbl); + for (i = 0; i < id; i++) { + msmSeStop(seNoTbl[i], 0); } } diff --git a/src/game/board/audio.c b/src/game/board/audio.c index e79abe27..d5d8ccda 100755 --- a/src/game/board/audio.c +++ b/src/game/board/audio.c @@ -15,64 +15,64 @@ static s16 boardMusTbl[] = { }; void BoardMusStartBoard(void) { - s16 temp_r31 = boardMusTbl[GWBoardGet()]; + s16 musIdx = boardMusTbl[GWBoardGet()]; - BoardMusStart(0, temp_r31, 0x7F, 0); + BoardMusStart(0, musIdx, 0x7F, 0); BoardAudFXPlay(); } -void BoardMusStart(s32 arg0, s32 arg1, s8 arg2, u16 arg3) { - s16 *temp_r31 = boardSeq[arg0]; +void BoardMusStart(s32 boardNo, s32 musId, s8 vol, u16 speed) { + s16 *board = boardSeq[boardNo]; MSM_MUSPARAM param; - if (arg1 == temp_r31[1]) { + if (musId == board[1]) { return; } - if (temp_r31[0] != -1) { - BoardAudSeqFadeOutFast(temp_r31[0]); + if (board[0] != -1) { + BoardAudSeqFadeOutFast(board[0]); } param.flag = MSM_MUSPARAM_CHAN; - if (arg3 != 0) { + if (speed != 0) { param.flag |= MSM_MUSPARAM_FADESPEED; } - if (arg2 < 0) { + if (vol < 0) { param.flag |= MSM_MUSPARAM_VOL; - arg2 = 0x7F; + vol = 0x7F; } - param.fadeSpeed = arg3; - param.vol = arg2; - param.chan = arg0; - temp_r31[0] = msmMusPlay(arg1, ¶m); - temp_r31[1] = arg1; + param.fadeSpeed = speed; + param.vol = vol; + param.chan = boardNo; + board[0] = msmMusPlay(musId, ¶m); + board[1] = musId; } -void BoardAudSeqFadeOutFast(s32 arg0) { - BoardAudSeqFadeOut(arg0, 0x64); +void BoardAudSeqFadeOutFast(s32 boardNo) { + BoardAudSeqFadeOut(boardNo, 0x64); } -void BoardAudSeqFadeOut(s32 arg0, u16 arg1) { - s16 *temp_r31 = boardSeq[arg0]; +void BoardAudSeqFadeOut(s32 boardNo, u16 speed) { + s16 *board = boardSeq[boardNo]; - if (temp_r31[0] == -1) { + if (board[0] == -1) { return; } - HuAudSeqFadeOut(temp_r31[0], arg1); - temp_r31[1] = temp_r31[0] = -1; + HuAudSeqFadeOut(board[0], speed); + board[1] = board[0] = -1; } -void BoardMusLoudSet(s32 arg0, s32 arg1) { - if (arg1 != 0) { - BoardMusVolPanSet(arg0, 0x60, 0x1F4); +void BoardMusLoudSet(s32 boardNo, s32 isQuieter) { + if (isQuieter != 0) { + BoardMusVolPanSet(boardNo, 0x60, 0x1F4); } else { - BoardMusVolPanSet(arg0, 0x7F, 0x1F4); + BoardMusVolPanSet(boardNo, 0x7F, 0x1F4); } } -void BoardMusVolPanSet(s32 arg0, s8 vol, u16 fadeSpeed) { - s16 *temp_r31 = boardSeq[arg0]; +void BoardMusVolPanSet(s32 boardNo, s8 vol, u16 fadeSpeed) { + s16 *board = boardSeq[boardNo]; MSM_MUSPARAM param; - if (temp_r31[0] == -1) { + if (board[0] == -1) { return; } param.flag = MSM_MUSPARAM_CHAN; @@ -82,32 +82,32 @@ void BoardMusVolPanSet(s32 arg0, s8 vol, u16 fadeSpeed) { } param.fadeSpeed = fadeSpeed; param.vol = vol; - msmMusSetParam(temp_r31[0], ¶m); + msmMusSetParam(board[0], ¶m); } -void BoardAudSeqPause(s32 arg0, s32 arg1, u16 arg2) { - s16 *temp_r31 = boardSeq[arg0]; +void BoardAudSeqPause(s32 boardNo, s32 pause, u16 speed) { + s16 *board = boardSeq[boardNo]; - if (temp_r31[0] == -1) { + if (board[0] == -1) { return; } - if (arg1 != 0) { - if (BoardMusStatusGet(arg0) == 3) { + if (pause != 0) { + if (BoardMusStatusGet(boardNo) == 3) { return; } - } else if (BoardMusStatusGet(arg0) != 3) { + } else if (BoardMusStatusGet(boardNo) != 3) { return; } - HuAudSeqPause(temp_r31[0], arg1, arg2); + HuAudSeqPause(board[0], pause, speed); } -s32 BoardMusStatusGet(s32 arg0) { - s16 *temp_r31 = boardSeq[arg0]; +s32 BoardMusStatusGet(s32 boardNo) { + s16 *board = boardSeq[boardNo]; - if (temp_r31[0] == -1) { + if (board[0] == -1) { return 0; } - return msmMusGetStatus(temp_r31[0]); + return msmMusGetStatus(board[0]); } void BoardAudSeqClear(void) { @@ -134,20 +134,20 @@ void BoardAudSeqFadeOutAll(void) { } void BoardAudFXPlay(void) { - s32 var_r31; + s32 seId; switch (GWBoardGet()) { case BOARD_ID_MAIN5: - var_r31 = 0x48D; + seId = 0x48D; break; case BOARD_ID_MAIN6: - var_r31 = 0x4A2; + seId = 0x4A2; break; default: return; } if (boardFX == -1) { - boardFX = HuAudFXPlay(var_r31); + boardFX = HuAudFXPlay(seId); } } From 560a59251803183e9608037fa4f6a0306703303a Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Thu, 6 Feb 2025 10:41:45 -0600 Subject: [PATCH 159/178] Add symbols for instdll and resultdll in us (#562) * Label most of w01Dll * Add symbols for instdll and resultdll in us * Fix pal symbols for instDll * Build resultdll+symbols for pal --- config/GMPE01_00/rels/instDll/symbols.txt | 76 +- config/GMPE01_00/rels/resultDll/symbols.txt | 184 +-- config/GMPP01_00/rels/instDll/symbols.txt | 88 +- config/GMPP01_00/rels/resultDll/symbols.txt | 188 +-- configure.py | 6 +- include/REL/instDll.h | 2 +- include/REL/resultdll.h | 34 +- src/REL/instDll/font.c | 156 +-- src/REL/instDll/main.c | 1033 +++++++------- src/REL/resultDll/battle.c | 589 ++++---- src/REL/resultDll/datalist.c | 38 +- src/REL/resultDll/main.c | 1357 +++++++++---------- 12 files changed, 1876 insertions(+), 1875 deletions(-) diff --git a/config/GMPE01_00/rels/instDll/symbols.txt b/config/GMPE01_00/rels/instDll/symbols.txt index 0580b867..cc0a6047 100644 --- a/config/GMPE01_00/rels/instDll/symbols.txt +++ b/config/GMPE01_00/rels/instDll/symbols.txt @@ -1,16 +1,16 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global ObjectSetup = .text:0x000000A0; // type:function size:0x8F4 -fn_1_994 = .text:0x00000994; // type:function size:0xE50 scope:local -fn_1_17E4 = .text:0x000017E4; // type:function size:0xA28 scope:local -fn_1_220C = .text:0x0000220C; // type:function size:0x5F8 scope:local -fn_1_2804 = .text:0x00002804; // type:function size:0x79C scope:local -fn_1_2FA0 = .text:0x00002FA0; // type:function size:0x11D4 scope:local -fn_1_4174 = .text:0x00004174; // type:function size:0x3B4 scope:local -fn_1_4528 = .text:0x00004528; // type:function size:0xB88 scope:local -fn_1_50B0 = .text:0x000050B0; // type:function size:0xAB4 scope:local -fn_1_5B64 = .text:0x00005B64; // type:function size:0x340 scope:local -fn_1_5EA4 = .text:0x00005EA4; // type:function size:0x4B8 +InstMain = .text:0x00000994; // type:function size:0xE50 scope:local +InstPlayerMain = .text:0x000017E4; // type:function size:0xA28 scope:local +InstHostMain = .text:0x0000220C; // type:function size:0x5F8 scope:local +InstWinMain = .text:0x00002804; // type:function size:0x79C scope:local +InstNameMain = .text:0x00002FA0; // type:function size:0x11D4 scope:local +CameraOutView = .text:0x00004174; // type:function size:0x3B4 scope:local +CameraDebug = .text:0x00004528; // type:function size:0xB88 scope:local +InstPicDraw = .text:0x000050B0; // type:function size:0xAB4 scope:local +ShadowDraw = .text:0x00005B64; // type:function size:0x340 scope:local +FontCreate = .text:0x00005EA4; // type:function size:0x4B8 _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 scope:local data:float @@ -115,38 +115,38 @@ lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x4 scope:local data: 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:0x8 scope:local data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 scope:local data:2byte +instMode = .data:0x00000000; // type:object size:0x2 scope:local data:2byte lbl_1_data_2 = .data:0x00000002; // type:object size:0x24 scope:local data:string -lbl_1_data_26 = .data:0x00000026; // type:object size:0x20 scope:local -lbl_1_data_46 = .data:0x00000046; // type:object size:0x8 scope:local -lbl_1_data_50 = .data:0x00000050; // type:object size:0x20 scope:local -lbl_1_data_70 = .data:0x00000070; // type:object size:0x20 scope:local +instGrpTbl = .data:0x00000026; // type:object size:0x20 scope:local +instPlayerNumTbl = .data:0x00000046; // type:object size:0x8 scope:local +instBoxFile = .data:0x00000050; // type:object size:0x20 scope:local +instBackFile = .data:0x00000070; // type:object size:0x20 scope:local lbl_1_data_90 = .data:0x00000090; // type:object size:0x8 scope:local data:string lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 scope:local data:string lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 scope:local data:string lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x8 scope:local data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 scope:local -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x4 scope:local -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x48 scope:local -lbl_1_data_10C = .data:0x0000010C; // type:object size:0x18 scope:local -lbl_1_data_124 = .data:0x00000124; // type:object size:0x20 scope:local data:float -lbl_1_data_144 = .data:0x00000144; // type:object size:0x4 scope:local +playerPosNameTbl = .data:0x000000B0; // type:object size:0x10 scope:local +playerDelayTbl = .data:0x000000C0; // type:object size:0x4 scope:local +hostFileTbl = .data:0x000000C4; // type:object size:0x48 scope:local +hostSeTbl = .data:0x0000010C; // type:object size:0x18 scope:local +instNamePosTbl = .data:0x00000124; // type:object size:0x20 scope:local data:float +cameraMask$858 = .data:0x00000144; // type:object size:0x4 scope:local lbl_1_data_148 = .data:0x00000148; // type:object size:0x4 scope:local -lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 scope:local data:float -lbl_1_data_150 = .data:0x00000150; // type:object size:0x318 scope:local -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x1 scope:local data:byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 scope:local data:float -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 scope:local data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 scope:local data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x18 scope:local data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x18 scope:local data:float -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 scope:local data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 scope:local data:4byte +instPicRadius = .data:0x0000014C; // type:object size:0x4 scope:local data:float +FontCharFile = .data:0x00000150; // type:object size:0x318 scope:local +debugCamOnF = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte +instBusyF = .bss:0x00000004; // type:object size:0x2 scope:local data:2byte +instPage = .bss:0x00000006; // type:object size:0x2 scope:local data:2byte +LanguageNo = .bss:0x00000008; // type:object size:0x1 scope:local data:byte +instFov = .bss:0x0000000C; // type:object size:0x4 scope:local data:float +instMesOfs = .bss:0x00000010; // type:object size:0x2 scope:local data:2byte +instHostNo = .bss:0x00000012; // type:object size:0x2 scope:local data:2byte +instMgNo = .bss:0x00000014; // type:object size:0x2 scope:local data:2byte +instPicAnim = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +instBoxMdlId = .bss:0x0000001C; // type:object size:0x4 scope:local data:4byte +cameraZoom = .bss:0x00000020; // type:object size:0x8 data:float +cameraPos = .bss:0x00000028; // type:object size:0x18 data:float +cameraRot = .bss:0x00000040; // type:object size:0x18 data:float +objman = .bss:0x00000058; // type:object size:0x4 data:4byte +outViewObj = .bss:0x0000005C; // type:object size:0x4 scope:local data:4byte lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 scope:local data:4byte diff --git a/config/GMPE01_00/rels/resultDll/symbols.txt b/config/GMPE01_00/rels/resultDll/symbols.txt index 14dbe624..db16ef1b 100644 --- a/config/GMPE01_00/rels/resultDll/symbols.txt +++ b/config/GMPE01_00/rels/resultDll/symbols.txt @@ -1,34 +1,34 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global ObjectSetup = .text:0x000000A0; // type:function size:0x438 -fn_1_4D8 = .text:0x000004D8; // type:function size:0x3B0 -fn_1_888 = .text:0x00000888; // type:function size:0x2F0 -fn_1_B78 = .text:0x00000B78; // type:function size:0x13D4 -fn_1_1F4C = .text:0x00001F4C; // type:function size:0xB90 -fn_1_2ADC = .text:0x00002ADC; // type:function size:0x1074 -fn_1_3B50 = .text:0x00003B50; // type:function size:0x15C -fn_1_3CAC = .text:0x00003CAC; // type:function size:0x15C -fn_1_3E08 = .text:0x00003E08; // type:function size:0x1D0 -fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x104 -fn_1_40DC = .text:0x000040DC; // type:function size:0x160 -fn_1_423C = .text:0x0000423C; // type:function size:0x3E0 -fn_1_461C = .text:0x0000461C; // type:function size:0x1E0 -fn_1_47FC = .text:0x000047FC; // type:function size:0x1084 -fn_1_5880 = .text:0x00005880; // type:function size:0xC10 -fn_1_6490 = .text:0x00006490; // type:function size:0x2D0 -fn_1_6760 = .text:0x00006760; // type:function size:0xC4 -fn_1_6824 = .text:0x00006824; // type:function size:0xD20 -fn_1_7544 = .text:0x00007544; // type:function size:0xA54 -fn_1_7F98 = .text:0x00007F98; // type:function size:0x3A0 -fn_1_8338 = .text:0x00008338; // type:function size:0x14C -fn_1_8484 = .text:0x00008484; // type:function size:0x1D4 -fn_1_8658 = .text:0x00008658; // type:function size:0x84 -fn_1_86DC = .text:0x000086DC; // type:function size:0x2BC -fn_1_8998 = .text:0x00008998; // type:function size:0x320 -fn_1_8CB8 = .text:0x00008CB8; // type:function size:0x340 -fn_1_8FF8 = .text:0x00008FF8; // type:function size:0x284 -fn_1_927C = .text:0x0000927C; // type:function size:0x138 -fn_1_93B4 = .text:0x000093B4; // type:function size:0x78 +ResultMain = .text:0x000004D8; // type:function size:0x3B0 scope:local +ResultIdle = .text:0x00000888; // type:function size:0x2F0 scope:local +ResultCreate = .text:0x00000B78; // type:function size:0x13D4 scope:local +ResultStatAdd = .text:0x00001F4C; // type:function size:0xB90 scope:local +ResultOrderApply = .text:0x00002ADC; // type:function size:0x1074 scope:local +ResultSprNumSet = .text:0x00003B50; // type:function size:0x15C scope:local +ResultCoinAddNumSet = .text:0x00003CAC; // type:function size:0x15C scope:local +ResultOrderSet = .text:0x00003E08; // type:function size:0x1D0 scope:local +ResultBoardDataRead = .text:0x00003FD8; // type:function size:0x104 +ResultCoinAdd = .text:0x000040DC; // type:function size:0x160 +ResultCoinNumGet = .text:0x0000423C; // type:function size:0x3E0 +SaveExec = .text:0x0000461C; // type:function size:0x1E0 scope:local +ResultTeamExec = .text:0x000047FC; // type:function size:0x1084 scope:local +CameraDebug = .text:0x00005880; // type:function size:0xC10 +ResultBattleMain = .text:0x00006490; // type:function size:0x2D0 +ResultBattleIdle = .text:0x00006760; // type:function size:0xC4 scope:local +ResultBattleCreate = .text:0x00006824; // type:function size:0xD20 scope:local +ResultBattleStatAdd = .text:0x00007544; // type:function size:0xA54 scope:local +ResultBattleCoinAddShow = .text:0x00007F98; // type:function size:0x3A0 scope:local +ResultBattleCoinAddNumSet = .text:0x00008338; // type:function size:0x14C scope:local +ResultBattleOrderSet = .text:0x00008484; // type:function size:0x1D4 scope:local +CoinEffectInit = .text:0x00008658; // type:function size:0x84 scope:local +CoinEffectAdd = .text:0x000086DC; // type:function size:0x2BC scope:local +CoinEffectMain = .text:0x00008998; // type:function size:0x320 scope:local +ResultShadowDraw = .text:0x00008CB8; // type:function size:0x340 scope:local +StageModelCreate = .text:0x00008FF8; // type:function size:0x284 +StageSpriteCreate = .text:0x0000927C; // type:function size:0x138 +StageSpriteKill = .text:0x000093B4; // type:function size:0x78 _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 scope:local data:float @@ -134,77 +134,77 @@ lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data: lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float 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_data_0 = .data:0x00000000; // type:object size:0x2A4 -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0xDC data:4byte -lbl_1_data_380 = .data:0x00000380; // type:object size:0x2 data:2byte +resultModel = .data:0x00000000; // type:object size:0x2A4 scope:local +resultSprite = .data:0x000002A4; // type:object size:0xDC scope:local data:4byte +rankNewGrpId = .data:0x00000380; // type:object size:0x2 scope:local data:2byte lbl_1_data_382 = .data:0x00000382; // type:object size:0x26 scope:local data:string -lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x18 -lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x18 -lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x20 -lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x10 -lbl_1_data_408 = .data:0x00000408; // type:object size:0x30 -lbl_1_data_438 = .data:0x00000438; // type:object size:0x10 +resultBackFile = .data:0x000003A8; // type:object size:0x18 scope:local +resultLetterFile = .data:0x000003C0; // type:object size:0x18 scope:local +resultStatPosTbl = .data:0x000003D8; // type:object size:0x20 scope:local +resultRankPosTbl = .data:0x000003F8; // type:object size:0x10 scope:local +resultCharPosTbl = .data:0x00000408; // type:object size:0x30 scope:local +resultCoinAddPosTbl = .data:0x00000438; // type:object size:0x10 scope:local lbl_1_data_448 = .data:0x00000448; // type:object size:0x5 scope:local data:string -lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 -lbl_1_data_468 = .data:0x00000468; // type:object size:0x20 -lbl_1_data_488 = .data:0x00000488; // type:object size:0x30 +resultBoardDirTbl = .data:0x00000450; // type:object size:0x18 scope:local +resultCharMdlTbl = .data:0x00000468; // type:object size:0x20 scope:local +resultTeamCharPosTbl = .data:0x00000488; // type:object size:0x30 scope:local lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x11 scope:local data:string lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0x11 scope:local data:string lbl_1_data_4DA = .data:0x000004DA; // type:object size:0xB scope:local data:string -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x270 -lbl_1_data_758 = .data:0x00000758; // type:object size:0x28 -lbl_1_data_780 = .data:0x00000780; // type:object size:0x50 -lbl_1_data_7D0 = .data:0x000007D0; // type:object size:0x20 -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x30 +resultBattleModel = .data:0x000004E8; // type:object size:0x270 scope:local +resultBattleSprite = .data:0x00000758; // type:object size:0x28 scope:local +resultBattleEffParMan = .data:0x00000780; // type:object size:0x50 scope:local +resultStatPosTbl = .data:0x000007D0; // type:object size:0x20 scope:local +playerPosTbl = .data:0x000007F0; // type:object size:0x30 scope:local lbl_1_data_820 = .data:0x00000820; // type:object size:0x10 -lbl_1_data_830 = .data:0x00000830; // type:object size:0x10 -lbl_1_data_840 = .data:0x00000840; // type:object size:0x20 -lbl_1_data_860 = .data:0x00000860; // type:object size:0x20 -lbl_1_data_880 = .data:0x00000880; // type:object size:0x20 -lbl_1_data_8A0 = .data:0x000008A0; // type:object size:0x6 data:2byte -lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 scope:local data:float -lbl_1_data_8AE = .data:0x000008AE; // type:object size:0x8 scope:local data:float -lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x60 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x8 -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x28 -lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x8 -lbl_1_bss_42 = .bss:0x00000042; // type:object size:0x8 -lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x8 -lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x40 -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte -lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x30 -lbl_1_bss_CE = .bss:0x000000CE; // type:object size:0x12 -lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x60 -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x14 -lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x10 -lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x8 -lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x2 data:2byte -lbl_1_bss_172 = .bss:0x00000172; // type:object size:0x2 data:2byte -lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte -lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte -lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x2 data:2byte -lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte -lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x4 data:4byte +bomheiCubeMdlTbl = .data:0x00000830; // type:object size:0x10 scope:local +coinEffectYOfs = .data:0x00000840; // type:object size:0x20 scope:local +coinAddYOfs = .data:0x00000860; // type:object size:0x20 scope:local +coinBlankYOfs = .data:0x00000880; // type:object size:0x20 scope:local +coinNumXOfs = .data:0x000008A0; // type:object size:0x6 scope:local data:2byte +lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 scope:local data:string +lbl_1_data_8AE = .data:0x000008AE; // type:object size:0x8 scope:local data:string +cameraShakeOfs = .data:0x000008B8; // type:object size:0x60 scope:local +resultReorderF = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte +resultSkipF = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +resultTeamOrder = .bss:0x00000008; // type:object size:0x2 scope:local data:2byte +resultCharCubeMdlId = .bss:0x0000000A; // type:object size:0x8 scope:local +resultCoinAddSprId = .bss:0x00000012; // type:object size:0x28 scope:local +resultCoinAddGrpId = .bss:0x0000003A; // type:object size:0x8 scope:local +resultRank = .bss:0x00000042; // type:object size:0x8 scope:local +resultOrder = .bss:0x0000004A; // type:object size:0x8 scope:local +resultRankGrpId = .bss:0x00000052; // type:object size:0x2 scope:local data:2byte +resultPlayerCubeMdlId = .bss:0x00000054; // type:object size:0x8 scope:local +resultCubeMdlId = .bss:0x0000005C; // type:object size:0x40 scope:local +resultCrownGrpId = .bss:0x0000009C; // type:object size:0x2 scope:local data:2byte +resultNumSprId = .bss:0x0000009E; // type:object size:0x30 scope:local +resultNumGrpId = .bss:0x000000CE; // type:object size:0x10 scope:local +resultCrownAnim = .bss:0x000000E0; // type:object size:0x4 scope:local data:4byte +resultCharAnim = .bss:0x000000E4; // type:object size:0x60 scope:local +resultRankAnim = .bss:0x00000144; // type:object size:0x14 scope:local +statShadowMdlId = .bss:0x00000158; // type:object size:0x10 scope:local +charShadowMdlId = .bss:0x00000168; // type:object size:0x8 scope:local +teamResultGrpId = .bss:0x00000170; // type:object size:0x2 scope:local data:2byte +resultBonusPlayer = .bss:0x00000172; // type:object size:0x2 data:2byte +resultFastF = .bss:0x00000174; // type:object size:0x4 data:4byte +resultReadEndF = .bss:0x00000178; // type:object size:0x4 data:4byte +resultMgNo = .bss:0x0000017C; // type:object size:0x2 data:2byte +objman = .bss:0x00000180; // type:object size:0x4 data:4byte +outViewObj = .bss:0x00000184; // type:object size:0x4 scope:local data:4byte lbl_1_bss_188 = .bss:0x00000188; // type:object size:0x4 data:4byte -lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte -lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x1680 -lbl_1_bss_1814 = .bss:0x00001814; // type:object size:0x8 +resultBattleSkipF = .bss:0x00000190; // type:object size:0x4 scope:local data:4byte +coinEffectData = .bss:0x00000194; // type:object size:0x1680 scope:local +resultBattleEffParManId = .bss:0x00001814; // type:object size:0x8 scope:local lbl_1_bss_181C = .bss:0x0000181C; // type:object size:0xC -lbl_1_bss_1828 = .bss:0x00001828; // type:object size:0x168 data:2byte -lbl_1_bss_1990 = .bss:0x00001990; // type:object size:0x20 -lbl_1_bss_19B0 = .bss:0x000019B0; // type:object size:0x8 -lbl_1_bss_19B8 = .bss:0x000019B8; // type:object size:0x28 -lbl_1_bss_19E0 = .bss:0x000019E0; // type:object size:0x8 -lbl_1_bss_19E8 = .bss:0x000019E8; // type:object size:0x8 -lbl_1_bss_19F0 = .bss:0x000019F0; // type:object size:0x8 +coinEffectMdlId = .bss:0x00001828; // type:object size:0x168 scope:local data:2byte +resultBattleCharMot = .bss:0x00001990; // type:object size:0x20 scope:local +resultBattleCharMdl = .bss:0x000019B0; // type:object size:0x8 scope:local +coinNumSprId = .bss:0x000019B8; // type:object size:0x28 scope:local +coinNumGrpId = .bss:0x000019E0; // type:object size:0x8 scope:local +resultBattleRank = .bss:0x000019E8; // type:object size:0x8 scope:local +resultBattleOrder = .bss:0x000019F0; // type:object size:0x8 scope:local lbl_1_bss_19F8 = .bss:0x000019F8; // type:object size:0x20 lbl_1_bss_1A18 = .bss:0x00001A18; // type:object size:0x2 -lbl_1_bss_1A1A = .bss:0x00001A1A; // type:object size:0x42 data:2byte -lbl_1_bss_1A5C = .bss:0x00001A5C; // type:object size:0x40 data:2byte -lbl_1_bss_1A9C = .bss:0x00001A9C; // type:object size:0x40 data:2byte +stageSprId = .bss:0x00001A1A; // type:object size:0x42 data:2byte +stageMotId = .bss:0x00001A5C; // type:object size:0x40 data:2byte +stageSprId = .bss:0x00001A9C; // type:object size:0x40 data:2byte diff --git a/config/GMPP01_00/rels/instDll/symbols.txt b/config/GMPP01_00/rels/instDll/symbols.txt index 5cb1ad79..da39c5b5 100644 --- a/config/GMPP01_00/rels/instDll/symbols.txt +++ b/config/GMPP01_00/rels/instDll/symbols.txt @@ -1,16 +1,16 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global ObjectSetup = .text:0x000000A0; // type:function size:0x8F4 -fn_1_994 = .text:0x00000994; // type:function size:0xE50 -fn_1_17E4 = .text:0x000017E4; // type:function size:0xA28 -fn_1_220C = .text:0x0000220C; // type:function size:0x5F8 -fn_1_2804 = .text:0x00002804; // type:function size:0x79C -fn_1_2FA0 = .text:0x00002FA0; // type:function size:0x11D4 -fn_1_4174 = .text:0x00004174; // type:function size:0x3B4 -fn_1_4528 = .text:0x00004528; // type:function size:0xB88 -fn_1_50B0 = .text:0x000050B0; // type:function size:0xAB4 -fn_1_5B64 = .text:0x00005B64; // type:function size:0x340 -fn_1_5EA4 = .text:0x00005EA4; // type:function size:0x3F8 +InstMain = .text:0x00000994; // type:function size:0xE50 scope:local +InstPlayerMain = .text:0x000017E4; // type:function size:0xA28 scope:local +InstHostMain = .text:0x0000220C; // type:function size:0x5F8 scope:local +InstWinMain = .text:0x00002804; // type:function size:0x79C scope:local +InstNameMain = .text:0x00002FA0; // type:function size:0x11D4 scope:local +CameraOutView = .text:0x00004174; // type:function size:0x3B4 scope:local +CameraDebug = .text:0x00004528; // type:function size:0xB88 scope:local +InstPicDraw = .text:0x000050B0; // type:function size:0xAB4 scope:local +ShadowDraw = .text:0x00005B64; // type:function size:0x340 scope:local +FontCreate = .text:0x00005EA4; // type:function size:0x3F8 _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 @@ -112,36 +112,38 @@ 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_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_data_0 = .data:0x00000000; // type:object size:0x2 data:2byte -lbl_1_data_2 = .data:0x00000002; // type:object size:0x24 data:string -lbl_1_data_26 = .data:0x00000026; // type:object size:0x20 -lbl_1_data_46 = .data:0x00000046; // type:object size:0xA -lbl_1_data_50 = .data:0x00000050; // type:object size:0x20 -lbl_1_data_70 = .data:0x00000070; // type:object size:0x20 -lbl_1_data_90 = .data:0x00000090; // type:object size:0x8 data:string -lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 data:string -lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 data:string -lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x8 data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x10 -lbl_1_data_C0 = .data:0x000000C0; // type:object size:0x4 -lbl_1_data_C4 = .data:0x000000C4; // type:object size:0x48 -lbl_1_data_10C = .data:0x0000010C; // type:object size:0x18 -lbl_1_data_124 = .data:0x00000124; // type:object size:0x20 data:float -lbl_1_data_144 = .data:0x00000144; // type:object size:0x8 -lbl_1_data_14C = .data:0x0000014C; // type:object size:0x4 data:float -lbl_1_data_150 = .data:0x00000150; // type:object size:0x4C0 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte -lbl_1_bss_6 = .bss:0x00000006; // type:object size:0x2 data:2byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x1 data:byte -lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:float -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x8 data:float -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x18 data:float -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x18 data:float -lbl_1_bss_58 = .bss:0x00000058; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x8 data:4byte +instMode = .data:0x00000000; // type:object size:0x2 scope:local data:2byte +lbl_1_data_2 = .data:0x00000002; // type:object size:0x24 scope:local data:string +instGrpTbl = .data:0x00000026; // type:object size:0x20 scope:local +instPlayerNumTbl = .data:0x00000046; // type:object size:0x8 scope:local +instBoxFile = .data:0x00000050; // type:object size:0x20 scope:local +instBackFile = .data:0x00000070; // type:object size:0x20 scope:local +lbl_1_data_90 = .data:0x00000090; // type:object size:0x8 scope:local data:string +lbl_1_data_98 = .data:0x00000098; // type:object size:0x8 scope:local data:string +lbl_1_data_A0 = .data:0x000000A0; // type:object size:0x8 scope:local data:string +lbl_1_data_A8 = .data:0x000000A8; // type:object size:0x8 scope:local data:string +playerPosNameTbl = .data:0x000000B0; // type:object size:0x10 scope:local +playerDelayTbl = .data:0x000000C0; // type:object size:0x4 scope:local +hostFileTbl = .data:0x000000C4; // type:object size:0x48 scope:local +hostSeTbl = .data:0x0000010C; // type:object size:0x18 scope:local +instNamePosTbl = .data:0x00000124; // type:object size:0x20 scope:local data:float +cameraMask$858 = .data:0x00000144; // type:object size:0x4 scope:local +lbl_1_data_148 = .data:0x00000148; // type:object size:0x4 scope:local +instPicRadius = .data:0x0000014C; // type:object size:0x4 scope:local data:float +FontCharFile = .data:0x00000150; // type:object size:0x4C0 scope:local +debugCamOnF = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte +instBusyF = .bss:0x00000004; // type:object size:0x2 scope:local data:2byte +instPage = .bss:0x00000006; // type:object size:0x2 scope:local data:2byte +LanguageNo = .bss:0x00000008; // type:object size:0x1 scope:local data:byte +instFov = .bss:0x0000000C; // type:object size:0x4 scope:local data:float +instMesOfs = .bss:0x00000010; // type:object size:0x2 scope:local data:2byte +instHostNo = .bss:0x00000012; // type:object size:0x2 scope:local data:2byte +instMgNo = .bss:0x00000014; // type:object size:0x2 scope:local data:2byte +instPicAnim = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +instBoxMdlId = .bss:0x0000001C; // type:object size:0x4 scope:local data:4byte +cameraZoom = .bss:0x00000020; // type:object size:0x8 data:float +cameraPos = .bss:0x00000028; // type:object size:0x18 data:float +cameraRot = .bss:0x00000040; // type:object size:0x18 data:float +objman = .bss:0x00000058; // type:object size:0x4 data:4byte +outViewObj = .bss:0x0000005C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 scope:local data:4byte diff --git a/config/GMPP01_00/rels/resultDll/symbols.txt b/config/GMPP01_00/rels/resultDll/symbols.txt index b0b7a9af..db16ef1b 100644 --- a/config/GMPP01_00/rels/resultDll/symbols.txt +++ b/config/GMPP01_00/rels/resultDll/symbols.txt @@ -1,34 +1,34 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global ObjectSetup = .text:0x000000A0; // type:function size:0x438 -fn_1_4D8 = .text:0x000004D8; // type:function size:0x3B0 -fn_1_888 = .text:0x00000888; // type:function size:0x2F0 -fn_1_B78 = .text:0x00000B78; // type:function size:0x13D4 -fn_1_1F4C = .text:0x00001F4C; // type:function size:0xB90 -fn_1_2ADC = .text:0x00002ADC; // type:function size:0x1074 -fn_1_3B50 = .text:0x00003B50; // type:function size:0x15C -fn_1_3CAC = .text:0x00003CAC; // type:function size:0x15C -fn_1_3E08 = .text:0x00003E08; // type:function size:0x1D0 -fn_1_3FD8 = .text:0x00003FD8; // type:function size:0x104 -fn_1_40DC = .text:0x000040DC; // type:function size:0x160 -fn_1_423C = .text:0x0000423C; // type:function size:0x3E0 -fn_1_461C = .text:0x0000461C; // type:function size:0x1E0 -fn_1_47FC = .text:0x000047FC; // type:function size:0x1084 -fn_1_5880 = .text:0x00005880; // type:function size:0xC10 -fn_1_6490 = .text:0x00006490; // type:function size:0x2D0 -fn_1_6760 = .text:0x00006760; // type:function size:0xC4 -fn_1_6824 = .text:0x00006824; // type:function size:0xD20 -fn_1_7544 = .text:0x00007544; // type:function size:0xA54 -fn_1_7F98 = .text:0x00007F98; // type:function size:0x3A0 -fn_1_8338 = .text:0x00008338; // type:function size:0x14C -fn_1_8484 = .text:0x00008484; // type:function size:0x1D4 -fn_1_8658 = .text:0x00008658; // type:function size:0x84 -fn_1_86DC = .text:0x000086DC; // type:function size:0x2BC -fn_1_8998 = .text:0x00008998; // type:function size:0x320 -fn_1_8CB8 = .text:0x00008CB8; // type:function size:0x340 -fn_1_8FF8 = .text:0x00008FF8; // type:function size:0x284 -fn_1_927C = .text:0x0000927C; // type:function size:0x138 -fn_1_93B4 = .text:0x000093B4; // type:function size:0x78 +ResultMain = .text:0x000004D8; // type:function size:0x3B0 scope:local +ResultIdle = .text:0x00000888; // type:function size:0x2F0 scope:local +ResultCreate = .text:0x00000B78; // type:function size:0x13D4 scope:local +ResultStatAdd = .text:0x00001F4C; // type:function size:0xB90 scope:local +ResultOrderApply = .text:0x00002ADC; // type:function size:0x1074 scope:local +ResultSprNumSet = .text:0x00003B50; // type:function size:0x15C scope:local +ResultCoinAddNumSet = .text:0x00003CAC; // type:function size:0x15C scope:local +ResultOrderSet = .text:0x00003E08; // type:function size:0x1D0 scope:local +ResultBoardDataRead = .text:0x00003FD8; // type:function size:0x104 +ResultCoinAdd = .text:0x000040DC; // type:function size:0x160 +ResultCoinNumGet = .text:0x0000423C; // type:function size:0x3E0 +SaveExec = .text:0x0000461C; // type:function size:0x1E0 scope:local +ResultTeamExec = .text:0x000047FC; // type:function size:0x1084 scope:local +CameraDebug = .text:0x00005880; // type:function size:0xC10 +ResultBattleMain = .text:0x00006490; // type:function size:0x2D0 +ResultBattleIdle = .text:0x00006760; // type:function size:0xC4 scope:local +ResultBattleCreate = .text:0x00006824; // type:function size:0xD20 scope:local +ResultBattleStatAdd = .text:0x00007544; // type:function size:0xA54 scope:local +ResultBattleCoinAddShow = .text:0x00007F98; // type:function size:0x3A0 scope:local +ResultBattleCoinAddNumSet = .text:0x00008338; // type:function size:0x14C scope:local +ResultBattleOrderSet = .text:0x00008484; // type:function size:0x1D4 scope:local +CoinEffectInit = .text:0x00008658; // type:function size:0x84 scope:local +CoinEffectAdd = .text:0x000086DC; // type:function size:0x2BC scope:local +CoinEffectMain = .text:0x00008998; // type:function size:0x320 scope:local +ResultShadowDraw = .text:0x00008CB8; // type:function size:0x340 scope:local +StageModelCreate = .text:0x00008FF8; // type:function size:0x284 +StageSpriteCreate = .text:0x0000927C; // type:function size:0x138 +StageSpriteKill = .text:0x000093B4; // type:function size:0x78 _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 scope:local data:float @@ -94,7 +94,7 @@ lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 scope:local data: 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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float @@ -134,77 +134,77 @@ lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data: lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float 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_data_0 = .data:0x00000000; // type:object size:0x2A4 -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0xDC data:4byte -lbl_1_data_380 = .data:0x00000380; // type:object size:0x2 data:2byte +resultModel = .data:0x00000000; // type:object size:0x2A4 scope:local +resultSprite = .data:0x000002A4; // type:object size:0xDC scope:local data:4byte +rankNewGrpId = .data:0x00000380; // type:object size:0x2 scope:local data:2byte lbl_1_data_382 = .data:0x00000382; // type:object size:0x26 scope:local data:string -lbl_1_data_3A8 = .data:0x000003A8; // type:object size:0x18 -lbl_1_data_3C0 = .data:0x000003C0; // type:object size:0x18 -lbl_1_data_3D8 = .data:0x000003D8; // type:object size:0x20 -lbl_1_data_3F8 = .data:0x000003F8; // type:object size:0x10 -lbl_1_data_408 = .data:0x00000408; // type:object size:0x30 -lbl_1_data_438 = .data:0x00000438; // type:object size:0x10 -lbl_1_data_448 = .data:0x00000448; // type:object size:0x8 scope:local -lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 -lbl_1_data_468 = .data:0x00000468; // type:object size:0x20 -lbl_1_data_488 = .data:0x00000488; // type:object size:0x30 +resultBackFile = .data:0x000003A8; // type:object size:0x18 scope:local +resultLetterFile = .data:0x000003C0; // type:object size:0x18 scope:local +resultStatPosTbl = .data:0x000003D8; // type:object size:0x20 scope:local +resultRankPosTbl = .data:0x000003F8; // type:object size:0x10 scope:local +resultCharPosTbl = .data:0x00000408; // type:object size:0x30 scope:local +resultCoinAddPosTbl = .data:0x00000438; // type:object size:0x10 scope:local +lbl_1_data_448 = .data:0x00000448; // type:object size:0x5 scope:local data:string +resultBoardDirTbl = .data:0x00000450; // type:object size:0x18 scope:local +resultCharMdlTbl = .data:0x00000468; // type:object size:0x20 scope:local +resultTeamCharPosTbl = .data:0x00000488; // type:object size:0x30 scope:local lbl_1_data_4B8 = .data:0x000004B8; // type:object size:0x11 scope:local data:string lbl_1_data_4C9 = .data:0x000004C9; // type:object size:0x11 scope:local data:string lbl_1_data_4DA = .data:0x000004DA; // type:object size:0xB scope:local data:string -lbl_1_data_4E8 = .data:0x000004E8; // type:object size:0x270 -lbl_1_data_758 = .data:0x00000758; // type:object size:0x28 -lbl_1_data_780 = .data:0x00000780; // type:object size:0x50 -lbl_1_data_7D0 = .data:0x000007D0; // type:object size:0x20 -lbl_1_data_7F0 = .data:0x000007F0; // type:object size:0x30 +resultBattleModel = .data:0x000004E8; // type:object size:0x270 scope:local +resultBattleSprite = .data:0x00000758; // type:object size:0x28 scope:local +resultBattleEffParMan = .data:0x00000780; // type:object size:0x50 scope:local +resultStatPosTbl = .data:0x000007D0; // type:object size:0x20 scope:local +playerPosTbl = .data:0x000007F0; // type:object size:0x30 scope:local lbl_1_data_820 = .data:0x00000820; // type:object size:0x10 -lbl_1_data_830 = .data:0x00000830; // type:object size:0x10 -lbl_1_data_840 = .data:0x00000840; // type:object size:0x20 -lbl_1_data_860 = .data:0x00000860; // type:object size:0x20 -lbl_1_data_880 = .data:0x00000880; // type:object size:0x20 -lbl_1_data_8A0 = .data:0x000008A0; // type:object size:0x6 data:2byte -lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 scope:local data:float -lbl_1_data_8AE = .data:0x000008AE; // type:object size:0x8 scope:local data:float -lbl_1_data_8B8 = .data:0x000008B8; // type:object size:0x60 -lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x2 data:2byte -lbl_1_bss_A = .bss:0x0000000A; // type:object size:0x8 -lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x28 -lbl_1_bss_3A = .bss:0x0000003A; // type:object size:0x8 -lbl_1_bss_42 = .bss:0x00000042; // type:object size:0x8 -lbl_1_bss_4A = .bss:0x0000004A; // type:object size:0x8 -lbl_1_bss_52 = .bss:0x00000052; // type:object size:0x2 data:2byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x40 -lbl_1_bss_9C = .bss:0x0000009C; // type:object size:0x2 data:2byte -lbl_1_bss_9E = .bss:0x0000009E; // type:object size:0x30 -lbl_1_bss_CE = .bss:0x000000CE; // type:object size:0x12 -lbl_1_bss_E0 = .bss:0x000000E0; // type:object size:0x4 data:4byte -lbl_1_bss_E4 = .bss:0x000000E4; // type:object size:0x60 -lbl_1_bss_144 = .bss:0x00000144; // type:object size:0x14 -lbl_1_bss_158 = .bss:0x00000158; // type:object size:0x10 -lbl_1_bss_168 = .bss:0x00000168; // type:object size:0x8 -lbl_1_bss_170 = .bss:0x00000170; // type:object size:0x2 data:2byte -lbl_1_bss_172 = .bss:0x00000172; // type:object size:0x2 data:2byte -lbl_1_bss_174 = .bss:0x00000174; // type:object size:0x4 data:4byte -lbl_1_bss_178 = .bss:0x00000178; // type:object size:0x4 data:4byte -lbl_1_bss_17C = .bss:0x0000017C; // type:object size:0x2 data:2byte -lbl_1_bss_180 = .bss:0x00000180; // type:object size:0x4 data:4byte -lbl_1_bss_184 = .bss:0x00000184; // type:object size:0x4 data:4byte +bomheiCubeMdlTbl = .data:0x00000830; // type:object size:0x10 scope:local +coinEffectYOfs = .data:0x00000840; // type:object size:0x20 scope:local +coinAddYOfs = .data:0x00000860; // type:object size:0x20 scope:local +coinBlankYOfs = .data:0x00000880; // type:object size:0x20 scope:local +coinNumXOfs = .data:0x000008A0; // type:object size:0x6 scope:local data:2byte +lbl_1_data_8A6 = .data:0x000008A6; // type:object size:0x8 scope:local data:string +lbl_1_data_8AE = .data:0x000008AE; // type:object size:0x8 scope:local data:string +cameraShakeOfs = .data:0x000008B8; // type:object size:0x60 scope:local +resultReorderF = .bss:0x00000000; // type:object size:0x4 scope:local data:4byte +resultSkipF = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +resultTeamOrder = .bss:0x00000008; // type:object size:0x2 scope:local data:2byte +resultCharCubeMdlId = .bss:0x0000000A; // type:object size:0x8 scope:local +resultCoinAddSprId = .bss:0x00000012; // type:object size:0x28 scope:local +resultCoinAddGrpId = .bss:0x0000003A; // type:object size:0x8 scope:local +resultRank = .bss:0x00000042; // type:object size:0x8 scope:local +resultOrder = .bss:0x0000004A; // type:object size:0x8 scope:local +resultRankGrpId = .bss:0x00000052; // type:object size:0x2 scope:local data:2byte +resultPlayerCubeMdlId = .bss:0x00000054; // type:object size:0x8 scope:local +resultCubeMdlId = .bss:0x0000005C; // type:object size:0x40 scope:local +resultCrownGrpId = .bss:0x0000009C; // type:object size:0x2 scope:local data:2byte +resultNumSprId = .bss:0x0000009E; // type:object size:0x30 scope:local +resultNumGrpId = .bss:0x000000CE; // type:object size:0x10 scope:local +resultCrownAnim = .bss:0x000000E0; // type:object size:0x4 scope:local data:4byte +resultCharAnim = .bss:0x000000E4; // type:object size:0x60 scope:local +resultRankAnim = .bss:0x00000144; // type:object size:0x14 scope:local +statShadowMdlId = .bss:0x00000158; // type:object size:0x10 scope:local +charShadowMdlId = .bss:0x00000168; // type:object size:0x8 scope:local +teamResultGrpId = .bss:0x00000170; // type:object size:0x2 scope:local data:2byte +resultBonusPlayer = .bss:0x00000172; // type:object size:0x2 data:2byte +resultFastF = .bss:0x00000174; // type:object size:0x4 data:4byte +resultReadEndF = .bss:0x00000178; // type:object size:0x4 data:4byte +resultMgNo = .bss:0x0000017C; // type:object size:0x2 data:2byte +objman = .bss:0x00000180; // type:object size:0x4 data:4byte +outViewObj = .bss:0x00000184; // type:object size:0x4 scope:local data:4byte lbl_1_bss_188 = .bss:0x00000188; // type:object size:0x4 data:4byte -lbl_1_bss_190 = .bss:0x00000190; // type:object size:0x4 data:4byte -lbl_1_bss_194 = .bss:0x00000194; // type:object size:0x1680 -lbl_1_bss_1814 = .bss:0x00001814; // type:object size:0x8 +resultBattleSkipF = .bss:0x00000190; // type:object size:0x4 scope:local data:4byte +coinEffectData = .bss:0x00000194; // type:object size:0x1680 scope:local +resultBattleEffParManId = .bss:0x00001814; // type:object size:0x8 scope:local lbl_1_bss_181C = .bss:0x0000181C; // type:object size:0xC -lbl_1_bss_1828 = .bss:0x00001828; // type:object size:0x168 data:2byte -lbl_1_bss_1990 = .bss:0x00001990; // type:object size:0x20 -lbl_1_bss_19B0 = .bss:0x000019B0; // type:object size:0x8 -lbl_1_bss_19B8 = .bss:0x000019B8; // type:object size:0x28 -lbl_1_bss_19E0 = .bss:0x000019E0; // type:object size:0x8 -lbl_1_bss_19E8 = .bss:0x000019E8; // type:object size:0x8 -lbl_1_bss_19F0 = .bss:0x000019F0; // type:object size:0x8 +coinEffectMdlId = .bss:0x00001828; // type:object size:0x168 scope:local data:2byte +resultBattleCharMot = .bss:0x00001990; // type:object size:0x20 scope:local +resultBattleCharMdl = .bss:0x000019B0; // type:object size:0x8 scope:local +coinNumSprId = .bss:0x000019B8; // type:object size:0x28 scope:local +coinNumGrpId = .bss:0x000019E0; // type:object size:0x8 scope:local +resultBattleRank = .bss:0x000019E8; // type:object size:0x8 scope:local +resultBattleOrder = .bss:0x000019F0; // type:object size:0x8 scope:local lbl_1_bss_19F8 = .bss:0x000019F8; // type:object size:0x20 lbl_1_bss_1A18 = .bss:0x00001A18; // type:object size:0x2 -lbl_1_bss_1A1A = .bss:0x00001A1A; // type:object size:0x42 data:2byte -lbl_1_bss_1A5C = .bss:0x00001A5C; // type:object size:0x40 data:2byte -lbl_1_bss_1A9C = .bss:0x00001A9C; // type:object size:0x40 data:2byte +stageSprId = .bss:0x00001A1A; // type:object size:0x42 data:2byte +stageMotId = .bss:0x00001A5C; // type:object size:0x40 data:2byte +stageSprId = .bss:0x00001A9C; // type:object size:0x40 data:2byte diff --git a/configure.py b/configure.py index bd9561f0..1e740726 100644 --- a/configure.py +++ b/configure.py @@ -1457,9 +1457,9 @@ config.libs = [ Rel( "resultDll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/resultDll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/resultDll/battle.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/resultDll/datalist.c"), + Object(Matching, "REL/resultDll/main.c"), + Object(Matching, "REL/resultDll/battle.c"), + Object(Matching, "REL/resultDll/datalist.c"), }, ), Rel( diff --git a/include/REL/instDll.h b/include/REL/instDll.h index 8b00303e..adf1fe5c 100644 --- a/include/REL/instDll.h +++ b/include/REL/instDll.h @@ -3,6 +3,6 @@ #include "game/minigame_seq.h" -s32 fn_1_5EA4(SeqWork *work, char *mess, s16 jp_flag); +s32 FontCreate(SeqWork *work, char *mess, s16 jp_flag); #endif diff --git a/include/REL/resultdll.h b/include/REL/resultdll.h index afaf5df3..240731b4 100644 --- a/include/REL/resultdll.h +++ b/include/REL/resultdll.h @@ -7,7 +7,7 @@ #include "game/sprite.h" -typedef struct datalist_model { +typedef struct StageModel_s { s32 datanum; u32 attr; s16 type; @@ -16,33 +16,33 @@ typedef struct datalist_model { Vec pos; Vec rot; Vec scale; -} DataListModel; +} StageModel; -typedef struct datalist_sprite { +typedef struct StageSprite_s { u32 datanum; s16 attr; s16 prio; float x; float y; GXColor color; -} DataListSprite; +} StageSprite; -void fn_1_3FD8(void); -void fn_1_40DC(void); -void fn_1_423C(s16 *data); +void ResultBoardDataRead(void); +void ResultCoinAdd(void); +void ResultCoinNumGet(s16 *coinNum); -void fn_1_6490(void); +void ResultBattleMain(void); -void fn_1_8FF8(DataListModel *model_list); -void fn_1_927C(DataListSprite *sprite_list); -void fn_1_93B4(void); +void StageModelCreate(StageModel *model_list); +void StageSpriteCreate(StageSprite *sprite_list); +void StageSpriteKill(void); -extern s16 lbl_1_bss_1A9C[32]; -extern s16 lbl_1_bss_1A5C[32]; -extern s16 lbl_1_bss_1A1A[33]; +extern s16 stageMdlId[32]; +extern s16 stageMotId[32]; +extern s16 stageSprId[33]; extern s16 lbl_1_bss_1A18; -extern s32 lbl_1_bss_178; -extern s32 lbl_1_bss_174; -extern s16 lbl_1_bss_172; +extern s32 resultReadEndF; +extern s32 resultFastF; +extern s16 resultBonusPlayer; #endif \ No newline at end of file diff --git a/src/REL/instDll/font.c b/src/REL/instDll/font.c index af50f5d5..9986bd62 100644 --- a/src/REL/instDll/font.c +++ b/src/REL/instDll/font.c @@ -2,7 +2,7 @@ #include "REL/instDll.h" -s32 lbl_1_data_150[0xC6] = { +static s32 FontCharFile[0xC6] = { 0, 0, 0, @@ -203,115 +203,115 @@ s32 lbl_1_data_150[0xC6] = { DATA_MAKE_NUM(DATADIR_INST, 0x25), }; -s32 fn_1_5EA4(SeqWork *work, char *mess, s16 jp_flag) +s32 FontCreate(SeqWork *work, char *mess, s16 jp_flag) { - char *var_r31; - s16 var_r30; - s16 *var_r29; - s16 var_r28; - s32 *var_r27; - s16 var_r26; - s16 var_r25; - s32 var_r24; - s16 *var_r22; - AnimData **var_r21; - s16 var_r20; - s16 var_r19; + char *str; + s16 len; + s16 *posY; + s16 charNum; + s32 *fileTbl; + s16 i; + s16 grpNo; + s32 file; + s16 *posX; + AnimData **animP; + s16 gid; + s16 sprid; - var_r27 = lbl_1_data_150; - for (var_r25 = 0; var_r25 < 0x10; var_r25++) { - if (work->spr_grp[var_r25] == -1) { + fileTbl = FontCharFile; + for (grpNo = 0; grpNo < 0x10; grpNo++) { + if (work->spr_grp[grpNo] == -1) { break; } } - if (var_r25 == 0x10) { + if (grpNo == 0x10) { return -1; } - var_r21 = HuMemDirectMalloc(HEAP_SYSTEM, 0x190); - var_r22 = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); - var_r29 = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); + animP = HuMemDirectMalloc(HEAP_SYSTEM, 0x190); + posX = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); + posY = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); - for (var_r31 = mess, var_r30 = 0, var_r28 = 0; var_r31[0] != 0; var_r31++) { - if (var_r31[0] == 0x20 || var_r31[0] == 0x10) { - var_r30 += 0xE; + for (str = mess, len = 0, charNum = 0; str[0] != 0; str++) { + if (str[0] == 0x20 || str[0] == 0x10) { + len += 0xE; } - else if (var_r31[0] < 0x30) { + else if (str[0] < 0x30) { } - else if (var_r31[0] == 0x80) { + else if (str[0] == 0x80) { } - else if (var_r31[0] == 0x81) { + else if (str[0] == 0x81) { } else { - if (var_r31[1] == 0x80) { - if ((var_r31[0] >= 0x96) && (var_r31[0] <= 0xA4)) { - var_r24 = var_r27[var_r31[0] + 0x6A]; + if (str[1] == 0x80) { + if ((str[0] >= 0x96) && (str[0] <= 0xA4)) { + file = fileTbl[str[0] + 0x6A]; } - else if ((var_r31[0] >= 0xAA) && (var_r31[0] <= 0xAE)) { - var_r24 = var_r27[var_r31[0] + 0x65]; + else if ((str[0] >= 0xAA) && (str[0] <= 0xAE)) { + file = fileTbl[str[0] + 0x65]; } - else if ((var_r31[0] >= 0xD6) && (var_r31[0] <= 0xE4)) { - var_r24 = var_r27[var_r31[0] + 0x43]; + else if ((str[0] >= 0xD6) && (str[0] <= 0xE4)) { + file = fileTbl[str[0] + 0x43]; } - else if ((var_r31[0] >= 0xEA) && (var_r31[0] <= 0xEE)) { - var_r24 = var_r27[var_r31[0] + 0x3E]; + else if ((str[0] >= 0xEA) && (str[0] <= 0xEE)) { + file = fileTbl[str[0] + 0x3E]; } } - else if (var_r31[1] == 0x81) { - if ((var_r31[0] >= 0xAA) && (var_r31[0] <= 0xAE)) { - var_r24 = var_r27[var_r31[0] + 0x6A]; + else if (str[1] == 0x81) { + if ((str[0] >= 0xAA) && (str[0] <= 0xAE)) { + file = fileTbl[str[0] + 0x6A]; } - else if ((var_r31[0] >= 0xEA) && (var_r31[0] <= 0xEE)) { - var_r24 = var_r27[var_r31[0] + 0x43]; + else if ((str[0] >= 0xEA) && (str[0] <= 0xEE)) { + file = fileTbl[str[0] + 0x43]; } } else { - var_r24 = var_r27[var_r31[0]]; + file = fileTbl[str[0]]; } - var_r21[var_r28] = HuSprAnimReadFile(var_r24); - var_r22[var_r28] = var_r30; - if ((var_r31[0] >= 0x61) && (var_r31[0] <= 0x7A)) { - var_r29[var_r28] = 2; - var_r30 += 0x12; + animP[charNum] = HuSprAnimReadFile(file); + posX[charNum] = len; + if ((str[0] >= 0x61) && (str[0] <= 0x7A)) { + posY[charNum] = 2; + len += 0x12; } - else if ((var_r31[0] == 0xC2) || (var_r31[0] == 0xC3)) { - var_r29[var_r28] = 0; - var_r30 += 0x12; + else if ((str[0] == 0xC2) || (str[0] == 0xC3)) { + posY[charNum] = 0; + len += 0x12; } - else if (var_r31[0] == 0x5C || var_r31[0] == 0x85) { - var_r29[var_r28] = 0; - var_r30 += 8; + else if (str[0] == 0x5C || str[0] == 0x85) { + posY[charNum] = 0; + len += 8; } - else if ((var_r31[0] >= 0x87) && (var_r31[0] <= 0x8F)) { - var_r29[var_r28] = 4; - var_r30 += 0x18; + else if ((str[0] >= 0x87) && (str[0] <= 0x8F)) { + posY[charNum] = 4; + len += 0x18; } - else if ((var_r31[0] >= 0xC7) && (var_r31[0] <= 0xCF)) { - var_r29[var_r28] = 4; - var_r30 += 0x18; + else if ((str[0] >= 0xC7) && (str[0] <= 0xCF)) { + posY[charNum] = 4; + len += 0x18; } - else if ((var_r31[0] == 0x3D) || (var_r31[0] == 0x84)) { - var_r29[var_r28] = 0; - var_r30 += 0x14; + else if ((str[0] == 0x3D) || (str[0] == 0x84)) { + posY[charNum] = 0; + len += 0x14; } else { - var_r29[var_r28] = 0; - var_r30 += 0x1C; + posY[charNum] = 0; + len += 0x1C; } - var_r28++; + charNum++; } } - var_r20 = HuSprGrpCreate(var_r28); - work->spr_grp[var_r25] = var_r20; - work->alt_word_len = var_r30; - var_r30 = (var_r30 / 2) - 0xE; - for (var_r26 = 0; var_r26 < var_r28; var_r26++) { - var_r19 = HuSprCreate(var_r21[var_r26], 0, 0); - HuSprGrpMemberSet(var_r20, var_r26, var_r19); - HuSprPosSet(var_r20, var_r26, var_r22[var_r26] - var_r30, var_r29[var_r26]); + gid = HuSprGrpCreate(charNum); + work->spr_grp[grpNo] = gid; + work->alt_word_len = len; + len = (len / 2) - 0xE; + for (i = 0; i < charNum; i++) { + sprid = HuSprCreate(animP[i], 0, 0); + HuSprGrpMemberSet(gid, i, sprid); + HuSprPosSet(gid, i, posX[i] - len, posY[i]); } - work->word_len = var_r28; - HuMemDirectFree(var_r21); - HuMemDirectFree(var_r22); - HuMemDirectFree(var_r29); - return var_r25; + work->word_len = charNum; + HuMemDirectFree(animP); + HuMemDirectFree(posX); + HuMemDirectFree(posY); + return grpNo; } diff --git a/src/REL/instDll/main.c b/src/REL/instDll/main.c index 5bfac016..5d7b064c 100644 --- a/src/REL/instDll/main.c +++ b/src/REL/instDll/main.c @@ -23,55 +23,55 @@ #include "REL/instDll.h" -static s16 lbl_1_data_0 = 1; +static s16 instMode = 1; static omObjData *lbl_1_bss_60; -static omObjData *lbl_1_bss_5C; -static Process *lbl_1_bss_58; -static Vec lbl_1_bss_40[2]; -static Vec lbl_1_bss_28[2]; -static float lbl_1_bss_20[2]; -static s32 lbl_1_bss_1C; -static AnimData *lbl_1_bss_18; -static u16 lbl_1_bss_14; -static u16 lbl_1_bss_12; -static u16 lbl_1_bss_10; -static float lbl_1_bss_C; -static u8 lbl_1_bss_8; -static u16 lbl_1_bss_6; -static u16 lbl_1_bss_4; -static s32 lbl_1_bss_0; +static omObjData *outViewObj; +Process *objman; +Vec cameraRot[2]; +Vec cameraPos[2]; +float cameraZoom[2]; +static s32 instBoxMdlId; +static AnimData *instPicAnim; +static u16 instMgNo; +static u16 instHostNo; +static u16 instMesOfs; +static float instFov; +static u8 LanguageNo; +static u16 instPage; +static u16 instBusyF; +static s32 debugCamOnF; -static void fn_1_994(void); -static void fn_1_17E4(void); -static void fn_1_220C(void); -static void fn_1_2804(void); -static void fn_1_2FA0(void); -static void fn_1_4174(omObjData *object); -static void fn_1_4528(omObjData *object); +static void InstMain(void); +static void InstPlayerMain(void); +static void InstHostMain(void); +static void InstWinMain(void); +static void InstNameMain(void); +static void CameraOutView(omObjData *object); +static void CameraDebug(omObjData *object); void ObjectSetup(void) { s32 i; omOvlHisData *his; - s32 light; + s32 lightId; OSReport("******* INST ObjectSetup *********\n"); - lbl_1_bss_58 = omInitObjMan(50, 8192); - omGameSysInit(lbl_1_bss_58); - lbl_1_bss_8 = GWLanguageGet(); - lbl_1_bss_14 = GWSystem.mg_next; - lbl_1_bss_10 = 0; - lbl_1_bss_4 = 0; + objman = omInitObjMan(50, 8192); + omGameSysInit(objman); + LanguageNo = GWLanguageGet(); + instMgNo = GWSystem.mg_next; + instMesOfs = 0; + instBusyF = 0; _ClearFlag(0x1000C); for (i = 0; sndGrpTable[i].ovl != OVL_INVALID; i++) { - if (sndGrpTable[i].ovl == mgInfoTbl[lbl_1_bss_14].ovl) { + if (sndGrpTable[i].ovl == mgInfoTbl[instMgNo].ovl) { break; } } if (sndGrpTable[i].ovl != OVL_INVALID) { HuAudSndGrpSetSet(sndGrpTable[i].grpSet); } - if (mgInfoTbl[lbl_1_bss_14].ovl == OVL_M411) { + if (mgInfoTbl[instMgNo].ovl == OVL_M411) { if (GWMGTypeGet() == -1) { GWMGTypeSet(frandmod(3)); } @@ -79,10 +79,10 @@ void ObjectSetup(void) else { GWMGTypeSet(-1); } - HuDataDirClose(mgInfoTbl[lbl_1_bss_14].data_dir); + HuDataDirClose(mgInfoTbl[instMgNo].data_dir); his = omOvlHisGet(0); omOvlHisChg(0, OVL_RESULT, his->event, his->stat); - if (omovlevtno == 0 && mgInfoTbl[lbl_1_bss_14].ovl == OVL_M430) { + if (omovlevtno == 0 && mgInfoTbl[instMgNo].ovl == OVL_M430) { s32 team_cnt[2]; s32 team_players[2][2]; team_cnt[0] = team_cnt[1] = 0; @@ -106,53 +106,53 @@ void ObjectSetup(void) GWPlayerCfg[team_players[1][1]].group = 2; } } - if (mgInfoTbl[lbl_1_bss_14].type == 3 || mgInfoTbl[lbl_1_bss_14].type == 5 || mgInfoTbl[lbl_1_bss_14].type == 6 - || mgInfoTbl[lbl_1_bss_14].type == 8 || !_CheckFlag(FLAG_ID_MAKE(0, 11))) { + if (mgInfoTbl[instMgNo].type == 3 || mgInfoTbl[instMgNo].type == 5 || mgInfoTbl[instMgNo].type == 6 + || mgInfoTbl[instMgNo].type == 8 || !_CheckFlag(FLAG_ID_MAKE(0, 11))) { HuDataDirClose(DATADIR_INST); omSysPauseEnable(1); - omOvlCallEx(mgInfoTbl[lbl_1_bss_14].ovl, 1, 0, 0); + omOvlCallEx(mgInfoTbl[instMgNo].ovl, 1, 0, 0); return; } - lbl_1_bss_40[0].x = -67.0f; - lbl_1_bss_40[0].y = 40.0f; - lbl_1_bss_40[0].z = 0.0f; - lbl_1_bss_28[0].x = 260.0f; - lbl_1_bss_28[0].y = -103.0f; - lbl_1_bss_28[0].z = -18.0f; - lbl_1_bss_20[0] = 2885.0f; - lbl_1_bss_C = 20.0f; - lbl_1_bss_12 = GWSystem.board; + cameraRot[0].x = -67.0f; + cameraRot[0].y = 40.0f; + cameraRot[0].z = 0.0f; + cameraPos[0].x = 260.0f; + cameraPos[0].y = -103.0f; + cameraPos[0].z = -18.0f; + cameraZoom[0] = 2885.0f; + instFov = 20.0f; + instHostNo = GWSystem.board; if (mgBoardHostEnableF) { - lbl_1_bss_12 = 1; + instHostNo = 1; } - lbl_1_bss_40[1].x = lbl_1_bss_40[1].y = lbl_1_bss_40[1].z = 0.0f; - lbl_1_bss_28[1].x = lbl_1_bss_28[1].y = lbl_1_bss_28[1].z = 0.0f; - lbl_1_bss_20[1] = 1000.0f; + cameraRot[1].x = cameraRot[1].y = cameraRot[1].z = 0.0f; + cameraPos[1].x = cameraPos[1].y = cameraPos[1].z = 0.0f; + cameraZoom[1] = 1000.0f; omSysPauseEnable(0); Hu3DCameraCreate(3); Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 15000.0f, 1.2f); Hu3DCameraViewportSet(1, 0, 0, 640, 480, 0, 1); Hu3DCameraPerspectiveSet(2, 30.0f, 20.0f, 15000.0f, 1.2f); Hu3DCameraViewportSet(2, 0, 0, 640, 480, 0, 1); - light = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255); - Hu3DGLightInfinitytSet(light); - HuPrcChildCreate(fn_1_994, 100, 12288, 0, lbl_1_bss_58); - HuPrcChildCreate(fn_1_17E4, 100, 12288, 0, lbl_1_bss_58); - HuPrcChildCreate(fn_1_220C, 100, 12288, 0, lbl_1_bss_58); - HuPrcChildCreate(fn_1_2804, 100, 12288, 0, lbl_1_bss_58); - HuPrcChildCreate(fn_1_2FA0, 100, 12288, 0, lbl_1_bss_58); - lbl_1_bss_5C = omAddObjEx(lbl_1_bss_58, 32730, 0, 0, -1, fn_1_4174); - omAddObjEx(lbl_1_bss_58, 0, 32, 32, -1, fn_1_4528); + lightId = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255); + Hu3DGLightInfinitytSet(lightId); + HuPrcChildCreate(InstMain, 100, 12288, 0, objman); + HuPrcChildCreate(InstPlayerMain, 100, 12288, 0, objman); + HuPrcChildCreate(InstHostMain, 100, 12288, 0, objman); + HuPrcChildCreate(InstWinMain, 100, 12288, 0, objman); + HuPrcChildCreate(InstNameMain, 100, 12288, 0, objman); + outViewObj = omAddObjEx(objman, 32730, 0, 0, -1, CameraOutView); + omAddObjEx(objman, 0, 32, 32, -1, CameraDebug); HuAudSeqPlay(59); Hu3DBGColorSet(0, 0, 0); HuWinInit(1); } -static s8 lbl_1_data_26[] = { 3, 2, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 2, 3, 3, 2, 1, 0, 0, -1, -1, -1, 0, -1, -1, -1, 3, 2, 1, 0 }; +static s8 instGrpTbl[] = { 3, 2, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 2, 3, 3, 2, 1, 0, 0, -1, -1, -1, 0, -1, -1, -1, 3, 2, 1, 0 }; -static s8 lbl_1_data_46[] = { 4, 4, 4, 4, 4, 1, 1, 4 }; +static s8 instPlayerNumTbl[] = { 4, 4, 4, 4, 4, 1, 1, 4 }; -static s32 lbl_1_data_50[] = { +static s32 instBoxFile[] = { DATA_MAKE_NUM(DATADIR_INST, 0), DATA_MAKE_NUM(DATADIR_INST, 1), DATA_MAKE_NUM(DATADIR_INST, 2), @@ -163,7 +163,7 @@ static s32 lbl_1_data_50[] = { DATA_MAKE_NUM(DATADIR_INST, 0), }; -static s32 lbl_1_data_70[] = { +static s32 instBackFile[] = { DATA_MAKE_NUM(DATADIR_INST, 9), DATA_MAKE_NUM(DATADIR_INST, 10), DATA_MAKE_NUM(DATADIR_INST, 11), @@ -174,51 +174,50 @@ static s32 lbl_1_data_70[] = { DATA_MAKE_NUM(DATADIR_INST, 9), }; -static void fn_1_50B0(ModelData *model, Mtx mtx); -static void fn_1_5B64(ModelData *model, Mtx mtx); +static void InstPicDraw(ModelData *model, Mtx mtx); +static void ShadowDraw(ModelData *model, Mtx mtx); -static void fn_1_994(void) +static void InstMain(void) { - Vec pos; Vec target; Vec up; - Vec spC; - Process *process; + Vec rot; + Process *proc; s16 i; s16 model; - s16 num_coms; + s16 comNum; s16 j; - s16 btns; - s32 status; - s32 done; - s16 group; - s32 pic; + s16 btnDown; + s32 statId; + s32 endF; + s16 grpId; + s32 picFile; omOvlHisData *his; - s16 sprite; + s16 sprId; AnimData *anim; - float pos_z; + float z; float time; - float fov_vel; - float rot_x; + float fovSpeed; + float rotX; - process = HuPrcCurrentGet(); - status = -1; - group = HuSprGrpCreate(1); - anim = HuSprAnimRead(HuDataReadNum(lbl_1_data_70[mgInfoTbl[lbl_1_bss_14].type], MEMORY_DEFAULT_NUM)); - sprite = HuSprCreate(anim, 0, 0); - HuSprGrpMemberSet(group, 0, sprite); - HuSprGrpDrawNoSet(group, 127); - HuSprPosSet(group, 0, 288, 240); + proc = HuPrcCurrentGet(); + statId = -1; + grpId = HuSprGrpCreate(1); + anim = HuSprAnimRead(HuDataReadNum(instBackFile[mgInfoTbl[instMgNo].type], MEMORY_DEFAULT_NUM)); + sprId = HuSprCreate(anim, 0, 0); + HuSprGrpMemberSet(grpId, 0, sprId); + HuSprGrpDrawNoSet(grpId, 127); + HuSprPosSet(grpId, 0, 288, 240); if (GWMGTypeGet() == -1) { - pic = mgInfoTbl[lbl_1_bss_14].inst_pic[0]; + picFile = mgInfoTbl[instMgNo].inst_pic[0]; } else { - pic = mgInfoTbl[lbl_1_bss_14].inst_pic[GWMGTypeGet()]; + picFile = mgInfoTbl[instMgNo].inst_pic[GWMGTypeGet()]; } - lbl_1_bss_18 = HuSprAnimRead(HuDataReadNumHeapShortForce(pic, MEMORY_DEFAULT_NUM, HEAP_DATA)); + instPicAnim = HuSprAnimRead(HuDataReadNumHeapShortForce(picFile, MEMORY_DEFAULT_NUM, HEAP_DATA)); Hu3DShadowCreate(20, 500, 8000); Hu3DShadowTPLvlSet(0); Hu3DShadowSizeSet(192); @@ -228,34 +227,34 @@ static void fn_1_994(void) up.x = up.y = 0.0f; up.z = 1.0f; Hu3DShadowPosSet(&pos, &up, &target); - model = Hu3DModelCreateFile(lbl_1_data_50[mgInfoTbl[lbl_1_bss_14].type]); - lbl_1_bss_1C = model; + model = Hu3DModelCreateFile(instBoxFile[mgInfoTbl[instMgNo].type]); + instBoxMdlId = model; Hu3DModelPosSet(model, 0, 2000, 0); Hu3DModelAttrSet(model, HU3D_MOTATTR_PAUSE); Hu3DModelCameraSet(model, 1); Hu3DModelShadowSet(model); - i = Hu3DHookFuncCreate(fn_1_5B64); + i = Hu3DHookFuncCreate(ShadowDraw); Hu3DModelPosSet(i, 0, -200, 0); Hu3DModelCameraSet(i, 1); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); while (WipeStatGet()) { HuPrcVSleep(); } - pos_z = -500.0f; + z = -500.0f; for (i = 0; i <= 50; i++) { - Hu3DModelPosSet(model, 0.0f, 2500.0 * cosd(i * 1.8f) - 200.0, pos_z); + Hu3DModelPosSet(model, 0.0f, 2500.0 * cosd(i * 1.8f) - 200.0, z); Hu3DModelRotSet(model, 0, 0, 45.0f * (1.0f - (i / 50.0f))); - pos_z += 50.0 / 7.0; + z += 50.0 / 7.0; Hu3DShadowTPLvlSet(0.5 * (i / 50.0f)); HuPrcVSleep(); } HuAudFXPlay(1211); Hu3DModelAttrReset(model, HU3D_MOTATTR_PAUSE); for (i = 1; i <= 20; i++) { - Hu3DModelPosSet(model, 0.0f, (200.0 * (sind(i * 2.25f) * (1.0 / sind(45)))) - 200.0, pos_z); - rot_x = (20 - i) * cosd(i * 13.5f); - Hu3DModelRotSet(model, rot_x, 0.0f, 0.0f); - pos_z += 50.0 / 7.0; + Hu3DModelPosSet(model, 0.0f, (200.0 * (sind(i * 2.25f) * (1.0 / sind(45)))) - 200.0, z); + rotX = (20 - i) * cosd(i * 13.5f); + Hu3DModelRotSet(model, rotX, 0.0f, 0.0f); + z += 50.0 / 7.0; HuPrcVSleep(); } Hu3DModelPosSet(model, 0.0f, 0.0f, 0.0f); @@ -263,52 +262,52 @@ static void fn_1_994(void) HuPrcSleep(10); HuAudFXPlay(1212); Hu3DModelAttrReset(model, HU3D_MOTATTR_PAUSE); - i = Hu3DHookFuncCreate(fn_1_50B0); + i = Hu3DHookFuncCreate(InstPicDraw); Hu3DModelCameraSet(i, 1); Hu3DModelPosSet(i, 0, 415, 0); - lbl_1_data_0 = 0; + instMode = 0; while (Hu3DMotionTimeGet(model) < 80.0f) { if (Hu3DMotionTimeGet(model) > 30.0f) { - lbl_1_data_0 = 2; + instMode = 2; } HuPrcVSleep(); } Hu3DModelAttrSet(model, HU3D_MOTATTR_PAUSE); HuDataDirClose(DATADIR_INST); - status = HuDataDirReadAsync(mgInfoTbl[lbl_1_bss_14].data_dir); - while (lbl_1_data_0 != 1) { + statId = HuDataDirReadAsync(mgInfoTbl[instMgNo].data_dir); + while (instMode != 1) { HuPrcVSleep(); } - done = 0; - for (i = num_coms = 0; i < 4; i++) { + endF = 0; + for (i = comNum = 0; i < 4; i++) { if (GWPlayerCfg[i].iscom) { - num_coms++; + comNum++; } } i = 0; while (1) { - if (!done) { - for (btns = j = 0; j < 4; j++) { + if (!endF) { + for (btnDown = j = 0; j < 4; j++) { if (!GWPlayerCfg[j].iscom) { - btns |= HuPadBtnDown[GWPlayerCfg[j].pad_idx]; + btnDown |= HuPadBtnDown[GWPlayerCfg[j].pad_idx]; } } - if ((btns == PAD_BUTTON_START) || omSysExitReq || (num_coms == 4 && i > 60)) { + if ((btnDown == PAD_BUTTON_START) || omSysExitReq || (comNum == 4 && i > 60)) { HuAudFXPlay(2); - done = 1; + endF = 1; } - if (btns == PAD_TRIGGER_Z) { + if (btnDown == PAD_TRIGGER_Z) { HuAudFXPlay(1); - done = 1; + endF = 1; his = omOvlHisGet(0); omOvlHisChg(0, OVL_INST, 1, his->stat); _SetFlag(0x1000C); } - if (mgInstExitEnableF && (btns & PAD_BUTTON_B)) { + if (mgInstExitEnableF && (btnDown & PAD_BUTTON_B)) { HuAudFXPlay(3); - if (status != -1) { - while (!HuDataGetAsyncStat(status)) { + if (statId != -1) { + while (!HuDataGetAsyncStat(statId)) { HuPrcVSleep(); } } @@ -317,10 +316,10 @@ static void fn_1_994(void) while (WipeStatGet()) { HuPrcVSleep(); } - HuDataDirClose(mgInfoTbl[lbl_1_bss_14].data_dir); - if (mgInfoTbl[lbl_1_bss_14].ovl == OVL_M430) { - for (num_coms = 0; num_coms < 4; num_coms++) { - GWPlayerCfg[num_coms].group = GWPlayerCfg[num_coms].group / 2; + HuDataDirClose(mgInfoTbl[instMgNo].data_dir); + if (mgInfoTbl[instMgNo].ovl == OVL_M430) { + for (comNum = 0; comNum < 4; comNum++) { + GWPlayerCfg[comNum].group = GWPlayerCfg[comNum].group / 2; } } omOvlReturnEx(1, 1); @@ -330,7 +329,7 @@ static void fn_1_994(void) } } } - if (!lbl_1_bss_4 || !done) { + if (!instBusyF || !endF) { HuPrcVSleep(); i++; continue; @@ -339,32 +338,32 @@ static void fn_1_994(void) break; } } - if (status != -1) { - while (!HuDataGetAsyncStat(status)) { + if (statId != -1) { + while (!HuDataGetAsyncStat(statId)) { HuPrcVSleep(); } } - spC = lbl_1_bss_40[0]; - pos = lbl_1_bss_28[0]; - pos_z = lbl_1_bss_20[0]; + rot = cameraRot[0]; + pos = cameraPos[0]; + z = cameraZoom[0]; WipeColorSet(255, 255, 255); - lbl_1_data_0 = 3; + instMode = 3; HuPrcSleep(20); - lbl_1_data_0 = 4; + instMode = 4; HuPrcSleep(10); Hu3DModelAttrReset(model, HU3D_MOTATTR_PAUSE); HuPrcSleep(10); - fov_vel = 0; + fovSpeed = 0; for (i = 0; i <= 60; i++) { time = i / 60.0f; - lbl_1_bss_40[0].x = spC.x + ((-65.0f - spC.x) * time); - lbl_1_bss_40[0].y = spC.y + ((8.0f - spC.y) * time); - lbl_1_bss_40[0].z = spC.z + (-spC.z) * time; - lbl_1_bss_28[0].x = pos.x + ((17.0f - pos.x) * time); - lbl_1_bss_28[0].y = pos.y + ((5.0f - pos.y) * time); - lbl_1_bss_28[0].z = pos.z + ((-188.0f - pos.z) * time); - lbl_1_bss_20[0] = pos_z + ((1173.0f - pos_z) * time); + cameraRot[0].x = rot.x + ((-65.0f - rot.x) * time); + cameraRot[0].y = rot.y + ((8.0f - rot.y) * time); + cameraRot[0].z = rot.z + (-rot.z) * time; + cameraPos[0].x = pos.x + ((17.0f - pos.x) * time); + cameraPos[0].y = pos.y + ((5.0f - pos.y) * time); + cameraPos[0].z = pos.z + ((-188.0f - pos.z) * time); + cameraZoom[0] = z + ((1173.0f - z) * time); if (i == 30) { HuAudFXPlay(1210); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); @@ -374,25 +373,25 @@ static void fn_1_994(void) Hu3DModelAttrSet(model, HU3D_MOTATTR_PAUSE); } if (i > 20) { - lbl_1_bss_C += fov_vel; - fov_vel += 0.04; + instFov += fovSpeed; + fovSpeed += 0.04; } HuPrcVSleep(); } while (WipeStatGet()) { - lbl_1_bss_C += fov_vel; - fov_vel += 0.04; + instFov += fovSpeed; + fovSpeed += 0.04; HuPrcVSleep(); } - lbl_1_data_0 = 6; + instMode = 6; HuPrcVSleep(); omSysPauseEnable(1); if (omSysExitReq) { - HuDataDirClose(mgInfoTbl[lbl_1_bss_14].data_dir); + HuDataDirClose(mgInfoTbl[instMgNo].data_dir); omOvlReturnEx(1, 1); } else { - omOvlCallEx(mgInfoTbl[lbl_1_bss_14].ovl, 1, 0, 0); + omOvlCallEx(mgInfoTbl[instMgNo].ovl, 1, 0, 0); } HuPrcEnd(); while (1) { @@ -400,133 +399,133 @@ static void fn_1_994(void) } } -static char *lbl_1_data_B0[] = { "p_pos_a", "p_pos_b", "p_pos_c", "p_pos_d" }; +static char *playerPosNameTbl[] = { "p_pos_a", "p_pos_b", "p_pos_c", "p_pos_d" }; -static u8 lbl_1_data_C0[] = { 8, 0, 12, 4 }; +static u8 playerDelayTbl[] = { 8, 0, 12, 4 }; -static void fn_1_17E4(void) +static void InstPlayerMain(void) { - float tplvl; + float tpLvl; s16 i; s16 j; s16 time; - s16 player_cnt; + s16 playerNum; s16 order; s16 type; - s16 group_type; + s16 grpType; s16 group; - ModelData *model; - s16 player_mdl[4]; - s16 char_tbl[4]; - s16 platform_mdl[4]; - s16 player_order[4]; - s16 mot_tbl[4][3]; - Vec player_pos[4]; + ModelData *modelP; + s16 playerMdlId[4]; + s16 charNo[4]; + s16 shadowMdl[4]; + s16 playerOrder[4]; + s16 motId[4][3]; + Vec playerPos[4]; - type = mgInfoTbl[lbl_1_bss_14].type; - player_cnt = lbl_1_data_46[type]; - for (i = 0; i < player_cnt; i++) { - player_order[i] = -1; + type = mgInfoTbl[instMgNo].type; + playerNum = instPlayerNumTbl[type]; + for (i = 0; i < playerNum; i++) { + playerOrder[i] = -1; } - if (mgInfoTbl[lbl_1_bss_14].ovl != OVL_M430) { - group_type = type; + if (mgInfoTbl[instMgNo].ovl != OVL_M430) { + grpType = type; } else { - group_type = 0; + grpType = 0; } - for (i = 0; i < player_cnt; i++) { - group = lbl_1_data_26[(group_type * 4) + i]; + for (i = 0; i < playerNum; i++) { + group = instGrpTbl[(grpType * 4) + i]; for (j = 0; j < 4; j++) { if (group == GWPlayerCfg[j].group) { for (order = 0; order < i; order++) { - if (j == player_order[order]) { + if (j == playerOrder[order]) { break; } } if (order == i) { - player_order[i] = j; + playerOrder[i] = j; break; } } } } - for (i = 0; i < player_cnt; i++) { - if (player_order[i] == -1) { - for (j = 0; j < player_cnt; j++) { - player_order[j] = j; + for (i = 0; i < playerNum; i++) { + if (playerOrder[i] == -1) { + for (j = 0; j < playerNum; j++) { + playerOrder[j] = j; } break; } } - for (i = 0; i < player_cnt; i++) { - char_tbl[i] = GWPlayerCfg[player_order[i]].character; - player_mdl[i] = CharModelCreate(char_tbl[i], 2); - Hu3DModelPosSet(player_mdl[i], 5000.0f, 0.0f, 0.0f); - Hu3DModelRotSet(player_mdl[i], 0.0f, 180.0f, 0.0f); - Hu3DModelCameraSet(player_mdl[i], 1); - mot_tbl[i][0] = CharModelMotionCreate(char_tbl[i], DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); - mot_tbl[i][1] = CharModelMotionCreate(char_tbl[i], DATA_MAKE_NUM(DATADIR_MARIOMOT, 5)); - mot_tbl[i][2] = CharModelMotionCreate(char_tbl[i], DATA_MAKE_NUM(DATADIR_MARIOMOT, 6)); - CharModelVoiceEnableSet(char_tbl[i], mot_tbl[i][1], 0); - CharModelMotionSet(char_tbl[i], mot_tbl[i][1]); + for (i = 0; i < playerNum; i++) { + charNo[i] = GWPlayerCfg[playerOrder[i]].character; + playerMdlId[i] = CharModelCreate(charNo[i], 2); + Hu3DModelPosSet(playerMdlId[i], 5000.0f, 0.0f, 0.0f); + Hu3DModelRotSet(playerMdlId[i], 0.0f, 180.0f, 0.0f); + Hu3DModelCameraSet(playerMdlId[i], 1); + motId[i][0] = CharModelMotionCreate(charNo[i], DATA_MAKE_NUM(DATADIR_MARIOMOT, 0)); + motId[i][1] = CharModelMotionCreate(charNo[i], DATA_MAKE_NUM(DATADIR_MARIOMOT, 5)); + motId[i][2] = CharModelMotionCreate(charNo[i], DATA_MAKE_NUM(DATADIR_MARIOMOT, 6)); + CharModelVoiceEnableSet(charNo[i], motId[i][1], 0); + CharModelMotionSet(charNo[i], motId[i][1]); CharModelDataClose(-1); - platform_mdl[i] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_INST, 7)); - Hu3DModelTPLvlSet(platform_mdl[i], 0.0f); - Hu3DModelScaleSet(platform_mdl[i], 0.0f, 0.0f, 0.0f); + shadowMdl[i] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_INST, 7)); + Hu3DModelTPLvlSet(shadowMdl[i], 0.0f); + Hu3DModelScaleSet(shadowMdl[i], 0.0f, 0.0f, 0.0f); } - while (lbl_1_data_0 != 2) { + while (instMode != 2) { HuPrcVSleep(); } - for (i = 0; i < player_cnt; i++) { - Hu3DModelObjPosGet(lbl_1_bss_1C, lbl_1_data_B0[i], &player_pos[i]); - Hu3DModelPosSet(platform_mdl[i], player_pos[i].x, 10 + player_pos[i].y, player_pos[i].z); + for (i = 0; i < playerNum; i++) { + Hu3DModelObjPosGet(instBoxMdlId, playerPosNameTbl[i], &playerPos[i]); + Hu3DModelPosSet(shadowMdl[i], playerPos[i].x, 10 + playerPos[i].y, playerPos[i].z); } HuPrcSleep(10); for (i = 0; i <= 50; i++) { - for (j = 0; j < player_cnt; j++) { - time = i - lbl_1_data_C0[j]; + for (j = 0; j < playerNum; j++) { + time = i - playerDelayTbl[j]; if (time < 0) { continue; } if (time == 15) { - CharModelMotionSet(char_tbl[j], mot_tbl[j][2]); + CharModelMotionSet(charNo[j], motId[j][2]); } if (time == 30) { - CharModelMotionShiftSet(char_tbl[j], mot_tbl[j][0], 0, 10, HU3D_MOTATTR_LOOP); + CharModelMotionShiftSet(charNo[j], motId[j][0], 0, 10, HU3D_MOTATTR_LOOP); } if (time <= 20) { - Hu3DModelPosSet(player_mdl[j], player_pos[j].x, player_pos[j].y + 1000.0 * cosd(time * 4.5f), player_pos[j].z); + Hu3DModelPosSet(playerMdlId[j], playerPos[j].x, playerPos[j].y + 1000.0 * cosd(time * 4.5f), playerPos[j].z); time -= 10; if (time >= 0) { - tplvl = 0.1 * time; - Hu3DModelTPLvlSet(platform_mdl[j], 0.5 * tplvl); - Hu3DModelScaleSet(platform_mdl[j], tplvl, tplvl, tplvl); + tpLvl = 0.1 * time; + Hu3DModelTPLvlSet(shadowMdl[j], 0.5 * tpLvl); + Hu3DModelScaleSet(shadowMdl[j], tpLvl, tpLvl, tpLvl); } } } HuPrcVSleep(); } - model = &Hu3DData[player_mdl[0]]; - while (lbl_1_data_0 != 4) { + modelP = &Hu3DData[playerMdlId[0]]; + while (instMode != 4) { HuPrcVSleep(); } for (i = 0; i <= 45; i++) { - for (j = 0; j < player_cnt; j++) { - time = i - lbl_1_data_C0[j]; + for (j = 0; j < playerNum; j++) { + time = i - playerDelayTbl[j]; if (time < 0) { continue; } if (time == 0) { - Hu3DModelAttrReset(player_mdl[j], HU3D_MOTATTR_LOOP); - CharModelVoiceEnableSet(char_tbl[i], mot_tbl[i][1], 1); - CharModelMotionSet(char_tbl[j], mot_tbl[j][1]); + Hu3DModelAttrReset(playerMdlId[j], HU3D_MOTATTR_LOOP); + CharModelVoiceEnableSet(charNo[i], motId[i][1], 1); + CharModelMotionSet(charNo[j], motId[j][1]); } if (time <= 30) { - Hu3DModelPosSet(player_mdl[j], player_pos[j].x, player_pos[j].y + (300.0 * sind(time * 9.0f)), player_pos[j].z - (time * 20)); + Hu3DModelPosSet(playerMdlId[j], playerPos[j].x, playerPos[j].y + (300.0 * sind(time * 9.0f)), playerPos[j].z - (time * 20)); if (time <= 10) { - tplvl = 1 - (0.1 * time); - Hu3DModelTPLvlSet(platform_mdl[j], 0.5 * tplvl); - Hu3DModelScaleSet(platform_mdl[j], tplvl, tplvl, tplvl); + tpLvl = 1 - (0.1 * time); + Hu3DModelTPLvlSet(shadowMdl[j], 0.5 * tpLvl); + Hu3DModelScaleSet(shadowMdl[j], tpLvl, tpLvl, tpLvl); } } } @@ -538,7 +537,7 @@ static void fn_1_17E4(void) } } -static s32 lbl_1_data_C4[] = { +static s32 hostFileTbl[] = { DATA_MAKE_NUM(DATADIR_INST, 19), DATA_MAKE_NUM(DATADIR_INST, 20), DATA_MAKE_NUM(DATADIR_INST, 21), @@ -559,57 +558,57 @@ static s32 lbl_1_data_C4[] = { DATA_MAKE_NUM(DATADIR_INST, 36), }; -static u16 lbl_1_data_10C[] = { 55, 57, 68, 67, 64, 65, 75, 76, 70, 71, 62, 62 }; +static u16 hostSeTbl[] = { 55, 57, 68, 67, 64, 65, 75, 76, 70, 71, 62, 62 }; -static void fn_1_220C(void) +static void InstHostMain(void) { - float ofs_x; + float ofsX; s16 i; - s16 model; - s16 motion[2]; - ModelData *model_ptr; - model = Hu3DModelCreateFile(lbl_1_data_C4[lbl_1_bss_12 * 3]); - motion[0] = Hu3DJointMotionFile(model, lbl_1_data_C4[(lbl_1_bss_12 * 3) + 1]); - motion[1] = Hu3DJointMotionFile(model, lbl_1_data_C4[(lbl_1_bss_12 * 3) + 2]); - Hu3DMotionSet(model, motion[1]); - if (lbl_1_bss_12 == 3) { - ofs_x = 50; + s16 modelId; + s16 motId[2]; + ModelData *modelP; + modelId = Hu3DModelCreateFile(hostFileTbl[instHostNo * 3]); + motId[0] = Hu3DJointMotionFile(modelId, hostFileTbl[(instHostNo * 3) + 1]); + motId[1] = Hu3DJointMotionFile(modelId, hostFileTbl[(instHostNo * 3) + 2]); + Hu3DMotionSet(modelId, motId[1]); + if (instHostNo == 3) { + ofsX = 50; } else { - ofs_x = 0; + ofsX = 0; } - Hu3DModelPosSet(model, -353.0f + ofs_x, -150, 356); - Hu3DModelRotSet(model, 0, 90, 0); - Hu3DModelCameraSet(model, 2); - while (lbl_1_data_0 != 2) { + Hu3DModelPosSet(modelId, -353.0f + ofsX, -150, 356); + Hu3DModelRotSet(modelId, 0, 90, 0); + Hu3DModelCameraSet(modelId, 2); + while (instMode != 2) { HuPrcVSleep(); } HuPrcSleep(30); - Hu3DMotionTimeSet(model, 40); - HuAudFXPlay(lbl_1_data_10C[lbl_1_bss_12 * 2]); + Hu3DMotionTimeSet(modelId, 40); + HuAudFXPlay(hostSeTbl[instHostNo * 2]); for (i = 0; i <= 20; i++) { - Hu3DModelPosSet(model, -153.0f - (100.0f - (100.0f * (i / 20.0f))), (100.0 * sind(i * 9.0f)) + -150.0 + ofs_x, 356.0f); + Hu3DModelPosSet(modelId, -153.0f - (100.0f - (100.0f * (i / 20.0f))), (100.0 * sind(i * 9.0f)) + -150.0 + ofsX, 356.0f); HuPrcVSleep(); } for (i = 0; i <= 10; i++) { - Hu3DModelPosSet(model, -153.0f, (15.0 * sind(i * 18.0f)) + -150.f + ofs_x, 356.0f); - Hu3DModelRotSet(model, 0.0f, 90 - ((i / 10.0f) * 70), 0); + Hu3DModelPosSet(modelId, -153.0f, (15.0 * sind(i * 18.0f)) + -150.f + ofsX, 356.0f); + Hu3DModelRotSet(modelId, 0.0f, 90 - ((i / 10.0f) * 70), 0); HuPrcVSleep(); } - Hu3DMotionShiftSet(model, motion[0], 0, 10, HU3D_MOTATTR_LOOP); - model_ptr = &Hu3DData[model]; + Hu3DMotionShiftSet(modelId, motId[0], 0, 10, HU3D_MOTATTR_LOOP); + modelP = &Hu3DData[modelId]; while (1) { fontcolor = FONT_COLOR_RED; - if (lbl_1_data_0 == 3) { + if (instMode == 3) { break; } HuPrcVSleep(); } - Hu3DMotionSet(model, motion[1]); + Hu3DMotionSet(modelId, motId[1]); HuPrcSleep(20); - HuAudFXPlay(lbl_1_data_10C[(lbl_1_bss_12 * 2) + 1]); + HuAudFXPlay(hostSeTbl[(instHostNo * 2) + 1]); for (i = 0; i <= 30; i++) { - Hu3DModelPosSet(model, (i * 5) - 153, (50.0 * sind(i * 9.0f)) + -150.0 + ofs_x, (i * 20) + 356); + Hu3DModelPosSet(modelId, (i * 5) - 153, (50.0 * sind(i * 9.0f)) + -150.0 + ofsX, (i * 20) + 356); HuPrcVSleep(); } HuPrcEnd(); @@ -618,31 +617,31 @@ static void fn_1_220C(void) } } -static void fn_1_2804(void) +static void InstWinMain(void) { - float pos_x; + float posX; s16 i; - s16 window; - s16 window_other; + s16 winId; + s16 win2Id; s16 j; s16 insert_idx; - s16 rtrig; + s16 trigR; s16 groupCnt[4]; s16 charTbl[4][4]; - window = HuWinExCreateStyled(640, 320, 412, 120, -1, 1); - while (lbl_1_data_0 != 0) { + winId = HuWinExCreateStyled(640, 320, 412, 120, -1, 1); + while (instMode != 0) { HuPrcVSleep(); } - HuWinDispOn(window); - HuWinMesSet(window, mgInfoTbl[lbl_1_bss_14].inst_mess[0]); - HuWinMesPalSet(window, 7, 0, 0, 192); - HuWinMesSpeedSet(window, 0); - window_other = HuWinExCreateStyled(640, 320, 412, 120, -1, 1); - HuWinDispOn(window_other); - HuWinMesSpeedSet(window_other, 0); - HuWinPosSet(window_other, 142.0f, 640.0f); - lbl_1_bss_6 = 0; + HuWinDispOn(winId); + HuWinMesSet(winId, mgInfoTbl[instMgNo].inst_mess[0]); + HuWinMesPalSet(winId, 7, 0, 0, 192); + HuWinMesSpeedSet(winId, 0); + win2Id = HuWinExCreateStyled(640, 320, 412, 120, -1, 1); + HuWinDispOn(win2Id); + HuWinMesSpeedSet(win2Id, 0); + HuWinPosSet(win2Id, 142.0f, 640.0f); + instPage = 0; for (i = 0; i < 4; i++) { groupCnt[i] = 0; } @@ -653,57 +652,57 @@ static void fn_1_2804(void) } for (i = insert_idx = 0; i < 4; i++) { for (j = 0; j < groupCnt[i]; j++) { - HuWinInsertMesSet(window, charTbl[i][j], (s16)insert_idx); + HuWinInsertMesSet(winId, charTbl[i][j], (s16)insert_idx); insert_idx++; } } - while (lbl_1_data_0 != 2) { + while (instMode != 2) { HuPrcVSleep(); } HuPrcSleep(40); for (i = 0; i <= 20; i++) { - pos_x = 500.0 * cosd(i * 4.5f) + 142.0; - HuWinPosSet(window, pos_x, 320); + posX = 500.0 * cosd(i * 4.5f) + 142.0; + HuWinPosSet(winId, posX, 320); HuPrcVSleep(); } - lbl_1_data_0 = 1; - while (lbl_1_data_0 != 3) { - for (i = rtrig = 0; i < 4; i++) { + instMode = 1; + while (instMode != 3) { + for (i = trigR = 0; i < 4; i++) { if (!GWPlayerCfg[i].iscom) { - rtrig |= HuPadTrigR[GWPlayerCfg[i].pad_idx] & 0xC0; + trigR |= HuPadTrigR[GWPlayerCfg[i].pad_idx] & 0xC0; } } - if (rtrig) { + if (trigR) { HuAudFXPlay(1213); - lbl_1_bss_4 = 0; - HuWinMesSet(window_other, mgInfoTbl[lbl_1_bss_14].inst_mess[lbl_1_bss_6]); - HuWinMesPalSet(window_other, 7, 0, 0, 192); - lbl_1_bss_6++; - if (mgInfoTbl[lbl_1_bss_14].inst_mess[lbl_1_bss_6] == 0) { - lbl_1_bss_6++; + instBusyF = 0; + HuWinMesSet(win2Id, mgInfoTbl[instMgNo].inst_mess[instPage]); + HuWinMesPalSet(win2Id, 7, 0, 0, 192); + instPage++; + if (mgInfoTbl[instMgNo].inst_mess[instPage] == 0) { + instPage++; } - if (lbl_1_bss_6 >= 4) { - lbl_1_bss_6 = 0; + if (instPage >= 4) { + instPage = 0; } - HuWinMesSet(window, mgInfoTbl[lbl_1_bss_14].inst_mess[lbl_1_bss_6]); - HuWinMesPalSet(window, 7, 0, 0, 192); - HuWinPosSet(window_other, 142.0f, 320.0f); + HuWinMesSet(winId, mgInfoTbl[instMgNo].inst_mess[instPage]); + HuWinMesPalSet(winId, 7, 0, 0, 192); + HuWinPosSet(win2Id, 142.0f, 320.0f); for (i = 0; i <= 10; i++) { #if VERSION_NTSC - HuWinPosSet(window_other, 30.0 * sind(i * 9.0f) + 142.0, 160.0 * (1.0 - cosd(i * 9.0f)) + 320.0); + HuWinPosSet(win2Id, 30.0 * sind(i * 9.0f) + 142.0, 160.0 * (1.0 - cosd(i * 9.0f)) + 320.0); #else - HuWinPosSet(window_other, 30.0 * sind(i * 9.0f) + 142.0, 180.0 * (1.0 - cosd(i * 9.0f)) + 320.0); + HuWinPosSet(win2Id, 30.0 * sind(i * 9.0f) + 142.0, 180.0 * (1.0 - cosd(i * 9.0f)) + 320.0); #endif HuPrcVSleep(); } HuPrcSleep(5); } - lbl_1_bss_4 = 1; + instBusyF = 1; HuPrcVSleep(); } for (i = 0; i <= 20; i++) { - pos_x = 500.0 * (1.0 - cosd(i * 4.5f)) + 142.0; - HuWinPosSet(window, pos_x, 320); + posX = 500.0 * (1.0 - cosd(i * 4.5f)) + 142.0; + HuWinPosSet(winId, posX, 320); HuPrcVSleep(); } HuWinAllKill(); @@ -713,7 +712,7 @@ static void fn_1_2804(void) } } -static float lbl_1_data_124[] = { 420, 70, 488, 186, 476, 242, 400, 292 }; +static float instNamePosTbl[] = { 420, 70, 488, 186, 476, 242, 400, 292 }; #if VERSION_NTSC #define WIN_ANIM_OFS 201 @@ -721,238 +720,238 @@ static float lbl_1_data_124[] = { 420, 70, 488, 186, 476, 242, 400, 292 }; #define WIN_ANIM_OFS 219 #endif -static void fn_1_2FA0(void) +static void InstNameMain(void) { - float temp_f31; - float temp_f30; - float temp_f29; - float temp_f28; - float temp_f27; - s16 temp_r31; - s16 temp_r30; - char *temp_r29; - AnimData *temp_r28; - s16 temp_r27; - s16 temp_r26; - s16 temp_r25; - s16 temp_r24; - s16 temp_r23; - s16 temp_r22; - u16 temp_r21; - char *temp_r20; - s16 temp_r17; - s16 spA; - s16 sp8; + float posX; + float t; + float nameX; + float nameY; + float nameScaleY; + s16 i; + s16 j; + char *mes; + AnimData *nameAnim; + s16 rulesWinId; + s16 mesSpaceNum; + s16 nameGrpId; + s16 startGrpId; + s16 practiceGrpId; + s16 nameW; + u16 prevPage; + char *mesWord; + s16 nameSprId; + s16 startSprId; + s16 practiceSprId; s16 spC[2]; s16 sp10[4]; SeqWork work; - temp_r21 = 0; - for (temp_r31 = 0; temp_r31 < 16; temp_r31++) { - work.sprite[temp_r31] = work.spr_grp[temp_r31] = -1; + prevPage = 0; + for (i = 0; i < 16; i++) { + work.sprite[i] = work.spr_grp[i] = -1; } - temp_r20 = MessData_MesPtrGet(messDataPtr, mgInfoTbl[lbl_1_bss_14].name_mess); - temp_r29 = temp_r20; - temp_r31 = 0; - temp_r26 = 0; + mesWord = MessData_MesPtrGet(messDataPtr, mgInfoTbl[instMgNo].name_mess); + mes = mesWord; + i = 0; + mesSpaceNum = 0; while (1) { - if (*temp_r29 == 0 || *temp_r29 == 10) { - if (*temp_r29 == 0) { - temp_r31 = 1; + if (*mes == 0 || *mes == 10) { + if (*mes == 0) { + i = 1; } - *temp_r29 = 0; - fn_1_5EA4(&work, temp_r20, (lbl_1_bss_8 == 0) ? 1 : 0); - HuSprGrpPosSet(work.spr_grp[temp_r26], 288.0f, 240.0f); - spC[temp_r26] = work.alt_word_len; - temp_r26++; - if (temp_r31) { + *mes = 0; + FontCreate(&work, mesWord, (LanguageNo == 0) ? 1 : 0); + HuSprGrpPosSet(work.spr_grp[mesSpaceNum], 288.0f, 240.0f); + spC[mesSpaceNum] = work.alt_word_len; + mesSpaceNum++; + if (i) { break; } - temp_r20 = temp_r29 + 1; + mesWord = mes + 1; } - temp_r29++; + mes++; } #if VERSION_NTSC - if (temp_r26 == 1) { - temp_r22 = spC[0]; - temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); - temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 227; - temp_f28 = 78; - temp_f27 = 0.5f; + if (mesSpaceNum == 1) { + nameW = spC[0]; + nameAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); + nameX = ((576.0f - nameW) - 24.0f) - 16.0f + 227; + nameY = 78; + nameScaleY = 0.5f; } else { - temp_r22 = (spC[0] > spC[1]) ? spC[0] : spC[1]; - temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 15)); + nameW = (spC[0] > spC[1]) ? spC[0] : spC[1]; + nameAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 15)); - temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 172.0f; - temp_f28 = 84; - temp_f27 = 1.0f; + nameX = ((576.0f - nameW) - 24.0f) - 16.0f + 172.0f; + nameY = 84; + nameScaleY = 1.0f; } #else - if (temp_r26 == 1) { - temp_r22 = spC[0]; - temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); - temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 235; - temp_f28 = 78; - temp_f27 = 0.5f; + if (mesSpaceNum == 1) { + nameW = spC[0]; + nameAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); + nameX = ((576.0f - nameW) - 24.0f) - 16.0f + 235; + nameY = 78; + nameScaleY = 0.5f; } else { - temp_r22 = (spC[0] > spC[1]) ? spC[0] : spC[1]; - temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 15)); + nameW = (spC[0] > spC[1]) ? spC[0] : spC[1]; + nameAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 15)); - temp_f29 = ((576.0f - temp_r22) - 24.0f) - 16.0f + 235; - temp_f28 = 84; - temp_f27 = 1.0f; + nameX = ((576.0f - nameW) - 24.0f) - 16.0f + 235; + nameY = 84; + nameScaleY = 1.0f; } #endif - temp_r25 = HuSprGrpCreate(1); - temp_r17 = HuSprCreate(temp_r28, 0, 0); - HuSprGrpMemberSet(temp_r25, 0, temp_r17); - HuSprPriSet(temp_r25, 0, 100); - HuSprGrpPosSet(temp_r25, 10000, 70); - HuSprScaleSet(temp_r25, 0, 1.0f, temp_f27); - for (temp_r31 = 0; temp_r31 < temp_r26; temp_r31++) { - HuSprGrpPosSet(work.spr_grp[temp_r31], 1000, 70); + nameGrpId = HuSprGrpCreate(1); + nameSprId = HuSprCreate(nameAnim, 0, 0); + HuSprGrpMemberSet(nameGrpId, 0, nameSprId); + HuSprPriSet(nameGrpId, 0, 100); + HuSprGrpPosSet(nameGrpId, 10000, 70); + HuSprScaleSet(nameGrpId, 0, 1.0f, nameScaleY); + for (i = 0; i < mesSpaceNum; i++) { + HuSprGrpPosSet(work.spr_grp[i], 1000, 70); } - temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 16)); - temp_r24 = HuSprGrpCreate(1); - spA = HuSprCreate(temp_r28, 0, 0); - HuSprGrpMemberSet(temp_r24, 0, spA); - HuSprGrpPosSet(temp_r24, 1000, 186); - HuSprPriSet(temp_r24, 0, 1000); + nameAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 16)); + startGrpId = HuSprGrpCreate(1); + startSprId = HuSprCreate(nameAnim, 0, 0); + HuSprGrpMemberSet(startGrpId, 0, startSprId); + HuSprGrpPosSet(startGrpId, 1000, 186); + HuSprPriSet(startGrpId, 0, 1000); sp10[0] = HuWinCreate(1000, 186, 456, 42, 0); - HuWinMesSet(sp10[0], MAKE_MESSID(0x24, lbl_1_bss_10)); + HuWinMesSet(sp10[0], MAKE_MESSID(0x24, instMesOfs)); HuWinBGTPLvlSet(sp10[0], 0.0f); - temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 17)); - temp_r23 = HuSprGrpCreate(1); - sp8 = HuSprCreate(temp_r28, 0, 0); - HuSprGrpMemberSet(temp_r23, 0, sp8); - HuSprGrpPosSet(temp_r23, 1000, 242); - HuSprPriSet(temp_r23, 0, 1000); + nameAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 17)); + practiceGrpId = HuSprGrpCreate(1); + practiceSprId = HuSprCreate(nameAnim, 0, 0); + HuSprGrpMemberSet(practiceGrpId, 0, practiceSprId); + HuSprGrpPosSet(practiceGrpId, 1000, 242); + HuSprPriSet(practiceGrpId, 0, 1000); sp10[1] = HuWinCreate(1000, 242, 456, 42, 0); - HuWinMesSet(sp10[1], lbl_1_bss_10 + MAKE_MESSID(0x24, 0x01)); + HuWinMesSet(sp10[1], instMesOfs + MAKE_MESSID(0x24, 0x01)); HuWinBGTPLvlSet(sp10[1], 0.0f); - temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); + nameAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18)); sp10[2] = HuWinCreate(1000, 292, 456, 42, 0); - HuWinMesSet(sp10[2], lbl_1_bss_10 + MAKE_MESSID(0x24, 0x02)); + HuWinMesSet(sp10[2], instMesOfs + MAKE_MESSID(0x24, 0x02)); HuWinBGTPLvlSet(sp10[2], 0.0f); HuWinMesSpeedSet(sp10[2], 0); - temp_r31 = HuWinAnimSet(sp10[2], temp_r28, 0, WIN_ANIM_OFS, 18); - HuWinSprPriSet(sp10[2], temp_r31, 1000); - temp_r27 = HuWinCreate(1000, 292, 456, 42, 0); - HuWinBGTPLvlSet(temp_r27, 0.0f); - HuWinMesSpeedSet(temp_r27, 0); - HuWinMesSet(temp_r27, lbl_1_bss_10 + MAKE_MESSID(0x24, 0x02)); - temp_r31 = HuWinAnimSet(temp_r27, temp_r28, 0, WIN_ANIM_OFS, 18); - HuWinPriSet(temp_r27, 10); - HuWinSprPriSet(temp_r27, temp_r31, 11); - while (lbl_1_data_0 != 0) { + i = HuWinAnimSet(sp10[2], nameAnim, 0, WIN_ANIM_OFS, 18); + HuWinSprPriSet(sp10[2], i, 1000); + rulesWinId = HuWinCreate(1000, 292, 456, 42, 0); + HuWinBGTPLvlSet(rulesWinId, 0.0f); + HuWinMesSpeedSet(rulesWinId, 0); + HuWinMesSet(rulesWinId, instMesOfs + MAKE_MESSID(0x24, 0x02)); + i = HuWinAnimSet(rulesWinId, nameAnim, 0, WIN_ANIM_OFS, 18); + HuWinPriSet(rulesWinId, 10); + HuWinSprPriSet(rulesWinId, i, 11); + while (instMode != 0) { HuPrcVSleep(); } - for (temp_r31 = 0; temp_r31 < 36; temp_r31++) { - temp_f30 = temp_r31; - if (temp_f30 <= 20.0f) { + for (i = 0; i < 36; i++) { + t = i; + if (t <= 20.0f) { #if VERSION_NTSC - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + temp_f29; - HuSprGrpPosSet(temp_r25, temp_f31, temp_f28); - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (576.0f - (temp_r22 / 2) - 24.0f); - for (temp_r30 = 0; temp_r30 < temp_r26; temp_r30++) { - HuSprGrpPosSet(work.spr_grp[temp_r30], temp_f31, (temp_r30 * 28) + 70); + posX = 300.0 * cosd(4.5f * t) + nameX; + HuSprGrpPosSet(nameGrpId, posX, nameY); + posX = 300.0 * cosd(4.5f * t) + (576.0f - (nameW / 2) - 24.0f); + for (j = 0; j < mesSpaceNum; j++) { + HuSprGrpPosSet(work.spr_grp[j], posX, (j * 28) + 70); } #else - temp_f31 = 500.0 * cosd(4.5f * temp_f30) + temp_f29; - HuSprGrpPosSet(temp_r25, temp_f31, temp_f28); - temp_f31 = 500.0 * cosd(4.5f * temp_f30) + (576.0f - (temp_r22 / 2) - 24.0f); - for (temp_r30 = 0; temp_r30 < temp_r26; temp_r30++) { - HuSprGrpPosSet(work.spr_grp[temp_r30], temp_f31, (temp_r30 * 28) + 70); + posX = 500.0 * cosd(4.5f * t) + nameX; + HuSprGrpPosSet(nameGrpId, posX, nameY); + posX = 500.0 * cosd(4.5f * t) + (576.0f - (nameW / 2) - 24.0f); + for (j = 0; j < mesSpaceNum; j++) { + HuSprGrpPosSet(work.spr_grp[j], posX, (j * 28) + 70); } #endif } - temp_f30 = temp_r31 - 3; - if (temp_f30 > 0.0f) { - if (temp_f30 <= 20.0f) { - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + lbl_1_data_124[2]; - HuSprGrpPosSet(temp_r24, temp_f31, 186.0f); - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (lbl_1_data_124[2] - 88.0f); + t = i - 3; + if (t > 0.0f) { + if (t <= 20.0f) { + posX = 300.0 * cosd(4.5f * t) + instNamePosTbl[2]; + HuSprGrpPosSet(startGrpId, posX, 186.0f); + posX = 300.0 * cosd(4.5f * t) + (instNamePosTbl[2] - 88.0f); #if VERSION_NTSC - HuWinPosSet(sp10[0], 16.0f + temp_f31, 168.0f); + HuWinPosSet(sp10[0], 16.0f + posX, 168.0f); #else - HuWinPosSet(sp10[0], 8.0f + temp_f31, 168.0f); + HuWinPosSet(sp10[0], 8.0f + posX, 168.0f); #endif } } - temp_f30 = temp_r31 - 6; - if (temp_f30 > 0.0f) { - if (temp_f30 <= 20.0f) { - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + lbl_1_data_124[4]; - HuSprGrpPosSet(temp_r23, temp_f31, 242.0f); - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (lbl_1_data_124[4] - 100.0f); + t = i - 6; + if (t > 0.0f) { + if (t <= 20.0f) { + posX = 300.0 * cosd(4.5f * t) + instNamePosTbl[4]; + HuSprGrpPosSet(practiceGrpId, posX, 242.0f); + posX = 300.0 * cosd(4.5f * t) + (instNamePosTbl[4] - 100.0f); #if VERSION_NTSC - HuWinPosSet(sp10[1], 16.0f + temp_f31, 224.0f); + HuWinPosSet(sp10[1], 16.0f + posX, 224.0f); #else - HuWinPosSet(sp10[1], 8.0f + temp_f31, 224.0f); + HuWinPosSet(sp10[1], 8.0f + posX, 224.0f); #endif } } - temp_f30 = temp_r31 - 9; - if (temp_f30 > 0.0f) { - if (temp_f30 <= 20.0f) { - temp_f31 = 300.0 * cosd(4.5f * temp_f30) + (lbl_1_data_124[6] - (WIN_ANIM_OFS+16)); - HuWinPosSet(sp10[2], 16.0f + temp_f31, 274.0f); + t = i - 9; + if (t > 0.0f) { + if (t <= 20.0f) { + posX = 300.0 * cosd(4.5f * t) + (instNamePosTbl[6] - (WIN_ANIM_OFS+16)); + HuWinPosSet(sp10[2], 16.0f + posX, 274.0f); } } HuPrcVSleep(); } - while (lbl_1_data_0 != 3) { - if (temp_r21 != lbl_1_bss_6) { - temp_f31 = 16.0f + (lbl_1_data_124[6] - (WIN_ANIM_OFS+16)); - HuWinMesSet(temp_r27, MAKE_MESSID(0x24, 0x02) + lbl_1_bss_10 + temp_r21); - temp_r21 = lbl_1_bss_6; - if (lbl_1_bss_6 == 1) { - if (mgInfoTbl[lbl_1_bss_14].inst_mess[2]) { - HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x02) + lbl_1_bss_10 + lbl_1_bss_6); + while (instMode != 3) { + if (prevPage != instPage) { + posX = 16.0f + (instNamePosTbl[6] - (WIN_ANIM_OFS+16)); + HuWinMesSet(rulesWinId, MAKE_MESSID(0x24, 0x02) + instMesOfs + prevPage); + prevPage = instPage; + if (instPage == 1) { + if (mgInfoTbl[instMgNo].inst_mess[2]) { + HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x02) + instMesOfs + instPage); } else { - HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x06) + lbl_1_bss_10); + HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x06) + instMesOfs); } } else { - HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x02) + lbl_1_bss_10 + lbl_1_bss_6); + HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x02) + instMesOfs + instPage); } - for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) { + for (i = 0; i <= 10; i++) { #if VERSION_NTSC - HuWinPosSet(temp_r27, 30.0 * sind(temp_r31 * 9.0f) + temp_f31, 200.0 * (1.0 - cosd(temp_r31 * 9.0f)) + 274.0); + HuWinPosSet(rulesWinId, 30.0 * sind(i * 9.0f) + posX, 200.0 * (1.0 - cosd(i * 9.0f)) + 274.0); #else - HuWinPosSet(temp_r27, 30.0 * sind(temp_r31 * 9.0f) + temp_f31, 220.0 * (1.0 - cosd(temp_r31 * 9.0f)) + 274.0); + HuWinPosSet(rulesWinId, 30.0 * sind(i * 9.0f) + posX, 220.0 * (1.0 - cosd(i * 9.0f)) + 274.0); #endif HuPrcVSleep(); } } HuPrcVSleep(); } - for (temp_r31 = 0; temp_r31 < 20; temp_r31++) { - temp_f30 = 1.0 - cosd(temp_r31 * 4.5f); - temp_f31 = temp_f29 + (500.0f * temp_f30); - HuSprGrpPosSet(temp_r25, temp_f31, temp_f28); - temp_f31 = ((576.0f - (work.alt_word_len / 2)) - 24.0f) + (500.0f * temp_f30); - for (temp_r30 = 0; temp_r30 < temp_r26; temp_r30++) { - HuSprGrpPosSet(work.spr_grp[temp_r30], temp_f31, (temp_r30 * 28) + 70); + for (i = 0; i < 20; i++) { + t = 1.0 - cosd(i * 4.5f); + posX = nameX + (500.0f * t); + HuSprGrpPosSet(nameGrpId, posX, nameY); + posX = ((576.0f - (work.alt_word_len / 2)) - 24.0f) + (500.0f * t); + for (j = 0; j < mesSpaceNum; j++) { + HuSprGrpPosSet(work.spr_grp[j], posX, (j * 28) + 70); } - temp_f31 = lbl_1_data_124[2] + (300.0f * temp_f30); - HuSprGrpPosSet(temp_r24, temp_f31, 186.0f); - temp_f31 = (lbl_1_data_124[2] - 88.0f) + (300.0f * temp_f30); - HuWinPosSet(sp10[0], 16.0f + temp_f31, 168); - temp_f31 = lbl_1_data_124[4] + (300.0f * temp_f30); - HuSprGrpPosSet(temp_r23, temp_f31, 242.0f); - temp_f31 = (lbl_1_data_124[4] - 100.0f) + (300.0f * temp_f30); - HuWinPosSet(sp10[1], 16.0f + temp_f31, 224); + posX = instNamePosTbl[2] + (300.0f * t); + HuSprGrpPosSet(startGrpId, posX, 186.0f); + posX = (instNamePosTbl[2] - 88.0f) + (300.0f * t); + HuWinPosSet(sp10[0], 16.0f + posX, 168); + posX = instNamePosTbl[4] + (300.0f * t); + HuSprGrpPosSet(practiceGrpId, posX, 242.0f); + posX = (instNamePosTbl[4] - 100.0f) + (300.0f * t); + HuWinPosSet(sp10[1], 16.0f + posX, 224); #if VERSION_NTSC - temp_f31 = (lbl_1_data_124[6] - 184.0f) + (400.0f * temp_f30); + posX = (instNamePosTbl[6] - 184.0f) + (400.0f * t); #else - temp_f31 = (lbl_1_data_124[6] - 235.0f) + (400.0f * temp_f30); + posX = (instNamePosTbl[6] - 235.0f) + (400.0f * t); #endif - HuWinPosSet(sp10[2], 16.0f + temp_f31, 274); + HuWinPosSet(sp10[2], 16.0f + posX, 274); HuPrcVSleep(); } MGSeqSprKill(&work); @@ -962,98 +961,98 @@ static void fn_1_2FA0(void) } } -static u16 lbl_1_data_144[2] = { 1, 2 }; -static void fn_1_4174(omObjData *object) +static void CameraOutView(omObjData *object) { s16 i; + static u16 cameraMask[] = { HU3D_CAM0, HU3D_CAM1 }; for (i = 0; i < 2; i++) { Vec pos, target, up; float x, y, z; - x = lbl_1_bss_40[i].x; - y = lbl_1_bss_40[i].y; - z = lbl_1_bss_40[i].z; + x = cameraRot[i].x; + y = cameraRot[i].y; + z = cameraRot[i].z; - pos.x = (((sind(y) * cosd(x)) * lbl_1_bss_20[i]) + lbl_1_bss_28[i].x); - pos.y = (-sind(x) * lbl_1_bss_20[i]) + lbl_1_bss_28[i].y; - pos.z = ((cosd(y) * cosd(x)) * lbl_1_bss_20[i]) + lbl_1_bss_28[i].z; - target.x = lbl_1_bss_28[i].x; - target.y = lbl_1_bss_28[i].y; - target.z = lbl_1_bss_28[i].z; + pos.x = (((sind(y) * cosd(x)) * cameraZoom[i]) + cameraPos[i].x); + pos.y = (-sind(x) * cameraZoom[i]) + cameraPos[i].y; + pos.z = ((cosd(y) * cosd(x)) * cameraZoom[i]) + cameraPos[i].z; + target.x = cameraPos[i].x; + target.y = cameraPos[i].y; + target.z = cameraPos[i].z; up.x = sind(y) * sind(x); up.y = cosd(x); up.z = cosd(y) * sind(x); - Hu3DCameraPosSet(lbl_1_data_144[i], pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z); + Hu3DCameraPosSet(cameraMask[i], pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z); } } -static void fn_1_4528(omObjData *object) +static void CameraDebug(omObjData *object) { Vec pos; Vec offset; Vec dir; - Vec y_offset; + Vec yOffset; - f32 z_rot; - s8 stick_pos; + float rotZ; + s8 stickPos; - if (lbl_1_bss_0 != 0) { - lbl_1_bss_40[0].y += 0.1f * HuPadStkX[0]; - lbl_1_bss_40[0].x += 0.1f * HuPadStkY[0]; - lbl_1_bss_20[0] += HuPadTrigL[0] / 2; - lbl_1_bss_20[0] -= HuPadTrigR[0] / 2; - if (lbl_1_bss_20[0] < 100.0f) { - lbl_1_bss_20[0] = 100.0f; + if (debugCamOnF != 0) { + cameraRot[0].y += 0.1f * HuPadStkX[0]; + cameraRot[0].x += 0.1f * HuPadStkY[0]; + cameraZoom[0] += HuPadTrigL[0] / 2; + cameraZoom[0] -= HuPadTrigR[0] / 2; + if (cameraZoom[0] < 100.0f) { + cameraZoom[0] = 100.0f; } - pos.x = lbl_1_bss_28[0].x + (lbl_1_bss_20[0] * (sind(lbl_1_bss_40[0].y) * cosd(lbl_1_bss_40[0].x))); - pos.y = (lbl_1_bss_28[0].y + (lbl_1_bss_20[0] * -sind(lbl_1_bss_40[0].x))); - pos.z = (lbl_1_bss_28[0].z + (lbl_1_bss_20[0] * (cosd(lbl_1_bss_40[0].y) * cosd(lbl_1_bss_40[0].x)))); - offset.x = lbl_1_bss_28[0].x - pos.x; - offset.y = lbl_1_bss_28[0].y - pos.y; - offset.z = lbl_1_bss_28[0].z - pos.z; - dir.x = (sind(lbl_1_bss_40[0].y) * sind(lbl_1_bss_40[0].x)); - dir.y = cosd(lbl_1_bss_40[0].x); - dir.z = (cosd(lbl_1_bss_40[0].y) * sind(lbl_1_bss_40[0].x)); - z_rot = lbl_1_bss_40[0].z; - y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cosd(z_rot)) - + dir.y * (offset.x * offset.y * (1.0f - cosd(z_rot)) - offset.z * sind(z_rot)) - + dir.z * (offset.x * offset.z * (1.0f - cosd(z_rot)) + offset.y * sind(z_rot)); + pos.x = cameraPos[0].x + (cameraZoom[0] * (sind(cameraRot[0].y) * cosd(cameraRot[0].x))); + pos.y = (cameraPos[0].y + (cameraZoom[0] * -sind(cameraRot[0].x))); + pos.z = (cameraPos[0].z + (cameraZoom[0] * (cosd(cameraRot[0].y) * cosd(cameraRot[0].x)))); + offset.x = cameraPos[0].x - pos.x; + offset.y = cameraPos[0].y - pos.y; + offset.z = cameraPos[0].z - pos.z; + dir.x = (sind(cameraRot[0].y) * sind(cameraRot[0].x)); + dir.y = cosd(cameraRot[0].x); + dir.z = (cosd(cameraRot[0].y) * sind(cameraRot[0].x)); + rotZ = cameraRot[0].z; + yOffset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cosd(rotZ)) + + dir.y * (offset.x * offset.y * (1.0f - cosd(rotZ)) - offset.z * sind(rotZ)) + + dir.z * (offset.x * offset.z * (1.0f - cosd(rotZ)) + offset.y * sind(rotZ)); - y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cosd(z_rot)) - + dir.x * (offset.x * offset.y * (1.0f - cosd(z_rot)) + offset.z * sind(z_rot)) - + dir.z * (offset.y * offset.z * (1.0f - cosd(z_rot)) - offset.x * sind(z_rot)); + yOffset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cosd(rotZ)) + + dir.x * (offset.x * offset.y * (1.0f - cosd(rotZ)) + offset.z * sind(rotZ)) + + dir.z * (offset.y * offset.z * (1.0f - cosd(rotZ)) - offset.x * sind(rotZ)); - y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cosd(z_rot)) - + (dir.x * (offset.x * offset.z * (1.0 - cosd(z_rot)) - offset.y * sind(z_rot)) - + dir.y * (offset.y * offset.z * (1.0 - cosd(z_rot)) + offset.x * sind(z_rot))); + yOffset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cosd(rotZ)) + + (dir.x * (offset.x * offset.z * (1.0 - cosd(rotZ)) - offset.y * sind(rotZ)) + + dir.y * (offset.y * offset.z * (1.0 - cosd(rotZ)) + offset.x * sind(rotZ))); VECCrossProduct(&dir, &offset, &offset); VECNormalize(&offset, &offset); - stick_pos = (HuPadSubStkX[0] & 0xF8); - if (stick_pos != 0) { - lbl_1_bss_28[0].x += 0.05f * (offset.x * stick_pos); - lbl_1_bss_28[0].y += 0.05f * (offset.y * stick_pos); - lbl_1_bss_28[0].z += 0.05f * (offset.z * stick_pos); + stickPos = (HuPadSubStkX[0] & 0xF8); + if (stickPos != 0) { + cameraPos[0].x += 0.05f * (offset.x * stickPos); + cameraPos[0].y += 0.05f * (offset.y * stickPos); + cameraPos[0].z += 0.05f * (offset.z * stickPos); } - VECNormalize(&y_offset, &offset); - stick_pos = -(HuPadSubStkY[0] & 0xF8); - if (stick_pos != 0) { - lbl_1_bss_28[0].x += 0.05f * (offset.x * stick_pos); - lbl_1_bss_28[0].y += 0.05f * (offset.y * stick_pos); - lbl_1_bss_28[0].z += 0.05f * (offset.z * stick_pos); + VECNormalize(&yOffset, &offset); + stickPos = -(HuPadSubStkY[0] & 0xF8); + if (stickPos != 0) { + cameraPos[0].x += 0.05f * (offset.x * stickPos); + cameraPos[0].y += 0.05f * (offset.y * stickPos); + cameraPos[0].z += 0.05f * (offset.z * stickPos); } } } static float lbl_1_data_148 = 842; -static float lbl_1_data_14C = 34; +static float instPicRadius = 34; -static void fn_1_50B0(ModelData *model, Mtx mtx) +static void InstPicDraw(ModelData *model, Mtx mtx) { Mtx final; - Mtx inv_camera; - Mtx lookatlight; + Mtx invCamera; + Mtx lookAtLight; Mtx light; Mtx lookat; Vec pos; @@ -1067,7 +1066,7 @@ static void fn_1_50B0(ModelData *model, Mtx mtx) u8 b; s16 row; - s32 sp8 = 0; + s32 practiceSprId = 0; GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_DIRECT); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); @@ -1076,22 +1075,22 @@ static void fn_1_50B0(ModelData *model, Mtx mtx) GXSetVtxDesc(GX_VA_NRM, GX_DIRECT); GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); target.x = target.z = 0.0f; - target.x = lbl_1_data_14C * sind(lbl_1_bss_40[0].y); - target.z = lbl_1_data_14C * cosd(lbl_1_bss_40[0].y); + target.x = instPicRadius * sind(cameraRot[0].y); + target.z = instPicRadius * cosd(cameraRot[0].y); target.y = 415.0f; - pos.x = (sind(lbl_1_bss_40[0].y) * cosd(lbl_1_bss_40[0].x) * lbl_1_bss_20[0]) + lbl_1_bss_28[0].x; - pos.y = (-sind(lbl_1_bss_40[0].x) * lbl_1_bss_20[0]) + lbl_1_bss_28[0].y; - pos.z = (cosd(lbl_1_bss_40[0].y) * cosd(lbl_1_bss_40[0].x) * lbl_1_bss_20[0]) + lbl_1_bss_28[0].z; - up.x = -sind(lbl_1_bss_40[0].y); - up.z = -cosd(lbl_1_bss_40[0].y); + pos.x = (sind(cameraRot[0].y) * cosd(cameraRot[0].x) * cameraZoom[0]) + cameraPos[0].x; + pos.y = (-sind(cameraRot[0].x) * cameraZoom[0]) + cameraPos[0].y; + pos.z = (cosd(cameraRot[0].y) * cosd(cameraRot[0].x) * cameraZoom[0]) + cameraPos[0].z; + up.x = -sind(cameraRot[0].y); + up.z = -cosd(cameraRot[0].y); up.y = 0; MTXLookAt(lookat, &pos, &up, &target); - MTXLightPerspective(light, lbl_1_bss_C, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); - HuSprTexLoad(lbl_1_bss_18, 0, 0, GX_CLAMP, GX_CLAMP, GX_NEAR); - MTXInverse(Hu3DCameraMtx, inv_camera); - MTXConcat(inv_camera, mtx, final); - MTXConcat(light, lookat, lookatlight); - MTXConcat(lookatlight, final, final); + MTXLightPerspective(light, instFov, 1.2f, 0.5f, -0.5f, 0.5f, 0.5f); + HuSprTexLoad(instPicAnim, 0, 0, GX_CLAMP, GX_CLAMP, GX_NEAR); + MTXInverse(Hu3DCameraMtx, invCamera); + MTXConcat(invCamera, mtx, final); + MTXConcat(light, lookat, lookAtLight); + MTXConcat(lookAtLight, final, final); GXLoadTexMtxImm(final, GX_TEXMTX0, GX_MTX3x4); GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, GX_TEXMTX0); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0); @@ -1144,12 +1143,12 @@ static void fn_1_50B0(ModelData *model, Mtx mtx) GXEnd(); } -static void fn_1_5B64(ModelData *model, Mtx mtx) +static void ShadowDraw(ModelData *model, Mtx mtx) { - s32 sp8 = 0; + s32 temp = 0; GXTexObj tex; Mtx final; - Mtx inv_camera; + Mtx invCamera; Mtx shadow; GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_DIRECT); @@ -1157,8 +1156,8 @@ static void fn_1_5B64(ModelData *model, Mtx mtx) GXInitTexObj(&tex, Hu3DShadowData.unk_04, Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, GX_TF_I8, GX_CLAMP, GX_CLAMP, GX_FALSE); GXInitTexObjLOD(&tex, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); GXLoadTexObj(&tex, 0); - MTXInverse(Hu3DCameraMtx, inv_camera); - MTXConcat(inv_camera, mtx, final); + MTXInverse(Hu3DCameraMtx, invCamera); + MTXConcat(invCamera, mtx, final); MTXConcat(Hu3DShadowData.unk_68, Hu3DShadowData.unk_38, shadow); MTXConcat(shadow, final, final); GXLoadTexMtxImm(final, GX_TEXMTX9, GX_MTX3x4); diff --git a/src/REL/resultDll/battle.c b/src/REL/resultDll/battle.c index 8818f975..8baf9450 100644 --- a/src/REL/resultDll/battle.c +++ b/src/REL/resultDll/battle.c @@ -19,7 +19,9 @@ #include "REL/resultdll.h" -DataListModel lbl_1_data_4E8[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), 0, 0, -1, -1, { -300, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } }, +#define COIN_EFFECT_MAX 180 + +static StageModel resultBattleModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), 0, 0, -1, -1, { -300, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x09), 0, 0, -1, -1, { -100, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x0A), 0, 0, -1, -1, { 100, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x0A), 0, 0, -1, -1, { 300, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } }, @@ -32,12 +34,12 @@ DataListModel lbl_1_data_4E8[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), 0, 0, { DATA_MAKE_NUM(DATADIR_RESULT, 0x0F), 0x40000002, 0, -1, -1, { 5000, 0, 0 }, { 0, 0, 0 }, { 2.0f, 2.0f, 2.0f } }, { -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } } }; -DataListSprite lbl_1_data_758[] = { +static StageSprite resultBattleSprite[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x43), 0, 10, 288, 240, { 255, 255, 255, 255 } }, { 0, 0, 0, 0, 0, { 0, 0, 0, 0 } }, }; -HsfanimStruct00 lbl_1_data_780 = { 80, { 0, 0 }, 3, 30, 90, { 0, -0.2, 0 }, 5.0f, 0.95f, 10.0f, 0.995f, 2, +static HsfanimStruct00 resultBattleEffParMan = { 80, { 0, 0 }, 3, 30, 90, { 0, -0.2, 0 }, 5.0f, 0.95f, 10.0f, 0.995f, 2, { { 255, 192, 112, 255 }, { 0, 0, 0, 0 }, @@ -49,9 +51,10 @@ HsfanimStruct00 lbl_1_data_780 = { 80, { 0, 0 }, 3, 30, 90, { 0, -0.2, 0 }, 5.0f { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, - } }; + } +}; -s16 lbl_1_data_7D0[] = { +static s16 resultStatPosTbl[] = { 320, 132, 500, @@ -70,103 +73,103 @@ s16 lbl_1_data_7D0[] = { 387, }; -Vec lbl_1_data_7F0[] = { { -300, 270, 0 }, { -100, 180, 500 }, { 100, 90, 500 }, { 300, 0, 500 } }; +static Vec playerPosTbl[] = { { -300, 270, 0 }, { -100, 180, 500 }, { 100, 90, 500 }, { 300, 0, 500 } }; s16 lbl_1_data_820[] = { -284, 148, -84, 233, 116, 318, 316, 403 }; -s32 lbl_1_data_830[] = { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), DATA_MAKE_NUM(DATADIR_RESULT, 0x09), DATA_MAKE_NUM(DATADIR_RESULT, 0x0A), +static s32 bomheiCubeMdlTbl[] = { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), DATA_MAKE_NUM(DATADIR_RESULT, 0x09), DATA_MAKE_NUM(DATADIR_RESULT, 0x0A), DATA_MAKE_NUM(DATADIR_RESULT, 0x0A) }; -float lbl_1_data_840[] = { 130, 150, 170, 150, 150, 130, 170, 190 }; +static float coinEffectYOfs[] = { 130, 150, 170, 150, 150, 130, 170, 190 }; -float lbl_1_data_860[] = { 130, 150, 180, 150, 150, 170, 180, 210 }; +static float coinAddYOfs[] = { 130, 150, 180, 150, 150, 170, 180, 210 }; -float lbl_1_data_880[] = { 140, 160, 180, 150, 150, 120, 180, 210 }; +static float coinBlankYOfs[] = { 140, 160, 180, 150, 150, 120, 180, 210 }; -s16 lbl_1_data_8A0[] = { 8, 0, -8 }; +static s16 coinNumXOfs[] = { 8, 0, -8 }; -typedef struct struct_unk194 { - s16 unk0; - s16 unk2; - Vec unk4; - Vec unk10; - float unk1C; -} StructUnk194; +typedef struct CoinEffect_s { + s16 playerNo; + s16 rank; + Vec pos; + Vec rotVel; + float velY; +} CoinEffect; u8 lbl_1_bss_19F8[32]; -s16 lbl_1_bss_19F0[4]; -s16 lbl_1_bss_19E8[4]; -s16 lbl_1_bss_19E0[4]; -s16 lbl_1_bss_19B8[4][5]; -s16 lbl_1_bss_19B0[4]; -s16 lbl_1_bss_1990[4][4]; -s16 lbl_1_bss_1828[180]; +static s16 resultBattleOrder[4]; +static s16 resultBattleRank[4]; +static s16 coinNumGrpId[4]; +static s16 coinNumSprId[4][5]; +static s16 resultBattleCharMdl[4]; +static s16 resultBattleCharMot[4][4]; +static s16 coinEffectMdlId[COIN_EFFECT_MAX]; s16 lbl_1_bss_181C[6]; -s16 lbl_1_bss_1814[4]; -StructUnk194 lbl_1_bss_194[180]; -s32 lbl_1_bss_190; +static s16 resultBattleEffParManId[4]; +static CoinEffect coinEffectData[COIN_EFFECT_MAX]; +static s32 resultBattleSkipF; -void fn_1_6760(void); -void fn_1_6824(void); -void fn_1_7544(void); +static void ResultBattleIdle(void); +static void ResultBattleCreate(void); +static void ResultBattleStatAdd(void); -void fn_1_6490(void) +void ResultBattleMain(void) { - s16 player; + s16 playerNo; s16 i; - s16 window; - s16 button; - Process *process = HuPrcCurrentGet(); + s16 winId; + s16 btnDown; + Process *proc = HuPrcCurrentGet(); HuAudSeqPlay(10); - for (i = player = 0; i < 4; i++) { + for (i = playerNo = 0; i < 4; i++) { if (GWPlayerCfg[i].iscom) { - player++; + playerNo++; } } - if (player == 4) { - lbl_1_bss_190 = 1; + if (playerNo == 4) { + resultBattleSkipF = 1; } else { - lbl_1_bss_190 = 0; + resultBattleSkipF = 0; } - fn_1_6824(); - HuPrcChildCreate(fn_1_6760, 100, 8192, 0, process); + ResultBattleCreate(); + HuPrcChildCreate(ResultBattleIdle, 100, 8192, 0, proc); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); while (WipeStatGet()) { HuPrcVSleep(); } - lbl_1_bss_178 = 0; - HuPrcChildCreate(fn_1_3FD8, 100, 12288, 0, process); + resultReadEndF = 0; + HuPrcChildCreate(ResultBoardDataRead, 100, 12288, 0, proc); HuPrcSleep(10); - if (!lbl_1_bss_174) { + if (!resultFastF) { HuPrcSleep(20); } - fn_1_7544(); - fn_1_40DC(); - window = HuWinCreate(-10000.0f, 400.0f, 320, 40, 0); - HuWinMesSpeedSet(window, 0); - HuWinBGTPLvlSet(window, 0); - HuWinAttrSet(window, 0x800); - HuWinMesSet(window, MAKE_MESSID(0x24, 0x07)); + ResultBattleStatAdd(); + ResultCoinAdd(); + winId = HuWinCreate(-10000.0f, 400.0f, 320, 40, 0); + HuWinMesSpeedSet(winId, 0); + HuWinBGTPLvlSet(winId, 0); + HuWinAttrSet(winId, 0x800); + HuWinMesSet(winId, MAKE_MESSID(0x24, 0x07)); i = 0; while (1) { - if (lbl_1_bss_190 && i > 120) { + if (resultBattleSkipF && i > 120) { break; } - for (player = button = 0; player < 4; player++) { - if (!GWPlayerCfg[player].iscom) { - button |= HuPadBtnDown[GWPlayerCfg[player].pad_idx]; + for (playerNo = btnDown = 0; playerNo < 4; playerNo++) { + if (!GWPlayerCfg[playerNo].iscom) { + btnDown |= HuPadBtnDown[GWPlayerCfg[playerNo].pad_idx]; } } - if (button & PAD_BUTTON_A) { + if (btnDown & PAD_BUTTON_A) { HuAudFXPlay(28); break; } HuPrcVSleep(); i++; } - HuWinKill(window); - while (!lbl_1_bss_178) { + HuWinKill(winId); + while (!resultReadEndF) { HuPrcVSleep(); } WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); @@ -183,45 +186,45 @@ void fn_1_6490(void) } } -void fn_1_6760(void) +static void ResultBattleIdle(void) { Vec temp; temp.z = 0.0f; temp.y = 0.0f; temp.x = 0.0f; while (1) { - if (((HuPadBtn[0] | HuPadBtn[1] | HuPadBtn[2] | HuPadBtn[3]) & 0x100) != 0 || lbl_1_bss_190 != 0) { - lbl_1_bss_174 = 1; + if (((HuPadBtn[0] | HuPadBtn[1] | HuPadBtn[2] | HuPadBtn[3]) & 0x100) != 0 || resultBattleSkipF != 0) { + resultFastF = 1; } else { - lbl_1_bss_174 = 0; + resultFastF = 0; } HuPrcVSleep(); } } -void fn_1_7F98(void); -void fn_1_8338(s16 group, s16 value); -void fn_1_8484(void); -void fn_1_8658(void); -void fn_1_86DC(s16 player); -void fn_1_8CB8(struct model_data *model, Mtx matrix); +static void ResultBattleCoinAddShow(void); +static void ResultBattleCoinAddNumSet(s16 grpId, s16 value); +static void ResultBattleOrderSet(void); +static void CoinEffectInit(void); +static void CoinEffectAdd(s16 playerNo); +static void ResultShadowDraw(struct model_data *model, Mtx matrix); -void fn_1_6824(void) +static void ResultBattleCreate(void) { s16 i; - s16 character; - s16 player; - s16 x_ofs; + s16 charNo; + s16 playerNo; + s16 xOfs; AnimData *anim; AnimData *anim2; AnimData *anim3; - s16 char_mdl; + s16 charMdlId; Vec pos; Vec target; Vec up; - s16 gains[5]; - Process *process = HuPrcCurrentGet(); + s16 coinNum[5]; + Process *proc = HuPrcCurrentGet(); CRot.x = 0; CRot.y = 0; CRot.z = 0; @@ -240,168 +243,167 @@ void fn_1_6824(void) up.y = 1; up.z = 0; Hu3DShadowPosSet(&pos, &up, &target); - i = Hu3DHookFuncCreate(fn_1_8CB8); + i = Hu3DHookFuncCreate(ResultShadowDraw); Hu3DModelPosSet(i, 0, 0, 0); - fn_1_8484(); - fn_1_423C(gains); - gains[lbl_1_bss_172] += gains[4]; + ResultBattleOrderSet(); + ResultCoinNumGet(coinNum); + coinNum[resultBonusPlayer] += coinNum[4]; for (i = 0; i < 4; i++) { - lbl_1_data_4E8[i].datanum = lbl_1_data_830[lbl_1_bss_19E8[i]]; - if (lbl_1_bss_19E8[i] == 3) { - lbl_1_data_4E8[i].attr = 1; + resultBattleModel[i].datanum = bomheiCubeMdlTbl[resultBattleRank[i]]; + if (resultBattleRank[i] == 3) { + resultBattleModel[i].attr = 1; } } - fn_1_8FF8(lbl_1_data_4E8); - fn_1_927C(lbl_1_data_758); - espDrawNoSet(lbl_1_bss_1A1A[0], 127); + StageModelCreate(resultBattleModel); + StageSpriteCreate(resultBattleSprite); + espDrawNoSet(stageSprId[0], 127); for (i = 0; i < 4; i++) { - Hu3DModelShadowSet(lbl_1_bss_1A9C[i]); + Hu3DModelShadowSet(stageMdlId[i]); } for (i = 0; i < 4; i++) { - anim = HuSprAnimRead(HuDataReadNum(lbl_1_bss_19E8[i] + DATA_MAKE_NUM(DATADIR_RESULT, 0x44), MEMORY_DEFAULT_NUM)); - ; - if (lbl_1_bss_19E8[i] <= 2) { + anim = HuSprAnimRead(HuDataReadNum(resultBattleRank[i] + DATA_MAKE_NUM(DATADIR_RESULT, 0x44), MEMORY_DEFAULT_NUM)); + if (resultBattleRank[i] <= 2) { anim2 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_RESULT, 0x48), MEMORY_DEFAULT_NUM)); } else { anim2 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_RESULT, 0x48), MEMORY_DEFAULT_NUM)); } - Hu3DAnimCreate(anim, lbl_1_bss_1A9C[i + 4], "ys22_a0"); - Hu3DAnimCreate(anim2, lbl_1_bss_1A9C[i + 4], "ys22_a1"); - Hu3DModelAttrSet(lbl_1_bss_1A9C[i + 4], HU3D_MOTATTR_PAUSE); + Hu3DAnimCreate(anim, stageMdlId[i + 4], "ys22_a0"); + Hu3DAnimCreate(anim2, stageMdlId[i + 4], "ys22_a1"); + Hu3DModelAttrSet(stageMdlId[i + 4], HU3D_MOTATTR_PAUSE); } anim = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_RESULT, 0x3D), MEMORY_DEFAULT_NUM)); anim2 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_RESULT, 0x3B), MEMORY_DEFAULT_NUM)); anim3 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_RESULT, 0x3C), MEMORY_DEFAULT_NUM)); for (i = 0; i < 4; i++) { - if (gains[lbl_1_bss_19F0[i]] >= 100) { - x_ofs = lbl_1_data_8A0[2]; + if (coinNum[resultBattleOrder[i]] >= 100) { + xOfs = coinNumXOfs[2]; } - else if (gains[lbl_1_bss_19F0[i]] >= 10) { - x_ofs = lbl_1_data_8A0[1]; + else if (coinNum[resultBattleOrder[i]] >= 10) { + xOfs = coinNumXOfs[1]; } else { - x_ofs = lbl_1_data_8A0[0]; + xOfs = coinNumXOfs[0]; } - lbl_1_bss_19E0[i] = HuSprGrpCreate(5); - lbl_1_bss_19B8[i][0] = HuSprCreate(anim, 10, 0); - HuSprGrpMemberSet(lbl_1_bss_19E0[i], 0, lbl_1_bss_19B8[i][0]); - HuSprPosSet(lbl_1_bss_19E0[i], 0, 17, -32); - lbl_1_bss_19B8[i][1] = HuSprCreate(anim2, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_19E0[i], 1, lbl_1_bss_19B8[i][1]); - HuSprPosSet(lbl_1_bss_19E0[i], 1, x_ofs, -36); - lbl_1_bss_19B8[i][2] = HuSprCreate(anim3, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_19E0[i], 2, lbl_1_bss_19B8[i][2]); - HuSprPosSet(lbl_1_bss_19E0[i], 2, x_ofs + 16, -36); - lbl_1_bss_19B8[i][3] = HuSprCreate(anim3, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_19E0[i], 3, lbl_1_bss_19B8[i][3]); - HuSprPosSet(lbl_1_bss_19E0[i], 3, x_ofs + 32, -36); - lbl_1_bss_19B8[i][4] = HuSprCreate(anim3, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_19E0[i], 4, lbl_1_bss_19B8[i][4]); - HuSprPosSet(lbl_1_bss_19E0[i], 4, x_ofs + 48, -36); - HuSprGrpPosSet(lbl_1_bss_19E0[i], 0, 0); - fn_1_8338(lbl_1_bss_19E0[i], 9); - HuSprGrpScaleSet(lbl_1_bss_19E0[i], 0, 0); + coinNumGrpId[i] = HuSprGrpCreate(5); + coinNumSprId[i][0] = HuSprCreate(anim, 10, 0); + HuSprGrpMemberSet(coinNumGrpId[i], 0, coinNumSprId[i][0]); + HuSprPosSet(coinNumGrpId[i], 0, 17, -32); + coinNumSprId[i][1] = HuSprCreate(anim2, 0, 0); + HuSprGrpMemberSet(coinNumGrpId[i], 1, coinNumSprId[i][1]); + HuSprPosSet(coinNumGrpId[i], 1, xOfs, -36); + coinNumSprId[i][2] = HuSprCreate(anim3, 0, 0); + HuSprGrpMemberSet(coinNumGrpId[i], 2, coinNumSprId[i][2]); + HuSprPosSet(coinNumGrpId[i], 2, xOfs + 16, -36); + coinNumSprId[i][3] = HuSprCreate(anim3, 0, 0); + HuSprGrpMemberSet(coinNumGrpId[i], 3, coinNumSprId[i][3]); + HuSprPosSet(coinNumGrpId[i], 3, xOfs + 32, -36); + coinNumSprId[i][4] = HuSprCreate(anim3, 0, 0); + HuSprGrpMemberSet(coinNumGrpId[i], 4, coinNumSprId[i][4]); + HuSprPosSet(coinNumGrpId[i], 4, xOfs + 48, -36); + HuSprGrpPosSet(coinNumGrpId[i], 0, 0); + ResultBattleCoinAddNumSet(coinNumGrpId[i], 9); + HuSprGrpScaleSet(coinNumGrpId[i], 0, 0); } (void)anim3; - Hu3DMotionSet(lbl_1_bss_1A9C[8], lbl_1_bss_1A5C[9]); - Hu3DModelAttrSet(lbl_1_bss_1A9C[8], HU3D_MOTATTR_LOOP); - Hu3DModelShadowSet(lbl_1_bss_1A9C[8]); - for (i = 0; i < 180; i++) { + Hu3DMotionSet(stageMdlId[8], stageMotId[9]); + Hu3DModelAttrSet(stageMdlId[8], HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(stageMdlId[8]); + for (i = 0; i < COIN_EFFECT_MAX; i++) { if (i == 0) { - lbl_1_bss_1828[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x0C)); + coinEffectMdlId[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x0C)); } else { - lbl_1_bss_1828[i] = Hu3DModelLink(lbl_1_bss_1828[0]); + coinEffectMdlId[i] = Hu3DModelLink(coinEffectMdlId[0]); } - Hu3DModelScaleSet(lbl_1_bss_1828[i], 0.5f, 0.5f, 0.5f); - Hu3DModelAttrSet(lbl_1_bss_1828[i], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(coinEffectMdlId[i], 0.5f, 0.5f, 0.5f); + Hu3DModelAttrSet(coinEffectMdlId[i], HU3D_ATTR_DISPOFF); } - fn_1_8658(); + CoinEffectInit(); anim = HuSprAnimRead(HuAR_ARAMtoMRAMFileRead(DATA_MAKE_NUM(DATADIR_EFFECT, 4), MEMORY_DEFAULT_NUM, HEAP_DATA)); for (i = 0; i < 4; i++) { - lbl_1_bss_1814[i] = Hu3DParManCreate(anim, 300, &lbl_1_data_780); - Hu3DParManAttrSet(lbl_1_bss_1814[i], 0x65); - Hu3DParticleBlendModeSet(Hu3DParManModelIDGet(lbl_1_bss_1814[i]), 1); - Hu3DParManRotSet(lbl_1_bss_1814[i], 90, 0, 0); + resultBattleEffParManId[i] = Hu3DParManCreate(anim, 300, &resultBattleEffParMan); + Hu3DParManAttrSet(resultBattleEffParManId[i], 0x65); + Hu3DParticleBlendModeSet(Hu3DParManModelIDGet(resultBattleEffParManId[i]), 1); + Hu3DParManRotSet(resultBattleEffParManId[i], 90, 0, 0); } HuDataDirClose(DATADIR_RESULT); for (i = 0; i < 4; i++) { - player = lbl_1_bss_19F0[i]; - character = GWPlayerCfg[lbl_1_bss_19F0[i]].character; - char_mdl = CharModelCreate(character, 2); - lbl_1_bss_19B0[player] = char_mdl; - lbl_1_bss_1990[player][0] = CharModelMotionCreate(character, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); - lbl_1_bss_1990[player][1] = CharModelMotionCreate(character, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17)); - lbl_1_bss_1990[player][2] = CharModelMotionCreate(character, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x49)); - CharModelVoiceEnableSet(character, lbl_1_bss_1990[player][1], 0); - CharModelMotionSet(character, lbl_1_bss_1990[player][0]); - Hu3DModelPosSet(char_mdl, lbl_1_data_7F0[i].x, lbl_1_data_7F0[lbl_1_bss_19E8[i]].y, 0); - Hu3DModelAttrSet(char_mdl, HU3D_MOTATTR_LOOP); - Hu3DModelShadowSet(char_mdl); + playerNo = resultBattleOrder[i]; + charNo = GWPlayerCfg[resultBattleOrder[i]].character; + charMdlId = CharModelCreate(charNo, 2); + resultBattleCharMdl[playerNo] = charMdlId; + resultBattleCharMot[playerNo][0] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00)); + resultBattleCharMot[playerNo][1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17)); + resultBattleCharMot[playerNo][2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x49)); + CharModelVoiceEnableSet(charNo, resultBattleCharMot[playerNo][1], 0); + CharModelMotionSet(charNo, resultBattleCharMot[playerNo][0]); + Hu3DModelPosSet(charMdlId, playerPosTbl[i].x, playerPosTbl[resultBattleRank[i]].y, 0); + Hu3DModelAttrSet(charMdlId, HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(charMdlId); } CharModelDataClose(-1); } -Vec lbl_1_data_8B8[] = { { 8, 0, 0 }, { 0, 8, 0 }, { 10, 5, 0 }, { -5, 10, 0 }, { 0, -8, 0 }, { 8, 10, 0 }, { -10, 8, 0 }, { 15, 0, 0 } }; +static Vec cameraShakeOfs[] = { { 8, 0, 0 }, { 0, 8, 0 }, { 10, 5, 0 }, { -5, 10, 0 }, { 0, -8, 0 }, { 8, 10, 0 }, { -10, 8, 0 }, { 15, 0, 0 } }; -void fn_1_7544(void) +static void ResultBattleStatAdd(void) { s16 i; s16 time; s16 done_cnt; float pos_y; - s16 gains[5]; - s16 time_player[4]; - fn_1_423C(gains); + s16 coinNum[5]; + s16 delay[4]; + ResultCoinNumGet(coinNum); for (time = 0; time <= 5; time++) { pos_y = ((5 - time) * 50) + 580; for (i = 0; i < 4; i++) { - Hu3DModelPosSet(lbl_1_bss_1A9C[i + 4], lbl_1_data_7F0[i].x, pos_y, 0); + Hu3DModelPosSet(stageMdlId[i + 4], playerPosTbl[i].x, pos_y, 0); } HuPrcVSleep(); } for (i = 0; i < 4; i++) { - Hu3DModelAttrReset(lbl_1_bss_1A9C[i + 4], HU3D_MOTATTR_PAUSE); - Hu3DMotionSpeedSet(lbl_1_bss_1A9C[i + 4], 1.5f); + Hu3DModelAttrReset(stageMdlId[i + 4], HU3D_MOTATTR_PAUSE); + Hu3DMotionSpeedSet(stageMdlId[i + 4], 1.5f); } HuPrcSleep(35); for (i = 0; i < 4; i++) { - if (gains[lbl_1_bss_19F0[i]] > 0) { - Hu3DParManAttrReset(lbl_1_bss_1814[i], 1); - time_player[i] = frandmod(10); + if (coinNum[resultBattleOrder[i]] > 0) { + Hu3DParManAttrReset(resultBattleEffParManId[i], 1); + delay[i] = frandmod(10); } else { - time_player[i] = 0; + delay[i] = 0; } - Hu3DParManPosSet(lbl_1_bss_1814[i], lbl_1_data_7F0[i].x, 610.0f, 0.0f); + Hu3DParManPosSet(resultBattleEffParManId[i], playerPosTbl[i].x, 610.0f, 0.0f); } while (1) { for (i = done_cnt = 0; i < 4; i++) { - if (time_player[i]) { - time_player[i]--; + if (delay[i]) { + delay[i]--; continue; } - if (gains[lbl_1_bss_19F0[i]] <= 0) { - Hu3DParManAttrSet(lbl_1_bss_1814[i], 1); + if (coinNum[resultBattleOrder[i]] <= 0) { + Hu3DParManAttrSet(resultBattleEffParManId[i], 1); done_cnt++; } else { - fn_1_86DC(i); - gains[lbl_1_bss_19F0[i]]--; - if (gains[lbl_1_bss_19F0[i]] <= 10) { - time_player[i] = 4; + CoinEffectAdd(i); + coinNum[resultBattleOrder[i]]--; + if (coinNum[resultBattleOrder[i]] <= 10) { + delay[i] = 4; } else { - if (gains[lbl_1_bss_19F0[i]] <= 20) { - time_player[i] = 3; + if (coinNum[resultBattleOrder[i]] <= 20) { + delay[i] = 3; } else { - if (gains[lbl_1_bss_19F0[i]] <= 40) { - time_player[i] = 2; + if (coinNum[resultBattleOrder[i]] <= 40) { + delay[i] = 2; } else { - time_player[i] = 1; + delay[i] = 1; } } } @@ -412,234 +414,233 @@ void fn_1_7544(void) } HuPrcVSleep(); } - if (gains[4]) { + if (coinNum[4]) { HuPrcSleep(20); - Hu3DModelRotSet(lbl_1_bss_1A9C[8], 0, -90, 0); - Hu3DModelScaleSet(lbl_1_bss_1A9C[8], 0.8f, 0.8f, 0.8f); - Hu3DMotionSpeedSet(lbl_1_bss_1A9C[8], 2.0f); + Hu3DModelRotSet(stageMdlId[8], 0, -90, 0); + Hu3DModelScaleSet(stageMdlId[8], 0.8f, 0.8f, 0.8f); + Hu3DMotionSpeedSet(stageMdlId[8], 2.0f); for (i = 0; i <= 40; i++) { - Hu3DModelPosSet(lbl_1_bss_1A9C[8], 500.0f * (1.0f - (i / 40.0f)), 0, 100.0f); + Hu3DModelPosSet(stageMdlId[8], 500.0f * (1.0f - (i / 40.0f)), 0, 100.0f); HuPrcVSleep(); } HuAudFXPlay(828); - Hu3DModelAttrReset(lbl_1_bss_1A9C[10], HU3D_MOTATTR_PAUSE); - Hu3DModelPosSet(lbl_1_bss_1A9C[10], 0, 0, 200); - for (i = 0; i < Hu3DMotionMaxTimeGet(lbl_1_bss_1A9C[10]); i++) { + Hu3DModelAttrReset(stageMdlId[10], HU3D_MOTATTR_PAUSE); + Hu3DModelPosSet(stageMdlId[10], 0, 0, 200); + for (i = 0; i < Hu3DMotionMaxTimeGet(stageMdlId[10]); i++) { if (i > 10) { - Hu3DModelAttrSet(lbl_1_bss_1A9C[8], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(stageMdlId[8], HU3D_ATTR_DISPOFF); } - Center.x = lbl_1_data_8B8[(i / 2) & 0x7].x; - Center.y = 330.0f + lbl_1_data_8B8[(i / 2) & 0x7].y; - Center.z = lbl_1_data_8B8[(i / 2) & 0x7].z; - espPosSet(lbl_1_bss_1A1A[0], 288.0f + lbl_1_data_8B8[(i / 2) & 0x7].x, 240.0f - lbl_1_data_8B8[(i / 2) & 0x7].y); + Center.x = cameraShakeOfs[(i / 2) & 0x7].x; + Center.y = 330.0f + cameraShakeOfs[(i / 2) & 0x7].y; + Center.z = cameraShakeOfs[(i / 2) & 0x7].z; + espPosSet(stageSprId[0], 288.0f + cameraShakeOfs[(i / 2) & 0x7].x, 240.0f - cameraShakeOfs[(i / 2) & 0x7].y); HuPrcVSleep(); } - espPosSet(lbl_1_bss_1A1A[0], 288.0, 240.0); + espPosSet(stageSprId[0], 288.0, 240.0); Center.x = 0; Center.y = 330; Center.z = 0; - time_player[0] = 10; + delay[0] = 10; for (i = 0; i < 4; i++) { - if (lbl_1_bss_172 == lbl_1_bss_19F0[i]) { + if (resultBonusPlayer == resultBattleOrder[i]) { break; } } - Hu3DParManAttrReset(lbl_1_bss_1814[i], 1); + Hu3DParManAttrReset(resultBattleEffParManId[i], 1); while (1) { - if (time_player[0] != 0) { - time_player[0]--; + if (delay[0] != 0) { + delay[0]--; HuPrcVSleep(); continue; } - if (gains[4] <= 0) { - Hu3DParManAttrSet(lbl_1_bss_1814[i], 1); + if (coinNum[4] <= 0) { + Hu3DParManAttrSet(resultBattleEffParManId[i], 1); break; } - fn_1_86DC(i); - gains[4]--; - time_player[0] = 5; + CoinEffectAdd(i); + coinNum[4]--; + delay[0] = 5; HuPrcVSleep(); } - Hu3DParManAttrSet(lbl_1_bss_1814[i], 1); + Hu3DParManAttrSet(resultBattleEffParManId[i], 1); } - fn_1_423C(gains); - gains[lbl_1_bss_172] += gains[4]; + ResultCoinNumGet(coinNum); + coinNum[resultBonusPlayer] += coinNum[4]; for (i = 0; i < 4; i++) { - if (gains[lbl_1_bss_19F0[i]]) { - CharModelMotionShiftSet(GWPlayerCfg[lbl_1_bss_19F0[i]].character, lbl_1_bss_1990[lbl_1_bss_19F0[i]][1], 0, 4, HU3D_MOTATTR_NONE); - HuAudPlayerVoicePlay(lbl_1_bss_19F0[i], 293); + if (coinNum[resultBattleOrder[i]]) { + CharModelMotionShiftSet(GWPlayerCfg[resultBattleOrder[i]].character, resultBattleCharMot[resultBattleOrder[i]][1], 0, 4, HU3D_MOTATTR_NONE); + HuAudPlayerVoicePlay(resultBattleOrder[i], 293); } else { - CharModelMotionShiftSet(GWPlayerCfg[lbl_1_bss_19F0[i]].character, lbl_1_bss_1990[lbl_1_bss_19F0[i]][2], 0, 4, HU3D_MOTATTR_NONE); + CharModelMotionShiftSet(GWPlayerCfg[resultBattleOrder[i]].character, resultBattleCharMot[resultBattleOrder[i]][2], 0, 4, HU3D_MOTATTR_NONE); } } HuPrcSleep(20); - fn_1_7F98(); + ResultBattleCoinAddShow(); HuPrcSleep(120); } -void fn_1_7F98(void) +static void ResultBattleCoinAddShow(void) { s16 i; s16 time; - s16 delay; - s16 gains[5]; - Vec pos_3d; - Vec pos_2d; - fn_1_423C(gains); - gains[lbl_1_bss_172] += gains[4]; + s16 speed; + s16 coinNum[5]; + Vec pos3D; + Vec pos2D; + ResultCoinNumGet(coinNum); + coinNum[resultBonusPlayer] += coinNum[4]; for (i = 0; i < 4; i++) { - fn_1_8338(lbl_1_bss_19E0[i], gains[lbl_1_bss_19F0[i]]); - pos_3d.x = lbl_1_data_7F0[i].x; - if (gains[lbl_1_bss_19F0[i]]) { - pos_3d.y = lbl_1_data_7F0[lbl_1_bss_19E8[i]].y + lbl_1_data_860[GWPlayerCfg[lbl_1_bss_19F0[i]].character]; + ResultBattleCoinAddNumSet(coinNumGrpId[i], coinNum[resultBattleOrder[i]]); + pos3D.x = playerPosTbl[i].x; + if (coinNum[resultBattleOrder[i]]) { + pos3D.y = playerPosTbl[resultBattleRank[i]].y + coinAddYOfs[GWPlayerCfg[resultBattleOrder[i]].character]; } else { - pos_3d.y = lbl_1_data_7F0[lbl_1_bss_19E8[i]].y + lbl_1_data_880[GWPlayerCfg[lbl_1_bss_19F0[i]].character]; + pos3D.y = playerPosTbl[resultBattleRank[i]].y + coinBlankYOfs[GWPlayerCfg[resultBattleOrder[i]].character]; } - pos_3d.z = 0; - Hu3D3Dto2D(&pos_3d, 1, &pos_2d); - HuSprGrpPosSet(lbl_1_bss_19E0[i], pos_2d.x, pos_2d.y); + pos3D.z = 0; + Hu3D3Dto2D(&pos3D, 1, &pos2D); + HuSprGrpPosSet(coinNumGrpId[i], pos2D.x, pos2D.y); } - delay = (lbl_1_bss_174) ? 3 : 10; - for (time = 0; time <= delay; time++) { - float scale = sind((90.0 / delay) * time); + speed = (resultFastF) ? 3 : 10; + for (time = 0; time <= speed; time++) { + float scale = sind((90.0 / speed) * time); for (i = 0; i < 4; i++) { - HuSprGrpScaleSet(lbl_1_bss_19E0[i], scale, scale); + HuSprGrpScaleSet(coinNumGrpId[i], scale, scale); } HuPrcVSleep(); } for (i = 0; i < 4; i++) { - HuSprGrpScaleSet(lbl_1_bss_19E0[i], 1.0f, 1.0f); + HuSprGrpScaleSet(coinNumGrpId[i], 1.0f, 1.0f); } } -void fn_1_8338(s16 group, s16 value) +static void ResultBattleCoinAddNumSet(s16 grpId, s16 value) { - s16 digit; - s16 digit_value; - - digit = 2; - digit_value = value / 100; - if (digit_value != 0) { - HuSprBankSet(group, digit, digit_value); - HuSprAttrReset(group, digit, 4); - digit++; + s16 no; + s16 bank; + no = 2; + bank = value / 100; + if (bank != 0) { + HuSprBankSet(grpId, no, bank); + HuSprAttrReset(grpId, no, 4); + no++; } - value -= digit_value * 100; - digit_value = value / 10; - if (digit_value != 0 || digit == 3) { - HuSprBankSet(group, digit, digit_value); - HuSprAttrReset(group, digit, 4); - digit++; + value -= bank * 100; + bank = value / 10; + if (bank != 0 || no == 3) { + HuSprBankSet(grpId, no, bank); + HuSprAttrReset(grpId, no, 4); + no++; } - value -= digit_value * 10; - HuSprBankSet(group, digit, value); - HuSprAttrReset(group, digit, 4); - digit++; - for (digit_value = digit; digit_value < 5; digit_value++) { - HuSprAttrSet(group, digit_value, 4); + value -= bank * 10; + HuSprBankSet(grpId, no, value); + HuSprAttrReset(grpId, no, 4); + no++; + for (bank = no; bank < 5; bank++) { + HuSprAttrSet(grpId, bank, 4); } } -void fn_1_8484(void) +static void ResultBattleOrderSet(void) { s16 i; s16 j; for (i = 0; i < 4; i++) { - lbl_1_bss_19E8[i] = GWPlayerCoinWinGet(i); - lbl_1_bss_19F0[i] = i; + resultBattleRank[i] = GWPlayerCoinWinGet(i); + resultBattleOrder[i] = i; } for (j = 1; j < 4; j++) { for (i = 0; i < 4 - j; i++) { - if (lbl_1_bss_19E8[i] > lbl_1_bss_19E8[i + 1]) { + if (resultBattleRank[i] > resultBattleRank[i + 1]) { s16 temp; - temp = lbl_1_bss_19E8[i]; - lbl_1_bss_19E8[i] = lbl_1_bss_19E8[i + 1]; - lbl_1_bss_19E8[i + 1] = temp; - temp = lbl_1_bss_19F0[i]; - lbl_1_bss_19F0[i] = lbl_1_bss_19F0[i + 1]; - lbl_1_bss_19F0[i + 1] = temp; + temp = resultBattleRank[i]; + resultBattleRank[i] = resultBattleRank[i + 1]; + resultBattleRank[i + 1] = temp; + temp = resultBattleOrder[i]; + resultBattleOrder[i] = resultBattleOrder[i + 1]; + resultBattleOrder[i + 1] = temp; } } } } -void fn_1_8998(void); +static void CoinEffectMain(void); -void fn_1_8658(void) +static void CoinEffectInit(void) { s16 i; Process *process = HuPrcCurrentGet(); - for (i = 0; i < 180; i++) { - lbl_1_bss_194[i].unk0 = -1; + for (i = 0; i < COIN_EFFECT_MAX; i++) { + coinEffectData[i].playerNo = -1; } - HuPrcChildCreate(fn_1_8998, 100, 8192, 0, process); + HuPrcChildCreate(CoinEffectMain, 100, 8192, 0, process); } -void fn_1_86DC(s16 player) +static void CoinEffectAdd(s16 playerNo) { s16 i; - for (i = 0; i < 180; i++) { - if (lbl_1_bss_194[i].unk0 == -1) { + for (i = 0; i < COIN_EFFECT_MAX; i++) { + if (coinEffectData[i].playerNo == -1) { break; } } - if (i == 180) { + if (i == COIN_EFFECT_MAX) { return; } - lbl_1_bss_194[i].unk0 = player; - lbl_1_bss_194[i].unk4.x = lbl_1_data_7F0[player].x; - lbl_1_bss_194[i].unk4.y = 610.0f; - lbl_1_bss_194[i].unk4.z = 0.0f; - lbl_1_bss_194[i].unk2 = lbl_1_bss_19E8[player]; - lbl_1_bss_194[i].unk10.x = frandmod(20) - 10.0f; - lbl_1_bss_194[i].unk10.y = frandmod(20) - 10.0f; - lbl_1_bss_194[i].unk10.z = 0; - lbl_1_bss_194[i].unk1C = 10.0f; - Hu3DModelAttrReset(lbl_1_bss_1828[i], HU3D_ATTR_DISPOFF); - Hu3DModelPosSet(lbl_1_bss_1828[i], 0, 100, 0); - Hu3DModelRotSet(lbl_1_bss_1828[i], 0, 0, 0); + coinEffectData[i].playerNo = playerNo; + coinEffectData[i].pos.x = playerPosTbl[playerNo].x; + coinEffectData[i].pos.y = 610.0f; + coinEffectData[i].pos.z = 0.0f; + coinEffectData[i].rank = resultBattleRank[playerNo]; + coinEffectData[i].rotVel.x = frandmod(20) - 10.0f; + coinEffectData[i].rotVel.y = frandmod(20) - 10.0f; + coinEffectData[i].rotVel.z = 0; + coinEffectData[i].velY = 10.0f; + Hu3DModelAttrReset(coinEffectMdlId[i], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(coinEffectMdlId[i], 0, 100, 0); + Hu3DModelRotSet(coinEffectMdlId[i], 0, 0, 0); } -void fn_1_8998(void) +static void CoinEffectMain(void) { s16 i; - ModelData *model_ptr; + ModelData *modelP; s16 player; while (1) { - for (i = 0; i < 180; i++) { - if (lbl_1_bss_194[i].unk0 == -1) { + for (i = 0; i < COIN_EFFECT_MAX; i++) { + if (coinEffectData[i].playerNo == -1) { continue; } - player = lbl_1_bss_194[i].unk0; - model_ptr = &Hu3DData[lbl_1_bss_1828[i]]; - model_ptr->pos = lbl_1_bss_194[i].unk4; - model_ptr->rot.x += lbl_1_bss_194[i].unk10.x; - model_ptr->rot.y += lbl_1_bss_194[i].unk10.y; - lbl_1_bss_194[i].unk4.y -= lbl_1_bss_194[i].unk1C; - lbl_1_bss_194[i].unk1C += 0.2f; - if (lbl_1_bss_194[i].unk4.y < ((3 - lbl_1_bss_194[i].unk2) * 100) + lbl_1_data_840[GWPlayerCfg[lbl_1_bss_19F0[player]].character]) { + player = coinEffectData[i].playerNo; + modelP = &Hu3DData[coinEffectMdlId[i]]; + modelP->pos = coinEffectData[i].pos; + modelP->rot.x += coinEffectData[i].rotVel.x; + modelP->rot.y += coinEffectData[i].rotVel.y; + coinEffectData[i].pos.y -= coinEffectData[i].velY; + coinEffectData[i].velY += 0.2f; + if (coinEffectData[i].pos.y < ((3 - coinEffectData[i].rank) * 100) + coinEffectYOfs[GWPlayerCfg[resultBattleOrder[player]].character]) { Vec pos; - pos.x = lbl_1_data_7F0[player].x; - pos.y = ((3 - lbl_1_bss_194[i].unk2) * 100) + lbl_1_data_840[GWPlayerCfg[lbl_1_bss_19F0[player]].character]; + pos.x = playerPosTbl[player].x; + pos.y = ((3 - coinEffectData[i].rank) * 100) + coinEffectYOfs[GWPlayerCfg[resultBattleOrder[player]].character]; pos.z = 0.0f; CharModelCoinEffectCreate(1, &pos); - lbl_1_bss_194[i].unk0 = -1; + coinEffectData[i].playerNo = -1; HuAudFXPlay(7); - Hu3DModelAttrSet(lbl_1_bss_1828[i], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(coinEffectMdlId[i], HU3D_ATTR_DISPOFF); } } HuPrcVSleep(); } } -void fn_1_8CB8(struct model_data *model, Mtx matrix) +static void ResultShadowDraw(struct model_data *model, Mtx matrix) { s32 sp8 = 0; GXTexObj tex; Mtx final; - Mtx inv_camera; + Mtx invCamera; Mtx shadow; GXClearVtxDesc(); GXSetVtxDesc(GX_VA_POS, GX_DIRECT); @@ -647,8 +648,8 @@ void fn_1_8CB8(struct model_data *model, Mtx matrix) GXInitTexObj(&tex, Hu3DShadowData.unk_04, Hu3DShadowData.unk_02, Hu3DShadowData.unk_02, GX_TF_I8, GX_CLAMP, GX_CLAMP, GX_FALSE); GXInitTexObjLOD(&tex, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1); GXLoadTexObj(&tex, 0); - MTXInverse(Hu3DCameraMtx, inv_camera); - MTXConcat(inv_camera, matrix, final); + MTXInverse(Hu3DCameraMtx, invCamera); + MTXConcat(invCamera, matrix, final); MTXConcat(Hu3DShadowData.unk_68, Hu3DShadowData.unk_38, shadow); MTXConcat(shadow, final, final); GXLoadTexMtxImm(final, GX_TEXMTX9, GX_MTX3x4); diff --git a/src/REL/resultDll/datalist.c b/src/REL/resultDll/datalist.c index 6b5705a2..1a37f8a0 100644 --- a/src/REL/resultDll/datalist.c +++ b/src/REL/resultDll/datalist.c @@ -1,13 +1,13 @@ #include "REL/resultdll.h" -s16 lbl_1_bss_1A9C[32]; -s16 lbl_1_bss_1A5C[32]; -s16 lbl_1_bss_1A1A[33]; +s16 stageMdlId[32]; +s16 stageMotId[32]; +s16 stageSprId[33]; s16 lbl_1_bss_1A18; -void fn_1_8FF8(DataListModel *model_list) +void StageModelCreate(StageModel *model_list) { - DataListModel *list; + StageModel *list; s16 i; s16 model; s16 clear_i; @@ -15,24 +15,24 @@ void fn_1_8FF8(DataListModel *model_list) void *data; list = model_list; for(clear_i=0; clear_i<32; clear_i++) { - lbl_1_bss_1A9C[clear_i] = lbl_1_bss_1A5C[clear_i] = -1; + stageMdlId[clear_i] = stageMotId[clear_i] = -1; } for(i=0; list->datanum != DATA_NUM_LISTEND; list++, i++) { if(list->type == 0) { data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA); model = Hu3DModelCreate(data); - lbl_1_bss_1A9C[i] = model; + stageMdlId[i] = model; Hu3DModelAttrSet(model, list->attr); Hu3DModelPosSetV(model, &list->pos); Hu3DModelRotSetV(model, &list->rot); Hu3DModelScaleSetV(model, &list->scale); model_ptr = &Hu3DData[model]; if(model_ptr->unk_08 != -1) { - lbl_1_bss_1A5C[i] = model_ptr->unk_08; + stageMotId[i] = model_ptr->unk_08; } } else if(list->type == 1) { data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA); - lbl_1_bss_1A5C[i] = Hu3DJointMotion(lbl_1_bss_1A9C[list->mot_link], data); + stageMotId[i] = Hu3DJointMotion(stageMdlId[list->mot_link], data); } (void)i; @@ -40,33 +40,33 @@ void fn_1_8FF8(DataListModel *model_list) list = model_list; for(i=0; list->datanum != DATA_NUM_LISTEND; list++, i++) { if(list->type == 2) { - model = Hu3DModelLink(lbl_1_bss_1A9C[list->link]); - lbl_1_bss_1A9C[i] = model; + model = Hu3DModelLink(stageMdlId[list->link]); + stageMdlId[i] = model; Hu3DModelAttrSet(model, list->attr); Hu3DModelPosSetV(model, &list->pos); Hu3DModelRotSetV(model, &list->rot); Hu3DModelScaleSetV(model, &list->scale); } if(list->mot_link != -1) { - Hu3DMotionSet(lbl_1_bss_1A9C[i], lbl_1_bss_1A5C[list->mot_link]); + Hu3DMotionSet(stageMdlId[i], stageMotId[list->mot_link]); } (void)i; } } -void fn_1_927C(DataListSprite *sprite_list) +void StageSpriteCreate(StageSprite *sprite_list) { - DataListSprite *list; + StageSprite *list; s16 sprite; s16 clear_i; s16 i; list = sprite_list; for(clear_i=0; clear_i<32; clear_i++) { - lbl_1_bss_1A1A[clear_i] = -1; + stageSprId[clear_i] = -1; } for(i=0; list->datanum; i++, list++) { sprite = espEntry(list->datanum, 100, 0); - lbl_1_bss_1A1A[i] = sprite; + stageSprId[i] = sprite; espPosSet(sprite, list->x, list->y); espColorSet(sprite, list->color.r, list->color.g, list->color.b); espTPLvlSet(sprite, list->color.a/255.0f); @@ -75,12 +75,12 @@ void fn_1_927C(DataListSprite *sprite_list) } } -void fn_1_93B4(void) +void StageSpriteKill(void) { s16 i; for(i=0; i<32; i++) { - if(lbl_1_bss_1A1A[i] != -1) { - espKill(lbl_1_bss_1A1A[i]); + if(stageSprId[i] != -1) { + espKill(stageSprId[i]); } } } \ No newline at end of file diff --git a/src/REL/resultDll/main.c b/src/REL/resultDll/main.c index bda3b255..57433d33 100644 --- a/src/REL/resultDll/main.c +++ b/src/REL/resultDll/main.c @@ -18,7 +18,7 @@ #include "REL/resultdll.h" -DataListModel lbl_1_data_0[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x00), 1, 0, -1, -1, { 148, 132, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, +static StageModel resultModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x00), 1, 0, -1, -1, { 148, 132, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x01), 1, 0, -1, -1, { 148, 217, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x02), 1, 0, -1, -1, { 148, 302, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x03), 1, 0, -1, -1, { 148, 387, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, @@ -32,7 +32,7 @@ DataListModel lbl_1_data_0[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x00), 1, 0, -1 { DATA_MAKE_NUM(DATADIR_RESULT, 0x06), 0, 2, 8, -1, { 410, 387, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } } }; -DataListSprite lbl_1_data_2A4[] = { +static StageSprite resultSprite[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x43), 0, 10, 288, 240, { 255, 255, 255, 255 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x1D), 0, 10, 288, 60, { 255, 255, 255, 255 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x1A), 0, 10, 270, 132, { 255, 255, 255, 255 } }, @@ -46,60 +46,60 @@ DataListSprite lbl_1_data_2A4[] = { { 0, 0, 0, 0, 0, { 0, 0, 0, 0 } }, }; -s16 lbl_1_data_380 = -1; +static s16 rankNewGrpId = -1; omObjData *lbl_1_bss_188; -omObjData *lbl_1_bss_184; -Process *lbl_1_bss_180; -s16 lbl_1_bss_17C; -s32 lbl_1_bss_178; -s32 lbl_1_bss_174; -s16 lbl_1_bss_172; -s16 lbl_1_bss_170; -s16 lbl_1_bss_168[4]; -s16 lbl_1_bss_158[8]; -AnimData *lbl_1_bss_144[5]; -AnimData *lbl_1_bss_E4[8][3]; -AnimData *lbl_1_bss_E0; -s16 lbl_1_bss_CE[9]; -s16 lbl_1_bss_9E[8][3]; -s16 lbl_1_bss_9C; -s16 lbl_1_bss_5C[8][4]; -s16 lbl_1_bss_54[4]; -s16 lbl_1_bss_52; -s16 lbl_1_bss_4A[4]; -s16 lbl_1_bss_42[4]; -s16 lbl_1_bss_3A[4]; -s16 lbl_1_bss_12[4][5]; -s16 lbl_1_bss_A[4]; -s16 lbl_1_bss_8; -s32 lbl_1_bss_4; -s32 lbl_1_bss_0; +static omObjData *outViewObj; +Process *objman; +s16 resultMgNo; +s32 resultReadEndF; +s32 resultFastF; +s16 resultBonusPlayer; +static s16 teamResultGrpId; +static s16 charShadowMdlId[4]; +static s16 statShadowMdlId[8]; +static AnimData *resultRankAnim[5]; +static AnimData *resultCharAnim[8][3]; +static AnimData *resultCrownAnim; +static s16 resultNumGrpId[8]; +static s16 resultNumSprId[8][3]; +static s16 resultCrownGrpId; +static s16 resultCubeMdlId[8][4]; +static s16 resultPlayerCubeMdlId[4]; +static s16 resultRankGrpId; +static s16 resultOrder[4]; +static s16 resultRank[4]; +static s16 resultCoinAddGrpId[4]; +static s16 resultCoinAddSprId[4][5]; +static s16 resultCharCubeMdlId[4]; +static s16 resultTeamOrder; +static s32 resultSkipF; +static s32 resultReorderF; -void fn_1_4D8(void); -void fn_1_888(void); +static void ResultMain(void); +static void ResultIdle(void); -void fn_1_B78(void); -void fn_1_1F4C(void); -void fn_1_2ADC(void); -void fn_1_461C(void); -void fn_1_47FC(void); +static void ResultCreate(void); +static void ResultStatAdd(void); +static void ResultOrderApply(void); +static void SaveExec(void); +static void ResultTeamExec(void); void ObjectSetup(void) { s32 i; - s32 light; + s32 lightId; OSReport("******* RESULT ObjectSetup *********\n"); - lbl_1_bss_180 = omInitObjMan(50, 8192); - lbl_1_bss_17C = GWSystem.mg_next; + objman = omInitObjMan(50, 8192); + resultMgNo = GWSystem.mg_next; - if (mgInfoTbl[lbl_1_bss_17C].ovl == OVL_M430) { + if (mgInfoTbl[resultMgNo].ovl == OVL_M430) { for (i = 0; i < 4; i++) { GWPlayerCfg[i].group = GWPlayerCfg[i].group / 2; } } - HuDataDirClose(mgInfoTbl[lbl_1_bss_17C].data_dir); - if (mgInfoTbl[lbl_1_bss_17C].type == 3 || mgInfoTbl[lbl_1_bss_17C].type == 5 || mgInfoTbl[lbl_1_bss_17C].type == 6 + HuDataDirClose(mgInfoTbl[resultMgNo].data_dir); + if (mgInfoTbl[resultMgNo].type == 3 || mgInfoTbl[resultMgNo].type == 5 || mgInfoTbl[resultMgNo].type == 6 || !_CheckFlag(FLAG_ID_MAKE(1, 0))) { if (_CheckFlag(0x10000)) { HuAR_DVDtoARAM(DATADIR_BOARD); @@ -119,27 +119,27 @@ void ObjectSetup(void) Hu3DCameraCreate(1); Hu3DCameraPerspectiveSet(1, 20.0f, 20.0f, 15000.0f, 1.2f); Hu3DCameraViewportSet(1, 0, 0, 640, 480, 0, 1); - light = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255); - Hu3DGLightInfinitytSet(light); - lbl_1_bss_174 = 0; + lightId = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255); + Hu3DGLightInfinitytSet(lightId); + resultFastF = 0; if (mgInfoTbl[GWSystem.mg_next].type != 4) { - HuPrcChildCreate(fn_1_4D8, 100, 12288, 0, lbl_1_bss_180); + HuPrcChildCreate(ResultMain, 100, 12288, 0, objman); } else { - HuPrcChildCreate(fn_1_6490, 100, 12288, 0, lbl_1_bss_180); + HuPrcChildCreate(ResultBattleMain, 100, 12288, 0, objman); } - lbl_1_bss_184 = omAddObjEx(lbl_1_bss_180, 32730, 0, 0, -1, omOutView); + outViewObj = omAddObjEx(objman, 32730, 0, 0, -1, omOutView); HuWinInit(1); - lbl_1_bss_172 = frandmod(4); + resultBonusPlayer = frandmod(4); } -void fn_1_4D8(void) +static void ResultMain(void) { s16 player; s16 i; - s16 window; - s16 button; - Process *process_curr = HuPrcCurrentGet(); + s16 winId; + s16 btnDown; + Process *proc = HuPrcCurrentGet(); HuAudSeqPlay(57); for (i = player = 0; i < 4; i++) { if (GWPlayerCfg[i].iscom) { @@ -147,43 +147,43 @@ void fn_1_4D8(void) } } if (player == 4) { - lbl_1_bss_4 = 1; + resultSkipF = 1; } else { - lbl_1_bss_4 = 0; + resultSkipF = 0; } - fn_1_B78(); - HuPrcChildCreate(fn_1_888, 100, 8192, 0, lbl_1_bss_180); + ResultCreate(); + HuPrcChildCreate(ResultIdle, 100, 8192, 0, objman); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); while (WipeStatGet()) { HuPrcVSleep(); } HuDataDirClose(DATADIR_RESULT); - lbl_1_bss_178 = 0; - HuPrcChildCreate(fn_1_3FD8, 100, 12288, 0, lbl_1_bss_180); + resultReadEndF = 0; + HuPrcChildCreate(ResultBoardDataRead, 100, 12288, 0, objman); HuPrcSleep(10); - if (!lbl_1_bss_174) { + if (!resultFastF) { HuPrcSleep(20); } - fn_1_1F4C(); - fn_1_40DC(); - fn_1_2ADC(); - window = HuWinCreate(-10000.0f, 400.0f, 320, 40, 0); - HuWinMesSpeedSet(window, 0); - HuWinBGTPLvlSet(window, 0); - HuWinPriSet(window, 5); - HuWinAttrSet(window, 0x800); - HuWinMesSet(window, MAKE_MESSID(0x24, 0x07)); + ResultStatAdd(); + ResultCoinAdd(); + ResultOrderApply(); + winId = HuWinCreate(-10000.0f, 400.0f, 320, 40, 0); + HuWinMesSpeedSet(winId, 0); + HuWinBGTPLvlSet(winId, 0); + HuWinPriSet(winId, 5); + HuWinAttrSet(winId, 0x800); + HuWinMesSet(winId, MAKE_MESSID(0x24, 0x07)); HuPrcSleep(4); i = 0; while (1) { - if (!lbl_1_bss_4 || i <= 120) { - for (player = button = 0; player < 4; player++) { + if (!resultSkipF || i <= 120) { + for (player = btnDown = 0; player < 4; player++) { if (!GWPlayerCfg[player].iscom) { - button |= HuPadBtnDown[GWPlayerCfg[player].pad_idx]; + btnDown |= HuPadBtnDown[GWPlayerCfg[player].pad_idx]; } } - if (button & PAD_BUTTON_A) { + if (btnDown & PAD_BUTTON_A) { HuAudFXPlay(28); break; } @@ -194,11 +194,11 @@ void fn_1_4D8(void) break; } } - HuWinKill(window); + HuWinKill(winId); if (GWTeamGet()) { - fn_1_47FC(); + ResultTeamExec(); } - while (!lbl_1_bss_178) { + while (!resultReadEndF) { HuPrcVSleep(); } HuAudSeqAllFadeOut(1000); @@ -208,7 +208,7 @@ void fn_1_4D8(void) while (WipeStatGet()) { HuPrcVSleep(); } - fn_1_461C(); + SaveExec(); } else { WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); @@ -224,51 +224,51 @@ void fn_1_4D8(void) } } -void fn_1_888(void) +static void ResultIdle(void) { - f32 var_f29; - f32 var_f31; - f32 var_f30; + float rotRightSpeed; + float rotLeft; + float rotRight; - var_f31 = 0.0f; - var_f30 = 0.0f; - var_f29 = 0.0f; - lbl_1_bss_0 = 0; + rotLeft = 0.0f; + rotRight = 0.0f; + rotRightSpeed = 0.0f; + resultReorderF = 0; while (1) { - if (((HuPadBtn[0] | HuPadBtn[1] | HuPadBtn[2] | HuPadBtn[3]) & 0x100) != 0 || lbl_1_bss_4 != 0) { - lbl_1_bss_174 = 1; + if (((HuPadBtn[0] | HuPadBtn[1] | HuPadBtn[2] | HuPadBtn[3]) & PAD_BUTTON_A) != 0 || resultSkipF != 0) { + resultFastF = 1; } else { - lbl_1_bss_174 = 0; + resultFastF = 0; } - Hu3DModelRotSet(lbl_1_bss_1A9C[4], 0.0f, var_f31, 0.0f); - Hu3DModelRotSet(lbl_1_bss_1A9C[5], 0.0f, -var_f31, 0.0f); - Hu3DModelRotSet(lbl_1_bss_1A9C[6], 0.0f, var_f31, 0.0f); - Hu3DModelRotSet(lbl_1_bss_1A9C[7], 0.0f, -var_f31, 0.0f); - var_f31 += 0.2; - if (var_f31 >= 360.0f) { - var_f31 -= 360.0f; + Hu3DModelRotSet(stageMdlId[4], 0.0f, rotLeft, 0.0f); + Hu3DModelRotSet(stageMdlId[5], 0.0f, -rotLeft, 0.0f); + Hu3DModelRotSet(stageMdlId[6], 0.0f, rotLeft, 0.0f); + Hu3DModelRotSet(stageMdlId[7], 0.0f, -rotLeft, 0.0f); + rotLeft += 0.2; + if (rotLeft >= 360.0f) { + rotLeft -= 360.0f; } - if (lbl_1_bss_0 != 0) { - Hu3DModelRotSet(lbl_1_bss_1A9C[8], 0.0f, var_f30, 0.0f); - Hu3DModelRotSet(lbl_1_bss_1A9C[9], 0.0f, -var_f30, 0.0f); - Hu3DModelRotSet(lbl_1_bss_1A9C[10], 0.0f, var_f30, 0.0f); - Hu3DModelRotSet(lbl_1_bss_1A9C[11], 0.0f, -var_f30, 0.0f); - var_f29 += 0.001; - if (var_f29 > 0.1) { - var_f29 = 0.1f; + if (resultReorderF != 0) { + Hu3DModelRotSet(stageMdlId[8], 0.0f, rotRight, 0.0f); + Hu3DModelRotSet(stageMdlId[9], 0.0f, -rotRight, 0.0f); + Hu3DModelRotSet(stageMdlId[10], 0.0f, rotRight, 0.0f); + Hu3DModelRotSet(stageMdlId[11], 0.0f, -rotRight, 0.0f); + rotRightSpeed += 0.001; + if (rotRightSpeed > 0.1) { + rotRightSpeed = 0.1f; } - var_f30 += var_f29; - if (var_f30 >= 360.0f) { - var_f30 -= 360.0f; + rotRight += rotRightSpeed; + if (rotRight >= 360.0f) { + rotRight -= 360.0f; } } HuPrcVSleep(); } } -s32 lbl_1_data_3A8[] = { +static s32 resultBackFile[] = { DATA_MAKE_NUM(DATADIR_RESULT, 0x10), DATA_MAKE_NUM(DATADIR_RESULT, 0x11), DATA_MAKE_NUM(DATADIR_RESULT, 0x12), @@ -277,7 +277,7 @@ s32 lbl_1_data_3A8[] = { DATA_MAKE_NUM(DATADIR_RESULT, 0x15), }; -s32 lbl_1_data_3C0[] = { +static s32 resultLetterFile[] = { DATA_MAKE_NUM(DATADIR_RESULT, 0x1F), DATA_MAKE_NUM(DATADIR_RESULT, 0x1E), DATA_MAKE_NUM(DATADIR_RESULT, 0x1D), @@ -286,7 +286,7 @@ s32 lbl_1_data_3C0[] = { DATA_MAKE_NUM(DATADIR_RESULT, 0x1F), }; -s16 lbl_1_data_3D8[] = { +static s16 resultStatPosTbl[] = { 320, 132, 500, @@ -305,123 +305,123 @@ s16 lbl_1_data_3D8[] = { 387, }; -s16 lbl_1_data_3F8[] = { 74, 132, 74, 217, 74, 302, 74, 387 }; +static s16 resultRankPosTbl[] = { 74, 132, 74, 217, 74, 302, 74, 387 }; -Vec lbl_1_data_408[4] = { { 148, 132, 500 }, { 148, 217, 500 }, { 148, 302, 500 }, { 148, 387, 500 } }; +static Vec resultCharPosTbl[4] = { { 148, 132, 500 }, { 148, 217, 500 }, { 148, 302, 500 }, { 148, 387, 500 } }; -s16 lbl_1_data_438[] = { 164, 148, 164, 233, 164, 318, 164, 403 }; +static s16 resultCoinAddPosTbl[] = { 164, 148, 164, 233, 164, 318, 164, 403 }; -void fn_1_3B50(s16 group, s16 value); -void fn_1_3CAC(s16 group, s16 value); +static void ResultSprNumSet(s16 grpId, s16 value); +static void ResultCoinAddNumSet(s16 grpId, s16 value); -void fn_1_3E08(void); +static void ResultOrderSet(void); -void fn_1_B78(void) +static void ResultCreate(void) { Vec pos; - s16 sp8[5]; + s16 coinNum[5]; s16 i; s16 j; - s16 character; + s16 charNo; AnimData *anim; - s16 sprite; - s16 group; - s16 model; + s16 sprId; + s16 grpId; + s16 mdlId; AnimData *anim2; AnimData *anim3; AnimData *anim4; - fn_1_8FF8(lbl_1_data_0); - lbl_1_data_2A4[0].datanum = lbl_1_data_3A8[mgInfoTbl[lbl_1_bss_17C].type]; - lbl_1_data_2A4[1].datanum = lbl_1_data_3C0[mgInfoTbl[lbl_1_bss_17C].type]; - fn_1_927C(lbl_1_data_2A4); - espDrawNoSet(lbl_1_bss_1A1A[0], 127); + StageModelCreate(resultModel); + resultSprite[0].datanum = resultBackFile[mgInfoTbl[resultMgNo].type]; + resultSprite[1].datanum = resultLetterFile[mgInfoTbl[resultMgNo].type]; + StageSpriteCreate(resultSprite); + espDrawNoSet(stageSprId[0], 127); anim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x1B)); for (i = 0; i < 8; i++) { - lbl_1_bss_CE[i] = HuSprGrpCreate(3); - lbl_1_bss_9E[i][0] = HuSprCreate(anim, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_CE[i], 0, lbl_1_bss_9E[i][0]); - HuSprPosSet(lbl_1_bss_CE[i], 0, -28.0f, 0.0f); - lbl_1_bss_9E[i][1] = HuSprCreate(anim, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_CE[i], 1, lbl_1_bss_9E[i][1]); - HuSprPosSet(lbl_1_bss_CE[i], 1, 0.0f, 0.0f); - lbl_1_bss_9E[i][2] = HuSprCreate(anim, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_CE[i], 2, lbl_1_bss_9E[i][2]); - HuSprPosSet(lbl_1_bss_CE[i], 2, 28.0f, 0.0f); - HuSprGrpPosSet(lbl_1_bss_CE[i], lbl_1_data_3D8[(i * 2)], lbl_1_data_3D8[(i * 2) + 1]); - fn_1_3B50(lbl_1_bss_CE[i], 999); + resultNumGrpId[i] = HuSprGrpCreate(3); + resultNumSprId[i][0] = HuSprCreate(anim, 0, 0); + HuSprGrpMemberSet(resultNumGrpId[i], 0, resultNumSprId[i][0]); + HuSprPosSet(resultNumGrpId[i], 0, -28.0f, 0.0f); + resultNumSprId[i][1] = HuSprCreate(anim, 0, 0); + HuSprGrpMemberSet(resultNumGrpId[i], 1, resultNumSprId[i][1]); + HuSprPosSet(resultNumGrpId[i], 1, 0.0f, 0.0f); + resultNumSprId[i][2] = HuSprCreate(anim, 0, 0); + HuSprGrpMemberSet(resultNumGrpId[i], 2, resultNumSprId[i][2]); + HuSprPosSet(resultNumGrpId[i], 2, 28.0f, 0.0f); + HuSprGrpPosSet(resultNumGrpId[i], resultStatPosTbl[(i * 2)], resultStatPosTbl[(i * 2) + 1]); + ResultSprNumSet(resultNumGrpId[i], 999); } - fn_1_3E08(); - fn_1_423C(sp8); + ResultOrderSet(); + ResultCoinNumGet(coinNum); anim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x3A)); anim3 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x3B)); anim2 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x3C)); anim4 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x3E)); for (i = 0; i < 4; i++) { - lbl_1_bss_3A[i] = HuSprGrpCreate(5); - if (sp8[lbl_1_bss_4A[i]] < 100) { - lbl_1_bss_12[i][0] = HuSprCreate(anim, 10, 0); - HuSprGrpMemberSet(lbl_1_bss_3A[i], 0, lbl_1_bss_12[i][0]); - HuSprPosSet(lbl_1_bss_3A[i], 0, 30.0f, -25.0f); + resultCoinAddGrpId[i] = HuSprGrpCreate(5); + if (coinNum[resultOrder[i]] < 100) { + resultCoinAddSprId[i][0] = HuSprCreate(anim, 10, 0); + HuSprGrpMemberSet(resultCoinAddGrpId[i], 0, resultCoinAddSprId[i][0]); + HuSprPosSet(resultCoinAddGrpId[i], 0, 30.0f, -25.0f); } else { - lbl_1_bss_12[i][0] = HuSprCreate(anim4, 10, 0); - HuSprGrpMemberSet(lbl_1_bss_3A[i], 0, lbl_1_bss_12[i][0]); - HuSprPosSet(lbl_1_bss_3A[i], 0, 40.0f, -21.0f); + resultCoinAddSprId[i][0] = HuSprCreate(anim4, 10, 0); + HuSprGrpMemberSet(resultCoinAddGrpId[i], 0, resultCoinAddSprId[i][0]); + HuSprPosSet(resultCoinAddGrpId[i], 0, 40.0f, -21.0f); } - lbl_1_bss_12[i][1] = HuSprCreate(anim3, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_3A[i], 1, lbl_1_bss_12[i][1]); - HuSprPosSet(lbl_1_bss_3A[i], 1, 12.0f, -25.0f); - lbl_1_bss_12[i][2] = HuSprCreate(anim2, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_3A[i], 2, lbl_1_bss_12[i][2]); - HuSprPosSet(lbl_1_bss_3A[i], 2, 28.0f, -25.0f); - lbl_1_bss_12[i][3] = HuSprCreate(anim2, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_3A[i], 3, lbl_1_bss_12[i][3]); - HuSprPosSet(lbl_1_bss_3A[i], 3, 44.0f, -25.0f); - lbl_1_bss_12[i][4] = HuSprCreate(anim2, 0, 0); - HuSprGrpMemberSet(lbl_1_bss_3A[i], 4, lbl_1_bss_12[i][4]); - HuSprPosSet(lbl_1_bss_3A[i], 4, 60.0f, -25.0f); - HuSprGrpPosSet(lbl_1_bss_3A[i], lbl_1_data_438[(i * 2)], lbl_1_data_438[(i * 2) + 1]); - fn_1_3CAC(lbl_1_bss_3A[i], 9); - HuSprGrpScaleSet(lbl_1_bss_3A[i], 0.0f, 0.0f); + resultCoinAddSprId[i][1] = HuSprCreate(anim3, 0, 0); + HuSprGrpMemberSet(resultCoinAddGrpId[i], 1, resultCoinAddSprId[i][1]); + HuSprPosSet(resultCoinAddGrpId[i], 1, 12.0f, -25.0f); + resultCoinAddSprId[i][2] = HuSprCreate(anim2, 0, 0); + HuSprGrpMemberSet(resultCoinAddGrpId[i], 2, resultCoinAddSprId[i][2]); + HuSprPosSet(resultCoinAddGrpId[i], 2, 28.0f, -25.0f); + resultCoinAddSprId[i][3] = HuSprCreate(anim2, 0, 0); + HuSprGrpMemberSet(resultCoinAddGrpId[i], 3, resultCoinAddSprId[i][3]); + HuSprPosSet(resultCoinAddGrpId[i], 3, 44.0f, -25.0f); + resultCoinAddSprId[i][4] = HuSprCreate(anim2, 0, 0); + HuSprGrpMemberSet(resultCoinAddGrpId[i], 4, resultCoinAddSprId[i][4]); + HuSprPosSet(resultCoinAddGrpId[i], 4, 60.0f, -25.0f); + HuSprGrpPosSet(resultCoinAddGrpId[i], resultCoinAddPosTbl[(i * 2)], resultCoinAddPosTbl[(i * 2) + 1]); + ResultCoinAddNumSet(resultCoinAddGrpId[i], 9); + HuSprGrpScaleSet(resultCoinAddGrpId[i], 0.0f, 0.0f); } for (i = 0; i < 4; i++) { - character = GWPlayerCfg[i].character; - lbl_1_bss_E4[character][0] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x22) + (character * 3)); - lbl_1_bss_E4[character][1] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x23) + (character * 3)); - lbl_1_bss_E4[character][2] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x24) + (character * 3)); + charNo = GWPlayerCfg[i].character; + resultCharAnim[charNo][0] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x22) + (charNo * 3)); + resultCharAnim[charNo][1] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x23) + (charNo * 3)); + resultCharAnim[charNo][2] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x24) + (charNo * 3)); for (j = 0; j < 4; j++) { - lbl_1_bss_5C[character][j] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x00) + j); - Hu3DModelScaleSet(lbl_1_bss_5C[character][j], 1.1f, 1.1f, 1.1f); - Hu3DAnimCreate(lbl_1_bss_E4[character][0], lbl_1_bss_5C[character][j], "ys22"); - Hu3DModelAttrSet(lbl_1_bss_5C[character][j], HU3D_ATTR_DISPOFF); + resultCubeMdlId[charNo][j] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x00) + j); + Hu3DModelScaleSet(resultCubeMdlId[charNo][j], 1.1f, 1.1f, 1.1f); + Hu3DAnimCreate(resultCharAnim[charNo][0], resultCubeMdlId[charNo][j], "ys22"); + Hu3DModelAttrSet(resultCubeMdlId[charNo][j], HU3D_ATTR_DISPOFF); } } for (i = 0; i < 4; i++) { - lbl_1_bss_144[i] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x16) + i); + resultRankAnim[i] = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x16) + i); } - lbl_1_bss_52 = HuSprGrpCreate(4); + resultRankGrpId = HuSprGrpCreate(4); for (i = 0; i < 4; i++) { - sprite = HuSprCreate(lbl_1_bss_144[lbl_1_bss_42[i]], i, 0); - HuSprGrpMemberSet(lbl_1_bss_52, i, sprite); - HuSprPosSet(lbl_1_bss_52, i, lbl_1_data_3F8[(i * 2)], lbl_1_data_3F8[(i * 2) + 1]); - fn_1_3B50(lbl_1_bss_CE[(i * 2)], GWStarsGet(lbl_1_bss_4A[i])); - fn_1_3B50(lbl_1_bss_CE[(i * 2) + 1], BoardPlayerCoinsGet(lbl_1_bss_4A[i])); - character = GWPlayerCfg[lbl_1_bss_4A[i]].character; - Hu3D2Dto3D(&lbl_1_data_408[i], 1, &pos); - Hu3DModelPosSetV(lbl_1_bss_5C[character][lbl_1_bss_42[i]], &pos); - Hu3DModelAttrReset(lbl_1_bss_5C[character][lbl_1_bss_42[i]], HU3D_ATTR_DISPOFF); + sprId = HuSprCreate(resultRankAnim[resultRank[i]], i, 0); + HuSprGrpMemberSet(resultRankGrpId, i, sprId); + HuSprPosSet(resultRankGrpId, i, resultRankPosTbl[(i * 2)], resultRankPosTbl[(i * 2) + 1]); + ResultSprNumSet(resultNumGrpId[(i * 2)], GWStarsGet(resultOrder[i])); + ResultSprNumSet(resultNumGrpId[(i * 2) + 1], BoardPlayerCoinsGet(resultOrder[i])); + charNo = GWPlayerCfg[resultOrder[i]].character; + Hu3D2Dto3D(&resultCharPosTbl[i], 1, &pos); + Hu3DModelPosSetV(resultCubeMdlId[charNo][resultRank[i]], &pos); + Hu3DModelAttrReset(resultCubeMdlId[charNo][resultRank[i]], HU3D_ATTR_DISPOFF); } for (i = 4; i <= 11; i++) { - Hu3D2Dto3D(&lbl_1_data_0[i].pos, 1, &pos); - Hu3DModelPosSetV(lbl_1_bss_1A9C[i], &pos); + Hu3D2Dto3D(&resultModel[i].pos, 1, &pos); + Hu3DModelPosSetV(stageMdlId[i], &pos); Hu3D3Dto2D(&pos, 1, &pos); } - model = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x04)); + mdlId = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x04)); for (i = 0; i < 4; i++) { - j = Hu3DModelLink(model); - lbl_1_bss_168[i] = j; - pos = lbl_1_data_408[i]; + j = Hu3DModelLink(mdlId); + charShadowMdlId[i] = j; + pos = resultCharPosTbl[i]; pos.x += 5.0f; pos.y += 3.0f; pos.z += 200.0f; @@ -429,12 +429,12 @@ void fn_1_B78(void) Hu3DModelPosSetV(j, &pos); Hu3DModelScaleSet(j, 1.5f, 1.5f, 1.5f); } - Hu3DModelAttrSet(model, HU3D_ATTR_DISPOFF); - model = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x07)); + Hu3DModelAttrSet(mdlId, HU3D_ATTR_DISPOFF); + mdlId = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x07)); for (i = 0; i < 8; i++) { - j = Hu3DModelLink(model); - lbl_1_bss_158[i] = j; - pos = lbl_1_data_0[i + 4].pos; + j = Hu3DModelLink(mdlId); + statShadowMdlId[i] = j; + pos = resultModel[i + 4].pos; pos.x += 5.0f; pos.y += 3.0f; pos.z += 200.0f; @@ -442,461 +442,460 @@ void fn_1_B78(void) Hu3DModelPosSetV(j, &pos); Hu3DModelScaleSet(j, 1.5f, 1.5f, 1.5f); } - Hu3DModelAttrSet(model, HU3D_ATTR_DISPOFF); - lbl_1_bss_E0 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x1C)); - lbl_1_bss_9C = HuSprGrpCreate(4); + Hu3DModelAttrSet(mdlId, HU3D_ATTR_DISPOFF); + resultCrownAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x1C)); + resultCrownGrpId = HuSprGrpCreate(4); for (i = 0; i < 4; i++) { - sprite = HuSprCreate(lbl_1_bss_E0, i, 0); - HuSprGrpMemberSet(lbl_1_bss_9C, i, sprite); - HuSprScaleSet(lbl_1_bss_9C, i, 0.0f, 0.0f); - HuSprPosSet(lbl_1_bss_9C, i, lbl_1_data_408[i].x - 4.0f, lbl_1_data_408[i].y - 35.0f); - HuSprAttrSet(lbl_1_bss_9C, i, 4); + sprId = HuSprCreate(resultCrownAnim, i, 0); + HuSprGrpMemberSet(resultCrownGrpId, i, sprId); + HuSprScaleSet(resultCrownGrpId, i, 0.0f, 0.0f); + HuSprPosSet(resultCrownGrpId, i, resultCharPosTbl[i].x - 4.0f, resultCharPosTbl[i].y - 35.0f); + HuSprAttrSet(resultCrownGrpId, i, 4); } - group = HuSprGrpCreate(4); - lbl_1_bss_170 = group; + grpId = HuSprGrpCreate(4); + teamResultGrpId = grpId; anim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x3F)); - sprite = HuSprCreate(anim, 100, 0); - HuSprGrpMemberSet(group, 0, sprite); - HuSprAttrSet(group, 0, 4); - HuSprDrawNoSet(group, 0, 127); + sprId = HuSprCreate(anim, 100, 0); + HuSprGrpMemberSet(grpId, 0, sprId); + HuSprAttrSet(grpId, 0, 4); + HuSprDrawNoSet(grpId, 0, 127); anim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x40)); - sprite = HuSprCreate(anim, 90, 0); - HuSprGrpMemberSet(group, 1, sprite); - HuSprAttrSet(group, 1, 4); + sprId = HuSprCreate(anim, 90, 0); + HuSprGrpMemberSet(grpId, 1, sprId); + HuSprAttrSet(grpId, 1, 4); anim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x41)); - sprite = HuSprCreate(anim, 80, 0); - HuSprGrpMemberSet(group, 2, sprite); - HuSprAttrSet(group, 2, 4); - HuSprDrawNoSet(group, 2, 127); + sprId = HuSprCreate(anim, 80, 0); + HuSprGrpMemberSet(grpId, 2, sprId); + HuSprAttrSet(grpId, 2, 4); + HuSprDrawNoSet(grpId, 2, 127); anim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x42)); - sprite = HuSprCreate(anim, 80, 0); - HuSprGrpMemberSet(group, 3, sprite); - HuSprAttrSet(group, 3, 4); - HuSprDrawNoSet(group, 3, 127); - (void)sprite; + sprId = HuSprCreate(anim, 80, 0); + HuSprGrpMemberSet(grpId, 3, sprId); + HuSprAttrSet(grpId, 3, 4); + HuSprDrawNoSet(grpId, 3, 127); + (void)sprId; } -void fn_1_1F4C(void) +static void ResultStatAdd(void) { - float temp_f31; - float temp_f30; + float scale; + float addTime; s16 i; - s16 temp_r30; - s16 temp_r29; - s16 temp_r28; - s32 status; - s32 temp_r26; - s32 sp24[4]; - float sp14[4]; - s16 sp8[5]; + s16 time; + s16 maxTime; + s16 crownTime; + s32 seNo; + s32 sePlayF; + s32 doneF[4]; + float coinRot[4]; + s16 coinNum[5]; - fn_1_423C(sp8); + ResultCoinNumGet(coinNum); for (i = 0; i < 4; i++) { - fn_1_3CAC(lbl_1_bss_3A[i], sp8[lbl_1_bss_4A[i]]); - sp24[i] = 0; + ResultCoinAddNumSet(resultCoinAddGrpId[i], coinNum[resultOrder[i]]); + doneF[i] = 0; } - temp_r29 = (lbl_1_bss_174) ? 3 : 10; - for (temp_r30 = 0; temp_r30 <= temp_r29; temp_r30++) { - temp_f31 = sind((90.0 / temp_r29) * temp_r30); + maxTime = (resultFastF) ? 3 : 10; + for (time = 0; time <= maxTime; time++) { + scale = sind((90.0 / maxTime) * time); for (i = 0; i < 4; i++) { - HuSprGrpScaleSet(lbl_1_bss_3A[i], temp_f31, temp_f31); + HuSprGrpScaleSet(resultCoinAddGrpId[i], scale, scale); } HuPrcVSleep(); } for (i = 0; i < 4; i++) { - HuSprGrpScaleSet(lbl_1_bss_3A[i], 1.0f, 1.0f); + HuSprGrpScaleSet(resultCoinAddGrpId[i], 1.0f, 1.0f); } - for (temp_r28 = 0; temp_r28 <= 14;) { + for (crownTime = 0; crownTime <= 14;) { for (i = 0; i < 4; i++) { - if (GWPlayerCoinWinGet(lbl_1_bss_4A[i]) >= 10) { - HuSprAttrReset(lbl_1_bss_9C, i, 4); + if (GWPlayerCoinWinGet(resultOrder[i]) >= 10) { + HuSprAttrReset(resultCrownGrpId, i, 4); } - HuSprScaleSet(lbl_1_bss_9C, i, sind((120.0f / 14.0f) * temp_r28) * (0.8 * (1.0 / sin((M_PI * 2) / 3))), - 0.8 * (sind((120.0f / 14.0f) * temp_r28) * (1.0 / sin((M_PI * 2) / 3)))); + HuSprScaleSet(resultCrownGrpId, i, sind((120.0f / 14.0f) * crownTime) * (0.8 * (1.0 / sin((M_PI * 2) / 3))), + 0.8 * (sind((120.0f / 14.0f) * crownTime) * (1.0 / sin((M_PI * 2) / 3)))); } - temp_r28 += (lbl_1_bss_174) ? 2 : 1; + crownTime += (resultFastF) ? 2 : 1; HuPrcVSleep(); } - if (!lbl_1_bss_174) { + if (!resultFastF) { HuPrcSleep(15); } for (i = 0; i < 4; i++) { - sp14[i] = 0.0f; + coinRot[i] = 0.0f; } - for (i = temp_r30 = 0; i < 4; i++) { - temp_r30 += sp8[i]; + for (i = time = 0; i < 4; i++) { + time += coinNum[i]; } - status = -1; - if (temp_r30) { - status = HuAudFXPlay(23); + seNo = -1; + if (time) { + seNo = HuAudFXPlay(23); } - temp_r30 = 0; - temp_f30 = temp_r30; - temp_r30 = 0; + time = 0; + addTime = time; + time = 0; while (1) { - temp_r26 = 0; - temp_f30 += (lbl_1_bss_174) ? 1.0f : 0.2f; - temp_r30 = temp_f30; - for (i = temp_r29 = 0; i < 4; i++) { - if (sp8[lbl_1_bss_4A[i]] - temp_r30 <= 0) { - if (!sp24[lbl_1_bss_4A[i]] && sp8[lbl_1_bss_4A[i]] != 0) { - sp24[lbl_1_bss_4A[i]] = 1; - if (!temp_r26) { + sePlayF = FALSE; + addTime += (resultFastF) ? 1.0f : 0.2f; + time = addTime; + for (i = maxTime = 0; i < 4; i++) { + if (coinNum[resultOrder[i]] - time <= 0) { + if (!doneF[resultOrder[i]] && coinNum[resultOrder[i]] != 0) { + doneF[resultOrder[i]] = 1; + if (!sePlayF) { HuAudFXPlay(9); - temp_r26 = 1; + sePlayF = TRUE; } } - temp_r29++; - fn_1_3CAC(lbl_1_bss_3A[i], 0); - fn_1_3B50(lbl_1_bss_CE[(i * 2) + 1], sp8[lbl_1_bss_4A[i]] + BoardPlayerCoinsGet(lbl_1_bss_4A[i])); - if (!sp14[i]) { + maxTime++; + ResultCoinAddNumSet(resultCoinAddGrpId[i], 0); + ResultSprNumSet(resultNumGrpId[(i * 2) + 1], coinNum[resultOrder[i]] + BoardPlayerCoinsGet(resultOrder[i])); + if (!coinRot[i]) { continue; } - sp14[i] += 20.0f; - if (sp14[i] >= 360.0f) { - sp14[i] -= 360.0f; + coinRot[i] += 20.0f; + if (coinRot[i] >= 360.0f) { + coinRot[i] -= 360.0f; } - Hu3DModelRotSet(lbl_1_bss_1A9C[i + 8], 0.0f, sp14[i], 0.0f); + Hu3DModelRotSet(stageMdlId[i + 8], 0.0f, coinRot[i], 0.0f); } else { - fn_1_3CAC(lbl_1_bss_3A[i], sp8[lbl_1_bss_4A[i]] - temp_r30); - fn_1_3B50(lbl_1_bss_CE[(i * 2) + 1], (s32)temp_r30 + BoardPlayerCoinsGet(lbl_1_bss_4A[i])); - sp14[i] += 20.0f; - if (sp14[i] >= 360.0f) { - sp14[i] -= 360.0f; + ResultCoinAddNumSet(resultCoinAddGrpId[i], coinNum[resultOrder[i]] - time); + ResultSprNumSet(resultNumGrpId[(i * 2) + 1], (s32)time + BoardPlayerCoinsGet(resultOrder[i])); + coinRot[i] += 20.0f; + if (coinRot[i] >= 360.0f) { + coinRot[i] -= 360.0f; } - Hu3DModelRotSet(lbl_1_bss_1A9C[i + 8], 0.0f, sp14[i], 0.0f); + Hu3DModelRotSet(stageMdlId[i + 8], 0.0f, coinRot[i], 0.0f); } } - if (temp_r29 == 4) { + if (maxTime == 4) { break; } HuPrcVSleep(); } - if (status != -1) { - HuAudFXStop(status); + if (seNo != -1) { + HuAudFXStop(seNo); } - temp_r29 = 0; + maxTime = 0; while (1) { - for (i = temp_r30 = 0; i < 4; i++) { - if (sp14[i]) { - sp14[i] += 20.0f; - if (sp14[i] >= 360.0f) { - sp14[i] -= 360.0f; + for (i = time = 0; i < 4; i++) { + if (coinRot[i]) { + coinRot[i] += 20.0f; + if (coinRot[i] >= 360.0f) { + coinRot[i] -= 360.0f; } - Hu3DModelRotSet(lbl_1_bss_1A9C[i + 8], 0.0f, sp14[i], 0.0f); + Hu3DModelRotSet(stageMdlId[i + 8], 0.0f, coinRot[i], 0.0f); } else { - temp_r30++; + time++; } } - if (temp_r30 >= 4) { + if (time >= 4) { break; } HuPrcVSleep(); - temp_r29++; + maxTime++; } - if (temp_r29 < 30) { - HuPrcSleep(30 - temp_r29); + if (maxTime < 30) { + HuPrcSleep(30 - maxTime); } - temp_r29 = (lbl_1_bss_174) ? 3 : 10; - for (temp_r30 = 0; temp_r30 <= temp_r29; temp_r30++) { - temp_f31 = cosd((90.0 / temp_r29) * temp_r30); + maxTime = (resultFastF) ? 3 : 10; + for (time = 0; time <= maxTime; time++) { + scale = cosd((90.0 / maxTime) * time); for (i = 0; i < 4; i++) { - HuSprGrpScaleSet(lbl_1_bss_3A[i], temp_f31, temp_f31); + HuSprGrpScaleSet(resultCoinAddGrpId[i], scale, scale); } HuPrcVSleep(); } for (i = 0; i < 4; i++) { - HuSprGrpScaleSet(lbl_1_bss_3A[i], 0.0f, 0.0f); + HuSprGrpScaleSet(resultCoinAddGrpId[i], 0.0f, 0.0f); } } - -void fn_1_2ADC(void) +static void ResultOrderApply(void) { - float temp_f31; + float weight; s16 i; - s16 temp_r30; - s16 temp_r29; - s16 temp_r28; - s16 temp_r27; - s16 temp_r26; - s16 temp_r25; - s16 temp_r24; - float sp54[4]; - Vec sp48; - s32 sp38[4] = { -1, -1, -1, -1 }; - s16 sp30[4]; - s16 sp28[4]; - s16 sp20[4]; - s16 sp18[4]; - s16 sp10[4]; - s16 sp8[4]; + s16 charNo; + s16 num; + s16 scaleTime; + s16 rankTime; + s16 doneNum; + s16 sePlayF; + s16 sprId; + float cubeRot[4]; + Vec cubePos; + s32 voiceSeNo[4] = { -1, -1, -1, -1 }; + s16 order[4]; + s16 statOrder[4]; + s16 statRank[4]; + s16 rank[4]; + s16 coin[4]; + s16 star[4]; for (i = 0; i < 4; i++) { - sp30[i] = sp28[i] = lbl_1_bss_4A[i]; - sp18[i] = sp20[i] = lbl_1_bss_42[i]; - sp10[i] = BoardPlayerCoinsGet(lbl_1_bss_4A[i]); - sp8[i] = GWStarsGet(lbl_1_bss_4A[i]); + order[i] = statOrder[i] = resultOrder[i]; + rank[i] = statRank[i] = resultRank[i]; + coin[i] = BoardPlayerCoinsGet(resultOrder[i]); + star[i] = GWStarsGet(resultOrder[i]); } - fn_1_3E08(); + ResultOrderSet(); for (i = 0; i < 4; i++) { - if (sp30[i] != lbl_1_bss_4A[i] || sp18[i] != lbl_1_bss_42[i]) { + if (order[i] != resultOrder[i] || rank[i] != resultRank[i]) { break; } } if (i == 4) { - lbl_1_bss_0 = 1; + resultReorderF = 1; return; } - lbl_1_data_380 = HuSprGrpCreate(4); + rankNewGrpId = HuSprGrpCreate(4); for (i = 0; i < 4; i++) { - temp_r24 = HuSprCreate(lbl_1_bss_144[lbl_1_bss_42[i]], i, 0); - HuSprGrpMemberSet(lbl_1_data_380, i, temp_r24); - HuSprPosSet(lbl_1_data_380, i, lbl_1_data_3F8[(i * 2)], lbl_1_data_3F8[(i * 2) + 1]); - HuSprAttrSet(lbl_1_data_380, i, 4); - temp_r30 = GWPlayerCfg[lbl_1_bss_4A[i]].character; - lbl_1_bss_54[i] = lbl_1_bss_A[i] = Hu3DModelLink(lbl_1_bss_5C[temp_r30][lbl_1_bss_42[i]]); - Hu3D2Dto3D(&lbl_1_data_408[i], 1, &sp48); - Hu3DModelPosSetV(lbl_1_bss_A[i], &sp48); - if (sp30[i] == lbl_1_bss_4A[i] && sp18[i] == lbl_1_bss_42[i]) { - Hu3DModelAttrSet(lbl_1_bss_5C[temp_r30][sp18[i]], HU3D_ATTR_DISPOFF); - Hu3DModelAttrReset(lbl_1_bss_A[i], HU3D_ATTR_DISPOFF); - Hu3DModelScaleSet(lbl_1_bss_A[i], 1.1f, 1.1f, 1.1f); + sprId = HuSprCreate(resultRankAnim[resultRank[i]], i, 0); + HuSprGrpMemberSet(rankNewGrpId, i, sprId); + HuSprPosSet(rankNewGrpId, i, resultRankPosTbl[(i * 2)], resultRankPosTbl[(i * 2) + 1]); + HuSprAttrSet(rankNewGrpId, i, 4); + charNo = GWPlayerCfg[resultOrder[i]].character; + resultPlayerCubeMdlId[i] = resultCharCubeMdlId[i] = Hu3DModelLink(resultCubeMdlId[charNo][resultRank[i]]); + Hu3D2Dto3D(&resultCharPosTbl[i], 1, &cubePos); + Hu3DModelPosSetV(resultCharCubeMdlId[i], &cubePos); + if (order[i] == resultOrder[i] && rank[i] == resultRank[i]) { + Hu3DModelAttrSet(resultCubeMdlId[charNo][rank[i]], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(resultCharCubeMdlId[i], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(resultCharCubeMdlId[i], 1.1f, 1.1f, 1.1f); } else { - Hu3DModelAttrSet(lbl_1_bss_A[i], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(resultCharCubeMdlId[i], HU3D_ATTR_DISPOFF); } } for (i = 0; i < 4; i++) { - sp54[i] = 0; + cubeRot[i] = 0; } - temp_r25 = 0; - temp_r28 = 0; + sePlayF = 0; + scaleTime = 0; while (1) { - for (temp_r26 = i = 0; i < 4; i++) { - if (sp30[i] == lbl_1_bss_4A[i] && sp18[i] == lbl_1_bss_42[i]) { - temp_r26++; - fn_1_3B50(lbl_1_bss_CE[(i * 2)], GWStarsGet(lbl_1_bss_4A[i])); - fn_1_3B50(lbl_1_bss_CE[(i * 2) + 1], BoardPlayerCoinsGet(lbl_1_bss_4A[i])); + for (doneNum = i = 0; i < 4; i++) { + if (order[i] == resultOrder[i] && rank[i] == resultRank[i]) { + doneNum++; + ResultSprNumSet(resultNumGrpId[(i * 2)], GWStarsGet(resultOrder[i])); + ResultSprNumSet(resultNumGrpId[(i * 2) + 1], BoardPlayerCoinsGet(resultOrder[i])); } else { - if (temp_r28 > (i * 20)) { - temp_r27 = temp_r28 - (i * 20); - if (temp_r27 <= 20) { - if (temp_r27 <= 10) { - HuSprScaleSet(lbl_1_bss_52, i, 1.0f, cosd(9.0f * temp_r27)); + if (scaleTime > (i * 20)) { + rankTime = scaleTime - (i * 20); + if (rankTime <= 20) { + if (rankTime <= 10) { + HuSprScaleSet(resultRankGrpId, i, 1.0f, cosd(9.0f * rankTime)); } else { - HuSprAttrSet(lbl_1_bss_52, i, 4); - HuSprAttrReset(lbl_1_data_380, i, 4); - HuSprScaleSet(lbl_1_data_380, i, 1.0f, sind(9.0f * (temp_r27 - 10))); + HuSprAttrSet(resultRankGrpId, i, 4); + HuSprAttrReset(rankNewGrpId, i, 4); + HuSprScaleSet(rankNewGrpId, i, 1.0f, sind(9.0f * (rankTime - 10))); } - temp_f31 = temp_r27 / 20.0f; - temp_r29 = GWStarsGet(sp28[i]) + (temp_f31 * (GWStarsGet(lbl_1_bss_4A[i]) - GWStarsGet(sp28[i]))); - fn_1_3B50(lbl_1_bss_CE[(i * 2)], temp_r29); - temp_r29 = BoardPlayerCoinsGet(sp28[i]) + (temp_f31 * (BoardPlayerCoinsGet(lbl_1_bss_4A[i]) - BoardPlayerCoinsGet(sp28[i]))); - fn_1_3B50(lbl_1_bss_CE[(i * 2) + 1], temp_r29); + weight = rankTime / 20.0f; + num = GWStarsGet(statOrder[i]) + (weight * (GWStarsGet(resultOrder[i]) - GWStarsGet(statOrder[i]))); + ResultSprNumSet(resultNumGrpId[(i * 2)], num); + num = BoardPlayerCoinsGet(statOrder[i]) + (weight * (BoardPlayerCoinsGet(resultOrder[i]) - BoardPlayerCoinsGet(statOrder[i]))); + ResultSprNumSet(resultNumGrpId[(i * 2) + 1], num); } else { - temp_r30 = GWPlayerCfg[sp28[i]].character; - Hu3DModelAttrSet(lbl_1_bss_5C[temp_r30][sp18[i]], HU3D_ATTR_DISPOFF); - temp_r30 = GWPlayerCfg[lbl_1_bss_4A[i]].character; - Hu3DModelAttrReset(lbl_1_bss_A[i], HU3D_ATTR_DISPOFF); - Hu3DModelScaleSet(lbl_1_bss_A[i], 1.1f, 1.1f, 1.1f); - fn_1_3B50(lbl_1_bss_CE[(i * 2)], GWStarsGet(lbl_1_bss_4A[i])); - fn_1_3B50(lbl_1_bss_CE[(i * 2) + 1], BoardPlayerCoinsGet(lbl_1_bss_4A[i])); - for (temp_r29 = 0; temp_r29 < 4; temp_r29++) { - if (sp28[temp_r29] == lbl_1_bss_4A[i]) { + charNo = GWPlayerCfg[statOrder[i]].character; + Hu3DModelAttrSet(resultCubeMdlId[charNo][rank[i]], HU3D_ATTR_DISPOFF); + charNo = GWPlayerCfg[resultOrder[i]].character; + Hu3DModelAttrReset(resultCharCubeMdlId[i], HU3D_ATTR_DISPOFF); + Hu3DModelScaleSet(resultCharCubeMdlId[i], 1.1f, 1.1f, 1.1f); + ResultSprNumSet(resultNumGrpId[(i * 2)], GWStarsGet(resultOrder[i])); + ResultSprNumSet(resultNumGrpId[(i * 2) + 1], BoardPlayerCoinsGet(resultOrder[i])); + for (num = 0; num < 4; num++) { + if (statOrder[num] == resultOrder[i]) { break; } } - if (lbl_1_bss_42[i] != sp20[temp_r29]) { - if (lbl_1_bss_42[i] < sp20[temp_r29]) { - Hu3DAnimCreate(lbl_1_bss_E4[temp_r30][1], lbl_1_bss_5C[temp_r30][lbl_1_bss_42[i]], "ys22"); + if (resultRank[i] != statRank[num]) { + if (resultRank[i] < statRank[num]) { + Hu3DAnimCreate(resultCharAnim[charNo][1], resultCubeMdlId[charNo][resultRank[i]], "ys22"); } else { - Hu3DAnimCreate(lbl_1_bss_E4[temp_r30][2], lbl_1_bss_5C[temp_r30][lbl_1_bss_42[i]], "ys22"); + Hu3DAnimCreate(resultCharAnim[charNo][2], resultCubeMdlId[charNo][resultRank[i]], "ys22"); } - if (lbl_1_bss_42[i] == 0) { - sp38[lbl_1_bss_4A[i]] = HuAudPlayerVoicePlay(lbl_1_bss_4A[i], 293); + if (resultRank[i] == 0) { + voiceSeNo[resultOrder[i]] = HuAudPlayerVoicePlay(resultOrder[i], 293); } - if (!temp_r25) { - temp_r25 = 1; + if (!sePlayF) { + sePlayF = 1; HuAudFXPlay(27); } } - sp30[i] = lbl_1_bss_4A[i]; - sp18[i] = lbl_1_bss_42[i]; + order[i] = resultOrder[i]; + rank[i] = resultRank[i]; } } - sp54[i] += 20.0f; - if (sp54[i] >= 360.0f) { - sp54[i] -= 360.0f; + cubeRot[i] += 20.0f; + if (cubeRot[i] >= 360.0f) { + cubeRot[i] -= 360.0f; } - temp_r30 = GWPlayerCfg[sp28[i]].character; - Hu3DModelRotSet(lbl_1_bss_5C[temp_r30][sp18[i]], sp54[i] / (4 - i), sp54[i], 0.0f); + charNo = GWPlayerCfg[statOrder[i]].character; + Hu3DModelRotSet(resultCubeMdlId[charNo][rank[i]], cubeRot[i] / (4 - i), cubeRot[i], 0.0f); } } - if (temp_r28 <= 10) { + if (scaleTime <= 10) { for (i = 0; i < 4; i++) { - HuSprScaleSet(lbl_1_bss_9C, i, cosd(9.0f * temp_r28), cosd(9.0f * temp_r28)); + HuSprScaleSet(resultCrownGrpId, i, cosd(9.0f * scaleTime), cosd(9.0f * scaleTime)); } } else { for (i = 0; i < 4; i++) { - HuSprScaleSet(lbl_1_bss_9C, i, 0.0f, 0.0f); + HuSprScaleSet(resultCrownGrpId, i, 0.0f, 0.0f); } } - if (temp_r26 >= 4) { + if (doneNum >= 4) { break; } - if (lbl_1_bss_174) { - temp_r28 += 2; + if (resultFastF) { + scaleTime += 2; } HuPrcVSleep(); - temp_r28++; + scaleTime++; } for (i = 0; i < 4; i++) { - HuSprScaleSet(lbl_1_bss_9C, i, 0.0f, 0.0f); + HuSprScaleSet(resultCrownGrpId, i, 0.0f, 0.0f); } - lbl_1_bss_0 = 1; + resultReorderF = 1; } -void fn_1_3B50(s16 group, s16 value) +static void ResultSprNumSet(s16 grpId, s16 value) { - s16 digit; - s16 digit_value; + s16 no; + s16 bank; if (value > 999) { value = 999; } - digit = 0; - digit_value = value / 100; - if (digit_value != 0) { - HuSprBankSet(group, digit, digit_value); - HuSprAttrReset(group, digit, 4); - digit++; + no = 0; + bank = value / 100; + if (bank != 0) { + HuSprBankSet(grpId, no, bank); + HuSprAttrReset(grpId, no, 4); + no++; } - value -= digit_value * 100; - digit_value = value / 10; - if (digit_value != 0 || digit == 1) { - HuSprBankSet(group, digit, digit_value); - HuSprAttrReset(group, digit, 4); - digit++; + value -= bank * 100; + bank = value / 10; + if (bank != 0 || no == 1) { + HuSprBankSet(grpId, no, bank); + HuSprAttrReset(grpId, no, 4); + no++; } - value -= digit_value * 10; - HuSprBankSet(group, digit, value); - HuSprAttrReset(group, digit, 4); - digit++; - for (digit_value = digit; digit_value < 3; digit_value++) { - HuSprAttrSet(group, digit_value, 4); + value -= bank * 10; + HuSprBankSet(grpId, no, value); + HuSprAttrReset(grpId, no, 4); + no++; + for (bank = no; bank < 3; bank++) { + HuSprAttrSet(grpId, bank, 4); } } -void fn_1_3CAC(s16 group, s16 value) +static void ResultCoinAddNumSet(s16 grpId, s16 value) { - s16 digit; - s16 digit_value; + s16 no; + s16 bank; if (value > 999) { value = 999; } - digit = 2; - digit_value = value / 100; - if (digit_value != 0) { - HuSprBankSet(group, digit, digit_value); - HuSprAttrReset(group, digit, 4); - digit++; + no = 2; + bank = value / 100; + if (bank != 0) { + HuSprBankSet(grpId, no, bank); + HuSprAttrReset(grpId, no, 4); + no++; } - value -= digit_value * 100; - digit_value = value / 10; - if (digit_value != 0 || digit == 3) { - HuSprBankSet(group, digit, digit_value); - HuSprAttrReset(group, digit, 4); - digit++; + value -= bank * 100; + bank = value / 10; + if (bank != 0 || no == 3) { + HuSprBankSet(grpId, no, bank); + HuSprAttrReset(grpId, no, 4); + no++; } - value -= digit_value * 10; - HuSprBankSet(group, digit, value); - HuSprAttrReset(group, digit, 4); - digit++; - for (digit_value = digit; digit_value < 5; digit_value++) { - HuSprAttrSet(group, digit_value, 4); + value -= bank * 10; + HuSprBankSet(grpId, no, value); + HuSprAttrReset(grpId, no, 4); + no++; + for (bank = no; bank < 5; bank++) { + HuSprAttrSet(grpId, bank, 4); } } -void fn_1_3E08(void) +static void ResultOrderSet(void) { s16 i; s16 j; for (i = 0; i < 4; i++) { - lbl_1_bss_42[i] = BoardPlayerRankCalc(i); - lbl_1_bss_4A[i] = i; + resultRank[i] = BoardPlayerRankCalc(i); + resultOrder[i] = i; } for (j = 1; j < 4; j++) { for (i = 0; i < 4 - j; i++) { - if (lbl_1_bss_42[i] > lbl_1_bss_42[i + 1]) { - s16 temp = lbl_1_bss_42[i]; - lbl_1_bss_42[i] = lbl_1_bss_42[i + 1]; - lbl_1_bss_42[i + 1] = temp; - temp = lbl_1_bss_4A[i]; - lbl_1_bss_4A[i] = lbl_1_bss_4A[i + 1]; - lbl_1_bss_4A[i + 1] = temp; + if (resultRank[i] > resultRank[i + 1]) { + s16 temp = resultRank[i]; + resultRank[i] = resultRank[i + 1]; + resultRank[i + 1] = temp; + temp = resultOrder[i]; + resultOrder[i] = resultOrder[i + 1]; + resultOrder[i + 1] = temp; } } } } -s32 lbl_1_data_450[] = { DATADIR_W01, DATADIR_W02, DATADIR_W03, DATADIR_W04, DATADIR_W05, DATADIR_W06 }; +static s32 resultBoardDirTbl[] = { DATADIR_W01, DATADIR_W02, DATADIR_W03, DATADIR_W04, DATADIR_W05, DATADIR_W06 }; -void fn_1_3FD8(void) +void ResultBoardDataRead(void) { - s32 status; - u32 ardma; + s32 statId; + u32 aMemP; if (!_CheckFlag(0x10000)) { - lbl_1_bss_178 = 1; + resultReadEndF = 1; HuPrcEnd(); while (1) { HuPrcVSleep(); } } - status = HuDataDirReadAsync(DATADIR_BOARD); - if (status != -1) { - while (!HuDataGetAsyncStat(status)) { + statId = HuDataDirReadAsync(DATADIR_BOARD); + if (statId != -1) { + while (!HuDataGetAsyncStat(statId)) { HuPrcVSleep(); } } - ardma = HuAR_MRAMtoARAM(DATADIR_BOARD); - if (ardma) { + aMemP = HuAR_MRAMtoARAM(DATADIR_BOARD); + if (aMemP) { while (HuARDMACheck()) { HuPrcVSleep(); } } HuDataDirClose(DATADIR_BOARD); - status = HuDataDirReadAsync(lbl_1_data_450[GWSystem.board]); - if (status != -1) { - while (!HuDataGetAsyncStat(status)) { + statId = HuDataDirReadAsync(resultBoardDirTbl[GWSystem.board]); + if (statId != -1) { + while (!HuDataGetAsyncStat(statId)) { HuPrcVSleep(); } } - lbl_1_bss_178 = 1; + resultReadEndF = 1; HuPrcEnd(); while (1) { HuPrcVSleep(); } } -void fn_1_40DC(void) +void ResultCoinAdd(void) { s16 i; - s16 sp8[5]; - fn_1_423C(sp8); - sp8[lbl_1_bss_172] += sp8[4]; + s16 coinNum[5]; + ResultCoinNumGet(coinNum); + coinNum[resultBonusPlayer] += coinNum[4]; for (i = 0; i < 4; i++) { - GWCoinsAdd(i, sp8[i]); + GWCoinsAdd(i, coinNum[i]); GWPlayerCoinWinSet(i, 0); GWPlayerCoinCollectSet(i, 0); if (mgInfoTbl[GWSystem.mg_next].type != 4) { - GWPlayer[i].coins_mg += sp8[i]; + GWPlayer[i].coins_mg += coinNum[i]; if (GWPlayer[i].coins_mg > 9999) { GWPlayer[i].coins_mg = 9999; } @@ -904,99 +903,99 @@ void fn_1_40DC(void) } } -void fn_1_423C(s16 *data) +void ResultCoinNumGet(s16 *coinNum) { s16 i; s32 coin; - u32 mul_coin; + u32 coinMul; u32 coin_battle; - s16 temp_r26; - s16 mgtype; - float sp10[4]; - s16 sp8[4]; - mgtype = mgInfoTbl[GWSystem.mg_next].type; - switch (mgtype) { + s16 unkRankF; + s16 mgType; + float scale[4]; + s16 rank[4]; + mgType = mgInfoTbl[GWSystem.mg_next].type; + switch (mgType) { case 4: - temp_r26 = 0; + unkRankF = 0; for (i = coin_battle = 0; i < 4; i++) { coin_battle += GWPlayerCoinBattleGet(i); } - sp8[0] = sp8[1] = sp8[2] = sp8[3] = 0; + rank[0] = rank[1] = rank[2] = rank[3] = 0; for (i = 0; i < 4; i++) { - sp8[GWPlayerCoinWinGet(i)]++; + rank[GWPlayerCoinWinGet(i)]++; } - sp10[0] = sp10[1] = sp10[2] = sp10[3] = 0; - if (sp8[0] == 1 && sp8[1] == 1 && sp8[2] == 1) { - sp10[0] = 0.7f; - sp10[1] = 0.3f; + scale[0] = scale[1] = scale[2] = scale[3] = 0; + if (rank[0] == 1 && rank[1] == 1 && rank[2] == 1) { + scale[0] = 0.7f; + scale[1] = 0.3f; } - else if (sp8[0] == 2) { - sp10[0] = 0.5f; + else if (rank[0] == 2) { + scale[0] = 0.5f; } - else if (sp8[0] == 3) { - sp10[0] = 0.3333333f; + else if (rank[0] == 3) { + scale[0] = 0.3333333f; } - else if (sp8[0] == 1 && sp8[1] == 2) { - sp10[0] = 0.6f; - sp10[1] = 0.2f; + else if (rank[0] == 1 && rank[1] == 2) { + scale[0] = 0.6f; + scale[1] = 0.2f; } - else if (sp8[0] == 1 && sp8[1] == 3) { - sp10[0] = 0.7f; - sp10[1] = 0.1f; + else if (rank[0] == 1 && rank[1] == 3) { + scale[0] = 0.7f; + scale[1] = 0.1f; } - else if (sp8[0] == 1 && sp8[1] == 1 && sp8[2] == 2) { - sp10[0] = 0.7f; - sp10[1] = 0.3f; + else if (rank[0] == 1 && rank[1] == 1 && rank[2] == 2) { + scale[0] = 0.7f; + scale[1] = 0.3f; } - else if (sp8[0] == 4) { - sp10[0] = 0.25f; + else if (rank[0] == 4) { + scale[0] = 0.25f; } else { - temp_r26 = 1; + unkRankF = 1; } for (i = coin = 0; i < 4; i++) { - if (!temp_r26) { - mul_coin = coin_battle * sp10[GWPlayerCoinWinGet(i)]; + if (!unkRankF) { + coinMul = coin_battle * scale[GWPlayerCoinWinGet(i)]; } else { - mul_coin = GWPlayerCoinBattleGet(i); + coinMul = GWPlayerCoinBattleGet(i); } - data[i] = mul_coin; - coin += mul_coin; + coinNum[i] = coinMul; + coin += coinMul; } if (coin < coin_battle) { - data[4] = coin_battle - coin; + coinNum[4] = coin_battle - coin; } else { - data[4] = 0; + coinNum[4] = 0; } break; default: for (i = 0; i < 4; i++) { coin = GWPlayerCoinWinGet(i) + GWPlayerCoinCollectGet(i); - mul_coin = GWLuckyValueGet(); - if (mul_coin == 0) { - mul_coin = 1; + coinMul = GWLuckyValueGet(); + if (coinMul == 0) { + coinMul = 1; } - coin *= mul_coin; - data[i] = coin; + coin *= coinMul; + coinNum[i] = coin; } break; } } -void fn_1_461C(void) +static void SaveExec(void) { - s16 sprite; + s16 sprId; Hu3DAllKill(); HuSprClose(); HuSprInit(); espInit(); HuPrcVSleep(); - sprite = espEntry(0x860020, 5000, 0); - espPosSet(sprite, 288.0, 240.0); - espAttrReset(sprite, HUSPR_ATTR_DISPOFF); + sprId = espEntry(0x860020, 5000, 0); + espPosSet(sprId, 288.0, 240.0); + espAttrReset(sprId, HUSPR_ATTR_DISPOFF); Hu3DBGColorSet(0, 0, 0); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 20); while (WipeStatGet()) { @@ -1026,222 +1025,222 @@ void fn_1_461C(void) } } -s32 lbl_1_data_468[] = { DATADIR_MARIOMDL1, DATADIR_LUIGIMDL1, DATADIR_PEACHMDL1, DATADIR_YOSHIMDL1, DATADIR_WARIOMDL1, DATADIR_DONKEYMDL1, +static s32 resultCharMdlTbl[] = { DATADIR_MARIOMDL1, DATADIR_LUIGIMDL1, DATADIR_PEACHMDL1, DATADIR_YOSHIMDL1, DATADIR_WARIOMDL1, DATADIR_DONKEYMDL1, DATADIR_DAISYMDL1, DATADIR_WALUIGIMDL1 }; -Vec lbl_1_data_488[] = { +static Vec resultTeamCharPosTbl[] = { { 160, 185, 500 }, { 240, 185, 500 }, { 160, 355, 500 }, { 240, 355, 500 }, }; -void fn_1_47FC(void) +static void ResultTeamExec(void) { - s16 temp_r31; - s16 temp_r24; - s16 temp_r21; - s16 temp_r20; - s16 temp_r19; - s16 temp_r18; - s16 temp_r17; - Vec sp40; - Vec sp34; - s16 sp2C[4]; - s16 sp28[2]; - s16 sp24[2]; - s16 sp20[2]; - s16 sp1C[2]; - s16 sp18[2]; - AnimData *sp14; - s32 sp10; - s16 spC; - s16 spA; - s16 sp8; + s16 i; + s16 temp; + s16 winId; + s16 player; + s16 j; + s16 cubeMdlId; + s16 teamNo; + Vec pos3D; + Vec pos2D; + s16 charNo[4]; + s16 coinNum[2]; + s16 starNum[2]; + s16 teamYPos[2]; + s16 teamPlayerNo[2]; + s16 rank[2]; + AnimData *rankAnim; + s32 cubeNo; + s16 rankGrpId; + s16 rankSprId; + s16 btnDown; WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 10); while (WipeStatGet()) { HuPrcVSleep(); } - espAttrSet(lbl_1_bss_1A1A[0], HUSPR_ATTR_DISPOFF); - espAttrSet(lbl_1_bss_1A1A[1], HUSPR_ATTR_DISPOFF); - for (temp_r31 = 0; temp_r31 < 2; temp_r31++) { - Hu3DModelAttrSet(lbl_1_bss_1A9C[temp_r31 + 6], HU3D_ATTR_DISPOFF); - Hu3DModelAttrSet(lbl_1_bss_1A9C[temp_r31 + 10], HU3D_ATTR_DISPOFF); + espAttrSet(stageSprId[0], HUSPR_ATTR_DISPOFF); + espAttrSet(stageSprId[1], HUSPR_ATTR_DISPOFF); + for (i = 0; i < 2; i++) { + Hu3DModelAttrSet(stageMdlId[i + 6], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(stageMdlId[i + 10], HU3D_ATTR_DISPOFF); } - for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { - espAttrSet(lbl_1_bss_1A1A[temp_r31 + 6], HUSPR_ATTR_DISPOFF); + for (i = 0; i < 4; i++) { + espAttrSet(stageSprId[i + 6], HUSPR_ATTR_DISPOFF); } - for (temp_r31 = 4; temp_r31 < 8; temp_r31++) { - Hu3DModelAttrSet(lbl_1_bss_158[temp_r31], HU3D_ATTR_DISPOFF); + for (i = 4; i < 8; i++) { + Hu3DModelAttrSet(statShadowMdlId[i], HU3D_ATTR_DISPOFF); } - for (temp_r31 = 4; temp_r31 < 8; temp_r31++) { - HuSprGrpTPLvlSet(lbl_1_bss_CE[temp_r31], 0.0f); + for (i = 4; i < 8; i++) { + HuSprGrpTPLvlSet(resultNumGrpId[i], 0.0f); } - for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { - for (temp_r19 = 0; temp_r19 < 4; temp_r19++) { - Hu3DModelAttrSet(lbl_1_bss_5C[GWPlayerCfg[temp_r31].character][temp_r19], HU3D_ATTR_DISPOFF); + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + Hu3DModelAttrSet(resultCubeMdlId[GWPlayerCfg[i].character][j], HU3D_ATTR_DISPOFF); } - Hu3DModelAttrSet(lbl_1_bss_54[temp_r31], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(resultPlayerCubeMdlId[i], HU3D_ATTR_DISPOFF); } - HuSprGrpKill(lbl_1_bss_9C); - HuSprGrpKill(lbl_1_bss_52); - if (lbl_1_data_380 != -1) { - HuSprGrpKill(lbl_1_data_380); + HuSprGrpKill(resultCrownGrpId); + HuSprGrpKill(resultRankGrpId); + if (rankNewGrpId != -1) { + HuSprGrpKill(rankNewGrpId); } - sp28[0] = sp28[1] = 0; - sp24[0] = sp24[1] = 0; - sp1C[0] = 0; - sp1C[1] = 2; - for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { - temp_r17 = GWPlayer[temp_r31].team; - sp28[temp_r17] += BoardPlayerCoinsGet(temp_r31); - sp24[temp_r17] += GWStarsGet(temp_r31); - sp2C[sp1C[temp_r17]++] = GWPlayerCfg[temp_r31].character; + coinNum[0] = coinNum[1] = 0; + starNum[0] = starNum[1] = 0; + teamPlayerNo[0] = 0; + teamPlayerNo[1] = 2; + for (i = 0; i < 4; i++) { + teamNo = GWPlayer[i].team; + coinNum[teamNo] += BoardPlayerCoinsGet(i); + starNum[teamNo] += GWStarsGet(i); + charNo[teamPlayerNo[teamNo]++] = GWPlayerCfg[i].character; } - sp18[0] = 0; - sp18[1] = 1; - if (sp24[0] > sp24[1]) { - lbl_1_bss_8 = 0; + rank[0] = 0; + rank[1] = 1; + if (starNum[0] > starNum[1]) { + resultTeamOrder = 0; } else { - if (sp24[0] == sp24[1]) { - if (sp28[0] > sp28[1]) { - lbl_1_bss_8 = 0; + if (starNum[0] == starNum[1]) { + if (coinNum[0] > coinNum[1]) { + resultTeamOrder = 0; } - else if (sp28[0] == sp28[1]) { - sp18[0] = sp18[1] = 0; - lbl_1_bss_8 = 0; + else if (coinNum[0] == coinNum[1]) { + rank[0] = rank[1] = 0; + resultTeamOrder = 0; } else { - lbl_1_bss_8 = 1; + resultTeamOrder = 1; } } else { - lbl_1_bss_8 = 1; + resultTeamOrder = 1; } } - HuSprAttrReset(lbl_1_bss_170, 0, 4); - HuSprAttrReset(lbl_1_bss_170, 1, 4); - HuSprPosSet(lbl_1_bss_170, 1, 0, -180); - HuSprAttrReset(lbl_1_bss_170, 2, 4); - HuSprAttrReset(lbl_1_bss_170, 3, 4); - if (lbl_1_bss_8 == 0) { - sp20[0] = -55; - sp20[1] = 115; + HuSprAttrReset(teamResultGrpId, 0, 4); + HuSprAttrReset(teamResultGrpId, 1, 4); + HuSprPosSet(teamResultGrpId, 1, 0, -180); + HuSprAttrReset(teamResultGrpId, 2, 4); + HuSprAttrReset(teamResultGrpId, 3, 4); + if (resultTeamOrder == 0) { + teamYPos[0] = -55; + teamYPos[1] = 115; } else { - sp20[0] = 115; - sp20[1] = -55; - temp_r24 = sp2C[0]; - sp2C[0] = sp2C[2]; - sp2C[2] = temp_r24; - temp_r24 = sp2C[1]; - sp2C[1] = sp2C[3]; - sp2C[3] = temp_r24; - temp_r24 = sp28[0]; - sp28[0] = sp28[1]; - sp28[1] = temp_r24; - temp_r24 = sp24[0]; - sp24[0] = sp24[1]; - sp24[1] = temp_r24; + teamYPos[0] = 115; + teamYPos[1] = -55; + temp = charNo[0]; + charNo[0] = charNo[2]; + charNo[2] = temp; + temp = charNo[1]; + charNo[1] = charNo[3]; + charNo[3] = temp; + temp = coinNum[0]; + coinNum[0] = coinNum[1]; + coinNum[1] = temp; + temp = starNum[0]; + starNum[0] = starNum[1]; + starNum[1] = temp; } - HuSprPosSet(lbl_1_bss_170, 2, 0, sp20[0]); - HuSprPosSet(lbl_1_bss_170, 3, 0, sp20[1]); - HuSprGrpPosSet(lbl_1_bss_170, 288, 240); - for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { - if (temp_r31 < 2) { - sp10 = 0; + HuSprPosSet(teamResultGrpId, 2, 0, teamYPos[0]); + HuSprPosSet(teamResultGrpId, 3, 0, teamYPos[1]); + HuSprGrpPosSet(teamResultGrpId, 288, 240); + for (i = 0; i < 4; i++) { + if (i < 2) { + cubeNo = 0; } else { - sp10 = 1; + cubeNo = 1; } - temp_r18 = lbl_1_bss_5C[sp2C[temp_r31]][sp10]; - Hu3DAnimCreate(lbl_1_bss_E4[sp2C[temp_r31]][0], temp_r18, "ys22"); - Hu3DModelAttrReset(temp_r18, HU3D_ATTR_DISPOFF); - Hu3D2Dto3D(&lbl_1_data_488[temp_r31], 1, &sp40); - Hu3DModelPosSetV(temp_r18, &sp40); - Hu3DModelRotSet(temp_r18, 0, 0, 0); - sp34 = lbl_1_data_488[temp_r31]; - sp34.y += 5.0f; - sp34.x += 3.0f; - sp34.z += 200.0f; - Hu3D2Dto3D(&sp34, 1, &sp40); - Hu3DModelPosSetV(lbl_1_bss_168[temp_r31], &sp40); + cubeMdlId = resultCubeMdlId[charNo[i]][cubeNo]; + Hu3DAnimCreate(resultCharAnim[charNo[i]][0], cubeMdlId, "ys22"); + Hu3DModelAttrReset(cubeMdlId, HU3D_ATTR_DISPOFF); + Hu3D2Dto3D(&resultTeamCharPosTbl[i], 1, &pos3D); + Hu3DModelPosSetV(cubeMdlId, &pos3D); + Hu3DModelRotSet(cubeMdlId, 0, 0, 0); + pos2D = resultTeamCharPosTbl[i]; + pos2D.y += 5.0f; + pos2D.x += 3.0f; + pos2D.z += 200.0f; + Hu3D2Dto3D(&pos2D, 1, &pos3D); + Hu3DModelPosSetV(charShadowMdlId[i], &pos3D); } - spC = HuSprGrpCreate(2); - for (temp_r31 = 0; temp_r31 < 2; temp_r31++) { - sp14 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x16) + sp18[temp_r31]); - spA = HuSprCreate(sp14, temp_r31, 0); - HuSprGrpMemberSet(spC, temp_r31, spA); - HuSprPosSet(spC, temp_r31, (lbl_1_data_488[temp_r31 * 2].x) - 80.0f, lbl_1_data_488[temp_r31 * 2].y); - sp34 = lbl_1_data_488[temp_r31 * 2]; - sp34.x += 180.0f; - sp34.y -= 35.0f; - Hu3D2Dto3D(&sp34, 1, &sp40); - Hu3DModelPosSetV(lbl_1_bss_1A9C[temp_r31 + 4], &sp40); - sp34.y += 5.0f; - sp34.x += 3.0f; - sp34.z += 200.0f; - Hu3D2Dto3D(&sp34, 1, &sp40); - Hu3DModelPosSetV(lbl_1_bss_158[temp_r31 * 2], &sp40); - espPosSet(lbl_1_bss_1A1A[(temp_r31 * 2) + 2], 230.0f + lbl_1_data_488[temp_r31 * 2].x, lbl_1_data_488[temp_r31 * 2].y - 35.0f); - fn_1_3B50(lbl_1_bss_CE[temp_r31 * 2], sp24[temp_r31]); - HuSprGrpPosSet(lbl_1_bss_CE[temp_r31 * 2], 320.0f + lbl_1_data_488[temp_r31 * 2].x, lbl_1_data_488[temp_r31 * 2].y - 35.0f); - sp34 = lbl_1_data_488[temp_r31 * 2]; - sp34.x += 180.0f; - sp34.y += 35.0f; - Hu3D2Dto3D(&sp34, 1, &sp40); - Hu3DModelPosSetV(lbl_1_bss_1A9C[temp_r31 + 8], &sp40); - sp34.y += 5.0f; - sp34.x += 3.0f; - sp34.z += 200.0f; - Hu3D2Dto3D(&sp34, 1, &sp40); - Hu3DModelPosSetV(lbl_1_bss_158[(temp_r31 * 2) + 1], &sp40); - espPosSet(lbl_1_bss_1A1A[(temp_r31 * 2) + 3], 230.0f + lbl_1_data_488[temp_r31 * 2].x, 35.0f + lbl_1_data_488[temp_r31 * 2].y); - fn_1_3B50(lbl_1_bss_CE[(temp_r31 * 2) + 1], sp28[temp_r31]); - HuSprGrpPosSet(lbl_1_bss_CE[(temp_r31 * 2) + 1], 320.0f + lbl_1_data_488[temp_r31 * 2].x, 35.0f + lbl_1_data_488[temp_r31 * 2].y); + rankGrpId = HuSprGrpCreate(2); + for (i = 0; i < 2; i++) { + rankAnim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_RESULT, 0x16) + rank[i]); + rankSprId = HuSprCreate(rankAnim, i, 0); + HuSprGrpMemberSet(rankGrpId, i, rankSprId); + HuSprPosSet(rankGrpId, i, (resultTeamCharPosTbl[i * 2].x) - 80.0f, resultTeamCharPosTbl[i * 2].y); + pos2D = resultTeamCharPosTbl[i * 2]; + pos2D.x += 180.0f; + pos2D.y -= 35.0f; + Hu3D2Dto3D(&pos2D, 1, &pos3D); + Hu3DModelPosSetV(stageMdlId[i + 4], &pos3D); + pos2D.y += 5.0f; + pos2D.x += 3.0f; + pos2D.z += 200.0f; + Hu3D2Dto3D(&pos2D, 1, &pos3D); + Hu3DModelPosSetV(statShadowMdlId[i * 2], &pos3D); + espPosSet(stageSprId[(i * 2) + 2], 230.0f + resultTeamCharPosTbl[i * 2].x, resultTeamCharPosTbl[i * 2].y - 35.0f); + ResultSprNumSet(resultNumGrpId[i * 2], starNum[i]); + HuSprGrpPosSet(resultNumGrpId[i * 2], 320.0f + resultTeamCharPosTbl[i * 2].x, resultTeamCharPosTbl[i * 2].y - 35.0f); + pos2D = resultTeamCharPosTbl[i * 2]; + pos2D.x += 180.0f; + pos2D.y += 35.0f; + Hu3D2Dto3D(&pos2D, 1, &pos3D); + Hu3DModelPosSetV(stageMdlId[i + 8], &pos3D); + pos2D.y += 5.0f; + pos2D.x += 3.0f; + pos2D.z += 200.0f; + Hu3D2Dto3D(&pos2D, 1, &pos3D); + Hu3DModelPosSetV(statShadowMdlId[(i * 2) + 1], &pos3D); + espPosSet(stageSprId[(i * 2) + 3], 230.0f + resultTeamCharPosTbl[i * 2].x, 35.0f + resultTeamCharPosTbl[i * 2].y); + ResultSprNumSet(resultNumGrpId[(i * 2) + 1], coinNum[i]); + HuSprGrpPosSet(resultNumGrpId[(i * 2) + 1], 320.0f + resultTeamCharPosTbl[i * 2].x, 35.0f + resultTeamCharPosTbl[i * 2].y); } WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10); while (WipeStatGet()) { HuPrcVSleep(); } - temp_r21 = HuWinCreate(-10000.0f, 400.0f, 320, 40, 0); - HuWinMesSpeedSet(temp_r21, 0); - HuWinBGTPLvlSet(temp_r21, 0); - HuWinPriSet(temp_r21, 5); - HuWinAttrSet(temp_r21, 0x800); - HuWinMesSet(temp_r21, MAKE_MESSID(0x24, 0x07)); + winId = HuWinCreate(-10000.0f, 400.0f, 320, 40, 0); + HuWinMesSpeedSet(winId, 0); + HuWinBGTPLvlSet(winId, 0); + HuWinPriSet(winId, 5); + HuWinAttrSet(winId, 0x800); + HuWinMesSet(winId, MAKE_MESSID(0x24, 0x07)); HuPrcSleep(4); - temp_r31 = 0; + i = 0; while (1) { - if (lbl_1_bss_4 && temp_r31 > 120) { + if (resultSkipF && i > 120) { break; } - for (temp_r20 = sp8 = 0; temp_r20 < 4; temp_r20++) { - if (!GWPlayerCfg[temp_r20].iscom) { - sp8 |= HuPadBtnDown[GWPlayerCfg[temp_r20].pad_idx]; + for (player = btnDown = 0; player < 4; player++) { + if (!GWPlayerCfg[player].iscom) { + btnDown |= HuPadBtnDown[GWPlayerCfg[player].pad_idx]; } } - if (sp8 & PAD_BUTTON_A) { + if (btnDown & PAD_BUTTON_A) { HuAudFXPlay(28); break; } HuPrcVSleep(); - temp_r31++; + i++; } - HuWinKill(temp_r21); + HuWinKill(winId); } -void fn_1_5880(omObjData *object) +void CameraDebug(omObjData *object) { Vec pos; Vec offset; Vec dir; - Vec y_offset; + Vec yOfs; - f32 z_rot; - s8 stick_pos; + float z_rot; + s8 stickPos; if (HuPadBtn[0] & PAD_BUTTON_UP) { CRot.x += 2.0f; @@ -1274,31 +1273,31 @@ void fn_1_5880(omObjData *object) dir.y = cosd(CRot.x); dir.z = (cosd(CRot.y) * sind(CRot.x)); z_rot = CRot.z; - y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cosd(z_rot)) + yOfs.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cosd(z_rot)) + dir.y * (offset.x * offset.y * (1.0f - cosd(z_rot)) - offset.z * sind(z_rot)) + dir.z * (offset.x * offset.z * (1.0f - cosd(z_rot)) + offset.y * sind(z_rot)); - y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cosd(z_rot)) + yOfs.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cosd(z_rot)) + dir.x * (offset.x * offset.y * (1.0f - cosd(z_rot)) + offset.z * sind(z_rot)) + dir.z * (offset.y * offset.z * (1.0f - cosd(z_rot)) - offset.x * sind(z_rot)); - y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cosd(z_rot)) + yOfs.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cosd(z_rot)) + (dir.x * (offset.x * offset.z * (1.0 - cosd(z_rot)) - offset.y * sind(z_rot)) + dir.y * (offset.y * offset.z * (1.0 - cosd(z_rot)) + offset.x * sind(z_rot))); VECCrossProduct(&dir, &offset, &offset); VECNormalize(&offset, &offset); - stick_pos = (HuPadSubStkX[0] & 0xF8); - if (stick_pos != 0) { - Center.x += 0.05f * (offset.x * stick_pos); - Center.y += 0.05f * (offset.y * stick_pos); - Center.z += 0.05f * (offset.z * stick_pos); + stickPos = (HuPadSubStkX[0] & 0xF8); + if (stickPos != 0) { + Center.x += 0.05f * (offset.x * stickPos); + Center.y += 0.05f * (offset.y * stickPos); + Center.z += 0.05f * (offset.z * stickPos); } - VECNormalize(&y_offset, &offset); - stick_pos = -(HuPadSubStkY[0] & 0xF8); - if (stick_pos != 0) { - Center.x += 0.05f * (offset.x * stick_pos); - Center.y += 0.05f * (offset.y * stick_pos); - Center.z += 0.05f * (offset.z * stick_pos); + VECNormalize(&yOfs, &offset); + stickPos = -(HuPadSubStkY[0] & 0xF8); + if (stickPos != 0) { + Center.x += 0.05f * (offset.x * stickPos); + Center.y += 0.05f * (offset.y * stickPos); + Center.z += 0.05f * (offset.z * stickPos); } } From 64f087c2c901717ff20fb755ed687fb705b2a6e1 Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Thu, 6 Feb 2025 15:45:43 -0600 Subject: [PATCH 160/178] Gamework struct labeling (#563) * Label most of w01Dll * Add symbols for instdll and resultdll in us * Fix pal symbols for instDll * Build resultdll+symbols for pal * Gamework struct labeling --- include/game/gamework_data.h | 24 ++++++++++++------------ src/REL/mentDll/main.c | 18 +++++------------- src/REL/mgmodedll/main.c | 4 ++-- src/REL/mgmodedll/mgmode.c | 4 ++-- src/REL/modeseldll/filesel.c | 2 +- src/REL/mpexDll/charsel.c | 4 ++-- src/REL/mstory2Dll/ending.c | 8 ++++---- src/REL/mstory2Dll/main.c | 4 ++-- src/REL/mstory3Dll/result.c | 2 +- src/REL/mstory4Dll/main.c | 4 +--- src/REL/mstoryDll/main.c | 4 ++-- src/REL/option/sound.c | 6 +++--- src/REL/ztardll/select.c | 4 ++-- src/game/board/main.c | 2 +- src/game/board/pause.c | 6 +++--- src/game/gamework.c | 6 +++--- 16 files changed, 46 insertions(+), 56 deletions(-) diff --git a/include/game/gamework_data.h b/include/game/gamework_data.h index b3615e85..f26f62dc 100644 --- a/include/game/gamework_data.h +++ b/include/game/gamework_data.h @@ -40,8 +40,8 @@ typedef struct system_state { }; /* 0x09 */ s8 last5_effect; /* 0x0A */ s8 player_curr; -/* 0x0B */ u8 unk0B; -/* 0x0C */ s8 unk0C; +/* 0x0B */ u8 storyCharBit; +/* 0x0C */ s8 storyChar; /* 0x0E */ s16 block_pos; /* 0x10 */ u8 ATTRIBUTE_ALIGN(4) board_data[32]; /* 0x30 */ u8 mess_delay; @@ -137,9 +137,9 @@ typedef struct game_stat { u8 story_continue : 1; u8 party_continue : 1; u8 open_w06 : 1; - u8 field10E_bit4 : 1; - u8 field10E_bit5 : 1; - u8 field10E_bit6 : 1; + u8 veryHardUnlock : 1; + u8 customPackEnable : 1; + u8 musicAllF : 1; }; /* 0x10F */ PauseBackupConfig story_pause; /* 0x110 */ PauseBackupConfig party_pause; @@ -300,11 +300,6 @@ static inline s32 GWSaveModeGet(void) return GWSystem.save_mode; } -static inline s32 GWTurnGet(void) -{ - return GWSystem.turn; -} - static inline s32 GWBoardGet(void) { return GWSystem.board; @@ -315,9 +310,14 @@ static inline s32 GWPlayerCurrGet(void) return GWSystem.player_curr; } -static inline s32 GWUnkB1Get(void) +static inline s32 GWStoryCharGet(void) { - return GWSystem.unk0C; + return GWSystem.storyChar; +} + +static inline void GWStoryCharSet(s32 storyChar) +{ + GWSystem.storyChar = storyChar; } static inline s32 GWPlayerTeamGet(s32 player) diff --git a/src/REL/mentDll/main.c b/src/REL/mentDll/main.c index 3888ccf4..db8375f3 100644 --- a/src/REL/mentDll/main.c +++ b/src/REL/mentDll/main.c @@ -200,8 +200,8 @@ void fn_1_658C(Process *arg0) CharKill(-1); } lbl_1_bss_A8[4] = GWGameStat.open_w06; - lbl_1_bss_A8[5] = GWGameStat.field10E_bit4; - lbl_1_bss_A8[6] = GWGameStat.field10E_bit5; + lbl_1_bss_A8[5] = GWGameStat.veryHardUnlock; + lbl_1_bss_A8[6] = GWGameStat.customPackEnable; switch (lbl_1_bss_A8[0]) { case 0: HuAudSndGrpSetSet(7); @@ -340,11 +340,9 @@ void fn_1_6C4C(void) print8(var_r30, var_r29 + 0xAA, 1.0f, "MODE:%d MAP:%d", lbl_1_bss_A8[0], lbl_1_bss_A8[2]); print8(var_r30, var_r29 + 0xBE, 1.0f, "NO) IDX:GRP:COM:DIF:PAD:CHR"); for (var_r31 = 0; var_r31 < 4; var_r31++) { - s32 spC; - s32 sp8 = lbl_1_bss_3114[var_r31].unk_6C; - spC = lbl_1_bss_3114[var_r31].unk_68; + print8(var_r30, var_r29 + 0xC8 + (var_r31 * 0xA), 1.0f, "%2d) %3d:%3d:%3d:%3d:%3d:%3d", var_r31, lbl_1_bss_3114[var_r31].unk_58, - lbl_1_bss_3114[var_r31].unk_5C, lbl_1_bss_3114[var_r31].unk_60, lbl_1_bss_3114[var_r31].unk_64); + lbl_1_bss_3114[var_r31].unk_5C, lbl_1_bss_3114[var_r31].unk_60, lbl_1_bss_3114[var_r31].unk_64, lbl_1_bss_3114[var_r31].unk_6C, lbl_1_bss_3114[var_r31].unk_68); } print8(var_r30, var_r29 + 0xF0, 1.0f, "NO) FG0:FG1:FG2:FG3"); for (var_r31 = 0; var_r31 < 4; var_r31++) { @@ -2693,12 +2691,6 @@ void fn_1_E71C(s32 arg0) } } -inline void fn_1_E874_inline(void) -{ - s32 sp18 = lbl_1_bss_3114[0].unk_68; - GWSystem.unk0C = sp18; -} - void fn_1_E874(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) { s32 var_r31; @@ -2757,7 +2749,7 @@ void fn_1_E874(omObjData *arg0, MentDllUnkBss35BCStruct *arg1) var_r18 = 0; } BoardStoryConfigSet(var_r24, var_r18); - fn_1_E874_inline(); + GWStoryCharSet(lbl_1_bss_3114[0].unk_68); // looks a bit similar to fn_1_7304 for (var_r31 = 1; var_r31 < 4; var_r31++) { lbl_1_bss_3114[var_r31].unk_68 = -1; diff --git a/src/REL/mgmodedll/main.c b/src/REL/mgmodedll/main.c index dd6b1b72..85db3742 100755 --- a/src/REL/mgmodedll/main.c +++ b/src/REL/mgmodedll/main.c @@ -1075,7 +1075,7 @@ s32 fn_1_1D688(StructBss8_24 *arg0) var_r28 = 0; var_r26 = arg0->unk64; if (HuPadStkX[lbl_1_bss_1E10->unk6C] >= 5 || (HuPadBtn[lbl_1_bss_1E10->unk6C] & 2)) { - if (GWGameStat.field10E_bit4 == 1) { + if (GWGameStat.veryHardUnlock == 1) { arg0->unk64++; var_r28 = 1; if (arg0->unk64 > 3) { @@ -1091,7 +1091,7 @@ s32 fn_1_1D688(StructBss8_24 *arg0) } } else if (HuPadStkX[lbl_1_bss_1E10->unk6C] <= -5 || (HuPadBtn[lbl_1_bss_1E10->unk6C] & 1)) { - if (GWGameStat.field10E_bit4 == 1) { + if (GWGameStat.veryHardUnlock == 1) { arg0->unk64--; var_r28 = -1; if (arg0->unk64 < 0) { diff --git a/src/REL/mgmodedll/mgmode.c b/src/REL/mgmodedll/mgmode.c index 67b59009..a0e23802 100644 --- a/src/REL/mgmodedll/mgmode.c +++ b/src/REL/mgmodedll/mgmode.c @@ -930,10 +930,10 @@ void fn_1_4010(void) } } if (spA[0] >= 4 && spA[1] >= 3 && spA[2] >= 3 && spA[3] >= 2) { - GWGameStat.field10E_bit5 = 1; + GWGameStat.customPackEnable = 1; } else { - GWGameStat.field10E_bit5 = 0; + GWGameStat.customPackEnable = 0; } pos2D = lbl_1_data_40[2]; pos2D.z = 800; diff --git a/src/REL/modeseldll/filesel.c b/src/REL/modeseldll/filesel.c index ef0bc58f..aa81055f 100644 --- a/src/REL/modeseldll/filesel.c +++ b/src/REL/modeseldll/filesel.c @@ -1859,7 +1859,7 @@ void fn_1_A8C0(s16 boxno) SLLoadBoardStory(); lbl_1_bss_EE[boxno] = GWGameStat.total_stars; lbl_1_bss_D0[boxno] = GWGameStat.create_time; - lbl_1_bss_E8[boxno] = GWSystem.unk0C; + lbl_1_bss_E8[boxno] = GWSystem.storyChar; lbl_1_bss_C4[boxno] = GWGameStat.story_continue; lbl_1_bss_B8[boxno] = GWGameStat.party_continue; if (GWGameStat.story_continue) { diff --git a/src/REL/mpexDll/charsel.c b/src/REL/mpexDll/charsel.c index 180626fa..0c5cac29 100644 --- a/src/REL/mpexDll/charsel.c +++ b/src/REL/mpexDll/charsel.c @@ -2441,7 +2441,7 @@ s32 fn_1_19A98(MpexDllUnkStruct4 *arg0) goto block_2; } } - if (GWGameStat.field10E_bit4 == 1) { + if (GWGameStat.veryHardUnlock == 1) { arg0->unk_54++; var_r28 = 1; if (arg0->unk_54 > 3) { @@ -2457,7 +2457,7 @@ s32 fn_1_19A98(MpexDllUnkStruct4 *arg0) goto block_1; block_2: if (HuPadStkX[lbl_1_bss_45C->unk_58] <= -5 || HuPadBtn[lbl_1_bss_45C->unk_58] & PAD_BUTTON_LEFT) { - if (GWGameStat.field10E_bit4 == 1) { + if (GWGameStat.veryHardUnlock == 1) { arg0->unk_54--; var_r28 = -1; if (arg0->unk_54 < 0) { diff --git a/src/REL/mstory2Dll/ending.c b/src/REL/mstory2Dll/ending.c index c8adbc76..93e9ab8e 100644 --- a/src/REL/mstory2Dll/ending.c +++ b/src/REL/mstory2Dll/ending.c @@ -105,7 +105,7 @@ void fn_1_188F0(Process *arg0, s32 arg1) { lbl_1_bss_B38 = arg0; if (GWSystem.diff_story == 2) { - GWGameStat.field10E_bit4 = TRUE; + GWGameStat.veryHardUnlock = TRUE; } lbl_1_bss_C0C.unk0C = arg1; fn_1_C30(); @@ -298,7 +298,7 @@ void fn_1_19334(void) Hu3DModelAttrSet(lbl_1_bss_B94.unk00->model[1], 1); HuAudSeqFadeOut(lbl_1_bss_78[0], 100); lbl_1_bss_B3C = 2; - GWGameStat.field10E_bit6 = TRUE; + GWGameStat.musicAllF = TRUE; WipeColorSet(0, 0, 0); WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1); while (WipeStatGet()) { @@ -406,8 +406,8 @@ void fn_1_199A0(void) HuPrcVSleep(); } fn_1_BE8(60); - var_r28 = GWUnkB1Get(); - GWSystem.unk0B |= 1 << var_r28; + var_r28 = GWStoryCharGet(); + GWSystem.storyCharBit |= 1 << var_r28; if (SLSaveFlagGet() == 1) { HuWinInit(1); HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(30, 22)); diff --git a/src/REL/mstory2Dll/main.c b/src/REL/mstory2Dll/main.c index c8277e06..77125674 100644 --- a/src/REL/mstory2Dll/main.c +++ b/src/REL/mstory2Dll/main.c @@ -171,7 +171,7 @@ void fn_1_4F4(void) { case 1: for (i = 0; i < 4; i++) { - if (GWPlayerCfg[i].character == GWUnkB1Get()) { + if (GWPlayerCfg[i].character == GWStoryCharGet()) { break; } } @@ -179,7 +179,7 @@ void fn_1_4F4(void) { break; case 2: for (i = 0; i < 4; i++) { - if (GWPlayerCfg[i].character == GWUnkB1Get()) { + if (GWPlayerCfg[i].character == GWStoryCharGet()) { break; } } diff --git a/src/REL/mstory3Dll/result.c b/src/REL/mstory3Dll/result.c index a9104387..737f8b8f 100755 --- a/src/REL/mstory3Dll/result.c +++ b/src/REL/mstory3Dll/result.c @@ -619,7 +619,7 @@ void fn_1_17570(void) { } else { fn_1_159A4(); for (i = 0; i < 4; i++) { - if (lbl_1_bss_1A0C.unk38[i].unk10 != GWUnkB1Get()) { + if (lbl_1_bss_1A0C.unk38[i].unk10 != GWStoryCharGet()) { continue; } _SetFlag(9); diff --git a/src/REL/mstory4Dll/main.c b/src/REL/mstory4Dll/main.c index e5fce452..6a626cb1 100644 --- a/src/REL/mstory4Dll/main.c +++ b/src/REL/mstory4Dll/main.c @@ -575,15 +575,13 @@ void fn_1_13A0(void) GWPlayerCfg[0].character = itemno/6; { s32 i; - s32 character; for(i=1; i<4; i++) { GWPlayerCfg[i].character = GWPlayerCfg[i-1].character+1; if(GWPlayerCfg[i].character > GW_CHARACTER_MAX) { GWPlayerCfg[i].character = 0; } } - character = GWPlayerCfg[0].character; - GWSystem.unk0C = character; + GWStoryCharSet(GWPlayerCfg[0].character); GWPlayer[0].character = GWPlayerCfg[0].character; GWPlayer[1].character = GWPlayerCfg[1].character; GWPlayer[2].character = GWPlayerCfg[2].character; diff --git a/src/REL/mstoryDll/main.c b/src/REL/mstoryDll/main.c index f9eb62d1..7f4f2cb7 100755 --- a/src/REL/mstoryDll/main.c +++ b/src/REL/mstoryDll/main.c @@ -147,7 +147,7 @@ void fn_1_488(void) { switch (omovlevtno) { case 0: for (i = 0; i < 4; i++) { - if (GWPlayerCfg[i].character == GWUnkB1Get()) { + if (GWPlayerCfg[i].character == GWStoryCharGet()) { break; } } @@ -155,7 +155,7 @@ void fn_1_488(void) { break; case 1: for (i = 0; i < 4; i++) { - if (GWPlayerCfg[i].character == GWUnkB1Get()) { + if (GWPlayerCfg[i].character == GWStoryCharGet()) { break; } } diff --git a/src/REL/option/sound.c b/src/REL/option/sound.c index 733a353e..7012bb90 100755 --- a/src/REL/option/sound.c +++ b/src/REL/option/sound.c @@ -513,9 +513,9 @@ omObjData *OptionSoundCreate(void) for (i = 0; i < NUM_BOARDS; i++) { musicPageOn[i + 3] = (GWGameStat.board_play_count[i] != 0) ? TRUE : FALSE; } - musicPageOn[11] = (GWGameStat.field10E_bit6 != 0) ? TRUE : FALSE; - musicPageOn[12] = (GWGameStat.field10E_bit6 != 0) ? TRUE : FALSE; - musicPageOn[13] = (GWGameStat.field10E_bit6 != 0) ? TRUE : FALSE; + musicPageOn[11] = (GWGameStat.musicAllF != 0) ? TRUE : FALSE; + musicPageOn[12] = (GWGameStat.musicAllF != 0) ? TRUE : FALSE; + musicPageOn[13] = (GWGameStat.musicAllF != 0) ? TRUE : FALSE; return object; } diff --git a/src/REL/ztardll/select.c b/src/REL/ztardll/select.c index e8de9216..0076979e 100644 --- a/src/REL/ztardll/select.c +++ b/src/REL/ztardll/select.c @@ -2511,7 +2511,7 @@ s32 fn_1_F214(ZtarDllUnkStruct2 *arg0) var_r28 = 0; var_r26 = arg0->unk_54; if (HuPadStkX[lbl_1_bss_8C[0].unk_58] >= 5 || (HuPadBtn[lbl_1_bss_8C[0].unk_58] & PAD_BUTTON_RIGHT)) { - if (GWGameStat.field10E_bit4 == 1) { + if (GWGameStat.veryHardUnlock == 1) { arg0->unk_54++; var_r28 = 1; if (arg0->unk_54 > 3) { @@ -2527,7 +2527,7 @@ s32 fn_1_F214(ZtarDllUnkStruct2 *arg0) } } else if (HuPadStkX[lbl_1_bss_8C[0].unk_58] <= -5 || (HuPadBtn[lbl_1_bss_8C[0].unk_58] & PAD_BUTTON_LEFT)) { - if (GWGameStat.field10E_bit4 == 1) { + if (GWGameStat.veryHardUnlock == 1) { arg0->unk_54--; var_r28 = -1; if (arg0->unk_54 < 0) { diff --git a/src/game/board/main.c b/src/game/board/main.c index 68440f98..1ce8c180 100644 --- a/src/game/board/main.c +++ b/src/game/board/main.c @@ -619,7 +619,7 @@ static void CreateBoard(void) s32 guest_status; GWSystem.mg_next = -1; - if(!GWGameStat.field10E_bit5 && GWMGListGet() == 2) { + if(!GWGameStat.customPackEnable && GWMGListGet() == 2) { GWMGListSet(0); } GWMessSpeedSet(GWMessSpeedGet()); diff --git a/src/game/board/pause.c b/src/game/board/pause.c index 34fcc55d..3ca8058a 100755 --- a/src/game/board/pause.c +++ b/src/game/board/pause.c @@ -905,7 +905,7 @@ static void ChangeDiffPadConfig(omObjData *arg0, ConfigWork *arg1) { var_r30 |= 2; } temp_r29 = CheckPort(arg1->unk04); - if (GWGameStat.field10E_bit4 != 0) { + if (GWGameStat.veryHardUnlock != 0) { var_r27 = 4; } else { var_r27 = 3; @@ -962,7 +962,7 @@ static void ChangeDiffPadConfig(omObjData *arg0, ConfigWork *arg1) { arg1->unk09 = 0; } arg1->unk05 += var_r28; - if (GWGameStat.field10E_bit4 == 0 && arg1->unk05 == 4) { + if (GWGameStat.veryHardUnlock == 0 && arg1->unk05 == 4) { arg1->unk05 += var_r28; } if (arg1->unk05 > var_r27) { @@ -1100,7 +1100,7 @@ static s32 UpdatePauseBoxExt(omObjData *arg0, ConfigWork *arg1, s32 arg2) { u32 temp_r28; Mtx sp8; - if (arg2 == 3 && GWGameStat.field10E_bit5 == 0) { + if (arg2 == 3 && GWGameStat.customPackEnable == 0) { var_r27 = 1; } else { var_r27 = 2; diff --git a/src/game/gamework.c b/src/game/gamework.c index 887d977b..0100278f 100644 --- a/src/game/gamework.c +++ b/src/game/gamework.c @@ -112,9 +112,9 @@ static inline void ResetFlag(GameStat *game_stat) game_stat->story_continue = 0; game_stat->party_continue = 0; game_stat->open_w06 = 0; - game_stat->field10E_bit4 = 0; - game_stat->field10E_bit5 = 0; - game_stat->field10E_bit6 = 0; + game_stat->veryHardUnlock = 0; + game_stat->customPackEnable = 0; + game_stat->musicAllF = 0; } static inline void ResetPauseConfig(GameStat *game_stat) From 66a9a044fa761e098db8d7b369e8b3c8ab1535d0 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Fri, 7 Feb 2025 06:48:22 -0800 Subject: [PATCH 161/178] Making some TRK progress (#564) --- config/GMPE01_00/symbols.txt | 2 +- configure.py | 15 +- include/PowerPC_EABI_Support/MetroTRK/trk.h | 3 + .../MetroTRK/Portable/msg.h | 2 +- .../MetroTRK/Portable/msgbuf.h | 2 +- src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c | 184 ++++++++++++------ src/TRK_MINNOW_DOLPHIN/msg.c | 56 +++++- src/TRK_MINNOW_DOLPHIN/msgbuf.c | 10 +- src/TRK_MINNOW_DOLPHIN/msghndlr.c | 155 +++++++++------ src/TRK_MINNOW_DOLPHIN/mslsupp.c | 112 +++++++++++ src/TRK_MINNOW_DOLPHIN/target_options.c | 11 ++ src/TRK_MINNOW_DOLPHIN/usr_put.c | 21 ++ 12 files changed, 434 insertions(+), 139 deletions(-) create mode 100755 src/TRK_MINNOW_DOLPHIN/mslsupp.c create mode 100755 src/TRK_MINNOW_DOLPHIN/target_options.c diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 43ae5aae..d2b64397 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -3668,7 +3668,7 @@ atanhi = .rodata:0x8011E9B8; // type:object size:0x20 scope:local atanlo = .rodata:0x8011E9D8; // type:object size:0x20 scope:local aT = .rodata:0x8011E9F8; // type:object size:0x58 scope:local @62 = .rodata:0x8011EA50; // type:object size:0x1C scope:local data:string -lbl_8011EA70 = .rodata:0x8011EA70; // type:object size:0x20 +lbl_8011EA70 = .rodata:0x8011EA70; // type:object size:0x1D data:string gTRKMemMap = .rodata:0x8011EA90; // type:object size:0x10 data:4byte lbl_8011EAA0 = .rodata:0x8011EAA0; // type:object size:0x28 data:4byte lbl_8011EAC8 = .rodata:0x8011EAC8; // type:object size:0x28 data:4byte diff --git a/configure.py b/configure.py index 1e740726..bcccf9c6 100644 --- a/configure.py +++ b/configure.py @@ -238,12 +238,11 @@ cflags_msl = [ cflags_trk = [ *cflags_base, "-use_lmw_stmw on", - "-str reuse,pool,readonly", + "-str reuse,readonly", "-common off", "-sdata 0", "-sdata2 0", "-inline auto,deferred", - "-pool off", "-enum min", "-sdatathreshold 0" ] @@ -742,12 +741,12 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mainloop.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/nubevent.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/nubinit.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/msg.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/msgbuf.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msg.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msgbuf.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/serpoll.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/usr_put.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/usr_put.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/dispatch.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/msghndlr.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msghndlr.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/support.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mutex_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/notify.c"), @@ -761,8 +760,8 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/main_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/targcont.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/target_options.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/mslsupp.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/target_options.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mslsupp.c"), ], }, MusyX( diff --git a/include/PowerPC_EABI_Support/MetroTRK/trk.h b/include/PowerPC_EABI_Support/MetroTRK/trk.h index c8814672..66b36f3b 100644 --- a/include/PowerPC_EABI_Support/MetroTRK/trk.h +++ b/include/PowerPC_EABI_Support/MetroTRK/trk.h @@ -254,6 +254,9 @@ typedef struct ProcessorRestoreFlags_PPC { void TRKSaveExtended1Block(); +void SetUseSerialIO(u8); +u8 GetUseSerialIO(void); + #define SPR_XER 1 #define SPR_LR 8 #define SPR_CTR 9 diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h index 8433ef8d..2dc2dff8 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msg.h @@ -8,7 +8,7 @@ typedef struct _TRK_Msg { u8 _00[8]; u32 m_msgLength; u32 _0C; - u32 m_msg; + u8 m_msg[4]; // TODO: unknown array length } TRK_Msg; #ifdef __cplusplus diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h index 770d3886..f16fe261 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h @@ -12,7 +12,7 @@ DSError TRKInitializeMessageBuffers(void); DSError TRKSetBufferPosition(TRKBuffer* msg, u32 pos); void* TRKGetBuffer(int); -void TRKResetBuffer(TRKBuffer* msg, BOOL keepData); +void TRKResetBuffer(TRKBuffer* msg, u8 keepData); void* TRKGetBuffer(int idx); void TRKReleaseBuffer(int idx); DSError TRKGetFreeBuffer(int* msgID, TRKBuffer** outMsg); diff --git a/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c index 9a55362b..9fbb6aeb 100644 --- a/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c +++ b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c @@ -4,84 +4,95 @@ #include "amcstubs/AmcExi2Stubs.h" #include "PowerPC_EABI_Support/MetroTRK/trk.h" +#define BUFF_LEN 4362 + +u8 gWriteBuf[BUFF_LEN]; +u8 gReadBuf[BUFF_LEN]; +s32 _MetroTRK_Has_Framing; +s32 gReadCount; +s32 gReadPos; +s32 gWritePos; + DBCommTable gDBCommTable = {}; asm void TRKLoadContext(OSContext* ctx, u32) { #ifdef __MWERKS__ // clang-format off - nofralloc - lwz r0, OSContext.gpr[0](r3) - lwz r1, OSContext.gpr[1](r3) - lwz r2, OSContext.gpr[2](r3) - lhz r5, OSContext.state(r3) - rlwinm. r6, r5, 0, 0x1e, 0x1e - beq lbl_80371C1C - rlwinm r5, r5, 0, 0x1f, 0x1d - sth r5, OSContext.state(r3) - lmw r5, OSContext.gpr[5](r3) - b lbl_80371C20 + nofralloc + lwz r0, OSContext.gpr[0](r3) + lwz r1, OSContext.gpr[1](r3) + lwz r2, OSContext.gpr[2](r3) + lhz r5, OSContext.state(r3) + rlwinm. r6, r5, 0, 0x1e, 0x1e + beq lbl_80371C1C + rlwinm r5, r5, 0, 0x1f, 0x1d + sth r5, OSContext.state(r3) + lmw r5, OSContext.gpr[5](r3) + b lbl_80371C20 lbl_80371C1C: - lmw r13, OSContext.gpr[13](r3) + lmw r13, OSContext.gpr[13](r3) lbl_80371C20: - mr r31, r3 - mr r3, r4 - lwz r4, OSContext.cr(r31) - mtcrf 0xff, r4 - lwz r4, OSContext.lr(r31) - mtlr r4 - lwz r4, OSContext.ctr(r31) - mtctr r4 - lwz r4, OSContext.xer(r31) - mtxer r4 - mfmsr r4 - rlwinm r4, r4, 0, 0x11, 0xf //Turn off external exceptions - rlwinm r4, r4, 0, 0x1f, 0x1d //Turn off recoverable exception flag - mtmsr r4 - mtsprg 1, r2 - lwz r4, OSContext.gpr[3](r31) - mtsprg 2, r4 - lwz r4, OSContext.gpr[4](r31) - mtsprg 3, r4 - lwz r2, OSContext.srr0(r31) - lwz r4, OSContext.srr1(r31) - lwz r31, OSContext.gpr[31](r31) - b TRKInterruptHandler + mr r31, r3 + mr r3, r4 + lwz r4, OSContext.cr(r31) + mtcrf 0xff, r4 + lwz r4, OSContext.lr(r31) + mtlr r4 + lwz r4, OSContext.ctr(r31) + mtctr r4 + lwz r4, OSContext.xer(r31) + mtxer r4 + mfmsr r4 + rlwinm r4, r4, 0, 0x11, 0xf //Turn off external exceptions + rlwinm r4, r4, 0, 0x1f, 0x1d //Turn off recoverable exception flag + mtmsr r4 + mtsprg 1, r2 + lwz r4, OSContext.gpr[3](r31) + mtsprg 2, r4 + lwz r4, OSContext.gpr[4](r31) + mtsprg 3, r4 + lwz r2, OSContext.srr0(r31) + lwz r4, OSContext.srr1(r31) + lwz r31, OSContext.gpr[31](r31) + b TRKInterruptHandler #endif // clang-format on } void TRKEXICallBack(__OSInterrupt param_0, OSContext* ctx) { - OSEnableScheduler(); - TRKLoadContext(ctx, 0x500); + OSEnableScheduler(); + TRKLoadContext(ctx, 0x500); } int InitMetroTRKCommTable(int hwId) { - int result; + int result; - if (hwId == HARDWARE_GDEV) { - result = Hu_IsStub(); + if (hwId == HARDWARE_GDEV) { + OSReport("MetroTRK : Set to GDEV hardware\n"); + result = Hu_IsStub(); - gDBCommTable.initialize_func = DBInitComm; - gDBCommTable.init_interrupts_func = DBInitInterrupts; - gDBCommTable.peek_func = DBQueryData; - gDBCommTable.read_func = DBRead; - gDBCommTable.write_func = DBWrite; - gDBCommTable.open_func = DBOpen; - gDBCommTable.close_func = DBClose; - } else { - result = AMC_IsStub(); + gDBCommTable.initialize_func = DBInitComm; + gDBCommTable.init_interrupts_func = DBInitInterrupts; + gDBCommTable.peek_func = DBQueryData; + gDBCommTable.read_func = DBRead; + gDBCommTable.write_func = DBWrite; + gDBCommTable.open_func = DBOpen; + gDBCommTable.close_func = DBClose; + } else { + OSReport("MetroTRK : Set to AMC DDH hardware\n"); + result = AMC_IsStub(); - gDBCommTable.initialize_func = EXI2_Init; - gDBCommTable.init_interrupts_func = EXI2_EnableInterrupts; - gDBCommTable.peek_func = EXI2_Poll; - gDBCommTable.read_func = EXI2_ReadN; - gDBCommTable.write_func = EXI2_WriteN; - gDBCommTable.open_func = EXI2_Reserve; - gDBCommTable.close_func = EXI2_Unreserve; - } + gDBCommTable.initialize_func = EXI2_Init; + gDBCommTable.init_interrupts_func = EXI2_EnableInterrupts; + gDBCommTable.peek_func = EXI2_Poll; + gDBCommTable.read_func = EXI2_ReadN; + gDBCommTable.write_func = EXI2_WriteN; + gDBCommTable.open_func = EXI2_Reserve; + gDBCommTable.close_func = EXI2_Unreserve; + } - return result; + return result; } void TRKUARTInterruptHandler() { } @@ -89,8 +100,8 @@ void TRKUARTInterruptHandler() { } DSError TRKInitializeIntDrivenUART(u32 param_0, u32 param_1, u32 param_2, volatile u8** param_3) { - gDBCommTable.initialize_func(param_3, TRKEXICallBack); - return DS_NoError; + gDBCommTable.initialize_func(param_3, TRKEXICallBack); + return DS_NoError; } void EnableEXI2Interrupts(void) { gDBCommTable.init_interrupts_func(); } @@ -99,14 +110,59 @@ int TRKPollUART(void) { return gDBCommTable.peek_func(); } UARTError TRKReadUARTN(void* bytes, u32 length) { - int readErr = gDBCommTable.read_func(bytes, length); - return readErr == 0 ? 0 : -1; + int readErr = gDBCommTable.read_func(bytes, length); + return readErr == 0 ? 0 : -1; } UARTError TRKWriteUARTN(const void* bytes, u32 length) { - int writeErr = gDBCommTable.write_func(bytes, length); - return writeErr == 0 ? 0 : -1; + int writeErr = gDBCommTable.write_func(bytes, length); + return writeErr == 0 ? 0 : -1; +} + +UARTError WriteUARTFlush(void) +{ + UARTError readErr = 0; + + while (gWritePos < 0x800) { + gWriteBuf[gWritePos] = 0; + gWritePos++; + } + if (gWritePos != 0) { + readErr = TRKWriteUARTN(gWriteBuf, gWritePos); + gWritePos = 0; + } + return readErr; +} + +UARTError WriteUART1(u8 arg0) +{ + gWriteBuf[gWritePos++] = arg0; + return 0; +} + +UARTError TRKReadUARTPoll(u8* arg0) +{ + UARTError readErr = 4; + + if (gReadPos >= gReadCount) { + gReadPos = 0; + gReadCount = TRKPollUART(); + if (gReadCount > 0) { + if (gReadCount > BUFF_LEN) { + gReadCount = BUFF_LEN; + } + readErr = TRKReadUARTN(gReadBuf, gReadCount); + if (readErr != 0) { + gReadCount = 0; + } + } + } + if (gReadPos < gReadCount) { + *arg0 = gReadBuf[gReadPos++]; + readErr = 0; + } + return readErr; } void ReserveEXI2Port(void) { gDBCommTable.open_func(); } diff --git a/src/TRK_MINNOW_DOLPHIN/msg.c b/src/TRK_MINNOW_DOLPHIN/msg.c index 0ae376eb..09f5de11 100644 --- a/src/TRK_MINNOW_DOLPHIN/msg.c +++ b/src/TRK_MINNOW_DOLPHIN/msg.c @@ -2,8 +2,60 @@ #include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" #include "PowerPC_EABI_Support/MetroTRK/trk.h" +// Incorrect signature? Should be u8. +UARTError WriteUART1(s8 arg0); + DSError TRKMessageSend(TRK_Msg* msg) { - DSError write_err = TRKWriteUARTN(&msg->m_msg, msg->m_msgLength); - return DS_NoError; + u8 var_r30; + u8 var_r28; + u8 var_r28_2; + s32 var_r3; + s32 i; + + var_r30 = 0; + for (i = 0; i < msg->m_msgLength; i++) { + var_r30 = var_r30 + msg->m_msg[i]; + } + var_r30 = var_r30 ^ 0xFF; + var_r3 = WriteUART1(0x7E); + if (var_r3 == 0) { + for (i = 0; i < msg->m_msgLength; i++) { + var_r28 = msg->m_msg[i]; + if (var_r28 == 0x7E || var_r28 == 0x7D) { + var_r3 = WriteUART1(0x7D); + var_r28 ^= 0x20; + if (var_r3 != 0) { + break; + } + } + var_r3 = WriteUART1(var_r28); + if (var_r3 != 0) { + break; + } + } + } + if (var_r3 == 0) { + var_r28_2 = var_r30; + for (i = 0; i < 1; i++) { + if (var_r28_2 == 0x7E || var_r28_2 == 0x7D) { + var_r3 = WriteUART1(0x7D); + var_r28_2 ^= 0x20; + if (var_r3 != 0) { + break; + } + } + var_r3 = WriteUART1(var_r28_2); + if (var_r3 != 0) { + break; + } + } + } + if (var_r3 == 0) { + var_r3 = WriteUART1(0x7E); + } + if (var_r3 == 0) { + var_r3 = WriteUARTFlush(); + } + return var_r3; } diff --git a/src/TRK_MINNOW_DOLPHIN/msgbuf.c b/src/TRK_MINNOW_DOLPHIN/msgbuf.c index 8eb7031c..71702e8c 100644 --- a/src/TRK_MINNOW_DOLPHIN/msgbuf.c +++ b/src/TRK_MINNOW_DOLPHIN/msgbuf.c @@ -34,7 +34,7 @@ DSError TRKGetFreeBuffer(int* msgID, TRKBuffer** outMsg) TRKAcquireMutex(buf); if (!buf->isInUse) { - TRKResetBuffer(buf, TRUE); + TRKResetBuffer(buf, 1); TRKSetBufferUsed(buf, TRUE); error = DS_NoError; *outMsg = buf; @@ -44,6 +44,10 @@ DSError TRKGetFreeBuffer(int* msgID, TRKBuffer** outMsg) TRKReleaseMutex(buf); } + if (error == DS_NoMessageBufferAvailable) { + usr_puts_serial("ERROR : No buffer available\n"); + } + return error; } @@ -68,7 +72,7 @@ void TRKReleaseBuffer(int idx) } } -void TRKResetBuffer(TRKBuffer* msg, BOOL keepData) +void TRKResetBuffer(TRKBuffer* msg, u8 keepData) { msg->length = 0; msg->position = 0; @@ -96,6 +100,7 @@ DSError TRKSetBufferPosition(TRKBuffer* msg, u32 pos) return error; } +#pragma dont_inline on DSError TRKAppendBuffer(TRKBuffer* msg, const void* data, size_t length) { DSError error = DS_NoError; // r31 @@ -129,6 +134,7 @@ DSError TRKAppendBuffer(TRKBuffer* msg, const void* data, size_t length) return error; } +#pragma dont_inline reset DSError TRKReadBuffer(TRKBuffer* msg, void* data, size_t length) { diff --git a/src/TRK_MINNOW_DOLPHIN/msghndlr.c b/src/TRK_MINNOW_DOLPHIN/msghndlr.c index 35c91822..c8ede7e7 100644 --- a/src/TRK_MINNOW_DOLPHIN/msghndlr.c +++ b/src/TRK_MINNOW_DOLPHIN/msghndlr.c @@ -45,8 +45,7 @@ DSError TRKStandardACK(TRKBuffer* buffer, MessageCommandID commandID, DSReplyError replyError) { TRKMessageIntoReply(buffer, commandID, replyError); - TRKSendACK(buffer); - return; + return TRKSendACK(buffer); } DSError TRKDoUnsupported(TRKBuffer* buffer) @@ -107,7 +106,6 @@ DSError TRKDoVersions(TRKBuffer* buffer) else error = TRKSendACK(buffer); } - return error; } DSError TRKDoSupportMask(TRKBuffer* buffer) @@ -140,7 +138,7 @@ DSError TRKDoCPUType(TRKBuffer* buffer) if (buffer->length != 1) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); - return error; + return; } TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); @@ -166,8 +164,6 @@ DSError TRKDoCPUType(TRKBuffer* buffer) error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_CWDSError); else error = TRKSendACK(buffer); - - return error; } DSError TRKDoReadMemory(TRKBuffer* buffer) @@ -175,11 +171,11 @@ DSError TRKDoReadMemory(TRKBuffer* buffer) DSError error; DSReplyError replyError; u8 tempBuf[0x800]; - u32 length; u32 msg_start; + u32 length; u16 msg_length; - u8 msg_options; u8 msg_command; + u8 msg_options; if (buffer->length != 8) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); @@ -257,11 +253,11 @@ DSError TRKDoWriteMemory(TRKBuffer* buffer) DSError error; DSReplyError replyError; u8 tmpBuffer[0x800]; - u32 length; u32 msg_start; + u32 length; u16 msg_length; - u8 msg_options; u8 msg_command; + u8 msg_options; if (buffer->length <= 8) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); @@ -343,14 +339,14 @@ DSError TRKDoReadRegisters(TRKBuffer* buffer) DSReplyError replyError; DSMessageRegisterOptions options; u32 registerDataLength; - u16 msg_lastRegister; u16 msg_firstRegister; - u8 msg_options; + u16 msg_lastRegister; u8 msg_command; + u8 msg_options; if (buffer->length != 6) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); - return error; + return; } TRKSetBufferPosition(buffer, DSREPLY_NoError); error = TRKReadBuffer1_ui8(buffer, &msg_command); @@ -366,13 +362,13 @@ DSError TRKDoReadRegisters(TRKBuffer* buffer) if (msg_firstRegister > msg_lastRegister) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_InvalidRegisterRange); - return error; + return; } if (error == DS_NoError) TRKMessageIntoReply(buffer, DSMSG_ReplyACK, DSREPLY_NoError); - options = (DSMessageRegisterOptions)msg_options; + options = (DSMessageRegisterOptions)(msg_options & 7); switch (options) { case DSREG_Default: error = TRKTargetAccessDefault(msg_firstRegister, msg_lastRegister, @@ -423,8 +419,6 @@ DSError TRKDoReadRegisters(TRKBuffer* buffer) } else { error = TRKSendACK(buffer); } - - return error; } DSError TRKDoWriteRegisters(TRKBuffer* buffer) @@ -433,14 +427,14 @@ DSError TRKDoWriteRegisters(TRKBuffer* buffer) DSReplyError replyError; DSMessageRegisterOptions options; u32 registerDataLength; - u16 msg_lastRegister; u16 msg_firstRegister; - u8 msg_options; + u16 msg_lastRegister; u8 msg_command; + u8 msg_options; if (buffer->length <= 6) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); - return error; + return; } TRKSetBufferPosition(buffer, DSREPLY_NoError); error = TRKReadBuffer1_ui8(buffer, &msg_command); @@ -456,7 +450,7 @@ DSError TRKDoWriteRegisters(TRKBuffer* buffer) if (msg_firstRegister > msg_lastRegister) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_InvalidRegisterRange); - return error; + return; } options = (DSMessageRegisterOptions)msg_options; @@ -516,22 +510,20 @@ DSError TRKDoWriteRegisters(TRKBuffer* buffer) } else { error = TRKSendACK(buffer); } - - return error; } DSError TRKDoFlushCache(TRKBuffer* buffer) { DSError error; DSReplyError replyErr; - u32 msg_end; u32 msg_start; - u8 msg_options; + u32 msg_end; u8 msg_command; + u8 msg_options; if (buffer->length != 10) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); - return error; + return; } TRKSetBufferPosition(buffer, DSREPLY_NoError); @@ -546,7 +538,7 @@ DSError TRKDoFlushCache(TRKBuffer* buffer) if (msg_start > msg_end) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_InvalidMemoryRange); - return error; + return; } if (error == DS_NoError) @@ -570,8 +562,6 @@ DSError TRKDoFlushCache(TRKBuffer* buffer) } else { error = TRKSendACK(buffer); } - - return error; } DSError TRKDoContinue(TRKBuffer* buffer) @@ -581,14 +571,12 @@ DSError TRKDoContinue(TRKBuffer* buffer) error = TRKTargetStopped(); if (error == DS_NoError) { error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NotStopped); - return error; + return; } error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError); if (error == DS_NoError) error = TRKTargetContinue(); - - return error; } DSError TRKDoStep(TRKBuffer* buffer) @@ -601,8 +589,10 @@ DSError TRKDoStep(TRKBuffer* buffer) u32 msg_rangeEnd; u32 pc; - if (buffer->length < 3) - return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + if (buffer->length < 3) { + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return; + } TRKSetBufferPosition(buffer, DSREPLY_NoError); @@ -618,12 +608,14 @@ DSError TRKDoStep(TRKBuffer* buffer) if (msg_count >= 1) { break; } - return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + return; case DSSTEP_IntoRange: case DSSTEP_OverRange: - if (buffer->length != 10) - return TRKStandardACK(buffer, DSMSG_ReplyACK, - DSREPLY_PacketSizeError); + if (buffer->length != 10) { + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_PacketSizeError); + return; + } if (error == DS_NoError) error = TRKReadBuffer1_ui32(buffer, &msg_rangeStart); @@ -634,33 +626,33 @@ DSError TRKDoStep(TRKBuffer* buffer) if (pc >= msg_rangeStart && pc <= msg_rangeEnd) { break; } - return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_ParameterError); + return; default: - return TRKStandardACK(buffer, DSMSG_ReplyACK, - DSREPLY_UnsupportedOptionError); + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_UnsupportedOptionError); + return; } if (!TRKTargetStopped()) { - return TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NotStopped); - } else { - error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError); - if (error == DS_NoError) - switch (msg_options) { - case DSSTEP_IntoCount: - case DSSTEP_OverCount: - error = TRKTargetSingleStep(msg_count, - (msg_options == DSSTEP_OverCount)); - break; - case DSSTEP_IntoRange: - case DSSTEP_OverRange: - error = TRKTargetStepOutOfRange( - msg_rangeStart, msg_rangeEnd, - (msg_options == DSSTEP_OverRange)); - break; - } - - return error; + TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NotStopped); + return; } + + error = TRKStandardACK(buffer, DSMSG_ReplyACK, DSREPLY_NoError); + if (error == DS_NoError) + switch (msg_options) { + case DSSTEP_IntoCount: + case DSSTEP_OverCount: + error = TRKTargetSingleStep(msg_count, + (msg_options == DSSTEP_OverCount)); + break; + case DSSTEP_IntoRange: + case DSSTEP_OverRange: + error = TRKTargetStepOutOfRange( + msg_rangeStart, msg_rangeEnd, + (msg_options == DSSTEP_OverRange)); + break; + } } DSError TRKDoStop(TRKBuffer* b) @@ -687,3 +679,46 @@ DSError TRKDoStop(TRKBuffer* b) return TRKStandardACK(b, DSMSG_ReplyACK, replyError); } + +DSError TRKDoSetOption(TRKBuffer* buffer) { + DSError error; + u8 spA; + u8 sp9; + u8 sp8; + + spA = 0; + sp9 = 0; + sp8 = 0; + TRKSetBufferPosition(buffer, DSREPLY_NoError); + error = TRKReadBuffer1_ui8(buffer, &spA); + if (error == DS_NoError) { + error = TRKReadBuffer1_ui8(buffer, &sp9); + } + if (error == DS_NoError) { + error = TRKReadBuffer1_ui8(buffer, &sp8); + } + if (error != DS_NoError) { + TRKResetBuffer(buffer, 1); + if (buffer->position < 0x880) { + buffer->data[buffer->position++] = 0x80; + buffer->length++; + } + if (buffer->position < 0x880) { + buffer->data[buffer->position++] = 1; + buffer->length++; + } + TRKSendACK(buffer); + } else if (sp9 == 1) { + SetUseSerialIO(sp8); + } + TRKResetBuffer(buffer, 1); + if (buffer->position < 0x880) { + buffer->data[buffer->position++] = 0x80; + buffer->length++; + } + if (buffer->position < 0x880) { + buffer->data[buffer->position++] = 0; + buffer->length++; + } + return TRKSendACK(buffer); +} diff --git a/src/TRK_MINNOW_DOLPHIN/mslsupp.c b/src/TRK_MINNOW_DOLPHIN/mslsupp.c new file mode 100755 index 00000000..cbcfc85f --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/mslsupp.c @@ -0,0 +1,112 @@ +#include "PowerPC_EABI_Support/MetroTRK/trk.h" +#include + +// forward declares +DSIOResult __read_file(u32 handle, u8* buffer, size_t* count, void* ref_con); +DSIOResult __write_file(u32 handle, u8* buffer, size_t* count, void* ref_con); +DSIOResult __access_file(u32 handle, u8* buffer, size_t* count, void* ref_con, MessageCommandID cmd); + +/** + * @note Address: 0x800C0B4C + * @note Size: 0xBC + */ +DSIOResult __read_console(u32 handle, u8* buffer, size_t* count, void* ref_con) +{ + if (GetUseSerialIO() == 0) { + return DS_IOError; + } + return __read_file(DS_Stdin, buffer, count, ref_con); +} + +/** + * @note Address: 0x800C0A90 + * @note Size: 0xBC + */ +DSIOResult __TRK_write_console(u32 handle, u8* buffer, size_t* count, void* ref_con) +{ + if (GetUseSerialIO() == 0) { + return DS_IOError; + } + return __write_file(DS_Stdout, buffer, count, ref_con); +} + +/** + * @note Address: N/A + * @note Size: 0xB4 + */ +DSIOResult __read_file(u32 handle, u8* buffer, size_t* count, void* ref_con) +{ + return __access_file(handle, buffer, count, ref_con, DSMSG_ReadFile); +} + +/** + * @note Address: N/A + * @note Size: 0xB4 + */ +DSIOResult __write_file(u32 handle, u8* buffer, size_t* count, void* ref_con) +{ + return __access_file(handle, buffer, count, ref_con, DSMSG_WriteFile); +} + +/** + * @note Address: N/A + * @note Size: 0x17C + */ +void __open_file(void) +{ + // UNUSED FUNCTION +} + +/** + * @note Address: N/A + * @note Size: 0xDC + */ +void __position_file(void) +{ + // UNUSED FUNCTION +} + +/** + * @note Address: N/A + * @note Size: 0xE0 + */ +void convertFileMode(void) +{ + // UNUSED FUNCTION +} + +/** + * @note Address: N/A + * @note Size: 0xC0 + */ +DSIOResult __access_file(u32 handle, u8* buffer, size_t* count, void* ref_con, MessageCommandID cmd) +{ + size_t countTemp; + u32 r0; + + if (GetTRKConnected() == DS_NoError) { + return DS_IOError; + } + + countTemp = *count; + r0 = TRKAccessFile(cmd, handle, &countTemp, buffer); + *count = countTemp; + + switch ((u8)r0) { + case DS_IONoError: + return DS_IONoError; + case DS_IOEOF: + return DS_IOEOF; + } + + return DS_IOError; +} + +/** + * @note Address: N/A + * @note Size: 0x1D0 + */ +void __open_temp_file(void) +{ + // UNUSED FUNCTION +} diff --git a/src/TRK_MINNOW_DOLPHIN/target_options.c b/src/TRK_MINNOW_DOLPHIN/target_options.c new file mode 100755 index 00000000..22cc3e98 --- /dev/null +++ b/src/TRK_MINNOW_DOLPHIN/target_options.c @@ -0,0 +1,11 @@ +#include "PowerPC_EABI_Support/MetroTRK/trk.h" + +static u8 bUseSerialIO; + +void SetUseSerialIO(u8 sio) { + bUseSerialIO = sio; +} + +u8 GetUseSerialIO(void) { + return bUseSerialIO; +} diff --git a/src/TRK_MINNOW_DOLPHIN/usr_put.c b/src/TRK_MINNOW_DOLPHIN/usr_put.c index eda11e06..7ba2dc21 100644 --- a/src/TRK_MINNOW_DOLPHIN/usr_put.c +++ b/src/TRK_MINNOW_DOLPHIN/usr_put.c @@ -2,4 +2,25 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" #include "PowerPC_EABI_Support/MetroTRK/trk.h" +BOOL usr_puts_serial(const char* msg) +{ + BOOL connect_ = FALSE; + char c; + char buf[2]; + + while (!connect_ && (c = *msg++) != '\0') { + BOOL connect = GetTRKConnected(); + + buf[0] = c; + buf[1] = '\0'; + + SetTRKConnected(FALSE); + OSReport(buf); + + SetTRKConnected(connect); + connect_ = FALSE; + } + return connect_; +} + void usr_put_initialize(void) { } From 23b7af3bc59782cc0d4120e3fa994caaa1c583ea Mon Sep 17 00:00:00 2001 From: mrshigure Date: Mon, 10 Feb 2025 19:49:23 -0800 Subject: [PATCH 162/178] TRK: matched serpoll and support; and making more progress (#565) --- configure.py | 4 +- .../MetroTRK/Portable/support.h | 8 +- .../ppc/Generic/mpc_7xx_603e.h | 2 +- src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c | 2 +- src/TRK_MINNOW_DOLPHIN/serpoll.c | 161 +- src/TRK_MINNOW_DOLPHIN/support.c | 113 +- src/TRK_MINNOW_DOLPHIN/targimpl.c | 1622 +++++++++-------- 7 files changed, 1053 insertions(+), 859 deletions(-) diff --git a/configure.py b/configure.py index bcccf9c6..dfc33f8c 100644 --- a/configure.py +++ b/configure.py @@ -743,11 +743,11 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/nubinit.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msg.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msgbuf.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/serpoll.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/serpoll.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/usr_put.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/dispatch.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msghndlr.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/support.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/support.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mutex_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/notify.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/flush_cache.c"), diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h index 5f8e9fbc..f2b2913d 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h @@ -15,12 +15,12 @@ DSError TRKRequestSend(TRKBuffer* msgBuf, int* bufferId, u32 p1, u32 p2, int p3); DSError HandleOpenFileSupportRequest(const char* path, u8 replyError, - u32* param_3, DSIOResult* ioResult); + u32* param_3, u8* ioResult); -DSError HandleCloseFileSupportRequest(int replyError, DSIOResult* ioResult); +DSError HandleCloseFileSupportRequest(int replyError, u8* ioResult); -DSError HandlePositionFileSupportRequest(DSReplyError replyErr, u32* param_2, - u8 param_3, DSIOResult* ioResult); +DSError HandlePositionFileSupportRequest(u32 replyErr, u32* param_2, + u8 param_3, u8* ioResult); #ifdef __cplusplus } diff --git a/include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h index ec764776..e29725fb 100644 --- a/include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h +++ b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/mpc_7xx_603e.h @@ -7,7 +7,7 @@ extern "C" { #endif -u32 TRKTargetCPUMinorType(void); +u8 TRKTargetCPUMinorType(void); #ifdef __cplusplus } diff --git a/src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c b/src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c index 04d4d3a9..921aa79d 100644 --- a/src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c +++ b/src/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c @@ -245,4 +245,4 @@ lbl_8037149C: #endif // clang-format on } -u32 TRKTargetCPUMinorType(void) { return 0x54; } +u8 TRKTargetCPUMinorType(void) { return 0x54; } diff --git a/src/TRK_MINNOW_DOLPHIN/serpoll.c b/src/TRK_MINNOW_DOLPHIN/serpoll.c index 831644fa..c21fde38 100644 --- a/src/TRK_MINNOW_DOLPHIN/serpoll.c +++ b/src/TRK_MINNOW_DOLPHIN/serpoll.c @@ -9,74 +9,133 @@ static TRKFramingState gTRKFramingState; void* gTRKInputPendingPtr; -MessageBufferID TRKTestForPacket() -{ - int bytes; - int batch; - int err; - TRKBuffer* b; - int id; +static inline BOOL serpoll_inline_00(TRKBuffer* buffer) { + if (buffer->length < 2) { + TRKStandardACK(buffer, DSMSG_ReplyNAK, DSREPLY_PacketSizeError); + if (gTRKFramingState.msgBufID != -1) { + TRKReleaseBuffer(gTRKFramingState.msgBufID); + gTRKFramingState.msgBufID = -1; + } + gTRKFramingState.buffer = NULL; + gTRKFramingState.receiveState = DSRECV_Wait; + return FALSE; + } + buffer->position = 0; + buffer->length--; + return TRUE; +} - bytes = TRKPollUART(); - if (bytes > 0) { - TRKGetFreeBuffer(&id, &b); - if (bytes > TRKMSGBUF_SIZE) { - for (; bytes > 0; bytes -= batch) { - batch = bytes > TRKMSGBUF_SIZE ? TRKMSGBUF_SIZE : bytes; - TRKReadUARTN(b->data, batch); - } - TRKStandardACK(b, 0xff, 6); - } else { - err = TRKReadUARTN(b->data, bytes); - if (err == 0) { - b->length = bytes; - return id; - } - } - } - if (id != -1) { - TRKReleaseBuffer(id); - } - return -1; +MessageBufferID TRKTestForPacket(void) { + s32 var_r29; + s32 var_r3; + s8 sp8; + s32 temp_r3; + + var_r29 = 0; + var_r3 = TRKReadUARTPoll(&sp8); + while (var_r3 == 0 && var_r29 == 0) { + if (gTRKFramingState.receiveState != DSRECV_InFrame) { + gTRKFramingState.isEscape = FALSE; + } + switch (gTRKFramingState.receiveState) { + case DSRECV_Wait: + if (sp8 == 0x7E) { + var_r29 = TRKGetFreeBuffer(&gTRKFramingState.msgBufID, &gTRKFramingState.buffer); + gTRKFramingState.fcsType = 0; + gTRKFramingState.receiveState = DSRECV_Found; + } + break; + case DSRECV_Found: + if (sp8 == 0x7E) { + break; + } + gTRKFramingState.receiveState = DSRECV_InFrame; + /* fallthrough */ + case DSRECV_InFrame: + if (sp8 == 0x7E) { + if (gTRKFramingState.isEscape) { + TRKStandardACK(gTRKFramingState.buffer, DSMSG_ReplyNAK, DSREPLY_EscapeError); + if (gTRKFramingState.msgBufID != -1) { + TRKReleaseBuffer(gTRKFramingState.msgBufID); + gTRKFramingState.msgBufID = -1; + } + gTRKFramingState.buffer = NULL; + gTRKFramingState.receiveState = DSRECV_Wait; + break; + } + if (serpoll_inline_00(gTRKFramingState.buffer)) { + temp_r3 = gTRKFramingState.msgBufID; + gTRKFramingState.msgBufID = -1; + gTRKFramingState.buffer = NULL; + gTRKFramingState.receiveState = DSRECV_Wait; + return temp_r3; + } + gTRKFramingState.receiveState = DSRECV_Wait; + } else { + if (gTRKFramingState.isEscape) { + sp8 ^= 0x20; + gTRKFramingState.isEscape = FALSE; + } else if (sp8 == 0x7D) { + gTRKFramingState.isEscape = TRUE; + break; + } + var_r29 = TRKAppendBuffer1_ui8(gTRKFramingState.buffer, sp8); + gTRKFramingState.fcsType += sp8; + } + break; + case DSRECV_FrameOverflow: + if (sp8 == 0x7E) { + if (gTRKFramingState.msgBufID != -1) { + TRKReleaseBuffer(gTRKFramingState.msgBufID); + gTRKFramingState.msgBufID = -1; + } + gTRKFramingState.buffer = NULL; + gTRKFramingState.receiveState = DSRECV_Wait; + } + break; + } + var_r3 = TRKReadUARTPoll(&sp8); + } + return -1; } void TRKGetInput(void) { - MessageBufferID id; - TRKBuffer* msgBuffer; - u8 command; + TRKBuffer* msgBuffer; + MessageBufferID id; + u8 command; - id = TRKTestForPacket(); - if (id == -1) - return; + id = TRKTestForPacket(); + if (id == -1) + return; - msgBuffer = TRKGetBuffer(id); - TRKSetBufferPosition(msgBuffer, 0); - TRKReadBuffer1_ui8(msgBuffer, &command); - if (command < DSMSG_ReplyACK) { - TRKProcessInput(id); - } else { - TRKReleaseBuffer(id); - } + msgBuffer = TRKGetBuffer(id); + TRKSetBufferPosition(msgBuffer, 0); + TRKReadBuffer1_ui8(msgBuffer, &command); + if (command < DSMSG_ReplyACK) { + TRKProcessInput(id); + } else { + TRKReleaseBuffer(id); + } } void TRKProcessInput(int bufferIdx) { - TRKEvent event; + TRKEvent event; - TRKConstructEvent(&event, NUBEVENT_Request); - gTRKFramingState.msgBufID = -1; - event.msgBufID = bufferIdx; - TRKPostEvent(&event); + TRKConstructEvent(&event, NUBEVENT_Request); + gTRKFramingState.msgBufID = -1; + event.msgBufID = bufferIdx; + TRKPostEvent(&event); } DSError TRKInitializeSerialHandler(void) { - gTRKFramingState.msgBufID = -1; - gTRKFramingState.receiveState = DSRECV_Wait; - gTRKFramingState.isEscape = FALSE; + gTRKFramingState.msgBufID = -1; + gTRKFramingState.receiveState = DSRECV_Wait; + gTRKFramingState.isEscape = FALSE; - return DS_NoError; + return DS_NoError; } DSError TRKTerminateSerialHandler(void) { return DS_NoError; } diff --git a/src/TRK_MINNOW_DOLPHIN/support.c b/src/TRK_MINNOW_DOLPHIN/support.c index 0d31ca10..3f1e54c1 100644 --- a/src/TRK_MINNOW_DOLPHIN/support.c +++ b/src/TRK_MINNOW_DOLPHIN/support.c @@ -28,7 +28,7 @@ DSError TRKSuppAccessFile(u32 file_handle, u8* data, size_t* count, *io_result = DS_IONoError; done = 0; error = DS_NoError; - while (!exit && done < *count && error == DS_NoError && *io_result == 0) { + while (!exit && done < *count && error == DS_NoError && *io_result == DS_IONoError) { if (*count - done > 0x800) { length = 0x800; } else { @@ -175,3 +175,114 @@ DSError TRKRequestSend(TRKBuffer* msgBuf, int* bufferId, u32 p1, u32 p2, int p3) return error; } + +DSError HandleOpenFileSupportRequest(const char* path, u8 replyError, u32* param_3, u8* ioResult) { + int sp10; + int spC; + TRKBuffer* sp8; + TRKBuffer* var_r31; + DSError var_r26; + + *param_3 = 0; + var_r26 = TRKGetFreeBuffer(&spC, &sp8); + if (var_r26 == DS_NoError) { + var_r26 = TRKAppendBuffer1_ui8(sp8, 0xD2); + } + if (var_r26 == DS_NoError) { + var_r26 = TRKAppendBuffer1_ui8(sp8, replyError); + } + if (var_r26 == DS_NoError) { + var_r26 = TRKAppendBuffer1_ui16(sp8, strlen(path) + 1); + } + if (var_r26 == DS_NoError) { + var_r26 = TRKAppendBuffer_ui8(sp8, (u8*) path, strlen(path) + 1); + } + if (var_r26 == DS_NoError) { + *ioResult = 0; + var_r26 = TRKRequestSend(sp8, &sp10, 7, 3, 0); + if (var_r26 == DS_NoError) { + var_r31 = TRKGetBuffer(sp10); + TRKSetBufferPosition(var_r31, 2); + } + if (var_r26 == DS_NoError) { + var_r26 = TRKReadBuffer1_ui8(var_r31, ioResult); + } + if (var_r26 == DS_NoError) { + var_r26 = TRKReadBuffer1_ui32(var_r31, param_3); + } + TRKReleaseBuffer(sp10); + } + TRKReleaseBuffer(spC); + return var_r26; +} + +DSError HandleCloseFileSupportRequest(int replyError, u8* ioResult) { + int sp10; + int spC; + DSError var_r31; + TRKBuffer* sp8; + TRKBuffer* var_r30; + + var_r31 = TRKGetFreeBuffer(&spC, &sp8); + if (var_r31 == DS_NoError) { + var_r31 = TRKAppendBuffer1_ui8(sp8, 0xD3); + } + if (var_r31 == DS_NoError) { + var_r31 = TRKAppendBuffer1_ui32(sp8, replyError); + } + if (var_r31 == DS_NoError) { + *ioResult = DS_IONoError; + var_r31 = TRKRequestSend(sp8, &sp10, 3, 3, 0); + if (var_r31 == DS_NoError) { + var_r30 = TRKGetBuffer(sp10); + TRKSetBufferPosition(var_r30, 2); + } + if (var_r31 == DS_NoError) { + var_r31 = TRKReadBuffer1_ui8(var_r30, ioResult); + } + TRKReleaseBuffer(sp10); + } + TRKReleaseBuffer(spC); + return var_r31; +} + +DSError HandlePositionFileSupportRequest(u32 replyErr, u32* param_2, u8 param_3, u8* ioResult) { + int sp10; + int spC; + TRKBuffer* sp8; + TRKBuffer* var_r31; + DSError var_r27; + + var_r27 = TRKGetFreeBuffer(&spC, &sp8); + if (var_r27 == DS_NoError) { + var_r27 = TRKAppendBuffer1_ui8(sp8, 0xD4); + } + if (var_r27 == DS_NoError) { + var_r27 = TRKAppendBuffer1_ui32(sp8, replyErr); + } + if (var_r27 == DS_NoError) { + var_r27 = TRKAppendBuffer1_ui32(sp8, *param_2); + } + if (var_r27 == DS_NoError) { + var_r27 = TRKAppendBuffer1_ui8(sp8, param_3); + } + if (var_r27 == DS_NoError) { + *ioResult = DS_IONoError; + var_r27 = TRKRequestSend(sp8, &sp10, 3, 3, 0); + if (var_r27 == DS_NoError) { + var_r31 = TRKGetBuffer(sp10); + TRKSetBufferPosition(var_r31, 2); + } + if (var_r27 == DS_NoError) { + var_r27 = TRKReadBuffer1_ui8(var_r31, ioResult); + } + if (var_r27 == DS_NoError) { + var_r27 = TRKReadBuffer1_ui32(var_r31, param_2); + } else { + *param_2 = -1; + } + TRKReleaseBuffer(sp10); + } + TRKReleaseBuffer(spC); + return var_r27; +} diff --git a/src/TRK_MINNOW_DOLPHIN/targimpl.c b/src/TRK_MINNOW_DOLPHIN/targimpl.c index 858024a5..c25b33d4 100644 --- a/src/TRK_MINNOW_DOLPHIN/targimpl.c +++ b/src/TRK_MINNOW_DOLPHIN/targimpl.c @@ -9,32 +9,32 @@ #include "string.h" typedef struct memRange { - u8* start; - u8* end; - BOOL readable; - BOOL writeable; + u8* start; + u8* end; + BOOL readable; + BOOL writeable; } memRange; const memRange gTRKMemMap[1] = { { (u8*)0, (u8*)-1, TRUE, TRUE } }; typedef struct StopInfo_PPC { - u32 PC; - u32 PCInstruction; - u16 exceptionID; + u32 PC; + u32 PCInstruction; + u16 exceptionID; } StopInfo_PPC; typedef struct TRKExceptionStatus { - StopInfo_PPC exceptionInfo; - u8 inTRK; - u8 exceptionDetected; + StopInfo_PPC exceptionInfo; + u8 inTRK; + u8 exceptionDetected; } TRKExceptionStatus; typedef struct TRKStepStatus { - BOOL active; // 0x0 - DSMessageStepOptions type; // 0x4 - u32 count; // 0x8 - u32 rangeStart; // 0xC - u32 rangeEnd; // 0x10 + BOOL active; // 0x0 + DSMessageStepOptions type; // 0x4 + u32 count; // 0x8 + u32 rangeStart; // 0xC + u32 rangeEnd; // 0x10 } TRKStepStatus; ProcessorRestoreFlags_PPC gTRKRestoreFlags = { FALSE, FALSE }; @@ -56,24 +56,24 @@ Default_PPC gTRKSaveState; #define INSTR_NOP 0x60000000 #define INSTR_BLR 0x4E800020 #define INSTR_PSQ_ST(psr, offset, rDest, w, gqr) \ - (0xF0000000 | (psr << 21) | (rDest << 16) | (w << 15) | (gqr << 12) \ - | offset) + (0xF0000000 | (psr << 21) | (rDest << 16) | (w << 15) | (gqr << 12) \ + | offset) #define INSTR_PSQ_L(psr, offset, rSrc, w, gqr) \ - (0xE0000000 | (psr << 21) | (rSrc << 16) | (w << 15) | (gqr << 12) | offset) + (0xE0000000 | (psr << 21) | (rSrc << 16) | (w << 15) | (gqr << 12) | offset) #define INSTR_STW(rSrc, offset, rDest) \ - (0x90000000 | (rSrc << 21) | (rDest << 16) | offset) + (0x90000000 | (rSrc << 21) | (rDest << 16) | offset) #define INSTR_LWZ(rDest, offset, rSrc) \ - (0x80000000 | (rDest << 21) | (rSrc << 16) | offset) + (0x80000000 | (rDest << 21) | (rSrc << 16) | offset) #define INSTR_STFD(fprSrc, offset, rDest) \ - (0xD8000000 | (fprSrc << 21) | (rDest << 16) | offset) + (0xD8000000 | (fprSrc << 21) | (rDest << 16) | offset) #define INSTR_LFD(fprDest, offset, rSrc) \ - (0xC8000000 | (fprDest << 21) | (rSrc << 16) | offset) + (0xC8000000 | (fprDest << 21) | (rSrc << 16) | offset) #define INSTR_MFSPR(rDest, spr) \ - (0x7C000000 | (rDest << 21) | ((spr & 0xFE0) << 6) | ((spr & 0x1F) << 16) \ - | 0x2A6) + (0x7C000000 | (rDest << 21) | ((spr & 0xFE0) << 6) | ((spr & 0x1F) << 16) \ + | 0x2A6) #define INSTR_MTSPR(spr, rSrc) \ - (0x7C000000 | (rSrc << 21) | ((spr & 0xFE0) << 6) | ((spr & 0x1F) << 16) \ - | 0x3A6) + (0x7C000000 | (rSrc << 21) | ((spr & 0xFE0) << 6) | ((spr & 0x1F) << 16) \ + | 0x3A6) #define DSFetch_u32(_p_) (*((u32*)_p_)) #define DSFetch_u64(_p_) (*((u64*)_p_)) @@ -100,113 +100,115 @@ static BOOL TRKTargetCheckStep(); asm u32 __TRK_get_MSR() { #ifdef __MWERKS__ // clang-format off - nofralloc - mfmsr r3 - blr + nofralloc + mfmsr r3 + blr #endif // clang-format on } asm void __TRK_set_MSR(register u32 msr) { #ifdef __MWERKS__ // clang-format off - nofralloc - mtmsr msr - blr + nofralloc + mtmsr msr + blr #endif // clang-format on } +#pragma dont_inline on DSError TRKValidMemory32(const void* addr, size_t length, ValidMemoryOptions readWriteable) { - DSError err = DS_InvalidMemory; /* assume range is invalid */ + DSError err = DS_InvalidMemory; /* assume range is invalid */ - const u8* start; - const u8* end; + const u8* start; + const u8* end; - s32 i; + s32 i; - /* - ** Get start and end addresses for the memory range and - ** verify that they are reasonable. - */ + /* + ** Get start and end addresses for the memory range and + ** verify that they are reasonable. + */ - start = (const u8*)addr; - end = ((const u8*)addr + (length - 1)); + start = (const u8*)addr; + end = ((const u8*)addr + (length - 1)); - if (end < start) - return DS_InvalidMemory; + if (end < start) + return DS_InvalidMemory; - /* - ** Iterate through the gTRKMemMap array to determine if the requested - ** range falls within the valid ranges in the map. - */ + /* + ** Iterate through the gTRKMemMap array to determine if the requested + ** range falls within the valid ranges in the map. + */ - for (i = 0; (i < (s32)(sizeof(gTRKMemMap) / sizeof(memRange))); i++) { - /* - ** If the requested range is not completely above - ** the valid range AND it is not completely below - ** the valid range then it must overlap somewhere. - ** If the requested range overlaps with one of the - ** valid ranges, do some additional checking. - ** - */ + for (i = 0; (i < (s32)(sizeof(gTRKMemMap) / sizeof(memRange))); i++) { + /* + ** If the requested range is not completely above + ** the valid range AND it is not completely below + ** the valid range then it must overlap somewhere. + ** If the requested range overlaps with one of the + ** valid ranges, do some additional checking. + ** + */ - if ((start <= (const u8*)gTRKMemMap[i].end) - && (end >= (const u8*)gTRKMemMap[i].start)) { - /* - ** First, verify that the read/write attributes are - ** acceptable. If so, then recursively check any - ** part of the requested range that falls before or - ** after the valid range. - */ + if ((start <= (const u8*)gTRKMemMap[i].end) + && (end >= (const u8*)gTRKMemMap[i].start)) { + /* + ** First, verify that the read/write attributes are + ** acceptable. If so, then recursively check any + ** part of the requested range that falls before or + ** after the valid range. + */ - if (((readWriteable == VALIDMEM_Readable) - && !gTRKMemMap[i].readable) - || ((readWriteable == VALIDMEM_Writeable) - && !gTRKMemMap[i].writeable)) { - err = DS_InvalidMemory; - } else { - err = DS_NoError; + if (((readWriteable == VALIDMEM_Readable) + && !gTRKMemMap[i].readable) + || ((readWriteable == VALIDMEM_Writeable) + && !gTRKMemMap[i].writeable)) { + err = DS_InvalidMemory; + } else { + err = DS_NoError; - /* - ** If a portion of the requested range falls before - ** the current valid range, then recursively - ** check it. - */ + /* + ** If a portion of the requested range falls before + ** the current valid range, then recursively + ** check it. + */ - if (start < (const u8*)gTRKMemMap[i].start) - err = TRKValidMemory32( - start, (u32)((const u8*)gTRKMemMap[i].start - start), - readWriteable); + if (start < (const u8*)gTRKMemMap[i].start) + err = TRKValidMemory32( + start, (u32)((const u8*)gTRKMemMap[i].start - start), + readWriteable); - /* - ** If a portion of the requested range falls after - ** the current valid range, then recursively - ** check it. - ** Note: Only do this step if the previous check - ** did not detect invalid access. - */ + /* + ** If a portion of the requested range falls after + ** the current valid range, then recursively + ** check it. + ** Note: Only do this step if the previous check + ** did not detect invalid access. + */ - if ((err == DS_NoError) && (end > (const u8*)gTRKMemMap[i].end)) - err = TRKValidMemory32( - (const u8*)gTRKMemMap[i].end, - (u32)(end - (const u8*)gTRKMemMap[i].end), - readWriteable); - } + if ((err == DS_NoError) && (end > (const u8*)gTRKMemMap[i].end)) + err = TRKValidMemory32( + (const u8*)gTRKMemMap[i].end, + (u32)(end - (const u8*)gTRKMemMap[i].end), + readWriteable); + } - break; - } - } + break; + } + } - return err; + return err; } +#pragma dont_inline reset static asm void TRK_ppc_memcpy(register void* dest, register const void* src, register int n, register u32 param_4, register u32 param_5) { #ifdef __MWERKS__ // clang-format off -#define msr r8 -#define byte r9 -#define count r10 +#define msr r8 +#define byte r9 +#define count r10 nofralloc mfmsr msr @@ -240,938 +242,960 @@ out_loop: #endif // clang-format on } +#pragma dont_inline on DSError TRKTargetAccessMemory(void* data, u32 start, size_t* length, MemoryAccessOptions accessOptions, BOOL read) { - DSError error; - u32 target_msr; - void* addr; - u32 trk_msr; - TRKExceptionStatus tempExceptionStatus = gTRKExceptionStatus; - gTRKExceptionStatus.exceptionDetected = FALSE; + DSError error; + u32 target_msr; + void* addr; + u32 trk_msr; + TRKExceptionStatus tempExceptionStatus = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; - addr = (void*)TRKTargetTranslate(start); - error = TRKValidMemory32(addr, *length, - read ? VALIDMEM_Readable : VALIDMEM_Writeable); + addr = (void*)TRKTargetTranslate(start); + error = TRKValidMemory32(addr, *length, + read ? VALIDMEM_Readable : VALIDMEM_Writeable); - if (error != DS_NoError) { - *length = 0; - } else { - target_msr = __TRK_get_MSR(); - trk_msr = target_msr | gTRKCPUState.Extended1.MSR & 0x10; + if (error != DS_NoError) { + *length = 0; + } else { + target_msr = __TRK_get_MSR(); + trk_msr = target_msr | gTRKCPUState.Extended1.MSR & 0x10; - if (read) { - TRK_ppc_memcpy(data, addr, *length, target_msr, trk_msr); - } else { - TRK_ppc_memcpy(addr, data, *length, trk_msr, target_msr); - TRK_flush_cache(addr, *length); - if ((void*)start != addr) { - TRK_flush_cache((void*)start, *length); - } - } - } + if (read) { + TRK_ppc_memcpy(data, addr, *length, target_msr, trk_msr); + } else { + TRK_ppc_memcpy(addr, data, *length, trk_msr, target_msr); + TRK_flush_cache(addr, *length); + if ((void*)start != addr) { + TRK_flush_cache((void*)start, *length); + } + } + } - if (gTRKExceptionStatus.exceptionDetected) { - *length = 0; - error = DS_CWDSException; - } + if (gTRKExceptionStatus.exceptionDetected) { + *length = 0; + error = DS_CWDSException; + } - gTRKExceptionStatus = tempExceptionStatus; - return error; + gTRKExceptionStatus = tempExceptionStatus; + return error; } +#pragma dont_inline reset DSError TRKTargetReadInstruction(void* data, u32 start) { - DSError error; - size_t registersLength = 4; + DSError error; + size_t registersLength = 4; - error = TRKTargetAccessMemory(data, start, ®istersLength, - MEMACCESS_UserMemory, TRUE); + error = TRKTargetAccessMemory(data, start, ®istersLength, + MEMACCESS_UserMemory, TRUE); - if (error == DS_NoError && registersLength != 4) { - error = DS_InvalidMemory; - } + if (error == DS_NoError && registersLength != 4) { + error = DS_InvalidMemory; + } - return error; + return error; } DSError TRKTargetAccessDefault(u32 firstRegister, u32 lastRegister, TRKBuffer* b, size_t* registersLengthPtr, BOOL read) { - DSError error; - u32 count; - u32* data; - TRKExceptionStatus tempExceptionStatus; + DSError error; + u32 count; + u32* data; + TRKExceptionStatus tempExceptionStatus; - if (lastRegister > 0x24) { - return DS_InvalidRegister; - } + if (lastRegister > 0x24) { + return DS_InvalidRegister; + } - tempExceptionStatus = gTRKExceptionStatus; + tempExceptionStatus = gTRKExceptionStatus; - data = gTRKCPUState.Default.GPR + firstRegister; + gTRKExceptionStatus.exceptionDetected = FALSE; - count = (lastRegister - firstRegister) + 1; + data = gTRKCPUState.Default.GPR + firstRegister; - gTRKExceptionStatus.exceptionDetected = FALSE; + count = (lastRegister - firstRegister) + 1; - *registersLengthPtr = count * sizeof(u32); + *registersLengthPtr = count * sizeof(u32); - if (read) { - error = TRKAppendBuffer_ui32(b, data, count); - } else { - error = TRKReadBuffer_ui32(b, data, count); - } + if (read) { + error = TRKAppendBuffer_ui32(b, data, count); + } else { + error = TRKReadBuffer_ui32(b, data, count); + } - if (gTRKExceptionStatus.exceptionDetected) { - *registersLengthPtr = 0; - error = DS_CWDSException; - } + if (gTRKExceptionStatus.exceptionDetected) { + *registersLengthPtr = 0; + error = DS_CWDSException; + } - gTRKExceptionStatus = tempExceptionStatus; - return error; + gTRKExceptionStatus = tempExceptionStatus; + return error; } DSError TRKTargetAccessFP(u32 firstRegister, u32 lastRegister, TRKBuffer* b, size_t* registersLengthPtr, BOOL read) { - u64 temp; - DSError error; - TRKExceptionStatus tempExceptionStatus; - u32 current; + u64 temp; + DSError error; + TRKExceptionStatus tempExceptionStatus; + u32 current; - if (lastRegister > 0x21) { - return DS_InvalidRegister; - } + if (lastRegister > 0x21) { + return DS_InvalidRegister; + } - tempExceptionStatus = gTRKExceptionStatus; - gTRKExceptionStatus.exceptionDetected = FALSE; + tempExceptionStatus = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; - __TRK_set_MSR(__TRK_get_MSR() | 0x2000); + __TRK_set_MSR(__TRK_get_MSR() | 0x2000); - *registersLengthPtr = 0; - error = DS_NoError; + *registersLengthPtr = 0; + error = DS_NoError; - for (current = firstRegister; - (current <= lastRegister) && (error == DS_NoError); - current++, *registersLengthPtr += sizeof(f64)) { - if (read) { - TRKPPCAccessFPRegister(&temp, current, read); - error = TRKAppendBuffer1_ui64(b, temp); - } else { - TRKReadBuffer1_ui64(b, &temp); - error = TRKPPCAccessFPRegister(&temp, current, read); - } - } + for (current = firstRegister; + (current <= lastRegister) && (error == DS_NoError); + current++, *registersLengthPtr += sizeof(f64)) { + if (read) { + TRKPPCAccessFPRegister(&temp, current, read); + error = TRKAppendBuffer1_ui64(b, temp); + } else { + TRKReadBuffer1_ui64(b, &temp); + error = TRKPPCAccessFPRegister(&temp, current, read); + } + } - if (gTRKExceptionStatus.exceptionDetected) { - *registersLengthPtr = 0; - error = DS_CWDSException; - } + if (gTRKExceptionStatus.exceptionDetected) { + *registersLengthPtr = 0; + error = DS_CWDSException; + } - gTRKExceptionStatus = tempExceptionStatus; - return error; + gTRKExceptionStatus = tempExceptionStatus; + return error; } DSError TRKTargetAccessExtended1(u32 firstRegister, u32 lastRegister, TRKBuffer* b, size_t* registersLengthPtr, BOOL read) { - TRKExceptionStatus tempExceptionStatus; - int error; - u32* data; - int count; + TRKExceptionStatus tempExceptionStatus; + int error; + u32* data; + int count; - if (lastRegister > 0x60) { - return DS_InvalidRegister; - } + if (lastRegister > 0x60) { + return DS_InvalidRegister; + } - tempExceptionStatus = gTRKExceptionStatus; - gTRKExceptionStatus.exceptionDetected = FALSE; + tempExceptionStatus = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; - *registersLengthPtr = 0; + *registersLengthPtr = 0; - if (firstRegister <= lastRegister) { - data = (u32*)&gTRKCPUState.Extended1 + firstRegister; - count = lastRegister - firstRegister + 1; - *registersLengthPtr += count * sizeof(u32); + if (firstRegister <= lastRegister) { + data = (u32*)&gTRKCPUState.Extended1 + firstRegister; + count = lastRegister - firstRegister + 1; + *registersLengthPtr += count * sizeof(u32); - if (read) { - error = TRKAppendBuffer_ui32(b, data, count); - } else { - if (data <= &gTRKCPUState.Extended1.TBU - && (data + count - 1) >= &gTRKCPUState.Extended1.TBL) { - gTRKRestoreFlags.TBR = 1; - } + if (read) { + error = TRKAppendBuffer_ui32(b, data, count); + } else { + if (data <= &gTRKCPUState.Extended1.TBU + && (data + count - 1) >= &gTRKCPUState.Extended1.TBL) { + gTRKRestoreFlags.TBR = 1; + } - if (data <= &gTRKCPUState.Extended1.DEC - && (data + count - 1) >= &gTRKCPUState.Extended1.DEC) { - gTRKRestoreFlags.DEC = 1; - } - error = TRKReadBuffer_ui32(b, data, count); - } - } - if (gTRKExceptionStatus.exceptionDetected) { - *registersLengthPtr = 0; - error = DS_CWDSException; - } + if (data <= &gTRKCPUState.Extended1.DEC + && (data + count - 1) >= &gTRKCPUState.Extended1.DEC) { + gTRKRestoreFlags.DEC = 1; + } + error = TRKReadBuffer_ui32(b, data, count); + } + } + if (gTRKExceptionStatus.exceptionDetected) { + *registersLengthPtr = 0; + error = DS_CWDSException; + } - gTRKExceptionStatus = tempExceptionStatus; - return error; + gTRKExceptionStatus = tempExceptionStatus; + return error; } DSError TRKTargetAccessExtended2(u32 firstRegister, u32 lastRegister, TRKBuffer* b, size_t* registerStorageSize, BOOL read) { - TRKExceptionStatus savedException; - u32 i; - u32 value_buf0[1]; - u32 value_buf[2]; - DSError err; - u32 access_func[10]; + TRKExceptionStatus savedException; + u32 i; + u32 value_buf0[1]; + u32 value_buf[2]; + DSError err; + u32 access_func[10]; - if (lastRegister > 0x1f) - return DS_InvalidRegister; + if (lastRegister > 0x1f) + return DS_InvalidRegister; - /* - ** Save any existing exception status and clear the exception flag. - ** This allows detection of exceptions that occur ONLY within this - ** function. - */ + /* + ** Save any existing exception status and clear the exception flag. + ** This allows detection of exceptions that occur ONLY within this + ** function. + */ - savedException = gTRKExceptionStatus; - gTRKExceptionStatus.exceptionDetected = FALSE; + savedException = gTRKExceptionStatus; + gTRKExceptionStatus.exceptionDetected = FALSE; - TRKPPCAccessSPR(value_buf0, SPR_HID2, TRUE); + TRKPPCAccessSPR(value_buf0, SPR_HID2, TRUE); - value_buf0[0] |= 0xA0000000; - TRKPPCAccessSPR(value_buf0, SPR_HID2, FALSE); + value_buf0[0] |= 0xA0000000; + TRKPPCAccessSPR(value_buf0, SPR_HID2, FALSE); - value_buf0[0] = 0; - TRKPPCAccessSPR(value_buf0, SPR_GQR0, FALSE); + value_buf0[0] = 0; + TRKPPCAccessSPR(value_buf0, SPR_GQR0, FALSE); - *registerStorageSize = 0; - err = DS_NoError; + *registerStorageSize = 0; + err = DS_NoError; - for (i = firstRegister; (i <= lastRegister) && (err == DS_NoError); i++) { - if (read) { - err = TRKPPCAccessPairedSingleRegister((u64*)value_buf, i, read); - err = TRKAppendBuffer1_ui64(b, *(u64*)value_buf); - } else { - err = TRKReadBuffer1_ui64(b, (u64*)value_buf); - err = TRKPPCAccessPairedSingleRegister((u64*)value_buf, i, read); - } + for (i = firstRegister; (i <= lastRegister) && (err == DS_NoError); i++) { + if (read) { + err = TRKPPCAccessPairedSingleRegister((u64*)value_buf, i, read); + err = TRKAppendBuffer1_ui64(b, *(u64*)value_buf); + } else { + err = TRKReadBuffer1_ui64(b, (u64*)value_buf); + err = TRKPPCAccessPairedSingleRegister((u64*)value_buf, i, read); + } - *registerStorageSize += sizeof(u64); - } + *registerStorageSize += sizeof(u64); + } - if (gTRKExceptionStatus.exceptionDetected) { - *registerStorageSize = 0; - err = DS_CWDSException; - } + if (gTRKExceptionStatus.exceptionDetected) { + *registerStorageSize = 0; + err = DS_CWDSException; + } - gTRKExceptionStatus = savedException; + gTRKExceptionStatus = savedException; - return err; + return err; } DSError TRKTargetVersions(DSVersions* versions) { - versions->kernelMajor = 0; - versions->kernelMinor = 8; - versions->protocolMajor = 1; - versions->protocolMinor = 10; - return DS_NoError; + versions->kernelMajor = 0; + versions->kernelMinor = 10; + versions->protocolMajor = 1; + versions->protocolMinor = 10; + return DS_NoError; } DSError TRKTargetSupportMask(u8 mask[32]) { - mask[0] = 0x7a; - mask[1] = 0; - mask[2] = 0x4f; - mask[3] = 7; - mask[4] = 0; - mask[5] = 0; - mask[6] = 0; - mask[7] = 0; - mask[8] = 0; - mask[9] = 0; - mask[10] = 0; - mask[0xb] = 0; - mask[0xc] = 0; - mask[0xd] = 0; - mask[0xe] = 0; - mask[0xf] = 0; - mask[0x10] = 1; - mask[0x11] = 0; - mask[0x12] = 3; - mask[0x13] = 0; - mask[0x14] = 0; - mask[0x15] = 0; - mask[0x16] = 0; - mask[0x17] = 0; - mask[0x18] = 0; - mask[0x19] = 0; - mask[0x1a] = 3; - mask[0x1b] = 0; - mask[0x1c] = 0; - mask[0x1d] = 0; - mask[0x1e] = 0; - mask[0x1f] = 0x80; - return DS_NoError; + mask[0] = 0x7a; + mask[1] = 0; + mask[2] = 0x4f; + mask[3] = 7; + mask[4] = 0; + mask[5] = 0; + mask[6] = 0; + mask[7] = 0; + mask[8] = 0; + mask[9] = 0; + mask[10] = 0; + mask[0xb] = 0; + mask[0xc] = 0; + mask[0xd] = 0; + mask[0xe] = 0; + mask[0xf] = 0; + mask[0x10] = 1; + mask[0x11] = 0; + mask[0x12] = 3; + mask[0x13] = 0; + mask[0x14] = 0; + mask[0x15] = 0; + mask[0x16] = 0; + mask[0x17] = 0; + mask[0x18] = 0; + mask[0x19] = 0; + mask[0x1a] = 3; + mask[0x1b] = 0; + mask[0x1c] = 0; + mask[0x1d] = 0; + mask[0x1e] = 0; + mask[0x1f] = 0x80; + return DS_NoError; } extern BOOL gTRKBigEndian; DSError TRKTargetCPUType(DSCPUType* cpuType) { - cpuType->cpuMajor = 0; - cpuType->cpuMinor = TRKTargetCPUMinorType(); - cpuType->bigEndian = gTRKBigEndian; - cpuType->defaultTypeSize = 4; - cpuType->fpTypeSize = 8; - cpuType->extended1TypeSize = 4; - cpuType->extended2TypeSize = 8; - return DS_NoError; + cpuType->cpuMajor = 0; + cpuType->cpuMinor = TRKTargetCPUMinorType(); + cpuType->bigEndian = gTRKBigEndian; + cpuType->defaultTypeSize = 4; + cpuType->fpTypeSize = 8; + cpuType->extended1TypeSize = 4; + cpuType->extended2TypeSize = 8; + return DS_NoError; } asm void TRKInterruptHandler() { #ifdef __MWERKS__ // clang-format off - nofralloc - mtsrr0 r2 - mtsrr1 r4 - mfsprg r4, 3 - mfcr r2 - mtsprg 3, r2 - lis r2, gTRKState@h - ori r2, r2, gTRKState@l - lwz r2, TRKState_PPC.MSR(r2) - ori r2, r2, 0x8002 - xori r2, r2, 0x8002 - sync - mtmsr r2 - sync - lis r2, TRK_saved_exceptionID@h - ori r2, r2, TRK_saved_exceptionID@l - sth r3, 0(r2) - cmpwi r3, 0x500 - bne L_802CF694 - lis r2, gTRKCPUState@h - ori r2, r2, gTRKCPUState@l - mflr r3 - stw r3, ProcessorState_PPC.transport_handler_saved_ra(r2) - bl TRKUARTInterruptHandler - lis r2, gTRKCPUState@h - ori r2, r2, gTRKCPUState@l - lwz r3, ProcessorState_PPC.transport_handler_saved_ra(r2) - mtlr r3 - lis r2, gTRKState@h - ori r2, r2, gTRKState@l - lwz r2, TRKState_PPC.inputPendingPtr(r2) - lbz r2, TRKState_PPC.GPR[0](r2) - cmpwi r2, 0 - beq L_802CF678 - lis r2, gTRKExceptionStatus@h - ori r2, r2, gTRKExceptionStatus@l - lbz r2, TRKExceptionStatus.inTRK(r2) - cmpwi r2, 1 - beq L_802CF678 - lis r2, gTRKState@h - ori r2, r2, gTRKState@l - li r3, 1 - stb r3, TRKState_PPC.inputActivated(r2) - b L_802CF694 + nofralloc + mtsrr0 r2 + mtsrr1 r4 + mfsprg r4, 3 + mfcr r2 + mtsprg 3, r2 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r2, TRKState_PPC.MSR(r2) + ori r2, r2, 0x8002 + xori r2, r2, 0x8002 + sync + mtmsr r2 + sync + lis r2, TRK_saved_exceptionID@h + ori r2, r2, TRK_saved_exceptionID@l + sth r3, 0(r2) + cmpwi r3, 0x500 + bne L_802CF694 + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + mflr r3 + stw r3, ProcessorState_PPC.transport_handler_saved_ra(r2) + bl TRKUARTInterruptHandler + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + lwz r3, ProcessorState_PPC.transport_handler_saved_ra(r2) + mtlr r3 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r2, TRKState_PPC.inputPendingPtr(r2) + lbz r2, TRKState_PPC.GPR[0](r2) + cmpwi r2, 0 + beq L_802CF678 + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + lbz r2, TRKExceptionStatus.inTRK(r2) + cmpwi r2, 1 + beq L_802CF678 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + li r3, 1 + stb r3, TRKState_PPC.inputActivated(r2) + b L_802CF694 L_802CF678: - lis r2, gTRKSaveState@h - ori r2, r2, gTRKSaveState@l - lwz r3, Default_PPC.CR(r2) - mtcrf 0xff, r3 - lwz r3, Default_PPC.GPR[3](r2) - lwz r2, Default_PPC.GPR[2](r2) - rfi + lis r2, gTRKSaveState@h + ori r2, r2, gTRKSaveState@l + lwz r3, Default_PPC.CR(r2) + mtcrf 0xff, r3 + lwz r3, Default_PPC.GPR[3](r2) + lwz r2, Default_PPC.GPR[2](r2) + rfi L_802CF694: - lis r2, TRK_saved_exceptionID@h - ori r2, r2, TRK_saved_exceptionID@l - lhz r3, 0(r2) - lis r2, gTRKExceptionStatus@h - ori r2, r2, gTRKExceptionStatus@l - lbz r2, TRKExceptionStatus.inTRK(r2) - cmpwi r2, 0 - bne TRKExceptionHandler - lis r2, gTRKCPUState@h - ori r2, r2, gTRKCPUState@l - stw r0, ProcessorState_PPC.Default.GPR[0](r2) - stw r1, ProcessorState_PPC.Default.GPR[1](r2) - mfsprg r0, 1 - stw r0, ProcessorState_PPC.Default.GPR[2](r2) - sth r3, ProcessorState_PPC.Extended1.exceptionID(r2) - sth r3, (ProcessorState_PPC.Extended1.exceptionID + 2)(r2) - mfsprg r0, 2 - stw r0, ProcessorState_PPC.Default.GPR[3](r2) - stmw r4, ProcessorState_PPC.Default.GPR[4](r2) - mfsrr0 r27 - mflr r28 - mfsprg r29, 3 - mfctr r30 - mfxer r31 - stmw r27, ProcessorState_PPC.Default.PC(r2) - bl TRKSaveExtended1Block - lis r2, gTRKExceptionStatus@h - ori r2, r2, gTRKExceptionStatus@l - li r3, 1 - stb r3, TRKExceptionStatus.inTRK(r2) - lis r2, gTRKState@h - ori r2, r2, gTRKState@l - lwz r0, TRKState_PPC.MSR(r2) - sync - mtmsr r0 - sync - lwz r0, TRKState_PPC.LR(r2) - mtlr r0 - lwz r0, TRKState_PPC.CTR(r2) - mtctr r0 - lwz r0, TRKState_PPC.XER(r2) - mtxer r0 - lwz r0, TRKState_PPC.DSISR(r2) - mtdsisr r0 - lwz r0, TRKState_PPC.DAR(r2) - mtdar r0 - lmw r3, TRKState_PPC.GPR[3](r2) - lwz r0, TRKState_PPC.GPR[0](r2) - lwz r1, TRKState_PPC.GPR[1](r2) - lwz r2, TRKState_PPC.GPR[2](r2) - b TRKPostInterruptEvent + lis r2, TRK_saved_exceptionID@h + ori r2, r2, TRK_saved_exceptionID@l + lhz r3, 0(r2) + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + lbz r2, TRKExceptionStatus.inTRK(r2) + cmpwi r2, 0 + bne TRKExceptionHandler + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + stw r0, ProcessorState_PPC.Default.GPR[0](r2) + stw r1, ProcessorState_PPC.Default.GPR[1](r2) + mfsprg r0, 1 + stw r0, ProcessorState_PPC.Default.GPR[2](r2) + sth r3, ProcessorState_PPC.Extended1.exceptionID(r2) + sth r3, (ProcessorState_PPC.Extended1.exceptionID + 2)(r2) + mfsprg r0, 2 + stw r0, ProcessorState_PPC.Default.GPR[3](r2) + stmw r4, ProcessorState_PPC.Default.GPR[4](r2) + mfsrr0 r27 + mflr r28 + mfsprg r29, 3 + mfctr r30 + mfxer r31 + stmw r27, ProcessorState_PPC.Default.PC(r2) + bl TRKSaveExtended1Block + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + li r3, 1 + stb r3, TRKExceptionStatus.inTRK(r2) + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r0, TRKState_PPC.MSR(r2) + sync + mtmsr r0 + sync + lwz r0, TRKState_PPC.LR(r2) + mtlr r0 + lwz r0, TRKState_PPC.CTR(r2) + mtctr r0 + lwz r0, TRKState_PPC.XER(r2) + mtxer r0 + lwz r0, TRKState_PPC.DSISR(r2) + mtdsisr r0 + lwz r0, TRKState_PPC.DAR(r2) + mtdar r0 + lmw r3, TRKState_PPC.GPR[3](r2) + lwz r0, TRKState_PPC.GPR[0](r2) + lwz r1, TRKState_PPC.GPR[1](r2) + lwz r2, TRKState_PPC.GPR[2](r2) + b TRKPostInterruptEvent #endif // clang-format on } static asm void TRKExceptionHandler(u16) { #ifdef __MWERKS__ // clang-format off - nofralloc - lis r2, gTRKExceptionStatus@h - ori r2, r2, gTRKExceptionStatus@l - sth r3, TRKExceptionStatus.exceptionInfo.exceptionID(r2) - mfsrr0 r3 - stw r3, TRKExceptionStatus.exceptionInfo.PC(r2) - lhz r3, TRKExceptionStatus.exceptionInfo.exceptionID(r2) - cmpwi r3, 0x200 - beq LAB_00010ba4 - cmpwi r3, 0x300 - beq LAB_00010ba4 - cmpwi r3, 0x400 - beq LAB_00010ba4 - cmpwi r3, 0x600 - beq LAB_00010ba4 - cmpwi r3, 0x700 - beq LAB_00010ba4 - cmpwi r3, 0x800 - beq LAB_00010ba4 - cmpwi r3, 0x1000 - beq LAB_00010ba4 - cmpwi r3, 0x1100 - beq LAB_00010ba4 - cmpwi r3, 0x1200 - beq LAB_00010ba4 - cmpwi r3, 0x1300 - beq LAB_00010ba4 - b LAB_00010bb0 + nofralloc + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + sth r3, TRKExceptionStatus.exceptionInfo.exceptionID(r2) + mfsrr0 r3 + stw r3, TRKExceptionStatus.exceptionInfo.PC(r2) + lhz r3, TRKExceptionStatus.exceptionInfo.exceptionID(r2) + cmpwi r3, 0x200 + beq LAB_00010ba4 + cmpwi r3, 0x300 + beq LAB_00010ba4 + cmpwi r3, 0x400 + beq LAB_00010ba4 + cmpwi r3, 0x600 + beq LAB_00010ba4 + cmpwi r3, 0x700 + beq LAB_00010ba4 + cmpwi r3, 0x800 + beq LAB_00010ba4 + cmpwi r3, 0x1000 + beq LAB_00010ba4 + cmpwi r3, 0x1100 + beq LAB_00010ba4 + cmpwi r3, 0x1200 + beq LAB_00010ba4 + cmpwi r3, 0x1300 + beq LAB_00010ba4 + b LAB_00010bb0 LAB_00010ba4: - mfsrr0 r3 - addi r3, r3, 0x4 - mtsrr0 r3 + mfsrr0 r3 + addi r3, r3, 0x4 + mtsrr0 r3 LAB_00010bb0: - lis r2, gTRKExceptionStatus@h - ori r2, r2, gTRKExceptionStatus@l - li r3, 0x1 - stb r3, TRKExceptionStatus.exceptionDetected(r2) - mfsprg r3, 3 - mtcrf 0xff, r3 - mfsprg r2, 1 - mfsprg r3, 2 - rfi + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + li r3, 0x1 + stb r3, TRKExceptionStatus.exceptionDetected(r2) + mfsprg r3, 3 + mtcrf 0xff, r3 + mfsprg r2, 1 + mfsprg r3, 2 + rfi #endif // clang-format on } void TRKPostInterruptEvent(void) { - NubEventType eventType; - u32 inst; - TRKEvent event; + NubEventType eventType; + u32 inst; + TRKEvent event; - if (gTRKState.inputActivated) { - gTRKState.inputActivated = FALSE; - } else { - switch (gTRKCPUState.Extended1.exceptionID & 0xFFFF) { - case 0xd00: - case 0x700: - TRKTargetReadInstruction(&inst, gTRKCPUState.Default.PC); + if (gTRKState.inputActivated) { + gTRKState.inputActivated = FALSE; + } else { + switch (gTRKCPUState.Extended1.exceptionID & 0xFFFF) { + case 0xd00: + case 0x700: + TRKTargetReadInstruction(&inst, gTRKCPUState.Default.PC); - if (inst == 0xfe00000) { - eventType = NUBEVENT_Support; - } else { - eventType = NUBEVENT_Breakpoint; - } - break; - default: - eventType = NUBEVENT_Exception; - break; - } + if (inst == 0xfe00000) { + eventType = NUBEVENT_Support; + } else { + eventType = NUBEVENT_Breakpoint; + } + break; + default: + eventType = NUBEVENT_Exception; + break; + } - TRKConstructEvent(&event, eventType); - TRKPostEvent(&event); - } + TRKConstructEvent(&event, eventType); + TRKPostEvent(&event); + } } asm void TRKSwapAndGo() { #ifdef __MWERKS__ // clang-format off - nofralloc - lis r3, gTRKState@h - ori r3, r3, gTRKState@l - stmw r0, TRKState_PPC.GPR[0](r3) - mfmsr r0 - stw r0, TRKState_PPC.MSR(r3) - mflr r0 - stw r0, TRKState_PPC.LR(r3) - mfctr r0 - stw r0, TRKState_PPC.CTR(r3) - mfxer r0 - stw r0, TRKState_PPC.XER(r3) - mfdsisr r0 - stw r0, TRKState_PPC.DSISR(r3) - mfdar r0 - stw r0, TRKState_PPC.DAR(r3) - li r1, -0x7ffe - nor r1, r1, r1 - mfmsr r3 - and r3, r3, r1 - mtmsr r3 - lis r2, gTRKState@h - ori r2, r2, gTRKState@l - lwz r2, TRKState_PPC.inputPendingPtr(r2) - lbz r2, TRKState_PPC.GPR[0](r2) - cmpwi r2, 0 - beq L_802CF930 - lis r2, gTRKState@h - ori r2, r2, gTRKState@l - li r3, 1 - stb r3, TRKState_PPC.inputActivated(r2) - b TRKInterruptHandlerEnableInterrupts + nofralloc + lis r3, gTRKState@h + ori r3, r3, gTRKState@l + stmw r0, TRKState_PPC.GPR[0](r3) + mfmsr r0 + stw r0, TRKState_PPC.MSR(r3) + mflr r0 + stw r0, TRKState_PPC.LR(r3) + mfctr r0 + stw r0, TRKState_PPC.CTR(r3) + mfxer r0 + stw r0, TRKState_PPC.XER(r3) + mfdsisr r0 + stw r0, TRKState_PPC.DSISR(r3) + mfdar r0 + stw r0, TRKState_PPC.DAR(r3) + li r1, -0x7ffe + nor r1, r1, r1 + mfmsr r3 + and r3, r3, r1 + mtmsr r3 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r2, TRKState_PPC.inputPendingPtr(r2) + lbz r2, TRKState_PPC.GPR[0](r2) + cmpwi r2, 0 + beq L_802CF930 + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + li r3, 1 + stb r3, TRKState_PPC.inputActivated(r2) + b TRKInterruptHandlerEnableInterrupts L_802CF930: - lis r2, gTRKExceptionStatus@h - ori r2, r2, gTRKExceptionStatus@l - li r3, 0 - stb r3, 0xc(r2) - bl TRKRestoreExtended1Block - lis r2, gTRKCPUState@h - ori r2, r2, gTRKCPUState@l - lmw r27, ProcessorState_PPC.Default.PC(r2) - mtsrr0 r27 - mtlr r28 - mtcrf 0xff, r29 - mtctr r30 - mtxer r31 - lmw r3, ProcessorState_PPC.Default.GPR[3](r2) - lwz r0, ProcessorState_PPC.Default.GPR[0](r2) - lwz r1, ProcessorState_PPC.Default.GPR[1](r2) - lwz r2, ProcessorState_PPC.Default.GPR[2](r2) - rfi + lis r2, gTRKExceptionStatus@h + ori r2, r2, gTRKExceptionStatus@l + li r3, 0 + stb r3, 0xc(r2) + bl TRKRestoreExtended1Block + lis r2, gTRKCPUState@h + ori r2, r2, gTRKCPUState@l + lmw r27, ProcessorState_PPC.Default.PC(r2) + mtsrr0 r27 + mtlr r28 + mtcrf 0xff, r29 + mtctr r30 + mtxer r31 + lmw r3, ProcessorState_PPC.Default.GPR[3](r2) + lwz r0, ProcessorState_PPC.Default.GPR[0](r2) + lwz r1, ProcessorState_PPC.Default.GPR[1](r2) + lwz r2, ProcessorState_PPC.Default.GPR[2](r2) + rfi #endif // clang-format on } asm void TRKInterruptHandlerEnableInterrupts(void) { #ifdef __MWERKS__ // clang-format off - nofralloc; - lis r2, gTRKState@h - ori r2, r2, gTRKState@l - lwz r0, TRKState_PPC.MSR(r2) - sync - mtmsr r0 - sync - lwz r0, TRKState_PPC.LR(r2) - mtlr r0 - lwz r0, TRKState_PPC.CTR(r2) - mtctr r0 - lwz r0, TRKState_PPC.XER(r2) - mtxer r0 - lwz r0, TRKState_PPC.DSISR(r2) - mtdsisr r0 - lwz r0, TRKState_PPC.DAR(r2) - mtdar r0 - lmw r3, TRKState_PPC.GPR[3](r2) - lwz r0, TRKState_PPC.GPR[0](r2) - lwz r1, TRKState_PPC.GPR[1](r2) - lwz r2, TRKState_PPC.GPR[2](r2) - b TRKPostInterruptEvent + nofralloc; + lis r2, gTRKState@h + ori r2, r2, gTRKState@l + lwz r0, TRKState_PPC.MSR(r2) + sync + mtmsr r0 + sync + lwz r0, TRKState_PPC.LR(r2) + mtlr r0 + lwz r0, TRKState_PPC.CTR(r2) + mtctr r0 + lwz r0, TRKState_PPC.XER(r2) + mtxer r0 + lwz r0, TRKState_PPC.DSISR(r2) + mtdsisr r0 + lwz r0, TRKState_PPC.DAR(r2) + mtdar r0 + lmw r3, TRKState_PPC.GPR[3](r2) + lwz r0, TRKState_PPC.GPR[0](r2) + lwz r1, TRKState_PPC.GPR[1](r2) + lwz r2, TRKState_PPC.GPR[2](r2) + b TRKPostInterruptEvent #endif // clang-format on } DSError TRKTargetInterrupt(TRKEvent* event) { - DSError error = DS_NoError; - switch (event->eventType) { - case NUBEVENT_Breakpoint: - case NUBEVENT_Exception: - if (TRKTargetCheckStep() == FALSE) { - TRKTargetSetStopped(TRUE); - error = TRKDoNotifyStopped(DSMSG_NotifyStopped); - } - break; - default: - break; - } + DSError error = DS_NoError; + switch (event->eventType) { + case NUBEVENT_Breakpoint: + case NUBEVENT_Exception: + if (TRKTargetCheckStep() == FALSE) { + TRKTargetSetStopped(TRUE); + error = TRKDoNotifyStopped(DSMSG_NotifyStopped); + } + break; + default: + break; + } - return error; + return error; } DSError TRKTargetAddStopInfo(TRKBuffer* buffer) { - DSError error; - u32 instruction; + DSError error; + u32 instruction; + s32 i; - error = TRKAppendBuffer1_ui32(buffer, gTRKCPUState.Default.PC); - if (error == 0) { - error = TRKTargetReadInstruction(&instruction, gTRKCPUState.Default.PC); - } - if (error == 0) - error = TRKAppendBuffer1_ui32(buffer, instruction); - if (error == 0) - error - = TRKAppendBuffer1_ui16(buffer, gTRKCPUState.Extended1.exceptionID); - return error; + error = TRKAppendBuffer1_ui32(buffer, gTRKCPUState.Default.PC); + if (error == DS_NoError) { + error = TRKTargetReadInstruction(&instruction, gTRKCPUState.Default.PC); + } + if (error == DS_NoError) + error = TRKAppendBuffer1_ui32(buffer, instruction); + if (error == DS_NoError) + error = TRKAppendBuffer1_ui16(buffer, gTRKCPUState.Extended1.exceptionID); + + if (error == DS_NoError) { + for (i = 0; i < 32; i++) { + error = TRKAppendBuffer1_ui32(buffer, (u16) gTRKCPUState.Default.GPR[i]); + } + for (i = 0; i < 32; i++) { + error = TRKAppendBuffer1_ui64(buffer, (u16) gTRKCPUState.Float.FPR[i]); + } + } + + return error; } DSError TRKTargetAddExceptionInfo(TRKBuffer* buffer) { - DSError error; - u32 local_10; + DSError error; + u32 local_10; - error = TRKAppendBuffer1_ui32(buffer, gTRKExceptionStatus.exceptionInfo.PC); - if (error == 0) { - error = TRKTargetReadInstruction(&local_10, - gTRKExceptionStatus.exceptionInfo.PC); - } - if (error == 0) { - error = TRKAppendBuffer1_ui32(buffer, local_10); - } - if (error == 0) { - error = TRKAppendBuffer1_ui16( - buffer, gTRKExceptionStatus.exceptionInfo.exceptionID); - } + error = TRKAppendBuffer1_ui32(buffer, gTRKExceptionStatus.exceptionInfo.PC); + if (error == 0) { + error = TRKTargetReadInstruction(&local_10, + gTRKExceptionStatus.exceptionInfo.PC); + } + if (error == 0) { + error = TRKAppendBuffer1_ui32(buffer, local_10); + } + if (error == 0) { + error = TRKAppendBuffer1_ui16( + buffer, gTRKExceptionStatus.exceptionInfo.exceptionID); + } - return error; + return error; } static DSError TRKTargetEnableTrace(BOOL val) { - if (val) { - gTRKCPUState.Extended1.MSR = (gTRKCPUState.Extended1.MSR | 0x400); - } else { - gTRKCPUState.Extended1.MSR = (gTRKCPUState.Extended1.MSR & ~0x400); - } - return DS_NoError; + if (val) { + gTRKCPUState.Extended1.MSR = (gTRKCPUState.Extended1.MSR | 0x400); + } else { + gTRKCPUState.Extended1.MSR = (gTRKCPUState.Extended1.MSR & ~0x400); + } + return DS_NoError; } static BOOL TRKTargetStepDone() { - BOOL result = TRUE; + BOOL result = TRUE; - if (gTRKStepStatus.active - && ((u16)gTRKCPUState.Extended1.exceptionID) == PPC_Trace) { - switch (gTRKStepStatus.type) { - case DSSTEP_IntoCount: - if (gTRKStepStatus.count > 0) { - result = FALSE; - } - break; - case DSSTEP_IntoRange: - if (gTRKCPUState.Default.PC >= gTRKStepStatus.rangeStart - && gTRKCPUState.Default.PC <= gTRKStepStatus.rangeEnd) { - result = FALSE; - } - break; - default: - break; - } - } + if (gTRKStepStatus.active + && ((u16)gTRKCPUState.Extended1.exceptionID) == PPC_Trace) { + switch (gTRKStepStatus.type) { + case DSSTEP_IntoCount: + if (gTRKStepStatus.count > 0) { + result = FALSE; + } + break; + case DSSTEP_IntoRange: + if (gTRKCPUState.Default.PC >= gTRKStepStatus.rangeStart + && gTRKCPUState.Default.PC <= gTRKStepStatus.rangeEnd) { + result = FALSE; + } + break; + default: + break; + } + } - return result; + return result; } static DSError TRKTargetDoStep() { - gTRKStepStatus.active = TRUE; - TRKTargetEnableTrace(TRUE); + gTRKStepStatus.active = TRUE; + TRKTargetEnableTrace(TRUE); - if (gTRKStepStatus.type == DSSTEP_IntoCount - || gTRKStepStatus.type == DSSTEP_OverCount) { - gTRKStepStatus.count--; - } + if (gTRKStepStatus.type == DSSTEP_IntoCount + || gTRKStepStatus.type == DSSTEP_OverCount) { + gTRKStepStatus.count--; + } - TRKTargetSetStopped(FALSE); - return DS_NoError; + TRKTargetSetStopped(FALSE); + return DS_NoError; } static BOOL TRKTargetCheckStep() { - if (gTRKStepStatus.active) { - TRKTargetEnableTrace(FALSE); + if (gTRKStepStatus.active) { + TRKTargetEnableTrace(FALSE); - if (TRKTargetStepDone()) { - gTRKStepStatus.active = FALSE; - } else { - TRKTargetDoStep(); - } - } + if (TRKTargetStepDone()) { + gTRKStepStatus.active = FALSE; + } else { + TRKTargetDoStep(); + } + } - return gTRKStepStatus.active; + return gTRKStepStatus.active; } DSError TRKTargetSingleStep(u32 count, BOOL stepOver) { - DSError error = DS_NoError; + DSError error = DS_NoError; - if (stepOver) { - error = DS_UnsupportedError; - } else { - gTRKStepStatus.count = count; - gTRKStepStatus.type = DSSTEP_IntoCount; - error = TRKTargetDoStep(); - } + if (stepOver) { + error = DS_UnsupportedError; + } else { + gTRKStepStatus.type = DSSTEP_IntoCount; + gTRKStepStatus.count = count; + error = TRKTargetDoStep(); + } - return error; + return error; } DSError TRKTargetStepOutOfRange(u32 rangeStart, u32 rangeEnd, BOOL stepOver) { - DSError error = DS_NoError; + DSError error = DS_NoError; - if (stepOver) { - // Stepping over isn't supported for PowerPC - error = DS_UnsupportedError; - } else { - gTRKStepStatus.type = DSSTEP_IntoRange; - // gTRKStepStatus.active = TRUE; - gTRKStepStatus.rangeStart = rangeStart; - gTRKStepStatus.rangeEnd = rangeEnd; - error = TRKTargetDoStep(); - } + if (stepOver) { + // Stepping over isn't supported for PowerPC + error = DS_UnsupportedError; + } else { + gTRKStepStatus.type = DSSTEP_IntoRange; + // gTRKStepStatus.active = TRUE; + gTRKStepStatus.rangeStart = rangeStart; + gTRKStepStatus.rangeEnd = rangeEnd; + error = TRKTargetDoStep(); + } - return error; + return error; } u32 TRKTargetGetPC() { return gTRKCPUState.Default.PC; } -DSError TRKTargetSupportRequest() -{ - DSError error; - size_t* length; - DSIOResult ioResult; - MessageCommandID commandId; - TRKEvent event; +DSError TRKTargetSupportRequest(void) { + DSError error; + u32 spC; + size_t* length; + MessageCommandID commandId; + TRKEvent event; + u8 ioResult; - commandId = gTRKCPUState.Default.GPR[3]; - if (commandId != DSMSG_ReadFile && commandId != DSMSG_WriteFile) { - TRKConstructEvent(&event, 4); - TRKPostEvent(&event); - return DS_NoError; - } else { - length = (size_t*)gTRKCPUState.Default.GPR[5]; - error = TRKSuppAccessFile((u8)gTRKCPUState.Default.GPR[4], - (u8*)gTRKCPUState.Default.GPR[6], length, - &ioResult, TRUE, commandId == DSMSG_ReadFile); - - if (ioResult == DS_IONoError && error != DS_NoError) { - ioResult = DS_IOError; - } - - gTRKCPUState.Default.GPR[3] = ioResult; - - if (commandId == DSMSG_ReadFile) { - TRK_flush_cache((void*)gTRKCPUState.Default.GPR[6], *length); - } - } - - gTRKCPUState.Default.PC += 4; - return error; + commandId = (u8) gTRKCPUState.Default.GPR[3]; + if (commandId != DSMSG_ReadFile && commandId != DSMSG_WriteFile && commandId != DSMSG_OpenFile && commandId != DSMSG_CloseFile && commandId != DSMSG_PositionFile) { + TRKConstructEvent(&event, NUBEVENT_Exception); + TRKPostEvent(&event); + return DS_NoError; + } + if (commandId == DSMSG_OpenFile) { + error = HandleOpenFileSupportRequest((char*) gTRKCPUState.Default.GPR[4], gTRKCPUState.Default.GPR[5], (u32*) gTRKCPUState.Default.GPR[6], &ioResult); + if (ioResult == DS_IONoError && error != DS_NoError) { + ioResult = DS_IOError; + } + gTRKCPUState.Default.GPR[3] = ioResult; + } else if (commandId == DSMSG_CloseFile) { + error = HandleCloseFileSupportRequest(gTRKCPUState.Default.GPR[4], &ioResult); + if (ioResult == DS_IONoError && error != DS_NoError) { + ioResult = DS_IOError; + } + gTRKCPUState.Default.GPR[3] = ioResult; + } else if (commandId == DSMSG_PositionFile) { + spC = *((u32*) gTRKCPUState.Default.GPR[5]); + error = HandlePositionFileSupportRequest(gTRKCPUState.Default.GPR[4], &spC, gTRKCPUState.Default.GPR[6], &ioResult); + if (ioResult == DS_IONoError && error != DS_NoError) { + ioResult = DS_IOError; + } + gTRKCPUState.Default.GPR[3] = ioResult; + *((u32*) gTRKCPUState.Default.GPR[5]) = spC; + } else { + length = (size_t*) gTRKCPUState.Default.GPR[5]; + error = TRKSuppAccessFile((u8) gTRKCPUState.Default.GPR[4], (u8*) gTRKCPUState.Default.GPR[6], length, (DSIOResult*) &ioResult, TRUE, commandId == DSMSG_ReadFile); + if (ioResult == DS_IONoError && error != DS_NoError) { + ioResult = DS_IOError; + } + gTRKCPUState.Default.GPR[3] = ioResult; + if (commandId == DSMSG_ReadFile) { + TRK_flush_cache((void*) gTRKCPUState.Default.GPR[6], *length); + } + } + gTRKCPUState.Default.PC += 4; + return error; } DSError TRKTargetFlushCache(u8, void* start, void* end) { - if (start < end) { - TRK_flush_cache(start, (u8*)end - (u8*)start); - return DS_NoError; - } + if (start < end) { + TRK_flush_cache(start, (u8*)end - (u8*)start); + return DS_NoError; + } - return DS_InvalidMemory; + return DS_InvalidMemory; } BOOL TRKTargetStopped() { return gTRKState.isStopped; } void TRKTargetSetStopped(unsigned int stopped) { - gTRKState.isStopped = stopped; + gTRKState.isStopped = stopped; } u32 TRKTargetStop() { - TRKTargetSetStopped(1); - return 0; + TRKTargetSetStopped(1); + return 0; } DSError TRKPPCAccessSPR(void* value, u32 spr_register_num, BOOL read) { - /* Initialize instruction array with nop */ + /* Initialize instruction array with nop */ - u32 access_func[5] - = { INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP }; - /* - ** Construct a small assembly function to perform the - ** requested access and call it. The read/write function - ** is in the form: - ** - ** read: - ** mfspr r4, spr_register_num - ** stw r4, 0(r3) - ** blr - ** - ** write: - ** lwz r4, 0(r3) - ** mtspr spr_register_num, r4 - ** blr - ** - */ + u32 access_func[10] = { + INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, + INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP + }; + /* + ** Construct a small assembly function to perform the + ** requested access and call it. The read/write function + ** is in the form: + ** + ** read: + ** mfspr r4, spr_register_num + ** stw r4, 0(r3) + ** blr + ** + ** write: + ** lwz r4, 0(r3) + ** mtspr spr_register_num, r4 + ** blr + ** + */ - if (read) { - access_func[0] = INSTR_MFSPR(4, spr_register_num); - access_func[1] = (u32)INSTR_STW(4, 0, 3); - } else { - access_func[0] = (u32)INSTR_LWZ(4, 0, 3); - access_func[1] = INSTR_MTSPR(spr_register_num, 4); - } + if (read) { + access_func[0] = INSTR_MFSPR(4, spr_register_num); + access_func[1] = (u32)INSTR_STW(4, 0, 3); + } else { + access_func[0] = (u32)INSTR_LWZ(4, 0, 3); + access_func[1] = INSTR_MTSPR(spr_register_num, 4); + } - return TRKPPCAccessSpecialReg(value, access_func, read); + return TRKPPCAccessSpecialReg(value, access_func, read); } DSError TRKPPCAccessPairedSingleRegister(void* srcDestPtr, u32 psr, BOOL read) { - // all nop by default - u32 instructionData[] - = { INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP }; + // all nop by default + u32 instructionData[] = { + INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, + INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP + }; - if (read) { - instructionData[0] - = INSTR_PSQ_ST(psr, 0, 3, 0, 0); // psq_st psr, 0(r3), 0, 0 - } else { - instructionData[0] - = INSTR_PSQ_L(psr, 0, 3, 0, 0); // psq_l psr, 0(r3), 0, 0 - } + if (read) { + instructionData[0] + = INSTR_PSQ_ST(psr, 0, 3, 0, 0); // psq_st psr, 0(r3), 0, 0 + } else { + instructionData[0] + = INSTR_PSQ_L(psr, 0, 3, 0, 0); // psq_l psr, 0(r3), 0, 0 + } - return TRKPPCAccessSpecialReg(srcDestPtr, instructionData, read); + return TRKPPCAccessSpecialReg(srcDestPtr, instructionData, read); } +#pragma dont_inline on DSError TRKPPCAccessFPRegister(void* srcDestPtr, u32 fpr, BOOL read) { - DSError error = DS_NoError; - // all nop by default - u32 instructionData1[] - = { INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP }; + DSError error = DS_NoError; + // all nop by default + u32 instructionData1[] = { + INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, + INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP, INSTR_NOP + }; - if (fpr < 0x20) { - if (read) { - instructionData1[0] = INSTR_STFD(fpr, 0, 3); // stfd fpr, 0(r3) - } else { - instructionData1[0] = INSTR_LFD(fpr, 0, 3); // lfd fpr, 0(r3) - } + if (fpr < 0x20) { + if (read) { + instructionData1[0] = INSTR_STFD(fpr, 0, 3); // stfd fpr, 0(r3) + } else { + instructionData1[0] = INSTR_LFD(fpr, 0, 3); // lfd fpr, 0(r3) + } - error = TRKPPCAccessSpecialReg(srcDestPtr, instructionData1, read); - } else if (fpr == 0x20) { - if (read) { - instructionData1[0] = INSTR_STFD(1, 0, 4); // stfd f1, 0(r4) - instructionData1[1] = 0xfc20048e; // mtfsf 0xff, f1 - instructionData1[2] = INSTR_STFD(1, 0, 3); // stfd f1, 0(r3) - instructionData1[3] = INSTR_LFD(1, 0, 4); // lfd f1, 0(r4) - } else { - instructionData1[0] = INSTR_STFD(1, 0, 4); // stfd f1, 0(r4) - instructionData1[1] = INSTR_LFD(1, 0, 3); // lfd f1, 0(r4) - instructionData1[2] = 0xfdfe0d8e; // mtfsf 0xff, f1 - instructionData1[3] = INSTR_LFD(1, 0, 4); // lfd f1, 0(r4) - } - error = TRKPPCAccessSpecialReg(srcDestPtr, instructionData1, read); - *(u64*)srcDestPtr &= 0xFFFFFFFF; - } else if (fpr == 0x21) { - if (!read) { - *(u32*)srcDestPtr = *((u32*)(srcDestPtr) + 1); - } + error = TRKPPCAccessSpecialReg(srcDestPtr, instructionData1, read); + } else if (fpr == 0x20) { + *(u64*)srcDestPtr &= 0xFFFFFFFF; + } else if (fpr == 0x21) { + if (!read) { + *(u32*)srcDestPtr = *((u32*)(srcDestPtr) + 1); + } + error = TRKPPCAccessSPR(srcDestPtr, 1022, read); + if (read) { + DSFetch_u64(srcDestPtr) = DSFetch_u32(srcDestPtr) & 0xffffffffLL; + } + } - error = TRKPPCAccessSPR(srcDestPtr, SPR_FPECR, read); - if (read) { - DSFetch_u64(srcDestPtr) = DSFetch_u32(srcDestPtr) & 0xffffffffLL; - } - } - - return error; + return error; } +#pragma dont_inline reset #define DEBUG_VECTORREG_ACCESS 0 DSError TRKPPCAccessSpecialReg(void* value, u32* access_func, BOOL read) { - typedef void (*asm_access_type)(void*, void*); + typedef void (*asm_access_type)(void*, void*); - asm_access_type asm_access; + asm_access_type asm_access; - /* - ** Construct a small assembly function to perform the - ** requested access and call it. The read/write function - ** is in the form: - ** - ** - ** blr - */ + /* + ** Construct a small assembly function to perform the + ** requested access and call it. The read/write function + ** is in the form: + ** + ** + ** blr + */ - /* - ** Put blr instruction at the end of access function (it should be - ** a 5-instruction array w/the last one empty). - */ + /* + ** Put blr instruction at the end of access function (it should be + ** a 5-instruction array w/the last one empty). + */ - access_func[9] = INSTR_BLR; + access_func[9] = INSTR_BLR; - /* - ** Now that the instruction array is built, get a function pointer to it. - */ + /* + ** Now that the instruction array is built, get a function pointer to it. + */ - asm_access = (asm_access_type)access_func; + asm_access = (asm_access_type)access_func; #if DEBUG_VECTORREG_ACCESS - __puts("\r\nasm_access: "); - __puthex8((u32)asm_access); - __puts(" access_func: "); - __puthex8((u32)access_func); + __puts("\r\nasm_access: "); + __puthex8((u32)asm_access); + __puts(" access_func: "); + __puthex8((u32)access_func); - for (i = 0; i < 10; i++) { - __puts("\r\ninst["); - __puthex2(i); - __puts("]: "); - __puthex8(access_func[i]); - __puts(" ; "); - __puthex8(*((u32*)asm_access + i)); - } + for (i = 0; i < 10; i++) { + __puts("\r\ninst["); + __puthex2(i); + __puts("]: "); + __puthex8(access_func[i]); + __puts(" ; "); + __puthex8(*((u32*)asm_access + i)); + } - __puts("\r\n"); + __puts("\r\n"); #endif - // Flush cache - TRK_flush_cache(access_func, (sizeof(access_func) * 10)); - (*asm_access)((u32*)value, (void*)&TRKvalue128_temp); + // Flush cache + TRK_flush_cache(access_func, (sizeof(access_func) * 10)); + (*asm_access)((u32*)value, (void*)&TRKvalue128_temp); - return DS_NoError; + return DS_NoError; } void TRKTargetSetInputPendingPtr(void* ptr) { gTRKState.inputPendingPtr = ptr; } From dc4d365f1a9eadf9d7e4b7111b98cebcecdaf5bb Mon Sep 17 00:00:00 2001 From: mrshigure Date: Mon, 17 Feb 2025 17:18:23 -0800 Subject: [PATCH 163/178] TRK: matched dispatch.c (US) (#566) --- configure.py | 2 +- src/TRK_MINNOW_DOLPHIN/dispatch.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/configure.py b/configure.py index dfc33f8c..398ade75 100644 --- a/configure.py +++ b/configure.py @@ -745,7 +745,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msgbuf.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/serpoll.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/usr_put.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/dispatch.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/dispatch.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msghndlr.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/support.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mutex_TRK.c"), diff --git a/src/TRK_MINNOW_DOLPHIN/dispatch.c b/src/TRK_MINNOW_DOLPHIN/dispatch.c index 76014bb6..9e3fc1e2 100644 --- a/src/TRK_MINNOW_DOLPHIN/dispatch.c +++ b/src/TRK_MINNOW_DOLPHIN/dispatch.c @@ -16,7 +16,7 @@ struct DispatchEntry gTRKDispatchTable[33] = { { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoReadMemory }, { &TRKDoWriteMemory }, { &TRKDoReadRegisters }, { &TRKDoWriteRegisters }, { &TRKDoUnsupported }, - { &TRKDoUnsupported }, { &TRKDoFlushCache }, { &TRKDoUnsupported }, + { &TRKDoUnsupported }, { &TRKDoFlushCache }, { &TRKDoSetOption }, { &TRKDoContinue }, { &TRKDoStep }, { &TRKDoStop }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, { &TRKDoUnsupported }, @@ -36,6 +36,7 @@ DSError TRKDispatchMessage(TRKBuffer* buffer) error = DS_DispatchError; TRKSetBufferPosition(buffer, 0); TRKReadBuffer1_ui8(buffer, &command); + command &= 0xFF; if (command < gTRKDispatchTableSize) { error = gTRKDispatchTable[command].fn(buffer); } From 75d49a9e05c4b554b6416eb68600f58b3a0283f7 Mon Sep 17 00:00:00 2001 From: Rainchus Date: Fri, 14 Mar 2025 15:29:32 -0500 Subject: [PATCH 164/178] match fn_1_14CFC from thefoxcam, link file --- config/GMPE01_00/rels/mgmodedll/symbols.txt | 6 +++--- configure.py | 2 +- src/REL/mgmodedll/tictactoe.c | 17 ++++++++--------- 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/config/GMPE01_00/rels/mgmodedll/symbols.txt b/config/GMPE01_00/rels/mgmodedll/symbols.txt index d9b88ae2..9022b619 100644 --- a/config/GMPE01_00/rels/mgmodedll/symbols.txt +++ b/config/GMPE01_00/rels/mgmodedll/symbols.txt @@ -490,9 +490,9 @@ lbl_1_data_168 = .data:0x00000168; // type:object size:0x2 data:2byte lbl_1_data_16A = .data:0x0000016A; // type:object size:0x30 lbl_1_data_19C = .data:0x0000019C; // type:object size:0x10 lbl_1_data_1AC = .data:0x000001AC; // type:object size:0x10 -lbl_1_data_1BC = .data:0x000001BC; // type:object size:0xA data:string -lbl_1_data_1C6 = .data:0x000001C6; // type:object size:0xE data:string -lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xB data:string +lbl_1_data_1BC = .data:0x000001BC; // type:object size:0xA scope:local data:string +lbl_1_data_1C6 = .data:0x000001C6; // type:object size:0xE scope:local data:string +lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0xB scope:local data:string lbl_1_data_1E4 = .data:0x000001E4; // type:object size:0x24 scope:local data:string lbl_1_data_208 = .data:0x00000208; // type:object size:0x26 scope:local data:string lbl_1_data_22E = .data:0x0000022E; // type:object size:0x27 scope:local data:string diff --git a/configure.py b/configure.py index 398ade75..a7d72d58 100644 --- a/configure.py +++ b/configure.py @@ -1352,7 +1352,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/free_play.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/record.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/battle.c"), - Object(NonMatching, "REL/mgmodedll/tictactoe.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/tictactoe.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/datalist.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPJ01_00"), "REL/mgmodedll/minigame.c"), diff --git a/src/REL/mgmodedll/tictactoe.c b/src/REL/mgmodedll/tictactoe.c index f2d5ad25..fd46191f 100644 --- a/src/REL/mgmodedll/tictactoe.c +++ b/src/REL/mgmodedll/tictactoe.c @@ -300,7 +300,7 @@ void fn_1_14CFC(void) AnimData *temp_r23; AnimData *temp_r22; s16 temp_r21; - s32 temp_r20; + s16 temp_r20; s16 sp8; for(temp_r31=0; temp_r31<4; temp_r31++) { lbl_1_bss_2C1C[temp_r31] = temp_r31; @@ -315,8 +315,8 @@ void fn_1_14CFC(void) } } if(lbl_1_bss_3A8 == 0) { - temp_r30 = HuSprGrpCreate(25); - lbl_1_bss_3A8 = temp_r30; + + lbl_1_bss_3A8 = temp_r30 = HuSprGrpCreate(25); temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 84), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r28, 200, 0); HuSprGrpMemberSet(temp_r30, 0, temp_r29); @@ -408,8 +408,8 @@ void fn_1_14CFC(void) HuSprTPLvlSet(temp_r30, 24, 0); } if(lbl_1_bss_3AA == 0) { - temp_r30 = HuSprGrpCreate(10); - lbl_1_bss_3AA = temp_r30; + + lbl_1_bss_3AA = temp_r30 = HuSprGrpCreate(10); temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 15), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r28, 200, 0); HuSprGrpMemberSet(temp_r30, 0, temp_r29); @@ -419,9 +419,8 @@ void fn_1_14CFC(void) HuSprGrpMemberSet(temp_r30, 1, temp_r29); HuSprPosSet(temp_r30, 1, 0, 0); for(temp_r31=0; temp_r31<4; temp_r31++) { - temp_r20 = GWPlayerCfg[lbl_1_bss_2C1C[temp_r31]].character; - lbl_1_bss_2C24[temp_r31] = temp_r20; - temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 16)+(s16)temp_r20, MEMORY_DEFAULT_NUM)); + temp_r20 = lbl_1_bss_2C24[temp_r31] = GWPlayerCfg[lbl_1_bss_2C1C[temp_r31]].character; + temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 16)+temp_r20, MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r28, 190, 0); HuSprGrpMemberSet(temp_r30, (temp_r31*2)+2, temp_r29); HuSprPosSet(temp_r30, (temp_r31*2)+2, lbl_1_data_19C[temp_r31], 0); @@ -958,4 +957,4 @@ void fn_1_17BE0(void) } OSReport("com %d,%d\n", lbl_1_bss_3B0[0], lbl_1_bss_3B0[1]); -} \ No newline at end of file +} From 62803cc21f0328d19b83e3bdf9917110abe83f01 Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Fri, 14 Mar 2025 22:09:49 +0100 Subject: [PATCH 165/178] Some PAL symbols, ported m457Dll, naming progress on m457Dll (#568) * Add missing imports and mark uninitialized variables * Work on PAL symbols * Ported m457Dll to all versions * Some naming progress on m457Dll Changed some names in present and option --- config/GMPE01_00/rels/m457Dll/symbols.txt | 114 +- config/GMPE01_00/rels/mgmodedll/symbols.txt | 8 +- config/GMPE01_00/rels/modeseldll/symbols.txt | 90 +- config/GMPE01_00/symbols.txt | 2 +- config/GMPJ01_00/rels/m457Dll/splits.txt | 9 + config/GMPJ01_00/rels/m457Dll/symbols.txt | 332 ++-- config/GMPP01_00/rels/m401Dll/symbols.txt | 624 +++---- config/GMPP01_00/rels/m406Dll/symbols.txt | 450 ++--- config/GMPP01_00/rels/m409Dll/symbols.txt | 330 ++-- config/GMPP01_00/rels/m417Dll/symbols.txt | 490 ++--- config/GMPP01_00/rels/m427Dll/symbols.txt | 408 ++-- config/GMPP01_00/rels/m428Dll/symbols.txt | 406 ++-- config/GMPP01_00/rels/m433Dll/symbols.txt | 546 +++--- config/GMPP01_00/rels/m438Dll/symbols.txt | 456 ++--- config/GMPP01_00/rels/m443Dll/symbols.txt | 384 ++-- config/GMPP01_00/rels/m457Dll/splits.txt | 9 + config/GMPP01_00/rels/m457Dll/symbols.txt | 332 ++-- config/GMPP01_00/rels/m458Dll/symbols.txt | 194 +- config/GMPP01_00/rels/m459dll/symbols.txt | 164 +- config/GMPP01_00/rels/m460Dll/symbols.txt | 314 ++-- config/GMPP01_00/rels/m463Dll/symbols.txt | 186 +- config/GMPP01_00/rels/mentDll/symbols.txt | 462 ++--- config/GMPP01_00/rels/mgmodedll/symbols.txt | 660 +++---- config/GMPP01_00/rels/w01Dll/symbols.txt | 396 ++-- config/GMPP01_00/rels/w02Dll/symbols.txt | 506 ++--- config/GMPP01_00/rels/w03Dll/symbols.txt | 402 ++-- config/GMPP01_00/rels/w04Dll/symbols.txt | 440 ++--- configure.py | 10 +- include/REL/mgmodedll.h | 10 +- src/REL/bootDll/main.c | 3 +- src/REL/m413Dll/main.c | 7 + src/REL/m419Dll/main.c | 2 +- src/REL/m423Dll/main.c | 2 +- src/REL/m424Dll/claw.c | 2 +- src/REL/m424Dll/main.c | 2 +- src/REL/m425Dll/main.c | 2 +- src/REL/m450Dll/main.c | 2 +- src/REL/m457Dll/main.c | 1736 +++++++++--------- src/REL/m462Dll/main.c | 2 +- src/REL/mgmodedll/battle.c | 6 +- src/REL/mgmodedll/datalist.c | 228 +-- src/REL/mgmodedll/free_play.c | 4 +- src/REL/mgmodedll/mgmode.c | 66 +- src/REL/mgmodedll/record.c | 156 +- src/REL/mgmodedll/tictactoe.c | 746 ++++---- src/REL/option/state.c | 12 +- src/REL/present/camera.c | 8 +- src/REL/present/init.c | 12 +- src/REL/present/main.c | 10 +- src/REL/present/present.c | 14 +- src/game/armem.c | 2 +- src/game/code_8003FF68.c | 1 + 52 files changed, 5922 insertions(+), 5837 deletions(-) diff --git a/config/GMPE01_00/rels/m457Dll/symbols.txt b/config/GMPE01_00/rels/m457Dll/symbols.txt index 08eeab17..790cf96b 100644 --- a/config/GMPE01_00/rels/m457Dll/symbols.txt +++ b/config/GMPE01_00/rels/m457Dll/symbols.txt @@ -1,16 +1,16 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x3CC -fn_1_46C = .text:0x0000046C; // type:function size:0x2858 -fn_1_2CC4 = .text:0x00002CC4; // type:function size:0x283C -fn_1_5500 = .text:0x00005500; // type:function size:0x220 -fn_1_5720 = .text:0x00005720; // type:function size:0x29C -fn_1_59BC = .text:0x000059BC; // type:function size:0xB3C -fn_1_64F8 = .text:0x000064F8; // type:function size:0xAB8 -fn_1_6FB0 = .text:0x00006FB0; // type:function size:0x5F4 -fn_1_75A4 = .text:0x000075A4; // type:function size:0xC0 +CameraPrintDebug = .text:0x000000A0; // type:function size:0x3CC scope:local +M457PlayerExec = .text:0x0000046C; // type:function size:0x2858 scope:local +M457GameExec = .text:0x00002CC4; // type:function size:0x283C scope:local +WrestleMesMain = .text:0x00005500; // type:function size:0x220 scope:local +ShoveMesMain = .text:0x00005720; // type:function size:0x29C scope:local +M457Main = .text:0x000059BC; // type:function size:0xB3C scope:local +M457GameSetup = .text:0x000064F8; // type:function size:0xAB8 scope:local +M457PlayerSetup = .text:0x00006FB0; // type:function size:0x5F4 scope:local +M457Setup = .text:0x000075A4; // type:function size:0xC0 scope:local ObjectSetup = .text:0x00007664; // type:function size:0x480 -fn_1_7AE4 = .text:0x00007AE4; // type:function size:0x9C +M457Exit = .text:0x00007AE4; // type:function size:0x9C scope:local _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:0x8 scope:local data:double @@ -121,59 +121,59 @@ lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data: lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 scope:local data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x5C -lbl_1_data_5C = .data:0x0000005C; // type:object size:0x5C data:4byte -lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 -lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 -lbl_1_data_148 = .data:0x00000148; // type:object size:0xC data:byte -lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 -lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C data:float -lbl_1_data_220 = .data:0x00000220; // type:object size:0x6C data:float -lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x4 data:4byte -lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x4 data:4byte -lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x4 data:4byte -lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte +sprDataNumTbl = .data:0x00000000; // type:object size:0x5C scope:local +sprIdTbl = .data:0x0000005C; // type:object size:0x5C scope:local data:4byte +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 scope:local +lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 scope:local +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC scope:local data:byte +lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 scope:local +lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 scope:local +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C scope:local data:float +sparkDataTbl = .data:0x00000220; // type:object size:0x6C scope:local data:float +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 scope:local data:float +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 scope:local data:2byte +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 scope:local data:2byte +backgroundMusNo = .data:0x000002A8; // type:object size:0x4 scope:local data:4byte +windSeNo = .data:0x000002AC; // type:object size:0x4 scope:local data:4byte +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 scope:local data:2byte +invincibilitySeNo = .data:0x000002B4; // type:object size:0x4 scope:local data:4byte +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 scope:local data:4byte lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 scope:local data:string lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 scope:local data:string jumptable_1_data_2C8 = .data:0x000002C8; // type:object size:0x2C scope:local jumptable_1_data_2F4 = .data:0x000002F4; // type:object size:0x48 scope:local -lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte -lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float -lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float -lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 scope:local data:4byte +lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 scope:local data:float jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x20 scope:local jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 scope:local data:string lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 scope:local data:string lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 scope:local data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x8 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +m457MesEndF = .bss:0x00000010; // type:object size:0x4 scope:local data:4byte +againstBrowserF = .bss:0x00000014; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 scope:local data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 scope:local data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 scope:local data:4byte +lightId = .bss:0x00000048; // type:object size:0x4 scope:local data:4byte +objman = .bss:0x0000004C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 scope:local data:4byte +gameState = .bss:0x0000005C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 scope:local data:4byte +gameObj = .bss:0x00000064; // type:object size:0x4 scope:local data:4byte +playerObj = .bss:0x00000068; // type:object size:0x8 scope:local data:4byte +omViewObj = .bss:0x00000070; // type:object size:0x4 scope:local data:4byte +mainObj = .bss:0x00000074; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 scope:local data:4byte diff --git a/config/GMPE01_00/rels/mgmodedll/symbols.txt b/config/GMPE01_00/rels/mgmodedll/symbols.txt index 9022b619..5a1f7053 100644 --- a/config/GMPE01_00/rels/mgmodedll/symbols.txt +++ b/config/GMPE01_00/rels/mgmodedll/symbols.txt @@ -482,7 +482,7 @@ customMinNum$837 = .data:0x000000D6; // type:object size:0x8 scope:local lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 data:float lbl_1_data_100 = .data:0x00000100; // type:object size:0x10 lbl_1_data_110 = .data:0x00000110; // type:object size:0xC -lbl_1_data_120 = .data:0x00000120; // type:object size:0x28 +mgRecordIdxTbl = .data:0x00000120; // type:object size:0x28 lbl_1_data_148 = .data:0x00000148; // type:object size:0x2 data:2byte lbl_1_data_14A = .data:0x0000014A; // type:object size:0x8 lbl_1_data_152 = .data:0x00000152; // type:object size:0x10 data:4byte @@ -516,7 +516,7 @@ lbl_1_data_9C0 = .data:0x000009C0; // type:object size:0x20 lbl_1_data_9E0 = .data:0x000009E0; // type:object size:0x20 lbl_1_data_A00 = .data:0x00000A00; // type:object size:0x2 data:2byte lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +mgModeEvtNo = .bss:0x00000004; // type:object size:0x2 data:2byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x264 data:4byte lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x8 data:float lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x18 data:4byte @@ -549,8 +549,8 @@ lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x8 lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x8 data:2byte lbl_1_bss_352 = .bss:0x00000352; // type:object size:0x1C -lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC -lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC scope:local +lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC scope:local lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte lbl_1_bss_38A = .bss:0x0000038A; // type:object size:0x2 data:2byte lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x8 diff --git a/config/GMPE01_00/rels/modeseldll/symbols.txt b/config/GMPE01_00/rels/modeseldll/symbols.txt index 53057676..1dd29df7 100644 --- a/config/GMPE01_00/rels/modeseldll/symbols.txt +++ b/config/GMPE01_00/rels/modeseldll/symbols.txt @@ -73,48 +73,48 @@ lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:d lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float -lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +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_F0 = .rodata:0x000000F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 scope:local data:float +lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 scope:local data:double +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float @@ -188,9 +188,9 @@ lbl_1_data_80 = .data:0x00000080; // type:object size:0xC lbl_1_data_8C = .data:0x0000008C; // type:object size:0x18 lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x18 lbl_1_data_BC = .data:0x000000BC; // type:object size:0x18 -lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x14 data:string -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x9 data:string -lbl_1_data_F1 = .data:0x000000F1; // type:object size:0xF +lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x14 scope:local data:string +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x9 scope:local data:string +lbl_1_data_F1 = .data:0x000000F1; // type:object size:0xF scope:local lbl_1_data_100 = .data:0x00000100; // type:object size:0x2 data:2byte lbl_1_data_104 = .data:0x00000104; // type:object size:0x118 data:float lbl_1_data_21C = .data:0x0000021C; // type:object size:0x48 data:4byte diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index d2b64397..19a42077 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -4543,7 +4543,7 @@ jumptable_8013FD68 = .data:0x8013FD68; // type:object size:0x24 scope:local jumptable_8013FD8C = .data:0x8013FD8C; // type:object size:0x24 scope:local jumptable_8013FDB0 = .data:0x8013FDB0; // type:object size:0x24 scope:local sndSintab = .data:0x8013FDD8; // type:object size:0x800 -dspSlave = .data:0x801405E0; // type:object size:0x19E0 align:32 +dspSlave = .data:0x801405E0; // type:object size:0x19E0 align:32 data:byte lens$301 = .data:0x80141FC0; // type:object size:0x10 scope:local lens$301 = .data:0x80141FD0; // type:object size:0x20 scope:local rsmpTab12khz = .data:0x80141FF0; // type:object size:0x800 scope:local diff --git a/config/GMPJ01_00/rels/m457Dll/splits.txt b/config/GMPJ01_00/rels/m457Dll/splits.txt index 531cd645..b1f5db69 100644 --- a/config/GMPJ01_00/rels/m457Dll/splits.txt +++ b/config/GMPJ01_00/rels/m457Dll/splits.txt @@ -5,3 +5,12 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m457Dll/main.c: + .text start:0x000000A0 end:0x00007B60 + .rodata start:0x00000000 end:0x00000578 + .data start:0x00000000 end:0x000003E7 + .bss start:0x00000000 end:0x000000C8 diff --git a/config/GMPJ01_00/rels/m457Dll/symbols.txt b/config/GMPJ01_00/rels/m457Dll/symbols.txt index 536be91f..fd8c1e4e 100644 --- a/config/GMPJ01_00/rels/m457Dll/symbols.txt +++ b/config/GMPJ01_00/rels/m457Dll/symbols.txt @@ -1,178 +1,178 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x3CC -fn_1_46C = .text:0x0000046C; // type:function size:0x2858 -fn_1_2CC4 = .text:0x00002CC4; // type:function size:0x281C -fn_1_54E0 = .text:0x000054E0; // type:function size:0x220 -fn_1_5700 = .text:0x00005700; // type:function size:0x29C -fn_1_599C = .text:0x0000599C; // type:function size:0xB3C -fn_1_64D8 = .text:0x000064D8; // type:function size:0xAB8 -fn_1_6F90 = .text:0x00006F90; // type:function size:0x5F4 -fn_1_7584 = .text:0x00007584; // type:function size:0xC0 -fn_1_7644 = .text:0x00007644; // type:function size:0x480 -fn_1_7AC4 = .text:0x00007AC4; // type:function size:0x9C +CameraPrintDebug = .text:0x000000A0; // type:function size:0x3CC scope:local +M457PlayerExec = .text:0x0000046C; // type:function size:0x2858 scope:local +M457GameExec = .text:0x00002CC4; // type:function size:0x281C scope:local +WrestleMesMain = .text:0x000054E0; // type:function size:0x220 scope:local +ShoveMesMain = .text:0x00005700; // type:function size:0x29C scope:local +M457Main = .text:0x0000599C; // type:function size:0xB3C scope:local +M457GameSetup = .text:0x000064D8; // type:function size:0xAB8 scope:local +M457PlayerSetup = .text:0x00006F90; // type:function size:0x5F4 scope:local +M457Setup = .text:0x00007584; // type:function size:0xC0 scope:local +ObjectSetup = .text:0x00007644; // type:function size:0x480 +M457Exit = .text:0x00007AC4; // type:function size:0x9C scope:local _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 data:4byte -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 scope:local data:4byte lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x64 -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 data:4byte -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 data:4byte -lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 data:4byte -lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:4byte +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 scope:local data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:4byte lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 data:double -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 data:double -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x14 data:4byte -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:4byte -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:4byte -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x40 data:4byte -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x40 data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 scope:local data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 scope:local data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x40 scope:local data:4byte lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x5C lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x5C -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0xC data:4byte -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0xC data:4byte -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x1 data:byte -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x5C -lbl_1_data_5C = .data:0x0000005C; // type:object size:0x5C data:4byte -lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 -lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 -lbl_1_data_148 = .data:0x00000148; // type:object size:0xC -lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 -lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C -lbl_1_data_220 = .data:0x00000220; // type:object size:0x6C -lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x4 data:4byte -lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x4 data:4byte -lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x4 data:4byte -lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 data:string -lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 data:string +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 scope:local data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 scope:local data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 scope:local data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +sprDataNumTbl = .data:0x00000000; // type:object size:0x5C scope:local +sprIdTbl = .data:0x0000005C; // type:object size:0x5C data:4byte scope:local +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 scope:local +lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 scope:local +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC scope:local +lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 scope:local +lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 scope:local +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C scope:local +sparkDataTbl = .data:0x00000220; // type:object size:0x6C scope:local +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float scope:local +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte scope:local +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte scope:local +backgroundMusNo = .data:0x000002A8; // type:object size:0x4 data:4byte scope:local +windSeNo = .data:0x000002AC; // type:object size:0x4 data:4byte scope:local +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte scope:local +invincibilitySeNo = .data:0x000002B4; // type:object size:0x4 data:4byte scope:local +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte scope:local +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 scope:local data:string +lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 scope:local data:string jumptable_1_data_2C8 = .data:0x000002C8; // type:object size:0x2C scope:local jumptable_1_data_2F4 = .data:0x000002F4; // type:object size:0x48 scope:local -lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte -lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float -lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float -lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte scope:local +lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float scope:local +lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float scope:local +lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float scope:local jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x20 scope:local jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local -lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 data:string -lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 data:string -lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x8 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte +lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 scope:local data:string +lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 scope:local data:string +lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 scope:local data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte scope:local +m457MesEndF = .bss:0x00000010; // type:object size:0x4 data:4byte scope:local +againstBrowserF = .bss:0x00000014; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float scope:local +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float scope:local +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float scope:local +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float scope:local +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte scope:local +lightId = .bss:0x00000048; // type:object size:0x4 data:4byte scope:local +objman = .bss:0x0000004C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte scope:local +gameState = .bss:0x0000005C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte scope:local +gameObj = .bss:0x00000064; // type:object size:0x4 data:4byte scope:local +playerObj = .bss:0x00000068; // type:object size:0x8 data:4byte scope:local +omViewObj = .bss:0x00000070; // type:object size:0x4 data:4byte scope:local +mainObj = .bss:0x00000074; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte scope:local diff --git a/config/GMPP01_00/rels/m401Dll/symbols.txt b/config/GMPP01_00/rels/m401Dll/symbols.txt index 98566a01..bab1a956 100644 --- a/config/GMPP01_00/rels/m401Dll/symbols.txt +++ b/config/GMPP01_00/rels/m401Dll/symbols.txt @@ -120,311 +120,311 @@ fn_2_1473C = .text:0x0001473C; // type:function size:0x7C fn_2_147B8 = .text:0x000147B8; // type:function size:0x660 _ctors = .ctors:0x00000000; // type:label scope:global data:4byte _dtors = .dtors:0x00000000; // type:label scope:global data:4byte -lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float -lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float -lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float -lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float -lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float -lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float -lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float -lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float -lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float -lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float -lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float -lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float -lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float -lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float -lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float -lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float -lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float -lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float -lbl_2_rodata_84 = .rodata:0x00000084; // type:object size:0x4 data:float -lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float -lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float -lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float -lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float -lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float -lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_2_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 data:float -lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float -lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float -lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float -lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float -lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float -lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float -lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float -lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float -lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float -lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float -lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float -lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_2_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_2_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float -lbl_2_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float -lbl_2_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 data:float -lbl_2_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float -lbl_2_rodata_144 = .rodata:0x00000144; // type:object size:0x4 data:float -lbl_2_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float -lbl_2_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 data:float -lbl_2_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_2_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_2_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_2_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_2_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_2_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_2_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_2_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double -lbl_2_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_2_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_2_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float -lbl_2_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float -lbl_2_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 data:float -lbl_2_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float -lbl_2_rodata_194 = .rodata:0x00000194; // type:object size:0x4 data:float -lbl_2_rodata_198 = .rodata:0x00000198; // type:object size:0x4 data:float -lbl_2_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 data:float -lbl_2_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_2_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_2_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_2_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_2_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_2_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_2_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_2_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_2_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_2_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_2_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double -lbl_2_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_2_rodata_1DC = .rodata:0x000001DC; // type:object size:0x10 data:4byte -lbl_2_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 data:float -lbl_2_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float -lbl_2_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 data:float -lbl_2_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float -lbl_2_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 data:float -lbl_2_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float -lbl_2_rodata_204 = .rodata:0x00000204; // type:object size:0x4 data:float -lbl_2_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_2_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_2_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_2_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_2_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_2_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_2_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_2_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_2_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_2_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_2_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_2_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_2_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_2_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_2_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_2_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_2_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_2_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_2_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_2_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_2_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_2_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_2_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_2_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_2_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_2_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_2_rodata_290 = .rodata:0x00000290; // type:object size:0x40 data:2byte -lbl_2_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:2byte -lbl_2_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:2byte -lbl_2_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:2byte -lbl_2_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_2_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_2_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_2_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_2_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_2_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_2_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_2_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_2_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_2_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_2_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_2_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_2_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_2_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_2_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_2_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_2_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_2_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_2_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_2_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double -lbl_2_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_2_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_2_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_2_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_2_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_2_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_2_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_2_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_2_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_2_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_2_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_2_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_2_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_2_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_2_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_2_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_2_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_2_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_2_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_2_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_2_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_2_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_2_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_2_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_2_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_2_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_2_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_2_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_2_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_2_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_2_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_2_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_2_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_2_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_2_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_2_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_2_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_2_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_2_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_2_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_2_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_2_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_2_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_2_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_2_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_2_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_2_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_2_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_2_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_2_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_2_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double -lbl_2_rodata_440 = .rodata:0x00000440; // type:object size:0x8 data:double -lbl_2_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_2_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_2_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_2_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_2_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_2_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_2_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_2_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_2_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_2_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_2_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_2_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_2_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -lbl_2_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_2_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_2_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_2_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_2_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_2_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_2_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_2_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_2_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_2_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double -lbl_2_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double -lbl_2_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_2_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_2_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_2_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_2_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_2_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_2_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_2_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_2_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_2_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_2_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_2_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_2_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_2_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_2_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_2_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double -lbl_2_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_2_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_2_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_2_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_2_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_2_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_2_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_2_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_2_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_2_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_2_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_2_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_2_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_2_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_2_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_2_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_2_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:double -lbl_2_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_2_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_2_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double -lbl_2_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_2_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_2_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_2_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_2_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_2_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_2_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_2_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_2_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_2_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:double -lbl_2_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_2_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_2_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float -lbl_2_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 data:float -lbl_2_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_2_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_2_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_2_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_2_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double -lbl_2_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_2_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_2_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_2_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_2_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_2_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_2_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_2_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_2_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_2_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float +lbl_2_rodata_10 = .rodata:0x00000010; // type:object size:0x4 scope:local data:float +lbl_2_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float +lbl_2_rodata_18 = .rodata:0x00000018; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_20 = .rodata:0x00000020; // type:object size:0x4 scope:local data:float +lbl_2_rodata_24 = .rodata:0x00000024; // type:object size:0x4 scope:local data:float +lbl_2_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_2_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_2_rodata_34 = .rodata:0x00000034; // type:object size:0x4 scope:local data:float +lbl_2_rodata_38 = .rodata:0x00000038; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_2_rodata_44 = .rodata:0x00000044; // type:object size:0x4 scope:local data:float +lbl_2_rodata_48 = .rodata:0x00000048; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_2_rodata_58 = .rodata:0x00000058; // type:object size:0x8 scope:local data:double +lbl_2_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_2_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_2_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local data:float +lbl_2_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_70 = .rodata:0x00000070; // type:object size:0x4 scope:local data:float +lbl_2_rodata_74 = .rodata:0x00000074; // type:object size:0x4 scope:local data:float +lbl_2_rodata_78 = .rodata:0x00000078; // type:object size:0x4 scope:local data:float +lbl_2_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_80 = .rodata:0x00000080; // type:object size:0x4 scope:local data:float +lbl_2_rodata_84 = .rodata:0x00000084; // type:object size:0x4 scope:local data:float +lbl_2_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_2_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_2_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_2_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_2_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 scope:local data:double +lbl_2_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_2_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_2_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_2_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_110 = .rodata:0x00000110; // type:object size:0x4 scope:local data:float +lbl_2_rodata_114 = .rodata:0x00000114; // type:object size:0x4 scope:local data:float +lbl_2_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float +lbl_2_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_120 = .rodata:0x00000120; // type:object size:0x4 scope:local data:float +lbl_2_rodata_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_2_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_2_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +lbl_2_rodata_134 = .rodata:0x00000134; // type:object size:0x4 scope:local data:float +lbl_2_rodata_138 = .rodata:0x00000138; // type:object size:0x4 scope:local data:float +lbl_2_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local data:float +lbl_2_rodata_144 = .rodata:0x00000144; // type:object size:0x4 scope:local data:float +lbl_2_rodata_148 = .rodata:0x00000148; // type:object size:0x4 scope:local data:float +lbl_2_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_2_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_2_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_2_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_2_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_2_rodata_168 = .rodata:0x00000168; // type:object size:0x8 scope:local data:double +lbl_2_rodata_170 = .rodata:0x00000170; // type:object size:0x8 scope:local data:double +lbl_2_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_2_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_2_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float +lbl_2_rodata_188 = .rodata:0x00000188; // type:object size:0x4 scope:local data:float +lbl_2_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_190 = .rodata:0x00000190; // type:object size:0x4 scope:local data:float +lbl_2_rodata_194 = .rodata:0x00000194; // type:object size:0x4 scope:local data:float +lbl_2_rodata_198 = .rodata:0x00000198; // type:object size:0x4 scope:local data:float +lbl_2_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 scope:local data:double +lbl_2_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +lbl_2_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 scope:local data:double +lbl_2_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1DC = .rodata:0x000001DC; // type:object size:0x10 scope:local data:4byte +lbl_2_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_200 = .rodata:0x00000200; // type:object size:0x4 scope:local data:float +lbl_2_rodata_204 = .rodata:0x00000204; // type:object size:0x4 scope:local data:float +lbl_2_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +lbl_2_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float +lbl_2_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_2_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_2_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_2_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_2_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_2_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_2_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_2_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_2_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_2_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_2_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_2_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_2_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_2_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_2_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_2_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_2_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_2_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_2_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_2_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_2_rodata_290 = .rodata:0x00000290; // type:object size:0x40 scope:local data:2byte +lbl_2_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:2byte +lbl_2_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:2byte +lbl_2_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:2byte +lbl_2_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_2_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_2_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_2_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_2_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_2_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_2_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_2_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_2_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_2_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_2_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_2_rodata_340 = .rodata:0x00000340; // type:object size:0x8 scope:local data:double +lbl_2_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_2_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_2_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_2_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_2_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_2_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_2_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_2_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_2_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_2_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_2_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_2_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_2_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_2_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_2_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_2_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_2_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_2_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_2_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double +lbl_2_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_2_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_2_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_2_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_2_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_2_rodata_438 = .rodata:0x00000438; // type:object size:0x8 scope:local data:double +lbl_2_rodata_440 = .rodata:0x00000440; // type:object size:0x8 scope:local data:double +lbl_2_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_2_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_2_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_2_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_2_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_2_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_2_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_2_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_2_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_2_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:double +lbl_2_rodata_480 = .rodata:0x00000480; // type:object size:0x8 scope:local data:double +lbl_2_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_2_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_2_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_2_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_2_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 scope:local data:double +lbl_2_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 scope:local data:double +lbl_2_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 scope:local data:double +lbl_2_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 scope:local data:double +lbl_2_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_500 = .rodata:0x00000500; // type:object size:0x8 scope:local data:double +lbl_2_rodata_508 = .rodata:0x00000508; // type:object size:0x8 scope:local data:double +lbl_2_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_2_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_2_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_2_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_2_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_2_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_2_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_2_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_2_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_2_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_2_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_2_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_2_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_550 = .rodata:0x00000550; // type:object size:0x8 scope:local data:double +lbl_2_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_2_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_560 = .rodata:0x00000560; // type:object size:0x8 scope:local data:double +lbl_2_rodata_568 = .rodata:0x00000568; // type:object size:0x4 scope:local data:float +lbl_2_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_2_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_2_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_2_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_2_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_2_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_2_rodata_590 = .rodata:0x00000590; // type:object size:0x8 scope:local data:double +lbl_2_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_2_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5A4 = .rodata:0x000005A4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 scope:local data:double +lbl_2_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_2_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float lbl_2_data_0 = .data:0x00000000; // type:object size:0x4 data:float lbl_2_data_4 = .data:0x00000004; // type:object size:0x10 lbl_2_data_14 = .data:0x00000014; // type:object size:0xC @@ -433,16 +433,16 @@ lbl_2_data_2C = .data:0x0000002C; // type:object size:0x4 lbl_2_data_30 = .data:0x00000030; // type:object size:0xC data:float lbl_2_data_3C = .data:0x0000003C; // type:object size:0xC lbl_2_data_48 = .data:0x00000048; // type:object size:0xC data:float -lbl_2_data_54 = .data:0x00000054; // type:object size:0x1B data:string +lbl_2_data_54 = .data:0x00000054; // type:object size:0x1B scope:local data:string lbl_2_data_6F = .data:0x0000006F; // type:object size:0x11 lbl_2_data_80 = .data:0x00000080; // type:object size:0x20 lbl_2_data_A0 = .data:0x000000A0; // type:object size:0x14 lbl_2_data_B4 = .data:0x000000B4; // type:object size:0x18 lbl_2_data_CC = .data:0x000000CC; // type:object size:0x28 -lbl_2_data_F4 = .data:0x000000F4; // type:object size:0x9 data:string -lbl_2_data_FD = .data:0x000000FD; // type:object size:0x9 data:string -lbl_2_data_106 = .data:0x00000106; // type:object size:0x9 data:string -lbl_2_data_10F = .data:0x0000010F; // type:object size:0x9 data:string +lbl_2_data_F4 = .data:0x000000F4; // type:object size:0x9 scope:local data:string +lbl_2_data_FD = .data:0x000000FD; // type:object size:0x9 scope:local data:string +lbl_2_data_106 = .data:0x00000106; // type:object size:0x9 scope:local data:string +lbl_2_data_10F = .data:0x0000010F; // type:object size:0x9 scope:local data:string lbl_2_data_118 = .data:0x00000118; // type:object size:0xC lbl_2_data_124 = .data:0x00000124; // type:object size:0x34 data:4byte lbl_2_data_158 = .data:0x00000158; // type:object size:0x140 @@ -453,9 +453,9 @@ lbl_2_data_32C = .data:0x0000032C; // type:object size:0x8 lbl_2_data_334 = .data:0x00000334; // type:object size:0xF0 lbl_2_data_424 = .data:0x00000424; // type:object size:0x8 lbl_2_data_42C = .data:0x0000042C; // type:object size:0x28 -lbl_2_data_454 = .data:0x00000454; // type:object size:0xC data:string +lbl_2_data_454 = .data:0x00000454; // type:object size:0xC scope:local data:string lbl_2_data_460 = .data:0x00000460; // type:object size:0xC -lbl_2_data_46C = .data:0x0000046C; // type:object size:0x5 data:string +lbl_2_data_46C = .data:0x0000046C; // type:object size:0x5 scope:local data:string lbl_2_data_471 = .data:0x00000471; // type:object size:0x7 jumptable_2_data_478 = .data:0x00000478; // type:object size:0x20 scope:local lbl_2_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_00/rels/m406Dll/symbols.txt b/config/GMPP01_00/rels/m406Dll/symbols.txt index 410427a0..6be5c2a5 100644 --- a/config/GMPP01_00/rels/m406Dll/symbols.txt +++ b/config/GMPP01_00/rels/m406Dll/symbols.txt @@ -121,226 +121,226 @@ fn_1_13D00 = .text:0x00013D00; // type:function size:0x7E4 fn_1_144E4 = .text:0x000144E4; // type:function size:0x330 _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // 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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x1 data:byte -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 data:double -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // 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_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 scope:local data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x8 scope:local data:double +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x8C data:float lbl_1_data_8C = .data:0x0000008C; // type:object size:0x24 jumptable_1_data_B0 = .data:0x000000B0; // type:object size:0x40 scope:local @@ -360,7 +360,7 @@ lbl_1_data_82C = .data:0x0000082C; // type:object size:0xC lbl_1_data_838 = .data:0x00000838; // type:object size:0xC lbl_1_data_844 = .data:0x00000844; // type:object size:0xC lbl_1_data_850 = .data:0x00000850; // type:object size:0x20 -lbl_1_data_870 = .data:0x00000870; // type:object size:0x1F data:string +lbl_1_data_870 = .data:0x00000870; // type:object size:0x1F scope:local data:string lbl_1_data_88F = .data:0x0000088F; // type:object size:0x1 data:byte lbl_1_data_893 = .data:0x00000893; // type:object size:0x1 data:byte lbl_1_data_897 = .data:0x00000897; // type:object size:0x1 data:byte @@ -377,16 +377,16 @@ lbl_1_data_930 = .data:0x00000930; // type:object size:0x30 lbl_1_data_960 = .data:0x00000960; // type:object size:0x348 lbl_1_data_CA8 = .data:0x00000CA8; // type:object size:0x348 lbl_1_data_FF0 = .data:0x00000FF0; // type:object size:0x10 -lbl_1_data_1000 = .data:0x00001000; // type:object size:0x19 data:string -lbl_1_data_1019 = .data:0x00001019; // type:object size:0x19 data:string -lbl_1_data_1032 = .data:0x00001032; // type:object size:0x1A data:string +lbl_1_data_1000 = .data:0x00001000; // type:object size:0x19 scope:local data:string +lbl_1_data_1019 = .data:0x00001019; // type:object size:0x19 scope:local data:string +lbl_1_data_1032 = .data:0x00001032; // type:object size:0x1A scope:local data:string lbl_1_data_104C = .data:0x0000104C; // type:object size:0x1C lbl_1_data_1068 = .data:0x00001068; // type:object size:0x10 lbl_1_data_1078 = .data:0x00001078; // type:object size:0x28 lbl_1_data_10A0 = .data:0x000010A0; // type:object size:0x80 lbl_1_data_1120 = .data:0x00001120; // type:object size:0x20 lbl_1_data_1140 = .data:0x00001140; // type:object size:0x8 -lbl_1_data_1148 = .data:0x00001148; // type:object size:0x1C data:string +lbl_1_data_1148 = .data:0x00001148; // type:object size:0x1C scope:local data:string lbl_1_data_1164 = .data:0x00001164; // type:object size:0x90 lbl_1_data_11F4 = .data:0x000011F4; // type:object size:0x4 data:4byte lbl_1_data_11F8 = .data:0x000011F8; // type:object size:0x20 diff --git a/config/GMPP01_00/rels/m409Dll/symbols.txt b/config/GMPP01_00/rels/m409Dll/symbols.txt index 7c66be88..54b3dcb3 100644 --- a/config/GMPP01_00/rels/m409Dll/symbols.txt +++ b/config/GMPP01_00/rels/m409Dll/symbols.txt @@ -114,172 +114,172 @@ fn_1_F478 = .text:0x0000F478; // type:function size:0x78 fn_1_F4F0 = .text:0x0000F4F0; // type:function size:0x98 _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:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x4 data:float -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_140 = .rodata:0x00000140; // type:object size:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:0x30 data:4byte +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:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 scope:local data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 scope:local data:double +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +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:0x30 scope:local data:4byte lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x100 -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x30 data:4byte -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x10 data:byte -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 scope:local data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x10 scope:local data:byte +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 scope:local data:double 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 diff --git a/config/GMPP01_00/rels/m417Dll/symbols.txt b/config/GMPP01_00/rels/m417Dll/symbols.txt index 7118da97..f539c02c 100644 --- a/config/GMPP01_00/rels/m417Dll/symbols.txt +++ b/config/GMPP01_00/rels/m417Dll/symbols.txt @@ -82,251 +82,251 @@ fn_1_C698 = .text:0x0000C698; // type:function size:0x134 fn_1_C7CC = .text:0x0000C7CC; // type:function size:0xF0 _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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -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:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x24 data:4byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x24 data:4byte -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -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:0x8 data:double -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:0x4 data:float -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_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0xC data:4byte -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -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:0x1 data:byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x1 data:byte -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:4byte -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x10 data:4byte -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x10 data:4byte -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x10 data:4byte -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0xC data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC data:4byte -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0xC data:4byte -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x10 data:4byte -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0xC data:4byte -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:4byte -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x18 data:4byte -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x18 data:4byte -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 data:double -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +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:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x24 scope:local data:4byte +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:0x4 scope:local data:float +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_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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:0x1 scope:local data:byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 scope:local data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 scope:local data:double +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 scope:local data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 scope:local data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 scope:local data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 scope:local data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 scope:local data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_580 = .rodata:0x00000580; // 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:0xC data:float diff --git a/config/GMPP01_00/rels/m427Dll/symbols.txt b/config/GMPP01_00/rels/m427Dll/symbols.txt index 2f1c580a..2ca9cb3f 100644 --- a/config/GMPP01_00/rels/m427Dll/symbols.txt +++ b/config/GMPP01_00/rels/m427Dll/symbols.txt @@ -144,210 +144,210 @@ fn_1_172DC = .text:0x000172DC; // type:function size:0x140 fn_1_1741C = .text:0x0001741C; // type:function size:0xA4 _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_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0xC data:2byte -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x3C data:4byte -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x6 data:2byte -lbl_1_rodata_136 = .rodata:0x00000136; // type:object size:0xC data:2byte -lbl_1_rodata_142 = .rodata:0x00000142; // type:object size:0x1A data:2byte -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x24 data:4byte -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x30 data:4byte -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 data:4byte -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC data:4byte -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC data:4byte -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x1 data:byte -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x1 data:byte -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x1 data:byte -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x1 data:byte -lbl_1_rodata_38A = .rodata:0x0000038A; // type:object size:0x1 data:byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double +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_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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:0xC scope:local data:2byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x3C scope:local data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x6 scope:local data:2byte +lbl_1_rodata_136 = .rodata:0x00000136; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_142 = .rodata:0x00000142; // type:object size:0x1A scope:local data:2byte +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 scope:local data:float +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_38A = .rodata:0x0000038A; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 scope:local data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 scope:local data:double +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:float lbl_1_data_70 = .data:0x00000070; // type:object size:0x24 jumptable_1_data_94 = .data:0x00000094; // type:object size:0x3C scope:local diff --git a/config/GMPP01_00/rels/m428Dll/symbols.txt b/config/GMPP01_00/rels/m428Dll/symbols.txt index 8abe3e61..dff9c748 100644 --- a/config/GMPP01_00/rels/m428Dll/symbols.txt +++ b/config/GMPP01_00/rels/m428Dll/symbols.txt @@ -124,209 +124,209 @@ fn_1_145C0 = .text:0x000145C0; // type:function size:0x98 fn_1_14658 = .text:0x00014658; // type:function size:0x98 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_140 = .rodata:0x00000140; // type:object size:0x8 data:double -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 scope:local data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x54 data:float lbl_1_data_54 = .data:0x00000054; // type:object size:0xC lbl_1_data_60 = .data:0x00000060; // type:object size:0xC diff --git a/config/GMPP01_00/rels/m433Dll/symbols.txt b/config/GMPP01_00/rels/m433Dll/symbols.txt index ebeb6d4e..4b4ddd22 100644 --- a/config/GMPP01_00/rels/m433Dll/symbols.txt +++ b/config/GMPP01_00/rels/m433Dll/symbols.txt @@ -119,280 +119,280 @@ fn_1_110E4 = .text:0x000110E4; // type:function size:0x98 fn_1_1117C = .text:0x0001117C; // type:function size:0x1B0 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x10 data:4byte -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:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x10 scope:local data:4byte +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:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0xC0 -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -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:0x8 data:double -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_214 = .rodata:0x00000214; // 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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 data:4byte -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 data:4byte -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 data:4byte -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 data:4byte -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 data:4byte -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 data:double -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:4byte -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 data:double -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x24 data:4byte -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 data:4byte -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:4byte -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 data:4byte -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 data:double -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x8 data:4byte -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 data:float -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 data:double -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 data:double -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 data:double -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 data:float -lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 data:float -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float -lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float -lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float -lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float -lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float -lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float -lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float -lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float -lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float -lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float -lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 data:float -lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double -lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float -lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 data:float -lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float -lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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_214 = .rodata:0x00000214; // 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_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x8 scope:local data:double +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 scope:local data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 scope:local data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 scope:local data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x8 scope:local data:double +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F4 = .rodata:0x000005F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 scope:local data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 scope:local data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 scope:local data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 scope:local data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 scope:local data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 scope:local data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 scope:local data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 scope:local data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 scope:local data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 scope:local data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 scope:local data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 scope:local data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 scope:local data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 scope:local data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 scope:local data:float +lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 scope:local data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 scope:local data:float +lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 scope:local data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 scope:local data:double 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:0xC data:float diff --git a/config/GMPP01_00/rels/m438Dll/symbols.txt b/config/GMPP01_00/rels/m438Dll/symbols.txt index 8bd76a83..6097d75e 100644 --- a/config/GMPP01_00/rels/m438Dll/symbols.txt +++ b/config/GMPP01_00/rels/m438Dll/symbols.txt @@ -143,234 +143,234 @@ fn_1_12AB4 = .text:0x00012AB4; // type:function size:0x98 fn_1_12B4C = .text:0x00012B4C; // type:function size:0x40 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x10 data:4byte -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 data:double -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:0x8 data:double -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_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -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:double -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_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 data:double -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 data:double -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x30 data:4byte -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x10 data:byte -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x10 scope:local data:4byte +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +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:double +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_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x8 scope:local data:double +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x8 scope:local data:double +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 scope:local data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x10 scope:local data:byte +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double 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 diff --git a/config/GMPP01_00/rels/m443Dll/symbols.txt b/config/GMPP01_00/rels/m443Dll/symbols.txt index 17d910d7..77c929a5 100644 --- a/config/GMPP01_00/rels/m443Dll/symbols.txt +++ b/config/GMPP01_00/rels/m443Dll/symbols.txt @@ -76,199 +76,199 @@ fn_1_8FFC = .text:0x00008FFC; // type:function size:0x5A8 fn_1_95A4 = .text:0x000095A4; // type:function size:0x94 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x50 -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x14 data:4byte -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:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:double -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 data:4byte -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x10 data:4byte -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x8 data:double -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:0xC data:4byte -lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x34 data:4byte -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x10 data:4byte -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x40 data:4byte -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x10 data:4byte -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x10 data:4byte -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x20 data:4byte -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x14 scope:local data:4byte +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:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 scope:local data:double +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:double +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // 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:0x8 scope:local data:double +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:0xC scope:local data:4byte +lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x34 scope:local data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // 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:0xC data:float diff --git a/config/GMPP01_00/rels/m457Dll/splits.txt b/config/GMPP01_00/rels/m457Dll/splits.txt index 531cd645..fe59c2cc 100644 --- a/config/GMPP01_00/rels/m457Dll/splits.txt +++ b/config/GMPP01_00/rels/m457Dll/splits.txt @@ -5,3 +5,12 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/m457Dll/main.c: + .text start:0x000000A0 end:0x00007C04 + .rodata start:0x00000000 end:0x00000568 + .data start:0x00000000 end:0x000003E7 + .bss start:0x00000000 end:0x000000C8 diff --git a/config/GMPP01_00/rels/m457Dll/symbols.txt b/config/GMPP01_00/rels/m457Dll/symbols.txt index 71fd03bb..4e212888 100644 --- a/config/GMPP01_00/rels/m457Dll/symbols.txt +++ b/config/GMPP01_00/rels/m457Dll/symbols.txt @@ -1,177 +1,177 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x3CC -fn_1_46C = .text:0x0000046C; // type:function size:0x2858 -fn_1_2CC4 = .text:0x00002CC4; // type:function size:0x2654 -fn_1_5318 = .text:0x00005318; // type:function size:0x220 -fn_1_5538 = .text:0x00005538; // type:function size:0x510 -fn_1_5A48 = .text:0x00005A48; // type:function size:0xB34 -fn_1_657C = .text:0x0000657C; // type:function size:0xAB8 -fn_1_7034 = .text:0x00007034; // type:function size:0x5F4 -fn_1_7628 = .text:0x00007628; // type:function size:0xC0 -fn_1_76E8 = .text:0x000076E8; // type:function size:0x480 -fn_1_7B68 = .text:0x00007B68; // type:function size:0x9C +CameraPrintDebug = .text:0x000000A0; // type:function size:0x3CC scope:local +M457PlayerExec = .text:0x0000046C; // type:function size:0x2858 scope:local +M457GameExec = .text:0x00002CC4; // type:function size:0x2654 scope:local +WrestleMesMain = .text:0x00005318; // type:function size:0x220 scope:local +ShoveMesMain = .text:0x00005538; // type:function size:0x510 scope:local +M457Main = .text:0x00005A48; // type:function size:0xB34 scope:local +M457GameSetup = .text:0x0000657C; // type:function size:0xAB8 scope:local +M457PlayerSetup = .text:0x00007034; // type:function size:0x5F4 scope:local +M457Setup = .text:0x00007628; // type:function size:0xC0 scope:local +ObjectSetup = .text:0x000076E8; // type:function size:0x480 +M457Exit = .text:0x00007B68; // type:function size:0x9C scope:local _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 data:4byte -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 data:4byte -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x64 -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 data:4byte -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 data:4byte -lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 data:4byte -lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 data:double -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:4byte +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x64 scope:local +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x8 scope:local data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 scope:local data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:4byte lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x90 -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:double -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x14 data:4byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:4byte -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:4byte -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x40 data:4byte -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x40 data:4byte +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 scope:local data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x40 scope:local data:4byte lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x5C lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x5C -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0xC data:4byte -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0xC data:4byte -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x1 data:byte -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 data:float -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 data:float -lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 data:float -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_data_0 = .data:0x00000000; // type:object size:0x5C -lbl_1_data_5C = .data:0x0000005C; // type:object size:0x5C data:4byte -lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 -lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 -lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 -lbl_1_data_148 = .data:0x00000148; // type:object size:0xC -lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 -lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 -lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C -lbl_1_data_220 = .data:0x00000220; // type:object size:0x6C -lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte -lbl_1_data_2A8 = .data:0x000002A8; // type:object size:0x4 data:4byte -lbl_1_data_2AC = .data:0x000002AC; // type:object size:0x4 data:4byte -lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte -lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x4 data:4byte -lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte -lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 data:string -lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 data:string +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_53C = .rodata:0x0000053C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x4 scope:local data:float +lbl_1_rodata_544 = .rodata:0x00000544; // type:object size:0x4 scope:local data:float +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 scope:local data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 scope:local data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +sprDataNumTbl = .data:0x00000000; // type:object size:0x5C scope:local +sprIdTbl = .data:0x0000005C; // type:object size:0x5C data:4byte scope:local +lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local +lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 scope:local +lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 scope:local +lbl_1_data_148 = .data:0x00000148; // type:object size:0xC scope:local +lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 scope:local +lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 scope:local +lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C scope:local +sparkDataTbl = .data:0x00000220; // type:object size:0x6C scope:local +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float scope:local +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte scope:local +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte scope:local +backgroundMusNo = .data:0x000002A8; // type:object size:0x4 data:4byte scope:local +windSeNo = .data:0x000002AC; // type:object size:0x4 data:4byte scope:local +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte scope:local +invincibilitySeNo = .data:0x000002B4; // type:object size:0x4 data:4byte scope:local +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte scope:local +lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 scope:local data:string +lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 scope:local data:string jumptable_1_data_2C8 = .data:0x000002C8; // type:object size:0x2C scope:local jumptable_1_data_2F4 = .data:0x000002F4; // type:object size:0x48 scope:local -lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte -lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float -lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float -lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte scope:local +lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float scope:local +lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float scope:local +lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float scope:local jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x20 scope:local jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local -lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 data:string -lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 data:string -lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0xC data:4byte -lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x4 data:4byte -lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x4 data:4byte -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x8 data:float -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte -lbl_1_bss_48 = .bss:0x00000048; // type:object size:0x4 data:4byte -lbl_1_bss_4C = .bss:0x0000004C; // type:object size:0x4 data:4byte -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x8 data:4byte -lbl_1_bss_5C = .bss:0x0000005C; // type:object size:0x4 data:4byte -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte -lbl_1_bss_64 = .bss:0x00000064; // type:object size:0x4 data:4byte -lbl_1_bss_68 = .bss:0x00000068; // type:object size:0x8 data:4byte -lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x4 data:4byte -lbl_1_bss_74 = .bss:0x00000074; // type:object size:0x4 data:4byte -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte +lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 scope:local data:string +lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 scope:local data:string +lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 scope:local data:string +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte scope:local +m457MesEndF = .bss:0x00000010; // type:object size:0x4 data:4byte scope:local +againstBrowserF = .bss:0x00000014; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float scope:local +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float scope:local +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float scope:local +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float scope:local +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte scope:local +lightId = .bss:0x00000048; // type:object size:0x4 data:4byte scope:local +objman = .bss:0x0000004C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte scope:local +gameState = .bss:0x0000005C; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte scope:local +gameObj = .bss:0x00000064; // type:object size:0x4 data:4byte scope:local +playerObj = .bss:0x00000068; // type:object size:0x8 data:4byte scope:local +omViewObj = .bss:0x00000070; // type:object size:0x4 data:4byte scope:local +mainObj = .bss:0x00000074; // type:object size:0x4 data:4byte scope:local +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte scope:local diff --git a/config/GMPP01_00/rels/m458Dll/symbols.txt b/config/GMPP01_00/rels/m458Dll/symbols.txt index 5c135c78..cdc7fc9a 100644 --- a/config/GMPP01_00/rels/m458Dll/symbols.txt +++ b/config/GMPP01_00/rels/m458Dll/symbols.txt @@ -13,106 +13,106 @@ fn_1_691C = .text:0x0000691C; // type:function size:0x480 fn_1_6D9C = .text:0x00006D9C; // type:function size:0xD0 _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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:0x8 data:double -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:0x8 data:double -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:4byte +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 scope:local data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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:0x8 scope:local data:double +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_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 scope:local data:4byte lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x94 -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 scope:local data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x50 -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:4byte +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:4byte lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x70 -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:4byte -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:4byte -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0xC data:4byte -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0xC data:4byte -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 data:byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x8 lbl_1_data_8 = .data:0x00000008; // type:object size:0x8 data:4byte lbl_1_data_10 = .data:0x00000010; // type:object size:0x28 diff --git a/config/GMPP01_00/rels/m459dll/symbols.txt b/config/GMPP01_00/rels/m459dll/symbols.txt index 704f4761..ebcacb12 100644 --- a/config/GMPP01_00/rels/m459dll/symbols.txt +++ b/config/GMPP01_00/rels/m459dll/symbols.txt @@ -64,88 +64,88 @@ fn_1_618C = .text:0x0000618C; // type:function size:0x2C0 fn_1_644C = .text:0x0000644C; // type:function size:0x128 _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:0x30 -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x78 -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x18 -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:wstring -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x20 -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x20 -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x19C -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x8 -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x14 -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x14 -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x14 -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x14 -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0xC data:4byte -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0xC data:4byte -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0xC data:4byte -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x48 -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x30 scope:local +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x78 scope:local +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x18 scope:local +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:wstring +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x20 scope:local +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x20 scope:local +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x19C scope:local +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x8 scope:local +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x14 scope:local +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x14 scope:local +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x14 scope:local +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x14 scope:local +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x48 scope:local +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x1B data:string lbl_1_data_1B = .data:0x0000001B; // type:object size:0x1D jumptable_1_data_38 = .data:0x00000038; // type:object size:0x38 scope:local diff --git a/config/GMPP01_00/rels/m460Dll/symbols.txt b/config/GMPP01_00/rels/m460Dll/symbols.txt index 2b961299..a52ca026 100644 --- a/config/GMPP01_00/rels/m460Dll/symbols.txt +++ b/config/GMPP01_00/rels/m460Dll/symbols.txt @@ -86,164 +86,164 @@ fn_1_91E4 = .text:0x000091E4; // type:function size:0x8C fn_1_9270 = .text:0x00009270; // type:function size:0x164 _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:0xC data:4byte -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC data:4byte -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -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_80 = .rodata:0x00000080; // type:object size:0x8 data:double -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:4byte +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0xC scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +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_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +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:4byte lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x50 -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x14 data:4byte -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x10 data:4byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x30 data:4byte -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 data:4byte -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x18 data:4byte -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:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x18 data:4byte -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x8 data:4byte -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x1 data:byte -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x1 data:byte -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0xC data:4byte -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x14 scope:local data:4byte +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x10 scope:local data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x30 scope:local data:4byte +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x18 scope:local data:4byte +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:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // 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:0xC data:float diff --git a/config/GMPP01_00/rels/m463Dll/symbols.txt b/config/GMPP01_00/rels/m463Dll/symbols.txt index aad2e6b8..96b91d06 100644 --- a/config/GMPP01_00/rels/m463Dll/symbols.txt +++ b/config/GMPP01_00/rels/m463Dll/symbols.txt @@ -12,102 +12,102 @@ fn_1_6138 = .text:0x00006138; // type:function size:0x460 fn_1_6598 = .text:0x00006598; // type:function size:0x11C _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:0x8 data:double -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 data:double -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC data:4byte -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC data:4byte -lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC data:4byte -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -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_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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:0x8 data:double -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_118 = .rodata:0x00000118; // type:object size:0x8 data:double -lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 data:double -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:4byte +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x8 scope:local data:double +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x8 scope:local data:double +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_8C = .rodata:0x0000008C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +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_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +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_118 = .rodata:0x00000118; // type:object size:0x8 scope:local data:double +lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x8 scope:local data:double +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:4byte lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x94 -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 data:double -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 data:double -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:4byte +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x8 scope:local data:double +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x8 scope:local data:double +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:4byte lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x50 -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x70 -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x24 data:4byte -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x24 data:4byte -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x10 data:4byte -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0xC data:4byte -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0xC data:4byte -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x1 data:byte -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x24 lbl_1_data_24 = .data:0x00000024; // type:object size:0x24 lbl_1_data_48 = .data:0x00000048; // type:object size:0x24 diff --git a/config/GMPP01_00/rels/mentDll/symbols.txt b/config/GMPP01_00/rels/mentDll/symbols.txt index 7d00e49a..a6cdecf3 100644 --- a/config/GMPP01_00/rels/mentDll/symbols.txt +++ b/config/GMPP01_00/rels/mentDll/symbols.txt @@ -171,247 +171,247 @@ fn_1_18A54 = .text:0x00018A54; // type:function size:0x378 fn_1_18DCC = .text:0x00018DCC; // type:function size:0x1A8 fn_1_18F74 = .text:0x00018F74; // type:function size:0x174 fn_1_190E8 = .text:0x000190E8; // type:function size:0xB38 -fn_1_19C20 = .text:0x00019C20; // type:function size:0x1D98 -fn_1_1B9B8 = .text:0x0001B9B8; // type:function size:0xA28 -fn_1_1C3E0 = .text:0x0001C3E0; // type:function size:0x120 -fn_1_1C500 = .text:0x0001C500; // type:function size:0xE0 -fn_1_1C5E0 = .text:0x0001C5E0; // type:function size:0x23C -fn_1_1C81C = .text:0x0001C81C; // type:function size:0x238 -fn_1_1CA54 = .text:0x0001CA54; // type:function size:0x3A0 -fn_1_1CDF4 = .text:0x0001CDF4; // type:function size:0x594 -fn_1_1D388 = .text:0x0001D388; // type:function size:0x9DC -fn_1_1DD64 = .text:0x0001DD64; // type:function size:0x70 -fn_1_1DDD4 = .text:0x0001DDD4; // type:function size:0x70 -fn_1_1DE44 = .text:0x0001DE44; // type:function size:0x1FC -fn_1_1E040 = .text:0x0001E040; // type:function size:0x250 -fn_1_1E290 = .text:0x0001E290; // type:function size:0x4A0 -fn_1_1E730 = .text:0x0001E730; // type:function size:0xD4C -fn_1_1F47C = .text:0x0001F47C; // type:function size:0xC8 -fn_1_1F544 = .text:0x0001F544; // type:function size:0x1B0 -fn_1_1F6F4 = .text:0x0001F6F4; // type:function size:0x1CC -fn_1_1F8C0 = .text:0x0001F8C0; // type:function size:0x220 -fn_1_1FAE0 = .text:0x0001FAE0; // type:function size:0x1B4 -fn_1_1FC94 = .text:0x0001FC94; // type:function size:0x144 -fn_1_1FDD8 = .text:0x0001FDD8; // type:function size:0x610 -fn_1_203E8 = .text:0x000203E8; // type:function size:0x260 -fn_1_20648 = .text:0x00020648; // type:function size:0x138 -fn_1_20780 = .text:0x00020780; // type:function size:0x130 -fn_1_208B0 = .text:0x000208B0; // type:function size:0x130 -fn_1_209E0 = .text:0x000209E0; // type:function size:0x5E0 -fn_1_20FC0 = .text:0x00020FC0; // type:function size:0x5F0 -fn_1_215B0 = .text:0x000215B0; // type:function size:0xED0 -fn_1_22480 = .text:0x00022480; // type:function size:0xE38 -fn_1_232B8 = .text:0x000232B8; // type:function size:0x60C +fn_1_19C98 = .text:0x00019C20; // type:function size:0x1D98 +fn_1_1BB2C = .text:0x0001B9B8; // type:function size:0xA28 +fn_1_1C554 = .text:0x0001C3E0; // type:function size:0x120 +fn_1_1C674 = .text:0x0001C500; // type:function size:0xE0 +fn_1_1C754 = .text:0x0001C5E0; // type:function size:0x23C +fn_1_1C990 = .text:0x0001C81C; // type:function size:0x238 +fn_1_1CBC8 = .text:0x0001CA54; // type:function size:0x3A0 +fn_1_1CF68 = .text:0x0001CDF4; // type:function size:0x594 +fn_1_1D4FC = .text:0x0001D388; // type:function size:0x9DC +fn_1_1DED8 = .text:0x0001DD64; // type:function size:0x70 +fn_1_1DF48 = .text:0x0001DDD4; // type:function size:0x70 +fn_1_1DFB8 = .text:0x0001DE44; // type:function size:0x1FC +fn_1_1E1B4 = .text:0x0001E040; // type:function size:0x250 +fn_1_1E404 = .text:0x0001E290; // type:function size:0x4A0 +fn_1_1E8A4 = .text:0x0001E730; // type:function size:0xD4C +fn_1_1F5F0 = .text:0x0001F47C; // type:function size:0xC8 +fn_1_1F6B8 = .text:0x0001F544; // type:function size:0x1B0 +fn_1_1F868 = .text:0x0001F6F4; // type:function size:0x1CC +fn_1_1FA34 = .text:0x0001F8C0; // type:function size:0x220 +fn_1_1FC54 = .text:0x0001FAE0; // type:function size:0x1B4 +fn_1_1FE08 = .text:0x0001FC94; // type:function size:0x144 +fn_1_1FF4C = .text:0x0001FDD8; // type:function size:0x610 +fn_1_2055C = .text:0x000203E8; // type:function size:0x260 +fn_1_207BC = .text:0x00020648; // type:function size:0x138 +fn_1_208F4 = .text:0x00020780; // type:function size:0x130 +fn_1_20A24 = .text:0x000208B0; // type:function size:0x130 +fn_1_20B54 = .text:0x000209E0; // type:function size:0x5E0 +fn_1_21134 = .text:0x00020FC0; // type:function size:0x5F0 +fn_1_21724 = .text:0x000215B0; // type:function size:0xED0 +fn_1_225F4 = .text:0x00022480; // type:function size:0xE38 +fn_1_2342C = .text:0x000232B8; // type:function size:0x60C _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_18 = .rodata:0x00000018; // type:object size:0x8 data:double -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 data:double -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 data:double -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:0xC data:4byte -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0xC data:4byte -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC data:4byte -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_8C = .rodata:0x0000008C; // type:object size:0x4 data:float -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double -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:0x1 data:byte -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x1C data:4byte -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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0xC data:4byte -lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float -lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x10 data:4byte -lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x18 data:4byte -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0xC data:4byte -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0xC data:4byte -lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float -lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0xC data:4byte -lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float -lbl_1_rodata_194 = .rodata:0x00000194; // type:object size:0x18 data:4byte -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0xC data:4byte -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0xC data:4byte -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0xC data:4byte -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x1C data:4byte -lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x10 data:4byte -lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x18 data:4byte -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0xC data:4byte -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0xC data:4byte -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x1C data:4byte -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0xC data:4byte -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0xC data:4byte -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0xC data:4byte -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0xC data:4byte -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC data:4byte -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC data:4byte -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x18 data:4byte -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x90 -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x18 data:4byte -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x40 data:4byte -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x20 data:4byte -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x20 data:4byte -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x4 scope:local data:float +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x8 scope:local data:double +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x8 scope:local data:double +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:0xC scope:local data:4byte +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0xC scope:local data:4byte +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_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double +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:0x1 scope:local data:byte +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x1C scope:local data:4byte +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:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 scope:local data:float +lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 scope:local data:float +lbl_1_rodata_194 = .rodata:0x00000194; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x1C scope:local data:4byte +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x90 scope:local +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_374 = .rodata:0x00000374; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x40 scope:local data:4byte +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 scope:local data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 scope:local data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x70 data:4byte lbl_1_data_70 = .data:0x00000070; // type:object size:0x4 data:4byte -lbl_1_data_74 = .data:0x00000074; // type:object size:0x22 data:string -lbl_1_data_96 = .data:0x00000096; // type:object size:0x1A data:string -lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x1A data:string -lbl_1_data_CA = .data:0x000000CA; // type:object size:0xE data:string +lbl_1_data_74 = .data:0x00000074; // type:object size:0x22 scope:local data:string +lbl_1_data_96 = .data:0x00000096; // type:object size:0x1A scope:local data:string +lbl_1_data_B0 = .data:0x000000B0; // type:object size:0x1A scope:local data:string +lbl_1_data_CA = .data:0x000000CA; // type:object size:0xE scope:local data:string lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x48 data:float lbl_1_data_120 = .data:0x00000120; // type:object size:0x18 jumptable_1_data_138 = .data:0x00000138; // type:object size:0x30 scope:local -lbl_1_data_168 = .data:0x00000168; // type:object size:0x16 data:string -lbl_1_data_17E = .data:0x0000017E; // type:object size:0x15 data:string -lbl_1_data_193 = .data:0x00000193; // type:object size:0x17 data:string -lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x16 data:string -lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x17 data:string -lbl_1_data_1D7 = .data:0x000001D7; // type:object size:0x16 data:string -lbl_1_data_1ED = .data:0x000001ED; // type:object size:0x17 data:string -lbl_1_data_204 = .data:0x00000204; // type:object size:0x16 data:string -lbl_1_data_21A = .data:0x0000021A; // type:object size:0xF data:string -lbl_1_data_229 = .data:0x00000229; // type:object size:0x1C data:string -lbl_1_data_245 = .data:0x00000245; // type:object size:0x1D data:string -lbl_1_data_262 = .data:0x00000262; // type:object size:0x14 data:string -lbl_1_data_276 = .data:0x00000276; // type:object size:0x15 data:string -lbl_1_data_28B = .data:0x0000028B; // type:object size:0x14 data:string -lbl_1_data_29F = .data:0x0000029F; // type:object size:0x15 +lbl_1_data_168 = .data:0x00000168; // type:object size:0x16 scope:local data:string +lbl_1_data_17E = .data:0x0000017E; // type:object size:0x15 scope:local data:string +lbl_1_data_193 = .data:0x00000193; // type:object size:0x17 scope:local data:string +lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x16 scope:local data:string +lbl_1_data_1C0 = .data:0x000001C0; // type:object size:0x17 scope:local data:string +lbl_1_data_1D7 = .data:0x000001D7; // type:object size:0x16 scope:local data:string +lbl_1_data_1ED = .data:0x000001ED; // type:object size:0x17 scope:local data:string +lbl_1_data_204 = .data:0x00000204; // type:object size:0x16 scope:local data:string +lbl_1_data_21A = .data:0x0000021A; // type:object size:0xF scope:local data:string +lbl_1_data_229 = .data:0x00000229; // type:object size:0x1C scope:local data:string +lbl_1_data_245 = .data:0x00000245; // type:object size:0x1D scope:local data:string +lbl_1_data_262 = .data:0x00000262; // type:object size:0x14 scope:local data:string +lbl_1_data_276 = .data:0x00000276; // type:object size:0x15 scope:local data:string +lbl_1_data_28B = .data:0x0000028B; // type:object size:0x14 scope:local data:string +lbl_1_data_29F = .data:0x0000029F; // type:object size:0x15 scope:local lbl_1_data_2B4 = .data:0x000002B4; // type:object size:0x3C lbl_1_data_2F0 = .data:0x000002F0; // type:object size:0x4 data:4byte -lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 data:string -lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 data:string -lbl_1_data_334 = .data:0x00000334; // type:object size:0x2A data:string -lbl_1_data_35E = .data:0x0000035E; // type:object size:0x3 data:string -lbl_1_data_361 = .data:0x00000361; // type:object size:0x1B data:string -lbl_1_data_37C = .data:0x0000037C; // type:object size:0x1A data:string -lbl_1_data_396 = .data:0x00000396; // type:object size:0x29 data:string -lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x2A data:string -lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0x2A data:string -lbl_1_data_413 = .data:0x00000413; // type:object size:0x2B data:string -lbl_1_data_43E = .data:0x0000043E; // type:object size:0x29 data:string -lbl_1_data_467 = .data:0x00000467; // type:object size:0x2B data:string -lbl_1_data_492 = .data:0x00000492; // type:object size:0x20 data:string -lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x22 +lbl_1_data_2F4 = .data:0x000002F4; // type:object size:0x20 scope:local data:string +lbl_1_data_314 = .data:0x00000314; // type:object size:0x20 scope:local data:string +lbl_1_data_334 = .data:0x00000334; // type:object size:0x2A scope:local data:string +lbl_1_data_35E = .data:0x0000035E; // type:object size:0x3 scope:local data:string +lbl_1_data_361 = .data:0x00000361; // type:object size:0x1B scope:local data:string +lbl_1_data_37C = .data:0x0000037C; // type:object size:0x1A scope:local data:string +lbl_1_data_396 = .data:0x00000396; // type:object size:0x29 scope:local data:string +lbl_1_data_3BF = .data:0x000003BF; // type:object size:0x2A scope:local data:string +lbl_1_data_3E9 = .data:0x000003E9; // type:object size:0x2A scope:local data:string +lbl_1_data_413 = .data:0x00000413; // type:object size:0x2B scope:local data:string +lbl_1_data_43E = .data:0x0000043E; // type:object size:0x29 scope:local data:string +lbl_1_data_467 = .data:0x00000467; // type:object size:0x2B scope:local data:string +lbl_1_data_492 = .data:0x00000492; // type:object size:0x20 scope:local data:string +lbl_1_data_4B2 = .data:0x000004B2; // type:object size:0x22 scope:local jumptable_1_data_4D4 = .data:0x000004D4; // type:object size:0x54 scope:local -lbl_1_data_528 = .data:0x00000528; // type:object size:0x1B data:string -lbl_1_data_543 = .data:0x00000543; // type:object size:0x1A data:string -lbl_1_data_55D = .data:0x0000055D; // type:object size:0xF data:string -lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 data:string +lbl_1_data_528 = .data:0x00000528; // type:object size:0x1B scope:local data:string +lbl_1_data_543 = .data:0x00000543; // type:object size:0x1A scope:local data:string +lbl_1_data_55D = .data:0x0000055D; // type:object size:0xF scope:local data:string +lbl_1_data_56C = .data:0x0000056C; // type:object size:0x10 scope:local data:string lbl_1_data_57C = .data:0x0000057C; // type:object size:0x40 lbl_1_data_5BC = .data:0x000005BC; // type:object size:0x20 lbl_1_data_5DC = .data:0x000005DC; // type:object size:0x64 data:float diff --git a/config/GMPP01_00/rels/mgmodedll/symbols.txt b/config/GMPP01_00/rels/mgmodedll/symbols.txt index ec6ed6c9..780a9b7f 100644 --- a/config/GMPP01_00/rels/mgmodedll/symbols.txt +++ b/config/GMPP01_00/rels/mgmodedll/symbols.txt @@ -139,332 +139,332 @@ fn_1_27C14 = .text:0x00027C14; // type:function size:0x210 fn_1_27E24 = .text:0x00027E24; // type:function size:0xE4 _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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 data:double -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -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_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float -lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0xC data:4byte -lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0xC data:4byte -lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0xC data:4byte -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double -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:double -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -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:0x8 data:double -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 data:double -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 data:double -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 data:double -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 data:double -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 data:double -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 data:double -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 data:double -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 data:double -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 data:double -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 data:double -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 data:double -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 data:double -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 data:double -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 data:double -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 data:double -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 data:double -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float -lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 data:double -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 data:double -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 data:double -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float -lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:float -lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 data:double -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 data:double -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 data:double -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 data:double -lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 data:float -lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 data:double -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 data:float -lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 data:float -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 data:float -lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 data:float -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 data:float -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 data:double -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 data:double -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 data:double -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 data:float -lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 data:float -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 data:float -lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 data:float -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:double -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 data:float -lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 data:float -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0xC data:4byte -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 data:float -lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 data:float -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float -lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float -lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float -lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float -lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float -lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float -lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float -lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float -lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float -lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 data:double -lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x8 data:double -lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float -lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float -lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 data:double -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double -lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float -lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 data:double -lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 data:float -lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 data:float -lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 data:float -lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0xC data:4byte -lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0xC data:4byte -lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0xC data:4byte -lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 data:float -lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 data:float -lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 data:float -lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 data:float -lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 data:float -lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 data:float -lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x4 data:float -lbl_1_rodata_6F4 = .rodata:0x000006F4; // type:object size:0x4 data:float -lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 data:float -lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0x4 data:float -lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x4 data:float -lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 data:double -lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 data:float -lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 data:float -lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 data:double -lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 data:float -lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 data:float -lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 data:float -lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 data:float -lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 data:float -lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x8 data:double -lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 data:double -lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 data:float -lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x8 data:double -lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 data:float -lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x8 data:double -lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x8 data:double -lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x4 data:float -lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x8 data:double -lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x4 data:float -lbl_1_rodata_78C = .rodata:0x0000078C; // type:object size:0x4 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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 scope:local data:double +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 scope:local data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +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_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_124 = .rodata:0x00000124; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x8 scope:local data:double +lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +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:double +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x8 scope:local data:double +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 scope:local data:double +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x8 scope:local data:double +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x8 scope:local data:double +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x8 scope:local data:double +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x8 scope:local data:double +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x8 scope:local data:double +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x8 scope:local data:double +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x8 scope:local data:double +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x8 scope:local data:double +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x8 scope:local data:double +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x8 scope:local data:double +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 scope:local data:double +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float +lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 scope:local data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x8 scope:local data:double +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 scope:local data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x8 scope:local data:double +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x8 scope:local data:double +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x8 scope:local data:double +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 scope:local data:double +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 scope:local data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x8 scope:local data:double +lbl_1_rodata_538 = .rodata:0x00000538; // type:object size:0x4 scope:local data:float +lbl_1_rodata_540 = .rodata:0x00000540; // type:object size:0x8 scope:local data:double +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54C = .rodata:0x0000054C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x4 scope:local data:float +lbl_1_rodata_554 = .rodata:0x00000554; // type:object size:0x4 scope:local data:float +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x4 scope:local data:float +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x8 scope:local data:double +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x8 scope:local data:double +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x8 scope:local data:double +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_590 = .rodata:0x00000590; // type:object size:0x4 scope:local data:float +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x4 scope:local data:float +lbl_1_rodata_59C = .rodata:0x0000059C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B4 = .rodata:0x000005B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5BC = .rodata:0x000005BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5FC = .rodata:0x000005FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 scope:local data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 scope:local data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 scope:local data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 scope:local data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 scope:local data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 scope:local data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 scope:local data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 scope:local data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 scope:local data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 scope:local data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 scope:local data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 scope:local data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 scope:local data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 scope:local data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 scope:local data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x8 scope:local data:double +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x8 scope:local data:double +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 scope:local data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 scope:local data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x8 scope:local data:double +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 scope:local data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6AC = .rodata:0x000006AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6B0 = .rodata:0x000006B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6B4 = .rodata:0x000006B4; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_6C0 = .rodata:0x000006C0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_6CC = .rodata:0x000006CC; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_6D8 = .rodata:0x000006D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6DC = .rodata:0x000006DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6E0 = .rodata:0x000006E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6E4 = .rodata:0x000006E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6E8 = .rodata:0x000006E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6EC = .rodata:0x000006EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6F0 = .rodata:0x000006F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6F4 = .rodata:0x000006F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6F8 = .rodata:0x000006F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6FC = .rodata:0x000006FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_700 = .rodata:0x00000700; // type:object size:0x4 scope:local data:float +lbl_1_rodata_708 = .rodata:0x00000708; // type:object size:0x8 scope:local data:double +lbl_1_rodata_710 = .rodata:0x00000710; // type:object size:0x8 scope:local data:float +lbl_1_rodata_718 = .rodata:0x00000718; // type:object size:0x4 scope:local data:float +lbl_1_rodata_720 = .rodata:0x00000720; // type:object size:0x8 scope:local data:double +lbl_1_rodata_728 = .rodata:0x00000728; // type:object size:0x4 scope:local data:float +lbl_1_rodata_72C = .rodata:0x0000072C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_730 = .rodata:0x00000730; // type:object size:0x4 scope:local data:float +lbl_1_rodata_734 = .rodata:0x00000734; // type:object size:0x4 scope:local data:float +lbl_1_rodata_738 = .rodata:0x00000738; // type:object size:0x4 scope:local data:float +lbl_1_rodata_740 = .rodata:0x00000740; // type:object size:0x8 scope:local data:double +lbl_1_rodata_748 = .rodata:0x00000748; // type:object size:0x8 scope:local data:double +lbl_1_rodata_750 = .rodata:0x00000750; // type:object size:0x4 scope:local data:float +lbl_1_rodata_758 = .rodata:0x00000758; // type:object size:0x8 scope:local data:double +lbl_1_rodata_760 = .rodata:0x00000760; // type:object size:0x4 scope:local data:float +lbl_1_rodata_768 = .rodata:0x00000768; // type:object size:0x8 scope:local data:double +lbl_1_rodata_770 = .rodata:0x00000770; // type:object size:0x8 scope:local data:double +lbl_1_rodata_778 = .rodata:0x00000778; // type:object size:0x4 scope:local data:float +lbl_1_rodata_780 = .rodata:0x00000780; // type:object size:0x8 scope:local data:double +lbl_1_rodata_788 = .rodata:0x00000788; // type:object size:0x4 scope:local data:float +lbl_1_rodata_78C = .rodata:0x0000078C; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x1C lbl_1_data_1C = .data:0x0000001C; // type:object size:0x24 lbl_1_data_40 = .data:0x00000040; // type:object size:0x30 data:4byte @@ -482,7 +482,7 @@ lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x6 lbl_1_data_E6 = .data:0x000000E6; // type:object size:0xA lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x20 lbl_1_data_110 = .data:0x00000110; // type:object size:0x10 -lbl_1_data_120 = .data:0x00000120; // type:object size:0x10 +mgRecordIdxTbl = .data:0x00000120; // type:object size:0x10 lbl_1_data_130 = .data:0x00000130; // type:object size:0x28 lbl_1_data_158 = .data:0x00000158; // type:object size:0x2 data:2byte lbl_1_data_15A = .data:0x0000015A; // type:object size:0x8 @@ -517,7 +517,7 @@ lbl_1_data_9D0 = .data:0x000009D0; // type:object size:0x20 lbl_1_data_9F0 = .data:0x000009F0; // type:object size:0x20 lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x2 data:2byte lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte +mgModeEvtNo = .bss:0x00000004; // type:object size:0x2 data:2byte lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x264 data:4byte lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x8 data:float lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x18 data:4byte @@ -548,8 +548,8 @@ lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x8 lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x8 data:2byte lbl_1_bss_352 = .bss:0x00000352; // type:object size:0x1E -lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC -lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC +lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC scope:local +lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC scope:local lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte lbl_1_bss_38A = .bss:0x0000038A; // type:object size:0x2 data:2byte lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x8 diff --git a/config/GMPP01_00/rels/w01Dll/symbols.txt b/config/GMPP01_00/rels/w01Dll/symbols.txt index 94ae2e2e..2fa2c70d 100644 --- a/config/GMPP01_00/rels/w01Dll/symbols.txt +++ b/config/GMPP01_00/rels/w01Dll/symbols.txt @@ -136,204 +136,204 @@ fn_1_11064 = .text:0x00011064; // type:function size:0x420 fn_1_11484 = .text:0x00011484; // type:function size:0x56C _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:0x8 data:double -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -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:0x8 data:double -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:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float -lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // 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:0x10 data:4byte -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x8 data:4byte -lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x8 data:4byte -lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x2 data:2byte -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 data:float -lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 data:float -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x2 data:2byte -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0xC data:2byte -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 data:double -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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 data:double -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 data:double -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 data:double -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 data:double -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 data:double -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 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:0x8 scope:local data:double +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local data:float +lbl_1_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // 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:0x10 scope:local data:4byte +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x2 scope:local data:2byte +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local data:float +lbl_1_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x2 scope:local data:2byte +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0xC scope:local data:2byte +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x8 scope:local data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_244 = .rodata:0x00000244; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x8 scope:local data:double +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x8 scope:local data:double +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x8 scope:local data:double +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x528 lbl_1_data_528 = .data:0x00000528; // type:object size:0x2 data:2byte lbl_1_data_52A = .data:0x0000052A; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/w02Dll/symbols.txt b/config/GMPP01_00/rels/w02Dll/symbols.txt index 0383d0e6..326cbb5f 100644 --- a/config/GMPP01_00/rels/w02Dll/symbols.txt +++ b/config/GMPP01_00/rels/w02Dll/symbols.txt @@ -111,259 +111,259 @@ fn_1_E310 = .text:0x0000E310; // type:function size:0x10C fn_1_E41C = .text:0x0000E41C; // type:function size:0xB8 _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:0x8 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:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 data:double -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 data:double -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float -lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0xC data:4byte -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x18 data:4byte -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x24 data:4byte -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC data:4byte -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x28 data:4byte -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -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:double -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_198 = .rodata:0x00000198; // type:object size:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 data:double -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_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:byte -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 data:double -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 data:double -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 data:double -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 data:double -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 data:double -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float -lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float -lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 data:double -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 data:double -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 data:double -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 data:float -lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 data:float -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0xC data:4byte -lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float -lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 data:double -lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float -lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float -lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 data:float -lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 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:0x8 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:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x8 scope:local data:double +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x8 scope:local data:double +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 scope:local data:float +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float +lbl_1_rodata_8C = .rodata:0x0000008C; // 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:0xC scope:local data:4byte +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x28 scope:local data:4byte +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +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:double +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_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x8 scope:local data:double +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_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:byte +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x8 scope:local data:double +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x8 scope:local data:double +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_354 = .rodata:0x00000354; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x8 scope:local data:double +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float +lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float +lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 scope:local data:double +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x8 scope:local data:double +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E4 = .rodata:0x000004E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x8 scope:local data:double +lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float +lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_530 = .rodata:0x00000530; // type:object size:0x4 scope:local data:float +lbl_1_rodata_534 = .rodata:0x00000534; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/w03Dll/symbols.txt b/config/GMPP01_00/rels/w03Dll/symbols.txt index cac4adfe..40d6b23e 100644 --- a/config/GMPP01_00/rels/w03Dll/symbols.txt +++ b/config/GMPP01_00/rels/w03Dll/symbols.txt @@ -126,207 +126,207 @@ fn_1_BDAC = .text:0x0000BDAC; // type:function size:0x84 fn_1_BE30 = .text:0x0000BE30; // type:function size:0x418 _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_38 = .rodata:0x00000038; // type:object size:0x8 data:double -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC data:4byte -lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x24 data:4byte -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:0x4 data:float -lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 data:float -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x6 data:2byte -lbl_1_rodata_BE = .rodata:0x000000BE; // type:object size:0x1 data:byte -lbl_1_rodata_C2 = .rodata:0x000000C2; // type:object size:0x6 data:byte -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:float -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_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 data:double -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_124 = .rodata:0x00000124; // type:object size:0x4 data:float -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x20 data:4byte -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:4byte -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x10 data:4byte -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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:0x8 data:double -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_200 = .rodata:0x00000200; // type:object size:0x8 data:double -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:0x8 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 data:float -lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 data:float -lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 data:float -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 data:double -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 data:float -lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 data:float -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 data:double -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 data:double -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 data:double -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 data:double -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 data:float -lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 data:float -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 data:float -lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 data:float -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 data:float -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 data:double -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 data:double -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:double -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 data:double -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 data:float -lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 data:float -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double +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_38 = .rodata:0x00000038; // type:object size:0x8 scope:local data:double +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x24 scope:local data:4byte +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:0x4 scope:local data:float +lbl_1_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x6 scope:local data:2byte +lbl_1_rodata_BE = .rodata:0x000000BE; // type:object size:0x1 scope:local data:byte +lbl_1_rodata_C2 = .rodata:0x000000C2; // type:object size:0x6 scope:local data:byte +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:float +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_F0 = .rodata:0x000000F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x8 scope:local data:double +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_124 = .rodata:0x00000124; // type:object size:0x4 scope:local data:float +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x20 scope:local data:4byte +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x10 scope:local data:4byte +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +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_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +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:0x8 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x4 scope:local data:float +lbl_1_rodata_21C = .rodata:0x0000021C; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24C = .rodata:0x0000024C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x8 scope:local data:double +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28C = .rodata:0x0000028C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2EC = .rodata:0x000002EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F4 = .rodata:0x000002F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_31C = .rodata:0x0000031C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_35C = .rodata:0x0000035C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x4 scope:local data:float +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x8 scope:local data:double +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x8 scope:local data:double +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D4 = .rodata:0x000003D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0x1E0 lbl_1_data_1E0 = .data:0x000001E0; // type:object size:0x2 data:2byte lbl_1_data_1E2 = .data:0x000001E2; // type:object size:0x2 data:2byte diff --git a/config/GMPP01_00/rels/w04Dll/symbols.txt b/config/GMPP01_00/rels/w04Dll/symbols.txt index 44c0c8eb..75137666 100644 --- a/config/GMPP01_00/rels/w04Dll/symbols.txt +++ b/config/GMPP01_00/rels/w04Dll/symbols.txt @@ -98,226 +98,226 @@ fn_1_E690 = .text:0x0000E690; // type:function size:0x1D4 fn_1_E864 = .text:0x0000E864; // type:function size:0x18C _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:0x8 data:double -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:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:float -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_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -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_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 data:double -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 data:double -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_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double -lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 data:float -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:0x8 data:double -lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 data:double -lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float -lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 data:float -lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float -lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float -lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float -lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float -lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float -lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float -lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 data:float -lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 data:float -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:0x4 data:float -lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 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:0x8 data:double -lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float -lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float -lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float -lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float -lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float -lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 data:float -lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 data:float -lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 data:float -lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 data:float -lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 data:float -lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float -lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 data:float -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -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_1F8 = .rodata:0x000001F8; // type:object size:0x8 data:double -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_210 = .rodata:0x00000210; // type:object size:0x8 data:double -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_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0xC data:4byte -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 data:float -lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 data:float -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 data:float -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 data:float -lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 data:float -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 data:float -lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 data:float -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC data:4byte -lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 data:float -lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 data:float -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 data:float -lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 data:float -lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 data:float -lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 data:float -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 data:float -lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 data:float -lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 data:float -lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 data:float -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 data:float -lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 data:float -lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 data:float -lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 data:float -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 data:double -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 data:double -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 data:double -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 data:float -lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 data:float -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 data:float -lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 data:float -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 data:float -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 data:double -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 data:float -lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 data:float -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 data:float -lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 data:float -lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 data:double -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 data:double -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 data:float -lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 data:float -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 data:float -lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 data:float -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 data:float -lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 data:float -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 data:float -lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 data:float -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 data:float -lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 data:float -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 data:float -lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 data:float -lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float -lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float -lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float -lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float -lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 data:double -lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float -lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 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:0x8 scope:local data:double +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:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:float +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_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +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_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x8 scope:local data:double +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_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double +lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local data:float +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:0x8 scope:local data:double +lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x8 scope:local data:double +lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float +lbl_1_rodata_154 = .rodata:0x00000154; // type:object size:0x4 scope:local data:float +lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float +lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float +lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float +lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float +lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x4 scope:local data:float +lbl_1_rodata_174 = .rodata:0x00000174; // type:object size:0x4 scope:local data:float +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:0x4 scope:local data:float +lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local 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:0x8 scope:local data:double +lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1BC = .rodata:0x000001BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C4 = .rodata:0x000001C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1CC = .rodata:0x000001CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +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_1F8 = .rodata:0x000001F8; // type:object size:0x8 scope:local data:double +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_210 = .rodata:0x00000210; // type:object size:0x8 scope:local data:double +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_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x4 scope:local data:float +lbl_1_rodata_23C = .rodata:0x0000023C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x4 scope:local data:float +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_254 = .rodata:0x00000254; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x4 scope:local data:float +lbl_1_rodata_25C = .rodata:0x0000025C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_264 = .rodata:0x00000264; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x4 scope:local data:float +lbl_1_rodata_26C = .rodata:0x0000026C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0xC scope:local data:4byte +lbl_1_rodata_290 = .rodata:0x00000290; // type:object size:0x4 scope:local data:float +lbl_1_rodata_294 = .rodata:0x00000294; // type:object size:0x4 scope:local data:float +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x4 scope:local data:float +lbl_1_rodata_29C = .rodata:0x0000029C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A0 = .rodata:0x000002A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A4 = .rodata:0x000002A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x8 scope:local data:float +lbl_1_rodata_2C0 = .rodata:0x000002C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C4 = .rodata:0x000002C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D0 = .rodata:0x000002D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D4 = .rodata:0x000002D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2D8 = .rodata:0x000002D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E4 = .rodata:0x000002E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x8 scope:local data:double +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x8 scope:local data:double +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x4 scope:local data:float +lbl_1_rodata_324 = .rodata:0x00000324; // type:object size:0x4 scope:local data:float +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x4 scope:local data:float +lbl_1_rodata_32C = .rodata:0x0000032C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x4 scope:local data:float +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x8 scope:local data:double +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x4 scope:local data:float +lbl_1_rodata_364 = .rodata:0x00000364; // type:object size:0x4 scope:local data:float +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x4 scope:local data:float +lbl_1_rodata_36C = .rodata:0x0000036C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_370 = .rodata:0x00000370; // type:object size:0x8 scope:local data:double +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x8 scope:local data:double +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38C = .rodata:0x0000038C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x8 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B4 = .rodata:0x000003B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3BC = .rodata:0x000003BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C4 = .rodata:0x000003C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3CC = .rodata:0x000003CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3DC = .rodata:0x000003DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E4 = .rodata:0x000003E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3EC = .rodata:0x000003EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F4 = .rodata:0x000003F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 scope:local data:float +lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 scope:local data:float +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float +lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x8 scope:local data:double +lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float +lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte diff --git a/configure.py b/configure.py index a7d72d58..7a862bd5 100644 --- a/configure.py +++ b/configure.py @@ -199,6 +199,9 @@ cflags_base = [ "-DMUSY_TARGET=MUSY_TARGET_DOLPHIN", ] +if config.non_matching: + cflags_base.append("-DNON_MATCHING") + # Debug flags if args.debug: cflags_base.extend(["-sym on", "-DDEBUG=1"]) @@ -279,6 +282,7 @@ cflags_musyx = [ "-str reuse,pool,readonly", "-fp_contract off", "-DMUSY_TARGET=MUSY_TARGET_DOLPHIN", + "-sym on" ] cflags_musyx_debug = [ @@ -419,7 +423,7 @@ config.libs = [ Object(Matching, "game/sprman.c"), Object(Matching, "game/sprput.c"), Object(Matching, "game/hsfload.c"), - Object(NonMatching, "game/hsfdraw.c"), + Object(Equivalent, "game/hsfdraw.c"), Object(Matching, "game/hsfman.c"), Object(Matching, "game/hsfmotion.c"), Object(Matching, "game/hsfanim.c"), @@ -1290,7 +1294,7 @@ config.libs = [ Rel( "m457Dll", # Bowser Wrestling objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m457Dll/main.c"), + Object(Matching, "REL/m457Dll/main.c"), }, ), Rel( @@ -1370,7 +1374,7 @@ config.libs = [ "modeseldll", objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/main.c"), - Object(NonMatching, "REL/modeseldll/modesel.c"), + Object(Equivalent, "REL/modeseldll/modesel.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/filesel.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/datalist.c"), }, diff --git a/include/REL/mgmodedll.h b/include/REL/mgmodedll.h index 3e8ef9c3..fdfe352e 100644 --- a/include/REL/mgmodedll.h +++ b/include/REL/mgmodedll.h @@ -7,9 +7,9 @@ #include "game/object.h" #include "game/objsub.h" +#include "game/pad.h" #include "game/sprite.h" #include "game/window.h" -#include "game/pad.h" typedef struct datalist_model { s32 datanum; @@ -33,7 +33,7 @@ typedef struct datalist_sprite { typedef struct struct_bss8_24 { omObjData *unk0; - void (*unk4)(omObjData*, ...); + void (*unk4)(omObjData *, ...); u8 unk8[0x50]; s32 unk58; s32 unk5C; @@ -72,7 +72,7 @@ extern s16 lbl_1_bss_20C0[10][70]; extern s16 lbl_1_bss_20AC[10]; extern s16 lbl_1_bss_20AA; -extern Process *lbl_1_bss_2D8; +extern Process *objman; extern s16 lbl_1_bss_2E4; @@ -80,7 +80,7 @@ extern s16 lbl_1_bss_2A6; extern s16 lbl_1_bss_2A4; extern StructBss8 lbl_1_bss_8; -extern s16 lbl_1_bss_4; +extern s16 mgModeEvtNo; extern s16 lbl_1_data_A2[]; extern DataListModel lbl_1_data_490[]; @@ -112,4 +112,4 @@ s16 fn_1_271B4(s16 mgNo, s16 x, s16 y); void fn_1_27418(void); void fn_1_279FC(s32 coinSkipF); -#endif \ No newline at end of file +#endif diff --git a/src/REL/bootDll/main.c b/src/REL/bootDll/main.c index 5aa7dfcb..ee8b1b04 100644 --- a/src/REL/bootDll/main.c +++ b/src/REL/bootDll/main.c @@ -4,6 +4,7 @@ #include "game/data.h" #include "game/gamework_data.h" #include "game/hsfman.h" +#include "game/minigame_seq.h" #include "game/memory.h" #include "game/msm.h" #include "game/object.h" @@ -783,4 +784,4 @@ void *NintendoDataDecode(void) HuDecodeData(src, dst, size, decode_type); } return dst; -} \ No newline at end of file +} diff --git a/src/REL/m413Dll/main.c b/src/REL/m413Dll/main.c index bcf73c18..718bf09c 100644 --- a/src/REL/m413Dll/main.c +++ b/src/REL/m413Dll/main.c @@ -14,6 +14,13 @@ #include "ext_math.h" +#ifndef __MWERKS__ +#include "string.h" +#include "game/hsfex.h" +#endif + +s32 rand8(void); + typedef struct struct_bss_2A6C StructBss2A6C; typedef struct struct_sp_14C8 StructSp14C8; diff --git a/src/REL/m419Dll/main.c b/src/REL/m419Dll/main.c index 83ae359e..dd58a28a 100755 --- a/src/REL/m419Dll/main.c +++ b/src/REL/m419Dll/main.c @@ -1593,7 +1593,7 @@ void fn_1_78B4(StructBss200 *arg0) float sp118; float sp114; float sp110; - float var_f27; + float var_f27; // ! - uninitialized float var_f29; float var_f28; float var_f30; diff --git a/src/REL/m423Dll/main.c b/src/REL/m423Dll/main.c index a511fc2d..4590b4a0 100755 --- a/src/REL/m423Dll/main.c +++ b/src/REL/m423Dll/main.c @@ -2800,7 +2800,7 @@ void fn_1_8CB4(omObjData *arg0) float temp_f28; float var_f30; float var_f31; - float var_f26; + float var_f26; // ! - uninitialized float temp_f27; StructBssBCData *temp_r31; ModelData *sp8; diff --git a/src/REL/m424Dll/claw.c b/src/REL/m424Dll/claw.c index b6061580..42d11821 100644 --- a/src/REL/m424Dll/claw.c +++ b/src/REL/m424Dll/claw.c @@ -1162,7 +1162,7 @@ void fn_1_C604(s32 arg0, s32 arg1) Vec *var_r31; f32 temp_f31; f32 var_f30; - s32 var_r30; + s32 var_r30; // ! - uninitialized M424DllBallStruct2 *var_r28; Vec *var_r27; diff --git a/src/REL/m424Dll/main.c b/src/REL/m424Dll/main.c index 8fb9218d..0b9f27ba 100644 --- a/src/REL/m424Dll/main.c +++ b/src/REL/m424Dll/main.c @@ -132,7 +132,7 @@ void fn_1_41C(omObjData* object) { s16 sp12; s16 spE; s16 spA; - f32 var_f31; + f32 var_f31; // ! - uninitalized s32 var_r31; s32 var_r30; CameraData* var_r29; diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c index 01182261..7d1a75d0 100644 --- a/src/REL/m425Dll/main.c +++ b/src/REL/m425Dll/main.c @@ -800,7 +800,7 @@ void fn_1_2A94(s16 arg0, Vec *arg1, Vec *arg2, float arg8) void fn_1_2B2C(omObjData *object) { - s32 sp8; + s32 sp8; // ! - uninitialized M425DllWork *var_r31; s32 var_r29; s32 var_r28; diff --git a/src/REL/m450Dll/main.c b/src/REL/m450Dll/main.c index e8536366..4610c4b3 100644 --- a/src/REL/m450Dll/main.c +++ b/src/REL/m450Dll/main.c @@ -3874,7 +3874,7 @@ void fn_1_11D5C(omObjData *object) UnkM450Struct3 *var_r31; s32 var_r29; - s32 var_r27; + s32 var_r27; // ! - uninitialized s32 *var_r26; (void)var_r27; diff --git a/src/REL/m457Dll/main.c b/src/REL/m457Dll/main.c index 484b27b6..4e570c51 100755 --- a/src/REL/m457Dll/main.c +++ b/src/REL/m457Dll/main.c @@ -1,7 +1,7 @@ +#include "dolphin/pad.h" #include "game/audio.h" #include "game/chrman.h" #include "game/data.h" -#include "game/sprite.h" #include "game/esprite.h" #include "game/gamework_data.h" #include "game/hsfdraw.h" @@ -13,43 +13,73 @@ #include "game/pad.h" #include "game/printfunc.h" #include "game/process.h" +#include "game/sprite.h" #include "game/window.h" #include "game/wipe.h" #include "string.h" #include "ext_math.h" +#include "version.h" s32 rand8(void); -typedef struct { - /* 0x00 */ s32 unk00; - /* 0x04 */ s32 unk04; - /* 0x08 */ s32 unk08; - /* 0x0C */ s32 unk0C; - /* 0x10 */ s32 unk10; - /* 0x14 */ s32 unk14; +#define MSM_SE_BOWSER_LAUGH 0x3A +#define MSM_SE_BOWSER_HOWL 0x3E +#define MSM_SE_KOOPA_KID_DROP 0x5B +#define MSM_SE_PLAYER_DROP 0x33D +#define MSM_SE_WIND 0x6D7 +#define MSM_SE_INVINCIBILITY 0x7E6 + +#define MSM_MUS_BACKGROUND 0x4D + +#define MODEL_ID_PLAYER_PLAYER 0 + +#define MODEL_ID_GAME_SKY 0 +#define MODEL_ID_GAME_RING 1 +#define MODEL_ID_GAME_MUSHROOM 2 +#define MODEL_ID_GAME_INVINCE_SHINING 3 +#define MODEL_ID_GAME_INVINCE_SPARKS 4 +#define MODEL_ID_GAME_KOOPA_KID 5 +#define MODEL_ID_GAME_WAR_FAN 6 + +#define CHARACTER_BOWSER -1 +#define PAD_IDX_COM -1 + +#define PLAYER_STATE_INITIAL_ADVANCE 2 // TODO is this right? +#define PLAYER_STATE_FALLING 16 + +#define PREV_TRIG_L 0 +#define PREV_TRIG_R 1 + +typedef struct PlayerData { + /* 0x00 */ s32 group; + /* 0x04 */ s32 player; + /* 0x08 */ s32 character; + /* 0x0C */ s32 padIdx; + /* 0x10 */ s32 diff; + /* 0x14 */ s32 state; /* 0x18 */ s32 unk18; - /* 0x1C */ s32 unk1C; + /* 0x1C */ s32 invinceTime; /* 0x20 */ s32 unk20; /* 0x24 */ s32 unk24; /* 0x28 */ s32 unk28; /* 0x2C */ s32 unk2C; - /* 0x30 */ s32 unk30; + /* 0x30 */ s32 stamina; /* 0x34 */ s32 unk34; - /* 0x38 */ s32 unk38; + /* 0x38 */ s32 prevTrig; /* 0x3C */ s32 unk3C; /* 0x40 */ s32 unk40; /* 0x44 */ s32 unk44; /* 0x48 */ float unk48; /* 0x4C */ s32 unk4C; -} StructBss68Data; // Size 0x50 +} PlayerData; // Size 0x50 -typedef struct { +typedef struct StructBss78 { /* 0x00 */ s32 unk00; /* 0x04 */ float unk04[3]; } StructBss78; // Size 0x10 -typedef struct { +typedef struct StructData28C { /* 0x00 */ s32 unk00; /* 0x04 */ s32 unk04; /* 0x08 */ float unk08; @@ -58,137 +88,86 @@ typedef struct { /* 0x14 */ float unk14; } StructData28C; // Size 0x18 -void fn_1_7AE4(omObjData* arg0); +typedef struct SparkData { + /* 0x00 */ float scale; + /* 0x04 */ float xOffset; + /* 0x08 */ float yOffset; +} SparkData; // Size 0x0C -StructBss78 lbl_1_bss_78[5]; -omObjData* lbl_1_bss_74; -omObjData* lbl_1_bss_70; -omObjData* lbl_1_bss_68[2]; -omObjData* lbl_1_bss_64; -s32 lbl_1_bss_60; -s32 lbl_1_bss_5C; -char lbl_1_bss_58[4]; // unused -s32 lbl_1_bss_54; -s32 lbl_1_bss_50; -Process* lbl_1_bss_4C; -s32 lbl_1_bss_48; -s32 lbl_1_bss_44; -s32 lbl_1_bss_40; -s32 lbl_1_bss_3C; -char lbl_1_bss_38[4]; // unused -float lbl_1_bss_34; -float lbl_1_bss_30; -float lbl_1_bss_2C; -float lbl_1_bss_28; -s32 lbl_1_bss_24; -s32 lbl_1_bss_20; -s32 lbl_1_bss_1C; -s32 lbl_1_bss_18; -s32 lbl_1_bss_14; -s32 lbl_1_bss_10; -char lbl_1_bss_8[8]; // unused -s32 lbl_1_bss_4; -char lbl_1_bss_0[4]; // unused +static void M457Exit(omObjData *object); -s32 lbl_1_data_0[] = { - DATA_MAKE_NUM(DATADIR_M457, 23), - DATA_MAKE_NUM(DATADIR_M457, 22), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_MGCONST, 0), - DATA_MAKE_NUM(DATADIR_M457, 23), - DATA_MAKE_NUM(DATADIR_M457, 22), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_M457, 24), - DATA_MAKE_NUM(DATADIR_MGCONST, 0), - DATA_MAKE_NUM(DATADIR_M457, 27), - DATA_MAKE_NUM(DATADIR_M457, 28), - DATA_MAKE_NUM(DATADIR_M457, 25), - DATA_MAKE_NUM(DATADIR_M457, 25), - DATA_MAKE_NUM(DATADIR_M457, 25), - DATA_MAKE_NUM(DATADIR_M457, 25), - DATA_MAKE_NUM(DATADIR_M457, 25) -}; +static StructBss78 lbl_1_bss_78[5]; +static omObjData *mainObj; +static omObjData *omViewObj; +static omObjData *playerObj[2]; +static omObjData *gameObj; +static s32 lbl_1_bss_60; +static s32 gameState; +static char lbl_1_bss_58[4]; // unused +static s32 lbl_1_bss_54; +static s32 lbl_1_bss_50; +static Process *objman; +static s32 lightId; +static s32 lbl_1_bss_44; +static s32 lbl_1_bss_40; +static s32 lbl_1_bss_3C; +static char lbl_1_bss_38[4]; // unused +static float lbl_1_bss_34; +static float lbl_1_bss_30; +static float lbl_1_bss_2C; +static float lbl_1_bss_28; +static s32 lbl_1_bss_24; +static s32 lbl_1_bss_20; +static s32 lbl_1_bss_1C; +static s32 lbl_1_bss_18; +static BOOL againstBrowserF; +static s32 m457MesEndF; +static char lbl_1_bss_8[8]; // unused +static s32 lbl_1_bss_4; +static char lbl_1_bss_0[4]; // unused -s32 lbl_1_data_5C[23] = { 0 }; +s32 sprDataNumTbl[] = { DATA_MAKE_NUM(DATADIR_M457, 23), DATA_MAKE_NUM(DATADIR_M457, 22), DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), DATA_MAKE_NUM(DATADIR_M457, 24), DATA_MAKE_NUM(DATADIR_M457, 24), DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_MGCONST, 0), DATA_MAKE_NUM(DATADIR_M457, 23), DATA_MAKE_NUM(DATADIR_M457, 22), DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_M457, 24), DATA_MAKE_NUM(DATADIR_M457, 24), DATA_MAKE_NUM(DATADIR_M457, 24), DATA_MAKE_NUM(DATADIR_M457, 24), + DATA_MAKE_NUM(DATADIR_MGCONST, 0), DATA_MAKE_NUM(DATADIR_M457, 27), DATA_MAKE_NUM(DATADIR_M457, 28), DATA_MAKE_NUM(DATADIR_M457, 25), + DATA_MAKE_NUM(DATADIR_M457, 25), DATA_MAKE_NUM(DATADIR_M457, 25), DATA_MAKE_NUM(DATADIR_M457, 25), DATA_MAKE_NUM(DATADIR_M457, 25) }; -s32 lbl_1_data_B8[] = { - DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 5), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 112), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 111), - DATA_MAKE_NUM(DATADIR_M457, 8), - DATA_MAKE_NUM(DATADIR_M457, 0), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 12), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 13), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 21), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), - DATA_MAKE_NUM(DATADIR_MARIOMOT, 24) -}; +s32 sprIdTbl[23] = { 0 }; + +s32 lbl_1_data_B8[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), DATA_MAKE_NUM(DATADIR_MARIOMOT, 5), DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 112), DATA_MAKE_NUM(DATADIR_MARIOMOT, 111), DATA_MAKE_NUM(DATADIR_M457, 8), DATA_MAKE_NUM(DATADIR_M457, 0), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 12), DATA_MAKE_NUM(DATADIR_MARIOMOT, 13), DATA_MAKE_NUM(DATADIR_MARIOMOT, 21), + DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), DATA_MAKE_NUM(DATADIR_MARIOMOT, 24) }; u32 lbl_1_data_E8[] = { 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0 }; -u32 lbl_1_data_118[] = { - DATA_MAKE_NUM(DATADIR_BKOOPA, 8), - DATA_MAKE_NUM(DATADIR_BKOOPA, 10), - 0, - DATA_MAKE_NUM(DATADIR_M457, 31), - DATA_MAKE_NUM(DATADIR_M457, 32), - DATA_MAKE_NUM(DATADIR_M457, 33), - DATA_MAKE_NUM(DATADIR_M457, 34), - DATA_MAKE_NUM(DATADIR_M457, 35), - DATA_MAKE_NUM(DATADIR_M457, 36), - DATA_MAKE_NUM(DATADIR_M457, 37), - DATA_MAKE_NUM(DATADIR_M457, 29), - DATA_MAKE_NUM(DATADIR_M457, 30) -}; +u32 lbl_1_data_118[] = { DATA_MAKE_NUM(DATADIR_BKOOPA, 8), DATA_MAKE_NUM(DATADIR_BKOOPA, 10), 0, DATA_MAKE_NUM(DATADIR_M457, 31), + DATA_MAKE_NUM(DATADIR_M457, 32), DATA_MAKE_NUM(DATADIR_M457, 33), DATA_MAKE_NUM(DATADIR_M457, 34), DATA_MAKE_NUM(DATADIR_M457, 35), + DATA_MAKE_NUM(DATADIR_M457, 36), DATA_MAKE_NUM(DATADIR_M457, 37), DATA_MAKE_NUM(DATADIR_M457, 29), DATA_MAKE_NUM(DATADIR_M457, 30) }; u8 lbl_1_data_148[12] = { 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1 }; s32 lbl_1_data_154[12] = { 8, 0, 0, 8, 5, 8, 4, 2, 2, 8, 8, 8 }; s32 lbl_1_data_184[12] = { 0 }; -float lbl_1_data_1B4[][3] = { - { 0.0f, 0.0f, 0.0f }, - { 0.0f, 0.0f, 0.0f }, - { 20.0f, 60.0f, 20.0f }, - { 20.0f, 70.0f, 20.0f }, - { 20.0f, 20.0f, 20.0f }, - { 50.0f, -70.0f, 0.0f }, - { 20.0f, 60.0f, 20.0f }, - { 100.0f, 0.0f, 50.0f }, - { -70.0f, -70.0f, -70.0f } -}; +float lbl_1_data_1B4[9][3] = { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 20.0f, 60.0f, 20.0f }, { 20.0f, 70.0f, 20.0f }, { 20.0f, 20.0f, 20.0f }, + { 50.0f, -70.0f, 0.0f }, { 20.0f, 60.0f, 20.0f }, { 100.0f, 0.0f, 50.0f }, { -70.0f, -70.0f, -70.0f } }; -float lbl_1_data_220[][3] = { - { 1.5f, 45.0f, 270.0f }, - { 1.7f, 45.0f, 270.0f }, - { 1.8f, 45.0f, 270.0f }, - { 1.6f, 45.0f, 270.0f }, - { 1.7f, 5.0f, 270.0f }, - { 2.0f, -85.0f, 295.0f }, - { 1.8f, 45.0f, 270.0f }, - { 2.0f, 40.0f, 330.0f }, - { 2.25f, -30.0f, 300.0f } -}; +SparkData sparkDataTbl[9] = { { 1.5f, 45.0f, 270.0f }, { 1.7f, 45.0f, 270.0f }, { 1.8f, 45.0f, 270.0f }, { 1.6f, 45.0f, 270.0f }, + { 1.7f, 5.0f, 270.0f }, { 2.0f, -85.0f, 295.0f }, { 1.8f, 45.0f, 270.0f }, { 2.0f, 40.0f, 330.0f }, { 2.25f, -30.0f, 300.0f } }; StructData28C lbl_1_data_28C = { 0 }; s16 lbl_1_data_2A4 = -1; s16 lbl_1_data_2A6 = -1; -s32 lbl_1_data_2A8 = -1; -s32 lbl_1_data_2AC = -1; +s32 backgroundMusNo = -1; +s32 windSeNo = -1; s16 lbl_1_data_2B0 = -1; -s32 lbl_1_data_2B4 = -1; -s32 lbl_1_data_2B8 = 600; +s32 invincibilitySeNo = -1; +s32 lbl_1_data_2B8 = 10 * REFRESH_RATE; -void fn_1_A0(void) { +static void CameraPrintDebug(void) +{ Center.x += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_RIGHT) != 0) - ((HuPadBtn[0] & PAD_BUTTON_LEFT) != 0)); Center.z -= 10.0 * (((HuPadBtn[0] & PAD_BUTTON_UP) != 0) - ((HuPadBtn[0] & PAD_BUTTON_DOWN) != 0)); Center.y += 10.0 * (((HuPadBtn[0] & PAD_BUTTON_Y) != 0) - ((HuPadBtn[0] & PAD_BUTTON_X) != 0)); @@ -200,157 +179,137 @@ void fn_1_A0(void) { print8(64, 424, 1.0f, "%f", CZoom); } -void fn_1_46C(omObjData* arg0) { - s16 var_r29; - s16 var_r26; - s16 var_r22; - s32 var_r20; - s32 var_r25; - s32 var_r24; - Vec sp104; - float spFC[2]; - float spE8; - float spE4; - float spE0; - float temp_f31; - s32 spDC; - s32 spD8; - s32 sp20; - s32 temp_r19; - s32 temp_r21; - char* var_r18; - StructBss68Data* temp_r31; - StructBss68Data* temp_r28; - ModelData* spD4; +static void M457PlayerExec(omObjData *object) +{ + PlayerData *playerData = object->data; + PlayerData *opponentData = playerObj[1 - object->work[0]]->data; + float unused = 0.0f; + float unused2 = 0.0f; + float unused3 = 0.0f; + s32 unused4 = 0; + s16 var_r29 = -1; + s16 var_r26 = -1; + s16 var_r22 = -1; + BOOL aPressedF = (playerData->padIdx == PAD_IDX_COM) ? 0 : ((HuPadBtnDown[playerData->padIdx] & PAD_BUTTON_A) > 0); + BOOL rPressedF = (playerData->padIdx == PAD_IDX_COM) ? 0 : ((HuPadBtnDown[playerData->padIdx] & PAD_TRIGGER_R) > 0); + BOOL lPressedF = (playerData->padIdx == PAD_IDX_COM) ? 0 : ((HuPadBtnDown[playerData->padIdx] & PAD_TRIGGER_L) > 0); s32 i; - temp_r31 = arg0->data; - temp_r28 = lbl_1_bss_68[1 - arg0->work[0]]->data; - spE8 = 0.0f; - spE4 = 0.0f; - spE0 = 0.0f; - spDC = 0; - var_r29 = -1; - var_r26 = -1; - var_r22 = -1; - var_r20 = (temp_r31->unk0C == -1) ? 0 - : ((HuPadBtnDown[temp_r31->unk0C] & 0x100) > 0); - var_r25 = (temp_r31->unk0C == -1) ? 0 - : ((HuPadBtnDown[temp_r31->unk0C] & 0x20) > 0); - var_r24 = (temp_r31->unk0C == -1) ? 0 - : ((HuPadBtnDown[temp_r31->unk0C] & 0x40) > 0); - if (temp_r31->unk0C == -1) { - temp_r31->unk3C--; - if (temp_r31->unk3C <= 0) { - if (temp_r31->unk14 == 1) { - var_r20 = 1; - } else { - var_r25 = var_r24 = 1; + if (playerData->padIdx == PAD_IDX_COM) { + playerData->unk3C--; + if (playerData->unk3C <= 0) { + if (playerData->state == 1) { + aPressedF = TRUE; } - if (temp_r31->unk14 >= 8 || (temp_r31->unk14 >= 3 && temp_r31->unk18 >= 10)) { - switch (temp_r31->unk10) { + else { + rPressedF = lPressedF = TRUE; + } + if (playerData->state >= 8 || (playerData->state >= 3 && playerData->unk18 >= 10)) { + switch (playerData->diff) { case 0: - temp_r31->unk3C = rand8() % 14 + 4 - + (temp_r31->unk14 != 8 ? 28 - temp_r31->unk18 : 0); + playerData->unk3C = rand8() % 14 + 4 + (playerData->state != 8 ? 28 - playerData->unk18 : 0); break; case 1: - temp_r31->unk3C = rand8() % 9 + 4 - + (temp_r31->unk14 != 8 ? 28 - temp_r31->unk18 : 0); + playerData->unk3C = rand8() % 9 + 4 + (playerData->state != 8 ? 28 - playerData->unk18 : 0); break; case 2: - temp_r31->unk3C = rand8() % 10 + 12 - + ((temp_r31->unk14 != 8 && temp_r31->unk18 >= 9 && temp_r31->unk18 <= 13) ? 13 - temp_r31->unk18 : 0); + playerData->unk3C = rand8() % 10 + 12 + + ((playerData->state != 8 && playerData->unk18 >= 9 && playerData->unk18 <= 13) ? 13 - playerData->unk18 : 0); break; case 3: - temp_r31->unk3C = rand8() % 5 + 4 - + ((temp_r31->unk14 != 8 && temp_r31->unk18 >= 2 && temp_r31->unk18 <= 17) ? 17 - temp_r31->unk18 : 0); - if (temp_r28->unk1C > 0 || temp_r31->unk14 == 7) { - var_r24 = var_r25 = 0; + playerData->unk3C = rand8() % 5 + 4 + + ((playerData->state != 8 && playerData->unk18 >= 2 && playerData->unk18 <= 17) ? 17 - playerData->unk18 : 0); + if (opponentData->invinceTime > 0 || playerData->state == 7) { + // don't waste stamina + lPressedF = rPressedF = 0; } break; } } } } - if (temp_r31->unk38 == 0) { - var_r24 = 0; + if (playerData->prevTrig == PREV_TRIG_L) { + lPressedF = FALSE; } - if (temp_r31->unk38 == 1) { - var_r25 = 0; + if (playerData->prevTrig == PREV_TRIG_R) { + rPressedF = FALSE; } - if (temp_r31->unk20 > 0) { - var_r20 = 0; - temp_r31->unk20--; - } else if (var_r20 != 0) { - temp_r31->unk20 = 20; + if (playerData->unk20 > 0) { + aPressedF = FALSE; + playerData->unk20--; } - if (temp_r31->unk24 > 0) { - var_r24 = 0; - temp_r31->unk24--; - } else if (var_r24 != 0) { - temp_r31->unk24 = 6; + else if (aPressedF) { + playerData->unk20 = 20; } - if (temp_r31->unk28 > 0) { - var_r25 = 0; - temp_r31->unk28--; - } else if (var_r25 != 0) { - temp_r31->unk28 = 6; + if (playerData->unk24 > 0) { + lPressedF = FALSE; + playerData->unk24--; } - if (lbl_1_bss_5C == 1008 && temp_r31->unk14 >= 8 && temp_r31->unk14 <= 14) { - spD8 = temp_r31->unk30; - if (var_r24 != 0) { - temp_r31->unk30 -= 7; + else if (lPressedF) { + playerData->unk24 = 6; + } + if (playerData->unk28 > 0) { + rPressedF = FALSE; + playerData->unk28--; + } + else if (rPressedF) { + playerData->unk28 = 6; + } + if (gameState == 1008 && playerData->state >= 8 && playerData->state <= 14) { + s32 prevStamina = playerData->stamina; + if (lPressedF) { + playerData->stamina -= 7; } - if (var_r25 != 0) { - temp_r31->unk30 -= 7; + if (rPressedF) { + playerData->stamina -= 7; } - if (spD8 > 0 && temp_r31->unk30 <= 0) { - temp_r31->unk30 = -1; - temp_r31->unk4C = 1; + if (prevStamina > 0 && playerData->stamina <= 0) { + // cap at -1 + playerData->stamina = -1; + playerData->unk4C = 1; } } - if (lbl_1_bss_20 == 0 && lbl_1_bss_5C == 1008 && temp_r31->unk14 >= 7 && temp_r31->unk14 <= 14 && (var_r24 != 0 || var_r25 != 0)) { - temp_r31->unk38 = (var_r24 != 0) ? 0 - : (var_r25 != 0) ? 1 : 0; + if (lbl_1_bss_20 == 0 && gameState == 1008 && playerData->state >= 7 && playerData->state <= 14 && (lPressedF || rPressedF)) { + playerData->prevTrig = lPressedF ? PREV_TRIG_L : rPressedF ? PREV_TRIG_R : PREV_TRIG_L; } - if (temp_r31->unk00 == 0) { - lbl_1_bss_68[0]->trans.x -= temp_r31->unk48; - lbl_1_bss_68[1]->trans.x -= temp_r28->unk48; + if (playerData->group == 0) { + playerObj[0]->trans.x -= playerData->unk48; + playerObj[1]->trans.x -= opponentData->unk48; } - switch (lbl_1_bss_5C) { + switch (gameState) { case 1001: if (lbl_1_bss_60 == 0) { - Hu3DModelAttrReset(arg0->model[0], HU3D_ATTR_DISPOFF); + Hu3DModelAttrReset(object->model[MODEL_ID_PLAYER_PLAYER], HU3D_ATTR_DISPOFF); } if (lbl_1_bss_60 <= 30) { - if (temp_r31->unk08 == -1) { - Hu3DMotionTimeSet(arg0->model[0], 138.0f); + if (playerData->character == CHARACTER_BOWSER) { + Hu3DMotionTimeSet(object->model[MODEL_ID_PLAYER_PLAYER], 138.0f); } - arg0->trans.y = 2400.0 * (1.0 - lbl_1_bss_60 / 30.0); + object->trans.y = 2400.0 * (1.0 - lbl_1_bss_60 / 30.0); } - if (temp_r31->unk08 != -1 && lbl_1_bss_60 == 30) { + if (playerData->character != CHARACTER_BOWSER && lbl_1_bss_60 == 30) { var_r29 = 2; } - if (lbl_1_bss_60 == 40 && temp_r31->unk08 != -1) { + if (lbl_1_bss_60 == 40 && playerData->character != CHARACTER_BOWSER) { var_r29 = 0; } - if (lbl_1_bss_60 == 45 && temp_r31->unk08 == -1) { + if (lbl_1_bss_60 == 45 && playerData->character == CHARACTER_BOWSER) { var_r29 = 0; - Hu3DMotionShiftSet(arg0->model[0], arg0->motion[var_r29], lbl_1_data_184[var_r29], 35.0f, HU3D_MOTATTR_LOOP); - temp_r31->unk40 = var_r29; + Hu3DMotionShiftSet(object->model[MODEL_ID_PLAYER_PLAYER], object->motion[var_r29], lbl_1_data_184[var_r29], 35.0f, HU3D_MOTATTR_LOOP); + playerData->unk40 = var_r29; } if (lbl_1_bss_60 == 30) { lbl_1_data_28C.unk04 += 50; } if (lbl_1_bss_60 == 30) { - HuAudFXPlay(0x33D); + HuAudFXPlay(MSM_SE_PLAYER_DROP); } break; case 1005: if (lbl_1_bss_60 == 0) { var_r29 = 3; } - if (lbl_1_bss_60 == 70) { + if (lbl_1_bss_60 == (s32)((21.0f / 18) * REFRESH_RATE)) { var_r29 = 4; } break; @@ -360,40 +319,41 @@ void fn_1_46C(omObjData* arg0) { } break; case 1010: - if (lbl_1_bss_44 == temp_r31->unk00 && lbl_1_bss_60 >= 15) { + if (lbl_1_bss_44 == playerData->group && lbl_1_bss_60 >= 15) { if (lbl_1_bss_60 == 15) { - temp_r31->unk14 = 0; - temp_r31->unk18 = 0; - if (temp_r31->unk08 == -1) { - HuAudFXPlay(0x3A); + playerData->state = 0; + playerData->unk18 = 0; + if (playerData->character == CHARACTER_BOWSER) { + HuAudFXPlay(MSM_SE_BOWSER_LAUGH); } } var_r29 = 10; - if (arg0->rot.y > 180.0f) { - arg0->rot.y -= 360.0f; + if (object->rot.y > 180.0f) { + object->rot.y -= 360.0f; } - arg0->rot.y *= 0.9; + object->rot.y *= 0.9; } if (lbl_1_bss_44 == 2 && lbl_1_bss_60 >= 15) { if (lbl_1_bss_60 == 15) { - temp_r31->unk14 = 0; - temp_r31->unk18 = 0; + playerData->state = 0; + playerData->unk18 = 0; } var_r29 = 11; - if (arg0->rot.y > 180.0f) { - arg0->rot.y -= 360.0f; + if (object->rot.y > 180.0f) { + object->rot.y -= 360.0f; } - arg0->rot.y *= 0.9; + object->rot.y *= 0.9; } break; } - temp_r31->unk18 += (temp_r31->unk18 < 0x10000); - if (temp_r31->unk14 == 3 || temp_r31->unk14 == 5) { - if (temp_r31->unk18 == 1 && lbl_1_data_2B0 != -1) { + playerData->unk18 += (playerData->unk18 < 0x10000); + if (playerData->state == 3 || playerData->state == 5) { + if (playerData->unk18 == 1 && lbl_1_data_2B0 != -1) { HuWinExCleanup(lbl_1_data_2B0); lbl_1_data_2B0 = -1; } - if ((temp_r31->unk14 == 3 && temp_r31->unk18 == 23) || (temp_r31->unk14 == 5 && temp_r31->unk18 == 15)) { + if ((playerData->state == 3 && playerData->unk18 == 23) || (playerData->state == 5 && playerData->unk18 == 15)) { + float spFC[2]; HuWinMesMaxSizeGet(1, spFC, MAKE_MESSID(48, 35)); if (lbl_1_data_2B0 == -1) { lbl_1_data_2B0 = HuWinCreate(-10000.0f, 400.0f, spFC[0], spFC[1], 1); @@ -403,380 +363,366 @@ void fn_1_46C(omObjData* arg0) { HuWinMesSet(lbl_1_data_2B0, MAKE_MESSID(48, 35)); } } - switch (temp_r31->unk14) { + switch (playerData->state) { case 0: - if (lbl_1_bss_5C == 1008) { - temp_r31->unk14 = 1; - temp_r31->unk18 = 0; + if (gameState == 1008) { + playerData->state = 1; + playerData->unk18 = 0; } break; case 1: - if (temp_r31->unk18 == 1 && temp_r31->unk0C == -1) { - switch (temp_r31->unk10) { + if (playerData->unk18 == 1 && playerData->padIdx == PAD_IDX_COM) { + switch (playerData->diff) { case 0: - temp_r31->unk3C = rand8() % 5 + 15; + playerData->unk3C = rand8() % 5 + 15; break; case 1: - temp_r31->unk3C = rand8() % 5 + 12; + playerData->unk3C = rand8() % 5 + 12; break; case 2: - temp_r31->unk3C = rand8() % 5 + 10; + playerData->unk3C = rand8() % 5 + 10; break; case 3: - temp_r31->unk3C = rand8() % 4 + 9; + playerData->unk3C = rand8() % 4 + 9; break; } } - if (var_r20 != 0) { - temp_r31->unk14 = 2; - temp_r31->unk18 = 0; + // initial advance + if (aPressedF) { + playerData->state = PLAYER_STATE_INITIAL_ADVANCE; + playerData->unk18 = 0; var_r29 = 6; - arg0->trans.x += (temp_r31->unk00 == 0) ? ((rand8() % 2) * 2 - 1) : 0; + object->trans.x += (playerData->group == 0) ? ((rand8() % 2) * 2 - 1) : 0; } break; - case 2: - arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); + case PLAYER_STATE_INITIAL_ADVANCE: + object->trans.x += 8.695652f * (playerData->group == 0 ? 1 : -1); break; case 3: - arg0->trans.x += 4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 >= 23) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + object->trans.x += 4.347826f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 >= 23) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 4: - if (temp_r31->unk18 == 1) { + if (playerData->unk18 == 1) { var_r29 = 7; } - arg0->trans.x += -4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 >= 23) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + object->trans.x += -4.347826f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 >= 23) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 5: - arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 >= 15) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + object->trans.x += 8.695652f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 >= 15) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 6: - if (temp_r31->unk18 == 1) { + if (playerData->unk18 == 1) { var_r29 = 8; } - arg0->trans.x += -8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 >= 7) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + object->trans.x += -8.695652f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 >= 7) { + playerData->state = 8; + playerData->unk18 = 0; var_r26 = 7; var_r29 = 4; } - if (temp_r31->unk18 >= 15) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + if (playerData->unk18 >= 15) { + playerData->state = 8; + playerData->unk18 = 0; } break; case 8: - if (temp_r31->unk30 == 0) { + if (playerData->stamina == 0) { var_r26 = 0; - temp_r31->unk14 = 7; - temp_r31->unk18 = 1; - temp_r31->unk34 = 0; - } else { - if (var_r24 == 0 && var_r25 == 0) { + playerData->state = 7; + playerData->unk18 = 1; + playerData->unk34 = 0; + } + else { + if (!lPressedF && !rPressedF) { break; } - temp_r31->unk14 = 9; - temp_r31->unk18 = 0; + playerData->state = 9; + playerData->unk18 = 0; var_r26 = 3; - var_r22 = (temp_r31->unk38 == 0 ? 0 : 11) + 5; + var_r22 = (playerData->prevTrig == PREV_TRIG_L ? 0 : 11) + 5; var_r29 = 6; if (lbl_1_bss_20 == 1) { - temp_r31->unk38 = (var_r24 != 0) ? 0 - : (var_r25 != 0) ? 1 : 0; + playerData->prevTrig = lPressedF ? PREV_TRIG_L : rPressedF ? PREV_TRIG_R : PREV_TRIG_L; } break; } /* fallthrough */ case 7: - if (temp_r31->unk18 == 1) { - s32 sp1B4[] = { - 0x12A, 0x16A, 0x1AA, - 0x1EA, 0x22A, 0x26A, - 0x2AA, 0x2EA, 0x03B - }; - HuAudFXPlay(sp1B4[temp_r31->unk08 == -1 ? 8 : temp_r31->unk08]); + if (playerData->unk18 == 1) { + s32 noStaminaSeIdTbl[] = { 0x12A, 0x16A, 0x1AA, 0x1EA, 0x22A, 0x26A, 0x2AA, 0x2EA, 0x03B }; + HuAudFXPlay(noStaminaSeIdTbl[playerData->character == CHARACTER_BOWSER ? 8 : playerData->character]); var_r29 = 9; - temp_r31->unk4C = 0; + playerData->unk4C = 0; } - if (temp_r31->unk30 > 0) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + if (playerData->stamina > 0) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 9: - arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 >= 23) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + object->trans.x += 8.695652f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 >= 23) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 12: - if (temp_r31->unk18 == 7) { + if (playerData->unk18 == 7) { var_r26 = 0; var_r22 = 7; var_r29 = 7; } - if (temp_r31->unk18 == 15) { + if (playerData->unk18 == 15) { var_r26 = 5; var_r29 = 4; } - if (temp_r31->unk18 >= 20) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + if (playerData->unk18 >= 20) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 10: - arg0->trans.x += 4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 >= 23) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + object->trans.x += 4.347826f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 >= 23) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 11: - arg0->trans.x += -4.347826f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 == 1) { + object->trans.x += -4.347826f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 == 1) { var_r29 = 7; } - if (temp_r31->unk18 >= 23) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + if (playerData->unk18 >= 23) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 13: - arg0->trans.x += 8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 >= 23) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + object->trans.x += 8.695652f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 >= 23) { + playerData->state = 8; + playerData->unk18 = 0; var_r29 = 4; } break; case 14: - arg0->trans.x += -8.695652f * (temp_r31->unk00 == 0 ? 1 : -1); - if (temp_r31->unk18 == 1) { + object->trans.x += -8.695652f * (playerData->group == 0 ? 1 : -1); + if (playerData->unk18 == 1) { var_r29 = 8; } - if (temp_r31->unk18 == 11) { + if (playerData->unk18 == 11) { var_r26 = 11; var_r29 = 4; } - if (temp_r31->unk18 >= 23) { - temp_r31->unk14 = 8; - temp_r31->unk18 = 0; + if (playerData->unk18 >= 23) { + playerData->state = 8; + playerData->unk18 = 0; } - if (temp_r31->unk34 < 8) { - temp_r31->unk34 = 8; + if (playerData->unk34 < 8) { + playerData->unk34 = 8; } break; case 15: - if (temp_r31->unk18 == 1 && temp_r31->unk1C > 4) { - temp_r31->unk1C = 4; + if (playerData->unk18 == 1 && playerData->invinceTime > 4) { + playerData->invinceTime = 4; } - if (temp_r31->unk18 == 1 && lbl_1_data_2B0 != -1) { + if (playerData->unk18 == 1 && lbl_1_data_2B0 != -1) { HuWinExCleanup(lbl_1_data_2B0); lbl_1_data_2B0 = -1; } - if (temp_r31->unk18 == 7) { + if (playerData->unk18 == 7) { var_r29 = 4; var_r26 = 20; } - if (temp_r31->unk18 == 60) { - lbl_1_bss_44 = temp_r31->unk00; - temp_r31->unk1C = 0; + if (playerData->unk18 == REFRESH_RATE) { + lbl_1_bss_44 = playerData->group; + playerData->invinceTime = 0; } break; - case 16: - arg0->trans.x += -39.130432f * (temp_r31->unk00 == 0 ? 1 : -1); - arg0->trans.y += 39.130432f; - if (temp_r31->unk18 == 1) { - s32 sp190[] = { - 0x123, 0x163, 0x1A3, - 0x1E3, 0x223, 0x263, - 0x2A3, 0x2E3, 0x03C - }; - - HuAudFXPlay(sp190[temp_r31->unk08 == -1 ? 8 : temp_r31->unk08]); + case PLAYER_STATE_FALLING: + // make the player fall down in the correct direction + object->trans.x += -39.130432f * (playerData->group == 0 ? 1 : -1); + object->trans.y += 39.130432f; + if (playerData->unk18 == 1) { + s32 fallSeIdTbl[] = { 0x123, 0x163, 0x1A3, 0x1E3, 0x223, 0x263, 0x2A3, 0x2E3, 0x03C }; + HuAudFXPlay(fallSeIdTbl[playerData->character == CHARACTER_BOWSER ? 8 : playerData->character]); var_r29 = 8; var_r26 = 0; var_r22 = 6; } - arg0->rot.z = (temp_r31->unk00 == 0) ? -20 : 20; + object->rot.z = (playerData->group == 0) ? -20 : 20; break; case 17: - if (temp_r31->unk18 == 1 && temp_r31->unk1C > 4) { - temp_r31->unk1C = 4; + if (playerData->unk18 == 1 && playerData->invinceTime > 4) { + playerData->invinceTime = 4; } - if (temp_r31->unk18 == 1 && lbl_1_data_2B0 != -1) { + if (playerData->unk18 == 1 && lbl_1_data_2B0 != -1) { HuWinExCleanup(lbl_1_data_2B0); lbl_1_data_2B0 = -1; } - if (temp_r31->unk18 == 7) { + if (playerData->unk18 == 7) { var_r29 = 0; var_r26 = 10; } - if (temp_r31->unk18 >= 7 && temp_r31->unk18 < 17) { - arg0->trans.x += (temp_r31->unk00 == 0 ? -1 : 1) * 2; + if (playerData->unk18 >= 7 && playerData->unk18 < 17) { + object->trans.x += (playerData->group == 0 ? -1 : 1) * 2; } - if (temp_r31->unk18 == 60) { + if (playerData->unk18 == REFRESH_RATE) { lbl_1_bss_44 = 2; - temp_r31->unk1C = 0; + playerData->invinceTime = 0; } break; } - switch (temp_r31->unk14) { + switch (playerData->state) { case 12: - if (temp_r31->unk00 == 0) { + if (playerData->group == 0) { break; } /* fallthrough */ case 3: case 5: case 10: - case 13: - temp_r19 = Hu3DMotionTimeGet(arg0->model[0]); - if ((temp_r28->unk14 != 4 && temp_r28->unk14 != 6) || temp_r28->unk18 != 1) { - if ((temp_r19 + 1) % 11 != 0 || (temp_r31->unk14 == 12 && temp_r19 + 1 > 11)) { + case 13: { + Vec sp104; + s32 temp_r21; + char *var_r18; + + s32 temp_r19 = Hu3DMotionTimeGet(object->model[MODEL_ID_PLAYER_PLAYER]); + if ((opponentData->state != 4 && opponentData->state != 6) || opponentData->unk18 != 1) { + if ((temp_r19 + 1) % 11 != 0 || (playerData->state == 12 && temp_r19 + 1 > 11)) { break; } } temp_r21 = ((temp_r19 + 1) / 11 - 1) % 2; { - char sp1D8[][50] = { - "g000mN-itemhook_R", - "g000mN-itemhook_L" - }; + char sp1D8[][50] = { "g000mN-itemhook_R", "g000mN-itemhook_L" }; - if (temp_r31->unk08 != -1) { - var_r18 = CharModelHookNameGet(temp_r31->unk08, 1, (temp_r21 % 2 == 0) ? 0 : 1); - } else { + if (playerData->character != CHARACTER_BOWSER) { + var_r18 = CharModelHookNameGet(playerData->character, 1, (temp_r21 % 2 == 0) ? 0 : 1); + } + else { var_r18 = (temp_r21 % 2 == 0) ? sp1D8[0] : sp1D8[1]; } } - Hu3DModelObjPosGet(arg0->model[0], var_r18, &sp104); - Hu3DModelPosSet(lbl_1_bss_64->model[temp_r21 + 7], sp104.x + (temp_r31->unk00 == 0 ? 1 : -1) * 50, sp104.y, 75.0f + sp104.z); - Hu3DMotionTimeSet(lbl_1_bss_64->model[temp_r21 + 7], 2.0f); - Hu3DModelAttrReset(lbl_1_bss_64->model[temp_r21 + 7], 1); - if (lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk00 < 3) { - lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk04[lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk00] = 0.0f; - lbl_1_bss_78[temp_r31->unk08 == -1 ? 1 : 0].unk00++; + Hu3DModelObjPosGet(object->model[MODEL_ID_PLAYER_PLAYER], var_r18, &sp104); + Hu3DModelPosSet(gameObj->model[temp_r21 + 7], sp104.x + (playerData->group == 0 ? 1 : -1) * 50, sp104.y, 75.0f + sp104.z); + Hu3DMotionTimeSet(gameObj->model[temp_r21 + 7], 2.0f); + Hu3DModelAttrReset(gameObj->model[temp_r21 + 7], 1); + if (lbl_1_bss_78[playerData->character == CHARACTER_BOWSER ? 1 : 0].unk00 < 3) { + lbl_1_bss_78[playerData->character == CHARACTER_BOWSER ? 1 : 0] + .unk04[lbl_1_bss_78[playerData->character == CHARACTER_BOWSER ? 1 : 0].unk00] + = 0.0f; + lbl_1_bss_78[playerData->character == CHARACTER_BOWSER ? 1 : 0].unk00++; } - if (fabs(lbl_1_bss_68[1 - temp_r31->unk00]->trans.x) >= 800.0 && (temp_r28->unk14 == 11 || temp_r28->unk14 == 14)) { - temp_r31->unk14 = 15; - temp_r28->unk14 = 16; - temp_r31->unk18 = temp_r28->unk18 = 0; + // bounds check + if (fabs(playerObj[1 - playerData->group]->trans.x) >= 800.0 && (opponentData->state == 11 || opponentData->state == 14)) { + playerData->state = 15; + opponentData->state = PLAYER_STATE_FALLING; + playerData->unk18 = opponentData->unk18 = 0; if (lbl_1_bss_78[4].unk00 < 3) { lbl_1_bss_78[4].unk04[lbl_1_bss_78[4].unk00] = 0.0f; lbl_1_bss_78[4].unk00++; } - if (lbl_1_data_2A8 != -1) { - HuAudSeqFadeOut(lbl_1_data_2A8, 100); - lbl_1_data_2A8 = -1; + if (backgroundMusNo != -1) { + HuAudSeqFadeOut(backgroundMusNo, 100); + backgroundMusNo = -1; } } - break; + } break; } - temp_r31->unk34++; - if (temp_r31->unk14 != 16 && temp_r31->unk14 != 15 && temp_r31->unk14 != 17 && lbl_1_bss_5C == 1008 && temp_r31->unk34 >= 30 && (temp_r31->unk34 - 30) % 30 == 0) { - temp_r31->unk30 += (temp_r31->unk4C == 0 || temp_r31->unk14 == 7) ? 10 : 0; + playerData->unk34++; + if (playerData->state != PLAYER_STATE_FALLING && playerData->state != 15 && playerData->state != 17 && gameState == 1008 + && playerData->unk34 >= 30 && (playerData->unk34 - 30) % 30 == 0) { + // regen stamina + playerData->stamina += (playerData->unk4C == 0 || playerData->state == 7) ? 10 : 0; } - temp_r31->unk30 = (temp_r31->unk1C > 0 || temp_r31->unk30 >= 100) ? 100 - : (temp_r31->unk30 < 0) ? 0 - : temp_r31->unk30; + // apply invincibility to stamina and cap it + playerData->stamina = (playerData->invinceTime > 0 || playerData->stamina >= 100) ? 100 : (playerData->stamina < 0) ? 0 : playerData->stamina; for (i = 0; i < 5; i++) { - temp_f31 = (temp_r31->unk30 >= i * 20 + 20) ? 1.0 - : (temp_r31->unk30 <= i * 20) ? 0.0 - : (temp_r31->unk30 - i * 20) / 20.0; - espScaleSet(lbl_1_data_5C[i + (temp_r31->unk00 == 0 ? 2 : 10)], temp_f31, temp_f31); - if (temp_r31->unk1C > 0) { - s32 spF4[] = { 106, 469 }; - s32 spEC[] = { 78, 78 }; - s32 sp150[] = { - 0, 0, -33, -9, 15, 39, 63, -68, - 0, 0, -33, -9, 15, 39, 63, -68 - }; - s32 sp110[] = { - 0, 0, -1, -1, -1, -1, -1, -2, - 0, 0, -1, -1, -1, -1, -1, -2 - }; + float scale = (playerData->stamina >= i * 20 + 20) ? 1.0 : (playerData->stamina <= i * 20) ? 0.0 : (playerData->stamina - i * 20) / 20.0; + espScaleSet(sprIdTbl[i + (playerData->group == 0 ? 2 : 10)], scale, scale); + if (playerData->invinceTime > 0) { + // stamina bar mushroom start positions/offsets + s32 posXTbl[] = { 106, 469 }; + s32 posYTbl[] = { 78, 78 }; + s32 ofsXTbl[] = { 0, 0, -33, -9, 15, 39, 63, -68, 0, 0, -33, -9, 15, 39, 63, -68 }; // second half is unused + s32 ofsYTbl[] = { 0, 0, -1, -1, -1, -1, -1, -2, 0, 0, -1, -1, -1, -1, -1, -2 }; - espPosSet(lbl_1_data_5C[i + 18], spF4[temp_r31->unk00] + sp150[i + 2], spEC[temp_r31->unk00] + sp110[i + 2]); - espScaleSet(lbl_1_data_5C[i + 18], - (temp_r31->unk1C % 4 == 0) ? 1.1 : 1.0, - (temp_r31->unk1C % 4 == 0) ? 1.1 : 1.0); - espTPLvlSet(lbl_1_data_5C[i + 18], - (temp_r31->unk1C % 4 < 2) ? 1.0 - : (var_r22 % 4 == 2) ? 0.5 : 0.0); - espDispOn(lbl_1_data_5C[i + 18]); - } else if (temp_r28->unk1C == 0) { - espDispOff(lbl_1_data_5C[i + 18]); + // make the mushrooms in the stamina bar glow + espPosSet(sprIdTbl[i + 18], posXTbl[playerData->group] + ofsXTbl[i + 2], posYTbl[playerData->group] + ofsYTbl[i + 2]); + espScaleSet(sprIdTbl[i + 18], (playerData->invinceTime % 4 == 0) ? 1.1 : 1.0, (playerData->invinceTime % 4 == 0) ? 1.1 : 1.0); + espTPLvlSet(sprIdTbl[i + 18], (playerData->invinceTime % 4 < 2) ? 1.0 : (var_r22 % 4 == 2) ? 0.5 : 0.0); + espDispOn(sprIdTbl[i + 18]); + } + else if (opponentData->invinceTime == 0) { + espDispOff(sprIdTbl[i + 18]); } } - if (temp_r31->unk1C > 0) { - sp20 = (temp_r31->unk08 != -1) ? temp_r31->unk08 : 8; - Hu3DModelPosSet(lbl_1_bss_64->model[3], - arg0->trans.x + lbl_1_data_220[sp20][1] * (temp_r31->unk00 == 0 ? 1 : -1), - arg0->trans.y + lbl_1_data_220[sp20][2], - 150.0f + arg0->trans.z); - Hu3DModelScaleSet(lbl_1_bss_64->model[3], - 0.75 * lbl_1_data_220[sp20][0], - 0.75 * lbl_1_data_220[sp20][0], - 0.75 * lbl_1_data_220[sp20][0]); - Hu3DModelAttrReset(lbl_1_bss_64->model[3], 1); - Hu3DModelAttrSet(lbl_1_bss_64->model[3], HU3D_ATTR_ZCMP_OFF); - Hu3DModelPosSet(lbl_1_bss_64->model[4], - arg0->trans.x + lbl_1_data_220[sp20][1] * (temp_r31->unk00 == 0 ? 1 : -1), - arg0->trans.y + lbl_1_data_220[sp20][2], - 150.0f + arg0->trans.z); - Hu3DModelScaleSet(lbl_1_bss_64->model[4], - 0.75 * lbl_1_data_220[sp20][0], - 0.75 * lbl_1_data_220[sp20][0], - 0.75 * lbl_1_data_220[sp20][0]); - Hu3DModelAttrReset(lbl_1_bss_64->model[4], 1); - Hu3DModelAttrSet(lbl_1_bss_64->model[4], HU3D_ATTR_ZCMP_OFF); - temp_r31->unk1C--; - if (temp_r31->unk1C == 0) { - HuAudFXStop(lbl_1_data_2B4); + if (playerData->invinceTime > 0) { + s32 sp20 = (playerData->character != CHARACTER_BOWSER) ? playerData->character : 8; + // make the player shine + Hu3DModelPosSet(gameObj->model[MODEL_ID_GAME_INVINCE_SHINING], + object->trans.x + sparkDataTbl[sp20].xOffset * (playerData->group == 0 ? 1 : -1), object->trans.y + sparkDataTbl[sp20].yOffset, + 150.0f + object->trans.z); + Hu3DModelScaleSet(gameObj->model[MODEL_ID_GAME_INVINCE_SHINING], 0.75 * sparkDataTbl[sp20].scale, 0.75 * sparkDataTbl[sp20].scale, + 0.75 * sparkDataTbl[sp20].scale); + Hu3DModelAttrReset(gameObj->model[MODEL_ID_GAME_INVINCE_SHINING], 1); + Hu3DModelAttrSet(gameObj->model[MODEL_ID_GAME_INVINCE_SHINING], HU3D_ATTR_ZCMP_OFF); + // add sparks + Hu3DModelPosSet(gameObj->model[MODEL_ID_GAME_INVINCE_SPARKS], + object->trans.x + sparkDataTbl[sp20].xOffset * (playerData->group == 0 ? 1 : -1), object->trans.y + sparkDataTbl[sp20].yOffset, + 150.0f + object->trans.z); + Hu3DModelScaleSet(gameObj->model[MODEL_ID_GAME_INVINCE_SPARKS], 0.75 * sparkDataTbl[sp20].scale, 0.75 * sparkDataTbl[sp20].scale, + 0.75 * sparkDataTbl[sp20].scale); + Hu3DModelAttrReset(gameObj->model[MODEL_ID_GAME_INVINCE_SPARKS], 1); + Hu3DModelAttrSet(gameObj->model[MODEL_ID_GAME_INVINCE_SPARKS], HU3D_ATTR_ZCMP_OFF); + playerData->invinceTime--; + if (playerData->invinceTime == 0) { + HuAudFXStop(invincibilitySeNo); } - } else if (temp_r28->unk1C == 0) { - Hu3DModelAttrSet(lbl_1_bss_64->model[3], HU3D_ATTR_DISPOFF); - Hu3DModelAttrSet(lbl_1_bss_64->model[4], HU3D_ATTR_DISPOFF); } - if (temp_r31->unk44 >= 0) { - var_r29 = temp_r31->unk44; + else if (opponentData->invinceTime == 0) { + Hu3DModelAttrSet(gameObj->model[MODEL_ID_GAME_INVINCE_SHINING], HU3D_ATTR_DISPOFF); + Hu3DModelAttrSet(gameObj->model[MODEL_ID_GAME_INVINCE_SPARKS], HU3D_ATTR_DISPOFF); } - if (var_r29 >= 0 && var_r29 != temp_r31->unk40) { + if (playerData->unk44 >= 0) { + var_r29 = playerData->unk44; + } + if (var_r29 >= 0 && var_r29 != playerData->unk40) { if (var_r26 == 0) { - Hu3DMotionSet(arg0->model[0], arg0->motion[var_r29]); - Hu3DMotionTimeSet(arg0->model[0], (var_r22 == -1) ? 0 : var_r22); - } else { - Hu3DMotionShiftSet(arg0->model[0], arg0->motion[var_r29], - (var_r22 != -1) ? var_r22 : lbl_1_data_184[var_r29], - (var_r26 != -1) ? var_r26 : lbl_1_data_154[var_r29], - lbl_1_data_148[var_r29] ? HU3D_MOTATTR_NONE : HU3D_MOTATTR_LOOP); + Hu3DMotionSet(object->model[MODEL_ID_PLAYER_PLAYER], object->motion[var_r29]); + Hu3DMotionTimeSet(object->model[MODEL_ID_PLAYER_PLAYER], (var_r22 == -1) ? 0 : var_r22); } - temp_r31->unk40 = var_r29; + else { + Hu3DMotionShiftSet(object->model[MODEL_ID_PLAYER_PLAYER], object->motion[var_r29], (var_r22 != -1) ? var_r22 : lbl_1_data_184[var_r29], + (var_r26 != -1) ? var_r26 : lbl_1_data_154[var_r29], lbl_1_data_148[var_r29] ? HU3D_MOTATTR_NONE : HU3D_MOTATTR_LOOP); + } + playerData->unk40 = var_r29; } - if (temp_r31->unk00 == 1) { - spD4 = &Hu3DData[arg0->model[0]]; + if (playerData->group == 1) { + ModelData *playerModel = &Hu3DData[object->model[MODEL_ID_PLAYER_PLAYER]]; } } @@ -785,17 +731,18 @@ float lbl_1_data_340 = 3500.0f; float lbl_1_data_344 = 100.0f; float lbl_1_data_348 = -59.0f; -void fn_1_2CC4(omObjData* arg0) { - StructBss68Data* sp158[2]; - omObjData* sp150[2]; - StructBss68Data* sp148[2]; +static void M457GameExec(omObjData *object) +{ + PlayerData *sp158[2]; + omObjData *sp150[2]; + PlayerData *sp148[2]; s32 sp140[2]; - omObjData* sp138[2]; - StructBss68Data* sp130[2]; - ModelData* temp_r24; - ModelData* temp_r27; - ModelData* temp_r28; - ModelData* temp_r29; + omObjData *playerObjLocal[2]; + PlayerData *playerData[2]; + ModelData *temp_r24; + ModelData *temp_r27; + ModelData *mushroomModel; + ModelData *temp_r29; float spAC; float spA8; float spA4; @@ -811,7 +758,7 @@ void fn_1_2CC4(omObjData* arg0) { float temp_f28; float temp_f29; float var_f31; - s32 var_r23; + s32 invinciblePlayerId; s32 var_r26; s32 var_r25; s32 var_r22; @@ -821,87 +768,93 @@ void fn_1_2CC4(omObjData* arg0) { s32 i; for (i = 0; i < 2; i++) { - sp158[i] = lbl_1_bss_68[i]->data; + sp158[i] = playerObj[i]->data; } lbl_1_bss_4++; - switch (lbl_1_bss_5C) { + switch (gameState) { case 1003: temp_f27 = 1800.0 * (1.0 - lbl_1_bss_60 / 30.0); temp_f27 = (temp_f27 < 0.0f) ? 0.0f : temp_f27; - Hu3DModelPosSet(lbl_1_bss_64->model[5], 0.0f, temp_f27, 0.0f); - Hu3DModelAttrReset(lbl_1_bss_64->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(gameObj->model[MODEL_ID_GAME_KOOPA_KID], 0.0f, temp_f27, 0.0f); + Hu3DModelAttrReset(gameObj->model[MODEL_ID_GAME_KOOPA_KID], HU3D_ATTR_DISPOFF); if (lbl_1_bss_60 == 31) { - HuAudFXPlay(0x5B); + HuAudFXPlay(MSM_SE_KOOPA_KID_DROP); } if (lbl_1_bss_60 >= 31 && lbl_1_bss_60 <= 38) { temp_f24 = 1.0 - (lbl_1_bss_60 - 31) / 7.0; - Hu3DModelRotSet(arg0->model[5], 25.0 * (temp_f24 * 0.5 + temp_f24 * temp_f24 * 0.5), 0.0f, 0.0f); + Hu3DModelRotSet(object->model[MODEL_ID_GAME_KOOPA_KID], 25.0 * (temp_f24 * 0.5 + temp_f24 * temp_f24 * 0.5), 0.0f, 0.0f); } break; case 1002: if (lbl_1_bss_60 == 0) { lbl_1_bss_3C = 0; } - if (lbl_1_bss_60 == 20) { - espAttrReset(lbl_1_data_5C[16], HU3D_ATTR_SHADOW); + if (lbl_1_bss_60 == (VERSION_NTSC ? 20 : 15)) { + espAttrReset(sprIdTbl[16], HUSPR_ATTR_DISPOFF); } - if ((lbl_1_bss_60 >= 20 && lbl_1_bss_60 <= 50) || (lbl_1_bss_60 >= 180 && lbl_1_bss_60 <= 210)) { - spAC = (lbl_1_bss_60 <= 120) - ? (lbl_1_bss_60 - 20) / 30.0 - : (1.0 - (lbl_1_bss_60 - 180) / 30.0); - espTPLvlSet(lbl_1_data_5C[16], spAC); + if ((lbl_1_bss_60 >= (VERSION_NTSC ? 20 : 15) && lbl_1_bss_60 <= REFRESH_RATE - 10) + || (lbl_1_bss_60 >= 3 * REFRESH_RATE && lbl_1_bss_60 <= (s32)(3.5 * REFRESH_RATE))) { + spAC = (lbl_1_bss_60 <= 120) ? (lbl_1_bss_60 - (VERSION_NTSC ? 20 : 15)) / (0.5 * REFRESH_RATE) + : (1.0 - (lbl_1_bss_60 - 3 * REFRESH_RATE) / (0.5 * REFRESH_RATE)); + espTPLvlSet(sprIdTbl[16], spAC); } - if (lbl_1_bss_60 == 210) { - espAttrSet(lbl_1_data_5C[16], HU3D_ATTR_SHADOW); + if (lbl_1_bss_60 == (s32)(3.5 * REFRESH_RATE)) { + espAttrSet(sprIdTbl[16], HUSPR_ATTR_DISPOFF); } break; case 1006: if (lbl_1_bss_60 == 0) { - Hu3DMotionSet(arg0->model[5], arg0->motion[2]); - Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_LOOP); + Hu3DMotionSet(object->model[MODEL_ID_GAME_KOOPA_KID], object->motion[2]); + Hu3DModelAttrReset(object->model[MODEL_ID_GAME_KOOPA_KID], HU3D_MOTATTR_LOOP); } if (lbl_1_bss_60 == 15) { - Hu3DModelAttrSet(arg0->model[5], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_KOOPA_KID], HU3D_MOTATTR_PAUSE); } break; case 1008: if (lbl_1_bss_60 == 1) { - Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_PAUSE); + Hu3DModelAttrReset(object->model[MODEL_ID_GAME_KOOPA_KID], HU3D_MOTATTR_PAUSE); for (i = 0; i < 16; i++) { - espDispOn(lbl_1_data_5C[i]); + espDispOn(sprIdTbl[i]); } } +#if VERSION_NTSC if (lbl_1_bss_60 <= 25) { temp_f28 = lbl_1_bss_60 / 25.0; temp_f26 = 1.0f - (1.0f - temp_f28) * (1.0f - temp_f28) * (1.0f - temp_f28); temp_f26 = 0.25 + 1.375 * temp_f26; temp_f23 = 1.0f - (1.0f - temp_f28) * (1.0f - temp_f28); temp_f23 = 2.0f * (1.0f - temp_f28); - espAttrReset(lbl_1_data_5C[17], HU3D_ATTR_SHADOW); - espScaleSet(lbl_1_data_5C[17], 0.85 * temp_f26, 0.85 * temp_f26); - espTPLvlSet(lbl_1_data_5C[17], (temp_f23 > 1.0f) ? 1.0f : temp_f23); - } else { - espAttrSet(lbl_1_data_5C[17], HU3D_ATTR_SHADOW); + espAttrReset(sprIdTbl[17], HU3D_ATTR_SHADOW); +#if VERSION_ENG + espScaleSet(sprIdTbl[17], 0.85 * temp_f26, 0.85 * temp_f26); +#else + espScaleSet(sprIdTbl[17], temp_f26, temp_f26); +#endif + espTPLvlSet(sprIdTbl[17], (temp_f23 > 1.0f) ? 1.0f : temp_f23); + } + else { + espAttrSet(sprIdTbl[17], HUSPR_ATTR_DISPOFF); + } +#endif + for (i = 0; i < 2; i++) { + sp150[i] = playerObj[i]; + sp148[i] = playerObj[i]->data; } for (i = 0; i < 2; i++) { - sp150[i] = lbl_1_bss_68[i]; - sp148[i] = lbl_1_bss_68[i]->data; - } - for (i = 0; i < 2; i++) { - sp140[i] = (sp148[1 - i]->unk1C > 0) ? 2 - : (sp148[i]->unk14 == 8) ? 2 - : (sp148[i]->unk14 == 1) ? 1 - : (sp148[i]->unk14 == 9) ? (sp148[i]->unk18 >= 0 ? 3 : 2) - : (sp148[i]->unk14 == 2) ? 4 - : (sp148[i]->unk14 == 7) ? 0 : -1; + sp140[i] = (sp148[1 - i]->invinceTime > 0) ? 2 + : (sp148[i]->state == 8) ? 2 + : (sp148[i]->state == 1) ? 1 + : (sp148[i]->state == 9) ? (sp148[i]->unk18 >= 0 ? 3 : 2) + : (sp148[i]->state == 2) ? 4 + : (sp148[i]->state == 7) ? 0 + : -1; } if (sp140[0] >= 0 && sp140[1] >= 0 && fabs(sp150[0]->trans.x - sp150[1]->trans.x) < 300.0) { - sp150[0]->trans.x = (sp148[0]->unk1C > 0) ? sp150[0]->trans.x - : (sp148[1]->unk1C > 0) ? (sp150[1]->trans.x - 300.0f) - : ((sp150[0]->trans.x + sp150[1]->trans.x) / 2.0 - 150.0); - sp150[0]->trans.x = (sp150[0]->trans.x >= 650.0) ? 650.0 - : (sp150[0]->trans.x <= -950.0) ? -950.0 - : sp150[0]->trans.x; + sp150[0]->trans.x = (sp148[0]->invinceTime > 0) ? sp150[0]->trans.x + : (sp148[1]->invinceTime > 0) ? (sp150[1]->trans.x - 300.0f) + : ((sp150[0]->trans.x + sp150[1]->trans.x) / 2.0 - 150.0); + sp150[0]->trans.x = (sp150[0]->trans.x >= 650.0) ? 650.0 : (sp150[0]->trans.x <= -950.0) ? -950.0 : sp150[0]->trans.x; sp150[1]->trans.x = sp150[0]->trans.x + 300.0f; if (sp140[0] >= 3 || sp140[1] >= 3) { var_r26 = (sp140[0] >= 3) ? 0 : 1; @@ -912,24 +865,24 @@ void fn_1_2CC4(omObjData* arg0) { var_r26 = 1 - var_r26; var_r25 = 1 - var_r25; } - sp148[var_r26]->unk14 = 3; - sp148[var_r25]->unk14 = 4; + sp148[var_r26]->state = 3; + sp148[var_r25]->state = 4; break; case 1: - sp148[var_r26]->unk14 = 5; - sp148[var_r25]->unk14 = 6; + sp148[var_r26]->state = 5; + sp148[var_r25]->state = 6; break; case 3: - sp148[var_r26]->unk14 = 12; - sp148[var_r25]->unk14 = 12; + sp148[var_r26]->state = 12; + sp148[var_r25]->state = 12; break; case 2: - sp148[var_r26]->unk14 = 10; - sp148[var_r25]->unk14 = 11; + sp148[var_r26]->state = 10; + sp148[var_r25]->state = 11; break; case 0: - sp148[var_r26]->unk14 = 13; - sp148[var_r25]->unk14 = 14; + sp148[var_r26]->state = 13; + sp148[var_r25]->state = 14; break; } sp148[0]->unk18 = sp148[1]->unk18 = 0; @@ -937,20 +890,20 @@ void fn_1_2CC4(omObjData* arg0) { } /* fallthrough */ case 1009: - if (lbl_1_bss_5C != 1008 && lbl_1_bss_40 == 0) { + if (gameState != 1008 && lbl_1_bss_40 == 0) { break; } for (i = 0; i < 2; i++) { - sp138[i] = lbl_1_bss_68[i]; - sp130[i] = lbl_1_bss_68[i]->data; + playerObjLocal[i] = playerObj[i]; + playerData[i] = playerObj[i]->data; } switch (lbl_1_bss_18) { case 0: - if (lbl_1_bss_40 == 0 && lbl_1_bss_18 == 0 && (sp138[0]->trans.x > -150.0f || sp138[1]->trans.x < 150.0f)) { - lbl_1_bss_18 = (-sp138[0]->trans.x < sp138[1]->trans.x ? 1 : 2); - Hu3DModelPosSet(lbl_1_bss_64->model[9], 0.0f, 100.0f, 0.0f); - Hu3DMotionTimeSet(lbl_1_bss_64->model[9], 0.0f); - Hu3DModelAttrReset(lbl_1_bss_64->model[9], HU3D_ATTR_DISPOFF); + if (lbl_1_bss_40 == 0 && lbl_1_bss_18 == 0 && (playerObjLocal[0]->trans.x > -150.0f || playerObjLocal[1]->trans.x < 150.0f)) { + lbl_1_bss_18 = (-playerObjLocal[0]->trans.x < playerObjLocal[1]->trans.x ? 1 : 2); + Hu3DModelPosSet(gameObj->model[9], 0.0f, 100.0f, 0.0f); + Hu3DMotionTimeSet(gameObj->model[9], 0.0f); + Hu3DModelAttrReset(gameObj->model[9], HU3D_ATTR_DISPOFF); if (lbl_1_bss_78[4].unk00 < 3) { lbl_1_bss_78[4].unk04[lbl_1_bss_78[4].unk00] = 0.0f; lbl_1_bss_78[4].unk00++; @@ -962,7 +915,7 @@ void fn_1_2CC4(omObjData* arg0) { /* fallthrough */ case 1: case 2: - temp_r27 = &Hu3DData[arg0->model[5]]; + temp_r27 = &Hu3DData[object->model[MODEL_ID_GAME_KOOPA_KID]]; temp_r27->rot.y += (lbl_1_bss_18 == 1 ? 18 : -18); temp_r27->rot.z = (lbl_1_bss_18 == 1 ? -20 : 20); temp_r27->pos.x += 5.130000000000001 * (lbl_1_bss_18 == 1 ? 1 : -1); @@ -976,43 +929,43 @@ void fn_1_2CC4(omObjData* arg0) { switch (lbl_1_bss_1C) { case 0: case 2: - lbl_1_data_2B8 -= (lbl_1_bss_18 >= 3 && sp130[0]->unk14 < 16 && sp130[1]->unk14 < 16); + lbl_1_data_2B8 -= (lbl_1_bss_18 >= 3 && playerData[0]->state < 16 && playerData[1]->state < 16); if (lbl_1_data_2B8 != 0) { break; } - Hu3DModelAttrReset(arg0->model[2], HU3D_ATTR_DISPOFF); - Hu3DModelPosSet(arg0->model[2], - (lbl_1_bss_1C == 0) ? 0.0 : (2.0 * ((rand8() % 256) / 255.0 - 0.5) * 400.0), - 1500.0f, 0.0f); + Hu3DModelAttrReset(object->model[MODEL_ID_GAME_MUSHROOM], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(object->model[MODEL_ID_GAME_MUSHROOM], + (lbl_1_bss_1C == 0) ? 0.0 : (2.0 * ((rand8() % 256) / 255.0 - 0.5) * 400.0), 1500.0f, 0.0f); lbl_1_bss_1C = 1; /* fallthrough */ case 1: - temp_r28 = &Hu3DData[arg0->model[2]]; - temp_r28->pos.y -= 10.0f; - if (temp_r28->pos.y <= 225.0f) { - float sp128[] = { 100000000.0f, 100000000.0f }; - - temp_r28->pos.y = (temp_r28->pos.y < 100.0f) ? 100.0f : temp_r28->pos.y; + mushroomModel = &Hu3DData[object->model[MODEL_ID_GAME_MUSHROOM]]; + // descend mushroom + mushroomModel->pos.y -= 10.0f; + if (mushroomModel->pos.y <= 225.0f) { + float playerDistsToMushroom[] = { 100000000.0f, 100000000.0f }; + // make sure it doesn't fall through the ring + mushroomModel->pos.y = (mushroomModel->pos.y < 100.0f) ? 100.0f : mushroomModel->pos.y; for (i = 0; i < 2; i++) { - if (fabs(sp138[i]->trans.x + (i == 0 ? 40 : -40) - temp_r28->pos.x) < 180.0) { - sp128[i] = fabs(sp138[i]->trans.x + (i == 0 ? 40 : -40) - temp_r28->pos.x); + if (fabs(playerObjLocal[i]->trans.x + (i == 0 ? 40 : -40) - mushroomModel->pos.x) < 180.0) { + playerDistsToMushroom[i] = fabs(playerObjLocal[i]->trans.x + (i == 0 ? 40 : -40) - mushroomModel->pos.x); } } - if (sp128[0] != sp128[1]) { - var_r23 = (sp128[0] < sp128[1]) ? 0 : 1; - Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + if (playerDistsToMushroom[0] != playerDistsToMushroom[1]) { + invinciblePlayerId = (playerDistsToMushroom[0] < playerDistsToMushroom[1]) ? 0 : 1; + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_MUSHROOM], HU3D_ATTR_DISPOFF); lbl_1_bss_1C = 2; - lbl_1_data_2B8 = 600; - sp130[var_r23]->unk1C = 300; - sp130[var_r23]->unk4C = 0; + lbl_1_data_2B8 = 10 * REFRESH_RATE; + playerData[invinciblePlayerId]->invinceTime = 5 * REFRESH_RATE; + playerData[invinciblePlayerId]->unk4C = 0; if (lbl_1_bss_78[3].unk00 < 3) { lbl_1_bss_78[3].unk04[lbl_1_bss_78[3].unk00] = 0.0f; lbl_1_bss_78[3].unk00++; } - lbl_1_data_2B4 = HuAudFXPlay(0x7E6); + invincibilitySeNo = HuAudFXPlay(MSM_SE_INVINCIBILITY); } } - if (sp130[0]->unk14 >= 16 || sp130[1]->unk14 >= 16 || lbl_1_bss_40 != 0) { + if (playerData[0]->state >= 16 || playerData[1]->state >= 16 || lbl_1_bss_40 != 0) { lbl_1_bss_1C = 3; lbl_1_data_2B8 = 0; } @@ -1022,64 +975,61 @@ void fn_1_2CC4(omObjData* arg0) { /* fallthrough */ case 3: lbl_1_data_2B8++; - if (lbl_1_data_2B8 < 60 && lbl_1_data_2B8 % 2 == 0) { - Hu3DModelAttrReset(arg0->model[2], HU3D_ATTR_DISPOFF); - } else { - Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); + if (lbl_1_data_2B8 < REFRESH_RATE && lbl_1_data_2B8 % 2 == 0) { + Hu3DModelAttrReset(object->model[MODEL_ID_GAME_MUSHROOM], HU3D_ATTR_DISPOFF); + } + else { + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_MUSHROOM], HU3D_ATTR_DISPOFF); } break; } break; } - switch (lbl_1_bss_5C) { + switch (gameState) { case 1009: if (lbl_1_bss_40 == 0) { if (lbl_1_bss_60 <= 30) { - Hu3DModelPosSet(lbl_1_bss_64->model[5], 0.0f, (30 - lbl_1_bss_60) * 50 * 0.94, 0.0f); - Hu3DModelRotSet(lbl_1_bss_64->model[5], 0.0f, 0.0f, lbl_1_bss_18 == 3 ? -20 : 20); - Hu3DModelAttrReset(lbl_1_bss_64->model[5], HU3D_ATTR_DISPOFF); + Hu3DModelPosSet(gameObj->model[MODEL_ID_GAME_KOOPA_KID], 0.0f, (30 - lbl_1_bss_60) * 50 * 0.94, 0.0f); + Hu3DModelRotSet(gameObj->model[MODEL_ID_GAME_KOOPA_KID], 0.0f, 0.0f, lbl_1_bss_18 == 3 ? -20 : 20); + Hu3DModelAttrReset(gameObj->model[MODEL_ID_GAME_KOOPA_KID], HU3D_ATTR_DISPOFF); } if (lbl_1_bss_60 == 30) { - Hu3DMotionSet(arg0->model[5], arg0->motion[0]); - Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_LOOP); + Hu3DMotionSet(object->model[MODEL_ID_GAME_KOOPA_KID], object->motion[0]); + Hu3DModelAttrReset(object->model[MODEL_ID_GAME_KOOPA_KID], HU3D_MOTATTR_LOOP); } if (lbl_1_bss_60 == 30) { - HuAudFXPlay(0x5B); + HuAudFXPlay(MSM_SE_KOOPA_KID_DROP); } if (lbl_1_bss_60 >= 30 && lbl_1_bss_60 <= 37) { temp_f22 = 1.0 - (lbl_1_bss_60 - 30) / 7.0; - Hu3DModelRotSet(arg0->model[5], 25.0 * (temp_f22 * 0.5 + temp_f22 * temp_f22 * 0.5), 0.0f, 0.0f); + Hu3DModelRotSet(object->model[MODEL_ID_GAME_KOOPA_KID], 25.0 * (temp_f22 * 0.5 + temp_f22 * temp_f22 * 0.5), 0.0f, 0.0f); } - } else if (lbl_1_bss_18 == 0) { - Hu3DMotionSet(lbl_1_bss_64->model[5], arg0->motion[0]); - Hu3DModelAttrReset(lbl_1_bss_64->model[5], HU3D_MOTATTR_LOOP); + } + else if (lbl_1_bss_18 == 0) { + Hu3DMotionSet(gameObj->model[MODEL_ID_GAME_KOOPA_KID], object->motion[0]); + Hu3DModelAttrReset(gameObj->model[MODEL_ID_GAME_KOOPA_KID], HU3D_MOTATTR_LOOP); } break; case 1010: if (lbl_1_bss_40 == 0) { if (lbl_1_bss_60 == 1) { - Hu3DMotionSet(arg0->model[5], arg0->motion[3]); - Hu3DModelAttrReset(arg0->model[5], HU3D_MOTATTR_LOOP); + Hu3DMotionSet(object->model[MODEL_ID_GAME_KOOPA_KID], object->motion[3]); + Hu3DModelAttrReset(object->model[MODEL_ID_GAME_KOOPA_KID], HU3D_MOTATTR_LOOP); } - temp_r24 = &Hu3DData[arg0->model[5]]; - temp_f20 = (lbl_1_bss_68[lbl_1_bss_44]->trans.x < 0.0f) ? -90 : 90; + temp_r24 = &Hu3DData[object->model[MODEL_ID_GAME_KOOPA_KID]]; + temp_f20 = (playerObj[lbl_1_bss_44]->trans.x < 0.0f) ? -90 : 90; temp_r24->rot.y = temp_f20 + 0.8 * (temp_r24->rot.y - temp_f20); } break; } var_r22 = lbl_1_data_33C; { - float sp160[][6] = { - { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, - { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, - { 2100.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, - { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, - { 800.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, - { 1800.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } - }; + float sp160[][6] = { { 3500.0f, 0.0f, 100.0f, 0.0f, -59.0f, 0.0f }, { 3200.0f, 0.0f, 100.0f, 0.0f, -30.0f, 0.0f }, + { 2100.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, { 2000.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f }, + { 800.0f, 0.0f, 200.0f, 0.0f, -89.0f, 0.0f }, { 1800.0f, 0.0f, 200.0f, 0.0f, -30.0f, 0.0f } }; if (lbl_1_bss_44 != -1 && lbl_1_bss_40 == 0) { - sp160[2][1] = lbl_1_bss_68[lbl_1_bss_44]->trans.x; + sp160[2][1] = playerObj[lbl_1_bss_44]->trans.x; } if (lbl_1_data_33C == -1) { lbl_1_data_33C = 0; @@ -1091,7 +1041,7 @@ void fn_1_2CC4(omObjData* arg0) { lbl_1_bss_24 = 1; lbl_1_bss_28 = 0.5f; } - if (lbl_1_bss_5C == 1010 && lbl_1_bss_44 != 2 && lbl_1_bss_60 >= 15 && lbl_1_data_33C == 1) { + if (gameState == 1010 && lbl_1_bss_44 != 2 && lbl_1_bss_60 >= 15 && lbl_1_data_33C == 1) { lbl_1_data_33C = 2; lbl_1_bss_24 = 0; lbl_1_bss_28 = 0.0f; @@ -1107,7 +1057,8 @@ void fn_1_2CC4(omObjData* arg0) { if (lbl_1_bss_24 == 0) { lbl_1_bss_28 = 1.0 - 0.95 * (1.0f - lbl_1_bss_28); var_f31 = lbl_1_bss_28; - } else { + } + else { lbl_1_bss_28 += 0.008333333333333333; lbl_1_bss_28 = (lbl_1_bss_28 > 1.0f) ? 1.0f : lbl_1_bss_28; var_f31 = 0.5 + -0.5 * cosd(180.0f * lbl_1_bss_28); @@ -1121,7 +1072,7 @@ void fn_1_2CC4(omObjData* arg0) { CRot.y = var_f31 * sp160[lbl_1_data_33C][5] + lbl_1_bss_34 * (1.0f - var_f31); } } - if (lbl_1_bss_5C == 1001) { + if (gameState == 1001) { var_f21 = 0.0f; temp_f25 = 0.0f; if (lbl_1_data_28C.unk00 % 2 >= 0) { @@ -1131,7 +1082,8 @@ void fn_1_2CC4(omObjData* arg0) { lbl_1_data_28C.unk10 = 2.0 * (rand8() / 255.0) - 1.0; lbl_1_data_28C.unk14 = 2.0 * (rand8() / 255.0) - 1.0; lbl_1_data_28C.unk10 = 0.0f; - temp_f29 = (lbl_1_data_28C.unk10 - lbl_1_data_28C.unk08) * (lbl_1_data_28C.unk10 - lbl_1_data_28C.unk08) + (lbl_1_data_28C.unk14 - lbl_1_data_28C.unk0C) * (lbl_1_data_28C.unk14 - lbl_1_data_28C.unk0C); + temp_f29 = (lbl_1_data_28C.unk10 - lbl_1_data_28C.unk08) * (lbl_1_data_28C.unk10 - lbl_1_data_28C.unk08) + + (lbl_1_data_28C.unk14 - lbl_1_data_28C.unk0C) * (lbl_1_data_28C.unk14 - lbl_1_data_28C.unk0C); } while (sqrtf(temp_f29) < 0.75); } var_f21 = lbl_1_data_28C.unk08; @@ -1139,170 +1091,224 @@ void fn_1_2CC4(omObjData* arg0) { var_f21 *= lbl_1_data_28C.unk04 * 2; temp_f25 *= lbl_1_data_28C.unk04 * 2; lbl_1_data_28C.unk00 = !lbl_1_data_28C.unk00; - lbl_1_data_28C.unk04 = (lbl_1_data_28C.unk04 > 24) ? 23 - : (lbl_1_data_28C.unk04 - 1 > 0) ? (lbl_1_data_28C.unk04 - 1) : 0; + lbl_1_data_28C.unk04 = (lbl_1_data_28C.unk04 > 24) ? 23 : (lbl_1_data_28C.unk04 - 1 > 0) ? (lbl_1_data_28C.unk04 - 1) : 0; Center.x = 0.0f; Center.y = 100.0f + temp_f25; } - if (lbl_1_bss_5C >= 1008) { + if (gameState >= 1008) { for (i = 0; i < 2; i++) { - temp_r29 = &Hu3DData[lbl_1_bss_68[i]->model[0]]; - var_r21 = (sp158[i]->unk08 != -1) ? sp158[i]->unk08 : 8; - var_r20 = (temp_r29->unk_08 == lbl_1_bss_68[i]->motion[4]) ? 0 - : (temp_r29->unk_08 == lbl_1_bss_68[i]->motion[6]) ? 1 - : (temp_r29->unk_08 == lbl_1_bss_68[i]->motion[7]) ? 2 : -1; - var_r19 = (temp_r29->unk_0C == lbl_1_bss_68[i]->motion[4]) ? 0 - : (temp_r29->unk_0C == lbl_1_bss_68[i]->motion[6]) ? 1 - : (temp_r29->unk_0C == lbl_1_bss_68[i]->motion[7]) ? 2 : -1; + temp_r29 = &Hu3DData[playerObj[i]->model[MODEL_ID_PLAYER_PLAYER]]; + var_r21 = (sp158[i]->character != CHARACTER_BOWSER) ? sp158[i]->character : 8; + var_r20 = (temp_r29->unk_08 == playerObj[i]->motion[4]) ? 0 + : (temp_r29->unk_08 == playerObj[i]->motion[6]) ? 1 + : (temp_r29->unk_08 == playerObj[i]->motion[7]) ? 2 + : -1; + var_r19 = (temp_r29->unk_0C == playerObj[i]->motion[4]) ? 0 + : (temp_r29->unk_0C == playerObj[i]->motion[6]) ? 1 + : (temp_r29->unk_0C == playerObj[i]->motion[7]) ? 2 + : -1; spA8 = (var_r20 == -1) ? 0.0f : lbl_1_data_1B4[var_r21][var_r20]; spA4 = (var_r19 == -1) ? 0.0f : lbl_1_data_1B4[var_r21][var_r19]; - var_f19 = (temp_r29->unk_0C == -1) ? 0.0f - : (temp_r29->unk_80 == 0.0f) ? 1.0f - : (temp_r29->unk_7C / temp_r29->unk_80); + var_f19 = (temp_r29->unk_0C == -1) ? 0.0f : (temp_r29->unk_80 == 0.0f) ? 1.0f : (temp_r29->unk_7C / temp_r29->unk_80); sp158[i]->unk48 = (i == 0 ? 1 : -1) * (spA8 * (1.0f - var_f19) + spA4 * var_f19); - lbl_1_bss_68[i]->trans.x += sp158[i]->unk48; - Hu3DModelPosSet(lbl_1_bss_68[i]->model[0], lbl_1_bss_68[i]->trans.x, lbl_1_bss_68[i]->trans.y, lbl_1_bss_68[i]->trans.z); + playerObj[i]->trans.x += sp158[i]->unk48; + Hu3DModelPosSet(playerObj[i]->model[MODEL_ID_PLAYER_PLAYER], playerObj[i]->trans.x, playerObj[i]->trans.y, playerObj[i]->trans.z); } } } -void fn_1_5500(void) { - StructBss68Data* spC[2]; - s16 sp8; - s16 temp_r31; +static void WrestleMesMain(void) +{ + PlayerData *playerData[2]; + s16 unk; + s16 window; s32 i; - sp8 = 0; + unk = 0; for (i = 0; i < 2; i++) { - spC[i] = lbl_1_bss_68[i]->data; + playerData[i] = playerObj[i]->data; } - HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + HuWinComKeyWait(PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, REFRESH_RATE); HuWinComKeyReset(); - temp_r31 = HuWinExCreateStyled(36.0f, 344.0f, 504, 96, 6, 0); - HuWinBGTPLvlSet(temp_r31, 0.8f); - HuWinMesSpeedSet(temp_r31, 1); - HuWinExAnimIn(temp_r31); - HuWinDisablePlayerSet(temp_r31, 0xF - & ((spC[0]->unk0C != -1) ? ~(1 << spC[0]->unk0C) : 0xF) - & ((spC[1]->unk0C != -1) ? ~(1 << spC[1]->unk0C) : 0xF)); - HuWinMesSet(temp_r31, MAKE_MESSID(48, 31)); - if ((spC[0]->unk0C == -1 || spC[0]->unk08 == -1) && (spC[1]->unk0C == -1 || spC[1]->unk08 == -1)) { - HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); - HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); - HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + window = HuWinExCreateStyled(36.0f, 344.0f, 504, 96, 6, 0); + HuWinBGTPLvlSet(window, 0.8f); + HuWinMesSpeedSet(window, 1); + HuWinExAnimIn(window); + HuWinDisablePlayerSet(window, + 0xF & ((playerData[0]->padIdx != PAD_IDX_COM) ? ~(1 << playerData[0]->padIdx) : 0xF) + & ((playerData[1]->padIdx != PAD_IDX_COM) ? ~(1 << playerData[1]->padIdx) : 0xF)); + HuWinMesSet(window, MAKE_MESSID(48, 31)); + if ((playerData[0]->padIdx == PAD_IDX_COM || playerData[0]->character == CHARACTER_BOWSER) + && (playerData[1]->padIdx == PAD_IDX_COM || playerData[1]->character == CHARACTER_BOWSER)) { + HuWinComKeyWait(PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, VERSION_JP ? 48 : REFRESH_RATE); + HuWinComKeyWait(PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, VERSION_JP ? 90 : REFRESH_RATE); + HuWinComKeyWait(PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, VERSION_JP ? 72 : REFRESH_RATE); } - HuWinMesWait(temp_r31); - HuWinExAnimOut(temp_r31); - HuWinExCleanup(temp_r31); - lbl_1_bss_10 = 0; + HuWinMesWait(window); + HuWinExAnimOut(window); + HuWinExCleanup(window); + m457MesEndF = 0; HuPrcEnd(); } -void fn_1_5720(void) { +static void ShoveMesMain(void) +{ float var_f31; - StructBss68Data* spC[2]; - WindowData* temp_r30; - s16 sp8; s16 temp_r31; + WindowData *temp_r30; + PlayerData *spC[2]; +#if VERSION_PAL + float var_f30; + double var_f29; + double var_f28; + float sp14[2]; + float spC_2[2]; + WindowData *var_r29; +#endif s32 var_r28; + s16 sp8; + s32 var_r26; s32 i; sp8 = 0; for (i = 0; i < 2; i++) { - spC[i] = lbl_1_bss_68[i]->data; + spC[i] = playerObj[i]->data; } - HuWinComKeyWait(0x100, 0x100, 0x100, 0x100, 60); + HuWinComKeyWait(PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, PAD_BUTTON_A, REFRESH_RATE); HuWinComKeyReset(); +#if VERSION_NTSC temp_r31 = HuWinCreate(215.0f, 100.0f, 130, 37, 1); +#else + HuWinMesMaxSizeGet(1, sp14, MAKE_MESSID(48, 32)); + temp_r31 = HuWinCreate(-10000.0f, 100.0f, sp14[0], 0x25, 1); +#endif HuSprColorSet(winData[temp_r31].group, 0, 0xFF, 0xFF, 0xCC); HuWinBGTPLvlSet(temp_r31, 0.9f); temp_r30 = &winData[temp_r31]; +#if VERSION_PAL + var_f29 = temp_r30->pos_x; +#endif temp_r30->mess_color = 0; temp_r30->mess_shadow_color = 9; temp_r30->attr |= 0x80; - for (var_r28 = 15, var_f31 = 0.0f; var_r28 != 0; var_r28--, var_f31 += 0.06666667f) { + for (var_r28 = 15, var_f31 = 0.0f; var_r28 != 0; var_r28--, var_f31 += 2.0f / 30) { HuWinScaleSet(temp_r31, 1.0f, 1.0 * (1.0f - (1.0f - var_f31) * (1.0f - var_f31))); +#if VERSION_NTSC HuWinPosSet(temp_r31, 215.0f, 100.0 + 37.0 * (1.0f - (1.0f - var_f31) * (1.0f - var_f31)) / -4.0); +#else + HuWinPosSet(temp_r31, var_f29, 100.0 + 37.0 * (1.0f - (1.0f - var_f31) * (1.0f - var_f31)) / -4.0); +#endif HuPrcVSleep(); } HuWinScaleSet(temp_r31, 1.0f, 1.0f); HuWinMesSet(temp_r31, MAKE_MESSID(48, 32)); - HuPrcSleep(60); + HuPrcSleep(REFRESH_RATE); HuWinExAnimOut(temp_r31); HuWinExCleanup(temp_r31); - lbl_1_bss_10 = 0; +#if VERSION_PAL + temp_r31 = 0; +#endif + m457MesEndF = 0; +#if VERSION_PAL + while (gameState != 1008) { + HuPrcVSleep(); + } + HuWinMesMaxSizeGet(1, spC_2, MAKE_MESSID(48, 33)); + temp_r31 = HuWinCreate(-10000.0f, 100.0f, spC_2[0], spC_2[1], 1); + HuSprColorSet(winData[temp_r31].group, 0, 0xFF, 0xFF, 0xCC); + HuWinBGTPLvlSet(temp_r31, 0.9f); + var_r29 = &winData[temp_r31]; + var_f28 = var_r29->pos_x; + var_r29->mess_color = 0; + var_r29->mess_shadow_color = 9; + var_r29->attr |= 0x80; + for (var_r26 = 5, var_f30 = 0.0f; var_r26 != 0; var_r26--, var_f30 += 0.2f) { + HuWinScaleSet(temp_r31, 1.0f, (double)(1.0f - ((1.0f - var_f30) * (1.0f - var_f30)))); + HuWinPosSet(temp_r31, var_f28, 100.0 + (((double)spC_2[1] * (1.0f - ((1.0f - var_f30) * (1.0f - var_f30)))) / -4.0)); + HuPrcVSleep(); + } + HuWinScaleSet(temp_r31, 1.0f, 1.0f); + HuWinMesSet(temp_r31, MAKE_MESSID(48, 33)); + HuWinMesSpeedSet(temp_r31, 0); + HuPrcSleep(0x32); + HuWinExAnimOut(temp_r31); + HuWinExCleanup(temp_r31); + temp_r31 = 0; +#endif HuPrcEnd(); } -void fn_1_59BC(omObjData* arg0) { - StructBss68Data* sp14[2]; +static void M457Main(omObjData *object) +{ + PlayerData *playerData[2]; float spC[2]; s32 sp8; s32 i; for (i = 0; i < 5; i++) { - s32 sp1C[] = { 0x7E1, 0x7E2, 0x7E3, 0x7E4, 0x7E5 }; + s32 shoveSeIdTbl[] = { 0x7E1, 0x7E2, 0x7E3, 0x7E4, 0x7E5 }; if (lbl_1_bss_78[i].unk00 > 3) { lbl_1_bss_78[i].unk00 = 3; } if (lbl_1_bss_78[i].unk00 > 0) { - sp8 = HuAudFXPlay(sp1C[i]); + sp8 = HuAudFXPlay(shoveSeIdTbl[i]); lbl_1_bss_78[i].unk00--; } } for (i = 0; i < 2; i++) { - sp14[i] = lbl_1_bss_68[i]->data; + playerData[i] = playerObj[i]->data; } if (omSysExitReq != 0 && WipeStatGet() == 0) { WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); - arg0->func = fn_1_7AE4; + object->func = M457Exit; } - switch (lbl_1_bss_5C) { + switch (gameState) { case 1000: if (WipeStatGet() == 0) { - lbl_1_bss_5C++; + gameState++; lbl_1_bss_60 = 0; } break; case 1001: lbl_1_bss_60++; if (lbl_1_bss_60 == 60) { - lbl_1_bss_5C = (lbl_1_bss_14 != 0 ? 1002 : 1003); + gameState = (againstBrowserF ? 1002 : 1003); lbl_1_bss_60 = 0; } break; case 1002: lbl_1_bss_60++; - if (lbl_1_bss_60 > 210) { - lbl_1_bss_5C++; + if (lbl_1_bss_60 > (s32)(3.5 * REFRESH_RATE)) { + gameState++; lbl_1_bss_60 = 0; } break; case 1003: lbl_1_bss_60++; if (lbl_1_bss_60 == 60) { - lbl_1_bss_5C = (lbl_1_bss_14 != 0 ? 1004 : 1005); + gameState = (againstBrowserF ? 1004 : 1005); lbl_1_bss_60 = 0; } break; case 1004: if (lbl_1_bss_60 == 0) { - HuPrcChildCreate(fn_1_5500, 100, 0x2000, 0, HuPrcCurrentGet()); - lbl_1_bss_10 = 1; + HuPrcChildCreate(WrestleMesMain, 100, 0x2000, 0, HuPrcCurrentGet()); + m457MesEndF = 1; lbl_1_bss_60++; - } else if (lbl_1_bss_10 == 0) { + } + else if (m457MesEndF == 0) { lbl_1_bss_60++; - if (sp14[0]->unk14 == 0) { - lbl_1_bss_5C++; + if (playerData[0]->state == 0) { + gameState++; lbl_1_bss_60 = 0; } } break; case 1005: lbl_1_bss_60++; - if (lbl_1_bss_60 == 180) { - lbl_1_bss_5C++; + if (lbl_1_bss_60 == (VERSION_NTSC ? 180 : 128)) { + gameState++; lbl_1_bss_60 = 0; } break; @@ -1313,57 +1319,61 @@ void fn_1_59BC(omObjData* arg0) { HuWinBGTPLvlSet(lbl_1_data_2B0, 0.0f); HuWinMesSpeedSet(lbl_1_data_2B0, 0); HuWinMesSet(lbl_1_data_2B0, MAKE_MESSID(48, 34)); - HuPrcChildCreate(fn_1_5720, 100, 0x2000, 0, HuPrcCurrentGet()); - lbl_1_bss_10 = 1; + HuPrcChildCreate(ShoveMesMain, 100, 0x2000, 0, HuPrcCurrentGet()); + m457MesEndF = 1; lbl_1_bss_60++; - } else if (lbl_1_bss_10 == 0) { + } + else if (m457MesEndF == 0) { lbl_1_bss_60++; - if (sp14[0]->unk14 == 0) { - lbl_1_bss_5C++; - lbl_1_bss_60 = rand8() * 30 % 5 + 60; + if (playerData[0]->state == 0) { + gameState++; + lbl_1_bss_60 = rand8() * (REFRESH_RATE / 2) % 5 + REFRESH_RATE; } - } else { + } + else { lbl_1_bss_60++; } break; case 1007: lbl_1_bss_60 -= 1; if (lbl_1_bss_60 <= 0) { - lbl_1_bss_5C++; + gameState++; lbl_1_bss_60 = 0; - HuAudFXPlay(0x3E); +#if VERSION_NTSC + HuAudFXPlay(MSM_SE_BOWSER_HOWL); +#endif } break; case 1008: lbl_1_bss_60++; if (lbl_1_bss_44 != -1) { - lbl_1_bss_5C = 1009; + gameState = 1009; lbl_1_bss_60 = 0; break; } - if (lbl_1_data_2A6 == -1 && lbl_1_bss_60 >= 16200 && sp14[0]->unk14 < 16 && sp14[1]->unk14 < 16) { + if (lbl_1_data_2A6 == -1 && lbl_1_bss_60 >= 270 * REFRESH_RATE && playerData[0]->state < 16 && playerData[1]->state < 16) { lbl_1_data_2A6 = MGSeqTimerCreate(30); } if (lbl_1_data_2A6 == -1) { break; } - if (sp14[0]->unk14 < 16 && sp14[1]->unk14 < 16) { - MGSeqParamSet(lbl_1_data_2A6, 1, (18059 - lbl_1_bss_60) / 60); - if (lbl_1_bss_60 > 18000) { + if (playerData[0]->state < 16 && playerData[1]->state < 16) { + MGSeqParamSet(lbl_1_data_2A6, 1, (301 * REFRESH_RATE - 1 - lbl_1_bss_60) / REFRESH_RATE); + if (lbl_1_bss_60 > 300 * REFRESH_RATE) { MGSeqParamSet(lbl_1_data_2A6, 2, -1); lbl_1_data_2A6 = -1; } } - if (lbl_1_bss_60 > 18000 && sp14[0]->unk14 < 16 && sp14[1]->unk14 < 16) { - lbl_1_bss_5C = 1009; + if (lbl_1_bss_60 > 300 * REFRESH_RATE && playerData[0]->state < 16 && playerData[1]->state < 16) { + gameState = 1009; lbl_1_bss_60 = 0; lbl_1_bss_40 = 1; - sp14[0]->unk14 = sp14[1]->unk14 = 17; - sp14[0]->unk18 = sp14[1]->unk18 = 0; + playerData[0]->state = playerData[1]->state = 17; + playerData[0]->unk18 = playerData[1]->unk18 = 0; MGSeqFinishCreate(); - if (lbl_1_data_2A8 != -1) { - HuAudSeqFadeOut(lbl_1_data_2A8, 100); - lbl_1_data_2A8 = -1; + if (backgroundMusNo != -1) { + HuAudSeqFadeOut(backgroundMusNo, 100); + backgroundMusNo = -1; } } break; @@ -1373,8 +1383,8 @@ void fn_1_59BC(omObjData* arg0) { lbl_1_data_2A6 = -1; } lbl_1_bss_60++; - if (lbl_1_bss_60 >= 120) { - lbl_1_bss_5C++; + if (lbl_1_bss_60 >= 2 * REFRESH_RATE) { + gameState++; lbl_1_bss_60 = 0; } break; @@ -1382,115 +1392,115 @@ void fn_1_59BC(omObjData* arg0) { lbl_1_bss_60++; if (lbl_1_bss_60 == 15) { if (lbl_1_bss_44 != 2) { - if (sp14[lbl_1_bss_44]->unk08 != -1) { + if (playerData[lbl_1_bss_44]->character != CHARACTER_BOWSER) { HuAudSStreamPlay(1); - } else { + } + else { HuAudSStreamPlay(3); } - if (lbl_1_bss_14 != 0) { + if (againstBrowserF) { if (lbl_1_bss_44 == 0) { _SetFlag(FLAG_ID_MAKE(1, 7)); } - } else { - GWPlayerCoinWinSet(sp14[lbl_1_bss_44]->unk04, 10); } - } else if (lbl_1_bss_44 == 2) { + else { + GWPlayerCoinWinSet(playerData[lbl_1_bss_44]->player, 10); + } + } + else if (lbl_1_bss_44 == 2) { HuAudSStreamPlay(4); } } - if (225.0f < lbl_1_bss_60) { - if (lbl_1_data_2AC != -1) { - HuAudFXStop(lbl_1_data_2AC); - lbl_1_data_2AC = -1; + if ((VERSION_NTSC ? 225.0f : 190.0f) < lbl_1_bss_60) { + if (windSeNo != -1) { + HuAudFXStop(windSeNo); + windSeNo = -1; } lbl_1_data_2A4 = -1; WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); - arg0->func = fn_1_7AE4; + object->func = M457Exit; } break; } } -void fn_1_64F8(omObjData* arg0) { - StructBss68Data* sp18[2]; - StructBss68Data* temp_r29; +static void M457GameSetup(omObjData *object) +{ s32 i; for (i = 0; i < 2; i++) { - sp18[i] = lbl_1_bss_68[i]->data; + PlayerData *playerData[2]; + playerData[i] = playerObj[i]->data; } - arg0->model[5] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 14)); - Hu3DModelAttrSet(arg0->model[5], HU3D_MOTATTR_LOOP); - arg0->model[6] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 38)); - Hu3DModelAttrSet(arg0->model[6], HU3D_MOTATTR_LOOP); - Hu3DModelHookSet(arg0->model[5], "g007m0-itemhook_r", arg0->model[6]); - Hu3DModelPosSet(arg0->model[5], 0.0f, 0.0f, 0.0f); - Hu3DModelRotSet(arg0->model[5], 15.0f, 0.0f, 0.0f); - arg0->motion[0] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 39)); - arg0->motion[1] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 40)); - arg0->motion[2] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 41)); - arg0->motion[3] = Hu3DJointMotionFile(arg0->model[5], DATA_MAKE_NUM(DATADIR_M457, 42)); - Hu3DMotionSet(arg0->model[5], arg0->motion[0]); - Hu3DModelLayerSet(arg0->model[6], 2); - Hu3DModelLayerSet(arg0->model[5], 2); - Hu3DModelAttrSet(arg0->model[5], HU3D_ATTR_DISPOFF); - Hu3DModelShadowSet(arg0->model[6]); - Hu3DModelShadowSet(arg0->model[5]); - arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 16)); - Hu3DModelAttrSet(arg0->model[0], HU3D_MOTATTR_LOOP); - Hu3DMotionSpeedSet(arg0->model[0], 0.1f); - Hu3DModelLayerSet(arg0->model[0], 1); - arg0->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 17)); - Hu3DModelAttrSet(arg0->model[1], HU3D_MOTATTR_LOOP); - Hu3DModelShadowMapSet(arg0->model[1]); - Hu3DModelLayerSet(arg0->model[1], 1); - Hu3DModelScaleSet(arg0->model[1], 1.0f, 1.0f, 1.0f); - arg0->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 21)); - Hu3DModelAttrSet(arg0->model[2], HU3D_MOTATTR_LOOP); - Hu3DModelAttrSet(arg0->model[2], HU3D_ATTR_DISPOFF); - Hu3DModelLayerSet(arg0->model[2], 2); - arg0->model[3] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 19)); - Hu3DModelAttrSet(arg0->model[3], HU3D_MOTATTR_LOOP); - Hu3DModelAttrSet(arg0->model[3], HU3D_ATTR_DISPOFF); - Hu3DModelLayerSet(arg0->model[3], 2); - arg0->model[4] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 20)); - Hu3DModelAttrSet(arg0->model[4], HU3D_MOTATTR_LOOP); - Hu3DModelAttrSet(arg0->model[4], HU3D_ATTR_DISPOFF); - Hu3DModelLayerSet(arg0->model[4], 4); + object->model[MODEL_ID_GAME_KOOPA_KID] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 14)); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_KOOPA_KID], HU3D_MOTATTR_LOOP); + object->model[MODEL_ID_GAME_WAR_FAN] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 38)); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_WAR_FAN], HU3D_MOTATTR_LOOP); + Hu3DModelHookSet(object->model[MODEL_ID_GAME_KOOPA_KID], "g007m0-itemhook_r", object->model[MODEL_ID_GAME_WAR_FAN]); + Hu3DModelPosSet(object->model[MODEL_ID_GAME_KOOPA_KID], 0.0f, 0.0f, 0.0f); + Hu3DModelRotSet(object->model[MODEL_ID_GAME_KOOPA_KID], 15.0f, 0.0f, 0.0f); + object->motion[0] = Hu3DJointMotionFile(object->model[MODEL_ID_GAME_KOOPA_KID], DATA_MAKE_NUM(DATADIR_M457, 39)); + object->motion[1] = Hu3DJointMotionFile(object->model[MODEL_ID_GAME_KOOPA_KID], DATA_MAKE_NUM(DATADIR_M457, 40)); + object->motion[2] = Hu3DJointMotionFile(object->model[MODEL_ID_GAME_KOOPA_KID], DATA_MAKE_NUM(DATADIR_M457, 41)); + object->motion[3] = Hu3DJointMotionFile(object->model[MODEL_ID_GAME_KOOPA_KID], DATA_MAKE_NUM(DATADIR_M457, 42)); + Hu3DMotionSet(object->model[MODEL_ID_GAME_KOOPA_KID], object->motion[0]); + Hu3DModelLayerSet(object->model[MODEL_ID_GAME_WAR_FAN], 2); + Hu3DModelLayerSet(object->model[MODEL_ID_GAME_KOOPA_KID], 2); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_KOOPA_KID], HU3D_ATTR_DISPOFF); + Hu3DModelShadowSet(object->model[MODEL_ID_GAME_WAR_FAN]); + Hu3DModelShadowSet(object->model[MODEL_ID_GAME_KOOPA_KID]); + object->model[MODEL_ID_GAME_SKY] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 16)); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_SKY], HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(object->model[MODEL_ID_GAME_SKY], 0.1f); + Hu3DModelLayerSet(object->model[MODEL_ID_GAME_SKY], 1); + object->model[MODEL_ID_GAME_RING] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 17)); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_RING], HU3D_MOTATTR_LOOP); + Hu3DModelShadowMapSet(object->model[MODEL_ID_GAME_RING]); + Hu3DModelLayerSet(object->model[MODEL_ID_GAME_RING], 1); + Hu3DModelScaleSet(object->model[MODEL_ID_GAME_RING], 1.0f, 1.0f, 1.0f); + object->model[MODEL_ID_GAME_MUSHROOM] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 21)); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_MUSHROOM], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_MUSHROOM], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[MODEL_ID_GAME_MUSHROOM], 2); + object->model[MODEL_ID_GAME_INVINCE_SHINING] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 19)); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_INVINCE_SHINING], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_INVINCE_SHINING], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[MODEL_ID_GAME_INVINCE_SHINING], 2); + object->model[MODEL_ID_GAME_INVINCE_SPARKS] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 20)); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_INVINCE_SPARKS], HU3D_MOTATTR_LOOP); + Hu3DModelAttrSet(object->model[MODEL_ID_GAME_INVINCE_SPARKS], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[MODEL_ID_GAME_INVINCE_SPARKS], 4); for (i = 0; i < 3; i++) { - arg0->model[i + 7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 18)); - Hu3DModelLayerSet(arg0->model[i + 7], 4); - Hu3DModelAttrSet(arg0->model[i + 7], HU3D_ATTR_DISPOFF); + object->model[i + 7] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M457, 18)); + Hu3DModelLayerSet(object->model[i + 7], 4); + Hu3DModelAttrSet(object->model[i + 7], HU3D_ATTR_DISPOFF); } for (i = 0; i < 16; i++) { s32 sp10[] = { 106, 469 }; s32 sp8[] = { 78, 78 }; - s32 sp60[] = { - 0, 0, -33, -9, 15, 39, 63, -68, - 0, 0, -33, -9, 15, 39, 63, -68 - }; - s32 sp20[] = { - 0, 0, -1, -1, -1, -1, -1, -2, - 0, 0, -1, -1, -1, -1, -1, -2 - }; + s32 sp60[] = { 0, 0, -33, -9, 15, 39, 63, -68, 0, 0, -33, -9, 15, 39, 63, -68 }; + s32 sp20[] = { 0, 0, -1, -1, -1, -1, -1, -2, 0, 0, -1, -1, -1, -1, -1, -2 }; - if (lbl_1_data_0[i] == DATA_MAKE_NUM(DATADIR_MGCONST, 0)) { - temp_r29 = lbl_1_bss_68[i == 7 ? 0 : 1]->data; - lbl_1_data_5C[i] = espEntry((temp_r29->unk08 == -1) ? DATA_MAKE_NUM(DATADIR_M457, 26) : (lbl_1_data_0[i] + temp_r29->unk08), 0, 0); - } else { - lbl_1_data_5C[i] = espEntry(lbl_1_data_0[i], 0, 0); + if (sprDataNumTbl[i] == DATA_MAKE_NUM(DATADIR_MGCONST, 0)) { + PlayerData *player = playerObj[i == 7 ? 0 : 1]->data; + sprIdTbl[i] + = espEntry((player->character == CHARACTER_BOWSER) ? DATA_MAKE_NUM(DATADIR_M457, 26) : (sprDataNumTbl[i] + player->character), 0, 0); } - espDrawNoSet(lbl_1_data_5C[i], 0); - espDispOff(lbl_1_data_5C[i]); - espAttrSet(lbl_1_data_5C[i], HU3D_ATTR_DISPOFF); - espBankSet(lbl_1_data_5C[i], 0); - espPriSet(lbl_1_data_5C[i], 128 - i); - espPosSet(lbl_1_data_5C[i], sp60[i] + sp10[i < 8 ? 0 : 1], sp20[i] + sp8[i < 8 ? 0 : 1]); + else { + sprIdTbl[i] = espEntry(sprDataNumTbl[i], 0, 0); + } + espDrawNoSet(sprIdTbl[i], 0); + espDispOff(sprIdTbl[i]); + espAttrSet(sprIdTbl[i], HUSPR_ATTR_NOANIM); + espBankSet(sprIdTbl[i], 0); + espPriSet(sprIdTbl[i], 128 - i); + espPosSet(sprIdTbl[i], sp60[i] + sp10[i < 8 ? 0 : 1], sp20[i] + sp8[i < 8 ? 0 : 1]); if ((i >= 8 ? i - 8 : i) != 0) { - (void) 1; // Required to match. - } else { - espTPLvlSet(lbl_1_data_5C[i], 0.5f); - espColorSet(lbl_1_data_5C[i], 0, 0, 0); + (void)1; // Required to match. + } + else { + espTPLvlSet(sprIdTbl[i], 0.5f); + espColorSet(sprIdTbl[i], 0, 0, 0); } } for (i = 16; i < 23; i++) { @@ -1498,107 +1508,118 @@ void fn_1_64F8(omObjData* arg0) { s32 spFC[23] = { 288, 288 }; s32 spA0[23] = { 240, 240 }; - lbl_1_data_5C[i] = espEntry(lbl_1_data_0[i], 0, 0); - espDrawNoSet(lbl_1_data_5C[i], 0); - espAttrSet(lbl_1_data_5C[i], HU3D_ATTR_DISPOFF | HU3D_ATTR_SHADOW); - espBankSet(lbl_1_data_5C[i], 0); - espPriSet(lbl_1_data_5C[i], 128 - i); - espPosSet(lbl_1_data_5C[i], spFC[temp_r28], spA0[temp_r28]); - espTPLvlSet(lbl_1_data_5C[i], 1.0f); + sprIdTbl[i] = espEntry(sprDataNumTbl[i], 0, 0); + espDrawNoSet(sprIdTbl[i], 0); + espAttrSet(sprIdTbl[i], HUSPR_ATTR_NOANIM | HUSPR_ATTR_DISPOFF); + espBankSet(sprIdTbl[i], 0); + espPriSet(sprIdTbl[i], 128 - i); + espPosSet(sprIdTbl[i], spFC[temp_r28], spA0[temp_r28]); + espTPLvlSet(sprIdTbl[i], 1.0f); } - arg0->func = fn_1_2CC4; + object->func = M457GameExec; } -void fn_1_6FB0(omObjData* arg0) { - s32 sp14; - StructBss68Data* temp_r31; - StructBss68Data* sp10; +static void M457PlayerSetup(omObjData *object) +{ + s32 opponentPlayerGroup; + PlayerData *playerData; + PlayerData *opponentData; s32 i; - temp_r31 = arg0->data; - sp10 = lbl_1_bss_68[1 - arg0->work[0]]->data; - memset(temp_r31, 0, sizeof(*temp_r31)); - temp_r31->unk00 = arg0->work[0]; - temp_r31->unk04 = (GWPlayerCfg[0].group == temp_r31->unk00) ? 0 - : (GWPlayerCfg[1].group == temp_r31->unk00) ? 1 - : (GWPlayerCfg[2].group == temp_r31->unk00) ? 2 - : (GWPlayerCfg[3].group == temp_r31->unk00) ? 3 : 4; - sp14 = (GWPlayerCfg[0].group == 1 - temp_r31->unk00) ? 0 - : (GWPlayerCfg[1].group == 1 - temp_r31->unk00) ? 1 - : (GWPlayerCfg[2].group == 1 - temp_r31->unk00) ? 2 - : (GWPlayerCfg[3].group == 1 - temp_r31->unk00) ? 3 : 4; - if (temp_r31->unk04 == 4) { + playerData = object->data; + opponentData = playerObj[1 - object->work[0]]->data; + memset(playerData, 0, sizeof(*playerData)); + playerData->group = object->work[0]; + playerData->player = (GWPlayerCfg[0].group == playerData->group) ? 0 + : (GWPlayerCfg[1].group == playerData->group) ? 1 + : (GWPlayerCfg[2].group == playerData->group) ? 2 + : (GWPlayerCfg[3].group == playerData->group) ? 3 + : 4; + opponentPlayerGroup = (GWPlayerCfg[0].group == 1 - playerData->group) ? 0 + : (GWPlayerCfg[1].group == 1 - playerData->group) ? 1 + : (GWPlayerCfg[2].group == 1 - playerData->group) ? 2 + : (GWPlayerCfg[3].group == 1 - playerData->group) ? 3 + : 4; + if (playerData->player == 4) { OSReport("m457:wrong player group\n"); - temp_r31->unk04 = temp_r31->unk00; + playerData->player = playerData->group; } - if (temp_r31->unk00 == 1 && lbl_1_bss_14 != 0) { - temp_r31->unk08 = -1; - temp_r31->unk0C = -1; - temp_r31->unk04 = -1; - temp_r31->unk10 = 1; - } else { - temp_r31->unk08 = GWPlayerCfg[temp_r31->unk04].character; - temp_r31->unk0C = (temp_r31->unk08 == -1 || GWPlayerCfg[temp_r31->unk04].iscom) ? -1 : GWPlayerCfg[temp_r31->unk04].pad_idx; - temp_r31->unk10 = (temp_r31->unk0C != -1) ? 0 : GWPlayerCfg[temp_r31->unk04].diff; + if (playerData->group == 1 && againstBrowserF) { + playerData->character = -1; + playerData->padIdx = PAD_IDX_COM; + playerData->player = -1; + playerData->diff = 1; } - temp_r31->unk14 = 0; - temp_r31->unk30 = 100; - temp_r31->unk34 = 0; - temp_r31->unk38 = -1; - temp_r31->unk2C = -1; - temp_r31->unk3C = 10000; - temp_r31->unk40 = 1; - temp_r31->unk44 = -1; - if (temp_r31->unk08 != -1) { - arg0->model[0] = CharModelCreate(temp_r31->unk08, 1); - } else { - arg0->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 7)); + else { + playerData->character = GWPlayerCfg[playerData->player].character; + playerData->padIdx = (playerData->character == CHARACTER_BOWSER || GWPlayerCfg[playerData->player].iscom) + ? PAD_IDX_COM + : GWPlayerCfg[playerData->player].pad_idx; + playerData->diff = (playerData->padIdx != PAD_IDX_COM) ? 0 : GWPlayerCfg[playerData->player].diff; } - omSetTra(arg0, 0.0f, temp_r31->unk00 == 0 ? 0 : 300, 0.0f); - if (temp_r31->unk08 != -1) { - omSetSca(arg0, 2.5f, 2.5f, 2.5f); - } else { - omSetSca(arg0, 2.0f, 2.0f, 2.0f); + playerData->state = 0; + playerData->stamina = 100; + playerData->unk34 = 0; + playerData->prevTrig = -1; + playerData->unk2C = -1; + playerData->unk3C = 10000; + playerData->unk40 = 1; + playerData->unk44 = -1; + if (playerData->character != CHARACTER_BOWSER) { + object->model[MODEL_ID_PLAYER_PLAYER] = CharModelCreate(playerData->character, 1); + } + else { + object->model[MODEL_ID_PLAYER_PLAYER] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_BKOOPA, 7)); + } + omSetTra(object, 0.0f, playerData->group == 0 ? 0 : 300, 0.0f); + if (playerData->character != CHARACTER_BOWSER) { + omSetSca(object, 2.5f, 2.5f, 2.5f); + } + else { + omSetSca(object, 2.0f, 2.0f, 2.0f); } for (i = 0; i < 12; i++) { - if (temp_r31->unk08 != -1) { - arg0->motion[i] = CharModelMotionCreate(temp_r31->unk08, lbl_1_data_B8[i] + (lbl_1_data_E8[i] != 0 ? temp_r31->unk08 : 0)); - } else if (lbl_1_data_118[i] != 0) { - arg0->motion[i] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_118[i]); + if (playerData->character != CHARACTER_BOWSER) { + object->motion[i] = CharModelMotionCreate(playerData->character, lbl_1_data_B8[i] + (lbl_1_data_E8[i] != 0 ? playerData->character : 0)); + } + else if (lbl_1_data_118[i] != 0) { + object->motion[i] = Hu3DJointMotionFile(object->model[MODEL_ID_PLAYER_PLAYER], lbl_1_data_118[i]); } } - Hu3DMotionSet(arg0->model[0], arg0->motion[temp_r31->unk40]); - Hu3DMotionTimeSet(arg0->model[0], 10.0f); - Hu3DModelAttrReset(arg0->model[0], HU3D_MOTATTR_LOOP); - Hu3DModelShadowSet(arg0->model[0]); - Hu3DModelAttrSet(arg0->model[0], HU3D_ATTR_DISPOFF); - Hu3DModelLayerSet(arg0->model[0], 3); + Hu3DMotionSet(object->model[MODEL_ID_PLAYER_PLAYER], object->motion[playerData->unk40]); + Hu3DMotionTimeSet(object->model[MODEL_ID_PLAYER_PLAYER], 10.0f); + Hu3DModelAttrReset(object->model[MODEL_ID_PLAYER_PLAYER], HU3D_MOTATTR_LOOP); + Hu3DModelShadowSet(object->model[MODEL_ID_PLAYER_PLAYER]); + Hu3DModelAttrSet(object->model[MODEL_ID_PLAYER_PLAYER], HU3D_ATTR_DISPOFF); + Hu3DModelLayerSet(object->model[MODEL_ID_PLAYER_PLAYER], 3); CharModelLayerSetAll2(4); - arg0->rot.y = temp_r31->unk00 * 180 + 90; - arg0->trans.x = (temp_r31->unk00 == 0 ? -1 : 1) * 300; - arg0->func = fn_1_46C; + object->rot.y = playerData->group * 180 + 90; + object->trans.x = (playerData->group == 0 ? -1 : 1) * 300; + object->func = M457PlayerExec; } -void fn_1_75A4(omObjData* arg0) { - lbl_1_bss_5C = 1000; +static void M457Setup(omObjData *object) +{ + gameState = 1000; lbl_1_bss_60 = 0; lbl_1_bss_54 = 0; lbl_1_bss_50 = 0; - if (lbl_1_data_2A8 == -1) { - lbl_1_data_2A8 = HuAudSeqPlay(0x4D); + if (backgroundMusNo == -1) { + backgroundMusNo = HuAudSeqPlay(MSM_MUS_BACKGROUND); } - lbl_1_data_2AC = HuAudFXPlay(0x6D7); + windSeNo = HuAudFXPlay(MSM_SE_WIND); WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); - arg0->func = fn_1_59BC; + object->func = M457Main; } -void ObjectSetup(void) { - omObjData* var_r30; +void ObjectSetup(void) +{ + omObjData *object; s32 i; OSReport("******* M457 ObjectSetup *********\n"); - lbl_1_bss_4C = omInitObjMan(600, 0x2000); - omGameSysInit(lbl_1_bss_4C); + objman = omInitObjMan(600, 0x2000); + omGameSysInit(objman); Hu3DCameraCreate(1); Hu3DCameraPerspectiveSet(1, 30.0f, 20.0f, 25000.0f, 1.2f); Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); @@ -1610,54 +1631,55 @@ void ObjectSetup(void) { CRot.y = 0.0f; CRot.z = 0.0f; { - Vec sp3C = { 0.0f, 0.0f, 0.0f }; - Vec sp30 = { 0.25f, -0.75f, -0.45f }; - GXColor sp8 = { 0xFF, 0xFF, 0xFF, 0xFF }; + Vec pos = { 0.0f, 0.0f, 0.0f }; + Vec destination = { 0.25f, -0.75f, -0.45f }; + GXColor color = { 0xFF, 0xFF, 0xFF, 0xFF }; - lbl_1_bss_48 = Hu3DGLightCreateV(&sp3C, &sp30, &sp8); + lightId = Hu3DGLightCreateV(&pos, &destination, &color); } - Hu3DGLightStaticSet(lbl_1_bss_48, 1); - Hu3DGLightInfinitytSet(lbl_1_bss_48); + Hu3DGLightStaticSet(lightId, 1); + Hu3DGLightInfinitytSet(lightId); { - Vec sp24; - Vec sp18; - Vec spC; + Vec camPos; + Vec camUp; + Vec camTarget; - sp24.x = 0.0f; - sp24.y = 10000.0f; - sp24.z = 0.0f; - sp18.x = 0.0f; - sp18.y = 1.0f; - sp18.z = 0.0f; - spC.x = 0.0f; - spC.y = 0.0f; - spC.z = 0.5f; + camPos.x = 0.0f; + camPos.y = 10000.0f; + camPos.z = 0.0f; + camUp.x = 0.0f; + camUp.y = 1.0f; + camUp.z = 0.0f; + camTarget.x = 0.0f; + camTarget.y = 0.0f; + camTarget.z = 0.5f; Hu3DShadowCreate(12.0f, 9000.0f, 10010.0f); Hu3DShadowTPLvlSet(0.625f); - Hu3DShadowPosSet(&sp24, &sp18, &spC); + Hu3DShadowPosSet(&camPos, &camUp, &camTarget); } Hu3DShadowSizeSet(224); lbl_1_data_2A4 = -1; lbl_1_bss_44 = -1; - lbl_1_bss_14 = (_CheckFlag(FLAG_ID_MAKE(1, 0)) != 0); + againstBrowserF = _CheckFlag(FLAG_ID_MAKE(1, 0)) != 0; HuWinInit(1); - lbl_1_bss_64 = omAddObjEx(lbl_1_bss_4C, 101, 10, 4, 1, fn_1_64F8); + gameObj = omAddObjEx(objman, 101, 10, 4, 1, M457GameSetup); for (i = 0; i < 2; i++) { - var_r30 = lbl_1_bss_68[i] = omAddObjEx(lbl_1_bss_4C, 100, 1, 12, 0, fn_1_6FB0); - var_r30->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(StructBss68Data), MEMORY_DEFAULT_NUM); - var_r30->work[0] = i; + object = playerObj[i] = omAddObjEx(objman, 100, 1, 12, 0, M457PlayerSetup); + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(PlayerData), MEMORY_DEFAULT_NUM); + object->work[0] = i; } - lbl_1_bss_70 = omAddObjEx(lbl_1_bss_4C, 0x7FDA, 0, 0, -1, omOutView); - lbl_1_bss_74 = omAddObjEx(lbl_1_bss_4C, 103, 0, 0, -1, fn_1_75A4); + omViewObj = omAddObjEx(objman, 0x7FDA, 0, 0, -1, omOutView); + mainObj = omAddObjEx(objman, 103, 0, 0, -1, M457Setup); } -void fn_1_7AE4(omObjData* arg0) { - StructBss68Data* sp8; +static void M457Exit(omObjData *object) +{ + PlayerData *playerData; s32 i; if (WipeStatGet() == 0) { for (i = 0; i < 2; i++) { - sp8 = lbl_1_bss_68[i]->data; + playerData = playerObj[i]->data; } if (lbl_1_data_2A4 >= 0) { MGSeqKill(lbl_1_data_2A4); diff --git a/src/REL/m462Dll/main.c b/src/REL/m462Dll/main.c index ff5c24f1..4b10f621 100755 --- a/src/REL/m462Dll/main.c +++ b/src/REL/m462Dll/main.c @@ -1280,7 +1280,7 @@ s32 fn_1_65D0(StructBss340 *arg0) { float var_f31; float var_f30; - s32 sp8; + s32 sp8; // ! - uninitialized var_f31 = fn_1_1534(arg0->unk4C.z, arg0->unk84); var_f30 = fn_1_1534(arg0->unk4C.x, arg0->unk84); diff --git a/src/REL/mgmodedll/battle.c b/src/REL/mgmodedll/battle.c index a78bdc8a..c5088576 100644 --- a/src/REL/mgmodedll/battle.c +++ b/src/REL/mgmodedll/battle.c @@ -44,7 +44,7 @@ s32 fn_1_E72C(void) temp_r29 = 0; fn_1_279FC(0); fn_1_FF5C(); - if (lbl_1_bss_4 == 3) { + if (mgModeEvtNo == 3) { mgTypeCurr = mgInfoTbl[GWSystem.mg_next].type; if (mgTypeCurr >= 4) { mgTypeCurr = 3; @@ -105,7 +105,7 @@ s32 fn_1_E72C(void) } repeat_mode: if (lbl_1_bss_20AA == 0) { - HuPrcChildCreate(fn_1_27080, 100, 12288, 0, lbl_1_bss_2D8); + HuPrcChildCreate(fn_1_27080, 100, 12288, 0, objman); lbl_1_bss_20AA = 1; } lbl_1_bss_3A4 = fn_1_25CA8(0x1A0020); @@ -843,7 +843,7 @@ void fn_1_12B64(s16 arg0) { Process *process; s32 *data; - process = HuPrcChildCreate(fn_1_12BEC, 100, 12288, 0, lbl_1_bss_2D8); + process = HuPrcChildCreate(fn_1_12BEC, 100, 12288, 0, objman); data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(s32), MEMORY_DEFAULT_NUM); process->user_data = data; *data = arg0; diff --git a/src/REL/mgmodedll/datalist.c b/src/REL/mgmodedll/datalist.c index 947f1677..3eb233ec 100644 --- a/src/REL/mgmodedll/datalist.c +++ b/src/REL/mgmodedll/datalist.c @@ -1,131 +1,135 @@ #include "REL/mgmodedll.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + DataListModel lbl_1_data_490[] = { - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x00), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x01), 0x40000001, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x02), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x03), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x04), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x5E), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x5F), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x60), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x61), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x07), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x08), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, - { -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x00), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x01), 0x40000001, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x02), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x03), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x04), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x5E), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x5F), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x60), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x61), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x07), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x08), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, + { -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } }, }; DataListSprite lbl_1_data_768[] = { - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0C), 0, 10, 288, -200, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x09), 0, 10, 288, -200, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0A), 0, 10, 288, -200, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0D), 4, 100, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x18), 4, 200, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1A), 4, 20, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1B), 4, 30, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1C), 4, 40, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1D), 4, 50, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1E), 4, 50, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1F), 4, 50, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x20), 4, 50, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x21), 4, 50, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x25), 4, 200, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0E), 4, 210, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0F), 4, 210, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x19), 4, 200, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x2A), 4, 10, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x2E), 4, 200, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x2F), 4, 200, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x32), 4, 5, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x31), 4, 4, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x30), 4, 4, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x33), 4, 50, 288, 240, { 255, 255, 255, 255 } }, - { DATA_MAKE_NUM(DATADIR_MGMODE, 0x34), 4, 50, 288, 256, { 255, 255, 255, 255 } }, - { 0, 0, 0, 0, 0, { 0, 0, 0, 0 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0C), 0, 10, 288, -200, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x09), 0, 10, 288, -200, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0A), 0, 10, 288, -200, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0D), 4, 100, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x18), 4, 200, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1A), 4, 20, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1B), 4, 30, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1C), 4, 40, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1D), 4, 50, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1E), 4, 50, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x1F), 4, 50, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x20), 4, 50, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x21), 4, 50, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x25), 4, 200, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0E), 4, 210, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x0F), 4, 210, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x19), 4, 200, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x2A), 4, 10, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x2E), 4, 200, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x2F), 4, 200, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x32), 4, 5, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x31), 4, 4, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x30), 4, 4, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x33), 4, 50, 288, 240, { 255, 255, 255, 255 } }, + { DATA_MAKE_NUM(DATADIR_MGMODE, 0x34), 4, 50, 288, 256, { 255, 255, 255, 255 } }, + { 0, 0, 0, 0, 0, { 0, 0, 0, 0 } }, }; void fn_1_267E8(DataListModel *model_list) { - DataListModel *list; - s16 i; - s16 model; - s16 clear_i; - ModelData *model_ptr; - void *data; - list = model_list; - for(clear_i=0; clear_i<13; clear_i++) { - lbl_1_bss_2C80[clear_i] = lbl_1_bss_2C66[clear_i] = -1; - } - for(i=0; list->datanum != DATA_NUM_LISTEND; list++, i++) { - if(list->type == 0) { - data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA); - model = Hu3DModelCreate(data); - lbl_1_bss_2C80[i] = model; - Hu3DModelAttrSet(model, list->attr); - Hu3DModelPosSetV(model, &list->pos); - Hu3DModelRotSetV(model, &list->rot); - Hu3DModelScaleSetV(model, &list->scale); - model_ptr = &Hu3DData[model]; - if(model_ptr->unk_08 != -1) { - lbl_1_bss_2C66[i] = model_ptr->unk_08; - } - } else if(list->type == 1) { - data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA); - lbl_1_bss_2C66[i] = Hu3DJointMotion(lbl_1_bss_2C80[list->mot_link], data); - - } - (void)i; - } - list = model_list; - for(i=0; list->datanum != DATA_NUM_LISTEND; list++, i++) { - if(list->type == 2) { - model = Hu3DModelLink(lbl_1_bss_2C80[list->link]); - lbl_1_bss_2C80[i] = model; - Hu3DModelAttrSet(model, list->attr); - Hu3DModelPosSetV(model, &list->pos); - Hu3DModelRotSetV(model, &list->rot); - Hu3DModelScaleSetV(model, &list->scale); - } - if(list->type == 0 && list->mot_link != -1) { - Hu3DMotionSet(lbl_1_bss_2C80[i], lbl_1_bss_2C66[list->mot_link]); - } - (void)i; - } + DataListModel *list; + s16 i; + s16 model; + s16 clear_i; + ModelData *model_ptr; + void *data; + list = model_list; + for (clear_i = 0; clear_i < 13; clear_i++) { + lbl_1_bss_2C80[clear_i] = lbl_1_bss_2C66[clear_i] = -1; + } + for (i = 0; list->datanum != DATA_NUM_LISTEND; list++, i++) { + if (list->type == 0) { + data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA); + model = Hu3DModelCreate(data); + lbl_1_bss_2C80[i] = model; + Hu3DModelAttrSet(model, list->attr); + Hu3DModelPosSetV(model, &list->pos); + Hu3DModelRotSetV(model, &list->rot); + Hu3DModelScaleSetV(model, &list->scale); + model_ptr = &Hu3DData[model]; + if (model_ptr->unk_08 != -1) { + lbl_1_bss_2C66[i] = model_ptr->unk_08; + } + } + else if (list->type == 1) { + data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA); + lbl_1_bss_2C66[i] = Hu3DJointMotion(lbl_1_bss_2C80[list->mot_link], data); + } + (void)i; + } + list = model_list; + for (i = 0; list->datanum != DATA_NUM_LISTEND; list++, i++) { + if (list->type == 2) { + model = Hu3DModelLink(lbl_1_bss_2C80[list->link]); + lbl_1_bss_2C80[i] = model; + Hu3DModelAttrSet(model, list->attr); + Hu3DModelPosSetV(model, &list->pos); + Hu3DModelRotSetV(model, &list->rot); + Hu3DModelScaleSetV(model, &list->scale); + } + if (list->type == 0 && list->mot_link != -1) { + Hu3DMotionSet(lbl_1_bss_2C80[i], lbl_1_bss_2C66[list->mot_link]); + } + (void)i; + } } void fn_1_26A78(DataListSprite *sprite_list) { - DataListSprite *list; - s16 sprite; - s16 clear_i; - s16 i; - list = sprite_list; - for(clear_i=0; clear_i<29; clear_i++) { - lbl_1_bss_2C2C[clear_i] = -1; - } - for(i=0; list->datanum; i++, list++) { - sprite = espEntry(list->datanum, 100, 0); - lbl_1_bss_2C2C[i] = sprite; - espPosSet(sprite, list->x, list->y); - espColorSet(sprite, list->color.r, list->color.g, list->color.b); - espTPLvlSet(sprite, list->color.a/255.0f); - espPriSet(sprite, list->prio); - espAttrSet(sprite, list->attr); - } + DataListSprite *list; + s16 sprite; + s16 clear_i; + s16 i; + list = sprite_list; + for (clear_i = 0; clear_i < 29; clear_i++) { + lbl_1_bss_2C2C[clear_i] = -1; + } + for (i = 0; list->datanum; i++, list++) { + sprite = espEntry(list->datanum, 100, 0); + lbl_1_bss_2C2C[i] = sprite; + espPosSet(sprite, list->x, list->y); + espColorSet(sprite, list->color.r, list->color.g, list->color.b); + espTPLvlSet(sprite, list->color.a / 255.0f); + espPriSet(sprite, list->prio); + espAttrSet(sprite, list->attr); + } } void fn_1_26BB0(void) { - s16 i; - for(i=0; i<29; i++) { - if(lbl_1_bss_2C2C[i] != -1) { - espKill(lbl_1_bss_2C2C[i]); - } - } + s16 i; + for (i = 0; i < 29; i++) { + if (lbl_1_bss_2C2C[i] != -1) { + espKill(lbl_1_bss_2C2C[i]); + } + } } diff --git a/src/REL/mgmodedll/free_play.c b/src/REL/mgmodedll/free_play.c index 7d314df5..58ffe85e 100644 --- a/src/REL/mgmodedll/free_play.c +++ b/src/REL/mgmodedll/free_play.c @@ -88,7 +88,7 @@ s32 fn_1_6D28(void) else { temp_r28 = lbl_1_bss_2C2C[2]; } - if (lbl_1_bss_4 == 1 || lbl_1_bss_4 == 2) { + if (mgModeEvtNo == 1 || mgModeEvtNo == 2) { mgTypeCurr = fn_1_B5A8(&spA, &sp8); espAttrReset(lbl_1_bss_2C2C[3], HUSPR_ATTR_DISPOFF); espTPLvlSet(lbl_1_bss_2C2C[3], 1.0f); @@ -99,7 +99,7 @@ s32 fn_1_6D28(void) if (lbl_1_bss_2A6 == 0) { espAttrReset(lbl_1_bss_2C2C[4], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[4], 450, 404); - if (lbl_1_bss_4 == 1) { + if (mgModeEvtNo == 1) { fn_1_BFA0(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA + sp8]); espAttrReset(lbl_1_bss_2C2C[14], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[14], 450, 348); diff --git a/src/REL/mgmodedll/mgmode.c b/src/REL/mgmodedll/mgmode.c index a0e23802..4e078f7d 100644 --- a/src/REL/mgmodedll/mgmode.c +++ b/src/REL/mgmodedll/mgmode.c @@ -7,6 +7,10 @@ #include "ext_math.h" +#ifndef __MWERKS__ +#include "game/hsfex.h" +#endif + typedef struct camera_view_params { Vec rot; Vec pos; @@ -15,8 +19,8 @@ typedef struct camera_view_params { CameraViewParams lbl_1_data_0[1] = { { { -5, 0, 0 }, { 0, 125, 0 }, 1750 } }; -omObjData *lbl_1_bss_2DC; -Process *lbl_1_bss_2D8; +omObjData *outViewObj; +Process *objman; s32 lbl_1_bss_2D4; s32 lbl_1_bss_2D0; s16 lbl_1_bss_2CE; @@ -31,7 +35,7 @@ Vec lbl_1_bss_28C[2]; Vec lbl_1_bss_274[2]; float lbl_1_bss_26C[2]; StructBss8 lbl_1_bss_8; -s16 lbl_1_bss_4; +s16 mgModeEvtNo; s32 lbl_1_bss_0; void fn_1_464(void); @@ -42,7 +46,7 @@ void ObjectSetup(void) s32 glight; OSReport("******* MG ObjectSetup *********\n"); - lbl_1_bss_2D8 = omInitObjMan(50, 8192); + objman = omInitObjMan(50, 8192); lbl_1_bss_28C[0].x = -70; lbl_1_bss_28C[0].y = 0; lbl_1_bss_28C[0].z = 0; @@ -58,8 +62,8 @@ void ObjectSetup(void) _ClearFlag(0x10008); GWSystem.mg_type = -1; GWSystem.player_curr = 0; - lbl_1_bss_4 = omovlevtno; - if (lbl_1_bss_4 == 0) { + mgModeEvtNo = omovlevtno; + if (mgModeEvtNo == 0) { mgGameStatBackup = GWGameStat; } lbl_1_bss_2CE = -1; @@ -70,9 +74,9 @@ void ObjectSetup(void) Hu3DCameraViewportSet(1, 0, 0, 640, 480, 0, 1); glight = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255); Hu3DGLightInfinitytSet(glight); - HuPrcChildCreate(fn_1_464, 100, 12288, 0, lbl_1_bss_2D8); - HuPrcChildCreate(fn_1_54F4, 200, 4096, 0, lbl_1_bss_2D8); - lbl_1_bss_2DC = omAddObjEx(lbl_1_bss_2D8, 32730, 0, 0, -1, omOutView); + HuPrcChildCreate(fn_1_464, 100, 12288, 0, objman); + HuPrcChildCreate(fn_1_54F4, 200, 4096, 0, objman); + outViewObj = omAddObjEx(objman, 32730, 0, 0, -1, omOutView); Hu3DBGColorSet(0, 0, 0); HuWinInit(1); fn_1_279FC(0); @@ -86,7 +90,7 @@ void fn_1_464(void) { s16 i; fn_1_52DC(); - if (lbl_1_bss_4 == 0) { + if (mgModeEvtNo == 0) { HuAudSStreamPlay(12); fn_1_19018(); } @@ -103,7 +107,7 @@ void fn_1_464(void) Center.y = 215; CRot.x = 0; CRot.y = CRot.z = 0; - if (lbl_1_bss_4 == 1 || lbl_1_bss_4 == 2 || lbl_1_bss_4 == 3 || lbl_1_bss_4 == 4) { + if (mgModeEvtNo == 1 || mgModeEvtNo == 2 || mgModeEvtNo == 3 || mgModeEvtNo == 4) { Hu3DModelPosSet(lbl_1_bss_2C80[5], 0, 0, 640); Hu3DMotionSet(lbl_1_bss_2C80[5], lbl_1_bss_2C66[6]); Hu3DModelAttrSet(lbl_1_bss_2C80[5], HU3D_MOTATTR_LOOP); @@ -136,7 +140,7 @@ void fn_1_6F8(void) { s16 i; s16 time; - if (lbl_1_bss_4 == 1 || lbl_1_bss_4 == 2 || lbl_1_bss_4 == 3 || lbl_1_bss_4 == 4) { + if (mgModeEvtNo == 1 || mgModeEvtNo == 2 || mgModeEvtNo == 3 || mgModeEvtNo == 4) { lbl_1_bss_2A6 = 0; goto freeplay; } @@ -218,7 +222,7 @@ void fn_1_6F8(void) HuPrcVSleep(); } fn_1_25E74(lbl_1_bss_2CC); - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; espAttrSet(lbl_1_bss_2C2C[0], HUSPR_ATTR_DISPOFF); if (lbl_1_bss_2A6 == 0) { freeplay: @@ -253,19 +257,19 @@ void fn_1_DF0(void) Vec posModel; float weight; - if (lbl_1_bss_4 == 1) { + if (mgModeEvtNo == 1) { lbl_1_bss_2A4 = 0; goto freeplay; } - if (lbl_1_bss_4 == 2) { + if (mgModeEvtNo == 2) { lbl_1_bss_2A4 = 1; goto teamplay; } - if (lbl_1_bss_4 == 3) { + if (mgModeEvtNo == 3) { lbl_1_bss_2A4 = 2; goto battle; } - if (lbl_1_bss_4 == 4) { + if (mgModeEvtNo == 4) { lbl_1_bss_2A4 = 3; goto tictactoe; } @@ -386,7 +390,7 @@ void fn_1_DF0(void) } HuWinPushKeySet(lbl_1_bss_2CE, PAD_BUTTON_A | PAD_BUTTON_B); } - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; pos2D = lbl_1_data_40[0]; pos2D.z = 800; Hu3D2Dto3D(&pos2D, 1, &pos3D); @@ -429,7 +433,7 @@ s32 fn_1_1B0C(void) ModelData *modelP; s16 temp_r29 = 0; - if (lbl_1_bss_4 == 1) { + if (mgModeEvtNo == 1) { pos2D.x = 60; pos2D.y = 70; pos2D.z = 1000; @@ -480,12 +484,12 @@ s32 fn_1_1B0C(void) } mgPracticeEnableF = 1; if (fn_1_6D28()) { - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; goto charsel; } exit: mgPracticeEnableF = 0; - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; pos2D.x = 168; pos2D.y = 190; pos2D.z = 800; @@ -518,7 +522,7 @@ s32 fn_1_21C4(void) s16 i; ModelData *modelP; s16 temp_r29 = 1; - if (lbl_1_bss_4 == 2) { + if (mgModeEvtNo == 2) { pos2D.x = 60; pos2D.y = 70; pos2D.z = 1000; @@ -570,12 +574,12 @@ s32 fn_1_21C4(void) } mgPracticeEnableF = 1; if (fn_1_6D28()) { - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; goto charsel; } exit: mgPracticeEnableF = 0; - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; pos2D.x = 168; pos2D.y = 190; pos2D.z = 800; @@ -611,7 +615,7 @@ s32 fn_1_2940(void) for (i = 0; i < 4; i++) { Hu3DModelLayerSet(lbl_1_bss_2C80[i + 9], 2); } - if (lbl_1_bss_4 == 3) { + if (mgModeEvtNo == 3) { OSReport("Eliminate Play STart\n"); pos2D.x = 50; pos2D.y = 70; @@ -665,7 +669,7 @@ s32 fn_1_2940(void) } if (fn_1_E72C() == 0) { - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; goto charsel; } exit: @@ -673,7 +677,7 @@ exit: for (i = 0; i < 4; i++) { Hu3DModelLayerSet(lbl_1_bss_2C80[i + 9], 3); } - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; pos2D.x = 168; pos2D.y = 190; pos2D.z = 800; @@ -706,7 +710,7 @@ s32 fn_1_3150(void) s16 i; ModelData *modelP; s16 temp_r29 = 1; - if (lbl_1_bss_4 == 4) { + if (mgModeEvtNo == 4) { pos2D.x = 60; pos2D.y = 70; pos2D.z = 1000; @@ -759,12 +763,12 @@ s32 fn_1_3150(void) } if (fn_1_13418() == 0) { - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; goto charsel; } exit: HuDataDirClose(DATADIR_INSTPIC); - lbl_1_bss_4 = 0; + mgModeEvtNo = 0; pos2D.x = 168; pos2D.y = 190; pos2D.z = 800; @@ -1130,7 +1134,7 @@ void fn_1_52DC(void) lbl_1_bss_8.unk10 = lbl_1_bss_2C66[6]; lbl_1_bss_8.unk14 = lbl_1_bss_2C66[7]; lbl_1_bss_8.unk18 = lbl_1_bss_2C66[6]; - fn_1_18DF8(lbl_1_bss_2D8, &lbl_1_bss_8); + fn_1_18DF8(objman, &lbl_1_bss_8); Hu3DModelShadowSet(lbl_1_bss_2C80[5]); Hu3DModelShadowMapSet(lbl_1_bss_2C80[0]); } diff --git a/src/REL/mgmodedll/record.c b/src/REL/mgmodedll/record.c index 974cc66e..0c1bb43f 100644 --- a/src/REL/mgmodedll/record.c +++ b/src/REL/mgmodedll/record.c @@ -13,17 +13,10 @@ void fn_1_DE3C(void); void fn_1_DFB8(void); void fn_1_E02C(float x, float y, s16 recordNo); -s16 lbl_1_bss_37C[6]; -s16 lbl_1_bss_370[6]; +static s16 lbl_1_bss_37C[6]; +static s16 lbl_1_bss_370[6]; -s16 lbl_1_data_120[6][3] = { - 0, 2, 13, - 1, 0, 15, - 2, 1, 35, - 3, 2, 40, - 5, 1, 51, - 10, 1, 62 -}; +s16 mgRecordIdxTbl[6][3] = { 0, 2, 13, 1, 0, 15, 2, 1, 35, 3, 2, 40, 5, 1, 51, 10, 1, 62 }; void fn_1_D8D0(void) { @@ -32,48 +25,48 @@ void fn_1_D8D0(void) fn_1_DE3C(); espAttrReset(lbl_1_bss_2C2C[3], HUSPR_ATTR_DISPOFF); espTPLvlSet(lbl_1_bss_2C2C[3], 0); - for(i=0; i<=20; i++) { - espTPLvlSet(lbl_1_bss_2C2C[3], i/20.0); + for (i = 0; i <= 20; i++) { + espTPLvlSet(lbl_1_bss_2C2C[3], i / 20.0); HuPrcVSleep(); } - for(i=0; i<=20; i++) { - weight = i/20.0; + for (i = 0; i <= 20; i++) { + weight = i / 20.0; espAttrReset(lbl_1_bss_2C2C[27], HUSPR_ATTR_DISPOFF); - espPosSet(lbl_1_bss_2C2C[27], 288, -100.0+(164.0*sind(weight*90.0f))); + espPosSet(lbl_1_bss_2C2C[27], 288, -100.0 + (164.0 * sind(weight * 90.0f))); espAttrReset(lbl_1_bss_2C2C[28], HUSPR_ATTR_DISPOFF); espTPLvlSet(lbl_1_bss_2C2C[28], weight); espAttrReset(lbl_1_bss_2C2C[20], HUSPR_ATTR_DISPOFF); - espPosSet(lbl_1_bss_2C2C[20], ((1-sind(weight*90.0f))*400)+288, 424); + espPosSet(lbl_1_bss_2C2C[20], ((1 - sind(weight * 90.0f)) * 400) + 288, 424); HuPrcVSleep(); } - for(i=0; i<6; i++) { - fn_1_E02C(288, (i*42)+150.0f, i); + for (i = 0; i < 6; i++) { + fn_1_E02C(288, (i * 42) + 150.0f, i); HuPrcVSleep(); } - while(1) { - if(HuPadBtnDown[0] & PAD_BUTTON_B) { + while (1) { + if (HuPadBtnDown[0] & PAD_BUTTON_B) { break; } HuPrcVSleep(); } HuAudFXPlay(3); - for(i=0; i<6; i++) { + for (i = 0; i < 6; i++) { fn_1_E02C(1288, 0, i); HuPrcVSleep(); } fn_1_DFB8(); - for(i=0; i<=20; i++) { - weight = i/20.0; + for (i = 0; i <= 20; i++) { + weight = i / 20.0; espAttrReset(lbl_1_bss_2C2C[27], HUSPR_ATTR_DISPOFF); - espPosSet(lbl_1_bss_2C2C[27], 288, -100.0+(164.0*cosd(weight*90.0f))); + espPosSet(lbl_1_bss_2C2C[27], 288, -100.0 + (164.0 * cosd(weight * 90.0f))); espAttrReset(lbl_1_bss_2C2C[28], HUSPR_ATTR_DISPOFF); - espTPLvlSet(lbl_1_bss_2C2C[28], 1.0-weight); + espTPLvlSet(lbl_1_bss_2C2C[28], 1.0 - weight); espAttrReset(lbl_1_bss_2C2C[20], HUSPR_ATTR_DISPOFF); - espPosSet(lbl_1_bss_2C2C[20], ((1-cosd(weight*90.0f))*400)+288, 424); + espPosSet(lbl_1_bss_2C2C[20], ((1 - cosd(weight * 90.0f)) * 400) + 288, 424); HuPrcVSleep(); } - for(i=0; i<=10; i++) { - espTPLvlSet(lbl_1_bss_2C2C[3], 1-(i/10.0)); + for (i = 0; i <= 10; i++) { + espTPLvlSet(lbl_1_bss_2C2C[3], 1 - (i / 10.0)); HuPrcVSleep(); } } @@ -82,15 +75,15 @@ void fn_1_DE3C(void) { AnimData *numAnim = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 53), MEMORY_DEFAULT_NUM)); s16 i; - for(i=0; i<6; i++) { - s16 window = HuWinCreate(0, (i*24), 268, 32, 0); + for (i = 0; i < 6; i++) { + s16 window = HuWinCreate(0, (i * 24), 268, 32, 0); s16 j; lbl_1_bss_37C[i] = window; HuWinBGTPLvlSet(window, 0); HuWinMesSpeedSet(window, 0); HuWinDispOff(window); lbl_1_bss_370[i] = HuSprGrpCreate(8); - for(j=0; j<8; j++) { + for (j = 0; j < 8; j++) { s16 sprite = HuSprCreate(numAnim, 10, 0); HuSprGrpMemberSet(lbl_1_bss_370[i], j, sprite); (void)sprite; @@ -102,7 +95,7 @@ void fn_1_DE3C(void) void fn_1_DFB8(void) { s16 i; - for(i=0; i<6; i++) { + for (i = 0; i < 6; i++) { HuWinKill(lbl_1_bss_37C[i]); HuSprGrpKill(lbl_1_bss_370[i]); } @@ -111,112 +104,117 @@ void fn_1_DFB8(void) void fn_1_E02C(float x, float y, s16 recordNo) { s32 sprGrpId = lbl_1_bss_370[recordNo]; - s32 value = GWMGRecordGet(lbl_1_data_120[recordNo][0]); + s32 value = GWMGRecordGet(mgRecordIdxTbl[recordNo][0]); s32 i; s16 mgNo; float xOfs; - - if(lbl_1_data_120[recordNo][2] != -1) { - mgNo = omMgIndexGet(lbl_1_data_120[recordNo][2]); - if(!GWMGAvailGet(mgNo+401)) { + + if (mgRecordIdxTbl[recordNo][2] != -1) { + mgNo = omMgIndexGet(mgRecordIdxTbl[recordNo][2]); + if (!GWMGAvailGet(mgNo + 401)) { mgNo = -1; - } else { + } + else { HuWinMesSet(lbl_1_bss_37C[recordNo], mgInfoTbl[mgNo].name_mess); } - } else { + } + else { mgNo = -1; } HuWinDispOn(lbl_1_bss_37C[recordNo]); - HuWinPosSet(lbl_1_bss_37C[recordNo], x-220, y-24); - if(mgNo == -1) { + HuWinPosSet(lbl_1_bss_37C[recordNo], x - 220, y - 24); + if (mgNo == -1) { HuWinMesSet(lbl_1_bss_37C[recordNo], MAKE_MESSID(35, 0)); - for(i=0; i<8; i++) { + for (i = 0; i < 8; i++) { HuSprBankSet(sprGrpId, i, 0); - HuSprPosSet(sprGrpId, i, i*16, 0); + HuSprPosSet(sprGrpId, i, i * 16, 0); HuSprAttrReset(sprGrpId, i, HUSPR_ATTR_DISPOFF); } xOfs = 128; - } else { + } + else { s32 memberNum; s32 digitValue; - if(lbl_1_data_120[recordNo][1] == 0) { + if (mgRecordIdxTbl[recordNo][1] == 0) { memberNum = 0; - if(value > 9999) { + if (value > 9999) { value = 9999; } - digitValue = value/1000; - if(digitValue != 0) { + digitValue = value / 1000; + if (digitValue != 0) { HuSprBankSet(sprGrpId, memberNum, digitValue); - value -= digitValue*1000; + value -= digitValue * 1000; memberNum++; } - digitValue = value/100; - if(digitValue != 0 || memberNum != 0) { + digitValue = value / 100; + if (digitValue != 0 || memberNum != 0) { HuSprBankSet(sprGrpId, memberNum, digitValue); - value -= digitValue*100; + value -= digitValue * 100; memberNum++; } - digitValue = value/10; - if(digitValue != 0 || memberNum != 0) { + digitValue = value / 10; + if (digitValue != 0 || memberNum != 0) { HuSprBankSet(sprGrpId, memberNum, digitValue); - value -= digitValue*10; + value -= digitValue * 10; memberNum++; } HuSprBankSet(sprGrpId, memberNum, value); memberNum++; - for(i=0; i<8; i++) { + for (i = 0; i < 8; i++) { HuSprAttrSet(sprGrpId, i, HUSPR_ATTR_DISPOFF); } - for(i=0; ipos; sp18.x = -300; sp18.y = 0; sp18.z = 680; VECSubtract(&sp18, &sp24, &sp18); - temp_f29 = (180+atan2d(sp18.z, sp18.x))-360; - for(temp_r31=0; temp_r31<=60; temp_r31++) { - if(temp_r31 <= 50) { - temp_f31 = 1.0-sind((temp_r31/50.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3A8, 288, 256+(-400*temp_f31)); - } else { - temp_f31 = cosd(((temp_r31-50.0)/10.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3A8, 288, 240+(16*temp_f31)); + temp_f29 = (180 + atan2d(sp18.z, sp18.x)) - 360; + for (temp_r31 = 0; temp_r31 <= 60; temp_r31++) { + if (temp_r31 <= 50) { + temp_f31 = 1.0 - sind((temp_r31 / 50.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3A8, 288, 256 + (-400 * temp_f31)); } - if(temp_r31 > 20 && temp_r31 <= 50) { - temp_f31 = 1.0-sind(((temp_r31-20)/30.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3AA, 434+(400*temp_f31), 65); - } else if(temp_r31 > 50) { - temp_f31 = cosd(((temp_r31-50.0)/10.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3AA, 450+(-16*temp_f31), 65); + else { + temp_f31 = cosd(((temp_r31 - 50.0) / 10.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3A8, 288, 240 + (16 * temp_f31)); } - if(temp_r31 == 30) { + if (temp_r31 > 20 && temp_r31 <= 50) { + temp_f31 = 1.0 - sind(((temp_r31 - 20) / 30.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3AA, 434 + (400 * temp_f31), 65); + } + else if (temp_r31 > 50) { + temp_f31 = cosd(((temp_r31 - 50.0) / 10.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3AA, 450 + (-16 * temp_f31), 65); + } + if (temp_r31 == 30) { Hu3DMotionShiftSet(lbl_1_bss_2C80[5], lbl_1_bss_2C66[7], 0, 8, HU3D_MOTATTR_LOOP); } - if(temp_r31 > 30) { - temp_f31 = (temp_r31-30.0)/30.0; + if (temp_r31 > 30) { + temp_f31 = (temp_r31 - 30.0) / 30.0; VECScale(&sp18, &spC, temp_f31); VECAdd(&sp24, &spC, &spC); Hu3DModelPosSetV(lbl_1_bss_2C80[5], &spC); - if(temp_r31 <= 40) { - temp_f31 = (temp_r31-20)/10.0; - Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f29*temp_f31, 0); + if (temp_r31 <= 40) { + temp_f31 = (temp_r31 - 20) / 10.0; + Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f29 * temp_f31, 0); } } HuPrcVSleep(); } Hu3DMotionShiftSet(lbl_1_bss_2C80[5], lbl_1_bss_2C66[6], 0, 8, HU3D_MOTATTR_LOOP); - for(temp_r31=0; temp_r31<=10; temp_r31++) { - temp_f31 = temp_r31/10.0; - Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f29+((20.0f-temp_f29)*temp_f31), 0); + for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) { + temp_f31 = temp_r31 / 10.0; + Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f29 + ((20.0f - temp_f29) * temp_f31), 0); HuPrcVSleep(); } - for(temp_r31=0; temp_r31<3; temp_r31++) { - for(temp_r30=0; temp_r30<3; temp_r30++) { + for (temp_r31 = 0; temp_r31 < 3; temp_r31++) { + for (temp_r30 = 0; temp_r30 < 3; temp_r30++) { mgTicTacToeGrid[temp_r31][temp_r30] = 0; } } } lbl_1_bss_3B8 = fn_1_25CA8(0x280019); - if(lbl_1_data_168 == -1) { + if (lbl_1_data_168 == -1) { lbl_1_data_168 = fn_1_2530C(0, 0, 0); } fn_1_25838(lbl_1_data_168, 0x280015, -1, -1); @@ -170,63 +151,80 @@ s32 fn_1_13418(void) HuSprTPLvlSet(lbl_1_bss_3A8, 13, 0.5f); temp_f30 = 0; sp8[0] = sp8[1] = 0; - for(temp_r31=0; temp_r31<9; temp_r31++) { - mgTicTacToeGrid[temp_r31%3][temp_r31/3] &= 0x3; + for (temp_r31 = 0; temp_r31 < 9; temp_r31++) { + mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3] &= 0x3; } - while(1) { - for(temp_r31=0; temp_r31<2; temp_r31++) { - if(sp8[temp_r31] == 0) { + while (1) { + for (temp_r31 = 0; temp_r31 < 2; temp_r31++) { + if (sp8[temp_r31] == 0) { sp8[temp_r31] = fn_1_15E98(temp_r31, 1); - if(sp8[temp_r31] == -1) { + if (sp8[temp_r31] == -1) { sp8[temp_r31] = 0; goto else_case; - } else if(sp8[temp_r31] == 1) { - HuSprAttrSet(lbl_1_bss_3A8, temp_r31+12, HUSPR_ATTR_DISPOFF); - HuSprAttrReset(lbl_1_bss_3A8, temp_r31+14, HUSPR_ATTR_DISPOFF); - if(lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+14, ((lbl_1_bss_3B4[temp_r31]%3)*56)-56, ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); - } else { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+14, ((lbl_1_bss_3B4[temp_r31]%3)*56)-60+(temp_r31*8), ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); - } - } else { - else_case: - if(lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+12, ((lbl_1_bss_3B4[temp_r31]%3)*56)-56, ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); - } else { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+12, ((lbl_1_bss_3B4[temp_r31]%3)*56)-60+(temp_r31*8), ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); - } - HuSprTPLvlSet(lbl_1_bss_3A8, temp_r31+12, 0.7+(0.2*sind(temp_f30+(temp_r31*180)))); - HuSprPriSet(lbl_1_bss_3A8, temp_r31+12, 150); } - } else { - sp8[temp_r31] = fn_1_15E98(temp_r31, 0); - if(sp8[temp_r31] == -1) { - sp8[temp_r31] = 0; - HuSprAttrReset(lbl_1_bss_3A8, temp_r31+12, HUSPR_ATTR_DISPOFF); - HuSprAttrSet(lbl_1_bss_3A8, temp_r31+14, HUSPR_ATTR_DISPOFF); - if(lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+12, ((lbl_1_bss_3B4[temp_r31]%3)*56)-56, ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); - } else { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+12, ((lbl_1_bss_3B4[temp_r31]%3)*56)-60+(temp_r31*8), ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); + else if (sp8[temp_r31] == 1) { + HuSprAttrSet(lbl_1_bss_3A8, temp_r31 + 12, HUSPR_ATTR_DISPOFF); + HuSprAttrReset(lbl_1_bss_3A8, temp_r31 + 14, HUSPR_ATTR_DISPOFF); + if (lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { + HuSprPosSet( + lbl_1_bss_3A8, temp_r31 + 14, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 56, ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); } - } else { - HuSprTPLvlSet(lbl_1_bss_3A8, temp_r31+12, 1.0f); - HuSprPriSet(lbl_1_bss_3A8, temp_r31+12, temp_r31+180); - if(lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+14, ((lbl_1_bss_3B4[temp_r31]%3)*56)-56, ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); - } else { - HuSprPosSet(lbl_1_bss_3A8, temp_r31+14, ((lbl_1_bss_3B4[temp_r31]%3)*56)-60+(temp_r31*8), ((lbl_1_bss_3B4[temp_r31]/3)*56)-56); + else { + HuSprPosSet(lbl_1_bss_3A8, temp_r31 + 14, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 60 + (temp_r31 * 8), + ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); + } + } + else { + else_case: + if (lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { + HuSprPosSet( + lbl_1_bss_3A8, temp_r31 + 12, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 56, ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); + } + else { + HuSprPosSet(lbl_1_bss_3A8, temp_r31 + 12, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 60 + (temp_r31 * 8), + ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); + } + HuSprTPLvlSet(lbl_1_bss_3A8, temp_r31 + 12, 0.7 + (0.2 * sind(temp_f30 + (temp_r31 * 180)))); + HuSprPriSet(lbl_1_bss_3A8, temp_r31 + 12, 150); + } + } + else { + sp8[temp_r31] = fn_1_15E98(temp_r31, 0); + if (sp8[temp_r31] == -1) { + sp8[temp_r31] = 0; + HuSprAttrReset(lbl_1_bss_3A8, temp_r31 + 12, HUSPR_ATTR_DISPOFF); + HuSprAttrSet(lbl_1_bss_3A8, temp_r31 + 14, HUSPR_ATTR_DISPOFF); + if (lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { + HuSprPosSet( + lbl_1_bss_3A8, temp_r31 + 12, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 56, ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); + } + else { + HuSprPosSet(lbl_1_bss_3A8, temp_r31 + 12, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 60 + (temp_r31 * 8), + ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); + } + } + else { + HuSprTPLvlSet(lbl_1_bss_3A8, temp_r31 + 12, 1.0f); + HuSprPriSet(lbl_1_bss_3A8, temp_r31 + 12, temp_r31 + 180); + if (lbl_1_bss_3B4[0] != lbl_1_bss_3B4[1]) { + HuSprPosSet( + lbl_1_bss_3A8, temp_r31 + 14, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 56, ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); + } + else { + HuSprPosSet(lbl_1_bss_3A8, temp_r31 + 14, ((lbl_1_bss_3B4[temp_r31] % 3) * 56) - 60 + (temp_r31 * 8), + ((lbl_1_bss_3B4[temp_r31] / 3) * 56) - 56); } } } } - if(sp8[0] == 1 && sp8[1] == 1) { + if (sp8[0] == 1 && sp8[1] == 1) { HuSprTPLvlSet(lbl_1_bss_3A8, 12, 1.0f); HuSprTPLvlSet(lbl_1_bss_3A8, 13, 1.0f); break; - } else { + } + else { temp_f30 += 10.0f; - if(temp_f30 > 360.0f) { + if (temp_f30 > 360.0f) { temp_f30 -= 360.0f; } HuPrcVSleep(); @@ -237,14 +235,14 @@ s32 fn_1_13418(void) fn_1_25838(lbl_1_data_168, 0x280010, -1, -1); HuSprTPLvlSet(lbl_1_bss_3A8, 24, 1.0f); mgTypeCurr = 2; - for(temp_r30=0; temp_r30<35;) { - for(temp_r31=0; temp_r31= 35) { + if (temp_r30 >= 35) { break; } } @@ -256,33 +254,35 @@ s32 fn_1_13418(void) HuWinInsertMesSet(lbl_1_data_168, mgInfoTbl[lbl_1_bss_2E4].name_mess, 0); HuWinAttrSet(lbl_1_data_168, 16); fn_1_25838(lbl_1_data_168, 0x280011, -1, -1); - repeat_mess: +repeat_mess: fn_1_25838(lbl_1_data_168, 0x280029, -1, -1); temp_r29 = HuWinChoiceGet(lbl_1_data_168, 0); - if(temp_r29 == 0) { + if (temp_r29 == 0) { _ClearFlag(11); - } else if(temp_r29 == 1) { + } + else if (temp_r29 == 1) { HuWinInsertMesSet(lbl_1_data_168, MAKE_MESSID(0x28, 40), 0); fn_1_25838(lbl_1_data_168, 0x280026, -1, -1); temp_r29 = HuWinChoiceGet(lbl_1_data_168, 1); - if(temp_r29 == 1) { + if (temp_r29 == 1) { goto repeat_mess; } fn_1_271B4(-1, 0, 0); - for(temp_r31=1; temp_r31<=10; temp_r31++) { - HuSprTPLvlSet(lbl_1_bss_3A8, 24, 1-(temp_r31/10.0)); + for (temp_r31 = 1; temp_r31 <= 10; temp_r31++) { + HuSprTPLvlSet(lbl_1_bss_3A8, 24, 1 - (temp_r31 / 10.0)); HuPrcVSleep(); } fn_1_16438(); return 1; - } else { + } + else { _SetFlag(11); } GWSystem.mg_next = lbl_1_bss_2E4; HuDataDirClose(DATADIR_INSTPIC); fn_1_2783C(4); - while(1) { + while (1) { HuPrcVSleep(); } } @@ -302,20 +302,20 @@ void fn_1_14CFC(void) s16 temp_r21; s16 temp_r20; s16 sp8; - for(temp_r31=0; temp_r31<4; temp_r31++) { + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { lbl_1_bss_2C1C[temp_r31] = temp_r31; } - for(temp_r31=0; temp_r31<4; temp_r31++) { - for(temp_r27=0; temp_r27<3-temp_r31; temp_r27++) { - if(GWPlayerCfg[lbl_1_bss_2C1C[temp_r27]].group > GWPlayerCfg[lbl_1_bss_2C1C[temp_r27+1]].group) { + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { + for (temp_r27 = 0; temp_r27 < 3 - temp_r31; temp_r27++) { + if (GWPlayerCfg[lbl_1_bss_2C1C[temp_r27]].group > GWPlayerCfg[lbl_1_bss_2C1C[temp_r27 + 1]].group) { temp_r24 = lbl_1_bss_2C1C[temp_r27]; - lbl_1_bss_2C1C[temp_r27] = lbl_1_bss_2C1C[temp_r27+1]; - lbl_1_bss_2C1C[temp_r27+1] = temp_r24; + lbl_1_bss_2C1C[temp_r27] = lbl_1_bss_2C1C[temp_r27 + 1]; + lbl_1_bss_2C1C[temp_r27 + 1] = temp_r24; } } } - if(lbl_1_bss_3A8 == 0) { - + if (lbl_1_bss_3A8 == 0) { + lbl_1_bss_3A8 = temp_r30 = HuSprGrpCreate(25); temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 84), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r28, 200, 0); @@ -333,52 +333,55 @@ void fn_1_14CFC(void) HuSprPosSet(temp_r30, 2, temp_r26, temp_r25); temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 87), MEMORY_DEFAULT_NUM)); temp_r22 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 88), MEMORY_DEFAULT_NUM)); - for(temp_r31=temp_r27=0; temp_r31<9; temp_r31++) { - if(mgTicTacToeGrid[temp_r31%3][temp_r31/3] & 0xF) { - temp_r24 = mgTicTacToeGrid[temp_r31%3][temp_r31/3]; - if(temp_r24 & 0x4) { + for (temp_r31 = temp_r27 = 0; temp_r31 < 9; temp_r31++) { + if (mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3] & 0xF) { + temp_r24 = mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3]; + if (temp_r24 & 0x4) { temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 91), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r23, 180, 0); HuSprGrpMemberSet(temp_r30, 14, temp_r29); - if(temp_r24 & 0x8) { - HuSprPosSet(temp_r30, 14, temp_r26+((temp_r31%3)*56)-60, temp_r25+((temp_r31/3)*56)-56); - } else { - HuSprPosSet(temp_r30, 14, temp_r26+((temp_r31%3)*56)-56, temp_r25+((temp_r31/3)*56)-56); + if (temp_r24 & 0x8) { + HuSprPosSet(temp_r30, 14, temp_r26 + ((temp_r31 % 3) * 56) - 60, temp_r25 + ((temp_r31 / 3) * 56) - 56); + } + else { + HuSprPosSet(temp_r30, 14, temp_r26 + ((temp_r31 % 3) * 56) - 56, temp_r25 + ((temp_r31 / 3) * 56) - 56); } temp_r27++; } - if(temp_r24 & 0x8) { + if (temp_r24 & 0x8) { temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 92), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r23, 180, 0); HuSprGrpMemberSet(temp_r30, 15, temp_r29); - if(temp_r24 & 0x4) { - HuSprPosSet(temp_r30, 15, temp_r26+((temp_r31%3)*56)-48, temp_r25+((temp_r31/3)*56)-56); - } else { - HuSprPosSet(temp_r30, 15, temp_r26+((temp_r31%3)*56)-56, temp_r25+((temp_r31/3)*56)-56); + if (temp_r24 & 0x4) { + HuSprPosSet(temp_r30, 15, temp_r26 + ((temp_r31 % 3) * 56) - 48, temp_r25 + ((temp_r31 / 3) * 56) - 56); + } + else { + HuSprPosSet(temp_r30, 15, temp_r26 + ((temp_r31 % 3) * 56) - 56, temp_r25 + ((temp_r31 / 3) * 56) - 56); } temp_r27++; } - if(temp_r24 & 0x3) { - if(mgTicTacToeGrid[temp_r31%3][temp_r31/3] & 0x1) { + if (temp_r24 & 0x3) { + if (mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3] & 0x1) { temp_r29 = HuSprCreate(temp_r28, 180, 0); - } else { + } + else { temp_r29 = HuSprCreate(temp_r22, 180, 0); } - HuSprGrpMemberSet(temp_r30, temp_r31+3, temp_r29); - HuSprPosSet(temp_r30, temp_r31+3, temp_r26+((temp_r31%3)*56)-56, temp_r25+((temp_r31/3)*56)-56); + HuSprGrpMemberSet(temp_r30, temp_r31 + 3, temp_r29); + HuSprPosSet(temp_r30, temp_r31 + 3, temp_r26 + ((temp_r31 % 3) * 56) - 56, temp_r25 + ((temp_r31 / 3) * 56) - 56); } } } - if(temp_r27 == 0) { + if (temp_r27 == 0) { temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 91), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r23, 150, 0); HuSprGrpMemberSet(temp_r30, 14, temp_r29); - HuSprPosSet(temp_r30, 14, temp_r26+((temp_r31%3)*56)-56, temp_r25+((temp_r31/3)*56)-56); + HuSprPosSet(temp_r30, 14, temp_r26 + ((temp_r31 % 3) * 56) - 56, temp_r25 + ((temp_r31 / 3) * 56) - 56); HuSprAttrSet(temp_r30, 14, HUSPR_ATTR_DISPOFF); temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 92), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r23, 150, 0); HuSprGrpMemberSet(temp_r30, 15, temp_r29); - HuSprPosSet(temp_r30, 15, temp_r26+((temp_r31%3)*56)-56, temp_r25+((temp_r31/3)*56)-56); + HuSprPosSet(temp_r30, 15, temp_r26 + ((temp_r31 % 3) * 56) - 56, temp_r25 + ((temp_r31 / 3) * 56) - 56); HuSprAttrSet(temp_r30, 15, HUSPR_ATTR_DISPOFF); } temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 89), MEMORY_DEFAULT_NUM)); @@ -391,14 +394,14 @@ void fn_1_14CFC(void) HuSprAttrSet(temp_r30, 13, HUSPR_ATTR_DISPOFF); temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 101), MEMORY_DEFAULT_NUM)); temp_r22 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 102), MEMORY_DEFAULT_NUM)); - for(temp_r31=0; temp_r31<4; temp_r31++) { + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { temp_r29 = HuSprCreate(temp_r28, 130, temp_r31); - HuSprGrpMemberSet(temp_r30, (temp_r31*2)+16, temp_r29); - HuSprPosSet(temp_r30, (temp_r31*2)+16, ((temp_r31%2)*314)-155, ((temp_r31/2)*185)-110); + HuSprGrpMemberSet(temp_r30, (temp_r31 * 2) + 16, temp_r29); + HuSprPosSet(temp_r30, (temp_r31 * 2) + 16, ((temp_r31 % 2) * 314) - 155, ((temp_r31 / 2) * 185) - 110); temp_r29 = HuSprCreate(temp_r22, 135, temp_r31); - HuSprGrpMemberSet(temp_r30, (temp_r31*2)+17, temp_r29); - HuSprTPLvlSet(temp_r30, (temp_r31*2)+17, 0.5f); - HuSprPosSet(temp_r30, (temp_r31*2)+17, ((temp_r31%2)*314)-155, ((temp_r31/2)*185)-102); + HuSprGrpMemberSet(temp_r30, (temp_r31 * 2) + 17, temp_r29); + HuSprTPLvlSet(temp_r30, (temp_r31 * 2) + 17, 0.5f); + HuSprPosSet(temp_r30, (temp_r31 * 2) + 17, ((temp_r31 % 2) * 314) - 155, ((temp_r31 / 2) * 185) - 102); } temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 37), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r28, 150, 0); @@ -407,8 +410,8 @@ void fn_1_14CFC(void) HuSprScaleSet(temp_r30, 24, 0.9f, 0.9f); HuSprTPLvlSet(temp_r30, 24, 0); } - if(lbl_1_bss_3AA == 0) { - + if (lbl_1_bss_3AA == 0) { + lbl_1_bss_3AA = temp_r30 = HuSprGrpCreate(10); temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 15), MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r28, 200, 0); @@ -418,22 +421,23 @@ void fn_1_14CFC(void) temp_r29 = HuSprCreate(temp_r28, 190, 0); HuSprGrpMemberSet(temp_r30, 1, temp_r29); HuSprPosSet(temp_r30, 1, 0, 0); - for(temp_r31=0; temp_r31<4; temp_r31++) { + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { temp_r20 = lbl_1_bss_2C24[temp_r31] = GWPlayerCfg[lbl_1_bss_2C1C[temp_r31]].character; - temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 16)+temp_r20, MEMORY_DEFAULT_NUM)); + temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 16) + temp_r20, MEMORY_DEFAULT_NUM)); temp_r29 = HuSprCreate(temp_r28, 190, 0); - HuSprGrpMemberSet(temp_r30, (temp_r31*2)+2, temp_r29); - HuSprPosSet(temp_r30, (temp_r31*2)+2, lbl_1_data_19C[temp_r31], 0); - if(sp8 = GWPlayerCfg[lbl_1_bss_2C1C[temp_r31]].iscom) { + HuSprGrpMemberSet(temp_r30, (temp_r31 * 2) + 2, temp_r29); + HuSprPosSet(temp_r30, (temp_r31 * 2) + 2, lbl_1_data_19C[temp_r31], 0); + if (sp8 = GWPlayerCfg[lbl_1_bss_2C1C[temp_r31]].iscom) { temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 39), MEMORY_DEFAULT_NUM)); temp_r21 = GWPlayerCfg[lbl_1_bss_2C1C[temp_r31]].diff; - } else { + } + else { temp_r28 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 38), MEMORY_DEFAULT_NUM)); temp_r21 = GWPlayerCfg[lbl_1_bss_2C1C[temp_r31]].pad_idx; } temp_r29 = HuSprCreate(temp_r28, 180, temp_r21); - HuSprGrpMemberSet(temp_r30, (temp_r31*2)+3, temp_r29); - HuSprPosSet(temp_r30, (temp_r31*2)+3, lbl_1_data_19C[temp_r31], 24); + HuSprGrpMemberSet(temp_r30, (temp_r31 * 2) + 3, temp_r29); + HuSprPosSet(temp_r30, (temp_r31 * 2) + 3, lbl_1_data_19C[temp_r31], 24); } HuSprGrpPosSet(temp_r30, 800, 240); } @@ -450,70 +454,74 @@ s32 fn_1_15E98(s16 arg0, s32 arg1) s16 temp_r24; s16 temp_r23; temp_r28 = 4; - for(temp_r27=0; temp_r27<4; temp_r27++) { - if(arg0 == GWPlayerCfg[temp_r27].group && GWPlayerCfg[temp_r27].iscom == 0 && temp_r28 > GWPlayerCfg[temp_r27].pad_idx) { + for (temp_r27 = 0; temp_r27 < 4; temp_r27++) { + if (arg0 == GWPlayerCfg[temp_r27].group && GWPlayerCfg[temp_r27].iscom == 0 && temp_r28 > GWPlayerCfg[temp_r27].pad_idx) { temp_r28 = GWPlayerCfg[temp_r27].pad_idx; } } - if(temp_r28 == 4) { - if(arg1 == 0) { + if (temp_r28 == 4) { + if (arg1 == 0) { return 1; } - temp_r30 = lbl_1_bss_3B4[arg0]%3; - temp_r29 = lbl_1_bss_3B4[arg0]/3; - temp_r24 = lbl_1_bss_3B0[arg0]%3; - temp_r23 = lbl_1_bss_3B0[arg0]/3; - if(--lbl_1_bss_3AC[arg0] != 0) { + temp_r30 = lbl_1_bss_3B4[arg0] % 3; + temp_r29 = lbl_1_bss_3B4[arg0] / 3; + temp_r24 = lbl_1_bss_3B0[arg0] % 3; + temp_r23 = lbl_1_bss_3B0[arg0] / 3; + if (--lbl_1_bss_3AC[arg0] != 0) { return 0; } - if(temp_r30 == temp_r24 && temp_r29 == temp_r23) { + if (temp_r30 == temp_r24 && temp_r29 == temp_r23) { HuAudFXPlay(1); mgTicTacToeGrid[temp_r24][temp_r23] |= 4 << arg0; return 1; - } else { + } + else { lbl_1_bss_3AC[arg0] = 30; - temp_r26 = (temp_r24-temp_r30 < 0) ? -1 : (temp_r24-temp_r30 > 0) ? 1 : 0; - temp_r25 = (temp_r23-temp_r29 < 0) ? -1 : (temp_r23-temp_r29 > 0) ? 1 : 0; - lbl_1_bss_3B4[arg0] = temp_r30+temp_r26+((temp_r29+temp_r25)*3); + temp_r26 = (temp_r24 - temp_r30 < 0) ? -1 : (temp_r24 - temp_r30 > 0) ? 1 : 0; + temp_r25 = (temp_r23 - temp_r29 < 0) ? -1 : (temp_r23 - temp_r29 > 0) ? 1 : 0; + lbl_1_bss_3B4[arg0] = temp_r30 + temp_r26 + ((temp_r29 + temp_r25) * 3); HuAudFXPlay(0); return 0; } - } else { - temp_r30 = lbl_1_bss_3B4[arg0]%3; - temp_r29 = lbl_1_bss_3B4[arg0]/3; - if(arg1 == 0) { + } + else { + temp_r30 = lbl_1_bss_3B4[arg0] % 3; + temp_r29 = lbl_1_bss_3B4[arg0] / 3; + if (arg1 == 0) { return 1; } - if(HuPadBtnDown[temp_r28] & PAD_BUTTON_A) { - if((mgTicTacToeGrid[temp_r30][temp_r29] & 0x3) == 0) { + if (HuPadBtnDown[temp_r28] & PAD_BUTTON_A) { + if ((mgTicTacToeGrid[temp_r30][temp_r29] & 0x3) == 0) { mgTicTacToeGrid[temp_r30][temp_r29] |= 4 << arg0; HuAudFXPlay(1); return 1; - } else { + } + else { HuAudFXPlay(4); } } - if(HuPadDStkRep[temp_r28] == 0) { + if (HuPadDStkRep[temp_r28] == 0) { return 0; } temp_r26 = temp_r25 = 0; - if((HuPadDStkRep[temp_r28] & PAD_BUTTON_LEFT) && temp_r30 > 0) { + if ((HuPadDStkRep[temp_r28] & PAD_BUTTON_LEFT) && temp_r30 > 0) { temp_r26 = -1; - } else if((HuPadDStkRep[temp_r28] & PAD_BUTTON_RIGHT) && temp_r30 < 2) { + } + else if ((HuPadDStkRep[temp_r28] & PAD_BUTTON_RIGHT) && temp_r30 < 2) { temp_r26 = 1; } - if((HuPadDStkRep[temp_r28] & PAD_BUTTON_UP) && temp_r29 > 0) { + if ((HuPadDStkRep[temp_r28] & PAD_BUTTON_UP) && temp_r29 > 0) { temp_r25 = -1; - } else if((HuPadDStkRep[temp_r28] & PAD_BUTTON_DOWN) && temp_r29 < 2) { + } + else if ((HuPadDStkRep[temp_r28] & PAD_BUTTON_DOWN) && temp_r29 < 2) { temp_r25 = 1; } - if(temp_r26 || temp_r25) { + if (temp_r26 || temp_r25) { HuAudFXPlay(0); } - lbl_1_bss_3B4[arg0] = temp_r30+temp_r26+((temp_r29+temp_r25)*3); + lbl_1_bss_3B4[arg0] = temp_r30 + temp_r26 + ((temp_r29 + temp_r25) * 3); return 0; } - } void fn_1_16438(void) @@ -525,7 +533,7 @@ void fn_1_16438(void) Vec sp8; float temp_f31; float temp_f30; - + fn_1_25E74(lbl_1_bss_3B8); fn_1_25584(lbl_1_data_168); lbl_1_data_168 = lbl_1_bss_3B8 = -1; @@ -535,44 +543,46 @@ void fn_1_16438(void) sp14.y = 0; sp14.z = 640; VECSubtract(&sp14, &sp20, &sp14); - temp_f30 = 180+atan2d(sp14.z, sp14.x); - for(temp_r31=0; temp_r31<=60; temp_r31++) { - if(temp_r31 <= 10) { - temp_f31 = sind((temp_r31/10.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3A8, 288, 240+(16*temp_f31)); - } else { - temp_f31 = 1.0-cosd(((temp_r31-10.0)/50.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3A8, 288, 256+(-400*temp_f31)); + temp_f30 = 180 + atan2d(sp14.z, sp14.x); + for (temp_r31 = 0; temp_r31 <= 60; temp_r31++) { + if (temp_r31 <= 10) { + temp_f31 = sind((temp_r31 / 10.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3A8, 288, 240 + (16 * temp_f31)); } - if(temp_r31 <= 10) { - temp_f31 = sind((temp_r31/10.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3AA, 450+(-16*temp_f31), 65); - } else if(temp_r31 < 30) { - temp_f31 = 1-cosd(((temp_r31-10.0)/20.0)*90.0); - HuSprGrpPosSet(lbl_1_bss_3AA, 434+(400*temp_f31), 65); + else { + temp_f31 = 1.0 - cosd(((temp_r31 - 10.0) / 50.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3A8, 288, 256 + (-400 * temp_f31)); } - if(temp_r31 == 29) { + if (temp_r31 <= 10) { + temp_f31 = sind((temp_r31 / 10.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3AA, 450 + (-16 * temp_f31), 65); + } + else if (temp_r31 < 30) { + temp_f31 = 1 - cosd(((temp_r31 - 10.0) / 20.0) * 90.0); + HuSprGrpPosSet(lbl_1_bss_3AA, 434 + (400 * temp_f31), 65); + } + if (temp_r31 == 29) { Hu3DMotionTimeSet(lbl_1_bss_2C80[5], 0); } - if(temp_r31 == 30) { + if (temp_r31 == 30) { Hu3DMotionShiftSet(lbl_1_bss_2C80[5], lbl_1_bss_2C66[7], 0, 8, HU3D_MOTATTR_LOOP); } - if(temp_r31 > 30) { - temp_f31 = (temp_r31-30.0)/30.0; + if (temp_r31 > 30) { + temp_f31 = (temp_r31 - 30.0) / 30.0; VECScale(&sp14, &sp8, temp_f31); VECAdd(&sp20, &sp8, &sp8); Hu3DModelPosSetV(lbl_1_bss_2C80[5], &sp8); - if(temp_r31 <= 40) { - temp_f31 = (temp_r31-30)/10.0; - Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f30*temp_f31, 0); + if (temp_r31 <= 40) { + temp_f31 = (temp_r31 - 30) / 10.0; + Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f30 * temp_f31, 0); } } HuPrcVSleep(); } Hu3DMotionShiftSet(lbl_1_bss_2C80[5], lbl_1_bss_2C66[6], 0, 8, HU3D_MOTATTR_LOOP); - for(temp_r31=0; temp_r31<=10; temp_r31++) { - temp_f31 = 1.0-(temp_r31/10.0); - Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f31*temp_f30, 0); + for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) { + temp_f31 = 1.0 - (temp_r31 / 10.0); + Hu3DModelRotSet(lbl_1_bss_2C80[5], 0, temp_f31 * temp_f30, 0); HuPrcVSleep(); } HuSprGrpKill(lbl_1_bss_3A8); @@ -596,81 +606,85 @@ s32 fn_1_16B30(void) s16 temp_r21; s16 temp_r20; float temp_f31; - + s16 sp22[9]; s16 sp1E[2]; s16 sp1A[2]; s16 sp16[2]; s16 sp12[2]; char spE[2][2]; - - for(temp_r31=0; temp_r31<9; temp_r31++) { - if(mgTicTacToeGrid[temp_r31%3][temp_r31/3] & 0x4) { + + for (temp_r31 = 0; temp_r31 < 9; temp_r31++) { + if (mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3] & 0x4) { sp1E[0] = temp_r31; } - if(mgTicTacToeGrid[temp_r31%3][temp_r31/3] & 0x8) { + if (mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3] & 0x8) { sp1E[1] = temp_r31; } } HuPrcSleep(60); sp16[0] = sp16[1] = 0; - for(temp_r31=0; temp_r31<4; temp_r31++) { - sp16[temp_r31/2] += GWPlayerCoinWinGet(lbl_1_bss_2C1C[temp_r31])+GWPlayerCoinCollectGet(lbl_1_bss_2C1C[temp_r31]); + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { + sp16[temp_r31 / 2] += GWPlayerCoinWinGet(lbl_1_bss_2C1C[temp_r31]) + GWPlayerCoinCollectGet(lbl_1_bss_2C1C[temp_r31]); } sp12[0] = sp12[1] = 0; - if(sp16[0] != sp16[1]) { - if(sp16[0] > sp16[1]) { + if (sp16[0] != sp16[1]) { + if (sp16[0] > sp16[1]) { sp12[0] = 1; - } else { + } + else { sp12[1] = 1; } } - for(temp_r30=0, temp_r28=-1; temp_r30<2; temp_r30++) { - temp_r22 = sp1E[temp_r30]%3; - temp_r21 = sp1E[temp_r30]/3; - if(sp12[temp_r30] != 0) { + for (temp_r30 = 0, temp_r28 = -1; temp_r30 < 2; temp_r30++) { + temp_r22 = sp1E[temp_r30] % 3; + temp_r21 = sp1E[temp_r30] / 3; + if (sp12[temp_r30] != 0) { mgTicTacToeGrid[temp_r22][temp_r21] = (1 << temp_r30); temp_r28 = temp_r30; - } else { + } + else { mgTicTacToeGrid[temp_r22][temp_r21] &= ~(4 << temp_r30); } } - if(lbl_1_data_168 == -1) { + if (lbl_1_data_168 == -1) { lbl_1_data_168 = fn_1_2530C(0, 0, 0); } - if(temp_r28 != -1) { - HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[temp_r28*2], 0); - HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28*2)+1], 1); + if (temp_r28 != -1) { + HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[temp_r28 * 2], 0); + HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28 * 2) + 1], 1); fn_1_25838(lbl_1_data_168, 0x280016, -1, -1); - } else { + } + else { fn_1_25838(lbl_1_data_168, 0x280013, -1, -1); } temp_r26 = espEntry(0x62005D, 100, 0); espColorSet(temp_r26, 255, 255, 192); - espAttrSet(temp_r26, HUSPR_ATTR_ADDCOL|HUSPR_ATTR_DISPOFF|HUSPR_ATTR_LOOP); - for(temp_r31=0; temp_r31<=30; temp_r31++) { - for(temp_r30=0; temp_r30<2; temp_r30++) { - if(sp12[temp_r30]) { - if(temp_r31 == 0) { - temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 87)+temp_r30, MEMORY_DEFAULT_NUM)); + espAttrSet(temp_r26, HUSPR_ATTR_ADDCOL | HUSPR_ATTR_DISPOFF | HUSPR_ATTR_LOOP); + for (temp_r31 = 0; temp_r31 <= 30; temp_r31++) { + for (temp_r30 = 0; temp_r30 < 2; temp_r30++) { + if (sp12[temp_r30]) { + if (temp_r31 == 0) { + temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 87) + temp_r30, MEMORY_DEFAULT_NUM)); temp_r24 = HuSprCreate(temp_r23, 170, 0); - HuSprGrpMemberSet(lbl_1_bss_3A8, sp1E[temp_r30]+3, temp_r24); - HuSprPosSet(lbl_1_bss_3A8, sp1E[temp_r30]+3, ((sp1E[temp_r30]%3)*56)-56, ((sp1E[temp_r30]/3)*56)-56); - HuSprAttrSet(lbl_1_bss_3A8, sp1E[temp_r30]+3,HUSPR_ATTR_DISPOFF); + HuSprGrpMemberSet(lbl_1_bss_3A8, sp1E[temp_r30] + 3, temp_r24); + HuSprPosSet(lbl_1_bss_3A8, sp1E[temp_r30] + 3, ((sp1E[temp_r30] % 3) * 56) - 56, ((sp1E[temp_r30] / 3) * 56) - 56); + HuSprAttrSet(lbl_1_bss_3A8, sp1E[temp_r30] + 3, HUSPR_ATTR_DISPOFF); espAttrReset(temp_r26, HUSPR_ATTR_DISPOFF); - espPosSet(temp_r26, (((sp1E[temp_r30]%3)*56)+288.0f)-56, ((sp1E[temp_r30]/3)*56)+184); + espPosSet(temp_r26, (((sp1E[temp_r30] % 3) * 56) + 288.0f) - 56, ((sp1E[temp_r30] / 3) * 56) + 184); HuAudFXPlay(825); HuAudFXPlay(826); } - if(temp_r31 == 8) { - HuSprAttrReset(lbl_1_bss_3A8, sp1E[temp_r30]+3,HUSPR_ATTR_DISPOFF); + if (temp_r31 == 8) { + HuSprAttrReset(lbl_1_bss_3A8, sp1E[temp_r30] + 3, HUSPR_ATTR_DISPOFF); } - if(temp_r31 == 14) { + if (temp_r31 == 14) { espKill(temp_r26); } - } else { - temp_f31 = 1-(temp_r31/30.0); - HuSprTPLvlSet(lbl_1_bss_3A8, temp_r30+14, temp_f31); + } + else { + temp_f31 = 1 - (temp_r31 / 30.0); + HuSprTPLvlSet(lbl_1_bss_3A8, temp_r30 + 14, temp_f31); } } HuPrcVSleep(); @@ -679,30 +693,30 @@ s32 fn_1_16B30(void) HuSprTPLvlSet(lbl_1_bss_3A8, 14, 1.0f); HuSprAttrSet(lbl_1_bss_3A8, 15, HUSPR_ATTR_DISPOFF); HuSprTPLvlSet(lbl_1_bss_3A8, 15, 1.0f); - for(temp_r31=0; temp_r31<9; temp_r31++) { + for (temp_r31 = 0; temp_r31 < 9; temp_r31++) { sp22[temp_r31] = 0; } temp_r27 = 0; - for(temp_r30=0; temp_r30<2; temp_r30++) { - for(temp_r31=0; temp_r31<8; temp_r31++) { - temp_r29 = lbl_1_data_16A[temp_r31*3]; - if((1 << temp_r30) & mgTicTacToeGrid[temp_r29%3][temp_r29/3]) { - temp_r29 = lbl_1_data_16A[(temp_r31*3)+1]; - if((1 << temp_r30) & mgTicTacToeGrid[temp_r29%3][temp_r29/3]) { - temp_r29 = lbl_1_data_16A[(temp_r31*3)+2]; - if((1 << temp_r30) & mgTicTacToeGrid[temp_r29%3][temp_r29/3]) { - temp_r29 = lbl_1_data_16A[temp_r31*3]; - if(sp22[temp_r29] == 0) { + for (temp_r30 = 0; temp_r30 < 2; temp_r30++) { + for (temp_r31 = 0; temp_r31 < 8; temp_r31++) { + temp_r29 = lbl_1_data_16A[temp_r31 * 3]; + if ((1 << temp_r30) & mgTicTacToeGrid[temp_r29 % 3][temp_r29 / 3]) { + temp_r29 = lbl_1_data_16A[(temp_r31 * 3) + 1]; + if ((1 << temp_r30) & mgTicTacToeGrid[temp_r29 % 3][temp_r29 / 3]) { + temp_r29 = lbl_1_data_16A[(temp_r31 * 3) + 2]; + if ((1 << temp_r30) & mgTicTacToeGrid[temp_r29 % 3][temp_r29 / 3]) { + temp_r29 = lbl_1_data_16A[temp_r31 * 3]; + if (sp22[temp_r29] == 0) { sp22[temp_r29]++; temp_r27++; } - temp_r29 = lbl_1_data_16A[(temp_r31*3)+1]; - if(sp22[temp_r29] == 0) { + temp_r29 = lbl_1_data_16A[(temp_r31 * 3) + 1]; + if (sp22[temp_r29] == 0) { sp22[temp_r29]++; temp_r27++; } - temp_r29 = lbl_1_data_16A[(temp_r31*3)+2]; - if(sp22[temp_r29] == 0) { + temp_r29 = lbl_1_data_16A[(temp_r31 * 3) + 2]; + if (sp22[temp_r29] == 0) { sp22[temp_r29]++; temp_r27++; } @@ -711,59 +725,62 @@ s32 fn_1_16B30(void) } } } - if(temp_r27 == 0) { + if (temp_r27 == 0) { sp1A[0] = sp1A[1] = 0; - for(temp_r31=0; temp_r31<3; temp_r31++) { - for(temp_r30=0; temp_r30<3; temp_r30++) { + for (temp_r31 = 0; temp_r31 < 3; temp_r31++) { + for (temp_r30 = 0; temp_r30 < 3; temp_r30++) { temp_r20 = mgTicTacToeGrid[temp_r31][temp_r30]; - if(temp_r20 & 0x1) { + if (temp_r20 & 0x1) { sp1A[0]++; } - if(temp_r20 & 0x2) { + if (temp_r20 & 0x2) { sp1A[1]++; } } } - if(sp1A[0]+sp1A[1] >= 9) { - for(temp_r31=0; temp_r31<2; temp_r31++) { - spE[temp_r31][0] = sp1A[temp_r31]+'0'; + if (sp1A[0] + sp1A[1] >= 9) { + for (temp_r31 = 0; temp_r31 < 2; temp_r31++) { + spE[temp_r31][0] = sp1A[temp_r31] + '0'; spE[temp_r31][1] = 0; HuWinInsertMesSet(lbl_1_data_168, MAKE_MESSID_PTR(&spE[temp_r31][0]), (s32)temp_r31); } - if(sp1A[0] > sp1A[1]) { + if (sp1A[0] > sp1A[1]) { temp_r28 = 0; - } else { + } + else { temp_r28 = 1; } HuPrcSleep(30); HuAudFXPlay(2175); - HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28*2)+0], 2); - HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28*2)+1], 3); + HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28 * 2) + 0], 2); + HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28 * 2) + 1], 3); fn_1_25838(lbl_1_data_168, 0x280025, -1, -1); fn_1_25584(lbl_1_data_168); lbl_1_data_168 = -1; return 1; - } else { + } + else { return 0; } - } else { + } + else { temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 93), MEMORY_DEFAULT_NUM)); temp_r25 = HuSprGrpCreate(temp_r27); - for(temp_r30=temp_r31=0; temp_r30<9; temp_r30++) { - if(sp22[temp_r30] == 0) { + for (temp_r30 = temp_r31 = 0; temp_r30 < 9; temp_r30++) { + if (sp22[temp_r30] == 0) { continue; } temp_r24 = HuSprCreate(temp_r23, 100, 0); HuSprGrpMemberSet(temp_r25, temp_r31, temp_r24); - HuSprPosSet(temp_r25, temp_r31, (((temp_r30%3)*56)+288.0f)-56, ((temp_r30/3)*56)+184); + HuSprPosSet(temp_r25, temp_r31, (((temp_r30 % 3) * 56) + 288.0f) - 56, ((temp_r30 / 3) * 56) + 184); HuSprAttrSet(temp_r25, temp_r31, HUSPR_ATTR_LOOP); temp_r31++; } HuPrcSleep(14); HuSprGrpKill(temp_r25); HuAudFXPlay(2175); - HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28*2)+0], 0); - HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28*2)+1], 1); + HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28 * 2) + 0], 0); + HuWinInsertMesSet(lbl_1_data_168, lbl_1_bss_2C24[(temp_r28 * 2) + 1], 1); fn_1_25838(lbl_1_data_168, 0x280017, -1, -1); fn_1_25584(lbl_1_data_168); lbl_1_data_168 = -1; @@ -776,17 +793,17 @@ void fn_1_17A5C(void) HuSprGrp *gp = &HuSprGrpData[lbl_1_bss_3A8]; s16 j; s16 i; - for(j=0; j<=30; j++) { - float tplvl = 1.0-(j/30.0); - for(i=3; i<12; i++) { - if(gp->members[i] != -1) { - HuSprData[gp->members[i]].a = 255.0f*tplvl; + for (j = 0; j <= 30; j++) { + float tplvl = 1.0 - (j / 30.0); + for (i = 3; i < 12; i++) { + if (gp->members[i] != -1) { + HuSprData[gp->members[i]].a = 255.0f * tplvl; } } HuPrcVSleep(); } - for(i=0; i<3; i++) { - for(j=0; j<3; j++) { + for (i = 0; i < 3; i++) { + for (j = 0; j < 3; j++) { mgTicTacToeGrid[i][j] = 0; } } @@ -805,156 +822,165 @@ void fn_1_17BE0(void) s16 temp_r23; s16 temp_r22; s16 temp_r21; - + s16 sp2A[9]; s16 sp18[9]; s16 sp8[8]; - for(temp_r26=0; temp_r26<2; temp_r26++) { - for(temp_r31=0; temp_r31<8; temp_r31++) { + for (temp_r26 = 0; temp_r26 < 2; temp_r26++) { + for (temp_r31 = 0; temp_r31 < 8; temp_r31++) { temp_r28 = 0; temp_r25 = -1; - temp_r30 = lbl_1_data_16A[(temp_r31*3)+0]; - if((1 << temp_r26) & mgTicTacToeGrid[temp_r30%3][temp_r30/3]) { + temp_r30 = lbl_1_data_16A[(temp_r31 * 3) + 0]; + if ((1 << temp_r26) & mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3]) { temp_r28++; - } else if((mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) == 0) { + } + else if ((mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) == 0) { temp_r25 = temp_r30; } - temp_r30 = lbl_1_data_16A[(temp_r31*3)+1]; - if((1 << temp_r26) & mgTicTacToeGrid[temp_r30%3][temp_r30/3]) { + temp_r30 = lbl_1_data_16A[(temp_r31 * 3) + 1]; + if ((1 << temp_r26) & mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3]) { temp_r28++; - } else if((mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) == 0) { + } + else if ((mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) == 0) { temp_r25 = temp_r30; } - temp_r30 = lbl_1_data_16A[(temp_r31*3)+2]; - if((1 << temp_r26) & mgTicTacToeGrid[temp_r30%3][temp_r30/3]) { + temp_r30 = lbl_1_data_16A[(temp_r31 * 3) + 2]; + if ((1 << temp_r26) & mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3]) { temp_r28++; - } else if((mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) == 0) { + } + else if ((mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) == 0) { temp_r25 = temp_r30; } - if(temp_r28 == 2 && temp_r25 != -1) { + if (temp_r28 == 2 && temp_r25 != -1) { OSReport("%d:LEACH\n", temp_r26); lbl_1_bss_3B0[temp_r26] = temp_r25; break; } } - if(temp_r31 != 8) { + if (temp_r31 != 8) { continue; } - if(frandmod(5) != 0) { - temp_r29 = temp_r26^1; - for(temp_r31=0; temp_r31<8; temp_r31++) { + if (frandmod(5) != 0) { + temp_r29 = temp_r26 ^ 1; + for (temp_r31 = 0; temp_r31 < 8; temp_r31++) { temp_r28 = 0; temp_r25 = -1; - temp_r30 = lbl_1_data_16A[(temp_r31*3)+0]; - if((1 << temp_r29) & mgTicTacToeGrid[temp_r30%3][temp_r30/3]) { + temp_r30 = lbl_1_data_16A[(temp_r31 * 3) + 0]; + if ((1 << temp_r29) & mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3]) { temp_r28++; - } else if((mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) == 0) { + } + else if ((mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) == 0) { temp_r25 = temp_r30; } - temp_r30 = lbl_1_data_16A[(temp_r31*3)+1]; - if((1 << temp_r29) & mgTicTacToeGrid[temp_r30%3][temp_r30/3]) { + temp_r30 = lbl_1_data_16A[(temp_r31 * 3) + 1]; + if ((1 << temp_r29) & mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3]) { temp_r28++; - } else if((mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) == 0) { + } + else if ((mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) == 0) { temp_r25 = temp_r30; } - temp_r30 = lbl_1_data_16A[(temp_r31*3)+2]; - if((1 << temp_r29) & mgTicTacToeGrid[temp_r30%3][temp_r30/3]) { + temp_r30 = lbl_1_data_16A[(temp_r31 * 3) + 2]; + if ((1 << temp_r29) & mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3]) { temp_r28++; - } else if((mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) == 0) { + } + else if ((mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) == 0) { temp_r25 = temp_r30; } - if(temp_r28 == 2 && temp_r25 != -1) { + if (temp_r28 == 2 && temp_r25 != -1) { lbl_1_bss_3B0[temp_r26] = temp_r25; break; } } - if(temp_r31 != 8) { + if (temp_r31 != 8) { continue; } } - for(temp_r31=temp_r24=temp_r21=0; temp_r31<9; temp_r31++) { - if((1 << temp_r26) & mgTicTacToeGrid[temp_r31%3][temp_r31/3]) { + for (temp_r31 = temp_r24 = temp_r21 = 0; temp_r31 < 9; temp_r31++) { + if ((1 << temp_r26) & mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3]) { sp2A[temp_r24] = temp_r31; temp_r24++; - } else if((mgTicTacToeGrid[temp_r31%3][temp_r31/3] & 0x3) == 0) { + } + else if ((mgTicTacToeGrid[temp_r31 % 3][temp_r31 / 3] & 0x3) == 0) { sp18[temp_r21++] = temp_r31; } } - if(temp_r24 == 0) { + if (temp_r24 == 0) { OSReport("%d:KOMA None\n", temp_r26); - for(temp_r31=0; temp_r31<50; temp_r31++) { + for (temp_r31 = 0; temp_r31 < 50; temp_r31++) { temp_r30 = lbl_1_data_1AC[frandmod(8)]; - if((mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) == 0) { + if ((mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) == 0) { lbl_1_bss_3B0[temp_r26] = temp_r30; break; } } - if(temp_r31 == 50) { + if (temp_r31 == 50) { lbl_1_bss_3B0[temp_r26] = sp18[frandmod(temp_r21)]; } - } else { - for(temp_r22=0; temp_r22<50; temp_r22++) { + } + else { + for (temp_r22 = 0; temp_r22 < 50; temp_r22++) { temp_r29 = sp2A[frandmod(temp_r24)]; temp_r27 = 0; - if((temp_r29%3) != 0 && (mgTicTacToeGrid[(temp_r29-1)%3][temp_r29/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29-1; + if ((temp_r29 % 3) != 0 && (mgTicTacToeGrid[(temp_r29 - 1) % 3][temp_r29 / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 - 1; } - if((temp_r29%3)!= 2 && (mgTicTacToeGrid[(temp_r29+1)%3][temp_r29/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29+1; + if ((temp_r29 % 3) != 2 && (mgTicTacToeGrid[(temp_r29 + 1) % 3][temp_r29 / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 + 1; } - if((temp_r29/3) != 0 && (mgTicTacToeGrid[temp_r29%3][(temp_r29-3)/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29-3; + if ((temp_r29 / 3) != 0 && (mgTicTacToeGrid[temp_r29 % 3][(temp_r29 - 3) / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 - 3; } - if((temp_r29/3) != 2 && (mgTicTacToeGrid[temp_r29%3][(temp_r29+3)/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29+3; + if ((temp_r29 / 3) != 2 && (mgTicTacToeGrid[temp_r29 % 3][(temp_r29 + 3) / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 + 3; } - if((temp_r29%3) != 0 && (temp_r29/3) != 0 && (mgTicTacToeGrid[(temp_r29-4)%3][(temp_r29-4)/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29-4; + if ((temp_r29 % 3) != 0 && (temp_r29 / 3) != 0 && (mgTicTacToeGrid[(temp_r29 - 4) % 3][(temp_r29 - 4) / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 - 4; } - if((temp_r29%3) != 2 && (temp_r29/3) != 0 && (mgTicTacToeGrid[(temp_r29-2)%3][(temp_r29-2)/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29-2; + if ((temp_r29 % 3) != 2 && (temp_r29 / 3) != 0 && (mgTicTacToeGrid[(temp_r29 - 2) % 3][(temp_r29 - 2) / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 - 2; } - if((temp_r29%3) != 0 && (temp_r29/3) != 2 && (mgTicTacToeGrid[(temp_r29+2)%3][(temp_r29+2)/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29+2; + if ((temp_r29 % 3) != 0 && (temp_r29 / 3) != 2 && (mgTicTacToeGrid[(temp_r29 + 2) % 3][(temp_r29 + 2) / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 + 2; } - if((temp_r29%3) != 2 && (temp_r29/3) != 2 && (mgTicTacToeGrid[(temp_r29+4)%3][(temp_r29+4)/3] & 0x3) == 0) { - sp8[temp_r27++] = temp_r29+4; + if ((temp_r29 % 3) != 2 && (temp_r29 / 3) != 2 && (mgTicTacToeGrid[(temp_r29 + 4) % 3][(temp_r29 + 4) / 3] & 0x3) == 0) { + sp8[temp_r27++] = temp_r29 + 4; } - if(temp_r27 != 0) { + if (temp_r27 != 0) { temp_r23 = sp8[frandmod(temp_r27)]; - for(temp_r31=0; temp_r31<8; temp_r31++) { + for (temp_r31 = 0; temp_r31 < 8; temp_r31++) { temp_r28 = 0; - if(temp_r29 == lbl_1_data_16A[(temp_r31*3)+0] || temp_r29 == lbl_1_data_16A[(temp_r31*3)+1] || temp_r29 == lbl_1_data_16A[(temp_r31*3)+2]) { + if (temp_r29 == lbl_1_data_16A[(temp_r31 * 3) + 0] || temp_r29 == lbl_1_data_16A[(temp_r31 * 3) + 1] + || temp_r29 == lbl_1_data_16A[(temp_r31 * 3) + 2]) { temp_r28++; } - if(temp_r23 == lbl_1_data_16A[(temp_r31*3)+0] || temp_r23 == lbl_1_data_16A[(temp_r31*3)+1] || temp_r23 == lbl_1_data_16A[(temp_r31*3)+2]) { + if (temp_r23 == lbl_1_data_16A[(temp_r31 * 3) + 0] || temp_r23 == lbl_1_data_16A[(temp_r31 * 3) + 1] + || temp_r23 == lbl_1_data_16A[(temp_r31 * 3) + 2]) { temp_r28++; } - if(temp_r28 == 2) { - for(temp_r28=0; temp_r28<3; temp_r28++) { - if(temp_r29 != lbl_1_data_16A[(temp_r31*3)+temp_r28] && temp_r23 != lbl_1_data_16A[(temp_r31*3)+temp_r28]) { + if (temp_r28 == 2) { + for (temp_r28 = 0; temp_r28 < 3; temp_r28++) { + if (temp_r29 != lbl_1_data_16A[(temp_r31 * 3) + temp_r28] && temp_r23 != lbl_1_data_16A[(temp_r31 * 3) + temp_r28]) { break; } } - temp_r30 = lbl_1_data_16A[(temp_r31*3)+temp_r28]; - if(mgTicTacToeGrid[temp_r30%3][temp_r30/3] & 0x3) { + temp_r30 = lbl_1_data_16A[(temp_r31 * 3) + temp_r28]; + if (mgTicTacToeGrid[temp_r30 % 3][temp_r30 / 3] & 0x3) { temp_r30 = -1; } break; } } - if(temp_r31 == 8 || temp_r30 < 0) { + if (temp_r31 == 8 || temp_r30 < 0) { continue; } lbl_1_bss_3B0[temp_r26] = temp_r23; break; } } - if(temp_r22 == 50) { + if (temp_r22 == 50) { lbl_1_bss_3B0[temp_r26] = sp18[frandmod(temp_r21)]; } } - } OSReport("com %d,%d\n", lbl_1_bss_3B0[0], lbl_1_bss_3B0[1]); } diff --git a/src/REL/option/state.c b/src/REL/option/state.c index 9e6b3e30..edbcdcd6 100755 --- a/src/REL/option/state.c +++ b/src/REL/option/state.c @@ -13,15 +13,15 @@ typedef struct { } StateWork; /* size = 0x0C */ typedef struct { - /* 0x00 */ Vec src; + /* 0x00 */ Vec pos; /* 0x0C */ Vec dest; /* 0x18 */ GXColor color; } UnkLightDataStruct; /* size = 0x1C */ // TODO same as m446Dll::unkStruct10 and present::UnkPresentStruct3 typedef struct UnkShadowDataStruct { - /* 0x00 */ Vec pos; - /* 0x0C */ Vec up; - /* 0x18 */ Vec target; + /* 0x00 */ Vec camPos; + /* 0x0C */ Vec camUp; + /* 0x18 */ Vec camTarget; } UnkShadowDataStruct; /* size = 0x24 */ static void ExecState(omObjData *object); @@ -51,12 +51,12 @@ omObjData *OptionStateCreate(void) optionRoom = OptionRoomCreate(); work->window = OptionWinCreate(0); Hu3DLighInit(); - work->light = Hu3DGLightCreateV(&lightTbl.src, &lightTbl.dest, &lightTbl.color); + work->light = Hu3DGLightCreateV(&lightTbl.pos, &lightTbl.dest, &lightTbl.color); Hu3DGLightInfinitytSet(work->light); lightData = &Hu3DGlobalLight[work->light]; Hu3DShadowCreate(30.0f, 20.0f, 5000.0f); Hu3DShadowTPLvlSet(0.45f); - Hu3DShadowPosSet(&shadowPosTbl.pos, &shadowPosTbl.up, &shadowPosTbl.target); + Hu3DShadowPosSet(&shadowPosTbl.camPos, &shadowPosTbl.camUp, &shadowPosTbl.camTarget); return object; } diff --git a/src/REL/present/camera.c b/src/REL/present/camera.c index 3a15ac79..9be75849 100644 --- a/src/REL/present/camera.c +++ b/src/REL/present/camera.c @@ -113,16 +113,16 @@ float PresentCameraZoomGet(omObjData *object) { CameraWork *work = object->data; - float var_f31 = work->zoom; - return var_f31; + float zoom = work->zoom; + return zoom; } float PresentCameraRotGet(omObjData *object) { CameraWork *work = object->data; - float var_f31 = work->rot; - return var_f31; + float rot = work->rot; + return rot; } void PresentCameraPosGet(omObjData *object, float *x, float *y, float *z) diff --git a/src/REL/present/init.c b/src/REL/present/init.c index 2b2d57a5..3217d652 100644 --- a/src/REL/present/init.c +++ b/src/REL/present/init.c @@ -144,20 +144,20 @@ static void FadeModel(void) BOOL PresentPadCheck(u16 btn) { - u32 var_r31 = HuPadBtnDown[0] & btn; - return var_r31 != 0; + u32 pressed = HuPadBtnDown[0] & btn; + return pressed != 0; } BOOL PresentPadDStkRepCheck(u16 dir) { - u32 var_r31 = HuPadDStkRep[0] & dir; - return var_r31 != 0; + u32 pressed = HuPadDStkRep[0] & dir; + return pressed != 0; } BOOL PresentPadDStkCheck(u16 dir) { - u32 var_r31 = HuPadDStk[0] & dir; - return var_r31 != 0; + u32 pressed = HuPadDStk[0] & dir; + return pressed != 0; } static void SceneMain(omObjData *object) diff --git a/src/REL/present/main.c b/src/REL/present/main.c index 93ef8386..7fafc79b 100644 --- a/src/REL/present/main.c +++ b/src/REL/present/main.c @@ -13,14 +13,14 @@ typedef struct StateWork { } StateWork; /* size = 0x08 */ typedef struct UnkShadowDataStruct { - /* 0x00 */ Vec pos; - /* 0x0C */ Vec up; - /* 0x18 */ Vec target; + /* 0x00 */ Vec camPos; + /* 0x0C */ Vec camUp; + /* 0x18 */ Vec camTarget; } UnkShadowDataStruct; /* size = 0x24 */ omObjData *presentGuide; -static UnkShadowDataStruct shadowPosTbl = { +static UnkShadowDataStruct shadow = { { 0.0f, 3000.0f, 1.0f }, { 0.0f, 1.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, @@ -45,7 +45,7 @@ omObjData *PresentStateCreate(void) work->window = PresentWinCreate(0); Hu3DShadowCreate(30.0f, 20.0f, 5000.0f); Hu3DShadowTPLvlSet(0.45f); - Hu3DShadowPosSet(&shadowPosTbl.pos, &shadowPosTbl.up, &shadowPosTbl.target); + Hu3DShadowPosSet(&shadow.camPos, &shadow.camUp, &shadow.camTarget); if (omovlevtno > 0) { OSReport("*** PRESENTROOM ( PRESENT GET MODE ) ***\n"); diff --git a/src/REL/present/present.c b/src/REL/present/present.c index b30abfbc..b6d90dfc 100644 --- a/src/REL/present/present.c +++ b/src/REL/present/present.c @@ -61,7 +61,7 @@ typedef struct PresentWork { } PresentWork; /* size = 0x364 */ typedef struct UnkLightDataStruct { - /* 0x00 */ Vec src; + /* 0x00 */ Vec pos; /* 0x0C */ Vec dest; /* 0x18 */ GXColor color; } UnkLightDataStruct; /* size = 0x1C */ // same as option::state::UnkLightDataStruct @@ -357,7 +357,7 @@ omObjData *PresentCreate(void) { s32 i; s32 j; - s16 light; + s16 lightId; LightData *lightData; omObjData *object = omAddObjEx(presentObjMan, 1003, 0, 0, 1, NULL); @@ -382,10 +382,10 @@ omObjData *PresentCreate(void) work->presentUnlockedF[PRESENT_MAX - 1] = TRUE; } Hu3DLighInit(); - light = Hu3DGLightCreateV(&lightTbl.src, &lightTbl.dest, &lightTbl.color); - Hu3DGLightInfinitytSet(light); - Hu3DGLightStaticSet(light, 1); - lightData = &Hu3DGlobalLight[light]; + lightId = Hu3DGLightCreateV(&lightTbl.pos, &lightTbl.dest, &lightTbl.color); + Hu3DGLightInfinitytSet(lightId); + Hu3DGLightStaticSet(lightId, 1); + lightData = &Hu3DGlobalLight[lightId]; lightData->unk_00 |= 0x8000; for (i = 0; i < PRESENT_MDL_MAX; i++) { @@ -410,7 +410,7 @@ omObjData *PresentCreate(void) RotateCamera(object); PresentExecModeSet(object, PRESENT_MODE_NONE); - (void)light; + (void)lightId; return object; } diff --git a/src/game/armem.c b/src/game/armem.c index ec2be64c..66142f66 100644 --- a/src/game/armem.c +++ b/src/game/armem.c @@ -25,7 +25,7 @@ static ARQRequest arqReq; static ARMemBlock ARInfo[64]; static s32 ARBase; -static s32 arqCnt; +static volatile s32 arqCnt; static s16 arqIdx; void HuARInit(void) { diff --git a/src/game/code_8003FF68.c b/src/game/code_8003FF68.c index bff84c12..96dc703c 100644 --- a/src/game/code_8003FF68.c +++ b/src/game/code_8003FF68.c @@ -1,3 +1,4 @@ +#include "game/audio.h" #include "game/data.h" #include "game/hsfman.h" #include "game/process.h" From ece392140eaae9e75f2e47769a8017c15de1d3be Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Fri, 14 Mar 2025 17:10:41 -0500 Subject: [PATCH 166/178] Match modesel.c (#569) Also fully matches modules --- configure.py | 2 +- src/REL/modeseldll/modesel.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/configure.py b/configure.py index 7a862bd5..c9437b77 100644 --- a/configure.py +++ b/configure.py @@ -1374,7 +1374,7 @@ config.libs = [ "modeseldll", objects={ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/main.c"), - Object(Equivalent, "REL/modeseldll/modesel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/modesel.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/filesel.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/datalist.c"), }, diff --git a/src/REL/modeseldll/modesel.c b/src/REL/modeseldll/modesel.c index 8054a966..74fc30e9 100644 --- a/src/REL/modeseldll/modesel.c +++ b/src/REL/modeseldll/modesel.c @@ -1,4 +1,3 @@ -#define HUWIN_USE_OLD_DEFS #include "game/audio.h" #include "game/gamework_data.h" #include "game/hsfanim.h" @@ -99,7 +98,7 @@ s32 fn_1_2490(void) } HuWinMesWait(lbl_1_bss_82); - lbl_1_bss_80 = temp_r26 = 0; + temp_r26 = lbl_1_bss_80 = 0; espAttrReset(lbl_1_bss_152[10], HUSPR_ATTR_DISPOFF); espBankSet(lbl_1_bss_152[10], 0); for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) { From 4ee46b33969385c9e06577c1a79d2c114288ca61 Mon Sep 17 00:00:00 2001 From: Liam Coleman Date: Fri, 14 Mar 2025 19:34:25 -0500 Subject: [PATCH 167/178] Match pal modesel (#570) * Match modesel.c Also fully matches modules * Match pal modesel --- config/GMPP01_00/rels/m457Dll/symbols.txt | 76 ++++++++++---------- config/GMPP01_00/rels/modeseldll/splits.txt | 27 +++++++ config/GMPP01_00/rels/modeseldll/symbols.txt | 5 +- configure.py | 8 +-- src/REL/modeseldll/filesel.c | 32 +++++++++ src/REL/modeseldll/main.c | 25 +++++-- src/REL/modeseldll/modesel.c | 4 ++ 7 files changed, 127 insertions(+), 50 deletions(-) diff --git a/config/GMPP01_00/rels/m457Dll/symbols.txt b/config/GMPP01_00/rels/m457Dll/symbols.txt index 4e212888..0b08cedf 100644 --- a/config/GMPP01_00/rels/m457Dll/symbols.txt +++ b/config/GMPP01_00/rels/m457Dll/symbols.txt @@ -120,7 +120,7 @@ lbl_1_rodata_55C = .rodata:0x0000055C; // type:object size:0x4 scope:local data: lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float sprDataNumTbl = .data:0x00000000; // type:object size:0x5C scope:local -sprIdTbl = .data:0x0000005C; // type:object size:0x5C data:4byte scope:local +sprIdTbl = .data:0x0000005C; // type:object size:0x5C scope:local data:4byte lbl_1_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x30 scope:local lbl_1_data_118 = .data:0x00000118; // type:object size:0x30 scope:local @@ -129,49 +129,49 @@ lbl_1_data_154 = .data:0x00000154; // type:object size:0x30 scope:local lbl_1_data_184 = .data:0x00000184; // type:object size:0x30 scope:local lbl_1_data_1B4 = .data:0x000001B4; // type:object size:0x6C scope:local sparkDataTbl = .data:0x00000220; // type:object size:0x6C scope:local -lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 data:float scope:local -lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 data:2byte scope:local -lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 data:2byte scope:local -backgroundMusNo = .data:0x000002A8; // type:object size:0x4 data:4byte scope:local -windSeNo = .data:0x000002AC; // type:object size:0x4 data:4byte scope:local -lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 data:2byte scope:local -invincibilitySeNo = .data:0x000002B4; // type:object size:0x4 data:4byte scope:local -lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 data:4byte scope:local +lbl_1_data_28C = .data:0x0000028C; // type:object size:0x18 scope:local data:float +lbl_1_data_2A4 = .data:0x000002A4; // type:object size:0x2 scope:local data:2byte +lbl_1_data_2A6 = .data:0x000002A6; // type:object size:0x2 scope:local data:2byte +backgroundMusNo = .data:0x000002A8; // type:object size:0x4 scope:local data:4byte +windSeNo = .data:0x000002AC; // type:object size:0x4 scope:local data:4byte +lbl_1_data_2B0 = .data:0x000002B0; // type:object size:0x2 scope:local data:2byte +invincibilitySeNo = .data:0x000002B4; // type:object size:0x4 scope:local data:4byte +lbl_1_data_2B8 = .data:0x000002B8; // type:object size:0x4 scope:local data:4byte lbl_1_data_2BC = .data:0x000002BC; // type:object size:0x9 scope:local data:string lbl_1_data_2C5 = .data:0x000002C5; // type:object size:0x3 scope:local data:string jumptable_1_data_2C8 = .data:0x000002C8; // type:object size:0x2C scope:local jumptable_1_data_2F4 = .data:0x000002F4; // type:object size:0x48 scope:local -lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 data:4byte scope:local -lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 data:float scope:local -lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 data:float scope:local -lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 data:float scope:local +lbl_1_data_33C = .data:0x0000033C; // type:object size:0x4 scope:local data:4byte +lbl_1_data_340 = .data:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_data_344 = .data:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_data_348 = .data:0x00000348; // type:object size:0x4 scope:local data:float jumptable_1_data_34C = .data:0x0000034C; // type:object size:0x20 scope:local jumptable_1_data_36C = .data:0x0000036C; // type:object size:0x2C scope:local lbl_1_data_398 = .data:0x00000398; // type:object size:0x12 scope:local data:string lbl_1_data_3AA = .data:0x000003AA; // type:object size:0x19 scope:local data:string lbl_1_data_3C3 = .data:0x000003C3; // type:object size:0x24 scope:local data:string -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte scope:local -m457MesEndF = .bss:0x00000010; // type:object size:0x4 data:4byte scope:local -againstBrowserF = .bss:0x00000014; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:float scope:local -lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:float scope:local -lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:float scope:local -lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:float scope:local -lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 data:4byte scope:local -lightId = .bss:0x00000048; // type:object size:0x4 data:4byte scope:local -objman = .bss:0x0000004C; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 data:4byte scope:local -gameState = .bss:0x0000005C; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 data:4byte scope:local -gameObj = .bss:0x00000064; // type:object size:0x4 data:4byte scope:local -playerObj = .bss:0x00000068; // type:object size:0x8 data:4byte scope:local -omViewObj = .bss:0x00000070; // type:object size:0x4 data:4byte scope:local -mainObj = .bss:0x00000074; // type:object size:0x4 data:4byte scope:local -lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 data:4byte scope:local +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 scope:local data:4byte +m457MesEndF = .bss:0x00000010; // type:object size:0x4 scope:local data:4byte +againstBrowserF = .bss:0x00000014; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_1C = .bss:0x0000001C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 scope:local data:float +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 scope:local data:float +lbl_1_bss_3C = .bss:0x0000003C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_40 = .bss:0x00000040; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_44 = .bss:0x00000044; // type:object size:0x4 scope:local data:4byte +lightId = .bss:0x00000048; // type:object size:0x4 scope:local data:4byte +objman = .bss:0x0000004C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_50 = .bss:0x00000050; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_54 = .bss:0x00000054; // type:object size:0x4 scope:local data:4byte +gameState = .bss:0x0000005C; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_60 = .bss:0x00000060; // type:object size:0x4 scope:local data:4byte +gameObj = .bss:0x00000064; // type:object size:0x4 scope:local data:4byte +playerObj = .bss:0x00000068; // type:object size:0x8 scope:local data:4byte +omViewObj = .bss:0x00000070; // type:object size:0x4 scope:local data:4byte +mainObj = .bss:0x00000074; // type:object size:0x4 scope:local data:4byte +lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x50 scope:local data:4byte diff --git a/config/GMPP01_00/rels/modeseldll/splits.txt b/config/GMPP01_00/rels/modeseldll/splits.txt index 531cd645..8dd4d423 100644 --- a/config/GMPP01_00/rels/modeseldll/splits.txt +++ b/config/GMPP01_00/rels/modeseldll/splits.txt @@ -5,3 +5,30 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/modeseldll/main.c: + .text start:0x000000A0 end:0x00002528 + .rodata start:0x00000000 end:0x000000B8 + .data start:0x00000000 end:0x00000080 + .bss start:0x00000000 end:0x00000080 + +REL/modeseldll/modesel.c: + .text start:0x00002528 end:0x00003874 + .rodata start:0x000000B8 end:0x000001B0 + .data start:0x00000080 end:0x00000100 + .bss start:0x00000080 end:0x00000088 + +REL/modeseldll/filesel.c: + .text start:0x00003874 end:0x0000BFDC + .rodata start:0x000001B0 end:0x00000318 + .data start:0x00000100 end:0x00000428 + .bss start:0x00000088 end:0x00000150 + +REL/modeseldll/datalist.c: + .text start:0x0000BFDC end:0x0000C438 + .rodata start:0x00000318 end:0x00000328 + .data start:0x00000428 end:0x00000A2C + .bss start:0x00000150 end:0x000001CA diff --git a/config/GMPP01_00/rels/modeseldll/symbols.txt b/config/GMPP01_00/rels/modeseldll/symbols.txt index 5cfb1784..fb5fd9a4 100644 --- a/config/GMPP01_00/rels/modeseldll/symbols.txt +++ b/config/GMPP01_00/rels/modeseldll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x374 +ObjectSetup = .text:0x000000A0; // type:function size:0x374 fn_1_414 = .text:0x00000414; // type:function size:0x678 fn_1_A8C = .text:0x00000A8C; // type:function size:0xFC fn_1_B88 = .text:0x00000B88; // type:function size:0x9C @@ -263,7 +263,8 @@ lbl_1_bss_13A = .bss:0x0000013A; // type:object size:0x6 lbl_1_bss_140 = .bss:0x00000140; // type:object size:0x6 lbl_1_bss_146 = .bss:0x00000146; // type:object size:0x2 data:2byte lbl_1_bss_148 = .bss:0x00000148; // type:object size:0x2 data:2byte -lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x6 +lbl_1_bss_14C = .bss:0x0000014C; // type:object size:0x4 data:4byte +lbl_1_bss_150 = .bss:0x00000150; // type:object size:0x2 lbl_1_bss_152 = .bss:0x00000152; // type:object size:0x18 data:2byte lbl_1_bss_16A = .bss:0x0000016A; // type:object size:0x30 data:2byte lbl_1_bss_19A = .bss:0x0000019A; // type:object size:0x30 data:2byte diff --git a/configure.py b/configure.py index c9437b77..513b0305 100644 --- a/configure.py +++ b/configure.py @@ -1373,10 +1373,10 @@ config.libs = [ Rel( "modeseldll", objects={ - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/main.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/modesel.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/filesel.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/modeseldll/datalist.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeseldll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeseldll/modesel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeseldll/filesel.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01", "GMPP01_00", "GMPP01_02"), "REL/modeseldll/datalist.c"), }, ), Rel( diff --git a/src/REL/modeseldll/filesel.c b/src/REL/modeseldll/filesel.c index aa81055f..16712e88 100644 --- a/src/REL/modeseldll/filesel.c +++ b/src/REL/modeseldll/filesel.c @@ -122,6 +122,9 @@ s32 fn_1_37DC(void) } if (!SLSaveFlagGet()) { GWGameStatReset(); + #if VERSION_PAL + _ClearFlag(0x1000B); + #endif GWGameStat.sound_mode = msmSysGetOutputMode(); result = 1; break; @@ -428,7 +431,11 @@ loop_exit: temp_r29 = 0; if (temp_r28 == -2) { HuWinInsertMesSet(lbl_1_bss_148, MAKE_MESSID_PTR(lbl_1_data_278[temp_r31]), 0); + #if VERSION_PAL + HuWinMesSet(lbl_1_bss_148, MAKE_MESSID(16, 0x39)); + #else HuWinMesSet(lbl_1_bss_148, MAKE_MESSID(16, 0x37)); + #endif HuWinMesWait(lbl_1_bss_148); temp_r29 = 1; } @@ -970,6 +977,9 @@ s32 fn_1_61B4(void) sp8 = OSGetTime(); SLSaveDataMake(1, &sp8); GWGameStatReset(); + #if VERSION_PAL + _ClearFlag(0x1000B); + #endif GWGameStat.sound_mode = msmSysGetOutputMode(); SLCommonSet(); fn_1_B8CC(MAKE_MESSID(16, 0x3C)); @@ -1011,6 +1021,13 @@ s32 fn_1_61B4(void) if (SLCheckSumCheck()) { fn_1_9E14(); SLLoadGameStat(); + #if VERSION_PAL + if(GwLanguageSave != -1) { + GWGameStat.language = GwLanguageSave; + } + GwLanguage = GWGameStat.language; + _ClearFlag(0x1000B); + #endif temp_r31 = 1; break; } @@ -1172,7 +1189,11 @@ s32 fn_1_76B4(char *name, s16 slotno) } if (result == -2) { HuWinInsertMesSet(lbl_1_bss_148, MAKE_MESSID_PTR(lbl_1_data_278[slotno]), 0); + #if VERSION_PAL + HuWinMesSet(lbl_1_bss_148, MAKE_MESSID(16, 0x39)); + #else HuWinMesSet(lbl_1_bss_148, MAKE_MESSID(16, 0x37)); + #endif HuWinMesWait(lbl_1_bss_148); return result; } @@ -2002,6 +2023,16 @@ void fn_1_AAB8(void) HuSprGrpPosSet(lbl_1_bss_110[temp_r30], sp14.x, sp14.y); HuSprGrpScaleSet(lbl_1_bss_110[temp_r30], temp_f31, temp_f31); OSTicksToCalendarTime(lbl_1_bss_D0[temp_r30], &sp20); + #if VERSION_PAL + temp_r29 = sp20.mday; + HuSprBankSet(lbl_1_bss_110[temp_r30], 0, temp_r29 / 10); + temp_r29 -= (temp_r29 / 10) * 10; + HuSprBankSet(lbl_1_bss_110[temp_r30], 1, temp_r29); + temp_r29 = sp20.mon+1; + HuSprBankSet(lbl_1_bss_110[temp_r30], 3, temp_r29 / 10); + temp_r29 -= (temp_r29 / 10) * 10; + HuSprBankSet(lbl_1_bss_110[temp_r30], 4, temp_r29); + #else temp_r29 = sp20.mon + 1; HuSprBankSet(lbl_1_bss_110[temp_r30], 0, temp_r29 / 10); temp_r29 -= (temp_r29 / 10) * 10; @@ -2010,6 +2041,7 @@ void fn_1_AAB8(void) HuSprBankSet(lbl_1_bss_110[temp_r30], 3, temp_r29 / 10); temp_r29 -= (temp_r29 / 10) * 10; HuSprBankSet(lbl_1_bss_110[temp_r30], 4, temp_r29); + #endif temp_r29 = sp20.hour; HuSprBankSet(lbl_1_bss_110[temp_r30], 6, temp_r29 / 10); temp_r29 -= (temp_r29 / 10) * 10; diff --git a/src/REL/modeseldll/main.c b/src/REL/modeseldll/main.c index 7505272f..2ece1b9d 100644 --- a/src/REL/modeseldll/main.c +++ b/src/REL/modeseldll/main.c @@ -84,17 +84,30 @@ void fn_1_414(void) while (WipeStatGet()) { HuPrcVSleep(); } + #if VERSION_PAL + if(GwLanguageSave != -1) { + GWGameStat.language = GwLanguageSave; + } else if(GwLanguage != -1) { + GWGameStat.language = GwLanguage; + } + #endif omOvlReturnEx(1, 1); while (1) { HuPrcVSleep(); } } else { - s16 group = HuSprGrpCreate(1); - s16 sprite = HuTHPSprCreateVol("movie/opmov_s00.thp", 0, 3000, 70.0); - HuSprGrpMemberSet(group, 0, sprite); - HuSprPosSet(group, 0, 288, 240); - HuSprDrawNoSet(group, 0, 127); + s16 grpId; + s16 sprId; + #if VERSION_PAL + HuWinAllKill(); + HuWinInit(1); + #endif + grpId = HuSprGrpCreate(1); + sprId = HuTHPSprCreateVol("movie/opmov_s00.thp", 0, 3000, 70.0); + HuSprGrpMemberSet(grpId, 0, sprId); + HuSprPosSet(grpId, 0, 288, 240); + HuSprDrawNoSet(grpId, 0, 127); HuPrcSleep(2); espAttrSet(lbl_1_bss_152[0], HUSPR_ATTR_DISPOFF); HuAudFXStop(lbl_1_data_100); @@ -102,7 +115,7 @@ void fn_1_414(void) HuPrcVSleep(); } HuTHPClose(); - HuSprGrpKill(group); + HuSprGrpKill(grpId); } } espAttrReset(lbl_1_bss_152[9], HUSPR_ATTR_DISPOFF); diff --git a/src/REL/modeseldll/modesel.c b/src/REL/modeseldll/modesel.c index 74fc30e9..ff96fbbc 100644 --- a/src/REL/modeseldll/modesel.c +++ b/src/REL/modeseldll/modesel.c @@ -213,7 +213,11 @@ s32 fn_1_2490(void) } _ClearFlag(FLAG_ID_MAKE(1, 11)); WipeColorSet(255, 255, 255); + #if VERSION_PAL + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30); + #else WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 10); + #endif while (WipeStatGet()) { HuPrcVSleep(); } From eb11f9c23f4b94e33716ea1442d891adc905b5fb Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sat, 15 Mar 2025 08:36:13 -0400 Subject: [PATCH 168/178] name audio.c, board/audio.c, board/basic_space, match files (#571) * name audio.c and board/audio.c * fix audio, complete board/basic_space, battle * revert changes that broke build * completely finish New and NewMore.cp, for some reason NewMore fails checksum * finally match NewMore.cp --- configure.py | 10 +++------- include/PowerPC_EABI_Support/Runtime/New.h | 1 + include/game/audio.h | 2 +- src/Runtime.PPCEABI.H/New.cp | 8 ++++++++ src/Runtime.PPCEABI.H/NewMore.cp | 15 +++++++++++++++ src/game/audio.c | 10 +++++----- src/game/board/basic_space.c | 18 +++++++++--------- 7 files changed, 42 insertions(+), 22 deletions(-) create mode 100644 include/PowerPC_EABI_Support/Runtime/New.h create mode 100644 src/Runtime.PPCEABI.H/New.cp create mode 100644 src/Runtime.PPCEABI.H/NewMore.cp diff --git a/configure.py b/configure.py index 513b0305..f861ee4b 100644 --- a/configure.py +++ b/configure.py @@ -669,16 +669,12 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__va_arg.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/global_destructor_chain.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__mem.c"), - Object(NonMatching, "Runtime.PPCEABI.H/New.cp"), - Object(NonMatching, "Runtime.PPCEABI.H/NewMore.cp"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/New.cp", extra_cflags=["-Cpp_exceptions on"]), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/NewMore.cp", extra_cflags=["-Cpp_exceptions on", "-RTTI on"]), Object(NonMatching, "Runtime.PPCEABI.H/NMWException.cpp"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/runtime.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__init_cpp_exceptions.cpp"), - Object( - NonMatching, - "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp", - extra_cflags=["-Cpp_exceptions on"] - ), + Object(NonMatching, "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp", extra_cflags=["-Cpp_exceptions on"]), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/GCN_mem_alloc.c"), ], }, diff --git a/include/PowerPC_EABI_Support/Runtime/New.h b/include/PowerPC_EABI_Support/Runtime/New.h new file mode 100644 index 00000000..1ae725b4 --- /dev/null +++ b/include/PowerPC_EABI_Support/Runtime/New.h @@ -0,0 +1 @@ +void operator delete(void* arg0); diff --git a/include/game/audio.h b/include/game/audio.h index f5ca39f0..3846ea73 100644 --- a/include/game/audio.h +++ b/include/game/audio.h @@ -53,7 +53,7 @@ void HuAudSStreamAllFadeOut(s32 speed); void HuAudSStreamAllStop(void); s32 HuAudSStreamStatGet(s32 seNo); void HuAudDllSndGrpSet(u16 ovl); -void HuAudSndGrpSetSet(s16 data_size); +void HuAudSndGrpSetSet(s16 dataSize); void HuAudSndGrpSet(s16 grpId); void HuAudSndCommonGrpSet(s16 grpId, s32 groupCheck); void HuAudAUXSet(s32 auxA, s32 auxB); diff --git a/src/Runtime.PPCEABI.H/New.cp b/src/Runtime.PPCEABI.H/New.cp new file mode 100644 index 00000000..c92b6c29 --- /dev/null +++ b/src/Runtime.PPCEABI.H/New.cp @@ -0,0 +1,8 @@ +#include "PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/alloc.h" +#include "PowerPC_EABI_Support/Runtime/New.h" + +void operator delete(void* arg0) throw() { + if (arg0 != 0) { + free(arg0); + } +} diff --git a/src/Runtime.PPCEABI.H/NewMore.cp b/src/Runtime.PPCEABI.H/NewMore.cp new file mode 100644 index 00000000..c2ed6fe8 --- /dev/null +++ b/src/Runtime.PPCEABI.H/NewMore.cp @@ -0,0 +1,15 @@ +#include "PowerPC_EABI_Support/Runtime/New.h" + +namespace std { + class exception { + public: + virtual ~exception(); + virtual const char *what() const; + }; +} + +const char *std::exception::what() const { + return "exception"; +}; + +std::exception::~exception() {}; diff --git a/src/game/audio.c b/src/game/audio.c index 83f5f259..92794f6c 100644 --- a/src/game/audio.c +++ b/src/game/audio.c @@ -475,13 +475,13 @@ void HuAudDllSndGrpSet(u16 ovl) { } } -void HuAudSndGrpSetSet(s16 data_size) { +void HuAudSndGrpSetSet(s16 dataSize) { void *buf; OSTick osTick; s32 numPlay; s32 err; - if (sndGroupBak != data_size) { + if (sndGroupBak != dataSize) { msmMusStopAll(1, 0); msmSeStopAll(1, 0); osTick = OSGetTick(); @@ -492,11 +492,11 @@ void HuAudSndGrpSetSet(s16 data_size) { numPlay = msmSeGetNumPlay(1); OSReport("Timed Out! Mus %d:SE %d\n", msmMusGetNumPlay(1), numPlay); } - OSReport("GroupSet %d\n", data_size); - sndGroupBak = data_size; + OSReport("GroupSet %d\n", dataSize); + sndGroupBak = dataSize; err = msmSysDelGroupAll(); buf = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(1)); - err = msmSysLoadGroupSet(data_size, buf); + err = msmSysLoadGroupSet(dataSize, buf);\ OSReport("***********GroupSet Error %d\n", err); HuMemDirectFree(buf); } diff --git a/src/game/board/basic_space.c b/src/game/board/basic_space.c index d7624381..abce562c 100644 --- a/src/game/board/basic_space.c +++ b/src/game/board/basic_space.c @@ -374,7 +374,7 @@ static void CoinChgSeparate(omObjData *object, coinChg *coin_chg) { } static void CoinChgShow(omObjData* object, coinChg* coin_chg) { - Vec sp8; + Vec pos; f32 angle; f32 y_pos; @@ -385,14 +385,14 @@ static void CoinChgShow(omObjData* object, coinChg* coin_chg) { } else { y_pos = (50.0f * angle) + object->trans.y; } - BoardModelPosGet(coin_chg->coin_model, &sp8); - BoardModelPosSet(coin_chg->coin_model, sp8.x, y_pos, sp8.z); - BoardModelPosGet(coin_chg->sign_model, &sp8); - BoardModelPosSet(coin_chg->sign_model, sp8.x, y_pos, sp8.z); - BoardModelPosGet(coin_chg->ones_model, &sp8); - BoardModelPosSet(coin_chg->ones_model, sp8.x, y_pos, sp8.z); - BoardModelPosGet(coin_chg->tens_model, &sp8); - BoardModelPosSet(coin_chg->tens_model, sp8.x, y_pos, sp8.z); + BoardModelPosGet(coin_chg->coin_model, &pos); + BoardModelPosSet(coin_chg->coin_model, pos.x, y_pos, pos.z); + BoardModelPosGet(coin_chg->sign_model, &pos); + BoardModelPosSet(coin_chg->sign_model, pos.x, y_pos, pos.z); + BoardModelPosGet(coin_chg->ones_model, &pos); + BoardModelPosSet(coin_chg->ones_model, pos.x, y_pos, pos.z); + BoardModelPosGet(coin_chg->tens_model, &pos); + BoardModelPosSet(coin_chg->tens_model, pos.x, y_pos, pos.z); if (coin_chg->angle < 90) { coin_chg->angle += 6; return; From 705ebb87275778cf6cdcf39435f72e9660b142a2 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sat, 15 Mar 2025 12:30:27 -0400 Subject: [PATCH 169/178] match linker & some funcs (#572) * name audio.c and board/audio.c * fix audio, complete board/basic_space, battle * revert changes that broke build * completely finish New and NewMore.cp, for some reason NewMore fails checksum * finally match NewMore.cp * match NMWException.cpp * match mem_TRK * match TRK with correct linker, uses Revo's notify func --- configure.py | 12 ++++++------ src/TRK_MINNOW_DOLPHIN/notify.c | 21 ++++++++++++++------- 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/configure.py b/configure.py index f861ee4b..1f1883bb 100644 --- a/configure.py +++ b/configure.py @@ -671,10 +671,10 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__mem.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/New.cp", extra_cflags=["-Cpp_exceptions on"]), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/NewMore.cp", extra_cflags=["-Cpp_exceptions on", "-RTTI on"]), - Object(NonMatching, "Runtime.PPCEABI.H/NMWException.cpp"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/NMWException.cpp", extra_cflags=["-Cpp_exceptions on"]), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/runtime.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/__init_cpp_exceptions.cpp"), - Object(NonMatching, "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp", extra_cflags=["-Cpp_exceptions on"]), + Object(NonMatching, "Runtime.PPCEABI.H/Gecko_ExceptionPPC.cpp", extra_cflags=["-Cpp_exceptions on", "-RTTI on"]), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "Runtime.PPCEABI.H/GCN_mem_alloc.c"), ], }, @@ -734,7 +734,7 @@ config.libs = [ }, { "lib": "TRK_MINNOW_DOLPHIN", - "mw_version": config.linker_version, + "mw_version": "GC/1.3", "cflags": cflags_trk, "host": False, "objects": [ @@ -744,14 +744,14 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msg.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msgbuf.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/serpoll.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/usr_put.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/usr_put.c", mw_version="GC/1.3.2"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/dispatch.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/msghndlr.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/support.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mutex_TRK.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/notify.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/notify.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/flush_cache.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/mem_TRK.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mem_TRK.c"), Object(NonMatching, "TRK_MINNOW_DOLPHIN/targimpl.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/targsupp.s"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/__exception.s"), diff --git a/src/TRK_MINNOW_DOLPHIN/notify.c b/src/TRK_MINNOW_DOLPHIN/notify.c index 7dce4537..bd41e2f7 100644 --- a/src/TRK_MINNOW_DOLPHIN/notify.c +++ b/src/TRK_MINNOW_DOLPHIN/notify.c @@ -4,6 +4,19 @@ #include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" #include "PowerPC_EABI_Support/MetroTRK/trk.h" +inline DSError TRKDoNotifyStopped_Inline(TRKBuffer* msg, MessageCommandID cmd) { + DSError err; + + if (msg->position >= 0x880) { + err = DS_MessageBufferOverflow; + } else { + msg->data[msg->position++] = cmd; + msg->length+=1; + err = 0; + } + return err; +} + DSError TRKDoNotifyStopped(MessageCommandID cmd) { DSError err; @@ -13,13 +26,7 @@ DSError TRKDoNotifyStopped(MessageCommandID cmd) err = TRKGetFreeBuffer(&bufIdx, &msg); if (err == DS_NoError) { - if (msg->position >= 0x880) { - err = DS_MessageBufferOverflow; - } else { - msg->data[msg->position++] = cmd; - ++msg->length; - err = 0; - } + err = TRKDoNotifyStopped_Inline(msg, cmd); if (err == DS_NoError) { if (cmd == DSMSG_NotifyStopped) { From db57c1ef500ba4b560da9941c106507cb5510f02 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sat, 15 Mar 2025 13:03:58 -0400 Subject: [PATCH 170/178] match TRKReadUARTPoll (#573) * name audio.c and board/audio.c * fix audio, complete board/basic_space, battle * revert changes that broke build * completely finish New and NewMore.cp, for some reason NewMore fails checksum * finally match NewMore.cp * match NMWException.cpp * match mem_TRK * match TRK with correct linker, uses Revo's notify func * match TRKReadUARTPoll --- .vscode/settings.json | 6 ++++- configure.py | 2 +- src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c | 33 ++++++++++++----------- 3 files changed, 23 insertions(+), 18 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 8b2e4ab0..ac4cca7f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -13,6 +13,7 @@ "files.insertFinalNewline": true, "files.trimFinalNewlines": true, "files.associations": { + "*.cp": "cpp", "*.csv": "plaintext", "*.s": "plaintext", "*.json": "jsonc", @@ -64,7 +65,10 @@ "m427dll.h": "c", "sprite.h": "c", "gamework_data.h": "c", - "roll.h": "c" + "roll.h": "c", + "msghndlr.h": "c", + "dispatch.h": "c", + "trk.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { diff --git a/configure.py b/configure.py index 1f1883bb..5613bb0e 100644 --- a/configure.py +++ b/configure.py @@ -758,7 +758,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/dolphin_trk.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/main_TRK.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/targcont.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/target_options.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mslsupp.c"), diff --git a/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c index 9fbb6aeb..0b6947ed 100644 --- a/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c +++ b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c @@ -95,8 +95,6 @@ int InitMetroTRKCommTable(int hwId) return result; } -void TRKUARTInterruptHandler() { } - DSError TRKInitializeIntDrivenUART(u32 param_0, u32 param_1, u32 param_2, volatile u8** param_3) { @@ -106,15 +104,15 @@ DSError TRKInitializeIntDrivenUART(u32 param_0, u32 param_1, u32 param_2, void EnableEXI2Interrupts(void) { gDBCommTable.init_interrupts_func(); } -int TRKPollUART(void) { return gDBCommTable.peek_func(); } +inline int TRKPollUART(void) { return gDBCommTable.peek_func(); } -UARTError TRKReadUARTN(void* bytes, u32 length) +inline UARTError TRKReadUARTN(void* bytes, u32 length) { int readErr = gDBCommTable.read_func(bytes, length); return readErr == 0 ? 0 : -1; } -UARTError TRKWriteUARTN(const void* bytes, u32 length) +inline UARTError TRKWriteUARTN(const void* bytes, u32 length) { int writeErr = gDBCommTable.write_func(bytes, length); return writeErr == 0 ? 0 : -1; @@ -141,28 +139,29 @@ UARTError WriteUART1(u8 arg0) return 0; } -UARTError TRKReadUARTPoll(u8* arg0) -{ - UARTError readErr = 4; +s32 TRKReadUARTPoll(u8* arg0) { + UARTError var_r29; + s32 cnt; + var_r29 = 4; if (gReadPos >= gReadCount) { gReadPos = 0; - gReadCount = TRKPollUART(); - if (gReadCount > 0) { - if (gReadCount > BUFF_LEN) { - gReadCount = BUFF_LEN; + cnt = gReadCount = TRKPollUART(); + if (cnt > 0) { + if (cnt > 0x110A) { + gReadCount = 0x110A; } - readErr = TRKReadUARTN(gReadBuf, gReadCount); - if (readErr != 0) { + var_r29 = TRKReadUARTN(gReadBuf, gReadCount); + if (var_r29 != 0) { gReadCount = 0; } } } if (gReadPos < gReadCount) { *arg0 = gReadBuf[gReadPos++]; - readErr = 0; + var_r29 = 0; } - return readErr; + return var_r29; } void ReserveEXI2Port(void) { gDBCommTable.open_func(); } @@ -170,3 +169,5 @@ void ReserveEXI2Port(void) { gDBCommTable.open_func(); } void UnreserveEXI2Port(void) { gDBCommTable.close_func(); } void TRK_board_display(char* str) { OSReport(str); } + +void TRKUARTInterruptHandler() { } From 5c40f5a8492d628e04f36ca28582a69d317bce19 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sat, 15 Mar 2025 10:11:33 -0700 Subject: [PATCH 171/178] Fix TRKReadUARTPoll var naming (#574) --- src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c index 0b6947ed..46eb1107 100644 --- a/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c +++ b/src/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c @@ -139,29 +139,29 @@ UARTError WriteUART1(u8 arg0) return 0; } -s32 TRKReadUARTPoll(u8* arg0) { - UARTError var_r29; +UARTError TRKReadUARTPoll(u8* arg0) +{ + UARTError readErr = 4; s32 cnt; - var_r29 = 4; if (gReadPos >= gReadCount) { gReadPos = 0; cnt = gReadCount = TRKPollUART(); if (cnt > 0) { - if (cnt > 0x110A) { - gReadCount = 0x110A; + if (cnt > BUFF_LEN) { + gReadCount = BUFF_LEN; } - var_r29 = TRKReadUARTN(gReadBuf, gReadCount); - if (var_r29 != 0) { + readErr = TRKReadUARTN(gReadBuf, gReadCount); + if (readErr != 0) { gReadCount = 0; } } } if (gReadPos < gReadCount) { *arg0 = gReadBuf[gReadPos++]; - var_r29 = 0; + readErr = 0; } - return var_r29; + return readErr; } void ReserveEXI2Port(void) { gDBCommTable.open_func(); } From 91d6eb54284f2ac569032ca7a78b3ee3e8ec937a Mon Sep 17 00:00:00 2001 From: Rainchus Date: Sun, 16 Mar 2025 14:22:42 -0500 Subject: [PATCH 172/178] DebuggerDriver.c matching in version 0 --- configure.py | 6 +- src/OdemuExi2/DebuggerDriver.c | 348 +++++++++++++++++++++++++++++++++ 2 files changed, 350 insertions(+), 4 deletions(-) diff --git a/configure.py b/configure.py index 5613bb0e..bf78c9d3 100644 --- a/configure.py +++ b/configure.py @@ -252,12 +252,10 @@ cflags_trk = [ cflags_odemuexi = [ *cflags_base, + "-inline auto,deferred" # TODO figure out flags ] -if version_num > 0: - cflags_odemuexi.append("-inline auto,deferred") - cflags_amcstub = [ *cflags_base, "-inline auto,deferred", @@ -805,7 +803,7 @@ config.libs = [ "cflags": cflags_odemuexi, "host": False, "objects": [ - Object(MatchingFor("GMPE01_01"), "OdemuExi2/DebuggerDriver.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "OdemuExi2/DebuggerDriver.c"), ], }, { diff --git a/src/OdemuExi2/DebuggerDriver.c b/src/OdemuExi2/DebuggerDriver.c index eb1415a9..36efa4dc 100644 --- a/src/OdemuExi2/DebuggerDriver.c +++ b/src/OdemuExi2/DebuggerDriver.c @@ -1,3 +1,347 @@ +#if VERSION == 0 + + #include + #include + #include + + typedef void (*MTRCallbackType)(int); + + static MTRCallbackType MTRCallback; + + static void (*DBGCallback)(u32, OSContext *); + + static u32 SendMailData; + + static s32 RecvDataLeng; + + static u8 *pEXIInputFlag; + + static u8 EXIInputFlag; + + static u8 SendCount = 0x80; + + #define IS_TRUE(x) ((x) != FALSE) + #define IS_FALSE(x) !IS_TRUE(x) + #define ROUND_UP(x, align) (((x) + (align)-1) & (-(align))) + + // functions + static void CheckMailBox(void); + static void MWCallback(u32 a, OSContext *b); + static void DBGHandler(s16 a, OSContext *b); + static u32 DBGEXISelect(u32 v); + static void DBGEXIInit(); + + void DBClose(void) { } + + void DBOpen(void) { } + + + BOOL DBWrite(void *src, u32 size) + { + u32 v; + u32 busyFlag; + BOOL interrupts = OSDisableInterrupts(); + + do { + _DBGReadStatus(&busyFlag); + } while (busyFlag & 2); + + SendCount++; + v = ((SendCount & 1) ? 0x1000 : 0); + + while (!DBGWrite(v | 0x1c000, src, ROUND_UP(size, 4))) + ; + + do { + _DBGReadStatus(&busyFlag); + } while (busyFlag & 2); + + v = SendCount; + while (!DBGWriteMailbox((0x1f000000) | v << 0x10 | size)) + ; + + do { + while (!_DBGReadStatus(&busyFlag)) + ; + } while (busyFlag & 2); + + OSRestoreInterrupts(interrupts); + + return 0; + } + + BOOL DBRead(u32 *buffer, s32 count) + { + u32 interrupts = OSDisableInterrupts(); + u32 v = SendMailData & 0x10000 ? 0x1000 : 0; + + DBGRead(v + 0x1e000, buffer, ROUND_UP(count, 4)); + + RecvDataLeng = 0; + EXIInputFlag = 0; + + OSRestoreInterrupts(interrupts); + + return 0; + } + + u32 DBQueryData(void) + { + BOOL interrupts; + EXIInputFlag = 0; + if (!RecvDataLeng) { + interrupts = OSDisableInterrupts(); + CheckMailBox(); + #if VERSION > 0 + OSRestoreInterrupts(interrupts); + } + #else + } + OSRestoreInterrupts(interrupts); + #endif + return RecvDataLeng; + } + + static void CheckMailBox(void) + { + u32 v; + DBGReadStatus(&v); + if (v & 1) { + DBGReadMailbox(&v); + v &= 0x1fffffff; + + if ((v & 0x1f000000) == 0x1f000000) { + SendMailData = v; + RecvDataLeng = v & 0x7fff; + EXIInputFlag = 1; + } + } + } + + void DBInitInterrupts(void) + { + __OSMaskInterrupts(0x18000); + __OSMaskInterrupts(0x40); + DBGCallback = &MWCallback; + __OSSetInterruptHandler(0x19, DBGHandler); + __OSUnmaskInterrupts(0x40); + } + + void DBInitComm(u8 **a, MTRCallbackType b) + { + BOOL interrupts = OSDisableInterrupts(); + { + pEXIInputFlag = (u8 *)EXIInputFlag; + pEXIInputFlag = &EXIInputFlag; + + *a = pEXIInputFlag; + + MTRCallback = b; + + DBGEXIInit(); + } + OSRestoreInterrupts(interrupts); + } + + static void DBGHandler(s16 a, OSContext *b) + { + *__PIRegs = 0x1000; + if (DBGCallback) { + DBGCallback(a, b); + } + } + + static void MWCallback(u32 a, OSContext *b) + { + EXIInputFlag = TRUE; + if (MTRCallback) { + MTRCallback(0); + } + } + + #pragma push + #pragma dont_inline on + static BOOL DBGReadStatus(u32 *p1) + { + return _DBGReadStatus(p1); + } + #pragma pop + + static BOOL _DBGReadStatus(u32 *p1) + { + BOOL total = FALSE; + u32 v; + + DBGEXISelect(4); + + v = 0x40000000; + total |= !(DBGEXIImm(&v, 2, 1)); + total |= !(DBGEXISync()); + + total |= !(DBGEXIImm(p1, 4, 0)); + total |= !(DBGEXISync()); + + total |= !(DBGEXIDeselect()); + + return !(total); + } + + static BOOL DBGWrite(u32 count, void *buffer, s32 param3) + { + BOOL total = FALSE; + u32 *buf_p = (u32 *)buffer; + u32 v1; + u32 v; + + DBGEXISelect(4); + + v1 = (count & 0x1fffc) << 8 | 0xa0000000; + total |= IS_FALSE(DBGEXIImm(&v1, sizeof(v1), 1)); + total |= IS_FALSE(DBGEXISync()); + + while (param3 != 0) { + v = *buf_p++; + + total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 1)); + total |= IS_FALSE(DBGEXISync()); + + param3 -= 4; + if (param3 < 0) { + param3 = 0; + } + } + + total |= IS_FALSE(DBGEXIDeselect()); + return IS_FALSE(total); + } + + static BOOL DBGRead(u32 count, u32 *buffer, s32 param3) + { + BOOL total = FALSE; + u32 *buf_p = (u32 *)buffer; + u32 v1; + u32 v; + + DBGEXISelect(4); + + v1 = (count & 0x1fffc) << 8 | 0x20000000; + total |= IS_FALSE(DBGEXIImm(&v1, sizeof(v1), 1)); + total |= IS_FALSE(DBGEXISync()); + + while (param3) { + total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 0)); + total |= IS_FALSE(DBGEXISync()); + + *buf_p++ = v; + + param3 -= 4; + if (param3 < 0) { + param3 = 0; + } + } + + total |= IS_FALSE(DBGEXIDeselect()); + return IS_FALSE(total); + } + + #pragma push + #pragma dont_inline on + static BOOL DBGReadMailbox(u32 *p1) + { + long cmd; + long v; + + DBGEXISelect(4); + + v = 0x60000000; + cmd = 0; + cmd |= !(DBGEXIImm(&v, 2, 1)); + cmd |= !(DBGEXISync()); + + cmd |= !(DBGEXIImm(p1, 4, 0)); + cmd |= !(DBGEXISync()); + + cmd |= !(DBGEXIDeselect()); + + return !(cmd); + } + #pragma pop + + static BOOL DBGWriteMailbox(u32 p1) + { + u32 cmd = 0xc0000000; + u32 v; + u32 base = p1; + BOOL total = FALSE; + + DBGEXISelect(4); + v = (base & 0x1fffffff) | (cmd); + total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 1)); + total |= IS_FALSE(DBGEXISync()); + total |= IS_FALSE(DBGEXIDeselect()); + + return IS_FALSE(total); + } + + static BOOL DBGEXIImm(void *buffer, s32 bytecounter, u32 write) + { + u8 *tempPointer; + u32 writeOutValue; + int i; + + if (write) { + tempPointer = buffer; + writeOutValue = 0; + for (i = 0; i < bytecounter; i++) { + u8 *temp = ((u8 *)buffer) + i; + writeOutValue |= *temp << ((3 - i) << 3); + } + __EXIRegs[14] = writeOutValue; + } + + __EXIRegs[13] = 1 | write << 2 | (bytecounter - 1) << 4; + DBGEXISync(); + + if (!write) { + writeOutValue = __EXIRegs[14]; + tempPointer = buffer; + for (i = 0; i < bytecounter; i++) { + *tempPointer++ = writeOutValue >> ((3 - i) << 3); + } + } + + return TRUE; + } + + static BOOL DBGEXISync() + { + while (__EXIRegs[13] & 1) + ; + + return TRUE; + } + + static BOOL DBGEXIDeselect(void) + { + __EXIRegs[10] &= 0x405; + return TRUE; + } + + static u32 DBGEXISelect(u32 v) + { + u32 regs = __EXIRegs[10]; + regs &= 0x405; + regs |= 0x80 | (v << 4); + __EXIRegs[10] = regs; + return TRUE; + } + + static void DBGEXIInit() + { + __OSMaskInterrupts(0x18000); + __EXIRegs[10] = 0; + } +#elif VERSION == 1 #include #include #include @@ -328,3 +672,7 @@ BOOL DBWrite(void *src, u32 size) void DBOpen(void) { } void DBClose(void) { } + +#else + +#endif From 4fdca137cd70e67b988192163bec68873b514774 Mon Sep 17 00:00:00 2001 From: CreateSource <72283721+abnormalhare@users.noreply.github.com> Date: Sun, 16 Mar 2025 15:50:44 -0400 Subject: [PATCH 173/178] Match OdemiExi2 (#575) * name audio.c and board/audio.c * fix audio, complete board/basic_space, battle * revert changes that broke build * completely finish New and NewMore.cp, for some reason NewMore fails checksum * finally match NewMore.cp * match NMWException.cpp * match mem_TRK * match TRK with correct linker, uses Revo's notify func * match TRKReadUARTPoll * match OdemiExi2 * undo git's stupidness * testing * naively match REV 1 for real this time --- .vscode/settings.json | 5 +- configure.py | 3 +- src/OdemuExi2/DebuggerDriver.c | 687 ++++++++++++++++----------------- 3 files changed, 335 insertions(+), 360 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index ac4cca7f..1e7df332 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -68,7 +68,8 @@ "roll.h": "c", "msghndlr.h": "c", "dispatch.h": "c", - "trk.h": "c" + "trk.h": "c", + "debuggerdriver.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { @@ -141,4 +142,4 @@ "C_Cpp_Runner.showCompilationTime": false, "C_Cpp_Runner.useLinkTimeOptimization": false, "C_Cpp_Runner.msvcSecureNoWarnings": false -} +} \ No newline at end of file diff --git a/configure.py b/configure.py index bf78c9d3..28660567 100644 --- a/configure.py +++ b/configure.py @@ -252,8 +252,7 @@ cflags_trk = [ cflags_odemuexi = [ *cflags_base, - "-inline auto,deferred" - # TODO figure out flags + "-inline deferred" ] cflags_amcstub = [ diff --git a/src/OdemuExi2/DebuggerDriver.c b/src/OdemuExi2/DebuggerDriver.c index 36efa4dc..b791b28b 100644 --- a/src/OdemuExi2/DebuggerDriver.c +++ b/src/OdemuExi2/DebuggerDriver.c @@ -1,347 +1,3 @@ -#if VERSION == 0 - - #include - #include - #include - - typedef void (*MTRCallbackType)(int); - - static MTRCallbackType MTRCallback; - - static void (*DBGCallback)(u32, OSContext *); - - static u32 SendMailData; - - static s32 RecvDataLeng; - - static u8 *pEXIInputFlag; - - static u8 EXIInputFlag; - - static u8 SendCount = 0x80; - - #define IS_TRUE(x) ((x) != FALSE) - #define IS_FALSE(x) !IS_TRUE(x) - #define ROUND_UP(x, align) (((x) + (align)-1) & (-(align))) - - // functions - static void CheckMailBox(void); - static void MWCallback(u32 a, OSContext *b); - static void DBGHandler(s16 a, OSContext *b); - static u32 DBGEXISelect(u32 v); - static void DBGEXIInit(); - - void DBClose(void) { } - - void DBOpen(void) { } - - - BOOL DBWrite(void *src, u32 size) - { - u32 v; - u32 busyFlag; - BOOL interrupts = OSDisableInterrupts(); - - do { - _DBGReadStatus(&busyFlag); - } while (busyFlag & 2); - - SendCount++; - v = ((SendCount & 1) ? 0x1000 : 0); - - while (!DBGWrite(v | 0x1c000, src, ROUND_UP(size, 4))) - ; - - do { - _DBGReadStatus(&busyFlag); - } while (busyFlag & 2); - - v = SendCount; - while (!DBGWriteMailbox((0x1f000000) | v << 0x10 | size)) - ; - - do { - while (!_DBGReadStatus(&busyFlag)) - ; - } while (busyFlag & 2); - - OSRestoreInterrupts(interrupts); - - return 0; - } - - BOOL DBRead(u32 *buffer, s32 count) - { - u32 interrupts = OSDisableInterrupts(); - u32 v = SendMailData & 0x10000 ? 0x1000 : 0; - - DBGRead(v + 0x1e000, buffer, ROUND_UP(count, 4)); - - RecvDataLeng = 0; - EXIInputFlag = 0; - - OSRestoreInterrupts(interrupts); - - return 0; - } - - u32 DBQueryData(void) - { - BOOL interrupts; - EXIInputFlag = 0; - if (!RecvDataLeng) { - interrupts = OSDisableInterrupts(); - CheckMailBox(); - #if VERSION > 0 - OSRestoreInterrupts(interrupts); - } - #else - } - OSRestoreInterrupts(interrupts); - #endif - return RecvDataLeng; - } - - static void CheckMailBox(void) - { - u32 v; - DBGReadStatus(&v); - if (v & 1) { - DBGReadMailbox(&v); - v &= 0x1fffffff; - - if ((v & 0x1f000000) == 0x1f000000) { - SendMailData = v; - RecvDataLeng = v & 0x7fff; - EXIInputFlag = 1; - } - } - } - - void DBInitInterrupts(void) - { - __OSMaskInterrupts(0x18000); - __OSMaskInterrupts(0x40); - DBGCallback = &MWCallback; - __OSSetInterruptHandler(0x19, DBGHandler); - __OSUnmaskInterrupts(0x40); - } - - void DBInitComm(u8 **a, MTRCallbackType b) - { - BOOL interrupts = OSDisableInterrupts(); - { - pEXIInputFlag = (u8 *)EXIInputFlag; - pEXIInputFlag = &EXIInputFlag; - - *a = pEXIInputFlag; - - MTRCallback = b; - - DBGEXIInit(); - } - OSRestoreInterrupts(interrupts); - } - - static void DBGHandler(s16 a, OSContext *b) - { - *__PIRegs = 0x1000; - if (DBGCallback) { - DBGCallback(a, b); - } - } - - static void MWCallback(u32 a, OSContext *b) - { - EXIInputFlag = TRUE; - if (MTRCallback) { - MTRCallback(0); - } - } - - #pragma push - #pragma dont_inline on - static BOOL DBGReadStatus(u32 *p1) - { - return _DBGReadStatus(p1); - } - #pragma pop - - static BOOL _DBGReadStatus(u32 *p1) - { - BOOL total = FALSE; - u32 v; - - DBGEXISelect(4); - - v = 0x40000000; - total |= !(DBGEXIImm(&v, 2, 1)); - total |= !(DBGEXISync()); - - total |= !(DBGEXIImm(p1, 4, 0)); - total |= !(DBGEXISync()); - - total |= !(DBGEXIDeselect()); - - return !(total); - } - - static BOOL DBGWrite(u32 count, void *buffer, s32 param3) - { - BOOL total = FALSE; - u32 *buf_p = (u32 *)buffer; - u32 v1; - u32 v; - - DBGEXISelect(4); - - v1 = (count & 0x1fffc) << 8 | 0xa0000000; - total |= IS_FALSE(DBGEXIImm(&v1, sizeof(v1), 1)); - total |= IS_FALSE(DBGEXISync()); - - while (param3 != 0) { - v = *buf_p++; - - total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 1)); - total |= IS_FALSE(DBGEXISync()); - - param3 -= 4; - if (param3 < 0) { - param3 = 0; - } - } - - total |= IS_FALSE(DBGEXIDeselect()); - return IS_FALSE(total); - } - - static BOOL DBGRead(u32 count, u32 *buffer, s32 param3) - { - BOOL total = FALSE; - u32 *buf_p = (u32 *)buffer; - u32 v1; - u32 v; - - DBGEXISelect(4); - - v1 = (count & 0x1fffc) << 8 | 0x20000000; - total |= IS_FALSE(DBGEXIImm(&v1, sizeof(v1), 1)); - total |= IS_FALSE(DBGEXISync()); - - while (param3) { - total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 0)); - total |= IS_FALSE(DBGEXISync()); - - *buf_p++ = v; - - param3 -= 4; - if (param3 < 0) { - param3 = 0; - } - } - - total |= IS_FALSE(DBGEXIDeselect()); - return IS_FALSE(total); - } - - #pragma push - #pragma dont_inline on - static BOOL DBGReadMailbox(u32 *p1) - { - long cmd; - long v; - - DBGEXISelect(4); - - v = 0x60000000; - cmd = 0; - cmd |= !(DBGEXIImm(&v, 2, 1)); - cmd |= !(DBGEXISync()); - - cmd |= !(DBGEXIImm(p1, 4, 0)); - cmd |= !(DBGEXISync()); - - cmd |= !(DBGEXIDeselect()); - - return !(cmd); - } - #pragma pop - - static BOOL DBGWriteMailbox(u32 p1) - { - u32 cmd = 0xc0000000; - u32 v; - u32 base = p1; - BOOL total = FALSE; - - DBGEXISelect(4); - v = (base & 0x1fffffff) | (cmd); - total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 1)); - total |= IS_FALSE(DBGEXISync()); - total |= IS_FALSE(DBGEXIDeselect()); - - return IS_FALSE(total); - } - - static BOOL DBGEXIImm(void *buffer, s32 bytecounter, u32 write) - { - u8 *tempPointer; - u32 writeOutValue; - int i; - - if (write) { - tempPointer = buffer; - writeOutValue = 0; - for (i = 0; i < bytecounter; i++) { - u8 *temp = ((u8 *)buffer) + i; - writeOutValue |= *temp << ((3 - i) << 3); - } - __EXIRegs[14] = writeOutValue; - } - - __EXIRegs[13] = 1 | write << 2 | (bytecounter - 1) << 4; - DBGEXISync(); - - if (!write) { - writeOutValue = __EXIRegs[14]; - tempPointer = buffer; - for (i = 0; i < bytecounter; i++) { - *tempPointer++ = writeOutValue >> ((3 - i) << 3); - } - } - - return TRUE; - } - - static BOOL DBGEXISync() - { - while (__EXIRegs[13] & 1) - ; - - return TRUE; - } - - static BOOL DBGEXIDeselect(void) - { - __EXIRegs[10] &= 0x405; - return TRUE; - } - - static u32 DBGEXISelect(u32 v) - { - u32 regs = __EXIRegs[10]; - regs &= 0x405; - regs |= 0x80 | (v << 4); - __EXIRegs[10] = regs; - return TRUE; - } - - static void DBGEXIInit() - { - __OSMaskInterrupts(0x18000); - __EXIRegs[10] = 0; - } -#elif VERSION == 1 #include #include #include @@ -366,15 +22,311 @@ static u8 SendCount = 0x80; #define IS_FALSE(x) !IS_TRUE(x) #define ROUND_UP(x, align) (((x) + (align)-1) & (-(align))) -// TODO +#if VERSION == VERSION_NO_ENG0 -void DBGEXIInit() +static void DBGEXIInit(); +static u32 DBGEXISelect(u32 v); +static void CheckMailBox(void); +static void MWCallback(u32 a, OSContext *b); +static void DBGHandler(s16 a, OSContext *b); + +void DBClose(void) { } + +void DBOpen(void) { } + +BOOL DBWrite(void *src, u32 size) { - __OSMaskInterrupts(0x18000); - __EXIRegs[10] = 0; + u32 v; + u32 busyFlag; + BOOL interrupts = OSDisableInterrupts(); + + do { + _DBGReadStatus(&busyFlag); + } while (busyFlag & 2); + + SendCount++; + v = ((SendCount & 1) ? 0x1000 : 0); + + while (!DBGWrite(v | 0x1c000, src, ROUND_UP(size, 4))) + ; + + do { + _DBGReadStatus(&busyFlag); + } while (busyFlag & 2); + + v = SendCount; + while (!DBGWriteMailbox((0x1f000000) | v << 0x10 | size)) + ; + + do { + while (!_DBGReadStatus(&busyFlag)) + ; + } while (busyFlag & 2); + + OSRestoreInterrupts(interrupts); + + return 0; } -static u32 DBGEXISelect(u32 v) +BOOL DBRead(u32 *buffer, s32 count) +{ + u32 interrupts = OSDisableInterrupts(); + u32 v = SendMailData & 0x10000 ? 0x1000 : 0; + + DBGRead(v + 0x1e000, buffer, ROUND_UP(count, 4)); + + RecvDataLeng = 0; + EXIInputFlag = 0; + + OSRestoreInterrupts(interrupts); + + return 0; +} + +u32 DBQueryData(void) +{ + BOOL interrupts; + EXIInputFlag = 0; + if (!RecvDataLeng) { + interrupts = OSDisableInterrupts(); + CheckMailBox(); +#if VERSION > 0 + OSRestoreInterrupts(interrupts); + } +#else + } + OSRestoreInterrupts(interrupts); +#endif + return RecvDataLeng; +} + +inline static void CheckMailBox(void) +{ + u32 v; + DBGReadStatus(&v); + if (v & 1) { + DBGReadMailbox(&v); + v &= 0x1fffffff; + + if ((v & 0x1f000000) == 0x1f000000) { + SendMailData = v; + RecvDataLeng = v & 0x7fff; + EXIInputFlag = 1; + } + } +} + +void DBInitInterrupts(void) +{ + __OSMaskInterrupts(0x18000); + __OSMaskInterrupts(0x40); + DBGCallback = &MWCallback; + __OSSetInterruptHandler(0x19, DBGHandler); + __OSUnmaskInterrupts(0x40); +} + +void DBInitComm(u8 **a, MTRCallbackType b) +{ + BOOL interrupts = OSDisableInterrupts(); + { + pEXIInputFlag = (u8 *)EXIInputFlag; + pEXIInputFlag = &EXIInputFlag; + + *a = pEXIInputFlag; + + MTRCallback = b; + + DBGEXIInit(); + } + OSRestoreInterrupts(interrupts); +} + +inline static BOOL _DBGReadStatus(u32 *p1) +{ + BOOL total = FALSE; + u32 v; + + DBGEXISelect(4); + + v = 1 << 30; + total |= IS_FALSE(DBGEXIImm(&v, 2, 1)); + total |= IS_FALSE(DBGEXISync()); + + total |= IS_FALSE(DBGEXIImm(p1, 4, 0)); + total |= IS_FALSE(DBGEXISync()); + + total |= IS_FALSE(DBGEXIDeselect()); + + return IS_FALSE(total); +} + +static void DBGHandler(s16 a, OSContext *b) +{ + *__PIRegs = 0x1000; + if (DBGCallback) { + DBGCallback(a, b); + } +} + +static void MWCallback(u32 a, OSContext *b) +{ + EXIInputFlag = TRUE; + if (MTRCallback) { + MTRCallback(0); + } +} + +#pragma push +#pragma dont_inline on +static BOOL DBGReadStatus(u32 *p1) +{ + return _DBGReadStatus(p1); +} +#pragma pop + +static BOOL DBGWrite(u32 count, void *buffer, s32 param3) +{ + BOOL total = FALSE; + u32 *buf_p = (u32 *)buffer; + u32 v1; + u32 v; + + DBGEXISelect(4); + + v1 = (count & 0x1fffc) << 8 | 0xa0000000; + total |= IS_FALSE(DBGEXIImm(&v1, sizeof(v1), 1)); + total |= IS_FALSE(DBGEXISync()); + + while (param3 != 0) { + v = *buf_p++; + + total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 1)); + total |= IS_FALSE(DBGEXISync()); + + param3 -= 4; + if (param3 < 0) { + param3 = 0; + } + } + + total |= IS_FALSE(DBGEXIDeselect()); + return IS_FALSE(total); +} + +static BOOL DBGRead(u32 count, u32 *buffer, s32 param3) +{ + BOOL total = FALSE; + u32 *buf_p = (u32 *)buffer; + u32 v1; + u32 v; + + DBGEXISelect(4); + + v1 = (count & 0x1fffc) << 8 | 0x20000000; + total |= IS_FALSE(DBGEXIImm(&v1, sizeof(v1), 1)); + total |= IS_FALSE(DBGEXISync()); + + while (param3) { + total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 0)); + total |= IS_FALSE(DBGEXISync()); + + *buf_p++ = v; + + param3 -= 4; + if (param3 < 0) { + param3 = 0; + } + } + + total |= IS_FALSE(DBGEXIDeselect()); + return IS_FALSE(total); +} + +#define TO_BOOL(x) (((u32)__cntlzw((x)) >> 5)) +#pragma push +#pragma dont_inline on +static BOOL DBGReadMailbox(u32* p1) +{ + u32 v; + u32 total = 0; + u32 stack0, stack1, stack2; + + DBGEXISelect(4); + + v = 0x60000000; + total |= !(DBGEXIImm(&v, 2, 1) != 0); + DBGEXISync(); + + total |= !(DBGEXIImm(p1, 4, 0) != 0); + DBGEXISync(); + + DBGEXIDeselect(); + total = TO_BOOL(total); + return total; +} +#pragma pop + +inline static BOOL DBGWriteMailbox(u32 p1) +{ + u32 cmd = 0xc0000000; + u32 v; + u32 base = p1; + BOOL total = FALSE; + + DBGEXISelect(4); + v = (base & 0x1fffffff) | (cmd); + total |= IS_FALSE(DBGEXIImm(&v, sizeof(v), 1)); + total |= IS_FALSE(DBGEXISync()); + total |= IS_FALSE(DBGEXIDeselect()); + + return IS_FALSE(total); +} + +static BOOL DBGEXIImm(void *buffer, s32 bytecounter, u32 write) +{ + u8 *tempPointer; + u32 writeOutValue; + int i; + + if (write) { + tempPointer = buffer; + writeOutValue = 0; + for (i = 0; i < bytecounter; i++) { + u8 *temp = ((u8 *)buffer) + i; + writeOutValue |= *temp << ((3 - i) << 3); + } + __EXIRegs[14] = writeOutValue; + } + + __EXIRegs[13] = 1 | write << 2 | (bytecounter - 1) << 4; + DBGEXISync(); + + if (!write) { + writeOutValue = __EXIRegs[14]; + tempPointer = buffer; + for (i = 0; i < bytecounter; i++) { + *tempPointer++ = writeOutValue >> ((3 - i) << 3); + } + } + + return TRUE; +} + +inline static BOOL DBGEXISync() +{ + while (__EXIRegs[13] & 1) + ; + + return TRUE; +} + +inline BOOL DBGEXIDeselect(void) +{ + __EXIRegs[10] &= 0x405; + return TRUE; +} + +inline static u32 DBGEXISelect(u32 v) { u32 regs = __EXIRegs[10]; regs &= 0x405; @@ -383,13 +335,36 @@ static u32 DBGEXISelect(u32 v) return TRUE; } -BOOL DBGEXIDeselect(void) +inline static void DBGEXIInit() +{ + __OSMaskInterrupts(0x18000); + __EXIRegs[10] = 0; +} + +#else + +inline void DBGEXIInit() +{ + __OSMaskInterrupts(0x18000); + __EXIRegs[10] = 0; +} + +inline static u32 DBGEXISelect(u32 v) +{ + u32 regs = __EXIRegs[10]; + regs &= 0x405; + regs |= 0x80 | (v << 4); + __EXIRegs[10] = regs; + return TRUE; +} + +inline BOOL DBGEXIDeselect(void) { __EXIRegs[10] &= 0x405; return TRUE; } -static BOOL DBGEXISync() +inline static BOOL DBGEXISync() { while (__EXIRegs[13] & 1) ; @@ -427,7 +402,7 @@ static BOOL DBGEXIImm(void *buffer, s32 bytecounter, u32 write) return TRUE; } -static BOOL DBGWriteMailbox(u32 p1) +inline static BOOL DBGWriteMailbox(u32 p1) { u32 cmd = 0xc0000000; u32 v; @@ -522,7 +497,7 @@ static BOOL DBGWrite(u32 count, void *buffer, s32 param3) return IS_FALSE(total); } -static BOOL _DBGReadStatus(u32 *p1) +inline static BOOL _DBGReadStatus(u32 *p1) { BOOL total = FALSE; u32 v; @@ -541,10 +516,12 @@ static BOOL _DBGReadStatus(u32 *p1) return IS_FALSE(total); } +#pragma dont_inline on static BOOL DBGReadStatus(u32 *p1) { return _DBGReadStatus(p1); } +#pragma dont_inline reset static void MWCallback(u32 a, OSContext *b) { @@ -587,7 +564,7 @@ void DBInitInterrupts(void) __OSUnmaskInterrupts(0x40); } -static void CheckMailBox(void) +inline static void CheckMailBox(void) { u32 v; DBGReadStatus(&v); @@ -673,6 +650,4 @@ void DBOpen(void) { } void DBClose(void) { } -#else - #endif From 53f19c4f6c5e565df113a61a34806441966b665d Mon Sep 17 00:00:00 2001 From: Rainchus Date: Sun, 16 Mar 2025 15:05:13 -0500 Subject: [PATCH 174/178] match targimpl for US versions (#576) --- config/GMPE01_00/splits.txt | 2 +- config/GMPE01_01/splits.txt | 2 +- configure.py | 2 +- src/TRK_MINNOW_DOLPHIN/targimpl.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/config/GMPE01_00/splits.txt b/config/GMPE01_00/splits.txt index 4751f858..0c85aae7 100644 --- a/config/GMPE01_00/splits.txt +++ b/config/GMPE01_00/splits.txt @@ -1216,7 +1216,7 @@ TRK_MINNOW_DOLPHIN/mem_TRK.c: .text start:0x800F0398 end:0x800F0454 TRK_MINNOW_DOLPHIN/targimpl.c: - .text start:0x800F0454 end:0x800F1CF0 + .text start:0x800F0454 end:0x800F1CE4 .rodata start:0x8011EA90 end:0x8011EB18 .data start:0x8013EA58 end:0x8013EA88 .bss start:0x801A9138 end:0x801A96B8 diff --git a/config/GMPE01_01/splits.txt b/config/GMPE01_01/splits.txt index 4751f858..0c85aae7 100644 --- a/config/GMPE01_01/splits.txt +++ b/config/GMPE01_01/splits.txt @@ -1216,7 +1216,7 @@ TRK_MINNOW_DOLPHIN/mem_TRK.c: .text start:0x800F0398 end:0x800F0454 TRK_MINNOW_DOLPHIN/targimpl.c: - .text start:0x800F0454 end:0x800F1CF0 + .text start:0x800F0454 end:0x800F1CE4 .rodata start:0x8011EA90 end:0x8011EB18 .data start:0x8013EA58 end:0x8013EA88 .bss start:0x801A9138 end:0x801A96B8 diff --git a/configure.py b/configure.py index 28660567..3721f4c9 100644 --- a/configure.py +++ b/configure.py @@ -749,7 +749,7 @@ config.libs = [ Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/notify.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/flush_cache.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/mem_TRK.c"), - Object(NonMatching, "TRK_MINNOW_DOLPHIN/targimpl.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/targimpl.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/targsupp.s"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/__exception.s"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "TRK_MINNOW_DOLPHIN/dolphin_trk.c"), diff --git a/src/TRK_MINNOW_DOLPHIN/targimpl.c b/src/TRK_MINNOW_DOLPHIN/targimpl.c index c25b33d4..ab925687 100644 --- a/src/TRK_MINNOW_DOLPHIN/targimpl.c +++ b/src/TRK_MINNOW_DOLPHIN/targimpl.c @@ -1192,7 +1192,7 @@ DSError TRKPPCAccessSpecialReg(void* value, u32* access_func, BOOL read) #endif // Flush cache - TRK_flush_cache(access_func, (sizeof(access_func) * 10)); + TRK_flush_cache((void*)(u32)access_func, (sizeof(access_func) * 10)); (*asm_access)((u32*)value, (void*)&TRKvalue128_temp); return DS_NoError; From 4b0737d49ceed80017a02974f0514ff682fba24a Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Tue, 1 Apr 2025 02:17:36 +0200 Subject: [PATCH 175/178] Some fixes (#577) * Mini improvements * Fix some splits --- config/GMPE01_00/rels/nisDll/splits.txt | 3 ++- config/GMPE01_00/splits.txt | 2 +- config/GMPE01_00/symbols.txt | 12 ++++++------ include/dolphin/thp/THPPlayer.h | 11 ++++++----- src/REL/m446Dll/table.c | 2 +- src/REL/nisDll/main.c | 1 + src/TRK_MINNOW_DOLPHIN/targimpl.c | 1 + src/TRK_MINNOW_DOLPHIN/targsupp.s | 2 +- src/game/hsfman.c | 12 ++++++------ 9 files changed, 25 insertions(+), 21 deletions(-) diff --git a/config/GMPE01_00/rels/nisDll/splits.txt b/config/GMPE01_00/rels/nisDll/splits.txt index d512c836..4554248b 100644 --- a/config/GMPE01_00/rels/nisDll/splits.txt +++ b/config/GMPE01_00/rels/nisDll/splits.txt @@ -2,7 +2,8 @@ Sections: .text type:code align:4 .ctors type:rodata align:4 .dtors type:rodata align:4 - .data type:data align:8 + .rodata type:rodata align:8 REL/nisDll/main.c: .text start:0x00000000 end:0x0000017C + .rodata start:0x00000000 end:0x00000010 diff --git a/config/GMPE01_00/splits.txt b/config/GMPE01_00/splits.txt index 0c85aae7..d9a64bf5 100644 --- a/config/GMPE01_00/splits.txt +++ b/config/GMPE01_00/splits.txt @@ -1222,7 +1222,7 @@ TRK_MINNOW_DOLPHIN/targimpl.c: .bss start:0x801A9138 end:0x801A96B8 TRK_MINNOW_DOLPHIN/targsupp.s: - .text start:0x800F1CF0 end:0x800F1D10 + .text start:0x800F1CE4 end:0x800F1D10 TRK_MINNOW_DOLPHIN/__exception.s: .init start:0x80003534 end:0x80005468 diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index 19a42077..17ef4f4f 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -3032,9 +3032,9 @@ TRK_flush_cache = .text:0x800F0360; // type:function size:0x38 TRK_fill_mem = .text:0x800F0398; // type:function size:0xBC __TRK_get_MSR = .text:0x800F0454; // type:function size:0x8 __TRK_set_MSR = .text:0x800F045C; // type:function size:0x8 -TRK_ppc_memcpy = .text:0x800F0464; // type:function size:0x3C +TRK_ppc_memcpy = .text:0x800F0464; // type:function size:0x3C scope:local TRKInterruptHandler = .text:0x800F04A0; // type:function size:0x194 scope:global -TRKExceptionHandler = .text:0x800F0634; // type:function size:0x9C scope:global +TRKExceptionHandler = .text:0x800F0634; // type:function size:0x9C scope:local TRKSwapAndGo = .text:0x800F06D0; // type:function size:0xC4 scope:global TRKInterruptHandlerEnableInterrupts = .text:0x800F0794; // type:function size:0x54 scope:global TRKTargetSetInputPendingPtr = .text:0x800F07E8; // type:function size:0x10 scope:global @@ -3670,9 +3670,9 @@ aT = .rodata:0x8011E9F8; // type:object size:0x58 scope:local @62 = .rodata:0x8011EA50; // type:object size:0x1C scope:local data:string lbl_8011EA70 = .rodata:0x8011EA70; // type:object size:0x1D data:string gTRKMemMap = .rodata:0x8011EA90; // type:object size:0x10 data:4byte -lbl_8011EAA0 = .rodata:0x8011EAA0; // type:object size:0x28 data:4byte -lbl_8011EAC8 = .rodata:0x8011EAC8; // type:object size:0x28 data:4byte -lbl_8011EAF0 = .rodata:0x8011EAF0; // type:object size:0x28 data:4byte +lbl_8011EAA0 = .rodata:0x8011EAA0; // type:object size:0x28 scope:local data:4byte +lbl_8011EAC8 = .rodata:0x8011EAC8; // type:object size:0x28 scope:local data:4byte +lbl_8011EAF0 = .rodata:0x8011EAF0; // type:object size:0x28 scope:local data:4byte @154 = .rodata:0x8011EB18; // type:object size:0x21 scope:local data:string @155 = .rodata:0x8011EB3C; // type:object size:0x24 scope:local data:string dspMixerCycles = .rodata:0x8011EB60; // type:object size:0x40 @@ -4517,7 +4517,7 @@ jumptable_8013EA20 = .data:0x8013EA20; // type:object size:0x1C scope:local jumptable_8013EA3C = .data:0x8013EA3C; // type:object size:0x1C scope:local gTRKRestoreFlags = .data:0x8013EA58; // type:object size:0x9 scope:global data:byte gTRKExceptionStatus = .data:0x8013EA64; // type:object size:0x10 scope:local data:4byte -gTRKStepStatus = .data:0x8013EA74; // type:object size:0x14 data:4byte +gTRKStepStatus = .data:0x8013EA74; // type:object size:0x14 scope:local data:4byte TRK_ISR_OFFSETS = .data:0x8013EA88; // type:object size:0x3C scope:local data:4byte gDBCommTable = .data:0x8013EAC8; // type:object size:0x1C scope:global data:4byte jumptable_8013EAE8 = .data:0x8013EAE8; // type:object size:0x50 scope:local diff --git a/include/dolphin/thp/THPPlayer.h b/include/dolphin/thp/THPPlayer.h index 8cd1e6ca..eb6fff62 100644 --- a/include/dolphin/thp/THPPlayer.h +++ b/include/dolphin/thp/THPPlayer.h @@ -2,11 +2,12 @@ #define _THP_THPPLAYER_H #include "types.h" -#include "Dolphin/os.h" -#include "Dolphin/gx.h" -#include "THP/THPBuffer.h" -#include "THP/THPFile.h" -#include "THP/THPInfo.h" +#include +#include "dolphin/os.h" +#include "dolphin/gx.h" +#include "dolphin/thp/THPBuffer.h" +#include "dolphin/thp/THPFile.h" +#include "dolphin/thp/THPInfo.h" #ifdef __cplusplus extern "C" { diff --git a/src/REL/m446Dll/table.c b/src/REL/m446Dll/table.c index f1de1c13..ea79e3b9 100644 --- a/src/REL/m446Dll/table.c +++ b/src/REL/m446Dll/table.c @@ -240,7 +240,7 @@ s32 fn_1_4088(unkStruct6 *arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4 **arg4, s arg0->unk68 = 0x1E; } if ((arg0->unk68 > 0) && (arg5 == 0)) { - arg0->unk68 = (arg0->unk68 - 1); + arg0->unk68--; } else { var_r28 = (arg0->unk64 / 7) < (arg0->unk60 / 7); diff --git a/src/REL/nisDll/main.c b/src/REL/nisDll/main.c index a50c5b18..4dc839ce 100644 --- a/src/REL/nisDll/main.c +++ b/src/REL/nisDll/main.c @@ -1,4 +1,5 @@ #include "game/object.h" +#include "math.h" void fn_1_68(omObjData *object); diff --git a/src/TRK_MINNOW_DOLPHIN/targimpl.c b/src/TRK_MINNOW_DOLPHIN/targimpl.c index ab925687..ba77ff35 100644 --- a/src/TRK_MINNOW_DOLPHIN/targimpl.c +++ b/src/TRK_MINNOW_DOLPHIN/targimpl.c @@ -94,6 +94,7 @@ static void TRK_ppc_memcpy(register void* dest, register const void* src, void TRKRestoreExtended1Block(); void TRKUARTInterruptHandler(); +DSError TRKTargetReadInstruction(void* data, u32 start); static BOOL TRKTargetCheckStep(); diff --git a/src/TRK_MINNOW_DOLPHIN/targsupp.s b/src/TRK_MINNOW_DOLPHIN/targsupp.s index 670f691f..0244131b 100644 --- a/src/TRK_MINNOW_DOLPHIN/targsupp.s +++ b/src/TRK_MINNOW_DOLPHIN/targsupp.s @@ -2,7 +2,7 @@ .file "targsupp.s" .text -.balign 4 +.balign 16 .fn TRKAccessFile, global twui r0, 0x0 diff --git a/src/game/hsfman.c b/src/game/hsfman.c index e02c8edb..b455a0cf 100644 --- a/src/game/hsfman.c +++ b/src/game/hsfman.c @@ -1394,7 +1394,7 @@ inline s16 Hu3DLightCreateV(LightData *light, Vec *arg0, Vec *arg1, GXColor *arg light->color = *arg2; } -s16 Hu3DGLightCreateV(Vec* arg0, Vec* arg1, GXColor* arg2) { +s16 Hu3DGLightCreateV(Vec* pos, Vec* dir, GXColor* color) { s16 var_r30; LightData* var_r31; @@ -1409,7 +1409,7 @@ s16 Hu3DGLightCreateV(Vec* arg0, Vec* arg1, GXColor* arg2) { return -1; } - Hu3DLightCreateV(var_r31, arg0, arg1, arg2); + Hu3DLightCreateV(var_r31, pos, dir, color); return var_r30; } @@ -1894,10 +1894,10 @@ void Hu3DShadowCreate(f32 arg8, f32 arg9, f32 argA) { Hu3DShadowF = 1; } -void Hu3DShadowPosSet(Vec* arg0, Vec* arg1, Vec* arg2) { - Hu3DShadowData.unk_14 = *arg0; - Hu3DShadowData.unk_20 = *arg2; - Hu3DShadowData.unk_2C = *arg1; +void Hu3DShadowPosSet(Vec* camPos, Vec* camUp, Vec* camTarget) { + Hu3DShadowData.unk_14 = *camPos; + Hu3DShadowData.unk_20 = *camTarget; + Hu3DShadowData.unk_2C = *camUp; } void Hu3DShadowTPLvlSet(f32 arg8) { From 887cb00c5be9fb1d824756ff0a935904148c202e Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Tue, 1 Apr 2025 07:11:31 +0200 Subject: [PATCH 176/178] Cleanup and get rid of many warnings when compiling with stricter warnings (#578) * Mini improvements * Fix some splits * Remove last comma from enums * Fix symbols * Fix some headers and missing prototypes * Replace most of f32 with float * Replace most of Point3d with Vec * Add missing esprite include with guard * Add HuSetVecF to ext_math behind a guard * More includes --- config/GMPE01_00/rels/mgmodedll/symbols.txt | 4 +- include/PowerPC_EABI_Support/MetroTRK/trk.h | 26 +- .../Msl/MSL_C/MSL_Common/ansi_files.h | 10 +- include/REL/m407dll.h | 49 +- include/REL/m409Dll.h | 233 +++--- include/REL/m412Dll.h | 41 +- include/REL/m415Dll.h | 144 ++-- include/REL/m418Dll.h | 40 +- include/REL/m424Dll.h | 20 +- include/REL/m427Dll.h | 4 +- include/REL/m438Dll.h | 50 +- include/REL/m440Dll.h | 240 +++--- include/REL/m446Dll.h | 281 +++---- include/REL/mentDll.h | 14 +- include/REL/modeltestDll.h | 32 +- include/REL/w02Dll.h | 88 +-- include/REL/w05Dll.h | 90 +-- include/REL/w10Dll.h | 2 +- include/data_num/title.h | 6 +- include/data_num/win.h | 4 +- include/dolphin/demo/DEMOPuts.h | 2 +- include/dolphin/demo/DEMOStats.h | 4 +- include/dolphin/gx/GXEnum.h | 135 ++-- include/dolphin/gx/GXExtra.h | 2 +- include/dolphin/gx/GXStruct.h | 2 +- include/dolphin/gx/GXVerify.h | 2 +- include/dolphin/vitypes.h | 4 +- include/ext_math.h | 4 + include/game/data.h | 6 +- include/game/hsfanim.h | 4 +- include/game/hsfman.h | 153 ++-- include/game/minigame_seq.h | 4 +- src/REL/m403Dll/main.c | 4 + src/REL/m404Dll/main.c | 5 + src/REL/m407dll/camera.c | 134 ++-- src/REL/m407dll/effect.c | 1 + src/REL/m407dll/main.c | 13 +- src/REL/m407dll/map.c | 10 +- src/REL/m407dll/player.c | 5 +- src/REL/m407dll/score.c | 6 +- src/REL/m407dll/whomp.c | 4 +- src/REL/m408Dll/main.c | 4 + src/REL/m409Dll/player.c | 4 + src/REL/m410Dll/player.c | 6 +- src/REL/m424Dll/ball.c | 3 +- src/REL/m427Dll/main.c | 4 + src/REL/m427Dll/map.c | 2 +- src/REL/m434Dll/main.c | 4 + src/REL/m443Dll/player.c | 2 +- src/REL/m444dll/datalist.c | 6 +- src/REL/m455Dll/main.c | 4 + src/REL/m461Dll/main.c | 4 + src/REL/mentDll/common.c | 6 +- src/REL/modeltestDll/main.c | 24 +- src/REL/modeltestDll/modeltest00.c | 86 +- src/REL/modeseldll/filesel.c | 4 + src/REL/resultDll/battle.c | 4 + src/REL/resultDll/datalist.c | 6 +- src/REL/resultDll/main.c | 4 + src/REL/w02Dll/main.c | 175 +++-- src/REL/w02Dll/roulette.c | 734 +++++++++--------- src/REL/w03Dll/mg_coin.c | 20 +- src/REL/w03Dll/mg_item.c | 16 +- src/REL/w03Dll/river.c | 163 ++-- src/REL/w03Dll/statue.c | 25 +- src/dolphin/mtx/mtx.c | 2 +- src/game/board/block.c | 13 +- 67 files changed, 1662 insertions(+), 1545 deletions(-) diff --git a/config/GMPE01_00/rels/mgmodedll/symbols.txt b/config/GMPE01_00/rels/mgmodedll/symbols.txt index 5a1f7053..a969c989 100644 --- a/config/GMPE01_00/rels/mgmodedll/symbols.txt +++ b/config/GMPE01_00/rels/mgmodedll/symbols.txt @@ -531,8 +531,8 @@ lbl_1_bss_2CC = .bss:0x000002CC; // type:object size:0x2 data:2byte lbl_1_bss_2CE = .bss:0x000002CE; // type:object size:0x2 data:2byte lbl_1_bss_2D0 = .bss:0x000002D0; // type:object size:0x4 data:4byte lbl_1_bss_2D4 = .bss:0x000002D4; // type:object size:0x4 data:4byte -lbl_1_bss_2D8 = .bss:0x000002D8; // type:object size:0x4 data:4byte -lbl_1_bss_2DC = .bss:0x000002DC; // type:object size:0x4 data:4byte +objman = .bss:0x000002D8; // type:object size:0x4 data:4byte +outViewObj = .bss:0x000002DC; // type:object size:0x4 data:4byte lbl_1_bss_2E2 = .bss:0x000002E2; // type:object size:0x2 data:2byte lbl_1_bss_2E4 = .bss:0x000002E4; // type:object size:0x2 data:2byte lbl_1_bss_2E6 = .bss:0x000002E6; // type:object size:0x2 data:2byte diff --git a/include/PowerPC_EABI_Support/MetroTRK/trk.h b/include/PowerPC_EABI_Support/MetroTRK/trk.h index 66b36f3b..f7fa1c09 100644 --- a/include/PowerPC_EABI_Support/MetroTRK/trk.h +++ b/include/PowerPC_EABI_Support/MetroTRK/trk.h @@ -12,7 +12,7 @@ extern "C" { typedef enum { HARDWARE_AMC_DDH = 0, HARDWARE_GDEV = 1, - HARDWARE_BBA = 2, + HARDWARE_BBA = 2 } HardwareType; // DS Error returns. @@ -37,7 +37,7 @@ enum { DS_InvalidThreadID = 0x705, DS_OSError = 0x706, - DS_Error800 = 0x800, + DS_Error800 = 0x800 }; typedef int DSError; @@ -46,14 +46,14 @@ typedef int DSError; typedef enum { DS_Stdin = 0, DS_Stdout = 1, - DS_Stderr = 2, + DS_Stderr = 2 } DSFileHandle; // IO returns. typedef enum { DS_IONoError = 0, DS_IOError = 1, - DS_IOEOF = 2, + DS_IOEOF = 2 } DSIOResult; // Message command IDs @@ -86,7 +86,7 @@ typedef enum { DSMSG_CloseFile = 0xD3, DSMSG_PositionFile = 0xD4, - DSMSG_ReplyNAK = 0xFF, + DSMSG_ReplyNAK = 0xFF } MessageCommandID; // Register commands. @@ -94,7 +94,7 @@ typedef enum { DSREG_Default = 0, DSREG_FP = 1, DSREG_Extended1 = 2, - DSREG_Extended2 = 3, + DSREG_Extended2 = 3 } DSMessageRegisterOptions; // Step commands. @@ -102,7 +102,7 @@ typedef enum { DSSTEP_IntoCount = 0x0, DSSTEP_IntoRange = 0x1, DSSTEP_OverCount = 0x10, - DSSTEP_OverRange = 0x11, + DSSTEP_OverRange = 0x11 } DSMessageStepOptions; typedef enum { @@ -128,14 +128,14 @@ typedef enum { DSREPLY_OSError = 0x20, DSREPLY_InvalidProcessID = 0x21, DSREPLY_InvalidThreadID = 0x22, - DSREPLY_DebugSecurityError = 0x23, + DSREPLY_DebugSecurityError = 0x23 } DSReplyError; typedef enum { DSRECV_Wait = 0, DSRECV_Found = 1, DSRECV_InFrame = 2, - DSRECV_FrameOverflow = 3, + DSRECV_FrameOverflow = 3 } ReceiverState; typedef enum { @@ -154,17 +154,17 @@ typedef enum { NUBEVENT_Request = 2, NUBEVENT_Breakpoint = 3, NUBEVENT_Exception = 4, - NUBEVENT_Support = 5, + NUBEVENT_Support = 5 } NubEventType; typedef enum { VALIDMEM_Readable = 0, - VALIDMEM_Writeable = 1, + VALIDMEM_Writeable = 1 } ValidMemoryOptions; typedef enum { MEMACCESS_UserMemory = 0, - MEMACCESS_DebuggerMemory = 1, + MEMACCESS_DebuggerMemory = 1 } MemoryAccessOptions; typedef int UARTError; @@ -174,7 +174,7 @@ typedef enum { UART_UnknownBaudRate = 1, UART_ConfigurationError = 2, UART_BufferOverflow = 3, // specified buffer was too small - UART_NoData = 4, // no data available from polling + UART_NoData = 4 // no data available from polling } UARTErrorOptions; typedef enum { diff --git a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h index a1fb6fdc..2e0e8010 100644 --- a/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h +++ b/include/PowerPC_EABI_Support/Msl/MSL_C/MSL_Common/ansi_files.h @@ -28,13 +28,13 @@ enum __file_kinds { __disk_file, __console_file, __string_file, - __unavailable_file, + __unavailable_file }; enum __file_orientation { /* 0x0 */ UNORIENTED, /* 0x1 */ CHAR_ORIENTED, - /* 0x2 */ WIDE_ORIENTED, + /* 0x2 */ WIDE_ORIENTED }; typedef struct _file_modes { @@ -50,20 +50,20 @@ enum __io_modes { __read = 1, __write = 2, __read_write = 3, - __append = 4, + __append = 4 }; enum __io_states { __neutral, __writing, __reading, - __rereading, + __rereading }; enum __io_results { __no_io_error, __io_error, - __io_EOF, + __io_EOF }; typedef struct _file_states { diff --git a/include/REL/m407dll.h b/include/REL/m407dll.h index a5dbf0fb..525a406d 100644 --- a/include/REL/m407dll.h +++ b/include/REL/m407dll.h @@ -5,6 +5,53 @@ #define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) -typedef void (*ObjFuncs)(omObjData*); +typedef void (*VoidFuncs)(void); +typedef void (*ObjFuncs)(omObjData *); + +void fn_1_F4(Process *arg0); +void fn_1_194(void); +void fn_1_1E4(void); +void fn_1_238(void); +void fn_1_28C(void); +void fn_1_2E0(void); +void fn_1_334(void); +void fn_1_388(u8, s32); +void fn_1_3C4(u8); +void fn_1_404(void); +s32 fn_1_508(u8); +s32 fn_1_53C(u8); +void fn_1_568(s16, s16, s16); + +void fn_1_14F0(Process *arg0, s32 arg1); +void fn_1_15D8(void); + +void fn_1_1B1C(Process *arg0); +void fn_1_1CA8(void); +void fn_1_1CAC(float, float, float); +void fn_1_1CD4(float *arg0, float *arg1, float *arg2); +s32 fn_1_1D88(void); +void fn_1_1DB0(Vec *arg0, Vec *arg1, float *arg2, s32 arg3, s32 arg4); + +void fn_1_2354(Process *arg0); +void fn_1_2564(void); +void fn_1_25C0(void); +s32 fn_1_2880(void); +#ifndef __MWERKS__ +s16 fn_1_28B8(u8 arg0); +s16 fn_1_28D4(void); +#endif + +void fn_1_3AC8(Process *arg0); +void fn_1_3B68(void); + +void fn_1_41CC(Process *arg0); +void fn_1_44F4(void); + +void fn_1_4980(Process *arg0); +void fn_1_4C6C(omObjData *obj); + +void fn_1_5C5C(Process *arg0, s16 arg1); +void fn_1_5ECC(void); +void fn_1_5F40(s32 arg0); #endif diff --git a/include/REL/m409Dll.h b/include/REL/m409Dll.h index 76459447..1f7519b4 100644 --- a/include/REL/m409Dll.h +++ b/include/REL/m409Dll.h @@ -3,17 +3,18 @@ #include "dolphin.h" -#include "game/object.h" #include "game/animdata.h" #include "game/hsfanim.h" +#include "game/object.h" + extern s32 rand8(void); // types -typedef void (*m409Func6)(ModelData*, struct _unkStruct6*, Mtx); -typedef void (*m409PlayerFunc8)(struct _unkStruct8*); +typedef void (*m409Func6)(ModelData *, struct _unkStruct6 *, Mtx); +typedef void (*m409PlayerFunc8)(struct _unkStruct8 *); typedef struct _unkStruct { - f32 zoom; + float zoom; Vec center; Vec rot; } unkStruct; @@ -27,14 +28,14 @@ typedef struct _unkStruct3 { s8 unk0; s8 unk1; s16 unk2; - struct _unkStruct4* unk4; + struct _unkStruct4 *unk4; s16 unk8; s16 unkA; s16 unkC; s16 unkE; s16 unk10; s16 unk12; - f32 unk14; + float unk14; } unkStruct3; typedef struct _unkStruct4 { @@ -49,26 +50,26 @@ typedef struct _unkStruct4 { s16 unkA; s16 unkC; s16 unkE; - f32 unk10; + float unk10; s16 unk14; s16 unk16; - f32 unk18; - f32 unk1C; - struct _unkStruct4* unk20; + float unk18; + float unk1C; + struct _unkStruct4 *unk20; } unkStruct4; // sizeof 0x24 typedef struct _unkStruct5 { Vec unk0; Vec unkC; - f32 unk18; - f32 unk1C; - f32 unk20; - f32 unk24; + float unk18; + float unk1C; + float unk20; + float unk24; s16 unk28; s16 unk2A; s16 unk2C; s16 unk2E; - f32 unk30; + float unk30; Vec unk34; Vec unk40; s16 unk4C; @@ -81,20 +82,20 @@ typedef struct _unkStruct6 { u32 unk4; u8 unk8; m409Func6 unkC; - AnimData* unk10; + AnimData *unk10; s16 unk14; - unkStruct5* unk18; - Vec* unk1C; - HsfVector2f* unk20; - GXColor* unk24; - void* unk28; + unkStruct5 *unk18; + Vec *unk1C; + HsfVector2f *unk20; + GXColor *unk24; + void *unk28; Vec unk2C; Vec unk38; Vec unk44; Vec unk50; - HsfVector2f* unk5C; - f32 unk60; - f32 unk64; + HsfVector2f *unk5C; + float unk60; + float unk64; } unkStruct6; // sizeof 0x68 typedef struct _unkStruct7 { @@ -147,22 +148,22 @@ typedef struct _unkStruct8Sub { u8 unk32; u32 unk34; s16 unk38; - void* unk3C; - void* unk40; - void* unk44; - Vec* unk48; + void *unk3C; + void *unk40; + void *unk44; + Vec *unk48; GXColor unk4C; GXColor unk50; - struct _unkStruct12* unk54; + struct _unkStruct12 *unk54; Vec unk58; Vec unk64; union { s16 unk70[0x10]; struct { s16 unk70s; - f32 unk74; - f32 unk78; - f32 unk7C; + float unk74; + float unk78; + float unk7C; }; }; } unkStruct8Sub; // sizeof 0x90 @@ -177,9 +178,9 @@ typedef struct _unkStruct8 { Vec unk18; Vec unk24; m409PlayerFunc8 unk30; - s16* unk34; + s16 *unk34; char unk38[0x4]; - unkStruct8Sub* unk3C; + unkStruct8Sub *unk3C; char unk40[0x8]; Vec unk48; Vec unk54; @@ -187,7 +188,7 @@ typedef struct _unkStruct8 { } unkStruct8; // sizeof 0xA0 typedef struct _unkStruct9Sub { - AnimData* unk0; + AnimData *unk0; s16 unk4; s16 unk6; u32 unk8; @@ -197,10 +198,10 @@ typedef struct _unkStruct9Sub { u8 unk4C; s16 unk4E; s16 unk50; - f32 unk54; - f32 unk58; - f32 unk5C; - f32 unk60; + float unk54; + float unk58; + float unk5C; + float unk60; } unkStruct9Sub; // sizeof 0x64 typedef struct _unkStruct9 { @@ -210,8 +211,8 @@ typedef struct _unkStruct9 { s16 unk6; s16 unk8; s16 unkA; - unkStruct9Sub* unkC; - unkStruct8* unk10; + unkStruct9Sub *unkC; + unkStruct8 *unk10; } unkStruct9; // sizeof 0x14 typedef struct _unkStruct10 { @@ -221,7 +222,7 @@ typedef struct _unkStruct10 { u8 unk3; u8 unk4; char unk5[0x3]; - f32 unk8; + float unk8; Vec unkC; Vec unk18; Vec unk24; @@ -229,7 +230,7 @@ typedef struct _unkStruct10 { Vec unk3C; s8 unk48; char unk49[0x3]; - f32 unk4C; + float unk4C; } unkStruct10; // sizeof 0x50 typedef struct unkStruct11 { @@ -243,11 +244,11 @@ typedef struct _unkStruct12 { s8 unk0; s8 unk1; s16 unk2; - HsfVector2f* unk4; + HsfVector2f *unk4; u8 unk8; s16 unkA; - f32 unkC; - f32 unk10; + float unkC; + float unk10; } unkStruct12; // bss @@ -255,78 +256,78 @@ extern unkStruct9 lbl_1_bss_F0; // prototypes void ObjectSetup(void); -void fn_1_434(omObjData* object); -void fn_1_4DC(omObjData* object); +void fn_1_434(omObjData *object); +void fn_1_4DC(omObjData *object); s8 fn_1_524(void); s8 fn_1_B80(void); -void fn_1_DDC(omObjData* object); -void fn_1_F70(omObjData* object); -s8 fn_1_10E8(omObjData* object); -s8 fn_1_1B74(omObjData* object); -void fn_1_2098(omObjData* object); +void fn_1_DDC(omObjData *object); +void fn_1_F70(omObjData *object); +s8 fn_1_10E8(omObjData *object); +s8 fn_1_1B74(omObjData *object); +void fn_1_2098(omObjData *object); void fn_1_23EC(s16); void fn_1_2414(u16, u16); u16 fn_1_2454(u16); -void fn_1_2484(omObjData* object); -void fn_1_2DCC(omObjData* object); +void fn_1_2484(omObjData *object); +void fn_1_2DCC(omObjData *object); void fn_1_3840(void); -void fn_1_3988(unkStruct4*, s16, s16); -s32 fn_1_3AD8(s32, f32, f32, f32, f32, f32, f32); +void fn_1_3988(unkStruct4 *, s16, s16); +s32 fn_1_3AD8(s32, float, float, float, float, float, float); void fn_1_40A4(Mtx, Mtx); -f32 fn_1_4120(f32, f32, f32, f32); +float fn_1_4120(float, float, float, float); void fn_1_417C(void); -void fn_1_44F0(s16, f32, f32, f32, s8, s16); -void fn_1_4FFC(s16, f32, f32, f32, s16); -void fn_1_5408(ModelData*, unkStruct6*, Mtx); -void fn_1_55E0(ModelData*, unkStruct6*, Mtx); -void fn_1_57DC(ModelData*, unkStruct6*, Mtx); -unkStruct5* fn_1_58E0(s16, Vec*, Vec*, f32, GXColor*); -s16 fn_1_5A18(AnimData*, s16, f32, s16, s16); +void fn_1_44F0(s16, float, float, float, s8, s16); +void fn_1_4FFC(s16, float, float, float, s16); +void fn_1_5408(ModelData *, unkStruct6 *, Mtx); +void fn_1_55E0(ModelData *, unkStruct6 *, Mtx); +void fn_1_57DC(ModelData *, unkStruct6 *, Mtx); +unkStruct5 *fn_1_58E0(s16, Vec *, Vec *, float, GXColor *); +s16 fn_1_5A18(AnimData *, s16, float, s16, s16); void fn_1_5F5C(s16); void fn_1_5FBC(s16, m409Func6); void fn_1_5FF4(s16, u8); -void fn_1_602C(ModelData*, Mtx); -void fn_1_6608(HsfVector2f*, s16, s16, f32, f32); -void fn_1_66D4(HsfVector2f*, HsfVector2f*, s16, f32, f32); -void fn_1_6778(Vec*, Vec*, Vec*, s16); +void fn_1_602C(ModelData *, Mtx); +void fn_1_6608(HsfVector2f *, s16, s16, float, float); +void fn_1_66D4(HsfVector2f *, HsfVector2f *, s16, float, float); +void fn_1_6778(Vec *, Vec *, Vec *, s16); // player.c -void fn_1_67E0(Process*); +void fn_1_67E0(Process *); void fn_1_6900(void); -void fn_1_6928(omObjData*); -void fn_1_7344(omObjData*); -void fn_1_7FE8(omObjData*); -void fn_1_8838(unkStruct8*); +void fn_1_6928(omObjData *); +void fn_1_7344(omObjData *); +void fn_1_7FE8(omObjData *); +void fn_1_8838(unkStruct8 *); s8 fn_1_8D08(u8); -void fn_1_8D6C(unkStruct8*); -void fn_1_91C0(omObjData*); -void fn_1_962C(omObjData*); -s32 fn_1_A584(unkStruct10*); -s8 fn_1_A9C0(Vec*, f32*); +void fn_1_8D6C(unkStruct8 *); +void fn_1_91C0(omObjData *); +void fn_1_962C(omObjData *); +s32 fn_1_A584(unkStruct10 *); +s8 fn_1_A9C0(Vec *, float *); s32 fn_1_ABB4(void); -void fn_1_AC08(s32*, s32); -f32 fn_1_AD40(f32, f32, f32); -f32 fn_1_AE94(f32, f32, f32, f32); -void fn_1_AF0C(f32*, f32*, f32*, f32*, f32); -f32 fn_1_B028(f32, f32, f32, f32); -void fn_1_B0A0(f32*, f32*, f32*, f32*, f32); -f32 fn_1_B378(Vec*); -f32 fn_1_B6A4(Vec*, Vec*, Vec*); -f32 fn_1_B9E0(Vec*, Vec*, Vec*, Vec*, Vec*); -f32 fn_1_BF38(s16); +void fn_1_AC08(s32 *, s32); +float fn_1_AD40(float, float, float); +float fn_1_AE94(float, float, float, float); +void fn_1_AF0C(float *, float *, float *, float *, float); +float fn_1_B028(float, float, float, float); +void fn_1_B0A0(float *, float *, float *, float *, float); +float fn_1_B378(Vec *); +float fn_1_B6A4(Vec *, Vec *, Vec *); +float fn_1_B9E0(Vec *, Vec *, Vec *, Vec *, Vec *); +float fn_1_BF38(s16); // cursor.c void fn_1_BF88(s16, s16); void fn_1_C0C0(void); -void fn_1_C164(unkStruct8*); -void fn_1_CB98(ModelData* model, Mtx matrix); -unkStruct8* fn_1_CCB0(s16 idx); -unkStruct8Sub* fn_1_CCCC(s16, s16); -void fn_1_CCF8(unkStruct11**, s16, f32, f32); -void fn_1_CE7C(Vec**, s16, Vec*); -void fn_1_CF1C(GXColor**, s16, GXColor*); -void fn_1_CFC4(Vec**, s16, Vec*); -void fn_1_D050(HsfVector2f**, s16, HsfVector2f*); -void fn_1_D0E8(unkStruct8Sub*); -void fn_1_D430(unkStruct8*); +void fn_1_C164(unkStruct8 *); +void fn_1_CB98(ModelData *model, Mtx matrix); +unkStruct8 *fn_1_CCB0(s16 idx); +unkStruct8Sub *fn_1_CCCC(s16, s16); +void fn_1_CCF8(unkStruct11 **, s16, float, float); +void fn_1_CE7C(Vec **, s16, Vec *); +void fn_1_CF1C(GXColor **, s16, GXColor *); +void fn_1_CFC4(Vec **, s16, Vec *); +void fn_1_D050(HsfVector2f **, s16, HsfVector2f *); +void fn_1_D0E8(unkStruct8Sub *); +void fn_1_D430(unkStruct8 *); s16 fn_1_DA48(u8, u8); void fn_1_DDB8(s16); void fn_1_DEF4(s16, s16, u8); @@ -334,19 +335,19 @@ s16 fn_1_DF20(u32, s16, s16); void fn_1_E228(s16); s32 fn_1_E2A8(s16, u8, u32, s16, s16); s32 fn_1_E7C8(s16, u8, u32); -void fn_1_E818(s16, f32, f32, f32); -void fn_1_E85C(s16, s16, f32, f32, f32); -void fn_1_E8CC(s16, f32, f32, f32); -void fn_1_E940(s16, f32, f32, f32); -void fn_1_E99C(s16, s16, f32, f32, f32); -void fn_1_E940(s16, f32, f32, f32); -void fn_1_EA24(s16, f32, f32, f32); -void fn_1_EAB0(s16, f32, f32, f32); -void fn_1_EAF4(s16, s16, f32, f32, f32); -void fn_1_EB64(s16, f32, f32, f32); -void fn_1_EBD8(s16, f32, f32, f32); -void fn_1_EC1C(s16, s16, f32, f32, f32); -void fn_1_EC8C(s16, f32, f32, f32); +void fn_1_E818(s16, float, float, float); +void fn_1_E85C(s16, s16, float, float, float); +void fn_1_E8CC(s16, float, float, float); +void fn_1_E940(s16, float, float, float); +void fn_1_E99C(s16, s16, float, float, float); +void fn_1_E940(s16, float, float, float); +void fn_1_EA24(s16, float, float, float); +void fn_1_EAB0(s16, float, float, float); +void fn_1_EAF4(s16, s16, float, float, float); +void fn_1_EB64(s16, float, float, float); +void fn_1_EBD8(s16, float, float, float); +void fn_1_EC1C(s16, s16, float, float, float); +void fn_1_EC8C(s16, float, float, float); void fn_1_ED00(s16, s32); void fn_1_ED44(s16, s16, s32); void fn_1_EDB4(s16, s32); @@ -360,9 +361,9 @@ void fn_1_F098(s16, u8, u8, u8, u8); void fn_1_F110(s16, s16, u8); void fn_1_F17C(s16, s16, u8, u8); void fn_1_F1F4(s16, u8); -void fn_1_F28C(s16, s16, f32); -void fn_1_F2F8(s16, s16, u8, f32); -void fn_1_F370(s16, f32); +void fn_1_F28C(s16, s16, float); +void fn_1_F2F8(s16, s16, u8, float); +void fn_1_F370(s16, float); void fn_1_F408(s16, s16, u8); void fn_1_F478(s16, s16, u8, u8); void fn_1_F4F0(s16, u8); diff --git a/include/REL/m412Dll.h b/include/REL/m412Dll.h index 2017123c..d9749a81 100644 --- a/include/REL/m412Dll.h +++ b/include/REL/m412Dll.h @@ -3,8 +3,9 @@ #include "dolphin.h" -#include "game/object.h" #include "game/hsfman.h" +#include "game/object.h" + // types typedef struct _unkStruct { @@ -18,8 +19,8 @@ typedef struct _unkStruct { Vec unk10; HsfVector2f unk1C; Vec unk24; - f32 unk30; - f32 unk34; + float unk30; + float unk34; } unkStruct; typedef struct _unkStruct2 { @@ -58,7 +59,7 @@ typedef struct _unkStruct3 { HsfVector2f unk4C; Vec unk54; Vec unk60; - f32 unk6C; + float unk6C; char unk70[0xC]; Vec unk7C; s8 unk88; @@ -68,7 +69,7 @@ typedef struct _unkStruct3 { u16 unk8C; u16 unk8E; HsfVector2f unk90; - f32 unk98; + float unk98; s32 unk9C; s32 unkA0; s32 unkA4; @@ -83,38 +84,38 @@ typedef struct _unkStruct4 { // prototypes void ObjectSetup(void); -void* fn_1_6EC(f32, f32, f32, s32); +void *fn_1_6EC(float, float, float, s32); void fn_1_73C(void); void fn_1_7BC(void); -void fn_1_894(omObjData* object); -void fn_1_898(omObjData* object); +void fn_1_894(omObjData *object); +void fn_1_898(omObjData *object); void fn_1_8BC(void); -f32 fn_1_1D08(f32); +float fn_1_1D08(float); void fn_1_1D88(void); void fn_1_1DBC(void); void fn_1_2014(void); void fn_1_2064(void); s32 fn_1_2708(void); -f32 fn_1_27C4(s32, f32, f32); +float fn_1_27C4(s32, float, float); void fn_1_2A1C(void); void fn_1_3950(void); s8 fn_1_4BE4(s32, s32); -void fn_1_4C9C(Vec*, f32, f32); +void fn_1_4C9C(Vec *, float, float); s8 fn_1_4E58(s32, s32); u8 fn_1_525C(s32, s32); u16 fn_1_531C(s32); u16 fn_1_5388(s32); -s32 fn_1_53F4(unkStruct3*, f32, f32, f32); -s32 fn_1_561C(unkStruct3*, s32*); -void fn_1_5838(unkStruct3*); -f32 fn_1_6594(f32, f32, f32); -f32 fn_1_6698(f32, f32, unkStruct3*); -void fn_1_6814(unkStruct3*); +s32 fn_1_53F4(unkStruct3 *, float, float, float); +s32 fn_1_561C(unkStruct3 *, s32 *); +void fn_1_5838(unkStruct3 *); +float fn_1_6594(float, float, float); +float fn_1_6698(float, float, unkStruct3 *); +void fn_1_6814(unkStruct3 *); void fn_1_7C60(void); -void fn_1_A01C(ModelData* model, ParticleData* particle, Mtx matrix); -void fn_1_A618(ModelData* model, ParticleData* particle, Mtx matrix); +void fn_1_A01C(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_A618(ModelData *model, ParticleData *particle, Mtx matrix); //... -void fn_1_AA88(ModelData* model, ParticleData* particle, Mtx matrix); // * +void fn_1_AA88(ModelData *model, ParticleData *particle, Mtx matrix); // * void fn_1_B160(void); // * void fn_1_B1C0(void); // * diff --git a/include/REL/m415Dll.h b/include/REL/m415Dll.h index c202ca5b..0be73a76 100644 --- a/include/REL/m415Dll.h +++ b/include/REL/m415Dll.h @@ -53,10 +53,10 @@ typedef struct _unkStruct3 { s16 unk16; s16 unk18; s16 unk1A; - f32 unk1C; - f32 unk20; - f32 unk24; - f32 unk28; + float unk1C; + float unk20; + float unk24; + float unk28; Vec unk2C; Vec unk38; Vec unk44; @@ -64,7 +64,7 @@ typedef struct _unkStruct3 { u8 unk5C; u8 unk5D; union { - s32* unk60; + s32 *unk60; struct { s16 unk60s; s16 unk62s; @@ -90,18 +90,18 @@ typedef struct _unkStruct4 { Vec unk88[3]; Vec unkAC[3]; Vec unkD0[3]; - f32 unkF4[3]; - f32 unk100[3]; - f32 unk10C[3]; - f32 unk118[3]; - f32 unk124[3]; - f32 unk130; - f32 unk134; - f32 unk138; - f32 unk13C; - f32 unk140; - f32 unk144; - f32 unk148; + float unkF4[3]; + float unk100[3]; + float unk10C[3]; + float unk118[3]; + float unk124[3]; + float unk130; + float unk134; + float unk138; + float unk13C; + float unk140; + float unk144; + float unk148; } unkStruct4; typedef struct _unkSubStruct4 { @@ -111,8 +111,8 @@ typedef struct _unkSubStruct4 { HsfVector2f unk4[4]; u8 unk24; char unk25[0x3]; - f32 unk28; - f32 unk2C; + float unk28; + float unk2C; } unkSubStruct4; // taken from m438 @@ -127,24 +127,24 @@ typedef struct _unkSubStruct { u8 unk33; u32 unk34; s16 unk38; - void* unk3C; - Vec* unk40; - GXColor* unk44; - Vec* unk48; + void *unk3C; + Vec *unk40; + GXColor *unk44; + Vec *unk48; GXColor unk4C; GXColor unk50; - unkSubStruct4* unk54; + unkSubStruct4 *unk54; u8 unk58; char unk59[0x3]; Vec unk5C; Vec unk68; s16 unk74[2]; - s16* unk78; - s16* unk7C; + s16 *unk78; + s16 *unk7C; char unk80[0x14]; } unkSubStruct; /* size = 0x94 */ -typedef void (*unkSubStruct2Func)(struct _unkSubStruct2*); +typedef void (*unkSubStruct2Func)(struct _unkSubStruct2 *); typedef struct _unkSubStruct2 { s16 unk0; @@ -154,18 +154,18 @@ typedef struct _unkSubStruct2 { Vec unkC; Vec unk18; Vec unk24; - void (*unk30)(struct _unkSubStruct2*); - s16* unk34; + void (*unk30)(struct _unkSubStruct2 *); + s16 *unk34; s16 unk38; char unk3A[2]; unkSubStruct *unk3C; char unk40[0x8]; s16 unk48; - char* unk4C; - Vec* unk50; - GXColor* unk54; - Vec* unk58; - unkSubStruct4* unk5C; + char *unk4C; + Vec *unk50; + GXColor *unk54; + Vec *unk58; + unkSubStruct4 *unk5C; u8 unk60; char unk61[0x3]; Vec unk64; @@ -186,7 +186,7 @@ typedef struct _unkSubStruct2 { } unkSubStruct2; /* size = 0xBC */ typedef struct _unkSubStruct3 { - AnimData* unk0; + AnimData *unk0; s16 unk4; s16 unk6; u32 unk8; @@ -198,10 +198,10 @@ typedef struct _unkSubStruct3 { s16 unk4E; s16 unk50; char unk52[0x2]; - f32 unk54; - f32 unk58; - f32 unk5C; - f32 unk60; + float unk54; + float unk58; + float unk5C; + float unk60; } unkSubStruct3; /* size = 0x64 */ typedef struct _unkStruct5 { @@ -228,38 +228,38 @@ extern unkStruct5 lbl_1_bss_36C; // prototypes // main.c -void fn_1_43C(omObjData* object); -void fn_1_4B0(omObjData* object); -void fn_1_7D8(omObjData* object); -void fn_1_14C0(omObjData* object); -void fn_1_15D0(omObjData* object); -void fn_1_1960(omObjData* object); -void fn_1_2B18(omObjData* object); -void fn_1_2C14(omObjData* object); -void fn_1_2E88(f32, Vec*, Vec*, f32); -void fn_1_3208(omObjData* object); -void fn_1_3640(omObjData* object); -void fn_1_3764(omObjData* object); -void fn_1_3B44(omObjData* object); -void fn_1_4660(omObjData* object); -void fn_1_5B20(unkSubStruct2*); -void fn_1_6304(omObjData* object); +void fn_1_43C(omObjData *object); +void fn_1_4B0(omObjData *object); +void fn_1_7D8(omObjData *object); +void fn_1_14C0(omObjData *object); +void fn_1_15D0(omObjData *object); +void fn_1_1960(omObjData *object); +void fn_1_2B18(omObjData *object); +void fn_1_2C14(omObjData *object); +void fn_1_2E88(float, Vec *, Vec *, float); +void fn_1_3208(omObjData *object); +void fn_1_3640(omObjData *object); +void fn_1_3764(omObjData *object); +void fn_1_3B44(omObjData *object); +void fn_1_4660(omObjData *object); +void fn_1_5B20(unkSubStruct2 *); +void fn_1_6304(omObjData *object); void fn_1_6368(void); -void* fn_1_63A8(s32); +void *fn_1_63A8(s32); void fn_1_64DC(void); -AnimBmpData* fn_1_668C(s16); +AnimBmpData *fn_1_668C(s16); s16 fn_1_66AC(void); s32 fn_1_679C(void); -f32 fn_1_67F0(f32, f32, f32); -void fn_1_6A78(Mtx, Vec*); -void fn_1_7268(f32*, f32*, f32*, s32); -f32 fn_1_7520(f32, f32*, f32*, f32*, s32); -void fn_1_7674(f32*, Vec*, Vec*, s32); -void fn_1_7A54(f32, Vec*, f32*, Vec*, Vec*, s32); +float fn_1_67F0(float, float, float); +void fn_1_6A78(Mtx, Vec *); +void fn_1_7268(float *, float *, float *, s32); +float fn_1_7520(float, float *, float *, float *, s32); +void fn_1_7674(float *, Vec *, Vec *, s32); +void fn_1_7A54(float, Vec *, float *, Vec *, Vec *, s32); // map.c -void fn_1_95C0(ModelData*, Mtx); -AnimData** fn_1_9734(s16); -void fn_1_9DC8(unkSubStruct2*); +void fn_1_95C0(ModelData *, Mtx); +AnimData **fn_1_9734(s16); +void fn_1_9DC8(unkSubStruct2 *); s16 fn_1_A2D0(u8, u8); void fn_1_A800(s16); s16 fn_1_A94C(u32, s16, s16); @@ -267,12 +267,12 @@ void fn_1_ACF4(s16, s16, s16, s16, s16, s16); void fn_1_AF48(s16); u8 fn_1_AFC8(s16, u8, s32, s16, s16); s32 fn_1_B0B8(s16, u8, s16); -void fn_1_B864(s16, f32, f32, f32); -void fn_1_BB4C(s16, f32, f32, f32); -void fn_1_BC9C(s16, f32, f32, f32); -void fn_1_BD08(s16, s16, f32, f32, f32); +void fn_1_B864(s16, float, float, float); +void fn_1_BB4C(s16, float, float, float); +void fn_1_BC9C(s16, float, float, float); +void fn_1_BD08(s16, s16, float, float, float); void fn_1_C264(s16, u8); void fn_1_C2D0(s16, s16, u8); void fn_1_C410(s16, s16, u8, u8); -void fn_1_C58C(s16, s16, u8, f32); -void fn_1_C81C(s16, u8); \ No newline at end of file +void fn_1_C58C(s16, s16, u8, float); +void fn_1_C81C(s16, u8); diff --git a/include/REL/m418Dll.h b/include/REL/m418Dll.h index f21c4256..3ef089ba 100644 --- a/include/REL/m418Dll.h +++ b/include/REL/m418Dll.h @@ -18,10 +18,10 @@ typedef struct M418DllUnkStruct { Vec unk10; // sequence center Vec rot; Vec unk28; // sequence rot - f32 zoom; - f32 unk38; // sequence zoom - f32 unk3C[3]; - f32 unk48; + float zoom; + float unk38; // sequence zoom + float unk3C[3]; + float unk48; } M418DllUnkStruct; // sizeof 0x4C typedef struct M418DllUnkStruct8 { @@ -32,27 +32,27 @@ typedef struct M418DllUnkStruct8 { typedef struct M418DllUnkStruct7 { s32 unk0; - M418DllUnkStruct8* unk4; + M418DllUnkStruct8 *unk4; s32 unk8; s32 unkC; M418DllFunc unk10; M418DllRetFunc unk14; } M418DllUnkStruct7; // sizeof 0x18 -f32 fn_1_A920(f32, f32, f32); -f32 fn_1_A940(f32, f32, f32, f32); -f32 fn_1_AA30(f32, f32, f32, f32); -void fn_1_ABC4(omObjData*, s32, s32, s32, s32); -void fn_1_AD14(omObjData*, s32, s32, s32, s32); -void fn_1_AEDC(M418DllUnkStruct7*, M418DllUnkStruct8*); -s32 fn_1_AF38(M418DllUnkStruct7*); -s32 fn_1_B034(M418DllUnkStruct7*, s32); -s32 fn_1_B0C8(M418DllUnkStruct7*, s32); -void fn_1_B104(M418DllUnkStruct*, Vec, Vec); -void fn_1_B41C(M418DllUnkStruct*); -void fn_1_B458(M418DllUnkStruct*); -void fn_1_BEAC(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); -void fn_1_CBF8(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); -void fn_1_DC10(M418DllUnkStruct*, M418DllUnkStruct*, f32, f32, f32); +float fn_1_A920(float, float, float); +float fn_1_A940(float, float, float, float); +float fn_1_AA30(float, float, float, float); +void fn_1_ABC4(omObjData *, s32, s32, s32, s32); +void fn_1_AD14(omObjData *, s32, s32, s32, s32); +void fn_1_AEDC(M418DllUnkStruct7 *, M418DllUnkStruct8 *); +s32 fn_1_AF38(M418DllUnkStruct7 *); +s32 fn_1_B034(M418DllUnkStruct7 *, s32); +s32 fn_1_B0C8(M418DllUnkStruct7 *, s32); +void fn_1_B104(M418DllUnkStruct *, Vec, Vec); +void fn_1_B41C(M418DllUnkStruct *); +void fn_1_B458(M418DllUnkStruct *); +void fn_1_BEAC(M418DllUnkStruct *, M418DllUnkStruct *, float, float, float); +void fn_1_CBF8(M418DllUnkStruct *, M418DllUnkStruct *, float, float, float); +void fn_1_DC10(M418DllUnkStruct *, M418DllUnkStruct *, float, float, float); #endif diff --git a/include/REL/m424Dll.h b/include/REL/m424Dll.h index 5b3dfaa8..ac79d774 100644 --- a/include/REL/m424Dll.h +++ b/include/REL/m424Dll.h @@ -5,11 +5,11 @@ typedef struct _M424DllMainStruct { Vec rot; Vec center; - f32 zoom; + float zoom; } M424DllMainStruct; // sizeof 1C typedef struct _M424DllBallStruct2 { - omObjData* unk0; + omObjData *unk0; u8 unk4; u8 unk5; u8 unk6; @@ -31,18 +31,18 @@ extern M424DllBallStruct2 lbl_1_bss_60[9]; extern u8 lbl_1_bss_58; extern s16 lbl_1_bss_24[4]; -f32 fn_1_1358(f32, f32); -f32 fn_1_1470(f32, f32, f32); -omObjData* fn_1_1AB8(Process*); +float fn_1_1358(float, float); +float fn_1_1470(float, float, float); +omObjData *fn_1_1AB8(Process *); void fn_1_1B8C(void); -f32 fn_1_213C(void); -void fn_1_252C(f32, s32); +float fn_1_213C(void); +void fn_1_252C(float, s32); void fn_1_2670(s32, s32); -void fn_1_2720(Process*); +void fn_1_2720(Process *); void fn_1_2880(void); -Vec* fn_1_8A00(u8); +Vec *fn_1_8A00(u8); s32 fn_1_8A2C(void); -omObjData* fn_1_93F0(Process*); +omObjData *fn_1_93F0(Process *); void fn_1_94A4(void); s32 fn_1_B804(void); s32 fn_1_B888(void); diff --git a/include/REL/m427Dll.h b/include/REL/m427Dll.h index ceda94c3..7c84b7a1 100644 --- a/include/REL/m427Dll.h +++ b/include/REL/m427Dll.h @@ -21,9 +21,9 @@ void fn_1_EC54(void); s32 fn_1_10FE8(s32 arg0, s32 *arg1); void fn_1_110E8(s32, s32 *); void fn_1_111C0(s32, s32 *); -void fn_1_11298(f32); +void fn_1_11298(float); s32 fn_1_113F0(s32); -f32 fn_1_168FC(f32, f32, f32); +float fn_1_168FC(float, float, float); s32 fn_1_15F10(Vec arg0, Vec arg1, s32 arg2, s32 arg3, s32 arg4); s32 fn_1_15FD0(Vec arg0, float arg8, s32 arg1, s32 arg2, s32 arg3); diff --git a/include/REL/m438Dll.h b/include/REL/m438Dll.h index 8279e1f2..828dd494 100644 --- a/include/REL/m438Dll.h +++ b/include/REL/m438Dll.h @@ -22,14 +22,14 @@ typedef struct M438UnkSubStruct { s8 unk_00; s8 unk_01; char unk02[0x2]; - f32 unk_04; - f32 unk_08; - f32 unk_0C; - f32 unk_10; - f32 unk_14; - f32 unk_18; - f32 unk_1C; - f32 unk_20; + float unk_04; + float unk_08; + float unk_0C; + float unk_10; + float unk_14; + float unk_18; + float unk_1C; + float unk_20; u8 unk_24; float unk_28; float unk_2C; @@ -47,13 +47,13 @@ typedef struct M438UnkStruct { u8 unk_34; u32 unk_38; s16 unk_3C; - void* unk_40; - Vec* unk_44; - GXColor* unk_48; - Vec* unk_4C; + void *unk_40; + Vec *unk_44; + GXColor *unk_48; + Vec *unk_4C; GXColor unk_50; GXColor unk_54; - M438UnkSubStruct* unk_58; + M438UnkSubStruct *unk_58; u8 unk_5C; char unk5D[0x3]; Vec unk_60; @@ -90,17 +90,17 @@ typedef struct M438UnkStruct2 { Vec unk_0C; Vec unk_18; Vec unk_24; - void (*unk_30)(struct M438UnkStruct2*); - s16* unk_34; + void (*unk_30)(struct M438UnkStruct2 *); + s16 *unk_34; char unk_38[0x4]; M438UnkStruct *unk_3C; char unk40[0x8]; s16 unk_48; - void* unk_4C; - Vec* unk_50; - GXColor* unk_54; - Vec* unk_58; - M438UnkSubStruct* unk_5C; + void *unk_4C; + Vec *unk_50; + GXColor *unk_54; + Vec *unk_58; + M438UnkSubStruct *unk_5C; u8 unk_60; char unk61[0x3]; Vec unk_64; @@ -121,7 +121,7 @@ typedef struct M438UnkStruct2 { } M438UnkStruct2; /* size = 0xBC */ typedef struct M438UnkStruct3 { - AnimData* unk_00; + AnimData *unk_00; s16 unk_04; s16 unk_06; u32 unk_08; @@ -133,10 +133,10 @@ typedef struct M438UnkStruct3 { s16 unk_4E; s16 unk_50; char unk52[0x2]; - f32 unk_54; - f32 unk_58; - f32 unk_5C; - f32 unk_60; + float unk_54; + float unk_58; + float unk_5C; + float unk_60; } M438UnkStruct3; /* size = 0x64 */ typedef struct M438StructBssDE4 { diff --git a/include/REL/m440Dll.h b/include/REL/m440Dll.h index ef9426e8..d7d2c5b8 100644 --- a/include/REL/m440Dll.h +++ b/include/REL/m440Dll.h @@ -10,12 +10,12 @@ extern s32 rand8(void); ////// TYPES ////// -typedef void (*m440Func5)(ModelData*, struct _unkStruct5*, Mtx); -typedef void (*m440Func6)(struct _unkStruct6*); -typedef void (*m440Func14)(struct _unkStruct14*); +typedef void (*m440Func5)(ModelData *, struct _unkStruct5 *, Mtx); +typedef void (*m440Func6)(struct _unkStruct6 *); +typedef void (*m440Func14)(struct _unkStruct14 *); typedef struct _unkStruct { - f32 zoom; + float zoom; Vec center; Vec rot; } unkStruct; @@ -30,37 +30,37 @@ typedef struct _unkStruct2 { char unk10[0xC]; s16 unk1C; char unk20[0x4]; - f32 unk24; + float unk24; char unk28[0x4]; s16 unk2C; s16 unk2E; - f32 unk30; + float unk30; } unkStruct2; typedef struct _unkStruct3 { char unk0[0x34]; - f32 unk34; + float unk34; char unk38[0x8]; - f32 unk40; + float unk40; } unkStruct3; typedef struct _unkStruct4 { Vec unk0; char unkC[0xC]; - f32 unk18; - f32 unk1C; + float unk18; + float unk1C; char unk20[0x4]; - f32 unk24; - f32 unk28; - f32 unk2C; - f32 unk30; + float unk24; + float unk28; + float unk2C; + float unk30; s16 unk34; s16 unk36; char unk38[0x4]; s32 unk3C; s16 unk40; s16 unk42; - f32 unk44; + float unk44; Vec unk48; Vec unk54; s16 unk60; @@ -73,20 +73,20 @@ typedef struct _unkStruct5 { u32 unk4; u8 unk8; m440Func5 unkC; - AnimData* unk10; + AnimData *unk10; s16 unk14; - unkStruct4* unk18; - Vec* unk1C; - HsfVector2f* unk20; - GXColor* unk24; - void* unk28; + unkStruct4 *unk18; + Vec *unk1C; + HsfVector2f *unk20; + GXColor *unk24; + void *unk28; Vec unk2C; Vec unk38; Vec unk44; Vec unk50; - HsfVector2f* unk5C; - f32 unk60; - f32 unk64; + HsfVector2f *unk5C; + float unk60; + float unk64; } unkStruct5; typedef struct _unkStruct6 { @@ -95,16 +95,16 @@ typedef struct _unkStruct6 { s16 unk4; s16 unk6; u32 unk8; - Vec* unkC; - Vec* unk10; - Vec* unk14; - Vec* unk18; - HsfVector2f* unk1C; + Vec *unkC; + Vec *unk10; + Vec *unk14; + Vec *unk18; + HsfVector2f *unk1C; s32 unk20; - struct _unkStruct8* unk24; - HsfMaterial* unk28; - HsfAttribute* unk2C; - void* unk30; + struct _unkStruct8 *unk24; + HsfMaterial *unk28; + HsfAttribute *unk2C; + void *unk30; u32 unk34; m440Func6 unk38; s16 unk3C; @@ -129,7 +129,7 @@ typedef struct _unkStruct8 { s16 unk1E; unkStruct11 unk20[3]; char unk38[0x30]; - f32 unk68[5]; + float unk68[5]; Vec unk7C; Vec unk88; Vec unk94; @@ -144,7 +144,7 @@ typedef struct _unkStruct10 { s16 unk2; unkStruct11 unk4[3]; u32 unk1C; - unkStruct11* unk20; + unkStruct11 *unk20; char unk24[0xC]; } unkStruct10; // sizeof 0x30 @@ -154,41 +154,41 @@ typedef struct _unkStruct12 { u8 unkB[3]; u8 unkE[3]; char unk12[0x2]; - f32 unk14; + float unk14; char unk18[0x4]; - f32 unk1C; + float unk1C; char unk20[0x10]; u32 unk30; u32 unk34; - s32* unk38; + s32 *unk38; } unkStruct12; typedef struct _unkStruct13 { char unk0[0xA]; u8 unkA; char unkB[0x15]; - f32 unk20; + float unk20; char unk24[0x40]; u32 unk64; u32 unk68; char unk6C[0x14]; - struct _unkStruct15* unk80; + struct _unkStruct15 *unk80; } unkStruct13; // sizeof 0x84 typedef struct _unkStruct14 { s16 unk0; s16 unk2; char unk4[0x8]; - void* unkC; + void *unkC; char unk10[0x4]; - void* unk14; - unkStruct4* unk18; - void* unk1C; + void *unk14; + unkStruct4 *unk18; + void *unk1C; char unk20[0x4]; - GXColor* unk24; - unkStruct12* unk28; - unkStruct13* unk2C; - void* unk30; + GXColor *unk24; + unkStruct12 *unk28; + unkStruct13 *unk2C; + void *unk30; u32 unk34; m440Func14 unk38; s16 unk3C; @@ -202,9 +202,9 @@ typedef struct _unkStruct15 { s16 unkC; s16 unkE; char unk10[0x4]; - void* unk14; + void *unk14; char unk18[0x4]; - void* unk1C; + void *unk1C; } unkStruct15; // object.c @@ -226,20 +226,20 @@ typedef struct _unkObjStruct { Vec unk3C; u8 unk48; s16 unk4A; - f32 unk4C; + float unk4C; s16 unk50; s16 unk52; s16 unk54; s16 unk56; s16 unk58; s16 unk5A; - f32 unk5C; + float unk5C; s16 unk60; s16 unk62; char unk64[0x4]; - f32 unk68; - f32 unk6C; - f32 unk70; + float unk68; + float unk6C; + float unk70; } unkObjStruct; #if VERSION_NTSC @@ -249,11 +249,11 @@ typedef struct _unkObjStruct { #endif ////// BSS ////// -extern omObjData* lbl_1_bss_C0[4]; +extern omObjData *lbl_1_bss_C0[4]; ////// DATA ////// // main.c -extern f32 lbl_1_data_0[5]; +extern float lbl_1_data_0[5]; extern s16 lbl_1_data_14[6]; // object.c extern s16 lbl_1_data_1D8; @@ -261,14 +261,14 @@ extern s16 lbl_1_data_1D8; ////// FUNCTIONS ////// // main.c void ObjectSetup(void); -void fn_1_3C4(omObjData* object); -void fn_1_434(omObjData* object); +void fn_1_3C4(omObjData *object); +void fn_1_434(omObjData *object); s32 fn_1_4A4(void); s32 fn_1_6C8(void); -void fn_1_8F0(omObjData* object); -void fn_1_AE0(omObjData* object); -u8 fn_1_E14(omObjData* object); -u8 fn_1_1138(omObjData* object); +void fn_1_8F0(omObjData *object); +void fn_1_AE0(omObjData *object); +u8 fn_1_E14(omObjData *object); +u8 fn_1_1138(omObjData *object); void fn_1_16D8(void); void fn_1_1708(void); void fn_1_1768(void); @@ -280,82 +280,82 @@ void fn_1_18E0(void); u8 fn_1_1954(void); void fn_1_19B0(void); void fn_1_1CAC(void); -void fn_1_2240(ModelData* data, unkStruct5*, Mtx); +void fn_1_2240(ModelData *data, unkStruct5 *, Mtx); u16 fn_1_23E4(u16); void fn_1_2428(u16, u16); -void fn_1_2470(omObjData* object); -void fn_1_2A74(omObjData* object); -void fn_1_2AB4(omObjData* object); -void fn_1_2B04(omObjData* object); -void fn_1_2CA8(omObjData* object); -void fn_1_2D28(omObjData* object); -void fn_1_33D4(omObjData* object); -void fn_1_3DD8(omObjData* object); -void fn_1_4558(omObjData* object); -void fn_1_45BC(omObjData* object); -void fn_1_4660(omObjData* object); -void fn_1_46E0(omObjData* object); -void fn_1_4A20(omObjData* object); -void fn_1_4B44(omObjData* object); -void fn_1_4E00(s16, f32); +void fn_1_2470(omObjData *object); +void fn_1_2A74(omObjData *object); +void fn_1_2AB4(omObjData *object); +void fn_1_2B04(omObjData *object); +void fn_1_2CA8(omObjData *object); +void fn_1_2D28(omObjData *object); +void fn_1_33D4(omObjData *object); +void fn_1_3DD8(omObjData *object); +void fn_1_4558(omObjData *object); +void fn_1_45BC(omObjData *object); +void fn_1_4660(omObjData *object); +void fn_1_46E0(omObjData *object); +void fn_1_4A20(omObjData *object); +void fn_1_4B44(omObjData *object); +void fn_1_4E00(s16, float); s16 fn_1_4E2C(void); s16 fn_1_4E54(s16); u16 fn_1_4EA8(u16); void fn_1_4EEC(u16, u16); -void fn_1_4F34(unkStruct6*); -void fn_1_5010(unkStruct6*, Vec*, f32); -void fn_1_57B4(unkStruct6*); -void fn_1_5C2C(s16, HsfObject*, unkStruct6*, u16); -void fn_1_6554(unkStruct6*, HsfObject*); -void fn_1_6B58(unkStruct6*, HsfObject*); -void fn_1_71FC(unkStruct6*, Vec*, s16, Vec); -void fn_1_7934(unkStruct6*, unkStruct8*, Vec*); -void fn_1_7D60(unkStruct15*, unkStruct13*, s16); -void fn_1_806C(ModelData*, Mtx); -void fn_1_8470(unkStruct12*, unkStruct13*); +void fn_1_4F34(unkStruct6 *); +void fn_1_5010(unkStruct6 *, Vec *, float); +void fn_1_57B4(unkStruct6 *); +void fn_1_5C2C(s16, HsfObject *, unkStruct6 *, u16); +void fn_1_6554(unkStruct6 *, HsfObject *); +void fn_1_6B58(unkStruct6 *, HsfObject *); +void fn_1_71FC(unkStruct6 *, Vec *, s16, Vec); +void fn_1_7934(unkStruct6 *, unkStruct8 *, Vec *); +void fn_1_7D60(unkStruct15 *, unkStruct13 *, s16); +void fn_1_806C(ModelData *, Mtx); +void fn_1_8470(unkStruct12 *, unkStruct13 *); void fn_1_8AC4(Mtx); void fn_1_8D1C(void); -void fn_1_91A4(Vec*, Vec*, Vec*, f32[5]); -f32 fn_1_927C(f32, f32, f32); +void fn_1_91A4(Vec *, Vec *, Vec *, float[5]); +float fn_1_927C(float, float, float); void fn_1_9344(Mtx, Mtx); -f32 fn_1_93C0(f32, f32, f32); -f32 fn_1_93D0(f32, f32, f32, f32); -unkStruct4* fn_1_942C(s16, Vec*, Vec*, f32, GXColor*); -s16 fn_1_956C(AnimData*, s16, f32, s16, s16); +float fn_1_93C0(float, float, float); +float fn_1_93D0(float, float, float, float); +unkStruct4 *fn_1_942C(s16, Vec *, Vec *, float, GXColor *); +s16 fn_1_956C(AnimData *, s16, float, s16, s16); void fn_1_9AB0(s16); -unkStruct5* fn_1_9B10(s16); -unkStruct4* fn_1_9B3C(s16, s16); +unkStruct5 *fn_1_9B10(s16); +unkStruct4 *fn_1_9B3C(s16, s16); void fn_1_9B94(s16, m440Func5); void fn_1_9BCC(s16, u8); -void fn_1_9C04(ModelData*, Mtx); -void fn_1_A1B8(HsfVector2f*, s16, s16, f32, f32); -void fn_1_A284(HsfVector2f*, HsfVector2f*, s16, f32, f32); -void fn_1_A328(Vec*, Vec*, Vec*, s16); -void fn_1_A390(ModelData*, Mtx); +void fn_1_9C04(ModelData *, Mtx); +void fn_1_A1B8(HsfVector2f *, s16, s16, float, float); +void fn_1_A284(HsfVector2f *, HsfVector2f *, s16, float, float); +void fn_1_A328(Vec *, Vec *, Vec *, s16); +void fn_1_A390(ModelData *, Mtx); void fn_1_AA94(void); // object.c -void fn_1_AE08(Process*); -void fn_1_AEE4(omObjData*); -void fn_1_B17C(omObjData*); -void fn_1_B180(omObjData*); -void fn_1_B3A4(omObjData*); -void fn_1_B884(omObjData*, unkObjStruct*); -void fn_1_C1D4(omObjData*, unkObjStruct*); -void fn_1_C944(omObjData*, unkObjStruct*); -s16 fn_1_CFAC(unkObjStruct*, u8); -void fn_1_D24C(unkObjStruct*, f32, f32); -void fn_1_D34C(omObjData*, unkObjStruct*); -void fn_1_D7F8(omObjData*, unkObjStruct*); -void fn_1_E034(omObjData*, unkObjStruct*); -u8 fn_1_E8AC(omObjData*, unkObjStruct*); -s32 fn_1_ED88(omObjData*, s16, u32); +void fn_1_AE08(Process *); +void fn_1_AEE4(omObjData *); +void fn_1_B17C(omObjData *); +void fn_1_B180(omObjData *); +void fn_1_B3A4(omObjData *); +void fn_1_B884(omObjData *, unkObjStruct *); +void fn_1_C1D4(omObjData *, unkObjStruct *); +void fn_1_C944(omObjData *, unkObjStruct *); +s16 fn_1_CFAC(unkObjStruct *, u8); +void fn_1_D24C(unkObjStruct *, float, float); +void fn_1_D34C(omObjData *, unkObjStruct *); +void fn_1_D7F8(omObjData *, unkObjStruct *); +void fn_1_E034(omObjData *, unkObjStruct *); +u8 fn_1_E8AC(omObjData *, unkObjStruct *); +s32 fn_1_ED88(omObjData *, s16, u32); void fn_1_EE78(void); void fn_1_EF50(void); s16 fn_1_F0FC(void); void fn_1_F168(void); void fn_1_F228(void); -u16 fn_1_F4C0(unkObjStruct*, u16); -void fn_1_F4D4(unkObjStruct*, u16, u16); +u16 fn_1_F4C0(unkObjStruct *, u16); +void fn_1_F4D4(unkObjStruct *, u16, u16); s32 fn_1_F4FC(s32); #endif diff --git a/include/REL/m446Dll.h b/include/REL/m446Dll.h index 1f5a4c6a..bdbdadb2 100644 --- a/include/REL/m446Dll.h +++ b/include/REL/m446Dll.h @@ -3,8 +3,9 @@ #include "dolphin/types.h" -#include "game/process.h" #include "game/object.h" +#include "game/process.h" + ////// TYPES ////// typedef struct _unkStruct { @@ -17,26 +18,26 @@ typedef struct _unkStruct { s32 unk14; s32 unk18; s32 unk1C; - struct _unkStruct6* unk20; - struct _unkStruct9* unk24; - struct _unkStruct5* unk28; - struct _unkStruct8* unk2C[2]; - struct _unkStruct4* unk34; - struct _unkStruct4* unk38[23]; + struct _unkStruct6 *unk20; + struct _unkStruct9 *unk24; + struct _unkStruct5 *unk28; + struct _unkStruct8 *unk2C[2]; + struct _unkStruct4 *unk34; + struct _unkStruct4 *unk38[23]; s32 unk94; - Process* unk98; + Process *unk98; } unkStruct; typedef struct _unkStruct2 { - void** unk0; + void **unk0; s32 unk4; s32 unk8; } unkStruct2; typedef struct _unkStruct3 { - void* unk0; - struct _unkStruct3* unk4; - struct _unkStruct3* unk8; + void *unk0; + struct _unkStruct3 *unk4; + struct _unkStruct3 *unk8; } unkStruct3; typedef struct _unkStruct4 { @@ -52,9 +53,9 @@ typedef struct _unkStruct4 { Vec unk34; Vec unk40; Vec unk4C; - f32 unk58; - f32 unk5C; - f32 unk60; + float unk58; + float unk5C; + float unk60; s32 unk64; s32 unk68; s32 unk6C; @@ -62,24 +63,24 @@ typedef struct _unkStruct4 { s32 unk74; s32 unk78; s32 unk7C; - f32 unk80; - f32 unk84; - f32 unk88; - f32 unk8C; - f32 unk90; - f32 unk94; + float unk80; + float unk84; + float unk88; + float unk8C; + float unk90; + float unk94; } unkStruct4; typedef struct _unkStruct5 { - unkStruct2* unk0; + unkStruct2 *unk0; Vec unk4; } unkStruct5; typedef struct _unkStruct6 { - struct _unkStruct7* unk0; + struct _unkStruct7 *unk0; s16 unk4; s16 unk6; - unkStruct4* unk8[21]; + unkStruct4 *unk8[21]; s32 unk5C; s32 unk60; s32 unk64; @@ -100,16 +101,16 @@ typedef struct _unkStruct7 { Vec unk20; Vec unk2C; Vec unk38; - f32 unk44; + float unk44; u8 unk48; - f32 unk4C; - f32 unk50; + float unk4C; + float unk50; } unkStruct7; typedef struct _unkStruct8 { s32 unk0; - unkStruct6* unk4; - unkStruct7* unk8; + unkStruct6 *unk4; + unkStruct7 *unk8; s32 unkC; s32 unk10; s32 unk14; @@ -118,13 +119,13 @@ typedef struct _unkStruct8 { s32 unk20; s32 unk24; s32 unk28; - unkStruct4* unk2C[3]; + unkStruct4 *unk2C[3]; s32 unk38; s16 unk3C[2]; s16 unk40[4]; Vec unk48; Vec unk54; - f32 unk60; + float unk60; u8 unk64; u8 unk65; u8 unk66; @@ -141,10 +142,10 @@ typedef struct _unkStruct8 { Vec unk9C; Vec unkA8; s32 unkB4; - f32 unkB8; - f32 unkBC; - f32 unkC0; - f32 unkC4; + float unkB8; + float unkBC; + float unkC0; + float unkC4; s32 unkC8; } unkStruct8; @@ -152,8 +153,8 @@ typedef struct _unkStruct9 { s16 unk0[5]; s16 unkA[2]; s16 unkE; - f32 unk10; - f32 unk14; + float unk10; + float unk14; s32 unk18; s32 unk1C; s32 unk20; @@ -169,141 +170,141 @@ typedef struct _unkStruct10 { } unkStruct10; typedef void (*m446Func)(s32); -typedef void (*m446Func1)(unkStruct*); -typedef void (*m446Func4)(unkStruct4*); -typedef void (*m446Func8)(unkStruct8*); +typedef void (*m446Func1)(unkStruct *); +typedef void (*m446Func4)(unkStruct4 *); +typedef void (*m446Func8)(unkStruct8 *); ////// PROTOTYPES ////// // main.c void ObjectSetup(void); -void fn_1_13C(omObjData*); -unkStruct* m446FlowCreate(void); -void fn_1_3FC(unkStruct*); -void fn_1_4B4(unkStruct*); -void fn_1_53C(unkStruct*); -void fn_1_958(unkStruct*); -void fn_1_B78(unkStruct*); -void fn_1_C0C(unkStruct*); -void fn_1_CA0(unkStruct*); -s32 fn_1_17FC(unkStruct*); -void fn_1_183C(unkStruct*); -void fn_1_1874(unkStruct*); -void fn_1_18B0(unkStruct*); +void fn_1_13C(omObjData *); +unkStruct *m446FlowCreate(void); +void fn_1_3FC(unkStruct *); +void fn_1_4B4(unkStruct *); +void fn_1_53C(unkStruct *); +void fn_1_958(unkStruct *); +void fn_1_B78(unkStruct *); +void fn_1_C0C(unkStruct *); +void fn_1_CA0(unkStruct *); +s32 fn_1_17FC(unkStruct *); +void fn_1_183C(unkStruct *); +void fn_1_1874(unkStruct *); +void fn_1_18B0(unkStruct *); void fn_1_19D4(void); // card.c -unkStruct2* fn_1_1C64(s32); -void fn_1_1CF8(unkStruct2*); -s32 fn_1_1D30(unkStruct2*, void*); -s32 fn_1_1D6C(unkStruct2*, unkStruct4**); -s32 fn_1_1DA8(unkStruct2*, void**); -BOOL fn_1_1DDC(unkStruct2*); -s32 fn_1_1DEC(unkStruct2*); -unkStruct3* fn_1_1DF4(void*); -void fn_1_1E5C(unkStruct3*); -void fn_1_1E84(unkStruct3**); -void fn_1_1EC8(unkStruct3*, unkStruct3*); -void fn_1_1F04(unkStruct3*); -void fn_1_1F38(u8*, u8*, s32); -void fn_1_1F84(u8*, s8, s32); -void fn_1_1FC0(u8*, s32); -s32 fn_1_1FFC(s8*, s8*, s32); +unkStruct2 *fn_1_1C64(s32); +void fn_1_1CF8(unkStruct2 *); +s32 fn_1_1D30(unkStruct2 *, void *); +s32 fn_1_1D6C(unkStruct2 *, unkStruct4 **); +s32 fn_1_1DA8(unkStruct2 *, void **); +BOOL fn_1_1DDC(unkStruct2 *); +s32 fn_1_1DEC(unkStruct2 *); +unkStruct3 *fn_1_1DF4(void *); +void fn_1_1E5C(unkStruct3 *); +void fn_1_1E84(unkStruct3 **); +void fn_1_1EC8(unkStruct3 *, unkStruct3 *); +void fn_1_1F04(unkStruct3 *); +void fn_1_1F38(u8 *, u8 *, s32); +void fn_1_1F84(u8 *, s8, s32); +void fn_1_1FC0(u8 *, s32); +s32 fn_1_1FFC(s8 *, s8 *, s32); s32 fn_1_2064(void); void fn_1_207C(void); void fn_1_20D4(void); -unkStruct4* m446CardCreate(s32); -void fn_1_2688(unkStruct4*); -void fn_1_272C(unkStruct4*); -void fn_1_2794(unkStruct4*); -void fn_1_27FC(unkStruct4*, Vec*, s32); -void fn_1_2890(unkStruct4*, Vec*, s32, s32); -void fn_1_2928(unkStruct4*, Vec*, s32); -void fn_1_29B4(unkStruct4*, f32, s32); -void fn_1_2A1C(unkStruct4*); -void fn_1_2A58(unkStruct4*); -void fn_1_2A94(unkStruct4*); -void fn_1_2AA8(unkStruct4*); -void fn_1_2D94(unkStruct4*); -void fn_1_2DA8(unkStruct4*); -void fn_1_2EC0(unkStruct4*, s32); -void fn_1_2F64(unkStruct4*); +unkStruct4 *m446CardCreate(s32); +void fn_1_2688(unkStruct4 *); +void fn_1_272C(unkStruct4 *); +void fn_1_2794(unkStruct4 *); +void fn_1_27FC(unkStruct4 *, Vec *, s32); +void fn_1_2890(unkStruct4 *, Vec *, s32, s32); +void fn_1_2928(unkStruct4 *, Vec *, s32); +void fn_1_29B4(unkStruct4 *, float, s32); +void fn_1_2A1C(unkStruct4 *); +void fn_1_2A58(unkStruct4 *); +void fn_1_2A94(unkStruct4 *); +void fn_1_2AA8(unkStruct4 *); +void fn_1_2D94(unkStruct4 *); +void fn_1_2DA8(unkStruct4 *); +void fn_1_2EC0(unkStruct4 *, s32); +void fn_1_2F64(unkStruct4 *); // deck.c -unkStruct5* fn_1_3064(void); -void fn_1_3180(unkStruct2**); -void fn_1_31D8(unkStruct2**, unkStruct4**, s32*, s32); -void fn_1_34A0(unkStruct5*, unkStruct4**, s32, s32); -s32 m446DeckPushCard(unkStruct5*, unkStruct4*, s32); -s32 m446DeckPopCard(unkStruct2**, unkStruct4**); -void fn_1_38B0(unkStruct2**); +unkStruct5 *fn_1_3064(void); +void fn_1_3180(unkStruct2 **); +void fn_1_31D8(unkStruct2 **, unkStruct4 **, s32 *, s32); +void fn_1_34A0(unkStruct5 *, unkStruct4 **, s32, s32); +s32 m446DeckPushCard(unkStruct5 *, unkStruct4 *, s32); +s32 m446DeckPopCard(unkStruct2 **, unkStruct4 **); +void fn_1_38B0(unkStruct2 **); s32 fn_1_38F0(void); // table.c s32 fn_1_3924(void); void fn_1_393C(void); void fn_1_3994(void); -unkStruct6* fn_1_39D0(void); -void fn_1_3B4C(unkStruct6*); -s32 fn_1_3BF0(unkStruct6*, unkStruct4*, s32); -s32 fn_1_3EB4(unkStruct6*, unkStruct4*, s32); -s32 fn_1_3FD0(unkStruct6*, s32, unkStruct4**); -void fn_1_4000(unkStruct6*, s32); -s32 fn_1_4088(unkStruct6*, u8, u8, s32, unkStruct4**, s32); -void fn_1_46AC(unkStruct6*); -void fn_1_46D0(unkStruct6*); -s32 fn_1_4720(unkStruct6*, s32); -void fn_1_4798(unkStruct6*); +unkStruct6 *fn_1_39D0(void); +void fn_1_3B4C(unkStruct6 *); +s32 fn_1_3BF0(unkStruct6 *, unkStruct4 *, s32); +s32 fn_1_3EB4(unkStruct6 *, unkStruct4 *, s32); +s32 fn_1_3FD0(unkStruct6 *, s32, unkStruct4 **); +void fn_1_4000(unkStruct6 *, s32); +s32 fn_1_4088(unkStruct6 *, u8, u8, s32, unkStruct4 **, s32); +void fn_1_46AC(unkStruct6 *); +void fn_1_46D0(unkStruct6 *); +s32 fn_1_4720(unkStruct6 *, s32); +void fn_1_4798(unkStruct6 *); // player.c s32 fn_1_480C(void); void fn_1_4824(void); void fn_1_487C(void); -unkStruct8* m446PlayerCreate(s32, unkStruct6*); -void fn_1_509C(unkStruct8*); -s32 m446PlayerAppendCard(unkStruct8*, unkStruct4*, s32); -s32 m446PlayerRemoveCard(unkStruct8*, unkStruct4*, s32); -s32 fn_1_5648(unkStruct8*, s32, unkStruct4**); -s32 fn_1_5678(unkStruct8*, unkStruct4**, s32); -void fn_1_5B34(unkStruct8*); -void fn_1_5B48(unkStruct8*); -void fn_1_5C10(unkStruct8*); -void fn_1_5C24(unkStruct8*); -void fn_1_5CEC(unkStruct8*); -void fn_1_5D00(unkStruct8*); -void fn_1_5E54(unkStruct8*, s32); -void fn_1_6074(unkStruct8*); -void fn_1_6264(unkStruct8*, Vec*, s32); -void fn_1_62F0(unkStruct8*, Vec*, s32); -void fn_1_637C(unkStruct8*, s32); -void fn_1_64BC(unkStruct8*, s32, s32); -void fn_1_6578(unkStruct8*); -void fn_1_6620(unkStruct8*); +unkStruct8 *m446PlayerCreate(s32, unkStruct6 *); +void fn_1_509C(unkStruct8 *); +s32 m446PlayerAppendCard(unkStruct8 *, unkStruct4 *, s32); +s32 m446PlayerRemoveCard(unkStruct8 *, unkStruct4 *, s32); +s32 fn_1_5648(unkStruct8 *, s32, unkStruct4 **); +s32 fn_1_5678(unkStruct8 *, unkStruct4 **, s32); +void fn_1_5B34(unkStruct8 *); +void fn_1_5B48(unkStruct8 *); +void fn_1_5C10(unkStruct8 *); +void fn_1_5C24(unkStruct8 *); +void fn_1_5CEC(unkStruct8 *); +void fn_1_5D00(unkStruct8 *); +void fn_1_5E54(unkStruct8 *, s32); +void fn_1_6074(unkStruct8 *); +void fn_1_6264(unkStruct8 *, Vec *, s32); +void fn_1_62F0(unkStruct8 *, Vec *, s32); +void fn_1_637C(unkStruct8 *, s32); +void fn_1_64BC(unkStruct8 *, s32, s32); +void fn_1_6578(unkStruct8 *); +void fn_1_6620(unkStruct8 *); // camera.c s32 fn_1_6778(void); void fn_1_68D8(void); void fn_1_68DC(void); -void fn_1_6EA0(Vec*); -void fn_1_6EC4(Vec*); -void fn_1_6EE8(f32); -void fn_1_6EF8(Vec*, Vec*, f32*, s32); +void fn_1_6EA0(Vec *); +void fn_1_6EC4(Vec *); +void fn_1_6EE8(float); +void fn_1_6EF8(Vec *, Vec *, float *, s32); s32 fn_1_708C(void); void fn_1_709C(void); // cursor.c s32 fn_1_72E0(void); void fn_1_72F8(void); void fn_1_7350(void); -unkStruct7* m446CursorCreate(s32); -void fn_1_76E8(unkStruct7*); -void fn_1_77C8(unkStruct7*, u8); -void fn_1_7884(unkStruct7*); -void fn_1_7908(unkStruct7*, Vec*, s32); -void fn_1_799C(unkStruct7*); -void fn_1_7A38(unkStruct7*); -void fn_1_7AB4(unkStruct7*); +unkStruct7 *m446CursorCreate(s32); +void fn_1_76E8(unkStruct7 *); +void fn_1_77C8(unkStruct7 *, u8); +void fn_1_7884(unkStruct7 *); +void fn_1_7908(unkStruct7 *, Vec *, s32); +void fn_1_799C(unkStruct7 *); +void fn_1_7A38(unkStruct7 *); +void fn_1_7AB4(unkStruct7 *); // stage.c s32 fn_1_7BF0(void); void fn_1_7C08(void); void fn_1_7C60(void); -unkStruct9* m446StageCreate(void); -void fn_1_83F0(unkStruct9*); -void fn_1_84AC(unkStruct9*); -void fn_1_852C(unkStruct9*); -void fn_1_860C(unkStruct9*); +unkStruct9 *m446StageCreate(void); +void fn_1_83F0(unkStruct9 *); +void fn_1_84AC(unkStruct9 *); +void fn_1_852C(unkStruct9 *); +void fn_1_860C(unkStruct9 *); #endif diff --git a/include/REL/mentDll.h b/include/REL/mentDll.h index 623bdc08..fe6e9e49 100644 --- a/include/REL/mentDll.h +++ b/include/REL/mentDll.h @@ -4,16 +4,16 @@ #include "game/object.h" extern s32 lbl_1_data_0[][4]; -//the prev and current struct member might be vice versa +// the prev and current struct member might be vice versa typedef struct MentDllUnkBss64Struct { /* 0x00 */ void (*func)(void); - /* 0x04 */ void (*func2)(f32 arg9); + /* 0x04 */ void (*func2)(float arg9); /* 0x08 */ Vec center; /* 0x14 */ Vec prevCenter; /* 0x20 */ Vec rot; /* 0x2C */ Vec prevRot; /* 0x38 */ float zoom; - /* 0x3C */ f32 prevZoom; + /* 0x3C */ float prevZoom; /* 0x40 */ s32 unk_40; } MentDllUnkBss64Struct; /* size = 0x44 */ extern MentDllUnkBss64Struct lbl_1_bss_64; @@ -36,10 +36,10 @@ s32 fn_1_1DD8(s32 arg0, s32 arg1, s32 arg2); s32 fn_1_2154(s32 arg0); void fn_1_2318(s32 arg0); void fn_1_2808(void (*arg0)(void)); -void fn_1_2844(Process* arg0, void (*arg1)(void)); -void fn_1_29A0(MentDllUnkBss64Struct* arg0); -void fn_1_4138(MentDllUnkBss64Struct* arg0, MentDllUnkBss64Struct* arg1, f32 arg8, f32 arg9, f32 argA); -void fn_1_5150(MentDllUnkBss64Struct* arg0, MentDllUnkBss64Struct* arg1, f32 arg8, f32 arg9, f32 argA); +void fn_1_2844(Process *arg0, void (*arg1)(void)); +void fn_1_29A0(MentDllUnkBss64Struct *arg0); +void fn_1_4138(MentDllUnkBss64Struct *arg0, MentDllUnkBss64Struct *arg1, float arg8, float arg9, float argA); +void fn_1_5150(MentDllUnkBss64Struct *arg0, MentDllUnkBss64Struct *arg1, float arg8, float arg9, float argA); void fn_1_5818(omObjData *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_59A0(omObjData *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4); void fn_1_5C08(omObjData *arg0); diff --git a/include/REL/modeltestDll.h b/include/REL/modeltestDll.h index f2dd081e..d4afecc4 100644 --- a/include/REL/modeltestDll.h +++ b/include/REL/modeltestDll.h @@ -2,8 +2,8 @@ #define REL_MODELTEST_H #include "game/hsfdraw.h" -#include "game/objsub.h" #include "game/object.h" +#include "game/objsub.h" #include "ext_math.h" @@ -11,36 +11,34 @@ #define US_PER_60TH_SEC (1000000.0f / 60.0f) #define US_TO_60TH_SEC(us) ((us) / US_PER_60TH_SEC) -#define FB_SIZE(width, height) width * height * 2 +#define FB_SIZE(width, height) width *height * 2 // -------------------------------------------------------------------------- // -typedef struct -{ +typedef struct { s16 unk0[7]; } HuUnkF9C2; -typedef struct -{ - Point3d pos; // 0000 - Point3d rot; // 000C - Point3d scale; // 0018 +typedef struct { + Vec pos; // 0000 + Vec rot; // 000C + Vec scale; // 0018 s32 unk24; s32 unk28; s32 unk2C; - HsfObject * obj; // 0030 + HsfObject *obj; // 0030 } HuObjUnk; -extern Point3d CRot; -extern Point3d Center; -extern f32 CZoom; +extern Vec CRot; +extern Vec Center; +extern float CZoom; void fn_1_29C(); -void fn_1_28F8(Point3d * arg0, Point3d * arg1); -void fn_1_37DC(omObjData*); -void fn_1_439C(omObjData*); +void fn_1_28F8(Vec *arg0, Vec *arg1); +void fn_1_37DC(omObjData *); +void fn_1_439C(omObjData *); void fn_1_46F0(); -typedef void (omObjFunc2)(struct om_obj_data *); +typedef void(omObjFunc2)(struct om_obj_data *); omObjFunc2 fn_1_F9C; #endif diff --git a/include/REL/w02Dll.h b/include/REL/w02Dll.h index b62d4a44..1a59411f 100644 --- a/include/REL/w02Dll.h +++ b/include/REL/w02Dll.h @@ -1,50 +1,48 @@ #ifndef W02DLL #define W02DLL -#include "math.h" #include "dolphin.h" -#include "game/process.h" -#include "game/gamework_data.h" -#include "game/board/model.h" -#include "game/board/space.h" #include "game/board/main.h" -#include "game/board/player.h" -#include "game/board/window.h" #include "game/board/map_object.h" - +#include "game/board/model.h" +#include "game/board/player.h" +#include "game/board/space.h" +#include "game/board/window.h" +#include "game/gamework_data.h" +#include "game/process.h" +#include "math.h" /* STRUCTS*/ typedef struct m02_dice { - /* 0x00 */ s16 unk00; - /* 0x02 */ s16 unk02; - /* 0x04 */ s32 unk04; - /* 0x08 */ s32 *unk08; - /* 0x0C */ Vec unk0C; - /* 0x18 */ s16 unk18; - /* 0x1A */ s16 unk1A; - /* 0x1C */ u16 unk1C[3]; - /* 0x22 */ s16 unk22; - /* 0x24 */ f32 unk24; - /* 0x28 */ s16 unk28; - /* 0x2A */ u8 unk2A[0x2]; - /* 0x2C */ Process *unk2C; - /* 0x30 */ s16 unk30[3]; - /* 0x36 */ s16 unk36[3]; - /* 0x3C */ omObjData *unk3C[3]; - /* 0x48 */ s16 unk48[3]; - /* 0x4E */ u8 unk4E[0x2]; - /* 0x50 */ omObjData *unk50[3]; - /* 0x5C */ u8 unk5C[0x08]; - /* 0x64 */ Vec unk64[2]; - /* 0x7C */ Vec unk7C; - /* 0x88 */ s32 unk88[3]; - /* 0x94 */ s16 unk94; - /* 0x96 */ s16 unk96; - /* 0x98 */ f32 unk98; - /* 0x9C */ s16 unk9C; + /* 0x00 */ s16 unk00; + /* 0x02 */ s16 unk02; + /* 0x04 */ s32 unk04; + /* 0x08 */ s32 *unk08; + /* 0x0C */ Vec unk0C; + /* 0x18 */ s16 unk18; + /* 0x1A */ s16 unk1A; + /* 0x1C */ u16 unk1C[3]; + /* 0x22 */ s16 unk22; + /* 0x24 */ float unk24; + /* 0x28 */ s16 unk28; + /* 0x2A */ u8 unk2A[0x2]; + /* 0x2C */ Process *unk2C; + /* 0x30 */ s16 unk30[3]; + /* 0x36 */ s16 unk36[3]; + /* 0x3C */ omObjData *unk3C[3]; + /* 0x48 */ s16 unk48[3]; + /* 0x4E */ u8 unk4E[0x2]; + /* 0x50 */ omObjData *unk50[3]; + /* 0x5C */ u8 unk5C[0x08]; + /* 0x64 */ Vec unk64[2]; + /* 0x7C */ Vec unk7C; + /* 0x88 */ s32 unk88[3]; + /* 0x94 */ s16 unk94; + /* 0x96 */ s16 unk96; + /* 0x98 */ float unk98; + /* 0x9C */ s16 unk9C; } m02GenDice; - extern s16 lbl_1_bss_2E; extern s16 lbl_1_bss_2C; extern Vec lbl_1_bss_20; @@ -58,12 +56,12 @@ extern void fn_1_72C(); extern s32 fn_1_774(); extern s32 fn_1_800(); extern void fn_1_92C(); -extern s32 fn_1_1128(); +extern s32 fn_1_1128(); extern void fn_1_121C(u32); -void fn_1_1254(m02GenDice* arg0); -void fn_1_1518(m02GenDice* arg0); -s32 fn_1_17F4(m02GenDice* arg0); +void fn_1_1254(m02GenDice *arg0); +void fn_1_1518(m02GenDice *arg0); +s32 fn_1_17F4(m02GenDice *arg0); // roulette.c extern void fn_1_D3AC(); @@ -75,15 +73,15 @@ extern void fn_1_3BF4(); extern void fn_1_39F4(); extern void fn_1_5CF8(); extern void fn_1_5D28(); -extern void fn_1_5F90(); +extern void fn_1_5F90(); extern void fn_1_79BC(s16 *arg0); extern void fn_1_8244(u16 arg0); extern s32 fn_1_9250(); extern void fn_1_93C8(u32 arg0); extern void fn_1_BC1C(); -extern s32 fn_1_BE88(); -extern s32 fn_1_C108(s32); -extern void fn_1_CD04(s32); +extern s32 fn_1_BE88(); +extern s32 fn_1_C108(s32); +extern void fn_1_CD04(s32); void fn_1_E41C(void); -#endif //W02DLL \ No newline at end of file +#endif // W02DLL diff --git a/include/REL/w05Dll.h b/include/REL/w05Dll.h index be7b49db..2b5599fb 100644 --- a/include/REL/w05Dll.h +++ b/include/REL/w05Dll.h @@ -51,7 +51,7 @@ void fn_1_D84(void); void fn_1_E04(void); void fn_1_E40(void); s32 fn_1_1114(void); -s32 fn_1_1208(s16, f32, f32); +s32 fn_1_1208(s16, float, float); void fn_1_13D4(void); void fn_1_14D0(void); @@ -70,64 +70,64 @@ void fn_1_3E8C(void); void fn_1_3F74(void); void fn_1_3FD8(void); void fn_1_4034(s32); -void fn_1_4EB4(s32, s32, Vec*); +void fn_1_4EB4(s32, s32, Vec *); void fn_1_5648(void); -void fn_1_5794(s32, s32, Vec*); +void fn_1_5794(s32, s32, Vec *); void fn_1_6670(void); -omObjData* fn_1_66C0(u32, Vec*); -void fn_1_6914(omObjData*); -void fn_1_62AC(s32, Vec*); +omObjData *fn_1_66C0(u32, Vec *); +void fn_1_6914(omObjData *); +void fn_1_62AC(s32, Vec *); void fn_1_64BC(void); void fn_1_65E8(void); void fn_1_6670(void); -omObjData* fn_1_66C0(u32, Vec*); -void fn_1_6914(omObjData*); +omObjData *fn_1_66C0(u32, Vec *); +void fn_1_6914(omObjData *); void fn_1_6B28(void); void fn_1_6B7C(void); -void fn_1_7284(omObjData*); +void fn_1_7284(omObjData *); void fn_1_72E4(void); void fn_1_7314(void); void fn_1_73C0(void); void fn_1_74D0(s16[3]); void fn_1_77B0(void); -void fn_1_78A0(omObjData*); -void fn_1_7928(omObjData*); +void fn_1_78A0(omObjData *); +void fn_1_7928(omObjData *); void fn_1_799C(void); -void fn_1_7E4C(omObjData*); -void fn_1_7E94(dataCopy*); -void fn_1_7F04(omObjData*); -void fn_1_80D8(omObjData*); -void fn_1_8410(omObjData*); -void fn_1_850C(omObjData*); -void fn_1_8668(omObjData*); -void fn_1_8798(dataCopy*, s32*, s32*, s32*); -void* fn_1_8884(void); +void fn_1_7E4C(omObjData *); +void fn_1_7E94(dataCopy *); +void fn_1_7F04(omObjData *); +void fn_1_80D8(omObjData *); +void fn_1_8410(omObjData *); +void fn_1_850C(omObjData *); +void fn_1_8668(omObjData *); +void fn_1_8798(dataCopy *, s32 *, s32 *, s32 *); +void *fn_1_8884(void); void fn_1_88B8(void); void fn_1_896C(void); void fn_1_91DC(void); -void fn_1_9268(ModelData*, ParticleData*, f32[3][4]); +void fn_1_9268(ModelData *, ParticleData *, float[3][4]); void fn_1_9680(void); void fn_1_96B4(void); void fn_1_9760(void); void fn_1_97AC(void); -void fn_1_9A68(omObjData*); +void fn_1_9A68(omObjData *); void fn_1_9AC0(void); void fn_1_9AF0(void); void fn_1_9B74(void); -void fn_1_9C24(omObjData*); -void fn_1_9C98(dataCopy2*); -void fn_1_9D0C(omObjData*); -void fn_1_9F24(omObjData*); -void fn_1_A224(omObjData*); -void fn_1_A4F8(omObjData*); -void fn_1_A5B0(omObjData*); -void fn_1_A990(omObjData*); +void fn_1_9C24(omObjData *); +void fn_1_9C98(dataCopy2 *); +void fn_1_9D0C(omObjData *); +void fn_1_9F24(omObjData *); +void fn_1_A224(omObjData *); +void fn_1_A4F8(omObjData *); +void fn_1_A5B0(omObjData *); +void fn_1_A990(omObjData *); void fn_1_AB24(void); -void fn_1_B214(omObjData*); -void fn_1_B2B0(omObjData*, u16*, s16*); -void fn_1_B3C4(omObjData*); +void fn_1_B214(omObjData *); +void fn_1_B2B0(omObjData *, u16 *, s16 *); +void fn_1_B3C4(omObjData *); // data extern BoardMapObject lbl_1_data_0[7]; @@ -164,7 +164,7 @@ extern char *lbl_1_data_330[3]; extern s32 lbl_1_data_350[14]; extern s32 lbl_1_data_350[14]; extern s16 lbl_1_data_388[92]; -extern f32 lbl_1_data_440[3]; +extern float lbl_1_data_440[3]; extern char *lbl_1_data_464[3]; extern s32 lbl_1_data_470[3]; @@ -179,9 +179,9 @@ extern s16 lbl_1_bss_100; extern s16 lbl_1_bss_FE; extern s16 lbl_1_bss_D6[20]; extern s16 lbl_1_bss_D4; -extern omObjData* lbl_1_bss_D0; -extern omObjData* lbl_1_bss_CC; -extern omObjData* lbl_1_bss_C8; +extern omObjData *lbl_1_bss_D0; +extern omObjData *lbl_1_bss_CC; +extern omObjData *lbl_1_bss_C8; extern s16 lbl_1_bss_C6; extern s16 lbl_1_bss_C4; extern s16 lbl_1_bss_C2; @@ -196,13 +196,13 @@ extern s16 lbl_1_bss_A4[3]; extern s16 lbl_1_bss_A2; extern s16 lbl_1_bss_9E[2]; extern s16 lbl_1_bss_9C; -extern Process* lbl_1_bss_98; -extern omObjData* lbl_1_bss_94; -extern omObjData* lbl_1_bss_90; -extern omObjData* lbl_1_bss_8C; +extern Process *lbl_1_bss_98; +extern omObjData *lbl_1_bss_94; +extern omObjData *lbl_1_bss_90; +extern omObjData *lbl_1_bss_8C; extern s32 lbl_1_bss_88; extern s32 lbl_1_bss_7C[3]; -extern AnimData* lbl_1_bss_78; +extern AnimData *lbl_1_bss_78; extern s16 lbl_1_bss_72[2]; extern s16 lbl_1_bss_6C[3]; @@ -221,9 +221,9 @@ extern s16 lbl_1_bss_30[4]; extern s16 lbl_1_bss_28; extern s16 lbl_1_bss_14[7]; -extern s32* lbl_1_bss_10; +extern s32 *lbl_1_bss_10; extern s16 lbl_1_bss_8[4]; -extern Process* lbl_1_bss_4; -extern bitcopy* lbl_1_bss_0; +extern Process *lbl_1_bss_4; +extern bitcopy *lbl_1_bss_0; #endif diff --git a/include/REL/w10Dll.h b/include/REL/w10Dll.h index 93342461..a1446748 100644 --- a/include/REL/w10Dll.h +++ b/include/REL/w10Dll.h @@ -9,7 +9,7 @@ enum { MAPOBJ_MELON = 0, - MAPOBJ_MAX, + MAPOBJ_MAX }; typedef struct w10_board_work { diff --git a/include/data_num/title.h b/include/data_num/title.h index a50179ec..13f41c0c 100644 --- a/include/data_num/title.h +++ b/include/data_num/title.h @@ -20,7 +20,7 @@ enum { TITLE_COPYRIGHT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 10), TITLE_CHAR_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 11), TITLE_CUBE_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 12), - TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13), + TITLE_SKY_HSF = DATA_MAKE_NUM(DATADIR_TITLE, 13) }; #else @@ -54,9 +54,9 @@ enum { TITLE_LANGUAGE_GE_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 25), TITLE_LANGUAGE_FR_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 26), TITLE_LANGUAGE_IT_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 27), - TITLE_LANGUAGE_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 28), + TITLE_LANGUAGE_ES_ANM = DATA_MAKE_NUM(DATADIR_TITLE, 28) }; #endif -#endif \ No newline at end of file +#endif diff --git a/include/data_num/win.h b/include/data_num/win.h index 3a38070f..07e510fb 100644 --- a/include/data_num/win.h +++ b/include/data_num/win.h @@ -36,7 +36,7 @@ enum { WIN_CARD_BOX2_ICON_ANM = DATA_MAKE_NUM(DATADIR_WIN, 29), WIN_CARD_BOX3_ICON_ANM = DATA_MAKE_NUM(DATADIR_WIN, 30), WIN_CARD_BANNER_ANM = DATA_MAKE_NUM(DATADIR_WIN, 31), - WIN_SAVE_BG_ANM = DATA_MAKE_NUM(DATADIR_WIN, 32), + WIN_SAVE_BG_ANM = DATA_MAKE_NUM(DATADIR_WIN, 32) }; -#endif \ No newline at end of file +#endif diff --git a/include/dolphin/demo/DEMOPuts.h b/include/dolphin/demo/DEMOPuts.h index 49434d9c..219ca544 100644 --- a/include/dolphin/demo/DEMOPuts.h +++ b/include/dolphin/demo/DEMOPuts.h @@ -5,7 +5,7 @@ typedef enum { DMTF_POINTSAMPLE, - DMTF_BILERP, + DMTF_BILERP } DMTexFlt; typedef enum { DM_FT_OPQ, DM_FT_RVS, DM_FT_XLU } DMFontType; diff --git a/include/dolphin/demo/DEMOStats.h b/include/dolphin/demo/DEMOStats.h index 5ec6e00a..92a61bf6 100644 --- a/include/dolphin/demo/DEMOStats.h +++ b/include/dolphin/demo/DEMOStats.h @@ -11,7 +11,7 @@ typedef enum DEMO_STAT_TYPE { DEMO_STAT_TBW = 6, DEMO_STAT_TBP = 7, DEMO_STAT_MYC = 8, - DEMO_STAT_MYR = 9, + DEMO_STAT_MYR = 9 } DEMO_STAT_TYPE; typedef struct DemoStatData { @@ -26,7 +26,7 @@ typedef enum { DEMO_STAT_BL = 1, DEMO_STAT_TLD = 2, DEMO_STAT_BLD = 3, - DEMO_STAT_IO = 4, + DEMO_STAT_IO = 4 } DEMO_STAT_DISP; extern unsigned char DemoStatEnable; diff --git a/include/dolphin/gx/GXEnum.h b/include/dolphin/gx/GXEnum.h index d8c48579..cf924f01 100644 --- a/include/dolphin/gx/GXEnum.h +++ b/include/dolphin/gx/GXEnum.h @@ -23,7 +23,7 @@ typedef u8 GXBool; typedef enum _GXProjectionType { GX_PERSPECTIVE, - GX_ORTHOGRAPHIC, + GX_ORTHOGRAPHIC } GXProjectionType; typedef enum _GXCompare { @@ -34,7 +34,7 @@ typedef enum _GXCompare { GX_GREATER, GX_NEQUAL, GX_GEQUAL, - GX_ALWAYS, + GX_ALWAYS } GXCompare; typedef enum _GXAlphaOp { @@ -42,20 +42,20 @@ typedef enum _GXAlphaOp { GX_AOP_OR, GX_AOP_XOR, GX_AOP_XNOR, - GX_MAX_ALPHAOP, + GX_MAX_ALPHAOP } GXAlphaOp; typedef enum _GXZFmt16 { GX_ZC_LINEAR, GX_ZC_NEAR, GX_ZC_MID, - GX_ZC_FAR, + GX_ZC_FAR } GXZFmt16; typedef enum _GXGamma { GX_GM_1_0, GX_GM_1_7, - GX_GM_2_2, + GX_GM_2_2 } GXGamma; typedef enum _GXPixelFmt { @@ -66,7 +66,7 @@ typedef enum _GXPixelFmt { GX_PF_Y8, GX_PF_U8, GX_PF_V8, - GX_PF_YUV420, + GX_PF_YUV420 } GXPixelFmt; typedef enum _GXPrimitive { @@ -76,7 +76,7 @@ typedef enum _GXPrimitive { GX_TRIANGLEFAN = 0xA0, GX_LINES = 0xA8, GX_LINESTRIP = 0xB0, - GX_POINTS = 0xB8, + GX_POINTS = 0xB8 } GXPrimitive; typedef enum _GXVtxFmt { @@ -88,7 +88,7 @@ typedef enum _GXVtxFmt { GX_VTXFMT5, GX_VTXFMT6, GX_VTXFMT7, - GX_MAX_VTXFMT, + GX_MAX_VTXFMT } GXVtxFmt; typedef enum _GXAttr { @@ -119,7 +119,7 @@ typedef enum _GXAttr { GX_LIGHT_ARRAY, GX_VA_NBT, GX_VA_MAX_ATTR, - GX_VA_NULL = 0xFF, + GX_VA_NULL = 0xFF } GXAttr; #define GX_MAX_VTXDESCLIST_SZ (GX_VA_MAX_ATTR + 1) @@ -128,7 +128,7 @@ typedef enum _GXAttrType { GX_NONE, GX_DIRECT, GX_INDEX8, - GX_INDEX16, + GX_INDEX16 } GXAttrType; #define _GX_TF_CTF 0x20 @@ -164,20 +164,20 @@ typedef enum _GXTexFmt { GX_CTF_Z8L = 0xA | _GX_TF_ZTF | _GX_TF_CTF, GX_CTF_Z16L = 0xC | _GX_TF_ZTF | _GX_TF_CTF, - GX_TF_A8 = GX_CTF_A8, + GX_TF_A8 = GX_CTF_A8 } GXTexFmt; typedef enum _GXCITexFmt { GX_TF_C4 = 0x8, GX_TF_C8 = 0x9, - GX_TF_C14X2 = 0xa, + GX_TF_C14X2 = 0xa } GXCITexFmt; typedef enum _GXTexWrapMode { GX_CLAMP, GX_REPEAT, GX_MIRROR, - GX_MAX_TEXWRAPMODE, + GX_MAX_TEXWRAPMODE } GXTexWrapMode; typedef enum _GXTexFilter { @@ -186,14 +186,14 @@ typedef enum _GXTexFilter { GX_NEAR_MIP_NEAR, GX_LIN_MIP_NEAR, GX_NEAR_MIP_LIN, - GX_LIN_MIP_LIN, + GX_LIN_MIP_LIN } GXTexFilter; typedef enum _GXAnisotropy { GX_ANISO_1, GX_ANISO_2, GX_ANISO_4, - GX_MAX_ANISOTROPY, + GX_MAX_ANISOTROPY } GXAnisotropy; typedef enum _GXTexMapID { @@ -207,7 +207,7 @@ typedef enum _GXTexMapID { GX_TEXMAP7, GX_MAX_TEXMAP, GX_TEXMAP_NULL = 0xFF, - GX_TEX_DISABLE = 0x100, + GX_TEX_DISABLE = 0x100 } GXTexMapID; typedef enum _GXTexCoordID { @@ -220,7 +220,7 @@ typedef enum _GXTexCoordID { GX_TEXCOORD6, GX_TEXCOORD7, GX_MAX_TEXCOORD, - GX_TEXCOORD_NULL = 0xFF, + GX_TEXCOORD_NULL = 0xFF } GXTexCoordID; typedef enum _GXTevStageID { @@ -240,7 +240,7 @@ typedef enum _GXTevStageID { GX_TEVSTAGE13, GX_TEVSTAGE14, GX_TEVSTAGE15, - GX_MAX_TEVSTAGE, + GX_MAX_TEVSTAGE } GXTevStageID; typedef enum _GXTevMode { @@ -248,12 +248,12 @@ typedef enum _GXTevMode { GX_DECAL, GX_BLEND, GX_REPLACE, - GX_PASSCLR, + GX_PASSCLR } GXTevMode; typedef enum _GXTexMtxType { GX_MTX3x4, - GX_MTX2x4, + GX_MTX2x4 } GXTexMtxType; typedef enum _GXTexGenType { @@ -267,7 +267,7 @@ typedef enum _GXTexGenType { GX_TG_BUMP5, GX_TG_BUMP6, GX_TG_BUMP7, - GX_TG_SRTG, + GX_TG_SRTG } GXTexGenType; typedef enum _GXPosNrmMtx { @@ -280,7 +280,7 @@ typedef enum _GXPosNrmMtx { GX_PNMTX6 = 18, GX_PNMTX7 = 21, GX_PNMTX8 = 24, - GX_PNMTX9 = 27, + GX_PNMTX9 = 27 } GXPosNrmMtx; typedef enum _GXTexMtx { @@ -294,7 +294,7 @@ typedef enum _GXTexMtx { GX_TEXMTX7 = 51, GX_TEXMTX8 = 54, GX_TEXMTX9 = 57, - GX_IDENTITY = 60, + GX_IDENTITY = 60 } GXTexMtx; typedef enum _GXChannelID { @@ -307,7 +307,7 @@ typedef enum _GXChannelID { GX_COLOR_ZERO, GX_ALPHA_BUMP, GX_ALPHA_BUMPN, - GX_COLOR_NULL = 0xFF, + GX_COLOR_NULL = 0xFF } GXChannelID; typedef enum _GXTexGenSrc { @@ -332,7 +332,7 @@ typedef enum _GXTexGenSrc { GX_TG_TEXCOORD6, GX_TG_COLOR0, GX_TG_COLOR1, - GX_MAX_TEXGENSRC, + GX_MAX_TEXGENSRC } GXTexGenSrc; typedef enum _GXBlendMode { @@ -340,7 +340,7 @@ typedef enum _GXBlendMode { GX_BM_BLEND, GX_BM_LOGIC, GX_BM_SUBTRACT, - GX_MAX_BLENDMODE, + GX_MAX_BLENDMODE } GXBlendMode; typedef enum _GXBlendFactor { @@ -353,7 +353,7 @@ typedef enum _GXBlendFactor { GX_BL_DSTALPHA, GX_BL_INVDSTALPHA, GX_BL_DSTCLR = GX_BL_SRCCLR, - GX_BL_INVDSTCLR = GX_BL_INVSRCCLR, + GX_BL_INVDSTCLR = GX_BL_INVSRCCLR } GXBlendFactor; typedef enum _GXLogicOp { @@ -372,7 +372,7 @@ typedef enum _GXLogicOp { GX_LO_INVCOPY, GX_LO_INVOR, GX_LO_NAND, - GX_LO_SET, + GX_LO_SET } GXLogicOp; typedef enum _GXCompCnt { @@ -384,7 +384,7 @@ typedef enum _GXCompCnt { GX_CLR_RGB = 0, GX_CLR_RGBA = 1, GX_TEX_S = 0, - GX_TEX_ST = 1, + GX_TEX_ST = 1 } GXCompCnt; typedef enum _GXCompType { @@ -398,7 +398,7 @@ typedef enum _GXCompType { GX_RGBX8 = 2, GX_RGBA4 = 3, GX_RGBA6 = 4, - GX_RGBA8 = 5, + GX_RGBA8 = 5 } GXCompType; typedef enum _GXPTTexMtx { @@ -422,7 +422,7 @@ typedef enum _GXPTTexMtx { GX_PTTEXMTX17 = 115, GX_PTTEXMTX18 = 118, GX_PTTEXMTX19 = 121, - GX_PTIDENTITY = 125, + GX_PTIDENTITY = 125 } GXPTTexMtx; typedef enum _GXTevRegID { @@ -430,24 +430,24 @@ typedef enum _GXTevRegID { GX_TEVREG0, GX_TEVREG1, GX_TEVREG2, - GX_MAX_TEVREG, + GX_MAX_TEVREG } GXTevRegID; typedef enum _GXDiffuseFn { GX_DF_NONE, GX_DF_SIGN, - GX_DF_CLAMP, + GX_DF_CLAMP } GXDiffuseFn; typedef enum _GXColorSrc { GX_SRC_REG, - GX_SRC_VTX, + GX_SRC_VTX } GXColorSrc; typedef enum _GXAttnFn { GX_AF_SPEC, GX_AF_SPOT, - GX_AF_NONE, + GX_AF_NONE } GXAttnFn; typedef enum _GXLightID { @@ -460,7 +460,7 @@ typedef enum _GXLightID { GX_LIGHT6 = 0x040, GX_LIGHT7 = 0x080, GX_MAX_LIGHT = 0x100, - GX_LIGHT_NULL = 0, + GX_LIGHT_NULL = 0 } GXLightID; typedef enum _GXTexOffset { @@ -470,7 +470,7 @@ typedef enum _GXTexOffset { GX_TO_FOURTH, GX_TO_HALF, GX_TO_ONE, - GX_MAX_TEXOFFSET, + GX_MAX_TEXOFFSET } GXTexOffset; typedef enum _GXSpotFn { @@ -480,21 +480,21 @@ typedef enum _GXSpotFn { GX_SP_COS2, GX_SP_SHARP, GX_SP_RING1, - GX_SP_RING2, + GX_SP_RING2 } GXSpotFn; typedef enum _GXDistAttnFn { GX_DA_OFF, GX_DA_GENTLE, GX_DA_MEDIUM, - GX_DA_STEEP, + GX_DA_STEEP } GXDistAttnFn; typedef enum _GXCullMode { GX_CULL_NONE, GX_CULL_FRONT, GX_CULL_BACK, - GX_CULL_ALL, + GX_CULL_ALL } GXCullMode; typedef enum _GXTevSwapSel { @@ -502,14 +502,14 @@ typedef enum _GXTevSwapSel { GX_TEV_SWAP1, GX_TEV_SWAP2, GX_TEV_SWAP3, - GX_MAX_TEVSWAP, + GX_MAX_TEVSWAP } GXTevSwapSel; typedef enum _GXTevColorChan { GX_CH_RED = 0, GX_CH_GREEN, GX_CH_BLUE, - GX_CH_ALPHA, + GX_CH_ALPHA } GXTevColorChan; typedef enum _GXFogType { @@ -528,7 +528,7 @@ typedef enum _GXFogType { GX_FOG_EXP = GX_FOG_PERSP_EXP, GX_FOG_EXP2 = GX_FOG_PERSP_EXP2, GX_FOG_REVEXP = GX_FOG_PERSP_REVEXP, - GX_FOG_REVEXP2 = GX_FOG_PERSP_REVEXP2, + GX_FOG_REVEXP2 = GX_FOG_PERSP_REVEXP2 } GXFogType; typedef enum _GXTevColorArg { @@ -547,7 +547,7 @@ typedef enum _GXTevColorArg { GX_CC_ONE, GX_CC_HALF, GX_CC_KONST, - GX_CC_ZERO, + GX_CC_ZERO } GXTevColorArg; typedef enum _GXTevAlphaArg { @@ -558,7 +558,7 @@ typedef enum _GXTevAlphaArg { GX_CA_TEXA, GX_CA_RASA, GX_CA_KONST, - GX_CA_ZERO, + GX_CA_ZERO } GXTevAlphaArg; typedef enum _GXTevOp { @@ -573,14 +573,14 @@ typedef enum _GXTevOp { GX_TEV_COMP_RGB8_GT = 14, GX_TEV_COMP_RGB8_EQ = 15, GX_TEV_COMP_A8_GT = GX_TEV_COMP_RGB8_GT, - GX_TEV_COMP_A8_EQ = GX_TEV_COMP_RGB8_EQ, + GX_TEV_COMP_A8_EQ = GX_TEV_COMP_RGB8_EQ } GXTevOp; typedef enum _GXTevBias { GX_TB_ZERO, GX_TB_ADDHALF, GX_TB_SUBHALF, - GX_MAX_TEVBIAS, + GX_MAX_TEVBIAS } GXTevBias; typedef enum _GXTevScale { @@ -588,7 +588,7 @@ typedef enum _GXTevScale { GX_CS_SCALE_2, GX_CS_SCALE_4, GX_CS_DIVIDE_2, - GX_MAX_TEVSCALE, + GX_MAX_TEVSCALE } GXTevScale; typedef enum _GXTevKColorSel { @@ -623,7 +623,7 @@ typedef enum _GXTevKColorSel { GX_TEV_KCSEL_K0_A = 0x1C, GX_TEV_KCSEL_K1_A = 0x1D, GX_TEV_KCSEL_K2_A = 0x1E, - GX_TEV_KCSEL_K3_A = 0x1F, + GX_TEV_KCSEL_K3_A = 0x1F } GXTevKColorSel; typedef enum _GXTevKAlphaSel { @@ -654,7 +654,7 @@ typedef enum _GXTevKAlphaSel { GX_TEV_KASEL_K0_A = 0x1C, GX_TEV_KASEL_K1_A = 0x1D, GX_TEV_KASEL_K2_A = 0x1E, - GX_TEV_KASEL_K3_A = 0x1F, + GX_TEV_KASEL_K3_A = 0x1F } GXTevKAlphaSel; typedef enum _GXTevKColorID { @@ -662,14 +662,14 @@ typedef enum _GXTevKColorID { GX_KCOLOR1, GX_KCOLOR2, GX_KCOLOR3, - GX_MAX_KCOLOR, + GX_MAX_KCOLOR } GXTevKColorID; typedef enum _GXZTexOp { GX_ZT_DISABLE, GX_ZT_ADD, GX_ZT_REPLACE, - GX_MAX_ZTEXOP, + GX_MAX_ZTEXO } GXZTexOp; typedef enum _GXIndTexFormat { @@ -677,7 +677,7 @@ typedef enum _GXIndTexFormat { GX_ITF_5, GX_ITF_4, GX_ITF_3, - GX_MAX_ITFORMAT, + GX_MAX_ITFORMAT } GXIndTexFormat; typedef enum _GXIndTexBiasSel { @@ -689,7 +689,7 @@ typedef enum _GXIndTexBiasSel { GX_ITB_SU, GX_ITB_TU, GX_ITB_STU, - GX_MAX_ITBIAS, + GX_MAX_ITBIAS } GXIndTexBiasSel; typedef enum _GXIndTexAlphaSel { @@ -697,7 +697,7 @@ typedef enum _GXIndTexAlphaSel { GX_ITBA_S, GX_ITBA_T, GX_ITBA_U, - GX_MAX_ITBALPHA, + GX_MAX_ITBALPHA } GXIndTexAlphaSel; typedef enum _GXIndTexMtxID { @@ -710,7 +710,7 @@ typedef enum _GXIndTexMtxID { GX_ITM_S2, GX_ITM_T0 = 9, GX_ITM_T1, - GX_ITM_T2, + GX_ITM_T2 } GXIndTexMtxID; typedef enum _GXIndTexWrap { @@ -721,7 +721,7 @@ typedef enum _GXIndTexWrap { GX_ITW_32, GX_ITW_16, GX_ITW_0, - GX_MAX_ITWRAP, + GX_MAX_ITWRAP } GXIndTexWrap; typedef enum _GXIndTexStageID { @@ -729,7 +729,7 @@ typedef enum _GXIndTexStageID { GX_INDTEXSTAGE1, GX_INDTEXSTAGE2, GX_INDTEXSTAGE3, - GX_MAX_INDTEXSTAGE, + GX_MAX_INDTEXSTAGE } GXIndTexStageID; typedef enum _GXIndTexScale { @@ -742,12 +742,12 @@ typedef enum _GXIndTexScale { GX_ITS_64, GX_ITS_128, GX_ITS_256, - GX_MAX_ITSCALE, + GX_MAX_ITSCALE } GXIndTexScale; typedef enum _GXClipMode { GX_CLIP_ENABLE = 0, - GX_CLIP_DISABLE = 1, + GX_CLIP_DISABLE = 1 } GXClipMode; typedef enum _GXTlut { @@ -770,21 +770,21 @@ typedef enum _GXTlut { GX_BIGTLUT0 = 16, GX_BIGTLUT1 = 17, GX_BIGTLUT2 = 18, - GX_BIGTLUT3 = 19, + GX_BIGTLUT3 = 19 } GXTlut; typedef enum _GXTlutFmt { GX_TL_IA8, GX_TL_RGB565, GX_TL_RGB5A3, - GX_MAX_TLUTFMT, + GX_MAX_TLUTFMT } GXTlutFmt; typedef enum _GXMiscToken { GX_MT_NULL = 0, GX_MT_XF_FLUSH = 1, GX_MT_DL_SAVE_CONTEXT = 2, - GX_MT_ABORT_WAIT_COPYOUT = 3, + GX_MT_ABORT_WAIT_COPYOUT = 3 } GXMiscToken; typedef enum _GXTexCacheSize { @@ -834,7 +834,6 @@ typedef enum _GXPerf0 { GX_PERF0_CLOCKS, GX_PERF0_NONE - } GXPerf0; typedef enum _GXPerf1 { @@ -864,7 +863,6 @@ typedef enum _GXPerf1 { GX_PERF1_CLOCKS, GX_PERF1_NONE - } GXPerf1; typedef enum _GXVCachePerf { @@ -881,25 +879,24 @@ typedef enum _GXVCachePerf { GX_VC_TEX6, GX_VC_TEX7, GX_VC_ALL = 0xf - } GXVCachePerf; typedef enum _GXFBClamp { GX_CLAMP_NONE = 0, GX_CLAMP_TOP = 1, - GX_CLAMP_BOTTOM = 2, + GX_CLAMP_BOTTOM = 2 } GXFBClamp; typedef enum _GXCopyMode { GX_COPY_PROGRESSIVE = 0, GX_COPY_INTLC_EVEN = 2, - GX_COPY_INTLC_ODD = 3, + GX_COPY_INTLC_ODD = 3 } GXCopyMode; typedef enum _GXAlphaReadMode { GX_READ_00 = 0, GX_READ_FF = 1, - GX_READ_NONE = 2, + GX_READ_NONE = 2 } GXAlphaReadMode; diff --git a/include/dolphin/gx/GXExtra.h b/include/dolphin/gx/GXExtra.h index afd29caa..9ba48170 100644 --- a/include/dolphin/gx/GXExtra.h +++ b/include/dolphin/gx/GXExtra.h @@ -19,7 +19,7 @@ typedef struct { typedef enum { GX_TF_R8_PC = 0x60, - GX_TF_RGBA8_PC = 0x61, + GX_TF_RGBA8_PC = 0x61 } GXPCTexFmt; void GXDestroyTexObj(GXTexObj* obj); diff --git a/include/dolphin/gx/GXStruct.h b/include/dolphin/gx/GXStruct.h index 8b810140..49f038bc 100644 --- a/include/dolphin/gx/GXStruct.h +++ b/include/dolphin/gx/GXStruct.h @@ -89,7 +89,7 @@ typedef enum _GXTlutSize GX_TLUT_2K = 128, GX_TLUT_4K = 256, GX_TLUT_8K = 512, - GX_TLUT_16K = 1024, + GX_TLUT_16K = 1024 } GXTlutSize; typedef struct _GXVtxAttrFmtList { diff --git a/include/dolphin/gx/GXVerify.h b/include/dolphin/gx/GXVerify.h index a4e40cfb..f43dee45 100644 --- a/include/dolphin/gx/GXVerify.h +++ b/include/dolphin/gx/GXVerify.h @@ -7,7 +7,7 @@ typedef enum { GX_WARN_NONE, GX_WARN_SEVERE, GX_WARN_MEDIUM, - GX_WARN_ALL, + GX_WARN_ALL } GXWarningLevel; #ifdef _DEBUG diff --git a/include/dolphin/vitypes.h b/include/dolphin/vitypes.h index db958702..be262ea3 100644 --- a/include/dolphin/vitypes.h +++ b/include/dolphin/vitypes.h @@ -50,12 +50,12 @@ typedef enum { // GCA VI_TVMODE_GCA_INT = VI_TVMODE(VI_GCA, VI_INTERLACE), VI_TVMODE_GCA_DS = VI_TVMODE(VI_GCA, VI_NON_INTERLACE), - VI_TVMODE_GCA_PROG = VI_TVMODE(VI_GCA, VI_PROGRESSIVE), + VI_TVMODE_GCA_PROG = VI_TVMODE(VI_GCA, VI_PROGRESSIVE) } VITVMode; typedef enum { VI_XFBMODE_SF = 0, - VI_XFBMODE_DF = 1, + VI_XFBMODE_DF = 1 } VIXFBMode; typedef void (*VIPositionCallback)(s16 x, s16 y); diff --git a/include/ext_math.h b/include/ext_math.h index 7ff5edbf..e979909d 100644 --- a/include/ext_math.h +++ b/include/ext_math.h @@ -32,4 +32,8 @@ typedef struct vec2f { #define asind(x) (180.0*(asinf((x)) / M_PI)) #define atan2d(y, x) (180.0*(atan2((y), (x)) / M_PI)) +#ifndef __MWERKS__ +void HuSetVecF(Vec* arg0, f32 arg8, f32 arg9, f32 argA) +#endif + #endif diff --git a/include/game/data.h b/include/game/data.h index 288e5577..9c01b09b 100644 --- a/include/game/data.h +++ b/include/game/data.h @@ -17,7 +17,7 @@ #include "dolphin/types.h" -typedef struct data_read_stat { +struct data_read_stat { s32 dir_id; void *dir; void *file; @@ -27,7 +27,7 @@ typedef struct data_read_stat { s32 num; u32 status; DVDFileInfo file_info; -} DataReadStat; +}; void HuDataInit(void); s32 HuDataReadChk(s32 data_num); @@ -56,4 +56,4 @@ void HuDecodeData(void *src, void *dst, u32 size, s32 decode_type); extern u32 DirDataSize; -#endif \ No newline at end of file +#endif diff --git a/include/game/hsfanim.h b/include/game/hsfanim.h index 32c9c4cc..9cf16673 100644 --- a/include/game/hsfanim.h +++ b/include/game/hsfanim.h @@ -26,7 +26,7 @@ typedef struct { /* 0x40 */ GXColor unk40; } HsfanimStruct01; // Size 0x44 -typedef struct particle_data { +struct particle_data { /* 0x00 */ s16 unk_00; /* 0x02 */ s16 unk_02; /* 0x04 */ Vec unk_04; @@ -50,7 +50,7 @@ typedef struct particle_data { /* 0x4C */ Vec *unk_4C; /* 0x50 */ void *unk_50; /* 0x54 */ ParticleHook unk_54; -} ParticleData; // Size 0x58 +}; // Size 0x58 typedef struct { /* 0x00 */ s16 unk00; diff --git a/include/game/hsfman.h b/include/game/hsfman.h index 87299d79..2be96d31 100644 --- a/include/game/hsfman.h +++ b/include/game/hsfman.h @@ -1,10 +1,10 @@ #ifndef _GAME_HSFMAN_H #define _GAME_HSFMAN_H +#include "game/data.h" #include "game/hsfanim.h" #include "game/hsfformat.h" #include "game/memory.h" -#include "game/data.h" #define HU3D_MODEL_MAX 512 #define HU3D_MOTION_MAX 256 @@ -79,11 +79,12 @@ #define Hu3DModelCreateFile(data_id) (Hu3DModelCreate(HuDataSelHeapReadNum((data_id), MEMORY_DEFAULT_NUM, HEAP_DATA))) +typedef struct model_data ModelData; typedef struct particle_data ParticleData; typedef void (*ModelHookFunc)(struct model_data *, Mtx); -typedef struct model_data { +struct model_data { u8 unk_00; u8 unk_01; u8 unk_02; @@ -107,25 +108,25 @@ typedef struct model_data { u32 unk_4C; u32 attr; u32 motion_attr; - Point3d unk_58; - f32 unk_64; - f32 unk_68; - f32 unk_6C; - f32 unk_70; - f32 unk_74; - f32 unk_78; - f32 unk_7C; - f32 unk_80; - f32 unk_84; - f32 unk_88; - f32 unk_8C; - f32 unk_90; - f32 unk_94; - f32 unk_98; - f32 unk_9C; - f32 unk_A0; - f32 unk_A4[4]; - f32 unk_B4[4]; + Vec unk_58; + float unk_64; + float unk_68; + float unk_6C; + float unk_70; + float unk_74; + float unk_78; + float unk_7C; + float unk_80; + float unk_84; + float unk_88; + float unk_8C; + float unk_90; + float unk_94; + float unk_98; + float unk_9C; + float unk_A0; + float unk_A4[4]; + float unk_B4[4]; union { HsfData *hsfData; ModelHookFunc hook; @@ -136,13 +137,13 @@ typedef struct model_data { Vec scale; Mtx unk_F0; void *unk_120; -} ModelData; // sizeof 0x124 +}; // sizeof 0x124 typedef struct camera_data { - f32 fov; - f32 near; - f32 far; - f32 aspect; - f32 aspect_dupe; + float fov; + float near; + float far; + float aspect; + float aspect_dupe; Vec pos; Vec up; Vec target; @@ -150,20 +151,20 @@ typedef struct camera_data { s16 scissor_y; s16 scissor_w; s16 scissor_h; - f32 viewport_x; - f32 viewport_y; - f32 viewport_w; - f32 viewport_h; - f32 near_z; - f32 far_z; + float viewport_x; + float viewport_y; + float viewport_w; + float viewport_h; + float near_z; + float far_z; } CameraData; // sizeof 0x58 typedef struct ThreeDProjectionStruct { u8 unk_00; char unk_01[0x3]; void *unk_04; Vec unk_08; - Point3d unk_14; - Point3d unk_20; + Vec unk_14; + Vec unk_20; Vec unk_2C; Mtx unk_38; Mtx unk_68; @@ -172,7 +173,7 @@ typedef struct shadow_data { u8 unk_00; u8 unk_01; u16 unk_02; - void* unk_04; + void *unk_04; Vec unk_08; Vec unk_14; Vec unk_20; @@ -183,8 +184,8 @@ typedef struct shadow_data { typedef struct light_data { s16 unk_00; s16 unk_02; - f32 unk_04; - f32 unk_08; + float unk_04; + float unk_08; char unk_0C[0x10]; Vec unk_1C; Vec unk_28; @@ -192,8 +193,8 @@ typedef struct light_data { GXColor color; } LightData; -extern void GXWaitDrawDone(); /* extern */ -extern void GXInitSpecularDir(GXLightObj*, f32, f32, f32); +extern void GXWaitDrawDone(); /* extern */ +extern void GXInitSpecularDir(GXLightObj *, float, float, float); void Hu3DInit(void); void Hu3DPreProc(void); @@ -208,11 +209,11 @@ s16 Hu3DModelLink(s16); s16 Hu3DHookFuncCreate(ModelHookFunc); void Hu3DModelKill(s16); void Hu3DModelAllKill(void); -void Hu3DModelPosSet(s16, f32, f32, f32); +void Hu3DModelPosSet(s16, float, float, float); void Hu3DModelPosSetV(s16, Vec *); -void Hu3DModelRotSet(s16, f32, f32, f32); +void Hu3DModelRotSet(s16, float, float, float); void Hu3DModelRotSetV(s16, Vec *); -void Hu3DModelScaleSet(s16, f32, f32, f32); +void Hu3DModelScaleSet(s16, float, float, float); void Hu3DModelScaleSetV(s16, Vec *); void Hu3DModelAttrSet(s16, u32); void Hu3DModelAttrReset(s16, u32); @@ -222,16 +223,16 @@ void Hu3DModelClusterAttrSet(s16, s16, s32); void Hu3DModelClusterAttrReset(s16, s16, s32); void Hu3DModelCameraSet(s16, u16); void Hu3DModelLayerSet(s16, s16); -HsfObject* Hu3DModelObjPtrGet(s16, char *); -void Hu3DModelTPLvlSet(s16, f32); -void Hu3DModelHiliteMapSet(s16, AnimData*); +HsfObject *Hu3DModelObjPtrGet(s16, char *); +void Hu3DModelTPLvlSet(s16, float); +void Hu3DModelHiliteMapSet(s16, AnimData *); void Hu3DModelShadowSet(s16); void Hu3DModelShadowReset(s16); void Hu3DModelShadowDispOn(s16); void Hu3DModelShadowDispOff(s16); void Hu3DModelShadowMapSet(s16); void Hu3DModelShadowMapObjSet(s16, char *); -void Hu3DModelAmbSet(s16, f32, f32, f32); +void Hu3DModelAmbSet(s16, float, float, float); void Hu3DModelHookSet(s16, char *, s16); void Hu3DModelHookReset(s16); void Hu3DModelHookObjReset(s16, char *); @@ -240,10 +241,10 @@ void Hu3DModelProjectionReset(s16, s16); void Hu3DModelHiliteTypeSet(s16, s16); void Hu3DModelReflectTypeSet(s16, s16); void Hu3DCameraCreate(s32); -void Hu3DCameraPerspectiveSet(s32, f32, f32, f32, f32); -void Hu3DCameraViewportSet(s32, f32, f32, f32, f32, f32, f32); +void Hu3DCameraPerspectiveSet(s32, float, float, float, float); +void Hu3DCameraViewportSet(s32, float, float, float, float, float, float); void Hu3DCameraScissorSet(s32, u32, u32, u32, u32); -void Hu3DCameraPosSet(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32); +void Hu3DCameraPosSet(s32, float, float, float, float, float, float, float, float, float); void Hu3DCameraPosSetV(s32 cam, Vec *pos, Vec *up, Vec *target); void Hu3DCameraKill(s32); void Hu3DCameraAllKill(void); @@ -254,47 +255,47 @@ void Hu3DCameraMotionOn(s16, s8); void Hu3DCameraMotionStart(s16, u16); void Hu3DCameraMotionOff(s16); void Hu3DLighInit(void); -s16 Hu3DGLightCreate(f32, f32, f32, f32, f32, f32, u8, u8, u8); -s16 Hu3DGLightCreateV(Vec*, Vec*, GXColor*); -s16 Hu3DLLightCreate(s16, f32, f32, f32, f32, f32, f32, u8, u8, u8); -s16 Hu3DLLightCreateV(s16, Vec*, Vec*, GXColor*); -void Hu3DGLightSpotSet(s16, f32, u16); -void Hu3DLLightSpotSet(s16, s16, f32, u16); +s16 Hu3DGLightCreate(float, float, float, float, float, float, u8, u8, u8); +s16 Hu3DGLightCreateV(Vec *, Vec *, GXColor *); +s16 Hu3DLLightCreate(s16, float, float, float, float, float, float, u8, u8, u8); +s16 Hu3DLLightCreateV(s16, Vec *, Vec *, GXColor *); +void Hu3DGLightSpotSet(s16, float, u16); +void Hu3DLLightSpotSet(s16, s16, float, u16); void Hu3DGLightInfinitytSet(s16); void Hu3DLLightInfinitytSet(s16, s16); -void Hu3DGLightPointSet(s16, f32, f32, u16); -void Hu3DLLightPointSet(s16, s16, f32, f32, u16); +void Hu3DGLightPointSet(s16, float, float, u16); +void Hu3DLLightPointSet(s16, s16, float, float, u16); void Hu3DGLightKill(s16); void Hu3DLLightKill(s16, s16); void Hu3DLightAllKill(void); void Hu3DGLightColorSet(s16, u8, u8, u8, u8); void Hu3DLLightColorSet(s16, s16, u8, u8, u8, u8); -void Hu3DGLightPosSetV(s16, Vec*, Point3d*); -void Hu3DLLightPosSetV(s16, s16, Vec*, Point3d*); -void Hu3DGLightPosSet(s16, f32, f32, f32, f32, f32, f32); -void Hu3DLLightPosSet(s16, s16, f32, f32, f32, f32, f32, f32); -void Hu3DGLightPosAimSetV(s16, Point3d*, Point3d*); -void Hu3DLLightPosAimSetV(s16, s16, Point3d*, Point3d*); -void Hu3DGLightPosAimSet(s16, f32, f32, f32, f32, f32, f32); -void Hu3DLLightPosAimSet(s16, s16, f32, f32, f32, f32, f32, f32); +void Hu3DGLightPosSetV(s16, Vec *, Vec *); +void Hu3DLLightPosSetV(s16, s16, Vec *, Vec *); +void Hu3DGLightPosSet(s16, float, float, float, float, float, float); +void Hu3DLLightPosSet(s16, s16, float, float, float, float, float, float); +void Hu3DGLightPosAimSetV(s16, Vec *, Vec *); +void Hu3DLLightPosAimSetV(s16, s16, Vec *, Vec *); +void Hu3DGLightPosAimSet(s16, float, float, float, float, float, float); +void Hu3DLLightPosAimSet(s16, s16, float, float, float, float, float, float); void Hu3DGLightStaticSet(s16, s32); void Hu3DLLightStaticSet(s16, s16, s32); s32 Hu3DModelLightInfoSet(s16, s16); -s16 Hu3DLightSet(ModelData*, Mtx*, Mtx*, f32); -void lightSet(LightData* arg0, s16 arg1, Mtx *arg2, Mtx *arg3, f32 arg8); +s16 Hu3DLightSet(ModelData *, Mtx *, Mtx *, float); +void lightSet(LightData *arg0, s16 arg1, Mtx *arg2, Mtx *arg3, float arg8); void Hu3DReflectNoSet(s16 arg0); -void Hu3DFogSet(f32, f32, u8, u8, u8); +void Hu3DFogSet(float, float, u8, u8, u8); void Hu3DFogClear(void); -void Hu3DShadowCreate(f32, f32, f32); -void Hu3DShadowPosSet(Vec*, Vec*, Vec*); -void Hu3DShadowTPLvlSet(f32); +void Hu3DShadowCreate(float, float, float); +void Hu3DShadowPosSet(Vec *, Vec *, Vec *); +void Hu3DShadowTPLvlSet(float); void Hu3DShadowSizeSet(u16); void Hu3DShadowExec(void); -s16 Hu3DProjectionCreate(void*, f32, f32, f32); +s16 Hu3DProjectionCreate(void *, float, float, float); void Hu3DProjectionKill(s16); -void Hu3DProjectionPosSet(s16, Vec*, Vec*, Vec*); -void Hu3DProjectionTPLvlSet(s16, f32); -void Hu3DMipMapSet(char*, s16, s32, f32); +void Hu3DProjectionPosSet(s16, Vec *, Vec *, Vec *); +void Hu3DProjectionTPLvlSet(s16, float); +void Hu3DMipMapSet(char *, s16, s32, float); extern ModelData Hu3DData[0x200]; extern CameraData Hu3DCamera[0x10]; diff --git a/include/game/minigame_seq.h b/include/game/minigame_seq.h index a345b0fe..6f20a101 100644 --- a/include/game/minigame_seq.h +++ b/include/game/minigame_seq.h @@ -48,7 +48,7 @@ typedef struct seq_work SeqWork; typedef s32 (*SeqUpdateFunc)(SeqWork *work); typedef s32 (*SeqInitFunc)(SeqWork *work, va_list params); -typedef struct seq_work { +struct seq_work { SeqUpdateFunc update; char *data; float x; @@ -73,7 +73,7 @@ typedef struct seq_work { u8 stat; u8 unk_7C; u8 unk_7D; -} SeqWork; +}; void MGSeqInit(void); void MGSeqMain(void); diff --git a/src/REL/m403Dll/main.c b/src/REL/m403Dll/main.c index af675a31..1a6faa0c 100755 --- a/src/REL/m403Dll/main.c +++ b/src/REL/m403Dll/main.c @@ -18,6 +18,10 @@ #include "ext_math.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + typedef struct { /* 0x000 */ u8 unk00; /* 0x001 */ char unk01[3]; diff --git a/src/REL/m404Dll/main.c b/src/REL/m404Dll/main.c index e331d72f..ba9e9ca0 100644 --- a/src/REL/m404Dll/main.c +++ b/src/REL/m404Dll/main.c @@ -14,6 +14,11 @@ #include "string.h" #include "version.h" +#ifndef __MWERKS__ +#include "game/audio.h" +#include "game/esprite.h" +#endif + typedef struct UnkM404Struct { s16 unk_00; s16 unk_02[6]; diff --git a/src/REL/m407dll/camera.c b/src/REL/m407dll/camera.c index 69d04b85..4db0b078 100644 --- a/src/REL/m407dll/camera.c +++ b/src/REL/m407dll/camera.c @@ -1,35 +1,37 @@ -#include "game/process.h" -#include "game/object.h" -#include "game/hsfdraw.h" #include "ext_math.h" +#include "game/hsfdraw.h" +#include "game/object.h" +#include "game/process.h" + typedef struct unkDominationData2 { -/* 0x00 */ s32 unk_00; -/* 0x04 */ s32 unk_04; -/* 0x08 */ Point3d unk_08; -/* 0x14 */ Point3d unk_14; -/* 0x20 */ f32 unk_20; -/* 0x24 */ Point3d unk_24; -/* 0x30 */ Point3d unk_30; -/* 0x3C */ f32 unk_3C; -/* 0x40 */ s32 unk_40; -/* 0x44 */ f32 unk_44; -/* 0x48 */ f32 unk_48; -} unkDominationData2; //sizeof 0x4C + /* 0x00 */ s32 unk_00; + /* 0x04 */ s32 unk_04; + /* 0x08 */ Vec unk_08; + /* 0x14 */ Vec unk_14; + /* 0x20 */ f32 unk_20; + /* 0x24 */ Vec unk_24; + /* 0x30 */ Vec unk_30; + /* 0x3C */ f32 unk_3C; + /* 0x40 */ s32 unk_40; + /* 0x44 */ f32 unk_44; + /* 0x48 */ f32 unk_48; +} unkDominationData2; // sizeof 0x4C -//function signatures +// function signatures void fn_1_1CAC(f32, f32, f32); void fn_1_1D08(f32, f32, f32); void fn_1_1D64(f32); -void fn_1_2024(omObjData*); +void fn_1_2024(omObjData *); -//bss -Process* lbl_1_bss_34; -omObjData* lbl_1_bss_30; +// bss +Process *lbl_1_bss_34; +omObjData *lbl_1_bss_30; + +void fn_1_1B1C(Process *arg0) +{ + unkDominationData2 *unkData; -void fn_1_1B1C(Process* arg0) { - unkDominationData2* unkData; - lbl_1_bss_34 = arg0; Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); Hu3DCameraPerspectiveSet(1, 45.0f, 10.0f, 40000.0f, 1.2f); @@ -42,49 +44,55 @@ void fn_1_1B1C(Process* arg0) { fn_1_1D64(0.0f); } -void fn_1_1CA8(void) { +void fn_1_1CA8(void) { } -} - -void fn_1_1CAC(f32 arg8, f32 arg9, f32 argA) { +void fn_1_1CAC(f32 arg8, f32 arg9, f32 argA) +{ Center.x = arg8; Center.y = arg9; Center.z = argA; } -void fn_1_1CD4(f32* arg0, f32* arg1, f32* arg2) { +void fn_1_1CD4(f32 *arg0, f32 *arg1, f32 *arg2) +{ *arg0 = Center.x; *arg1 = Center.y; *arg2 = Center.z; } -void fn_1_1D08(f32 arg8, f32 arg9, f32 argA) { +void fn_1_1D08(f32 arg8, f32 arg9, f32 argA) +{ CRot.x = arg8; CRot.y = arg9; CRot.z = argA; } -void fn_1_1D30(f32* arg0, f32* arg1, f32* arg2) { +void fn_1_1D30(f32 *arg0, f32 *arg1, f32 *arg2) +{ *arg0 = CRot.x; *arg1 = CRot.y; *arg2 = CRot.z; } -void fn_1_1D64(f32 arg8) { +void fn_1_1D64(f32 arg8) +{ CZoom = arg8; } -void fn_1_1D74(f32* arg0) { +void fn_1_1D74(f32 *arg0) +{ *arg0 = CZoom; } -s32 fn_1_1D88(void) { - unkDominationData2* unkData = lbl_1_bss_30->data; +s32 fn_1_1D88(void) +{ + unkDominationData2 *unkData = lbl_1_bss_30->data; return unkData->unk_04; } -void fn_1_1DB0(Point3d* arg0, Point3d* arg1, f32* arg2, s32 arg3, s32 arg4) { - unkDominationData2* temp_r31; +void fn_1_1DB0(Vec *arg0, Vec *arg1, f32 *arg2, s32 arg3, s32 arg4) +{ + unkDominationData2 *temp_r31; temp_r31 = lbl_1_bss_30->data; temp_r31->unk_00 = arg4; @@ -100,46 +108,48 @@ void fn_1_1DB0(Point3d* arg0, Point3d* arg1, f32* arg2, s32 arg3, s32 arg4) { temp_r31->unk_04 = 1; } -f32 fn_1_1F1C(f32 arg8, f32 arg9) { +f32 fn_1_1F1C(f32 arg8, f32 arg9) +{ if (((arg8 > 0.0f) && (arg9 > 0.0f)) || ((arg8 < 0.0f) && (arg9 < 0.0f))) { return abs(arg8 - arg9); } - + return abs(arg8) + abs(arg9); } -void fn_1_2024(omObjData* arg0) { +void fn_1_2024(omObjData *arg0) +{ Vec sp14; Vec sp8; f32 var_f31; f32 cZoomTemp; - unkDominationData2* temp_r31; + unkDominationData2 *temp_r31; temp_r31 = arg0->data; if (temp_r31->unk_04 != 0) { switch (temp_r31->unk_00) { - case 0: - var_f31 = temp_r31->unk_44; - break; - case 1: - var_f31 = temp_r31->unk_44; - if (temp_r31->unk_48 > 0.5) { - temp_r31->unk_00 = 2; - } - break; - case 2: - var_f31 = sind(90.0f * temp_r31->unk_44); - break; - case 3: - var_f31 = sind(90.0f * temp_r31->unk_44); - if (temp_r31->unk_48 > 0.5) { - temp_r31->unk_00 = 4; - } - break; - case 4: - var_f31 = sind(90.0f * temp_r31->unk_44); - var_f31 *= var_f31; - break; + case 0: + var_f31 = temp_r31->unk_44; + break; + case 1: + var_f31 = temp_r31->unk_44; + if (temp_r31->unk_48 > 0.5) { + temp_r31->unk_00 = 2; + } + break; + case 2: + var_f31 = sind(90.0f * temp_r31->unk_44); + break; + case 3: + var_f31 = sind(90.0f * temp_r31->unk_44); + if (temp_r31->unk_48 > 0.5) { + temp_r31->unk_00 = 4; + } + break; + case 4: + var_f31 = sind(90.0f * temp_r31->unk_44); + var_f31 *= var_f31; + break; } sp14.x = temp_r31->unk_24.x + (var_f31 * (temp_r31->unk_08.x - temp_r31->unk_24.x)); sp14.y = temp_r31->unk_24.y + (var_f31 * (temp_r31->unk_08.y - temp_r31->unk_24.y)); diff --git a/src/REL/m407dll/effect.c b/src/REL/m407dll/effect.c index 52df4f5a..4e5287ba 100644 --- a/src/REL/m407dll/effect.c +++ b/src/REL/m407dll/effect.c @@ -2,6 +2,7 @@ #include "game/hsfmotion.h" #include "game/object.h" #include "game/process.h" +#include "math.h" #include "REL/m407dll.h" diff --git a/src/REL/m407dll/main.c b/src/REL/m407dll/main.c index a3b4c1d7..83406eca 100644 --- a/src/REL/m407dll/main.c +++ b/src/REL/m407dll/main.c @@ -1,13 +1,12 @@ #include "game/object.h" #include "game/gamework_data.h" +#include "game/gamework.h" #include "game/minigame_seq.h" #include "game/wipe.h" #include "game/audio.h" #include "game/hsfman.h" -#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) - -typedef void (*ObjFuncs)(void); +#include "REL/m407dll.h" typedef struct unkDominationData5 { /* 0x00 */ u32 unk_00; @@ -27,12 +26,6 @@ typedef struct unkDominationData5 { } unkDominationData5; //sizeof 0x48 //function signatures -void fn_1_388(u8, s32); -void fn_1_3C4(u8); -s32 fn_1_4C0(s32); -s32 fn_1_508(u8); -s32 fn_1_53C(u8); -void fn_1_568(s16, s16, s16); void fn_1_4B7C(void); void fn_1_4C3C(s32); void fn_1_4C6C(omObjData*); @@ -56,7 +49,7 @@ omObjData* lbl_1_bss_397C; s16 lbl_1_bss_3978; //data -ObjFuncs lbl_1_data_2A8[] = { +VoidFuncs lbl_1_data_2A8[] = { fn_1_4D0C, fn_1_4D54, fn_1_4E8C, diff --git a/src/REL/m407dll/map.c b/src/REL/m407dll/map.c index 3586f39a..4675aa80 100644 --- a/src/REL/m407dll/map.c +++ b/src/REL/m407dll/map.c @@ -3,7 +3,7 @@ #include "game/object.h" #include "game/process.h" -#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) +#include "REL/m407dll.h" // function signatures void fn_1_162C(omObjData *); @@ -34,10 +34,10 @@ s32 lbl_1_data_198[] = { Vec lbl_1_data_1CC[] = { { 600.0f, 3.0f, -300.0f }, { 200.0f, 3.0f, -300.0f }, { -200.0f, 3.0f, -300.0f }, { -600.0f, 3.0f, -300.0f } }; -Point3d lbl_1_data_1FC = { 2000.0f, 3000.0f, 2000.0f }; -Point3d lbl_1_data_208 = { -0.5f, -0.5f, -0.5f }; +Vec lbl_1_data_1FC = { 2000.0f, 3000.0f, 2000.0f }; +Vec lbl_1_data_208 = { -0.5f, -0.5f, -0.5f }; GXColor lbl_1_data_214 = { 255, 255, 255, 255 }; -Point3d lbl_1_data_218 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_218 = { 0.0f, 1.0f, 0.0f }; void fn_1_14F0(Process *arg0, s32 arg1) { @@ -117,7 +117,7 @@ void fn_1_162C(omObjData *arg0) void fn_1_1A8C(omObjData *arg0) { - Point3d sp8; + Vec sp8; sp8.x = lbl_1_data_1FC.x; sp8.y = lbl_1_data_1FC.y; diff --git a/src/REL/m407dll/player.c b/src/REL/m407dll/player.c index 725f71bd..0557ca80 100644 --- a/src/REL/m407dll/player.c +++ b/src/REL/m407dll/player.c @@ -1,15 +1,16 @@ +#include "game/audio.h" #include "game/chrman.h" #include "game/frand.h" #include "game/gamework_data.h" #include "game/hsfman.h" +#include "game/hsfmotion.h" #include "game/object.h" #include "game/objsub.h" #include "game/pad.h" #include "game/process.h" #include "math.h" -#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) -typedef void (*ObjFuncs)(omObjData *); +#include "REL/m407dll.h" typedef struct unkDominationData { u8 unk_00; diff --git a/src/REL/m407dll/score.c b/src/REL/m407dll/score.c index e5cd5fed..4895ebd8 100644 --- a/src/REL/m407dll/score.c +++ b/src/REL/m407dll/score.c @@ -3,9 +3,7 @@ #include "game/process.h" #include "game/sprite.h" -#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) - -typedef void (*ObjFuncs)(void); +#include "REL/m407dll.h" typedef struct unkDominationData6 { /* 0x00 */ s32 unk_00; @@ -30,7 +28,7 @@ Process *lbl_1_bss_398C; omObjData *lbl_1_bss_3988; // data -ObjFuncs lbl_1_data_360[] = { fn_1_61A0, fn_1_6218, fn_1_62A0 }; +VoidFuncs lbl_1_data_360[] = { fn_1_61A0, fn_1_6218, fn_1_62A0 }; void fn_1_5C5C(Process *arg0, s16 arg1) { diff --git a/src/REL/m407dll/whomp.c b/src/REL/m407dll/whomp.c index 08605efb..43275f60 100644 --- a/src/REL/m407dll/whomp.c +++ b/src/REL/m407dll/whomp.c @@ -5,14 +5,12 @@ #include "game/object.h" #include "game/process.h" -#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) +#include "REL/m407dll.h" #define MAX_WHOMPS_PLAYER 160 #define MAX_WHOMPS_ALL_PLAYERS MAX_WHOMPS_PLAYER *ARRAY_COUNT(GWPlayer) #define MAX_WHOMPS (MAX_WHOMPS_PLAYER + 1) * ARRAY_COUNT(GWPlayer) -typedef void (*ObjFuncs)(omObjData *); - typedef struct unkDominationData7 { /* 0x00 */ u32 unk_00; /* 0x04 */ s32 unk_04; diff --git a/src/REL/m408Dll/main.c b/src/REL/m408Dll/main.c index 7494d1eb..fa04e61a 100644 --- a/src/REL/m408Dll/main.c +++ b/src/REL/m408Dll/main.c @@ -19,6 +19,10 @@ #include "ext_math.h" #include "math.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + s32 lbl_1_data_0[] = { DATA_MAKE_NUM(DATADIR_MGCONST, 0x00), DATA_MAKE_NUM(DATADIR_MGCONST, 0x01), diff --git a/src/REL/m409Dll/player.c b/src/REL/m409Dll/player.c index 26330990..9157deeb 100644 --- a/src/REL/m409Dll/player.c +++ b/src/REL/m409Dll/player.c @@ -9,6 +9,10 @@ #include "game/sprite.h" #include "ext_math.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + // bss omObjData *lbl_1_bss_3A0[4]; omObjData *lbl_1_bss_39C; diff --git a/src/REL/m410Dll/player.c b/src/REL/m410Dll/player.c index d4566bca..3286d2c0 100644 --- a/src/REL/m410Dll/player.c +++ b/src/REL/m410Dll/player.c @@ -11,6 +11,10 @@ #include "REL/m410Dll.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + omObjData *lbl_1_bss_74; AnimData *lbl_1_bss_70; s32 lbl_1_bss_60[4]; @@ -141,8 +145,6 @@ void fn_1_7E30(Process *objman) void fn_1_806C(void) { - s32 var_lr; - HuSprAnimKill(lbl_1_bss_70); CharModelKill(-1); } diff --git a/src/REL/m424Dll/ball.c b/src/REL/m424Dll/ball.c index 5114c552..c8c3177e 100644 --- a/src/REL/m424Dll/ball.c +++ b/src/REL/m424Dll/ball.c @@ -12,7 +12,6 @@ #include "game/sprite.h" #include "string.h" - // STRUCT typedef struct _M424DllBallStruct { u8 unk0; @@ -1467,7 +1466,7 @@ void fn_1_79FC(Vec *arg0, Vec *arg1, f32 arg2, Vec *arg3, Vec *arg4, f32 arg5, f } } -void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Point3d *arg3) +void fn_1_7CA0(Vec arg0, Vec arg1, f32 arg2, Vec *arg3) { f32 var_f31; diff --git a/src/REL/m427Dll/main.c b/src/REL/m427Dll/main.c index fdf0de2d..7031739f 100644 --- a/src/REL/m427Dll/main.c +++ b/src/REL/m427Dll/main.c @@ -10,6 +10,10 @@ #include "game/objsub.h" #include "game/wipe.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + typedef struct M427DllStruct2 { s32 unk0[3]; s32 unkC; diff --git a/src/REL/m427Dll/map.c b/src/REL/m427Dll/map.c index 1678f422..fa191ed6 100644 --- a/src/REL/m427Dll/map.c +++ b/src/REL/m427Dll/map.c @@ -492,7 +492,7 @@ void fn_1_3B20(s8 arg0, s16 arg1) Vec sp54[4] = { { 110.0f, -20.0f, 0.0f }, { -110.0f, -20.0f, 0.0f }, { 110.0f, -20.0f, 190.0f }, { -110.0f, -20.0f, 190.0f } }; Mtx sp24; f32 sp14[4] = { 135.0f, 225.0f, 45.0f, 315.0f }; - Point3d sp8; + Vec sp8; f32 temp_f31; s16 var_r29; s32 var_r27; diff --git a/src/REL/m434Dll/main.c b/src/REL/m434Dll/main.c index e13e8578..bfe8d0df 100644 --- a/src/REL/m434Dll/main.c +++ b/src/REL/m434Dll/main.c @@ -13,6 +13,10 @@ #include "math.h" #include "version.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + typedef struct camera_view { float zoom; Vec pos; diff --git a/src/REL/m443Dll/player.c b/src/REL/m443Dll/player.c index b0f2554d..9ed45b12 100644 --- a/src/REL/m443Dll/player.c +++ b/src/REL/m443Dll/player.c @@ -1166,7 +1166,7 @@ static inline f32 isEven(u32 arg) } } -void fn_1_8FFC(u32 arg0, Point3d *arg1, f32 arg2, f32 arg3) +void fn_1_8FFC(u32 arg0, Vec *arg1, f32 arg2, f32 arg3) { f32 temp_f31; f32 var_f29; diff --git a/src/REL/m444dll/datalist.c b/src/REL/m444dll/datalist.c index 3b4fbbaf..6d2e69f2 100644 --- a/src/REL/m444dll/datalist.c +++ b/src/REL/m444dll/datalist.c @@ -1,5 +1,9 @@ #include "REL/m444dll.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + s16 lbl_1_bss_199C2[90]; s16 lbl_1_bss_1990E[90]; s16 lbl_1_bss_1990A[2]; @@ -177,4 +181,4 @@ void fn_1_D950(void) espKill(lbl_1_bss_1990A[i]); } } -} \ No newline at end of file +} diff --git a/src/REL/m455Dll/main.c b/src/REL/m455Dll/main.c index 667d1084..36c27f42 100644 --- a/src/REL/m455Dll/main.c +++ b/src/REL/m455Dll/main.c @@ -17,6 +17,10 @@ #include "ext_math.h" #include "math.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + typedef struct camera_view_params { float zoom; Vec pos; diff --git a/src/REL/m461Dll/main.c b/src/REL/m461Dll/main.c index 0d20a7d3..1c4b57cc 100644 --- a/src/REL/m461Dll/main.c +++ b/src/REL/m461Dll/main.c @@ -23,6 +23,10 @@ #include "ext_math.h" +#ifndef __MWERKS__ +#include "game/audio.h" +#endif + #undef ABS #define ABS(x) ((0 > (x)) ? -(x) : (x)) diff --git a/src/REL/mentDll/common.c b/src/REL/mentDll/common.c index 77e82ced..59f44912 100644 --- a/src/REL/mentDll/common.c +++ b/src/REL/mentDll/common.c @@ -157,9 +157,9 @@ void fn_1_50C(void) void fn_1_5E8(s32 arg0) { - Point3d sp24 = { 0.0f, 3000.0f, 800.0f }; - Point3d sp18 = { 0.0f, 0.0f, 640.0f }; - Point3d spC = { 0.0f, 1.0f, 0.0f }; + Vec sp24 = { 0.0f, 3000.0f, 800.0f }; + Vec sp18 = { 0.0f, 0.0f, 640.0f }; + Vec spC = { 0.0f, 1.0f, 0.0f }; if (arg0 == 3) { sp24.x = sp18.x = 1200.0f; diff --git a/src/REL/modeltestDll/main.c b/src/REL/modeltestDll/main.c index 2b99a635..cb1c254b 100644 --- a/src/REL/modeltestDll/main.c +++ b/src/REL/modeltestDll/main.c @@ -163,8 +163,8 @@ HsfanimStruct00 lbl_1_data_258 = { { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } }, }; -const Point3d lbl_1_rodata_38 = { 0.0f, 0.0f, 0.0f }; -const Point3d lbl_1_rodata_44 = { 0.0f, 1.0f, 0.0f }; +const Vec lbl_1_rodata_38 = { 0.0f, 0.0f, 0.0f }; +const Vec lbl_1_rodata_44 = { 0.0f, 1.0f, 0.0f }; s16 lbl_1_bss_99C; s16 lbl_1_bss_99A; s16 lbl_1_bss_98A[8]; @@ -196,9 +196,9 @@ static u8 unk_bss[8]; void fn_1_29C(omObjData *arg0) { - Point3d sp20; - Point3d sp14; - Point3d sp8; + Vec sp20; + Vec sp14; + Vec sp8; Mtx sp2C; s16 var_r31; s16 temp_r27; @@ -337,7 +337,7 @@ void fn_1_F38(void) // -------------------------------------------------------------------------- // -static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) +static inline void HuControlCamCenter(Vec *sp18, Vec *sp30) { s8 temp_r28; @@ -364,10 +364,10 @@ const HuUnkF9C2 lbl_1_rodata_B8 = { { 8, 6, 4, 7, 9, 10, 11 } }; void fn_1_F9C(struct om_obj_data *omData) { - Point3d sp3C; - Point3d sp30; - Point3d sp24; - Point3d sp18; + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; f32 temp_f31; s32 var_r31; s16 var_r30; @@ -643,9 +643,9 @@ void fn_1_20F4(void) // -------------------------------------------------------------------------- // -void fn_1_28F8(Point3d *arg0, Point3d *arg1) +void fn_1_28F8(Vec *arg0, Vec *arg1) { - Point3d spC; + Vec spC; Mtx sp18; CameraData *cam; f32 temp_f31; diff --git a/src/REL/modeltestDll/modeltest00.c b/src/REL/modeltestDll/modeltest00.c index c687e5df..03f4fd71 100644 --- a/src/REL/modeltestDll/modeltest00.c +++ b/src/REL/modeltestDll/modeltest00.c @@ -1,27 +1,28 @@ -#include "math.h" #include "game/chrman.h" -#include "game/wipe.h" #include "game/pad.h" +#include "game/wipe.h" +#include "math.h" + #include "REL/modeltestDll.h" // -------------------------------------------------------------------------- // -omObjData * unk_bss_9FC; -omObjData * lbl_1_bss_9F8; -omObjData * lbl_1_bss_9F4; +omObjData *unk_bss_9FC; +omObjData *lbl_1_bss_9F8; +omObjData *lbl_1_bss_9F4; s16 lbl_1_bss_9EC[4]; s16 lbl_1_bss_9AC[4][8]; -Process * lbl_1_bss_9A8; -u16 lbl_1_data_358[4] = {1, 2, 4, 8}; +Process *lbl_1_bss_9A8; +u16 lbl_1_data_358[4] = { 1, 2, 4, 8 }; // -------------------------------------------------------------------------- // void fn_1_34B0() { - Process * temp_r30; + Process *temp_r30; s16 var_r31; - + OSReport("******* MODELTESTObjectSetup *********\n"); temp_r30 = omInitObjMan(0x32, 0x2000); @@ -33,8 +34,7 @@ void fn_1_34B0() Center.z = 0.0f; CZoom = 400.0f; - for (var_r31 = 0; var_r31 < 4; ++var_r31) - { + for (var_r31 = 0; var_r31 < 4; ++var_r31) { Hu3DCameraCreate(lbl_1_data_358[var_r31]); Hu3DCameraPerspectiveSet(lbl_1_data_358[var_r31], 45.0f, 20.0f, 20000.0f, 1.2f); Hu3DCameraViewportSet(lbl_1_data_358[var_r31], (var_r31 & 1) * 320, ((var_r31 & 2) != 0) ? 0xF0 : 0, 320.0f, 240.0f, 0.0f, 1.0f); @@ -51,7 +51,8 @@ void fn_1_34B0() // -------------------------------------------------------------------------- // -static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) { +static inline void HuControlCamCenter(Vec *sp18, Vec *sp30) +{ s8 temp_r28; temp_r28 = HuPadSubStkX[0] & 0xF8; @@ -73,12 +74,12 @@ static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) { void fn_1_37DC(omObjData *) { - Point3d sp3C; - Point3d sp30; - Point3d sp24; - Point3d sp18; + Vec sp3C; + Vec sp30; + Vec sp24; + Vec sp18; float temp_f31; - + if ((HuPadBtnDown[0] & PAD_BUTTON_START) != 0) { if (lbl_1_bss_9A8) { HuPrcKill(lbl_1_bss_9A8); @@ -113,17 +114,17 @@ void fn_1_37DC(omObjData *) sp24.y = cosd(CRot.x); sp24.z = cosd(CRot.y) * sind(CRot.x); temp_f31 = CRot.z; - + sp18.x = sp24.x * (sp30.x * sp30.x + (1.0f - sp30.x * sp30.x) * cosd(temp_f31)) - + sp24.y * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) - sp30.z * sind(temp_f31)) - + sp24.z * (sp30.x * sp30.z * (1.0f - cosd(temp_f31)) + sp30.y * sind(temp_f31)); + + sp24.y * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) - sp30.z * sind(temp_f31)) + + sp24.z * (sp30.x * sp30.z * (1.0f - cosd(temp_f31)) + sp30.y * sind(temp_f31)); sp18.y = sp24.y * (sp30.y * sp30.y + (1.0f - sp30.y * sp30.y) * cosd(temp_f31)) - + sp24.x * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) + sp30.z * sind(temp_f31)) - + sp24.z * (sp30.y * sp30.z * (1.0f - cosd(temp_f31)) - sp30.x * sind(temp_f31)); - + + sp24.x * (sp30.x * sp30.y * (1.0f - cosd(temp_f31)) + sp30.z * sind(temp_f31)) + + sp24.z * (sp30.y * sp30.z * (1.0f - cosd(temp_f31)) - sp30.x * sind(temp_f31)); + sp18.z = sp24.z * (sp30.z * sp30.z + (1.0f - sp30.z * sp30.z) * cosd(temp_f31)) - + (sp24.x * (sp30.x * sp30.z * (1.0 - cosd(temp_f31)) - sp30.y * sind(temp_f31)) + + (sp24.x * (sp30.x * sp30.z * (1.0 - cosd(temp_f31)) - sp30.y * sind(temp_f31)) + sp24.y * (sp30.y * sp30.z * (1.0 - cosd(temp_f31)) + sp30.x * sind(temp_f31))); VECCrossProduct(&sp24, &sp30, &sp30); @@ -134,24 +135,23 @@ void fn_1_37DC(omObjData *) // -------------------------------------------------------------------------- // -void fn_1_439C(omObjData * ) +void fn_1_439C(omObjData *) { s16 var_r31; f32 temp_f30; f32 temp_f31; f32 sp10; - Point3d sp2C; - Point3d sp20; - Point3d sp14; - for (var_r31 = 0; var_r31 < 4; ++var_r31) - { + Vec sp2C; + Vec sp20; + Vec sp14; + for (var_r31 = 0; var_r31 < 4; ++var_r31) { temp_f31 = CRot.x; temp_f30 = CRot.y + (var_r31 * 90); sp10 = CRot.z; sp2C.x = Center.x + CZoom * (sind(temp_f30) * (cosd(temp_f31))); sp2C.y = Center.y + CZoom * -sind(temp_f31); sp2C.z = Center.z + CZoom * (cosd(temp_f30) * (cosd(temp_f31))); - + sp20.x = Center.x; sp20.y = Center.y; sp20.z = Center.z; @@ -160,22 +160,22 @@ void fn_1_439C(omObjData * ) sp14.y = cosd(temp_f31); sp14.z = cosd(temp_f30) * (sind(temp_f31)); - Hu3DCameraPosSet(lbl_1_data_358[var_r31], sp2C.x, sp2C.y, sp2C.z, sp14.x, sp14.y, sp14.z, sp20.x, sp20.y, sp20.z); + Hu3DCameraPosSet(lbl_1_data_358[var_r31], sp2C.x, sp2C.y, sp2C.z, sp14.x, sp14.y, sp14.z, sp20.x, sp20.y, sp20.z); } } // -------------------------------------------------------------------------- // -const Point3d lbl_1_rodata_18C = {0.0f, 0.0f, 0.0f}; -const Point3d lbl_1_rodata_198 = {0.0f, 1.0f, 0.0f}; +const Vec lbl_1_rodata_18C = { 0.0f, 0.0f, 0.0f }; +const Vec lbl_1_rodata_198 = { 0.0f, 1.0f, 0.0f }; // -------------------------------------------------------------------------- // void fn_1_46F0(void) { - Point3d sp20; - Point3d sp14; - Point3d sp8; + Vec sp20; + Vec sp14; + Vec sp8; s16 var_r31; s16 var_r30; @@ -192,8 +192,7 @@ void fn_1_46F0(void) sp20.z = 1000.0f; Hu3DShadowPosSet(&sp20, &sp8, &sp14); - for (var_r31 = 0; var_r31 < 4; ++var_r31) - { + for (var_r31 = 0; var_r31 < 4; ++var_r31) { var_r30 = var_r31; lbl_1_bss_9EC[var_r31] = CharModelCreate(var_r30, 8); Hu3DModelShadowSet(lbl_1_bss_9EC[var_r31]); @@ -201,7 +200,7 @@ void fn_1_46F0(void) CharModelMotionSet(var_r30, lbl_1_bss_9AC[var_r31][0]); Hu3DModelAttrSet(lbl_1_bss_9EC[var_r31], HU3D_MOTATTR_LOOP); Hu3DModelCameraSet(lbl_1_bss_9EC[var_r31], lbl_1_data_358[var_r31]); - Hu3DModelPosSet(lbl_1_bss_9EC[var_r31], ((( var_r31 / 4) * 200) - 100), 0.0f, (-( var_r31 % 4) * 150)); + Hu3DModelPosSet(lbl_1_bss_9EC[var_r31], (((var_r31 / 4) * 200) - 100), 0.0f, (-(var_r31 % 4) * 150)); Hu3DModelPosSet(lbl_1_bss_9EC[var_r31], 0.0f, 0.0f, 0.0f); CharModelMotionDataClose(var_r30); } @@ -210,15 +209,12 @@ void fn_1_46F0(void) Hu3DModelScaleSet(var_r31, 5.0f, 5.0f, 5.0f); Hu3DModelShadowMapSet(var_r31); - while (TRUE) - { + while (TRUE) { if ((HuPadBtnDown[0] & PAD_BUTTON_Y) != 0) { Hu3DCameraKill(2); Hu3DCameraKill(4); Hu3DCameraKill(8); - sp20.x = - sp20.z = - sp20.y = 0.0f; + sp20.x = sp20.z = sp20.y = 0.0f; sp20.y += 200.0f; CharModelCoinEffectCreate(4, &sp20); } diff --git a/src/REL/modeseldll/filesel.c b/src/REL/modeseldll/filesel.c index 16712e88..1ddd44cf 100644 --- a/src/REL/modeseldll/filesel.c +++ b/src/REL/modeseldll/filesel.c @@ -14,6 +14,10 @@ #include "REL/modeseldll.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + s16 lbl_1_data_100 = -1; float lbl_1_data_104[] = { -55, 0, 0, 0, 60, -57, 806, -71, 0, 0, 0, 100, -131, 900, -87, 0, 0, 0, 46, -117, 566, -87, 0, 0, 0, 46, -117, 566, -90, 0, 0, -22, 39, -153, 432, -40, 0, 0, 0, 130, -186, 6530, -23, 0, 0, -9, 1, -70, 1318, -25, 0, 0, 0, 242, 90, 343, -30, 0, 0, 0, 223, -60, 505, -23, diff --git a/src/REL/resultDll/battle.c b/src/REL/resultDll/battle.c index 8baf9450..f9a58cba 100644 --- a/src/REL/resultDll/battle.c +++ b/src/REL/resultDll/battle.c @@ -19,6 +19,10 @@ #include "REL/resultdll.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + #define COIN_EFFECT_MAX 180 static StageModel resultBattleModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x08), 0, 0, -1, -1, { -300, 0, 0 }, { 0, 0, 0 }, { 0.9f, 0.9f, 0.9f } }, diff --git a/src/REL/resultDll/datalist.c b/src/REL/resultDll/datalist.c index 1a37f8a0..5d747f30 100644 --- a/src/REL/resultDll/datalist.c +++ b/src/REL/resultDll/datalist.c @@ -1,5 +1,9 @@ #include "REL/resultdll.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + s16 stageMdlId[32]; s16 stageMotId[32]; s16 stageSprId[33]; @@ -83,4 +87,4 @@ void StageSpriteKill(void) espKill(stageSprId[i]); } } -} \ No newline at end of file +} diff --git a/src/REL/resultDll/main.c b/src/REL/resultDll/main.c index 57433d33..84d801c9 100644 --- a/src/REL/resultDll/main.c +++ b/src/REL/resultDll/main.c @@ -18,6 +18,10 @@ #include "REL/resultdll.h" +#ifndef __MWERKS__ +#include "game/esprite.h" +#endif + static StageModel resultModel[] = { { DATA_MAKE_NUM(DATADIR_RESULT, 0x00), 1, 0, -1, -1, { 148, 132, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x01), 1, 0, -1, -1, { 148, 217, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, { DATA_MAKE_NUM(DATADIR_RESULT, 0x02), 1, 0, -1, -1, { 148, 302, 500 }, { 0, 0, 0 }, { 1, 1, 1 } }, diff --git a/src/REL/w02Dll/main.c b/src/REL/w02Dll/main.c index 8da93e44..ab699fc7 100644 --- a/src/REL/w02Dll/main.c +++ b/src/REL/w02Dll/main.c @@ -2,22 +2,22 @@ #include "game/frand.h" // Temporary defines -#define BOARD_ITEM_MINI 0x0 -#define BOARD_ITEM_MEGA 0x1 -#define BOARD_ITEM_SUPERMINI 0x2 -#define BOARD_ITEM_SUPERMEGA 0x3 -#define BOARD_ITEM_HAMMER 0x4 -#define BOARD_ITEM_PIPE 0x5 -#define BOARD_ITEM_CARD 0x6 -#define BOARD_ITEM_SPARKY 0x7 -#define BOARD_ITEM_GADDLIGHT 0x8 -#define BOARD_ITEM_CHOMPCALL 0x9 -#define BOARD_ITEM_SUIT 0xA -#define BOARD_ITEM_BOO 0xB -#define BOARD_ITEM_LAMP 0xC -#define BOARD_ITEM_BAG 0xD -#define BOARD_ITEM_MAX 0xE -#define BOARD_ITEM_NONE -1 +#define BOARD_ITEM_MINI 0x0 +#define BOARD_ITEM_MEGA 0x1 +#define BOARD_ITEM_SUPERMINI 0x2 +#define BOARD_ITEM_SUPERMEGA 0x3 +#define BOARD_ITEM_HAMMER 0x4 +#define BOARD_ITEM_PIPE 0x5 +#define BOARD_ITEM_CARD 0x6 +#define BOARD_ITEM_SPARKY 0x7 +#define BOARD_ITEM_GADDLIGHT 0x8 +#define BOARD_ITEM_CHOMPCALL 0x9 +#define BOARD_ITEM_SUIT 0xA +#define BOARD_ITEM_BOO 0xB +#define BOARD_ITEM_LAMP 0xC +#define BOARD_ITEM_BAG 0xD +#define BOARD_ITEM_MAX 0xE +#define BOARD_ITEM_NONE -1 /* BSS */ s16 lbl_1_bss_30[0x10]; // Model List @@ -25,30 +25,29 @@ s16 lbl_1_bss_2E; s16 lbl_1_bss_2C; Vec lbl_1_bss_20; Vec lbl_1_bss_14; -s32* lbl_1_bss_10; +s32 *lbl_1_bss_10; s16 lbl_1_bss_8[4]; // Item List -Process* lbl_1_bss_4; -u8* lbl_1_bss_0; +Process *lbl_1_bss_4; +u8 *lbl_1_bss_0; /* DATA */ -static BoardMapObject lbl_1_data_0[0x10] = { - {{2550.0f, 0.0f, -450.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000C)}, - {{-3150.0f, 0.0f, -1350.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000D)}, - {{-3150.0f, 0.0f, 1650.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000E)}, - {{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0008)}, - {{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0009)}, - {{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000A)}, - {{-150.0f, 0.0f, 900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x000B)}, - {{1350.0f, 0.0f, -300.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0011)}, - {{1350.0f, 0.0f, -300.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0012)}, - {{1350.0f, 0.0f, -300.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0015)}, - {{-300.0f, 0.0f, -900.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_W02, 0x0016)}, - {{1175.0f, 0.0f, -125.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, - {{-525.0f, 0.0f, -825.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, - {{-2225.0f, 0.0f, -2100.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, - {{1925.0f, 0.0f, -2100.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)}, - {{150.0f, 0.0f, 1650.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005)} -}; +static BoardMapObject lbl_1_data_0[0x10] + = { { { 2550.0f, 0.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000C) }, + { { -3150.0f, 0.0f, -1350.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000D) }, + { { -3150.0f, 0.0f, 1650.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000E) }, + { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0008) }, + { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0009) }, + { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000A) }, + { { -150.0f, 0.0f, 900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x000B) }, + { { 1350.0f, 0.0f, -300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0011) }, + { { 1350.0f, 0.0f, -300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0012) }, + { { 1350.0f, 0.0f, -300.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0015) }, + { { -300.0f, 0.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W02, 0x0016) }, + { { 1175.0f, 0.0f, -125.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) }, + { { -525.0f, 0.0f, -825.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) }, + { { -2225.0f, 0.0f, -2100.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) }, + { { 1925.0f, 0.0f, -2100.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) }, + { { 150.0f, 0.0f, 1650.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_BGUEST, 0x0005) } }; // Special Models s16 lbl_1_data_280 = -1; @@ -56,21 +55,15 @@ s16 lbl_1_data_282 = -1; s16 lbl_1_data_284 = -1; s16 lbl_1_data_286 = -1; -s32 lbl_1_data_288[] = { - DATA_MAKE_NUM(DATADIR_W02, 0x0004), - DATA_NUM_LISTEND -}; +s32 lbl_1_data_288[] = { DATA_MAKE_NUM(DATADIR_W02, 0x0004), DATA_NUM_LISTEND }; s32 lbl_1_data_290[] = { - DATA_MAKE_NUM(DATADIR_BGUEST, 0x0009), - DATA_MAKE_NUM(DATADIR_BGUEST, 0x0006), - DATA_MAKE_NUM(DATADIR_BGUEST, 0x0007), - DATA_MAKE_NUM(DATADIR_BGUEST, 0x0008), - DATA_NUM_LISTEND, + DATA_MAKE_NUM(DATADIR_BGUEST, 0x0009), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0006), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0007), + DATA_MAKE_NUM(DATADIR_BGUEST, 0x0008), DATA_NUM_LISTEND, 0x00000000 // Padding }; /* Functions */ -//Actual externs +// Actual externs extern void BoardMusStart(s32, s32, s32, s32); extern void BoardAudSeqPause(s32, s32, s32); s8 BoardComPreferItemCheck(s32, s8, s8, s8); @@ -79,13 +72,15 @@ extern void BoardComKeySetRight(); extern void CharModelDataClose(s16); // function is probably global. only inlined in rels? -inline s32 get_current_board(void) { +inline s32 get_current_board(void) +{ return GWSystem.board; } -void BoardCreate(void) { +void BoardCreate(void) +{ s32 i, boardData; - BoardMapObject* modelTransform; + BoardMapObject *modelTransform; boardData = get_current_board(); lbl_1_bss_0 = GWSystem.board_data; @@ -106,12 +101,13 @@ void BoardCreate(void) { BoardModelMotionStart(lbl_1_data_286, 1, 0x40000001); BoardLightHookSet(fn_1_72C, fn_1_770); - for(i = 0; i < 0x10; i++) { + for (i = 0; i < 0x10; i++) { modelTransform = &lbl_1_data_0[i]; if (modelTransform->data_num != -1) { if ((i == 0xB) || (i == 0xC) || (i == 0xD) || (i == 0xE) || (i == 0xF)) { lbl_1_bss_10 = lbl_1_data_290; - } else { + } + else { lbl_1_bss_10 = NULL; } lbl_1_bss_30[i] = BoardModelCreate(modelTransform->data_num, lbl_1_bss_10, 0); @@ -146,7 +142,8 @@ void BoardCreate(void) { BoardJunctionMaskSet(0x30); } -void BoardDestroy(void) { +void BoardDestroy(void) +{ /* Kill Model List */ s32 i; for (i = 0; i < 0x10; i++) { @@ -176,17 +173,17 @@ void BoardDestroy(void) { BoardSpaceDestroy(); } -void fn_1_72C(void) { +void fn_1_72C(void) +{ s16 var = BoardModelIDGet(lbl_1_data_280); Hu3DModelLightInfoSet(var, 1); } -void fn_1_770(void) { - -} +void fn_1_770(void) { } /* Decrement current space's [UNKNOWN] flag */ -s32 fn_1_774(void) { +s32 fn_1_774(void) +{ u32 unkFlag; u32 currPlayer; u32 currSpace; @@ -194,7 +191,7 @@ s32 fn_1_774(void) { currPlayer = GWSystem.player_curr; currSpace = GWPlayer[currPlayer].space_curr; spaceFlags = BoardSpaceFlagGet(0, currSpace); - //temp_r31 = (temp_r) + // temp_r31 = (temp_r) unkFlag = (spaceFlags & 0x1C0) >> 6; if (unkFlag != 0) { unkFlag--; @@ -203,8 +200,9 @@ s32 fn_1_774(void) { } /* Check if can iteract with board object? */ -s32 fn_1_800(void) { - BoardSpace* currSpace; +s32 fn_1_800(void) +{ + BoardSpace *currSpace; s32 currPlayer; s32 var_r29; @@ -212,7 +210,6 @@ s32 fn_1_800(void) { currSpace = BoardSpaceGet(0, GWPlayer[currPlayer].space_curr); if ((currSpace->flag & 0x30) != 0) { - // If mega mushroom state return if (BoardPlayerSizeGet(currPlayer) == 2) { return 0; @@ -224,9 +221,11 @@ s32 fn_1_800(void) { if ((currSpace->flag & 0x20) != 0 && (currSpace->flag & 0x10) != 0) { var_r29 = 2; - } else if ((currSpace->flag & 0x20) != 0) { + } + else if ((currSpace->flag & 0x20) != 0) { var_r29 = 1; - } else { + } + else { var_r29 = 0; } fn_1_394C(var_r29); @@ -239,22 +238,23 @@ s32 fn_1_800(void) { return 0; } -void fn_1_92C(void) { +void fn_1_92C(void) +{ fn_1_39F4(); fn_1_5CF8(); } -void fn_1_950(void) { +void fn_1_950(void) { } -} - -void fn_1_954(void) { +void fn_1_954(void) +{ HuPrcSleep(0x3C); BoardMusStart(1, 0x12, 0x7F, 0); HuPrcEnd(); } -void fn_1_990(void) { +void fn_1_990(void) +{ Vec rotation; Vec offset; Vec boardSpacePos; @@ -264,13 +264,13 @@ void fn_1_990(void) { s32 currSpace; s32 spaceLinkFlag; - currPlayer = GWSystem.player_curr; BoardWinCreateChoice(2, MAKE_MESSID(19, 17), 4, 0); if (GWPlayer[currPlayer].com) { if (frandBool() != 0) { BoardComKeySetLeft(); - } else { + } + else { BoardComKeySetRight(); } } @@ -317,7 +317,8 @@ void fn_1_990(void) { BoardPlayerMotionStart(currPlayer, 1, 0x40000001); } -void fn_1_C50(void) { +void fn_1_C50(void) +{ Vec rotation; Vec offset; s32 currSpace; @@ -327,7 +328,7 @@ void fn_1_C50(void) { s32 i, j; currPlayer = GWSystem.player_curr; - if (BoardPlayerItemCount((s32) currPlayer) == 3) { + if (BoardPlayerItemCount((s32)currPlayer) == 3) { BoardWinCreate(2, MAKE_MESSID(19, 26), 4); BoardWinWait(); BoardWinKill(); @@ -351,7 +352,7 @@ void fn_1_C50(void) { } if (lbl_1_bss_8[i] != BOARD_ITEM_NONE) { i++; - } + } } } fn_1_79BC(lbl_1_bss_8); @@ -361,7 +362,8 @@ void fn_1_C50(void) { if (GWPlayer[currPlayer].com) { if (BoardComPreferItemCheck(currPlayer, lbl_1_bss_8[0], lbl_1_bss_8[1], lbl_1_bss_8[2]) != -1) { BoardComKeySetLeft(); - } else { + } + else { BoardComKeySetRight(); } } @@ -387,14 +389,14 @@ void fn_1_C50(void) { offset.x = 0.0f; offset.y = 0.0f; offset.z = -250.0f; - BoardCameraMotionStartEx(lbl_1_bss_30[10], (Point3d* ) &rotation, (Point3d* ) &offset, 1500.0f, 25.0f, 0x15); + BoardCameraMotionStartEx(lbl_1_bss_30[10], (Vec *)&rotation, (Vec *)&offset, 1500.0f, 25.0f, 0x15); currSpace = GWPlayer[currPlayer].space_curr; spaceLinkFlags = BoardSpaceLinkFlagSearch(0, currSpace, 0x02000000U); BoardPlayerMoveBetween(currPlayer, currSpace, spaceLinkFlags); while (GWPlayer[currPlayer].moving) { HuPrcVSleep(); } - BoardPlayerMotionStart((s32) currPlayer, 1, 0x40000001); + BoardPlayerMotionStart((s32)currPlayer, 1, 0x40000001); BoardPlayerMotBlendSet(currPlayer, 0xB4, 0xF); while (BoardPlayerMotBlendCheck(currPlayer) == 0) { HuPrcVSleep(); @@ -409,17 +411,19 @@ void fn_1_C50(void) { HuPrcVSleep(); } fn_1_5F90(); - BoardPlayerMotionStart((s32) currPlayer, 1, 0x40000001); + BoardPlayerMotionStart((s32)currPlayer, 1, 0x40000001); HuPrcEnd(); } -void fn_1_1070(void) { +void fn_1_1070(void) +{ BoardWinKill(); CharModelDataClose(-1); lbl_1_bss_4 = 0; } -void fn_1_10A8(void) { +void fn_1_10A8(void) +{ lbl_1_bss_4 = HuPrcChildCreate(fn_1_C50, 0x2003U, 0x2000U, 0, boardMainProc); HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1070); while (lbl_1_bss_4) { @@ -427,7 +431,8 @@ void fn_1_10A8(void) { } } -s32 fn_1_1128(void) { +s32 fn_1_1128(void) +{ u32 spaceFlags; s16 currSpace; currSpace = GWPlayer[GWSystem.player_curr].space_curr; @@ -436,7 +441,8 @@ s32 fn_1_1128(void) { if (spaceFlags & 0x200000) { fn_1_990(); - } else if (spaceFlags & 0x400000) { + } + else if (spaceFlags & 0x400000) { lbl_1_bss_4 = HuPrcChildCreate(fn_1_C50, 0x2003U, 0x2000U, 0, boardMainProc); HuPrcDestructorSet2(lbl_1_bss_4, fn_1_1070); while (lbl_1_bss_4) { @@ -447,7 +453,8 @@ s32 fn_1_1128(void) { BoardRollDispSet(1); } -void fn_1_121C(u32 mesg) { +void fn_1_121C(u32 mesg) +{ BoardWinCreate(2, mesg, 4); BoardWinWait(); BoardWinKill(); diff --git a/src/REL/w02Dll/roulette.c b/src/REL/w02Dll/roulette.c index 24797857..b21e0dbe 100644 --- a/src/REL/w02Dll/roulette.c +++ b/src/REL/w02Dll/roulette.c @@ -1,26 +1,21 @@ #include "REL/w02Dll.h" #include "game/audio.h" -#include "game/frand.h" #include "game/chrman.h" +#include "game/frand.h" #include "game/pad.h" + #include "ext_math.h" - /* DATA */ -s32 lbl_1_data_4D0[] = { - -1, 2, 2, 2, - -1, 1, 1, 1, - -1, 0, 0, 0, - -1, 3, 3, 3 -}; +s32 lbl_1_data_4D0[] = { -1, 2, 2, 2, -1, 1, 1, 1, -1, 0, 0, 0, -1, 3, 3, 3 }; Process *lbl_1_bss_38C; s16 lbl_1_bss_388; s32 lbl_1_bss_384; float lbl_1_bss_380; -//Local Functions +// Local Functions void fn_1_D3AC(void); s32 fn_1_D8C4(void); void fn_1_DF48(void); @@ -34,10 +29,10 @@ typedef struct UnkPoint { Vec point; } UnkPoint; - /* FUNCTIONS */ -void fn_1_BC1C(void) { - Point3d sp8; +void fn_1_BC1C(void) +{ + Vec sp8; BoardModelPosGet(lbl_1_bss_30[15], &sp8); sp8.z -= 90.0f; @@ -50,13 +45,14 @@ void fn_1_BC1C(void) { BoardModelRotSetV(lbl_1_bss_30[15], &sp8); } -void fn_1_BCFC(void) { +void fn_1_BCFC(void) +{ s32 spaceLinkFlags; s32 temp_r30; s32 temp_r29; - + BoardRollDispSet(0); - spaceLinkFlags = BoardSpaceLinkFlagSearch(0, (s32) GWPlayer[lbl_1_bss_388].space_curr, 2U); + spaceLinkFlags = BoardSpaceLinkFlagSearch(0, (s32)GWPlayer[lbl_1_bss_388].space_curr, 2U); BoardPlayerMoveToAsync(lbl_1_bss_388, spaceLinkFlags); while (GWPlayer[lbl_1_bss_388].moving) { HuPrcVSleep(); @@ -64,8 +60,8 @@ void fn_1_BCFC(void) { BoardPlayerIdleSet(lbl_1_bss_388); BoardCameraViewSet(2); BoardCameraMotionWait(); - BoardPlayerMotBlendSet((s32) lbl_1_bss_388, 0x5A, 0xF); - while (BoardPlayerMotBlendCheck((s32) lbl_1_bss_388) == 0) { + BoardPlayerMotBlendSet((s32)lbl_1_bss_388, 0x5A, 0xF); + while (BoardPlayerMotBlendCheck((s32)lbl_1_bss_388) == 0) { HuPrcVSleep(); } BoardModelRotYSet(lbl_1_bss_30[15], -90.0f); @@ -81,16 +77,18 @@ void fn_1_BCFC(void) { BoardCameraMotionWait(); BoardRollDispSet(1); HuPrcKill(NULL); - while(TRUE) { - HuPrcVSleep(); + while (TRUE) { + HuPrcVSleep(); } } -s32 fn_1_BE74(void) { +s32 fn_1_BE74(void) +{ lbl_1_bss_38C = 0; } -s32 fn_1_BE88(void) { +s32 fn_1_BE88(void) +{ s32 coinAmount; s32 var_r30; s16 playerCoinRegion; @@ -100,7 +98,7 @@ s32 fn_1_BE88(void) { s32 mesg; var_r30 = -1; - coinAmount = BoardPlayerCoinsGet((s32) lbl_1_bss_388); + coinAmount = BoardPlayerCoinsGet((s32)lbl_1_bss_388); if (coinAmount < 5) { return var_r30; } @@ -112,7 +110,8 @@ s32 fn_1_BE88(void) { if (GWPlayer[lbl_1_bss_388].com) { if (frandBool()) { BoardComKeySetRight(); - } else { + } + else { BoardComKeySetLeft(); } } @@ -136,49 +135,50 @@ s32 fn_1_BE88(void) { if (GWPlayer[lbl_1_bss_388].com) { if (playerCoinRegion < 2) { BoardComKeySetUp(); - } else if (frandBool()) { + } + else if (frandBool()) { BoardComKeySetUp(); - } else { + } + else { BoardComKeySetDown(); } } BoardWinWait(); BoardWinKill(); bribeChoice = BoardWinChoiceGet(); - if (bribeChoice == -1 || - bribeChoice == 3) { + if (bribeChoice == -1 || bribeChoice == 3) { continue; } // Coin amount is now the bribe amount in coins switch (bribeChoice) { - case 0: - mesg = MAKE_MESSID(0x13, 0x04); - coinAmount = 0x14; - var_r30 = 0x5A; // 90% - break; - case 1: - mesg = MAKE_MESSID(0x13, 0x05); - coinAmount = 0xA; - var_r30 = 0x3C; // 60% - break; - case 2: - mesg = MAKE_MESSID(0x13, 0x06); - coinAmount = 5; - var_r30 = 0x1E; // 30% - break; + case 0: + mesg = MAKE_MESSID(0x13, 0x04); + coinAmount = 0x14; + var_r30 = 0x5A; // 90% + break; + case 1: + mesg = MAKE_MESSID(0x13, 0x05); + coinAmount = 0xA; + var_r30 = 0x3C; // 60% + break; + case 2: + mesg = MAKE_MESSID(0x13, 0x06); + coinAmount = 5; + var_r30 = 0x1E; // 30% + break; } fn_1_121C(mesg); - for (i = 0; i < coinAmount; i++) { BoardPlayerCoinsAdd(lbl_1_bss_388, -1); HuAudFXPlay(0xE); HuPrcSleep(6); } HuAudFXPlay(0xF); - // If chose to view map - } else if (rouletteChoice == 2) { + // If chose to view map + } + else if (rouletteChoice == 2) { BoardViewMapExec(lbl_1_bss_388); } } while (rouletteChoice == 2); // While viewing map @@ -188,13 +188,13 @@ s32 fn_1_BE88(void) { return var_r30; } -s32 fn_1_C108(s32 arg0) { +s32 fn_1_C108(s32 arg0) +{ Vec sp34; Vec sp28; Vec sp1C; Vec sp10; - f32 var_f27; f32 var_f26; f32 var_f25; @@ -210,15 +210,16 @@ s32 fn_1_C108(s32 arg0) { s32 var_r29; s32 i; - if ((s32) frandmod(0x64U) < arg0) { + if ((s32)frandmod(0x64U) < arg0) { s32 temp_r25 = fn_1_E2AC(); var_r27 = 4; var_r29 = frandmod(3U); - if ((s32) frandmod(0x64U) < 0x14) { + if ((s32)frandmod(0x64U) < 0x14) { var_r29 += 1; } var_r29 = var_r29 + (3 - temp_r25) * 4; - } else { + } + else { var_r29 = frandmod(0x10U); var_r27 = frandmod(4U); } @@ -249,7 +250,7 @@ s32 fn_1_C108(s32 arg0) { HuAudFXPitchSet(lbl_1_bss_384, var_r28); HuPrcVSleep(); } - + var_f29 = -22.5f; HuAudFXPitchSet(lbl_1_bss_384, 0); BoardModelMotionStart(lbl_1_bss_30[15], 2, 0x40000001); @@ -269,7 +270,7 @@ s32 fn_1_C108(s32 arg0) { } BoardModelMotionStart(lbl_1_bss_30[15], 3, 0x40000001); BoardModelMotionSpeedSet(lbl_1_bss_30[15], 4.0f); - + for (i = 0; i < 0xA; i++) { sp34.z -= 6.2999997f; BoardModelPosSetV(lbl_1_bss_30[15], &sp34); @@ -287,7 +288,7 @@ s32 fn_1_C108(s32 arg0) { sp1C.z = -50.0f; // Roulette motion and ball ? - while(TRUE) { + while (TRUE) { sp1C.y = var_f27 - (0.55833334f * (0.25f * (var_f31 * var_f31))); var_f31 += 1.0f; BoardModelPosGet(lbl_1_bss_30[6], &sp28); @@ -295,11 +296,11 @@ s32 fn_1_C108(s32 arg0) { var_f25 = VECDistanceXZ(&sp28, &sp10); if (var_f25 >= 430.0f) { if (sp28.y <= (55.0f + sp10.y)) { - VECSubtract(&sp28, &sp10, (Vec* ) &sp1C); - VECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C); + VECSubtract(&sp28, &sp10, (Vec *)&sp1C); + VECNormalize((Vec *)&sp1C, (Vec *)&sp1C); sp1C.y = 0.0f; - VECScale((Vec* ) &sp1C, (Vec* ) &sp1C, 429.0f); - VECAdd((Vec* ) &sp1C, &sp10, (Vec* ) &sp1C); + VECScale((Vec *)&sp1C, (Vec *)&sp1C, 429.0f); + VECAdd((Vec *)&sp1C, &sp10, (Vec *)&sp1C); sp28.x = sp1C.x; sp28.z = sp1C.z; sp1C.x = -5.0f; @@ -309,34 +310,34 @@ s32 fn_1_C108(s32 arg0) { if (sp28.y < sp10.y) { sp28.y = sp10.y; - if (var_r27 >= 3) { + if (var_r27 >= 3) { break; } - //var_f31 = ((1.0f/255.0f) * (6.0f * frand8())); - var_f27 = 6.0f + ((1.0f/255.0f) * (6.0f * frand8())); + // var_f31 = ((1.0f/255.0f) * (6.0f * frand8())); + var_f27 = 6.0f + ((1.0f / 255.0f) * (6.0f * frand8())); var_f31 = 1.0f; var_r27 += 1; - //var_f31 = ((1.0f/255.0f) * (5.0f * frand8())); - sp1C.x = 15.0f + ((1.0f/255.0f) * (5.0f * frand8())); - sp1C.z = 15.0f + ((1.0f/255.0f) * (5.0f * frand8())); + // var_f31 = ((1.0f/255.0f) * (5.0f * frand8())); + sp1C.x = 15.0f + ((1.0f / 255.0f) * (5.0f * frand8())); + sp1C.z = 15.0f + ((1.0f / 255.0f) * (5.0f * frand8())); HuAudFXPlay(0x41E); } - - BoardModelPosSetV(lbl_1_bss_30[6], (Vec* ) &sp28); + + BoardModelPosSetV(lbl_1_bss_30[6], (Vec *)&sp28); fn_1_E310(var_f29); HuPrcVSleep(); } HuAudFXPlay(0x41E); - VECSubtract(&sp28, &sp10, (Vec* ) &sp1C); - VECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C); + VECSubtract(&sp28, &sp10, (Vec *)&sp1C); + VECNormalize((Vec *)&sp1C, (Vec *)&sp1C); var_f31 = atan2d(-sp1C.z, sp1C.x); BoardModelRotGet(lbl_1_bss_30[4], &sp34); var_f31 = var_f31 - sp34.y; if (var_f31 < 0.0f) { var_f31 += 360.0f; } - var_r30 = (s32) (var_f31 / 22.5f); + var_r30 = (s32)(var_f31 / 22.5f); if (fmod(var_f31, 22.5) > 11.25) { var_r30 += 1; } @@ -345,7 +346,7 @@ s32 fn_1_C108(s32 arg0) { } sp1C.y = 0.0f; - while(TRUE) { + while (TRUE) { fn_1_E310(var_f29); BoardModelRotGet(lbl_1_bss_30[4], &sp34); var_f31 = (22.5f * var_r30) + sp34.y; // TODO: Update rodata for asm change @@ -356,8 +357,7 @@ s32 fn_1_C108(s32 arg0) { sp28.x = sp1C.x; sp28.z = sp1C.z; BoardModelPosSetV(lbl_1_bss_30[6], &sp28); - if (sp34.y >= 292.5f && - sp34.y < 315.0f) { + if (sp34.y >= 292.5f && sp34.y < 315.0f) { break; } HuPrcVSleep(); @@ -367,14 +367,14 @@ s32 fn_1_C108(s32 arg0) { var_f29 += 0.375f; fn_1_E310(var_f29); BoardModelRotGet(lbl_1_bss_30[4], &sp34); - var_f31 = (22.5f * (f32) var_r30) + sp34.y; + var_f31 = (22.5f * (f32)var_r30) + sp34.y; sp1C.x = cosd(var_f31); sp1C.z = -sind(var_f31); VECScale(&sp1C, &sp1C, 429.0f); - VECAdd((Vec* ) &sp1C, &sp10, (Vec* ) &sp1C); + VECAdd((Vec *)&sp1C, &sp10, (Vec *)&sp1C); sp28.x = sp1C.x; sp28.z = sp1C.z; - BoardModelPosSetV(lbl_1_bss_30[6], (Vec* ) &sp28); + BoardModelPosSetV(lbl_1_bss_30[6], (Vec *)&sp28); var_r28 += -136.51666f; HuAudFXPitchSet(lbl_1_bss_384, var_r28); HuPrcVSleep(); @@ -385,7 +385,8 @@ s32 fn_1_C108(s32 arg0) { } // Place player on space post roulette? -void fn_1_CD04(s32 arg0) { +void fn_1_CD04(s32 arg0) +{ Vec sp24; Vec sp18; Vec spC; @@ -393,25 +394,25 @@ void fn_1_CD04(s32 arg0) { f32 temp_f30; f32 temp_f29; f32 var_f31; - + s16 var_r25; u32 var_r26; s32 var_r27; s32 var_r29; s32 var_r28; s32 var_r30; - BoardSpace* temp_r31; + BoardSpace *temp_r31; if (arg0 < 0) { fn_1_D3AC(); arg0 = fn_1_D8C4(); } temp_r31 = BoardSpaceGet(0, BoardSpaceFlagSearch(0, 0x800)); - + for (var_r28 = 0; var_r28 < temp_r31->link_cnt; var_r28++) { var_r29 = temp_r31->link[var_r28]; - var_r26 = ( (BoardSpaceFlagGet(0, var_r29) & 0xE) >> 1U); - if ( var_r26 == (arg0 + 2)) { + var_r26 = ((BoardSpaceFlagGet(0, var_r29) & 0xE) >> 1U); + if (var_r26 == (arg0 + 2)) { break; } } @@ -427,7 +428,7 @@ void fn_1_CD04(s32 arg0) { while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 30.0f) { spC.x -= 0.25f; spC.y -= 0.25f; - //temp_f1 = spC.z; + // temp_f1 = spC.z; spC.z = spC.z - 0.25f; BoardPlayerScaleSetV(lbl_1_bss_388, &spC); HuPrcVSleep(); @@ -443,7 +444,8 @@ void fn_1_CD04(s32 arg0) { if (GWPlayer[lbl_1_bss_388].bowser_suit) { BoardModelVisibilitySet(BoardBowserSuitModelGet(), 0); BoardModelVisibilitySet(BoardBowserSuitPlayerModelGet(), 0); - } else { + } + else { BoardModelVisibilitySet(BoardPlayerModelGet(lbl_1_bss_388), 0); } HuAudFXPlay(0x421); @@ -454,7 +456,7 @@ void fn_1_CD04(s32 arg0) { } BoardModelPosGet(lbl_1_bss_30[5], &sp18); - temp_f30 = atan2d(sp24.x - sp18.x, sp24.z - sp18.z)/30; + temp_f30 = atan2d(sp24.x - sp18.x, sp24.z - sp18.z) / 30; while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 90.0f) { BoardModelRotYSet(lbl_1_bss_30[5], temp_f30 + BoardModelRotYGet(lbl_1_bss_30[5])); @@ -464,22 +466,23 @@ void fn_1_CD04(s32 arg0) { omVibrate(lbl_1_bss_388, 0xC, 4, 2); if (GWPlayer[lbl_1_bss_388].bowser_suit) { - BoardModelVisibilitySet(BoardBowserSuitModelGet(),1); - BoardModelVisibilitySet(BoardBowserSuitPlayerModelGet(),1); - } else { + BoardModelVisibilitySet(BoardBowserSuitModelGet(), 1); + BoardModelVisibilitySet(BoardBowserSuitPlayerModelGet(), 1); + } + else { BoardModelVisibilitySet(BoardPlayerModelGet(lbl_1_bss_388), 1); } - GWPlayer[lbl_1_bss_388].space_curr =(s16) var_r29; + GWPlayer[lbl_1_bss_388].space_curr = (s16)var_r29; BoardPlayerPosSetV(lbl_1_bss_388, &sp24); temp_r31 = BoardSpaceGet(0, var_r29); - - for ( var_r30 = 0; var_r30 < (s32) temp_r31->link_cnt; var_r30++) { + + for (var_r30 = 0; var_r30 < (s32)temp_r31->link_cnt; var_r30++) { if (BoardSpaceTypeGet(0, temp_r31->link[var_r30])) { break; } } - if (var_r30 != (s32) temp_r31->link_cnt) { + if (var_r30 != (s32)temp_r31->link_cnt) { BoardSpacePosGet(0, temp_r31->link[var_r30], &sp18); BoardPlayerRotYSet(lbl_1_bss_388, atan2d(sp18.x - sp24.x, sp18.z - sp24.z)); } @@ -507,289 +510,290 @@ void fn_1_CD04(s32 arg0) { void fn_1_D3AC(void) { - float temp_f31; - float temp_f30; - s32 temp_r31; - s32 temp_r30; - s16 sp38[20]; - Vec sp2C; - Vec sp20; - Vec sp14; - float sp8[3] = { 1.0f, 0.3f, 2.5f }; - fn_1_121C(MAKE_MESSID(0x13, 0x08)); - BoardStatusShowSetAll(1); - BoardPlayerMotBlendSet(lbl_1_bss_388, 0, 15); - BoardPlayerPosGet(lbl_1_bss_388, &sp14); - for(temp_r31=0; temp_r31<20; temp_r31++) { - sp38[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1); - sp2C.x = (sp14.x-25.0f)+((1.0f/255.0f)*(frand8()*50.0f)); - sp2C.y = (sp14.y+1200.0f)+(temp_r31*130.0f)+((1.0f/255.0f)*(frand8()*60.0f)); - sp2C.z = (sp14.z-25.0f)+((1.0f/255.0f)*(frand8()*50.0f)); - BoardModelPosSetV(sp38[temp_r31], &sp2C); - sp20.x = sp20.z = 0; - sp20.y = (1.0f/255.0f)*(frand8()*360.0f); - BoardModelRotSetV(sp38[temp_r31], &sp20); - } - temp_f31 = -4; - temp_r30 = 0; - temp_f30 = sp8[BoardPlayerSizeGet(lbl_1_bss_388)]; - while(1) { - for(temp_r31=0; temp_r31<20; temp_r31++) { - if(temp_r31 < temp_r30) { - continue; - } - BoardModelPosGet(sp38[temp_r31], &sp2C); - BoardModelRotGet(sp38[temp_r31], &sp20); - sp2C.y += temp_f31; - sp20.y += 45.0f; - BoardModelPosSetV(sp38[temp_r31], &sp2C); - BoardModelRotSetV(sp38[temp_r31], &sp20); - if(sp2C.y <= sp14.y+(180.0f*temp_f30)) { - CharModelCoinEffectCreate(1, &sp2C); - BoardModelVisibilitySet(sp38[temp_r31], 0); - temp_r30++; - BoardPlayerCoinsAdd(lbl_1_bss_388, 1); - HuAudFXPlay(7); - omVibrate(lbl_1_bss_388, 12, 6, 6); - - } - } - temp_f31 *= 1.05f; - if(temp_f31 < -40.0f) { - temp_f31 = -40.0f; - } - if(temp_r30 == 20) { - BoardPlayerMotionShiftSet(lbl_1_bss_388, 7, 0, 10, HU3D_MOTATTR_NONE); - break; - } - HuPrcVSleep(); - } - while(!BoardPlayerMotionEndCheck(lbl_1_bss_388)) { - HuPrcVSleep(); - } - for(temp_r31=0; temp_r31<20; temp_r31++) { - BoardModelKill(sp38[temp_r31]); - } - HuPrcSleep(60); - BoardPlayerMotBlendSet(lbl_1_bss_388, 180, 15); - BoardStatusShowSetAll(0); - while(!BoardPlayerMotBlendCheck(lbl_1_bss_388)) { - HuPrcVSleep(); - } + float temp_f31; + float temp_f30; + s32 temp_r31; + s32 temp_r30; + s16 sp38[20]; + Vec sp2C; + Vec sp20; + Vec sp14; + float sp8[3] = { 1.0f, 0.3f, 2.5f }; + fn_1_121C(MAKE_MESSID(0x13, 0x08)); + BoardStatusShowSetAll(1); + BoardPlayerMotBlendSet(lbl_1_bss_388, 0, 15); + BoardPlayerPosGet(lbl_1_bss_388, &sp14); + for (temp_r31 = 0; temp_r31 < 20; temp_r31++) { + sp38[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1); + sp2C.x = (sp14.x - 25.0f) + ((1.0f / 255.0f) * (frand8() * 50.0f)); + sp2C.y = (sp14.y + 1200.0f) + (temp_r31 * 130.0f) + ((1.0f / 255.0f) * (frand8() * 60.0f)); + sp2C.z = (sp14.z - 25.0f) + ((1.0f / 255.0f) * (frand8() * 50.0f)); + BoardModelPosSetV(sp38[temp_r31], &sp2C); + sp20.x = sp20.z = 0; + sp20.y = (1.0f / 255.0f) * (frand8() * 360.0f); + BoardModelRotSetV(sp38[temp_r31], &sp20); + } + temp_f31 = -4; + temp_r30 = 0; + temp_f30 = sp8[BoardPlayerSizeGet(lbl_1_bss_388)]; + while (1) { + for (temp_r31 = 0; temp_r31 < 20; temp_r31++) { + if (temp_r31 < temp_r30) { + continue; + } + BoardModelPosGet(sp38[temp_r31], &sp2C); + BoardModelRotGet(sp38[temp_r31], &sp20); + sp2C.y += temp_f31; + sp20.y += 45.0f; + BoardModelPosSetV(sp38[temp_r31], &sp2C); + BoardModelRotSetV(sp38[temp_r31], &sp20); + if (sp2C.y <= sp14.y + (180.0f * temp_f30)) { + CharModelCoinEffectCreate(1, &sp2C); + BoardModelVisibilitySet(sp38[temp_r31], 0); + temp_r30++; + BoardPlayerCoinsAdd(lbl_1_bss_388, 1); + HuAudFXPlay(7); + omVibrate(lbl_1_bss_388, 12, 6, 6); + } + } + temp_f31 *= 1.05f; + if (temp_f31 < -40.0f) { + temp_f31 = -40.0f; + } + if (temp_r30 == 20) { + BoardPlayerMotionShiftSet(lbl_1_bss_388, 7, 0, 10, HU3D_MOTATTR_NONE); + break; + } + HuPrcVSleep(); + } + while (!BoardPlayerMotionEndCheck(lbl_1_bss_388)) { + HuPrcVSleep(); + } + for (temp_r31 = 0; temp_r31 < 20; temp_r31++) { + BoardModelKill(sp38[temp_r31]); + } + HuPrcSleep(60); + BoardPlayerMotBlendSet(lbl_1_bss_388, 180, 15); + BoardStatusShowSetAll(0); + while (!BoardPlayerMotBlendCheck(lbl_1_bss_388)) { + HuPrcVSleep(); + } } s32 fn_1_D8C4(void) { - Vec sp40; - Vec sp34; - Vec sp28; - Vec sp1C; - s16 sp14[4]; - float spC[2]; - s32 sp8; - - float temp_f31; - float temp_f30; - - s32 temp_r31; - s16 temp_r30; - BoardSpace *temp_r29; - s32 temp_r28; - s16 temp_r27; - s16 temp_r26; - s32 temp_r25; - s16 temp_r24; - s16 temp_r23; - s16 temp_r22; - - u32 temp_r21; - fn_1_121C(MAKE_MESSID(0x13, 0x09)); - temp_r29 = BoardSpaceGet(0, BoardSpaceFlagSearch(0, 0x800)); - BoardModelPosGet(lbl_1_bss_30[3], &sp40); - for(temp_r31=0; temp_r31<4; temp_r31++) { - sp14[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x00), NULL, 1); - BoardModelLayerSet(sp14[temp_r31], 2); - for(temp_r28=0; temp_r28link_cnt; temp_r28++) { - temp_r21 = (BoardSpaceFlagGet(0, temp_r29->link[temp_r28]) & 0xE) >> 1; - if(temp_r21 == temp_r31+2) { - break; - } - } - sp8 = BoardSpacePosGet(0, temp_r29->link[temp_r28], &sp28); - VECSubtract(&sp28, &sp40, &sp34); - BoardModelRotYSet(sp14[temp_r31], atan2d(sp34.x, sp34.z)); - VECNormalize(&sp34, &sp34); - VECScale(&sp34, &sp34, 400); - VECAdd(&sp34, &sp40, &sp34); - sp34.y += 300.0f; - BoardModelPosSetV(sp14[temp_r31], &sp34); - sp1C.x = sp1C.y = sp1C.z = 3; - BoardModelScaleSetV(sp14[temp_r31], &sp1C); - } - temp_r25 = fn_1_E2AC(); - HuWinMesMaxSizeGet(1, spC, MAKE_MESSID(0x13, 0x1E)); - temp_r30 = HuWinCreate(-10000, 356, spC[0], spC[1], 0); - HuWinMesSet(temp_r30, MAKE_MESSID(0x13, 0x1E)); - HuWinBGTPLvlSet(temp_r30, 0); - HuWinMesSpeedSet(temp_r30, 0); - temp_r23 = GWPlayer[lbl_1_bss_388].port; - temp_f30 = 0; - temp_r22 = frandmod(20)+20; - restart: - while(1) { - if(GWPlayer[lbl_1_bss_388].com) { - temp_r27 = 0; - temp_r26 = 0; - if(temp_r22) { - temp_r22--; - temp_r24 = 0; - } else { - temp_r24 = PAD_BUTTON_A; - } - break; - } - temp_r24 = HuPadBtnDown[temp_r23]; - temp_r27 = HuPadStkX[temp_r23]; - temp_r26 = HuPadStkY[temp_r23]; - if(!(temp_r24 & PAD_TRIGGER_Z)) { - break; - } - HuAudFXPlay(1); - for(temp_r31=0; temp_r31<4; temp_r31++) { - BoardModelVisibilitySet(sp14[temp_r31], 0); - } - HuWinDispOff(temp_r30); - BoardViewMapExec(lbl_1_bss_388); - HuWinDispOn(temp_r30); - for(temp_r31=0; temp_r31<4; temp_r31++) { - BoardModelVisibilitySet(sp14[temp_r31], 1); - } - } - if(!(temp_r24 & PAD_BUTTON_A)) { - if(abs(temp_r27) < 10) { - temp_r27 = 0; - } - if(abs(temp_r26) < 10) { - temp_r26 = 0; - } - if(temp_r27 != 0 || temp_r26 != 0) { - temp_f31 = atan2d(-temp_r27, -temp_r26); - if(temp_f31 < 0.0f) { - temp_f31 += 360.0f; - } - temp_r31 = temp_f31/90.0f; - temp_f31 = fmod(temp_f31, 90.0); - if(temp_r31 != temp_r25 && temp_f31 >= 20.0f && temp_f31 <= 70.0f){ - temp_f30 = 0; - temp_r25 = temp_r31; - HuAudFXPlay(0); - } - - } - for(temp_r31=0; temp_r31<4; temp_r31++) { - if(temp_r31 == temp_r25) { - sp1C.x = sp1C.y = sp1C.z = sind(temp_f30)+3.0; - temp_f30 += 8.0f; - if(temp_f30 > 180.0f) { - temp_f30 -= 180.0f; - } - } else { - sp1C.x = sp1C.y = sp1C.z = 3.0f; - } - - - BoardModelScaleSetV(sp14[temp_r31], &sp1C); - } - HuPrcVSleep(); - goto restart; - } else { - HuAudFXPlay(2); - for(temp_r31=0; temp_r31<4; temp_r31++) { - BoardModelKill(sp14[temp_r31]); - } - HuWinKill(temp_r30); - return temp_r25; - } + Vec sp40; + Vec sp34; + Vec sp28; + Vec sp1C; + s16 sp14[4]; + float spC[2]; + s32 sp8; + + float temp_f31; + float temp_f30; + + s32 temp_r31; + s16 temp_r30; + BoardSpace *temp_r29; + s32 temp_r28; + s16 temp_r27; + s16 temp_r26; + s32 temp_r25; + s16 temp_r24; + s16 temp_r23; + s16 temp_r22; + + u32 temp_r21; + fn_1_121C(MAKE_MESSID(0x13, 0x09)); + temp_r29 = BoardSpaceGet(0, BoardSpaceFlagSearch(0, 0x800)); + BoardModelPosGet(lbl_1_bss_30[3], &sp40); + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { + sp14[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x00), NULL, 1); + BoardModelLayerSet(sp14[temp_r31], 2); + for (temp_r28 = 0; temp_r28 < temp_r29->link_cnt; temp_r28++) { + temp_r21 = (BoardSpaceFlagGet(0, temp_r29->link[temp_r28]) & 0xE) >> 1; + if (temp_r21 == temp_r31 + 2) { + break; + } + } + sp8 = BoardSpacePosGet(0, temp_r29->link[temp_r28], &sp28); + VECSubtract(&sp28, &sp40, &sp34); + BoardModelRotYSet(sp14[temp_r31], atan2d(sp34.x, sp34.z)); + VECNormalize(&sp34, &sp34); + VECScale(&sp34, &sp34, 400); + VECAdd(&sp34, &sp40, &sp34); + sp34.y += 300.0f; + BoardModelPosSetV(sp14[temp_r31], &sp34); + sp1C.x = sp1C.y = sp1C.z = 3; + BoardModelScaleSetV(sp14[temp_r31], &sp1C); + } + temp_r25 = fn_1_E2AC(); + HuWinMesMaxSizeGet(1, spC, MAKE_MESSID(0x13, 0x1E)); + temp_r30 = HuWinCreate(-10000, 356, spC[0], spC[1], 0); + HuWinMesSet(temp_r30, MAKE_MESSID(0x13, 0x1E)); + HuWinBGTPLvlSet(temp_r30, 0); + HuWinMesSpeedSet(temp_r30, 0); + temp_r23 = GWPlayer[lbl_1_bss_388].port; + temp_f30 = 0; + temp_r22 = frandmod(20) + 20; +restart: + while (1) { + if (GWPlayer[lbl_1_bss_388].com) { + temp_r27 = 0; + temp_r26 = 0; + if (temp_r22) { + temp_r22--; + temp_r24 = 0; + } + else { + temp_r24 = PAD_BUTTON_A; + } + break; + } + temp_r24 = HuPadBtnDown[temp_r23]; + temp_r27 = HuPadStkX[temp_r23]; + temp_r26 = HuPadStkY[temp_r23]; + if (!(temp_r24 & PAD_TRIGGER_Z)) { + break; + } + HuAudFXPlay(1); + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { + BoardModelVisibilitySet(sp14[temp_r31], 0); + } + HuWinDispOff(temp_r30); + BoardViewMapExec(lbl_1_bss_388); + HuWinDispOn(temp_r30); + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { + BoardModelVisibilitySet(sp14[temp_r31], 1); + } + } + if (!(temp_r24 & PAD_BUTTON_A)) { + if (abs(temp_r27) < 10) { + temp_r27 = 0; + } + if (abs(temp_r26) < 10) { + temp_r26 = 0; + } + if (temp_r27 != 0 || temp_r26 != 0) { + temp_f31 = atan2d(-temp_r27, -temp_r26); + if (temp_f31 < 0.0f) { + temp_f31 += 360.0f; + } + temp_r31 = temp_f31 / 90.0f; + temp_f31 = fmod(temp_f31, 90.0); + if (temp_r31 != temp_r25 && temp_f31 >= 20.0f && temp_f31 <= 70.0f) { + temp_f30 = 0; + temp_r25 = temp_r31; + HuAudFXPlay(0); + } + } + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { + if (temp_r31 == temp_r25) { + sp1C.x = sp1C.y = sp1C.z = sind(temp_f30) + 3.0; + temp_f30 += 8.0f; + if (temp_f30 > 180.0f) { + temp_f30 -= 180.0f; + } + } + else { + sp1C.x = sp1C.y = sp1C.z = 3.0f; + } + + BoardModelScaleSetV(sp14[temp_r31], &sp1C); + } + HuPrcVSleep(); + goto restart; + } + else { + HuAudFXPlay(2); + for (temp_r31 = 0; temp_r31 < 4; temp_r31++) { + BoardModelKill(sp14[temp_r31]); + } + HuWinKill(temp_r30); + return temp_r25; + } } void fn_1_DF48(void) { - Vec sp14; - Vec sp8; - s32 temp_r31; - float temp_f31; - float temp_f30; - float temp_f29; - float temp_f28; - BoardModelMotionTimeSet(lbl_1_bss_30[5], 0); - BoardModelAttrSet(lbl_1_bss_30[5], 0x40000002); - temp_f31 = BoardModelRotYGet(lbl_1_bss_30[5]); - temp_f29 = -temp_f31/20.0f; - temp_f30 = BoardModelRotYGet(lbl_1_bss_30[15]); - temp_f28 = -temp_f30/20.0f; - BoardModelScaleGet(lbl_1_bss_30[6], &sp14); - for(temp_r31=0; temp_r31<10; temp_r31++) { - sp14.x = sp14.y = sp14.z = 1.0f-(temp_r31*0.1f); - if(sp14.x < 0.0f) { - sp14.x = sp14.y = sp14.z = 0.0f; - } - BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); - temp_f31 += temp_f29; - BoardModelRotYSet(lbl_1_bss_30[5], temp_f31); - temp_f30 += temp_f28; - BoardModelRotYSet(lbl_1_bss_30[15], temp_f30); - HuPrcVSleep(); - } - BoardModelPosGet(lbl_1_bss_30[15], &sp8); - sp8.z -= 90.0f; - sp8.y += 50.0f; - BoardModelPosSetV(lbl_1_bss_30[6], &sp8); - for(temp_r31=0; temp_r31<10; temp_r31++) { - sp14.x = sp14.y = sp14.z = temp_r31*0.1f; - if(sp14.x > 1.0f) { - sp14.x = sp14.y = sp14.z = 1.0f; - } - BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); - temp_f31 += temp_f29; - BoardModelRotYSet(lbl_1_bss_30[5], temp_f31); - temp_f30 += temp_f28; - BoardModelRotYSet(lbl_1_bss_30[15], temp_f30); - HuPrcVSleep(); - } - sp14.x = sp14.y = sp14.z = 1.0f; - BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); - BoardModelRotYSet(lbl_1_bss_30[5], 0); - BoardModelRotYSet(lbl_1_bss_30[15], 0); - HuPrcEnd(); + Vec sp14; + Vec sp8; + s32 temp_r31; + float temp_f31; + float temp_f30; + float temp_f29; + float temp_f28; + BoardModelMotionTimeSet(lbl_1_bss_30[5], 0); + BoardModelAttrSet(lbl_1_bss_30[5], 0x40000002); + temp_f31 = BoardModelRotYGet(lbl_1_bss_30[5]); + temp_f29 = -temp_f31 / 20.0f; + temp_f30 = BoardModelRotYGet(lbl_1_bss_30[15]); + temp_f28 = -temp_f30 / 20.0f; + BoardModelScaleGet(lbl_1_bss_30[6], &sp14); + for (temp_r31 = 0; temp_r31 < 10; temp_r31++) { + sp14.x = sp14.y = sp14.z = 1.0f - (temp_r31 * 0.1f); + if (sp14.x < 0.0f) { + sp14.x = sp14.y = sp14.z = 0.0f; + } + BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); + temp_f31 += temp_f29; + BoardModelRotYSet(lbl_1_bss_30[5], temp_f31); + temp_f30 += temp_f28; + BoardModelRotYSet(lbl_1_bss_30[15], temp_f30); + HuPrcVSleep(); + } + BoardModelPosGet(lbl_1_bss_30[15], &sp8); + sp8.z -= 90.0f; + sp8.y += 50.0f; + BoardModelPosSetV(lbl_1_bss_30[6], &sp8); + for (temp_r31 = 0; temp_r31 < 10; temp_r31++) { + sp14.x = sp14.y = sp14.z = temp_r31 * 0.1f; + if (sp14.x > 1.0f) { + sp14.x = sp14.y = sp14.z = 1.0f; + } + BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); + temp_f31 += temp_f29; + BoardModelRotYSet(lbl_1_bss_30[5], temp_f31); + temp_f30 += temp_f28; + BoardModelRotYSet(lbl_1_bss_30[15], temp_f30); + HuPrcVSleep(); + } + sp14.x = sp14.y = sp14.z = 1.0f; + BoardModelScaleSetV(lbl_1_bss_30[6], &sp14); + BoardModelRotYSet(lbl_1_bss_30[5], 0); + BoardModelRotYSet(lbl_1_bss_30[15], 0); + HuPrcEnd(); } s32 fn_1_E2AC(void) { - switch(GWSystem.star_pos) { - case 0: - return 3; - - case 1: - case 2: - return 0; - - case 3: - case 4: - return 1; - - case 5: - case 6: - case 7: - return 2; - - default: - return -1; - } + switch (GWSystem.star_pos) { + case 0: + return 3; + + case 1: + case 2: + return 0; + + case 3: + case 4: + return 1; + + case 5: + case 6: + case 7: + return 2; + + default: + return -1; + } } /* Rotate (yaw) of model 4 */ -void fn_1_E310(f32 degrees) { - Point3d spC; +void fn_1_E310(f32 degrees) +{ + Vec spC; lbl_1_bss_380 += degrees; if (lbl_1_bss_380 >= 360.0f) { lbl_1_bss_380 -= 360.0f; @@ -804,11 +808,11 @@ void fn_1_E310(f32 degrees) { void fn_1_E41C(void) { - lbl_1_bss_388 = GWSystem.player_curr; - OSReport("Roulette Player %d\n", lbl_1_bss_388); - lbl_1_bss_38C = HuPrcChildCreate(fn_1_BCFC, 8195, 8192, 0, boardMainProc); - HuPrcDestructorSet2(lbl_1_bss_38C, (void *)fn_1_BE74); //fn_1_BE74 requires implicit return - while(lbl_1_bss_38C) { - HuPrcVSleep(); - } + lbl_1_bss_388 = GWSystem.player_curr; + OSReport("Roulette Player %d\n", lbl_1_bss_388); + lbl_1_bss_38C = HuPrcChildCreate(fn_1_BCFC, 8195, 8192, 0, boardMainProc); + HuPrcDestructorSet2(lbl_1_bss_38C, (void *)fn_1_BE74); // fn_1_BE74 requires implicit return + while (lbl_1_bss_38C) { + HuPrcVSleep(); + } } diff --git a/src/REL/w03Dll/mg_coin.c b/src/REL/w03Dll/mg_coin.c index b577ffc1..dc05b755 100644 --- a/src/REL/w03Dll/mg_coin.c +++ b/src/REL/w03Dll/mg_coin.c @@ -134,9 +134,9 @@ void fn_1_7C98(void) s32 fn_1_7D18(s32 arg0) { - Point3d sp38; - Point3d sp2C; - Point3d sp20; + Vec sp38; + Vec sp2C; + Vec sp20; Vec sp14; Vec sp8; f32 var_f31; @@ -259,7 +259,7 @@ s32 lbl_1_data_490[] = { void fn_1_81E0(s32 arg0) { - Point3d sp8; + Vec sp8; omObjData *temp_r3; f32 temp_f31; s32 temp_r28; @@ -499,7 +499,7 @@ s32 lbl_1_data_4B4[] = { 0x00000440, 0x00000441, 0x00000442, 0x00000443, 0x00000 void fn_1_8C08(omObjData *arg0, someBits3 *arg1) { - Point3d spC; + Vec spC; f32 temp_f31; f32 temp_f30; s8 temp_r27; @@ -535,7 +535,7 @@ void fn_1_8C08(omObjData *arg0, someBits3 *arg1) void fn_1_8E44(omObjData *arg0, someBits3 *arg1) { - Point3d sp8; + Vec sp8; f32 temp_f1; f32 temp_f31; @@ -611,9 +611,9 @@ void fn_1_91B8(void) void fn_1_9230(s32 arg0) { - Point3d sp20; - Point3d sp14; - Point3d sp8; + Vec sp20; + Vec sp14; + Vec sp8; s16 temp_r30; f32 rotY; @@ -747,7 +747,7 @@ void fn_1_95B8(omObjData *arg0) void fn_1_97F8(s32 arg0) { - Point3d sp8; + Vec sp8; f32 temp_f2; f32 var_f31; f64 temp_f1; diff --git a/src/REL/w03Dll/mg_item.c b/src/REL/w03Dll/mg_item.c index a7d31165..9b9ccfa3 100644 --- a/src/REL/w03Dll/mg_item.c +++ b/src/REL/w03Dll/mg_item.c @@ -794,9 +794,9 @@ void fn_1_B350(omObjData *arg0) void fn_1_B4AC(omObjData *arg0, someBits2 *arg1) { - Point3d sp20; - Point3d sp14; - Point3d sp8; + Vec sp20; + Vec sp14; + Vec sp8; f32 temp_f31; s8 temp_r0; s32 i; @@ -827,7 +827,7 @@ void fn_1_B4AC(omObjData *arg0, someBits2 *arg1) void fn_1_B688(omObjData *arg0, someBits2 *arg1) { - Point3d sp8; + Vec sp8; if (arg1->unk1-- != 0) { BoardModelPosGet(arg1->unk_06[arg1->unk2], &sp8); @@ -844,7 +844,7 @@ void fn_1_B688(omObjData *arg0, someBits2 *arg1) void fn_1_B748(omObjData *arg0, someBits2 *arg1) { Vec sp14; - Point3d sp8; + Vec sp8; f32 temp_f0; s16 temp_r29; @@ -877,8 +877,8 @@ void fn_1_B748(omObjData *arg0, someBits2 *arg1) void fn_1_B8E8(s32 arg0) { - Point3d sp14; - Point3d sp8; + Vec sp14; + Vec sp8; f32 temp_f31; someBits2 *temp_r31; f32 temp; @@ -975,7 +975,7 @@ void fn_1_BDAC(void) void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix) { - Point3d sp8; + Vec sp8; f32 temp_f30; f32 temp_f29; f32 temp_f31; diff --git a/src/REL/w03Dll/river.c b/src/REL/w03Dll/river.c index 7736b6f2..810ab586 100644 --- a/src/REL/w03Dll/river.c +++ b/src/REL/w03Dll/river.c @@ -1,28 +1,29 @@ -#include "dolphin.h" -#include "game/object.h" #include "REL/w03Dll.h" +#include "dolphin.h" #include "game/board/main.h" #include "game/board/model.h" #include "game/board/player.h" #include "game/hsfdraw.h" +#include "game/object.h" + #include "ext_math.h" -//BSS +// BSS char lbl_1_bss_130[8]; -omObjData* lbl_1_bss_12C; +omObjData *lbl_1_bss_12C; s16 lbl_1_bss_128; s32 lbl_1_bss_124; -Process* lbl_1_bss_120; +Process *lbl_1_bss_120; -//function signatures +// function signatures void fn_1_67F8(void); void fn_1_6884(void); -void fn_1_767C(omObjData* arg0); +void fn_1_767C(omObjData *arg0); s32 fn_1_6898(s32 arg0); void fn_1_6B98(s32 arg0); void fn_1_6F9C(s32 arg0); -void fn_1_767C(omObjData* arg0); +void fn_1_767C(omObjData *arg0); void fn_1_735C(s32 arg0); void fn_1_77E4(s32 arg0); @@ -34,43 +35,37 @@ typedef struct unkWorkStruct { f32 unk_04; } unkWorkStruct; -//data -s32 lbl_1_data_368[] = { - 0x00000105, 0x00000145, 0x00000185, - 0x000001C5, 0x00000205, 0x00000245, - 0x00000285, 0x000002C5 -}; +// data +s32 lbl_1_data_368[] = { 0x00000105, 0x00000145, 0x00000185, 0x000001C5, 0x00000205, 0x00000245, 0x00000285, 0x000002C5 }; s16 lbl_1_data_388 = -1; s16 lbl_1_data_38A = -1; s16 lbl_1_data_38C = -1; -s32 lbl_1_data_390[] = { - DATA_MAKE_NUM(DATADIR_W03, 0x26), - DATA_MAKE_NUM(DATADIR_W03, 0x27), - DATA_MAKE_NUM(DATADIR_W03, 0x28), - DATA_NUM_LISTEND -}; +s32 lbl_1_data_390[] = { DATA_MAKE_NUM(DATADIR_W03, 0x26), DATA_MAKE_NUM(DATADIR_W03, 0x27), DATA_MAKE_NUM(DATADIR_W03, 0x28), DATA_NUM_LISTEND }; -void fn_1_63F4(s32 arg0) { +void fn_1_63F4(s32 arg0) +{ Vec spC; - unkWorkStruct* work = OM_GET_WORK_PTR(lbl_1_bss_12C, unkWorkStruct); + unkWorkStruct *work = OM_GET_WORK_PTR(lbl_1_bss_12C, unkWorkStruct); work->unk_04 = 0.0f; BoardModelPosGet(lbl_1_data_388, &spC); if (arg0 != 0) { spC.y = -185.0f; - } else { + } + else { spC.y = 10.0f; } BoardModelPosSetV(lbl_1_data_388, &spC); } -void fn_1_6494(void) { +void fn_1_6494(void) +{ Vec sp14; Vec sp8; - unkWorkStruct* temp_r31; + unkWorkStruct *temp_r31; lbl_1_data_388 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0E), NULL, 0); lbl_1_data_38C = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0F), NULL, 0); @@ -83,14 +78,15 @@ void fn_1_6494(void) { sp14.x = sp8.x + (400.0 * sin(-(M_PI / 2))); sp14.z = sp8.z + (400.0 * cos(-(M_PI / 2))); BoardModelPosSetV(lbl_1_data_388, &sp14); - lbl_1_bss_12C = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, (void*)fn_1_767C); + lbl_1_bss_12C = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, (void *)fn_1_767C); temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_12C, unkWorkStruct); temp_r31->temp1 = 0; temp_r31->unk_04 = 0.0f; lbl_1_bss_124 = 0; } -s32 fn_1_6698(void) { +s32 fn_1_6698(void) +{ Vec sp14; Vec sp8; @@ -98,11 +94,12 @@ s32 fn_1_6698(void) { BoardSpaceFlagPosGet(0, 0x200, &sp8); sp14.x = sp8.x + (400.0 * sin(-(M_PI / 2))); sp14.z = sp8.z + (400.0 * cos(-(M_PI / 2))); - BoardModelPosSetV(lbl_1_data_388, (Point3d* ) &sp14); + BoardModelPosSetV(lbl_1_data_388, (Vec *)&sp14); return 1; } -s16 fn_1_675C(void) { +s16 fn_1_675C(void) +{ BoardRollDispSet(0); lbl_1_bss_120 = HuPrcChildCreate(fn_1_67F8, 0x2003, 0x2000, 0, boardMainProc); HuPrcDestructorSet2(lbl_1_bss_120, fn_1_6884); @@ -115,7 +112,8 @@ s16 fn_1_675C(void) { return lbl_1_bss_128; } -void fn_1_67F8(void) { +void fn_1_67F8(void) +{ s32 temp_r31; temp_r31 = GWSystem.player_curr; @@ -133,7 +131,8 @@ void fn_1_67F8(void) { HuPrcEnd(); } -void fn_1_6884(void) { +void fn_1_6884(void) +{ lbl_1_bss_120 = 0; } @@ -144,15 +143,16 @@ typedef struct unkPos { } unkPos; unkPos lbl_1_data_3B8[6] = { - {5, 20, 5}, - {21, 35, 7}, - {31, 50, 10}, - {51, 80, 15}, - {81, 100, 17}, - {101, 999, 20}, + { 5, 20, 5 }, + { 21, 35, 7 }, + { 31, 50, 10 }, + { 51, 80, 15 }, + { 81, 100, 17 }, + { 101, 999, 20 }, }; -s32 fn_1_6898(s32 arg0) { +s32 fn_1_6898(s32 arg0) +{ Vec sp20; Vec sp14; Vec sp8; @@ -165,7 +165,7 @@ s32 fn_1_6898(s32 arg0) { BoardPlayerIdleSet(arg0); BoardCameraViewSet(2); BoardCameraMotionWait(); - + Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_388), "hei01", &sp20); BoardPlayerPosGet(arg0, &sp14); VECSubtract(&sp20, &sp14, &sp8); @@ -197,7 +197,7 @@ s32 fn_1_6898(s32 arg0) { var_r27 = lbl_1_data_3B8[i].z; break; } - } + } } sprintf(lbl_1_bss_130, "%d", var_r27); @@ -216,24 +216,24 @@ s32 fn_1_6898(s32 arg0) { BoardWinKill(); switch (BoardWinChoiceGet()) { - case 0: - j = 1; - break; - case 1: - case -1: - BoardWinCreate(2, MAKE_MESSID(22, 14), 2); - BoardWinWait(); - BoardWinKill(); - return 0; - default: - BoardViewMapExec(arg0); + case 0: + j = 1; + break; + case 1: + case -1: + BoardWinCreate(2, MAKE_MESSID(22, 14), 2); + BoardWinWait(); + BoardWinKill(); + return 0; + default: + BoardViewMapExec(arg0); } } for (i = 0; i < var_r27; i++) { BoardPlayerCoinsAdd(arg0, -1); HuAudFXPlay(0xE); - HuPrcSleep(6); + HuPrcSleep(6); } HuAudFXPlay(0xF); @@ -245,11 +245,12 @@ s32 fn_1_6898(s32 arg0) { s32 BoardDAngleCalcRange(float *value, float min, float range); -void fn_1_6B98(s32 arg0) { +void fn_1_6B98(s32 arg0) +{ Vec sp30; - Point3d sp24; + Vec sp24; Vec sp18; - Point3d spC; + Vec spC; f32 sp8; f32 temp_f1; f32 temp_f31; @@ -287,19 +288,19 @@ void fn_1_6B98(s32 arg0) { VECAdd(&spC, &sp24, &sp24); temp_f1 = BoardModelMotionTimeGet(lbl_1_data_38A); - if ((temp_f1 >= 5.0f) && (temp_f1 < 15.0f) && ((s16) var_r31 == 0)) { + if ((temp_f1 >= 5.0f) && (temp_f1 < 15.0f) && ((s16)var_r31 == 0)) { HuAudFXPlay(0x451); var_r31 = 1; } - if ((BoardModelMotionTimeGet(lbl_1_data_38A) >= 21.0f) && ((s16) var_r31 != 0)) { + if ((BoardModelMotionTimeGet(lbl_1_data_38A) >= 21.0f) && ((s16)var_r31 != 0)) { var_r31 = 0; } BoardModelPosSetV(lbl_1_data_388, &sp24); - HuPrcVSleep(); + HuPrcVSleep(); } - + BoardModelPosSetV(lbl_1_data_388, &sp18); BoardCameraTargetModelSet(-1); BoardModelMotionShiftSet(lbl_1_data_38A, 2, 0.0f, 10.0f, HU3D_MOTATTR_REV); @@ -321,7 +322,8 @@ void fn_1_6B98(s32 arg0) { extern s32 lbl_1_data_368[]; // extern w03State* lbl_1_bss_0; -void fn_1_6F9C(s32 arg0) { +void fn_1_6F9C(s32 arg0) +{ Vec sp20; Vec sp14; Vec sp8; @@ -344,7 +346,8 @@ void fn_1_6F9C(s32 arg0) { var_f30 = 10.0f; var_f29 = 0.21f; sp14.y += sp20.y; - } else { + } + else { var_f30 = 0.0f; var_f29 = 0.15f; } @@ -364,16 +367,17 @@ void fn_1_6F9C(s32 arg0) { } } BoardPlayerPosSetV(arg0, &sp14); - HuPrcVSleep(); + HuPrcVSleep(); } - + BoardPlayerMotionShiftSet(arg0, 5, 0.0f, 8.0f, HU3D_MOTATTR_NONE); HuPrcSleep(10); BoardPlayerIdleSet(arg0); if (GWPlayer[arg0].bowser_suit != 0) { BoardModelHookSet(lbl_1_data_388, "chara01", BoardPlayerModelGet(arg0)); - } else { + } + else { BoardModelHookSet(lbl_1_data_388, "chara01", BoardPlayerModelGet(arg0)); } @@ -381,10 +385,11 @@ void fn_1_6F9C(s32 arg0) { lbl_1_bss_124 = 0; } -void fn_1_735C(s32 arg0) { +void fn_1_735C(s32 arg0) +{ Vec sp20; Vec sp14; - Point3d sp8; + Vec sp8; f32 temp_f1; f32 var_f30; f32 var_f31; @@ -397,19 +402,20 @@ void fn_1_735C(s32 arg0) { BoardPlayerPosSetV(arg0, &sp14); BoardModelHookObjReset(lbl_1_data_388, "chara01"); VECSubtract(&sp20, &sp14, &sp8); - + sp8.x = sp8.x / 60.0f; sp8.z = sp8.z / 60.0f; sp8.y = 0.0f; - + HuAudFXPlay(lbl_1_data_368[GWPlayer[arg0].character]); BoardPlayerMotionShiftSet(arg0, 4, 0.0f, 10.0f, HU3D_MOTATTR_NONE); if (lbl_1_bss_0->unk0 != 0) { var_f30 = 0.25f; - } else { + } + else { var_f30 = 0.2f; } - + for (var_r30 = 0, var_f31 = 0.0f; var_f31 < 60.0f; var_f31 += 1.0f) { VECAdd(&sp14, &sp8, &sp14); sp14.y += 20.0f + (var_f30 * (-0.08166667f * var_f31 * var_f31)); @@ -421,9 +427,9 @@ void fn_1_735C(s32 arg0) { } } BoardPlayerPosSetV(arg0, &sp14); - HuPrcVSleep(); + HuPrcVSleep(); } - + BoardPlayerPosSetV(arg0, &sp20); HuPrcSleep(0xA); BoardPlayerMotBlendSet(arg0, 0, 15); @@ -441,15 +447,15 @@ void fn_1_735C(s32 arg0) { BoardWinKill(); } - -void fn_1_767C(omObjData* arg0) { - Point3d sp8; +void fn_1_767C(omObjData *arg0) +{ + Vec sp8; s32 temp_r30; - unkWorkStruct* temp_r31; + unkWorkStruct *temp_r31; temp_r31 = OM_GET_WORK_PTR(arg0, unkWorkStruct); - if ( (temp_r31->temp1 != 0) || (BoardIsKill() != 0)) { + if ((temp_r31->temp1 != 0) || (BoardIsKill() != 0)) { lbl_1_bss_12C = NULL; omDelObjEx(HuPrcCurrentGet(), arg0); return; @@ -466,7 +472,8 @@ void fn_1_767C(omObjData* arg0) { } } -void fn_1_77E4(s32 arg0) { +void fn_1_77E4(s32 arg0) +{ s32 boardIndex; s32 var_r30 = 0; diff --git a/src/REL/w03Dll/statue.c b/src/REL/w03Dll/statue.c index a31fc5a8..2d4d9102 100644 --- a/src/REL/w03Dll/statue.c +++ b/src/REL/w03Dll/statue.c @@ -13,7 +13,6 @@ #include "game/objsub.h" #include "game/process.h" - #include "ext_math.h" void fn_1_1358(void); @@ -142,11 +141,11 @@ s32 fn_1_15E8(void) s32 fn_1_1650(s32 arg0) { - Point3d sp38; - Point3d sp2C; - Point3d sp20; - Point3d sp14; - Point3d sp8; + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + Vec sp8; f32 temp; s32 temp2; @@ -356,7 +355,7 @@ s32 fn_1_1D1C(void) void fn_1_1ED4(s32 arg0) { - Point3d spC; + Vec spC; f32 sp8; lbl_1_data_284 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0C), NULL, 0); @@ -400,9 +399,9 @@ void fn_1_1ED4(s32 arg0) void fn_1_20E0(s32 arg0) { - Point3d sp24; - Point3d sp18; - Point3d spC; + Vec sp24; + Vec sp18; + Vec spC; f32 sp8; f32 var_f31; s32 i; @@ -520,9 +519,9 @@ void fn_1_20E0(s32 arg0) void fn_1_26E0(s32 arg0) { - Point3d sp20; - Point3d sp14; - Point3d sp8; + Vec sp20; + Vec sp14; + Vec sp8; f32 temp; BoardSpacePosGet(0, GWPlayer[arg0].space_curr, &sp20); diff --git a/src/dolphin/mtx/mtx.c b/src/dolphin/mtx/mtx.c index eb16a64f..558d4d03 100644 --- a/src/dolphin/mtx/mtx.c +++ b/src/dolphin/mtx/mtx.c @@ -1202,7 +1202,7 @@ void PSMTXReflect(register Mtx m, const register Vec *p, const register Vec *n) } #endif -void C_MTXLookAt(Mtx m, const Point3d *camPos, const Vec *camUp, const Point3d *target) +void C_MTXLookAt(Mtx m, const Vec *camPos, const Vec *camUp, const Vec *target) { Vec vLook, vRight, vUp; diff --git a/src/game/board/block.c b/src/game/board/block.c index b830314f..0f7f86aa 100644 --- a/src/game/board/block.c +++ b/src/game/board/block.c @@ -1,3 +1,4 @@ +#include "ext_math.h" #include "game/board/main.h" #include "game/board/model.h" #include "game/board/player.h" @@ -6,7 +7,7 @@ #include "game/flag.h" #include "game/objsub.h" #include "game/process.h" -#include "ext_math.h" + #define BLOCK_SPAWN 0 #define BLOCK_HIT 2 @@ -89,7 +90,7 @@ static void BlockProc(void) s32 sp14[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x60), DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x60), DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x60), DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x60), DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x60), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x60) }; - Point3d sp8; + Vec sp8; s32 var_r28; s32 i; s32 player; @@ -191,7 +192,7 @@ static void DestroyBlock(void) static void CreateBlockObj(s32 arg0) { - Point3d player_pos; + Vec player_pos; BlockWork *work; s8 contains_star; @@ -422,7 +423,7 @@ static inline s32 FindCoinModel(s16 *out_model) static void PopupCoin(void) { - Point3d star_pos; + Vec star_pos; omObjData *coinObj; s32 model_index; s16 model; @@ -451,8 +452,8 @@ static void PopupCoin(void) static void PopupCoinExec(omObjData *obj) { - Point3d coin_pos; - Point3d coin_rot; + Vec coin_pos; + Vec coin_rot; CoinWork *work; work = OM_GET_WORK_PTR(obj, CoinWork); From 086800b79a1879fd5ba92ee15245cc86761b5ec6 Mon Sep 17 00:00:00 2001 From: Rainchus Date: Sun, 6 Apr 2025 18:53:55 -0500 Subject: [PATCH 177/178] fix malloc sizes of HuMemDirectMalloc calls (#579) --- .vscode/settings.json | 5 +- include/REL/m412Dll.h | 1 - include/game/animdata.h | 18 ++-- src/REL/instDll/font.c | 8 +- src/REL/m412Dll/main.c | 4 +- src/REL/m440Dll/main.c | 2 +- src/REL/mpexDll/mgname.c | 159 ++++++++++++++--------------- src/REL/ztardll/font.c | 212 ++++++++++++++++++++------------------- src/game/audio.c | 7 +- src/game/hsfman.c | 4 +- src/game/thpmain.c | 6 +- 11 files changed, 219 insertions(+), 207 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 1e7df332..64233526 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -69,7 +69,8 @@ "msghndlr.h": "c", "dispatch.h": "c", "trk.h": "c", - "debuggerdriver.h": "c" + "debuggerdriver.h": "c", + "mpexdll.h": "c" }, "search.useIgnoreFiles": false, "search.exclude": { @@ -142,4 +143,4 @@ "C_Cpp_Runner.showCompilationTime": false, "C_Cpp_Runner.useLinkTimeOptimization": false, "C_Cpp_Runner.msvcSecureNoWarnings": false -} \ No newline at end of file +} diff --git a/include/REL/m412Dll.h b/include/REL/m412Dll.h index d9749a81..c91edb68 100644 --- a/include/REL/m412Dll.h +++ b/include/REL/m412Dll.h @@ -20,7 +20,6 @@ typedef struct _unkStruct { HsfVector2f unk1C; Vec unk24; float unk30; - float unk34; } unkStruct; typedef struct _unkStruct2 { diff --git a/include/game/animdata.h b/include/game/animdata.h index 88b42cc4..63876d94 100644 --- a/include/game/animdata.h +++ b/include/game/animdata.h @@ -71,13 +71,13 @@ typedef struct anim_bmp_data { } AnimBmpData; typedef struct anim_data { - s16 bankNum; - s16 patNum; - s16 bmpNum; - s16 useNum; - AnimBankData *bank; - AnimPatData *pat; - AnimBmpData *bmp; -} AnimData; +/* 0x00 */ s16 bankNum; +/* 0x02 */ s16 patNum; +/* 0x04 */ s16 bmpNum; +/* 0x06 */ s16 useNum; +/* 0x08 */ AnimBankData *bank; +/* 0x0C */ AnimPatData *pat; +/* 0x10 */ AnimBmpData *bmp; +} AnimData; //sizeof 0x14 -#endif \ No newline at end of file +#endif diff --git a/src/REL/instDll/font.c b/src/REL/instDll/font.c index 9986bd62..f4712b09 100644 --- a/src/REL/instDll/font.c +++ b/src/REL/instDll/font.c @@ -2,6 +2,8 @@ #include "REL/instDll.h" +#define FONT_CHAR_MAX 100 + static s32 FontCharFile[0xC6] = { 0, 0, @@ -227,9 +229,9 @@ s32 FontCreate(SeqWork *work, char *mess, s16 jp_flag) if (grpNo == 0x10) { return -1; } - animP = HuMemDirectMalloc(HEAP_SYSTEM, 0x190); - posX = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); - posY = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); + animP = HuMemDirectMalloc(HEAP_SYSTEM, (FONT_CHAR_MAX * sizeof(AnimData*))); + posX = HuMemDirectMalloc(HEAP_SYSTEM, FONT_CHAR_MAX * sizeof(*posX)); + posY = HuMemDirectMalloc(HEAP_SYSTEM, FONT_CHAR_MAX * sizeof(*posY)); for (str = mess, len = 0, charNum = 0; str[0] != 0; str++) { if (str[0] == 0x20 || str[0] == 0x10) { diff --git a/src/REL/m412Dll/main.c b/src/REL/m412Dll/main.c index 35f10b6a..8f153855 100644 --- a/src/REL/m412Dll/main.c +++ b/src/REL/m412Dll/main.c @@ -661,7 +661,7 @@ void fn_1_2064(void) for (var_r30 = 0; var_r30 < 0x17; var_r30++) { temp_r26 = HuPrcChildCreate(fn_1_1DBC, 0x2000, 0x1000, 0, HuPrcCurrentGet()); - var_r27 = HuMemDirectMalloc(HEAP_DATA, 0x18); + var_r27 = HuMemDirectMalloc(HEAP_DATA, sizeof(unkStruct4)); temp_r26->user_data = var_r27; var_r27->unk0 = temp_r31->unk4; var_r27->unk4 = var_r30; @@ -692,7 +692,7 @@ s32 fn_1_2708(void) if (var_r31 >= 0x20) { var_r31 = -1; } - lbl_1_bss_278[var_r31] = HuMemDirectMalloc(HEAP_DATA, 0x34); + lbl_1_bss_278[var_r31] = HuMemDirectMalloc(HEAP_DATA, sizeof(unkStruct)); lbl_1_bss_278[var_r31]->unk6 = -1; lbl_1_bss_278[var_r31]->unkA = 0; return var_r31; diff --git a/src/REL/m440Dll/main.c b/src/REL/m440Dll/main.c index db82808e..85db113d 100644 --- a/src/REL/m440Dll/main.c +++ b/src/REL/m440Dll/main.c @@ -640,7 +640,7 @@ void fn_1_2470(omObjData *arg0) temp_r29 = &Hu3DData[temp_r26]; temp_r28 = temp_r29->hsfData->root; lbl_1_bss_60 = temp_r28->data.childrenCount; - lbl_1_bss_64 = HuMemDirectMalloc(HEAP_DATA, lbl_1_bss_60 * 64); + lbl_1_bss_64 = HuMemDirectMalloc(HEAP_DATA, lbl_1_bss_60 * sizeof(unkStruct6)); OSReport("Koopa Object Count %d\n", temp_r29->hsfData->objectCnt); for (var_r30 = 0; var_r30 < lbl_1_bss_60; var_r30++) { diff --git a/src/REL/mpexDll/mgname.c b/src/REL/mpexDll/mgname.c index e173ead7..0ead0fe8 100644 --- a/src/REL/mpexDll/mgname.c +++ b/src/REL/mpexDll/mgname.c @@ -13,7 +13,9 @@ #include "REL/mpexDll.h" -static s32 fontDataTbl[0xC6] = { +#define FONT_CHAR_MAX 100 + +static s32 FontCharFile[0xC6] = { 0, 0, 0, @@ -214,127 +216,126 @@ static s32 fontDataTbl[0xC6] = { 0x140025, }; -s32 fn_1_1CB80(SeqWork *arg0, u8 *arg1, s16 arg2) +s32 fn_1_1CB80(SeqWork *arg0, char *arg1, s16 arg2) { - u8 *var_r31; - s16 var_r30; - s16 *var_r29; - s16 var_r28; - s32 *var_r27; - s16 var_r26; - s32 var_r25; - s16 var_r23; - s16 *var_r22; - AnimData **var_r21; - s16 var_r20; - s16 var_r19; + char *str; + s16 len; + s16 *posY; + s16 charNum; + s32 *fileTbl; + s16 i; + s16 grpNo; + s32 file; + s16 *posX; + AnimData **animP; + s16 gid; + s16 sprid; - var_r27 = fontDataTbl; + fileTbl = FontCharFile; - for (var_r23 = 0; var_r23 < 0x10; var_r23++) { - if (arg0->spr_grp[var_r23] == -1) { + for (grpNo = 0; grpNo < 0x10; grpNo++) { + if (arg0->spr_grp[grpNo] == -1) { break; } } - if (var_r23 == 0x10) { + if (grpNo == 0x10) { return -1; } - var_r21 = HuMemDirectMalloc(HEAP_SYSTEM, 0x190); - var_r22 = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); - var_r29 = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); + animP = HuMemDirectMalloc(HEAP_SYSTEM, (FONT_CHAR_MAX * sizeof(AnimData*))); + posX = HuMemDirectMalloc(HEAP_SYSTEM, FONT_CHAR_MAX * sizeof(*posX)); + posY = HuMemDirectMalloc(HEAP_SYSTEM, FONT_CHAR_MAX * sizeof(*posY)); - for (var_r31 = arg1, var_r30 = 0, var_r28 = 0; var_r31[0] != 0; var_r31++) { - if (var_r31[0] == 0x20 || var_r31[0] == 0x10) { - var_r30 += 0xE; + for (str = arg1, len = 0, charNum = 0; str[0] != 0; str++) { + if (str[0] == 0x20 || str[0] == 0x10) { + len += 0xE; } - else if (var_r31[0] < 0x30 || var_r31[0] == 0x80 || var_r31[0] == 0x81) { + else if (str[0] < 0x30 || str[0] == 0x80 || str[0] == 0x81) { continue; } else { - if (var_r31[1] == 0x80) { - if ((var_r31[0] >= 0x96) && (var_r31[0] <= 0xA4)) { - var_r25 = var_r27[var_r31[0] + 0x6A]; + if (str[1] == 0x80) { + if ((str[0] >= 0x96) && (str[0] <= 0xA4)) { + file = fileTbl[str[0] + 0x6A]; } - else if ((var_r31[0] >= 0xAA) && (var_r31[0] <= 0xAE)) { - var_r25 = var_r27[var_r31[0] + 0x65]; + else if ((str[0] >= 0xAA) && (str[0] <= 0xAE)) { + file = fileTbl[str[0] + 0x65]; } - else if ((var_r31[0] >= 0xD6) && (var_r31[0] <= 0xE4)) { - var_r25 = var_r27[var_r31[0] + 0x43]; + else if ((str[0] >= 0xD6) && (str[0] <= 0xE4)) { + file = fileTbl[str[0] + 0x43]; } - else if ((var_r31[0] >= 0xEA) && (var_r31[0] <= 0xEE)) { - var_r25 = var_r27[var_r31[0] + 0x3E]; + else if ((str[0] >= 0xEA) && (str[0] <= 0xEE)) { + file = fileTbl[str[0] + 0x3E]; } } - else if (var_r31[1] == 0x81) { - if ((var_r31[0] >= 0xAA) && (var_r31[0] <= 0xAE)) { - var_r25 = var_r27[var_r31[0] + 0x6A]; + else if (str[1] == 0x81) { + if ((str[0] >= 0xAA) && (str[0] <= 0xAE)) { + file = fileTbl[str[0] + 0x6A]; } - else if ((var_r31[0] >= 0xEA) && (var_r31[0] <= 0xEE)) { - var_r25 = var_r27[var_r31[0] + 0x43]; + else if ((str[0] >= 0xEA) && (str[0] <= 0xEE)) { + file = fileTbl[str[0] + 0x43]; } } else { - var_r25 = var_r27[var_r31[0]]; + file = fileTbl[str[0]]; } - var_r21[var_r28] = HuSprAnimReadFile(var_r25); - var_r22[var_r28] = var_r30; - if ((var_r31[0] >= 0x61) && (var_r31[0] <= 0x7A)) { - var_r29[var_r28] = 2; - var_r30 += 0x12; + animP[charNum] = HuSprAnimReadFile(file); + posX[charNum] = len; + if ((str[0] >= 0x61) && (str[0] <= 0x7A)) { + posY[charNum] = 2; + len += 0x12; } - else if ((var_r31[0] == 0xC2) || (var_r31[0] == 0xC3)) { - var_r29[var_r28] = 0; - var_r30 += 0x12; + else if ((str[0] == 0xC2) || (str[0] == 0xC3)) { + posY[charNum] = 0; + len += 0x12; } - else if (var_r31[0] == 0x5C) { - var_r29[var_r28] = 0; - var_r30 += 8; + else if (str[0] == 0x5C) { + posY[charNum] = 0; + len += 8; } - else if ((var_r31[0] >= 0x87) && (var_r31[0] <= 0x8F)) { - var_r29[var_r28] = 4; - var_r30 += 0x18; + else if ((str[0] >= 0x87) && (str[0] <= 0x8F)) { + posY[charNum] = 4; + len += 0x18; } - else if ((var_r31[0] >= 0xC7) && (var_r31[0] <= 0xCF)) { - var_r29[var_r28] = 4; - var_r30 += 0x18; + else if ((str[0] >= 0xC7) && (str[0] <= 0xCF)) { + posY[charNum] = 4; + len += 0x18; } - else if ((var_r31[0] == 0x3D) || (var_r31[0] == 0x84)) { - var_r29[var_r28] = 0; - var_r30 += 0x14; + else if ((str[0] == 0x3D) || (str[0] == 0x84)) { + posY[charNum] = 0; + len += 0x14; } else { - var_r29[var_r28] = 0; - var_r30 += 0x1C; + posY[charNum] = 0; + len += 0x1C; } - var_r28++; + charNum++; } } - var_r20 = HuSprGrpCreate(var_r28); - arg0->spr_grp[var_r23] = var_r20; - arg0->alt_word_len = var_r30; - var_r30 = (var_r30 / 2) - 0xE; - for (var_r26 = 0; var_r26 < var_r28; var_r26++) { - var_r19 = HuSprCreate(var_r21[var_r26], 0, 0); - HuSprGrpMemberSet(var_r20, var_r26, var_r19); - HuSprPosSet(var_r20, var_r26, var_r22[var_r26] - var_r30, var_r29[var_r26]); + gid = HuSprGrpCreate(charNum); + arg0->spr_grp[grpNo] = gid; + arg0->alt_word_len = len; + len = (len / 2) - 0xE; + for (i = 0; i < charNum; i++) { + sprid = HuSprCreate(animP[i], 0, 0); + HuSprGrpMemberSet(gid, i, sprid); + HuSprPosSet(gid, i, posX[i] - len, posY[i]); } - arg0->word_len = var_r28; - HuMemDirectFree(var_r21); - HuMemDirectFree(var_r22); - HuMemDirectFree(var_r29); - return var_r20; + arg0->word_len = charNum; + HuMemDirectFree(animP); + HuMemDirectFree(posX); + HuMemDirectFree(posY); + return gid; } s32 fn_1_1D02C(s32 arg0) { SeqWork sp10; s16 spC[2]; - - u8 *var_r31; + char *var_r31; s32 var_r30; s16 var_r29; - u8 *var_r28; + char *var_r28; s32 var_r27; s32 var_r26; s16 var_r25; diff --git a/src/REL/ztardll/font.c b/src/REL/ztardll/font.c index 8dbfe634..74f9608a 100644 --- a/src/REL/ztardll/font.c +++ b/src/REL/ztardll/font.c @@ -3,6 +3,8 @@ #include "REL/ztardll.h" +#define FONT_CHAR_MAX 100 + #if VERSION_ENG s32 lbl_1_data_B0[0xC6] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x01), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x02), @@ -107,156 +109,158 @@ s32 lbl_1_data_B0[0x132] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, s32 fn_1_7754(SeqWork *work, char *mess) { - char *var_r31; - s16 var_r30; - s16 *var_r29; - s16 var_r28; - s32 *var_r27; - s16 var_r26; - s16 var_r25; - s32 var_r24; - s16 *var_r22; - AnimData **var_r21; - s16 var_r20; - s16 var_r19; + char* str; + s16 len; + s16* posY; + s16 charNum; + s32* fileTbl; + s16 i; + s16 grpNo; + s32 file; + s16 *posX; + AnimData **animP; + s16 gid; + s16 sprid; s32 var_r19_2; - var_r27 = lbl_1_data_B0; - for (var_r25 = 0; var_r25 < 0x10; var_r25++) { - if (work->spr_grp[var_r25] == -1) { + fileTbl = lbl_1_data_B0; + for (grpNo = 0; grpNo < 0x10; grpNo++) { + if (work->spr_grp[grpNo] == -1) { break; } } - if (var_r25 == 0x10) { + if (grpNo == 0x10) { return -1; } - var_r21 = HuMemDirectMalloc(HEAP_SYSTEM, 0x190); - var_r22 = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); - var_r29 = HuMemDirectMalloc(HEAP_SYSTEM, 0xC8); - for (var_r31 = mess, var_r30 = 0, var_r28 = 0; var_r31[0] != 0; var_r31++) { - if (var_r31[0] == 0x20 || var_r31[0] == 0x10) { - var_r30 += VERSION_JP ? 0x1C : 0xE; + + animP = HuMemDirectMalloc(HEAP_SYSTEM, (FONT_CHAR_MAX * sizeof(AnimData*))); + posX = HuMemDirectMalloc(HEAP_SYSTEM, FONT_CHAR_MAX * sizeof(*posX)); + posY = HuMemDirectMalloc(HEAP_SYSTEM, FONT_CHAR_MAX * sizeof(*posY)); + + for (str = mess, len = 0, charNum = 0; str[0] != 0; str++) { + if (str[0] == 0x20 || str[0] == 0x10) { + len += VERSION_JP ? 0x1C : 0xE; } #if VERSION_PAL - else if (*var_r31 >= 0x30) { - var_r19_2 = var_r27[*var_r31]; - var_r21[var_r28] = HuSprAnimReadFile(var_r19_2); - var_r22[var_r28] = var_r30; - if ((*var_r31 >= 0x61) && (*var_r31 <= 0x7A)) { - var_r29[var_r28] = 2; - var_r30 += 0x12; + else if (*str >= 0x30) { + var_r19_2 = fileTbl[*str]; + animP[charNum] = HuSprAnimReadFile(var_r19_2); + posX[charNum] = len; + if ((*str >= 0x61) && (*str <= 0x7A)) { + posY[charNum] = 2; + len += 0x12; } - else if ((*var_r31 == 0xC2) || (*var_r31 == 0xC3) || (*var_r31 == 0xC7)) { - var_r29[var_r28] = 0; - var_r30 += 0x12; + else if ((*str == 0xC2) || (*str == 0xC3) || (*str == 0xC7)) { + posY[charNum] = 0; + len += 0x12; } - else if (*var_r31 == 0xC6) { - var_r29[var_r28] = 0; - var_r30 += 0x18; + else if (*str == 0xC6) { + posY[charNum] = 0; + len += 0x18; } - else if (*var_r31 == 0x5C) { - var_r29[var_r28] = 0; - var_r30 += 8; + else if (*str == 0x5C) { + posY[charNum] = 0; + len += 8; } - else if ((*var_r31 >= 0x90) && (*var_r31 <= 0x9F)) { - var_r29[var_r28] = -2; - var_r30 += 0x18; + else if ((*str >= 0x90) && (*str <= 0x9F)) { + posY[charNum] = -2; + len += 0x18; } - else if ((*var_r31 >= 0xD0) && (*var_r31 <= 0xEF)) { - var_r29[var_r28] = -2; - var_r30 += 0x12; + else if ((*str >= 0xD0) && (*str <= 0xEF)) { + posY[charNum] = -2; + len += 0x12; } - else if ((*var_r31 == 0x3D) || (*var_r31 == 0x84)) { - var_r29[var_r28] = 0; - var_r30 += 0x14; + else if ((*str == 0x3D) || (*str == 0x84)) { + posY[charNum] = 0; + len += 0x14; } else { - var_r29[var_r28] = 0; - var_r30 += 0x1C; + posY[charNum] = 0; + len += 0x1C; } - var_r28++; + charNum++; } #else - else if (var_r31[0] < 0x30) { + else if (str[0] < 0x30) { } - else if (var_r31[0] == 0x80) { + else if (str[0] == 0x80) { } - else if (var_r31[0] == 0x81) { + else if (str[0] == 0x81) { } else { - if (var_r31[1] == 0x80) { - if ((var_r31[0] >= 0x96) && (var_r31[0] <= 0xA4)) { - var_r24 = var_r27[var_r31[0] + 0x6A]; + if (str[1] == 0x80) { + if ((str[0] >= 0x96) && (str[0] <= 0xA4)) { + file = fileTbl[str[0] + 0x6A]; } - else if ((var_r31[0] >= 0xAA) && (var_r31[0] <= 0xAE)) { - var_r24 = var_r27[var_r31[0] + 0x65]; + else if ((str[0] >= 0xAA) && (str[0] <= 0xAE)) { + file = fileTbl[str[0] + 0x65]; } - else if ((var_r31[0] >= 0xD6) && (var_r31[0] <= 0xE4)) { - var_r24 = var_r27[var_r31[0] + 0x43]; + else if ((str[0] >= 0xD6) && (str[0] <= 0xE4)) { + file = fileTbl[str[0] + 0x43]; } - else if ((var_r31[0] >= 0xEA) && (var_r31[0] <= 0xEE)) { - var_r24 = var_r27[var_r31[0] + 0x3E]; + else if ((str[0] >= 0xEA) && (str[0] <= 0xEE)) { + file = fileTbl[str[0] + 0x3E]; } } - else if (var_r31[1] == 0x81) { - if ((var_r31[0] >= 0xAA) && (var_r31[0] <= 0xAE)) { - var_r24 = var_r27[var_r31[0] + 0x6A]; + else if (str[1] == 0x81) { + if ((str[0] >= 0xAA) && (str[0] <= 0xAE)) { + file = fileTbl[str[0] + 0x6A]; } - else if ((var_r31[0] >= 0xEA) && (var_r31[0] <= 0xEE)) { - var_r24 = var_r27[var_r31[0] + 0x43]; + else if ((str[0] >= 0xEA) && (str[0] <= 0xEE)) { + file = fileTbl[str[0] + 0x43]; } } else { - var_r24 = var_r27[var_r31[0]]; + file = fileTbl[str[0]]; } - var_r21[var_r28] = HuSprAnimReadFile(var_r24); - var_r22[var_r28] = var_r30; - if ((var_r31[0] >= 0x61) && (var_r31[0] <= 0x7A)) { - var_r29[var_r28] = 2; - var_r30 += 0x12; + animP[charNum] = HuSprAnimReadFile(file); + posX[charNum] = len; + if ((str[0] >= 0x61) && (str[0] <= 0x7A)) { + posY[charNum] = 2; + len += 0x12; } - else if ((var_r31[0] == 0xC2) || (var_r31[0] == 0xC3)) { - var_r29[var_r28] = 0; - var_r30 += 0x12; + else if ((str[0] == 0xC2) || (str[0] == 0xC3)) { + posY[charNum] = 0; + len += 0x12; } - else if (var_r31[0] == 0x5C) { - var_r29[var_r28] = 0; - var_r30 += 8; + else if (str[0] == 0x5C) { + posY[charNum] = 0; + len += 8; } - else if ((var_r31[0] >= 0x87) && (var_r31[0] <= 0x8F)) { - var_r29[var_r28] = 4; - var_r30 += 0x18; + else if ((str[0] >= 0x87) && (str[0] <= 0x8F)) { + posY[charNum] = 4; + len += 0x18; } - else if ((var_r31[0] >= 0xC7) && (var_r31[0] <= 0xCF)) { - var_r29[var_r28] = 4; - var_r30 += 0x18; + else if ((str[0] >= 0xC7) && (str[0] <= 0xCF)) { + posY[charNum] = 4; + len += 0x18; } #if !VERSION_JP - else if ((var_r31[0] == 0x3D) || (var_r31[0] == 0x84)) { - var_r29[var_r28] = 0; - var_r30 += 0x14; + else if ((str[0] == 0x3D) || (str[0] == 0x84)) { + posY[charNum] = 0; + len += 0x14; } #endif else { - var_r29[var_r28] = 0; - var_r30 += 0x1C; + posY[charNum] = 0; + len += 0x1C; } - var_r28++; + charNum++; } #endif } - var_r20 = HuSprGrpCreate(var_r28); - work->spr_grp[var_r25] = var_r20; - work->alt_word_len = var_r30; - var_r30 = (var_r30 / 2) - 0xE; - for (var_r26 = 0; var_r26 < var_r28; var_r26++) { - var_r19 = HuSprCreate(var_r21[var_r26], 0, 0); - HuSprGrpMemberSet(var_r20, var_r26, var_r19); - HuSprPosSet(var_r20, var_r26, var_r22[var_r26] - var_r30, var_r29[var_r26]); + gid = HuSprGrpCreate(charNum); + work->spr_grp[grpNo] = gid; + work->alt_word_len = len; + len = (len / 2) - 0xE; + for (i = 0; i < charNum; i++) { + sprid = HuSprCreate(animP[i], 0, 0); + HuSprGrpMemberSet(gid, i, sprid); + HuSprPosSet(gid, i, posX[i] - len, posY[i]); } - work->word_len = var_r28; - HuMemDirectFree(var_r21); - HuMemDirectFree(var_r22); - HuMemDirectFree(var_r29); - return var_r25; + work->word_len = charNum; + HuMemDirectFree(animP); + HuMemDirectFree(posX); + HuMemDirectFree(posY); + return grpNo; } diff --git a/src/game/audio.c b/src/game/audio.c index 92794f6c..2227c3b7 100644 --- a/src/game/audio.c +++ b/src/game/audio.c @@ -5,6 +5,8 @@ #include "game/wipe.h" #include "game/gamework_data.h" +#define MUSIC_HEAP_SIZE 0x13FC00 + static int HuSePlay(int seId, MSM_SEPARAM *param); extern s16 omSysExitReq; @@ -32,7 +34,6 @@ static char *lbl_8012E9AC[] = { "" }; - void HuAudInit(void) { MSM_INIT msmInit; @@ -41,8 +42,8 @@ void HuAudInit(void) s32 result; s16 i; - msmInit.heap = HuMemDirectMalloc(HEAP_MUSIC, 0x13FC00); - msmInit.heapSize = 0x13FC00; + msmInit.heap = HuMemDirectMalloc(HEAP_MUSIC, MUSIC_HEAP_SIZE); + msmInit.heapSize = MUSIC_HEAP_SIZE; msmInit.msmPath = "/sound/mpgcsnd.msm"; msmInit.pdtPath = "/sound/mpgcstr.pdt"; msmInit.open = NULL; diff --git a/src/game/hsfman.c b/src/game/hsfman.c index b455a0cf..243da902 100644 --- a/src/game/hsfman.c +++ b/src/game/hsfman.c @@ -17,6 +17,8 @@ #include "math.h" #include "ext_math.h" +#define SHADOW_HEAP_SIZE 0x9000 + ModelData Hu3DData[HU3D_MODEL_MAX]; CameraData Hu3DCamera[HU3D_CAM_MAX]; static s16 layerNum[8]; @@ -1876,7 +1878,7 @@ void Hu3DFogClear(void) { void Hu3DShadowCreate(f32 arg8, f32 arg9, f32 argA) { Hu3DShadowData.unk_02 = 0xC0; if (Hu3DShadowData.unk_04 == 0) { - Hu3DShadowData.unk_04 = HuMemDirectMalloc(HEAP_DATA, 0x9000); + Hu3DShadowData.unk_04 = HuMemDirectMalloc(HEAP_DATA, SHADOW_HEAP_SIZE); } Hu3DShadowData.unk_08.x = arg8; Hu3DShadowData.unk_08.y = arg9; diff --git a/src/game/thpmain.c b/src/game/thpmain.c index d31d4639..082eb281 100755 --- a/src/game/thpmain.c +++ b/src/game/thpmain.c @@ -8,6 +8,8 @@ #include "string.h" +#define THP_DECODE_STACK_SIZE 0x2000 + static void THPTestProc(void); static void THPViewFunc(ModelData *arg0, Mtx arg1); static void THPViewSprFunc(HuSprite *arg0); @@ -153,8 +155,8 @@ static void THPTestProc(void) HuPrcVSleep(); } HuPrcVSleep(); - decodeStackP = HuMemDirectMalloc(HEAP_SYSTEM, 0x2000); - decodeThread = OSSetIdleFunction(THPDecodeFunc, NULL, decodeStackP + 0x2000, 0x2000); + decodeStackP = HuMemDirectMalloc(HEAP_SYSTEM, THP_DECODE_STACK_SIZE); + decodeThread = OSSetIdleFunction(THPDecodeFunc, NULL, (decodeStackP + THP_DECODE_STACK_SIZE), THP_DECODE_STACK_SIZE); decodeRate = 0; THPStart = 1; if (SimpleControl.unk19C == 1) { From ce573014358b77bf8a612701234cfdc93abb494f Mon Sep 17 00:00:00 2001 From: Rainchus Date: Tue, 13 May 2025 20:19:59 -0500 Subject: [PATCH 178/178] Unhardcode some things (#589) * fix malloc sizes of HuMemDirectMalloc calls * unhardcode some things --- include/REL/m407dll.h | 2 - include/REL/w03Dll.h | 2 - include/game/chrman.h | 4 +- include/types.h | 2 + src/REL/mstory4Dll/main.c | 2 +- src/game/board/com.c | 2 +- src/game/chrman.c | 81 ++++++++++++++++++++------------------- 7 files changed, 48 insertions(+), 47 deletions(-) diff --git a/include/REL/m407dll.h b/include/REL/m407dll.h index 525a406d..e007469c 100644 --- a/include/REL/m407dll.h +++ b/include/REL/m407dll.h @@ -3,8 +3,6 @@ #include "game/object.h" -#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) - typedef void (*VoidFuncs)(void); typedef void (*ObjFuncs)(omObjData *); diff --git a/include/REL/w03Dll.h b/include/REL/w03Dll.h index 022b6894..a7163c63 100644 --- a/include/REL/w03Dll.h +++ b/include/REL/w03Dll.h @@ -8,8 +8,6 @@ #include "game/window.h" #include "game/object.h" -#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) - enum { MAPOBJ_MAX = 12 }; diff --git a/include/game/chrman.h b/include/game/chrman.h index c20b79cc..d826fb68 100755 --- a/include/game/chrman.h +++ b/include/game/chrman.h @@ -44,6 +44,8 @@ s32 CharModelEffectNpcInit(s16 arg0, s16 arg1, s16 arg2, s16 arg3); s32 CharModelEffectNpcInitSilent(s16 arg0, s16 arg1, s16 arg2); void CharModelStepTypeSet(s16 character, s32 arg1); -#define GW_CHARACTER_MAX 8 +#define CHARNO_MAX 8 +#define CHAR_NPC_MAX 7 +#define CHAR_EFFECT_AND_PARTICLE_MAX 8 #endif diff --git a/include/types.h b/include/types.h index 462b4f66..349256d9 100644 --- a/include/types.h +++ b/include/types.h @@ -1,6 +1,8 @@ #ifndef _TYPES_H_ #define _TYPES_H_ +#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0])) + #include "dolphin/types.h" #endif diff --git a/src/REL/mstory4Dll/main.c b/src/REL/mstory4Dll/main.c index 6a626cb1..b6304228 100644 --- a/src/REL/mstory4Dll/main.c +++ b/src/REL/mstory4Dll/main.c @@ -577,7 +577,7 @@ void fn_1_13A0(void) s32 i; for(i=1; i<4; i++) { GWPlayerCfg[i].character = GWPlayerCfg[i-1].character+1; - if(GWPlayerCfg[i].character > GW_CHARACTER_MAX) { + if(GWPlayerCfg[i].character > CHARNO_MAX ) { GWPlayerCfg[i].character = 0; } } diff --git a/src/game/board/com.c b/src/game/board/com.c index ed7f1e3c..60ef9620 100755 --- a/src/game/board/com.c +++ b/src/game/board/com.c @@ -47,7 +47,7 @@ static s8 itemUse = -1; #define BOARD_ITEM_ITEM_BAG 13 #define BOARD_ITEMS_END BOARD_ITEM_ITEM_BAG -static s8 comItemPreferTbl[GW_CHARACTER_MAX][SHOP_ITEMS_END] = { +static s8 comItemPreferTbl[CHARNO_MAX ][SHOP_ITEMS_END] = { { //Mario BOARD_ITEM_MAGIC_LAMP, BOARD_ITEM_BOOS_CRYSTAL_BALL, diff --git a/src/game/chrman.c b/src/game/chrman.c index e98f50e1..b8ad92a3 100755 --- a/src/game/chrman.c +++ b/src/game/chrman.c @@ -83,12 +83,13 @@ static void OrbitEffect(HsfanimStruct01 *arg0); static void UpdateNpcEffect(void); static s32 PlayStepFX(s16 arg0, s16 arg1, u8 arg2); -static UnkCharInstanceStruct charInstance[8]; -static s16 effectMdl[8]; -static EffectParamData *particleData[8]; +static UnkCharInstanceStruct charInstance[CHARNO_MAX ]; +static s16 effectMdl[CHAR_EFFECT_AND_PARTICLE_MAX]; +static EffectParamData *particleData[CHAR_EFFECT_AND_PARTICLE_MAX]; static Process *itemHookProcess[32]; -static u16 lbl_801975B0[8]; -static u8 lbl_801975C0[0x90]; // Unused? +//holds normal characters 0-7, then more characters 8-14 +static u16 lbl_801975B0[CHARNO_MAX + CHAR_NPC_MAX]; +static u8 lbl_801975CE[0x82]; // Unused? static s32 skipAnimUpdate; static void *effectAMemP; @@ -110,7 +111,7 @@ static EffectData effectDataTbl[8] = { { DATA_MAKE_NUM(DATADIR_EFFECT, 0x07), 0x000C, 0x0000, 0x00000002 }, }; -static s32 charDirTbl[8][3] = { +static s32 charDirTbl[CHARNO_MAX ][3] = { { DATADIR_MARIOMDL0, DATADIR_MARIOMDL1, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00) }, { DATADIR_LUIGIMDL0, DATADIR_LUIGIMDL1, DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x00) }, { DATADIR_PEACHMDL0, DATADIR_PEACHMDL1, DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x00) }, @@ -150,10 +151,10 @@ void CharManInit(void) s16 i; s16 j; - for (i = 0; i < 8; i++) { + for (i = 0; i < CHARNO_MAX ; i++) { temp_r29 = &charInstance[i]; temp_r29->unkC0 = NULL; - for (j = 0; j < 32; j++) { + for (j = 0; j < ARRAY_COUNT(temp_r29->unk0C); j++) { temp_r29->unk0C[j] = -1; } temp_r29->unk00 = -1; @@ -162,11 +163,11 @@ void CharManInit(void) if (!effectAMemP) { effectAMemP = (void *)HuAR_DVDtoARAM(0x120000); } - for (i = 0; i < 8; i++) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { effectMdl[i] = -1; particleData[i] = NULL; } - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(itemHookProcess); i++) { itemHookProcess[i] = NULL; } } @@ -180,7 +181,7 @@ void CharARAMOpen(s16 character) { UnkCharInstanceStruct *temp_r31; - if (character >= 8 || character < 0 || character == 0xFF) { + if (character >= CHARNO_MAX || character < 0 || character == 0xFF) { return; } temp_r31 = &charInstance[character]; @@ -708,12 +709,12 @@ static void InitEffect(void) s16 j; var_r27 = 0; - for (i = 0; i < 8; i++) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { if (effectMdl[i] == -1) { temp_r26 = HuDataSelHeapReadNum(effectDataTbl[i].unk00, MEMORY_DEFAULT_NUM, HEAP_DATA); temp_r25 = HuSprAnimRead(temp_r26); effectMdl[i] = Hu3DParticleCreate(temp_r25, effectDataTbl[i].unk04); - if (i == 7) { + if (i == CHAR_EFFECT_AND_PARTICLE_MAX - 1) { Hu3DParticleAnimModeSet(effectMdl[i], 0); } Hu3DParticleHookSet(effectMdl[i], UpdateEffect); @@ -1035,12 +1036,12 @@ s16 CharModelMotionCreate(s16 character, s32 data_num) return -1; } temp_r26 = data_num & 0xFFFF0000; - for (var_r28 = 0; var_r28 < 8; var_r28++) { + for (var_r28 = 0; var_r28 < CHARNO_MAX ; var_r28++) { if (temp_r26 == charDirTbl[var_r28][2]) { break; } } - if (var_r28 != 8 || temp_r26 == 0) { + if (var_r28 != CHARNO_MAX || temp_r26 == 0) { data_num &= 0xFFFF; var_r27 = HuAR_ARAMtoMRAMFileRead(data_num | charDirTbl[character][2], MEMORY_DEFAULT_NUM, 2); if (!var_r27) { @@ -1063,12 +1064,12 @@ void CharModelMotionIndexSet(s16 character, s16 arg1, s32 arg2) s16 i; temp_r30 = &charInstance[character]; - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(temp_r30->unk0C); i++) { if (temp_r30->unk0C[i] == arg1) { break; } } - if (i != 32) { + if (i != ARRAY_COUNT(temp_r30->unk0C)) { temp_r30->unk4C[i] = arg2; } } @@ -1079,7 +1080,7 @@ void CharModelMotionKill(s16 character, u32 motion) s16 i; temp_r30 = &charInstance[character]; - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(temp_r30->unk0C); i++) { if (temp_r30->unk0C[i] == motion) { break; } @@ -1093,7 +1094,7 @@ void CharModelMotionDataClose(s16 character) s16 i; if (character == -1) { - for (i = 0; i < 8; i++) { + for (i = 0; i < CHARNO_MAX ; i++) { CharModelMotionDataClose(i); } } @@ -1107,7 +1108,7 @@ void CharModelDataClose(s16 arg0) s16 i; if (arg0 == -1) { - for (i = 0; i < 8; i++) { + for (i = 0; i < CHARNO_MAX ; i++) { CharModelDataClose(i); // Required to match. (void)i; @@ -1127,17 +1128,17 @@ void CharModelKill(s16 character) s16 i; if (character == -1) { - for (i = 0; i < 8; i++) { + for (i = 0; i < CHARNO_MAX ; i++) { CharModelKill(i); } - for (i = 0; i < 15; i++) { + for (i = 0; i < ARRAY_COUNT(lbl_801975B0); i++) { lbl_801975B0[i] = 0; } return; } CharModelMotionDataClose(character); temp_r29 = &charInstance[character]; - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(temp_r29->unk0C); i++) { if (temp_r29->unk0C[i] != -1) { Hu3DMotionKill(temp_r29->unk0C[i]); } @@ -1147,13 +1148,13 @@ void CharModelKill(s16 character) Hu3DModelKill(temp_r29->unk00); } temp_r29->unk00 = -1; - for (i = 0; i < 8; i++) { + for (i = 0; i < CHARNO_MAX ; i++) { if (charInstance[i].unk00 != -1) { break; } } - if (i == 8) { - for (i = 0; i < 8; i++) { + if (i == CHARNO_MAX ) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { if (effectMdl[i] != -1) { Hu3DModelKill(effectMdl[i]); } @@ -1163,7 +1164,7 @@ void CharModelKill(s16 character) if (temp_r29->unkC4) { HuMemDirectFree(temp_r29->unkC4->user_data); HuPrcKill(temp_r29->unkC4); - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(itemHookProcess); i++) { if (itemHookProcess[i]) { HuPrcKill(itemHookProcess[i]); } @@ -1319,7 +1320,7 @@ void CharModelLayerSetAll(s16 arg0) { s16 i; - for (i = 0; i < 8; i++) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { if (effectMdl[i] != -1) { Hu3DModelLayerSet(effectMdl[i], arg0); } @@ -1330,12 +1331,12 @@ static inline Process *CharModelItemHookCreateInlineFunc(void) { s16 i; - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(itemHookProcess); i++) { if (!itemHookProcess[i]) { break; } } - if (i == 32) { + if (i == ARRAY_COUNT(itemHookProcess)) { return NULL; } else { @@ -1423,7 +1424,7 @@ static void UpdateItemHook(void) } PSMTXIdentity(temp_r30->unk_F0); temp_r25 = HuPrcCurrentGet(); - for (var_r28 = 0; var_r28 < 32; var_r28++) { + for (var_r28 = 0; var_r28 < ARRAY_COUNT(itemHookProcess); var_r28++) { if (itemHookProcess[var_r28] == temp_r25) { HuPrcKill(temp_r25); itemHookProcess[var_r28] = NULL; @@ -1445,7 +1446,7 @@ void CharModelEffectCreate(s16 arg0, Vec *arg1) ParticleData *var_r27; ModelData *var_r26; - for (i = 0; i < 8; i++) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { temp_r28 = CreateEffect(effectMdl[3], arg0, arg1->x, arg1->y, arg1->z, 20.0f, &modelParticleParam); if (temp_r28 == -1) { break; @@ -1462,7 +1463,7 @@ void CharModelEffectCreate(s16 arg0, Vec *arg1) var_r31->unk24 = 0.1f * (frandmod(20) - 10); var_r31->unk40.a = 0xFF - frandmod(3) * 16; } - for (i = 0; i < 8; i++) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { temp_r28 = CreateEffect(effectMdl[3], arg0, arg1->x, arg1->y, arg1->z, 10.0f, &modelParticleParam); if (temp_r28 == -1) { break; @@ -1566,12 +1567,12 @@ void fn_8004EC74(s16 character) temp_r30 = &charInstance[character]; temp_r31 = &Hu3DData[temp_r30->unk00]; - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(temp_r30->unk0C); i++) { if (temp_r30->unk0C[i] == temp_r31->unk_08) { break; } } - if (i != 32) { + if (i != ARRAY_COUNT(temp_r30->unk0C)) { Hu3DModelObjMtxGet(temp_r30->unk00, "test11_tex_we-itemhook-r", sp24); sp18.x = sp24[0][3]; sp18.y = sp24[1][3]; @@ -1698,12 +1699,12 @@ void CharModelVoiceEnableSet(s16 character, s16 motion, s32 flag) if (temp_r31->unk00 == -1) { return; } - for (i = 0; i < 32; i++) { + for (i = 0; i < ARRAY_COUNT(temp_r31->unk0C); i++) { if (temp_r31->unk0C[i] == motion) { break; } } - if (i != 32) { + if (i != ARRAY_COUNT(temp_r31->unk0C)) { if (flag == 0) { temp_r31->unk8C[i] |= 1; } @@ -1730,7 +1731,7 @@ void CharModelEffectEnableSet(s16 character, s32 arg1) { UnkCharInstanceStruct *temp_r31 = &charInstance[character]; - if (character >= 8) { + if (character >= CHARNO_MAX ) { if (arg1 == 0) { lbl_801975B0[character] |= 0x10; } @@ -1932,14 +1933,14 @@ static void UpdateNpcEffect(void) if (lbl_801975B0[temp_r28] & 0x10) { break; } - for (i = 0; i < 8; i++) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { effectStarParam.unk0C.x = 10.0 * sind(45.0f * i) * temp_r30->scale.x; effectStarParam.unk0C.y = 0.0f; effectStarParam.unk0C.z = 10.0 * cosd(45.0f * i) * temp_r30->scale.x; CreateEffectStar( temp_r25, temp_r30->pos.x, temp_r30->pos.y + 10.0f * temp_r30->scale.x, temp_r30->pos.z, 40.0f, &effectStarParam); } - for (i = 0; i < 8; i++) { + for (i = 0; i < CHAR_EFFECT_AND_PARTICLE_MAX; i++) { effectDustParam.unk0C.x = 4.0 * sind(45.0f * i + 22.5) * temp_r30->scale.x; effectDustParam.unk0C.y = 0.0f; effectDustParam.unk0C.z = 4.0 * cosd(45.0f * i + 22.5) * temp_r30->scale.x;